GCC Code Coverage Report
Directory: ./ Exec Total Coverage
File: usr.bin/lex/scan.c Lines: 379 858 44.2 %
Date: 2017-11-13 Branches: 247 1168 21.1 %

Line Branch Exec Source
1
#line 2 "scan.c"
2
3
#line 4 "scan.c"
4
5
#define  YY_INT_ALIGNED short int
6
7
/*	$OpenBSD: flex.skl,v 1.16 2017/05/02 19:16:19 millert Exp $	*/
8
9
/* A lexical scanner generated by flex */
10
11
#define FLEX_SCANNER
12
#define YY_FLEX_MAJOR_VERSION 2
13
#define YY_FLEX_MINOR_VERSION 5
14
#define YY_FLEX_SUBMINOR_VERSION 39
15
#if YY_FLEX_SUBMINOR_VERSION > 0
16
#define FLEX_BETA
17
#endif
18
19
/* First, we deal with  platform-specific or compiler-specific issues. */
20
21
/* begin standard C headers. */
22
#include <stdio.h>
23
#include <string.h>
24
#include <errno.h>
25
#include <stdlib.h>
26
27
/* end standard C headers. */
28
29
/* $OpenBSD: flexint.h,v 1.1 2015/11/19 19:43:40 tedu Exp $ */
30
31
/* flex integer type definitions */
32
33
#ifndef FLEXINT_H
34
#define FLEXINT_H
35
36
/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
37
38
#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
39
40
/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
41
 * if you want the limit (max/min) macros for int types.
42
 */
43
#ifndef __STDC_LIMIT_MACROS
44
#define __STDC_LIMIT_MACROS 1
45
#endif
46
47
#include <inttypes.h>
48
typedef int8_t flex_int8_t;
49
typedef uint8_t flex_uint8_t;
50
typedef int16_t flex_int16_t;
51
typedef uint16_t flex_uint16_t;
52
typedef int32_t flex_int32_t;
53
typedef uint32_t flex_uint32_t;
54
#else
55
typedef signed char flex_int8_t;
56
typedef short int flex_int16_t;
57
typedef int flex_int32_t;
58
typedef unsigned char flex_uint8_t;
59
typedef unsigned short int flex_uint16_t;
60
typedef unsigned int flex_uint32_t;
61
62
/* Limits of integral types. */
63
#ifndef INT8_MIN
64
#define INT8_MIN               (-128)
65
#endif
66
#ifndef INT16_MIN
67
#define INT16_MIN              (-32767-1)
68
#endif
69
#ifndef INT32_MIN
70
#define INT32_MIN              (-2147483647-1)
71
#endif
72
#ifndef INT8_MAX
73
#define INT8_MAX               (127)
74
#endif
75
#ifndef INT16_MAX
76
#define INT16_MAX              (32767)
77
#endif
78
#ifndef INT32_MAX
79
#define INT32_MAX              (2147483647)
80
#endif
81
#ifndef UINT8_MAX
82
#define UINT8_MAX              (255U)
83
#endif
84
#ifndef UINT16_MAX
85
#define UINT16_MAX             (65535U)
86
#endif
87
#ifndef UINT32_MAX
88
#define UINT32_MAX             (4294967295U)
89
#endif
90
91
#endif /* ! C99 */
92
93
#endif /* ! FLEXINT_H */
94
95
#ifdef __cplusplus
96
97
/* The "const" storage-class-modifier is valid. */
98
#define YY_USE_CONST
99
100
#else	/* ! __cplusplus */
101
102
/* C99 requires __STDC__ to be defined as 1. */
103
#if defined (__STDC__)
104
105
#define YY_USE_CONST
106
107
#endif	/* defined (__STDC__) */
108
#endif	/* ! __cplusplus */
109
110
#ifdef YY_USE_CONST
111
#define yyconst const
112
#else
113
#define yyconst
114
#endif
115
116
/* Returned upon end-of-file. */
117
#define YY_NULL 0
118
119
/* Promotes a possibly negative, possibly signed char to an unsigned
120
 * integer for use as an array index.  If the signed char is negative,
121
 * we want to instead treat it as an 8-bit unsigned char, hence the
122
 * double cast.
123
 */
124
#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
125
126
/* Enter a start condition.  This macro really ought to take a parameter,
127
 * but we do it the disgusting crufty way forced on us by the ()-less
128
 * definition of BEGIN.
129
 */
130
#define BEGIN (yy_start) = 1 + 2 *
131
132
/* Translate the current start state into a value that can be later handed
133
 * to BEGIN to return to the state.  The YYSTATE alias is for lex
134
 * compatibility.
135
 */
136
#define YY_START (((yy_start) - 1) / 2)
137
#define YYSTATE YY_START
138
139
/* Action number for EOF rule of a given start state. */
140
35712
#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
141
142
/* Special action meaning "start processing a new file". */
143
#define YY_NEW_FILE yyrestart(yyin  )
144
145
#define YY_END_OF_BUFFER_CHAR 0
146
147
6
/* Size of default input buffer. */
148
#ifndef YY_BUF_SIZE
149
12
#define YY_BUF_SIZE 16384
150
12
#endif
151
12
152
36
/* The state buf must be large enough to hold one state per character in the main buffer.
153
12
 */
154
#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
155
12
156
#ifndef YY_TYPEDEF_YY_BUFFER_STATE
157
#define YY_TYPEDEF_YY_BUFFER_STATE
158
typedef struct yy_buffer_state *YY_BUFFER_STATE;
159
#endif
160
161
#ifndef YY_TYPEDEF_YY_SIZE_T
162
#define YY_TYPEDEF_YY_SIZE_T
163
typedef size_t yy_size_t;
164
#endif
165
166
60
extern yy_size_t yyleng;
167
168
36
extern FILE *yyin, *yyout;
169
12
170
12
#define EOB_ACT_CONTINUE_SCAN 0
171
12
#define EOB_ACT_END_OF_FILE 1
172
12
#define EOB_ACT_LAST_MATCH 2
173
12
174
    #define YY_LESS_LINENO(n)
175
    #define YY_LINENO_REWIND_TO(ptr)
176
6
177
6
/* Return all but the first "n" matched characters back to the input stream. */
178
12
#define yyless(n) \
179
6
	do \
180

12
		{ \
181
30
		/* Undo effects of setting up yytext. */ \
182
30
        int yyless_macro_arg = (n); \
183
60
        YY_LESS_LINENO(yyless_macro_arg);\
184
		*yy_cp = (yy_hold_char); \
185
		YY_RESTORE_YY_MORE_OFFSET \
186
		(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
187
		YY_DO_BEFORE_ACTION; /* set up yytext again */ \
188

1278
		} \
189
	while ( 0 )
190
426
191
#define unput(c) yyunput( c, (yytext_ptr)  )
192
193
#ifndef YY_STRUCT_YY_BUFFER_STATE
194
#define YY_STRUCT_YY_BUFFER_STATE
195
struct yy_buffer_state
196
	{
197
	FILE *yy_input_file;
198
426
199
426
	char *yy_ch_buf;		/* input buffer */
200
	char *yy_buf_pos;		/* current position in input buffer */
201
426
202
60
	/* Size of input buffer in bytes, not including room for EOB
203
186
	 * characters.
204
132
	 */
205
6
	yy_size_t yy_buf_size;
206
252
207
12
	/* Number of characters read into yy_ch_buf, not including EOB
208
	 * characters.
209
18
	 */
210
6
	yy_size_t yy_n_chars;
211
212
	/* Whether we "own" the buffer - i.e., we know we created it,
213
112
	 * and can realloc() it to grow it, and should free() it to
214
112
	 * delete it.
215
224
	 */
216
	int yy_is_our_buffer;
217
218
	/* Whether this is an "interactive" input source; if so, and
219
	 * if we're using stdio for input, then we want to use getc()
220
	 * instead of fread(), to make sure we stop fetching input after
221
	 * each newline.
222
	 */
223
	int yy_is_interactive;
224
225
	/* Whether we're considered to be at the beginning of a line.
226
	 * If so, '^' rules will be active on the next match, otherwise
227
	 * not.
228
	 */
229
	int yy_at_bol;
230
231
    int yy_bs_lineno; /**< The line count. */
232
    int yy_bs_column; /**< The column count. */
233
234
	/* Whether to try to fill the input buffer when we reach the
235
	 * end of it.
236
	 */
237
	int yy_fill_buffer;
238
239
	int yy_buffer_status;
240
241
#define YY_BUFFER_NEW 0
242
#define YY_BUFFER_NORMAL 1
243
	/* When an EOF's been seen but there's still some text to process
244
12
	 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
245
12
	 * shouldn't try reading from the input source any more.  We might
246
24
	 * still have a bunch of tokens to match, though, because of
247
	 * possible backing-up.
248
19536
	 *
249
19536
	 * When we actually see the EOF, we change the status to "new"
250
39072
	 * (via yyrestart()), so that the user can continue scanning by
251
732
	 * just pointing yyin at a new input file.
252
2196
	 */
253
732
#define YY_BUFFER_EOF_PENDING 2
254
255
	};
256
#endif /* !YY_STRUCT_YY_BUFFER_STATE */
257
258
/* Stack of input buffers. */
259
static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
260
static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
261
static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
262
263
/* We provide macros for accessing buffer states in case in the
264
 * future we want to put the buffer states in a more general
265
 * "scanner state".
266
 *
267
 * Returns the top of the stack, or NULL.
268
 */
269
#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
270
                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
271
                          : NULL)
272
273
/* Same as previous macro, but useful when we know that the buffer stack is not
274
 * NULL or when we need an lvalue. For internal use only.
275
 */
276
#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
277
278
/* yy_hold_char holds the character lost when yytext is formed. */
279
static char yy_hold_char;
280
static yy_size_t yy_n_chars;		/* number of characters read into yy_ch_buf */
281
yy_size_t yyleng;
282
283
/* Points to current character in buffer. */
284
static char *yy_c_buf_p = (char *) 0;
285
static int yy_init = 0;		/* whether we need to initialize */
286
static int yy_start = 0;	/* start state number */
287
288
/* Flag which is used to allow yywrap()'s to do buffer switches
289
 * instead of setting up a fresh yyin.  A bit of a hack ...
290
 */
291
static int yy_did_buffer_switch_on_eof;
292
293
852
void yyrestart (FILE *input_file  );
294
void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer  );
295
YY_BUFFER_STATE yy_create_buffer (FILE *file,int size  );
296

1278
void yy_delete_buffer (YY_BUFFER_STATE b  );
297
void yy_flush_buffer (YY_BUFFER_STATE b  );
298
426
void yypush_buffer_state (YY_BUFFER_STATE new_buffer  );
299
void yypop_buffer_state (void );
300
301
static void yyensure_buffer_stack (void );
302
static void yy_load_buffer_state (void );
303
static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file  );
304
305
#define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER )
306
852
307

1278
YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size  );
308
YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str  );
309
YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len  );
310
311
426
void *yyalloc (yy_size_t  );
312
void *yyrealloc (void *,yy_size_t  );
313
426
void yyfree (void *  );
314
426
315
#define yy_new_buffer yy_create_buffer
316
426
317
#define yy_set_interactive(is_interactive) \
318
426
	{ \
319
852
	if ( ! YY_CURRENT_BUFFER ){ \
320
426
        yyensure_buffer_stack (); \
321
426
		YY_CURRENT_BUFFER_LVALUE =    \
322
            yy_create_buffer(yyin,YY_BUF_SIZE ); \
323
426
	} \
324
	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
325
	}
326
327
6
#define yy_set_bol(at_bol) \
328
42
	{ \
329
24
	if ( ! YY_CURRENT_BUFFER ){\
330
48
        yyensure_buffer_stack (); \
331
		YY_CURRENT_BUFFER_LVALUE =    \
332
12
            yy_create_buffer(yyin,YY_BUF_SIZE ); \
333
36
	} \
334
	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
335
	}
336
337
#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
338
339
/* Begin user sect3 */
340
341
typedef unsigned char YY_CHAR;
342
343
FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
344
345
typedef int yy_state_type;
346
347
extern int yylineno;
348
349
int yylineno = 1;
350
351
extern char *yytext;
352
#define yytext_ptr yytext
353
354
static yy_state_type yy_get_previous_state (void );
355
static yy_state_type yy_try_NUL_trans (yy_state_type current_state  );
356
static int yy_get_next_buffer (void );
357
static void yy_fatal_error (yyconst char msg[]  );
358
359
/* Done after the current pattern has been matched and before the
360
 * corresponding action - sets up yytext.
361
 */
362
#define YY_DO_BEFORE_ACTION \
363
	(yytext_ptr) = yy_bp; \
364
	(yytext_ptr) -= (yy_more_len); \
365
12
	yyleng = (size_t) (yy_cp - (yytext_ptr)); \
366
	(yy_hold_char) = *yy_cp; \
367
12
	*yy_cp = '\0'; \
368
	(yy_c_buf_p) = yy_cp;
369
370
#define YY_NUM_RULES 251
371
#define YY_END_OF_BUFFER 252
372
/* This struct is not used in this scanner,
373
   but its presence is necessary. */
374
struct yy_trans_info
375
	{
376
	flex_int32_t yy_verify;
377

12
	flex_int32_t yy_nxt;
378
18
	};
379
static yyconst flex_int16_t yy_acclist[1223] =
380
6
    {   0,
381
      248,  248,  252,  250,  251,    9,  250,  251,   20,  250,
382
      251,  250,  251,   18,  250,  251,    1,    9,  250,  251,
383
       19,   20,  250,  251,  250,  251,  250,  251,  250,  251,
384
      250,  251,   17,   18,  250,  251,  164,  250,  251,  149,
385
      164,  250,  251,  150,  250,  251,  164,  250,  251,  142,
386
      164,  250,  251,  164,  250,  251,  161,  163,  164,  250,
387
      251,  162,  163,  164,  250,  251,  163,  164,  250,  251,
388
      163,  164,  250,  251,  164,  250,  251,  164,  250,  251,
389
      164,  250,  251,  163,  164,  250,  251,  148,  149,  164,
390
      250,  251,  138,  150,  250,  251,  164,  250,  251,  164,
391
392

12
      250,  251,  140,  164,  250,  251,  141,  164,  250,  251,
393
      136,  250,  251,  137,  250,  251,  136,  250,  251,  135,
394
18
      136,  250,  251,  134,  136,  250,  251,  135,  136,  250,
395
6
      251,  248,  249,  250,  251,  248,  249,  250,  251,  249,
396

12
      250,  251,  249,  250,  251,   41,  250,  251,   42,  250,
397
      251,   41,  250,  251,   41,  250,  251,   41,  250,  251,
398
       41,  250,  251,   41,  250,  251,   41,  250,  251,   50,
399
      250,  251,   49,  250,  251,   51,  250,  251,  250,  251,
400
      170,  250,  251,  170,  250,  251,  165,  250,  251,  170,
401
      250,  251,  166,  170,  250,  251,  167,  170,  250,  251,
402
403
      169,  170,  250,  251,  171,  250,  251,  219,  250,  251,
404
      220,  250,  251,  219,  250,  251,  217,  219,  250,  251,
405
      216,  219,  250,  251,  218,  219,  250,  251,  172,  250,
406
      251,  174,  250,  251,  172,  250,  251,  173,  250,  251,
407
      172,  250,  251,  186,  250,  251,  186,  250,  251,  186,
408
      250,  251,  186,  250,  251,  188,  190,  250,  251,  190,
409
      250,  251,  188,  190,  250,  251,  188,  190,  250,  251,
410
      188,  190,  250,  251,  188,  190,  250,  251,  189,  190,
411
      250,  251,  233,  239,  250,  251,  238,  250,  251,  233,
412
      239,  250,  251,  237,  239,  250,  251,  239,  250,  251,
413
414
      239,  250,  251,  235,  239,  250,  251,  235,  239,  250,
415
      251,  235,  239,  250,  251,  234,  239,  250,  251,  234,
416
      239,  250,  251,  229,  239,  250,  251,  230,  239,  250,
417
      251,  250,  251,  131,  250,  251,  250,  251,   25,  250,
418
      251,   26,  250,  251,   25,  250,  251,   22,  250,  251,
419
       25,  250,  251,   25,  250,  251,  240,  244,  250,  251,
420
      242,  250,  251,  240,  244,  250,  251,  243,  244,  250,
421
      251,  244,  250,  251,  227,  250,  251,  227,  250,  251,
422
      228,  250,  251,  227,  250,  251,  227,  250,  251,  227,
423
      250,  251,  227,  250,  251,  227,  250,  251,  227,  250,
424
425
      251,  227,  250,  251,  130,  250,  251,   53,  130,  250,
426
      251,   52,  250,  251,  130,  250,  251,  130,  250,  251,
427
      130,  250,  251,  130,  250,  251,   54,  130,  250,  251,
428
      130,  250,  251,  130,  250,  251,  130,  250,  251,  130,
429
      250,  251,  130,  250,  251,  130,  250,  251,  130,  250,
430
      251,  130,  250,  251,  130,  250,  251,  130,  250,  251,
431
      130,  250,  251,  130,  250,  251,  130,  250,  251,  130,
432
      250,  251,  130,  250,  251,  130,  250,  251,  130,  250,
433
      251,  130,  250,  251,  130,  250,  251,  130,  250,  251,
434
      130,  250,  251,   37,  250,  251,   34,  250,  251,   37,
435
436
      250,  251,   35,   37,  250,  251,   48,  250,  251,   45,
437
      250,  251,  250,  251,   48,  250,  251,   48,  250,  251,
438
       44,  250,  251,   43,  250,  251,  176,  250,  251,  175,
439
      250,  251,  177,  250,  251,  178,  250,  251,  179,  250,
440
      251,  180,  250,  251,  181,  250,  251,  182,  250,  251,
441
      183,  250,  251,   32,  250,  251,   33,  250,  251,   32,
442
      250,  251,   31,  250,  251,   29,  250,  251,   30,  250,
443
      251,   29,  250,  251,   28,  250,  251,    9,   20,   18,
444
        1,    9,   19,   20,   16,   10,   16,    4,   16,    5,
445
        2,   17,   18,  149,  150,  144,  160,  158,  154,  154,
446
447
      245,  245,  245,  143,  148,  149,  138,  150,  140,  141,
448
      153,  139,  137,  135,  134,  134,  132,  135,  133,  135,
449
      248,  248,  246,  247,   42,   39,   40,   50,   49,   51,
450
      165,  165,  168,  169,  220,  216,  174,  184,  185,  190,
451
      187,  233,  238,  236,  222,  235,  235,  235,  231,  232,
452
      131,   26,   21,   23,   24,  240,  242,  241,  228,  221,
453
      225,  226,   53,   52,  129,  130,  130,  130,  130,  130,
454
      130,  130,  130,  130,  130,  130,  130,  130,  130,  130,
455
      130,  130,  130,  130,  130,   55,  130,  130,  130,  130,
456
      130,  130,  130,  130,  130,  130,  130,   36,   35,   45,
457
458
       46,   47,   32,   33,   30,   27,   16,   10,   16,   14,
459
        4,   16,    5,    6,  145,  146,  159,  154,  154,  154,
460
      154,  154,  245,  245,  156,  155,  157,  139,  145,  147,
461
      153,  132,  135,  133,  135,   38,  235,  235,  221,  130,
462
      130,  130,  130,  130,  130,  130,   67,  130,  130,  130,
463
      130,   72,  130,  130,  130,  130,  130,  130,  130,  130,
464
6
      130,  130,  130,  130,  130,  130,  130,  130,  130,  130,
465
4
      130,  130,  130,  130,  130,  130,  130,  130,  130,  130,
466
2
      130,  130,  130,  130,  130,  130,  130,   14,   15,    4,
467
30
        8,   16,    5,  154,  154,  154,  154,  154,  154,  154,
468
78
469
      245,  157,  235,  235,   56,   57,  130,  130,  130,  130,
470

12
      130,  130,  130,  130,  130,  130,  130,   73,  130,   74,
471
      130,  130,  130,  130,  130,   79,  130,  130,  130,  130,
472
4
      130,  130,  130,  130,   84,  130,  130,  130,  130,  130,
473

12
      130,  130,  130,  130,  130,   93,  130,  130,  130,  130,
474
4
      130,  130,  130,  130,  130,  130,   15,    8,   16,    8,
475
4
       16,    8,   16,  154,  154,  154,  154,  154,  154,  154,
476
4
      215,  235,  235,   58,  130,  130,  130,   60,  130,  130,
477
       64,  130,  130,  130,  130,  130,   70,  130,  130,  130,
478
      130,   75,  130,  130,  130,  130,  130,  130,  130,  130,
479
480
      130,  130,  130,  130,   87,  130,  130,  130,  130,  130,
481
       91,  130,  130,  130,  130,  130,  130,  130,  130,  130,
482
36
      130,  130,    3,    8,   16,    7,    8,   16,  154,  154,
483
36
      154,  223,  224,  223,  235,  224,  235,  130,  130,  130,
484
       63,  130,  130,  130,  130,  130,  130,  130,  130,  126,
485
72
      130,  130,  130,  130,  130,  130,  130,  130,  130,  124,
486
      130,  130,   86,  130,  130,   89,  130,  130,   90,  130,
487
      130,  130,  130,  105,  130,  130,   95,  130,  130,   96,
488
      130,   12,   13,  152,  151,  152,  130,  130,  130,  130,
489
      130,  130,  130,   68,  130,  130,   71,  130,  130,  130,
490
491
      130,  130,  130,  130,  123,  130,  130,   83,  130,  130,
492
24
      130,   88,  130,  130,   92,  130,  103,  130,  125,  130,
493
24
      130,  130,  151,  130,  130,  130,  130,  130,  130,  130,
494
48
       69,  130,  130,  130,  130,  130,   80,  130,  130,  130,
495
      130,  130,  130,  130,  114,   94,  130,  130,  115,   11,
496
      191,  215,  192,  215,  193,  215,  194,  215,  195,  215,
497
      196,  215,  197,  215,  198,  215,  199,  215,  200,  215,
498
      201,  215,  130,  130,  130,  130,  130,  130,  130,  130,
499
      130,  130,  130,  130,  130,  130,   85,  130,  130,  130,
500
      116,  104,  130,  117,  202,  215,  203,  215,  204,  215,
501
502
132
      205,  215,  206,  215,  207,  215,  208,  215,  209,  215,
503
66
      210,  215,  211,  215,  212,  215,  213,  215,  130,  130,
504
66
      130,  130,  130,  130,  130,  122,  130,  130,  130,   77,
505
66
      130,  130,  130,  130,  130,  130,  110,  120,  118,  111,
506
      121,  119,  214,  215,  130,  130,  130,  130,  130,  130,
507
      130,  126,  130,   76,  130,  130,   82,  130,  130,  127,
508
84
      130,  130,  106,  108,  107,  109,  130,  130,  130,   65,
509
      130,  130,  130,  130,  130,   78,  130,  130,  112,  113,
510
168
       98,   99,  130,  130,  130,  130,  130,  130,  130,  128,
511
      130,   97,  101,  130,  130,  130,  130,  130,   68,  130,
512
513
      130,  100,  102,  130,  130,   62,  130,   66,  130,  130,
514
      130,  130,   61,  130,   69,  130,  130,  130,   81,  130,
515
       59,  130
516
    } ;
517
518
static yyconst flex_int16_t yy_accept[1108] =
519
    {   0,
520
        1,    1,    1,    1,    1,    1,    1,    2,    3,    3,
521
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
522
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
523
        3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
524
        3,    3,    3,    3,    3,    3,    3,    3,    3,    4,
525
        6,    9,   12,   14,   17,   21,   25,   27,   29,   31,
526
       33,   37,   40,   44,   47,   50,   54,   57,   62,   67,
527
       71,   75,   78,   81,   84,   88,   93,   97,  100,  103,
528
      107,  111,  114,  117,  120,  124,  128,  132,  136,  140,
529
      143,  146,  149,  152,  155,  158,  161,  164,  167,  170,
530
531
      173,  176,  179,  181,  184,  187,  190,  193,  197,  201,
532
      205,  208,  211,  214,  217,  221,  225,  229,  232,  235,
533
      238,  241,  244,  247,  250,  253,  256,  260,  263,  267,
534
      271,  275,  279,  283,  287,  290,  294,  298,  301,  304,
535
      308,  312,  316,  320,  324,  328,  332,  334,  337,  339,
536
      342,  345,  348,  351,  354,  357,  361,  364,  368,  372,
537
      375,  378,  381,  384,  387,  390,  393,  396,  399,  402,
538
      405,  408,  412,  415,  418,  421,  424,  427,  431,  434,
539
      437,  440,  443,  446,  449,  452,  455,  458,  461,  464,
540
      467,  470,  473,  476,  479,  482,  485,  488,  491,  494,
541
542
      497,  500,  503,  507,  510,  513,  515,  518,  521,  524,
543
      527,  530,  533,  536,  539,  542,  545,  548,  551,  554,
544
      557,  560,  563,  566,  569,  572,  575,  578,  579,  580,
545
      580,  581,  583,  585,  585,  585,  585,  586,  588,  588,
546
      588,  588,  588,  589,  590,  591,  591,  592,  594,  595,
547
      596,  596,  596,  596,  597,  597,  598,  599,  599,  600,
548
      601,  601,  602,  603,  604,  604,  604,  605,  605,  607,
549
      609,  609,  609,  609,  610,  611,  612,  613,  613,  614,
550
      615,  616,  617,  619,  621,  622,  623,  624,  625,  626,
551
      626,  626,  627,  628,  628,  629,  630,  631,  631,  632,
552
553
      632,  633,  634,  635,  636,  637,  638,  638,  639,  640,
554
      641,  642,  643,  644,  644,  645,  645,  646,  647,  648,
555
      649,  650,  651,  651,  652,  652,  653,  654,  655,  656,
556
      657,  658,  659,  659,  659,  660,  661,  662,  663,  664,
557
      665,  665,  666,  666,  666,  667,  668,  669,  670,  671,
558
      672,  673,  674,  675,  676,  677,  678,  679,  680,  681,
559
      682,  683,  684,  685,  686,  687,  688,  689,  690,  691,
560
      692,  693,  694,  695,  696,  697,  698,  698,  699,  700,
561

822
      701,  702,  703,  704,  705,  706,  707,  707,  708,  710,
562
      710,  711,  711,  711,  711,  711,  711,  712,  713,  714,
563
564
      714,  715,  715,  716,  716,  717,  717,  718,  718,  719,
565
      720,  720,  721,  722,  723,  724,  725,  726,  727,  727,
566
      728,  730,  731,  731,  732,  732,  734,  736,  736,  736,
567
      736,  737,  737,  737,  737,  737,  737,  737,  737,  737,
568
      737,  737,  737,  737,  737,  738,  739,  740,  740,  740,
569
274
      741,  742,  743,  744,  745,  746,  747,  749,  750,  751,
570
274
      752,  754,  755,  756,  757,  758,  759,  760,  761,  762,
571
274
      763,  764,  765,  766,  767,  768,  769,  770,  771,  772,
572
      773,  774,  775,  776,  777,  778,  779,  780,  781,  782,
573
274
      783,  784,  785,  786,  787,  788,  788,  788,  788,  788,
574
575
274
      790,  790,  790,  790,  790,  790,  790,  791,  793,  794,
576
274
      794,  795,  796,  797,  798,  799,  800,  801,  802,  803,
577
274
      803,  803,  803,  803,  803,  803,  803,  803,  803,  803,
578
      803,  803,  803,  803,  803,  803,  803,  803,  803,  803,
579
      803,  803,  803,  803,  803,  803,  804,  805,  806,  807,
580
      808,  809,  810,  811,  812,  813,  814,  815,  816,  817,
581
      818,  820,  822,  823,  824,  825,  826,  828,  829,  830,
582
      831,  832,  833,  834,  835,  837,  838,  839,  840,  841,
583
2
      842,  843,  844,  845,  846,  848,  849,  850,  851,  852,
584
4
      853,  854,  855,  856,  857,  857,  857,  857,  857,  858,
585
586
      858,  858,  858,  858,  858,  860,  862,  864,  864,  865,
587
      866,  867,  868,  869,  870,  871,  871,  871,  871,  871,
588
2
      872,  872,  872,  872,  872,  872,  872,  872,  872,  872,
589
2
      872,  872,  872,  872,  872,  872,  872,  872,  872,  872,
590
2
      872,  872,  872,  872,  873,  874,  876,  877,  878,  880,
591
2
      881,  883,  884,  885,  886,  887,  889,  890,  891,  892,
592
      894,  895,  896,  897,  898,  899,  900,  901,  902,  903,
593
2
      904,  905,  907,  908,  909,  910,  911,  913,  914,  915,
594
      916,  917,  918,  919,  920,  921,  922,  923,  923,  923,
595
2
      923,  923,  924,  924,  924,  924,  926,  927,  929,  929,
596
2
597
2
      930,  931,  932,  932,  932,  933,  934,  934,  934,  934,
598
      934,  934,  934,  934,  934,  934,  934,  934,  934,  934,
599
      934,  934,  934,  934,  934,  934,  934,  934,  934,  934,
600
      934,  936,  938,  939,  940,  941,  943,  944,  945,  946,
601
      947,  948,  949,  950,  952,  953,  954,  955,  956,  957,
602
      958,  959,  960,  962,  963,  965,  966,  968,  969,  971,
603
      972,  973,  974,  976,  976,  977,  979,  980,  980,  982,
604
      982,  982,  982,  982,  982,  983,  983,  984,  984,  985,
605
      985,  987,  987,  987,  987,  987,  987,  987,  987,  987,
606
12
      987,  987,  987,  987,  987,  987,  987,  987,  987,  987,
607
4
608
4
      987,  987,  987,  987,  987,  987,  988,  989,  990,  991,
609
4
      992,  993,  994,  996,  997,  999, 1000, 1001, 1002, 1003,
610
     1004, 1005, 1007, 1008, 1010, 1011, 1012, 1014, 1015, 1017,
611
     1019, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1022, 1023,
612
     1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023,
613
4956
     1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
614
     1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
615
2478
     1024, 1024, 1024, 1024, 1024, 1025, 1026, 1027, 1028, 1029,
616
     1030, 1031, 1033, 1034, 1035, 1036, 1037, 1039, 1040, 1041,
617
2478
     1042, 1043, 1044, 1045, 1045, 1045, 1046, 1046, 1046, 1046,
618
619
     1046, 1046, 1046, 1048, 1049, 1049, 1049, 1050, 1050, 1050,
620
     1050, 1050, 1050, 1050, 1050, 1050, 1050, 1051, 1051, 1053,
621
     1055, 1057, 1059, 1061, 1063, 1065, 1067, 1069, 1071, 1073,
622
     1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073,
623
     1073, 1073, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080,
624
     1081, 1082, 1083, 1084, 1085, 1086, 1087, 1089, 1090, 1091,
625
     1091, 1091, 1091, 1091, 1091, 1091, 1092, 1092, 1094, 1094,
626
     1094, 1094, 1094, 1094, 1095, 1095, 1095, 1095, 1095, 1095,
627
     1097, 1099, 1101, 1103, 1105, 1107, 1109, 1111, 1113, 1115,
628
     1117, 1119, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
629
630
     1128, 1129, 1130, 1132, 1133, 1134, 1135, 1136, 1137, 1137,
631
     1137, 1138, 1138, 1139, 1140, 1141, 1141, 1141, 1141, 1142,
632
     1143, 1143, 1143, 1143, 1143, 1143, 1143, 1145, 1146, 1147,
633
     1148, 1149, 1150, 1151, 1152, 1154, 1156, 1157, 1159, 1160,
634
     1162, 1163, 1164, 1165, 1165, 1166, 1167, 1167, 1167, 1167,
635
     1167, 1167, 1167, 1167, 1168, 1169, 1170, 1172, 1173, 1174,
636
     1175, 1176, 1178, 1179, 1180, 1181, 1182, 1182, 1182, 1182,
637
     1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1192,
638
     1193, 1193, 1194, 1194, 1195, 1196, 1197, 1198, 1199, 1201,
639
     1202, 1203, 1204, 1205, 1206, 1208, 1210, 1211, 1212, 1213,
640
641
     1215, 1217, 1218, 1219, 1221, 1223, 1223
642
    } ;
