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