Coverage Report

Created: 2025-08-26 06:38

/src/opensips/lex.yy.c
Line
Count
Source (jump to first uncovered line)
1
2
#line 3 "lex.yy.c"
3
4
#define  YY_INT_ALIGNED short int
5
6
/* A lexical scanner generated by flex */
7
8
#define FLEX_SCANNER
9
#define YY_FLEX_MAJOR_VERSION 2
10
#define YY_FLEX_MINOR_VERSION 6
11
#define YY_FLEX_SUBMINOR_VERSION 4
12
#if YY_FLEX_SUBMINOR_VERSION > 0
13
#define FLEX_BETA
14
#endif
15
16
/* First, we deal with  platform-specific or compiler-specific issues. */
17
18
/* begin standard C headers. */
19
#include <stdio.h>
20
#include <string.h>
21
#include <errno.h>
22
#include <stdlib.h>
23
24
/* end standard C headers. */
25
26
/* flex integer type definitions */
27
28
#ifndef FLEXINT_H
29
#define FLEXINT_H
30
31
/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
32
33
#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
34
35
/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
36
 * if you want the limit (max/min) macros for int types. 
37
 */
38
#ifndef __STDC_LIMIT_MACROS
39
#define __STDC_LIMIT_MACROS 1
40
#endif
41
42
#include <inttypes.h>
43
typedef int8_t flex_int8_t;
44
typedef uint8_t flex_uint8_t;
45
typedef int16_t flex_int16_t;
46
typedef uint16_t flex_uint16_t;
47
typedef int32_t flex_int32_t;
48
typedef uint32_t flex_uint32_t;
49
#else
50
typedef signed char flex_int8_t;
51
typedef short int flex_int16_t;
52
typedef int flex_int32_t;
53
typedef unsigned char flex_uint8_t; 
54
typedef unsigned short int flex_uint16_t;
55
typedef unsigned int flex_uint32_t;
56
57
/* Limits of integral types. */
58
#ifndef INT8_MIN
59
#define INT8_MIN               (-128)
60
#endif
61
#ifndef INT16_MIN
62
#define INT16_MIN              (-32767-1)
63
#endif
64
#ifndef INT32_MIN
65
#define INT32_MIN              (-2147483647-1)
66
#endif
67
#ifndef INT8_MAX
68
#define INT8_MAX               (127)
69
#endif
70
#ifndef INT16_MAX
71
#define INT16_MAX              (32767)
72
#endif
73
#ifndef INT32_MAX
74
#define INT32_MAX              (2147483647)
75
#endif
76
#ifndef UINT8_MAX
77
#define UINT8_MAX              (255U)
78
#endif
79
#ifndef UINT16_MAX
80
#define UINT16_MAX             (65535U)
81
#endif
82
#ifndef UINT32_MAX
83
#define UINT32_MAX             (4294967295U)
84
#endif
85
86
#ifndef SIZE_MAX
87
#define SIZE_MAX               (~(size_t)0)
88
#endif
89
90
#endif /* ! C99 */
91
92
#endif /* ! FLEXINT_H */
93
94
/* begin standard C++ headers. */
95
96
/* TODO: this is always defined, so inline it */
97
#define yyconst const
98
99
#if defined(__GNUC__) && __GNUC__ >= 3
100
#define yynoreturn __attribute__((__noreturn__))
101
#else
102
#define yynoreturn
103
#endif
104
105
/* Returned upon end-of-file. */
106
#define YY_NULL 0
107
108
/* Promotes a possibly negative, possibly signed char to an
109
 *   integer in range [0..255] for use as an array index.
110
 */
111
0
#define YY_SC_TO_UI(c) ((YY_CHAR) (c))
112
113
/* Enter a start condition.  This macro really ought to take a parameter,
114
 * but we do it the disgusting crufty way forced on us by the ()-less
115
 * definition of BEGIN.
116
 */
117
0
#define BEGIN (yy_start) = 1 + 2 *
118
/* Translate the current start state into a value that can be later handed
119
 * to BEGIN to return to the state.  The YYSTATE alias is for lex
120
 * compatibility.
121
 */
122
#define YY_START (((yy_start) - 1) / 2)
123
#define YYSTATE YY_START
124
/* Action number for EOF rule of a given start state. */
125
0
#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
126
/* Special action meaning "start processing a new file". */
127
0
#define YY_NEW_FILE yyrestart( yyin  )
128
0
#define YY_END_OF_BUFFER_CHAR 0
129
130
/* Size of default input buffer. */
131
#ifndef YY_BUF_SIZE
132
#ifdef __ia64__
133
/* On IA-64, the buffer size is 16k, not 8k.
134
 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
135
 * Ditto for the __ia64__ case accordingly.
136
 */
137
#define YY_BUF_SIZE 32768
138
#else
139
0
#define YY_BUF_SIZE 16384
140
#endif /* __ia64__ */
141
#endif
142
143
/* The state buf must be large enough to hold one state per character in the main buffer.
144
 */
145
#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
146
147
#ifndef YY_TYPEDEF_YY_BUFFER_STATE
148
#define YY_TYPEDEF_YY_BUFFER_STATE
149
typedef struct yy_buffer_state *YY_BUFFER_STATE;
150
#endif
151
152
#ifndef YY_TYPEDEF_YY_SIZE_T
153
#define YY_TYPEDEF_YY_SIZE_T
154
typedef size_t yy_size_t;
155
#endif
156
157
extern int yyleng;
158
159
extern FILE *yyin, *yyout;
160
161
0
#define EOB_ACT_CONTINUE_SCAN 0
162
0
#define EOB_ACT_END_OF_FILE 1
163
0
#define EOB_ACT_LAST_MATCH 2
164
    
165
    #define YY_LESS_LINENO(n)
166
    #define YY_LINENO_REWIND_TO(ptr)
167
    
168
/* Return all but the first "n" matched characters back to the input stream. */
169
#define yyless(n) \
170
  do \
171
    { \
172
    /* Undo effects of setting up yytext. */ \
173
        int yyless_macro_arg = (n); \
174
        YY_LESS_LINENO(yyless_macro_arg);\
175
    *yy_cp = (yy_hold_char); \
176
    YY_RESTORE_YY_MORE_OFFSET \
177
    (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
178
    YY_DO_BEFORE_ACTION; /* set up yytext again */ \
179
    } \
180
  while ( 0 )
181
0
#define unput(c) yyunput( c, (yytext_ptr)  )
182
183
#ifndef YY_STRUCT_YY_BUFFER_STATE
184
#define YY_STRUCT_YY_BUFFER_STATE
185
struct yy_buffer_state
186
  {
187
  FILE *yy_input_file;
188
189
  char *yy_ch_buf;    /* input buffer */
190
  char *yy_buf_pos;   /* current position in input buffer */
191
192
  /* Size of input buffer in bytes, not including room for EOB
193
   * characters.
194
   */
195
  int yy_buf_size;
196
197
  /* Number of characters read into yy_ch_buf, not including EOB
198
   * characters.
199
   */
200
  int yy_n_chars;
201
202
  /* Whether we "own" the buffer - i.e., we know we created it,
203
   * and can realloc() it to grow it, and should free() it to
204
   * delete it.
205
   */
206
  int yy_is_our_buffer;
207
208
  /* Whether this is an "interactive" input source; if so, and
209
   * if we're using stdio for input, then we want to use getc()
210
   * instead of fread(), to make sure we stop fetching input after
211
   * each newline.
212
   */
213
  int yy_is_interactive;
214
215
  /* Whether we're considered to be at the beginning of a line.
216
   * If so, '^' rules will be active on the next match, otherwise
217
   * not.
218
   */
219
  int yy_at_bol;
220
221
    int yy_bs_lineno; /**< The line count. */
222
    int yy_bs_column; /**< The column count. */
223
224
  /* Whether to try to fill the input buffer when we reach the
225
   * end of it.
226
   */
227
  int yy_fill_buffer;
228
229
  int yy_buffer_status;
230
231
0
#define YY_BUFFER_NEW 0
232
0
#define YY_BUFFER_NORMAL 1
233
  /* When an EOF's been seen but there's still some text to process
234
   * then we mark the buffer as YY_EOF_PENDING, to indicate that we
235
   * shouldn't try reading from the input source any more.  We might
236
   * still have a bunch of tokens to match, though, because of
237
   * possible backing-up.
238
   *
239
   * When we actually see the EOF, we change the status to "new"
240
   * (via yyrestart()), so that the user can continue scanning by
241
   * just pointing yyin at a new input file.
242
   */
243
0
#define YY_BUFFER_EOF_PENDING 2
244
245
  };
246
#endif /* !YY_STRUCT_YY_BUFFER_STATE */
247
248
/* Stack of input buffers. */
249
static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
250
static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
251
static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */
252
253
/* We provide macros for accessing buffer states in case in the
254
 * future we want to put the buffer states in a more general
255
 * "scanner state".
256
 *
257
 * Returns the top of the stack, or NULL.
258
 */
259
0
#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
260
0
                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
261
0
                          : NULL)
262
/* Same as previous macro, but useful when we know that the buffer stack is not
263
 * NULL or when we need an lvalue. For internal use only.
264
 */
265
0
#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
266
267
/* yy_hold_char holds the character lost when yytext is formed. */
268
static char yy_hold_char;
269
static int yy_n_chars;    /* number of characters read into yy_ch_buf */
270
int yyleng;
271
272
/* Points to current character in buffer. */
273
static char *yy_c_buf_p = NULL;
274
static int yy_init = 0;   /* whether we need to initialize */
275
static int yy_start = 0;  /* start state number */
276
277
/* Flag which is used to allow yywrap()'s to do buffer switches
278
 * instead of setting up a fresh yyin.  A bit of a hack ...
279
 */
280
static int yy_did_buffer_switch_on_eof;
281
282
void yyrestart ( FILE *input_file  );
283
void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer  );
284
YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size  );
285
void yy_delete_buffer ( YY_BUFFER_STATE b  );
286
void yy_flush_buffer ( YY_BUFFER_STATE b  );
287
void yypush_buffer_state ( YY_BUFFER_STATE new_buffer  );
288
void yypop_buffer_state ( void );
289
290
static void yyensure_buffer_stack ( void );
291
static void yy_load_buffer_state ( void );
292
static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file  );
293
#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
294
295
YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size  );
296
YY_BUFFER_STATE yy_scan_string ( const char *yy_str  );
297
YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len  );
298
299
void *yyalloc ( yy_size_t  );
300
void *yyrealloc ( void *, yy_size_t  );
301
void yyfree ( void *  );
302
303
#define yy_new_buffer yy_create_buffer
304
#define yy_set_interactive(is_interactive) \
305
  { \
306
  if ( ! YY_CURRENT_BUFFER ){ \
307
        yyensure_buffer_stack (); \
308
    YY_CURRENT_BUFFER_LVALUE =    \
309
            yy_create_buffer( yyin, YY_BUF_SIZE ); \
310
  } \
311
  YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
312
  }
313
#define yy_set_bol(at_bol) \
314
  { \
315
  if ( ! YY_CURRENT_BUFFER ){\
316
        yyensure_buffer_stack (); \
317
    YY_CURRENT_BUFFER_LVALUE =    \
318
            yy_create_buffer( yyin, YY_BUF_SIZE ); \
319
  } \
320
  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
321
  }
322
#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
323
324
/* Begin user sect3 */
325
typedef flex_uint8_t YY_CHAR;
326
327
FILE *yyin = NULL, *yyout = NULL;
328
329
typedef int yy_state_type;
330
331
extern int yylineno;
332
int yylineno = 1;
333
334
extern char *yytext;
335
#ifdef yytext_ptr
336
#undef yytext_ptr
337
#endif
338
0
#define yytext_ptr yytext
339
340
static yy_state_type yy_get_previous_state ( void );
341
static yy_state_type yy_try_NUL_trans ( yy_state_type current_state  );
342
static int yy_get_next_buffer ( void );
343
static void yynoreturn yy_fatal_error ( const char* msg  );
344
345
/* Done after the current pattern has been matched and before the
346
 * corresponding action - sets up yytext.
347
 */
348
#define YY_DO_BEFORE_ACTION \
349
0
  (yytext_ptr) = yy_bp; \
350
0
  (yytext_ptr) -= (yy_more_len); \
351
0
  yyleng = (int) (yy_cp - (yytext_ptr)); \
352
0
  (yy_hold_char) = *yy_cp; \
353
0
  *yy_cp = '\0'; \
354
0
  (yy_c_buf_p) = yy_cp;
355
#define YY_NUM_RULES 238
356
0
#define YY_END_OF_BUFFER 239
357
/* This struct is not used in this scanner,
358
   but its presence is necessary. */
359
struct yy_trans_info
360
  {
361
  flex_int32_t yy_verify;
362
  flex_int32_t yy_nxt;
363
  };
364
static const flex_int16_t yy_accept[1937] =
365
    {   0,
366
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
367
        0,    0,    0,    0,    0,    0,    0,    0,  239,  238,
368
        1,  195,  149,  213,  238,  207,  161,  154,  214,  187,
369
      186,  160,  152,  180,  153,  193,  201,  174,  174,  185,
370
      181,  143,  140,  142,  234,  234,  234,  234,  234,  234,
371
      190,  238,  191,  156,  238,  234,  234,  234,  234,  234,
372
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
373
      234,  234,  234,  234,  234,  188,  155,  189,  157,  229,
374
      229,  228,  215,  229,  217,  217,  218,  216,  232,  232,
375
      232,  232,  212,  210,  210,  211,  211,  211,  208,  209,
376
377
      211,  211,  211,  211,  211,  212,  211,  211,  211,  211,
378
      212,  212,  212,  211,  211,  238,  238,  237,    0,    0,
379
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
380
      146,  148,    0,  233,  167,  150,  168,  166,  163,  164,
381
      230,  165,    0,  176,    0,    0,    0,  174,  171,  162,
382
      158,  145,  141,  147,  144,  159,  234,  234,  234,  234,
383
      234,  234,  234,  194,  170,    0,  234,  234,  234,  234,
384
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
385
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
386
       17,   25,  234,  234,  234,  234,  234,  234,  234,  234,
387
388
      234,  178,  234,  234,  177,  234,  151,  234,  234,  234,
389
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
390
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
391
      234,  234,  169,  151,  227,  223,    0,  224,  221,  219,
392
      220,  222,    0,  231,  211,  211,  211,  211,    0,    0,
393
      211,  235,    0,    0,    0,    0,    0,    0,    0,    0,
394
        0,    0,    0,    0,    0,  176,    0,    0,  171,  175,
395
      174,    0,  171,  234,  234,  234,  234,  234,  234,    0,
396
      234,  234,  234,  234,  150,  196,  234,  234,  234,  234,
397
      234,  234,  234,  234,  234,  234,  234,  234,   72,  234,
398
399
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
400
       24,  234,  234,  234,  234,  234,    6,  234,  234,  234,
401
      234,  234,  234,  149,  234,  178,  234,  234,  234,  234,
402
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
403
      234,  234,  234,  234,  234,  234,   73,  234,  234,  125,
404
      234,  234,  234,  234,  234,  234,  234,  234,  177,  226,
405
      225,  211,    0,  236,  192,    0,  204,    0,    0,    0,
406
        0,    0,    0,    0,    0,  176,    0,    0,    0,  171,
407
      174,  173,  173,    0,    0,  171,    0,  234,  234,  234,
408
      200,  179,  234,    0,  234,  234,  234,  234,  234,  234,
409
410
      234,  234,  234,  234,   20,  234,  234,  234,  234,  234,
411
      234,  234,  234,  234,    3,  234,   18,  234,  234,  234,
412
      234,    4,  234,  234,  234,  234,  234,  234,  234,  234,
413
      234,  234,  234,    0,  234,  234,  234,  234,  234,  234,
414
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
415
      234,  234,  234,  234,  234,  234,  234,  234,   38,  234,
416
      234,  234,  234,  234,  234,   44,  234,  234,   31,   33,
417
      226,  225,    0,    0,  183,    0,    0,    0,    0,    0,
418
        0,  176,    0,    0,  171,    0,  174,    0,    0,  173,
419
      173,  171,  171,  234,  234,  234,    0,  234,  234,  234,
420
421
       70,  234,  234,   39,  234,  234,   22,  234,  234,  234,
422
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
423
      234,    7,  234,  234,  234,  234,  234,  234,  234,  234,
424
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
425
      234,  234,  234,    0,  234,  234,  234,  234,  234,  234,
426
      234,  137,  234,  234,  234,  234,  234,    0,  234,  234,
427
      234,  234,  234,    8,  234,  234,  234,  234,  234,  234,
428
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
429
      234,  234,  234,  234,  234,  234,  234,   23,  234,  234,
430
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
431
432
        0,    0,  171,  171,    0,    0,  173,  173,  173,  171,
433
      171,    0,  234,  234,  234,    0,  234,  234,  234,  234,
434
        2,  234,  234,  234,  234,   43,  234,  234,  234,  234,
435
      234,  234,  234,  234,  234,  234,  234,  177,  234,  234,
436
      234,  234,  234,  234,   27,  234,   40,   67,  234,  234,
437
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
438
      234,    0,  234,  234,  234,  234,   91,  102,  234,  234,
439
      234,  234,  234,  234,    0,  234,  234,    5,  234,  234,
440
      234,  234,  234,  234,  234,   68,  234,  234,   19,  234,
441
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
442
443
      234,  234,  234,  234,  234,  234,  234,  234,  205,    0,
444
        0,    0,    0,    0,  172,  172,    0,    0,  171,  171,
445
        0,    0,    0,    0,  173,  173,  173,    0,  171,  171,
446
      234,  197,  234,    0,  234,  234,  234,  234,  234,  234,
447
      234,  234,  234,  234,  234,   21,  178,  234,  234,  234,
448
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
449
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
450
      234,  234,  234,  234,  234,  234,    0,  234,  234,   92,
451
      234,  234,  234,  234,  234,  234,  234,    0,  234,  234,
452
      234,   74,  234,  234,  234,  234,  234,  234,  234,  234,
453
454
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
455
      234,  234,  234,  234,  234,  234,  234,  234,    0,    0,
456
        0,    0,    0,    0,    0,    0,    0,    0,  172,    0,
457
        0,    0,  171,  171,    0,    0,  173,    0,  173,  173,
458
      173,  171,  171,    0,  234,  234,    0,  234,  234,  234,
459
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
460
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
461
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
462
      234,   65,  234,  234,  234,  234,  234,  234,  234,    0,
463
      234,  139,  234,  234,  234,  234,  234,  234,    0,   26,
464
465
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
466
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
467
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
468
      234,  234,    0,    0,    0,    0,    0,    0,    0,    0,
469
        0,  173,  173,    0,    0,  171,  171,    0,    0,    0,
470
        0,  173,  173,  173,  173,    0,  171,  171,  234,  234,
471
        0,    0,  234,  234,  234,  234,  234,  234,   83,  234,
472
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
473
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
474
      234,  234,  234,  234,  234,  234,  234,  234,   49,  234,
475
476
      234,  234,  234,  234,   82,  234,  124,   69,  234,  234,
477
      234,  234,  234,  234,  234,   26,  234,  234,  234,  234,
478
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
479
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
480
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
481
      234,  234,    0,    0,    0,    0,    0,    0,    0,    0,
482
        0,    0,  173,    0,    0,    0,  171,  171,    0,    0,
483
      173,  173,    0,  173,  173,  171,  171,    0,  234,  199,
484
        0,    0,  234,  234,  234,  234,  234,  234,  234,  234,
485
      234,   41,  234,  234,  234,  234,  234,  234,  234,  234,
486
487
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
488
      234,  234,  234,  138,  234,  234,  234,  234,  234,   50,
489
      234,   51,  234,  234,  234,  234,  234,  234,  234,  234,
490
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
491
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
492
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
493
      234,  234,  234,  234,  234,  234,   37,  234,    0,    0,
494
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
495
        0,  171,  171,    0,    0,    0,    0,  173,  173,  173,
496
      173,    0,  171,  171,  234,    0,    0,  234,  234,  234,
497
498
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
499
       78,  234,  234,  234,  234,  234,  234,  234,   12,  234,
500
       16,  234,  234,  234,  234,  234,  234,   13,  234,  234,
501
      234,  234,  234,  234,  234,  234,   86,  234,  234,  110,
502
      234,  234,  234,  234,  234,  234,  234,  234,  234,  101,
503
      234,  234,  234,  234,  234,  234,  234,  234,   66,  234,
504
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
505
      234,  105,  234,   15,  234,   42,  234,  234,  234,  234,
506
        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
507
        0,    0,  171,  171,    0,    0,  173,  173,    0,  173,
508
509
      173,  171,  171,    0,  234,    0,    0,  234,  234,  234,
510
      234,   71,  234,   11,  234,  234,  234,  234,  234,  234,
511
      234,  234,  234,   75,  234,  234,  234,  234,  234,  234,
512
      234,  234,  234,  234,  234,  234,  234,   63,  234,  234,
513
       52,  234,  234,  234,  234,  234,  234,  234,  234,  234,
514
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
515
      234,  234,  234,  234,  234,  234,  234,  234,  114,  234,
516
      234,  234,  234,  234,  234,  234,   96,  234,  234,  234,
517
      234,  234,    0,    0,    0,    0,  202,    0,  182,    0,
518
        0,    0,    0,    0,  171,  171,    0,    0,    0,    0,
519
520
      173,  173,  173,  173,    0,  171,  171,  234,    0,    0,
521
        0,  234,  234,  234,  234,  234,  234,  234,  234,  234,
522
      234,  234,  234,  234,   77,  234,   76,  234,  128,  234,
523
      234,  234,  234,  234,  234,  234,   10,  234,  234,  234,
524
      234,  234,  234,  234,  234,    9,  234,  234,  234,  234,
525
      234,  119,  234,  234,  234,  234,   14,  234,  234,  234,
526
      234,  234,  234,  234,  234,  234,  234,  112,  113,  234,
527
      234,  234,  234,  234,  234,  136,  234,   34,  234,  234,
528
        0,    0,    0,    0,    0,    0,    0,    0,    0,  171,
529
      171,    0,    0,  173,  173,    0,  173,  173,  171,  171,
530
531
        0,  234,    0,    0,   28,  234,  234,  234,  234,  234,
532
      234,  131,  234,  234,  234,  234,  234,  234,  234,   79,
533
      234,   47,  234,  234,  234,  234,  234,  234,  234,  234,
534
      234,  234,  234,  123,  234,  234,  234,  234,  234,  234,
535
      234,  234,  234,  234,  234,  234,  234,  234,  234,   54,
536
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
537
      234,  234,  234,  234,  234,  206,  203,    0,    0,  173,
538
      173,    0,  171,  171,  171,    0,    0,    0,    0,  173,
539
      173,  173,  173,    0,  171,  171,  234,    0,    0,   48,
540
      234,  234,  122,  234,  234,  234,  234,  234,  234,  234,
541
542
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
543
      234,  234,  234,   81,  234,  234,  234,  234,  234,  234,
544
      234,  234,  234,  234,   93,  234,  234,  234,  234,   64,
545
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
546
      234,  234,  234,  234,    0,    0,  173,    0,  171,  171,
547
      171,    0,    0,  173,  173,    0,  173,  173,  171,  171,
548
      198,    0,    0,  234,  234,  234,  234,  130,  234,  234,
549
      234,  234,  234,  234,  234,  234,  234,  234,   95,   94,
550
      234,  234,  234,   62,  234,  234,  234,   46,  234,  234,
551
      100,  234,  118,  234,  234,   53,  234,  234,  234,  234,
552
553
      234,  234,  234,  115,  234,  116,  234,  234,  234,  234,
554
       35,   36,    0,    0,  171,  171,  171,    0,    0,    0,
555
      173,  173,  173,  173,    0,  171,    0,   30,  234,  234,
556
      234,  234,  234,   45,  234,  234,  234,  234,  234,  234,
557
      234,  234,   55,  234,   61,  234,  234,  234,   32,   99,
558
      234,  234,  234,  234,  234,  234,   60,  234,  234,  234,
559
      234,  234,  234,  234,  234,  120,    0,    0,  171,  171,
560
        0,  173,  173,  173,    0,  173,  173,  171,    0,  121,
561
      135,  234,  234,  234,  234,  234,  234,  234,  234,  234,
562
      234,  234,  234,  234,  234,  234,  234,  234,  234,  234,
563
564
      106,  234,  234,  234,  234,  234,  234,  109,    0,    0,
565
      171,    0,  173,  173,  173,  173,  173,   29,  234,  234,
566
      234,  234,  234,  234,   80,   98,   97,  234,   86,  234,
567
      234,  234,  234,  234,  234,   59,   57,  107,  234,  111,
568
      234,  234,  234,    0,    0,  173,  173,  173,  173,  134,
569
      234,  234,  234,  126,  234,  234,  234,  234,  234,  234,
570
      234,  234,  234,  234,  234,  234,    0,    0,  173,  173,
571
      173,  234,  234,  127,  129,  234,  234,  234,  234,  234,
572
      234,  234,   56,  234,  103,  234,  234,    0,    0,  173,
573
      234,  234,   58,  234,   88,  234,  234,  234,  234,  234,
574
575
      234,  234,    0,    0,  234,  133,  234,  234,  234,  234,
576
       85,  108,  104,  234,    0,    0,  132,   87,  234,   90,
577
      234,  234,    0,  234,   84,  234,  184,  234,  234,  234,
578
      234,  234,  117,  234,   89,    0
579
    } ;
580
581
static const YY_CHAR yy_ec[256] =
582
    {   0,
583
        1,    1,    1,    1,    1,    1,    1,    2,    3,    4,
584
        1,    1,    3,    1,    1,    1,    1,    1,    1,    1,
585
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
586
        1,    5,    6,    7,    8,    9,   10,   11,   12,   13,
587
       14,   15,   16,   17,   18,   19,   20,   21,   22,   22,
588
       23,   22,   24,   25,   22,   26,   26,   27,   28,   29,
589
       30,   31,    1,    1,   32,   33,   34,   35,   36,   37,
590
       38,   39,   40,   41,   42,   43,   44,   45,   46,   47,
591
       41,   48,   49,   50,   51,   41,   52,   41,   53,   41,
592
       54,   55,   56,   57,   58,    1,   59,   60,   61,   62,
593
594
       63,   64,   65,   66,   67,   68,   69,   70,   71,   72,
595
       73,   74,   75,   76,   77,   78,   79,   80,   81,   82,
596
       83,   84,   85,   86,   87,   88,    1,    1,    1,    1,
597
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
598
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
599
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
600
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
601
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
602
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
603
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
604
605
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
606
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
607
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
608
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
609
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
610
        1,    1,    1,    1,    1
611
    } ;
612
613
static const YY_CHAR yy_meta[89] =
614
    {   0,
615
        1,    1,    1,    2,    1,    1,    1,    1,    1,    1,
616
        1,    1,    1,    1,    1,    1,    1,    1,    3,    4,
617
        5,    5,    5,    5,    5,    5,    6,    1,    1,    1,
618
        1,    5,    5,    5,    5,    5,    5,    7,    7,    7,
619
        7,    7,    7,    7,    7,    7,    7,    7,    7,    7,
620
        7,    7,    7,    1,    1,    1,    1,    7,    5,    5,
621
        5,    5,    5,    5,    7,    7,    7,    7,    7,    7,
622
        7,    7,    7,    7,    7,    7,    7,    7,    7,    7,
623
        7,    8,    7,    7,    1,    1,    1,    1
624
    } ;
