Coverage Report

Created: 2026-04-12 06:51

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