643
644
static yyconst flex_int32_t yy_ec[256] =
645
    {   0,
646
        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
647
2478
        4,    4,    5,    1,    1,    1,    1,    1,    1,    1,
648
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
649
        1,    2,    1,    6,    7,    8,    9,    1,   10,   11,
650
       12,   13,   14,   15,   16,   17,   18,   19,   19,   19,
651
       19,   19,   19,   19,   20,   21,   22,   23,    1,   24,
652
2478
       25,   26,   27,    1,   28,   29,   30,   31,   32,   33,
653
       34,   35,   36,   37,   38,   39,   40,   41,   42,   43,
654
2478
       44,   45,   46,   47,   48,   49,   50,   51,   52,   44,
655
       53,   54,   55,   56,   57,    1,   58,   59,   60,   61,
656
657
       62,   63,   64,   65,   66,   67,   68,   69,   70,   71,
658
       72,   73,   44,   74,   75,   76,   77,   78,   79,   80,
659
       81,   44,   82,   83,   84,    1,    1,    1,    1,    1,
660
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
661
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
662
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
663
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
664
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
665
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
666
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
667
1720
668
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
669
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
670
860
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
671
860
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
672
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
673
860
        1,    1,    1,    1,    1
674
    } ;
675
860
676
static yyconst flex_int32_t yy_meta[85] =
677
    {   0,
678
        1,    1,    2,    1,    3,    4,    1,    1,    1,    5,
679
        1,    6,    1,    7,    1,    8,    1,    5,    9,    9,
680
        9,    9,   10,    1,    1,    1,    1,   11,   11,   11,
681
       11,   11,   11,   12,   12,   12,   12,   12,   12,   12,
682
860
       12,   12,   12,   12,   12,   12,   12,   12,   12,   12,
683
       12,   12,   13,   14,   15,    1,   16,   11,   11,   11,
684
860
       11,   11,   11,   12,   12,   12,   12,   12,   12,   12,
685
       12,   12,   12,   12,   12,   12,   12,   12,   12,   12,
686
       12,    5,    1,   17
687
    } ;
688
689
static yyconst flex_int16_t yy_base[1201] =
690
    {   0,
691
860
        0,   84,  167,  250,  171,  184,  174,  179,  192,  233,
692
860
      196,  200,  334,    0, 3343, 3340,  203,  416,  206,  211,
693
18
      187,  216,  276,  417,  500,    0,  210,  223,  421,  427,
694
      436,  440,  583,  588,  669,    0,  277,  299,  584,  751,
695

1720
      579,  580,  576,  732,  279,  305,  310,  444, 3378, 3975,
696
1720
      228, 3975, 3371,    0,  322, 3975, 3358,  423,  827, 3328,
697

1720
        0, 3975,  755, 3975, 3337, 3975,  448, 3312, 3975, 3975,
698
     3323, 3291,  222,  408,  444,  764, 3975, 3311,  230, 3289,
699
     3975, 3975, 3975, 3306,    0, 3306,  164, 3304, 3975, 3236,
700
     3217, 3975, 3975, 3266,  239,  119, 3215, 3212, 3180,    0,
701
702
     3248, 3975, 3243, 3975,  476, 3227, 3222, 3975, 3168,    0,
703
     3975, 3975, 3975, 3203, 3975,  464, 3975, 3975, 3975, 3186,
704
     3975,  742, 3975, 3161,  751,  180, 3975, 3975, 3171,    0,
705
     3149,  757, 3975,    0, 3975, 3149, 3975,  200, 3138,    0,
706
      429,  241, 3097, 3092, 3975, 3975,  306, 3975,  323, 3975,
707
860
     3975, 3126, 3108, 3072, 3069,    0, 3975, 3115, 3975,    0,
708
70972
     3975,  446, 3975, 3114, 3031, 3098,  435,  371, 3045, 3026,
709
860
     3975, 3076, 3975, 3074, 3070,  439,  440, 3975,  578,  751,
710
      586,  562,  735,  752,    0,  572,  577,  588,  786,  749,
711
      396,  809,  727,  582,  747,  753,  764,  769,  580, 3975,
712
713
860
     3975, 3067,  588, 3975, 3975, 3053, 3002, 2996, 3975, 3975,
714
     3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975,    0,
715
     3975, 3046, 3975, 3975, 3975, 3018, 2986,  837, 3975, 2998,
716
        0,  847, 3975, 2997,  817,  777,    0,    0,  891,  903,
717
      912,  924,    0,  774,    0,  451, 3975,    0,  858, 3975,
718
     2996, 2914,  472, 3975, 2974, 2953, 3975,  791,  236,  822,
719
      899, 3975,  275,    0, 2873, 2872, 3975, 2871,  949, 3975,
720
     2949, 2850, 2918, 2906, 3975,    0, 3975,  796, 3975,    0,
721
        0, 2925,    0,    0, 2597, 3975, 3975, 3975, 3975,  795,
722
      794, 3975, 3975,  484,    0, 2597, 3975,  877, 2596, 2594,
723
724
     2594, 3975,    0, 3975,  918, 3975, 1005, 3975, 3975, 3975,
725
     3975,    0, 3975,  611, 3975,    0, 3975,    0,  853,  851,
726
     3975, 3975,  490, 3975,  608, 3975, 3975, 3975, 3975,    0,
727
     3975, 3975,  596, 2510, 3975,    0, 3975, 3975, 2588, 3975,
728
     2581, 3975,  894,  906,    0,  911,  717,  727,  923,  728,
729
     2571,  882,  930,  889,  902,  916,  917,  940,  928,  923,
730
      940,  933,    0,  932, 3975,  935,  939,  951,  956, 1059,
731
      964,  965, 1052,  955,  957, 1099, 2578, 3975, 1078, 3975,
732
     3975, 3975,    0, 3975, 3975, 3975,  987,    0,    0, 1087,
733
     3975, 2576, 1132,  985, 1046, 1058,    0, 1058,    0, 1009,
734
735
     3975, 1016, 3975, 1057, 3975, 1099, 3975, 1068,  731, 1088,
736
     1095, 1178, 1244, 1280,  988,    0, 3975, 3975, 2492, 1162,
737
     3975, 3975, 1081,    0, 1086,    0,    0, 1098, 1105, 1100,
738
     3975, 1167, 1245, 1246, 1247, 1250, 2539, 1248, 1249, 1258,
739
     1244, 1251, 1259, 1321, 1233, 1224,    0, 1072, 1228, 1243,
740
     1261, 1287, 1298, 1289, 1298, 1287,    0, 1299, 1228, 1308,
741
        0, 1280, 1298, 1307, 1316, 1314, 1316, 2532, 1322, 1337,
742
     1338, 1340, 1342, 1342, 1348, 1353, 1356, 1347, 1357, 1362,
743
1792
     1366, 1358, 1353, 1356, 1377, 1366, 1370, 1371, 1367, 1383,
744
1792
     1384, 1379, 1391, 1392, 1381, 1388, 1397, 1275, 1455, 3975,
745
3584
746
6084
     1439, 1463, 1444, 1415, 1412, 1415,    0, 1409,    0, 1429,
747
7604
     1492, 1558, 1594, 1524, 2449, 1564, 1639, 3975, 3975, 1537,
748
     1556, 1560, 1407, 2427, 1558, 1563, 1559, 1564, 1572, 1584,
749
5208
     1574, 1562, 1615, 1619, 1609, 1625, 1626, 1643, 1614, 1651,
750
     1662, 1658, 1664, 1665, 1616, 1616, 1637, 3975, 3975, 1638,
751
     1631, 2352, 1634, 1641, 1655, 1650, 1677, 1679, 1671, 1689,
752
        0,    0, 1690, 1677, 1681, 1697,    0, 2348, 1684, 1694,
753
14
     2274, 1686, 1685, 1695,    0, 1692, 1711, 1704, 1703, 1701,
754
66
     1713, 1703, 1704, 1712,    0, 1717, 1731, 1731, 1719, 1723,
755
28
     1722, 1741, 1726, 1742, 1734, 1747, 1741, 2241, 3975, 1464,
756

292
757
     1485, 1729, 1743, 1740,    0, 1721, 1591, 2173, 1585, 2139,
758
160
     1771, 1807, 1417,  962, 1426, 1755, 2049, 1745, 1769, 3975,
759
     1774, 1782, 1789, 1775, 1796, 1791, 1810, 1800, 1820, 1822,
760
     1821, 1823, 1832, 1831, 1838, 1840, 1853, 1856, 1854, 1855,
761
     1863, 1865, 1861, 1846, 1862,    0, 1853, 1864,    0, 1857,
762
        0, 2008, 1866, 1862, 1869,    0, 1874, 1893, 1870,    0,
763
     1888, 1875, 1886, 1882, 1880, 1878, 1897, 1876, 1882, 1889,
764
     1889,    0, 1904, 1895, 1899, 1919,    0, 1907, 1909, 1908,
765
     1923, 1791, 1924, 1925, 1919, 1747, 1917, 1918, 1918, 1938,
766
     1924, 1726, 1599, 1927, 1937, 1970, 3975, 1702, 1652, 1923,
767
396
768
84
     1755, 1941, 1625, 1618, 3975, 3975, 1961, 1977, 1966, 1969,
769
     1956, 1979, 1983, 1986, 1989, 1984, 1992, 1987, 1994, 1990,
770
168
     1988, 1995, 2007, 2004, 2016, 2022, 1996, 2028, 2018, 2026,
771
        0,    0, 1620, 1990, 2009,    0, 2035, 2020, 2035, 2029,
772
     2024, 2025, 2029, 1589, 2049, 2041, 2052, 2048, 2053, 2054,
773
     2044, 2057,    0, 2064,    0, 2048,    0, 1576,    0, 2064,
774
     2070, 2056,    0, 2096, 2062,    0, 2067, 2108,    0, 1531,
775
     2072, 2078, 1438, 1853, 3975, 2105, 3975, 2068, 3975, 1463,
776
     3975, 1407, 1402, 1348, 1345, 1314, 1307, 1269, 1260, 1256,
777
     1210, 1158, 2106, 2111, 2097, 2118, 2122, 2129, 2125, 2140,
778
779
     2131, 2136, 2141, 2143, 2156, 2131, 2138, 2147, 2101, 2151,
780
     2138, 2153,    0, 2141,    0, 2144, 2165, 2153, 2159, 2158,
781
     2165,    0, 2165,    0, 2167, 2169,    0, 2178,    0,    0,
782
        0, 2183, 2167, 2179, 2210, 2178, 2189, 2188, 2189, 2202,
783
     2186, 2194, 2218, 2196, 2202, 1119, 1114, 2206, 2118, 3975,
784
     1106, 1100, 1081, 1068, 1065, 1061, 1057,  972,  968,  965,
785
      914,  925,  893,  881,  874,  869,  865,  861,  854,  843,
786
      807,  802,  776, 2235, 2212, 2226, 2221, 2227, 2239, 2238,
787
     2228,    0, 2228, 2239, 2242, 2252,    0, 2238, 2244, 2249,
788
     2244, 2258, 2263, 2269, 2255, 3975, 2263, 2265, 2265, 2281,
789
790
     2265, 2262,    0, 2285, 2288, 2274, 3975, 2277, 2280, 2295,
791
     2279, 2280, 2283, 2303, 2283, 2330, 3975, 2335, 3975, 3975,
792
     3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975,  735,
793
8
      612,  608,  598,  441,  374,  261,  245,  202,  152,  149,
794
8
      137,  165, 2296, 2303, 2304, 2320, 2326, 2316, 2324, 2329,
795
2478
     2324, 2316, 2319, 2335, 2324, 2327,    0, 2332, 2328, 2327,
796
8
     2332, 2345, 2348, 2352, 2344, 3975, 2338,    0, 2338, 2343,
797

4956
     2357, 2362, 2357, 3975, 2371, 2356, 2359, 2358, 2380, 3975,
798
     3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975,
799
6978
     3975,  128, 2384, 2382, 2373, 2387, 2376, 2378, 2378,    0,
800
18534
801
9456
     2395, 2396,    0, 2385, 2384, 2405, 2403, 2401, 2405, 2413,
802
30090
     3975, 2401, 3975, 3975, 3975, 2409, 2416, 2404, 3975, 3975,
803

18912
     2400, 2422, 2422, 2414, 2417, 2417, 3975, 2421, 2421, 2418,
804
     2424, 2441, 2442, 2443,    0,    0, 2453,    0, 2436,    0,
805
     2451, 3975, 3975, 2445, 3975, 3975, 2446, 2457, 2445, 2461,
806
     2464, 2462, 2468, 2473, 2466, 2460,    0, 2462, 2459, 2461,
807
     2483,    0, 2463, 3975, 3975, 3975, 2484, 2488, 2476, 2482,
808
     3975, 2495, 2485, 2497, 2495, 2501, 2506, 2493,    0, 3975,
809
     2496, 3975, 2508, 2498, 2506, 2503, 2506, 2505,    0, 2520,
810
     3975, 3975, 2522, 2514,    0,    0, 2529, 2514, 2515,    0,
811
812
        0, 2533, 2539,    0,    0, 3975, 2601, 2618, 2635, 2652,
813
     2669, 2686, 2703, 2720, 2737, 2754, 2771, 2788, 2805, 2822,
814
     2839, 2856, 2873, 2890, 2907, 2917, 2933, 2942, 2958, 2975,
815
     2986, 3002, 3019, 3036, 3053, 3063, 3079, 3096, 3113, 3127,
816
     3137, 3153, 3170, 3187, 3204, 3215, 2009, 3227, 3244, 3254,
817
     3270, 3287, 3294, 3300, 3316, 3326, 3342, 3359, 3376, 2564,
818
     3386, 3403, 3420, 3437, 3454, 3471, 3488, 3505, 3522, 3532,
819
     3548, 3562, 3572, 3588, 3605, 3622, 3639, 3650, 3662, 3679,
820
     3696, 3713, 3730, 3740, 3749, 3765, 3782, 3799, 2571, 3809,
821
     3826, 3843, 3860, 3877, 3885, 3890, 3906, 3923, 3940, 3957
822
823
    } ;
824
825
static yyconst flex_int16_t yy_def[1201] =
826
    {   0,
827
     1106, 1106, 1107, 1107, 1108, 1109, 1110, 1110, 1111, 1111,
828
     1112, 1112, 1106,   13, 1113, 1113, 1114, 1114, 1115, 1115,
829
     1116, 1116, 1117, 1117, 1106,   25, 1118, 1118, 1119, 1119,
830
     1120, 1120, 1121, 1121, 1106,   35, 1122, 1122, 1123, 1123,
831
     1113, 1113, 1113, 1113, 1124, 1124, 1125, 1125, 1106, 1106,
832
     1106, 1106, 1106, 1126, 1106, 1106, 1106, 1106, 1127, 1106,
833
     1128, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
834
     1106, 1106, 1129, 1130, 1131, 1106, 1106, 1106, 1106, 1106,
835
     1106, 1106, 1106, 1106, 1132, 1133, 1132, 1134, 1106, 1106,
836
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1135,
837
838
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1136,
839
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
840
     1106, 1130, 1106, 1106, 1130, 1137, 1106, 1106, 1106, 1138,
841
     1106, 1130, 1106, 1139, 1106, 1139, 1106, 1140, 1106, 1141,
842
     1141, 1141, 1106, 1106, 1106, 1106, 1142, 1106, 1142, 1106,
843
     1106, 1106, 1106, 1106, 1106, 1143, 1106, 1143, 1106, 1144,
844
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
845
     1106, 1106, 1106, 1106, 1145, 1106, 1106, 1106, 1146, 1146,
846
     1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1147,
847
     1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1106,
848
849
     1106, 1148, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
850
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1149,
851
     1106, 1149, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
852
     1150, 1106, 1106, 1106, 1106, 1106, 1151, 1152, 1106, 1106,
853
     1106, 1106, 1153, 1151, 1154, 1155, 1106, 1156, 1106, 1106,
854
     1106, 1106, 1157, 1106, 1106, 1106, 1106, 1106, 1158, 1158,
855
     1159, 1106, 1106, 1160, 1106, 1106, 1106, 1161, 1106, 1106,
856
     1106, 1106, 1106, 1106, 1106, 1162, 1106, 1106, 1106, 1163,
857
     1164, 1164, 1165, 1166, 1167, 1106, 1106, 1106, 1106, 1106,
858
     1106, 1106, 1106, 1168, 1169, 1106, 1106, 1106, 1106, 1106,
859
860
     1106, 1106, 1170, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
861
     1106, 1171, 1106, 1172, 1106, 1172, 1106, 1173, 1173, 1173,
862
     1106, 1106, 1174, 1106, 1174, 1106, 1106, 1106, 1106, 1175,
863
     1106, 1106, 1106, 1106, 1106, 1176, 1106, 1106, 1106, 1106,
864
     1177, 1106, 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178,
865
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
866
     1178, 1178, 1178, 1178, 1106, 1178, 1178, 1178, 1178, 1178,
867
     1178, 1178, 1178, 1178, 1178, 1178, 1179, 1106, 1106, 1106,
868
     1106, 1106, 1180, 1106, 1106, 1106, 1106, 1181, 1182, 1183,
869
     1106, 1106, 1106, 1106, 1106, 1106, 1184, 1181, 1185, 1186,
870
871
     1106, 1186, 1106, 1187, 1106, 1187, 1106, 1106, 1188, 1188,
872
     1188, 1106, 1188, 1188, 1106, 1189, 1106, 1106, 1190, 1106,
873
     1106, 1106, 1106, 1191, 1106, 1192, 1193, 1106, 1106, 1194,
874
     1106, 1194, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
875
     1195, 1195, 1195, 1195, 1196, 1196, 1197, 1106, 1106, 1178,
876
6
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
877
18
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
878
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
879
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
880
6
     1178, 1178, 1178, 1178, 1178, 1106, 1106, 1183, 1183, 1106,
881
4
882
     1183, 1183, 1106, 1106, 1106, 1106, 1184, 1198, 1185, 1106,
883
     1106, 1188,  414,  412,  412, 1188,  414, 1106, 1106, 1106,
884
     1106, 1106, 1106, 1106, 1195, 1195, 1195, 1195, 1195, 1195,
885
     1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
886
     1195, 1195, 1195, 1195, 1195, 1196, 1196, 1106, 1106, 1178,
887
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
888
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
889
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
890
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
891
     1178, 1178, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1183,
892
893
     1183, 1106, 1106, 1106, 1198, 1198, 1198, 1106,  511,  511,
894
     1188,  414, 1188, 1188, 1188, 1106, 1106, 1106, 1106, 1106,
895
     1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
896
     1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
897
     1195, 1195, 1195, 1196, 1196, 1178, 1178, 1178, 1178, 1178,
898
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
899
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
900
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
901
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106, 1106, 1106,
902
     1106, 1106, 1199, 1106, 1106, 1198, 1106, 1198, 1106, 1188,
903
904
     1188, 1188, 1106, 1106, 1106, 1106, 1195, 1195, 1195, 1195,
905
     1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
906
     1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
907
     1196, 1196, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
908
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
909
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
910
294
     1178, 1178, 1178, 1106, 1178, 1178, 1178, 1106, 1178, 1106,
911
196
     1106, 1106, 1106, 1199, 1106, 1199, 1106, 1106, 1106, 1106,
912
98
     1106, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
913
196
     1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
914
1362
915
1370
     1195, 1195, 1195, 1195, 1195, 1178, 1178, 1178, 1178, 1178,
916
3804
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
917
1092
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
918
2160
     1178, 1106, 1106, 1106, 1106, 1106, 1106, 1178, 1178, 1106,
919
20
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1200, 1106,
920
528
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
921
504
     1106, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195,
922

1512
     1195, 1195, 1195, 1195, 1178, 1178, 1178, 1178, 1178, 1178,
923
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
924
276
     1178, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
925
276
926
     1106, 1106, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1106,
927
276
     1106, 1106, 1106, 1106, 1106, 1200, 1106, 1200, 1106, 1106,
928
276
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
929
276
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
930
     1106, 1195, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
931
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106,
932
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1178, 1106, 1106,
933
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
934
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
935
12
     1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
936
36
937
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106, 1106,
938
12
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
939
12
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1178, 1178, 1178,
940

24
     1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
941
     1178, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
942
     1106, 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
943
     1178, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
944
     1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106,
945
     1106, 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
946
     1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
947
948
     1178, 1178, 1178, 1178, 1178,    0, 1106, 1106, 1106, 1106,
949
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
950
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
951
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
952
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
953
576
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
954
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
955
192
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
956
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
957
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106
958
192
959
    } ;
