Coverage Report

Created: 2026-01-09 06:30

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/unbound/util/configlexer.c
Line
Count
Source
1
#include "config.h"
2
#include "util/configyyrename.h"
3
4
#line 3 "<stdout>"
5
6
#define  YY_INT_ALIGNED short int
7
8
/* A lexical scanner generated by flex */
9
10
#define FLEX_SCANNER
11
#define YY_FLEX_MAJOR_VERSION 2
12
#define YY_FLEX_MINOR_VERSION 6
13
#define YY_FLEX_SUBMINOR_VERSION 4
14
#if YY_FLEX_SUBMINOR_VERSION > 0
15
#define FLEX_BETA
16
#endif
17
18
/* First, we deal with  platform-specific or compiler-specific issues. */
19
20
/* begin standard C headers. */
21
#include <stdio.h>
22
#include <string.h>
23
#include <errno.h>
24
#include <stdlib.h>
25
26
/* end standard C headers. */
27
28
/* flex integer type definitions */
29
30
#ifndef FLEXINT_H
31
#define FLEXINT_H
32
33
/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
34
35
#if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
36
37
/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
38
 * if you want the limit (max/min) macros for int types. 
39
 */
40
#ifndef __STDC_LIMIT_MACROS
41
#define __STDC_LIMIT_MACROS 1
42
#endif
43
44
#include <inttypes.h>
45
typedef int8_t flex_int8_t;
46
typedef uint8_t flex_uint8_t;
47
typedef int16_t flex_int16_t;
48
typedef uint16_t flex_uint16_t;
49
typedef int32_t flex_int32_t;
50
typedef uint32_t flex_uint32_t;
51
#else
52
typedef signed char flex_int8_t;
53
typedef short int flex_int16_t;
54
typedef int flex_int32_t;
55
typedef unsigned char flex_uint8_t; 
56
typedef unsigned short int flex_uint16_t;
57
typedef unsigned int flex_uint32_t;
58
59
/* Limits of integral types. */
60
#ifndef INT8_MIN
61
#define INT8_MIN               (-128)
62
#endif
63
#ifndef INT16_MIN
64
#define INT16_MIN              (-32767-1)
65
#endif
66
#ifndef INT32_MIN
67
#define INT32_MIN              (-2147483647-1)
68
#endif
69
#ifndef INT8_MAX
70
#define INT8_MAX               (127)
71
#endif
72
#ifndef INT16_MAX
73
#define INT16_MAX              (32767)
74
#endif
75
#ifndef INT32_MAX
76
#define INT32_MAX              (2147483647)
77
#endif
78
#ifndef UINT8_MAX
79
#define UINT8_MAX              (255U)
80
#endif
81
#ifndef UINT16_MAX
82
#define UINT16_MAX             (65535U)
83
#endif
84
#ifndef UINT32_MAX
85
#define UINT32_MAX             (4294967295U)
86
#endif
87
88
#ifndef SIZE_MAX
89
#define SIZE_MAX               (~(size_t)0)
90
#endif
91
92
#endif /* ! C99 */
93
94
#endif /* ! FLEXINT_H */
95
96
/* begin standard C++ headers. */
97
98
/* TODO: this is always defined, so inline it */
99
#define yyconst const
100
101
#if defined(__GNUC__) && __GNUC__ >= 3
102
#define yynoreturn __attribute__((__noreturn__))
103
#else
104
#define yynoreturn
105
#endif
106
107
/* Returned upon end-of-file. */
108
0
#define YY_NULL 0
109
110
/* Promotes a possibly negative, possibly signed char to an
111
 *   integer in range [0..255] for use as an array index.
112
 */
113
0
#define YY_SC_TO_UI(c) ((YY_CHAR) (c))
114
115
/* Enter a start condition.  This macro really ought to take a parameter,
116
 * but we do it the disgusting crufty way forced on us by the ()-less
117
 * definition of BEGIN.
118
 */
119
0
#define BEGIN (yy_start) = 1 + 2 *
120
/* Translate the current start state into a value that can be later handed
121
 * to BEGIN to return to the state.  The YYSTATE alias is for lex
122
 * compatibility.
123
 */
124
0
#define YY_START (((yy_start) - 1) / 2)
125
0
#define YYSTATE YY_START
126
/* Action number for EOF rule of a given start state. */
127
0
#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
128
/* Special action meaning "start processing a new file". */
129
0
#define YY_NEW_FILE yyrestart( yyin  )
130
0
#define YY_END_OF_BUFFER_CHAR 0
131
132
/* Size of default input buffer. */
133
#ifndef YY_BUF_SIZE
134
#ifdef __ia64__
135
/* On IA-64, the buffer size is 16k, not 8k.
136
 * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
137
 * Ditto for the __ia64__ case accordingly.
138
 */
139
#define YY_BUF_SIZE 32768
140
#else
141
0
#define YY_BUF_SIZE 16384
142
#endif /* __ia64__ */
143
#endif
144
145
/* The state buf must be large enough to hold one state per character in the main buffer.
146
 */
147
#define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
148
149
#ifndef YY_TYPEDEF_YY_BUFFER_STATE
150
#define YY_TYPEDEF_YY_BUFFER_STATE
151
typedef struct yy_buffer_state *YY_BUFFER_STATE;
152
#endif
153
154
#ifndef YY_TYPEDEF_YY_SIZE_T
155
#define YY_TYPEDEF_YY_SIZE_T
156
typedef size_t yy_size_t;
157
#endif
158
159
extern int yyleng;
160
161
extern FILE *yyin, *yyout;
162
163
0
#define EOB_ACT_CONTINUE_SCAN 0
164
0
#define EOB_ACT_END_OF_FILE 1
165
0
#define EOB_ACT_LAST_MATCH 2
166
    
167
    #define YY_LESS_LINENO(n)
168
    #define YY_LINENO_REWIND_TO(ptr)
169
    
170
/* Return all but the first "n" matched characters back to the input stream. */
171
#define yyless(n) \
172
  do \
173
    { \
174
    /* Undo effects of setting up yytext. */ \
175
        int yyless_macro_arg = (n); \
176
        YY_LESS_LINENO(yyless_macro_arg);\
177
    *yy_cp = (yy_hold_char); \
178
    YY_RESTORE_YY_MORE_OFFSET \
179
    (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
180
    YY_DO_BEFORE_ACTION; /* set up yytext again */ \
181
    } \
182
  while ( 0 )
183
#define unput(c) yyunput( c, (yytext_ptr)  )
184
185
#ifndef YY_STRUCT_YY_BUFFER_STATE
186
#define YY_STRUCT_YY_BUFFER_STATE
187
struct yy_buffer_state
188
  {
189
  FILE *yy_input_file;
190
191
  char *yy_ch_buf;    /* input buffer */
192
  char *yy_buf_pos;   /* current position in input buffer */
193
194
  /* Size of input buffer in bytes, not including room for EOB
195
   * characters.
196
   */
197
  int yy_buf_size;
198
199
  /* Number of characters read into yy_ch_buf, not including EOB
200
   * characters.
201
   */
202
  int yy_n_chars;
203
204
  /* Whether we "own" the buffer - i.e., we know we created it,
205
   * and can realloc() it to grow it, and should free() it to
206
   * delete it.
207
   */
208
  int yy_is_our_buffer;
209
210
  /* Whether this is an "interactive" input source; if so, and
211
   * if we're using stdio for input, then we want to use getc()
212
   * instead of fread(), to make sure we stop fetching input after
213
   * each newline.
214
   */
215
  int yy_is_interactive;
216
217
  /* Whether we're considered to be at the beginning of a line.
218
   * If so, '^' rules will be active on the next match, otherwise
219
   * not.
220
   */
221
  int yy_at_bol;
222
223
    int yy_bs_lineno; /**< The line count. */
224
    int yy_bs_column; /**< The column count. */
225
226
  /* Whether to try to fill the input buffer when we reach the
227
   * end of it.
228
   */
229
  int yy_fill_buffer;
230
231
  int yy_buffer_status;
232
233
0
#define YY_BUFFER_NEW 0
234
0
#define YY_BUFFER_NORMAL 1
235
  /* When an EOF's been seen but there's still some text to process
236
   * then we mark the buffer as YY_EOF_PENDING, to indicate that we
237
   * shouldn't try reading from the input source any more.  We might
238
   * still have a bunch of tokens to match, though, because of
239
   * possible backing-up.
240
   *
241
   * When we actually see the EOF, we change the status to "new"
242
   * (via yyrestart()), so that the user can continue scanning by
243
   * just pointing yyin at a new input file.
244
   */
245
0
#define YY_BUFFER_EOF_PENDING 2
246
247
  };
248
#endif /* !YY_STRUCT_YY_BUFFER_STATE */
249
250
/* Stack of input buffers. */
251
static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
252
static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
253
static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */
254
255
/* We provide macros for accessing buffer states in case in the
256
 * future we want to put the buffer states in a more general
257
 * "scanner state".
258
 *
259
 * Returns the top of the stack, or NULL.
260
 */
261
0
#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
262
0
                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
263
0
                          : NULL)
264
/* Same as previous macro, but useful when we know that the buffer stack is not
265
 * NULL or when we need an lvalue. For internal use only.
266
 */
267
0
#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
268
269
/* yy_hold_char holds the character lost when yytext is formed. */
270
static char yy_hold_char;
271
static int yy_n_chars;    /* number of characters read into yy_ch_buf */
272
int yyleng;
273
274
/* Points to current character in buffer. */
275
static char *yy_c_buf_p = NULL;
276
static int yy_init = 0;   /* whether we need to initialize */
277
static int yy_start = 0;  /* start state number */
278
279
/* Flag which is used to allow yywrap()'s to do buffer switches
280
 * instead of setting up a fresh yyin.  A bit of a hack ...
281
 */
282
static int yy_did_buffer_switch_on_eof;
283
284
void yyrestart ( FILE *input_file  );
285
void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer  );
286
YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size  );
287
void yy_delete_buffer ( YY_BUFFER_STATE b  );
288
void yy_flush_buffer ( YY_BUFFER_STATE b  );
289
void yypush_buffer_state ( YY_BUFFER_STATE new_buffer  );
290
void yypop_buffer_state ( void );
291
292
static void yyensure_buffer_stack ( void );
293
static void yy_load_buffer_state ( void );
294
static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file  );
295
#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
296
297
YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size  );
298
YY_BUFFER_STATE yy_scan_string ( const char *yy_str  );
299
YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len  );
300
301
void *yyalloc ( yy_size_t  );
302
void *yyrealloc ( void *, yy_size_t  );
303
void yyfree ( void *  );
304
305
#define yy_new_buffer yy_create_buffer
306
#define yy_set_interactive(is_interactive) \
307
  { \
308
  if ( ! YY_CURRENT_BUFFER ){ \
309
        yyensure_buffer_stack (); \
310
    YY_CURRENT_BUFFER_LVALUE =    \
311
            yy_create_buffer( yyin, YY_BUF_SIZE ); \
312
  } \
313
  YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
314
  }
315
#define yy_set_bol(at_bol) \
316
0
  { \
317
0
  if ( ! YY_CURRENT_BUFFER ){\
318
0
        yyensure_buffer_stack (); \
319
0
    YY_CURRENT_BUFFER_LVALUE =    \
320
0
            yy_create_buffer( yyin, YY_BUF_SIZE ); \
321
0
  } \
322
0
  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
323
0
  }
324
#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
325
326
/* Begin user sect3 */
327
typedef flex_uint8_t YY_CHAR;
328
329
FILE *yyin = NULL, *yyout = NULL;
330
331
typedef int yy_state_type;
332
333
extern int yylineno;
334
int yylineno = 1;
335
336
extern char *yytext;
337
#ifdef yytext_ptr
338
#undef yytext_ptr
339
#endif
340
0
#define yytext_ptr yytext
341
342
static yy_state_type yy_get_previous_state ( void );
343
static yy_state_type yy_try_NUL_trans ( yy_state_type current_state  );
344
static int yy_get_next_buffer ( void );
345
static void yynoreturn yy_fatal_error ( const char* msg  );
346
347
/* Done after the current pattern has been matched and before the
348
 * corresponding action - sets up yytext.
349
 */
350
#define YY_DO_BEFORE_ACTION \
351
0
  (yytext_ptr) = yy_bp; \
352
0
  (yytext_ptr) -= (yy_more_len); \
353
0
  yyleng = (int) (yy_cp - (yytext_ptr)); \
354
0
  (yy_hold_char) = *yy_cp; \
355
0
  *yy_cp = '\0'; \
356
0
  (yy_c_buf_p) = yy_cp;
357
#define YY_NUM_RULES 414
358
0
#define YY_END_OF_BUFFER 415
359
/* This struct is not used in this scanner,
360
   but its presence is necessary. */
361
struct yy_trans_info
362
  {
363
  flex_int32_t yy_verify;
364
  flex_int32_t yy_nxt;
365
  };
366
static const flex_int16_t yy_accept[4152] =
367
    {   0,
368
        1,    1,  388,  388,  392,  392,  396,  396,  400,  400,
369
        1,    1,  404,  404,  408,  408,  415,  412,    1,  386,
370
      386,  413,    2,  413,  412,  412,  412,  412,  412,  412,
371
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
372
      412,  412,  412,  412,  412,  412,  412,  388,  389,  389,
373
      390,  413,  392,  393,  393,  394,  413,  399,  396,  397,
374
      397,  398,  413,  400,  401,  401,  402,  413,  411,  387,
375
        2,  391,  413,  411,  407,  404,  405,  405,  406,  413,
376
      408,  409,  409,  410,  413,  412,    0,    1,    2,    2,
377
        2,    2,  412,  412,  412,  412,  412,  412,  412,  412,
378
379
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
380
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
381
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
382
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
383
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
384
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
385
      412,  412,  412,  412,  388,    0,  392,    0,  399,    0,
386
      396,  400,    0,  411,    0,    2,    2,  411,  407,    0,
387
      404,  408,    0,  412,  412,  412,  412,  412,  412,  412,
388
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
389
390
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
391
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
392
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
393
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
394
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
395
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
396
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
397
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
398
      412,  412,  412,  412,  412,  411,  412,  412,  412,  412,
399
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
400
401
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
402
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
403
      412,  379,  412,  412,  412,  412,  412,  412,  412,  412,
404
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
405
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
406
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
407
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
408
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
409
      412,  412,  412,  141,  412,  412,  412,  412,  412,  412,
410
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
411
412
      412,  412,  412,  412,  412,  151,  412,  412,  412,  412,
413
      412,  412,  412,  412,  411,  412,  412,  412,  412,  412,
414
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
415
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
416
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
417
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
418
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
419
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
420
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
421
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
422
423
      412,  412,  412,  412,  412,  123,  412,  412,  378,  412,
424
      412,  412,  412,  412,  412,  412,  412,    8,  412,  412,
425
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
426
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
427
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
428
      412,  142,  412,  412,  412,  412,  412,  412,  412,  412,
429
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
430
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
431
      412,  412,  412,  412,  412,  156,  412,  412,  412,  411,
432
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
433
434
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
435
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
436
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
437
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
438
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
439
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
440
      412,  412,  412,  412,  412,  368,  412,  412,  412,  412,
441
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
442
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
443
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
444
445
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
446
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
447
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
448
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
449
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
450
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
451
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
452
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
453
      412,  412,  412,  412,  412,  412,  412,  412,  412,  411,
454
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
455
456
      412,  412,  412,   74,  412,  412,  412,  412,  412,  412,
457
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
458
      412,  278,  412,   14,   15,  412,  412,   20,   19,  412,
459
      412,  252,  412,  412,  412,  412,  412,  412,  412,  412,
460
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
461
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
462
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
463
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
464
      412,  412,  412,  412,  412,  412,  412,  412,  149,  412,
465
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
466
467
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
468
      412,  412,  412,  412,  412,  412,  412,  412,  412,  250,
469
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
470
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
471
      412,  412,  412,  412,  412,    3,  412,  412,  412,  412,
472
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
473
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
474
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
475
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
476
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
477
478
      412,  412,  412,  412,  412,  412,  412,  412,  411,  412,
479
      412,  412,  412,  412,  412,  412,  412,  347,  412,  412,
480
      412,  346,  412,  412,  412,  412,  412,  412,  412,  412,
481
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
482
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
483
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
484
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
485
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
486
      412,  412,  412,  412,  412,  412,  412,  395,  412,  412,
487
      412,  412,  412,  412,  412,  412,   73,  412,  412,  412,
488
489
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
490
      412,  412,  412,  412,  412,   77,  412,  316,  412,  412,
491
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
492
      369,  370,  412,  412,  412,  412,  412,  412,  412,  412,
493
      412,   78,  412,  412,  150,  412,  412,  412,  412,  412,
494
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
495
      412,  412,  412,  412,  412,  145,  412,  412,  412,  412,
496
      412,  412,  412,  412,  412,  412,  239,  412,  412,  412,
497
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
498
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
499
500
       22,  412,  412,  412,  412,  412,  412,  412,  412,  412,
501
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
502
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
503
      412,  412,  412,  177,  412,  412,  412,  412,  412,  412,
504
      411,  395,  412,  412,  412,  412,  412,  412,  412,  412,
505
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
506
      412,  412,  412,  412,  412,  412,  412,  121,  412,  412,
507
      412,  412,  412,  412,  412,  412,  412,  412,  324,  412,
508
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
509
       16,  412,  412,  412,  412,  412,  412,  412,  412,  205,
510
511
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
512
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
513
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
514
      412,  412,  176,  412,  412,  412,  412,  412,  412,  412,
515
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
516
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
517
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
518
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
519
      412,  412,  412,  412,  412,  120,  412,  412,  412,  412,
520
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
521
522
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
523
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
524
      412,  412,  412,   37,  412,  412,  412,  412,  412,  412,
525
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
526
      412,  412,  412,  412,  412,  412,   38,  412,  412,  412,
527
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
528
      412,  412,  412,   75,  412,  412,  412,  412,  412,  412,
529
      412,  412,  412,  412,  412,  148,  412,  412,  412,  411,
530
      412,  412,  412,  412,  412,  412,  140,  412,  412,  412,
531
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
532
533
      412,  412,  412,  412,  412,   76,  412,  412,  412,  412,
534
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
535
      412,  282,  412,  412,  412,  412,  412,  412,  412,  412,
536
      412,  412,  412,  412,  412,  412,  412,  206,  412,  412,
537
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
538
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
539
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
540
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
541
       63,  412,  412,  412,  412,  412,  412,  412,  412,  412,
542
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
543
544
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
545
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
546
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
547
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
548
      412,  412,   59,   60,  412,  302,  412,  412,  412,  412,
549
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
550
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
551
       68,  412,   69,  412,  412,  412,  412,  412,  412,  124,
552
      412,  125,  412,  412,  412,  412,  412,  122,  412,  412,
553
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
554
555
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
556
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
557
      412,  412,    7,  412,  412,  412,  412,  412,  411,  412,
558
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
559
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
560
      412,  412,  267,  412,  412,  412,  412,  412,  412,  180,
561
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
562
      412,  412,  412,  412,  412,  412,  412,  412,  283,  412,
563
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
564
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
565
566
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
567
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
568
      412,   52,  412,  412,  412,  412,  412,  412,  412,  412,
569
      412,  412,  412,   64,  412,  412,  412,  412,  412,  412,
570
      412,  412,  412,  412,  412,  412,  412,  412,  412,  230,
571
      412,  229,  412,  412,  412,  412,  412,  412,  412,  412,
572
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
573
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
574
      412,  412,  412,  412,  412,  412,  412,  412,   17,   18,
575
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
576
577
      412,  412,  412,  412,  412,  412,  412,  412,   79,  412,
578
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
579
      412,  412,  238,  412,  412,  412,  412,  412,  412,  412,
580
      127,  412,  126,  412,  412,  412,  412,  412,  412,  412,
581
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
582
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
583
      219,  412,  412,  412,  412,  412,  412,  412,  412,  412,
584
      157,  412,  258,  412,  412,  412,  411,  412,  412,  412,
585
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
586
      412,  115,  412,  412,  412,  412,  412,  412,  412,  412,
587
588
      412,  412,  101,  412,  412,  412,  412,  412,  412,  412,
589
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
590
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
591
      412,  412,  251,  412,  412,  412,  412,  412,  412,  412,
592
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
593
      412,  412,  412,  106,  412,  412,  412,  412,  412,  412,
594
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
595
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
596
      412,  412,   72,  412,  412,  412,  412,  412,  412,  412,
597
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
598
599
      412,  412,  412,  412,  412,  223,  224,  412,  412,  412,
600
      412,  318,  412,  412,  412,  412,  412,  412,  412,  412,
601
      412,  412,  412,  412,  412,  412,  412,  412,  412,    6,
602
      412,  412,  412,  412,  412,  412,  412,  337,  412,  412,
603
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
604
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
605
      412,  322,  412,  412,  412,  412,  412,  412,  412,  348,
606
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
607
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
608
      412,  412,  412,  412,  412,   48,  412,  412,  412,  412,
609
610
      412,   50,  412,  412,  412,  412,  102,  412,  412,  412,
611
      412,  412,   61,  412,  412,  412,  412,  412,  412,  412,
612
      412,  412,  412,  412,  412,  412,  411,  412,  215,  412,
613
      412,  412,  152,  412,  412,  412,  412,  412,  412,  412,
614
      412,  412,  412,  412,  412,  412,  412,  243,  412,  412,
615
      216,  412,  412,  412,  412,  412,  412,  263,  412,  412,
616
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
617
      412,  412,  412,  412,  412,  412,  412,  412,  412,   62,
618
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
619
      412,  154,  133,  412,  134,  412,  412,  412,  412,  132,
620
621
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
622
      412,  173,  412,  412,   57,  412,  412,  412,  412,  412,
623
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
624
      412,  412,  412,  412,  412,  300,  412,  412,  412,  412,
625
      412,  412,  412,  412,  412,  412,  412,  412,  217,  412,
626
      412,  412,  412,  412,  228,  220,  412,  227,  412,  412,
627
      222,  412,  412,  412,  412,  412,  412,  412,  262,  412,
628
      412,  412,  412,  412,  412,  266,  412,  412,  412,  412,
629
      412,  412,  412,  412,  412,  412,  412,  119,  412,  412,
630
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
631
632
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
633
      412,  412,  146,  412,  412,  412,  412,  412,  412,  412,
634
      412,   70,  412,  412,  412,  412,   31,  412,  412,  412,
635
      412,  412,  412,  412,  412,  412,  412,  412,  412,   21,
636
      412,  412,  412,  412,  412,  412,  412,   32,  412,   41,
637
      412,  185,  412,  412,  412,  412,  412,  412,  412,  412,
638
      412,  412,  412,  412,  412,  412,  412,  412,  213,  412,
639
      412,  411,  412,  412,  412,  412,  373,  412,  412,   87,
640
      412,   90,  412,  412,  412,  412,  412,  412,  412,  412,
641
      412,  412,  374,  412,  412,  412,  412,  412,  412,  412,
642
643
      412,  412,  326,  412,  412,  412,  412,  279,  412,  412,
644
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
645
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
646
      412,  412,  135,  412,  412,  412,  412,  412,  412,  412,
647
      412,  412,  412,  412,  412,  412,  172,  412,   53,  412,
648
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
649
      412,  412,  412,  412,  412,  412,  412,  412,  412,  273,
650
      412,  412,  412,  412,  412,  412,  412,  412,  341,  412,
651
      412,  412,  412,  412,  382,  412,  412,  412,  412,  412,
652
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
653
654
      412,  412,  412,  412,  179,  412,  412,  412,  412,  412,
655
      412,  412,  412,  412,  412,  412,  412,  412,  335,  412,
656
      412,  412,  412,  249,  412,  412,  412,  412,  412,  412,
657
      412,  412,  412,  412,  412,  412,  412,  412,  359,  412,
658
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
659
      412,  198,  412,  412,  412,  412,  412,  412,  412,  412,
660
      412,  412,  412,  128,  412,  412,  412,  412,  412,  412,
661
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
662
      412,  412,  412,  412,  412,  412,  412,  412,  192,  412,
663
      207,  412,  412,  412,  412,  412,  412,  412,  412,  412,
664
665
      411,  412,  160,  412,  412,  412,  412,  412,  412,  412,
666
      412,  114,  412,  412,  412,  412,  241,  412,  412,  412,
667
      412,  412,  412,  412,  412,  412,  412,  264,  412,  412,
668
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
669
      412,  412,  412,  412,  412,  291,  412,  412,  412,  412,
670
      412,  412,  412,  412,  412,  412,  412,  153,  412,  412,
671
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
672
      412,  412,  412,  412,  412,  412,  412,  196,  412,  412,
673
      412,  412,  412,  412,  412,   91,  412,   92,  412,  412,
674
      412,  412,  412,  276,  412,  412,  412,  412,  412,   71,
675
676
      344,  412,  412,  412,  412,  412,  412,  412,  100,  208,
677
      412,  231,  412,  268,  412,  412,  221,  319,  412,  412,
678
      412,  412,  412,  314,  412,  412,  412,   83,  412,  210,
679
      412,  412,  412,  412,  412,  412,    9,  412,  412,  412,
680
      412,  412,  118,  412,  412,  412,  412,  412,  412,  306,
681
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
682
      412,  412,  240,  412,  412,  412,  412,  412,  412,  412,
683
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
684
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
685
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
686
687
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
688
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
689
      412,  412,  411,  412,  412,  412,  412,  195,  412,  412,
690
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
691
      412,  412,  197,  257,  181,  412,  412,  325,  412,  412,
692
      412,  412,  412,  290,  412,  412,  412,  412,  412,  412,
693
      412,  412,  412,  412,  412,  412,  253,  412,  412,  412,
694
      412,  412,  412,  317,  412,  412,  412,  412,  412,  412,
695
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
696
      412,  412,  412,  178,  412,  412,  412,  412,  412,  412,
697
698
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
699
      412,  412,  412,  412,  412,  345,  412,  412,  412,  209,
700
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
701
       82,   84,  412,  412,  412,  412,  412,  412,  412,  412,
702
      412,  412,  117,  412,  412,  412,  412,  412,  412,  304,
703
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
704
      412,  412,  412,  321,  412,  412,  412,  412,  412,  412,
705
      412,  412,  412,  412,  412,  412,  412,  245,  412,   39,
706
       33,   35,  412,  412,  412,  412,  412,  412,  412,  412,
707
      412,  412,  412,  412,  412,   40,  412,   34,   36,  412,
708
709
       42,  412,  412,  412,  412,  412,  412,  412,  412,  113,
710
      412,  191,  412,  412,  412,  412,  412,  412,  412,  412,
711
      412,  411,  412,  412,  412,  412,  412,  412,  412,  412,
712
      349,  412,  412,  412,  412,  412,  247,  244,  412,  412,
713
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
714
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
715
       81,  412,  412,  412,  155,  412,  136,  412,  412,  412,
716
      412,  412,  412,  412,  412,  412,  412,  412,  412,  174,
717
       54,  412,  412,  412,  403,   13,  412,  412,  412,  412,
718
      412,  412,  412,  161,  412,  412,  412,  412,  412,  412,
719
720
      412,  412,  339,  412,  342,  412,  383,  412,  412,  412,
721
      412,  412,  412,  384,  412,  412,  412,  412,  412,  412,
722
      412,   12,  412,  412,   23,  412,  412,  412,  412,  412,
723
      412,  412,  310,  412,  412,  412,  412,  366,  412,  412,
724
      412,  412,  412,  412,  412,  412,  412,  323,  412,  412,
725
      412,  412,   85,  412,  255,  412,  412,  412,  412,  412,
726
      246,  412,  412,  412,  412,   80,  412,  412,  412,  412,
727
      412,  412,   24,  412,  412,   49,  412,  412,  412,  412,
728
      412,  412,  412,  412,  412,  412,  412,  412,  412,  190,
729
      189,  412,  412,  412,  412,  403,  412,  412,  412,  412,
730
731
      412,  412,  412,  412,  412,  412,  412,  248,  242,  412,
732
      412,  412,  265,  412,  412,  327,  412,  412,  412,  412,
733
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
734
      412,  203,  412,  412,  412,  412,  412,  412,  412,  412,
735
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
736
      412,  412,  412,  412,  412,   93,  412,  412,  412,  412,
737
      412,  412,  412,  412,  305,  412,  412,  412,  412,  412,
738
      226,  412,  412,  412,  412,  412,  412,  254,  412,  412,
739
      412,  412,  412,  412,  412,  412,  412,  412,  312,  412,
740
      412,  412,  412,  412,  412,  412,  412,  412,  412,  351,
741
742
      412,  355,  353,  187,  412,  412,  412,   86,  412,  412,
743
      412,  412,  199,  412,  412,  412,  412,  412,  129,  131,
744
      130,  412,  412,  412,   26,  412,  412,  412,  182,  412,
745
      184,  412,  232,  412,  412,  412,  412,  188,  412,  412,
746
      259,  412,  412,  412,  412,  269,  412,  412,  412,  412,
747
      412,  412,  412,  412,  412,  163,  375,  412,  412,  412,
748
      412,  412,  412,  412,  412,  412,  412,  412,  298,  412,
749
      412,  281,  412,  412,  412,  412,  412,  412,  412,  376,
750
      412,   28,  412,  320,  412,  412,  412,  412,  412,  412,
751
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
752
753
      412,  412,  412,   98,  233,  412,  412,  275,  412,  412,
754
      412,  303,  412,  343,  412,  412,  225,  412,  412,  315,
755
      412,  412,  412,  313,   65,  412,  412,  412,  412,  412,
756
      412,  412,    4,  412,  412,  412,  412,  412,  412,  412,
757
      412,  412,  412,  412,  412,  144,  412,  162,  412,  412,
758
      412,  204,   30,  412,  412,  412,  412,  412,  412,  412,
759
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
760
      412,  412,  412,  412,  412,  272,   43,   44,  412,  412,
761
      412,  412,  412,  412,  412,  380,  412,  412,  328,  412,
762
      412,  412,  412,  412,  412,  412,  289,  412,  412,  412,
763
764
      412,  412,  412,  412,  412,  236,  412,  412,  412,  412,
765
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
766
      412,  412,   97,   96,  412,  412,   66,  412,  412,  301,
767
      309,  412,  412,  277,  412,  412,  412,  412,  412,   11,
768
      412,  412,  412,  412,  381,  412,  412,  412,  412,  412,
769
      412,  412,  412,  412,  412,  412,  412,  143,  412,  412,
770
      412,  412,  412,  412,  234,  103,  412,  412,   46,  412,
771
      412,  412,  412,  412,  412,  412,  412,  412,  194,  412,
772
      260,  412,  412,  412,  412,  412,  412,  412,  412,  412,
773
      165,  412,  412,  412,  412,  280,  412,  412,  412,  412,
774
775
      412,  288,  412,  412,  412,  412,  158,  412,  412,  412,
776
      137,  139,  138,  412,  412,  412,  105,  110,  104,  412,
777
      412,  175,  412,  412,  412,  412,   94,  412,  274,  311,
778
      412,  412,  412,  412,  412,  412,  412,   10,  412,  412,
779
      412,  412,  412,  307,  412,  412,  365,  412,  412,  412,
780
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
781
      372,   45,  412,  412,  412,  412,  412,  412,  193,  412,
782
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
783
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
784
      412,  412,  412,  412,  412,  412,  412,  111,  109,  412,
785
786
      412,  412,   58,  412,  412,   95,  412,  340,  412,  412,
787
      412,  412,  412,   25,  412,  412,  412,  412,  412,  218,
788
      412,  412,  361,  363,  412,  412,  412,  412,  412,  360,
789
      357,  412,  412,  412,  412,  235,  412,  412,  412,  412,
790
      412,  412,  412,  412,  412,  412,  412,  214,  412,  412,
791
      183,   88,   89,  412,  412,  412,  412,  412,  412,  329,
792
      412,  412,  412,  412,  412,  412,  412,  285,  412,  412,
793
      284,  159,  412,  412,  108,  412,  107,   55,  412,  412,
794
      385,  166,  167,  170,  171,  168,  169,   99,  338,  412,
795
      412,  308,  412,  412,  412,  412,  412,  412,  147,  412,
796
797
      412,  412,  412,   27,  412,  412,  186,  412,  412,  412,
798
      412,  412,  212,  412,  271,  412,  412,  412,  412,  412,
799
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
800
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
801
      412,  412,  412,  412,  412,  201,  200,  237,   47,  412,
802
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
803
      412,  412,  412,  412,  412,  412,  412,  412,  412,  412,
804
      412,  412,  412,  412,  412,  412,  336,  412,  412,  412,
805
      367,  412,  412,  412,  412,  412,  412,  412,  412,  116,
806
      412,  412,  270,  412,  412,  299,  333,  412,  412,  412,
807
808
      412,  412,  412,  412,  412,  412,  412,  412,  377,  412,
809
      112,   56,   67,    5,  412,  412,  352,  412,  356,  354,
810
      412,  412,  412,  256,  412,  412,  412,  412,  334,  412,
811
      412,  412,  412,  412,  412,  412,  412,  412,  286,   29,
812
      412,  412,  412,  412,  412,  412,  412,  261,  412,  412,
813
      412,  412,  412,  412,  412,  412,  412,  412,  287,  412,
814
      412,  412,  412,  412,  412,  412,  412,  164,  412,  412,
815
      412,  412,  412,  412,  412,  412,  412,  412,  412,  202,
816
      412,  412,  211,  412,  412,  412,  412,  412,  412,  412,
817
      412,  412,  362,  364,  358,  412,  412,  412,  330,  412,
818
819
      412,  412,  412,  412,  412,  412,  412,   51,  412,  412,
820
      412,  412,  412,  412,  412,  412,  412,  412,  371,  350,
821
      412,  412,  294,  412,  412,  412,  412,  412,  331,  412,
822
      412,  412,  412,  412,  412,  332,  412,  412,  412,  292,
823
      412,  295,  296,  412,  412,  412,  412,  412,  293,  297,
824
        0
825
    } ;
826
827
static const YY_CHAR yy_ec[256] =
828
    {   0,
829
        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
830
        1,    1,    4,    1,    1,    1,    1,    1,    1,    1,
831
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
832
        1,    2,    1,    5,    6,    1,    1,    1,    7,    1,
833
        1,    1,    1,    1,    8,    1,    1,    1,    9,    1,
834
       10,   11,    1,   12,    1,    1,    1,   13,    1,    1,
835
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
836
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
837
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
838
        1,   14,    1,    1,    1,    1,   15,   16,   17,   18,
839
840
       19,   20,   21,   22,   23,   24,   25,   26,   27,   28,
841
       29,   30,   31,   32,   33,   34,   35,   36,   37,   38,
842
       39,   40,    1,    1,    1,    1,    1,    1,    1,    1,
843
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
844
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
845
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
846
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
847
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
848
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
849
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
850
851
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
852
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
853
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
854
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
855
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
856
        1,    1,    1,    1,    1
857
    } ;
858
859
static const YY_CHAR yy_meta[41] =
860
    {   0,
861
        1,    2,    3,    4,    5,    1,    6,    1,    1,    1,
862
        1,    1,    7,    1,    1,    1,    1,    1,    1,    1,
863
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
864
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1
865
    } ;
866
867
static const flex_int16_t yy_base[4170] =
868
    {   0,
869
        0,    0,   38,   41,   44,   46,   59,   65,   71,   77,
870
       90,  112,   96,  118,  124,  136, 3893, 3462,   81, 8071,
871
     8071, 8071,  129,   52,  137,   63,  130,  159,   70,  132,
872
      134,  146,   57,   88,   76,  176,  178,   95,  200,  161,
873
      188,  202,  169,  194,  219,   97,  148, 3112, 8071, 8071,
874
     8071,  165, 3078, 8071, 8071, 8071,  221, 2637, 2599, 8071,
875
     8071, 8071,  239, 2469, 8071, 8071, 8071,  243, 1903, 8071,
876
      247, 8071,  251,  231, 1775, 1735, 8071, 8071, 8071,  258,
877
     1620, 8071, 8071, 8071,  262, 1495,  266,  198,    0,  270,
878
        0,    0,  223,  192,  236,  250,  255,  264,  268,  272,
879
880
       92,  267,  266,  273,  277,  278,  282,  289,  290,  292,
881
      291,  298,  139,  294,  299,  293,  314,  307,  320,  322,
882
      324,  286,  325,  328,  308,  333,  334,  336,  342,  337,
883
      345,  152,  346,  348,  349,  353,  356,  360,  358,  363,
884
      359,  361,  372,  371,  370,  373,  379,  167,  395,  387,
885
      383,  400,  390,  394,  388,  403,  410,  402,  411,  405,
886
      408,  415,  422,  423, 1271,  434, 1215,  325, 1097,  439,
887
     1058,  970,  444,  941,  448,  452,    0,  377,  819,  456,
888
      570,  428,  460,  448,  460,  455,  456,  457,  459,  461,
889
      458,  462,  463,  465,  464,  468,  476,  488,  475,  486,
890
891
      492,  483,  496,  497,  502,  498,  513,  504,  509,  515,
892
      519,  505,  527,  522,  524,  528,  532,  530,  536,  534,
893
      533,  535,  553,  537,  543,  547,  539,  562,  563,  566,
894
      574,  549,  576,  581,  487,  583,  579,  580,  588,  585,
895
      592,  591,  600,  595,  596,  587,  597,  599,  541,  601,
896
      604,  610,  606,  605,  615,  616,  618,  625,  622,  623,
897
      629,  620,  634,  626,  635,  637,  636,  643,  647,  639,
898
      650,  659,  660,  651,  661,  640,  662,  663,  666,  673,
899
      674,  669,  672,  677,  675,  678,  679,  681,  682,  687,
900
      683,  694,  707,  709,  700,  708,  710,  696,  712,  714,
901
902
      684,  715,  716,  717,  725,  718,  720,  685,  727,  730,
903
      734,  723,  736,  738,  733,  743,  745,  746,  747,  751,
904
      740, 8071,  761,  752,  763,  762,  771,  768,  753,  769,
905
      773,  776,  777,  775,  778,  779,  780,  782,  783,  784,
906
      786,  790,  802,  791,  804,  800,  798,  812,  811,  813,
907
      826,  787,  815,  816,  847,  817,  818,  822,  837,  829,
908
      851,  853,  842,  855,  858,  859,  860,  827,  861,  863,
909
      871,  879,  881,  832,  869,  883,  891,  886,  887,  889,
910
      890,  899,  900, 8071,  894,  892,  902,  908,  910,  917,
911
      904,  929,  924,  907,  925,  934,  931,  932,  946,  968,
912
913
      933,  935,  936,  939,  944, 8071,  957,  948,  992,  950,
914
      952,  978,  979,  975,  942,  966,  982,  974,  980,  996,
915
      849,  986,  993, 1000, 1015,  998, 1002, 1010, 1001, 1018,
916
     1020, 1017, 1033, 1028, 1024, 1026, 1031, 1034, 1035, 1042,
917
     1037,  895, 1040, 1054, 1039, 1041, 1047, 1050, 1043, 1056,
918
     1055, 1065, 1069, 1070, 1071, 1064, 1075, 1076, 1077, 1079,
919
     1078, 1101, 1088, 1094, 1091, 1080, 1099, 1110, 1081, 1105,
920
     1109, 1117, 1107, 1116, 1123, 1121, 1126, 1127, 1128, 1129,
921
     1130, 1138, 1135, 1137, 1139, 1143, 1144, 1145, 1147, 1151,
922
     1152, 1153, 1155, 1157, 1158, 1159, 1161, 1168, 1165, 1162,
923
924
     1175, 1177, 1178, 1183, 1179, 8071, 1187, 1185, 8071, 1188,
925
     1189, 1190, 1191, 1192, 1193, 1194, 1195, 8071, 1202, 1203,
926
     1196, 1210, 1205, 1212, 1208, 1217, 1229, 1225, 1218, 1228,
927
     1231, 1233, 1235, 1237, 1244, 1240, 1242, 1249, 1241, 1248,
928
     1251, 1254, 1252, 1257, 1258, 1261, 1259, 1262, 1265, 1266,
929
     1285, 8071, 1268, 1269, 1272, 1277, 1270, 1292, 1280, 1294,
930
     1303, 1295, 1302, 1300, 1306, 1320, 1309, 1313, 1318, 1317,
931
     1322, 1282, 1323, 1330, 1326, 1332, 1328, 1333, 1335, 1336,
932
     1345, 1337, 1338, 1347, 1349, 8071, 1339, 1352, 1356, 1359,
933
     1370, 1353, 1366, 1367, 1368, 1375, 1372, 1371, 1373, 1378,
934
935
     1374, 1379, 1380, 1384, 1396, 1385, 1398, 1399, 1394, 1401,
936
     1395, 1400, 1402, 1408, 1410, 1405, 1411, 1416, 1425, 1418,
937
     1422, 1429, 1435, 1440, 1437, 1439, 1447, 1449, 1426, 1442,
938
     1445, 1414, 1446, 1450, 1452, 1453, 1454, 1455, 1458, 1461,
939
     1468, 1464, 1466, 1467, 1471, 1472, 1473, 1475, 1479, 1482,
940
     1480, 1481, 1483, 1494, 1491, 1492, 1501, 1489, 1510, 1498,
941
     1502, 1514, 1515, 1508, 1517, 8071, 1521, 1529, 1525, 1527,
942
     1531, 1526, 1528, 1536, 1537, 1538, 1540, 1541, 1543, 1544,
943
     1546, 1551, 1552, 1553, 1547, 1555, 1559, 1563, 1565, 1564,
944
     1493, 1574, 1569, 1567, 1585, 1571, 1576, 1584, 1578, 1586,
945
946
     1588, 1590, 1591, 1598, 1594, 1603, 1601, 1593, 1606, 1605,
947
     1613, 1609, 1608, 1615, 1614, 1628, 1625, 1616, 1617, 1629,
948
     1630, 1636, 1632, 1638, 1641, 1649, 1642, 1651, 1658, 1660,
949
     1653, 1662, 1655, 1663, 1667, 1668, 1669, 1671, 1672, 1670,
950
     1679, 1676, 1675, 1677, 1681, 1682, 1683, 1694, 1693, 1701,
951
     1685, 1698, 1699, 1703, 1704, 1707, 1709, 1710, 1714, 1715,
952
     1716, 1717, 1718, 1719, 1727, 1720, 1738, 1729, 1731, 1740,
953
     1732, 1739, 1745, 1747, 1749, 1748, 1752, 1753, 1754, 1758,
954
     1759, 1756, 1765, 1767, 1768, 1770, 1771, 1769, 1783, 1784,
955
     1785, 1786, 1773, 1791, 1792, 1793, 1794, 1795, 1798, 1801,
956
957
     1805, 1806, 1803, 8071, 1809, 1819, 1814, 1815, 1817, 1818,
958
     1820, 1822, 1829, 1831, 1824, 1826, 1827, 1836, 1837, 1838,
959
     1863, 8071, 1842, 8071, 8071, 1846, 1839, 8071, 8071, 1844,
960
     1849, 8071, 1847, 1860, 1850, 1848, 1867, 1851, 1873, 1870,
961
     1861, 1876, 1877, 1884, 1898, 1886, 1887, 1880, 1889, 1891,
962
     1888, 1904, 1909, 1894, 1915, 1896, 1893, 1922, 1927, 1923,
963
     1928, 1931, 1932, 1933, 1935, 1936, 1938, 1942, 1945, 1944,
964
     1948, 1949, 1950, 1951, 1954, 1952, 1957, 1955, 1959, 1961,
965
     1962, 1964, 1965, 1966, 1978, 1969, 1981, 1990, 8071, 1986,
966
     1993, 1983, 1976, 1992, 1995, 2002, 1998, 2005, 1997, 2001,
967
968
     2004, 2009, 2014, 2006, 2010, 2016, 2017, 2019, 2020, 2021,
969
     2025, 2026, 2029, 2031, 2030, 2033, 2042, 2035, 2037, 8071,
970
     2043, 2044, 2046, 2048, 2049, 2047, 2050, 2054, 2055, 2058,
971
     2063, 2068, 2061, 2051, 2069, 2070, 2080, 2077, 2081, 2084,
972
     2085, 2086, 2087, 2088, 2089, 8071, 2094, 2098, 2093, 2102,
973
     2101, 2103, 2090, 2105, 2109, 2112, 2115, 2113, 2116, 2117,
974
     2118, 2127, 2119, 2126, 2123, 2129, 2130, 2134, 2133, 2142,
975
     2145, 2147, 2143, 2149, 2151, 2152, 2153, 2154, 2155, 2157,
976
     2158, 2159, 2170, 2171, 2166, 2173, 2168, 2163, 2181, 2190,
977
     2185, 2186, 2187, 2188, 2191, 2194, 2198, 2202, 2197, 2201,
978
979
     2203, 2210, 2206, 2209, 2211, 2214, 2213, 2217, 2231, 2221,
980
     2224, 2222, 2215, 2232, 2234, 2238, 2239, 8071, 2240, 2241,
981
     2242, 8071, 2244, 2246, 2247, 2269, 2248, 2250, 2259, 2260,
982
     2262, 2254, 2277, 2267, 2271, 2265, 2270, 2288, 2289, 2297,
983
     2292, 2294, 2295, 2298, 2304, 2300, 2302, 2306, 2315, 2310,
984
     2316, 2317, 2318, 2321, 2324, 2328, 2338, 2334, 2340, 2342,
985
     2325, 2337, 2339, 2358, 2341, 2343, 2346, 2349, 2344, 2350,
986
     2354, 2351, 2352, 2367, 2363, 2369, 2370, 2379, 2371, 2375,
987
     2374, 2380, 2383, 2385, 2390, 2391, 2393, 8071, 2400, 2273,
988
     2397, 2399, 2398, 2408, 2405, 2406, 8071, 2409, 2412, 2407,
989
990
     2420, 2415, 2417, 2419, 2422, 2424, 2428, 2429, 2431, 2433,
991
     2432, 2434, 2440, 2435, 2453, 8071, 2439, 8071, 2448, 2437,
992
     2449, 2454, 2456, 2464, 2459, 2460, 2463, 2465, 2466, 2467,
993
     8071, 8071, 2468, 2470, 2476, 2482, 2490, 2492, 2487, 2488,
994
     2489, 8071, 2477, 2500, 8071, 2497, 2491, 2504, 2495, 2505,
995
     2508, 2510, 2514, 2515, 2511, 2516, 2517, 2520, 2519, 2529,
996
     2521, 2542, 2522, 2538, 2512, 8071, 2539, 2544, 2524, 2546,
997
     2548, 2549, 2550, 2552, 2555, 2554, 8071, 2556, 2558, 2561,
998
     2563, 2570, 2569, 2571, 2572, 2573, 2577, 2575, 2579, 2581,
999
     2582, 2583, 2592, 2594, 2595, 2597, 2599, 2606, 2603, 2611,
1000
1001
     8071, 2607, 2591, 2610, 2619, 2615, 2617, 2614, 2618, 2621,
1002
     2622, 2624, 2625, 2629, 2631, 2633, 2634, 2635, 2636, 2645,
1003
     2650, 2641, 2646, 2649, 2653, 2654, 2657, 2658, 2663, 2660,
1004
     2661, 2662, 2664, 8071, 2665, 2666, 2674, 2671, 2677, 2680,
1005
     2667,  216, 2683, 2686, 2688, 2690, 2693, 2691, 2699, 2692,
1006
     2709, 2710, 2705, 2696, 2707, 2714, 2715, 2716, 2694, 2718,
1007
     2720, 2722, 2724, 2726, 2727, 2730, 2728, 8071, 2736, 2738,
1008
     2740, 2733, 2731, 2754, 2741, 2751, 2739, 2750, 8071, 2758,
1009
     2760, 2763, 2771, 2746, 2765, 2767, 2772, 2773, 2776, 2774,
1010
     8071, 2777, 2779, 2784, 2786, 2785, 2787, 2788, 2789, 8071,
1011
1012
     2803, 2795, 2804, 2791, 2805, 2793, 2806, 2807, 2812, 2813,
1013
     2814, 2816, 2818, 2821, 2819, 2820, 2824, 2823, 2828, 2834,
1014
     2836, 2835, 2837, 2839, 2844, 2846, 2840, 2847, 2849, 2853,
1015
     2860, 2850, 8071, 2864, 2861, 2863, 2867, 2851, 2862, 2879,
1016
     2869, 2886, 2872, 2873, 2882, 2888, 2896, 2890, 2893, 2894,
1017
     2908, 2898, 2907, 2910, 2911, 2922, 2913, 2921, 2923, 2917,
1018
     2927, 2929, 2925, 2930, 2931, 2939, 2941, 2937, 2942, 2944,
1019
     2947, 2946, 2949, 2956, 2953, 2961, 2957, 2954, 2963, 2965,
1020
     2966, 2968, 2969, 2975, 2977, 8071, 2980, 2978, 2986, 2987,
1021
     2989, 2991, 2995, 3002, 2997, 2999, 3000, 3003, 2992, 3007,
1022
1023
     3011, 3008, 3014, 3015, 3017, 3018, 3025, 3020, 3026, 3027,
1024
     3028, 3039, 3031, 3024, 3030, 3040, 3041, 3043, 3047, 3049,
1025
     3051, 3052, 3053, 8071, 3056, 3060, 3054, 3061, 3063, 3067,
1026
     3069, 3071, 3074, 3075, 3076, 3077, 3081, 3082, 2883, 3083,
1027
     3084, 3091, 3088, 3090, 3092, 3089, 8071, 3100, 3095, 3101,
1028
     3106, 3105, 3108, 3109, 3115, 3118, 3122, 3123, 3126, 3116,
1029
     3129, 3125, 3128, 8071, 3139, 3142, 3138, 3140, 3150, 3137,
1030
     3147, 3148, 3152, 3149, 3153, 8071, 3155, 3154, 3157, 3156,
1031
     3158, 3161, 3168, 3170, 3174, 3165, 8071, 3181, 3163, 3179,
1032
     3182, 3191, 3186, 3188, 3189, 3190, 3194, 3192, 3196, 3197,
1033
1034
     3202, 3198, 3205, 3201, 3209, 8071, 3210, 3211, 3213, 3223,
1035
     3218, 3219, 3230, 3220, 3227, 3231, 3232, 3235, 3233, 3249,
1036
     3234, 8071, 3244, 3245, 3252, 3253, 3260, 3255, 3257, 3258,
1037
     3262, 3263, 3265, 3266, 3269, 3272, 3271, 8071, 3273, 3275,
1038
     3278, 3279, 3281, 3282, 3286, 3294, 3290, 3292, 3295, 3297,
1039
     3298, 3301, 3299, 3304, 3303, 3307, 3306, 3315, 3317, 3319,
1040
     3321, 3325, 3320, 3323, 3327, 3333, 3337, 3342, 3338, 3343,
1041
     3346, 3348, 3339, 3328, 3351, 3359, 3363, 3364, 3360, 3365,
1042
     8071, 3368, 3369, 3341, 3362, 3370, 3372, 3374, 3371, 3375,
1043
     3377, 3383, 3390, 3388, 3381, 3379, 3400, 3402, 3403, 3392,
1044
1045
     3404, 3406, 3408, 3409, 3410, 3411, 3413, 3414, 3417, 3422,
1046
     3419, 3426, 3421, 3423, 3429, 3428, 3437, 3433, 3436, 3446,
1047
     3438, 3441, 3445, 3447, 3448, 3449, 3451, 3453, 3455, 3458,
1048
     3460, 3456, 3461, 3469, 3472, 3477, 3473, 3479, 3482, 3484,
1049
     3485, 3487, 8071, 8071, 3486, 8071, 3489, 3491, 3493, 3498,
1050
     3497, 3502, 3503, 3504, 3509, 3513, 3510, 3514, 3516, 3517,
1051
     3526, 3522, 3519, 3528, 3521, 3529, 3533, 3534, 3543, 3536,
1052
     8071, 3538, 8071, 3545, 3540, 3544, 3550, 3552, 3548, 8071,
1053
     3558, 8071, 3559, 3564, 3553, 3555, 3560, 8071, 3567, 3565,
1054
     3572, 3566, 3573, 3577, 3574, 3579, 3580, 3582, 3581, 3590,
1055
1056
     3596, 3585, 3583, 3588, 3598, 3591, 3601, 3603, 3605, 3607,
1057
     3609, 3608, 3611, 3618, 3612, 3626, 3615, 3617, 3620, 3624,
1058
     3629, 3630, 8071, 3634, 3644, 3639, 3640, 3641, 3645, 3647,
1059
     3649, 3650, 3652, 3651, 3655, 3656, 3654, 3658, 3662, 3660,
1060
     3668, 3672, 3674, 3675, 3677, 3679, 3681, 3685, 3692, 3687,
1061
     3694, 3693, 8071, 3689, 3696, 3697, 3700, 3701, 3702, 8071,
1062
     3704, 3705, 3711, 3712, 3714, 3717, 3718, 3722, 3720, 3724,
1063
     3721, 3726, 3727, 3740, 3729, 3734, 3744, 3742, 8071, 3748,
1064
     3750, 3751, 3730, 3753, 3732, 3760, 3765, 3762, 3763, 3768,
1065
     3772, 3770, 3771, 3773, 3774, 3777, 3778, 3785, 3786, 3788,
1066
1067
     3787, 3789, 3790, 3794, 3796, 3798, 3800, 3801, 3802, 3804,
1068
     3805, 3806, 3809, 3811, 3814, 3812, 3807, 3815, 3808, 3816,
1069
     3820, 8071, 3829, 3831, 3833, 3840, 3836, 3837, 3838, 3845,
1070
     3839, 3847, 3852, 8071, 3850, 3844, 3857, 3851, 3854, 3865,
1071
     3867, 3866, 3868, 3869, 3871, 3873, 3870, 3882, 3876, 8071,
1072
     3883, 8071, 3875, 3872, 3896, 3901, 3905, 3895, 3884, 3906,
1073
     3908, 3911, 3912, 3913, 3914, 3916, 3915, 3918, 3917, 3922,
1074
     3924, 3926, 3928, 3929, 3935, 3930, 3931, 3945, 3950, 3934,
1075
     3936, 3946, 3951, 3952, 3955, 3963, 3953, 3960, 8071, 8071,
1076
     3961, 3964, 3967, 3970, 3965, 3974, 3975, 3977, 3979, 3984,
1077
1078
     3987, 3989, 3995, 3997, 3985, 3993, 3999, 4007, 8071, 4002,
1079
     4004, 4005, 4008, 4009, 4018, 4010, 4021, 4030, 4026, 4011,
1080
     4035, 4032, 8071, 4022, 4033, 4034, 4043, 4036, 4041, 4045,
1081
     8071, 4046, 8071, 4040, 4047, 4051, 4052, 4056, 4055, 4058,
1082
     4063, 4062, 4065, 4067, 4069, 4080, 4082, 4083, 4078, 4085,
1083
     4057, 4073, 4087, 4088, 4095, 4089, 4098, 4096, 4097, 4099,
1084
     8071, 4101, 4103, 4104, 4106, 4109, 4110, 4114, 4112, 4116,
1085
     8071, 4122, 8071, 4120, 4124, 4127, 4126, 4128, 4135, 4132,
1086
     4137, 4140, 4142, 4145, 4144, 4146, 4148, 4147, 4152, 4155,
1087
     4156, 8071, 4161, 4157, 4168, 4163, 4165, 4167, 4170, 4171,
1088
1089
     4172, 4179, 8071, 4181, 4188, 4184, 4185, 4187, 4195, 4191,
1090
     4193, 4196, 4197, 4201, 4202, 4204, 4207, 4206, 4208, 4209,
1091
     4214, 4212, 4210, 4223, 4220, 4216, 4232, 4230, 4219, 4239,
1092
     4246, 4231, 8071, 4217, 4241, 4243, 4245, 4247, 4248, 4249,
1093
     4253, 4256, 4258, 4251, 4269, 4272, 4259, 4264, 4266, 4275,
1094
     4277, 4276, 4279, 8071, 4284, 4283, 4292, 4288, 4289, 4290,
1095
     4291, 4293, 4300, 4294, 4297, 4304, 4305, 4306, 4307, 4308,
1096
     4309, 4317, 4321, 4318, 4319, 4323, 4324, 4334, 4325, 4326,
1097
     4329, 4333, 8071, 4348, 4335, 4340, 4350, 4343, 4351, 4359,
1098
     4356, 4357, 4358, 4360, 4362, 4361, 4364, 4367, 4368, 4370,
1099
1100
     4373, 4374, 4384, 4386, 4371, 8071, 8071, 4388, 4376, 4389,
1101
     4397, 8071, 4394, 4378, 4406, 4381, 4392, 4404, 4405, 4408,
1102
     4409, 4410, 4414, 4413, 4412, 4415, 4418, 4423, 4424, 8071,
1103
     4432, 4428, 4435, 4427, 4434, 4437, 4442, 8071, 4436, 4445,
1104
     4451, 4443, 4452, 4453, 4446, 4454, 4456, 4457, 4460, 4458,
1105
     4462, 4464, 4467, 4470, 4478, 4474, 4479, 4481, 4477, 4483,
1106
     4485, 8071, 4482, 4484, 4487, 4494, 4491, 4495, 4496, 8071,
1107
     4499, 4500, 4507, 4503, 4501, 4513, 4516, 4517, 4519, 4523,
1108
     4520, 4524, 4526, 4527, 4528, 4529, 4531, 4539, 4534, 4540,
1109
     4537, 4543, 4547, 4553, 4557, 8071, 4550, 4558, 4544, 4560,
1110
1111
     4563, 8071, 4566, 4568, 4576, 4578, 8071, 4579, 4577, 4580,
1112
     4581, 4588, 8071, 4583, 4586, 4584, 4591, 4587, 4600, 4589,
1113
     4604, 4599, 4597, 4606, 4601, 4607, 4608, 4609, 8071, 4610,
1114
     4615, 4618, 8071, 4617, 4625, 4629, 4632, 4635, 4638, 4639,
1115
     4626, 4624, 4646, 4642, 4645, 4643, 4647, 8071, 4652, 4659,
1116
     8071, 4651, 4660, 4655, 4661, 4662, 4665, 8071, 4663, 4667,
1117
     4669, 4671, 4672, 4678, 4680, 4684, 4689, 4682, 4686, 4690,
1118
     4691, 4698, 4693, 4694, 4706, 4696, 4703, 4701, 4704, 8071,
1119
     4715, 4705, 4711, 4713, 4709, 4724, 4717, 4721, 4707, 4730,
1120
     4731, 8071, 8071, 4737, 8071, 4738, 4732, 4734, 4739, 8071,
1121
1122
     4742, 4740, 4749, 4745, 4746, 4751, 4752, 4758, 4756, 4760,
1123
     4761, 8071, 4768, 4770, 8071, 4763, 4772, 4779, 4775, 4776,
1124
     4765, 4777, 4780, 4784, 4782, 4788, 4790, 4791, 4792, 4794,
1125
     4796, 4795, 4813, 4798, 4816, 8071, 4808, 4801, 4799, 4815,
1126
     4809, 4817, 4823, 4825, 4831, 4834, 4829, 4836, 8071, 4838,
1127
     4839, 4840, 4842, 4845, 8071, 8071, 4846, 8071, 4848, 4850,
1128
     8071, 4849, 4851, 4854, 4857, 4860, 4868, 4863, 8071, 4865,
1129
     4864, 4870, 4871, 4874, 4875, 8071, 4876, 4882, 4884, 4885,
1130
     4886, 4894, 4890, 4891, 4889, 4899, 4892, 8071, 4896, 4905,
1131
     4908, 4910, 4911, 4907, 4913, 4914, 4922, 4921, 4923, 4930,
1132
1133
     4933, 4917, 4937, 4938, 4936, 4940, 4929, 4942, 4945, 4947,
1134
     4948, 4949, 8071, 4950, 4951, 4955, 4958, 4965, 4961, 4962,
1135
     4966, 8071, 4968, 4970, 4969, 4972, 8071, 4975, 4976, 4980,
1136
     4986, 4983, 4987, 4990, 4991, 4992, 4995, 4997, 4993, 8071,
1137
     4994, 4999, 5000, 5010, 5013, 5014, 5003, 8071, 5016, 8071,
1138
     5019, 8071, 5022, 5004, 5024, 5026, 5030, 5031, 5033, 5034,
1139
     5036, 5041, 5037, 5042, 5045, 5047, 5048, 5049, 8071, 5051,
1140
     5058, 5053, 5067, 5068, 5071, 5054, 8071, 5064, 5073, 8071,
1141
     5074, 8071, 5076, 5077, 5079, 5081, 5080, 5084, 5085, 5088,
1142
     5087, 5091, 8071, 5098, 5101, 5090, 5103, 5102, 5111, 5114,
1143
1144
     5104, 5121, 8071, 5118, 5106, 5119, 5117, 8071, 5124, 5125,
1145
     5127, 5128, 5129, 5131, 5133, 5132, 5134, 5135, 5138, 5142,
1146
     5152, 5144, 5153, 5139, 5145, 5146, 5155, 5161, 5163, 5162,
1147
     5165, 5170, 8071, 5166, 5172, 5173, 5176, 5177, 5178, 5179,
1148
     5182, 5181, 5184, 5194, 5187, 5207, 8071, 5189, 8071, 5186,
1149
     5197, 5206, 5208, 5209, 5214, 5185, 5215, 5217, 5216, 5219,
1150
     5221, 5222, 5225, 5226, 5232, 5220, 5227, 5236, 5237, 8071,
1151
     5244, 5245, 5239, 5247, 5250, 5252, 5256, 5253, 8071, 5260,
1152
     5257, 5261, 5263, 5266, 8071, 5267, 5269, 5271, 5264, 5273,
1153
     5274, 5285, 5276, 5282, 5289, 5294, 5286, 5290, 5278, 5295,
1154
1155
     5297, 5302, 5303, 5304, 8071, 5305, 5307, 5308, 5312, 5313,
1156
     5315, 5316, 5318, 5324, 5329, 5319, 5326, 5330, 8071, 5333,
1157
     5334, 5336, 5343, 8071, 5339, 5342, 5344, 5345, 5346, 5352,
1158
     5347, 5349, 5354, 5356, 5358, 5365, 5355, 5363, 8071, 5372,
1159
     5373, 5375, 5376, 5379, 5380, 5381, 5383, 5386, 5391, 5392,
1160
     5399, 8071, 5395, 5401, 5403, 5405, 5406, 5404, 5407, 5412,
1161
     5414, 5416, 5415, 8071, 5422, 5425, 5426, 5424, 5434, 5438,
1162
     5435, 5436, 5443, 5440, 5442, 5444, 5446, 5449, 5448, 5460,
1163
     5453, 5455, 5457, 5458, 5461, 5471, 5476, 5473, 8071, 5463,
1164
     8071, 5472, 5478, 5479, 5488, 5484, 5486, 5489, 5481, 5494,
1165
1166
     5496, 5498, 8071, 5499, 5500, 5503, 5504, 5505, 5508, 5513,
1167
     5506, 8071, 5510, 5507, 5509, 5525, 8071, 5526, 5527, 5528,
1168
     5530, 5531, 5534, 5536, 5541, 5538, 5544, 8071, 5547, 5549,
1169
     5550, 5557, 5559, 5554, 5561, 5542, 5564, 5562, 5566, 5568,
1170
     5569, 5570, 5578, 5573, 5575, 8071, 5577, 5576, 5584, 5585,
1171
     5586, 5589, 5592, 5593, 5595, 5597, 5594, 8071, 5600, 5602,
1172
     5603, 5604, 5606, 5608, 5609, 5610, 5617, 5619, 5626, 5616,
1173
     5630, 5614, 5618, 5628, 5633, 5634, 5636, 8071, 5639, 5640,
1174
     5641, 5648, 5649, 5644, 5657, 8071, 5645, 8071, 5650, 5653,
1175
     5660, 5662, 5668, 8071, 5663, 5658, 5671, 5670, 5675, 8071,
1176
1177
     8071, 5677, 5678, 5679, 5683, 5680, 5685, 5684, 8071, 8071,
1178
     5687, 8071, 5688, 8071, 5694, 5695, 8071, 8071, 5692, 5698,
1179
     5699, 5701, 5702, 8071, 5704, 5705, 5713, 8071, 5715, 8071,
1180
     5722, 5707, 5717, 5720, 5703, 5721, 8071, 5728, 5729, 5730,
1181
     5731, 5734, 8071, 5735, 5737, 5738, 5745, 5740, 5741, 8071,
1182
     5749, 5750, 5752, 5754, 5753, 5760, 5762, 5763, 5764, 5765,
1183
     5766, 5769, 8071, 5770, 5779, 5767, 5774, 5780, 5781, 5783,
1184
     5791, 5776, 5782, 5795, 5797, 5798, 5799, 5800, 5804, 5801,
1185
     5809, 5811, 5813, 5814, 5815, 5806, 5820, 5821, 5827, 5829,
1186
     5823, 5831, 5832, 5833, 5834, 5836, 5838, 5839, 5841, 5843,
1187
1188
     5845, 5847, 5848, 5849, 5850, 5854, 5859, 5860, 5862, 5863,
1189
     5868, 5869, 5871, 5872, 5873, 5874, 5450, 5875, 5876, 5880,
1190
     5877, 5884, 5888, 5890, 5894, 5881, 5895, 8071, 5897, 5901,
1191
     5902, 5904, 5906, 5907, 5908, 5912, 5913, 5914, 5917, 5921,
1192
     5922, 5927, 8071, 8071, 8071, 5929, 5931, 8071, 5935, 5925,
1193
     5933, 5937, 5939, 8071, 5940, 5941, 5942, 5945, 5946, 5948,
1194
     5947, 5949, 5950, 5953, 5955, 5961, 8071, 5968, 5975, 5963,
1195
     5958, 5969, 5982, 8071, 5976, 5984, 5979, 5986, 5987, 5988,
1196
     5991, 5989, 5990, 5993, 5992, 5994, 5996, 6003, 6002, 6013,
1197
     5999, 6014, 6015, 8071, 6017, 6023, 6024, 6020, 6025, 6026,
1198
1199
     6027, 6028, 6029, 6031, 6033, 6035, 6036, 6037, 6039, 6040,
1200
     6044, 6045, 6052, 6057, 6062, 8071, 6054, 6064, 6058, 8071,
1201
     6065, 6066, 6067, 6068, 6070, 6072, 6069, 6076, 6078, 6080,
1202
     8071, 8071, 6082, 6083, 6084, 6091, 6092, 6086, 6094, 6095,
1203
     6096, 6105, 8071, 6097, 6100, 6108, 6113, 6119, 6103, 8071,
1204
     6110, 6120, 6121, 6125, 6126, 6122, 6127, 6128, 6130, 6132,
1205
     6134, 6135, 6138, 8071, 6131, 6144, 6148, 6146, 6157, 6149,
1206
     6159, 6160, 6154, 6161, 6162, 6164, 6167, 8071, 6169, 8071,
1207
     8071, 8071, 6170, 6172, 6173, 6176, 6178, 6179, 6180, 6185,
1208
     6187, 6188, 6183, 6186, 6189, 8071, 6199, 8071, 8071, 6200,
1209
1210
     8071, 6201, 6202, 6203, 6208, 6210, 6209, 6211, 6214, 8071,
1211
     6212, 8071, 6219, 6221, 6215, 6232, 6234, 6235, 6223, 6236,
1212
     6225, 6243, 6239, 6245, 6229, 6237, 6254, 6251, 6252, 6249,
1213
     8071, 6258, 6253, 6260, 6262, 6267, 8071, 8071, 6264, 6270,
1214
     6271, 6273, 6274, 6281, 6279, 6282, 6276, 6292, 6289, 6291,
1215
     6294, 6288, 6295, 6298, 6300, 6307, 6308, 6304, 6303, 6312,
1216
     8071, 6313, 6314, 6322, 8071, 6305, 8071, 6318, 6324, 6326,
1217
     6316, 6327, 6328, 6330, 6332, 6335, 6338, 6347, 6343, 8071,
1218
     8071, 6336, 6351, 6346, 8071, 8071, 6349, 6350, 6353, 6355,
1219
     6357, 6358, 6359, 8071, 6360, 6362, 6363, 6361, 6366, 6367,
1220
1221
     6380, 6372, 8071, 6377, 8071, 6381, 8071, 6383, 6384, 6390,
1222
     6385, 6393, 6400, 8071, 6395, 6397, 6402, 6399, 6403, 6404,
1223
     6407, 8071, 6408, 6405, 8071, 6419, 6406, 6416, 6421, 6422,
1224
     6424, 6425, 8071, 6426, 6428, 6430, 6431, 8071, 6432, 6434,
1225
     6437, 6438, 6442, 6444, 6441, 6451, 6453, 8071, 6455, 6457,
1226
     6458, 6456, 8071, 6467, 8071, 6459, 6468, 6462, 6476, 6469,
1227
     8071, 6471, 6472, 6477, 6482, 8071, 6485, 6487, 6489, 6490,
1228
     6494, 6495, 8071, 6499, 6478, 8071, 6480, 6501, 6503, 6504,
1229
     6510, 6506, 6512, 6514, 6515, 6516, 6523, 6519, 6520, 8071,
1230
     8071, 6532, 6522, 6534, 6535,  123, 6542, 6529, 6537, 6538,
1231
1232
     6539, 6549, 6550, 6553, 6546, 6551, 6560, 8071, 8071, 6562,
1233
     6563, 6565, 8071, 6548, 6564, 8071, 6554, 6566, 6573, 6570,
1234
     6575, 6576, 6578, 6581, 6582, 6584, 6585, 6586, 6590, 6591,
1235
     6592, 8071, 6608, 6612, 6595, 6616, 6617, 6619, 6621, 6623,
1236
     6625, 6593, 6598, 6613, 6605, 6627, 6628, 6629, 6632, 6630,
1237
     6634, 6638, 6640, 6641, 6642, 8071, 6645, 6651, 6652, 6648,
1238
     6654, 6658, 6665, 6656, 8071, 6667, 6668, 6672, 6657, 6676,
1239
     8071, 6680, 6673, 6677, 6684, 6685, 6687, 8071, 6688, 6690,
1240
     6692, 6693, 6695, 6698, 6699, 6700, 6701, 6708, 8071, 6646,
1241
     6703, 6705, 6709, 6714, 6722, 6711, 6725, 6726, 6719, 8071,
1242
1243
     6727, 8071, 8071, 8071, 6730, 6733, 6729, 8071, 6737, 6738,
1244
     6739, 6740, 8071, 6745, 6747, 6741, 6754, 6749, 8071, 8071,
1245
     8071, 6751, 6755, 6753, 8071, 6757, 6765, 6763, 8071, 6756,
1246
     8071, 6766, 8071, 6769, 6770, 6778, 6771, 8071, 6781, 6782,
1247
     8071, 6773, 6785, 6783, 6788, 8071, 6791, 6794, 6800, 6795,
1248
     6801, 6802, 6805, 6806, 6803, 8071, 8071, 6813, 6810, 6811,
1249
     6812, 6815, 6818, 6819, 6820, 6823, 6826, 6833, 8071, 6829,
1250
     6835, 8071, 6838, 6832, 6840, 6846, 6830, 6843, 6848, 8071,
1251
     6839, 8071, 6851, 8071, 6852, 6853, 6855, 6856, 6861, 6857,
1252
     6862, 6864, 6869, 6867, 6871, 6875, 6876, 6879, 6878, 6880,
1253
1254
     6885, 6890, 6882, 8071, 8071, 6892, 6893, 8071, 6894, 6898,
1255
     6903, 8071, 6899, 8071, 6904, 6909, 8071, 6905, 6910, 8071,
1256
     6911, 6912, 6913, 8071, 8071, 6915, 6917, 6922, 6929, 6924,
1257
     6933, 6925, 8071, 6934, 6927, 6930, 6936, 6939, 6938, 6940,
1258
     6945, 6942, 6948, 6949, 6954, 8071, 6956, 8071, 6955, 6965,
1259
     6961, 8071, 8071, 6962, 6963, 6971, 6973, 6964, 6968, 6977,
1260
     6974, 6978, 6982, 6980, 6992, 6983, 6987, 6990, 6994, 6998,
1261
     7005, 6997, 7006, 7008, 7013, 8071, 8071, 8071, 6995, 7001,
1262
     7015, 7017, 7024, 7020, 7023, 8071, 7031, 7016, 8071, 7027,
1263
     7029, 7033, 7030, 7042, 7037, 7040, 8071, 7041, 7043, 7044,
1264
1265
     7045, 7047, 7048, 7050, 7051, 8071, 7057, 7063, 7065, 7068,
1266
     7070, 7071, 7075, 7078, 7080, 7072, 7082, 7086, 7083, 7087,
1267
     7094, 7090, 8071, 8071, 7092, 7089, 8071, 7098, 7100, 8071,
1268
     8071, 7093, 7101, 8071, 7102, 7104, 7106, 7107, 7108, 8071,
1269
     7111, 7114, 7115, 7116, 8071, 7117, 7118, 7120, 7121, 7123,
1270
     7132, 7135, 7128, 7133, 7142, 7138, 7146, 8071, 7144, 7153,
1271
     7149, 7151, 7152, 7154, 8071, 8071, 7155, 7161, 8071, 7164,
1272
     7166, 7156, 7165, 7173, 7168, 7174, 7178, 7183, 8071, 7172,
1273
     8071, 7185, 7186, 7175, 7184, 7193, 7187, 7190, 7194, 7197,
1274
     8071, 7200, 7196, 7201, 7205, 8071, 7206, 7207, 7209, 7210,
1275
1276
     7211, 8071, 7213, 7214, 7228, 7230, 8071, 7217, 7229, 7220,
1277
     8071, 8071, 8071, 7239, 7241, 7242, 8071, 8071, 8071, 7236,
1278
     7243, 8071, 7245, 7247, 7249, 7254, 8071, 7250, 8071, 8071,
1279
     7256, 7257, 7261, 7266, 7270, 7274, 7273, 8071, 7262, 7275,
1280
     7279, 7280, 7281, 8071, 7283, 7286, 8071, 7293, 7294, 7296,
1281
     7289, 7292, 7300, 7301, 7303, 7304, 7306, 7308, 7309, 7310,
1282
     8071, 8071, 7312, 7319, 7052, 7314, 7316, 7317, 8071, 7315,
1283
     7320, 7321, 7329, 7331, 7334, 7339, 7342, 7344, 7336, 7345,
1284
     7346, 7347, 7354, 7355, 7350, 7352, 7357, 7361, 7363, 7362,
1285
     7365, 7376, 7371, 7373, 7380, 7369, 7382, 8071, 8071, 7386,
1286
1287
     7374, 7390, 8071, 7392, 7393, 8071, 7383, 8071, 7395, 7397,
1288
     7399, 7404, 7406, 8071, 7408, 7410, 7412, 7414, 7400, 8071,
1289
     7415, 7417, 8071, 8071, 7418, 7419, 7421, 7420, 7422, 8071,
1290
     8071, 7428, 7431, 7429, 7430, 8071, 7432, 7434, 7436, 7442,
1291
     7444, 7445, 7446, 7449, 7451, 7453, 7457, 8071, 7448, 7467,
1292
     8071, 8071, 8071, 7468, 7454, 7471, 7458, 7469, 7462, 8071,
1293
     7475, 7482, 7477, 7481, 7479, 7483, 7487, 8071, 7488, 7490,
1294
     8071, 8071, 7485, 7492, 8071, 7495, 8071, 8071, 7493, 7497,
1295
     8071, 8071, 8071, 8071, 8071, 8071, 8071, 8071, 8071, 7500,
1296
     7506, 8071, 7502, 7504, 7508, 7512, 7514, 7518, 8071, 7515,
1297
1298
     7521, 7523, 7525, 8071, 7527, 7530, 8071, 7516, 7529, 7537,
1299
     7532, 7540, 8071, 7542, 8071, 7549, 7544, 7546, 7545, 7551,
1300
     7547, 7558, 7548, 7554, 7560, 7563, 7564, 7565, 7566, 7569,
1301
     7571, 7570, 7572, 7577, 7568, 7586, 7574, 7583, 7588, 7593,
1302
     7590, 7595, 7597, 7598, 7599, 8071, 8071, 8071, 8071, 7602,
1303
     7603, 7606, 7608, 7600, 7612, 7622, 7611, 7623, 7628, 7630,
1304
     7613, 7619, 7631, 7633, 7635, 7625, 7636, 7643, 7641, 7642,
1305
     7644, 7646, 7647, 7653, 7657, 7659, 8071, 7661, 7663, 7664,
1306
     8071, 7666, 7648, 7673, 7675, 7662, 7670, 7676, 7679, 8071,
1307
     7681, 7680, 8071, 7682, 7683, 8071, 8071, 7685, 7686, 7690,
1308
1309
     7688, 7699, 7700, 7697, 7692, 7702, 7703, 7710, 8071, 7713,
1310
     8071, 8071, 8071, 8071, 7704, 7714, 8071, 7715, 8071, 8071,
1311
     7716, 7717, 7718, 8071, 7720, 7723, 7724, 7727, 8071, 7725,
1312
     7728, 7732, 7735, 7736, 7739, 7741, 7742, 7744, 8071, 8071,
1313
     7750, 7752, 7754, 7755, 7753, 7756, 7757, 8071, 7760, 7762,
1314
     7759, 7783, 7765, 7779, 7780, 7781, 7763, 7793, 8071, 7770,
1315
     7778, 7788, 7795, 7789, 7791, 7800, 7797, 8071, 7801, 7802,
1316
     7804, 7806, 7807, 7814, 7809, 7810, 7813, 7817, 7819, 8071,
1317
     7820, 7829, 8071, 7822, 7832, 7824, 7835, 7834, 7837, 7838,
1318
     7841, 7843, 8071, 8071, 8071, 7845, 7846, 7850, 8071, 7847,
1319
1320
     7857, 7849, 7860, 7862, 7864, 7865, 7852, 8071, 7867, 7875,
1321
     7876, 7877, 7883, 7878, 7880, 7870, 7886, 7884, 8071, 8071,
1322
     7893, 7888, 8071, 7890, 7894, 7896, 7897, 7900, 8071, 7905,
1323
     7898, 7902, 7908, 7911, 7906, 8071, 7919, 7923, 7920, 8071,
1324
     7924, 8071, 8071, 7925, 7912, 7914, 7935, 7937, 8071, 8071,
1325
     8071, 7951, 7958, 7965, 7972, 7979, 7986, 7993,   88, 8000,
1326
     8007, 8014, 8021, 8028, 8035, 8042, 8049, 8056, 8063
1327
    } ;
1328
1329
static const flex_int16_t yy_def[4170] =
1330
    {   0,
1331
     4151,    1, 4152, 4152, 4153, 4153, 4154, 4154, 4155, 4155,
1332
     4156, 4156, 4157, 4157, 4158, 4158, 4151, 4159, 4151, 4151,
1333
     4151, 4151, 4160, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1334
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1335
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4161, 4151, 4151,
1336
     4151, 4161, 4162, 4151, 4151, 4151, 4162, 4163, 4151, 4151,
1337
     4151, 4151, 4163, 4164, 4151, 4151, 4151, 4164, 4165, 4151,
1338
     4166, 4151, 4165, 4165, 4167, 4151, 4151, 4151, 4151, 4167,
1339
     4168, 4151, 4151, 4151, 4168, 4159, 4159, 4151, 4169, 4160,
1340
     4169, 4160, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1341
1342
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1343
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1344
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1345
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1346
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1347
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1348
     4159, 4159, 4159, 4159, 4161, 4161, 4162, 4162, 4163, 4163,
1349
     4151, 4164, 4164, 4165, 4165, 4166, 4166, 4165, 4167, 4167,
1350
     4151, 4168, 4168, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1351
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1352
1353
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1354
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1355
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1356
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1357
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1358
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1359
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1360
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1361
     4159, 4159, 4159, 4159, 4159, 4165, 4159, 4159, 4159, 4159,
1362
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1363
1364
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1365
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1366
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1367
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1368
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1369
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1370
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1371
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1372
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1373
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1374
1375
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1376
     4159, 4159, 4159, 4159, 4165, 4159, 4159, 4159, 4159, 4159,
1377
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1378
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1379
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1380
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1381
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1382
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1383
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1384
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1385
1386
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4151, 4159,
1387
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1388
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1389
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1390
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1391
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1392
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1393
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1394
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4165,
1395
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1396
1397
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1398
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1399
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1400
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1401
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1402
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1403
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1404
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1405
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1406
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1407
1408
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1409
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1410
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1411
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1412
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1413
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1414
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1415
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1416
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4165,
1417
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1418
1419
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1420
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1421
     4159, 4151, 4159, 4151, 4151, 4159, 4159, 4151, 4151, 4159,
1422
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1423
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1424
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1425
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1426
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1427
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1428
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1429
1430
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1431
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1432
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1433
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1434
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1435
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1436
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1437
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1438
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1439
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1440
1441
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4165, 4159,
1442
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1443
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1444
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1445
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1446
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1447
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1448
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1449
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1450
     4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1451
1452
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1453
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4151, 4159, 4159,
1454
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1455
     4151, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1456
     4159, 4151, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159,
1457
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1458
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1459
     4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1460
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1461
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1462
1463
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1464
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1465
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1466
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1467
     4165, 4165, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1468
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1469
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1470
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1471
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1472
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1473
1474
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1475
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1476
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1477
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1478
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1479
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1480
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1481
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1482
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1483
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1484
1485
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1486
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1487
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1488
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1489
     4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1490
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1491
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1492
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4165,
1493
     4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1494
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1495
1496
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1497
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1498
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1499
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1500
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1501
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1502
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1503
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1504
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1505
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1506
1507
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1508
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1509
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1510
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1511
     4159, 4159, 4151, 4151, 4159, 4151, 4159, 4159, 4159, 4159,
1512
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1513
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1514
     4151, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1515
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1516
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1517
1518
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1519
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1520
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4165, 4159,
1521
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1522
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1523
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1524
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1525
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1526
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1527
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1528
1529
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1530
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1531
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1532
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1533
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1534
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1535
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1536
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1537
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4151,
1538
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1539
1540
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1541
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1542
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1543
     4151, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1544
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1545
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1546
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1547
     4151, 4159, 4151, 4159, 4159, 4159, 4165, 4159, 4159, 4159,
1548
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1549
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1550
1551
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1552
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1553
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1554
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1555
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1556
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1557
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1558
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1559
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1560
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1561
1562
     4159, 4159, 4159, 4159, 4159, 4151, 4151, 4159, 4159, 4159,
1563
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1564
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1565
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1566
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1567
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1568
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1569
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1570
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1571
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1572
1573
     4159, 4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1574
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1575
     4159, 4159, 4159, 4159, 4159, 4159, 4165, 4159, 4151, 4159,
1576
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1577
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1578
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1579
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1580
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1581
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1582
     4159, 4151, 4151, 4159, 4151, 4159, 4159, 4159, 4159, 4151,
1583
1584
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1585
     4159, 4151, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159,
1586
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1587
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1588
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1589
     4159, 4159, 4159, 4159, 4151, 4151, 4159, 4151, 4159, 4159,
1590
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1591
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1592
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1593
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1594
1595
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1596
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1597
     4159, 4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1598
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1599
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4151,
1600
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1601
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1602
     4159, 4165, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4151,
1603
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1604
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1605
1606
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1607
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1608
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1609
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1610
     4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4151, 4159,
1611
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1612
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1613
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1614
     4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159,
1615
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1616
1617
     4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159,
1618
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1619
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1620
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1621
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1622
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1623
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1624
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1625
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1626
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1627
1628
     4165, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1629
     4159, 4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1630
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1631
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1632
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1633
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1634
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1635
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1636
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4151, 4159, 4159,
1637
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4151,
1638
1639
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4151,
1640
     4159, 4151, 4159, 4151, 4159, 4159, 4151, 4151, 4159, 4159,
1641
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4151, 4159, 4151,
1642
     4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1643
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1644
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1645
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1646
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1647
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1648
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1649
1650
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1651
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1652
     4159, 4159, 4165, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1653
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1654
     4159, 4159, 4151, 4151, 4151, 4159, 4159, 4151, 4159, 4159,
1655
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1656
     4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1657
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1658
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1659
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1660
1661
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1662
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4151,
1663
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1664
     4151, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1665
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1666
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1667
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1668
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4151,
1669
     4151, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1670
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4151, 4151, 4159,
1671
1672
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1673
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1674
     4159, 4165, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1675
     4151, 4159, 4159, 4159, 4159, 4159, 4151, 4151, 4159, 4159,
1676
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1677
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1678
     4151, 4159, 4159, 4159, 4151, 4159, 4151, 4159, 4159, 4159,
1679
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1680
     4151, 4159, 4159, 4159, 4151, 4151, 4159, 4159, 4159, 4159,
1681
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1682
1683
     4159, 4159, 4151, 4159, 4151, 4159, 4151, 4159, 4159, 4159,
1684
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1685
     4159, 4151, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159,
1686
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1687
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1688
     4159, 4159, 4151, 4159, 4151, 4159, 4159, 4159, 4159, 4159,
1689
     4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1690
     4159, 4159, 4151, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1691
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1692
     4151, 4159, 4159, 4159, 4159, 4165, 4159, 4159, 4159, 4159,
1693
1694
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4151, 4159,
1695
     4159, 4159, 4151, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1696
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1697
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1698
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1699
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1700
     4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159,
1701
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1702
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1703
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1704
1705
     4159, 4151, 4151, 4151, 4159, 4159, 4159, 4151, 4159, 4159,
1706
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4151, 4151,
1707
     4151, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4151, 4159,
1708
     4151, 4159, 4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1709
     4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1710
     4159, 4159, 4159, 4159, 4159, 4151, 4151, 4159, 4159, 4159,
1711
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1712
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1713
     4159, 4151, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159,
1714
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1715
1716
     4159, 4159, 4159, 4151, 4151, 4159, 4159, 4151, 4159, 4159,
1717
     4159, 4151, 4159, 4151, 4159, 4159, 4151, 4159, 4159, 4151,
1718
     4159, 4159, 4159, 4151, 4151, 4159, 4159, 4159, 4159, 4159,
1719
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1720
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4151, 4159, 4159,
1721
     4159, 4151, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1722
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1723
     4159, 4159, 4159, 4159, 4159, 4151, 4151, 4151, 4159, 4159,
1724
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4151, 4159,
1725
     4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1726
1727
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1728
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1729
     4159, 4159, 4151, 4151, 4159, 4159, 4151, 4159, 4159, 4151,
1730
     4151, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4151,
1731
     4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159,
1732
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1733
     4159, 4159, 4159, 4159, 4151, 4151, 4159, 4159, 4151, 4159,
1734
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1735
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1736
     4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1737
1738
     4159, 4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1739
     4151, 4151, 4151, 4159, 4159, 4159, 4151, 4151, 4151, 4159,
1740
     4159, 4151, 4159, 4159, 4159, 4159, 4151, 4159, 4151, 4151,
1741
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1742
     4159, 4159, 4159, 4151, 4159, 4159, 4151, 4159, 4159, 4159,
1743
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1744
     4151, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1745
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1746
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1747
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4151, 4159,
1748
1749
     4159, 4159, 4151, 4159, 4159, 4151, 4159, 4151, 4159, 4159,
1750
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4151,
1751
     4159, 4159, 4151, 4151, 4159, 4159, 4159, 4159, 4159, 4151,
1752
     4151, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159,
1753
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1754
     4151, 4151, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1755
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1756
     4151, 4151, 4159, 4159, 4151, 4159, 4151, 4151, 4159, 4159,
1757
     4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4159,
1758
     4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1759
1760
     4159, 4159, 4159, 4151, 4159, 4159, 4151, 4159, 4159, 4159,
1761
     4159, 4159, 4151, 4159, 4151, 4159, 4159, 4159, 4159, 4159,
1762
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1763
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1764
     4159, 4159, 4159, 4159, 4159, 4151, 4151, 4151, 4151, 4159,
1765
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1766
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1767
     4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159,
1768
     4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1769
     4159, 4159, 4151, 4159, 4159, 4151, 4151, 4159, 4159, 4159,
1770
1771
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1772
     4151, 4151, 4151, 4151, 4159, 4159, 4151, 4159, 4151, 4151,
1773
     4159, 4159, 4159, 4151, 4159, 4159, 4159, 4159, 4151, 4159,
1774
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4151,
1775
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1776
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1777
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1778
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151,
1779
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4159, 4159,
1780
     4159, 4159, 4151, 4151, 4151, 4159, 4159, 4159, 4151, 4159,
1781
1782
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159,
1783
     4159, 4159, 4159, 4159, 4159, 4159, 4159, 4159, 4151, 4151,
1784
     4159, 4159, 4151, 4159, 4159, 4159, 4159, 4159, 4151, 4159,
1785
     4159, 4159, 4159, 4159, 4159, 4151, 4159, 4159, 4159, 4151,
1786
     4159, 4151, 4151, 4159, 4159, 4159, 4159, 4159, 4151, 4151,
1787
        0, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151,
1788
     4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151
1789
    } ;
1790
1791
static const flex_int16_t yy_nxt[8112] =
1792
    {   0,
1793
       18,   19,   20,   21,   22,   23,   22,   18,   18,   18,
1794
       18,   18,   22,   24,   25,   26,   27,   28,   29,   30,
1795
       18,   31,   32,   33,   34,   35,   36,   37,   38,   39,
1796
       40,   41,   42,   43,   44,   45,   46,   18,   18,   47,
1797
       49,   50,   51,   49,   50,   51,   54,   55,   54,   55,
1798
       56,   52,   56,   86,   52,   86,   86,   57,   86,   57,
1799
       59,   60,   61,   62,   86,   22,   59,   60,   61,   62,
1800
       87,   22,   63,   65,   66,   67,   87,   99,   63,   65,
1801
       66,   67,   88,   87,   68,  122,   89,  110,   86,   87,
1802
       68,   19,   20,   21,   70,   71,   72,   76,   77,   78,
1803
1804
       79,   87,   22,   73,  124,   87,  123,  111,   87,   80,
1805
       87,  163,   74,   19,   20,   21,   70,   71,   72,   76,
1806
       77,   78,   79,  193,   22,   73,   82,   83,   84,  133,
1807
       91,   80,   91,   91,   74,   91,  175,   85,   82,   83,
1808
       84,   91,   92,   87,  100,   87,  112,   87,  114,   85,
1809
       87,  101,   87,   93,   94,  102,  115,   95,  103,   87,
1810
      113,   87,   96,  117,   97,   87,  118,  116,  165,  165,
1811
      213,   98,   87,  119,   87,  120,  164,  104,  241,  121,
1812
       87,  105,   87,  152,  106,  153,  107,  108,  140,   87,
1813
      125,   87,  129,  263,  154,  141,  130,  109,  126,   88,
1814
1815
      155,   87,  142,   89,  127,   87,  143,   87,  128,  185,
1816
      131,  156,  132,   87,  134,   87,  144,  145,  135,  146,
1817
      147,  157,  136,  148,  167,  158,  159,  167,  137,  175,
1818
      149,  138,   87,  160,  150,  151,   87,  161,  139,  184,
1819
      169,  162,  169,  169,  175,  169,  172,  172,   91,   87,
1820
       91,   91,  174,   91,  174,  174,  186,  174,  178,  179,
1821
      177,  179,  179,   87,  179,  182,  182,   86,   87,   86,
1822
       86,   91,   86,   91,   91,  187,   91,   87,   86,   87,
1823
       87,   87,   91,   92,  190,   87,   87,  188,  191,  194,
1824
       87,   87,  197,  195,  196,   87,  204,  189,  198,   87,
1825
1826
      199,  192,   87,   87,   87,   87,   87,   87,  200,  201,
1827
      207,   87,   87,  202,  203,  205,  215,  206,  226,  208,
1828
       87,   87,  210,  211,  209,  214,  216,   87,  167,  223,
1829
      212,  167,  217,   87,  218,   87,  219,   87,   87,  220,
1830
      232,   87,  225,  227,  229,  233,   87,   87,  230,   87,
1831
       87,  235,  221,  222,  224,   87,  236,  239,   87,   87,
1832
      234,   87,   87,  228,  231,  243,   87,  240,  237,   87,
1833
      245,   87,   87,   87,   87,  238,   87,  251,  247,  242,
1834
      244,  252,  248,   87,   87,   87,   87,  246,  249,  254,
1835
      175,  250,   87,  286,  253,  260,   87,  267,  255,  257,
1836
1837
       87,   87,  264,   87,  256,  259,  261,   87,   87,  258,
1838
      262,  265,  266,   87,  268,   87,   87,  269,   87,  272,
1839
      270,   87,  274,   87,   87,  276,  273,  279,   87,  280,
1840
      281,  271,  275,  283,  277,   87,   87,  165,  165,  282,
1841
      169,  183,  169,  169,  284,  169,  278,  172,  172,  174,
1842
      285,  174,  174,   91,  174,   91,   91,  179,   91,  179,
1843
      179,   87,  179,  182,  182,  177,  287,  288,   87,   87,
1844
       87,   87,   87,   87,   87,   87,   87,   87,   87,  296,
1845
      293,   87,  289,  299,  291,  295,  290,  294,   87,   87,
1846
      309,  298,  301,  292,  297,  303,   87,  300,  302,   87,
1847
1848
       87,   87,  304,  310,  306,   87,  307,  311,  308,   87,
1849
       87,   87,  312,  305,  314,   87,  319,   87,   87,  315,
1850
      321,  358,   87,  320,  316,  322,   87,  324,   87,  313,
1851
      317,  318,   87,  325,  328,   87,  323,   87,  327,  330,
1852
       87,   87,  331,   87,  326,   87,   87,   87,   87,   87,
1853
       87,  338,   87,  339,   87,  345,   87,  332,  334,  333,
1854
       87,  335,   87,  329,  336,  337,   87,  340,  348,  349,
1855
      341,  181,  342,  351,  346,   87,   87,  350,  374,   87,
1856
      347,  353,  354,  355,  343,  352,  344,   87,  356,   87,
1857
      359,  361,   87,   87,   87,  362,   87,  360,   87,  364,
1858
1859
       87,   87,  363,  357,   87,   87,  365,  367,   87,   87,
1860
       87,  366,   87,   87,   87,  369,  371,   87,   87,   87,
1861
      370,  368,  375,   87,  378,  372,  377,  379,   87,   87,
1862
      376,   87,  383,   87,  373,   87,   87,  384,   87,   87,
1863
      385,  389,   87,  380,  393,  381,  387,   87,   87,   87,
1864
       87,  382,   87,   87,  386,  388,   87,  390,  391,  392,
1865
       87,  395,  396,   87,   87,  403,  399,  400,  402,  394,
1866
      398,  397,   87,   87,   87,   87,   87,  405,  406,   87,
1867
      407,  409,   87,  401,  410,   87,   87,   87,   87,  404,
1868
       87,  175,   87,  414,   87,   87,   87,   87,   87,  437,
1869
1870
       87,  411,  417,  415,  408,  419,  430,   87,  412,   87,
1871
      413,  416,  421,   87,  422,  418,  423,  426,  424,  420,
1872
       87,   87,   87,   87,  427,   87,  425,   87,   87,   87,
1873
       87,   87,  434,   87,  435,  436,   87,  432,   87,  428,
1874
       87,  438,  431,   87,  440,  429,   87,   87,  439,   87,
1875
      442,   87,  443,   87,  441,  433,   87,  445,   87,   87,
1876
       87,  447,  444,  448,   87,   87,   87,  459,  452,  449,
1877
      454,  446,  451,  450,   87,   87,   87,  455,  456,  453,
1878
      461,   87,   87,  462,   87,  457,   87,  460,   87,   87,
1879
       87,   87,   87,   87,  468,   87,   87,   87,  469,   87,
1880
1881
       87,  471,  458,   87,   87,  467,  465,  478,  463,  490,
1882
      464,   87,  466,   87,  470,   87,  474,   87,  472,  480,
1883
      476,  473,  475,  479,   87,   87,   87,  481,   87,   87,
1884
       87,   87,  180,  500,  492,   87,  505,  477,  482,   87,
1885
       87,  506,   87,  483,  501,   87,  491,  502,  484,  516,
1886
       87,  485,  503,  504,  509,   87,  486,  487,  488,  489,
1887
       87,  507,   87,  493,   87,  494,   87,  495,   87,  508,
1888
      522,   87,   87,   87,   87,  518,   87,  496,  497,  498,
1889
      596,  499,   87,  517,   87,  510,  512,  513,  511,  519,
1890
      514,  515,   87,  520,   87,  521,   87,  523,  525,   87,
1891
1892
       87,  524,   87,   87,   87,   87,  530,   87,   87,  537,
1893
      536,  526,   87,   87,  531,   87,  532,   87,  529,  527,
1894
       87,   87,  528,   87,  619,  533,  538,  535,  539,  549,
1895
       87,  543,  534,  541,  540,  542,  544,   87,   87,  550,
1896
      545,  551,   87,  552,   87,   87,   87,   87,   87,   87,
1897
      553,  567,   87,  546,  175,  175,  547,   87,  548,   87,
1898
      554,   87,  555,   87,  569,   87,  566,  570,  556,  568,
1899
       87,  571,  557,  572,  584,  574,  590,  558,  583,   87,
1900
      559,   87,  560,  173,  561,  585,  587,   87,   87,  573,
1901
      586,   87,   87,   87,  588,   87,  593,  562,  591,   87,
1902
1903
      563,  589,  564,  595,  565,   87,   87,  575,  576,   87,
1904
      592,   87,  594,   87,   87,   87,  602,  577,  578,  579,
1905
      580,  581,  600,   87,  582,  597,  598,  599,   87,  606,
1906
       87,   87,  601,   87,  603,  604,  607,   87,  608,   87,
1907
      610,   87,  611,  605,   87,  609,   87,   87,   87,  617,
1908
       87,  613,   87,   87,   87,   87,   87,  612,  620,  171,
1909
       87,  615,  614,   87,  621,  622,  616,   87,   87,   87,
1910
      627,  628,  623,  629,  624,  618,  625,   87,   87,  626,
1911
      630,  631,   87,   87,   87,  636,  633,  634,   87,   87,
1912
       87,   87,   87,   87,   87,  652,  637,  655,  632,  642,
1913
1914
      643,   87,  635,  638,   87,  639,  641,   87,  640,  654,
1915
      170,  644,   87,  645,   87,  658,  653,  657,   87,  646,
1916
       87,  656,   87,   87,  659,  662,  660,  647,  648,   87,
1917
       87,  649,  650,  661,   87,  651,   87,  664,  666,   87,
1918
       87,   87,   87,   87,  670,  671,  668,  665,   87,  663,
1919
       87,   87,   87,  672,  673,  669,   87,   87,   87,  667,
1920
       87,  678,  676,  677,   87,   87,   87,  674,   87,  679,
1921
       87,   87,   87,  684,   87,   87,  680,  675,   87,  687,
1922
      683,   87,  689,  685,  682,  681,  688,  690,   87,  691,
1923
       87,   87,   87,  686,  696,  692,   87,  694,   87,  697,
1924
1925
       87,   87,   87,   87,   87,   87,   87,   87,   87,   87,
1926
      699,  703,  693,  701,  695,   87,   87,  710,   87,  712,
1927
      705,   87,  698,   87,  700,   87,  702,  704,  168,  709,
1928
       87,   87,  711,  706,  708,  707,  716,  713,   87,  715,
1929
      714,   87,   87,  717,   87,  718,   87,  721,   87,  719,
1930
       87,  725,  720,   87,   87,   87,  728,   87,  727,  724,
1931
      722,   87,   87,  723,   87,   87,  731,   87,  730,  734,
1932
       87,   87,   87,  726,   87,   87,  736,  738,   87,   87,
1933
      729,   87,   87,   87,  166,   87,  732,  735,  733,  737,
1934
       87,  739,  741,   87,  753,   87,  773,  740,   87,  742,
1935
1936
      752,  750,  754,  751,  743,   87,  744,   87,   87,  756,
1937
      755,  757,  745,   87,  746,   87,   87,  747,  748,   87,
1938
      761,  758,   87,  760,  749,  759,   87,  766,  765,  763,
1939
       87,   87,  764,   87,  770,   87,   87,  768,  767,   87,
1940
      762,   87,  769,   87,  775,   87,   87,  779,   87,   87,
1941
       87,   87,   87,  771,  776,  772,  778,  777,   87,  783,
1942
       87,  774,   87,  782,  787,   87,   87,  780,  786,   87,
1943
      784,  781,  175,  789,  788,  785,  790,  791,  792,   87,
1944
       87,   87,  796,   87,   87,   87,   87,   87,   87,  801,
1945
      799,   87,   87,   87,  793,  795,  804,   87,   87,  794,
1946
1947
      797,  803,  798,  805,  800,  807,  808,   87,   87,   87,
1948
      806,   87,   87,   87,   87,   87,  802,  810,   87,  809,
1949
      813,   87,  811,   87,   87,  814,  815,   87,  812,   87,
1950
      836,   87,  821,  817,  824,   87,  816,  822,   87,   87,
1951
      818,  825,   87,  819,  823,  820,  826,  827,   87,  828,
1952
       87,  829,   87,   87,  830,   87,  831,  833,   87,   87,
1953
       87,  832,   87,   87,  837,   87,   87,   87,   87,  840,
1954
      835,   87,  841,  839,   87,  845,  834,   87,  844,   87,
1955
       87,   87,  838,  847,   87,   87,   87,  851,   87,  849,
1956
      843,  842,   87,   87,   87,   87,   87,  846,  848,  850,
1957
1958
      854,  858,   87,  852,   87,   87,   87,   87,   87,  859,
1959
      856,   87,  855,  853,   87,   87,  857,  861,  898,  860,
1960
      865,   87,  862,   87,  866,  863,  864,   87,   87,  867,
1961
       87,  868,  869,  870,   87,  871,  874,  873,   87,   87,
1962
       87,   87,   87,  876,   87,  872,  880,  875,  877,   87,
1963
       87,   87,  881,   87,   87,  882,   87,   87,  879,   87,
1964
       87,  885,  887,  889,   87,   87,   87,  883,   87,  886,
1965
      878,  884,   87,  893,  890,  892,   87,   87,   87,  888,
1966
       87,  899,   87,  901,   87,  891,  897,   87,  900,   87,
1967
      895,   87,  905,  894,  896,  902,  903,   87,   87,   87,
1968
1969
      904,   87,  906,   87,   87,  912,   87,   87,  910,  907,
1970
      914,   87,  913,  908,   87,  909,   87,  915,   87,   87,
1971
      919,   87,   87,  911,  917,  920,   87,   87,   87,   87,
1972
       87,  916,  931,  183,  918,  921,  922,  923,   87,  933,
1973
      924,   87,   87,   87,  925,   87,  926,  934,  932,   87,
1974
      936,   87,  937,  927,   87,   87,  941,  939,  938,  928,
1975
      929,  930,   87,  935,   87,  945,   87,  942,   87,  943,
1976
      946,   87,  940,   87,  947,   87,   87,  949,  951,  944,
1977
       87,   87,   87,   87,   87,   87,  958,  950,   87,   87,
1978
       87,  948,   87,  959,   87,   87,   87,  960,   87,  953,
1979
1980
      954,  952,  955,  957,  956,  961,   87,   87,  968,  962,
1981
      965,   87,   87,  963,   87,  964,   87,   87,  969,  966,
1982
       87,  967,   87,   87,  971,  970,  975,   87,   87,   87,
1983
       87,   87,   87,   87,  985,  972,  181,  983,  973,  974,
1984
       87,  976,   87,  977,   87,   87,  978,  979,  980,  981,
1985
      982,   87,   87,   87,  984,  986,  987,  991,   87,  990,
1986
       87,   87,   87,  988,  989,   87,   87,   87,  995,   87,
1987
      996,   87,   87,  997,  992,  994,  999, 1000,   87,  993,
1988
       87,   87,   87,   87,   87, 1002,   87, 1001,  180, 1003,
1989
     1008,  998, 1005, 1006, 1007, 1004,   87,  175,   87,   87,
1990
1991
     1012, 1010, 1009, 1011,   87,   87,   87,   87,   87, 1015,
1992
     1018,   87, 1021, 1013,   87, 1019,   87, 1022,   87,   87,
1993
     1014, 1016,   87, 1020, 1023, 1024, 1026,   87,   87, 1017,
1994
       87,   87,   87,   87, 1029,   87, 1033,   87, 1034,   87,
1995
       87, 1025,   87, 1030,   87, 1035, 1027, 1037, 1028,   87,
1996
       87,   87,   87, 1032, 1036,   87, 1049,   87, 1031,   87,
1997
       87,   87,   87,   87,   87, 1058, 1051, 1038, 1052, 1050,
1998
     1048, 1040, 1055,   87,   87, 1039,   87, 1056, 1041, 1054,
1999
       87, 1042, 1053,   87, 1057, 1043,   87, 1059, 1044,   87,
2000
       87, 1064, 1061,   87, 1060, 1045, 1046,   87, 1047,   87,
2001
2002
       87,   87,   87, 1062,   87, 1074,   87,   87, 1077,   87,
2003
     1063,   87, 1065, 1066, 1075, 1067,  175,   87, 1068, 1073,
2004
     1076, 1079,   87, 1069, 1084, 1078, 1082, 1081,   87, 1070,
2005
     1071, 1085, 1072, 1083, 1087,   87,   87, 1080, 1086, 1088,
2006
       87,   87, 1090, 1089,   87,   87,   87, 1093,   87,   87,
2007
     1092,   87, 1095, 1094, 1097,   87, 1096,   87,   87, 1091,
2008
     1098,   87,   87,   87,   87,   87, 1101,   87,   87, 1099,
2009
       87, 1106,   87, 1105,   87,   87, 1110,   87,   87,   87,
2010
     1100, 1102,   87, 1107, 1103, 1114, 1104, 1115, 1109,   87,
2011
     1112,   87, 1108, 1116,   87, 1111,   87, 1117, 1121,   87,
2012
2013
     1120, 1113, 1118,   87, 1119,   87,   87, 1122,   87, 1125,
2014
       87,   87, 1127, 1128,   87,   87, 1126,   87,   87,   87,
2015
     1129, 1131,   87,   87, 1123, 1130, 1132,   87, 1124,   87,
2016
       87, 1134,   87,   87,   87, 1136, 1137, 1133,   87,   87,
2017
     1138, 1142,   87,   87,   87, 1145,   87, 1135,   87, 1146,
2018
       87, 1144, 1139, 1143, 1140,   87,   87,   87, 1141,   87,
2019
       87,   87,   87,   87,   87, 1149, 1147,   87,   87, 1148,
2020
     1152,   87, 1156, 1157,   87, 1150,   87, 1153, 1155, 1159,
2021
     1158,   87,   87,   87, 1154, 1151, 1160, 1165, 1161, 1162,
2022
       87, 1163, 1166,   87,   87, 1168, 1164,   87,   87,   87,
2023
2024
       87,   87,   87,   87, 1167, 1174,   87,   87, 1171, 1176,
2025
     1177,   87, 1169, 1175,   87,   87,   87, 1170,   87, 1173,
2026
     1179, 1181,   87, 1182, 1172,   87,   87, 1178,   87,   87,
2027
       87,   87,   87, 1188, 1191, 1180,   87, 1186, 1183,   87,
2028
       87, 1192,   87,   87, 1184, 1185,   87,   87, 1189, 1187,
2029
     1190, 1193, 1194, 1197, 1198,   87,   87, 1196,   87, 1201,
2030
       87, 1195,   87, 1200,   87,   87,   87,   87,   87, 1199,
2031
       87,   87,   87, 1204, 1206, 1202,   87, 1212, 1213,   87,
2032
     1215,   87, 1203,   87,   87, 1205,   87, 1207, 1218, 1209,
2033
     1208, 1210, 1211, 1214,   87, 1216, 1217, 1219,   87,   87,
2034
2035
       87,   87, 1220,   87,   87, 1227, 1224,   87, 1226, 1228,
2036
       87,   87, 1222, 1229,   87,   87,   87, 1232, 1221,   87,
2037
     1223, 1234,   87,   87,   87, 1225,   87,   87,   87, 1231,
2038
       87, 1237, 1230, 1238,   87,   87, 1245,   87, 1241, 1233,
2039
     1236, 1244, 1235, 1242,  175,   87, 1239,   87, 1240, 1243,
2040
     1246,   87,   87,   87,   87,   87, 1249,   87, 1253,   87,
2041
       87,   87, 1248,   87, 1265, 1247, 1264,   87, 1252, 1254,
2042
     1255, 1250,   87,   87, 1268,   87, 1266, 1251,   87, 1256,
2043
       87, 1257,   87,   87,   87, 1258,   87, 1259, 1267, 1337,
2044
       87, 1260, 1269, 1261, 1270, 1271, 1274, 1275, 1262, 1273,
2045
2046
     1272,   87,   87, 1263, 1278,   87, 1276,   87,   87, 1279,
2047
       87,   87, 1282,   87, 1280,   87, 1277,   87, 1285,   87,
2048
     1289, 1281, 1286,   87, 1283, 1288, 1284, 1291,   87,   87,
2049
       87,   87, 1287, 1290,   87, 1298, 1295,   87,   87, 1294,
2050
     1296,   87, 1297, 1293, 1292, 1299, 1300,   87, 1301, 1302,
2051
       87,   87,   87,   87,   87,   87,   87,   87, 1317,   87,
2052
     1303, 1314,   87,   87,   87,   87, 1313,   87, 1318, 1304,
2053
     1305,   87, 1306, 1315, 1316, 1319,   87, 1307, 1320, 1308,
2054
       87, 1321,   87,   87,   87, 1309, 1326,   87,   87, 1327,
2055
     1310, 1311,   87,   87, 1322, 1323,   87, 1312,   87, 1325,
2056
2057
     1328, 1324, 1333,   87,   87, 1329,   87, 1336, 1334, 1330,
2058
       87,   87,   87,   87, 1331, 1341, 1332, 1339,   87,   87,
2059
       87,   87,   87, 1342, 1340,   87, 1335, 1347,   87, 1338,
2060
       87, 1344,   87,   87, 1345,   87, 1346,   87, 1343, 1349,
2061
     1351,   87,   87, 1354,   87,   87,   87,   87,   87, 1348,
2062
       87, 1350,   87,   87, 1357, 1353, 1358, 1352, 1356, 1359,
2063
     1361,   87,   87, 1365, 1355, 1360,   87,   87, 1362,   87,
2064
     1364, 1368,   87,   87, 1367, 1363,   87,   87,   87,   87,
2065
       87,   87,  173,   87, 1373, 1374, 1375, 1370, 1376,   87,
2066
       87, 1369, 1366, 1372, 1371,   87, 1378, 1379, 1377, 1380,
2067
2068
       87,   87,   87,   87,   87,   87, 1384, 1385,   87, 1381,
2069
       87, 1387, 1386,   87, 1388, 1383, 1382,   87,   87, 1389,
2070
     1390,   87, 1391,   87,   87,   87, 1393,   87,   87,   87,
2071
       87, 1398,   87,   87,   87,   87, 1403,   87, 1392, 1408,
2072
     1395, 1396,   87, 1394, 1397, 1399, 1401, 1402, 1400, 1405,
2073
     1406,   87,   87, 1409, 1404,   87, 1407,   87, 1411,   87,
2074
     1410,   87,   87,   87, 1412,   87, 1413,   87,   87,   87,
2075
     1416,   87, 1415, 1417,   87, 1419,   87, 1423, 1414, 1418,
2076
     1421, 1424,   87,   87,   87,   87,   87, 1420,   87, 1427,
2077
       87, 1428,   87, 1425,   87,   87,   87, 1422, 1432, 1434,
2078
2079
      171, 1435, 1436, 1426,   87,   87, 1429,   87,   87, 1433,
2080
       87, 1430,   87, 1439, 1431, 1437,   87, 1438, 1441,   87,
2081
       87, 1440, 1443,   87,   87, 1442, 1445,   87,   87, 1447,
2082
       87,   87,   87, 1446,   87,   87, 1448,   87,   87, 1450,
2083
     1449, 1453,   87, 1444,   87, 1454,   87,   87,   87,   87,
2084
      170, 1456, 1460, 1451,   87, 1455, 1452, 1461,   87,   87,
2085
     1458, 1464,   87,   87, 1463, 1457,   87,   87, 1459, 1462,
2086
       87,   87, 1469,   87,   87,   87,   87,   87,   87,   87,
2087
      175, 1466, 1467, 1471,   87, 1465, 1476,   87, 1475, 1468,
2088
       87, 1470, 1477,   87, 1472, 1478,   87, 1474, 1479,   87,
2089
2090
     1480,   87, 1473,   87,   87,   87,   87,   87, 1484,   87,
2091
     1481, 1487,   87, 1483, 1482, 1485, 1489, 1490,   87, 1486,
2092
       87, 1497,   87,   87, 1492, 1488, 1491,   87,   87,   87,
2093
     1495,   87, 1494,   87, 1496,   87, 1493,   87, 1499,   87,
2094
       87,   87, 1502,   87,   87, 1498,   87, 1503, 1506,   87,
2095
     1500,   87,   87,   87,   87, 1509, 1501, 1508, 1504,   87,
2096
     1505, 1511, 1510,   87,   87, 1507, 1523,   87, 1515, 1512,
2097
     1513,   87, 1514,   87, 1520, 1519,   87, 1516,   87, 1517,
2098
       87, 1521, 1518, 1522,   87,   87,   87,   87, 1526,   87,
2099
       87, 1524,   87, 1533, 1525, 1530, 1529,   87,   87,   87,
2100
2101
       87,   87,   87, 1534,   87, 1527,   87, 1528,   87, 1532,
2102
     1543, 1531, 1536, 1539, 1535, 1538,   87,   87,   87,   87,
2103
       87, 1537, 1540, 1542, 1541,   87,   87,   87, 1544,   87,
2104
     1548,   87,   87,   87,   87, 1545,   87,   87, 1551, 1549,
2105
     1546,   87, 1556, 1560, 1550, 1547, 1552,   87,   87,   87,
2106
       87, 1553,   87,   87, 1554, 1555, 1557,   87, 1558,   87,
2107
       87, 1563,   87,   87,   87, 1566,   87, 1570, 1561, 1559,
2108
     1562, 1572, 1564,   87,   87,   87,   87,   87, 1565, 1567,
2109
       87, 1569,   87, 1571, 1576,   87,   87, 1568, 1575, 1573,
2110
     1574, 1577,   87, 1580, 1579,   87,   87, 1578, 1581,   87,
2111
2112
     1583,   87, 1585,   87, 1582, 1593,   87,   87, 1584,   87,
2113
     1586,   87, 1597, 1690, 1587, 1596, 1595, 1588, 1589, 1594,
2114
       87,   87, 1590,   87,   87, 1598,   87, 1599, 1591, 1601,
2115
       87, 1602, 1592, 1600,   87,   87,   87, 1604,   87, 1603,
2116
       87, 1606,   87,   87,   87, 1608, 1613, 1609, 1614, 1607,
2117
       87, 1605,   87, 1615,   87,   87, 1612,   87, 1610,   87,
2118
       87, 1611,   87, 1621, 1616, 1618,   87,   87, 1623,   87,
2119
       87, 1625, 1622, 1619,   87, 1624,   87, 1617,   87,   87,
2120
     1620,   87,   87, 1634, 1632, 1635, 1636, 1627,   87, 1626,
2121
       87,   87, 1628,   87, 1629, 1633, 1630, 1638, 1631,   87,
2122
2123
       87, 1637,   87, 1643,   87,   87, 1639, 1644,   87, 1645,
2124
       87, 1642,   87,   87, 1646,   87,   87, 1651, 1641, 1640,
2125
       87,   87, 1649, 1647,   87, 1650, 1648,   87,   87, 1653,
2126
       87,   87, 1659,   87, 1660, 1654, 1655,   87,   87,   87,
2127
       87,   87, 1652,   87,   87, 1658, 1666, 1656, 1662, 1657,
2128
     1667, 1661,   87,   87,   87, 1663,   87, 1664, 1665, 1671,
2129
       87, 1670,   87, 1673,   87,   87,   87,   87, 1675,   87,
2130
     1674, 1668, 1676,   87,   87, 1680,   87, 1672, 1677, 1669,
2131
       87, 1682,   87, 1679,   87, 1683, 1678,   87,   87,   87,
2132
       87,  168, 1684, 1688,   87,   87,   87,   87, 1693, 1691,
2133
2134
     1681,   87,   87,   87,   87,   87, 1694, 1696,   87, 1685,
2135
     1686, 1687, 1695,   87,   87, 1689, 1698, 1692,   87,   87,
2136
     1697,   87,   87, 1699, 1701,  166, 1704, 1700,   87,   87,
2137
     1705,   87, 1702, 1706, 1707,   87,   87, 1709,   87,   87,
2138
     1708,   87,   87, 1703, 1710, 1713, 1715, 1711, 1712, 1716,
2139
       87,   87,   87,   87, 1714,   87, 1717, 1719, 1718, 1720,
2140
       87,   87,   87,   87, 1723,   87,   87,   87,   87,  175,
2141
       87,   87, 1722, 1726,   87, 1732,   87, 1733,   87, 1721,
2142
     1728,   87, 1724,   87, 1729, 1727, 1725,   87, 1736, 1735,
2143
     1737, 1730,   87, 1734,   87,   87, 1738, 1731, 1742,   87,
2144
2145
     1741,   87,   87,   87,   87,   87, 1739,   87, 1747,   87,
2146
       87,   87, 1740, 1744,   87,   87, 1745, 1753,   87, 1743,
2147
     1751, 1746,   87,   87,   87, 1748,   87, 1755, 1750, 1752,
2148
     1759,   87,   87,   87, 1749, 1760,   87, 1754, 1757, 1758,
2149
       87, 1764, 1756,   87,   87,   87,   87,   87,   87, 1761,
2150
     1762, 1774, 1763, 1769, 1765, 1771, 1770,   87,   87, 1766,
2151
     1767, 1773,   87, 1768, 1772,   87,   87, 1778,   87, 1776,
2152
       87,   87, 1779,   87, 1775,   87,   87, 1777,   87,   87,
2153
     1783, 1784,   87, 1785,   87,   87,   87, 1780,   87, 1782,
2154
     1788,   87,   87, 1793,   87,   87, 1781, 1786, 1794,   87,
2155
2156
     1790, 1797, 1787,   87, 1789,   87, 1791,   87,   87, 1792,
2157
       87,   87,   87, 1795,   87, 1798,   87,   87, 1796,   87,
2158
       87, 1799, 1805, 1806, 1801, 1807, 1802, 1800,   87, 1803,
2159
       87, 1804,   87,   87,   87, 1810,   87, 1808,   87, 1813,
2160
       87,   87, 1809, 1812, 1818, 1815,   87, 1817, 1814, 1819,
2161
       87,   87,   87, 1811,   87,   87,   87, 1821, 1822,   87,
2162
     1816,   87, 1825, 1836,   87, 1820, 1827, 1823, 1824, 1826,
2163
     1828, 1829,   87,   87, 1830,   87,   87,   87,   87, 1831,
2164
     1834,   87,   87,   87,   87,   87, 1835,   87,   87, 1842,
2165
       87, 1841,   87, 1837,   87, 1838,   87, 1845, 1832, 1839,
2166
2167
     1833,   87, 1840,   87, 1844,   87, 1846, 1849, 1847, 1851,
2168
     1843, 1848, 1850,   87, 1852,   87,   87,   87, 1855,   87,
2169
     1853,   87,   87,   87,   87, 1854,   87,   87, 1859, 1864,
2170
       87, 1858,   87, 1866,   87,   87,   87, 1865, 1856,   87,
2171
     1857,   87,   87, 1860, 1871, 1861,   87, 1862, 1863,   87,
2172
       87,   87, 1867, 1874,   87, 1873, 1868, 1869,   87,   87,
2173
       87,   87,   87, 1876,   87, 1872,   87, 1870,   87,   87,
2174
     1875,   87, 1884,   87,   87,   87, 1885, 1877, 1881, 1878,
2175
     1879, 1880,   87, 1883, 1889,   87,   87, 1882, 1886, 1890,
2176
       87, 1891,   87, 1887, 1888,   87, 1892,   87,   87,   87,
2177
2178
       87, 1897,   87, 1900,   87, 1898,   87, 1895, 1893, 1901,
2179
       87,   87, 1894, 1896, 1903,   87,   87,   87, 1899, 1904,
2180
     1905, 1911,   87,   87, 1902, 1909,   87,   87, 1910,   87,
2181
       87, 1906,   87, 1914,   87,   87, 1916, 1907, 1908,   87,
2182
     1915,   87,   87, 1913, 1912, 1917,   87,   87, 1923,   87,
2183
     1922,   87, 1925,   87, 1918, 1920,   87,   87,   87, 1929,
2184
     1919,   87, 1927,   87, 1928,   87,   87, 1921,   87, 1924,
2185
     1931,   87,   87,   87, 1926, 1932, 1933,   87,   87,   87,
2186
       87, 1930, 1934, 1937, 1935,   87,   87,   87, 1940, 1936,
2187
       87, 1942,   87,   87,   87,   87,   87, 1948,   87, 1938,
2188
2189
     1946,   87, 1943,   87,   87, 1939, 1941, 1950, 1947,   87,
2190
     1949,   87, 1945, 1944,   87, 1951,   87, 1956,   87, 1952,
2191
       87,   87,   87, 1961,   87,   87, 1953, 1959,   87, 1954,
2192
       87,   87, 1957,   87, 1955, 1962, 1960,   87, 1958,   87,
2193
     1964, 1968,   87,   87, 1967, 1963, 1971,   87, 1970, 1966,
2194
     1965, 1972,   87,   87,   87, 1974, 1973,   87,  175, 1976,
2195
       87, 1969,   87,   87,   87,   87, 1975,   87,   87,   87,
2196
     1985,   87, 1986,   87, 1977,   87, 1979, 1984, 1978, 1982,
2197
     1988,   87, 1980, 1981, 1990,   87, 1992,   87,   87, 1983,
2198
       87, 1987,   87, 1989,   87, 1994, 1996, 1993,   87, 1998,
2199
2200
       87, 2000,   87, 1997, 1991,   87,   87,   87, 2003,   87,
2201
       87, 2001, 1995,   87,   87,   87, 2002,   87,   87, 2006,
2202
     1999, 2007, 2008, 2009,   87,   87, 2011,   87, 2012, 2004,
2203
       87,   87, 2005,   87,   87,   87, 2016,   87, 2017,   87,
2204
       87, 2025,   87,   87, 2013,   87, 2032,   87, 2010, 2014,
2205
     2015, 2019, 2018,   87, 2024,   87, 2021,   87, 2027, 2022,
2206
     2020,   87, 2026,   87,   87, 2033,   87, 2035, 2030, 2034,
2207
     2029, 2023, 2036,   87, 2028,   87,   87, 2038,   87, 2040,
2208
     2037,   87, 2039,   87,   87,   87,   87,   87, 2041, 2031,
2209
       87,   87, 2047, 2048, 2046, 2049, 2051, 2042,   87,   87,
2210
2211
       87,   87,   87,   87, 2043, 2050, 2044,   87, 2054,   87,
2212
     2045,   87, 2053,   87,   87,   87, 2055,   87,   87,   87,
2213
       87,   87,   87, 2068,   87,   87, 2052,   87,   87,   87,
2214
     2058, 2056, 2067,   87, 2057, 2059, 2062, 2060, 2063, 2061,
2215
     2070, 2064,   87, 2065,   87, 2066,   87, 2074, 2069,   87,
2216
       87,   87,   87,   87, 2071, 2079, 2072,   87,   87, 2073,
2217
       87, 2081, 2083,   87,   87,   87, 2076,   87, 2087, 2075,
2218
       87, 2077, 2078, 2080, 2082, 2085, 2086, 2084,   87,   87,
2219
       87,   87,   87,   87,   87,   87,   87, 2093,   87,   87,
2220
     2097, 2092, 4151, 2088, 2089,   87,   87,   87, 2094, 2091,
2221
2222
     2095, 2096, 4151, 2090, 2098, 2100, 2103, 2099,   87,   87,
2223
     2104, 2101, 2105, 2106,   87, 2109, 2102, 2107,   87,   87,
2224
     2108,   87, 2110, 2112,   87,   87,   87,   87,   87,   87,
2225
       87,   87, 2115, 2117, 2118,   87, 2111,   87, 2113,   87,
2226
     2120,   87,   87,   87,   87, 2114, 2116,   87,   87,   87,
2227
     2123, 2119, 2129, 2128, 2131, 2122, 2121, 2125,   87,   87,
2228
     2126, 2124, 2130,   87,   87,   87,   87, 2127,   87, 2132,
2229
     2137, 2139, 2133,   87,   87, 2138,   87,   87,   87, 2135,
2230
       87, 2143, 2134,   87, 2136, 2140, 2144,   87,   87, 2147,
2231
       87, 2149,   87, 2148, 2145, 2142, 2146,   87,   87, 2141,
2232
2233
       87, 2151,   87, 2154, 2152, 2150,   87, 2155,   87, 2156,
2234
       87, 2153,   87, 2157, 2161,   87, 2158,   87,   87, 2162,
2235
       87,   87,   87,   87,   87, 2168, 2166, 2159, 4151, 2163,
2236
     2160,   87, 2164, 2170,   87,   87, 2167, 2171, 2173,   87,
2237
     2165, 2169, 2174,   87, 2172,   87,   87,   87,   87,   87,
2238
     2179, 2175, 2183,   87,   87, 2176,   87, 2181,   87,   87,
2239
       87, 2178, 2180, 2182,   87,   87, 2177, 2184,   87,   87,
2240
       87,   87, 2185, 2188, 2189,   87,   87, 2190,   87, 2186,
2241
       87, 2196,   87, 2187, 2191, 2192,   87, 2198, 2193, 2199,
2242
     2203,   87, 2194,   87, 2195,   87,   87, 2202,   87, 2200,
2243
2244
       87,   87,   87, 2197, 2201, 2209, 2204, 2207,   87,   87,
2245
       87,   87,   87, 2213,   87, 2208,   87,   87, 2205,   87,
2246
     2206, 2215,   87,   87, 2216,   87, 2211,   87, 2218,   87,
2247
     2212, 2210, 2219,   87, 2220,   87, 2214,   87, 2222,  175,
2248
       87,   87, 2217, 2226, 2224,   87, 2225, 2229,   87, 2223,
2249
       87, 2227, 2221,   87, 2233,   87, 2228,   87,   87,   87,
2250
       87,   87, 2231, 2234, 2230,   87, 2236, 2238,   87,   87,
2251
       87, 2235, 2232, 2237,   87, 2244,   87, 2239,   87, 2240,
2252
       87,   87, 2248,   87,   87,   87, 2247, 2249, 2245, 2241,
2253
     2243, 2251,   87, 2242,   87, 2253, 2246,   87,   87, 2252,
2254
2255
       87,   87, 2257, 2258,   87, 2250,   87, 2255,   87,   87,
2256
       87, 2260, 2254, 2261,   87,   87, 2256,   87, 2259,   87,
2257
       87,   87,   87,   87, 2266,   87, 2267,   87, 2271,   87,
2258
       87, 2268,   87,   87, 2262, 2264,   87, 2263, 2265, 2269,
2259
     2270, 2272, 2273,   87,   87,   87, 2283, 2279, 2278, 2275,
2260
     2276, 2280,   87, 2281,   87, 2274,   87, 2277,   87,   87,
2261
       87,   87,   87, 2288,   87, 2282,   87, 2291, 2292,   87,
2262
     2293,   87,   87, 2284, 2286, 2285, 2289,   87, 2290,   87,
2263
     2287, 2295,   87, 2302, 2294,   87, 2296, 2300,   87,   87,
2264
       87, 2304,   87, 2297, 2301, 2303,   87,   87, 2298, 2306,
2265
2266
     2299,   87,   87,   87,   87,   87,   87,   87, 2309, 2311,
2267
       87, 2308, 2312,   87, 2305, 2314, 2315,   87,   87,   87,
2268
       87,   87,   87, 2320, 2307, 2318, 2319, 2313, 2322, 2310,
2269
       87,   87,   87, 2316,   87, 2321,   87,   87,   87,   87,
2270
     2317, 2330,   87, 2323, 2324, 2325,   87,   87,   87, 2333,
2271
     2326, 2334, 2327,   87, 2328, 2335,   87, 2329, 2331, 2332,
2272
     2336,   87, 2337,   87,   87, 2339, 2342, 2340, 2338,   87,
2273
       87,   87,   87,   87,   87,   87, 2349,   87, 2343, 2341,
2274
       87,   87, 2351,   87,   87, 2345,   87,   87, 2354,   87,
2275
     2344,   87, 2346, 2347,   87, 2348, 2355,   87, 2356,   87,
2276
2277
     2358,   87,   87, 2352, 2357,   87, 2350,   87, 2353, 2361,
2278
       87, 2360, 2363, 2364, 2359, 2365, 2362,   87,   87,   87,
2279
     2369,   87,   87,   87, 2366,   87,   87,   87,   87, 2375,
2280
     2376,   87, 2368, 2367, 2372, 2373,   87,   87, 2371, 2379,
2281
       87,   87, 2381, 2370, 2384,   87, 2380,   87,   87,   87,
2282
       87, 2374, 2387, 2378, 2383,   87,   87, 2385,   87,   87,
2283
     2382, 2389, 2377, 2388,   87,   87,   87,   87, 2386,   87,
2284
       87,   87, 2394,   87, 2390,   87, 2396,   87, 2399, 2392,
2285
       87, 2391, 2395,   87, 2400, 2402, 2393,   87, 2405, 2397,
2286
       87,   87,   87, 2404,   87,   87,   87,   87,   87, 2403,
2287
2288
       87, 2398, 2408, 2401,   87, 2412, 2413,   87,   87,   87,
2289
     2406, 2407,   87,   87,   87, 2410,   87, 2418, 2409, 2411,
2290
       87, 2419, 2420, 2421, 2416, 2422,   87, 2415, 2414,   87,
2291
       87, 2417,   87,   87, 2424, 2427,   87,   87, 2423,   87,
2292
       87,   87,   87, 2425,   87, 2431, 2435,   87, 2426, 4151,
2293
       87, 2429,   87,   87, 2428, 2438,   87,   87, 2430, 2440,
2294
       87, 2432, 2433,   87, 2434, 2436,   87, 2441, 2437, 2439,
2295
       87,   87, 2443,   87, 2442, 2448,   87, 2446, 2447,   87,
2296
     2450,   87, 2444, 2451, 2449, 2453, 2454, 2445, 2452,   87,
2297
       87,   87,   87,   87,   87, 2458,   87,   87, 2456,   87,
2298
2299
       87,   87,   87, 2460,   87, 2462, 2457, 2464, 2459, 2461,
2300
       87, 2466,   87,   87,   87, 2468, 2455,   87, 2469,   87,
2301
       87,  175,   87,   87, 2465, 2463, 2472, 2467,   87, 2477,
2302
       87,   87, 4151, 2470, 2473, 2474, 2476,   87,   87,   87,
2303
     2471, 2478,   87, 2479, 2480,   87, 2483, 2475,   87, 2481,
2304
     2482,   87,   87, 2486, 2484,   87,   87, 2485,   87,   87,
2305
       87, 2487, 2489, 2488,   87,   87, 2492, 2494,   87, 2490,
2306
     2491, 2493,   87,   87,   87,   87,   87, 2495,   87, 2499,
2307
       87, 4151,   87, 2503,   87,   87, 2497, 2502, 2500, 2496,
2308
     2498,   87, 2501,   87, 2504,   87, 2505,   87, 2506,   87,
2309
2310
     2507, 2508,   87,   87,   87, 2513,   87,   87, 2510,   87,
2311
     2514,   87, 2515, 2516,   87, 2509,   87,   87,   87,   87,
2312
       87, 2511,   87, 2512,   87, 2518,   87, 2517,   87, 2521,
2313
       87, 2520, 2519, 2524,   87, 2525, 2523,   87, 2527, 2528,
2314
     2522, 2530, 2526,   87,   87,   87, 2529,   87, 2531, 2533,
2315
       87,   87,   87,   87, 2534,   87, 2540, 2532,   87,   87,
2316
     2542, 2535,   87, 2536,   87,   87, 2543, 2539, 2537,   87,
2317
     2538,   87, 2547,   87,   87, 2541,   87, 2545,   87, 2544,
2318
     2549,   87, 2548,   87, 2550,   87, 2553, 2546,   87,   87,
2319
       87, 2552,   87,   87, 2558,   87, 2555,   87, 2559, 2551,
2320
2321
     2556,   87, 2554,   87,   87,   87, 2560,   87,   87,   87,
2322
     2557,   87,   87, 2562,   87, 2563, 2561, 2565, 2567, 2564,
2323
     2569,   87,   87, 2568, 2578, 2570,   87, 2579,   87,   87,
2324
       87, 2572, 2573, 2566, 2571, 2574,   87, 2577,   87, 2582,
2325
     2580, 2576,   87, 2583,   87, 2584, 2585,   87, 2575,   87,
2326
     2581,   87,   87,   87, 2589,   87, 2588, 2586,   87,   87,
2327
     2591,   87,   87,   87,   87, 2592, 2597,   87, 2593, 2587,
2328
       87, 2590, 2595,   87, 2596, 2601,   87,   87,   87, 2594,
2329
     2603,   87, 2605,   87,   87, 2599, 2598,   87,   87,   87,
2330
     2608, 2604, 2607, 2600, 2609,   87, 2602,   87,   87,   87,
2331
2332
     2610, 2614,   87,   87,   87,   87, 2618,   87, 2615,   87,
2333
     2606, 2619,   87, 2620, 2617, 2611, 2612, 2616,   87, 2613,
2334
       87,   87, 2624,   87,   87, 2625,   87,   87, 2621, 2629,
2335
       87, 2626, 2622, 2623,   87,   87,   87, 2632, 2631, 2630,
2336
     2633, 2627,   87,   87, 2635, 2636,   87, 2628, 2634,   87,
2337
       87,   87, 2639,   87, 2640,   87, 2641, 2637,   87, 2642,
2338
       87,   87,   87,   87,   87, 2638, 2644, 2646,   87, 2643,
2339
     2649,   87, 2651, 2647,   87,   87, 2648, 2652,   87,   87,
2340
     2645,   87,   87,   87, 2654,   87, 2653, 2658,   87,   87,
2341
     2659, 2655, 2650,   87, 2656, 2657,   87, 2661, 2664,   87,
2342
2343
       87, 2660, 2663,   87,   87,   87,   87,   87,   87, 2662,
2344
       87, 2672,   87,   87, 2665, 4151,   87,   87, 2666, 2673,
2345
     2668, 2667, 2670,   87, 2674, 2671,   87,   87, 2676,   87,
2346
     2669, 2677,   87, 2675, 2679,   87, 2678,   87, 2681,   87,
2347
     2684, 2683, 2680,   87,   87, 2689,   87,   87, 2691,   87,
2348
       87, 2682, 2685, 2688,   87,   87, 2690, 2686,   87, 2694,
2349
       87,   87,   87, 2695,   87, 2700,  175,   87, 2687, 2693,
2350
     2706,   87, 2692, 2696, 2702, 2704, 2697,   87, 2705, 2703,
2351
       87,   87, 2698, 2699,   87, 2707,   87,   87, 2701,   87,
2352
       87, 2712,   87,   87,   87, 2713, 2717,   87,   87, 2718,
2353
2354
       87,   87, 2716,   87,   87, 2722, 2708, 2709, 2711, 2714,
2355
     2721,   87, 2710, 2719,   87,   87,   87,   87, 2720,   87,
2356
     2715, 2725, 2729, 2724,   87, 2727, 2728,   87, 2730, 2723,
2357
       87,   87,   87, 2726,   87, 2731, 2733,   87,   87, 2732,
2358
       87,   87,   87, 2736,   87,   87,   87,   87,   87, 2740,
2359
     2734,   87,   87, 2744, 2746,   87, 2738,   87,   87,   87,
2360
     2739, 2742, 2735, 2737, 2741,   87,   87, 2743,   87, 2747,
2361
     2750, 2749, 2748, 2745,   87,   87,   87, 2752,   87,   87,
2362
     2753, 2755, 2758,   87, 2751,   87,   87, 2759, 2756,   87,
2363
       87,   87,   87, 2754,   87,   87, 2757,   87,   87,   87,
2364
2365
       87, 2769,   87, 2779, 2760, 2761, 2767,   87, 2762, 2770,
2366
       87, 2765, 2773, 2763, 2771, 2764, 2766, 2772, 2768,   87,
2367
       87,   87,   87, 2776, 2774, 2775, 2778,   87,   87,   87,
2368
       87, 2780,   87,   87,   87,   87, 2785, 2786,   87,   87,
2369
       87, 2787, 2777, 2781, 2788,   87, 2783, 2784, 2789,   87,
2370
       87, 2792,   87, 2782, 2793, 2790, 2794,   87,   87, 2795,
2371
       87, 2797, 2791,   87, 2800,   87,   87, 2796, 2801,   87,
2372
       87, 2802, 2798,   87,   87, 2799,   87,   87, 2803,   87,
2373
       87, 2809,   87, 2810,   87, 2812,   87,   87, 2806,   87,
2374
     2804,   87, 2807, 2808, 2805,   87, 2811, 2814,   87,   87,
2375
2376
     2816, 2817,   87,   87, 2815, 2813, 2818,   87,   87, 2822,
2377
       87, 2821, 2820, 2819, 2824,   87,   87,   87,   87, 2828,
2378
       87,   87, 4151, 2827, 2830,   87,   87, 2823,   87,   87,
2379
     2825,   87,   87, 2832, 2834, 2833, 2826,   87, 2835,   87,
2380
     2829, 2837,   87,   87, 2831, 2840,   87,   87, 2843,   87,
2381
     2844, 2838,   87, 2836, 2839,   87,   87,   87,   87,   87,
2382
       87, 2841,   87, 2849, 2850,   87, 2842,   87,   87,   87,
2383
     2846,   87, 2845, 2848, 2854, 2855,   87, 2861,   87, 2851,
2384
     2847, 2856, 2852, 2860, 2863,   87,   87, 2853,   87,   87,
2385
     2857, 2862,   87,   87,   87, 2865,   87, 2858, 2859,   87,
2386
2387
     2871, 4151, 2877, 2866,   87,   87, 2864, 2873,   87, 2869,
2388
     2867, 2868,   87, 2872,   87, 2874,   87,   87,   87,   87,
2389
       87, 2879, 2870, 2880, 2881,   87, 2878,   87,   87,   87,
2390
     2875, 4151, 2876, 2883, 2886,   87, 2885,   87,   87,   87,
2391
     2888, 2892, 2882, 2889, 2890, 2893, 2884,   87,   87,   87,
2392
     2896,   87, 2891,   87, 2887,   87,   87,   87, 2897,   87,
2393
     2898,   87,   87,   87, 2895, 2901,   87, 2903,   87, 2894,
2394
       87,   87, 2900,   87,   87, 2904,   87, 2905, 2909, 2906,
2395
     2907, 2902, 2899, 2910,   87,   87,   87, 3116, 2908,   87,
2396
     2911,   87,   87, 2915,   87, 2916, 2912,   87, 2917,   87,
2397
2398
     2914,   87,   87, 2921, 2920, 2913, 2918,   87, 2922,  175,
2399
     2919,   87,   87,   87, 2923, 2928,   87,   87,   87,   87,
2400
       87,   87,   87,   87, 2933, 4151,   87, 2930, 2926, 2927,
2401
     2931, 2924, 2929, 2925, 2932, 2934, 2935, 2936,   87,   87,
2402
       87,   87, 2938,   87,   87, 2939, 2943,   87, 2944,   87,
2403
     2937,   87, 2941, 2945,   87,   87, 2942,   87, 2947, 2948,
2404
       87, 2940,   87,   87, 2951, 2949, 2952,   87, 2950, 2955,
2405
       87, 2946,   87, 2954,   87,   87, 2953,   87, 2956,   87,
2406
     2958,   87,   87,   87, 2961, 2962,   87, 2957,   87,   87,
2407
       87,   87, 2966, 2964, 2965, 2959, 2967,   87,   87,   87,
2408
2409
     2963, 2960,   87, 2968, 2969,   87,   87,   87,   87, 2974,
2410
       87, 2970, 2973,   87, 2971,   87,   87,   87, 2976,   87,
2411
     2975,   87,   87,   87, 2984, 2981, 2972,   87, 2983,   87,
2412
       87,   87,   87, 2980, 2987, 2977, 2978, 2979, 2985,   87,
2413
     2986,   87, 2982,   87, 2988, 2989,   87,   87, 2994,   87,
2414
     2990, 2992,   87,   87,   87, 2998, 2999,   87,   87, 2997,
2415
     2991,   87,   87,   87, 2995, 3000,   87, 3002, 2993, 2996,
2416
       87,   87, 3001,   87, 3005,   87,   87, 3003, 3006, 3008,
2417
     3004,   87, 3007,   87,   87, 3014, 3009, 3010,   87, 3012,
2418
       87,   87,   87,   87, 3013, 3016,   87,   87,   87, 3020,
2419
2420
       87,   87, 3017, 3018, 3015,   87, 3019,   87,   87, 3011,
2421
     3024,   87,   87, 3026,   87,   87,   87,   87,   87, 3021,
2422
       87, 3022, 3029, 3030, 3023, 3031,   87, 3032,   87, 3033,
2423
       87, 3035, 3027,   87,   87,   87, 3028, 3025, 3037, 3038,
2424
     3034,   87,   87,   87,   87, 3040, 3043,   87,   87, 3036,
2425
       87,   87, 3047,   87,   87, 3041, 3042, 3046,   87, 3045,
2426
     3039, 3050,   87,   87, 3044,   87,   87,   87, 3054, 3049,
2427
     3053, 3048, 3051,   87, 3052,   87,   87,   87,   87,   87,
2428
       87, 3057,   87,   87, 3063, 3065, 3058,   87, 3055,   87,
2429
     3056, 3064,   87,   87,   87,   87,   87, 3059, 3060, 3061,
2430
2431
     3062, 3069, 3067, 3071,   87, 3066, 3070, 3068,   87, 3072,
2432
       87,   87,   87,   87,   87, 3074, 3078,   87, 3077,   87,
2433
     3073, 3080,   87, 3081,   87, 3082,   87,   87,   87, 3079,
2434
     3084, 3075, 3076,   87,   87, 3087,   87, 3085, 3086, 3083,
2435
       87, 3088,   87, 3089,   87,   87,   87,   87, 3090,   87,
2436
     3096,   87,   87, 3098,   87, 3099,   87, 3092,   87, 3101,
2437
       87,   87,   87,   87, 3091, 3095, 3093,   87, 3094, 3100,
2438
     3104, 3097,   87,   87, 3103,   87,   87, 3102, 3107, 3105,
2439
     3110,   87,   87, 3112,   87,   87,   87,   87,   87,   87,
2440
       87, 3111, 3106,   87,   87, 3108, 3109,   87, 3118, 3121,
2441
2442
     3115,  175, 3117,   87, 3123, 3119, 3114,   87,   87, 3125,
2443
       87, 3113, 3120, 3122,   87,   87, 3124,   87, 3131,   87,
2444
       87,   87, 3130, 3126, 3133,   87,   87,   87, 3127, 3137,
2445
       87, 3135, 3136, 3138,   87,   87, 3128, 3129,   87, 3134,
2446
       87, 3140,   87, 3132,   87, 3142,   87, 3139,   87, 3143,
2447
       87, 3141,   87,   87,   87,   87, 3144, 3145,   87,   87,
2448
       87,   87,   87,   87, 3155, 4151,   87, 3147,   87, 3146,
2449
     3153,   87, 3149, 3148,   87, 3159,   87, 3150, 3151, 3152,
2450
     3154,   87,   87, 3156, 3157, 3160, 3158, 3161,   87,   87,
2451
     3162, 3164,   87, 3163, 3165,   87, 3167,   87, 3166,   87,
2452
2453
       87,   87,   87,   87,   87,   87,   87,   87, 3171,   87,
2454
     3168, 3177,   87, 3178, 3180,   87,   87, 3169, 3170, 3172,
2455
     3173, 3174, 3175, 3179, 3176, 3181,   87,   87,   87, 3185,
2456
       87, 3187, 3182,   87, 3184, 3186,   87,   87,   87,   87,
2457
       87,   87,   87, 3194,   87, 3183,   87, 3193,   87,   87,
2458
       87, 3188,   87,   87, 3190, 3192, 3189,   87,   87, 3191,
2459
     3202, 3198, 3201, 3199, 3203,   87, 3195,   87, 3196, 3197,
2460
       87,   87, 3204, 3200, 3205,   87, 3207,   87,   87,   87,
2461
       87,   87,   87,   87, 3214,   87, 3206, 3209, 3213,   87,
2462
     3208,   87, 3211,   87, 3216,   87,   87,   87, 3210,   87,
2463
2464
     3221, 3212, 3215, 3222,   87,   87, 3225,   87,   87,   87,
2465
       87, 3217, 3218,   87, 3220, 3219,   87, 3224,   87, 3226,
2466
     3223,   87, 3228,   87, 3227, 3229,   87, 3231, 3230, 3234,
2467
     3232, 3233,   87,   87,   87,   87, 3235, 3238,   87,   87,
2468
       87,   87, 3241,   87,   87,   87, 3236,   87,   87, 3237,
2469
     3248,   87, 3239, 3240, 3243, 3246, 3249,   87, 3242,   87,
2470
     3252,   87,   87, 3244, 3245, 3251, 3250,   87, 3247, 3253,
2471
       87, 3255,   87,   87,   87,   87, 3257,   87, 3256, 3261,
2472
       87, 3254,   87,   87, 3263,   87,   87, 3259, 3266,   87,
2473
     3258,   87,   87,   87, 3264, 3273,   87, 3260,   87,   87,
2474
2475
       87,   87,   87, 3262, 3267, 3268, 3269, 3270, 3265, 3271,
2476
     3272, 3276,   87,   87,   87,   87,   87, 3275, 3277, 3274,
2477
     3279,   87,   87,   87,   87,   87, 3281,   87,   87, 3278,
2478
     3280, 3282,   87, 3284,   87, 3285,   87, 3287,   87, 3288,
2479
     3286, 3283,   87, 3289, 3290,   87, 3291,   87,   87,   87,
2480
       87, 3293,   87, 3292, 3294, 3296,  175, 3295,   87, 3297,
2481
     3299, 3301,   87, 3298,   87,   87,   87,   87, 3300, 3302,
2482
     3303,   87, 3305,   87, 3308,   87, 3304,   87, 3307, 3309,
2483
       87, 3306, 3310,   87,   87, 3313,   87,   87, 3315,   87,
2484
     3314, 4151,   87, 3316,   87,   87, 3311, 3317, 3312, 3320,
2485
2486
     3318,   87,   87, 3319,   87,   87, 3321,   87,   87, 3322,
2487
     3324,   87, 3323,   87, 3328, 3329,   87,   87,   87, 3326,
2488
       87,   87, 3330, 3325, 3332,   87,   87,   87, 3331,   87,
2489
     3336,   87, 3334, 3333, 3327,   87, 3337,   87, 3335,   87,
2490
       87,   87, 3338,   87, 3339,   87, 3344, 3340,   87,   87,
2491
     3342,   87, 3343, 3341, 3347, 3346,   87, 3345, 3350,   87,
2492
       87, 3348,   87,   87,   87, 3351,   87, 3349,   87, 3356,
2493
       87,   87,   87,   87,   87,   87,   87, 3361, 3357,   87,
2494
       87, 3352, 3359, 3353, 3360,   87, 3354, 3355, 3363, 3362,
2495
       87, 3358, 3365,   87,   87, 3364,   87,   87,   87, 3369,
2496
2497
     3373, 3370, 3371,   87, 3366, 3367,   87, 3374,   87, 3377,
2498
       87, 3378,   87,   87, 3368,   87,   87,   87,   87,   87,
2499
       87,   87, 3385, 3372, 3379, 3381, 3384, 3375, 3376,   87,
2500
     3382, 3383,   87, 3386,   87,   87, 3389,   87,   87,   87,
2501
     3391,   87, 3380,   87,   87,   87, 3392,   87, 3393, 3388,
2502
       87,   87, 3387, 3390,   87,   87, 3400,   87, 3395, 3397,
2503
     3399, 3396, 3394, 3402,   87, 3403,   87, 3404,   87,   87,
2504
       87,   87,   87, 3398, 3405,   87, 3406, 3401, 3407, 3408,
2505
       87,   87,   87, 3412,   87,   87, 3410, 3411, 3413,   87,
2506
       87,   87, 3409,   87, 3414,   87, 3418, 3419,   87, 3420,
2507
2508
       87, 3421,   87,   87, 3415, 3416, 3422,   87,   87, 3426,
2509
     3417, 3425,   87, 3427,   87, 3429,   87,   87, 3430,   87,
2510
     3423, 3424, 3431,   87, 3433,   87, 3428,   87,   87,   87,
2511
     3437, 3438,   87,   87, 3432,   87,   87, 3439, 3442, 3440,
2512
     3434, 3443,   87, 3436, 3441,   87, 3435,   87,   87, 3445,
2513
       87,   87,   87, 3444, 3446,   87, 3451, 3452, 3450,   87,
2514
     3453,   87,   87,   87,   87, 3447,   87,   87, 3455, 3460,
2515
     3448, 3449, 3456,   87, 3457,   87,   87,   87,   87,   87,
2516
     3461, 3458, 3463,   87, 3454, 3459,   87, 3464,   87,   87,
2517
     3469,   87, 3462, 3467,   87,   87, 3472,   87,   87,   87,
2518
2519
     3465, 3466, 3474,   87,   87,   87,   87, 3468,   87, 3471,
2520
     3475,   87, 3473, 3478, 3470, 3479, 3491, 3476,   87, 3481,
2521
     3480,   87, 3490, 3477, 3482,   87,   87, 3483, 3484,   87,
2522
       87, 3485,   87, 3486,   87, 3487,   87, 3488,   87, 3489,
2523
       87,   87,   87,   87, 3493,   87, 3492,   87, 3495, 3494,
2524
     3497,   87, 3499,   87,   87,   87, 3496, 3504,   87,   87,
2525
     3500,   87, 3498, 3505,   87,   87, 3508,   87, 3506,   87,
2526
       87,   87, 3534, 3501, 3502, 3503, 3507, 3509,   87, 3512,
2527
       87,   87, 4151, 3510, 3514,   87,   87, 3511, 3513,   87,
2528
       87, 3515, 3517,   87, 3516, 3518, 3520,   87,   87, 3519,
2529
2530
       87,   87, 3524,   87, 3525,   87,   87, 3521,   87, 3522,
2531
     3526,   87,   87,   87,   87, 3532,   87, 3527,   87, 3523,
2532
     3533,   87,   87, 3529,   87, 3535, 4151,   87, 3530, 3540,
2533
     3528, 3538,   87, 3536, 3531,   87, 3539, 3537,   87,   87,
2534
       87, 3541,   87,   87, 3542, 3546,   87, 3543, 3545, 3548,
2535
       87,   87,   87,   87,   87, 3544, 3547, 3552,   87, 3553,
2536
       87, 3555,   87, 3554,   87, 3549,   87,   87,   87,   87,
2537
       87, 3551, 3561, 3558, 3556, 3559,   87, 3550,   87,   87,
2538
     4151, 3563,   87,   87,   87, 3562,   87, 3565, 3566, 3557,
2539
     3560,   87, 3567, 3568,   87,   87,   87, 3571,   87, 3569,
2540
2541
     3564,   87, 3574, 3576,   87, 3575, 3577,   87,   87, 3570,
2542
     3573, 3572, 3578,   87,   87,   87,   87, 3579,   87,   87,
2543
     3585, 3584, 3586,   87,   87,   87,   87, 3589,   87, 3587,
2544
     3588,   87,   87,   87, 3580, 3581,   87, 3582, 3583,   87,
2545
     3595, 3593,   87,   87, 3591,   87,   87, 3597,   87, 3590,
2546
     3599,   87,   87,   87, 3592, 3598,   87, 3594, 3600,   87,
2547
     3601,   87, 3602, 3606,   87,   87,   87, 3596,   87,   87,
2548
       87, 3603, 3605, 3610,   87,   87, 3604,   87, 3607, 3608,
2549
       87, 3609,   87, 3611,   87, 3614, 3612, 3615,   87,   87,
2550
     3619,   87,   87,   87, 3613,   87, 3617, 3623,   87, 3626,
2551
2552
     3616, 3620, 3624,   87, 3627,   87,   87,   87, 3618, 3621,
2553
     3630,   87,   87, 3629, 3625, 3631,   87,   87,   87, 3622,
2554
     3628, 3634,   87,   87,   87,   87,   87, 3640,   87, 3637,
2555
       87, 3639, 3633, 3632, 3635,   87, 3643,   87,   87, 3636,
2556
       87, 3638,   87,   87, 3642, 3645,   87,   87, 3647,   87,
2557
     3641,   87,   87,   87, 3648,   87, 3653, 3646,   87, 3654,
2558
     3644,   87,   87, 3659, 3649, 3652, 3658,   87,   87,   87,
2559
     3650, 3651, 3661, 3655,   87,   87,   87,   87,   87, 3662,
2560
     3657,   87, 3656, 3665,   87, 3666,   87,   87, 3660, 3669,
2561
       87,   87, 3667,   87, 3672,   87,   87, 3663, 3671, 3675,
2562
2563
       87, 3668, 3664,   87, 3673,   87, 3679,   87,   87, 3670,
2564
       87,   87, 3677, 3674,   87, 3676, 3680, 3681,   87,   87,
2565
     3686,   87, 3683, 3678, 3684, 3682,   87, 3685,   87,   87,
2566
       87, 3690, 3691,   87, 3687, 3689,   87,   87, 3693, 3692,
2567
       87, 3696,   87,   87,   87, 3695,   87, 3694, 3688, 3699,
2568
       87, 3697, 3702,   87,   87,   87,   87,   87,   87, 3707,
2569
       87,   87, 3698,   87,   87,   87, 3703, 3700, 3701, 3711,
2570
       87, 3706, 3841, 3710, 3704, 3712,   87, 3713,   87, 3709,
2571
     3708,   87, 3705,   87,   87,   87, 3714, 3717,   87, 3716,
2572
     3718,   87, 3719,   87, 3720,   87,   87, 3715, 3722,   87,
2573
2574
       87, 3725,   87,   87, 3727,   87,   87,   87, 3726, 3723,
2575
     3729,   87, 3730,   87,   87,   87, 3721,   87, 3728,   87,
2576
       87,   87, 3737, 3738,   87, 3731, 3724,   87,   87,   87,
2577
       87,   87, 3744,   87,   87, 3732,   87, 3733, 3735, 3734,
2578
     3743,   87, 3736, 3741, 3747,   87,   87, 3740,   87, 3751,
2579
     3742,   87, 3748, 3739, 3745,   87, 3746,   87, 3750,   87,
2580
     3755, 3749,   87, 3753,   87,   87,   87,   87,   87,   87,
2581
     3758, 3752, 3759, 3761,   87, 3754, 3762,   87,   87,   87,
2582
     3766,   87, 3756, 3757, 3763,   87,   87,   87,   87, 3760,
2583
     3769,   87, 3765, 3767, 3764, 3768,   87,   87,   87,   87,
2584
2585
       87, 3770, 3772,   87, 3773, 3771,   87,   87, 3774,   87,
2586
       87, 3776, 3777,   87,   87, 3778, 3780, 3775,   87,   87,
2587
       87, 3781,   87,   87,   87, 3779,   87,   87, 3782, 3790,
2588
       87, 3791, 4151,   87, 3783, 3793, 3786, 3785, 3784, 3787,
2589
     3788,   87,   87,   87, 3789, 3796, 3797, 3792, 3794,   87,
2590
     3795, 3798,   87, 3799,   87,   87,   87, 3803,   87, 3800,
2591
       87, 3802,   87,   87, 3801, 3804, 3806,   87, 3808,   87,
2592
       87, 3810, 3811, 4151,   87,   87, 3812, 3813, 3807,   87,
2593
     3818, 3805, 3814,   87, 3815, 3816,   87,   87,   87, 3809,
2594
     3817, 3820,   87,   87,   87, 3823,   87, 3819, 3824,   87,
2595
2596
     3825, 3826,   87, 3827, 3830,   87,   87,   87, 3822,   87,
2597
     3828, 3821, 3831,   87,   87, 3832,   87,   87, 3829,   87,
2598
     3836,   87,   87,   87, 3835,   87, 3840,   87,   87,   87,
2599
       87, 3842,   87,   87,   87, 3846, 3833, 3834, 3843, 3847,
2600
     3837, 3848,   87, 3838,   87, 3844, 3845,   87, 3850,   87,
2601
     3839, 3851,   87, 3849, 3852,   87, 3853,   87,   87,   87,
2602
       87, 3859, 3861,   87, 3856,   87, 3860,   87,   87, 3857,
2603
       87, 3854, 3858, 3855,   87,   87,   87, 3868,   87, 3865,
2604
     3863, 3866,   87, 3869,   87, 3871,   87,   87, 3862,   87,
2605
     3870, 3864, 3872,   87, 3867,   87,   87, 3873, 3875,   87,
2606
2607
     3874, 3876, 3877,   87, 3878,   87,   87, 3881,   87, 3882,
2608
       87, 3883,   87,   87, 3880, 3879, 3884,   87, 3885,   87,
2609
     3886,   87, 3887,   87, 3888,   87, 3889,   87,   87, 3892,
2610
       87,   87,   87,   87,   87,   87, 3897, 3891, 3895, 3890,
2611
     3899,   87,   87,   87,   87,   87, 3904,   87, 3896,   87,
2612
     3898, 3893, 3894, 3900, 3901,   87, 3907,   87,   87,   87,
2613
     3903,   87,   87, 3902,   87, 3911,   87,   87, 3905, 3913,
2614
       87,   87, 3909, 3908, 3910,   87, 3914, 3906, 3912, 3915,
2615
       87,   87,   87, 3920,   87, 3917, 3916, 3918,   87, 3923,
2616
       87, 3922,   87, 3921,   87,   87,   87, 3919,   87, 3925,
2617
2618
       87,   87, 3931,   87, 3924,   87,   87, 3929,   87, 3933,
2619
       87, 3926, 3930,   87, 3927,   87, 3928,   87, 3936,   87,
2620
     3932,   87, 3937, 3940, 3938,   87, 3939,   87,   87,   87,
2621
     3935,   87, 3934, 3946,   87, 3947,   87, 3948,   87, 3949,
2622
       87, 3945,   87,   87, 3941,   87, 3942, 3943, 3950, 3944,
2623
       87, 3952, 3951,   87, 3953,   87, 3957,   87,   87,   87,
2624
       87,   87,   87, 3960,   87, 3954, 3961,   87, 3955, 3956,
2625
     3959,   87, 3963,   87, 3964, 3962,   87,   87,   87,   87,
2626
     3958,   87,   87,   87,   87,   87, 3965,   87, 3970, 3972,
2627
       87, 3966, 3967, 3969, 3971, 3975,   87, 3974, 3977,   87,
2628
2629
     3976,   87, 3968,   87, 3973, 3981,   87, 3978,   87, 3979,
2630
       87,   87,   87,   87, 3980,   87,   87, 3986, 3984,   87,
2631
     3990,   87, 3991, 3982,   87,   87,   87, 3983, 3992, 3994,
2632
     3988, 3985,   87, 3987, 3993,   87,   87, 3995,   87, 3989,
2633
     3996,   87, 3997,   87,   87, 3998,   87, 4000,   87,   87,
2634
     4005, 4001, 3999, 4002,   87,   87,   87,   87, 4009,   87,
2635
       87,   87, 4008, 4003, 4004, 4011,   87, 4007, 4006, 4012,
2636
       87, 4013,   87, 4014,   87,   87,   87,   87, 4017,   87,
2637
     4010, 4015, 4016,   87, 4018, 4019,   87, 4020,   87,   87,
2638
     4021, 4024,   87,   87,   87,   87,   87, 4029,   87,   87,
2639
2640
     4030,   87, 4022,   87, 4026,   87, 4033, 4034, 4023, 4025,
2641
       87, 4031,   87,   87, 4028,   87,   87,   87, 4036, 4027,
2642
     4032, 4038, 4039,   87, 4035, 4040,   87,   87,   87,   87,
2643
       87,   87, 4041,   87, 4037, 4048,   87,   87,   87, 4045,
2644
       87,   87, 4042, 4043, 4050,   87, 4052, 4047,   87,   87,
2645
     4044, 4046,   87, 4049,   87,   87, 4059,   87, 4051, 4057,
2646
     4058, 4054, 4055,   87, 4053,   87,   87,   87,   87,   87,
2647
       87, 4056,   87,   87, 4068,   87,   87, 4069,   87, 4071,
2648
     4151, 4064, 4067,   87, 4060, 4062, 4061, 4065, 4063, 4066,
2649
     4070,   87,   87,   87,   87, 4075,   87, 4072, 4073, 4074,
2650
2651
     4076,   87,   87, 4077,   87, 4079,   87, 4080,   87, 4082,
2652
       87, 4078, 4083,   87,   87,   87, 4081,   87, 4085,   87,
2653
       87, 4090,   87,   87, 4087, 4093,   87,   87, 4084, 4094,
2654
       87, 4095,   87,   87, 4086,   87, 4092,   87, 4088, 4089,
2655
     4098, 4091,   87, 4097, 4099,   87, 4100,   87,   87, 4101,
2656
       87,   87, 4096, 4102,   87, 4106,   87, 4108,   87,   87,
2657
       87, 4107,   87,   87, 4105,   87, 4103, 4110, 4151, 4104,
2658
       87, 4112, 4109,   87, 4114,   87, 4115,   87,   87, 4119,
2659
       87, 4113, 4116,   87, 4118, 4117, 4111, 4120,   87,   87,
2660
       87,   87, 4122,   87, 4121, 4123,   87,   87, 4124,   87,
2661
2662
     4125,   87, 4126,   87, 4127, 4129,   87,   87, 4131,   87,
2663
       87,   87, 4132,   87, 4135,   87, 4128, 4136,   87,   87,
2664
     4130,   87, 4139, 4140,   87,   87, 4141,   87, 4133, 4134,
2665
     4137, 4142,   87,   87, 4138, 4143,   87,   87,   87, 4151,
2666
     4144, 4151, 4145, 4146, 4147, 4151, 4148, 4149,   87, 4150,
2667
       87,   48,   48,   48,   48,   48,   48,   48,   53,   53,
2668
       53,   53,   53,   53,   53,   58,   58,   58,   58,   58,
2669
       58,   58,   64,   64,   64,   64,   64,   64,   64,   69,
2670
       69,   69,   69,   69,   69,   69,   75,   75,   75,   75,
2671
       75,   75,   75,   81,   81,   81,   81,   81,   81,   81,
2672
2673
       90,   90, 4151,   90,   90,   90,   90,  165,  165, 4151,
2674
     4151, 4151,  165,  165,  167,  167, 4151, 4151,  167, 4151,
2675
      167,  169, 4151, 4151, 4151, 4151, 4151,  169,  172,  172,
2676
     4151, 4151, 4151,  172,  172,  174, 4151, 4151, 4151, 4151,
2677
     4151,  174,  176,  176, 4151,  176,  176,  176,  176,  179,
2678
     4151, 4151, 4151, 4151, 4151,  179,  182,  182, 4151, 4151,
2679
     4151,  182,  182,   91,   91, 4151,   91,   91,   91,   91,
2680
       17, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151,
2681
     4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151,
2682
     4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151,
2683
2684
     4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151,
2685
     4151
2686
    } ;
2687
2688
static const flex_int16_t yy_chk[8112] =
2689
    {   0,
2690
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2691
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2692
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2693
        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
2694
        3,    3,    3,    4,    4,    4,    5,    5,    6,    6,
2695
        5,    3,    6,   24,    4,   24,   24,    5,   24,    6,
2696
        7,    7,    7,    7,   24,    7,    8,    8,    8,    8,
2697
       33,    8,    7,    9,    9,    9,   26,   26,    8,   10,
2698
       10,   10,   19,   29,    9,   33,   19,   29, 4159,   35,
2699
       10,   11,   11,   11,   11,   11,   11,   13,   13,   13,
2700
2701
       13,   34,   13,   11,   35,  101,   34,   29,   38,   13,
2702
       46,   46,   11,   12,   12,   12,   12,   12,   12,   14,
2703
       14,   14,   14,  101,   14,   12,   15,   15,   15,   38,
2704
       23,   14,   23,   23,   12,   23, 3296,   15,   16,   16,
2705
       16,   23,   23,   27,   27,   30,   30,   31,   31,   16,
2706
       25,   27,  113,   25,   25,   27,   31,   25,   27,   32,
2707
       30,   47,   25,   32,   25,  132,   32,   31,   52,   52,
2708
      113,   25,   28,   32,   40,   32,   47,   28,  132,   32,
2709
      148,   28,   43,   43,   28,   43,   28,   28,   40,   36,
2710
       36,   37,   37,  148,   43,   40,   37,   28,   36,   88,
2711
2712
       43,   41,   41,   88,   36,   94,   41,   44,   36,   94,
2713
       37,   44,   37,   39,   39,   42,   41,   41,   39,   41,
2714
       42,   44,   39,   42,   57,   44,   44,   57,   39, 1242,
2715
       42,   39,   45,   45,   42,   42,   93,   45,   39,   93,
2716
       63,   45,   63,   63,   74,   63,   68,   68,   71,   95,
2717
       71,   71,   73,   71,   73,   73,   95,   73,   74,   80,
2718
       71,   80,   80,   96,   80,   85,   85,   87,   97,   87,
2719
       87,   90,   87,   90,   90,   96,   90,   98,   87,  103,
2720
      102,   99,   90,   90,   99,  100,  104,   97,  100,  102,
2721
      105,  106,  104,  103,  103,  107,  108,   98,  104,  122,
2722
2723
      104,  100,  108,  109,  111,  110,  116,  114,  105,  105,
2724
      110,  112,  115,  106,  107,  108,  115,  109,  122,  110,
2725
      118,  125,  112,  112,  111,  114,  116,  117,  168,  120,
2726
      112,  168,  117,  119,  118,  120,  119,  121,  123,  119,
2727
      125,  124,  121,  123,  124,  125,  126,  127,  124,  128,
2728
      130,  127,  119,  119,  120,  129,  128,  130,  131,  133,
2729
      126,  134,  135,  123,  124,  134,  136,  131,  129,  137,
2730
      136,  139,  141,  138,  142,  129,  140,  140,  138,  133,
2731
      135,  141,  138,  145,  144,  143,  146,  137,  138,  143,
2732
      178,  139,  147,  178,  142,  147,  151,  151,  143,  144,
2733
2734
      150,  155,  149,  153,  143,  146,  147,  154,  149,  145,
2735
      147,  149,  150,  152,  151,  158,  156,  151,  160,  153,
2736
      152,  161,  155,  157,  159,  157,  154,  158,  162,  159,
2737
      160,  152,  156,  162,  157,  163,  164,  166,  166,  161,
2738
      170,  182,  170,  170,  163,  170,  157,  173,  173,  175,
2739
      164,  175,  175,  176,  175,  176,  176,  180,  176,  180,
2740
      180,  184,  180,  183,  183,  176,  184,  185,  186,  187,
2741
      188,  191,  189,  185,  190,  192,  193,  195,  194,  191,
2742
      189,  196,  185,  194,  187,  190,  186,  189,  199,  197,
2743
      202,  193,  196,  188,  192,  198,  202,  195,  197,  200,
2744
2745
      235,  198,  198,  203,  200,  201,  201,  203,  201,  203,
2746
      204,  206,  203,  199,  204,  205,  205,  208,  212,  204,
2747
      207,  235,  209,  206,  204,  207,  207,  209,  210,  203,
2748
      204,  204,  211,  210,  213,  214,  208,  215,  212,  214,
2749
      213,  216,  215,  218,  211,  217,  221,  220,  222,  219,
2750
      224,  221,  227,  222,  249,  224,  225,  216,  218,  217,
2751
      226,  219,  232,  213,  219,  220,  223,  223,  227,  228,
2752
      223,  181,  223,  230,  225,  228,  229,  229,  249,  230,
2753
      226,  231,  232,  233,  223,  230,  223,  231,  234,  233,
2754
      236,  238,  237,  238,  234,  239,  236,  237,  240,  241,
2755
2756
      246,  239,  240,  234,  242,  241,  242,  243,  244,  245,
2757
      247,  242,  248,  243,  250,  245,  247,  251,  254,  253,
2758
      246,  244,  250,  252,  253,  248,  252,  254,  255,  256,
2759
      251,  257,  258,  262,  248,  259,  260,  258,  258,  264,
2760
      259,  263,  261,  255,  266,  256,  261,  263,  265,  267,
2761
      266,  257,  270,  276,  260,  262,  268,  264,  264,  265,
2762
      269,  268,  269,  271,  274,  276,  272,  273,  275,  267,
2763
      271,  270,  272,  273,  275,  277,  278,  278,  279,  279,
2764
      280,  281,  282,  274,  282,  283,  280,  281,  285,  277,
2765
      284,  286,  287,  285,  288,  289,  291,  301,  308,  308,
2766
2767
      290,  282,  288,  286,  280,  290,  301,  292,  283,  298,
2768
      284,  287,  292,  295,  293,  289,  294,  297,  295,  291,
2769
      293,  296,  294,  297,  298,  299,  296,  300,  302,  303,
2770
      304,  306,  305,  307,  306,  307,  312,  303,  305,  299,
2771
      309,  309,  302,  310,  311,  300,  315,  311,  310,  313,
2772
      313,  314,  314,  321,  312,  304,  316,  316,  317,  318,
2773
      319,  317,  315,  318,  320,  324,  329,  329,  323,  319,
2774
      325,  316,  321,  320,  323,  326,  325,  326,  327,  324,
2775
      331,  328,  330,  332,  327,  328,  331,  330,  334,  332,
2776
      333,  335,  336,  337,  337,  338,  339,  340,  338,  341,
2777
2778
      352,  340,  328,  342,  344,  336,  334,  346,  332,  352,
2779
      333,  347,  335,  346,  339,  343,  343,  345,  341,  348,
2780
      345,  342,  344,  347,  349,  348,  350,  349,  353,  354,
2781
      356,  357,  179,  356,  354,  358,  360,  345,  350,  351,
2782
      368,  360,  360,  351,  357,  374,  353,  358,  351,  368,
2783
      359,  351,  359,  359,  363,  363,  351,  351,  351,  351,
2784
      355,  361,  421,  355,  361,  355,  362,  355,  364,  362,
2785
      374,  365,  366,  367,  369,  370,  370,  355,  355,  355,
2786
      421,  355,  375,  369,  371,  364,  365,  366,  364,  371,
2787
      367,  367,  372,  372,  373,  373,  376,  375,  377,  378,
2788
2789
      379,  376,  380,  381,  377,  386,  382,  385,  442,  387,
2790
      386,  378,  382,  383,  383,  387,  383,  391,  381,  379,
2791
      394,  388,  380,  389,  442,  383,  388,  385,  389,  394,
2792
      390,  391,  383,  390,  389,  390,  392,  393,  395,  395,
2793
      393,  396,  392,  397,  397,  398,  401,  396,  402,  403,
2794
      398,  402,  404,  393,  174,  415,  393,  405,  393,  399,
2795
      399,  408,  399,  410,  403,  411,  401,  404,  399,  402,
2796
      407,  405,  399,  407,  411,  408,  415,  399,  410,  416,
2797
      399,  400,  400,  172,  400,  412,  413,  418,  414,  407,
2798
      412,  412,  413,  419,  414,  417,  418,  400,  416,  422,
2799
2800
      400,  414,  400,  420,  400,  409,  423,  409,  409,  420,
2801
      417,  426,  419,  424,  429,  427,  426,  409,  409,  409,
2802
      409,  409,  425,  428,  409,  422,  423,  424,  425,  429,
2803
      432,  430,  425,  431,  426,  427,  430,  435,  431,  436,
2804
      433,  434,  434,  428,  437,  432,  433,  438,  439,  440,
2805
      441,  436,  445,  443,  446,  440,  449,  435,  443,  171,
2806
      447,  438,  437,  448,  444,  444,  439,  444,  451,  450,
2807
      449,  450,  445,  451,  446,  441,  447,  456,  452,  448,
2808
      452,  452,  453,  454,  455,  455,  453,  454,  457,  458,
2809
      459,  461,  460,  466,  469,  463,  456,  466,  452,  461,
2810
2811
      461,  463,  454,  457,  465,  458,  460,  464,  459,  465,
2812
      169,  461,  467,  461,  462,  469,  464,  468,  470,  462,
2813
      473,  467,  471,  468,  470,  473,  471,  462,  462,  474,
2814
      472,  462,  462,  472,  476,  462,  475,  475,  477,  477,
2815
      478,  479,  480,  481,  481,  482,  479,  476,  483,  474,
2816
      484,  482,  485,  483,  484,  480,  486,  487,  488,  478,
2817
      489,  489,  487,  488,  490,  491,  492,  485,  493,  489,
2818
      494,  495,  496,  494,  497,  500,  490,  486,  499,  497,
2819
      493,  498,  499,  495,  492,  491,  498,  500,  501,  501,
2820
      502,  503,  505,  496,  507,  502,  504,  504,  508,  508,
2821
2822
      507,  510,  511,  512,  513,  514,  515,  516,  517,  521,
2823
      511,  515,  503,  513,  505,  519,  520,  522,  523,  524,
2824
      517,  525,  510,  522,  512,  524,  514,  516,  167,  521,
2825
      526,  529,  523,  519,  520,  519,  527,  525,  528,  526,
2826
      525,  530,  527,  528,  531,  529,  532,  531,  533,  530,
2827
      534,  535,  530,  536,  539,  537,  538,  535,  537,  534,
2828
      532,  540,  538,  533,  541,  543,  540,  542,  539,  543,
2829
      544,  545,  547,  536,  546,  548,  545,  547,  549,  550,
2830
      538,  553,  554,  557,  165,  555,  541,  544,  542,  546,
2831
      556,  548,  550,  559,  556,  572,  572,  549,  551,  551,
2832
2833
      555,  553,  557,  554,  551,  558,  551,  560,  562,  559,
2834
      558,  560,  551,  564,  551,  563,  561,  551,  551,  565,
2835
      563,  561,  567,  562,  551,  561,  568,  566,  565,  564,
2836
      570,  569,  564,  566,  569,  571,  573,  567,  566,  575,
2837
      563,  577,  568,  574,  574,  576,  578,  578,  579,  580,
2838
      582,  583,  587,  570,  575,  571,  577,  576,  581,  582,
2839
      584,  573,  585,  581,  587,  588,  592,  579,  585,  589,
2840
      583,  580,  590,  589,  588,  584,  590,  591,  592,  593,
2841
      594,  595,  596,  591,  598,  597,  599,  601,  596,  601,
2842
      599,  600,  602,  603,  593,  595,  604,  604,  606,  594,
2843
2844
      597,  603,  598,  605,  600,  607,  608,  609,  611,  605,
2845
      606,  607,  608,  612,  610,  613,  602,  610,  616,  609,
2846
      613,  614,  611,  615,  617,  614,  615,  632,  612,  618,
2847
      632,  620,  619,  617,  621,  621,  616,  619,  619,  629,
2848
      617,  622,  622,  617,  620,  618,  623,  624,  623,  625,
2849
      625,  626,  626,  624,  627,  630,  628,  629,  631,  633,
2850
      627,  628,  628,  634,  633,  635,  636,  637,  638,  636,
2851
      631,  639,  637,  635,  640,  641,  630,  642,  640,  643,
2852
      644,  641,  634,  643,  645,  646,  647,  647,  648,  645,
2853
      639,  638,  649,  651,  652,  650,  653,  642,  644,  646,
2854
2855
      650,  654,  658,  648,  655,  656,  691,  654,   86,  655,
2856
      652,  660,  651,  649,  657,  661,  653,  657,  691,  656,
2857
      658,  664,  657,  659,  659,  657,  657,  662,  663,  660,
2858
      665,  661,  662,  663,  667,  664,  668,  667,  669,  672,
2859
      670,  673,  668,  670,  671,  665,  673,  669,  671,  674,
2860
      675,  676,  674,  677,  678,  675,  679,  680,  672,  681,
2861
      685,  678,  680,  682,  682,  683,  684,  676,  686,  679,
2862
      671,  677,  687,  686,  683,  685,  688,  690,  689,  681,
2863
      694,  692,  693,  694,  696,  684,  690,  692,  693,  697,
2864
      688,  699,  697,  687,  689,  695,  695,  698,  695,  700,
2865
2866
      696,  701,  698,  702,  703,  704,  708,  705,  702,  699,
2867
      706,  704,  705,  700,  707,  701,  706,  707,  710,  709,
2868
      711,  713,  712,  703,  709,  711,  711,  715,  714,  718,
2869
      719,  708,  717,   81,  710,  712,  713,  714,  717,  719,
2870
      715,  716,  720,  721,  716,  723,  716,  720,  718,  722,
2871
      722,  724,  723,  716,  725,  727,  726,  725,  724,  716,
2872
      716,  716,  726,  721,  728,  729,  731,  727,  733,  728,
2873
      729,  729,  725,  730,  730,  732,  734,  732,  734,  728,
2874
      735,  736,  737,  740,  738,  739,  741,  733,  743,  742,
2875
      744,  731,  741,  742,  745,  746,  747,  743,  751,  736,
2876
2877
      737,  735,  738,  740,  739,  744,  749,  748,  750,  745,
2878
      748,  752,  753,  746,  750,  747,  754,  755,  751,  748,
2879
      756,  749,  757,  758,  753,  752,  757,  759,  760,  761,
2880
      762,  763,  764,  766,  766,  754,   76,  764,  755,  756,
2881
      765,  758,  768,  759,  769,  771,  760,  761,  761,  762,
2882
      763,  767,  772,  770,  765,  767,  768,  772,  773,  771,
2883
      774,  776,  775,  769,  770,  777,  778,  779,  776,  782,
2884
      777,  780,  781,  778,  773,  775,  780,  781,  783,  774,
2885
      784,  785,  788,  786,  787,  783,  793,  782,   75,  784,
2886
      789,  779,  786,  787,  788,  785,  789,  790,  791,  792,
2887
2888
      793,  791,  790,  792,  794,  795,  796,  797,  798,  796,
2889
      799,  799,  801,  794,  800,  800,  803,  801,  801,  802,
2890
      795,  797,  805,  800,  802,  803,  806,  807,  808,  798,
2891
      809,  810,  806,  811,  809,  812,  813,  815,  814,  816,
2892
      817,  805,  813,  810,  814,  815,  807,  817,  808,  818,
2893
      819,  820,  827,  812,  816,  823,  826,  830,  811,  826,
2894
      833,  836,  831,  835,  838,  838,  830,  818,  831,  827,
2895
      823,  820,  835,  834,  841,  819,  821,  836,  821,  834,
2896
      837,  821,  833,  840,  837,  821,  839,  839,  821,  842,
2897
      843,  844,  841,  848,  840,  821,  821,  844,  821,  846,
2898
2899
      847,  851,  849,  842,  850,  847,  857,  854,  850,  856,
2900
      843,  845,  845,  845,  848,  845,   69,  852,  845,  846,
2901
      849,  852,  853,  845,  856,  851,  854,  853,  855,  845,
2902
      845,  857,  845,  855,  859,  858,  860,  852,  858,  859,
2903
      859,  861,  861,  860,  862,  863,  864,  864,  865,  866,
2904
      863,  867,  866,  865,  868,  868,  867,  870,  869,  862,
2905
      869,  871,  872,  873,  874,  876,  872,  875,  878,  870,
2906
      877,  877,  879,  876,  880,  881,  881,  882,  883,  884,
2907
      871,  873,  886,  878,  874,  885,  875,  886,  880,  893,
2908
      883,  885,  879,  887,  887,  882,  892,  888,  892,  890,
2909
2910
      891,  884,  888,  888,  890,  894,  891,  893,  895,  896,
2911
      899,  897,  898,  899,  900,  896,  897,  901,  898,  904,
2912
      900,  902,  902,  905,  894,  901,  903,  903,  895,  906,
2913
      907,  905,  908,  909,  910,  907,  908,  904,  911,  912,
2914
      909,  913,  913,  915,  914,  916,  916,  906,  918,  917,
2915
      919,  915,  910,  914,  911,  917,  921,  922,  912,  923,
2916
      926,  924,  925,  927,  934,  921,  918,  928,  929,  919,
2917
      924,  930,  928,  929,  933,  922,  931,  925,  927,  931,
2918
      930,  932,  935,  936,  926,  923,  932,  937,  933,  934,
2919
      938,  935,  937,  937,  939,  939,  936,  940,  941,  942,
2920
2921
      943,  944,  945,  953,  938,  945,  949,  947,  942,  947,
2922
      948,  948,  940,  945,  951,  950,  952,  941,  954,  944,
2923
      950,  952,  955,  953,  943,  956,  958,  949,  957,  959,
2924
      960,  961,  963,  959,  962,  951,  965,  957,  954,  964,
2925
      962,  963,  966,  967,  955,  956,  969,  968,  960,  958,
2926
      961,  964,  965,  968,  969,  970,  973,  967,  971,  972,
2927
      972,  966,  974,  971,  975,  976,  977,  978,  979,  970,
2928
      980,  981,  982,  975,  977,  973,  988,  983,  984,  985,
2929
      986,  987,  974,  983,  984,  976,  986,  978,  989,  980,
2930
      979,  981,  982,  985,  989,  987,  988,  990,  991,  992,
2931
2932
      993,  994,  991,  990,  995,  997,  994,  996,  996,  998,
2933
      999,  997,  993,  999, 1000,  998, 1001, 1002,  992, 1003,
2934
      993, 1004, 1004, 1002, 1005,  995, 1007, 1006, 1013, 1001,
2935
     1008, 1007, 1000, 1008, 1010, 1012, 1012, 1011, 1009, 1003,
2936
     1006, 1011, 1005, 1009, 1009, 1014, 1008, 1015, 1008, 1010,
2937
     1013, 1016, 1017, 1019, 1020, 1021, 1016, 1023, 1021, 1024,
2938
     1025, 1027, 1015, 1028, 1028, 1014, 1027, 1032, 1020, 1021,
2939
     1023, 1017, 1029, 1030, 1031, 1031, 1029, 1019, 1036, 1024,
2940
     1034, 1025, 1026, 1037, 1035, 1026, 1090, 1026, 1030, 1090,
2941
     1033, 1026, 1032, 1026, 1033, 1033, 1036, 1037, 1026, 1035,
2942
2943
     1034, 1038, 1039, 1026, 1040, 1041, 1038, 1042, 1043, 1040,
2944
     1040, 1044, 1043, 1046, 1041, 1047, 1039, 1045, 1045, 1048,
2945
     1047, 1042, 1045, 1050, 1043, 1046, 1044, 1049, 1049, 1051,
2946
     1052, 1053, 1045, 1048, 1054, 1056, 1053, 1055, 1061, 1052,
2947
     1054, 1056, 1055, 1051, 1050, 1057, 1058, 1058, 1059, 1060,
2948
     1062, 1057, 1063, 1059, 1065, 1060, 1066, 1069, 1069, 1067,
2949
     1061, 1066, 1068, 1070, 1072, 1073, 1065, 1071, 1070, 1062,
2950
     1063, 1064, 1064, 1067, 1068, 1071, 1075, 1064, 1072, 1064,
2951
     1074, 1073, 1076, 1077, 1079, 1064, 1078, 1081, 1080, 1079,
2952
     1064, 1064, 1078, 1082, 1074, 1075, 1083, 1064, 1084, 1077,
2953
2954
     1080, 1076, 1085, 1085, 1086, 1081, 1087, 1089, 1086, 1082,
2955
     1091, 1093, 1092, 1089, 1083, 1094, 1084, 1092, 1095, 1096,
2956
     1100, 1094, 1098, 1095, 1093, 1099, 1087, 1101, 1102, 1091,
2957
     1103, 1098, 1104, 1101, 1099, 1105, 1100, 1106, 1096, 1103,
2958
     1105, 1107, 1108, 1108, 1109, 1111, 1110, 1112, 1114, 1102,
2959
     1120, 1104, 1117, 1113, 1111, 1107, 1112, 1106, 1110, 1113,
2960
     1115, 1119, 1121, 1121, 1109, 1114, 1115, 1122, 1117, 1123,
2961
     1120, 1124, 1125, 1126, 1123, 1119, 1127, 1124, 1128, 1129,
2962
     1130, 1133,   64, 1134, 1129, 1130, 1133, 1126, 1134, 1135,
2963
     1143, 1125, 1122, 1128, 1127, 1136, 1136, 1137, 1135, 1138,
2964
2965
     1139, 1140, 1141, 1137, 1147, 1138, 1143, 1144, 1149, 1139,
2966
     1146, 1146, 1144, 1144, 1146, 1141, 1140, 1148, 1150, 1147,
2967
     1148, 1151, 1149, 1152, 1155, 1165, 1151, 1153, 1154, 1156,
2968
     1157, 1155, 1159, 1158, 1161, 1163, 1160, 1169, 1150, 1165,
2969
     1153, 1153, 1160, 1152, 1154, 1156, 1158, 1159, 1157, 1162,
2970
     1163, 1164, 1167, 1167, 1161, 1162, 1164, 1168, 1169, 1170,
2971
     1168, 1171, 1172, 1173, 1170, 1174, 1171, 1176, 1175, 1178,
2972
     1174, 1179, 1173, 1175, 1180, 1178, 1181, 1182, 1172, 1176,
2973
     1180, 1183, 1183, 1182, 1184, 1185, 1186, 1179, 1188, 1186,
2974
     1187, 1187, 1189, 1184, 1190, 1191, 1192, 1181, 1191, 1193,
2975
2976
       59, 1194, 1195, 1185, 1203, 1193, 1188, 1194, 1195, 1192,
2977
     1196, 1189, 1197, 1198, 1190, 1196, 1199, 1197, 1200, 1198,
2978
     1202, 1199, 1203, 1204, 1200, 1202, 1205, 1208, 1206, 1207,
2979
     1207, 1209, 1205, 1206, 1210, 1211, 1208, 1212, 1213, 1210,
2980
     1209, 1213, 1214, 1204, 1215, 1214, 1216, 1217, 1218, 1219,
2981
       58, 1216, 1220, 1211, 1222, 1215, 1212, 1221, 1220, 1223,
2982
     1218, 1224, 1224, 1221, 1223, 1217, 1225, 1226, 1219, 1222,
2983
     1227, 1228, 1229, 1230, 1231, 1232, 1229, 1233, 1235, 1236,
2984
     1241, 1226, 1227, 1231, 1238, 1225, 1237, 1237, 1236, 1228,
2985
     1239, 1230, 1238, 1240, 1232, 1239, 1243, 1235, 1240, 1244,
2986
2987
     1241, 1245, 1233, 1246, 1248, 1250, 1247, 1259, 1246, 1254,
2988
     1243, 1249, 1249, 1245, 1244, 1247, 1251, 1252, 1253, 1248,
2989
     1255, 1259, 1251, 1252, 1254, 1250, 1253, 1256, 1257, 1258,
2990
     1257, 1260, 1256, 1261, 1258, 1262, 1255, 1263, 1261, 1264,
2991
     1265, 1267, 1264, 1266, 1273, 1260, 1272, 1265, 1269, 1269,
2992
     1262, 1270, 1277, 1271, 1275, 1272, 1263, 1271, 1266, 1284,
2993
     1267, 1274, 1273, 1278, 1276, 1270, 1284, 1274, 1278, 1275,
2994
     1276, 1280, 1277, 1281, 1281, 1280, 1282, 1278, 1285, 1278,
2995
     1286, 1282, 1278, 1283, 1283, 1287, 1288, 1290, 1287, 1289,
2996
     1292, 1285, 1293, 1295, 1286, 1292, 1290, 1294, 1296, 1295,
2997
2998
     1297, 1298, 1299, 1296, 1304, 1288, 1306, 1289, 1302, 1294,
2999
     1306, 1293, 1298, 1302, 1297, 1301, 1301, 1303, 1305, 1307,
3000
     1308, 1299, 1303, 1305, 1304, 1309, 1310, 1311, 1307, 1312,
3001
     1311, 1313, 1315, 1316, 1314, 1308, 1318, 1317, 1313, 1311,
3002
     1309, 1319, 1318, 1321, 1312, 1310, 1314, 1320, 1322, 1321,
3003
     1323, 1315, 1324, 1327, 1316, 1317, 1319, 1325, 1320, 1326,
3004
     1328, 1324, 1329, 1332, 1338, 1327, 1330, 1331, 1322, 1320,
3005
     1323, 1334, 1325, 1331, 1335, 1339, 1336, 1334, 1326, 1328,
3006
     1337, 1330, 1341, 1332, 1338, 1343, 1344, 1329, 1337, 1335,
3007
     1336, 1339, 1340, 1342, 1341, 1345, 1439, 1340, 1342, 1342,
3008
3009
     1344, 1346, 1346, 1348, 1343, 1348, 1349, 1350, 1345, 1347,
3010
     1347, 1352, 1352, 1439, 1347, 1351, 1350, 1347, 1347, 1349,
3011
     1353, 1351, 1347, 1354, 1355, 1353, 1357, 1354, 1347, 1356,
3012
     1360, 1357, 1347, 1355, 1358, 1356, 1359, 1359, 1363, 1358,
3013
     1361, 1361, 1362, 1364, 1365, 1362, 1366, 1362, 1367, 1361,
3014
     1368, 1360, 1366, 1368, 1367, 1369, 1365, 1370, 1363, 1372,
3015
     1371, 1364, 1373, 1374, 1369, 1371, 1375, 1378, 1376, 1374,
3016
     1377, 1378, 1375, 1372, 1376, 1377, 1379, 1370, 1380, 1381,
3017
     1373, 1382, 1383, 1383, 1381, 1384, 1384, 1380, 1384, 1379,
3018
     1385, 1388, 1380, 1387, 1380, 1382, 1380, 1387, 1380, 1389,
3019
3020
     1390, 1385, 1391, 1392, 1392, 1399, 1388, 1393, 1393, 1394,
3021
     1395, 1391, 1396, 1397, 1394, 1394, 1398, 1399, 1390, 1389,
3022
     1400, 1402, 1397, 1395, 1401, 1398, 1396, 1403, 1404, 1401,
3023
     1405, 1406, 1407, 1408, 1408, 1402, 1403, 1414, 1407, 1409,
3024
     1410, 1411, 1400, 1415, 1413, 1406, 1414, 1404, 1410, 1405,
3025
     1415, 1409, 1412, 1416, 1417, 1411, 1418, 1412, 1413, 1419,
3026
     1419, 1418, 1420, 1421, 1421, 1422, 1423, 1427, 1423, 1425,
3027
     1422, 1416, 1425, 1426, 1428, 1429, 1429, 1420, 1426, 1417,
3028
     1430, 1431, 1431, 1428, 1432, 1432, 1427, 1433, 1434, 1435,
3029
     1436,   53, 1433, 1437, 1437, 1438, 1440, 1441, 1442, 1440,
3030
3031
     1430, 1443, 1446, 1444, 1442, 1445, 1443, 1445, 1449, 1434,
3032
     1435, 1436, 1444, 1448, 1450, 1438, 1448, 1441, 1452, 1451,
3033
     1446, 1453, 1454, 1449, 1451,   48, 1453, 1450, 1455, 1460,
3034
     1454, 1456, 1452, 1455, 1456, 1457, 1458, 1458, 1462, 1459,
3035
     1457, 1463, 1461, 1452, 1459, 1462, 1465, 1460, 1461, 1466,
3036
     1470, 1467, 1465, 1468, 1463, 1466, 1467, 1469, 1468, 1470,
3037
     1471, 1472, 1474, 1469, 1473, 1473, 1475, 1478, 1477, 1480,
3038
     1479, 1481, 1472, 1477, 1482, 1483, 1489, 1484, 1486, 1471,
3039
     1479, 1483, 1474, 1484, 1480, 1478, 1475, 1485, 1488, 1486,
3040
     1489, 1481, 1490, 1485, 1488, 1491, 1489, 1482, 1492, 1493,
3041
3042
     1491, 1494, 1495, 1496, 1492, 1498, 1490, 1497, 1497, 1499,
3043
     1500, 1502, 1490, 1494, 1504, 1501, 1495, 1503, 1503, 1493,
3044
     1501, 1496, 1505, 1507, 1508, 1498, 1509, 1505, 1500, 1502,
3045
     1510, 1511, 1512, 1514, 1499, 1510, 1510, 1504, 1508, 1509,
3046
     1515, 1514, 1507, 1513, 1516, 1517, 1519, 1521, 1518, 1511,
3047
     1512, 1523, 1513, 1518, 1515, 1519, 1518, 1523, 1524, 1516,
3048
     1517, 1521, 1520, 1517, 1520, 1525, 1526, 1527, 1528, 1525,
3049
     1529, 1530, 1527, 1527, 1524, 1531, 1532, 1526, 1533, 1534,
3050
     1531, 1532, 1535, 1533, 1537, 1536, 1539, 1528, 1540, 1530,
3051
     1536, 1541, 1542, 1542, 1543, 1544, 1529, 1534, 1543, 1545,
3052
3053
     1539, 1546, 1535, 1547, 1537, 1548, 1540, 1546, 1549, 1541,
3054
     1550, 1551, 1553, 1544, 1552, 1547, 1555, 1554, 1545, 1557,
3055
     1556, 1548, 1554, 1555, 1550, 1556, 1551, 1549, 1558, 1552,
3056
     1559, 1553, 1560, 1563, 1561, 1559, 1564, 1557, 1562, 1562,
3057
     1565, 1574, 1558, 1561, 1567, 1564, 1566, 1566, 1563, 1568,
3058
     1567, 1569, 1573, 1560, 1584, 1568, 1570, 1570, 1571, 1571,
3059
     1565, 1572, 1574, 1584, 1575, 1569, 1576, 1572, 1573, 1575,
3060
     1577, 1578, 1576, 1579, 1579, 1585, 1577, 1578, 1580, 1580,
3061
     1582, 1582, 1583, 1586, 1589, 1587, 1583, 1588, 1590, 1590,
3062
     1591, 1589, 1596, 1585, 1595, 1586, 1592, 1593, 1580, 1587,
3063
3064
     1580, 1594, 1588, 1593, 1592, 1600, 1594, 1597, 1595, 1598,
3065
     1591, 1596, 1597, 1597, 1598, 1598, 1599, 1601, 1601, 1602,
3066
     1599, 1603, 1604, 1605, 1606, 1600, 1607, 1608, 1605, 1610,
3067
     1609, 1604, 1611, 1612, 1613, 1610, 1614, 1611, 1602, 1612,
3068
     1603, 1616, 1615, 1606, 1617, 1607, 1618, 1608, 1609, 1619,
3069
     1617, 1621, 1613, 1620, 1622, 1619, 1614, 1615, 1623, 1620,
3070
     1624, 1625, 1626, 1622, 1627, 1618, 1628, 1616, 1629, 1632,
3071
     1621, 1630, 1630, 1631, 1633,   18, 1631, 1623, 1627, 1624,
3072
     1625, 1626, 1634, 1629, 1635, 1635, 1637, 1628, 1632, 1636,
3073
     1636, 1637, 1638, 1633, 1634, 1639, 1638, 1640, 1641, 1645,
3074
3075
     1642, 1645, 1647, 1647, 1648, 1645, 1649, 1641, 1639, 1648,
3076
     1651, 1650, 1640, 1642, 1650, 1652, 1653, 1654, 1645, 1651,
3077
     1652, 1658, 1655, 1657, 1649, 1656, 1656, 1658, 1657, 1659,
3078
     1660, 1653, 1663, 1661, 1665, 1662, 1663, 1654, 1655, 1661,
3079
     1662, 1664, 1666, 1660, 1659, 1664, 1667, 1668, 1670, 1670,
3080
     1669, 1672, 1674, 1675, 1665, 1667, 1669, 1676, 1674, 1678,
3081
     1666, 1679, 1676, 1677, 1677, 1678, 1685, 1668, 1686, 1672,
3082
     1681, 1681, 1683, 1687, 1675, 1683, 1684, 1684, 1690, 1692,
3083
     1689, 1679, 1685, 1689, 1686, 1691, 1693, 1695, 1692, 1687,
3084
     1694, 1694, 1696, 1697, 1699, 1698, 1703, 1700, 1702, 1690,
3085
3086
     1698, 1704, 1695, 1700, 1706, 1691, 1693, 1702, 1699, 1701,
3087
     1701, 1705, 1697, 1696, 1707, 1703, 1708, 1708, 1709, 1704,
3088
     1710, 1712, 1711, 1713, 1713, 1715, 1705, 1711, 1717, 1706,
3089
     1718, 1714, 1709, 1719, 1707, 1714, 1712, 1720, 1710, 1716,
3090
     1716, 1720, 1721, 1722, 1719, 1715, 1724, 1724, 1722, 1718,
3091
     1717, 1725, 1726, 1727, 1728, 1726, 1725, 1725, 1729, 1728,
3092
     1730, 1721, 1731, 1732, 1734, 1733, 1727, 1737, 1735, 1736,
3093
     1736, 1738, 1737, 1740, 1729, 1739, 1731, 1735, 1730, 1733,
3094
     1739, 1741, 1732, 1732, 1741, 1742, 1743, 1743, 1744, 1734,
3095
     1745, 1738, 1746, 1740, 1747, 1745, 1747, 1744, 1748, 1749,
3096
3097
     1750, 1751, 1754, 1748, 1742, 1749, 1752, 1751, 1755, 1755,
3098
     1756, 1752, 1746, 1757, 1758, 1759, 1754, 1761, 1762, 1758,
3099
     1750, 1759, 1761, 1762, 1763, 1764, 1764, 1765, 1765, 1756,
3100
     1766, 1767, 1757, 1769, 1771, 1768, 1769, 1770, 1770, 1772,
3101
     1773, 1776, 1775, 1783, 1766, 1785, 1783, 1776, 1763, 1767,
3102
     1768, 1772, 1771, 1774, 1775, 1778, 1774, 1777, 1778, 1774,
3103
     1773, 1780, 1777, 1781, 1782, 1784, 1784, 1786, 1781, 1785,
3104
     1780, 1774, 1787, 1786, 1778, 1788, 1789, 1789, 1787, 1791,
3105
     1788, 1790, 1790, 1792, 1793, 1791, 1794, 1795, 1792, 1782,
3106
     1796, 1797, 1798, 1799, 1797, 1800, 1802, 1793, 1798, 1799,
3107
3108
     1801, 1800, 1802, 1803, 1794, 1801, 1795, 1804, 1805, 1805,
3109
     1796, 1806, 1804, 1807, 1808, 1809, 1806, 1810, 1811, 1812,
3110
     1817, 1819, 1813, 1819, 1814, 1816, 1803, 1815, 1818, 1820,
3111
     1809, 1807, 1818, 1821, 1808, 1810, 1813, 1811, 1814, 1812,
3112
     1821, 1815, 1823, 1816, 1824, 1817, 1825, 1826, 1820, 1827,
3113
     1828, 1829, 1831, 1826, 1823, 1831, 1824, 1836, 1830, 1825,
3114
     1832, 1832, 1835, 1835, 1838, 1833, 1828, 1839, 1839, 1827,
3115
     1837, 1829, 1830, 1831, 1833, 1837, 1838, 1836, 1840, 1842,
3116
     1841, 1843, 1844, 1847, 1845, 1854, 1846, 1845, 1853, 1849,
3117
     1847, 1844,   17, 1840, 1841, 1848, 1851, 1859, 1845, 1843,
3118
3119
     1845, 1846,    0, 1842, 1848, 1849, 1853, 1848, 1858, 1855,
3120
     1854, 1851, 1855, 1856, 1856, 1859, 1851, 1857, 1857, 1860,
3121
     1858, 1861, 1860, 1862, 1862, 1863, 1864, 1865, 1867, 1866,
3122
     1869, 1868, 1865, 1867, 1868, 1870, 1861, 1871, 1863, 1872,
3123
     1870, 1873, 1874, 1876, 1877, 1864, 1866, 1880, 1875, 1881,
3124
     1873, 1869, 1878, 1877, 1880, 1872, 1871, 1875, 1878, 1882,
3125
     1875, 1874, 1879, 1879, 1883, 1884, 1887, 1876, 1885, 1881,
3126
     1886, 1887, 1882, 1888, 1891, 1886, 1886, 1892, 1895, 1884,
3127
     1893, 1893, 1883, 1894, 1885, 1888, 1894, 1896, 1897, 1897,
3128
     1898, 1898, 1899, 1897, 1895, 1892, 1896, 1900, 1905, 1891,
3129
3130
     1901, 1899, 1902, 1901, 1899, 1898, 1906, 1902, 1903, 1903,
3131
     1904, 1900, 1907, 1904, 1908, 1910, 1905, 1911, 1912, 1908,
3132
     1908, 1913, 1914, 1916, 1920, 1915, 1913, 1906,    0, 1910,
3133
     1907, 1915, 1911, 1917, 1917, 1924, 1914, 1918, 1920, 1919,
3134
     1912, 1916, 1921, 1918, 1919, 1922, 1925, 1926, 1921, 1928,
3135
     1927, 1922, 1930, 1934, 1929, 1924, 1927, 1929, 1930, 1932,
3136
     1935, 1926, 1928, 1929, 1936, 1937, 1925, 1932, 1939, 1938,
3137
     1951, 1940, 1934, 1937, 1938, 1942, 1941, 1939, 1943, 1935,
3138
     1944, 1945, 1945, 1936, 1940, 1941, 1952, 1946, 1942, 1947,
3139
     1951, 1949, 1943, 1946, 1944, 1947, 1948, 1950, 1950, 1948,
3140
3141
     1953, 1954, 1956, 1945, 1949, 1957, 1952, 1955, 1955, 1958,
3142
     1959, 1957, 1960, 1962, 1962, 1956, 1963, 1964, 1953, 1965,
3143
     1954, 1964, 1966, 1967, 1965, 1969, 1959, 1968, 1967, 1970,
3144
     1960, 1958, 1968, 1974, 1969, 1972, 1963, 1975, 1972, 1977,
3145
     1976, 1978, 1966, 1976, 1974, 1980, 1975, 1979, 1979, 1972,
3146
     1981, 1977, 1970, 1982, 1983, 1983, 1978, 1985, 1984, 1986,
3147
     1988, 1987, 1981, 1984, 1980, 1989, 1986, 1988, 1990, 1991,
3148
     1994, 1985, 1982, 1987, 1993, 1995, 1996, 1989, 1997, 1990,
3149
     1998, 1995, 1999, 1999, 2000, 2001, 1998, 2000, 1996, 1991,
3150
     1994, 2002, 2002, 1993, 2004, 2005, 1997, 2006, 2007, 2004,
3151
3152
     2008, 2005, 2009, 2010, 2010, 2001, 2011, 2007, 2009, 2012,
3153
     2013, 2012, 2006, 2013, 2014, 2015, 2008, 2016, 2011, 2018,
3154
     2017, 2019, 2020, 2023, 2018, 2022, 2019, 2021, 2023, 2026,
3155
     2034, 2020, 2029, 2025, 2014, 2016, 2024, 2015, 2017, 2021,
3156
     2022, 2024, 2025, 2028, 2032, 2027, 2034, 2029, 2028, 2026,
3157
     2027, 2030, 2030, 2031, 2035, 2025, 2036, 2027, 2037, 2031,
3158
     2038, 2039, 2040, 2039, 2044, 2032, 2041, 2041, 2042, 2042,
3159
     2043, 2043, 2047, 2035, 2037, 2036, 2040, 2048, 2040, 2049,
3160
     2038, 2045, 2045, 2052, 2044, 2046, 2046, 2050, 2050, 2052,
3161
     2051, 2055, 2053, 2047, 2051, 2053, 2056, 2055, 2048, 2057,
3162
3163
     2049, 2058, 2059, 2060, 2061, 2057, 2062, 2064, 2060, 2062,
3164
     2065, 2059, 2063, 2063, 2056, 2065, 2066, 2066, 2067, 2068,
3165
     2069, 2070, 2071, 2071, 2058, 2069, 2070, 2064, 2073, 2061,
3166
     2072, 2074, 2075, 2067, 2073, 2072, 2076, 2077, 2079, 2080,
3167
     2068, 2078, 2081, 2074, 2074, 2074, 2082, 2078, 2085, 2081,
3168
     2074, 2082, 2075, 2086, 2076, 2084, 2088, 2077, 2079, 2080,
3169
     2084, 2084, 2085, 2087, 2089, 2087, 2090, 2088, 2086, 2091,
3170
     2092, 2093, 2090, 2094, 2096, 2095, 2097, 2097, 2091, 2089,
3171
     2098, 2099, 2099, 2100, 2105, 2093, 2101, 2102, 2102, 2109,
3172
     2092, 2114, 2094, 2095, 2116, 2096, 2103, 2103, 2104, 2104,
3173
3174
     2108, 2108, 2110, 2100, 2105, 2117, 2098, 2113, 2101, 2111,
3175
     2111, 2110, 2114, 2115, 2109, 2116, 2113, 2118, 2119, 2115,
3176
     2120, 2120, 2121, 2122, 2117, 2125, 2124, 2123, 2126, 2126,
3177
     2127, 2127, 2119, 2118, 2123, 2124, 2128, 2129, 2122, 2131,
3178
     2134, 2132, 2133, 2121, 2136, 2131, 2132, 2135, 2133, 2139,
3179
     2136, 2125, 2140, 2129, 2135, 2137, 2142, 2137, 2140, 2145,
3180
     2134, 2142, 2128, 2141, 2141, 2143, 2144, 2146, 2139, 2147,
3181
     2148, 2150, 2147, 2149, 2143, 2151, 2149, 2152, 2152, 2145,
3182
     2153, 2144, 2148, 2154, 2153, 2155, 2146, 2156, 2158, 2150,
3183
     2159, 2155, 2157, 2157, 2158, 2163, 2160, 2164, 2161, 2156,
3184
3185
     2165, 2151, 2161, 2154, 2167, 2165, 2166, 2166, 2168, 2169,
3186
     2159, 2160, 2171, 2172, 2175, 2163, 2174, 2172, 2161, 2164,
3187
     2173, 2173, 2174, 2175, 2169, 2176, 2176, 2168, 2167, 2177,
3188
     2178, 2171, 2179, 2181, 2178, 2180, 2180, 2182, 2177, 2183,
3189
     2184, 2185, 2186, 2179, 2187, 2184, 2188, 2189, 2179,    0,
3190
     2191, 2182, 2188, 2190, 2181, 2191, 2192, 2199, 2183, 2193,
3191
     2193, 2185, 2186, 2197, 2187, 2189, 2194, 2194, 2190, 2192,
3192
     2195, 2198, 2197, 2200, 2195, 2201, 2201, 2199, 2200, 2203,
3193
     2204, 2204, 2198, 2205, 2203, 2206, 2208, 2198, 2205, 2205,
3194
     2209, 2206, 2208, 2210, 2211, 2212, 2214, 2216, 2210, 2215,
3195
3196
     2218, 2212, 2220, 2215, 2217, 2217, 2211, 2219, 2214, 2216,
3197
     2223, 2221, 2222, 2219, 2225, 2223, 2209, 2221, 2224, 2224,
3198
     2226, 2227, 2228, 2230, 2220, 2218, 2227, 2222, 2231, 2234,
3199
     2234, 2232,    0, 2225, 2228, 2230, 2232, 2242, 2235, 2241,
3200
     2226, 2235, 2236, 2236, 2237, 2237, 2240, 2231, 2238, 2238,
3201
     2239, 2239, 2240, 2243, 2241, 2244, 2246, 2242, 2245, 2243,
3202
     2247, 2244, 2246, 2245, 2252, 2249, 2250, 2252, 2254, 2247,
3203
     2249, 2250, 2250, 2253, 2255, 2256, 2259, 2253, 2257, 2257,
3204
     2260,    0, 2261, 2262, 2262, 2263, 2255, 2261, 2259, 2254,
3205
     2256, 2264, 2260, 2265, 2263, 2268, 2264, 2266, 2265, 2269,
3206
3207
     2266, 2267, 2267, 2270, 2271, 2272, 2273, 2274, 2269, 2276,
3208
     2273, 2272, 2274, 2275, 2278, 2268, 2277, 2279, 2282, 2275,
3209
     2289, 2270, 2285, 2271, 2283, 2277, 2284, 2276, 2281, 2281,
3210
     2287, 2279, 2278, 2283, 2288, 2284, 2282, 2286, 2286, 2287,
3211
     2281, 2289, 2285, 2290, 2291, 2297, 2288, 2298, 2290, 2294,
3212
     2294, 2296, 2299, 2302, 2296, 2301, 2303, 2291, 2304, 2305,
3213
     2305, 2297, 2303, 2298, 2306, 2307, 2306, 2302, 2299, 2309,
3214
     2301, 2308, 2310, 2310, 2311, 2304, 2316, 2308, 2321, 2307,
3215
     2313, 2313, 2311, 2314, 2314, 2317, 2318, 2309, 2319, 2320,
3216
     2322, 2317, 2318, 2323, 2323, 2325, 2320, 2324, 2324, 2316,
3217
3218
     2321, 2326, 2319, 2327, 2328, 2329, 2324, 2330, 2332, 2331,
3219
     2322, 2334, 2339, 2326, 2338, 2327, 2325, 2329, 2331, 2328,
3220
     2333, 2337, 2341, 2332, 2339, 2333, 2333, 2340, 2340, 2335,
3221
     2342, 2335, 2335, 2330, 2334, 2335, 2343, 2338, 2344, 2343,
3222
     2341, 2337, 2347, 2344, 2345, 2345, 2346, 2346, 2335, 2348,
3223
     2342, 2350, 2351, 2352, 2351, 2353, 2350, 2347, 2354, 2357,
3224
     2353, 2359, 2362, 2360, 2363, 2354, 2363, 2364, 2357, 2348,
3225
     2365, 2352, 2360, 2366, 2362, 2367, 2368, 2371, 2370, 2359,
3226
     2370, 2367, 2372, 2372, 2373, 2365, 2364, 2374, 2375, 2377,
3227
     2375, 2371, 2374, 2366, 2377, 2378, 2368, 2379, 2380, 2381,
3228
3229
     2378, 2382, 2385, 2383, 2384, 2387, 2386, 2382, 2383, 2389,
3230
     2373, 2386, 2386, 2387, 2385, 2379, 2380, 2384, 2390, 2381,
3231
     2394, 2391, 2392, 2392, 2393, 2393, 2395, 2396, 2389, 2397,
3232
     2402, 2394, 2390, 2391, 2398, 2397, 2399, 2400, 2399, 2398,
3233
     2401, 2395, 2407, 2400, 2403, 2404, 2401, 2396, 2402, 2405,
3234
     2403, 2404, 2406, 2406, 2407, 2408, 2408, 2405, 2409, 2409,
3235
     2410, 2411, 2412, 2414, 2415, 2405, 2411, 2414, 2416, 2410,
3236
     2416, 2417, 2418, 2415, 2419, 2420, 2415, 2418, 2418, 2421,
3237
     2412, 2423, 2425, 2424, 2420, 2426, 2419, 2425, 2428, 2429,
3238
     2426, 2421, 2417, 2430, 2423, 2424, 2432, 2429, 2431, 2431,
3239
3240
     2433, 2428, 2430, 2434, 2435, 2436, 2439, 2441, 2437, 2429,
3241
     2438, 2439, 2442, 2443, 2432,    0, 2447, 2454, 2433, 2441,
3242
     2435, 2434, 2437, 2444, 2442, 2438, 2445, 2446, 2444, 2449,
3243
     2436, 2445, 2451, 2443, 2447, 2453, 2446, 2455, 2451, 2456,
3244
     2454, 2453, 2449, 2457, 2458, 2459, 2459, 2460, 2461, 2461,
3245
     2463, 2451, 2455, 2458, 2462, 2464, 2460, 2456, 2465, 2464,
3246
     2466, 2467, 2468, 2465, 2470, 2471, 2472, 2476, 2457, 2463,
3247
     2476, 2471, 2462, 2466, 2473, 2474, 2467, 2478, 2475, 2473,
3248
     2473, 2474, 2468, 2470, 2475, 2478, 2479, 2481, 2472, 2483,
3249
     2484, 2485, 2485, 2487, 2486, 2486, 2488, 2488, 2489, 2489,
3250
3251
     2491, 2490, 2487, 2496, 2492, 2494, 2479, 2481, 2484, 2486,
3252
     2492, 2494, 2483, 2490, 2495, 2498, 2497, 2501, 2491, 2505,
3253
     2486, 2497, 2501, 2496, 2499, 2499, 2500, 2500, 2502, 2495,
3254
     2507, 2504, 2506, 2498, 2502, 2504, 2506, 2509, 2510, 2505,
3255
     2511, 2512, 2513, 2510, 2514, 2516, 2515, 2517, 2518, 2514,
3256
     2507, 2519, 2524, 2518, 2520, 2520, 2512, 2522, 2525, 2526,
3257
     2513, 2516, 2509, 2511, 2515, 2521, 2523, 2517, 2527, 2521,
3258
     2524, 2523, 2522, 2519, 2528, 2530, 2529, 2526, 2531, 2534,
3259
     2527, 2529, 2532, 2532, 2525, 2535, 2536, 2534, 2530, 2537,
3260
     2538, 2539, 2540, 2528, 2542, 2541, 2531, 2543, 2556, 2550,
3261
3262
     2545, 2544, 2548, 2556, 2535, 2536, 2542, 2544, 2537, 2545,
3263
     2551, 2540, 2550, 2538, 2546, 2539, 2541, 2548, 2543, 2552,
3264
     2546, 2553, 2554, 2553, 2551, 2552, 2555, 2555, 2557, 2559,
3265
     2558, 2557, 2560, 2566, 2561, 2562, 2562, 2563, 2563, 2564,
3266
     2567, 2564, 2554, 2558, 2565, 2565, 2560, 2561, 2566, 2568,
3267
     2569, 2569, 2573, 2559, 2569, 2567, 2571, 2571, 2572, 2572,
3268
     2574, 2574, 2568, 2575, 2576, 2576, 2578, 2573, 2577, 2577,
3269
     2581, 2578, 2575, 2580, 2582, 2575, 2583, 2589, 2580, 2584,
3270
     2586, 2587, 2587, 2588, 2588, 2590, 2590, 2591, 2583, 2593,
3271
     2581, 2599, 2584, 2586, 2582, 2594, 2589, 2592, 2592, 2597,
3272
3273
     2594, 2595, 2595, 2598, 2593, 2591, 2596, 2596, 2600, 2600,
3274
     2601, 2599, 2598, 2597, 2602, 2602, 2603, 2604, 2606, 2607,
3275
     2607, 2608,    0, 2606, 2609, 2609, 2610, 2601, 2611, 2612,
3276
     2603, 2613, 2616, 2611, 2613, 2612, 2604, 2614, 2614, 2617,
3277
     2608, 2615, 2615, 2618, 2610, 2618, 2620, 2621, 2622, 2622,
3278
     2623, 2616, 2625, 2614, 2617, 2626, 2623, 2627, 2628, 2629,
3279
     2631, 2620, 2632, 2629, 2630, 2630, 2621, 2633, 2637, 2634,
3280
     2626, 2635, 2625, 2628, 2634, 2635, 2638, 2638, 2636, 2631,
3281
     2627, 2636, 2632, 2637, 2640, 2640, 2641, 2633, 2642, 2643,
3282
     2636, 2638, 2644, 2645, 2646, 2642, 2647, 2636, 2636, 2648,
3283
3284
     2648,    0, 2653, 2643, 2649, 2650, 2641, 2650, 2653, 2646,
3285
     2644, 2645, 2651, 2649, 2654, 2651, 2655, 2658, 2656, 2657,
3286
     2659, 2655, 2647, 2656, 2657, 2660, 2654, 2661, 2663, 2662,
3287
     2651,    0, 2651, 2659, 2662, 2665, 2661, 2668, 2666, 2667,
3288
     2665, 2669, 2658, 2666, 2667, 2670, 2660, 2669, 2671, 2672,
3289
     2673, 2670, 2668, 2674, 2663, 2675, 2673, 2676, 2674, 2677,
3290
     2675, 2679, 2678, 2917, 2672, 2678, 2681, 2680, 2682, 2671,
3291
     2683, 2684, 2677, 2680, 2685, 2681, 2690, 2682, 2686, 2683,
3292
     2684, 2679, 2676, 2687, 2686, 2692, 2688, 2917, 2685, 2687,
3293
     2688, 2693, 2694, 2694, 2699, 2695, 2690, 2696, 2696, 2697,
3294
3295
     2693, 2695, 2698, 2699, 2698, 2692, 2696, 2700, 2700, 2701,
3296
     2697, 2702, 2704, 2705, 2701, 2706, 2706, 2707, 2708, 2711,
3297
     2714, 2709, 2715, 2713, 2711,    0, 2710, 2708, 2704, 2705,
3298
     2709, 2702, 2707, 2702, 2710, 2713, 2714, 2715, 2716, 2718,
3299
     2719, 2720, 2718, 2721, 2722, 2719, 2723, 2723, 2724, 2724,
3300
     2716, 2726, 2721, 2725, 2725, 2736, 2722, 2727, 2727, 2729,
3301
     2729, 2720, 2730, 2731, 2732, 2730, 2733, 2734, 2731, 2736,
3302
     2732, 2726, 2733, 2735, 2735, 2738, 2734, 2737, 2737, 2739,
3303
     2739, 2740, 2741, 2742, 2742, 2743, 2744, 2738, 2745, 2748,
3304
     2747, 2743, 2748, 2745, 2747, 2740, 2749, 2749, 2750, 2751,
3305
3306
     2744, 2741, 2752, 2750, 2751, 2753, 2754, 2757, 2755, 2756,
3307
     2756, 2752, 2755, 2759, 2753, 2760, 2761, 2762, 2759, 2763,
3308
     2757, 2764, 2765, 2766, 2767, 2764, 2754, 2772, 2766, 2770,
3309
     2767, 2773, 2768, 2763, 2770, 2760, 2761, 2762, 2768, 2769,
3310
     2769, 2774, 2765, 2771, 2771, 2772, 2775, 2776, 2777, 2777,
3311
     2773, 2775, 2779, 2780, 2781, 2782, 2783, 2784, 2787, 2781,
3312
     2774, 2782, 2783, 2789, 2779, 2784, 2790, 2787, 2776, 2780,
3313
     2785, 2796, 2785, 2791, 2791, 2792, 2795, 2789, 2792, 2795,
3314
     2790, 2793, 2793, 2798, 2797, 2803, 2796, 2797, 2799, 2799,
3315
     2802, 2803, 2804, 2806, 2802, 2805, 2805, 2808, 2807, 2811,
3316
3317
     2811, 2813, 2806, 2807, 2804, 2819, 2808, 2815, 2816, 2798,
3318
     2819, 2820, 2821, 2821, 2822, 2823, 2835, 2825, 2826, 2813,
3319
     2832, 2815, 2825, 2826, 2816, 2827, 2827, 2829, 2829, 2831,
3320
     2833, 2833, 2822, 2834, 2836, 2831, 2823, 2820, 2835, 2836,
3321
     2832, 2838, 2839, 2840, 2841, 2839, 2842, 2842, 2844, 2834,
3322
     2845, 2846, 2847, 2848, 2849, 2840, 2841, 2846, 2847, 2845,
3323
     2838, 2851, 2851, 2852, 2844, 2853, 2855, 2854, 2855, 2849,
3324
     2854, 2848, 2852, 2856, 2853, 2857, 2858, 2859, 2860, 2861,
3325
     2866, 2858, 2862, 2864, 2864, 2866, 2859, 2867, 2856, 2872,
3326
     2857, 2865, 2865, 2868, 2869, 2873, 2870, 2860, 2861, 2861,
3327
3328
     2862, 2870, 2868, 2872, 2871, 2867, 2871, 2869, 2874, 2873,
3329
     2875, 2876, 2877, 2878, 2880, 2875, 2879, 2879, 2878, 2886,
3330
     2874, 2881, 2881, 2882, 2882, 2883, 2883, 2884, 2885, 2880,
3331
     2885, 2876, 2877, 2887, 2888, 2888, 2891, 2886, 2887, 2884,
3332
     2889, 2889, 2890, 2890, 2892, 2893, 2894, 2895, 2891, 2896,
3333
     2897, 2897, 2898, 2899, 2899, 2900, 2900, 2893, 2901, 2902,
3334
     2902, 2903, 2904, 2905, 2892, 2896, 2894, 2906, 2895, 2901,
3335
     2905, 2898, 2907, 2908, 2904, 2909, 2910, 2903, 2908, 2906,
3336
     2911, 2911, 2912, 2913, 2913, 2914, 2915, 2916, 2918, 2919,
3337
     2921, 2912, 2907, 2920, 2926, 2909, 2910, 2922, 2919, 2922,
3338
3339
     2916, 2923, 2918, 2924, 2924, 2920, 2915, 2925, 2927, 2926,
3340
     2929, 2914, 2921, 2923, 2930, 2931, 2925, 2932, 2933, 2933,
3341
     2934, 2935, 2932, 2927, 2935, 2936, 2937, 2938, 2929, 2939,
3342
     2939, 2937, 2938, 2940, 2940, 2941, 2930, 2931, 2950, 2936,
3343
     2942, 2942, 2946, 2934, 2947, 2947, 2951, 2941, 2949, 2949,
3344
     2952, 2946, 2953, 2955, 2956, 2957, 2950, 2951, 2958, 2959,
3345
     2961, 2960, 2962, 2963, 2962,    0, 2964, 2953, 2965, 2952,
3346
     2960, 2971, 2956, 2955, 2966, 2966, 2970, 2957, 2958, 2959,
3347
     2961, 2968, 2972, 2963, 2964, 2968, 2965, 2969, 2969, 2975,
3348
     2970, 2972, 2977, 2971, 2973, 2973, 2976, 2976, 2975, 2978,
3349
3350
     2979, 2980, 2982, 2983, 2981, 2985, 2984, 2986, 2980, 2987,
3351
     2977, 2986, 2991, 2987, 2989, 2989, 2988, 2978, 2979, 2981,
3352
     2982, 2983, 2984, 2988, 2985, 2990, 2990, 2992, 2993, 2995,
3353
     2995, 2997, 2991, 2998, 2993, 2996, 2996, 2997, 2999, 3000,
3354
     3001, 3002, 3003, 3004, 3004, 2992, 3005, 3003, 3006, 3007,
3355
     3008, 2998, 3009, 3010, 3000, 3002, 2999, 3011, 3012, 3001,
3356
     3012, 3008, 3011, 3009, 3013, 3013, 3005, 3017, 3006, 3007,
3357
     3014, 3019, 3014, 3010, 3015, 3015, 3018, 3018, 3021, 3022,
3358
     3023, 3024, 3027, 3025, 3026, 3026, 3017, 3021, 3025, 3028,
3359
     3019, 3029, 3023, 3030, 3028, 3033, 3034, 3035, 3022, 3038,
3360
3361
     3035, 3024, 3027, 3036, 3036, 3037, 3039, 3039, 3040, 3041,
3362
     3044, 3029, 3030, 3045, 3034, 3033, 3049, 3038, 3042, 3040,
3363
     3037, 3046, 3042, 3051, 3041, 3044, 3047, 3046, 3045, 3049,
3364
     3047, 3048, 3048, 3052, 3053, 3056, 3051, 3054, 3054, 3055,
3365
     3057, 3058, 3056, 3059, 3065, 3060, 3052, 3061, 3062, 3053,
3366
     3063, 3063, 3055, 3055, 3058, 3061, 3065, 3066, 3057, 3068,
3367
     3068, 3067, 3070, 3059, 3060, 3067, 3066, 3073, 3062, 3069,
3368
     3069, 3071, 3071, 3072, 3074, 3075, 3073, 3076, 3072, 3077,
3369
     3077, 3070, 3079, 3083, 3083, 3084, 3085, 3075, 3086, 3086,
3370
     3074, 3087, 3088, 3089, 3084, 3093, 3093, 3076, 3090, 3094,
3371
3372
     3091, 3092, 3095, 3079, 3087, 3088, 3089, 3090, 3085, 3091,
3373
     3092, 3097, 3097, 3100, 3102, 3103, 3104, 3095, 3100, 3094,
3374
     3103, 3105, 3107, 3106, 3108, 3111, 3105, 3109, 3115, 3102,
3375
     3104, 3106, 3113, 3108, 3114, 3109, 3119, 3113, 3121, 3114,
3376
     3111, 3107, 3125, 3115, 3116, 3116, 3117, 3117, 3118, 3120,
3377
     3126, 3119, 3123, 3118, 3120, 3122, 3122, 3121, 3124, 3123,
3378
     3125, 3127, 3130, 3124, 3128, 3129, 3133, 3127, 3126, 3128,
3379
     3129, 3132, 3132, 3134, 3135, 3135, 3130, 3139, 3134, 3136,
3380
     3136, 3133, 3139, 3140, 3141, 3142, 3142, 3143, 3144, 3147,
3381
     3143,    0, 3145, 3144, 3144, 3146, 3140, 3145, 3141, 3148,
3382
3383
     3146, 3152, 3149, 3147, 3150, 3148, 3149, 3151, 3153, 3150,
3384
     3152, 3154, 3151, 3155, 3156, 3157, 3159, 3158, 3166, 3154,
3385
     3156, 3157, 3158, 3153, 3160, 3160, 3162, 3163, 3159, 3171,
3386
     3166, 3168, 3163, 3162, 3155, 3164, 3168, 3169, 3164, 3170,
3387
     3172, 3173, 3169, 3174, 3170, 3175, 3175, 3171, 3176, 3182,
3388
     3173, 3177, 3174, 3172, 3178, 3177, 3179, 3176, 3183, 3184,
3389
     3178, 3179, 3187, 3188, 3183, 3184, 3189, 3182, 3190, 3191,
3390
     3191, 3192, 3193, 3195, 3198, 3196, 3197, 3197, 3192, 3199,
3391
     3200, 3187, 3195, 3188, 3196, 3202, 3189, 3190, 3199, 3198,
3392
     3204, 3193, 3201, 3201, 3206, 3200, 3208, 3209, 3211, 3208,
3393
3394
     3212, 3209, 3210, 3210, 3202, 3204, 3212, 3213, 3215, 3217,
3395
     3216, 3218, 3218, 3213, 3206, 3217, 3219, 3220, 3224, 3227,
3396
     3221, 3223, 3227, 3211, 3219, 3221, 3226, 3215, 3216, 3228,
3397
     3223, 3224, 3226, 3228, 3229, 3230, 3231, 3231, 3232, 3234,
3398
     3234, 3235, 3220, 3236, 3237, 3239, 3235, 3240, 3236, 3230,
3399
     3241, 3242, 3229, 3232, 3245, 3243, 3244, 3244, 3239, 3241,
3400
     3243, 3240, 3237, 3246, 3246, 3247, 3247, 3249, 3249, 3252,
3401
     3250, 3251, 3256, 3242, 3250, 3258, 3251, 3245, 3252, 3254,
3402
     3254, 3257, 3260, 3259, 3262, 3263, 3257, 3258, 3259, 3259,
3403
     3264, 3275, 3256, 3277, 3260, 3265, 3265, 3267, 3267, 3268,
3404
3405
     3268, 3269, 3269, 3270, 3262, 3263, 3270, 3271, 3272, 3275,
3406
     3264, 3274, 3274, 3277, 3278, 3279, 3279, 3280, 3280, 3282,
3407
     3271, 3272, 3281, 3281, 3283, 3283, 3278, 3284, 3285, 3286,
3408
     3287, 3288, 3288, 3289, 3282, 3293, 3287, 3289, 3293, 3292,
3409
     3284, 3294, 3298, 3286, 3292, 3292, 3285, 3294, 3295, 3297,
3410
     3299, 3300, 3301, 3295, 3297, 3297, 3302, 3303, 3301, 3305,
3411
     3304, 3314, 3302, 3303, 3306, 3298, 3304, 3317, 3306, 3314,
3412
     3299, 3300, 3307, 3307, 3310, 3310, 3311, 3315, 3312, 3318,
3413
     3315, 3311, 3318, 3320, 3305, 3312, 3319, 3319, 3321, 3322,
3414
     3323, 3323, 3317, 3321, 3324, 3325, 3326, 3326, 3327, 3328,
3415
3416
     3320, 3320, 3328, 3329, 3330, 3331, 3342, 3322, 3335, 3325,
3417
     3328, 3343, 3327, 3331, 3324, 3333, 3343, 3329, 3345, 3334,
3418
     3333, 3333, 3342, 3330, 3334, 3334, 3344, 3335, 3336, 3336,
3419
     3337, 3337, 3338, 3338, 3339, 3339, 3340, 3340, 3341, 3341,
3420
     3346, 3347, 3348, 3350, 3345, 3349, 3344, 3351, 3347, 3346,
3421
     3349, 3352, 3351, 3353, 3354, 3355, 3348, 3357, 3357, 3390,
3422
     3352, 3360, 3350, 3358, 3358, 3359, 3361, 3361, 3359, 3364,
3423
     3369, 3362, 3390, 3353, 3354, 3355, 3360, 3362, 3363, 3366,
3424
     3366, 3367,    0, 3363, 3368, 3368, 3373, 3364, 3367, 3370,
3425
     3374, 3369, 3372, 3372, 3370, 3373, 3375, 3375, 3376, 3374,
3426
3427
     3377, 3379, 3380, 3380, 3381, 3381, 3382, 3376, 3383, 3377,
3428
     3382, 3384, 3385, 3386, 3387, 3388, 3391, 3383, 3392, 3379,
3429
     3388, 3388, 3393, 3385, 3396, 3391,    0, 3394, 3386, 3396,
3430
     3384, 3394, 3399, 3392, 3387, 3395, 3395, 3393, 3397, 3398,
3431
     3401, 3397, 3407, 3405, 3398, 3406, 3406, 3399, 3405, 3409,
3432
     3409, 3410, 3411, 3412, 3416, 3401, 3407, 3414, 3414, 3415,
3433
     3415, 3417, 3418, 3416, 3422, 3410, 3424, 3417, 3423, 3430,
3434
     3426, 3412, 3427, 3423, 3418, 3424, 3428, 3411, 3427, 3432,
3435
        0, 3430, 3434, 3435, 3437, 3428, 3442, 3434, 3435, 3422,
3436
     3426, 3436, 3436, 3437, 3439, 3440, 3444, 3442, 3443, 3439,
3437
3438
     3432, 3445, 3445, 3447, 3447, 3445, 3448, 3448, 3450, 3440,
3439
     3444, 3443, 3449, 3449, 3451, 3452, 3455, 3450, 3453, 3454,
3440
     3458, 3455, 3459, 3459, 3460, 3461, 3458, 3462, 3462, 3460,
3441
     3461, 3463, 3464, 3465, 3451, 3452, 3466, 3453, 3454, 3467,
3442
     3468, 3466, 3470, 3477, 3464, 3474, 3468, 3471, 3471, 3463,
3443
     3474, 3473, 3481, 3475, 3465, 3473, 3478, 3467, 3475, 3476,
3444
     3476, 3479, 3477, 3483, 3483, 3485, 3486, 3470, 3487, 3488,
3445
     3490, 3478, 3481, 3488, 3489, 3491, 3479, 3492, 3485, 3486,
3446
     3494, 3487, 3493, 3489, 3495, 3492, 3490, 3493, 3496, 3497,
3447
     3497, 3499, 3498, 3500, 3491, 3503, 3495, 3501, 3501, 3506,
3448
3449
     3494, 3498, 3502, 3502, 3506, 3506, 3507, 3509, 3496, 3499,
3450
     3510, 3510, 3513, 3509, 3503, 3511, 3511, 3515, 3518, 3500,
3451
     3507, 3516, 3516, 3519, 3521, 3522, 3523, 3526, 3526, 3521,
3452
     3527, 3523, 3515, 3513, 3518, 3528, 3529, 3530, 3532, 3519,
3453
     3535, 3522, 3529, 3536, 3528, 3531, 3531, 3534, 3534, 3537,
3454
     3527, 3539, 3538, 3540, 3535, 3542, 3540, 3532, 3541, 3541,
3455
     3530, 3543, 3544, 3547, 3536, 3539, 3545, 3545, 3549, 3547,
3456
     3537, 3538, 3550, 3542, 3551, 3554, 3555, 3558, 3550, 3551,
3457
     3544, 3559, 3543, 3556, 3556, 3557, 3557, 3561, 3549, 3560,
3458
     3560, 3562, 3558, 3564, 3562, 3563, 3566, 3554, 3561, 3565,
3459
3460
     3567, 3559, 3555, 3568, 3563, 3565, 3569, 3569, 3579, 3560,
3461
     3572, 3570, 3567, 3564, 3580, 3566, 3570, 3571, 3571, 3573,
3462
     3579, 3574, 3573, 3568, 3574, 3572, 3575, 3575, 3581, 3588,
3463
     3582, 3583, 3584, 3584, 3580, 3582, 3585, 3583, 3587, 3585,
3464
     3590, 3591, 3591, 3593, 3587, 3590, 3592, 3588, 3581, 3594,
3465
     3595, 3592, 3596, 3596, 3598, 3594, 3599, 3600, 3601, 3602,
3466
     3602, 3603, 3593, 3604, 3605, 3765, 3598, 3595, 3595, 3607,
3467
     3607, 3601, 3765, 3605, 3599, 3608, 3608, 3609, 3609, 3604,
3468
     3603, 3610, 3600, 3611, 3612, 3616, 3610, 3613, 3613, 3612,
3469
     3614, 3614, 3615, 3615, 3616, 3617, 3619, 3611, 3618, 3618,
3470
3471
     3620, 3621, 3626, 3622, 3625, 3625, 3632, 3621, 3622, 3619,
3472
     3628, 3628, 3629, 3629, 3633, 3635, 3617, 3636, 3626, 3637,
3473
     3638, 3639, 3639, 3641, 3641, 3632, 3620, 3642, 3643, 3644,
3474
     3646, 3647, 3648, 3648, 3649, 3633, 3650, 3635, 3637, 3636,
3475
     3647, 3653, 3638, 3644, 3651, 3651, 3654, 3643, 3652, 3655,
3476
     3646, 3656, 3652, 3642, 3649, 3655, 3650, 3659, 3654, 3657,
3477
     3660, 3653, 3661, 3657, 3662, 3663, 3660, 3664, 3667, 3672,
3478
     3663, 3656, 3664, 3668, 3668, 3659, 3670, 3670, 3673, 3671,
3479
     3674, 3675, 3661, 3662, 3671, 3680, 3674, 3676, 3684, 3667,
3480
     3677, 3677, 3673, 3675, 3672, 3676, 3678, 3685, 3682, 3683,
3481
3482
     3687, 3678, 3682, 3688, 3683, 3680, 3686, 3689, 3684, 3693,
3483
     3690, 3686, 3687, 3692, 3694, 3688, 3690, 3685, 3695, 3697,
3484
     3698, 3692, 3699, 3700, 3701, 3689, 3703, 3704, 3693, 3701,
3485
     3708, 3703,    0, 3710, 3694, 3705, 3698, 3697, 3695, 3699,
3486
     3699, 3705, 3709, 3706, 3700, 3709, 3710, 3704, 3706, 3720,
3487
     3708, 3714, 3714, 3715, 3715, 3716, 3721, 3723, 3723, 3716,
3488
     3724, 3721, 3725, 3728, 3720, 3724, 3726, 3726, 3731, 3731,
3489
     3732, 3733, 3733,    0, 3733, 3739, 3734, 3734, 3728, 3734,
3490
     3739, 3725, 3735, 3735, 3736, 3736, 3737, 3736, 3740, 3732,
3491
     3737, 3741, 3741, 3742, 3743, 3745, 3745, 3740, 3746, 3746,
3492
3493
     3748, 3749, 3751, 3750, 3752, 3752, 3748, 3749, 3743, 3750,
3494
     3751, 3742, 3753, 3753, 3754, 3754, 3755, 3756, 3751, 3757,
3495
     3758, 3758, 3759, 3760, 3757, 3763, 3764, 3766, 3770, 3767,
3496
     3768, 3766, 3764, 3771, 3772, 3771, 3755, 3756, 3767, 3772,
3497
     3759, 3773, 3773, 3760, 3774, 3768, 3770, 3775, 3775, 3779,
3498
     3763, 3776, 3776, 3774, 3777, 3777, 3778, 3778, 3780, 3781,
3499
     3782, 3783, 3784, 3785, 3781, 3786, 3783, 3783, 3784, 3782,
3500
     3787, 3779, 3782, 3780, 3788, 3790, 3789, 3791, 3791, 3788,
3501
     3786, 3789, 3796, 3792, 3793, 3794, 3794, 3801, 3785, 3792,
3502
     3793, 3787, 3795, 3795, 3790, 3797, 3807, 3796, 3800, 3800,
3503
3504
     3797, 3801, 3802, 3802, 3804, 3804, 3805, 3809, 3809, 3810,
3505
     3810, 3811, 3811, 3819, 3807, 3805, 3812, 3812, 3813, 3813,
3506
     3815, 3815, 3816, 3816, 3817, 3817, 3818, 3818, 3821, 3822,
3507
     3822, 3825, 3826, 3828, 3827, 3829, 3829, 3821, 3827, 3819,
3508
     3832, 3832, 3834, 3835, 3833, 3837, 3838, 3838, 3828, 3839,
3509
     3829, 3825, 3826, 3833, 3834, 3840, 3841, 3841, 3842, 3843,
3510
     3837, 3849, 3844, 3835, 3845, 3845, 3846, 3855, 3839, 3847,
3511
     3847, 3857, 3843, 3842, 3844, 3859, 3849, 3840, 3846, 3850,
3512
     3850, 3854, 3858, 3858, 3856, 3855, 3854, 3856, 3861, 3862,
3513
     3863, 3861, 3865, 3859, 3864, 3862, 3866, 3857, 3873, 3864,
3514
3515
     3867, 3869, 3873, 3870, 3863, 3874, 3879, 3869, 3876, 3876,
3516
     3880, 3865, 3870, 3890, 3866, 3893, 3867, 3894, 3890, 3891,
3517
     3874, 3895, 3891, 3895, 3893, 3896, 3894, 3897, 3900, 3908,
3518
     3880, 3898, 3879, 3901, 3901, 3902, 3902, 3903, 3903, 3905,
3519
     3905, 3900, 3909, 3906, 3896, 3911, 3897, 3897, 3906, 3898,
3520
     3910, 3909, 3908, 3912, 3910, 3914, 3916, 3917, 3919, 3918,
3521
     3921, 3923, 3916, 3919, 3920, 3911, 3920, 3924, 3912, 3914,
3522
     3918, 3922, 3922, 3925, 3923, 3921, 3926, 3927, 3928, 3929,
3523
     3917, 3935, 3930, 3932, 3931, 3933, 3924, 3937, 3929, 3931,
3524
     3934, 3925, 3926, 3928, 3930, 3934, 3938, 3933, 3936, 3936,
3525
3526
     3935, 3939, 3927, 3941, 3932, 3940, 3940, 3937, 3942, 3938,
3527
     3943, 3944, 3945, 3954, 3939, 3950, 3951, 3945, 3943, 3952,
3528
     3953, 3953, 3954, 3941, 3957, 3955, 3961, 3942, 3955, 3957,
3529
     3951, 3944, 3962, 3950, 3956, 3956, 3958, 3958, 3966, 3952,
3530
     3959, 3959, 3960, 3960, 3963, 3961, 3964, 3963, 3965, 3967,
3531
     3968, 3964, 3962, 3965, 3969, 3970, 3968, 3971, 3972, 3972,
3532
     3973, 3983, 3971, 3966, 3967, 3974, 3974, 3970, 3969, 3975,
3533
     3975, 3976, 3976, 3978, 3978, 3986, 3979, 3980, 3982, 3982,
3534
     3973, 3979, 3980, 3987, 3983, 3984, 3984, 3985, 3985, 3988,
3535
     3986, 3989, 3989, 3992, 3991, 3994, 3995, 3998, 3998, 3999,
3536
3537
     3999, 4001, 3987, 4000, 3992, 4005, 4002, 4003, 3988, 3991,
3538
     4004, 4000, 4002, 4003, 3995, 4006, 4007, 4015, 4005, 3994,
3539
     4001, 4007, 4008, 4008, 4004, 4010, 4010, 4016, 4018, 4021,
3540
     4022, 4023, 4015, 4025, 4006, 4026, 4026, 4027, 4030, 4022,
3541
     4028, 4031, 4016, 4018, 4028, 4032, 4031, 4025, 4033, 4034,
3542
     4021, 4023, 4035, 4027, 4036, 4037, 4038, 4038, 4030, 4036,
3543
     4037, 4033, 4034, 4041, 4032, 4042, 4045, 4043, 4044, 4046,
3544
     4047, 4035, 4051, 4049, 4050, 4050, 4057, 4051, 4053, 4053,
3545
        0, 4045, 4049, 4060, 4041, 4043, 4042, 4046, 4044, 4047,
3546
     4052, 4061, 4054, 4055, 4056, 4057, 4052, 4054, 4055, 4056,
3547
3548
     4058, 4062, 4064, 4060, 4065, 4062, 4058, 4063, 4063, 4065,
3549
     4067, 4061, 4066, 4066, 4069, 4070, 4064, 4071, 4069, 4072,
3550
     4073, 4074, 4075, 4076, 4071, 4077, 4077, 4074, 4067, 4078,
3551
     4078, 4079, 4079, 4081, 4070, 4084, 4076, 4086, 4072, 4073,
3552
     4084, 4075, 4082, 4082, 4085, 4085, 4086, 4088, 4087, 4086,
3553
     4089, 4090, 4081, 4087, 4091, 4091, 4092, 4096, 4096, 4097,
3554
     4100, 4092, 4102, 4098, 4090, 4107, 4088, 4098,    0, 4089,
3555
     4101, 4101, 4097, 4103, 4103, 4104, 4104, 4105, 4106, 4109,
3556
     4109, 4102, 4105, 4116, 4107, 4106, 4100, 4110, 4110, 4111,
3557
     4112, 4114, 4112, 4115, 4111, 4113, 4113, 4118, 4114, 4117,
3558
3559
     4115, 4122, 4116, 4124, 4117, 4121, 4121, 4125, 4124, 4126,
3560
     4127, 4131, 4125, 4128, 4128, 4132, 4118, 4130, 4130, 4135,
3561
     4122, 4133, 4133, 4134, 4134, 4145, 4135, 4146, 4126, 4127,
3562
     4131, 4137, 4137, 4139, 4132, 4138, 4138, 4141, 4144,    0,
3563
     4139,    0, 4141, 4144, 4145,    0, 4146, 4147, 4147, 4148,
3564
     4148, 4152, 4152, 4152, 4152, 4152, 4152, 4152, 4153, 4153,
3565
     4153, 4153, 4153, 4153, 4153, 4154, 4154, 4154, 4154, 4154,
3566
     4154, 4154, 4155, 4155, 4155, 4155, 4155, 4155, 4155, 4156,
3567
     4156, 4156, 4156, 4156, 4156, 4156, 4157, 4157, 4157, 4157,
3568
     4157, 4157, 4157, 4158, 4158, 4158, 4158, 4158, 4158, 4158,
3569
3570
     4160, 4160,    0, 4160, 4160, 4160, 4160, 4161, 4161,    0,
3571
        0,    0, 4161, 4161, 4162, 4162,    0,    0, 4162,    0,
3572
     4162, 4163,    0,    0,    0,    0,    0, 4163, 4164, 4164,
3573
        0,    0,    0, 4164, 4164, 4165,    0,    0,    0,    0,
3574
        0, 4165, 4166, 4166,    0, 4166, 4166, 4166, 4166, 4167,
3575
        0,    0,    0,    0,    0, 4167, 4168, 4168,    0,    0,
3576
        0, 4168, 4168, 4169, 4169,    0, 4169, 4169, 4169, 4169,
3577
     4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151,
3578
     4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151,
3579
     4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151,
3580
3581
     4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151, 4151,
3582
     4151
3583
    } ;
3584
3585
static yy_state_type yy_last_accepting_state;
3586
static char *yy_last_accepting_cpos;
3587
3588
extern int yy_flex_debug;
3589
int yy_flex_debug = 0;
3590
3591
/* The intent behind this definition is that it'll catch
3592
 * any uses of REJECT which flex missed.
3593
 */
3594
#define REJECT reject_used_but_not_detected
3595
static int yy_more_flag = 0;
3596
static int yy_more_len = 0;
3597
0
#define yymore() ((yy_more_flag) = 1)
3598
0
#define YY_MORE_ADJ (yy_more_len)
3599
#define YY_RESTORE_YY_MORE_OFFSET
3600
char *yytext;
3601
#line 1 "./util/configlexer.lex"
3602
#line 2 "./util/configlexer.lex"
3603
/*
3604
 * configlexer.lex - lexical analyzer for unbound config file
3605
 *
3606
 * Copyright (c) 2001-2006, NLnet Labs. All rights reserved
3607
 *
3608
 * See LICENSE for the license.
3609
 *
3610
 */
3611
3612
/* because flex keeps having sign-unsigned compare problems that are unfixed*/
3613
#if defined(__clang__)||(defined(__GNUC__)&&((__GNUC__ >4)||(defined(__GNUC_MINOR__)&&(__GNUC__ ==4)&&(__GNUC_MINOR__ >=2))))
3614
#pragma GCC diagnostic ignored "-Wsign-compare"
3615
#endif
3616
3617
#include <ctype.h>
3618
#include <strings.h>
3619
#ifdef HAVE_GLOB_H
3620
# include <glob.h>
3621
#endif
3622
3623
#include "util/config_file.h"
3624
#include "util/configparser.h"
3625
void ub_c_error(const char *message);
3626
3627
#if 0
3628
#define LEXOUT(s)  printf s /* used ONLY when debugging */
3629
#else
3630
#define LEXOUT(s)
3631
#endif
3632
3633
/** avoid warning in about fwrite return value */
3634
0
#define ECHO ub_c_error_msg("syntax error at text: %s", yytext)
3635
3636
/** A parser variable, this is a statement in the config file which is
3637
 * of the form variable: value1 value2 ...  nargs is the number of values. */
3638
#define YDVAR(nargs, var) \
3639
0
  num_args=(nargs); \
3640
0
  LEXOUT(("v(%s%d) ", yytext, num_args)); \
3641
0
  if(num_args > 0) { BEGIN(val); } \
3642
0
  return (var);
3643
3644
struct inc_state {
3645
  char* filename;
3646
  int line;
3647
  YY_BUFFER_STATE buffer;
3648
  struct inc_state* next;
3649
  int inc_toplevel;
3650
};
3651
static struct inc_state* config_include_stack = NULL;
3652
static int inc_depth = 0;
3653
static int inc_prev = 0;
3654
static int num_args = 0;
3655
static int inc_toplevel = 0;
3656
3657
void init_cfg_parse(void)
3658
0
{
3659
0
  config_include_stack = NULL;
3660
0
  inc_depth = 0;
3661
0
  inc_prev = 0;
3662
0
  num_args = 0;
3663
0
  inc_toplevel = 0;
3664
0
}
3665
3666
static void config_start_include(const char* filename, int toplevel)
3667
0
{
3668
0
  FILE *input;
3669
0
  struct inc_state* s;
3670
0
  char* nm;
3671
0
  if(inc_depth+1 > 100000) {
3672
0
    ub_c_error_msg("too many include files");
3673
0
    return;
3674
0
  }
3675
0
  if(*filename == '\0') {
3676
0
    ub_c_error_msg("empty include file name");
3677
0
    return;
3678
0
  }
3679
0
  s = (struct inc_state*)malloc(sizeof(*s));
3680
0
  if(!s) {
3681
0
    ub_c_error_msg("include %s: malloc failure", filename);
3682
0
    return;
3683
0
  }
3684
0
  if(cfg_parser->chroot && strncmp(filename, cfg_parser->chroot,
3685
0
    strlen(cfg_parser->chroot)) == 0) {
3686
0
    filename += strlen(cfg_parser->chroot);
3687
0
  }
3688
0
  nm = strdup(filename);
3689
0
  if(!nm) {
3690
0
    ub_c_error_msg("include %s: strdup failure", filename);
3691
0
    free(s);
3692
0
    return;
3693
0
  }
3694
0
  input = fopen(filename, "r");
3695
0
  if(!input) {
3696
0
    ub_c_error_msg("cannot open include file '%s': %s",
3697
0
      filename, strerror(errno));
3698
0
    free(s);
3699
0
    free(nm);
3700
0
    return;
3701
0
  }
3702
0
  LEXOUT(("switch_to_include_file(%s)\n", filename));
3703
0
  inc_depth++;
3704
0
  s->filename = cfg_parser->filename;
3705
0
  s->line = cfg_parser->line;
3706
0
  s->buffer = YY_CURRENT_BUFFER;
3707
0
  s->inc_toplevel = inc_toplevel;
3708
0
  s->next = config_include_stack;
3709
0
  config_include_stack = s;
3710
0
  cfg_parser->filename = nm;
3711
0
  cfg_parser->line = 1;
3712
0
  inc_toplevel = toplevel;
3713
0
  yy_switch_to_buffer(yy_create_buffer(input, YY_BUF_SIZE));
3714
0
}
3715
3716
static void config_start_include_glob(const char* filename, int toplevel)
3717
0
{
3718
3719
  /* check for wildcards */
3720
0
#ifdef HAVE_GLOB
3721
0
  glob_t g;
3722
0
  int i, r, flags;
3723
0
  if(!(!strchr(filename, '*') && !strchr(filename, '?') && !strchr(filename, '[') &&
3724
0
    !strchr(filename, '{') && !strchr(filename, '~'))) {
3725
0
    flags = 0
3726
0
#ifdef GLOB_ERR
3727
0
      | GLOB_ERR
3728
0
#endif
3729
       /* do not set GLOB_NOSORT so the results are sorted
3730
          and in a predictable order. */
3731
0
#ifdef GLOB_BRACE
3732
0
      | GLOB_BRACE
3733
0
#endif
3734
0
#ifdef GLOB_TILDE
3735
0
      | GLOB_TILDE
3736
0
#endif
3737
0
    ;
3738
0
    memset(&g, 0, sizeof(g));
3739
0
    if(cfg_parser->chroot && strncmp(filename, cfg_parser->chroot,
3740
0
      strlen(cfg_parser->chroot)) == 0) {
3741
0
      filename += strlen(cfg_parser->chroot);
3742
0
    }
3743
0
    r = glob(filename, flags, NULL, &g);
3744
0
    if(r) {
3745
      /* some error */
3746
0
      globfree(&g);
3747
0
      if(r == GLOB_NOMATCH)
3748
0
        return; /* no matches for pattern */
3749
0
      config_start_include(filename, toplevel); /* let original deal with it */
3750
0
      return;
3751
0
    }
3752
    /* process files found, if any */
3753
0
    for(i=(int)g.gl_pathc-1; i>=0; i--) {
3754
0
      config_start_include(g.gl_pathv[i], toplevel);
3755
0
    }
3756
0
    globfree(&g);
3757
0
    return;
3758
0
  }
3759
0
#endif /* HAVE_GLOB */
3760
3761
0
  config_start_include(filename, toplevel);
3762
0
}
3763
3764
static void config_end_include(void)
3765
0
{
3766
0
  struct inc_state* s = config_include_stack;
3767
0
  --inc_depth;
3768
0
  if(!s) return;
3769
0
  free(cfg_parser->filename);
3770
0
  cfg_parser->filename = s->filename;
3771
0
  cfg_parser->line = s->line;
3772
0
  yy_delete_buffer(YY_CURRENT_BUFFER);
3773
0
  yy_switch_to_buffer(s->buffer);
3774
0
  config_include_stack = s->next;
3775
0
  inc_toplevel = s->inc_toplevel;
3776
0
  free(s);
3777
0
}
3778
3779
#ifndef yy_set_bol /* compat definition, for flex 2.4.6 */
3780
#define yy_set_bol(at_bol) \
3781
        { \
3782
          if ( ! yy_current_buffer ) \
3783
                  yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
3784
          yy_current_buffer->yy_ch_buf[0] = ((at_bol)?'\n':' '); \
3785
        }
3786
#endif
3787
3788
#line 3787 "<stdout>"
3789
#define YY_NO_INPUT 1
3790
#line 191 "./util/configlexer.lex"
3791
#ifndef YY_NO_UNPUT
3792
#define YY_NO_UNPUT 1
3793
#endif
3794
#ifndef YY_NO_INPUT
3795
#define YY_NO_INPUT 1
3796
#endif
3797
#line 3796 "<stdout>"
3798
3799
#line 3798 "<stdout>"
3800
3801
0
#define INITIAL 0
3802
0
#define quotedstring 1
3803
0
#define singlequotedstr 2
3804
0
#define include 3
3805
0
#define include_quoted 4
3806
0
#define val 5
3807
0
#define include_toplevel 6
3808
0
#define include_toplevel_quoted 7
3809
3810
#ifndef YY_NO_UNISTD_H
3811
/* Special case for "unistd.h", since it is non-ANSI. We include it way
3812
 * down here because we want the user's section 1 to have been scanned first.
3813
 * The user has a chance to override it with an option.
3814
 */
3815
#include <unistd.h>
3816
#endif
3817
3818
#ifndef YY_EXTRA_TYPE
3819
#define YY_EXTRA_TYPE void *
3820
#endif
3821
3822
static int yy_init_globals ( void );
3823
3824
/* Accessor methods to globals.
3825
   These are made visible to non-reentrant scanners for convenience. */
3826
3827
int yylex_destroy ( void );
3828
3829
int yyget_debug ( void );
3830
3831
void yyset_debug ( int debug_flag  );
3832
3833
YY_EXTRA_TYPE yyget_extra ( void );
3834
3835
void yyset_extra ( YY_EXTRA_TYPE user_defined  );
3836
3837
FILE *yyget_in ( void );
3838
3839
void yyset_in  ( FILE * _in_str  );
3840
3841
FILE *yyget_out ( void );
3842
3843
void yyset_out  ( FILE * _out_str  );
3844
3845
      int yyget_leng ( void );
3846
3847
char *yyget_text ( void );
3848
3849
int yyget_lineno ( void );
3850
3851
void yyset_lineno ( int _line_number  );
3852
3853
/* Macros after this point can all be overridden by user definitions in
3854
 * section 1.
3855
 */
3856
3857
#ifndef YY_SKIP_YYWRAP
3858
#ifdef __cplusplus
3859
extern "C" int yywrap ( void );
3860
#else
3861
extern int yywrap ( void );
3862
#endif
3863
#endif
3864
3865
#ifndef YY_NO_UNPUT
3866
    
3867
#endif
3868
3869
#ifndef yytext_ptr
3870
static void yy_flex_strncpy ( char *, const char *, int );
3871
#endif
3872
3873
#ifdef YY_NEED_STRLEN
3874
static int yy_flex_strlen ( const char * );
3875
#endif
3876
3877
#ifndef YY_NO_INPUT
3878
#ifdef __cplusplus
3879
static int yyinput ( void );
3880
#else
3881
static int input ( void );
3882
#endif
3883
3884
#endif
3885
3886
/* Amount of stuff to slurp up with each read. */
3887
#ifndef YY_READ_BUF_SIZE
3888
#ifdef __ia64__
3889
/* On IA-64, the buffer size is 16k, not 8k */
3890
#define YY_READ_BUF_SIZE 16384
3891
#else
3892
0
#define YY_READ_BUF_SIZE 8192
3893
#endif /* __ia64__ */
3894
#endif
3895
3896
/* Copy whatever the last rule matched to the standard output. */
3897
#ifndef ECHO
3898
/* This used to be an fputs(), but since the string might contain NUL's,
3899
 * we now use fwrite().
3900
 */
3901
#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
3902
#endif
3903
3904
/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
3905
 * is returned in "result".
3906
 */
3907
#ifndef YY_INPUT
3908
#define YY_INPUT(buf,result,max_size) \
3909
0
  if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
3910
0
    { \
3911
0
    int c = '*'; \
3912
0
    int n; \
3913
0
    for ( n = 0; n < max_size && \
3914
0
           (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
3915
0
      buf[n] = (char) c; \
3916
0
    if ( c == '\n' ) \
3917
0
      buf[n++] = (char) c; \
3918
0
    if ( c == EOF && ferror( yyin ) ) \
3919
0
      YY_FATAL_ERROR( "input in flex scanner failed" ); \
3920
0
    result = n; \
3921
0
    } \
3922
0
  else \
3923
0
    { \
3924
0
    errno=0; \
3925
0
    while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
3926
0
      { \
3927
0
      if( errno != EINTR) \
3928
0
        { \
3929
0
        YY_FATAL_ERROR( "input in flex scanner failed" ); \
3930
0
        break; \
3931
0
        } \
3932
0
      errno=0; \
3933
0
      clearerr(yyin); \
3934
0
      } \
3935
0
    }\
3936
\
3937
3938
#endif
3939
3940
/* No semi-colon after return; correct usage is to write "yyterminate();" -
3941
 * we don't want an extra ';' after the "return" because that will cause
3942
 * some compilers to complain about unreachable statements.
3943
 */
3944
#ifndef yyterminate
3945
0
#define yyterminate() return YY_NULL
3946
#endif
3947
3948
/* Number of entries by which start-condition stack grows. */
3949
#ifndef YY_START_STACK_INCR
3950
#define YY_START_STACK_INCR 25
3951
#endif
3952
3953
/* Report a fatal error. */
3954
#ifndef YY_FATAL_ERROR
3955
0
#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
3956
#endif
3957
3958
/* end tables serialization structures and prototypes */
3959
3960
/* Default declaration of generated scanner - a define so the user can
3961
 * easily add parameters.
3962
 */
3963
#ifndef YY_DECL
3964
#define YY_DECL_IS_OURS 1
3965
3966
extern int yylex (void);
3967
3968
#define YY_DECL int yylex (void)
3969
#endif /* !YY_DECL */
3970
3971
/* Code executed at the beginning of each rule, after yytext and yyleng
3972
 * have been set up.
3973
 */
3974
#ifndef YY_USER_ACTION
3975
#define YY_USER_ACTION
3976
#endif
3977
3978
/* Code executed at the end of each rule. */
3979
#ifndef YY_BREAK
3980
0
#define YY_BREAK /*LINTED*/break;
3981
#endif
3982
3983
#define YY_RULE_SETUP \
3984
  YY_USER_ACTION
3985
3986
/** The main scanner function which does all the work.
3987
 */
3988
YY_DECL
3989
0
{
3990
0
  yy_state_type yy_current_state;
3991
0
  char *yy_cp, *yy_bp;
3992
0
  int yy_act;
3993
    
3994
0
  if ( !(yy_init) )
3995
0
    {
3996
0
    (yy_init) = 1;
3997
3998
#ifdef YY_USER_INIT
3999
    YY_USER_INIT;
4000
#endif
4001
4002
0
    if ( ! (yy_start) )
4003
0
      (yy_start) = 1; /* first start state */
4004
4005
0
    if ( ! yyin )
4006
0
      yyin = stdin;
4007
4008
0
    if ( ! yyout )
4009
0
      yyout = stdout;
4010
4011
0
    if ( ! YY_CURRENT_BUFFER ) {
4012
0
      yyensure_buffer_stack ();
4013
0
      YY_CURRENT_BUFFER_LVALUE =
4014
0
        yy_create_buffer( yyin, YY_BUF_SIZE );
4015
0
    }
4016
4017
0
    yy_load_buffer_state(  );
4018
0
    }
4019
4020
0
  {
4021
0
#line 211 "./util/configlexer.lex"
4022
4023
0
#line 4022 "<stdout>"
4024
4025
0
  while ( /*CONSTCOND*/1 )    /* loops until end-of-file is reached */
4026
0
    {
4027
0
    (yy_more_len) = 0;
4028
0
    if ( (yy_more_flag) )
4029
0
      {
4030
0
      (yy_more_len) = (int) ((yy_c_buf_p) - (yytext_ptr));
4031
0
      (yy_more_flag) = 0;
4032
0
      }
4033
0
    yy_cp = (yy_c_buf_p);
4034
4035
    /* Support of yytext. */
4036
0
    *yy_cp = (yy_hold_char);
4037
4038
    /* yy_bp points to the position in yy_ch_buf of the start of
4039
     * the current run.
4040
     */
4041
0
    yy_bp = yy_cp;
4042
4043
0
    yy_current_state = (yy_start);
4044
0
yy_match:
4045
0
    do
4046
0
      {
4047
0
      YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
4048
0
      if ( yy_accept[yy_current_state] )
4049
0
        {
4050
0
        (yy_last_accepting_state) = yy_current_state;
4051
0
        (yy_last_accepting_cpos) = yy_cp;
4052
0
        }
4053
0
      while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4054
0
        {
4055
0
        yy_current_state = (int) yy_def[yy_current_state];
4056
0
        if ( yy_current_state >= 4152 )
4057
0
          yy_c = yy_meta[yy_c];
4058
0
        }
4059
0
      yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
4060
0
      ++yy_cp;
4061
0
      }
4062
0
    while ( yy_base[yy_current_state] != 8071 );
4063
4064
0
yy_find_action:
4065
0
    yy_act = yy_accept[yy_current_state];
4066
0
    if ( yy_act == 0 )
4067
0
      { /* have to back up */
4068
0
      yy_cp = (yy_last_accepting_cpos);
4069
0
      yy_current_state = (yy_last_accepting_state);
4070
0
      yy_act = yy_accept[yy_current_state];
4071
0
      }
4072
4073
0
    YY_DO_BEFORE_ACTION;
4074
4075
0
do_action:  /* This label is used only to access EOF actions. */
4076
4077
0
    switch ( yy_act )
4078
0
  { /* beginning of action switch */
4079
0
      case 0: /* must back up */
4080
      /* undo the effects of YY_DO_BEFORE_ACTION */
4081
0
      *yy_cp = (yy_hold_char);
4082
0
      yy_cp = (yy_last_accepting_cpos);
4083
0
      yy_current_state = (yy_last_accepting_state);
4084
0
      goto yy_find_action;
4085
4086
0
case 1:
4087
0
YY_RULE_SETUP
4088
0
#line 212 "./util/configlexer.lex"
4089
0
{
4090
0
  LEXOUT(("SP ")); /* ignore */ }
4091
0
  YY_BREAK
4092
0
case 2:
4093
0
YY_RULE_SETUP
4094
0
#line 214 "./util/configlexer.lex"
4095
0
{
4096
  /* note that flex makes the longest match and '.' is any but not nl */
4097
0
  LEXOUT(("comment(%s) ", yytext)); /* ignore */ }
4098
0
  YY_BREAK
4099
0
case 3:
4100
0
YY_RULE_SETUP
4101
0
#line 217 "./util/configlexer.lex"
4102
0
{ YDVAR(0, VAR_SERVER) }
4103
0
  YY_BREAK
4104
0
case 4:
4105
0
YY_RULE_SETUP
4106
0
#line 218 "./util/configlexer.lex"
4107
0
{ YDVAR(1, VAR_QNAME_MINIMISATION) }
4108
0
  YY_BREAK
4109
0
case 5:
4110
0
YY_RULE_SETUP
4111
0
#line 219 "./util/configlexer.lex"
4112
0
{ YDVAR(1, VAR_QNAME_MINIMISATION_STRICT) }
4113
0
  YY_BREAK
4114
0
case 6:
4115
0
YY_RULE_SETUP
4116
0
#line 220 "./util/configlexer.lex"
4117
0
{ YDVAR(1, VAR_NUM_THREADS) }
4118
0
  YY_BREAK
4119
0
case 7:
4120
0
YY_RULE_SETUP
4121
0
#line 221 "./util/configlexer.lex"
4122
0
{ YDVAR(1, VAR_VERBOSITY) }
4123
0
  YY_BREAK
4124
0
case 8:
4125
0
YY_RULE_SETUP
4126
0
#line 222 "./util/configlexer.lex"
4127
0
{ YDVAR(1, VAR_PORT) }
4128
0
  YY_BREAK
4129
0
case 9:
4130
0
YY_RULE_SETUP
4131
0
#line 223 "./util/configlexer.lex"
4132
0
{ YDVAR(1, VAR_OUTGOING_RANGE) }
4133
0
  YY_BREAK
4134
0
case 10:
4135
0
YY_RULE_SETUP
4136
0
#line 224 "./util/configlexer.lex"
4137
0
{ YDVAR(1, VAR_OUTGOING_PORT_PERMIT) }
4138
0
  YY_BREAK
4139
0
case 11:
4140
0
YY_RULE_SETUP
4141
0
#line 225 "./util/configlexer.lex"
4142
0
{ YDVAR(1, VAR_OUTGOING_PORT_AVOID) }
4143
0
  YY_BREAK
4144
0
case 12:
4145
0
YY_RULE_SETUP
4146
0
#line 226 "./util/configlexer.lex"
4147
0
{ YDVAR(1, VAR_OUTGOING_NUM_TCP) }
4148
0
  YY_BREAK
4149
0
case 13:
4150
0
YY_RULE_SETUP
4151
0
#line 227 "./util/configlexer.lex"
4152
0
{ YDVAR(1, VAR_INCOMING_NUM_TCP) }
4153
0
  YY_BREAK
4154
0
case 14:
4155
0
YY_RULE_SETUP
4156
0
#line 228 "./util/configlexer.lex"
4157
0
{ YDVAR(1, VAR_DO_IP4) }
4158
0
  YY_BREAK
4159
0
case 15:
4160
0
YY_RULE_SETUP
4161
0
#line 229 "./util/configlexer.lex"
4162
0
{ YDVAR(1, VAR_DO_IP6) }
4163
0
  YY_BREAK
4164
0
case 16:
4165
0
YY_RULE_SETUP
4166
0
#line 230 "./util/configlexer.lex"
4167
0
{ YDVAR(1, VAR_DO_NAT64) }
4168
0
  YY_BREAK
4169
0
case 17:
4170
0
YY_RULE_SETUP
4171
0
#line 231 "./util/configlexer.lex"
4172
0
{ YDVAR(1, VAR_PREFER_IP4) }
4173
0
  YY_BREAK
4174
0
case 18:
4175
0
YY_RULE_SETUP
4176
0
#line 232 "./util/configlexer.lex"
4177
0
{ YDVAR(1, VAR_PREFER_IP6) }
4178
0
  YY_BREAK
4179
0
case 19:
4180
0
YY_RULE_SETUP
4181
0
#line 233 "./util/configlexer.lex"
4182
0
{ YDVAR(1, VAR_DO_UDP) }
4183
0
  YY_BREAK
4184
0
case 20:
4185
0
YY_RULE_SETUP
4186
0
#line 234 "./util/configlexer.lex"
4187
0
{ YDVAR(1, VAR_DO_TCP) }
4188
0
  YY_BREAK
4189
0
case 21:
4190
0
YY_RULE_SETUP
4191
0
#line 235 "./util/configlexer.lex"
4192
0
{ YDVAR(1, VAR_TCP_UPSTREAM) }
4193
0
  YY_BREAK
4194
0
case 22:
4195
0
YY_RULE_SETUP
4196
0
#line 236 "./util/configlexer.lex"
4197
0
{ YDVAR(1, VAR_TCP_MSS) }
4198
0
  YY_BREAK
4199
0
case 23:
4200
0
YY_RULE_SETUP
4201
0
#line 237 "./util/configlexer.lex"
4202
0
{ YDVAR(1, VAR_OUTGOING_TCP_MSS) }
4203
0
  YY_BREAK
4204
0
case 24:
4205
0
YY_RULE_SETUP
4206
0
#line 238 "./util/configlexer.lex"
4207
0
{ YDVAR(1, VAR_TCP_IDLE_TIMEOUT) }
4208
0
  YY_BREAK
4209
0
case 25:
4210
0
YY_RULE_SETUP
4211
0
#line 239 "./util/configlexer.lex"
4212
0
{ YDVAR(1, VAR_MAX_REUSE_TCP_QUERIES) }
4213
0
  YY_BREAK
4214
0
case 26:
4215
0
YY_RULE_SETUP
4216
0
#line 240 "./util/configlexer.lex"
4217
0
{ YDVAR(1, VAR_TCP_REUSE_TIMEOUT) }
4218
0
  YY_BREAK
4219
0
case 27:
4220
0
YY_RULE_SETUP
4221
0
#line 241 "./util/configlexer.lex"
4222
0
{ YDVAR(1, VAR_TCP_AUTH_QUERY_TIMEOUT) }
4223
0
  YY_BREAK
4224
0
case 28:
4225
0
YY_RULE_SETUP
4226
0
#line 242 "./util/configlexer.lex"
4227
0
{ YDVAR(1, VAR_EDNS_TCP_KEEPALIVE) }
4228
0
  YY_BREAK
4229
0
case 29:
4230
0
YY_RULE_SETUP
4231
0
#line 243 "./util/configlexer.lex"
4232
0
{ YDVAR(1, VAR_EDNS_TCP_KEEPALIVE_TIMEOUT) }
4233
0
  YY_BREAK
4234
0
case 30:
4235
0
YY_RULE_SETUP
4236
0
#line 244 "./util/configlexer.lex"
4237
0
{ YDVAR(1, VAR_SOCK_QUEUE_TIMEOUT) }
4238
0
  YY_BREAK
4239
0
case 31:
4240
0
YY_RULE_SETUP
4241
0
#line 245 "./util/configlexer.lex"
4242
0
{ YDVAR(1, VAR_SSL_UPSTREAM) }
4243
0
  YY_BREAK
4244
0
case 32:
4245
0
YY_RULE_SETUP
4246
0
#line 246 "./util/configlexer.lex"
4247
0
{ YDVAR(1, VAR_SSL_UPSTREAM) }
4248
0
  YY_BREAK
4249
0
case 33:
4250
0
YY_RULE_SETUP
4251
0
#line 247 "./util/configlexer.lex"
4252
0
{ YDVAR(1, VAR_SSL_SERVICE_KEY) }
4253
0
  YY_BREAK
4254
0
case 34:
4255
0
YY_RULE_SETUP
4256
0
#line 248 "./util/configlexer.lex"
4257
0
{ YDVAR(1, VAR_SSL_SERVICE_KEY) }
4258
0
  YY_BREAK
4259
0
case 35:
4260
0
YY_RULE_SETUP
4261
0
#line 249 "./util/configlexer.lex"
4262
0
{ YDVAR(1, VAR_SSL_SERVICE_PEM) }
4263
0
  YY_BREAK
4264
0
case 36:
4265
0
YY_RULE_SETUP
4266
0
#line 250 "./util/configlexer.lex"
4267
0
{ YDVAR(1, VAR_SSL_SERVICE_PEM) }
4268
0
  YY_BREAK
4269
0
case 37:
4270
0
YY_RULE_SETUP
4271
0
#line 251 "./util/configlexer.lex"
4272
0
{ YDVAR(1, VAR_SSL_PORT) }
4273
0
  YY_BREAK
4274
0
case 38:
4275
0
YY_RULE_SETUP
4276
0
#line 252 "./util/configlexer.lex"
4277
0
{ YDVAR(1, VAR_SSL_PORT) }
4278
0
  YY_BREAK
4279
0
case 39:
4280
0
YY_RULE_SETUP
4281
0
#line 253 "./util/configlexer.lex"
4282
0
{ YDVAR(1, VAR_TLS_CERT_BUNDLE) }
4283
0
  YY_BREAK
4284
0
case 40:
4285
0
YY_RULE_SETUP
4286
0
#line 254 "./util/configlexer.lex"
4287
0
{ YDVAR(1, VAR_TLS_CERT_BUNDLE) }
4288
0
  YY_BREAK
4289
0
case 41:
4290
0
YY_RULE_SETUP
4291
0
#line 255 "./util/configlexer.lex"
4292
0
{ YDVAR(1, VAR_TLS_WIN_CERT) }
4293
0
  YY_BREAK
4294
0
case 42:
4295
0
YY_RULE_SETUP
4296
0
#line 256 "./util/configlexer.lex"
4297
0
{ YDVAR(1, VAR_TLS_WIN_CERT) }
4298
0
  YY_BREAK
4299
0
case 43:
4300
0
YY_RULE_SETUP
4301
0
#line 257 "./util/configlexer.lex"
4302
0
{ YDVAR(1, VAR_TLS_ADDITIONAL_PORT) }
4303
0
  YY_BREAK
4304
0
case 44:
4305
0
YY_RULE_SETUP
4306
0
#line 258 "./util/configlexer.lex"
4307
0
{ YDVAR(1, VAR_TLS_ADDITIONAL_PORT) }
4308
0
  YY_BREAK
4309
0
case 45:
4310
0
YY_RULE_SETUP
4311
0
#line 259 "./util/configlexer.lex"
4312
0
{ YDVAR(1, VAR_TLS_ADDITIONAL_PORT) }
4313
0
  YY_BREAK
4314
0
case 46:
4315
0
YY_RULE_SETUP
4316
0
#line 260 "./util/configlexer.lex"
4317
0
{ YDVAR(1, VAR_TLS_ADDITIONAL_PORT) }
4318
0
  YY_BREAK
4319
0
case 47:
4320
0
YY_RULE_SETUP
4321
0
#line 261 "./util/configlexer.lex"
4322
0
{ YDVAR(1, VAR_TLS_SESSION_TICKET_KEYS) }
4323
0
  YY_BREAK
4324
0
case 48:
4325
0
YY_RULE_SETUP
4326
0
#line 262 "./util/configlexer.lex"
4327
0
{ YDVAR(1, VAR_TLS_CIPHERS) }
4328
0
  YY_BREAK
4329
0
case 49:
4330
0
YY_RULE_SETUP
4331
0
#line 263 "./util/configlexer.lex"
4332
0
{ YDVAR(1, VAR_TLS_CIPHERSUITES) }
4333
0
  YY_BREAK
4334
0
case 50:
4335
0
YY_RULE_SETUP
4336
0
#line 264 "./util/configlexer.lex"
4337
0
{ YDVAR(1, VAR_TLS_USE_SNI) }
4338
0
  YY_BREAK
4339
0
case 51:
4340
0
YY_RULE_SETUP
4341
0
#line 265 "./util/configlexer.lex"
4342
0
{ YDVAR(1, VAR_TLS_USE_SYSTEM_POLICY_VERSIONS) }
4343
0
  YY_BREAK
4344
0
case 52:
4345
0
YY_RULE_SETUP
4346
0
#line 266 "./util/configlexer.lex"
4347
0
{ YDVAR(1, VAR_HTTPS_PORT) }
4348
0
  YY_BREAK
4349
0
case 53:
4350
0
YY_RULE_SETUP
4351
0
#line 267 "./util/configlexer.lex"
4352
0
{ YDVAR(1, VAR_HTTP_ENDPOINT) }
4353
0
  YY_BREAK
4354
0
case 54:
4355
0
YY_RULE_SETUP
4356
0
#line 268 "./util/configlexer.lex"
4357
0
{ YDVAR(1, VAR_HTTP_MAX_STREAMS) }
4358
0
  YY_BREAK
4359
0
case 55:
4360
0
YY_RULE_SETUP
4361
0
#line 269 "./util/configlexer.lex"
4362
0
{ YDVAR(1, VAR_HTTP_QUERY_BUFFER_SIZE) }
4363
0
  YY_BREAK
4364
0
case 56:
4365
0
YY_RULE_SETUP
4366
0
#line 270 "./util/configlexer.lex"
4367
0
{ YDVAR(1, VAR_HTTP_RESPONSE_BUFFER_SIZE) }
4368
0
  YY_BREAK
4369
0
case 57:
4370
0
YY_RULE_SETUP
4371
0
#line 271 "./util/configlexer.lex"
4372
0
{ YDVAR(1, VAR_HTTP_NODELAY) }
4373
0
  YY_BREAK
4374
0
case 58:
4375
0
YY_RULE_SETUP
4376
0
#line 272 "./util/configlexer.lex"
4377
0
{ YDVAR(1, VAR_HTTP_NOTLS_DOWNSTREAM) }
4378
0
  YY_BREAK
4379
0
case 59:
4380
0
YY_RULE_SETUP
4381
0
#line 273 "./util/configlexer.lex"
4382
0
{ YDVAR(1, VAR_QUIC_PORT) }
4383
0
  YY_BREAK
4384
0
case 60:
4385
0
YY_RULE_SETUP
4386
0
#line 274 "./util/configlexer.lex"
4387
0
{ YDVAR(1, VAR_QUIC_SIZE) }
4388
0
  YY_BREAK
4389
0
case 61:
4390
0
YY_RULE_SETUP
4391
0
#line 275 "./util/configlexer.lex"
4392
0
{ YDVAR(1, VAR_USE_SYSTEMD) }
4393
0
  YY_BREAK
4394
0
case 62:
4395
0
YY_RULE_SETUP
4396
0
#line 276 "./util/configlexer.lex"
4397
0
{ YDVAR(1, VAR_DO_DAEMONIZE) }
4398
0
  YY_BREAK
4399
0
case 63:
4400
0
YY_RULE_SETUP
4401
0
#line 277 "./util/configlexer.lex"
4402
0
{ YDVAR(1, VAR_INTERFACE) }
4403
0
  YY_BREAK
4404
0
case 64:
4405
0
YY_RULE_SETUP
4406
0
#line 278 "./util/configlexer.lex"
4407
0
{ YDVAR(1, VAR_INTERFACE) }
4408
0
  YY_BREAK
4409
0
case 65:
4410
0
YY_RULE_SETUP
4411
0
#line 279 "./util/configlexer.lex"
4412
0
{ YDVAR(1, VAR_OUTGOING_INTERFACE) }
4413
0
  YY_BREAK
4414
0
case 66:
4415
0
YY_RULE_SETUP
4416
0
#line 280 "./util/configlexer.lex"
4417
0
{ YDVAR(1, VAR_INTERFACE_AUTOMATIC) }
4418
0
  YY_BREAK
4419
0
case 67:
4420
0
YY_RULE_SETUP
4421
0
#line 281 "./util/configlexer.lex"
4422
0
{ YDVAR(1, VAR_INTERFACE_AUTOMATIC_PORTS) }
4423
0
  YY_BREAK
4424
0
case 68:
4425
0
YY_RULE_SETUP
4426
0
#line 282 "./util/configlexer.lex"
4427
0
{ YDVAR(1, VAR_SO_RCVBUF) }
4428
0
  YY_BREAK
4429
0
case 69:
4430
0
YY_RULE_SETUP
4431
0
#line 283 "./util/configlexer.lex"
4432
0
{ YDVAR(1, VAR_SO_SNDBUF) }
4433
0
  YY_BREAK
4434
0
case 70:
4435
0
YY_RULE_SETUP
4436
0
#line 284 "./util/configlexer.lex"
4437
0
{ YDVAR(1, VAR_SO_REUSEPORT) }
4438
0
  YY_BREAK
4439
0
case 71:
4440
0
YY_RULE_SETUP
4441
0
#line 285 "./util/configlexer.lex"
4442
0
{ YDVAR(1, VAR_IP_TRANSPARENT) }
4443
0
  YY_BREAK
4444
0
case 72:
4445
0
YY_RULE_SETUP
4446
0
#line 286 "./util/configlexer.lex"
4447
0
{ YDVAR(1, VAR_IP_FREEBIND) }
4448
0
  YY_BREAK
4449
0
case 73:
4450
0
YY_RULE_SETUP
4451
0
#line 287 "./util/configlexer.lex"
4452
0
{ YDVAR(1, VAR_IP_DSCP) }
4453
0
  YY_BREAK
4454
0
case 74:
4455
0
YY_RULE_SETUP
4456
0
#line 288 "./util/configlexer.lex"
4457
0
{ YDVAR(1, VAR_CHROOT) }
4458
0
  YY_BREAK
4459
0
case 75:
4460
0
YY_RULE_SETUP
4461
0
#line 289 "./util/configlexer.lex"
4462
0
{ YDVAR(1, VAR_USERNAME) }
4463
0
  YY_BREAK
4464
0
case 76:
4465
0
YY_RULE_SETUP
4466
0
#line 290 "./util/configlexer.lex"
4467
0
{ YDVAR(1, VAR_DIRECTORY) }
4468
0
  YY_BREAK
4469
0
case 77:
4470
0
YY_RULE_SETUP
4471
0
#line 291 "./util/configlexer.lex"
4472
0
{ YDVAR(1, VAR_LOGFILE) }
4473
0
  YY_BREAK
4474
0
case 78:
4475
0
YY_RULE_SETUP
4476
0
#line 292 "./util/configlexer.lex"
4477
0
{ YDVAR(1, VAR_PIDFILE) }
4478
0
  YY_BREAK
4479
0
case 79:
4480
0
YY_RULE_SETUP
4481
0
#line 293 "./util/configlexer.lex"
4482
0
{ YDVAR(1, VAR_ROOT_HINTS) }
4483
0
  YY_BREAK
4484
0
case 80:
4485
0
YY_RULE_SETUP
4486
0
#line 294 "./util/configlexer.lex"
4487
0
{ YDVAR(1, VAR_STREAM_WAIT_SIZE) }
4488
0
  YY_BREAK
4489
0
case 81:
4490
0
YY_RULE_SETUP
4491
0
#line 295 "./util/configlexer.lex"
4492
0
{ YDVAR(1, VAR_EDNS_BUFFER_SIZE) }
4493
0
  YY_BREAK
4494
0
case 82:
4495
0
YY_RULE_SETUP
4496
0
#line 296 "./util/configlexer.lex"
4497
0
{ YDVAR(1, VAR_MSG_BUFFER_SIZE) }
4498
0
  YY_BREAK
4499
0
case 83:
4500
0
YY_RULE_SETUP
4501
0
#line 297 "./util/configlexer.lex"
4502
0
{ YDVAR(1, VAR_MSG_CACHE_SIZE) }
4503
0
  YY_BREAK
4504
0
case 84:
4505
0
YY_RULE_SETUP
4506
0
#line 298 "./util/configlexer.lex"
4507
0
{ YDVAR(1, VAR_MSG_CACHE_SLABS) }
4508
0
  YY_BREAK
4509
0
case 85:
4510
0
YY_RULE_SETUP
4511
0
#line 299 "./util/configlexer.lex"
4512
0
{ YDVAR(1, VAR_RRSET_CACHE_SIZE) }
4513
0
  YY_BREAK
4514
0
case 86:
4515
0
YY_RULE_SETUP
4516
0
#line 300 "./util/configlexer.lex"
4517
0
{ YDVAR(1, VAR_RRSET_CACHE_SLABS) }
4518
0
  YY_BREAK
4519
0
case 87:
4520
0
YY_RULE_SETUP
4521
0
#line 301 "./util/configlexer.lex"
4522
0
{ YDVAR(1, VAR_CACHE_MAX_TTL) }
4523
0
  YY_BREAK
4524
0
case 88:
4525
0
YY_RULE_SETUP
4526
0
#line 302 "./util/configlexer.lex"
4527
0
{ YDVAR(1, VAR_CACHE_MAX_NEGATIVE_TTL) }
4528
0
  YY_BREAK
4529
0
case 89:
4530
0
YY_RULE_SETUP
4531
0
#line 303 "./util/configlexer.lex"
4532
0
{ YDVAR(1, VAR_CACHE_MIN_NEGATIVE_TTL) }
4533
0
  YY_BREAK
4534
0
case 90:
4535
0
YY_RULE_SETUP
4536
0
#line 304 "./util/configlexer.lex"
4537
0
{ YDVAR(1, VAR_CACHE_MIN_TTL) }
4538
0
  YY_BREAK
4539
0
case 91:
4540
0
YY_RULE_SETUP
4541
0
#line 305 "./util/configlexer.lex"
4542
0
{ YDVAR(1, VAR_INFRA_HOST_TTL) }
4543
0
  YY_BREAK
4544
0
case 92:
4545
0
YY_RULE_SETUP
4546
0
#line 306 "./util/configlexer.lex"
4547
0
{ YDVAR(1, VAR_INFRA_LAME_TTL) }
4548
0
  YY_BREAK
4549
0
case 93:
4550
0
YY_RULE_SETUP
4551
0
#line 307 "./util/configlexer.lex"
4552
0
{ YDVAR(1, VAR_INFRA_CACHE_SLABS) }
4553
0
  YY_BREAK
4554
0
case 94:
4555
0
YY_RULE_SETUP
4556
0
#line 308 "./util/configlexer.lex"
4557
0
{ YDVAR(1, VAR_INFRA_CACHE_NUMHOSTS) }
4558
0
  YY_BREAK
4559
0
case 95:
4560
0
YY_RULE_SETUP
4561
0
#line 309 "./util/configlexer.lex"
4562
0
{ YDVAR(1, VAR_INFRA_CACHE_LAME_SIZE) }
4563
0
  YY_BREAK
4564
0
case 96:
4565
0
YY_RULE_SETUP
4566
0
#line 310 "./util/configlexer.lex"
4567
0
{ YDVAR(1, VAR_INFRA_CACHE_MIN_RTT) }
4568
0
  YY_BREAK
4569
0
case 97:
4570
0
YY_RULE_SETUP
4571
0
#line 311 "./util/configlexer.lex"
4572
0
{ YDVAR(1, VAR_INFRA_CACHE_MAX_RTT) }
4573
0
  YY_BREAK
4574
0
case 98:
4575
0
YY_RULE_SETUP
4576
0
#line 312 "./util/configlexer.lex"
4577
0
{ YDVAR(1, VAR_INFRA_KEEP_PROBING) }
4578
0
  YY_BREAK
4579
0
case 99:
4580
0
YY_RULE_SETUP
4581
0
#line 313 "./util/configlexer.lex"
4582
0
{ YDVAR(1, VAR_NUM_QUERIES_PER_THREAD) }
4583
0
  YY_BREAK
4584
0
case 100:
4585
0
YY_RULE_SETUP
4586
0
#line 314 "./util/configlexer.lex"
4587
0
{ YDVAR(1, VAR_JOSTLE_TIMEOUT) }
4588
0
  YY_BREAK
4589
0
case 101:
4590
0
YY_RULE_SETUP
4591
0
#line 315 "./util/configlexer.lex"
4592
0
{ YDVAR(1, VAR_DELAY_CLOSE) }
4593
0
  YY_BREAK
4594
0
case 102:
4595
0
YY_RULE_SETUP
4596
0
#line 316 "./util/configlexer.lex"
4597
0
{ YDVAR(1, VAR_UDP_CONNECT) }
4598
0
  YY_BREAK
4599
0
case 103:
4600
0
YY_RULE_SETUP
4601
0
#line 317 "./util/configlexer.lex"
4602
0
{ YDVAR(1, VAR_TARGET_FETCH_POLICY) }
4603
0
  YY_BREAK
4604
0
case 104:
4605
0
YY_RULE_SETUP
4606
0
#line 318 "./util/configlexer.lex"
4607
0
{ YDVAR(1, VAR_HARDEN_SHORT_BUFSIZE) }
4608
0
  YY_BREAK
4609
0
case 105:
4610
0
YY_RULE_SETUP
4611
0
#line 319 "./util/configlexer.lex"
4612
0
{ YDVAR(1, VAR_HARDEN_LARGE_QUERIES) }
4613
0
  YY_BREAK
4614
0
case 106:
4615
0
YY_RULE_SETUP
4616
0
#line 320 "./util/configlexer.lex"
4617
0
{ YDVAR(1, VAR_HARDEN_GLUE) }
4618
0
  YY_BREAK
4619
0
case 107:
4620
0
YY_RULE_SETUP
4621
0
#line 321 "./util/configlexer.lex"
4622
0
{ YDVAR(1, VAR_HARDEN_UNVERIFIED_GLUE) }
4623
0
  YY_BREAK
4624
0
case 108:
4625
0
YY_RULE_SETUP
4626
0
#line 322 "./util/configlexer.lex"
4627
0
{ YDVAR(1, VAR_HARDEN_DNSSEC_STRIPPED) }
4628
0
  YY_BREAK
4629
0
case 109:
4630
0
YY_RULE_SETUP
4631
0
#line 323 "./util/configlexer.lex"
4632
0
{ YDVAR(1, VAR_HARDEN_BELOW_NXDOMAIN) }
4633
0
  YY_BREAK
4634
0
case 110:
4635
0
YY_RULE_SETUP
4636
0
#line 324 "./util/configlexer.lex"
4637
0
{ YDVAR(1, VAR_HARDEN_REFERRAL_PATH) }
4638
0
  YY_BREAK
4639
0
case 111:
4640
0
YY_RULE_SETUP
4641
0
#line 325 "./util/configlexer.lex"
4642
0
{ YDVAR(1, VAR_HARDEN_ALGO_DOWNGRADE) }
4643
0
  YY_BREAK
4644
0
case 112:
4645
0
YY_RULE_SETUP
4646
0
#line 326 "./util/configlexer.lex"
4647
0
{ YDVAR(1, VAR_HARDEN_UNKNOWN_ADDITIONAL) }
4648
0
  YY_BREAK
4649
0
case 113:
4650
0
YY_RULE_SETUP
4651
0
#line 327 "./util/configlexer.lex"
4652
0
{ YDVAR(1, VAR_USE_CAPS_FOR_ID) }
4653
0
  YY_BREAK
4654
0
case 114:
4655
0
YY_RULE_SETUP
4656
0
#line 328 "./util/configlexer.lex"
4657
0
{ YDVAR(1, VAR_CAPS_WHITELIST) }
4658
0
  YY_BREAK
4659
0
case 115:
4660
0
YY_RULE_SETUP
4661
0
#line 329 "./util/configlexer.lex"
4662
0
{ YDVAR(1, VAR_CAPS_WHITELIST) }
4663
0
  YY_BREAK
4664
0
case 116:
4665
0
YY_RULE_SETUP
4666
0
#line 330 "./util/configlexer.lex"
4667
0
{ YDVAR(1, VAR_UNWANTED_REPLY_THRESHOLD) }
4668
0
  YY_BREAK
4669
0
case 117:
4670
0
YY_RULE_SETUP
4671
0
#line 331 "./util/configlexer.lex"
4672
0
{ YDVAR(1, VAR_PRIVATE_ADDRESS) }
4673
0
  YY_BREAK
4674
0
case 118:
4675
0
YY_RULE_SETUP
4676
0
#line 332 "./util/configlexer.lex"
4677
0
{ YDVAR(1, VAR_PRIVATE_DOMAIN) }
4678
0
  YY_BREAK
4679
0
case 119:
4680
0
YY_RULE_SETUP
4681
0
#line 333 "./util/configlexer.lex"
4682
0
{ YDVAR(1, VAR_PREFETCH_KEY) }
4683
0
  YY_BREAK
4684
0
case 120:
4685
0
YY_RULE_SETUP
4686
0
#line 334 "./util/configlexer.lex"
4687
0
{ YDVAR(1, VAR_PREFETCH) }
4688
0
  YY_BREAK
4689
0
case 121:
4690
0
YY_RULE_SETUP
4691
0
#line 335 "./util/configlexer.lex"
4692
0
{ YDVAR(1, VAR_DENY_ANY) }
4693
0
  YY_BREAK
4694
0
case 122:
4695
0
YY_RULE_SETUP
4696
0
#line 336 "./util/configlexer.lex"
4697
0
{ YDVAR(0, VAR_STUB_ZONE) }
4698
0
  YY_BREAK
4699
0
case 123:
4700
0
YY_RULE_SETUP
4701
0
#line 337 "./util/configlexer.lex"
4702
0
{ YDVAR(1, VAR_NAME) }
4703
0
  YY_BREAK
4704
0
case 124:
4705
0
YY_RULE_SETUP
4706
0
#line 338 "./util/configlexer.lex"
4707
0
{ YDVAR(1, VAR_STUB_ADDR) }
4708
0
  YY_BREAK
4709
0
case 125:
4710
0
YY_RULE_SETUP
4711
0
#line 339 "./util/configlexer.lex"
4712
0
{ YDVAR(1, VAR_STUB_HOST) }
4713
0
  YY_BREAK
4714
0
case 126:
4715
0
YY_RULE_SETUP
4716
0
#line 340 "./util/configlexer.lex"
4717
0
{ YDVAR(1, VAR_STUB_PRIME) }
4718
0
  YY_BREAK
4719
0
case 127:
4720
0
YY_RULE_SETUP
4721
0
#line 341 "./util/configlexer.lex"
4722
0
{ YDVAR(1, VAR_STUB_FIRST) }
4723
0
  YY_BREAK
4724
0
case 128:
4725
0
YY_RULE_SETUP
4726
0
#line 342 "./util/configlexer.lex"
4727
0
{ YDVAR(1, VAR_STUB_NO_CACHE) }
4728
0
  YY_BREAK
4729
0
case 129:
4730
0
YY_RULE_SETUP
4731
0
#line 343 "./util/configlexer.lex"
4732
0
{ YDVAR(1, VAR_STUB_SSL_UPSTREAM) }
4733
0
  YY_BREAK
4734
0
case 130:
4735
0
YY_RULE_SETUP
4736
0
#line 344 "./util/configlexer.lex"
4737
0
{ YDVAR(1, VAR_STUB_SSL_UPSTREAM) }
4738
0
  YY_BREAK
4739
0
case 131:
4740
0
YY_RULE_SETUP
4741
0
#line 345 "./util/configlexer.lex"
4742
0
{ YDVAR(1, VAR_STUB_TCP_UPSTREAM) }
4743
0
  YY_BREAK
4744
0
case 132:
4745
0
YY_RULE_SETUP
4746
0
#line 346 "./util/configlexer.lex"
4747
0
{ YDVAR(0, VAR_FORWARD_ZONE) }
4748
0
  YY_BREAK
4749
0
case 133:
4750
0
YY_RULE_SETUP
4751
0
#line 347 "./util/configlexer.lex"
4752
0
{ YDVAR(1, VAR_FORWARD_ADDR) }
4753
0
  YY_BREAK
4754
0
case 134:
4755
0
YY_RULE_SETUP
4756
0
#line 348 "./util/configlexer.lex"
4757
0
{ YDVAR(1, VAR_FORWARD_HOST) }
4758
0
  YY_BREAK
4759
0
case 135:
4760
0
YY_RULE_SETUP
4761
0
#line 349 "./util/configlexer.lex"
4762
0
{ YDVAR(1, VAR_FORWARD_FIRST) }
4763
0
  YY_BREAK
4764
0
case 136:
4765
0
YY_RULE_SETUP
4766
0
#line 350 "./util/configlexer.lex"
4767
0
{ YDVAR(1, VAR_FORWARD_NO_CACHE) }
4768
0
  YY_BREAK
4769
0
case 137:
4770
0
YY_RULE_SETUP
4771
0
#line 351 "./util/configlexer.lex"
4772
0
{ YDVAR(1, VAR_FORWARD_SSL_UPSTREAM) }
4773
0
  YY_BREAK
4774
0
case 138:
4775
0
YY_RULE_SETUP
4776
0
#line 352 "./util/configlexer.lex"
4777
0
{ YDVAR(1, VAR_FORWARD_SSL_UPSTREAM) }
4778
0
  YY_BREAK
4779
0
case 139:
4780
0
YY_RULE_SETUP
4781
0
#line 353 "./util/configlexer.lex"
4782
0
{ YDVAR(1, VAR_FORWARD_TCP_UPSTREAM) }
4783
0
  YY_BREAK
4784
0
case 140:
4785
0
YY_RULE_SETUP
4786
0
#line 354 "./util/configlexer.lex"
4787
0
{ YDVAR(0, VAR_AUTH_ZONE) }
4788
0
  YY_BREAK
4789
0
case 141:
4790
0
YY_RULE_SETUP
4791
0
#line 355 "./util/configlexer.lex"
4792
0
{ YDVAR(0, VAR_RPZ) }
4793
0
  YY_BREAK
4794
0
case 142:
4795
0
YY_RULE_SETUP
4796
0
#line 356 "./util/configlexer.lex"
4797
0
{ YDVAR(1, VAR_TAGS) }
4798
0
  YY_BREAK
4799
0
case 143:
4800
0
YY_RULE_SETUP
4801
0
#line 357 "./util/configlexer.lex"
4802
0
{ YDVAR(1, VAR_RPZ_ACTION_OVERRIDE) }
4803
0
  YY_BREAK
4804
0
case 144:
4805
0
YY_RULE_SETUP
4806
0
#line 358 "./util/configlexer.lex"
4807
0
{ YDVAR(1, VAR_RPZ_CNAME_OVERRIDE) }
4808
0
  YY_BREAK
4809
0
case 145:
4810
0
YY_RULE_SETUP
4811
0
#line 359 "./util/configlexer.lex"
4812
0
{ YDVAR(1, VAR_RPZ_LOG) }
4813
0
  YY_BREAK
4814
0
case 146:
4815
0
YY_RULE_SETUP
4816
0
#line 360 "./util/configlexer.lex"
4817
0
{ YDVAR(1, VAR_RPZ_LOG_NAME) }
4818
0
  YY_BREAK
4819
0
case 147:
4820
0
YY_RULE_SETUP
4821
0
#line 361 "./util/configlexer.lex"
4822
0
{ YDVAR(1, VAR_RPZ_SIGNAL_NXDOMAIN_RA) }
4823
0
  YY_BREAK
4824
0
case 148:
4825
0
YY_RULE_SETUP
4826
0
#line 362 "./util/configlexer.lex"
4827
0
{ YDVAR(1, VAR_ZONEFILE) }
4828
0
  YY_BREAK
4829
0
case 149:
4830
0
YY_RULE_SETUP
4831
0
#line 363 "./util/configlexer.lex"
4832
0
{ YDVAR(1, VAR_MASTER) }
4833
0
  YY_BREAK
4834
0
case 150:
4835
0
YY_RULE_SETUP
4836
0
#line 364 "./util/configlexer.lex"
4837
0
{ YDVAR(1, VAR_MASTER) }
4838
0
  YY_BREAK
4839
0
case 151:
4840
0
YY_RULE_SETUP
4841
0
#line 365 "./util/configlexer.lex"
4842
0
{ YDVAR(1, VAR_URL) }
4843
0
  YY_BREAK
4844
0
case 152:
4845
0
YY_RULE_SETUP
4846
0
#line 366 "./util/configlexer.lex"
4847
0
{ YDVAR(1, VAR_ALLOW_NOTIFY) }
4848
0
  YY_BREAK
4849
0
case 153:
4850
0
YY_RULE_SETUP
4851
0
#line 367 "./util/configlexer.lex"
4852
0
{ YDVAR(1, VAR_FOR_DOWNSTREAM) }
4853
0
  YY_BREAK
4854
0
case 154:
4855
0
YY_RULE_SETUP
4856
0
#line 368 "./util/configlexer.lex"
4857
0
{ YDVAR(1, VAR_FOR_UPSTREAM) }
4858
0
  YY_BREAK
4859
0
case 155:
4860
0
YY_RULE_SETUP
4861
0
#line 369 "./util/configlexer.lex"
4862
0
{ YDVAR(1, VAR_FALLBACK_ENABLED) }
4863
0
  YY_BREAK
4864
0
case 156:
4865
0
YY_RULE_SETUP
4866
0
#line 370 "./util/configlexer.lex"
4867
0
{ YDVAR(0, VAR_VIEW) }
4868
0
  YY_BREAK
4869
0
case 157:
4870
0
YY_RULE_SETUP
4871
0
#line 371 "./util/configlexer.lex"
4872
0
{ YDVAR(1, VAR_VIEW_FIRST) }
4873
0
  YY_BREAK
4874
0
case 158:
4875
0
YY_RULE_SETUP
4876
0
#line 372 "./util/configlexer.lex"
4877
0
{ YDVAR(1, VAR_DO_NOT_QUERY_ADDRESS) }
4878
0
  YY_BREAK
4879
0
case 159:
4880
0
YY_RULE_SETUP
4881
0
#line 373 "./util/configlexer.lex"
4882
0
{ YDVAR(1, VAR_DO_NOT_QUERY_LOCALHOST) }
4883
0
  YY_BREAK
4884
0
case 160:
4885
0
YY_RULE_SETUP
4886
0
#line 374 "./util/configlexer.lex"
4887
0
{ YDVAR(2, VAR_ACCESS_CONTROL) }
4888
0
  YY_BREAK
4889
0
case 161:
4890
0
YY_RULE_SETUP
4891
0
#line 375 "./util/configlexer.lex"
4892
0
{ YDVAR(2, VAR_INTERFACE_ACTION) }
4893
0
  YY_BREAK
4894
0
case 162:
4895
0
YY_RULE_SETUP
4896
0
#line 376 "./util/configlexer.lex"
4897
0
{ YDVAR(1, VAR_SEND_CLIENT_SUBNET) }
4898
0
  YY_BREAK
4899
0
case 163:
4900
0
YY_RULE_SETUP
4901
0
#line 377 "./util/configlexer.lex"
4902
0
{ YDVAR(1, VAR_CLIENT_SUBNET_ZONE) }
4903
0
  YY_BREAK
4904
0
case 164:
4905
0
YY_RULE_SETUP
4906
0
#line 378 "./util/configlexer.lex"
4907
0
{ YDVAR(1, VAR_CLIENT_SUBNET_ALWAYS_FORWARD) }
4908
0
  YY_BREAK
4909
0
case 165:
4910
0
YY_RULE_SETUP
4911
0
#line 379 "./util/configlexer.lex"
4912
0
{ YDVAR(1, VAR_CLIENT_SUBNET_OPCODE) }
4913
0
  YY_BREAK
4914
0
case 166:
4915
0
YY_RULE_SETUP
4916
0
#line 380 "./util/configlexer.lex"
4917
0
{ YDVAR(1, VAR_MAX_CLIENT_SUBNET_IPV4) }
4918
0
  YY_BREAK
4919
0
case 167:
4920
0
YY_RULE_SETUP
4921
0
#line 381 "./util/configlexer.lex"
4922
0
{ YDVAR(1, VAR_MAX_CLIENT_SUBNET_IPV6) }
4923
0
  YY_BREAK
4924
0
case 168:
4925
0
YY_RULE_SETUP
4926
0
#line 382 "./util/configlexer.lex"
4927
0
{ YDVAR(1, VAR_MIN_CLIENT_SUBNET_IPV4) }
4928
0
  YY_BREAK
4929
0
case 169:
4930
0
YY_RULE_SETUP
4931
0
#line 383 "./util/configlexer.lex"
4932
0
{ YDVAR(1, VAR_MIN_CLIENT_SUBNET_IPV6) }
4933
0
  YY_BREAK
4934
0
case 170:
4935
0
YY_RULE_SETUP
4936
0
#line 384 "./util/configlexer.lex"
4937
0
{ YDVAR(1, VAR_MAX_ECS_TREE_SIZE_IPV4) }
4938
0
  YY_BREAK
4939
0
case 171:
4940
0
YY_RULE_SETUP
4941
0
#line 385 "./util/configlexer.lex"
4942
0
{ YDVAR(1, VAR_MAX_ECS_TREE_SIZE_IPV6) }
4943
0
  YY_BREAK
4944
0
case 172:
4945
0
YY_RULE_SETUP
4946
0
#line 386 "./util/configlexer.lex"
4947
0
{ YDVAR(1, VAR_HIDE_IDENTITY) }
4948
0
  YY_BREAK
4949
0
case 173:
4950
0
YY_RULE_SETUP
4951
0
#line 387 "./util/configlexer.lex"
4952
0
{ YDVAR(1, VAR_HIDE_VERSION) }
4953
0
  YY_BREAK
4954
0
case 174:
4955
0
YY_RULE_SETUP
4956
0
#line 388 "./util/configlexer.lex"
4957
0
{ YDVAR(1, VAR_HIDE_TRUSTANCHOR) }
4958
0
  YY_BREAK
4959
0
case 175:
4960
0
YY_RULE_SETUP
4961
0
#line 389 "./util/configlexer.lex"
4962
0
{ YDVAR(1, VAR_HIDE_HTTP_USER_AGENT) }
4963
0
  YY_BREAK
4964
0
case 176:
4965
0
YY_RULE_SETUP
4966
0
#line 390 "./util/configlexer.lex"
4967
0
{ YDVAR(1, VAR_IDENTITY) }
4968
0
  YY_BREAK
4969
0
case 177:
4970
0
YY_RULE_SETUP
4971
0
#line 391 "./util/configlexer.lex"
4972
0
{ YDVAR(1, VAR_VERSION) }
4973
0
  YY_BREAK
4974
0
case 178:
4975
0
YY_RULE_SETUP
4976
0
#line 392 "./util/configlexer.lex"
4977
0
{ YDVAR(1, VAR_HTTP_USER_AGENT) }
4978
0
  YY_BREAK
4979
0
case 179:
4980
0
YY_RULE_SETUP
4981
0
#line 393 "./util/configlexer.lex"
4982
0
{ YDVAR(1, VAR_MODULE_CONF) }
4983
0
  YY_BREAK
4984
0
case 180:
4985
0
YY_RULE_SETUP
4986
0
#line 394 "./util/configlexer.lex"
4987
0
{ YDVAR(1, VAR_DLV_ANCHOR) }
4988
0
  YY_BREAK
4989
0
case 181:
4990
0
YY_RULE_SETUP
4991
0
#line 395 "./util/configlexer.lex"
4992
0
{ YDVAR(1, VAR_DLV_ANCHOR_FILE) }
4993
0
  YY_BREAK
4994
0
case 182:
4995
0
YY_RULE_SETUP
4996
0
#line 396 "./util/configlexer.lex"
4997
0
{ YDVAR(1, VAR_TRUST_ANCHOR_FILE) }
4998
0
  YY_BREAK
4999
0
case 183:
5000
0
YY_RULE_SETUP
5001
0
#line 397 "./util/configlexer.lex"
5002
0
{ YDVAR(1, VAR_AUTO_TRUST_ANCHOR_FILE) }
5003
0
  YY_BREAK
5004
0
case 184:
5005
0
YY_RULE_SETUP
5006
0
#line 398 "./util/configlexer.lex"
5007
0
{ YDVAR(1, VAR_TRUSTED_KEYS_FILE) }
5008
0
  YY_BREAK
5009
0
case 185:
5010
0
YY_RULE_SETUP
5011
0
#line 399 "./util/configlexer.lex"
5012
0
{ YDVAR(1, VAR_TRUST_ANCHOR) }
5013
0
  YY_BREAK
5014
0
case 186:
5015
0
YY_RULE_SETUP
5016
0
#line 400 "./util/configlexer.lex"
5017
0
{ YDVAR(1, VAR_TRUST_ANCHOR_SIGNALING) }
5018
0
  YY_BREAK
5019
0
case 187:
5020
0
YY_RULE_SETUP
5021
0
#line 401 "./util/configlexer.lex"
5022
0
{ YDVAR(1, VAR_ROOT_KEY_SENTINEL) }
5023
0
  YY_BREAK
5024
0
case 188:
5025
0
YY_RULE_SETUP
5026
0
#line 402 "./util/configlexer.lex"
5027
0
{ YDVAR(1, VAR_VAL_OVERRIDE_DATE) }
5028
0
  YY_BREAK
5029
0
case 189:
5030
0
YY_RULE_SETUP
5031
0
#line 403 "./util/configlexer.lex"
5032
0
{ YDVAR(1, VAR_VAL_SIG_SKEW_MIN) }
5033
0
  YY_BREAK
5034
0
case 190:
5035
0
YY_RULE_SETUP
5036
0
#line 404 "./util/configlexer.lex"
5037
0
{ YDVAR(1, VAR_VAL_SIG_SKEW_MAX) }
5038
0
  YY_BREAK
5039
0
case 191:
5040
0
YY_RULE_SETUP
5041
0
#line 405 "./util/configlexer.lex"
5042
0
{ YDVAR(1, VAR_VAL_MAX_RESTART) }
5043
0
  YY_BREAK
5044
0
case 192:
5045
0
YY_RULE_SETUP
5046
0
#line 406 "./util/configlexer.lex"
5047
0
{ YDVAR(1, VAR_BOGUS_TTL) }
5048
0
  YY_BREAK
5049
0
case 193:
5050
0
YY_RULE_SETUP
5051
0
#line 407 "./util/configlexer.lex"
5052
0
{ YDVAR(1, VAR_VAL_CLEAN_ADDITIONAL) }
5053
0
  YY_BREAK
5054
0
case 194:
5055
0
YY_RULE_SETUP
5056
0
#line 408 "./util/configlexer.lex"
5057
0
{ YDVAR(1, VAR_VAL_PERMISSIVE_MODE) }
5058
0
  YY_BREAK
5059
0
case 195:
5060
0
YY_RULE_SETUP
5061
0
#line 409 "./util/configlexer.lex"
5062
0
{ YDVAR(1, VAR_AGGRESSIVE_NSEC) }
5063
0
  YY_BREAK
5064
0
case 196:
5065
0
YY_RULE_SETUP
5066
0
#line 410 "./util/configlexer.lex"
5067
0
{ YDVAR(1, VAR_IGNORE_CD_FLAG) }
5068
0
  YY_BREAK
5069
0
case 197:
5070
0
YY_RULE_SETUP
5071
0
#line 411 "./util/configlexer.lex"
5072
0
{ YDVAR(1, VAR_DISABLE_EDNS_DO) }
5073
0
  YY_BREAK
5074
0
case 198:
5075
0
YY_RULE_SETUP
5076
0
#line 412 "./util/configlexer.lex"
5077
0
{ YDVAR(1, VAR_SERVE_EXPIRED) }
5078
0
  YY_BREAK
5079
0
case 199:
5080
0
YY_RULE_SETUP
5081
0
#line 413 "./util/configlexer.lex"
5082
0
{ YDVAR(1, VAR_SERVE_EXPIRED_TTL) }
5083
0
  YY_BREAK
5084
0
case 200:
5085
0
YY_RULE_SETUP
5086
0
#line 414 "./util/configlexer.lex"
5087
0
{ YDVAR(1, VAR_SERVE_EXPIRED_TTL_RESET) }
5088
0
  YY_BREAK
5089
0
case 201:
5090
0
YY_RULE_SETUP
5091
0
#line 415 "./util/configlexer.lex"
5092
0
{ YDVAR(1, VAR_SERVE_EXPIRED_REPLY_TTL) }
5093
0
  YY_BREAK
5094
0
case 202:
5095
0
YY_RULE_SETUP
5096
0
#line 416 "./util/configlexer.lex"
5097
0
{ YDVAR(1, VAR_SERVE_EXPIRED_CLIENT_TIMEOUT) }
5098
0
  YY_BREAK
5099
0
case 203:
5100
0
YY_RULE_SETUP
5101
0
#line 417 "./util/configlexer.lex"
5102
0
{ YDVAR(1, VAR_EDE_SERVE_EXPIRED) }
5103
0
  YY_BREAK
5104
0
case 204:
5105
0
YY_RULE_SETUP
5106
0
#line 418 "./util/configlexer.lex"
5107
0
{ YDVAR(1, VAR_SERVE_ORIGINAL_TTL) }
5108
0
  YY_BREAK
5109
0
case 205:
5110
0
YY_RULE_SETUP
5111
0
#line 419 "./util/configlexer.lex"
5112
0
{ YDVAR(1, VAR_FAKE_DSA) }
5113
0
  YY_BREAK
5114
0
case 206:
5115
0
YY_RULE_SETUP
5116
0
#line 420 "./util/configlexer.lex"
5117
0
{ YDVAR(1, VAR_FAKE_SHA1) }
5118
0
  YY_BREAK
5119
0
case 207:
5120
0
YY_RULE_SETUP
5121
0
#line 421 "./util/configlexer.lex"
5122
0
{ YDVAR(1, VAR_VAL_LOG_LEVEL) }
5123
0
  YY_BREAK
5124
0
case 208:
5125
0
YY_RULE_SETUP
5126
0
#line 422 "./util/configlexer.lex"
5127
0
{ YDVAR(1, VAR_KEY_CACHE_SIZE) }
5128
0
  YY_BREAK
5129
0
case 209:
5130
0
YY_RULE_SETUP
5131
0
#line 423 "./util/configlexer.lex"
5132
0
{ YDVAR(1, VAR_KEY_CACHE_SLABS) }
5133
0
  YY_BREAK
5134
0
case 210:
5135
0
YY_RULE_SETUP
5136
0
#line 424 "./util/configlexer.lex"
5137
0
{ YDVAR(1, VAR_NEG_CACHE_SIZE) }
5138
0
  YY_BREAK
5139
0
case 211:
5140
0
YY_RULE_SETUP
5141
0
#line 425 "./util/configlexer.lex"
5142
0
{
5143
0
          YDVAR(1, VAR_VAL_NSEC3_KEYSIZE_ITERATIONS) }
5144
0
  YY_BREAK
5145
0
case 212:
5146
0
YY_RULE_SETUP
5147
0
#line 427 "./util/configlexer.lex"
5148
0
{ YDVAR(1, VAR_ZONEMD_PERMISSIVE_MODE) }
5149
0
  YY_BREAK
5150
0
case 213:
5151
0
YY_RULE_SETUP
5152
0
#line 428 "./util/configlexer.lex"
5153
0
{ YDVAR(1, VAR_ZONEMD_CHECK) }
5154
0
  YY_BREAK
5155
0
case 214:
5156
0
YY_RULE_SETUP
5157
0
#line 429 "./util/configlexer.lex"
5158
0
{ YDVAR(1, VAR_ZONEMD_REJECT_ABSENCE) }
5159
0
  YY_BREAK
5160
0
case 215:
5161
0
YY_RULE_SETUP
5162
0
#line 430 "./util/configlexer.lex"
5163
0
{ YDVAR(1, VAR_ADD_HOLDDOWN) }
5164
0
  YY_BREAK
5165
0
case 216:
5166
0
YY_RULE_SETUP
5167
0
#line 431 "./util/configlexer.lex"
5168
0
{ YDVAR(1, VAR_DEL_HOLDDOWN) }
5169
0
  YY_BREAK
5170
0
case 217:
5171
0
YY_RULE_SETUP
5172
0
#line 432 "./util/configlexer.lex"
5173
0
{ YDVAR(1, VAR_KEEP_MISSING) }
5174
0
  YY_BREAK
5175
0
case 218:
5176
0
YY_RULE_SETUP
5177
0
#line 433 "./util/configlexer.lex"
5178
0
{ YDVAR(1, VAR_PERMIT_SMALL_HOLDDOWN) }
5179
0
  YY_BREAK
5180
0
case 219:
5181
0
YY_RULE_SETUP
5182
0
#line 434 "./util/configlexer.lex"
5183
0
{ YDVAR(1, VAR_USE_SYSLOG) }
5184
0
  YY_BREAK
5185
0
case 220:
5186
0
YY_RULE_SETUP
5187
0
#line 435 "./util/configlexer.lex"
5188
0
{ YDVAR(1, VAR_LOG_IDENTITY) }
5189
0
  YY_BREAK
5190
0
case 221:
5191
0
YY_RULE_SETUP
5192
0
#line 436 "./util/configlexer.lex"
5193
0
{ YDVAR(1, VAR_LOG_TIME_ASCII) }
5194
0
  YY_BREAK
5195
0
case 222:
5196
0
YY_RULE_SETUP
5197
0
#line 437 "./util/configlexer.lex"
5198
0
{ YDVAR(1, VAR_LOG_TIME_ISO) }
5199
0
  YY_BREAK
5200
0
case 223:
5201
0
YY_RULE_SETUP
5202
0
#line 438 "./util/configlexer.lex"
5203
0
{ YDVAR(1, VAR_LOG_QUERIES) }
5204
0
  YY_BREAK
5205
0
case 224:
5206
0
YY_RULE_SETUP
5207
0
#line 439 "./util/configlexer.lex"
5208
0
{ YDVAR(1, VAR_LOG_REPLIES) }
5209
0
  YY_BREAK
5210
0
case 225:
5211
0
YY_RULE_SETUP
5212
0
#line 440 "./util/configlexer.lex"
5213
0
{ YDVAR(1, VAR_LOG_TAG_QUERYREPLY) }
5214
0
  YY_BREAK
5215
0
case 226:
5216
0
YY_RULE_SETUP
5217
0
#line 441 "./util/configlexer.lex"
5218
0
{ YDVAR(1, VAR_LOG_LOCAL_ACTIONS) }
5219
0
  YY_BREAK
5220
0
case 227:
5221
0
YY_RULE_SETUP
5222
0
#line 442 "./util/configlexer.lex"
5223
0
{ YDVAR(1, VAR_LOG_SERVFAIL) }
5224
0
  YY_BREAK
5225
0
case 228:
5226
0
YY_RULE_SETUP
5227
0
#line 443 "./util/configlexer.lex"
5228
0
{ YDVAR(1, VAR_LOG_DESTADDR) }
5229
0
  YY_BREAK
5230
0
case 229:
5231
0
YY_RULE_SETUP
5232
0
#line 444 "./util/configlexer.lex"
5233
0
{ YDVAR(2, VAR_LOCAL_ZONE) }
5234
0
  YY_BREAK
5235
0
case 230:
5236
0
YY_RULE_SETUP
5237
0
#line 445 "./util/configlexer.lex"
5238
0
{ YDVAR(1, VAR_LOCAL_DATA) }
5239
0
  YY_BREAK
5240
0
case 231:
5241
0
YY_RULE_SETUP
5242
0
#line 446 "./util/configlexer.lex"
5243
0
{ YDVAR(1, VAR_LOCAL_DATA_PTR) }
5244
0
  YY_BREAK
5245
0
case 232:
5246
0
YY_RULE_SETUP
5247
0
#line 447 "./util/configlexer.lex"
5248
0
{ YDVAR(1, VAR_UNBLOCK_LAN_ZONES) }
5249
0
  YY_BREAK
5250
0
case 233:
5251
0
YY_RULE_SETUP
5252
0
#line 448 "./util/configlexer.lex"
5253
0
{ YDVAR(1, VAR_INSECURE_LAN_ZONES) }
5254
0
  YY_BREAK
5255
0
case 234:
5256
0
YY_RULE_SETUP
5257
0
#line 449 "./util/configlexer.lex"
5258
0
{ YDVAR(1, VAR_STATISTICS_INTERVAL) }
5259
0
  YY_BREAK
5260
0
case 235:
5261
0
YY_RULE_SETUP
5262
0
#line 450 "./util/configlexer.lex"
5263
0
{ YDVAR(1, VAR_STATISTICS_CUMULATIVE) }
5264
0
  YY_BREAK
5265
0
case 236:
5266
0
YY_RULE_SETUP
5267
0
#line 451 "./util/configlexer.lex"
5268
0
{ YDVAR(1, VAR_EXTENDED_STATISTICS) }
5269
0
  YY_BREAK
5270
0
case 237:
5271
0
YY_RULE_SETUP
5272
0
#line 452 "./util/configlexer.lex"
5273
0
{ YDVAR(1, VAR_STATISTICS_INHIBIT_ZERO) }
5274
0
  YY_BREAK
5275
0
case 238:
5276
0
YY_RULE_SETUP
5277
0
#line 453 "./util/configlexer.lex"
5278
0
{ YDVAR(1, VAR_SHM_ENABLE) }
5279
0
  YY_BREAK
5280
0
case 239:
5281
0
YY_RULE_SETUP
5282
0
#line 454 "./util/configlexer.lex"
5283
0
{ YDVAR(1, VAR_SHM_KEY) }
5284
0
  YY_BREAK
5285
0
case 240:
5286
0
YY_RULE_SETUP
5287
0
#line 455 "./util/configlexer.lex"
5288
0
{ YDVAR(0, VAR_REMOTE_CONTROL) }
5289
0
  YY_BREAK
5290
0
case 241:
5291
0
YY_RULE_SETUP
5292
0
#line 456 "./util/configlexer.lex"
5293
0
{ YDVAR(1, VAR_CONTROL_ENABLE) }
5294
0
  YY_BREAK
5295
0
case 242:
5296
0
YY_RULE_SETUP
5297
0
#line 457 "./util/configlexer.lex"
5298
0
{ YDVAR(1, VAR_CONTROL_INTERFACE) }
5299
0
  YY_BREAK
5300
0
case 243:
5301
0
YY_RULE_SETUP
5302
0
#line 458 "./util/configlexer.lex"
5303
0
{ YDVAR(1, VAR_CONTROL_PORT) }
5304
0
  YY_BREAK
5305
0
case 244:
5306
0
YY_RULE_SETUP
5307
0
#line 459 "./util/configlexer.lex"
5308
0
{ YDVAR(1, VAR_CONTROL_USE_CERT) }
5309
0
  YY_BREAK
5310
0
case 245:
5311
0
YY_RULE_SETUP
5312
0
#line 460 "./util/configlexer.lex"
5313
0
{ YDVAR(1, VAR_SERVER_KEY_FILE) }
5314
0
  YY_BREAK
5315
0
case 246:
5316
0
YY_RULE_SETUP
5317
0
#line 461 "./util/configlexer.lex"
5318
0
{ YDVAR(1, VAR_SERVER_CERT_FILE) }
5319
0
  YY_BREAK
5320
0
case 247:
5321
0
YY_RULE_SETUP
5322
0
#line 462 "./util/configlexer.lex"
5323
0
{ YDVAR(1, VAR_CONTROL_KEY_FILE) }
5324
0
  YY_BREAK
5325
0
case 248:
5326
0
YY_RULE_SETUP
5327
0
#line 463 "./util/configlexer.lex"
5328
0
{ YDVAR(1, VAR_CONTROL_CERT_FILE) }
5329
0
  YY_BREAK
5330
0
case 249:
5331
0
YY_RULE_SETUP
5332
0
#line 464 "./util/configlexer.lex"
5333
0
{ YDVAR(1, VAR_PYTHON_SCRIPT) }
5334
0
  YY_BREAK
5335
0
case 250:
5336
0
YY_RULE_SETUP
5337
0
#line 465 "./util/configlexer.lex"
5338
0
{ YDVAR(0, VAR_PYTHON) }
5339
0
  YY_BREAK
5340
0
case 251:
5341
0
YY_RULE_SETUP
5342
0
#line 466 "./util/configlexer.lex"
5343
0
{ YDVAR(1, VAR_DYNLIB_FILE) }
5344
0
  YY_BREAK
5345
0
case 252:
5346
0
YY_RULE_SETUP
5347
0
#line 467 "./util/configlexer.lex"
5348
0
{ YDVAR(0, VAR_DYNLIB) }
5349
0
  YY_BREAK
5350
0
case 253:
5351
0
YY_RULE_SETUP
5352
0
#line 468 "./util/configlexer.lex"
5353
0
{ YDVAR(1, VAR_DOMAIN_INSECURE) }
5354
0
  YY_BREAK
5355
0
case 254:
5356
0
YY_RULE_SETUP
5357
0
#line 469 "./util/configlexer.lex"
5358
0
{ YDVAR(1, VAR_MINIMAL_RESPONSES) }
5359
0
  YY_BREAK
5360
0
case 255:
5361
0
YY_RULE_SETUP
5362
0
#line 470 "./util/configlexer.lex"
5363
0
{ YDVAR(1, VAR_RRSET_ROUNDROBIN) }
5364
0
  YY_BREAK
5365
0
case 256:
5366
0
YY_RULE_SETUP
5367
0
#line 471 "./util/configlexer.lex"
5368
0
{ YDVAR(1, VAR_UNKNOWN_SERVER_TIME_LIMIT) }
5369
0
  YY_BREAK
5370
0
case 257:
5371
0
YY_RULE_SETUP
5372
0
#line 472 "./util/configlexer.lex"
5373
0
{ YDVAR(1, VAR_DISCARD_TIMEOUT) }
5374
0
  YY_BREAK
5375
0
case 258:
5376
0
YY_RULE_SETUP
5377
0
#line 473 "./util/configlexer.lex"
5378
0
{ YDVAR(1, VAR_WAIT_LIMIT) }
5379
0
  YY_BREAK
5380
0
case 259:
5381
0
YY_RULE_SETUP
5382
0
#line 474 "./util/configlexer.lex"
5383
0
{ YDVAR(1, VAR_WAIT_LIMIT_COOKIE) }
5384
0
  YY_BREAK
5385
0
case 260:
5386
0
YY_RULE_SETUP
5387
0
#line 475 "./util/configlexer.lex"
5388
0
{ YDVAR(2, VAR_WAIT_LIMIT_NETBLOCK) }
5389
0
  YY_BREAK
5390
0
case 261:
5391
0
YY_RULE_SETUP
5392
0
#line 476 "./util/configlexer.lex"
5393
0
{ YDVAR(2, VAR_WAIT_LIMIT_COOKIE_NETBLOCK) }
5394
0
  YY_BREAK
5395
0
case 262:
5396
0
YY_RULE_SETUP
5397
0
#line 477 "./util/configlexer.lex"
5398
0
{ YDVAR(1, VAR_MAX_UDP_SIZE) }
5399
0
  YY_BREAK
5400
0
case 263:
5401
0
YY_RULE_SETUP
5402
0
#line 478 "./util/configlexer.lex"
5403
0
{ YDVAR(1, VAR_DNS64_PREFIX) }
5404
0
  YY_BREAK
5405
0
case 264:
5406
0
YY_RULE_SETUP
5407
0
#line 479 "./util/configlexer.lex"
5408
0
{ YDVAR(1, VAR_DNS64_SYNTHALL) }
5409
0
  YY_BREAK
5410
0
case 265:
5411
0
YY_RULE_SETUP
5412
0
#line 480 "./util/configlexer.lex"
5413
0
{ YDVAR(1, VAR_DNS64_IGNORE_AAAA) }
5414
0
  YY_BREAK
5415
0
case 266:
5416
0
YY_RULE_SETUP
5417
0
#line 481 "./util/configlexer.lex"
5418
0
{ YDVAR(1, VAR_NAT64_PREFIX) }
5419
0
  YY_BREAK
5420
0
case 267:
5421
0
YY_RULE_SETUP
5422
0
#line 482 "./util/configlexer.lex"
5423
0
{ YDVAR(1, VAR_DEFINE_TAG) }
5424
0
  YY_BREAK
5425
0
case 268:
5426
0
YY_RULE_SETUP
5427
0
#line 483 "./util/configlexer.lex"
5428
0
{ YDVAR(2, VAR_LOCAL_ZONE_TAG) }
5429
0
  YY_BREAK
5430
0
case 269:
5431
0
YY_RULE_SETUP
5432
0
#line 484 "./util/configlexer.lex"
5433
0
{ YDVAR(2, VAR_ACCESS_CONTROL_TAG) }
5434
0
  YY_BREAK
5435
0
case 270:
5436
0
YY_RULE_SETUP
5437
0
#line 485 "./util/configlexer.lex"
5438
0
{ YDVAR(3, VAR_ACCESS_CONTROL_TAG_ACTION) }
5439
0
  YY_BREAK
5440
0
case 271:
5441
0
YY_RULE_SETUP
5442
0
#line 486 "./util/configlexer.lex"
5443
0
{ YDVAR(3, VAR_ACCESS_CONTROL_TAG_DATA) }
5444
0
  YY_BREAK
5445
0
case 272:
5446
0
YY_RULE_SETUP
5447
0
#line 487 "./util/configlexer.lex"
5448
0
{ YDVAR(2, VAR_ACCESS_CONTROL_VIEW) }
5449
0
  YY_BREAK
5450
0
case 273:
5451
0
YY_RULE_SETUP
5452
0
#line 488 "./util/configlexer.lex"
5453
0
{ YDVAR(2, VAR_INTERFACE_TAG) }
5454
0
  YY_BREAK
5455
0
case 274:
5456
0
YY_RULE_SETUP
5457
0
#line 489 "./util/configlexer.lex"
5458
0
{ YDVAR(3, VAR_INTERFACE_TAG_ACTION) }
5459
0
  YY_BREAK
5460
0
case 275:
5461
0
YY_RULE_SETUP
5462
0
#line 490 "./util/configlexer.lex"
5463
0
{ YDVAR(3, VAR_INTERFACE_TAG_DATA) }
5464
0
  YY_BREAK
5465
0
case 276:
5466
0
YY_RULE_SETUP
5467
0
#line 491 "./util/configlexer.lex"
5468
0
{ YDVAR(2, VAR_INTERFACE_VIEW) }
5469
0
  YY_BREAK
5470
0
case 277:
5471
0
YY_RULE_SETUP
5472
0
#line 492 "./util/configlexer.lex"
5473
0
{ YDVAR(3, VAR_LOCAL_ZONE_OVERRIDE) }
5474
0
  YY_BREAK
5475
0
case 278:
5476
0
YY_RULE_SETUP
5477
0
#line 493 "./util/configlexer.lex"
5478
0
{ YDVAR(0, VAR_DNSTAP) }
5479
0
  YY_BREAK
5480
0
case 279:
5481
0
YY_RULE_SETUP
5482
0
#line 494 "./util/configlexer.lex"
5483
0
{ YDVAR(1, VAR_DNSTAP_ENABLE) }
5484
0
  YY_BREAK
5485
0
case 280:
5486
0
YY_RULE_SETUP
5487
0
#line 495 "./util/configlexer.lex"
5488
0
{ YDVAR(1, VAR_DNSTAP_BIDIRECTIONAL) }
5489
0
  YY_BREAK
5490
0
case 281:
5491
0
YY_RULE_SETUP
5492
0
#line 496 "./util/configlexer.lex"
5493
0
{ YDVAR(1, VAR_DNSTAP_SOCKET_PATH) }
5494
0
  YY_BREAK
5495
0
case 282:
5496
0
YY_RULE_SETUP
5497
0
#line 497 "./util/configlexer.lex"
5498
0
{ YDVAR(1, VAR_DNSTAP_IP) }
5499
0
  YY_BREAK
5500
0
case 283:
5501
0
YY_RULE_SETUP
5502
0
#line 498 "./util/configlexer.lex"
5503
0
{ YDVAR(1, VAR_DNSTAP_TLS) }
5504
0
  YY_BREAK
5505
0
case 284:
5506
0
YY_RULE_SETUP
5507
0
#line 499 "./util/configlexer.lex"
5508
0
{ YDVAR(1, VAR_DNSTAP_TLS_SERVER_NAME) }
5509
0
  YY_BREAK
5510
0
case 285:
5511
0
YY_RULE_SETUP
5512
0
#line 500 "./util/configlexer.lex"
5513
0
{ YDVAR(1, VAR_DNSTAP_TLS_CERT_BUNDLE) }
5514
0
  YY_BREAK
5515
0
case 286:
5516
0
YY_RULE_SETUP
5517
0
#line 501 "./util/configlexer.lex"
5518
0
{
5519
0
    YDVAR(1, VAR_DNSTAP_TLS_CLIENT_KEY_FILE) }
5520
0
  YY_BREAK
5521
0
case 287:
5522
0
YY_RULE_SETUP
5523
0
#line 503 "./util/configlexer.lex"
5524
0
{
5525
0
    YDVAR(1, VAR_DNSTAP_TLS_CLIENT_CERT_FILE) }
5526
0
  YY_BREAK
5527
0
case 288:
5528
0
YY_RULE_SETUP
5529
0
#line 505 "./util/configlexer.lex"
5530
0
{ YDVAR(1, VAR_DNSTAP_SEND_IDENTITY) }
5531
0
  YY_BREAK
5532
0
case 289:
5533
0
YY_RULE_SETUP
5534
0
#line 506 "./util/configlexer.lex"
5535
0
{ YDVAR(1, VAR_DNSTAP_SEND_VERSION) }
5536
0
  YY_BREAK
5537
0
case 290:
5538
0
YY_RULE_SETUP
5539
0
#line 507 "./util/configlexer.lex"
5540
0
{ YDVAR(1, VAR_DNSTAP_IDENTITY) }
5541
0
  YY_BREAK
5542
0
case 291:
5543
0
YY_RULE_SETUP
5544
0
#line 508 "./util/configlexer.lex"
5545
0
{ YDVAR(1, VAR_DNSTAP_VERSION) }
5546
0
  YY_BREAK
5547
0
case 292:
5548
0
YY_RULE_SETUP
5549
0
#line 509 "./util/configlexer.lex"
5550
0
{
5551
0
    YDVAR(1, VAR_DNSTAP_LOG_RESOLVER_QUERY_MESSAGES) }
5552
0
  YY_BREAK
5553
0
case 293:
5554
0
YY_RULE_SETUP
5555
0
#line 511 "./util/configlexer.lex"
5556
0
{
5557
0
    YDVAR(1, VAR_DNSTAP_LOG_RESOLVER_RESPONSE_MESSAGES) }
5558
0
  YY_BREAK
5559
0
case 294:
5560
0
YY_RULE_SETUP
5561
0
#line 513 "./util/configlexer.lex"
5562
0
{
5563
0
    YDVAR(1, VAR_DNSTAP_LOG_CLIENT_QUERY_MESSAGES) }
5564
0
  YY_BREAK
5565
0
case 295:
5566
0
YY_RULE_SETUP
5567
0
#line 515 "./util/configlexer.lex"
5568
0
{
5569
0
    YDVAR(1, VAR_DNSTAP_LOG_CLIENT_RESPONSE_MESSAGES) }
5570
0
  YY_BREAK
5571
0
case 296:
5572
0
YY_RULE_SETUP
5573
0
#line 517 "./util/configlexer.lex"
5574
0
{
5575
0
    YDVAR(1, VAR_DNSTAP_LOG_FORWARDER_QUERY_MESSAGES) }
5576
0
  YY_BREAK
5577
0
case 297:
5578
0
YY_RULE_SETUP
5579
0
#line 519 "./util/configlexer.lex"
5580
0
{
5581
0
    YDVAR(1, VAR_DNSTAP_LOG_FORWARDER_RESPONSE_MESSAGES) }
5582
0
  YY_BREAK
5583
0
case 298:
5584
0
YY_RULE_SETUP
5585
0
#line 521 "./util/configlexer.lex"
5586
0
{ YDVAR(1, VAR_DNSTAP_SAMPLE_RATE) }
5587
0
  YY_BREAK
5588
0
case 299:
5589
0
YY_RULE_SETUP
5590
0
#line 522 "./util/configlexer.lex"
5591
0
{ YDVAR(1, VAR_DISABLE_DNSSEC_LAME_CHECK) }
5592
0
  YY_BREAK
5593
0
case 300:
5594
0
YY_RULE_SETUP
5595
0
#line 523 "./util/configlexer.lex"
5596
0
{ YDVAR(1, VAR_IP_RATELIMIT) }
5597
0
  YY_BREAK
5598
0
case 301:
5599
0
YY_RULE_SETUP
5600
0
#line 524 "./util/configlexer.lex"
5601
0
{ YDVAR(1, VAR_IP_RATELIMIT_COOKIE) }
5602
0
  YY_BREAK
5603
0
case 302:
5604
0
YY_RULE_SETUP
5605
0
#line 525 "./util/configlexer.lex"
5606
0
{ YDVAR(1, VAR_RATELIMIT) }
5607
0
  YY_BREAK
5608
0
case 303:
5609
0
YY_RULE_SETUP
5610
0
#line 526 "./util/configlexer.lex"
5611
0
{ YDVAR(1, VAR_IP_RATELIMIT_SLABS) }
5612
0
  YY_BREAK
5613
0
case 304:
5614
0
YY_RULE_SETUP
5615
0
#line 527 "./util/configlexer.lex"
5616
0
{ YDVAR(1, VAR_RATELIMIT_SLABS) }
5617
0
  YY_BREAK
5618
0
case 305:
5619
0
YY_RULE_SETUP
5620
0
#line 528 "./util/configlexer.lex"
5621
0
{ YDVAR(1, VAR_IP_RATELIMIT_SIZE) }
5622
0
  YY_BREAK
5623
0
case 306:
5624
0
YY_RULE_SETUP
5625
0
#line 529 "./util/configlexer.lex"
5626
0
{ YDVAR(1, VAR_RATELIMIT_SIZE) }
5627
0
  YY_BREAK
5628
0
case 307:
5629
0
YY_RULE_SETUP
5630
0
#line 530 "./util/configlexer.lex"
5631
0
{ YDVAR(2, VAR_RATELIMIT_FOR_DOMAIN) }
5632
0
  YY_BREAK
5633
0
case 308:
5634
0
YY_RULE_SETUP
5635
0
#line 531 "./util/configlexer.lex"
5636
0
{ YDVAR(2, VAR_RATELIMIT_BELOW_DOMAIN) }
5637
0
  YY_BREAK
5638
0
case 309:
5639
0
YY_RULE_SETUP
5640
0
#line 532 "./util/configlexer.lex"
5641
0
{ YDVAR(1, VAR_IP_RATELIMIT_FACTOR) }
5642
0
  YY_BREAK
5643
0
case 310:
5644
0
YY_RULE_SETUP
5645
0
#line 533 "./util/configlexer.lex"
5646
0
{ YDVAR(1, VAR_RATELIMIT_FACTOR) }
5647
0
  YY_BREAK
5648
0
case 311:
5649
0
YY_RULE_SETUP
5650
0
#line 534 "./util/configlexer.lex"
5651
0
{ YDVAR(1, VAR_IP_RATELIMIT_BACKOFF) }
5652
0
  YY_BREAK
5653
0
case 312:
5654
0
YY_RULE_SETUP
5655
0
#line 535 "./util/configlexer.lex"
5656
0
{ YDVAR(1, VAR_RATELIMIT_BACKOFF) }
5657
0
  YY_BREAK
5658
0
case 313:
5659
0
YY_RULE_SETUP
5660
0
#line 536 "./util/configlexer.lex"
5661
0
{ YDVAR(1, VAR_OUTBOUND_MSG_RETRY) }
5662
0
  YY_BREAK
5663
0
case 314:
5664
0
YY_RULE_SETUP
5665
0
#line 537 "./util/configlexer.lex"
5666
0
{ YDVAR(1, VAR_MAX_SENT_COUNT) }
5667
0
  YY_BREAK
5668
0
case 315:
5669
0
YY_RULE_SETUP
5670
0
#line 538 "./util/configlexer.lex"
5671
0
{ YDVAR(1, VAR_MAX_QUERY_RESTARTS) }
5672
0
  YY_BREAK
5673
0
case 316:
5674
0
YY_RULE_SETUP
5675
0
#line 539 "./util/configlexer.lex"
5676
0
{ YDVAR(1, VAR_LOW_RTT) }
5677
0
  YY_BREAK
5678
0
case 317:
5679
0
YY_RULE_SETUP
5680
0
#line 540 "./util/configlexer.lex"
5681
0
{ YDVAR(1, VAR_FAST_SERVER_NUM) }
5682
0
  YY_BREAK
5683
0
case 318:
5684
0
YY_RULE_SETUP
5685
0
#line 541 "./util/configlexer.lex"
5686
0
{ YDVAR(1, VAR_FAST_SERVER_PERMIL) }
5687
0
  YY_BREAK
5688
0
case 319:
5689
0
YY_RULE_SETUP
5690
0
#line 542 "./util/configlexer.lex"
5691
0
{ YDVAR(1, VAR_FAST_SERVER_PERMIL) }
5692
0
  YY_BREAK
5693
0
case 320:
5694
0
YY_RULE_SETUP
5695
0
#line 543 "./util/configlexer.lex"
5696
0
{ YDVAR(1, VAR_FAST_SERVER_PERMIL) }
5697
0
  YY_BREAK
5698
0
case 321:
5699
0
YY_RULE_SETUP
5700
0
#line 544 "./util/configlexer.lex"
5701
0
{ YDVAR(2, VAR_RESPONSE_IP_TAG) }
5702
0
  YY_BREAK
5703
0
case 322:
5704
0
YY_RULE_SETUP
5705
0
#line 545 "./util/configlexer.lex"
5706
0
{ YDVAR(2, VAR_RESPONSE_IP) }
5707
0
  YY_BREAK
5708
0
case 323:
5709
0
YY_RULE_SETUP
5710
0
#line 546 "./util/configlexer.lex"
5711
0
{ YDVAR(2, VAR_RESPONSE_IP_DATA) }
5712
0
  YY_BREAK
5713
0
case 324:
5714
0
YY_RULE_SETUP
5715
0
#line 547 "./util/configlexer.lex"
5716
0
{ YDVAR(0, VAR_DNSCRYPT) }
5717
0
  YY_BREAK
5718
0
case 325:
5719
0
YY_RULE_SETUP
5720
0
#line 548 "./util/configlexer.lex"
5721
0
{ YDVAR(1, VAR_DNSCRYPT_ENABLE) }
5722
0
  YY_BREAK
5723
0
case 326:
5724
0
YY_RULE_SETUP
5725
0
#line 549 "./util/configlexer.lex"
5726
0
{ YDVAR(1, VAR_DNSCRYPT_PORT) }
5727
0
  YY_BREAK
5728
0
case 327:
5729
0
YY_RULE_SETUP
5730
0
#line 550 "./util/configlexer.lex"
5731
0
{ YDVAR(1, VAR_DNSCRYPT_PROVIDER) }
5732
0
  YY_BREAK
5733
0
case 328:
5734
0
YY_RULE_SETUP
5735
0
#line 551 "./util/configlexer.lex"
5736
0
{ YDVAR(1, VAR_DNSCRYPT_SECRET_KEY) }
5737
0
  YY_BREAK
5738
0
case 329:
5739
0
YY_RULE_SETUP
5740
0
#line 552 "./util/configlexer.lex"
5741
0
{ YDVAR(1, VAR_DNSCRYPT_PROVIDER_CERT) }
5742
0
  YY_BREAK
5743
0
case 330:
5744
0
YY_RULE_SETUP
5745
0
#line 553 "./util/configlexer.lex"
5746
0
{ YDVAR(1, VAR_DNSCRYPT_PROVIDER_CERT_ROTATED) }
5747
0
  YY_BREAK
5748
0
case 331:
5749
0
YY_RULE_SETUP
5750
0
#line 554 "./util/configlexer.lex"
5751
0
{
5752
0
    YDVAR(1, VAR_DNSCRYPT_SHARED_SECRET_CACHE_SIZE) }
5753
0
  YY_BREAK
5754
0
case 332:
5755
0
YY_RULE_SETUP
5756
0
#line 556 "./util/configlexer.lex"
5757
0
{
5758
0
    YDVAR(1, VAR_DNSCRYPT_SHARED_SECRET_CACHE_SLABS) }
5759
0
  YY_BREAK
5760
0
case 333:
5761
0
YY_RULE_SETUP
5762
0
#line 558 "./util/configlexer.lex"
5763
0
{ YDVAR(1, VAR_DNSCRYPT_NONCE_CACHE_SIZE) }
5764
0
  YY_BREAK
5765
0
case 334:
5766
0
YY_RULE_SETUP
5767
0
#line 559 "./util/configlexer.lex"
5768
0
{ YDVAR(1, VAR_DNSCRYPT_NONCE_CACHE_SLABS) }
5769
0
  YY_BREAK
5770
0
case 335:
5771
0
YY_RULE_SETUP
5772
0
#line 560 "./util/configlexer.lex"
5773
0
{ YDVAR(1, VAR_PAD_RESPONSES) }
5774
0
  YY_BREAK
5775
0
case 336:
5776
0
YY_RULE_SETUP
5777
0
#line 561 "./util/configlexer.lex"
5778
0
{ YDVAR(1, VAR_PAD_RESPONSES_BLOCK_SIZE) }
5779
0
  YY_BREAK
5780
0
case 337:
5781
0
YY_RULE_SETUP
5782
0
#line 562 "./util/configlexer.lex"
5783
0
{ YDVAR(1, VAR_PAD_QUERIES) }
5784
0
  YY_BREAK
5785
0
case 338:
5786
0
YY_RULE_SETUP
5787
0
#line 563 "./util/configlexer.lex"
5788
0
{ YDVAR(1, VAR_PAD_QUERIES_BLOCK_SIZE) }
5789
0
  YY_BREAK
5790
0
case 339:
5791
0
YY_RULE_SETUP
5792
0
#line 564 "./util/configlexer.lex"
5793
0
{ YDVAR(1, VAR_IPSECMOD_ENABLED) }
5794
0
  YY_BREAK
5795
0
case 340:
5796
0
YY_RULE_SETUP
5797
0
#line 565 "./util/configlexer.lex"
5798
0
{ YDVAR(1, VAR_IPSECMOD_IGNORE_BOGUS) }
5799
0
  YY_BREAK
5800
0
case 341:
5801
0
YY_RULE_SETUP
5802
0
#line 566 "./util/configlexer.lex"
5803
0
{ YDVAR(1, VAR_IPSECMOD_HOOK) }
5804
0
  YY_BREAK
5805
0
case 342:
5806
0
YY_RULE_SETUP
5807
0
#line 567 "./util/configlexer.lex"
5808
0
{ YDVAR(1, VAR_IPSECMOD_MAX_TTL) }
5809
0
  YY_BREAK
5810
0
case 343:
5811
0
YY_RULE_SETUP
5812
0
#line 568 "./util/configlexer.lex"
5813
0
{ YDVAR(1, VAR_IPSECMOD_WHITELIST) }
5814
0
  YY_BREAK
5815
0
case 344:
5816
0
YY_RULE_SETUP
5817
0
#line 569 "./util/configlexer.lex"
5818
0
{ YDVAR(1, VAR_IPSECMOD_WHITELIST) }
5819
0
  YY_BREAK
5820
0
case 345:
5821
0
YY_RULE_SETUP
5822
0
#line 570 "./util/configlexer.lex"
5823
0
{ YDVAR(1, VAR_IPSECMOD_STRICT) }
5824
0
  YY_BREAK
5825
0
case 346:
5826
0
YY_RULE_SETUP
5827
0
#line 571 "./util/configlexer.lex"
5828
0
{ YDVAR(0, VAR_CACHEDB) }
5829
0
  YY_BREAK
5830
0
case 347:
5831
0
YY_RULE_SETUP
5832
0
#line 572 "./util/configlexer.lex"
5833
0
{ YDVAR(1, VAR_CACHEDB_BACKEND) }
5834
0
  YY_BREAK
5835
0
case 348:
5836
0
YY_RULE_SETUP
5837
0
#line 573 "./util/configlexer.lex"
5838
0
{ YDVAR(1, VAR_CACHEDB_SECRETSEED) }
5839
0
  YY_BREAK
5840
0
case 349:
5841
0
YY_RULE_SETUP
5842
0
#line 574 "./util/configlexer.lex"
5843
0
{ YDVAR(1, VAR_CACHEDB_NO_STORE) }
5844
0
  YY_BREAK
5845
0
case 350:
5846
0
YY_RULE_SETUP
5847
0
#line 575 "./util/configlexer.lex"
5848
0
{ YDVAR(1, VAR_CACHEDB_CHECK_WHEN_SERVE_EXPIRED) }
5849
0
  YY_BREAK
5850
0
case 351:
5851
0
YY_RULE_SETUP
5852
0
#line 576 "./util/configlexer.lex"
5853
0
{ YDVAR(1, VAR_CACHEDB_REDISHOST) }
5854
0
  YY_BREAK
5855
0
case 352:
5856
0
YY_RULE_SETUP
5857
0
#line 577 "./util/configlexer.lex"
5858
0
{ YDVAR(1, VAR_CACHEDB_REDISREPLICAHOST) }
5859
0
  YY_BREAK
5860
0
case 353:
5861
0
YY_RULE_SETUP
5862
0
#line 578 "./util/configlexer.lex"
5863
0
{ YDVAR(1, VAR_CACHEDB_REDISPORT) }
5864
0
  YY_BREAK
5865
0
case 354:
5866
0
YY_RULE_SETUP
5867
0
#line 579 "./util/configlexer.lex"
5868
0
{ YDVAR(1, VAR_CACHEDB_REDISREPLICAPORT) }
5869
0
  YY_BREAK
5870
0
case 355:
5871
0
YY_RULE_SETUP
5872
0
#line 580 "./util/configlexer.lex"
5873
0
{ YDVAR(1, VAR_CACHEDB_REDISPATH) }
5874
0
  YY_BREAK
5875
0
case 356:
5876
0
YY_RULE_SETUP
5877
0
#line 581 "./util/configlexer.lex"
5878
0
{ YDVAR(1, VAR_CACHEDB_REDISREPLICAPATH) }
5879
0
  YY_BREAK
5880
0
case 357:
5881
0
YY_RULE_SETUP
5882
0
#line 582 "./util/configlexer.lex"
5883
0
{ YDVAR(1, VAR_CACHEDB_REDISPASSWORD) }
5884
0
  YY_BREAK
5885
0
case 358:
5886
0
YY_RULE_SETUP
5887
0
#line 583 "./util/configlexer.lex"
5888
0
{ YDVAR(1, VAR_CACHEDB_REDISREPLICAPASSWORD) }
5889
0
  YY_BREAK
5890
0
case 359:
5891
0
YY_RULE_SETUP
5892
0
#line 584 "./util/configlexer.lex"
5893
0
{ YDVAR(1, VAR_CACHEDB_REDISTIMEOUT) }
5894
0
  YY_BREAK
5895
0
case 360:
5896
0
YY_RULE_SETUP
5897
0
#line 585 "./util/configlexer.lex"
5898
0
{ YDVAR(1, VAR_CACHEDB_REDISREPLICATIMEOUT) }
5899
0
  YY_BREAK
5900
0
case 361:
5901
0
YY_RULE_SETUP
5902
0
#line 586 "./util/configlexer.lex"
5903
0
{ YDVAR(1, VAR_CACHEDB_REDISCOMMANDTIMEOUT) }
5904
0
  YY_BREAK
5905
0
case 362:
5906
0
YY_RULE_SETUP
5907
0
#line 587 "./util/configlexer.lex"
5908
0
{ YDVAR(1, VAR_CACHEDB_REDISREPLICACOMMANDTIMEOUT) }
5909
0
  YY_BREAK
5910
0
case 363:
5911
0
YY_RULE_SETUP
5912
0
#line 588 "./util/configlexer.lex"
5913
0
{ YDVAR(1, VAR_CACHEDB_REDISCONNECTTIMEOUT) }
5914
0
  YY_BREAK
5915
0
case 364:
5916
0
YY_RULE_SETUP
5917
0
#line 589 "./util/configlexer.lex"
5918
0
{ YDVAR(1, VAR_CACHEDB_REDISREPLICACONNECTTIMEOUT) }
5919
0
  YY_BREAK
5920
0
case 365:
5921
0
YY_RULE_SETUP
5922
0
#line 590 "./util/configlexer.lex"
5923
0
{ YDVAR(1, VAR_CACHEDB_REDISEXPIRERECORDS) }
5924
0
  YY_BREAK
5925
0
case 366:
5926
0
YY_RULE_SETUP
5927
0
#line 591 "./util/configlexer.lex"
5928
0
{ YDVAR(1, VAR_CACHEDB_REDISLOGICALDB) }
5929
0
  YY_BREAK
5930
0
case 367:
5931
0
YY_RULE_SETUP
5932
0
#line 592 "./util/configlexer.lex"
5933
0
{ YDVAR(1, VAR_CACHEDB_REDISREPLICALOGICALDB) }
5934
0
  YY_BREAK
5935
0
case 368:
5936
0
YY_RULE_SETUP
5937
0
#line 593 "./util/configlexer.lex"
5938
0
{ YDVAR(0, VAR_IPSET) }
5939
0
  YY_BREAK
5940
0
case 369:
5941
0
YY_RULE_SETUP
5942
0
#line 594 "./util/configlexer.lex"
5943
0
{ YDVAR(1, VAR_IPSET_NAME_V4) }
5944
0
  YY_BREAK
5945
0
case 370:
5946
0
YY_RULE_SETUP
5947
0
#line 595 "./util/configlexer.lex"
5948
0
{ YDVAR(1, VAR_IPSET_NAME_V6) }
5949
0
  YY_BREAK
5950
0
case 371:
5951
0
YY_RULE_SETUP
5952
0
#line 596 "./util/configlexer.lex"
5953
0
{ YDVAR(1, VAR_UDP_UPSTREAM_WITHOUT_DOWNSTREAM) }
5954
0
  YY_BREAK
5955
0
case 372:
5956
0
YY_RULE_SETUP
5957
0
#line 597 "./util/configlexer.lex"
5958
0
{ YDVAR(2, VAR_TCP_CONNECTION_LIMIT) }
5959
0
  YY_BREAK
5960
0
case 373:
5961
0
YY_RULE_SETUP
5962
0
#line 598 "./util/configlexer.lex"
5963
0
{ YDVAR(1, VAR_ANSWER_COOKIE ) }
5964
0
  YY_BREAK
5965
0
case 374:
5966
0
YY_RULE_SETUP
5967
0
#line 599 "./util/configlexer.lex"
5968
0
{ YDVAR(1, VAR_COOKIE_SECRET) }
5969
0
  YY_BREAK
5970
0
case 375:
5971
0
YY_RULE_SETUP
5972
0
#line 600 "./util/configlexer.lex"
5973
0
{ YDVAR(1, VAR_COOKIE_SECRET_FILE) }
5974
0
  YY_BREAK
5975
0
case 376:
5976
0
YY_RULE_SETUP
5977
0
#line 601 "./util/configlexer.lex"
5978
0
{ YDVAR(2, VAR_EDNS_CLIENT_STRING) }
5979
0
  YY_BREAK
5980
0
case 377:
5981
0
YY_RULE_SETUP
5982
0
#line 602 "./util/configlexer.lex"
5983
0
{ YDVAR(1, VAR_EDNS_CLIENT_STRING_OPCODE) }
5984
0
  YY_BREAK
5985
0
case 378:
5986
0
YY_RULE_SETUP
5987
0
#line 603 "./util/configlexer.lex"
5988
0
{ YDVAR(1, VAR_NSID ) }
5989
0
  YY_BREAK
5990
0
case 379:
5991
0
YY_RULE_SETUP
5992
0
#line 604 "./util/configlexer.lex"
5993
0
{ YDVAR(1, VAR_EDE ) }
5994
0
  YY_BREAK
5995
0
case 380:
5996
0
YY_RULE_SETUP
5997
0
#line 605 "./util/configlexer.lex"
5998
0
{ YDVAR(1, VAR_DNS_ERROR_REPORTING ) }
5999
0
  YY_BREAK
6000
0
case 381:
6001
0
YY_RULE_SETUP
6002
0
#line 606 "./util/configlexer.lex"
6003
0
{ YDVAR(1, VAR_PROXY_PROTOCOL_PORT) }
6004
0
  YY_BREAK
6005
0
case 382:
6006
0
YY_RULE_SETUP
6007
0
#line 607 "./util/configlexer.lex"
6008
0
{ YDVAR(1, VAR_ITER_SCRUB_NS) }
6009
0
  YY_BREAK
6010
0
case 383:
6011
0
YY_RULE_SETUP
6012
0
#line 608 "./util/configlexer.lex"
6013
0
{ YDVAR(1, VAR_ITER_SCRUB_CNAME) }
6014
0
  YY_BREAK
6015
0
case 384:
6016
0
YY_RULE_SETUP
6017
0
#line 609 "./util/configlexer.lex"
6018
0
{ YDVAR(1, VAR_MAX_GLOBAL_QUOTA) }
6019
0
  YY_BREAK
6020
0
case 385:
6021
0
YY_RULE_SETUP
6022
0
#line 610 "./util/configlexer.lex"
6023
0
{ YDVAR(1, VAR_ITER_SCRUB_PROMISCUOUS) }
6024
0
  YY_BREAK
6025
0
case 386:
6026
/* rule 386 can match eol */
6027
0
YY_RULE_SETUP
6028
0
#line 611 "./util/configlexer.lex"
6029
0
{ LEXOUT(("NL\n")); cfg_parser->line++; }
6030
0
  YY_BREAK
6031
/* Quoted strings. Strip leading and ending quotes */
6032
0
case 387:
6033
0
YY_RULE_SETUP
6034
0
#line 614 "./util/configlexer.lex"
6035
0
{ BEGIN(quotedstring); LEXOUT(("QS ")); }
6036
0
  YY_BREAK
6037
0
case YY_STATE_EOF(quotedstring):
6038
0
#line 615 "./util/configlexer.lex"
6039
0
{
6040
0
        yyerror("EOF inside quoted string");
6041
0
  if(--num_args == 0) { BEGIN(INITIAL); }
6042
0
  else        { BEGIN(val); }
6043
0
}
6044
0
  YY_BREAK
6045
0
case 388:
6046
0
YY_RULE_SETUP
6047
0
#line 620 "./util/configlexer.lex"
6048
0
{ LEXOUT(("STR(%s) ", yytext)); yymore(); }
6049
0
  YY_BREAK
6050
0
case 389:
6051
/* rule 389 can match eol */
6052
0
YY_RULE_SETUP
6053
0
#line 621 "./util/configlexer.lex"
6054
0
{ yyerror("newline inside quoted string, no end \"");
6055
0
        cfg_parser->line++; BEGIN(INITIAL); }
6056
0
  YY_BREAK
6057
0
case 390:
6058
0
YY_RULE_SETUP
6059
0
#line 623 "./util/configlexer.lex"
6060
0
{
6061
0
        LEXOUT(("QE "));
6062
0
  if(--num_args == 0) { BEGIN(INITIAL); }
6063
0
  else        { BEGIN(val); }
6064
0
        yytext[yyleng - 1] = '\0';
6065
0
  yylval.str = strdup(yytext);
6066
0
  if(!yylval.str)
6067
0
    yyerror("out of memory");
6068
0
        return STRING_ARG;
6069
0
}
6070
0
  YY_BREAK
6071
/* Single Quoted strings. Strip leading and ending quotes */
6072
0
case 391:
6073
0
YY_RULE_SETUP
6074
0
#line 635 "./util/configlexer.lex"
6075
0
{ BEGIN(singlequotedstr); LEXOUT(("SQS ")); }
6076
0
  YY_BREAK
6077
0
case YY_STATE_EOF(singlequotedstr):
6078
0
#line 636 "./util/configlexer.lex"
6079
0
{
6080
0
        yyerror("EOF inside quoted string");
6081
0
  if(--num_args == 0) { BEGIN(INITIAL); }
6082
0
  else        { BEGIN(val); }
6083
0
}
6084
0
  YY_BREAK
6085
0
case 392:
6086
0
YY_RULE_SETUP
6087
0
#line 641 "./util/configlexer.lex"
6088
0
{ LEXOUT(("STR(%s) ", yytext)); yymore(); }
6089
0
  YY_BREAK
6090
0
case 393:
6091
/* rule 393 can match eol */
6092
0
YY_RULE_SETUP
6093
0
#line 642 "./util/configlexer.lex"
6094
0
{ yyerror("newline inside quoted string, no end '");
6095
0
           cfg_parser->line++; BEGIN(INITIAL); }
6096
0
  YY_BREAK
6097
0
case 394:
6098
0
YY_RULE_SETUP
6099
0
#line 644 "./util/configlexer.lex"
6100
0
{
6101
0
        LEXOUT(("SQE "));
6102
0
  if(--num_args == 0) { BEGIN(INITIAL); }
6103
0
  else        { BEGIN(val); }
6104
0
        yytext[yyleng - 1] = '\0';
6105
0
  yylval.str = strdup(yytext);
6106
0
  if(!yylval.str)
6107
0
    yyerror("out of memory");
6108
0
        return STRING_ARG;
6109
0
}
6110
0
  YY_BREAK
6111
/* include: directive */
6112
0
case 395:
6113
0
YY_RULE_SETUP
6114
0
#line 656 "./util/configlexer.lex"
6115
0
{
6116
0
  LEXOUT(("v(%s) ", yytext)); inc_prev = YYSTATE; BEGIN(include); }
6117
0
  YY_BREAK
6118
0
case YY_STATE_EOF(include):
6119
0
#line 658 "./util/configlexer.lex"
6120
0
{
6121
0
        yyerror("EOF inside include directive");
6122
0
        BEGIN(inc_prev);
6123
0
}
6124
0
  YY_BREAK
6125
0
case 396:
6126
0
YY_RULE_SETUP
6127
0
#line 662 "./util/configlexer.lex"
6128
0
{ LEXOUT(("ISP ")); /* ignore */ }
6129
0
  YY_BREAK
6130
0
case 397:
6131
/* rule 397 can match eol */
6132
0
YY_RULE_SETUP
6133
0
#line 663 "./util/configlexer.lex"
6134
0
{ LEXOUT(("NL\n")); cfg_parser->line++;}
6135
0
  YY_BREAK
6136
0
case 398:
6137
0
YY_RULE_SETUP
6138
0
#line 664 "./util/configlexer.lex"
6139
0
{ LEXOUT(("IQS ")); BEGIN(include_quoted); }
6140
0
  YY_BREAK
6141
0
case 399:
6142
0
YY_RULE_SETUP
6143
0
#line 665 "./util/configlexer.lex"
6144
0
{
6145
0
  LEXOUT(("Iunquotedstr(%s) ", yytext));
6146
0
  config_start_include_glob(yytext, 0);
6147
0
  BEGIN(inc_prev);
6148
0
}
6149
0
  YY_BREAK
6150
0
case YY_STATE_EOF(include_quoted):
6151
0
#line 670 "./util/configlexer.lex"
6152
0
{
6153
0
        yyerror("EOF inside quoted string");
6154
0
        BEGIN(inc_prev);
6155
0
}
6156
0
  YY_BREAK
6157
0
case 400:
6158
0
YY_RULE_SETUP
6159
0
#line 674 "./util/configlexer.lex"
6160
0
{ LEXOUT(("ISTR(%s) ", yytext)); yymore(); }
6161
0
  YY_BREAK
6162
0
case 401:
6163
/* rule 401 can match eol */
6164
0
YY_RULE_SETUP
6165
0
#line 675 "./util/configlexer.lex"
6166
0
{ yyerror("newline before \" in include name");
6167
0
          cfg_parser->line++; BEGIN(inc_prev); }
6168
0
  YY_BREAK
6169
0
case 402:
6170
0
YY_RULE_SETUP
6171
0
#line 677 "./util/configlexer.lex"
6172
0
{
6173
0
  LEXOUT(("IQE "));
6174
0
  yytext[yyleng - 1] = '\0';
6175
0
  config_start_include_glob(yytext, 0);
6176
0
  BEGIN(inc_prev);
6177
0
}
6178
0
  YY_BREAK
6179
0
case YY_STATE_EOF(INITIAL):
6180
0
case YY_STATE_EOF(val):
6181
0
#line 683 "./util/configlexer.lex"
6182
0
{
6183
0
  LEXOUT(("LEXEOF "));
6184
0
  yy_set_bol(1); /* Set beginning of line, so "^" rules match.  */
6185
0
  if (!config_include_stack) {
6186
0
    yyterminate();
6187
0
  } else {
6188
0
    int prev_toplevel = inc_toplevel;
6189
0
    fclose(yyin);
6190
0
    config_end_include();
6191
0
    if(prev_toplevel) return (VAR_FORCE_TOPLEVEL);
6192
0
  }
6193
0
}
6194
0
  YY_BREAK
6195
/* include-toplevel: directive */
6196
0
case 403:
6197
0
YY_RULE_SETUP
6198
0
#line 697 "./util/configlexer.lex"
6199
0
{
6200
0
  LEXOUT(("v(%s) ", yytext)); inc_prev = YYSTATE; BEGIN(include_toplevel);
6201
0
}
6202
0
  YY_BREAK
6203
0
case YY_STATE_EOF(include_toplevel):
6204
0
#line 700 "./util/configlexer.lex"
6205
0
{
6206
0
  yyerror("EOF inside include_toplevel directive");
6207
0
  BEGIN(inc_prev);
6208
0
}
6209
0
  YY_BREAK
6210
0
case 404:
6211
0
YY_RULE_SETUP
6212
0
#line 704 "./util/configlexer.lex"
6213
0
{ LEXOUT(("ITSP ")); /* ignore */ }
6214
0
  YY_BREAK
6215
0
case 405:
6216
/* rule 405 can match eol */
6217
0
YY_RULE_SETUP
6218
0
#line 705 "./util/configlexer.lex"
6219
0
{ LEXOUT(("NL\n")); cfg_parser->line++; }
6220
0
  YY_BREAK
6221
0
case 406:
6222
0
YY_RULE_SETUP
6223
0
#line 706 "./util/configlexer.lex"
6224
0
{ LEXOUT(("ITQS ")); BEGIN(include_toplevel_quoted); }
6225
0
  YY_BREAK
6226
0
case 407:
6227
0
YY_RULE_SETUP
6228
0
#line 707 "./util/configlexer.lex"
6229
0
{
6230
0
  LEXOUT(("ITunquotedstr(%s) ", yytext));
6231
0
  config_start_include_glob(yytext, 1);
6232
0
  BEGIN(inc_prev);
6233
0
  return (VAR_FORCE_TOPLEVEL);
6234
0
}
6235
0
  YY_BREAK
6236
0
case YY_STATE_EOF(include_toplevel_quoted):
6237
0
#line 713 "./util/configlexer.lex"
6238
0
{
6239
0
  yyerror("EOF inside quoted string");
6240
0
  BEGIN(inc_prev);
6241
0
}
6242
0
  YY_BREAK
6243
0
case 408:
6244
0
YY_RULE_SETUP
6245
0
#line 717 "./util/configlexer.lex"
6246
0
{ LEXOUT(("ITSTR(%s) ", yytext)); yymore(); }
6247
0
  YY_BREAK
6248
0
case 409:
6249
/* rule 409 can match eol */
6250
0
YY_RULE_SETUP
6251
0
#line 718 "./util/configlexer.lex"
6252
0
{
6253
0
  yyerror("newline before \" in include name");
6254
0
  cfg_parser->line++; BEGIN(inc_prev);
6255
0
}
6256
0
  YY_BREAK
6257
0
case 410:
6258
0
YY_RULE_SETUP
6259
0
#line 722 "./util/configlexer.lex"
6260
0
{
6261
0
  LEXOUT(("ITQE "));
6262
0
  yytext[yyleng - 1] = '\0';
6263
0
  config_start_include_glob(yytext, 1);
6264
0
  BEGIN(inc_prev);
6265
0
  return (VAR_FORCE_TOPLEVEL);
6266
0
}
6267
0
  YY_BREAK
6268
0
case 411:
6269
0
YY_RULE_SETUP
6270
0
#line 730 "./util/configlexer.lex"
6271
0
{ LEXOUT(("unquotedstr(%s) ", yytext));
6272
0
      if(--num_args == 0) { BEGIN(INITIAL); }
6273
0
      yylval.str = strdup(yytext); return STRING_ARG; }
6274
0
  YY_BREAK
6275
0
case 412:
6276
0
YY_RULE_SETUP
6277
0
#line 734 "./util/configlexer.lex"
6278
0
{
6279
0
  ub_c_error_msg("unknown keyword '%s'", yytext);
6280
0
  }
6281
0
  YY_BREAK
6282
0
case 413:
6283
0
YY_RULE_SETUP
6284
0
#line 738 "./util/configlexer.lex"
6285
0
{
6286
0
  ub_c_error_msg("stray '%s'", yytext);
6287
0
  }
6288
0
  YY_BREAK
6289
0
case 414:
6290
0
YY_RULE_SETUP
6291
0
#line 742 "./util/configlexer.lex"
6292
0
ECHO;
6293
0
  YY_BREAK
6294
0
#line 6293 "<stdout>"
6295
6296
0
  case YY_END_OF_BUFFER:
6297
0
    {
6298
    /* Amount of text matched not including the EOB char. */
6299
0
    int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
6300
6301
    /* Undo the effects of YY_DO_BEFORE_ACTION. */
6302
0
    *yy_cp = (yy_hold_char);
6303
0
    YY_RESTORE_YY_MORE_OFFSET
6304
6305
0
    if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
6306
0
      {
6307
      /* We're scanning a new file or input source.  It's
6308
       * possible that this happened because the user
6309
       * just pointed yyin at a new source and called
6310
       * yylex().  If so, then we have to assure
6311
       * consistency between YY_CURRENT_BUFFER and our
6312
       * globals.  Here is the right place to do so, because
6313
       * this is the first action (other than possibly a
6314
       * back-up) that will match for the new input source.
6315
       */
6316
0
      (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
6317
0
      YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
6318
0
      YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
6319
0
      }
6320
6321
    /* Note that here we test for yy_c_buf_p "<=" to the position
6322
     * of the first EOB in the buffer, since yy_c_buf_p will
6323
     * already have been incremented past the NUL character
6324
     * (since all states make transitions on EOB to the
6325
     * end-of-buffer state).  Contrast this with the test
6326
     * in input().
6327
     */
6328
0
    if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
6329
0
      { /* This was really a NUL. */
6330
0
      yy_state_type yy_next_state;
6331
6332
0
      (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
6333
6334
0
      yy_current_state = yy_get_previous_state(  );
6335
6336
      /* Okay, we're now positioned to make the NUL
6337
       * transition.  We couldn't have
6338
       * yy_get_previous_state() go ahead and do it
6339
       * for us because it doesn't know how to deal
6340
       * with the possibility of jamming (and we don't
6341
       * want to build jamming into it because then it
6342
       * will run more slowly).
6343
       */
6344
6345
0
      yy_next_state = yy_try_NUL_trans( yy_current_state );
6346
6347
0
      yy_bp = (yytext_ptr) + YY_MORE_ADJ;
6348
6349
0
      if ( yy_next_state )
6350
0
        {
6351
        /* Consume the NUL. */
6352
0
        yy_cp = ++(yy_c_buf_p);
6353
0
        yy_current_state = yy_next_state;
6354
0
        goto yy_match;
6355
0
        }
6356
6357
0
      else
6358
0
        {
6359
0
        yy_cp = (yy_c_buf_p);
6360
0
        goto yy_find_action;
6361
0
        }
6362
0
      }
6363
6364
0
    else switch ( yy_get_next_buffer(  ) )
6365
0
      {
6366
0
      case EOB_ACT_END_OF_FILE:
6367
0
        {
6368
0
        (yy_did_buffer_switch_on_eof) = 0;
6369
6370
0
        if ( yywrap(  ) )
6371
0
          {
6372
          /* Note: because we've taken care in
6373
           * yy_get_next_buffer() to have set up
6374
           * yytext, we can now set up
6375
           * yy_c_buf_p so that if some total
6376
           * hoser (like flex itself) wants to
6377
           * call the scanner after we return the
6378
           * YY_NULL, it'll still work - another
6379
           * YY_NULL will get returned.
6380
           */
6381
0
          (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
6382
6383
0
          yy_act = YY_STATE_EOF(YY_START);
6384
0
          goto do_action;
6385
0
          }
6386
6387
0
        else
6388
0
          {
6389
0
          if ( ! (yy_did_buffer_switch_on_eof) )
6390
0
            YY_NEW_FILE;
6391
0
          }
6392
0
        break;
6393
0
        }
6394
6395
0
      case EOB_ACT_CONTINUE_SCAN:
6396
0
        (yy_c_buf_p) =
6397
0
          (yytext_ptr) + yy_amount_of_matched_text;
6398
6399
0
        yy_current_state = yy_get_previous_state(  );
6400
6401
0
        yy_cp = (yy_c_buf_p);
6402
0
        yy_bp = (yytext_ptr) + YY_MORE_ADJ;
6403
0
        goto yy_match;
6404
6405
0
      case EOB_ACT_LAST_MATCH:
6406
0
        (yy_c_buf_p) =
6407
0
        &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
6408
6409
0
        yy_current_state = yy_get_previous_state(  );
6410
6411
0
        yy_cp = (yy_c_buf_p);
6412
0
        yy_bp = (yytext_ptr) + YY_MORE_ADJ;
6413
0
        goto yy_find_action;
6414
0
      }
6415
0
    break;
6416
0
    }
6417
6418
0
  default:
6419
0
    YY_FATAL_ERROR(
6420
0
      "fatal flex scanner internal error--no action found" );
6421
0
  } /* end of action switch */
6422
0
    } /* end of scanning one token */
6423
0
  } /* end of user's declarations */
6424
0
} /* end of yylex */
6425
6426
/* yy_get_next_buffer - try to read in a new buffer
6427
 *
6428
 * Returns a code representing an action:
6429
 *  EOB_ACT_LAST_MATCH -
6430
 *  EOB_ACT_CONTINUE_SCAN - continue scanning from current position
6431
 *  EOB_ACT_END_OF_FILE - end of file
6432
 */
6433
static int yy_get_next_buffer (void)
6434
0
{
6435
0
      char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
6436
0
  char *source = (yytext_ptr);
6437
0
  int number_to_move, i;
6438
0
  int ret_val;
6439
6440
0
  if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
6441
0
    YY_FATAL_ERROR(
6442
0
    "fatal flex scanner internal error--end of buffer missed" );
6443
6444
0
  if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
6445
0
    { /* Don't try to fill the buffer, so this is an EOF. */
6446
0
    if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
6447
0
      {
6448
      /* We matched a single character, the EOB, so
6449
       * treat this as a final EOF.
6450
       */
6451
0
      return EOB_ACT_END_OF_FILE;
6452
0
      }
6453
6454
0
    else
6455
0
      {
6456
      /* We matched some text prior to the EOB, first
6457
       * process it.
6458
       */
6459
0
      return EOB_ACT_LAST_MATCH;
6460
0
      }
6461
0
    }
6462
6463
  /* Try to read more data. */
6464
6465
  /* First move last chars to start of buffer. */
6466
0
  number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1);
6467
6468
0
  for ( i = 0; i < number_to_move; ++i )
6469
0
    *(dest++) = *(source++);
6470
6471
0
  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
6472
    /* don't do the read, it's not guaranteed to return an EOF,
6473
     * just force an EOF
6474
     */
6475
0
    YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
6476
6477
0
  else
6478
0
    {
6479
0
      int num_to_read =
6480
0
      YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
6481
6482
0
    while ( num_to_read <= 0 )
6483
0
      { /* Not enough room in the buffer - grow it. */
6484
6485
      /* just a shorter name for the current buffer */
6486
0
      YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE;
6487
6488
0
      int yy_c_buf_p_offset =
6489
0
        (int) ((yy_c_buf_p) - b->yy_ch_buf);
6490
6491
0
      if ( b->yy_is_our_buffer )
6492
0
        {
6493
0
        int new_size = b->yy_buf_size * 2;
6494
6495
0
        if ( new_size <= 0 )
6496
0
          b->yy_buf_size += b->yy_buf_size / 8;
6497
0
        else
6498
0
          b->yy_buf_size *= 2;
6499
6500
0
        b->yy_ch_buf = (char *)
6501
          /* Include room in for 2 EOB chars. */
6502
0
          yyrealloc( (void *) b->yy_ch_buf,
6503
0
               (yy_size_t) (b->yy_buf_size + 2)  );
6504
0
        }
6505
0
      else
6506
        /* Can't grow it, we don't own it. */
6507
0
        b->yy_ch_buf = NULL;
6508
6509
0
      if ( ! b->yy_ch_buf )
6510
0
        YY_FATAL_ERROR(
6511
0
        "fatal error - scanner input buffer overflow" );
6512
6513
0
      (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
6514
6515
0
      num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
6516
0
            number_to_move - 1;
6517
6518
0
      }
6519
6520
0
    if ( num_to_read > YY_READ_BUF_SIZE )
6521
0
      num_to_read = YY_READ_BUF_SIZE;
6522
6523
    /* Read in more data. */
6524
0
    YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
6525
0
      (yy_n_chars), num_to_read );
6526
6527
0
    YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
6528
0
    }
6529
6530
0
  if ( (yy_n_chars) == 0 )
6531
0
    {
6532
0
    if ( number_to_move == YY_MORE_ADJ )
6533
0
      {
6534
0
      ret_val = EOB_ACT_END_OF_FILE;
6535
0
      yyrestart( yyin  );
6536
0
      }
6537
6538
0
    else
6539
0
      {
6540
0
      ret_val = EOB_ACT_LAST_MATCH;
6541
0
      YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
6542
0
        YY_BUFFER_EOF_PENDING;
6543
0
      }
6544
0
    }
6545
6546
0
  else
6547
0
    ret_val = EOB_ACT_CONTINUE_SCAN;
6548
6549
0
  if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
6550
    /* Extend the array by 50%, plus the number we really need. */
6551
0
    int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
6552
0
    YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
6553
0
      (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size  );
6554
0
    if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
6555
0
      YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
6556
    /* "- 2" to take care of EOB's */
6557
0
    YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
6558
0
  }
6559
6560
0
  (yy_n_chars) += number_to_move;
6561
0
  YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
6562
0
  YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
6563
6564
0
  (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
6565
6566
0
  return ret_val;
6567
0
}
6568
6569
/* yy_get_previous_state - get the state just before the EOB char was reached */
6570
6571
    static yy_state_type yy_get_previous_state (void)
6572
0
{
6573
0
  yy_state_type yy_current_state;
6574
0
  char *yy_cp;
6575
    
6576
0
  yy_current_state = (yy_start);
6577
6578
0
  for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
6579
0
    {
6580
0
    YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
6581
0
    if ( yy_accept[yy_current_state] )
6582
0
      {
6583
0
      (yy_last_accepting_state) = yy_current_state;
6584
0
      (yy_last_accepting_cpos) = yy_cp;
6585
0
      }
6586
0
    while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
6587
0
      {
6588
0
      yy_current_state = (int) yy_def[yy_current_state];
6589
0
      if ( yy_current_state >= 4152 )
6590
0
        yy_c = yy_meta[yy_c];
6591
0
      }
6592
0
    yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
6593
0
    }
6594
6595
0
  return yy_current_state;
6596
0
}
6597
6598
/* yy_try_NUL_trans - try to make a transition on the NUL character
6599
 *
6600
 * synopsis
6601
 *  next_state = yy_try_NUL_trans( current_state );
6602
 */
6603
    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state )
6604
0
{
6605
0
  int yy_is_jam;
6606
0
      char *yy_cp = (yy_c_buf_p);
6607
6608
0
  YY_CHAR yy_c = 1;
6609
0
  if ( yy_accept[yy_current_state] )
6610
0
    {
6611
0
    (yy_last_accepting_state) = yy_current_state;
6612
0
    (yy_last_accepting_cpos) = yy_cp;
6613
0
    }
6614
0
  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
6615
0
    {
6616
0
    yy_current_state = (int) yy_def[yy_current_state];
6617
0
    if ( yy_current_state >= 4152 )
6618
0
      yy_c = yy_meta[yy_c];
6619
0
    }
6620
0
  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
6621
0
  yy_is_jam = (yy_current_state == 4151);
6622
6623
0
    return yy_is_jam ? 0 : yy_current_state;
6624
0
}
6625
6626
#ifndef YY_NO_UNPUT
6627
6628
#endif
6629
6630
#ifndef YY_NO_INPUT
6631
#ifdef __cplusplus
6632
    static int yyinput (void)
6633
#else
6634
    static int input  (void)
6635
#endif
6636
6637
{
6638
  int c;
6639
    
6640
  *(yy_c_buf_p) = (yy_hold_char);
6641
6642
  if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
6643
    {
6644
    /* yy_c_buf_p now points to the character we want to return.
6645
     * If this occurs *before* the EOB characters, then it's a
6646
     * valid NUL; if not, then we've hit the end of the buffer.
6647
     */
6648
    if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
6649
      /* This was really a NUL. */
6650
      *(yy_c_buf_p) = '\0';
6651
6652
    else
6653
      { /* need more input */
6654
      int offset = (int) ((yy_c_buf_p) - (yytext_ptr));
6655
      ++(yy_c_buf_p);
6656
6657
      switch ( yy_get_next_buffer(  ) )
6658
        {
6659
        case EOB_ACT_LAST_MATCH:
6660
          /* This happens because yy_g_n_b()
6661
           * sees that we've accumulated a
6662
           * token and flags that we need to
6663
           * try matching the token before
6664
           * proceeding.  But for input(),
6665
           * there's no matching to consider.
6666
           * So convert the EOB_ACT_LAST_MATCH
6667
           * to EOB_ACT_END_OF_FILE.
6668
           */
6669
6670
          /* Reset buffer status. */
6671
          yyrestart( yyin );
6672
6673
          /*FALLTHROUGH*/
6674
6675
        case EOB_ACT_END_OF_FILE:
6676
          {
6677
          if ( yywrap(  ) )
6678
            return 0;
6679
6680
          if ( ! (yy_did_buffer_switch_on_eof) )
6681
            YY_NEW_FILE;
6682
#ifdef __cplusplus
6683
          return yyinput();
6684
#else
6685
          return input();
6686
#endif
6687
          }
6688
6689
        case EOB_ACT_CONTINUE_SCAN:
6690
          (yy_c_buf_p) = (yytext_ptr) + offset;
6691
          break;
6692
        }
6693
      }
6694
    }
6695
6696
  c = *(unsigned char *) (yy_c_buf_p);  /* cast for 8-bit char's */
6697
  *(yy_c_buf_p) = '\0'; /* preserve yytext */
6698
  (yy_hold_char) = *++(yy_c_buf_p);
6699
6700
  return c;
6701
}
6702
#endif  /* ifndef YY_NO_INPUT */
6703
6704
/** Immediately switch to a different input stream.
6705
 * @param input_file A readable stream.
6706
 * 
6707
 * @note This function does not reset the start condition to @c INITIAL .
6708
 */
6709
    void yyrestart  (FILE * input_file )
6710
0
{
6711
    
6712
0
  if ( ! YY_CURRENT_BUFFER ){
6713
0
        yyensure_buffer_stack ();
6714
0
    YY_CURRENT_BUFFER_LVALUE =
6715
0
            yy_create_buffer( yyin, YY_BUF_SIZE );
6716
0
  }
6717
6718
0
  yy_init_buffer( YY_CURRENT_BUFFER, input_file );
6719
0
  yy_load_buffer_state(  );
6720
0
}
6721
6722
/** Switch to a different input buffer.
6723
 * @param new_buffer The new input buffer.
6724
 * 
6725
 */
6726
    void yy_switch_to_buffer  (YY_BUFFER_STATE  new_buffer )
6727
0
{
6728
    
6729
  /* TODO. We should be able to replace this entire function body
6730
   * with
6731
   *    yypop_buffer_state();
6732
   *    yypush_buffer_state(new_buffer);
6733
     */
6734
0
  yyensure_buffer_stack ();
6735
0
  if ( YY_CURRENT_BUFFER == new_buffer )
6736
0
    return;
6737
6738
0
  if ( YY_CURRENT_BUFFER )
6739
0
    {
6740
    /* Flush out information for old buffer. */
6741
0
    *(yy_c_buf_p) = (yy_hold_char);
6742
0
    YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
6743
0
    YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
6744
0
    }
6745
6746
0
  YY_CURRENT_BUFFER_LVALUE = new_buffer;
6747
0
  yy_load_buffer_state(  );
6748
6749
  /* We don't actually know whether we did this switch during
6750
   * EOF (yywrap()) processing, but the only time this flag
6751
   * is looked at is after yywrap() is called, so it's safe
6752
   * to go ahead and always set it.
6753
   */
6754
0
  (yy_did_buffer_switch_on_eof) = 1;
6755
0
}
6756
6757
static void yy_load_buffer_state  (void)
6758
0
{
6759
0
      (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
6760
0
  (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
6761
0
  yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
6762
0
  (yy_hold_char) = *(yy_c_buf_p);
6763
0
}
6764
6765
/** Allocate and initialize an input buffer state.
6766
 * @param file A readable stream.
6767
 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
6768
 * 
6769
 * @return the allocated buffer state.
6770
 */
6771
    YY_BUFFER_STATE yy_create_buffer  (FILE * file, int  size )
6772
0
{
6773
0
  YY_BUFFER_STATE b;
6774
    
6775
0
  b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
6776
0
  if ( ! b )
6777
0
    YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
6778
6779
0
  b->yy_buf_size = size;
6780
6781
  /* yy_ch_buf has to be 2 characters longer than the size given because
6782
   * we need to put in 2 end-of-buffer characters.
6783
   */
6784
0
  b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2)  );
6785
0
  if ( ! b->yy_ch_buf )
6786
0
    YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
6787
6788
0
  b->yy_is_our_buffer = 1;
6789
6790
0
  yy_init_buffer( b, file );
6791
6792
0
  return b;
6793
0
}
6794
6795
/** Destroy the buffer.
6796
 * @param b a buffer created with yy_create_buffer()
6797
 * 
6798
 */
6799
    void yy_delete_buffer (YY_BUFFER_STATE  b )
6800
0
{
6801
    
6802
0
  if ( ! b )
6803
0
    return;
6804
6805
0
  if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
6806
0
    YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
6807
6808
0
  if ( b->yy_is_our_buffer )
6809
0
    yyfree( (void *) b->yy_ch_buf  );
6810
6811
0
  yyfree( (void *) b  );
6812
0
}
6813
6814
/* Initializes or reinitializes a buffer.
6815
 * This function is sometimes called more than once on the same buffer,
6816
 * such as during a yyrestart() or at EOF.
6817
 */
6818
    static void yy_init_buffer  (YY_BUFFER_STATE  b, FILE * file )
6819
6820
0
{
6821
0
  int oerrno = errno;
6822
    
6823
0
  yy_flush_buffer( b );
6824
6825
0
  b->yy_input_file = file;
6826
0
  b->yy_fill_buffer = 1;
6827
6828
    /* If b is the current buffer, then yy_init_buffer was _probably_
6829
     * called from yyrestart() or through yy_get_next_buffer.
6830
     * In that case, we don't want to reset the lineno or column.
6831
     */
6832
0
    if (b != YY_CURRENT_BUFFER){
6833
0
        b->yy_bs_lineno = 1;
6834
0
        b->yy_bs_column = 0;
6835
0
    }
6836
6837
0
        b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
6838
    
6839
0
  errno = oerrno;
6840
0
}
6841
6842
/** Discard all buffered characters. On the next scan, YY_INPUT will be called.
6843
 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
6844
 * 
6845
 */
6846
    void yy_flush_buffer (YY_BUFFER_STATE  b )
6847
0
{
6848
0
      if ( ! b )
6849
0
    return;
6850
6851
0
  b->yy_n_chars = 0;
6852
6853
  /* We always need two end-of-buffer characters.  The first causes
6854
   * a transition to the end-of-buffer state.  The second causes
6855
   * a jam in that state.
6856
   */
6857
0
  b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
6858
0
  b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
6859
6860
0
  b->yy_buf_pos = &b->yy_ch_buf[0];
6861
6862
0
  b->yy_at_bol = 1;
6863
0
  b->yy_buffer_status = YY_BUFFER_NEW;
6864
6865
0
  if ( b == YY_CURRENT_BUFFER )
6866
0
    yy_load_buffer_state(  );
6867
0
}
6868
6869
/** Pushes the new state onto the stack. The new state becomes
6870
 *  the current state. This function will allocate the stack
6871
 *  if necessary.
6872
 *  @param new_buffer The new state.
6873
 *  
6874
 */
6875
void yypush_buffer_state (YY_BUFFER_STATE new_buffer )
6876
0
{
6877
0
      if (new_buffer == NULL)
6878
0
    return;
6879
6880
0
  yyensure_buffer_stack();
6881
6882
  /* This block is copied from yy_switch_to_buffer. */
6883
0
  if ( YY_CURRENT_BUFFER )
6884
0
    {
6885
    /* Flush out information for old buffer. */
6886
0
    *(yy_c_buf_p) = (yy_hold_char);
6887
0
    YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
6888
0
    YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
6889
0
    }
6890
6891
  /* Only push if top exists. Otherwise, replace top. */
6892
0
  if (YY_CURRENT_BUFFER)
6893
0
    (yy_buffer_stack_top)++;
6894
0
  YY_CURRENT_BUFFER_LVALUE = new_buffer;
6895
6896
  /* copied from yy_switch_to_buffer. */
6897
0
  yy_load_buffer_state(  );
6898
0
  (yy_did_buffer_switch_on_eof) = 1;
6899
0
}
6900
6901
/** Removes and deletes the top of the stack, if present.
6902
 *  The next element becomes the new top.
6903
 *  
6904
 */
6905
void yypop_buffer_state (void)
6906
0
{
6907
0
      if (!YY_CURRENT_BUFFER)
6908
0
    return;
6909
6910
0
  yy_delete_buffer(YY_CURRENT_BUFFER );
6911
0
  YY_CURRENT_BUFFER_LVALUE = NULL;
6912
0
  if ((yy_buffer_stack_top) > 0)
6913
0
    --(yy_buffer_stack_top);
6914
6915
0
  if (YY_CURRENT_BUFFER) {
6916
0
    yy_load_buffer_state(  );
6917
0
    (yy_did_buffer_switch_on_eof) = 1;
6918
0
  }
6919
0
}
6920
6921
/* Allocates the stack if it does not exist.
6922
 *  Guarantees space for at least one push.
6923
 */
6924
static void yyensure_buffer_stack (void)
6925
0
{
6926
0
  yy_size_t num_to_alloc;
6927
    
6928
0
  if (!(yy_buffer_stack)) {
6929
6930
    /* First allocation is just for 2 elements, since we don't know if this
6931
     * scanner will even need a stack. We use 2 instead of 1 to avoid an
6932
     * immediate realloc on the next call.
6933
         */
6934
0
      num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
6935
0
    (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc
6936
0
                (num_to_alloc * sizeof(struct yy_buffer_state*)
6937
0
                );
6938
0
    if ( ! (yy_buffer_stack) )
6939
0
      YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
6940
6941
0
    memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
6942
6943
0
    (yy_buffer_stack_max) = num_to_alloc;
6944
0
    (yy_buffer_stack_top) = 0;
6945
0
    return;
6946
0
  }
6947
6948
0
  if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
6949
6950
    /* Increase the buffer to prepare for a possible push. */
6951
0
    yy_size_t grow_size = 8 /* arbitrary grow size */;
6952
6953
0
    num_to_alloc = (yy_buffer_stack_max) + grow_size;
6954
0
    (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc
6955
0
                ((yy_buffer_stack),
6956
0
                num_to_alloc * sizeof(struct yy_buffer_state*)
6957
0
                );
6958
0
    if ( ! (yy_buffer_stack) )
6959
0
      YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
6960
6961
    /* zero only the new slots.*/
6962
0
    memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
6963
0
    (yy_buffer_stack_max) = num_to_alloc;
6964
0
  }
6965
0
}
6966
6967
/** Setup the input buffer state to scan directly from a user-specified character buffer.
6968
 * @param base the character buffer
6969
 * @param size the size in bytes of the character buffer
6970
 * 
6971
 * @return the newly allocated buffer state object.
6972
 */
6973
YY_BUFFER_STATE yy_scan_buffer  (char * base, yy_size_t  size )
6974
0
{
6975
0
  YY_BUFFER_STATE b;
6976
    
6977
0
  if ( size < 2 ||
6978
0
       base[size-2] != YY_END_OF_BUFFER_CHAR ||
6979
0
       base[size-1] != YY_END_OF_BUFFER_CHAR )
6980
    /* They forgot to leave room for the EOB's. */
6981
0
    return NULL;
6982
6983
0
  b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state )  );
6984
0
  if ( ! b )
6985
0
    YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
6986
6987
0
  b->yy_buf_size = (int) (size - 2);  /* "- 2" to take care of EOB's */
6988
0
  b->yy_buf_pos = b->yy_ch_buf = base;
6989
0
  b->yy_is_our_buffer = 0;
6990
0
  b->yy_input_file = NULL;
6991
0
  b->yy_n_chars = b->yy_buf_size;
6992
0
  b->yy_is_interactive = 0;
6993
0
  b->yy_at_bol = 1;
6994
0
  b->yy_fill_buffer = 0;
6995
0
  b->yy_buffer_status = YY_BUFFER_NEW;
6996
6997
0
  yy_switch_to_buffer( b  );
6998
6999
0
  return b;
7000
0
}
7001
7002
/** Setup the input buffer state to scan a string. The next call to yylex() will
7003
 * scan from a @e copy of @a str.
7004
 * @param yystr a NUL-terminated string to scan
7005
 * 
7006
 * @return the newly allocated buffer state object.
7007
 * @note If you want to scan bytes that may contain NUL values, then use
7008
 *       yy_scan_bytes() instead.
7009
 */
7010
YY_BUFFER_STATE yy_scan_string (const char * yystr )
7011
0
{
7012
    
7013
0
  return yy_scan_bytes( yystr, (int) strlen(yystr) );
7014
0
}
7015
7016
/** Setup the input buffer state to scan the given bytes. The next call to yylex() will
7017
 * scan from a @e copy of @a bytes.
7018
 * @param yybytes the byte buffer to scan
7019
 * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
7020
 * 
7021
 * @return the newly allocated buffer state object.
7022
 */
7023
YY_BUFFER_STATE yy_scan_bytes  (const char * yybytes, int  _yybytes_len )
7024
0
{
7025
0
  YY_BUFFER_STATE b;
7026
0
  char *buf;
7027
0
  yy_size_t n;
7028
0
  int i;
7029
    
7030
  /* Get memory for full buffer, including space for trailing EOB's. */
7031
0
  n = (yy_size_t) (_yybytes_len + 2);
7032
0
  buf = (char *) yyalloc( n  );
7033
0
  if ( ! buf )
7034
0
    YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
7035
7036
0
  for ( i = 0; i < _yybytes_len; ++i )
7037
0
    buf[i] = yybytes[i];
7038
7039
0
  buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
7040
7041
0
  b = yy_scan_buffer( buf, n );
7042
0
  if ( ! b )
7043
0
    YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
7044
7045
  /* It's okay to grow etc. this buffer, and we should throw it
7046
   * away when we're done.
7047
   */
7048
0
  b->yy_is_our_buffer = 1;
7049
7050
0
  return b;
7051
0
}
7052
7053
#ifndef YY_EXIT_FAILURE
7054
0
#define YY_EXIT_FAILURE 2
7055
#endif
7056
7057
static void yynoreturn yy_fatal_error (const char* msg )
7058
0
{
7059
0
      fprintf( stderr, "%s\n", msg );
7060
0
  exit( YY_EXIT_FAILURE );
7061
0
}
7062
7063
/* Redefine yyless() so it works in section 3 code. */
7064
7065
#undef yyless
7066
#define yyless(n) \
7067
  do \
7068
    { \
7069
    /* Undo effects of setting up yytext. */ \
7070
        int yyless_macro_arg = (n); \
7071
        YY_LESS_LINENO(yyless_macro_arg);\
7072
    yytext[yyleng] = (yy_hold_char); \
7073
    (yy_c_buf_p) = yytext + yyless_macro_arg; \
7074
    (yy_hold_char) = *(yy_c_buf_p); \
7075
    *(yy_c_buf_p) = '\0'; \
7076
    yyleng = yyless_macro_arg; \
7077
    } \
7078
  while ( 0 )
7079
7080
/* Accessor  methods (get/set functions) to struct members. */
7081
7082
/** Get the current line number.
7083
 * 
7084
 */
7085
int yyget_lineno  (void)
7086
0
{
7087
    
7088
0
    return yylineno;
7089
0
}
7090
7091
/** Get the input stream.
7092
 * 
7093
 */
7094
FILE *yyget_in  (void)
7095
0
{
7096
0
        return yyin;
7097
0
}
7098
7099
/** Get the output stream.
7100
 * 
7101
 */
7102
FILE *yyget_out  (void)
7103
0
{
7104
0
        return yyout;
7105
0
}
7106
7107
/** Get the length of the current token.
7108
 * 
7109
 */
7110
int yyget_leng  (void)
7111
0
{
7112
0
        return yyleng;
7113
0
}
7114
7115
/** Get the current token.
7116
 * 
7117
 */
7118
7119
char *yyget_text  (void)
7120
0
{
7121
0
        return yytext;
7122
0
}
7123
7124
/** Set the current line number.
7125
 * @param _line_number line number
7126
 * 
7127
 */
7128
void yyset_lineno (int  _line_number )
7129
0
{
7130
    
7131
0
    yylineno = _line_number;
7132
0
}
7133
7134
/** Set the input stream. This does not discard the current
7135
 * input buffer.
7136
 * @param _in_str A readable stream.
7137
 * 
7138
 * @see yy_switch_to_buffer
7139
 */
7140
void yyset_in (FILE *  _in_str )
7141
0
{
7142
0
        yyin = _in_str ;
7143
0
}
7144
7145
void yyset_out (FILE *  _out_str )
7146
0
{
7147
0
        yyout = _out_str ;
7148
0
}
7149
7150
int yyget_debug  (void)
7151
0
{
7152
0
        return yy_flex_debug;
7153
0
}
7154
7155
void yyset_debug (int  _bdebug )
7156
0
{
7157
0
        yy_flex_debug = _bdebug ;
7158
0
}
7159
7160
static int yy_init_globals (void)
7161
0
{
7162
        /* Initialization is the same as for the non-reentrant scanner.
7163
     * This function is called from yylex_destroy(), so don't allocate here.
7164
     */
7165
7166
0
    (yy_buffer_stack) = NULL;
7167
0
    (yy_buffer_stack_top) = 0;
7168
0
    (yy_buffer_stack_max) = 0;
7169
0
    (yy_c_buf_p) = NULL;
7170
0
    (yy_init) = 0;
7171
0
    (yy_start) = 0;
7172
7173
/* Defined in main.c */
7174
#ifdef YY_STDINIT
7175
    yyin = stdin;
7176
    yyout = stdout;
7177
#else
7178
0
    yyin = NULL;
7179
0
    yyout = NULL;
7180
0
#endif
7181
7182
    /* For future reference: Set errno on error, since we are called by
7183
     * yylex_init()
7184
     */
7185
0
    return 0;
7186
0
}
7187
7188
/* yylex_destroy is for both reentrant and non-reentrant scanners. */
7189
int yylex_destroy  (void)
7190
0
{
7191
    
7192
    /* Pop the buffer stack, destroying each element. */
7193
0
  while(YY_CURRENT_BUFFER){
7194
0
    yy_delete_buffer( YY_CURRENT_BUFFER  );
7195
0
    YY_CURRENT_BUFFER_LVALUE = NULL;
7196
0
    yypop_buffer_state();
7197
0
  }
7198
7199
  /* Destroy the stack itself. */
7200
0
  yyfree((yy_buffer_stack) );
7201
0
  (yy_buffer_stack) = NULL;
7202
7203
    /* Reset the globals. This is important in a non-reentrant scanner so the next time
7204
     * yylex() is called, initialization will occur. */
7205
0
    yy_init_globals( );
7206
7207
0
    return 0;
7208
0
}
7209
7210
/*
7211
 * Internal utility routines.
7212
 */
7213
7214
#ifndef yytext_ptr
7215
static void yy_flex_strncpy (char* s1, const char * s2, int n )
7216
{
7217
    
7218
  int i;
7219
  for ( i = 0; i < n; ++i )
7220
    s1[i] = s2[i];
7221
}
7222
#endif
7223
7224
#ifdef YY_NEED_STRLEN
7225
static int yy_flex_strlen (const char * s )
7226
{
7227
  int n;
7228
  for ( n = 0; s[n]; ++n )
7229
    ;
7230
7231
  return n;
7232
}
7233
#endif
7234
7235
void *yyalloc (yy_size_t  size )
7236
0
{
7237
0
      return malloc(size);
7238
0
}
7239
7240
void *yyrealloc  (void * ptr, yy_size_t  size )
7241
0
{
7242
    
7243
  /* The cast to (char *) in the following accommodates both
7244
   * implementations that use char* generic pointers, and those
7245
   * that use void* generic pointers.  It works with the latter
7246
   * because both ANSI C and C++ allow castless assignment from
7247
   * any pointer type to void*, and deal with argument conversions
7248
   * as though doing an assignment.
7249
   */
7250
0
  return realloc(ptr, size);
7251
0
}
7252
7253
void yyfree (void * ptr )
7254
0
{
7255
0
      free( (char *) ptr ); /* see yyrealloc() for (char *) cast */
7256
0
}
7257
7258
#define YYTABLES_NAME "yytables"
7259
7260
#line 742 "./util/configlexer.lex"
7261
7262