xref: /dragonfly/lib/libevtr/ktrfmt.yy.c (revision 0fe4e290)
1 #line 2 "ktrfmt.yy.c"
2 
3 #line 4 "ktrfmt.yy.c"
4 
5 #define  YY_INT_ALIGNED short int
6 
7 /* A lexical scanner generated by flex */
8 
9 #define yy_create_buffer __ktrfmt_create_buffer
10 #define yy_delete_buffer __ktrfmt_delete_buffer
11 #define yy_flex_debug __ktrfmt_flex_debug
12 #define yy_init_buffer __ktrfmt_init_buffer
13 #define yy_flush_buffer __ktrfmt_flush_buffer
14 #define yy_load_buffer_state __ktrfmt_load_buffer_state
15 #define yy_switch_to_buffer __ktrfmt_switch_to_buffer
16 #define yyin __ktrfmtin
17 #define yyleng __ktrfmtleng
18 #define yylex __ktrfmtlex
19 #define yylineno __ktrfmtlineno
20 #define yyout __ktrfmtout
21 #define yyrestart __ktrfmtrestart
22 #define yytext __ktrfmttext
23 #define yywrap __ktrfmtwrap
24 #define yyalloc __ktrfmtalloc
25 #define yyrealloc __ktrfmtrealloc
26 #define yyfree __ktrfmtfree
27 
28 #define FLEX_SCANNER
29 #define YY_FLEX_MAJOR_VERSION 2
30 #define YY_FLEX_MINOR_VERSION 5
31 #define YY_FLEX_SUBMINOR_VERSION 35
32 #if YY_FLEX_SUBMINOR_VERSION > 0
33 #define FLEX_BETA
34 #endif
35 
36 /* First, we deal with  platform-specific or compiler-specific issues. */
37 
38 /* begin standard C headers. */
39 #include <stdio.h>
40 #include <string.h>
41 #include <errno.h>
42 #include <stdlib.h>
43 
44 /* end standard C headers. */
45 
46 /* flex integer type definitions */
47 
48 #ifndef FLEXINT_H
49 #define FLEXINT_H
50 
51 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
52 
53 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
54 
55 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
56  * if you want the limit (max/min) macros for int types.
57  */
58 #ifndef __STDC_LIMIT_MACROS
59 #define __STDC_LIMIT_MACROS 1
60 #endif
61 
62 #include <inttypes.h>
63 typedef int8_t flex_int8_t;
64 typedef uint8_t flex_uint8_t;
65 typedef int16_t flex_int16_t;
66 typedef uint16_t flex_uint16_t;
67 typedef int32_t flex_int32_t;
68 typedef uint32_t flex_uint32_t;
69 #else
70 typedef signed char flex_int8_t;
71 typedef short int flex_int16_t;
72 typedef int flex_int32_t;
73 typedef unsigned char flex_uint8_t;
74 typedef unsigned short int flex_uint16_t;
75 typedef unsigned int flex_uint32_t;
76 
77 /* Limits of integral types. */
78 #ifndef INT8_MIN
79 #define INT8_MIN               (-128)
80 #endif
81 #ifndef INT16_MIN
82 #define INT16_MIN              (-32767-1)
83 #endif
84 #ifndef INT32_MIN
85 #define INT32_MIN              (-2147483647-1)
86 #endif
87 #ifndef INT8_MAX
88 #define INT8_MAX               (127)
89 #endif
90 #ifndef INT16_MAX
91 #define INT16_MAX              (32767)
92 #endif
93 #ifndef INT32_MAX
94 #define INT32_MAX              (2147483647)
95 #endif
96 #ifndef UINT8_MAX
97 #define UINT8_MAX              (255U)
98 #endif
99 #ifndef UINT16_MAX
100 #define UINT16_MAX             (65535U)
101 #endif
102 #ifndef UINT32_MAX
103 #define UINT32_MAX             (4294967295U)
104 #endif
105 
106 #endif /* ! C99 */
107 
108 #endif /* ! FLEXINT_H */
109 
110 #ifdef __cplusplus
111 
112 /* The "const" storage-class-modifier is valid. */
113 #define YY_USE_CONST
114 
115 #else	/* ! __cplusplus */
116 
117 /* C99 requires __STDC__ to be defined as 1. */
118 #if defined (__STDC__)
119 
120 #define YY_USE_CONST
121 
122 #endif	/* defined (__STDC__) */
123 #endif	/* ! __cplusplus */
124 
125 #ifdef YY_USE_CONST
126 #define yyconst const
127 #else
128 #define yyconst
129 #endif
130 
131 /* Returned upon end-of-file. */
132 #define YY_NULL 0
133 
134 /* Promotes a possibly negative, possibly signed char to an unsigned
135  * integer for use as an array index.  If the signed char is negative,
136  * we want to instead treat it as an 8-bit unsigned char, hence the
137  * double cast.
138  */
139 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
140 
141 /* Enter a start condition.  This macro really ought to take a parameter,
142  * but we do it the disgusting crufty way forced on us by the ()-less
143  * definition of BEGIN.
144  */
145 #define BEGIN (yy_start) = 1 + 2 *
146 
147 /* Translate the current start state into a value that can be later handed
148  * to BEGIN to return to the state.  The YYSTATE alias is for lex
149  * compatibility.
150  */
151 #define YY_START (((yy_start) - 1) / 2)
152 #define YYSTATE YY_START
153 
154 /* Action number for EOF rule of a given start state. */
155 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
156 
157 /* Special action meaning "start processing a new file". */
158 #define YY_NEW_FILE __ktrfmtrestart(__ktrfmtin  )
159 
160 #define YY_END_OF_BUFFER_CHAR 0
161 
162 /* Size of default input buffer. */
163 #ifndef YY_BUF_SIZE
164 #ifdef __ia64__
165 /* On IA-64, the buffer size is 16k, not 8k.
166  * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
167  * Ditto for the __ia64__ case accordingly.
168  */
169 #define YY_BUF_SIZE 32768
170 #else
171 #define YY_BUF_SIZE 16384
172 #endif /* __ia64__ */
173 #endif
174 
175 /* The state buf must be large enough to hold one state per character in the main buffer.
176  */
177 #define YY_STATE_BUF_SIZE   ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
178 
179 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
180 #define YY_TYPEDEF_YY_BUFFER_STATE
181 typedef struct yy_buffer_state *YY_BUFFER_STATE;
182 #endif
183 
184 extern int __ktrfmtleng;
185 
186 extern FILE *__ktrfmtin, *__ktrfmtout;
187 
188 #define EOB_ACT_CONTINUE_SCAN 0
189 #define EOB_ACT_END_OF_FILE 1
190 #define EOB_ACT_LAST_MATCH 2
191 
192     #define YY_LESS_LINENO(n)
193 
194 /* Return all but the first "n" matched characters back to the input stream. */
195 #define yyless(n) \
196 	do \
197 		{ \
198 		/* Undo effects of setting up __ktrfmttext. */ \
199         int yyless_macro_arg = (n); \
200         YY_LESS_LINENO(yyless_macro_arg);\
201 		*yy_cp = (yy_hold_char); \
202 		YY_RESTORE_YY_MORE_OFFSET \
203 		(yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
204 		YY_DO_BEFORE_ACTION; /* set up __ktrfmttext again */ \
205 		} \
206 	while ( 0 )
207 
208 #define unput(c) yyunput( c, (yytext_ptr)  )
209 
210 #ifndef YY_TYPEDEF_YY_SIZE_T
211 #define YY_TYPEDEF_YY_SIZE_T
212 typedef size_t yy_size_t;
213 #endif
214 
215 #ifndef YY_STRUCT_YY_BUFFER_STATE
216 #define YY_STRUCT_YY_BUFFER_STATE
217 struct yy_buffer_state
218 	{
219 	FILE *yy_input_file;
220 
221 	char *yy_ch_buf;		/* input buffer */
222 	char *yy_buf_pos;		/* current position in input buffer */
223 
224 	/* Size of input buffer in bytes, not including room for EOB
225 	 * characters.
226 	 */
227 	yy_size_t yy_buf_size;
228 
229 	/* Number of characters read into yy_ch_buf, not including EOB
230 	 * characters.
231 	 */
232 	int yy_n_chars;
233 
234 	/* Whether we "own" the buffer - i.e., we know we created it,
235 	 * and can realloc() it to grow it, and should free() it to
236 	 * delete it.
237 	 */
238 	int yy_is_our_buffer;
239 
240 	/* Whether this is an "interactive" input source; if so, and
241 	 * if we're using stdio for input, then we want to use getc()
242 	 * instead of fread(), to make sure we stop fetching input after
243 	 * each newline.
244 	 */
245 	int yy_is_interactive;
246 
247 	/* Whether we're considered to be at the beginning of a line.
248 	 * If so, '^' rules will be active on the next match, otherwise
249 	 * not.
250 	 */
251 	int yy_at_bol;
252 
253     int yy_bs_lineno; /**< The line count. */
254     int yy_bs_column; /**< The column count. */
255 
256 	/* Whether to try to fill the input buffer when we reach the
257 	 * end of it.
258 	 */
259 	int yy_fill_buffer;
260 
261 	int yy_buffer_status;
262 
263 #define YY_BUFFER_NEW 0
264 #define YY_BUFFER_NORMAL 1
265 	/* When an EOF's been seen but there's still some text to process
266 	 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
267 	 * shouldn't try reading from the input source any more.  We might
268 	 * still have a bunch of tokens to match, though, because of
269 	 * possible backing-up.
270 	 *
271 	 * When we actually see the EOF, we change the status to "new"
272 	 * (via __ktrfmtrestart()), so that the user can continue scanning by
273 	 * just pointing __ktrfmtin at a new input file.
274 	 */
275 #define YY_BUFFER_EOF_PENDING 2
276 
277 	};
278 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
279 
280 /* Stack of input buffers. */
281 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
282 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
283 static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
284 
285 /* We provide macros for accessing buffer states in case in the
286  * future we want to put the buffer states in a more general
287  * "scanner state".
288  *
289  * Returns the top of the stack, or NULL.
290  */
291 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
292                           ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
293                           : NULL)
294 
295 /* Same as previous macro, but useful when we know that the buffer stack is not
296  * NULL or when we need an lvalue. For internal use only.
297  */
298 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
299 
300 /* yy_hold_char holds the character lost when __ktrfmttext is formed. */
301 static char yy_hold_char;
302 static int yy_n_chars;		/* number of characters read into yy_ch_buf */
303 int __ktrfmtleng;
304 
305 /* Points to current character in buffer. */
306 static char *yy_c_buf_p = (char *) 0;
307 static int yy_init = 0;		/* whether we need to initialize */
308 static int yy_start = 0;	/* start state number */
309 
310 /* Flag which is used to allow __ktrfmtwrap()'s to do buffer switches
311  * instead of setting up a fresh __ktrfmtin.  A bit of a hack ...
312  */
313 static int yy_did_buffer_switch_on_eof;
314 
315 void __ktrfmtrestart (FILE *input_file  );
316 void __ktrfmt_switch_to_buffer (YY_BUFFER_STATE new_buffer  );
317 YY_BUFFER_STATE __ktrfmt_create_buffer (FILE *file,int size  );
318 void __ktrfmt_delete_buffer (YY_BUFFER_STATE b  );
319 void __ktrfmt_flush_buffer (YY_BUFFER_STATE b  );
320 void __ktrfmtpush_buffer_state (YY_BUFFER_STATE new_buffer  );
321 void __ktrfmtpop_buffer_state (void );
322 
323 static void __ktrfmtensure_buffer_stack (void );
324 static void __ktrfmt_load_buffer_state (void );
325 static void __ktrfmt_init_buffer (YY_BUFFER_STATE b,FILE *file  );
326 
327 #define YY_FLUSH_BUFFER __ktrfmt_flush_buffer(YY_CURRENT_BUFFER )
328 
329 YY_BUFFER_STATE __ktrfmt_scan_buffer (char *base,yy_size_t size  );
330 YY_BUFFER_STATE __ktrfmt_scan_string (yyconst char *yy_str  );
331 YY_BUFFER_STATE __ktrfmt_scan_bytes (yyconst char *bytes,int len  );
332 
333 void *__ktrfmtalloc (yy_size_t  );
334 void *__ktrfmtrealloc (void *,yy_size_t  );
335 void __ktrfmtfree (void *  );
336 
337 #define yy_new_buffer __ktrfmt_create_buffer
338 
339 #define yy_set_interactive(is_interactive) \
340 	{ \
341 	if ( ! YY_CURRENT_BUFFER ){ \
342         __ktrfmtensure_buffer_stack (); \
343 		YY_CURRENT_BUFFER_LVALUE =    \
344             __ktrfmt_create_buffer(__ktrfmtin,YY_BUF_SIZE ); \
345 	} \
346 	YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
347 	}
348 
349 #define yy_set_bol(at_bol) \
350 	{ \
351 	if ( ! YY_CURRENT_BUFFER ){\
352         __ktrfmtensure_buffer_stack (); \
353 		YY_CURRENT_BUFFER_LVALUE =    \
354             __ktrfmt_create_buffer(__ktrfmtin,YY_BUF_SIZE ); \
355 	} \
356 	YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
357 	}
358 
359 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
360 
361 /* Begin user sect3 */
362 
363 #define __ktrfmtwrap(n) 1
364 #define YY_SKIP_YYWRAP
365 
366 typedef unsigned char YY_CHAR;
367 
368 FILE *__ktrfmtin = (FILE *) 0, *__ktrfmtout = (FILE *) 0;
369 
370 typedef int yy_state_type;
371 
372 extern int __ktrfmtlineno;
373 
374 int __ktrfmtlineno = 1;
375 
376 extern char *__ktrfmttext;
377 #define yytext_ptr __ktrfmttext
378 
379 static yy_state_type yy_get_previous_state (void );
380 static yy_state_type yy_try_NUL_trans (yy_state_type current_state  );
381 static int yy_get_next_buffer (void );
382 static void yy_fatal_error (yyconst char msg[]  );
383 
384 /* Done after the current pattern has been matched and before the
385  * corresponding action - sets up __ktrfmttext.
386  */
387 #define YY_DO_BEFORE_ACTION \
388 	(yytext_ptr) = yy_bp; \
389 	__ktrfmtleng = (size_t) (yy_cp - yy_bp); \
390 	(yy_hold_char) = *yy_cp; \
391 	*yy_cp = '\0'; \
392 	(yy_c_buf_p) = yy_cp;
393 
394 #define YY_NUM_RULES 11
395 #define YY_END_OF_BUFFER 12
396 /* This struct is not used in this scanner,
397    but its presence is necessary. */
398 struct yy_trans_info
399 	{
400 	flex_int32_t yy_verify;
401 	flex_int32_t yy_nxt;
402 	};
403 static yyconst flex_int16_t yy_accept[26] =
404     {   0,
405         0,    0,   12,   11,    1,   11,    3,    8,    5,    5,
406         7,    4,    9,   10,    1,    0,    0,    3,    5,    0,
407         4,    2,    2,    6,    0
408     } ;
409 
410 static yyconst flex_int32_t yy_ec[256] =
411     {   0,
412         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
413         1,    1,    2,    1,    1,    1,    1,    1,    1,    1,
414         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
415         1,    2,    1,    4,    1,    5,    1,    1,    1,    1,
416         1,    1,    1,    1,    1,    6,    1,    7,    8,    8,
417         8,    8,    8,    8,    8,    8,    8,    1,    1,    1,
418         9,    1,    1,    1,   10,   10,   10,   10,   10,   10,
419        11,   11,   11,   11,   11,   11,   11,   11,   11,   11,
420        11,   11,   11,   11,   11,   11,   11,   11,   11,   11,
421        12,   13,   14,    1,   15,    1,   16,   16,   16,   16,
422 
423        16,   16,   15,   15,   15,   15,   15,   15,   15,   15,
424        15,   15,   15,   15,   15,   15,   15,   15,   15,   17,
425        15,   15,    1,    1,    1,    1,    1,    1,    1,    1,
426         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
427         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
428         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
429         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
430         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
431         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
432         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
433 
434         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
435         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
436         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
437         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
438         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
439         1,    1,    1,    1,    1
440     } ;
441 
442 static yyconst flex_int32_t yy_meta[18] =
443     {   0,
444         1,    1,    2,    2,    1,    1,    3,    3,    1,    4,
445         5,    1,    1,    1,    5,    4,    6
446     } ;
447 
448 static yyconst flex_int16_t yy_base[31] =
449     {   0,
450         0,    0,   31,   54,   26,   14,    0,   54,    9,   11,
451        54,    0,   54,   54,   23,   16,   17,    0,   15,    0,
452         0,   54,   20,    0,   54,   33,   37,   41,   45,   49
453     } ;
454 
455 static yyconst flex_int16_t yy_def[31] =
456     {   0,
457        25,    1,   25,   25,   25,   26,   27,   25,   28,   25,
458        25,   29,   25,   25,   25,   26,   26,   27,   25,   30,
459        29,   25,   26,   30,    0,   25,   25,   25,   25,   25
460     } ;
461 
462 static yyconst flex_int16_t yy_nxt[72] =
463     {   0,
464         4,    5,    4,    6,    7,    8,    9,   10,   11,   12,
465        12,   13,    4,   14,    7,    7,    7,   19,   19,   22,
466        23,   19,   19,   22,   15,   20,   17,   15,   17,   17,
467        25,   25,   17,   16,   25,   16,   16,   16,   16,   18,
468        18,   18,   18,   19,   25,   25,   19,   21,   21,   21,
469        21,   24,   24,    3,   25,   25,   25,   25,   25,   25,
470        25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
471        25
472     } ;
473 
474 static yyconst flex_int16_t yy_chk[72] =
475     {   0,
476         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
477         1,    1,    1,    1,    1,    1,    1,   10,   10,   16,
478        17,   19,   19,   23,   15,    9,    6,    5,   16,   17,
479         3,    0,   23,   26,    0,   26,   26,   26,   26,   27,
480        27,   27,   27,   28,    0,    0,   28,   29,   29,   29,
481        29,   30,   30,   25,   25,   25,   25,   25,   25,   25,
482        25,   25,   25,   25,   25,   25,   25,   25,   25,   25,
483        25
484     } ;
485 
486 static yy_state_type yy_last_accepting_state;
487 static char *yy_last_accepting_cpos;
488 
489 extern int __ktrfmt_flex_debug;
490 int __ktrfmt_flex_debug = 0;
491 
492 /* The intent behind this definition is that it'll catch
493  * any uses of REJECT which flex missed.
494  */
495 #define REJECT reject_used_but_not_detected
496 #define yymore() yymore_used_but_not_detected
497 #define YY_MORE_ADJ 0
498 #define YY_RESTORE_YY_MORE_OFFSET
499 char *__ktrfmttext;
500 #line 1 "ktrfmt.l"
501 #line 2 "ktrfmt.l"
502 
503 #include <assert.h>
504 //#define YYSTYPE struct token
505 #include <stdlib.h>
506 #include "ktrfmt.tab.h"
507 #include "tok.h"
508 #include "internal.h"
509 
510 enum {
511 	NR_TOKENS = 18,
512 };
513 
514 /* XXX: need to switch to reentrant lexer */
515 static struct token tokens[NR_TOKENS];
516 static int curr_tok;
517 static struct symtab *strtab;
518 
519 struct token *
520 tok_new(void)
521 {
522 	++curr_tok;
523 	if (curr_tok == NR_TOKENS) {
524 		/* can't happen */
525 		fprintf(stderr, "Reached max number of tokens\n");
526 		abort();
527 	}
528 	return &tokens[curr_tok];
529 }
530 
531 void
532 tok_free(struct token *tok)
533 {
534 	assert(&tokens[curr_tok] == tok);
535 	--curr_tok;
536 }
537 
538 /*
539  * We keep track of strings we've seen before so string comparison
540  * can be done w/ a simple pointer comparison
541  */
542 static
543 char *
544 newstr(const char *s)
545 {
546 	void *r;
547 	if (!strtab)
548 		strtab = symtab_new();
549 	if ((r = symtab_find(strtab, s)))
550 		return r;
551 	if (!(r = strdup(s)))
552 		return r;
553 	symtab_insert(strtab, r, r);
554 	return r;
555 }
556 
557 #line 558 "ktrfmt.yy.c"
558 
559 #define INITIAL 0
560 
561 #ifndef YY_NO_UNISTD_H
562 /* Special case for "unistd.h", since it is non-ANSI. We include it way
563  * down here because we want the user's section 1 to have been scanned first.
564  * The user has a chance to override it with an option.
565  */
566 #include <unistd.h>
567 #endif
568 
569 #ifndef YY_EXTRA_TYPE
570 #define YY_EXTRA_TYPE void *
571 #endif
572 
573 static int yy_init_globals (void );
574 
575 /* Accessor methods to globals.
576    These are made visible to non-reentrant scanners for convenience. */
577 
578 int __ktrfmtlex_destroy (void );
579 
580 int __ktrfmtget_debug (void );
581 
582 void __ktrfmtset_debug (int debug_flag  );
583 
584 YY_EXTRA_TYPE __ktrfmtget_extra (void );
585 
586 void __ktrfmtset_extra (YY_EXTRA_TYPE user_defined  );
587 
588 FILE *__ktrfmtget_in (void );
589 
590 void __ktrfmtset_in  (FILE * in_str  );
591 
592 FILE *__ktrfmtget_out (void );
593 
594 void __ktrfmtset_out  (FILE * out_str  );
595 
596 int __ktrfmtget_leng (void );
597 
598 char *__ktrfmtget_text (void );
599 
600 int __ktrfmtget_lineno (void );
601 
602 void __ktrfmtset_lineno (int line_number  );
603 
604 YYSTYPE * __ktrfmtget_lval (void );
605 
606 void __ktrfmtset_lval (YYSTYPE * yylval_param  );
607 
608 /* Macros after this point can all be overridden by user definitions in
609  * section 1.
610  */
611 
612 #ifndef YY_SKIP_YYWRAP
613 #ifdef __cplusplus
614 extern "C" int __ktrfmtwrap (void );
615 #else
616 extern int __ktrfmtwrap (void );
617 #endif
618 #endif
619 
620 #ifndef yytext_ptr
621 static void yy_flex_strncpy (char *,yyconst char *,int );
622 #endif
623 
624 #ifdef YY_NEED_STRLEN
625 static int yy_flex_strlen (yyconst char * );
626 #endif
627 
628 #ifndef YY_NO_INPUT
629 
630 #ifdef __cplusplus
631 static int yyinput (void );
632 #else
633 static int input (void );
634 #endif
635 
636 #endif
637 
638 /* Amount of stuff to slurp up with each read. */
639 #ifndef YY_READ_BUF_SIZE
640 #ifdef __ia64__
641 /* On IA-64, the buffer size is 16k, not 8k */
642 #define YY_READ_BUF_SIZE 16384
643 #else
644 #define YY_READ_BUF_SIZE 8192
645 #endif /* __ia64__ */
646 #endif
647 
648 /* Copy whatever the last rule matched to the standard output. */
649 #ifndef ECHO
650 /* This used to be an fputs(), but since the string might contain NUL's,
651  * we now use fwrite().
652  */
653 #define ECHO do { if (fwrite( __ktrfmttext, __ktrfmtleng, 1, __ktrfmtout )) {} } while (0)
654 #endif
655 
656 /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
657  * is returned in "result".
658  */
659 #ifndef YY_INPUT
660 #define YY_INPUT(buf,result,max_size) \
661 	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
662 		{ \
663 		int c = '*'; \
664 		size_t n; \
665 		for ( n = 0; n < max_size && \
666 			     (c = getc( __ktrfmtin )) != EOF && c != '\n'; ++n ) \
667 			buf[n] = (char) c; \
668 		if ( c == '\n' ) \
669 			buf[n++] = (char) c; \
670 		if ( c == EOF && ferror( __ktrfmtin ) ) \
671 			YY_FATAL_ERROR( "input in flex scanner failed" ); \
672 		result = n; \
673 		} \
674 	else \
675 		{ \
676 		errno=0; \
677 		while ( (result = fread(buf, 1, max_size, __ktrfmtin))==0 && ferror(__ktrfmtin)) \
678 			{ \
679 			if( errno != EINTR) \
680 				{ \
681 				YY_FATAL_ERROR( "input in flex scanner failed" ); \
682 				break; \
683 				} \
684 			errno=0; \
685 			clearerr(__ktrfmtin); \
686 			} \
687 		}\
688 \
689 
690 #endif
691 
692 /* No semi-colon after return; correct usage is to write "yyterminate();" -
693  * we don't want an extra ';' after the "return" because that will cause
694  * some compilers to complain about unreachable statements.
695  */
696 #ifndef yyterminate
697 #define yyterminate() return YY_NULL
698 #endif
699 
700 /* Number of entries by which start-condition stack grows. */
701 #ifndef YY_START_STACK_INCR
702 #define YY_START_STACK_INCR 25
703 #endif
704 
705 /* Report a fatal error. */
706 #ifndef YY_FATAL_ERROR
707 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
708 #endif
709 
710 /* end tables serialization structures and prototypes */
711 
712 /* Default declaration of generated scanner - a define so the user can
713  * easily add parameters.
714  */
715 #ifndef YY_DECL
716 #define YY_DECL_IS_OURS 1
717 
718 extern int __ktrfmtlex \
719                (YYSTYPE * yylval_param );
720 
721 #define YY_DECL int __ktrfmtlex \
722                (YYSTYPE * yylval_param )
723 #endif /* !YY_DECL */
724 
725 /* Code executed at the beginning of each rule, after __ktrfmttext and __ktrfmtleng
726  * have been set up.
727  */
728 #ifndef YY_USER_ACTION
729 #define YY_USER_ACTION
730 #endif
731 
732 /* Code executed at the end of each rule. */
733 #ifndef YY_BREAK
734 #define YY_BREAK break;
735 #endif
736 
737 #define YY_RULE_SETUP \
738 	YY_USER_ACTION
739 
740 /** The main scanner function which does all the work.
741  */
742 YY_DECL
743 {
744 	register yy_state_type yy_current_state;
745 	register char *yy_cp, *yy_bp;
746 	register int yy_act;
747 
748         YYSTYPE * yylval;
749 
750 #line 71 "ktrfmt.l"
751 
752 #line 753 "ktrfmt.yy.c"
753 
754     yylval = yylval_param;
755 
756 	if ( !(yy_init) )
757 		{
758 		(yy_init) = 1;
759 
760 #ifdef YY_USER_INIT
761 		YY_USER_INIT;
762 #endif
763 
764 		if ( ! (yy_start) )
765 			(yy_start) = 1;	/* first start state */
766 
767 		if ( ! __ktrfmtin )
768 			__ktrfmtin = stdin;
769 
770 		if ( ! __ktrfmtout )
771 			__ktrfmtout = stdout;
772 
773 		if ( ! YY_CURRENT_BUFFER ) {
774 			__ktrfmtensure_buffer_stack ();
775 			YY_CURRENT_BUFFER_LVALUE =
776 				__ktrfmt_create_buffer(__ktrfmtin,YY_BUF_SIZE );
777 		}
778 
779 		__ktrfmt_load_buffer_state( );
780 		}
781 
782 	while ( 1 )		/* loops until end-of-file is reached */
783 		{
784 		yy_cp = (yy_c_buf_p);
785 
786 		/* Support of __ktrfmttext. */
787 		*yy_cp = (yy_hold_char);
788 
789 		/* yy_bp points to the position in yy_ch_buf of the start of
790 		 * the current run.
791 		 */
792 		yy_bp = yy_cp;
793 
794 		yy_current_state = (yy_start);
795 yy_match:
796 		do
797 			{
798 			register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
799 			if ( yy_accept[yy_current_state] )
800 				{
801 				(yy_last_accepting_state) = yy_current_state;
802 				(yy_last_accepting_cpos) = yy_cp;
803 				}
804 			while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
805 				{
806 				yy_current_state = (int) yy_def[yy_current_state];
807 				if ( yy_current_state >= 26 )
808 					yy_c = yy_meta[(unsigned int) yy_c];
809 				}
810 			yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
811 			++yy_cp;
812 			}
813 		while ( yy_base[yy_current_state] != 54 );
814 
815 yy_find_action:
816 		yy_act = yy_accept[yy_current_state];
817 		if ( yy_act == 0 )
818 			{ /* have to back up */
819 			yy_cp = (yy_last_accepting_cpos);
820 			yy_current_state = (yy_last_accepting_state);
821 			yy_act = yy_accept[yy_current_state];
822 			}
823 
824 		YY_DO_BEFORE_ACTION;
825 
826 do_action:	/* This label is used only to access EOF actions. */
827 
828 		switch ( yy_act )
829 	{ /* beginning of action switch */
830 			case 0: /* must back up */
831 			/* undo the effects of YY_DO_BEFORE_ACTION */
832 			*yy_cp = (yy_hold_char);
833 			yy_cp = (yy_last_accepting_cpos);
834 			yy_current_state = (yy_last_accepting_state);
835 			goto yy_find_action;
836 
837 case 1:
838 YY_RULE_SETUP
839 #line 72 "ktrfmt.l"
840 { /* ignore */ }
841 	YY_BREAK
842 case 2:
843 YY_RULE_SETUP
844 #line 73 "ktrfmt.l"
845 {
846 	size_t len;
847 	yylval->tok = tok_new();
848 	yylval->tok->type = TOK_STR;
849 	len = strlen(__ktrfmttext);
850 	assert(__ktrfmttext[len - 1] == '"');
851 	__ktrfmttext[len - 1] = '\0';	/* kill trailing quote */
852 	printd(LEX, "newstr(\"%s\")\n", __ktrfmttext + 1);
853 	yylval->tok->str = newstr(__ktrfmttext + 1);	/* parser detects oom */
854 	__ktrfmttext[len - 1] = '"';	/* restore quote */
855 	printd(LEX, "TOK_STR: \"%s\"\n", yylval->tok->str);
856 	return TOK_STR;
857 	}
858 	YY_BREAK
859 case 3:
860 YY_RULE_SETUP
861 #line 86 "ktrfmt.l"
862 {
863 	yylval->tok = tok_new();
864 	yylval->tok->type = TOK_ID;
865 	printd(LEX, "tok %p TOK_ID %p:%s\n", yylval->tok, __ktrfmttext, __ktrfmttext);
866 	yylval->tok->str = newstr(__ktrfmttext);	/* parser detects oom */
867 	return TOK_ID;
868 	}
869 	YY_BREAK
870 case 4:
871 YY_RULE_SETUP
872 #line 93 "ktrfmt.l"
873 {
874 	yylval->tok = tok_new();
875 	yylval->tok->type = TOK_CTOR;
876 	printd(LEX, "tok %p TOK_CTOR %p:%s\n", yylval->tok, __ktrfmttext, __ktrfmttext);
877 	yylval->tok->str = newstr(__ktrfmttext);	/* parser detects oom */
878 	return TOK_CTOR;
879 	}
880 	YY_BREAK
881 case 5:
882 YY_RULE_SETUP
883 #line 100 "ktrfmt.l"
884 {
885 	yylval->tok = tok_new();
886 	yylval->tok->type = TOK_INT;
887 	yylval->tok->str = strdup(__ktrfmttext);	/* parser detects oom */
888 	printd(LEX, "TOK_INT\n");
889 	return TOK_INT;
890 	}
891 	YY_BREAK
892 case 6:
893 YY_RULE_SETUP
894 #line 107 "ktrfmt.l"
895 {
896 	yylval->tok = tok_new();
897 	yylval->tok->type = TOK_INT;
898 	yylval->tok->str = strdup(__ktrfmttext);	/* parser detects oom */
899 	printd(LEX, "TOK_INT\n");
900 	return TOK_INT;
901 	}
902 	YY_BREAK
903 case 7:
904 YY_RULE_SETUP
905 #line 114 "ktrfmt.l"
906 {
907 	yylval = NULL;
908 	printd(LEX, "TOK_EQ\n");
909 	return TOK_EQ;
910 	}
911 	YY_BREAK
912 case 8:
913 YY_RULE_SETUP
914 #line 119 "ktrfmt.l"
915 {
916 	yylval = NULL;
917 	printd(LEX, "TOK_DOT\n");
918 	return TOK_DOT;
919 	}
920 	YY_BREAK
921 case 9:
922 YY_RULE_SETUP
923 #line 124 "ktrfmt.l"
924 {
925 	yylval = NULL;
926 	printd(LEX, "TOK_LEFT_BRACK\n");
927 	return TOK_LEFT_BRACK;
928 	}
929 	YY_BREAK
930 case 10:
931 YY_RULE_SETUP
932 #line 129 "ktrfmt.l"
933 {
934 	yylval = NULL;
935 	printd(LEX, "TOK_RIGHT_BRACK\n");
936 	return TOK_RIGHT_BRACK;
937 	}
938 	YY_BREAK
939 case 11:
940 YY_RULE_SETUP
941 #line 135 "ktrfmt.l"
942 ECHO;
943 	YY_BREAK
944 #line 945 "ktrfmt.yy.c"
945 case YY_STATE_EOF(INITIAL):
946 	yyterminate();
947 
948 	case YY_END_OF_BUFFER:
949 		{
950 		/* Amount of text matched not including the EOB char. */
951 		int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
952 
953 		/* Undo the effects of YY_DO_BEFORE_ACTION. */
954 		*yy_cp = (yy_hold_char);
955 		YY_RESTORE_YY_MORE_OFFSET
956 
957 		if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
958 			{
959 			/* We're scanning a new file or input source.  It's
960 			 * possible that this happened because the user
961 			 * just pointed __ktrfmtin at a new source and called
962 			 * __ktrfmtlex().  If so, then we have to assure
963 			 * consistency between YY_CURRENT_BUFFER and our
964 			 * globals.  Here is the right place to do so, because
965 			 * this is the first action (other than possibly a
966 			 * back-up) that will match for the new input source.
967 			 */
968 			(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
969 			YY_CURRENT_BUFFER_LVALUE->yy_input_file = __ktrfmtin;
970 			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
971 			}
972 
973 		/* Note that here we test for yy_c_buf_p "<=" to the position
974 		 * of the first EOB in the buffer, since yy_c_buf_p will
975 		 * already have been incremented past the NUL character
976 		 * (since all states make transitions on EOB to the
977 		 * end-of-buffer state).  Contrast this with the test
978 		 * in input().
979 		 */
980 		if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
981 			{ /* This was really a NUL. */
982 			yy_state_type yy_next_state;
983 
984 			(yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
985 
986 			yy_current_state = yy_get_previous_state(  );
987 
988 			/* Okay, we're now positioned to make the NUL
989 			 * transition.  We couldn't have
990 			 * yy_get_previous_state() go ahead and do it
991 			 * for us because it doesn't know how to deal
992 			 * with the possibility of jamming (and we don't
993 			 * want to build jamming into it because then it
994 			 * will run more slowly).
995 			 */
996 
997 			yy_next_state = yy_try_NUL_trans( yy_current_state );
998 
999 			yy_bp = (yytext_ptr) + YY_MORE_ADJ;
1000 
1001 			if ( yy_next_state )
1002 				{
1003 				/* Consume the NUL. */
1004 				yy_cp = ++(yy_c_buf_p);
1005 				yy_current_state = yy_next_state;
1006 				goto yy_match;
1007 				}
1008 
1009 			else
1010 				{
1011 				yy_cp = (yy_c_buf_p);
1012 				goto yy_find_action;
1013 				}
1014 			}
1015 
1016 		else switch ( yy_get_next_buffer(  ) )
1017 			{
1018 			case EOB_ACT_END_OF_FILE:
1019 				{
1020 				(yy_did_buffer_switch_on_eof) = 0;
1021 
1022 				if ( __ktrfmtwrap( ) )
1023 					{
1024 					/* Note: because we've taken care in
1025 					 * yy_get_next_buffer() to have set up
1026 					 * __ktrfmttext, we can now set up
1027 					 * yy_c_buf_p so that if some total
1028 					 * hoser (like flex itself) wants to
1029 					 * call the scanner after we return the
1030 					 * YY_NULL, it'll still work - another
1031 					 * YY_NULL will get returned.
1032 					 */
1033 					(yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ;
1034 
1035 					yy_act = YY_STATE_EOF(YY_START);
1036 					goto do_action;
1037 					}
1038 
1039 				else
1040 					{
1041 					if ( ! (yy_did_buffer_switch_on_eof) )
1042 						YY_NEW_FILE;
1043 					}
1044 				break;
1045 				}
1046 
1047 			case EOB_ACT_CONTINUE_SCAN:
1048 				(yy_c_buf_p) =
1049 					(yytext_ptr) + yy_amount_of_matched_text;
1050 
1051 				yy_current_state = yy_get_previous_state(  );
1052 
1053 				yy_cp = (yy_c_buf_p);
1054 				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
1055 				goto yy_match;
1056 
1057 			case EOB_ACT_LAST_MATCH:
1058 				(yy_c_buf_p) =
1059 				&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
1060 
1061 				yy_current_state = yy_get_previous_state(  );
1062 
1063 				yy_cp = (yy_c_buf_p);
1064 				yy_bp = (yytext_ptr) + YY_MORE_ADJ;
1065 				goto yy_find_action;
1066 			}
1067 		break;
1068 		}
1069 
1070 	default:
1071 		YY_FATAL_ERROR(
1072 			"fatal flex scanner internal error--no action found" );
1073 	} /* end of action switch */
1074 		} /* end of scanning one token */
1075 } /* end of __ktrfmtlex */
1076 
1077 /* yy_get_next_buffer - try to read in a new buffer
1078  *
1079  * Returns a code representing an action:
1080  *	EOB_ACT_LAST_MATCH -
1081  *	EOB_ACT_CONTINUE_SCAN - continue scanning from current position
1082  *	EOB_ACT_END_OF_FILE - end of file
1083  */
1084 static int yy_get_next_buffer (void)
1085 {
1086     	register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
1087 	register char *source = (yytext_ptr);
1088 	register int number_to_move, i;
1089 	int ret_val;
1090 
1091 	if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
1092 		YY_FATAL_ERROR(
1093 		"fatal flex scanner internal error--end of buffer missed" );
1094 
1095 	if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
1096 		{ /* Don't try to fill the buffer, so this is an EOF. */
1097 		if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
1098 			{
1099 			/* We matched a single character, the EOB, so
1100 			 * treat this as a final EOF.
1101 			 */
1102 			return EOB_ACT_END_OF_FILE;
1103 			}
1104 
1105 		else
1106 			{
1107 			/* We matched some text prior to the EOB, first
1108 			 * process it.
1109 			 */
1110 			return EOB_ACT_LAST_MATCH;
1111 			}
1112 		}
1113 
1114 	/* Try to read more data. */
1115 
1116 	/* First move last chars to start of buffer. */
1117 	number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1;
1118 
1119 	for ( i = 0; i < number_to_move; ++i )
1120 		*(dest++) = *(source++);
1121 
1122 	if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
1123 		/* don't do the read, it's not guaranteed to return an EOF,
1124 		 * just force an EOF
1125 		 */
1126 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
1127 
1128 	else
1129 		{
1130 			int num_to_read =
1131 			YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
1132 
1133 		while ( num_to_read <= 0 )
1134 			{ /* Not enough room in the buffer - grow it. */
1135 
1136 			/* just a shorter name for the current buffer */
1137 			YY_BUFFER_STATE b = YY_CURRENT_BUFFER;
1138 
1139 			int yy_c_buf_p_offset =
1140 				(int) ((yy_c_buf_p) - b->yy_ch_buf);
1141 
1142 			if ( b->yy_is_our_buffer )
1143 				{
1144 				int new_size = b->yy_buf_size * 2;
1145 
1146 				if ( new_size <= 0 )
1147 					b->yy_buf_size += b->yy_buf_size / 8;
1148 				else
1149 					b->yy_buf_size *= 2;
1150 
1151 				b->yy_ch_buf = (char *)
1152 					/* Include room in for 2 EOB chars. */
1153 					__ktrfmtrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2  );
1154 				}
1155 			else
1156 				/* Can't grow it, we don't own it. */
1157 				b->yy_ch_buf = 0;
1158 
1159 			if ( ! b->yy_ch_buf )
1160 				YY_FATAL_ERROR(
1161 				"fatal error - scanner input buffer overflow" );
1162 
1163 			(yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
1164 
1165 			num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
1166 						number_to_move - 1;
1167 
1168 			}
1169 
1170 		if ( num_to_read > YY_READ_BUF_SIZE )
1171 			num_to_read = YY_READ_BUF_SIZE;
1172 
1173 		/* Read in more data. */
1174 		YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
1175 			(yy_n_chars), (size_t) num_to_read );
1176 
1177 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
1178 		}
1179 
1180 	if ( (yy_n_chars) == 0 )
1181 		{
1182 		if ( number_to_move == YY_MORE_ADJ )
1183 			{
1184 			ret_val = EOB_ACT_END_OF_FILE;
1185 			__ktrfmtrestart(__ktrfmtin  );
1186 			}
1187 
1188 		else
1189 			{
1190 			ret_val = EOB_ACT_LAST_MATCH;
1191 			YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
1192 				YY_BUFFER_EOF_PENDING;
1193 			}
1194 		}
1195 
1196 	else
1197 		ret_val = EOB_ACT_CONTINUE_SCAN;
1198 
1199 	if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
1200 		/* Extend the array by 50%, plus the number we really need. */
1201 		yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
1202 		YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) __ktrfmtrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size  );
1203 		if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
1204 			YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
1205 	}
1206 
1207 	(yy_n_chars) += number_to_move;
1208 	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR;
1209 	YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR;
1210 
1211 	(yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
1212 
1213 	return ret_val;
1214 }
1215 
1216 /* yy_get_previous_state - get the state just before the EOB char was reached */
1217 
1218     static yy_state_type yy_get_previous_state (void)
1219 {
1220 	register yy_state_type yy_current_state;
1221 	register char *yy_cp;
1222 
1223 	yy_current_state = (yy_start);
1224 
1225 	for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
1226 		{
1227 		register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
1228 		if ( yy_accept[yy_current_state] )
1229 			{
1230 			(yy_last_accepting_state) = yy_current_state;
1231 			(yy_last_accepting_cpos) = yy_cp;
1232 			}
1233 		while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1234 			{
1235 			yy_current_state = (int) yy_def[yy_current_state];
1236 			if ( yy_current_state >= 26 )
1237 				yy_c = yy_meta[(unsigned int) yy_c];
1238 			}
1239 		yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1240 		}
1241 
1242 	return yy_current_state;
1243 }
1244 
1245 /* yy_try_NUL_trans - try to make a transition on the NUL character
1246  *
1247  * synopsis
1248  *	next_state = yy_try_NUL_trans( current_state );
1249  */
1250     static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state )
1251 {
1252 	register int yy_is_jam;
1253     	register char *yy_cp = (yy_c_buf_p);
1254 
1255 	register YY_CHAR yy_c = 1;
1256 	if ( yy_accept[yy_current_state] )
1257 		{
1258 		(yy_last_accepting_state) = yy_current_state;
1259 		(yy_last_accepting_cpos) = yy_cp;
1260 		}
1261 	while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
1262 		{
1263 		yy_current_state = (int) yy_def[yy_current_state];
1264 		if ( yy_current_state >= 26 )
1265 			yy_c = yy_meta[(unsigned int) yy_c];
1266 		}
1267 	yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
1268 	yy_is_jam = (yy_current_state == 25);
1269 
1270 	return yy_is_jam ? 0 : yy_current_state;
1271 }
1272 
1273 #ifndef YY_NO_INPUT
1274 #ifdef __cplusplus
1275     static int yyinput (void)
1276 #else
1277     static int input  (void)
1278 #endif
1279 
1280 {
1281 	int c;
1282 
1283 	*(yy_c_buf_p) = (yy_hold_char);
1284 
1285 	if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
1286 		{
1287 		/* yy_c_buf_p now points to the character we want to return.
1288 		 * If this occurs *before* the EOB characters, then it's a
1289 		 * valid NUL; if not, then we've hit the end of the buffer.
1290 		 */
1291 		if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
1292 			/* This was really a NUL. */
1293 			*(yy_c_buf_p) = '\0';
1294 
1295 		else
1296 			{ /* need more input */
1297 			int offset = (yy_c_buf_p) - (yytext_ptr);
1298 			++(yy_c_buf_p);
1299 
1300 			switch ( yy_get_next_buffer(  ) )
1301 				{
1302 				case EOB_ACT_LAST_MATCH:
1303 					/* This happens because yy_g_n_b()
1304 					 * sees that we've accumulated a
1305 					 * token and flags that we need to
1306 					 * try matching the token before
1307 					 * proceeding.  But for input(),
1308 					 * there's no matching to consider.
1309 					 * So convert the EOB_ACT_LAST_MATCH
1310 					 * to EOB_ACT_END_OF_FILE.
1311 					 */
1312 
1313 					/* Reset buffer status. */
1314 					__ktrfmtrestart(__ktrfmtin );
1315 
1316 					/*FALLTHROUGH*/
1317 
1318 				case EOB_ACT_END_OF_FILE:
1319 					{
1320 					if ( __ktrfmtwrap( ) )
1321 						return EOF;
1322 
1323 					if ( ! (yy_did_buffer_switch_on_eof) )
1324 						YY_NEW_FILE;
1325 #ifdef __cplusplus
1326 					return yyinput();
1327 #else
1328 					return input();
1329 #endif
1330 					}
1331 
1332 				case EOB_ACT_CONTINUE_SCAN:
1333 					(yy_c_buf_p) = (yytext_ptr) + offset;
1334 					break;
1335 				}
1336 			}
1337 		}
1338 
1339 	c = *(unsigned char *) (yy_c_buf_p);	/* cast for 8-bit char's */
1340 	*(yy_c_buf_p) = '\0';	/* preserve __ktrfmttext */
1341 	(yy_hold_char) = *++(yy_c_buf_p);
1342 
1343 	return c;
1344 }
1345 #endif	/* ifndef YY_NO_INPUT */
1346 
1347 /** Immediately switch to a different input stream.
1348  * @param input_file A readable stream.
1349  *
1350  * @note This function does not reset the start condition to @c INITIAL .
1351  */
1352     void __ktrfmtrestart  (FILE * input_file )
1353 {
1354 
1355 	if ( ! YY_CURRENT_BUFFER ){
1356         __ktrfmtensure_buffer_stack ();
1357 		YY_CURRENT_BUFFER_LVALUE =
1358             __ktrfmt_create_buffer(__ktrfmtin,YY_BUF_SIZE );
1359 	}
1360 
1361 	__ktrfmt_init_buffer(YY_CURRENT_BUFFER,input_file );
1362 	__ktrfmt_load_buffer_state( );
1363 }
1364 
1365 /** Switch to a different input buffer.
1366  * @param new_buffer The new input buffer.
1367  *
1368  */
1369     void __ktrfmt_switch_to_buffer  (YY_BUFFER_STATE  new_buffer )
1370 {
1371 
1372 	/* TODO. We should be able to replace this entire function body
1373 	 * with
1374 	 *		__ktrfmtpop_buffer_state();
1375 	 *		__ktrfmtpush_buffer_state(new_buffer);
1376      */
1377 	__ktrfmtensure_buffer_stack ();
1378 	if ( YY_CURRENT_BUFFER == new_buffer )
1379 		return;
1380 
1381 	if ( YY_CURRENT_BUFFER )
1382 		{
1383 		/* Flush out information for old buffer. */
1384 		*(yy_c_buf_p) = (yy_hold_char);
1385 		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
1386 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
1387 		}
1388 
1389 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
1390 	__ktrfmt_load_buffer_state( );
1391 
1392 	/* We don't actually know whether we did this switch during
1393 	 * EOF (__ktrfmtwrap()) processing, but the only time this flag
1394 	 * is looked at is after __ktrfmtwrap() is called, so it's safe
1395 	 * to go ahead and always set it.
1396 	 */
1397 	(yy_did_buffer_switch_on_eof) = 1;
1398 }
1399 
1400 static void __ktrfmt_load_buffer_state  (void)
1401 {
1402     	(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
1403 	(yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
1404 	__ktrfmtin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
1405 	(yy_hold_char) = *(yy_c_buf_p);
1406 }
1407 
1408 /** Allocate and initialize an input buffer state.
1409  * @param file A readable stream.
1410  * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
1411  *
1412  * @return the allocated buffer state.
1413  */
1414     YY_BUFFER_STATE __ktrfmt_create_buffer  (FILE * file, int  size )
1415 {
1416 	YY_BUFFER_STATE b;
1417 
1418 	b = (YY_BUFFER_STATE) __ktrfmtalloc(sizeof( struct yy_buffer_state )  );
1419 	if ( ! b )
1420 		YY_FATAL_ERROR( "out of dynamic memory in __ktrfmt_create_buffer()" );
1421 
1422 	b->yy_buf_size = size;
1423 
1424 	/* yy_ch_buf has to be 2 characters longer than the size given because
1425 	 * we need to put in 2 end-of-buffer characters.
1426 	 */
1427 	b->yy_ch_buf = (char *) __ktrfmtalloc(b->yy_buf_size + 2  );
1428 	if ( ! b->yy_ch_buf )
1429 		YY_FATAL_ERROR( "out of dynamic memory in __ktrfmt_create_buffer()" );
1430 
1431 	b->yy_is_our_buffer = 1;
1432 
1433 	__ktrfmt_init_buffer(b,file );
1434 
1435 	return b;
1436 }
1437 
1438 /** Destroy the buffer.
1439  * @param b a buffer created with __ktrfmt_create_buffer()
1440  *
1441  */
1442     void __ktrfmt_delete_buffer (YY_BUFFER_STATE  b )
1443 {
1444 
1445 	if ( ! b )
1446 		return;
1447 
1448 	if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
1449 		YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0;
1450 
1451 	if ( b->yy_is_our_buffer )
1452 		__ktrfmtfree((void *) b->yy_ch_buf  );
1453 
1454 	__ktrfmtfree((void *) b  );
1455 }
1456 
1457 #ifndef __cplusplus
1458 extern int isatty (int );
1459 #endif /* __cplusplus */
1460 
1461 /* Initializes or reinitializes a buffer.
1462  * This function is sometimes called more than once on the same buffer,
1463  * such as during a __ktrfmtrestart() or at EOF.
1464  */
1465     static void __ktrfmt_init_buffer  (YY_BUFFER_STATE  b, FILE * file )
1466 
1467 {
1468 	int oerrno = errno;
1469 
1470 	__ktrfmt_flush_buffer(b );
1471 
1472 	b->yy_input_file = file;
1473 	b->yy_fill_buffer = 1;
1474 
1475     /* If b is the current buffer, then __ktrfmt_init_buffer was _probably_
1476      * called from __ktrfmtrestart() or through yy_get_next_buffer.
1477      * In that case, we don't want to reset the lineno or column.
1478      */
1479     if (b != YY_CURRENT_BUFFER){
1480         b->yy_bs_lineno = 1;
1481         b->yy_bs_column = 0;
1482     }
1483 
1484         b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
1485 
1486 	errno = oerrno;
1487 }
1488 
1489 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
1490  * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
1491  *
1492  */
1493     void __ktrfmt_flush_buffer (YY_BUFFER_STATE  b )
1494 {
1495     	if ( ! b )
1496 		return;
1497 
1498 	b->yy_n_chars = 0;
1499 
1500 	/* We always need two end-of-buffer characters.  The first causes
1501 	 * a transition to the end-of-buffer state.  The second causes
1502 	 * a jam in that state.
1503 	 */
1504 	b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
1505 	b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
1506 
1507 	b->yy_buf_pos = &b->yy_ch_buf[0];
1508 
1509 	b->yy_at_bol = 1;
1510 	b->yy_buffer_status = YY_BUFFER_NEW;
1511 
1512 	if ( b == YY_CURRENT_BUFFER )
1513 		__ktrfmt_load_buffer_state( );
1514 }
1515 
1516 /** Pushes the new state onto the stack. The new state becomes
1517  *  the current state. This function will allocate the stack
1518  *  if necessary.
1519  *  @param new_buffer The new state.
1520  *
1521  */
1522 void __ktrfmtpush_buffer_state (YY_BUFFER_STATE new_buffer )
1523 {
1524     	if (new_buffer == NULL)
1525 		return;
1526 
1527 	__ktrfmtensure_buffer_stack();
1528 
1529 	/* This block is copied from __ktrfmt_switch_to_buffer. */
1530 	if ( YY_CURRENT_BUFFER )
1531 		{
1532 		/* Flush out information for old buffer. */
1533 		*(yy_c_buf_p) = (yy_hold_char);
1534 		YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
1535 		YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
1536 		}
1537 
1538 	/* Only push if top exists. Otherwise, replace top. */
1539 	if (YY_CURRENT_BUFFER)
1540 		(yy_buffer_stack_top)++;
1541 	YY_CURRENT_BUFFER_LVALUE = new_buffer;
1542 
1543 	/* copied from __ktrfmt_switch_to_buffer. */
1544 	__ktrfmt_load_buffer_state( );
1545 	(yy_did_buffer_switch_on_eof) = 1;
1546 }
1547 
1548 /** Removes and deletes the top of the stack, if present.
1549  *  The next element becomes the new top.
1550  *
1551  */
1552 void __ktrfmtpop_buffer_state (void)
1553 {
1554     	if (!YY_CURRENT_BUFFER)
1555 		return;
1556 
1557 	__ktrfmt_delete_buffer(YY_CURRENT_BUFFER );
1558 	YY_CURRENT_BUFFER_LVALUE = NULL;
1559 	if ((yy_buffer_stack_top) > 0)
1560 		--(yy_buffer_stack_top);
1561 
1562 	if (YY_CURRENT_BUFFER) {
1563 		__ktrfmt_load_buffer_state( );
1564 		(yy_did_buffer_switch_on_eof) = 1;
1565 	}
1566 }
1567 
1568 /* Allocates the stack if it does not exist.
1569  *  Guarantees space for at least one push.
1570  */
1571 static void __ktrfmtensure_buffer_stack (void)
1572 {
1573 	int num_to_alloc;
1574 
1575 	if (!(yy_buffer_stack)) {
1576 
1577 		/* First allocation is just for 2 elements, since we don't know if this
1578 		 * scanner will even need a stack. We use 2 instead of 1 to avoid an
1579 		 * immediate realloc on the next call.
1580          */
1581 		num_to_alloc = 1;
1582 		(yy_buffer_stack) = (struct yy_buffer_state**)__ktrfmtalloc
1583 								(num_to_alloc * sizeof(struct yy_buffer_state*)
1584 								);
1585 		if ( ! (yy_buffer_stack) )
1586 			YY_FATAL_ERROR( "out of dynamic memory in __ktrfmtensure_buffer_stack()" );
1587 
1588 		memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
1589 
1590 		(yy_buffer_stack_max) = num_to_alloc;
1591 		(yy_buffer_stack_top) = 0;
1592 		return;
1593 	}
1594 
1595 	if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
1596 
1597 		/* Increase the buffer to prepare for a possible push. */
1598 		int grow_size = 8 /* arbitrary grow size */;
1599 
1600 		num_to_alloc = (yy_buffer_stack_max) + grow_size;
1601 		(yy_buffer_stack) = (struct yy_buffer_state**)__ktrfmtrealloc
1602 								((yy_buffer_stack),
1603 								num_to_alloc * sizeof(struct yy_buffer_state*)
1604 								);
1605 		if ( ! (yy_buffer_stack) )
1606 			YY_FATAL_ERROR( "out of dynamic memory in __ktrfmtensure_buffer_stack()" );
1607 
1608 		/* zero only the new slots.*/
1609 		memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
1610 		(yy_buffer_stack_max) = num_to_alloc;
1611 	}
1612 }
1613 
1614 /** Setup the input buffer state to scan directly from a user-specified character buffer.
1615  * @param base the character buffer
1616  * @param size the size in bytes of the character buffer
1617  *
1618  * @return the newly allocated buffer state object.
1619  */
1620 YY_BUFFER_STATE __ktrfmt_scan_buffer  (char * base, yy_size_t  size )
1621 {
1622 	YY_BUFFER_STATE b;
1623 
1624 	if ( size < 2 ||
1625 	     base[size-2] != YY_END_OF_BUFFER_CHAR ||
1626 	     base[size-1] != YY_END_OF_BUFFER_CHAR )
1627 		/* They forgot to leave room for the EOB's. */
1628 		return 0;
1629 
1630 	b = (YY_BUFFER_STATE) __ktrfmtalloc(sizeof( struct yy_buffer_state )  );
1631 	if ( ! b )
1632 		YY_FATAL_ERROR( "out of dynamic memory in __ktrfmt_scan_buffer()" );
1633 
1634 	b->yy_buf_size = size - 2;	/* "- 2" to take care of EOB's */
1635 	b->yy_buf_pos = b->yy_ch_buf = base;
1636 	b->yy_is_our_buffer = 0;
1637 	b->yy_input_file = 0;
1638 	b->yy_n_chars = b->yy_buf_size;
1639 	b->yy_is_interactive = 0;
1640 	b->yy_at_bol = 1;
1641 	b->yy_fill_buffer = 0;
1642 	b->yy_buffer_status = YY_BUFFER_NEW;
1643 
1644 	__ktrfmt_switch_to_buffer(b  );
1645 
1646 	return b;
1647 }
1648 
1649 /** Setup the input buffer state to scan a string. The next call to __ktrfmtlex() will
1650  * scan from a @e copy of @a str.
1651  * @param yystr a NUL-terminated string to scan
1652  *
1653  * @return the newly allocated buffer state object.
1654  * @note If you want to scan bytes that may contain NUL values, then use
1655  *       __ktrfmt_scan_bytes() instead.
1656  */
1657 YY_BUFFER_STATE __ktrfmt_scan_string (yyconst char * yystr )
1658 {
1659 
1660 	return __ktrfmt_scan_bytes(yystr,strlen(yystr) );
1661 }
1662 
1663 /** Setup the input buffer state to scan the given bytes. The next call to __ktrfmtlex() will
1664  * scan from a @e copy of @a bytes.
1665  * @param yybytes the byte buffer to scan
1666  * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
1667  *
1668  * @return the newly allocated buffer state object.
1669  */
1670 YY_BUFFER_STATE __ktrfmt_scan_bytes  (yyconst char * yybytes, int  _yybytes_len )
1671 {
1672 	YY_BUFFER_STATE b;
1673 	char *buf;
1674 	yy_size_t n;
1675 	int i;
1676 
1677 	/* Get memory for full buffer, including space for trailing EOB's. */
1678 	n = _yybytes_len + 2;
1679 	buf = (char *) __ktrfmtalloc(n  );
1680 	if ( ! buf )
1681 		YY_FATAL_ERROR( "out of dynamic memory in __ktrfmt_scan_bytes()" );
1682 
1683 	for ( i = 0; i < _yybytes_len; ++i )
1684 		buf[i] = yybytes[i];
1685 
1686 	buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
1687 
1688 	b = __ktrfmt_scan_buffer(buf,n );
1689 	if ( ! b )
1690 		YY_FATAL_ERROR( "bad buffer in __ktrfmt_scan_bytes()" );
1691 
1692 	/* It's okay to grow etc. this buffer, and we should throw it
1693 	 * away when we're done.
1694 	 */
1695 	b->yy_is_our_buffer = 1;
1696 
1697 	return b;
1698 }
1699 
1700 #ifndef YY_EXIT_FAILURE
1701 #define YY_EXIT_FAILURE 2
1702 #endif
1703 
1704 static void yy_fatal_error (yyconst char* msg )
1705 {
1706     	(void) fprintf( stderr, "%s\n", msg );
1707 	exit( YY_EXIT_FAILURE );
1708 }
1709 
1710 /* Redefine yyless() so it works in section 3 code. */
1711 
1712 #undef yyless
1713 #define yyless(n) \
1714 	do \
1715 		{ \
1716 		/* Undo effects of setting up __ktrfmttext. */ \
1717         int yyless_macro_arg = (n); \
1718         YY_LESS_LINENO(yyless_macro_arg);\
1719 		__ktrfmttext[__ktrfmtleng] = (yy_hold_char); \
1720 		(yy_c_buf_p) = __ktrfmttext + yyless_macro_arg; \
1721 		(yy_hold_char) = *(yy_c_buf_p); \
1722 		*(yy_c_buf_p) = '\0'; \
1723 		__ktrfmtleng = yyless_macro_arg; \
1724 		} \
1725 	while ( 0 )
1726 
1727 /* Accessor  methods (get/set functions) to struct members. */
1728 
1729 /** Get the current line number.
1730  *
1731  */
1732 int __ktrfmtget_lineno  (void)
1733 {
1734 
1735     return __ktrfmtlineno;
1736 }
1737 
1738 /** Get the input stream.
1739  *
1740  */
1741 FILE *__ktrfmtget_in  (void)
1742 {
1743         return __ktrfmtin;
1744 }
1745 
1746 /** Get the output stream.
1747  *
1748  */
1749 FILE *__ktrfmtget_out  (void)
1750 {
1751         return __ktrfmtout;
1752 }
1753 
1754 /** Get the length of the current token.
1755  *
1756  */
1757 int __ktrfmtget_leng  (void)
1758 {
1759         return __ktrfmtleng;
1760 }
1761 
1762 /** Get the current token.
1763  *
1764  */
1765 
1766 char *__ktrfmtget_text  (void)
1767 {
1768         return __ktrfmttext;
1769 }
1770 
1771 /** Set the current line number.
1772  * @param line_number
1773  *
1774  */
1775 void __ktrfmtset_lineno (int  line_number )
1776 {
1777 
1778     __ktrfmtlineno = line_number;
1779 }
1780 
1781 /** Set the input stream. This does not discard the current
1782  * input buffer.
1783  * @param in_str A readable stream.
1784  *
1785  * @see __ktrfmt_switch_to_buffer
1786  */
1787 void __ktrfmtset_in (FILE *  in_str )
1788 {
1789         __ktrfmtin = in_str ;
1790 }
1791 
1792 void __ktrfmtset_out (FILE *  out_str )
1793 {
1794         __ktrfmtout = out_str ;
1795 }
1796 
1797 int __ktrfmtget_debug  (void)
1798 {
1799         return __ktrfmt_flex_debug;
1800 }
1801 
1802 void __ktrfmtset_debug (int  bdebug )
1803 {
1804         __ktrfmt_flex_debug = bdebug ;
1805 }
1806 
1807 static int yy_init_globals (void)
1808 {
1809         /* Initialization is the same as for the non-reentrant scanner.
1810      * This function is called from __ktrfmtlex_destroy(), so don't allocate here.
1811      */
1812 
1813     (yy_buffer_stack) = 0;
1814     (yy_buffer_stack_top) = 0;
1815     (yy_buffer_stack_max) = 0;
1816     (yy_c_buf_p) = (char *) 0;
1817     (yy_init) = 0;
1818     (yy_start) = 0;
1819 
1820 /* Defined in main.c */
1821 #ifdef YY_STDINIT
1822     __ktrfmtin = stdin;
1823     __ktrfmtout = stdout;
1824 #else
1825     __ktrfmtin = (FILE *) 0;
1826     __ktrfmtout = (FILE *) 0;
1827 #endif
1828 
1829     /* For future reference: Set errno on error, since we are called by
1830      * __ktrfmtlex_init()
1831      */
1832     return 0;
1833 }
1834 
1835 /* __ktrfmtlex_destroy is for both reentrant and non-reentrant scanners. */
1836 int __ktrfmtlex_destroy  (void)
1837 {
1838 
1839     /* Pop the buffer stack, destroying each element. */
1840 	while(YY_CURRENT_BUFFER){
1841 		__ktrfmt_delete_buffer(YY_CURRENT_BUFFER  );
1842 		YY_CURRENT_BUFFER_LVALUE = NULL;
1843 		__ktrfmtpop_buffer_state();
1844 	}
1845 
1846 	/* Destroy the stack itself. */
1847 	__ktrfmtfree((yy_buffer_stack) );
1848 	(yy_buffer_stack) = NULL;
1849 
1850     /* Reset the globals. This is important in a non-reentrant scanner so the next time
1851      * __ktrfmtlex() is called, initialization will occur. */
1852     yy_init_globals( );
1853 
1854     return 0;
1855 }
1856 
1857 /*
1858  * Internal utility routines.
1859  */
1860 
1861 #ifndef yytext_ptr
1862 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
1863 {
1864 	register int i;
1865 	for ( i = 0; i < n; ++i )
1866 		s1[i] = s2[i];
1867 }
1868 #endif
1869 
1870 #ifdef YY_NEED_STRLEN
1871 static int yy_flex_strlen (yyconst char * s )
1872 {
1873 	register int n;
1874 	for ( n = 0; s[n]; ++n )
1875 		;
1876 
1877 	return n;
1878 }
1879 #endif
1880 
1881 void *__ktrfmtalloc (yy_size_t  size )
1882 {
1883 	return (void *) malloc( size );
1884 }
1885 
1886 void *__ktrfmtrealloc  (void * ptr, yy_size_t  size )
1887 {
1888 	/* The cast to (char *) in the following accommodates both
1889 	 * implementations that use char* generic pointers, and those
1890 	 * that use void* generic pointers.  It works with the latter
1891 	 * because both ANSI C and C++ allow castless assignment from
1892 	 * any pointer type to void*, and deal with argument conversions
1893 	 * as though doing an assignment.
1894 	 */
1895 	return (void *) realloc( (char *) ptr, size );
1896 }
1897 
1898 void __ktrfmtfree (void * ptr )
1899 {
1900 	free( (char *) ptr );	/* see __ktrfmtrealloc() for (char *) cast */
1901 }
1902 
1903 #define YYTABLES_NAME "yytables"
1904 
1905 #line 135 "ktrfmt.l"
1906 
1907 
1908