960
961
static yyconst flex_int16_t yy_nxt[4060] =
962
    {   0,
963
       50,   51,   52,   50,   53,   50,   50,   50,   50,   50,
964
       50,   50,   50,   50,   50,   50,   50,   50,   50,   50,
965
1294
       50,   50,   50,   50,   50,   50,   50,   54,   54,   54,
966
1354
       54,   54,   54,   54,   54,   54,   54,   54,   54,   54,
967
64
       54,   54,   54,   54,   54,   54,   54,   54,   54,   54,
968
2588
       54,   54,   50,   50,   50,   50,   54,   54,   54,   54,
969
120
       54,   54,   54,   54,   54,   54,   54,   54,   54,   54,
970
       54,   54,   54,   54,   54,   54,   54,   54,   54,   54,
971
       54,   50,   50,   50,   50,   55,   56,   50,   57,   50,
972
       58,   50,   59,   50,   50,   50,   50,   50,   50,   50,
973
974
       50,   60,   50,   50,   50,   50,   50,   50,   50,   50,
975
       50,   61,   61,   61,   61,   61,   61,   61,   61,   61,
976
       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
977
       61,   61,   61,   61,   61,   61,   50,   50,   50,   50,
978
       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
979
       61,   61,   61,   61,   61,   61,   61,   61,   61,   61,
980
       61,   61,   61,   61,   61,   50,   50,   50,   63,   64,
981
      291,   65,   66,   83,   67,   84,   89,   68,   69,   70,
982
       70,   89, 1027,   70,   71,   86,   83,  992,   84,   50,
983
       72,  991,   87,   70,   93,  309,   94,  101,  102,  291,
984
985
      103,  101,  102,  990,  103,  113,  989,  114,  119,  315,
986
      120,  121,  148,  119,  149,  120,  121,  115,   50,   73,
987
       74,  116,  116,  116,  116,  148,   90,  149,   91,  228,
988
      229,   90,  230,   91,  309,   93,   95,   94,  276,  124,
989
      125,   99,  126,   96,   97,  283,   98,  284,   75,   70,
990
       70,   76,   77,  316,   78,   66,  988,   67,   79,  122,
991
       68,   69,   70,   70,  122,   95,   70,   71,  124,  125,
992
      290,  126,   96,   80,  260,  261,   70,   95,  128,  201,
993
      129,  221,  202,  222,   96,   97,  117,   98,  410,  411,
994
      223,  130,  320,  415,  415,  203,  203,  203,  203,  987,
995
996
      290,  201,   73,   74,  202,   81,   95,  221,  324,  222,
997
      325,  277,  225,   96,  226,  986,  223,  203,  203,  203,
998
      203,  320,  227,  232,  233,  324,  234,  325,  131,  132,
999
      133,   75,   70,   70,  104,  105,  106,  104,  107,  104,
1000
      104,  104,  104,  104,  104,  104,  108,  104,  108,  104,
1001
      104,  104,  104,  104,  104,  104,  104,  104,  104,  109,
1002
      104,  110,  110,  110,  110,  110,  110,  110,  110,  110,
1003
      110,  110,  110,  110,  110,  110,  110,  110,  110,  110,
1004
      110,  110,  110,  110,  110,  110,  104,  104,  104,  104,
1005
      110,  110,  110,  110,  110,  110,  110,  110,  110,  110,
1006
1007
      110,  110,  110,  110,  110,  110,  110,  110,  110,  110,
1008
      110,  110,  110,  110,  110,  104,  104,  104,  113,  128,
1009
      114,  129,  291,  151,  235,  152,  263,  263,  985,  151,
1010
      115,  152,  130,  153,  116,  116,  116,  116,  157,  153,
1011
      158,  159,  157,  366,  158,  159,  225,  333,  226,  254,
1012
      254,  291,  255,  401,  334,  402,  227,  265,  264,  266,
1013
      319,  236,  267,  267,  267,  267,  290,  343,  344,  131,
1014
      132,  133,  366,  154,  405,  155,  406,  298,  299,  154,
1015
      300,  155,  305,  305,  305,  305,  431,  264,  432,  160,
1016
      319,  236,  324,  160,  325,  984,  290,  343,  344,  117,
1017
1018
      134,  134,  135,  134,  136,  137,  134,  134,  134,  138,
1019
      134,  134,  134,  134,  134,  134,  134,  139,  134,  134,
1020
      134,  134,  134,  134,  134,  134,  134,  140,  140,  140,
1021
      140,  140,  140,  140,  140,  140,  140,  140,  140,  140,
1022
      140,  140,  140,  140,  141,  140,  140,  140,  140,  140,
1023
      140,  142,  143,  134,  144,  134,  140,  140,  140,  140,
1024
      140,  140,  140,  140,  140,  140,  140,  140,  140,  140,
1025
      140,  140,  140,  141,  140,  140,  140,  140,  140,  140,
1026
      142,  145,  134,  146,  162,  163,  205,  164,  206,  162,
1027
      163,  165,  164,  353,  211,  211,  165,  333,  216,  351,
1028
1029
      166,  212,  212,  358,  334,  166,  379,  379,  379,  379,
1030
      324,  217,  325,  352,  213,  213,  346,  359,  347,  360,
1031
      315,  218,  348,  353,  214,  214,  219,  167,  371,  215,
1032
      215,  376,  167,  358,  168,  169,  207,  170,  208,  168,
1033
      169,  217,  170,  352,  213,  213,  346,  359,  347,  360,
1034
      218,  348,  983,  214,  214,  219,  167,  371,  215,  215,
1035
      376,  167,  982,  168,  316,  209,  981,  210,  168,  171,
1036
      172,  173,  171,  174,  175,  171,  171,  171,  171,  171,
1037
      171,  171,  171,  171,  171,  171,  171,  171,  176,  177,
1038
      171,  171,  171,  178,  171,  171,  179,  180,  181,  182,
1039
1040
      183,  184,  185,  186,  187,  185,  185,  188,  189,  190,
1041
      191,  192,  185,  193,  194,  195,  196,  197,  198,  185,
1042
      199,  171,  171,  171,  171,  171,  179,  180,  181,  182,
1043
      183,  184,  185,  186,  187,  185,  185,  188,  189,  190,
1044
      191,  192,  193,  194,  195,  196,  197,  198,  185,  199,
1045
      171,  171,  171,  205,  216,  206,  249,  250,  370,  251,
1046
      263,  263,  452,  252,  354,  269,  270,  217,  271,  263,
1047
      263,  453,  272,  456,  372,  263,  263,  218,  349,  356,
1048
      364,  273,  219,  410,  411,  355,  350,  274,  370,  980,
1049
      365,  452,  264,  373,  354,  374,  375,  217,  941,  357,
1050
1051
      453,  264,  456,  207,  372,  208,  218,  264,  349,  356,
1052
      364,  219,  387,  361,  355,  398,  350,  362,  235,  275,
1053
      365,  264,  408,  373,  940,  374,  375,  425,  357,  939,
1054
      264,  428,  209,  429,  210,  238,  264,  253,  228,  229,
1055
      367,  230,  387,  361,  412,  398,  253,  362,  232,  233,
1056
      368,  234,  408,  369,  239,  236,  240,  425,  240,  249,
1057
      250,  428,  251,  429,  240,  938,  252,  240,  241,  242,
1058
      367,  240,  243,  244,  410,  411,  937,  245,  298,  299,
1059
      368,  300,  369,  936,  239,  236,  240,  935,  240,  445,
1060
      446,  934,  390,  391,  240,  392,  933,  240,  241,  242,
1061
1062
      240,  243,  244,  932,  390,  391,  245,  392,  246,  393,
1063
      393,  393,  393,  390,  391,  931,  392,  413,  413,  445,
1064
      446,  393,  393,  393,  393,  390,  391,  458,  392,  448,
1065
      393,  393,  393,  393,  461,  394,  305,  305,  305,  305,
1066
      253,  449,  393,  393,  393,  393,  450,  930,  462,  414,
1067
      269,  270,  454,  271,  395,  464,  458,  272,  459,  448,
1068
      451,  463,  460,  461,  394,  396,  273,  465,  929,  455,
1069
      466,  449,  274,  468,  467,  469,  450,  462,  414,  470,
1070
      471,  472,  454,  473,  395,  464,  474,  476,  459,  451,
1071
      463,  480,  460,  482,  481,  396,  475,  465,  455,  485,
1072
1073
      466,  486,  468,  467,  275,  469,  262,  262,  470,  471,
1074
      472,  401,  473,  402,  410,  411,  474,  476,  401,  928,
1075
      402,  480,  927,  482,  481,  475,  926,  497,  485,  504,
1076
      486,  253,  433,  434,  435,  436,  437,  437,  438,  437,
1077
      437,  437,  437,  439,  437,  437,  437,  440,  437,  437,
1078
      441,  437,  442,  437,  437,  443,  437,  497,  504,  405,
1079
      444,  406,  433,  434,  435,  436,  437,  437,  438,  437,
1080
      437,  437,  437,  439,  437,  437,  437,  440,  437,  441,
1081
      437,  442,  437,  437,  443,  437,  477,  483,  499,  500,
1082
      478,  501,  505,  506,  484,  479,  379,  379,  379,  379,
1083
1084
      508,  405,  431,  406,  432,  502,  502,  502,  502,  510,
1085
      511,  925,  520,  512,  512,  924,  477,  483,  548,  923,
1086
      478,  505,  922,  506,  484,  479,  487,  521,  488,  522,
1087
      508,  489,  490,  503,  391,  921,  392,  491,  492,  510,
1088
      410,  411,  520,  493,  494,  513,  523,  548,  495,  409,
1089
      393,  393,  393,  393,  920,  496,  487,  521,  488,  522,
1090
      919,  489,  490,  519,  519,  519,  519,  491,  492,  431,
1091
      914,  432,  493,  494,  513,  913,  523,  495,  409,  409,
1092
      861,  409,  409,  409,  409,  409,  409,  409,  409,  409,
1093
      409,  409,  409,  409,  409,  409,  409,  409,  409,  409,
1094
1095
      409,  409,  409,  409,  409,  514,  514,  514,  514,  514,
1096
      514,  514,  514,  514,  514,  514,  514,  514,  514,  514,
1097
      514,  514,  514,  514,  514,  514,  514,  514,  514,  514,
1098
      410,  411,  860,  515,  409,  514,  514,  514,  514,  514,
1099
      514,  514,  514,  514,  514,  514,  514,  514,  514,  514,
1100
      514,  514,  514,  514,  514,  514,  514,  514,  514,  409,
1101
      409,  409,  516,  516,  546,  547,  524,  524,  524,  524,
1102
      524,  524,  524,  524,  549,  558,  550,  599,  859,  600,
1103
      524,  524,  858,  525,  526,  528,  533,  527,  551,  535,
1104
      530,  857,  529,  534,  546,  547,  410,  411,  517,  517,
1105
1106
      517,  517,  531,  549,  558,  532,  550,  517,  517,  517,
1107
      517,  517,  517,  525,  526,  528,  533,  527,  551,  535,
1108
      530,  529,  552,  534,  560,  553,  554,  555,  556,  856,
1109
      557,  531,  410,  411,  532,  559,  855,  517,  517,  517,
1110
      517,  517,  517, 1106,  561,  562,  563,  565,  536,  537,
1111
      538,  539,  552,  560,  540,  553,  554,  555,  556,  541,
1112
      557,  564,  567,  542,  568,  559,  543,  854,  544,  569,
1113
      853,  545,  570,  561,  571,  562,  563,  565,  536,  537,
1114
      538,  539,  572,  573,  540,  574,  575,  576,  577,  541,
1115
      564,  578,  567,  542,  568,  543,  581,  544,  582,  569,
1116
1117
      545,  579,  570,  583,  571,  584,  585,  580,  586,  587,
1118
      606,  588,  572,  573,  589,  574,  575,  576,  577,  590,
1119
      591,  578,  592,  593,  852,  594,  581,  582,  598,  851,
1120
      595,  579,  583,  596,  597,  584,  585,  580,  586,  587,
1121
      588,  500,  602,  600,  589,  503,  391,  603,  392,  590,
1122
      591,  619,  592,  593,  594,  604,  499,  500,  598,  501,
1123
      595,  608,  596,  597,  601,  500,  599,  501,  600,  410,
1124
      411,  259,  602,  502,  502,  502,  502,  603,  410,  411,
1125
      619,  502,  502,  502,  502,  604,  601,  500,  850,  501,
1126
      607,  608,  409,  409,  848,  409,  409,  409,  409,  409,
1127
1128
      409,  409,  409,  409,  409,  409,  409,  409,  409,  409,
1129
      409,  409,  409,  409,  409,  409,  409,  409,  409,  609,
1130
      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
1131
      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
1132
      609,  609,  609,  609,  410,  411,  613,  610,  409,  609,
1133
      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
1134
      609,  609,  609,  609,  609,  609,  609,  609,  609,  609,
1135
      609,  609,  609,  409,  409,  409,  611,  611,  616,  409,
1136
      524,  524,  614,  614,  524,  524,  524,  845,  617,  618,
1137
      623,  828,  696,  697,  524,  698,  524,  625,  621,  626,
1138
1139
      622,  775,  629,  776,  817,  624,  524,  700,  616,  628,
1140
      410,  411,  612,  612,  612,  612,  410,  411,  617,  618,
1141
      623,  612,  612,  612,  612,  612,  612,  625,  621,  626,
1142
      622,  524,  629,  627,  624,  806,  524,  524,  524,  628,
1143
      409,  524,  630,  781,  632,  644,  643,  524,  524,  636,
1144
      780,  612,  612,  612,  612,  612,  612,  615,  615,  615,
1145
      615,  631,  627,  633,  634,  524,  615,  615,  615,  615,
1146
      615,  615,  630,  524,  632,  644,  643,  779,  646,  636,
1147
      524,  645,  647,  635,  524,  649,  524,  524,  650,  651,
1148
      652,  631,  653,  633,  634,  637,  615,  615,  615,  615,
1149
1150
      615,  615,  639,  638,  697,  640,  641,  642,  646,  654,
1151
      645,  647,  656,  635,  649,  655,  658,  650,  657,  651,
1152
      652,  659,  606,  660,  637,  661,  662,  692,  664,  665,
1153
      669,  639,  667,  638,  640,  668,  641,  642,  670,  654,
1154
      671,  672,  656,  673,  675,  655,  658,  657,  674,  676,
1155
      677,  659,  660,  678,  661,  679,  662,  664,  680,  665,
1156
      669,  667,  681,  683,  668,  682,  684,  670,  685,  687,
1157
      671,  672,  686,  673,  675,  688,  690,  674,  676,  677,
1158
      693,  689,  691,  678,  694,  679,  695,  703,  680,  701,
1159
      701,  705,  681,  683,  682,  684,  524,  524,  685,  687,
1160
1161
      706,  686,  607,  768,  524,  688,  690,  410,  411,  693,
1162
      689,  524,  691,  524,  694,  695,  708,  703,  524,  710,
1163
      705,  707,  524,  410,  411,  702,  702,  702,  702,  709,
1164
      706,  711,  524,  712,  702,  702,  702,  702,  702,  702,
1165
      714,  713,  524,  524,  524,  524,  708,  764,  710,  715,
1166
      707,  716,  717,  524,  524,  775,  718,  776,  721,  709,
1167
      524,  711,  524,  712,  702,  702,  702,  702,  702,  702,
1168
      714,  713,  719,  723,  720,  524,  524,  524,  524,  715,
1169
      724,  716,  717,  524,  722,  524,  718,  524,  721,  726,
1170
      728,  752,  731,  732,  734,  727,  730,  748,  733,  736,
1171
1172
      741,  738,  719,  723,  720,  725,  735,  729,  743,  740,
1173
      724,  739,  742,  722,  744,  745,  746,  747,  749,  726,
1174
      728,  731,  750,  732,  734,  727,  730,  733,  751,  736,
1175
      741,  738,  753,  754,  725,  755,  735,  729,  740,  756,
1176
      739,  757,  742,  744,  758,  745,  746,  747,  749,  759,
1177
      761,  750,  760,  762,  763,  765,  766,  767,  751,  769,
1178
      770,  753,  754,  771,  755,  772,  773,  777,  778,  756,
1179
      757,  696,  697,  758,  698,  410,  411,  409,  524,  759,
1180
      761,  760,  762,  524,  763,  765,  766,  767,  524,  769,
1181
      770,  524,  771,  410,  411,  772,  773,  777,  778,  524,
1182
1183
      782,  524,  786,  784,  783,  524,  524,  785,  524,  524,
1184
      524,  524,  524,  787,  524,  791,  524,  524,  524,  363,
1185
      363,  807,  793,  737,  795,  802,  524,  788,  796,  524,
1186
      782,  786,  789,  784,  783,  790,  792,  785,  524,  797,
1187
      524,  794,  798,  787,  524,  791,  799,  800,  524,  804,
1188
      524,  807,  793,  808,  795,  802,  788,  803,  796,  805,
1189
      811,  789,  801,  809,  790,  792,  812,  813,  797,  814,
1190
      794,  815,  798,  810,  704,  816,  799,  800,  818,  804,
1191
      819,  820,  808,  821,  822,  823,  825,  803,  824,  805,
1192
      811,  826,  801,  809,  827,  829,  812,  813,  814,  830,
1193
1194
      815,  831,  838,  810,  816,  839,  846,  775,  818,  776,
1195
      819,  820,  849,  821,  822,  823,  825,  824,  847,  524,
1196
      917,  826,  918,  827,  864,  829,  832,  833,  524,  830,
1197
      831,  834,  838,  524,  835,  839,  846,  836,  840,  841,
1198
      524,  849,  837,  842,  524,  878,  843,  524,  847,  844,
1199
      863,  524,  862,  524,  864,  865,  832,  833,  524,  868,
1200
      866,  834,  524,  524,  835,  524,  875,  836,  840,  841,
1201
      876,  837,  872,  842,  878,  867,  843,  870,  524,  844,
1202
      863,  862,  871,  880,  869,  865,  882,  873,  877,  868,
1203
      866,  874,  879,  881,  409,  883,  875,  884,  699,  885,
1204
1205
      876,  886,  872,  887,  867,  888,  870,  889,  890,  891,
1206
      892,  871,  880,  869,  894,  882,  873,  895,  877,  896,
1207
      902,  874,  879,  881,  883,  901,  893,  884,  885,  903,
1208
      904,  886,  887,  905,  907,  888,  906,  889,  890,  891,
1209
      892,  897,  692,  911,  894,  898,  895,  912,  899,  896,
1210
      902,  915,  943,  908,  901,  893,  909,  524,  900,  903,
1211
      904,  944,  946,  905,  907,  906,  910,  945,  947,  948,
1212
      950,  897,  911,  949,  951,  898,  912,  952,  899,  953,
1213
      915,  942,  943,  908,  954,  955,  909,  900,  956,  666,
1214
      957,  944,  946,  958,  959,  910,  945,  960,  947,  948,
1215
1216
      950,  961,  949,  962,  951,  963,  964,  952,  965,  953,
1217
      942,  966,  967,  954,  968,  955,  969,  971,  956,  957,
1218
      970,  972,  973,  958,  959,  974,  975,  960,  976,  979,
1219
      961,  977,  917,  962,  918,  963,  964,  917,  965,  918,
1220
      966,  967,  993,  994,  968,  995,  969,  971,  978,  970,
1221
      996,  972,  973,  997,  974,  975,  998,  976,  979,  999,
1222
     1000,  977, 1001,  663, 1002, 1003, 1004,  648, 1005, 1006,
1223
     1007,  993, 1008,  994, 1009,  995, 1010,  978, 1011, 1012,
1224
      996, 1013, 1014,  997, 1015, 1016,  998, 1017, 1018,  999,
1225
     1000, 1019, 1001, 1002, 1003, 1020, 1004, 1005, 1021, 1006,
1226
1227
     1007, 1008, 1022, 1009, 1025, 1010, 1023, 1026, 1011, 1012,
1228
     1024, 1013, 1014, 1015, 1016, 1028, 1017, 1029, 1018, 1030,
1229
     1031, 1019, 1032, 1033, 1034, 1020, 1035, 1036, 1021, 1037,
1230
     1038, 1022, 1039, 1025, 1040, 1023, 1041, 1026, 1042, 1024,
1231
     1043, 1044, 1045, 1046, 1047, 1028, 1048, 1029, 1030, 1049,
1232
     1031, 1032, 1033, 1034, 1050, 1057, 1035, 1036, 1037, 1038,
1233
     1051, 1052, 1039, 1053, 1040, 1054, 1041, 1055, 1042, 1056,
1234
     1043, 1044, 1045, 1046, 1047, 1048, 1058, 1059, 1060, 1049,
1235
     1061,  620, 1062, 1063, 1050, 1057, 1064, 1065, 1066, 1051,
1236
     1052, 1067, 1053, 1068, 1054, 1069, 1055, 1070, 1056, 1071,
1237
1238
     1072, 1073, 1074, 1075,  409, 1076, 1058, 1059, 1060, 1077,
1239
     1061, 1062, 1078, 1063, 1079, 1080, 1064, 1065, 1066, 1081,
1240
     1067, 1082, 1083, 1068, 1084, 1069, 1085, 1070, 1086, 1071,
1241
     1072, 1073, 1074, 1075, 1076, 1087, 1088, 1089, 1077, 1090,
1242
     1091, 1092, 1078, 1079, 1093, 1080, 1094,  566, 1095, 1081,
1243
     1082, 1096, 1083, 1097, 1084, 1098, 1085, 1099, 1086, 1100,
1244
     1101,  524, 1102, 1103, 1104, 1087, 1088, 1089, 1090, 1091,
1245
     1105, 1092,  416, 1093,  416,  420, 1094, 1095,  391,  518,
1246
     1096,  518, 1097,  378,  457, 1098,  342, 1099, 1100,  339,
1247
     1101, 1102, 1103,  336, 1104,  301,  299,  301,  296,  286,
1248
1249
     1105,   62,   62,   62,   62,   62,   62,   62,   62,   62,
1250
       62,   62,   62,   62,   62,   62,   62,   62,   82,   82,
1251
       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,
1252
       82,   82,   82,   82,   82,   85,   85,   85,   85,   85,
1253
       85,   85,   85,   85,   85,   85,   85,   85,   85,   85,
1254
       85,   85,   88,   88,   88,   88,   88,   88,   88,   88,
1255
       88,   88,   88,   88,   88,   88,   88,   88,   88,   92,
1256
       92,   92,   92,   92,   92,   92,   92,   92,   92,   92,
1257
       92,   92,   92,   92,   92,   92,  100,  100,  100,  100,
1258
      100,  100,  100,  100,  100,  100,  100,  100,  100,  100,
1259
1260
      100,  100,  100,   50,   50,   50,   50,   50,   50,   50,
1261
       50,   50,   50,   50,   50,   50,   50,   50,   50,   50,
1262
      112,  112,  112,  112,  112,  112,  112,  112,  112,  112,
1263
      112,  112,  112,  112,  112,  112,  112,  118,  118,  118,
1264
      118,  118,  118,  118,  118,  118,  118,  118,  118,  118,
1265
      118,  118,  118,  118,  123,  123,  123,  123,  123,  123,
1266
      123,  123,  123,  123,  123,  123,  123,  123,  123,  123,
1267
      123,  127,  127,  127,  127,  127,  127,  127,  127,  127,
1268
      127,  127,  127,  127,  127,  127,  127,  127,  147,  147,
1269
      147,  147,  147,  147,  147,  147,  147,  147,  147,  147,
1270
1271
      147,  147,  147,  147,  147,  150,  150,  150,  150,  150,
1272
      150,  150,  150,  150,  150,  150,  150,  150,  150,  150,
1273
      150,  150,  156,  156,  156,  156,  156,  156,  156,  156,
1274
      156,  156,  156,  156,  156,  156,  156,  156,  156,  161,
1275
      161,  161,  161,  161,  161,  161,  161,  161,  161,  161,
1276
      161,  161,  161,  161,  161,  161,  200,  200,  200,  200,
1277
      200,  200,  200,  200,  200,  200,  200,  200,  200,  200,
1278
      200,  200,  200,  204,  204,  204,  204,  204,  204,  204,
1279
      204,  204,  204,  204,  204,  204,  204,  204,  204,  204,
1280
      220,  220,  220,  220,  220,  220,  220,  220,  220,  220,
1281
1282
      220,  220,  220,  220,  220,  220,  220,  224,  224,  224,
1283
      224,  224,  224,  224,  224,  224,  224,  224,  224,  224,
1284
      224,  224,  224,  224,  231,  231,  282,  231,  231,  423,
1285
      422,  421,  231,  237,  237,  237,  237,  237,  237,  237,
1286
      237,  237,  237,  237,  237,  237,  237,  237,  237,  248,
1287
      248,  270,  248,  248,  420,  418,  417,  248,  259,  407,
1288
      259,  259,  259,  259,  259,  259,  259,  259,  259,  259,
1289
      259,  259,  259,  259,  259,  262,  254,  262,  262,  262,
1290
      262,  262,  262,  262,  262,  262,  262,  262,  262,  262,
1291
      262,  262,  268,  268,  268,  403,  268,  268,  250,  233,
1292
1293
      229,  268,  280,  386,  280,  280,  280,  280,  280,  280,
1294
      280,  280,  280,  280,  280,  280,  280,  280,  280,  281,
1295
      385,  281,  281,  281,  281,  281,  281,  281,  281,  281,
1296
      281,  281,  281,  281,  281,  281,  285,  285,  285,  285,
1297
      285,  285,  285,  285,  285,  285,  285,  285,  384,  285,
1298
      382,  285,  285,  295,  381,  380,  295,  295,  295,  295,
1299
      295,  295,  295,  295,  295,  295,  295,  295,  295,  295,
1300
      303,  303,  378,  303,  303,  342,  340,  339,  303,  308,
1301
      338,  308,  308,  308,  308,  308,  308,  308,  308,  308,
1302
      308,  308,  308,  308,  308,  308,  311,  337,  311,  311,
1303
1304
      311,  311,  311,  311,  311,  311,  311,  311,  311,  311,
1305
      317,  311,  311,  312,  336,  312,  335,  331,  312,  312,
1306
      312,  312,  312,  329,  328,  327,  312,  314,  326,  314,
1307
      314,  314,  314,  314,  314,  314,  314,  314,  314,  314,
1308
      314,  314,  314,  314,  318,  318,  322,  318,  318,  321,
1309
      317,  313,  318,  323,  323,  323,  323,  323,  323,  323,
1310
      323,  323,  323,  323,  323,  323,  323,  323,  323,  323,
1311
      330,  307,  330,  310,  330,  330,  330,  330,  330,  330,
1312
      330,  330,  330,  307,  330,  330,  330,  332,  306,  332,
1313
      332,  332,  332,  332,  332,  332,  332,  332,  332,  332,
1314
1315
      332,  332,  332,  332,  341,  304,  341,  341,  341,  341,
1316
      341,  341,  341,  341,  341,  341,  341,  341,  341,  341,
1317
      341,  345,  345,  302,  299,  345,  345,  377,  301,  377,
1318
      377,  377,  377,  377,  377,  377,  377,  377,  377,  377,
1319
      377,  377,  377,  377,  383,  297,  383,  383,  383,  296,
1320
      383,  383,  383,  383,  383,  383,  383,  383,  383,  383,
1321
      383,  231,  231,  294,  231,  231,  293,  292,  289,  231,
1322
      388,  288,  388,  388,  388,  388,  388,  388,  388,  388,
1323
      388,  388,  388,  388,  388,  388,  388,  389,  287,  389,
1324
      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
1325
1326
      389,  389,  389,  389,  397,  397,  286,  282,  279,  397,
1327
      399,  399,  278,  270,  258,  399,  400,  400,  400,  400,
1328
      400,  400,  400,  400,  400,  400,  400,  400,  400,  400,
1329
      400,  400,  400,  248,  248,  257,  248,  248,  256,  250,
1330
      247,  248,  404,  404,  404,  404,  404,  404,  404,  404,
1331
      404,  404,  404,  404,  404,  404,  404,  404,  404,  409,
1332
      233,  409,  409,  409,  409,  409,  409,  409,  409,  409,
1333
      409,  409,  409,  229,  409,  409,  259, 1106,  259,  259,
1334
      259,  259,  259,  259,  259,  259,  259,  259,  259,  259,
1335
      259,  259,  259,  419,  419,  111,  419,  419,  111, 1106,
1336
1337
     1106,  419,  419,  424, 1106,  424,  424,  424,  424,  424,
1338
      424,  424,  424,  424,  424,  424,  424,  424,  424,  424,
1339
      280, 1106,  280,  280,  280,  280,  280,  280,  280,  280,
1340
      280,  280,  280,  280,  280,  280,  280,  281, 1106,  281,
1341
      281,  281,  281,  281,  281,  281,  281,  281,  281,  281,
1342
      281,  281,  281,  281,  426, 1106,  426,  426,  426,  426,
1343
      426,  426,  426,  426,  426,  426,  426,  426,  426,  426,
1344
      426,  427, 1106,  427,  427,  427,  427,  427,  427,  427,
1345
      427,  427,  427,  427,  427,  427,  427,  427,  285,  285,
1346
      285,  285,  285,  285,  285,  285,  285,  285,  285,  285,
1347
1348
     1106,  285, 1106,  285,  285,  430,  430,  430,  430,  430,
1349
      430,  430,  430,  430,  430,  430,  430,  430,  430,  430,
1350
      430,  430,  295, 1106, 1106,  295,  295,  295,  295,  295,
1351
      295,  295,  295,  295,  295,  295,  295,  295,  295,  303,
1352
      303, 1106,  303,  303, 1106, 1106, 1106,  303,  312, 1106,
1353
      312, 1106, 1106,  312,  312,  312,  312,  312, 1106, 1106,
1354
     1106,  312,  314, 1106,  314,  314,  314,  314,  314,  314,
1355
      314,  314,  314,  314,  314,  314,  314,  314,  314,  318,
1356
      318, 1106,  318,  318, 1106, 1106, 1106,  318,  323,  323,
1357
      323,  323,  323,  323,  323,  323,  323,  323,  323,  323,
1358
1359
      323,  323,  323,  323,  323,  330, 1106,  330, 1106,  330,
1360
      330,  330,  330,  330,  330,  330,  330,  330, 1106,  330,
1361
      330,  330,  447, 1106,  447,  447,  447,  447,  447,  447,
1362
      447,  447,  447,  447,  447,  447,  447,  447,  447,  341,
1363
     1106,  341,  341,  341,  341,  341,  341,  341,  341,  341,
1364
      341,  341,  341,  341,  341,  341,  345,  345, 1106, 1106,
1365
      345,  345,  377, 1106,  377,  377,  377,  377,  377,  377,
1366
      377,  377,  377,  377,  377,  377,  377,  377,  377,  383,
1367
     1106,  383,  383,  383, 1106,  383,  383,  383,  383,  383,
1368
      383,  383,  383,  383,  383,  383,  388, 1106,  388,  388,
1369
1370
      388,  388,  388,  388,  388,  388,  388,  388,  388,  388,
1371
      388,  388,  388,  389, 1106,  389,  389,  389,  389,  389,
1372
      389,  389,  389,  389,  389,  389,  389,  389,  389,  389,
1373
      498,  498,  498,  498,  498,  498,  498,  498,  498,  498,
1374
      498,  498,  498,  498,  498,  498,  498,  507,  507, 1106,
1375
      507,  507, 1106, 1106, 1106,  507,  509,  509, 1106,  509,
1376
      509, 1106, 1106, 1106,  509,  400,  400,  400,  400,  400,
1377
      400,  400,  400,  400,  400,  400,  400,  400,  400,  400,
1378
      400,  400,  404,  404,  404,  404,  404,  404,  404,  404,
1379
      404,  404,  404,  404,  404,  404,  404,  404,  404,  409,
1380
1381
     1106,  409,  409,  409,  409,  409,  409,  409,  409,  409,
1382
      409,  409,  409, 1106,  409,  409,  419,  419, 1106,  419,
1383
      419, 1106, 1106, 1106,  419,  419,  424, 1106,  424,  424,
1384
      424,  424,  424,  424,  424,  424,  424,  424,  424,  424,
1385
      424,  424,  424,  426, 1106,  426,  426,  426,  426,  426,
1386
      426,  426,  426,  426,  426,  426,  426,  426,  426,  426,
1387
      427, 1106,  427,  427,  427,  427,  427,  427,  427,  427,
1388
      427,  427,  427,  427,  427,  427,  427,  430,  430,  430,
1389
      430,  430,  430,  430,  430,  430,  430,  430,  430,  430,
1390
      430,  430,  430,  430,  437,  437,  437,  318,  318, 1106,
1391
1392
      318,  318, 1106, 1106, 1106,  318,  447, 1106,  447,  447,
1393
      447,  447,  447,  447,  447,  447,  447,  447,  447,  447,
1394
      447,  447,  447,  605, 1106,  605,  605,  605,  605,  605,
1395
      605,  605,  605,  605,  605,  605,  605,  605,  605,  605,
1396
      774,  774,  774,  774,  774,  774,  774,  774,  774,  774,
1397
      774,  774,  774,  774,  774,  774,  774,  916,  916,  916,
1398
      916,  916,  916,  916,  916,  916,  916,  916,  916,  916,
1399
      916,  916,  916,  916,   49, 1106, 1106, 1106, 1106, 1106,
1400
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1401
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1402
1403
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1404
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1405
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1406
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1407
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1408
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106
1409
    } ;
