Home | History | Annotate | Download | only in util
      1 
      2 #line 3 "<stdout>"
      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 /* An opaque pointer. */
    122 #ifndef YY_TYPEDEF_YY_SCANNER_T
    123 #define YY_TYPEDEF_YY_SCANNER_T
    124 typedef void* yyscan_t;
    125 #endif
    126 
    127 /* For convenience, these vars (plus the bison vars far below)
    128    are macros in the reentrant scanner. */
    129 #define yyin yyg->yyin_r
    130 #define yyout yyg->yyout_r
    131 #define yyextra yyg->yyextra_r
    132 #define yyleng yyg->yyleng_r
    133 #define yytext yyg->yytext_r
    134 #define yylineno (YY_CURRENT_BUFFER_LVALUE->yy_bs_lineno)
    135 #define yycolumn (YY_CURRENT_BUFFER_LVALUE->yy_bs_column)
    136 #define yy_flex_debug yyg->yy_flex_debug_r
    137 
    138 /* Enter a start condition.  This macro really ought to take a parameter,
    139  * but we do it the disgusting crufty way forced on us by the ()-less
    140  * definition of BEGIN.
    141  */
    142 #define BEGIN yyg->yy_start = 1 + 2 *
    143 
    144 /* Translate the current start state into a value that can be later handed
    145  * to BEGIN to return to the state.  The YYSTATE alias is for lex
    146  * compatibility.
    147  */
    148 #define YY_START ((yyg->yy_start - 1) / 2)
    149 #define YYSTATE YY_START
    150 
    151 /* Action number for EOF rule of a given start state. */
    152 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
    153 
    154 /* Special action meaning "start processing a new file". */
    155 #define YY_NEW_FILE parse_events_restart(yyin ,yyscanner )
    156 
    157 #define YY_END_OF_BUFFER_CHAR 0
    158 
    159 /* Size of default input buffer. */
    160 #ifndef YY_BUF_SIZE
    161 #ifdef __ia64__
    162 /* On IA-64, the buffer size is 16k, not 8k.
    163  * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
    164  * Ditto for the __ia64__ case accordingly.
    165  */
    166 #define YY_BUF_SIZE 32768
    167 #else
    168 #define YY_BUF_SIZE 16384
    169 #endif /* __ia64__ */
    170 #endif
    171 
    172 /* The state buf must be large enough to hold one state per character in the main buffer.
    173  */
    174 #define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
    175 
    176 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
    177 #define YY_TYPEDEF_YY_BUFFER_STATE
    178 typedef struct yy_buffer_state *YY_BUFFER_STATE;
    179 #endif
    180 
    181 #define EOB_ACT_CONTINUE_SCAN 0
    182 #define EOB_ACT_END_OF_FILE 1
    183 #define EOB_ACT_LAST_MATCH 2
    184 
    185     #define YY_LESS_LINENO(n)
    186 
    187 /* Return all but the first "n" matched characters back to the input stream. */
    188 #define yyless(n) \
    189 	do \
    190 		{ \
    191 		/* Undo effects of setting up yytext. */ \
    192         int yyless_macro_arg = (n); \
    193         YY_LESS_LINENO(yyless_macro_arg);\
    194 		*yy_cp = yyg->yy_hold_char; \
    195 		YY_RESTORE_YY_MORE_OFFSET \
    196 		yyg->yy_c_buf_p = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
    197 		YY_DO_BEFORE_ACTION; /* set up yytext again */ \
    198 		} \
    199 	while ( 0 )
    200 
    201 #define unput(c) yyunput( c, yyg->yytext_ptr , yyscanner )
    202 
    203 #ifndef YY_TYPEDEF_YY_SIZE_T
    204 #define YY_TYPEDEF_YY_SIZE_T
    205 typedef size_t yy_size_t;
    206 #endif
    207 
    208 #ifndef YY_STRUCT_YY_BUFFER_STATE
    209 #define YY_STRUCT_YY_BUFFER_STATE
    210 struct yy_buffer_state
    211 	{
    212 	FILE *yy_input_file;
    213 
    214 	char *yy_ch_buf;		/* input buffer */
    215 	char *yy_buf_pos;		/* current position in input buffer */
    216 
    217 	/* Size of input buffer in bytes, not including room for EOB
    218 	 * characters.
    219 	 */
    220 	yy_size_t yy_buf_size;
    221 
    222 	/* Number of characters read into yy_ch_buf, not including EOB
    223 	 * characters.
    224 	 */
    225 	int yy_n_chars;
    226 
    227 	/* Whether we "own" the buffer - i.e., we know we created it,
    228 	 * and can realloc() it to grow it, and should free() it to
    229 	 * delete it.
    230 	 */
    231 	int yy_is_our_buffer;
    232 
    233 	/* Whether this is an "interactive" input source; if so, and
    234 	 * if we're using stdio for input, then we want to use getc()
    235 	 * instead of fread(), to make sure we stop fetching input after
    236 	 * each newline.
    237 	 */
    238 	int yy_is_interactive;
    239 
    240 	/* Whether we're considered to be at the beginning of a line.
    241 	 * If so, '^' rules will be active on the next match, otherwise
    242 	 * not.
    243 	 */
    244 	int yy_at_bol;
    245 
    246     int yy_bs_lineno; /**< The line count. */
    247     int yy_bs_column; /**< The column count. */
    248 
    249 	/* Whether to try to fill the input buffer when we reach the
    250 	 * end of it.
    251 	 */
    252 	int yy_fill_buffer;
    253 
    254 	int yy_buffer_status;
    255 
    256 #define YY_BUFFER_NEW 0
    257 #define YY_BUFFER_NORMAL 1
    258 	/* When an EOF's been seen but there's still some text to process
    259 	 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
    260 	 * shouldn't try reading from the input source any more.  We might
    261 	 * still have a bunch of tokens to match, though, because of
    262 	 * possible backing-up.
    263 	 *
    264 	 * When we actually see the EOF, we change the status to "new"
    265 	 * (via parse_events_restart()), so that the user can continue scanning by
    266 	 * just pointing yyin at a new input file.
    267 	 */
    268 #define YY_BUFFER_EOF_PENDING 2
    269 
    270 	};
    271 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
    272 
    273 /* We provide macros for accessing buffer states in case in the
    274  * future we want to put the buffer states in a more general
    275  * "scanner state".
    276  *
    277  * Returns the top of the stack, or NULL.
    278  */
    279 #define YY_CURRENT_BUFFER ( yyg->yy_buffer_stack \
    280                           ? yyg->yy_buffer_stack[yyg->yy_buffer_stack_top] \
    281                           : NULL)
    282 
    283 /* Same as previous macro, but useful when we know that the buffer stack is not
    284  * NULL or when we need an lvalue. For internal use only.
    285  */
    286 #define YY_CURRENT_BUFFER_LVALUE yyg->yy_buffer_stack[yyg->yy_buffer_stack_top]
    287 
    288 void parse_events_restart (FILE *input_file ,yyscan_t yyscanner );
    289 void parse_events__switch_to_buffer (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
    290 YY_BUFFER_STATE parse_events__create_buffer (FILE *file,int size ,yyscan_t yyscanner );
    291 void parse_events__delete_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
    292 void parse_events__flush_buffer (YY_BUFFER_STATE b ,yyscan_t yyscanner );
    293 void parse_events_push_buffer_state (YY_BUFFER_STATE new_buffer ,yyscan_t yyscanner );
    294 void parse_events_pop_buffer_state (yyscan_t yyscanner );
    295 
    296 static void parse_events_ensure_buffer_stack (yyscan_t yyscanner );
    297 static void parse_events__load_buffer_state (yyscan_t yyscanner );
    298 static void parse_events__init_buffer (YY_BUFFER_STATE b,FILE *file ,yyscan_t yyscanner );
    299 
    300 #define YY_FLUSH_BUFFER parse_events__flush_buffer(YY_CURRENT_BUFFER ,yyscanner)
    301 
    302 YY_BUFFER_STATE parse_events__scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner );
    303 YY_BUFFER_STATE parse_events__scan_string (yyconst char *yy_str ,yyscan_t yyscanner );
    304 YY_BUFFER_STATE parse_events__scan_bytes (yyconst char *bytes,int len ,yyscan_t yyscanner );
    305 
    306 void *parse_events_alloc (yy_size_t ,yyscan_t yyscanner );
    307 void *parse_events_realloc (void *,yy_size_t ,yyscan_t yyscanner );
    308 void parse_events_free (void * ,yyscan_t yyscanner );
    309 
    310 #define yy_new_buffer parse_events__create_buffer
    311 
    312 #define yy_set_interactive(is_interactive) \
    313 	{ \
    314 	if ( ! YY_CURRENT_BUFFER ){ \
    315         parse_events_ensure_buffer_stack (yyscanner); \
    316 		YY_CURRENT_BUFFER_LVALUE =    \
    317             parse_events__create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
    318 	} \
    319 	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
    320 	}
    321 
    322 #define yy_set_bol(at_bol) \
    323 	{ \
    324 	if ( ! YY_CURRENT_BUFFER ){\
    325         parse_events_ensure_buffer_stack (yyscanner); \
    326 		YY_CURRENT_BUFFER_LVALUE =    \
    327             parse_events__create_buffer(yyin,YY_BUF_SIZE ,yyscanner); \
    328 	} \
    329 	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
    330 	}
    331 
    332 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
    333 
    334 /* Begin user sect3 */
    335 
    336 typedef unsigned char YY_CHAR;
    337 
    338 typedef int yy_state_type;
    339 
    340 #define yytext_ptr yytext_r
    341 
    342 static yy_state_type yy_get_previous_state (yyscan_t yyscanner );
    343 static yy_state_type yy_try_NUL_trans (yy_state_type current_state  ,yyscan_t yyscanner);
    344 static int yy_get_next_buffer (yyscan_t yyscanner );
    345 static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner );
    346 
    347 /* Done after the current pattern has been matched and before the
    348  * corresponding action - sets up yytext.
    349  */
    350 #define YY_DO_BEFORE_ACTION \
    351 	yyg->yytext_ptr = yy_bp; \
    352 	yyleng = (size_t) (yy_cp - yy_bp); \
    353 	yyg->yy_hold_char = *yy_cp; \
    354 	*yy_cp = '\0'; \
    355 	yyg->yy_c_buf_p = yy_cp;
    356 
    357 #define YY_NUM_RULES 66
    358 #define YY_END_OF_BUFFER 67
    359 /* This struct is not used in this scanner,
    360    but its presence is necessary. */
    361 struct yy_trans_info
    362 	{
    363 	flex_int32_t yy_verify;
    364 	flex_int32_t yy_nxt;
    365 	};
    366 static yyconst flex_int16_t yy_accept[900] =
    367     {   0,
    368         0,    0,    0,    0,    0,    0,    0,    0,   67,   66,
    369        60,   52,   55,   54,   53,   49,   49,   56,   59,   51,
    370        51,   52,   52,   52,   52,   52,   52,   52,   52,   52,
    371        52,   52,   52,   52,   52,   51,   52,   52,   52,   52,
    372        57,   58,   65,   63,   63,   62,   61,   46,   44,   45,
    373        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    374        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    375        46,    3,    3,    4,    4,   52,   49,    0,   51,   52,
    376        52,   52,   27,   52,   52,   52,   52,   52,   52,   52,
    377        52,   52,   52,   52,   20,   52,    0,   52,   52,   52,
    378 
    379        52,    0,   52,   52,   52,   52,   52,   52,   52,   52,
    380        52,   52,   52,   52,   48,   48,   52,   52,   52,   52,
    381        63,    0,   61,   46,   46,   46,   46,   46,   46,   27,
    382        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    383        46,   20,   46,   46,   46,   46,   46,   46,   46,   46,
    384        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    385        46,   46,   46,   46,   46,   46,   46,   46,   46,    3,
    386         0,    0,    0,    1,   50,   52,   52,    0,   52,   52,
    387        52,   30,   52,   52,   52,   52,   52,   52,    0,   52,
    388        52,   52,   52,    0,   52,   52,   52,    0,   25,   26,
    389 
    390        52,   52,   52,   52,   52,   52,   52,   36,   52,   52,
    391        48,   48,   52,   52,   52,   52,   52,   64,   61,   46,
    392        46,   46,   46,   46,   46,   30,   46,   46,   46,   46,
    393        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    394        46,   46,   25,   26,   46,   46,   46,   46,   46,   46,
    395        46,   46,   36,   46,   46,   46,   46,   46,   46,   46,
    396        46,   46,   46,    0,    2,    1,   52,   52,    0,    0,
    397        52,   52,   52,   52,    0,   52,   52,    0,   52,    0,
    398        28,   52,   52,   52,    0,   29,   52,   52,   25,   26,
    399        32,   52,   47,   52,   52,   37,   31,   52,   52,   32,
    400 
    401         0,   52,   52,   52,   52,   52,   46,   46,   46,   46,
    402        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    403        46,   28,   46,   46,   46,   46,   29,   46,   46,   25,
    404        26,   32,   46,   46,   46,   37,   41,   31,   46,   46,
    405        46,   32,   46,   46,   46,   46,   46,   46,    2,    0,
    406        52,    0,    0,    0,    0,   52,   52,   52,   52,    0,
    407        52,   52,    0,    0,   52,   28,   24,   52,   52,   29,
    408         0,   52,   32,   52,   52,   52,   52,    0,   52,    0,
    409        52,   52,   33,    0,   33,   46,   46,   46,   46,   46,
    410        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    411 
    412        46,   46,   28,   24,   46,   46,   29,   46,   46,   32,
    413        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    414        33,   46,   33,    0,   52,    0,    0,    0,    0,   52,
    415        52,   30,    0,    0,   52,    0,    0,    0,    5,   52,
    416        17,    0,   52,    0,   52,    0,   37,    0,   52,    0,
    417        52,   52,    0,   46,   46,   46,   46,   46,   46,   46,
    418        46,   30,   46,   46,   38,   46,   46,   46,   46,    5,
    419        46,   17,   46,   46,   46,   46,   46,   37,   46,   42,
    420        46,   46,   46,   46,   46,    0,   52,    0,    0,    0,
    421        52,   52,    0,   52,    0,    0,    0,   52,    0,    0,
    422 
    423         0,   52,    0,   52,    0,   52,    0,    0,   52,    0,
    424        52,   52,    0,   46,   46,   46,   46,   46,   46,   46,
    425        46,   46,   46,   46,   46,   46,   39,   40,   46,   46,
    426        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    427        46,   46,   46,   46,   52,    0,    0,    0,   52,   52,
    428         0,    0,   11,    0,    0,    0,    0,    0,    0,    0,
    429        52,    0,   52,    0,   52,    0,    0,   34,    0,   52,
    430         0,    0,   46,   46,   46,   46,   46,   46,   46,   46,
    431        46,   11,   46,   46,   46,   46,   46,   46,   46,   46,
    432        46,   46,   46,   46,   46,   46,   34,   46,   46,   46,
    433 
    434        46,   52,    0,   52,    0,    0,    0,    0,    0,    0,
    435        15,    0,    0,   52,    0,   52,    0,   52,    0,    0,
    436        52,    0,   52,    0,    0,   46,   46,   46,   46,   46,
    437        46,   46,   46,   46,   46,   15,   46,   46,   46,   46,
    438        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
    439        52,    0,    0,    0,    0,   13,    0,    0,    0,    5,
    440         0,    0,    0,   52,    0,   21,    0,    0,   34,   14,
    441        52,    0,   16,   46,   46,   46,   46,   46,   46,   13,
    442        46,   46,   46,    5,   46,   46,   46,   46,   46,   21,
    443        46,   46,   34,   14,   46,   46,   16,   52,    0,    0,
    444 
    445         0,    0,    0,    0,    0,    0,    0,    0,   52,    0,
    446         0,   17,   52,    0,   46,   46,   46,   46,   46,   43,
    447        46,   46,   46,   46,   46,   46,   46,   46,   46,   17,
    448        46,   46,    0,    0,    0,    0,    0,   10,    0,    0,
    449         0,    0,    0,    8,   19,   18,    0,    0,   46,   46,
    450        46,   46,   46,   10,   46,   46,   46,   46,   46,    8,
    451        19,   18,   46,   46,    0,    0,    0,    0,   12,    0,
    452         0,    0,    0,    0,    0,    0,    0,    0,   46,   46,
    453        46,   46,   12,   46,   46,   46,   46,   46,   46,   46,
    454        46,   46,    0,    0,    0,    0,    0,   21,    0,    0,
    455 
    456         0,    0,    0,    0,   46,   46,   46,   46,   46,   21,
    457        46,   46,   46,   46,   46,   46,    0,    0,    0,    0,
    458         0,    0,    0,    0,    0,    0,   46,   46,   46,   46,
    459        46,   46,   46,   46,   46,   46,   22,    0,    9,   20,
    460        23,    0,    0,   35,    0,    0,   22,   46,    9,   20,
    461        23,   46,   46,   35,   46,   46,    0,    0,    0,    0,
    462         0,   46,   46,   46,   46,   46,    0,    0,    0,    0,
    463         0,   46,   46,   46,   46,   46,   11,    7,    0,    0,
    464         0,   11,    7,   46,   46,   46,    6,    0,    0,    6,
    465        46,   46,    0,    0,   46,   46,    0,   46,    0
    466 
    467     } ;
    468 
    469 static yyconst flex_int32_t yy_ec[256] =
    470     {   0,
    471         1,    1,    1,    1,    1,    1,    1,    1,    1,    2,
    472         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    473         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    474         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    475         1,    3,    1,    4,    5,    1,    6,    7,    8,    9,
    476        10,   10,   10,   10,   10,   10,   10,   11,    1,    1,
    477        12,    1,    3,    1,   13,   14,   15,   16,   13,   13,
    478        17,   17,   18,    3,    3,   19,    3,    3,    3,    3,
    479         3,   20,   17,   21,    3,    3,    3,    3,    3,    3,
    480         1,    1,    1,    1,   22,    1,   23,   24,   25,   26,
    481 
    482        27,   28,   29,   30,   31,   32,   33,   34,   35,   36,
    483        37,   38,    3,   39,   40,   41,   42,   43,   44,   45,
    484        46,    3,   47,    1,   48,    1,    1,    1,    1,    1,
    485         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    486         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    487         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    488         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    489         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    490         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    491         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    492 
    493         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    494         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    495         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    496         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    497         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    498         1,    1,    1,    1,    1
    499     } ;
    500 
    501 static yyconst flex_int32_t yy_meta[49] =
    502     {   0,
    503         1,    1,    2,    3,    4,    5,    6,    6,    6,    6,
    504         1,    1,    6,    6,    6,    6,    2,    2,    2,    2,
    505         2,    2,    6,    6,    6,    6,    6,    6,    2,    2,
    506         2,    2,    2,    2,    2,    2,    2,    2,    2,    2,
    507         2,    2,    2,    2,    2,    2,    5,    3
    508     } ;
    509 
    510 static yyconst flex_int16_t yy_base[912] =
    511     {   0,
    512         0,    0,   47,   91,  136,    0,   57,   60, 1304, 1305,
    513      1305,    0, 1305, 1305, 1305,   43,   60, 1305, 1305,   73,
    514       169, 1267,   63, 1275,   40,   37,   72,   92, 1266, 1277,
    515       182,   77,   50, 1262, 1260,  203,  239,   42, 1274, 1257,
    516      1305, 1305, 1305,  182,  112, 1305,   84, 1290, 1305, 1305,
    517       263, 1271,   89,  196,  183,  188,  190,  235,  193,   82,
    518       189,  256,  201,  264,  220,  192,  251,  301,  218,  211,
    519       212,  190,  238, 1305, 1245,    0,  290,    0,   93, 1251,
    520      1251, 1285,    0, 1274, 1260, 1262, 1255,  246, 1262, 1260,
    521      1243, 1257, 1245, 1238,    0, 1254, 1237, 1258, 1241, 1233,
    522 
    523      1232, 1232, 1253, 1237, 1230,  307, 1246, 1236, 1232,  294,
    524      1240, 1225, 1235, 1236, 1235,  308, 1234,  247, 1220, 1228,
    525       311,    0,  298, 1253,    0, 1234,  219,  299, 1251, 1250,
    526       298,  317,  327,  245,  335,  216,  278,  336,  339,  342,
    527       341, 1249,  343, 1212,  344,  345,  346,  348, 1211,  350,
    528       351,  349,  353,  284,  354,  352,  362,  357,  356,  360,
    529        55,  365,  366, 1224,  378,  367,  376,  368,  390,  360,
    530      1244, 1201, 1200,    0,    0, 1224, 1205,  100, 1218, 1217,
    531      1214,    0, 1206, 1236, 1210, 1198, 1233, 1203, 1202, 1221,
    532      1199, 1199, 1198, 1197, 1216, 1202, 1187,  383,    0,    0,
    533 
    534      1201, 1189, 1214, 1185, 1186, 1182, 1194,    0, 1193, 1191,
    535       348,  391, 1193, 1183, 1177, 1182, 1173,    0, 1305,  392,
    536       398,  385,  405,  407,  412, 1208,  414, 1207,  415,  418,
    537      1206,  417, 1176,  119,  419,  421,  422, 1175,  423,  420,
    538       424,  404, 1203, 1202,  431,  433,  437,  428,  435,  438,
    539       439,  444, 1201,  447,  448,  453,  434,  457,  458,  459,
    540       463,  468,  464, 1199,    0,    0, 1199, 1164,  452,  451,
    541      1163, 1161, 1164, 1174, 1173, 1170, 1169,  455, 1168, 1170,
    542         0, 1147, 1169, 1150, 1166,    0, 1184, 1149, 1305, 1305,
    543      1147, 1147, 1305, 1162, 1145, 1156,    0, 1177, 1154, 1153,
    544 
    545      1154, 1136, 1143, 1149, 1170, 1147, 1168,  477,  463,  460,
    546       484,  486,  489,  487, 1147,  490,  493,  494,  475,  501,
    547      1147, 1165,  498,  499,  502, 1145, 1163, 1162,  503,    0,
    548         0,  506,  508,  504,  509,  510, 1161, 1160, 1159,  513,
    549       514, 1136, 1137,  515,  524,  525, 1156,  526,    0, 1139,
    550      1117, 1117, 1134, 1133, 1115, 1127, 1113, 1117, 1121, 1104,
    551      1144, 1103,  499, 1116, 1106, 1305,    0, 1104, 1104, 1305,
    552      1118, 1100,    0, 1136, 1099, 1134, 1098, 1109, 1095, 1089,
    553      1100, 1106, 1092, 1106,    0, 1109,  527, 1088, 1105, 1104,
    554      1086,  529,  530,  531,  533, 1079, 1119,  535,  534,  515,
    555 
    556      1092,  546,    0, 1117,  549,  554,    0, 1096,  550, 1115,
    557      1114,  555, 1113,  557, 1089,  562,  560, 1070,  566,  568,
    558       563, 1090, 1109, 1094, 1087, 1088, 1085, 1084, 1067, 1071,
    559      1079,  571, 1080,  539, 1063, 1066, 1077, 1072,    0, 1069,
    560         0, 1053, 1073, 1069, 1065, 1067,    0, 1071, 1068, 1067,
    561      1068, 1064, 1055, 1069,  577, 1064, 1061, 1060, 1043,  570,
    562       572,  582, 1058,  545,  602,  567, 1045, 1056, 1051, 1074,
    563       584, 1073, 1031,  580, 1048,  586, 1047, 1069, 1050, 1067,
    564       588, 1046,  607,  609, 1036, 1055, 1027, 1037, 1036, 1026,
    565      1039, 1027,  585, 1022, 1027, 1029, 1032, 1053, 1032, 1022,
    566 
    567      1016, 1017, 1028, 1011, 1028, 1013, 1026, 1006, 1017, 1012,
    568      1004, 1039, 1006, 1028,  578, 1011, 1010, 1000,  613,  616,
    569       591,  618,  620, 1004, 1006, 1009, 1030, 1029, 1028, 1007,
    570       997,  991,  619, 1004,  622, 1005,  624, 1004,  984,  623,
    571       991,  626, 1019,  986,  991,  994,  993,  977,  991,  976,
    572       980,  984,    0,  987,  973,  984,  971,  977,  982,  985,
    573       971,  972,  974,  962,  967,  960,  967,  973,  972,  967,
    574       972,  971,  627,  968,  967,  951,  628,  629,  956,  960,
    575       631,  985,  962,  948,  959,  946,  952,  957,  960,  632,
    576       948,  634,  939,  635,  938,  945,  637,  951,  638,  952,
    577 
    578       951,  938,  949,  968,  932,  931,  930,  929,  941,  923,
    579      1305,  926,  924,  959,  936,  925,  927,  920,  925,  917,
    580       917,  916,  912,  908,  920,  636,  927,  946,  910,  909,
    581       640,  908,  907,  919,  901,    0,  904,  902,  937,  914,
    582       639,  906,  641,  905,  897,  642,  897,  643,  890,  902,
    583       898,  892,  904,  890,  890, 1305,  902,  889,  896, 1305,
    584       895,  897,  884,  887,  881,    0,  880,  880,    0, 1305,
    585       892,  893, 1305,  644,  876,  888,  874,  874,  645,    0,
    586       886,  873,  880,    0,  879,  881,  868,  649,  866,  901,
    587       864,  864,  898,    0,  652,  877,    0,  896,  869,  876,
    588 
    589       859,  870,  856,  868,  853,  856,  869,  886,  850,  849,
    590       848, 1305,  882,  852,  880,  853,  860,  843,  854,  875,
    591       839,  851,  836,  839,  852,  869,  657,  833,  832,    0,
    592       866,  836,  848,  831,  825,  824,  825, 1305,  828,  838,
    593       826,  819,  659,    0, 1305, 1305,  650,  833,  838,  821,
    594       815,  814,  815,    0,  818,  828,  816,  809,  664,  845,
    595         0,    0,  656,  822,  829,  811,  812,  820, 1305,  819,
    596       813,  802,  807,  817,  800,  801,  810,  796,  816,  798,
    597       799,  807,    0,  806,  800,  789,  794,  804,  787,  788,
    598       797,  783,  808,  780,  779,  792,  791, 1305,  776,  791,
    599 
    600       777,  789,  785,  801,  782,  753,  742,  752,  750,    0,
    601       733,  102,  163,  271,  558,  646,  626,  643,  635,  651,
    602       653,  661,  660,  672,  673,  676,  661,  671,  663,  665,
    603       666,  674,  672,  683,  684,  687, 1305,  675, 1305, 1305,
    604      1305,  686,  673, 1305,  693,  678,    0,  681,    0,    0,
    605         0,  692,  679,    0,  698,  683,  687,  688,  698,  701,
    606       690,  692,  693,  703,  706,  695,  693,  708,  699,  703,
    607       701,  698,  713,  704,  708,  706, 1305, 1305,  717,  717,
    608       704,    0,    0,  720,  720,  707, 1305,  713,  723,    0,
    609       715,  725,  727,  718,  729,  720,  731,  732, 1305,  758,
    610 
    611       764,  769,  774,  780,  786,  766,  767,  791,  797,  803,
    612       809
    613     } ;
    614 
    615 static yyconst flex_int16_t yy_def[912] =
    616     {   0,
    617       899,    1,  900,  900,  899,    5,  901,  901,  899,  899,
    618       899,  902,  899,  899,  899,  899,  899,  899,  899,  902,
    619       902,  902,  902,  902,  902,  902,  902,  902,  902,  902,
    620       902,  902,  902,  902,  902,  902,  902,  902,  902,  902,
    621       899,  899,  899,  899,  899,  899,  899,  903,  899,  899,
    622       903,   51,  903,  903,  903,  903,  903,  903,  903,  903,
    623       903,  903,  903,  903,  903,  903,   51,  903,  903,  903,
    624       903,  904,  904,  899,  905,  902,  899,  906,   36,  902,
    625       902,  902,  902,  902,  902,  902,  902,  902,  902,  902,
    626       902,  902,  902,  902,  902,  902,  899,  902,  902,  902,
    627 
    628       902,  899,  902,  902,  902,  902,  902,  902,  902,  902,
    629       902,  902,  902,  902,   37,   37,  902,  902,  902,  902,
    630       899,  907,  899,  903,  908,   51,  903,  903,  903,  903,
    631       903,  903,  903,  903,  903,  903,  903,  903,  903,  903,
    632       903,  903,  903,  908,  903,  903,  903,  903,  908,  903,
    633       903,  903,  903,  903,  903,  903,  903,  903,  903,  903,
    634       903,  903,  903,   68,   68,  903,  903,  903,  903,  904,
    635       909,  905,  905,  910,  906,  902,  902,  899,  902,  902,
    636       902,  902,  902,  902,  902,  902,  902,  902,  899,  902,
    637       902,  902,  902,  899,  902,  902,  902,  899,  902,  902,
    638 
    639       902,  902,  902,  902,  902,  902,  902,  902,  902,  902,
    640        37,   37,  902,  902,  902,  902,  902,  907,  899,  903,
    641       903,  908,  903,  903,  903,  903,  903,  903,  903,  903,
    642       903,  903,  908,  903,  903,  903,  903,  908,  903,  903,
    643       903,  908,  903,  903,  903,  903,  903,  903,  903,  903,
    644       903,  903,  903,  903,  903,  903,   68,   68,  903,  903,
    645       903,  903,  903,  909,  911,  910,  902,  902,  899,  899,
    646       902,  902,  902,  902,  899,  902,  902,  899,  902,  899,
    647       902,  902,  902,  902,  899,  902,  902,  902,  899,  899,
    648       902,  902,  899,  902,  902,  902,  902,  902,  902,   37,
    649 
    650       899,  902,  902,  902,  902,  902,  903,  903,  908,  908,
    651       903,  903,  903,  903,  908,  903,  903,  903,  908,  903,
    652       908,  903,  903,  903,  903,  908,  903,  903,  903,  908,
    653       908,  903,  903,  903,  903,  903,  903,  903,  903,  903,
    654       903,   68,  908,  903,  903,  903,  903,  903,  911,  899,
    655       902,  899,  899,  899,  899,  902,  902,  902,  902,  899,
    656       902,  902,  899,  899,  902,  899,  902,  902,  902,  899,
    657       899,  902,  902,  902,  902,  902,  902,  899,  902,  899,
    658       902,  902,  902,  899,  902,  908,  903,  908,  908,  908,
    659       908,  903,  903,  903,  903,  908,  903,  903,  903,  908,
    660 
    661       908,  903,  908,  903,  903,  903,  908,  908,  903,  903,
    662       903,  903,  903,  903,  908,  903,  903,  908,  903,  903,
    663       903,  908,  903,  899,  902,  899,  899,  899,  899,  902,
    664       902,  902,  899,  899,  902,  899,  899,  899,  902,  902,
    665       902,  899,  902,  899,  902,  899,  902,  899,  902,  899,
    666       902,  902,  899,  908,  903,  908,  908,  908,  908,  903,
    667       903,  903,  908,  908,  903,  903,  908,  908,  908,  903,
    668       903,  903,  908,  903,  908,  903,  908,  903,  908,  903,
    669       903,  908,  903,  903,  908,  899,  902,  899,  899,  899,
    670       902,  902,  899,  902,  899,  899,  899,  902,  899,  899,
    671 
    672       899,  902,  899,  902,  899,  902,  899,  899,  902,  899,
    673       902,  902,  899,  908,  903,  908,  908,  908,  903,  903,
    674       908,  903,  903,  908,  908,  908,  903,  903,  903,  908,
    675       908,  908,  903,  908,  903,  908,  903,  908,  908,  903,
    676       908,  903,  903,  908,  902,  899,  899,  899,  902,  902,
    677       899,  899,  902,  899,  899,  899,  899,  899,  899,  899,
    678       902,  899,  902,  899,  902,  899,  899,  902,  899,  902,
    679       899,  899,  903,  908,  908,  908,  903,  903,  908,  908,
    680       903,  903,  908,  908,  908,  908,  908,  908,  908,  903,
    681       908,  903,  908,  903,  908,  908,  903,  908,  903,  908,
    682 
    683       908,  902,  899,  902,  899,  899,  899,  899,  899,  899,
    684       899,  899,  899,  902,  899,  902,  899,  902,  899,  899,
    685       902,  899,  902,  899,  899,  903,  908,  903,  908,  908,
    686       903,  908,  908,  908,  908,  908,  908,  908,  903,  908,
    687       903,  908,  903,  908,  908,  903,  908,  903,  908,  908,
    688       902,  899,  899,  899,  899,  899,  899,  899,  899,  899,
    689       899,  899,  899,  902,  899,  902,  899,  899,  902,  899,
    690       902,  899,  899,  903,  908,  908,  908,  908,  903,  908,
    691       908,  908,  908,  908,  908,  908,  908,  903,  908,  903,
    692       908,  908,  903,  908,  903,  908,  908,  902,  899,  899,
    693 
    694       899,  899,  899,  899,  899,  899,  899,  899,  902,  899,
    695       899,  899,  902,  899,  903,  908,  908,  908,  908,  903,
    696       908,  908,  908,  908,  908,  908,  903,  908,  908,  908,
    697       903,  908,  899,  899,  899,  899,  899,  899,  899,  899,
    698       899,  899,  899,  902,  899,  899,  899,  899,  908,  908,
    699       908,  908,  908,  908,  908,  908,  908,  908,  908,  903,
    700       908,  908,  908,  908,  899,  899,  899,  899,  899,  899,
    701       899,  899,  899,  899,  899,  899,  899,  899,  908,  908,
    702       908,  908,  908,  908,  908,  908,  908,  908,  908,  908,
    703       908,  908,  899,  899,  899,  899,  899,  899,  899,  899,
    704 
    705       899,  899,  899,  899,  908,  908,  908,  908,  908,  908,
    706       908,  908,  908,  908,  908,  908,  899,  899,  899,  899,
    707       899,  899,  899,  899,  899,  899,  908,  908,  908,  908,
    708       908,  908,  908,  908,  908,  908,  899,  899,  899,  899,
    709       899,  899,  899,  899,  899,  899,  908,  908,  908,  908,
    710       908,  908,  908,  908,  908,  908,  899,  899,  899,  899,
    711       899,  908,  908,  908,  908,  908,  899,  899,  899,  899,
    712       899,  908,  908,  908,  908,  908,  899,  899,  899,  899,
    713       899,  908,  908,  908,  908,  908,  899,  899,  899,  908,
    714       908,  908,  899,  899,  908,  908,  899,  908,    0,  899,
    715 
    716       899,  899,  899,  899,  899,  899,  899,  899,  899,  899,
    717       899
    718     } ;
    719 
    720 static yyconst flex_int16_t yy_nxt[1354] =
    721     {   0,
    722        10,   11,   12,   13,   14,   15,   16,   17,   17,   17,
    723        18,   19,   12,   12,   12,   20,   21,   22,   23,   24,
    724        12,   12,   25,   26,   27,   28,   29,   30,   12,   21,
    725        31,   12,   21,   32,   33,   34,   35,   36,   37,   38,
    726        39,   21,   12,   40,   12,   12,   41,   42,   10,   77,
    727        77,   77,   77,   44,   45,   45,   45,   46,   73,  125,
    728        74,   73,   74,   74,   86,   74,   77,   77,   77,   77,
    729        82,   83,  108,   87,   88,   89,  109,   90,   91,  117,
    730       110,   84,  118,  254,  106,   47,  125,   78,   79,   79,
    731        47,   47,   10,  125,   92,   80,   97,   44,   45,   45,
    732 
    733        45,   46,   79,   75,   74,   79,   75,   74,   93,   94,
    734        79,   95,   98,  107,   79,   76,  147,   96,  121,  121,
    735       121,  121,  123,  125,  128,  269,  832,  123,  123,   47,
    736       270,   76,  322,   99,   47,   47,   10,   11,   48,   49,
    737        14,   50,   16,   17,   17,   17,   18,   19,   48,   48,
    738        48,   51,   52,   53,   54,   55,   48,   48,   56,   57,
    739        58,   59,   60,   61,   48,   52,   62,   48,   52,   63,
    740        64,   65,   66,   67,   68,   69,   70,   52,   48,   71,
    741        48,   48,   41,   42,   79,   79,  102,  125,  121,  121,
    742       121,  121,  125,  125,  125,  171,  125,  144,   79,  833,
    743 
    744       125,   79,  103,  129,  130,  125,   79,  104,  153,  132,
    745        79,  148,  133,  145,  131,  125,  125,  105,   79,   79,
    746       125,  134,  125,  125,  125,  113,  122,  135,  136,  160,
    747       137,  138,   79,  168,  146,   79,  172,  154,  227,  125,
    748        79,  114,  158,  171,   79,  115,  115,  115,  115,  125,
    749       169,  115,  115,  115,  115,  166,  159,  139,  167,  220,
    750       149,  115,  115,  115,  115,  116,  115,  125,  125,  214,
    751       182,  140,  141,  161,  142,  225,  150,  162,  126,  126,
    752       143,  151,  125,  215,  172,  127,  155,  182,  125,  163,
    753       156,  152,  126,  834,  157,  126,   77,   77,   77,   77,
    754 
    755       126,  226,  125,  125,  126,  125,  245,  164,  164,  164,
    756       164,  198,  130,  164,  164,  164,  164,  121,  121,  121,
    757       121,  125,  204,  164,  164,  164,  164,  165,  164,  205,
    758       211,  125,  199,  206,  115,  212,  219,  200,  221,  125,
    759       125,  219,  219,  125,  223,  125,  125,  125,  125,  125,
    760       125,  224,  125,  125,  125,  125,  125,  242,  125,  226,
    761       125,  125,  234,  229,  125,  171,  125,  232,  239,  125,
    762       125,  125,  125,  300,  115,  228,  226,  230,  243,  235,
    763       125,  252,  231,  244,  240,  246,  247,  236,  241,  237,
    764       248,  251,  256,  259,  125,  301,  125,  249,  260,  253,
    765 
    766       257,  250,  125,  255,  164,  258,  172,  262,  289,  125,
    767       309,  125,  261,  290,  307,  310,  125,  115,  125,  125,
    768       263,  125,  125,  125,  125,  125,  125,  125,  125,  330,
    769       208,  311,  125,  312,  331,  125,  327,  125,  308,  125,
    770       313,  125,  125,  125,  316,  317,  328,  293,  125,  314,
    771       320,  125,  125,  323,  324,  325,  332,  125,  318,  342,
    772       164,  343,  125,  125,  329,  337,  334,  125,  125,  333,
    773       338,  335,  125,  339,  352,  354,  353,  336,  340,  363,
    774       341,  125,  344,  164,  390,  388,  355,  389,  125,  364,
    775       125,  125,  345,  125,  125,  391,  253,  125,  125,  400,
    776 
    777       347,  346,  125,  125,  348,  125,  125,  125,  125,  401,
    778       125,  395,  125,  125,  125,  387,  397,  125,  125,  125,
    779       399,  405,  392,  398,  394,  393,  412,  402,  125,  125,
    780       125,  125,  436,  125,  125,  125,  414,  125,  125,  125,
    781       417,  409,  406,  404,  437,  410,  411,  413,  467,  416,
    782       125,  421,  423,  125,  125,  460,  419,  420,  125,  125,
    783       468,  125,  462,  465,  125,  461,  125,  125,  455,  253,
    784       125,  125,  125,  496,  125,  493,  125,  497,  466,  525,
    785       835,  125,  125,  526,  125,  470,  521,  480,  125,  471,
    786       125,  474,  125,  472,  484,  476,  478,  494,  520,  483,
    787 
    788       481,  515,  423,  522,  535,  519,  125,  529,  523,  527,
    789       528,  125,  540,  125,  533,  551,  537,  125,  573,  552,
    790       125,  579,  125,  125,  125,  580,  125,  125,  125,  542,
    791       125,  125,  125,  125,  543,  125,  125,  577,  125,  125,
    792       125,  125,  125,  125,  125,  125,  125,  125,  125,  125,
    793       836,  578,  597,  125,  253,  590,  125,  626,  581,  582,
    794       594,  125,  592,  646,  641,  837,  599,  639,  648,  628,
    795       643,  720,  674,  838,  839,  688,  631,  679,  731,  715,
    796       690,  693,  774,  776,  727,  695,  775,  788,  777,  790,
    797       840,  789,  841,  842,  791,  843,  760,  844,  844,  845,
    798 
    799       847,  848,  849,  846,  850,  851,  852,  853,  854,  854,
    800       855,  857,  858,  859,  856,  860,  861,  862,  863,  864,
    801       865,  866,  867,  868,  869,  870,  871,  872,  873,  874,
    802       875,  876,  877,  878,  879,  880,  881,  882,  883,  884,
    803       885,  886,  887,  888,  889,  890,  891,  892,  893,  894,
    804       895,  896,  878,  897,  883,  898,  887,  890,   43,   43,
    805        43,   43,   43,   43,   72,   72,   72,   72,   72,   72,
    806        76,  175,  218,  831,   76,  124,  830,  124,  829,  124,
    807       170,  170,  828,  170,  170,  170,  173,  173,  173,  173,
    808       173,  173,  125,  827,  125,  407,  125,  264,  264,  264,
    809 
    810       264,  264,  264,  266,  266,  826,  266,  825,  266,  349,
    811       349,  824,  349,  823,  349,  822,  821,  820,  819,  818,
    812       817,  370,  816,  815,  814,  813,  812,  811,  810,  809,
    813       808,  807,  806,  331,  805,  804,  803,  802,  801,  800,
    814       799,  798,  797,  796,  795,  794,  290,  793,  792,  125,
    815       787,  786,  785,  784,  783,  782,  781,  780,  779,  778,
    816       773,  772,  771,  770,  769,  768,  767,  766,  765,  764,
    817       763,  762,  761,  759,  758,  757,  756,  755,  754,  125,
    818       753,  752,  751,  750,  749,  748,  747,  746,  745,  744,
    819       743,  742,  741,  740,  739,  738,  737,  736,  735,  734,
    820 
    821       733,  732,  125,  730,  729,  125,  728,  726,  725,  724,
    822       723,  722,  721,  719,  718,  717,  716,  714,  713,  712,
    823       711,  710,  709,  708,  707,  706,  705,  704,  703,  702,
    824       701,  700,  699,  698,  697,  696,  694,  692,  691,  689,
    825       687,  686,  685,  684,  683,  682,  681,  680,  678,  677,
    826       676,  675,  673,  672,  671,  670,  669,  668,  667,  666,
    827       665,  664,  663,  662,  661,  660,  659,  658,  657,  656,
    828       655,  654,  653,  652,  651,  650,  649,  647,  645,  644,
    829       642,  640,  638,  637,  636,  635,  634,  633,  632,  125,
    830       630,  629,  627,  331,  330,  625,  624,  623,  622,  621,
    831 
    832       620,  619,  618,  617,  616,  615,  614,  613,  612,  611,
    833       610,  609,  608,  607,  606,  605,  604,  208,  603,  290,
    834       289,  602,  601,  600,  598,  596,  595,  593,  591,  589,
    835       588,  587,  586,  125,  125,  585,  584,  583,  576,  575,
    836       574,  403,  572,  571,  570,  569,  568,  567,  566,  565,
    837       564,  563,  562,  561,  560,  559,  558,  557,  556,  555,
    838       554,  553,  550,  549,  548,  547,  546,  545,  366,  544,
    839       541,  125,  539,  125,  538,  536,  534,  125,  125,  532,
    840       531,  530,  524,  518,  517,  516,  330,  514,  513,  512,
    841       511,  510,  509,  508,  507,  506,  505,  504,  503,  502,
    842 
    843       501,  500,  499,  498,  495,  492,  491,  490,  489,  488,
    844       289,  487,  486,  125,  485,  482,  479,  477,  475,  125,
    845       473,  125,  469,  464,  463,  459,  458,  457,  456,  454,
    846       453,  385,  452,  451,  450,  449,  448,  447,  446,  445,
    847       444,  443,  442,  441,  440,  439,  438,  435,  434,  433,
    848       432,  431,  208,  430,  429,  428,  427,  426,  425,  424,
    849       422,  418,  164,  415,  125,  125,  408,  125,  407,  125,
    850       403,  396,  386,  385,  384,  383,  382,  381,  380,  115,
    851       379,  378,  377,  376,  375,  374,  373,  372,  371,  370,
    852       369,  368,  367,  366,  365,  362,  361,  360,  359,  358,
    853 
    854       357,  356,  351,  350,  265,  125,  125,  125,  326,  321,
    855       319,  315,  125,  306,  305,  304,  303,  302,  299,  298,
    856       297,  296,  295,  294,  293,  292,  291,  288,  287,  286,
    857       285,  284,  283,  282,  281,  280,  279,  278,  277,  276,
    858       275,  274,  273,  272,  271,  268,  267,  174,  174,  265,
    859       164,  238,  233,  125,  125,  222,  124,  125,  217,  216,
    860       213,  115,  210,  209,  208,  207,  203,  202,  201,  197,
    861       196,  195,  194,  193,  192,  191,  190,  189,  188,  187,
    862       186,  185,  184,  182,  183,  181,  180,  179,   83,  178,
    863       177,  176,  174,  124,  125,  120,  119,  112,  111,  101,
    864 
    865       100,   85,   81,  899,    9,  899,  899,  899,  899,  899,
    866       899,  899,  899,  899,  899,  899,  899,  899,  899,  899,
    867       899,  899,  899,  899,  899,  899,  899,  899,  899,  899,
    868       899,  899,  899,  899,  899,  899,  899,  899,  899,  899,
    869       899,  899,  899,  899,  899,  899,  899,  899,  899,  899,
    870       899,  899,  899
    871     } ;
    872 
    873 static yyconst flex_int16_t yy_chk[1354] =
    874     {   0,
    875         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    876         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    877         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    878         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
    879         1,    1,    1,    1,    1,    1,    1,    1,    3,   16,
    880        16,   16,   16,    3,    3,    3,    3,    3,    7,  161,
    881         7,    8,    7,    8,   25,    8,   17,   17,   17,   17,
    882        23,   23,   33,   25,   26,   26,   33,   26,   26,   38,
    883        33,   23,   38,  161,   32,    3,   60,   16,   20,   20,
    884         3,    3,    4,   53,   27,   20,   28,    4,    4,    4,
    885 
    886         4,    4,   20,    7,    7,   20,    8,    8,   27,   27,
    887        20,   27,   28,   32,   20,   79,   60,   27,   45,   45,
    888        45,   45,   47,  234,   53,  178,  812,   47,   47,    4,
    889       178,   79,  234,   28,    4,    4,    5,    5,    5,    5,
    890         5,    5,    5,    5,    5,    5,    5,    5,    5,    5,
    891         5,    5,    5,    5,    5,    5,    5,    5,    5,    5,
    892         5,    5,    5,    5,    5,    5,    5,    5,    5,    5,
    893         5,    5,    5,    5,    5,    5,    5,    5,    5,    5,
    894         5,    5,    5,    5,   21,   21,   31,   55,   44,   44,
    895        44,   44,   56,   61,   57,   72,   66,   59,   21,  813,
    896 
    897        54,   21,   31,   54,   54,   63,   21,   31,   63,   55,
    898        21,   61,   56,   59,   54,   70,   71,   31,   36,   36,
    899       136,   56,   69,  127,   65,   36,   44,   57,   57,   66,
    900        57,   57,   36,   70,   59,   36,   72,   63,  136,   58,
    901        36,   36,   65,   73,   36,   37,   37,   37,   37,  134,
    902        71,   37,   37,   37,   37,   69,   65,   58,   69,  127,
    903        62,   37,   37,   37,   37,   37,   37,   51,   64,  118,
    904        88,   58,   58,   67,   58,  134,   62,   67,   51,   51,
    905        58,   62,  137,  118,   73,   51,   64,   88,  154,   67,
    906        64,   62,   51,  814,   64,   51,   77,   77,   77,   77,
    907 
    908        51,  137,  131,  128,   51,   68,  154,   68,   68,   68,
    909        68,  106,  131,   68,   68,   68,   68,  121,  121,  121,
    910       121,  132,  110,   68,   68,   68,   68,   68,   68,  110,
    911       116,  133,  106,  110,  116,  116,  123,  106,  128,  135,
    912       138,  123,  123,  139,  132,  141,  140,  143,  145,  146,
    913       147,  133,  148,  152,  150,  151,  156,  153,  155,  135,
    914       159,  158,  145,  139,  160,  170,  157,  143,  150,  162,
    915       163,  166,  168,  211,  211,  138,  135,  140,  153,  146,
    916       167,  159,  141,  153,  151,  155,  156,  147,  152,  148,
    917       157,  158,  163,  166,  169,  212,  220,  157,  167,  160,
    918 
    919       165,  157,  221,  162,  165,  165,  170,  168,  198,  223,
    920       222,  224,  167,  198,  220,  222,  225,  212,  227,  229,
    921       169,  232,  230,  235,  240,  236,  237,  239,  241,  242,
    922       212,  223,  248,  224,  242,  245,  239,  246,  221,  249,
    923       225,  247,  250,  251,  229,  230,  240,  247,  252,  227,
    924       232,  254,  255,  235,  236,  237,  245,  256,  230,  257,
    925       257,  258,  259,  260,  241,  251,  248,  261,  263,  246,
    926       252,  249,  262,  254,  269,  270,  269,  250,  255,  278,
    927       256,  308,  259,  258,  310,  309,  270,  309,  311,  278,
    928       312,  314,  260,  313,  316,  310,  258,  317,  318,  319,
    929 
    930       262,  261,  323,  324,  263,  320,  325,  329,  334,  319,
    931       332,  314,  333,  335,  336,  308,  316,  340,  341,  344,
    932       318,  324,  311,  317,  313,  312,  334,  320,  345,  346,
    933       348,  387,  363,  392,  393,  394,  336,  395,  399,  398,
    934       341,  329,  325,  323,  363,  332,  333,  335,  400,  340,
    935       402,  346,  348,  405,  409,  392,  344,  345,  406,  412,
    936       400,  414,  395,  398,  417,  394,  416,  421,  387,  393,
    937       419,  466,  420,  434,  460,  432,  461,  434,  399,  464,
    938       815,  455,  515,  464,  474,  402,  462,  416,  471,  405,
    939       476,  409,  481,  406,  420,  412,  414,  432,  461,  419,
    940 
    941       417,  455,  421,  462,  474,  460,  465,  466,  462,  465,
    942       465,  483,  481,  484,  471,  493,  476,  519,  515,  493,
    943       520,  521,  522,  533,  523,  521,  535,  540,  537,  483,
    944       542,  573,  577,  578,  484,  581,  590,  519,  592,  594,
    945       626,  597,  599,  641,  631,  643,  646,  648,  674,  679,
    946       816,  520,  540,  688,  577,  533,  695,  573,  522,  523,
    947       537,  727,  535,  597,  592,  817,  542,  590,  599,  578,
    948       594,  679,  626,  818,  819,  641,  581,  631,  695,  674,
    949       643,  646,  743,  747,  688,  648,  743,  759,  747,  763,
    950       820,  759,  821,  822,  763,  823,  727,  824,  825,  826,
    951 
    952       827,  828,  829,  826,  830,  831,  832,  833,  834,  835,
    953       836,  838,  842,  843,  836,  845,  846,  848,  852,  853,
    954       855,  856,  857,  858,  859,  860,  861,  862,  863,  864,
    955       865,  866,  867,  868,  869,  870,  871,  872,  873,  874,
    956       875,  876,  879,  880,  881,  884,  885,  886,  888,  889,
    957       891,  892,  893,  894,  895,  896,  897,  898,  900,  900,
    958       900,  900,  900,  900,  901,  901,  901,  901,  901,  901,
    959       902,  906,  907,  811,  902,  903,  809,  903,  808,  903,
    960       904,  904,  807,  904,  904,  904,  905,  905,  905,  905,
    961       905,  905,  908,  806,  908,  805,  908,  909,  909,  909,
    962 
    963       909,  909,  909,  910,  910,  804,  910,  803,  910,  911,
    964       911,  802,  911,  801,  911,  800,  799,  797,  796,  795,
    965       794,  793,  792,  791,  790,  789,  788,  787,  786,  785,
    966       784,  782,  781,  780,  779,  778,  777,  776,  775,  774,
    967       773,  772,  771,  770,  768,  767,  766,  765,  764,  760,
    968       758,  757,  756,  755,  753,  752,  751,  750,  749,  748,
    969       742,  741,  740,  739,  737,  736,  735,  734,  733,  732,
    970       731,  729,  728,  726,  725,  724,  723,  722,  721,  720,
    971       719,  718,  717,  716,  715,  714,  713,  711,  710,  709,
    972       708,  707,  706,  705,  704,  703,  702,  701,  700,  699,
    973 
    974       698,  696,  693,  692,  691,  690,  689,  687,  686,  685,
    975       683,  682,  681,  678,  677,  676,  675,  672,  671,  668,
    976       667,  665,  664,  663,  662,  661,  659,  658,  657,  655,
    977       654,  653,  652,  651,  650,  649,  647,  645,  644,  642,
    978       640,  639,  638,  637,  635,  634,  633,  632,  630,  629,
    979       628,  627,  625,  624,  623,  622,  621,  620,  619,  618,
    980       617,  616,  615,  614,  613,  612,  610,  609,  608,  607,
    981       606,  605,  604,  603,  602,  601,  600,  598,  596,  595,
    982       593,  591,  589,  588,  587,  586,  585,  584,  583,  582,
    983       580,  579,  576,  575,  574,  572,  571,  570,  569,  568,
    984 
    985       567,  566,  565,  564,  563,  562,  561,  560,  559,  558,
    986       557,  556,  555,  554,  552,  551,  550,  549,  548,  547,
    987       546,  545,  544,  543,  541,  539,  538,  536,  534,  532,
    988       531,  530,  529,  528,  527,  526,  525,  524,  518,  517,
    989       516,  514,  513,  512,  511,  510,  509,  508,  507,  506,
    990       505,  504,  503,  502,  501,  500,  499,  498,  497,  496,
    991       495,  494,  492,  491,  490,  489,  488,  487,  486,  485,
    992       482,  480,  479,  478,  477,  475,  473,  472,  470,  469,
    993       468,  467,  463,  459,  458,  457,  456,  454,  453,  452,
    994       451,  450,  449,  448,  446,  445,  444,  443,  442,  440,
    995 
    996       438,  437,  436,  435,  433,  431,  430,  429,  428,  427,
    997       426,  425,  424,  423,  422,  418,  415,  413,  411,  410,
    998       408,  404,  401,  397,  396,  391,  390,  389,  388,  386,
    999       384,  383,  382,  381,  380,  379,  378,  377,  376,  375,
   1000       374,  372,  371,  369,  368,  365,  364,  362,  361,  360,
   1001       359,  358,  357,  356,  355,  354,  353,  352,  351,  350,
   1002       347,  343,  342,  339,  338,  337,  328,  327,  326,  322,
   1003       321,  315,  307,  306,  305,  304,  303,  302,  301,  300,
   1004       299,  298,  296,  295,  294,  292,  291,  288,  287,  285,
   1005       284,  283,  282,  280,  279,  277,  276,  275,  274,  273,
   1006 
   1007       272,  271,  268,  267,  264,  253,  244,  243,  238,  233,
   1008       231,  228,  226,  217,  216,  215,  214,  213,  210,  209,
   1009       207,  206,  205,  204,  203,  202,  201,  197,  196,  195,
   1010       194,  193,  192,  191,  190,  189,  188,  187,  186,  185,
   1011       184,  183,  181,  180,  179,  177,  176,  173,  172,  171,
   1012       164,  149,  144,  142,  130,  129,  126,  124,  120,  119,
   1013       117,  115,  114,  113,  112,  111,  109,  108,  107,  105,
   1014       104,  103,  102,  101,  100,   99,   98,   97,   96,   94,
   1015        93,   92,   91,   90,   89,   87,   86,   85,   84,   82,
   1016        81,   80,   75,   52,   48,   40,   39,   35,   34,   30,
   1017 
   1018        29,   24,   22,    9,  899,  899,  899,  899,  899,  899,
   1019       899,  899,  899,  899,  899,  899,  899,  899,  899,  899,
   1020       899,  899,  899,  899,  899,  899,  899,  899,  899,  899,
   1021       899,  899,  899,  899,  899,  899,  899,  899,  899,  899,
   1022       899,  899,  899,  899,  899,  899,  899,  899,  899,  899,
   1023       899,  899,  899
   1024     } ;
   1025 
   1026 /* The intent behind this definition is that it'll catch
   1027  * any uses of REJECT which flex missed.
   1028  */
   1029 #define REJECT reject_used_but_not_detected
   1030 #define yymore() yymore_used_but_not_detected
   1031 #define YY_MORE_ADJ 0
   1032 #define YY_RESTORE_YY_MORE_OFFSET
   1033 #line 1 "util/parse-events.l"
   1034 #line 8 "util/parse-events.l"
   1035 #include <errno.h>
   1036 #include "../perf.h"
   1037 #include "parse-events-bison.h"
   1038 #include "parse-events.h"
   1039 
   1040 char *parse_events_get_text(yyscan_t yyscanner);
   1041 YYSTYPE *parse_events_get_lval(yyscan_t yyscanner);
   1042 
   1043 static int __value(YYSTYPE *yylval, char *str, int base, int token)
   1044 {
   1045 	u64 num;
   1046 
   1047 	errno = 0;
   1048 	num = strtoull(str, NULL, base);
   1049 	if (errno)
   1050 		return PE_ERROR;
   1051 
   1052 	yylval->num = num;
   1053 	return token;
   1054 }
   1055 
   1056 static int value(yyscan_t scanner, int base)
   1057 {
   1058 	YYSTYPE *yylval = parse_events_get_lval(scanner);
   1059 	char *text = parse_events_get_text(scanner);
   1060 
   1061 	return __value(yylval, text, base, PE_VALUE);
   1062 }
   1063 
   1064 static int raw(yyscan_t scanner)
   1065 {
   1066 	YYSTYPE *yylval = parse_events_get_lval(scanner);
   1067 	char *text = parse_events_get_text(scanner);
   1068 
   1069 	return __value(yylval, text + 1, 16, PE_RAW);
   1070 }
   1071 
   1072 static int str(yyscan_t scanner, int token)
   1073 {
   1074 	YYSTYPE *yylval = parse_events_get_lval(scanner);
   1075 	char *text = parse_events_get_text(scanner);
   1076 
   1077 	yylval->str = strdup(text);
   1078 	return token;
   1079 }
   1080 
   1081 static int sym(yyscan_t scanner, int type, int config)
   1082 {
   1083 	YYSTYPE *yylval = parse_events_get_lval(scanner);
   1084 
   1085 	yylval->num = (type << 16) + config;
   1086 	return type == PERF_TYPE_HARDWARE ? PE_VALUE_SYM_HW : PE_VALUE_SYM_SW;
   1087 }
   1088 
   1089 static int term(yyscan_t scanner, int type)
   1090 {
   1091 	YYSTYPE *yylval = parse_events_get_lval(scanner);
   1092 
   1093 	yylval->num = type;
   1094 	return PE_TERM;
   1095 }
   1096 
   1097 
   1098 
   1099 
   1100 /* If you add a modifier you need to update check_modifier() */
   1101 #line 1102 "<stdout>"
   1102 
   1103 #define INITIAL 0
   1104 #define mem 1
   1105 #define config 2
   1106 #define event 3
   1107 
   1108 #ifndef YY_NO_UNISTD_H
   1109 /* Special case for "unistd.h", since it is non-ANSI. We include it way
   1110  * down here because we want the user's section 1 to have been scanned first.
   1111  * The user has a chance to override it with an option.
   1112  */
   1113 #include <unistd.h>
   1114 #endif
   1115 
   1116 #ifndef YY_EXTRA_TYPE
   1117 #define YY_EXTRA_TYPE void *
   1118 #endif
   1119 
   1120 /* Holds the entire state of the reentrant scanner. */
   1121 struct yyguts_t
   1122     {
   1123 
   1124     /* User-defined. Not touched by flex. */
   1125     YY_EXTRA_TYPE yyextra_r;
   1126 
   1127     /* The rest are the same as the globals declared in the non-reentrant scanner. */
   1128     FILE *yyin_r, *yyout_r;
   1129     size_t yy_buffer_stack_top; /**< index of top of stack. */
   1130     size_t yy_buffer_stack_max; /**< capacity of stack. */
   1131     YY_BUFFER_STATE * yy_buffer_stack; /**< Stack as an array. */
   1132     char yy_hold_char;
   1133     int yy_n_chars;
   1134     int yyleng_r;
   1135     char *yy_c_buf_p;
   1136     int yy_init;
   1137     int yy_start;
   1138     int yy_did_buffer_switch_on_eof;
   1139     int yy_start_stack_ptr;
   1140     int yy_start_stack_depth;
   1141     int *yy_start_stack;
   1142     yy_state_type yy_last_accepting_state;
   1143     char* yy_last_accepting_cpos;
   1144 
   1145     int yylineno_r;
   1146     int yy_flex_debug_r;
   1147 
   1148     char *yytext_r;
   1149     int yy_more_flag;
   1150     int yy_more_len;
   1151 
   1152     YYSTYPE * yylval_r;
   1153 
   1154     }; /* end struct yyguts_t */
   1155 
   1156 static int yy_init_globals (yyscan_t yyscanner );
   1157 
   1158     /* This must go here because YYSTYPE and YYLTYPE are included
   1159      * from bison output in section 1.*/
   1160     #    define yylval yyg->yylval_r
   1161 
   1162 int parse_events_lex_init (yyscan_t* scanner);
   1163 
   1164 int parse_events_lex_init_extra (YY_EXTRA_TYPE user_defined,yyscan_t* scanner);
   1165 
   1166 /* Accessor methods to globals.
   1167    These are made visible to non-reentrant scanners for convenience. */
   1168 
   1169 int parse_events_lex_destroy (yyscan_t yyscanner );
   1170 
   1171 int parse_events_get_debug (yyscan_t yyscanner );
   1172 
   1173 void parse_events_set_debug (int debug_flag ,yyscan_t yyscanner );
   1174 
   1175 YY_EXTRA_TYPE parse_events_get_extra (yyscan_t yyscanner );
   1176 
   1177 void parse_events_set_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner );
   1178 
   1179 FILE *parse_events_get_in (yyscan_t yyscanner );
   1180 
   1181 void parse_events_set_in  (FILE * in_str ,yyscan_t yyscanner );
   1182 
   1183 FILE *parse_events_get_out (yyscan_t yyscanner );
   1184 
   1185 void parse_events_set_out  (FILE * out_str ,yyscan_t yyscanner );
   1186 
   1187 int parse_events_get_leng (yyscan_t yyscanner );
   1188 
   1189 char *parse_events_get_text (yyscan_t yyscanner );
   1190 
   1191 int parse_events_get_lineno (yyscan_t yyscanner );
   1192 
   1193 void parse_events_set_lineno (int line_number ,yyscan_t yyscanner );
   1194 
   1195 YYSTYPE * parse_events_get_lval (yyscan_t yyscanner );
   1196 
   1197 void parse_events_set_lval (YYSTYPE * yylval_param ,yyscan_t yyscanner );
   1198 
   1199 /* Macros after this point can all be overridden by user definitions in
   1200  * section 1.
   1201  */
   1202 
   1203 #ifndef YY_SKIP_YYWRAP
   1204 #ifdef __cplusplus
   1205 extern "C" int parse_events_wrap (yyscan_t yyscanner );
   1206 #else
   1207 extern int parse_events_wrap (yyscan_t yyscanner );
   1208 #endif
   1209 #endif
   1210 
   1211     static void yyunput (int c,char *buf_ptr  ,yyscan_t yyscanner);
   1212 
   1213 #ifndef yytext_ptr
   1214 static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner);
   1215 #endif
   1216 
   1217 #ifdef YY_NEED_STRLEN
   1218 static int yy_flex_strlen (yyconst char * ,yyscan_t yyscanner);
   1219 #endif
   1220 
   1221 #ifndef YY_NO_INPUT
   1222 
   1223 #ifdef __cplusplus
   1224 static int yyinput (yyscan_t yyscanner );
   1225 #else
   1226 static int input (yyscan_t yyscanner );
   1227 #endif
   1228 
   1229 #endif
   1230 
   1231     static void yy_push_state (int new_state ,yyscan_t yyscanner);
   1232 
   1233     static void yy_pop_state (yyscan_t yyscanner );
   1234 
   1235     static int yy_top_state (yyscan_t yyscanner );
   1236 
   1237 /* Amount of stuff to slurp up with each read. */
   1238 #ifndef YY_READ_BUF_SIZE
   1239 #ifdef __ia64__
   1240 /* On IA-64, the buffer size is 16k, not 8k */
   1241 #define YY_READ_BUF_SIZE 16384
   1242 #else
   1243 #define YY_READ_BUF_SIZE 8192
   1244 #endif /* __ia64__ */
   1245 #endif
   1246 
   1247 /* Copy whatever the last rule matched to the standard output. */
   1248 #ifndef ECHO
   1249 /* This used to be an fputs(), but since the string might contain NUL's,
   1250  * we now use fwrite().
   1251  */
   1252 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
   1253 #endif
   1254 
   1255 /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
   1256  * is returned in "result".
   1257  */
   1258 #ifndef YY_INPUT
   1259 #define YY_INPUT(buf,result,max_size) \
   1260 	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
   1261 		{ \
   1262 		int c = '*'; \
   1263 		size_t n; \
   1264 		for ( n = 0; n < max_size && \
   1265 			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
   1266 			buf[n] = (char) c; \
   1267 		if ( c == '\n' ) \
   1268 			buf[n++] = (char) c; \
   1269 		if ( c == EOF && ferror( yyin ) ) \
   1270 			YY_FATAL_ERROR( "input in flex scanner failed" ); \
   1271 		result = n; \
   1272 		} \
   1273 	else \
   1274 		{ \
   1275 		errno=0; \
   1276 		while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
   1277 			{ \
   1278 			if( errno != EINTR) \
   1279 				{ \
   1280 				YY_FATAL_ERROR( "input in flex scanner failed" ); \
   1281 				break; \
   1282 				} \
   1283 			errno=0; \
   1284 			clearerr(yyin); \
   1285 			} \
   1286 		}\
   1287 \
   1288 
   1289 #endif
   1290 
   1291 /* No semi-colon after return; correct usage is to write "yyterminate();" -
   1292  * we don't want an extra ';' after the "return" because that will cause
   1293  * some compilers to complain about unreachable statements.
   1294  */
   1295 #ifndef yyterminate
   1296 #define yyterminate() return YY_NULL
   1297 #endif
   1298 
   1299 /* Number of entries by which start-condition stack grows. */
   1300 #ifndef YY_START_STACK_INCR
   1301 #define YY_START_STACK_INCR 25
   1302 #endif
   1303 
   1304 /* Report a fatal error. */
   1305 #ifndef YY_FATAL_ERROR
   1306 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg , yyscanner)
   1307 #endif
   1308 
   1309 /* end tables serialization structures and prototypes */
   1310 
   1311 /* Default declaration of generated scanner - a define so the user can
   1312  * easily add parameters.
   1313  */
   1314 #ifndef YY_DECL
   1315 #define YY_DECL_IS_OURS 1
   1316 
   1317 extern int parse_events_lex \
   1318                (YYSTYPE * yylval_param ,yyscan_t yyscanner);
   1319 
   1320 #define YY_DECL int parse_events_lex \
   1321                (YYSTYPE * yylval_param , yyscan_t yyscanner)
   1322 #endif /* !YY_DECL */
   1323 
   1324 /* Code executed at the beginning of each rule, after yytext and yyleng
   1325  * have been set up.
   1326  */
   1327 #ifndef YY_USER_ACTION
   1328 #define YY_USER_ACTION
   1329 #endif
   1330 
   1331 /* Code executed at the end of each rule. */
   1332 #ifndef YY_BREAK
   1333 #define YY_BREAK break;
   1334 #endif
   1335 
   1336 #define YY_RULE_SETUP \
   1337 	YY_USER_ACTION
   1338 
   1339 /** The main scanner function which does all the work.
   1340  */
   1341 YY_DECL
   1342 {
   1343 	register yy_state_type yy_current_state;
   1344 	register char *yy_cp, *yy_bp;
   1345 	register int yy_act;
   1346     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   1347 
   1348 #line 89 "util/parse-events.l"
   1349 
   1350 
   1351 
   1352 	{
   1353 		int start_token;
   1354 
   1355 		start_token = parse_events_get_extra(yyscanner);
   1356 
   1357 		if (start_token == PE_START_TERMS)
   1358 			BEGIN(config);
   1359 		else if (start_token == PE_START_EVENTS)
   1360 			BEGIN(event);
   1361 
   1362 		if (start_token) {
   1363 			parse_events_set_extra(NULL, yyscanner);
   1364 			return start_token;
   1365 		}
   1366          }
   1367 
   1368 
   1369 #line 1370 "<stdout>"
   1370 
   1371     yylval = yylval_param;
   1372 
   1373 	if ( !yyg->yy_init )
   1374 		{
   1375 		yyg->yy_init = 1;
   1376 
   1377 #ifdef YY_USER_INIT
   1378 		YY_USER_INIT;
   1379 #endif
   1380 
   1381 		if ( ! yyg->yy_start )
   1382 			yyg->yy_start = 1;	/* first start state */
   1383 
   1384 		if ( ! yyin )
   1385 			yyin = stdin;
   1386 
   1387 		if ( ! yyout )
   1388 			yyout = stdout;
   1389 
   1390 		if ( ! YY_CURRENT_BUFFER ) {
   1391 			parse_events_ensure_buffer_stack (yyscanner);
   1392 			YY_CURRENT_BUFFER_LVALUE =
   1393 				parse_events__create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
   1394 		}
   1395 
   1396 		parse_events__load_buffer_state(yyscanner );
   1397 		}
   1398 
   1399 	while ( 1 )		/* loops until end-of-file is reached */
   1400 		{
   1401 		yy_cp = yyg->yy_c_buf_p;
   1402 
   1403 		/* Support of yytext. */
   1404 		*yy_cp = yyg->yy_hold_char;
   1405 
   1406 		/* yy_bp points to the position in yy_ch_buf of the start of
   1407 		 * the current run.
   1408 		 */
   1409 		yy_bp = yy_cp;
   1410 
   1411 		yy_current_state = yyg->yy_start;
   1412 yy_match:
   1413 		do
   1414 			{
   1415 			register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
   1416 			if ( yy_accept[yy_current_state] )
   1417 				{
   1418 				yyg->yy_last_accepting_state = yy_current_state;
   1419 				yyg->yy_last_accepting_cpos = yy_cp;
   1420 				}
   1421 			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
   1422 				{
   1423 				yy_current_state = (int) yy_def[yy_current_state];
   1424 				if ( yy_current_state >= 900 )
   1425 					yy_c = yy_meta[(unsigned int) yy_c];
   1426 				}
   1427 			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
   1428 			++yy_cp;
   1429 			}
   1430 		while ( yy_base[yy_current_state] != 1305 );
   1431 
   1432 yy_find_action:
   1433 		yy_act = yy_accept[yy_current_state];
   1434 		if ( yy_act == 0 )
   1435 			{ /* have to back up */
   1436 			yy_cp = yyg->yy_last_accepting_cpos;
   1437 			yy_current_state = yyg->yy_last_accepting_state;
   1438 			yy_act = yy_accept[yy_current_state];
   1439 			}
   1440 
   1441 		YY_DO_BEFORE_ACTION;
   1442 
   1443 do_action:	/* This label is used only to access EOF actions. */
   1444 
   1445 		switch ( yy_act )
   1446 	{ /* beginning of action switch */
   1447 			case 0: /* must back up */
   1448 			/* undo the effects of YY_DO_BEFORE_ACTION */
   1449 			*yy_cp = yyg->yy_hold_char;
   1450 			yy_cp = yyg->yy_last_accepting_cpos;
   1451 			yy_current_state = yyg->yy_last_accepting_state;
   1452 			goto yy_find_action;
   1453 
   1454 case 1:
   1455 /* rule 1 can match eol */
   1456 YY_RULE_SETUP
   1457 #line 111 "util/parse-events.l"
   1458 {
   1459 			BEGIN(INITIAL); yyless(0);
   1460 		}
   1461 	YY_BREAK
   1462 case 2:
   1463 /* rule 2 can match eol */
   1464 #line 116 "util/parse-events.l"
   1465 case 3:
   1466 /* rule 3 can match eol */
   1467 YY_RULE_SETUP
   1468 #line 116 "util/parse-events.l"
   1469 {
   1470 			str(yyscanner, PE_EVENT_NAME);
   1471 			BEGIN(INITIAL); yyless(0);
   1472 			return PE_EVENT_NAME;
   1473 		}
   1474 	YY_BREAK
   1475 case 4:
   1476 #line 123 "util/parse-events.l"
   1477 case YY_STATE_EOF(event):
   1478 #line 123 "util/parse-events.l"
   1479 {
   1480 			BEGIN(INITIAL); yyless(0);
   1481 		}
   1482 	YY_BREAK
   1483 
   1484 case 5:
   1485 YY_RULE_SETUP
   1486 #line 129 "util/parse-events.l"
   1487 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_CPU_CYCLES); }
   1488 	YY_BREAK
   1489 case 6:
   1490 YY_RULE_SETUP
   1491 #line 130 "util/parse-events.l"
   1492 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_STALLED_CYCLES_FRONTEND); }
   1493 	YY_BREAK
   1494 case 7:
   1495 YY_RULE_SETUP
   1496 #line 131 "util/parse-events.l"
   1497 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_STALLED_CYCLES_BACKEND); }
   1498 	YY_BREAK
   1499 case 8:
   1500 YY_RULE_SETUP
   1501 #line 132 "util/parse-events.l"
   1502 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_INSTRUCTIONS); }
   1503 	YY_BREAK
   1504 case 9:
   1505 YY_RULE_SETUP
   1506 #line 133 "util/parse-events.l"
   1507 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_CACHE_REFERENCES); }
   1508 	YY_BREAK
   1509 case 10:
   1510 YY_RULE_SETUP
   1511 #line 134 "util/parse-events.l"
   1512 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_CACHE_MISSES); }
   1513 	YY_BREAK
   1514 case 11:
   1515 YY_RULE_SETUP
   1516 #line 135 "util/parse-events.l"
   1517 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_BRANCH_INSTRUCTIONS); }
   1518 	YY_BREAK
   1519 case 12:
   1520 YY_RULE_SETUP
   1521 #line 136 "util/parse-events.l"
   1522 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_BRANCH_MISSES); }
   1523 	YY_BREAK
   1524 case 13:
   1525 YY_RULE_SETUP
   1526 #line 137 "util/parse-events.l"
   1527 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_BUS_CYCLES); }
   1528 	YY_BREAK
   1529 case 14:
   1530 YY_RULE_SETUP
   1531 #line 138 "util/parse-events.l"
   1532 { return sym(yyscanner, PERF_TYPE_HARDWARE, PERF_COUNT_HW_REF_CPU_CYCLES); }
   1533 	YY_BREAK
   1534 case 15:
   1535 YY_RULE_SETUP
   1536 #line 139 "util/parse-events.l"
   1537 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_CPU_CLOCK); }
   1538 	YY_BREAK
   1539 case 16:
   1540 YY_RULE_SETUP
   1541 #line 140 "util/parse-events.l"
   1542 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_TASK_CLOCK); }
   1543 	YY_BREAK
   1544 case 17:
   1545 YY_RULE_SETUP
   1546 #line 141 "util/parse-events.l"
   1547 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_PAGE_FAULTS); }
   1548 	YY_BREAK
   1549 case 18:
   1550 YY_RULE_SETUP
   1551 #line 142 "util/parse-events.l"
   1552 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_PAGE_FAULTS_MIN); }
   1553 	YY_BREAK
   1554 case 19:
   1555 YY_RULE_SETUP
   1556 #line 143 "util/parse-events.l"
   1557 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_PAGE_FAULTS_MAJ); }
   1558 	YY_BREAK
   1559 case 20:
   1560 YY_RULE_SETUP
   1561 #line 144 "util/parse-events.l"
   1562 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_CONTEXT_SWITCHES); }
   1563 	YY_BREAK
   1564 case 21:
   1565 YY_RULE_SETUP
   1566 #line 145 "util/parse-events.l"
   1567 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_CPU_MIGRATIONS); }
   1568 	YY_BREAK
   1569 case 22:
   1570 YY_RULE_SETUP
   1571 #line 146 "util/parse-events.l"
   1572 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_ALIGNMENT_FAULTS); }
   1573 	YY_BREAK
   1574 case 23:
   1575 YY_RULE_SETUP
   1576 #line 147 "util/parse-events.l"
   1577 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_EMULATION_FAULTS); }
   1578 	YY_BREAK
   1579 case 24:
   1580 YY_RULE_SETUP
   1581 #line 148 "util/parse-events.l"
   1582 { return sym(yyscanner, PERF_TYPE_SOFTWARE, PERF_COUNT_SW_DUMMY); }
   1583 	YY_BREAK
   1584 case 25:
   1585 #line 151 "util/parse-events.l"
   1586 case 26:
   1587 #line 152 "util/parse-events.l"
   1588 case 27:
   1589 #line 153 "util/parse-events.l"
   1590 case 28:
   1591 #line 154 "util/parse-events.l"
   1592 case 29:
   1593 #line 155 "util/parse-events.l"
   1594 case 30:
   1595 #line 156 "util/parse-events.l"
   1596 case 31:
   1597 YY_RULE_SETUP
   1598 #line 156 "util/parse-events.l"
   1599 { return str(yyscanner, PE_NAME_CACHE_TYPE); }
   1600 	YY_BREAK
   1601 case 32:
   1602 #line 159 "util/parse-events.l"
   1603 case 33:
   1604 #line 160 "util/parse-events.l"
   1605 case 34:
   1606 #line 161 "util/parse-events.l"
   1607 case 35:
   1608 #line 162 "util/parse-events.l"
   1609 case 36:
   1610 #line 163 "util/parse-events.l"
   1611 case 37:
   1612 YY_RULE_SETUP
   1613 #line 163 "util/parse-events.l"
   1614 { return str(yyscanner, PE_NAME_CACHE_OP_RESULT); }
   1615 	YY_BREAK
   1616 
   1617 case 38:
   1618 YY_RULE_SETUP
   1619 #line 166 "util/parse-events.l"
   1620 { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_CONFIG); }
   1621 	YY_BREAK
   1622 case 39:
   1623 YY_RULE_SETUP
   1624 #line 167 "util/parse-events.l"
   1625 { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_CONFIG1); }
   1626 	YY_BREAK
   1627 case 40:
   1628 YY_RULE_SETUP
   1629 #line 168 "util/parse-events.l"
   1630 { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_CONFIG2); }
   1631 	YY_BREAK
   1632 case 41:
   1633 YY_RULE_SETUP
   1634 #line 169 "util/parse-events.l"
   1635 { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_NAME); }
   1636 	YY_BREAK
   1637 case 42:
   1638 YY_RULE_SETUP
   1639 #line 170 "util/parse-events.l"
   1640 { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_SAMPLE_PERIOD); }
   1641 	YY_BREAK
   1642 case 43:
   1643 YY_RULE_SETUP
   1644 #line 171 "util/parse-events.l"
   1645 { return term(yyscanner, PARSE_EVENTS__TERM_TYPE_BRANCH_SAMPLE_TYPE); }
   1646 	YY_BREAK
   1647 case 44:
   1648 YY_RULE_SETUP
   1649 #line 172 "util/parse-events.l"
   1650 { return ','; }
   1651 	YY_BREAK
   1652 case 45:
   1653 YY_RULE_SETUP
   1654 #line 173 "util/parse-events.l"
   1655 { BEGIN(INITIAL); return '/'; }
   1656 	YY_BREAK
   1657 case 46:
   1658 YY_RULE_SETUP
   1659 #line 174 "util/parse-events.l"
   1660 { return str(yyscanner, PE_NAME); }
   1661 	YY_BREAK
   1662 
   1663 case 47:
   1664 YY_RULE_SETUP
   1665 #line 177 "util/parse-events.l"
   1666 { BEGIN(mem); return PE_PREFIX_MEM; }
   1667 	YY_BREAK
   1668 case 48:
   1669 YY_RULE_SETUP
   1670 #line 178 "util/parse-events.l"
   1671 { return raw(yyscanner); }
   1672 	YY_BREAK
   1673 case 49:
   1674 YY_RULE_SETUP
   1675 #line 179 "util/parse-events.l"
   1676 { return value(yyscanner, 10); }
   1677 	YY_BREAK
   1678 case 50:
   1679 YY_RULE_SETUP
   1680 #line 180 "util/parse-events.l"
   1681 { return value(yyscanner, 16); }
   1682 	YY_BREAK
   1683 case 51:
   1684 YY_RULE_SETUP
   1685 #line 182 "util/parse-events.l"
   1686 { return str(yyscanner, PE_MODIFIER_EVENT); }
   1687 	YY_BREAK
   1688 case 52:
   1689 YY_RULE_SETUP
   1690 #line 183 "util/parse-events.l"
   1691 { return str(yyscanner, PE_NAME); }
   1692 	YY_BREAK
   1693 case 53:
   1694 YY_RULE_SETUP
   1695 #line 184 "util/parse-events.l"
   1696 { BEGIN(config); return '/'; }
   1697 	YY_BREAK
   1698 case 54:
   1699 YY_RULE_SETUP
   1700 #line 185 "util/parse-events.l"
   1701 { return '-'; }
   1702 	YY_BREAK
   1703 case 55:
   1704 YY_RULE_SETUP
   1705 #line 186 "util/parse-events.l"
   1706 { BEGIN(event); return ','; }
   1707 	YY_BREAK
   1708 case 56:
   1709 YY_RULE_SETUP
   1710 #line 187 "util/parse-events.l"
   1711 { return ':'; }
   1712 	YY_BREAK
   1713 case 57:
   1714 YY_RULE_SETUP
   1715 #line 188 "util/parse-events.l"
   1716 { BEGIN(event); return '{'; }
   1717 	YY_BREAK
   1718 case 58:
   1719 YY_RULE_SETUP
   1720 #line 189 "util/parse-events.l"
   1721 { return '}'; }
   1722 	YY_BREAK
   1723 case 59:
   1724 YY_RULE_SETUP
   1725 #line 190 "util/parse-events.l"
   1726 { return '='; }
   1727 	YY_BREAK
   1728 case 60:
   1729 /* rule 60 can match eol */
   1730 YY_RULE_SETUP
   1731 #line 191 "util/parse-events.l"
   1732 { }
   1733 	YY_BREAK
   1734 
   1735 case 61:
   1736 YY_RULE_SETUP
   1737 #line 194 "util/parse-events.l"
   1738 { return str(yyscanner, PE_MODIFIER_BP); }
   1739 	YY_BREAK
   1740 case 62:
   1741 YY_RULE_SETUP
   1742 #line 195 "util/parse-events.l"
   1743 { return ':'; }
   1744 	YY_BREAK
   1745 case 63:
   1746 YY_RULE_SETUP
   1747 #line 196 "util/parse-events.l"
   1748 { return value(yyscanner, 10); }
   1749 	YY_BREAK
   1750 case 64:
   1751 YY_RULE_SETUP
   1752 #line 197 "util/parse-events.l"
   1753 { return value(yyscanner, 16); }
   1754 	YY_BREAK
   1755 /*
   1756 	 * We need to separate 'mem:' scanner part, in order to get specific
   1757 	 * modifier bits parsed out. Otherwise we would need to handle PE_NAME
   1758 	 * and we'd need to parse it manually. During the escape from <mem>
   1759 	 * state we need to put the escaping char back, so we dont miss it.
   1760 	 */
   1761 case 65:
   1762 YY_RULE_SETUP
   1763 #line 204 "util/parse-events.l"
   1764 { unput(*yytext); BEGIN(INITIAL); }
   1765 	YY_BREAK
   1766 /*
   1767 	 * We destroy the scanner after reaching EOF,
   1768 	 * but anyway just to be sure get back to INIT state.
   1769 	 */
   1770 case YY_STATE_EOF(mem):
   1771 #line 209 "util/parse-events.l"
   1772 { BEGIN(INITIAL); }
   1773 	YY_BREAK
   1774 
   1775 case 66:
   1776 YY_RULE_SETUP
   1777 #line 212 "util/parse-events.l"
   1778 ECHO;
   1779 	YY_BREAK
   1780 #line 1781 "<stdout>"
   1781 case YY_STATE_EOF(INITIAL):
   1782 case YY_STATE_EOF(config):
   1783 	yyterminate();
   1784 
   1785 	case YY_END_OF_BUFFER:
   1786 		{
   1787 		/* Amount of text matched not including the EOB char. */
   1788 		int yy_amount_of_matched_text = (int) (yy_cp - yyg->yytext_ptr) - 1;
   1789 
   1790 		/* Undo the effects of YY_DO_BEFORE_ACTION. */
   1791 		*yy_cp = yyg->yy_hold_char;
   1792 		YY_RESTORE_YY_MORE_OFFSET
   1793 
   1794 		if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
   1795 			{
   1796 			/* We're scanning a new file or input source.  It's
   1797 			 * possible that this happened because the user
   1798 			 * just pointed yyin at a new source and called
   1799 			 * parse_events_lex().  If so, then we have to assure
   1800 			 * consistency between YY_CURRENT_BUFFER and our
   1801 			 * globals.  Here is the right place to do so, because
   1802 			 * this is the first action (other than possibly a
   1803 			 * back-up) that will match for the new input source.
   1804 			 */
   1805 			yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
   1806 			YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
   1807 			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
   1808 			}
   1809 
   1810 		/* Note that here we test for yy_c_buf_p "<=" to the position
   1811 		 * of the first EOB in the buffer, since yy_c_buf_p will
   1812 		 * already have been incremented past the NUL character
   1813 		 * (since all states make transitions on EOB to the
   1814 		 * end-of-buffer state).  Contrast this with the test
   1815 		 * in input().
   1816 		 */
   1817 		if ( yyg->yy_c_buf_p <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] )
   1818 			{ /* This was really a NUL. */
   1819 			yy_state_type yy_next_state;
   1820 
   1821 			yyg->yy_c_buf_p = yyg->yytext_ptr + yy_amount_of_matched_text;
   1822 
   1823 			yy_current_state = yy_get_previous_state( yyscanner );
   1824 
   1825 			/* Okay, we're now positioned to make the NUL
   1826 			 * transition.  We couldn't have
   1827 			 * yy_get_previous_state() go ahead and do it
   1828 			 * for us because it doesn't know how to deal
   1829 			 * with the possibility of jamming (and we don't
   1830 			 * want to build jamming into it because then it
   1831 			 * will run more slowly).
   1832 			 */
   1833 
   1834 			yy_next_state = yy_try_NUL_trans( yy_current_state , yyscanner);
   1835 
   1836 			yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
   1837 
   1838 			if ( yy_next_state )
   1839 				{
   1840 				/* Consume the NUL. */
   1841 				yy_cp = ++yyg->yy_c_buf_p;
   1842 				yy_current_state = yy_next_state;
   1843 				goto yy_match;
   1844 				}
   1845 
   1846 			else
   1847 				{
   1848 				yy_cp = yyg->yy_c_buf_p;
   1849 				goto yy_find_action;
   1850 				}
   1851 			}
   1852 
   1853 		else switch ( yy_get_next_buffer( yyscanner ) )
   1854 			{
   1855 			case EOB_ACT_END_OF_FILE:
   1856 				{
   1857 				yyg->yy_did_buffer_switch_on_eof = 0;
   1858 
   1859 				if ( parse_events_wrap(yyscanner ) )
   1860 					{
   1861 					/* Note: because we've taken care in
   1862 					 * yy_get_next_buffer() to have set up
   1863 					 * yytext, we can now set up
   1864 					 * yy_c_buf_p so that if some total
   1865 					 * hoser (like flex itself) wants to
   1866 					 * call the scanner after we return the
   1867 					 * YY_NULL, it'll still work - another
   1868 					 * YY_NULL will get returned.
   1869 					 */
   1870 					yyg->yy_c_buf_p = yyg->yytext_ptr + YY_MORE_ADJ;
   1871 
   1872 					yy_act = YY_STATE_EOF(YY_START);
   1873 					goto do_action;
   1874 					}
   1875 
   1876 				else
   1877 					{
   1878 					if ( ! yyg->yy_did_buffer_switch_on_eof )
   1879 						YY_NEW_FILE;
   1880 					}
   1881 				break;
   1882 				}
   1883 
   1884 			case EOB_ACT_CONTINUE_SCAN:
   1885 				yyg->yy_c_buf_p =
   1886 					yyg->yytext_ptr + yy_amount_of_matched_text;
   1887 
   1888 				yy_current_state = yy_get_previous_state( yyscanner );
   1889 
   1890 				yy_cp = yyg->yy_c_buf_p;
   1891 				yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
   1892 				goto yy_match;
   1893 
   1894 			case EOB_ACT_LAST_MATCH:
   1895 				yyg->yy_c_buf_p =
   1896 				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars];
   1897 
   1898 				yy_current_state = yy_get_previous_state( yyscanner );
   1899 
   1900 				yy_cp = yyg->yy_c_buf_p;
   1901 				yy_bp = yyg->yytext_ptr + YY_MORE_ADJ;
   1902 				goto yy_find_action;
   1903 			}
   1904 		break;
   1905 		}
   1906 
   1907 	default:
   1908 		YY_FATAL_ERROR(
   1909 			"fatal flex scanner internal error--no action found" );
   1910 	} /* end of action switch */
   1911 		} /* end of scanning one token */
   1912 } /* end of parse_events_lex */
   1913 
   1914 /* yy_get_next_buffer - try to read in a new buffer
   1915  *
   1916  * Returns a code representing an action:
   1917  *	EOB_ACT_LAST_MATCH -
   1918  *	EOB_ACT_CONTINUE_SCAN - continue scanning from current position
   1919  *	EOB_ACT_END_OF_FILE - end of file
   1920  */
   1921 static int yy_get_next_buffer (yyscan_t yyscanner)
   1922 {
   1923     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   1924 	register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
   1925 	register char *source = yyg->yytext_ptr;
   1926 	register int number_to_move, i;
   1927 	int ret_val;
   1928 
   1929 	if ( yyg->yy_c_buf_p > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] )
   1930 		YY_FATAL_ERROR(
   1931 		"fatal flex scanner internal error--end of buffer missed" );
   1932 
   1933 	if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
   1934 		{ /* Don't try to fill the buffer, so this is an EOF. */
   1935 		if ( yyg->yy_c_buf_p - yyg->yytext_ptr - YY_MORE_ADJ == 1 )
   1936 			{
   1937 			/* We matched a single character, the EOB, so
   1938 			 * treat this as a final EOF.
   1939 			 */
   1940 			return EOB_ACT_END_OF_FILE;
   1941 			}
   1942 
   1943 		else
   1944 			{
   1945 			/* We matched some text prior to the EOB, first
   1946 			 * process it.
   1947 			 */
   1948 			return EOB_ACT_LAST_MATCH;
   1949 			}
   1950 		}
   1951 
   1952 	/* Try to read more data. */
   1953 
   1954 	/* First move last chars to start of buffer. */
   1955 	number_to_move = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr) - 1;
   1956 
   1957 	for ( i = 0; i < number_to_move; ++i )
   1958 		*(dest++) = *(source++);
   1959 
   1960 	if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
   1961 		/* don't do the read, it's not guaranteed to return an EOF,
   1962 		 * just force an EOF
   1963 		 */
   1964 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars = 0;
   1965 
   1966 	else
   1967 		{
   1968 			int num_to_read =
   1969 			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
   1970 
   1971 		while ( num_to_read <= 0 )
   1972 			{ /* Not enough room in the buffer - grow it. */
   1973 
   1974 			/* just a shorter name for the current buffer */
   1975 			YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
   1976 
   1977 			int yy_c_buf_p_offset =
   1978 				(int) (yyg->yy_c_buf_p - b->yy_ch_buf);
   1979 
   1980 			if ( b->yy_is_our_buffer )
   1981 				{
   1982 				int new_size = b->yy_buf_size * 2;
   1983 
   1984 				if ( new_size <= 0 )
   1985 					b->yy_buf_size += b->yy_buf_size / 8;
   1986 				else
   1987 					b->yy_buf_size *= 2;
   1988 
   1989 				b->yy_ch_buf = (char *)
   1990 					/* Include room in for 2 EOB chars. */
   1991 					parse_events_realloc((void *) b->yy_ch_buf,b->yy_buf_size + 2 ,yyscanner );
   1992 				}
   1993 			else
   1994 				/* Can't grow it, we don't own it. */
   1995 				b->yy_ch_buf = 0;
   1996 
   1997 			if ( ! b->yy_ch_buf )
   1998 				YY_FATAL_ERROR(
   1999 				"fatal error - scanner input buffer overflow" );
   2000 
   2001 			yyg->yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
   2002 
   2003 			num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
   2004 						number_to_move - 1;
   2005 
   2006 			}
   2007 
   2008 		if ( num_to_read > YY_READ_BUF_SIZE )
   2009 			num_to_read = YY_READ_BUF_SIZE;
   2010 
   2011 		/* Read in more data. */
   2012 		YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
   2013 			yyg->yy_n_chars, (size_t) num_to_read );
   2014 
   2015 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
   2016 		}
   2017 
   2018 	if ( yyg->yy_n_chars == 0 )
   2019 		{
   2020 		if ( number_to_move == YY_MORE_ADJ )
   2021 			{
   2022 			ret_val = EOB_ACT_END_OF_FILE;
   2023 			parse_events_restart(yyin  ,yyscanner);
   2024 			}
   2025 
   2026 		else
   2027 			{
   2028 			ret_val = EOB_ACT_LAST_MATCH;
   2029 			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
   2030 				YY_BUFFER_EOF_PENDING;
   2031 			}
   2032 		}
   2033 
   2034 	else
   2035 		ret_val = EOB_ACT_CONTINUE_SCAN;
   2036 
   2037 	if ((yy_size_t) (yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
   2038 		/* Extend the array by 50%, plus the number we really need. */
   2039 		yy_size_t new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1);
   2040 		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) parse_events_realloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ,yyscanner );
   2041 		if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
   2042 			YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
   2043 	}
   2044 
   2045 	yyg->yy_n_chars += number_to_move;
   2046 	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] = YY_END_OF_BUFFER_CHAR;
   2047 	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
   2048 
   2049 	yyg->yytext_ptr = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
   2050 
   2051 	return ret_val;
   2052 }
   2053 
   2054 /* yy_get_previous_state - get the state just before the EOB char was reached */
   2055 
   2056     static yy_state_type yy_get_previous_state (yyscan_t yyscanner)
   2057 {
   2058 	register yy_state_type yy_current_state;
   2059 	register char *yy_cp;
   2060     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2061 
   2062 	yy_current_state = yyg->yy_start;
   2063 
   2064 	for ( yy_cp = yyg->yytext_ptr + YY_MORE_ADJ; yy_cp < yyg->yy_c_buf_p; ++yy_cp )
   2065 		{
   2066 		register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
   2067 		if ( yy_accept[yy_current_state] )
   2068 			{
   2069 			yyg->yy_last_accepting_state = yy_current_state;
   2070 			yyg->yy_last_accepting_cpos = yy_cp;
   2071 			}
   2072 		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
   2073 			{
   2074 			yy_current_state = (int) yy_def[yy_current_state];
   2075 			if ( yy_current_state >= 900 )
   2076 				yy_c = yy_meta[(unsigned int) yy_c];
   2077 			}
   2078 		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
   2079 		}
   2080 
   2081 	return yy_current_state;
   2082 }
   2083 
   2084 /* yy_try_NUL_trans - try to make a transition on the NUL character
   2085  *
   2086  * synopsis
   2087  *	next_state = yy_try_NUL_trans( current_state );
   2088  */
   2089     static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state , yyscan_t yyscanner)
   2090 {
   2091 	register int yy_is_jam;
   2092     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */
   2093 	register char *yy_cp = yyg->yy_c_buf_p;
   2094 
   2095 	register YY_CHAR yy_c = 1;
   2096 	if ( yy_accept[yy_current_state] )
   2097 		{
   2098 		yyg->yy_last_accepting_state = yy_current_state;
   2099 		yyg->yy_last_accepting_cpos = yy_cp;
   2100 		}
   2101 	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
   2102 		{
   2103 		yy_current_state = (int) yy_def[yy_current_state];
   2104 		if ( yy_current_state >= 900 )
   2105 			yy_c = yy_meta[(unsigned int) yy_c];
   2106 		}
   2107 	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
   2108 	yy_is_jam = (yy_current_state == 899);
   2109 
   2110 	return yy_is_jam ? 0 : yy_current_state;
   2111 }
   2112 
   2113     static void yyunput (int c, register char * yy_bp , yyscan_t yyscanner)
   2114 {
   2115 	register char *yy_cp;
   2116     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2117 
   2118     yy_cp = yyg->yy_c_buf_p;
   2119 
   2120 	/* undo effects of setting up yytext */
   2121 	*yy_cp = yyg->yy_hold_char;
   2122 
   2123 	if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
   2124 		{ /* need to shift things up to make room */
   2125 		/* +2 for EOB chars. */
   2126 		register int number_to_move = yyg->yy_n_chars + 2;
   2127 		register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
   2128 					YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
   2129 		register char *source =
   2130 				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
   2131 
   2132 		while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
   2133 			*--dest = *--source;
   2134 
   2135 		yy_cp += (int) (dest - source);
   2136 		yy_bp += (int) (dest - source);
   2137 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
   2138 			yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
   2139 
   2140 		if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
   2141 			YY_FATAL_ERROR( "flex scanner push-back overflow" );
   2142 		}
   2143 
   2144 	*--yy_cp = (char) c;
   2145 
   2146 	yyg->yytext_ptr = yy_bp;
   2147 	yyg->yy_hold_char = *yy_cp;
   2148 	yyg->yy_c_buf_p = yy_cp;
   2149 }
   2150 
   2151 #ifndef YY_NO_INPUT
   2152 #ifdef __cplusplus
   2153     static int yyinput (yyscan_t yyscanner)
   2154 #else
   2155     static int input  (yyscan_t yyscanner)
   2156 #endif
   2157 
   2158 {
   2159 	int c;
   2160     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2161 
   2162 	*yyg->yy_c_buf_p = yyg->yy_hold_char;
   2163 
   2164 	if ( *yyg->yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
   2165 		{
   2166 		/* yy_c_buf_p now points to the character we want to return.
   2167 		 * If this occurs *before* the EOB characters, then it's a
   2168 		 * valid NUL; if not, then we've hit the end of the buffer.
   2169 		 */
   2170 		if ( yyg->yy_c_buf_p < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars] )
   2171 			/* This was really a NUL. */
   2172 			*yyg->yy_c_buf_p = '\0';
   2173 
   2174 		else
   2175 			{ /* need more input */
   2176 			int offset = yyg->yy_c_buf_p - yyg->yytext_ptr;
   2177 			++yyg->yy_c_buf_p;
   2178 
   2179 			switch ( yy_get_next_buffer( yyscanner ) )
   2180 				{
   2181 				case EOB_ACT_LAST_MATCH:
   2182 					/* This happens because yy_g_n_b()
   2183 					 * sees that we've accumulated a
   2184 					 * token and flags that we need to
   2185 					 * try matching the token before
   2186 					 * proceeding.  But for input(),
   2187 					 * there's no matching to consider.
   2188 					 * So convert the EOB_ACT_LAST_MATCH
   2189 					 * to EOB_ACT_END_OF_FILE.
   2190 					 */
   2191 
   2192 					/* Reset buffer status. */
   2193 					parse_events_restart(yyin ,yyscanner);
   2194 
   2195 					/*FALLTHROUGH*/
   2196 
   2197 				case EOB_ACT_END_OF_FILE:
   2198 					{
   2199 					if ( parse_events_wrap(yyscanner ) )
   2200 						return EOF;
   2201 
   2202 					if ( ! yyg->yy_did_buffer_switch_on_eof )
   2203 						YY_NEW_FILE;
   2204 #ifdef __cplusplus
   2205 					return yyinput(yyscanner);
   2206 #else
   2207 					return input(yyscanner);
   2208 #endif
   2209 					}
   2210 
   2211 				case EOB_ACT_CONTINUE_SCAN:
   2212 					yyg->yy_c_buf_p = yyg->yytext_ptr + offset;
   2213 					break;
   2214 				}
   2215 			}
   2216 		}
   2217 
   2218 	c = *(unsigned char *) yyg->yy_c_buf_p;	/* cast for 8-bit char's */
   2219 	*yyg->yy_c_buf_p = '\0';	/* preserve yytext */
   2220 	yyg->yy_hold_char = *++yyg->yy_c_buf_p;
   2221 
   2222 	return c;
   2223 }
   2224 #endif	/* ifndef YY_NO_INPUT */
   2225 
   2226 /** Immediately switch to a different input stream.
   2227  * @param input_file A readable stream.
   2228  * @param yyscanner The scanner object.
   2229  * @note This function does not reset the start condition to @c INITIAL .
   2230  */
   2231     void parse_events_restart  (FILE * input_file , yyscan_t yyscanner)
   2232 {
   2233     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2234 
   2235 	if ( ! YY_CURRENT_BUFFER ){
   2236         parse_events_ensure_buffer_stack (yyscanner);
   2237 		YY_CURRENT_BUFFER_LVALUE =
   2238             parse_events__create_buffer(yyin,YY_BUF_SIZE ,yyscanner);
   2239 	}
   2240 
   2241 	parse_events__init_buffer(YY_CURRENT_BUFFER,input_file ,yyscanner);
   2242 	parse_events__load_buffer_state(yyscanner );
   2243 }
   2244 
   2245 /** Switch to a different input buffer.
   2246  * @param new_buffer The new input buffer.
   2247  * @param yyscanner The scanner object.
   2248  */
   2249     void parse_events__switch_to_buffer  (YY_BUFFER_STATE  new_buffer , yyscan_t yyscanner)
   2250 {
   2251     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2252 
   2253 	/* TODO. We should be able to replace this entire function body
   2254 	 * with
   2255 	 *		parse_events_pop_buffer_state();
   2256 	 *		parse_events_push_buffer_state(new_buffer);
   2257      */
   2258 	parse_events_ensure_buffer_stack (yyscanner);
   2259 	if ( YY_CURRENT_BUFFER == new_buffer )
   2260 		return;
   2261 
   2262 	if ( YY_CURRENT_BUFFER )
   2263 		{
   2264 		/* Flush out information for old buffer. */
   2265 		*yyg->yy_c_buf_p = yyg->yy_hold_char;
   2266 		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
   2267 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
   2268 		}
   2269 
   2270 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
   2271 	parse_events__load_buffer_state(yyscanner );
   2272 
   2273 	/* We don't actually know whether we did this switch during
   2274 	 * EOF (parse_events_wrap()) processing, but the only time this flag
   2275 	 * is looked at is after parse_events_wrap() is called, so it's safe
   2276 	 * to go ahead and always set it.
   2277 	 */
   2278 	yyg->yy_did_buffer_switch_on_eof = 1;
   2279 }
   2280 
   2281 static void parse_events__load_buffer_state  (yyscan_t yyscanner)
   2282 {
   2283     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2284 	yyg->yy_n_chars = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
   2285 	yyg->yytext_ptr = yyg->yy_c_buf_p = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
   2286 	yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
   2287 	yyg->yy_hold_char = *yyg->yy_c_buf_p;
   2288 }
   2289 
   2290 /** Allocate and initialize an input buffer state.
   2291  * @param file A readable stream.
   2292  * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
   2293  * @param yyscanner The scanner object.
   2294  * @return the allocated buffer state.
   2295  */
   2296     YY_BUFFER_STATE parse_events__create_buffer  (FILE * file, int  size , yyscan_t yyscanner)
   2297 {
   2298 	YY_BUFFER_STATE b;
   2299 
   2300 	b = (YY_BUFFER_STATE) parse_events_alloc(sizeof( struct yy_buffer_state ) ,yyscanner );
   2301 	if ( ! b )
   2302 		YY_FATAL_ERROR( "out of dynamic memory in parse_events__create_buffer()" );
   2303 
   2304 	b->yy_buf_size = size;
   2305 
   2306 	/* yy_ch_buf has to be 2 characters longer than the size given because
   2307 	 * we need to put in 2 end-of-buffer characters.
   2308 	 */
   2309 	b->yy_ch_buf = (char *) parse_events_alloc(b->yy_buf_size + 2 ,yyscanner );
   2310 	if ( ! b->yy_ch_buf )
   2311 		YY_FATAL_ERROR( "out of dynamic memory in parse_events__create_buffer()" );
   2312 
   2313 	b->yy_is_our_buffer = 1;
   2314 
   2315 	parse_events__init_buffer(b,file ,yyscanner);
   2316 
   2317 	return b;
   2318 }
   2319 
   2320 /** Destroy the buffer.
   2321  * @param b a buffer created with parse_events__create_buffer()
   2322  * @param yyscanner The scanner object.
   2323  */
   2324     void parse_events__delete_buffer (YY_BUFFER_STATE  b , yyscan_t yyscanner)
   2325 {
   2326     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2327 
   2328 	if ( ! b )
   2329 		return;
   2330 
   2331 	if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
   2332 		YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
   2333 
   2334 	if ( b->yy_is_our_buffer )
   2335 		parse_events_free((void *) b->yy_ch_buf ,yyscanner );
   2336 
   2337 	parse_events_free((void *) b ,yyscanner );
   2338 }
   2339 
   2340 #ifndef __cplusplus
   2341 extern int isatty (int );
   2342 #endif /* __cplusplus */
   2343 
   2344 /* Initializes or reinitializes a buffer.
   2345  * This function is sometimes called more than once on the same buffer,
   2346  * such as during a parse_events_restart() or at EOF.
   2347  */
   2348     static void parse_events__init_buffer  (YY_BUFFER_STATE  b, FILE * file , yyscan_t yyscanner)
   2349 
   2350 {
   2351 	int oerrno = errno;
   2352     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2353 
   2354 	parse_events__flush_buffer(b ,yyscanner);
   2355 
   2356 	b->yy_input_file = file;
   2357 	b->yy_fill_buffer = 1;
   2358 
   2359     /* If b is the current buffer, then parse_events__init_buffer was _probably_
   2360      * called from parse_events_restart() or through yy_get_next_buffer.
   2361      * In that case, we don't want to reset the lineno or column.
   2362      */
   2363     if (b != YY_CURRENT_BUFFER){
   2364         b->yy_bs_lineno = 1;
   2365         b->yy_bs_column = 0;
   2366     }
   2367 
   2368         b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
   2369 
   2370 	errno = oerrno;
   2371 }
   2372 
   2373 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
   2374  * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
   2375  * @param yyscanner The scanner object.
   2376  */
   2377     void parse_events__flush_buffer (YY_BUFFER_STATE  b , yyscan_t yyscanner)
   2378 {
   2379     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2380 	if ( ! b )
   2381 		return;
   2382 
   2383 	b->yy_n_chars = 0;
   2384 
   2385 	/* We always need two end-of-buffer characters.  The first causes
   2386 	 * a transition to the end-of-buffer state.  The second causes
   2387 	 * a jam in that state.
   2388 	 */
   2389 	b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
   2390 	b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
   2391 
   2392 	b->yy_buf_pos = &b->yy_ch_buf[0];
   2393 
   2394 	b->yy_at_bol = 1;
   2395 	b->yy_buffer_status = YY_BUFFER_NEW;
   2396 
   2397 	if ( b == YY_CURRENT_BUFFER )
   2398 		parse_events__load_buffer_state(yyscanner );
   2399 }
   2400 
   2401 /** Pushes the new state onto the stack. The new state becomes
   2402  *  the current state. This function will allocate the stack
   2403  *  if necessary.
   2404  *  @param new_buffer The new state.
   2405  *  @param yyscanner The scanner object.
   2406  */
   2407 void parse_events_push_buffer_state (YY_BUFFER_STATE new_buffer , yyscan_t yyscanner)
   2408 {
   2409     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2410 	if (new_buffer == NULL)
   2411 		return;
   2412 
   2413 	parse_events_ensure_buffer_stack(yyscanner);
   2414 
   2415 	/* This block is copied from parse_events__switch_to_buffer. */
   2416 	if ( YY_CURRENT_BUFFER )
   2417 		{
   2418 		/* Flush out information for old buffer. */
   2419 		*yyg->yy_c_buf_p = yyg->yy_hold_char;
   2420 		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = yyg->yy_c_buf_p;
   2421 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
   2422 		}
   2423 
   2424 	/* Only push if top exists. Otherwise, replace top. */
   2425 	if (YY_CURRENT_BUFFER)
   2426 		yyg->yy_buffer_stack_top++;
   2427 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
   2428 
   2429 	/* copied from parse_events__switch_to_buffer. */
   2430 	parse_events__load_buffer_state(yyscanner );
   2431 	yyg->yy_did_buffer_switch_on_eof = 1;
   2432 }
   2433 
   2434 /** Removes and deletes the top of the stack, if present.
   2435  *  The next element becomes the new top.
   2436  *  @param yyscanner The scanner object.
   2437  */
   2438 void parse_events_pop_buffer_state (yyscan_t yyscanner)
   2439 {
   2440     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2441 	if (!YY_CURRENT_BUFFER)
   2442 		return;
   2443 
   2444 	parse_events__delete_buffer(YY_CURRENT_BUFFER ,yyscanner);
   2445 	YY_CURRENT_BUFFER_LVALUE = NULL;
   2446 	if (yyg->yy_buffer_stack_top > 0)
   2447 		--yyg->yy_buffer_stack_top;
   2448 
   2449 	if (YY_CURRENT_BUFFER) {
   2450 		parse_events__load_buffer_state(yyscanner );
   2451 		yyg->yy_did_buffer_switch_on_eof = 1;
   2452 	}
   2453 }
   2454 
   2455 /* Allocates the stack if it does not exist.
   2456  *  Guarantees space for at least one push.
   2457  */
   2458 static void parse_events_ensure_buffer_stack (yyscan_t yyscanner)
   2459 {
   2460 	int num_to_alloc;
   2461     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2462 
   2463 	if (!yyg->yy_buffer_stack) {
   2464 
   2465 		/* First allocation is just for 2 elements, since we don't know if this
   2466 		 * scanner will even need a stack. We use 2 instead of 1 to avoid an
   2467 		 * immediate realloc on the next call.
   2468          */
   2469 		num_to_alloc = 1;
   2470 		yyg->yy_buffer_stack = (struct yy_buffer_state**)parse_events_alloc
   2471 								(num_to_alloc * sizeof(struct yy_buffer_state*)
   2472 								, yyscanner);
   2473 		if ( ! yyg->yy_buffer_stack )
   2474 			YY_FATAL_ERROR( "out of dynamic memory in parse_events_ensure_buffer_stack()" );
   2475 
   2476 		memset(yyg->yy_buffer_stack, 0, num_to_alloc * sizeof(struct yy_buffer_state*));
   2477 
   2478 		yyg->yy_buffer_stack_max = num_to_alloc;
   2479 		yyg->yy_buffer_stack_top = 0;
   2480 		return;
   2481 	}
   2482 
   2483 	if (yyg->yy_buffer_stack_top >= (yyg->yy_buffer_stack_max) - 1){
   2484 
   2485 		/* Increase the buffer to prepare for a possible push. */
   2486 		int grow_size = 8 /* arbitrary grow size */;
   2487 
   2488 		num_to_alloc = yyg->yy_buffer_stack_max + grow_size;
   2489 		yyg->yy_buffer_stack = (struct yy_buffer_state**)parse_events_realloc
   2490 								(yyg->yy_buffer_stack,
   2491 								num_to_alloc * sizeof(struct yy_buffer_state*)
   2492 								, yyscanner);
   2493 		if ( ! yyg->yy_buffer_stack )
   2494 			YY_FATAL_ERROR( "out of dynamic memory in parse_events_ensure_buffer_stack()" );
   2495 
   2496 		/* zero only the new slots.*/
   2497 		memset(yyg->yy_buffer_stack + yyg->yy_buffer_stack_max, 0, grow_size * sizeof(struct yy_buffer_state*));
   2498 		yyg->yy_buffer_stack_max = num_to_alloc;
   2499 	}
   2500 }
   2501 
   2502 /** Setup the input buffer state to scan directly from a user-specified character buffer.
   2503  * @param base the character buffer
   2504  * @param size the size in bytes of the character buffer
   2505  * @param yyscanner The scanner object.
   2506  * @return the newly allocated buffer state object.
   2507  */
   2508 YY_BUFFER_STATE parse_events__scan_buffer  (char * base, yy_size_t  size , yyscan_t yyscanner)
   2509 {
   2510 	YY_BUFFER_STATE b;
   2511 
   2512 	if ( size < 2 ||
   2513 	     base[size-2] != YY_END_OF_BUFFER_CHAR ||
   2514 	     base[size-1] != YY_END_OF_BUFFER_CHAR )
   2515 		/* They forgot to leave room for the EOB's. */
   2516 		return 0;
   2517 
   2518 	b = (YY_BUFFER_STATE) parse_events_alloc(sizeof( struct yy_buffer_state ) ,yyscanner );
   2519 	if ( ! b )
   2520 		YY_FATAL_ERROR( "out of dynamic memory in parse_events__scan_buffer()" );
   2521 
   2522 	b->yy_buf_size = size - 2;	/* "- 2" to take care of EOB's */
   2523 	b->yy_buf_pos = b->yy_ch_buf = base;
   2524 	b->yy_is_our_buffer = 0;
   2525 	b->yy_input_file = 0;
   2526 	b->yy_n_chars = b->yy_buf_size;
   2527 	b->yy_is_interactive = 0;
   2528 	b->yy_at_bol = 1;
   2529 	b->yy_fill_buffer = 0;
   2530 	b->yy_buffer_status = YY_BUFFER_NEW;
   2531 
   2532 	parse_events__switch_to_buffer(b ,yyscanner );
   2533 
   2534 	return b;
   2535 }
   2536 
   2537 /** Setup the input buffer state to scan a string. The next call to parse_events_lex() will
   2538  * scan from a @e copy of @a str.
   2539  * @param yystr a NUL-terminated string to scan
   2540  * @param yyscanner The scanner object.
   2541  * @return the newly allocated buffer state object.
   2542  * @note If you want to scan bytes that may contain NUL values, then use
   2543  *       parse_events__scan_bytes() instead.
   2544  */
   2545 YY_BUFFER_STATE parse_events__scan_string (yyconst char * yystr , yyscan_t yyscanner)
   2546 {
   2547 
   2548 	return parse_events__scan_bytes(yystr,strlen(yystr) ,yyscanner);
   2549 }
   2550 
   2551 /** Setup the input buffer state to scan the given bytes. The next call to parse_events_lex() will
   2552  * scan from a @e copy of @a bytes.
   2553  * @param yybytes the byte buffer to scan
   2554  * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
   2555  * @param yyscanner The scanner object.
   2556  * @return the newly allocated buffer state object.
   2557  */
   2558 YY_BUFFER_STATE parse_events__scan_bytes  (yyconst char * yybytes, int  _yybytes_len , yyscan_t yyscanner)
   2559 {
   2560 	YY_BUFFER_STATE b;
   2561 	char *buf;
   2562 	yy_size_t n;
   2563 	int i;
   2564 
   2565 	/* Get memory for full buffer, including space for trailing EOB's. */
   2566 	n = _yybytes_len + 2;
   2567 	buf = (char *) parse_events_alloc(n ,yyscanner );
   2568 	if ( ! buf )
   2569 		YY_FATAL_ERROR( "out of dynamic memory in parse_events__scan_bytes()" );
   2570 
   2571 	for ( i = 0; i < _yybytes_len; ++i )
   2572 		buf[i] = yybytes[i];
   2573 
   2574 	buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
   2575 
   2576 	b = parse_events__scan_buffer(buf,n ,yyscanner);
   2577 	if ( ! b )
   2578 		YY_FATAL_ERROR( "bad buffer in parse_events__scan_bytes()" );
   2579 
   2580 	/* It's okay to grow etc. this buffer, and we should throw it
   2581 	 * away when we're done.
   2582 	 */
   2583 	b->yy_is_our_buffer = 1;
   2584 
   2585 	return b;
   2586 }
   2587 
   2588     static void yy_push_state (int  new_state , yyscan_t yyscanner)
   2589 {
   2590     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2591 	if ( yyg->yy_start_stack_ptr >= yyg->yy_start_stack_depth )
   2592 		{
   2593 		yy_size_t new_size;
   2594 
   2595 		yyg->yy_start_stack_depth += YY_START_STACK_INCR;
   2596 		new_size = yyg->yy_start_stack_depth * sizeof( int );
   2597 
   2598 		if ( ! yyg->yy_start_stack )
   2599 			yyg->yy_start_stack = (int *) parse_events_alloc(new_size ,yyscanner );
   2600 
   2601 		else
   2602 			yyg->yy_start_stack = (int *) parse_events_realloc((void *) yyg->yy_start_stack,new_size ,yyscanner );
   2603 
   2604 		if ( ! yyg->yy_start_stack )
   2605 			YY_FATAL_ERROR( "out of memory expanding start-condition stack" );
   2606 		}
   2607 
   2608 	yyg->yy_start_stack[yyg->yy_start_stack_ptr++] = YY_START;
   2609 
   2610 	BEGIN(new_state);
   2611 }
   2612 
   2613     static void yy_pop_state  (yyscan_t yyscanner)
   2614 {
   2615     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2616 	if ( --yyg->yy_start_stack_ptr < 0 )
   2617 		YY_FATAL_ERROR( "start-condition stack underflow" );
   2618 
   2619 	BEGIN(yyg->yy_start_stack[yyg->yy_start_stack_ptr]);
   2620 }
   2621 
   2622     static int yy_top_state  (yyscan_t yyscanner)
   2623 {
   2624     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2625 	return yyg->yy_start_stack[yyg->yy_start_stack_ptr - 1];
   2626 }
   2627 
   2628 #ifndef YY_EXIT_FAILURE
   2629 #define YY_EXIT_FAILURE 2
   2630 #endif
   2631 
   2632 static void yy_fatal_error (yyconst char* msg , yyscan_t yyscanner)
   2633 {
   2634     	(void) fprintf( stderr, "%s\n", msg );
   2635 	exit( YY_EXIT_FAILURE );
   2636 }
   2637 
   2638 /* Redefine yyless() so it works in section 3 code. */
   2639 
   2640 #undef yyless
   2641 #define yyless(n) \
   2642 	do \
   2643 		{ \
   2644 		/* Undo effects of setting up yytext. */ \
   2645         int yyless_macro_arg = (n); \
   2646         YY_LESS_LINENO(yyless_macro_arg);\
   2647 		yytext[yyleng] = yyg->yy_hold_char; \
   2648 		yyg->yy_c_buf_p = yytext + yyless_macro_arg; \
   2649 		yyg->yy_hold_char = *yyg->yy_c_buf_p; \
   2650 		*yyg->yy_c_buf_p = '\0'; \
   2651 		yyleng = yyless_macro_arg; \
   2652 		} \
   2653 	while ( 0 )
   2654 
   2655 /* Accessor  methods (get/set functions) to struct members. */
   2656 
   2657 /** Get the user-defined data for this scanner.
   2658  * @param yyscanner The scanner object.
   2659  */
   2660 YY_EXTRA_TYPE parse_events_get_extra  (yyscan_t yyscanner)
   2661 {
   2662     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2663     return yyextra;
   2664 }
   2665 
   2666 /** Get the current line number.
   2667  * @param yyscanner The scanner object.
   2668  */
   2669 int parse_events_get_lineno  (yyscan_t yyscanner)
   2670 {
   2671     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2672 
   2673         if (! YY_CURRENT_BUFFER)
   2674             return 0;
   2675 
   2676     return yylineno;
   2677 }
   2678 
   2679 /** Get the current column number.
   2680  * @param yyscanner The scanner object.
   2681  */
   2682 int parse_events_get_column  (yyscan_t yyscanner)
   2683 {
   2684     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2685 
   2686         if (! YY_CURRENT_BUFFER)
   2687             return 0;
   2688 
   2689     return yycolumn;
   2690 }
   2691 
   2692 /** Get the input stream.
   2693  * @param yyscanner The scanner object.
   2694  */
   2695 FILE *parse_events_get_in  (yyscan_t yyscanner)
   2696 {
   2697     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2698     return yyin;
   2699 }
   2700 
   2701 /** Get the output stream.
   2702  * @param yyscanner The scanner object.
   2703  */
   2704 FILE *parse_events_get_out  (yyscan_t yyscanner)
   2705 {
   2706     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2707     return yyout;
   2708 }
   2709 
   2710 /** Get the length of the current token.
   2711  * @param yyscanner The scanner object.
   2712  */
   2713 int parse_events_get_leng  (yyscan_t yyscanner)
   2714 {
   2715     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2716     return yyleng;
   2717 }
   2718 
   2719 /** Get the current token.
   2720  * @param yyscanner The scanner object.
   2721  */
   2722 
   2723 char *parse_events_get_text  (yyscan_t yyscanner)
   2724 {
   2725     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2726     return yytext;
   2727 }
   2728 
   2729 /** Set the user-defined data. This data is never touched by the scanner.
   2730  * @param user_defined The data to be associated with this scanner.
   2731  * @param yyscanner The scanner object.
   2732  */
   2733 void parse_events_set_extra (YY_EXTRA_TYPE  user_defined , yyscan_t yyscanner)
   2734 {
   2735     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2736     yyextra = user_defined ;
   2737 }
   2738 
   2739 /** Set the current line number.
   2740  * @param line_number
   2741  * @param yyscanner The scanner object.
   2742  */
   2743 void parse_events_set_lineno (int  line_number , yyscan_t yyscanner)
   2744 {
   2745     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2746 
   2747         /* lineno is only valid if an input buffer exists. */
   2748         if (! YY_CURRENT_BUFFER )
   2749            yy_fatal_error( "parse_events_set_lineno called with no buffer" , yyscanner);
   2750 
   2751     yylineno = line_number;
   2752 }
   2753 
   2754 /** Set the current column.
   2755  * @param line_number
   2756  * @param yyscanner The scanner object.
   2757  */
   2758 void parse_events_set_column (int  column_no , yyscan_t yyscanner)
   2759 {
   2760     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2761 
   2762         /* column is only valid if an input buffer exists. */
   2763         if (! YY_CURRENT_BUFFER )
   2764            yy_fatal_error( "parse_events_set_column called with no buffer" , yyscanner);
   2765 
   2766     yycolumn = column_no;
   2767 }
   2768 
   2769 /** Set the input stream. This does not discard the current
   2770  * input buffer.
   2771  * @param in_str A readable stream.
   2772  * @param yyscanner The scanner object.
   2773  * @see parse_events__switch_to_buffer
   2774  */
   2775 void parse_events_set_in (FILE *  in_str , yyscan_t yyscanner)
   2776 {
   2777     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2778     yyin = in_str ;
   2779 }
   2780 
   2781 void parse_events_set_out (FILE *  out_str , yyscan_t yyscanner)
   2782 {
   2783     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2784     yyout = out_str ;
   2785 }
   2786 
   2787 int parse_events_get_debug  (yyscan_t yyscanner)
   2788 {
   2789     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2790     return yy_flex_debug;
   2791 }
   2792 
   2793 void parse_events_set_debug (int  bdebug , yyscan_t yyscanner)
   2794 {
   2795     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2796     yy_flex_debug = bdebug ;
   2797 }
   2798 
   2799 /* Accessor methods for yylval and yylloc */
   2800 
   2801 YYSTYPE * parse_events_get_lval  (yyscan_t yyscanner)
   2802 {
   2803     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2804     return yylval;
   2805 }
   2806 
   2807 void parse_events_set_lval (YYSTYPE *  yylval_param , yyscan_t yyscanner)
   2808 {
   2809     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2810     yylval = yylval_param;
   2811 }
   2812 
   2813 /* User-visible API */
   2814 
   2815 /* parse_events_lex_init is special because it creates the scanner itself, so it is
   2816  * the ONLY reentrant function that doesn't take the scanner as the last argument.
   2817  * That's why we explicitly handle the declaration, instead of using our macros.
   2818  */
   2819 
   2820 int parse_events_lex_init(yyscan_t* ptr_yy_globals)
   2821 
   2822 {
   2823     if (ptr_yy_globals == NULL){
   2824         errno = EINVAL;
   2825         return 1;
   2826     }
   2827 
   2828     *ptr_yy_globals = (yyscan_t) parse_events_alloc ( sizeof( struct yyguts_t ), NULL );
   2829 
   2830     if (*ptr_yy_globals == NULL){
   2831         errno = ENOMEM;
   2832         return 1;
   2833     }
   2834 
   2835     /* By setting to 0xAA, we expose bugs in yy_init_globals. Leave at 0x00 for releases. */
   2836     memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
   2837 
   2838     return yy_init_globals ( *ptr_yy_globals );
   2839 }
   2840 
   2841 /* parse_events_lex_init_extra has the same functionality as parse_events_lex_init, but follows the
   2842  * convention of taking the scanner as the last argument. Note however, that
   2843  * this is a *pointer* to a scanner, as it will be allocated by this call (and
   2844  * is the reason, too, why this function also must handle its own declaration).
   2845  * The user defined value in the first argument will be available to parse_events_alloc in
   2846  * the yyextra field.
   2847  */
   2848 
   2849 int parse_events_lex_init_extra(YY_EXTRA_TYPE yy_user_defined,yyscan_t* ptr_yy_globals )
   2850 
   2851 {
   2852     struct yyguts_t dummy_yyguts;
   2853 
   2854     parse_events_set_extra (yy_user_defined, &dummy_yyguts);
   2855 
   2856     if (ptr_yy_globals == NULL){
   2857         errno = EINVAL;
   2858         return 1;
   2859     }
   2860 
   2861     *ptr_yy_globals = (yyscan_t) parse_events_alloc ( sizeof( struct yyguts_t ), &dummy_yyguts );
   2862 
   2863     if (*ptr_yy_globals == NULL){
   2864         errno = ENOMEM;
   2865         return 1;
   2866     }
   2867 
   2868     /* By setting to 0xAA, we expose bugs in
   2869     yy_init_globals. Leave at 0x00 for releases. */
   2870     memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));
   2871 
   2872     parse_events_set_extra (yy_user_defined, *ptr_yy_globals);
   2873 
   2874     return yy_init_globals ( *ptr_yy_globals );
   2875 }
   2876 
   2877 static int yy_init_globals (yyscan_t yyscanner)
   2878 {
   2879     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2880     /* Initialization is the same as for the non-reentrant scanner.
   2881      * This function is called from parse_events_lex_destroy(), so don't allocate here.
   2882      */
   2883 
   2884     yyg->yy_buffer_stack = 0;
   2885     yyg->yy_buffer_stack_top = 0;
   2886     yyg->yy_buffer_stack_max = 0;
   2887     yyg->yy_c_buf_p = (char *) 0;
   2888     yyg->yy_init = 0;
   2889     yyg->yy_start = 0;
   2890 
   2891     yyg->yy_start_stack_ptr = 0;
   2892     yyg->yy_start_stack_depth = 0;
   2893     yyg->yy_start_stack =  NULL;
   2894 
   2895 /* Defined in main.c */
   2896 #ifdef YY_STDINIT
   2897     yyin = stdin;
   2898     yyout = stdout;
   2899 #else
   2900     yyin = (FILE *) 0;
   2901     yyout = (FILE *) 0;
   2902 #endif
   2903 
   2904     /* For future reference: Set errno on error, since we are called by
   2905      * parse_events_lex_init()
   2906      */
   2907     return 0;
   2908 }
   2909 
   2910 /* parse_events_lex_destroy is for both reentrant and non-reentrant scanners. */
   2911 int parse_events_lex_destroy  (yyscan_t yyscanner)
   2912 {
   2913     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
   2914 
   2915     /* Pop the buffer stack, destroying each element. */
   2916 	while(YY_CURRENT_BUFFER){
   2917 		parse_events__delete_buffer(YY_CURRENT_BUFFER ,yyscanner );
   2918 		YY_CURRENT_BUFFER_LVALUE = NULL;
   2919 		parse_events_pop_buffer_state(yyscanner);
   2920 	}
   2921 
   2922 	/* Destroy the stack itself. */
   2923 	parse_events_free(yyg->yy_buffer_stack ,yyscanner);
   2924 	yyg->yy_buffer_stack = NULL;
   2925 
   2926     /* Destroy the start condition stack. */
   2927         parse_events_free(yyg->yy_start_stack ,yyscanner );
   2928         yyg->yy_start_stack = NULL;
   2929 
   2930     /* Reset the globals. This is important in a non-reentrant scanner so the next time
   2931      * parse_events_lex() is called, initialization will occur. */
   2932     yy_init_globals( yyscanner);
   2933 
   2934     /* Destroy the main struct (reentrant only). */
   2935     parse_events_free ( yyscanner , yyscanner );
   2936     yyscanner = NULL;
   2937     return 0;
   2938 }
   2939 
   2940 /*
   2941  * Internal utility routines.
   2942  */
   2943 
   2944 #ifndef yytext_ptr
   2945 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yyscanner)
   2946 {
   2947 	register int i;
   2948 	for ( i = 0; i < n; ++i )
   2949 		s1[i] = s2[i];
   2950 }
   2951 #endif
   2952 
   2953 #ifdef YY_NEED_STRLEN
   2954 static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner)
   2955 {
   2956 	register int n;
   2957 	for ( n = 0; s[n]; ++n )
   2958 		;
   2959 
   2960 	return n;
   2961 }
   2962 #endif
   2963 
   2964 void *parse_events_alloc (yy_size_t  size , yyscan_t yyscanner)
   2965 {
   2966 	return (void *) malloc( size );
   2967 }
   2968 
   2969 void *parse_events_realloc  (void * ptr, yy_size_t  size , yyscan_t yyscanner)
   2970 {
   2971 	/* The cast to (char *) in the following accommodates both
   2972 	 * implementations that use char* generic pointers, and those
   2973 	 * that use void* generic pointers.  It works with the latter
   2974 	 * because both ANSI C and C++ allow castless assignment from
   2975 	 * any pointer type to void*, and deal with argument conversions
   2976 	 * as though doing an assignment.
   2977 	 */
   2978 	return (void *) realloc( (char *) ptr, size );
   2979 }
   2980 
   2981 void parse_events_free (void * ptr , yyscan_t yyscanner)
   2982 {
   2983 	free( (char *) ptr );	/* see parse_events_realloc() for (char *) cast */
   2984 }
   2985 
   2986 #define YYTABLES_NAME "yytables"
   2987 
   2988 #line 212 "util/parse-events.l"
   2989 
   2990 
   2991 
   2992 int parse_events_wrap(void *scanner __maybe_unused)
   2993 {
   2994 	return 1;
   2995 }
   2996 
   2997