Annotation of embedaddon/ipsec-tools/src/racoon/cftoken.c, revision 1.1

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

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>