1410
1411
static yyconst flex_int16_t yy_chk[4060] =
1412
    {   0,
1413
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1414
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1415
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1416
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1417
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1418
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1419
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1420
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1421
        1,    1,    1,    1,    2,    2,    2,    2,    2,    2,
1422
        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
1423
1424
        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
1425
        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
1426
        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
1427
        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
1428
        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
1429
        2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
1430
        2,    2,    2,    2,    2,    2,    2,    2,    3,    3,
1431
       96,    3,    3,    5,    3,    5,    7,    3,    3,    3,
1432
        3,    8,  992,    3,    3,    6,    6,  942,    6,   21,
1433
        3,  941,    6,    3,    9,  126,    9,   11,   11,   96,
1434
1435
       11,   12,   12,  940,   12,   17,  939,   17,   19,  138,
1436
       19,   19,   27,   20,   27,   20,   20,   17,   22,    3,
1437
        3,   17,   17,   17,   17,   28,    7,   28,    7,   51,
1438
       51,    8,   51,    8,  126,   10,    9,   10,   79,   21,
1439
       21,   10,   21,    9,    9,   87,    9,   87,    3,    3,
1440
        3,    4,    4,  138,    4,    4,  938,    4,    4,   19,
1441
        4,    4,    4,    4,   20,    9,    4,    4,   22,   22,
1442
       95,   22,    9,    4,   73,   73,    4,   10,   23,   37,
1443
       23,   45,   37,   45,   10,   10,   17,   10,  259,  259,
1444
       45,   23,  142,  263,  263,   37,   37,   37,   37,  937,
1445
1446
       95,   38,    4,    4,   38,    4,   10,   46,  147,   46,
1447
      147,   79,   47,   10,   47,  936,   46,   38,   38,   38,
1448
       38,  142,   47,   55,   55,  149,   55,  149,   23,   23,
1449
       23,    4,    4,    4,   13,   13,   13,   13,   13,   13,
1450
       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
1451
       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
1452
       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
1453
       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
1454
       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
1455
       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
1456
1457
       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
1458
       13,   13,   13,   13,   13,   13,   13,   13,   18,   24,
1459
       18,   24,  168,   29,   58,   29,   74,   74,  935,   30,
1460
       18,   30,   24,   29,   18,   18,   18,   18,   31,   30,
1461
       31,   31,   32,  191,   32,   32,   48,  162,   48,   67,
1462
       67,  168,   67,  246,  162,  246,   48,   75,   74,   75,
1463
      141,   58,   75,   75,   75,   75,  167,  176,  177,   24,
1464
       24,   24,  191,   29,  253,   29,  253,  105,  105,   30,
1465
      105,   30,  116,  116,  116,  116,  294,   74,  294,   31,
1466
      141,   58,  323,   32,  323,  934,  167,  176,  177,   18,
1467
1468
       25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
1469
       25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
1470
       25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
1471
       25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
1472
       25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
1473
       25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
1474
       25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
1475
       25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
1476
       25,   25,   25,   25,   33,   33,   39,   33,   39,   34,
1477
       34,   33,   34,  182,   41,   42,   34,  333,   43,  181,
1478
1479
       33,   41,   42,  186,  333,   34,  203,  203,  203,  203,
1480
      325,   43,  325,  181,   41,   42,  179,  187,  179,  188,
1481
      314,   43,  179,  182,   41,   42,   43,   33,  194,   41,
1482
       42,  199,   34,  186,   33,   33,   39,   33,   39,   34,
1483
       34,   43,   34,  181,   41,   42,  179,  187,  179,  188,
1484
       43,  179,  933,   41,   42,   43,   33,  194,   41,   42,
1485
      199,   34,  932,   33,  314,   39,  931,   39,   34,   35,
1486
       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1487
       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1488
       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1489
1490
       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1491
       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1492
       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1493
       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1494
       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1495
       35,   35,   35,   40,   44,   40,   63,   63,  193,   63,
1496
      122,  122,  347,   63,  183,   76,   76,   44,   76,  125,
1497
      125,  348,   76,  350,  195,  132,  132,   44,  180,  184,
1498
      190,   76,   44,  409,  409,  183,  180,   76,  193,  930,
1499
      190,  347,  122,  196,  183,  197,  198,   44,  873,  184,
1500
1501
      348,  125,  350,   40,  195,   40,   44,  132,  180,  184,
1502
      190,   44,  236,  189,  183,  244,  180,  189,  235,   76,
1503
      190,  122,  258,  196,  872,  197,  198,  278,  184,  871,
1504
      125,  290,   40,  291,   40,   59,  132,   63,  228,  228,
1505
      192,  228,  236,  189,  260,  244,   76,  189,  232,  232,
1506
      192,  232,  258,  192,   59,  235,   59,  278,   59,  249,
1507
      249,  290,  249,  291,   59,  870,  249,   59,   59,   59,
1508
      192,   59,   59,   59,  260,  260,  869,   59,  298,  298,
1509
      192,  298,  192,  868,   59,  235,   59,  867,   59,  319,
1510
      320,  866,  239,  239,   59,  239,  865,   59,   59,   59,
1511
1512
       59,   59,   59,  864,  240,  240,   59,  240,   59,  239,
1513
      239,  239,  239,  241,  241,  863,  241,  261,  261,  319,
1514
      320,  240,  240,  240,  240,  242,  242,  352,  242,  343,
1515
      241,  241,  241,  241,  354,  239,  305,  305,  305,  305,
1516
      249,  344,  242,  242,  242,  242,  346,  862,  355,  261,
1517
      269,  269,  349,  269,  241,  357,  352,  269,  353,  343,
1518
      346,  356,  353,  354,  239,  242,  269,  358,  861,  349,
1519
      359,  344,  269,  360,  359,  361,  346,  355,  261,  362,
1520
      364,  366,  349,  367,  241,  357,  368,  369,  353,  346,
1521
      356,  371,  353,  372,  371,  242,  368,  358,  349,  374,
1522
1523
      359,  375,  360,  359,  269,  361,  415,  415,  362,  364,
1524
      366,  400,  367,  400,  614,  614,  368,  369,  402,  860,
1525
      402,  371,  859,  372,  371,  368,  858,  387,  374,  394,
1526
      375,  269,  307,  307,  307,  307,  307,  307,  307,  307,
1527
      307,  307,  307,  307,  307,  307,  307,  307,  307,  307,
1528
      307,  307,  307,  307,  307,  307,  307,  387,  394,  404,
1529
      307,  404,  307,  307,  307,  307,  307,  307,  307,  307,
1530
      307,  307,  307,  307,  307,  307,  307,  307,  307,  307,
1531
      307,  307,  307,  307,  307,  307,  370,  373,  390,  390,
1532
      370,  390,  395,  396,  373,  370,  379,  379,  379,  379,
1533
1534
      398,  406,  430,  406,  430,  390,  390,  390,  390,  408,
1535
      410,  857,  423,  411,  411,  856,  370,  373,  448,  855,
1536
      370,  395,  854,  396,  373,  370,  376,  425,  376,  428,
1537
      398,  376,  376,  393,  393,  853,  393,  376,  376,  408,
1538
      410,  410,  423,  376,  376,  411,  429,  448,  376,  411,
1539
      393,  393,  393,  393,  852,  376,  376,  425,  376,  428,
1540
      851,  376,  376,  420,  420,  420,  420,  376,  376,  432,
1541
      847,  432,  376,  376,  411,  846,  429,  376,  412,  412,
1542
      792,  412,  412,  412,  412,  412,  412,  412,  412,  412,
1543
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
1544
1545
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
1546
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
1547
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
1548
      412,  412,  791,  412,  412,  412,  412,  412,  412,  412,
1549
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
1550
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
1551
      412,  412,  413,  413,  445,  446,  441,  433,  434,  435,
1552
      438,  439,  436,  442,  449,  459,  450,  498,  790,  498,
1553
      440,  443,  789,  433,  434,  436,  441,  435,  451,  443,
1554
      439,  788,  438,  442,  445,  446,  413,  413,  414,  414,
1555
1556
      414,  414,  440,  449,  459,  440,  450,  414,  414,  414,
1557
      414,  414,  414,  433,  434,  436,  441,  435,  451,  443,
1558
      439,  438,  452,  442,  462,  453,  454,  455,  456,  787,
1559
      458,  440,  414,  414,  440,  460,  786,  414,  414,  414,
1560
      414,  414,  414,  444,  463,  464,  465,  467,  444,  444,
1561
      444,  444,  452,  462,  444,  453,  454,  455,  456,  444,
1562
      458,  466,  469,  444,  470,  460,  444,  785,  444,  471,
1563
      784,  444,  472,  463,  473,  464,  465,  467,  444,  444,
1564
      444,  444,  474,  475,  444,  476,  477,  478,  479,  444,
1565
      466,  480,  469,  444,  470,  444,  482,  444,  483,  471,
1566
1567
      444,  481,  472,  484,  473,  485,  486,  481,  487,  488,
1568
      508,  489,  474,  475,  490,  476,  477,  478,  479,  491,
1569
      492,  480,  493,  494,  783,  495,  482,  483,  497,  782,
1570
      496,  481,  484,  496,  496,  485,  486,  481,  487,  488,
1571
      489,  501,  504,  501,  490,  503,  503,  505,  503,  491,
1572
      492,  523,  493,  494,  495,  506,  499,  499,  497,  499,
1573
      496,  510,  496,  496,  502,  502,  600,  502,  600,  613,
1574
      613,  613,  504,  499,  499,  499,  499,  505,  615,  615,
1575
      523,  502,  502,  502,  502,  506,  601,  601,  780,  601,
1576
      508,  510,  511,  511,  773,  511,  511,  511,  511,  511,
1577
1578
      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
1579
      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
1580
      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
1581
      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
1582
      511,  511,  511,  511,  511,  511,  514,  511,  511,  511,
1583
      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
1584
      511,  511,  511,  511,  511,  511,  511,  511,  511,  511,
1585
      511,  511,  511,  511,  511,  511,  512,  512,  520,  514,
1586
      525,  527,  516,  516,  532,  526,  528,  770,  521,  522,
1587
      526,  758,  607,  607,  529,  607,  531,  528,  525,  529,
1588
1589
      525,  693,  532,  693,  744,  527,  530,  609,  520,  531,
1590
      512,  512,  513,  513,  513,  513,  516,  516,  521,  522,
1591
      526,  513,  513,  513,  513,  513,  513,  528,  525,  529,
1592
      525,  535,  532,  530,  527,  733,  539,  533,  545,  531,
1593
      609,  534,  533,  704,  535,  546,  545,  536,  537,  539,
1594
      703,  513,  513,  513,  513,  513,  513,  517,  517,  517,
1595
      517,  534,  530,  536,  537,  538,  517,  517,  517,  517,
1596
      517,  517,  533,  540,  535,  546,  545,  699,  550,  539,
1597
      542,  547,  551,  538,  541,  553,  543,  544,  554,  555,
1598
      556,  534,  557,  536,  537,  540,  517,  517,  517,  517,
1599
1600
      517,  517,  542,  541,  698,  542,  543,  544,  550,  557,
1601
      547,  551,  558,  538,  553,  557,  560,  554,  559,  555,
1602
      556,  563,  606,  564,  540,  565,  566,  692,  569,  570,
1603
      574,  542,  572,  541,  542,  573,  543,  544,  576,  557,
1604
      577,  578,  558,  579,  581,  557,  560,  559,  580,  582,
1605
      583,  563,  564,  584,  565,  586,  566,  569,  587,  570,
1606
      574,  572,  588,  590,  573,  589,  591,  576,  592,  594,
1607
      577,  578,  593,  579,  581,  595,  596,  580,  582,  583,
1608
      602,  595,  597,  584,  603,  586,  604,  616,  587,  611,
1609
      611,  618,  588,  590,  589,  591,  621,  624,  592,  594,
1610
1611
      619,  593,  606,  686,  622,  595,  596,  701,  701,  602,
1612
      595,  623,  597,  626,  603,  604,  622,  616,  625,  624,
1613
      618,  621,  628,  611,  611,  612,  612,  612,  612,  623,
1614
      619,  625,  627,  626,  612,  612,  612,  612,  612,  612,
1615
      628,  627,  629,  631,  630,  632,  622,  682,  624,  629,
1616
      621,  630,  631,  634,  633,  774,  632,  774,  634,  623,
1617
      635,  625,  636,  626,  612,  612,  612,  612,  612,  612,
1618
      628,  627,  633,  636,  633,  637,  639,  640,  638,  629,
1619
      637,  630,  631,  643,  635,  641,  632,  642,  634,  639,
1620
      641,  668,  644,  645,  648,  640,  643,  664,  647,  650,
1621
1622
      655,  653,  633,  636,  633,  638,  648,  642,  658,  654,
1623
      637,  653,  657,  635,  659,  661,  662,  663,  665,  639,
1624
      641,  644,  666,  645,  648,  640,  643,  647,  667,  650,
1625
      655,  653,  669,  670,  638,  671,  648,  642,  654,  673,
1626
      653,  674,  657,  659,  675,  661,  662,  663,  665,  676,
1627
      679,  666,  678,  680,  681,  683,  684,  685,  667,  687,
1628
      688,  669,  670,  689,  671,  690,  691,  694,  695,  673,
1629
      674,  696,  696,  675,  696,  700,  700,  700,  711,  676,
1630
      679,  678,  680,  707,  681,  683,  684,  685,  709,  687,
1631
      688,  710,  689,  702,  702,  690,  691,  694,  695,  708,
1632
1633
      707,  712,  711,  709,  708,  713,  716,  710,  714,  718,
1634
      721,  715,  720,  712,  717,  716,  719,  722,  727, 1147,
1635
     1147,  734,  718,  652,  720,  727,  724,  713,  721,  723,
1636
      707,  711,  714,  709,  708,  715,  717,  710,  725,  722,
1637
      729,  719,  723,  712,  726,  716,  724,  725,  730,  729,
1638
      728,  734,  718,  735,  720,  727,  713,  728,  721,  730,
1639
      738,  714,  726,  737,  715,  717,  739,  740,  722,  741,
1640
      719,  742,  723,  737,  617,  743,  724,  725,  745,  729,
1641
      746,  747,  735,  748,  749,  750,  752,  728,  751,  730,
1642
      738,  754,  726,  737,  756,  760,  739,  740,  741,  761,
1643
1644
      742,  762,  765,  737,  743,  767,  771,  776,  745,  776,
1645
      746,  747,  778,  748,  749,  750,  752,  751,  772,  795,
1646
      849,  754,  849,  756,  795,  760,  764,  764,  793,  761,
1647
      762,  764,  765,  794,  764,  767,  771,  764,  768,  768,
1648
      796,  778,  764,  768,  797,  809,  768,  799,  772,  768,
1649
      794,  798,  793,  801,  795,  796,  764,  764,  802,  799,
1650
      797,  764,  800,  803,  764,  804,  806,  764,  768,  768,
1651
      807,  764,  803,  768,  809,  798,  768,  801,  805,  768,
1652
      794,  793,  802,  811,  800,  796,  814,  804,  808,  799,
1653
      797,  805,  810,  812,  610,  816,  806,  817,  608,  818,
1654
1655
      807,  819,  803,  820,  798,  821,  801,  823,  825,  826,
1656
      828,  802,  811,  800,  832,  814,  804,  833,  808,  834,
1657
      837,  805,  810,  812,  816,  836,  828,  817,  818,  838,
1658
      839,  819,  820,  840,  842,  821,  841,  823,  825,  826,
1659
      828,  835,  598,  844,  832,  835,  833,  845,  835,  834,
1660
      837,  848,  875,  843,  836,  828,  843,  874,  835,  838,
1661
      839,  876,  878,  840,  842,  841,  843,  877,  879,  880,
1662
      883,  835,  844,  881,  884,  835,  845,  885,  835,  886,
1663
      848,  874,  875,  843,  888,  889,  843,  835,  890,  571,
1664
      891,  876,  878,  892,  893,  843,  877,  894,  879,  880,
1665
1666
      883,  895,  881,  897,  884,  898,  899,  885,  900,  886,
1667
      874,  901,  902,  888,  904,  889,  905,  908,  890,  891,
1668
      906,  909,  910,  892,  893,  911,  912,  894,  913,  915,
1669
      895,  914,  916,  897,  916,  898,  899,  918,  900,  918,
1670
      901,  902,  943,  944,  904,  945,  905,  908,  914,  906,
1671
      946,  909,  910,  947,  911,  912,  948,  913,  915,  949,
1672
      950,  914,  951,  568,  952,  953,  954,  552,  955,  956,
1673
      958,  943,  959,  944,  960,  945,  961,  914,  962,  963,
1674
      946,  964,  965,  947,  967,  969,  948,  970,  971,  949,
1675
      950,  972,  951,  952,  953,  973,  954,  955,  975,  956,
1676
1677
      958,  959,  976,  960,  978,  961,  977,  979,  962,  963,
1678
      977,  964,  965,  967,  969,  993,  970,  994,  971,  995,
1679
      996,  972,  997,  998,  999,  973, 1001, 1002,  975, 1004,
1680
     1005,  976, 1006,  978, 1007,  977, 1008,  979, 1009,  977,
1681
     1010, 1012, 1016, 1017, 1018,  993, 1021,  994,  995, 1022,
1682
      996,  997,  998,  999, 1023, 1031, 1001, 1002, 1004, 1005,
1683
     1024, 1025, 1006, 1026, 1007, 1028, 1008, 1029, 1009, 1030,
1684
     1010, 1012, 1016, 1017, 1018, 1021, 1032, 1033, 1034, 1022,
1685
     1037,  524, 1039, 1041, 1023, 1031, 1044, 1047, 1048, 1024,
1686
     1025, 1049, 1026, 1050, 1028, 1051, 1029, 1052, 1030, 1053,
1687
1688
     1054, 1055, 1056, 1058,  515, 1059, 1032, 1033, 1034, 1060,
1689
     1037, 1039, 1061, 1041, 1063, 1067, 1044, 1047, 1048, 1068,
1690
     1049, 1069, 1070, 1050, 1072, 1051, 1073, 1052, 1074, 1053,
1691
     1054, 1055, 1056, 1058, 1059, 1075, 1076, 1077, 1060, 1078,
1692
     1081, 1083, 1061, 1063, 1084, 1067, 1085,  468, 1086, 1068,
1693
     1069, 1087, 1070, 1088, 1072, 1090, 1073, 1093, 1074, 1094,
1694
     1097,  437, 1098, 1099, 1102, 1075, 1076, 1077, 1078, 1081,
1695
     1103, 1083, 1160, 1084, 1160,  419, 1085, 1086,  392, 1189,
1696
     1087, 1189, 1088,  377,  351, 1090,  341, 1093, 1094,  339,
1697
     1097, 1098, 1099,  334, 1102,  301,  300,  299,  296,  285,
1698
1699
     1103, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107,
1700
     1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1108, 1108,
1701
     1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108,
1702
     1108, 1108, 1108, 1108, 1108, 1109, 1109, 1109, 1109, 1109,
1703
     1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109,
1704
     1109, 1109, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110,
1705
     1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1111,
1706
     1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111,
1707
     1111, 1111, 1111, 1111, 1111, 1111, 1112, 1112, 1112, 1112,
1708
     1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112,
1709
1710
     1112, 1112, 1112, 1113, 1113, 1113, 1113, 1113, 1113, 1113,
1711
     1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113,
1712
     1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114,
1713
     1114, 1114, 1114, 1114, 1114, 1114, 1114, 1115, 1115, 1115,
1714
     1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115,
1715
     1115, 1115, 1115, 1115, 1116, 1116, 1116, 1116, 1116, 1116,
1716
     1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116,
1717
     1116, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117,
1718
     1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1118, 1118,
1719
     1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118,
1720
1721
     1118, 1118, 1118, 1118, 1118, 1119, 1119, 1119, 1119, 1119,
1722
     1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119,
1723
     1119, 1119, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120,
1724
     1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1121,
1725
     1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121,
1726
     1121, 1121, 1121, 1121, 1121, 1121, 1122, 1122, 1122, 1122,
1727
     1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122,
1728
     1122, 1122, 1122, 1123, 1123, 1123, 1123, 1123, 1123, 1123,
1729
     1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123,
1730
     1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124,
1731
1732
     1124, 1124, 1124, 1124, 1124, 1124, 1124, 1125, 1125, 1125,
1733
     1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125,
1734
     1125, 1125, 1125, 1125, 1126, 1126,  282, 1126, 1126,  274,
1735
      273,  272, 1126, 1127, 1127, 1127, 1127, 1127, 1127, 1127,
1736
     1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1128,
1737
     1128,  271, 1128, 1128,  268,  266,  265, 1128, 1129,  256,
1738
     1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129,
1739
     1129, 1129, 1129, 1129, 1129, 1130,  255, 1130, 1130, 1130,
1740
     1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130,
1741
     1130, 1130, 1131, 1131, 1131,  252, 1131, 1131,  251,  234,
1742
1743
      230, 1131, 1132,  227, 1132, 1132, 1132, 1132, 1132, 1132,
1744
     1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1133,
1745
      226, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133,
1746
     1133, 1133, 1133, 1133, 1133, 1133, 1134, 1134, 1134, 1134,
1747
     1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134,  222, 1134,
1748
      208, 1134, 1134, 1135,  207,  206, 1135, 1135, 1135, 1135,
1749
     1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135,
1750
     1136, 1136,  202, 1136, 1136,  175,  174,  172, 1136, 1137,
1751
      170, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137,
1752
     1137, 1137, 1137, 1137, 1137, 1137, 1138,  169, 1138, 1138,
1753
1754
     1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138,
1755
      166, 1138, 1138, 1139,  165, 1139,  164,  158, 1139, 1139,
1756
     1139, 1139, 1139,  155,  154,  153, 1139, 1140,  152, 1140,
1757
     1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140,
1758
     1140, 1140, 1140, 1140, 1141, 1141,  144, 1141, 1141,  143,
1759
      139,  136, 1141, 1142, 1142, 1142, 1142, 1142, 1142, 1142,
1760
     1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142,
1761
     1143,  131, 1143,  129, 1143, 1143, 1143, 1143, 1143, 1143,
1762
     1143, 1143, 1143,  124, 1143, 1143, 1143, 1144,  120, 1144,
1763
     1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144,
1764
1765
     1144, 1144, 1144, 1144, 1145,  114, 1145, 1145, 1145, 1145,
1766
     1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145,
1767
     1145, 1146, 1146,  109,  107, 1146, 1146, 1148,  106, 1148,
1768
     1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148,
1769
     1148, 1148, 1148, 1148, 1149,  103, 1149, 1149, 1149,  101,
1770
     1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149,
1771
     1149, 1150, 1150,   99, 1150, 1150,   98,   97,   94, 1150,
1772
     1151,   91, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151,
1773
     1151, 1151, 1151, 1151, 1151, 1151, 1151, 1152,   90, 1152,
1774
     1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152,
1775
1776
     1152, 1152, 1152, 1152, 1153, 1153,   88,   86,   84, 1153,
1777
     1154, 1154,   80,   78,   72, 1154, 1155, 1155, 1155, 1155,
1778
     1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155,
1779
     1155, 1155, 1155, 1156, 1156,   71, 1156, 1156,   68,   65,
1780
       60, 1156, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157,
1781
     1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1158,
1782
       57, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158,
1783
     1158, 1158, 1158,   53, 1158, 1158, 1159,   49, 1159, 1159,
1784
     1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159,
1785
     1159, 1159, 1159, 1161, 1161,   16, 1161, 1161,   15,    0,
1786
1787
        0, 1161, 1161, 1162,    0, 1162, 1162, 1162, 1162, 1162,
1788
     1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162,
1789
     1163,    0, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163,
1790
     1163, 1163, 1163, 1163, 1163, 1163, 1163, 1164,    0, 1164,
1791
     1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164,
1792
     1164, 1164, 1164, 1164, 1165,    0, 1165, 1165, 1165, 1165,
1793
     1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165,
1794
     1165, 1166,    0, 1166, 1166, 1166, 1166, 1166, 1166, 1166,
1795
     1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1167, 1167,
1796
     1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167,
1797
1798
        0, 1167,    0, 1167, 1167, 1168, 1168, 1168, 1168, 1168,
1799
     1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168,
1800
     1168, 1168, 1169,    0,    0, 1169, 1169, 1169, 1169, 1169,
1801
     1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1170,
1802
     1170,    0, 1170, 1170,    0,    0,    0, 1170, 1171,    0,
1803
     1171,    0,    0, 1171, 1171, 1171, 1171, 1171,    0,    0,
1804
        0, 1171, 1172,    0, 1172, 1172, 1172, 1172, 1172, 1172,
1805
     1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1173,
1806
     1173,    0, 1173, 1173,    0,    0,    0, 1173, 1174, 1174,
1807
     1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174,
1808
1809
     1174, 1174, 1174, 1174, 1174, 1175,    0, 1175,    0, 1175,
1810
     1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175,    0, 1175,
1811
     1175, 1175, 1176,    0, 1176, 1176, 1176, 1176, 1176, 1176,
1812
     1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1177,
1813
        0, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177,
1814
     1177, 1177, 1177, 1177, 1177, 1177, 1178, 1178,    0,    0,
1815
     1178, 1178, 1179,    0, 1179, 1179, 1179, 1179, 1179, 1179,
1816
     1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1180,
1817
        0, 1180, 1180, 1180,    0, 1180, 1180, 1180, 1180, 1180,
1818
     1180, 1180, 1180, 1180, 1180, 1180, 1181,    0, 1181, 1181,
1819
1820
     1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181,
1821
     1181, 1181, 1181, 1182,    0, 1182, 1182, 1182, 1182, 1182,
1822
     1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182,
1823
     1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183,
1824
     1183, 1183, 1183, 1183, 1183, 1183, 1183, 1184, 1184,    0,
1825
     1184, 1184,    0,    0,    0, 1184, 1185, 1185,    0, 1185,
1826
     1185,    0,    0,    0, 1185, 1186, 1186, 1186, 1186, 1186,
1827
     1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186,
1828
     1186, 1186, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187,
1829
     1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1188,
1830
1831
        0, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188,
1832
     1188, 1188, 1188,    0, 1188, 1188, 1190, 1190,    0, 1190,
1833
     1190,    0,    0,    0, 1190, 1190, 1191,    0, 1191, 1191,
1834
     1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191,
1835
     1191, 1191, 1191, 1192,    0, 1192, 1192, 1192, 1192, 1192,
1836
     1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192,
1837
     1193,    0, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193,
1838
     1193, 1193, 1193, 1193, 1193, 1193, 1193, 1194, 1194, 1194,
1839
     1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194,
1840
     1194, 1194, 1194, 1194, 1195, 1195, 1195, 1196, 1196,    0,
1841
1842
     1196, 1196,    0,    0,    0, 1196, 1197,    0, 1197, 1197,
1843
     1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197,
1844
     1197, 1197, 1197, 1198,    0, 1198, 1198, 1198, 1198, 1198,
1845
     1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198,
1846
     1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199,
1847
     1199, 1199, 1199, 1199, 1199, 1199, 1199, 1200, 1200, 1200,
1848
     1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200,
1849
     1200, 1200, 1200, 1200, 1106, 1106, 1106, 1106, 1106, 1106,
1850
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1851
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1852
1853
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1854
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1855
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1856
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1857
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106,
1858
     1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106
1859
    } ;