625
626
static const flex_int16_t yy_base[2124] =
627
    {   0,
628
        0,    0,   87,   93,   99,  103,  107,  111,    0,    0,
629
      146,  232, 4127, 4126, 4125, 4124, 4124, 4123, 4126, 4133,
630
      121, 4133,   90, 4133, 4121, 4133, 4094,   88, 4133, 4133,
631
     4133, 4093, 4092, 4133, 4091, 4133,  102,  114,  162,   94,
632
     4133,   99,  104,  113,  300,  344, 4072, 4092,   96,  118,
633
     4133, 4114, 4133, 4087, 4058,  150, 4039,   99,  130,  194,
634
      150,  152,  198,  214,  142,  226,  206,  177,  240,  319,
635
      280,  231,  282,  268,  168, 4133,  183, 4133, 4133, 4133,
636
     4133, 4133, 4133,  389, 4133, 4133, 4133, 4133, 4133, 4133,
637
     4094, 4098, 4133, 4133, 4133,  184, 4082,  267, 4133, 4133,
638
639
     4081, 4080, 4133, 4079, 4078, 4077,  210,  224,  251, 4076,
640
     4033, 4031, 4027,  198, 4133,    0, 4095, 4133, 4052, 4047,
641
     4054, 4064, 4051, 4047, 4018, 4011, 4021, 4031, 4018, 4013,
642
     4133, 4133, 4085, 4133, 4133, 4133, 4133, 4133, 4133, 4133,
643
     4133, 4133,  394,  400, 4061, 4060,    0,  407, 4066, 4133,
644
     4133, 4133, 4133, 4133, 4133, 4133,  451, 4051, 4057,   66,
645
       98,  174,  241, 4133, 4133, 4037, 4009, 4020, 4000,  141,
646
      267,  274,  113,  256, 4002,  325, 4020,  191,  272,  313,
647
      258,  316,  360,  269,  315,  346,  372,  244,  362,  409,
648
     4050, 4049,  279,  368,  430,  290,  420,  283,  423,  416,
649
650
      422,  414,  424,  426,  425,  435, 4048,  427,  442,  436,
651
      443,  428,  429,  371,  432,  455,  466,  413,  431,  439,
652
      482,  490,  491,  492,  499,  497,  500,  502,  503,  504,
653
      505,  506, 4133, 4133, 4133, 4133,  513, 4133, 4133, 4133,
654
     4133, 4133,    0, 4133, 4133, 4133, 4133, 4133, 4012, 3995,
655
     4133,    0, 4065,  537, 4037,  541, 4038, 4020, 4032, 4006,
656
     4007, 3988, 4001, 4044,  526,  563, 4035, 4034, 4040,    0,
657
      570,  577,  535,  584, 4023,  531,  532,  514,  526, 4009,
658
      536, 3994,  550,  555, 4029,  554,  595,  539,  553,  596,
659
      597,  598,  601,  600,  603, 3976, 3995,  604,  602,  605,
660
661
      606,  607,  609,  608,  610,  611,  612,  613,  614,  615,
662
     4026,  622,  623,  624,  626,  627,  639,  640,  628,  658,
663
      625,  630,  632, 4025,  644, 4024,  648,  650,  651,  662,
664
      664,  667,  666,  672,  676,  674,  679,  680,  681,  685,
665
      686,  682,  691,  688,  698,  692, 4023,  690,  700, 4022,
666
      704,  703,  696,  697,  699,  706,  711,  714, 4021,  759,
667
        0, 4133, 4040, 4039, 4133, 4002, 4133, 4001,  732, 3985,
668
     3972, 3971, 3982,  764,  772,  778, 4012, 4011, 4010,  722,
669
      785, 4009,  792, 4008, 4007,  725,    0, 4006,  527,  738,
670
     4005, 4004,  347, 3981,  744,  747,  750,  751,  765,  793,
671
672
      796,  798,  800,  802, 4002,  803,  804,  805,  806,  807,
673
      808,  809,  814,  813, 4001,  815, 4000,  810,  811,  816,
674
      824, 3999,  817,  818,  820,  823,  822,  825,  828,  836,
675
      821,  826,  831, 3960,  849,  833,  851,  840,  874,  852,
676
      854,  887,  888,  889,  837,  899,  894,  895,  896,  898,
677
      900,  904,  902,  905,  907,  909,  908,  913, 3997,  910,
678
      921,  911,  912,  915,  917, 3996,  922,  914, 3995,  920,
679
     4133, 4133, 3985, 3984, 4133,  807, 3956, 3955,  910, 3998,
680
      982,  933, 3989, 3988,  923,    0,  990, 3987, 3986,  996,
681
        0, 1004, 1005,  939,  999,  970, 3965,  983,  967,  973,
682
683
     3984, 1000, 1002, 3983, 1006, 1003, 3982, 1008, 1007, 1009,
684
     1010, 1011, 1012, 1016, 1019, 1013, 1015, 1017, 1020, 1025,
685
     1027, 1023, 1026, 1029, 1022, 1028, 1033, 1030, 1032, 1031,
686
     1034, 1041, 1035, 1045, 1036, 1047, 1037, 1052, 1040, 1044,
687
     1055, 1048, 1061, 3932, 1074, 1075, 1081, 1090, 1082, 1093,
688
     1091, 3980, 1096, 1098, 1097, 1102, 1099, 3933, 1100, 1101,
689
     1103, 1105, 1104, 3978, 1106, 1111, 1108, 1110, 1115, 1107,
690
     1109, 1114, 1112, 1116, 1118, 1119, 1117, 1124, 1122, 1125,
691
     1123, 1127, 1129, 1131, 1133, 1132, 1138, 3977, 1137, 1159,
692
     3954,  959, 3951, 3955, 3923, 3920, 3925, 1187, 1213, 3970,
693
694
     3969, 3968, 1167, 1179, 3967, 3966,    0, 1219, 3965, 1194,
695
     1195,    0, 1162, 1174,  819, 3944, 1176, 1173, 1189, 1190,
696
     3963, 1191, 1198, 1199, 1171, 3962, 1201, 1200, 1203, 1220,
697
     1221, 1223, 1225, 1226, 1227, 1235, 1228, 1236, 1237, 1238,
698
     1239, 1240, 1242, 1243, 3961, 1244, 3960, 3959, 1247, 1245,
699
     1255, 1261, 1250, 1246, 1251, 1249, 1262, 1265, 1257, 1266,
700
     1258, 3912, 1263, 1268, 1256, 1269, 3957, 3956, 1270, 1248,
701
     1273, 1274, 1277, 1278, 3910, 1308, 1279, 3954, 1312, 1314,
702
     1317, 1318, 1319, 1320, 1321, 3953, 1324, 1323, 3952, 1325,
703
     1326, 1327, 1329, 1328, 1331, 1332, 1333, 1335, 1336, 1337,
704
705
     1338, 1339, 1340, 1341, 1334, 1343, 1344, 1342, 1371, 1399,
706
     3928, 3929, 3898, 3899, 3954, 1400, 3946, 3945, 1352, 1357,
707
        0, 3944, 3943, 3942, 3941, 1406, 3940,    0, 1415, 1416,
708
     1410, 3939, 1411, 3907, 1376, 1379, 1412, 1382, 1413, 1414,
709
     1417, 1366, 1420, 1419, 1424, 3937, 1425, 1426, 1427, 1433,
710
     1435, 1431, 1428, 1436, 1437, 1438, 1439, 1440, 1443, 1441,
711
     1442, 1446, 1444, 1448, 1450, 1447, 1453, 1449, 1455, 1461,
712
     1454, 1467, 1458, 1468, 1469, 1471, 3884, 1472, 1473, 3935,
713
     1474, 1476, 1483, 1488, 1489, 1499, 1500, 3891, 1502, 1505,
714
     1506, 3933, 1509, 1508, 1510, 1511, 1516, 1514, 1520, 1527,
715
716
     1524, 1521, 1528, 1523, 1529, 1512, 1525, 1532, 1531, 1530,
717
     1533, 1535, 1534, 1541, 1546, 1537, 1538, 1542, 1609, 3913,
718
     3911, 3884, 3882, 3909, 3912, 3880, 3883, 1598, 1605, 3924,
719
     3923, 3922, 1556, 1562, 3921, 3920, 3919,    0, 1611, 3918,
720
     3917, 1578, 1618,    0, 1565, 1612,  713, 1588, 1590, 1613,
721
     1614, 1615, 1616, 1620, 1617, 1621, 1622, 1624, 1630, 1623,
722
     1625, 1629, 1626, 1628, 1631, 1632, 1635, 1636, 1638, 1641,
723
     1644, 1639, 1640, 1637, 1647, 1643, 1645, 1648, 1656, 1650,
724
     1666, 3916, 1657, 1651, 1653, 1667, 1655, 1677, 1683, 3868,
725
     1685, 3914, 1689, 1692, 1694, 1698, 1702, 1701, 3857, 3912,
726
727
     1707, 1706, 1708, 1709, 1710, 1711, 1713, 1712, 1714, 1715,
728
     1716, 1718, 1720, 1719, 1717, 1724, 1735, 1734, 1736, 1722,
729
     1737, 1721, 1740, 1731, 1727, 1732, 1747, 1742, 1743, 1748,
730
     1759, 1745, 3898, 3870, 3884, 1810, 3854, 3876, 3897, 3874,
731
     3868, 3911, 1802, 3902, 3901, 1784, 1809,    0, 3900, 3899,
732
     3898, 3897, 3896, 3895, 3894,    0, 1810, 1811, 1355, 1789,
733
     3880, 3879, 1730, 1780, 1791, 1792, 1793, 1805, 3891, 1807,
734
     1806, 1808, 1814, 1821, 1817, 1816, 1818, 1819, 1822, 1820,
735
     1823, 1824, 1825, 1827, 1828, 1834, 1829, 1835, 1830, 1831,
736
     1836, 1837, 1832, 1838, 1839, 1841, 1843, 1840, 3890, 1844,
737
738
     1845, 1846, 1847, 1856, 3889, 1852, 3888, 4133, 1848, 1851,
739
     1854, 1859, 1875, 1876, 1884, 4133, 1888, 1889, 1891, 1892,
740
     1894, 1901, 1902, 1903, 1906, 1907, 1909, 1911, 1910, 1915,
741
     1912, 1914, 1917, 1916, 1918, 1922, 1920, 1919, 1921, 1925,
742
     1926, 1931, 1927, 1928, 1929, 1936, 1932, 1933, 1935, 1946,
743
     1947, 1938, 3864, 3835, 3867, 2016, 3839, 3861, 3861, 3831,
744
     3831, 2001, 2009, 3879, 3878, 3877, 1949, 1961, 3876, 3875,
745
     3874, 3873,    0, 3872, 3871, 1962, 1979,    0,  827, 3870,
746
     3853, 3850, 1960, 1958, 1971, 1973, 1983, 1986, 1987, 1988,
747
     2011, 3867,  437, 2012, 2013, 2014, 2016, 2015, 2019, 2017,
748
749
     2021, 2020, 2024, 2022, 2023, 2025, 2029, 2026, 2027, 2032,
750
     2036, 2038, 2030, 3866, 2043, 2044, 2034, 2031, 2041, 3865,
751
     2035, 3864, 2045, 2040, 2048, 2047, 2053, 2054, 2049, 2056,
752
     2051, 2057, 2060, 2075, 2050, 2091, 2093, 2094, 2096, 2098,
753
     2100, 2102, 2104, 2103, 2107, 2105, 2109, 2108, 2110, 2111,
754
     2112, 2113, 2115, 2114, 2116, 2117, 2118, 2119, 2121, 2123,
755
     2126, 2131, 2124, 2127, 2128, 2130, 3863, 2142, 3850, 3822,
756
     2194, 3841, 3813, 3851, 3835, 3822, 3805, 3862, 2183, 3853,
757
     3852, 2183, 2191,    0, 3851, 3850, 3849, 3848, 3847, 3846,
758
     3845,    0, 2192, 2193, 2137, 3835, 3834, 2145, 2151, 2157,
759
760
     2187, 2188, 2154, 2194, 2196, 2198, 2200, 2199, 2201, 2202,
761
     3842, 2203, 2205, 1254, 2206, 2207, 2208, 2210, 3841, 2209,
762
     3840, 2211, 2212, 2213, 2214, 2215, 2216, 3839, 2218, 2219,
763
     2217, 2223, 2220, 2221, 2222, 2234, 2238, 2224, 2228, 3838,
764
     2239, 2225, 2241, 2227, 2242, 2252, 2240, 2229, 2233, 3837,
765
     2243, 2254, 2244, 2280, 2245, 2281, 2285, 2289, 3836, 2287,
766
     2290, 2291, 2292, 2293, 2295, 2296, 2301, 2299, 2300, 2302,
767
     2303, 3835, 2304, 3834, 2298, 3833, 2306, 2305, 2308, 2307,
768
     3819, 3791, 2334, 2338, 3825, 2347, 3797, 2357, 2369, 3828,
769
     3827, 3826, 2327, 2376, 3825, 3824, 3823, 3822,    0, 3821,
770
771
     3820, 2377, 2378,    0,  720, 2366, 3788, 2338, 2315, 2348,
772
     2334, 3818, 2358, 3817, 2311, 2373, 2317, 2336, 2379, 2381,
773
     2384, 2386, 2382, 3816, 2388, 2390, 2340, 2392, 2393, 2395,
774
     2394, 2396, 2397, 2399, 2398, 2401, 2400, 3815, 2408, 2402,
775
     3814, 2403, 2406, 2409, 2405, 2407, 2415, 2417, 2411, 2419,
776
     2412, 2413, 2423, 2425, 2416, 2421, 2435, 2431, 2429, 2450,
777
     2426, 2451, 2428, 2454, 2455, 2458, 2469, 2470, 3813, 2471,
778
     2473, 2475, 2476, 2477, 2478, 2479, 3812, 2480, 2481, 2483,
779
     2485, 2487, 3793, 3765, 3790, 3762, 4133, 3791, 4133, 3763,
780
     3813, 2496, 3804, 3803, 2496, 2507,    0, 3802, 3801, 3800,
781
782
     3799, 3798, 3797, 3796,    0, 2518, 2532, 1353, 3786, 3776,
783
     3762, 2484, 2502, 2501, 2498, 2503, 2499, 2512, 2515, 2513,
784
     2516, 2524, 2527, 2528, 3792, 2529, 3791, 2535, 3790, 2538,
785
     2540, 2541, 2539, 2543, 2544, 2545, 3789, 2549, 2556, 2552,
786
     2554, 2553, 2555, 2558, 2563, 3788, 2557, 2560, 2561, 2564,
787
     2565, 3787, 2566, 2568, 2569, 2578, 3786, 2570, 2573, 2580,
788
     2572, 2579, 2583, 2584, 2581, 2585, 2586, 3785, 3784, 2587,
789
     2598, 2596, 2605, 2606, 2608, 3783, 2612, 3782, 2614, 2622,
790
     2659, 2663, 3768, 3740, 2664, 2672, 3779, 3778, 3777, 2652,
791
     2653, 3776, 3775, 3774, 3773,    0, 3772, 3771, 2654, 2656,
792
793
        0, 2665, 3759, 3761, 4133, 2623, 2643, 2624, 2628, 2629,
794
     2627, 3768, 2648, 2672, 2677, 2651, 2680, 2681, 2682, 3767,
795
     2686, 3766, 2684, 2687, 2688, 2689, 2690, 2692, 2693, 2695,
796
     2691, 2696, 2697, 3765, 2698, 2699, 2700, 2701, 2702, 2704,
797
     2707, 2705, 2706, 2708, 2710, 2713, 2722, 2714, 2711, 3764,
798
     2716, 2719, 2720, 2729, 2723, 2732, 2743, 2725, 2724, 2726,
799
     2748, 2740, 2754, 2760, 2762, 4133, 4133, 3745, 3717, 4133,
800
     2796, 3761, 3767, 2773, 2777,    0, 3759, 3758, 3757, 3756,
801
     3755, 3754, 3753,    0, 2781, 3759, 2765, 3738, 3719, 3749,
802
     2769, 2779, 3748, 2778, 2780, 2785, 2786, 2787, 2796, 2797,
803
804
     2799, 2788, 2800, 2802, 2805, 2801, 2803, 2804, 2810, 2816,
805
     2817, 2807, 2818, 3747, 2813, 2808, 2819, 2809, 2811, 2820,
806
     2821, 2825, 2827, 2823, 3746, 2824, 2834, 2828, 2829, 3745,
807
     2833, 2835, 2836, 2837, 2850, 2851, 2855, 2862, 2858, 2871,
808
     2866, 2872, 2874, 2875, 3733, 3705, 2885, 3742, 3748, 2892,
809
     3747, 3739, 3738, 3737, 3736,    0, 3735, 3734, 2897, 3740,
810
     3732, 3713, 3699, 2887, 2888, 2891, 2896, 3729, 2899, 2900,
811
     2901, 2902, 2904, 2905, 2906, 2907, 2912, 2913, 3728, 3727,
812
     2911, 2914, 2921, 3726, 2915, 2924, 2925, 3725, 2926, 2927,
813
     3724, 2919, 3723, 2929, 2916, 3722, 2910, 2930, 2917, 2920,
814
815
     2933, 2932, 2935, 3721, 2934, 3720, 2939, 2938, 2936, 2940,
816
     3719, 3718, 3686, 3685, 3722, 2977, 3721, 3713, 3712, 3711,
817
     3710, 3709, 3708, 3707,    0, 3713, 3674, 4133, 2942, 2959,
818
     2944, 2967, 2976, 3704, 2979, 2981, 2983, 2985, 2986, 2987,
819
     2990, 2991, 3703, 2993, 3702, 2996, 2994, 2997, 3701, 3700,
820
     3002, 2998, 2999, 3001, 3005, 3004, 3699, 3000, 3006, 3008,
821
     3007, 3009, 3010, 3017, 3011, 3698, 3677, 3649, 3702, 3701,
822
     3693,    0, 3692, 3691,    0, 3690,    0, 3696, 3657, 3687,
823
     3686, 3012, 3020, 3021, 3016, 3015, 3023, 3013, 3024, 3027,
824
     3018, 3028, 3031, 3039, 3041, 3065, 3067, 3066, 3068, 3069,
825
826
     3685, 3070, 3071, 3072, 3073, 3077, 3078, 3684, 3662, 3633,
827
     3688, 3680,    0, 3679,    0, 3678,    0, 4133, 3074, 3075,
828
     3079, 3081, 3080, 3082, 3677, 3676, 3675, 3083, 3674, 3084,
829
     3091, 3094, 3092, 3085, 3096, 3673, 3672, 3671, 3086, 3670,
830
     3095, 3101, 3088, 3650, 3622,    0, 3667,    0,    0, 3666,
831
     3100, 3102, 3093, 3665, 3104, 3105, 3106, 3108, 3111, 3103,
832
     3109, 3113, 3112, 3147, 3114, 3150, 3654, 3626, 4133,    0,
833
     4133, 3151, 3153, 3662, 3661, 3154, 3155, 3156, 3158, 3160,
834
     3159, 3163, 3660, 3164, 3345, 3166, 3165, 3318, 3284, 4133,
835
     3167, 3168, 3321, 3171, 3270, 3170, 3169, 3173, 3175, 3179,
836
837
     3178, 3172, 3253, 3225, 3174, 3266, 3186, 3182, 3187, 3189,
838
     3265, 3264, 3263, 3176, 3253, 3225, 3260, 3259, 3193, 3258,
839
     3194, 3191, 3231, 3201, 3257, 3202, 4133, 3180, 3188, 3196,
840
     3184, 3228, 3256, 3231, 3255, 4133, 3298, 3306, 3314, 3322,
841
     3330, 3338, 3344, 3348, 3356, 3360, 3362, 3276, 3365, 3275,
842
     3370, 3374, 3376, 3379, 3380, 3383, 3274, 3385, 3387, 3390,
843
     3392, 3395, 3273, 3397, 3399, 3402, 3272, 3404, 3406, 3271,
844
     3409, 3412, 3414, 3416, 3419, 3422, 3424, 3426, 3270, 3428,
845
     3431, 3269, 3433, 3435, 3438, 3268, 3440, 3442, 3444, 3446,
846
     3267, 3449, 3452, 3454, 3456, 3459, 3462, 3464, 3466, 3468,
847
848
     3266, 3470, 3472, 3475, 3265, 3477, 3479, 3482, 3264, 3484,
849
     3486, 3488, 3490, 3492, 3263, 3495, 3498, 3500, 3502, 3505,
850
     3508, 3510, 3512, 3514, 3262, 3516, 3518, 3521, 3261, 3523,
851
     3525, 3528, 3257, 3530, 3532, 3534, 3536, 3538, 3205, 3541,
852
     3544, 3546, 3548, 3551, 3554, 3556, 3558, 3560, 3199, 3562,
853
     3564, 3567, 3111, 3569, 3571, 3574, 3109, 3576, 3578, 3580,
854
     3582, 3584, 2944, 3587, 3590, 3592, 3594, 3597, 3600, 3602,
855
     3604, 3606, 2156, 3608, 3610, 3613, 2155, 3615, 3618, 3620,
856
     2151, 3622, 3624, 3626, 3628, 3630, 1871, 3633, 3636, 3638,
857
     3640, 3643, 3644, 3646, 3648, 1572, 3650, 3652, 3655, 3657,
858
859
     3659, 3660, 3662, 3664, 3666, 3668,  976, 3671, 3673, 3674,
860
      947, 3676,  946, 3678,  741,  571, 3680,  567,  379,  141,
861
      225,  311,  370
862
    } ;
863
864
static const flex_int16_t yy_def[2124] =
865
    {   0,
866
     1936,    1, 1937, 1937, 1938, 1938, 1939, 1939, 1940, 1940,
867
     1941, 1941, 1940, 1940, 1940, 1940, 1940, 1940, 1936, 1936,
868
     1936, 1936, 1936, 1936, 1942, 1936, 1936, 1936, 1936, 1936,
869
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1943, 1943, 1936,
870
     1936, 1936, 1936, 1936, 1944, 1944,   46, 1944, 1944, 1944,
871
     1936, 1936, 1936, 1936, 1936,   46,   46,   46,   46,   46,
872
       46, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
873
     1944, 1944, 1944, 1944, 1944, 1936, 1936, 1936, 1936, 1936,
874
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
875
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
876
877
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
878
     1936, 1936, 1936, 1936, 1936, 1945, 1936, 1936, 1936, 1936,
879
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
880
     1936, 1936, 1942, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
881
     1936, 1936, 1936, 1946, 1946, 1947, 1948, 1946, 1949, 1936,
882
     1936, 1936, 1936, 1936, 1936, 1936,   46,  157, 1944, 1944,
883
     1944, 1944, 1944, 1936, 1936, 1936,  157,  157,  157, 1944,
884
     1944, 1944, 1944, 1944,  157, 1944,  157,  157, 1944, 1944,
885
     1944, 1944, 1944, 1944, 1944, 1944, 1944,  157, 1944, 1944,
886
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
887
888
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
889
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
890
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
891
     1944, 1944, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
892
     1936, 1936, 1950, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
893
     1936, 1945, 1951, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
894
     1936, 1936, 1936, 1936, 1936, 1952, 1952, 1953, 1954, 1948,
895
     1952, 1955, 1956,  157,  274, 1944, 1944, 1944, 1944, 1936,
896
     1944,  274, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
897
     1944, 1944, 1944, 1944, 1944,  274,  274, 1944, 1944, 1944,
898
899
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
900
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
901
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
902
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
903
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
904
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936,
905
     1957, 1936, 1951, 1951, 1936, 1936, 1936, 1936, 1936, 1936,
906
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1958, 1959, 1960,
907
     1936, 1961, 1961, 1936, 1961, 1962, 1963, 1944, 1944, 1944,
908
     1944, 1944, 1944, 1936, 1944, 1944, 1944, 1944, 1944, 1944,
909
910
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
911
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
912
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
913
     1944, 1944, 1944, 1936, 1944, 1944, 1944, 1944, 1944, 1944,
914
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
915
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
916
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
917
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
918
     1936, 1936, 1964, 1965, 1966, 1967, 1936, 1968, 1969, 1968,
919
     1970, 1971, 1972, 1944, 1944, 1944, 1936, 1944, 1944, 1944,
920
921
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
922
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
923
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
924
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
925
     1944, 1944, 1944, 1936, 1944, 1944, 1944, 1944, 1944, 1944,
926
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936, 1944, 1944,
927
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
928
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
929
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
930
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
931
932
     1973, 1974, 1975, 1976, 1977, 1978, 1979, 1977, 1980, 1936,
933
     1981, 1982, 1944, 1944, 1944, 1936, 1944, 1944, 1944, 1944,
934
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
935
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
936
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
937
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
938
     1944, 1936, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
939
     1944, 1944, 1944, 1944, 1936, 1944, 1944, 1944, 1944, 1944,
940
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
941
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
942
943
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936, 1936,
944
     1936, 1936, 1936, 1936, 1936, 1936, 1983, 1984, 1936, 1985,
945
     1986, 1936, 1987, 1988, 1989, 1936, 1990, 1991, 1992, 1993,
946
     1944, 1944, 1944, 1936, 1944, 1944, 1944, 1944, 1944, 1944,
947
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
948
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
949
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
950
     1944, 1944, 1944, 1944, 1944, 1944, 1936, 1944, 1944, 1944,
951
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936, 1944, 1944,
952
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
953
954
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
955
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936, 1936,
956
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
957
     1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 1936, 2002,
958
     2003, 1936, 2004, 2005, 1944, 1944, 1936, 1944, 1944, 1944,
959
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
960
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
961
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
962
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936,
963
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936, 1944,
964
965
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
966
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
967
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
968
     1944, 1944, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
969
     1936, 1936, 1936, 2006, 2007, 1936, 2008, 2009, 1936, 2010,
970
     2011, 2012, 2013, 1936, 2014, 2015, 2016, 2017, 1944, 1944,
971
     1936, 1936, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
972
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
973
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
974
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
975
976
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936, 1944, 1944,
977
     1944, 1944, 1944, 1944, 1944, 1936, 1944, 1944, 1944, 1944,
978
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
979
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
980
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
981
     1944, 1944, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
982
     1936, 1936, 1936, 1936, 2018, 2019, 2020, 2021, 2022, 2023,
983
     1936, 2024, 2025, 2026, 2027, 1936, 2028, 2029, 1944, 1944,
984
     1936, 1936, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
985
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
986
987
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
988
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
989
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
990
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
991
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
992
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
993
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936, 1936,
994
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 2030,
995
     2031, 1936, 2032, 2033, 1936, 2034, 2035, 2036, 2037, 1936,
996
     2038, 2039, 2040, 2041, 1944, 1936, 1936, 1944, 1944, 1944,
997
998
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
999
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1000
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1001
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1002
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1003
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1004
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1005
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1006
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1007
     2042, 2043, 2044, 2045, 2046, 2047, 1936, 2048, 2049, 2050,
1008
1009
     2051, 1936, 2052, 2053, 1944, 1936, 1936, 1944, 1944, 1944,
1010
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1011
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1012
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1013
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1014
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1015
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1016
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1017
     1944, 1944, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1018
     1936, 1936, 2054, 2055, 1936, 2056, 2057, 1936, 2058, 2059,
1019
1020
     2060, 2061, 1936, 2062, 2063, 2064, 2065, 1944, 1936, 1936,
1021
     1936, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1022
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1023
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1024
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1025
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1026
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1027
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1028
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 2066, 2067, 2068,
1029
     2069, 2070, 2071, 1936, 2072, 2073, 2074, 2075, 1936, 2076,
1030
1031
     2077, 1944, 1936, 1936, 1936, 1944, 1944, 1944, 1944, 1944,
1032
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1033
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1034
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1035
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1036
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1037
     1944, 1944, 1944, 1944, 1944, 1936, 1936, 1936, 1936, 1936,
1038
     1936, 2078, 2079, 1936, 2080, 2081, 1936, 2082, 2083, 2084,
1039
     2085, 1936, 2086, 2087, 2088, 2089, 1944, 1936, 1936, 1944,
1040
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1041
1042
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1043
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1044
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1045
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1046
     1944, 1944, 1944, 1944, 1936, 1936, 1936, 1936, 2090, 2091,
1047
     2092, 2093, 2094, 1936, 2095, 2096, 2097, 2098, 1936, 2099,
1048
     1944, 1936, 1936, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1049
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1050
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1051
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1052
1053
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1054
     1944, 1944, 1936, 1936, 2100, 1936, 2101, 1936, 2102, 2103,
1055
     2104, 2105, 1936, 2106, 2107, 2108, 1936, 1936, 1944, 1944,
1056
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1057
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1058
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1059
     1944, 1944, 1944, 1944, 1944, 1944, 1936, 1936, 1936, 2109,
1060
     2110, 2111, 1936, 2112, 2113, 2114, 2115, 1936, 1936, 1944,
1061
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1062
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1063
1064
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936, 1936,
1065
     1936, 1936, 2116, 2117, 2118, 1936, 2119, 1936, 1944, 1944,
1066
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1067
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1068
     1944, 1944, 1944, 1936, 1936, 2120, 1936, 2121, 2122, 1944,
1069
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1070
     1944, 1944, 1944, 1944, 1944, 1944, 1936, 1936, 1936, 2123,
1071
     1936, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1072
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1936, 1936, 1936,
1073
     1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944, 1944,
1074
1075
     1944, 1944, 1936, 1936, 1944, 1944, 1944, 1944, 1944, 1944,
1076
     1944, 1944, 1944, 1944, 1936, 1936, 1944, 1944, 1944, 1944,
1077
     1944, 1944, 1936, 1944, 1944, 1944, 1936, 1944, 1944, 1944,
1078
     1944, 1944, 1944, 1944, 1944,    0, 1936, 1936, 1936, 1936,
1079
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1080
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1081
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1082
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1083
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1084
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1085
1086
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1087
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1088
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1089
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1090
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1091
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1092
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1093
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1094
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1095
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1096
1097
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1098
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1099
     1936, 1936, 1936
1100
    } ;
