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