1860
1861
extern int yy_flex_debug;
1862
int yy_flex_debug = 0;
1863
1864
static yy_state_type *yy_state_buf=0, *yy_state_ptr=0;
1865
static char *yy_full_match;
1866
static int yy_lp;
1867
#define REJECT \
1868
{ \
1869
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ \
1870
yy_cp = (yy_full_match); /* restore poss. backed-over text */ \
1871
++(yy_lp); \
1872
goto find_rule; \
1873
}
1874
1875
static int yy_more_flag = 0;
1876
static int yy_more_len = 0;
1877
#define yymore() ((yy_more_flag) = 1)
1878
#define YY_MORE_ADJ (yy_more_len)
1879
#define YY_RESTORE_YY_MORE_OFFSET
1880
char *yytext;
1881
#line 1 "scan.l"
1882
/*	$OpenBSD: scan.l,v 1.12 2015/11/19 23:34:56 mmcc Exp $	*/
1883
/* scan.l - scanner for flex input -*-C-*- */
1884
#line 6 "scan.l"
1885
/*  Copyright (c) 1990 The Regents of the University of California. */
1886
/*  All rights reserved. */
1887
1888
/*  This code is derived from software contributed to Berkeley by */
1889
/*  Vern Paxson. */
1890
1891
/*  The United States Government has rights in this work pursuant */
1892
/*  to contract no. DE-AC03-76SF00098 between the United States */
1893
/*  Department of Energy and the University of California. */
1894
1895
/*  This file is part of flex. */
1896
1897
/*  Redistribution and use in source and binary forms, with or without */
1898
/*  modification, are permitted provided that the following conditions */
1899
/*  are met: */
1900
1901
/*  1. Redistributions of source code must retain the above copyright */
1902
/*     notice, this list of conditions and the following disclaimer. */
1903
/*  2. Redistributions in binary form must reproduce the above copyright */
1904
/*     notice, this list of conditions and the following disclaimer in the */
1905
/*     documentation and/or other materials provided with the distribution. */
1906
1907
/*  Neither the name of the University nor the names of its contributors */
1908
/*  may be used to endorse or promote products derived from this software */
1909
/*  without specific prior written permission. */
1910
1911
/*  THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR */
1912
/*  IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED */
1913
/*  WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR */
1914
/*  PURPOSE. */
1915
1916
#include "flexdef.h"
1917
#include "parse.h"
1918
extern bool tablesverify, tablesext;
1919
extern int trlcontxt; /* Set in  parse.y for each rule. */
1920
extern const char *escaped_qstart, *escaped_qend;
1921
1922
#define ACTION_ECHO add_action( yytext )
1923
#define ACTION_IFDEF(def, should_define) \
1924
	{ \
1925
	if ( should_define ) \
1926
		action_define( def, 1 ); \
1927
	}
1928
1929
#define ACTION_ECHO_QSTART add_action (escaped_qstart)
1930
#define ACTION_ECHO_QEND   add_action (escaped_qend)
1931
1932
#define ACTION_M4_IFDEF(def, should_define) \
1933
    do{ \
1934
        if ( should_define ) \
1935
            buf_m4_define( &m4defs_buf, def, NULL);\
1936
        else \
1937
            buf_m4_undefine( &m4defs_buf, def);\
1938
    } while(0)
1939
1940
#define MARK_END_OF_PROLOG mark_prolog();
1941
1942
#define YY_DECL \
1943
	int flexscan()
1944
1945
#define RETURNCHAR \
1946
	yylval = (unsigned char) yytext[0]; \
1947
	return CHAR;
1948
1949
#define RETURNNAME \
1950
	if(yyleng < MAXLINE) \
1951
         { \
1952
	strlcpy( nmstr, yytext, sizeof nmstr ); \
1953
	 } \
1954
	else \
1955
	 { \
1956
	   synerr(_("Input line too long\n")); \
1957
	   FLEX_EXIT(EXIT_FAILURE);  \
1958
	 }  \
1959
	return NAME;
1960
1961
#define PUT_BACK_STRING(str, start) \
1962
	for ( i = strlen( str ) - 1; i >= start; --i ) \
1963
		unput((str)[i])
1964
1965
#define CHECK_REJECT(str) \
1966
	if ( all_upper( str ) ) \
1967
		reject = true;
1968
1969
#define CHECK_YYMORE(str) \
1970
	if ( all_lower( str ) ) \
1971
		yymore_used = true;
1972
1973
#define YY_USER_INIT \
1974
	if ( getenv("POSIXLY_CORRECT") ) \
1975
		posix_compat = true;
1976
1977
1978
1979
1980
1981
1982
1983
1984
#line 1985 "scan.c"
1985
1986
#define INITIAL 0
1987
#define SECT2 1
1988
#define SECT2PROLOG 2
1989
#define SECT3 3
1990
#define CODEBLOCK 4
1991
#define PICKUPDEF 5
1992
#define SC 6
1993
#define CARETISBOL 7
1994
#define NUM 8
1995
#define QUOTE 9
1996
#define FIRSTCCL 10
1997
#define CCL 11
1998
#define ACTION 12
1999
#define RECOVER 13
2000
#define COMMENT 14
2001
#define ACTION_STRING 15
2002
#define PERCENT_BRACE_ACTION 16
2003
#define OPTION 17
2004
#define LINEDIR 18
2005
#define CODEBLOCK_MATCH_BRACE 19
2006
#define GROUP_WITH_PARAMS 20
2007
#define GROUP_MINUS_PARAMS 21
2008
#define EXTENDED_COMMENT 22
2009
#define COMMENT_DISCARD 23
2010
2011
#ifndef YY_NO_UNISTD_H
2012
/* Special case for "unistd.h", since it is non-ANSI. We include it way
2013
 * down here because we want the user's section 1 to have been scanned first.
2014
 * The user has a chance to override it with an option.
2015
 */
2016
#include <unistd.h>
2017
#endif
2018
2019
#ifndef YY_EXTRA_TYPE
2020
#define YY_EXTRA_TYPE void *
2021
#endif
2022
2023
static int yy_init_globals (void );
2024
2025
/* Accessor methods to globals.
2026
   These are made visible to non-reentrant scanners for convenience. */
2027
2028
int yylex_destroy (void );
2029
2030
int yyget_debug (void );
2031
2032
void yyset_debug (int debug_flag  );
2033
2034
YY_EXTRA_TYPE yyget_extra (void );
2035
2036
void yyset_extra (YY_EXTRA_TYPE user_defined  );
2037
2038
FILE *yyget_in (void );
2039
2040
void yyset_in  (FILE * in_str  );
2041
2042
FILE *yyget_out (void );
2043
2044
void yyset_out  (FILE * out_str  );
2045
2046
yy_size_t yyget_leng (void );
2047
2048
char *yyget_text (void );
2049
2050
int yyget_lineno (void );
2051
2052
void yyset_lineno (int line_number  );
2053
2054
/* Macros after this point can all be overridden by user definitions in
2055
 * section 1.
2056
 */
2057
2058
#ifndef YY_SKIP_YYWRAP
2059
#ifdef __cplusplus
2060
extern "C" int yywrap (void );
2061
#else
2062
extern int yywrap (void );
2063
#endif
2064
#endif
2065
2066
    static void yyunput (int c,char *buf_ptr  );
2067
2068
#ifndef yytext_ptr
2069
static void yy_flex_strncpy (char *,yyconst char *,int );
2070
#endif
2071
2072
#ifdef YY_NEED_STRLEN
2073
static int yy_flex_strlen (yyconst char * );
2074
#endif
2075
2076
#ifndef YY_NO_INPUT
2077
2078
#ifdef __cplusplus
2079
static int yyinput (void );
2080
#else
2081
static int input (void );
2082
#endif
2083
2084
#endif
2085
2086
        static int yy_start_stack_ptr = 0;
2087
        static int yy_start_stack_depth = 0;
2088
        static int *yy_start_stack = NULL;
2089
2090
    static void yy_push_state (int new_state );
2091
2092
    static void yy_pop_state (void );
2093
2094
/* Amount of stuff to slurp up with each read. */
2095
#ifndef YY_READ_BUF_SIZE
2096
#define YY_READ_BUF_SIZE 8192
2097
#endif
2098
2099
/* Copy whatever the last rule matched to the standard output. */
2100
#ifndef ECHO
2101
/* This used to be an fputs(), but since the string might contain NUL's,
2102
 * we now use fwrite().
2103
 */
2104
#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
2105
#endif
2106
2107
/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
2108
 * is returned in "result".
2109
 */
2110
#ifndef YY_INPUT
2111
#define YY_INPUT(buf,result,max_size) \
2112
	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