1101
1102
static const flex_int16_t yy_nxt[4222] =
1103
    {   0,
1104
       20,   21,   21,   22,   21,   23,   24,   25,   26,   27,
1105
       28,   29,   30,   31,   32,   33,   34,   35,   36,   37,
1106
       38,   39,   39,   39,   39,   39,   40,   41,   42,   43,
1107
       44,   45,   46,   46,   46,   46,   47,   48,   48,   48,
1108
       48,   48,   48,   48,   49,   48,   48,   50,   48,   48,
1109
       48,   48,   48,   51,   52,   53,   54,   55,   56,   57,
1110
       58,   59,   60,   61,   48,   48,   62,   48,   48,   63,
1111
       64,   65,   66,   67,   68,   69,   70,   71,   72,   48,
1112
       73,   74,   75,   48,   76,   77,   78,   79,   81,   81,
1113
       82,   81, 1936,   83,   81,   81,   82,   81,  136,   83,
1114
1115
       86,   86,   87,   86,   86,   86,   87,   86,   90,   90,
1116
       88,   90,   90,   90,   88,   90,  141,  137,  276,  131,
1117
      149,   91, 1936,  150, 1936,   91,   92,  151,  152,  277,
1118
       92,  142,  143,  153,  144,  144,  144,  144,  144, 1936,
1119
      146,   84,  155,  156, 1936, 1869,  162,   84,   94,   95,
1120
       94,   96,  119,  163,  120,   97,   98,  175,   99,  100,
1121
      101,  102,  103,  104,  176,  105,  121, 1936, 1936,  122,
1122
      123,  124,  106,  103,  107,  108,  109,  132, 1936,  125,
1123
      143,  126,  148,  148,  148,  148,  148,  148,  146,  177,
1124
      289,  154,  178,  127, 1936,  147,  179,  128,  129,  130,
1125
1126
     1936,  180,  110, 1936,  111,  181,  182,  284,  188,  167,
1127
      168,  169,  233,  245,  202,  191,  278,  112,  113,  170,
1128
      203,  171,  189,  192, 1936,  190,  172,  246,  173, 1870,
1129
      232,  114, 1936,  115,   94,   95,   94,   96,  248,  245,
1130
     1936,   97,   98, 1936,   99,  100,  101,  102,  103,  104,
1131
      296,  105, 1936,  245,  297,  210,  193, 1936,  106,  103,
1132
      107,  108,  109,  183,  194,  184, 1936, 1936,  234,  185,
1133
      195,  245,  196,  186,  197,  187,  198,  247,  208,  199,
1134
      245,  248, 1936,  251, 1936,  209,  200,  201,  110,  204,
1135
      111,  279,  225, 1936, 1936, 1936,  246,  205, 1936,  206,
1136
1137
     1936,  207,  211,  112,  113, 1936, 1936,  226, 1936, 1936,
1138
      309,  245,  212,  310,  290, 1871, 1936,  114,  291,  115,
1139
      157,  157,  157,  157,  157,  157,  146,  303,  285,  230,
1140
      300,  157,  157,  158,  157,  157,  157,  231,  220, 1936,
1141
      221, 1936, 1936,  227,  160, 1936,  222,  228,  298,  286,
1142
      287, 1936,  223,  320,  229,  224,  288,  313,  157,  157,
1143
      157,  157,  157,  157,  157,  157,  157,  157,  157,  157,
1144
      146,  318, 1936, 1936, 1890,  157,  157,  157,  157,  157,
1145
      157,  213,  496, 1849,  214,  215, 1936,  293, 1936,  299,
1146
      304,  216,  235,  301, 1936,  236,  217, 1936, 1936,  218,
1147
1148
      294,  219,  157,  157,  157,  157,  157,  157,  305,  237,
1149
      237,  237,  237,  237,  264,  265,  265,  265,  265,  265,
1150
      266,  266,  266,  266,  266,  143,  146,  271,  271,  271,
1151
      271,  271,  271,  146,  306, 1936,  302,  311,  307, 1936,
1152
     1936,  339, 1936,  238,  314,  308, 1936,  239, 1936, 1936,
1153
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1207,
1154
      240, 1936, 1936, 1936,  241, 1936,  242,  312, 1936, 1936,
1155
      243,  274,  274,  274,  274,  274,  274,  322,  319,  344,
1156
      323, 1936,  274,  274,  274,  274,  274,  274,  315,  326,
1157
      316,  324, 1936,  325,  317,  321,  329,  328,  331,  330,
1158
1159
      327,  332,  345,  347,  338,  340,  337,  346, 1936,  274,
1160
      274,  274,  274,  274,  274,  341, 1936, 1936, 1936,  333,
1161
      334,  335,  336, 1936,  342, 1936, 1936,  343, 1936, 1936,
1162
     1936, 1936, 1936,  360,  360,  360,  360,  360,  365,  365,
1163
     1936,  365,  367,  367,  374,  367,  375,  375,  375,  375,
1164
      375,  375, 1936,  146,  272,  348,  392, 1936, 1936,  353,
1165
      349,  387, 1936,  357,  390, 1936,  354,  350,  355,  391,
1166
      351, 1848,  352,  494,  393, 1846, 1936,  358,  356, 1936,
1167
     1936, 1936,  359,  376,  376,  376,  376,  376,  143,  146,
1168
      381,  381,  381,  381,  381,  381,  146,  382,  383,  383,
1169
1170
      383,  383,  383,  384,  388,  388,  388,  388,  388,  388,
1171
      401,  395,  397,  398,  399,  388,  388,  388,  388,  388,
1172
      388, 1936, 1936, 1936, 1936,  402, 1936, 1936, 1936, 1936,
1173
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1174
     1936, 1936,  388,  388,  388,  388,  388,  388, 1936, 1936,
1175
     1936, 1936, 1936, 1936, 1936,  404, 1936,  400, 1936,  414,
1176
      405,  406,  413,  416,  408, 1936, 1936,  403,  418,  417,
1177
     1936,  421,  407,  409, 1936,  434, 1936, 1936,  415,  423,
1178
      419,  420,  410,  424, 1936,  429,  391,  428, 1936,  422,
1179
     1936,  425, 1936, 1936,  426,  438,  430,  431, 1936,  432,
1180
1181
     1936,  427, 1936,  439,  433, 1936, 1936, 1936, 1936,  440,
1182
      441, 1936, 1936,  392, 1936,  435, 1936, 1936, 1936,  436,
1183
      443,  442, 1936, 1936, 1936, 1936, 1936,  437,  446, 1936,
1184
     1936,  450, 1936,  475,  475,  444,  475, 1936,  453,  445,
1185
     1936,  272,  454,  447,  272, 1817, 1936,  461,  486,  961,
1186
      448,  387,  449,  457,  455,  962,  451,  456,  459,  452,
1187
      464,  460,  463, 1408, 1936,  458,  359,  462,  467,  495,
1188
     1936,  465,  466,  146,  468,  469, 1936, 1936,  470,  471,
1189
      471,  471,  471,  471,  480,  481,  481,  481,  481,  481,
1190
      374, 1936,  375,  375,  375,  375,  375,  375,  482,  482,
1191
1192
      482,  482,  482,  143,  146,  487,  487,  487,  487,  487,
1193
      487,  146,  490,  490,  490,  490,  490,  490,  489, 1936,
1194
      499,  498, 1936,  502, 1936,  500, 1936,  501, 1936, 1936,
1195
     1936, 1936, 1936, 1936, 1936,  146, 1936, 1936,  593, 1936,
1196
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1197
     1936, 1936, 1936, 1936, 1936,  505,  504, 1936,  594, 1936,
1198
      506, 1195, 1936, 1936,  511,  733, 1936,  510,  503,  512,
1199
      507,  508,  513,  515,  520, 1936,  509, 1936, 1936,  521,
1200
     1936,  524,  326,  529,  530,  525,  522,  514,  516,  517,
1201
      518,  519,  527,  523,  526,  531,  528,  532,  533,  534,
1202
1203
     1936,  541,  550,  535,  542,  536,  537,  538,  543,  539,
1204
      545,  548,  540, 1936, 1936, 1936,  558,  552,  546,  557,
1205
     1936, 1936, 1936,  549, 1936, 1936, 1936,  553, 1936,  547,
1206
     1936, 1936,  551, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1207
     1936, 1936,  272, 1936,  554,  555, 1936, 1936, 1936,  486,
1208
     1815, 1813,  560,  482,  482,  482,  482,  482,  562,  563,
1209
      710,  710,  564,  710,  556, 1936,  565,  566,  596,  570,
1210
      561,  559,  567,  573,  587,  589,  584,  590,  568,  575,
1211
     1777,  576,  574,  572,  588,  569,  571,  585,  613,  577,
1212
      597,  578,  579, 1936,  580,  586, 1936,  581,  582, 1936,
1213
1214
      598,  583,  599,  599,  599,  599,  599,  599,  143, 1936,
1215
      487,  487,  487,  487,  487,  487,  608,  608,  608,  608,
1216
      608,  608,  489,  272,  272, 1936, 1936,  615, 1936, 1936,
1217
      387,  612, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1218
      617, 1936, 1936, 1936,  618, 1936, 1936,  614, 1936, 1936,
1219
      619, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1220
     1936, 1936, 1936, 1936,  622,  625, 1936, 1936,  624,  630,
1221
     1936, 1936,  627, 1936, 1936,  633,  620,  634, 1936,  621,
1222
      639, 1936,  623,  640,  626,  631,  629, 1936,  632,  638,
1223
      641,  628,  635,  643,  637,  645,  636,  647,  650,  642,
1224
1225
     1936, 1936,  648,  652,  644,  646,  649, 1936, 1936,  654,
1226
      656,  660,  653,  655,  651,  657, 1936, 1936,  661, 1936,
1227
      659,  658, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1228
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,  665,
1229
     1936, 1936, 1936, 1936, 1936, 1936,  667,  664, 1936, 1936,
1230
     1936, 1936,  663, 1936,  668, 1936,  674, 1936, 1936, 1936,
1231
      666,  671,  679, 1936, 1936,  670,  669,  672,  673,  682,
1232
      683,  676,  684,  685,  678,  680,  677,  689,  691,  693,
1233
      690,  681,  694,  696,  686, 1936,  272,  687, 1936,  688,
1234
      701,  692,  698,  486,  695,  697,  703, 1936,  272, 1936,
1235
1236
     1936,  699, 1936,  704,  702,  721,  700,  715,  716,  716,
1237
      716,  716,  716,  272,  272, 1936, 1936, 1936,  705,  731,
1238
      387,  612,  706,  732, 1936, 1936, 1936, 1936,  707, 1936,
1239
      736,  598,  708,  599,  599,  599,  599,  599,  599,  726,
1240
      726,  726,  726,  726,  726,  489, 1936, 1936,  735, 1936,
1241
      741, 1936, 1936, 1936, 1936,  737,  740,  743,  739,  742,
1242
      738, 1936, 1936, 1936, 1936, 1936, 1936,  732, 1936, 1936,
1243
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1324,  744,
1244
     1936, 1936, 1936, 1936, 1936,  747,  752, 1936, 1936, 1936,
1245
      745, 1936, 1936,  753, 1936, 1936, 1936,  751,  746, 1936,
1246
1247
     1936,  749,  748, 1936, 1936, 1936,  762,  761,  763,  750,
1248
      758,  755,  754,  756,  757,  769,  759,  765,  760,  770,
1249
      764,  766,  767,  773,  771,  768,  772,  775,  781,  774,
1250
      782,  779,  667,  778, 1936,  776,  784,  786, 1936,  783,
1251
     1936,  787,  780, 1936, 1936, 1936, 1936, 1936,  785, 1936,
1252
     1936, 1936, 1936, 1936, 1936, 1936,  790, 1936, 1936, 1936,
1253
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1254
     1936,  272,  819,  819,  793,  819,  272,  789,  486, 1936,
1255
      796, 1936,  800,  721, 1502,  791,  801, 1079,  805,  795,
1256
      792,  803, 1936,  807,  794,  799,  797,  798,  802,  810,
1257
1258
      710,  710, 1936,  710,  814, 1936,  817,  806, 1936,  804,
1259
      808,  809,  815,  811,  813,  816,  466,  818,  812,  828,
1260
      829,  829,  829,  829,  829,  829,  839,  839,  839,  839,
1261
      839,  839,  489,  820,  272,  272, 1936, 1936, 1936, 1936,
1262
     1936,  612,  844, 1936,  855, 1936, 1936,  848,  851,  821,
1263
     1936, 1936, 1936, 1936, 1936,  849,  846, 1936,  845, 1936,
1264
      822, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1265
     1936,  852, 1936, 1936, 1936, 1936, 1936,  823,  856, 1936,
1266
     1936, 1936,  859,  854, 1936,  857,  865, 1936,  850,  853,
1267
      862,  864,  863, 1936, 1936, 1936,  858, 1936, 1936, 1936,
1268
1269
     1936,  860, 1936,  874,  869,  867,  861,  871,  866, 1936,
1270
      868,  880,  881,  878, 1936, 1936,  870,  883,  872,  873,
1271
      876,  877,  875,  882,  879, 1936, 1936,  886, 1936,  884,
1272
      887, 1936, 1936,  893, 1936, 1936, 1936, 1936, 1936,  885,
1273
     1936,  888, 1936,  891,  892,  780, 1936, 1936,  889, 1936,
1274
     1936, 1936,  894, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1275
     1936, 1936,  901, 1936, 1936,  895,  896, 1936, 1936,  898,
1276
      920,  909, 1936,  905,  903,  272, 1722,  897,  902,  906,
1277
      918,  272,  721,  907,  900,  904,  915,  908,  948,  911,
1278
      912, 1936,  916,  921,  922,  910,  913,  272,  914,  923,
1279
1280
      919,  917,  927,  928,  612,  925,  924,  926,  932,  929,
1281
      819,  819,  930,  819, 1936,  959, 1936,  931,  942,  943,
1282
      943,  943,  943,  943,  828,  829,  829,  829,  829,  829,
1283
      829,  839,  839,  839,  839,  839,  839,  272, 1936, 1936,
1284
     1936, 1936, 1936, 1936,  844,  963, 1936, 1936, 1936, 1936,
1285
     1936, 1936, 1936,  974, 1936, 1936, 1936, 1936, 1936,  960,
1286
      933, 1936, 1936, 1936, 1936, 1936, 1936, 1936,  964, 1936,
1287
     1936, 1936,  966, 1936, 1936,  965, 1936, 1936,  969, 1936,
1288
      978, 1936, 1936, 1936,  967,  973,  970,  979,  968,  934,
1289
      975,  976, 1936, 1936,  972,  980,  983,  971,  989,  986,
1290
1291
      981,  990,  982, 1936,  991,  992,  977,  984,  988, 1936,
1292
      985, 1936,  993,  998,  987, 1936,  994,  997, 1936,  999,
1293
     1936,  995,  996, 1001, 1936, 1000, 1002, 1936, 1936, 1004,
1294
     1005, 1003, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1295
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1006,
1296
     1936, 1009, 1007, 1936, 1011, 1013, 1936, 1936, 1936, 1012,
1297
     1936, 1936, 1936, 1936, 1010, 1014, 1936, 1021, 1936, 1936,
1298
     1019, 1936, 1026, 1936, 1936, 1020, 1028, 1031, 1024, 1015,
1299
     1017, 1018, 1029, 1022, 1023, 1936, 1033, 1027, 1083, 1025,
1300
     1032, 1040, 1030, 1034, 1037, 1035, 1044, 1042, 1039, 1041,
1301
1302
     1049, 1036, 1043,  272, 1038, 1045, 1936, 1046, 1050, 1047,
1303
      721, 1056, 1056, 1048, 1056, 1936, 1052, 1936, 1936, 1936,
1304
     1062, 1051, 1063, 1063, 1063, 1063, 1063, 1063,  272,  272,
1305
      272, 1936, 1936, 1936, 1936,  948,  844, 1078, 1080, 1084,
1306
     1936, 1093, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1307
     1936, 1936, 1085, 1936, 1936, 1936, 1936, 1936, 1936, 1087,
1308
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1086, 1936,
1309
     1936, 1936, 1936, 1936, 1936, 1658, 1092, 1936, 1936, 1091,
1310
     1936, 1101, 1936, 1088, 1089, 1936, 1102, 1095, 1090, 1094,
1311
     1097, 1106, 1108, 1100, 1103, 1096, 1098, 1099, 1116, 1118,
1312
1313
     1114, 1936, 1936, 1104, 1113, 1105, 1107, 1109, 1110, 1117,
1314
     1936, 1111, 1112, 1123, 1936, 1936, 1115, 1936, 1936, 1125,
1315
     1936, 1121, 1119, 1126, 1122, 1124, 1120, 1936, 1936, 1936,
1316
     1127, 1128, 1936, 1936, 1129, 1936, 1936, 1936, 1936, 1130,
1317
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1133,
1318
     1132, 1936, 1936, 1936, 1936, 1936, 1134, 1936, 1936, 1936,
1319
     1131, 1936, 1936, 1137, 1936, 1136, 1080, 1142,  272, 1140,
1320
     1135, 1143, 1936, 1936, 1138,  948, 1141, 1148, 1139, 1145,
1321
      272,  272, 1146, 1151, 1936, 1149, 1936, 1184,  844, 1144,
1322
     1150, 1147, 1153, 1152, 1156, 1154, 1158, 1936,  272, 1936,
1323
1324
     1160, 1155, 1159, 1157, 1162, 1078, 1161, 1163, 1166, 1936,
1325
     1164, 1165, 1936, 1936, 1936, 1168, 1167, 1056, 1056, 1199,
1326
     1056, 1178, 1179, 1179, 1179, 1179, 1179, 1062, 1200, 1063,
1327
     1063, 1063, 1063, 1063, 1063, 1201, 1198, 1936, 1936, 1936,
1328
     1936, 1936, 1936, 1936, 1204, 1936, 1936, 1936, 1936, 1936,
1329
     1936, 1936, 1936, 1936, 1202, 1936, 1936, 1936, 1936, 1205,
1330
     1936, 1936, 1936, 1203, 1936, 1172, 1936, 1936, 1206, 1936,
1331
     1936, 1936, 1210, 1936, 1936, 1936, 1936, 1936, 1216, 1936,
1332
     1936, 1212, 1936, 1936, 1218, 1219, 1936, 1208, 1211, 1209,
1333
     1217, 1221, 1223, 1173, 1215, 1213, 1214, 1224, 1225, 1236,
1334
1335
     1226, 1936, 1220, 1222, 1233, 1228, 1229, 1234, 1227, 1232,
1336
     1239, 1231, 1237, 1230, 1235, 1240, 1243, 1936, 1242, 1936,
1337
     1936, 1245, 1936, 1247, 1936, 1238, 1936, 1241, 1936, 1936,
1338
     1936, 1936, 1244, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1339
     1936, 1936, 1936, 1936, 1936, 1936, 1246, 1936, 1248, 1936,
1340
     1936, 1249, 1936, 1936, 1936, 1651, 1936, 1936, 1250, 1586,
1341
     1581, 1255, 1253, 1936, 1258, 1257, 1260, 1259, 1936, 1252,
1342
     1256, 1936, 1254, 1268, 1251, 1270, 1262, 1936, 1267, 1269,
1343
     1936, 1264, 1305, 1936, 1277, 1261, 1266, 1279, 1274, 1263,
1344
     1265, 1271, 1273, 1275, 1278, 1283, 1283, 1272, 1283, 1280,
1345
1346
     1276, 1288,  272, 1289, 1289, 1289, 1289, 1289, 1289,  948,
1347
      272,  272,  272, 1936, 1936, 1310, 1314, 1184, 1078, 1304,
1348
     1936, 1308, 1936, 1309, 1936, 1936, 1936, 1936, 1936, 1936,
1349
     1311, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1350
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1351
     1936, 1936, 1313, 1936, 1936, 1936, 1316, 1318, 1320, 1936,
1352
     1936, 1319, 1323, 1312, 1936, 1936, 1936, 1936, 1936, 1936,
1353
     1936, 1936, 1315, 1322, 1329, 1317, 1330, 1340, 1936, 1321,
1354
     1936, 1337, 1326, 1325, 1327, 1328, 1339, 1331, 1332, 1336,
1355
     1333, 1334, 1343, 1335, 1342, 1344, 1341, 1346, 1349, 1338,
1356
1357
     1348, 1345, 1347, 1350, 1351, 1354, 1936, 1936, 1355, 1353,
1358
     1352, 1936, 1357, 1936, 1360, 1936, 1936, 1936, 1936, 1936,
1359
     1356, 1936, 1936, 1358, 1936, 1936, 1936, 1936, 1936, 1936,
1360
     1936, 1936, 1936, 1936, 1936, 1283, 1283, 1936, 1283, 1387,
1361
     1387, 1936, 1387, 1936, 1359, 1364,  272, 1365, 1389, 1389,
1362
     1361, 1389, 1363, 1184, 1362, 1369, 1366, 1370, 1372, 1373,
1363
     1936, 1375, 1936, 1368, 1936, 1377, 1936, 1371, 1381, 1374,
1364
     1367, 1379, 1376, 1378, 1936, 1419, 1382, 1391, 1392, 1392,
1365
     1392, 1392, 1392, 1385, 1936, 1413, 1417, 1288, 1380, 1289,
1366
     1289, 1289, 1289, 1289, 1289,  272,  272,  272, 1409, 1936,
1367
1368
     1412, 1410, 1397, 1078, 1304, 1936, 1415, 1936, 1936, 1414,
1369
     1936, 1386, 1936, 1420, 1936, 1416, 1936, 1429, 1936, 1936,
1370
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1371
     1418, 1936, 1936, 1936, 1936, 1936, 1421, 1936, 1936, 1936,
1372
     1422, 1936, 1936, 1936, 1423, 1936, 1424, 1936, 1425, 1936,
1373
     1428, 1936, 1936, 1426, 1936, 1936, 1433, 1936, 1434, 1438,
1374
     1437, 1936, 1435, 1427, 1436, 1440, 1443, 1446, 1431, 1430,
1375
     1432, 1444, 1448, 1447, 1449, 1442, 1936, 1936, 1441, 1439,
1376
     1936, 1936, 1445, 1457, 1936, 1451, 1460, 1452, 1450, 1454,
1377
     1453, 1455, 1462, 1459, 1458, 1936, 1936, 1936, 1456, 1936,
1378
1379
     1464, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1463, 1936,
1380
     1936, 1936, 1461, 1936, 1485,  272, 1486, 1486, 1486, 1486,
1381
     1486, 1486, 1184, 1465, 1936, 1936,  272, 1936, 1936, 1936,
1382
     1467, 1468, 1466, 1397, 1474, 1471, 1475,  272, 1936, 1936,
1383
     1377, 1936, 1936, 1477, 1304, 1478, 1470, 1469, 1473, 1480,
1384
     1936,  272, 1472, 1936, 1936, 1936, 1476, 1479, 1501, 1506,
1385
     1507, 1936, 1508, 1510, 1936, 1936, 1936, 1936, 1512, 1936,
1386
     1936, 1936, 1513, 1509, 1514, 1936, 1511, 1516, 1936, 1936,
1387
     1936, 1936, 1936, 1936, 1936, 1518, 1936, 1936, 1515, 1936,
1388
     1936, 1936, 1936, 1517, 1936, 1936, 1936, 1519, 1936, 1936,
1389
1390
     1521, 1520, 1523, 1524, 1936, 1936, 1936, 1936, 1529, 1936,
1391
     1936, 1936, 1936, 1936, 1522, 1525, 1527, 1528, 1530, 1526,
1392
     1532, 1536, 1936, 1534, 1936, 1537, 1533, 1538, 1531, 1535,
1393
     1541, 1936, 1936, 1550, 1936, 1546, 1539, 1540, 1936, 1547,
1394
     1936, 1542, 1548, 1549, 1543, 1544, 1552, 1554, 1936, 1936,
1395
     1936, 1555, 1545, 1936, 1936, 1936, 1551, 1556, 1558, 1553,
1396
     1566, 1566, 1559, 1566, 1567, 1567, 1557, 1567, 1562, 1936,
1397
     1563,  272,  272,  272, 1936,  272, 1560, 1936, 1397, 1576,
1398
     1304, 1561, 1501, 1564, 1570, 1571, 1571, 1571, 1571, 1571,
1399
     1485, 1936, 1486, 1486, 1486, 1486, 1486, 1486, 1936, 1592,
1400
1401
     1590, 1565, 1595, 1936, 1587, 1593, 1936, 1936, 1936, 1591,
1402
     1936, 1594, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1403
     1596, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1599,
1404
     1936, 1936, 1936, 1936, 1936, 1598, 1936, 1936, 1600, 1936,
1405
     1936, 1597, 1936, 1603, 1602, 1936, 1936, 1601, 1936, 1936,
1406
     1936, 1936, 1936, 1606, 1607, 1936, 1615, 1612, 1936, 1608,
1407
     1604, 1609, 1610, 1605, 1611, 1624, 1936, 1618, 1619, 1936,
1408
     1620, 1628, 1625, 1614, 1936, 1617, 1616, 1621, 1626, 1613,
1409
     1936, 1623, 1622, 1629, 1627, 1631, 1936, 1633, 1936, 1635,
1410
     1632, 1936,  272, 1634, 1638, 1936,  272, 1639, 1630, 1397,
1411
1412
      272, 1636, 1637, 1576, 1936, 1936, 1936, 1501, 1641, 1661,
1413
     1640, 1936, 1936, 1936, 1936, 1642, 1647, 1647, 1647, 1647,
1414
     1647, 1647, 1936, 1936, 1644, 1936, 1936, 1936, 1936, 1936,
1415
     1936, 1936, 1643, 1936, 1936, 1936, 1936, 1936, 1665, 1936,
1416
     1661, 1664, 1936, 1936, 1936, 1936, 1936, 1936, 1668, 1936,
1417
     1936, 1936, 1666, 1936, 1936, 1936, 1667, 1671, 1669, 1936,
1418
     1936, 1936, 1936, 1936, 1673, 1679, 1670, 1675, 1672, 1674,
1419
     1676, 1680, 1685, 1677, 1682, 1678, 1936, 1936, 1681, 1687,
1420
     1684, 1936, 1695, 1691, 1936, 1686, 1688, 1692, 1936, 1693,
1421
     1683, 1697, 1936, 1700, 1689, 1696, 1694, 1936, 1936, 1702,
1422
1423
     1936, 1936, 1699, 1690, 1698, 1647, 1647, 1647, 1647, 1647,
1424
     1647,  272, 1701, 1936, 1936, 1707,  272, 1936, 1576, 1703,
1425
     1704, 1705, 1936, 1501, 1706, 1936, 1936, 1936, 1936, 1708,
1426
     1936, 1936, 1936, 1936, 1710, 1709, 1936, 1936, 1936, 1936,
1427
     1936, 1936, 1936, 1936, 1712, 1936, 1936, 1936, 1498, 1711,
1428
     1936, 1936, 1936, 1936, 1731, 1936, 1936, 1730, 1936, 1936,
1429
     1936, 1936, 1936, 1729, 1936, 1936, 1936, 1732, 1936, 1735,
1430
     1936, 1738, 1743, 1734, 1736, 1733, 1754, 1744, 1739, 1740,
1431
     1737, 1741, 1742, 1745, 1746, 1936, 1747, 1748, 1749, 1750,
1432
     1751, 1752, 1753, 1936, 1756, 1758,  272, 1757, 1762, 1764,
1433
1434
     1755, 1760, 1936, 1576, 1759, 1936, 1761, 1936, 1765, 1936,
1435
     1782, 1936, 1936, 1936, 1763, 1766, 1936, 1936, 1780, 1936,
1436
     1936, 1781, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1783,
1437
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1438
     1787, 1936, 1936, 1936, 1936, 1784, 1936, 1936, 1785, 1936,
1439
     1936, 1679, 1680, 1936, 1936, 1789, 1790, 1936, 1792, 1791,
1440
     1786, 1788, 1795, 1799, 1797, 1936, 1800, 1936, 1794, 1793,
1441
     1798, 1803, 1805, 1796, 1807, 1808, 1801, 1823, 1804, 1821,
1442
     1820, 1819, 1822, 1806, 1802, 1826, 1824, 1828, 1827, 1829,
1443
     1825, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1444
1445
     1936, 1936, 1830, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1446
     1936, 1936, 1936, 1491, 1936, 1407, 1831, 1936, 1936, 1936,
1447
     1936, 1936, 1936, 1832, 1834, 1833, 1936, 1936, 1936, 1936,
1448
     1936, 1936, 1936, 1839, 1936, 1936, 1850, 1936, 1936, 1936,
1449
     1936, 1857, 1841, 1835, 1837, 1836, 1842, 1838, 1840, 1858,
1450
     1843, 1859, 1851, 1864, 1860, 1854, 1852, 1853, 1862, 1866,
1451
     1856, 1861, 1855, 1863, 1865, 1875, 1872, 1876, 1873, 1877,
1452
     1874, 1879, 1878, 1936, 1881, 1882, 1936, 1936, 1884, 1936,
1453
     1936, 1936, 1936, 1886, 1936, 1936, 1936, 1880, 1883, 1936,
1454
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1455
1456
     1936, 1936, 1936, 1402, 1936, 1936, 1936, 1887, 1936, 1301,
1457
     1936, 1885, 1936, 1936, 1936, 1936, 1896, 1936, 1895, 1936,
1458
     1936, 1894, 1936, 1891, 1901, 1892, 1897, 1936, 1936, 1893,
1459
     1908, 1910, 1927, 1927, 1900, 1927, 1898, 1911, 1905, 1906,
1460
     1907, 1912, 1913, 1930, 1914, 1902, 1899, 1919, 1918, 1920,
1461
     1917, 1922, 1909, 1921, 1936, 1924, 1925, 1936, 1928, 1926,
1462
     1933, 1294, 1932, 1931, 1929, 1194, 1189, 1075, 1068,  958,
1463
      953,  841,  834,  730,  725,  609,  604,  493,  472,  361,
1464
      270, 1936, 1936, 1936, 1936, 1936, 1936, 1923, 1923, 1936,
1465
     1936, 1936, 1936, 1935, 1916, 1915, 1936, 1934,   80,   80,
1466
1467
       80,   80,   80,   80,   80,   80,   85,   85,   85,   85,
1468
       85,   85,   85,   85,   89,   89,   89,   89,   89,   89,
1469
       89,   89,   20,   20,   20,   20,   20,   20,   20,   20,
1470
       93,   93,   93,   93,   93,   93,   93,   93,  133,  133,
1471
      133,  133,  133,  133,  133,  133,  145, 1936,  145,  145,
1472
     1904,  145,  159,  159,  159,  159,  252, 1903,  252,  252,
1473
      252,  252,  252,  252,  267,  267,  268,  268,  273,  273,
1474
      363, 1936,  363,  363,  363,  363,  363,  363,  377,  377,
1475
      378,  378,  380,  380,  385,  385,  386,  386,  386,  483,
1476
      483,  484,  484,  485,  485,  485,  488,  488,  492,  492,
1477
1478
      492,  600,  600,  601,  601,  603,  603,  603,  605,  605,
1479
      606,  606,  610,  610,  610,  611,  611,  611,  717,  717,
1480
      718,  718,  719,  719,  719,  720,  720,  720,  722,  722,
1481
      723,  723,  727,  727,  729,  729,  729,  830,  830,  831,
1482
      831,  833,  833,  833,  835,  835,  836,  836,  837,  837,
1483
      840,  840,  842,  842,  842,  843,  843,  843,  944,  944,
1484
      945,  945,  946,  946,  946,  947,  947,  947,  949,  949,
1485
      950,  950,  952,  952,  954,  954,  955,  955,  957,  957,
1486
      957, 1064, 1064, 1065, 1065, 1067, 1067, 1067, 1069, 1069,
1487
     1070, 1070, 1071, 1071, 1072, 1072, 1074, 1074, 1076, 1076,
1488
1489
     1076, 1077, 1077, 1077, 1180, 1180, 1181, 1181, 1182, 1182,
1490
     1182, 1183, 1183, 1183, 1185, 1185, 1186, 1186, 1188, 1188,
1491
     1190, 1190, 1191, 1191, 1193, 1193, 1193, 1290, 1290, 1291,
1492
     1291, 1293, 1293, 1293, 1295, 1295, 1296, 1296, 1297, 1297,
1493
     1298, 1298, 1300, 1300, 1302, 1302, 1302, 1303, 1303, 1303,
1494
     1393, 1393, 1394, 1394, 1395, 1395, 1395, 1396, 1396, 1396,
1495
     1398, 1398, 1399, 1399, 1401, 1401, 1403, 1403, 1404, 1404,
1496
     1406, 1406, 1406, 1487, 1487, 1488, 1488, 1490, 1490, 1490,
1497
     1492, 1492, 1493, 1493, 1494, 1494, 1495, 1495, 1497, 1497,
1498
     1499, 1499, 1499, 1500, 1500, 1500, 1572, 1572, 1573, 1573,
1499
1500
     1574, 1574, 1574, 1575, 1575, 1575, 1577, 1577, 1578, 1578,
1501
     1580, 1580, 1582, 1582, 1583, 1583, 1585, 1585, 1585, 1648,
1502
     1648, 1649, 1649, 1650, 1650, 1650, 1652, 1652, 1653, 1653,
1503
     1654, 1654, 1655, 1655, 1657, 1657, 1659, 1659, 1659, 1660,
1504
     1660, 1715, 1715, 1716, 1716, 1716, 1717, 1717, 1718, 1718,
1505
     1719, 1719, 1721, 1721, 1723, 1723, 1724, 1724, 1726, 1726,
1506
     1769, 1769, 1770, 1770, 1771, 1771, 1772, 1772, 1773, 1773,
1507
     1774, 1774, 1776, 1776, 1778, 1778, 1811, 1811, 1812, 1812,
1508
     1814, 1814, 1816, 1816, 1847, 1847, 1936, 1936, 1936, 1889,
1509
     1888, 1936, 1936, 1775, 1868, 1867, 1936, 1936, 1936, 1936,
1510
1511
     1936, 1936, 1936, 1936, 1725, 1775, 1720,  272, 1845, 1844,
1512
     1936, 1936, 1936, 1936, 1818,  272, 1725, 1775, 1656, 1720,
1513
      272,  272, 1810, 1809, 1936, 1936, 1936, 1936, 1936, 1936,
1514
     1936, 1779,  272, 1725, 1584, 1775, 1656,  607, 1720, 1579,
1515
      272,  272, 1768, 1767, 1936, 1936, 1936, 1936, 1936, 1936,
1516
     1936, 1936, 1936, 1936, 1936, 1936, 1728, 1727, 1936,  272,
1517
     1725, 1584, 1656, 1496, 1720, 1579,  272,  272, 1489, 1714,
1518
     1713, 1936, 1936, 1936, 1936, 1936, 1663, 1662,  272, 1584,
1519
     1405, 1656, 1496,  607, 1579, 1400,  272, 1489, 1646, 1645,
1520
     1936, 1936, 1936, 1936, 1936, 1589, 1588, 1584, 1405, 1496,
1521
1522
     1299, 1579, 1400,  269, 1489, 1292, 1569, 1568, 1936, 1936,
1523
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1505,
1524
     1504, 1503, 1405, 1192, 1496, 1299,  607, 1400, 1187, 1489,
1525
     1292, 1485, 1484, 1483, 1482, 1482, 1481, 1481, 1936, 1936,
1526
     1936, 1936, 1936, 1936, 1936, 1411, 1405, 1192, 1299, 1073,
1527
     1400, 1187,  269, 1292, 1066, 1390, 1388, 1384, 1383, 1936,
1528
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1307,
1529
     1306, 1192,  956, 1299, 1073,  607, 1187,  951, 1292, 1066,
1530
     1288, 1286, 1287, 1286, 1285, 1284, 1284, 1282, 1281, 1936,
1531
     1936, 1936, 1936, 1936, 1197, 1196, 1936, 1192,  956, 1073,
1532
1533
      838, 1187,  951,  269, 1066,  832, 1177, 1176, 1175, 1174,
1534
     1171, 1171, 1170, 1169, 1936, 1936, 1936, 1936, 1082, 1081,
1535
      956,  728, 1073,  838,  607,  951,  724, 1066,  832, 1062,
1536
     1061, 1060, 1059, 1058, 1057, 1055, 1054, 1053, 1936, 1016,
1537
     1936, 1008, 1936,  956,  728,  838,  951,  724,  269,  832,
1538
      602,  941,  940,  939,  938,  936,  937,  936,  935, 1936,
1539
      899, 1936,  890, 1936,  847, 1936,  728,  838,  607,  724,
1540
      489,  832,  602,  828,  827,  826,  825,  824, 1936, 1936,
1541
     1936,  788, 1936, 1936,  777, 1936, 1936, 1936, 1936, 1936,
1542
      734,  728,  724,  489,  269,  602,  379,  714,  713,  709,
1543
1544
      712,  711,  709, 1936, 1936,  675, 1936,  662, 1936, 1936,
1545
     1936,  616,  607,  489,  602,  379,  598,  592,  595,  592,
1546
      591, 1936, 1936, 1936,  544, 1936, 1936, 1936, 1936,  497,
1547
     1936, 1936,  146,  489,  491,  489,  269,  379,  146,  479,
1548
      478,  477,  476,  474,  473,  364,  364, 1936, 1936, 1936,
1549
     1936, 1936, 1936,  412,  411, 1936,  396,  394,  389,  272,
1550
      379,  146,  374,  373,  369,  372,  371,  370,  369,  368,
1551
      366,  364,  362,  247, 1936, 1936, 1936,  295,  292,  283,
1552
      282,  281,  280, 1936,  275,  272,  269,  146,  134,  263,
1553
      262,  261,  256,  260,  254,  259,  258,  257,  256,  255,
1554
1555
      254,  253,  251,  250,  249,  246,  246,  246,  246,  246,
1556
      246,  246,  141,  244,  174,  166,  165,  164, 1936,  161,
1557
      140,  139,  138,  135,  134, 1936,  118,  118,  117,  117,
1558
      116,  116,   19, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1559
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1560
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1561
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1562
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1563
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1564
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1565
1566
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1567
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
1568
     1936
1569
    } ;
