Changeset 31


Ignore:
Timestamp:
01/22/06 12:46:55 (8 years ago)
Author:
root
Message:

Better cryptpw patch, without all the gruff.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • floppyfw/patches/busybox/cryptpw.diff

    r30 r31  
    1212        APPLET(cut, cut_main, _BB_DIR_USR_BIN, _BB_SUID_NEVER) 
    1313 #endif 
    14 diff -urN busybox-1.1.0/include/config.h busybox-1.1.0-cryptpw/include/config.h 
    15 --- busybox-1.1.0/include/config.h      1969-12-31 17:00:00.000000000 -0700 
    16 +++ busybox-1.1.0-cryptpw/include/config.h      2006-01-18 14:40:38.000000000 -0700 
    17 @@ -0,0 +1,555 @@ 
    18 +/* 
    19 + * Automatically generated header file: don't edit 
    20 + */ 
    21 + 
    22 +/* Version Number */ 
    23 +#define BB_VER "1.1.0" 
    24 +#define BB_BT "2006.01.18-21:40+0000" 
    25 + 
    26 +#define HAVE_DOT_CONFIG 1 
    27 + 
    28 +/* 
    29 + * General Configuration 
    30 + */ 
    31 +#define CONFIG_FEATURE_BUFFERS_USE_MALLOC 1 
    32 +#undef CONFIG_FEATURE_BUFFERS_GO_ON_STACK 
    33 +#undef CONFIG_FEATURE_BUFFERS_GO_IN_BSS 
    34 +#undef CONFIG_FEATURE_VERBOSE_USAGE 
    35 +#undef CONFIG_FEATURE_INSTALLER 
    36 +#undef CONFIG_LOCALE_SUPPORT 
    37 +#undef CONFIG_FEATURE_DEVFS 
    38 +#undef CONFIG_FEATURE_DEVPTS 
    39 +#undef CONFIG_FEATURE_CLEAN_UP 
    40 +#undef CONFIG_FEATURE_SUID 
    41 +#undef CONFIG_FEATURE_SUID_CONFIG 
    42 +#undef CONFIG_FEATURE_SUID_CONFIG_QUIET 
    43 +#undef CONFIG_SELINUX 
    44 + 
    45 +/* 
    46 + * Build Options 
    47 + */ 
    48 +#undef CONFIG_STATIC 
    49 +#undef CONFIG_LFS 
    50 +#undef USING_CROSS_COMPILER 
    51 +#define CROSS_COMPILER_PREFIX "" 
    52 +#define EXTRA_CFLAGS_OPTIONS "" 
    53 +#undef CONFIG_FEATURE_SUSv2 
    54 +#undef CONFIG_FEATURE_SUSv2_OBSOLETE 
    55 + 
    56 +/* 
    57 + * Installation Options 
    58 + */ 
    59 +#undef CONFIG_INSTALL_NO_USR 
    60 +#define CONFIG_INSTALL_APPLET_SYMLINKS 1 
    61 +#undef CONFIG_INSTALL_APPLET_HARDLINKS 
    62 +#undef CONFIG_INSTALL_APPLET_DONT 
    63 +#define PREFIX "./_install" 
    64 + 
    65 +/* 
    66 + * Archival Utilities 
    67 + */ 
    68 +#undef CONFIG_AR 
    69 +#undef CONFIG_FEATURE_AR_LONG_FILENAMES 
    70 +#undef CONFIG_BUNZIP2 
    71 +#undef CONFIG_CPIO 
    72 +#undef CONFIG_DPKG 
    73 +#undef CONFIG_DPKG_DEB 
    74 +#undef CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY 
    75 +#undef CONFIG_GUNZIP 
    76 +#undef CONFIG_FEATURE_GUNZIP_UNCOMPRESS 
    77 +#undef CONFIG_GZIP 
    78 +#undef CONFIG_RPM2CPIO 
    79 +#undef CONFIG_RPM 
    80 +#undef CONFIG_TAR 
    81 +#undef CONFIG_FEATURE_TAR_CREATE 
    82 +#undef CONFIG_FEATURE_TAR_BZIP2 
    83 +#undef CONFIG_FEATURE_TAR_FROM 
    84 +#undef CONFIG_FEATURE_TAR_GZIP 
    85 +#undef CONFIG_FEATURE_TAR_COMPRESS 
    86 +#undef CONFIG_FEATURE_TAR_OLDGNU_COMPATABILITY 
    87 +#undef CONFIG_FEATURE_TAR_GNU_EXTENSIONS 
    88 +#undef CONFIG_FEATURE_TAR_LONG_OPTIONS 
    89 +#undef CONFIG_UNCOMPRESS 
    90 +#undef CONFIG_UNZIP 
    91 +#undef CONFIG_FEATURE_UNARCHIVE_TAPE 
    92 +#undef CONFIG_FEATURE_DEB_TAR_GZ 
    93 +#undef CONFIG_FEATURE_DEB_TAR_BZ2 
    94 + 
    95 +/* 
    96 + * Coreutils 
    97 + */ 
    98 +#undef CONFIG_BASENAME 
    99 +#undef CONFIG_CAL 
    100 +#undef CONFIG_CAT 
    101 +#undef CONFIG_CHGRP 
    102 +#undef CONFIG_CHMOD 
    103 +#undef CONFIG_CHOWN 
    104 +#undef CONFIG_CHROOT 
    105 +#undef CONFIG_CMP 
    106 +#undef CONFIG_COMM 
    107 +#undef CONFIG_CP 
    108 +#undef CONFIG_CUT 
    109 +#undef CONFIG_DATE 
    110 +#undef CONFIG_FEATURE_DATE_ISOFMT 
    111 +#undef CONFIG_DD 
    112 +#undef CONFIG_DF 
    113 +#undef CONFIG_DIRNAME 
    114 +#undef CONFIG_DOS2UNIX 
    115 +#undef CONFIG_UNIX2DOS 
    116 +#undef CONFIG_DU 
    117 +#undef CONFIG_FEATURE_DU_DEFALT_BLOCKSIZE_1K 
    118 +#undef CONFIG_ECHO 
    119 +#undef CONFIG_FEATURE_FANCY_ECHO 
    120 +#undef CONFIG_ENV 
    121 +#undef CONFIG_EXPR 
    122 +#undef CONFIG_FALSE 
    123 +#undef CONFIG_FOLD 
    124 +#undef CONFIG_HEAD 
    125 +#undef CONFIG_FEATURE_FANCY_HEAD 
    126 +#undef CONFIG_HOSTID 
    127 +#undef CONFIG_ID 
    128 +#undef CONFIG_INSTALL 
    129 +#undef CONFIG_LENGTH 
    130 +#undef CONFIG_LN 
    131 +#undef CONFIG_LOGNAME 
    132 +#undef CONFIG_LS 
    133 +#undef CONFIG_FEATURE_LS_FILETYPES 
    134 +#undef CONFIG_FEATURE_LS_FOLLOWLINKS 
    135 +#undef CONFIG_FEATURE_LS_RECURSIVE 
    136 +#undef CONFIG_FEATURE_LS_SORTFILES 
    137 +#undef CONFIG_FEATURE_LS_TIMESTAMPS 
    138 +#undef CONFIG_FEATURE_LS_USERNAME 
    139 +#undef CONFIG_FEATURE_LS_COLOR 
    140 +#undef CONFIG_FEATURE_LS_COLOR_IS_DEFAULT 
    141 +#undef CONFIG_MD5SUM 
    142 +#undef CONFIG_MKDIR 
    143 +#undef CONFIG_MKFIFO 
    144 +#undef CONFIG_MKNOD 
    145 +#undef CONFIG_MV 
    146 +#undef CONFIG_NICE 
    147 +#undef CONFIG_NOHUP 
    148 +#undef CONFIG_OD 
    149 +#undef CONFIG_PRINTENV 
    150 +#undef CONFIG_PRINTF 
    151 +#undef CONFIG_PWD 
    152 +#undef CONFIG_REALPATH 
    153 +#undef CONFIG_RM 
    154 +#undef CONFIG_RMDIR 
    155 +#undef CONFIG_SEQ 
    156 +#undef CONFIG_SHA1SUM 
    157 +#undef CONFIG_SLEEP 
    158 +#undef CONFIG_FEATURE_FANCY_SLEEP 
    159 +#undef CONFIG_SORT 
    160 +#undef CONFIG_FEATURE_SORT_BIG 
    161 +#undef CONFIG_STAT 
    162 +#undef CONFIG_FEATURE_STAT_FORMAT 
    163 +#undef CONFIG_STTY 
    164 +#undef CONFIG_SUM 
    165 +#undef CONFIG_SYNC 
    166 +#undef CONFIG_TAIL 
    167 +#undef CONFIG_FEATURE_FANCY_TAIL 
    168 +#undef CONFIG_TEE 
    169 +#undef CONFIG_FEATURE_TEE_USE_BLOCK_IO 
    170 +#undef CONFIG_TEST 
    171 +#undef CONFIG_FEATURE_TEST_64 
    172 +#undef CONFIG_TOUCH 
    173 +#undef CONFIG_TR 
    174 +#undef CONFIG_FEATURE_TR_CLASSES 
    175 +#undef CONFIG_FEATURE_TR_EQUIV 
    176 +#undef CONFIG_TRUE 
    177 +#undef CONFIG_TTY 
    178 +#undef CONFIG_UNAME 
    179 +#undef CONFIG_UNIQ 
    180 +#undef CONFIG_USLEEP 
    181 +#undef CONFIG_UUDECODE 
    182 +#undef CONFIG_UUENCODE 
    183 +#undef CONFIG_WATCH 
    184 +#undef CONFIG_WC 
    185 +#undef CONFIG_WHO 
    186 +#undef CONFIG_WHOAMI 
    187 +#undef CONFIG_YES 
    188 +#undef CONFIG_FEATURE_PRESERVE_HARDLINKS 
    189 +#undef CONFIG_FEATURE_AUTOWIDTH 
    190 +#undef CONFIG_FEATURE_HUMAN_READABLE 
    191 +#undef CONFIG_FEATURE_MD5_SHA1_SUM_CHECK 
    192 + 
    193 +/* 
    194 + * Console Utilities 
    195 + */ 
    196 +#undef CONFIG_CHVT 
    197 +#undef CONFIG_CLEAR 
    198 +#undef CONFIG_DEALLOCVT 
    199 +#undef CONFIG_DUMPKMAP 
    200 +#undef CONFIG_LOADFONT 
    201 +#undef CONFIG_LOADKMAP 
    202 +#undef CONFIG_OPENVT 
    203 +#undef CONFIG_RESET 
    204 +#undef CONFIG_SETCONSOLE 
    205 +#undef CONFIG_SETKEYCODES 
    206 + 
    207 +/* 
    208 + * Debian Utilities 
    209 + */ 
    210 +#undef CONFIG_MKTEMP 
    211 +#undef CONFIG_PIPE_PROGRESS 
    212 +#undef CONFIG_READLINK 
    213 +#undef CONFIG_FEATURE_READLINK_FOLLOW 
    214 +#undef CONFIG_RUN_PARTS 
    215 +#undef CONFIG_START_STOP_DAEMON 
    216 +#undef CONFIG_WHICH 
    217 + 
    218 +/* 
    219 + * Linux Ext2 FS Progs 
    220 + */ 
    221 +#undef CONFIG_CHATTR 
    222 +#undef CONFIG_E2FSCK 
    223 +#undef CONFIG_FSCK 
    224 +#undef CONFIG_LSATTR 
    225 +#undef CONFIG_MKE2FS 
    226 +#undef CONFIG_TUNE2FS 
    227 +#undef CONFIG_E2LABEL 
    228 +#undef CONFIG_FINDFS 
    229 + 
    230 +/* 
    231 + * Editors 
    232 + */ 
    233 +#undef CONFIG_AWK 
    234 +#undef CONFIG_FEATURE_AWK_MATH 
    235 +#undef CONFIG_PATCH 
    236 +#undef CONFIG_SED 
    237 +#undef CONFIG_VI 
    238 +#undef CONFIG_FEATURE_VI_COLON 
    239 +#undef CONFIG_FEATURE_VI_YANKMARK 
    240 +#undef CONFIG_FEATURE_VI_SEARCH 
    241 +#undef CONFIG_FEATURE_VI_USE_SIGNALS 
    242 +#undef CONFIG_FEATURE_VI_DOT_CMD 
    243 +#undef CONFIG_FEATURE_VI_READONLY 
    244 +#undef CONFIG_FEATURE_VI_SETOPTS 
    245 +#undef CONFIG_FEATURE_VI_SET 
    246 +#undef CONFIG_FEATURE_VI_WIN_RESIZE 
    247 +#undef CONFIG_FEATURE_VI_OPTIMIZE_CURSOR 
    248 + 
    249 +/* 
    250 + * Finding Utilities 
    251 + */ 
    252 +#undef CONFIG_FIND 
    253 +#undef CONFIG_FEATURE_FIND_MTIME 
    254 +#undef CONFIG_FEATURE_FIND_PERM 
    255 +#undef CONFIG_FEATURE_FIND_TYPE 
    256 +#undef CONFIG_FEATURE_FIND_XDEV 
    257 +#undef CONFIG_FEATURE_FIND_NEWER 
    258 +#undef CONFIG_FEATURE_FIND_INUM 
    259 +#undef CONFIG_FEATURE_FIND_EXEC 
    260 +#undef CONFIG_GREP 
    261 +#undef CONFIG_FEATURE_GREP_EGREP_ALIAS 
    262 +#undef CONFIG_FEATURE_GREP_FGREP_ALIAS 
    263 +#undef CONFIG_FEATURE_GREP_CONTEXT 
    264 +#undef CONFIG_XARGS 
    265 +#undef CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION 
    266 +#undef CONFIG_FEATURE_XARGS_SUPPORT_QUOTES 
    267 +#undef CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT 
    268 +#undef CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM 
    269 + 
    270 +/* 
    271 + * Init Utilities 
    272 + */ 
    273 +#undef CONFIG_INIT 
    274 +#undef CONFIG_FEATURE_USE_INITTAB 
    275 +#undef CONFIG_FEATURE_INITRD 
    276 +#undef CONFIG_FEATURE_INIT_COREDUMPS 
    277 +#undef CONFIG_FEATURE_INIT_SCTTY 
    278 +#undef CONFIG_FEATURE_EXTRA_QUIET 
    279 +#undef CONFIG_HALT 
    280 +#undef CONFIG_MESG 
    281 +#undef CONFIG_POWEROFF 
    282 +#undef CONFIG_REBOOT 
    283 + 
    284 +/* 
    285 + * Login/Password Management Utilities 
    286 + */ 
    287 +#undef CONFIG_FEATURE_SHADOWPASSWDS 
    288 +#undef CONFIG_USE_BB_SHADOW 
    289 +#undef CONFIG_USE_BB_PWD_GRP 
    290 +#undef CONFIG_ADDGROUP 
    291 +#undef CONFIG_DELGROUP 
    292 +#undef CONFIG_ADDUSER 
    293 +#undef CONFIG_DELUSER 
    294 +#undef CONFIG_GETTY 
    295 +#undef CONFIG_FEATURE_UTMP 
    296 +#undef CONFIG_FEATURE_WTMP 
    297 +#undef CONFIG_LOGIN 
    298 +#undef CONFIG_FEATURE_SECURETTY 
    299 +#undef CONFIG_PASSWD 
    300 +#undef CONFIG_CRYPTPW 
    301 +#undef CONFIG_SU 
    302 +#undef CONFIG_SULOGIN 
    303 +#undef CONFIG_VLOCK 
    304 + 
    305 +/* 
    306 + * Miscellaneous Utilities 
    307 + */ 
    308 +#undef CONFIG_ADJTIMEX 
    309 +#undef CONFIG_BBCONFIG 
    310 +#undef CONFIG_CROND 
    311 +#undef CONFIG_FEATURE_CROND_CALL_SENDMAIL 
    312 +#undef CONFIG_CRONTAB 
    313 +#undef CONFIG_DC 
    314 +#undef CONFIG_DEVFSD 
    315 +#undef CONFIG_DEVFSD_MODLOAD 
    316 +#undef CONFIG_DEVFSD_FG_NP 
    317 +#undef CONFIG_DEVFSD_VERBOSE 
    318 +#undef CONFIG_EJECT 
    319 +#undef CONFIG_LAST 
    320 +#undef CONFIG_LESS 
    321 +#undef CONFIG_FEATURE_LESS_BRACKETS 
    322 +#undef CONFIG_FEATURE_LESS_FLAGS 
    323 +#undef CONFIG_FEATURE_LESS_FLAGCS 
    324 +#undef CONFIG_FEATURE_LESS_MARKS 
    325 +#undef CONFIG_FEATURE_LESS_REGEXP 
    326 +#undef CONFIG_HDPARM 
    327 +#undef CONFIG_FEATURE_HDPARM_GET_IDENTITY 
    328 +#undef CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF 
    329 +#undef CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF 
    330 +#undef CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET 
    331 +#undef CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF 
    332 +#undef CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA 
    333 +#undef CONFIG_MAKEDEVS 
    334 +#undef CONFIG_FEATURE_MAKEDEVS_LEAF 
    335 +#undef CONFIG_FEATURE_MAKEDEVS_TABLE 
    336 +#undef CONFIG_MOUNTPOINT 
    337 +#undef CONFIG_MT 
    338 +#undef BB_APPLET_RUNLEVEL 
    339 +#undef CONFIG_RX 
    340 +#undef CONFIG_STRINGS 
    341 +#undef CONFIG_SETSID 
    342 +#undef CONFIG_TIME 
    343 +#undef CONFIG_WATCHDOG 
    344 + 
    345 +/* 
    346 + * Linux Module Utilities 
    347 + */ 
    348 +#undef CONFIG_INSMOD 
    349 +#undef CONFIG_FEATURE_INSMOD_VERSION_CHECKING 
    350 +#undef CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS 
    351 +#undef CONFIG_FEATURE_INSMOD_LOADINKMEM 
    352 +#undef CONFIG_FEATURE_INSMOD_LOAD_MAP 
    353 +#undef CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL 
    354 +#undef CONFIG_RMMOD 
    355 +#undef CONFIG_LSMOD 
    356 +#undef CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT 
    357 +#undef CONFIG_MODPROBE 
    358 +#undef CONFIG_FEATURE_MODPROBE_MULTIPLE_OPTIONS 
    359 +#undef CONFIG_FEATURE_CHECK_TAINTED_MODULE 
    360 +#undef CONFIG_FEATURE_2_4_MODULES 
    361 +#undef CONFIG_FEATURE_2_6_MODULES 
    362 +#undef CONFIG_FEATURE_QUERY_MODULE_INTERFACE 
    363 + 
    364 +/* 
    365 + * Networking Utilities 
    366 + */ 
    367 +#undef CONFIG_FEATURE_IPV6 
    368 +#undef CONFIG_ARPING 
    369 +#undef CONFIG_ETHER_WAKE 
    370 +#undef CONFIG_FAKEIDENTD 
    371 +#undef CONFIG_FTPGET 
    372 +#undef CONFIG_FTPPUT 
    373 +#undef CONFIG_HOSTNAME 
    374 +#undef CONFIG_HTTPD 
    375 +#undef CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY 
    376 +#undef CONFIG_FEATURE_HTTPD_BASIC_AUTH 
    377 +#undef CONFIG_FEATURE_HTTPD_AUTH_MD5 
    378 +#undef CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP 
    379 +#undef CONFIG_FEATURE_HTTPD_SETUID 
    380 +#undef CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES 
    381 +#undef CONFIG_FEATURE_HTTPD_CGI 
    382 +#undef CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV 
    383 +#undef CONFIG_FEATURE_HTTPD_ENCODE_URL_STR 
    384 +#undef CONFIG_IFCONFIG 
    385 +#undef CONFIG_FEATURE_IFCONFIG_STATUS 
    386 +#undef CONFIG_FEATURE_IFCONFIG_SLIP 
    387 +#undef CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ 
    388 +#undef CONFIG_FEATURE_IFCONFIG_HW 
    389 +#undef CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS 
    390 +#undef CONFIG_IFUPDOWN 
    391 +#undef CONFIG_FEATURE_IFUPDOWN_IP 
    392 +#undef CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN 
    393 +#undef CONFIG_FEATURE_IFUPDOWN_IPV4 
    394 +#undef CONFIG_FEATURE_IFUPDOWN_IPV6 
    395 +#undef CONFIG_FEATURE_IFUPDOWN_IPX 
    396 +#undef CONFIG_FEATURE_IFUPDOWN_MAPPING 
    397 +#undef CONFIG_INETD 
    398 +#undef CONFIG_FEATURE_INETD_SUPPORT_BILTIN_ECHO 
    399 +#undef CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DISCARD 
    400 +#undef CONFIG_FEATURE_INETD_SUPPORT_BILTIN_TIME 
    401 +#undef CONFIG_FEATURE_INETD_SUPPORT_BILTIN_DAYTIME 
    402 +#undef CONFIG_FEATURE_INETD_SUPPORT_BILTIN_CHARGEN 
    403 +#undef CONFIG_FEATURE_INETD_RPC 
    404 +#undef CONFIG_IP 
    405 +#undef CONFIG_FEATURE_IP_ADDRESS 
    406 +#undef CONFIG_FEATURE_IP_LINK 
    407 +#undef CONFIG_FEATURE_IP_ROUTE 
    408 +#undef CONFIG_FEATURE_IP_TUNNEL 
    409 +#undef CONFIG_IPCALC 
    410 +#undef CONFIG_FEATURE_IPCALC_FANCY 
    411 +#undef CONFIG_IPADDR 
    412 +#undef CONFIG_IPLINK 
    413 +#undef CONFIG_IPROUTE 
    414 +#undef CONFIG_IPTUNNEL 
    415 +#undef CONFIG_NAMEIF 
    416 +#undef CONFIG_NC 
    417 +#undef CONFIG_NC_GAPING_SECURITY_HOLE 
    418 +#undef CONFIG_NETSTAT 
    419 +#undef CONFIG_NSLOOKUP 
    420 +#undef CONFIG_PING 
    421 +#undef CONFIG_FEATURE_FANCY_PING 
    422 +#undef CONFIG_PING6 
    423 +#undef CONFIG_FEATURE_FANCY_PING6 
    424 +#undef CONFIG_ROUTE 
    425 +#undef CONFIG_TELNET 
    426 +#undef CONFIG_FEATURE_TELNET_TTYPE 
    427 +#undef CONFIG_FEATURE_TELNET_AUTOLOGIN 
    428 +#undef CONFIG_TELNETD 
    429 +#undef CONFIG_FEATURE_TELNETD_INETD 
    430 +#undef CONFIG_TFTP 
    431 +#undef CONFIG_FEATURE_TFTP_GET 
    432 +#undef CONFIG_FEATURE_TFTP_PUT 
    433 +#undef CONFIG_FEATURE_TFTP_BLOCKSIZE 
    434 +#undef CONFIG_FEATURE_TFTP_DEBUG 
    435 +#undef CONFIG_TRACEROUTE 
    436 +#undef CONFIG_FEATURE_TRACEROUTE_VERBOSE 
    437 +#undef CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE 
    438 +#undef CONFIG_FEATURE_TRACEROUTE_USE_ICMP 
    439 +#undef CONFIG_VCONFIG 
    440 +#undef CONFIG_WGET 
    441 +#undef CONFIG_FEATURE_WGET_STATUSBAR 
    442 +#undef CONFIG_FEATURE_WGET_AUTHENTICATION 
    443 +#undef CONFIG_FEATURE_WGET_IP6_LITERAL 
    444 + 
    445 +/* 
    446 + * udhcp Server/Client 
    447 + */ 
    448 +#undef CONFIG_UDHCPD 
    449 +#undef CONFIG_UDHCPC 
    450 +#undef CONFIG_DUMPLEASES 
    451 +#undef CONFIG_FEATURE_UDHCP_SYSLOG 
    452 +#undef CONFIG_FEATURE_UDHCP_DEBUG 
    453 +#undef CONFIG_ZCIP 
    454 + 
    455 +/* 
    456 + * Process Utilities 
    457 + */ 
    458 +#undef CONFIG_FREE 
    459 +#undef CONFIG_FUSER 
    460 +#undef CONFIG_KILL 
    461 +#undef CONFIG_KILLALL 
    462 +#undef CONFIG_PIDOF 
    463 +#undef CONFIG_FEATURE_PIDOF_SINGLE 
    464 +#undef CONFIG_FEATURE_PIDOF_OMIT 
    465 +#undef CONFIG_PS 
    466 +#undef CONFIG_FEATURE_PS_WIDE 
    467 +#undef CONFIG_RENICE 
    468 +#undef CONFIG_BB_SYSCTL 
    469 +#undef CONFIG_TOP 
    470 +#undef CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE 
    471 +#undef CONFIG_UPTIME 
    472 + 
    473 +/* 
    474 + * Shells 
    475 + */ 
    476 +#undef CONFIG_FEATURE_SH_IS_ASH 
    477 +#undef CONFIG_FEATURE_SH_IS_HUSH 
    478 +#undef CONFIG_FEATURE_SH_IS_LASH 
    479 +#undef CONFIG_FEATURE_SH_IS_MSH 
    480 +#define CONFIG_FEATURE_SH_IS_NONE 1 
    481 +#undef CONFIG_ASH 
    482 +#undef CONFIG_ASH_JOB_CONTROL 
    483 +#undef CONFIG_ASH_READ_NCHARS 
    484 +#undef CONFIG_ASH_READ_TIMEOUT 
    485 +#undef CONFIG_ASH_ALIAS 
    486 +#undef CONFIG_ASH_MATH_SUPPORT 
    487 +#undef CONFIG_ASH_MATH_SUPPORT_64 
    488 +#undef CONFIG_ASH_GETOPTS 
    489 +#undef CONFIG_ASH_CMDCMD 
    490 +#undef CONFIG_ASH_BUILTIN_ECHO 
    491 +#undef CONFIG_ASH_MAIL 
    492 +#undef CONFIG_ASH_OPTIMIZE_FOR_SIZE 
    493 +#undef CONFIG_ASH_RANDOM_SUPPORT 
    494 +#undef CONFIG_ASH_EXPAND_PRMT 
    495 +#undef CONFIG_HUSH 
    496 +#undef CONFIG_LASH 
    497 +#undef CONFIG_MSH 
    498 +#undef CONFIG_FEATURE_SH_EXTRA_QUIET 
    499 +#undef CONFIG_FEATURE_SH_STANDALONE_SHELL 
    500 +#undef CONFIG_FEATURE_COMMAND_EDITING 
    501 +#undef CONFIG_FEATURE_COMMAND_EDITING_VI 
    502 +#define CONFIG_FEATURE_COMMAND_HISTORY  
    503 +#undef CONFIG_FEATURE_COMMAND_SAVEHISTORY 
    504 +#undef CONFIG_FEATURE_COMMAND_TAB_COMPLETION 
    505 +#undef CONFIG_FEATURE_COMMAND_USERNAME_COMPLETION 
    506 +#undef CONFIG_FEATURE_SH_FANCY_PROMPT 
    507 + 
    508 +/* 
    509 + * System Logging Utilities 
    510 + */ 
    511 +#undef CONFIG_SYSLOGD 
    512 +#undef CONFIG_FEATURE_ROTATE_LOGFILE 
    513 +#undef CONFIG_FEATURE_REMOTE_LOG 
    514 +#undef CONFIG_FEATURE_IPC_SYSLOG 
    515 +#define CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE  
    516 +#undef CONFIG_LOGREAD 
    517 +#undef CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING 
    518 +#undef CONFIG_KLOGD 
    519 +#undef CONFIG_LOGGER 
    520 + 
    521 +/* 
    522 + * Linux System Utilities 
    523 + */ 
    524 +#undef CONFIG_DMESG 
    525 +#undef CONFIG_FBSET 
    526 +#undef CONFIG_FEATURE_FBSET_FANCY 
    527 +#undef CONFIG_FEATURE_FBSET_READMODE 
    528 +#undef CONFIG_FDFLUSH 
    529 +#undef CONFIG_FDFORMAT 
    530 +#undef CONFIG_FDISK 
    531 +#undef FDISK_SUPPORT_LARGE_DISKS 
    532 +#undef CONFIG_FEATURE_FDISK_WRITABLE 
    533 +#undef CONFIG_FEATURE_AIX_LABEL 
    534 +#undef CONFIG_FEATURE_SGI_LABEL 
    535 +#undef CONFIG_FEATURE_SUN_LABEL 
    536 +#undef CONFIG_FEATURE_OSF_LABEL 
    537 +#undef CONFIG_FEATURE_FDISK_ADVANCED 
    538 +#undef CONFIG_FREERAMDISK 
    539 +#undef CONFIG_FSCK_MINIX 
    540 +#undef CONFIG_MKFS_MINIX 
    541 +#undef CONFIG_FEATURE_MINIX2 
    542 +#undef CONFIG_GETOPT 
    543 +#undef CONFIG_HEXDUMP 
    544 +#undef CONFIG_HWCLOCK 
    545 +#undef CONFIG_FEATURE_HWCLOCK_LONGOPTIONS 
    546 +#undef CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS 
    547 +#undef CONFIG_IPCRM 
    548 +#undef CONFIG_IPCS 
    549 +#undef CONFIG_LOSETUP 
    550 +#undef CONFIG_MDEV 
    551 +#undef CONFIG_FEATURE_MDEV_CONF 
    552 +#undef CONFIG_MKSWAP 
    553 +#undef CONFIG_MORE 
    554 +#undef CONFIG_FEATURE_USE_TERMIOS 
    555 +#undef CONFIG_PIVOT_ROOT 
    556 +#undef CONFIG_SWITCH_ROOT 
    557 +#undef CONFIG_RDATE 
    558 +#undef CONFIG_READPROFILE 
    559 +#undef CONFIG_SWAPONOFF 
    560 +#undef CONFIG_MOUNT 
    561 +#undef CONFIG_FEATURE_MOUNT_NFS 
    562 +#undef CONFIG_UMOUNT 
    563 +#undef CONFIG_FEATURE_MOUNT_LOOP 
    564 +#undef CONFIG_FEATURE_MTAB_SUPPORT 
    565 + 
    566 +/* 
    567 + * Debugging Options 
    568 + */ 
    569 +#undef CONFIG_DEBUG 
    570 +#undef CONFIG_NO_DEBUG_LIB 
    571 +#undef CONFIG_DMALLOC 
    572 +#undef CONFIG_EFENCE 
    57314diff -urN busybox-1.1.0/include/libbb.h busybox-1.1.0-cryptpw/include/libbb.h 
    57415--- busybox-1.1.0/include/libbb.h       2006-01-10 22:44:14.000000000 -0700 
     
    58526 extern int bb_xopen(const char *pathname, int flags); 
    58627 extern ssize_t bb_xread(int fd, void *buf, size_t count); 
    587 diff -urN busybox-1.1.0/include/libbb.h.orig busybox-1.1.0-cryptpw/include/libbb.h.orig 
    588 --- busybox-1.1.0/include/libbb.h.orig  1969-12-31 17:00:00.000000000 -0700 
    589 +++ busybox-1.1.0-cryptpw/include/libbb.h.orig  2006-01-10 22:44:14.000000000 -0700 
    590 @@ -0,0 +1,501 @@ 
    591 +/* vi: set sw=4 ts=4: */ 
    592 +/* 
    593 + * Busybox main internal header file 
    594 + * 
    595 + * 
    596 + * This program is free software; you can redistribute it and/or modify 
    597 + * it under the terms of the GNU General Public License as published by 
    598 + * the Free Software Foundation; either version 2 of the License, or 
    599 + * (at your option) any later version. 
    600 + * 
    601 + * This program is distributed in the hope that it will be useful, 
    602 + * but WITHOUT ANY WARRANTY; without even the implied warranty of 
    603 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 
    604 + * General Public License for more details. 
    605 + * 
    606 + * You should have received a copy of the GNU General Public License 
    607 + * along with this program; if not, write to the Free Software 
    608 + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 
    609 + * 
    610 + * Based in part on code from sash, Copyright (c) 1999 by David I. Bell 
    611 + * Permission has been granted to redistribute this code under the GPL. 
    612 + * 
    613 + */ 
    614 +#ifndef        __LIBCONFIG_H__ 
    615 +#define        __LIBCONFIG_H__    1 
    616 + 
    617 +#include <stdio.h> 
    618 +#include <stdlib.h> 
    619 +#include <stdarg.h> 
    620 +#include <sys/types.h> 
    621 +#include <sys/stat.h> 
    622 +#include <termios.h> 
    623 +#include <stdint.h> 
    624 + 
    625 +#include <netdb.h> 
    626 + 
    627 +#include <features.h> 
    628 + 
    629 +#include "bb_config.h" 
    630 +#ifdef CONFIG_SELINUX 
    631 +#include <selinux/selinux.h> 
    632 +#endif 
    633 + 
    634 +#include "pwd_.h" 
    635 +#include "grp_.h" 
    636 +#ifdef CONFIG_FEATURE_SHADOWPASSWDS 
    637 +#include "shadow_.h" 
    638 +#endif 
    639 +#ifdef CONFIG_FEATURE_SHA1_PASSWORDS 
    640 +# include "sha1.h" 
    641 +#endif 
    642 + 
    643 +/* Convenience macros to test the version of gcc. */ 
    644 +#if defined __GNUC__ && defined __GNUC_MINOR__ 
    645 +# define __GNUC_PREREQ(maj, min) \ 
    646 +        ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) 
    647 +#else 
    648 +# define __GNUC_PREREQ(maj, min) 0 
    649 +#endif 
    650 + 
    651 +/* __restrict is known in EGCS 1.2 and above. */ 
    652 +#if !__GNUC_PREREQ (2,92) 
    653 +# define __restrict     /* Ignore */ 
    654 +#endif 
    655 + 
    656 +#define attribute_noreturn __attribute__ ((__noreturn__)) 
    657 + 
    658 +/* Some useful definitions */ 
    659 +#define FALSE   ((int) 0) 
    660 +#define TRUE    ((int) 1) 
    661 +#define SKIP   ((int) 2) 
    662 + 
    663 +/* for mtab.c */ 
    664 +#define MTAB_GETMOUNTPT '1' 
    665 +#define MTAB_GETDEVICE  '2' 
    666 + 
    667 +#define BUF_SIZE        8192 
    668 +#define EXPAND_ALLOC    1024 
    669 + 
    670 +/* Macros for min/max.  */ 
    671 +#ifndef MIN 
    672 +#define        MIN(a,b) (((a)<(b))?(a):(b)) 
    673 +#endif 
    674 + 
    675 +#ifndef MAX 
    676 +#define        MAX(a,b) (((a)>(b))?(a):(b)) 
    677 +#endif 
    678 + 
    679 +extern void bb_show_usage(void) __attribute__ ((noreturn)); 
    680 +extern void bb_error_msg(const char *s, ...) __attribute__ ((format (printf, 1, 2))); 
    681 +extern void bb_error_msg_and_die(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2))); 
    682 +extern void bb_perror_msg(const char *s, ...) __attribute__ ((format (printf, 1, 2))); 
    683 +extern void bb_perror_msg_and_die(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2))); 
    684 +extern void bb_vherror_msg(const char *s, va_list p); 
    685 +extern void bb_herror_msg(const char *s, ...) __attribute__ ((format (printf, 1, 2))); 
    686 +extern void bb_herror_msg_and_die(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2))); 
    687 + 
    688 +extern void bb_perror_nomsg_and_die(void) __attribute__ ((noreturn)); 
    689 +extern void bb_perror_nomsg(void); 
    690 + 
    691 +/* These two are used internally -- you shouldn't need to use them */ 
    692 +extern void bb_verror_msg(const char *s, va_list p) __attribute__ ((format (printf, 1, 0))); 
    693 +extern void bb_vperror_msg(const char *s, va_list p)  __attribute__ ((format (printf, 1, 0))); 
    694 + 
    695 +extern int bb_echo(int argc, char** argv); 
    696 + 
    697 +extern const char *bb_mode_string(int mode); 
    698 +extern int is_directory(const char *name, int followLinks, struct stat *statBuf); 
    699 + 
    700 +extern int remove_file(const char *path, int flags); 
    701 +extern int copy_file(const char *source, const char *dest, int flags); 
    702 +extern ssize_t safe_read(int fd, void *buf, size_t count); 
    703 +extern ssize_t bb_full_read(int fd, void *buf, size_t len); 
    704 +extern ssize_t safe_write(int fd, const void *buf, size_t count); 
    705 +extern ssize_t bb_full_write(int fd, const void *buf, size_t len); 
    706 +extern int recursive_action(const char *fileName, int recurse, 
    707 +         int followLinks, int depthFirst, 
    708 +         int (*fileAction) (const char *fileName, struct stat* statbuf, void* userData), 
    709 +         int (*dirAction) (const char *fileName, struct stat* statbuf, void* userData), 
    710 +         void* userData); 
    711 + 
    712 +extern int bb_parse_mode( const char* s, mode_t* theMode); 
    713 +extern long bb_xgetlarg(const char *arg, int base, long lower, long upper); 
    714 + 
    715 +extern unsigned long bb_baud_to_value(speed_t speed); 
    716 +extern speed_t bb_value_to_baud(unsigned long value); 
    717 + 
    718 +extern int get_kernel_revision(void); 
    719 + 
    720 +extern int get_console_fd(void); 
    721 +extern struct mntent *find_mount_point(const char *name, const char *table); 
    722 +extern void erase_mtab(const char * name); 
    723 +extern long *find_pid_by_name( const char* pidName); 
    724 +extern long *pidlist_reverse(long *pidList); 
    725 +extern char *find_block_device(char *path); 
    726 +extern char *bb_get_line_from_file(FILE *file); 
    727 +extern char *bb_get_chomped_line_from_file(FILE *file); 
    728 +extern char *bb_get_chunk_from_file(FILE *file); 
    729 +extern int bb_copyfd_size(int fd1, int fd2, const off_t size); 
    730 +extern int bb_copyfd_eof(int fd1, int fd2); 
    731 +extern void  bb_xprint_and_close_file(FILE *file); 
    732 +extern int   bb_xprint_file_by_name(const char *filename); 
    733 +extern char  bb_process_escape_sequence(const char **ptr); 
    734 +extern char *bb_get_last_path_component(char *path); 
    735 +extern FILE *bb_wfopen(const char *path, const char *mode); 
    736 +extern FILE *bb_wfopen_input(const char *filename); 
    737 +extern FILE *bb_xfopen(const char *path, const char *mode); 
    738 + 
    739 +extern int   bb_fclose_nonstdin(FILE *f); 
    740 +extern void  bb_fflush_stdout_and_exit(int retval) __attribute__ ((noreturn)); 
    741 + 
    742 +#define BB_GETOPT_ERROR 0x80000000UL 
    743 +extern const char *bb_opt_complementally; 
    744 +extern const struct option *bb_applet_long_options; 
    745 +extern unsigned long bb_getopt_ulflags(int argc, char **argv, const char *applet_opts, ...); 
    746 + 
    747 +extern int bb_vfprintf(FILE * __restrict stream, const char * __restrict format, 
    748 +                                          va_list arg) __attribute__ ((format (printf, 2, 0))); 
    749 +extern int bb_vprintf(const char * __restrict format, va_list arg) 
    750 +       __attribute__ ((format (printf, 1, 0))); 
    751 +extern int bb_fprintf(FILE * __restrict stream, const char * __restrict format, ...) 
    752 +       __attribute__ ((format (printf, 2, 3))); 
    753 +extern int bb_printf(const char * __restrict format, ...) 
    754 +       __attribute__ ((format (printf, 1, 2))); 
    755 + 
    756 +//#warning rename to xferror_filename? 
    757 +extern void bb_xferror(FILE *fp, const char *fn); 
    758 +extern void bb_xferror_stdout(void); 
    759 +extern void bb_xfflush_stdout(void); 
    760 + 
    761 +extern void bb_warn_ignoring_args(int n); 
    762 + 
    763 +extern void chomp(char *s); 
    764 +extern void trim(char *s); 
    765 +extern const char *bb_skip_whitespace(const char *); 
    766 + 
    767 +extern struct BB_applet *find_applet_by_name(const char *name); 
    768 +void run_applet_by_name(const char *name, int argc, char **argv); 
    769 + 
    770 +/* dmalloc will redefine these to it's own implementation. It is safe 
    771 + * to have the prototypes here unconditionally.  */ 
    772 +extern void *xmalloc(size_t size); 
    773 +extern void *xrealloc(void *old, size_t size); 
    774 +extern void *xcalloc(size_t nmemb, size_t size); 
    775 + 
    776 +extern char *bb_xstrdup (const char *s); 
    777 +extern char *bb_xstrndup (const char *s, int n); 
    778 +extern char *safe_strncpy(char *dst, const char *src, size_t size); 
    779 +extern int safe_strtoi(char *arg, int* value); 
    780 +extern int safe_strtod(char *arg, double* value); 
    781 +extern int safe_strtol(char *arg, long* value); 
    782 +extern int safe_strtoul(char *arg, unsigned long* value); 
    783 + 
    784 +struct suffix_mult { 
    785 +       const char *suffix; 
    786 +       unsigned int mult; 
    787 +}; 
    788 + 
    789 +extern unsigned long bb_xgetularg_bnd_sfx(const char *arg, int base, 
    790 +                                                                                 unsigned long lower, 
    791 +                                                                                 unsigned long upper, 
    792 +                                                                                 const struct suffix_mult *suffixes); 
    793 +extern unsigned long bb_xgetularg_bnd(const char *arg, int base, 
    794 +                                                                         unsigned long lower, 
    795 +                                                                         unsigned long upper); 
    796 +extern unsigned long bb_xgetularg10_bnd(const char *arg, 
    797 +                                                                               unsigned long lower, 
    798 +                                                                               unsigned long upper); 
    799 +extern unsigned long bb_xgetularg10(const char *arg); 
    800 + 
    801 +extern long bb_xgetlarg_bnd_sfx(const char *arg, int base, 
    802 +                                                               long lower, 
    803 +                                                               long upper, 
    804 +                                                               const struct suffix_mult *suffixes); 
    805 +extern long bb_xgetlarg10_sfx(const char *arg, const struct suffix_mult *suffixes); 
    806 + 
    807 + 
    808 +//#warning pitchable now? 
    809 +extern unsigned long bb_xparse_number(const char *numstr, 
    810 +               const struct suffix_mult *suffixes); 
    811 + 
    812 + 
    813 +/* These parse entries in /etc/passwd and /etc/group.  This is desirable 
    814 + * for BusyBox since we want to avoid using the glibc NSS stuff, which 
    815 + * increases target size and is often not needed on embedded systems.  */ 
    816 +extern long bb_xgetpwnam(const char *name); 
    817 +extern long bb_xgetgrnam(const char *name); 
    818 +extern char * bb_getug(char *buffer, char *idname, long id, int bufsize, char prefix); 
    819 +extern char * bb_getpwuid(char *name, long uid, int bufsize); 
    820 +extern char * bb_getgrgid(char *group, long gid, int bufsize); 
    821 +extern char *bb_askpass(int timeout, const char * prompt); 
    822 + 
    823 +extern int device_open(const char *device, int mode); 
    824 + 
    825 +extern char *query_loop(const char *device); 
    826 +extern int del_loop(const char *device); 
    827 +extern int set_loop(char **device, const char *file, int offset); 
    828 + 
    829 +#if (__GLIBC__ < 2) 
    830 +extern int vdprintf(int d, const char *format, va_list ap); 
    831 +#endif 
    832 + 
    833 +int nfsmount(const char *spec, const char *node, int *flags, 
    834 +            char **mount_opts, int running_bg); 
    835 + 
    836 +/* Include our own copy of struct sysinfo to avoid binary compatability 
    837 + * problems with Linux 2.4, which changed things.  Grumble, grumble. */ 
    838 +struct sysinfo { 
    839 +       long uptime;                    /* Seconds since boot */ 
    840 +       unsigned long loads[3];         /* 1, 5, and 15 minute load averages */ 
    841 +       unsigned long totalram;         /* Total usable main memory size */ 
    842 +       unsigned long freeram;          /* Available memory size */ 
    843 +       unsigned long sharedram;        /* Amount of shared memory */ 
    844 +       unsigned long bufferram;        /* Memory used by buffers */ 
    845 +       unsigned long totalswap;        /* Total swap space size */ 
    846 +       unsigned long freeswap;         /* swap space still available */ 
    847 +       unsigned short procs;           /* Number of current processes */ 
    848 +       unsigned short pad;                     /* Padding needed for m68k */ 
    849 +       unsigned long totalhigh;        /* Total high memory size */ 
    850 +       unsigned long freehigh;         /* Available high memory size */ 
    851 +       unsigned int mem_unit;          /* Memory unit size in bytes */ 
    852 +       char _f[20-2*sizeof(long)-sizeof(int)]; /* Padding: libc5 uses this.. */ 
    853 +}; 
    854 +extern int sysinfo (struct sysinfo* info); 
    855 + 
    856 +enum { 
    857 +       KILOBYTE = 1024, 
    858 +       MEGABYTE = (KILOBYTE*1024), 
    859 +       GIGABYTE = (MEGABYTE*1024) 
    860 +}; 
    861 +const char *make_human_readable_str(unsigned long long size, 
    862 +               unsigned long block_size, unsigned long display_unit); 
    863 + 
    864 +int bb_ask_confirmation(void); 
    865 +int klogctl(int type, char * b, int len); 
    866 + 
    867 +char *xgetcwd(char *cwd); 
    868 +char *xreadlink(const char *path); 
    869 +char *concat_path_file(const char *path, const char *filename); 
    870 +char *concat_subpath_file(const char *path, const char *filename); 
    871 +char *last_char_is(const char *s, int c); 
    872 + 
    873 +int read_package_field(const char *package_buffer, char **field_name, char **field_value); 
    874 +//#warning yuk! 
    875 +char *fgets_str(FILE *file, const char *terminating_string); 
    876 + 
    877 +extern int uncompress(int fd_in, int fd_out); 
    878 +extern int inflate(int in, int out); 
    879 + 
    880 +extern struct hostent *xgethostbyname(const char *name); 
    881 +extern struct hostent *xgethostbyname2(const char *name, int af); 
    882 +extern int create_icmp_socket(void); 
    883 +extern int create_icmp6_socket(void); 
    884 +extern int xconnect(struct sockaddr_in *s_addr); 
    885 +extern unsigned short bb_lookup_port(const char *port, const char *protocol, unsigned short default_port); 
    886 +extern void bb_lookup_host(struct sockaddr_in *s_in, const char *host); 
    887 + 
    888 +//#warning wrap this? 
    889 +char *dirname (char *path); 
    890 + 
    891 +int bb_make_directory (char *path, long mode, int flags); 
    892 + 
    893 +const char *u_signal_names(const char *str_sig, int *signo, int startnum); 
    894 +char *bb_simplify_path(const char *path); 
    895 + 
    896 +enum { /* DO NOT CHANGE THESE VALUES!  cp.c depends on them. */ 
    897 +       FILEUTILS_PRESERVE_STATUS = 1, 
    898 +       FILEUTILS_DEREFERENCE = 2, 
    899 +       FILEUTILS_RECUR = 4, 
    900 +       FILEUTILS_FORCE = 8, 
    901 +       FILEUTILS_INTERACTIVE = 16 
    902 +}; 
    903 + 
    904 +extern const char *bb_applet_name; 
    905 + 
    906 +extern const char * const bb_msg_full_version; 
    907 +extern const char * const bb_msg_memory_exhausted; 
    908 +extern const char * const bb_msg_invalid_date; 
    909 +extern const char * const bb_msg_io_error; 
    910 +extern const char * const bb_msg_read_error; 
    911 +extern const char * const bb_msg_write_error; 
    912 +extern const char * const bb_msg_name_longer_than_foo; 
    913 +extern const char * const bb_msg_unknown; 
    914 +extern const char * const bb_msg_can_not_create_raw_socket; 
    915 +extern const char * const bb_msg_perm_denied_are_you_root; 
    916 +extern const char * const bb_msg_standard_input; 
    917 +extern const char * const bb_msg_standard_output; 
    918 + 
    919 +extern const char * const bb_path_nologin_file; 
    920 +extern const char * const bb_path_passwd_file; 
    921 +extern const char * const bb_path_shadow_file; 
    922 +extern const char * const bb_path_gshadow_file; 
    923 +extern const char * const bb_path_group_file; 
    924 +extern const char * const bb_path_securetty_file; 
    925 +extern const char * const bb_path_motd_file; 
    926 +extern const char * const bb_dev_null; 
    927 + 
    928 +#ifndef BUFSIZ 
    929 +#define BUFSIZ 4096 
    930 +#endif 
    931 +extern char bb_common_bufsiz1[BUFSIZ+1]; 
    932 + 
    933 +/* 
    934 + * You can change LIBBB_DEFAULT_LOGIN_SHELL, but don`t use, 
    935 + * use bb_default_login_shell and next defines, 
    936 + * if you LIBBB_DEFAULT_LOGIN_SHELL change, 
    937 + * don`t lose change increment constant! 
    938 + */ 
    939 +#define LIBBB_DEFAULT_LOGIN_SHELL      "-/bin/sh" 
    940 + 
    941 +extern const char * const bb_default_login_shell; 
    942 +/* "/bin/sh" */ 
    943 +#define DEFAULT_SHELL     (bb_default_login_shell+1) 
    944 +/* "sh" */ 
    945 +#define DEFAULT_SHELL_SHORT_NAME     (bb_default_login_shell+6) 
    946 + 
    947 + 
    948 +extern const char bb_path_mtab_file[]; 
    949 + 
    950 +extern int bb_default_error_retval; 
    951 + 
    952 +#ifdef CONFIG_FEATURE_DEVFS 
    953 +# define CURRENT_VC "/dev/vc/0" 
    954 +# define VC_1 "/dev/vc/1" 
    955 +# define VC_2 "/dev/vc/2" 
    956 +# define VC_3 "/dev/vc/3" 
    957 +# define VC_4 "/dev/vc/4" 
    958 +# define VC_5 "/dev/vc/5" 
    959 +#if defined(__sh__) || defined(__H8300H__) || defined(__H8300S__) 
    960 +/* Yes, this sucks, but both SH (including sh64) and H8 have a SCI(F) for their 
    961 +   respective serial ports .. as such, we can't use the common device paths for 
    962 +   these. -- PFM */ 
    963 +#  define SC_0 "/dev/ttsc/0" 
    964 +#  define SC_1 "/dev/ttsc/1" 
    965 +#  define SC_FORMAT "/dev/ttsc/%d" 
    966 +#else 
    967 +#  define SC_0 "/dev/tts/0" 
    968 +#  define SC_1 "/dev/tts/1" 
    969 +#  define SC_FORMAT "/dev/tts/%d" 
    970 +#endif 
    971 +# define VC_FORMAT "/dev/vc/%d" 
    972 +# define LOOP_FORMAT "/dev/loop/%d" 
    973 +# define FB_0 "/dev/fb/0" 
    974 +#else 
    975 +# define CURRENT_VC "/dev/tty0" 
    976 +# define VC_1 "/dev/tty1" 
    977 +# define VC_2 "/dev/tty2" 
    978 +# define VC_3 "/dev/tty3" 
    979 +# define VC_4 "/dev/tty4" 
    980 +# define VC_5 "/dev/tty5" 
    981 +#if defined(__sh__) || defined(__H8300H__) || defined(__H8300S__) 
    982 +#  define SC_0 "/dev/ttySC0" 
    983 +#  define SC_1 "/dev/ttySC1" 
    984 +#  define SC_FORMAT "/dev/ttySC%d" 
    985 +#else 
    986 +#  define SC_0 "/dev/ttyS0" 
    987 +#  define SC_1 "/dev/ttyS1" 
    988 +#  define SC_FORMAT "/dev/ttyS%d" 
    989 +#endif 
    990 +# define VC_FORMAT "/dev/tty%d" 
    991 +# define LOOP_FORMAT "/dev/loop%d" 
    992 +# define FB_0 "/dev/fb0" 
    993 +#endif 
    994 + 
    995 +//#warning put these in .o files 
    996 + 
    997 +/* The following devices are the same on devfs and non-devfs systems.  */ 
    998 +#define CURRENT_TTY "/dev/tty" 
    999 +#define CONSOLE_DEV "/dev/console" 
    1000 + 
    1001 +int is_in_ino_dev_hashtable(const struct stat *statbuf, char **name); 
    1002 +void add_to_ino_dev_hashtable(const struct stat *statbuf, const char *name); 
    1003 +void reset_ino_dev_hashtable(void); 
    1004 + 
    1005 +/* Stupid gcc always includes its own builtin strlen()... */ 
    1006 +extern size_t bb_strlen(const char *string); 
    1007 +#define strlen(x)   bb_strlen(x) 
    1008 + 
    1009 +char *bb_xasprintf(const char *format, ...) __attribute__ ((format (printf, 1, 2))); 
    1010 + 
    1011 +#define FAIL_DELAY    3 
    1012 +extern void bb_do_delay(int seconds); 
    1013 +extern void change_identity ( const struct passwd *pw ); 
    1014 +extern const char *change_identity_e2str ( const struct passwd *pw ); 
    1015 +extern void run_shell ( const char *shell, int loginshell, const char *command, const char **additional_args); 
    1016 +#ifdef CONFIG_SELINUX 
    1017 +extern void renew_current_security_context(void); 
    1018 +extern void set_current_security_context(security_context_t sid); 
    1019 +#endif 
    1020 +extern int run_parts(char **args, const unsigned char test_mode, char **env); 
    1021 +extern int restricted_shell ( const char *shell ); 
    1022 +extern void setup_environment ( const char *shell, int loginshell, int changeenv, const struct passwd *pw ); 
    1023 +extern int correct_password ( const struct passwd *pw ); 
    1024 +extern char *pw_encrypt(const char *clear, const char *salt); 
    1025 +extern struct spwd *pwd_to_spwd(const struct passwd *pw); 
    1026 +extern int obscure(const char *old, const char *newval, const struct passwd *pwdp); 
    1027 + 
    1028 +extern int bb_xopen(const char *pathname, int flags); 
    1029 +extern ssize_t bb_xread(int fd, void *buf, size_t count); 
    1030 +extern void bb_xread_all(int fd, void *buf, size_t count); 
    1031 +extern unsigned char bb_xread_char(int fd); 
    1032 + 
    1033 +#ifndef COMM_LEN 
    1034 +/*#include <sched.h> *//* Task command name length */ 
    1035 +#ifdef TASK_COMM_LEN 
    1036 +#define COMM_LEN TASK_COMM_LEN 
    1037 +#else 
    1038 +#define COMM_LEN 16 /* synchronize with size of comm in struct task_struct 
    1039 +                                                                 in /usr/include/linux/sched.h */ 
    1040 +#endif 
    1041 +#endif 
    1042 +typedef struct { 
    1043 +       int pid; 
    1044 +       char user[9]; 
    1045 +       char state[4]; 
    1046 +       unsigned long rss; 
    1047 +       int ppid; 
    1048 +#ifdef CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE 
    1049 +       unsigned pcpu; 
    1050 +       unsigned pscpu; 
    1051 +       unsigned long stime, utime; 
    1052 +#endif 
    1053 +       char *cmd; 
    1054 + 
    1055 +       /* basename of executable file in call to exec(2), 
    1056 +               size from kernel headers */ 
    1057 +       char short_cmd[COMM_LEN]; 
    1058 +} procps_status_t; 
    1059 + 
    1060 +extern procps_status_t * procps_scan(int save_user_arg0); 
    1061 +extern int compare_string_array(const char * const string_array[], const char *key); 
    1062 + 
    1063 +extern int my_query_module(const char *name, int which, void **buf, size_t *bufsize, size_t *ret); 
    1064 + 
    1065 +typedef struct llist_s { 
    1066 +       char *data; 
    1067 +       struct llist_s *link; 
    1068 +} llist_t; 
    1069 +extern llist_t *llist_add_to(llist_t *old_head, char *new_item); 
    1070 +extern llist_t *llist_add_to_end(llist_t *list_head, char *data); 
    1071 +extern llist_t *llist_free_one(llist_t *elm); 
    1072 +extern void llist_free(llist_t *elm); 
    1073 + 
    1074 +extern void print_login_issue(const char *issue_file, const char *tty); 
    1075 +extern void print_login_prompt(void); 
    1076 + 
    1077 +extern void vfork_daemon_rexec(int nochdir, int noclose, 
    1078 +               int argc, char **argv, char *foreground_opt); 
    1079 +extern int get_terminal_width_height(int fd, int *width, int *height); 
    1080 +extern unsigned long get_ug_id(const char *s, long (*__bb_getxxnam)(const char *)); 
    1081 + 
    1082 +#define HASH_SHA1      1 
    1083 +#define HASH_MD5       2 
    1084 +extern int hash_fd(int fd, const size_t size, const uint8_t hash_algo, uint8_t *hashval); 
    1085 + 
    1086 +/* busybox.h will include dmalloc later for us, else include it here.  */ 
    1087 +#if !defined _BB_INTERNAL_H_ && defined DMALLOC 
    1088 +#include <dmalloc.h> 
    1089 +#endif 
    1090 + 
    1091 +#endif /* __LIBCONFIG_H__ */ 
    109228diff -urN busybox-1.1.0/include/usage.h busybox-1.1.0-cryptpw/include/usage.h 
    109329--- busybox-1.1.0/include/usage.h       2006-01-10 22:44:14.000000000 -0700 
     
    1234170        bool "su" 
    1235171        default n 
    1236 diff -urN busybox-1.1.0/loginutils/Config.in.orig busybox-1.1.0-cryptpw/loginutils/Config.in.orig 
    1237 --- busybox-1.1.0/loginutils/Config.in.orig     1969-12-31 17:00:00.000000000 -0700 
    1238 +++ busybox-1.1.0-cryptpw/loginutils/Config.in.orig     2006-01-10 22:44:15.000000000 -0700 
    1239 @@ -0,0 +1,163 @@ 
    1240 +# 
    1241 +# For a description of the syntax of this configuration file, 
    1242 +# see scripts/kbuild/config-language.txt. 
    1243 +# 
    1244 + 
    1245 +menu "Login/Password Management Utilities" 
    1246 + 
    1247 +config CONFIG_FEATURE_SHADOWPASSWDS 
    1248 +       bool "Support for shadow passwords" 
    1249 +       default n 
    1250 +       help 
    1251 +         Build support for shadow password in /etc/shadow.  This file is only 
    1252 +         readable by root and thus the encrypted passwords are no longer 
    1253 +         publicly readable. 
    1254 + 
    1255 +config CONFIG_USE_BB_SHADOW 
    1256 +       bool #"  Use busybox shadow password functions" 
    1257 +       default y 
    1258 +       depends on CONFIG_USE_BB_PWD_GRP && CONFIG_FEATURE_SHADOWPASSWDS 
    1259 +       help 
    1260 +           If you leave this disabled, busybox will use the system's shadow 
    1261 +           password handling functions.  And if you are using the GNU C library 
    1262 +           (glibc), you will then need to install the /etc/nsswitch.conf 
    1263 +           configuration file and the required /lib/libnss_* libraries in 
    1264 +           order for the shadow password functions to work.  This generally 
    1265 +           makes your embedded system quite a bit larger. 
    1266 + 
    1267 +           Enabling this option will cause busybox to directly access the 
    1268 +           system's /etc/shadow file when handling shadow passwords.  This 
    1269 +           makes your system smaller and I will get fewer emails asking about 
    1270 +           how glibc NSS works).  When this option is enabled, you will not be 
    1271 +           able to use PAM to access shadow passwords from remote LDAP 
    1272 +           password servers and whatnot. 
    1273 + 
    1274 +config CONFIG_USE_BB_PWD_GRP 
    1275 +       bool "Use internal password and group functions rather than system functions" 
    1276 +       default n 
    1277 +       help 
    1278 +           If you leave this disabled, busybox will use the system's password 
    1279 +           and group functions.  And if you are using the GNU C library 
    1280 +           (glibc), you will then need to install the /etc/nsswitch.conf 
    1281 +           configuration file and the required /lib/libnss_* libraries in 
    1282 +           order for the password and group functions to work.  This generally 
    1283 +           makes your embedded system quite a bit larger. 
    1284 + 
    1285 +           Enabling this option will cause busybox to directly access the 
    1286 +           system's /etc/password, /etc/group files (and your system will be 
    1287 +           smaller, and I will get fewer emails asking about how glibc NSS 
    1288 +           works).  When this option is enabled, you will not be able to use 
    1289 +           PAM to access remote LDAP password servers and whatnot.  And if you 
    1290 +           want hostname resolution to work with glibc, you still need the 
    1291 +           /lib/libnss_* libraries. 
    1292 + 
    1293 +           If you enable this option, it will add about 1.5k to busybox. 
    1294 + 
    1295 +config CONFIG_ADDGROUP 
    1296 +       bool "addgroup" 
    1297 +       default n 
    1298 +       help 
    1299 +         Utility for creating a new group account. 
    1300 + 
    1301 +config CONFIG_DELGROUP 
    1302 +       bool "delgroup" 
    1303 +       default n 
    1304 +       help 
    1305 +         Utility for deleting a group account. 
    1306 + 
    1307 +config CONFIG_ADDUSER 
    1308 +       bool "adduser" 
    1309 +       default n 
    1310 +       help 
    1311 +         Utility for creating a new user account. 
    1312 + 
    1313 +config CONFIG_DELUSER 
    1314 +       bool "deluser" 
    1315 +       default n 
    1316 +       help 
    1317 +         Utility for deleting a user account. 
    1318 + 
    1319 +config CONFIG_GETTY 
    1320 +       bool "getty" 
    1321 +       default n 
    1322 +       help 
    1323 +         getty lets you log in on a tty, it is normally invoked by init. 
    1324 + 
    1325 +config CONFIG_FEATURE_UTMP 
    1326 +       bool "  Support utmp file" 
    1327 +       depends on CONFIG_GETTY || CONFIG_LOGIN || CONFIG_SU || CONFIG_WHO  
    1328 +       default n 
    1329 +       help 
    1330 +         The file /var/run/utmp is used to track who is currently logged in. 
    1331 + 
    1332 +config CONFIG_FEATURE_WTMP 
    1333 +       bool "  Support wtmp file" 
    1334 +       depends on CONFIG_GETTY || CONFIG_LOGIN || CONFIG_SU || CONFIG_LAST 
    1335 +       default n 
    1336 +       select CONFIG_FEATURE_UTMP 
    1337 +       help 
    1338 +         The file /var/run/wtmp is used to track when user's have logged into  
    1339 +         and logged out of the system. 
    1340 + 
    1341 +config CONFIG_LOGIN 
    1342 +       bool "login" 
    1343 +       default n 
    1344 +       select CONFIG_FEATURE_SUID 
    1345 +       help 
    1346 +         login is used when signing onto a system. 
    1347 + 
    1348 +         Note that Busybox binary must be setuid root for this applet to 
    1349 +         work properly. 
    1350 + 
    1351 +config CONFIG_FEATURE_SECURETTY 
    1352 +       bool "  Support for /etc/securetty" 
    1353 +       default y 
    1354 +       depends on CONFIG_LOGIN 
    1355 +       help 
    1356 +         The file  /etc/securetty  is used by (some versions of) login(1). 
    1357 +         The file contains the device names of tty lines (one per line, 
    1358 +         without leading /dev/) on which root is allowed to login. 
    1359 + 
    1360 +config CONFIG_PASSWD 
    1361 +       bool "passwd" 
    1362 +       default n 
    1363 +       select CONFIG_FEATURE_SUID 
    1364 +       help 
    1365 +         passwd changes passwords for user and group accounts.  A normal user 
    1366 +         may only change the password for his/her own account, the super user 
    1367 +         may change the password for any account.  The administrator of a group 
    1368 +         may change the password for the group. 
    1369 + 
    1370 +         Note that Busybox binary must be setuid root for this applet to 
    1371 +         work properly. 
    1372 + 
    1373 +config CONFIG_SU 
    1374 +       bool "su" 
    1375 +       default n 
    1376 +       select CONFIG_FEATURE_SUID 
    1377 +       help 
    1378 +         su is used to become another user during a login session. 
    1379 +         Invoked without a username, su defaults to becoming the super user. 
    1380 + 
    1381 +         Note that Busybox binary must be setuid root for this applet to 
    1382 +         work properly. 
    1383 + 
    1384 +config CONFIG_SULOGIN 
    1385 +       bool "sulogin" 
    1386 +       default n 
    1387 +       help 
    1388 +         sulogin is invoked when the system goes into single user 
    1389 +         mode (this is done through an entry in inittab). 
    1390 + 
    1391 +config CONFIG_VLOCK 
    1392 +       bool "vlock" 
    1393 +       default n 
    1394 +       select CONFIG_FEATURE_SUID 
    1395 +       help 
    1396 +         Build the "vlock" applet which allows you to lock (virtual) terminals. 
    1397 + 
    1398 +         Note that Busybox binary must be setuid root for this applet to 
    1399 +         work properly. 
    1400 + 
    1401 +endmenu 
    1402 + 
    1403172diff -urN busybox-1.1.0/loginutils/Makefile.in busybox-1.1.0-cryptpw/loginutils/Makefile.in 
    1404173--- busybox-1.1.0/loginutils/Makefile.in        2006-01-10 22:44:15.000000000 -0700 
     
    1532301 static int new_password(const struct passwd *pw, int amroot, int algo) 
    1533302 { 
    1534 Files busybox-1.1.0/scripts/config/conf and busybox-1.1.0-cryptpw/scripts/config/conf differ 
    1535 Files busybox-1.1.0/scripts/config/conf.o and busybox-1.1.0-cryptpw/scripts/config/conf.o differ 
    1536 diff -urN busybox-1.1.0/scripts/config/lex.zconf.c busybox-1.1.0-cryptpw/scripts/config/lex.zconf.c 
    1537 --- busybox-1.1.0/scripts/config/lex.zconf.c    1969-12-31 17:00:00.000000000 -0700 
    1538 +++ busybox-1.1.0-cryptpw/scripts/config/lex.zconf.c    2006-01-18 14:40:37.000000000 -0700 
    1539 @@ -0,0 +1,3688 @@ 
    1540 + 
    1541 +#line 3 "lex.zconf.c" 
    1542 + 
    1543 +#define  YY_INT_ALIGNED short int 
    1544 + 
    1545 +/* A lexical scanner generated by flex */ 
    1546 + 
    1547 +#define FLEX_SCANNER 
    1548 +#define YY_FLEX_MAJOR_VERSION 2 
    1549 +#define YY_FLEX_MINOR_VERSION 5 
    1550 +#define YY_FLEX_SUBMINOR_VERSION 31 
    1551 +#if YY_FLEX_SUBMINOR_VERSION > 0 
    1552 +#define FLEX_BETA 
    1553 +#endif 
    1554 + 
    1555 +/* First, we deal with  platform-specific or compiler-specific issues. */ 
    1556 + 
    1557 +/* begin standard C headers. */ 
    1558 +#include <stdio.h> 
    1559 +#include <string.h> 
    1560 +#include <errno.h> 
    1561 +#include <stdlib.h> 
    1562 + 
    1563 +/* end standard C headers. */ 
    1564 + 
    1565 +/* flex integer type definitions */ 
    1566 + 
    1567 +#ifndef FLEXINT_H 
    1568 +#define FLEXINT_H 
    1569 + 
    1570 +/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */ 
    1571 + 
    1572 +#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L 
    1573 +#include <inttypes.h> 
    1574 +typedef int8_t flex_int8_t; 
    1575 +typedef uint8_t flex_uint8_t; 
    1576 +typedef int16_t flex_int16_t; 
    1577 +typedef uint16_t flex_uint16_t; 
    1578 +typedef int32_t flex_int32_t; 
    1579 +typedef uint32_t flex_uint32_t; 
    1580 +#else 
    1581 +typedef signed char flex_int8_t; 
    1582 +typedef short int flex_int16_t; 
    1583 +typedef int flex_int32_t; 
    1584 +typedef unsigned char flex_uint8_t; 
    1585 +typedef unsigned short int flex_uint16_t; 
    1586 +typedef unsigned int flex_uint32_t; 
    1587 +#endif /* ! C99 */ 
    1588 + 
    1589 +/* Limits of integral types. */ 
    1590 +#ifndef INT8_MIN 
    1591 +#define INT8_MIN               (-128) 
    1592 +#endif 
    1593 +#ifndef INT16_MIN 
    1594 +#define INT16_MIN              (-32767-1) 
    1595 +#endif 
    1596 +#ifndef INT32_MIN 
    1597 +#define INT32_MIN              (-2147483647-1) 
    1598 +#endif 
    1599 +#ifndef INT8_MAX 
    1600 +#define INT8_MAX               (127) 
    1601 +#endif 
    1602 +#ifndef INT16_MAX 
    1603 +#define INT16_MAX              (32767) 
    1604 +#endif 
    1605 +#ifndef INT32_MAX 
    1606 +#define INT32_MAX              (2147483647) 
    1607 +#endif 
    1608 +#ifndef UINT8_MAX 
    1609 +#define UINT8_MAX              (255U) 
    1610 +#endif 
    1611 +#ifndef UINT16_MAX 
    1612 +#define UINT16_MAX             (65535U) 
    1613 +#endif 
    1614 +#ifndef UINT32_MAX 
    1615 +#define UINT32_MAX             (4294967295U) 
    1616 +#endif 
    1617 + 
    1618 +#endif /* ! FLEXINT_H */ 
    1619 + 
    1620 +#ifdef __cplusplus 
    1621 + 
    1622 +/* The "const" storage-class-modifier is valid. */ 
    1623 +#define YY_USE_CONST 
    1624 + 
    1625 +#else  /* ! __cplusplus */ 
    1626 + 
    1627 +#if __STDC__ 
    1628 + 
    1629 +#define YY_USE_CONST 
    1630 + 
    1631 +#endif /* __STDC__ */ 
    1632 +#endif /* ! __cplusplus */ 
    1633 + 
    1634 +#ifdef YY_USE_CONST 
    1635 +#define yyconst const 
    1636 +#else 
    1637 +#define yyconst 
    1638 +#endif 
    1639 + 
    1640 +/* Returned upon end-of-file. */ 
    1641 +#define YY_NULL 0 
    1642 + 
    1643 +/* Promotes a possibly negative, possibly signed char to an unsigned 
    1644 + * integer for use as an array index.  If the signed char is negative, 
    1645 + * we want to instead treat it as an 8-bit unsigned char, hence the 
    1646 + * double cast. 
    1647 + */ 
    1648 +#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) 
    1649 + 
    1650 +/* Enter a start condition.  This macro really ought to take a parameter, 
    1651 + * but we do it the disgusting crufty way forced on us by the ()-less 
    1652 + * definition of BEGIN. 
    1653 + */ 
    1654 +#define BEGIN (yy_start) = 1 + 2 * 
    1655 + 
    1656 +/* Translate the current start state into a value that can be later handed 
    1657 + * to BEGIN to return to the state.  The YYSTATE alias is for lex 
    1658 + * compatibility. 
    1659 + */ 
    1660 +#define YY_START (((yy_start) - 1) / 2) 
    1661 +#define YYSTATE YY_START 
    1662 + 
    1663 +/* Action number for EOF rule of a given start state. */ 
    1664 +#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1) 
    1665 + 
    1666 +/* Special action meaning "start processing a new file". */ 
    1667 +#define YY_NEW_FILE zconfrestart(zconfin  ) 
    1668 + 
    1669 +#define YY_END_OF_BUFFER_CHAR 0 
    1670 + 
    1671 +/* Size of default input buffer. */ 
    1672 +#ifndef YY_BUF_SIZE 
    1673 +#define YY_BUF_SIZE 16384 
    1674 +#endif 
    1675 + 
    1676 +#ifndef YY_TYPEDEF_YY_BUFFER_STATE 
    1677 +#define YY_TYPEDEF_YY_BUFFER_STATE 
    1678 +typedef struct yy_buffer_state *YY_BUFFER_STATE; 
    1679 +#endif 
    1680 + 
    1681 +extern int zconfleng; 
    1682 + 
    1683 +extern FILE *zconfin, *zconfout; 
    1684 + 
    1685 +#define EOB_ACT_CONTINUE_SCAN 0 
    1686 +#define EOB_ACT_END_OF_FILE 1 
    1687 +#define EOB_ACT_LAST_MATCH 2 
    1688 + 
    1689 +    #define YY_LESS_LINENO(n) 
    1690 + 
    1691 +/* Return all but the first "n" matched characters back to the input stream. */ 
    1692 +#define yyless(n) \ 
    1693 +       do \ 
    1694 +               { \ 
    1695 +               /* Undo effects of setting up zconftext. */ \ 
    1696 +        int yyless_macro_arg = (n); \ 
    1697 +        YY_LESS_LINENO(yyless_macro_arg);\ 
    1698 +               *yy_cp = (yy_hold_char); \ 
    1699 +               YY_RESTORE_YY_MORE_OFFSET \ 
    1700 +               (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \ 
    1701 +               YY_DO_BEFORE_ACTION; /* set up zconftext again */ \ 
    1702 +               } \ 
    1703 +       while ( 0 ) 
    1704 + 
    1705 +#define unput(c) yyunput( c, (yytext_ptr)  ) 
    1706 + 
    1707 +/* The following is because we cannot portably get our hands on size_t 
    1708 + * (without autoconf's help, which isn't available because we want 
    1709 + * flex-generated scanners to compile on their own). 
    1710 + */ 
    1711 + 
    1712 +#ifndef YY_TYPEDEF_YY_SIZE_T 
    1713 +#define YY_TYPEDEF_YY_SIZE_T 
    1714 +typedef unsigned int yy_size_t; 
    1715 +#endif 
    1716 + 
    1717 +#ifndef YY_STRUCT_YY_BUFFER_STATE 
    1718 +#define YY_STRUCT_YY_BUFFER_STATE 
    1719 +struct yy_buffer_state 
    1720 +       { 
    1721 +       FILE *yy_input_file; 
    1722 + 
    1723 +       char *yy_ch_buf;                /* input buffer */ 
    1724 +       char *yy_buf_pos;               /* current position in input buffer */ 
    1725 + 
    1726 +       /* Size of input buffer in bytes, not including room for EOB 
    1727 +        * characters. 
    1728 +        */ 
    1729 +       yy_size_t yy_buf_size; 
    1730 + 
    1731 +       /* Number of characters read into yy_ch_buf, not including EOB 
    1732 +        * characters. 
    1733 +        */ 
    1734 +       int yy_n_chars; 
    1735 + 
    1736 +       /* Whether we "own" the buffer - i.e., we know we created it, 
    1737 +        * and can realloc() it to grow it, and should free() it to 
    1738 +        * delete it. 
    1739 +        */ 
    1740 +       int yy_is_our_buffer; 
    1741 + 
    1742 +       /* Whether this is an "interactive" input source; if so, and 
    1743 +        * if we're using stdio for input, then we want to use getc() 
    1744 +        * instead of fread(), to make sure we stop fetching input after 
    1745 +        * each newline. 
    1746 +        */ 
    1747 +       int yy_is_interactive; 
    1748 + 
    1749 +       /* Whether we're considered to be at the beginning of a line. 
    1750 +        * If so, '^' rules will be active on the next match, otherwise 
    1751 +        * not. 
    1752 +        */ 
    1753 +       int yy_at_bol; 
    1754 + 
    1755 +    int yy_bs_lineno; /**< The line count. */ 
    1756 +    int yy_bs_column; /**< The column count. */ 
    1757 + 
    1758 +       /* Whether to try to fill the input buffer when we reach the 
    1759 +        * end of it. 
    1760 +        */ 
    1761 +       int yy_fill_buffer; 
    1762 + 
    1763 +       int yy_buffer_status; 
    1764 + 
    1765 +#define YY_BUFFER_NEW 0 
    1766 +#define YY_BUFFER_NORMAL 1 
    1767 +       /* When an EOF's been seen but there's still some text to process 
    1768 +        * then we mark the buffer as YY_EOF_PENDING, to indicate that we 
    1769 +        * shouldn't try reading from the input source any more.  We might 
    1770 +        * still have a bunch of tokens to match, though, because of 
    1771 +        * possible backing-up. 
    1772 +        * 
    1773 +        * When we actually see the EOF, we change the status to "new" 
    1774 +        * (via zconfrestart()), so that the user can continue scanning by 
    1775 +        * just pointing zconfin at a new input file. 
    1776 +        */ 
    1777 +#define YY_BUFFER_EOF_PENDING 2 
    1778 + 
    1779 +       }; 
    1780 +#endif /* !YY_STRUCT_YY_BUFFER_STATE */ 
    1781 + 
    1782 +/* Stack of input buffers. */ 
    1783 +static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ 
    1784 +static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ 
    1785 +static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ 
    1786 + 
    1787 +/* We provide macros for accessing buffer states in case in the 
    1788 + * future we want to put the buffer states in a more general 
    1789 + * "scanner state". 
    1790 + * 
    1791 + * Returns the top of the stack, or NULL. 
    1792 + */ 
    1793 +#define YY_CURRENT_BUFFER ( (yy_buffer_stack) \ 
    1794 +                          ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ 
    1795 +                          : NULL) 
    1796 + 
    1797 +/* Same as previous macro, but useful when we know that the buffer stack is not 
    1798 + * NULL or when we need an lvalue. For internal use only. 
    1799 + */ 
    1800 +#define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)] 
    1801 + 
    1802 +/* yy_hold_char holds the character lost when zconftext is formed. */ 
    1803 +static char yy_hold_char; 
    1804 +static int yy_n_chars;         /* number of characters read into yy_ch_buf */ 
    1805 +int zconfleng; 
    1806 + 
    1807 +/* Points to current character in buffer. */ 
    1808 +static char *yy_c_buf_p = (char *) 0; 
    1809 +static int yy_init = 1;                /* whether we need to initialize */ 
    1810 +static int yy_start = 0;       /* start state number */ 
    1811 + 
    1812 +/* Flag which is used to allow zconfwrap()'s to do buffer switches 
    1813 + * instead of setting up a fresh zconfin.  A bit of a hack ... 
    1814 + */ 
    1815 +static int yy_did_buffer_switch_on_eof; 
    1816 + 
    1817 +void zconfrestart (FILE *input_file  ); 
    1818 +void zconf_switch_to_buffer (YY_BUFFER_STATE new_buffer  ); 
    1819 +YY_BUFFER_STATE zconf_create_buffer (FILE *file,int size  ); 
    1820 +void zconf_delete_buffer (YY_BUFFER_STATE b  ); 
    1821 +void zconf_flush_buffer (YY_BUFFER_STATE b  ); 
    1822 +void zconfpush_buffer_state (YY_BUFFER_STATE new_buffer  ); 
    1823 +void zconfpop_buffer_state (void ); 
    1824 + 
    1825 +static void zconfensure_buffer_stack (void ); 
    1826 +static void zconf_load_buffer_state (void ); 
    1827 +static void zconf_init_buffer (YY_BUFFER_STATE b,FILE *file  ); 
    1828 + 
    1829 +#define YY_FLUSH_BUFFER zconf_flush_buffer(YY_CURRENT_BUFFER ) 
    1830 + 
    1831 +YY_BUFFER_STATE zconf_scan_buffer (char *base,yy_size_t size  ); 
    1832 +YY_BUFFER_STATE zconf_scan_string (yyconst char *yy_str  ); 
    1833 +YY_BUFFER_STATE zconf_scan_bytes (yyconst char *bytes,int len  ); 
    1834 + 
    1835 +void *zconfalloc (yy_size_t  ); 
    1836 +void *zconfrealloc (void *,yy_size_t  ); 
    1837 +void zconffree (void *  ); 
    1838 + 
    1839 +#define yy_new_buffer zconf_create_buffer 
    1840 + 
    1841 +#define yy_set_interactive(is_interactive) \ 
    1842 +       { \ 
    1843 +       if ( ! YY_CURRENT_BUFFER ){ \ 
    1844 +        zconfensure_buffer_stack (); \ 
    1845 +               YY_CURRENT_BUFFER_LVALUE =    \ 
    1846 +            zconf_create_buffer(zconfin,YY_BUF_SIZE ); \ 
    1847 +       } \ 
    1848 +       YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ 
    1849 +       } 
    1850 + 
    1851 +#define yy_set_bol(at_bol) \ 
    1852 +       { \ 
    1853 +       if ( ! YY_CURRENT_BUFFER ){\ 
    1854 +        zconfensure_buffer_stack (); \ 
    1855 +               YY_CURRENT_BUFFER_LVALUE =    \ 
    1856 +            zconf_create_buffer(zconfin,YY_BUF_SIZE ); \ 
    1857 +       } \ 
    1858 +       YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ 
    1859 +       } 
    1860 + 
    1861 +#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) 
    1862 + 
    1863 +/* Begin user sect3 */ 
    1864 + 
    1865 +#define zconfwrap(n) 1 
    1866 +#define YY_SKIP_YYWRAP 
    1867 + 
    1868 +typedef unsigned char YY_CHAR; 
    1869 + 
    1870 +FILE *zconfin = (FILE *) 0, *zconfout = (FILE *) 0; 
    1871 + 
    1872 +typedef int yy_state_type; 
    1873 + 
    1874 +extern int zconflineno; 
    1875 + 
    1876 +int zconflineno = 1; 
    1877 + 
    1878 +extern char *zconftext; 
    1879 +#define yytext_ptr zconftext 
    1880 +static yyconst flex_int16_t yy_nxt[][38] = 
    1881 +    { 
    1882 +    { 
    1883 +        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1884 +        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1885 +        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    1886 +        0,    0,    0,    0,    0,    0,    0,    0 
    1887 +    }, 
    1888 + 
    1889 +    { 
    1890 +       11,   12,   13,   14,   12,   12,   15,   12,   12,   12, 
    1891 +       12,   12,   12,   12,   12,   12,   12,   12,   12,   12, 
    1892 +       12,   12,   12,   12,   12,   12,   12,   12,   12,   12, 
    1893 +       12,   12,   12,   12,   12,   12,   12,   12 
    1894 +    }, 
    1895 + 
    1896 +    { 
    1897 +       11,   12,   13,   14,   12,   12,   15,   12,   12,   12, 
    1898 +       12,   12,   12,   12,   12,   12,   12,   12,   12,   12, 
    1899 + 
    1900 +       12,   12,   12,   12,   12,   12,   12,   12,   12,   12, 
    1901 +       12,   12,   12,   12,   12,   12,   12,   12 
    1902 +    }, 
    1903 + 
    1904 +    { 
    1905 +       11,   16,   16,   17,   16,   16,   16,   16,   16,   16, 
    1906 +       16,   16,   16,   18,   16,   16,   18,   18,   19,   20, 
    1907 +       21,   22,   18,   18,   23,   24,   18,   25,   18,   26, 
    1908 +       27,   18,   28,   29,   30,   18,   18,   16 
    1909 +    }, 
    1910 + 
    1911 +    { 
    1912 +       11,   16,   16,   17,   16,   16,   16,   16,   16,   16, 
    1913 +       16,   16,   16,   18,   16,   16,   18,   18,   19,   20, 
    1914 +       21,   22,   18,   18,   23,   24,   18,   25,   18,   26, 
    1915 +       27,   18,   28,   29,   30,   18,   18,   16 
    1916 + 
    1917 +    }, 
    1918 + 
    1919 +    { 
    1920 +       11,   31,   32,   33,   31,   31,   31,   31,   31,   31, 
    1921 +       31,   31,   31,   31,   31,   31,   31,   31,   31,   31, 
    1922 +       31,   31,   31,   31,   31,   31,   31,   31,   31,   31, 
    1923 +       31,   31,   31,   31,   31,   31,   31,   31 
    1924 +    }, 
    1925 + 
    1926 +    { 
    1927 +       11,   31,   32,   33,   31,   31,   31,   31,   31,   31, 
    1928 +       31,   31,   31,   31,   31,   31,   31,   31,   31,   31, 
    1929 +       31,   31,   31,   31,   31,   31,   31,   31,   31,   31, 
    1930 +       31,   31,   31,   31,   31,   31,   31,   31 
    1931 +    }, 
    1932 + 
    1933 +    { 
    1934 +       11,   34,   34,   35,   34,   36,   34,   34,   36,   34, 
    1935 +       34,   34,   34,   34,   34,   37,   34,   34,   34,   34, 
    1936 + 
    1937 +       34,   34,   34,   34,   34,   34,   34,   34,   34,   34, 
    1938 +       34,   34,   34,   34,   34,   34,   34,   34 
    1939 +    }, 
    1940 + 
    1941 +    { 
    1942 +       11,   34,   34,   35,   34,   36,   34,   34,   36,   34, 
    1943 +       34,   34,   34,   34,   34,   37,   34,   34,   34,   34, 
    1944 +       34,   34,   34,   34,   34,   34,   34,   34,   34,   34, 
    1945 +       34,   34,   34,   34,   34,   34,   34,   34 
    1946 +    }, 
    1947 + 
    1948 +    { 
    1949 +       11,   38,   38,   39,   40,   41,   42,   43,   41,   44, 
    1950 +       45,   46,   47,   47,   48,   49,   47,   47,   47,   47, 
    1951 +       47,   47,   47,   47,   47,   50,   47,   47,   47,   51, 
    1952 +       47,   47,   47,   47,   47,   47,   47,   52 
    1953 + 
    1954 +    }, 
    1955 + 
    1956 +    { 
    1957 +       11,   38,   38,   39,   40,   41,   42,   43,   41,   44, 
    1958 +       45,   46,   47,   47,   48,   49,   47,   47,   47,   47, 
    1959 +       47,   47,   47,   47,   47,   50,   47,   47,   47,   51, 
    1960 +       47,   47,   47,   47,   47,   47,   47,   52 
    1961 +    }, 
    1962 + 
    1963 +    { 
    1964 +      -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11, 
    1965 +      -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11, 
    1966 +      -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11, 
    1967 +      -11,  -11,  -11,  -11,  -11,  -11,  -11,  -11 
    1968 +    }, 
    1969 + 
    1970 +    { 
    1971 +       11,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12, 
    1972 +      -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12, 
    1973 + 
    1974 +      -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12, 
    1975 +      -12,  -12,  -12,  -12,  -12,  -12,  -12,  -12 
    1976 +    }, 
    1977 + 
    1978 +    { 
    1979 +       11,  -13,   53,   54,  -13,  -13,   55,  -13,  -13,  -13, 
    1980 +      -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13, 
    1981 +      -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13, 
    1982 +      -13,  -13,  -13,  -13,  -13,  -13,  -13,  -13 
    1983 +    }, 
    1984 + 
    1985 +    { 
    1986 +       11,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14, 
    1987 +      -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14, 
    1988 +      -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14, 
    1989 +      -14,  -14,  -14,  -14,  -14,  -14,  -14,  -14 
    1990 + 
    1991 +    }, 
    1992 + 
    1993 +    { 
    1994 +       11,   56,   56,   57,   56,   56,   56,   56,   56,   56, 
    1995 +       56,   56,   56,   56,   56,   56,   56,   56,   56,   56, 
    1996 +       56,   56,   56,   56,   56,   56,   56,   56,   56,   56, 
    1997 +       56,   56,   56,   56,   56,   56,   56,   56 
    1998 +    }, 
    1999 + 
    2000 +    { 
    2001 +       11,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16, 
    2002 +      -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16, 
    2003 +      -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16, 
    2004 +      -16,  -16,  -16,  -16,  -16,  -16,  -16,  -16 
    2005 +    }, 
    2006 + 
    2007 +    { 
    2008 +       11,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17, 
    2009 +      -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17, 
    2010 + 
    2011 +      -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17, 
    2012 +      -17,  -17,  -17,  -17,  -17,  -17,  -17,  -17 
    2013 +    }, 
    2014 + 
    2015 +    { 
    2016 +       11,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18,  -18, 
    2017 +      -18,  -18,  -18,   58,  -18,  -18,   58,   58,   58,   58, 
    2018 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2019 +       58,   58,   58,   58,   58,   58,   58,  -18 
    2020 +    }, 
    2021 + 
    2022 +    { 
    2023 +       11,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19,  -19, 
    2024 +      -19,  -19,  -19,   58,  -19,  -19,   58,   58,   58,   58, 
    2025 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   59, 
    2026 +       58,   58,   58,   58,   58,   58,   58,  -19 
    2027 + 
    2028 +    }, 
    2029 + 
    2030 +    { 
    2031 +       11,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20,  -20, 
    2032 +      -20,  -20,  -20,   58,  -20,  -20,   58,   58,   58,   58, 
    2033 +       58,   58,   58,   58,   60,   58,   58,   58,   58,   61, 
    2034 +       58,   58,   58,   58,   58,   58,   58,  -20 
    2035 +    }, 
    2036 + 
    2037 +    { 
    2038 +       11,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21,  -21, 
    2039 +      -21,  -21,  -21,   58,  -21,  -21,   58,   58,   58,   58, 
    2040 +       58,   62,   58,   58,   58,   58,   58,   58,   58,   58, 
    2041 +       58,   58,   58,   58,   58,   58,   58,  -21 
    2042 +    }, 
    2043 + 
    2044 +    { 
    2045 +       11,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22,  -22, 
    2046 +      -22,  -22,  -22,   58,  -22,  -22,   58,   58,   58,   58, 
    2047 + 
    2048 +       58,   58,   58,   58,   58,   58,   58,   58,   63,   58, 
    2049 +       58,   58,   58,   58,   58,   58,   58,  -22 
    2050 +    }, 
    2051 + 
    2052 +    { 
    2053 +       11,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23,  -23, 
    2054 +      -23,  -23,  -23,   58,  -23,  -23,   58,   58,   58,   58, 
    2055 +       58,   64,   58,   58,   58,   58,   58,   58,   58,   58, 
    2056 +       58,   58,   58,   58,   58,   58,   58,  -23 
    2057 +    }, 
    2058 + 
    2059 +    { 
    2060 +       11,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24,  -24, 
    2061 +      -24,  -24,  -24,   58,  -24,  -24,   58,   58,   58,   58, 
    2062 +       58,   58,   65,   58,   58,   58,   58,   58,   66,   58, 
    2063 +       58,   58,   58,   58,   58,   58,   58,  -24 
    2064 + 
    2065 +    }, 
    2066 + 
    2067 +    { 
    2068 +       11,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25,  -25, 
    2069 +      -25,  -25,  -25,   58,  -25,  -25,   58,   67,   58,   58, 
    2070 +       58,   68,   58,   58,   58,   58,   58,   58,   58,   58, 
    2071 +       58,   58,   58,   58,   58,   58,   58,  -25 
    2072 +    }, 
    2073 + 
    2074 +    { 
    2075 +       11,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26,  -26, 
    2076 +      -26,  -26,  -26,   58,  -26,  -26,   58,   58,   58,   58, 
    2077 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2078 +       69,   58,   58,   58,   58,   58,   58,  -26 
    2079 +    }, 
    2080 + 
    2081 +    { 
    2082 +       11,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27,  -27, 
    2083 +      -27,  -27,  -27,   58,  -27,  -27,   58,   58,   58,   58, 
    2084 + 
    2085 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2086 +       58,   58,   70,   58,   58,   58,   58,  -27 
    2087 +    }, 
    2088 + 
    2089 +    { 
    2090 +       11,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28,  -28, 
    2091 +      -28,  -28,  -28,   58,  -28,  -28,   58,   71,   58,   58, 
    2092 +       58,   72,   58,   58,   58,   58,   58,   58,   58,   58, 
    2093 +       58,   58,   58,   58,   58,   58,   58,  -28 
    2094 +    }, 
    2095 + 
    2096 +    { 
    2097 +       11,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29,  -29, 
    2098 +      -29,  -29,  -29,   58,  -29,  -29,   58,   58,   58,   58, 
    2099 +       58,   73,   58,   58,   58,   58,   58,   58,   58,   74, 
    2100 +       58,   58,   58,   58,   75,   58,   58,  -29 
    2101 + 
    2102 +    }, 
    2103 + 
    2104 +    { 
    2105 +       11,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30,  -30, 
    2106 +      -30,  -30,  -30,   58,  -30,  -30,   58,   58,   58,   58, 
    2107 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2108 +       58,   58,   76,   58,   58,   58,   58,  -30 
    2109 +    }, 
    2110 + 
    2111 +    { 
    2112 +       11,   77,   77,  -31,   77,   77,   77,   77,   77,   77, 
    2113 +       77,   77,   77,   77,   77,   77,   77,   77,   77,   77, 
    2114 +       77,   77,   77,   77,   77,   77,   77,   77,   77,   77, 
    2115 +       77,   77,   77,   77,   77,   77,   77,   77 
    2116 +    }, 
    2117 + 
    2118 +    { 
    2119 +       11,  -32,   78,   79,  -32,  -32,  -32,  -32,  -32,  -32, 
    2120 +      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32, 
    2121 + 
    2122 +      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32, 
    2123 +      -32,  -32,  -32,  -32,  -32,  -32,  -32,  -32 
    2124 +    }, 
    2125 + 
    2126 +    { 
    2127 +       11,   80,  -33,  -33,   80,   80,   80,   80,   80,   80, 
    2128 +       80,   80,   80,   80,   80,   80,   80,   80,   80,   80, 
    2129 +       80,   80,   80,   80,   80,   80,   80,   80,   80,   80, 
    2130 +       80,   80,   80,   80,   80,   80,   80,   80 
    2131 +    }, 
    2132 + 
    2133 +    { 
    2134 +       11,   81,   81,   82,   81,  -34,   81,   81,  -34,   81, 
    2135 +       81,   81,   81,   81,   81,  -34,   81,   81,   81,   81, 
    2136 +       81,   81,   81,   81,   81,   81,   81,   81,   81,   81, 
    2137 +       81,   81,   81,   81,   81,   81,   81,   81 
    2138 + 
    2139 +    }, 
    2140 + 
    2141 +    { 
    2142 +       11,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35, 
    2143 +      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35, 
    2144 +      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35, 
    2145 +      -35,  -35,  -35,  -35,  -35,  -35,  -35,  -35 
    2146 +    }, 
    2147 + 
    2148 +    { 
    2149 +       11,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36, 
    2150 +      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36, 
    2151 +      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36, 
    2152 +      -36,  -36,  -36,  -36,  -36,  -36,  -36,  -36 
    2153 +    }, 
    2154 + 
    2155 +    { 
    2156 +       11,   83,   83,   84,   83,   83,   83,   83,   83,   83, 
    2157 +       83,   83,   83,   83,   83,   83,   83,   83,   83,   83, 
    2158 + 
    2159 +       83,   83,   83,   83,   83,   83,   83,   83,   83,   83, 
    2160 +       83,   83,   83,   83,   83,   83,   83,   83 
    2161 +    }, 
    2162 + 
    2163 +    { 
    2164 +       11,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38, 
    2165 +      -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38, 
    2166 +      -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38, 
    2167 +      -38,  -38,  -38,  -38,  -38,  -38,  -38,  -38 
    2168 +    }, 
    2169 + 
    2170 +    { 
    2171 +       11,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39, 
    2172 +      -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39, 
    2173 +      -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39, 
    2174 +      -39,  -39,  -39,  -39,  -39,  -39,  -39,  -39 
    2175 + 
    2176 +    }, 
    2177 + 
    2178 +    { 
    2179 +       11,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40, 
    2180 +      -40,  -40,  -40,  -40,   85,  -40,  -40,  -40,  -40,  -40, 
    2181 +      -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40, 
    2182 +      -40,  -40,  -40,  -40,  -40,  -40,  -40,  -40 
    2183 +    }, 
    2184 + 
    2185 +    { 
    2186 +       11,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41, 
    2187 +      -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41, 
    2188 +      -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41, 
    2189 +      -41,  -41,  -41,  -41,  -41,  -41,  -41,  -41 
    2190 +    }, 
    2191 + 
    2192 +    { 
    2193 +       11,   86,   86,  -42,   86,   86,   86,   86,   86,   86, 
    2194 +       86,   86,   86,   86,   86,   86,   86,   86,   86,   86, 
    2195 + 
    2196 +       86,   86,   86,   86,   86,   86,   86,   86,   86,   86, 
    2197 +       86,   86,   86,   86,   86,   86,   86,   86 
    2198 +    }, 
    2199 + 
    2200 +    { 
    2201 +       11,  -43,  -43,  -43,  -43,  -43,  -43,   87,  -43,  -43, 
    2202 +      -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43, 
    2203 +      -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43, 
    2204 +      -43,  -43,  -43,  -43,  -43,  -43,  -43,  -43 
    2205 +    }, 
    2206 + 
    2207 +    { 
    2208 +       11,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44, 
    2209 +      -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44, 
    2210 +      -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44, 
    2211 +      -44,  -44,  -44,  -44,  -44,  -44,  -44,  -44 
    2212 + 
    2213 +    }, 
    2214 + 
    2215 +    { 
    2216 +       11,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45, 
    2217 +      -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45, 
    2218 +      -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45, 
    2219 +      -45,  -45,  -45,  -45,  -45,  -45,  -45,  -45 
    2220 +    }, 
    2221 + 
    2222 +    { 
    2223 +       11,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46,  -46, 
    2224 +      -46,   88,   89,   89,  -46,  -46,   89,   89,   89,   89, 
    2225 +       89,   89,   89,   89,   89,   89,   89,   89,   89,   89, 
    2226 +       89,   89,   89,   89,   89,   89,   89,  -46 
    2227 +    }, 
    2228 + 
    2229 +    { 
    2230 +       11,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47,  -47, 
    2231 +      -47,   89,   89,   89,  -47,  -47,   89,   89,   89,   89, 
    2232 + 
    2233 +       89,   89,   89,   89,   89,   89,   89,   89,   89,   89, 
    2234 +       89,   89,   89,   89,   89,   89,   89,  -47 
    2235 +    }, 
    2236 + 
    2237 +    { 
    2238 +       11,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48, 
    2239 +      -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48, 
    2240 +      -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48, 
    2241 +      -48,  -48,  -48,  -48,  -48,  -48,  -48,  -48 
    2242 +    }, 
    2243 + 
    2244 +    { 
    2245 +       11,  -49,  -49,   90,  -49,  -49,  -49,  -49,  -49,  -49, 
    2246 +      -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49, 
    2247 +      -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49, 
    2248 +      -49,  -49,  -49,  -49,  -49,  -49,  -49,  -49 
    2249 + 
    2250 +    }, 
    2251 + 
    2252 +    { 
    2253 +       11,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50,  -50, 
    2254 +      -50,   89,   89,   89,  -50,  -50,   89,   89,   89,   89, 
    2255 +       89,   89,   91,   89,   89,   89,   89,   89,   89,   89, 
    2256 +       89,   89,   89,   89,   89,   89,   89,  -50 
    2257 +    }, 
    2258 + 
    2259 +    { 
    2260 +       11,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51,  -51, 
    2261 +      -51,   89,   89,   89,  -51,  -51,   89,   89,   89,   89, 
    2262 +       89,   89,   89,   89,   89,   89,   89,   89,   92,   89, 
    2263 +       89,   89,   89,   89,   89,   89,   89,  -51 
    2264 +    }, 
    2265 + 
    2266 +    { 
    2267 +       11,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52, 
    2268 +      -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52, 
    2269 + 
    2270 +      -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52,  -52, 
    2271 +      -52,  -52,  -52,  -52,  -52,  -52,  -52,   93 
    2272 +    }, 
    2273 + 
    2274 +    { 
    2275 +       11,  -53,   53,   54,  -53,  -53,   55,  -53,  -53,  -53, 
    2276 +      -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53, 
    2277 +      -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53, 
    2278 +      -53,  -53,  -53,  -53,  -53,  -53,  -53,  -53 
    2279 +    }, 
    2280 + 
    2281 +    { 
    2282 +       11,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54, 
    2283 +      -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54, 
    2284 +      -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54, 
    2285 +      -54,  -54,  -54,  -54,  -54,  -54,  -54,  -54 
    2286 + 
    2287 +    }, 
    2288 + 
    2289 +    { 
    2290 +       11,   56,   56,   57,   56,   56,   56,   56,   56,   56, 
    2291 +       56,   56,   56,   56,   56,   56,   56,   56,   56,   56, 
    2292 +       56,   56,   56,   56,   56,   56,   56,   56,   56,   56, 
    2293 +       56,   56,   56,   56,   56,   56,   56,   56 
    2294 +    }, 
    2295 + 
    2296 +    { 
    2297 +       11,   56,   56,   57,   56,   56,   56,   56,   56,   56, 
    2298 +       56,   56,   56,   56,   56,   56,   56,   56,   56,   56, 
    2299 +       56,   56,   56,   56,   56,   56,   56,   56,   56,   56, 
    2300 +       56,   56,   56,   56,   56,   56,   56,   56 
    2301 +    }, 
    2302 + 
    2303 +    { 
    2304 +       11,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57, 
    2305 +      -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57, 
    2306 + 
    2307 +      -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57, 
    2308 +      -57,  -57,  -57,  -57,  -57,  -57,  -57,  -57 
    2309 +    }, 
    2310 + 
    2311 +    { 
    2312 +       11,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58,  -58, 
    2313 +      -58,  -58,  -58,   58,  -58,  -58,   58,   58,   58,   58, 
    2314 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2315 +       58,   58,   58,   58,   58,   58,   58,  -58 
    2316 +    }, 
    2317 + 
    2318 +    { 
    2319 +       11,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59,  -59, 
    2320 +      -59,  -59,  -59,   58,  -59,  -59,   58,   58,   58,   58, 
    2321 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   94, 
    2322 +       58,   58,   58,   58,   58,   58,   58,  -59 
    2323 + 
    2324 +    }, 
    2325 + 
    2326 +    { 
    2327 +       11,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60,  -60, 
    2328 +      -60,  -60,  -60,   58,  -60,  -60,   58,   58,   58,   58, 
    2329 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   95, 
    2330 +       58,   58,   58,   58,   58,   58,   58,  -60 
    2331 +    }, 
    2332 + 
    2333 +    { 
    2334 +       11,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61,  -61, 
    2335 +      -61,  -61,  -61,   58,  -61,  -61,   58,   58,   58,   58, 
    2336 +       58,   58,   58,   58,   58,   58,   58,   96,   97,   58, 
    2337 +       58,   58,   58,   58,   58,   58,   58,  -61 
    2338 +    }, 
    2339 + 
    2340 +    { 
    2341 +       11,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62,  -62, 
    2342 +      -62,  -62,  -62,   58,  -62,  -62,   58,   58,   58,   58, 
    2343 + 
    2344 +       58,   58,   98,   58,   58,   58,   58,   58,   58,   58, 
    2345 +       99,   58,   58,   58,   58,   58,   58,  -62 
    2346 +    }, 
    2347 + 
    2348 +    { 
    2349 +       11,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63,  -63, 
    2350 +      -63,  -63,  -63,   58,  -63,  -63,   58,  100,   58,   58, 
    2351 +      101,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2352 +       58,   58,   58,   58,   58,   58,   58,  -63 
    2353 +    }, 
    2354 + 
    2355 +    { 
    2356 +       11,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64,  -64, 
    2357 +      -64,  -64,  -64,   58,  -64,  -64,   58,   58,   58,   58, 
    2358 +       58,   58,   58,   58,   58,   58,  102,   58,   58,   58, 
    2359 +       58,   58,   58,   58,   58,   58,  103,  -64 
    2360 + 
    2361 +    }, 
    2362 + 
    2363 +    { 
    2364 +       11,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65,  -65, 
    2365 +      -65,  -65,  -65,   58,  -65,  -65,   58,   58,   58,   58, 
    2366 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2367 +       58,   58,   58,   58,   58,   58,   58,  -65 
    2368 +    }, 
    2369 + 
    2370 +    { 
    2371 +       11,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66,  -66, 
    2372 +      -66,  -66,  -66,   58,  -66,  -66,   58,   58,   58,   58, 
    2373 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2374 +       58,   58,   58,   58,  104,   58,   58,  -66 
    2375 +    }, 
    2376 + 
    2377 +    { 
    2378 +       11,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67,  -67, 
    2379 +      -67,  -67,  -67,   58,  -67,  -67,   58,   58,   58,   58, 
    2380 + 
    2381 +       58,   58,   58,   58,   58,  105,   58,   58,   58,   58, 
    2382 +       58,   58,   58,   58,   58,   58,   58,  -67 
    2383 +    }, 
    2384 + 
    2385 +    { 
    2386 +       11,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68,  -68, 
    2387 +      -68,  -68,  -68,   58,  -68,  -68,   58,   58,   58,   58, 
    2388 +       58,   58,   58,   58,   58,   58,   58,   58,  106,   58, 
    2389 +       58,   58,   58,   58,   58,   58,   58,  -68 
    2390 +    }, 
    2391 + 
    2392 +    { 
    2393 +       11,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69,  -69, 
    2394 +      -69,  -69,  -69,   58,  -69,  -69,   58,   58,   58,   58, 
    2395 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2396 +       58,   58,   58,   58,  107,   58,   58,  -69 
    2397 + 
    2398 +    }, 
    2399 + 
    2400 +    { 
    2401 +       11,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70,  -70, 
    2402 +      -70,  -70,  -70,   58,  -70,  -70,   58,   58,   58,   58, 
    2403 +       58,   58,   58,   58,   58,   58,   58,   58,   58,  108, 
    2404 +       58,   58,   58,   58,   58,   58,   58,  -70 
    2405 +    }, 
    2406 + 
    2407 +    { 
    2408 +       11,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71,  -71, 
    2409 +      -71,  -71,  -71,   58,  -71,  -71,   58,   58,   58,   58, 
    2410 +       58,   58,   58,   58,   58,   58,   58,   58,  109,   58, 
    2411 +       58,   58,   58,   58,   58,   58,   58,  -71 
    2412 +    }, 
    2413 + 
    2414 +    { 
    2415 +       11,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72,  -72, 
    2416 +      -72,  -72,  -72,   58,  -72,  -72,   58,   58,   58,   58, 
    2417 + 
    2418 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2419 +       58,  110,   58,   58,   58,   58,   58,  -72 
    2420 +    }, 
    2421 + 
    2422 +    { 
    2423 +       11,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73,  -73, 
    2424 +      -73,  -73,  -73,   58,  -73,  -73,   58,   58,   58,   58, 
    2425 +       58,   58,   58,   58,   58,   58,  111,   58,   58,   58, 
    2426 +       58,   58,   58,   58,   58,   58,   58,  -73 
    2427 +    }, 
    2428 + 
    2429 +    { 
    2430 +       11,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74,  -74, 
    2431 +      -74,  -74,  -74,   58,  -74,  -74,   58,   58,   58,   58, 
    2432 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2433 +       58,   58,   58,   58,   58,  112,   58,  -74 
    2434 + 
    2435 +    }, 
    2436 + 
    2437 +    { 
    2438 +       11,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75,  -75, 
    2439 +      -75,  -75,  -75,   58,  -75,  -75,   58,   58,   58,   58, 
    2440 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2441 +       58,   58,  113,   58,   58,   58,   58,  -75 
    2442 +    }, 
    2443 + 
    2444 +    { 
    2445 +       11,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76,  -76, 
    2446 +      -76,  -76,  -76,   58,  -76,  -76,   58,   58,   58,   58, 
    2447 +       58,   58,   58,   58,   58,  114,   58,   58,   58,   58, 
    2448 +       58,   58,   58,   58,   58,   58,   58,  -76 
    2449 +    }, 
    2450 + 
    2451 +    { 
    2452 +       11,   77,   77,  -77,   77,   77,   77,   77,   77,   77, 
    2453 +       77,   77,   77,   77,   77,   77,   77,   77,   77,   77, 
    2454 + 
    2455 +       77,   77,   77,   77,   77,   77,   77,   77,   77,   77, 
    2456 +       77,   77,   77,   77,   77,   77,   77,   77 
    2457 +    }, 
    2458 + 
    2459 +    { 
    2460 +       11,  -78,   78,   79,  -78,  -78,  -78,  -78,  -78,  -78, 
    2461 +      -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78, 
    2462 +      -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78, 
    2463 +      -78,  -78,  -78,  -78,  -78,  -78,  -78,  -78 
    2464 +    }, 
    2465 + 
    2466 +    { 
    2467 +       11,   80,  -79,  -79,   80,   80,   80,   80,   80,   80, 
    2468 +       80,   80,   80,   80,   80,   80,   80,   80,   80,   80, 
    2469 +       80,   80,   80,   80,   80,   80,   80,   80,   80,   80, 
    2470 +       80,   80,   80,   80,   80,   80,   80,   80 
    2471 + 
    2472 +    }, 
    2473 + 
    2474 +    { 
    2475 +       11,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80, 
    2476 +      -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80, 
    2477 +      -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80, 
    2478 +      -80,  -80,  -80,  -80,  -80,  -80,  -80,  -80 
    2479 +    }, 
    2480 + 
    2481 +    { 
    2482 +       11,   81,   81,   82,   81,  -81,   81,   81,  -81,   81, 
    2483 +       81,   81,   81,   81,   81,  -81,   81,   81,   81,   81, 
    2484 +       81,   81,   81,   81,   81,   81,   81,   81,   81,   81, 
    2485 +       81,   81,   81,   81,   81,   81,   81,   81 
    2486 +    }, 
    2487 + 
    2488 +    { 
    2489 +       11,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82, 
    2490 +      -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82, 
    2491 + 
    2492 +      -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82, 
    2493 +      -82,  -82,  -82,  -82,  -82,  -82,  -82,  -82 
    2494 +    }, 
    2495 + 
    2496 +    { 
    2497 +       11,  -83,  -83,   84,  -83,  -83,  -83,  -83,  -83,  -83, 
    2498 +      -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83, 
    2499 +      -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83, 
    2500 +      -83,  -83,  -83,  -83,  -83,  -83,  -83,  -83 
    2501 +    }, 
    2502 + 
    2503 +    { 
    2504 +       11,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84, 
    2505 +      -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84, 
    2506 +      -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84, 
    2507 +      -84,  -84,  -84,  -84,  -84,  -84,  -84,  -84 
    2508 + 
    2509 +    }, 
    2510 + 
    2511 +    { 
    2512 +       11,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85, 
    2513 +      -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85, 
    2514 +      -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85, 
    2515 +      -85,  -85,  -85,  -85,  -85,  -85,  -85,  -85 
    2516 +    }, 
    2517 + 
    2518 +    { 
    2519 +       11,   86,   86,  -86,   86,   86,   86,   86,   86,   86, 
    2520 +       86,   86,   86,   86,   86,   86,   86,   86,   86,   86, 
    2521 +       86,   86,   86,   86,   86,   86,   86,   86,   86,   86, 
    2522 +       86,   86,   86,   86,   86,   86,   86,   86 
    2523 +    }, 
    2524 + 
    2525 +    { 
    2526 +       11,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87, 
    2527 +      -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87, 
    2528 + 
    2529 +      -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87, 
    2530 +      -87,  -87,  -87,  -87,  -87,  -87,  -87,  -87 
    2531 +    }, 
    2532 + 
    2533 +    { 
    2534 +       11,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88,  -88, 
    2535 +      -88,  115,   89,   89,  -88,  -88,   89,   89,   89,   89, 
    2536 +       89,   89,   89,   89,   89,   89,   89,   89,   89,   89, 
    2537 +       89,   89,   89,   89,   89,   89,   89,  -88 
    2538 +    }, 
    2539 + 
    2540 +    { 
    2541 +       11,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89,  -89, 
    2542 +      -89,   89,   89,   89,  -89,  -89,   89,   89,   89,   89, 
    2543 +       89,   89,   89,   89,   89,   89,   89,   89,   89,   89, 
    2544 +       89,   89,   89,   89,   89,   89,   89,  -89 
    2545 + 
    2546 +    }, 
    2547 + 
    2548 +    { 
    2549 +       11,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90, 
    2550 +      -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90, 
    2551 +      -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90, 
    2552 +      -90,  -90,  -90,  -90,  -90,  -90,  -90,  -90 
    2553 +    }, 
    2554 + 
    2555 +    { 
    2556 +       11,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91,  -91, 
    2557 +      -91,   89,   89,   89,  -91,  -91,   89,   89,   89,   89, 
    2558 +       89,   89,   89,   89,   89,   89,   89,   89,   89,   89, 
    2559 +       89,   89,   89,   89,   89,   89,   89,  -91 
    2560 +    }, 
    2561 + 
    2562 +    { 
    2563 +       11,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92,  -92, 
    2564 +      -92,   89,   89,   89,  -92,  -92,   89,   89,   89,   89, 
    2565 + 
    2566 +       89,   89,   89,   89,   89,   89,   89,   89,   89,   89, 
    2567 +       89,   89,   89,   89,   89,   89,   89,  -92 
    2568 +    }, 
    2569 + 
    2570 +    { 
    2571 +       11,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93, 
    2572 +      -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93, 
    2573 +      -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93, 
    2574 +      -93,  -93,  -93,  -93,  -93,  -93,  -93,  -93 
    2575 +    }, 
    2576 + 
    2577 +    { 
    2578 +       11,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94,  -94, 
    2579 +      -94,  -94,  -94,   58,  -94,  -94,   58,   58,   58,   58, 
    2580 +       58,   58,   58,   58,   58,   58,  116,   58,   58,   58, 
    2581 +       58,   58,   58,   58,   58,   58,   58,  -94 
    2582 + 
    2583 +    }, 
    2584 + 
    2585 +    { 
    2586 +       11,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95,  -95, 
    2587 +      -95,  -95,  -95,   58,  -95,  -95,   58,   58,   58,   58, 
    2588 +       58,   58,   58,   58,   58,  117,   58,   58,   58,   58, 
    2589 +       58,   58,   58,   58,   58,   58,   58,  -95 
    2590 +    }, 
    2591 + 
    2592 +    { 
    2593 +       11,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96,  -96, 
    2594 +      -96,  -96,  -96,   58,  -96,  -96,   58,   58,   58,   58, 
    2595 +       58,   58,   58,   58,   58,   58,   58,  118,   58,   58, 
    2596 +       58,   58,   58,   58,   58,   58,   58,  -96 
    2597 +    }, 
    2598 + 
    2599 +    { 
    2600 +       11,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97,  -97, 
    2601 +      -97,  -97,  -97,   58,  -97,  -97,   58,   58,   58,   58, 
    2602 + 
    2603 +       58,   58,  119,   58,   58,   58,   58,   58,   58,   58, 
    2604 +       58,   58,   58,   58,   58,   58,   58,  -97 
    2605 +    }, 
    2606 + 
    2607 +    { 
    2608 +       11,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98,  -98, 
    2609 +      -98,  -98,  -98,   58,  -98,  -98,  120,  121,   58,   58, 
    2610 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2611 +       58,   58,   58,   58,   58,   58,   58,  -98 
    2612 +    }, 
    2613 + 
    2614 +    { 
    2615 +       11,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99,  -99, 
    2616 +      -99,  -99,  -99,   58,  -99,  -99,   58,   58,   58,   58, 
    2617 +       58,  122,   58,   58,   58,   58,   58,   58,   58,   58, 
    2618 +       58,   58,   58,   58,   58,   58,   58,  -99 
    2619 + 
    2620 +    }, 
    2621 + 
    2622 +    { 
    2623 +       11, -100, -100, -100, -100, -100, -100, -100, -100, -100, 
    2624 +     -100, -100, -100,   58, -100, -100,   58,   58,  123,   58, 
    2625 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2626 +       58,   58,   58,   58,   58,   58,   58, -100 
    2627 +    }, 
    2628 + 
    2629 +    { 
    2630 +       11, -101, -101, -101, -101, -101, -101, -101, -101, -101, 
    2631 +     -101, -101, -101,   58, -101, -101,   58,   58,   58,  124, 
    2632 +       58,   58,   58,   58,   58,  125,   58,  126,   58,   58, 
    2633 +       58,   58,   58,   58,   58,   58,   58, -101 
    2634 +    }, 
    2635 + 
    2636 +    { 
    2637 +       11, -102, -102, -102, -102, -102, -102, -102, -102, -102, 
    2638 +     -102, -102, -102,   58, -102, -102,   58,   58,   58,   58, 
    2639 + 
    2640 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2641 +      127,   58,   58,   58,   58,   58,   58, -102 
    2642 +    }, 
    2643 + 
    2644 +    { 
    2645 +       11, -103, -103, -103, -103, -103, -103, -103, -103, -103, 
    2646 +     -103, -103, -103,   58, -103, -103,   58,   58,   58,   58, 
    2647 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2648 +       58,   58,   58,   58,   58,   58,   58, -103 
    2649 +    }, 
    2650 + 
    2651 +    { 
    2652 +       11, -104, -104, -104, -104, -104, -104, -104, -104, -104, 
    2653 +     -104, -104, -104,   58, -104, -104,   58,   58,   58,   58, 
    2654 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2655 +       58,   58,   58,   58,   58,   58,   58, -104 
    2656 + 
    2657 +    }, 
    2658 + 
    2659 +    { 
    2660 +       11, -105, -105, -105, -105, -105, -105, -105, -105, -105, 
    2661 +     -105, -105, -105,   58, -105, -105,   58,   58,   58,   58, 
    2662 +       58,   58,   58,   58,   58,   58,   58,   58,  128,   58, 
    2663 +       58,   58,   58,   58,   58,   58,   58, -105 
    2664 +    }, 
    2665 + 
    2666 +    { 
    2667 +       11, -106, -106, -106, -106, -106, -106, -106, -106, -106, 
    2668 +     -106, -106, -106,   58, -106, -106,   58,   58,   58,   58, 
    2669 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2670 +       58,   58,   58,   58,   58,  129,   58, -106 
    2671 +    }, 
    2672 + 
    2673 +    { 
    2674 +       11, -107, -107, -107, -107, -107, -107, -107, -107, -107, 
    2675 +     -107, -107, -107,   58, -107, -107,   58,   58,   58,   58, 
    2676 + 
    2677 +       58,   58,   58,   58,   58,  130,   58,   58,   58,   58, 
    2678 +       58,   58,   58,   58,   58,   58,   58, -107 
    2679 +    }, 
    2680 + 
    2681 +    { 
    2682 +       11, -108, -108, -108, -108, -108, -108, -108, -108, -108, 
    2683 +     -108, -108, -108,   58, -108, -108,   58,   58,   58,   58, 
    2684 +       58,   58,   58,   58,   58,   58,   58,  131,   58,   58, 
    2685 +       58,   58,   58,   58,   58,   58,   58, -108 
    2686 +    }, 
    2687 + 
    2688 +    { 
    2689 +       11, -109, -109, -109, -109, -109, -109, -109, -109, -109, 
    2690 +     -109, -109, -109,   58, -109, -109,   58,   58,   58,   58, 
    2691 +       58,   58,   58,  132,   58,   58,   58,   58,   58,   58, 
    2692 +       58,   58,   58,   58,   58,   58,   58, -109 
    2693 + 
    2694 +    }, 
    2695 + 
    2696 +    { 
    2697 +       11, -110, -110, -110, -110, -110, -110, -110, -110, -110, 
    2698 +     -110, -110, -110,   58, -110, -110,   58,   58,   58,   58, 
    2699 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2700 +       58,   58,   58,   58,   58,  133,   58, -110 
    2701 +    }, 
    2702 + 
    2703 +    { 
    2704 +       11, -111, -111, -111, -111, -111, -111, -111, -111, -111, 
    2705 +     -111, -111, -111,   58, -111, -111,   58,   58,   58,   58, 
    2706 +       58,  134,   58,   58,   58,   58,   58,   58,   58,   58, 
    2707 +       58,   58,   58,   58,   58,   58,   58, -111 
    2708 +    }, 
    2709 + 
    2710 +    { 
    2711 +       11, -112, -112, -112, -112, -112, -112, -112, -112, -112, 
    2712 +     -112, -112, -112,   58, -112, -112,   58,   58,   58,   58, 
    2713 + 
    2714 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2715 +       58,   58,  135,   58,   58,   58,   58, -112 
    2716 +    }, 
    2717 + 
    2718 +    { 
    2719 +       11, -113, -113, -113, -113, -113, -113, -113, -113, -113, 
    2720 +     -113, -113, -113,   58, -113, -113,   58,   58,   58,   58, 
    2721 +       58,   58,   58,   58,   58,  136,   58,   58,   58,   58, 
    2722 +       58,   58,   58,   58,   58,   58,   58, -113 
    2723 +    }, 
    2724 + 
    2725 +    { 
    2726 +       11, -114, -114, -114, -114, -114, -114, -114, -114, -114, 
    2727 +     -114, -114, -114,   58, -114, -114,   58,   58,   58,   58, 
    2728 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2729 +       58,   58,   58,  137,   58,   58,   58, -114 
    2730 + 
    2731 +    }, 
    2732 + 
    2733 +    { 
    2734 +       11, -115, -115, -115, -115, -115, -115, -115, -115, -115, 
    2735 +     -115,   89,   89,   89, -115, -115,   89,   89,   89,   89, 
    2736 +       89,   89,   89,   89,   89,   89,   89,   89,   89,   89, 
    2737 +       89,   89,   89,   89,   89,   89,   89, -115 
    2738 +    }, 
    2739 + 
    2740 +    { 
    2741 +       11, -116, -116, -116, -116, -116, -116, -116, -116, -116, 
    2742 +     -116, -116, -116,   58, -116, -116,   58,   58,   58,   58, 
    2743 +       58,  138,   58,   58,   58,   58,   58,   58,   58,   58, 
    2744 +       58,   58,   58,   58,   58,   58,   58, -116 
    2745 +    }, 
    2746 + 
    2747 +    { 
    2748 +       11, -117, -117, -117, -117, -117, -117, -117, -117, -117, 
    2749 +     -117, -117, -117,   58, -117, -117,   58,   58,   58,  139, 
    2750 + 
    2751 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2752 +       58,   58,   58,   58,   58,   58,   58, -117 
    2753 +    }, 
    2754 + 
    2755 +    { 
    2756 +       11, -118, -118, -118, -118, -118, -118, -118, -118, -118, 
    2757 +     -118, -118, -118,   58, -118, -118,   58,   58,   58,   58, 
    2758 +       58,  140,   58,   58,   58,   58,   58,   58,   58,   58, 
    2759 +       58,   58,   58,   58,   58,   58,   58, -118 
    2760 +    }, 
    2761 + 
    2762 +    { 
    2763 +       11, -119, -119, -119, -119, -119, -119, -119, -119, -119, 
    2764 +     -119, -119, -119,   58, -119, -119,   58,   58,   58,   58, 
    2765 +       58,   58,   58,   58,   58,  141,   58,   58,   58,   58, 
    2766 +       58,   58,   58,   58,   58,   58,   58, -119 
    2767 + 
    2768 +    }, 
    2769 + 
    2770 +    { 
    2771 +       11, -120, -120, -120, -120, -120, -120, -120, -120, -120, 
    2772 +     -120, -120, -120,   58, -120, -120,   58,   58,  142,   58, 
    2773 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2774 +       58,   58,   58,   58,  143,   58,   58, -120 
    2775 +    }, 
    2776 + 
    2777 +    { 
    2778 +       11, -121, -121, -121, -121, -121, -121, -121, -121, -121, 
    2779 +     -121, -121, -121,   58, -121, -121,   58,   58,   58,   58, 
    2780 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2781 +       58,   58,   58,   58,   58,  144,   58, -121 
    2782 +    }, 
    2783 + 
    2784 +    { 
    2785 +       11, -122, -122, -122, -122, -122, -122, -122, -122, -122, 
    2786 +     -122, -122, -122,   58, -122, -122,   58,   58,   58,   58, 
    2787 + 
    2788 +       58,   58,   58,   58,   58,   58,   58,   58,  145,   58, 
    2789 +       58,   58,   58,   58,   58,   58,   58, -122 
    2790 +    }, 
    2791 + 
    2792 +    { 
    2793 +       11, -123, -123, -123, -123, -123, -123, -123, -123, -123, 
    2794 +     -123, -123, -123,   58, -123, -123,   58,   58,   58,   58, 
    2795 +       58,   58,   58,   58,   58,   58,  146,   58,   58,   58, 
    2796 +       58,   58,   58,   58,   58,   58,   58, -123 
    2797 +    }, 
    2798 + 
    2799 +    { 
    2800 +       11, -124, -124, -124, -124, -124, -124, -124, -124, -124, 
    2801 +     -124, -124, -124,   58, -124, -124,   58,   58,   58,   58, 
    2802 +       58,   58,   58,   58,  147,   58,   58,   58,   58,   58, 
    2803 +       58,   58,   58,   58,   58,   58,   58, -124 
    2804 + 
    2805 +    }, 
    2806 + 
    2807 +    { 
    2808 +       11, -125, -125, -125, -125, -125, -125, -125, -125, -125, 
    2809 +     -125, -125, -125,   58, -125, -125,   58,   58,   58,   58, 
    2810 +       58,   58,  148,   58,   58,   58,   58,   58,   58,   58, 
    2811 +       58,   58,   58,   58,   58,   58,   58, -125 
    2812 +    }, 
    2813 + 
    2814 +    { 
    2815 +       11, -126, -126, -126, -126, -126, -126, -126, -126, -126, 
    2816 +     -126, -126, -126,   58, -126, -126,   58,   58,   58,   58, 
    2817 +       58,  149,   58,   58,   58,   58,   58,   58,   58,   58, 
    2818 +       58,   58,   58,   58,   58,   58,   58, -126 
    2819 +    }, 
    2820 + 
    2821 +    { 
    2822 +       11, -127, -127, -127, -127, -127, -127, -127, -127, -127, 
    2823 +     -127, -127, -127,   58, -127, -127,   58,   58,   58,   58, 
    2824 + 
    2825 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2826 +       58,   58,   58,   58,   58,   58,   58, -127 
    2827 +    }, 
    2828 + 
    2829 +    { 
    2830 +       11, -128, -128, -128, -128, -128, -128, -128, -128, -128, 
    2831 +     -128, -128, -128,   58, -128, -128,   58,   58,   58,   58, 
    2832 +       58,   58,   58,   58,   58,   58,   58,  150,   58,   58, 
    2833 +       58,   58,   58,   58,   58,   58,   58, -128 
    2834 +    }, 
    2835 + 
    2836 +    { 
    2837 +       11, -129, -129, -129, -129, -129, -129, -129, -129, -129, 
    2838 +     -129, -129, -129,   58, -129, -129,   58,   58,   58,  151, 
    2839 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2840 +       58,   58,   58,   58,   58,   58,   58, -129 
    2841 + 
    2842 +    }, 
    2843 + 
    2844 +    { 
    2845 +       11, -130, -130, -130, -130, -130, -130, -130, -130, -130, 
    2846 +     -130, -130, -130,   58, -130, -130,   58,   58,   58,   58, 
    2847 +       58,   58,   58,   58,   58,   58,   58,   58,   58,  152, 
    2848 +       58,   58,   58,   58,   58,   58,   58, -130 
    2849 +    }, 
    2850 + 
    2851 +    { 
    2852 +       11, -131, -131, -131, -131, -131, -131, -131, -131, -131, 
    2853 +     -131, -131, -131,   58, -131, -131,   58,   58,   58,   58, 
    2854 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2855 +      153,   58,   58,   58,   58,   58,   58, -131 
    2856 +    }, 
    2857 + 
    2858 +    { 
    2859 +       11, -132, -132, -132, -132, -132, -132, -132, -132, -132, 
    2860 +     -132, -132, -132,   58, -132, -132,   58,   58,   58,   58, 
    2861 + 
    2862 +       58,  154,   58,   58,   58,   58,   58,   58,   58,   58, 
    2863 +       58,   58,   58,   58,   58,   58,   58, -132 
    2864 +    }, 
    2865 + 
    2866 +    { 
    2867 +       11, -133, -133, -133, -133, -133, -133, -133, -133, -133, 
    2868 +     -133, -133, -133,   58, -133, -133,   58,   58,   58,   58, 
    2869 +       58,   58,   58,   58,   58,  155,   58,   58,   58,   58, 
    2870 +       58,   58,   58,   58,   58,   58,   58, -133 
    2871 +    }, 
    2872 + 
    2873 +    { 
    2874 +       11, -134, -134, -134, -134, -134, -134, -134, -134, -134, 
    2875 +     -134, -134, -134,   58, -134, -134,   58,   58,   58,  156, 
    2876 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2877 +       58,   58,   58,   58,   58,   58,   58, -134 
    2878 + 
    2879 +    }, 
    2880 + 
    2881 +    { 
    2882 +       11, -135, -135, -135, -135, -135, -135, -135, -135, -135, 
    2883 +     -135, -135, -135,   58, -135, -135,   58,   58,   58,  157, 
    2884 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2885 +       58,   58,   58,   58,   58,   58,   58, -135 
    2886 +    }, 
    2887 + 
    2888 +    { 
    2889 +       11, -136, -136, -136, -136, -136, -136, -136, -136, -136, 
    2890 +     -136, -136, -136,   58, -136, -136,   58,   58,   58,   58, 
    2891 +       58,   58,   58,   58,   58,   58,   58,   58,  158,   58, 
    2892 +       58,   58,   58,   58,   58,   58,   58, -136 
    2893 +    }, 
    2894 + 
    2895 +    { 
    2896 +       11, -137, -137, -137, -137, -137, -137, -137, -137, -137, 
    2897 +     -137, -137, -137,   58, -137, -137,   58,   58,   58,   58, 
    2898 + 
    2899 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2900 +       58,   58,   58,   58,  159,   58,   58, -137 
    2901 +    }, 
    2902 + 
    2903 +    { 
    2904 +       11, -138, -138, -138, -138, -138, -138, -138, -138, -138, 
    2905 +     -138, -138, -138,   58, -138, -138,   58,  160,   58,   58, 
    2906 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2907 +       58,   58,   58,   58,   58,   58,   58, -138 
    2908 +    }, 
    2909 + 
    2910 +    { 
    2911 +       11, -139, -139, -139, -139, -139, -139, -139, -139, -139, 
    2912 +     -139, -139, -139,   58, -139, -139,   58,   58,   58,   58, 
    2913 +       58,  161,   58,   58,   58,   58,   58,   58,   58,   58, 
    2914 +       58,   58,   58,   58,   58,   58,   58, -139 
    2915 + 
    2916 +    }, 
    2917 + 
    2918 +    { 
    2919 +       11, -140, -140, -140, -140, -140, -140, -140, -140, -140, 
    2920 +     -140, -140, -140,   58, -140, -140,   58,   58,   58,   58, 
    2921 +       58,   58,   58,   58,   58,   58,   58,   58,  162,   58, 
    2922 +       58,   58,   58,   58,   58,   58,   58, -140 
    2923 +    }, 
    2924 + 
    2925 +    { 
    2926 +       11, -141, -141, -141, -141, -141, -141, -141, -141, -141, 
    2927 +     -141, -141, -141,   58, -141, -141,   58,   58,   58,   58, 
    2928 +       58,   58,   58,  163,   58,   58,   58,   58,   58,   58, 
    2929 +       58,   58,   58,   58,   58,   58,   58, -141 
    2930 +    }, 
    2931 + 
    2932 +    { 
    2933 +       11, -142, -142, -142, -142, -142, -142, -142, -142, -142, 
    2934 +     -142, -142, -142,   58, -142, -142,   58,   58,   58,   58, 
    2935 + 
    2936 +       58,   58,   58,   58,   58,   58,   58,   58,   58,  164, 
    2937 +       58,   58,   58,   58,   58,   58,   58, -142 
    2938 +    }, 
    2939 + 
    2940 +    { 
    2941 +       11, -143, -143, -143, -143, -143, -143, -143, -143, -143, 
    2942 +     -143, -143, -143,   58, -143, -143,   58,   58,   58,   58, 
    2943 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2944 +       58,   58,  165,   58,   58,   58,   58, -143 
    2945 +    }, 
    2946 + 
    2947 +    { 
    2948 +       11, -144, -144, -144, -144, -144, -144, -144, -144, -144, 
    2949 +     -144, -144, -144,   58, -144, -144,   58,   58,   58,   58, 
    2950 +       58,   58,   58,   58,   58,   58,  166,   58,   58,   58, 
    2951 +       58,   58,   58,   58,   58,   58,   58, -144 
    2952 + 
    2953 +    }, 
    2954 + 
    2955 +    { 
    2956 +       11, -145, -145, -145, -145, -145, -145, -145, -145, -145, 
    2957 +     -145, -145, -145,   58, -145, -145,   58,   58,   58,   58, 
    2958 +      167,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2959 +       58,   58,   58,   58,   58,   58,   58, -145 
    2960 +    }, 
    2961 + 
    2962 +    { 
    2963 +       11, -146, -146, -146, -146, -146, -146, -146, -146, -146, 
    2964 +     -146, -146, -146,   58, -146, -146,   58,   58,   58,   58, 
    2965 +       58,  168,   58,   58,   58,   58,   58,   58,   58,   58, 
    2966 +       58,   58,   58,   58,   58,   58,   58, -146 
    2967 +    }, 
    2968 + 
    2969 +    { 
    2970 +       11, -147, -147, -147, -147, -147, -147, -147, -147, -147, 
    2971 +     -147, -147, -147,   58, -147, -147,   58,   58,   58,   58, 
    2972 + 
    2973 +       58,   58,   58,   58,   58,   58,   58,   58,   58,  169, 
    2974 +       58,   58,   58,   58,   58,   58,   58, -147 
    2975 +    }, 
    2976 + 
    2977 +    { 
    2978 +       11, -148, -148, -148, -148, -148, -148, -148, -148, -148, 
    2979 +     -148, -148, -148,   58, -148, -148,   58,   58,   58,   58, 
    2980 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    2981 +       58,   58,   58,   58,   58,   58,   58, -148 
    2982 +    }, 
    2983 + 
    2984 +    { 
    2985 +       11, -149, -149, -149, -149, -149, -149, -149, -149, -149, 
    2986 +     -149, -149, -149,   58, -149, -149,   58,   58,   58,   58, 
    2987 +       58,   58,   58,   58,   58,   58,   58,   58,  170,   58, 
    2988 +       58,   58,   58,   58,   58,   58,   58, -149 
    2989 + 
    2990 +    }, 
    2991 + 
    2992 +    { 
    2993 +       11, -150, -150, -150, -150, -150, -150, -150, -150, -150, 
    2994 +     -150, -150, -150,   58, -150, -150,   58,   58,   58,   58, 
    2995 +       58,  171,   58,   58,   58,   58,   58,   58,   58,   58, 
    2996 +       58,   58,   58,   58,   58,   58,   58, -150 
    2997 +    }, 
    2998 + 
    2999 +    { 
    3000 +       11, -151, -151, -151, -151, -151, -151, -151, -151, -151, 
    3001 +     -151, -151, -151,   58, -151, -151,   58,   58,   58,   58, 
    3002 +       58,   58,   58,   58,   58,   58,   58,   58,   58,  172, 
    3003 +       58,   58,   58,   58,   58,   58,   58, -151 
    3004 +    }, 
    3005 + 
    3006 +    { 
    3007 +       11, -152, -152, -152, -152, -152, -152, -152, -152, -152, 
    3008 +     -152, -152, -152,   58, -152, -152,   58,   58,   58,   58, 
    3009 + 
    3010 +       58,   58,   58,   58,   58,   58,   58,   58,  173,   58, 
    3011 +       58,   58,   58,   58,   58,   58,   58, -152 
    3012 +    }, 
    3013 + 
    3014 +    { 
    3015 +       11, -153, -153, -153, -153, -153, -153, -153, -153, -153, 
    3016 +     -153, -153, -153,   58, -153, -153,   58,   58,   58,   58, 
    3017 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3018 +       58,   58,   58,   58,  174,   58,   58, -153 
    3019 +    }, 
    3020 + 
    3021 +    { 
    3022 +       11, -154, -154, -154, -154, -154, -154, -154, -154, -154, 
    3023 +     -154, -154, -154,   58, -154, -154,   58,   58,   58,   58, 
    3024 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3025 +       58,   58,   58,   58,   58,   58,   58, -154 
    3026 + 
    3027 +    }, 
    3028 + 
    3029 +    { 
    3030 +       11, -155, -155, -155, -155, -155, -155, -155, -155, -155, 
    3031 +     -155, -155, -155,   58, -155, -155,   58,   58,   58,   58, 
    3032 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3033 +       58,   58,  175,   58,   58,   58,   58, -155 
    3034 +    }, 
    3035 + 
    3036 +    { 
    3037 +       11, -156, -156, -156, -156, -156, -156, -156, -156, -156, 
    3038 +     -156, -156, -156,   58, -156, -156,   58,   58,   58,   58, 
    3039 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3040 +       58,   58,   58,   58,  176,   58,   58, -156 
    3041 +    }, 
    3042 + 
    3043 +    { 
    3044 +       11, -157, -157, -157, -157, -157, -157, -157, -157, -157, 
    3045 +     -157, -157, -157,   58, -157, -157,   58,   58,   58,   58, 
    3046 + 
    3047 +       58,  177,   58,   58,   58,   58,   58,   58,   58,   58, 
    3048 +       58,   58,   58,   58,   58,   58,   58, -157 
    3049 +    }, 
    3050 + 
    3051 +    { 
    3052 +       11, -158, -158, -158, -158, -158, -158, -158, -158, -158, 
    3053 +     -158, -158, -158,   58, -158, -158,   58,   58,   58,   58, 
    3054 +       58,   58,   58,  178,   58,   58,   58,   58,   58,   58, 
    3055 +       58,   58,   58,   58,   58,   58,   58, -158 
    3056 +    }, 
    3057 + 
    3058 +    { 
    3059 +       11, -159, -159, -159, -159, -159, -159, -159, -159, -159, 
    3060 +     -159, -159, -159,   58, -159, -159,   58,  179,   58,   58, 
    3061 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3062 +       58,   58,   58,   58,   58,   58,   58, -159 
    3063 + 
    3064 +    }, 
    3065 + 
    3066 +    { 
    3067 +       11, -160, -160, -160, -160, -160, -160, -160, -160, -160, 
    3068 +     -160, -160, -160,   58, -160, -160,   58,   58,   58,   58, 
    3069 +       58,   58,   58,   58,   58,   58,   58,   58,  180,   58, 
    3070 +       58,   58,   58,   58,   58,   58,   58, -160 
    3071 +    }, 
    3072 + 
    3073 +    { 
    3074 +       11, -161, -161, -161, -161, -161, -161, -161, -161, -161, 
    3075 +     -161, -161, -161,   58, -161, -161,   58,   58,   58,   58, 
    3076 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3077 +       58,   58,   58,   58,   58,   58,   58, -161 
    3078 +    }, 
    3079 + 
    3080 +    { 
    3081 +       11, -162, -162, -162, -162, -162, -162, -162, -162, -162, 
    3082 +     -162, -162, -162,   58, -162, -162,   58,   58,   58,   58, 
    3083 + 
    3084 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3085 +       58,   58,   58,   58,  181,   58,   58, -162 
    3086 +    }, 
    3087 + 
    3088 +    { 
    3089 +       11, -163, -163, -163, -163, -163, -163, -163, -163, -163, 
    3090 +     -163, -163, -163,   58, -163, -163,   58,   58,   58,   58, 
    3091 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3092 +       58,   58,   58,   58,   58,   58,   58, -163 
    3093 +    }, 
    3094 + 
    3095 +    { 
    3096 +       11, -164, -164, -164, -164, -164, -164, -164, -164, -164, 
    3097 +     -164, -164, -164,   58, -164, -164,   58,   58,   58,   58, 
    3098 +       58,   58,   58,   58,   58,   58,   58,   58,   58,  182, 
    3099 +       58,   58,   58,   58,   58,   58,   58, -164 
    3100 + 
    3101 +    }, 
    3102 + 
    3103 +    { 
    3104 +       11, -165, -165, -165, -165, -165, -165, -165, -165, -165, 
    3105 +     -165, -165, -165,   58, -165, -165,   58,   58,   58,   58, 
    3106 +       58,   58,   58,   58,   58,  183,   58,   58,   58,   58, 
    3107 +       58,   58,   58,   58,   58,   58,   58, -165 
    3108 +    }, 
    3109 + 
    3110 +    { 
    3111 +       11, -166, -166, -166, -166, -166, -166, -166, -166, -166, 
    3112 +     -166, -166, -166,   58, -166, -166,   58,   58,   58,   58, 
    3113 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3114 +       58,   58,   58,   58,  184,   58,   58, -166 
    3115 +    }, 
    3116 + 
    3117 +    { 
    3118 +       11, -167, -167, -167, -167, -167, -167, -167, -167, -167, 
    3119 +     -167, -167, -167,   58, -167, -167,   58,   58,   58,   58, 
    3120 + 
    3121 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3122 +       58,   58,   58,  185,   58,   58,   58, -167 
    3123 +    }, 
    3124 + 
    3125 +    { 
    3126 +       11, -168, -168, -168, -168, -168, -168, -168, -168, -168, 
    3127 +     -168, -168, -168,   58, -168, -168,   58,   58,   58,   58, 
    3128 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3129 +       58,   58,   58,   58,   58,   58,   58, -168 
    3130 +    }, 
    3131 + 
    3132 +    { 
    3133 +       11, -169, -169, -169, -169, -169, -169, -169, -169, -169, 
    3134 +     -169, -169, -169,   58, -169, -169,   58,   58,   58,   58, 
    3135 +       58,   58,   58,   58,   58,  186,   58,   58,   58,   58, 
    3136 +       58,   58,   58,   58,   58,   58,   58, -169 
    3137 + 
    3138 +    }, 
    3139 + 
    3140 +    { 
    3141 +       11, -170, -170, -170, -170, -170, -170, -170, -170, -170, 
    3142 +     -170, -170, -170,   58, -170, -170,   58,   58,   58,   58, 
    3143 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3144 +       58,   58,   58,   58,   58,  187,   58, -170 
    3145 +    }, 
    3146 + 
    3147 +    { 
    3148 +       11, -171, -171, -171, -171, -171, -171, -171, -171, -171, 
    3149 +     -171, -171, -171,   58, -171, -171,   58,   58,   58,   58, 
    3150 +       58,   58,   58,   58,   58,   58,   58,   58,  188,   58, 
    3151 +       58,   58,   58,   58,   58,   58,   58, -171 
    3152 +    }, 
    3153 + 
    3154 +    { 
    3155 +       11, -172, -172, -172, -172, -172, -172, -172, -172, -172, 
    3156 +     -172, -172, -172,   58, -172, -172,   58,   58,   58,   58, 
    3157 + 
    3158 +       58,   58,   58,   58,   58,   58,   58,   58,  189,   58, 
    3159 +       58,   58,   58,   58,   58,   58,   58, -172 
    3160 +    }, 
    3161 + 
    3162 +    { 
    3163 +       11, -173, -173, -173, -173, -173, -173, -173, -173, -173, 
    3164 +     -173, -173, -173,   58, -173, -173,   58,  190,   58,   58, 
    3165 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3166 +       58,   58,   58,   58,   58,   58,   58, -173 
    3167 +    }, 
    3168 + 
    3169 +    { 
    3170 +       11, -174, -174, -174, -174, -174, -174, -174, -174, -174, 
    3171 +     -174, -174, -174,   58, -174, -174,   58,   58,   58,   58, 
    3172 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3173 +       58,   58,   58,   58,   58,   58,   58, -174 
    3174 + 
    3175 +    }, 
    3176 + 
    3177 +    { 
    3178 +       11, -175, -175, -175, -175, -175, -175, -175, -175, -175, 
    3179 +     -175, -175, -175,   58, -175, -175,   58,   58,   58,   58, 
    3180 +       58,  191,   58,   58,   58,   58,   58,   58,   58,   58, 
    3181 +       58,   58,   58,   58,   58,   58,   58, -175 
    3182 +    }, 
    3183 + 
    3184 +    { 
    3185 +       11, -176, -176, -176, -176, -176, -176, -176, -176, -176, 
    3186 +     -176, -176, -176,   58, -176, -176,   58,   58,   58,   58, 
    3187 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3188 +       58,   58,   58,   58,   58,   58,   58, -176 
    3189 +    }, 
    3190 + 
    3191 +    { 
    3192 +       11, -177, -177, -177, -177, -177, -177, -177, -177, -177, 
    3193 +     -177, -177, -177,   58, -177, -177,   58,   58,   58,   58, 
    3194 + 
    3195 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3196 +       58,   58,   58,   58,   58,   58,   58, -177 
    3197 +    }, 
    3198 + 
    3199 +    { 
    3200 +       11, -178, -178, -178, -178, -178, -178, -178, -178, -178, 
    3201 +     -178, -178, -178,   58, -178, -178,   58,   58,   58,   58, 
    3202 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3203 +       58,   58,   58,   58,   58,   58,   58, -178 
    3204 +    }, 
    3205 + 
    3206 +    { 
    3207 +       11, -179, -179, -179, -179, -179, -179, -179, -179, -179, 
    3208 +     -179, -179, -179,   58, -179, -179,   58,   58,   58,   58, 
    3209 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3210 +       58,   58,   58,   58,  192,   58,   58, -179 
    3211 + 
    3212 +    }, 
    3213 + 
    3214 +    { 
    3215 +       11, -180, -180, -180, -180, -180, -180, -180, -180, -180, 
    3216 +     -180, -180, -180,   58, -180, -180,   58,   58,   58,   58, 
    3217 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3218 +       58,   58,   58,   58,   58,   58,   58, -180 
    3219 +    }, 
    3220 + 
    3221 +    { 
    3222 +       11, -181, -181, -181, -181, -181, -181, -181, -181, -181, 
    3223 +     -181, -181, -181,   58, -181, -181,   58,   58,   58,   58, 
    3224 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3225 +       58,   58,   58,   58,   58,   58,   58, -181 
    3226 +    }, 
    3227 + 
    3228 +    { 
    3229 +       11, -182, -182, -182, -182, -182, -182, -182, -182, -182, 
    3230 +     -182, -182, -182,   58, -182, -182,   58,   58,   58,   58, 
    3231 + 
    3232 +       58,   58,   58,   58,   58,   58,  193,   58,   58,   58, 
    3233 +       58,   58,   58,   58,   58,   58,   58, -182 
    3234 +    }, 
    3235 + 
    3236 +    { 
    3237 +       11, -183, -183, -183, -183, -183, -183, -183, -183, -183, 
    3238 +     -183, -183, -183,   58, -183, -183,   58,   58,   58,   58, 
    3239 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3240 +       58,   58,   58,  194,   58,   58,   58, -183 
    3241 +    }, 
    3242 + 
    3243 +    { 
    3244 +       11, -184, -184, -184, -184, -184, -184, -184, -184, -184, 
    3245 +     -184, -184, -184,   58, -184, -184,   58,   58,   58,   58, 
    3246 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3247 +       58,   58,   58,   58,   58,   58,   58, -184 
    3248 + 
    3249 +    }, 
    3250 + 
    3251 +    { 
    3252 +       11, -185, -185, -185, -185, -185, -185, -185, -185, -185, 
    3253 +     -185, -185, -185,   58, -185, -185,   58,   58,   58,   58, 
    3254 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3255 +       58,   58,   58,   58,   58,   58,   58, -185 
    3256 +    }, 
    3257 + 
    3258 +    { 
    3259 +       11, -186, -186, -186, -186, -186, -186, -186, -186, -186, 
    3260 +     -186, -186, -186,   58, -186, -186,   58,   58,   58,  195, 
    3261 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3262 +       58,   58,   58,   58,   58,   58,   58, -186 
    3263 +    }, 
    3264 + 
    3265 +    { 
    3266 +       11, -187, -187, -187, -187, -187, -187, -187, -187, -187, 
    3267 +     -187, -187, -187,   58, -187, -187,   58,   58,   58,   58, 
    3268 + 
    3269 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3270 +       58,   58,   58,   58,   58,   58,   58, -187 
    3271 +    }, 
    3272 + 
    3273 +    { 
    3274 +       11, -188, -188, -188, -188, -188, -188, -188, -188, -188, 
    3275 +     -188, -188, -188,   58, -188, -188,   58,   58,   58,   58, 
    3276 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3277 +       58,   58,   58,   58,   58,  196,   58, -188 
    3278 +    }, 
    3279 + 
    3280 +    { 
    3281 +       11, -189, -189, -189, -189, -189, -189, -189, -189, -189, 
    3282 +     -189, -189, -189,   58, -189, -189,   58,   58,   58,   58, 
    3283 +       58,   58,  197,   58,   58,   58,   58,   58,   58,   58, 
    3284 +       58,   58,   58,   58,   58,   58,   58, -189 
    3285 + 
    3286 +    }, 
    3287 + 
    3288 +    { 
    3289 +       11, -190, -190, -190, -190, -190, -190, -190, -190, -190, 
    3290 +     -190, -190, -190,   58, -190, -190,   58,   58,   58,   58, 
    3291 +       58,   58,   58,   58,   58,   58,  198,   58,   58,   58, 
    3292 +       58,   58,   58,   58,   58,   58,   58, -190 
    3293 +    }, 
    3294 + 
    3295 +    { 
    3296 +       11, -191, -191, -191, -191, -191, -191, -191, -191, -191, 
    3297 +     -191, -191, -191,   58, -191, -191,   58,   58,   58,   58, 
    3298 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3299 +       58,   58,   58,  199,   58,   58,   58, -191 
    3300 +    }, 
    3301 + 
    3302 +    { 
    3303 +       11, -192, -192, -192, -192, -192, -192, -192, -192, -192, 
    3304 +     -192, -192, -192,   58, -192, -192,   58,   58,   58,   58, 
    3305 + 
    3306 +       58,  200,   58,   58,   58,   58,   58,   58,   58,   58, 
    3307 +       58,   58,   58,   58,   58,   58,   58, -192 
    3308 +    }, 
    3309 + 
    3310 +    { 
    3311 +       11, -193, -193, -193, -193, -193, -193, -193, -193, -193, 
    3312 +     -193, -193, -193,   58, -193, -193,   58,   58,   58,   58, 
    3313 +       58,  201,   58,   58,   58,   58,   58,   58,   58,   58, 
    3314 +       58,   58,   58,   58,   58,   58,   58, -193 
    3315 +    }, 
    3316 + 
    3317 +    { 
    3318 +       11, -194, -194, -194, -194, -194, -194, -194, -194, -194, 
    3319 +     -194, -194, -194,   58, -194, -194,   58,   58,   58,   58, 
    3320 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3321 +       58,   58,   58,   58,  202,   58,   58, -194 
    3322 + 
    3323 +    }, 
    3324 + 
    3325 +    { 
    3326 +       11, -195, -195, -195, -195, -195, -195, -195, -195, -195, 
    3327 +     -195, -195, -195,   58, -195, -195,   58,   58,   58,   58, 
    3328 +       58,  203,   58,   58,   58,   58,   58,   58,   58,   58, 
    3329 +       58,   58,   58,   58,   58,   58,   58, -195 
    3330 +    }, 
    3331 + 
    3332 +    { 
    3333 +       11, -196, -196, -196, -196, -196, -196, -196, -196, -196, 
    3334 +     -196, -196, -196,   58, -196, -196,   58,   58,   58,   58, 
    3335 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3336 +       58,   58,   58,   58,   58,   58,   58, -196 
    3337 +    }, 
    3338 + 
    3339 +    { 
    3340 +       11, -197, -197, -197, -197, -197, -197, -197, -197, -197, 
    3341 +     -197, -197, -197,   58, -197, -197,   58,   58,   58,   58, 
    3342 + 
    3343 +       58,   58,   58,   58,   58,  204,   58,   58,   58,   58, 
    3344 +       58,   58,   58,   58,   58,   58,   58, -197 
    3345 +    }, 
    3346 + 
    3347 +    { 
    3348 +       11, -198, -198, -198, -198, -198, -198, -198, -198, -198, 
    3349 +     -198, -198, -198,   58, -198, -198,   58,   58,   58,   58, 
    3350 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3351 +       58,   58,   58,   58,   58,   58,   58, -198 
    3352 +    }, 
    3353 + 
    3354 +    { 
    3355 +       11, -199, -199, -199, -199, -199, -199, -199, -199, -199, 
    3356 +     -199, -199, -199,   58, -199, -199,   58,   58,   58,   58, 
    3357 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3358 +       58,   58,   58,   58,   58,   58,   58, -199 
    3359 + 
    3360 +    }, 
    3361 + 
    3362 +    { 
    3363 +       11, -200, -200, -200, -200, -200, -200, -200, -200, -200, 
    3364 +     -200, -200, -200,   58, -200, -200,   58,   58,   58,   58, 
    3365 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3366 +       58,   58,   58,   58,   58,   58,   58, -200 
    3367 +    }, 
    3368 + 
    3369 +    { 
    3370 +       11, -201, -201, -201, -201, -201, -201, -201, -201, -201, 
    3371 +     -201, -201, -201,   58, -201, -201,   58,  205,   58,   58, 
    3372 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3373 +       58,   58,   58,   58,   58,   58,   58, -201 
    3374 +    }, 
    3375 + 
    3376 +    { 
    3377 +       11, -202, -202, -202, -202, -202, -202, -202, -202, -202, 
    3378 +     -202, -202, -202,   58, -202, -202,   58,  206,   58,   58, 
    3379 + 
    3380 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3381 +       58,   58,   58,   58,   58,   58,   58, -202 
    3382 +    }, 
    3383 + 
    3384 +    { 
    3385 +       11, -203, -203, -203, -203, -203, -203, -203, -203, -203, 
    3386 +     -203, -203, -203,   58, -203, -203,   58,   58,   58,   58, 
    3387 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3388 +       58,   58,   58,   58,   58,   58,   58, -203 
    3389 +    }, 
    3390 + 
    3391 +    { 
    3392 +       11, -204, -204, -204, -204, -204, -204, -204, -204, -204, 
    3393 +     -204, -204, -204,   58, -204, -204,   58,   58,   58,   58, 
    3394 +       58,   58,   58,  207,   58,   58,   58,   58,   58,   58, 
    3395 +       58,   58,   58,   58,   58,   58,   58, -204 
    3396 + 
    3397 +    }, 
    3398 + 
    3399 +    { 
    3400 +       11, -205, -205, -205, -205, -205, -205, -205, -205, -205, 
    3401 +     -205, -205, -205,   58, -205, -205,   58,   58,   58,   58, 
    3402 +       58,   58,   58,   58,   58,   58,   58,   58,  208,   58, 
    3403 +       58,   58,   58,   58,   58,   58,   58, -205 
    3404 +    }, 
    3405 + 
    3406 +    { 
    3407 +       11, -206, -206, -206, -206, -206, -206, -206, -206, -206, 
    3408 +     -206, -206, -206,   58, -206, -206,   58,   58,   58,   58, 
    3409 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3410 +       58,   58,   58,   58,  209,   58,   58, -206 
    3411 +    }, 
    3412 + 
    3413 +    { 
    3414 +       11, -207, -207, -207, -207, -207, -207, -207, -207, -207, 
    3415 +     -207, -207, -207,   58, -207, -207,   58,   58,   58,   58, 
    3416 + 
    3417 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3418 +       58,   58,   58,   58,   58,   58,   58, -207 
    3419 +    }, 
    3420 + 
    3421 +    { 
    3422 +       11, -208, -208, -208, -208, -208, -208, -208, -208, -208, 
    3423 +     -208, -208, -208,   58, -208, -208,   58,   58,   58,   58, 
    3424 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3425 +       58,   58,   58,   58,   58,   58,   58, -208 
    3426 +    }, 
    3427 + 
    3428 +    { 
    3429 +       11, -209, -209, -209, -209, -209, -209, -209, -209, -209, 
    3430 +     -209, -209, -209,   58, -209, -209,   58,   58,   58,   58, 
    3431 +       58,  210,   58,   58,   58,   58,   58,   58,   58,   58, 
    3432 +       58,   58,   58,   58,   58,   58,   58, -209 
    3433 + 
    3434 +    }, 
    3435 + 
    3436 +    { 
    3437 +       11, -210, -210, -210, -210, -210, -210, -210, -210, -210, 
    3438 +     -210, -210, -210,   58, -210, -210,   58,   58,   58,   58, 
    3439 +       58,   58,   58,   58,   58,   58,   58,   58,   58,   58, 
    3440 +       58,   58,   58,   58,   58,   58,   58, -210 
    3441 +    }, 
    3442 + 
    3443 +    } ; 
    3444 + 
    3445 +static yy_state_type yy_get_previous_state (void ); 
    3446 +static yy_state_type yy_try_NUL_trans (yy_state_type current_state  ); 
    3447 +static int yy_get_next_buffer (void ); 
    3448 +static void yy_fatal_error (yyconst char msg[]  ); 
    3449 + 
    3450 +/* Done after the current pattern has been matched and before the 
    3451 + * corresponding action - sets up zconftext. 
    3452 + */ 
    3453 +#define YY_DO_BEFORE_ACTION \ 
    3454 +       (yytext_ptr) = yy_bp; \ 
    3455 +       zconfleng = (size_t) (yy_cp - yy_bp); \ 
    3456 +       (yy_hold_char) = *yy_cp; \ 
    3457 +       *yy_cp = '\0'; \ 
    3458 +       (yy_c_buf_p) = yy_cp; 
    3459 + 
    3460 +#define YY_NUM_RULES 64 
    3461 +#define YY_END_OF_BUFFER 65 
    3462 +/* This struct is not used in this scanner, 
    3463 +   but its presence is necessary. */ 
    3464 +struct yy_trans_info 
    3465 +       { 
    3466 +       flex_int32_t yy_verify; 
    3467 +       flex_int32_t yy_nxt; 
    3468 +       }; 
    3469 +static yyconst flex_int16_t yy_accept[211] = 
    3470 +    {   0, 
    3471 +        0,    0,    0,    0,    0,    0,    0,    0,    0,    0, 
    3472 +       65,    5,    4,    3,    2,   36,   37,   35,   35,   35, 
    3473 +       35,   35,   35,   35,   35,   35,   35,   35,   35,   35, 
    3474 +       63,   60,   62,   55,   59,   58,   57,   53,   48,   42, 
    3475 +       47,   51,   53,   40,   41,   50,   50,   43,   53,   50, 
    3476 +       50,   53,    4,    3,    2,    2,    1,   35,   35,   35, 
    3477 +       35,   35,   35,   35,   16,   35,   35,   35,   35,   35, 
    3478 +       35,   35,   35,   35,   35,   35,   63,   60,   62,   61, 
    3479 +       55,   54,   57,   56,   44,   51,   38,   50,   50,   52, 
    3480 +       45,   46,   39,   35,   35,   35,   35,   35,   35,   35, 
    3481 + 
    3482 +       35,   35,   30,   29,   35,   35,   35,   35,   35,   35, 
    3483 +       35,   35,   35,   35,   49,   25,   35,   35,   35,   35, 
    3484 +       35,   35,   35,   35,   35,   35,   15,   35,    7,   35, 
    3485 +       35,   35,   35,   35,   35,   35,   35,   35,   35,   35, 
    3486 +       35,   35,   35,   35,   35,   35,   35,   17,   35,   35, 
    3487 +       35,   35,   35,   34,   35,   35,   35,   35,   35,   35, 
    3488 +       10,   35,   13,   35,   35,   35,   35,   33,   35,   35, 
    3489 +       35,   35,   35,   22,   35,   32,    9,   31,   35,   26, 
    3490 +       12,   35,   35,   21,   18,   35,    8,   35,   35,   35, 
    3491 +       35,   35,   27,   35,   35,    6,   35,   20,   19,   23, 
    3492 + 
    3493 +       35,   35,   11,   35,   35,   35,   14,   28,   35,   24 
    3494 +    } ; 
    3495 + 
    3496 +static yyconst flex_int32_t yy_ec[256] = 
    3497 +    {   0, 
    3498 +        1,    1,    1,    1,    1,    1,    1,    1,    2,    3, 
    3499 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3500 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3501 +        1,    2,    4,    5,    6,    1,    1,    7,    8,    9, 
    3502 +       10,    1,    1,    1,   11,   12,   12,   13,   13,   13, 
    3503 +       13,   13,   13,   13,   13,   13,   13,    1,    1,    1, 
    3504 +       14,    1,    1,    1,   13,   13,   13,   13,   13,   13, 
    3505 +       13,   13,   13,   13,   13,   13,   13,   13,   13,   13, 
    3506 +       13,   13,   13,   13,   13,   13,   13,   13,   13,   13, 
    3507 +        1,   15,    1,    1,   16,    1,   17,   18,   19,   20, 
    3508 + 
    3509 +       21,   22,   23,   24,   25,   13,   13,   26,   27,   28, 
    3510 +       29,   30,   31,   32,   33,   34,   35,   13,   13,   36, 
    3511 +       13,   13,    1,   37,    1,    1,    1,    1,    1,    1, 
    3512 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3513 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3514 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3515 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3516 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3517 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3518 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3519 + 
    3520 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3521 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3522 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3523 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3524 +        1,    1,    1,    1,    1,    1,    1,    1,    1,    1, 
    3525 +        1,    1,    1,    1,    1 
    3526 +    } ; 
    3527 + 
    3528 +extern int zconf_flex_debug; 
    3529 +int zconf_flex_debug = 0; 
    3530 + 
    3531 +/* The intent behind this definition is that it'll catch 
    3532 + * any uses of REJECT which flex missed. 
    3533 + */ 
    3534 +#define REJECT reject_used_but_not_detected 
    3535 +#define yymore() yymore_used_but_not_detected 
    3536 +#define YY_MORE_ADJ 0 
    3537 +#define YY_RESTORE_YY_MORE_OFFSET 
    3538 +char *zconftext; 
    3539 + 
    3540 +/* 
    3541 + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> 
    3542 + * Released under the terms of the GNU GPL v2.0. 
    3543 + */ 
    3544 + 
    3545 +#include <limits.h> 
    3546 +#include <stdio.h> 
    3547 +#include <stdlib.h> 
    3548 +#include <string.h> 
    3549 +#include <unistd.h> 
    3550 + 
    3551 +#define LKC_DIRECT_LINK 
    3552 +#include "lkc.h" 
    3553 + 
    3554 +#define START_STRSIZE  16 
    3555 + 
    3556 +char *text; 
    3557 +static char *text_ptr; 
    3558 +static int text_size, text_asize; 
    3559 + 
    3560 +struct buffer { 
    3561 +        struct buffer *parent; 
    3562 +        YY_BUFFER_STATE state; 
    3563 +}; 
    3564 + 
    3565 +struct buffer *current_buf; 
    3566 + 
    3567 +static int last_ts, first_ts; 
    3568 + 
    3569 +static void zconf_endhelp(void); 
    3570 +static struct buffer *zconf_endfile(void); 
    3571 + 
    3572 +void new_string(void) 
    3573 +{ 
    3574 +       text = malloc(START_STRSIZE); 
    3575 +       text_asize = START_STRSIZE; 
    3576 +       text_ptr = text; 
    3577 +       text_size = 0; 
    3578 +       *text_ptr = 0; 
    3579 +} 
    3580 + 
    3581 +void append_string(const char *str, int size) 
    3582 +{ 
    3583 +       int new_size = text_size + size + 1; 
    3584 +       if (new_size > text_asize) { 
    3585 +               text = realloc(text, new_size); 
    3586 +               text_asize = new_size; 
    3587 +               text_ptr = text + text_size; 
    3588 +       } 
    3589 +       memcpy(text_ptr, str, size); 
    3590 +       text_ptr += size; 
    3591 +       text_size += size; 
    3592 +       *text_ptr = 0; 
    3593 +} 
    3594 + 
    3595 +void alloc_string(const char *str, int size) 
    3596 +{ 
    3597 +       text = malloc(size + 1); 
    3598 +       memcpy(text, str, size); 
    3599 +       text[size] = 0; 
    3600 +} 
    3601 + 
    3602 +#define INITIAL 0 
    3603 +#define COMMAND 1 
    3604 +#define HELP 2 
    3605 +#define STRING 3 
    3606 +#define PARAM 4 
    3607 + 
    3608 +/* Special case for "unistd.h", since it is non-ANSI. We include it way 
    3609 + * down here because we want the user's section 1 to have been scanned first. 
    3610 + * The user has a chance to override it with an option. 
    3611 + */ 
    3612 +#include <unistd.h> 
    3613 + 
    3614 +#ifndef YY_EXTRA_TYPE 
    3615 +#define YY_EXTRA_TYPE void * 
    3616 +#endif 
    3617 + 
    3618 +/* Macros after this point can all be overridden by user definitions in 
    3619 + * section 1. 
    3620 + */ 
    3621 + 
    3622 +#ifndef YY_SKIP_YYWRAP 
    3623 +#ifdef __cplusplus 
    3624 +extern "C" int zconfwrap (void ); 
    3625 +#else 
    3626 +extern int zconfwrap (void ); 
    3627 +#endif 
    3628 +#endif 
    3629 + 
    3630 +    static void yyunput (int c,char *buf_ptr  ); 
    3631 + 
    3632 +#ifndef yytext_ptr 
    3633 +static void yy_flex_strncpy (char *,yyconst char *,int ); 
    3634 +#endif 
    3635 + 
    3636 +#ifdef YY_NEED_STRLEN 
    3637 +static int yy_flex_strlen (yyconst char * ); 
    3638 +#endif 
    3639 + 
    3640 +#ifndef YY_NO_INPUT 
    3641 + 
    3642 +#ifdef __cplusplus 
    3643 +static int yyinput (void ); 
    3644 +#else 
    3645 +static int input (void ); 
    3646 +#endif 
    3647 + 
    3648 +#endif 
    3649 + 
    3650 +/* Amount of stuff to slurp up with each read. */ 
    3651 +#ifndef YY_READ_BUF_SIZE 
    3652 +#define YY_READ_BUF_SIZE 8192 
    3653 +#endif 
    3654 + 
    3655 +/* Copy whatever the last rule matched to the standard output. */ 
    3656 +#ifndef ECHO 
    3657 +/* This used to be an fputs(), but since the string might contain NUL's, 
    3658 + * we now use fwrite(). 
    3659 + */ 
    3660 +#define ECHO (void) fwrite( zconftext, zconfleng, 1, zconfout ) 
    3661 +#endif 
    3662 + 
    3663 +/* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL, 
    3664 + * is returned in "result". 
    3665 + */ 
    3666 +#ifndef YY_INPUT 
    3667 +#define YY_INPUT(buf,result,max_size) \ 
    3668 +       errno=0; \ 
    3669 +       while ( (result = read( fileno(zconfin), (char *) buf, max_size )) < 0 ) \ 
    3670 +       { \ 
    3671 +               if( errno != EINTR) \ 
    3672 +               { \ 
    3673 +                       YY_FATAL_ERROR( "input in flex scanner failed" ); \ 
    3674 +                       break; \ 
    3675 +               } \ 
    3676 +               errno=0; \ 
    3677 +               clearerr(zconfin); \ 
    3678 +       }\ 
    3679 +\ 
    3680 + 
    3681 +#endif 
    3682 + 
    3683 +/* No semi-colon after return; correct usage is to write "yyterminate();" - 
    3684 + * we don't want an extra ';' after the "return" because that will cause 
    3685 + * some compilers to complain about unreachable statements. 
    3686 + */ 
    3687 +#ifndef yyterminate 
    3688 +#define yyterminate() return YY_NULL 
    3689 +#endif 
    3690 + 
    3691 +/* Number of entries by which start-condition stack grows. */ 
    3692 +#ifndef YY_START_STACK_INCR 
    3693 +#define YY_START_STACK_INCR 25 
    3694 +#endif 
    3695 + 
    3696 +/* Report a fatal error. */ 
    3697 +#ifndef YY_FATAL_ERROR 
    3698 +#define YY_FATAL_ERROR(msg) yy_fatal_error( msg ) 
    3699 +#endif 
    3700 + 
    3701 +/* end tables serialization structures and prototypes */ 
    3702 + 
    3703 +/* Default declaration of generated scanner - a define so the user can 
    3704 + * easily add parameters. 
    3705 + */ 
    3706 +#ifndef YY_DECL 
    3707 +#define YY_DECL_IS_OURS 1 
    3708 + 
    3709 +extern int zconflex (void); 
    3710 + 
    3711 +#define YY_DECL int zconflex (void) 
    3712 +#endif /* !YY_DECL */ 
    3713 + 
    3714 +/* Code executed at the beginning of each rule, after zconftext and zconfleng 
    3715 + * have been set up. 
    3716 + */ 
    3717 +#ifndef YY_USER_ACTION 
    3718 +#define YY_USER_ACTION 
    3719 +#endif 
    3720 + 
    3721 +/* Code executed at the end of each rule. */ 
    3722 +#ifndef YY_BREAK 
    3723 +#define YY_BREAK break; 
    3724 +#endif 
    3725 + 
    3726 +#define YY_RULE_SETUP \ 
    3727 +       YY_USER_ACTION 
    3728 + 
    3729 +/** The main scanner function which does all the work. 
    3730 + */ 
    3731 +YY_DECL 
    3732 +{ 
    3733 +       register yy_state_type yy_current_state; 
    3734 +       register char *yy_cp, *yy_bp; 
    3735 +       register int yy_act; 
    3736 + 
    3737 +       int str = 0; 
    3738 +       int ts, i; 
    3739 + 
    3740 +       if ( (yy_init) ) 
    3741 +               { 
    3742 +               (yy_init) = 0; 
    3743 + 
    3744 +#ifdef YY_USER_INIT 
    3745 +               YY_USER_INIT; 
    3746 +#endif 
    3747 + 
    3748 +               if ( ! (yy_start) ) 
    3749 +                       (yy_start) = 1; /* first start state */ 
    3750 + 
    3751 +               if ( ! zconfin ) 
    3752 +                       zconfin = stdin; 
    3753 + 
    3754 +               if ( ! zconfout ) 
    3755 +                       zconfout = stdout; 
    3756 + 
    3757 +               if ( ! YY_CURRENT_BUFFER ) { 
    3758 +                       zconfensure_buffer_stack (); 
    3759 +                       YY_CURRENT_BUFFER_LVALUE = 
    3760 +                               zconf_create_buffer(zconfin,YY_BUF_SIZE ); 
    3761 +               } 
    3762 + 
    3763 +               zconf_load_buffer_state( ); 
    3764 +               } 
    3765 + 
    3766 +       while ( 1 )             /* loops until end-of-file is reached */ 
    3767 +               { 
    3768 +               yy_cp = (yy_c_buf_p); 
    3769 + 
    3770 +               /* Support of zconftext. */ 
    3771 +               *yy_cp = (yy_hold_char); 
    3772 + 
    3773 +               /* yy_bp points to the position in yy_ch_buf of the start of 
    3774 +                * the current run. 
    3775 +                */ 
    3776 +               yy_bp = yy_cp; 
    3777 + 
    3778 +               yy_current_state = (yy_start); 
    3779 +yy_match: 
    3780 +               while ( (yy_current_state = yy_nxt[yy_current_state][ yy_ec[YY_SC_TO_UI(*yy_cp)]  ]) > 0 ) 
    3781 +                       ++yy_cp; 
    3782 + 
    3783 +               yy_current_state = -yy_current_state; 
    3784 + 
    3785 +yy_find_action: 
    3786 +               yy_act = yy_accept[yy_current_state]; 
    3787 + 
    3788 +               YY_DO_BEFORE_ACTION; 
    3789 + 
    3790 +do_action:     /* This label is used only to access EOF actions. */ 
    3791 + 
    3792 +               switch ( yy_act ) 
    3793 +       { /* beginning of action switch */ 
    3794 +case 1: 
    3795 +/* rule 1 can match eol */ 
    3796 +YY_RULE_SETUP 
    3797 +current_file->lineno++; 
    3798 +       YY_BREAK 
    3799 +case 2: 
    3800 +YY_RULE_SETUP 
    3801 + 
    3802 +       YY_BREAK 
    3803 +case 3: 
    3804 +/* rule 3 can match eol */ 
    3805 +YY_RULE_SETUP 
    3806 +current_file->lineno++; return T_EOL; 
    3807 +       YY_BREAK 
    3808 +case 4: 
    3809 +YY_RULE_SETUP 
    3810 +{ 
    3811 +       BEGIN(COMMAND); 
    3812 +} 
    3813 +       YY_BREAK 
    3814 +case 5: 
    3815 +YY_RULE_SETUP 
    3816 +{ 
    3817 +       unput(zconftext[0]); 
    3818 +       BEGIN(COMMAND); 
    3819 +} 
    3820 +       YY_BREAK 
    3821 + 
    3822 +case 6: 
    3823 +YY_RULE_SETUP 
    3824 +BEGIN(PARAM); return T_MAINMENU; 
    3825 +       YY_BREAK 
    3826 +case 7: 
    3827 +YY_RULE_SETUP 
    3828 +BEGIN(PARAM); return T_MENU; 
    3829 +       YY_BREAK 
    3830 +case 8: 
    3831 +YY_RULE_SETUP 
    3832 +BEGIN(PARAM); return T_ENDMENU; 
    3833 +       YY_BREAK 
    3834 +case 9: 
    3835 +YY_RULE_SETUP 
    3836 +BEGIN(PARAM); return T_SOURCE; 
    3837 +       YY_BREAK 
    3838 +case 10: 
    3839 +YY_RULE_SETUP 
    3840 +BEGIN(PARAM); return T_CHOICE; 
    3841 +       YY_BREAK 
    3842 +case 11: 
    3843 +YY_RULE_SETUP 
    3844 +BEGIN(PARAM); return T_ENDCHOICE; 
    3845 +       YY_BREAK 
    3846 +case 12: 
    3847 +YY_RULE_SETUP 
    3848 +BEGIN(PARAM); return T_COMMENT; 
    3849 +       YY_BREAK 
    3850 +case 13: 
    3851 +YY_RULE_SETUP 
    3852 +BEGIN(PARAM); return T_CONFIG; 
    3853 +       YY_BREAK 
    3854 +case 14: 
    3855 +YY_RULE_SETUP 
    3856 +BEGIN(PARAM); return T_MENUCONFIG; 
    3857 +       YY_BREAK 
    3858 +case 15: 
    3859 +YY_RULE_SETUP 
    3860 +BEGIN(PARAM); return T_HELP; 
    3861 +       YY_BREAK 
    3862 +case 16: 
    3863 +YY_RULE_SETUP 
    3864 +BEGIN(PARAM); return T_IF; 
    3865 +       YY_BREAK 
    3866 +case 17: 
    3867 +YY_RULE_SETUP 
    3868 +BEGIN(PARAM); return T_ENDIF; 
    3869 +       YY_BREAK 
    3870 +case 18: 
    3871 +YY_RULE_SETUP 
    3872 +BEGIN(PARAM); return T_DEPENDS; 
    3873 +       YY_BREAK 
    3874 +case 19: 
    3875 +YY_RULE_SETUP 
    3876 +BEGIN(PARAM); return T_REQUIRES; 
    3877 +       YY_BREAK 
    3878 +case 20: 
    3879 +YY_RULE_SETUP 
    3880 +BEGIN(PARAM); return T_OPTIONAL; 
    3881 +       YY_BREAK 
    3882 +case 21: 
    3883 +YY_RULE_SETUP 
    3884 +BEGIN(PARAM); return T_DEFAULT; 
    3885 +       YY_BREAK 
    3886 +case 22: 
    3887 +YY_RULE_SETUP 
    3888 +BEGIN(PARAM); return T_PROMPT; 
    3889 +       YY_BREAK 
    3890 +case 23: 
    3891 +YY_RULE_SETUP 
    3892 +BEGIN(PARAM); return T_TRISTATE; 
    3893 +       YY_BREAK 
    3894 +case 24: 
    3895 +YY_RULE_SETUP 
    3896 +BEGIN(PARAM); return T_DEF_TRISTATE; 
    3897 +       YY_BREAK 
    3898 +case 25: 
    3899 +YY_RULE_SETUP 
    3900 +BEGIN(PARAM); return T_BOOLEAN; 
    3901 +       YY_BREAK 
    3902 +case 26: 
    3903 +YY_RULE_SETUP 
    3904 +BEGIN(PARAM); return T_BOOLEAN; 
    3905 +       YY_BREAK 
    3906 +case 27: 
    3907 +YY_RULE_SETUP 
    3908 +BEGIN(PARAM); return T_DEF_BOOLEAN; 
    3909 +       YY_BREAK 
    3910 +case 28: 
    3911 +YY_RULE_SETUP 
    3912 +BEGIN(PARAM); return T_DEF_BOOLEAN; 
    3913 +       YY_BREAK 
    3914 +case 29: 
    3915 +YY_RULE_SETUP 
    3916 +BEGIN(PARAM); return T_INT; 
    3917 +       YY_BREAK 
    3918 +case 30: 
    3919 +YY_RULE_SETUP 
    3920 +BEGIN(PARAM); return T_HEX; 
    3921 +       YY_BREAK 
    3922 +case 31: 
    3923 +YY_RULE_SETUP 
    3924 +BEGIN(PARAM); return T_STRING; 
    3925 +       YY_BREAK 
    3926 +case 32: 
    3927 +YY_RULE_SETUP 
    3928 +BEGIN(PARAM); return T_SELECT; 
    3929 +       YY_BREAK 
    3930 +case 33: 
    3931 +YY_RULE_SETUP 
    3932 +BEGIN(PARAM); return T_SELECT; 
    3933 +       YY_BREAK 
    3934 +case 34: 
    3935 +YY_RULE_SETUP 
    3936 +BEGIN(PARAM); return T_RANGE; 
    3937 +       YY_BREAK 
    3938 +case 35: 
    3939 +YY_RULE_SETUP 
    3940 +{ 
    3941 +               alloc_string(zconftext, zconfleng); 
    3942 +               zconflval.string = text; 
    3943 +               return T_WORD; 
    3944 +       } 
    3945 +       YY_BREAK 
    3946 +case 36: 
    3947 +YY_RULE_SETUP 
    3948 + 
    3949 +       YY_BREAK 
    3950 +case 37: 
    3951 +/* rule 37 can match eol */ 
    3952 +YY_RULE_SETUP 
    3953 +current_file->lineno++; BEGIN(INITIAL); 
    3954 +       YY_BREAK 
    3955 + 
    3956 +case 38: 
    3957 +YY_RULE_SETUP 
    3958 +return T_AND; 
    3959 +       YY_BREAK 
    3960 +case 39: 
    3961 +YY_RULE_SETUP 
    3962 +return T_OR; 
    3963 +       YY_BREAK 
    3964 +case 40: 
    3965 +YY_RULE_SETUP 
    3966 +return T_OPEN_PAREN; 
    3967 +       YY_BREAK 
    3968 +case 41: 
    3969 +YY_RULE_SETUP 
    3970 +return T_CLOSE_PAREN; 
    3971 +       YY_BREAK 
    3972 +case 42: 
    3973 +YY_RULE_SETUP 
    3974 +return T_NOT; 
    3975 +       YY_BREAK 
    3976 +case 43: 
    3977 +YY_RULE_SETUP 
    3978 +return T_EQUAL; 
    3979 +       YY_BREAK 
    3980 +case 44: 
    3981 +YY_RULE_SETUP 
    3982 +return T_UNEQUAL; 
    3983 +       YY_BREAK 
    3984 +case 45: 
    3985 +YY_RULE_SETUP 
    3986 +return T_IF; 
    3987 +       YY_BREAK 
    3988 +case 46: 
    3989 +YY_RULE_SETUP 
    3990 +return T_ON; 
    3991 +       YY_BREAK 
    3992 +case 47: 
    3993 +YY_RULE_SETUP 
    3994 +{ 
    3995 +               str = zconftext[0]; 
    3996 +               new_string(); 
    3997 +               BEGIN(STRING); 
    3998 +       } 
    3999 +       YY_BREAK 
    4000 +case 48: 
    4001 +/* rule 48 can match eol */ 
    4002 +YY_RULE_SETUP 
    4003 +BEGIN(INITIAL); current_file->lineno++; return T_EOL; 
    4004 +       YY_BREAK 
    4005 +case 49: 
    4006 +YY_RULE_SETUP 
    4007 +/* ignore */ 
    4008 +       YY_BREAK 
    4009 +case 50: 
    4010 +YY_RULE_SETUP 
    4011 +{ 
    4012 +               alloc_string(zconftext, zconfleng); 
    4013 +               zconflval.string = text; 
    4014 +               return T_WORD; 
    4015 +       } 
    4016 +       YY_BREAK 
    4017 +case 51: 
    4018 +YY_RULE_SETUP 
    4019 +/* comment */ 
    4020 +       YY_BREAK 
    4021 +case 52: 
    4022 +/* rule 52 can match eol */ 
    4023 +YY_RULE_SETUP 
    4024 +current_file->lineno++; 
    4025 +       YY_BREAK 
    4026 +case 53: 
    4027 +YY_RULE_SETUP 
    4028 + 
    4029 +       YY_BREAK 
    4030 +case YY_STATE_EOF(PARAM): 
    4031 +{ 
    4032 +               BEGIN(INITIAL); 
    4033 +       } 
    4034 +       YY_BREAK 
    4035 + 
    4036 +case 54: 
    4037 +/* rule 54 can match eol */ 
    4038 +*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */ 
    4039 +(yy_c_buf_p) = yy_cp -= 1; 
    4040 +YY_DO_BEFORE_ACTION; /* set up zconftext again */ 
    4041 +YY_RULE_SETUP 
    4042 +{ 
    4043 +               append_string(zconftext, zconfleng); 
    4044 +               zconflval.string = text; 
    4045 +               return T_WORD_QUOTE; 
    4046 +       } 
    4047 +       YY_BREAK 
    4048 +case 55: 
    4049 +YY_RULE_SETUP 
    4050 +{ 
    4051 +               append_string(zconftext, zconfleng); 
    4052 +       } 
    4053 +       YY_BREAK 
    4054 +case 56: 
    4055 +/* rule 56 can match eol */ 
    4056 +*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */ 
    4057 +(yy_c_buf_p) = yy_cp -= 1; 
    4058 +YY_DO_BEFORE_ACTION; /* set up zconftext again */ 
    4059 +YY_RULE_SETUP 
    4060 +{ 
    4061 +               append_string(zconftext + 1, zconfleng - 1); 
    4062 +               zconflval.string = text; 
    4063 +               return T_WORD_QUOTE; 
    4064 +       } 
    4065 +       YY_BREAK 
    4066 +case 57: 
    4067 +YY_RULE_SETUP 
    4068 +{ 
    4069 +               append_string(zconftext + 1, zconfleng - 1); 
    4070 +       } 
    4071 +       YY_BREAK 
    4072 +case 58: 
    4073 +YY_RULE_SETUP 
    4074 +{ 
    4075 +               if (str == zconftext[0]) { 
    4076 +                       BEGIN(PARAM); 
    4077 +                       zconflval.string = text; 
    4078 +                       return T_WORD_QUOTE; 
    4079 +               } else 
    4080 +                       append_string(zconftext, 1); 
    4081 +       } 
    4082 +       YY_BREAK 
    4083 +case 59: 
    4084 +/* rule 59 can match eol */ 
    4085 +YY_RULE_SETUP 
    4086 +{ 
    4087 +               printf("%s:%d:warning: multi-line strings not supported\n", zconf_curname(), zconf_lineno()); 
    4088 +               current_file->lineno++; 
    4089 +               BEGIN(INITIAL); 
    4090 +               return T_EOL; 
    4091 +       } 
    4092 +       YY_BREAK 
    4093 +case YY_STATE_EOF(STRING): 
    4094 +{ 
    4095 +               BEGIN(INITIAL); 
    4096 +       } 
    4097 +       YY_BREAK 
    4098 + 
    4099 +case 60: 
    4100 +YY_RULE_SETUP 
    4101 +{ 
    4102 +               ts = 0; 
    4103 +               for (i = 0; i < zconfleng; i++) { 
    4104 +                       if (zconftext[i] == '\t') 
    4105 +                               ts = (ts & ~7) + 8; 
    4106 +                       else 
    4107 +                               ts++; 
    4108 +               } 
    4109 +               last_ts = ts; 
    4110 +               if (first_ts) { 
    4111 +                       if (ts < first_ts) { 
    4112 +                               zconf_endhelp(); 
    4113 +                               return T_HELPTEXT; 
    4114 +                       } 
    4115 +                       ts -= first_ts; 
    4116 +                       while (ts > 8) { 
    4117 +                               append_string("        ", 8); 
    4118 +                               ts -= 8; 
    4119 +                       } 
    4120 +                       append_string("        ", ts); 
    4121 +               } 
    4122 +       } 
    4123 +       YY_BREAK 
    4124 +case 61: 
    4125 +/* rule 61 can match eol */ 
    4126 +*yy_cp = (yy_hold_char); /* undo effects of setting up zconftext */ 
    4127 +(yy_c_buf_p) = yy_cp -= 1; 
    4128 +YY_DO_BEFORE_ACTION; /* set up zconftext again */ 
    4129 +YY_RULE_SETUP 
    4130 +{ 
    4131 +               current_file->lineno++; 
    4132 +               zconf_endhelp(); 
    4133 +               return T_HELPTEXT; 
    4134 +       } 
    4135 +       YY_BREAK 
    4136 +case 62: 
    4137 +/* rule 62 can match eol */ 
    4138 +YY_RULE_SETUP 
    4139 +{ 
    4140 +               current_file->lineno++; 
    4141 +               append_string("\n", 1); 
    4142 +       } 
    4143 +       YY_BREAK 
    4144 +case 63: 
    4145 +YY_RULE_SETUP 
    4146 +{ 
    4147 +               append_string(zconftext, zconfleng); 
    4148 +               if (!first_ts) 
    4149 +                       first_ts = last_ts; 
    4150 +       } 
    4151 +       YY_BREAK 
    4152 +case YY_STATE_EOF(HELP): 
    4153 +{ 
    4154 +               zconf_endhelp(); 
    4155 +               return T_HELPTEXT; 
    4156 +       } 
    4157 +       YY_BREAK 
    4158 + 
    4159 +case YY_STATE_EOF(INITIAL): 
    4160 +case YY_STATE_EOF(COMMAND): 
    4161 +{ 
    4162 +       if (current_buf) { 
    4163 +               zconf_endfile(); 
    4164 +               return T_EOF; 
    4165 +       } 
    4166 +       fclose(zconfin); 
    4167 +       yyterminate(); 
    4168 +} 
    4169 +       YY_BREAK 
    4170 +case 64: 
    4171 +YY_RULE_SETUP 
    4172 +YY_FATAL_ERROR( "flex scanner jammed" ); 
    4173 +       YY_BREAK 
    4174 + 
    4175 +       case YY_END_OF_BUFFER: 
    4176 +               { 
    4177 +               /* Amount of text matched not including the EOB char. */ 
    4178 +               int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1; 
    4179 + 
    4180 +               /* Undo the effects of YY_DO_BEFORE_ACTION. */ 
    4181 +               *yy_cp = (yy_hold_char); 
    4182 +               YY_RESTORE_YY_MORE_OFFSET 
    4183 + 
    4184 +               if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW ) 
    4185 +                       { 
    4186 +                       /* We're scanning a new file or input source.  It's 
    4187 +                        * possible that this happened because the user 
    4188 +                        * just pointed zconfin at a new source and called 
    4189 +                        * zconflex().  If so, then we have to assure 
    4190 +                        * consistency between YY_CURRENT_BUFFER and our 
    4191 +                        * globals.  Here is the right place to do so, because 
    4192 +                        * this is the first action (other than possibly a 
    4193 +                        * back-up) that will match for the new input source. 
    4194 +                        */ 
    4195 +                       (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 
    4196 +                       YY_CURRENT_BUFFER_LVALUE->yy_input_file = zconfin; 
    4197 +                       YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL; 
    4198 +                       } 
    4199 + 
    4200 +               /* Note that here we test for yy_c_buf_p "<=" to the position 
    4201 +                * of the first EOB in the buffer, since yy_c_buf_p will 
    4202 +                * already have been incremented past the NUL character 
    4203 +                * (since all states make transitions on EOB to the 
    4204 +                * end-of-buffer state).  Contrast this with the test 
    4205 +                * in input(). 
    4206 +                */ 
    4207 +               if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 
    4208 +                       { /* This was really a NUL. */ 
    4209 +                       yy_state_type yy_next_state; 
    4210 + 
    4211 +                       (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text; 
    4212 + 
    4213 +                       yy_current_state = yy_get_previous_state(  ); 
    4214 + 
    4215 +                       /* Okay, we're now positioned to make the NUL 
    4216 +                        * transition.  We couldn't have 
    4217 +                        * yy_get_previous_state() go ahead and do it 
    4218 +                        * for us because it doesn't know how to deal 
    4219 +                        * with the possibility of jamming (and we don't 
    4220 +                        * want to build jamming into it because then it 
    4221 +                        * will run more slowly). 
    4222 +                        */ 
    4223 + 
    4224 +                       yy_next_state = yy_try_NUL_trans( yy_current_state ); 
    4225 + 
    4226 +                       yy_bp = (yytext_ptr) + YY_MORE_ADJ; 
    4227 + 
    4228 +                       if ( yy_next_state ) 
    4229 +                               { 
    4230 +                               /* Consume the NUL. */ 
    4231 +                               yy_cp = ++(yy_c_buf_p); 
    4232 +                               yy_current_state = yy_next_state; 
    4233 +                               goto yy_match; 
    4234 +                               } 
    4235 + 
    4236 +                       else 
    4237 +                               { 
    4238 +                               yy_cp = (yy_c_buf_p); 
    4239 +                               goto yy_find_action; 
    4240 +                               } 
    4241 +                       } 
    4242 + 
    4243 +               else switch ( yy_get_next_buffer(  ) ) 
    4244 +                       { 
    4245 +                       case EOB_ACT_END_OF_FILE: 
    4246 +                               { 
    4247 +                               (yy_did_buffer_switch_on_eof) = 0; 
    4248 + 
    4249 +                               if ( zconfwrap( ) ) 
    4250 +                                       { 
    4251 +                                       /* Note: because we've taken care in 
    4252 +                                        * yy_get_next_buffer() to have set up 
    4253 +                                        * zconftext, we can now set up 
    4254 +                                        * yy_c_buf_p so that if some total 
    4255 +                                        * hoser (like flex itself) wants to 
    4256 +                                        * call the scanner after we return the 
    4257 +                                        * YY_NULL, it'll still work - another 
    4258 +                                        * YY_NULL will get returned. 
    4259 +                                        */ 
    4260 +                                       (yy_c_buf_p) = (yytext_ptr) + YY_MORE_ADJ; 
    4261 + 
    4262 +                                       yy_act = YY_STATE_EOF(YY_START); 
    4263 +                                       goto do_action; 
    4264 +                                       } 
    4265 + 
    4266 +                               else 
    4267 +                                       { 
    4268 +                                       if ( ! (yy_did_buffer_switch_on_eof) ) 
    4269 +                                               YY_NEW_FILE; 
    4270 +                                       } 
    4271 +                               break; 
    4272 +                               } 
    4273 + 
    4274 +                       case EOB_ACT_CONTINUE_SCAN: 
    4275 +                               (yy_c_buf_p) = 
    4276 +                                       (yytext_ptr) + yy_amount_of_matched_text; 
    4277 + 
    4278 +                               yy_current_state = yy_get_previous_state(  ); 
    4279 + 
    4280 +                               yy_cp = (yy_c_buf_p); 
    4281 +                               yy_bp = (yytext_ptr) + YY_MORE_ADJ; 
    4282 +                               goto yy_match; 
    4283 + 
    4284 +                       case EOB_ACT_LAST_MATCH: 
    4285 +                               (yy_c_buf_p) = 
    4286 +                               &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)]; 
    4287 + 
    4288 +                               yy_current_state = yy_get_previous_state(  ); 
    4289 + 
    4290 +                               yy_cp = (yy_c_buf_p); 
    4291 +                               yy_bp = (yytext_ptr) + YY_MORE_ADJ; 
    4292 +                               goto yy_find_action; 
    4293 +                       } 
    4294 +               break; 
    4295 +               } 
    4296 + 
    4297 +       default: 
    4298 +               YY_FATAL_ERROR( 
    4299 +                       "fatal flex scanner internal error--no action found" ); 
    4300 +       } /* end of action switch */ 
    4301 +               } /* end of scanning one token */ 
    4302 +} /* end of zconflex */ 
    4303 + 
    4304 +/* yy_get_next_buffer - try to read in a new buffer 
    4305 + * 
    4306 + * Returns a code representing an action: 
    4307 + *     EOB_ACT_LAST_MATCH - 
    4308 + *     EOB_ACT_CONTINUE_SCAN - continue scanning from current position 
    4309 + *     EOB_ACT_END_OF_FILE - end of file 
    4310 + */ 
    4311 +static int yy_get_next_buffer (void) 
    4312 +{ 
    4313 +       register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; 
    4314 +       register char *source = (yytext_ptr); 
    4315 +       register int number_to_move, i; 
    4316 +       int ret_val; 
    4317 + 
    4318 +       if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] ) 
    4319 +               YY_FATAL_ERROR( 
    4320 +               "fatal flex scanner internal error--end of buffer missed" ); 
    4321 + 
    4322 +       if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 ) 
    4323 +               { /* Don't try to fill the buffer, so this is an EOF. */ 
    4324 +               if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 ) 
    4325 +                       { 
    4326 +                       /* We matched a single character, the EOB, so 
    4327 +                        * treat this as a final EOF. 
    4328 +                        */ 
    4329 +                       return EOB_ACT_END_OF_FILE; 
    4330 +                       } 
    4331 + 
    4332 +               else 
    4333 +                       { 
    4334 +                       /* We matched some text prior to the EOB, first 
    4335 +                        * process it. 
    4336 +                        */ 
    4337 +                       return EOB_ACT_LAST_MATCH; 
    4338 +                       } 
    4339 +               } 
    4340 + 
    4341 +       /* Try to read more data. */ 
    4342 + 
    4343 +       /* First move last chars to start of buffer. */ 
    4344 +       number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; 
    4345 + 
    4346 +       for ( i = 0; i < number_to_move; ++i ) 
    4347 +               *(dest++) = *(source++); 
    4348 + 
    4349 +       if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING ) 
    4350 +               /* don't do the read, it's not guaranteed to return an EOF, 
    4351 +                * just force an EOF 
    4352 +                */ 
    4353 +               YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0; 
    4354 + 
    4355 +       else 
    4356 +               { 
    4357 +                       size_t num_to_read = 
    4358 +                       YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; 
    4359 + 
    4360 +               while ( num_to_read <= 0 ) 
    4361 +                       { /* Not enough room in the buffer - grow it. */ 
    4362 + 
    4363 +                       /* just a shorter name for the current buffer */ 
    4364 +                       YY_BUFFER_STATE b = YY_CURRENT_BUFFER; 
    4365 + 
    4366 +                       int yy_c_buf_p_offset = 
    4367 +                               (int) ((yy_c_buf_p) - b->yy_ch_buf); 
    4368 + 
    4369 +                       if ( b->yy_is_our_buffer ) 
    4370 +                               { 
    4371 +                               int new_size = b->yy_buf_size * 2; 
    4372 + 
    4373 +                               if ( new_size <= 0 ) 
    4374 +                                       b->yy_buf_size += b->yy_buf_size / 8; 
    4375 +                               else 
    4376 +                                       b->yy_buf_size *= 2; 
    4377 + 
    4378 +                               b->yy_ch_buf = (char *) 
    4379 +                                       /* Include room in for 2 EOB chars. */ 
    4380 +                                       zconfrealloc((void *) b->yy_ch_buf,b->yy_buf_size + 2  ); 
    4381 +                               } 
    4382 +                       else 
    4383 +                               /* Can't grow it, we don't own it. */ 
    4384 +                               b->yy_ch_buf = 0; 
    4385 + 
    4386 +                       if ( ! b->yy_ch_buf ) 
    4387 +                               YY_FATAL_ERROR( 
    4388 +                               "fatal error - scanner input buffer overflow" ); 
    4389 + 
    4390 +                       (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; 
    4391 + 
    4392 +                       num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - 
    4393 +                                               number_to_move - 1; 
    4394 + 
    4395 +                       } 
    4396 + 
    4397 +               if ( num_to_read > YY_READ_BUF_SIZE ) 
    4398 +                       num_to_read = YY_READ_BUF_SIZE; 
    4399 + 
    4400 +               /* Read in more data. */ 
    4401 +               YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]), 
    4402 +                       (yy_n_chars), num_to_read ); 
    4403 + 
    4404 +               YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 
    4405 +               } 
    4406 + 
    4407 +       if ( (yy_n_chars) == 0 ) 
    4408 +               { 
    4409 +               if ( number_to_move == YY_MORE_ADJ ) 
    4410 +                       { 
    4411 +                       ret_val = EOB_ACT_END_OF_FILE; 
    4412 +                       zconfrestart(zconfin  ); 
    4413 +                       } 
    4414 + 
    4415 +               else 
    4416 +                       { 
    4417 +                       ret_val = EOB_ACT_LAST_MATCH; 
    4418 +                       YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = 
    4419 +                               YY_BUFFER_EOF_PENDING; 
    4420 +                       } 
    4421 +               } 
    4422 + 
    4423 +       else 
    4424 +               ret_val = EOB_ACT_CONTINUE_SCAN; 
    4425 + 
    4426 +       (yy_n_chars) += number_to_move; 
    4427 +       YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] = YY_END_OF_BUFFER_CHAR; 
    4428 +       YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] = YY_END_OF_BUFFER_CHAR; 
    4429 + 
    4430 +       (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0]; 
    4431 + 
    4432 +       return ret_val; 
    4433 +} 
    4434 + 
    4435 +/* yy_get_previous_state - get the state just before the EOB char was reached */ 
    4436 + 
    4437 +    static yy_state_type yy_get_previous_state (void) 
    4438 +{ 
    4439 +       register yy_state_type yy_current_state; 
    4440 +       register char *yy_cp; 
    4441 + 
    4442 +       yy_current_state = (yy_start); 
    4443 + 
    4444 +       for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) 
    4445 +               { 
    4446 +               yy_current_state = yy_nxt[yy_current_state][(*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1)]; 
    4447 +               } 
    4448 + 
    4449 +       return yy_current_state; 
    4450 +} 
    4451 + 
    4452 +/* yy_try_NUL_trans - try to make a transition on the NUL character 
    4453 + * 
    4454 + * synopsis 
    4455 + *     next_state = yy_try_NUL_trans( current_state ); 
    4456 + */ 
    4457 +    static yy_state_type yy_try_NUL_trans  (yy_state_type yy_current_state ) 
    4458 +{ 
    4459 +       register int yy_is_jam; 
    4460 + 
    4461 +       yy_current_state = yy_nxt[yy_current_state][1]; 
    4462 +       yy_is_jam = (yy_current_state <= 0); 
    4463 + 
    4464 +       return yy_is_jam ? 0 : yy_current_state; 
    4465 +} 
    4466 + 
    4467 +    static void yyunput (int c, register char * yy_bp ) 
    4468 +{ 
    4469 +       register char *yy_cp; 
    4470 + 
    4471 +    yy_cp = (yy_c_buf_p); 
    4472 + 
    4473 +       /* undo effects of setting up zconftext */ 
    4474 +       *yy_cp = (yy_hold_char); 
    4475 + 
    4476 +       if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 
    4477 +               { /* need to shift things up to make room */ 
    4478 +               /* +2 for EOB chars. */ 
    4479 +               register int number_to_move = (yy_n_chars) + 2; 
    4480 +               register char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ 
    4481 +                                       YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; 
    4482 +               register char *source = 
    4483 +                               &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]; 
    4484 + 
    4485 +               while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) 
    4486 +                       *--dest = *--source; 
    4487 + 
    4488 +               yy_cp += (int) (dest - source); 
    4489 +               yy_bp += (int) (dest - source); 
    4490 +               YY_CURRENT_BUFFER_LVALUE->yy_n_chars = 
    4491 +                       (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; 
    4492 + 
    4493 +               if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) 
    4494 +                       YY_FATAL_ERROR( "flex scanner push-back overflow" ); 
    4495 +               } 
    4496 + 
    4497 +       *--yy_cp = (char) c; 
    4498 + 
    4499 +       (yytext_ptr) = yy_bp; 
    4500 +       (yy_hold_char) = *yy_cp; 
    4501 +       (yy_c_buf_p) = yy_cp; 
    4502 +} 
    4503 + 
    4504 +#ifndef YY_NO_INPUT 
    4505 +#ifdef __cplusplus 
    4506 +    static int yyinput (void) 
    4507 +#else 
    4508 +    static int input  (void) 
    4509 +#endif 
    4510 + 
    4511 +{ 
    4512 +       int c; 
    4513 + 
    4514 +       *(yy_c_buf_p) = (yy_hold_char); 
    4515 + 
    4516 +       if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR ) 
    4517 +               { 
    4518 +               /* yy_c_buf_p now points to the character we want to return. 
    4519 +                * If this occurs *before* the EOB characters, then it's a 
    4520 +                * valid NUL; if not, then we've hit the end of the buffer. 
    4521 +                */ 
    4522 +               if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] ) 
    4523 +                       /* This was really a NUL. */ 
    4524 +                       *(yy_c_buf_p) = '\0'; 
    4525 + 
    4526 +               else 
    4527 +                       { /* need more input */ 
    4528 +                       int offset = (yy_c_buf_p) - (yytext_ptr); 
    4529 +                       ++(yy_c_buf_p); 
    4530 + 
    4531 +                       switch ( yy_get_next_buffer(  ) ) 
    4532 +                               { 
    4533 +                               case EOB_ACT_LAST_MATCH: 
    4534 +                                       /* This happens because yy_g_n_b() 
    4535 +                                        * sees that we've accumulated a 
    4536 +                                        * token and flags that we need to 
    4537 +                                        * try matching the token before 
    4538 +                                        * proceeding.  But for input(), 
    4539 +                                        * there's no matching to consider. 
    4540 +                                        * So convert the EOB_ACT_LAST_MATCH 
    4541 +                                        * to EOB_ACT_END_OF_FILE. 
    4542 +                                        */ 
    4543 + 
    4544 +                                       /* Reset buffer status. */ 
    4545 +                                       zconfrestart(zconfin ); 
    4546 + 
    4547 +                                       /*FALLTHROUGH*/ 
    4548 + 
    4549 +                               case EOB_ACT_END_OF_FILE: 
    4550 +                                       { 
    4551 +                                       if ( zconfwrap( ) ) 
    4552 +                                               return EOF; 
    4553 + 
    4554 +                                       if ( ! (yy_did_buffer_switch_on_eof) ) 
    4555 +                                               YY_NEW_FILE; 
    4556 +#ifdef __cplusplus 
    4557 +                                       return yyinput(); 
    4558 +#else 
    4559 +                                       return input(); 
    4560 +#endif 
    4561 +                                       } 
    4562 + 
    4563 +                               case EOB_ACT_CONTINUE_SCAN: 
    4564 +                                       (yy_c_buf_p) = (yytext_ptr) + offset; 
    4565 +                                       break; 
    4566 +                               } 
    4567 +                       } 
    4568 +               } 
    4569 + 
    4570 +       c = *(unsigned char *) (yy_c_buf_p);    /* cast for 8-bit char's */ 
    4571 +       *(yy_c_buf_p) = '\0';   /* preserve zconftext */ 
    4572 +       (yy_hold_char) = *++(yy_c_buf_p); 
    4573 + 
    4574 +       return c; 
    4575 +} 
    4576 +#endif /* ifndef YY_NO_INPUT */ 
    4577 + 
    4578 +/** Immediately switch to a different input stream. 
    4579 + * @param input_file A readable stream. 
    4580 + * 
    4581 + * @note This function does not reset the start condition to @c INITIAL . 
    4582 + */ 
    4583 +    void zconfrestart  (FILE * input_file ) 
    4584 +{ 
    4585 + 
    4586 +       if ( ! YY_CURRENT_BUFFER ){ 
    4587 +        zconfensure_buffer_stack (); 
    4588 +               YY_CURRENT_BUFFER_LVALUE = 
    4589 +            zconf_create_buffer(zconfin,YY_BUF_SIZE ); 
    4590 +       } 
    4591 + 
    4592 +       zconf_init_buffer(YY_CURRENT_BUFFER,input_file ); 
    4593 +       zconf_load_buffer_state( ); 
    4594 +} 
    4595 + 
    4596 +/** Switch to a different input buffer. 
    4597 + * @param new_buffer The new input buffer. 
    4598 + * 
    4599 + */ 
    4600 +    void zconf_switch_to_buffer  (YY_BUFFER_STATE  new_buffer ) 
    4601 +{ 
    4602 + 
    4603 +       /* TODO. We should be able to replace this entire function body 
    4604 +        * with 
    4605 +        *              zconfpop_buffer_state(); 
    4606 +        *              zconfpush_buffer_state(new_buffer); 
    4607 +     */ 
    4608 +       zconfensure_buffer_stack (); 
    4609 +       if ( YY_CURRENT_BUFFER == new_buffer ) 
    4610 +               return; 
    4611 + 
    4612 +       if ( YY_CURRENT_BUFFER ) 
    4613 +               { 
    4614 +               /* Flush out information for old buffer. */ 
    4615 +               *(yy_c_buf_p) = (yy_hold_char); 
    4616 +               YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 
    4617 +               YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 
    4618 +               } 
    4619 + 
    4620 +       YY_CURRENT_BUFFER_LVALUE = new_buffer; 
    4621 +       zconf_load_buffer_state( ); 
    4622 + 
    4623 +       /* We don't actually know whether we did this switch during 
    4624 +        * EOF (zconfwrap()) processing, but the only time this flag 
    4625 +        * is looked at is after zconfwrap() is called, so it's safe 
    4626 +        * to go ahead and always set it. 
    4627 +        */ 
    4628 +       (yy_did_buffer_switch_on_eof) = 1; 
    4629 +} 
    4630 + 
    4631 +static void zconf_load_buffer_state  (void) 
    4632 +{ 
    4633 +       (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars; 
    4634 +       (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos; 
    4635 +       zconfin = YY_CURRENT_BUFFER_LVALUE->yy_input_file; 
    4636 +       (yy_hold_char) = *(yy_c_buf_p); 
    4637 +} 
    4638 + 
    4639 +/** Allocate and initialize an input buffer state. 
    4640 + * @param file A readable stream. 
    4641 + * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE. 
    4642 + * 
    4643 + * @return the allocated buffer state. 
    4644 + */ 
    4645 +    YY_BUFFER_STATE zconf_create_buffer  (FILE * file, int  size ) 
    4646 +{ 
    4647 +       YY_BUFFER_STATE b; 
    4648 + 
    4649 +       b = (YY_BUFFER_STATE) zconfalloc(sizeof( struct yy_buffer_state )  ); 
    4650 +       if ( ! b ) 
    4651 +               YY_FATAL_ERROR( "out of dynamic memory in zconf_create_buffer()" ); 
    4652 + 
    4653 +       b->yy_buf_size = size; 
    4654 + 
    4655 +       /* yy_ch_buf has to be 2 characters longer than the size given because 
    4656 +        * we need to put in 2 end-of-buffer characters. 
    4657 +        */ 
    4658 +       b->yy_ch_buf = (char *) zconfalloc(b->yy_buf_size + 2  ); 
    4659 +       if ( ! b->yy_ch_buf ) 
    4660 +               YY_FATAL_ERROR( "out of dynamic memory in zconf_create_buffer()" ); 
    4661 + 
    4662 +       b->yy_is_our_buffer = 1; 
    4663 + 
    4664 +       zconf_init_buffer(b,file ); 
    4665 + 
    4666 +       return b; 
    4667 +} 
    4668 + 
    4669 +/** Destroy the buffer. 
    4670 + * @param b a buffer created with zconf_create_buffer() 
    4671 + * 
    4672 + */ 
    4673 +    void zconf_delete_buffer (YY_BUFFER_STATE  b ) 
    4674 +{ 
    4675 + 
    4676 +       if ( ! b ) 
    4677 +               return; 
    4678 + 
    4679 +       if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */ 
    4680 +               YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; 
    4681 + 
    4682 +       if ( b->yy_is_our_buffer ) 
    4683 +               zconffree((void *) b->yy_ch_buf  ); 
    4684 + 
    4685 +       zconffree((void *) b  ); 
    4686 +} 
    4687 + 
    4688 +/* Initializes or reinitializes a buffer. 
    4689 + * This function is sometimes called more than once on the same buffer, 
    4690 + * such as during a zconfrestart() or at EOF. 
    4691 + */ 
    4692 +    static void zconf_init_buffer  (YY_BUFFER_STATE  b, FILE * file ) 
    4693 + 
    4694 +{ 
    4695 +       int oerrno = errno; 
    4696 + 
    4697 +       zconf_flush_buffer(b ); 
    4698 + 
    4699 +       b->yy_input_file = file; 
    4700 +       b->yy_fill_buffer = 1; 
    4701 + 
    4702 +    /* If b is the current buffer, then zconf_init_buffer was _probably_ 
    4703 +     * called from zconfrestart() or through yy_get_next_buffer. 
    4704 +     * In that case, we don't want to reset the lineno or column. 
    4705 +     */ 
    4706 +    if (b != YY_CURRENT_BUFFER){ 
    4707 +        b->yy_bs_lineno = 1; 
    4708 +        b->yy_bs_column = 0; 
    4709 +    } 
    4710 + 
    4711 +        b->yy_is_interactive = 0; 
    4712 + 
    4713 +       errno = oerrno; 
    4714 +} 
    4715 + 
    4716 +/** Discard all buffered characters. On the next scan, YY_INPUT will be called. 
    4717 + * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER. 
    4718 + * 
    4719 + */ 
    4720 +    void zconf_flush_buffer (YY_BUFFER_STATE  b ) 
    4721 +{ 
    4722 +       if ( ! b ) 
    4723 +               return; 
    4724 + 
    4725 +       b->yy_n_chars = 0; 
    4726 + 
    4727 +       /* We always need two end-of-buffer characters.  The first causes 
    4728 +        * a transition to the end-of-buffer state.  The second causes 
    4729 +        * a jam in that state. 
    4730 +        */ 
    4731 +       b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR; 
    4732 +       b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR; 
    4733 + 
    4734 +       b->yy_buf_pos = &b->yy_ch_buf[0]; 
    4735 + 
    4736 +       b->yy_at_bol = 1; 
    4737 +       b->yy_buffer_status = YY_BUFFER_NEW; 
    4738 + 
    4739 +       if ( b == YY_CURRENT_BUFFER ) 
    4740 +               zconf_load_buffer_state( ); 
    4741 +} 
    4742 + 
    4743 +/** Pushes the new state onto the stack. The new state becomes 
    4744 + *  the current state. This function will allocate the stack 
    4745 + *  if necessary. 
    4746 + *  @param new_buffer The new state. 
    4747 + * 
    4748 + */ 
    4749 +void zconfpush_buffer_state (YY_BUFFER_STATE new_buffer ) 
    4750 +{ 
    4751 +       if (new_buffer == NULL) 
    4752 +               return; 
    4753 + 
    4754 +       zconfensure_buffer_stack(); 
    4755 + 
    4756 +       /* This block is copied from zconf_switch_to_buffer. */ 
    4757 +       if ( YY_CURRENT_BUFFER ) 
    4758 +               { 
    4759 +               /* Flush out information for old buffer. */ 
    4760 +               *(yy_c_buf_p) = (yy_hold_char); 
    4761 +               YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p); 
    4762 +               YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars); 
    4763 +               } 
    4764 + 
    4765 +       /* Only push if top exists. Otherwise, replace top. */ 
    4766 +       if (YY_CURRENT_BUFFER) 
    4767 +               (yy_buffer_stack_top)++; 
    4768 +       YY_CURRENT_BUFFER_LVALUE = new_buffer; 
    4769 + 
    4770 +       /* copied from zconf_switch_to_buffer. */ 
    4771 +       zconf_load_buffer_state( ); 
    4772 +       (yy_did_buffer_switch_on_eof) = 1; 
    4773 +} 
    4774 + 
    4775 +/** Removes and deletes the top of the stack, if present. 
    4776 + *  The next element becomes the new top. 
    4777 + * 
    4778 + */ 
    4779 +void zconfpop_buffer_state (void) 
    4780 +{ 
    4781 +       if (!YY_CURRENT_BUFFER) 
    4782 +               return; 
    4783 + 
    4784 +       zconf_delete_buffer(YY_CURRENT_BUFFER ); 
    4785 +       YY_CURRENT_BUFFER_LVALUE = NULL; 
    4786 +       if ((yy_buffer_stack_top) > 0) 
    4787 +               --(yy_buffer_stack_top); 
    4788 + 
    4789 +       if (YY_CURRENT_BUFFER) { 
    4790 +               zconf_load_buffer_state( ); 
    4791 +               (yy_did_buffer_switch_on_eof) = 1; 
    4792 +       } 
    4793 +} 
    4794 + 
    4795 +/* Allocates the stack if it does not exist. 
    4796 + *  Guarantees space for at least one push. 
    4797 + */ 
    4798 +static void zconfensure_buffer_stack (void) 
    4799 +{ 
    4800 +       int num_to_alloc; 
    4801 + 
    4802 +       if (!(yy_buffer_stack)) { 
    4803 + 
    4804 +               /* First allocation is just for 2 elements, since we don't know if this 
    4805 +                * scanner will even need a stack. We use 2 instead of 1 to avoid an 
    4806 +                * immediate realloc on the next call. 
    4807 +         */ 
    4808 +               num_to_alloc = 1; 
    4809 +               (yy_buffer_stack) = (struct yy_buffer_state**)zconfalloc 
    4810 +                                                               (num_to_alloc * sizeof(struct yy_buffer_state*) 
    4811 +                                                               ); 
    4812 + 
    4813 +               memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); 
    4814 + 
    4815 +               (yy_buffer_stack_max) = num_to_alloc; 
    4816 +               (yy_buffer_stack_top) = 0; 
    4817 +               return; 
    4818 +       } 
    4819 + 
    4820 +       if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ 
    4821 + 
    4822 +               /* Increase the buffer to prepare for a possible push. */ 
    4823 +               int grow_size = 8 /* arbitrary grow size */; 
    4824 + 
    4825 +               num_to_alloc = (yy_buffer_stack_max) + grow_size; 
    4826 +               (yy_buffer_stack) = (struct yy_buffer_state**)zconfrealloc 
    4827 +                                                               ((yy_buffer_stack), 
    4828 +                                                               num_to_alloc * sizeof(struct yy_buffer_state*) 
    4829 +                                                               ); 
    4830 + 
    4831 +               /* zero only the new slots.*/ 
    4832 +               memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*)); 
    4833 +               (yy_buffer_stack_max) = num_to_alloc; 
    4834 +       } 
    4835 +} 
    4836 + 
    4837 +/** Setup the input buffer state to scan directly from a user-specified character buffer. 
    4838 + * @param base the character buffer 
    4839 + * @param size the size in bytes of the character buffer 
    4840 + * 
    4841 + * @return the newly allocated buffer state object. 
    4842 + */ 
    4843 +YY_BUFFER_STATE zconf_scan_buffer  (char * base, yy_size_t  size ) 
    4844 +{ 
    4845 +       YY_BUFFER_STATE b; 
    4846 + 
    4847 +       if ( size < 2 || 
    4848 +            base[size-2] != YY_END_OF_BUFFER_CHAR || 
    4849 +            base[size-1] != YY_END_OF_BUFFER_CHAR ) 
    4850 +               /* They forgot to leave room for the EOB's. */ 
    4851 +               return 0; 
    4852 + 
    4853 +       b = (YY_BUFFER_STATE) zconfalloc(sizeof( struct yy_buffer_state )  ); 
    4854 +       if ( ! b ) 
    4855 +               YY_FATAL_ERROR( "out of dynamic memory in zconf_scan_buffer()" ); 
    4856 + 
    4857 +       b->yy_buf_size = size - 2;      /* "- 2" to take care of EOB's */ 
    4858 +       b->yy_buf_pos = b->yy_ch_buf = base; 
    4859 +       b->yy_is_our_buffer = 0; 
    4860 +       b->yy_input_file = 0; 
    4861 +       b->yy_n_chars = b->yy_buf_size; 
    4862 +       b->yy_is_interactive = 0; 
    4863 +       b->yy_at_bol = 1; 
    4864 +       b->yy_fill_buffer = 0; 
    4865 +       b->yy_buffer_status = YY_BUFFER_NEW; 
    4866 + 
    4867 +       zconf_switch_to_buffer(b  ); 
    4868 + 
    4869 +       return b; 
    4870 +} 
    4871 + 
    4872 +/** Setup the input buffer state to scan a string. The next call to zconflex() will 
    4873 + * scan from a @e copy of @a str. 
    4874 + * @param str a NUL-terminated string to scan 
    4875 + * 
    4876 + * @return the newly allocated buffer state object. 
    4877 + * @note If you want to scan bytes that may contain NUL values, then use 
    4878 + *       zconf_scan_bytes() instead. 
    4879 + */ 
    4880 +YY_BUFFER_STATE zconf_scan_string (yyconst char * str ) 
    4881 +{ 
    4882 + 
    4883 +       return zconf_scan_bytes(str,strlen(str) ); 
    4884 +} 
    4885 + 
    4886 +/** Setup the input buffer state to scan the given bytes. The next call to zconflex() will 
    4887 + * scan from a @e copy of @a bytes. 
    4888 + * @param bytes the byte buffer to scan 
    4889 + * @param len the number of bytes in the buffer pointed to by @a bytes. 
    4890 + * 
    4891 + * @return the newly allocated buffer state object. 
    4892 + */ 
    4893 +YY_BUFFER_STATE zconf_scan_bytes  (yyconst char * bytes, int  len ) 
    4894 +{ 
    4895 +       YY_BUFFER_STATE b; 
    4896 +       char *buf; 
    4897 +       yy_size_t n; 
    4898 +       int i; 
    4899 + 
    4900 +       /* Get memory for full buffer, including space for trailing EOB's. */ 
    4901 +       n = len + 2; 
    4902 +       buf = (char *) zconfalloc(n  ); 
    4903 +       if ( ! buf ) 
    4904 +               YY_FATAL_ERROR( "out of dynamic memory in zconf_scan_bytes()" ); 
    4905 + 
    4906 +       for ( i = 0; i < len; ++i ) 
    4907 +               buf[i] = bytes[i]; 
    4908 + 
    4909 +       buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR; 
    4910 + 
    4911 +       b = zconf_scan_buffer(buf,n ); 
    4912 +       if ( ! b ) 
    4913 +               YY_FATAL_ERROR( "bad buffer in zconf_scan_bytes()" ); 
    4914 + 
    4915 +       /* It's okay to grow etc. this buffer, and we should throw it 
    4916 +        * away when we're done. 
    4917 +        */ 
    4918 +       b->yy_is_our_buffer = 1; 
    4919 + 
    4920 +       return b; 
    4921 +} 
    4922 + 
    4923 +#ifndef YY_EXIT_FAILURE 
    4924 +#define YY_EXIT_FAILURE 2 
    4925 +#endif 
    4926 + 
    4927 +static void yy_fatal_error (yyconst char* msg ) 
    4928 +{ 
    4929 +       (void) fprintf( stderr, "%s\n", msg ); 
    4930 +       exit( YY_EXIT_FAILURE ); 
    4931 +} 
    4932 + 
    4933 +/* Redefine yyless() so it works in section 3 code. */ 
    4934 + 
    4935 +#undef yyless 
    4936 +#define yyless(n) \ 
    4937 +       do \ 
    4938 +               { \ 
    4939 +               /* Undo effects of setting up zconftext. */ \ 
    4940 +        int yyless_macro_arg = (n); \ 
    4941 +        YY_LESS_LINENO(yyless_macro_arg);\ 
    4942 +               zconftext[zconfleng] = (yy_hold_char); \ 
    4943 +               (yy_c_buf_p) = zconftext + yyless_macro_arg; \ 
    4944 +               (yy_hold_char) = *(yy_c_buf_p); \ 
    4945 +               *(yy_c_buf_p) = '\0'; \ 
    4946 +               zconfleng = yyless_macro_arg; \ 
    4947 +               } \ 
    4948 +       while ( 0 ) 
    4949 + 
    4950 +/* Accessor  methods (get/set functions) to struct members. */ 
    4951 + 
    4952 +/** Get the current line number. 
    4953 + * 
    4954 + */ 
    4955 +int zconfget_lineno  (void) 
    4956 +{ 
    4957 + 
    4958 +    return zconflineno; 
    4959 +} 
    4960 + 
    4961 +/** Get the input stream. 
    4962 + * 
    4963 + */ 
    4964 +FILE *zconfget_in  (void) 
    4965 +{ 
    4966 +        return zconfin; 
    4967 +} 
    4968 + 
    4969 +/** Get the output stream. 
    4970 + * 
    4971 + */ 
    4972 +FILE *zconfget_out  (void) 
    4973 +{ 
    4974 +        return zconfout; 
    4975 +} 
    4976 + 
    4977 +/** Get the length of the current token. 
    4978 + * 
    4979 + */ 
    4980 +int zconfget_leng  (void) 
    4981 +{ 
    4982 +        return zconfleng; 
    4983 +} 
    4984 + 
    4985 +/** Get the current token. 
    4986 + * 
    4987 + */ 
    4988 + 
    4989 +char *zconfget_text  (void) 
    4990 +{ 
    4991 +        return zconftext; 
    4992 +} 
    4993 + 
    4994 +/** Set the current line number. 
    4995 + * @param line_number 
    4996 + * 
    4997 + */ 
    4998 +void zconfset_lineno (int  line_number ) 
    4999 +{ 
    5000 + 
    5001 +    zconflineno = line_number; 
    5002 +} 
    5003 + 
    5004 +/** Set the input stream. This does not discard the current 
    5005 + * input buffer. 
    5006 + * @param in_str A readable stream. 
    5007 + * 
    5008 + * @see zconf_switch_to_buffer 
    5009 + */ 
    5010 +void zconfset_in (FILE *  in_str ) 
    5011 +{ 
    5012 +        zconfin = in_str ; 
    5013 +} 
    5014 + 
    5015 +void zconfset_out (FILE *  out_str ) 
    5016 +{ 
    5017 +        zconfout = out_str ; 
    5018 +} 
    5019 + 
    5020 +int zconfget_debug  (void) 
    5021 +{ 
    5022 +        return zconf_flex_debug; 
    5023 +} 
    5024 + 
    5025 +void zconfset_debug (int  bdebug ) 
    5026 +{ 
    5027 +        zconf_flex_debug = bdebug ; 
    5028 +} 
    5029 + 
    5030 +/* zconflex_destroy is for both reentrant and non-reentrant scanners. */ 
    5031 +int zconflex_destroy  (void) 
    5032 +{ 
    5033 + 
    5034 +    /* Pop the buffer stack, destroying each element. */ 
    5035 +       while(YY_CURRENT_BUFFER){ 
    5036 +               zconf_delete_buffer(YY_CURRENT_BUFFER  ); 
    5037 +               YY_CURRENT_BUFFER_LVALUE = NULL; 
    5038 +               zconfpop_buffer_state(); 
    5039 +       } 
    5040 + 
    5041 +       /* Destroy the stack itself. */ 
    5042 +       zconffree((yy_buffer_stack) ); 
    5043 +       (yy_buffer_stack) = NULL; 
    5044 + 
    5045 +    return 0; 
    5046 +} 
    5047 + 
    5048 +/* 
    5049 + * Internal utility routines. 
    5050 + */ 
    5051 + 
    5052 +#ifndef yytext_ptr 
    5053 +static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) 
    5054 +{ 
    5055 +       register int i; 
    5056 +       for ( i = 0; i < n; ++i ) 
    5057 +               s1[i] = s2[i]; 
    5058 +} 
    5059 +#endif 
    5060 + 
    5061 +#ifdef YY_NEED_STRLEN 
    5062 +static int yy_flex_strlen (yyconst char * s ) 
    5063 +{ 
    5064 +       register int n; 
    5065 +       for ( n = 0; s[n]; ++n ) 
    5066 +               ; 
    5067 + 
    5068 +       return n; 
    5069 +} 
    5070 +#endif 
    5071 + 
    5072 +void *zconfalloc (yy_size_t  size ) 
    5073 +{ 
    5074 +       return (void *) malloc( size ); 
    5075 +} 
    5076 + 
    5077 +void *zconfrealloc  (void * ptr, yy_size_t  size ) 
    5078 +{ 
    5079 +       /* The cast to (char *) in the following accommodates both 
    5080 +        * implementations that use char* generic pointers, and those 
    5081 +        * that use void* generic pointers.  It works with the latter 
    5082 +        * because both ANSI C and C++ allow castless assignment from 
    5083 +        * any pointer type to void*, and deal with argument conversions 
    5084 +        * as though doing an assignment. 
    5085 +        */ 
    5086 +       return (void *) realloc( (char *) ptr, size ); 
    5087 +} 
    5088 + 
    5089 +void zconffree (void * ptr ) 
    5090 +{ 
    5091 +       free( (char *) ptr );   /* see zconfrealloc() for (char *) cast */ 
    5092 +} 
    5093 + 
    5094 +#define YYTABLES_NAME "yytables" 
    5095 + 
    5096 +#undef YY_NEW_FILE 
    5097 +#undef YY_FLUSH_BUFFER 
    5098 +#undef yy_set_bol 
    5099 +#undef yy_new_buffer 
    5100 +#undef yy_set_interactive 
    5101 +#undef yytext_ptr 
    5102 +#undef YY_DO_BEFORE_ACTION 
    5103 + 
    5104 +#ifdef YY_DECL_IS_OURS 
    5105 +#undef YY_DECL_IS_OURS 
    5106 +#undef YY_DECL 
    5107 +#endif 
    5108 + 
    5109 +void zconf_starthelp(void) 
    5110 +{ 
    5111 +       new_string(); 
    5112 +       last_ts = first_ts = 0; 
    5113 +       BEGIN(HELP); 
    5114 +} 
    5115 + 
    5116 +static void zconf_endhelp(void) 
    5117 +{ 
    5118 +       zconflval.string = text; 
    5119 +       BEGIN(INITIAL); 
    5120 +} 
    5121 + 
    5122 +/* 
    5123 + * Try to open specified file with following names: 
    5124 + * ./name 
    5125 + * $(srctree)/name 
    5126 + * The latter is used when srctree is separate from objtree 
    5127 + * when compiling the kernel. 
    5128 + * Return NULL if file is not found. 
    5129 + */ 
    5130 +FILE *zconf_fopen(const char *name) 
    5131 +{ 
    5132 +       char *env, fullname[PATH_MAX+1]; 
    5133 +       FILE *f; 
    5134 + 
    5135 +       f = fopen(name, "r"); 
    5136 +       if (!f && name[0] != '/') { 
    5137 +               env = getenv(SRCTREE); 
    5138 +               if (env) { 
    5139 +                       sprintf(fullname, "%s/%s", env, name); 
    5140 +                       f = fopen(fullname, "r"); 
    5141 +               } 
    5142 +       } 
    5143 +       return f; 
    5144 +} 
    5145 + 
    5146 +void zconf_initscan(const char *name) 
    5147 +{ 
    5148 +       zconfin = zconf_fopen(name); 
    5149 +       if (!zconfin) { 
    5150 +               printf("can't find file %s\n", name); 
    5151 +               exit(1); 
    5152 +       } 
    5153 + 
    5154 +       current_buf = malloc(sizeof(*current_buf)); 
    5155 +       memset(current_buf, 0, sizeof(*current_buf)); 
    5156 + 
    5157 +       current_file = file_lookup(name); 
    5158 +       current_file->lineno = 1; 
    5159 +       current_file->flags = FILE_BUSY; 
    5160 +} 
    5161 + 
    5162 +void zconf_nextfile(const char *name) 
    5163 +{ 
    5164 +       struct file *file = file_lookup(name); 
    5165 +       struct buffer *buf = malloc(sizeof(*buf)); 
    5166 +       memset(buf, 0, sizeof(*buf)); 
    5167 + 
    5168 +       current_buf->state = YY_CURRENT_BUFFER; 
    5169 +       zconfin = zconf_fopen(name); 
    5170 +       if (!zconfin) { 
    5171 +               printf("%s:%d: can't open file \"%s\"\n", zconf_curname(), zconf_lineno(), name); 
    5172 +               exit(1); 
    5173 +       } 
    5174 +       zconf_switch_to_buffer(zconf_create_buffer(zconfin,YY_BUF_SIZE)); 
    5175 +       buf->parent = current_buf; 
    5176 +       current_buf = buf; 
    5177 + 
    5178 +       if (file->flags & FILE_BUSY) { 
    5179 +               printf("recursive scan (%s)?\n", name); 
    5180 +               exit(1); 
    5181 +       } 
    5182 +       if (file->flags & FILE_SCANNED) { 
    5183 +               printf("file %s already scanned?\n", name); 
    5184 +               exit(1); 
    5185 +       } 
    5186 +       file->flags |= FILE_BUSY; 
    5187 +       file->lineno = 1; 
    5188 +       file->parent = current_file; 
    5189 +       current_file = file; 
    5190 +} 
    5191 + 
    5192 +static struct buffer *zconf_endfile(void) 
    5193 +{ 
    5194 +       struct buffer *parent; 
    5195 + 
    5196 +       current_file->flags |= FILE_SCANNED; 
    5197 +       current_file->flags &= ~FILE_BUSY; 
    5198 +       current_file = current_file->parent; 
    5199 + 
    5200 +       parent = current_buf->parent; 
    5201 +       if (parent) { 
    5202 +               fclose(zconfin); 
    5203 +               zconf_delete_buffer(YY_CURRENT_BUFFER); 
    5204 +               zconf_switch_to_buffer(parent->state); 
    5205 +       } 
    5206 +       free(current_buf); 
    5207 +       current_buf = parent; 
    5208 + 
    5209 +       return parent; 
    5210 +} 
    5211 + 
    5212 +int zconf_lineno(void) 
    5213 +{ 
    5214 +       if (current_buf) 
    5215 +               return current_file->lineno - 1; 
    5216 +       else 
    5217 +               return 0; 
    5218 +} 
    5219 + 
    5220 +char *zconf_curname(void) 
    5221 +{ 
    5222 +       if (current_buf) 
    5223 +               return current_file->name; 
    5224 +       else 
    5225 +               return "<none>"; 
    5226 +} 
    5227 + 
    5228 diff -urN busybox-1.1.0/scripts/config/lkc_defs.h busybox-1.1.0-cryptpw/scripts/config/lkc_defs.h 
    5229 --- busybox-1.1.0/scripts/config/lkc_defs.h     1969-12-31 17:00:00.000000000 -0700 
    5230 +++ busybox-1.1.0-cryptpw/scripts/config/lkc_defs.h     2006-01-18 14:40:36.000000000 -0700 
    5231 @@ -0,0 +1,40 @@ 
    5232 + 
    5233 +/* confdata.c */ 
    5234 +#define conf_parse (*conf_parse_p) 
    5235 +#define conf_read (*conf_read_p) 
    5236 +#define conf_write (*conf_write_p) 
    5237 + 
    5238 +/* menu.c */ 
    5239 +#define rootmenu (*rootmenu_p) 
    5240 + 
    5241 +#define menu_is_visible (*menu_is_visible_p) 
    5242 +#define menu_get_prompt (*menu_get_prompt_p) 
    5243 +#define menu_get_root_menu (*menu_get_root_menu_p) 
    5244 +#define menu_get_parent_menu (*menu_get_parent_menu_p) 
    5245 + 
    5246 +/* symbol.c */ 
    5247 +#define symbol_hash (*symbol_hash_p) 
    5248 +#define sym_change_count (*sym_change_count_p) 
    5249 + 
    5250 +#define sym_lookup (*sym_lookup_p) 
    5251 +#define sym_find (*sym_find_p) 
    5252 +#define sym_re_search (*sym_re_search_p) 
    5253 +#define sym_type_name (*sym_type_name_p) 
    5254 +#define sym_calc_value (*sym_calc_value_p) 
    5255 +#define sym_get_type (*sym_get_type_p) 
    5256 +#define sym_tristate_within_range (*sym_tristate_within_range_p) 
    5257 +#define sym_set_tristate_value (*sym_set_tristate_value_p) 
    5258 +#define sym_toggle_tristate_value (*sym_toggle_tristate_value_p) 
    5259 +#define sym_string_valid (*sym_string_valid_p) 
    5260 +#define sym_string_within_range (*sym_string_within_range_p) 
    5261 +#define sym_set_string_value (*sym_set_string_value_p) 
    5262 +#define sym_is_changable (*sym_is_changable_p) 
    5263 +#define sym_get_choice_prop (*sym_get_choice_prop_p) 
    5264 +#define sym_get_default_prop (*sym_get_default_prop_p) 
    5265 +#define sym_get_string_value (*sym_get_string_value_p) 
    5266 + 
    5267 +#define prop_get_type_name (*prop_get_type_name_p) 
    5268 + 
    5269 +/* expr.c */ 
    5270 +#define expr_compare_type (*expr_compare_type_p) 
    5271 +#define expr_print (*expr_print_p) 
    5272 diff -urN busybox-1.1.0/scripts/config/zconf.tab.c busybox-1.1.0-cryptpw/scripts/config/zconf.tab.c 
    5273 --- busybox-1.1.0/scripts/config/zconf.tab.c    1969-12-31 17:00:00.000000000 -0700 
    5274 +++ busybox-1.1.0-cryptpw/scripts/config/zconf.tab.c    2006-01-18 14:40:37.000000000 -0700 
    5275 @@ -0,0 +1,2130 @@ 
    5276 +/* A Bison parser, made by GNU Bison 1.875a.  */ 
    5277 + 
    5278 +/* Skeleton parser for Yacc-like parsing with Bison, 
    5279 +   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. 
    5280 + 
    5281 +   This program is free software; you can redistribute it and/or modify 
    5282 +   it under the terms of the GNU General Public License as published by 
    5283 +   the Free Software Foundation; either version 2, or (at your option) 
    5284 +   any later version. 
    5285 + 
    5286 +   This program is distributed in the hope that it will be useful, 
    5287 +   but WITHOUT ANY WARRANTY; without even the implied warranty of 
    5288 +   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
    5289 +   GNU General Public License for more details. 
    5290 + 
    5291 +   You should have received a copy of the GNU General Public License 
    5292 +   along with this program; if not, write to the Free Software 
    5293 +   Foundation, Inc., 59 Temple Place - Suite 330, 
    5294 +   Boston, MA 02111-1307, USA.  */ 
    5295 + 
    5296 +/* As a special exception, when this file is copied by Bison into a 
    5297 +   Bison output file, you may use that output file without restriction. 
    5298 +   This special exception was added by the Free Software Foundation 
    5299 +   in version 1.24 of Bison.  */ 
    5300 + 
    5301 +/* Written by Richard Stallman by simplifying the original so called 
    5302 +   ``semantic'' parser.  */ 
    5303 + 
    5304 +/* All symbols defined below should begin with yy or YY, to avoid 
    5305 +   infringing on user name space.  This should be done even for local 
    5306 +   variables, as they might otherwise be expanded by user macros. 
    5307 +   There are some unavoidable exceptions within include files to 
    5308 +   define necessary library symbols; they are noted "INFRINGES ON 
    5309 +   USER NAME SPACE" below.  */ 
    5310 + 
    5311 +/* Identify Bison output.  */ 
    5312 +#define YYBISON 1 
    5313 + 
    5314 +/* Skeleton name.  */ 
    5315 +#define YYSKELETON_NAME "yacc.c" 
    5316 + 
    5317 +/* Pure parsers.  */ 
    5318 +#define YYPURE 0 
    5319 + 
    5320 +/* Using locations.  */ 
    5321 +#define YYLSP_NEEDED 0 
    5322 + 
    5323 +/* If NAME_PREFIX is specified substitute the variables and functions 
    5324 +   names.  */ 
    5325 +#define yyparse zconfparse 
    5326 +#define yylex   zconflex 
    5327 +#define yyerror zconferror 
    5328 +#define yylval  zconflval 
    5329 +#define yychar  zconfchar 
    5330 +#define yydebug zconfdebug 
    5331 +#define yynerrs zconfnerrs 
    5332 + 
    5333 + 
    5334 +/* Tokens.  */ 
    5335 +#ifndef YYTOKENTYPE 
    5336 +# define YYTOKENTYPE 
    5337 +   /* Put the tokens into the symbol table, so that GDB and other debuggers 
    5338 +      know about them.  */ 
    5339 +   enum yytokentype { 
    5340 +     T_MAINMENU = 258, 
    5341 +     T_MENU = 259, 
    5342 +     T_ENDMENU = 260, 
    5343 +     T_SOURCE = 261, 
    5344 +     T_CHOICE = 262, 
    5345 +     T_ENDCHOICE = 263, 
    5346 +     T_COMMENT = 264, 
    5347 +     T_CONFIG = 265, 
    5348 +     T_MENUCONFIG = 266, 
    5349 +     T_HELP = 267, 
    5350 +     T_HELPTEXT = 268, 
    5351 +     T_IF = 269, 
    5352 +     T_ENDIF = 270, 
    5353 +     T_DEPENDS = 271, 
    5354 +     T_REQUIRES = 272, 
    5355 +     T_OPTIONAL = 273, 
    5356 +     T_PROMPT = 274, 
    5357 +     T_DEFAULT = 275, 
    5358 +     T_TRISTATE = 276, 
    5359 +     T_DEF_TRISTATE = 277, 
    5360 +     T_BOOLEAN = 278, 
    5361 +     T_DEF_BOOLEAN = 279, 
    5362 +     T_STRING = 280, 
    5363 +     T_INT = 281, 
    5364 +     T_HEX = 282, 
    5365 +     T_WORD = 283, 
    5366 +     T_WORD_QUOTE = 284, 
    5367 +     T_UNEQUAL = 285, 
    5368 +     T_EOF = 286, 
    5369 +     T_EOL = 287, 
    5370 +     T_CLOSE_PAREN = 288, 
    5371 +     T_OPEN_PAREN = 289, 
    5372 +     T_ON = 290, 
    5373 +     T_SELECT = 291, 
    5374 +     T_RANGE = 292, 
    5375 +     T_OR = 293, 
    5376 +     T_AND = 294, 
    5377 +     T_EQUAL = 295, 
    5378 +     T_NOT = 296 
    5379 +   }; 
    5380 +#endif 
    5381 +#define T_MAINMENU 258 
    5382 +#define T_MENU 259 
    5383 +#define T_ENDMENU 260 
    5384 +#define T_SOURCE 261 
    5385 +#define T_CHOICE 262 
    5386 +#define T_ENDCHOICE 263 
    5387 +#define T_COMMENT 264 
    5388 +#define T_CONFIG 265 
    5389 +#define T_MENUCONFIG 266 
    5390 +#define T_HELP 267 
    5391 +#define T_HELPTEXT 268 
    5392 +#define T_IF 269 
    5393 +#define T_ENDIF 270 
    5394 +#define T_DEPENDS 271 
    5395 +#define T_REQUIRES 272 
    5396 +#define T_OPTIONAL 273 
    5397 +#define T_PROMPT 274 
    5398 +#define T_DEFAULT 275 
    5399 +#define T_TRISTATE 276 
    5400 +#define T_DEF_TRISTATE 277 
    5401 +#define T_BOOLEAN 278 
    5402 +#define T_DEF_BOOLEAN 279 
    5403 +#define T_STRING 280 
    5404 +#define T_INT 281 
    5405 +#define T_HEX 282 
    5406 +#define T_WORD 283 
    5407 +#define T_WORD_QUOTE 284 
    5408 +#define T_UNEQUAL 285 
    5409 +#define T_EOF 286 
    5410 +#define T_EOL 287 
    5411 +#define T_CLOSE_PAREN 288 
    5412 +#define T_OPEN_PAREN 289 
    5413 +#define T_ON 290 
    5414 +#define T_SELECT 291 
    5415 +#define T_RANGE 292 
    5416 +#define T_OR 293 
    5417 +#define T_AND 294 
    5418 +#define T_EQUAL 295 
    5419 +#define T_NOT 296 
    5420 + 
    5421 + 
    5422 + 
    5423 + 
    5424 +/* Copy the first part of user declarations.  */ 
    5425 + 
    5426 + 
    5427 +/* 
    5428 + * Copyright (C) 2002 Roman Zippel <zippel@linux-m68k.org> 
    5429 + * Released under the terms of the GNU GPL v2.0. 
    5430 + */ 
    5431 + 
    5432 +#include <ctype.h> 
    5433 +#include <stdarg.h> 
    5434 +#include <stdio.h> 
    5435 +#include <stdlib.h> 
    5436 +#include <string.h> 
    5437 +#include <stdbool.h> 
    5438 + 
    5439 +#define printd(mask, fmt...) if (cdebug & (mask)) printf(fmt) 
    5440 + 
    5441 +#define PRINTD         0x0001 
    5442 +#define DEBUG_PARSE    0x0002 
    5443 + 
    5444 +int cdebug = PRINTD; 
    5445 + 
    5446 +extern int zconflex(void); 
    5447 +static void zconfprint(const char *err, ...); 
    5448 +static void zconferror(const char *err); 
    5449 +static bool zconf_endtoken(int token, int starttoken, int endtoken); 
    5450 + 
    5451 +struct symbol *symbol_hash[257]; 
    5452 + 
    5453 +static struct menu *current_menu, *current_entry; 
    5454 + 
    5455 +#define YYERROR_VERBOSE 
    5456 + 
    5457 + 
    5458 +/* Enabling traces.  */ 
    5459 +#ifndef YYDEBUG 
    5460 +# define YYDEBUG 0 
    5461 +#endif 
    5462 + 
    5463 +/* Enabling verbose error messages.  */ 
    5464 +#ifdef YYERROR_VERBOSE 
    5465 +# undef YYERROR_VERBOSE 
    5466 +# define YYERROR_VERBOSE 1 
    5467 +#else 
    5468 +# define YYERROR_VERBOSE 0 
    5469 +#endif 
    5470 + 
    5471 +#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) 
    5472 + 
    5473 +typedef union YYSTYPE { 
    5474 +       int token; 
    5475 +       char *string; 
    5476 +       struct symbol *symbol; 
    5477 +       struct expr *expr; 
    5478 +       struct menu *menu; 
    5479 +} YYSTYPE; 
    5480 +/* Line 191 of yacc.c.  */ 
    5481 + 
    5482 +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ 
    5483 +# define YYSTYPE_IS_DECLARED 1 
    5484 +# define YYSTYPE_IS_TRIVIAL 1 
    5485 +#endif 
    5486 + 
    5487 + 
    5488 + 
    5489 +/* Copy the second part of user declarations.  */ 
    5490 + 
    5491 + 
    5492 +#define LKC_DIRECT_LINK 
    5493 +#include "lkc.h" 
    5494 + 
    5495 + 
    5496 +/* Line 214 of yacc.c.  */ 
    5497 + 
    5498 + 
    5499 +#if ! defined (yyoverflow) || YYERROR_VERBOSE 
    5500 + 
    5501 +/* The parser invokes alloca or malloc; define the necessary symbols.  */ 
    5502 + 
    5503 +# if YYSTACK_USE_ALLOCA 
    5504 +#  define YYSTACK_ALLOC alloca 
    5505 +# else 
    5506 +#  ifndef YYSTACK_USE_ALLOCA 
    5507 +#   if defined (alloca) || (defined (_ALLOCA_H) && defined (__GNUC__)) 
    5508 +#    define YYSTACK_ALLOC alloca 
    5509 +#   else 
    5510 +#    ifdef __GNUC__ 
    5511 +#     define YYSTACK_ALLOC __builtin_alloca 
    5512 +#    endif 
    5513 +#   endif 
    5514 +#  endif 
    5515 +# endif 
    5516 + 
    5517 +# ifdef YYSTACK_ALLOC 
    5518 +   /* Pacify GCC's `empty if-body' warning. */ 
    5519 +#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) 
    5520 +# else 
    5521 +#  if defined (__STDC__) || defined (__cplusplus) 
    5522 +#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ 
    5523 +#   define YYSIZE_T size_t 
    5524 +#  endif 
    5525 +#  define YYSTACK_ALLOC malloc 
    5526 +#  define YYSTACK_FREE free 
    5527 +# endif 
    5528 +#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */ 
    5529 + 
    5530 + 
    5531 +#if (! defined (yyoverflow) \ 
    5532 +     && (! defined (__cplusplus) \ 
    5533 +        || (YYSTYPE_IS_TRIVIAL))) 
    5534 + 
    5535 +/* A type that is properly aligned for any stack member.  */ 
    5536 +union yyalloc 
    5537 +{ 
    5538 +  short yyss; 
    5539 +  YYSTYPE yyvs; 
    5540 +  }; 
    5541 + 
    5542 +/* The size of the maximum gap between one aligned stack and the next.  */ 
    5543 +# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) 
    5544 + 
    5545 +/* The size of an array large to enough to hold all stacks, each with 
    5546 +   N elements.  */ 
    5547 +# define YYSTACK_BYTES(N) \ 
    5548 +     ((N) * (sizeof (short) + sizeof (YYSTYPE))                                \ 
    5549 +      + YYSTACK_GAP_MAXIMUM) 
    5550 + 
    5551 +/* Copy COUNT objects from FROM to TO.  The source and destination do 
    5552 +   not overlap.  */ 
    5553 +# ifndef YYCOPY 
    5554 +#  if 1 < __GNUC__ 
    5555 +#   define YYCOPY(To, From, Count) \ 
    5556 +      __builtin_memcpy (To, From, (Count) * sizeof (*(From))) 
    5557 +#  else 
    5558 +#   define YYCOPY(To, From, Count)             \ 
    5559 +      do                                       \ 
    5560 +       {                                       \ 
    5561 +         register YYSIZE_T yyi;                \ 
    5562 +         for (yyi = 0; yyi < (Count); yyi++)   \ 
    5563 +           (To)[yyi] = (From)[yyi];            \ 
    5564 +       }                                       \ 
    5565 +      while (0) 
    5566 +#  endif 
    5567 +# endif 
    5568 + 
    5569 +/* Relocate STACK from its old location to the new one.  The 
    5570 +   local variables YYSIZE and YYSTACKSIZE give the old and new number of 
    5571 +   elements in the stack, and YYPTR gives the new location of the 
    5572 +   stack.  Advance YYPTR to a properly aligned location for the next 
    5573 +   stack.  */ 
    5574 +# define YYSTACK_RELOCATE(Stack)                                       \ 
    5575 +    do                                                                 \ 
    5576 +      {                                                                        \ 
    5577 +       YYSIZE_T yynewbytes;                                            \ 
    5578 +       YYCOPY (&yyptr->Stack, Stack, yysize);                          \ 
    5579 +       Stack = &yyptr->Stack;                                          \ 
    5580 +       yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ 
    5581 +       yyptr += yynewbytes / sizeof (*yyptr);                          \ 
    5582 +      }                                                                        \ 
    5583 +    while (0) 
    5584 + 
    5585 +#endif 
    5586 + 
    5587 +#if defined (__STDC__) || defined (__cplusplus) 
    5588 +   typedef signed char yysigned_char; 
    5589 +#else 
    5590 +   typedef short yysigned_char; 
    5591 +#endif 
    5592 + 
    5593 +/* YYFINAL -- State number of the termination state. */ 
    5594 +#define YYFINAL  2 
    5595 +/* YYLAST -- Last index in YYTABLE.  */ 
    5596 +#define YYLAST   201 
    5597 + 
    5598 +/* YYNTOKENS -- Number of terminals. */ 
    5599 +#define YYNTOKENS  42 
    5600 +/* YYNNTS -- Number of nonterminals. */ 
    5601 +#define YYNNTS  41 
    5602 +/* YYNRULES -- Number of rules. */ 
    5603 +#define YYNRULES  104 
    5604 +/* YYNRULES -- Number of states. */ 
    5605 +#define YYNSTATES  182 
    5606 + 
    5607 +/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */ 
    5608 +#define YYUNDEFTOK  2 
    5609 +#define YYMAXUTOK   296 
    5610 + 
    5611 +#define YYTRANSLATE(YYX)                                               \ 
    5612 +  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) 
    5613 + 
    5614 +/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */ 
    5615 +static const unsigned char yytranslate[] = 
    5616 +{ 
    5617 +       0,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5618 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5619 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5620 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5621 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5622 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5623 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5624 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5625 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5626 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5627 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5628 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5629 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5630 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5631 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5632 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5633 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5634 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5635 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5636 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5637 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5638 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5639 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5640 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5641 +       2,     2,     2,     2,     2,     2,     2,     2,     2,     2, 
    5642 +       2,     2,     2,     2,     2,     2,     1,     2,     3,     4, 
    5643 +       5,     6,     7,     8,     9,    10,    11,    12,    13,    14, 
    5644 +      15,    16,    17,    18,    19,    20,    21,    22,    23,    24, 
    5645 +      25,    26,    27,    28,    29,    30,    31,    32,    33,    34, 
    5646 +      35,    36,    37,    38,    39,    40,    41 
    5647 +}; 
    5648 + 
    5649 +#if YYDEBUG 
    5650 +/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in 
    5651 +   YYRHS.  */ 
    5652 +static const unsigned short yyprhs[] = 
    5653 +{ 
    5654 +       0,     0,     3,     4,     7,     9,    11,    13,    17,    19, 
    5655 +      21,    23,    26,    28,    30,    32,    34,    36,    38,    42, 
    5656 +      45,    49,    52,    53,    56,    59,    62,    65,    69,    74, 
    5657 +      78,    83,    87,    91,    95,   100,   105,   110,   116,   119, 
    5658 +     122,   124,   128,   131,   132,   135,   138,   141,   144,   149, 
    5659 +     153,   157,   160,   165,   166,   169,   173,   175,   179,   182, 
    5660 +     183,   186,   189,   192,   196,   199,   201,   205,   208,   209, 
    5661 +     212,   215,   218,   222,   226,   228,   232,   235,   238,   241, 
    5662 +     242,   245,   248,   253,   257,   261,   262,   265,   267,   269, 
    5663 +     272,   275,   278,   280,   282,   283,   286,   288,   292,   296, 
    5664 +     300,   303,   307,   311,   313 
    5665 +}; 
    5666 + 
    5667 +/* YYRHS -- A `-1'-separated list of the rules' RHS. */ 
    5668 +static const yysigned_char yyrhs[] = 
    5669 +{ 
    5670 +      43,     0,    -1,    -1,    43,    44,    -1,    45,    -1,    55, 
    5671 +      -1,    66,    -1,     3,    77,    79,    -1,     5,    -1,    15, 
    5672 +      -1,     8,    -1,     1,    79,    -1,    61,    -1,    71,    -1, 
    5673 +      47,    -1,    49,    -1,    69,    -1,    79,    -1,    10,    28, 
    5674 +      32,    -1,    46,    50,    -1,    11,    28,    32,    -1,    48, 
    5675 +      50,    -1,    -1,    50,    51,    -1,    50,    75,    -1,    50, 
    5676 +      73,    -1,    50,    32,    -1,    21,    76,    32,    -1,    22, 
    5677 +      81,    80,    32,    -1,    23,    76,    32,    -1,    24,    81, 
    5678 +      80,    32,    -1,    26,    76,    32,    -1,    27,    76,    32, 
    5679 +      -1,    25,    76,    32,    -1,    19,    77,    80,    32,    -1, 
    5680 +      20,    81,    80,    32,    -1,    36,    28,    80,    32,    -1, 
    5681 +      37,    82,    82,    80,    32,    -1,     7,    32,    -1,    52, 
    5682 +      56,    -1,    78,    -1,    53,    58,    54,    -1,    53,    58, 
    5683 +      -1,    -1,    56,    57,    -1,    56,    75,    -1,    56,    73, 
    5684 +      -1,    56,    32,    -1,    19,    77,    80,    32,    -1,    21, 
    5685 +      76,    32,    -1,    23,    76,    32,    -1,    18,    32,    -1, 
    5686 +      20,    28,    80,    32,    -1,    -1,    58,    45,    -1,    14, 
    5687 +      81,    32,    -1,    78,    -1,    59,    62,    60,    -1,    59, 
    5688 +      62,    -1,    -1,    62,    45,    -1,    62,    66,    -1,    62, 
    5689 +      55,    -1,     4,    77,    32,    -1,    63,    74,    -1,    78, 
    5690 +      -1,    64,    67,    65,    -1,    64,    67,    -1,    -1,    67, 
    5691 +      45,    -1,    67,    66,    -1,    67,    55,    -1,    67,     1, 
    5692 +      32,    -1,     6,    77,    32,    -1,    68,    -1,     9,    77, 
    5693 +      32,    -1,    70,    74,    -1,    12,    32,    -1,    72,    13, 
    5694 +      -1,    -1,    74,    75,    -1,    74,    32,    -1,    16,    35, 
    5695 +      81,    32,    -1,    16,    81,    32,    -1,    17,    81,    32, 
    5696 +      -1,    -1,    77,    80,    -1,    28,    -1,    29,    -1,     5, 
    5697 +      79,    -1,     8,    79,    -1,    15,    79,    -1,    32,    -1, 
    5698 +      31,    -1,    -1,    14,    81,    -1,    82,    -1,    82,    40, 
    5699 +      82,    -1,    82,    30,    82,    -1,    34,    81,    33,    -1, 
    5700 +      41,    81,    -1,    81,    38,    81,    -1,    81,    39,    81, 
    5701 +      -1,    28,    -1,    29,    -1 
    5702 +}; 
    5703 + 
    5704 +/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */ 
    5705 +static const unsigned short yyrline[] = 
    5706 +{ 
    5707 +       0,    94,    94,    95,    98,    99,   100,   101,   102,   103, 
    5708 +     104,   105,   109,   110,   111,   112,   113,   114,   120,   128, 
    5709 +     134,   142,   152,   154,   155,   156,   157,   160,   166,   173, 
    5710 +     179,   186,   192,   198,   204,   210,   216,   222,   230,   239, 
    5711 +     245,   254,   255,   261,   263,   264,   265,   266,   269,   275, 
    5712 +     281,   287,   293,   299,   301,   306,   315,   324,   325,   331, 
    5713 +     333,   334,   335,   340,   347,   353,   362,   363,   369,   371, 
    5714 +     372,   373,   374,   377,   383,   390,   397,   404,   410,   417, 
    5715 +     418,   419,   422,   427,   432,   440,   442,   447,   448,   451, 
    5716 +     452,   453,   457,   457,   459,   460,   463,   464,   465,   466, 
    5717 +     467,   468,   469,   472,   473 
    5718 +}; 
    5719 +#endif 
    5720 + 
    5721 +#if YYDEBUG || YYERROR_VERBOSE 
    5722 +/* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. 
    5723 +   First, the terminals, then, starting at YYNTOKENS, nonterminals. */ 
    5724 +static const char *const yytname[] = 
    5725 +{ 
    5726 +  "$end", "error", "$undefined", "T_MAINMENU", "T_MENU", "T_ENDMENU", 
    5727 +  "T_SOURCE", "T_CHOICE", "T_ENDCHOICE", "T_COMMENT", "T_CONFIG", 
    5728 +  "T_MENUCONFIG", "T_HELP", "T_HELPTEXT", "T_IF", "T_ENDIF", "T_DEPENDS", 
    5729 +  "T_REQUIRES", "T_OPTIONAL", "T_PROMPT", "T_DEFAULT", "T_TRISTATE", 
    5730 +  "T_DEF_TRISTATE", "T_BOOLEAN", "T_DEF_BOOLEAN", "T_STRING", "T_INT", 
    5731 +  "T_HEX", "T_WORD", "T_WORD_QUOTE", "T_UNEQUAL", "T_EOF", "T_EOL", 
    5732 +  "T_CLOSE_PAREN", "T_OPEN_PAREN", "T_ON", "T_SELECT", "T_RANGE", "T_OR", 
    5733 +  "T_AND", "T_EQUAL", "T_NOT", "$accept", "input", "block", 
    5734 +  "common_block", "config_entry_start", "config_stmt", 
    5735 +  "menuconfig_entry_start", "menuconfig_stmt", "config_option_list", 
    5736 +  "config_option", "choice", "choice_entry", "choice_end", "choice_stmt", 
    5737 +  "choice_option_list", "choice_option", "choice_block", "if", "if_end", 
    5738 +  "if_stmt", "if_block", "menu", "menu_entry", "menu_end", "menu_stmt", 
    5739 +  "menu_block", "source", "source_stmt", "comment", "comment_stmt", 
    5740 +  "help_start", "help", "depends_list", "depends", "prompt_stmt_opt", 
    5741 +  "prompt", "end", "nl_or_eof", "if_expr", "expr", "symbol", 0 
    5742 +}; 
    5743 +#endif 
    5744 + 
    5745 +# ifdef YYPRINT 
    5746 +/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to 
    5747 +   token YYLEX-NUM.  */ 
    5748 +static const unsigned short yytoknum[] = 
    5749 +{ 
    5750 +       0,   256,   257,   258,   259,   260,   261,   262,   263,   264, 
    5751 +     265,   266,   267,   268,   269,   270,   271,   272,   273,   274, 
    5752 +     275,   276,   277,   278,   279,   280,   281,   282,   283,   284, 
    5753 +     285,   286,   287,   288,   289,   290,   291,   292,   293,   294, 
    5754 +     295,   296 
    5755 +}; 
    5756 +# endif 
    5757 + 
    5758 +/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */ 
    5759 +static const unsigned char yyr1[] = 
    5760 +{ 
    5761 +       0,    42,    43,    43,    44,    44,    44,    44,    44,    44, 
    5762 +      44,    44,    45,    45,    45,    45,    45,    45,    46,    47, 
    5763 +      48,    49,    50,    50,    50,    50,    50,    51,    51,    51, 
    5764 +      51,    51,    51,    51,    51,    51,    51,    51,    52,    53, 
    5765 +      54,    55,    55,    56,    56,    56,    56,    56,    57,    57, 
    5766 +      57,    57,    57,    58,    58,    59,    60,    61,    61,    62, 
    5767 +      62,    62,    62,    63,    64,    65,    66,    66,    67,    67, 
    5768 +      67,    67,    67,    68,    69,    70,    71,    72,    73,    74, 
    5769 +      74,    74,    75,    75,    75,    76,    76,    77,    77,    78, 
    5770 +      78,    78,    79,    79,    80,    80,    81,    81,    81,    81, 
    5771 +      81,    81,    81,    82,    82 
    5772 +}; 
    5773 + 
    5774 +/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */ 
    5775 +static const unsigned char yyr2[] = 
    5776 +{ 
    5777 +       0,     2,     0,     2,     1,     1,     1,     3,     1,     1, 
    5778 +       1,     2,     1,     1,     1,     1,     1,     1,     3,     2, 
    5779 +       3,     2,     0,     2,     2,     2,     2,     3,     4,     3, 
    5780 +       4,     3,     3,     3,     4,     4,     4,     5,     2,     2, 
    5781 +       1,     3,     2,     0,     2,     2,     2,     2,     4,     3, 
    5782 +       3,     2,     4,     0,     2,     3,     1,     3,     2,     0, 
    5783 +       2,     2,     2,     3,     2,     1,     3,     2,     0,     2, 
    5784 +       2,     2,     3,     3,     1,     3,     2,     2,     2,     0, 
    5785 +       2,     2,     4,     3,     3,     0,     2,     1,     1,     2, 
    5786 +       2,     2,     1,     1,     0,     2,     1,     3,     3,     3, 
    5787 +       2,     3,     3,     1,     1 
    5788 +}; 
    5789 + 
    5790 +/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state 
    5791 +   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero 
    5792 +   means the default is an error.  */ 
    5793 +static const unsigned char yydefact[] = 
    5794 +{ 
    5795 +       2,     0,     1,     0,     0,     0,     8,     0,     0,    10, 
    5796 +       0,     0,     0,     0,     9,    93,    92,     3,     4,    22, 
    5797 +      14,    22,    15,    43,    53,     5,    59,    12,    79,    68, 
    5798 +       6,    74,    16,    79,    13,    17,    11,    87,    88,     0, 
    5799 +       0,     0,    38,     0,     0,     0,   103,   104,     0,     0, 
    5800 +       0,    96,    19,    21,    39,    42,    58,    64,     0,    76, 
    5801 +       7,    63,    73,    75,    18,    20,     0,   100,    55,     0, 
    5802 +       0,     0,     0,     0,     0,     0,     0,     0,    85,     0, 
    5803 +      85,     0,    85,    85,    85,    26,     0,     0,    23,     0, 
    5804 +      25,    24,     0,     0,     0,    85,    85,    47,    44,    46, 
    5805 +      45,     0,     0,     0,    54,    41,    40,    60,    62,    57, 
    5806 +      61,    56,    81,    80,     0,    69,    71,    66,    70,    65, 
    5807 +      99,   101,   102,    98,    97,    77,     0,     0,     0,    94, 
    5808 +      94,     0,    94,    94,     0,    94,     0,     0,     0,    94, 
    5809 +       0,    78,    51,    94,    94,     0,     0,    89,    90,    91, 
    5810 +      72,     0,    83,    84,     0,     0,     0,    27,    86,     0, 
    5811 +      29,     0,    33,    31,    32,     0,    94,     0,     0,    49, 
    5812 +      50,    82,    95,    34,    35,    28,    30,    36,     0,    48, 
    5813 +      52,    37 
    5814 +}; 
    5815 + 
    5816 +/* YYDEFGOTO[NTERM-NUM]. */ 
    5817 +static const short yydefgoto[] = 
    5818 +{ 
    5819 +      -1,     1,    17,    18,    19,    20,    21,    22,    52,    88, 
    5820 +      23,    24,   105,    25,    54,    98,    55,    26,   109,    27, 
    5821 +      56,    28,    29,   117,    30,    58,    31,    32,    33,    34, 
    5822 +      89,    90,    57,    91,   131,   132,   106,    35,   155,    50, 
    5823 +      51 
    5824 +}; 
    5825 + 
    5826 +/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing 
    5827 +   STATE-NUM.  */ 
    5828 +#define YYPACT_NINF -99 
    5829 +static const short yypact[] = 
    5830 +{ 
    5831 +     -99,    48,   -99,    38,    46,    46,   -99,    46,   -29,   -99, 
    5832 +      46,   -17,    -3,   -11,   -99,   -99,   -99,   -99,   -99,   -99, 
    5833 +     -99,   -99,   -99,   -99,   -99,   -99,   -99,   -99,   -99,   -99, 
    5834 +     -99,   -99,   -99,   -99,   -99,   -99,   -99,   -99,   -99,    38, 
    5835 +      12,    15,   -99,    18,    51,    62,   -99,   -99,   -11,   -11, 
    5836 +       4,   -24,   138,   138,   160,   121,   110,    -4,    81,    -4, 
    5837 +     -99,   -99,   -99,   -99,   -99,   -99,   -19,   -99,   -99,   -11, 
    5838 +     -11,    70,    70,    73,    32,   -11,    46,   -11,    46,   -11, 
    5839 +      46,   -11,    46,    46,    46,   -99,    36,    70,   -99,    95, 
    5840 +     -99,   -99,    96,    46,   106,    46,    46,   -99,   -99,   -99, 
    5841 +     -99,    38,    38,    38,   -99,   -99,   -99,   -99,   -99,   -99, 
    5842 +     -99,   -99,   -99,   -99,   112,   -99,   -99,   -99,   -99,   -99, 
    5843 +     -99,   117,   -99,   -99,   -99,   -99,   -11,    33,    65,   131, 
    5844 +       1,   119,   131,     1,   136,     1,   153,   154,   155,   131, 
    5845 +      70,   -99,   -99,   131,   131,   156,   157,   -99,   -99,   -99, 
    5846 +     -99,   101,   -99,   -99,   -11,   158,   159,   -99,   -99,   161, 
    5847 +     -99,   162,   -99,   -99,   -99,   163,   131,   164,   165,   -99, 
    5848 +     -99,   -99,    99,   -99,   -99,   -99,   -99,   -99,   166,   -99, 
    5849 +     -99,   -99 
    5850 +}; 
    5851 + 
    5852 +/* YYPGOTO[NTERM-NUM].  */ 
    5853 +static const short yypgoto[] = 
    5854 +{ 
    5855 +     -99,   -99,   -99,   111,   -99,   -99,   -99,   -99,   178,   -99, 
    5856 +     -99,   -99,   -99,    91,   -99,   -99,   -99,   -99,   -99,   -99, 
    5857 +     -99,   -99,   -99,   -99,   115,   -99,   -99,   -99,   -99,   -99, 
    5858 +     -99,   146,   168,    89,    27,     0,   126,    -1,   -98,   -48, 
    5859 +     -63 
    5860 +}; 
    5861 + 
    5862 +/* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If 
    5863 +   positive, shift that token.  If negative, reduce the rule which 
    5864 +   number is the opposite.  If zero, do what YYDEFACT says. 
    5865 +   If YYTABLE_NINF, syntax error.  */ 
    5866 +#define YYTABLE_NINF -68 
    5867 +static const short yytable[] = 
    5868 +{ 
    5869 +      66,    67,    36,    42,    39,    40,    71,    41,   123,   124, 
    5870 +      43,    44,    74,    75,   120,   154,    72,    46,    47,    69, 
    5871 +      70,   121,   122,    48,   140,    45,   127,   128,   112,   130, 
    5872 +      49,   133,   156,   135,   158,   159,    68,   161,    60,    69, 
    5873 +      70,   165,    69,    70,    61,   167,   168,    62,     2,     3, 
    5874 +      63,     4,     5,     6,     7,     8,     9,    10,    11,    12, 
    5875 +      46,    47,    13,    14,   139,   152,    48,   126,   178,    15, 
    5876 +      16,    69,    70,    49,    37,    38,   129,   166,   151,    15, 
    5877 +      16,   -67,   114,    64,   -67,     5,   101,     7,     8,   102, 
    5878 +      10,    11,    12,   143,    65,    13,   103,   153,    46,    47, 
    5879 +     147,   148,   149,    69,    70,   125,   172,   134,   141,   136, 
    5880 +     137,   138,    15,    16,     5,   101,     7,     8,   102,    10, 
    5881 +      11,    12,   145,   146,    13,   103,   101,     7,   142,   102, 
    5882 +      10,    11,    12,   171,   144,    13,   103,    69,    70,    69, 
    5883 +      70,    15,    16,   100,   150,   154,   113,   108,   113,   116, 
    5884 +      73,   157,    15,    16,    74,    75,    70,    76,    77,    78, 
    5885 +      79,    80,    81,    82,    83,    84,   104,   107,   160,   115, 
    5886 +      85,   110,    73,   118,    86,    87,    74,    75,    92,    93, 
    5887 +      94,    95,   111,    96,   119,   162,   163,   164,   169,   170, 
    5888 +     173,   174,    97,   175,   176,   177,   179,   180,   181,    53, 
    5889 +      99,    59 
    5890 +}; 
    5891 + 
    5892 +static const unsigned char yycheck[] = 
    5893 +{ 
    5894 +      48,    49,     3,    32,     4,     5,    30,     7,    71,    72, 
    5895 +      10,    28,    16,    17,    33,    14,    40,    28,    29,    38, 
    5896 +      39,    69,    70,    34,    87,    28,    74,    75,    32,    77, 
    5897 +      41,    79,   130,    81,   132,   133,    32,   135,    39,    38, 
    5898 +      39,   139,    38,    39,    32,   143,   144,    32,     0,     1, 
    5899 +      32,     3,     4,     5,     6,     7,     8,     9,    10,    11, 
    5900 +      28,    29,    14,    15,    28,    32,    34,    35,   166,    31, 
    5901 +      32,    38,    39,    41,    28,    29,    76,   140,   126,    31, 
    5902 +      32,     0,     1,    32,     3,     4,     5,     6,     7,     8, 
    5903 +       9,    10,    11,    93,    32,    14,    15,    32,    28,    29, 
    5904 +     101,   102,   103,    38,    39,    32,   154,    80,    13,    82, 
    5905 +      83,    84,    31,    32,     4,     5,     6,     7,     8,     9, 
    5906 +      10,    11,    95,    96,    14,    15,     5,     6,    32,     8, 
    5907 +       9,    10,    11,    32,    28,    14,    15,    38,    39,    38, 
    5908 +      39,    31,    32,    54,    32,    14,    57,    56,    59,    58, 
    5909 +      12,    32,    31,    32,    16,    17,    39,    19,    20,    21, 
    5910 +      22,    23,    24,    25,    26,    27,    55,    56,    32,    58, 
    5911 +      32,    56,    12,    58,    36,    37,    16,    17,    18,    19, 
    5912 +      20,    21,    56,    23,    58,    32,    32,    32,    32,    32, 
    5913 +      32,    32,    32,    32,    32,    32,    32,    32,    32,    21, 
    5914 +      54,    33 
    5915 +}; 
    5916 + 
    5917 +/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing 
    5918 +   symbol of state STATE-NUM.  */ 
    5919 +static const unsigned char yystos[] = 
    5920 +{ 
    5921 +       0,    43,     0,     1,     3,     4,     5,     6,     7,     8, 
    5922 +       9,    10,    11,    14,    15,    31,    32,    44,    45,    46, 
    5923 +      47,    48,    49,    52,    53,    55,    59,    61,    63,    64, 
    5924 +      66,    68,    69,    70,    71,    79,    79,    28,    29,    77, 
    5925 +      77,    77,    32,    77,    28,    28,    28,    29,    34,    41, 
    5926 +      81,    82,    50,    50,    56,    58,    62,    74,    67,    74, 
    5927 +      79,    32,    32,    32,    32,    32,    81,    81,    32,    38, 
    5928 +      39,    30,    40,    12,    16,    17,    19,    20,    21,    22, 
    5929 +      23,    24,    25,    26,    27,    32,    36,    37,    51,    72, 
    5930 +      73,    75,    18,    19,    20,    21,    23,    32,    57,    73, 
    5931 +      75,     5,     8,    15,    45,    54,    78,    45,    55,    60, 
    5932 +      66,    78,    32,    75,     1,    45,    55,    65,    66,    78, 
    5933 +      33,    81,    81,    82,    82,    32,    35,    81,    81,    77, 
    5934 +      81,    76,    77,    81,    76,    81,    76,    76,    76,    28, 
    5935 +      82,    13,    32,    77,    28,    76,    76,    79,    79,    79, 
    5936 +      32,    81,    32,    32,    14,    80,    80,    32,    80,    80, 
    5937 +      32,    80,    32,    32,    32,    80,    82,    80,    80,    32, 
    5938 +      32,    32,    81,    32,    32,    32,    32,    32,    80,    32, 
    5939 +      32,    32 
    5940 +}; 
    5941 + 
    5942 +#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) 
    5943 +# define YYSIZE_T __SIZE_TYPE__ 
    5944 +#endif 
    5945 +#if ! defined (YYSIZE_T) && defined (size_t) 
    5946 +# define YYSIZE_T size_t 
    5947 +#endif 
    5948 +#if ! defined (YYSIZE_T) 
    5949 +# if defined (__STDC__) || defined (__cplusplus) 
    5950 +#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */ 
    5951 +#  define YYSIZE_T size_t 
    5952 +# endif 
    5953 +#endif 
    5954 +#if ! defined (YYSIZE_T) 
    5955 +# define YYSIZE_T unsigned int 
    5956 +#endif 
    5957 + 
    5958 +#define yyerrok                (yyerrstatus = 0) 
    5959 +#define yyclearin      (yychar = YYEMPTY) 
    5960 +#define YYEMPTY                (-2) 
    5961 +#define YYEOF          0 
    5962 + 
    5963 +#define YYACCEPT       goto yyacceptlab 
    5964 +#define YYABORT                goto yyabortlab 
    5965 +#define YYERROR                goto yyerrlab1 
    5966 + 
    5967 + 
    5968 +/* Like YYERROR except do call yyerror.  This remains here temporarily 
    5969 +   to ease the transition to the new meaning of YYERROR, for GCC. 
    5970 +   Once GCC version 2 has supplanted version 1, this can go.  */ 
    5971 + 
    5972 +#define YYFAIL         goto yyerrlab 
    5973 + 
    5974 +#define YYRECOVERING()  (!!yyerrstatus) 
    5975 + 
    5976 +#define YYBACKUP(Token, Value)                                 \ 
    5977 +do                                                             \ 
    5978 +  if (yychar == YYEMPTY && yylen == 1)                         \ 
    5979 +    {                                                          \ 
    5980 +      yychar = (Token);                                                \ 
    5981 +      yylval = (Value);                                                \ 
    5982 +      yytoken = YYTRANSLATE (yychar);                          \ 
    5983 +      YYPOPSTACK;                                              \ 
    5984 +      goto yybackup;                                           \ 
    5985 +    }                                                          \ 
    5986 +  else                                                         \ 
    5987 +    {                                                          \ 
    5988 +      yyerror ("syntax error: cannot back up");\ 
    5989 +      YYERROR;                                                 \ 
    5990 +    }                                                          \ 
    5991 +while (0) 
    5992 + 
    5993 +#define YYTERROR       1 
    5994 +#define YYERRCODE      256 
    5995 + 
    5996 +/* YYLLOC_DEFAULT -- Compute the default location (before the actions 
    5997 +   are run).  */ 
    5998 + 
    5999 +#ifndef YYLLOC_DEFAULT 
    6000 +# define YYLLOC_DEFAULT(Current, Rhs, N)         \ 
    6001 +  Current.first_line   = Rhs[1].first_line;      \ 
    6002 +  Current.first_column = Rhs[1].first_column;    \ 
    6003 +  Current.last_line    = Rhs[N].last_line;       \ 
    6004 +  Current.last_column  = Rhs[N].last_column; 
    6005 +#endif 
    6006 + 
    6007 +/* YYLEX -- calling `yylex' with the right arguments.  */ 
    6008 + 
    6009 +#ifdef YYLEX_PARAM 
    6010 +# define YYLEX yylex (YYLEX_PARAM) 
    6011 +#else 
    6012 +# define YYLEX yylex () 
    6013 +#endif 
    6014 + 
    6015 +/* Enable debugging if requested.  */ 
    6016 +#if YYDEBUG 
    6017 + 
    6018 +# ifndef YYFPRINTF 
    6019 +#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */ 
    6020 +#  define YYFPRINTF fprintf 
    6021 +# endif 
    6022 + 
    6023 +# define YYDPRINTF(Args)                       \ 
    6024 +do {                                           \ 
    6025 +  if (yydebug)                                 \ 
    6026 +    YYFPRINTF Args;                            \ 
    6027 +} while (0) 
    6028 + 
    6029 +# define YYDSYMPRINT(Args)                     \ 
    6030 +do {                                           \ 
    6031 +  if (yydebug)                                 \ 
    6032 +    yysymprint Args;                           \ 
    6033 +} while (0) 
    6034 + 
    6035 +# define YYDSYMPRINTF(Title, Token, Value, Location)           \ 
    6036 +do {                                                           \ 
    6037 +  if (yydebug)                                                 \ 
    6038 +    {                                                          \ 
    6039 +      YYFPRINTF (stderr, "%s ", Title);                                \ 
    6040 +      yysymprint (stderr,                                      \ 
    6041 +                  Token, Value);       \ 
    6042 +      YYFPRINTF (stderr, "\n");                                        \ 
    6043 +    }                                                          \ 
    6044 +} while (0) 
    6045 + 
    6046 +/*------------------------------------------------------------------. 
    6047 +| yy_stack_print -- Print the state stack from its BOTTOM up to its | 
    6048 +| TOP (cinluded).                                                   | 
    6049 +`------------------------------------------------------------------*/ 
    6050 + 
    6051 +#if defined (__STDC__) || defined (__cplusplus) 
    6052 +static void 
    6053 +yy_stack_print (short *bottom, short *top) 
    6054 +#else 
    6055 +static void 
    6056 +yy_stack_print (bottom, top) 
    6057 +    short *bottom; 
    6058 +    short *top; 
    6059 +#endif 
    6060 +{ 
    6061 +  YYFPRINTF (stderr, "Stack now"); 
    6062 +  for (/* Nothing. */; bottom <= top; ++bottom) 
    6063 +    YYFPRINTF (stderr, " %d", *bottom); 
    6064 +  YYFPRINTF (stderr, "\n"); 
    6065 +} 
    6066 + 
    6067 +# define YY_STACK_PRINT(Bottom, Top)                           \ 
    6068 +do {                                                           \ 
    6069 +  if (yydebug)                                                 \ 
    6070 +    yy_stack_print ((Bottom), (Top));                          \ 
    6071 +} while (0) 
    6072 + 
    6073 + 
    6074 +/*------------------------------------------------. 
    6075 +| Report that the YYRULE is going to be reduced.  | 
    6076 +`------------------------------------------------*/ 
    6077 + 
    6078 +#if defined (__STDC__) || defined (__cplusplus) 
    6079 +static void 
    6080 +yy_reduce_print (int yyrule) 
    6081 +#else 
    6082 +static void 
    6083 +yy_reduce_print (yyrule) 
    6084 +    int yyrule; 
    6085 +#endif 
    6086 +{ 
    6087 +  int yyi; 
    6088 +  unsigned int yylineno = yyrline[yyrule]; 
    6089 +  YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ", 
    6090 +             yyrule - 1, yylineno); 
    6091 +  /* Print the symbols being reduced, and their result.  */ 
    6092 +  for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++) 
    6093 +    YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]); 
    6094 +  YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]); 
    6095 +} 
    6096 + 
    6097 +# define YY_REDUCE_PRINT(Rule)         \ 
    6098 +do {                                   \ 
    6099 +  if (yydebug)                         \ 
    6100 +    yy_reduce_print (Rule);            \ 
    6101 +} while (0) 
    6102 + 
    6103 +/* Nonzero means print parse trace.  It is left uninitialized so that 
    6104 +   multiple parsers can coexist.  */ 
    6105 +int yydebug; 
    6106 +#else /* !YYDEBUG */ 
    6107 +# define YYDPRINTF(Args) 
    6108 +# define YYDSYMPRINT(Args) 
    6109 +# define YYDSYMPRINTF(Title, Token, Value, Location) 
    6110 +# define YY_STACK_PRINT(Bottom, Top) 
    6111 +# define YY_REDUCE_PRINT(Rule) 
    6112 +#endif /* !YYDEBUG */ 
    6113 + 
    6114 + 
    6115 +/* YYINITDEPTH -- initial size of the parser's stacks.  */ 
    6116 +#ifndef        YYINITDEPTH 
    6117 +# define YYINITDEPTH 200 
    6118 +#endif 
    6119 + 
    6120 +/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only 
    6121 +   if the built-in stack extension method is used). 
    6122 + 
    6123 +   Do not make this value too large; the results are undefined if 
    6124 +   SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH) 
    6125 +   evaluated with infinite-precision integer arithmetic.  */ 
    6126 + 
    6127 +#if YYMAXDEPTH == 0 
    6128 +# undef YYMAXDEPTH 
    6129 +#endif 
    6130 + 
    6131 +#ifndef YYMAXDEPTH 
    6132 +# define YYMAXDEPTH 10000 
    6133 +#endif 
    6134 + 
    6135 + 
    6136  
    6137 + 
    6138 +#if YYERROR_VERBOSE 
    6139 + 
    6140 +# ifndef yystrlen 
    6141 +#  if defined (__GLIBC__) && defined (_STRING_H) 
    6142 +#   define yystrlen strlen 
    6143 +#  else 
    6144 +/* Return the length of YYSTR.  */ 
    6145 +static YYSIZE_T 
    6146 +#   if defined (__STDC__) || defined (__cplusplus) 
    6147 +yystrlen (const char *yystr) 
    6148 +#   else 
    6149 +yystrlen (yystr) 
    6150 +     const char *yystr; 
    6151 +#   endif 
    6152 +{ 
    6153 +  register const char *yys = yystr; 
    6154 + 
    6155 +  while (*yys++ != '\0') 
    6156 +    continue; 
    6157 + 
    6158 +  return yys - yystr - 1; 
    6159 +} 
    6160 +#  endif 
    6161 +# endif 
    6162 + 
    6163 +# ifndef yystpcpy 
    6164 +#  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE) 
    6165 +#   define yystpcpy stpcpy 
    6166 +#  else 
    6167 +/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in 
    6168 +   YYDEST.  */ 
    6169 +static char * 
    6170 +#   if defined (__STDC__) || defined (__cplusplus) 
    6171 +yystpcpy (char *yydest, const char *yysrc) 
    6172 +#   else 
    6173 +yystpcpy (yydest, yysrc) 
    6174 +     char *yydest; 
    6175 +     const char *yysrc; 
    6176 +#   endif 
    6177 +{ 
    6178 +  register char *yyd = yydest; 
    6179 +  register const char *yys = yysrc; 
    6180 + 
    6181 +  while ((*yyd++ = *yys++) != '\0') 
    6182 +    continue; 
    6183 + 
    6184 +  return yyd - 1; 
    6185 +} 
    6186 +#  endif 
    6187 +# endif 
    6188 + 
    6189 +#endif /* !YYERROR_VERBOSE */ 
    6190 + 
    6191 + 
    6192  
    6193 + 
    6194 +#if YYDEBUG 
    6195 +/*--------------------------------. 
    6196 +| Print this symbol on YYOUTPUT.  | 
    6197 +`--------------------------------*/ 
    6198 + 
    6199 +#if defined (__STDC__) || defined (__cplusplus) 
    6200 +static void 
    6201 +yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep) 
    6202 +#else 
    6203 +static void 
    6204 +yysymprint (yyoutput, yytype, yyvaluep) 
    6205 +    FILE *yyoutput; 
    6206 +    int yytype; 
    6207 +    YYSTYPE *yyvaluep; 
    6208 +#endif 
    6209 +{ 
    6210 +  /* Pacify ``unused variable'' warnings.  */ 
    6211 +  (void) yyvaluep; 
    6212 + 
    6213 +  if (yytype < YYNTOKENS) 
    6214 +    { 
    6215 +      YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); 
    6216 +# ifdef YYPRINT 
    6217 +      YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); 
    6218 +# endif 
    6219 +    } 
    6220 +  else 
    6221 +    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); 
    6222 + 
    6223 +  switch (yytype) 
    6224 +    { 
    6225 +      default: 
    6226 +        break; 
    6227 +    } 
    6228 +  YYFPRINTF (yyoutput, ")"); 
    6229 +} 
    6230 + 
    6231 +#endif /* ! YYDEBUG */ 
    6232 +/*-----------------------------------------------. 
    6233 +| Release the memory associated to this symbol.  | 
    6234 +`-----------------------------------------------*/ 
    6235 + 
    6236 +#if defined (__STDC__) || defined (__cplusplus) 
    6237 +static void 
    6238 +yydestruct (int yytype, YYSTYPE *yyvaluep) 
    6239 +#else 
    6240 +static void 
    6241 +yydestruct (yytype, yyvaluep) 
    6242 +    int yytype; 
    6243 +    YYSTYPE *yyvaluep; 
    6244 +#endif 
    6245 +{ 
    6246 +  /* Pacify ``unused variable'' warnings.  */ 
    6247 +  (void) yyvaluep; 
    6248 + 
    6249 +  switch (yytype) 
    6250 +    { 
    6251 + 
    6252 +      default: 
    6253 +        break; 
    6254 +    } 
    6255 +} 
    6256 + 
    6257  
    6258 + 
    6259 +/* Prevent warnings from -Wmissing-prototypes.  */ 
    6260 + 
    6261 +#ifdef YYPARSE_PARAM 
    6262 +# if defined (__STDC__) || defined (__cplusplus) 
    6263 +int yyparse (void *YYPARSE_PARAM); 
    6264 +# else 
    6265 +int yyparse (); 
    6266 +# endif 
    6267 +#else /* ! YYPARSE_PARAM */ 
    6268 +#if defined (__STDC__) || defined (__cplusplus) 
    6269 +int yyparse (void); 
    6270 +#else 
    6271 +int yyparse (); 
    6272 +#endif 
    6273 +#endif /* ! YYPARSE_PARAM */ 
    6274 + 
    6275 + 
    6276 + 
    6277 +/* The lookahead symbol.  */ 
    6278 +int yychar; 
    6279 + 
    6280 +/* The semantic value of the lookahead symbol.  */ 
    6281 +YYSTYPE yylval; 
    6282 + 
    6283 +/* Number of syntax errors so far.  */ 
    6284 +int yynerrs; 
    6285 + 
    6286 + 
    6287 + 
    6288 +/*----------. 
    6289 +| yyparse.  | 
    6290 +`----------*/ 
    6291 + 
    6292 +#ifdef YYPARSE_PARAM 
    6293 +# if defined (__STDC__) || defined (__cplusplus) 
    6294 +int yyparse (void *YYPARSE_PARAM) 
    6295 +# else 
    6296 +int yyparse (YYPARSE_PARAM) 
    6297 +  void *YYPARSE_PARAM; 
    6298 +# endif 
    6299 +#else /* ! YYPARSE_PARAM */ 
    6300 +#if defined (__STDC__) || defined (__cplusplus) 
    6301 +int 
    6302 +yyparse (void) 
    6303 +#else 
    6304 +int 
    6305 +yyparse () 
    6306 + 
    6307 +#endif 
    6308 +#endif 
    6309 +{ 
    6310 + 
    6311 +  register int yystate; 
    6312 +  register int yyn; 
    6313 +  int yyresult; 
    6314 +  /* Number of tokens to shift before error messages enabled.  */ 
    6315 +  int yyerrstatus; 
    6316 +  /* Lookahead token as an internal (translated) token number.  */ 
    6317 +  int yytoken = 0; 
    6318 + 
    6319 +  /* Three stacks and their tools: 
    6320 +     `yyss': related to states, 
    6321 +     `yyvs': related to semantic values, 
    6322 +     `yyls': related to locations. 
    6323 + 
    6324 +     Refer to the stacks thru separate pointers, to allow yyoverflow 
    6325 +     to reallocate them elsewhere.  */ 
    6326 + 
    6327 +  /* The state stack.  */ 
    6328 +  short        yyssa[YYINITDEPTH]; 
    6329 +  short *yyss = yyssa; 
    6330 +  register short *yyssp; 
    6331 + 
    6332 +  /* The semantic value stack.  */ 
    6333 +  YYSTYPE yyvsa[YYINITDEPTH]; 
    6334 +  YYSTYPE *yyvs = yyvsa; 
    6335 +  register YYSTYPE *yyvsp; 
    6336 + 
    6337 + 
    6338 + 
    6339 +#define YYPOPSTACK   (yyvsp--, yyssp--) 
    6340 + 
    6341 +  YYSIZE_T yystacksize = YYINITDEPTH; 
    6342 + 
    6343 +  /* The variables used to return semantic value and location from the 
    6344 +     action routines.  */ 
    6345 +  YYSTYPE yyval; 
    6346 + 
    6347 + 
    6348 +  /* When reducing, the number of symbols on the RHS of the reduced 
    6349 +     rule.  */ 
    6350 +  int yylen; 
    6351 + 
    6352 +  YYDPRINTF ((stderr, "Starting parse\n")); 
    6353 + 
    6354 +  yystate = 0; 
    6355 +  yyerrstatus = 0; 
    6356 +  yynerrs = 0; 
    6357 +  yychar = YYEMPTY;            /* Cause a token to be read.  */ 
    6358 + 
    6359 +  /* Initialize stack pointers. 
    6360 +     Waste one element of value and location stack 
    6361 +     so that they stay on the same level as the state stack. 
    6362 +     The wasted elements are never initialized.  */ 
    6363 + 
    6364 +  yyssp = yyss; 
    6365 +  yyvsp = yyvs; 
    6366 + 
    6367 +  goto yysetstate; 
    6368 + 
    6369 +/*------------------------------------------------------------. 
    6370 +| yynewstate -- Push a new state, which is found in yystate.  | 
    6371 +`------------------------------------------------------------*/ 
    6372 + yynewstate: 
    6373 +  /* In all cases, when you get here, the value and location stacks 
    6374 +     have just been pushed. so pushing a state here evens the stacks. 
    6375 +     */ 
    6376 +  yyssp++; 
    6377 + 
    6378 + yysetstate: 
    6379 +  *yyssp = yystate; 
    6380 + 
    6381 +  if (yyss + yystacksize - 1 <= yyssp) 
    6382 +    { 
    6383 +      /* Get the current used size of the three stacks, in elements.  */ 
    6384 +      YYSIZE_T yysize = yyssp - yyss + 1; 
    6385 + 
    6386 +#ifdef yyoverflow 
    6387 +      { 
    6388 +       /* Give user a chance to reallocate the stack. Use copies of 
    6389 +          these so that the &'s don't force the real ones into 
    6390 +          memory.  */ 
    6391 +       YYSTYPE *yyvs1 = yyvs; 
    6392 +       short *yyss1 = yyss; 
    6393 + 
    6394 + 
    6395 +       /* Each stack pointer address is followed by the size of the 
    6396 +          data in use in that stack, in bytes.  This used to be a 
    6397 +          conditional around just the two extra args, but that might 
    6398 +          be undefined if yyoverflow is a macro.  */ 
    6399 +       yyoverflow ("parser stack overflow", 
    6400 +                   &yyss1, yysize * sizeof (*yyssp), 
    6401 +                   &yyvs1, yysize * sizeof (*yyvsp), 
    6402 + 
    6403 +                   &yystacksize); 
    6404 + 
    6405 +       yyss = yyss1; 
    6406 +       yyvs = yyvs1; 
    6407 +      } 
    6408 +#else /* no yyoverflow */ 
    6409 +# ifndef YYSTACK_RELOCATE 
    6410 +      goto yyoverflowlab; 
    6411 +# else 
    6412 +      /* Extend the stack our own way.  */ 
    6413 +      if (YYMAXDEPTH <= yystacksize) 
    6414 +       goto yyoverflowlab; 
    6415 +      yystacksize *= 2; 
    6416 +      if (YYMAXDEPTH < yystacksize) 
    6417 +       yystacksize = YYMAXDEPTH; 
    6418 + 
    6419 +      { 
    6420 +       short *yyss1 = yyss; 
    6421 +       union yyalloc *yyptr = 
    6422 +         (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); 
    6423 +       if (! yyptr) 
    6424 +         goto yyoverflowlab; 
    6425 +       YYSTACK_RELOCATE (yyss); 
    6426 +       YYSTACK_RELOCATE (yyvs); 
    6427 + 
    6428 +#  undef YYSTACK_RELOCATE 
    6429 +       if (yyss1 != yyssa) 
    6430 +         YYSTACK_FREE (yyss1); 
    6431 +      } 
    6432 +# endif 
    6433 +#endif /* no yyoverflow */ 
    6434 + 
    6435 +      yyssp = yyss + yysize - 1; 
    6436 +      yyvsp = yyvs + yysize - 1; 
    6437 + 
    6438 + 
    6439 +      YYDPRINTF ((stderr, "Stack size increased to %lu\n", 
    6440 +                 (unsigned long int) yystacksize)); 
    6441 + 
    6442 +      if (yyss + yystacksize - 1 <= yyssp) 
    6443 +       YYABORT; 
    6444 +    } 
    6445 + 
    6446 +  YYDPRINTF ((stderr, "Entering state %d\n", yystate)); 
    6447 + 
    6448 +  goto yybackup; 
    6449 + 
    6450 +/*-----------. 
    6451 +| yybackup.  | 
    6452 +`-----------*/ 
    6453 +yybackup: 
    6454 + 
    6455 +/* Do appropriate processing given the current state.  */ 
    6456 +/* Read a lookahead token if we need one and don't already have one.  */ 
    6457 +/* yyresume: */ 
    6458 + 
    6459 +  /* First try to decide what to do without reference to lookahead token.  */ 
    6460 + 
    6461 +  yyn = yypact[yystate]; 
    6462 +  if (yyn == YYPACT_NINF) 
    6463 +    goto yydefault; 
    6464 + 
    6465 +  /* Not known => get a lookahead token if don't already have one.  */ 
    6466 + 
    6467 +  /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */ 
    6468 +  if (yychar == YYEMPTY) 
    6469 +    { 
    6470 +      YYDPRINTF ((stderr, "Reading a token: ")); 
    6471 +      yychar = YYLEX; 
    6472 +    } 
    6473 + 
    6474 +  if (yychar <= YYEOF) 
    6475 +    { 
    6476 +      yychar = yytoken = YYEOF; 
    6477 +      YYDPRINTF ((stderr, "Now at end of input.\n")); 
    6478