2113
		{ \
2114
		int c = '*'; \
2115
		size_t n; \
2116
		for ( n = 0; n < max_size && \
2117
			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
2118
			buf[n] = (char) c; \
2119
		if ( c == '\n' ) \
2120
			buf[n++] = (char) c; \
2121
		if ( c == EOF && ferror( yyin ) ) \
2122
			YY_FATAL_ERROR( "input in flex scanner failed" ); \
2123
		result = n; \
2124
		} \
2125
	else \
2126
		{ \
2127
		errno=0; \
2128
		while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
2129
			{ \
2130
			if( errno != EINTR) \
2131
				{ \
2132
				YY_FATAL_ERROR( "input in flex scanner failed" ); \
2133
				break; \
2134
				} \
2135
			errno=0; \
2136
			clearerr(yyin); \
2137
			} \
2138
		}\
2139
\
2140
2141
#endif
2142
2143
/* No semi-colon after return; correct usage is to write "yyterminate();" -
2144
 * we don't want an extra ';' after the "return" because that will cause
2145
 * some compilers to complain about unreachable statements.
2146
 */
2147
#ifndef yyterminate
2148
#define yyterminate() return YY_NULL
2149
#endif
2150
2151
/* Number of entries by which start-condition stack grows. */
2152
#ifndef YY_START_STACK_INCR
2153
#define YY_START_STACK_INCR 25
2154
#endif
2155
2156
/* Report a fatal error. */
2157
#ifndef YY_FATAL_ERROR
2158
#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2159
#endif
2160
2161
/* end tables serialization structures and prototypes */
2162
2163
/* Default declaration of generated scanner - a define so the user can
2164
 * easily add parameters.
2165
 */
2166
#ifndef YY_DECL
2167
#define YY_DECL_IS_OURS 1
2168
2169
extern int yylex (void);
2170
2171
#define YY_DECL int yylex (void)
2172
#endif /* !YY_DECL */
2173
2174
/* Code executed at the beginning of each rule, after yytext and yyleng
2175
 * have been set up.
2176
 */
2177
#ifndef YY_USER_ACTION
2178
#define YY_USER_ACTION
2179
#endif
2180
2181
/* Code executed at the end of each rule. */
2182
#ifndef YY_BREAK
2183
#define YY_BREAK break;
2184
#endif
2185
2186
#define YY_RULE_SETUP \
2187
	if ( yyleng > 0 ) \
2188
		YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
2189
				(yytext[yyleng - 1] == '\n'); \
2190
	YY_USER_ACTION
2191
2192
/** The main scanner function which does all the work.
2193
 */
2194
YY_DECL
2195
{
2196
	yy_state_type yy_current_state;
2197
	char *yy_cp, *yy_bp;
2198
	int yy_act;
2199
2200
71424
	if ( !(yy_init) )
2201
		{
2202
12
		(yy_init) = 1;
2203
2204
#ifdef YY_USER_INIT
2205
12
		YY_USER_INIT;
2206
#endif
2207
2208
        /* Create the reject buffer large enough to save one state per allowed character. */
2209
12
        if ( ! (yy_state_buf) )
2210
12
            (yy_state_buf) = (yy_state_type *)yyalloc(YY_STATE_BUF_SIZE  );
2211
12
            if ( ! (yy_state_buf) )
2212
                YY_FATAL_ERROR( "out of dynamic memory in yylex()" );
2213
2214
12
		if ( ! (yy_start) )
2215
12
			(yy_start) = 1;	/* first start state */
2216
2217
12
		if ( ! yyin )
2218
			yyin = stdin;
2219
2220
12
		if ( ! yyout )
2221
12
			yyout = stdout;
2222
2223

12
		if ( ! YY_CURRENT_BUFFER ) {
2224
12
			yyensure_buffer_stack ();
2225
12
			YY_CURRENT_BUFFER_LVALUE =
2226
12
				yy_create_buffer(yyin,YY_BUF_SIZE );
2227
12
		}
2228
2229
12
		yy_load_buffer_state( );
2230
12
		}
2231
2232
	{
2233
#line 133 "scan.l"
2234
2235
	static int bracelevel, didadef, indented_code;
2236
	static int doing_rule_action = false;
2237
	static int option_sense;
2238
2239
	int doing_codeblock = false;
2240
	int i, brace_depth=0, brace_start_line=0;
2241
	u_char nmdef[MAXLINE];
2242
2243
2244
#line 2245 "scan.c"
2245
2246
63588
	while ( 1 )		/* loops until end-of-file is reached */
2247
		{
2248
63588
		(yy_more_len) = 0;
2249
63588
		if ( (yy_more_flag) )
2250
			{
2251
			(yy_more_len) = (yy_c_buf_p) - (yytext_ptr);
2252
			(yy_more_flag) = 0;
2253
			}
2254
63588
		yy_cp = (yy_c_buf_p);
2255
2256
		/* Support of yytext. */
2257
63588
		*yy_cp = (yy_hold_char);
2258
2259
		/* yy_bp points to the position in yy_ch_buf of the start of
2260
		 * the current run.
2261
		 */
2262
		yy_bp = yy_cp;
2263
2264
63588
		yy_current_state = (yy_start);
2265
63588
		yy_current_state += YY_AT_BOL();
2266
2267
63588
		(yy_state_ptr) = (yy_state_buf);
2268
63588
		*(yy_state_ptr)++ = yy_current_state;
2269
2270
yy_match:
2271
63606
		do
2272
			{
2273
152408
			YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
2274
559620
			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2275
				{
2276
127402
				yy_current_state = (int) yy_def[yy_current_state];
2277
127402
				if ( yy_current_state >= 1107 )
2278
116214
					yy_c = yy_meta[(unsigned int) yy_c];
2279
				}
2280
152408
			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2281
152408
			*(yy_state_ptr)++ = yy_current_state;
2282
152408
			++yy_cp;
2283
216014
			}
2284
152408
		while ( yy_base[yy_current_state] != 3975 );
2285
2286
yy_find_action:
2287
63606
		yy_current_state = *--(yy_state_ptr);
2288
		(yy_lp) = yy_accept[yy_current_state];
2289
find_rule: /* we branch to this label when backing up */
2290
74768
		for ( ; ; ) /* until we find what rule we matched */
2291
			{
2292

149536
			if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] )
2293
				{
2294
63606
				yy_act = yy_acclist[(yy_lp)];
2295
					{
2296
63606
					(yy_full_match) = yy_cp;
2297
					break;
2298
					}
2299
				}
2300
11162
			--yy_cp;
2301
11162
			yy_current_state = *--(yy_state_ptr);
2302
			(yy_lp) = yy_accept[yy_current_state];
2303
			}
2304
2305
63606
		YY_DO_BEFORE_ACTION;
2306
2307
do_action:	/* This label is used only to access EOF actions. */
2308
2309





































































63610
		switch ( yy_act )
2310
	{ /* beginning of action switch */
2311
2312
case 1:
2313
YY_RULE_SETUP
2314
#line 144 "scan.l"
2315
indented_code = true; BEGIN(CODEBLOCK);
2316
	YY_BREAK
2317
case 2:
2318
YY_RULE_SETUP
2319
#line 145 "scan.l"
2320
ACTION_ECHO; yy_push_state( COMMENT );
2321
	YY_BREAK
2322
case 3:
2323
YY_RULE_SETUP
2324
#line 146 "scan.l"
2325
yy_push_state( LINEDIR );
2326
	YY_BREAK
2327
case 4:
2328
YY_RULE_SETUP
2329
#line 147 "scan.l"
2330
return SCDECL;
2331
	YY_BREAK
2332
case 5:
2333
YY_RULE_SETUP
2334
#line 148 "scan.l"
2335
return XSCDECL;
2336
	YY_BREAK
2337
case 6:
2338
/* rule 6 can match eol */
2339
YY_RULE_SETUP
2340
#line 149 "scan.l"
2341
{
2342
			++linenum;
2343
			line_directive_out( (FILE *) 0, 1 );
2344
			indented_code = false;
2345
			BEGIN(CODEBLOCK);
2346
			}
2347
	YY_BREAK
2348
case 7:
2349
/* rule 7 can match eol */
2350
YY_RULE_SETUP
2351
#line 155 "scan.l"
2352
{
2353
                brace_start_line = linenum;
2354
                ++linenum;
2355
                buf_linedir( &top_buf, infilename?infilename:"<stdin>", linenum);
2356
                brace_depth = 1;
2357
                yy_push_state(CODEBLOCK_MATCH_BRACE);
2358
            }
2359
	YY_BREAK
2360
case 8:
2361
YY_RULE_SETUP
2362
#line 163 "scan.l"
2363
synerr( _("malformed '%top' directive") );
2364
	YY_BREAK
2365
case 9:
2366
YY_RULE_SETUP
2367
#line 165 "scan.l"
2368
/* discard */
2369
	YY_BREAK
2370
case 10:
2371
YY_RULE_SETUP
2372
#line 167 "scan.l"
2373
{
2374
			sectnum = 2;
2375
			bracelevel = 0;
2376
			mark_defs1();
2377
			line_directive_out( (FILE *) 0, 1 );
2378
			BEGIN(SECT2PROLOG);
2379
			return SECTEND;
2380
			}
2381
	YY_BREAK
2382
case 11:
2383
/* rule 11 can match eol */
2384
YY_RULE_SETUP
2385
#line 176 "scan.l"
2386
yytext_is_array = false; ++linenum;
2387
	YY_BREAK
2388
case 12:
2389
/* rule 12 can match eol */
2390
YY_RULE_SETUP
2391
#line 177 "scan.l"
2392
yytext_is_array = true; ++linenum;
2393
	YY_BREAK
2394
case 13:
2395
YY_RULE_SETUP
2396
#line 179 "scan.l"
2397
BEGIN(OPTION); return OPTION_OP;
2398
	YY_BREAK
2399
case 14:
2400
/* rule 14 can match eol */
2401
YY_RULE_SETUP
2402
#line 181 "scan.l"
2403
++linenum; /* ignore */
2404
	YY_BREAK
2405
case 15:
2406
/* rule 15 can match eol */
2407
YY_RULE_SETUP
2408
#line 182 "scan.l"
2409
++linenum;	/* ignore */
2410
	YY_BREAK
2411
/* xgettext: no-c-format */
2412
case 16:
2413
/* rule 16 can match eol */
2414
YY_RULE_SETUP
2415
#line 185 "scan.l"
2416
synerr( _( "unrecognized '%' directive" ) );
2417
	YY_BREAK
2418
case 17:
2419
YY_RULE_SETUP
2420
#line 187 "scan.l"
2421
{
2422
			if(yyleng < MAXLINE)
2423
        		 {
2424
			strlcpy( nmstr, yytext, sizeof nmstr );
2425
			 }
2426
			else
2427
			 {
2428
			   synerr( _("Definition name too long\n"));
2429
			   FLEX_EXIT(EXIT_FAILURE);
2430
			 }
2431
2432
			didadef = false;
2433
			BEGIN(PICKUPDEF);
2434
			}
2435
	YY_BREAK
2436
case 18:
2437
YY_RULE_SETUP
2438
#line 202 "scan.l"
2439
RETURNNAME;
2440
	YY_BREAK
2441
case 19:
2442
/* rule 19 can match eol */
2443
YY_RULE_SETUP
2444
#line 203 "scan.l"
2445
++linenum; /* allows blank lines in section 1 */
2446
	YY_BREAK
2447
case 20:
2448
/* rule 20 can match eol */
2449
YY_RULE_SETUP
2450
#line 204 "scan.l"
2451
ACTION_ECHO; ++linenum; /* maybe end of comment line */
2452
	YY_BREAK
2453
2454
2455
case 21:
2456
YY_RULE_SETUP
2457
#line 209 "scan.l"
2458
ACTION_ECHO; yy_pop_state();
2459
	YY_BREAK
2460
case 22:
2461
YY_RULE_SETUP
2462
#line 210 "scan.l"
2463
ACTION_ECHO;
2464
	YY_BREAK
2465
case 23:
2466
YY_RULE_SETUP
2467
#line 211 "scan.l"
2468
ACTION_ECHO_QSTART;
2469
	YY_BREAK
2470
case 24:
2471
YY_RULE_SETUP
2472
#line 212 "scan.l"
2473
ACTION_ECHO_QEND;
2474
	YY_BREAK
2475
case 25:
2476
YY_RULE_SETUP
2477
#line 213 "scan.l"
2478
ACTION_ECHO;
2479
	YY_BREAK
2480
case 26:
2481
/* rule 26 can match eol */
2482
YY_RULE_SETUP
2483
#line 214 "scan.l"
2484
++linenum; ACTION_ECHO;
2485
	YY_BREAK
2486
2487
2488
/* This is the same as COMMENT, but is discarded rather than output. */
2489
case 27:
2490
YY_RULE_SETUP
2491
#line 219 "scan.l"
2492
yy_pop_state();
2493
	YY_BREAK
2494
case 28:
2495
YY_RULE_SETUP
2496
#line 220 "scan.l"
2497
;
2498
	YY_BREAK
2499
case 29:
2500
YY_RULE_SETUP
2501
#line 221 "scan.l"
2502
;
2503
	YY_BREAK
2504
case 30:
2505
/* rule 30 can match eol */
2506
YY_RULE_SETUP
2507
#line 222 "scan.l"
2508
++linenum;
2509
	YY_BREAK
2510
2511
2512
case 31:
2513
YY_RULE_SETUP
2514
#line 226 "scan.l"
2515
yy_pop_state();
2516
	YY_BREAK
2517
case 32:
2518
YY_RULE_SETUP
2519
#line 227 "scan.l"
2520
;
2521
	YY_BREAK
2522
case 33:
2523
/* rule 33 can match eol */
2524
YY_RULE_SETUP
2525
#line 228 "scan.l"
2526
++linenum;
2527
	YY_BREAK
2528
2529
2530
case 34:
2531
/* rule 34 can match eol */
2532
YY_RULE_SETUP
2533
#line 232 "scan.l"
2534
yy_pop_state();
2535
	YY_BREAK
2536
case 35:
2537
YY_RULE_SETUP
2538
#line 233 "scan.l"
2539
linenum = myctoi( yytext );
2540
	YY_BREAK
2541
case 36:
2542
YY_RULE_SETUP
2543
#line 235 "scan.l"
2544
{
2545
			free( (void *) infilename );
2546
			infilename = copy_string( yytext + 1 );
2547
			infilename[strlen( infilename ) - 1] = '\0';
2548
			}
2549
	YY_BREAK
2550
case 37:
2551
YY_RULE_SETUP
2552
#line 240 "scan.l"
2553
/* ignore spurious characters */
2554
	YY_BREAK
2555
2556
2557
case 38:
2558
/* rule 38 can match eol */
2559
YY_RULE_SETUP
2560
#line 244 "scan.l"
2561
++linenum; BEGIN(INITIAL);
2562
	YY_BREAK
2563
case 39:
2564
YY_RULE_SETUP
2565
#line 246 "scan.l"
2566
ACTION_ECHO_QSTART;
2567
	YY_BREAK
2568
case 40:
2569
YY_RULE_SETUP
2570
#line 247 "scan.l"
2571
ACTION_ECHO_QEND;
2572
	YY_BREAK
2573
case 41:
2574
YY_RULE_SETUP
2575
#line 248 "scan.l"
2576
ACTION_ECHO;
2577
	YY_BREAK
2578
case 42:
2579
/* rule 42 can match eol */
2580
YY_RULE_SETUP
2581
#line 250 "scan.l"
2582
{
2583
			++linenum;
2584
			ACTION_ECHO;
2585
			if ( indented_code )
2586
				BEGIN(INITIAL);
2587
			}
2588
	YY_BREAK
2589
2590
2591
case 43:
2592
YY_RULE_SETUP
2593
#line 259 "scan.l"
2594
{
2595
                if( --brace_depth == 0){
2596
                    /* TODO: Matched. */
2597
                    yy_pop_state();
2598
                }else
2599
                    buf_strnappend(&top_buf, yytext, yyleng);
2600
            }
2601
	YY_BREAK
2602
case 44:
2603
YY_RULE_SETUP
2604
#line 267 "scan.l"
2605
{
2606
                brace_depth++;
2607
                buf_strnappend(&top_buf, yytext, yyleng);
2608
            }
2609
	YY_BREAK
2610
case 45:
2611
/* rule 45 can match eol */
2612
YY_RULE_SETUP
2613
#line 272 "scan.l"
2614
{
2615
                ++linenum;
2616
                buf_strnappend(&top_buf, yytext, yyleng);
2617
            }
2618
	YY_BREAK
2619
case 46:
2620
YY_RULE_SETUP
2621
#line 277 "scan.l"
2622
buf_strnappend(&top_buf, escaped_qstart, strlen(escaped_qstart));
2623
	YY_BREAK
2624
case 47:
2625
YY_RULE_SETUP
2626
#line 278 "scan.l"
2627
buf_strnappend(&top_buf, escaped_qend, strlen(escaped_qend));
2628
	YY_BREAK
2629
case 48:
2630
YY_RULE_SETUP
2631
#line 280 "scan.l"
2632
{
2633
                buf_strnappend(&top_buf, yytext, yyleng);
2634
               }
2635
	YY_BREAK
2636
case YY_STATE_EOF(CODEBLOCK_MATCH_BRACE):
2637
#line 284 "scan.l"
2638
{
2639
                linenum = brace_start_line;
2640
                synerr(_("Unmatched '{'"));
2641
                yyterminate();
2642
                }
2643
	YY_BREAK
2644
2645
2646
case 49:
2647
YY_RULE_SETUP
2648
#line 293 "scan.l"
2649
/* separates name and definition */
2650
	YY_BREAK
2651
case 50:
2652
YY_RULE_SETUP
2653
#line 295 "scan.l"
2654
{
2655
 		        if(yyleng < MAXLINE)
2656
 		         {
2657
			strlcpy( (char *) nmdef, yytext, sizeof nmdef );
2658
 		         }
2659
 		        else
2660
 		         {
2661
 		           format_synerr( _("Definition value for {%s} too long\n"), nmstr);
2662
 		           FLEX_EXIT(EXIT_FAILURE);
2663
			 }
2664
			/* Skip trailing whitespace. */
2665
			for ( i = strlen( (char *) nmdef ) - 1;
2666
			      i >= 0 && (nmdef[i] == ' ' || nmdef[i] == '\t');
2667
			      --i )
2668
				;
2669
2670
			nmdef[i + 1] = '\0';
2671
2672
			ndinstal( nmstr, nmdef );
2673
			didadef = true;
2674
			}
2675
	YY_BREAK
2676
case 51:
2677
/* rule 51 can match eol */
2678
YY_RULE_SETUP
2679
#line 317 "scan.l"
2680
{
2681
			if ( ! didadef )
2682
				synerr( _( "incomplete name definition" ) );
2683
			BEGIN(INITIAL);
2684
			++linenum;
2685
			}
2686
	YY_BREAK
2687
2688
2689
case 52:
2690
/* rule 52 can match eol */
2691
YY_RULE_SETUP
2692
#line 327 "scan.l"
2693
++linenum; BEGIN(INITIAL);
2694
	YY_BREAK
2695
case 53:
2696
YY_RULE_SETUP
2697
#line 328 "scan.l"
2698
option_sense = true;
2699
	YY_BREAK
2700
case 54:
2701
YY_RULE_SETUP
2702
#line 330 "scan.l"
2703
return '=';
2704
	YY_BREAK
2705
case 55:
2706
YY_RULE_SETUP
2707
#line 332 "scan.l"
2708
option_sense = ! option_sense;
2709
	YY_BREAK
2710
case 56:
2711
YY_RULE_SETUP
2712
#line 334 "scan.l"
2713
csize = option_sense ? 128 : 256;
2714
	YY_BREAK
2715
case 57:
2716
YY_RULE_SETUP
2717
#line 335 "scan.l"
2718
csize = option_sense ? 256 : 128;
2719
	YY_BREAK
2720
case 58:
2721
YY_RULE_SETUP
2722
#line 337 "scan.l"
2723
long_align = option_sense;
2724
	YY_BREAK
2725
case 59:
2726
YY_RULE_SETUP
2727
#line 338 "scan.l"
2728
{
2729
			ACTION_M4_IFDEF( "M4""_YY_ALWAYS_INTERACTIVE", option_sense );
2730
            interactive = option_sense;
2731
			}
2732
	YY_BREAK
2733
case 60:
2734
YY_RULE_SETUP
2735
#line 342 "scan.l"
2736
yytext_is_array = option_sense;
2737
	YY_BREAK
2738
case 61:
2739
YY_RULE_SETUP
2740
#line 343 "scan.l"
2741
ansi_func_defs = option_sense;
2742
	YY_BREAK
2743
case 62:
2744
YY_RULE_SETUP
2745
#line 344 "scan.l"
2746
ansi_func_protos = option_sense;
2747
	YY_BREAK
2748
case 63:
2749
YY_RULE_SETUP
2750
#line 345 "scan.l"
2751
backing_up_report = option_sense;
2752
	YY_BREAK
2753
case 64:
2754
YY_RULE_SETUP
2755
#line 346 "scan.l"
2756
interactive = ! option_sense;
2757
	YY_BREAK
2758
case 65:
2759
YY_RULE_SETUP
2760
#line 347 "scan.l"
2761
bison_bridge_lval = option_sense;
2762
	YY_BREAK
2763
case 66:
2764
YY_RULE_SETUP
2765
#line 348 "scan.l"
2766
{ if((bison_bridge_lloc = option_sense))
2767
                            bison_bridge_lval = true;
2768
                     }
2769
	YY_BREAK
2770
case 67:
2771
YY_RULE_SETUP
2772
#line 351 "scan.l"
2773
C_plus_plus = option_sense;
2774
	YY_BREAK
2775
case 68:
2776
YY_RULE_SETUP
2777
#line 352 "scan.l"
2778
sf_set_case_ins(!option_sense);
2779
	YY_BREAK
2780
case 69:
2781
YY_RULE_SETUP
2782
#line 353 "scan.l"
2783
sf_set_case_ins(option_sense);
2784
	YY_BREAK
2785
case 70:
2786
YY_RULE_SETUP
2787
#line 354 "scan.l"
2788
ddebug = option_sense;
2789
	YY_BREAK
2790
case 71:
2791
YY_RULE_SETUP
2792
#line 355 "scan.l"
2793
spprdflt = ! option_sense;
2794
	YY_BREAK
2795
case 72:
2796
YY_RULE_SETUP
2797
#line 356 "scan.l"
2798
useecs = option_sense;
2799
	YY_BREAK
2800
case 73:
2801
YY_RULE_SETUP
2802
#line 357 "scan.l"
2803
{
2804
			useecs = usemecs = false;
2805
			use_read = fullspd = true;
2806
			}
2807
	YY_BREAK
2808
case 74:
2809
YY_RULE_SETUP
2810
#line 361 "scan.l"
2811
{
2812
			useecs = usemecs = false;
2813
			use_read = fulltbl = true;
2814
			}
2815
	YY_BREAK
2816
case 75:
2817
YY_RULE_SETUP
2818
#line 365 "scan.l"
2819
ACTION_IFDEF("YY_NO_INPUT", ! option_sense);
2820
	YY_BREAK
2821
case 76:
2822
YY_RULE_SETUP
2823
#line 366 "scan.l"
2824
interactive = option_sense;
2825
	YY_BREAK
2826
case 77:
2827
YY_RULE_SETUP
2828
#line 367 "scan.l"
2829
lex_compat = option_sense;
2830
	YY_BREAK
2831
case 78:
2832
YY_RULE_SETUP
2833
#line 368 "scan.l"
2834
posix_compat = option_sense;
2835
	YY_BREAK
2836
case 79:
2837
YY_RULE_SETUP
2838
#line 369 "scan.l"
2839
{
2840
			ACTION_M4_IFDEF( "M4""_YY_MAIN", option_sense);
2841
            /* Override yywrap */
2842
            if( option_sense == true )
2843
                do_yywrap = false;
2844
			}
2845
	YY_BREAK
2846
case 80:
2847
YY_RULE_SETUP
2848
#line 375 "scan.l"
2849
usemecs = option_sense;
2850
	YY_BREAK
2851
case 81:
2852
YY_RULE_SETUP
2853
#line 376 "scan.l"
2854
{
2855
			ACTION_M4_IFDEF( "M4""_YY_NEVER_INTERACTIVE", option_sense );
2856
            interactive = !option_sense;
2857
			}
2858
	YY_BREAK
2859
case 82:
2860
YY_RULE_SETUP
2861
#line 380 "scan.l"
2862
performance_report += option_sense ? 1 : -1;
2863
	YY_BREAK
2864
case 83:
2865
YY_RULE_SETUP
2866
#line 381 "scan.l"
2867
yytext_is_array = ! option_sense;
2868
	YY_BREAK
2869
case 84:
2870
YY_RULE_SETUP
2871
#line 382 "scan.l"
2872
use_read = option_sense;
2873
	YY_BREAK
2874
case 85:
2875
YY_RULE_SETUP
2876
#line 383 "scan.l"
2877
reentrant = option_sense;
2878
	YY_BREAK
2879
case 86:
2880
YY_RULE_SETUP
2881
#line 384 "scan.l"
2882
reject_really_used = option_sense;
2883
	YY_BREAK
2884
case 87:
2885
YY_RULE_SETUP
2886
#line 385 "scan.l"
2887
ACTION_M4_IFDEF( "M4""_YY_STACK_USED", option_sense );
2888
	YY_BREAK
2889
case 88:
2890
YY_RULE_SETUP
2891
#line 386 "scan.l"
2892
do_stdinit = option_sense;
2893
	YY_BREAK
2894
case 89:
2895
YY_RULE_SETUP
2896
#line 387 "scan.l"
2897
use_stdout = option_sense;
2898
	YY_BREAK
2899
case 90:
2900
YY_RULE_SETUP
2901
#line 388 "scan.l"
2902
ACTION_IFDEF("YY_NO_UNISTD_H", ! option_sense);
2903
	YY_BREAK
2904
case 91:
2905
YY_RULE_SETUP
2906
#line 389 "scan.l"
2907
ACTION_M4_IFDEF("M4""_YY_NO_UNPUT", ! option_sense);
2908
	YY_BREAK
2909
case 92:
2910
YY_RULE_SETUP
2911
#line 390 "scan.l"
2912
printstats = option_sense;
2913
	YY_BREAK
2914
case 93:
2915
YY_RULE_SETUP
2916
#line 391 "scan.l"
2917
nowarn = ! option_sense;
2918
	YY_BREAK
2919
case 94:
2920
YY_RULE_SETUP
2921
#line 392 "scan.l"
2922
do_yylineno = option_sense; ACTION_M4_IFDEF("M4""_YY_USE_LINENO", option_sense);
2923
	YY_BREAK
2924
case 95:
2925
YY_RULE_SETUP
2926
#line 393 "scan.l"
2927
yymore_really_used = option_sense;
2928
	YY_BREAK
2929
case 96:
2930
YY_RULE_SETUP
2931
#line 394 "scan.l"
2932
do_yywrap = option_sense;
2933
	YY_BREAK
2934
case 97:
2935
YY_RULE_SETUP
2936
#line 396 "scan.l"
2937
ACTION_M4_IFDEF("M4""_YY_NO_PUSH_STATE", ! option_sense);
2938
	YY_BREAK
2939
case 98:
2940
YY_RULE_SETUP
2941
#line 397 "scan.l"
2942
ACTION_M4_IFDEF("M4""_YY_NO_POP_STATE", ! option_sense);
2943
	YY_BREAK
2944
case 99:
2945
YY_RULE_SETUP
2946
#line 398 "scan.l"
2947
ACTION_M4_IFDEF("M4""_YY_NO_TOP_STATE", ! option_sense);
2948
	YY_BREAK
2949
case 100:
2950
YY_RULE_SETUP
2951
#line 400 "scan.l"
2952
ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BUFFER", ! option_sense);
2953
	YY_BREAK
2954
case 101:
2955
YY_RULE_SETUP
2956
#line 401 "scan.l"
2957
ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BYTES", ! option_sense);
2958
	YY_BREAK
2959
case 102:
2960
YY_RULE_SETUP
2961
#line 402 "scan.l"
2962
ACTION_M4_IFDEF("M4""_YY_NO_SCAN_STRING", ! option_sense);
2963
	YY_BREAK
2964
case 103:
2965
YY_RULE_SETUP
2966
#line 404 "scan.l"
2967
ACTION_M4_IFDEF("M4""_YY_NO_FLEX_ALLOC", ! option_sense);
2968
	YY_BREAK
2969
case 104:
2970
YY_RULE_SETUP
2971
#line 405 "scan.l"
2972
ACTION_M4_IFDEF("M4""_YY_NO_FLEX_REALLOC", ! option_sense);
2973
	YY_BREAK
2974
case 105:
2975
YY_RULE_SETUP
2976
#line 406 "scan.l"
2977
ACTION_M4_IFDEF("M4""_YY_NO_FLEX_FREE", ! option_sense);
2978
	YY_BREAK
2979
case 106:
2980
YY_RULE_SETUP
2981
#line 408 "scan.l"
2982
ACTION_M4_IFDEF("M4""_YY_NO_GET_DEBUG", ! option_sense);
2983
	YY_BREAK
2984
case 107:
2985
YY_RULE_SETUP
2986
#line 409 "scan.l"
2987
ACTION_M4_IFDEF("M4""_YY_NO_SET_DEBUG", ! option_sense);
2988
	YY_BREAK
2989
case 108:
2990
YY_RULE_SETUP
2991
#line 410 "scan.l"
2992
ACTION_M4_IFDEF("M4""_YY_NO_GET_EXTRA", ! option_sense);
2993
	YY_BREAK
2994
case 109:
2995
YY_RULE_SETUP
2996
#line 411 "scan.l"
2997
ACTION_M4_IFDEF("M4""_YY_NO_SET_EXTRA", ! option_sense);
2998
	YY_BREAK
2999
case 110:
3000
YY_RULE_SETUP
3001
#line 412 "scan.l"
3002
ACTION_M4_IFDEF("M4""_YY_NO_GET_LENG", ! option_sense);
3003
	YY_BREAK
3004
case 111:
3005
YY_RULE_SETUP
3006
#line 413 "scan.l"
3007
ACTION_M4_IFDEF("M4""_YY_NO_GET_TEXT", ! option_sense);
3008
	YY_BREAK
3009
case 112:
3010
YY_RULE_SETUP
3011
#line 414 "scan.l"
3012
ACTION_M4_IFDEF("M4""_YY_NO_GET_LINENO", ! option_sense);
3013
	YY_BREAK
3014
case 113:
3015
YY_RULE_SETUP
3016
#line 415 "scan.l"
3017
ACTION_M4_IFDEF("M4""_YY_NO_SET_LINENO", ! option_sense);
3018
	YY_BREAK
3019
case 114:
3020
YY_RULE_SETUP
3021
#line 416 "scan.l"
3022
ACTION_M4_IFDEF("M4""_YY_NO_GET_IN", ! option_sense);
3023
	YY_BREAK
3024
case 115:
3025
YY_RULE_SETUP
3026
#line 417 "scan.l"
3027
ACTION_M4_IFDEF("M4""_YY_NO_SET_IN", ! option_sense);
3028
	YY_BREAK
3029
case 116:
3030
YY_RULE_SETUP
3031
#line 418 "scan.l"
3032
ACTION_M4_IFDEF("M4""_YY_NO_GET_OUT", ! option_sense);
3033
	YY_BREAK
3034
case 117:
3035
YY_RULE_SETUP
3036
#line 419 "scan.l"
3037
ACTION_M4_IFDEF("M4""_YY_NO_SET_OUT", ! option_sense);
3038
	YY_BREAK
3039
case 118:
3040
YY_RULE_SETUP
3041
#line 420 "scan.l"
3042
ACTION_M4_IFDEF("M4""_YY_NO_GET_LVAL", ! option_sense);
3043
	YY_BREAK
3044
case 119:
3045
YY_RULE_SETUP
3046
#line 421 "scan.l"
3047
ACTION_M4_IFDEF("M4""_YY_NO_SET_LVAL", ! option_sense);
3048
	YY_BREAK
3049
case 120:
3050
YY_RULE_SETUP
3051
#line 422 "scan.l"
3052
ACTION_M4_IFDEF("M4""_YY_NO_GET_LLOC", ! option_sense);
3053
	YY_BREAK
3054
case 121:
3055
YY_RULE_SETUP
3056
#line 423 "scan.l"
3057
ACTION_M4_IFDEF("M4""_YY_NO_SET_LLOC", ! option_sense);
3058
	YY_BREAK
3059
case 122:
3060
YY_RULE_SETUP
3061
#line 425 "scan.l"
3062
return OPT_EXTRA_TYPE;
3063
	YY_BREAK
3064
case 123:
3065
YY_RULE_SETUP
3066
#line 426 "scan.l"
3067
return OPT_OUTFILE;
3068
	YY_BREAK
3069
case 124:
3070
YY_RULE_SETUP
3071
#line 427 "scan.l"
3072
return OPT_PREFIX;
3073
	YY_BREAK
3074
case 125:
3075
YY_RULE_SETUP
3076
#line 428 "scan.l"
3077
return OPT_YYCLASS;
3078
	YY_BREAK
3079
case 126:
3080
YY_RULE_SETUP
3081
#line 429 "scan.l"
3082
return OPT_HEADER;
3083
	YY_BREAK
3084
case 127:
3085
YY_RULE_SETUP
3086
#line 430 "scan.l"
3087
return OPT_TABLES;
3088
	YY_BREAK
3089
case 128:
3090
YY_RULE_SETUP
3091
#line 431 "scan.l"
3092
{
3093
                    tablesverify = option_sense;
3094
                    if(!tablesext && option_sense)
3095
                        tablesext = true;
3096
                    }
3097
	YY_BREAK
3098
case 129:
3099
YY_RULE_SETUP
3100
#line 438 "scan.l"
3101
{
3102
			if(yyleng-1 < MAXLINE)
3103
        		 {
3104
			strlcpy( nmstr, yytext + 1, sizeof nmstr );
3105
			 }
3106
			else
3107
			 {
3108
			   synerr( _("Option line too long\n"));
3109
			   FLEX_EXIT(EXIT_FAILURE);
3110
			 }
3111
			if (nmstr[strlen( nmstr ) - 1] == '"')
3112
				nmstr[strlen( nmstr ) - 1] = '\0';
3113
			return NAME;
3114
			}
3115
	YY_BREAK
3116
case 130:
3117
YY_RULE_SETUP
3118
#line 453 "scan.l"
3119
{
3120
			format_synerr( _( "unrecognized %%option: %s" ),
3121
				yytext );
3122
			BEGIN(RECOVER);
3123
			}
3124
	YY_BREAK
3125
3126
case 131:
3127
/* rule 131 can match eol */
3128
YY_RULE_SETUP
3129
#line 460 "scan.l"
3130
++linenum; BEGIN(INITIAL);
3131
	YY_BREAK
3132
3133
case 132:
3134
YY_RULE_SETUP
3135
#line 464 "scan.l"
3136
++bracelevel; yyless( 2 );	/* eat only %{ */
3137
	YY_BREAK
3138
case 133:
3139
YY_RULE_SETUP
3140
#line 465 "scan.l"
3141
--bracelevel; yyless( 2 );	/* eat only %} */
3142
	YY_BREAK
3143
case 134:
3144
YY_RULE_SETUP
3145
#line 467 "scan.l"
3146
ACTION_ECHO;	/* indented code in prolog */
3147
	YY_BREAK
3148
case 135:
3149
YY_RULE_SETUP
3150
#line 469 "scan.l"
3151
{	/* non-indented code */
3152
			if ( bracelevel <= 0 )
3153
				{ /* not in %{ ... %} */
3154
				yyless( 0 );	/* put it all back */
3155
				yy_set_bol( 1 );
3156
				mark_prolog();
3157
				BEGIN(SECT2);
3158
				}
3159
			else
3160
				ACTION_ECHO;
3161
			}
3162
	YY_BREAK
3163
case 136:
3164
YY_RULE_SETUP
3165
#line 481 "scan.l"
3166
ACTION_ECHO;
3167
	YY_BREAK
3168
case 137:
3169
/* rule 137 can match eol */
3170
YY_RULE_SETUP
3171
#line 482 "scan.l"
3172
++linenum; ACTION_ECHO;
3173
	YY_BREAK
3174
case YY_STATE_EOF(SECT2PROLOG):
3175
#line 484 "scan.l"
3176
{
3177
			mark_prolog();
3178
			sectnum = 0;
3179
			yyterminate(); /* to stop the parser */
3180
			}
3181
	YY_BREAK
3182
3183
3184
case 138:
3185
/* rule 138 can match eol */
3186
YY_RULE_SETUP
3187
#line 492 "scan.l"
3188
++linenum; /* allow blank lines in section 2 */
3189
	YY_BREAK
3190
case 139:
3191
YY_RULE_SETUP
3192
#line 494 "scan.l"
3193
{
3194
			indented_code = false;
3195
			doing_codeblock = true;
3196
			bracelevel = 1;
3197
			BEGIN(PERCENT_BRACE_ACTION);
3198
			}
3199
	YY_BREAK
3200
case 140:
3201
YY_RULE_SETUP
3202
#line 501 "scan.l"
3203
{
3204
                        /* Allow "<" to appear in (?x) patterns. */
3205
                        if (!sf_skip_ws())
3206
                            BEGIN(SC);
3207
                        return '<';
3208
                    }
3209
	YY_BREAK
3210
case 141:
3211
YY_RULE_SETUP
3212
#line 507 "scan.l"
3213
return '^';
3214
	YY_BREAK
3215
case 142:
3216
YY_RULE_SETUP
3217
#line 508 "scan.l"
3218
BEGIN(QUOTE); return '"';
3219
	YY_BREAK
3220
case 143:
3221
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3222
(yy_c_buf_p) = yy_cp = yy_bp + 1;
3223
YY_DO_BEFORE_ACTION; /* set up yytext again */
3224
YY_RULE_SETUP
3225
#line 509 "scan.l"
3226
{
3227
			BEGIN(NUM);
3228
			if ( lex_compat || posix_compat )
3229
				return BEGIN_REPEAT_POSIX;
3230
			else
3231
				return BEGIN_REPEAT_FLEX;
3232
			}
3233
	YY_BREAK
3234
case 144:
3235
/* rule 144 can match eol */
3236
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3237
YY_LINENO_REWIND_TO(yy_bp + 1);
3238
(yy_c_buf_p) = yy_cp = yy_bp + 1;
3239
YY_DO_BEFORE_ACTION; /* set up yytext again */
3240
YY_RULE_SETUP
3241
#line 516 "scan.l"
3242
return '$';
3243
	YY_BREAK
3244
case 145:
3245
YY_RULE_SETUP
3246
#line 518 "scan.l"
3247
{
3248
			bracelevel = 1;
3249
			BEGIN(PERCENT_BRACE_ACTION);
3250
3251
			if ( in_rule )
3252
				{
3253
				doing_rule_action = true;
3254
				in_rule = false;
3255
				return '\n';
3256
				}
3257
			}
3258
	YY_BREAK
3259
case 146:
3260
/* rule 146 can match eol */
3261
YY_RULE_SETUP
3262
#line 529 "scan.l"
3263
{
3264
                        if (sf_skip_ws()){
3265
                            /* We're in the middle of a (?x: ) pattern. */
3266
                            /* Push back everything starting at the "|" */
3267
                            size_t amt;
3268
                            amt = strchr (yytext, '|') - yytext;
3269
                            yyless(amt);
3270
                        }
3271
                        else {
3272
                            continued_action = true;
3273
                            ++linenum;
3274
                            return '\n';
3275
                        }
3276
                    }
3277
	YY_BREAK
3278
case 147:
3279
YY_RULE_SETUP
3280
#line 544 "scan.l"
3281
{
3282
3283
                if (sf_skip_ws()){
3284
                    /* We're in the middle of a (?x: ) pattern. */
3285
                    yy_push_state(COMMENT_DISCARD);
3286
                }
3287
                else{
3288
                    yyless( yyleng - 2 );	/* put back '/', '*' */
3289
                    bracelevel = 0;
3290
                    continued_action = false;
3291
                    BEGIN(ACTION);
3292
                }
3293
			}
3294
	YY_BREAK
3295
case 148:
3296
YY_RULE_SETUP
3297
#line 558 "scan.l"
3298
/* allow indented rules */ ;
3299
	YY_BREAK
3300
case 149:
3301
YY_RULE_SETUP
3302
#line 560 "scan.l"
3303
{
3304
            if (sf_skip_ws()){
3305
                /* We're in the middle of a (?x: ) pattern. */
3306
            }
3307
            else{
3308
                /* This rule is separate from the one below because
3309
                 * otherwise we get variable trailing context, so
3310
                 * we can't build the scanner using -{f,F}.
3311
                 */
3312
                bracelevel = 0;
3313
                continued_action = false;
3314
                BEGIN(ACTION);
3315
3316
                if ( in_rule )
3317
                    {
3318
                    doing_rule_action = true;
3319
                    in_rule = false;
3320
                    return '\n';
3321
                    }
3322
            }
3323
			}
3324
	YY_BREAK
3325
case 150:
3326
/* rule 150 can match eol */
3327
YY_RULE_SETUP
3328
#line 582 "scan.l"
3329
{
3330
            if (sf_skip_ws()){
3331
                /* We're in the middle of a (?x: ) pattern. */
3332
                ++linenum;
3333
            }
3334
            else{
3335
                bracelevel = 0;
3336
                continued_action = false;
3337
                BEGIN(ACTION);
3338
                unput( '\n' );	/* so <ACTION> sees it */
3339
3340
                if ( in_rule )
3341
                    {
3342
                    doing_rule_action = true;
3343
                    in_rule = false;
3344
                    return '\n';
3345
                    }
3346
            }
3347
			}
3348
	YY_BREAK
3349
case 151:
3350
#line 603 "scan.l"
3351
case 152:
3352
YY_RULE_SETUP
3353
#line 603 "scan.l"
3354
return EOF_OP;
3355
	YY_BREAK
3356
case 153:
3357
YY_RULE_SETUP
3358
#line 605 "scan.l"
3359
{
3360
			sectnum = 3;
3361
			BEGIN(SECT3);
3362
			outn("/* Begin user sect3 */");
3363
			yyterminate(); /* to stop the parser */
3364
			}
3365
	YY_BREAK
3366
case 154:
3367
YY_RULE_SETUP
3368
#line 612 "scan.l"
3369
{
3370
			int cclval;
3371
3372
			if(yyleng < MAXLINE)
3373
        		 {
3374
			strlcpy( nmstr, yytext, sizeof nmstr );
3375
			 }
3376
			else
3377
			 {
3378
			   synerr( _("Input line too long\n"));
3379
			   FLEX_EXIT(EXIT_FAILURE);
3380
			 }
3381
3382
			/* Check to see if we've already encountered this
3383
			 * ccl.
3384
			 */
3385
			if (0 /* <--- This "0" effectively disables the reuse of a
3386
                   * character class (purely based on its source text).
3387
                   * The reason it was disabled is so yacc/bison can parse
3388
                   * ccl operations, such as ccl difference and union.
3389
                   */
3390
                &&  (cclval = ccllookup( (u_char *) nmstr )) != 0 )
3391
				{
3392
				if ( input() != ']' )
3393
					synerr( _( "bad character class" ) );
3394
3395
				yylval = cclval;
3396
				++cclreuse;
3397
				return PREVCCL;
3398
				}
3399
			else
3400
				{
3401
				/* We fudge a bit.  We know that this ccl will
3402
				 * soon be numbered as lastccl + 1 by cclinit.
3403
				 */
3404
				cclinstal( (u_char *) nmstr, lastccl + 1 );
3405
3406
				/* Push back everything but the leading bracket
3407
				 * so the ccl can be rescanned.
3408
				 */
3409
				yyless( 1 );
3410
3411
				BEGIN(FIRSTCCL);
3412
				return '[';
3413
				}
3414
			}
3415
	YY_BREAK
3416
case 155:
3417
YY_RULE_SETUP
3418
#line 658 "scan.l"
3419
return CCL_OP_DIFF;
3420
	YY_BREAK
3421
case 156:
3422
YY_RULE_SETUP
3423
#line 659 "scan.l"
3424
return CCL_OP_UNION;
3425
	YY_BREAK
3426
/* Check for :space: at the end of the rule so we don't
3427
     * wrap the expanded regex in '(' ')' -- breaking trailing
3428
     * context.
3429
     */
3430
case 157:
3431
/* rule 157 can match eol */
3432
YY_RULE_SETUP
3433
#line 666 "scan.l"
3434
{
3435
			u_char *nmdefptr;
3436
            int end_is_ws, end_ch;
3437
3438
            end_ch = yytext[yyleng-1];
3439
            end_is_ws = end_ch != '}' ? 1 : 0;
3440
3441
 			if(yyleng-1 < MAXLINE)
3442
         		 {
3443
			strlcpy( nmstr, yytext + 1, sizeof nmstr );
3444
 			 }
3445
 			else
3446
 			 {
3447
 			   synerr( _("Input line too long\n"));
3448
 			   FLEX_EXIT(EXIT_FAILURE);
3449
 			 }
3450
nmstr[yyleng - 2 - end_is_ws] = '\0';  /* chop trailing brace */
3451
3452
			if ( (nmdefptr = ndlookup( nmstr )) == 0 )
3453
				format_synerr(
3454
					_( "undefined definition {%s}" ),
3455
						nmstr );
3456
3457
			else
3458
				{ /* push back name surrounded by ()'s */
3459
				int len = strlen( (char *) nmdefptr );
3460
                if (end_is_ws)
3461
                    unput(end_ch);
3462
3463
				if ( lex_compat || nmdefptr[0] == '^' ||
3464
				     (len > 0 && nmdefptr[len - 1] == '$')
3465
                     || (end_is_ws && trlcontxt && !sf_skip_ws()))
3466
					{ /* don't use ()'s after all */
3467
					PUT_BACK_STRING((char *) nmdefptr, 0);
3468
3469
					if ( nmdefptr[0] == '^' )
3470
						BEGIN(CARETISBOL);
3471
					}
3472
3473
				else
3474
					{
3475
					unput(')');
3476
					PUT_BACK_STRING((char *) nmdefptr, 0);
3477
					unput('(');
3478
					}
3479
				}
3480
			}
3481
	YY_BREAK
3482
case 158:
3483
YY_RULE_SETUP
3484
#line 714 "scan.l"
3485
{
3486
                    if (sf_skip_ws())
3487
                        yy_push_state(COMMENT_DISCARD);
3488
                    else{
3489
                        /* Push back the "*" and return "/" as usual. */
3490
                        yyless(1);
3491
                        return '/';
3492
                    }
3493
                }
3494
	YY_BREAK
3495
case 159:
3496
YY_RULE_SETUP
3497
#line 724 "scan.l"
3498
{
3499
                    if (lex_compat || posix_compat){
3500
                        /* Push back the "?#" and treat it like a normal parens. */
3501
                        yyless(1);
3502
                        sf_push();
3503
                        return '(';
3504
                    }
3505
                    else
3506
                        yy_push_state(EXTENDED_COMMENT);
3507
                }
3508
	YY_BREAK
3509
case 160:
3510
YY_RULE_SETUP
3511
#line 734 "scan.l"
3512
{
3513
                    sf_push();
3514
                    if (lex_compat || posix_compat)
3515
                        /* Push back the "?" and treat it like a normal parens. */
3516
                        yyless(1);
3517
                    else
3518
                        BEGIN(GROUP_WITH_PARAMS);
3519
                    return '(';
3520
                }
3521
	YY_BREAK
3522
case 161:
3523
YY_RULE_SETUP
3524
#line 743 "scan.l"
3525
sf_push(); return '(';
3526
	YY_BREAK
3527
case 162:
3528
YY_RULE_SETUP
3529
#line 744 "scan.l"
3530
sf_pop(); return ')';
3531
	YY_BREAK
3532
case 163:
3533
YY_RULE_SETUP
3534
#line 746 "scan.l"
3535
return (unsigned char) yytext[0];
3536
	YY_BREAK
3537
case 164:
3538
YY_RULE_SETUP
3539
#line 747 "scan.l"
3540
RETURNCHAR;
3541
	YY_BREAK
3542
3543
3544
case 165:
3545
/* rule 165 can match eol */
3546
YY_RULE_SETUP
3547
#line 752 "scan.l"
3548
++linenum;	/* Allow blank lines & continuations */
3549
	YY_BREAK
3550
case 166:
3551
YY_RULE_SETUP
3552
#line 753 "scan.l"
3553
return (unsigned char) yytext[0];
3554
	YY_BREAK
3555
case 167:
3556
YY_RULE_SETUP
3557
#line 754 "scan.l"
3558
BEGIN(SECT2); return '>';
3559
	YY_BREAK
3560
case 168:
3561
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3562
(yy_c_buf_p) = yy_cp = yy_bp + 1;
3563
YY_DO_BEFORE_ACTION; /* set up yytext again */
3564
YY_RULE_SETUP
3565
#line 755 "scan.l"
3566
BEGIN(CARETISBOL); return '>';
3567
	YY_BREAK
3568
case 169:
3569
YY_RULE_SETUP
3570
#line 756 "scan.l"
3571
RETURNNAME;
3572
	YY_BREAK
3573
case 170:
3574
YY_RULE_SETUP
3575
#line 757 "scan.l"
3576
{
3577
			format_synerr( _( "bad <start condition>: %s" ),
3578
				yytext );
3579
			}
3580
	YY_BREAK
3581
3582
case 171:
3583
YY_RULE_SETUP
3584
#line 763 "scan.l"
3585
BEGIN(SECT2); return '^';
3586
	YY_BREAK
3587
3588
case 172:
3589
YY_RULE_SETUP
3590
#line 767 "scan.l"
3591
RETURNCHAR;
3592
	YY_BREAK
3593
case 173:
3594
YY_RULE_SETUP
3595
#line 768 "scan.l"
3596
BEGIN(SECT2); return '"';
3597
	YY_BREAK
3598
case 174:
3599
/* rule 174 can match eol */
3600
YY_RULE_SETUP
3601
#line 770 "scan.l"
3602
{
3603
			synerr( _( "missing quote" ) );
3604
			BEGIN(SECT2);
3605
			++linenum;
3606
			return '"';
3607
			}
3608
	YY_BREAK
3609
3610
3611
case 175:
3612
YY_RULE_SETUP
3613
#line 779 "scan.l"
3614
BEGIN(SECT2);
3615
	YY_BREAK
3616
case 176:
3617
YY_RULE_SETUP
3618
#line 780 "scan.l"
3619
BEGIN(GROUP_MINUS_PARAMS);
3620
	YY_BREAK
3621
case 177:
3622
YY_RULE_SETUP
3623
#line 781 "scan.l"
3624
sf_set_case_ins(1);
3625
	YY_BREAK
3626
case 178:
3627
YY_RULE_SETUP
3628
#line 782 "scan.l"
3629
sf_set_dot_all(1);
3630
	YY_BREAK
3631
case 179:
3632
YY_RULE_SETUP
3633
#line 783 "scan.l"
3634
sf_set_skip_ws(1);
3635
	YY_BREAK
3636
3637
3638
case 180:
3639
YY_RULE_SETUP
3640
#line 786 "scan.l"
3641
BEGIN(SECT2);
3642
	YY_BREAK
3643
case 181:
3644
YY_RULE_SETUP
3645
#line 787 "scan.l"
3646
sf_set_case_ins(0);
3647
	YY_BREAK
3648
case 182:
3649
YY_RULE_SETUP
3650
#line 788 "scan.l"
3651
sf_set_dot_all(0);
3652
	YY_BREAK
3653
case 183:
3654
YY_RULE_SETUP
3655
#line 789 "scan.l"
3656
sf_set_skip_ws(0);
3657
	YY_BREAK
3658
3659
3660
case 184:
3661
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3662
(yy_c_buf_p) = yy_cp = yy_bp + 1;
3663
YY_DO_BEFORE_ACTION; /* set up yytext again */
3664
YY_RULE_SETUP
3665
#line 793 "scan.l"
3666
BEGIN(CCL); return '^';
3667
	YY_BREAK
3668
case 185:
3669
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3670
(yy_c_buf_p) = yy_cp = yy_bp + 1;
3671
YY_DO_BEFORE_ACTION; /* set up yytext again */
3672
YY_RULE_SETUP
3673
#line 794 "scan.l"
3674
return '^';
3675
	YY_BREAK
3676
case 186:
3677
YY_RULE_SETUP
3678
#line 795 "scan.l"
3679
BEGIN(CCL); RETURNCHAR;
3680
	YY_BREAK
3681
3682
3683
case 187:
3684
*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3685
(yy_c_buf_p) = yy_cp = yy_bp + 1;
3686
YY_DO_BEFORE_ACTION; /* set up yytext again */
3687
YY_RULE_SETUP
3688
#line 799 "scan.l"
3689
return '-';
3690
	YY_BREAK
3691
case 188:
3692
YY_RULE_SETUP
3693
#line 800 "scan.l"
3694
RETURNCHAR;
3695
	YY_BREAK
3696
case 189:
3697
YY_RULE_SETUP
3698
#line 801 "scan.l"
3699
BEGIN(SECT2); return ']';
3700
	YY_BREAK
3701
case 190:
3702
/* rule 190 can match eol */
3703
YY_RULE_SETUP
3704
#line 802 "scan.l"
3705
{
3706
			synerr( _( "bad character class" ) );
3707
			BEGIN(SECT2);
3708
			return ']';
3709
			}
3710
	YY_BREAK
3711
3712
3713
case 191:
3714
YY_RULE_SETUP
3715
#line 810 "scan.l"
3716
BEGIN(CCL); return CCE_ALNUM;
3717
	YY_BREAK
3718
case 192:
3719
YY_RULE_SETUP
3720
#line 811 "scan.l"
3721
BEGIN(CCL); return CCE_ALPHA;
3722
	YY_BREAK
3723
case 193:
3724
YY_RULE_SETUP
3725
#line 812 "scan.l"
3726
BEGIN(CCL); return CCE_BLANK;
3727
	YY_BREAK
3728
case 194:
3729
YY_RULE_SETUP
3730
#line 813 "scan.l"
3731
BEGIN(CCL); return CCE_CNTRL;
3732
	YY_BREAK
3733
case 195:
3734
YY_RULE_SETUP
3735
#line 814 "scan.l"
3736
BEGIN(CCL); return CCE_DIGIT;
3737
	YY_BREAK
3738
case 196:
3739
YY_RULE_SETUP
3740
#line 815 "scan.l"
3741
BEGIN(CCL); return CCE_GRAPH;
3742
	YY_BREAK
3743
case 197:
3744
YY_RULE_SETUP
3745
#line 816 "scan.l"
3746
BEGIN(CCL); return CCE_LOWER;
3747
	YY_BREAK
3748
case 198:
3749
YY_RULE_SETUP
3750
#line 817 "scan.l"
3751
BEGIN(CCL); return CCE_PRINT;
3752
	YY_BREAK
3753
case 199:
3754
YY_RULE_SETUP
3755
#line 818 "scan.l"
3756
BEGIN(CCL); return CCE_PUNCT;
3757
	YY_BREAK
3758
case 200:
3759
YY_RULE_SETUP
3760
#line 819 "scan.l"
3761
BEGIN(CCL); return CCE_SPACE;
3762
	YY_BREAK
3763
case 201:
3764
YY_RULE_SETUP
3765
#line 820 "scan.l"
3766
BEGIN(CCL); return CCE_UPPER;
3767
	YY_BREAK
3768
case 202:
3769
YY_RULE_SETUP
3770
#line 821 "scan.l"
3771
BEGIN(CCL); return CCE_XDIGIT;
3772
	YY_BREAK
3773
case 203:
3774
YY_RULE_SETUP
3775
#line 823 "scan.l"
3776
BEGIN(CCL); return CCE_NEG_ALNUM;
3777
	YY_BREAK
3778
case 204:
3779
YY_RULE_SETUP
3780
#line 824 "scan.l"
3781
BEGIN(CCL); return CCE_NEG_ALPHA;
3782
	YY_BREAK
3783
case 205:
3784
YY_RULE_SETUP
3785
#line 825 "scan.l"
3786
BEGIN(CCL); return CCE_NEG_BLANK;
3787
	YY_BREAK
3788
case 206:
3789
YY_RULE_SETUP
3790
#line 826 "scan.l"
3791
BEGIN(CCL); return CCE_NEG_CNTRL;
3792
	YY_BREAK
3793
case 207:
3794
YY_RULE_SETUP
3795
#line 827 "scan.l"
3796
BEGIN(CCL); return CCE_NEG_DIGIT;
3797
	YY_BREAK
3798
case 208:
3799
YY_RULE_SETUP
3800
#line 828 "scan.l"
3801
BEGIN(CCL); return CCE_NEG_GRAPH;
3802
	YY_BREAK
3803
case 209:
3804
YY_RULE_SETUP
3805
#line 829 "scan.l"
3806
BEGIN(CCL); return CCE_NEG_LOWER;
3807
	YY_BREAK
3808
case 210:
3809
YY_RULE_SETUP
3810
#line 830 "scan.l"
3811
BEGIN(CCL); return CCE_NEG_PRINT;
3812
	YY_BREAK
3813
case 211:
3814
YY_RULE_SETUP
3815
#line 831 "scan.l"
3816
BEGIN(CCL); return CCE_NEG_PUNCT;
3817
	YY_BREAK
3818
case 212:
3819
YY_RULE_SETUP
3820
#line 832 "scan.l"
3821
BEGIN(CCL); return CCE_NEG_SPACE;
3822
	YY_BREAK
3823
case 213:
3824
YY_RULE_SETUP
3825
#line 833 "scan.l"
3826
BEGIN(CCL); return CCE_NEG_UPPER;
3827
	YY_BREAK
3828
case 214:
3829
YY_RULE_SETUP
3830
#line 834 "scan.l"
3831
BEGIN(CCL); return CCE_NEG_XDIGIT;
3832
	YY_BREAK
3833
case 215:
3834
YY_RULE_SETUP
3835
#line 835 "scan.l"
3836
{
3837
			format_synerr(
3838
				_( "bad character class expression: %s" ),
3839
					yytext );
3840
			BEGIN(CCL); return CCE_ALNUM;
3841
			}
3842
	YY_BREAK
3843
3844
3845
case 216:
3846
YY_RULE_SETUP
3847
#line 844 "scan.l"
3848
{
3849
			yylval = myctoi( yytext );
3850
			return NUMBER;
3851
			}
3852
	YY_BREAK
3853
case 217:
3854
YY_RULE_SETUP
3855
#line 849 "scan.l"
3856
return ',';
3857
	YY_BREAK
3858
case 218:
3859
YY_RULE_SETUP
3860
#line 850 "scan.l"
3861
{
3862
			BEGIN(SECT2);
3863
			if ( lex_compat || posix_compat )
3864
				return END_REPEAT_POSIX;
3865
			else
3866
				return END_REPEAT_FLEX;
3867
			}
3868
	YY_BREAK
3869
case 219:
3870
YY_RULE_SETUP
3871
#line 858 "scan.l"
3872
{
3873
			synerr( _( "bad character inside {}'s" ) );
3874
			BEGIN(SECT2);
3875
			return '}';
3876
			}
3877
	YY_BREAK
3878
case 220:
3879
/* rule 220 can match eol */
3880
YY_RULE_SETUP
3881
#line 864 "scan.l"
3882
{
3883
			synerr( _( "missing }" ) );
3884
			BEGIN(SECT2);
3885
			++linenum;
3886
			return '}';
3887
			}
3888
	YY_BREAK
3889
3890
3891
case 221:
3892
YY_RULE_SETUP
3893
#line 874 "scan.l"
3894
bracelevel = 0;
3895
	YY_BREAK
3896
case 222:
3897
YY_RULE_SETUP
3898
#line 876 "scan.l"
3899
ACTION_ECHO; yy_push_state( COMMENT );
3900
	YY_BREAK
3901
3902
case 223:
3903
YY_RULE_SETUP
3904
#line 879 "scan.l"
3905
{
3906
			ACTION_ECHO;
3907
			CHECK_REJECT(yytext);
3908
			}
3909
	YY_BREAK
3910
case 224:
3911
YY_RULE_SETUP
3912
#line 883 "scan.l"
3913
{
3914
			ACTION_ECHO;
3915
			CHECK_YYMORE(yytext);
3916
			}
3917
	YY_BREAK
3918
3919
case 225:
3920
YY_RULE_SETUP
3921
#line 889 "scan.l"
3922
ACTION_ECHO_QSTART;
3923
	YY_BREAK
3924
case 226:
3925
YY_RULE_SETUP
3926
#line 890 "scan.l"
3927
ACTION_ECHO_QEND;
3928
	YY_BREAK
3929
case 227:
3930
YY_RULE_SETUP
3931
#line 891 "scan.l"
3932
ACTION_ECHO;
3933
	YY_BREAK
3934
case 228:
3935
/* rule 228 can match eol */
3936
YY_RULE_SETUP
3937
#line 892 "scan.l"
3938
{
3939
			++linenum;
3940
			ACTION_ECHO;
3941
			if ( bracelevel == 0 ||
3942
			     (doing_codeblock && indented_code) )
3943
				{
3944
				if ( doing_rule_action )
3945
					add_action( "\tYY_BREAK\n" );
3946
3947
				doing_rule_action = doing_codeblock = false;
3948
				BEGIN(SECT2);
3949
				}
3950
			}
3951
	YY_BREAK
3952
3953
/* Reject and YYmore() are checked for above, in PERCENT_BRACE_ACTION */
3954
3955
case 229:
3956
YY_RULE_SETUP
3957
#line 910 "scan.l"
3958
ACTION_ECHO; ++bracelevel;
3959
	YY_BREAK
3960
case 230:
3961
YY_RULE_SETUP
3962
#line 911 "scan.l"
3963
ACTION_ECHO; --bracelevel;
3964
	YY_BREAK
3965
case 231:
3966
YY_RULE_SETUP
3967
#line 912 "scan.l"
3968
ACTION_ECHO_QSTART;
3969
	YY_BREAK
3970
case 232:
3971
YY_RULE_SETUP
3972
#line 913 "scan.l"
3973
ACTION_ECHO_QEND;
3974
	YY_BREAK
3975
case 233:
3976
YY_RULE_SETUP
3977
#line 914 "scan.l"
3978
ACTION_ECHO;
3979
	YY_BREAK
3980
case 234:
3981
YY_RULE_SETUP
3982
#line 915 "scan.l"
3983
ACTION_ECHO;
3984
	YY_BREAK
3985
case 235:
3986
YY_RULE_SETUP
3987
#line 916 "scan.l"
3988
ACTION_ECHO;
3989
	YY_BREAK
3990
case 236:
3991
YY_RULE_SETUP
3992
#line 917 "scan.l"
3993
ACTION_ECHO; /* character constant */
3994
	YY_BREAK
3995
case 237:
3996
YY_RULE_SETUP
3997
#line 918 "scan.l"
3998
ACTION_ECHO; BEGIN(ACTION_STRING);
3999
	YY_BREAK
4000
case 238:
4001
/* rule 238 can match eol */
4002
YY_RULE_SETUP
4003
#line 919 "scan.l"
4004
{
4005
			++linenum;
4006
			ACTION_ECHO;
4007
			if ( bracelevel == 0 )
4008
				{
4009
				if ( doing_rule_action )
4010
					add_action( "\tYY_BREAK\n" );
4011
4012
				doing_rule_action = false;
4013
				BEGIN(SECT2);
4014
				}
4015
			}
4016
	YY_BREAK
4017
case 239:
4018
YY_RULE_SETUP
4019
#line 931 "scan.l"
4020
ACTION_ECHO;
4021
	YY_BREAK
4022
4023
4024
case 240:
4025
YY_RULE_SETUP
4026
#line 935 "scan.l"
4027
ACTION_ECHO;
4028
	YY_BREAK
4029
case 241:
4030
YY_RULE_SETUP
4031
#line 936 "scan.l"
4032
ACTION_ECHO;
4033
	YY_BREAK
4034
case 242:
4035
/* rule 242 can match eol */
4036
YY_RULE_SETUP
4037
#line 937 "scan.l"
4038
++linenum; ACTION_ECHO; BEGIN(ACTION);
4039
	YY_BREAK
4040
case 243:
4041
YY_RULE_SETUP
4042
#line 938 "scan.l"
4043
ACTION_ECHO; BEGIN(ACTION);
4044
	YY_BREAK
4045
case 244:
4046
YY_RULE_SETUP
4047
#line 939 "scan.l"
4048
ACTION_ECHO;
4049
	YY_BREAK
4050
4051
case YY_STATE_EOF(COMMENT):
4052
case YY_STATE_EOF(COMMENT_DISCARD):
4053
case YY_STATE_EOF(ACTION):
4054
case YY_STATE_EOF(ACTION_STRING):
4055
#line 942 "scan.l"
4056
{
4057
			synerr( _( "EOF encountered inside an action" ) );
4058
			yyterminate();
4059
			}
4060
	YY_BREAK
4061
case YY_STATE_EOF(EXTENDED_COMMENT):
4062
case YY_STATE_EOF(GROUP_WITH_PARAMS):
4063
case YY_STATE_EOF(GROUP_MINUS_PARAMS):
4064
#line 947 "scan.l"
4065
{
4066
			synerr( _( "EOF encountered inside pattern" ) );
4067
			yyterminate();
4068
			}
4069
	YY_BREAK
4070
case 245:
4071
YY_RULE_SETUP
4072
#line 952 "scan.l"
4073
{
4074
			yylval = myesc( (u_char *) yytext );
4075
4076
			if ( YY_START == FIRSTCCL )
4077
				BEGIN(CCL);
4078
4079
			return CHAR;
4080
			}
4081
	YY_BREAK
4082
4083
case 246:
4084
YY_RULE_SETUP
4085
#line 963 "scan.l"
4086
fwrite (escaped_qstart, 1, strlen(escaped_qstart), yyout);
4087
	YY_BREAK
4088
case 247:
4089
YY_RULE_SETUP
4090
#line 964 "scan.l"
4091
fwrite (escaped_qend, 1, strlen(escaped_qend), yyout);
4092
	YY_BREAK
4093
case 248:
4094
/* rule 248 can match eol */
4095
YY_RULE_SETUP
4096
#line 965 "scan.l"
4097
ECHO;
4098
	YY_BREAK
4099
case 249:
4100
/* rule 249 can match eol */
4101
YY_RULE_SETUP
4102
#line 966 "scan.l"
4103
ECHO;
4104
	YY_BREAK
4105
case YY_STATE_EOF(SECT3):
4106
#line 967 "scan.l"
4107
sectnum = 0; yyterminate();
4108
	YY_BREAK
4109
4110
case 250:
4111
/* rule 250 can match eol */
4112
YY_RULE_SETUP
4113
#line 970 "scan.l"
4114
format_synerr( _( "bad character: %s" ), yytext );
4115
	YY_BREAK
4116
case 251:
4117
YY_RULE_SETUP
4118
#line 972 "scan.l"
4119
YY_FATAL_ERROR( "flex scanner jammed" );
4120
	YY_BREAK
4121
#line 4122 "scan.c"
4122
			case YY_STATE_EOF(INITIAL):
4123
			case YY_STATE_EOF(SECT2):
4124
			case YY_STATE_EOF(CODEBLOCK):
4125
			case YY_STATE_EOF(PICKUPDEF):
4126
			case YY_STATE_EOF(SC):
4127
			case YY_STATE_EOF(CARETISBOL):
4128
			case YY_STATE_EOF(NUM):
4129
			case YY_STATE_EOF(QUOTE):
4130
			case YY_STATE_EOF(FIRSTCCL):
4131
			case YY_STATE_EOF(CCL):
4132
			case YY_STATE_EOF(RECOVER):
4133
			case YY_STATE_EOF(PERCENT_BRACE_ACTION):
4134
			case YY_STATE_EOF(OPTION):
4135
			case YY_STATE_EOF(LINEDIR):
4136
				yyterminate();
4137
4138
	case YY_END_OF_BUFFER:
4139
		{
4140
		/* Amount of text matched not including the EOB char. */
4141
22
		int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
4142
4143
		/* Undo the effects of YY_DO_BEFORE_ACTION. */
4144
22
		*yy_cp = (yy_hold_char);
4145
		YY_RESTORE_YY_MORE_OFFSET
4146
4147
22
		if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
4148
			{
4149
			/* We're scanning a new file or input source.  It's
4150
			 * possible that this happened because the user
4151
			 * just pointed yyin at a new source and called
4152
			 * yylex().  If so, then we have to assure
4153
			 * consistency between YY_CURRENT_BUFFER and our
4154
			 * globals.  Here is the right place to do so, because
4155
			 * this is the first action (other than possibly a
4156
			 * back-up) that will match for the new input source.
4157
			 */
4158
12
			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
4159
12
			YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
4160
12
			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
4161
12
			}
4162
4163
		/* Note that here we test for yy_c_buf_p "<=" to the position
4164
		 * of the first EOB in the buffer, since yy_c_buf_p will
4165
		 * already have been incremented past the NUL character
4166
		 * (since all states make transitions on EOB to the
4167
		 * end-of-buffer state).  Contrast this with the test
4168
		 * in input().
4169
		 */
4170
22
		if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
4171
			{ /* This was really a NUL. */
4172
			yy_state_type yy_next_state;
4173
4174
			(yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
4175
4176
			yy_current_state = yy_get_previous_state(  );
4177
4178
			/* Okay, we're now positioned to make the NUL
4179
			 * transition.  We couldn't have
4180
			 * yy_get_previous_state() go ahead and do it
4181
			 * for us because it doesn't know how to deal
4182
			 * with the possibility of jamming (and we don't
4183
			 * want to build jamming into it because then it
4184
			 * will run more slowly).
4185
			 */
4186
4187
			yy_next_state = yy_try_NUL_trans( yy_current_state );
4188
4189
			yy_bp = (yytext_ptr) + YY_MORE_ADJ;
4190
4191
			if ( yy_next_state )
4192
				{
4193
				/* Consume the NUL. */
4194
				yy_cp = ++(yy_c_buf_p);
4195
				yy_current_state = yy_next_state;
4196
				goto yy_match;
4197
				}
4198
4199
			else
4200
				{
4201
				yy_cp = (yy_c_buf_p);
4202
				goto yy_find_action;
4203
				}
4204
			}
4205
4206

22
		else switch ( yy_get_next_buffer(  ) )
4207
			{
4208
			case EOB_ACT_END_OF_FILE:
4209
				{
4210
4
				(yy_did_buffer_switch_on_eof) = 0;
4211
4212
4
				if ( yywrap( ) )
4213
					{
4214
					/* Note: because we've taken care in
4215
					 * yy_get_next_buffer() to have set up
4216
					 * yytext, we can now set up
4217
					 * yy_c_buf_p so that if some total
4218
					 * hoser (like flex itself) wants to
4219
					 * call the scanner after we return the
4220
					 * YY_NULL, it'll still work - another
4221
					 * YY_NULL will get returned.
4222
					 */
4223
4
					(yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
4224
4225
4
					yy_act = YY_STATE_EOF(YY_START);
4226
4
					goto do_action;
4227
					}
4228
4229
				else
4230
					{
4231
					if ( ! (yy_did_buffer_switch_on_eof) )
4232
						YY_NEW_FILE;
4233
					}
4234
				break;
4235
				}
4236
4237
			case EOB_ACT_CONTINUE_SCAN:
4238
18
				(yy_c_buf_p) =
4239
18
					(yytext_ptr) + yy_amount_of_matched_text;
4240
4241
18
				yy_current_state = yy_get_previous_state(  );
4242
4243
18
				yy_cp = (yy_c_buf_p);
4244
18
				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
4245
18
				goto yy_match;
4246
4247
			case EOB_ACT_LAST_MATCH:
4248
				(yy_c_buf_p) =
4249
				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
4250
4251
				yy_current_state = yy_get_previous_state(  );
4252
4253
				yy_cp = (yy_c_buf_p);
4254
				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
4255
				goto yy_find_action;
4256
			}
4257
		break;
4258
		}
4259
4260
	default:
4261
		YY_FATAL_ERROR(
4262
			"fatal flex scanner internal error--no action found" );
4263
	} /* end of action switch */
4264
		} /* end of scanning one token */
4265
35712
	} /* end of user's declarations */
4266
35712
} /* end of yylex */
4267
4268
/* yy_get_next_buffer - try to read in a new buffer
4269
 *
4270
 * Returns a code representing an action:
4271
 *	EOB_ACT_LAST_MATCH -
4272
 *	EOB_ACT_CONTINUE_SCAN - continue scanning from current position
4273
 *	EOB_ACT_END_OF_FILE - end of file
4274
 */
4275
static int yy_get_next_buffer (void)
4276
{
4277
44
    	char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
4278
22
	char *source = (yytext_ptr);
4279
	int number_to_move, i;
4280
	int ret_val;
4281
4282
22
	if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
4283
		YY_FATAL_ERROR(
4284
		"fatal flex scanner internal error--end of buffer missed" );
4285
4286
22
	if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
4287
		{ /* Don't try to fill the buffer, so this is an EOF. */
4288
		if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
4289
			{
4290
			/* We matched a single character, the EOB, so
4291
			 * treat this as a final EOF.
4292
			 */
4293
			return EOB_ACT_END_OF_FILE;
4294
			}
4295
4296
		else
4297
			{
4298
			/* We matched some text prior to the EOB, first
4299
			 * process it.
4300
			 */
4301
			return EOB_ACT_LAST_MATCH;
4302
			}
4303
		}
4304
4305
	/* Try to read more data. */
4306
4307
	/* First move last chars to start of buffer. */
4308
22
	number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
4309
4310
252
	for ( i = 0; i < number_to_move; ++i )
4311
104
		*(dest++) = *(source++);
4312
4313
22
	if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
4314
		/* don't do the read, it's not guaranteed to return an EOF,
4315
		 * just force an EOF
4316
		 */
4317
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
4318
4319
	else
4320
		{
4321
			yy_size_t num_to_read =
4322
22
			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
4323
4324
44
		while ( num_to_read <= 0 )
4325
			{ /* Not enough room in the buffer - grow it. */
4326
4327
			YY_FATAL_ERROR(
4328
"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
4329
4330
			}
4331
4332
22
		if ( num_to_read > YY_READ_BUF_SIZE )
4333
22
			num_to_read = YY_READ_BUF_SIZE;
4334
4335
		/* Read in more data. */
4336








78
		YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
4337
			(yy_n_chars), num_to_read );
4338
4339
22
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4340
		}
4341
4342
22
	if ( (yy_n_chars) == 0 )
4343
		{
4344
4
		if ( number_to_move == YY_MORE_ADJ )
4345
			{
4346
			ret_val = EOB_ACT_END_OF_FILE;
4347
4
			yyrestart(yyin  );
4348
4
			}
4349
4350
		else
4351
			{
4352
			ret_val = EOB_ACT_LAST_MATCH;
4353
			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
4354
				YY_BUFFER_EOF_PENDING;
4355
			}
4356
		}
4357
4358
	else
4359
		ret_val = EOB_ACT_CONTINUE_SCAN;
4360
4361
22
	if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
4362
		/* Extend the array by 50%, plus the number we really need. */
4363
		yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
4364
		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size  );
4365
		if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
4366
			YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
4367
		/* "- 2" to take care of EOB's */
4368
		YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
4369
	}