1570
1571
static const flex_int16_t yy_chk[4222] =
1572
    {   0,
1573
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1574
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1575
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1576
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1577
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1578
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1579
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1580
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1581
        1,    1,    1,    1,    1,    1,    1,    1,    3,    3,
1582
        3,    3,  160,    3,    4,    4,    4,    4,   28,    4,
1583
1584
        5,    5,    5,    5,    6,    6,    6,    6,    7,    7,
1585
        5,    7,    8,    8,    6,    8,   37,   28,  160,   23,
1586
       40,    7,   49,   40,  161,    8,    7,   42,   42,  161,
1587
        8,   37,   38,   43,   38,   38,   38,   38,   38,  173,
1588
       38,    3,   44,   44,   50, 2120,   49,    4,   11,   11,
1589
       11,   11,   21,   50,   21,   11,   11,   58,   11,   11,
1590
       11,   11,   11,   11,   58,   11,   21,  170,   65,   21,
1591
       21,   21,   11,   11,   11,   11,   11,   23,   62,   21,
1592
       39,   21,   39,   39,   39,   39,   39,   39,   39,   59,
1593
      173,   43,   59,   21,   75,   38,   59,   21,   21,   21,
1594
1595
      162,   59,   11,   68,   11,   59,   59,  170,   61,   56,
1596
       56,   56,   77,   96,   65,   62,  162,   11,   11,   56,
1597
       65,   56,   61,   62,   63,   61,   56,  114,   56, 2121,
1598
       75,   11,   67,   11,   12,   12,   12,   12,  107,  107,
1599
       64,   12,   12,   39,   12,   12,   12,   12,   12,   12,
1600
      178,   12,   66,  108,  178,   68,   63,   72,   12,   12,
1601
       12,   12,   12,   60,   63,   60,   69,  163,   77,   60,
1602
       63,   96,   64,   60,   64,   60,   64,   98,   67,   64,
1603
      109,  109,  174,  114,  181,   67,   64,   64,   12,   66,
1604
       12,  163,   72,  171,   74,  184,   98,   66,  179,   66,
1605
1606
      172,   66,   69,   12,   12,  193,   71,   72,   73,  198,
1607
      188,  108,   69,  188,  174, 2122,  196,   12,  174,   12,
1608
       45,   45,   45,   45,   45,   45,   45,  184,  171,   74,
1609
      181,   45,   45,   45,   45,   45,   45,   74,   71,  180,
1610
       71,  185,  182,   73,   45,   70,   71,   73,  179,  171,
1611
      172,  176,   71,  198,   73,   71,  172,  193,   45,   45,
1612
       45,   45,   45,   45,   46,   46,   46,   46,   46,   46,
1613
       46,  196,  186,  393, 2123,   46,   46,   46,   46,   46,
1614
       46,   70,  393, 2119,   70,   70,  183,  176,  189,  180,
1615
      185,   70,   84,  182,  194,   84,   70,  214,  187,   70,
1616
1617
      176,   70,   46,   46,   46,   46,   46,   46,  186,   84,
1618
       84,   84,   84,   84,  143,  143,  143,  143,  143,  143,
1619
      144,  144,  144,  144,  144,  148,  144,  148,  148,  148,
1620
      148,  148,  148,  148,  187,  190,  183,  189,  187,  218,
1621
      202,  214,  200,   84,  194,  187,  197,   84,  201,  199,
1622
      203,  205,  204,  208,  212,  213,  195,  219,  215, 1093,
1623
       84,  206,  210, 1093,   84,  220,   84,  190,  209,  211,
1624
       84,  157,  157,  157,  157,  157,  157,  200,  197,  218,
1625
      201,  216,  157,  157,  157,  157,  157,  157,  195,  204,
1626
      195,  202,  217,  203,  195,  199,  208,  206,  210,  209,
1627
1628
      205,  211,  219,  220,  213,  215,  212,  219,  221,  157,
1629
      157,  157,  157,  157,  157,  216,  222,  223,  224,  211,
1630
      211,  211,  211,  226,  217,  225,  227,  217,  228,  229,
1631
      230,  231,  232,  237,  237,  237,  237,  237,  254,  254,
1632
      278,  254,  256,  256,  265,  256,  265,  265,  265,  265,
1633
      265,  265,  279,  389,  273,  221,  278,  276,  277,  226,
1634
      222,  273,  281,  230,  276,  288,  227,  223,  228,  277,
1635
      224, 2118,  225,  389,  279, 2116,  283,  231,  229,  289,
1636
      286,  284,  232,  266,  266,  266,  266,  266,  271,  266,
1637
      271,  271,  271,  271,  271,  271,  271,  272,  272,  272,
1638
1639
      272,  272,  272,  272,  274,  274,  274,  274,  274,  274,
1640
      288,  281,  283,  284,  286,  274,  274,  274,  274,  274,
1641
      274,  287,  290,  291,  292,  289,  294,  293,  299,  295,
1642
      298,  300,  301,  302,  304,  303,  305,  306,  307,  308,
1643
      309,  310,  274,  274,  274,  274,  274,  274,  312,  313,
1644
      314,  321,  315,  316,  319,  291,  322,  287,  323,  299,
1645
      292,  293,  298,  301,  295,  317,  318,  290,  303,  302,
1646
      325,  306,  294,  295,  327,  320,  328,  329,  300,  308,
1647
      304,  305,  295,  309,  320,  316,  312,  315,  330,  307,
1648
      331,  310,  333,  332,  313,  321,  317,  318,  334,  318,
1649
1650
      336,  314,  335,  322,  319,  337,  338,  339,  342,  323,
1651
      327,  340,  341,  325,  344,  320,  348,  343,  346,  320,
1652
      329,  328,  353,  354,  345,  355,  349,  320,  332,  352,
1653
      351,  336,  356,  369,  369,  330,  369,  357,  339,  331,
1654
      358,  380,  340,  333,  386, 2115, 1305,  348,  380,  847,
1655
      334,  386,  335,  343,  341,  847,  337,  342,  345,  338,
1656
      352,  346,  349, 1305,  390,  344,  351,  348,  355,  390,
1657
      395,  353,  354,  396,  356,  357,  397,  398,  358,  360,
1658
      360,  360,  360,  360,  374,  374,  374,  374,  374,  374,
1659
      375,  399,  375,  375,  375,  375,  375,  375,  376,  376,
1660
1661
      376,  376,  376,  381,  376,  381,  381,  381,  381,  381,
1662
      381,  381,  383,  383,  383,  383,  383,  383,  383,  400,
1663
      396,  395,  401,  399,  402,  397,  403,  398,  404,  406,
1664
      407,  408,  409,  410,  411,  412,  418,  419,  476,  414,
1665
      413,  416,  420,  423,  424,  615,  425,  431,  427,  426,
1666
      421,  428,  432, 1079,  429,  402,  401,  433,  476,  436,
1667
      403, 1079,  430,  445,  409,  615,  438,  408,  400,  410,
1668
      404,  406,  411,  413,  416,  435,  407,  437,  440,  418,
1669
      441,  421,  425,  426,  427,  421,  419,  412,  414,  414,
1670
      414,  414,  423,  420,  421,  428,  424,  429,  430,  430,
1671
1672
      439,  431,  438,  430,  432,  430,  430,  430,  433,  430,
1673
      435,  436,  430,  442,  443,  444,  446,  440,  435,  445,
1674
      447,  448,  449,  437,  450,  446,  451,  441,  453,  435,
1675
      452,  454,  439,  455,  457,  456,  460,  462,  463,  458,
1676
      468,  464,  485,  465,  442,  443,  470,  461,  467,  485,
1677
     2113, 2111,  447,  482,  482,  482,  482,  482,  449,  450,
1678
      592,  592,  451,  592,  444,  494,  452,  453,  479,  455,
1679
      448,  446,  453,  458,  465,  468,  462,  470,  453,  461,
1680
     2107,  461,  460,  457,  467,  454,  456,  463,  494,  461,
1681
      479,  461,  461,  499,  461,  464,  496,  461,  461,  500,
1682
1683
      481,  461,  481,  481,  481,  481,  481,  481,  487,  498,
1684
      487,  487,  487,  487,  487,  487,  490,  490,  490,  490,
1685
      490,  490,  490,  492,  493,  495,  502,  496,  503,  506,
1686
      492,  493,  505,  509,  508,  510,  511,  512,  513,  516,
1687
      498,  517,  514,  518,  499,  515,  519,  495,  525,  522,
1688
      500,  520,  523,  521,  526,  524,  528,  530,  529,  527,
1689
      531,  533,  535,  537,  505,  508,  539,  532,  506,  513,
1690
      540,  534,  510,  536,  542,  516,  502,  517,  538,  503,
1691
      522,  541,  505,  523,  509,  514,  512,  543,  515,  521,
1692
      524,  511,  518,  525,  520,  527,  519,  529,  532,  524,
1693
1694
      545,  546,  530,  534,  526,  528,  531,  547,  549,  536,
1695
      538,  542,  535,  537,  533,  539,  548,  551,  543,  550,
1696
      541,  540,  553,  555,  554,  557,  559,  560,  556,  561,
1697
      563,  562,  565,  570,  567,  571,  568,  566,  573,  547,
1698
      572,  569,  574,  577,  575,  576,  549,  546,  579,  581,
1699
      578,  580,  545,  582,  550,  583,  557,  584,  586,  585,
1700
      548,  554,  562,  589,  587,  553,  551,  555,  556,  566,
1701
      567,  559,  568,  569,  561,  563,  560,  573,  575,  577,
1702
      574,  565,  578,  580,  570,  590,  603,  571,  613,  572,
1703
      585,  576,  582,  603,  579,  581,  587,  625,  604,  618,
1704
1705
      614,  583,  617,  589,  586,  604,  584,  598,  598,  598,
1706
      598,  598,  598,  610,  611,  619,  620,  622,  590,  613,
1707
      610,  611,  590,  614,  623,  624,  628,  627,  590,  629,
1708
      618,  599,  590,  599,  599,  599,  599,  599,  599,  608,
1709
      608,  608,  608,  608,  608,  608,  630,  631,  617,  632,
1710
      625,  633,  634,  635,  637,  619,  624,  628,  623,  627,
1711
      622,  636,  638,  639,  640,  641,  642,  620,  643,  644,
1712
      646,  650,  654,  649,  670,  656,  653,  655, 1214,  629,
1713
     1214,  651,  665,  659,  661,  632,  637,  652,  657,  663,
1714
      630,  658,  660,  638,  664,  666,  669,  636,  631,  671,
1715
1716
      672,  634,  633,  673,  674,  677,  646,  644,  649,  635,
1717
      641,  640,  639,  640,  640,  655,  642,  651,  643,  656,
1718
      650,  652,  653,  659,  657,  654,  658,  661,  669,  660,
1719
      670,  665,  664,  663,  676,  661,  672,  674,  679,  671,
1720
      680,  674,  666,  681,  682,  683,  684,  685,  673,  688,
1721
      687,  690,  691,  692,  694,  693,  677,  695,  696,  697,
1722
      705,  698,  699,  700,  701,  702,  703,  704,  708,  706,
1723
      707,  719,  709,  709,  681,  709,  720,  676,  719, 1408,
1724
      684,  959,  690,  720, 1408,  679,  691,  959,  695,  683,
1725
      680,  693,  742,  697,  682,  688,  685,  687,  692,  700,
1726
1727
      710,  710,  735,  710,  703,  736,  707,  696,  738,  694,
1728
      698,  699,  705,  701,  702,  706,  704,  708,  701,  716,
1729
      716,  716,  716,  716,  716,  716,  726,  726,  726,  726,
1730
      726,  726,  726,  710,  729,  730,  731,  733,  737,  739,
1731
      740,  729,  730,  741,  742,  744,  743,  735,  738,  710,
1732
      745,  747,  748,  749,  753,  736,  733,  752,  731,  750,
1733
      710,  751,  754,  755,  756,  757,  758,  760,  761,  759,
1734
      763,  739,  762,  766,  764,  768,  765,  710,  743,  767,
1735
      771,  769,  747,  741,  773,  744,  753,  770,  737,  740,
1736
      750,  752,  751,  772,  774,  775,  745,  776,  778,  779,
1737
1738
      781,  748,  782,  762,  757,  755,  749,  759,  754,  783,
1739
      756,  768,  769,  766,  784,  785,  758,  771,  760,  761,
1740
      764,  765,  763,  770,  767,  786,  787,  773,  789,  772,
1741
      774,  790,  791,  782,  794,  793,  795,  796,  806,  772,
1742
      798,  775,  797,  779,  781,  778,  799,  802,  776,  804,
1743
      801,  807,  783,  800,  803,  805,  810,  809,  808,  811,
1744
      813,  812,  790,  816,  817,  784,  785,  814,  818,  787,
1745
      806,  798,  815,  794,  793,  833, 2096,  786,  791,  795,
1746
      804,  834,  833,  796,  789,  793,  801,  797,  834,  800,
1747
      800,  845,  802,  807,  808,  799,  800,  842,  800,  809,
1748
1749
      805,  803,  813,  814,  842,  811,  810,  812,  818,  815,
1750
      819,  819,  816,  819,  848,  845,  849,  817,  828,  828,
1751
      828,  828,  828,  828,  829,  829,  829,  829,  829,  829,
1752
      829,  839,  839,  839,  839,  839,  839,  843,  846,  850,
1753
      851,  852,  853,  855,  843,  848,  854,  856,  857,  860,
1754
      858,  861,  863,  859,  864,  862,  859,  865,  866,  846,
1755
      819,  867,  868,  874,  869,  872,  873,  870,  849,  876,
1756
      871,  877,  851,  875,  878,  850,  880,  884,  854,  885,
1757
      860,  887,  879,  883,  852,  858,  855,  861,  853,  819,
1758
      859,  859,  881,  886,  857,  862,  864,  856,  870,  867,
1759
1760
      862,  871,  863,  888,  872,  873,  859,  865,  869,  889,
1761
      866,  891,  874,  879,  868,  893,  875,  878,  894,  880,
1762
      895,  876,  877,  883,  896,  881,  884,  898,  897,  886,
1763
      887,  885,  902,  901,  903,  904,  905,  906,  908,  907,
1764
      909,  910,  911,  915,  912,  914,  913,  922,  920,  888,
1765
      916,  891,  889,  925,  894,  896,  963,  924,  926,  895,
1766
      918,  917,  919,  921,  893,  897,  923,  905,  928,  929,
1767
      903,  932,  910,  927,  930,  904,  912,  914,  908,  898,
1768
      901,  902,  913,  906,  907,  931,  916,  911,  963,  909,
1769
      915,  920,  913,  917,  918,  917,  924,  922,  919,  921,
1770
1771
      929,  917,  923,  946,  918,  925,  964,  926,  930,  927,
1772
      946,  936,  936,  928,  936,  960,  932,  965,  966,  967,
1773
      943,  931,  943,  943,  943,  943,  943,  943,  947,  957,
1774
      958,  968,  971,  970,  972,  947,  957,  958,  960,  964,
1775
      973,  974,  976,  975,  977,  978,  980,  974,  979,  981,
1776
      982,  983,  965,  984,  985,  987,  989,  990,  993,  967,
1777
      986,  988,  991,  992,  994,  995,  998,  996,  966,  997,
1778
     1000, 1001, 1002, 1003, 1009, 2087,  973, 1010, 1006,  972,
1779
     1011,  981, 1004,  968,  970, 1012,  982,  976,  971,  975,
1780
      978,  986,  988,  980,  983,  977,  978,  979,  996,  998,
1781
1782
      994, 1013, 1014,  984,  993,  985,  987,  989,  990,  997,
1783
     1015,  991,  992, 1004, 1017, 1018,  995, 1019, 1020, 1009,
1784
     1021, 1002, 1000, 1010, 1003, 1006, 1001, 1022, 1023, 1024,
1785
     1011, 1012, 1025, 1026, 1013, 1027, 1029, 1028, 1031, 1014,
1786
     1032, 1030, 1034, 1033, 1035, 1038, 1037, 1039, 1036, 1019,
1787
     1017, 1040, 1041, 1043, 1044, 1045, 1020, 1042, 1047, 1048,
1788
     1015, 1049, 1046, 1023, 1052, 1022, 1018, 1027, 1067, 1026,
1789
     1021, 1028, 1050, 1051, 1024, 1067, 1026, 1033, 1025, 1030,
1790
     1068, 1076, 1031, 1036, 1084, 1034, 1083, 1068, 1076, 1029,
1791
     1035, 1032, 1037, 1036, 1040, 1038, 1042, 1085, 1077, 1086,
1792
1793
     1044, 1039, 1043, 1041, 1046, 1077, 1045, 1047, 1050, 1087,
1794
     1048, 1049, 1088, 1089, 1090, 1052, 1051, 1056, 1056, 1084,
1795
     1056, 1062, 1062, 1062, 1062, 1062, 1062, 1063, 1085, 1063,
1796
     1063, 1063, 1063, 1063, 1063, 1086, 1083, 1091, 1094, 1095,
1797
     1096, 1098, 1097, 1100, 1089, 1099, 1102, 1101, 1104, 1105,
1798
     1103, 1106, 1108, 1109, 1087, 1107, 1113, 1118, 1110, 1090,
1799
     1117, 1121, 1111, 1088, 1112, 1056, 1124, 1119, 1091, 1115,
1800
     1116, 1123, 1096, 1126, 1125, 1129, 1135, 1131, 1102, 1127,
1801
     1128, 1098, 1130, 1132, 1104, 1105, 1133, 1094, 1097, 1095,
1802
     1103, 1107, 1109, 1056, 1101, 1099, 1100, 1110, 1111, 1124,
1803
1804
     1112, 1134, 1106, 1108, 1119, 1115, 1116, 1121, 1113, 1118,
1805
     1127, 1117, 1125, 1116, 1123, 1128, 1131, 1136, 1130, 1137,
1806
     1138, 1133, 1139, 1135, 1140, 1126, 1141, 1129, 1142, 1144,
1807
     1143, 1146, 1132, 1145, 1148, 1147, 1149, 1150, 1151, 1152,
1808
     1154, 1153, 1155, 1156, 1157, 1158, 1134, 1159, 1136, 1160,
1809
     1163, 1137, 1161, 1164, 1165, 2081, 1166, 1162, 1138, 2077,
1810
     2073, 1142, 1141, 1195, 1145, 1144, 1147, 1146, 1168, 1140,
1811
     1143, 1198, 1141, 1155, 1139, 1157, 1149, 1199, 1154, 1156,
1812
     1203, 1151, 1195, 1200, 1164, 1148, 1153, 1166, 1161, 1150,
1813
     1152, 1158, 1160, 1162, 1165, 1171, 1171, 1159, 1171, 1168,
1814
1815
     1163, 1179, 1182, 1179, 1179, 1179, 1179, 1179, 1179, 1182,
1816
     1183, 1193, 1194, 1201, 1202, 1200, 1203, 1183, 1193, 1194,
1817
     1204, 1198, 1205, 1199, 1206, 1208, 1207, 1209, 1210, 1212,
1818
     1200, 1213, 1215, 1216, 1217, 1220, 1218, 1222, 1223, 1224,
1819
     1225, 1226, 1227, 1231, 1229, 1230, 1233, 1234, 1235, 1232,
1820
     1238, 1242, 1202, 1244, 1239, 1248, 1205, 1207, 1209, 1249,
1821
     1236, 1208, 1213, 1201, 1237, 1241, 1247, 1243, 1245, 1251,
1822
     1253, 1255, 1204, 1212, 1220, 1206, 1222, 1233, 1246, 1210,
1823
     1252, 1230, 1216, 1215, 1217, 1218, 1232, 1223, 1224, 1229,
1824
     1225, 1226, 1236, 1227, 1235, 1237, 1234, 1239, 1243, 1231,
1825
1826
     1242, 1238, 1241, 1244, 1245, 1248, 1254, 1256, 1249, 1247,
1827
     1246, 1257, 1252, 1260, 1255, 1258, 1261, 1262, 1263, 1264,
1828
     1251, 1265, 1266, 1253, 1275, 1268, 1269, 1267, 1270, 1271,
1829
     1273, 1278, 1277, 1280, 1279, 1283, 1283, 1315, 1283, 1284,
1830
     1284, 1309, 1284, 1317, 1254, 1260, 1293, 1261, 1286, 1286,
1831
     1256, 1286, 1258, 1293, 1257, 1264, 1261, 1265, 1267, 1268,
1832
     1311, 1270, 1318, 1263, 1308, 1273, 1327, 1266, 1279, 1269,
1833
     1262, 1277, 1271, 1275, 1310, 1317, 1280, 1288, 1288, 1288,
1834
     1288, 1288, 1288, 1283, 1313, 1309, 1315, 1289, 1278, 1289,
1835
     1289, 1289, 1289, 1289, 1289, 1294, 1302, 1303, 1306, 1316,
1836
1837
     1308, 1306, 1294, 1302, 1303, 1319, 1311, 1320, 1323, 1310,
1838
     1321, 1283, 1322, 1318, 1325, 1313, 1326, 1327, 1328, 1329,
1839
     1331, 1330, 1332, 1333, 1335, 1334, 1337, 1336, 1340, 1342,
1840
     1316, 1345, 1343, 1346, 1339, 1344, 1319, 1349, 1351, 1352,
1841
     1320, 1347, 1355, 1348, 1320, 1350, 1321, 1356, 1322, 1353,
1842
     1326, 1354, 1361, 1323, 1363, 1359, 1331, 1358, 1332, 1336,
1843
     1335, 1357, 1333, 1325, 1334, 1339, 1343, 1345, 1329, 1328,
1844
     1330, 1344, 1347, 1346, 1348, 1342, 1360, 1362, 1340, 1337,
1845
     1364, 1365, 1344, 1356, 1366, 1350, 1359, 1351, 1349, 1353,
1846
     1352, 1354, 1361, 1358, 1357, 1367, 1368, 1370, 1355, 1371,
1847
1848
     1363, 1372, 1373, 1374, 1375, 1376, 1378, 1379, 1362, 1380,
1849
     1412, 1381, 1360, 1382, 1392, 1395, 1392, 1392, 1392, 1392,
1850
     1392, 1392, 1395, 1364, 1415, 1417, 1396, 1414, 1413, 1416,
1851
     1366, 1367, 1365, 1396, 1374, 1371, 1375, 1406, 1418, 1420,
1852
     1376, 1419, 1421, 1379, 1406, 1380, 1370, 1368, 1373, 1382,
1853
     1422, 1407, 1372, 1423, 1424, 1426, 1378, 1381, 1407, 1412,
1854
     1413, 1428, 1414, 1416, 1430, 1433, 1431, 1432, 1417, 1434,
1855
     1435, 1436, 1418, 1415, 1419, 1438, 1416, 1421, 1440, 1442,
1856
     1441, 1443, 1439, 1447, 1444, 1423, 1448, 1449, 1420, 1445,
1857
     1450, 1451, 1453, 1422, 1454, 1455, 1458, 1424, 1461, 1459,
1858
1859
     1428, 1426, 1431, 1432, 1456, 1462, 1460, 1465, 1438, 1463,
1860
     1464, 1466, 1467, 1470, 1430, 1433, 1435, 1436, 1439, 1434,
1861
     1441, 1445, 1472, 1443, 1471, 1445, 1442, 1447, 1440, 1444,
1862
     1450, 1473, 1474, 1461, 1475, 1456, 1448, 1449, 1477, 1458,
1863
     1479, 1451, 1459, 1460, 1453, 1454, 1463, 1465, 1480, 1506,
1864
     1508, 1466, 1455, 1511, 1509, 1510, 1462, 1467, 1471, 1464,
1865
     1481, 1481, 1472, 1481, 1482, 1482, 1470, 1482, 1475, 1507,
1866
     1477, 1490, 1491, 1499, 1513, 1500, 1473, 1516, 1490, 1491,
1867
     1499, 1474, 1500, 1479, 1485, 1485, 1485, 1485, 1485, 1485,
1868
     1486, 1502, 1486, 1486, 1486, 1486, 1486, 1486, 1514, 1508,
1869
1870
     1506, 1480, 1511, 1515, 1502, 1509, 1517, 1518, 1519, 1507,
1871
     1523, 1510, 1521, 1524, 1525, 1526, 1527, 1531, 1528, 1529,
1872
     1513, 1530, 1532, 1533, 1535, 1536, 1537, 1538, 1539, 1516,
1873
     1540, 1542, 1543, 1541, 1544, 1515, 1545, 1549, 1517, 1546,
1874
     1548, 1514, 1551, 1521, 1519, 1552, 1553, 1518, 1547, 1555,
1875
     1559, 1558, 1560, 1525, 1526, 1554, 1535, 1531, 1556, 1527,
1876
     1523, 1528, 1529, 1524, 1530, 1544, 1562, 1538, 1539, 1557,
1877
     1540, 1548, 1545, 1533, 1561, 1537, 1536, 1541, 1546, 1532,
1878
     1563, 1543, 1542, 1549, 1547, 1552, 1564, 1554, 1565, 1556,
1879
     1553, 1587, 1574, 1555, 1559, 1591, 1575, 1560, 1551, 1574,
1880
1881
     1585, 1557, 1558, 1575, 1594, 1592, 1595, 1585, 1562, 1587,
1882
     1561, 1596, 1597, 1598, 1602, 1563, 1571, 1571, 1571, 1571,
1883
     1571, 1571, 1599, 1600, 1565, 1601, 1603, 1606, 1604, 1607,
1884
     1608, 1605, 1564, 1612, 1616, 1618, 1609, 1619, 1594, 1615,
1885
     1591, 1592, 1610, 1611, 1613, 1617, 1620, 1621, 1597, 1624,
1886
     1626, 1622, 1595, 1623, 1628, 1629, 1596, 1600, 1598, 1631,
1887
     1627, 1632, 1633, 1634, 1602, 1608, 1599, 1604, 1601, 1603,
1888
     1605, 1609, 1615, 1606, 1611, 1607, 1635, 1636, 1610, 1617,
1889
     1613, 1637, 1626, 1621, 1639, 1616, 1618, 1622, 1638, 1623,
1890
     1612, 1628, 1641, 1632, 1619, 1627, 1624, 1640, 1642, 1634,
1891
1892
     1643, 1644, 1631, 1620, 1629, 1647, 1647, 1647, 1647, 1647,
1893
     1647, 1650, 1633, 1664, 1665, 1639, 1659, 1666, 1650, 1635,
1894
     1636, 1637, 1667, 1659, 1638, 1669, 1670, 1671, 1672, 1640,
1895
     1673, 1674, 1675, 1676, 1642, 1641, 1697, 1681, 1677, 1678,
1896
     1682, 1685, 1695, 1699, 1644, 1692, 1700, 1683, 2063, 1643,
1897
     1686, 1687, 1689, 1690, 1666, 1694, 1698, 1665, 1702, 1701,
1898
     1705, 1703, 1709, 1664, 1708, 1707, 1710, 1667, 1729, 1671,
1899
     1731, 1674, 1681, 1670, 1672, 1669, 1697, 1682, 1675, 1676,
1900
     1673, 1677, 1678, 1683, 1685, 1730, 1686, 1687, 1689, 1690,
1901
     1692, 1694, 1695, 1732, 1699, 1701, 1716, 1700, 1707, 1708,
1902
1903
     1698, 1703, 1733, 1716, 1702, 1735, 1705, 1736, 1709, 1737,
1904
     1731, 1738, 1739, 1740, 1707, 1710, 1741, 1742, 1729, 1744,
1905
     1747, 1730, 1746, 1748, 1752, 1753, 1758, 1754, 1751, 1732,
1906
     1756, 1755, 1759, 1761, 1760, 1762, 1763, 1765, 1782, 1788,
1907
     1737, 1786, 1785, 1764, 1791, 1733, 1783, 1784, 1735, 1787,
1908
     1789, 1741, 1742, 1790, 1792, 1739, 1740, 1793, 1746, 1744,
1909
     1736, 1738, 1751, 1755, 1753, 1794, 1756, 1795, 1748, 1747,
1910
     1754, 1760, 1762, 1752, 1764, 1765, 1758, 1786, 1761, 1784,
1911
     1783, 1782, 1785, 1763, 1759, 1789, 1787, 1791, 1790, 1792,
1912
     1788, 1796, 1798, 1797, 1799, 1800, 1802, 1803, 1804, 1805,
1913
1914
     1819, 1820, 1793, 1806, 1807, 1821, 1823, 1822, 1824, 1828,
1915
     1830, 1834, 1839, 2057, 1843, 2053, 1794, 1831, 1833, 1853,
1916
     1832, 1841, 1835, 1795, 1797, 1796, 1851, 1842, 1852, 1860,
1917
     1855, 1856, 1857, 1803, 1858, 1861, 1819, 1859, 1863, 1862,
1918
     1865, 1830, 1805, 1798, 1800, 1799, 1806, 1802, 1804, 1831,
1919
     1807, 1832, 1820, 1841, 1833, 1823, 1821, 1822, 1835, 1843,
1920
     1828, 1834, 1824, 1839, 1842, 1855, 1851, 1856, 1852, 1857,
1921
     1853, 1859, 1858, 1864, 1860, 1861, 1866, 1872, 1863, 1873,
1922
     1876, 1877, 1878, 1865, 1879, 1881, 1880, 1859, 1862, 1882,
1923
     1884, 1887, 1886, 1891, 1892, 1897, 1896, 1894, 1902, 1898,
1924
1925
     1905, 1899, 1914, 2049, 1901, 1900, 1928, 1866, 1908, 2039,
1926
     1931, 1864, 1907, 1909, 1929, 1910, 1879, 1922, 1878, 1919,
1927
     1921, 1877, 1930, 1872, 1886, 1873, 1880, 1924, 1926, 1876,
1928
     1896, 1898, 1923, 1923, 1884, 1923, 1881, 1899, 1891, 1892,
1929
     1894, 1900, 1901, 1928, 1902, 1887, 1882, 1908, 1907, 1909,
1930
     1905, 1914, 1897, 1910, 1932, 1919, 1921, 1934, 1924, 1922,
1931
     1931, 2033, 1930, 1929, 1926, 2029, 2025, 2015, 2009, 2005,
1932
     2001, 1991, 1986, 1982, 1979, 1970, 1967, 1963, 1957, 1950,
1933
     1948, 1935, 1933, 1925, 1920, 1918, 1917, 1916, 1915, 1913,
1934
     1912, 1911, 1906, 1934, 1904, 1903, 1895, 1932, 1937, 1937,
1935
1936
     1937, 1937, 1937, 1937, 1937, 1937, 1938, 1938, 1938, 1938,
1937
     1938, 1938, 1938, 1938, 1939, 1939, 1939, 1939, 1939, 1939,
1938
     1939, 1939, 1940, 1940, 1940, 1940, 1940, 1940, 1940, 1940,
1939
     1941, 1941, 1941, 1941, 1941, 1941, 1941, 1941, 1942, 1942,
1940
     1942, 1942, 1942, 1942, 1942, 1942, 1943, 1893, 1943, 1943,
1941
     1889, 1943, 1944, 1944, 1944, 1944, 1945, 1888, 1945, 1945,
1942
     1945, 1945, 1945, 1945, 1946, 1946, 1947, 1947, 1949, 1949,
1943
     1951, 1885, 1951, 1951, 1951, 1951, 1951, 1951, 1952, 1952,
1944
     1953, 1953, 1954, 1954, 1955, 1955, 1956, 1956, 1956, 1958,
1945
     1958, 1959, 1959, 1960, 1960, 1960, 1961, 1961, 1962, 1962,
1946
1947
     1962, 1964, 1964, 1965, 1965, 1966, 1966, 1966, 1968, 1968,
1948
     1969, 1969, 1971, 1971, 1971, 1972, 1972, 1972, 1973, 1973,
1949
     1974, 1974, 1975, 1975, 1975, 1976, 1976, 1976, 1977, 1977,
1950
     1978, 1978, 1980, 1980, 1981, 1981, 1981, 1983, 1983, 1984,
1951
     1984, 1985, 1985, 1985, 1987, 1987, 1988, 1988, 1989, 1989,
1952
     1990, 1990, 1992, 1992, 1992, 1993, 1993, 1993, 1994, 1994,
1953
     1995, 1995, 1996, 1996, 1996, 1997, 1997, 1997, 1998, 1998,
1954
     1999, 1999, 2000, 2000, 2002, 2002, 2003, 2003, 2004, 2004,
1955
     2004, 2006, 2006, 2007, 2007, 2008, 2008, 2008, 2010, 2010,
1956
     2011, 2011, 2012, 2012, 2013, 2013, 2014, 2014, 2016, 2016,
1957
1958
     2016, 2017, 2017, 2017, 2018, 2018, 2019, 2019, 2020, 2020,
1959
     2020, 2021, 2021, 2021, 2022, 2022, 2023, 2023, 2024, 2024,
1960
     2026, 2026, 2027, 2027, 2028, 2028, 2028, 2030, 2030, 2031,
1961
     2031, 2032, 2032, 2032, 2034, 2034, 2035, 2035, 2036, 2036,
1962
     2037, 2037, 2038, 2038, 2040, 2040, 2040, 2041, 2041, 2041,
1963
     2042, 2042, 2043, 2043, 2044, 2044, 2044, 2045, 2045, 2045,
1964
     2046, 2046, 2047, 2047, 2048, 2048, 2050, 2050, 2051, 2051,
1965
     2052, 2052, 2052, 2054, 2054, 2055, 2055, 2056, 2056, 2056,
1966
     2058, 2058, 2059, 2059, 2060, 2060, 2061, 2061, 2062, 2062,
1967
     2064, 2064, 2064, 2065, 2065, 2065, 2066, 2066, 2067, 2067,
1968
1969
     2068, 2068, 2068, 2069, 2069, 2069, 2070, 2070, 2071, 2071,
1970
     2072, 2072, 2074, 2074, 2075, 2075, 2076, 2076, 2076, 2078,
1971
     2078, 2079, 2079, 2080, 2080, 2080, 2082, 2082, 2083, 2083,
1972
     2084, 2084, 2085, 2085, 2086, 2086, 2088, 2088, 2088, 2089,
1973
     2089, 2090, 2090, 2091, 2091, 2091, 2092, 2092, 2093, 2093,
1974
     2094, 2094, 2095, 2095, 2097, 2097, 2098, 2098, 2099, 2099,
1975
     2100, 2100, 2101, 2101, 2102, 2102, 2103, 2103, 2104, 2104,
1976
     2105, 2105, 2106, 2106, 2108, 2108, 2109, 2109, 2110, 2110,
1977
     2112, 2112, 2114, 2114, 2117, 2117, 1883, 1875, 1874, 1868,
1978
     1867, 1854, 1850, 1847, 1845, 1844, 1840, 1838, 1837, 1836,
1979
1980
     1829, 1827, 1826, 1825, 1816, 1814, 1812, 1811, 1810, 1809,
1981
     1808, 1801, 1781, 1780, 1779, 1778, 1776, 1774, 1773, 1771,
1982
     1770, 1769, 1768, 1767, 1766, 1757, 1750, 1749, 1745, 1743,
1983
     1734, 1727, 1726, 1724, 1723, 1722, 1721, 1720, 1719, 1718,
1984
     1717, 1715, 1714, 1713, 1712, 1711, 1706, 1704, 1696, 1693,
1985
     1691, 1688, 1684, 1680, 1679, 1668, 1663, 1662, 1661, 1660,
1986
     1658, 1657, 1655, 1654, 1653, 1652, 1651, 1649, 1648, 1646,
1987
     1645, 1630, 1625, 1614, 1593, 1590, 1589, 1588, 1586, 1583,
1988
     1582, 1581, 1580, 1579, 1578, 1577, 1573, 1572, 1569, 1568,
1989
     1550, 1534, 1522, 1520, 1512, 1504, 1503, 1498, 1497, 1495,
1990
1991
     1494, 1493, 1492, 1489, 1488, 1487, 1484, 1483, 1478, 1476,
1992
     1469, 1468, 1457, 1452, 1446, 1437, 1429, 1427, 1425, 1411,
1993
     1410, 1409, 1404, 1403, 1402, 1401, 1400, 1399, 1398, 1394,
1994
     1393, 1391, 1390, 1388, 1386, 1385, 1384, 1383, 1377, 1369,
1995
     1341, 1338, 1324, 1314, 1312, 1307, 1301, 1300, 1298, 1297,
1996
     1296, 1295, 1292, 1291, 1290, 1287, 1285, 1282, 1281, 1276,
1997
     1274, 1272, 1259, 1250, 1240, 1228, 1221, 1219, 1211, 1197,
1998
     1196, 1191, 1190, 1189, 1188, 1187, 1186, 1185, 1181, 1180,
1999
     1178, 1177, 1176, 1175, 1174, 1173, 1172, 1170, 1169, 1167,
2000
     1122, 1120, 1114, 1092, 1082, 1081, 1080, 1075, 1074, 1072,
2001
2002
     1071, 1070, 1069, 1066, 1065, 1064, 1061, 1060, 1059, 1058,
2003
     1057, 1055, 1054, 1053, 1007, 1005,  999,  969,  962,  961,
2004
      955,  954,  953,  952,  951,  950,  949,  945,  944,  942,
2005
      941,  940,  939,  938,  937,  935,  934,  933,  900,  899,
2006
      892,  890,  882,  841,  840,  837,  836,  835,  832,  831,
2007
      830,  827,  826,  825,  824,  823,  822,  821,  820,  792,
2008
      788,  780,  777,  746,  734,  732,  727,  725,  724,  723,
2009
      722,  718,  717,  715,  714,  713,  712,  711,  689,  686,
2010
      678,  675,  668,  667,  662,  648,  647,  645,  626,  621,
2011
      616,  609,  606,  605,  602,  601,  600,  597,  596,  595,
2012
2013
      594,  593,  591,  588,  564,  558,  552,  544,  507,  504,
2014
      501,  497,  489,  488,  484,  483,  480,  478,  477,  474,
2015
      473,  469,  466,  459,  434,  422,  417,  415,  405,  394,
2016
      392,  391,  388,  385,  384,  382,  379,  378,  377,  373,
2017
      372,  371,  370,  368,  366,  364,  363,  359,  350,  347,
2018
      326,  324,  311,  297,  296,  285,  282,  280,  275,  269,
2019
      268,  267,  264,  263,  262,  261,  260,  259,  258,  257,
2020
      255,  253,  250,  249,  207,  192,  191,  177,  175,  169,
2021
      168,  167,  166,  159,  158,  149,  146,  145,  133,  130,
2022
      129,  128,  127,  126,  125,  124,  123,  122,  121,  120,
2023
2024
      119,  117,  113,  112,  111,  110,  106,  105,  104,  102,
2025
      101,   97,   92,   91,   57,   55,   54,   52,   48,   47,
2026
       35,   33,   32,   27,   25,   19,   18,   17,   16,   15,
2027
       14,   13, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
2028
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
2029
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
2030
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
2031
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
2032
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
2033
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
2034
2035
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
2036
     1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936, 1936,
2037
     1936
2038
    } ;
