Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(52)

Side by Side Diff: third_party/wds/gen/messagescanner.cpp

Issue 1498473010: third_party: Add WDS library (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@wds
Patch Set: Link dynamically. Fixed checklicenses.py complaint. Updated WDS version. Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 #line 10 "messagelexer.l"
2 /*
3 * This file is part of Wireless Display Software for Linux OS
4 *
5 * Copyright (C) 2015 Intel Corporation.
6 *
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20 * 02110-1301 USA
21 */
22
23
24
25 #line 26 "gen/messagescanner.cpp"
26
27 #define YY_INT_ALIGNED short int
28
29 /* A lexical scanner generated by flex */
30
31 #define FLEX_SCANNER
32 #define YY_FLEX_MAJOR_VERSION 2
33 #define YY_FLEX_MINOR_VERSION 5
34 #define YY_FLEX_SUBMINOR_VERSION 35
35 #if YY_FLEX_SUBMINOR_VERSION > 0
36 #define FLEX_BETA
37 #endif
38
39 /* First, we deal with platform-specific or compiler-specific issues. */
40
41 /* begin standard C headers. */
42 #include <stdio.h>
43 #include <string.h>
44 #include <errno.h>
45 #include <stdlib.h>
46
47 /* end standard C headers. */
48
49 /* flex integer type definitions */
50
51 #ifndef FLEXINT_H
52 #define FLEXINT_H
53
54 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
55
56 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
57
58 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
59 * if you want the limit (max/min) macros for int types.
60 */
61 #ifndef __STDC_LIMIT_MACROS
62 #define __STDC_LIMIT_MACROS 1
63 #endif
64
65 #include <inttypes.h>
66 typedef int8_t flex_int8_t;
67 typedef uint8_t flex_uint8_t;
68 typedef int16_t flex_int16_t;
69 typedef uint16_t flex_uint16_t;
70 typedef int32_t flex_int32_t;
71 typedef uint32_t flex_uint32_t;
72 #else
73 typedef signed char flex_int8_t;
74 typedef short int flex_int16_t;
75 typedef int flex_int32_t;
76 typedef unsigned char flex_uint8_t;
77 typedef unsigned short int flex_uint16_t;
78 typedef unsigned int flex_uint32_t;
79
80 /* Limits of integral types. */
81 #ifndef INT8_MIN
82 #define INT8_MIN (-128)
83 #endif
84 #ifndef INT16_MIN
85 #define INT16_MIN (-32767-1)
86 #endif
87 #ifndef INT32_MIN
88 #define INT32_MIN (-2147483647-1)
89 #endif
90 #ifndef INT8_MAX
91 #define INT8_MAX (127)
92 #endif
93 #ifndef INT16_MAX
94 #define INT16_MAX (32767)
95 #endif
96 #ifndef INT32_MAX
97 #define INT32_MAX (2147483647)
98 #endif
99 #ifndef UINT8_MAX
100 #define UINT8_MAX (255U)
101 #endif
102 #ifndef UINT16_MAX
103 #define UINT16_MAX (65535U)
104 #endif
105 #ifndef UINT32_MAX
106 #define UINT32_MAX (4294967295U)
107 #endif
108
109 #endif /* ! C99 */
110
111 #endif /* ! FLEXINT_H */
112
113 #ifdef __cplusplus
114
115 /* The "const" storage-class-modifier is valid. */
116 #define YY_USE_CONST
117
118 #else /* ! __cplusplus */
119
120 /* C99 requires __STDC__ to be defined as 1. */
121 #if defined (__STDC__)
122
123 #define YY_USE_CONST
124
125 #endif /* defined (__STDC__) */
126 #endif /* ! __cplusplus */
127
128 #ifdef YY_USE_CONST
129 #define yyconst const
130 #else
131 #define yyconst
132 #endif
133
134 /* Returned upon end-of-file. */
135 #define YY_NULL 0
136
137 /* Promotes a possibly negative, possibly signed char to an unsigned
138 * integer for use as an array index. If the signed char is negative,
139 * we want to instead treat it as an 8-bit unsigned char, hence the
140 * double cast.
141 */
142 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
143
144 /* An opaque pointer. */
145 #ifndef YY_TYPEDEF_YY_SCANNER_T
146 #define YY_TYPEDEF_YY_SCANNER_T
147 typedef void* yyscan_t;
148 #endif
149
150 /* For convenience, these vars (plus the bison vars far below)
151 are macros in the reentrant scanner. */
152 #define yyin yyg->yyin_r
153 #define yyout yyg->yyout_r
154 #define yyextra yyg->yyextra_r
155 #define yyleng yyg->yyleng_r
156 #define yytext yyg->yytext_r
157 #define yylineno (YY_CURRENT_BUFFER_LVALUE->yy_bs_lineno)
158 #define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column)
159 #define yy_flex_debug yyg->yy_flex_debug_r
160
161 /* Enter a start condition. This macro really ought to take a parameter,
162 * but we do it the disgusting crufty way forced on us by the ()-less
163 * definition of BEGIN.
164 */
165 #define BEGIN yyg->yy_start = 1 + 2 *
166
167 /* Translate the current start state into a value that can be later handed
168 * to BEGIN to return to the state. The YYSTATE alias is for lex
169 * compatibility.
170 */
171 #define YY_START ((yyg->yy_start - 1) / 2)
172 #define YYSTATE YY_START
173
174 /* Action number for EOF rule of a given start state. */
175 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
176
177 /* Special action meaning "start processing a new file". */
178 #define YY_NEW_FILE message_restart(yyin ,yyscanner )
179
180 #define YY_END_OF_BUFFER_CHAR 0
181
182 /* Size of default input buffer. */
183 #ifndef YY_BUF_SIZE
184 #ifdef __ia64__
185 /* On IA-64, the buffer size is 16k, not 8k.
186 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
187 * Ditto for the __ia64__ case accordingly.
188 */
189 #define YY_BUF_SIZE 32768
190 #else
191 #define YY_BUF_SIZE 16384
192 #endif /* __ia64__ */
193 #endif
194
195 /* The state buf must be large enough to hold one state per character in the mai n buffer.
196 */
197 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
198
199 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
200 #define YY_TYPEDEF_YY_BUFFER_STATE
201 typedef struct yy_buffer_state *YY_BUFFER_STATE;
202 #endif
203
204 #define EOB_ACT_CONTINUE_SCAN 0
205 #define EOB_ACT_END_OF_FILE 1
206 #define EOB_ACT_LAST_MATCH 2
207
208 #define YY_LESS_LINENO(n)
209
210 /* Return all but the first "n" matched characters back to the input stream. */
211 #define yyless(n) \
212 do \
213 { \
214 /* Undo effects of setting up yytext. */ \
215 int yyless_macro_arg = (n); \
216 YY_LESS_LINENO(yyless_macro_arg);\
217 *yy_cp = yyg->yy_hold_char; \
218 YY_RESTORE_YY_MORE_OFFSET \
219 yyg->yy_c_buf_p = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ ; \
220 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
221 } \
222 while ( 0 )
223
224 #define unput(c) yyunput( c, yyg->yytext_ptr , yyscanner )
225
226 #ifndef YY_TYPEDEF_YY_SIZE_T
227 #define YY_TYPEDEF_YY_SIZE_T
228 typedef size_t yy_size_t;
229 #endif
230
231 #ifndef YY_STRUCT_YY_BUFFER_STATE
232 #define YY_STRUCT_YY_BUFFER_STATE
233 struct yy_buffer_state
234 {
235 FILE *yy_input_file;
236
237 char *yy_ch_buf; /* input buffer */
238 char *yy_buf_pos; /* current position in input buffer */
239
240 /* Size of input buffer in bytes, not including room for EOB
241 * characters.
242 */
243 yy_size_t yy_buf_size;
244
245 /* Number of characters read into yy_ch_buf, not including EOB
246 * characters.
247 */
248 int yy_n_chars;
249
250 /* Whether we "own" the buffer - i.e., we know we created it,
251 * and can realloc() it to grow it, and should free() it to
252 * delete it.
253 */
254 int yy_is_our_buffer;
255
256 /* Whether this is an "interactive" input source; if so, and
257 * if we're using stdio for input, then we want to use getc()
258 * instead of fread(), to make sure we stop fetching input after
259 * each newline.
260 */
261 int yy_is_interactive;
262
263 /* Whether we're considered to be at the beginning of a line.
264 * If so, '^' rules will be active on the next match, otherwise
265 * not.
266 */
267 int yy_at_bol;
268
269 int yy_bs_lineno; /**< The line count. */
270 int yy_bs_column; /**< The column count. */
271
272 /* Whether to try to fill the input buffer when we reach the
273 * end of it.
274 */
275 int yy_fill_buffer;
276
277 int yy_buffer_status;
278
279 #define YY_BUFFER_NEW 0
280 #define YY_BUFFER_NORMAL 1
281 /* When an EOF's been seen but there's still some text to process
282 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
283 * shouldn't try reading from the input source any more. We might
284 * still have a bunch of tokens to match, though, because of
285 * possible backing-up.
286 *
287 * When we actually see the EOF, we change the status to "new"
288 * (via message_restart()), so that the user can continue scanning by
289 * just pointing yyin at a new input file.
290 */
291 #define YY_BUFFER_EOF_PENDING 2
292
293 };
294 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
295
296 /* We provide macros for accessing buffer states in case in the
297 * future we want to put the buffer states in a more general
298 * "scanner state".
299 *
300 * Returns the top of the stack, or NULL.
301 */
302 #define YY_CURRENT_BUFFER ( yyg->yy_buffer_stack \
303 ? yyg->yy_buffer_stack[yyg->yy_buffer_stack_top] \
304 : NULL)
305
306 /* Same as previous macro, but useful when we know that the buffer stack is not
307 * NULL or when we need an lvalue. For internal use only.
308 */
309 #define YY_CURRENT_BUFFER_LVALUE yyg->yy_buffer_stack[yyg->yy_buffer_stack_top]
310
311 void message_restart (FILE *input_file ,yyscan_t yyscanner );
312 void message__switch_to_buffer (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner ) ;
313 YY_BUFFER_STATE message__create_buffer (FILE *file,int size ,yyscan_t yyscanner );
314 void message__delete_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
315 void message__flush_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
316 void message_push_buffer_state (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner ) ;
317 void message_pop_buffer_state (yyscan_t yyscanner );
318
319 static void message_ensure_buffer_stack (yyscan_t yyscanner );
320 static void message__load_buffer_state (yyscan_t yyscanner );
321 static void message__init_buffer (YY_BUFFER_STATE b,FILE *file ,yyscan_t yyscann er );
322
323 #define YY_FLUSH_BUFFER message__flush_buffer(YY_CURRENT_BUFFER ,yyscanner)
324
325 YY_BUFFER_STATE message__scan_buffer (char *base,yy_size_t size ,yyscan_t yyscan ner );
326 YY_BUFFER_STATE message__scan_string (yyconst char *yy_str ,yyscan_t yyscanner ) ;
327 YY_BUFFER_STATE message__scan_bytes (yyconst char *bytes,int len ,yyscan_t yysca nner );
328
329 void *message_alloc (yy_size_t ,yyscan_t yyscanner );
330 void *message_realloc (void *,yy_size_t ,yyscan_t yyscanner );
331 void message_free (void * ,yyscan_t yyscanner );
332
333 #define yy_new_buffer message__create_buffer
334
335 #define yy_set_interactive(is_interactive) \
336 { \
337 if ( ! YY_CURRENT_BUFFER ){ \
338 message_ensure_buffer_stack (yyscanner); \
339 YY_CURRENT_BUFFER_LVALUE = \
340 message__create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
341 } \
342 YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
343 }
344
345 #define yy_set_bol(at_bol) \
346 { \
347 if ( ! YY_CURRENT_BUFFER ){\
348 message_ensure_buffer_stack (yyscanner); \
349 YY_CURRENT_BUFFER_LVALUE = \
350 message__create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
351 } \
352 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
353 }
354
355 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
356
357 /* Begin user sect3 */
358
359 #define message_wrap(n) 1
360 #define YY_SKIP_YYWRAP
361
362 typedef unsigned char YY_CHAR;
363
364 typedef int yy_state_type;
365
366 #define yytext_ptr yytext_r
367
368 static yy_state_type yy_get_previous_state (yyscan_t yyscanner );
369 static yy_state_type yy_try_NUL_trans (yy_state_type current_state ,yyscan_t yy scanner);
370 static int yy_get_next_buffer (yyscan_t yyscanner );
371 static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner );
372
373 /* Done after the current pattern has been matched and before the
374 * corresponding action - sets up yytext.
375 */
376 #define YY_DO_BEFORE_ACTION \
377 yyg->yytext_ptr = yy_bp; \
378 yyleng = (size_t) (yy_cp - yy_bp); \
379 yyg->yy_hold_char = *yy_cp; \
380 *yy_cp = '\0'; \
381 yyg->yy_c_buf_p = yy_cp;
382
383 #define YY_NUM_RULES 82
384 #define YY_END_OF_BUFFER 83
385 /* This struct is not used in this scanner,
386 but its presence is necessary. */
387 struct yy_trans_info
388 {
389 flex_int32_t yy_verify;
390 flex_int32_t yy_nxt;
391 };
392 static yyconst flex_int16_t yy_accept[1147] =
393 { 0,
394 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
395 0, 0, 0, 0, 0, 0, 0, 0, 83, 81,
396 11, 2, 3, 7, 6, 5, 10, 69, 9, 8,
397 4, 81, 81, 81, 81, 81, 81, 81, 81, 81,
398 81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
399 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
400 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
401 81, 81, 81, 81, 81, 81, 68, 68, 68, 68,
402 68, 81, 68, 45, 46, 46, 46, 46, 46, 46,
403 46, 46, 46, 46, 46, 46, 47, 48, 48, 48,
404
405 48, 48, 48, 48, 48, 48, 48, 48, 48, 11,
406 1, 69, 0, 0, 38, 0, 0, 0, 0, 0,
407 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
408 0, 0, 0, 0, 0, 0, 0, 0, 68, 68,
409 68, 38, 68, 68, 68, 68, 68, 68, 68, 68,
410 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
411 68, 68, 68, 68, 68, 68, 0, 0, 0, 0,
412 0, 0, 0, 0, 68, 68, 68, 68, 68, 68,
413 68, 0, 68, 45, 46, 46, 46, 46, 46, 46,
414 46, 46, 47, 48, 48, 48, 48, 48, 48, 48,
415
416 48, 14, 15, 0, 0, 0, 0, 0, 0, 0,
417 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
418 0, 0, 0, 0, 0, 0, 0, 37, 0, 0,
419 14, 15, 68, 68, 68, 68, 68, 68, 68, 68,
420 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
421 68, 68, 68, 68, 68, 68, 37, 68, 68, 68,
422 0, 0, 0, 0, 0, 0, 0, 0, 68, 68,
423 68, 68, 68, 68, 68, 0, 68, 14, 15, 14,
424 15, 14, 15, 14, 15, 0, 0, 0, 0, 0,
425 0, 25, 0, 0, 0, 0, 13, 0, 0, 0,
426
427 0, 12, 0, 0, 0, 0, 0, 0, 0, 0,
428 0, 68, 68, 68, 68, 68, 68, 25, 68, 68,
429 68, 68, 13, 68, 68, 68, 68, 12, 68, 68,
430 68, 68, 68, 68, 68, 68, 68, 70, 0, 0,
431 0, 0, 75, 0, 0, 0, 68, 68, 68, 68,
432 68, 68, 68, 0, 68, 0, 0, 0, 0, 0,
433 0, 0, 0, 0, 0, 0, 0, 28, 0, 41,
434 18, 0, 0, 0, 0, 0, 0, 39, 0, 68,
435 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
436 28, 68, 41, 68, 68, 68, 68, 68, 68, 68,
437
438 68, 68, 68, 68, 68, 68, 68, 68, 68, 39,
439 68, 0, 0, 0, 77, 74, 0, 0, 68, 68,
440 68, 68, 68, 68, 0, 32, 0, 43, 0, 0,
441 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
442 0, 0, 0, 0, 40, 32, 68, 43, 68, 68,
443 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
444 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
445 68, 68, 68, 68, 68, 40, 0, 0, 0, 0,
446 0, 68, 68, 68, 68, 0, 42, 24, 33, 16,
447 17, 0, 0, 0, 0, 0, 0, 0, 21, 0,
448
449 0, 0, 0, 0, 42, 24, 33, 68, 68, 68,
450 68, 68, 68, 21, 68, 68, 68, 68, 68, 68,
451 68, 68, 68, 68, 68, 59, 68, 68, 68, 68,
452 68, 68, 68, 0, 71, 0, 0, 0, 68, 68,
453 68, 68, 0, 0, 0, 36, 0, 31, 27, 0,
454 0, 0, 0, 0, 0, 0, 68, 68, 36, 68,
455 31, 27, 68, 68, 68, 68, 68, 68, 68, 68,
456 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
457 68, 68, 68, 0, 0, 0, 76, 68, 68, 68,
458 0, 0, 0, 0, 20, 0, 0, 0, 22, 0,
459
460 44, 68, 68, 68, 68, 68, 22, 68, 44, 68,
461 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
462 58, 68, 68, 68, 68, 0, 0, 0, 68, 68,
463 0, 0, 0, 0, 0, 0, 0, 30, 0, 0,
464 0, 68, 68, 68, 30, 68, 68, 68, 68, 68,
465 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
466 68, 68, 68, 0, 0, 0, 68, 68, 0, 0,
467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
468 0, 0, 0, 0, 0, 0, 0, 29, 68, 68,
469 68, 68, 29, 68, 68, 68, 68, 68, 68, 68,
470
471 68, 68, 68, 68, 65, 68, 68, 68, 68, 0,
472 0, 0, 68, 68, 0, 0, 0, 0, 0, 0,
473 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
474 0, 0, 0, 0, 0, 0, 68, 68, 68, 68,
475 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
476 68, 68, 68, 68, 68, 68, 0, 0, 0, 68,
477 68, 0, 0, 0, 0, 0, 0, 0, 0, 0,
478 0, 0, 0, 0, 0, 0, 0, 0, 34, 0,
479 68, 68, 68, 34, 68, 68, 68, 68, 68, 68,
480 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
481
482 73, 0, 72, 68, 68, 0, 0, 0, 0, 0,
483 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
484 0, 0, 0, 35, 0, 0, 68, 68, 68, 68,
485 68, 68, 68, 68, 68, 68, 68, 68, 68, 68,
486 68, 68, 68, 68, 78, 0, 0, 0, 0, 0,
487 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
488 0, 0, 68, 68, 68, 68, 68, 68, 68, 68,
489 68, 68, 67, 68, 68, 68, 68, 68, 68, 68,
490 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
491 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
492
493 68, 68, 68, 49, 68, 68, 68, 68, 54, 53,
494 68, 68, 68, 68, 68, 63, 68, 0, 0, 0,
495 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
496 0, 0, 26, 0, 0, 68, 68, 68, 68, 68,
497 68, 68, 68, 68, 68, 68, 50, 0, 0, 0,
498 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
499 0, 0, 0, 0, 0, 0, 0, 68, 68, 68,
500 68, 66, 68, 68, 68, 68, 55, 68, 0, 0,
501 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
502 0, 0, 0, 0, 0, 0, 0, 19, 68, 68,
503
504 68, 68, 68, 68, 68, 68, 62, 0, 0, 0,
505 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
506 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
507 0, 0, 0, 0, 0, 0, 0, 0, 23, 51,
508 68, 57, 68, 68, 56, 68, 0, 0, 0, 0,
509 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
510 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
511 0, 0, 0, 0, 0, 0, 0, 68, 68, 68,
512 68, 0, 0, 0, 0, 0, 0, 0, 0, 0,
513 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
514
515 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
516 0, 0, 68, 52, 68, 68, 0, 68, 68, 68,
517 0, 68, 68, 68, 0, 68, 68, 68, 0, 68,
518 61, 68, 0, 60, 68, 0, 68, 0, 64, 0,
519 0, 0, 0, 79, 80, 0
520 } ;
521
522 static yyconst flex_int32_t yy_ec[256] =
523 { 0,
524 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
525 1, 1, 4, 1, 1, 1, 1, 1, 1, 1,
526 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
527 1, 5, 1, 1, 1, 1, 1, 1, 1, 1,
528 1, 6, 1, 7, 8, 9, 10, 11, 12, 13,
529 14, 15, 16, 17, 17, 17, 17, 18, 19, 1,
530 20, 1, 1, 1, 21, 22, 23, 24, 25, 26,
531 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
532 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
533 1, 1, 1, 1, 47, 1, 48, 49, 50, 51,
534
535 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
536 62, 63, 64, 65, 66, 67, 68, 69, 70, 44,
537 71, 72, 1, 1, 1, 1, 1, 1, 1, 1,
538 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
539 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
540 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
541 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
542 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
543 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
544 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
545
546 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
547 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
548 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
549 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
550 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
551 1, 1, 1, 1, 1
552 } ;
553
554 static yyconst flex_int32_t yy_meta[73] =
555 { 0,
556 1, 2, 3, 4, 2, 1, 1, 5, 1, 1,
557 6, 6, 6, 6, 6, 6, 6, 1, 1, 1,
558 6, 6, 6, 6, 6, 6, 5, 5, 5, 5,
559 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
560 5, 5, 5, 5, 5, 5, 5, 6, 6, 6,
561 6, 6, 6, 5, 5, 5, 5, 5, 5, 5,
562 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
563 5, 5
564 } ;
565
566 static yyconst flex_int16_t yy_base[1154] =
567 { 0,
568 0, 72, 142, 145, 148, 150, 129, 131, 0, 0,
569 0, 0, 117, 119, 188, 231, 274, 317, 1671, 4324,
570 157, 4324, 1667, 4324, 4324, 4324, 4324, 161, 4324, 4324,
571 4324, 158, 121, 159, 160, 156, 197, 320, 189, 189,
572 206, 196, 310, 198, 239, 253, 321, 195, 206, 236,
573 287, 227, 254, 247, 275, 0, 296, 323, 319, 319,
574 330, 320, 322, 323, 326, 335, 367, 320, 368, 364,
575 0, 370, 362, 378, 376, 378, 379, 371, 417, 404,
576 387, 417, 421, 300, 427, 374, 426, 422, 419, 0,
577 478, 475, 460, 484, 488, 464, 539, 495, 419, 449,
578
579 477, 483, 0, 546, 525, 516, 553, 556, 557, 213,
580 4324, 572, 497, 1655, 4324, 548, 552, 572, 576, 577,
581 578, 585, 568, 569, 593, 595, 590, 616, 587, 597,
582 595, 594, 608, 598, 597, 612, 1660, 608, 0, 618,
583 1646, 0, 611, 606, 626, 617, 631, 640, 639, 622,
584 624, 647, 649, 644, 671, 642, 653, 651, 649, 663,
585 653, 652, 667, 670, 1610, 669, 1555, 685, 659, 674,
586 663, 685, 687, 687, 700, 678, 693, 681, 708, 713,
587 709, 702, 719, 758, 0, 727, 1544, 726, 739, 755,
588 767, 771, 784, 0, 741, 1540, 746, 786, 787, 797,
589
590 791, 4324, 4324, 777, 792, 794, 797, 783, 789, 803,
591 789, 787, 791, 810, 800, 813, 803, 804, 807, 823,
592 816, 825, 826, 1543, 827, 836, 828, 4324, 840, 845,
593 0, 0, 843, 849, 850, 849, 836, 841, 855, 841,
594 839, 842, 860, 851, 861, 848, 852, 857, 873, 860,
595 869, 875, 1542, 877, 888, 880, 0, 1494, 891, 896,
596 1462, 1417, 891, 1454, 882, 879, 881, 888, 1415, 901,
597 1390, 892, 888, 893, 897, 900, 902, 0, 0, 931,
598 943, 0, 0, 946, 947, 908, 929, 923, 918, 919,
599 1351, 1012, 950, 932, 934, 940, 4324, 1026, 951, 948,
600
601 944, 4324, 1020, 963, 945, 965, 954, 957, 955, 963,
602 975, 967, 984, 976, 971, 969, 1025, 984, 993, 978,
603 980, 986, 0, 921, 997, 994, 988, 0, 912, 1004,
604 986, 994, 997, 995, 1044, 1005, 1014, 4324, 1006, 1008,
605 1001, 1029, 4324, 1024, 1026, 1039, 1028, 1037, 1049, 0,
606 1039, 1040, 1053, 775, 766, 1057, 1047, 1063, 1064, 1058,
607 774, 1074, 1060, 701, 1079, 1093, 1080, 4324, 1077, 4324,
608 4324, 1080, 1094, 1079, 1098, 1101, 1089, 4324, 1103, 1108,
609 1098, 1106, 1103, 1095, 735, 1111, 1098, 696, 1108, 1117,
610 0, 1099, 0, 1102, 1117, 1123, 1125, 1113, 1128, 1129,
611
612 1140, 1133, 1160, 1130, 1141, 1140, 1143, 1153, 1154, 0,
613 1160, 1165, 1153, 1162, 4324, 4324, 1169, 1156, 1171, 1159,
614 0, 0, 1173, 1161, 732, 4324, 1175, 4324, 1178, 1179,
615 175, 1184, 1181, 1193, 1199, 1186, 1193, 1191, 1184, 1207,
616 1198, 1214, 1196, 1197, 4324, 0, 1213, 0, 1216, 1215,
617 1220, 1217, 1221, 1222, 1208, 1212, 1205, 1225, 1233, 1216,
618 1218, 651, 1235, 619, 1231, 1236, 1239, 1256, 1242, 1257,
619 1243, 1267, 1260, 1268, 1267, 0, 1254, 1254, 1273, 1257,
620 1253, 1260, 1260, 1262, 1258, 613, 4324, 565, 4324, 4324,
621 4324, 1266, 1279, 1287, 1279, 1288, 1292, 1273, 4324, 1289,
622
623 531, 1293, 1297, 1308, 0, 488, 0, 1298, 1312, 1317,
624 1311, 1319, 1303, 0, 1310, 1308, 1312, 1323, 1307, 1321,
625 1326, 1328, 1322, 1318, 1319, 0, 477, 1352, 1317, 1332,
626 1340, 1345, 1360, 1365, 4324, 512, 1366, 1354, 1369, 0,
627 1371, 1362, 0, 1374, 472, 4324, 1358, 4324, 4324, 1355,
628 1378, 1368, 1362, 1361, 1363, 1383, 1385, 424, 0, 1369,
629 0, 0, 1387, 1377, 1371, 1379, 1397, 1393, 1392, 1398,
630 1405, 1415, 1416, 1411, 1412, 1407, 1421, 1425, 1426, 1428,
631 1426, 421, 1420, 1423, 1414, 1425, 4324, 1426, 1428, 0,
632 1478, 1448, 1442, 1450, 4324, 1448, 1441, 1463, 4324, 1474,
633
634 4324, 1477, 1467, 1475, 1476, 1465, 0, 1483, 0, 1483,
635 420, 1471, 1470, 1488, 1478, 1488, 1494, 1491, 1479, 1484,
636 0, 1497, 1495, 1512, 419, 1496, 1496, 1498, 1503, 1504,
637 1552, 1568, 1577, 1586, 1494, 1531, 1569, 4324, 1566, 1569,
638 1578, 1571, 1579, 1582, 0, 1572, 1583, 1587, 1590, 1581,
639 417, 1575, 1576, 1593, 1574, 1583, 1583, 1582, 1579, 1587,
640 1605, 1602, 1602, 1589, 1606, 1606, 1611, 1618, 1559, 1650,
641 1675, 1684, 1693, 1702, 1711, 1720, 1729, 1738, 1747, 1756,
642 1765, 1774, 416, 1637, 1659, 1677, 443, 4324, 411, 1691,
643 1713, 1731, 0, 1749, 1757, 1773, 1757, 1761, 407, 371,
644
645 368, 1756, 1773, 1778, 364, 359, 1764, 1761, 1767, 1778,
646 307, 1779, 1780, 1781, 1801, 1825, 1834, 1843, 1852, 1861,
647 1870, 1879, 1888, 1897, 1906, 1915, 1924, 1933, 1942, 1951,
648 1960, 1776, 1804, 1815, 1830, 1857, 1875, 1876, 1914, 1929,
649 271, 1946, 1938, 1940, 1943, 1946, 1944, 1959, 1960, 1962,
650 1947, 1951, 1957, 1970, 1952, 1955, 1956, 298, 1957, 1958,
651 1960, 2015, 2024, 2033, 2042, 2051, 2060, 2069, 2078, 2087,
652 2096, 2105, 2114, 2123, 2132, 2005, 286, 2079, 4324, 2009,
653 2023, 253, 2088, 0, 2062, 2117, 225, 2115, 224, 2114,
654 2124, 2130, 2116, 223, 2127, 2132, 2133, 2138, 2132, 2129,
655
656 4324, 258, 4324, 0, 0, 2159, 2181, 2190, 2199, 2208,
657 2217, 2226, 2235, 2244, 2253, 2262, 2271, 2280, 2289, 2298,
658 2307, 2316, 2125, 4324, 221, 2171, 2170, 219, 2183, 2231,
659 2240, 217, 2232, 2273, 2283, 2297, 2294, 2312, 2302, 2299,
660 2299, 2311, 2307, 2321, 4324, 2334, 2343, 2361, 2370, 2379,
661 2388, 2397, 2406, 2415, 2424, 2433, 2442, 2451, 2460, 2322,
662 2339, 2357, 2376, 2393, 2396, 2431, 2450, 2443, 2436, 2442,
663 2452, 2460, 0, 2456, 2452, 2446, 2460, 2457, 2463, 2451,
664 2510, 2520, 2530, 2540, 2487, 2550, 2559, 2568, 2577, 2586,
665 2595, 2604, 2613, 2622, 2631, 2640, 2649, 243, 2531, 2548,
666
667 210, 2549, 2581, 0, 2602, 2597, 2631, 2643, 0, 0,
668 2630, 182, 2637, 2636, 2643, 0, 2634, 2663, 2670, 2698,
669 2708, 2725, 2735, 2745, 2755, 2765, 2775, 2785, 2795, 2805,
670 2815, 2825, 4324, 2662, 2663, 2664, 2683, 2671, 2806, 2820,
671 2823, 2811, 2807, 2824, 2826, 2811, 0, 2841, 2870, 2886,
672 2895, 2904, 2913, 2923, 2933, 2943, 2953, 2963, 2973, 2983,
673 2993, 3003, 3013, 3023, 3033, 2821, 2822, 2823, 2824, 2838,
674 2826, 0, 3012, 3021, 3016, 181, 0, 3011, 3046, 3074,
675 3089, 3098, 3107, 3116, 3125, 3134, 3143, 3152, 3161, 3170,
676 3179, 3188, 3197, 3206, 3215, 3224, 207, 4324, 206, 3026,
677
678 3041, 3028, 3039, 3048, 3210, 3220, 0, 3060, 3235, 3244,
679 3262, 3271, 3280, 3289, 3298, 3307, 3316, 3325, 3334, 3343,
680 3352, 3361, 3370, 3379, 3388, 3397, 3406, 3415, 3424, 3433,
681 3442, 3451, 3460, 3469, 3478, 3487, 3496, 3505, 4324, 0,
682 178, 0, 3488, 3480, 0, 3505, 3518, 3527, 3545, 3554,
683 3563, 3572, 3581, 3590, 3599, 3608, 3617, 3626, 3635, 3644,
684 3653, 3662, 3671, 3680, 3689, 3698, 3707, 3716, 3725, 3734,
685 3743, 3752, 3761, 3770, 3779, 3788, 3797, 3775, 3782, 174,
686 3781, 3251, 3809, 3818, 3836, 3845, 3854, 3863, 3872, 3881,
687 3890, 3899, 3908, 3917, 3926, 3935, 3944, 3953, 3962, 3971,
688
689 3980, 3989, 3998, 4007, 4016, 4025, 4034, 4043, 4052, 4061,
690 4070, 4079, 4068, 0, 4065, 4078, 4091, 4076, 4075, 4089,
691 4101, 4090, 4096, 4092, 4116, 4088, 4098, 4102, 4157, 4108,
692 0, 4110, 4164, 0, 4115, 4185, 4113, 4196, 0, 4223,
693 4230, 4246, 4256, 4271, 4280, 4324, 4297, 4303, 4305, 4311,
694 214, 213, 4317
695 } ;
696
697 static yyconst flex_int16_t yy_def[1154] =
698 { 0,
699 1146, 1146, 1147, 1147, 1148, 1148, 1, 2, 1, 2,
700 1, 2, 1, 2, 1, 2, 1, 2, 1146, 1146,
701 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
702 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
703 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
704 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
705 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
706 1150, 1146, 1146, 1146, 1146, 1146, 1149, 1149, 1149, 1149,
707 1149, 1146, 1149, 1151, 1151, 1151, 1151, 1151, 1151, 1151,
708 1149, 91, 91, 91, 91, 91, 1152, 1152, 1152, 1152,
709
710 1152, 1152, 1152, 91, 104, 104, 104, 104, 104, 1146,
711 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
712 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
713 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1149, 1149,
714 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
715 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
716 1149, 1149, 1149, 1149, 1149, 1149, 1150, 1146, 1146, 1146,
717 1146, 1146, 1146, 1146, 1149, 1149, 1149, 1149, 1149, 1149,
718 1149, 1146, 1149, 1151, 1151, 1151, 1151, 1151, 91, 91,
719 91, 91, 1152, 1152, 1152, 1152, 1152, 104, 104, 104,
720
721 104, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
722 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
723 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
724 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
725 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
726 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
727 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1149, 1149,
728 1149, 1149, 1149, 1149, 1149, 1146, 1149, 1151, 1151, 91,
729 91, 1152, 1152, 104, 104, 1146, 1146, 1146, 1146, 1146,
730 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
731
732 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
733 1146, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
734 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
735 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1146, 1146, 1146,
736 1146, 1146, 1146, 1146, 1146, 1146, 1149, 1149, 1149, 1149,
737 1149, 1149, 1149, 1146, 1149, 1146, 1146, 1146, 1146, 1146,
738 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
739 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1149,
740 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
741 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
742
743 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
744 1149, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1149, 1149,
745 1149, 1149, 1149, 1149, 1146, 1146, 1146, 1146, 1146, 1146,
746 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
747 1146, 1146, 1146, 1146, 1146, 1149, 1149, 1149, 1149, 1149,
748 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
749 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
750 1149, 1149, 1149, 1149, 1149, 1149, 1146, 1146, 1146, 1146,
751 1146, 1149, 1149, 1149, 1149, 1146, 1146, 1146, 1146, 1146,
752 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
753
754 1146, 1146, 1146, 1146, 1149, 1149, 1149, 1149, 1149, 1149,
755 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
756 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
757 1149, 1149, 1149, 1146, 1146, 1146, 1146, 1146, 1149, 1149,
758 1149, 1149, 1153, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
759 1146, 1146, 1146, 1146, 1146, 1146, 1149, 1149, 1149, 1149,
760 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
761 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
762 1149, 1149, 1149, 1146, 1146, 1146, 1146, 1149, 1149, 1149,
763 1153, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
764
765 1146, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
766 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
767 1149, 1149, 1149, 1149, 1149, 1146, 1146, 1146, 1149, 1149,
768 1153, 1153, 1153, 1153, 1146, 1146, 1146, 1146, 1146, 1146,
769 1146, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
770 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
771 1149, 1149, 1149, 1146, 1146, 1146, 1149, 1149, 1153, 1153,
772 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
773 1153, 1153, 1146, 1146, 1146, 1146, 1146, 1146, 1149, 1149,
774 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
775
776 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1146,
777 1146, 1146, 1149, 1149, 1153, 1153, 1153, 1153, 1153, 1153,
778 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
779 1153, 1146, 1146, 1146, 1146, 1146, 1149, 1149, 1149, 1149,
780 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
781 1149, 1149, 1149, 1149, 1149, 1149, 1146, 1146, 1146, 1149,
782 1149, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
783 1153, 1153, 1153, 1153, 1153, 1146, 1146, 1146, 1146, 1146,
784 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
785 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
786
787 1146, 1146, 1146, 1149, 1149, 1153, 1153, 1153, 1153, 1153,
788 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
789 1153, 1153, 1146, 1146, 1146, 1146, 1149, 1149, 1149, 1149,
790 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
791 1149, 1149, 1149, 1149, 1146, 1153, 1153, 1153, 1153, 1153,
792 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1146,
793 1146, 1146, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
794 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
795 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
796 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1146, 1146, 1146,
797
798 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
799 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1153, 1153, 1153,
800 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
801 1153, 1153, 1146, 1146, 1146, 1149, 1149, 1149, 1149, 1149,
802 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1153, 1153, 1153,
803 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
804 1153, 1153, 1153, 1153, 1153, 1146, 1146, 1149, 1149, 1149,
805 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1153, 1153,
806 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
807 1153, 1153, 1153, 1153, 1153, 1153, 1146, 1146, 1149, 1149,
808
809 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1153, 1153, 1153,
810 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
811 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
812 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1146, 1149,
813 1149, 1149, 1149, 1149, 1149, 1149, 1153, 1153, 1153, 1153,
814 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
815 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
816 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1149, 1149, 1149,
817 1149, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
818 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
819
820 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153,
821 1153, 1153, 1149, 1149, 1149, 1149, 1153, 1149, 1149, 1149,
822 1153, 1149, 1149, 1149, 1153, 1149, 1149, 1149, 1153, 1149,
823 1149, 1149, 1153, 1149, 1149, 1153, 1149, 1153, 1149, 1153,
824 1153, 1153, 1153, 1153, 1153, 0, 1146, 1146, 1146, 1146,
825 1146, 1146, 1146
826 } ;
827
828 static yyconst flex_int16_t yy_nxt[4397] =
829 { 0,
830 20, 21, 22, 23, 21, 24, 25, 26, 20, 27,
831 28, 28, 28, 28, 28, 28, 28, 29, 30, 31,
832 32, 33, 34, 35, 36, 20, 37, 38, 39, 40,
833 41, 42, 43, 44, 20, 45, 20, 46, 47, 20,
834 48, 20, 49, 20, 20, 50, 20, 32, 33, 34,
835 35, 36, 20, 37, 38, 39, 40, 41, 42, 43,
836 44, 20, 45, 20, 46, 47, 20, 48, 20, 49,
837 20, 50, 20, 21, 22, 23, 21, 24, 25, 26,
838 20, 27, 28, 28, 28, 28, 28, 28, 28, 29,
839 30, 31, 51, 52, 53, 54, 55, 56, 57, 58,
840
841 59, 60, 61, 62, 63, 64, 56, 65, 56, 66,
842 67, 56, 68, 56, 69, 56, 56, 70, 20, 51,
843 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
844 62, 63, 64, 56, 65, 56, 66, 67, 56, 68,
845 56, 69, 56, 70, 22, 23, 20, 22, 23, 20,
846 22, 23, 22, 23, 82, 72, 83, 77, 110, 20,
847 115, 110, 20, 73, 74, 78, 79, 75, 76, 80,
848 81, 112, 112, 112, 112, 112, 112, 112, 113, 116,
849 114, 82, 72, 83, 77, 490, 491, 115, 117, 118,
850 73, 74, 78, 79, 75, 76, 80, 81, 84, 84,
851
852 84, 84, 84, 84, 84, 113, 116, 114, 85, 86,
853 87, 88, 89, 90, 110, 117, 118, 110, 194, 185,
854 1115, 119, 122, 123, 1078, 1039, 1039, 1006, 943, 933,
855 124, 125, 128, 136, 137, 85, 86, 87, 88, 89,
856 90, 84, 84, 84, 84, 84, 84, 84, 119, 122,
857 123, 91, 92, 93, 94, 95, 96, 124, 125, 128,
858 136, 137, 933, 868, 138, 864, 142, 861, 845, 838,
859 833, 831, 824, 129, 143, 144, 130, 131, 91, 92,
860 93, 94, 95, 96, 97, 97, 97, 97, 97, 97,
861 97, 138, 132, 142, 98, 99, 100, 101, 102, 103,
862
863 129, 143, 144, 130, 131, 824, 802, 140, 145, 141,
864 184, 184, 184, 184, 184, 184, 184, 785, 758, 132,
865 146, 98, 99, 100, 101, 102, 103, 97, 97, 97,
866 97, 97, 97, 97, 140, 145, 141, 104, 105, 106,
867 107, 108, 109, 120, 126, 133, 147, 146, 121, 134,
868 127, 148, 149, 150, 151, 152, 153, 155, 163, 158,
869 156, 135, 154, 157, 104, 105, 106, 107, 108, 109,
870 120, 126, 133, 147, 159, 121, 134, 127, 148, 149,
871 150, 151, 152, 153, 155, 163, 158, 156, 135, 154,
872 157, 160, 166, 164, 168, 161, 165, 169, 171, 170,
873
874 173, 159, 174, 175, 134, 753, 176, 162, 177, 172,
875 752, 181, 129, 115, 748, 130, 135, 747, 160, 166,
876 164, 168, 161, 165, 169, 171, 170, 173, 180, 174,
877 175, 134, 161, 176, 162, 177, 172, 178, 181, 129,
878 115, 131, 130, 135, 162, 158, 188, 186, 179, 187,
879 117, 156, 118, 746, 157, 180, 182, 737, 115, 161,
880 183, 736, 732, 697, 178, 663, 649, 624, 131, 197,
881 603, 162, 158, 188, 186, 179, 187, 117, 156, 118,
882 192, 157, 189, 182, 189, 115, 189, 183, 189, 189,
883 189, 189, 189, 189, 189, 189, 197, 189, 190, 189,
884
885 191, 189, 189, 189, 189, 117, 189, 192, 189, 189,
886 189, 189, 144, 189, 142, 195, 118, 196, 593, 202,
887 585, 145, 189, 576, 189, 190, 189, 191, 189, 189,
888 189, 189, 117, 189, 557, 189, 201, 189, 198, 144,
889 553, 142, 195, 118, 196, 198, 202, 198, 145, 193,
890 193, 193, 193, 193, 193, 193, 198, 198, 198, 198,
891 198, 198, 198, 201, 142, 198, 199, 198, 200, 198,
892 198, 198, 198, 198, 198, 198, 198, 198, 198, 198,
893 204, 144, 112, 112, 112, 112, 112, 112, 112, 145,
894 205, 142, 206, 199, 198, 200, 198, 198, 198, 209,
895
896 198, 210, 198, 198, 198, 198, 198, 204, 144, 207,
897 211, 544, 213, 214, 208, 215, 145, 205, 216, 206,
898 212, 218, 543, 219, 221, 222, 209, 223, 210, 224,
899 225, 226, 227, 228, 230, 217, 207, 211, 213, 214,
900 231, 208, 215, 233, 234, 216, 235, 212, 218, 220,
901 236, 221, 222, 238, 223, 237, 224, 225, 226, 227,
902 228, 230, 217, 239, 240, 521, 242, 231, 243, 244,
903 233, 234, 245, 235, 241, 247, 220, 236, 248, 250,
904 238, 251, 237, 252, 253, 254, 255, 256, 257, 246,
905 239, 240, 242, 258, 243, 260, 244, 519, 263, 245,
906
907 264, 241, 247, 265, 249, 266, 250, 268, 251, 225,
908 252, 253, 254, 255, 256, 257, 246, 270, 207, 271,
909 258, 272, 260, 208, 262, 263, 267, 264, 273, 275,
910 265, 249, 266, 236, 268, 254, 225, 224, 237, 269,
911 276, 486, 453, 431, 270, 207, 271, 434, 272, 278,
912 208, 262, 274, 267, 253, 273, 275, 277, 204, 189,
913 236, 189, 254, 282, 224, 237, 269, 276, 184, 184,
914 184, 184, 184, 184, 184, 189, 278, 280, 204, 274,
915 281, 253, 431, 425, 277, 204, 189, 189, 189, 189,
916 282, 189, 425, 189, 193, 193, 193, 193, 193, 193,
917
918 193, 286, 189, 233, 280, 204, 198, 198, 198, 284,
919 285, 198, 287, 198, 189, 288, 189, 198, 189, 198,
920 189, 289, 290, 233, 291, 292, 293, 294, 286, 295,
921 233, 296, 297, 198, 198, 198, 284, 298, 198, 287,
922 198, 299, 288, 300, 198, 301, 198, 302, 289, 290,
923 233, 291, 292, 293, 294, 303, 295, 304, 296, 297,
924 305, 307, 308, 309, 298, 310, 311, 312, 299, 313,
925 300, 314, 301, 315, 302, 316, 317, 318, 319, 320,
926 321, 322, 303, 323, 304, 324, 325, 305, 307, 308,
927 309, 326, 310, 311, 312, 327, 313, 328, 314, 329,
928
929 315, 330, 316, 317, 318, 319, 320, 321, 322, 331,
930 323, 332, 324, 325, 333, 334, 336, 337, 326, 340,
931 342, 344, 327, 343, 328, 346, 329, 345, 330, 348,
932 349, 371, 350, 351, 353, 354, 331, 355, 332, 352,
933 367, 333, 334, 336, 337, 356, 340, 342, 344, 343,
934 357, 189, 346, 189, 358, 359, 348, 349, 350, 360,
935 351, 353, 354, 189, 355, 189, 198, 198, 198, 198,
936 363, 364, 356, 365, 366, 368, 369, 357, 189, 370,
937 189, 358, 359, 372, 373, 374, 360, 375, 376, 377,
938 189, 378, 189, 198, 198, 198, 198, 363, 364, 379,
939
940 365, 366, 368, 369, 380, 381, 370, 382, 383, 384,
941 372, 373, 374, 387, 375, 376, 377, 388, 378, 389,
942 390, 391, 392, 393, 394, 395, 379, 396, 397, 398,
943 386, 380, 381, 410, 382, 383, 384, 385, 411, 371,
944 387, 412, 413, 414, 388, 367, 389, 390, 391, 392,
945 393, 394, 395, 415, 396, 397, 398, 399, 362, 416,
946 410, 417, 418, 419, 400, 411, 401, 402, 412, 413,
947 414, 420, 403, 421, 422, 423, 424, 426, 427, 404,
948 415, 405, 406, 407, 408, 409, 416, 428, 417, 418,
949 419, 400, 429, 401, 402, 430, 432, 433, 420, 403,
950
951 421, 422, 423, 424, 426, 427, 404, 435, 405, 406,
952 407, 408, 409, 436, 428, 437, 438, 439, 440, 429,
953 441, 442, 430, 432, 433, 443, 444, 445, 446, 447,
954 448, 449, 450, 451, 435, 452, 454, 455, 456, 457,
955 436, 458, 437, 438, 439, 440, 459, 441, 442, 460,
956 461, 462, 443, 444, 445, 446, 447, 448, 449, 450,
957 451, 467, 452, 454, 455, 456, 457, 470, 458, 463,
958 464, 465, 468, 459, 466, 471, 460, 461, 462, 472,
959 473, 474, 475, 469, 476, 477, 478, 479, 467, 480,
960 481, 482, 483, 484, 470, 485, 463, 464, 465, 487,
961
962 488, 466, 471, 489, 492, 493, 472, 473, 474, 475,
963 469, 476, 477, 478, 479, 494, 480, 481, 482, 483,
964 484, 495, 485, 496, 497, 498, 487, 488, 499, 500,
965 489, 492, 493, 501, 502, 503, 504, 505, 506, 507,
966 508, 509, 494, 510, 511, 512, 513, 515, 495, 514,
967 496, 497, 498, 516, 499, 517, 500, 518, 520, 522,
968 501, 502, 503, 504, 505, 506, 507, 508, 509, 523,
969 510, 511, 512, 513, 515, 514, 524, 525, 526, 527,
970 516, 528, 517, 529, 518, 520, 522, 530, 531, 532,
971 533, 534, 535, 536, 537, 538, 523, 539, 540, 541,
972
973 542, 545, 546, 524, 525, 526, 527, 547, 528, 548,
974 529, 549, 550, 551, 530, 531, 532, 533, 534, 535,
975 536, 537, 538, 552, 539, 540, 541, 542, 545, 546,
976 554, 555, 556, 558, 547, 559, 548, 560, 549, 550,
977 551, 561, 562, 563, 564, 565, 566, 567, 568, 569,
978 552, 570, 571, 574, 575, 572, 579, 554, 555, 556,
979 558, 573, 559, 361, 560, 580, 581, 582, 561, 562,
980 563, 564, 565, 566, 567, 568, 569, 577, 570, 571,
981 574, 575, 572, 579, 583, 584, 586, 587, 573, 588,
982 578, 589, 580, 581, 582, 590, 592, 594, 341, 595,
983
984 596, 597, 598, 600, 577, 599, 601, 602, 604, 605,
985 606, 583, 584, 586, 587, 607, 588, 578, 589, 608,
986 609, 610, 590, 592, 594, 595, 611, 596, 597, 598,
987 600, 599, 612, 601, 602, 604, 605, 606, 613, 614,
988 615, 607, 616, 617, 618, 619, 608, 609, 610, 620,
989 621, 622, 623, 611, 625, 626, 627, 628, 629, 612,
990 630, 347, 341, 339, 338, 613, 614, 615, 635, 616,
991 617, 618, 619, 636, 637, 638, 620, 621, 622, 623,
992 639, 625, 626, 627, 628, 629, 640, 630, 631, 632,
993 633, 634, 634, 634, 634, 635, 641, 642, 643, 644,
994
995 636, 637, 638, 645, 646, 647, 648, 639, 650, 651,
996 652, 653, 654, 640, 655, 656, 657, 658, 659, 660,
997 664, 665, 666, 641, 642, 643, 644, 667, 668, 683,
998 645, 646, 647, 648, 661, 650, 651, 652, 653, 654,
999 335, 655, 656, 657, 658, 659, 660, 664, 665, 666,
1000 662, 306, 306, 283, 667, 668, 683, 279, 261, 684,
1001 669, 661, 631, 632, 633, 634, 634, 634, 634, 715,
1002 716, 717, 718, 718, 718, 718, 669, 662, 670, 671,
1003 672, 673, 673, 673, 673, 669, 684, 674, 675, 676,
1004 677, 677, 678, 679, 669, 685, 680, 681, 682, 679,
1005
1006 679, 679, 679, 686, 687, 688, 689, 690, 691, 692,
1007 693, 694, 695, 696, 698, 699, 700, 259, 701, 702,
1008 703, 704, 685, 705, 706, 707, 708, 709, 710, 711,
1009 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
1010 696, 698, 699, 700, 701, 712, 702, 703, 704, 705,
1011 713, 706, 707, 708, 709, 710, 711, 714, 669, 232,
1012 680, 681, 682, 679, 679, 679, 679, 229, 203, 111,
1013 1146, 1146, 712, 1146, 1146, 733, 1146, 713, 1146, 1146,
1014 1146, 1146, 1146, 669, 714, 719, 720, 721, 722, 722,
1015 722, 722, 669, 734, 723, 724, 725, 726, 726, 727,
1016
1017 728, 669, 733, 729, 730, 731, 728, 728, 728, 728,
1018 669, 735, 680, 681, 682, 679, 679, 679, 679, 669,
1019 734, 719, 720, 721, 722, 722, 722, 722, 669, 738,
1020 723, 724, 725, 726, 726, 727, 728, 669, 735, 729,
1021 730, 731, 728, 728, 728, 728, 669, 739, 729, 730,
1022 731, 728, 728, 728, 679, 669, 738, 680, 681, 682,
1023 679, 679, 679, 679, 669, 740, 631, 632, 633, 634,
1024 634, 634, 634, 669, 739, 670, 671, 672, 673, 673,
1025 673, 673, 669, 741, 674, 675, 676, 677, 677, 678,
1026 679, 742, 740, 743, 744, 745, 749, 750, 751, 754,
1027
1028 755, 756, 757, 759, 760, 761, 1146, 776, 1146, 762,
1029 741, 631, 632, 633, 634, 634, 634, 634, 742, 1146,
1030 743, 744, 745, 749, 750, 751, 754, 755, 756, 757,
1031 759, 760, 761, 762, 776, 763, 764, 765, 766, 766,
1032 766, 766, 762, 777, 767, 768, 769, 770, 770, 771,
1033 772, 762, 778, 773, 774, 775, 772, 772, 772, 772,
1034 669, 779, 680, 681, 682, 679, 679, 679, 679, 669,
1035 777, 719, 720, 721, 722, 722, 722, 722, 669, 778,
1036 723, 724, 725, 726, 726, 727, 728, 669, 779, 729,
1037 730, 731, 728, 728, 728, 728, 669, 780, 680, 681,
1038
1039 682, 679, 679, 679, 679, 669, 781, 719, 720, 721,
1040 722, 722, 722, 722, 669, 782, 723, 724, 725, 726,
1041 726, 727, 728, 669, 780, 729, 730, 731, 728, 728,
1042 728, 728, 669, 781, 729, 730, 731, 728, 728, 728,
1043 679, 669, 782, 680, 681, 682, 679, 679, 679, 679,
1044 669, 783, 631, 632, 633, 634, 634, 634, 634, 669,
1045 784, 670, 671, 672, 673, 673, 673, 673, 669, 786,
1046 674, 675, 676, 677, 677, 678, 679, 787, 783, 788,
1047 789, 790, 791, 792, 793, 794, 795, 784, 796, 797,
1048 798, 799, 800, 801, 803, 804, 786, 805, 1146, 1146,
1049
1050 1146, 1146, 1146, 1146, 787, 1146, 788, 789, 790, 791,
1051 792, 793, 794, 795, 1146, 796, 797, 798, 799, 800,
1052 801, 803, 804, 1146, 805, 806, 807, 808, 809, 809,
1053 809, 809, 762, 823, 773, 774, 775, 772, 772, 772,
1054 772, 762, 826, 810, 811, 812, 813, 813, 813, 813,
1055 762, 827, 814, 815, 816, 817, 817, 818, 819, 762,
1056 823, 820, 821, 822, 819, 819, 819, 819, 762, 826,
1057 773, 774, 775, 772, 772, 772, 772, 762, 827, 810,
1058 811, 812, 813, 813, 813, 813, 762, 829, 814, 815,
1059 816, 817, 817, 818, 819, 762, 1146, 820, 821, 822,
1060
1061 819, 819, 819, 819, 762, 1146, 820, 821, 822, 819,
1062 819, 819, 679, 762, 829, 680, 681, 682, 679, 679,
1063 679, 679, 762, 825, 631, 632, 633, 634, 634, 634,
1064 634, 762, 828, 670, 671, 672, 673, 673, 673, 673,
1065 762, 830, 674, 675, 676, 677, 677, 678, 679, 825,
1066 832, 834, 835, 836, 837, 839, 840, 841, 828, 842,
1067 843, 844, 1146, 860, 1146, 1146, 1146, 846, 830, 631,
1068 632, 633, 634, 634, 634, 634, 1146, 832, 834, 835,
1069 836, 837, 839, 840, 841, 1146, 842, 843, 844, 846,
1070 860, 847, 848, 849, 850, 850, 850, 850, 846, 862,
1071
1072 851, 852, 853, 854, 854, 855, 856, 846, 863, 857,
1073 858, 859, 856, 856, 856, 856, 762, 865, 680, 681,
1074 682, 679, 679, 679, 679, 762, 862, 719, 720, 721,
1075 722, 722, 722, 722, 762, 863, 723, 724, 725, 726,
1076 726, 727, 728, 762, 865, 729, 730, 731, 728, 728,
1077 728, 728, 762, 866, 680, 681, 682, 679, 679, 679,
1078 679, 762, 867, 719, 720, 721, 722, 722, 722, 722,
1079 762, 869, 723, 724, 725, 726, 726, 727, 728, 762,
1080 866, 729, 730, 731, 728, 728, 728, 728, 762, 867,
1081 729, 730, 731, 728, 728, 728, 679, 762, 869, 680,
1082
1083 681, 682, 679, 679, 679, 679, 762, 870, 631, 632,
1084 633, 634, 634, 634, 634, 762, 871, 670, 671, 672,
1085 673, 673, 673, 673, 762, 872, 674, 675, 676, 677,
1086 677, 678, 679, 873, 870, 874, 875, 876, 877, 878,
1087 879, 880, 1146, 871, 881, 882, 883, 884, 884, 884,
1088 884, 846, 872, 857, 858, 859, 856, 856, 856, 856,
1089 873, 898, 874, 875, 876, 877, 878, 879, 880, 846,
1090 899, 885, 886, 887, 888, 888, 888, 888, 846, 900,
1091 889, 890, 891, 892, 892, 893, 894, 846, 898, 895,
1092 896, 897, 894, 894, 894, 894, 846, 899, 857, 858,
1093
1094 859, 856, 856, 856, 856, 846, 900, 885, 886, 887,
1095 888, 888, 888, 888, 846, 901, 889, 890, 891, 892,
1096 892, 893, 894, 846, 902, 895, 896, 897, 894, 894,
1097 894, 894, 846, 903, 895, 896, 897, 894, 894, 894,
1098 679, 846, 901, 680, 681, 682, 679, 679, 679, 679,
1099 846, 902, 631, 632, 633, 634, 634, 634, 634, 846,
1100 903, 670, 671, 672, 673, 673, 673, 673, 846, 904,
1101 674, 675, 676, 677, 677, 678, 679, 905, 906, 1146,
1102 907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
1103 917, 1146, 1146, 1146, 1146, 846, 904, 680, 681, 682,
1104
1105 679, 679, 679, 679, 905, 906, 907, 1146, 908, 909,
1106 910, 911, 912, 913, 914, 915, 916, 917, 846, 918,
1107 631, 632, 633, 634, 634, 634, 634, 919, 846, 918,
1108 920, 921, 922, 923, 923, 923, 923, 919, 846, 918,
1109 924, 925, 926, 927, 927, 928, 929, 919, 846, 918,
1110 930, 931, 932, 929, 929, 929, 929, 919, 846, 934,
1111 719, 720, 721, 722, 722, 722, 722, 846, 935, 723,
1112 724, 725, 726, 726, 727, 728, 846, 936, 729, 730,
1113 731, 728, 728, 728, 728, 846, 934, 680, 681, 682,
1114 679, 679, 679, 679, 846, 935, 719, 720, 721, 722,
1115
1116 722, 722, 722, 846, 936, 723, 724, 725, 726, 726,
1117 727, 728, 846, 937, 729, 730, 731, 728, 728, 728,
1118 728, 846, 938, 729, 730, 731, 728, 728, 728, 679,
1119 846, 939, 680, 681, 682, 679, 679, 679, 679, 846,
1120 937, 631, 632, 633, 634, 634, 634, 634, 846, 938,
1121 670, 671, 672, 673, 673, 673, 673, 846, 939, 674,
1122 675, 676, 677, 677, 678, 679, 940, 941, 942, 944,
1123 945, 946, 947, 631, 632, 633, 634, 634, 634, 634,
1124 949, 950, 951, 952, 952, 952, 952, 1146, 1146, 1146,
1125 1146, 1146, 1146, 940, 941, 942, 944, 945, 946, 947,
1126
1127 966, 967, 968, 969, 970, 948, 846, 918, 930, 931,
1128 932, 929, 929, 929, 929, 919, 846, 918, 953, 954,
1129 955, 956, 956, 956, 956, 919, 1146, 966, 967, 968,
1130 969, 970, 948, 846, 918, 957, 958, 959, 960, 960,
1131 961, 962, 919, 846, 918, 963, 964, 965, 962, 962,
1132 962, 962, 919, 846, 918, 930, 931, 932, 929, 929,
1133 929, 929, 919, 846, 918, 953, 954, 955, 956, 956,
1134 956, 956, 919, 846, 918, 957, 958, 959, 960, 960,
1135 961, 962, 919, 846, 918, 963, 964, 965, 962, 962,
1136 962, 962, 919, 846, 918, 963, 964, 965, 962, 962,
1137
1138 962, 679, 919, 846, 918, 680, 681, 682, 679, 679,
1139 679, 679, 919, 846, 918, 631, 632, 633, 634, 634,
1140 634, 634, 919, 846, 918, 670, 671, 672, 673, 673,
1141 673, 673, 919, 846, 918, 674, 675, 676, 677, 677,
1142 678, 679, 919, 971, 972, 973, 974, 975, 976, 977,
1143 978, 631, 632, 633, 634, 634, 634, 634, 1146, 1146,
1144 997, 998, 999, 1000, 1001, 1002, 979, 1146, 1146, 1146,
1145 971, 972, 973, 974, 975, 976, 977, 978, 669, 918,
1146 980, 981, 982, 983, 983, 983, 983, 997, 998, 999,
1147 1000, 1001, 1002, 979, 669, 918, 984, 985, 986, 987,
1148
1149 987, 987, 987, 669, 918, 988, 989, 990, 991, 991,
1150 992, 993, 669, 918, 994, 995, 996, 993, 993, 993,
1151 993, 846, 918, 680, 681, 682, 679, 679, 679, 679,
1152 919, 846, 918, 719, 720, 721, 722, 722, 722, 722,
1153 919, 846, 918, 723, 724, 725, 726, 726, 727, 728,
1154 919, 846, 918, 729, 730, 731, 728, 728, 728, 728,
1155 919, 846, 918, 680, 681, 682, 679, 679, 679, 679,
1156 919, 846, 918, 719, 720, 721, 722, 722, 722, 722,
1157 919, 846, 918, 723, 724, 725, 726, 726, 727, 728,
1158 919, 846, 918, 729, 730, 731, 728, 728, 728, 728,
1159
1160 919, 846, 918, 729, 730, 731, 728, 728, 728, 679,
1161 919, 846, 918, 680, 681, 682, 679, 679, 679, 679,
1162 919, 846, 918, 631, 632, 633, 634, 634, 634, 634,
1163 919, 846, 918, 670, 671, 672, 673, 673, 673, 673,
1164 919, 846, 918, 674, 675, 676, 677, 677, 678, 679,
1165 919, 1003, 1004, 1005, 1146, 1007, 631, 632, 633, 634,
1166 634, 634, 634, 1146, 1040, 1041, 1042, 1043, 1044, 1008,
1167 631, 1047, 633, 634, 634, 634, 634, 1146, 1003, 1004,
1168 1005, 1007, 669, 918, 1009, 1010, 1011, 1012, 1012, 1012,
1169 1012, 1040, 1041, 1042, 1043, 1044, 1008, 669, 918, 1013,
1170
1171 1014, 1015, 1016, 1016, 1016, 1016, 669, 918, 1017, 1018,
1172 1019, 1020, 1020, 1021, 1022, 669, 918, 1023, 1024, 1025,
1173 1022, 1022, 1022, 1022, 669, 918, 1023, 1024, 1025, 1022,
1174 1022, 1022, 1022, 669, 918, 1026, 1027, 1028, 1029, 1029,
1175 1029, 1029, 669, 918, 1030, 1031, 1032, 1033, 1033, 1034,
1176 1035, 669, 918, 1036, 1037, 1038, 1035, 1035, 1035, 1035,
1177 669, 918, 1023, 1024, 1025, 1022, 1022, 1022, 1022, 669,
1178 918, 1026, 1027, 1028, 1029, 1029, 1029, 1029, 669, 918,
1179 1030, 1031, 1032, 1033, 1033, 1034, 1035, 669, 918, 1036,
1180 1037, 1038, 1035, 1035, 1035, 1035, 669, 918, 1036, 1037,
1181
1182 1038, 1035, 1035, 1035, 1022, 669, 918, 1023, 1024, 1025,
1183 1022, 1022, 1022, 1022, 669, 918, 1009, 1010, 1011, 1012,
1184 1012, 1012, 1012, 669, 918, 1013, 1014, 1015, 1016, 1016,
1185 1016, 1016, 669, 918, 1017, 1018, 1019, 1020, 1020, 1021,
1186 1022, 1045, 1046, 669, 918, 1048, 1049, 1050, 1051, 1051,
1187 1051, 1051, 669, 918, 1052, 1053, 1054, 1055, 1055, 1055,
1188 1055, 1117, 716, 717, 718, 718, 718, 718, 1045, 1046,
1189 669, 918, 1056, 1057, 1058, 1059, 1059, 1060, 1061, 669,
1190 918, 1062, 1063, 1064, 1061, 1061, 1061, 1061, 669, 918,
1191 1062, 1063, 1064, 1061, 1061, 1061, 1061, 669, 918, 1065,
1192
1193 1066, 1067, 1068, 1068, 1068, 1068, 669, 918, 1069, 1070,
1194 1071, 1072, 1072, 1073, 1074, 669, 918, 1075, 1076, 1077,
1195 1074, 1074, 1074, 1074, 669, 918, 1062, 1063, 1064, 1061,
1196 1061, 1061, 1061, 669, 918, 1065, 1066, 1067, 1068, 1068,
1197 1068, 1068, 669, 918, 1069, 1070, 1071, 1072, 1072, 1073,
1198 1074, 669, 918, 1075, 1076, 1077, 1074, 1074, 1074, 1074,
1199 669, 918, 1075, 1076, 1077, 1074, 1074, 1074, 1061, 669,
1200 918, 1062, 1063, 1064, 1061, 1061, 1061, 1061, 669, 918,
1201 1048, 1049, 1050, 1051, 1051, 1051, 1051, 669, 918, 1052,
1202 1053, 1054, 1055, 1055, 1055, 1055, 669, 918, 1056, 1057,
1203
1204 1058, 1059, 1059, 1060, 1061, 669, 918, 1062, 1063, 1064,
1205 1061, 1061, 1061, 1061, 669, 918, 1065, 1066, 1067, 1068,
1206 1068, 1068, 1068, 669, 918, 1069, 1070, 1071, 1072, 1072,
1207 1073, 1074, 669, 918, 1075, 1076, 1077, 1074, 1074, 1074,
1208 1074, 669, 918, 1062, 1063, 1064, 1061, 1061, 1061, 1061,
1209 669, 918, 1065, 1066, 1067, 1068, 1068, 1068, 1068, 669,
1210 918, 1069, 1070, 1071, 1072, 1072, 1073, 1074, 669, 918,
1211 1075, 1076, 1077, 1074, 1074, 1074, 1074, 669, 918, 1075,
1212 1076, 1077, 1074, 1074, 1074, 1061, 669, 918, 1062, 1063,
1213 1064, 1061, 1061, 1061, 1061, 669, 918, 1048, 1049, 1050,
1214
1215 1051, 1051, 1051, 1051, 669, 918, 1052, 1053, 1054, 1055,
1216 1055, 1055, 1055, 669, 918, 1056, 1057, 1058, 1059, 1059,
1217 1060, 1061, 1079, 1146, 1080, 1081, 1082, 1146, 670, 671,
1218 672, 673, 673, 673, 673, 669, 918, 1083, 1084, 1085,
1219 1086, 1086, 1086, 1086, 1146, 1146, 1146, 1146, 1146, 1079,
1220 1080, 1146, 1081, 669, 918, 1087, 1088, 1089, 1090, 1090,
1221 1090, 1090, 669, 918, 1091, 1092, 1093, 1094, 1094, 1095,
1222 1096, 669, 918, 1097, 1098, 1099, 1096, 1096, 1096, 1096,
1223 669, 918, 1097, 1098, 1099, 1096, 1096, 1096, 1096, 669,
1224 918, 1100, 1101, 1102, 1103, 1103, 1103, 1103, 669, 918,
1225
1226 1104, 1105, 1106, 1107, 1107, 1108, 1109, 669, 918, 1110,
1227 1111, 1112, 1109, 1109, 1109, 1109, 669, 918, 1097, 1098,
1228 1099, 1096, 1096, 1096, 1096, 669, 918, 1100, 1101, 1102,
1229 1103, 1103, 1103, 1103, 669, 918, 1104, 1105, 1106, 1107,
1230 1107, 1108, 1109, 669, 918, 1110, 1111, 1112, 1109, 1109,
1231 1109, 1109, 669, 918, 1110, 1111, 1112, 1109, 1109, 1109,
1232 1096, 669, 918, 1097, 1098, 1099, 1096, 1096, 1096, 1096,
1233 669, 918, 1083, 1084, 1085, 1086, 1086, 1086, 1086, 669,
1234 918, 1087, 1088, 1089, 1090, 1090, 1090, 1090, 669, 918,
1235 1091, 1092, 1093, 1094, 1094, 1095, 1096, 669, 918, 1097,
1236
1237 1098, 1099, 1096, 1096, 1096, 1096, 669, 918, 1100, 1101,
1238 1102, 1103, 1103, 1103, 1103, 669, 918, 1104, 1105, 1106,
1239 1107, 1107, 1108, 1109, 669, 918, 1110, 1111, 1112, 1109,
1240 1109, 1109, 1109, 669, 918, 1097, 1098, 1099, 1096, 1096,
1241 1096, 1096, 669, 918, 1100, 1101, 1102, 1103, 1103, 1103,
1242 1103, 669, 918, 1104, 1105, 1106, 1107, 1107, 1108, 1109,
1243 669, 918, 1110, 1111, 1112, 1109, 1109, 1109, 1109, 669,
1244 918, 1110, 1111, 1112, 1109, 1109, 1109, 1096, 669, 918,
1245 1097, 1098, 1099, 1096, 1096, 1096, 1096, 669, 918, 1083,
1246 1084, 1085, 1086, 1086, 1086, 1086, 669, 918, 1087, 1088,
1247
1248 1089, 1090, 1090, 1090, 1090, 669, 918, 1091, 1092, 1093,
1249 1094, 1094, 1095, 1096, 1113, 1114, 1116, 669, 918, 631,
1250 632, 633, 634, 634, 634, 634, 669, 918, 670, 671,
1251 672, 673, 673, 673, 673, 1146, 1146, 1146, 1146, 1146,
1252 1146, 1113, 1114, 1116, 669, 918, 674, 675, 676, 677,
1253 677, 678, 679, 669, 918, 680, 681, 682, 679, 679,
1254 679, 679, 669, 918, 680, 681, 682, 679, 679, 679,
1255 679, 669, 918, 719, 720, 721, 722, 722, 722, 722,
1256 669, 918, 723, 724, 725, 726, 726, 727, 728, 669,
1257 918, 729, 730, 731, 728, 728, 728, 728, 669, 918,
1258
1259 680, 681, 682, 679, 679, 679, 679, 669, 918, 719,
1260 720, 721, 722, 722, 722, 722, 669, 918, 723, 724,
1261 725, 726, 726, 727, 728, 669, 918, 729, 730, 731,
1262 728, 728, 728, 728, 669, 918, 729, 730, 731, 728,
1263 728, 728, 679, 669, 918, 680, 681, 682, 679, 679,
1264 679, 679, 669, 918, 631, 632, 633, 634, 634, 634,
1265 634, 669, 918, 670, 671, 672, 673, 673, 673, 673,
1266 669, 918, 674, 675, 676, 677, 677, 678, 679, 669,
1267 918, 680, 681, 682, 679, 679, 679, 679, 669, 918,
1268 719, 720, 721, 722, 722, 722, 722, 669, 918, 723,
1269
1270 724, 725, 726, 726, 727, 728, 669, 918, 729, 730,
1271 731, 728, 728, 728, 728, 669, 918, 680, 681, 682,
1272 679, 679, 679, 679, 669, 918, 719, 720, 721, 722,
1273 722, 722, 722, 669, 918, 723, 724, 725, 726, 726,
1274 727, 728, 669, 918, 729, 730, 731, 728, 728, 728,
1275 728, 669, 918, 729, 730, 731, 728, 728, 728, 679,
1276 669, 918, 680, 681, 682, 679, 679, 679, 679, 669,
1277 918, 631, 632, 633, 634, 634, 634, 634, 669, 918,
1278 670, 671, 672, 673, 673, 673, 673, 669, 918, 674,
1279 675, 676, 677, 677, 678, 679, 1118, 1119, 1120, 762,
1280
1281 1121, 631, 632, 633, 634, 634, 634, 634, 1122, 1123,
1282 1124, 631, 632, 633, 634, 634, 634, 634, 1126, 1127,
1283 1128, 1130, 1131, 1118, 1119, 1120, 631, 632, 633, 634,
1284 634, 634, 634, 1132, 1134, 1122, 1123, 1124, 1135, 1125,
1285 1146, 1146, 1146, 1146, 1146, 1126, 1127, 1128, 1130, 1131,
1286 1146, 1146, 1146, 1146, 1137, 1129, 1146, 1139, 1146, 1146,
1287 1132, 1134, 1146, 1146, 1146, 1135, 1125, 631, 632, 633,
1288 634, 634, 634, 634, 631, 632, 633, 634, 634, 634,
1289 634, 1137, 1129, 1139, 1146, 1146, 1146, 1146, 1136, 1146,
1290 1146, 1146, 1146, 1146, 1133, 631, 632, 633, 634, 634,
1291
1292 634, 634, 1146, 1146, 1146, 1138, 631, 632, 633, 634,
1293 634, 634, 634, 1146, 1146, 1136, 1146, 1146, 1146, 1146,
1294 1146, 1133, 1146, 1146, 1146, 1146, 1146, 1146, 1140, 1146,
1295 1146, 1146, 1138, 631, 632, 633, 634, 634, 634, 634,
1296 631, 632, 633, 634, 634, 634, 634, 1146, 1146, 1146,
1297 1146, 1141, 1146, 1142, 1146, 1140, 631, 632, 633, 634,
1298 634, 634, 634, 1146, 1146, 1143, 1144, 1145, 633, 634,
1299 634, 634, 634, 1146, 1146, 1146, 1146, 1146, 1141, 669,
1300 1142, 631, 632, 633, 634, 634, 634, 634, 669, 1146,
1301 670, 671, 672, 673, 673, 673, 673, 71, 71, 71,
1302
1303 71, 71, 71, 20, 20, 20, 20, 20, 20, 139,
1304 139, 167, 167, 1146, 1146, 167, 167, 591, 1146, 1146,
1305 591, 591, 591, 19, 1146, 1146, 1146, 1146, 1146, 1146,
1306 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1307 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1308 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1309 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1310 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1311 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1312 1146, 1146, 1146, 1146, 1146, 1146
1313
1314 } ;
1315
1316 static yyconst flex_int16_t yy_chk[4397] =
1317 { 0,
1318 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1319 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1320 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1321 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1322 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1323 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1324 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1325 1, 1, 2, 2, 2, 2, 2, 2, 2, 2,
1326 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1327 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1328
1329 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1330 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1331 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1332 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1333 2, 2, 2, 2, 3, 3, 3, 4, 4, 4,
1334 5, 5, 6, 6, 13, 7, 14, 8, 21, 3,
1335 33, 21, 4, 7, 7, 8, 8, 7, 7, 8,
1336 8, 28, 28, 28, 28, 28, 28, 28, 32, 34,
1337 32, 13, 7, 14, 8, 431, 431, 33, 35, 36,
1338 7, 7, 8, 8, 7, 7, 8, 8, 15, 15,
1339
1340 15, 15, 15, 15, 15, 32, 34, 32, 15, 15,
1341 15, 15, 15, 15, 110, 35, 36, 110, 1152, 1151,
1342 1080, 37, 39, 40, 1041, 999, 997, 976, 912, 901,
1343 41, 42, 44, 48, 49, 15, 15, 15, 15, 15,
1344 15, 16, 16, 16, 16, 16, 16, 16, 37, 39,
1345 40, 16, 16, 16, 16, 16, 16, 41, 42, 44,
1346 48, 49, 898, 832, 50, 828, 52, 825, 802, 794,
1347 789, 787, 782, 45, 53, 54, 45, 46, 16, 16,
1348 16, 16, 16, 16, 17, 17, 17, 17, 17, 17,
1349 17, 50, 46, 52, 17, 17, 17, 17, 17, 17,
1350
1351 45, 53, 54, 45, 46, 777, 758, 51, 55, 51,
1352 84, 84, 84, 84, 84, 84, 84, 741, 711, 46,
1353 57, 17, 17, 17, 17, 17, 17, 18, 18, 18,
1354 18, 18, 18, 18, 51, 55, 51, 18, 18, 18,
1355 18, 18, 18, 38, 43, 47, 58, 57, 38, 47,
1356 43, 58, 59, 60, 61, 62, 63, 64, 68, 66,
1357 65, 47, 63, 65, 18, 18, 18, 18, 18, 18,
1358 38, 43, 47, 58, 66, 38, 47, 43, 58, 59,
1359 60, 61, 62, 63, 64, 68, 66, 65, 47, 63,
1360 65, 67, 70, 69, 72, 67, 69, 73, 74, 73,
1361
1362 75, 66, 76, 77, 75, 706, 78, 67, 78, 74,
1363 705, 81, 74, 86, 701, 74, 75, 700, 67, 70,
1364 69, 72, 67, 69, 73, 74, 73, 75, 80, 76,
1365 77, 75, 80, 78, 67, 78, 74, 79, 81, 74,
1366 86, 82, 74, 75, 80, 83, 87, 85, 79, 85,
1367 88, 79, 89, 699, 79, 80, 82, 689, 99, 80,
1368 83, 687, 683, 651, 79, 625, 611, 582, 82, 100,
1369 558, 80, 83, 87, 85, 79, 85, 88, 79, 89,
1370 93, 79, 93, 82, 96, 99, 96, 83, 91, 91,
1371 91, 91, 91, 91, 91, 92, 100, 92, 91, 91,
1372
1373 91, 91, 91, 91, 94, 101, 94, 93, 95, 93,
1374 95, 96, 94, 96, 92, 98, 102, 98, 545, 113,
1375 536, 95, 92, 527, 92, 91, 91, 91, 91, 91,
1376 91, 94, 101, 94, 506, 95, 106, 95, 106, 94,
1377 501, 92, 98, 102, 98, 105, 113, 105, 95, 97,
1378 97, 97, 97, 97, 97, 97, 104, 104, 104, 104,
1379 104, 104, 104, 106, 105, 106, 104, 104, 104, 104,
1380 104, 104, 105, 107, 105, 107, 108, 109, 108, 109,
1381 116, 107, 112, 112, 112, 112, 112, 112, 112, 108,
1382 117, 105, 118, 104, 104, 104, 104, 104, 104, 120,
1383
1384 107, 121, 107, 108, 109, 108, 109, 116, 107, 119,
1385 122, 488, 123, 124, 119, 125, 108, 117, 126, 118,
1386 122, 127, 486, 128, 129, 130, 120, 131, 121, 132,
1387 133, 134, 135, 136, 138, 126, 119, 122, 123, 124,
1388 140, 119, 125, 143, 144, 126, 145, 122, 127, 128,
1389 146, 129, 130, 147, 131, 146, 132, 133, 134, 135,
1390 136, 138, 126, 148, 149, 464, 150, 140, 151, 152,
1391 143, 144, 153, 145, 149, 154, 128, 146, 155, 156,
1392 147, 157, 146, 158, 159, 160, 161, 162, 163, 153,
1393 148, 149, 150, 164, 151, 166, 152, 462, 169, 153,
1394
1395 170, 149, 154, 171, 155, 172, 156, 174, 157, 173,
1396 158, 159, 160, 161, 162, 163, 153, 176, 168, 177,
1397 164, 178, 166, 168, 168, 169, 173, 170, 179, 181,
1398 171, 155, 172, 175, 174, 180, 173, 182, 175, 175,
1399 182, 425, 388, 385, 176, 168, 177, 364, 178, 186,
1400 168, 168, 180, 173, 183, 179, 181, 183, 188, 189,
1401 175, 189, 180, 195, 182, 175, 175, 182, 184, 184,
1402 184, 184, 184, 184, 184, 190, 186, 190, 197, 180,
1403 191, 183, 361, 355, 183, 188, 189, 191, 189, 191,
1404 195, 192, 354, 192, 193, 193, 193, 193, 193, 193,
1405
1406 193, 204, 190, 192, 190, 197, 198, 199, 198, 199,
1407 200, 201, 205, 201, 191, 206, 191, 200, 192, 200,
1408 192, 207, 208, 201, 209, 210, 211, 212, 204, 213,
1409 192, 214, 215, 198, 199, 198, 199, 216, 201, 205,
1410 201, 217, 206, 218, 200, 219, 200, 220, 207, 208,
1411 201, 209, 210, 211, 212, 221, 213, 222, 214, 215,
1412 223, 225, 226, 227, 216, 229, 230, 233, 217, 234,
1413 218, 235, 219, 236, 220, 237, 238, 239, 240, 241,
1414 242, 243, 221, 244, 222, 245, 246, 223, 225, 226,
1415 227, 247, 229, 230, 233, 248, 234, 249, 235, 250,
1416
1417 236, 251, 237, 238, 239, 240, 241, 242, 243, 252,
1418 244, 254, 245, 246, 255, 256, 259, 260, 247, 263,
1419 265, 267, 248, 266, 249, 268, 250, 267, 251, 270,
1420 272, 329, 273, 274, 275, 276, 252, 277, 254, 274,
1421 324, 255, 256, 259, 260, 286, 263, 265, 267, 266,
1422 287, 280, 268, 280, 288, 289, 270, 272, 273, 290,
1423 274, 275, 276, 281, 277, 281, 284, 285, 284, 285,
1424 293, 294, 286, 295, 296, 299, 300, 287, 280, 301,
1425 280, 288, 289, 304, 305, 306, 290, 307, 308, 309,
1426 281, 310, 281, 284, 285, 284, 285, 293, 294, 311,
1427
1428 295, 296, 299, 300, 312, 313, 301, 314, 315, 316,
1429 304, 305, 306, 319, 307, 308, 309, 320, 310, 321,
1430 322, 325, 326, 327, 330, 331, 311, 332, 333, 334,
1431 318, 312, 313, 336, 314, 315, 316, 317, 337, 303,
1432 319, 339, 340, 341, 320, 298, 321, 322, 325, 326,
1433 327, 330, 331, 342, 332, 333, 334, 335, 292, 344,
1434 336, 345, 346, 347, 335, 337, 335, 335, 339, 340,
1435 341, 348, 335, 349, 351, 352, 353, 356, 357, 335,
1436 342, 335, 335, 335, 335, 335, 344, 358, 345, 346,
1437 347, 335, 359, 335, 335, 360, 362, 363, 348, 335,
1438
1439 349, 351, 352, 353, 356, 357, 335, 365, 335, 335,
1440 335, 335, 335, 366, 358, 367, 369, 372, 373, 359,
1441 374, 375, 360, 362, 363, 376, 377, 379, 380, 381,
1442 382, 383, 384, 386, 365, 387, 389, 390, 392, 394,
1443 366, 395, 367, 369, 372, 373, 396, 374, 375, 397,
1444 398, 399, 376, 377, 379, 380, 381, 382, 383, 384,
1445 386, 402, 387, 389, 390, 392, 394, 404, 395, 400,
1446 400, 401, 403, 396, 401, 405, 397, 398, 399, 406,
1447 407, 408, 409, 403, 411, 412, 413, 414, 402, 417,
1448 418, 419, 420, 423, 404, 424, 400, 400, 401, 427,
1449
1450 429, 401, 405, 430, 432, 433, 406, 407, 408, 409,
1451 403, 411, 412, 413, 414, 434, 417, 418, 419, 420,
1452 423, 435, 424, 436, 437, 438, 427, 429, 439, 440,
1453 430, 432, 433, 441, 442, 443, 444, 447, 449, 450,
1454 451, 452, 434, 453, 454, 455, 456, 458, 435, 457,
1455 436, 437, 438, 459, 439, 460, 440, 461, 463, 465,
1456 441, 442, 443, 444, 447, 449, 450, 451, 452, 466,
1457 453, 454, 455, 456, 458, 457, 466, 467, 468, 469,
1458 459, 470, 460, 471, 461, 463, 465, 472, 473, 474,
1459 475, 477, 478, 479, 480, 481, 466, 482, 483, 484,
1460
1461 485, 492, 493, 466, 467, 468, 469, 494, 470, 495,
1462 471, 496, 497, 498, 472, 473, 474, 475, 477, 478,
1463 479, 480, 481, 500, 482, 483, 484, 485, 492, 493,
1464 502, 503, 504, 508, 494, 509, 495, 510, 496, 497,
1465 498, 511, 512, 513, 515, 516, 517, 518, 519, 520,
1466 500, 521, 522, 524, 525, 523, 529, 502, 503, 504,
1467 508, 523, 509, 291, 510, 530, 531, 532, 511, 512,
1468 513, 515, 516, 517, 518, 519, 520, 528, 521, 522,
1469 524, 525, 523, 529, 533, 534, 537, 538, 523, 539,
1470 528, 541, 530, 531, 532, 542, 544, 547, 271, 550,
1471
1472 551, 552, 553, 555, 528, 554, 556, 557, 560, 563,
1473 564, 533, 534, 537, 538, 565, 539, 528, 541, 566,
1474 567, 568, 542, 544, 547, 550, 569, 551, 552, 553,
1475 555, 554, 570, 556, 557, 560, 563, 564, 571, 572,
1476 573, 565, 574, 575, 576, 577, 566, 567, 568, 578,
1477 579, 580, 581, 569, 583, 584, 585, 586, 588, 570,
1478 589, 269, 264, 262, 261, 571, 572, 573, 592, 574,
1479 575, 576, 577, 593, 594, 596, 578, 579, 580, 581,
1480 597, 583, 584, 585, 586, 588, 598, 589, 591, 591,
1481 591, 591, 591, 591, 591, 592, 600, 602, 603, 604,
1482
1483 593, 594, 596, 605, 606, 608, 610, 597, 612, 613,
1484 614, 615, 616, 598, 617, 618, 619, 620, 622, 623,
1485 626, 627, 628, 600, 602, 603, 604, 629, 630, 635,
1486 605, 606, 608, 610, 624, 612, 613, 614, 615, 616,
1487 258, 617, 618, 619, 620, 622, 623, 626, 627, 628,
1488 624, 253, 224, 196, 629, 630, 635, 187, 167, 636,
1489 631, 624, 631, 631, 631, 631, 631, 631, 631, 669,
1490 669, 669, 669, 669, 669, 669, 632, 624, 632, 632,
1491 632, 632, 632, 632, 632, 633, 636, 633, 633, 633,
1492 633, 633, 633, 633, 634, 637, 634, 634, 634, 634,
1493
1494 634, 634, 634, 639, 640, 641, 642, 643, 644, 646,
1495 647, 648, 649, 650, 652, 653, 654, 165, 655, 656,
1496 657, 658, 637, 659, 660, 661, 662, 663, 664, 665,
1497 639, 640, 641, 642, 643, 644, 646, 647, 648, 649,
1498 650, 652, 653, 654, 655, 666, 656, 657, 658, 659,
1499 667, 660, 661, 662, 663, 664, 665, 668, 670, 141,
1500 670, 670, 670, 670, 670, 670, 670, 137, 114, 23,
1501 19, 0, 666, 0, 0, 684, 0, 667, 0, 0,
1502 0, 0, 0, 671, 668, 671, 671, 671, 671, 671,
1503 671, 671, 672, 685, 672, 672, 672, 672, 672, 672,
1504
1505 672, 673, 684, 673, 673, 673, 673, 673, 673, 673,
1506 674, 686, 674, 674, 674, 674, 674, 674, 674, 675,
1507 685, 675, 675, 675, 675, 675, 675, 675, 676, 690,
1508 676, 676, 676, 676, 676, 676, 676, 677, 686, 677,
1509 677, 677, 677, 677, 677, 677, 678, 691, 678, 678,
1510 678, 678, 678, 678, 678, 679, 690, 679, 679, 679,
1511 679, 679, 679, 679, 680, 692, 680, 680, 680, 680,
1512 680, 680, 680, 681, 691, 681, 681, 681, 681, 681,
1513 681, 681, 682, 694, 682, 682, 682, 682, 682, 682,
1514 682, 695, 692, 696, 697, 698, 702, 703, 704, 707,
1515
1516 708, 709, 710, 712, 713, 714, 0, 732, 0, 715,
1517 694, 715, 715, 715, 715, 715, 715, 715, 695, 0,
1518 696, 697, 698, 702, 703, 704, 707, 708, 709, 710,
1519 712, 713, 714, 716, 732, 716, 716, 716, 716, 716,
1520 716, 716, 717, 733, 717, 717, 717, 717, 717, 717,
1521 717, 718, 734, 718, 718, 718, 718, 718, 718, 718,
1522 719, 735, 719, 719, 719, 719, 719, 719, 719, 720,
1523 733, 720, 720, 720, 720, 720, 720, 720, 721, 734,
1524 721, 721, 721, 721, 721, 721, 721, 722, 735, 722,
1525 722, 722, 722, 722, 722, 722, 723, 736, 723, 723,
1526
1527 723, 723, 723, 723, 723, 724, 737, 724, 724, 724,
1528 724, 724, 724, 724, 725, 738, 725, 725, 725, 725,
1529 725, 725, 725, 726, 736, 726, 726, 726, 726, 726,
1530 726, 726, 727, 737, 727, 727, 727, 727, 727, 727,
1531 727, 728, 738, 728, 728, 728, 728, 728, 728, 728,
1532 729, 739, 729, 729, 729, 729, 729, 729, 729, 730,
1533 740, 730, 730, 730, 730, 730, 730, 730, 731, 742,
1534 731, 731, 731, 731, 731, 731, 731, 743, 739, 744,
1535 745, 746, 747, 748, 749, 750, 751, 740, 752, 753,
1536 754, 755, 756, 757, 759, 760, 742, 761, 0, 0,
1537
1538 0, 0, 0, 0, 743, 0, 744, 745, 746, 747,
1539 748, 749, 750, 751, 0, 752, 753, 754, 755, 756,
1540 757, 759, 760, 0, 761, 762, 762, 762, 762, 762,
1541 762, 762, 763, 776, 763, 763, 763, 763, 763, 763,
1542 763, 764, 780, 764, 764, 764, 764, 764, 764, 764,
1543 765, 781, 765, 765, 765, 765, 765, 765, 765, 766,
1544 776, 766, 766, 766, 766, 766, 766, 766, 767, 780,
1545 767, 767, 767, 767, 767, 767, 767, 768, 781, 768,
1546 768, 768, 768, 768, 768, 768, 769, 785, 769, 769,
1547 769, 769, 769, 769, 769, 770, 0, 770, 770, 770,
1548
1549 770, 770, 770, 770, 771, 0, 771, 771, 771, 771,
1550 771, 771, 771, 772, 785, 772, 772, 772, 772, 772,
1551 772, 772, 773, 778, 773, 773, 773, 773, 773, 773,
1552 773, 774, 783, 774, 774, 774, 774, 774, 774, 774,
1553 775, 786, 775, 775, 775, 775, 775, 775, 775, 778,
1554 788, 790, 791, 792, 793, 795, 796, 797, 783, 798,
1555 799, 800, 0, 823, 0, 0, 0, 806, 786, 806,
1556 806, 806, 806, 806, 806, 806, 0, 788, 790, 791,
1557 792, 793, 795, 796, 797, 0, 798, 799, 800, 807,
1558 823, 807, 807, 807, 807, 807, 807, 807, 808, 826,
1559
1560 808, 808, 808, 808, 808, 808, 808, 809, 827, 809,
1561 809, 809, 809, 809, 809, 809, 810, 829, 810, 810,
1562 810, 810, 810, 810, 810, 811, 826, 811, 811, 811,
1563 811, 811, 811, 811, 812, 827, 812, 812, 812, 812,
1564 812, 812, 812, 813, 829, 813, 813, 813, 813, 813,
1565 813, 813, 814, 830, 814, 814, 814, 814, 814, 814,
1566 814, 815, 831, 815, 815, 815, 815, 815, 815, 815,
1567 816, 833, 816, 816, 816, 816, 816, 816, 816, 817,
1568 830, 817, 817, 817, 817, 817, 817, 817, 818, 831,
1569 818, 818, 818, 818, 818, 818, 818, 819, 833, 819,
1570
1571 819, 819, 819, 819, 819, 819, 820, 834, 820, 820,
1572 820, 820, 820, 820, 820, 821, 835, 821, 821, 821,
1573 821, 821, 821, 821, 822, 836, 822, 822, 822, 822,
1574 822, 822, 822, 837, 834, 838, 839, 840, 841, 842,
1575 843, 844, 0, 835, 846, 846, 846, 846, 846, 846,
1576 846, 847, 836, 847, 847, 847, 847, 847, 847, 847,
1577 837, 860, 838, 839, 840, 841, 842, 843, 844, 848,
1578 861, 848, 848, 848, 848, 848, 848, 848, 849, 862,
1579 849, 849, 849, 849, 849, 849, 849, 850, 860, 850,
1580 850, 850, 850, 850, 850, 850, 851, 861, 851, 851,
1581
1582 851, 851, 851, 851, 851, 852, 862, 852, 852, 852,
1583 852, 852, 852, 852, 853, 863, 853, 853, 853, 853,
1584 853, 853, 853, 854, 864, 854, 854, 854, 854, 854,
1585 854, 854, 855, 865, 855, 855, 855, 855, 855, 855,
1586 855, 856, 863, 856, 856, 856, 856, 856, 856, 856,
1587 857, 864, 857, 857, 857, 857, 857, 857, 857, 858,
1588 865, 858, 858, 858, 858, 858, 858, 858, 859, 866,
1589 859, 859, 859, 859, 859, 859, 859, 867, 868, 0,
1590 869, 870, 871, 872, 874, 875, 876, 877, 878, 879,
1591 880, 0, 0, 0, 0, 885, 866, 885, 885, 885,
1592
1593 885, 885, 885, 885, 867, 868, 869, 0, 870, 871,
1594 872, 874, 875, 876, 877, 878, 879, 880, 881, 881,
1595 881, 881, 881, 881, 881, 881, 881, 881, 882, 882,
1596 882, 882, 882, 882, 882, 882, 882, 882, 883, 883,
1597 883, 883, 883, 883, 883, 883, 883, 883, 884, 884,
1598 884, 884, 884, 884, 884, 884, 884, 884, 886, 899,
1599 886, 886, 886, 886, 886, 886, 886, 887, 900, 887,
1600 887, 887, 887, 887, 887, 887, 888, 902, 888, 888,
1601 888, 888, 888, 888, 888, 889, 899, 889, 889, 889,
1602 889, 889, 889, 889, 890, 900, 890, 890, 890, 890,
1603
1604 890, 890, 890, 891, 902, 891, 891, 891, 891, 891,
1605 891, 891, 892, 903, 892, 892, 892, 892, 892, 892,
1606 892, 893, 905, 893, 893, 893, 893, 893, 893, 893,
1607 894, 906, 894, 894, 894, 894, 894, 894, 894, 895,
1608 903, 895, 895, 895, 895, 895, 895, 895, 896, 905,
1609 896, 896, 896, 896, 896, 896, 896, 897, 906, 897,
1610 897, 897, 897, 897, 897, 897, 907, 908, 911, 913,
1611 914, 915, 917, 918, 918, 918, 918, 918, 918, 918,
1612 919, 919, 919, 919, 919, 919, 919, 0, 0, 0,
1613 0, 0, 0, 907, 908, 911, 913, 914, 915, 917,
1614
1615 934, 935, 936, 937, 938, 918, 920, 920, 920, 920,
1616 920, 920, 920, 920, 920, 920, 921, 921, 921, 921,
1617 921, 921, 921, 921, 921, 921, 0, 934, 935, 936,
1618 937, 938, 918, 922, 922, 922, 922, 922, 922, 922,
1619 922, 922, 922, 923, 923, 923, 923, 923, 923, 923,
1620 923, 923, 923, 924, 924, 924, 924, 924, 924, 924,
1621 924, 924, 924, 925, 925, 925, 925, 925, 925, 925,
1622 925, 925, 925, 926, 926, 926, 926, 926, 926, 926,
1623 926, 926, 926, 927, 927, 927, 927, 927, 927, 927,
1624 927, 927, 927, 928, 928, 928, 928, 928, 928, 928,
1625
1626 928, 928, 928, 929, 929, 929, 929, 929, 929, 929,
1627 929, 929, 929, 930, 930, 930, 930, 930, 930, 930,
1628 930, 930, 930, 931, 931, 931, 931, 931, 931, 931,
1629 931, 931, 931, 932, 932, 932, 932, 932, 932, 932,
1630 932, 932, 932, 939, 940, 941, 942, 943, 944, 945,
1631 946, 948, 948, 948, 948, 948, 948, 948, 0, 0,
1632 966, 967, 968, 969, 970, 971, 948, 0, 0, 0,
1633 939, 940, 941, 942, 943, 944, 945, 946, 949, 949,
1634 949, 949, 949, 949, 949, 949, 949, 966, 967, 968,
1635 969, 970, 971, 948, 950, 950, 950, 950, 950, 950,
1636
1637 950, 950, 950, 951, 951, 951, 951, 951, 951, 951,
1638 951, 951, 952, 952, 952, 952, 952, 952, 952, 952,
1639 952, 953, 953, 953, 953, 953, 953, 953, 953, 953,
1640 953, 954, 954, 954, 954, 954, 954, 954, 954, 954,
1641 954, 955, 955, 955, 955, 955, 955, 955, 955, 955,
1642 955, 956, 956, 956, 956, 956, 956, 956, 956, 956,
1643 956, 957, 957, 957, 957, 957, 957, 957, 957, 957,
1644 957, 958, 958, 958, 958, 958, 958, 958, 958, 958,
1645 958, 959, 959, 959, 959, 959, 959, 959, 959, 959,
1646 959, 960, 960, 960, 960, 960, 960, 960, 960, 960,
1647
1648 960, 961, 961, 961, 961, 961, 961, 961, 961, 961,
1649 961, 962, 962, 962, 962, 962, 962, 962, 962, 962,
1650 962, 963, 963, 963, 963, 963, 963, 963, 963, 963,
1651 963, 964, 964, 964, 964, 964, 964, 964, 964, 964,
1652 964, 965, 965, 965, 965, 965, 965, 965, 965, 965,
1653 965, 973, 974, 975, 0, 978, 979, 979, 979, 979,
1654 979, 979, 979, 0, 1000, 1001, 1002, 1003, 1004, 979,
1655 1008, 1008, 1008, 1008, 1008, 1008, 1008, 0, 973, 974,
1656 975, 978, 980, 980, 980, 980, 980, 980, 980, 980,
1657 980, 1000, 1001, 1002, 1003, 1004, 979, 981, 981, 981,
1658
1659 981, 981, 981, 981, 981, 981, 982, 982, 982, 982,
1660 982, 982, 982, 982, 982, 983, 983, 983, 983, 983,
1661 983, 983, 983, 983, 984, 984, 984, 984, 984, 984,
1662 984, 984, 984, 985, 985, 985, 985, 985, 985, 985,
1663 985, 985, 986, 986, 986, 986, 986, 986, 986, 986,
1664 986, 987, 987, 987, 987, 987, 987, 987, 987, 987,
1665 988, 988, 988, 988, 988, 988, 988, 988, 988, 989,
1666 989, 989, 989, 989, 989, 989, 989, 989, 990, 990,
1667 990, 990, 990, 990, 990, 990, 990, 991, 991, 991,
1668 991, 991, 991, 991, 991, 991, 992, 992, 992, 992,
1669
1670 992, 992, 992, 992, 992, 993, 993, 993, 993, 993,
1671 993, 993, 993, 993, 994, 994, 994, 994, 994, 994,
1672 994, 994, 994, 995, 995, 995, 995, 995, 995, 995,
1673 995, 995, 996, 996, 996, 996, 996, 996, 996, 996,
1674 996, 1005, 1006, 1009, 1009, 1009, 1009, 1009, 1009, 1009,
1675 1009, 1009, 1010, 1010, 1010, 1010, 1010, 1010, 1010, 1010,
1676 1010, 1082, 1082, 1082, 1082, 1082, 1082, 1082, 1005, 1006,
1677 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1011, 1012,
1678 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1012, 1013, 1013,
1679 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1014, 1014, 1014,
1680
1681 1014, 1014, 1014, 1014, 1014, 1014, 1015, 1015, 1015, 1015,
1682 1015, 1015, 1015, 1015, 1015, 1016, 1016, 1016, 1016, 1016,
1683 1016, 1016, 1016, 1016, 1017, 1017, 1017, 1017, 1017, 1017,
1684 1017, 1017, 1017, 1018, 1018, 1018, 1018, 1018, 1018, 1018,
1685 1018, 1018, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019,
1686 1019, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020,
1687 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1022,
1688 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1022, 1023, 1023,
1689 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1024, 1024, 1024,
1690 1024, 1024, 1024, 1024, 1024, 1024, 1025, 1025, 1025, 1025,
1691
1692 1025, 1025, 1025, 1025, 1025, 1026, 1026, 1026, 1026, 1026,
1693 1026, 1026, 1026, 1026, 1027, 1027, 1027, 1027, 1027, 1027,
1694 1027, 1027, 1027, 1028, 1028, 1028, 1028, 1028, 1028, 1028,
1695 1028, 1028, 1029, 1029, 1029, 1029, 1029, 1029, 1029, 1029,
1696 1029, 1030, 1030, 1030, 1030, 1030, 1030, 1030, 1030, 1030,
1697 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1032,
1698 1032, 1032, 1032, 1032, 1032, 1032, 1032, 1032, 1033, 1033,
1699 1033, 1033, 1033, 1033, 1033, 1033, 1033, 1034, 1034, 1034,
1700 1034, 1034, 1034, 1034, 1034, 1034, 1035, 1035, 1035, 1035,
1701 1035, 1035, 1035, 1035, 1035, 1036, 1036, 1036, 1036, 1036,
1702
1703 1036, 1036, 1036, 1036, 1037, 1037, 1037, 1037, 1037, 1037,
1704 1037, 1037, 1037, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
1705 1038, 1038, 1043, 0, 1044, 1046, 1047, 0, 1047, 1047,
1706 1047, 1047, 1047, 1047, 1047, 1048, 1048, 1048, 1048, 1048,
1707 1048, 1048, 1048, 1048, 0, 0, 0, 0, 0, 1043,
1708 1044, 0, 1046, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
1709 1049, 1049, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050,
1710 1050, 1051, 1051, 1051, 1051, 1051, 1051, 1051, 1051, 1051,
1711 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1053,
1712 1053, 1053, 1053, 1053, 1053, 1053, 1053, 1053, 1054, 1054,
1713
1714 1054, 1054, 1054, 1054, 1054, 1054, 1054, 1055, 1055, 1055,
1715 1055, 1055, 1055, 1055, 1055, 1055, 1056, 1056, 1056, 1056,
1716 1056, 1056, 1056, 1056, 1056, 1057, 1057, 1057, 1057, 1057,
1717 1057, 1057, 1057, 1057, 1058, 1058, 1058, 1058, 1058, 1058,
1718 1058, 1058, 1058, 1059, 1059, 1059, 1059, 1059, 1059, 1059,
1719 1059, 1059, 1060, 1060, 1060, 1060, 1060, 1060, 1060, 1060,
1720 1060, 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061,
1721 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1062, 1063,
1722 1063, 1063, 1063, 1063, 1063, 1063, 1063, 1063, 1064, 1064,
1723 1064, 1064, 1064, 1064, 1064, 1064, 1064, 1065, 1065, 1065,
1724
1725 1065, 1065, 1065, 1065, 1065, 1065, 1066, 1066, 1066, 1066,
1726 1066, 1066, 1066, 1066, 1066, 1067, 1067, 1067, 1067, 1067,
1727 1067, 1067, 1067, 1067, 1068, 1068, 1068, 1068, 1068, 1068,
1728 1068, 1068, 1068, 1069, 1069, 1069, 1069, 1069, 1069, 1069,
1729 1069, 1069, 1070, 1070, 1070, 1070, 1070, 1070, 1070, 1070,
1730 1070, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071,
1731 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1072, 1073,
1732 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1074, 1074,
1733 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1075, 1075, 1075,
1734 1075, 1075, 1075, 1075, 1075, 1075, 1076, 1076, 1076, 1076,
1735
1736 1076, 1076, 1076, 1076, 1076, 1077, 1077, 1077, 1077, 1077,
1737 1077, 1077, 1077, 1077, 1078, 1079, 1081, 1083, 1083, 1083,
1738 1083, 1083, 1083, 1083, 1083, 1083, 1084, 1084, 1084, 1084,
1739 1084, 1084, 1084, 1084, 1084, 0, 0, 0, 0, 0,
1740 0, 1078, 1079, 1081, 1085, 1085, 1085, 1085, 1085, 1085,
1741 1085, 1085, 1085, 1086, 1086, 1086, 1086, 1086, 1086, 1086,
1742 1086, 1086, 1087, 1087, 1087, 1087, 1087, 1087, 1087, 1087,
1743 1087, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088, 1088,
1744 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1089, 1090,
1745 1090, 1090, 1090, 1090, 1090, 1090, 1090, 1090, 1091, 1091,
1746
1747 1091, 1091, 1091, 1091, 1091, 1091, 1091, 1092, 1092, 1092,
1748 1092, 1092, 1092, 1092, 1092, 1092, 1093, 1093, 1093, 1093,
1749 1093, 1093, 1093, 1093, 1093, 1094, 1094, 1094, 1094, 1094,
1750 1094, 1094, 1094, 1094, 1095, 1095, 1095, 1095, 1095, 1095,
1751 1095, 1095, 1095, 1096, 1096, 1096, 1096, 1096, 1096, 1096,
1752 1096, 1096, 1097, 1097, 1097, 1097, 1097, 1097, 1097, 1097,
1753 1097, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098, 1098,
1754 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1099, 1100,
1755 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1100, 1101, 1101,
1756 1101, 1101, 1101, 1101, 1101, 1101, 1101, 1102, 1102, 1102,
1757
1758 1102, 1102, 1102, 1102, 1102, 1102, 1103, 1103, 1103, 1103,
1759 1103, 1103, 1103, 1103, 1103, 1104, 1104, 1104, 1104, 1104,
1760 1104, 1104, 1104, 1104, 1105, 1105, 1105, 1105, 1105, 1105,
1761 1105, 1105, 1105, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1762 1106, 1106, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107,
1763 1107, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108,
1764 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1110,
1765 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1111, 1111,
1766 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1112, 1112, 1112,
1767 1112, 1112, 1112, 1112, 1112, 1112, 1113, 1115, 1116, 1117,
1768
1769 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1118, 1119,
1770 1120, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1122, 1123,
1771 1124, 1126, 1127, 1113, 1115, 1116, 1125, 1125, 1125, 1125,
1772 1125, 1125, 1125, 1128, 1130, 1118, 1119, 1120, 1132, 1121,
1773 0, 0, 0, 0, 0, 1122, 1123, 1124, 1126, 1127,
1774 0, 0, 0, 0, 1135, 1125, 0, 1137, 0, 0,
1775 1128, 1130, 0, 0, 0, 1132, 1121, 1129, 1129, 1129,
1776 1129, 1129, 1129, 1129, 1133, 1133, 1133, 1133, 1133, 1133,
1777 1133, 1135, 1125, 1137, 0, 0, 0, 0, 1133, 0,
1778 0, 0, 0, 0, 1129, 1136, 1136, 1136, 1136, 1136,
1779
1780 1136, 1136, 0, 0, 0, 1136, 1138, 1138, 1138, 1138,
1781 1138, 1138, 1138, 0, 0, 1133, 0, 0, 0, 0,
1782 0, 1129, 0, 0, 0, 0, 0, 0, 1138, 0,
1783 0, 0, 1136, 1140, 1140, 1140, 1140, 1140, 1140, 1140,
1784 1141, 1141, 1141, 1141, 1141, 1141, 1141, 0, 0, 0,
1785 0, 1140, 0, 1141, 0, 1138, 1142, 1142, 1142, 1142,
1786 1142, 1142, 1142, 0, 0, 1142, 1143, 1143, 1143, 1143,
1787 1143, 1143, 1143, 0, 0, 0, 0, 0, 1140, 1144,
1788 1141, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1145, 0,
1789 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1147, 1147, 1147,
1790
1791 1147, 1147, 1147, 1148, 1148, 1148, 1148, 1148, 1148, 1149,
1792 1149, 1150, 1150, 0, 0, 1150, 1150, 1153, 0, 0,
1793 1153, 1153, 1153, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1794 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1795 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1796 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1797 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1798 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1799 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146,
1800 1146, 1146, 1146, 1146, 1146, 1146
1801
1802 } ;
1803
1804 /* The intent behind this definition is that it'll catch
1805 * any uses of REJECT which flex missed.
1806 */
1807 #define REJECT reject_used_but_not_detected
1808 #define yymore() yymore_used_but_not_detected
1809 #define YY_MORE_ADJ 0
1810 #define YY_RESTORE_YY_MORE_OFFSET
1811
1812 #include <string>
1813 #include "parser.h"
1814 #define yyterminate() return(END)
1815
1816 #define INITIAL 0
1817 #define MATCH_STRING_STATE 1
1818 #define MATCH_RESPONSE_CODE_STATE 2
1819 #define SUPPORTED_METHODS_STATE 3
1820 #define CONTENT_TYPE_STATE 4
1821 #define SESSION_STATE 5
1822 #define MATCH_PRESENTATION_URL 6
1823 #define NUM_AS_HEX_MODE 7
1824 #define MATCH_EDID_STATE 8
1825
1826 #ifndef YY_NO_UNISTD_H
1827 /* Special case for "unistd.h", since it is non-ANSI. We include it way
1828 * down here because we want the user's section 1 to have been scanned first.
1829 * The user has a chance to override it with an option.
1830 */
1831 #include <unistd.h>
1832 #endif
1833
1834 #define YY_EXTRA_TYPE bool
1835
1836 /* Holds the entire state of the reentrant scanner. */
1837 struct yyguts_t
1838 {
1839
1840 /* User-defined. Not touched by flex. */
1841 YY_EXTRA_TYPE yyextra_r;
1842
1843 /* The rest are the same as the globals declared in the non-reentrant scanne r. */
1844 FILE *yyin_r, *yyout_r;
1845 size_t yy_buffer_stack_top; /**< index of top of stack. */
1846 size_t yy_buffer_stack_max; /**< capacity of stack. */
1847 YY_BUFFER_STATE * yy_buffer_stack; /**< Stack as an array. */
1848 char yy_hold_char;
1849 int yy_n_chars;
1850 int yyleng_r;
1851 char *yy_c_buf_p;
1852 int yy_init;
1853 int yy_start;
1854 int yy_did_buffer_switch_on_eof;
1855 int yy_start_stack_ptr;
1856 int yy_start_stack_depth;
1857 int *yy_start_stack;
1858 yy_state_type yy_last_accepting_state;
1859 char* yy_last_accepting_cpos;
1860
1861 int yylineno_r;
1862 int yy_flex_debug_r;
1863
1864 char *yytext_r;
1865 int yy_more_flag;
1866 int yy_more_len;
1867
1868 YYSTYPE * yylval_r;
1869
1870 }; /* end struct yyguts_t */
1871
1872 static int yy_init_globals (yyscan_t yyscanner );
1873
1874 /* This must go here because YYSTYPE and YYLTYPE are included
1875 * from bison output in section 1.*/
1876 # define yylval yyg->yylval_r
1877
1878 int message_lex_init (yyscan_t* scanner);
1879
1880 int message_lex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
1881
1882 /* Accessor methods to globals.
1883 These are made visible to non-reentrant scanners for convenience. */
1884
1885 int message_lex_destroy (yyscan_t yyscanner );
1886
1887 int message_get_debug (yyscan_t yyscanner );
1888
1889 void message_set_debug (int debug_flag ,yyscan_t yyscanner );
1890
1891 YY_EXTRA_TYPE message_get_extra (yyscan_t yyscanner );
1892
1893 void message_set_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner );
1894
1895 FILE *message_get_in (yyscan_t yyscanner );
1896
1897 void message_set_in (FILE * in_str ,yyscan_t yyscanner );
1898
1899 FILE *message_get_out (yyscan_t yyscanner );
1900
1901 void message_set_out (FILE * out_str ,yyscan_t yyscanner );
1902
1903 int message_get_leng (yyscan_t yyscanner );
1904
1905 char *message_get_text (yyscan_t yyscanner );
1906
1907 int message_get_lineno (yyscan_t yyscanner );
1908
1909 void message_set_lineno (int line_number ,yyscan_t yyscanner );
1910
1911 YYSTYPE * message_get_lval (yyscan_t yyscanner );
1912
1913 void message_set_lval (YYSTYPE * yylval_param ,yyscan_t yyscanner );
1914
1915 /* Macros after this point can all be overridden by user definitions in
1916 * section 1.
1917 */
1918
1919 #ifndef YY_SKIP_YYWRAP
1920 #ifdef __cplusplus
1921 extern "C" int message_wrap (yyscan_t yyscanner );
1922 #else
1923 extern int message_wrap (yyscan_t yyscanner );
1924 #endif
1925 #endif
1926
1927 #ifndef yytext_ptr
1928 static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner);
1929 #endif
1930
1931 #ifdef YY_NEED_STRLEN
1932 static int yy_flex_strlen (yyconst char * ,yyscan_t yyscanner);
1933 #endif
1934
1935 #ifndef YY_NO_INPUT
1936
1937 #ifdef __cplusplus
1938 static int yyinput (yyscan_t yyscanner );
1939 #else
1940 static int input (yyscan_t yyscanner );
1941 #endif
1942
1943 #endif
1944
1945 /* Amount of stuff to slurp up with each read. */
1946 #ifndef YY_READ_BUF_SIZE
1947 #ifdef __ia64__
1948 /* On IA-64, the buffer size is 16k, not 8k */
1949 #define YY_READ_BUF_SIZE 16384
1950 #else
1951 #define YY_READ_BUF_SIZE 8192
1952 #endif /* __ia64__ */
1953 #endif
1954
1955 /* Copy whatever the last rule matched to the standard output. */
1956 #ifndef ECHO
1957 /* This used to be an fputs(), but since the string might contain NUL's,
1958 * we now use fwrite().
1959 */
1960 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
1961 #endif
1962
1963 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1964 * is returned in "result".
1965 */
1966 #ifndef YY_INPUT
1967 #define YY_INPUT(buf,result,max_size) \
1968 if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
1969 { \
1970 int c = '*'; \
1971 size_t n; \
1972 for ( n = 0; n < max_size && \
1973 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1974 buf[n] = (char) c; \
1975 if ( c == '\n' ) \
1976 buf[n++] = (char) c; \
1977 if ( c == EOF && ferror( yyin ) ) \
1978 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1979 result = n; \
1980 } \
1981 else \
1982 { \
1983 errno=0; \
1984 while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yy in)) \
1985 { \
1986 if( errno != EINTR) \
1987 { \
1988 YY_FATAL_ERROR( "input in flex scanner failed" ) ; \
1989 break; \
1990 } \
1991 errno=0; \
1992 clearerr(yyin); \
1993 } \
1994 }\
1995 \
1996
1997 #endif
1998
1999 /* No semi-colon after return; correct usage is to write "yyterminate();" -
2000 * we don't want an extra ';' after the "return" because that will cause
2001 * some compilers to complain about unreachable statements.
2002 */
2003 #ifndef yyterminate
2004 #define yyterminate() return YY_NULL
2005 #endif
2006
2007 /* Number of entries by which start-condition stack grows. */
2008 #ifndef YY_START_STACK_INCR
2009 #define YY_START_STACK_INCR 25
2010 #endif
2011
2012 /* Report a fatal error. */
2013 #ifndef YY_FATAL_ERROR
2014 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg , yyscanner)
2015 #endif
2016
2017 /* end tables serialization structures and prototypes */
2018
2019 /* Default declaration of generated scanner - a define so the user can
2020 * easily add parameters.
2021 */
2022 #ifndef YY_DECL
2023 #define YY_DECL_IS_OURS 1
2024
2025 extern int message_lex \
2026 (YYSTYPE * yylval_param ,yyscan_t yyscanner);
2027
2028 #define YY_DECL int message_lex \
2029 (YYSTYPE * yylval_param , yyscan_t yyscanner)
2030 #endif /* !YY_DECL */
2031
2032 /* Code executed at the beginning of each rule, after yytext and yyleng
2033 * have been set up.
2034 */
2035 #ifndef YY_USER_ACTION
2036 #define YY_USER_ACTION
2037 #endif
2038
2039 /* Code executed at the end of each rule. */
2040 #ifndef YY_BREAK
2041 #define YY_BREAK break;
2042 #endif
2043
2044 #define YY_RULE_SETUP \
2045 if ( yyleng > 0 ) \
2046 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
2047 (yytext[yyleng - 1] == '\n'); \
2048 YY_USER_ACTION
2049
2050 /** The main scanner function which does all the work.
2051 */
2052 YY_DECL
2053 {
2054 register yy_state_type yy_current_state;
2055 register char *yy_cp, *yy_bp;
2056 register int yy_act;
2057 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2058
2059 yylval = yylval_param;
2060
2061 if ( !yyg->yy_init )
2062 {
2063 yyg->yy_init = 1;
2064
2065 #ifdef YY_USER_INIT
2066 YY_USER_INIT;
2067 #endif
2068
2069 if ( ! yyg->yy_start )
2070 yyg->yy_start = 1; /* first start state */
2071
2072 if ( ! yyin )
2073 yyin = stdin;
2074
2075 if ( ! yyout )
2076 yyout = stdout;
2077
2078 if ( ! YY_CURRENT_BUFFER ) {
2079 message_ensure_buffer_stack (yyscanner);
2080 YY_CURRENT_BUFFER_LVALUE =
2081 message__create_buffer(yyin,YY_BUF_SIZE ,yyscann er);
2082 }
2083
2084 message__load_buffer_state(yyscanner );
2085 }
2086
2087 while ( 1 ) /* loops until end-of-file is reached */
2088 {
2089 yy_cp = yyg->yy_c_buf_p;
2090
2091 /* Support of yytext. */
2092 *yy_cp = yyg->yy_hold_char;
2093
2094 /* yy_bp points to the position in yy_ch_buf of the start of
2095 * the current run.
2096 */
2097 yy_bp = yy_cp;
2098
2099 yy_current_state = yyg->yy_start;
2100 yy_current_state += YY_AT_BOL();
2101 yy_match:
2102 do
2103 {
2104 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
2105 if ( yy_accept[yy_current_state] )
2106 {
2107 yyg->yy_last_accepting_state = yy_current_state;
2108 yyg->yy_last_accepting_cpos = yy_cp;
2109 }
2110 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_c urrent_state )
2111 {
2112 yy_current_state = (int) yy_def[yy_current_state ];
2113 if ( yy_current_state >= 1147 )
2114 yy_c = yy_meta[(unsigned int) yy_c];
2115 }
2116 yy_current_state = yy_nxt[yy_base[yy_current_state] + (u nsigned int) yy_c];
2117 ++yy_cp;
2118 }
2119 while ( yy_current_state != 1146 );
2120 yy_cp = yyg->yy_last_accepting_cpos;
2121 yy_current_state = yyg->yy_last_accepting_state;
2122
2123 yy_find_action:
2124 yy_act = yy_accept[yy_current_state];
2125
2126 YY_DO_BEFORE_ACTION;
2127
2128 do_action: /* This label is used only to access EOF actions. */
2129
2130 switch ( yy_act )
2131 { /* beginning of action switch */
2132 case 0: /* must back up */
2133 /* undo the effects of YY_DO_BEFORE_ACTION */
2134 *yy_cp = yyg->yy_hold_char;
2135 yy_cp = yyg->yy_last_accepting_cpos;
2136 yy_current_state = yyg->yy_last_accepting_state;
2137 goto yy_find_action;
2138
2139 case 1:
2140 /* rule 1 can match eol */
2141 YY_RULE_SETUP
2142 { BEGIN(INITIAL); }
2143 YY_BREAK
2144 case 2:
2145 /* rule 2 can match eol */
2146 YY_RULE_SETUP
2147 { BEGIN(INITIAL); }
2148 YY_BREAK
2149 case 3:
2150 YY_RULE_SETUP
2151 { BEGIN(INITIAL); }
2152 YY_BREAK
2153 /* Convert these */
2154 case 4:
2155 YY_RULE_SETUP
2156 { return '='; }
2157 YY_BREAK
2158 case 5:
2159 YY_RULE_SETUP
2160 { return '-'; }
2161 YY_BREAK
2162 case 6:
2163 YY_RULE_SETUP
2164 { return ','; }
2165 YY_BREAK
2166 case 7:
2167 YY_RULE_SETUP
2168 { return '*'; }
2169 YY_BREAK
2170 case 8:
2171 YY_RULE_SETUP
2172 { return ';'; }
2173 YY_BREAK
2174 case 9:
2175 YY_RULE_SETUP
2176 { return ':'; }
2177 YY_BREAK
2178 case 10:
2179 YY_RULE_SETUP
2180 { return '/'; }
2181 YY_BREAK
2182 case 11:
2183 YY_RULE_SETUP
2184 return WFD_SP;
2185 YY_BREAK
2186 case 12:
2187 YY_RULE_SETUP
2188 return WFD_NONE;
2189 YY_BREAK
2190 case 13:
2191 YY_RULE_SETUP
2192 return WFD_AUDIO_CODEC_LPCM;
2193 YY_BREAK
2194 case 14:
2195 YY_RULE_SETUP
2196 return WFD_AUDIO_CODEC_AAC;
2197 YY_BREAK
2198 case 15:
2199 YY_RULE_SETUP
2200 return WFD_AUDIO_CODEC_AC3;
2201 YY_BREAK
2202 case 16:
2203 YY_RULE_SETUP
2204 return WFD_HDCP_SPEC_2_0;
2205 YY_BREAK
2206 case 17:
2207 YY_RULE_SETUP
2208 return WFD_HDCP_SPEC_2_1;
2209 YY_BREAK
2210 case 18:
2211 YY_RULE_SETUP
2212 return WFD_IP_PORT;
2213 YY_BREAK
2214 case 19:
2215 YY_RULE_SETUP
2216 return WFD_STREAM_PROFILE;
2217 YY_BREAK
2218 case 20:
2219 YY_RULE_SETUP
2220 return WFD_MODE_PLAY;
2221 YY_BREAK
2222 case 21:
2223 YY_RULE_SETUP
2224 return WFD_ROUTE_PRIMARY;
2225 YY_BREAK
2226 case 22:
2227 YY_RULE_SETUP
2228 return WFD_ROUTE_SECONDARY;
2229 YY_BREAK
2230 case 23:
2231 YY_RULE_SETUP
2232 return WFD_INPUT_CATEGORY_LIST;
2233 YY_BREAK
2234 case 24:
2235 YY_RULE_SETUP
2236 return WFD_INPUT_CATEGORY_GENERIC;
2237 YY_BREAK
2238 case 25:
2239 YY_RULE_SETUP
2240 return WFD_INPUT_CATEGORY_HIDC;
2241 YY_BREAK
2242 case 26:
2243 YY_RULE_SETUP
2244 return WFD_GENERIC_CAP_LIST;
2245 YY_BREAK
2246 case 27:
2247 YY_RULE_SETUP
2248 return WFD_INPUT_TYPE_KEYBOARD;
2249 YY_BREAK
2250 case 28:
2251 YY_RULE_SETUP
2252 return WFD_INPUT_TYPE_MOUSE;
2253 YY_BREAK
2254 case 29:
2255 YY_RULE_SETUP
2256 return WFD_INPUT_TYPE_SINGLE_TOUCH;
2257 YY_BREAK
2258 case 30:
2259 YY_RULE_SETUP
2260 return WFD_INPUT_TYPE_MULTI_TOUCH;
2261 YY_BREAK
2262 case 31:
2263 YY_RULE_SETUP
2264 return WFD_INPUT_TYPE_JOYSTICK;
2265 YY_BREAK
2266 case 32:
2267 YY_RULE_SETUP
2268 return WFD_INPUT_TYPE_CAMERA;
2269 YY_BREAK
2270 case 33:
2271 YY_RULE_SETUP
2272 return WFD_INPUT_TYPE_GESTURE;
2273 YY_BREAK
2274 case 34:
2275 YY_RULE_SETUP
2276 return WFD_INPUT_TYPE_REMOTE_CONTROL;
2277 YY_BREAK
2278 case 35:
2279 YY_RULE_SETUP
2280 return WFD_HIDC_CAP_LIST;
2281 YY_BREAK
2282 case 36:
2283 YY_RULE_SETUP
2284 return WFD_INPUT_PATH_INFRARED;
2285 YY_BREAK
2286 case 37:
2287 YY_RULE_SETUP
2288 return WFD_INPUT_PATH_USB;
2289 YY_BREAK
2290 case 38:
2291 YY_RULE_SETUP
2292 return WFD_INPUT_PATH_BT;
2293 YY_BREAK
2294 case 39:
2295 YY_RULE_SETUP
2296 return WFD_INPUT_PATH_WIFI;
2297 YY_BREAK
2298 case 40:
2299 YY_RULE_SETUP
2300 return WFD_INPUT_PATH_ZIGBEE;
2301 YY_BREAK
2302 case 41:
2303 YY_RULE_SETUP
2304 return WFD_INPUT_PATH_NOSP;
2305 YY_BREAK
2306 case 42:
2307 YY_RULE_SETUP
2308 return WFD_UIBC_SETTING_DISABLE;
2309 YY_BREAK
2310 case 43:
2311 YY_RULE_SETUP
2312 return WFD_UIBC_SETTING_ENABLE;
2313 YY_BREAK
2314 case 44:
2315 YY_RULE_SETUP
2316 return WFD_SUPPORTED;
2317 YY_BREAK
2318 case 45:
2319 YY_RULE_SETUP
2320 {
2321 std::string str(yytext, yyleng);
2322 str += '\0';
2323 errno = 0;
2324 yylval->nval = strtoull(str.c_str(), NULL, 16);
2325 if (errno)
2326 yyterminate();
2327 return WFD_NUM;
2328 }
2329 YY_BREAK
2330 case 46:
2331 YY_RULE_SETUP
2332 {
2333 std::string str(yytext, yyleng);
2334 str += '\0';
2335 errno = 0;
2336 yylval->nval = strtoull(str.c_str(), NULL, 16);
2337 if (errno)
2338 yyterminate();
2339 return WFD_NUM;
2340 }
2341 YY_BREAK
2342 case 47:
2343 YY_RULE_SETUP
2344 {
2345 yylval->sval = new std::string(yytext);
2346 return WFD_STRING;
2347 }
2348 YY_BREAK
2349 case 48:
2350 YY_RULE_SETUP
2351 {
2352 yylval->sval = new std::string(yytext);
2353 return WFD_STRING;
2354 }
2355 YY_BREAK
2356 case 49:
2357 YY_RULE_SETUP
2358 {
2359 BEGIN(NUM_AS_HEX_MODE);
2360 return WFD_AUDIO_CODECS;
2361 }
2362 YY_BREAK
2363 case 50:
2364 YY_RULE_SETUP
2365 {
2366 BEGIN(NUM_AS_HEX_MODE);
2367 return WFD_VIDEO_FORMATS;
2368 }
2369 YY_BREAK
2370 case 51:
2371 YY_RULE_SETUP
2372 {
2373 BEGIN(NUM_AS_HEX_MODE);
2374 return WFD_3D_FORMATS;
2375 }
2376 YY_BREAK
2377 case 52:
2378 YY_RULE_SETUP
2379 {
2380 return WFD_CONTENT_PROTECTION;
2381 }
2382 YY_BREAK
2383 case 53:
2384 YY_RULE_SETUP
2385 {
2386 BEGIN(MATCH_EDID_STATE);
2387 return WFD_DISPLAY_EDID;
2388 }
2389 YY_BREAK
2390 case 54:
2391 YY_RULE_SETUP
2392 {
2393 BEGIN(NUM_AS_HEX_MODE);
2394 return WFD_COUPLED_SINK;
2395 }
2396 YY_BREAK
2397 case 55:
2398 YY_RULE_SETUP
2399 {
2400 BEGIN(SUPPORTED_METHODS_STATE);
2401 return WFD_TRIGGER_METHOD;
2402 }
2403 YY_BREAK
2404 case 56:
2405 YY_RULE_SETUP
2406 {
2407 BEGIN(MATCH_PRESENTATION_URL);
2408 return WFD_PRESENTATION_URL;
2409 }
2410 YY_BREAK
2411 case 57:
2412 YY_RULE_SETUP
2413 {
2414 return WFD_CLIENT_RTP_PORTS;
2415 }
2416 YY_BREAK
2417 case 58:
2418 YY_RULE_SETUP
2419 {
2420 return WFD_ROUTE;
2421 }
2422 YY_BREAK
2423 case 59:
2424 YY_RULE_SETUP
2425 {
2426 return WFD_I2C;
2427 }
2428 YY_BREAK
2429 case 60:
2430 YY_RULE_SETUP
2431 {
2432 BEGIN(NUM_AS_HEX_MODE);
2433 return WFD_AV_FORMAT_CHANGE_TIMING;
2434 }
2435 YY_BREAK
2436 case 61:
2437 YY_RULE_SETUP
2438 {
2439 BEGIN(NUM_AS_HEX_MODE);
2440 return WFD_PREFERRED_DISPLAY_MODE;
2441 }
2442 YY_BREAK
2443 case 62:
2444 YY_RULE_SETUP
2445 {
2446 return WFD_UIBC_CAPABILITY;
2447 }
2448 YY_BREAK
2449 case 63:
2450 YY_RULE_SETUP
2451 {
2452 return WFD_UIBC_SETTING;
2453 }
2454 YY_BREAK
2455 case 64:
2456 YY_RULE_SETUP
2457 {
2458 return WFD_STANDBY_RESUME_CAPABILITY;
2459 }
2460 YY_BREAK
2461 case 65:
2462 YY_RULE_SETUP
2463 {
2464 if (yyextra) // Is reply.
2465 return WFD_STANDBY_IN_RESPONSE;
2466 return WFD_STANDBY_IN_REQUEST;
2467 }
2468 YY_BREAK
2469 case 66:
2470 YY_RULE_SETUP
2471 {
2472 BEGIN(NUM_AS_HEX_MODE);
2473 return WFD_CONNECTOR_TYPE;
2474 }
2475 YY_BREAK
2476 case 67:
2477 YY_RULE_SETUP
2478 {
2479 return WFD_IDR_REQUEST;
2480 }
2481 YY_BREAK
2482 case 68:
2483 YY_RULE_SETUP
2484 {
2485 BEGIN(MATCH_STRING_STATE);
2486 yylval->sval = new std::string(yytext, yyleng);
2487 return WFD_GENERIC_PROPERTY;
2488 }
2489 YY_BREAK
2490 case 69:
2491 YY_RULE_SETUP
2492 {
2493 std::string str(yytext, yyleng);
2494 str += '\0';
2495 errno = 0;
2496 yylval->nval = strtoull(str.c_str(), NULL, 10);
2497 if (errno)
2498 yyterminate();
2499 return WFD_NUM;
2500 }
2501 YY_BREAK
2502 case 70:
2503 /* rule 70 can match eol */
2504 *yy_cp = yyg->yy_hold_char; /* undo effects of setting up yytext */
2505 yyg->yy_c_buf_p = yy_cp -= 2;
2506 YY_DO_BEFORE_ACTION; /* set up yytext again */
2507 YY_RULE_SETUP
2508 {
2509 BEGIN(INITIAL);
2510 yylval->sval = new std::string(yytext);
2511 return WFD_STRING;
2512 }
2513 YY_BREAK
2514 case 71:
2515 YY_RULE_SETUP
2516 {
2517 return WFD_OPTIONS;
2518 }
2519 YY_BREAK
2520 case 72:
2521 YY_RULE_SETUP
2522 {
2523 return WFD_SET_PARAMETER;
2524 }
2525 YY_BREAK
2526 case 73:
2527 YY_RULE_SETUP
2528 {
2529 return WFD_GET_PARAMETER;
2530 }
2531 YY_BREAK
2532 case 74:
2533 YY_RULE_SETUP
2534 {
2535 return WFD_SETUP;
2536 }
2537 YY_BREAK
2538 case 75:
2539 YY_RULE_SETUP
2540 {
2541 return WFD_PLAY;
2542 }
2543 YY_BREAK
2544 case 76:
2545 YY_RULE_SETUP
2546 {
2547 return WFD_TEARDOWN;
2548 }
2549 YY_BREAK
2550 case 77:
2551 YY_RULE_SETUP
2552 {
2553 return WFD_PAUSE;
2554 }
2555 YY_BREAK
2556 case 78:
2557 YY_RULE_SETUP
2558 {
2559 return WFD_TAG;
2560 }
2561 YY_BREAK
2562 case 79:
2563 YY_RULE_SETUP
2564 {
2565 yylval->sval = new std::string(yytext);
2566 return WFD_PRESENTATION_URL_0;
2567 }
2568 YY_BREAK
2569 case 80:
2570 YY_RULE_SETUP
2571 {
2572 yylval->sval = new std::string(yytext);
2573 return WFD_PRESENTATION_URL_1;
2574 }
2575 YY_BREAK
2576 /* all unmatched */
2577 case 81:
2578 YY_RULE_SETUP
2579 {}
2580 YY_BREAK
2581 case 82:
2582 YY_RULE_SETUP
2583 YY_FATAL_ERROR( "flex scanner jammed" );
2584 YY_BREAK
2585 case YY_STATE_EOF(INITIAL):
2586 case YY_STATE_EOF(MATCH_STRING_STATE):
2587 case YY_STATE_EOF(MATCH_RESPONSE_CODE_STATE):
2588 case YY_STATE_EOF(SUPPORTED_METHODS_STATE):
2589 case YY_STATE_EOF(CONTENT_TYPE_STATE):
2590 case YY_STATE_EOF(SESSION_STATE):
2591 case YY_STATE_EOF(MATCH_PRESENTATION_URL):
2592 case YY_STATE_EOF(NUM_AS_HEX_MODE):
2593 case YY_STATE_EOF(MATCH_EDID_STATE):
2594 yyterminate();
2595
2596 case YY_END_OF_BUFFER:
2597 {
2598 /* Amount of text matched not including the EOB char. */
2599 int yy_amount_of_matched_text = (int) (yy_cp - yyg->yytext_ptr) - 1;
2600
2601 /* Undo the effects of YY_DO_BEFORE_ACTION. */
2602 *yy_cp = yyg->yy_hold_char;
2603 YY_RESTORE_YY_MORE_OFFSET
2604
2605 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
2606 {
2607 /* We're scanning a new file or input source. It's
2608 * possible that this happened because the user
2609 * just pointed yyin at a new source and called
2610 * message_lex(). If so, then we have to assure
2611 * consistency between YY_CURRENT_BUFFER and our
2612 * globals. Here is the right place to do so, because
2613 * this is the first action (other than possibly a
2614 * back-up) that will match for the new input source.
2615 */
2616 yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
2617 YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
2618 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_N ORMAL;
2619 }
2620
2621 /* Note that here we test for yy_c_buf_p "<=" to the position
2622 * of the first EOB in the buffer, since yy_c_buf_p will
2623 * already have been incremented past the NUL character
2624 * (since all states make transitions on EOB to the
2625 * end-of-buffer state). Contrast this with the test
2626 * in input().
2627 */
2628 if ( yyg->yy_c_buf_p <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg ->yy_n_chars] )
2629 { /* This was really a NUL. */
2630 yy_state_type yy_next_state;
2631
2632 yyg->yy_c_buf_p = yyg->yytext_ptr + yy_amount_of_matched _text;
2633
2634 yy_current_state = yy_get_previous_state( yyscanner );
2635
2636 /* Okay, we're now positioned to make the NUL
2637 * transition. We couldn't have
2638 * yy_get_previous_state() go ahead and do it
2639 * for us because it doesn't know how to deal
2640 * with the possibility of jamming (and we don't
2641 * want to build jamming into it because then it
2642 * will run more slowly).
2643 */
2644
2645 yy_next_state = yy_try_NUL_trans( yy_current_state , yys canner);
2646
2647 yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
2648
2649 if ( yy_next_state )
2650 {
2651 /* Consume the NUL. */
2652 yy_cp = ++yyg->yy_c_buf_p;
2653 yy_current_state = yy_next_state;
2654 goto yy_match;
2655 }
2656
2657 else
2658 {
2659 yy_cp = yyg->yy_last_accepting_cpos;
2660 yy_current_state = yyg->yy_last_accepting_state;
2661 goto yy_find_action;
2662 }
2663 }
2664
2665 else switch ( yy_get_next_buffer( yyscanner ) )
2666 {
2667 case EOB_ACT_END_OF_FILE:
2668 {
2669 yyg->yy_did_buffer_switch_on_eof = 0;
2670
2671 if ( message_wrap(yyscanner ) )
2672 {
2673 /* Note: because we've taken care in
2674 * yy_get_next_buffer() to have set up
2675 * yytext, we can now set up
2676 * yy_c_buf_p so that if some total
2677 * hoser (like flex itself) wants to
2678 * call the scanner after we return the
2679 * YY_NULL, it'll still work - another
2680 * YY_NULL will get returned.
2681 */
2682 yyg->yy_c_buf_p = yyg->yytext_ptr + YY_M ORE_ADJ;
2683
2684 yy_act = YY_STATE_EOF(YY_START);
2685 goto do_action;
2686 }
2687
2688 else
2689 {
2690 if ( ! yyg->yy_did_buffer_switch_on_eof )
2691 YY_NEW_FILE;
2692 }
2693 break;
2694 }
2695
2696 case EOB_ACT_CONTINUE_SCAN:
2697 yyg->yy_c_buf_p =
2698 yyg->yytext_ptr + yy_amount_of_matched_t ext;
2699
2700 yy_current_state = yy_get_previous_state( yyscan ner );
2701
2702 yy_cp = yyg->yy_c_buf_p;
2703 yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
2704 goto yy_match;
2705
2706 case EOB_ACT_LAST_MATCH:
2707 yyg->yy_c_buf_p =
2708 &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_c hars];
2709
2710 yy_current_state = yy_get_previous_state( yyscan ner );
2711
2712 yy_cp = yyg->yy_c_buf_p;
2713 yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
2714 goto yy_find_action;
2715 }
2716 break;
2717 }
2718
2719 default:
2720 YY_FATAL_ERROR(
2721 "fatal flex scanner internal error--no action found" );
2722 } /* end of action switch */
2723 } /* end of scanning one token */
2724 } /* end of message_lex */
2725
2726 /* yy_get_next_buffer - try to read in a new buffer
2727 *
2728 * Returns a code representing an action:
2729 * EOB_ACT_LAST_MATCH -
2730 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2731 * EOB_ACT_END_OF_FILE - end of file
2732 */
2733 static int yy_get_next_buffer (yyscan_t yyscanner)
2734 {
2735 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2736 register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
2737 register char *source = yyg->yytext_ptr;
2738 register int number_to_move, i;
2739 int ret_val;
2740
2741 if ( yyg->yy_c_buf_p > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_ch ars + 1] )
2742 YY_FATAL_ERROR(
2743 "fatal flex scanner internal error--end of buffer missed" );
2744
2745 if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
2746 { /* Don't try to fill the buffer, so this is an EOF. */
2747 if ( yyg->yy_c_buf_p - yyg->yytext_ptr - YY_MORE_ADJ == 1 )
2748 {
2749 /* We matched a single character, the EOB, so
2750 * treat this as a final EOF.
2751 */
2752 return EOB_ACT_END_OF_FILE;
2753 }
2754
2755 else
2756 {
2757 /* We matched some text prior to the EOB, first
2758 * process it.
2759 */
2760 return EOB_ACT_LAST_MATCH;
2761 }
2762 }
2763
2764 /* Try to read more data. */
2765
2766 /* First move last chars to start of buffer. */
2767 number_to_move = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr) - 1;
2768
2769 for ( i = 0; i < number_to_move; ++i )
2770 *(dest++) = *(source++);
2771
2772 if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2773 /* don't do the read, it's not guaranteed to return an EOF,
2774 * just force an EOF
2775 */
2776 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars = 0;
2777
2778 else
2779 {
2780 int num_to_read =
2781 YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
2782
2783 while ( num_to_read <= 0 )
2784 { /* Not enough room in the buffer - grow it. */
2785
2786 /* just a shorter name for the current buffer */
2787 YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
2788
2789 int yy_c_buf_p_offset =
2790 (int) (yyg->yy_c_buf_p - b->yy_ch_buf);
2791
2792 if ( b->yy_is_our_buffer )
2793 {
2794 int new_size = b->yy_buf_size * 2;
2795
2796 if ( new_size <= 0 )
2797 b->yy_buf_size += b->yy_buf_size / 8;
2798 else
2799 b->yy_buf_size *= 2;
2800
2801 b->yy_ch_buf = (char *)
2802 /* Include room in for 2 EOB chars. */
2803 message_realloc((void *) b->yy_ch_buf,b- >yy_buf_size + 2 ,yyscanner );
2804 }
2805 else
2806 /* Can't grow it, we don't own it. */
2807 b->yy_ch_buf = 0;
2808
2809 if ( ! b->yy_ch_buf )
2810 YY_FATAL_ERROR(
2811 "fatal error - scanner input buffer overflow" );
2812
2813 yyg->yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
2814
2815 num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
2816 number_to_move - 1;
2817
2818 }
2819
2820 if ( num_to_read > YY_READ_BUF_SIZE )
2821 num_to_read = YY_READ_BUF_SIZE;
2822
2823 /* Read in more data. */
2824 YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]) ,
2825 yyg->yy_n_chars, (size_t) num_to_read );
2826
2827 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
2828 }
2829
2830 if ( yyg->yy_n_chars == 0 )
2831 {
2832 if ( number_to_move == YY_MORE_ADJ )
2833 {
2834 ret_val = EOB_ACT_END_OF_FILE;
2835 message_restart(yyin ,yyscanner);
2836 }
2837
2838 else
2839 {
2840 ret_val = EOB_ACT_LAST_MATCH;
2841 YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
2842 YY_BUFFER_EOF_PENDING;
2843 }
2844 }
2845
2846 else
2847 ret_val = EOB_ACT_CONTINUE_SCAN;
2848
2849 if ((yy_size_t) (yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_L VALUE->yy_buf_size) {
2850 /* Extend the array by 50%, plus the number we really need. */
2851 yy_size_t new_size = yyg->yy_n_chars + number_to_move + (yyg->yy _n_chars >> 1);
2852 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) message_realloc(( void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ,yyscanner );
2853 if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
2854 YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_bu ffer()" );
2855 }
2856
2857 yyg->yy_n_chars += number_to_move;
2858 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] = YY_END_OF_BUFFER_ CHAR;
2859 YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] = YY_END_OF_BUF FER_CHAR;
2860
2861 yyg->yytext_ptr = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
2862
2863 return ret_val;
2864 }
2865
2866 /* yy_get_previous_state - get the state just before the EOB char was reached */
2867
2868 static yy_state_type yy_get_previous_state (yyscan_t yyscanner)
2869 {
2870 register yy_state_type yy_current_state;
2871 register char *yy_cp;
2872 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2873
2874 yy_current_state = yyg->yy_start;
2875 yy_current_state += YY_AT_BOL();
2876
2877 for ( yy_cp = yyg->yytext_ptr + YY_MORE_ADJ; yy_cp < yyg->yy_c_buf_p; ++ yy_cp )
2878 {
2879 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1 );
2880 if ( yy_accept[yy_current_state] )
2881 {
2882 yyg->yy_last_accepting_state = yy_current_state;
2883 yyg->yy_last_accepting_cpos = yy_cp;
2884 }
2885 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_s tate )
2886 {
2887 yy_current_state = (int) yy_def[yy_current_state];
2888 if ( yy_current_state >= 1147 )
2889 yy_c = yy_meta[(unsigned int) yy_c];
2890 }
2891 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2892 }
2893
2894 return yy_current_state;
2895 }
2896
2897 /* yy_try_NUL_trans - try to make a transition on the NUL character
2898 *
2899 * synopsis
2900 * next_state = yy_try_NUL_trans( current_state );
2901 */
2902 static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state , yys can_t yyscanner)
2903 {
2904 register int yy_is_jam;
2905 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unus ed depending upon options. */
2906 register char *yy_cp = yyg->yy_c_buf_p;
2907
2908 register YY_CHAR yy_c = 1;
2909 if ( yy_accept[yy_current_state] )
2910 {
2911 yyg->yy_last_accepting_state = yy_current_state;
2912 yyg->yy_last_accepting_cpos = yy_cp;
2913 }
2914 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2915 {
2916 yy_current_state = (int) yy_def[yy_current_state];
2917 if ( yy_current_state >= 1147 )
2918 yy_c = yy_meta[(unsigned int) yy_c];
2919 }
2920 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_ c];
2921 yy_is_jam = (yy_current_state == 1146);
2922
2923 return yy_is_jam ? 0 : yy_current_state;
2924 }
2925
2926 #ifndef YY_NO_INPUT
2927 #ifdef __cplusplus
2928 static int yyinput (yyscan_t yyscanner)
2929 #else
2930 static int input (yyscan_t yyscanner)
2931 #endif
2932
2933 {
2934 int c;
2935 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
2936
2937 *yyg->yy_c_buf_p = yyg->yy_hold_char;
2938
2939 if ( *yyg->yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
2940 {
2941 /* yy_c_buf_p now points to the character we want to return.
2942 * If this occurs *before* the EOB characters, then it's a
2943 * valid NUL; if not, then we've hit the end of the buffer.
2944 */
2945 if ( yyg->yy_c_buf_p < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg- >yy_n_chars] )
2946 /* This was really a NUL. */
2947 *yyg->yy_c_buf_p = '\0';
2948
2949 else
2950 { /* need more input */
2951 int offset = yyg->yy_c_buf_p - yyg->yytext_ptr;
2952 ++yyg->yy_c_buf_p;
2953
2954 switch ( yy_get_next_buffer( yyscanner ) )
2955 {
2956 case EOB_ACT_LAST_MATCH:
2957 /* This happens because yy_g_n_b()
2958 * sees that we've accumulated a
2959 * token and flags that we need to
2960 * try matching the token before
2961 * proceeding. But for input(),
2962 * there's no matching to consider.
2963 * So convert the EOB_ACT_LAST_MATCH
2964 * to EOB_ACT_END_OF_FILE.
2965 */
2966
2967 /* Reset buffer status. */
2968 message_restart(yyin ,yyscanner);
2969
2970 /*FALLTHROUGH*/
2971
2972 case EOB_ACT_END_OF_FILE:
2973 {
2974 if ( message_wrap(yyscanner ) )
2975 return EOF;
2976
2977 if ( ! yyg->yy_did_buffer_switch_on_eof )
2978 YY_NEW_FILE;
2979 #ifdef __cplusplus
2980 return yyinput(yyscanner);
2981 #else
2982 return input(yyscanner);
2983 #endif
2984 }
2985
2986 case EOB_ACT_CONTINUE_SCAN:
2987 yyg->yy_c_buf_p = yyg->yytext_ptr + offs et;
2988 break;
2989 }
2990 }
2991 }
2992
2993 c = *(unsigned char *) yyg->yy_c_buf_p; /* cast for 8-bit char's */
2994 *yyg->yy_c_buf_p = '\0'; /* preserve yytext */
2995 yyg->yy_hold_char = *++yyg->yy_c_buf_p;
2996
2997 YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
2998
2999 return c;
3000 }
3001 #endif /* ifndef YY_NO_INPUT */
3002
3003 /** Immediately switch to a different input stream.
3004 * @param input_file A readable stream.
3005 * @param yyscanner The scanner object.
3006 * @note This function does not reset the start condition to @c INITIAL .
3007 */
3008 void message_restart (FILE * input_file , yyscan_t yyscanner)
3009 {
3010 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3011
3012 if ( ! YY_CURRENT_BUFFER ){
3013 message_ensure_buffer_stack (yyscanner);
3014 YY_CURRENT_BUFFER_LVALUE =
3015 message__create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
3016 }
3017
3018 message__init_buffer(YY_CURRENT_BUFFER,input_file ,yyscanner);
3019 message__load_buffer_state(yyscanner );
3020 }
3021
3022 /** Switch to a different input buffer.
3023 * @param new_buffer The new input buffer.
3024 * @param yyscanner The scanner object.
3025 */
3026 void message__switch_to_buffer (YY_BUFFER_STATE new_buffer , yyscan_t yysc anner)
3027 {
3028 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3029
3030 /* TODO. We should be able to replace this entire function body
3031 * with
3032 * message_pop_buffer_state();
3033 * message_push_buffer_state(new_buffer);
3034 */
3035 message_ensure_buffer_stack (yyscanner);
3036 if ( YY_CURRENT_BUFFER == new_buffer )
3037 return;
3038
3039 if ( YY_CURRENT_BUFFER )
3040 {
3041 /* Flush out information for old buffer. */
3042 *yyg->yy_c_buf_p = yyg->yy_hold_char;
3043 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
3044 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
3045 }
3046
3047 YY_CURRENT_BUFFER_LVALUE = new_buffer;
3048 message__load_buffer_state(yyscanner );
3049
3050 /* We don't actually know whether we did this switch during
3051 * EOF (message_wrap()) processing, but the only time this flag
3052 * is looked at is after message_wrap() is called, so it's safe
3053 * to go ahead and always set it.
3054 */
3055 yyg->yy_did_buffer_switch_on_eof = 1;
3056 }
3057
3058 static void message__load_buffer_state (yyscan_t yyscanner)
3059 {
3060 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3061 yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3062 yyg->yytext_ptr = yyg->yy_c_buf_p = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos ;
3063 yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
3064 yyg->yy_hold_char = *yyg->yy_c_buf_p;
3065 }
3066
3067 /** Allocate and initialize an input buffer state.
3068 * @param file A readable stream.
3069 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_ SIZE.
3070 * @param yyscanner The scanner object.
3071 * @return the allocated buffer state.
3072 */
3073 YY_BUFFER_STATE message__create_buffer (FILE * file, int size , yyscan_t y yscanner)
3074 {
3075 YY_BUFFER_STATE b;
3076
3077 b = (YY_BUFFER_STATE) message_alloc(sizeof( struct yy_buffer_state ) ,yy scanner );
3078 if ( ! b )
3079 YY_FATAL_ERROR( "out of dynamic memory in message__create_buffer ()" );
3080
3081 b->yy_buf_size = size;
3082
3083 /* yy_ch_buf has to be 2 characters longer than the size given because
3084 * we need to put in 2 end-of-buffer characters.
3085 */
3086 b->yy_ch_buf = (char *) message_alloc(b->yy_buf_size + 2 ,yyscanner );
3087 if ( ! b->yy_ch_buf )
3088 YY_FATAL_ERROR( "out of dynamic memory in message__create_buffer ()" );
3089
3090 b->yy_is_our_buffer = 1;
3091
3092 message__init_buffer(b,file ,yyscanner);
3093
3094 return b;
3095 }
3096
3097 /** Destroy the buffer.
3098 * @param b a buffer created with message__create_buffer()
3099 * @param yyscanner The scanner object.
3100 */
3101 void message__delete_buffer (YY_BUFFER_STATE b , yyscan_t yyscanner)
3102 {
3103 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3104
3105 if ( ! b )
3106 return;
3107
3108 if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
3109 YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
3110
3111 if ( b->yy_is_our_buffer )
3112 message_free((void *) b->yy_ch_buf ,yyscanner );
3113
3114 message_free((void *) b ,yyscanner );
3115 }
3116
3117 /* Initializes or reinitializes a buffer.
3118 * This function is sometimes called more than once on the same buffer,
3119 * such as during a message_restart() or at EOF.
3120 */
3121 static void message__init_buffer (YY_BUFFER_STATE b, FILE * file , yyscan_ t yyscanner)
3122
3123 {
3124 int oerrno = errno;
3125 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3126
3127 message__flush_buffer(b ,yyscanner);
3128
3129 b->yy_input_file = file;
3130 b->yy_fill_buffer = 1;
3131
3132 /* If b is the current buffer, then message__init_buffer was _probably_
3133 * called from message_restart() or through yy_get_next_buffer.
3134 * In that case, we don't want to reset the lineno or column.
3135 */
3136 if (b != YY_CURRENT_BUFFER){
3137 b->yy_bs_lineno = 1;
3138 b->yy_bs_column = 0;
3139 }
3140
3141 b->yy_is_interactive = 0;
3142
3143 errno = oerrno;
3144 }
3145
3146 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
3147 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
3148 * @param yyscanner The scanner object.
3149 */
3150 void message__flush_buffer (YY_BUFFER_STATE b , yyscan_t yyscanner)
3151 {
3152 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3153 if ( ! b )
3154 return;
3155
3156 b->yy_n_chars = 0;
3157
3158 /* We always need two end-of-buffer characters. The first causes
3159 * a transition to the end-of-buffer state. The second causes
3160 * a jam in that state.
3161 */
3162 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
3163 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
3164
3165 b->yy_buf_pos = &b->yy_ch_buf[0];
3166
3167 b->yy_at_bol = 1;
3168 b->yy_buffer_status = YY_BUFFER_NEW;
3169
3170 if ( b == YY_CURRENT_BUFFER )
3171 message__load_buffer_state(yyscanner );
3172 }
3173
3174 /** Pushes the new state onto the stack. The new state becomes
3175 * the current state. This function will allocate the stack
3176 * if necessary.
3177 * @param new_buffer The new state.
3178 * @param yyscanner The scanner object.
3179 */
3180 void message_push_buffer_state (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
3181 {
3182 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3183 if (new_buffer == NULL)
3184 return;
3185
3186 message_ensure_buffer_stack(yyscanner);
3187
3188 /* This block is copied from message__switch_to_buffer. */
3189 if ( YY_CURRENT_BUFFER )
3190 {
3191 /* Flush out information for old buffer. */
3192 *yyg->yy_c_buf_p = yyg->yy_hold_char;
3193 YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
3194 YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
3195 }
3196
3197 /* Only push if top exists. Otherwise, replace top. */
3198 if (YY_CURRENT_BUFFER)
3199 yyg->yy_buffer_stack_top++;
3200 YY_CURRENT_BUFFER_LVALUE = new_buffer;
3201
3202 /* copied from message__switch_to_buffer. */
3203 message__load_buffer_state(yyscanner );
3204 yyg->yy_did_buffer_switch_on_eof = 1;
3205 }
3206
3207 /** Removes and deletes the top of the stack, if present.
3208 * The next element becomes the new top.
3209 * @param yyscanner The scanner object.
3210 */
3211 void message_pop_buffer_state (yyscan_t yyscanner)
3212 {
3213 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3214 if (!YY_CURRENT_BUFFER)
3215 return;
3216
3217 message__delete_buffer(YY_CURRENT_BUFFER ,yyscanner);
3218 YY_CURRENT_BUFFER_LVALUE = NULL;
3219 if (yyg->yy_buffer_stack_top > 0)
3220 --yyg->yy_buffer_stack_top;
3221
3222 if (YY_CURRENT_BUFFER) {
3223 message__load_buffer_state(yyscanner );
3224 yyg->yy_did_buffer_switch_on_eof = 1;
3225 }
3226 }
3227
3228 /* Allocates the stack if it does not exist.
3229 * Guarantees space for at least one push.
3230 */
3231 static void message_ensure_buffer_stack (yyscan_t yyscanner)
3232 {
3233 int num_to_alloc;
3234 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3235
3236 if (!yyg->yy_buffer_stack) {
3237
3238 /* First allocation is just for 2 elements, since we don't know if this
3239 * scanner will even need a stack. We use 2 instead of 1 to avoi d an
3240 * immediate realloc on the next call.
3241 */
3242 num_to_alloc = 1;
3243 yyg->yy_buffer_stack = (struct yy_buffer_state**)message_alloc
3244 (num_to_alloc * sizeof(struct yy_buffer_state*)
3245 , yyscanner);
3246 if ( ! yyg->yy_buffer_stack )
3247 YY_FATAL_ERROR( "out of dynamic memory in message_ensure _buffer_stack()" );
3248
3249 memset(yyg->yy_buffer_stack, 0, num_to_alloc * sizeof(struct yy_ buffer_state*));
3250
3251 yyg->yy_buffer_stack_max = num_to_alloc;
3252 yyg->yy_buffer_stack_top = 0;
3253 return;
3254 }
3255
3256 if (yyg->yy_buffer_stack_top >= (yyg->yy_buffer_stack_max) - 1){
3257
3258 /* Increase the buffer to prepare for a possible push. */
3259 int grow_size = 8 /* arbitrary grow size */;
3260
3261 num_to_alloc = yyg->yy_buffer_stack_max + grow_size;
3262 yyg->yy_buffer_stack = (struct yy_buffer_state**)message_realloc
3263 (yyg->yy_buffer_ stack,
3264 num_to_alloc * s izeof(struct yy_buffer_state*)
3265 , yyscanner);
3266 if ( ! yyg->yy_buffer_stack )
3267 YY_FATAL_ERROR( "out of dynamic memory in message_ensure _buffer_stack()" );
3268
3269 /* zero only the new slots.*/
3270 memset(yyg->yy_buffer_stack + yyg->yy_buffer_stack_max, 0, grow_ size * sizeof(struct yy_buffer_state*));
3271 yyg->yy_buffer_stack_max = num_to_alloc;
3272 }
3273 }
3274
3275 /** Setup the input buffer state to scan directly from a user-specified characte r buffer.
3276 * @param base the character buffer
3277 * @param size the size in bytes of the character buffer
3278 * @param yyscanner The scanner object.
3279 * @return the newly allocated buffer state object.
3280 */
3281 YY_BUFFER_STATE message__scan_buffer (char * base, yy_size_t size , yyscan_t y yscanner)
3282 {
3283 YY_BUFFER_STATE b;
3284
3285 if ( size < 2 ||
3286 base[size-2] != YY_END_OF_BUFFER_CHAR ||
3287 base[size-1] != YY_END_OF_BUFFER_CHAR )
3288 /* They forgot to leave room for the EOB's. */
3289 return 0;
3290
3291 b = (YY_BUFFER_STATE) message_alloc(sizeof( struct yy_buffer_state ) ,yy scanner );
3292 if ( ! b )
3293 YY_FATAL_ERROR( "out of dynamic memory in message__scan_buffer() " );
3294
3295 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
3296 b->yy_buf_pos = b->yy_ch_buf = base;
3297 b->yy_is_our_buffer = 0;
3298 b->yy_input_file = 0;
3299 b->yy_n_chars = b->yy_buf_size;
3300 b->yy_is_interactive = 0;
3301 b->yy_at_bol = 1;
3302 b->yy_fill_buffer = 0;
3303 b->yy_buffer_status = YY_BUFFER_NEW;
3304
3305 message__switch_to_buffer(b ,yyscanner );
3306
3307 return b;
3308 }
3309
3310 /** Setup the input buffer state to scan a string. The next call to message_lex( ) will
3311 * scan from a @e copy of @a str.
3312 * @param yystr a NUL-terminated string to scan
3313 * @param yyscanner The scanner object.
3314 * @return the newly allocated buffer state object.
3315 * @note If you want to scan bytes that may contain NUL values, then use
3316 * message__scan_bytes() instead.
3317 */
3318 YY_BUFFER_STATE message__scan_string (yyconst char * yystr , yyscan_t yyscanner)
3319 {
3320
3321 return message__scan_bytes(yystr,strlen(yystr) ,yyscanner);
3322 }
3323
3324 /** Setup the input buffer state to scan the given bytes. The next call to messa ge_lex() will
3325 * scan from a @e copy of @a bytes.
3326 * @param yybytes the byte buffer to scan
3327 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
3328 * @param yyscanner The scanner object.
3329 * @return the newly allocated buffer state object.
3330 */
3331 YY_BUFFER_STATE message__scan_bytes (yyconst char * yybytes, int _yybytes_len , yyscan_t yyscanner)
3332 {
3333 YY_BUFFER_STATE b;
3334 char *buf;
3335 yy_size_t n;
3336 int i;
3337
3338 /* Get memory for full buffer, including space for trailing EOB's. */
3339 n = _yybytes_len + 2;
3340 buf = (char *) message_alloc(n ,yyscanner );
3341 if ( ! buf )
3342 YY_FATAL_ERROR( "out of dynamic memory in message__scan_bytes()" );
3343
3344 for ( i = 0; i < _yybytes_len; ++i )
3345 buf[i] = yybytes[i];
3346
3347 buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
3348
3349 b = message__scan_buffer(buf,n ,yyscanner);
3350 if ( ! b )
3351 YY_FATAL_ERROR( "bad buffer in message__scan_bytes()" );
3352
3353 /* It's okay to grow etc. this buffer, and we should throw it
3354 * away when we're done.
3355 */
3356 b->yy_is_our_buffer = 1;
3357
3358 return b;
3359 }
3360
3361 #ifndef YY_EXIT_FAILURE
3362 #define YY_EXIT_FAILURE 2
3363 #endif
3364
3365 static void yy_fatal_error (yyconst char* msg , yyscan_t yyscanner)
3366 {
3367 (void) fprintf( stderr, "%s\n", msg );
3368 exit( YY_EXIT_FAILURE );
3369 }
3370
3371 /* Redefine yyless() so it works in section 3 code. */
3372
3373 #undef yyless
3374 #define yyless(n) \
3375 do \
3376 { \
3377 /* Undo effects of setting up yytext. */ \
3378 int yyless_macro_arg = (n); \
3379 YY_LESS_LINENO(yyless_macro_arg);\
3380 yytext[yyleng] = yyg->yy_hold_char; \
3381 yyg->yy_c_buf_p = yytext + yyless_macro_arg; \
3382 yyg->yy_hold_char = *yyg->yy_c_buf_p; \
3383 *yyg->yy_c_buf_p = '\0'; \
3384 yyleng = yyless_macro_arg; \
3385 } \
3386 while ( 0 )
3387
3388 /* Accessor methods (get/set functions) to struct members. */
3389
3390 /** Get the user-defined data for this scanner.
3391 * @param yyscanner The scanner object.
3392 */
3393 YY_EXTRA_TYPE message_get_extra (yyscan_t yyscanner)
3394 {
3395 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3396 return yyextra;
3397 }
3398
3399 /** Get the current line number.
3400 * @param yyscanner The scanner object.
3401 */
3402 int message_get_lineno (yyscan_t yyscanner)
3403 {
3404 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3405
3406 if (! YY_CURRENT_BUFFER)
3407 return 0;
3408
3409 return yylineno;
3410 }
3411
3412 /** Get the current column number.
3413 * @param yyscanner The scanner object.
3414 */
3415 int message_get_column (yyscan_t yyscanner)
3416 {
3417 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3418
3419 if (! YY_CURRENT_BUFFER)
3420 return 0;
3421
3422 return yycolumn;
3423 }
3424
3425 /** Get the input stream.
3426 * @param yyscanner The scanner object.
3427 */
3428 FILE *message_get_in (yyscan_t yyscanner)
3429 {
3430 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3431 return yyin;
3432 }
3433
3434 /** Get the output stream.
3435 * @param yyscanner The scanner object.
3436 */
3437 FILE *message_get_out (yyscan_t yyscanner)
3438 {
3439 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3440 return yyout;
3441 }
3442
3443 /** Get the length of the current token.
3444 * @param yyscanner The scanner object.
3445 */
3446 int message_get_leng (yyscan_t yyscanner)
3447 {
3448 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3449 return yyleng;
3450 }
3451
3452 /** Get the current token.
3453 * @param yyscanner The scanner object.
3454 */
3455
3456 char *message_get_text (yyscan_t yyscanner)
3457 {
3458 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3459 return yytext;
3460 }
3461
3462 /** Set the user-defined data. This data is never touched by the scanner.
3463 * @param user_defined The data to be associated with this scanner.
3464 * @param yyscanner The scanner object.
3465 */
3466 void message_set_extra (YY_EXTRA_TYPE user_defined , yyscan_t yyscanner)
3467 {
3468 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3469 yyextra = user_defined ;
3470 }
3471
3472 /** Set the current line number.
3473 * @param line_number
3474 * @param yyscanner The scanner object.
3475 */
3476 void message_set_lineno (int line_number , yyscan_t yyscanner)
3477 {
3478 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3479
3480 /* lineno is only valid if an input buffer exists. */
3481 if (! YY_CURRENT_BUFFER )
3482 yy_fatal_error( "message_set_lineno called with no buffer" , yyscanne r);
3483
3484 yylineno = line_number;
3485 }
3486
3487 /** Set the current column.
3488 * @param line_number
3489 * @param yyscanner The scanner object.
3490 */
3491 void message_set_column (int column_no , yyscan_t yyscanner)
3492 {
3493 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3494
3495 /* column is only valid if an input buffer exists. */
3496 if (! YY_CURRENT_BUFFER )
3497 yy_fatal_error( "message_set_column called with no buffer" , yyscanne r);
3498
3499 yycolumn = column_no;
3500 }
3501
3502 /** Set the input stream. This does not discard the current
3503 * input buffer.
3504 * @param in_str A readable stream.
3505 * @param yyscanner The scanner object.
3506 * @see message__switch_to_buffer
3507 */
3508 void message_set_in (FILE * in_str , yyscan_t yyscanner)
3509 {
3510 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3511 yyin = in_str ;
3512 }
3513
3514 void message_set_out (FILE * out_str , yyscan_t yyscanner)
3515 {
3516 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3517 yyout = out_str ;
3518 }
3519
3520 int message_get_debug (yyscan_t yyscanner)
3521 {
3522 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3523 return yy_flex_debug;
3524 }
3525
3526 void message_set_debug (int bdebug , yyscan_t yyscanner)
3527 {
3528 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3529 yy_flex_debug = bdebug ;
3530 }
3531
3532 /* Accessor methods for yylval and yylloc */
3533
3534 YYSTYPE * message_get_lval (yyscan_t yyscanner)
3535 {
3536 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3537 return yylval;
3538 }
3539
3540 void message_set_lval (YYSTYPE * yylval_param , yyscan_t yyscanner)
3541 {
3542 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3543 yylval = yylval_param;
3544 }
3545
3546 /* User-visible API */
3547
3548 /* message_lex_init is special because it creates the scanner itself, so it is
3549 * the ONLY reentrant function that doesn't take the scanner as the last argumen t.
3550 * That's why we explicitly handle the declaration, instead of using our macros.
3551 */
3552
3553 int message_lex_init(yyscan_t* ptr_yy_globals)
3554
3555 {
3556 if (ptr_yy_globals == NULL){
3557 errno = EINVAL;
3558 return 1;
3559 }
3560
3561 *ptr_yy_globals = (yyscan_t) message_alloc ( sizeof( struct yyguts_t ), NULL );
3562
3563 if (*ptr_yy_globals == NULL){
3564 errno = ENOMEM;
3565 return 1;
3566 }
3567
3568 /* By setting to 0xAA, we expose bugs in yy_init_globals. Leave at 0x00 for releases. */
3569 memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
3570
3571 return yy_init_globals ( *ptr_yy_globals );
3572 }
3573
3574 /* message_lex_init_extra has the same functionality as message_lex_init, but fo llows the
3575 * convention of taking the scanner as the last argument. Note however, that
3576 * this is a *pointer* to a scanner, as it will be allocated by this call (and
3577 * is the reason, too, why this function also must handle its own declaration).
3578 * The user defined value in the first argument will be available to message_all oc in
3579 * the yyextra field.
3580 */
3581
3582 int message_lex_init_extra(YY_EXTRA_TYPE yy_user_defined,yyscan_t* ptr_yy_global s )
3583
3584 {
3585 struct yyguts_t dummy_yyguts;
3586
3587 message_set_extra (yy_user_defined, &dummy_yyguts);
3588
3589 if (ptr_yy_globals == NULL){
3590 errno = EINVAL;
3591 return 1;
3592 }
3593
3594 *ptr_yy_globals = (yyscan_t) message_alloc ( sizeof( struct yyguts_t ), &dum my_yyguts );
3595
3596 if (*ptr_yy_globals == NULL){
3597 errno = ENOMEM;
3598 return 1;
3599 }
3600
3601 /* By setting to 0xAA, we expose bugs in
3602 yy_init_globals. Leave at 0x00 for releases. */
3603 memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
3604
3605 message_set_extra (yy_user_defined, *ptr_yy_globals);
3606
3607 return yy_init_globals ( *ptr_yy_globals );
3608 }
3609
3610 static int yy_init_globals (yyscan_t yyscanner)
3611 {
3612 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3613 /* Initialization is the same as for the non-reentrant scanner.
3614 * This function is called from message_lex_destroy(), so don't allocate her e.
3615 */
3616
3617 yyg->yy_buffer_stack = 0;
3618 yyg->yy_buffer_stack_top = 0;
3619 yyg->yy_buffer_stack_max = 0;
3620 yyg->yy_c_buf_p = (char *) 0;
3621 yyg->yy_init = 0;
3622 yyg->yy_start = 0;
3623
3624 yyg->yy_start_stack_ptr = 0;
3625 yyg->yy_start_stack_depth = 0;
3626 yyg->yy_start_stack = NULL;
3627
3628 /* Defined in main.c */
3629 #ifdef YY_STDINIT
3630 yyin = stdin;
3631 yyout = stdout;
3632 #else
3633 yyin = (FILE *) 0;
3634 yyout = (FILE *) 0;
3635 #endif
3636
3637 /* For future reference: Set errno on error, since we are called by
3638 * message_lex_init()
3639 */
3640 return 0;
3641 }
3642
3643 /* message_lex_destroy is for both reentrant and non-reentrant scanners. */
3644 int message_lex_destroy (yyscan_t yyscanner)
3645 {
3646 struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
3647
3648 /* Pop the buffer stack, destroying each element. */
3649 while(YY_CURRENT_BUFFER){
3650 message__delete_buffer(YY_CURRENT_BUFFER ,yyscanner );
3651 YY_CURRENT_BUFFER_LVALUE = NULL;
3652 message_pop_buffer_state(yyscanner);
3653 }
3654
3655 /* Destroy the stack itself. */
3656 message_free(yyg->yy_buffer_stack ,yyscanner);
3657 yyg->yy_buffer_stack = NULL;
3658
3659 /* Destroy the start condition stack. */
3660 message_free(yyg->yy_start_stack ,yyscanner );
3661 yyg->yy_start_stack = NULL;
3662
3663 /* Reset the globals. This is important in a non-reentrant scanner so the ne xt time
3664 * message_lex() is called, initialization will occur. */
3665 yy_init_globals( yyscanner);
3666
3667 /* Destroy the main struct (reentrant only). */
3668 message_free ( yyscanner , yyscanner );
3669 yyscanner = NULL;
3670 return 0;
3671 }
3672
3673 /*
3674 * Internal utility routines.
3675 */
3676
3677 #ifndef yytext_ptr
3678 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yysca nner)
3679 {
3680 register int i;
3681 for ( i = 0; i < n; ++i )
3682 s1[i] = s2[i];
3683 }
3684 #endif
3685
3686 #ifdef YY_NEED_STRLEN
3687 static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner)
3688 {
3689 register int n;
3690 for ( n = 0; s[n]; ++n )
3691 ;
3692
3693 return n;
3694 }
3695 #endif
3696
3697 void *message_alloc (yy_size_t size , yyscan_t yyscanner)
3698 {
3699 return (void *) malloc( size );
3700 }
3701
3702 void *message_realloc (void * ptr, yy_size_t size , yyscan_t yyscanner)
3703 {
3704 /* The cast to (char *) in the following accommodates both
3705 * implementations that use char* generic pointers, and those
3706 * that use void* generic pointers. It works with the latter
3707 * because both ANSI C and C++ allow castless assignment from
3708 * any pointer type to void*, and deal with argument conversions
3709 * as though doing an assignment.
3710 */
3711 return (void *) realloc( (char *) ptr, size );
3712 }
3713
3714 void message_free (void * ptr , yyscan_t yyscanner)
3715 {
3716 free( (char *) ptr ); /* see message_realloc() for (char *) cast */
3717 }
3718
3719 #define YYTABLES_NAME "yytables"
3720
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698