1 #line 2 "sf_scanner.c"
2
3 #line 4 "sf_scanner.c"
4
5 #define YY_INT_ALIGNED short int
6
7 /* A lexical scanner generated by flex */
8
9 #define yy_create_buffer sfbpf__create_buffer
10 #define yy_delete_buffer sfbpf__delete_buffer
11 #define yy_flex_debug sfbpf__flex_debug
12 #define yy_init_buffer sfbpf__init_buffer
13 #define yy_flush_buffer sfbpf__flush_buffer
14 #define yy_load_buffer_state sfbpf__load_buffer_state
15 #define yy_switch_to_buffer sfbpf__switch_to_buffer
16 #define yyin sfbpf_in
17 #define yyleng sfbpf_leng
18 #define yylex sfbpf_lex
19 #define yylineno sfbpf_lineno
20 #define yyout sfbpf_out
21 #define yyrestart sfbpf_restart
22 #define yytext sfbpf_text
23 #define yywrap sfbpf_wrap
24 #define yyalloc sfbpf_alloc
25 #define yyrealloc sfbpf_realloc
26 #define yyfree sfbpf_free
27
28 #define FLEX_SCANNER
29 #define YY_FLEX_MAJOR_VERSION 2
30 #define YY_FLEX_MINOR_VERSION 5
31 #define YY_FLEX_SUBMINOR_VERSION 35
32 #if YY_FLEX_SUBMINOR_VERSION > 0
33 #define FLEX_BETA
34 #endif
35
36 /* First, we deal with platform-specific or compiler-specific issues. */
37
38 /* begin standard C headers. */
39 #include <stdio.h>
40 #include <string.h>
41 #include <errno.h>
42 #include <stdlib.h>
43
44 /* end standard C headers. */
45
46 /* flex integer type definitions */
47
48 #ifndef FLEXINT_H
49 #define FLEXINT_H
50
51 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
52
53 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
54
55 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
56 * if you want the limit (max/min) macros for int types.
57 */
58 #ifndef __STDC_LIMIT_MACROS
59 #define __STDC_LIMIT_MACROS 1
60 #endif
61
62 #include <inttypes.h>
63 typedef int8_t flex_int8_t;
64 typedef uint8_t flex_uint8_t;
65 typedef int16_t flex_int16_t;
66 typedef uint16_t flex_uint16_t;
67 typedef int32_t flex_int32_t;
68 typedef uint32_t flex_uint32_t;
69 #else
70 typedef signed char flex_int8_t;
71 typedef short int flex_int16_t;
72 typedef int flex_int32_t;
73 typedef unsigned char flex_uint8_t;
74 typedef unsigned short int flex_uint16_t;
75 typedef unsigned int flex_uint32_t;
76
77 /* Limits of integral types. */
78 #ifndef INT8_MIN
79 #define INT8_MIN (-128)
80 #endif
81 #ifndef INT16_MIN
82 #define INT16_MIN (-32767-1)
83 #endif
84 #ifndef INT32_MIN
85 #define INT32_MIN (-2147483647-1)
86 #endif
87 #ifndef INT8_MAX
88 #define INT8_MAX (127)
89 #endif
90 #ifndef INT16_MAX
91 #define INT16_MAX (32767)
92 #endif
93 #ifndef INT32_MAX
94 #define INT32_MAX (2147483647)
95 #endif
96 #ifndef UINT8_MAX
97 #define UINT8_MAX (255U)
98 #endif
99 #ifndef UINT16_MAX
100 #define UINT16_MAX (65535U)
101 #endif
102 #ifndef UINT32_MAX
103 #define UINT32_MAX (4294967295U)
104 #endif
105
106 #endif /* ! C99 */
107
108 #endif /* ! FLEXINT_H */
109
110 #ifdef __cplusplus
111
112 /* The "const" storage-class-modifier is valid. */
113 #define YY_USE_CONST
114
115 #else /* ! __cplusplus */
116
117 /* C99 requires __STDC__ to be defined as 1. */
118 #if defined (__STDC__)
119
120 #define YY_USE_CONST
121
122 #endif /* defined (__STDC__) */
123 #endif /* ! __cplusplus */
124
125 #ifdef YY_USE_CONST
126 #define yyconst const
127 #else
128 #define yyconst
129 #endif
130
131 /* Returned upon end-of-file. */
132 #define YY_NULL 0
133
134 /* Promotes a possibly negative, possibly signed char to an unsigned
135 * integer for use as an array index. If the signed char is negative,
136 * we want to instead treat it as an 8-bit unsigned char, hence the
137 * double cast.
138 */
139 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
140
141 /* Enter a start condition. This macro really ought to take a parameter,
142 * but we do it the disgusting crufty way forced on us by the ()-less
143 * definition of BEGIN.
144 */
145 #define BEGIN (yy_start) = 1 + 2 *
146
147 /* Translate the current start state into a value that can be later handed
148 * to BEGIN to return to the state. The YYSTATE alias is for lex
149 * compatibility.
150 */
151 #define YY_START (((yy_start) - 1) / 2)
152 #define YYSTATE YY_START
153
154 /* Action number for EOF rule of a given start state. */
155 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
156
157 /* Special action meaning "start processing a new file". */
158 #define YY_NEW_FILE sfbpf_restart(sfbpf_in )
159
160 #define YY_END_OF_BUFFER_CHAR 0
161
162 /* Size of default input buffer. */
163 #ifndef YY_BUF_SIZE
164 #ifdef __ia64__
165 /* On IA-64, the buffer size is 16k, not 8k.
166 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
167 * Ditto for the __ia64__ case accordingly.
168 */
169 #define YY_BUF_SIZE 32768
170 #else
171 #define YY_BUF_SIZE 16384
172 #endif /* __ia64__ */
173 #endif
174
175 /* The state buf must be large enough to hold one state per character in the main buffer.
176 */
177 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
178
179 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
180 #define YY_TYPEDEF_YY_BUFFER_STATE
181 typedef struct yy_buffer_state *YY_BUFFER_STATE;
182 #endif
183
184 extern __thread int sfbpf_leng;
185
186 extern __thread FILE *sfbpf_in, *sfbpf_out;
187
188 #define EOB_ACT_CONTINUE_SCAN 0
189 #define EOB_ACT_END_OF_FILE 1
190 #define EOB_ACT_LAST_MATCH 2
191
192 #define YY_LESS_LINENO(n)
193
194 /* Return all but the first "n" matched characters back to the input stream. */
195 #define yyless(n) \
196 do \
197 { \
198 /* Undo effects of setting up sfbpf_text. */ \
199 int yyless_macro_arg = (n); \
200 YY_LESS_LINENO(yyless_macro_arg);\
201 *yy_cp = (yy_hold_char); \
202 YY_RESTORE_YY_MORE_OFFSET \
203 (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
204 YY_DO_BEFORE_ACTION; /* set up sfbpf_text again */ \
205 } \
206 while ( 0 )
207
208 #define unput(c) yyunput( c, (yytext_ptr) )
209
210 #ifndef YY_TYPEDEF_YY_SIZE_T
211 #define YY_TYPEDEF_YY_SIZE_T
212 typedef size_t yy_size_t;
213 #endif
214
215 #ifndef YY_STRUCT_YY_BUFFER_STATE
216 #define YY_STRUCT_YY_BUFFER_STATE
217 struct yy_buffer_state
218 {
219 FILE *yy_input_file;
220
221 char *yy_ch_buf; /* input buffer */
222 char *yy_buf_pos; /* current position in input buffer */
223
224 /* Size of input buffer in bytes, not including room for EOB
225 * characters.
226 */
227 yy_size_t yy_buf_size;
228
229 /* Number of characters read into yy_ch_buf, not including EOB
230 * characters.
231 */
232 int yy_n_chars;
233
234 /* Whether we "own" the buffer - i.e., we know we created it,
235 * and can realloc() it to grow it, and should free() it to
236 * delete it.
237 */
238 int yy_is_our_buffer;
239
240 /* Whether this is an "interactive" input source; if so, and
241 * if we're using stdio for input, then we want to use getc()
242 * instead of fread(), to make sure we stop fetching input after
243 * each newline.
244 */
245 int yy_is_interactive;
246
247 /* Whether we're considered to be at the beginning of a line.
248 * If so, '^' rules will be active on the next match, otherwise
249 * not.
250 */
251 int yy_at_bol;
252
253 int yy_bs_lineno; /**< The line count. */
254 int yy_bs_column; /**< The column count. */
255
256 /* Whether to try to fill the input buffer when we reach the
257 * end of it.
258 */
259 int yy_fill_buffer;
260
261 int yy_buffer_status;
262
263 #define YY_BUFFER_NEW 0
264 #define YY_BUFFER_NORMAL 1
265 /* When an EOF's been seen but there's still some text to process
266 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
267 * shouldn't try reading from the input source any more. We might
268 * still have a bunch of tokens to match, though, because of
269 * possible backing-up.
270 *
271 * When we actually see the EOF, we change the status to "new"
272 * (via sfbpf_restart()), so that the user can continue scanning by
273 * just pointing sfbpf_in at a new input file.
274 */
275 #define YY_BUFFER_EOF_PENDING 2
276
277 };
278 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
279
280 /* Stack of input buffers. */
281 static __thread size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
282 static __thread size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
283 static __thread YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
284
285 /* We provide macros for accessing buffer states in case in the
286 * future we want to put the buffer states in a more general
287 * "scanner state".
288 *
289 * Returns the top of the stack, or NULL.
290 */
291 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
292 ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
293 : NULL)
294
295 /* Same as previous macro, but useful when we know that the buffer stack is not
296 * NULL or when we need an lvalue. For internal use only.
297 */
298 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
299
300 /* yy_hold_char holds the character lost when sfbpf_text is formed. */
301 static __thread char yy_hold_char;
302 static __thread int yy_n_chars; /* number of characters read into yy_ch_buf */
303 __thread int sfbpf_leng;
304
305 /* Points to current character in buffer. */
306 static __thread char *yy_c_buf_p = (char *) 0;
307 static __thread int yy_init = 0; /* whether we need to initialize */
308 static __thread int yy_start = 0; /* start state number */
309
310 /* Flag which is used to allow sfbpf_wrap()'s to do buffer switches
311 * instead of setting up a fresh sfbpf_in. A bit of a hack ...
312 */
313 static __thread int yy_did_buffer_switch_on_eof;
314
315 void sfbpf_restart (FILE *input_file );
316 void sfbpf__switch_to_buffer (YY_BUFFER_STATE new_buffer );
317 YY_BUFFER_STATE sfbpf__create_buffer (FILE *file,int size );
318 void sfbpf__delete_buffer (YY_BUFFER_STATE b );
319 void sfbpf__flush_buffer (YY_BUFFER_STATE b );
320 void sfbpf_push_buffer_state (YY_BUFFER_STATE new_buffer );
321 void sfbpf_pop_buffer_state (void );
322
323 static void sfbpf_ensure_buffer_stack (void );
324 static void sfbpf__load_buffer_state (void );
325 static void sfbpf__init_buffer (YY_BUFFER_STATE b,FILE *file );
326
327 #define YY_FLUSH_BUFFER sfbpf__flush_buffer(YY_CURRENT_BUFFER )
328
329 YY_BUFFER_STATE sfbpf__scan_buffer (char *base,yy_size_t size );
330 YY_BUFFER_STATE sfbpf__scan_string (yyconst char *yy_str );
331 YY_BUFFER_STATE sfbpf__scan_bytes (yyconst char *bytes,int len );
332
333 void *sfbpf_alloc (yy_size_t );
334 void *sfbpf_realloc (void *,yy_size_t );
335 void sfbpf_free (void * );
336
337 #define yy_new_buffer sfbpf__create_buffer
338
339 #define yy_set_interactive(is_interactive) \
340 { \
341 if ( ! YY_CURRENT_BUFFER ){ \
342 sfbpf_ensure_buffer_stack (); \
343 YY_CURRENT_BUFFER_LVALUE = \
344 sfbpf__create_buffer(sfbpf_in,YY_BUF_SIZE ); \
345 } \
346 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
347 }
348
349 #define yy_set_bol(at_bol) \
350 { \
351 if ( ! YY_CURRENT_BUFFER ){\
352 sfbpf_ensure_buffer_stack (); \
353 YY_CURRENT_BUFFER_LVALUE = \
354 sfbpf__create_buffer(sfbpf_in,YY_BUF_SIZE ); \
355 } \
356 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
357 }
358
359 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
360
361 /* Begin user sect3 */
362
363 typedef unsigned char YY_CHAR;
364
365 __thread FILE *sfbpf_in = (FILE *) 0, *sfbpf_out = (FILE *) 0;
366
367 typedef int yy_state_type;
368
369 extern __thread int sfbpf_lineno;
370
371 __thread int sfbpf_lineno = 1;
372
373 extern __thread char *sfbpf_text;
374 #define yytext_ptr sfbpf_text
375
376 static yy_state_type yy_get_previous_state (void );
377 static yy_state_type yy_try_NUL_trans (yy_state_type current_state );
378 static int yy_get_next_buffer (void );
379 static void yy_fatal_error (yyconst char msg[] );
380
381 /* Done after the current pattern has been matched and before the
382 * corresponding action - sets up sfbpf_text.
383 */
384 #define YY_DO_BEFORE_ACTION \
385 (yytext_ptr) = yy_bp; \
386 sfbpf_leng = (size_t) (yy_cp - yy_bp); \
387 (yy_hold_char) = *yy_cp; \
388 *yy_cp = '\0'; \
389 (yy_c_buf_p) = yy_cp;
390
391 #define YY_NUM_RULES 144
392 #define YY_END_OF_BUFFER 145
393 /* This struct is not used in this scanner,
394 but its presence is necessary. */
395 struct yy_trans_info
396 {
397 flex_int32_t yy_verify;
398 flex_int32_t yy_nxt;
399 };
400 static yyconst flex_int16_t yy_accept[1434] =
401 { 0,
402 0, 0, 145, 142, 102, 102, 102, 103, 142, 103,
403 103, 103, 143, 112, 112, 103, 103, 103, 103, 140,
404 140, 142, 140, 140, 140, 140, 140, 140, 140, 140,
405 140, 140, 140, 140, 140, 140, 140, 140, 140, 140,
406 140, 140, 103, 142, 106, 110, 64, 0, 140, 112,
407 0, 140, 140, 140, 0, 114, 108, 105, 107, 104,
408 109, 140, 141, 141, 140, 140, 140, 19, 140, 140,
409 140, 140, 140, 140, 140, 140, 140, 140, 140, 140,
410 140, 140, 140, 140, 140, 140, 140, 140, 140, 140,
411 140, 140, 140, 140, 7, 140, 33, 34, 140, 140,
412
413 140, 140, 140, 140, 140, 140, 140, 140, 140, 140,
414 140, 140, 88, 140, 65, 140, 140, 140, 140, 140,
415 140, 140, 140, 140, 140, 140, 82, 140, 140, 140,
416 140, 140, 140, 140, 4, 140, 140, 140, 140, 140,
417 140, 140, 65, 110, 140, 113, 113, 140, 112, 140,
418 0, 114, 112, 114, 114, 114, 140, 140, 140, 64,
419 5, 140, 77, 140, 140, 140, 140, 140, 140, 54,
420 100, 1, 0, 140, 20, 140, 140, 140, 140, 140,
421 140, 140, 140, 140, 140, 35, 140, 140, 17, 42,
422 0, 140, 28, 140, 24, 67, 140, 140, 75, 36,
423
424 140, 96, 140, 140, 140, 140, 97, 140, 45, 66,
425 78, 99, 140, 14, 140, 3, 140, 140, 140, 140,
426 140, 90, 140, 140, 25, 140, 98, 140, 101, 37,
427 2, 140, 41, 140, 9, 140, 10, 85, 140, 84,
428 140, 140, 0, 140, 140, 113, 140, 140, 140, 140,
429 112, 0, 140, 0, 115, 114, 114, 0, 114, 0,
430 114, 0, 114, 0, 22, 140, 140, 140, 140, 61,
431 40, 140, 38, 140, 140, 140, 29, 140, 94, 140,
432 140, 44, 11, 140, 12, 13, 140, 140, 140, 31,
433 74, 140, 59, 3, 95, 46, 140, 140, 140, 71,
434
435 140, 140, 140, 140, 47, 140, 140, 39, 140, 6,
436 140, 89, 140, 8, 91, 140, 140, 0, 140, 52,
437 70, 15, 140, 113, 113, 140, 113, 113, 113, 140,
438 112, 140, 0, 114, 140, 0, 0, 114, 0, 114,
439 115, 114, 0, 0, 0, 0, 114, 114, 114, 114,
440 114, 0, 140, 55, 56, 57, 58, 140, 21, 140,
441 140, 140, 140, 30, 140, 140, 0, 18, 140, 140,
442 140, 83, 140, 32, 140, 76, 27, 26, 140, 140,
443 79, 140, 140, 140, 49, 16, 140, 140, 140, 140,
444 140, 140, 140, 140, 140, 140, 140, 140, 0, 140,
445
446 140, 113, 140, 140, 140, 140, 113, 113, 140, 112,
447 140, 0, 0, 114, 114, 114, 0, 0, 115, 114,
448 114, 115, 114, 0, 0, 114, 114, 114, 114, 114,
449 0, 0, 0, 0, 114, 114, 0, 114, 0, 114,
450 0, 93, 140, 140, 140, 23, 140, 140, 140, 140,
451 140, 140, 140, 140, 140, 140, 140, 140, 140, 140,
452 67, 140, 140, 140, 140, 140, 140, 140, 72, 73,
453 140, 92, 140, 140, 140, 140, 140, 140, 140, 140,
454 140, 140, 140, 140, 113, 113, 140, 113, 113, 113,
455 113, 140, 112, 140, 0, 114, 114, 0, 114, 0,
456
457 0, 114, 0, 114, 115, 114, 0, 0, 0, 114,
458 114, 0, 114, 115, 114, 0, 0, 0, 0, 0,
459 0, 0, 114, 114, 114, 114, 114, 0, 140, 140,
460 140, 140, 51, 60, 140, 140, 140, 140, 140, 140,
461 140, 140, 140, 140, 140, 140, 68, 140, 140, 43,
462 80, 81, 140, 140, 140, 140, 53, 138, 134, 140,
463 136, 135, 139, 140, 0, 140, 140, 113, 140, 140,
464 140, 113, 140, 112, 140, 0, 0, 114, 114, 114,
465 114, 114, 114, 0, 0, 115, 114, 114, 114, 0,
466 0, 114, 114, 114, 114, 114, 0, 0, 0, 0,
467
468 0, 0, 0, 114, 114, 114, 114, 114, 0, 0,
469 0, 0, 0, 114, 114, 0, 114, 0, 114, 0,
470 140, 140, 140, 140, 140, 140, 140, 140, 140, 140,
471 140, 140, 140, 117, 116, 140, 140, 69, 140, 140,
472 140, 137, 133, 140, 140, 113, 113, 113, 113, 140,
473 112, 140, 0, 114, 114, 0, 114, 114, 0, 114,
474 0, 0, 114, 0, 114, 115, 114, 0, 0, 0,
475 114, 114, 0, 114, 115, 114, 0, 0, 0, 0,
476 0, 114, 114, 0, 114, 115, 114, 0, 114, 114,
477 0, 0, 0, 0, 0, 0, 0, 114, 114, 114,
478
479 114, 114, 0, 62, 140, 54, 122, 129, 140, 140,
480 140, 140, 140, 140, 140, 140, 140, 63, 48, 140,
481 140, 0, 140, 140, 140, 140, 140, 112, 140, 0,
482 0, 114, 114, 114, 114, 114, 114, 114, 114, 114,
483 0, 0, 115, 114, 114, 114, 0, 0, 114, 114,
484 114, 114, 114, 0, 0, 0, 0, 0, 0, 0,
485 114, 114, 114, 114, 114, 0, 114, 114, 0, 0,
486 0, 0, 0, 0, 0, 114, 114, 114, 114, 114,
487 0, 0, 0, 0, 0, 0, 114, 114, 0, 114,
488 0, 114, 0, 86, 140, 140, 140, 140, 140, 140,
489
490 140, 140, 140, 140, 140, 50, 111, 111, 113, 113,
491 140, 112, 140, 0, 114, 114, 0, 114, 114, 0,
492 114, 114, 0, 114, 0, 111, 114, 0, 114, 115,
493 114, 0, 0, 0, 114, 114, 0, 114, 115, 114,
494 0, 0, 0, 0, 0, 114, 114, 0, 114, 115,
495 114, 0, 0, 0, 0, 0, 0, 114, 114, 0,
496 114, 115, 114, 0, 114, 114, 114, 0, 0, 0,
497 0, 0, 0, 0, 114, 114, 114, 114, 114, 0,
498 140, 140, 140, 140, 140, 140, 140, 140, 127, 140,
499 87, 111, 111, 113, 140, 111, 111, 0, 0, 114,
500
501 114, 114, 114, 114, 114, 114, 114, 114, 114, 114,
502 114, 0, 111, 115, 114, 114, 114, 0, 0, 114,
503 114, 114, 114, 114, 0, 0, 0, 0, 0, 0,
504 0, 114, 114, 114, 114, 114, 0, 114, 114, 0,
505 0, 0, 0, 0, 0, 0, 114, 114, 114, 114,
506 114, 0, 114, 114, 114, 0, 0, 0, 0, 0,
507 0, 0, 114, 114, 114, 114, 114, 0, 0, 0,
508 0, 0, 0, 114, 114, 0, 114, 0, 114, 0,
509 140, 140, 140, 131, 140, 140, 140, 140, 140, 140,
510 140, 119, 113, 140, 112, 0, 114, 114, 0, 114,
511
512 114, 0, 114, 114, 0, 114, 114, 0, 114, 0,
513 0, 0, 114, 0, 0, 114, 115, 114, 0, 0,
514 0, 114, 114, 0, 114, 115, 114, 0, 0, 0,
515 0, 0, 114, 114, 0, 114, 115, 114, 0, 0,
516 0, 0, 0, 0, 114, 114, 0, 114, 115, 114,
517 0, 0, 0, 0, 0, 0, 114, 114, 0, 114,
518 115, 114, 0, 114, 114, 114, 0, 0, 0, 0,
519 0, 0, 0, 114, 114, 114, 114, 114, 0, 140,
520 140, 140, 140, 121, 140, 140, 140, 125, 140, 111,
521 0, 0, 114, 114, 114, 114, 114, 114, 114, 114,
522
523 114, 114, 114, 114, 114, 114, 114, 0, 0, 0,
524 115, 0, 0, 114, 0, 0, 114, 114, 114, 0,
525 0, 0, 0, 0, 0, 0, 114, 114, 114, 0,
526 114, 114, 0, 0, 0, 0, 0, 0, 0, 114,
527 114, 114, 0, 114, 114, 114, 0, 0, 0, 0,
528 0, 0, 0, 114, 114, 114, 0, 114, 114, 114,
529 0, 0, 0, 0, 0, 0, 0, 114, 114, 114,
530 0, 0, 0, 0, 0, 0, 114, 114, 0, 114,
531 0, 114, 0, 118, 130, 132, 126, 140, 140, 140,
532 140, 0, 0, 114, 0, 114, 0, 114, 114, 0,
533
534 114, 114, 0, 114, 114, 0, 114, 114, 0, 114,
535 0, 0, 0, 0, 114, 114, 0, 114, 0, 0,
536 114, 114, 114, 0, 0, 0, 0, 114, 114, 114,
537 0, 0, 0, 0, 0, 114, 114, 114, 0, 0,
538 0, 0, 0, 114, 114, 114, 0, 0, 0, 0,
539 0, 114, 114, 114, 114, 114, 114, 0, 0, 0,
540 0, 0, 0, 0, 114, 114, 114, 0, 140, 140,
541 140, 140, 0, 0, 0, 114, 114, 114, 114, 114,
542 114, 0, 0, 0, 0, 114, 114, 0, 0, 0,
543 0, 114, 114, 114, 0, 0, 0, 0, 0, 114,
544
545 114, 114, 114, 0, 0, 0, 0, 0, 114, 114,
546 114, 114, 0, 0, 0, 0, 0, 114, 114, 114,
547 114, 0, 0, 0, 0, 0, 114, 0, 0, 0,
548 0, 0, 114, 114, 114, 140, 140, 140, 128, 114,
549 114, 114, 114, 114, 114, 114, 114, 0, 0, 0,
550 0, 114, 114, 0, 0, 114, 0, 0, 0, 114,
551 0, 0, 0, 114, 0, 0, 0, 114, 0, 0,
552 0, 114, 114, 114, 114, 0, 0, 0, 0, 0,
553 114, 123, 140, 120, 114, 0, 0, 114, 114, 0,
554 114, 114, 114, 0, 114, 114, 114, 0, 114, 114,
555
556 114, 0, 114, 114, 114, 0, 0, 0, 0, 114,
557 124, 114, 114, 0, 0, 0, 0, 0, 0, 114,
558 114, 114, 0, 0, 114, 114, 114, 114, 114, 0,
559 114, 114, 0
560 } ;
561
562 static yyconst flex_int32_t yy_ec[256] =
563 { 0,
564 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
565 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
566 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
567 1, 2, 5, 1, 1, 6, 1, 7, 1, 8,
568 8, 9, 9, 1, 10, 11, 9, 12, 13, 14,
569 15, 16, 17, 18, 17, 17, 17, 19, 1, 20,
570 21, 22, 1, 1, 23, 23, 23, 23, 23, 23,
571 24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
572 24, 24, 24, 24, 24, 24, 24, 25, 24, 24,
573 26, 27, 26, 1, 28, 1, 29, 30, 31, 32,
574
575 33, 34, 35, 36, 37, 24, 38, 39, 40, 41,
576 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
577 52, 24, 1, 53, 1, 1, 1, 1, 1, 1,
578 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
579 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
580 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
581 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
582 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
583 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
584 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
585
586 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
587 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
588 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
589 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
590 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
591 1, 1, 1, 1, 1
592 } ;
593
594 static yyconst flex_int32_t yy_meta[54] =
595 { 0,
596 1, 2, 2, 1, 2, 1, 3, 2, 1, 4,
597 5, 6, 6, 6, 6, 6, 6, 6, 7, 3,
598 3, 3, 8, 4, 9, 3, 1, 4, 8, 8,
599 8, 8, 8, 8, 4, 4, 4, 4, 4, 4,
600 4, 4, 4, 4, 4, 4, 4, 4, 4, 4,
601 9, 4, 3
602 } ;
603
604 static yyconst flex_int16_t yy_base[1894] =
605 { 0,
606 0, 0, 3838, 53, 7401, 7401, 54, 3816, 60, 3829,
607 7401, 82, 7401, 100, 31, 152, 47, 3813, 49, 169,
608 211, 169, 61, 44, 61, 122, 30, 62, 75, 3791,
609 215, 218, 160, 32, 166, 155, 230, 236, 53, 3800,
610 173, 3778, 3763, 281, 7401, 0, 7401, 297, 320, 344,
611 3796, 368, 0, 375, 0, 409, 7401, 7401, 7401, 7401,
612 7401, 279, 297, 0, 3769, 3766, 3779, 0, 3778, 3766,
613 3764, 3761, 3749, 3743, 3748, 3746, 3745, 3754, 3725, 3738,
614 3721, 117, 3731, 3734, 3718, 3716, 3729, 3700, 3705, 3703,
615 81, 3707, 3702, 3709, 139, 223, 0, 0, 122, 121,
616
617 3697, 3692, 167, 3676, 3674, 3677, 3680, 3669, 3677, 3668,
618 3652, 3658, 0, 3666, 0, 3649, 3654, 3647, 3633, 3633,
619 3633, 132, 3644, 3627, 3637, 3630, 170, 3626, 202, 3609,
620 54, 3608, 3620, 3606, 0, 3604, 3602, 3592, 3599, 3590,
621 3581, 3596, 7401, 7401, 434, 458, 211, 499, 523, 547,
622 3604, 554, 3611, 578, 228, 3602, 3562, 3567, 3558, 0,
623 0, 3563, 0, 3571, 3566, 3555, 3541, 3538, 3539, 3546,
624 0, 0, 3541, 3530, 0, 3542, 3537, 3525, 3518, 3521,
625 3501, 3504, 3516, 3501, 3500, 0, 3505, 3485, 0, 0,
626 3489, 3479, 0, 3491, 0, 3486, 3474, 3481, 0, 0,
627
628 3470, 0, 3470, 3458, 254, 3440, 0, 3438, 3453, 0,
629 3447, 0, 3450, 0, 3432, 3436, 3415, 3418, 3423, 3416,
630 3411, 0, 3409, 3422, 0, 3411, 0, 3396, 0, 0,
631 0, 3393, 0, 127, 270, 3403, 0, 0, 3393, 0,
632 3390, 3390, 618, 3405, 641, 665, 3403, 672, 481, 226,
633 696, 3394, 720, 3393, 3390, 728, 293, 3389, 3388, 488,
634 769, 792, 3372, 0, 0, 3348, 332, 3351, 3354, 0,
635 0, 3340, 0, 3337, 3329, 3313, 0, 3305, 0, 3299,
636 3300, 0, 595, 3287, 0, 0, 3295, 3277, 3278, 0,
637 0, 3276, 0, 0, 0, 0, 3290, 3267, 3264, 0,
638
639 3256, 3253, 3269, 3242, 3217, 3228, 3218, 0, 3217, 0,
640 3216, 0, 228, 0, 0, 3207, 3202, 720, 3204, 0,
641 0, 0, 817, 841, 315, 882, 3210, 3209, 386, 905,
642 929, 953, 3200, 960, 602, 3195, 3194, 983, 757, 1007,
643 1030, 3178, 0, 3176, 405, 408, 1054, 3175, 1078, 317,
644 3174, 3179, 3137, 0, 0, 0, 0, 3127, 0, 3141,
645 3140, 3107, 3105, 0, 3120, 3104, 1097, 0, 3091, 3080,
646 3098, 0, 3067, 0, 3060, 3050, 0, 0, 3060, 3042,
647 256, 3041, 3057, 159, 3054, 0, 3043, 3035, 3049, 3033,
648 3027, 3035, 3018, 2985, 2986, 2979, 2984, 2998, 1134, 3016,
649
650 1157, 1181, 3014, 1188, 864, 310, 1212, 344, 1252, 1275,
651 1299, 2981, 2980, 1307, 345, 2979, 2978, 2976, 2975, 1348,
652 369, 2974, 2958, 496, 612, 1389, 2957, 1413, 378, 2956,
653 2962, 2952, 871, 0, 306, 2951, 1101, 1454, 1477, 2950,
654 0, 0, 2922, 2924, 2905, 0, 2911, 2895, 2901, 2914,
655 2885, 2900, 2898, 330, 2881, 408, 2881, 2857, 2845, 2855,
656 0, 2844, 2854, 2845, 2850, 2834, 2823, 2822, 0, 0,
657 2826, 0, 2821, 2812, 2825, 2824, 2803, 2799, 2793, 2791,
658 2796, 2800, 2799, 1502, 1526, 409, 1567, 2822, 2807, 614,
659 1591, 1615, 1622, 1646, 2798, 1653, 1677, 1700, 2797, 2796,
660
661 2795, 1723, 1108, 1747, 1770, 2793, 0, 1235, 0, 442,
662 2792, 1242, 1794, 1817, 2791, 0, 739, 766, 2783, 466,
663 786, 817, 1841, 2774, 1865, 433, 2773, 2780, 386, 2744,
664 2748, 2745, 0, 0, 2750, 2738, 2724, 2724, 2736, 2719,
665 2717, 2724, 2716, 2702, 2713, 2712, 0, 2703, 2697, 0,
666 0, 0, 2709, 2705, 2710, 2683, 0, 0, 0, 2687,
667 0, 0, 0, 2676, 1905, 2711, 1928, 1952, 2709, 1959,
668 467, 1983, 2007, 2014, 2038, 2699, 2698, 2046, 457, 2697,
669 2087, 493, 2681, 2680, 2679, 2678, 2128, 494, 2677, 879,
670 899, 2169, 2674, 2193, 498, 2673, 2666, 1128, 1130, 2665,
671
672 2664, 1251, 1317, 2234, 2655, 2258, 499, 2654, 2660, 1331,
673 0, 1338, 0, 532, 2651, 1371, 2299, 2322, 2650, 0,
674 2345, 479, 225, 370, 531, 622, 241, 129, 2606, 260,
675 272, 433, 591, 2605, 2604, 1129, 2603, 2601, 1247, 854,
676 532, 2599, 2583, 2383, 2420, 2456, 2492, 523, 2516, 593,
677 2524, 2548, 2610, 2555, 2579, 2602, 2609, 2626, 2649, 2608,
678 2607, 2605, 2672, 1378, 2696, 2719, 2604, 0, 1436, 0,
679 587, 2603, 1443, 2743, 2766, 2587, 0, 1549, 0, 1556,
680 0, 680, 2586, 1888, 2790, 2813, 2585, 0, 551, 1895,
681 2592, 1386, 1451, 2590, 2589, 1471, 1502, 2837, 2580, 2861,
682
683 641, 2564, 2571, 571, 633, 572, 617, 768, 1251, 2056,
684 1388, 687, 690, 808, 2083, 688, 810, 618, 766, 2081,
685 2085, 2903, 833, 2926, 834, 2949, 2114, 2973, 2997, 2562,
686 2561, 3005, 642, 2560, 3046, 671, 2558, 3087, 742, 2557,
687 2556, 2555, 2533, 3128, 878, 2532, 1564, 1694, 3169, 2531,
688 3193, 881, 2530, 2537, 1904, 2056, 2535, 2534, 2057, 2063,
689 3234, 2525, 3258, 882, 2524, 2509, 900, 2151, 2508, 2123,
690 2124, 2507, 2506, 2125, 2145, 3299, 2497, 3323, 902, 2495,
691 2502, 0, 2216, 0, 2223, 0, 737, 2493, 2281, 3364,
692 3387, 2492, 0, 898, 921, 975, 976, 1904, 977, 1453,
693
694 1001, 1022, 2276, 1023, 1566, 1046, 3412, 3435, 3459, 930,
695 3499, 3523, 3547, 2445, 3554, 3578, 3601, 2444, 3625, 3648,
696 2443, 3672, 3695, 2429, 2428, 2427, 3718, 2368, 3742, 3765,
697 2426, 0, 2406, 0, 937, 2375, 2443, 3789, 3812, 2348,
698 0, 2463, 0, 2470, 0, 969, 2347, 2477, 3836, 3859,
699 2346, 0, 0, 2484, 0, 2884, 0, 1016, 2345, 2891,
700 3883, 3906, 2331, 0, 0, 1006, 3028, 2338, 2166, 2231,
701 2337, 2333, 2295, 2296, 3930, 2324, 3954, 1027, 2323, 2316,
702 2298, 2359, 2360, 2127, 1048, 2233, 2361, 1071, 2362, 1070,
703 1072, 1126, 1128, 3996, 4020, 4029, 1149, 2306, 2305, 4047,
704
705 1077, 2286, 4088, 1080, 2283, 4129, 1107, 2282, 4170, 1110,
706 2281, 2265, 2261, 4210, 4234, 1157, 2259, 2414, 2415, 4275,
707 2241, 4299, 1158, 2240, 2247, 2596, 2643, 2244, 2243, 2899,
708 2900, 4340, 2202, 4364, 1159, 2201, 2208, 1182, 3035, 2204,
709 2903, 3043, 2203, 2202, 3056, 3062, 4405, 2176, 4429, 1187,
710 2175, 2182, 0, 1188, 3110, 2179, 3063, 3084, 2167, 2162,
711 3104, 3123, 4470, 2135, 4494, 1189, 2105, 2083, 0, 3151,
712 0, 3216, 0, 1284, 2073, 3223, 4535, 4558, 2071, 0,
713 3268, 3269, 3333, 1150, 2399, 2105, 1407, 2400, 2275, 1469,
714 1493, 1206, 4583, 4607, 4616, 2070, 4633, 4657, 4680, 2068,
715
716 4704, 4727, 2067, 4751, 4774, 2066, 4798, 4821, 2064, 2054,
717 4845, 1246, 2053, 2051, 3286, 4886, 2023, 2022, 0, 3350,
718 0, 1316, 2021, 3482, 4910, 2020, 2019, 0, 3489, 0,
719 3977, 0, 1535, 2017, 3984, 4934, 2016, 2015, 0, 0,
720 4036, 0, 4070, 0, 1576, 2014, 4077, 4958, 1991, 1990,
721 0, 0, 4111, 0, 4118, 0, 1599, 1989, 4152, 4982,
722 1988, 1985, 0, 0, 1248, 4159, 1976, 3125, 3145, 1972,
723 1970, 3164, 3166, 5006, 1911, 5030, 1249, 1872, 1876, 1495,
724 1669, 1670, 1520, 1347, 1671, 4168, 1583, 1715, 2401, 5072,
725 1867, 5089, 5113, 1389, 1824, 5154, 1390, 1802, 5195, 1453,
726
727 1800, 5236, 1561, 1779, 5277, 1566, 1777, 1756, 4196, 5318,
728 1752, 1729, 0, 1728, 3231, 3269, 5342, 1708, 1705, 1633,
729 3294, 3333, 1632, 1608, 3360, 3381, 5366, 1573, 1569, 1541,
730 1621, 4257, 1534, 3412, 3498, 1518, 1517, 3595, 3642, 5390,
731 1505, 1480, 1469, 0, 1622, 4264, 1464, 3689, 4180, 1463,
732 1423, 4181, 4205, 5414, 1394, 1391, 1398, 0, 1623, 4322,
733 1365, 4209, 4272, 1363, 1361, 4316, 4335, 5438, 1351, 1350,
734 1323, 0, 4387, 0, 4394, 0, 1630, 1314, 4452, 5462,
735 0, 1312, 0, 1716, 1739, 1740, 1741, 1762, 1974, 4488,
736 4504, 5486, 1650, 0, 1310, 5527, 0, 1282, 5551, 0,
737
738 1259, 5575, 0, 1258, 5599, 0, 1253, 5623, 0, 1217,
739 4337, 4402, 5647, 1213, 1212, 1196, 1174, 1114, 4459, 0,
740 1631, 1108, 1056, 4521, 0, 4623, 0, 1803, 1009, 988,
741 0, 4868, 0, 4875, 0, 1826, 965, 963, 0, 5053,
742 0, 5060, 0, 1850, 960, 938, 0, 5079, 0, 5136,
743 0, 1874, 890, 883, 0, 1652, 5143, 858, 4467, 4531,
744 67, 111, 4552, 4632, 5671, 200, 0, 224, 2363, 1763,
745 1787, 1764, 5695, 249, 320, 0, 0, 0, 0, 0,
746 0, 5177, 0, 1914, 322, 345, 0, 4674, 4721, 360,
747 403, 0, 1653, 5184, 420, 4768, 4815, 424, 444, 0,
748
749 0, 1677, 5218, 475, 4883, 5088, 509, 516, 0, 0,
750 1814, 5225, 610, 5233, 5246, 611, 633, 0, 0, 1816,
751 5260, 683, 5274, 5287, 712, 713, 0, 0, 5301, 0,
752 5509, 0, 1937, 733, 0, 3083, 2964, 2161, 1810, 0,
753 7401, 0, 0, 0, 0, 0, 0, 5315, 5503, 744,
754 778, 0, 7401, 5517, 0, 7401, 0, 5718, 0, 7401,
755 0, 5725, 0, 7401, 0, 5732, 0, 7401, 0, 5739,
756 0, 7401, 0, 1817, 5746, 784, 5754, 5755, 801, 1967,
757 0, 1834, 3341, 1921, 0, 5755, 0, 1838, 5769, 803,
758 0, 1841, 5776, 805, 0, 1899, 5783, 808, 0, 1901,
759
760 5795, 849, 0, 1902, 5802, 852, 0, 5809, 0, 7401,
761 1975, 1929, 5816, 854, 0, 0, 0, 0, 0, 0,
762 1954, 5823, 856, 0, 0, 0, 0, 0, 0, 0,
763 0, 0, 7401, 5841, 5849, 5853, 5856, 5859, 5862, 5865,
764 5868, 5871, 5874, 5877, 5880, 5883, 5886, 5889, 5892, 5895,
765 5898, 5901, 5905, 5909, 5912, 5915, 5918, 5921, 5924, 5927,
766 5930, 5933, 5937, 5941, 5944, 5947, 5951, 5953, 5956, 5959,
767 5962, 5965, 5968, 5971, 5974, 5977, 5981, 5983, 5986, 5990,
768 5995, 5999, 6002, 6006, 6009, 6012, 6015, 6018, 6021, 6024,
769 6027, 6031, 6035, 6038, 6042, 6046, 6051, 6055, 6057, 6061,
770
771 6064, 6068, 6071, 6074, 6078, 6080, 6083, 6086, 6089, 6092,
772 6095, 6098, 6101, 6104, 6107, 6111, 6113, 6116, 6119, 6122,
773 6126, 6128, 6131, 6134, 6139, 6143, 6148, 6152, 6154, 6158,
774 6161, 6165, 6170, 6174, 6177, 6180, 6183, 6186, 6189, 6192,
775 6195, 6199, 6203, 6206, 6210, 6214, 6219, 6223, 6225, 6229,
776 6232, 6236, 6239, 6244, 6248, 6253, 6257, 6259, 6263, 6266,
777 6270, 6273, 6276, 6279, 6283, 6285, 6288, 6293, 6297, 6300,
778 6303, 6306, 6309, 6312, 6315, 6318, 6321, 6325, 6327, 6330,
779 6333, 6336, 6340, 6342, 6345, 6348, 6351, 6354, 6358, 6360,
780 6363, 6366, 6369, 6374, 6378, 6383, 6387, 6389, 6393, 6396,
781
782 6400, 6405, 6409, 6412, 6415, 6418, 6421, 6424, 6427, 6430,
783 6434, 6438, 6441, 6445, 6449, 6454, 6458, 6460, 6464, 6467,
784 6471, 6474, 6479, 6483, 6488, 6492, 6494, 6498, 6501, 6505,
785 6508, 6511, 6516, 6520, 6525, 6529, 6531, 6535, 6538, 6542,
786 6545, 6548, 6551, 6555, 6557, 6560, 6565, 6569, 6572, 6575,
787 6578, 6581, 6584, 6587, 6590, 6593, 6596, 6599, 6602, 6606,
788 6608, 6611, 6614, 6617, 6620, 6624, 6626, 6629, 6632, 6635,
789 6638, 6641, 6645, 6647, 6650, 6653, 6656, 6659, 6662, 6666,
790 6668, 6671, 6674, 6677, 6680, 6685, 6689, 6694, 6698, 6700,
791 6704, 6707, 6711, 6716, 6720, 6723, 6726, 6729, 6732, 6735,
792
793 6738, 6741, 6744, 6747, 6751, 6755, 6758, 6762, 6766, 6771,
794 6775, 6777, 6781, 6784, 6788, 6791, 6796, 6800, 6805, 6809,
795 6811, 6815, 6818, 6822, 6825, 6828, 6833, 6837, 6842, 6846,
796 6848, 6852, 6855, 6859, 6862, 6865, 6870, 6874, 6879, 6883,
797 6885, 6889, 6892, 6896, 6899, 6902, 6905, 6909, 6911, 6914,
798 6917, 6922, 6926, 6929, 6932, 6935, 6938, 6941, 6944, 6947,
799 6950, 6953, 6956, 6959, 6963, 6967, 6970, 6973, 6977, 6980,
800 6983, 6987, 6989, 6992, 6995, 6999, 7001, 7004, 7007, 7010,
801 7014, 7016, 7019, 7022, 7025, 7029, 7031, 7034, 7037, 7040,
802 7044, 7046, 7049, 7052, 7057, 7061, 7066, 7070, 7072, 7076,
803
804 7079, 7083, 7088, 7092, 7095, 7098, 7101, 7104, 7107, 7110,
805 7113, 7116, 7120, 7122, 7125, 7129, 7134, 7138, 7139, 7142,
806 7147, 7151, 7156, 7160, 7161, 7164, 7167, 7172, 7176, 7181,
807 7185, 7186, 7189, 7192, 7197, 7201, 7206, 7210, 7211, 7214,
808 7217, 7222, 7226, 7231, 7235, 7236, 7239, 7242, 7245, 7249,
809 7251, 7256, 7260, 7263, 7266, 7269, 7272, 7275, 7278, 7282,
810 7287, 7291, 7292, 7295, 7298, 7301, 7304, 7307, 7310, 7313,
811 7316, 7319, 7322, 7327, 7331, 7334, 7337, 7340, 7344, 7348,
812 7352, 7356, 7360, 7363, 7366, 7370, 7373, 7376, 7379, 7382,
813 7385, 7389, 7392
814
815 } ;
816
817 static yyconst flex_int16_t yy_def[1894] =
818 { 0,
819 1433, 1, 1433, 1433, 1433, 1433, 1433, 1433, 1434, 1433,
820 1433, 1433, 1433, 1433, 14, 1433, 1433, 1433, 1433, 14,
821 20, 1435, 20, 20, 20, 20, 20, 20, 21, 21,
822 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
823 21, 21, 1433, 1433, 1433, 1436, 1433, 21, 21, 20,
824 1437, 50, 21, 21, 21, 1433, 1433, 1433, 1433, 1433,
825 1433, 49, 1435, 1435, 52, 52, 52, 21, 21, 21,
826 21, 52, 21, 21, 21, 21, 21, 52, 21, 21,
827 21, 21, 21, 52, 21, 21, 21, 21, 21, 21,
828 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
829
830 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
831 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
832 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
833 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
834 21, 21, 1433, 1433, 21, 21, 146, 21, 21, 149,
835 1438, 1433, 54, 1433, 154, 1439, 21, 21, 150, 21,
836 21, 21, 150, 21, 21, 21, 21, 21, 150, 21,
837 21, 21, 21, 21, 21, 21, 150, 21, 21, 21,
838 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
839 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
840
841 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
842 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
843 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
844 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
845 21, 21, 21, 21, 21, 21, 21, 21, 245, 246,
846 150, 1440, 251, 1441, 1442, 1433, 256, 1443, 1444, 1433,
847 1433, 1433, 1445, 1446, 21, 21, 21, 21, 21, 21,
848 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
849 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
850 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
851
852 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
853 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
854 21, 21, 21, 21, 324, 21, 246, 248, 246, 248,
855 248, 331, 1447, 1433, 330, 1448, 1449, 1433, 1433, 1433,
856 1433, 1450, 1451, 1452, 1453, 1453, 1433, 1454, 1433, 349,
857 1455, 1446, 21, 21, 21, 21, 21, 21, 21, 21,
858 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
859 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
860 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
861 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
862
863 21, 21, 21, 21, 401, 402, 402, 407, 401, 331,
864 410, 1456, 1457, 1433, 414, 1458, 1433, 1459, 1460, 1433,
865 420, 1461, 1462, 1463, 1463, 1433, 1464, 1433, 428, 1465,
866 1451, 1433, 1433, 1466, 1467, 1433, 1433, 1433, 1433, 1468,
867 1469, 21, 21, 21, 21, 21, 21, 21, 21, 21,
868 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
869 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
870 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
871 21, 21, 21, 21, 21, 485, 21, 402, 404, 402,
872 402, 491, 410, 493, 1470, 1433, 1433, 1433, 1471, 1472,
873
874 1473, 1433, 1433, 1433, 1433, 1474, 1475, 1433, 1476, 1477,
875 1433, 1433, 1433, 1433, 1478, 1479, 1480, 1480, 1466, 1467,
876 1481, 1481, 1433, 1482, 1433, 525, 1483, 1484, 21, 21,
877 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
878 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
879 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
880 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
881 568, 568, 572, 493, 574, 1485, 1486, 1433, 578, 1487,
882 1433, 581, 1488, 1433, 1489, 1490, 1433, 587, 1491, 1492,
883 1492, 1433, 1493, 1433, 594, 1494, 1495, 1496, 1496, 1497,
884
885 1498, 1499, 1499, 1433, 1500, 1433, 606, 1501, 1502, 1433,
886 1503, 1433, 1504, 1505, 1433, 1433, 1433, 1433, 1506, 1507,
887 575, 621, 621, 621, 621, 621, 621, 621, 621, 621,
888 621, 621, 621, 621, 621, 621, 621, 621, 621, 621,
889 621, 621, 621, 621, 621, 621, 646, 646, 646, 621,
890 646, 651, 1508, 1433, 1433, 1433, 1509, 1433, 1433, 1510,
891 1511, 1512, 1433, 1433, 1433, 1433, 1513, 1514, 1433, 1515,
892 1516, 1433, 1433, 1433, 1433, 1517, 1518, 1433, 1519, 1433,
893 1520, 1521, 1433, 1433, 1433, 1433, 1522, 1523, 1524, 1433,
894 1525, 1526, 1526, 1527, 1528, 1529, 1529, 1433, 1530, 1433,
895
896 700, 1531, 1532, 1533, 1533, 1533, 1533, 1533, 1533, 1533,
897 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533,
898 1533, 1533, 1533, 722, 1533, 722, 726, 726, 728, 1534,
899 1535, 1433, 732, 1536, 1433, 735, 1537, 1433, 738, 1538,
900 1433, 1539, 1540, 1433, 744, 1541, 1542, 1542, 1433, 1543,
901 1433, 751, 1544, 1545, 1546, 1546, 1547, 1548, 1549, 1549,
902 1433, 1550, 1433, 763, 1551, 1552, 1553, 1433, 1554, 1555,
903 1555, 1556, 1557, 1558, 1558, 1433, 1559, 1433, 778, 1560,
904 1561, 1562, 1433, 1563, 1433, 1564, 1565, 1433, 1433, 1433,
905 1433, 1566, 1567, 1568, 1568, 1568, 1568, 1568, 1568, 1568,
906
907 1568, 1568, 1568, 1568, 1568, 1568, 1568, 807, 807, 809,
908 807, 807, 812, 1569, 1433, 1433, 1433, 1570, 1433, 1433,
909 1571, 1433, 1433, 1572, 1573, 1574, 1433, 1433, 1433, 1433,
910 1575, 1576, 1433, 1577, 1578, 1433, 1433, 1433, 1433, 1579,
911 1580, 1433, 1581, 1433, 1582, 1583, 1433, 1433, 1433, 1433,
912 1584, 1585, 1586, 1433, 1587, 1433, 1588, 1589, 1433, 1433,
913 1433, 1433, 1590, 1591, 1592, 1593, 1433, 1594, 1595, 1595,
914 1596, 1597, 1598, 1598, 1433, 1599, 1433, 877, 1600, 1601,
915 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602, 1602,
916 1602, 1602, 1602, 1602, 894, 1602, 1602, 1603, 1604, 1433,
917
918 900, 1605, 1433, 903, 1606, 1433, 906, 1607, 1433, 909,
919 1608, 1433, 1609, 1433, 1433, 915, 1610, 1611, 1611, 1433,
920 1612, 1433, 922, 1613, 1614, 1615, 1615, 1616, 1617, 1618,
921 1618, 1433, 1619, 1433, 934, 1620, 1621, 1622, 1433, 1623,
922 1624, 1624, 1625, 1626, 1627, 1627, 1433, 1628, 1433, 949,
923 1629, 1630, 1631, 1632, 1433, 1633, 1634, 1634, 1635, 1636,
924 1637, 1637, 1433, 1638, 1433, 965, 1639, 1640, 1641, 1433,
925 1642, 1433, 1643, 1644, 1433, 1433, 1433, 1433, 1645, 1646,
926 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647, 1647,
927 1647, 1647, 1647, 993, 1647, 1648, 1433, 1433, 1433, 1649,
928
929 1433, 1433, 1650, 1433, 1433, 1651, 1433, 1433, 1652, 1653,
930 1433, 1011, 1654, 1655, 1433, 1433, 1656, 1657, 1658, 1433,
931 1659, 1660, 1433, 1433, 1433, 1661, 1662, 1663, 1433, 1664,
932 1433, 1665, 1666, 1433, 1433, 1433, 1667, 1668, 1669, 1670,
933 1433, 1671, 1433, 1672, 1673, 1433, 1433, 1433, 1674, 1675,
934 1676, 1677, 1433, 1678, 1433, 1679, 1680, 1433, 1433, 1433,
935 1681, 1682, 1683, 1684, 1685, 1433, 1686, 1687, 1687, 1688,
936 1689, 1690, 1690, 1433, 1691, 1433, 1076, 1692, 1693, 1694,
937 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694, 1694,
938 1695, 1433, 1433, 1093, 1696, 1433, 1096, 1697, 1433, 1099,
939
940 1698, 1433, 1102, 1699, 1433, 1105, 1700, 1433, 1433, 1433,
941 1701, 1702, 1703, 1704, 1705, 1705, 1433, 1706, 1707, 1708,
942 1709, 1709, 1710, 1711, 1712, 1712, 1433, 1713, 1714, 1715,
943 1716, 1433, 1717, 1718, 1718, 1719, 1720, 1721, 1721, 1433,
944 1722, 1723, 1724, 1725, 1726, 1433, 1727, 1728, 1728, 1729,
945 1730, 1731, 1731, 1433, 1732, 1733, 1734, 1735, 1736, 1433,
946 1737, 1738, 1738, 1739, 1740, 1741, 1741, 1433, 1742, 1743,
947 1744, 1745, 1433, 1746, 1433, 1747, 1748, 1433, 1433, 1433,
948 1749, 1750, 1751, 1752, 1752, 1752, 1752, 1752, 1752, 1752,
949 1752, 1433, 1192, 1753, 1754, 1433, 1755, 1756, 1433, 1757,
950
951 1758, 1433, 1759, 1760, 1433, 1761, 1762, 1433, 1763, 1764,
952 1765, 1765, 1433, 1766, 1767, 1768, 1769, 1770, 1433, 1771,
953 1772, 1433, 1773, 1433, 1774, 1433, 1775, 1776, 1433, 1777,
954 1778, 1433, 1779, 1433, 1780, 1781, 1433, 1782, 1783, 1433,
955 1784, 1433, 1785, 1786, 1433, 1787, 1788, 1433, 1789, 1433,
956 1790, 1791, 1433, 1792, 1793, 1794, 1433, 1795, 1796, 1796,
957 1797, 1798, 1799, 1799, 1433, 1800, 1801, 1802, 1803, 1803,
958 1803, 1803, 1433, 1804, 1805, 1806, 1807, 1808, 1809, 1810,
959 1811, 1433, 1812, 1813, 1433, 1814, 1815, 1816, 1816, 1817,
960 1818, 1819, 1820, 1433, 1821, 1822, 1822, 1823, 1824, 1825,
961
962 1826, 1827, 1433, 1828, 1829, 1829, 1830, 1831, 1832, 1833,
963 1834, 1433, 1835, 1836, 1836, 1837, 1838, 1839, 1840, 1841,
964 1433, 1842, 1843, 1843, 1844, 1845, 1846, 1847, 1433, 1848,
965 1433, 1849, 1850, 1433, 1851, 1852, 1852, 1852, 1852, 1853,
966 1433, 1854, 1855, 1856, 1857, 1858, 1859, 1860, 1860, 1861,
967 1862, 1863, 1433, 1433, 1864, 1433, 1865, 1433, 1866, 1433,
968 1867, 1433, 1868, 1433, 1869, 1433, 1870, 1433, 1871, 1433,
969 1872, 1433, 1847, 1873, 1433, 1848, 1874, 1874, 1849, 1850,
970 1875, 1852, 1852, 1852, 1876, 1433, 1877, 1878, 1433, 1864,
971 1865, 1879, 1433, 1866, 1867, 1880, 1433, 1868, 1869, 1881,
972
973 1433, 1870, 1871, 1882, 1433, 1872, 1883, 1433, 1884, 1433,
974 1852, 1885, 1433, 1877, 1886, 1887, 1888, 1889, 1890, 1883,
975 1891, 1433, 1884, 1892, 1886, 1887, 1888, 1889, 1890, 1893,
976 1892, 1893, 0, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
977 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
978 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
979 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
980 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
981 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
982 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
983
984 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
985 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
986 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
987 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
988 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
989 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
990 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
991 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
992 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
993 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
994
995 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
996 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
997 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
998 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
999 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1000 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1001 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1002 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1003 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1004 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1005
1006 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1007 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1008 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1009 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1010 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1011 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1012 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1013 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1014 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1015 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1016
1017 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1018 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1019 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1020 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1021 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1022 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1023 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1024 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1025 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1026 1433, 1433, 1433
1027
1028 } ;
1029
1030 static yyconst flex_int16_t yy_nxt[7455] =
1031 { 0,
1032 4, 5, 6, 7, 8, 9, 10, 11, 12, 11,
1033 13, 14, 15, 15, 15, 15, 15, 15, 16, 17,
1034 18, 19, 20, 21, 21, 11, 22, 13, 23, 24,
1035 25, 26, 27, 28, 29, 30, 31, 21, 32, 33,
1036 34, 35, 36, 21, 37, 38, 39, 40, 41, 42,
1037 21, 21, 43, 44, 44, 53, 44, 44, 44, 44,
1038 44, 44, 44, 44, 110, 44, 57, 58, 44, 60,
1039 61, 44, 44, 111, 72, 82, 83, 1175, 44, 44,
1040 44, 53, 44, 134, 231, 44, 44, 44, 73, 65,
1041 44, 66, 67, 84, 232, 74, 68, 135, 85, 75,
1042
1043 44, 69, 76, 86, 136, 70, 77, 71, 44, 48,
1044 49, 50, 50, 50, 50, 50, 50, 50, 51, 87,
1045 184, 976, 52, 53, 54, 185, 173, 55, 52, 52,
1046 52, 52, 52, 52, 53, 53, 53, 53, 53, 53,
1047 53, 53, 53, 53, 53, 53, 53, 53, 53, 53,
1048 54, 53, 44, 174, 78, 44, 189, 44, 79, 175,
1049 44, 196, 194, 219, 80, 711, 197, 81, 195, 63,
1050 56, 316, 63, 317, 63, 53, 220, 63, 44, 62,
1051 52, 52, 52, 52, 52, 52, 52, 63, 104, 190,
1052 469, 117, 105, 53, 112, 63, 118, 119, 225, 120,
1053
1054 121, 106, 107, 138, 470, 108, 113, 109, 114, 200,
1055 115, 139, 201, 116, 202, 140, 226, 141, 1181, 53,
1056 55, 53, 53, 53, 53, 53, 53, 53, 53, 1433,
1057 97, 98, 191, 53, 1179, 53, 53, 329, 228, 53,
1058 53, 53, 53, 53, 53, 89, 99, 229, 90, 91,
1059 100, 92, 1433, 93, 101, 94, 102, 95, 122, 192,
1060 96, 53, 123, 103, 193, 706, 127, 1341, 388, 710,
1061 124, 53, 128, 389, 129, 125, 130, 126, 1433, 318,
1062 131, 44, 132, 133, 44, 298, 44, 53, 465, 44,
1063 148, 148, 148, 148, 148, 148, 148, 63, 299, 44,
1064
1065 63, 466, 63, 319, 713, 63, 53, 44, 145, 145,
1066 145, 145, 145, 145, 145, 63, 260, 1433, 53, 145,
1067 53, 490, 714, 63, 262, 145, 145, 145, 145, 145,
1068 145, 146, 147, 147, 147, 147, 147, 147, 1274, 53,
1069 1274, 1433, 148, 1433, 354, 355, 356, 357, 148, 148,
1070 148, 148, 148, 148, 49, 149, 149, 149, 149, 149,
1071 149, 149, 539, 422, 358, 53, 150, 1433, 53, 1433,
1072 1219, 540, 150, 150, 150, 150, 150, 150, 62, 150,
1073 150, 150, 150, 150, 150, 150, 153, 153, 153, 153,
1074 153, 153, 153, 1433, 53, 1433, 406, 153, 354, 355,
1075
1076 356, 357, 1433, 153, 153, 153, 153, 153, 153, 44,
1077 248, 707, 44, 1015, 44, 433, 53, 44, 433, 1433,
1078 154, 155, 155, 155, 155, 155, 155, 44, 1433, 434,
1079 1224, 156, 1433, 53, 1226, 44, 248, 156, 156, 156,
1080 156, 156, 156, 243, 542, 244, 244, 244, 244, 244,
1081 244, 244, 339, 543, 1024, 434, 244, 1433, 1433, 53,
1082 498, 715, 244, 244, 244, 244, 244, 244, 245, 246,
1083 246, 246, 246, 246, 246, 246, 260, 53, 648, 53,
1084 247, 1433, 248, 1433, 1433, 1232, 247, 247, 247, 247,
1085 247, 247, 326, 326, 326, 326, 326, 326, 326, 345,
1086
1087 346, 346, 346, 346, 346, 346, 508, 1433, 248, 249,
1088 247, 247, 247, 247, 247, 247, 247, 1433, 1433, 1234,
1089 509, 247, 1433, 1433, 705, 53, 1035, 247, 247, 247,
1090 247, 247, 247, 250, 251, 251, 251, 251, 251, 251,
1091 251, 252, 437, 1433, 1433, 253, 509, 570, 1433, 1433,
1092 439, 253, 253, 253, 253, 253, 253, 53, 253, 253,
1093 253, 253, 253, 253, 253, 256, 257, 257, 257, 257,
1094 257, 257, 258, 570, 708, 782, 259, 53, 53, 721,
1095 55, 55, 259, 259, 259, 259, 259, 259, 260, 261,
1096 261, 261, 261, 261, 261, 261, 262, 503, 55, 55,
1097
1098 263, 782, 264, 727, 367, 656, 263, 263, 263, 263,
1099 263, 263, 368, 409, 409, 409, 409, 409, 409, 409,
1100 1240, 1242, 508, 716, 571, 369, 55, 55, 264, 323,
1101 323, 323, 323, 323, 323, 323, 1433, 53, 404, 53,
1102 323, 370, 55, 1047, 55, 55, 323, 323, 323, 323,
1103 323, 323, 324, 325, 325, 325, 325, 325, 325, 709,
1104 55, 795, 1433, 326, 404, 1433, 1433, 794, 53, 326,
1105 326, 326, 326, 326, 326, 245, 327, 327, 327, 327,
1106 327, 327, 327, 328, 328, 328, 328, 328, 328, 328,
1107 512, 1433, 1433, 1248, 328, 1433, 55, 55, 659, 55,
1108
1109 328, 328, 328, 328, 328, 328, 330, 331, 331, 331,
1110 331, 331, 331, 331, 55, 55, 804, 55, 332, 800,
1111 801, 1433, 1250, 1059, 332, 332, 332, 332, 332, 332,
1112 335, 332, 332, 332, 332, 332, 332, 332, 339, 340,
1113 340, 340, 340, 340, 340, 340, 341, 616, 392, 610,
1114 342, 1181, 343, 393, 1282, 618, 342, 342, 342, 342,
1115 342, 342, 394, 611, 395, 396, 1433, 397, 424, 425,
1116 425, 425, 425, 425, 425, 55, 610, 55, 343, 260,
1117 347, 347, 347, 347, 347, 347, 347, 262, 1109, 611,
1118 1433, 348, 1433, 55, 1329, 55, 612, 348, 348, 348,
1119
1120 348, 348, 348, 349, 350, 350, 350, 350, 350, 350,
1121 613, 1331, 796, 1354, 351, 1358, 1433, 55, 1362, 55,
1122 351, 351, 351, 351, 351, 351, 399, 612, 400, 400,
1123 400, 400, 400, 400, 400, 55, 613, 55, 802, 400,
1124 805, 1433, 722, 55, 724, 400, 400, 400, 400, 400,
1125 400, 401, 402, 402, 402, 402, 402, 402, 402, 1366,
1126 55, 55, 1370, 403, 1386, 404, 1408, 1433, 1173, 403,
1127 403, 403, 403, 403, 403, 487, 487, 487, 487, 487,
1128 487, 487, 517, 518, 518, 518, 518, 518, 518, 669,
1129 720, 404, 405, 403, 403, 403, 403, 403, 403, 403,
1130
1131 53, 422, 1433, 670, 403, 1433, 1433, 55, 1209, 669,
1132 403, 403, 403, 403, 403, 403, 407, 408, 408, 408,
1133 408, 408, 408, 1433, 853, 55, 1433, 409, 1433, 670,
1134 55, 1433, 1433, 409, 409, 409, 409, 409, 409, 250,
1135 410, 410, 410, 410, 410, 410, 410, 664, 55, 1433,
1136 853, 411, 1433, 881, 53, 817, 422, 411, 411, 411,
1137 411, 411, 411, 53, 411, 411, 411, 411, 411, 411,
1138 411, 414, 415, 415, 415, 415, 415, 415, 1206, 673,
1139 53, 422, 416, 1203, 55, 55, 55, 820, 416, 416,
1140 416, 416, 416, 416, 420, 421, 421, 421, 421, 421,
1141
1142 421, 422, 55, 55, 55, 423, 422, 882, 883, 885,
1143 55, 423, 423, 423, 423, 423, 423, 339, 426, 426,
1144 426, 426, 426, 426, 426, 341, 684, 1200, 55, 427,
1145 969, 55, 55, 887, 823, 427, 427, 427, 427, 427,
1146 427, 428, 429, 429, 429, 429, 429, 429, 422, 55,
1147 55, 1433, 430, 890, 888, 55, 969, 55, 430, 430,
1148 430, 430, 430, 430, 260, 435, 435, 435, 435, 435,
1149 435, 435, 262, 55, 422, 55, 436, 1433, 986, 55,
1150 55, 55, 436, 436, 436, 436, 436, 436, 437, 438,
1151 438, 438, 438, 438, 438, 438, 439, 55, 55, 55,
1152
1153 440, 1433, 441, 990, 1433, 992, 440, 440, 440, 440,
1154 440, 440, 521, 522, 522, 522, 522, 522, 522, 590,
1155 591, 591, 591, 591, 591, 591, 1197, 1433, 441, 450,
1156 1433, 1433, 422, 451, 1433, 55, 452, 55, 678, 453,
1157 678, 454, 455, 456, 457, 484, 484, 484, 484, 484,
1158 484, 484, 679, 55, 1433, 55, 484, 1433, 55, 55,
1159 1433, 717, 484, 484, 484, 484, 484, 484, 485, 486,
1160 486, 486, 486, 486, 486, 53, 55, 55, 679, 487,
1161 1433, 1433, 1433, 1433, 1109, 487, 487, 487, 487, 487,
1162 487, 401, 488, 488, 488, 488, 488, 488, 488, 489,
1163
1164 489, 489, 489, 489, 489, 489, 1040, 1433, 1433, 1433,
1165 489, 1433, 1052, 1433, 422, 55, 489, 489, 489, 489,
1166 489, 489, 406, 491, 491, 491, 491, 491, 491, 491,
1167 422, 1274, 1040, 55, 492, 1209, 248, 1433, 1052, 1433,
1168 492, 492, 492, 492, 492, 492, 598, 599, 599, 599,
1169 599, 599, 599, 602, 603, 603, 603, 603, 603, 603,
1170 55, 680, 248, 492, 492, 492, 492, 492, 492, 492,
1171 1433, 1206, 1172, 1433, 492, 681, 1203, 1200, 55, 719,
1172 492, 492, 492, 492, 492, 492, 493, 493, 493, 493,
1173 493, 493, 493, 53, 789, 797, 1433, 494, 1172, 1433,
1174
1175 1197, 681, 791, 494, 494, 494, 494, 494, 494, 53,
1176 494, 494, 494, 494, 494, 494, 494, 339, 497, 497,
1177 497, 497, 497, 497, 497, 498, 828, 680, 1274, 499,
1178 1181, 343, 978, 1059, 999, 499, 499, 499, 499, 499,
1179 499, 1433, 689, 690, 690, 690, 690, 690, 690, 692,
1180 693, 693, 693, 693, 693, 693, 55, 343, 503, 504,
1181 504, 504, 504, 504, 504, 504, 505, 1433, 422, 1209,
1182 506, 860, 507, 1055, 55, 1053, 506, 506, 506, 506,
1183 506, 506, 696, 697, 697, 697, 697, 697, 697, 747,
1184 748, 748, 748, 748, 748, 748, 783, 55, 507, 339,
1185
1186 510, 510, 510, 510, 510, 510, 510, 498, 1047, 422,
1187 784, 511, 1206, 1433, 1433, 55, 55, 511, 511, 511,
1188 511, 511, 511, 512, 513, 513, 513, 513, 513, 513,
1189 513, 514, 799, 848, 55, 515, 784, 516, 1085, 1433,
1190 1433, 515, 515, 515, 515, 515, 515, 755, 756, 756,
1191 756, 756, 756, 756, 759, 760, 760, 760, 760, 760,
1192 760, 783, 55, 516, 437, 523, 523, 523, 523, 523,
1193 523, 523, 439, 1043, 1041, 1433, 524, 1433, 55, 1035,
1194 55, 785, 524, 524, 524, 524, 524, 524, 525, 526,
1195 526, 526, 526, 526, 526, 786, 55, 886, 422, 527,
1196
1197 1088, 1433, 55, 1433, 55, 527, 527, 527, 527, 527,
1198 527, 565, 785, 566, 566, 566, 566, 566, 566, 566,
1199 55, 786, 55, 1203, 566, 1089, 1433, 837, 1031, 55,
1200 566, 566, 566, 566, 566, 566, 567, 568, 568, 568,
1201 568, 568, 568, 568, 1029, 837, 1184, 55, 569, 1187,
1202 570, 1024, 1433, 1002, 569, 569, 569, 569, 569, 569,
1203 767, 768, 768, 768, 768, 768, 768, 770, 771, 771,
1204 771, 771, 771, 771, 833, 55, 570, 567, 569, 569,
1205 569, 569, 569, 569, 569, 1433, 848, 422, 834, 569,
1206 1433, 1200, 55, 55, 1005, 569, 569, 569, 569, 569,
1207
1208 569, 406, 572, 572, 572, 572, 572, 572, 572, 860,
1209 55, 1433, 891, 573, 834, 1190, 1433, 1008, 828, 573,
1210 573, 573, 573, 573, 573, 53, 573, 573, 573, 573,
1211 573, 573, 573, 574, 574, 574, 574, 574, 574, 574,
1212 976, 1015, 1020, 1015, 575, 1231, 1239, 1247, 978, 1197,
1213 575, 575, 575, 575, 575, 575, 53, 575, 575, 575,
1214 575, 575, 575, 575, 578, 579, 579, 579, 579, 579,
1215 579, 1231, 1239, 1247, 1433, 580, 1328, 1357, 55, 55,
1216 55, 580, 580, 580, 580, 580, 580, 339, 426, 426,
1217 426, 426, 426, 426, 426, 498, 55, 55, 55, 427,
1218
1219 1433, 1361, 1328, 1357, 833, 427, 427, 427, 427, 427,
1220 427, 581, 582, 582, 582, 582, 582, 582, 1433, 1188,
1221 1185, 1186, 583, 422, 55, 55, 1197, 1361, 583, 583,
1222 583, 583, 583, 583, 587, 588, 588, 588, 588, 588,
1223 588, 422, 55, 55, 1433, 589, 422, 1111, 55, 55,
1224 55, 589, 589, 589, 589, 589, 589, 503, 592, 592,
1225 592, 592, 592, 592, 592, 505, 55, 55, 55, 593,
1226 1216, 55, 55, 55, 1092, 593, 593, 593, 593, 593,
1227 593, 594, 595, 595, 595, 595, 595, 595, 422, 55,
1228 55, 55, 596, 1337, 1269, 1209, 55, 1206, 596, 596,
1229
1230 596, 596, 596, 596, 512, 604, 604, 604, 604, 604,
1231 604, 604, 514, 1024, 55, 1339, 605, 1338, 1203, 55,
1232 1200, 1200, 605, 605, 605, 605, 605, 605, 606, 607,
1233 607, 607, 607, 607, 607, 422, 1035, 55, 1365, 608,
1234 1369, 1407, 1197, 55, 1203, 608, 608, 608, 608, 608,
1235 608, 437, 614, 614, 614, 614, 614, 614, 614, 439,
1236 1047, 55, 1415, 615, 1365, 1416, 1369, 1407, 1206, 615,
1237 615, 615, 615, 615, 615, 616, 617, 617, 617, 617,
1238 617, 617, 617, 618, 1059, 1092, 976, 619, 1415, 620,
1239 1181, 1416, 1209, 619, 619, 619, 619, 619, 619, 774,
1240
1241 775, 775, 775, 775, 775, 775, 690, 690, 690, 690,
1242 690, 690, 690, 55, 842, 620, 644, 644, 644, 644,
1243 644, 644, 644, 1417, 1109, 1418, 1419, 644, 843, 978,
1244 55, 55, 1274, 644, 644, 644, 644, 644, 644, 645,
1245 645, 645, 645, 645, 645, 645, 884, 1179, 55, 1417,
1246 645, 1418, 1419, 1424, 843, 1181, 645, 645, 645, 645,
1247 645, 645, 567, 646, 646, 646, 646, 646, 646, 646,
1248 647, 647, 647, 647, 647, 647, 647, 1179, 1430, 1424,
1249 789, 647, 972, 55, 55, 1433, 970, 647, 647, 647,
1250 647, 647, 647, 406, 649, 649, 649, 649, 649, 649,
1251
1252 649, 55, 55, 1061, 1430, 650, 422, 1008, 1049, 422,
1253 1270, 650, 650, 650, 650, 650, 650, 53, 650, 650,
1254 650, 650, 650, 650, 650, 651, 651, 651, 651, 651,
1255 651, 651, 1005, 1037, 422, 1002, 652, 1026, 422, 999,
1256 1017, 422, 652, 652, 652, 652, 652, 652, 53, 652,
1257 652, 652, 652, 652, 652, 652, 503, 655, 655, 655,
1258 655, 655, 655, 655, 656, 55, 842, 844, 657, 1111,
1259 507, 422, 1092, 844, 657, 657, 657, 657, 657, 657,
1260 1433, 845, 1008, 55, 1005, 1002, 999, 1433, 1092, 978,
1261 55, 791, 55, 860, 55, 798, 507, 512, 658, 658,
1262
1263 658, 658, 658, 658, 658, 659, 1433, 845, 55, 660,
1264 55, 516, 55, 1433, 55, 660, 660, 660, 660, 660,
1265 660, 806, 803, 1061, 315, 811, 811, 811, 811, 811,
1266 811, 811, 55, 854, 854, 856, 55, 516, 664, 665,
1267 665, 665, 665, 665, 665, 665, 666, 855, 1433, 857,
1268 667, 1084, 668, 1008, 55, 856, 667, 667, 667, 667,
1269 667, 667, 768, 768, 768, 768, 768, 768, 768, 1433,
1270 55, 985, 684, 855, 1433, 857, 970, 856, 668, 503,
1271 671, 671, 671, 671, 671, 671, 671, 656, 55, 854,
1272 971, 672, 848, 1049, 1005, 1433, 1384, 672, 672, 672,
1273
1274 672, 672, 672, 673, 674, 674, 674, 674, 674, 674,
1275 674, 675, 673, 844, 842, 676, 971, 677, 837, 1037,
1276 1002, 676, 676, 676, 676, 676, 676, 866, 867, 867,
1277 867, 867, 867, 867, 869, 870, 870, 870, 870, 870,
1278 870, 970, 55, 677, 512, 682, 682, 682, 682, 682,
1279 682, 682, 659, 664, 833, 1433, 683, 828, 1026, 999,
1280 55, 987, 683, 683, 683, 683, 683, 683, 684, 685,
1281 685, 685, 685, 685, 685, 685, 686, 1017, 988, 914,
1282 687, 1433, 688, 899, 55, 55, 687, 687, 687, 687,
1283 687, 687, 873, 874, 874, 874, 874, 874, 874, 1008,
1284
1285 1005, 1002, 55, 55, 999, 972, 972, 55, 688, 616,
1286 698, 698, 698, 698, 698, 698, 698, 618, 889, 973,
1287 1433, 699, 1087, 997, 899, 55, 789, 699, 699, 699,
1288 699, 699, 699, 700, 701, 701, 701, 701, 701, 701,
1289 981, 978, 791, 616, 702, 973, 1433, 785, 783, 862,
1290 702, 702, 702, 702, 702, 702, 53, 53, 53, 53,
1291 53, 53, 53, 823, 850, 820, 839, 53, 55, 55,
1292 55, 55, 55, 53, 53, 53, 53, 53, 53, 918,
1293 919, 919, 919, 919, 919, 919, 55, 55, 55, 55,
1294 55, 704, 722, 817, 723, 723, 723, 723, 723, 723,
1295
1296 723, 982, 983, 984, 989, 723, 991, 1336, 55, 55,
1297 55, 723, 723, 723, 723, 723, 723, 926, 927, 927,
1298 927, 927, 927, 927, 1020, 1020, 55, 55, 55, 53,
1299 724, 725, 725, 725, 725, 725, 725, 725, 1021, 1433,
1300 1083, 1086, 725, 1191, 830, 914, 899, 823, 725, 725,
1301 725, 725, 725, 725, 930, 931, 931, 931, 931, 931,
1302 931, 820, 817, 899, 1021, 1433, 53, 646, 646, 646,
1303 646, 646, 646, 646, 938, 939, 939, 939, 939, 939,
1304 939, 941, 942, 942, 942, 942, 942, 942, 945, 946,
1305 946, 946, 946, 946, 946, 954, 955, 955, 955, 955,
1306
1307 955, 955, 53, 647, 647, 647, 647, 647, 647, 647,
1308 791, 618, 684, 862, 647, 823, 512, 680, 678, 673,
1309 647, 647, 647, 647, 647, 647, 726, 327, 327, 327,
1310 327, 327, 327, 327, 250, 728, 728, 728, 728, 728,
1311 728, 728, 850, 820, 503, 669, 729, 664, 839, 817,
1312 830, 827, 729, 729, 729, 729, 729, 729, 53, 729,
1313 729, 729, 729, 729, 729, 729, 732, 733, 733, 733,
1314 733, 733, 733, 743, 731, 823, 820, 734, 817, 815,
1315 731, 616, 791, 734, 734, 734, 734, 734, 734, 503,
1316 592, 592, 592, 592, 592, 592, 592, 656, 618, 437,
1317
1318 612, 593, 610, 686, 659, 675, 1029, 593, 593, 593,
1319 593, 593, 593, 735, 736, 736, 736, 736, 736, 736,
1320 1030, 656, 666, 743, 737, 731, 659, 656, 731, 53,
1321 737, 737, 737, 737, 737, 737, 512, 604, 604, 604,
1322 604, 604, 604, 604, 659, 53, 1030, 53, 605, 718,
1323 53, 53, 712, 1029, 605, 605, 605, 605, 605, 605,
1324 738, 739, 739, 739, 739, 739, 739, 1433, 618, 439,
1325 512, 740, 686, 659, 339, 508, 503, 740, 740, 740,
1326 740, 740, 740, 744, 745, 745, 745, 745, 745, 745,
1327 422, 675, 656, 1433, 746, 666, 663, 586, 577, 659,
1328
1329 746, 746, 746, 746, 746, 746, 664, 749, 749, 749,
1330 749, 749, 749, 749, 666, 656, 654, 577, 750, 567,
1331 565, 643, 642, 641, 750, 750, 750, 750, 750, 750,
1332 751, 752, 752, 752, 752, 752, 752, 422, 640, 639,
1333 638, 753, 637, 636, 635, 634, 633, 753, 753, 753,
1334 753, 753, 753, 673, 761, 761, 761, 761, 761, 761,
1335 761, 675, 632, 631, 630, 762, 629, 628, 627, 626,
1336 625, 762, 762, 762, 762, 762, 762, 763, 764, 764,
1337 764, 764, 764, 764, 422, 624, 623, 622, 765, 621,
1338 437, 618, 439, 433, 765, 765, 765, 765, 765, 765,
1339
1340 684, 776, 776, 776, 776, 776, 776, 776, 686, 514,
1341 498, 505, 777, 586, 577, 498, 577, 571, 777, 777,
1342 777, 777, 777, 777, 778, 779, 779, 779, 779, 779,
1343 779, 422, 571, 564, 563, 780, 562, 561, 560, 559,
1344 558, 780, 780, 780, 780, 780, 780, 616, 787, 787,
1345 787, 787, 787, 787, 787, 618, 557, 556, 312, 788,
1346 222, 555, 554, 553, 552, 788, 788, 788, 788, 788,
1347 788, 789, 790, 790, 790, 790, 790, 790, 790, 791,
1348 551, 550, 549, 792, 548, 793, 547, 546, 545, 792,
1349 792, 792, 792, 792, 792, 957, 958, 958, 958, 958,
1350
1351 958, 958, 961, 962, 962, 962, 962, 962, 962, 1031,
1352 1031, 793, 55, 1041, 807, 807, 807, 807, 807, 807,
1353 807, 544, 541, 1032, 1433, 807, 538, 1042, 537, 536,
1354 55, 807, 807, 807, 807, 807, 807, 808, 808, 808,
1355 808, 808, 808, 808, 535, 534, 533, 532, 808, 1032,
1356 1433, 531, 530, 1042, 808, 808, 808, 808, 808, 808,
1357 809, 810, 810, 810, 810, 810, 810, 529, 439, 262,
1358 422, 811, 339, 55, 514, 498, 505, 811, 811, 811,
1359 811, 811, 811, 250, 812, 812, 812, 812, 812, 812,
1360 812, 55, 422, 502, 419, 813, 413, 498, 496, 413,
1361
1362 1383, 813, 813, 813, 813, 813, 813, 53, 813, 813,
1363 813, 813, 813, 813, 813, 664, 816, 816, 816, 816,
1364 816, 816, 816, 817, 405, 399, 483, 818, 482, 668,
1365 481, 480, 479, 818, 818, 818, 818, 818, 818, 867,
1366 867, 867, 867, 867, 867, 867, 939, 939, 939, 939,
1367 939, 939, 939, 1041, 478, 668, 673, 819, 819, 819,
1368 819, 819, 819, 819, 820, 477, 1043, 1433, 821, 476,
1369 677, 475, 1043, 1053, 821, 821, 821, 821, 821, 821,
1370 1044, 474, 473, 472, 471, 468, 1433, 1054, 467, 464,
1371 463, 462, 55, 1433, 1053, 461, 677, 684, 822, 822,
1372
1373 822, 822, 822, 822, 822, 823, 1044, 460, 1433, 824,
1374 55, 688, 1433, 1054, 1055, 824, 824, 824, 824, 824,
1375 824, 955, 955, 955, 955, 955, 955, 955, 1056, 1382,
1376 113, 459, 458, 1055, 1433, 1173, 449, 688, 828, 829,
1377 829, 829, 829, 829, 829, 829, 830, 1433, 448, 1174,
1378 831, 447, 832, 446, 1056, 1173, 831, 831, 831, 831,
1379 831, 831, 1065, 1066, 1066, 1066, 1066, 1066, 1066, 1433,
1380 445, 444, 443, 1433, 1175, 1174, 1175, 442, 832, 664,
1381 835, 835, 835, 835, 835, 835, 835, 817, 1176, 260,
1382 1433, 836, 439, 262, 422, 1433, 341, 836, 836, 836,
1383
1384 836, 836, 836, 837, 838, 838, 838, 838, 838, 838,
1385 838, 839, 419, 413, 1176, 840, 1433, 841, 413, 406,
1386 406, 840, 840, 840, 840, 840, 840, 1068, 1069, 1069,
1387 1069, 1069, 1069, 1069, 1072, 1073, 1073, 1073, 1073, 1073,
1388 1073, 1219, 398, 841, 673, 846, 846, 846, 846, 846,
1389 846, 846, 820, 391, 390, 1220, 847, 387, 386, 385,
1390 384, 383, 847, 847, 847, 847, 847, 847, 848, 849,
1391 849, 849, 849, 849, 849, 849, 850, 55, 55, 1219,
1392 851, 1220, 852, 382, 381, 380, 851, 851, 851, 851,
1393 851, 851, 379, 1433, 378, 55, 55, 1115, 1116, 1116,
1394
1395 1116, 1116, 1116, 1116, 1224, 377, 1080, 1081, 852, 684,
1396 858, 858, 858, 858, 858, 858, 858, 823, 1225, 1433,
1397 376, 859, 375, 374, 373, 372, 371, 859, 859, 859,
1398 859, 859, 859, 860, 861, 861, 861, 861, 861, 861,
1399 861, 862, 55, 1224, 1225, 863, 366, 864, 365, 294,
1400 55, 863, 863, 863, 863, 863, 863, 1433, 364, 363,
1401 55, 1121, 1122, 1122, 1122, 1122, 1122, 1122, 55, 362,
1402 1226, 1082, 361, 864, 789, 875, 875, 875, 875, 875,
1403 875, 875, 791, 1433, 1227, 360, 876, 1411, 359, 353,
1404 262, 1226, 876, 876, 876, 876, 876, 876, 877, 878,
1405
1406 878, 878, 878, 878, 878, 1433, 341, 258, 338, 879,
1407 1227, 255, 334, 249, 243, 879, 879, 879, 879, 879,
1408 879, 55, 1232, 892, 892, 892, 892, 892, 892, 892,
1409 135, 1433, 322, 321, 892, 320, 1233, 315, 294, 55,
1410 892, 892, 892, 892, 892, 892, 893, 893, 893, 893,
1411 893, 893, 893, 314, 313, 312, 311, 893, 310, 309,
1412 308, 307, 1233, 893, 893, 893, 893, 893, 893, 571,
1413 894, 894, 894, 894, 894, 894, 894, 306, 305, 304,
1414 303, 895, 302, 404, 301, 300, 297, 895, 895, 895,
1415 895, 895, 895, 1125, 1126, 1126, 1126, 1126, 1126, 1126,
1416
1417 1131, 1132, 1132, 1132, 1132, 1132, 1132, 296, 1232, 404,
1418 895, 895, 895, 895, 895, 895, 895, 295, 294, 293,
1419 292, 895, 1433, 291, 290, 289, 288, 895, 895, 895,
1420 895, 895, 895, 250, 896, 896, 896, 896, 896, 896,
1421 896, 287, 286, 285, 284, 897, 283, 282, 1433, 281,
1422 280, 897, 897, 897, 897, 897, 897, 53, 897, 897,
1423 897, 897, 897, 897, 897, 900, 901, 901, 901, 901,
1424 901, 901, 279, 135, 278, 277, 902, 276, 275, 274,
1425 273, 272, 902, 902, 902, 902, 902, 902, 664, 749,
1426 749, 749, 749, 749, 749, 749, 817, 271, 270, 269,
1427
1428 750, 268, 267, 266, 265, 1234, 750, 750, 750, 750,
1429 750, 750, 903, 904, 904, 904, 904, 904, 904, 1235,
1430 262, 250, 255, 905, 242, 241, 240, 239, 238, 905,
1431 905, 905, 905, 905, 905, 673, 761, 761, 761, 761,
1432 761, 761, 761, 820, 237, 1235, 236, 762, 235, 234,
1433 233, 230, 1234, 762, 762, 762, 762, 762, 762, 906,
1434 907, 907, 907, 907, 907, 907, 1433, 227, 224, 223,
1435 908, 222, 221, 218, 217, 216, 908, 908, 908, 908,
1436 908, 908, 684, 776, 776, 776, 776, 776, 776, 776,
1437 823, 215, 1433, 214, 777, 213, 212, 211, 210, 1240,
1438
1439 777, 777, 777, 777, 777, 777, 909, 910, 910, 910,
1440 910, 910, 910, 1241, 209, 208, 207, 911, 206, 205,
1441 204, 203, 199, 911, 911, 911, 911, 911, 911, 915,
1442 916, 916, 916, 916, 916, 916, 422, 198, 188, 1241,
1443 917, 187, 186, 183, 182, 181, 917, 917, 917, 917,
1444 917, 917, 828, 920, 920, 920, 920, 920, 920, 920,
1445 830, 180, 179, 178, 921, 177, 176, 172, 171, 170,
1446 921, 921, 921, 921, 921, 921, 922, 923, 923, 923,
1447 923, 923, 923, 422, 169, 168, 167, 924, 166, 165,
1448 164, 163, 162, 924, 924, 924, 924, 924, 924, 837,
1449
1450 932, 932, 932, 932, 932, 932, 932, 839, 161, 160,
1451 159, 933, 158, 157, 152, 143, 142, 933, 933, 933,
1452 933, 933, 933, 934, 935, 935, 935, 935, 935, 935,
1453 422, 137, 88, 59, 936, 47, 45, 1433, 1433, 1433,
1454 936, 936, 936, 936, 936, 936, 848, 947, 947, 947,
1455 947, 947, 947, 947, 850, 1433, 1433, 1433, 948, 1433,
1456 1433, 1433, 1433, 1433, 948, 948, 948, 948, 948, 948,
1457 949, 950, 950, 950, 950, 950, 950, 422, 1433, 1433,
1458 1433, 951, 1433, 1433, 1433, 1433, 1433, 951, 951, 951,
1459 951, 951, 951, 860, 963, 963, 963, 963, 963, 963,
1460
1461 963, 862, 1433, 1433, 1433, 964, 1433, 1433, 1433, 1433,
1462 1433, 964, 964, 964, 964, 964, 964, 965, 966, 966,
1463 966, 966, 966, 966, 422, 1433, 1433, 1433, 967, 1433,
1464 1433, 1433, 1433, 1433, 967, 967, 967, 967, 967, 967,
1465 789, 974, 974, 974, 974, 974, 974, 974, 791, 1433,
1466 1433, 1433, 975, 1433, 1433, 1433, 1433, 1433, 975, 975,
1467 975, 975, 975, 975, 976, 977, 977, 977, 977, 977,
1468 977, 977, 978, 1433, 1433, 1433, 979, 1433, 980, 1433,
1469 1433, 1433, 979, 979, 979, 979, 979, 979, 1134, 1135,
1470 1135, 1135, 1135, 1135, 1135, 1138, 1139, 1139, 1139, 1139,
1471
1472 1139, 1139, 1433, 1433, 980, 55, 571, 993, 993, 993,
1473 993, 993, 993, 993, 1433, 1433, 1433, 1433, 994, 1433,
1474 1433, 1433, 1433, 55, 994, 994, 994, 994, 994, 994,
1475 53, 994, 994, 994, 994, 994, 994, 994, 55, 250,
1476 995, 995, 995, 995, 995, 995, 995, 1145, 1146, 1146,
1477 1146, 1146, 1146, 1146, 1433, 1433, 55, 828, 998, 998,
1478 998, 998, 998, 998, 998, 999, 1433, 1433, 1433, 1000,
1479 1433, 832, 1433, 1433, 1433, 1000, 1000, 1000, 1000, 1000,
1480 1000, 1148, 1149, 1149, 1149, 1149, 1149, 1149, 1152, 1153,
1481 1153, 1153, 1153, 1153, 1153, 1433, 1433, 832, 837, 1001,
1482
1483 1001, 1001, 1001, 1001, 1001, 1001, 1002, 1433, 1433, 1433,
1484 1003, 1433, 841, 1433, 1433, 1433, 1003, 1003, 1003, 1003,
1485 1003, 1003, 1159, 1160, 1160, 1160, 1160, 1160, 1160, 1162,
1486 1163, 1163, 1163, 1163, 1163, 1163, 1433, 1433, 841, 848,
1487 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1005, 1433, 1433,
1488 1433, 1006, 1433, 852, 1433, 1433, 1433, 1006, 1006, 1006,
1489 1006, 1006, 1006, 1166, 1167, 1167, 1167, 1167, 1167, 1167,
1490 1066, 1066, 1066, 1066, 1066, 1066, 1066, 55, 1433, 852,
1491 860, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1008, 1433,
1492 1240, 1242, 1009, 1433, 864, 55, 1433, 1433, 1009, 1009,
1493
1494 1009, 1009, 1009, 1009, 1433, 1243, 1189, 1211, 1212, 1212,
1495 1212, 1212, 1212, 1212, 1433, 1242, 1433, 1433, 1433, 1248,
1496 864, 1011, 1012, 1012, 1012, 1012, 1012, 1012, 1013, 1433,
1497 1433, 1243, 1014, 1249, 1433, 1433, 1433, 1433, 1014, 1014,
1498 1014, 1014, 1014, 1014, 1015, 1016, 1016, 1016, 1016, 1016,
1499 1016, 1016, 1017, 1433, 1433, 1433, 1018, 1433, 1019, 1249,
1500 1433, 1433, 1018, 1018, 1018, 1018, 1018, 1018, 1132, 1132,
1501 1132, 1132, 1132, 1132, 1132, 1146, 1146, 1146, 1146, 1146,
1502 1146, 1146, 1248, 1433, 1019, 828, 1022, 1022, 1022, 1022,
1503 1022, 1022, 1022, 999, 1433, 1433, 1433, 1023, 1433, 1433,
1504
1505 1433, 1433, 1433, 1023, 1023, 1023, 1023, 1023, 1023, 1024,
1506 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1026, 1433, 1433,
1507 1433, 1027, 1433, 1028, 1433, 1433, 1250, 1027, 1027, 1027,
1508 1027, 1027, 1027, 1160, 1160, 1160, 1160, 1160, 1160, 1160,
1509 1251, 1433, 1433, 1433, 1433, 1250, 1433, 1282, 1433, 1028,
1510 837, 1033, 1033, 1033, 1033, 1033, 1033, 1033, 1002, 1433,
1511 1433, 1283, 1034, 1433, 1433, 1433, 1251, 1433, 1034, 1034,
1512 1034, 1034, 1034, 1034, 1035, 1036, 1036, 1036, 1036, 1036,
1513 1036, 1036, 1037, 1433, 1433, 1433, 1038, 1283, 1039, 1433,
1514 1433, 1433, 1038, 1038, 1038, 1038, 1038, 1038, 1256, 1257,
1515
1516 1257, 1257, 1257, 1257, 1257, 1259, 1260, 1260, 1260, 1260,
1517 1260, 1260, 1282, 1433, 1039, 848, 1045, 1045, 1045, 1045,
1518 1045, 1045, 1045, 1005, 1433, 1433, 1433, 1046, 1433, 1433,
1519 1433, 1433, 1433, 1046, 1046, 1046, 1046, 1046, 1046, 1047,
1520 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1049, 1433, 1433,
1521 1433, 1050, 1433, 1051, 1433, 1433, 1433, 1050, 1050, 1050,
1522 1050, 1050, 1050, 1263, 1264, 1264, 1264, 1264, 1264, 1264,
1523 1288, 1289, 1289, 1289, 1289, 1289, 1289, 1329, 1433, 1051,
1524 860, 1057, 1057, 1057, 1057, 1057, 1057, 1057, 1008, 1433,
1525 1433, 1330, 1058, 1433, 1433, 1433, 1433, 55, 1058, 1058,
1526
1527 1058, 1058, 1058, 1058, 1059, 1060, 1060, 1060, 1060, 1060,
1528 1060, 1060, 1061, 55, 1433, 55, 1062, 1330, 1063, 1433,
1529 1433, 1433, 1062, 1062, 1062, 1062, 1062, 1062, 1271, 1433,
1530 1433, 55, 1293, 1294, 1294, 1294, 1294, 1294, 1294, 1433,
1531 1433, 1329, 1272, 1433, 1063, 976, 1074, 1074, 1074, 1074,
1532 1074, 1074, 1074, 978, 1433, 1433, 1433, 1075, 1433, 1433,
1533 1433, 1433, 1331, 1075, 1075, 1075, 1075, 1075, 1075, 1076,
1534 1077, 1077, 1077, 1077, 1077, 1077, 1332, 1433, 1433, 1433,
1535 1078, 1433, 1433, 1433, 1433, 1433, 1078, 1078, 1078, 1078,
1536 1078, 1078, 55, 571, 1090, 1090, 1090, 1090, 1090, 1090,
1537
1538 1090, 1433, 1332, 1433, 1433, 897, 1433, 1433, 1433, 1433,
1539 55, 897, 897, 897, 897, 897, 897, 53, 897, 897,
1540 897, 897, 897, 897, 897, 55, 250, 995, 995, 995,
1541 995, 995, 995, 995, 1296, 1297, 1297, 1297, 1297, 1297,
1542 1297, 1433, 1331, 55, 1093, 1094, 1094, 1094, 1094, 1094,
1543 1094, 1433, 1433, 1433, 1433, 1095, 1433, 1433, 1433, 1433,
1544 1433, 1095, 1095, 1095, 1095, 1095, 1095, 828, 920, 920,
1545 920, 920, 920, 920, 920, 999, 1433, 1433, 1433, 921,
1546 1433, 1433, 1433, 1433, 1354, 921, 921, 921, 921, 921,
1547 921, 1096, 1097, 1097, 1097, 1097, 1097, 1097, 1355, 1433,
1548
1549 1433, 1433, 1098, 1433, 1433, 1433, 1433, 1433, 1098, 1098,
1550 1098, 1098, 1098, 1098, 837, 932, 932, 932, 932, 932,
1551 932, 932, 1002, 1433, 1355, 1433, 933, 1433, 1433, 1433,
1552 1433, 1354, 933, 933, 933, 933, 933, 933, 1099, 1100,
1553 1100, 1100, 1100, 1100, 1100, 1433, 1433, 1433, 1433, 1101,
1554 1433, 1433, 1433, 1433, 1433, 1101, 1101, 1101, 1101, 1101,
1555 1101, 848, 947, 947, 947, 947, 947, 947, 947, 1005,
1556 1433, 1433, 1433, 948, 1433, 1433, 1433, 1433, 1358, 948,
1557 948, 948, 948, 948, 948, 1102, 1103, 1103, 1103, 1103,
1558 1103, 1103, 1359, 1433, 1433, 1433, 1104, 1433, 1433, 1433,
1559
1560 1433, 1433, 1104, 1104, 1104, 1104, 1104, 1104, 860, 963,
1561 963, 963, 963, 963, 963, 963, 1008, 1433, 1359, 1433,
1562 964, 1433, 1433, 1433, 1433, 1358, 964, 964, 964, 964,
1563 964, 964, 1105, 1106, 1106, 1106, 1106, 1106, 1106, 1433,
1564 1433, 1433, 1433, 1107, 1433, 1433, 1433, 1433, 1433, 1107,
1565 1107, 1107, 1107, 1107, 1107, 1109, 1110, 1110, 1110, 1110,
1566 1110, 1110, 1110, 1111, 1433, 1433, 1433, 1112, 1433, 1113,
1567 1433, 1433, 1433, 1112, 1112, 1112, 1112, 1112, 1112, 1302,
1568 1303, 1303, 1303, 1303, 1303, 1303, 1305, 1306, 1306, 1306,
1569 1306, 1306, 1306, 1362, 1433, 1113, 1015, 1117, 1117, 1117,
1570
1571 1117, 1117, 1117, 1117, 1017, 1433, 1433, 1363, 1118, 1433,
1572 1433, 1433, 1433, 1433, 1118, 1118, 1118, 1118, 1118, 1118,
1573 1024, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1026, 1433,
1574 1433, 1433, 1128, 1363, 1433, 1433, 1433, 1433, 1128, 1128,
1575 1128, 1128, 1128, 1128, 1035, 1140, 1140, 1140, 1140, 1140,
1576 1140, 1140, 1037, 1433, 1433, 1433, 1141, 1433, 1433, 1433,
1577 1433, 1433, 1141, 1141, 1141, 1141, 1141, 1141, 1047, 1154,
1578 1154, 1154, 1154, 1154, 1154, 1154, 1049, 1433, 1433, 1433,
1579 1155, 1433, 1433, 1433, 1433, 1433, 1155, 1155, 1155, 1155,
1580 1155, 1155, 1059, 1168, 1168, 1168, 1168, 1168, 1168, 1168,
1581
1582 1061, 1433, 1433, 1433, 1169, 1433, 1433, 1433, 1433, 1433,
1583 1169, 1169, 1169, 1169, 1169, 1169, 976, 1177, 1177, 1177,
1584 1177, 1177, 1177, 1177, 978, 1433, 1433, 1433, 1178, 1433,
1585 1433, 1433, 1433, 1433, 1178, 1178, 1178, 1178, 1178, 1178,
1586 1179, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1181, 1433,
1587 1433, 1433, 1182, 1433, 1183, 1433, 1433, 1433, 1182, 1182,
1588 1182, 1182, 1182, 1182, 1311, 1312, 1312, 1312, 1312, 1312,
1589 1312, 1314, 1315, 1315, 1315, 1315, 1315, 1315, 1433, 1433,
1590 1183, 55, 571, 488, 488, 488, 488, 488, 488, 488,
1591 1320, 1321, 1321, 1321, 1321, 1321, 1321, 1433, 1362, 55,
1592
1593 1192, 1193, 1193, 1193, 1193, 1193, 1193, 1194, 1433, 1433,
1594 1433, 1195, 1433, 1433, 1433, 1433, 1433, 1195, 1195, 1195,
1595 1195, 1195, 1195, 1015, 1196, 1196, 1196, 1196, 1196, 1196,
1596 1196, 1197, 1433, 1433, 1433, 1198, 1433, 1019, 1433, 1433,
1597 1433, 1198, 1198, 1198, 1198, 1198, 1198, 1323, 1324, 1324,
1598 1324, 1324, 1324, 1324, 1257, 1257, 1257, 1257, 1257, 1257,
1599 1257, 1433, 1433, 1019, 1024, 1199, 1199, 1199, 1199, 1199,
1600 1199, 1199, 1200, 1433, 1433, 1433, 1201, 1433, 1028, 1433,
1601 1433, 1433, 1201, 1201, 1201, 1201, 1201, 1201, 1348, 1349,
1602 1349, 1349, 1349, 1349, 1349, 1294, 1294, 1294, 1294, 1294,
1603
1604 1294, 1294, 1433, 1433, 1028, 1035, 1202, 1202, 1202, 1202,
1605 1202, 1202, 1202, 1203, 1433, 1433, 1433, 1204, 1433, 1039,
1606 1433, 1433, 1433, 1204, 1204, 1204, 1204, 1204, 1204, 1303,
1607 1303, 1303, 1303, 1303, 1303, 1303, 1312, 1312, 1312, 1312,
1608 1312, 1312, 1312, 1366, 1433, 1039, 1047, 1205, 1205, 1205,
1609 1205, 1205, 1205, 1205, 1206, 1433, 1366, 1367, 1207, 1433,
1610 1051, 1433, 1433, 1433, 1207, 1207, 1207, 1207, 1207, 1207,
1611 1433, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 1433, 1433,
1612 1433, 1433, 1433, 1367, 1370, 1433, 1051, 1059, 1208, 1208,
1613 1208, 1208, 1208, 1208, 1208, 1209, 1433, 1370, 1371, 1210,
1614
1615 1433, 1063, 1433, 1433, 1433, 1210, 1210, 1210, 1210, 1210,
1616 1210, 1433, 1374, 1375, 1375, 1375, 1375, 1375, 1375, 1433,
1617 1433, 1433, 1433, 1433, 1371, 1386, 1433, 1063, 1109, 1213,
1618 1213, 1213, 1213, 1213, 1213, 1213, 1111, 1433, 1433, 1387,
1619 1214, 1433, 1433, 1433, 1433, 1433, 1214, 1214, 1214, 1214,
1620 1214, 1214, 1015, 1221, 1221, 1221, 1221, 1221, 1221, 1221,
1621 1197, 1433, 1433, 1433, 1222, 1387, 1433, 1433, 1433, 1433,
1622 1222, 1222, 1222, 1222, 1222, 1222, 1024, 1228, 1228, 1228,
1623 1228, 1228, 1228, 1228, 1200, 1433, 1433, 1433, 1229, 1433,
1624 1433, 1433, 1433, 1433, 1229, 1229, 1229, 1229, 1229, 1229,
1625
1626 1035, 1236, 1236, 1236, 1236, 1236, 1236, 1236, 1203, 1433,
1627 1433, 1433, 1237, 1433, 1433, 1433, 1433, 1433, 1237, 1237,
1628 1237, 1237, 1237, 1237, 1047, 1244, 1244, 1244, 1244, 1244,
1629 1244, 1244, 1206, 1433, 1433, 1433, 1245, 1433, 1433, 1433,
1630 1433, 1433, 1245, 1245, 1245, 1245, 1245, 1245, 1059, 1252,
1631 1252, 1252, 1252, 1252, 1252, 1252, 1209, 1433, 1433, 1433,
1632 1253, 1433, 1433, 1433, 1433, 1433, 1253, 1253, 1253, 1253,
1633 1253, 1253, 1179, 1265, 1265, 1265, 1265, 1265, 1265, 1265,
1634 1181, 1433, 1433, 1433, 1266, 1433, 1433, 1433, 1433, 1433,
1635 1266, 1266, 1266, 1266, 1266, 1266, 1109, 1273, 1273, 1273,
1636
1637 1273, 1273, 1273, 1273, 1274, 1433, 1433, 1433, 1275, 1433,
1638 1113, 1433, 1433, 1386, 1275, 1275, 1275, 1275, 1275, 1275,
1639 1377, 1378, 1378, 1378, 1378, 1378, 1378, 1433, 1388, 1389,
1640 1389, 1389, 1389, 1389, 1389, 1433, 1113, 1015, 1117, 1117,
1641 1117, 1117, 1117, 1117, 1117, 1197, 1433, 1433, 1433, 1118,
1642 1433, 1433, 1433, 1433, 1433, 1118, 1118, 1118, 1118, 1118,
1643 1118, 1024, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1200,
1644 1433, 1433, 1433, 1128, 1433, 1433, 1433, 1433, 1433, 1128,
1645 1128, 1128, 1128, 1128, 1128, 1035, 1140, 1140, 1140, 1140,
1646 1140, 1140, 1140, 1203, 1433, 1433, 1433, 1141, 1433, 1433,
1647
1648 1433, 1433, 1433, 1141, 1141, 1141, 1141, 1141, 1141, 1047,
1649 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1206, 1433, 1433,
1650 1433, 1155, 1433, 1433, 1433, 1433, 1433, 1155, 1155, 1155,
1651 1155, 1155, 1155, 1059, 1168, 1168, 1168, 1168, 1168, 1168,
1652 1168, 1209, 1433, 1433, 1433, 1169, 1433, 1433, 1433, 1433,
1653 1433, 1169, 1169, 1169, 1169, 1169, 1169, 1109, 1284, 1284,
1654 1284, 1284, 1284, 1284, 1284, 1274, 1433, 1433, 1433, 1285,
1655 1433, 1433, 1433, 1433, 1433, 1285, 1285, 1285, 1285, 1285,
1656 1285, 1179, 1333, 1333, 1333, 1333, 1333, 1333, 1333, 1181,
1657 1433, 1433, 1433, 1334, 1433, 1433, 1433, 1433, 1433, 1334,
1658
1659 1334, 1334, 1334, 1334, 1334, 1109, 1213, 1213, 1213, 1213,
1660 1213, 1213, 1213, 1274, 1433, 1433, 1433, 1214, 1433, 1433,
1661 1433, 1433, 1433, 1214, 1214, 1214, 1214, 1214, 1214, 1392,
1662 1393, 1393, 1393, 1393, 1393, 1393, 1396, 1397, 1397, 1397,
1663 1397, 1397, 1397, 1400, 1401, 1401, 1401, 1401, 1401, 1401,
1664 1404, 1405, 1405, 1405, 1405, 1405, 1405, 1375, 1375, 1375,
1665 1375, 1375, 1375, 1375, 1408, 1408, 1412, 1413, 1413, 1413,
1666 1413, 1413, 1413, 1433, 1433, 1433, 1433, 1433, 1409, 1433,
1667 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1393, 1393, 1393,
1668 1393, 1393, 1393, 1393, 1397, 1397, 1397, 1397, 1397, 1397,
1669
1670 1397, 1433, 1433, 1433, 1409, 1433, 1401, 1401, 1401, 1401,
1671 1401, 1401, 1401, 1405, 1405, 1405, 1405, 1405, 1405, 1405,
1672 1421, 1422, 1422, 1422, 1422, 1422, 1422, 1413, 1413, 1413,
1673 1413, 1413, 1413, 1413, 1422, 1422, 1422, 1422, 1422, 1422,
1674 1422, 46, 1433, 1433, 1433, 1433, 46, 46, 46, 64,
1675 1433, 64, 64, 64, 64, 64, 64, 64, 144, 1433,
1676 144, 151, 151, 151, 254, 254, 254, 263, 263, 263,
1677 333, 333, 333, 336, 336, 336, 337, 337, 337, 344,
1678 344, 344, 342, 342, 342, 348, 348, 348, 352, 1433,
1679 352, 412, 412, 412, 417, 417, 417, 418, 418, 418,
1680
1681 427, 427, 427, 431, 1433, 431, 432, 432, 432, 346,
1682 346, 1433, 1433, 346, 436, 436, 436, 440, 440, 440,
1683 336, 336, 336, 495, 495, 495, 499, 499, 499, 500,
1684 500, 500, 501, 501, 501, 344, 344, 344, 506, 506,
1685 506, 425, 425, 1433, 1433, 425, 511, 511, 511, 515,
1686 515, 515, 519, 1433, 519, 520, 520, 520, 524, 524,
1687 524, 528, 1433, 528, 576, 576, 576, 427, 427, 427,
1688 584, 584, 584, 585, 585, 585, 593, 593, 593, 597,
1689 1433, 597, 600, 1433, 600, 601, 601, 601, 605, 605,
1690 605, 609, 1433, 609, 518, 518, 1433, 1433, 518, 522,
1691
1692 522, 1433, 1433, 522, 615, 615, 615, 619, 619, 619,
1693 528, 528, 1433, 528, 500, 500, 500, 653, 653, 653,
1694 657, 657, 657, 660, 660, 660, 661, 661, 661, 662,
1695 662, 662, 667, 667, 667, 591, 591, 1433, 1433, 591,
1696 672, 672, 672, 676, 676, 676, 597, 597, 1433, 597,
1697 599, 599, 1433, 1433, 599, 600, 600, 1433, 600, 601,
1698 601, 603, 603, 1433, 1433, 603, 683, 683, 683, 687,
1699 687, 687, 609, 609, 1433, 609, 691, 1433, 691, 694,
1700 1433, 694, 695, 695, 695, 699, 699, 699, 703, 1433,
1701 703, 730, 730, 730, 593, 593, 593, 605, 605, 605,
1702
1703 741, 741, 741, 742, 742, 742, 750, 750, 750, 754,
1704 1433, 754, 757, 1433, 757, 758, 758, 758, 762, 762,
1705 762, 766, 1433, 766, 769, 1433, 769, 772, 1433, 772,
1706 773, 773, 773, 777, 777, 777, 781, 1433, 781, 690,
1707 1433, 1433, 690, 691, 691, 1433, 691, 693, 693, 1433,
1708 1433, 693, 694, 694, 1433, 694, 695, 695, 697, 697,
1709 1433, 1433, 697, 788, 788, 788, 792, 792, 792, 703,
1710 703, 1433, 703, 53, 53, 53, 1433, 53, 53, 661,
1711 661, 661, 814, 814, 814, 818, 818, 818, 821, 821,
1712 821, 824, 824, 824, 825, 825, 825, 826, 826, 826,
1713
1714 831, 831, 831, 748, 748, 1433, 1433, 748, 836, 836,
1715 836, 840, 840, 840, 754, 754, 1433, 754, 756, 756,
1716 1433, 1433, 756, 757, 757, 1433, 757, 758, 758, 760,
1717 760, 1433, 1433, 760, 847, 847, 847, 851, 851, 851,
1718 766, 766, 1433, 766, 768, 1433, 1433, 768, 769, 769,
1719 1433, 769, 771, 771, 1433, 1433, 771, 772, 772, 1433,
1720 772, 773, 773, 775, 775, 1433, 1433, 775, 859, 859,
1721 859, 863, 863, 863, 781, 781, 1433, 781, 865, 1433,
1722 865, 868, 1433, 868, 871, 1433, 871, 872, 872, 872,
1723 876, 876, 876, 880, 1433, 880, 53, 53, 53, 1433,
1724
1725 53, 53, 898, 898, 898, 750, 750, 750, 762, 762,
1726 762, 777, 777, 777, 912, 912, 912, 913, 913, 913,
1727 921, 921, 921, 925, 1433, 925, 928, 1433, 928, 929,
1728 929, 929, 933, 933, 933, 937, 1433, 937, 940, 1433,
1729 940, 943, 1433, 943, 944, 944, 944, 948, 948, 948,
1730 952, 1433, 952, 953, 1433, 953, 956, 1433, 956, 959,
1731 1433, 959, 960, 960, 960, 964, 964, 964, 968, 1433,
1732 968, 865, 1433, 865, 867, 1433, 1433, 867, 868, 868,
1733 1433, 868, 870, 870, 1433, 1433, 870, 871, 871, 1433,
1734 871, 872, 872, 874, 874, 1433, 1433, 874, 975, 975,
1735
1736 975, 979, 979, 979, 880, 880, 1433, 880, 53, 53,
1737 53, 1433, 53, 53, 825, 825, 825, 996, 996, 996,
1738 1000, 1000, 1000, 1003, 1003, 1003, 1006, 1006, 1006, 1009,
1739 1009, 1009, 1010, 1010, 1010, 1018, 1018, 1018, 919, 919,
1740 1433, 1433, 919, 1023, 1023, 1023, 1027, 1027, 1027, 925,
1741 925, 1433, 925, 927, 927, 1433, 1433, 927, 928, 928,
1742 1433, 928, 929, 929, 931, 931, 1433, 1433, 931, 1034,
1743 1034, 1034, 1038, 1038, 1038, 937, 937, 1433, 937, 939,
1744 1433, 1433, 939, 940, 940, 1433, 940, 942, 942, 1433,
1745 1433, 942, 943, 943, 1433, 943, 944, 944, 946, 946,
1746
1747 1433, 1433, 946, 1046, 1046, 1046, 1050, 1050, 1050, 952,
1748 952, 1433, 952, 953, 1433, 953, 955, 1433, 1433, 955,
1749 956, 956, 1433, 956, 958, 958, 1433, 1433, 958, 959,
1750 959, 1433, 959, 960, 960, 962, 962, 1433, 1433, 962,
1751 1058, 1058, 1058, 1062, 1062, 1062, 968, 968, 1433, 968,
1752 1064, 1433, 1064, 1067, 1433, 1067, 1070, 1433, 1070, 1071,
1753 1071, 1071, 1075, 1075, 1075, 1079, 1433, 1079, 53, 53,
1754 53, 1433, 53, 53, 1091, 1091, 1091, 921, 921, 921,
1755 933, 933, 933, 948, 948, 948, 964, 964, 964, 1108,
1756 1108, 1108, 1114, 1114, 1114, 1112, 1112, 1112, 1119, 1119,
1757
1758 1119, 1118, 1118, 1118, 1120, 1433, 1120, 1123, 1433, 1123,
1759 1124, 1124, 1124, 1129, 1129, 1129, 1128, 1128, 1128, 1130,
1760 1433, 1130, 1133, 1433, 1133, 1136, 1433, 1136, 1137, 1137,
1761 1137, 1142, 1142, 1142, 1141, 1141, 1141, 1143, 1433, 1143,
1762 1144, 1433, 1144, 1147, 1433, 1147, 1150, 1433, 1150, 1151,
1763 1151, 1151, 1156, 1156, 1156, 1155, 1155, 1155, 1157, 1433,
1764 1157, 1158, 1433, 1158, 1161, 1433, 1161, 1164, 1433, 1164,
1765 1165, 1165, 1165, 1170, 1170, 1170, 1169, 1169, 1169, 1171,
1766 1433, 1171, 1064, 1433, 1064, 1066, 1433, 1433, 1066, 1067,
1767 1067, 1433, 1067, 1069, 1069, 1433, 1433, 1069, 1070, 1070,
1768
1769 1433, 1070, 1071, 1071, 1073, 1073, 1433, 1433, 1073, 1178,
1770 1178, 1178, 1182, 1182, 1182, 1079, 1079, 1433, 1079, 53,
1771 53, 53, 1433, 53, 53, 1010, 1010, 1010, 1198, 1198,
1772 1198, 1201, 1201, 1201, 1204, 1204, 1204, 1207, 1207, 1207,
1773 1210, 1210, 1210, 1215, 1215, 1215, 1214, 1214, 1214, 1217,
1774 1433, 1217, 1218, 1218, 1218, 1116, 1116, 1433, 1433, 1116,
1775 1222, 1222, 1222, 1223, 1223, 1223, 1120, 1120, 1433, 1120,
1776 1122, 1122, 1433, 1433, 1122, 1123, 1123, 1433, 1123, 1124,
1777 1124, 1126, 1126, 1433, 1433, 1126, 1229, 1229, 1229, 1230,
1778 1230, 1230, 1130, 1130, 1433, 1130, 1132, 1433, 1433, 1132,
1779
1780 1133, 1133, 1433, 1133, 1135, 1135, 1433, 1433, 1135, 1136,
1781 1136, 1433, 1136, 1137, 1137, 1139, 1139, 1433, 1433, 1139,
1782 1237, 1237, 1237, 1238, 1238, 1238, 1143, 1143, 1433, 1143,
1783 1144, 1433, 1144, 1146, 1433, 1433, 1146, 1147, 1147, 1433,
1784 1147, 1149, 1149, 1433, 1433, 1149, 1150, 1150, 1433, 1150,
1785 1151, 1151, 1153, 1153, 1433, 1433, 1153, 1245, 1245, 1245,
1786 1246, 1246, 1246, 1157, 1157, 1433, 1157, 1158, 1433, 1158,
1787 1160, 1433, 1433, 1160, 1161, 1161, 1433, 1161, 1163, 1163,
1788 1433, 1433, 1163, 1164, 1164, 1433, 1164, 1165, 1165, 1167,
1789 1167, 1433, 1433, 1167, 1253, 1253, 1253, 1254, 1254, 1254,
1790
1791 1171, 1171, 1433, 1171, 1255, 1433, 1255, 1258, 1433, 1258,
1792 1261, 1433, 1261, 1262, 1262, 1262, 1267, 1433, 1267, 1266,
1793 1266, 1266, 1268, 1433, 1268, 53, 53, 53, 1433, 53,
1794 53, 1276, 1433, 1276, 1275, 1275, 1275, 1277, 1433, 1277,
1795 1118, 1118, 1118, 1278, 1433, 1278, 1128, 1128, 1128, 1279,
1796 1433, 1279, 1141, 1141, 1141, 1280, 1433, 1280, 1155, 1155,
1797 1155, 1281, 1433, 1281, 1169, 1169, 1169, 1212, 1212, 1433,
1798 1433, 1212, 1285, 1285, 1285, 1286, 1286, 1286, 344, 344,
1799 344, 1217, 1217, 1433, 1217, 1287, 1287, 1287, 1290, 1433,
1800 1290, 1291, 1291, 1291, 1292, 1292, 1292, 1295, 1433, 1295,
1801
1802 1298, 1433, 1298, 1299, 1299, 1299, 1300, 1300, 1300, 1301,
1803 1433, 1301, 1304, 1433, 1304, 1307, 1433, 1307, 1308, 1308,
1804 1308, 1309, 1309, 1309, 1310, 1433, 1310, 1313, 1433, 1313,
1805 1316, 1433, 1316, 1317, 1317, 1317, 1318, 1318, 1318, 1319,
1806 1433, 1319, 1322, 1433, 1322, 1325, 1433, 1325, 1326, 1326,
1807 1326, 1327, 1327, 1327, 1255, 1433, 1255, 1257, 1433, 1433,
1808 1257, 1258, 1258, 1433, 1258, 1260, 1260, 1433, 1433, 1260,
1809 1261, 1261, 1433, 1261, 1262, 1262, 1264, 1264, 1433, 1433,
1810 1264, 1334, 1334, 1334, 1335, 1433, 1335, 1268, 1268, 1433,
1811 1268, 53, 53, 53, 1433, 53, 53, 1340, 1340, 1340,
1812
1813 1214, 1214, 1214, 1342, 1433, 1342, 1343, 1433, 1343, 1344,
1814 1433, 1344, 1345, 1433, 1345, 1346, 1433, 1346, 1347, 1433,
1815 1347, 1350, 1433, 1350, 1351, 1351, 1351, 1352, 1352, 1352,
1816 1353, 1433, 1353, 1289, 1289, 1433, 1433, 1289, 1290, 1290,
1817 1433, 1290, 1291, 1291, 1356, 1433, 1356, 1294, 1433, 1433,
1818 1294, 1295, 1295, 1433, 1295, 1297, 1297, 1433, 1433, 1297,
1819 1298, 1298, 1433, 1298, 1299, 1299, 1360, 1433, 1360, 1301,
1820 1433, 1301, 1303, 1433, 1433, 1303, 1304, 1304, 1433, 1304,
1821 1306, 1306, 1433, 1433, 1306, 1307, 1307, 1433, 1307, 1308,
1822 1308, 1364, 1433, 1364, 1310, 1433, 1310, 1312, 1433, 1433,
1823
1824 1312, 1313, 1313, 1433, 1313, 1315, 1315, 1433, 1433, 1315,
1825 1316, 1316, 1433, 1316, 1317, 1317, 1368, 1433, 1368, 1319,
1826 1433, 1319, 1321, 1433, 1433, 1321, 1322, 1322, 1433, 1322,
1827 1324, 1324, 1433, 1433, 1324, 1325, 1325, 1433, 1325, 1326,
1828 1326, 1372, 1433, 1372, 1373, 1433, 1373, 1376, 1433, 1376,
1829 1379, 1433, 1379, 1380, 1380, 1380, 1381, 1433, 1381, 53,
1830 53, 53, 1433, 53, 53, 1385, 1433, 1385, 1287, 1433,
1831 1287, 1292, 1433, 1292, 1300, 1433, 1300, 1309, 1433, 1309,
1832 1318, 1433, 1318, 1327, 1433, 1327, 1349, 1349, 1433, 1433,
1833 1349, 1350, 1350, 1433, 1350, 1351, 1351, 1341, 1433, 1341,
1834
1835 1390, 1433, 1390, 1391, 1433, 1391, 1394, 1433, 1394, 1395,
1836 1433, 1395, 1398, 1433, 1398, 1399, 1433, 1399, 1402, 1433,
1837 1402, 1403, 1433, 1403, 1406, 1433, 1406, 1375, 1433, 1433,
1838 1375, 1378, 1378, 1433, 1433, 1378, 1410, 1433, 1410, 1352,
1839 1433, 1352, 1414, 1433, 1414, 1389, 1433, 1433, 1389, 1393,
1840 1433, 1433, 1393, 1397, 1433, 1433, 1397, 1401, 1433, 1433,
1841 1401, 1405, 1433, 1433, 1405, 1420, 1433, 1420, 1423, 1433,
1842 1423, 1413, 1433, 1433, 1413, 1425, 1433, 1425, 1426, 1433,
1843 1426, 1427, 1433, 1427, 1428, 1433, 1428, 1429, 1433, 1429,
1844 1422, 1433, 1433, 1422, 1431, 1433, 1431, 1432, 1433, 1432,
1845
1846 3, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1847 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1848 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1849 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1850 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
1851 1433, 1433, 1433, 1433
1852 } ;
1853
1854 static yyconst flex_int16_t yy_chk[7455] =
1855 { 0,
1856 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1857 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1858 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1859 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1860 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1861 1, 1, 1, 4, 7, 15, 4, 7, 4, 7,
1862 9, 4, 7, 9, 34, 9, 17, 17, 9, 19,
1863 19, 4, 7, 34, 24, 27, 27, 1261, 9, 4,
1864 7, 15, 12, 39, 131, 12, 9, 12, 24, 23,
1865 12, 23, 23, 28, 131, 24, 23, 39, 28, 25,
1866
1867 12, 23, 25, 29, 39, 23, 25, 23, 12, 14,
1868 14, 14, 14, 14, 14, 14, 14, 14, 14, 29,
1869 91, 1262, 14, 14, 14, 91, 82, 14, 14, 14,
1870 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1871 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1872 14, 14, 16, 82, 26, 16, 95, 16, 26, 82,
1873 16, 100, 99, 122, 26, 628, 100, 26, 99, 22,
1874 16, 234, 22, 234, 22, 628, 122, 22, 16, 20,
1875 20, 20, 20, 20, 20, 20, 20, 22, 33, 95,
1876 384, 36, 33, 20, 35, 22, 36, 36, 127, 36,
1877
1878 36, 33, 33, 41, 384, 33, 35, 33, 35, 103,
1879 35, 41, 103, 35, 103, 41, 127, 41, 1266, 20,
1880 21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1881 32, 32, 96, 21, 1268, 147, 250, 250, 129, 21,
1882 21, 21, 21, 21, 21, 31, 32, 129, 31, 31,
1883 32, 31, 155, 31, 32, 31, 32, 31, 37, 96,
1884 31, 147, 37, 32, 96, 623, 38, 1274, 313, 627,
1885 37, 623, 38, 313, 38, 37, 38, 37, 155, 235,
1886 38, 44, 38, 38, 44, 205, 44, 627, 381, 44,
1887 62, 62, 62, 62, 62, 62, 62, 63, 205, 44,
1888
1889 63, 381, 63, 235, 630, 63, 630, 44, 48, 48,
1890 48, 48, 48, 48, 48, 63, 435, 257, 631, 48,
1891 406, 406, 631, 63, 435, 48, 48, 48, 48, 48,
1892 48, 49, 49, 49, 49, 49, 49, 49, 1275, 325,
1893 1285, 350, 49, 257, 267, 267, 267, 267, 49, 49,
1894 49, 49, 49, 49, 50, 50, 50, 50, 50, 50,
1895 50, 50, 454, 1286, 267, 325, 50, 350, 408, 415,
1896 1290, 454, 50, 50, 50, 50, 50, 50, 52, 52,
1897 52, 52, 52, 52, 52, 52, 54, 54, 54, 54,
1898 54, 54, 54, 421, 408, 415, 329, 54, 529, 529,
1899
1900 529, 529, 429, 54, 54, 54, 54, 54, 54, 56,
1901 329, 624, 56, 1291, 56, 345, 624, 56, 346, 421,
1902 56, 56, 56, 56, 56, 56, 56, 56, 429, 345,
1903 1295, 56, 346, 486, 1298, 56, 329, 56, 56, 56,
1904 56, 56, 56, 145, 456, 145, 145, 145, 145, 145,
1905 145, 145, 510, 456, 1299, 345, 145, 526, 346, 486,
1906 510, 632, 145, 145, 145, 145, 145, 145, 146, 146,
1907 146, 146, 146, 146, 146, 146, 520, 571, 571, 632,
1908 146, 579, 146, 526, 520, 1304, 146, 146, 146, 146,
1909 146, 146, 249, 249, 249, 249, 249, 249, 249, 260,
1910
1911 260, 260, 260, 260, 260, 260, 424, 579, 146, 148,
1912 148, 148, 148, 148, 148, 148, 148, 582, 588, 1307,
1913 424, 148, 595, 607, 622, 622, 1308, 148, 148, 148,
1914 148, 148, 148, 149, 149, 149, 149, 149, 149, 149,
1915 149, 149, 614, 582, 588, 149, 424, 648, 595, 607,
1916 614, 149, 149, 149, 149, 149, 149, 150, 150, 150,
1917 150, 150, 150, 150, 150, 152, 152, 152, 152, 152,
1918 152, 152, 152, 648, 625, 689, 152, 625, 641, 641,
1919 704, 706, 152, 152, 152, 152, 152, 152, 154, 154,
1920 154, 154, 154, 154, 154, 154, 154, 671, 704, 706,
1921
1922 154, 689, 154, 650, 283, 671, 154, 154, 154, 154,
1923 154, 154, 283, 335, 335, 335, 335, 335, 335, 335,
1924 1313, 1316, 425, 633, 490, 283, 707, 718, 154, 243,
1925 243, 243, 243, 243, 243, 243, 425, 633, 490, 650,
1926 243, 283, 705, 1317, 707, 718, 243, 243, 243, 243,
1927 243, 243, 245, 245, 245, 245, 245, 245, 245, 626,
1928 705, 707, 425, 245, 490, 701, 733, 705, 626, 245,
1929 245, 245, 245, 245, 245, 246, 246, 246, 246, 246,
1930 246, 246, 246, 248, 248, 248, 248, 248, 248, 248,
1931 682, 701, 733, 1322, 248, 736, 712, 716, 682, 713,
1932
1933 248, 248, 248, 248, 248, 248, 251, 251, 251, 251,
1934 251, 251, 251, 251, 712, 716, 716, 713, 251, 712,
1935 713, 736, 1325, 1326, 251, 251, 251, 251, 251, 251,
1936 253, 253, 253, 253, 253, 253, 253, 253, 256, 256,
1937 256, 256, 256, 256, 256, 256, 256, 787, 318, 517,
1938 256, 1334, 256, 318, 1350, 787, 256, 256, 256, 256,
1939 256, 256, 318, 517, 318, 318, 739, 318, 339, 339,
1940 339, 339, 339, 339, 339, 719, 518, 708, 256, 261,
1941 261, 261, 261, 261, 261, 261, 261, 261, 1351, 517,
1942 518, 261, 739, 719, 1376, 708, 521, 261, 261, 261,
1943
1944 261, 261, 261, 262, 262, 262, 262, 262, 262, 262,
1945 521, 1379, 708, 1390, 262, 1394, 518, 714, 1398, 717,
1946 262, 262, 262, 262, 262, 262, 323, 522, 323, 323,
1947 323, 323, 323, 323, 323, 714, 521, 717, 714, 323,
1948 717, 522, 723, 725, 725, 323, 323, 323, 323, 323,
1949 323, 324, 324, 324, 324, 324, 324, 324, 324, 1402,
1950 723, 725, 1406, 324, 1414, 324, 1423, 522, 1258, 324,
1951 324, 324, 324, 324, 324, 405, 405, 405, 405, 405,
1952 405, 405, 433, 433, 433, 433, 433, 433, 433, 590,
1953 640, 324, 326, 326, 326, 326, 326, 326, 326, 326,
1954
1955 640, 1254, 745, 590, 326, 752, 764, 794, 1253, 591,
1956 326, 326, 326, 326, 326, 326, 330, 330, 330, 330,
1957 330, 330, 330, 591, 767, 794, 779, 330, 745, 590,
1958 795, 752, 764, 330, 330, 330, 330, 330, 330, 331,
1959 331, 331, 331, 331, 331, 331, 331, 835, 795, 591,
1960 767, 331, 779, 795, 810, 835, 1246, 331, 331, 331,
1961 331, 331, 331, 332, 332, 332, 332, 332, 332, 332,
1962 332, 334, 334, 334, 334, 334, 334, 334, 1245, 846,
1963 810, 1238, 334, 1237, 796, 797, 799, 846, 334, 334,
1964 334, 334, 334, 334, 338, 338, 338, 338, 338, 338,
1965
1966 338, 338, 796, 797, 799, 338, 1230, 796, 797, 799,
1967 801, 338, 338, 338, 338, 338, 338, 340, 340, 340,
1968 340, 340, 340, 340, 340, 340, 858, 1229, 801, 340,
1969 866, 802, 804, 801, 858, 340, 340, 340, 340, 340,
1970 340, 341, 341, 341, 341, 341, 341, 341, 341, 802,
1971 804, 878, 341, 804, 802, 806, 866, 885, 341, 341,
1972 341, 341, 341, 341, 347, 347, 347, 347, 347, 347,
1973 347, 347, 347, 806, 1223, 885, 347, 878, 885, 890,
1974 888, 891, 347, 347, 347, 347, 347, 347, 349, 349,
1975 349, 349, 349, 349, 349, 349, 349, 890, 888, 891,
1976
1977 349, 901, 349, 888, 904, 890, 349, 349, 349, 349,
1978 349, 349, 437, 437, 437, 437, 437, 437, 437, 503,
1979 503, 503, 503, 503, 503, 503, 1222, 901, 349, 367,
1980 904, 907, 1218, 367, 910, 892, 367, 893, 598, 367,
1981 599, 367, 367, 367, 367, 399, 399, 399, 399, 399,
1982 399, 399, 598, 892, 599, 893, 399, 907, 897, 984,
1983 910, 636, 399, 399, 399, 399, 399, 399, 401, 401,
1984 401, 401, 401, 401, 401, 636, 897, 984, 598, 401,
1985 599, 916, 923, 935, 1217, 401, 401, 401, 401, 401,
1986 401, 402, 402, 402, 402, 402, 402, 402, 402, 404,
1987
1988 404, 404, 404, 404, 404, 404, 938, 916, 923, 935,
1989 404, 950, 954, 966, 1216, 992, 404, 404, 404, 404,
1990 404, 404, 407, 407, 407, 407, 407, 407, 407, 407,
1991 1215, 1214, 938, 992, 407, 1210, 407, 950, 954, 966,
1992 407, 407, 407, 407, 407, 407, 508, 508, 508, 508,
1993 508, 508, 508, 512, 512, 512, 512, 512, 512, 512,
1994 709, 602, 407, 409, 409, 409, 409, 409, 409, 409,
1995 1012, 1207, 1065, 1077, 409, 602, 1204, 1201, 709, 639,
1996 409, 409, 409, 409, 409, 409, 410, 410, 410, 410,
1997 410, 410, 410, 639, 974, 709, 1012, 410, 1065, 1077,
1998
1999 1198, 602, 974, 410, 410, 410, 410, 410, 410, 411,
2000 411, 411, 411, 411, 411, 411, 411, 414, 414, 414,
2001 414, 414, 414, 414, 414, 414, 1022, 603, 1195, 414,
2002 1182, 414, 1178, 1171, 1022, 414, 414, 414, 414, 414,
2003 414, 603, 610, 610, 610, 610, 610, 610, 610, 612,
2004 612, 612, 612, 612, 612, 612, 1084, 414, 420, 420,
2005 420, 420, 420, 420, 420, 420, 420, 603, 1170, 1169,
2006 420, 1165, 420, 1164, 1084, 1161, 420, 420, 420, 420,
2007 420, 420, 616, 616, 616, 616, 616, 616, 616, 664,
2008 664, 664, 664, 664, 664, 664, 692, 711, 420, 426,
2009
2010 426, 426, 426, 426, 426, 426, 426, 426, 1157, 1156,
2011 692, 426, 1155, 1094, 1097, 711, 987, 426, 426, 426,
2012 426, 426, 426, 428, 428, 428, 428, 428, 428, 428,
2013 428, 428, 711, 1151, 987, 428, 692, 428, 987, 1094,
2014 1097, 428, 428, 428, 428, 428, 428, 669, 669, 669,
2015 669, 669, 669, 669, 673, 673, 673, 673, 673, 673,
2016 673, 693, 800, 428, 438, 438, 438, 438, 438, 438,
2017 438, 438, 438, 1150, 1147, 693, 438, 1100, 990, 1143,
2018 800, 696, 438, 438, 438, 438, 438, 438, 439, 439,
2019 439, 439, 439, 439, 439, 696, 990, 800, 1142, 439,
2020
2021 990, 693, 991, 1100, 1080, 439, 439, 439, 439, 439,
2022 439, 484, 697, 484, 484, 484, 484, 484, 484, 484,
2023 991, 696, 1080, 1141, 484, 991, 697, 1137, 1136, 1083,
2024 484, 484, 484, 484, 484, 484, 485, 485, 485, 485,
2025 485, 485, 485, 485, 1133, 1033, 1080, 1083, 485, 1083,
2026 485, 1130, 697, 1033, 485, 485, 485, 485, 485, 485,
2027 678, 678, 678, 678, 678, 678, 678, 680, 680, 680,
2028 680, 680, 680, 680, 747, 805, 485, 487, 487, 487,
2029 487, 487, 487, 487, 487, 1103, 1045, 1129, 747, 487,
2030 1106, 1128, 1087, 805, 1045, 487, 487, 487, 487, 487,
2031
2032 487, 491, 491, 491, 491, 491, 491, 491, 491, 1057,
2033 1087, 1103, 805, 491, 747, 1087, 1106, 1057, 1124, 491,
2034 491, 491, 491, 491, 491, 492, 492, 492, 492, 492,
2035 492, 492, 492, 493, 493, 493, 493, 493, 493, 493,
2036 1177, 1221, 1123, 1120, 493, 1131, 1145, 1159, 1177, 1221,
2037 493, 493, 493, 493, 493, 493, 494, 494, 494, 494,
2038 494, 494, 494, 494, 496, 496, 496, 496, 496, 496,
2039 496, 1131, 1145, 1159, 1193, 496, 1256, 1293, 1081, 1082,
2040 1085, 496, 496, 496, 496, 496, 496, 497, 497, 497,
2041 497, 497, 497, 497, 497, 497, 1081, 1082, 1085, 497,
2042
2043 1193, 1302, 1256, 1293, 748, 497, 497, 497, 497, 497,
2044 497, 498, 498, 498, 498, 498, 498, 498, 748, 1085,
2045 1081, 1082, 498, 1119, 1088, 1184, 1118, 1302, 498, 498,
2046 498, 498, 498, 498, 502, 502, 502, 502, 502, 502,
2047 502, 502, 1088, 1184, 748, 502, 1114, 1112, 1185, 1186,
2048 1187, 502, 502, 502, 502, 502, 502, 504, 504, 504,
2049 504, 504, 504, 504, 504, 504, 1185, 1186, 1187, 504,
2050 1111, 1188, 1270, 1272, 1108, 504, 504, 504, 504, 504,
2051 504, 505, 505, 505, 505, 505, 505, 505, 505, 1188,
2052 1270, 1272, 505, 1270, 1188, 1107, 1271, 1104, 505, 505,
2053
2054 505, 505, 505, 505, 513, 513, 513, 513, 513, 513,
2055 513, 513, 513, 1228, 1271, 1272, 513, 1271, 1101, 1339,
2056 1098, 1228, 513, 513, 513, 513, 513, 513, 514, 514,
2057 514, 514, 514, 514, 514, 514, 1236, 1339, 1311, 514,
2058 1320, 1374, 1095, 1382, 1236, 514, 514, 514, 514, 514,
2059 514, 523, 523, 523, 523, 523, 523, 523, 523, 523,
2060 1244, 1382, 1388, 523, 1311, 1392, 1320, 1374, 1244, 523,
2061 523, 523, 523, 523, 523, 525, 525, 525, 525, 525,
2062 525, 525, 525, 525, 1252, 1091, 1079, 525, 1388, 525,
2063 1078, 1392, 1252, 525, 525, 525, 525, 525, 525, 684,
2064
2065 684, 684, 684, 684, 684, 684, 690, 690, 690, 690,
2066 690, 690, 690, 798, 755, 525, 565, 565, 565, 565,
2067 565, 565, 565, 1396, 1284, 1400, 1404, 565, 755, 1075,
2068 1384, 798, 1284, 565, 565, 565, 565, 565, 565, 567,
2069 567, 567, 567, 567, 567, 567, 798, 1333, 1384, 1396,
2070 567, 1400, 1404, 1412, 755, 1333, 567, 567, 567, 567,
2071 567, 567, 568, 568, 568, 568, 568, 568, 568, 568,
2072 570, 570, 570, 570, 570, 570, 570, 1380, 1421, 1412,
2073 1071, 570, 1070, 1189, 1411, 1380, 1067, 570, 570, 570,
2074 570, 570, 570, 572, 572, 572, 572, 572, 572, 572,
2075
2076 572, 1189, 1411, 1062, 1421, 572, 1061, 1058, 1050, 1049,
2077 1189, 572, 572, 572, 572, 572, 572, 573, 573, 573,
2078 573, 573, 573, 573, 573, 574, 574, 574, 574, 574,
2079 574, 574, 1046, 1038, 1037, 1034, 574, 1027, 1026, 1023,
2080 1018, 1017, 574, 574, 574, 574, 574, 574, 575, 575,
2081 575, 575, 575, 575, 575, 575, 578, 578, 578, 578,
2082 578, 578, 578, 578, 578, 710, 756, 759, 578, 1014,
2083 578, 1013, 1010, 760, 578, 578, 578, 578, 578, 578,
2084 756, 759, 1009, 710, 1006, 1003, 1000, 760, 996, 979,
2085 720, 975, 715, 968, 721, 710, 578, 581, 581, 581,
2086
2087 581, 581, 581, 581, 581, 581, 756, 759, 720, 581,
2088 715, 581, 721, 760, 986, 581, 581, 581, 581, 581,
2089 581, 720, 715, 967, 721, 727, 727, 727, 727, 727,
2090 727, 727, 986, 770, 771, 774, 884, 581, 587, 587,
2091 587, 587, 587, 587, 587, 587, 587, 770, 771, 774,
2092 587, 986, 587, 964, 884, 775, 587, 587, 587, 587,
2093 587, 587, 768, 768, 768, 768, 768, 768, 768, 775,
2094 1338, 884, 960, 770, 771, 774, 869, 959, 587, 592,
2095 592, 592, 592, 592, 592, 592, 592, 592, 1338, 956,
2096 869, 592, 952, 951, 948, 775, 1338, 592, 592, 592,
2097
2098 592, 592, 592, 594, 594, 594, 594, 594, 594, 594,
2099 594, 594, 944, 943, 940, 594, 869, 594, 937, 936,
2100 933, 594, 594, 594, 594, 594, 594, 783, 783, 783,
2101 783, 783, 783, 783, 785, 785, 785, 785, 785, 785,
2102 785, 870, 886, 594, 604, 604, 604, 604, 604, 604,
2103 604, 604, 604, 929, 928, 870, 604, 925, 924, 921,
2104 886, 886, 604, 604, 604, 604, 604, 604, 606, 606,
2105 606, 606, 606, 606, 606, 606, 606, 917, 886, 913,
2106 606, 870, 606, 912, 989, 803, 606, 606, 606, 606,
2107 606, 606, 789, 789, 789, 789, 789, 789, 789, 911,
2108
2109 908, 905, 989, 803, 902, 873, 874, 881, 606, 617,
2110 617, 617, 617, 617, 617, 617, 617, 617, 803, 873,
2111 874, 617, 989, 899, 898, 881, 880, 617, 617, 617,
2112 617, 617, 617, 618, 618, 618, 618, 618, 618, 618,
2113 881, 879, 876, 872, 618, 873, 874, 871, 868, 863,
2114 618, 618, 618, 618, 618, 618, 621, 621, 621, 621,
2115 621, 621, 621, 859, 851, 847, 840, 621, 882, 883,
2116 887, 889, 1269, 621, 621, 621, 621, 621, 621, 828,
2117 828, 828, 828, 828, 828, 828, 882, 883, 887, 889,
2118 1269, 621, 644, 836, 644, 644, 644, 644, 644, 644,
2119
2120 644, 882, 883, 883, 887, 644, 889, 1269, 985, 988,
2121 1089, 644, 644, 644, 644, 644, 644, 833, 833, 833,
2122 833, 833, 833, 833, 918, 919, 985, 988, 1089, 644,
2123 645, 645, 645, 645, 645, 645, 645, 645, 918, 919,
2124 985, 988, 645, 1089, 831, 826, 825, 824, 645, 645,
2125 645, 645, 645, 645, 837, 837, 837, 837, 837, 837,
2126 837, 821, 818, 814, 918, 919, 645, 646, 646, 646,
2127 646, 646, 646, 646, 842, 842, 842, 842, 842, 842,
2128 842, 844, 844, 844, 844, 844, 844, 844, 848, 848,
2129 848, 848, 848, 848, 848, 854, 854, 854, 854, 854,
2130
2131 854, 854, 646, 647, 647, 647, 647, 647, 647, 647,
2132 792, 788, 781, 780, 647, 777, 773, 772, 769, 766,
2133 647, 647, 647, 647, 647, 647, 649, 649, 649, 649,
2134 649, 649, 649, 649, 651, 651, 651, 651, 651, 651,
2135 651, 651, 765, 762, 758, 757, 651, 754, 753, 750,
2136 746, 743, 651, 651, 651, 651, 651, 651, 652, 652,
2137 652, 652, 652, 652, 652, 652, 654, 654, 654, 654,
2138 654, 654, 654, 742, 741, 740, 737, 654, 734, 731,
2139 730, 703, 702, 654, 654, 654, 654, 654, 654, 655,
2140 655, 655, 655, 655, 655, 655, 655, 655, 699, 695,
2141
2142 694, 655, 691, 687, 683, 676, 926, 655, 655, 655,
2143 655, 655, 655, 656, 656, 656, 656, 656, 656, 656,
2144 926, 672, 667, 662, 656, 661, 660, 657, 653, 643,
2145 656, 656, 656, 656, 656, 656, 658, 658, 658, 658,
2146 658, 658, 658, 658, 658, 642, 926, 638, 658, 637,
2147 635, 634, 629, 927, 658, 658, 658, 658, 658, 658,
2148 659, 659, 659, 659, 659, 659, 659, 927, 619, 615,
2149 609, 659, 608, 605, 601, 600, 597, 659, 659, 659,
2150 659, 659, 659, 663, 663, 663, 663, 663, 663, 663,
2151 663, 596, 593, 927, 663, 589, 586, 585, 584, 583,
2152
2153 663, 663, 663, 663, 663, 663, 665, 665, 665, 665,
2154 665, 665, 665, 665, 665, 580, 577, 576, 665, 569,
2155 566, 564, 560, 556, 665, 665, 665, 665, 665, 665,
2156 666, 666, 666, 666, 666, 666, 666, 666, 555, 554,
2157 553, 666, 549, 548, 546, 545, 544, 666, 666, 666,
2158 666, 666, 666, 674, 674, 674, 674, 674, 674, 674,
2159 674, 674, 543, 542, 541, 674, 540, 539, 538, 537,
2160 536, 674, 674, 674, 674, 674, 674, 675, 675, 675,
2161 675, 675, 675, 675, 675, 535, 532, 531, 675, 530,
2162 528, 527, 524, 519, 675, 675, 675, 675, 675, 675,
2163
2164 685, 685, 685, 685, 685, 685, 685, 685, 685, 515,
2165 511, 506, 685, 501, 500, 499, 495, 489, 685, 685,
2166 685, 685, 685, 685, 686, 686, 686, 686, 686, 686,
2167 686, 686, 488, 483, 482, 686, 481, 480, 479, 478,
2168 477, 686, 686, 686, 686, 686, 686, 698, 698, 698,
2169 698, 698, 698, 698, 698, 698, 476, 475, 474, 698,
2170 473, 471, 468, 467, 466, 698, 698, 698, 698, 698,
2171 698, 700, 700, 700, 700, 700, 700, 700, 700, 700,
2172 465, 464, 463, 700, 462, 700, 460, 459, 458, 700,
2173 700, 700, 700, 700, 700, 856, 856, 856, 856, 856,
2174
2175 856, 856, 860, 860, 860, 860, 860, 860, 860, 930,
2176 931, 700, 722, 941, 722, 722, 722, 722, 722, 722,
2177 722, 457, 455, 930, 931, 722, 453, 941, 452, 451,
2178 722, 722, 722, 722, 722, 722, 722, 724, 724, 724,
2179 724, 724, 724, 724, 450, 449, 448, 447, 724, 930,
2180 931, 445, 444, 941, 724, 724, 724, 724, 724, 724,
2181 726, 726, 726, 726, 726, 726, 726, 443, 440, 436,
2182 432, 726, 431, 1337, 430, 427, 423, 726, 726, 726,
2183 726, 726, 726, 728, 728, 728, 728, 728, 728, 728,
2184 728, 1337, 422, 419, 418, 728, 417, 416, 413, 412,
2185
2186 1337, 728, 728, 728, 728, 728, 728, 729, 729, 729,
2187 729, 729, 729, 729, 729, 732, 732, 732, 732, 732,
2188 732, 732, 732, 732, 403, 400, 398, 732, 397, 732,
2189 396, 395, 394, 732, 732, 732, 732, 732, 732, 867,
2190 867, 867, 867, 867, 867, 867, 939, 939, 939, 939,
2191 939, 939, 939, 942, 393, 732, 735, 735, 735, 735,
2192 735, 735, 735, 735, 735, 392, 945, 942, 735, 391,
2193 735, 390, 946, 957, 735, 735, 735, 735, 735, 735,
2194 945, 389, 388, 387, 385, 383, 946, 957, 382, 380,
2195 379, 376, 1336, 942, 958, 375, 735, 738, 738, 738,
2196
2197 738, 738, 738, 738, 738, 738, 945, 373, 958, 738,
2198 1336, 738, 946, 957, 961, 738, 738, 738, 738, 738,
2199 738, 955, 955, 955, 955, 955, 955, 955, 961, 1336,
2200 371, 370, 369, 962, 958, 1068, 366, 738, 744, 744,
2201 744, 744, 744, 744, 744, 744, 744, 962, 365, 1068,
2202 744, 363, 744, 362, 961, 1069, 744, 744, 744, 744,
2203 744, 744, 970, 970, 970, 970, 970, 970, 970, 1069,
2204 361, 360, 358, 962, 1072, 1068, 1073, 353, 744, 749,
2205 749, 749, 749, 749, 749, 749, 749, 749, 1072, 352,
2206 1073, 749, 351, 348, 344, 1069, 342, 749, 749, 749,
2207
2208 749, 749, 749, 751, 751, 751, 751, 751, 751, 751,
2209 751, 751, 337, 336, 1072, 751, 1073, 751, 333, 328,
2210 327, 751, 751, 751, 751, 751, 751, 972, 972, 972,
2211 972, 972, 972, 972, 976, 976, 976, 976, 976, 976,
2212 976, 1115, 319, 751, 761, 761, 761, 761, 761, 761,
2213 761, 761, 761, 317, 316, 1115, 761, 311, 309, 307,
2214 306, 305, 761, 761, 761, 761, 761, 761, 763, 763,
2215 763, 763, 763, 763, 763, 763, 763, 981, 982, 1116,
2216 763, 1115, 763, 304, 303, 302, 763, 763, 763, 763,
2217 763, 763, 301, 1116, 299, 981, 982, 1015, 1015, 1015,
2218
2219 1015, 1015, 1015, 1015, 1121, 298, 981, 982, 763, 776,
2220 776, 776, 776, 776, 776, 776, 776, 776, 1121, 1116,
2221 297, 776, 292, 289, 288, 287, 284, 776, 776, 776,
2222 776, 776, 776, 778, 778, 778, 778, 778, 778, 778,
2223 778, 778, 983, 1122, 1121, 778, 281, 778, 280, 278,
2224 1383, 778, 778, 778, 778, 778, 778, 1122, 276, 275,
2225 983, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1383, 274,
2226 1125, 983, 272, 778, 790, 790, 790, 790, 790, 790,
2227 790, 790, 790, 1122, 1125, 269, 790, 1383, 268, 266,
2228 263, 1126, 790, 790, 790, 790, 790, 790, 791, 791,
2229
2230 791, 791, 791, 791, 791, 1126, 259, 258, 255, 791,
2231 1125, 254, 252, 247, 244, 791, 791, 791, 791, 791,
2232 791, 807, 1134, 807, 807, 807, 807, 807, 807, 807,
2233 242, 1126, 241, 239, 807, 236, 1134, 232, 228, 807,
2234 807, 807, 807, 807, 807, 807, 808, 808, 808, 808,
2235 808, 808, 808, 226, 224, 223, 221, 808, 220, 219,
2236 218, 217, 1134, 808, 808, 808, 808, 808, 808, 809,
2237 809, 809, 809, 809, 809, 809, 809, 216, 215, 213,
2238 211, 809, 209, 809, 208, 206, 204, 809, 809, 809,
2239 809, 809, 809, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
2240
2241 1029, 1029, 1029, 1029, 1029, 1029, 1029, 203, 1135, 809,
2242 811, 811, 811, 811, 811, 811, 811, 201, 198, 197,
2243 196, 811, 1135, 194, 192, 191, 188, 811, 811, 811,
2244 811, 811, 811, 812, 812, 812, 812, 812, 812, 812,
2245 812, 187, 185, 184, 183, 812, 182, 181, 1135, 180,
2246 179, 812, 812, 812, 812, 812, 812, 813, 813, 813,
2247 813, 813, 813, 813, 813, 815, 815, 815, 815, 815,
2248 815, 815, 178, 177, 176, 174, 815, 173, 170, 169,
2249 168, 167, 815, 815, 815, 815, 815, 815, 816, 816,
2250 816, 816, 816, 816, 816, 816, 816, 166, 165, 164,
2251
2252 816, 162, 159, 158, 157, 1138, 816, 816, 816, 816,
2253 816, 816, 817, 817, 817, 817, 817, 817, 817, 1138,
2254 156, 153, 151, 817, 142, 141, 140, 139, 138, 817,
2255 817, 817, 817, 817, 817, 819, 819, 819, 819, 819,
2256 819, 819, 819, 819, 137, 1138, 136, 819, 134, 133,
2257 132, 130, 1139, 819, 819, 819, 819, 819, 819, 820,
2258 820, 820, 820, 820, 820, 820, 1139, 128, 126, 125,
2259 820, 124, 123, 121, 120, 119, 820, 820, 820, 820,
2260 820, 820, 822, 822, 822, 822, 822, 822, 822, 822,
2261 822, 118, 1139, 117, 822, 116, 114, 112, 111, 1148,
2262
2263 822, 822, 822, 822, 822, 822, 823, 823, 823, 823,
2264 823, 823, 823, 1148, 110, 109, 108, 823, 107, 106,
2265 105, 104, 102, 823, 823, 823, 823, 823, 823, 827,
2266 827, 827, 827, 827, 827, 827, 827, 101, 94, 1148,
2267 827, 93, 92, 90, 89, 88, 827, 827, 827, 827,
2268 827, 827, 829, 829, 829, 829, 829, 829, 829, 829,
2269 829, 87, 86, 85, 829, 84, 83, 81, 80, 79,
2270 829, 829, 829, 829, 829, 829, 830, 830, 830, 830,
2271 830, 830, 830, 830, 78, 77, 76, 830, 75, 74,
2272 73, 72, 71, 830, 830, 830, 830, 830, 830, 838,
2273
2274 838, 838, 838, 838, 838, 838, 838, 838, 70, 69,
2275 67, 838, 66, 65, 51, 43, 42, 838, 838, 838,
2276 838, 838, 838, 839, 839, 839, 839, 839, 839, 839,
2277 839, 40, 30, 18, 839, 10, 8, 3, 0, 0,
2278 839, 839, 839, 839, 839, 839, 849, 849, 849, 849,
2279 849, 849, 849, 849, 849, 0, 0, 0, 849, 0,
2280 0, 0, 0, 0, 849, 849, 849, 849, 849, 849,
2281 850, 850, 850, 850, 850, 850, 850, 850, 0, 0,
2282 0, 850, 0, 0, 0, 0, 0, 850, 850, 850,
2283 850, 850, 850, 861, 861, 861, 861, 861, 861, 861,
2284
2285 861, 861, 0, 0, 0, 861, 0, 0, 0, 0,
2286 0, 861, 861, 861, 861, 861, 861, 862, 862, 862,
2287 862, 862, 862, 862, 862, 0, 0, 0, 862, 0,
2288 0, 0, 0, 0, 862, 862, 862, 862, 862, 862,
2289 875, 875, 875, 875, 875, 875, 875, 875, 875, 0,
2290 0, 0, 875, 0, 0, 0, 0, 0, 875, 875,
2291 875, 875, 875, 875, 877, 877, 877, 877, 877, 877,
2292 877, 877, 877, 0, 0, 0, 877, 0, 877, 0,
2293 0, 0, 877, 877, 877, 877, 877, 877, 1031, 1031,
2294 1031, 1031, 1031, 1031, 1031, 1035, 1035, 1035, 1035, 1035,
2295
2296 1035, 1035, 0, 0, 877, 894, 894, 894, 894, 894,
2297 894, 894, 894, 894, 0, 0, 0, 0, 894, 0,
2298 0, 0, 0, 894, 894, 894, 894, 894, 894, 894,
2299 895, 895, 895, 895, 895, 895, 895, 895, 896, 896,
2300 896, 896, 896, 896, 896, 896, 896, 1041, 1041, 1041,
2301 1041, 1041, 1041, 1041, 0, 0, 896, 900, 900, 900,
2302 900, 900, 900, 900, 900, 900, 0, 0, 0, 900,
2303 0, 900, 0, 0, 0, 900, 900, 900, 900, 900,
2304 900, 1043, 1043, 1043, 1043, 1043, 1043, 1043, 1047, 1047,
2305 1047, 1047, 1047, 1047, 1047, 0, 0, 900, 903, 903,
2306
2307 903, 903, 903, 903, 903, 903, 903, 0, 0, 0,
2308 903, 0, 903, 0, 0, 0, 903, 903, 903, 903,
2309 903, 903, 1053, 1053, 1053, 1053, 1053, 1053, 1053, 1055,
2310 1055, 1055, 1055, 1055, 1055, 1055, 0, 0, 903, 906,
2311 906, 906, 906, 906, 906, 906, 906, 906, 0, 0,
2312 0, 906, 0, 906, 0, 0, 0, 906, 906, 906,
2313 906, 906, 906, 1059, 1059, 1059, 1059, 1059, 1059, 1059,
2314 1066, 1066, 1066, 1066, 1066, 1066, 1066, 1086, 0, 906,
2315 909, 909, 909, 909, 909, 909, 909, 909, 909, 0,
2316 1149, 1152, 909, 0, 909, 1086, 0, 0, 909, 909,
2317
2318 909, 909, 909, 909, 1149, 1152, 1086, 1109, 1109, 1109,
2319 1109, 1109, 1109, 1109, 0, 1153, 0, 0, 0, 1162,
2320 909, 914, 914, 914, 914, 914, 914, 914, 914, 1153,
2321 1149, 1152, 914, 1162, 0, 0, 0, 0, 914, 914,
2322 914, 914, 914, 914, 915, 915, 915, 915, 915, 915,
2323 915, 915, 915, 0, 0, 1153, 915, 0, 915, 1162,
2324 0, 0, 915, 915, 915, 915, 915, 915, 1132, 1132,
2325 1132, 1132, 1132, 1132, 1132, 1146, 1146, 1146, 1146, 1146,
2326 1146, 1146, 1163, 0, 915, 920, 920, 920, 920, 920,
2327 920, 920, 920, 920, 0, 0, 1163, 920, 0, 0,
2328
2329 0, 0, 0, 920, 920, 920, 920, 920, 920, 922,
2330 922, 922, 922, 922, 922, 922, 922, 922, 0, 0,
2331 0, 922, 1163, 922, 0, 0, 1166, 922, 922, 922,
2332 922, 922, 922, 1160, 1160, 1160, 1160, 1160, 1160, 1160,
2333 1166, 0, 0, 0, 0, 1167, 0, 1211, 0, 922,
2334 932, 932, 932, 932, 932, 932, 932, 932, 932, 1167,
2335 0, 1211, 932, 0, 0, 0, 1166, 0, 932, 932,
2336 932, 932, 932, 932, 934, 934, 934, 934, 934, 934,
2337 934, 934, 934, 0, 0, 1167, 934, 1211, 934, 0,
2338 0, 0, 934, 934, 934, 934, 934, 934, 1173, 1173,
2339
2340 1173, 1173, 1173, 1173, 1173, 1175, 1175, 1175, 1175, 1175,
2341 1175, 1175, 1212, 0, 934, 947, 947, 947, 947, 947,
2342 947, 947, 947, 947, 0, 0, 1212, 947, 0, 0,
2343 0, 0, 0, 947, 947, 947, 947, 947, 947, 949,
2344 949, 949, 949, 949, 949, 949, 949, 949, 0, 0,
2345 0, 949, 1212, 949, 0, 0, 0, 949, 949, 949,
2346 949, 949, 949, 1179, 1179, 1179, 1179, 1179, 1179, 1179,
2347 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1259, 0, 949,
2348 963, 963, 963, 963, 963, 963, 963, 963, 963, 0,
2349 0, 1259, 963, 0, 0, 0, 0, 1190, 963, 963,
2350
2351 963, 963, 963, 963, 965, 965, 965, 965, 965, 965,
2352 965, 965, 965, 1191, 0, 1190, 965, 1259, 965, 0,
2353 0, 0, 965, 965, 965, 965, 965, 965, 1190, 0,
2354 0, 1191, 1224, 1224, 1224, 1224, 1224, 1224, 1224, 0,
2355 0, 1260, 1191, 0, 965, 977, 977, 977, 977, 977,
2356 977, 977, 977, 977, 0, 1260, 0, 977, 0, 0,
2357 0, 0, 1263, 977, 977, 977, 977, 977, 977, 978,
2358 978, 978, 978, 978, 978, 978, 1263, 0, 0, 0,
2359 978, 1260, 0, 0, 0, 0, 978, 978, 978, 978,
2360 978, 978, 993, 993, 993, 993, 993, 993, 993, 993,
2361
2362 993, 0, 1263, 0, 0, 993, 0, 0, 0, 0,
2363 993, 993, 993, 993, 993, 993, 993, 994, 994, 994,
2364 994, 994, 994, 994, 994, 995, 995, 995, 995, 995,
2365 995, 995, 995, 995, 1226, 1226, 1226, 1226, 1226, 1226,
2366 1226, 0, 1264, 995, 997, 997, 997, 997, 997, 997,
2367 997, 0, 0, 0, 0, 997, 1264, 0, 0, 0,
2368 0, 997, 997, 997, 997, 997, 997, 998, 998, 998,
2369 998, 998, 998, 998, 998, 998, 0, 0, 0, 998,
2370 0, 0, 1264, 0, 1288, 998, 998, 998, 998, 998,
2371 998, 999, 999, 999, 999, 999, 999, 999, 1288, 0,
2372
2373 0, 0, 999, 0, 0, 0, 0, 0, 999, 999,
2374 999, 999, 999, 999, 1001, 1001, 1001, 1001, 1001, 1001,
2375 1001, 1001, 1001, 0, 1288, 0, 1001, 0, 0, 0,
2376 0, 1289, 1001, 1001, 1001, 1001, 1001, 1001, 1002, 1002,
2377 1002, 1002, 1002, 1002, 1002, 1289, 0, 0, 0, 1002,
2378 0, 0, 0, 0, 0, 1002, 1002, 1002, 1002, 1002,
2379 1002, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004, 1004,
2380 0, 1289, 0, 1004, 0, 0, 0, 0, 1296, 1004,
2381 1004, 1004, 1004, 1004, 1004, 1005, 1005, 1005, 1005, 1005,
2382 1005, 1005, 1296, 0, 0, 0, 1005, 0, 0, 0,
2383
2384 0, 0, 1005, 1005, 1005, 1005, 1005, 1005, 1007, 1007,
2385 1007, 1007, 1007, 1007, 1007, 1007, 1007, 0, 1296, 0,
2386 1007, 0, 0, 0, 0, 1297, 1007, 1007, 1007, 1007,
2387 1007, 1007, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1297,
2388 0, 0, 0, 1008, 0, 0, 0, 0, 0, 1008,
2389 1008, 1008, 1008, 1008, 1008, 1011, 1011, 1011, 1011, 1011,
2390 1011, 1011, 1011, 1011, 0, 1297, 0, 1011, 0, 1011,
2391 0, 0, 0, 1011, 1011, 1011, 1011, 1011, 1011, 1232,
2392 1232, 1232, 1232, 1232, 1232, 1232, 1234, 1234, 1234, 1234,
2393 1234, 1234, 1234, 1305, 0, 1011, 1016, 1016, 1016, 1016,
2394
2395 1016, 1016, 1016, 1016, 1016, 0, 0, 1305, 1016, 0,
2396 0, 0, 0, 0, 1016, 1016, 1016, 1016, 1016, 1016,
2397 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 0,
2398 0, 0, 1025, 1305, 0, 0, 0, 0, 1025, 1025,
2399 1025, 1025, 1025, 1025, 1036, 1036, 1036, 1036, 1036, 1036,
2400 1036, 1036, 1036, 0, 0, 0, 1036, 0, 0, 0,
2401 0, 0, 1036, 1036, 1036, 1036, 1036, 1036, 1048, 1048,
2402 1048, 1048, 1048, 1048, 1048, 1048, 1048, 0, 0, 0,
2403 1048, 0, 0, 0, 0, 0, 1048, 1048, 1048, 1048,
2404 1048, 1048, 1060, 1060, 1060, 1060, 1060, 1060, 1060, 1060,
2405
2406 1060, 0, 0, 0, 1060, 0, 0, 0, 0, 0,
2407 1060, 1060, 1060, 1060, 1060, 1060, 1074, 1074, 1074, 1074,
2408 1074, 1074, 1074, 1074, 1074, 0, 0, 0, 1074, 0,
2409 0, 0, 0, 0, 1074, 1074, 1074, 1074, 1074, 1074,
2410 1076, 1076, 1076, 1076, 1076, 1076, 1076, 1076, 1076, 0,
2411 0, 0, 1076, 0, 1076, 0, 0, 0, 1076, 1076,
2412 1076, 1076, 1076, 1076, 1240, 1240, 1240, 1240, 1240, 1240,
2413 1240, 1242, 1242, 1242, 1242, 1242, 1242, 1242, 0, 0,
2414 1076, 1090, 1090, 1090, 1090, 1090, 1090, 1090, 1090, 1090,
2415 1248, 1248, 1248, 1248, 1248, 1248, 1248, 0, 1306, 1090,
2416
2417 1092, 1092, 1092, 1092, 1092, 1092, 1092, 1092, 0, 0,
2418 0, 1092, 1306, 0, 0, 0, 0, 1092, 1092, 1092,
2419 1092, 1092, 1092, 1093, 1093, 1093, 1093, 1093, 1093, 1093,
2420 1093, 1093, 0, 0, 0, 1093, 0, 1093, 1306, 0,
2421 0, 1093, 1093, 1093, 1093, 1093, 1093, 1250, 1250, 1250,
2422 1250, 1250, 1250, 1250, 1257, 1257, 1257, 1257, 1257, 1257,
2423 1257, 0, 0, 1093, 1096, 1096, 1096, 1096, 1096, 1096,
2424 1096, 1096, 1096, 0, 0, 0, 1096, 0, 1096, 0,
2425 0, 0, 1096, 1096, 1096, 1096, 1096, 1096, 1282, 1282,
2426 1282, 1282, 1282, 1282, 1282, 1294, 1294, 1294, 1294, 1294,
2427
2428 1294, 1294, 0, 0, 1096, 1099, 1099, 1099, 1099, 1099,
2429 1099, 1099, 1099, 1099, 0, 0, 0, 1099, 0, 1099,
2430 0, 0, 0, 1099, 1099, 1099, 1099, 1099, 1099, 1303,
2431 1303, 1303, 1303, 1303, 1303, 1303, 1312, 1312, 1312, 1312,
2432 1312, 1312, 1312, 1314, 0, 1099, 1102, 1102, 1102, 1102,
2433 1102, 1102, 1102, 1102, 1102, 0, 1315, 1314, 1102, 0,
2434 1102, 0, 0, 0, 1102, 1102, 1102, 1102, 1102, 1102,
2435 1315, 1321, 1321, 1321, 1321, 1321, 1321, 1321, 0, 0,
2436 0, 0, 0, 1314, 1323, 0, 1102, 1105, 1105, 1105,
2437 1105, 1105, 1105, 1105, 1105, 1105, 1315, 1324, 1323, 1105,
2438
2439 0, 1105, 0, 0, 0, 1105, 1105, 1105, 1105, 1105,
2440 1105, 1324, 1329, 1329, 1329, 1329, 1329, 1329, 1329, 0,
2441 0, 0, 0, 0, 1323, 1348, 0, 1105, 1110, 1110,
2442 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1324, 0, 1348,
2443 1110, 0, 0, 0, 0, 0, 1110, 1110, 1110, 1110,
2444 1110, 1110, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117,
2445 1117, 0, 0, 0, 1117, 1348, 0, 0, 0, 0,
2446 1117, 1117, 1117, 1117, 1117, 1117, 1127, 1127, 1127, 1127,
2447 1127, 1127, 1127, 1127, 1127, 0, 0, 0, 1127, 0,
2448 0, 0, 0, 0, 1127, 1127, 1127, 1127, 1127, 1127,
2449
2450 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 0,
2451 0, 0, 1140, 0, 0, 0, 0, 0, 1140, 1140,
2452 1140, 1140, 1140, 1140, 1154, 1154, 1154, 1154, 1154, 1154,
2453 1154, 1154, 1154, 0, 0, 0, 1154, 0, 0, 0,
2454 0, 0, 1154, 1154, 1154, 1154, 1154, 1154, 1168, 1168,
2455 1168, 1168, 1168, 1168, 1168, 1168, 1168, 0, 0, 0,
2456 1168, 0, 0, 0, 0, 0, 1168, 1168, 1168, 1168,
2457 1168, 1168, 1180, 1180, 1180, 1180, 1180, 1180, 1180, 1180,
2458 1180, 0, 0, 0, 1180, 0, 0, 0, 0, 0,
2459 1180, 1180, 1180, 1180, 1180, 1180, 1192, 1192, 1192, 1192,
2460
2461 1192, 1192, 1192, 1192, 1192, 0, 0, 0, 1192, 0,
2462 1192, 0, 0, 1349, 1192, 1192, 1192, 1192, 1192, 1192,
2463 1331, 1331, 1331, 1331, 1331, 1331, 1331, 1349, 1354, 1354,
2464 1354, 1354, 1354, 1354, 1354, 0, 1192, 1196, 1196, 1196,
2465 1196, 1196, 1196, 1196, 1196, 1196, 0, 0, 0, 1196,
2466 0, 0, 0, 1349, 0, 1196, 1196, 1196, 1196, 1196,
2467 1196, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199,
2468 0, 0, 0, 1199, 0, 0, 0, 0, 0, 1199,
2469 1199, 1199, 1199, 1199, 1199, 1202, 1202, 1202, 1202, 1202,
2470 1202, 1202, 1202, 1202, 0, 0, 0, 1202, 0, 0,
2471
2472 0, 0, 0, 1202, 1202, 1202, 1202, 1202, 1202, 1205,
2473 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 0, 0,
2474 0, 1205, 0, 0, 0, 0, 0, 1205, 1205, 1205,
2475 1205, 1205, 1205, 1208, 1208, 1208, 1208, 1208, 1208, 1208,
2476 1208, 1208, 0, 0, 0, 1208, 0, 0, 0, 0,
2477 0, 1208, 1208, 1208, 1208, 1208, 1208, 1213, 1213, 1213,
2478 1213, 1213, 1213, 1213, 1213, 1213, 0, 0, 0, 1213,
2479 0, 0, 0, 0, 0, 1213, 1213, 1213, 1213, 1213,
2480 1213, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265, 1265,
2481 0, 0, 0, 1265, 0, 0, 0, 0, 0, 1265,
2482
2483 1265, 1265, 1265, 1265, 1265, 1273, 1273, 1273, 1273, 1273,
2484 1273, 1273, 1273, 1273, 0, 0, 0, 1273, 0, 0,
2485 0, 0, 0, 1273, 1273, 1273, 1273, 1273, 1273, 1358,
2486 1358, 1358, 1358, 1358, 1358, 1358, 1362, 1362, 1362, 1362,
2487 1362, 1362, 1362, 1366, 1366, 1366, 1366, 1366, 1366, 1366,
2488 1370, 1370, 1370, 1370, 1370, 1370, 1370, 1375, 1375, 1375,
2489 1375, 1375, 1375, 1375, 1377, 1378, 1386, 1386, 1386, 1386,
2490 1386, 1386, 1386, 0, 0, 0, 0, 0, 1377, 1378,
2491 1389, 1389, 1389, 1389, 1389, 1389, 1389, 1393, 1393, 1393,
2492 1393, 1393, 1393, 1393, 1397, 1397, 1397, 1397, 1397, 1397,
2493
2494 1397, 0, 0, 0, 1377, 1378, 1401, 1401, 1401, 1401,
2495 1401, 1401, 1401, 1405, 1405, 1405, 1405, 1405, 1405, 1405,
2496 1408, 1408, 1408, 1408, 1408, 1408, 1408, 1413, 1413, 1413,
2497 1413, 1413, 1413, 1413, 1422, 1422, 1422, 1422, 1422, 1422,
2498 1422, 1434, 0, 0, 0, 0, 1434, 1434, 1434, 1435,
2499 0, 1435, 1435, 1435, 1435, 1435, 1435, 1435, 1436, 0,
2500 1436, 1437, 1437, 1437, 1438, 1438, 1438, 1439, 1439, 1439,
2501 1440, 1440, 1440, 1441, 1441, 1441, 1442, 1442, 1442, 1443,
2502 1443, 1443, 1444, 1444, 1444, 1445, 1445, 1445, 1446, 0,
2503 1446, 1447, 1447, 1447, 1448, 1448, 1448, 1449, 1449, 1449,
2504
2505 1450, 1450, 1450, 1451, 0, 1451, 1452, 1452, 1452, 1453,
2506 1453, 0, 0, 1453, 1454, 1454, 1454, 1455, 1455, 1455,
2507 1456, 1456, 1456, 1457, 1457, 1457, 1458, 1458, 1458, 1459,
2508 1459, 1459, 1460, 1460, 1460, 1461, 1461, 1461, 1462, 1462,
2509 1462, 1463, 1463, 0, 0, 1463, 1464, 1464, 1464, 1465,
2510 1465, 1465, 1466, 0, 1466, 1467, 1467, 1467, 1468, 1468,
2511 1468, 1469, 0, 1469, 1470, 1470, 1470, 1471, 1471, 1471,
2512 1472, 1472, 1472, 1473, 1473, 1473, 1474, 1474, 1474, 1475,
2513 0, 1475, 1476, 0, 1476, 1477, 1477, 1477, 1478, 1478,
2514 1478, 1479, 0, 1479, 1480, 1480, 0, 0, 1480, 1481,
2515
2516 1481, 0, 0, 1481, 1482, 1482, 1482, 1483, 1483, 1483,
2517 1484, 1484, 0, 1484, 1485, 1485, 1485, 1486, 1486, 1486,
2518 1487, 1487, 1487, 1488, 1488, 1488, 1489, 1489, 1489, 1490,
2519 1490, 1490, 1491, 1491, 1491, 1492, 1492, 0, 0, 1492,
2520 1493, 1493, 1493, 1494, 1494, 1494, 1495, 1495, 0, 1495,
2521 1496, 1496, 0, 0, 1496, 1497, 1497, 0, 1497, 1498,
2522 1498, 1499, 1499, 0, 0, 1499, 1500, 1500, 1500, 1501,
2523 1501, 1501, 1502, 1502, 0, 1502, 1503, 0, 1503, 1504,
2524 0, 1504, 1505, 1505, 1505, 1506, 1506, 1506, 1507, 0,
2525 1507, 1508, 1508, 1508, 1509, 1509, 1509, 1510, 1510, 1510,
2526
2527 1511, 1511, 1511, 1512, 1512, 1512, 1513, 1513, 1513, 1514,
2528 0, 1514, 1515, 0, 1515, 1516, 1516, 1516, 1517, 1517,
2529 1517, 1518, 0, 1518, 1519, 0, 1519, 1520, 0, 1520,
2530 1521, 1521, 1521, 1522, 1522, 1522, 1523, 0, 1523, 1524,
2531 0, 0, 1524, 1525, 1525, 0, 1525, 1526, 1526, 0,
2532 0, 1526, 1527, 1527, 0, 1527, 1528, 1528, 1529, 1529,
2533 0, 0, 1529, 1530, 1530, 1530, 1531, 1531, 1531, 1532,
2534 1532, 0, 1532, 1533, 1533, 1533, 0, 1533, 1533, 1534,
2535 1534, 1534, 1535, 1535, 1535, 1536, 1536, 1536, 1537, 1537,
2536 1537, 1538, 1538, 1538, 1539, 1539, 1539, 1540, 1540, 1540,
2537
2538 1541, 1541, 1541, 1542, 1542, 0, 0, 1542, 1543, 1543,
2539 1543, 1544, 1544, 1544, 1545, 1545, 0, 1545, 1546, 1546,
2540 0, 0, 1546, 1547, 1547, 0, 1547, 1548, 1548, 1549,
2541 1549, 0, 0, 1549, 1550, 1550, 1550, 1551, 1551, 1551,
2542 1552, 1552, 0, 1552, 1553, 0, 0, 1553, 1554, 1554,
2543 0, 1554, 1555, 1555, 0, 0, 1555, 1556, 1556, 0,
2544 1556, 1557, 1557, 1558, 1558, 0, 0, 1558, 1559, 1559,
2545 1559, 1560, 1560, 1560, 1561, 1561, 0, 1561, 1562, 0,
2546 1562, 1563, 0, 1563, 1564, 0, 1564, 1565, 1565, 1565,
2547 1566, 1566, 1566, 1567, 0, 1567, 1568, 1568, 1568, 0,
2548
2549 1568, 1568, 1569, 1569, 1569, 1570, 1570, 1570, 1571, 1571,
2550 1571, 1572, 1572, 1572, 1573, 1573, 1573, 1574, 1574, 1574,
2551 1575, 1575, 1575, 1576, 0, 1576, 1577, 0, 1577, 1578,
2552 1578, 1578, 1579, 1579, 1579, 1580, 0, 1580, 1581, 0,
2553 1581, 1582, 0, 1582, 1583, 1583, 1583, 1584, 1584, 1584,
2554 1585, 0, 1585, 1586, 0, 1586, 1587, 0, 1587, 1588,
2555 0, 1588, 1589, 1589, 1589, 1590, 1590, 1590, 1591, 0,
2556 1591, 1592, 0, 1592, 1593, 0, 0, 1593, 1594, 1594,
2557 0, 1594, 1595, 1595, 0, 0, 1595, 1596, 1596, 0,
2558 1596, 1597, 1597, 1598, 1598, 0, 0, 1598, 1599, 1599,
2559
2560 1599, 1600, 1600, 1600, 1601, 1601, 0, 1601, 1602, 1602,
2561 1602, 0, 1602, 1602, 1603, 1603, 1603, 1604, 1604, 1604,
2562 1605, 1605, 1605, 1606, 1606, 1606, 1607, 1607, 1607, 1608,
2563 1608, 1608, 1609, 1609, 1609, 1610, 1610, 1610, 1611, 1611,
2564 0, 0, 1611, 1612, 1612, 1612, 1613, 1613, 1613, 1614,
2565 1614, 0, 1614, 1615, 1615, 0, 0, 1615, 1616, 1616,
2566 0, 1616, 1617, 1617, 1618, 1618, 0, 0, 1618, 1619,
2567 1619, 1619, 1620, 1620, 1620, 1621, 1621, 0, 1621, 1622,
2568 0, 0, 1622, 1623, 1623, 0, 1623, 1624, 1624, 0,
2569 0, 1624, 1625, 1625, 0, 1625, 1626, 1626, 1627, 1627,
2570
2571 0, 0, 1627, 1628, 1628, 1628, 1629, 1629, 1629, 1630,
2572 1630, 0, 1630, 1631, 0, 1631, 1632, 0, 0, 1632,
2573 1633, 1633, 0, 1633, 1634, 1634, 0, 0, 1634, 1635,
2574 1635, 0, 1635, 1636, 1636, 1637, 1637, 0, 0, 1637,
2575 1638, 1638, 1638, 1639, 1639, 1639, 1640, 1640, 0, 1640,
2576 1641, 0, 1641, 1642, 0, 1642, 1643, 0, 1643, 1644,
2577 1644, 1644, 1645, 1645, 1645, 1646, 0, 1646, 1647, 1647,
2578 1647, 0, 1647, 1647, 1648, 1648, 1648, 1649, 1649, 1649,
2579 1650, 1650, 1650, 1651, 1651, 1651, 1652, 1652, 1652, 1653,
2580 1653, 1653, 1654, 1654, 1654, 1655, 1655, 1655, 1656, 1656,
2581
2582 1656, 1657, 1657, 1657, 1658, 0, 1658, 1659, 0, 1659,
2583 1660, 1660, 1660, 1661, 1661, 1661, 1662, 1662, 1662, 1663,
2584 0, 1663, 1664, 0, 1664, 1665, 0, 1665, 1666, 1666,
2585 1666, 1667, 1667, 1667, 1668, 1668, 1668, 1669, 0, 1669,
2586 1670, 0, 1670, 1671, 0, 1671, 1672, 0, 1672, 1673,
2587 1673, 1673, 1674, 1674, 1674, 1675, 1675, 1675, 1676, 0,
2588 1676, 1677, 0, 1677, 1678, 0, 1678, 1679, 0, 1679,
2589 1680, 1680, 1680, 1681, 1681, 1681, 1682, 1682, 1682, 1683,
2590 0, 1683, 1684, 0, 1684, 1685, 0, 0, 1685, 1686,
2591 1686, 0, 1686, 1687, 1687, 0, 0, 1687, 1688, 1688,
2592
2593 0, 1688, 1689, 1689, 1690, 1690, 0, 0, 1690, 1691,
2594 1691, 1691, 1692, 1692, 1692, 1693, 1693, 0, 1693, 1694,
2595 1694, 1694, 0, 1694, 1694, 1695, 1695, 1695, 1696, 1696,
2596 1696, 1697, 1697, 1697, 1698, 1698, 1698, 1699, 1699, 1699,
2597 1700, 1700, 1700, 1701, 1701, 1701, 1702, 1702, 1702, 1703,
2598 0, 1703, 1704, 1704, 1704, 1705, 1705, 0, 0, 1705,
2599 1706, 1706, 1706, 1707, 1707, 1707, 1708, 1708, 0, 1708,
2600 1709, 1709, 0, 0, 1709, 1710, 1710, 0, 1710, 1711,
2601 1711, 1712, 1712, 0, 0, 1712, 1713, 1713, 1713, 1714,
2602 1714, 1714, 1715, 1715, 0, 1715, 1716, 0, 0, 1716,
2603
2604 1717, 1717, 0, 1717, 1718, 1718, 0, 0, 1718, 1719,
2605 1719, 0, 1719, 1720, 1720, 1721, 1721, 0, 0, 1721,
2606 1722, 1722, 1722, 1723, 1723, 1723, 1724, 1724, 0, 1724,
2607 1725, 0, 1725, 1726, 0, 0, 1726, 1727, 1727, 0,
2608 1727, 1728, 1728, 0, 0, 1728, 1729, 1729, 0, 1729,
2609 1730, 1730, 1731, 1731, 0, 0, 1731, 1732, 1732, 1732,
2610 1733, 1733, 1733, 1734, 1734, 0, 1734, 1735, 0, 1735,
2611 1736, 0, 0, 1736, 1737, 1737, 0, 1737, 1738, 1738,
2612 0, 0, 1738, 1739, 1739, 0, 1739, 1740, 1740, 1741,
2613 1741, 0, 0, 1741, 1742, 1742, 1742, 1743, 1743, 1743,
2614
2615 1744, 1744, 0, 1744, 1745, 0, 1745, 1746, 0, 1746,
2616 1747, 0, 1747, 1748, 1748, 1748, 1749, 0, 1749, 1750,
2617 1750, 1750, 1751, 0, 1751, 1752, 1752, 1752, 0, 1752,
2618 1752, 1753, 0, 1753, 1754, 1754, 1754, 1755, 0, 1755,
2619 1756, 1756, 1756, 1757, 0, 1757, 1758, 1758, 1758, 1759,
2620 0, 1759, 1760, 1760, 1760, 1761, 0, 1761, 1762, 1762,
2621 1762, 1763, 0, 1763, 1764, 1764, 1764, 1765, 1765, 0,
2622 0, 1765, 1766, 1766, 1766, 1767, 1767, 1767, 1768, 1768,
2623 1768, 1769, 1769, 0, 1769, 1770, 1770, 1770, 1771, 0,
2624 1771, 1772, 1772, 1772, 1773, 1773, 1773, 1774, 0, 1774,
2625
2626 1775, 0, 1775, 1776, 1776, 1776, 1777, 1777, 1777, 1778,
2627 0, 1778, 1779, 0, 1779, 1780, 0, 1780, 1781, 1781,
2628 1781, 1782, 1782, 1782, 1783, 0, 1783, 1784, 0, 1784,
2629 1785, 0, 1785, 1786, 1786, 1786, 1787, 1787, 1787, 1788,
2630 0, 1788, 1789, 0, 1789, 1790, 0, 1790, 1791, 1791,
2631 1791, 1792, 1792, 1792, 1793, 0, 1793, 1794, 0, 0,
2632 1794, 1795, 1795, 0, 1795, 1796, 1796, 0, 0, 1796,
2633 1797, 1797, 0, 1797, 1798, 1798, 1799, 1799, 0, 0,
2634 1799, 1800, 1800, 1800, 1801, 0, 1801, 1802, 1802, 0,
2635 1802, 1803, 1803, 1803, 0, 1803, 1803, 1804, 1804, 1804,
2636
2637 1805, 1805, 1805, 1806, 0, 1806, 1807, 0, 1807, 1808,
2638 0, 1808, 1809, 0, 1809, 1810, 0, 1810, 1811, 0,
2639 1811, 1812, 0, 1812, 1813, 1813, 1813, 1814, 1814, 1814,
2640 1815, 0, 1815, 1816, 1816, 0, 0, 1816, 1817, 1817,
2641 0, 1817, 1818, 1818, 1819, 0, 1819, 1820, 0, 0,
2642 1820, 1821, 1821, 0, 1821, 1822, 1822, 0, 0, 1822,
2643 1823, 1823, 0, 1823, 1824, 1824, 1825, 0, 1825, 1826,
2644 0, 1826, 1827, 0, 0, 1827, 1828, 1828, 0, 1828,
2645 1829, 1829, 0, 0, 1829, 1830, 1830, 0, 1830, 1831,
2646 1831, 1832, 0, 1832, 1833, 0, 1833, 1834, 0, 0,
2647
2648 1834, 1835, 1835, 0, 1835, 1836, 1836, 0, 0, 1836,
2649 1837, 1837, 0, 1837, 1838, 1838, 1839, 0, 1839, 1840,
2650 0, 1840, 1841, 0, 0, 1841, 1842, 1842, 0, 1842,
2651 1843, 1843, 0, 0, 1843, 1844, 1844, 0, 1844, 1845,
2652 1845, 1846, 0, 1846, 1847, 0, 1847, 1848, 0, 1848,
2653 1849, 0, 1849, 1850, 1850, 1850, 1851, 0, 1851, 1852,
2654 1852, 1852, 0, 1852, 1852, 1853, 0, 1853, 1854, 0,
2655 1854, 1855, 0, 1855, 1856, 0, 1856, 1857, 0, 1857,
2656 1858, 0, 1858, 1859, 0, 1859, 1860, 1860, 0, 0,
2657 1860, 1861, 1861, 0, 1861, 1862, 1862, 1863, 0, 1863,
2658
2659 1864, 0, 1864, 1865, 0, 1865, 1866, 0, 1866, 1867,
2660 0, 1867, 1868, 0, 1868, 1869, 0, 1869, 1870, 0,
2661 1870, 1871, 0, 1871, 1872, 0, 1872, 1873, 0, 0,
2662 1873, 1874, 1874, 0, 0, 1874, 1875, 0, 1875, 1876,
2663 0, 1876, 1877, 0, 1877, 1878, 0, 0, 1878, 1879,
2664 0, 0, 1879, 1880, 0, 0, 1880, 1881, 0, 0,
2665 1881, 1882, 0, 0, 1882, 1883, 0, 1883, 1884, 0,
2666 1884, 1885, 0, 0, 1885, 1886, 0, 1886, 1887, 0,
2667 1887, 1888, 0, 1888, 1889, 0, 1889, 1890, 0, 1890,
2668 1891, 0, 0, 1891, 1892, 0, 1892, 1893, 0, 1893,
2669
2670 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
2671 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
2672 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
2673 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
2674 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
2675 1433, 1433, 1433, 1433
2676 } ;
2677
2678 static __thread yy_state_type yy_last_accepting_state;
2679 static char *yy_last_accepting_cpos;
2680
2681 extern __thread int sfbpf__flex_debug;
2682 __thread int sfbpf__flex_debug = 0;
2683
2684 /* The intent behind this definition is that it'll catch
2685 * any uses of REJECT which flex missed.
2686 */
2687 #define REJECT reject_used_but_not_detected
2688 #define yymore() yymore_used_but_not_detected
2689 #define YY_MORE_ADJ 0
2690 #define YY_RESTORE_YY_MORE_OFFSET
2691 __thread char *sfbpf_text;
2692 #line 1 "./scanner.l"
2693 #line 2 "./scanner.l"
2694 /*
2695 * Copyright (c) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
2696 * The Regents of the University of California. All rights reserved.
2697 *
2698 * Redistribution and use in source and binary forms, with or without
2699 * modification, are permitted provided that: (1) source code distributions
2700 * retain the above copyright notice and this paragraph in its entirety, (2)
2701 * distributions including binary code include the above copyright notice and
2702 * this paragraph in its entirety in the documentation or other materials
2703 * provided with the distribution, and (3) all advertising materials mentioning
2704 * features or use of this software display the following acknowledgement:
2705 * ``This product includes software developed by the University of California,
2706 * Lawrence Berkeley Laboratory and its contributors.'' Neither the name of
2707 * the University nor the names of its contributors may be used to endorse
2708 * or promote products derived from this software without specific prior
2709 * written permission.
2710 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
2711 * WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
2712 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
2713 */
2714
2715 #ifndef lint
2716 static const char __attribute__ ((unused)) rcsid[] =
2717 "@(#) $Header: /usr/cvsroot/sfeng/ims/src/libraries/daq/daq/sfbpf/scanner.l,v 1.2 2010/05/06 19:13:25 maltizer Exp $ (LBL)";
2718 #endif
2719
2720 #ifdef HAVE_CONFIG_H
2721 #include "config.h"
2722 #endif
2723
2724 #ifdef WIN32
2725 #include "win32-stdinc.h"
2726 #else /* WIN32 */
2727 #if HAVE_INTTYPES_H
2728 #include <inttypes.h>
2729 #elif HAVE_STDINT_H
2730 #include <stdint.h>
2731 #endif
2732 #ifdef HAVE_SYS_BITYPES_H
2733 #include <sys/bitypes.h>
2734 #endif
2735 #include <sys/types.h>
2736 #endif /* WIN32 */
2737
2738 #include <ctype.h>
2739 #include <string.h>
2740
2741 #include "sfbpf-int.h"
2742
2743 #include "gencode.h"
2744 #ifdef INET6
2745 #ifdef WIN32
2746 #include "win32-stdinc.h"
2747
2748 #ifdef __MINGW32__
2749 #include "IP6_misc.h"
2750 #endif
2751 #else /* WIN32 */
2752 #include <sys/socket.h> /* for "struct sockaddr" in "struct addrinfo" */
2753 #include <netdb.h> /* for "struct addrinfo" */
2754 #endif /* WIN32 */
2755
2756 /* Workaround for AIX 4.3 */
2757 #if !defined(AI_NUMERICHOST)
2758 #define AI_NUMERICHOST 0x04
2759 #endif
2760 #endif /*INET6*/
2761 #include "namedb.h"
2762 #include "tokdefs.h"
2763
2764 static int stoi(char *);
2765 static inline int xdtoi(int);
2766
2767 #ifdef FLEX_SCANNER
2768 #define YY_NO_UNPUT
2769 static __thread YY_BUFFER_STATE in_buffer;
2770 #else
2771 static __thread const char *in_buffer;
2772
2773 #undef getc
2774 #define getc(fp) (*in_buffer == 0 ? EOF : *in_buffer++)
2775 #endif
2776
2777 #define yylval pcap_lval
2778 extern __thread YYSTYPE yylval;
2779
2780 #line 2781 "sf_scanner.c"
2781
2782 #define INITIAL 0
2783
2784 #ifndef YY_NO_UNISTD_H
2785 /* Special case for "unistd.h", since it is non-ANSI. We include it way
2786 * down here because we want the user's section 1 to have been scanned first.
2787 * The user has a chance to override it with an option.
2788 */
2789 #include <unistd.h>
2790 #endif
2791
2792 #ifndef YY_EXTRA_TYPE
2793 #define YY_EXTRA_TYPE void *
2794 #endif
2795
2796 static int yy_init_globals (void );
2797
2798 /* Accessor methods to globals.
2799 These are made visible to non-reentrant scanners for convenience. */
2800
2801 int sfbpf_lex_destroy (void );
2802
2803 int sfbpf_get_debug (void );
2804
2805 void sfbpf_set_debug (int debug_flag );
2806
2807 YY_EXTRA_TYPE sfbpf_get_extra (void );
2808
2809 void sfbpf_set_extra (YY_EXTRA_TYPE user_defined );
2810
2811 /* Macros after this point can all be overridden by user definitions in
2812 * section 1.
2813 */
2814
2815 #ifndef YY_SKIP_YYWRAP
2816 #ifdef __cplusplus
2817 extern "C" int sfbpf_wrap (void );
2818 #else
2819 extern int sfbpf_wrap (void );
2820 #endif
2821 #endif
2822
2823 #ifndef yytext_ptr
2824 static void yy_flex_strncpy (char *,yyconst char *,int );
2825 #endif
2826
2827 #ifdef YY_NEED_STRLEN
2828 static int yy_flex_strlen (yyconst char * );
2829 #endif
2830
2831 #ifndef YY_NO_INPUT
2832
2833 #ifdef __cplusplus
2834 static int yyinput (void );
2835 #else
2836 static int input (void );
2837 #endif
2838
2839 #endif
2840
2841 /* Amount of stuff to slurp up with each read. */
2842 #ifndef YY_READ_BUF_SIZE
2843 #ifdef __ia64__
2844 /* On IA-64, the buffer size is 16k, not 8k */
2845 #define YY_READ_BUF_SIZE 16384
2846 #else
2847 #define YY_READ_BUF_SIZE 8192
2848 #endif /* __ia64__ */
2849 #endif
2850
2851 /* Copy whatever the last rule matched to the standard output. */
2852 #ifndef ECHO
2853 /* This used to be an fputs(), but since the string might contain NUL's,
2854 * we now use fwrite().
2855 */
2856 #define ECHO do { if (fwrite( sfbpf_text, sfbpf_leng, 1, sfbpf_out )) {} } while (0)
2857 #endif
2858
2859 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
2860 * is returned in "result".
2861 */
2862 #ifndef YY_INPUT
2863 #define YY_INPUT(buf,result,max_size) \
2864 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
2865 { \
2866 int c = '*'; \
2867 size_t n; \
2868 for ( n = 0; n < max_size && \
2869 (c = getc( sfbpf_in )) != EOF && c != '\n'; ++n ) \
2870 buf[n] = (char) c; \
2871 if ( c == '\n' ) \
2872 buf[n++] = (char) c; \
2873 if ( c == EOF && ferror( sfbpf_in ) ) \
2874 YY_FATAL_ERROR( "input in flex scanner failed" ); \
2875 result = n; \
2876 } \
2877 else \
2878 { \
2879 errno=0; \
2880 while ( (result = fread(buf, 1, max_size, sfbpf_in))==0 && ferror(sfbpf_in)) \
2881 { \
2882 if( errno != EINTR) \
2883 { \
2884 YY_FATAL_ERROR( "input in flex scanner failed" ); \
2885 break; \
2886 } \
2887 errno=0; \
2888 clearerr(sfbpf_in); \
2889 } \
2890 }\
2891 \
2892
2893 #endif
2894
2895 /* No semi-colon after return; correct usage is to write "yyterminate();" -
2896 * we don't want an extra ';' after the "return" because that will cause
2897 * some compilers to complain about unreachable statements.
2898 */
2899 #ifndef yyterminate
2900 #define yyterminate() return YY_NULL
2901 #endif
2902
2903 /* Number of entries by which start-condition stack grows. */
2904 #ifndef YY_START_STACK_INCR
2905 #define YY_START_STACK_INCR 25
2906 #endif
2907
2908 /* Report a fatal error. */
2909 #ifndef YY_FATAL_ERROR
2910 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2911 #endif
2912
2913 /* end tables serialization structures and prototypes */
2914
2915 /* Default declaration of generated scanner - a define so the user can
2916 * easily add parameters.
2917 */
2918 #ifndef YY_DECL
2919 #define YY_DECL_IS_OURS 1
2920
2921 extern int sfbpf_lex (void);
2922
2923 #define YY_DECL int sfbpf_lex (void)
2924 #endif /* !YY_DECL */
2925
2926 /* Code executed at the beginning of each rule, after sfbpf_text and sfbpf_leng
2927 * have been set up.
2928 */
2929 #ifndef YY_USER_ACTION
2930 #define YY_USER_ACTION
2931 #endif
2932
2933 /* Code executed at the end of each rule. */
2934 #ifndef YY_BREAK
2935 #define YY_BREAK break;
2936 #endif
2937
2938 #define YY_RULE_SETUP \
2939 YY_USER_ACTION
2940
2941 /** The main scanner function which does all the work.
2942 */
2943 YY_DECL
2944 {
2945 register yy_state_type yy_current_state;
2946 register char *yy_cp, *yy_bp;
2947 register int yy_act;
2948
2949 #line 184 "./scanner.l"
2950
2951 #line 2952 "sf_scanner.c"
2952
2953 if ( !(yy_init) )
2954 {
2955 (yy_init) = 1;
2956
2957 #ifdef YY_USER_INIT
2958 YY_USER_INIT;
2959 #endif
2960
2961 if ( ! (yy_start) )
2962 (yy_start) = 1; /* first start state */
2963
2964 if ( ! sfbpf_in )
2965 sfbpf_in = stdin;
2966
2967 if ( ! sfbpf_out )
2968 sfbpf_out = stdout;
2969
2970 if ( ! YY_CURRENT_BUFFER ) {
2971 sfbpf_ensure_buffer_stack ();
2972 YY_CURRENT_BUFFER_LVALUE =
2973 sfbpf__create_buffer(sfbpf_in,YY_BUF_SIZE );
2974 }
2975
2976 sfbpf__load_buffer_state( );
2977 }
2978
2979 while ( 1 ) /* loops until end-of-file is reached */
2980 {
2981 yy_cp = (yy_c_buf_p);
2982
2983 /* Support of sfbpf_text. */
2984 *yy_cp = (yy_hold_char);
2985
2986 /* yy_bp points to the position in yy_ch_buf of the start of
2987 * the current run.
2988 */
2989 yy_bp = yy_cp;
2990
2991 yy_current_state = (yy_start);
2992 yy_match:
2993 do
2994 {
2995 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
2996 if ( yy_accept[yy_current_state] )
2997 {
2998 (yy_last_accepting_state) = yy_current_state;
2999 (yy_last_accepting_cpos) = yy_cp;
3000 }
3001 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3002 {
3003 yy_current_state = (int) yy_def[yy_current_state];
3004 if ( yy_current_state >= 1434 )
3005 yy_c = yy_meta[(unsigned int) yy_c];
3006 }
3007 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
3008 ++yy_cp;
3009 }
3010 while ( yy_base[yy_current_state] != 7401 );
3011
3012 yy_find_action:
3013 yy_act = yy_accept[yy_current_state];
3014 if ( yy_act == 0 )
3015 { /* have to back up */
3016 yy_cp = (yy_last_accepting_cpos);
3017 yy_current_state = (yy_last_accepting_state);
3018 yy_act = yy_accept[yy_current_state];
3019 }
3020
3021 YY_DO_BEFORE_ACTION;
3022
3023 do_action: /* This label is used only to access EOF actions. */
3024
3025 switch ( yy_act )
3026 { /* beginning of action switch */
3027 case 0: /* must back up */
3028 /* undo the effects of YY_DO_BEFORE_ACTION */
3029 *yy_cp = (yy_hold_char);
3030 yy_cp = (yy_last_accepting_cpos);
3031 yy_current_state = (yy_last_accepting_state);
3032 goto yy_find_action;
3033
3034 case 1:
3035 YY_RULE_SETUP
3036 #line 185 "./scanner.l"
3037 return DST;
3038 YY_BREAK
3039 case 2:
3040 YY_RULE_SETUP
3041 #line 186 "./scanner.l"
3042 return SRC;
3043 YY_BREAK
3044 case 3:
3045 YY_RULE_SETUP
3046 #line 188 "./scanner.l"
3047 return LINK;
3048 YY_BREAK
3049 case 4:
3050 YY_RULE_SETUP
3051 #line 189 "./scanner.l"
3052 return LINK;
3053 YY_BREAK
3054 case 5:
3055 YY_RULE_SETUP
3056 #line 190 "./scanner.l"
3057 return ARP;
3058 YY_BREAK
3059 case 6:
3060 YY_RULE_SETUP
3061 #line 191 "./scanner.l"
3062 return RARP;
3063 YY_BREAK
3064 case 7:
3065 YY_RULE_SETUP
3066 #line 192 "./scanner.l"
3067 return IP;
3068 YY_BREAK
3069 case 8:
3070 YY_RULE_SETUP
3071 #line 193 "./scanner.l"
3072 return SCTP;
3073 YY_BREAK
3074 case 9:
3075 YY_RULE_SETUP
3076 #line 194 "./scanner.l"
3077 return TCP;
3078 YY_BREAK
3079 case 10:
3080 YY_RULE_SETUP
3081 #line 195 "./scanner.l"
3082 return UDP;
3083 YY_BREAK
3084 case 11:
3085 YY_RULE_SETUP
3086 #line 196 "./scanner.l"
3087 return ICMP;
3088 YY_BREAK
3089 case 12:
3090 YY_RULE_SETUP
3091 #line 197 "./scanner.l"
3092 return IGMP;
3093 YY_BREAK
3094 case 13:
3095 YY_RULE_SETUP
3096 #line 198 "./scanner.l"
3097 return IGRP;
3098 YY_BREAK
3099 case 14:
3100 YY_RULE_SETUP
3101 #line 199 "./scanner.l"
3102 return PIM;
3103 YY_BREAK
3104 case 15:
3105 YY_RULE_SETUP
3106 #line 200 "./scanner.l"
3107 return VRRP;
3108 YY_BREAK
3109 case 16:
3110 YY_RULE_SETUP
3111 #line 201 "./scanner.l"
3112 return RADIO;
3113 YY_BREAK
3114 case 17:
3115 YY_RULE_SETUP
3116 #line 203 "./scanner.l"
3117 {
3118 #ifdef INET6
3119 return IPV6;
3120 #else
3121 bpf_error("%s not supported", sfbpf_text);
3122 #endif
3123 }
3124 YY_BREAK
3125 case 18:
3126 YY_RULE_SETUP
3127 #line 210 "./scanner.l"
3128 {
3129 #ifdef INET6
3130 return ICMPV6;
3131 #else
3132 bpf_error("%s not supported", sfbpf_text);
3133 #endif
3134 }
3135 YY_BREAK
3136 case 19:
3137 YY_RULE_SETUP
3138 #line 217 "./scanner.l"
3139 return AH;
3140 YY_BREAK
3141 case 20:
3142 YY_RULE_SETUP
3143 #line 218 "./scanner.l"
3144 return ESP;
3145 YY_BREAK
3146 case 21:
3147 YY_RULE_SETUP
3148 #line 220 "./scanner.l"
3149 return ATALK;
3150 YY_BREAK
3151 case 22:
3152 YY_RULE_SETUP
3153 #line 221 "./scanner.l"
3154 return AARP;
3155 YY_BREAK
3156 case 23:
3157 YY_RULE_SETUP
3158 #line 222 "./scanner.l"
3159 return DECNET;
3160 YY_BREAK
3161 case 24:
3162 YY_RULE_SETUP
3163 #line 223 "./scanner.l"
3164 return LAT;
3165 YY_BREAK
3166 case 25:
3167 YY_RULE_SETUP
3168 #line 224 "./scanner.l"
3169 return SCA;
3170 YY_BREAK
3171 case 26:
3172 YY_RULE_SETUP
3173 #line 225 "./scanner.l"
3174 return MOPRC;
3175 YY_BREAK
3176 case 27:
3177 YY_RULE_SETUP
3178 #line 226 "./scanner.l"
3179 return MOPDL;
3180 YY_BREAK
3181 case 28:
3182 YY_RULE_SETUP
3183 #line 228 "./scanner.l"
3184 return ISO;
3185 YY_BREAK
3186 case 29:
3187 YY_RULE_SETUP
3188 #line 229 "./scanner.l"
3189 return ESIS;
3190 YY_BREAK
3191 case 30:
3192 YY_RULE_SETUP
3193 #line 230 "./scanner.l"
3194 return ESIS;
3195 YY_BREAK
3196 case 31:
3197 YY_RULE_SETUP
3198 #line 231 "./scanner.l"
3199 return ISIS;
3200 YY_BREAK
3201 case 32:
3202 YY_RULE_SETUP
3203 #line 232 "./scanner.l"
3204 return ISIS;
3205 YY_BREAK
3206 case 33:
3207 YY_RULE_SETUP
3208 #line 233 "./scanner.l"
3209 return L1;
3210 YY_BREAK
3211 case 34:
3212 YY_RULE_SETUP
3213 #line 234 "./scanner.l"
3214 return L2;
3215 YY_BREAK
3216 case 35:
3217 YY_RULE_SETUP
3218 #line 235 "./scanner.l"
3219 return IIH;
3220 YY_BREAK
3221 case 36:
3222 YY_RULE_SETUP
3223 #line 236 "./scanner.l"
3224 return LSP;
3225 YY_BREAK
3226 case 37:
3227 YY_RULE_SETUP
3228 #line 237 "./scanner.l"
3229 return SNP;
3230 YY_BREAK
3231 case 38:
3232 YY_RULE_SETUP
3233 #line 238 "./scanner.l"
3234 return CSNP;
3235 YY_BREAK
3236 case 39:
3237 YY_RULE_SETUP
3238 #line 239 "./scanner.l"
3239 return PSNP;
3240 YY_BREAK
3241 case 40:
3242 YY_RULE_SETUP
3243 #line 241 "./scanner.l"
3244 return CLNP;
3245 YY_BREAK
3246 case 41:
3247 YY_RULE_SETUP
3248 #line 243 "./scanner.l"
3249 return STP;
3250 YY_BREAK
3251 case 42:
3252 YY_RULE_SETUP
3253 #line 245 "./scanner.l"
3254 return IPX;
3255 YY_BREAK
3256 case 43:
3257 YY_RULE_SETUP
3258 #line 247 "./scanner.l"
3259 return NETBEUI;
3260 YY_BREAK
3261 case 44:
3262 YY_RULE_SETUP
3263 #line 249 "./scanner.l"
3264 return HOST;
3265 YY_BREAK
3266 case 45:
3267 YY_RULE_SETUP
3268 #line 250 "./scanner.l"
3269 return NET;
3270 YY_BREAK
3271 case 46:
3272 YY_RULE_SETUP
3273 #line 251 "./scanner.l"
3274 return NETMASK;
3275 YY_BREAK
3276 case 47:
3277 YY_RULE_SETUP
3278 #line 252 "./scanner.l"
3279 return PORT;
3280 YY_BREAK
3281 case 48:
3282 YY_RULE_SETUP
3283 #line 253 "./scanner.l"
3284 return PORTRANGE;
3285 YY_BREAK
3286 case 49:
3287 YY_RULE_SETUP
3288 #line 254 "./scanner.l"
3289 return PROTO;
3290 YY_BREAK
3291 case 50:
3292 YY_RULE_SETUP
3293 #line 255 "./scanner.l"
3294 {
3295 #ifdef NO_PROTOCHAIN
3296 bpf_error("%s not supported", sfbpf_text);
3297 #else
3298 return PROTOCHAIN;
3299 #endif
3300 }
3301 YY_BREAK
3302 case 51:
3303 YY_RULE_SETUP
3304 #line 263 "./scanner.l"
3305 return GATEWAY;
3306 YY_BREAK
3307 case 52:
3308 YY_RULE_SETUP
3309 #line 265 "./scanner.l"
3310 return TYPE;
3311 YY_BREAK
3312 case 53:
3313 YY_RULE_SETUP
3314 #line 266 "./scanner.l"
3315 return SUBTYPE;
3316 YY_BREAK
3317 case 54:
3318 YY_RULE_SETUP
3319 #line 267 "./scanner.l"
3320 return DIR;
3321 YY_BREAK
3322 case 55:
3323 YY_RULE_SETUP
3324 #line 268 "./scanner.l"
3325 return ADDR1;
3326 YY_BREAK
3327 case 56:
3328 YY_RULE_SETUP
3329 #line 269 "./scanner.l"
3330 return ADDR2;
3331 YY_BREAK
3332 case 57:
3333 YY_RULE_SETUP
3334 #line 270 "./scanner.l"
3335 return ADDR3;
3336 YY_BREAK
3337 case 58:
3338 YY_RULE_SETUP
3339 #line 271 "./scanner.l"
3340 return ADDR4;
3341 YY_BREAK
3342 case 59:
3343 YY_RULE_SETUP
3344 #line 273 "./scanner.l"
3345 return LESS;
3346 YY_BREAK
3347 case 60:
3348 YY_RULE_SETUP
3349 #line 274 "./scanner.l"
3350 return GREATER;
3351 YY_BREAK
3352 case 61:
3353 YY_RULE_SETUP
3354 #line 275 "./scanner.l"
3355 return CBYTE;
3356 YY_BREAK
3357 case 62:
3358 YY_RULE_SETUP
3359 #line 276 "./scanner.l"
3360 return TK_BROADCAST;
3361 YY_BREAK
3362 case 63:
3363 YY_RULE_SETUP
3364 #line 277 "./scanner.l"
3365 return TK_MULTICAST;
3366 YY_BREAK
3367 case 64:
3368 YY_RULE_SETUP
3369 #line 279 "./scanner.l"
3370 return AND;
3371 YY_BREAK
3372 case 65:
3373 YY_RULE_SETUP
3374 #line 280 "./scanner.l"
3375 return OR;
3376 YY_BREAK
3377 case 66:
3378 YY_RULE_SETUP
3379 #line 281 "./scanner.l"
3380 return '!';
3381 YY_BREAK
3382 case 67:
3383 YY_RULE_SETUP
3384 #line 283 "./scanner.l"
3385 return LEN;
3386 YY_BREAK
3387 case 68:
3388 YY_RULE_SETUP
3389 #line 284 "./scanner.l"
3390 return INBOUND;
3391 YY_BREAK
3392 case 69:
3393 YY_RULE_SETUP
3394 #line 285 "./scanner.l"
3395 return OUTBOUND;
3396 YY_BREAK
3397 case 70:
3398 YY_RULE_SETUP
3399 #line 287 "./scanner.l"
3400 return VLAN;
3401 YY_BREAK
3402 case 71:
3403 YY_RULE_SETUP
3404 #line 288 "./scanner.l"
3405 return MPLS;
3406 YY_BREAK
3407 case 72:
3408 YY_RULE_SETUP
3409 #line 289 "./scanner.l"
3410 return PPPOED;
3411 YY_BREAK
3412 case 73:
3413 YY_RULE_SETUP
3414 #line 290 "./scanner.l"
3415 return PPPOES;
3416 YY_BREAK
3417 case 74:
3418 YY_RULE_SETUP
3419 #line 292 "./scanner.l"
3420 return LANE;
3421 YY_BREAK
3422 case 75:
3423 YY_RULE_SETUP
3424 #line 293 "./scanner.l"
3425 return LLC;
3426 YY_BREAK
3427 case 76:
3428 YY_RULE_SETUP
3429 #line 294 "./scanner.l"
3430 return METAC;
3431 YY_BREAK
3432 case 77:
3433 YY_RULE_SETUP
3434 #line 295 "./scanner.l"
3435 return BCC;
3436 YY_BREAK
3437 case 78:
3438 YY_RULE_SETUP
3439 #line 296 "./scanner.l"
3440 return OAM;
3441 YY_BREAK
3442 case 79:
3443 YY_RULE_SETUP
3444 #line 297 "./scanner.l"
3445 return OAMF4;
3446 YY_BREAK
3447 case 80:
3448 YY_RULE_SETUP
3449 #line 298 "./scanner.l"
3450 return OAMF4EC;
3451 YY_BREAK
3452 case 81:
3453 YY_RULE_SETUP
3454 #line 299 "./scanner.l"
3455 return OAMF4SC;
3456 YY_BREAK
3457 case 82:
3458 YY_RULE_SETUP
3459 #line 300 "./scanner.l"
3460 return SC;
3461 YY_BREAK
3462 case 83:
3463 YY_RULE_SETUP
3464 #line 301 "./scanner.l"
3465 return ILMIC;
3466 YY_BREAK
3467 case 84:
3468 YY_RULE_SETUP
3469 #line 302 "./scanner.l"
3470 return VPI;
3471 YY_BREAK
3472 case 85:
3473 YY_RULE_SETUP
3474 #line 303 "./scanner.l"
3475 return VCI;
3476 YY_BREAK
3477 case 86:
3478 YY_RULE_SETUP
3479 #line 304 "./scanner.l"
3480 return CONNECTMSG;
3481 YY_BREAK
3482 case 87:
3483 YY_RULE_SETUP
3484 #line 305 "./scanner.l"
3485 return METACONNECT;
3486 YY_BREAK
3487 case 88:
3488 YY_RULE_SETUP
3489 #line 307 "./scanner.l"
3490 return PF_IFNAME;
3491 YY_BREAK
3492 case 89:
3493 YY_RULE_SETUP
3494 #line 308 "./scanner.l"
3495 return PF_RSET;
3496 YY_BREAK
3497 case 90:
3498 YY_RULE_SETUP
3499 #line 309 "./scanner.l"
3500 return PF_RNR;
3501 YY_BREAK
3502 case 91:
3503 YY_RULE_SETUP
3504 #line 310 "./scanner.l"
3505 return PF_SRNR;
3506 YY_BREAK
3507 case 92:
3508 YY_RULE_SETUP
3509 #line 311 "./scanner.l"
3510 return PF_REASON;
3511 YY_BREAK
3512 case 93:
3513 YY_RULE_SETUP
3514 #line 312 "./scanner.l"
3515 return PF_ACTION;
3516 YY_BREAK
3517 case 94:
3518 YY_RULE_SETUP
3519 #line 314 "./scanner.l"
3520 return FISU;
3521 YY_BREAK
3522 case 95:
3523 YY_RULE_SETUP
3524 #line 315 "./scanner.l"
3525 return LSSU;
3526 YY_BREAK
3527 case 96:
3528 YY_RULE_SETUP
3529 #line 316 "./scanner.l"
3530 return LSSU;
3531 YY_BREAK
3532 case 97:
3533 YY_RULE_SETUP
3534 #line 317 "./scanner.l"
3535 return MSU;
3536 YY_BREAK
3537 case 98:
3538 YY_RULE_SETUP
3539 #line 318 "./scanner.l"
3540 return SIO;
3541 YY_BREAK
3542 case 99:
3543 YY_RULE_SETUP
3544 #line 319 "./scanner.l"
3545 return OPC;
3546 YY_BREAK
3547 case 100:
3548 YY_RULE_SETUP
3549 #line 320 "./scanner.l"
3550 return DPC;
3551 YY_BREAK
3552 case 101:
3553 YY_RULE_SETUP
3554 #line 321 "./scanner.l"
3555 return SLS;
3556 YY_BREAK
3557 case 102:
3558 /* rule 102 can match eol */
3559 YY_RULE_SETUP
3560 #line 323 "./scanner.l"
3561 ;
3562 YY_BREAK
3563 case 103:
3564 YY_RULE_SETUP
3565 #line 324 "./scanner.l"
3566 return sfbpf_text[0];
3567 YY_BREAK
3568 case 104:
3569 YY_RULE_SETUP
3570 #line 325 "./scanner.l"
3571 return GEQ;
3572 YY_BREAK
3573 case 105:
3574 YY_RULE_SETUP
3575 #line 326 "./scanner.l"
3576 return LEQ;
3577 YY_BREAK
3578 case 106:
3579 YY_RULE_SETUP
3580 #line 327 "./scanner.l"
3581 return NEQ;
3582 YY_BREAK
3583 case 107:
3584 YY_RULE_SETUP
3585 #line 328 "./scanner.l"
3586 return '=';
3587 YY_BREAK
3588 case 108:
3589 YY_RULE_SETUP
3590 #line 329 "./scanner.l"
3591 return LSH;
3592 YY_BREAK
3593 case 109:
3594 YY_RULE_SETUP
3595 #line 330 "./scanner.l"
3596 return RSH;
3597 YY_BREAK
3598 case 110:
3599 YY_RULE_SETUP
3600 #line 331 "./scanner.l"
3601 { yylval.e = pcap_ether_aton(((char *)sfbpf_text)+1);
3602 return AID; }
3603 YY_BREAK
3604 case 111:
3605 YY_RULE_SETUP
3606 #line 333 "./scanner.l"
3607 { yylval.e = pcap_ether_aton((char *)sfbpf_text);
3608 return EID; }
3609 YY_BREAK
3610 case 112:
3611 YY_RULE_SETUP
3612 #line 335 "./scanner.l"
3613 { yylval.i = stoi((char *)sfbpf_text); return NUM; }
3614 YY_BREAK
3615 case 113:
3616 YY_RULE_SETUP
3617 #line 336 "./scanner.l"
3618 {
3619 yylval.s = sdup((char *)sfbpf_text); return HID; }
3620 YY_BREAK
3621 case 114:
3622 YY_RULE_SETUP
3623 #line 338 "./scanner.l"
3624 {
3625 #ifdef INET6
3626 struct addrinfo hints, *res;
3627 memset(&hints, 0, sizeof(hints));
3628 hints.ai_family = AF_INET6;
3629 hints.ai_flags = AI_NUMERICHOST;
3630 if (getaddrinfo(sfbpf_text, NULL, &hints, &res))
3631 bpf_error("bogus IPv6 address %s", sfbpf_text);
3632 else {
3633 freeaddrinfo(res);
3634 yylval.s = sdup((char *)sfbpf_text); return HID6;
3635 }
3636 #else
3637 bpf_error("IPv6 address %s not supported", sfbpf_text);
3638 #endif /*INET6*/
3639 }
3640 YY_BREAK
3641 case 115:
3642 YY_RULE_SETUP
3643 #line 354 "./scanner.l"
3644 { bpf_error("bogus ethernet address %s", sfbpf_text); }
3645 YY_BREAK
3646 case 116:
3647 YY_RULE_SETUP
3648 #line 355 "./scanner.l"
3649 { yylval.i = 0; return NUM; }
3650 YY_BREAK
3651 case 117:
3652 YY_RULE_SETUP
3653 #line 356 "./scanner.l"
3654 { yylval.i = 1; return NUM; }
3655 YY_BREAK
3656 case 118:
3657 YY_RULE_SETUP
3658 #line 357 "./scanner.l"
3659 { yylval.i = 0; return NUM; }
3660 YY_BREAK
3661 case 119:
3662 YY_RULE_SETUP
3663 #line 358 "./scanner.l"
3664 { yylval.i = 3; return NUM; }
3665 YY_BREAK
3666 case 120:
3667 YY_RULE_SETUP
3668 #line 359 "./scanner.l"
3669 { yylval.i = 4; return NUM; }
3670 YY_BREAK
3671 case 121:
3672 YY_RULE_SETUP
3673 #line 360 "./scanner.l"
3674 { yylval.i = 5; return NUM; }
3675 YY_BREAK
3676 case 122:
3677 YY_RULE_SETUP
3678 #line 361 "./scanner.l"
3679 { yylval.i = 8; return NUM; }
3680 YY_BREAK
3681 case 123:
3682 YY_RULE_SETUP
3683 #line 362 "./scanner.l"
3684 { yylval.i = 9; return NUM; }
3685 YY_BREAK
3686 case 124:
3687 YY_RULE_SETUP
3688 #line 363 "./scanner.l"
3689 { yylval.i = 10; return NUM; }
3690 YY_BREAK
3691 case 125:
3692 YY_RULE_SETUP
3693 #line 364 "./scanner.l"
3694 { yylval.i = 11; return NUM; }
3695 YY_BREAK
3696 case 126:
3697 YY_RULE_SETUP
3698 #line 365 "./scanner.l"
3699 { yylval.i = 12; return NUM; }
3700 YY_BREAK
3701 case 127:
3702 YY_RULE_SETUP
3703 #line 366 "./scanner.l"
3704 { yylval.i = 13; return NUM; }
3705 YY_BREAK
3706 case 128:
3707 YY_RULE_SETUP
3708 #line 367 "./scanner.l"
3709 { yylval.i = 14; return NUM; }
3710 YY_BREAK
3711 case 129:
3712 YY_RULE_SETUP
3713 #line 368 "./scanner.l"
3714 { yylval.i = 15; return NUM; }
3715 YY_BREAK
3716 case 130:
3717 YY_RULE_SETUP
3718 #line 369 "./scanner.l"
3719 { yylval.i = 16; return NUM; }
3720 YY_BREAK
3721 case 131:
3722 YY_RULE_SETUP
3723 #line 370 "./scanner.l"
3724 { yylval.i = 17; return NUM; }
3725 YY_BREAK
3726 case 132:
3727 YY_RULE_SETUP
3728 #line 371 "./scanner.l"
3729 { yylval.i = 18; return NUM; }
3730 YY_BREAK
3731 case 133:
3732 YY_RULE_SETUP
3733 #line 372 "./scanner.l"
3734 { yylval.i = 13; return NUM; }
3735 YY_BREAK
3736 case 134:
3737 YY_RULE_SETUP
3738 #line 373 "./scanner.l"
3739 { yylval.i = 0x01; return NUM; }
3740 YY_BREAK
3741 case 135:
3742 YY_RULE_SETUP
3743 #line 374 "./scanner.l"
3744 { yylval.i = 0x02; return NUM; }
3745 YY_BREAK
3746 case 136:
3747 YY_RULE_SETUP
3748 #line 375 "./scanner.l"
3749 { yylval.i = 0x04; return NUM; }
3750 YY_BREAK
3751 case 137:
3752 YY_RULE_SETUP
3753 #line 376 "./scanner.l"
3754 { yylval.i = 0x08; return NUM; }
3755 YY_BREAK
3756 case 138:
3757 YY_RULE_SETUP
3758 #line 377 "./scanner.l"
3759 { yylval.i = 0x10; return NUM; }
3760 YY_BREAK
3761 case 139:
3762 YY_RULE_SETUP
3763 #line 378 "./scanner.l"
3764 { yylval.i = 0x20; return NUM; }
3765 YY_BREAK
3766 case 140:
3767 YY_RULE_SETUP
3768 #line 379 "./scanner.l"
3769 {
3770 yylval.s = sdup((char *)sfbpf_text); return ID; }
3771 YY_BREAK
3772 case 141:
3773 YY_RULE_SETUP
3774 #line 381 "./scanner.l"
3775 { yylval.s = sdup((char *)sfbpf_text + 1); return ID; }
3776 YY_BREAK
3777 case 142:
3778 YY_RULE_SETUP
3779 #line 382 "./scanner.l"
3780 {
3781 bpf_error("illegal token: %s", sfbpf_text); }
3782 YY_BREAK
3783 case 143:
3784 YY_RULE_SETUP
3785 #line 384 "./scanner.l"
3786 { bpf_error("illegal char '%c'", *sfbpf_text); }
3787 YY_BREAK
3788 case 144:
3789 YY_RULE_SETUP
3790 #line 385 "./scanner.l"
3791 ECHO;
3792 YY_BREAK
3793 #line 3794 "sf_scanner.c"
3794 case YY_STATE_EOF(INITIAL):
3795 yyterminate();
3796
3797 case YY_END_OF_BUFFER:
3798 {
3799 /* Amount of text matched not including the EOB char. */
3800 int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
3801
3802 /* Undo the effects of YY_DO_BEFORE_ACTION. */
3803 *yy_cp = (yy_hold_char);
3804 YY_RESTORE_YY_MORE_OFFSET
3805
3806 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
3807 {
3808 /* We're scanning a new file or input source. It's
3809 * possible that this happened because the user
3810 * just pointed sfbpf_in at a new source and called
3811 * sfbpf_lex(). If so, then we have to assure
3812 * consistency between YY_CURRENT_BUFFER and our
3813 * globals. Here is the right place to do so, because
3814 * this is the first action (other than possibly a
3815 * back-up) that will match for the new input source.
3816 */
3817 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3818 YY_CURRENT_BUFFER_LVALUE->yy_input_file = sfbpf_in;
3819 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
3820 }
3821
3822 /* Note that here we test for yy_c_buf_p "<=" to the position
3823 * of the first EOB in the buffer, since yy_c_buf_p will
3824 * already have been incremented past the NUL character
3825 * (since all states make transitions on EOB to the
3826 * end-of-buffer state). Contrast this with the test
3827 * in input().
3828 */
3829 if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
3830 { /* This was really a NUL. */
3831 yy_state_type yy_next_state;
3832
3833 (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
3834
3835 yy_current_state = yy_get_previous_state( );
3836
3837 /* Okay, we're now positioned to make the NUL
3838 * transition. We couldn't have
3839 * yy_get_previous_state() go ahead and do it
3840 * for us because it doesn't know how to deal
3841 * with the possibility of jamming (and we don't
3842 * want to build jamming into it because then it
3843 * will run more slowly).
3844 */
3845
3846 yy_next_state = yy_try_NUL_trans( yy_current_state );
3847
3848 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3849
3850 if ( yy_next_state )
3851 {
3852 /* Consume the NUL. */
3853 yy_cp = ++(yy_c_buf_p);
3854 yy_current_state = yy_next_state;
3855 goto yy_match;
3856 }
3857
3858 else
3859 {
3860 yy_cp = (yy_c_buf_p);
3861 goto yy_find_action;
3862 }
3863 }
3864
3865 else switch ( yy_get_next_buffer( ) )
3866 {
3867 case EOB_ACT_END_OF_FILE:
3868 {
3869 (yy_did_buffer_switch_on_eof) = 0;
3870
3871 if ( sfbpf_wrap( ) )
3872 {
3873 /* Note: because we've taken care in
3874 * yy_get_next_buffer() to have set up
3875 * sfbpf_text, we can now set up
3876 * yy_c_buf_p so that if some total
3877 * hoser (like flex itself) wants to
3878 * call the scanner after we return the
3879 * YY_NULL, it'll still work - another
3880 * YY_NULL will get returned.
3881 */
3882 (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
3883
3884 yy_act = YY_STATE_EOF(YY_START);
3885 goto do_action;
3886 }
3887
3888 else
3889 {
3890 if ( ! (yy_did_buffer_switch_on_eof) )
3891 YY_NEW_FILE;
3892 }
3893 break;
3894 }
3895
3896 case EOB_ACT_CONTINUE_SCAN:
3897 (yy_c_buf_p) =
3898 (yytext_ptr) + yy_amount_of_matched_text;
3899
3900 yy_current_state = yy_get_previous_state( );
3901
3902 yy_cp = (yy_c_buf_p);
3903 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3904 goto yy_match;
3905
3906 case EOB_ACT_LAST_MATCH:
3907 (yy_c_buf_p) =
3908 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
3909
3910 yy_current_state = yy_get_previous_state( );
3911
3912 yy_cp = (yy_c_buf_p);
3913 yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3914 goto yy_find_action;
3915 }
3916 break;
3917 }
3918
3919 default:
3920 YY_FATAL_ERROR(
3921 "fatal flex scanner internal error--no action found" );
3922 } /* end of action switch */
3923 } /* end of scanning one token */
3924 } /* end of sfbpf_lex */
3925
3926 /* yy_get_next_buffer - try to read in a new buffer
3927 *
3928 * Returns a code representing an action:
3929 * EOB_ACT_LAST_MATCH -
3930 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
3931 * EOB_ACT_END_OF_FILE - end of file
3932 */
yy_get_next_buffer(void)3933 static int yy_get_next_buffer (void)
3934 {
3935 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
3936 register char *source = (yytext_ptr);
3937 register int number_to_move, i;
3938 int ret_val;
3939
3940 if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
3941 YY_FATAL_ERROR(
3942 "fatal flex scanner internal error--end of buffer missed" );
3943
3944 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
3945 { /* Don't try to fill the buffer, so this is an EOF. */
3946 if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
3947 {
3948 /* We matched a single character, the EOB, so
3949 * treat this as a final EOF.
3950 */
3951 return EOB_ACT_END_OF_FILE;
3952 }
3953
3954 else
3955 {
3956 /* We matched some text prior to the EOB, first
3957 * process it.
3958 */
3959 return EOB_ACT_LAST_MATCH;
3960 }
3961 }
3962
3963 /* Try to read more data. */
3964
3965 /* First move last chars to start of buffer. */
3966 number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
3967
3968 for ( i = 0; i < number_to_move; ++i )
3969 *(dest++) = *(source++);
3970
3971 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
3972 /* don't do the read, it's not guaranteed to return an EOF,
3973 * just force an EOF
3974 */
3975 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
3976
3977 else
3978 {
3979 int num_to_read =
3980 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
3981
3982 while ( num_to_read <= 0 )
3983 { /* Not enough room in the buffer - grow it. */
3984
3985 /* just a shorter name for the current buffer */
3986 YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
3987
3988 int yy_c_buf_p_offset =
3989 (int) ((yy_c_buf_p) - b->yy_ch_buf);
3990
3991 if ( b->yy_is_our_buffer )
3992 {
3993 int new_size = b->yy_buf_size * 2;
3994
3995 if ( new_size <= 0 )
3996 b->yy_buf_size += b->yy_buf_size / 8;
3997 else
3998 b->yy_buf_size *= 2;
3999
4000 b->yy_ch_buf = (char *)
4001 /* Include room in for 2 EOB chars. */
4002 sfbpf_realloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 );
4003 }
4004 else
4005 /* Can't grow it, we don't own it. */
4006 b->yy_ch_buf = 0;
4007
4008 if ( ! b->yy_ch_buf )
4009 YY_FATAL_ERROR(
4010 "fatal error - scanner input buffer overflow" );
4011
4012 (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
4013
4014 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
4015 number_to_move - 1;
4016
4017 }
4018
4019 if ( num_to_read > YY_READ_BUF_SIZE )
4020 num_to_read = YY_READ_BUF_SIZE;
4021
4022 /* Read in more data. */
4023 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
4024 (yy_n_chars), (size_t) num_to_read );
4025
4026 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4027 }
4028
4029 if ( (yy_n_chars) == 0 )
4030 {
4031 if ( number_to_move == YY_MORE_ADJ )
4032 {
4033 ret_val = EOB_ACT_END_OF_FILE;
4034 sfbpf_restart(sfbpf_in );
4035 }
4036
4037 else
4038 {
4039 ret_val = EOB_ACT_LAST_MATCH;
4040 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
4041 YY_BUFFER_EOF_PENDING;
4042 }
4043 }
4044
4045 else
4046 ret_val = EOB_ACT_CONTINUE_SCAN;
4047
4048 if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
4049 /* Extend the array by 50%, plus the number we really need. */
4050 yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
4051 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) sfbpf_realloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
4052 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
4053 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
4054 }
4055
4056 (yy_n_chars) += number_to_move;
4057 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
4058 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
4059
4060 (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
4061
4062 return ret_val;
4063 }
4064
4065 /* yy_get_previous_state - get the state just before the EOB char was reached */
4066
yy_get_previous_state(void)4067 static yy_state_type yy_get_previous_state (void)
4068 {
4069 register yy_state_type yy_current_state;
4070 register char *yy_cp;
4071
4072 yy_current_state = (yy_start);
4073
4074 for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
4075 {
4076 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
4077 if ( yy_accept[yy_current_state] )
4078 {
4079 (yy_last_accepting_state) = yy_current_state;
4080 (yy_last_accepting_cpos) = yy_cp;
4081 }
4082 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4083 {
4084 yy_current_state = (int) yy_def[yy_current_state];
4085 if ( yy_current_state >= 1434 )
4086 yy_c = yy_meta[(unsigned int) yy_c];
4087 }
4088 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4089 }
4090
4091 return yy_current_state;
4092 }
4093
4094 /* yy_try_NUL_trans - try to make a transition on the NUL character
4095 *
4096 * synopsis
4097 * next_state = yy_try_NUL_trans( current_state );
4098 */
yy_try_NUL_trans(yy_state_type yy_current_state)4099 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
4100 {
4101 register int yy_is_jam;
4102 register char *yy_cp = (yy_c_buf_p);
4103
4104 register YY_CHAR yy_c = 1;
4105 if ( yy_accept[yy_current_state] )
4106 {
4107 (yy_last_accepting_state) = yy_current_state;
4108 (yy_last_accepting_cpos) = yy_cp;
4109 }
4110 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4111 {
4112 yy_current_state = (int) yy_def[yy_current_state];
4113 if ( yy_current_state >= 1434 )
4114 yy_c = yy_meta[(unsigned int) yy_c];
4115 }
4116 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4117 yy_is_jam = (yy_current_state == 1433);
4118
4119 return yy_is_jam ? 0 : yy_current_state;
4120 }
4121
4122 #ifndef YY_NO_INPUT
4123 #ifdef __cplusplus
yyinput(void)4124 static int __attribute__((unused)) yyinput (void)
4125 #else
4126 static int __attribute__((unused)) input (void)
4127 #endif
4128
4129 {
4130 int c;
4131
4132 *(yy_c_buf_p) = (yy_hold_char);
4133
4134 if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
4135 {
4136 /* yy_c_buf_p now points to the character we want to return.
4137 * If this occurs *before* the EOB characters, then it's a
4138 * valid NUL; if not, then we've hit the end of the buffer.
4139 */
4140 if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
4141 /* This was really a NUL. */
4142 *(yy_c_buf_p) = '\0';
4143
4144 else
4145 { /* need more input */
4146 int offset = (yy_c_buf_p) - (yytext_ptr);
4147 ++(yy_c_buf_p);
4148
4149 switch ( yy_get_next_buffer( ) )
4150 {
4151 case EOB_ACT_LAST_MATCH:
4152 /* This happens because yy_g_n_b()
4153 * sees that we've accumulated a
4154 * token and flags that we need to
4155 * try matching the token before
4156 * proceeding. But for input(),
4157 * there's no matching to consider.
4158 * So convert the EOB_ACT_LAST_MATCH
4159 * to EOB_ACT_END_OF_FILE.
4160 */
4161
4162 /* Reset buffer status. */
4163 sfbpf_restart(sfbpf_in );
4164
4165 /*FALLTHROUGH*/
4166
4167 case EOB_ACT_END_OF_FILE:
4168 {
4169 if ( sfbpf_wrap( ) )
4170 return EOF;
4171
4172 if ( ! (yy_did_buffer_switch_on_eof) )
4173 YY_NEW_FILE;
4174 #ifdef __cplusplus
4175 return yyinput();
4176 #else
4177 return input();
4178 #endif
4179 }
4180
4181 case EOB_ACT_CONTINUE_SCAN:
4182 (yy_c_buf_p) = (yytext_ptr) + offset;
4183 break;
4184 }
4185 }
4186 }
4187
4188 c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
4189 *(yy_c_buf_p) = '\0'; /* preserve sfbpf_text */
4190 (yy_hold_char) = *++(yy_c_buf_p);
4191
4192 return c;
4193 }
4194 #endif /* ifndef YY_NO_INPUT */
4195
4196 /** Immediately switch to a different input stream.
4197 * @param input_file A readable stream.
4198 *
4199 * @note This function does not reset the start condition to @c INITIAL .
4200 */
sfbpf_restart(FILE * input_file)4201 void sfbpf_restart (FILE * input_file )
4202 {
4203
4204 if ( ! YY_CURRENT_BUFFER ){
4205 sfbpf_ensure_buffer_stack ();
4206 YY_CURRENT_BUFFER_LVALUE =
4207 sfbpf__create_buffer(sfbpf_in,YY_BUF_SIZE );
4208 }
4209
4210 sfbpf__init_buffer(YY_CURRENT_BUFFER,input_file );
4211 sfbpf__load_buffer_state( );
4212 }
4213
4214 /** Switch to a different input buffer.
4215 * @param new_buffer The new input buffer.
4216 *
4217 */
sfbpf__switch_to_buffer(YY_BUFFER_STATE new_buffer)4218 void sfbpf__switch_to_buffer (YY_BUFFER_STATE new_buffer )
4219 {
4220
4221 /* We should be able to replace this entire function body
4222 * with
4223 * sfbpf_pop_buffer_state();
4224 * sfbpf_push_buffer_state(new_buffer);
4225 */
4226 sfbpf_ensure_buffer_stack ();
4227 if ( YY_CURRENT_BUFFER == new_buffer )
4228 return;
4229
4230 if ( YY_CURRENT_BUFFER )
4231 {
4232 /* Flush out information for old buffer. */
4233 *(yy_c_buf_p) = (yy_hold_char);
4234 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4235 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4236 }
4237
4238 YY_CURRENT_BUFFER_LVALUE = new_buffer;
4239 sfbpf__load_buffer_state( );
4240
4241 /* We don't actually know whether we did this switch during
4242 * EOF (sfbpf_wrap()) processing, but the only time this flag
4243 * is looked at is after sfbpf_wrap() is called, so it's safe
4244 * to go ahead and always set it.
4245 */
4246 (yy_did_buffer_switch_on_eof) = 1;
4247 }
4248
sfbpf__load_buffer_state(void)4249 static void sfbpf__load_buffer_state (void)
4250 {
4251 (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
4252 (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
4253 sfbpf_in = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
4254 (yy_hold_char) = *(yy_c_buf_p);
4255 }
4256
4257 /** Allocate and initialize an input buffer state.
4258 * @param file A readable stream.
4259 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
4260 *
4261 * @return the allocated buffer state.
4262 */
sfbpf__create_buffer(FILE * file,int size)4263 YY_BUFFER_STATE sfbpf__create_buffer (FILE * file, int size )
4264 {
4265 YY_BUFFER_STATE b;
4266
4267 b = (YY_BUFFER_STATE) sfbpf_alloc(sizeof( struct yy_buffer_state ) );
4268 if ( ! b )
4269 YY_FATAL_ERROR( "out of dynamic memory in sfbpf__create_buffer()" );
4270
4271 b->yy_buf_size = size;
4272
4273 /* yy_ch_buf has to be 2 characters longer than the size given because
4274 * we need to put in 2 end-of-buffer characters.
4275 */
4276 b->yy_ch_buf = (char *) sfbpf_alloc(b->yy_buf_size + 2 );
4277 if ( ! b->yy_ch_buf )
4278 YY_FATAL_ERROR( "out of dynamic memory in sfbpf__create_buffer()" );
4279
4280 b->yy_is_our_buffer = 1;
4281
4282 sfbpf__init_buffer(b,file );
4283
4284 return b;
4285 }
4286
4287 /** Destroy the buffer.
4288 * @param b a buffer created with sfbpf__create_buffer()
4289 *
4290 */
sfbpf__delete_buffer(YY_BUFFER_STATE b)4291 void sfbpf__delete_buffer (YY_BUFFER_STATE b )
4292 {
4293
4294 if ( ! b )
4295 return;
4296
4297 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
4298 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
4299
4300 if ( b->yy_is_our_buffer )
4301 sfbpf_free((void *) b->yy_ch_buf );
4302
4303 sfbpf_free((void *) b );
4304 }
4305
4306 #ifndef __cplusplus
4307 extern int isatty (int );
4308 #endif /* __cplusplus */
4309
4310 /* Initializes or reinitializes a buffer.
4311 * This function is sometimes called more than once on the same buffer,
4312 * such as during a sfbpf_restart() or at EOF.
4313 */
sfbpf__init_buffer(YY_BUFFER_STATE b,FILE * file)4314 static void sfbpf__init_buffer (YY_BUFFER_STATE b, FILE * file )
4315
4316 {
4317 int oerrno = errno;
4318
4319 sfbpf__flush_buffer(b );
4320
4321 b->yy_input_file = file;
4322 b->yy_fill_buffer = 1;
4323
4324 /* If b is the current buffer, then sfbpf__init_buffer was _probably_
4325 * called from sfbpf_restart() or through yy_get_next_buffer.
4326 * In that case, we don't want to reset the lineno or column.
4327 */
4328 if (b != YY_CURRENT_BUFFER){
4329 b->yy_bs_lineno = 1;
4330 b->yy_bs_column = 0;
4331 }
4332
4333 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
4334
4335 errno = oerrno;
4336 }
4337
4338 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
4339 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
4340 *
4341 */
sfbpf__flush_buffer(YY_BUFFER_STATE b)4342 void sfbpf__flush_buffer (YY_BUFFER_STATE b )
4343 {
4344 if ( ! b )
4345 return;
4346
4347 b->yy_n_chars = 0;
4348
4349 /* We always need two end-of-buffer characters. The first causes
4350 * a transition to the end-of-buffer state. The second causes
4351 * a jam in that state.
4352 */
4353 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
4354 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
4355
4356 b->yy_buf_pos = &b->yy_ch_buf[0];
4357
4358 b->yy_at_bol = 1;
4359 b->yy_buffer_status = YY_BUFFER_NEW;
4360
4361 if ( b == YY_CURRENT_BUFFER )
4362 sfbpf__load_buffer_state( );
4363 }
4364
4365 /** Pushes the new state onto the stack. The new state becomes
4366 * the current state. This function will allocate the stack
4367 * if necessary.
4368 * @param new_buffer The new state.
4369 *
4370 */
sfbpf_push_buffer_state(YY_BUFFER_STATE new_buffer)4371 void sfbpf_push_buffer_state (YY_BUFFER_STATE new_buffer )
4372 {
4373 if (new_buffer == NULL)
4374 return;
4375
4376 sfbpf_ensure_buffer_stack();
4377
4378 /* This block is copied from sfbpf__switch_to_buffer. */
4379 if ( YY_CURRENT_BUFFER )
4380 {
4381 /* Flush out information for old buffer. */
4382 *(yy_c_buf_p) = (yy_hold_char);
4383 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4384 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4385 }
4386
4387 /* Only push if top exists. Otherwise, replace top. */
4388 if (YY_CURRENT_BUFFER)
4389 (yy_buffer_stack_top)++;
4390 YY_CURRENT_BUFFER_LVALUE = new_buffer;
4391
4392 /* copied from sfbpf__switch_to_buffer. */
4393 sfbpf__load_buffer_state( );
4394 (yy_did_buffer_switch_on_eof) = 1;
4395 }
4396
4397 /** Removes and deletes the top of the stack, if present.
4398 * The next element becomes the new top.
4399 *
4400 */
sfbpf_pop_buffer_state(void)4401 void sfbpf_pop_buffer_state (void)
4402 {
4403 if (!YY_CURRENT_BUFFER)
4404 return;
4405
4406 sfbpf__delete_buffer(YY_CURRENT_BUFFER );
4407 YY_CURRENT_BUFFER_LVALUE = NULL;
4408 if ((yy_buffer_stack_top) > 0)
4409 --(yy_buffer_stack_top);
4410
4411 if (YY_CURRENT_BUFFER) {
4412 sfbpf__load_buffer_state( );
4413 (yy_did_buffer_switch_on_eof) = 1;
4414 }
4415 }
4416
4417 /* Allocates the stack if it does not exist.
4418 * Guarantees space for at least one push.
4419 */
sfbpf_ensure_buffer_stack(void)4420 static void sfbpf_ensure_buffer_stack (void)
4421 {
4422 int num_to_alloc;
4423
4424 if (!(yy_buffer_stack)) {
4425
4426 /* First allocation is just for 2 elements, since we don't know if this
4427 * scanner will even need a stack. We use 2 instead of 1 to avoid an
4428 * immediate realloc on the next call.
4429 */
4430 num_to_alloc = 1;
4431 (yy_buffer_stack) = (struct yy_buffer_state**)sfbpf_alloc
4432 (num_to_alloc * sizeof(struct yy_buffer_state*)
4433 );
4434 if ( ! (yy_buffer_stack) )
4435 YY_FATAL_ERROR( "out of dynamic memory in sfbpf_ensure_buffer_stack()" );
4436
4437 memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
4438
4439 (yy_buffer_stack_max) = num_to_alloc;
4440 (yy_buffer_stack_top) = 0;
4441 return;
4442 }
4443
4444 if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
4445
4446 /* Increase the buffer to prepare for a possible push. */
4447 int grow_size = 8 /* arbitrary grow size */;
4448
4449 num_to_alloc = (yy_buffer_stack_max) + grow_size;
4450 (yy_buffer_stack) = (struct yy_buffer_state**)sfbpf_realloc
4451 ((yy_buffer_stack),
4452 num_to_alloc * sizeof(struct yy_buffer_state*)
4453 );
4454 if ( ! (yy_buffer_stack) )
4455 YY_FATAL_ERROR( "out of dynamic memory in sfbpf_ensure_buffer_stack()" );
4456
4457 /* zero only the new slots.*/
4458 memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
4459 (yy_buffer_stack_max) = num_to_alloc;
4460 }
4461 }
4462
4463 /** Setup the input buffer state to scan directly from a user-specified character buffer.
4464 * @param base the character buffer
4465 * @param size the size in bytes of the character buffer
4466 *
4467 * @return the newly allocated buffer state object.
4468 */
sfbpf__scan_buffer(char * base,yy_size_t size)4469 YY_BUFFER_STATE sfbpf__scan_buffer (char * base, yy_size_t size )
4470 {
4471 YY_BUFFER_STATE b;
4472
4473 if ( size < 2 ||
4474 base[size-2] != YY_END_OF_BUFFER_CHAR ||
4475 base[size-1] != YY_END_OF_BUFFER_CHAR )
4476 /* They forgot to leave room for the EOB's. */
4477 return 0;
4478
4479 b = (YY_BUFFER_STATE) sfbpf_alloc(sizeof( struct yy_buffer_state ) );
4480 if ( ! b )
4481 YY_FATAL_ERROR( "out of dynamic memory in sfbpf__scan_buffer()" );
4482
4483 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
4484 b->yy_buf_pos = b->yy_ch_buf = base;
4485 b->yy_is_our_buffer = 0;
4486 b->yy_input_file = 0;
4487 b->yy_n_chars = b->yy_buf_size;
4488 b->yy_is_interactive = 0;
4489 b->yy_at_bol = 1;
4490 b->yy_fill_buffer = 0;
4491 b->yy_buffer_status = YY_BUFFER_NEW;
4492
4493 sfbpf__switch_to_buffer(b );
4494
4495 return b;
4496 }
4497
4498 /** Setup the input buffer state to scan a string. The next call to sfbpf_lex() will
4499 * scan from a @e copy of @a str.
4500 * @param yystr a NUL-terminated string to scan
4501 *
4502 * @return the newly allocated buffer state object.
4503 * @note If you want to scan bytes that may contain NUL values, then use
4504 * sfbpf__scan_bytes() instead.
4505 */
sfbpf__scan_string(yyconst char * yystr)4506 YY_BUFFER_STATE sfbpf__scan_string (yyconst char * yystr )
4507 {
4508
4509 return sfbpf__scan_bytes(yystr,strlen(yystr) );
4510 }
4511
4512 /** Setup the input buffer state to scan the given bytes. The next call to sfbpf_lex() will
4513 * scan from a @e copy of @a bytes.
4514 * @param yybytes the byte buffer to scan
4515 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
4516 *
4517 * @return the newly allocated buffer state object.
4518 */
sfbpf__scan_bytes(yyconst char * yybytes,int _yybytes_len)4519 YY_BUFFER_STATE sfbpf__scan_bytes (yyconst char * yybytes, int _yybytes_len )
4520 {
4521 YY_BUFFER_STATE b;
4522 char *buf;
4523 yy_size_t n;
4524 int i;
4525
4526 /* Get memory for full buffer, including space for trailing EOB's. */
4527 n = _yybytes_len + 2;
4528 buf = (char *) sfbpf_alloc(n );
4529 if ( ! buf )
4530 YY_FATAL_ERROR( "out of dynamic memory in sfbpf__scan_bytes()" );
4531
4532 for ( i = 0; i < _yybytes_len; ++i )
4533 buf[i] = yybytes[i];
4534
4535 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
4536
4537 b = sfbpf__scan_buffer(buf,n );
4538 if ( ! b )
4539 YY_FATAL_ERROR( "bad buffer in sfbpf__scan_bytes()" );
4540
4541 /* It's okay to grow etc. this buffer, and we should throw it
4542 * away when we're done.
4543 */
4544 b->yy_is_our_buffer = 1;
4545
4546 return b;
4547 }
4548
4549 #ifndef YY_EXIT_FAILURE
4550 #define YY_EXIT_FAILURE 2
4551 #endif
4552
yy_fatal_error(yyconst char * msg)4553 static void yy_fatal_error (yyconst char* msg )
4554 {
4555 (void) fprintf( stderr, "%s\n", msg );
4556 exit( YY_EXIT_FAILURE );
4557 }
4558
4559 /* Redefine yyless() so it works in section 3 code. */
4560
4561 #undef yyless
4562 #define yyless(n) \
4563 do \
4564 { \
4565 /* Undo effects of setting up sfbpf_text. */ \
4566 int yyless_macro_arg = (n); \
4567 YY_LESS_LINENO(yyless_macro_arg);\
4568 sfbpf_text[sfbpf_leng] = (yy_hold_char); \
4569 (yy_c_buf_p) = sfbpf_text + yyless_macro_arg; \
4570 (yy_hold_char) = *(yy_c_buf_p); \
4571 *(yy_c_buf_p) = '\0'; \
4572 sfbpf_leng = yyless_macro_arg; \
4573 } \
4574 while ( 0 )
4575
4576 /* Accessor methods (get/set functions) to struct members. */
4577
4578 /** Get the current token.
4579 *
4580 */
4581
sfbpf_get_debug(void)4582 int sfbpf_get_debug (void)
4583 {
4584 return sfbpf__flex_debug;
4585 }
4586
sfbpf_set_debug(int bdebug)4587 void sfbpf_set_debug (int bdebug )
4588 {
4589 sfbpf__flex_debug = bdebug ;
4590 }
4591
yy_init_globals(void)4592 static int yy_init_globals (void)
4593 {
4594 /* Initialization is the same as for the non-reentrant scanner.
4595 * This function is called from sfbpf_lex_destroy(), so don't allocate here.
4596 */
4597
4598 (yy_buffer_stack) = 0;
4599 (yy_buffer_stack_top) = 0;
4600 (yy_buffer_stack_max) = 0;
4601 (yy_c_buf_p) = (char *) 0;
4602 (yy_init) = 0;
4603 (yy_start) = 0;
4604
4605 /* Defined in main.c */
4606 #ifdef YY_STDINIT
4607 sfbpf_in = stdin;
4608 sfbpf_out = stdout;
4609 #else
4610 sfbpf_in = (FILE *) 0;
4611 sfbpf_out = (FILE *) 0;
4612 #endif
4613
4614 /* For future reference: Set errno on error, since we are called by
4615 * sfbpf_lex_init()
4616 */
4617 return 0;
4618 }
4619
4620 /* sfbpf_lex_destroy is for both reentrant and non-reentrant scanners. */
sfbpf_lex_destroy(void)4621 int sfbpf_lex_destroy (void)
4622 {
4623
4624 /* Pop the buffer stack, destroying each element. */
4625 while(YY_CURRENT_BUFFER){
4626 sfbpf__delete_buffer(YY_CURRENT_BUFFER );
4627 YY_CURRENT_BUFFER_LVALUE = NULL;
4628 sfbpf_pop_buffer_state();
4629 }
4630
4631 /* Destroy the stack itself. */
4632 sfbpf_free((yy_buffer_stack) );
4633 (yy_buffer_stack) = NULL;
4634
4635 /* Reset the globals. This is important in a non-reentrant scanner so the next time
4636 * sfbpf_lex() is called, initialization will occur. */
4637 yy_init_globals( );
4638
4639 return 0;
4640 }
4641
4642 /*
4643 * Internal utility routines.
4644 */
4645
4646 #ifndef yytext_ptr
yy_flex_strncpy(char * s1,yyconst char * s2,int n)4647 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
4648 {
4649 register int i;
4650 for ( i = 0; i < n; ++i )
4651 s1[i] = s2[i];
4652 }
4653 #endif
4654
4655 #ifdef YY_NEED_STRLEN
yy_flex_strlen(yyconst char * s)4656 static int yy_flex_strlen (yyconst char * s )
4657 {
4658 register int n;
4659 for ( n = 0; s[n]; ++n )
4660 ;
4661
4662 return n;
4663 }
4664 #endif
4665
sfbpf_alloc(yy_size_t size)4666 void *sfbpf_alloc (yy_size_t size )
4667 {
4668 return (void *) malloc( size );
4669 }
4670
sfbpf_realloc(void * ptr,yy_size_t size)4671 void *sfbpf_realloc (void * ptr, yy_size_t size )
4672 {
4673 /* The cast to (char *) in the following accommodates both
4674 * implementations that use char* generic pointers, and those
4675 * that use void* generic pointers. It works with the latter
4676 * because both ANSI C and C++ allow castless assignment from
4677 * any pointer type to void*, and deal with argument conversions
4678 * as though doing an assignment.
4679 */
4680 return (void *) realloc( (char *) ptr, size );
4681 }
4682
sfbpf_free(void * ptr)4683 void sfbpf_free (void * ptr )
4684 {
4685 free( (char *) ptr ); /* see sfbpf_realloc() for (char *) cast */
4686 }
4687
4688 #define YYTABLES_NAME "yytables"
4689
4690 #line 385 "./scanner.l"
4691
4692
4693 void
lex_init(buf)4694 lex_init(buf)
4695 const char *buf;
4696 {
4697 #ifdef FLEX_SCANNER
4698 in_buffer = sfbpf__scan_string(buf);
4699 #else
4700 in_buffer = buf;
4701 #endif
4702 }
4703
4704 /*
4705 * Do any cleanup necessary after parsing.
4706 */
4707 void
lex_cleanup()4708 lex_cleanup()
4709 {
4710 #ifdef FLEX_SCANNER
4711 if (in_buffer != NULL)
4712 sfbpf__delete_buffer(in_buffer);
4713 in_buffer = NULL;
4714 #endif
4715 }
4716
4717 /*
4718 * Also define a sfbpf_wrap. Note that if we're using flex, it will
4719 * define a macro to map this identifier to pcap_wrap.
4720 */
4721 int
sfbpf_wrap()4722 sfbpf_wrap()
4723 {
4724 return 1;
4725 }
4726
4727 /* Hex digit to integer. */
4728 static inline int
xdtoi(c)4729 xdtoi(c)
4730 register int c;
4731 {
4732 if (isdigit(c))
4733 return c - '0';
4734 else if (islower(c))
4735 return c - 'a' + 10;
4736 else
4737 return c - 'A' + 10;
4738 }
4739
4740 /*
4741 * Convert string to integer. Just like atoi(), but checks for
4742 * preceding 0x or 0 and uses hex or octal instead of decimal.
4743 */
4744 static int
stoi(s)4745 stoi(s)
4746 char *s;
4747 {
4748 int base = 10;
4749 int n = 0;
4750
4751 if (*s == '0') {
4752 if (s[1] == 'x' || s[1] == 'X') {
4753 s += 2;
4754 base = 16;
4755 }
4756 else {
4757 base = 8;
4758 s += 1;
4759 }
4760 }
4761 while (*s)
4762 n = n * base + xdtoi(*s++);
4763
4764 return n;
4765 }
4766
4767