2039
2040
static yy_state_type yy_last_accepting_state;
2041
static char *yy_last_accepting_cpos;
2042
2043
extern int yy_flex_debug;
2044
int yy_flex_debug = 0;
2045
2046
/* The intent behind this definition is that it'll catch
2047
 * any uses of REJECT which flex missed.
2048
 */
2049
#define REJECT reject_used_but_not_detected
2050
static int yy_more_flag = 0;
2051
static int yy_more_len = 0;
2052
0
#define yymore() ((yy_more_flag) = 1)
2053
0
#define YY_MORE_ADJ (yy_more_len)
2054
#define YY_RESTORE_YY_MORE_OFFSET
2055
char *yytext;
2056
#line 1 "cfg.lex"
2057
/*
2058
 * scanner for cfg files
2059
 *
2060
 * Copyright (C) 2001-2003 FhG Fokus
2061
 * Copyright (C) 2005-2009 Voice Sistem S.R.L.
2062
 * Copyright (C) 2006 enum.at
2063
 *
2064
 * This file is part of opensips, a free SIP server.
2065
 *
2066
 * opensips is free software; you can redistribute it and/or modify
2067
 * it under the terms of the GNU General Public License as published by
2068
 * the Free Software Foundation; either version 2 of the License, or
2069
 * (at your option) any later version
2070
 *
2071
 * opensips is distributed in the hope that it will be useful,
2072
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
2073
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
2074
 * GNU General Public License for more details.
2075
 *
2076
 * You should have received a copy of the GNU General Public License
2077
 * along with this program; if not, write to the Free Software
2078
 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
2079
 *
2080
 * History:
2081
 * -------
2082
 *  2003-01-29  src_port added (jiri)
2083
 *  2003-01-23  mhomed added (jiri)
2084
 *  2003-03-19  replaced all the mallocs/frees w/ pkg_malloc/pkg_free (andrei)
2085
 *  2003-04-01  added dst_port, proto (tcp, udp, tls), af(inet, inet6) (andrei)
2086
 *  2003-04-05  s/reply_route/failure_route, onreply_route introduced (jiri)
2087
 *  2003-04-12  added force_rport, chdir and wdir (andrei)
2088
 *  2003-04-22  strip_tail added (jiri)
2089
 *  2003-07-03  tls* (disable, certificate, private_key, ca_list, verify,
2090
 *               require_certificate added (andrei)
2091
 *  2003-07-06  more tls config. vars added: tls_method, tls_port_no (andrei)
2092
 *  2003-10-02  added {,set_}advertised_{address,port} (andrei)
2093
 *  2003-10-07  added hex and octal numbers support (andrei)
2094
 *  2003-10-10  replaced len_gt w/ msg:len (andrei)
2095
 *  2003-10-13  added fifo_dir (andrei)
2096
 *  2003-10-28  added tcp_accept_aliases (andrei)
2097
 *  2003-11-29  added {tcp_send, tcp_connect, tls_*}_timeout (andrei)
2098
 *  2004-03-30  added DISABLE_CORE and OPEN_FD_LIMIT (andrei)
2099
 *  2004-04-28  added sock_mode (replaces fifo_mode), sock_user &
2100
 *               sock_group  (andrei)
2101
 *  2004-05-03  applied multicast support patch from janakj
2102
 *              added MCAST_TTL (andrei)
2103
 *  2005-07-08  added tcp_connection_lifetime, tcp_poll_method,
2104
 *               tcp_max_connections (andrei)
2105
 *  2004-10-08  more escapes: \", \xHH, \nnn and minor optimizations (andrei)
2106
 *  2004-10-19  added FROM_URI and TO_URI (andrei)
2107
 *  2004-11-30  added force_send_socket
2108
 *  2005-11-22  added tos configurability (thanks to Andreas Granig)
2109
 *  2005-11-29  added serialize_branches and next_branches (bogdan)
2110
 *  2006-12-22  functions for script and branch flags added (bogdan)
2111
 *  2007-01-11  auto_aliases option added (bogdan)
2112
 *  2007-01-25  disable_dns_failover option added (bogdan)
2113
 */
2114
#line 61 "cfg.lex"
2115
  #include "cfg.tab.h"
2116
  #include "cfg_pp.h"
2117
  #include "dprint.h"
2118
  #include "globals.h"
2119
  #include "mem/mem.h"
2120
  #include <string.h>
2121
  #include <stdlib.h>
2122
  #include "ip_addr.h"
2123
  #include "ut.h"
2124
2125
2126
  /* states */
2127
0
  #define INITIAL_S   0
2128
0
  #define COMMENT_S   1
2129
0
  #define COMMENT_LN_S  2
2130
0
  #define STRING_S    3
2131
0
  #define SCRIPTVAR_S   4
2132
2133
0
  #define STR_BUF_ALLOC_UNIT  128
2134
2135
  static int comment_nest=0;
2136
  static int state=0;
2137
  static str st;
2138
  static struct str_buf s_buf;
2139
  int line=1;
2140
  int np=0;
2141
  int svar_tlen=0;
2142
  int column=1;
2143
  int startcolumn=1;
2144
  int startline=1;
2145
  char *finame = 0;
2146
2147
  static char* addchar(struct str_buf *, char);
2148
  static char* addstr(struct str_buf *, char*, int);
2149
  static void count();
2150
2151
  /* hack to solve the duplicate declaration of 'isatty' function */
2152
#if YY_FLEX_MAJOR_VERSION <= 2 && YY_FLEX_MINOR_VERSION <= 5 && YY_FLEX_SUBMINOR_VERSION < 36
2153
  #define YY_NO_UNISTD_H
2154
#else
2155
  #include <unistd.h>
2156
#endif
2157
2158
  /* hack to skip the declaration of lex unused function 'input' */
2159
  #define YY_NO_INPUT
2160
2161
#line 2162 "lex.yy.c"
2162
/* start conditions */
2163
2164
/* action keywords */
2165
/*ACTION LVALUES*/
2166
/* operators */
2167
/* variables */
2168
/* config vars. */
2169
/* values */
2170
/*NUMBER    0|(([-+])?[1-9]{DIGIT}*)*/
2171
#line 2172 "lex.yy.c"
2172
2173
0
#define INITIAL 0
2174
0
#define STRING1 1
2175
0
#define STRING2 2
2176
0
#define COMMENT 3
2177
#define COMMENT_LN 4
2178
0
#define SCRIPTVARS 5
2179
0
#define PPTOK_LINE 6
2180
0
#define PPTOK_FILEBEG 7
2181
0
#define PPTOK_FILEEND 8
2182
2183
#ifndef YY_NO_UNISTD_H
2184
/* Special case for "unistd.h", since it is non-ANSI. We include it way
2185
 * down here because we want the user's section 1 to have been scanned first.
2186
 * The user has a chance to override it with an option.
2187
 */
2188
#include <unistd.h>
2189
#endif
2190
2191
#ifndef YY_EXTRA_TYPE
2192
#define YY_EXTRA_TYPE void *
2193
#endif
2194
2195
static int yy_init_globals ( void );
2196
2197
/* Accessor methods to globals.
2198
   These are made visible to non-reentrant scanners for convenience. */
2199
2200
int yylex_destroy ( void );
2201
2202
int yyget_debug ( void );
2203
2204
void yyset_debug ( int debug_flag  );
2205
2206
YY_EXTRA_TYPE yyget_extra ( void );
2207
2208
void yyset_extra ( YY_EXTRA_TYPE user_defined  );
2209
2210
FILE *yyget_in ( void );
2211
2212
void yyset_in  ( FILE * _in_str  );
2213
2214
FILE *yyget_out ( void );
2215
2216
void yyset_out  ( FILE * _out_str  );
2217
2218
      int yyget_leng ( void );
2219
2220
char *yyget_text ( void );
2221
2222
int yyget_lineno ( void );
2223
2224
void yyset_lineno ( int _line_number  );
2225
2226
/* Macros after this point can all be overridden by user definitions in
2227
 * section 1.
2228
 */
2229
2230
#ifndef YY_SKIP_YYWRAP
2231
#ifdef __cplusplus
2232
extern "C" int yywrap ( void );
2233
#else
2234
extern int yywrap ( void );
2235
#endif
2236
#endif
2237
2238
#ifndef YY_NO_UNPUT
2239
    
2240
    static void yyunput ( int c, char *buf_ptr  );
2241
    
2242
#endif
2243
2244
#ifndef yytext_ptr
2245
static void yy_flex_strncpy ( char *, const char *, int );
2246
#endif
2247
2248
#ifdef YY_NEED_STRLEN
2249
static int yy_flex_strlen ( const char * );
2250
#endif
2251
2252
#ifndef YY_NO_INPUT
2253
#ifdef __cplusplus
2254
static int yyinput ( void );
2255
#else
2256
static int input ( void );
2257
#endif
2258
2259
#endif
2260
2261
/* Amount of stuff to slurp up with each read. */
2262
#ifndef YY_READ_BUF_SIZE
2263
#ifdef __ia64__
2264
/* On IA-64, the buffer size is 16k, not 8k */
2265
#define YY_READ_BUF_SIZE 16384
2266
#else
2267
0
#define YY_READ_BUF_SIZE 8192
2268
#endif /* __ia64__ */
2269
#endif
2270
2271
/* Copy whatever the last rule matched to the standard output. */
2272
#ifndef ECHO
2273
/* This used to be an fputs(), but since the string might contain NUL's,
2274
 * we now use fwrite().
2275
 */
2276
0
#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
2277
#endif
2278
2279
/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
2280
 * is returned in "result".
2281
 */
2282
#ifndef YY_INPUT
2283
#define YY_INPUT(buf,result,max_size) \
2284
0
  if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
