source: MondoRescue/branches/stable/mindi-busybox/scripts/config/lex.zconf.c_shipped @ 821

Last change on this file since 821 was 821, checked in by Bruno Cornec, 14 years ago

Addition of busybox 1.2.1 as a mindi-busybox new package
This should avoid delivering binary files in mindi not built there (Fedora and Debian are quite serious about that)

File size: 102.4 KB
Line 
1
2#line 3 "lex.zconf.c"
3
4#define  YY_INT_ALIGNED short int
5
6/* A lexical scanner generated by flex */
7
8#define FLEX_SCANNER
9#define YY_FLEX_MAJOR_VERSION 2
10#define YY_FLEX_MINOR_VERSION 5
11#define YY_FLEX_SUBMINOR_VERSION 31
12#if YY_FLEX_SUBMINOR_VERSION > 0
13#define FLEX_BETA
14#endif
15
16/* First, we deal with  platform-specific or compiler-specific issues. */
17
18/* begin standard C headers. */
19#include <stdio.h>
20#include <string.h>
21#include <errno.h>
22#include <stdlib.h>
23
24/* end standard C headers. */
25
26/* flex integer type definitions */
27
28#ifndef FLEXINT_H
29#define FLEXINT_H
30
31/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
32
33#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L
34#include <inttypes.h>
35typedef int8_t flex_int8_t;
36typedef uint8_t flex_uint8_t;
37typedef int16_t flex_int16_t;
38typedef uint16_t flex_uint16_t;
39typedef int32_t flex_int32_t;
40typedef uint32_t flex_uint32_t;
41#else
42typedef signed char flex_int8_t;
43typedef short int flex_int16_t;
44typedef int flex_int32_t;
45typedef unsigned char flex_uint8_t;
46typedef unsigned short int flex_uint16_t;
47typedef unsigned int flex_uint32_t;
48#endif /* ! C99 */
49
50/* Limits of integral types. */
51#ifndef INT8_MIN
52#define INT8_MIN               (-128)
53#endif
54#ifndef INT16_MIN
55#define INT16_MIN              (-32767-1)
56#endif
57#ifndef INT32_MIN
58#define INT32_MIN              (-2147483647-1)
59#endif
60#ifndef INT8_MAX
61#define INT8_MAX               (127)
62#endif
63#ifndef INT16_MAX
64#define INT16_MAX              (32767)
65#endif
66#ifndef INT32_MAX
67#define INT32_MAX              (2147483647)
68#endif
69#ifndef UINT8_MAX
70#define UINT8_MAX              (255U)
71#endif
72#ifndef UINT16_MAX
73#define UINT16_MAX             (65535U)
74#endif
75#ifndef UINT32_MAX
76#define UINT32_MAX             (4294967295U)
77#endif
78
79#endif /* ! FLEXINT_H */
80
81#ifdef __cplusplus
82
83/* The "const" storage-class-modifier is valid. */
84#define YY_USE_CONST
85
86#else   /* ! __cplusplus */
87
88#if __STDC__
89
90#define YY_USE_CONST
91
92#endif  /* __STDC__ */
93#endif  /* ! __cplusplus */
94
95#ifdef YY_USE_CONST
96#define yyconst const
97#else
98#define yyconst
99#endif
100
101/* Returned upon end-of-file. */
102#define YY_NULL 0
103
104/* Promotes a possibly negative, possibly signed char to an unsigned
105 * integer for use as an array index.  If the signed char is negative,
106 * we want to instead treat it as an 8-bit unsigned char, hence the
107 * double cast.
108 */
109#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
110
111/* Enter a start condition.  This macro really ought to take a parameter,
112 * but we do it the disgusting crufty way forced on us by the ()-less
113 * definition of BEGIN.
114 */
115#define BEGIN (yy_start) = 1 + 2 *
116
117/* Translate the current start state into a value that can be later handed
118 * to BEGIN to return to the state.  The YYSTATE alias is for lex
119 * compatibility.
120 */
121#define YY_START (((yy_start) - 1) / 2)
122#define YYSTATE YY_START
123
124/* Action number for EOF rule of a given start state. */
125#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
126
127/* Special action meaning "start processing a new file". */
128#define YY_NEW_FILE zconfrestart(zconfin  )
129
130#define YY_END_OF_BUFFER_CHAR 0
131
132/* Size of default input buffer. */
133#ifndef YY_BUF_SIZE
134#define YY_BUF_SIZE 16384
135#endif
136
137#ifndef YY_TYPEDEF_YY_BUFFER_STATE
138#define YY_TYPEDEF_YY_BUFFER_STATE
139typedef struct yy_buffer_state *YY_BUFFER_STATE;
140#endif
141
142extern int zconfleng;
143
144extern FILE *zconfin, *zconfout;
145
146#define EOB_ACT_CONTINUE_SCAN 0
147#define EOB_ACT_END_OF_FILE 1
148#define EOB_ACT_LAST_MATCH 2
149
150    #define YY_LESS_LINENO(n)
151
152/* Return all but the first "n" matched characters back to the input stream. */
153#define yyless(n) \
154    do \
155        { \
156        /* Undo effects of setting up zconftext. */ \
157        int yyless_macro_arg = (n); \
158        YY_LESS_LINENO(yyless_macro_arg);\
159        *yy_cp = (yy_hold_char); \
160        YY_RESTORE_YY_MORE_OFFSET \
161        (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
162        YY_DO_BEFORE_ACTION; /* set up zconftext again */ \
163        } \
164    while ( 0 )
165
166#define unput(c) yyunput( c, (yytext_ptr)  )
167
168/* The following is because we cannot portably get our hands on size_t
169 * (without autoconf's help, which isn't available because we want
170 * flex-generated scanners to compile on their own).
171 */
172
173#ifndef YY_TYPEDEF_YY_SIZE_T
174#define YY_TYPEDEF_YY_SIZE_T
175typedef unsigned int yy_size_t;
176#endif
177
178#ifndef YY_STRUCT_YY_BUFFER_STATE
179#define YY_STRUCT_YY_BUFFER_STATE
180struct yy_buffer_state
181    {
182    FILE *yy_input_file;
183
184    char *yy_ch_buf;        /* input buffer */
185    char *yy_buf_pos;       /* current position in input buffer */
186
187    /* Size of input buffer in bytes, not including room for EOB
188     * characters.
189     */
190    yy_size_t yy_buf_size;
191
192    /* Number of characters read into yy_ch_buf, not including EOB
193     * characters.
194     */
195    int yy_n_chars;
196
197    /* Whether we "own" the buffer - i.e., we know we created it,
198     * and can realloc() it to grow it, and should free() it to
199     * delete it.
200     */
201    int yy_is_our_buffer;
202
203    /* Whether this is an "interactive" input source; if so, and
204     * if we're using stdio for input, then we want to use getc()
205     * instead of fread(), to make sure we stop fetching input after
206     * each newline.
207     */
208    int yy_is_interactive;
209
210    /* Whether we're considered to be at the beginning of a line.
211     * If so, '^' rules will be active on the next match, otherwise
212     * not.
213     */
214    int yy_at_bol;
215
216    int yy_bs_lineno; /**< The line count. */
217    int yy_bs_column; /**< The column count. */
218
219    /* Whether to try to fill the input buffer when we reach the
220     * end of it.
221     */
222    int yy_fill_buffer;
223
224    int yy_buffer_status;
225
226#define YY_BUFFER_NEW 0
227#define YY_BUFFER_NORMAL 1
228    /* When an EOF's been seen but there's still some text to process
229     * then we mark the buffer as YY_EOF_PENDING, to indicate that we
230     * shouldn't try reading from the input source any more.  We might
231     * still have a bunch of tokens to match, though, because of
232     * possible backing-up.
233     *
234     * When we actually see the EOF, we change the status to "new"
235     * (via zconfrestart()), so that the user can continue scanning by
236     * just pointing zconfin at a new input file.
237     */
238#define YY_BUFFER_EOF_PENDING 2
239
240    };
241#endif /* !YY_STRUCT_YY_BUFFER_STATE */
242
243/* Stack of input buffers. */
244static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
245static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
246static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
247
248/* We provide macros for accessing buffer states in case in the
249 * future we want to put the buffer states in a more general
250 * "scanner state".
251 *
252 * Returns the top of the stack, or NULL.
253 */
254#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
255                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
256                          : NULL)
257
258/* Same as previous macro, but useful when we know that the buffer stack is not
259 * NULL or when we need an lvalue. For internal use only.
260 */
261#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
262
263/* yy_hold_char holds the character lost when zconftext is formed. */
264static char yy_hold_char;
265static int yy_n_chars;      /* number of characters read into yy_ch_buf */
266int zconfleng;
267
268/* Points to current character in buffer. */
269static char *yy_c_buf_p = (char *) 0;
270static int yy_init = 1;     /* whether we need to initialize */
271static int yy_start = 0;    /* start state number */
272
273/* Flag which is used to allow zconfwrap()'s to do buffer switches
274 * instead of setting up a fresh zconfin.  A bit of a hack ...
275 */
276static int yy_did_buffer_switch_on_eof;
277
278void zconfrestart (FILE *input_file  );
279void zconf_switch_to_buffer (YY_BUFFER_STATE new_buffer  );
280YY_BUFFER_STATE zconf_create_buffer (FILE *file,int size  );
281void zconf_delete_buffer (YY_BUFFER_STATE b  );
282void zconf_flush_buffer (YY_BUFFER_STATE b  );
283void zconfpush_buffer_state (YY_BUFFER_STATE new_buffer  );
284void zconfpop_buffer_state (void );
285
286static void zconfensure_buffer_stack (void );
287static void zconf_load_buffer_state (void );
288static void zconf_init_buffer (YY_BUFFER_STATE b,FILE *file  );
289
290#define YY_FLUSH_BUFFER zconf_flush_buffer(YY_CURRENT_BUFFER )
291
292YY_BUFFER_STATE zconf_scan_buffer (char *base,yy_size_t size  );
293YY_BUFFER_STATE zconf_scan_string (yyconst char *yy_str  );
294YY_BUFFER_STATE zconf_scan_bytes (yyconst char *bytes,int len  );
295
296void *zconfalloc (yy_size_t  );
297void *zconfrealloc (void *,yy_size_t  );
298void zconffree (void *  );
299
300#define yy_new_buffer zconf_create_buffer
301
302#define yy_set_interactive(is_interactive) \
303    { \
304    if ( ! YY_CURRENT_BUFFER ){ \
305        zconfensure_buffer_stack (); \
306        YY_CURRENT_BUFFER_LVALUE =    \
307            zconf_create_buffer(zconfin,YY_BUF_SIZE ); \
308    } \
309    YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
310    }
311
312#define yy_set_bol(at_bol) \
313    { \
314    if ( ! YY_CURRENT_BUFFER ){\
315        zconfensure_buffer_stack (); \
316        YY_CURRENT_BUFFER_LVALUE =    \
317            zconf_create_buffer(zconfin,YY_BUF_SIZE ); \
318    } \
319    YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
320    }
321
322#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
323
324/* Begin user sect3 */
325
326#define zconfwrap(n) 1
327#define YY_SKIP_YYWRAP
328
329typedef unsigned char YY_CHAR;
330
331FILE *zconfin = (FILE *) 0, *zconfout = (FILE *) 0;
332
333typedef int yy_state_type;
334
335extern int zconflineno;
336
337int zconflineno = 1;
338
339extern char *zconftext;
340#define yytext_ptr zconftext
341static yyconst flex_int16_t yy_nxt[][38] =
342    {
343    {
344        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
345        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
346        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
347        0,    0,    0,    0,    0,    0,    0,    0
348    },
349
350    {
351       11,   12,   13,   14,   12,   12,   15,   12,   12,   12,
352       12,   12,   12,   12,   12,   12,   12,   12,   12,   12,
353       12,   12,   12,   12,   12,   12,   12,   12,   12,   12,
354       12,   12,   12,   12,   12,   12,   12,   12
355    },
356
357    {
358       11,   12,   13,   14,   12,   12,   15,   12,   12,   12,
359       12,   12,   12,   12,   12,   12,   12,   12,   12,   12,
360
361       12,   12,   12,   12,   12,   12,   12,   12,   12,   12,
362       12,   12,   12,   12,   12,   12,   12,   12
363    },
364
365    {
366       11,   16,   16,   17,   16,   16,   16,   16,   16,   16,
367       16,   16,   16,   18,   16,   16,   18,   18,   19,   20,
368       21,   22,   18,   18,   23,   24,   18,   25,   18,   26,
369       27,   18,   28,   29,   30,   18,   18,   16
370    },
371
372    {
373       11,   16,   16,   17,   16,   16,   16,   16,   16,   16,
374       16,   16,   16,   18,   16,   16,   18,   18,   19,   20,
375       21,   22,   18,   18,   23,   24,   18,   25,   18,   26,
376       27,   18,   28,   29,   30,   18,   18,   16
377
378    },
379
380    {
381       11,   31,   32,   33,   31,   31,   31,   31,   31,   31,
382       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
383       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
384       31,   31,   31,   31,   31,   31,   31,   31
385    },
386
387    {
388       11,   31,   32,   33,   31,   31,   31,   31,   31,   31,
389       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
390       31,   31,   31,   31,   31,   31,   31,   31,   31,   31,
391       31,   31,   31,   31,   31,   31,   31,   31
392    },
393
394    {
395       11,   34,   34,   35,   34,   36,   34,   34,   36,   34,
396       34,   34,   34,   34,   34,   37,   34,   34,   34,   34,
397
398       34,   34,   34,   34,   34,   34,   34,   34,   34,   34,
399       34,   34,   34,   34,   34,   34,   34,   34
400    },
401
402    {
403       11,   34,   34,   35,   34,   36,   34,   34,   36,   34,
404       34,   34,   34,   34,   34,   37,   34,   34,   34,   34,
405       34,   34,   34,   34,   34,   34,   34,   34,   34,   34,
406       34,   34,   34,   34,   34,   34,   34,   34
407    },
408
409    {
410       11,   38,   38,   39,   40,   41,   42,   43,   41,   44,
411       45,   46,   47,   47,   48,   49,   47,   47,   47,   47,
412       47,   47,   47,   47,   47,   50,   47,   47,   47,   51,
413       47,   47,   47,   47,   47,   47,   47,   52
414
415    },
416
417    {
418       11,   38,   38,   39,   40,   41,   42,   43,   41,   44,
419       45,   46,   47,   47,   48,   49,   47,   47,   47,   47,
420       47,   47,   47,   47,   47,   50,   47,   47,   47,   51,
421       47,   47,   47,   47,   47,   47,   47,   52
422    },
423
424    {
425      -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,
426      -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,
427      -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,
428      -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11
429    },
430
431    {
432       11,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
433      -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
434
435      -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,
436      -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12
437    },
438
439    {
440       11,  -13,   53,   54,  -13,  -13,   55,  -13,  -13,  -13,
441      -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
442      -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,
443      -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13
444    },
445
446    {
447       11,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
448      -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
449      -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,
450      -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14
451
452    },
453
454    {
455       11,   56,   56,   57,   56,   56,   56,   56,   56,   56,
456       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,
457       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,
458       56,   56,   56,   56,   56,   56,   56,   56
459    },
460
461    {
462       11,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
463      -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
464      -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,
465      -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16
466    },
467
468    {
469       11,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
470      -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
471
472      -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,
473      -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17
474    },
475
476    {
477       11,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,
478      -18,  -18,  -18,   58,  -18,  -18,   58,   58,   58,   58,
479       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
480       58,   58,   58,   58,   58,   58,   58,  -18
481    },
482
483    {
484       11,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,
485      -19,  -19,  -19,   58,  -19,  -19,   58,   58,   58,   58,
486       58,   58,   58,   58,   58,   58,   58,   58,   58,   59,
487       58,   58,   58,   58,   58,   58,   58,  -19
488
489    },
490
491    {
492       11,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,
493      -20,  -20,  -20,   58,  -20,  -20,   58,   58,   58,   58,
494       58,   58,   58,   58,   60,   58,   58,   58,   58,   61,
495       58,   58,   58,   58,   58,   58,   58,  -20
496    },
497
498    {
499       11,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,
500      -21,  -21,  -21,   58,  -21,  -21,   58,   58,   58,   58,
501       58,   62,   58,   58,   58,   58,   58,   58,   58,   58,
502       58,   58,   58,   58,   58,   58,   58,  -21
503    },
504
505    {
506       11,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,
507      -22,  -22,  -22,   58,  -22,  -22,   58,   58,   58,   58,
508
509       58,   58,   58,   58,   58,   58,   58,   58,   63,   58,
510       58,   58,   58,   58,   58,   58,   58,  -22
511    },
512
513    {
514       11,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,
515      -23,  -23,  -23,   58,  -23,  -23,   58,   58,   58,   58,
516       58,   64,   58,   58,   58,   58,   58,   58,   58,   58,
517       58,   58,   58,   58,   58,   58,   58,  -23
518    },
519
520    {
521       11,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,
522      -24,  -24,  -24,   58,  -24,  -24,   58,   58,   58,   58,
523       58,   58,   65,   58,   58,   58,   58,   58,   66,   58,
524       58,   58,   58,   58,   58,   58,   58,  -24
525
526    },
527
528    {
529       11,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,
530      -25,  -25,  -25,   58,  -25,  -25,   58,   67,   58,   58,
531       58,   68,   58,   58,   58,   58,   58,   58,   58,   58,
532       58,   58,   58,   58,   58,   58,   58,  -25
533    },
534
535    {
536       11,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,
537      -26,  -26,  -26,   58,  -26,  -26,   58,   58,   58,   58,
538       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
539       69,   58,   58,   58,   58,   58,   58,  -26
540    },
541
542    {
543       11,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,
544      -27,  -27,  -27,   58,  -27,  -27,   58,   58,   58,   58,
545
546       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
547       58,   58,   70,   58,   58,   58,   58,  -27
548    },
549
550    {
551       11,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,
552      -28,  -28,  -28,   58,  -28,  -28,   58,   71,   58,   58,
553       58,   72,   58,   58,   58,   58,   58,   58,   58,   58,
554       58,   58,   58,   58,   58,   58,   58,  -28
555    },
556
557    {
558       11,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,
559      -29,  -29,  -29,   58,  -29,  -29,   58,   58,   58,   58,
560       58,   73,   58,   58,   58,   58,   58,   58,   58,   74,
561       58,   58,   58,   58,   75,   58,   58,  -29
562
563    },
564
565    {
566       11,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,
567      -30,  -30,  -30,   58,  -30,  -30,   58,   58,   58,   58,
568       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
569       58,   58,   76,   58,   58,   58,   58,  -30
570    },
571
572    {
573       11,   77,   77,  -31,   77,   77,   77,   77,   77,   77,
574       77,   77,   77,   77,   77,   77,   77,   77,   77,   77,
575       77,   77,   77,   77,   77,   77,   77,   77,   77,   77,
576       77,   77,   77,   77,   77,   77,   77,   77
577    },
578
579    {
580       11,  -32,   78,   79,  -32,  -32,  -32,  -32,  -32,  -32,
581      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
582
583      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,
584      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32
585    },
586
587    {
588       11,   80,  -33,  -33,   80,   80,   80,   80,   80,   80,
589       80,   80,   80,   80,   80,   80,   80,   80,   80,   80,
590       80,   80,   80,   80,   80,   80,   80,   80,   80,   80,
591       80,   80,   80,   80,   80,   80,   80,   80
592    },
593
594    {
595       11,   81,   81,   82,   81,  -34,   81,   81,  -34,   81,
596       81,   81,   81,   81,   81,  -34,   81,   81,   81,   81,
597       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
598       81,   81,   81,   81,   81,   81,   81,   81
599
600    },
601
602    {
603       11,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
604      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
605      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,
606      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35
607    },
608
609    {
610       11,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
611      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
612      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,
613      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36
614    },
615
616    {
617       11,   83,   83,   84,   83,   83,   83,   83,   83,   83,
618       83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
619
620       83,   83,   83,   83,   83,   83,   83,   83,   83,   83,
621       83,   83,   83,   83,   83,   83,   83,   83
622    },
623
624    {
625       11,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
626      -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
627      -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,
628      -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38
629    },
630
631    {
632       11,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,
633      -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,
634      -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,
635      -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39
636
637    },
638
639    {
640       11,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,
641      -40,  -40,  -40,  -40,   85,  -40,  -40,  -40,  -40,  -40,
642      -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,
643      -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40
644    },
645
646    {
647       11,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,
648      -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,
649      -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,
650      -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41
651    },
652
653    {
654       11,   86,   86,  -42,   86,   86,   86,   86,   86,   86,
655       86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
656
657       86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
658       86,   86,   86,   86,   86,   86,   86,   86
659    },
660
661    {
662       11,  -43,  -43,  -43,  -43,  -43,  -43,   87,  -43,  -43,
663      -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,
664      -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,
665      -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43
666    },
667
668    {
669       11,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,
670      -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,
671      -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,
672      -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44
673
674    },
675
676    {
677       11,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,
678      -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,
679      -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,
680      -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45
681    },
682
683    {
684       11,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,
685      -46,   88,   89,   89,  -46,  -46,   89,   89,   89,   89,
686       89,   89,   89,   89,   89,   89,   89,   89,   89,   89,
687       89,   89,   89,   89,   89,   89,   89,  -46
688    },
689
690    {
691       11,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,
692      -47,   89,   89,   89,  -47,  -47,   89,   89,   89,   89,
693
694       89,   89,   89,   89,   89,   89,   89,   89,   89,   89,
695       89,   89,   89,   89,   89,   89,   89,  -47
696    },
697
698    {
699       11,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,
700      -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,
701      -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,
702      -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48
703    },
704
705    {
706       11,  -49,  -49,   90,  -49,  -49,  -49,  -49,  -49,  -49,
707      -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,
708      -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,
709      -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49
710
711    },
712
713    {
714       11,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,
715      -50,   89,   89,   89,  -50,  -50,   89,   89,   89,   89,
716       89,   89,   91,   89,   89,   89,   89,   89,   89,   89,
717       89,   89,   89,   89,   89,   89,   89,  -50
718    },
719
720    {
721       11,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,
722      -51,   89,   89,   89,  -51,  -51,   89,   89,   89,   89,
723       89,   89,   89,   89,   89,   89,   89,   89,   92,   89,
724       89,   89,   89,   89,   89,   89,   89,  -51
725    },
726
727    {
728       11,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,
729      -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,
730
731      -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,
732      -52,  -52,  -52,  -52,  -52,  -52,  -52,   93
733    },
734
735    {
736       11,  -53,   53,   54,  -53,  -53,   55,  -53,  -53,  -53,
737      -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,
738      -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,
739      -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53
740    },
741
742    {
743       11,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,
744      -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,
745      -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,
746      -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54
747
748    },
749
750    {
751       11,   56,   56,   57,   56,   56,   56,   56,   56,   56,
752       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,
753       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,
754       56,   56,   56,   56,   56,   56,   56,   56
755    },
756
757    {
758       11,   56,   56,   57,   56,   56,   56,   56,   56,   56,
759       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,
760       56,   56,   56,   56,   56,   56,   56,   56,   56,   56,
761       56,   56,   56,   56,   56,   56,   56,   56
762    },
763
764    {
765       11,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,
766      -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,
767
768      -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,
769      -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57
770    },
771
772    {
773       11,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,
774      -58,  -58,  -58,   58,  -58,  -58,   58,   58,   58,   58,
775       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
776       58,   58,   58,   58,   58,   58,   58,  -58
777    },
778
779    {
780       11,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,
781      -59,  -59,  -59,   58,  -59,  -59,   58,   58,   58,   58,
782       58,   58,   58,   58,   58,   58,   58,   58,   58,   94,
783       58,   58,   58,   58,   58,   58,   58,  -59
784
785    },
786
787    {
788       11,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,
789      -60,  -60,  -60,   58,  -60,  -60,   58,   58,   58,   58,
790       58,   58,   58,   58,   58,   58,   58,   58,   58,   95,
791       58,   58,   58,   58,   58,   58,   58,  -60
792    },
793
794    {
795       11,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,
796      -61,  -61,  -61,   58,  -61,  -61,   58,   58,   58,   58,
797       58,   58,   58,   58,   58,   58,   58,   96,   97,   58,
798       58,   58,   58,   58,   58,   58,   58,  -61
799    },
800
801    {
802       11,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,
803      -62,  -62,  -62,   58,  -62,  -62,   58,   58,   58,   58,
804
805       58,   58,   98,   58,   58,   58,   58,   58,   58,   58,
806       99,   58,   58,   58,   58,   58,   58,  -62
807    },
808
809    {
810       11,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,
811      -63,  -63,  -63,   58,  -63,  -63,   58,  100,   58,   58,
812      101,   58,   58,   58,   58,   58,   58,   58,   58,   58,
813       58,   58,   58,   58,   58,   58,   58,  -63
814    },
815
816    {
817       11,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,
818      -64,  -64,  -64,   58,  -64,  -64,   58,   58,   58,   58,
819       58,   58,   58,   58,   58,   58,  102,   58,   58,   58,
820       58,   58,   58,   58,   58,   58,  103,  -64
821
822    },
823
824    {
825       11,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,
826      -65,  -65,  -65,   58,  -65,  -65,   58,   58,   58,   58,
827       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
828       58,   58,   58,   58,   58,   58,   58,  -65
829    },
830
831    {
832       11,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,
833      -66,  -66,  -66,   58,  -66,  -66,   58,   58,   58,   58,
834       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
835       58,   58,   58,   58,  104,   58,   58,  -66
836    },
837
838    {
839       11,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,
840      -67,  -67,  -67,   58,  -67,  -67,   58,   58,   58,   58,
841
842       58,   58,   58,   58,   58,  105,   58,   58,   58,   58,
843       58,   58,   58,   58,   58,   58,   58,  -67
844    },
845
846    {
847       11,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,
848      -68,  -68,  -68,   58,  -68,  -68,   58,   58,   58,   58,
849       58,   58,   58,   58,   58,   58,   58,   58,  106,   58,
850       58,   58,   58,   58,   58,   58,   58,  -68
851    },
852
853    {
854       11,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,
855      -69,  -69,  -69,   58,  -69,  -69,   58,   58,   58,   58,
856       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
857       58,   58,   58,   58,  107,   58,   58,  -69
858
859    },
860
861    {
862       11,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,
863      -70,  -70,  -70,   58,  -70,  -70,   58,   58,   58,   58,
864       58,   58,   58,   58,   58,   58,   58,   58,   58,  108,
865       58,   58,   58,   58,   58,   58,   58,  -70
866    },
867
868    {
869       11,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,
870      -71,  -71,  -71,   58,  -71,  -71,   58,   58,   58,   58,
871       58,   58,   58,   58,   58,   58,   58,   58,  109,   58,
872       58,   58,   58,   58,   58,   58,   58,  -71
873    },
874
875    {
876       11,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,
877      -72,  -72,  -72,   58,  -72,  -72,   58,   58,   58,   58,
878
879       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
880       58,  110,   58,   58,   58,   58,   58,  -72
881    },
882
883    {
884       11,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,
885      -73,  -73,  -73,   58,  -73,  -73,   58,   58,   58,   58,
886       58,   58,   58,   58,   58,   58,  111,   58,   58,   58,
887       58,   58,   58,   58,   58,   58,   58,  -73
888    },
889
890    {
891       11,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,
892      -74,  -74,  -74,   58,  -74,  -74,   58,   58,   58,   58,
893       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
894       58,   58,   58,   58,   58,  112,   58,  -74
895
896    },
897
898    {
899       11,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,
900      -75,  -75,  -75,   58,  -75,  -75,   58,   58,   58,   58,
901       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
902       58,   58,  113,   58,   58,   58,   58,  -75
903    },
904
905    {
906       11,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,
907      -76,  -76,  -76,   58,  -76,  -76,   58,   58,   58,   58,
908       58,   58,   58,   58,   58,  114,   58,   58,   58,   58,
909       58,   58,   58,   58,   58,   58,   58,  -76
910    },
911
912    {
913       11,   77,   77,  -77,   77,   77,   77,   77,   77,   77,
914       77,   77,   77,   77,   77,   77,   77,   77,   77,   77,
915
916       77,   77,   77,   77,   77,   77,   77,   77,   77,   77,
917       77,   77,   77,   77,   77,   77,   77,   77
918    },
919
920    {
921       11,  -78,   78,   79,  -78,  -78,  -78,  -78,  -78,  -78,
922      -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,
923      -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,
924      -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78
925    },
926
927    {
928       11,   80,  -79,  -79,   80,   80,   80,   80,   80,   80,
929       80,   80,   80,   80,   80,   80,   80,   80,   80,   80,
930       80,   80,   80,   80,   80,   80,   80,   80,   80,   80,
931       80,   80,   80,   80,   80,   80,   80,   80
932
933    },
934
935    {
936       11,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,
937      -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,
938      -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,
939      -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80
940    },
941
942    {
943       11,   81,   81,   82,   81,  -81,   81,   81,  -81,   81,
944       81,   81,   81,   81,   81,  -81,   81,   81,   81,   81,
945       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
946       81,   81,   81,   81,   81,   81,   81,   81
947    },
948
949    {
950       11,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
951      -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
952
953      -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,
954      -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82
955    },
956
957    {
958       11,  -83,  -83,   84,  -83,  -83,  -83,  -83,  -83,  -83,
959      -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
960      -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,
961      -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83
962    },
963
964    {
965       11,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,
966      -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,
967      -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,
968      -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84
969
970    },
971
972    {
973       11,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
974      -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
975      -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,
976      -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85
977    },
978
979    {
980       11,   86,   86,  -86,   86,   86,   86,   86,   86,   86,
981       86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
982       86,   86,   86,   86,   86,   86,   86,   86,   86,   86,
983       86,   86,   86,   86,   86,   86,   86,   86
984    },
985
986    {
987       11,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,
988      -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,
989
990      -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,
991      -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87
992    },
993
994    {
995       11,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,
996      -88,  115,   89,   89,  -88,  -88,   89,   89,   89,   89,
997       89,   89,   89,   89,   89,   89,   89,   89,   89,   89,
998       89,   89,   89,   89,   89,   89,   89,  -88
999    },
1000
1001    {
1002       11,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,
1003      -89,   89,   89,   89,  -89,  -89,   89,   89,   89,   89,
1004       89,   89,   89,   89,   89,   89,   89,   89,   89,   89,
1005       89,   89,   89,   89,   89,   89,   89,  -89
1006
1007    },
1008
1009    {
1010       11,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,
1011      -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,
1012      -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,
1013      -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90
1014    },
1015
1016    {
1017       11,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,
1018      -91,   89,   89,   89,  -91,  -91,   89,   89,   89,   89,
1019       89,   89,   89,   89,   89,   89,   89,   89,   89,   89,
1020       89,   89,   89,   89,   89,   89,   89,  -91
1021    },
1022
1023    {
1024       11,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,
1025      -92,   89,   89,   89,  -92,  -92,   89,   89,   89,   89,
1026
1027       89,   89,   89,   89,   89,   89,   89,   89,   89,   89,
1028       89,   89,   89,   89,   89,   89,   89,  -92
1029    },
1030
1031    {
1032       11,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,
1033      -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,
1034      -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,
1035      -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93
1036    },
1037
1038    {
1039       11,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,
1040      -94,  -94,  -94,   58,  -94,  -94,   58,   58,   58,   58,
1041       58,   58,   58,   58,   58,   58,  116,   58,   58,   58,
1042       58,   58,   58,   58,   58,   58,   58,  -94
1043
1044    },
1045
1046    {
1047       11,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,
1048      -95,  -95,  -95,   58,  -95,  -95,   58,   58,   58,   58,
1049       58,   58,   58,   58,   58,  117,   58,   58,   58,   58,
1050       58,   58,   58,   58,   58,   58,   58,  -95
1051    },
1052
1053    {
1054       11,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,
1055      -96,  -96,  -96,   58,  -96,  -96,   58,   58,   58,   58,
1056       58,   58,   58,   58,   58,   58,   58,  118,   58,   58,
1057       58,   58,   58,   58,   58,   58,   58,  -96
1058    },
1059
1060    {
1061       11,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,
1062      -97,  -97,  -97,   58,  -97,  -97,   58,   58,   58,   58,
1063
1064       58,   58,  119,   58,   58,   58,   58,   58,   58,   58,
1065       58,   58,   58,   58,   58,   58,   58,  -97
1066    },
1067
1068    {
1069       11,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,
1070      -98,  -98,  -98,   58,  -98,  -98,  120,  121,   58,   58,
1071       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1072       58,   58,   58,   58,   58,   58,   58,  -98
1073    },
1074
1075    {
1076       11,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,
1077      -99,  -99,  -99,   58,  -99,  -99,   58,   58,   58,   58,
1078       58,  122,   58,   58,   58,   58,   58,   58,   58,   58,
1079       58,   58,   58,   58,   58,   58,   58,  -99
1080
1081    },
1082
1083    {
1084       11, -100, -100, -100, -100, -100, -100, -100, -100, -100,
1085     -100, -100, -100,   58, -100, -100,   58,   58,  123,   58,
1086       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1087       58,   58,   58,   58,   58,   58,   58, -100
1088    },
1089
1090    {
1091       11, -101, -101, -101, -101, -101, -101, -101, -101, -101,
1092     -101, -101, -101,   58, -101, -101,   58,   58,   58,  124,
1093       58,   58,   58,   58,   58,  125,   58,  126,   58,   58,
1094       58,   58,   58,   58,   58,   58,   58, -101
1095    },
1096
1097    {
1098       11, -102, -102, -102, -102, -102, -102, -102, -102, -102,
1099     -102, -102, -102,   58, -102, -102,   58,   58,   58,   58,
1100
1101       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1102      127,   58,   58,   58,   58,   58,   58, -102
1103    },
1104
1105    {
1106       11, -103, -103, -103, -103, -103, -103, -103, -103, -103,
1107     -103, -103, -103,   58, -103, -103,   58,   58,   58,   58,
1108       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1109       58,   58,   58,   58,   58,   58,   58, -103
1110    },
1111
1112    {
1113       11, -104, -104, -104, -104, -104, -104, -104, -104, -104,
1114     -104, -104, -104,   58, -104, -104,   58,   58,   58,   58,
1115       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1116       58,   58,   58,   58,   58,   58,   58, -104
1117
1118    },
1119
1120    {
1121       11, -105, -105, -105, -105, -105, -105, -105, -105, -105,
1122     -105, -105, -105,   58, -105, -105,   58,   58,   58,   58,
1123       58,   58,   58,   58,   58,   58,   58,   58,  128,   58,
1124       58,   58,   58,   58,   58,   58,   58, -105
1125    },
1126
1127    {
1128       11, -106, -106, -106, -106, -106, -106, -106, -106, -106,
1129     -106, -106, -106,   58, -106, -106,   58,   58,   58,   58,
1130       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1131       58,   58,   58,   58,   58,  129,   58, -106
1132    },
1133
1134    {
1135       11, -107, -107, -107, -107, -107, -107, -107, -107, -107,
1136     -107, -107, -107,   58, -107, -107,   58,   58,   58,   58,
1137
1138       58,   58,   58,   58,   58,  130,   58,   58,   58,   58,
1139       58,   58,   58,   58,   58,   58,   58, -107
1140    },
1141
1142    {
1143       11, -108, -108, -108, -108, -108, -108, -108, -108, -108,
1144     -108, -108, -108,   58, -108, -108,   58,   58,   58,   58,
1145       58,   58,   58,   58,   58,   58,   58,  131,   58,   58,
1146       58,   58,   58,   58,   58,   58,   58, -108
1147    },
1148
1149    {
1150       11, -109, -109, -109, -109, -109, -109, -109, -109, -109,
1151     -109, -109, -109,   58, -109, -109,   58,   58,   58,   58,
1152       58,   58,   58,  132,   58,   58,   58,   58,   58,   58,
1153       58,   58,   58,   58,   58,   58,   58, -109
1154
1155    },
1156
1157    {
1158       11, -110, -110, -110, -110, -110, -110, -110, -110, -110,
1159     -110, -110, -110,   58, -110, -110,   58,   58,   58,   58,
1160       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1161       58,   58,   58,   58,   58,  133,   58, -110
1162    },
1163
1164    {
1165       11, -111, -111, -111, -111, -111, -111, -111, -111, -111,
1166     -111, -111, -111,   58, -111, -111,   58,   58,   58,   58,
1167       58,  134,   58,   58,   58,   58,   58,   58,   58,   58,
1168       58,   58,   58,   58,   58,   58,   58, -111
1169    },
1170
1171    {
1172       11, -112, -112, -112, -112, -112, -112, -112, -112, -112,
1173     -112, -112, -112,   58, -112, -112,   58,   58,   58,   58,
1174
1175       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1176       58,   58,  135,   58,   58,   58,   58, -112
1177    },
1178
1179    {
1180       11, -113, -113, -113, -113, -113, -113, -113, -113, -113,
1181     -113, -113, -113,   58, -113, -113,   58,   58,   58,   58,
1182       58,   58,   58,   58,   58,  136,   58,   58,   58,   58,
1183       58,   58,   58,   58,   58,   58,   58, -113
1184    },
1185
1186    {
1187       11, -114, -114, -114, -114, -114, -114, -114, -114, -114,
1188     -114, -114, -114,   58, -114, -114,   58,   58,   58,   58,
1189       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1190       58,   58,   58,  137,   58,   58,   58, -114
1191
1192    },
1193
1194    {
1195       11, -115, -115, -115, -115, -115, -115, -115, -115, -115,
1196     -115,   89,   89,   89, -115, -115,   89,   89,   89,   89,
1197       89,   89,   89,   89,   89,   89,   89,   89,   89,   89,
1198       89,   89,   89,   89,   89,   89,   89, -115
1199    },
1200
1201    {
1202       11, -116, -116, -116, -116, -116, -116, -116, -116, -116,
1203     -116, -116, -116,   58, -116, -116,   58,   58,   58,   58,
1204       58,  138,   58,   58,   58,   58,   58,   58,   58,   58,
1205       58,   58,   58,   58,   58,   58,   58, -116
1206    },
1207
1208    {
1209       11, -117, -117, -117, -117, -117, -117, -117, -117, -117,
1210     -117, -117, -117,   58, -117, -117,   58,   58,   58,  139,
1211
1212       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1213       58,   58,   58,   58,   58,   58,   58, -117
1214    },
1215
1216    {
1217       11, -118, -118, -118, -118, -118, -118, -118, -118, -118,
1218     -118, -118, -118,   58, -118, -118,   58,   58,   58,   58,
1219       58,  140,   58,   58,   58,   58,   58,   58,   58,   58,
1220       58,   58,   58,   58,   58,   58,   58, -118
1221    },
1222
1223    {
1224       11, -119, -119, -119, -119, -119, -119, -119, -119, -119,
1225     -119, -119, -119,   58, -119, -119,   58,   58,   58,   58,
1226       58,   58,   58,   58,   58,  141,   58,   58,   58,   58,
1227       58,   58,   58,   58,   58,   58,   58, -119
1228
1229    },
1230
1231    {
1232       11, -120, -120, -120, -120, -120, -120, -120, -120, -120,
1233     -120, -120, -120,   58, -120, -120,   58,   58,  142,   58,
1234       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1235       58,   58,   58,   58,  143,   58,   58, -120
1236    },
1237
1238    {
1239       11, -121, -121, -121, -121, -121, -121, -121, -121, -121,
1240     -121, -121, -121,   58, -121, -121,   58,   58,   58,   58,
1241       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1242       58,   58,   58,   58,   58,  144,   58, -121
1243    },
1244
1245    {
1246       11, -122, -122, -122, -122, -122, -122, -122, -122, -122,
1247     -122, -122, -122,   58, -122, -122,   58,   58,   58,   58,
1248
1249       58,   58,   58,   58,   58,   58,   58,   58,  145,   58,
1250       58,   58,   58,   58,   58,   58,   58, -122
1251    },
1252
1253    {
1254       11, -123, -123, -123, -123, -123, -123, -123, -123, -123,
1255     -123, -123, -123,   58, -123, -123,   58,   58,   58,   58,
1256       58,   58,   58,   58,   58,   58,  146,   58,   58,   58,
1257       58,   58,   58,   58,   58,   58,   58, -123
1258    },
1259
1260    {
1261       11, -124, -124, -124, -124, -124, -124, -124, -124, -124,
1262     -124, -124, -124,   58, -124, -124,   58,   58,   58,   58,
1263       58,   58,   58,   58,  147,   58,   58,   58,   58,   58,
1264       58,   58,   58,   58,   58,   58,   58, -124
1265
1266    },
1267
1268    {
1269       11, -125, -125, -125, -125, -125, -125, -125, -125, -125,
1270     -125, -125, -125,   58, -125, -125,   58,   58,   58,   58,
1271       58,   58,  148,   58,   58,   58,   58,   58,   58,   58,
1272       58,   58,   58,   58,   58,   58,   58, -125
1273    },
1274
1275    {
1276       11, -126, -126, -126, -126, -126, -126, -126, -126, -126,
1277     -126, -126, -126,   58, -126, -126,   58,   58,   58,   58,
1278       58,  149,   58,   58,   58,   58,   58,   58,   58,   58,
1279       58,   58,   58,   58,   58,   58,   58, -126
1280    },
1281
1282    {
1283       11, -127, -127, -127, -127, -127, -127, -127, -127, -127,
1284     -127, -127, -127,   58, -127, -127,   58,   58,   58,   58,
1285
1286       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1287       58,   58,   58,   58,   58,   58,   58, -127
1288    },
1289
1290    {
1291       11, -128, -128, -128, -128, -128, -128, -128, -128, -128,
1292     -128, -128, -128,   58, -128, -128,   58,   58,   58,   58,
1293       58,   58,   58,   58,   58,   58,   58,  150,   58,   58,
1294       58,   58,   58,   58,   58,   58,   58, -128
1295    },
1296
1297    {
1298       11, -129, -129, -129, -129, -129, -129, -129, -129, -129,
1299     -129, -129, -129,   58, -129, -129,   58,   58,   58,  151,
1300       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1301       58,   58,   58,   58,   58,   58,   58, -129
1302
1303    },
1304
1305    {
1306       11, -130, -130, -130, -130, -130, -130, -130, -130, -130,
1307     -130, -130, -130,   58, -130, -130,   58,   58,   58,   58,
1308       58,   58,   58,   58,   58,   58,   58,   58,   58,  152,
1309       58,   58,   58,   58,   58,   58,   58, -130
1310    },
1311
1312    {
1313       11, -131, -131, -131, -131, -131, -131, -131, -131, -131,
1314     -131, -131, -131,   58, -131, -131,   58,   58,   58,   58,
1315       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1316      153,   58,   58,   58,   58,   58,   58, -131
1317    },
1318
1319    {
1320       11, -132, -132, -132, -132, -132, -132, -132, -132, -132,
1321     -132, -132, -132,   58, -132, -132,   58,   58,   58,   58,
1322
1323       58,  154,   58,   58,   58,   58,   58,   58,   58,   58,
1324       58,   58,   58,   58,   58,   58,   58, -132
1325    },
1326
1327    {
1328       11, -133, -133, -133, -133, -133, -133, -133, -133, -133,
1329     -133, -133, -133,   58, -133, -133,   58,   58,   58,   58,
1330       58,   58,   58,   58,   58,  155,   58,   58,   58,   58,
1331       58,   58,   58,   58,   58,   58,   58, -133
1332    },
1333
1334    {
1335       11, -134, -134, -134, -134, -134, -134, -134, -134, -134,
1336     -134, -134, -134,   58, -134, -134,   58,   58,   58,  156,
1337       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1338       58,   58,   58,   58,   58,   58,   58, -134
1339
1340    },
1341
1342    {
1343       11, -135, -135, -135, -135, -135, -135, -135, -135, -135,
1344     -135, -135, -135,   58, -135, -135,   58,   58,   58,  157,
1345       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1346       58,   58,   58,   58,   58,   58,   58, -135
1347    },
1348
1349    {
1350       11, -136, -136, -136, -136, -136, -136, -136, -136, -136,
1351     -136, -136, -136,   58, -136, -136,   58,   58,   58,   58,
1352       58,   58,   58,   58,   58,   58,   58,   58,  158,   58,
1353       58,   58,   58,   58,   58,   58,   58, -136
1354    },
1355
1356    {
1357       11, -137, -137, -137, -137, -137, -137, -137, -137, -137,
1358     -137, -137, -137,   58, -137, -137,   58,   58,   58,   58,
1359
1360       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1361       58,   58,   58,   58,  159,   58,   58, -137
1362    },
1363
1364    {
1365       11, -138, -138, -138, -138, -138, -138, -138, -138, -138,
1366     -138, -138, -138,   58, -138, -138,   58,  160,   58,   58,
1367       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1368       58,   58,   58,   58,   58,   58,   58, -138
1369    },
1370
1371    {
1372       11, -139, -139, -139, -139, -139, -139, -139, -139, -139,
1373     -139, -139, -139,   58, -139, -139,   58,   58,   58,   58,
1374       58,  161,   58,   58,   58,   58,   58,   58,   58,   58,
1375       58,   58,   58,   58,   58,   58,   58, -139
1376
1377    },
1378
1379    {
1380       11, -140, -140, -140, -140, -140, -140, -140, -140, -140,
1381     -140, -140, -140,   58, -140, -140,   58,   58,   58,   58,
1382       58,   58,   58,   58,   58,   58,   58,   58,  162,   58,
1383       58,   58,   58,   58,   58,   58,   58, -140
1384    },
1385
1386    {
1387       11, -141, -141, -141, -141, -141, -141, -141, -141, -141,
1388     -141, -141, -141,   58, -141, -141,   58,   58,   58,   58,
1389       58,   58,   58,  163,   58,   58,   58,   58,   58,   58,
1390       58,   58,   58,   58,   58,   58,   58, -141
1391    },
1392
1393    {
1394       11, -142, -142, -142, -142, -142, -142, -142, -142, -142,
1395     -142, -142, -142,   58, -142, -142,   58,   58,   58,   58,
1396
1397       58,   58,   58,   58,   58,   58,   58,   58,   58,  164,
1398       58,   58,   58,   58,   58,   58,   58, -142
1399    },
1400
1401    {
1402       11, -143, -143, -143, -143, -143, -143, -143, -143, -143,
1403     -143, -143, -143,   58, -143, -143,   58,   58,   58,   58,
1404       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1405       58,   58,  165,   58,   58,   58,   58, -143
1406    },
1407
1408    {
1409       11, -144, -144, -144, -144, -144, -144, -144, -144, -144,
1410     -144, -144, -144,   58, -144, -144,   58,   58,   58,   58,
1411       58,   58,   58,   58,   58,   58,  166,   58,   58,   58,
1412       58,   58,   58,   58,   58,   58,   58, -144
1413
1414    },
1415
1416    {
1417       11, -145, -145, -145, -145, -145, -145, -145, -145, -145,
1418     -145, -145, -145,   58, -145, -145,   58,   58,   58,   58,
1419      167,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1420       58,   58,   58,   58,   58,   58,   58, -145
1421    },
1422
1423    {
1424       11, -146, -146, -146, -146, -146, -146, -146, -146, -146,
1425     -146, -146, -146,   58, -146, -146,   58,   58,   58,   58,
1426       58,  168,   58,   58,   58,   58,   58,   58,   58,   58,
1427       58,   58,   58,   58,   58,   58,   58, -146
1428    },
1429
1430    {
1431       11, -147, -147, -147, -147, -147, -147, -147, -147, -147,
1432     -147, -147, -147,   58, -147, -147,   58,   58,   58,   58,
1433
1434       58,   58,   58,   58,   58,   58,   58,   58,   58,  169,
1435       58,   58,   58,   58,   58,   58,   58, -147
1436    },
1437
1438    {
1439       11, -148, -148, -148, -148, -148, -148, -148, -148, -148,
1440     -148, -148, -148,   58, -148, -148,   58,   58,   58,   58,
1441       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1442       58,   58,   58,   58,   58,   58,   58, -148
1443    },
1444
1445    {
1446       11, -149, -149, -149, -149, -149, -149, -149, -149, -149,
1447     -149, -149, -149,   58, -149, -149,   58,   58,   58,   58,
1448       58,   58,   58,   58,   58,   58,   58,   58,  170,   58,
1449       58,   58,   58,   58,   58,   58,   58, -149
1450
1451    },
1452
1453    {
1454       11, -150, -150, -150, -150, -150, -150, -150, -150, -150,
1455     -150, -150, -150,   58, -150, -150,   58,   58,   58,   58,
1456       58,  171,   58,   58,   58,   58,   58,   58,   58,   58,
1457       58,   58,   58,   58,   58,   58,   58, -150
1458    },
1459
1460    {
1461       11, -151, -151, -151, -151, -151, -151, -151, -151, -151,
1462     -151, -151, -151,   58, -151, -151,   58,   58,   58,   58,
1463       58,   58,   58,   58,   58,   58,   58,   58,   58,  172,
1464       58,   58,   58,   58,   58,   58,   58, -151
1465    },
1466
1467    {
1468       11, -152, -152, -152, -152, -152, -152, -152, -152, -152,
1469     -152, -152, -152,   58, -152, -152,   58,   58,   58,   58,
1470
1471       58,   58,   58,   58,   58,   58,   58,   58,  173,   58,
1472       58,   58,   58,   58,   58,   58,   58, -152
1473    },
1474
1475    {
1476       11, -153, -153, -153, -153, -153, -153, -153, -153, -153,
1477     -153, -153, -153,   58, -153, -153,   58,   58,   58,   58,
1478       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1479       58,   58,   58,   58,  174,   58,   58, -153
1480    },
1481
1482    {
1483       11, -154, -154, -154, -154, -154, -154, -154, -154, -154,
1484     -154, -154, -154,   58, -154, -154,   58,   58,   58,   58,
1485       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1486       58,   58,   58,   58,   58,   58,   58, -154
1487
1488    },
1489
1490    {
1491       11, -155, -155, -155, -155, -155, -155, -155, -155, -155,
1492     -155, -155, -155,   58, -155, -155,   58,   58,   58,   58,
1493       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1494       58,   58,  175,   58,   58,   58,   58, -155
1495    },
1496
1497    {
1498       11, -156, -156, -156, -156, -156, -156, -156, -156, -156,
1499     -156, -156, -156,   58, -156, -156,   58,   58,   58,   58,
1500       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1501       58,   58,   58,   58,  176,   58,   58, -156
1502    },
1503
1504    {
1505       11, -157, -157, -157, -157, -157, -157, -157, -157, -157,
1506     -157, -157, -157,   58, -157, -157,   58,   58,   58,   58,
1507
1508       58,  177,   58,   58,   58,   58,   58,   58,   58,   58,
1509       58,   58,   58,   58,   58,   58,   58, -157
1510    },
1511
1512    {
1513       11, -158, -158, -158, -158, -158, -158, -158, -158, -158,
1514     -158, -158, -158,   58, -158, -158,   58,   58,   58,   58,
1515       58,   58,   58,  178,   58,   58,   58,   58,   58,   58,
1516       58,   58,   58,   58,   58,   58,   58, -158
1517    },
1518
1519    {
1520       11, -159, -159, -159, -159, -159, -159, -159, -159, -159,
1521     -159, -159, -159,   58, -159, -159,   58,  179,   58,   58,
1522       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1523       58,   58,   58,   58,   58,   58,   58, -159
1524
1525    },
1526
1527    {
1528       11, -160, -160, -160, -160, -160, -160, -160, -160, -160,
1529     -160, -160, -160,   58, -160, -160,   58,   58,   58,   58,
1530       58,   58,   58,   58,   58,   58,   58,   58,  180,   58,
1531       58,   58,   58,   58,   58,   58,   58, -160
1532    },
1533
1534    {
1535       11, -161, -161, -161, -161, -161, -161, -161, -161, -161,
1536     -161, -161, -161,   58, -161, -161,   58,   58,   58,   58,
1537       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1538       58,   58,   58,   58,   58,   58,   58, -161
1539    },
1540
1541    {
1542       11, -162, -162, -162, -162, -162, -162, -162, -162, -162,
1543     -162, -162, -162,   58, -162, -162,   58,   58,   58,   58,
1544
1545       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1546       58,   58,   58,   58,  181,   58,   58, -162
1547    },
1548
1549    {
1550       11, -163, -163, -163, -163, -163, -163, -163, -163, -163,
1551     -163, -163, -163,   58, -163, -163,   58,   58,   58,   58,
1552       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1553       58,   58,   58,   58,   58,   58,   58, -163
1554    },
1555
1556    {
1557       11, -164, -164, -164, -164, -164, -164, -164, -164, -164,
1558     -164, -164, -164,   58, -164, -164,   58,   58,   58,   58,
1559       58,   58,   58,   58,   58,   58,   58,   58,   58,  182,
1560       58,   58,   58,   58,   58,   58,   58, -164
1561
1562    },
1563
1564    {
1565       11, -165, -165, -165, -165, -165, -165, -165, -165, -165,
1566     -165, -165, -165,   58, -165, -165,   58,   58,   58,   58,
1567       58,   58,   58,   58,   58,  183,   58,   58,   58,   58,
1568       58,   58,   58,   58,   58,   58,   58, -165
1569    },
1570
1571    {
1572       11, -166, -166, -166, -166, -166, -166, -166, -166, -166,
1573     -166, -166, -166,   58, -166, -166,   58,   58,   58,   58,
1574       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1575       58,   58,   58,   58,  184,   58,   58, -166
1576    },
1577
1578    {
1579       11, -167, -167, -167, -167, -167, -167, -167, -167, -167,
1580     -167, -167, -167,   58, -167, -167,   58,   58,   58,   58,
1581
1582       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1583       58,   58,   58,  185,   58,   58,   58, -167
1584    },
1585
1586    {
1587       11, -168, -168, -168, -168, -168, -168, -168, -168, -168,
1588     -168, -168, -168,   58, -168, -168,   58,   58,   58,   58,
1589       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1590       58,   58,   58,   58,   58,   58,   58, -168
1591    },
1592
1593    {
1594       11, -169, -169, -169, -169, -169, -169, -169, -169, -169,
1595     -169, -169, -169,   58, -169, -169,   58,   58,   58,   58,
1596       58,   58,   58,   58,   58,  186,   58,   58,   58,   58,
1597       58,   58,   58,   58,   58,   58,   58, -169
1598
1599    },
1600
1601    {
1602       11, -170, -170, -170, -170, -170, -170, -170, -170, -170,
1603     -170, -170, -170,   58, -170, -170,   58,   58,   58,   58,
1604       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1605       58,   58,   58,   58,   58,  187,   58, -170
1606    },
1607
1608    {
1609       11, -171, -171, -171, -171, -171, -171, -171, -171, -171,
1610     -171, -171, -171,   58, -171, -171,   58,   58,   58,   58,
1611       58,   58,   58,   58,   58,   58,   58,   58,  188,   58,
1612       58,   58,   58,   58,   58,   58,   58, -171
1613    },
1614
1615    {
1616       11, -172, -172, -172, -172, -172, -172, -172, -172, -172,
1617     -172, -172, -172,   58, -172, -172,   58,   58,   58,   58,
1618
1619       58,   58,   58,   58,   58,   58,   58,   58,  189,   58,
1620       58,   58,   58,   58,   58,   58,   58, -172
1621    },
1622
1623    {
1624       11, -173, -173, -173, -173, -173, -173, -173, -173, -173,
1625     -173, -173, -173,   58, -173, -173,   58,  190,   58,   58,
1626       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1627       58,   58,   58,   58,   58,   58,   58, -173
1628    },
1629
1630    {
1631       11, -174, -174, -174, -174, -174, -174, -174, -174, -174,
1632     -174, -174, -174,   58, -174, -174,   58,   58,   58,   58,
1633       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1634       58,   58,   58,   58,   58,   58,   58, -174
1635
1636    },
1637
1638    {
1639       11, -175, -175, -175, -175, -175, -175, -175, -175, -175,
1640     -175, -175, -175,   58, -175, -175,   58,   58,   58,   58,
1641       58,  191,   58,   58,   58,   58,   58,   58,   58,   58,
1642       58,   58,   58,   58,   58,   58,   58, -175
1643    },
1644
1645    {
1646       11, -176, -176, -176, -176, -176, -176, -176, -176, -176,
1647     -176, -176, -176,   58, -176, -176,   58,   58,   58,   58,
1648       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1649       58,   58,   58,   58,   58,   58,   58, -176
1650    },
1651
1652    {
1653       11, -177, -177, -177, -177, -177, -177, -177, -177, -177,
1654     -177, -177, -177,   58, -177, -177,   58,   58,   58,   58,
1655
1656       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1657       58,   58,   58,   58,   58,   58,   58, -177
1658    },
1659
1660    {
1661       11, -178, -178, -178, -178, -178, -178, -178, -178, -178,
1662     -178, -178, -178,   58, -178, -178,   58,   58,   58,   58,
1663       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1664       58,   58,   58,   58,   58,   58,   58, -178
1665    },
1666
1667    {
1668       11, -179, -179, -179, -179, -179, -179, -179, -179, -179,
1669     -179, -179, -179,   58, -179, -179,   58,   58,   58,   58,
1670       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1671       58,   58,   58,   58,  192,   58,   58, -179
1672
1673    },
1674
1675    {
1676       11, -180, -180, -180, -180, -180, -180, -180, -180, -180,
1677     -180, -180, -180,   58, -180, -180,   58,   58,   58,   58,
1678       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1679       58,   58,   58,   58,   58,   58,   58, -180
1680    },
1681
1682    {
1683       11, -181, -181, -181, -181, -181, -181, -181, -181, -181,
1684     -181, -181, -181,   58, -181, -181,   58,   58,   58,   58,
1685       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1686       58,   58,   58,   58,   58,   58,   58, -181
1687    },
1688
1689    {
1690       11, -182, -182, -182, -182, -182, -182, -182, -182, -182,
1691     -182, -182, -182,   58, -182, -182,   58,   58,   58,   58,
1692
1693       58,   58,   58,   58,   58,   58,  193,   58,   58,   58,
1694       58,   58,   58,   58,   58,   58,   58, -182
1695    },
1696
1697    {
1698       11, -183, -183, -183, -183, -183, -183, -183, -183, -183,
1699     -183, -183, -183,   58, -183, -183,   58,   58,   58,   58,
1700       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1701       58,   58,   58,  194,   58,   58,   58, -183
1702    },
1703
1704    {
1705       11, -184, -184, -184, -184, -184, -184, -184, -184, -184,
1706     -184, -184, -184,   58, -184, -184,   58,   58,   58,   58,
1707       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1708       58,   58,   58,   58,   58,   58,   58, -184
1709
1710    },
1711
1712    {
1713       11, -185, -185, -185, -185, -185, -185, -185, -185, -185,
1714     -185, -185, -185,   58, -185, -185,   58,   58,   58,   58,
1715       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1716       58,   58,   58,   58,   58,   58,   58, -185
1717    },
1718
1719    {
1720       11, -186, -186, -186, -186, -186, -186, -186, -186, -186,
1721     -186, -186, -186,   58, -186, -186,   58,   58,   58,  195,
1722       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1723       58,   58,   58,   58,   58,   58,   58, -186
1724    },
1725
1726    {
1727       11, -187, -187, -187, -187, -187, -187, -187, -187, -187,
1728     -187, -187, -187,   58, -187, -187,   58,   58,   58,   58,
1729
1730       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1731       58,   58,   58,   58,   58,   58,   58, -187
1732    },
1733
1734    {
1735       11, -188, -188, -188, -188, -188, -188, -188, -188, -188,
1736     -188, -188, -188,   58, -188, -188,   58,   58,   58,   58,
1737       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1738       58,   58,   58,   58,   58,  196,   58, -188
1739    },
1740
1741    {
1742       11, -189, -189, -189, -189, -189, -189, -189, -189, -189,
1743     -189, -189, -189,   58, -189, -189,   58,   58,   58,   58,
1744       58,   58,  197,   58,   58,   58,   58,   58,   58,   58,
1745       58,   58,   58,   58,   58,   58,   58, -189
1746
1747    },
1748
1749    {
1750       11, -190, -190, -190, -190, -190, -190, -190, -190, -190,
1751     -190, -190, -190,   58, -190, -190,   58,   58,   58,   58,
1752       58,   58,   58,   58,   58,   58,  198,   58,   58,   58,
1753       58,   58,   58,   58,   58,   58,   58, -190
1754    },
1755
1756    {
1757       11, -191, -191, -191, -191, -191, -191, -191, -191, -191,
1758     -191, -191, -191,   58, -191, -191,   58,   58,   58,   58,
1759       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1760       58,   58,   58,  199,   58,   58,   58, -191
1761    },
1762
1763    {
1764       11, -192, -192, -192, -192, -192, -192, -192, -192, -192,
1765     -192, -192, -192,   58, -192, -192,   58,   58,   58,   58,
1766
1767       58,  200,   58,   58,   58,   58,   58,   58,   58,   58,
1768       58,   58,   58,   58,   58,   58,   58, -192
1769    },
1770
1771    {
1772       11, -193, -193, -193, -193, -193, -193, -193, -193, -193,
1773     -193, -193, -193,   58, -193, -193,   58,   58,   58,   58,
1774       58,  201,   58,   58,   58,   58,   58,   58,   58,   58,
1775       58,   58,   58,   58,   58,   58,   58, -193
1776    },
1777
1778    {
1779       11, -194, -194, -194, -194, -194, -194, -194, -194, -194,
1780     -194, -194, -194,   58, -194, -194,   58,   58,   58,   58,
1781       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1782       58,   58,   58,   58,  202,   58,   58, -194
1783
1784    },
1785
1786    {
1787       11, -195, -195, -195, -195, -195, -195, -195, -195, -195,
1788     -195, -195, -195,   58, -195, -195,   58,   58,   58,   58,
1789       58,  203,   58,   58,   58,   58,   58,   58,   58,   58,
1790       58,   58,   58,   58,   58,   58,   58, -195
1791    },
1792
1793    {
1794       11, -196, -196, -196, -196, -196, -196, -196, -196, -196,
1795     -196, -196, -196,   58, -196, -196,   58,   58,   58,   58,
1796       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1797       58,   58,   58,   58,   58,   58,   58, -196
1798    },
1799
1800    {
1801       11, -197, -197, -197, -197, -197, -197, -197, -197, -197,
1802     -197, -197, -197,   58, -197, -197,   58,   58,   58,   58,
1803
1804       58,   58,   58,   58,   58,  204,   58,   58,   58,   58,
1805       58,   58,   58,   58,   58,   58,   58, -197
1806    },
1807
1808    {
1809       11, -198, -198, -198, -198, -198, -198, -198, -198, -198,
1810     -198, -198, -198,   58, -198, -198,   58,   58,   58,   58,
1811       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1812       58,   58,   58,   58,   58,   58,   58, -198
1813    },
1814
1815    {
1816       11, -199, -199, -199, -199, -199, -199, -199, -199, -199,
1817     -199, -199, -199,   58, -199, -199,   58,   58,   58,   58,
1818       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1819       58,   58,   58,   58,   58,   58,   58, -199
1820
1821    },
1822
1823    {
1824       11, -200, -200, -200, -200, -200, -200, -200, -200, -200,
1825     -200, -200, -200,   58, -200, -200,   58,   58,   58,   58,
1826       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1827       58,   58,   58,   58,   58,   58,   58, -200
1828    },
1829
1830    {
1831       11, -201, -201, -201, -201, -201, -201, -201, -201, -201,
1832     -201, -201, -201,   58, -201, -201,   58,  205,   58,   58,
1833       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1834       58,   58,   58,   58,   58,   58,   58, -201
1835    },
1836
1837    {
1838       11, -202, -202, -202, -202, -202, -202, -202, -202, -202,
1839     -202, -202, -202,   58, -202, -202,   58,  206,   58,   58,
1840
1841       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1842       58,   58,   58,   58,   58,   58,   58, -202
1843    },
1844
1845    {
1846       11, -203, -203, -203, -203, -203, -203, -203, -203, -203,
1847     -203, -203, -203,   58, -203, -203,   58,   58,   58,   58,
1848       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1849       58,   58,   58,   58,   58,   58,   58, -203
1850    },
1851
1852    {
1853       11, -204, -204, -204, -204, -204, -204, -204, -204, -204,
1854     -204, -204, -204,   58, -204, -204,   58,   58,   58,   58,
1855       58,   58,   58,  207,   58,   58,   58,   58,   58,   58,
1856       58,   58,   58,   58,   58,   58,   58, -204
1857
1858    },
1859
1860    {
1861       11, -205, -205, -205, -205, -205, -205, -205, -205, -205,
1862     -205, -205, -205,   58, -205, -205,   58,   58,   58,   58,
1863       58,   58,   58,   58,   58,   58,   58,   58,  208,   58,
1864       58,   58,   58,   58,   58,   58,   58, -205
1865    },
1866
1867    {
1868       11, -206, -206, -206, -206, -206, -206, -206, -206, -206,
1869     -206, -206, -206,   58, -206, -206,   58,   58,   58,   58,
1870       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1871       58,   58,   58,   58,  209,   58,   58, -206
1872    },
1873
1874    {
1875       11, -207, -207, -207, -207, -207, -207, -207, -207, -207,
1876     -207, -207, -207,   58, -207, -207,   58,   58,   58,   58,
1877
1878       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1879       58,   58,   58,   58,   58,   58,   58, -207
1880    },
1881
1882    {
1883       11, -208, -208, -208, -208, -208, -208, -208, -208, -208,
1884     -208, -208, -208,   58, -208, -208,   58,   58,   58,   58,
1885       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1886       58,   58,   58,   58,   58,   58,   58, -208
1887    },
1888
1889    {
1890       11, -209, -209, -209, -209, -209, -209, -209, -209, -209,
1891     -209, -209, -209,   58, -209, -209,   58,   58,   58,   58,
1892       58,  210,   58,   58,   58,   58,   58,   58,   58,   58,
1893       58,   58,   58,   58,   58,   58,   58, -209
1894
1895    },
1896
1897    {
1898       11, -210, -210, -210, -210, -210, -210, -210, -210, -210,
1899     -210, -210, -210,   58, -210, -210,   58,   58,   58,   58,
1900       58,   58,   58,   58,   58,   58,   58,   58,   58,   58,
1901       58,   58,   58,   58,   58,   58,   58, -210
1902    },
1903
1904    } ;
1905
1906static yy_state_type yy_get_previous_state (void );
1907static yy_state_type yy_try_NUL_trans (yy_state_type current_state  );
1908static int yy_get_next_buffer (void );
1909static void yy_fatal_error (yyconst char msg[]  );
1910
1911/* Done after the current pattern has been matched and before the
1912 * corresponding action - sets up zconftext.
1913 */
1914#define YY_DO_BEFORE_ACTION \
1915    (yytext_ptr) = yy_bp; \
1916    zconfleng = (size_t) (yy_cp - yy_bp); \
1917    (yy_hold_char) = *yy_cp; \
1918    *yy_cp = '\0'; \
1919    (yy_c_buf_p) = yy_cp;
1920
1921#define YY_NUM_RULES 64
1922#define YY_END_OF_BUFFER 65
1923/* This struct is not used in this scanner,
1924   but its presence is necessary. */
1925struct yy_trans_info
1926    {
1927    flex_int32_t yy_verify;
1928    flex_int32_t yy_nxt;
1929    };
1930static yyconst flex_int16_t yy_accept[211] =
1931    {   0,
1932        0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
1933       65,    5,    4,    3,    2,   36,   37,   35,   35,   35,
1934       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1935       63,   60,   62,   55,   59,   58,   57,   53,   48,   42,
1936       47,   51,   53,   40,   41,   50,   50,   43,   53,   50,
1937       50,   53,    4,    3,    2,    2,    1,   35,   35,   35,
1938       35,   35,   35,   35,   16,   35,   35,   35,   35,   35,
1939       35,   35,   35,   35,   35,   35,   63,   60,   62,   61,
1940       55,   54,   57,   56,   44,   51,   38,   50,   50,   52,
1941       45,   46,   39,   35,   35,   35,   35,   35,   35,   35,
1942
1943       35,   35,   30,   29,   35,   35,   35,   35,   35,   35,
1944       35,   35,   35,   35,   49,   25,   35,   35,   35,   35,
1945       35,   35,   35,   35,   35,   35,   15,   35,    7,   35,
1946       35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
1947       35,   35,   35,   35,   35,   35,   35,   17,   35,   35,
1948       35,   35,   35,   34,   35,   35,   35,   35,   35,   35,
1949       10,   35,   13,   35,   35,   35,   35,   33,   35,   35,
1950       35,   35,   35,   22,   35,   32,    9,   31,   35,   26,
1951       12,   35,   35,   21,   18,   35,    8,   35,   35,   35,
1952       35,   35,   27,   35,   35,    6,   35,   20,   19,   23,
1953
1954       35,   35,   11,   35,   35,   35,   14,   28,   35,   24
1955    } ;
1956
1957static yyconst flex_int32_t yy_ec[256] =
1958    {   0,
1959        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
1960        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1961        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1962        1,    2,    4,    5,    6,    1,    1,    7,    8,    9,
1963       10,    1,    1,    1,   11,   12,   12,   13,   13,   13,
1964       13,   13,   13,   13,   13,   13,   13,    1,    1,    1,
1965       14,    1,    1,    1,   13,   13,   13,   13,   13,   13,
1966       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
1967       13,   13,   13,   13,   13,   13,   13,   13,   13,   13,
1968        1,   15,    1,    1,   16,    1,   17,   18,   19,   20,
1969
1970       21,   22,   23,   24,   25,   13,   13,   26,   27,   28,
1971       29,   30,   31,   32,   33,   34,   35,   13,   13,   36,
1972       13,   13,    1,   37,    1,    1,    1,    1,    1,    1,
1973        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1974        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1975        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1976        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1977        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1978        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1979        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1980
1981        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1982        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1983        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1984        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1985        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
1986        1,    1,    1,    1,    1
1987    } ;
1988
1989extern int zconf_flex_debug;
1990int zconf_flex_debug = 0;
1991
1992/* The intent behind this definition is that it'll catch
1993 * any uses of REJECT which flex missed.
1994 */
1995#define REJECT reject_used_but_not_detected
1996#define yymore() yymore_used_but_not_detected
1997#define YY_MORE_ADJ 0
1998#define YY_RESTORE_YY_MORE_OFFSET
1999char *zconftext;
2000
2001/*
2002 * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org>
2003 * Released under the terms of the GNU GPL v2.0.
2004 */
2005
2006#include <limits.h>
2007#include <stdio.h>
2008#include <stdlib.h>
2009#include <string.h>
2010#include <unistd.h>
2011
2012#define LKC_DIRECT_LINK
2013#include "lkc.h"
2014
2015#define START_STRSIZE   16
2016
2017char *text;
2018static char *text_ptr;
2019static int text_size, text_asize;
2020
2021struct buffer {
2022        struct buffer *parent;
2023        YY_BUFFER_STATE state;
2024};
2025
2026struct buffer *current_buf;
2027
2028static int last_ts, first_ts;
2029
2030static void zconf_endhelp(void);
2031static struct buffer *zconf_endfile(void);
2032
2033void new_string(void)
2034{
2035    text = malloc(START_STRSIZE);
2036    text_asize = START_STRSIZE;
2037    text_ptr = text;
2038    text_size = 0;
2039    *text_ptr = 0;
2040}
2041
2042void append_string(const char *str, int size)
2043{
2044    int new_size = text_size + size + 1;
2045    if (new_size > text_asize) {
2046        text = realloc(text, new_size);
2047        text_asize = new_size;
2048        text_ptr = text + text_size;
2049    }
2050    memcpy(text_ptr, str, size);
2051    text_ptr += size;
2052    text_size += size;
2053    *text_ptr = 0;
2054}
2055
2056void alloc_string(const char *str, int size)
2057{
2058    text = malloc(size + 1);
2059    memcpy(text, str, size);
2060    text[size] = 0;
2061}
2062
2063#define INITIAL 0
2064#define COMMAND 1
2065#define HELP 2
2066#define STRING 3
2067#define PARAM 4
2068
2069/* Special case for "unistd.h", since it is non-ANSI. We include it way
2070 * down here because we want the user's section 1 to have been scanned first.
2071 * The user has a chance to override it with an option.
2072 */
2073#include <unistd.h>
2074
2075#ifndef YY_EXTRA_TYPE
2076#define YY_EXTRA_TYPE void *
2077#endif
2078
2079/* Macros after this point can all be overridden by user definitions in
2080 * section 1.
2081 */
2082
2083#ifndef YY_SKIP_YYWRAP
2084#ifdef __cplusplus
2085extern "C" int zconfwrap (void );
2086#else
2087extern int zconfwrap (void );
2088#endif
2089#endif
2090
2091    static void yyunput (int c,char *buf_ptr  );
2092
2093#ifndef yytext_ptr
2094static void yy_flex_strncpy (char *,yyconst char *,int );
2095#endif
2096
2097#ifdef YY_NEED_STRLEN
2098static int yy_flex_strlen (yyconst char * );
2099#endif
2100
2101#ifndef YY_NO_INPUT
2102
2103#ifdef __cplusplus
2104static int yyinput (void );
2105#else
2106static int input (void );
2107#endif
2108
2109#endif
2110
2111/* Amount of stuff to slurp up with each read. */
2112#ifndef YY_READ_BUF_SIZE
2113#define YY_READ_BUF_SIZE 8192
2114#endif
2115
2116/* Copy whatever the last rule matched to the standard output. */
2117#ifndef ECHO
2118/* This used to be an fputs(), but since the string might contain NUL's,
2119 * we now use fwrite().
2120 */
2121#define ECHO (void) fwrite( zconftext, zconfleng, 1, zconfout )
2122#endif
2123
2124/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
2125 * is returned in "result".
2126 */
2127#ifndef YY_INPUT
2128#define YY_INPUT(buf,result,max_size) \
2129    errno=0; \
2130    while ( (result = read( fileno(zconfin), (char *) buf, max_size )) < 0 ) \
2131    { \
2132        if( errno != EINTR) \
2133        { \
2134            YY_FATAL_ERROR( "input in flex scanner failed" ); \
2135            break; \
2136        } \
2137        errno=0; \
2138        clearerr(zconfin); \
2139    }\
2140\
2141
2142#endif
2143
2144/* No semi-colon after return; correct usage is to write "yyterminate();" -
2145 * we don't want an extra ';' after the "return" because that will cause
2146 * some compilers to complain about unreachable statements.
2147 */
2148#ifndef yyterminate
2149#define yyterminate() return YY_NULL
2150#endif
2151
2152/* Number of entries by which start-condition stack grows. */
2153#ifndef YY_START_STACK_INCR
2154#define YY_START_STACK_INCR 25
2155#endif
2156
2157/* Report a fatal error. */
2158#ifndef YY_FATAL_ERROR
2159#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2160#endif
2161
2162/* end tables serialization structures and prototypes */
2163
2164/* Default declaration of generated scanner - a define so the user can
2165 * easily add parameters.
2166 */
2167#ifndef YY_DECL
2168#define YY_DECL_IS_OURS 1
2169
2170extern int zconflex (void);
2171
2172#define YY_DECL int zconflex (void)
2173#endif /* !YY_DECL */
2174
2175/* Code executed at the beginning of each rule, after zconftext and zconfleng
2176 * have been set up.
2177 */
2178#ifndef YY_USER_ACTION
2179#define YY_USER_ACTION
2180#endif
2181
2182/* Code executed at the end of each rule. */
2183#ifndef YY_BREAK
2184#define YY_BREAK break;
2185#endif
2186
2187#define YY_RULE_SETUP \
2188    YY_USER_ACTION
2189
2190/** The main scanner function which does all the work.
2191 */
2192YY_DECL
2193{
2194    register yy_state_type yy_current_state;
2195    register char *yy_cp, *yy_bp;
2196    register int yy_act;
2197
2198    int str = 0;
2199    int ts, i;
2200
2201    if ( (yy_init) )
2202        {
2203        (yy_init) = 0;
2204
2205#ifdef YY_USER_INIT
2206        YY_USER_INIT;
2207#endif
2208
2209        if ( ! (yy_start) )
2210            (yy_start) = 1; /* first start state */
2211
2212        if ( ! zconfin )
2213            zconfin = stdin;
2214
2215        if ( ! zconfout )
2216            zconfout = stdout;
2217
2218        if ( ! YY_CURRENT_BUFFER ) {
2219            zconfensure_buffer_stack ();
2220            YY_CURRENT_BUFFER_LVALUE =
2221                zconf_create_buffer(zconfin,YY_BUF_SIZE );
2222        }
2223
2224        zconf_load_buffer_state( );
2225        }
2226
2227    while ( 1 )     /* loops until end-of-file is reached */
2228        {
2229        yy_cp = (yy_c_buf_p);
2230
2231        /* Support of zconftext. */
2232        *yy_cp = (yy_hold_char);
2233
2234        /* yy_bp points to the position in yy_ch_buf of the start of
2235         * the current run.
2236         */
2237        yy_bp = yy_cp;
2238
2239        yy_current_state = (yy_start);
2240yy_match:
2241        while ( (yy_current_state = yy_nxt[yy_current_state][ yy_ec[YY_SC_TO_UI(*yy_cp)]  ]) > 0 )
2242            ++yy_cp;
2243
2244        yy_current_state = -yy_current_state;
2245
2246yy_find_action:
2247        yy_act = yy_accept[yy_current_state];
2248
2249        YY_DO_BEFORE_ACTION;
2250
2251do_action:  /* This label is used only to access EOF actions. */
2252
2253        switch ( yy_act )
2254    { /* beginning of action switch */
2255case 1:
2256/* rule 1 can match eol */
2257YY_RULE_SETUP
2258current_file->lineno++;
2259    YY_BREAK
2260case 2:
2261YY_RULE_SETUP
2262
2263    YY_BREAK
2264case 3:
2265/* rule 3 can match eol */
2266YY_RULE_SETUP
2267current_file->lineno++; return T_EOL;
2268    YY_BREAK
2269case 4:
2270YY_RULE_SETUP
2271{
2272    BEGIN(COMMAND);
2273}
2274    YY_BREAK
2275case 5:
2276YY_RULE_SETUP
2277{
2278    unput(zconftext[0]);
2279    BEGIN(COMMAND);
2280}
2281    YY_BREAK
2282
2283case 6:
2284YY_RULE_SETUP
2285BEGIN(PARAM); return T_MAINMENU;
2286    YY_BREAK
2287case 7:
2288YY_RULE_SETUP
2289BEGIN(PARAM); return T_MENU;
2290    YY_BREAK
2291case 8:
2292YY_RULE_SETUP
2293BEGIN(PARAM); return T_ENDMENU;
2294    YY_BREAK
2295case 9:
2296YY_RULE_SETUP
2297BEGIN(PARAM); return T_SOURCE;
2298    YY_BREAK
2299case 10:
2300YY_RULE_SETUP
2301BEGIN(PARAM); return T_CHOICE;
2302    YY_BREAK
2303case 11:
2304YY_RULE_SETUP
2305BEGIN(PARAM); return T_ENDCHOICE;
2306    YY_BREAK
2307case 12:
2308YY_RULE_SETUP
2309BEGIN(PARAM); return T_COMMENT;
2310    YY_BREAK
2311case 13:
2312YY_RULE_SETUP
2313BEGIN(PARAM); return T_CONFIG;
2314    YY_BREAK
2315case 14:
2316YY_RULE_SETUP
2317BEGIN(PARAM); return T_MENUCONFIG;
2318    YY_BREAK
2319case 15:
2320YY_RULE_SETUP
2321BEGIN(PARAM); return T_HELP;
2322    YY_BREAK
2323case 16:
2324YY_RULE_SETUP
2325BEGIN(PARAM); return T_IF;
2326    YY_BREAK
2327case 17:
2328YY_RULE_SETUP
2329BEGIN(PARAM); return T_ENDIF;
2330    YY_BREAK
2331case 18:
2332YY_RULE_SETUP
2333BEGIN(PARAM); return T_DEPENDS;
2334    YY_BREAK
2335case 19:
2336YY_RULE_SETUP
2337BEGIN(PARAM); return T_REQUIRES;
2338    YY_BREAK
2339case 20:
2340YY_RULE_SETUP
2341BEGIN(PARAM); return T_OPTIONAL;
2342    YY_BREAK
2343case 21:
2344YY_RULE_SETUP
2345BEGIN(PARAM); return T_DEFAULT;
2346    YY_BREAK
2347case 22:
2348YY_RULE_SETUP
2349BEGIN(PARAM); return T_PROMPT;
2350    YY_BREAK
2351case 23:
2352YY_RULE_SETUP
2353BEGIN(PARAM); return T_TRISTATE;
2354    YY_BREAK
2355case 24:
2356YY_RULE_SETUP
2357BEGIN(PARAM); return T_DEF_TRISTATE;
2358    YY_BREAK
2359case 25:
2360YY_RULE_SETUP
2361BEGIN(PARAM); return T_BOOLEAN;
2362    YY_BREAK
2363case 26:
2364YY_RULE_SETUP
2365BEGIN(PARAM); return T_BOOLEAN;
2366    YY_BREAK
2367case 27:
2368YY_RULE_SETUP
2369BEGIN(PARAM); return T_DEF_BOOLEAN;
2370    YY_BREAK
2371case 28:
2372YY_RULE_SETUP
2373BEGIN(PARAM); return T_DEF_BOOLEAN;
2374    YY_BREAK
2375case 29:
2376YY_RULE_SETUP
2377BEGIN(PARAM); return T_INT;
2378    YY_BREAK
2379case 30:
2380YY_RULE_SETUP
2381BEGIN(PARAM); return T_HEX;
2382    YY_BREAK
2383case 31:
2384YY_RULE_SETUP
2385BEGIN(PARAM); return T_STRING;
2386    YY_BREAK
2387case 32:
2388YY_RULE_SETUP
2389BEGIN(PARAM); return T_SELECT;
2390    YY_BREAK
2391case 33:
2392YY_RULE_SETUP
2393BEGIN(PARAM); return T_SELECT;
2394    YY_BREAK
2395case 34:
2396YY_RULE_SETUP
2397BEGIN(PARAM); return T_RANGE;
2398    YY_BREAK
2399case 35:
2400YY_RULE_SETUP
2401{
2402        alloc_string(zconftext, zconfleng);
2403        zconflval.string = text;
2404        return T_WORD;
2405    }
2406    YY_BREAK
2407case 36:
2408YY_RULE_SETUP
2409
2410    YY_BREAK
2411case 37:
2412/* rule 37 can match eol */
2413YY_RULE_SETUP
2414current_file->lineno++; BEGIN(INITIAL);
2415    YY_BREAK
2416
2417case 38:
2418YY_RULE_SETUP
2419return T_AND;
2420    YY_BREAK
2421case 39:
2422YY_RULE_SETUP
2423return T_OR;
2424    YY_BREAK
2425case 40:
2426YY_RULE_SETUP
2427return T_OPEN_PAREN;
2428    YY_BREAK
2429case 41:
2430YY_RULE_SETUP
2431return T_CLOSE_PAREN;
2432    YY_BREAK
2433case 42:
2434YY_RULE_SETUP
2435return T_NOT;
2436    YY_BREAK
2437case 43:
2438YY_RULE_SETUP
2439return T_EQUAL;
2440    YY_BREAK
2441case 44:
2442YY_RULE_SETUP
2443return T_UNEQUAL;
2444    YY_BREAK
2445case 45:
2446YY_RULE_SETUP
2447return T_IF;
2448    YY_BREAK
2449case 46:
2450YY_RULE_SETUP
2451return T_ON;
2452    YY_BREAK
2453case 47:
2454YY_RULE_SETUP
2455{
2456        str = zconftext[0];
2457        new_string();
2458        BEGIN(STRING);
2459    }
2460    YY_BREAK
2461case 48:
2462/* rule 48 can match eol */
2463YY_RULE_SETUP
2464BEGIN(INITIAL); current_file->lineno++; return T_EOL;
2465    YY_BREAK
2466case 49:
2467YY_RULE_SETUP
2468/* ignore */
2469    YY_BREAK
2470case 50:
2471YY_RULE_SETUP
2472{
2473        alloc_string(zconftext, zconfleng);
2474        zconflval.string = text;
2475        return T_WORD;
2476    }
2477    YY_BREAK
2478case 51:
2479YY_RULE_SETUP
2480/* comment */
2481    YY_BREAK
2482case 52:
2483/* rule 52 can match eol */
2484YY_RULE_SETUP
2485current_file->lineno++;
2486    YY_BREAK
2487case 53:
2488YY_RULE_SETUP
2489
2490    YY_BREAK
2491case YY_STATE_EOF(PARAM):
2492{
2493        BEGIN(INITIAL);
2494    }
2495    YY_BREAK
2496
2497case 54:
2498/* rule 54 can match eol */
2499*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */
2500(yy_c_buf_p) = yy_cp -= 1;
2501YY_DO_BEFORE_ACTION; /* set up zconftext again */
2502YY_RULE_SETUP
2503{
2504        append_string(zconftext, zconfleng);
2505        zconflval.string = text;
2506        return T_WORD_QUOTE;
2507    }
2508    YY_BREAK
2509case 55:
2510YY_RULE_SETUP
2511{
2512        append_string(zconftext, zconfleng);
2513    }
2514    YY_BREAK
2515case 56:
2516/* rule 56 can match eol */
2517*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */
2518(yy_c_buf_p) = yy_cp -= 1;
2519YY_DO_BEFORE_ACTION; /* set up zconftext again */
2520YY_RULE_SETUP
2521{
2522        append_string(zconftext + 1, zconfleng - 1);
2523        zconflval.string = text;
2524        return T_WORD_QUOTE;
2525    }
2526    YY_BREAK
2527case 57:
2528YY_RULE_SETUP
2529{
2530        append_string(zconftext + 1, zconfleng - 1);
2531    }
2532    YY_BREAK
2533case 58:
2534YY_RULE_SETUP
2535{
2536        if (str == zconftext[0]) {
2537            BEGIN(PARAM);
2538            zconflval.string = text;
2539            return T_WORD_QUOTE;
2540        } else
2541            append_string(zconftext, 1);
2542    }
2543    YY_BREAK
2544case 59:
2545/* rule 59 can match eol */
2546YY_RULE_SETUP
2547{
2548        printf("%s:%d:warning: multi-line strings not supported\n", zconf_curname(), zconf_lineno());
2549        current_file->lineno++;
2550        BEGIN(INITIAL);
2551        return T_EOL;
2552    }
2553    YY_BREAK
2554case YY_STATE_EOF(STRING):
2555{
2556        BEGIN(INITIAL);
2557    }
2558    YY_BREAK
2559
2560case 60:
2561YY_RULE_SETUP
2562{
2563        ts = 0;
2564        for (i = 0; i < zconfleng; i++) {
2565            if (zconftext[i] == '\t')
2566                ts = (ts & ~7) + 8;
2567            else
2568                ts++;
2569        }
2570        last_ts = ts;
2571        if (first_ts) {
2572            if (ts < first_ts) {
2573                zconf_endhelp();
2574                return T_HELPTEXT;
2575            }
2576            ts -= first_ts;
2577            while (ts > 8) {
2578                append_string("        ", 8);
2579                ts -= 8;
2580            }
2581            append_string("        ", ts);
2582        }
2583    }
2584    YY_BREAK
2585case 61:
2586/* rule 61 can match eol */
2587*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */
2588(yy_c_buf_p) = yy_cp -= 1;
2589YY_DO_BEFORE_ACTION; /* set up zconftext again */
2590YY_RULE_SETUP
2591{
2592        current_file->lineno++;
2593        zconf_endhelp();
2594        return T_HELPTEXT;
2595    }
2596    YY_BREAK
2597case 62:
2598/* rule 62 can match eol */
2599YY_RULE_SETUP
2600{
2601        current_file->lineno++;
2602        append_string("\n", 1);
2603    }
2604    YY_BREAK
2605case 63:
2606YY_RULE_SETUP
2607{
2608        append_string(zconftext, zconfleng);
2609        if (!first_ts)
2610            first_ts = last_ts;
2611    }
2612    YY_BREAK
2613case YY_STATE_EOF(HELP):
2614{
2615        zconf_endhelp();
2616        return T_HELPTEXT;
2617    }
2618    YY_BREAK
2619
2620case YY_STATE_EOF(INITIAL):
2621case YY_STATE_EOF(COMMAND):
2622{
2623    if (current_buf) {
2624        zconf_endfile();
2625        return T_EOF;
2626    }
2627    fclose(zconfin);
2628    yyterminate();
2629}
2630    YY_BREAK
2631case 64:
2632YY_RULE_SETUP
2633YY_FATAL_ERROR( "flex scanner jammed" );
2634    YY_BREAK
2635
2636    case YY_END_OF_BUFFER:
2637        {
2638        /* Amount of text matched not including the EOB char. */
2639        int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
2640
2641        /* Undo the effects of YY_DO_BEFORE_ACTION. */
2642        *yy_cp = (yy_hold_char);
2643        YY_RESTORE_YY_MORE_OFFSET
2644
2645        if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
2646            {
2647            /* We're scanning a new file or input source.  It's
2648             * possible that this happened because the user
2649             * just pointed zconfin at a new source and called
2650             * zconflex().  If so, then we have to assure
2651             * consistency between YY_CURRENT_BUFFER and our
2652             * globals.  Here is the right place to do so, because
2653             * this is the first action (other than possibly a
2654             * back-up) that will match for the new input source.
2655             */
2656            (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
2657            YY_CURRENT_BUFFER_LVALUE->yy_input_file = zconfin;
2658            YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
2659            }
2660
2661        /* Note that here we test for yy_c_buf_p "<=" to the position
2662         * of the first EOB in the buffer, since yy_c_buf_p will
2663         * already have been incremented past the NUL character
2664         * (since all states make transitions on EOB to the
2665         * end-of-buffer state).  Contrast this with the test
2666         * in input().
2667         */
2668        if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
2669            { /* This was really a NUL. */
2670            yy_state_type yy_next_state;
2671
2672            (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
2673
2674            yy_current_state = yy_get_previous_state(  );
2675
2676            /* Okay, we're now positioned to make the NUL
2677             * transition.  We couldn't have
2678             * yy_get_previous_state() go ahead and do it
2679             * for us because it doesn't know how to deal
2680             * with the possibility of jamming (and we don't
2681             * want to build jamming into it because then it
2682             * will run more slowly).
2683             */
2684
2685            yy_next_state = yy_try_NUL_trans( yy_current_state );
2686
2687            yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2688
2689            if ( yy_next_state )
2690                {
2691                /* Consume the NUL. */
2692                yy_cp = ++(yy_c_buf_p);
2693                yy_current_state = yy_next_state;
2694                goto yy_match;
2695                }
2696
2697            else
2698                {
2699                yy_cp = (yy_c_buf_p);
2700                goto yy_find_action;
2701                }
2702            }
2703
2704        else switch ( yy_get_next_buffer(  ) )
2705            {
2706            case EOB_ACT_END_OF_FILE:
2707                {
2708                (yy_did_buffer_switch_on_eof) = 0;
2709
2710                if ( zconfwrap( ) )
2711                    {
2712                    /* Note: because we've taken care in
2713                     * yy_get_next_buffer() to have set up
2714                     * zconftext, we can now set up
2715                     * yy_c_buf_p so that if some total
2716                     * hoser (like flex itself) wants to
2717                     * call the scanner after we return the
2718                     * YY_NULL, it'll still work - another
2719                     * YY_NULL will get returned.
2720                     */
2721                    (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
2722
2723                    yy_act = YY_STATE_EOF(YY_START);
2724                    goto do_action;
2725                    }
2726
2727                else
2728                    {
2729                    if ( ! (yy_did_buffer_switch_on_eof) )
2730                        YY_NEW_FILE;
2731                    }
2732                break;
2733                }
2734
2735            case EOB_ACT_CONTINUE_SCAN:
2736                (yy_c_buf_p) =
2737                    (yytext_ptr) + yy_amount_of_matched_text;
2738
2739                yy_current_state = yy_get_previous_state(  );
2740
2741                yy_cp = (yy_c_buf_p);
2742                yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2743                goto yy_match;
2744
2745            case EOB_ACT_LAST_MATCH:
2746                (yy_c_buf_p) =
2747                &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
2748
2749                yy_current_state = yy_get_previous_state(  );
2750
2751                yy_cp = (yy_c_buf_p);
2752                yy_bp = (yytext_ptr) + YY_MORE_ADJ;
2753                goto yy_find_action;
2754            }
2755        break;
2756        }
2757
2758    default:
2759        YY_FATAL_ERROR(
2760            "fatal flex scanner internal error--no action found" );
2761    } /* end of action switch */
2762        } /* end of scanning one token */
2763} /* end of zconflex */
2764
2765/* yy_get_next_buffer - try to read in a new buffer
2766 *
2767 * Returns a code representing an action:
2768 *  EOB_ACT_LAST_MATCH -
2769 *  EOB_ACT_CONTINUE_SCAN - continue scanning from current position
2770 *  EOB_ACT_END_OF_FILE - end of file
2771 */
2772static int yy_get_next_buffer (void)
2773{
2774    register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
2775    register char *source = (yytext_ptr);
2776    register int number_to_move, i;
2777    int ret_val;
2778
2779    if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
2780        YY_FATAL_ERROR(
2781        "fatal flex scanner internal error--end of buffer missed" );
2782
2783    if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
2784        { /* Don't try to fill the buffer, so this is an EOF. */
2785        if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
2786            {
2787            /* We matched a single character, the EOB, so
2788             * treat this as a final EOF.
2789             */
2790            return EOB_ACT_END_OF_FILE;
2791            }
2792
2793        else
2794            {
2795            /* We matched some text prior to the EOB, first
2796             * process it.
2797             */
2798            return EOB_ACT_LAST_MATCH;
2799            }
2800        }
2801
2802    /* Try to read more data. */
2803
2804    /* First move last chars to start of buffer. */
2805    number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
2806
2807    for ( i = 0; i < number_to_move; ++i )
2808        *(dest++) = *(source++);
2809
2810    if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
2811        /* don't do the read, it's not guaranteed to return an EOF,
2812         * just force an EOF
2813         */
2814        YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
2815
2816    else
2817        {
2818            size_t num_to_read =
2819            YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
2820
2821        while ( num_to_read <= 0 )
2822            { /* Not enough room in the buffer - grow it. */
2823
2824            /* just a shorter name for the current buffer */
2825            YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
2826
2827            int yy_c_buf_p_offset =
2828                (int) ((yy_c_buf_p) - b->yy_ch_buf);
2829
2830            if ( b->yy_is_our_buffer )
2831                {
2832                int new_size = b->yy_buf_size * 2;
2833
2834                if ( new_size <= 0 )
2835                    b->yy_buf_size += b->yy_buf_size / 8;
2836                else
2837                    b->yy_buf_size *= 2;
2838
2839                b->yy_ch_buf = (char *)
2840                    /* Include room in for 2 EOB chars. */
2841                    zconfrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2  );
2842                }
2843            else
2844                /* Can't grow it, we don't own it. */
2845                b->yy_ch_buf = 0;
2846
2847            if ( ! b->yy_ch_buf )
2848                YY_FATAL_ERROR(
2849                "fatal error - scanner input buffer overflow" );
2850
2851            (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
2852
2853            num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
2854                        number_to_move - 1;
2855
2856            }
2857
2858        if ( num_to_read > YY_READ_BUF_SIZE )
2859            num_to_read = YY_READ_BUF_SIZE;
2860
2861        /* Read in more data. */
2862        YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
2863            (yy_n_chars), num_to_read );
2864
2865        YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
2866        }
2867
2868    if ( (yy_n_chars) == 0 )
2869        {
2870        if ( number_to_move == YY_MORE_ADJ )
2871            {
2872            ret_val = EOB_ACT_END_OF_FILE;
2873            zconfrestart(zconfin  );
2874            }
2875
2876        else
2877            {
2878            ret_val = EOB_ACT_LAST_MATCH;
2879            YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
2880                YY_BUFFER_EOF_PENDING;
2881            }
2882        }
2883
2884    else
2885        ret_val = EOB_ACT_CONTINUE_SCAN;
2886
2887    (yy_n_chars) += number_to_move;
2888    YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
2889    YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
2890
2891    (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
2892
2893    return ret_val;
2894}
2895
2896/* yy_get_previous_state - get the state just before the EOB char was reached */
2897
2898    static yy_state_type yy_get_previous_state (void)
2899{
2900    register yy_state_type yy_current_state;
2901    register char *yy_cp;
2902
2903    yy_current_state = (yy_start);
2904
2905    for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
2906        {
2907        yy_current_state = yy_nxt[yy_current_state][(*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1)];
2908        }
2909
2910    return yy_current_state;
2911}
2912
2913/* yy_try_NUL_trans - try to make a transition on the NUL character
2914 *
2915 * synopsis
2916 *  next_state = yy_try_NUL_trans( current_state );
2917 */
2918    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state )
2919{
2920    register int yy_is_jam;
2921
2922    yy_current_state = yy_nxt[yy_current_state][1];
2923    yy_is_jam = (yy_current_state <= 0);
2924
2925    return yy_is_jam ? 0 : yy_current_state;
2926}
2927
2928    static void yyunput (int c, register char * yy_bp )
2929{
2930    register char *yy_cp;
2931
2932    yy_cp = (yy_c_buf_p);
2933
2934    /* undo effects of setting up zconftext */
2935    *yy_cp = (yy_hold_char);
2936
2937    if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
2938        { /* need to shift things up to make room */
2939        /* +2 for EOB chars. */
2940        register int number_to_move = (yy_n_chars) + 2;
2941        register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
2942                    YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
2943        register char *source =
2944                &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
2945
2946        while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
2947            *--dest = *--source;
2948
2949        yy_cp += (int) (dest - source);
2950        yy_bp += (int) (dest - source);
2951        YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
2952            (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
2953
2954        if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
2955            YY_FATAL_ERROR( "flex scanner push-back overflow" );
2956        }
2957
2958    *--yy_cp = (char) c;
2959
2960    (yytext_ptr) = yy_bp;
2961    (yy_hold_char) = *yy_cp;
2962    (yy_c_buf_p) = yy_cp;
2963}
2964
2965#ifndef YY_NO_INPUT
2966#ifdef __cplusplus
2967    static int yyinput (void)
2968#else
2969    static int input  (void)
2970#endif
2971
2972{
2973    int c;
2974
2975    *(yy_c_buf_p) = (yy_hold_char);
2976
2977    if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
2978        {
2979        /* yy_c_buf_p now points to the character we want to return.
2980         * If this occurs *before* the EOB characters, then it's a
2981         * valid NUL; if not, then we've hit the end of the buffer.
2982         */
2983        if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
2984            /* This was really a NUL. */
2985            *(yy_c_buf_p) = '\0';
2986
2987        else
2988            { /* need more input */
2989            int offset = (yy_c_buf_p) - (yytext_ptr);
2990            ++(yy_c_buf_p);
2991
2992            switch ( yy_get_next_buffer(  ) )
2993                {
2994                case EOB_ACT_LAST_MATCH:
2995                    /* This happens because yy_g_n_b()
2996                     * sees that we've accumulated a
2997                     * token and flags that we need to
2998                     * try matching the token before
2999                     * proceeding.  But for input(),
3000                     * there's no matching to consider.
3001                     * So convert the EOB_ACT_LAST_MATCH
3002                     * to EOB_ACT_END_OF_FILE.
3003                     */
3004
3005                    /* Reset buffer status. */
3006                    zconfrestart(zconfin );
3007
3008                    /*FALLTHROUGH*/
3009
3010                case EOB_ACT_END_OF_FILE:
3011                    {
3012                    if ( zconfwrap( ) )
3013                        return EOF;
3014
3015                    if ( ! (yy_did_buffer_switch_on_eof) )
3016                        YY_NEW_FILE;
3017#ifdef __cplusplus
3018                    return yyinput();
3019#else
3020                    return input();
3021#endif
3022                    }
3023
3024                case EOB_ACT_CONTINUE_SCAN:
3025                    (yy_c_buf_p) = (yytext_ptr) + offset;
3026                    break;
3027                }
3028            }
3029        }
3030
3031    c = *(unsigned char *) (yy_c_buf_p);    /* cast for 8-bit char's */
3032    *(yy_c_buf_p) = '\0';   /* preserve zconftext */
3033    (yy_hold_char) = *++(yy_c_buf_p);
3034
3035    return c;
3036}
3037#endif  /* ifndef YY_NO_INPUT */
3038
3039/** Immediately switch to a different input stream.
3040 * @param input_file A readable stream.
3041 *
3042 * @note This function does not reset the start condition to @c INITIAL .
3043 */
3044    void zconfrestart  (FILE * input_file )
3045{
3046
3047    if ( ! YY_CURRENT_BUFFER ){
3048        zconfensure_buffer_stack ();
3049        YY_CURRENT_BUFFER_LVALUE =
3050            zconf_create_buffer(zconfin,YY_BUF_SIZE );
3051    }
3052
3053    zconf_init_buffer(YY_CURRENT_BUFFER,input_file );
3054    zconf_load_buffer_state( );
3055}
3056
3057/** Switch to a different input buffer.
3058 * @param new_buffer The new input buffer.
3059 *
3060 */
3061    void zconf_switch_to_buffer  (YY_BUFFER_STATE  new_buffer )
3062{
3063
3064    /* TODO. We should be able to replace this entire function body
3065     * with
3066     *      zconfpop_buffer_state();
3067     *      zconfpush_buffer_state(new_buffer);
3068     */
3069    zconfensure_buffer_stack ();
3070    if ( YY_CURRENT_BUFFER == new_buffer )
3071        return;
3072
3073    if ( YY_CURRENT_BUFFER )
3074        {
3075        /* Flush out information for old buffer. */
3076        *(yy_c_buf_p) = (yy_hold_char);
3077        YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3078        YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3079        }
3080
3081    YY_CURRENT_BUFFER_LVALUE = new_buffer;
3082    zconf_load_buffer_state( );
3083
3084    /* We don't actually know whether we did this switch during
3085     * EOF (zconfwrap()) processing, but the only time this flag
3086     * is looked at is after zconfwrap() is called, so it's safe
3087     * to go ahead and always set it.
3088     */
3089    (yy_did_buffer_switch_on_eof) = 1;
3090}
3091
3092static void zconf_load_buffer_state  (void)
3093{
3094    (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3095    (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
3096    zconfin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
3097    (yy_hold_char) = *(yy_c_buf_p);
3098}
3099
3100/** Allocate and initialize an input buffer state.
3101 * @param file A readable stream.
3102 * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
3103 *
3104 * @return the allocated buffer state.
3105 */
3106    YY_BUFFER_STATE zconf_create_buffer  (FILE * file, int  size )
3107{
3108    YY_BUFFER_STATE b;
3109
3110    b = (YY_BUFFER_STATE) zconfalloc(sizeof( struct yy_buffer_state )  );
3111    if ( ! b )
3112        YY_FATAL_ERROR( "out of dynamic memory in zconf_create_buffer()" );
3113
3114    b->yy_buf_size = size;
3115
3116    /* yy_ch_buf has to be 2 characters longer than the size given because
3117     * we need to put in 2 end-of-buffer characters.
3118     */
3119    b->yy_ch_buf = (char *) zconfalloc(b->yy_buf_size + 2  );
3120    if ( ! b->yy_ch_buf )
3121        YY_FATAL_ERROR( "out of dynamic memory in zconf_create_buffer()" );
3122
3123    b->yy_is_our_buffer = 1;
3124
3125    zconf_init_buffer(b,file );
3126
3127    return b;
3128}
3129
3130/** Destroy the buffer.
3131 * @param b a buffer created with zconf_create_buffer()
3132 *
3133 */
3134    void zconf_delete_buffer (YY_BUFFER_STATE  b )
3135{
3136
3137    if ( ! b )
3138        return;
3139
3140    if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
3141        YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
3142
3143    if ( b->yy_is_our_buffer )
3144        zconffree((void *) b->yy_ch_buf  );
3145
3146    zconffree((void *) b  );
3147}
3148
3149/* Initializes or reinitializes a buffer.
3150 * This function is sometimes called more than once on the same buffer,
3151 * such as during a zconfrestart() or at EOF.
3152 */
3153    static void zconf_init_buffer  (YY_BUFFER_STATE  b, FILE * file )
3154
3155{
3156    int oerrno = errno;
3157
3158    zconf_flush_buffer(b );
3159
3160    b->yy_input_file = file;
3161    b->yy_fill_buffer = 1;
3162
3163    /* If b is the current buffer, then zconf_init_buffer was _probably_
3164     * called from zconfrestart() or through yy_get_next_buffer.
3165     * In that case, we don't want to reset the lineno or column.
3166     */
3167    if (b != YY_CURRENT_BUFFER){
3168        b->yy_bs_lineno = 1;
3169        b->yy_bs_column = 0;
3170    }
3171
3172        b->yy_is_interactive = 0;
3173
3174    errno = oerrno;
3175}
3176
3177/** Discard all buffered characters. On the next scan, YY_INPUT will be called.
3178 * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
3179 *
3180 */
3181    void zconf_flush_buffer (YY_BUFFER_STATE  b )
3182{
3183    if ( ! b )
3184        return;
3185
3186    b->yy_n_chars = 0;
3187
3188    /* We always need two end-of-buffer characters.  The first causes
3189     * a transition to the end-of-buffer state.  The second causes
3190     * a jam in that state.
3191     */
3192    b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
3193    b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
3194
3195    b->yy_buf_pos = &b->yy_ch_buf[0];
3196
3197    b->yy_at_bol = 1;
3198    b->yy_buffer_status = YY_BUFFER_NEW;
3199
3200    if ( b == YY_CURRENT_BUFFER )
3201        zconf_load_buffer_state( );
3202}
3203
3204/** Pushes the new state onto the stack. The new state becomes
3205 *  the current state. This function will allocate the stack
3206 *  if necessary.
3207 *  @param new_buffer The new state.
3208 *
3209 */
3210void zconfpush_buffer_state (YY_BUFFER_STATE new_buffer )
3211{
3212    if (new_buffer == NULL)
3213        return;
3214
3215    zconfensure_buffer_stack();
3216
3217    /* This block is copied from zconf_switch_to_buffer. */
3218    if ( YY_CURRENT_BUFFER )
3219        {
3220        /* Flush out information for old buffer. */
3221        *(yy_c_buf_p) = (yy_hold_char);
3222        YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3223        YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3224        }
3225
3226    /* Only push if top exists. Otherwise, replace top. */
3227    if (YY_CURRENT_BUFFER)
3228        (yy_buffer_stack_top)++;
3229    YY_CURRENT_BUFFER_LVALUE = new_buffer;
3230
3231    /* copied from zconf_switch_to_buffer. */
3232    zconf_load_buffer_state( );
3233    (yy_did_buffer_switch_on_eof) = 1;
3234}
3235
3236/** Removes and deletes the top of the stack, if present.
3237 *  The next element becomes the new top.
3238 *
3239 */
3240void zconfpop_buffer_state (void)
3241{
3242    if (!YY_CURRENT_BUFFER)
3243        return;
3244
3245    zconf_delete_buffer(YY_CURRENT_BUFFER );
3246    YY_CURRENT_BUFFER_LVALUE = NULL;
3247    if ((yy_buffer_stack_top) > 0)
3248        --(yy_buffer_stack_top);
3249
3250    if (YY_CURRENT_BUFFER) {
3251        zconf_load_buffer_state( );
3252        (yy_did_buffer_switch_on_eof) = 1;
3253    }
3254}
3255
3256/* Allocates the stack if it does not exist.
3257 *  Guarantees space for at least one push.
3258 */
3259static void zconfensure_buffer_stack (void)
3260{
3261    int num_to_alloc;
3262
3263    if (!(yy_buffer_stack)) {
3264
3265        /* First allocation is just for 2 elements, since we don't know if this
3266         * scanner will even need a stack. We use 2 instead of 1 to avoid an
3267         * immediate realloc on the next call.
3268         */
3269        num_to_alloc = 1;
3270        (yy_buffer_stack) = (struct yy_buffer_state**)zconfalloc
3271                                (num_to_alloc * sizeof(struct yy_buffer_state*)
3272                                );
3273
3274        memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
3275
3276        (yy_buffer_stack_max) = num_to_alloc;
3277        (yy_buffer_stack_top) = 0;
3278        return;
3279    }
3280
3281    if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
3282
3283        /* Increase the buffer to prepare for a possible push. */
3284        int grow_size = 8 /* arbitrary grow size */;
3285
3286        num_to_alloc = (yy_buffer_stack_max) + grow_size;
3287        (yy_buffer_stack) = (struct yy_buffer_state**)zconfrealloc
3288                                ((yy_buffer_stack),
3289                                num_to_alloc * sizeof(struct yy_buffer_state*)
3290                                );
3291
3292        /* zero only the new slots.*/
3293        memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
3294        (yy_buffer_stack_max) = num_to_alloc;
3295    }
3296}
3297
3298/** Setup the input buffer state to scan directly from a user-specified character buffer.
3299 * @param base the character buffer
3300 * @param size the size in bytes of the character buffer
3301 *
3302 * @return the newly allocated buffer state object.
3303 */
3304YY_BUFFER_STATE zconf_scan_buffer  (char * base, yy_size_t  size )
3305{
3306    YY_BUFFER_STATE b;
3307
3308    if ( size < 2 ||
3309         base[size-2] != YY_END_OF_BUFFER_CHAR ||
3310         base[size-1] != YY_END_OF_BUFFER_CHAR )
3311        /* They forgot to leave room for the EOB's. */
3312        return 0;
3313
3314    b = (YY_BUFFER_STATE) zconfalloc(sizeof( struct yy_buffer_state )  );
3315    if ( ! b )
3316        YY_FATAL_ERROR( "out of dynamic memory in zconf_scan_buffer()" );
3317
3318    b->yy_buf_size = size - 2;  /* "- 2" to take care of EOB's */
3319    b->yy_buf_pos = b->yy_ch_buf = base;
3320    b->yy_is_our_buffer = 0;
3321    b->yy_input_file = 0;
3322    b->yy_n_chars = b->yy_buf_size;
3323    b->yy_is_interactive = 0;
3324    b->yy_at_bol = 1;
3325    b->yy_fill_buffer = 0;
3326    b->yy_buffer_status = YY_BUFFER_NEW;
3327
3328    zconf_switch_to_buffer(b  );
3329
3330    return b;
3331}
3332
3333/** Setup the input buffer state to scan a string. The next call to zconflex() will
3334 * scan from a @e copy of @a str.
3335 * @param str a NUL-terminated string to scan
3336 *
3337 * @return the newly allocated buffer state object.
3338 * @note If you want to scan bytes that may contain NUL values, then use
3339 *       zconf_scan_bytes() instead.
3340 */
3341YY_BUFFER_STATE zconf_scan_string (yyconst char * str )
3342{
3343
3344    return zconf_scan_bytes(str,strlen(str) );
3345}
3346
3347/** Setup the input buffer state to scan the given bytes. The next call to zconflex() will
3348 * scan from a @e copy of @a bytes.
3349 * @param bytes the byte buffer to scan
3350 * @param len the number of bytes in the buffer pointed to by @a bytes.
3351 *
3352 * @return the newly allocated buffer state object.
3353 */
3354YY_BUFFER_STATE zconf_scan_bytes  (yyconst char * bytes, int  len )
3355{
3356    YY_BUFFER_STATE b;
3357    char *buf;
3358    yy_size_t n;
3359    int i;
3360
3361    /* Get memory for full buffer, including space for trailing EOB's. */
3362    n = len + 2;
3363    buf = (char *) zconfalloc(n  );
3364    if ( ! buf )
3365        YY_FATAL_ERROR( "out of dynamic memory in zconf_scan_bytes()" );
3366
3367    for ( i = 0; i < len; ++i )
3368        buf[i] = bytes[i];
3369
3370    buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
3371
3372    b = zconf_scan_buffer(buf,n );
3373    if ( ! b )
3374        YY_FATAL_ERROR( "bad buffer in zconf_scan_bytes()" );
3375
3376    /* It's okay to grow etc. this buffer, and we should throw it
3377     * away when we're done.
3378     */
3379    b->yy_is_our_buffer = 1;
3380
3381    return b;
3382}
3383
3384#ifndef YY_EXIT_FAILURE
3385#define YY_EXIT_FAILURE 2
3386#endif
3387
3388static void yy_fatal_error (yyconst char* msg )
3389{
3390    (void) fprintf( stderr, "%s\n", msg );
3391    exit( YY_EXIT_FAILURE );
3392}
3393
3394/* Redefine yyless() so it works in section 3 code. */
3395
3396#undef yyless
3397#define yyless(n) \
3398    do \
3399        { \
3400        /* Undo effects of setting up zconftext. */ \
3401        int yyless_macro_arg = (n); \
3402        YY_LESS_LINENO(yyless_macro_arg);\
3403        zconftext[zconfleng] = (yy_hold_char); \
3404        (yy_c_buf_p) = zconftext + yyless_macro_arg; \
3405        (yy_hold_char) = *(yy_c_buf_p); \
3406        *(yy_c_buf_p) = '\0'; \
3407        zconfleng = yyless_macro_arg; \
3408        } \
3409    while ( 0 )
3410
3411/* Accessor  methods (get/set functions) to struct members. */
3412
3413/** Get the current line number.
3414 *
3415 */
3416int zconfget_lineno  (void)
3417{
3418
3419    return zconflineno;
3420}
3421
3422/** Get the input stream.
3423 *
3424 */
3425FILE *zconfget_in  (void)
3426{
3427        return zconfin;
3428}
3429
3430/** Get the output stream.
3431 *
3432 */
3433FILE *zconfget_out  (void)
3434{
3435        return zconfout;
3436}
3437
3438/** Get the length of the current token.
3439 *
3440 */
3441int zconfget_leng  (void)
3442{
3443        return zconfleng;
3444}
3445
3446/** Get the current token.
3447 *
3448 */
3449
3450char *zconfget_text  (void)
3451{
3452        return zconftext;
3453}
3454
3455/** Set the current line number.
3456 * @param line_number
3457 *
3458 */
3459void zconfset_lineno (int  line_number )
3460{
3461
3462    zconflineno = line_number;
3463}
3464
3465/** Set the input stream. This does not discard the current
3466 * input buffer.
3467 * @param in_str A readable stream.
3468 *
3469 * @see zconf_switch_to_buffer
3470 */
3471void zconfset_in (FILE *  in_str )
3472{
3473        zconfin = in_str ;
3474}
3475
3476void zconfset_out (FILE *  out_str )
3477{
3478        zconfout = out_str ;
3479}
3480
3481int zconfget_debug  (void)
3482{
3483        return zconf_flex_debug;
3484}
3485
3486void zconfset_debug (int  bdebug )
3487{
3488        zconf_flex_debug = bdebug ;
3489}
3490
3491/* zconflex_destroy is for both reentrant and non-reentrant scanners. */
3492int zconflex_destroy  (void)
3493{
3494
3495    /* Pop the buffer stack, destroying each element. */
3496    while(YY_CURRENT_BUFFER){
3497        zconf_delete_buffer(YY_CURRENT_BUFFER  );
3498        YY_CURRENT_BUFFER_LVALUE = NULL;
3499        zconfpop_buffer_state();
3500    }
3501
3502    /* Destroy the stack itself. */
3503    zconffree((yy_buffer_stack) );
3504    (yy_buffer_stack) = NULL;
3505
3506    return 0;
3507}
3508
3509/*
3510 * Internal utility routines.
3511 */
3512
3513#ifndef yytext_ptr
3514static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
3515{
3516    register int i;
3517    for ( i = 0; i < n; ++i )
3518        s1[i] = s2[i];
3519}
3520#endif
3521
3522#ifdef YY_NEED_STRLEN
3523static int yy_flex_strlen (yyconst char * s )
3524{
3525    register int n;
3526    for ( n = 0; s[n]; ++n )
3527        ;
3528
3529    return n;
3530}
3531#endif
3532
3533void *zconfalloc (yy_size_t  size )
3534{
3535    return (void *) malloc( size );
3536}
3537
3538void *zconfrealloc  (void * ptr, yy_size_t  size )
3539{
3540    /* The cast to (char *) in the following accommodates both
3541     * implementations that use char* generic pointers, and those
3542     * that use void* generic pointers.  It works with the latter
3543     * because both ANSI C and C++ allow castless assignment from
3544     * any pointer type to void*, and deal with argument conversions
3545     * as though doing an assignment.
3546     */
3547    return (void *) realloc( (char *) ptr, size );
3548}
3549
3550void zconffree (void * ptr )
3551{
3552    free( (char *) ptr );   /* see zconfrealloc() for (char *) cast */
3553}
3554
3555#define YYTABLES_NAME "yytables"
3556
3557#undef YY_NEW_FILE
3558#undef YY_FLUSH_BUFFER
3559#undef yy_set_bol
3560#undef yy_new_buffer
3561#undef yy_set_interactive
3562#undef yytext_ptr
3563#undef YY_DO_BEFORE_ACTION
3564
3565#ifdef YY_DECL_IS_OURS
3566#undef YY_DECL_IS_OURS
3567#undef YY_DECL
3568#endif
3569
3570void zconf_starthelp(void)
3571{
3572    new_string();
3573    last_ts = first_ts = 0;
3574    BEGIN(HELP);
3575}
3576
3577static void zconf_endhelp(void)
3578{
3579    zconflval.string = text;
3580    BEGIN(INITIAL);
3581}
3582
3583/*
3584 * Try to open specified file with following names:
3585 * ./name
3586 * $(srctree)/name
3587 * The latter is used when srctree is separate from objtree
3588 * when compiling the kernel.
3589 * Return NULL if file is not found.
3590 */
3591FILE *zconf_fopen(const char *name)
3592{
3593    char *env, fullname[PATH_MAX+1];
3594    FILE *f;
3595
3596    f = fopen(name, "r");
3597    if (!f && name[0] != '/') {
3598        env = getenv(SRCTREE);
3599        if (env) {
3600            sprintf(fullname, "%s/%s", env, name);
3601            f = fopen(fullname, "r");
3602        }
3603    }
3604    return f;
3605}
3606
3607void zconf_initscan(const char *name)
3608{
3609    zconfin = zconf_fopen(name);
3610    if (!zconfin) {
3611        printf("can't find file %s\n", name);
3612        exit(1);
3613    }
3614
3615    current_buf = malloc(sizeof(*current_buf));
3616    memset(current_buf, 0, sizeof(*current_buf));
3617
3618    current_file = file_lookup(name);
3619    current_file->lineno = 1;
3620    current_file->flags = FILE_BUSY;
3621}
3622
3623void zconf_nextfile(const char *name)
3624{
3625    struct file *file = file_lookup(name);
3626    struct buffer *buf = malloc(sizeof(*buf));
3627    memset(buf, 0, sizeof(*buf));
3628
3629    current_buf->state = YY_CURRENT_BUFFER;
3630    zconfin = zconf_fopen(name);
3631    if (!zconfin) {
3632        printf("%s:%d: can't open file \"%s\"\n", zconf_curname(), zconf_lineno(), name);
3633        exit(1);
3634    }
3635    zconf_switch_to_buffer(zconf_create_buffer(zconfin,YY_BUF_SIZE));
3636    buf->parent = current_buf;
3637    current_buf = buf;
3638
3639    if (file->flags & FILE_BUSY) {
3640        printf("recursive scan (%s)?\n", name);
3641        exit(1);
3642    }
3643    if (file->flags & FILE_SCANNED) {
3644        printf("file %s already scanned?\n", name);
3645        exit(1);
3646    }
3647    file->flags |= FILE_BUSY;
3648    file->lineno = 1;
3649    file->parent = current_file;
3650    current_file = file;
3651}
3652
3653static struct buffer *zconf_endfile(void)
3654{
3655    struct buffer *parent;
3656
3657    current_file->flags |= FILE_SCANNED;
3658    current_file->flags &= ~FILE_BUSY;
3659    current_file = current_file->parent;
3660
3661    parent = current_buf->parent;
3662    if (parent) {
3663        fclose(zconfin);
3664        zconf_delete_buffer(YY_CURRENT_BUFFER);
3665        zconf_switch_to_buffer(parent->state);
3666    }
3667    free(current_buf);
3668    current_buf = parent;
3669
3670    return parent;
3671}
3672
3673int zconf_lineno(void)
3674{
3675    if (current_buf)
3676        return current_file->lineno - 1;
3677    else
3678        return 0;
3679}
3680
3681char *zconf_curname(void)
3682{
3683    if (current_buf)
3684        return current_file->name;
3685    else
3686        return "<none>";
3687}
3688
Note: See TracBrowser for help on using the repository browser.