4370
4371
22
	(yy_n_chars) += number_to_move;
4372
22
	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
4373
22
	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
4374
4375
22
	(yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
4376
4377
22
	return ret_val;
4378
22
}
4379
4380
/* yy_get_previous_state - get the state just before the EOB char was reached */
4381
4382
    static yy_state_type yy_get_previous_state (void)
4383
{
4384
	yy_state_type yy_current_state;
4385
	char *yy_cp;
4386
4387
36
	yy_current_state = (yy_start);
4388
18
	yy_current_state += YY_AT_BOL();
4389
4390
18
	(yy_state_ptr) = (yy_state_buf);
4391
18
	*(yy_state_ptr)++ = yy_current_state;
4392
4393
244
	for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
4394
		{
4395
312
		YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
4396
412
		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4397
			{
4398
102
			yy_current_state = (int) yy_def[yy_current_state];
4399
102
			if ( yy_current_state >= 1107 )
4400
102
				yy_c = yy_meta[(unsigned int) yy_c];
4401
			}
4402
104
		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4403
104
		*(yy_state_ptr)++ = yy_current_state;
4404
		}
4405
4406
18
	return yy_current_state;
4407
}
4408
4409
/* yy_try_NUL_trans - try to make a transition on the NUL character
4410
 *
4411
 * synopsis
4412
 *	next_state = yy_try_NUL_trans( current_state );
4413
 */