2285
0
    { \
2286
0
    int c = '*'; \
2287
0
    int n; \
2288
0
    for ( n = 0; n < max_size && \
2289
0
           (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
2290
0
      buf[n] = (char) c; \
2291
0
    if ( c == '\n' ) \
2292
0
      buf[n++] = (char) c; \
2293
0
    if ( c == EOF && ferror( yyin ) ) \
2294
0
      YY_FATAL_ERROR( "input in flex scanner failed" ); \
2295
0
    result = n; \
2296
0
    } \
2297
0
  else \
2298
0
    { \
2299
0
    errno=0; \
2300
0
    while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
2301
0
      { \
2302
0
      if( errno != EINTR) \
2303
0
        { \
2304
0
        YY_FATAL_ERROR( "input in flex scanner failed" ); \
2305
0
        break; \
2306
0
        } \
2307
0
      errno=0; \
2308
0
      clearerr(yyin); \
2309
0
      } \
2310
0
    }\
2311
\
2312
2313
#endif
2314
2315
/* No semi-colon after return; correct usage is to write "yyterminate();" -
2316
 * we don't want an extra ';' after the "return" because that will cause
2317
 * some compilers to complain about unreachable statements.
2318
 */
2319
#ifndef yyterminate
2320
#define yyterminate() return YY_NULL
2321
#endif
2322
2323
/* Number of entries by which start-condition stack grows. */
2324
#ifndef YY_START_STACK_INCR
2325
#define YY_START_STACK_INCR 25
2326
#endif
2327
2328
/* Report a fatal error. */
2329
#ifndef YY_FATAL_ERROR
2330
0
#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2331
#endif
2332
2333
/* end tables serialization structures and prototypes */
2334
2335
/* Default declaration of generated scanner - a define so the user can
2336
 * easily add parameters.
2337
 */
2338
#ifndef YY_DECL
2339
#define YY_DECL_IS_OURS 1
2340
2341
extern int yylex (void);
2342
2343
#define YY_DECL int yylex (void)
2344
#endif /* !YY_DECL */
2345
2346
/* Code executed at the beginning of each rule, after yytext and yyleng
2347
 * have been set up.
2348
 */
2349
#ifndef YY_USER_ACTION
2350
#define YY_USER_ACTION
2351
#endif
2352
2353
/* Code executed at the end of each rule. */
2354
#ifndef YY_BREAK
2355
0
#define YY_BREAK /*LINTED*/break;
2356
#endif
2357
2358
#define YY_RULE_SETUP \
2359
  YY_USER_ACTION
2360
2361
/** The main scanner function which does all the work.
2362
 */
2363
YY_DECL
2364
0
{
2365
0
  yy_state_type yy_current_state;
2366
0
  char *yy_cp, *yy_bp;
2367
0
  int yy_act;
2368
    
2369
0
  if ( !(yy_init) )
2370
0
    {
2371
0
    (yy_init) = 1;
2372
2373
#ifdef YY_USER_INIT
2374
    YY_USER_INIT;
2375
#endif
2376
2377
0
    if ( ! (yy_start) )
2378
0
      (yy_start) = 1; /* first start state */
2379
2380
0
    if ( ! yyin )
2381
0
      yyin = stdin;
2382
2383
0
    if ( ! yyout )
2384
0
      yyout = stdout;
2385
2386
0
    if ( ! YY_CURRENT_BUFFER ) {
2387
0
      yyensure_buffer_stack ();
2388
0
      YY_CURRENT_BUFFER_LVALUE =
2389
0
        yy_create_buffer( yyin, YY_BUF_SIZE );
2390
0
    }
2391
2392
0
    yy_load_buffer_state(  );
2393
0
    }
2394
2395
0
  {
2396
0
#line 358 "cfg.lex"
2397
2398
2399
2400
0
#line 2401 "lex.yy.c"
2401
2402
0
  while ( /*CONSTCOND*/1 )    /* loops until end-of-file is reached */
2403
0
    {
2404
0
    (yy_more_len) = 0;
2405
0
    if ( (yy_more_flag) )
2406
0
      {
2407
0
      (yy_more_len) = (int) ((yy_c_buf_p) - (yytext_ptr));
2408
0
      (yy_more_flag) = 0;
2409
0
      }
2410
0
    yy_cp = (yy_c_buf_p);
2411
2412
    /* Support of yytext. */
2413
0
    *yy_cp = (yy_hold_char);
2414
2415
    /* yy_bp points to the position in yy_ch_buf of the start of
2416
     * the current run.
2417
     */
2418
0
    yy_bp = yy_cp;
2419
2420
0
    yy_current_state = (yy_start);
2421
0
yy_match:
2422
0
    do
2423
0
      {
2424
0
      YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
2425
0
      if ( yy_accept[yy_current_state] )
2426
0
        {
2427
0
        (yy_last_accepting_state) = yy_current_state;
2428
0
        (yy_last_accepting_cpos) = yy_cp;
2429
0
        }
2430
0
      while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2431
0
        {
2432
0
        yy_current_state = (int) yy_def[yy_current_state];
2433
0
        if ( yy_current_state >= 1937 )
2434
0
          yy_c = yy_meta[yy_c];
2435
0
        }
2436
0
      yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
2437
0
      ++yy_cp;
2438
0
      }
2439
0
    while ( yy_base[yy_current_state] != 4133 );
2440
2441
0
yy_find_action:
2442
0
    yy_act = yy_accept[yy_current_state];
2443
0
    if ( yy_act == 0 )
2444
0
      { /* have to back up */
2445
0
      yy_cp = (yy_last_accepting_cpos);
2446
0
      yy_current_state = (yy_last_accepting_state);
2447
0
      yy_act = yy_accept[yy_current_state];
2448
0
      }
2449
2450
0
    YY_DO_BEFORE_ACTION;
2451
2452
0
do_action:  /* This label is used only to access EOF actions. */
2453
2454
0
    switch ( yy_act )
2455
0
  { /* beginning of action switch */
2456
0
      case 0: /* must back up */
2457
      /* undo the effects of YY_DO_BEFORE_ACTION */
2458
0
      *yy_cp = (yy_hold_char);
2459
0
      yy_cp = (yy_last_accepting_cpos);
2460
0
      yy_current_state = (yy_last_accepting_state);
2461
0
      goto yy_find_action;
2462
2463
0
case 1:
2464
0
YY_RULE_SETUP
2465
0
#line 361 "cfg.lex"
2466
0
{ count(); }
2467
0
  YY_BREAK
2468
0
case 2:
2469
0
YY_RULE_SETUP
2470
0
#line 363 "cfg.lex"
2471
0
{count(); yylval.strval=yytext; return ASSERT; }
2472
0
  YY_BREAK
2473
0
case 3:
2474
0
YY_RULE_SETUP
2475
0
#line 364 "cfg.lex"
2476
0
{ count(); yylval.strval=yytext; return DROP; }
2477
0
  YY_BREAK
2478
0
case 4:
2479
0
YY_RULE_SETUP
2480
0
#line 365 "cfg.lex"
2481
0
{ count(); yylval.strval=yytext; return EXIT; }
2482
0
  YY_BREAK
2483
0
case 5:
2484
0
YY_RULE_SETUP
2485
0
#line 366 "cfg.lex"
2486
0
{ count(); yylval.strval=yytext; return RETURN; }
2487
0
  YY_BREAK
2488
0
case 6:
2489
0
YY_RULE_SETUP
2490
0
#line 367 "cfg.lex"
2491
0
{ count(); yylval.strval=yytext; return LOG_TOK; }
2492
0
  YY_BREAK
2493
0
case 7:
2494
0
YY_RULE_SETUP
2495
0
#line 368 "cfg.lex"
2496
0
{ count(); yylval.strval=yytext; return ERROR; }
2497
0
  YY_BREAK
2498
0
case 8:
2499
0
YY_RULE_SETUP
2500
0
#line 369 "cfg.lex"
2501
0
{ count(); yylval.strval=yytext; return ROUTE; }
2502
0
  YY_BREAK
2503
0
case 9:
2504
0
YY_RULE_SETUP
2505
0
#line 370 "cfg.lex"
2506
0
{ count(); yylval.strval=yytext;
2507
0
                return ROUTE_ONREPLY; }
2508
0
  YY_BREAK
2509
0
case 10:
2510
0
YY_RULE_SETUP
2511
0
#line 372 "cfg.lex"
2512
0
{ count(); yylval.strval=yytext;
2513
0
                return ROUTE_FAILURE; }
2514
0
  YY_BREAK
2515
0
case 11:
2516
0
YY_RULE_SETUP
2517
0
#line 374 "cfg.lex"
2518
0
{ count(); yylval.strval=yytext; return ROUTE_BRANCH; }
2519
0
  YY_BREAK
2520
0
case 12:
2521
0
YY_RULE_SETUP
2522
0
#line 375 "cfg.lex"
2523
0
{ count(); yylval.strval=yytext; return ROUTE_ERROR; }
2524
0
  YY_BREAK
2525
0
case 13:
2526
0
YY_RULE_SETUP
2527
0
#line 376 "cfg.lex"
2528
0
{ count(); yylval.strval=yytext; return ROUTE_LOCAL; }
2529
0
  YY_BREAK
2530
0
case 14:
2531
0
YY_RULE_SETUP
2532
0
#line 377 "cfg.lex"
2533
0
{ count(); yylval.strval=yytext;
2534
0
                return ROUTE_STARTUP; }
2535
0
  YY_BREAK
2536
0
case 15:
2537
0
YY_RULE_SETUP
2538
0
#line 379 "cfg.lex"
2539
0
{ count(); yylval.strval=yytext;
2540
0
                return ROUTE_TIMER; }
2541
0
  YY_BREAK
2542
0
case 16:
2543
0
YY_RULE_SETUP
2544
0
#line 381 "cfg.lex"
2545
0
{ count(); yylval.strval=yytext;
2546
0
                return ROUTE_EVENT; }
2547
0
  YY_BREAK
2548
0
case 17:
2549
0
YY_RULE_SETUP
2550
0
#line 383 "cfg.lex"
2551
0
{ count(); yylval.strval=yytext; return IF; }
2552
0
  YY_BREAK
2553
0
case 18:
2554
0
YY_RULE_SETUP
2555
0
#line 384 "cfg.lex"
2556
0
{ count(); yylval.strval=yytext; return ELSE; }
2557
0
  YY_BREAK
2558
0
case 19:
2559
0
YY_RULE_SETUP
2560
0
#line 386 "cfg.lex"
2561
0
{ count(); yylval.strval=yytext; return SWITCH; }
2562
0
  YY_BREAK
2563
0
case 20:
2564
0
YY_RULE_SETUP
2565
0
#line 387 "cfg.lex"
2566
0
{ count(); yylval.strval=yytext; return CASE; }
2567
0
  YY_BREAK
2568
0
case 21:
2569
0
YY_RULE_SETUP
2570
0
#line 388 "cfg.lex"
2571
0
{ count(); yylval.strval=yytext; return DEFAULT; }
2572
0
  YY_BREAK
2573
0
case 22:
2574
0
YY_RULE_SETUP
2575
0
#line 389 "cfg.lex"
2576
0
{ count(); yylval.strval=yytext; return BREAK; }
2577
0
  YY_BREAK
2578
0
case 23:
2579
0
YY_RULE_SETUP
2580
0
#line 390 "cfg.lex"
2581
0
{ count(); yylval.strval=yytext; return WHILE; }
2582
0
  YY_BREAK
2583
0
case 24:
2584
0
YY_RULE_SETUP
2585
0
#line 391 "cfg.lex"
2586
0
{ count(); yylval.strval=yytext; return FOR; }
2587
0
  YY_BREAK
2588
0
case 25:
2589
0
YY_RULE_SETUP
2590
0
#line 392 "cfg.lex"
2591
0
{ count(); yylval.strval=yytext; return IN; }
2592
0
  YY_BREAK
2593
0
case 26:
2594
0
YY_RULE_SETUP
2595
0
#line 393 "cfg.lex"
2596
0
{ count(); yylval.strval=yytext; return READONLY; }
2597
0
  YY_BREAK
2598
0
case 27:
2599
0
YY_RULE_SETUP
2600
0
#line 394 "cfg.lex"
2601
0
{ count(); yylval.strval=yytext; return EXPIRE; }
2602
0
  YY_BREAK
2603
0
case 28:
2604
0
YY_RULE_SETUP
2605
0
#line 396 "cfg.lex"
2606
0
{ count(); BEGIN(PPTOK_LINE); }
2607
0
  YY_BREAK
2608
0
case 29:
2609
0
YY_RULE_SETUP
2610
0
#line 397 "cfg.lex"
2611
0
{ count(); BEGIN(PPTOK_FILEBEG); }
2612
0
  YY_BREAK
2613
0
case 30:
2614
0
YY_RULE_SETUP
2615
0
#line 398 "cfg.lex"
2616
0
{ count(); BEGIN(PPTOK_FILEEND); }
2617
0
  YY_BREAK
2618
0
case 31:
2619
0
YY_RULE_SETUP
2620
0
#line 400 "cfg.lex"
2621
0
{ count(); yylval.strval=yytext;
2622
0
                  return XDBG; }
2623
0
  YY_BREAK
2624
0
case 32:
2625
0
YY_RULE_SETUP
2626
0
#line 402 "cfg.lex"
2627
0
{ count(); yylval.strval=yytext;
2628
0
                  return PV_PRINT_BUF_SIZE; }
2629
0
  YY_BREAK
2630
0
case 33:
2631
0
YY_RULE_SETUP
2632
0
#line 404 "cfg.lex"
2633
0
{ count(); yylval.strval=yytext;
2634
0
                  return XLOG; }
2635
0
  YY_BREAK
2636
0
case 34:
2637
0
YY_RULE_SETUP
2638
0
#line 406 "cfg.lex"
2639
0
{ count(); yylval.strval=yytext;
2640
0
                  return XLOG_BUF_SIZE; }
2641
0
  YY_BREAK
2642
0
case 35:
2643
0
YY_RULE_SETUP
2644
0
#line 408 "cfg.lex"
2645
0
{ count(); yylval.strval=yytext;
2646
0
                  return XLOG_FORCE_COLOR;}
2647
0
  YY_BREAK
2648
0
case 36:
2649
0
YY_RULE_SETUP
2650
0
#line 410 "cfg.lex"
2651
0
{ count(); yylval.strval=yytext;
2652
0
                  return XLOG_PRINT_LEVEL;}
2653
0
  YY_BREAK
2654
0
case 37:
2655
0
YY_RULE_SETUP
2656
0
#line 412 "cfg.lex"
2657
0
{ count(); yylval.strval=yytext;
2658
0
                  return XLOG_LEVEL;}
2659
0
  YY_BREAK
2660
0
case 38:
2661
0
YY_RULE_SETUP
2662
0
#line 414 "cfg.lex"
2663
0
{ count(); yylval.strval=yytext;
2664
0
                  return SYNC_TOKEN;}
2665
0
  YY_BREAK
2666
0
case 39:
2667
0
YY_RULE_SETUP
2668
0
#line 416 "cfg.lex"
2669
0
{ count(); yylval.strval=yytext;
2670
0
                  return ASYNC_TOKEN;}
2671
0
  YY_BREAK
2672
0
case 40:
2673
0
YY_RULE_SETUP
2674
0
#line 418 "cfg.lex"
2675
0
{ count(); yylval.strval=yytext;
2676
0
                  return LAUNCH_TOKEN;}
2677
0
  YY_BREAK
2678
0
case 41:
2679
0
YY_RULE_SETUP
2680
0
#line 421 "cfg.lex"
2681
0
{ count(); yylval.strval=yytext; return DEBUG_MODE; }
2682
0
  YY_BREAK
2683
0
case 42:
2684
0
YY_RULE_SETUP
2685
0
#line 422 "cfg.lex"
2686
0
{ count(); yylval.strval=yytext; return UDP_WORKERS; }
2687
0
  YY_BREAK
2688
0
case 43:
2689
0
YY_RULE_SETUP
2690
0
#line 423 "cfg.lex"
2691
0
{ count(); yylval.strval=yytext; return CHROOT; }
2692
0
  YY_BREAK
2693
0
case 44:
2694
0
YY_RULE_SETUP
2695
0
#line 424 "cfg.lex"
2696
0
{ count(); yylval.strval=yytext; return WDIR; }
2697
0
  YY_BREAK
2698
0
case 45:
2699
0
YY_RULE_SETUP
2700
0
#line 425 "cfg.lex"
2701
0
{ count(); yylval.strval=yytext;
2702
0
                  return DISABLE_CORE; }
2703
0
  YY_BREAK
2704
0
case 46:
2705
0
YY_RULE_SETUP
2706
0
#line 427 "cfg.lex"
2707
0
{ count(); yylval.strval=yytext;
2708
0
                  return OPEN_FD_LIMIT; }
2709
0
  YY_BREAK
2710
0
case 47:
2711
0
YY_RULE_SETUP
2712
0
#line 430 "cfg.lex"
2713
0
{ count(); yylval.strval=yytext; return ENABLE_ASSERTS; }
2714
0
  YY_BREAK
2715
0
case 48:
2716
0
YY_RULE_SETUP
2717
0
#line 431 "cfg.lex"
2718
0
{ count(); yylval.strval=yytext; return ABORT_ON_ASSERT; }
2719
0
  YY_BREAK
2720
0
case 49:
2721
0
YY_RULE_SETUP
2722
0
#line 432 "cfg.lex"
2723
0
{ count(); yylval.strval=yytext; return LOGLEVEL; }
2724
0
  YY_BREAK
2725
0
case 50:
2726
0
YY_RULE_SETUP
2727
0
#line 433 "cfg.lex"
2728
0
{ count(); yylval.strval=yytext; return LOGPREFIX; }
2729
0
  YY_BREAK
2730
0
case 51:
2731
0
YY_RULE_SETUP
2732
0
#line 434 "cfg.lex"
2733
0
{ yylval.strval=yytext; return LOGSTDOUT; }
2734
0
  YY_BREAK
2735
0
case 52:
2736
0
YY_RULE_SETUP
2737
0
#line 435 "cfg.lex"
2738
0
{ yylval.strval=yytext; return LOGSTDERROR; }
2739
0
  YY_BREAK
2740
0
case 53:
2741
0
YY_RULE_SETUP
2742
0
#line 436 "cfg.lex"
2743
0
{ yylval.strval=yytext; return STDERROR_ENABLED; }
2744
0
  YY_BREAK
2745
0
case 54:
2746
0
YY_RULE_SETUP
2747
0
#line 437 "cfg.lex"
2748
0
{ yylval.strval=yytext; return SYSLOG_ENABLED; }
2749
0
  YY_BREAK
2750
0
case 55:
2751
0
YY_RULE_SETUP
2752
0
#line 438 "cfg.lex"
2753
0
{ yylval.strval=yytext; return LOG_EVENT_ENABLED; }
2754
0
  YY_BREAK
2755
0
case 56:
2756
0
YY_RULE_SETUP
2757
0
#line 439 "cfg.lex"
2758
0
{ count(); yylval.strval=yytext; return STDERROR_LEVEL_FILTER; }
2759
0
  YY_BREAK
2760
0
case 57:
2761
0
YY_RULE_SETUP
2762
0
#line 440 "cfg.lex"
2763
0
{ count(); yylval.strval=yytext; return SYSLOG_LEVEL_FILTER; }
2764
0
  YY_BREAK
2765
0
case 58:
2766
0
YY_RULE_SETUP
2767
0
#line 441 "cfg.lex"
2768
0
{ count(); yylval.strval=yytext; return LOG_EVENT_LEVEL_FILTER; }
2769
0
  YY_BREAK
2770
0
case 59:
2771
0
YY_RULE_SETUP
2772
0
#line 442 "cfg.lex"
2773
0
{ count(); yylval.strval=yytext; return STDERROR_FORMAT; }
2774
0
  YY_BREAK
2775
0
case 60:
2776
0
YY_RULE_SETUP
2777
0
#line 443 "cfg.lex"
2778
0
{ count(); yylval.strval=yytext; return SYSLOG_FORMAT; }
2779
0
  YY_BREAK
2780
0
case 61:
2781
0
YY_RULE_SETUP
2782
0
#line 444 "cfg.lex"
2783
0
{ count(); yylval.strval=yytext;
2784
0
                  return LOG_JSON_BUF_SIZE; }
2785
0
  YY_BREAK
2786
0
case 62:
2787
0
YY_RULE_SETUP
2788
0
#line 446 "cfg.lex"
2789
0
{ count(); yylval.strval=yytext;
2790
0
                  return LOG_MSG_BUF_SIZE; }
2791
0
  YY_BREAK
2792
0
case 63:
2793
0
YY_RULE_SETUP
2794
0
#line 448 "cfg.lex"
2795
0
{ yylval.strval=yytext; return LOGFACILITY; }
2796
0
  YY_BREAK
2797
0
case 64:
2798
0
YY_RULE_SETUP
2799
0
#line 449 "cfg.lex"
2800
0
{ yylval.strval=yytext; return SYSLOG_FACILITY; }
2801
0
  YY_BREAK
2802
0
case 65:
2803
0
YY_RULE_SETUP
2804
0
#line 450 "cfg.lex"
2805
0
{ yylval.strval=yytext; return LOGNAME; }
2806
0
  YY_BREAK
2807
0
case 66:
2808
0
YY_RULE_SETUP
2809
0
#line 451 "cfg.lex"
2810
0
{ yylval.strval=yytext; return SYSLOG_NAME; }
2811
0
  YY_BREAK
2812
0
case 67:
2813
0
YY_RULE_SETUP
2814
0
#line 452 "cfg.lex"
2815
0
{ count(); yylval.strval=yytext; return LISTEN; }
2816
0
  YY_BREAK
2817
0
case 68:
2818
0
YY_RULE_SETUP
2819
0
#line 453 "cfg.lex"
2820
0
{ count(); yylval.strval=yytext; return SOCKET; }
2821
0
  YY_BREAK
2822
0
case 69:
2823
0
YY_RULE_SETUP
2824
0
#line 454 "cfg.lex"
2825
0
{ count(); yylval.strval=yytext; return MEMGROUP; }
2826
0
  YY_BREAK
2827
0
case 70:
2828
0
YY_RULE_SETUP
2829
0
#line 455 "cfg.lex"
2830
0
{ count(); yylval.strval=yytext; return ALIAS; }
2831
0
  YY_BREAK
2832
0
case 71:
2833
0
YY_RULE_SETUP
2834
0
#line 456 "cfg.lex"
2835
0
{ count(); yylval.strval=yytext; return AUTO_ALIASES; }
2836
0
  YY_BREAK
2837
0
case 72:
2838
0
YY_RULE_SETUP
2839
0
#line 457 "cfg.lex"
2840
0
{ count(); yylval.strval=yytext; return DNS; }
2841
0
  YY_BREAK
2842
0
case 73:
2843
0
YY_RULE_SETUP
2844
0
#line 458 "cfg.lex"
2845
0
{ count(); yylval.strval=yytext; return TAG; }
2846
0
  YY_BREAK
2847
0
case 74:
2848
0
YY_RULE_SETUP
2849
0
#line 459 "cfg.lex"
2850
0
{ count(); yylval.strval=yytext; return REV_DNS; }
2851
0
  YY_BREAK
2852
0
case 75:
2853
0
YY_RULE_SETUP
2854
0
#line 460 "cfg.lex"
2855
0
{ count(); yylval.strval=yytext;
2856
0
                return DNS_TRY_IPV6; }
2857
0
  YY_BREAK
2858
0
case 76:
2859
0
YY_RULE_SETUP
2860
0
#line 462 "cfg.lex"
2861
0
{ count(); yylval.strval=yytext;
2862
0
                return DNS_TRY_NAPTR; }
2863
0
  YY_BREAK
2864
0
case 77:
2865
0
YY_RULE_SETUP
2866
0
#line 464 "cfg.lex"
2867
0
{ count(); yylval.strval=yytext;
2868
0
                return DNS_RETR_TIME; }
2869
0
  YY_BREAK
2870
0
case 78:
2871
0
YY_RULE_SETUP
2872
0
#line 466 "cfg.lex"
2873
0
{ count(); yylval.strval=yytext;
2874
0
                return DNS_RETR_NO; }
2875
0
  YY_BREAK
2876
0
case 79:
2877
0
YY_RULE_SETUP
2878
0
#line 468 "cfg.lex"
2879
0
{ count(); yylval.strval=yytext;
2880
0
                return DNS_SERVERS_NO; }
2881
0
  YY_BREAK
2882
0
case 80:
2883
0
YY_RULE_SETUP
2884
0
#line 470 "cfg.lex"
2885
0
{ count(); yylval.strval=yytext;
2886
0
                return DNS_USE_SEARCH; }
2887
0
  YY_BREAK
2888
0
case 81:
2889
0
YY_RULE_SETUP
2890
0
#line 472 "cfg.lex"
2891
0
{ count(); yylval.strval=yytext;
2892
0
                return MAX_WHILE_LOOPS; }
2893
0
  YY_BREAK
2894
0
case 82:
2895
0
YY_RULE_SETUP
2896
0
#line 474 "cfg.lex"
2897
0
{ count(); yylval.strval=yytext; return MAXBUFFER; }
2898
0
  YY_BREAK
2899
0
case 83:
2900
0
YY_RULE_SETUP
2901
0
#line 475 "cfg.lex"
2902
0
{ count(); yylval.strval=yytext; return CHECK_VIA; }
2903
0
  YY_BREAK
2904
0
case 84:
2905
0
YY_RULE_SETUP
2906
0
#line 476 "cfg.lex"
2907
0
{ count(); yylval.strval=yytext; return SHM_HASH_SPLIT_PERCENTAGE; }
2908
0
  YY_BREAK
2909
0
case 85:
2910
0
YY_RULE_SETUP
2911
0
#line 477 "cfg.lex"
2912
0
{ count(); yylval.strval=yytext; return SHM_SECONDARY_HASH_SIZE; }
2913
0
  YY_BREAK
2914
0
case 86:
2915
0
YY_RULE_SETUP
2916
0
#line 478 "cfg.lex"
2917
0
{ count(); yylval.strval=yytext; return MEM_WARMING_ENABLED; }
2918
0
  YY_BREAK
2919
0
case 87:
2920
0
YY_RULE_SETUP
2921
0
#line 479 "cfg.lex"
2922
0
{ count(); yylval.strval=yytext; return MEM_WARMING_PATTERN_FILE; }
2923
0
  YY_BREAK
2924
0
case 88:
2925
0
YY_RULE_SETUP
2926
0
#line 480 "cfg.lex"
2927
0
{ count(); yylval.strval=yytext; return MEM_WARMING_PERCENTAGE; }
2928
0
  YY_BREAK
2929
0
case 89:
2930
0
YY_RULE_SETUP
2931
0
#line 481 "cfg.lex"
2932
0
{ count(); yylval.strval=yytext; return RPM_MEM_FILE; }
2933
0
  YY_BREAK
2934
0
case 90:
2935
0
YY_RULE_SETUP
2936
0
#line 482 "cfg.lex"
2937
0
{ count(); yylval.strval=yytext; return RPM_MEM_SIZE; }
2938
0
  YY_BREAK
2939
0
case 91:
2940
0
YY_RULE_SETUP
2941
0
#line 483 "cfg.lex"
2942
0
{ count(); yylval.strval=yytext; return MEMLOG; }
2943
0
  YY_BREAK
2944
0
case 92:
2945
0
YY_RULE_SETUP
2946
0
#line 484 "cfg.lex"
2947
0
{ count(); yylval.strval=yytext; return MEMDUMP; }
2948
0
  YY_BREAK
2949
0
case 93:
2950
0
YY_RULE_SETUP
2951
0
#line 485 "cfg.lex"
2952
0
{ count(); yylval.strval=yytext; return SHM_MEMLOG_SIZE; }
2953
0
  YY_BREAK
2954
0
case 94:
2955
0
YY_RULE_SETUP
2956
0
#line 486 "cfg.lex"
2957
0
{ count(); yylval.strval=yytext; return EXECMSGTHRESHOLD; }
2958
0
  YY_BREAK
2959
0
case 95:
2960
0
YY_RULE_SETUP
2961
0
#line 487 "cfg.lex"
2962
0
{ count(); yylval.strval=yytext; return EXECDNSTHRESHOLD; }
2963
0
  YY_BREAK
2964
0
case 96:
2965
0
YY_RULE_SETUP
2966
0
#line 488 "cfg.lex"
2967
0
{ count(); yylval.strval=yytext; return TCPTHRESHOLD; }
2968
0
  YY_BREAK
2969
0
case 97:
2970
0
YY_RULE_SETUP
2971
0
#line 489 "cfg.lex"
2972
0
{ count(); yylval.strval=yytext; return EVENT_SHM_THRESHOLD; }
2973
0
  YY_BREAK
2974
0
case 98:
2975
0
YY_RULE_SETUP
2976
0
#line 490 "cfg.lex"
2977
0
{ count(); yylval.strval=yytext; return EVENT_PKG_THRESHOLD; }
2978
0
  YY_BREAK
2979
0
case 99:
2980
0
YY_RULE_SETUP
2981
0
#line 491 "cfg.lex"
2982
0
{ count(); yylval.strval=yytext; return QUERYBUFFERSIZE; }
2983
0
  YY_BREAK
2984
0
case 100:
2985
0
YY_RULE_SETUP
2986
0
#line 492 "cfg.lex"
2987
0
{ count(); yylval.strval=yytext; return QUERYFLUSHTIME; }
2988
0
  YY_BREAK
2989
0
case 101:
2990
0
YY_RULE_SETUP
2991
0
#line 493 "cfg.lex"
2992
0
{ count(); yylval.strval=yytext; return SIP_WARNING; }
2993
0
  YY_BREAK
2994
0
case 102:
2995
0
YY_RULE_SETUP
2996
0
#line 494 "cfg.lex"
2997
0
{ count(); yylval.strval=yytext; return MHOMED; }
2998
0
  YY_BREAK
2999
0
case 103:
3000
0
YY_RULE_SETUP
3001
0
#line 495 "cfg.lex"
3002
0
{ count(); yylval.strval=yytext; return TCP_NO_NEW_CONN_BFLAG; }
3003
0
  YY_BREAK
3004
0
case 104:
3005
0
YY_RULE_SETUP
3006
0
#line 496 "cfg.lex"
3007
0
{ count(); yylval.strval=yytext; return TCP_NO_NEW_CONN_RPLFLAG; }
3008
0
  YY_BREAK
3009
0
case 105:
3010
0
YY_RULE_SETUP
3011
0
#line 497 "cfg.lex"
3012
0
{ count(); yylval.strval=yytext; return TCP_WORKERS; }
3013
0
  YY_BREAK
3014
0
case 106:
3015
0
YY_RULE_SETUP
3016
0
#line 498 "cfg.lex"
3017
0
{ count(); yylval.strval=yytext;
3018
0
                  return TCP_ACCEPT_ALIASES; }
3019
0
  YY_BREAK
3020
0
case 107:
3021
0
YY_RULE_SETUP
3022
0
#line 500 "cfg.lex"
3023
0
{ count(); yylval.strval=yytext;
3024
0
                  return TCP_CONNECT_TIMEOUT; }
3025
0
  YY_BREAK
3026
0
case 108:
3027
0
YY_RULE_SETUP
3028
0
#line 502 "cfg.lex"
3029
0
{ count(); yylval.strval=yytext;
3030
0
                  return TCP_CON_LIFETIME; }
3031
0
  YY_BREAK
3032
0
case 109:
3033
0
YY_RULE_SETUP
3034
0
#line 504 "cfg.lex"
3035
0
{ count(); yylval.strval=yytext;
3036
0
                  return TCP_SOCKET_BACKLOG; }
3037
0
  YY_BREAK
3038
0
case 110:
3039
0
YY_RULE_SETUP
3040
0
#line 506 "cfg.lex"
3041
0
{ count(); yylval.strval=yytext;
3042
0
                  return POLL_METHOD; }
3043
0
  YY_BREAK
3044
0
case 111:
3045
0
YY_RULE_SETUP
3046
0
#line 508 "cfg.lex"
3047
0
{ count(); yylval.strval=yytext;
3048
0
                  return TCP_MAX_CONNECTIONS; }
3049
0
  YY_BREAK
3050
0
case 112:
3051
0
YY_RULE_SETUP
3052
0
#line 510 "cfg.lex"
3053
0
{ count(); yylval.strval=yytext; return TCP_KEEPALIVE; }
3054
0
  YY_BREAK
3055
0
case 113:
3056
0
YY_RULE_SETUP
3057
0
#line 511 "cfg.lex"
3058
0
{ count(); yylval.strval=yytext; return TCP_KEEPCOUNT; }
3059
0
  YY_BREAK
3060
0
case 114:
3061
0
YY_RULE_SETUP
3062
0
#line 512 "cfg.lex"
3063
0
{ count(); yylval.strval=yytext; return TCP_KEEPIDLE; }
3064
0
  YY_BREAK
3065
0
case 115:
3066
0
YY_RULE_SETUP
3067
0
#line 513 "cfg.lex"
3068
0
{ count(); yylval.strval=yytext; return TCP_KEEPINTERVAL; }
3069
0
  YY_BREAK
3070
0
case 116:
3071
0
YY_RULE_SETUP
3072
0
#line 514 "cfg.lex"
3073
0
{ count(); yylval.strval=yytext; return TCP_MAX_MSG_TIME; }
3074
0
  YY_BREAK
3075
0
case 117:
3076
0
YY_RULE_SETUP
3077
0
#line 515 "cfg.lex"
3078
0
{ count(); yylval.strval=yytext; return TCP_PARALLEL_READ_ON_WORKERS; }
3079
0
  YY_BREAK
3080
0
case 118:
3081
0
YY_RULE_SETUP
3082
0
#line 516 "cfg.lex"
3083
0
{ count(); yylval.strval=yytext; return SERVER_SIGNATURE; }
3084
0
  YY_BREAK
3085
0
case 119:
3086
0
YY_RULE_SETUP
3087
0
#line 517 "cfg.lex"
3088
0
{ count(); yylval.strval=yytext; return SERVER_HEADER; }
3089
0
  YY_BREAK
3090
0
case 120:
3091
0
YY_RULE_SETUP
3092
0
#line 518 "cfg.lex"
3093
0
{ count(); yylval.strval=yytext; return USER_AGENT_HEADER; }
3094
0
  YY_BREAK
3095
0
case 121:
3096
0
YY_RULE_SETUP
3097
0
#line 519 "cfg.lex"
3098
0
{ count(); yylval.strval=yytext;
3099
0
                  return ADVERTISED_ADDRESS; }
3100
0
  YY_BREAK
3101
0
case 122:
3102
0
YY_RULE_SETUP
3103
0
#line 521 "cfg.lex"
3104
0
{ count(); yylval.strval=yytext;
3105
0
                  return ADVERTISED_PORT; }
3106
0
  YY_BREAK
3107
0
case 123:
3108
0
YY_RULE_SETUP
3109
0
#line 523 "cfg.lex"
3110
0
{ count(); yylval.strval=yytext;
3111
0
                  return MCAST_LOOPBACK; }
3112
0
  YY_BREAK
3113
0
case 124:
3114
0
YY_RULE_SETUP
3115
0
#line 525 "cfg.lex"
3116
0
{ count(); yylval.strval=yytext;
3117
0
                  return MCAST_TTL; }
3118
0
  YY_BREAK
3119
0
case 125:
3120
0
YY_RULE_SETUP
3121
0
#line 527 "cfg.lex"
3122
0
{ count(); yylval.strval=yytext;
3123
0
                  return TOS; }
3124
0
  YY_BREAK
3125
0
case 126:
3126
0
YY_RULE_SETUP
3127
0
#line 529 "cfg.lex"
3128
0
{ count(); yylval.strval=yytext;
3129
0
                  return DISABLE_DNS_FAILOVER; }
3130
0
  YY_BREAK
3131
0
case 127:
3132
0
YY_RULE_SETUP
3133
0
#line 531 "cfg.lex"
3134
0
{ count(); yylval.strval=yytext;
3135
0
                  return DISABLE_DNS_BLACKLIST; }
3136
0
  YY_BREAK
3137
0
case 128:
3138
0
YY_RULE_SETUP
3139
0
#line 533 "cfg.lex"
3140
0
{ count(); yylval.strval=yytext;
3141
0
                  return DST_BLACKLIST; }
3142
0
  YY_BREAK
3143
0
case 129:
3144
0
YY_RULE_SETUP
3145
0
#line 535 "cfg.lex"
3146
0
{ count(); yylval.strval=yytext;
3147
0
                  return DISABLE_STATELESS_FWD; }
3148
0
  YY_BREAK
3149
0
case 130:
3150
0
YY_RULE_SETUP
3151
0
#line 537 "cfg.lex"
3152
0
{ count(); yylval.strval=yytext;
3153
0
                  return DB_VERSION_TABLE; }
3154
0
  YY_BREAK
3155
0
case 131:
3156
0
YY_RULE_SETUP
3157
0
#line 539 "cfg.lex"
3158
0
{ count(); yylval.strval=yytext;
3159
0
                  return DB_DEFAULT_URL; }
3160
0
  YY_BREAK
3161
0
case 132:
3162
0
YY_RULE_SETUP
3163
0
#line 541 "cfg.lex"
3164
0
{ count(); yylval.strval=yytext;
3165
0
                  return DB_MAX_ASYNC_CONNECTIONS; }
3166
0
  YY_BREAK
3167
0
case 133:
3168
0
YY_RULE_SETUP
3169
0
#line 543 "cfg.lex"
3170
0
{ count(); yylval.strval=yytext;
3171
0
                  return DISABLE_503_TRANSLATION; }
3172
0
  YY_BREAK
3173
0
case 134:
3174
0
YY_RULE_SETUP
3175
0
#line 545 "cfg.lex"
3176
0
{ count(); yylval.strval=yytext;
3177
0
                  return AUTO_SCALING_PROFILE; }
3178
0
  YY_BREAK
3179
0
case 135:
3180
0
YY_RULE_SETUP
3181
0
#line 547 "cfg.lex"
3182
0
{ count(); yylval.strval=yytext;
3183
0
                  return AUTO_SCALING_CYCLE; }
3184
0
  YY_BREAK
3185
0
case 136:
3186
0
YY_RULE_SETUP
3187
0
#line 549 "cfg.lex"
3188
0
{ count(); yylval.strval=yytext;
3189
0
                  return TIMER_WORKERS; }
3190
0
  YY_BREAK
3191
0
case 137:
3192
0
YY_RULE_SETUP
3193
0
#line 552 "cfg.lex"
3194
0
{ count(); yylval.strval=yytext; return MPATH; }
3195
0
  YY_BREAK
3196
0
case 138:
3197
0
YY_RULE_SETUP
3198
0
#line 553 "cfg.lex"
3199
0
{ count(); yylval.strval=yytext; return LOADMODULE; }
3200
0
  YY_BREAK
3201
0
case 139:
3202
0
YY_RULE_SETUP
3203
0
#line 554 "cfg.lex"
3204
0
{ count(); yylval.strval=yytext; return MODPARAM; }
3205
0
  YY_BREAK
3206
0
case 140:
3207
0
YY_RULE_SETUP
3208
0
#line 556 "cfg.lex"
3209
0
{ count(); return EQUAL; }
3210
0
  YY_BREAK
3211
0
case 141:
3212
0
YY_RULE_SETUP
3213
0
#line 557 "cfg.lex"
3214
0
{ count(); return EQUAL_T; }
3215
0
  YY_BREAK
3216
0
case 142:
3217
0
YY_RULE_SETUP
3218
0
#line 558 "cfg.lex"
3219
0
{ count(); return GT; }
3220
0
  YY_BREAK
3221
0
case 143:
3222
0
YY_RULE_SETUP
3223
0
#line 559 "cfg.lex"
3224
0
{ count(); return LT; }
3225
0
  YY_BREAK
3226
0
case 144:
3227
0
YY_RULE_SETUP
3228
0
#line 560 "cfg.lex"
3229
0
{ count(); return GTE; }
3230
0
  YY_BREAK
3231
0
case 145:
3232
0
YY_RULE_SETUP
3233
0
#line 561 "cfg.lex"
3234
0
{ count(); return LTE; }
3235
0
  YY_BREAK
3236
0
case 146:
3237
0
YY_RULE_SETUP
3238
0
#line 562 "cfg.lex"
3239
0
{ count(); return DIFF; }
3240
0
  YY_BREAK
3241
0
case 147:
3242
0
YY_RULE_SETUP
3243
0
#line 563 "cfg.lex"
3244
0
{ count(); return MATCH; }
3245
0
  YY_BREAK
3246
0
case 148:
3247
0
YY_RULE_SETUP
3248
0
#line 564 "cfg.lex"
3249
0
{ count(); return NOTMATCH; }
3250
0
  YY_BREAK
3251
0
case 149:
3252
0
YY_RULE_SETUP
3253
0
#line 565 "cfg.lex"
3254
0
{ count(); return NOT; }
3255
0
  YY_BREAK
3256
0
case 150:
3257
0
YY_RULE_SETUP
3258
0
#line 566 "cfg.lex"
3259
0
{ count(); return AND; }
3260
0
  YY_BREAK
3261
0
case 151:
3262
0
YY_RULE_SETUP
3263
0
#line 567 "cfg.lex"
3264
0
{ count(); return OR;  }
3265
0
  YY_BREAK
3266
0
case 152:
3267
0
YY_RULE_SETUP
3268
0
#line 568 "cfg.lex"
3269
0
{ count(); return PLUS; }
3270
0
  YY_BREAK
3271
0
case 153:
3272
0
YY_RULE_SETUP
3273
0
#line 569 "cfg.lex"
3274
0
{ count(); return MINUS; }
3275
0
  YY_BREAK
3276
0
case 154:
3277
0
YY_RULE_SETUP
3278
0
#line 570 "cfg.lex"
3279
0
{ count(); return BAND; }
3280
0
  YY_BREAK
3281
0
case 155:
3282
0
YY_RULE_SETUP
3283
0
#line 571 "cfg.lex"
3284
0
{ count(); return BOR; }
3285
0
  YY_BREAK
3286
0
case 156:
3287
0
YY_RULE_SETUP
3288
0
#line 572 "cfg.lex"
3289
0
{ count(); return BXOR; }
3290
0
  YY_BREAK
3291
0
case 157:
3292
0
YY_RULE_SETUP
3293
0
#line 573 "cfg.lex"
3294
0
{ count(); return BNOT; }
3295
0
  YY_BREAK
3296
0
case 158:
3297
0
YY_RULE_SETUP
3298
0
#line 574 "cfg.lex"
3299
0
{ count(); return BLSHIFT; }
3300
0
  YY_BREAK
3301
0
case 159:
3302
0
YY_RULE_SETUP
3303
0
#line 575 "cfg.lex"
3304
0
{ count(); return BRSHIFT; }
3305
0
  YY_BREAK
3306
0
case 160:
3307
0
YY_RULE_SETUP
3308
0
#line 576 "cfg.lex"
3309
0
{ count(); return MULT; }
3310
0
  YY_BREAK
3311
0
case 161:
3312
0
YY_RULE_SETUP
3313
0
#line 577 "cfg.lex"
3314
0
{ count(); return MODULO; }
3315
0
  YY_BREAK
3316
0
case 162:
3317
0
YY_RULE_SETUP
3318
0
#line 578 "cfg.lex"
3319
0
{ count(); return COLONEQ; }
3320
0
  YY_BREAK
3321
0
case 163:
3322
0
YY_RULE_SETUP
3323
0
#line 579 "cfg.lex"
3324
0
{ count(); return PLUSEQ; }
3325
0
  YY_BREAK
3326
0
case 164:
3327
0
YY_RULE_SETUP
3328
0
#line 580 "cfg.lex"
3329
0
{ count(); return MINUSEQ; }
3330
0
  YY_BREAK
3331
0
case 165:
3332
0
YY_RULE_SETUP
3333
0
#line 581 "cfg.lex"
3334
0
{ count(); return SLASHEQ; }
3335
0
  YY_BREAK
3336
0
case 166:
3337
0
YY_RULE_SETUP
3338
0
#line 582 "cfg.lex"
3339
0
{ count(); return MULTEQ; }
3340
0
  YY_BREAK
3341
0
case 167:
3342
0
YY_RULE_SETUP
3343
0
#line 583 "cfg.lex"
3344
0
{ count(); return MODULOEQ; }
3345
0
  YY_BREAK
3346
0
case 168:
3347
0
YY_RULE_SETUP
3348
0
#line 584 "cfg.lex"
3349
0
{ count(); return BANDEQ; }
3350
0
  YY_BREAK
3351
0
case 169:
3352
0
YY_RULE_SETUP
3353
0
#line 585 "cfg.lex"
3354
0
{ count(); return BOREQ; }
3355
0
  YY_BREAK
3356
0
case 170:
3357
0
YY_RULE_SETUP
3358
0
#line 586 "cfg.lex"
3359
0
{ count(); return BXOREQ; }
3360
0
  YY_BREAK
3361
0
case 171:
3362
0
YY_RULE_SETUP
3363
0
#line 588 "cfg.lex"
3364
0
{ count(); yylval.strval=yytext; return IPV6ADDR; }
3365
0
  YY_BREAK
3366
0
case 172:
3367
0
YY_RULE_SETUP
3368
0
#line 589 "cfg.lex"
3369
0
{ count(); yylval.strval=yytext; return IPV4ADDR; }
3370
0
  YY_BREAK
3371
0
case 173:
3372
0
YY_RULE_SETUP
3373
0
#line 591 "cfg.lex"
3374
0
{
3375
0
        count(); yylval.strval=yytext; return IPNET; }
3376
0
  YY_BREAK
3377
0
case 174:
3378
0
YY_RULE_SETUP
3379
0
#line 594 "cfg.lex"
3380
0
{ count(); yylval.intval=atoi(yytext);return NUMBER; }
3381
0
  YY_BREAK
3382
0
case 175:
3383
0
YY_RULE_SETUP
3384
0
#line 595 "cfg.lex"
3385
0
{ count(); yylval.intval=(int)strtol(yytext, 0, 16);
3386
0
              return NUMBER; }
3387
0
  YY_BREAK
3388
0
case 176:
3389
0
YY_RULE_SETUP
3390
0
#line 597 "cfg.lex"
3391
0
{ count(); yylval.intval=(int)strtol(yytext, 0, 8);
3392
0
              return NUMBER; }
3393
0
  YY_BREAK
3394
0
case 177:
3395
0
YY_RULE_SETUP
3396
0
#line 599 "cfg.lex"
3397
0
{ count(); yylval.intval=1; return NUMBER; }
3398
0
  YY_BREAK
3399
0
case 178:
3400
0
YY_RULE_SETUP
3401
0
#line 600 "cfg.lex"
3402
0
{ count(); yylval.intval=0; return NUMBER; }
3403
0
  YY_BREAK
3404
0
case 179:
3405
0
YY_RULE_SETUP
3406
0
#line 601 "cfg.lex"
3407
0
{ count(); yylval.intval=0; return NULLV; }
3408
0
  YY_BREAK
3409
0
case 180:
3410
0
YY_RULE_SETUP
3411
0
#line 603 "cfg.lex"
3412
0
{ count(); return COMMA; }
3413
0
  YY_BREAK
3414
0
case 181:
3415
0
YY_RULE_SETUP
3416
0
#line 604 "cfg.lex"
3417
0
{ count(); return SEMICOLON; }
3418
0
  YY_BREAK
3419
0
case 182:
3420
0
YY_RULE_SETUP
3421
0
#line 605 "cfg.lex"
3422
0
{ count(); return USE_WORKERS; }
3423
0
  YY_BREAK
3424
0
case 183:
3425
0
YY_RULE_SETUP
3426
0
#line 606 "cfg.lex"
3427
0
{ count(); return SOCK_TOS; }
3428
0
  YY_BREAK
3429
0
case 184:
3430
0
YY_RULE_SETUP
3431
0
#line 607 "cfg.lex"
3432
0
{ count(); return USE_AUTO_SCALING_PROFILE; }
3433
0
  YY_BREAK
3434
0
case 185:
3435
0
YY_RULE_SETUP
3436
0
#line 608 "cfg.lex"
3437
0
{ count(); return COLON; }
3438
0
  YY_BREAK
3439
0
case 186:
3440
0
YY_RULE_SETUP
3441
0
#line 609 "cfg.lex"
3442
0
{ count(); return RPAREN; }
3443
0
  YY_BREAK
3444
0
case 187:
3445
0
YY_RULE_SETUP
3446
0
#line 610 "cfg.lex"
3447
0
{ count(); return LPAREN; }
3448
0
  YY_BREAK
3449
0
case 188:
3450
0
YY_RULE_SETUP
3451
0
#line 611 "cfg.lex"
3452
0
{ count(); return LBRACE; }
3453
0
  YY_BREAK
3454
0
case 189:
3455
0
YY_RULE_SETUP
3456
0
#line 612 "cfg.lex"
3457
0
{ count(); return RBRACE; }
3458
0
  YY_BREAK
3459
0
case 190:
3460
0
YY_RULE_SETUP
3461
0
#line 613 "cfg.lex"
3462
0
{ count(); return LBRACK; }
3463
0
  YY_BREAK
3464
0
case 191:
3465
0
YY_RULE_SETUP
3466
0
#line 614 "cfg.lex"
3467
0
{ count(); return RBRACK; }
3468
0
  YY_BREAK
3469
0
case 192:
3470
0
YY_RULE_SETUP
3471
0
#line 615 "cfg.lex"
3472
0
{ count(); return AS; }
3473
0
  YY_BREAK
3474
0
case 193:
3475
0
YY_RULE_SETUP
3476
0
#line 616 "cfg.lex"
3477
0
{ count(); return DOT; }
3478
0
  YY_BREAK
3479
0
case 194:
3480
/* rule 194 can match eol */
3481
0
YY_RULE_SETUP
3482
0
#line 617 "cfg.lex"
3483
0
{count(); } /* eat the escaped CR */
3484
0
  YY_BREAK
3485
0
case 195:
3486
/* rule 195 can match eol */
3487
0
YY_RULE_SETUP
3488
0
#line 618 "cfg.lex"
3489
0
{ count();/* return CR;*/ }
3490
0
  YY_BREAK
3491
0
case 196:
3492
0
YY_RULE_SETUP
3493
0
#line 619 "cfg.lex"
3494
0
{ count(); return ANY; }
3495
0
  YY_BREAK
3496
0
case 197:
3497
0
YY_RULE_SETUP
3498
0
#line 620 "cfg.lex"
3499
0
{ count(); return ANYCAST; }
3500
0
  YY_BREAK
3501
0
case 198:
3502
0
YY_RULE_SETUP
3503
0
#line 621 "cfg.lex"
3504
0
{ count(); return ACCEPT_SUBDOMAIN; }
3505
0
  YY_BREAK
3506
0
case 199:
3507
0
YY_RULE_SETUP
3508
0
#line 622 "cfg.lex"
3509
0
{ count(); return REUSE_PORT; }
3510
0
  YY_BREAK
3511
0
case 200:
3512
0
YY_RULE_SETUP
3513
0
#line 623 "cfg.lex"
3514
0
{ count(); return FRAG; }
3515
0
  YY_BREAK
3516
0
case 201:
3517
0
YY_RULE_SETUP
3518
0
#line 624 "cfg.lex"
3519
0
{ count(); return SLASH; }
3520
0
  YY_BREAK
3521
0
case 202:
3522
0
YY_RULE_SETUP
3523
0
#line 625 "cfg.lex"
3524
0
{ count(); return SCALE_UP_TO; }
3525
0
  YY_BREAK
3526
0
case 203:
3527
0
YY_RULE_SETUP
3528
0
#line 626 "cfg.lex"
3529
0
{ count(); return SCALE_DOWN_TO; }
3530
0
  YY_BREAK
3531
0
case 204:
3532
0
YY_RULE_SETUP
3533
0
#line 627 "cfg.lex"
3534
0
{ count(); return ON; }
3535
0
  YY_BREAK
3536
0
case 205:
3537
0
YY_RULE_SETUP
3538
0
#line 628 "cfg.lex"
3539
0
{ count(); return CYCLES; }
3540
0
  YY_BREAK
3541
0
case 206:
3542
0
YY_RULE_SETUP
3543
0
#line 629 "cfg.lex"
3544
0
{ count(); return CYCLES_WITHIN; }
3545
0
  YY_BREAK
3546
0
case 207:
3547
0
YY_RULE_SETUP
3548
0
#line 631 "cfg.lex"
3549
0
{ np=0; state=SCRIPTVAR_S;
3550
0
                svar_tlen = yyleng;
3551
0
                yymore();
3552
0
                BEGIN(SCRIPTVARS);
3553
0
              }
3554
0
  YY_BREAK
3555
0
case 208:
3556
0
YY_RULE_SETUP
3557
0
#line 636 "cfg.lex"
3558
0
{ np++; yymore(); svar_tlen = yyleng; }
3559
0
  YY_BREAK
3560
0
case 209:
3561
0
YY_RULE_SETUP
3562
0
#line 637 "cfg.lex"
3563
0
{
3564
0
      if(np==0 || np==1) {
3565
0
        count();
3566
0
        if(np==0)
3567
0
        {
3568
0
          addstr(&s_buf, yytext, yyleng-1);
3569
0
          unput(yytext[yyleng-1]);
3570
0
          yyleng--;
3571
0
        } else {
3572
0
          addstr(&s_buf, yytext, yyleng);
3573
0
          np--;
3574
0
        }
3575
0
        state=INITIAL_S;
3576
0
        BEGIN(INITIAL);
3577
0
        yylval.strval=s_buf.s;
3578
0
        memset(&s_buf, 0, sizeof(s_buf));
3579
0
        return SCRIPTVAR;
3580
0
      } else {
3581
0
        np--;
3582
0
        yymore();
3583
0
        svar_tlen = yyleng;
3584
0
      }
3585
0
    }
3586
0
  YY_BREAK
3587
0
case 210:
3588
/* rule 210 can match eol */
3589
0
YY_RULE_SETUP
3590
0
#line 660 "cfg.lex"
3591
0
{
3592
0
      if(np==0) {
3593
0
        count();
3594
0
        addstr(&s_buf, yytext, yyleng-1);
3595
0
        unput(yytext[yyleng-1]);
3596
0
        yyleng--;
3597
0
        state=INITIAL_S;
3598
0
        BEGIN(INITIAL);
3599
0
        yylval.strval=s_buf.s;
3600
0
        memset(&s_buf, 0, sizeof(s_buf));
3601
0
        return SCRIPTVAR;
3602
0
      } else {
3603
0
        yymore();
3604
0
        svar_tlen = yyleng;
3605
0
      }
3606
0
    }
3607
0
  YY_BREAK
3608
0
case 211:
3609
0
YY_RULE_SETUP
3610
0
#line 676 "cfg.lex"
3611
0
{
3612
0
            if(np==0) {
3613
0
              count();
3614
0
              addstr(&s_buf, yytext, svar_tlen);
3615
0
              while(yyleng>svar_tlen) {
3616
0
                unput(yytext[yyleng-1]);
3617
0
                yyleng--;
3618
0
              }
3619
0
              state=INITIAL_S;
3620
0
              BEGIN(INITIAL);
3621
0
              yylval.strval=s_buf.s;
3622
0
              memset(&s_buf, 0, sizeof(s_buf));
3623
0
              return SCRIPTVAR;
3624
0
            } else {
3625
0
              yymore();
3626
0
              svar_tlen = yyleng;
3627
0
            }
3628
0
        }
3629
0
  YY_BREAK
3630
0
case 212:
3631
0
YY_RULE_SETUP
3632
0
#line 694 "cfg.lex"
3633
0
{ yymore(); svar_tlen = yyleng; }
3634
0
  YY_BREAK
3635
0
case 213:
3636
0
YY_RULE_SETUP
3637
0
#line 696 "cfg.lex"
3638
0
{ count(); state=STRING_S; BEGIN(STRING1); }
3639
0
  YY_BREAK
3640
0
case 214:
3641
0
YY_RULE_SETUP
3642
0
#line 697 "cfg.lex"
3643
0
{ count(); state=STRING_S; BEGIN(STRING2); }
3644
0
  YY_BREAK
3645
0
case 215:
3646
0
YY_RULE_SETUP
3647
0
#line 700 "cfg.lex"
3648
0
{ count(); state=INITIAL_S; BEGIN(INITIAL);
3649
0
            yytext[yyleng-1]=0; yyleng--;
3650
0
            addstr(&s_buf, yytext, yyleng);
3651
0
            yylval.strval=s_buf.s;
3652
0
            memset(&s_buf, 0, sizeof(s_buf));
3653
0
            return STRING;
3654
0
          }
3655
0
  YY_BREAK
3656
0
case 216:
3657
0
YY_RULE_SETUP
3658
0
#line 707 "cfg.lex"
3659
0
{ count(); state=INITIAL_S; BEGIN(INITIAL);
3660
0
            yytext[yyleng-1]=0; yyleng--;
3661
0
            addstr(&s_buf, yytext, yyleng);
3662
0
            yylval.strval=s_buf.s;
3663
0
            memset(&s_buf, 0, sizeof(s_buf));
3664
0
            return STRING;
3665
0
          }
3666
0
  YY_BREAK
3667
0
case 217:
3668
0
YY_RULE_SETUP
3669
0
#line 714 "cfg.lex"
3670
0
{ addchar(&s_buf, *yytext); }
3671
0
  YY_BREAK
3672
0
case 218:
3673
/* rule 218 can match eol */
3674
0
YY_RULE_SETUP
3675
0
#line 715 "cfg.lex"
3676
0
{ count(); if (!eatback_pp_tok(&s_buf))
3677
0
                addchar(&s_buf, *yytext); }
3678
0
  YY_BREAK
3679
0
case 219:
3680
0
YY_RULE_SETUP
3681
0
#line 718 "cfg.lex"
3682
0
{ count(); addchar(&s_buf, '\n'); }
3683
0
  YY_BREAK
3684
0
case 220:
3685
0
YY_RULE_SETUP
3686
0
#line 719 "cfg.lex"
3687
0
{ count(); addchar(&s_buf, '\r'); }
3688
0
  YY_BREAK
3689
0
case 221:
3690
0
YY_RULE_SETUP
3691
0
#line 720 "cfg.lex"
3692
0
{ count(); addchar(&s_buf, '\a'); }
3693
0
  YY_BREAK
3694
0
case 222:
3695
0
YY_RULE_SETUP
3696
0
#line 721 "cfg.lex"
3697
0
{ count(); addchar(&s_buf, '\t'); }
3698
0
  YY_BREAK
3699
0
case 223:
3700
0
YY_RULE_SETUP
3701
0
#line 722 "cfg.lex"
3702
0
{ count(); addchar(&s_buf, '"');  }
3703
0
  YY_BREAK
3704
0
case 224:
3705
0
YY_RULE_SETUP
3706
0
#line 723 "cfg.lex"
3707
0
{ count(); addchar(&s_buf, '\\'); }
3708
0
  YY_BREAK
3709
0
case 225:
3710
0
YY_RULE_SETUP
3711
0
#line 724 "cfg.lex"
3712
0
{ count(); addchar(&s_buf,
3713
0
                      (char)strtol(yytext+2, 0, 16)); }
3714
0
  YY_BREAK
3715
/* don't allow \[0-7]{1}, it will eat the backreferences from
3716
    subst_uri if allowed (although everybody should use '' in subt_uri) */
3717
0
case 226:
3718
0
YY_RULE_SETUP
3719
0
#line 728 "cfg.lex"
3720
0
{ count(); addchar(&s_buf,
3721
0
                      (char)strtol(yytext+1, 0, 8));  }
3722
0
  YY_BREAK
3723
0
case 227:
3724
/* rule 227 can match eol */
3725
0
YY_RULE_SETUP
3726
0
#line 730 "cfg.lex"
3727
0
{ count(); eatback_pp_tok(&s_buf); } /* eat escaped CRs */
3728
0
  YY_BREAK
3729
0
case 228:
3730
/* rule 228 can match eol */
3731
0
YY_RULE_SETUP
3732
0
#line 731 "cfg.lex"
3733
0
{ count(); if (!eatback_pp_tok(&s_buf))
3734
0
                addchar(&s_buf, *yytext); }
3735
0
  YY_BREAK
3736
0
case 229:
3737
/* rule 229 can match eol */
3738
0
YY_RULE_SETUP
3739
0
#line 733 "cfg.lex"
3740
0
{ addchar(&s_buf, *yytext); }
3741
0
  YY_BREAK
3742
0
case 230:
3743
0
YY_RULE_SETUP
3744
0
#line 736 "cfg.lex"
3745
0
{ count(); comment_nest++; state=COMMENT_S;
3746
0
                    BEGIN(COMMENT); }
3747
0
  YY_BREAK
3748
0
case 231:
3749
0
YY_RULE_SETUP
3750
0
#line 738 "cfg.lex"
3751
0
{ count(); comment_nest--;
3752
0
                    if (comment_nest==0){
3753
0
                      state=INITIAL_S;
3754
0
                      BEGIN(INITIAL);
3755
0
                    }
3756
0
                }
3757
0
  YY_BREAK
3758
0
case 232:
3759
/* rule 232 can match eol */
3760
0
YY_RULE_SETUP
3761
0
#line 744 "cfg.lex"
3762
0
{ count(); };
3763
0
  YY_BREAK
3764
0
case 233:
3765
/* rule 233 can match eol */
3766
0
YY_RULE_SETUP
3767
0
#line 746 "cfg.lex"
3768
0
{ count(); }
3769
0
  YY_BREAK
3770
0
case 234:
3771
0
YY_RULE_SETUP
3772
0
#line 748 "cfg.lex"
3773
0
{ count(); addstr(&s_buf, yytext, yyleng);
3774
0
                  yylval.strval=s_buf.s;
3775
0
                  memset(&s_buf, 0, sizeof(s_buf));
3776
0
                  return ID; }
3777
0
  YY_BREAK
3778
0
case 235:
3779
0
YY_RULE_SETUP
3780
0
#line 752 "cfg.lex"
3781
0
{ /* grab the line number */
3782
0
    st.s = yytext + 1;
3783
0
    st.len = yyleng - 1;
3784
0
    if (str2int(&st, (unsigned int *)&line) != 0) {
3785
0
      LM_CRIT("bad line number integer: '%.*s'\n", st.len, st.s);
3786
0
      exit(-1);
3787
0
    }
3788
0
    BEGIN(INITIAL);
3789
0
}
3790
0
  YY_BREAK
3791
0
case 236:
3792
0
YY_RULE_SETUP
3793
0
#line 762 "cfg.lex"
3794
0
{ /* grab the file path */
3795
0
    st.s = yytext + 2;
3796
0
    st.len = yyleng - 3;
3797
0
    if (cfg_push(&st) != 0) {
3798
0
      LM_ERR("max nested includes reached!\n");
3799
0
      exit(-1);
3800
0
    }
3801
0
    BEGIN(INITIAL);
3802
0
}
3803
0
  YY_BREAK
3804
0
case 237:
3805
/* rule 237 can match eol */
3806
0
YY_RULE_SETUP
3807
0
#line 772 "cfg.lex"
3808
0
{
3809
0
    if (cfg_pop() != 0) {
3810
0
      LM_ERR("internal error during cfg_pop()\n");
3811
0
      exit(-1);
3812
0
    }
3813
0
    BEGIN(INITIAL);
3814
0
}
3815
0
  YY_BREAK
3816
0
case YY_STATE_EOF(INITIAL):
3817
0
case YY_STATE_EOF(STRING1):
3818
0
case YY_STATE_EOF(STRING2):
3819
0
case YY_STATE_EOF(COMMENT):
3820
0
case YY_STATE_EOF(COMMENT_LN):
3821
0
case YY_STATE_EOF(SCRIPTVARS):
3822
0
case YY_STATE_EOF(PPTOK_LINE):
3823
0
case YY_STATE_EOF(PPTOK_FILEBEG):
3824
0
case YY_STATE_EOF(PPTOK_FILEEND):
3825
0
#line 780 "cfg.lex"
3826
0
{
3827
0
                  switch(state){
3828
0
                    case STRING_S:
3829
0
                      LM_CRIT("unexpected EOF in"
3830
0
                            " unclosed string\n");
3831
0
                      if (s_buf.s){
3832
0
                        pkg_free(s_buf.s);
3833
0
                        memset(&s_buf, 0,
3834
0
                              sizeof(s_buf));
3835
0
                      }
3836
0
                      break;
3837
0
                    case COMMENT_S:
3838
0
                      LM_CRIT("unexpected EOF in"
3839
0
                            " %d comments open\n", comment_nest);
3840
0
                      break;
3841
0
                    case COMMENT_LN_S:
3842
0
                      LM_CRIT("unexpected EOF in"
3843
0
                            "comment line open\n");
3844
0
                      break;
3845
0
                    case SCRIPTVAR_S:
3846
0
                      LM_CRIT("unexpected EOF in"
3847
0
                            " unclosed variable\n");
3848
0
                      break;
3849
0
                  }
3850
3851
0
                  return 0;
3852
0
                }
3853
0
  YY_BREAK
3854
0
case 238:
3855
0
YY_RULE_SETUP
3856
0
#line 808 "cfg.lex"
3857
0
ECHO;
3858
0
  YY_BREAK
3859
0
#line 3860 "lex.yy.c"
3860
3861
0
  case YY_END_OF_BUFFER:
3862
0
    {
3863
    /* Amount of text matched not including the EOB char. */
3864
0
    int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
3865
3866
    /* Undo the effects of YY_DO_BEFORE_ACTION. */
3867
0
    *yy_cp = (yy_hold_char);
3868
0
    YY_RESTORE_YY_MORE_OFFSET
3869
3870
0
    if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
3871
0
      {
3872
      /* We're scanning a new file or input source.  It's
3873
       * possible that this happened because the user
3874
       * just pointed yyin at a new source and called
3875
       * yylex().  If so, then we have to assure
3876
       * consistency between YY_CURRENT_BUFFER and our
3877
       * globals.  Here is the right place to do so, because
3878
       * this is the first action (other than possibly a
3879
       * back-up) that will match for the new input source.
3880
       */
3881
0
      (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3882
0
      YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
3883
0
      YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
3884
0
      }
3885
3886
    /* Note that here we test for yy_c_buf_p "<=" to the position
3887
     * of the first EOB in the buffer, since yy_c_buf_p will
3888
     * already have been incremented past the NUL character
3889
     * (since all states make transitions on EOB to the
3890
     * end-of-buffer state).  Contrast this with the test
3891
     * in input().
3892
     */
3893
0
    if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
3894
0
      { /* This was really a NUL. */
3895
0
      yy_state_type yy_next_state;
3896
3897
0
      (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
3898
3899
0
      yy_current_state = yy_get_previous_state(  );
3900
3901
      /* Okay, we're now positioned to make the NUL
3902
       * transition.  We couldn't have
3903
       * yy_get_previous_state() go ahead and do it
3904
       * for us because it doesn't know how to deal
3905
       * with the possibility of jamming (and we don't
3906
       * want to build jamming into it because then it
3907
       * will run more slowly).
3908
       */
3909
3910
0
      yy_next_state = yy_try_NUL_trans( yy_current_state );
3911
3912
0
      yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3913
3914
0
      if ( yy_next_state )
3915
0
        {
3916
        /* Consume the NUL. */
3917
0
        yy_cp = ++(yy_c_buf_p);
3918
0
        yy_current_state = yy_next_state;
3919
0
        goto yy_match;
3920
0
        }
3921
3922
0
      else
3923
0
        {
3924
0
        yy_cp = (yy_c_buf_p);
3925
0
        goto yy_find_action;
3926
0
        }
3927
0
      }
3928
3929
0
    else switch ( yy_get_next_buffer(  ) )
3930
0
      {
3931
0
      case EOB_ACT_END_OF_FILE:
3932
0
        {
3933
0
        (yy_did_buffer_switch_on_eof) = 0;
3934
3935
0
        if ( yywrap(  ) )
3936
0
          {
3937
          /* Note: because we've taken care in
3938
           * yy_get_next_buffer() to have set up
3939
           * yytext, we can now set up
3940
           * yy_c_buf_p so that if some total
3941
           * hoser (like flex itself) wants to
3942
           * call the scanner after we return the
3943
           * YY_NULL, it'll still work - another
3944
           * YY_NULL will get returned.
3945
           */
3946
0
          (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
3947
3948
0
          yy_act = YY_STATE_EOF(YY_START);
3949
0
          goto do_action;
3950
0
          }
3951
3952
0
        else
3953
0
          {
3954
0
          if ( ! (yy_did_buffer_switch_on_eof) )
3955
0
            YY_NEW_FILE;
3956
0
          }
3957
0
        break;
3958
0
        }
3959
3960
0
      case EOB_ACT_CONTINUE_SCAN:
3961
0
        (yy_c_buf_p) =
3962
0
          (yytext_ptr) + yy_amount_of_matched_text;
3963
3964
0
        yy_current_state = yy_get_previous_state(  );
3965
3966
0
        yy_cp = (yy_c_buf_p);
3967
0
        yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3968
0
        goto yy_match;
3969
3970
0
      case EOB_ACT_LAST_MATCH:
3971
0
        (yy_c_buf_p) =
3972
0
        &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
3973
3974
0
        yy_current_state = yy_get_previous_state(  );
3975
3976
0
        yy_cp = (yy_c_buf_p);
3977
0
        yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3978
0
        goto yy_find_action;
3979
0
      }
3980
0
    break;
3981
0
    }
3982
3983
0
  default:
3984
0
    YY_FATAL_ERROR(
3985
0
      "fatal flex scanner internal error--no action found" );
3986
0
  } /* end of action switch */
3987
0
    } /* end of scanning one token */
3988
0
  } /* end of user's declarations */
3989
0
} /* end of yylex */
3990
3991
/* yy_get_next_buffer - try to read in a new buffer
3992
 *
3993
 * Returns a code representing an action:
3994
 *  EOB_ACT_LAST_MATCH -
3995
 *  EOB_ACT_CONTINUE_SCAN - continue scanning from current position
3996
 *  EOB_ACT_END_OF_FILE - end of file
3997
 */
3998
static int yy_get_next_buffer (void)
3999
0
{
4000
0
      char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
4001
0
  char *source = (yytext_ptr);
4002
0
  int number_to_move, i;
4003
0
  int ret_val;
4004
4005
0
  if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
4006
0
    YY_FATAL_ERROR(
4007
0
    "fatal flex scanner internal error--end of buffer missed" );
4008
4009
0
  if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
4010
0
    { /* Don't try to fill the buffer, so this is an EOF. */
4011
0
    if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
4012
0
      {
4013
      /* We matched a single character, the EOB, so
4014
       * treat this as a final EOF.
4015
       */
4016
0
      return EOB_ACT_END_OF_FILE;
4017
0
      }
4018
4019
0
    else
4020
0
      {
4021
      /* We matched some text prior to the EOB, first
4022
       * process it.
4023
       */
4024
0
      return EOB_ACT_LAST_MATCH;
4025
0
      }
4026
0
    }
4027
4028
  /* Try to read more data. */
4029
4030
  /* First move last chars to start of buffer. */
4031
0
  number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1);
4032
4033
0
  for ( i = 0; i < number_to_move; ++i )
4034
0
    *(dest++) = *(source++);
4035
4036
0
  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
4037
    /* don't do the read, it's not guaranteed to return an EOF,
4038
     * just force an EOF
4039
     */
4040
0
    YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
4041
4042
0
  else
4043
0
    {
4044
0
      int num_to_read =
4045
0
      YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
4046
4047
0
    while ( num_to_read <= 0 )
4048
0
      { /* Not enough room in the buffer - grow it. */
4049
4050
      /* just a shorter name for the current buffer */
4051
0
      YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
4052
4053
0
      int yy_c_buf_p_offset =
4054
0
        (int) ((yy_c_buf_p) - b->yy_ch_buf);
4055
4056
0
      if ( b->yy_is_our_buffer )
4057
0
        {
4058
0
        int new_size = b->yy_buf_size * 2;
4059
4060
0
        if ( new_size <= 0 )
4061
0
          b->yy_buf_size += b->yy_buf_size / 8;
4062
0
        else
4063
0
          b->yy_buf_size *= 2;
4064
4065
0
        b->yy_ch_buf = (char *)
4066
          /* Include room in for 2 EOB chars. */
4067
0
          yyrealloc( (void *) b->yy_ch_buf,
4068
0
               (yy_size_t) (b->yy_buf_size + 2)  );
4069
0
        }
4070
0
      else
4071
        /* Can't grow it, we don't own it. */
4072
0
        b->yy_ch_buf = NULL;
4073
4074
0
      if ( ! b->yy_ch_buf )
4075
0
        YY_FATAL_ERROR(
4076
0
        "fatal error - scanner input buffer overflow" );
4077
4078
0
      (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
4079
4080
0
      num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
4081
0
            number_to_move - 1;
4082
4083
0
      }
4084
4085
0
    if ( num_to_read > YY_READ_BUF_SIZE )
4086
0
      num_to_read = YY_READ_BUF_SIZE;
4087
4088
    /* Read in more data. */
4089
0
    YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
4090
0
      (yy_n_chars), num_to_read );
4091
4092
0
    YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4093
0
    }
4094
4095
0
  if ( (yy_n_chars) == 0 )
4096
0
    {
4097
0
    if ( number_to_move == YY_MORE_ADJ )
4098
0
      {
4099
0
      ret_val = EOB_ACT_END_OF_FILE;
4100
0
      yyrestart( yyin  );
4101
0
      }
4102
4103
0
    else
4104
0
      {
4105
0
      ret_val = EOB_ACT_LAST_MATCH;
4106
0
      YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
4107
0
        YY_BUFFER_EOF_PENDING;
4108
0
      }
4109
0
    }
4110
4111
0
  else
4112
0
    ret_val = EOB_ACT_CONTINUE_SCAN;
4113
4114
0
  if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
4115
    /* Extend the array by 50%, plus the number we really need. */
4116
0
    int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
4117
0
    YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
4118
0
      (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size  );
4119
0
    if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
4120
0
      YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
4121
    /* "- 2" to take care of EOB's */
4122
0
    YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
4123
0
  }
4124
4125
0
  (yy_n_chars) += number_to_move;
4126
0
  YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
4127
0
  YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
4128
4129
0
  (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
4130
4131
0
  return ret_val;
4132
0
}
4133
4134
/* yy_get_previous_state - get the state just before the EOB char was reached */
4135
4136
    static yy_state_type yy_get_previous_state (void)
4137
0
{
4138
0
  yy_state_type yy_current_state;
4139
0
  char *yy_cp;
4140
    
4141
0
  yy_current_state = (yy_start);
4142
4143
0
  for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
4144
0
    {
4145
0
    YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
4146
0
    if ( yy_accept[yy_current_state] )
4147
0
      {
4148
0
      (yy_last_accepting_state) = yy_current_state;
4149
0
      (yy_last_accepting_cpos) = yy_cp;
4150
0
      }
4151
0
    while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4152
0
      {
4153
0
      yy_current_state = (int) yy_def[yy_current_state];
4154
0
      if ( yy_current_state >= 1937 )
4155
0
        yy_c = yy_meta[yy_c];
4156
0
      }
4157
0
    yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
4158
0
    }
4159
4160
0
  return yy_current_state;
4161
0
}
4162
4163
/* yy_try_NUL_trans - try to make a transition on the NUL character
4164
 *
4165
 * synopsis
4166
 *  next_state = yy_try_NUL_trans( current_state );
4167
 */
4168
    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state )
4169
0
{
4170
0
  int yy_is_jam;
4171
0
      char *yy_cp = (yy_c_buf_p);
4172
4173
0
  YY_CHAR yy_c = 1;
4174
0
  if ( yy_accept[yy_current_state] )
4175
0
    {
4176
0
    (yy_last_accepting_state) = yy_current_state;
4177
0
    (yy_last_accepting_cpos) = yy_cp;
4178
0
    }
4179
0
  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4180
0
    {
4181
0
    yy_current_state = (int) yy_def[yy_current_state];
4182
0
    if ( yy_current_state >= 1937 )
4183
0
      yy_c = yy_meta[yy_c];
4184
0
    }
4185
0
  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
4186
0
  yy_is_jam = (yy_current_state == 1936);
4187
4188
0
    return yy_is_jam ? 0 : yy_current_state;
4189
0
}
4190
4191
#ifndef YY_NO_UNPUT
4192
4193
    static void yyunput (int c, char * yy_bp )
4194
0
{
4195
0
  char *yy_cp;
4196
    
4197
0
    yy_cp = (yy_c_buf_p);
4198
4199
  /* undo effects of setting up yytext */
4200
0
  *yy_cp = (yy_hold_char);
4201
4202
0
  if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
4203
0
    { /* need to shift things up to make room */
4204
    /* +2 for EOB chars. */
4205
0
    int number_to_move = (yy_n_chars) + 2;
4206
0
    char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
4207
0
          YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
4208
0
    char *source =
4209
0
        &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
4210
4211
0
    while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
4212
0
      *--dest = *--source;
4213
4214
0
    yy_cp += (int) (dest - source);
4215
0
    yy_bp += (int) (dest - source);
4216
0
    YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
4217
0
      (yy_n_chars) = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
4218
4219
0
    if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
4220
0
      YY_FATAL_ERROR( "flex scanner push-back overflow" );
4221
0
    }
4222
4223
0
  *--yy_cp = (char) c;
4224
4225
0
  (yytext_ptr) = yy_bp;
4226
0
  (yy_hold_char) = *yy_cp;
4227
0
  (yy_c_buf_p) = yy_cp;
4228
0
}
4229
4230
#endif
4231
4232
#ifndef YY_NO_INPUT
4233
#ifdef __cplusplus
4234
    static int yyinput (void)
4235
#else
4236
    static int input  (void)
4237
#endif
4238
4239
{
4240
  int c;
4241
    
4242
  *(yy_c_buf_p) = (yy_hold_char);
4243
4244
  if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
4245
    {
4246
    /* yy_c_buf_p now points to the character we want to return.
4247
     * If this occurs *before* the EOB characters, then it's a
4248
     * valid NUL; if not, then we've hit the end of the buffer.
4249
     */
4250
    if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
4251
      /* This was really a NUL. */
4252
      *(yy_c_buf_p) = '\0';
4253
4254
    else
4255
      { /* need more input */
4256
      int offset = (int) ((yy_c_buf_p) - (yytext_ptr));
4257
      ++(yy_c_buf_p);
4258
4259
      switch ( yy_get_next_buffer(  ) )
4260
        {
4261
        case EOB_ACT_LAST_MATCH:
4262
          /* This happens because yy_g_n_b()
4263
           * sees that we've accumulated a
4264
           * token and flags that we need to
4265
           * try matching the token before
4266
           * proceeding.  But for input(),
4267
           * there's no matching to consider.
4268
           * So convert the EOB_ACT_LAST_MATCH
4269
           * to EOB_ACT_END_OF_FILE.
4270
           */
4271
4272
          /* Reset buffer status. */
4273
          yyrestart( yyin );
4274
4275
          /*FALLTHROUGH*/
4276
4277
        case EOB_ACT_END_OF_FILE:
4278
          {
4279
          if ( yywrap(  ) )
4280
            return 0;
4281
4282
          if ( ! (yy_did_buffer_switch_on_eof) )
4283
            YY_NEW_FILE;
4284
#ifdef __cplusplus
4285
          return yyinput();
4286
#else
4287
          return input();
4288
#endif
4289
          }
4290
4291
        case EOB_ACT_CONTINUE_SCAN:
4292
          (yy_c_buf_p) = (yytext_ptr) + offset;
4293
          break;
4294
        }
4295
      }
4296
    }
4297
4298
  c = *(unsigned char *) (yy_c_buf_p);  /* cast for 8-bit char's */
4299
  *(yy_c_buf_p) = '\0'; /* preserve yytext */
4300
  (yy_hold_char) = *++(yy_c_buf_p);
4301
4302
  return c;
4303
}
4304
#endif  /* ifndef YY_NO_INPUT */
4305
4306
/** Immediately switch to a different input stream.
4307
 * @param input_file A readable stream.
4308
 * 
4309
 * @note This function does not reset the start condition to @c INITIAL .
4310
 */
4311
    void yyrestart  (FILE * input_file )
4312
0
{
4313
    
4314
0
  if ( ! YY_CURRENT_BUFFER ){
4315
0
        yyensure_buffer_stack ();
4316
0
    YY_CURRENT_BUFFER_LVALUE =
4317
0
            yy_create_buffer( yyin, YY_BUF_SIZE );
4318
0
  }
4319
4320
0
  yy_init_buffer( YY_CURRENT_BUFFER, input_file );
4321
0
  yy_load_buffer_state(  );
4322
0
}
4323
4324
/** Switch to a different input buffer.
4325
 * @param new_buffer The new input buffer.
4326
 * 
4327
 */
4328
    void yy_switch_to_buffer  (YY_BUFFER_STATE  new_buffer )
4329
0
{
4330
    
4331
  /* TODO. We should be able to replace this entire function body
4332
   * with
4333
   *    yypop_buffer_state();
4334
   *    yypush_buffer_state(new_buffer);
4335
     */
4336
0
  yyensure_buffer_stack ();
4337
0
  if ( YY_CURRENT_BUFFER == new_buffer )
4338
0
    return;
4339
4340
0
  if ( YY_CURRENT_BUFFER )
4341
0
    {
4342
    /* Flush out information for old buffer. */
4343
0
    *(yy_c_buf_p) = (yy_hold_char);
4344
0
    YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4345
0
    YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4346
0
    }
4347
4348
0
  YY_CURRENT_BUFFER_LVALUE = new_buffer;
4349
0
  yy_load_buffer_state(  );
4350
4351
  /* We don't actually know whether we did this switch during
4352
   * EOF (yywrap()) processing, but the only time this flag
4353
   * is looked at is after yywrap() is called, so it's safe
4354
   * to go ahead and always set it.
4355
   */
4356
0
  (yy_did_buffer_switch_on_eof) = 1;
4357
0
}
4358
4359
static void yy_load_buffer_state  (void)
4360
0
{
4361
0
      (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
4362
0
  (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
4363
0
  yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
4364
0
  (yy_hold_char) = *(yy_c_buf_p);
4365
0
}
4366
4367
/** Allocate and initialize an input buffer state.
4368
 * @param file A readable stream.
4369
 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
4370
 * 
4371
 * @return the allocated buffer state.
4372
 */
4373
    YY_BUFFER_STATE yy_create_buffer  (FILE * file, int  size )
4374
0
{
4375
0
  YY_BUFFER_STATE b;
4376
    
4377
0
  b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
4378
0
  if ( ! b )
4379
0
    YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
4380
4381
0
  b->yy_buf_size = size;
4382
4383
  /* yy_ch_buf has to be 2 characters longer than the size given because
4384
   * we need to put in 2 end-of-buffer characters.
4385
   */
4386
0
  b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2)  );
4387
0
  if ( ! b->yy_ch_buf )
4388
0
    YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
4389
4390
0
  b->yy_is_our_buffer = 1;
4391
4392
0
  yy_init_buffer( b, file );
4393
4394
0
  return b;
4395
0
}
4396
4397
/** Destroy the buffer.
4398
 * @param b a buffer created with yy_create_buffer()
4399
 * 
4400
 */
4401
    void yy_delete_buffer (YY_BUFFER_STATE  b )
4402
0
{
4403
    
4404
0
  if ( ! b )
4405
0
    return;
4406
4407
0
  if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
4408
0
    YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
4409
4410
0
  if ( b->yy_is_our_buffer )
4411
0
    yyfree( (void *) b->yy_ch_buf  );
4412
4413
0
  yyfree( (void *) b  );
4414
0
}
4415
4416
/* Initializes or reinitializes a buffer.
4417
 * This function is sometimes called more than once on the same buffer,
4418
 * such as during a yyrestart() or at EOF.
4419
 */
4420
    static void yy_init_buffer  (YY_BUFFER_STATE  b, FILE * file )
4421
4422
0
{
4423
0
  int oerrno = errno;
4424
    
4425
0
  yy_flush_buffer( b );
4426
4427
0
  b->yy_input_file = file;
4428
0
  b->yy_fill_buffer = 1;
4429
4430
    /* If b is the current buffer, then yy_init_buffer was _probably_
4431
     * called from yyrestart() or through yy_get_next_buffer.
4432
     * In that case, we don't want to reset the lineno or column.
4433
     */
4434
0
    if (b != YY_CURRENT_BUFFER){
4435
0
        b->yy_bs_lineno = 1;
4436
0
        b->yy_bs_column = 0;
4437
0
    }
4438
4439
0
        b->yy_is_interactive = 0;
4440
    
4441
0
  errno = oerrno;
4442
0
}
4443
4444
/** Discard all buffered characters. On the next scan, YY_INPUT will be called.
4445
 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
4446
 * 
4447
 */
4448
    void yy_flush_buffer (YY_BUFFER_STATE  b )
4449
0
{
4450
0
      if ( ! b )
4451
0
    return;
4452
4453
0
  b->yy_n_chars = 0;
4454
4455
  /* We always need two end-of-buffer characters.  The first causes
4456
   * a transition to the end-of-buffer state.  The second causes
4457
   * a jam in that state.
4458
   */
4459
0
  b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
4460
0
  b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
4461
4462
0
  b->yy_buf_pos = &b->yy_ch_buf[0];
4463
4464
0
  b->yy_at_bol = 1;
4465
0
  b->yy_buffer_status = YY_BUFFER_NEW;
4466
4467
0
  if ( b == YY_CURRENT_BUFFER )
4468
0
    yy_load_buffer_state(  );
4469
0
}
4470
4471
/** Pushes the new state onto the stack. The new state becomes
4472
 *  the current state. This function will allocate the stack
4473
 *  if necessary.
4474
 *  @param new_buffer The new state.
4475
 *  
4476
 */
4477
void yypush_buffer_state (YY_BUFFER_STATE new_buffer )
4478
0
{
4479
0
      if (new_buffer == NULL)
4480
0
    return;
4481
4482
0
  yyensure_buffer_stack();
4483
4484
  /* This block is copied from yy_switch_to_buffer. */
4485
0
  if ( YY_CURRENT_BUFFER )
4486
0
    {
4487
    /* Flush out information for old buffer. */
4488
0
    *(yy_c_buf_p) = (yy_hold_char);
4489
0
    YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4490
0
    YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4491
0
    }
4492
4493
  /* Only push if top exists. Otherwise, replace top. */
4494
0
  if (YY_CURRENT_BUFFER)
4495
0
    (yy_buffer_stack_top)++;
4496
0
  YY_CURRENT_BUFFER_LVALUE = new_buffer;
4497
4498
  /* copied from yy_switch_to_buffer. */
4499
0
  yy_load_buffer_state(  );
4500
0
  (yy_did_buffer_switch_on_eof) = 1;
4501
0
}
4502
4503
/** Removes and deletes the top of the stack, if present.
4504
 *  The next element becomes the new top.
4505
 *  
4506
 */
4507
void yypop_buffer_state (void)
4508
0
{
4509
0
      if (!YY_CURRENT_BUFFER)
4510
0
    return;
4511
4512
0
  yy_delete_buffer(YY_CURRENT_BUFFER );
4513
0
  YY_CURRENT_BUFFER_LVALUE = NULL;
4514
0
  if ((yy_buffer_stack_top) > 0)
4515
0
    --(yy_buffer_stack_top);
4516
4517
0
  if (YY_CURRENT_BUFFER) {
4518
0
    yy_load_buffer_state(  );
4519
0
    (yy_did_buffer_switch_on_eof) = 1;
4520
0
  }
4521
0
}
4522
4523
/* Allocates the stack if it does not exist.
4524
 *  Guarantees space for at least one push.
4525
 */
4526
static void yyensure_buffer_stack (void)
4527
0
{
4528
0
  yy_size_t num_to_alloc;
4529
    
4530
0
  if (!(yy_buffer_stack)) {
4531
4532
    /* First allocation is just for 2 elements, since we don't know if this
4533
     * scanner will even need a stack. We use 2 instead of 1 to avoid an
4534
     * immediate realloc on the next call.
4535
         */
4536
0
      num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
4537
0
    (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
4538
0
                (num_to_alloc * sizeof(struct yy_buffer_state*)
4539
0
                );
4540
0
    if ( ! (yy_buffer_stack) )
4541
0
      YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4542
4543
0
    memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
4544
4545
0
    (yy_buffer_stack_max) = num_to_alloc;
4546
0
    (yy_buffer_stack_top) = 0;
4547
0
    return;
4548
0
  }
4549
4550
0
  if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
4551
4552
    /* Increase the buffer to prepare for a possible push. */
4553
0
    yy_size_t grow_size = 8 /* arbitrary grow size */;
4554
4555
0
    num_to_alloc = (yy_buffer_stack_max) + grow_size;
4556
0
    (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
4557
0
                ((yy_buffer_stack),
4558
0
                num_to_alloc * sizeof(struct yy_buffer_state*)
4559
0
                );
4560
0
    if ( ! (yy_buffer_stack) )
4561
0
      YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4562
4563
    /* zero only the new slots.*/
4564
0
    memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
4565
0
    (yy_buffer_stack_max) = num_to_alloc;
4566
0
  }
4567
0
}
4568
4569
/** Setup the input buffer state to scan directly from a user-specified character buffer.
4570
 * @param base the character buffer
4571
 * @param size the size in bytes of the character buffer
4572
 * 
4573
 * @return the newly allocated buffer state object.
4574
 */
4575
YY_BUFFER_STATE yy_scan_buffer  (char * base, yy_size_t  size )
4576
0
{
4577
0
  YY_BUFFER_STATE b;
4578
    
4579
0
  if ( size < 2 ||
4580
0
       base[size-2] != YY_END_OF_BUFFER_CHAR ||
4581
0
       base[size-1] != YY_END_OF_BUFFER_CHAR )
4582
    /* They forgot to leave room for the EOB's. */
4583
0
    return NULL;
4584
4585
0
  b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
4586
0
  if ( ! b )
4587
0
    YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
4588
4589
0
  b->yy_buf_size = (int) (size - 2);  /* "- 2" to take care of EOB's */
4590
0
  b->yy_buf_pos = b->yy_ch_buf = base;
4591
0
  b->yy_is_our_buffer = 0;
4592
0
  b->yy_input_file = NULL;
4593
0
  b->yy_n_chars = b->yy_buf_size;
4594
0
  b->yy_is_interactive = 0;
4595
0
  b->yy_at_bol = 1;
4596
0
  b->yy_fill_buffer = 0;
4597
0
  b->yy_buffer_status = YY_BUFFER_NEW;
4598
4599
0
  yy_switch_to_buffer( b  );
4600
4601
0
  return b;
4602
0
}
4603
4604
/** Setup the input buffer state to scan a string. The next call to yylex() will
4605
 * scan from a @e copy of @a str.
4606
 * @param yystr a NUL-terminated string to scan
4607
 * 
4608
 * @return the newly allocated buffer state object.
4609
 * @note If you want to scan bytes that may contain NUL values, then use
4610
 *       yy_scan_bytes() instead.
4611
 */
4612
YY_BUFFER_STATE yy_scan_string (const char * yystr )
4613
0
{
4614
    
4615
0
  return yy_scan_bytes( yystr, (int) strlen(yystr) );
4616
0
}
4617
4618
/** Setup the input buffer state to scan the given bytes. The next call to yylex() will
4619
 * scan from a @e copy of @a bytes.
4620
 * @param yybytes the byte buffer to scan
4621
 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
4622
 * 
4623
 * @return the newly allocated buffer state object.
4624
 */
4625
YY_BUFFER_STATE yy_scan_bytes  (const char * yybytes, int  _yybytes_len )
4626
0
{
4627
0
  YY_BUFFER_STATE b;
4628
0
  char *buf;
4629
0
  yy_size_t n;
4630
0
  int i;
4631
    
4632
  /* Get memory for full buffer, including space for trailing EOB's. */
4633
0
  n = (yy_size_t) (_yybytes_len + 2);
4634
0
  buf = (char *) yyalloc( n  );
4635
0
  if ( ! buf )
4636
0
    YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
4637
4638
0
  for ( i = 0; i < _yybytes_len; ++i )
4639
0
    buf[i] = yybytes[i];
4640
4641
0
  buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
4642
4643
0
  b = yy_scan_buffer( buf, n );
4644
0
  if ( ! b )
4645
0
    YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
4646
4647
  /* It's okay to grow etc. this buffer, and we should throw it
4648
   * away when we're done.
4649
   */
4650
0
  b->yy_is_our_buffer = 1;
4651
4652
0
  return b;
4653
0
}
4654
4655
#ifndef YY_EXIT_FAILURE
4656
0
#define YY_EXIT_FAILURE 2
4657
#endif
4658
4659
static void yynoreturn yy_fatal_error (const char* msg )
4660
0
{
4661
0
      fprintf( stderr, "%s\n", msg );
4662
0
  exit( YY_EXIT_FAILURE );
4663
0
}
4664
4665
/* Redefine yyless() so it works in section 3 code. */
4666
4667
#undef yyless
4668
#define yyless(n) \
4669
  do \
4670
    { \
4671
    /* Undo effects of setting up yytext. */ \
4672
        int yyless_macro_arg = (n); \
4673
        YY_LESS_LINENO(yyless_macro_arg);\
4674
    yytext[yyleng] = (yy_hold_char); \
4675
    (yy_c_buf_p) = yytext + yyless_macro_arg; \
4676
    (yy_hold_char) = *(yy_c_buf_p); \
4677
    *(yy_c_buf_p) = '\0'; \
4678
    yyleng = yyless_macro_arg; \
4679
    } \
4680
  while ( 0 )
4681
4682
/* Accessor  methods (get/set functions) to struct members. */
4683
4684
/** Get the current line number.
4685
 * 
4686
 */
4687
int yyget_lineno  (void)
4688
0
{
4689
    
4690
0
    return yylineno;
4691
0
}
4692
4693
/** Get the input stream.
4694
 * 
4695
 */
4696
FILE *yyget_in  (void)
4697
0
{
4698
0
        return yyin;
4699
0
}
4700
4701
/** Get the output stream.
4702
 * 
4703
 */
4704
FILE *yyget_out  (void)
4705
0
{
4706
0
        return yyout;
4707
0
}
4708
4709
/** Get the length of the current token.
4710
 * 
4711
 */
4712
int yyget_leng  (void)
4713
0
{
4714
0
        return yyleng;
4715
0
}
4716
4717
/** Get the current token.
4718
 * 
4719
 */
4720
4721
char *yyget_text  (void)
4722
0
{
4723
0
        return yytext;
4724
0
}
4725
4726
/** Set the current line number.
4727
 * @param _line_number line number
4728
 * 
4729
 */
4730
void yyset_lineno (int  _line_number )
4731
0
{
4732
    
4733
0
    yylineno = _line_number;
4734
0
}
4735
4736
/** Set the input stream. This does not discard the current
4737
 * input buffer.
4738
 * @param _in_str A readable stream.
4739
 * 
4740
 * @see yy_switch_to_buffer
4741
 */
4742
void yyset_in (FILE *  _in_str )
4743
0
{
4744
0
        yyin = _in_str ;
4745
0
}
4746
4747
void yyset_out (FILE *  _out_str )
4748
0
{
4749
0
        yyout = _out_str ;
4750
0
}
4751
4752
int yyget_debug  (void)
4753
0
{
4754
0
        return yy_flex_debug;
4755
0
}
4756
4757
void yyset_debug (int  _bdebug )
4758
0
{
4759
0
        yy_flex_debug = _bdebug ;
4760
0
}
4761
4762
static int yy_init_globals (void)
4763
0
{
4764
        /* Initialization is the same as for the non-reentrant scanner.
4765
     * This function is called from yylex_destroy(), so don't allocate here.
4766
     */
4767
4768
0
    (yy_buffer_stack) = NULL;
4769
0
    (yy_buffer_stack_top) = 0;
4770
0
    (yy_buffer_stack_max) = 0;
4771
0
    (yy_c_buf_p) = NULL;
4772
0
    (yy_init) = 0;
4773
0
    (yy_start) = 0;
4774
4775
/* Defined in main.c */
4776
#ifdef YY_STDINIT
4777
    yyin = stdin;
4778
    yyout = stdout;
4779
#else
4780
0
    yyin = NULL;
4781
0
    yyout = NULL;
4782
0
#endif
4783
4784
    /* For future reference: Set errno on error, since we are called by
4785
     * yylex_init()
4786
     */
4787
0
    return 0;
4788
0
}
4789
4790
/* yylex_destroy is for both reentrant and non-reentrant scanners. */
4791
int yylex_destroy  (void)
4792
0
{
4793
    
4794
    /* Pop the buffer stack, destroying each element. */
4795
0
  while(YY_CURRENT_BUFFER){
4796
0
    yy_delete_buffer( YY_CURRENT_BUFFER  );
4797
0
    YY_CURRENT_BUFFER_LVALUE = NULL;
4798
0
    yypop_buffer_state();
4799
0
  }
4800
4801
  /* Destroy the stack itself. */
4802
0
  yyfree((yy_buffer_stack) );
4803
0
  (yy_buffer_stack) = NULL;
4804
4805
    /* Reset the globals. This is important in a non-reentrant scanner so the next time
4806
     * yylex() is called, initialization will occur. */
4807
0
    yy_init_globals( );
4808
4809
0
    return 0;
4810
0
}
4811
4812
/*
4813
 * Internal utility routines.
4814
 */
4815
4816
#ifndef yytext_ptr
4817
static void yy_flex_strncpy (char* s1, const char * s2, int n )
4818
{
4819
    
4820
  int i;
4821
  for ( i = 0; i < n; ++i )
4822
    s1[i] = s2[i];
4823
}
4824
#endif
4825
4826
#ifdef YY_NEED_STRLEN
4827
static int yy_flex_strlen (const char * s )
4828
{
4829
  int n;
4830
  for ( n = 0; s[n]; ++n )
4831
    ;
4832
4833
  return n;
4834
}
4835
#endif
4836
4837
void *yyalloc (yy_size_t  size )
4838
0
{
4839
0
      return malloc(size);
4840
0
}
4841
4842
void *yyrealloc  (void * ptr, yy_size_t  size )
4843
0
{
4844
    
4845
  /* The cast to (char *) in the following accommodates both
4846
   * implementations that use char* generic pointers, and those
4847
   * that use void* generic pointers.  It works with the latter
4848
   * because both ANSI C and C++ allow castless assignment from
4849
   * any pointer type to void*, and deal with argument conversions
4850
   * as though doing an assignment.
4851
   */
4852
0
  return realloc(ptr, size);
4853
0
}
4854
4855
void yyfree (void * ptr )
4856
0
{
4857
0
      free( (char *) ptr ); /* see yyrealloc() for (char *) cast */
4858
0
}
4859
4860
#define YYTABLES_NAME "yytables"
4861
4862
#line 808 "cfg.lex"
4863
4864
4865
4866
static char* addchar(struct str_buf* dst, char c)
4867
0
{
4868
0
  return addstr(dst, &c, 1);
4869
0
}
4870
4871
4872
4873
static char* addstr(struct str_buf* dst_b, char* src, int len)
4874
0
{
4875
0
  char *tmp;
4876
0
  unsigned size;
4877
0
  unsigned used;
4878
4879
0
  if (dst_b->left<(len+1)){
4880
0
    used=(unsigned)(dst_b->crt-dst_b->s);
4881
0
    size=used+len+1;
4882
    /* round up to next multiple */
4883
0
    size+= STR_BUF_ALLOC_UNIT-size%STR_BUF_ALLOC_UNIT;
4884
0
    tmp=pkg_malloc(size);
4885
0
    if (tmp==0) goto error;
4886
0
    if (dst_b->s){
4887
0
      memcpy(tmp, dst_b->s, used);
4888
0
      pkg_free(dst_b->s);
4889
0
    }
4890
0
    dst_b->s=tmp;
4891
0
    dst_b->crt=dst_b->s+used;
4892
0
    dst_b->left=size-used;
4893
0
  }
4894
0
  memcpy(dst_b->crt, src, len);
4895
0
  dst_b->crt+=len;
4896
0
  *(dst_b->crt)=0;
4897
0
  dst_b->left-=len;
4898
4899
0
  return dst_b->s;
4900
0
error:
4901
0
  LM_CRIT("lex:addstr: memory allocation error\n");
4902
0
  return 0;
4903
0
}
4904
4905
4906
4907
static void count(void)
4908
0
{
4909
0
  int i;
4910
4911
0
  startcolumn=column;
4912
0
  for (i=0; i<yyleng;i++){
4913
0
    if (yytext[i]=='\n'){
4914
0
      column=startcolumn=1;
4915
0
    }else if (yytext[i]=='\t'){
4916
0
      column++;
4917
      /*column+=8 -(column%8);*/
4918
0
    }else{
4919
0
      column++;
4920
0
    }
4921
0
  }
4922
0
}
4923
4924
0
int yywrap(void) { return 1; }
4925