4414
    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state )
4415
{
4416
	int yy_is_jam;
4417
4418
	YY_CHAR yy_c = 1;
4419
	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4420
		{
4421
		yy_current_state = (int) yy_def[yy_current_state];
4422
		if ( yy_current_state >= 1107 )
4423
			yy_c = yy_meta[(unsigned int) yy_c];
4424
		}
4425
	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
4426
	yy_is_jam = (yy_current_state == 1106);
4427
	if ( ! yy_is_jam )
4428
		*(yy_state_ptr)++ = yy_current_state;
4429
4430
		return yy_is_jam ? 0 : yy_current_state;
4431
}
4432
4433
    static void yyunput (int c, char * yy_bp )
4434
{
4435
	char *yy_cp;
4436
4437
72732
    yy_cp = (yy_c_buf_p);
4438
4439
	/* undo effects of setting up yytext */
4440
36366
	*yy_cp = (yy_hold_char);
4441
4442
36366
	if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
4443
		{ /* need to shift things up to make room */
4444
		/* +2 for EOB chars. */
4445
		yy_size_t number_to_move = (yy_n_chars) + 2;
4446
		char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
4447
					YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
4448
		char *source =
4449
				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
4450
4451
		while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
4452
			*--dest = *--source;
4453
4454
		yy_cp += (int) (dest - source);
4455
		yy_bp += (int) (dest - source);
4456
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
4457
			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
4458
4459
		if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
4460
			YY_FATAL_ERROR( "flex scanner push-back overflow" );
4461
		}
4462
4463
36366
	*--yy_cp = (char) c;
4464
4465
36366
	(yytext_ptr) = yy_bp;
4466
36366
	(yy_hold_char) = *yy_cp;
4467
36366
	(yy_c_buf_p) = yy_cp;
4468
36366
}
4469
4470
#ifndef YY_NO_INPUT
4471
#ifdef __cplusplus
4472
    static int yyinput (void)
4473
#else
4474
    static int input  (void)
4475
#endif
4476
4477
{
4478
	int c;
4479
4480
	*(yy_c_buf_p) = (yy_hold_char);
4481
4482
	if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
4483
		{
4484
		/* yy_c_buf_p now points to the character we want to return.
4485
		 * If this occurs *before* the EOB characters, then it's a
4486
		 * valid NUL; if not, then we've hit the end of the buffer.
4487
		 */
4488
		if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
4489
			/* This was really a NUL. */
4490
			*(yy_c_buf_p) = '\0';
4491
4492
		else
4493
			{ /* need more input */
4494
			yy_size_t offset = (yy_c_buf_p) - (yytext_ptr);
4495
			++(yy_c_buf_p);
4496
4497
			switch ( yy_get_next_buffer(  ) )
4498
				{
4499
				case EOB_ACT_LAST_MATCH:
4500
					/* This happens because yy_g_n_b()
4501
					 * sees that we've accumulated a
4502
					 * token and flags that we need to
4503
					 * try matching the token before
4504
					 * proceeding.  But for input(),
4505
					 * there's no matching to consider.
4506
					 * So convert the EOB_ACT_LAST_MATCH
4507
					 * to EOB_ACT_END_OF_FILE.
4508
					 */
4509
4510
					/* Reset buffer status. */
4511
					yyrestart(yyin );
4512
4513
					/*FALLTHROUGH*/
4514
4515
				case EOB_ACT_END_OF_FILE:
4516
					{
4517
					if ( yywrap( ) )
4518
						return EOF;
4519
4520
					if ( ! (yy_did_buffer_switch_on_eof) )
4521
						YY_NEW_FILE;
4522
#ifdef __cplusplus
4523
					return yyinput();
4524
#else
4525
					return input();
4526
#endif
4527
					}
4528
4529
				case EOB_ACT_CONTINUE_SCAN:
4530
					(yy_c_buf_p) = (yytext_ptr) + offset;
4531
					break;
4532
				}
4533
			}
4534
		}
4535
4536
	c = *(unsigned char *) (yy_c_buf_p);	/* cast for 8-bit char's */
4537
	*(yy_c_buf_p) = '\0';	/* preserve yytext */
4538
	(yy_hold_char) = *++(yy_c_buf_p);
4539
4540
	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
4541
4542
	return c;
4543
}
4544
#endif	/* ifndef YY_NO_INPUT */
4545
4546
/** Immediately switch to a different input stream.
4547
 * @param input_file A readable stream.
4548
 *
4549
 * @note This function does not reset the start condition to @c INITIAL .
4550
 */
4551
    void yyrestart  (FILE * input_file )
4552
{
4553
4554

12
	if ( ! YY_CURRENT_BUFFER ){
4555
        yyensure_buffer_stack ();
4556
		YY_CURRENT_BUFFER_LVALUE =
4557
            yy_create_buffer(yyin,YY_BUF_SIZE );
4558
	}
4559
4560
12
	yy_init_buffer(YY_CURRENT_BUFFER,input_file );
4561
4
	yy_load_buffer_state( );
4562
4
}
4563
4564
/** Switch to a different input buffer.
4565
 * @param new_buffer The new input buffer.
4566
 *
4567
 */
4568
    void yy_switch_to_buffer  (YY_BUFFER_STATE  new_buffer )
4569
{
4570
4571
	/* TODO. We should be able to replace this entire function body
4572
	 * with
4573
	 *		yypop_buffer_state();
4574
	 *		yypush_buffer_state(new_buffer);
4575
     */
4576
	yyensure_buffer_stack ();
4577
	if ( YY_CURRENT_BUFFER == new_buffer )
4578
		return;
4579
4580
	if ( YY_CURRENT_BUFFER )
4581
		{
4582
		/* Flush out information for old buffer. */
4583
		*(yy_c_buf_p) = (yy_hold_char);
4584
		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4585
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4586
		}
4587
4588
	YY_CURRENT_BUFFER_LVALUE = new_buffer;
4589
	yy_load_buffer_state( );
4590
4591
	/* We don't actually know whether we did this switch during
4592
	 * EOF (yywrap()) processing, but the only time this flag
4593
	 * is looked at is after yywrap() is called, so it's safe
4594
	 * to go ahead and always set it.
4595
	 */
4596
	(yy_did_buffer_switch_on_eof) = 1;
4597
}
4598
4599
static void yy_load_buffer_state  (void)
4600
{
4601
40
    	(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
4602
20
	(yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
4603
20
	yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
4604
20
	(yy_hold_char) = *(yy_c_buf_p);
4605
20
}
4606
4607
/** Allocate and initialize an input buffer state.
4608
 * @param file A readable stream.
4609
 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
4610
 *
4611
 * @return the allocated buffer state.
4612
 */
4613
    YY_BUFFER_STATE yy_create_buffer  (FILE * file, int  size )
4614
{
4615
	YY_BUFFER_STATE b;
4616
4617
24
	b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state )  );
4618
12
	if ( ! b )
4619
		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
4620
4621
12
	b->yy_buf_size = size;
4622
4623
	/* yy_ch_buf has to be 2 characters longer than the size given because
4624
	 * we need to put in 2 end-of-buffer characters.
4625
	 */
4626
12
	b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2  );
4627
12
	if ( ! b->yy_ch_buf )
4628
		YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
4629
4630
12
	b->yy_is_our_buffer = 1;
4631
4632
12
	yy_init_buffer(b,file );
4633
4634
12
	return b;
4635
}
4636
4637
/** Destroy the buffer.
4638
 * @param b a buffer created with yy_create_buffer()
4639
 *
4640
 */
4641
    void yy_delete_buffer (YY_BUFFER_STATE  b )
4642
{
4643
4644
	if ( ! b )
4645
		return;
4646
4647
	if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
4648
		YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
4649
4650
	if ( b->yy_is_our_buffer )
4651
		yyfree((void *) b->yy_ch_buf  );
4652
4653
	yyfree((void *) b  );
4654
}
4655
4656
/* Initializes or reinitializes a buffer.
4657
 * This function is sometimes called more than once on the same buffer,
4658
 * such as during a yyrestart() or at EOF.
4659
 */
4660
    static void yy_init_buffer  (YY_BUFFER_STATE  b, FILE * file )
4661
4662
{
4663
32
	int oerrno = errno;
4664
4665
16
	yy_flush_buffer(b );
4666
4667
16
	b->yy_input_file = file;
4668
16
	b->yy_fill_buffer = 1;
4669
4670
    /* If b is the current buffer, then yy_init_buffer was _probably_
4671
     * called from yyrestart() or through yy_get_next_buffer.
4672
     * In that case, we don't want to reset the lineno or column.
4673
     */
4674

48
    if (b != YY_CURRENT_BUFFER){
4675
12
        b->yy_bs_lineno = 1;
4676
12
        b->yy_bs_column = 0;
4677
12
    }
4678
4679

80
        b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
4680
4681
16
	errno = oerrno;
4682
16
}
4683
4684
/** Discard all buffered characters. On the next scan, YY_INPUT will be called.
4685
 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
4686
 *
4687
 */
4688
    void yy_flush_buffer (YY_BUFFER_STATE  b )
4689
{
4690
32
    	if ( ! b )
4691
		return;
4692
4693
16
	b->yy_n_chars = 0;
4694
4695
	/* We always need two end-of-buffer characters.  The first causes
4696
	 * a transition to the end-of-buffer state.  The second causes
4697
	 * a jam in that state.
4698
	 */
4699
16
	b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
4700
16
	b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
4701
4702
16
	b->yy_buf_pos = &b->yy_ch_buf[0];
4703
4704
16
	b->yy_at_bol = 1;
4705
16
	b->yy_buffer_status = YY_BUFFER_NEW;
4706
4707

48
	if ( b == YY_CURRENT_BUFFER )
4708
4
		yy_load_buffer_state( );
4709
16
}
4710
4711
/** Pushes the new state onto the stack. The new state becomes
4712
 *  the current state. This function will allocate the stack
4713
 *  if necessary.
4714
 *  @param new_buffer The new state.
4715
 *
4716
 */
4717
void yypush_buffer_state (YY_BUFFER_STATE new_buffer )
4718
{
4719
    	if (new_buffer == NULL)
4720
		return;
4721
4722
	yyensure_buffer_stack();
4723
4724
	/* This block is copied from yy_switch_to_buffer. */
4725
	if ( YY_CURRENT_BUFFER )
4726
		{
4727
		/* Flush out information for old buffer. */
4728
		*(yy_c_buf_p) = (yy_hold_char);
4729
		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4730
		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4731
		}
4732
4733
	/* Only push if top exists. Otherwise, replace top. */
4734
	if (YY_CURRENT_BUFFER)
4735
		(yy_buffer_stack_top)++;
4736
	YY_CURRENT_BUFFER_LVALUE = new_buffer;
4737
4738
	/* copied from yy_switch_to_buffer. */
4739
	yy_load_buffer_state( );
4740
	(yy_did_buffer_switch_on_eof) = 1;
4741
}
4742
4743
/** Removes and deletes the top of the stack, if present.
4744
 *  The next element becomes the new top.
4745
 *
4746
 */
4747
void yypop_buffer_state (void)
4748
{
4749
    	if (!YY_CURRENT_BUFFER)
4750
		return;
4751
4752
	yy_delete_buffer(YY_CURRENT_BUFFER );
4753
	YY_CURRENT_BUFFER_LVALUE = NULL;
4754
	if ((yy_buffer_stack_top) > 0)
4755
		--(yy_buffer_stack_top);
4756
4757
	if (YY_CURRENT_BUFFER) {
4758
		yy_load_buffer_state( );
4759
		(yy_did_buffer_switch_on_eof) = 1;
4760
	}
4761
}
4762
4763
/* Allocates the stack if it does not exist.
4764
 *  Guarantees space for at least one push.
4765
 */
4766
static void yyensure_buffer_stack (void)
4767
{
4768
	yy_size_t num_to_alloc;
4769
4770
24
	if (!(yy_buffer_stack)) {
4771
4772
		/* First allocation is just for 2 elements, since we don't know if this
4773
		 * scanner will even need a stack. We use 2 instead of 1 to avoid an
4774
		 * immediate realloc on the next call.
4775
         */
4776
		num_to_alloc = 1;
4777
12
		(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
4778
								(num_to_alloc * sizeof(struct yy_buffer_state*)
4779
								);
4780
12
		if ( ! (yy_buffer_stack) )
4781
			YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4782
4783
12
		memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
4784
4785
12
		(yy_buffer_stack_max) = num_to_alloc;
4786
12
		(yy_buffer_stack_top) = 0;
4787
12
		return;
4788
	}
4789
4790
	if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
4791
4792
		/* Increase the buffer to prepare for a possible push. */
4793
		int grow_size = 8 /* arbitrary grow size */;
4794
4795
		num_to_alloc = (yy_buffer_stack_max) + grow_size;
4796
		(yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
4797
								((yy_buffer_stack),
4798
								num_to_alloc * sizeof(struct yy_buffer_state*)
4799
								);
4800
		if ( ! (yy_buffer_stack) )
4801
			YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4802
4803
		/* zero only the new slots.*/
4804
		memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
4805
		(yy_buffer_stack_max) = num_to_alloc;
4806
	}
4807
12
}
4808
4809
/** Setup the input buffer state to scan directly from a user-specified character buffer.
4810
 * @param base the character buffer
4811
 * @param size the size in bytes of the character buffer
4812
 *
4813
 * @return the newly allocated buffer state object.
4814
 */
4815
YY_BUFFER_STATE yy_scan_buffer  (char * base, yy_size_t  size )
4816
{
4817
	YY_BUFFER_STATE b;
4818
4819
	if ( size < 2 ||
4820
	     base[size-2] != YY_END_OF_BUFFER_CHAR ||
4821
	     base[size-1] != YY_END_OF_BUFFER_CHAR )
4822
		/* They forgot to leave room for the EOB's. */
4823
		return 0;
4824
4825
	b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state )  );
4826
	if ( ! b )
4827
		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
4828
4829
	b->yy_buf_size = size - 2;	/* "- 2" to take care of EOB's */
4830
	b->yy_buf_pos = b->yy_ch_buf = base;
4831
	b->yy_is_our_buffer = 0;
4832
	b->yy_input_file = 0;
4833
	b->yy_n_chars = b->yy_buf_size;
4834
	b->yy_is_interactive = 0;
4835
	b->yy_at_bol = 1;
4836
	b->yy_fill_buffer = 0;
4837
	b->yy_buffer_status = YY_BUFFER_NEW;
4838
4839
	yy_switch_to_buffer(b  );
4840
4841
	return b;
4842
}
4843
4844
/** Setup the input buffer state to scan a string. The next call to yylex() will
4845
 * scan from a @e copy of @a str.
4846
 * @param yystr a NUL-terminated string to scan
4847
 *
4848
 * @return the newly allocated buffer state object.
4849
 * @note If you want to scan bytes that may contain NUL values, then use
4850
 *       yy_scan_bytes() instead.
4851
 */
4852
YY_BUFFER_STATE yy_scan_string (yyconst char * yystr )
4853
{
4854
4855
	return yy_scan_bytes(yystr,strlen(yystr) );
4856
}
4857
4858
/** Setup the input buffer state to scan the given bytes. The next call to yylex() will
4859
 * scan from a @e copy of @a bytes.
4860
 * @param yybytes the byte buffer to scan
4861
 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
4862
 *
4863
 * @return the newly allocated buffer state object.
4864
 */
4865
YY_BUFFER_STATE yy_scan_bytes  (yyconst char * yybytes, yy_size_t  _yybytes_len )
4866
{
4867
	YY_BUFFER_STATE b;
4868
	char *buf;
4869
	yy_size_t n;
4870
	yy_size_t i;
4871
4872
	/* Get memory for full buffer, including space for trailing EOB's. */
4873
	n = _yybytes_len + 2;
4874
	buf = (char *) yyalloc(n  );
4875
	if ( ! buf )
4876
		YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
4877
4878
	for ( i = 0; i < _yybytes_len; ++i )
4879
		buf[i] = yybytes[i];
4880
4881
	buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
4882
4883
	b = yy_scan_buffer(buf,n );
4884
	if ( ! b )
4885
		YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
4886
4887
	/* It's okay to grow etc. this buffer, and we should throw it
4888
	 * away when we're done.
4889
	 */
4890
	b->yy_is_our_buffer = 1;
4891
4892
	return b;
4893
}
4894
4895
    static void yy_push_state (int  new_state )
4896
{
4897
12
    	if ( (yy_start_stack_ptr) >= (yy_start_stack_depth) )
4898
		{
4899
		yy_size_t new_size;
4900
4901
4
		(yy_start_stack_depth) += YY_START_STACK_INCR;
4902
4
		new_size = (yy_start_stack_depth) * sizeof( int );
4903
4904
4
		if ( ! (yy_start_stack) )
4905
4
			(yy_start_stack) = (int *) yyalloc(new_size  );
4906
4907
		else
4908
			(yy_start_stack) = (int *) yyrealloc((void *) (yy_start_stack),new_size  );
4909
4910
4
		if ( ! (yy_start_stack) )
4911
			YY_FATAL_ERROR( "out of memory expanding start-condition stack" );
4912
4
		}
4913
4914
6
	(yy_start_stack)[(yy_start_stack_ptr)++] = YY_START;
4915
4916
6
	BEGIN(new_state);
4917
6
}
4918
4919
    static void yy_pop_state  (void)
4920
{
4921
12
    	if ( --(yy_start_stack_ptr) < 0 )
4922
		YY_FATAL_ERROR( "start-condition stack underflow" );
4923
4924
6
	BEGIN((yy_start_stack)[(yy_start_stack_ptr)]);
4925
6
}
4926
4927
#ifndef YY_EXIT_FAILURE
4928
#define YY_EXIT_FAILURE 2
4929
#endif
4930
4931
static void yy_fatal_error (yyconst char* msg )
4932
{
4933
    	(void) fprintf( stderr, "%s\n", msg );
4934
	exit( YY_EXIT_FAILURE );
4935
}
4936
4937
/* Redefine yyless() so it works in section 3 code. */
4938
4939
#undef yyless
4940
#define yyless(n) \
4941
	do \
4942
		{ \
4943
		/* Undo effects of setting up yytext. */ \
4944
        int yyless_macro_arg = (n); \
4945
        YY_LESS_LINENO(yyless_macro_arg);\
4946
		yytext[yyleng] = (yy_hold_char); \
4947
		(yy_c_buf_p) = yytext + yyless_macro_arg; \
4948
		(yy_hold_char) = *(yy_c_buf_p); \
4949
		*(yy_c_buf_p) = '\0'; \
4950
		yyleng = yyless_macro_arg; \
4951
		} \
4952
	while ( 0 )
4953
4954
/* Accessor  methods (get/set functions) to struct members. */
4955
4956
/** Get the current line number.
4957
 *
4958
 */
4959
int yyget_lineno  (void)
4960
{
4961
4962
    return yylineno;
4963
}
4964
4965
/** Get the input stream.
4966
 *
4967
 */
4968
FILE *yyget_in  (void)
4969
{
4970
        return yyin;
4971
}
4972
4973
/** Get the output stream.
4974
 *
4975
 */
4976
FILE *yyget_out  (void)
4977
{
4978
        return yyout;
4979
}
4980
4981
/** Get the length of the current token.
4982
 *
4983
 */
4984
yy_size_t yyget_leng  (void)
4985
{
4986
        return yyleng;
4987
}
4988
4989
/** Get the current token.
4990
 *
4991
 */
4992
4993
char *yyget_text  (void)
4994
{
4995
        return yytext;
4996
}
4997
4998
/** Set the current line number.
4999
 * @param line_number
5000
 *
5001
 */
5002
void yyset_lineno (int  line_number )
5003
{
5004
5005
    yylineno = line_number;
5006
}
5007
5008
/** Set the input stream. This does not discard the current
5009
 * input buffer.
5010
 * @param in_str A readable stream.
5011
 *
5012
 * @see yy_switch_to_buffer
5013
 */
5014
void yyset_in (FILE *  in_str )
5015
{
5016
        yyin = in_str ;
5017
}
5018
5019
void yyset_out (FILE *  out_str )
5020
{
5021
        yyout = out_str ;
5022
}
5023
5024
int yyget_debug  (void)
5025
{
5026
        return yy_flex_debug;
5027
}
5028
5029
void yyset_debug (int  bdebug )
5030
{
5031
        yy_flex_debug = bdebug ;
5032
}
5033
5034
static int yy_init_globals (void)
5035
{
5036
        /* Initialization is the same as for the non-reentrant scanner.
5037
     * This function is called from yylex_destroy(), so don't allocate here.
5038
     */
5039
5040
    (yy_buffer_stack) = 0;
5041
    (yy_buffer_stack_top) = 0;
5042
    (yy_buffer_stack_max) = 0;
5043
    (yy_c_buf_p) = (char *) 0;
5044
    (yy_init) = 0;
5045
    (yy_start) = 0;
5046
5047
    (yy_start_stack_ptr) = 0;
5048
    (yy_start_stack_depth) = 0;
5049
    (yy_start_stack) =  NULL;
5050
5051
    (yy_state_buf) = 0;
5052
    (yy_state_ptr) = 0;
5053
    (yy_full_match) = 0;
5054
    (yy_lp) = 0;
5055
5056
/* Defined in main.c */
5057
#ifdef YY_STDINIT
5058
    yyin = stdin;
5059
    yyout = stdout;
5060
#else
5061
    yyin = (FILE *) 0;
5062
    yyout = (FILE *) 0;
5063
#endif
5064
5065
    /* For future reference: Set errno on error, since we are called by
5066
     * yylex_init()
5067
     */
5068
    return 0;
5069
}
5070
5071
/* yylex_destroy is for both reentrant and non-reentrant scanners. */
5072
int yylex_destroy  (void)
5073
{
5074
5075
    /* Pop the buffer stack, destroying each element. */
5076
	while(YY_CURRENT_BUFFER){
5077
		yy_delete_buffer(YY_CURRENT_BUFFER  );
5078
		YY_CURRENT_BUFFER_LVALUE = NULL;
5079
		yypop_buffer_state();
5080
	}
5081
5082
	/* Destroy the stack itself. */
5083
	yyfree((yy_buffer_stack) );
5084
	(yy_buffer_stack) = NULL;
5085
5086
    /* Destroy the start condition stack. */
5087
        yyfree((yy_start_stack)  );
5088
        (yy_start_stack) = NULL;
5089
5090
    yyfree ( (yy_state_buf) );
5091
    (yy_state_buf)  = NULL;
5092
5093
    /* Reset the globals. This is important in a non-reentrant scanner so the next time
5094
     * yylex() is called, initialization will occur. */
5095
    yy_init_globals( );
5096
5097
    return 0;
5098
}
5099
5100
/*
5101
 * Internal utility routines.
5102
 */
5103
5104
#ifndef yytext_ptr
5105
static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
5106
{
5107
	int i;
5108
	for ( i = 0; i < n; ++i )
5109
		s1[i] = s2[i];
5110
}
5111
#endif
5112
5113
#ifdef YY_NEED_STRLEN
5114
static int yy_flex_strlen (yyconst char * s )
5115
{
5116
	int n;
5117
	for ( n = 0; s[n]; ++n )
5118
		;
5119
5120
	return n;
5121
}
5122
#endif
5123
5124
void *yyalloc (yy_size_t  size )
5125
{
5126
104
	return (void *) malloc( size );
5127
}
5128
5129
void *yyrealloc  (void * ptr, yy_size_t  size )
5130
{
5131
	/* The cast to (char *) in the following accommodates both
5132
	 * implementations that use char* generic pointers, and those
5133
	 * that use void* generic pointers.  It works with the latter
5134
	 * because both ANSI C and C++ allow castless assignment from
5135
	 * any pointer type to void*, and deal with argument conversions
5136
	 * as though doing an assignment.
5137
	 */
5138
	return (void *) realloc( (char *) ptr, size );
5139
}
5140
5141
void yyfree (void * ptr )
5142
{
5143
	free( (char *) ptr );	/* see yyrealloc() for (char *) cast */
5144
}
5145
5146
#define YYTABLES_NAME "yytables"
5147
5148
#line 972 "scan.l"
5149
5150
5151
5152
5153
int yywrap()
5154
	{
5155
	if ( --num_input_files > 0 )
5156
		{
5157
		set_input_file( *++input_files );
5158
		return 0;
5159
		}
5160
5161
	else
5162
		return 1;
5163
	}
5164
5165
5166
/* set_input_file - open the given file (if NULL, stdin) for scanning */
5167
5168
void set_input_file( file )
5169
char *file;
5170
	{
5171
	if ( file && strcmp( file, "-" ) )
5172
		{
5173
		infilename = copy_string( file );
5174
		yyin = fopen( infilename, "r" );
5175
5176
		if ( yyin == NULL )
5177
			lerrsf( _( "can't open %s" ), file );
5178
		}
5179
5180
	else
5181
		{
5182
		yyin = stdin;
5183
		infilename = copy_string( "<stdin>" );
5184
		}
5185
5186
	linenum = 1;
5187
	}
5188
5189