/*	helpme.c

	See http://aggregate.org/HELPME/ for details.

	This program was written by Professor Hank Dietz,
	hankd@engr.uky.edu, http://aggregate.org/hankd/

	As of September 10, 2002,
	it is hereby placed in the public domain.

	By using this code, you agree to hold harmless both
	Prof. Dietz and the University of Kentucky; you accept
	full responsibility for any badness that may occur.
*/


/*	Leave defined to use ioctl() sound instead of raw I/O ports */
#define	USEIOCTL

/*	Leave defined to compile-in CPU clock frequency */
#define	TICKSPERSEC	1000000000ULL	/* this is 1GHz */
#undef	TICKSPERSEC

/*	Leave defined to force raw toggles of speaker bit....
	If you tried USEIOCTL and heard nothing,
	and you tried undef USEIOCTL and heard clear NATO text
	with garbled tones for everything else,
	then using this option should fix things.
	NEVER USE THIS if anything else works; it's very innefficient.
*/
#define	FORCETOGGLE
#undef	FORCETOGGLE


#define	VERSION		20020910

#include <signal.h>	/* make us shutup if killed... */

#ifdef	FORCETOGGLE
#undef	USEIOCTL	/* can't use ioctl() */
#endif

#ifdef	USEIOCTL
#include <sys/ioctl.h>
#include <linux/kd.h>
#include <fcntl.h>
#endif

#define	TIMERPERSEC	1193180				/* speaker timer ticks per second */

#ifndef	TICKSPERSEC
#define	AUTOCALIBRATE					/* enable auto calibration of CPU tick timer */
#define	TICKSPERSEC	tickspersec			/* CPU clock ticks per second autocalibrated */
#endif

#define	SAMPLERATE	8000ULL				/* voice recording samples per second */
#define	SAMPLETICKS	(TICKSPERSEC/SAMPLERATE)
#define	SYSTICKS	(TICKSPERSEC/50ULL)		/* minimum reliable time to usleep(1) */
#define	KERNTICKS	(TICKSPERSEC/8ULL)		/* 1/2 intercharacter (kerning) time */
#define	WORDTICKS	(TICKSPERSEC)			/* wordbreak time (1 second) */

#define	MAXINPUT	(8 * 1024)			/* Maximum number of tokens in program */

union tick_union {
	unsigned long long	val64;
	struct {
		unsigned int	low32;
		unsigned int	hi32;
	} lowhi;
};


#ifdef	AUTOCALIBRATE
unsigned long long
	tickspersec;		/* auto-calibrated ticks per second */
#endif

unsigned long long
	usecdelay = 2000000ULL;	/* default long delay of 2000000us, 2000ms, or 2 seconds */
int	usenato = 1;		/* use NATO phonetic alphabet, else Morse code */
char	inputbuf[MAXINPUT];	/* input program memory (tokenized) */
int	inputlen = 0;		/* input program token length */
int	pc = 0;			/* "program counter" for interpreting input */

#ifdef	USEIOCTL
int	consolefd;		/* /dev/console file descriptor for ioctl() */
#endif


#define	zeroLEN	611
unsigned char zerotab[zeroLEN] = {
	0x01,0x57,0x01,0x48,0x01,0x01,0x01,0x17,0x01,0x17,
	0x01,0x19,0x01,0x2c,0x03,0x15,0x01,0x01,0x03,0x01,
	0x03,0x02,0x01,0x03,0x01,0x05,0x01,0x01,0x03,0x14,
	0x06,0x11,0x06,0x01,0x01,0x0c,0x01,0x01,0x04,0x01,
	0x01,0x0f,0x08,0x01,0x01,0x0e,0x08,0x0a,0x07,0x01,
	0x01,0x0e,0x01,0x01,0x07,0x01,0x01,0x0e,0x09,0x09,
	0x04,0x01,0x02,0x0e,0x01,0x01,0x07,0x01,0x01,0x0d,
	0x01,0x02,0x08,0x08,0x04,0x01,0x01,0x02,0x01,0x0b,
	0x09,0x01,0x01,0x0e,0x09,0x07,0x03,0x02,0x01,0x0d,
	0x09,0x10,0x0a,0x05,0x04,0x01,0x02,0x0b,0x0b,0x10,
	0x09,0x04,0x05,0x02,0x01,0x0c,0x08,0x01,0x01,0x0e,
	0x01,0x01,0x07,0x05,0x06,0x0e,0x08,0x0f,0x0a,0x04,
	0x07,0x0e,0x08,0x0f,0x03,0x01,0x02,0x04,0x0b,0x0c,
	0x0a,0x0b,0x02,0x02,0x02,0x07,0x0b,0x0d,0x09,0x0c,
	0x02,0x0a,0x0b,0x0c,0x08,0x0e,0x01,0x09,0x0e,0x0a,
	0x09,0x19,0x0d,0x0a,0x0a,0x0a,0x02,0x0b,0x09,0x01,
	0x05,0x0a,0x0a,0x0a,0x03,0x0a,0x0f,0x0b,0x09,0x0c,
	0x02,0x0a,0x0e,0x0b,0x0a,0x0c,0x02,0x09,0x08,0x01,
	0x05,0x0c,0x05,0x02,0x03,0x07,0x02,0x05,0x01,0x07,
	0x10,0x0b,0x06,0x0c,0x02,0x0d,0x0f,0x0b,0x07,0x0c,
	0x02,0x0c,0x0f,0x0c,0x07,0x0b,0x03,0x0c,0x10,0x0c,
	0x06,0x0c,0x03,0x0c,0x11,0x0b,0x07,0x0b,0x04,0x0c,
	0x0a,0x03,0x04,0x0c,0x06,0x0b,0x04,0x0c,0x0a,0x04,
	0x05,0x0c,0x05,0x0b,0x04,0x0c,0x04,0x01,0x04,0x06,
	0x06,0x0b,0x06,0x0a,0x05,0x0b,0x09,0x05,0x09,0x0b,
	0x05,0x0b,0x04,0x0b,0x09,0x05,0x0b,0x0a,0x06,0x0a,
	0x05,0x0a,0x08,0x06,0x09,0x04,0x02,0x05,0x02,0x03,
	0x05,0x04,0x01,0x05,0x04,0x0a,0x03,0x0b,0x04,0x01,
	0x04,0x04,0x04,0x0b,0x04,0x0a,0x04,0x0a,0x03,0x03,
	0x01,0x07,0x03,0x02,0x04,0x04,0x06,0x08,0x01,0x02,
	0x04,0x09,0x05,0x09,0x05,0x09,0x05,0x02,0x02,0x04,
	0x08,0x06,0x03,0x02,0x03,0x05,0x02,0x03,0x04,0x05,
	0x01,0x03,0x04,0x0b,0x04,0x09,0x08,0x05,0x04,0x02,
	0x04,0x04,0x04,0x01,0x04,0x05,0x04,0x01,0x03,0x06,
	0x03,0x02,0x03,0x05,0x02,0x03,0x04,0x03,0x01,0x06,
	0x03,0x03,0x03,0x05,0x03,0x02,0x04,0x05,0x03,0x02,
	0x03,0x05,0x03,0x04,0x02,0x05,0x03,0x03,0x03,0x02,
	0x03,0x05,0x03,0x03,0x04,0x04,0x04,0x02,0x03,0x06,
	0x03,0x0a,0x03,0x04,0x01,0x05,0x04,0x03,0x03,0x03,
	0x02,0x05,0x04,0x02,0x04,0x04,0x04,0x04,0x01,0x06,
	0x04,0x0a,0x03,0x0a,0x03,0x09,0x03,0x05,0x04,0x03,
	0x02,0x06,0x04,0x03,0x01,0x06,0x04,0x0b,0x03,0x0b,
	0x04,0x05,0x04,0x06,0x04,0x02,0x03,0x05,0x04,0x0c,
	0x04,0x0b,0x03,0x0b,0x05,0x04,0x04,0x07,0x02,0x02,
	0x04,0x06,0x04,0x0b,0x04,0x0b,0x04,0x0b,0x03,0x05,
	0x04,0x06,0x03,0x02,0x04,0x06,0x04,0x0b,0x04,0x0c,
	0x03,0x07,0x01,0x03,0x05,0x04,0x03,0x07,0x03,0x02,
	0x04,0x06,0x04,0x0b,0x04,0x0c,0x04,0x06,0x01,0x04,
	0x04,0x04,0x03,0x07,0x03,0x03,0x04,0x05,0x04,0x0c,
	0x04,0x06,0x01,0x05,0x03,0x0c,0x04,0x04,0x03,0x07,
	0x03,0x03,0x04,0x05,0x04,0x0c,0x04,0x06,0x01,0x05,
	0x04,0x0b,0x05,0x04,0x03,0x07,0x02,0x05,0x03,0x05,
	0x04,0x0d,0x04,0x0c,0x04,0x06,0x01,0x04,0x04,0x06,
	0x02,0x07,0x02,0x05,0x03,0x06,0x04,0x0c,0x04,0x0c,
	0x04,0x0c,0x04,0x06,0x02,0x08,0x01,0x05,0x03,0x07,
	0x04,0x0d,0x03,0x0d,0x03,0x0d,0x04,0x06,0x02,0x08,
	0x01,0x05,0x04,0x07,0x03,0x0d,0x04,0x0d,0x03,0x07,
	0x01,0x05,0x04,0x05,0x03,0x08,0x01,0x05,0x04,0x07,
	0x04,0x0d,0x04,0x0d,0x03,0x0d,0x04,0x07,0x02,0x0f,
	0x04,0x09,0x01,0x10,0x01,0x0f,0x03,0x0e,0x02,0x19,
	0x04,0x0b,0x01,0x80,0xa4,0x01,0x01,0x01,0x81,0x1d,
	0x01
};

#define	oneLEN	341
unsigned char onetab[oneLEN] = {
	0x01,0x02,0x01,0x2f,0x01,0x11,0x05,0x2d,0x01,0x12,
	0x06,0x14,0x07,0x0e,0x05,0x10,0x07,0x11,0x08,0x0d,
	0x07,0x0d,0x07,0x12,0x02,0x02,0x01,0x0f,0x07,0x0c,
	0x07,0x1c,0x01,0x0c,0x06,0x0a,0x07,0x17,0x06,0x0c,
	0x06,0x09,0x06,0x09,0x03,0x0b,0x04,0x0d,0x08,0x08,
	0x06,0x09,0x02,0x0d,0x02,0x06,0x01,0x01,0x01,0x05,
	0x07,0x09,0x05,0x07,0x01,0x0f,0x03,0x06,0x04,0x03,
	0x08,0x08,0x04,0x07,0x01,0x06,0x02,0x07,0x04,0x05,
	0x05,0x02,0x09,0x07,0x04,0x06,0x02,0x05,0x03,0x07,
	0x04,0x05,0x04,0x04,0x0a,0x06,0x04,0x05,0x03,0x05,
	0x03,0x07,0x03,0x05,0x04,0x04,0x05,0x01,0x04,0x07,
	0x04,0x04,0x03,0x05,0x03,0x06,0x03,0x06,0x03,0x04,
	0x04,0x03,0x05,0x06,0x03,0x05,0x03,0x05,0x03,0x06,
	0x03,0x05,0x03,0x04,0x05,0x03,0x06,0x06,0x03,0x05,
	0x03,0x05,0x04,0x05,0x02,0x06,0x01,0x06,0x03,0x03,
	0x09,0x05,0x03,0x04,0x04,0x04,0x04,0x0c,0x03,0x04,
	0x04,0x04,0x09,0x05,0x04,0x04,0x03,0x04,0x04,0x05,
	0x01,0x06,0x03,0x04,0x04,0x03,0x04,0x03,0x04,0x05,
	0x03,0x04,0x04,0x04,0x04,0x04,0x02,0x05,0x03,0x04,
	0x04,0x04,0x03,0x03,0x06,0x05,0x03,0x04,0x03,0x05,
	0x03,0x05,0x01,0x05,0x02,0x06,0x02,0x05,0x01,0x05,
	0x08,0x05,0x04,0x04,0x02,0x05,0x03,0x05,0x01,0x05,
	0x02,0x07,0x01,0x03,0x01,0x07,0x02,0x01,0x07,0x05,
	0x03,0x04,0x03,0x04,0x04,0x04,0x01,0x05,0x03,0x06,
	0x01,0x03,0x02,0x06,0x02,0x02,0x07,0x06,0x03,0x04,
	0x03,0x04,0x03,0x04,0x01,0x05,0x03,0x09,0x04,0x04,
	0x02,0x03,0x08,0x05,0x04,0x03,0x03,0x04,0x03,0x04,
	0x02,0x04,0x02,0x0b,0x03,0x05,0x01,0x03,0x04,0x01,
	0x06,0x05,0x02,0x04,0x03,0x04,0x03,0x0b,0x01,0x0b,
	0x02,0x0a,0x04,0x02,0x07,0x06,0x01,0x04,0x03,0x04,
	0x03,0x03,0x01,0x14,0x01,0x0b,0x04,0x02,0x04,0x01,
	0x02,0x06,0x01,0x04,0x03,0x2a,0x05,0x01,0x02,0x01,
	0x01,0x01,0x05,0x0b,0x01,0x09,0x01,0x23,0x04,0x01,
	0x01,0x05,0x02,0x01,0x02,0x0a,0x02,0x2f,0x05,0x04,
	0x02
};

#define	twoLEN	219
unsigned char twotab[twoLEN] = {
	0x01,0x26,0x01,0x01,0x01,0x03,0x01,0x01,0x01,0x12,
	0x01,0x05,0x01,0x02,0x01,0x05,0x01,0x0e,0x01,0x0a,
	0x01,0x01,0x01,0x03,0x01,0x04,0x01,0x0c,0x01,0x05,
	0x01,0x09,0x01,0x06,0x01,0x13,0x01,0x16,0x01,0x1c,
	0x01,0x82,0x21,0x01,0x01,0x07,0x01,0x01,0x14,0x09,
	0x07,0x07,0x0f,0x07,0x0b,0x08,0x0d,0x0a,0x0a,0x0a,
	0x0c,0x0a,0x0b,0x09,0x01,0x01,0x0b,0x0a,0x0a,0x0b,
	0x0c,0x09,0x0b,0x0a,0x0c,0x09,0x0b,0x09,0x0c,0x0a,
	0x0b,0x09,0x0c,0x0a,0x0a,0x0a,0x0c,0x09,0x0b,0x09,
	0x0c,0x09,0x0b,0x09,0x0c,0x09,0x0b,0x09,0x0d,0x08,
	0x0b,0x09,0x0d,0x09,0x0b,0x09,0x0d,0x08,0x0c,0x09,
	0x0c,0x0a,0x0b,0x0a,0x0d,0x0a,0x0b,0x0b,0x0c,0x0a,
	0x0c,0x0b,0x0d,0x0a,0x0c,0x0c,0x0d,0x0b,0x0c,0x0d,
	0x0e,0x0a,0x0e,0x0e,0x0e,0x0a,0x10,0x0d,0x0f,0x0a,
	0x10,0x0f,0x0f,0x0a,0x10,0x11,0x10,0x0a,0x10,0x0a,
	0x19,0x0a,0x0f,0x0a,0x0a,0x03,0x11,0x09,0x10,0x09,
	0x0b,0x04,0x10,0x0a,0x0f,0x09,0x0c,0x05,0x11,0x09,
	0x0f,0x09,0x0c,0x07,0x10,0x0a,0x0f,0x09,0x0d,0x07,
	0x10,0x08,0x13,0x08,0x0d,0x09,0x12,0x06,0x14,0x05,
	0x10,0x06,0x13,0x02,0x01,0x06,0x15,0x05,0x2e,0x02,
	0x01,0x04,0x17,0x01,0x31,0x08,0x4b,0x09,0x4e,0x06,
	0x16,0x02,0x3d,0x02,0x18,0x01,0x80,0xa0,0x01
};

#define	threeLEN	464
unsigned char threetab[threeLEN] = {
	0x01,0x03,0x01,0x2a,0x01,0x24,0x01,0x06,0x01,0x04,
	0x01,0x03,0x01,0x11,0x01,0x05,0x01,0x01,0x01,0x02,
	0x01,0x04,0x01,0x07,0x01,0x08,0x01,0x04,0x01,0x04,
	0x01,0x01,0x01,0x02,0x01,0x02,0x01,0x05,0x01,0x0f,
	0x01,0x02,0x01,0x04,0x01,0x01,0x02,0x01,0x01,0x05,
	0x01,0x01,0x01,0x0d,0x01,0x09,0x01,0x03,0x01,0x14,
	0x01,0x02,0x01,0x04,0x01,0x07,0x01,0x06,0x01,0x04,
	0x01,0x04,0x01,0x03,0x01,0x08,0x01,0x04,0x01,0x09,
	0x01,0x09,0x01,0x21,0x01,0x02,0x01,0x0f,0x01,0x13,
	0x01,0x13,0x01,0x20,0x01,0x01,0x01,0x04,0x01,0x06,
	0x01,0x04,0x01,0x03,0x01,0x0e,0x01,0x05,0x01,0x04,
	0x01,0x09,0x01,0x0a,0x01,0x12,0x01,0x1e,0x01,0x10,
	0x01,0x80,0xa1,0x03,0x03,0x02,0x06,0x02,0x01,0x08,
	0x0e,0x08,0x0a,0x11,0x0e,0x06,0x0b,0x0a,0x01,0x06,
	0x0e,0x07,0x0b,0x09,0x02,0x06,0x0e,0x07,0x0a,0x0a,
	0x01,0x06,0x0e,0x07,0x0a,0x09,0x01,0x07,0x0e,0x06,
	0x0d,0x10,0x0e,0x06,0x02,0x01,0x0a,0x10,0x0f,0x09,
	0x09,0x0a,0x01,0x06,0x0e,0x09,0x0c,0x0f,0x0d,0x09,
	0x0c,0x10,0x02,0x01,0x0c,0x08,0x0c,0x0f,0x10,0x07,
	0x0c,0x02,0x01,0x0d,0x02,0x01,0x0c,0x08,0x0f,0x0d,
	0x02,0x02,0x0b,0x08,0x0e,0x0f,0x02,0x01,0x0c,0x0a,
	0x0d,0x0f,0x01,0x02,0x0c,0x09,0x10,0x0d,0x01,0x02,
	0x0c,0x01,0x01,0x09,0x0e,0x0e,0x02,0x01,0x0b,0x02,
	0x01,0x09,0x0e,0x0f,0x01,0x02,0x0b,0x01,0x01,0x0a,
	0x0f,0x0e,0x02,0x01,0x0e,0x0a,0x0e,0x10,0x01,0x02,
	0x01,0x01,0x09,0x01,0x01,0x0b,0x0e,0x11,0x02,0x01,
	0x02,0x01,0x0b,0x01,0x01,0x08,0x0f,0x0a,0x06,0x03,
	0x01,0x02,0x01,0x01,0x0b,0x01,0x02,0x08,0x0e,0x0a,
	0x09,0x06,0x02,0x01,0x0b,0x01,0x01,0x09,0x0f,0x08,
	0x0a,0x05,0x01,0x02,0x01,0x01,0x0b,0x01,0x01,0x09,
	0x10,0x0a,0x0b,0x09,0x01,0x01,0x0b,0x01,0x01,0x09,
	0x0f,0x01,0x01,0x08,0x0b,0x09,0x01,0x01,0x02,0x01,
	0x0b,0x01,0x01,0x06,0x01,0x01,0x0f,0x01,0x01,0x08,
	0x0d,0x0c,0x01,0x01,0x02,0x01,0x0a,0x02,0x01,0x06,
	0x01,0x01,0x11,0x01,0x02,0x02,0x02,0x01,0x10,0x09,
	0x01,0x01,0x02,0x01,0x0d,0x01,0x01,0x02,0x01,0x06,
	0x01,0x01,0x11,0x05,0x02,0x01,0x10,0x0c,0x02,0x01,
	0x02,0x01,0x0b,0x01,0x01,0x06,0x01,0x01,0x14,0x02,
	0x01,0x01,0x17,0x02,0x01,0x02,0x02,0x01,0x02,0x01,
	0x03,0x01,0x02,0x01,0x0b,0x01,0x01,0x02,0x01,0x03,
	0x01,0x01,0x02,0x01,0x0e,0x01,0x02,0x01,0x02,0x02,
	0x16,0x02,0x01,0x01,0x0f,0x01,0x02,0x01,0x0d,0x01,
	0x02,0x01,0x01,0x01,0x01,0x01,0x13,0x01,0x03,0x01,
	0x02,0x01,0x10,0x01,0x1a,0x01,0x10,0x01,0x01,0x01,
	0x02,0x01,0x03,0x01,0x45,0x01,0x02,0x01,0x0d,0x01,
	0x02,0x01,0x03,0x01,0x13,0x01,0x03,0x01,0x44,0x01,
	0x01,0x01,0x65,0x01
};

#define	fourLEN	493
unsigned char fourtab[fourLEN] = {
	0x0a,0x0a,0x01,0x02,0x02,0x0b,0x0e,0x07,0x03,0x02,
	0x04,0x06,0x04,0x03,0x01,0x07,0x0a,0x07,0x09,0x05,
	0x05,0x0b,0x09,0x06,0x06,0x02,0x01,0x06,0x05,0x05,
	0x01,0x04,0x09,0x07,0x05,0x02,0x01,0x07,0x04,0x05,
	0x04,0x02,0x08,0x07,0x05,0x03,0x01,0x06,0x04,0x06,
	0x03,0x03,0x07,0x07,0x03,0x01,0x04,0x06,0x05,0x07,
	0x04,0x01,0x07,0x06,0x04,0x04,0x02,0x05,0x05,0x06,
	0x04,0x03,0x06,0x06,0x04,0x03,0x03,0x05,0x05,0x06,
	0x05,0x02,0x06,0x05,0x05,0x03,0x04,0x04,0x05,0x06,
	0x04,0x03,0x05,0x06,0x04,0x05,0x02,0x05,0x05,0x06,
	0x04,0x03,0x05,0x05,0x05,0x04,0x03,0x05,0x05,0x05,
	0x05,0x03,0x05,0x05,0x05,0x04,0x03,0x05,0x04,0x06,
	0x04,0x03,0x05,0x06,0x05,0x04,0x03,0x04,0x05,0x06,
	0x04,0x03,0x05,0x06,0x05,0x04,0x03,0x04,0x05,0x06,
	0x05,0x02,0x05,0x06,0x05,0x05,0x02,0x05,0x04,0x06,
	0x05,0x02,0x05,0x06,0x05,0x06,0x01,0x05,0x05,0x06,
	0x05,0x01,0x06,0x06,0x06,0x05,0x01,0x05,0x05,0x06,
	0x0c,0x07,0x05,0x0c,0x05,0x06,0x0c,0x07,0x06,0x0b,
	0x05,0x06,0x0c,0x07,0x07,0x0a,0x06,0x07,0x0a,0x08,
	0x07,0x0a,0x07,0x07,0x09,0x08,0x08,0x0b,0x06,0x07,
	0x07,0x0a,0x09,0x0a,0x07,0x06,0x06,0x0a,0x0a,0x0b,
	0x06,0x05,0x08,0x0a,0x0a,0x0c,0x03,0x05,0x0a,0x0b,
	0x04,0x01,0x01,0x01,0x05,0x11,0x0b,0x11,0x07,0x10,
	0x0b,0x11,0x08,0x0b,0x02,0x04,0x0c,0x0b,0x0c,0x13,
	0x0b,0x0a,0x0a,0x18,0x09,0x0a,0x09,0x0d,0x04,0x08,
	0x0b,0x0a,0x08,0x0c,0x05,0x09,0x0d,0x09,0x07,0x0e,
	0x04,0x09,0x08,0x04,0x05,0x09,0x08,0x01,0x01,0x09,
	0x05,0x09,0x07,0x06,0x07,0x09,0x07,0x0a,0x06,0x0a,
	0x06,0x07,0x08,0x09,0x07,0x09,0x07,0x08,0x08,0x08,
	0x0a,0x08,0x06,0x0b,0x05,0x07,0x06,0x01,0x02,0x08,
	0x05,0x01,0x08,0x07,0x08,0x08,0x05,0x0b,0x05,0x07,
	0x03,0x02,0x05,0x04,0x04,0x07,0x05,0x02,0x03,0x06,
	0x04,0x0b,0x05,0x06,0x03,0x04,0x03,0x05,0x06,0x07,
	0x08,0x06,0x06,0x09,0x05,0x06,0x02,0x04,0x02,0x06,
	0x0b,0x06,0x04,0x02,0x03,0x05,0x05,0x0a,0x04,0x0b,
	0x03,0x06,0x03,0x01,0x05,0x03,0x03,0x06,0x03,0x03,
	0x03,0x05,0x04,0x0a,0x04,0x09,0x04,0x0a,0x05,0x02,
	0x04,0x01,0x03,0x06,0x02,0x03,0x03,0x05,0x04,0x02,
	0x02,0x05,0x04,0x0a,0x03,0x0a,0x04,0x03,0x03,0x03,
	0x04,0x05,0x03,0x02,0x04,0x05,0x03,0x02,0x03,0x05,
	0x03,0x02,0x03,0x05,0x03,0x0a,0x03,0x04,0x02,0x04,
	0x07,0x06,0x01,0x03,0x04,0x05,0x01,0x02,0x05,0x09,
	0x04,0x09,0x04,0x09,0x04,0x08,0x06,0x0a,0x04,0x09,
	0x04,0x09,0x04,0x09,0x03,0x0b,0x02,0x0a,0x05,0x0d,
	0x04,0x09,0x03,0x0a,0x03,0x0b,0x02,0x19,0x07,0x0a,
	0x04,0x09,0x03,0x0b,0x03,0x1b,0x02,0x0e,0x01,0x02,
	0x01,0x0a,0x04,0x0a,0x03,0x0a,0x01,0x02,0x04,0x0b,
	0x01,0x0c,0x01,0x1e,0x04,0x0a,0x03,0x0e,0x03,0x0b,
	0x01,0x0f,0x01,0x1e,0x03,0x0a,0x02,0x0f,0x02,0x0d,
	0x01,0x30,0x03
};

#define	fiveLEN	365
unsigned char fivetab[fiveLEN] = {
	0x01,0x41,0x09,0x14,0x01,0x05,0x0c,0x09,0x06,0x06,
	0x02,0x02,0x01,0x06,0x03,0x02,0x08,0x06,0x04,0x01,
	0x03,0x05,0x04,0x08,0x04,0x03,0x09,0x05,0x04,0x03,
	0x02,0x04,0x04,0x05,0x01,0x04,0x02,0x03,0x0a,0x04,
	0x04,0x04,0x02,0x04,0x04,0x04,0x02,0x04,0x02,0x03,
	0x04,0x02,0x04,0x05,0x04,0x03,0x02,0x04,0x04,0x04,
	0x03,0x04,0x03,0x01,0x03,0x04,0x04,0x04,0x04,0x03,
	0x03,0x03,0x04,0x04,0x04,0x04,0x04,0x05,0x05,0x05,
	0x04,0x04,0x02,0x03,0x04,0x04,0x04,0x04,0x04,0x04,
	0x06,0x04,0x04,0x05,0x01,0x03,0x04,0x05,0x03,0x04,
	0x04,0x04,0x06,0x05,0x04,0x04,0x02,0x02,0x04,0x05,
	0x03,0x04,0x04,0x04,0x06,0x05,0x04,0x05,0x01,0x02,
	0x04,0x05,0x04,0x03,0x04,0x04,0x07,0x05,0x04,0x04,
	0x02,0x02,0x04,0x05,0x03,0x04,0x04,0x04,0x07,0x05,
	0x04,0x05,0x01,0x02,0x04,0x05,0x03,0x04,0x04,0x04,
	0x08,0x05,0x04,0x04,0x02,0x02,0x04,0x04,0x03,0x04,
	0x04,0x05,0x09,0x04,0x05,0x04,0x02,0x02,0x04,0x03,
	0x03,0x04,0x04,0x07,0x09,0x04,0x04,0x03,0x01,0x01,
	0x01,0x02,0x03,0x04,0x04,0x04,0x05,0x05,0x05,0x01,
	0x04,0x04,0x03,0x04,0x01,0x04,0x03,0x04,0x03,0x07,
	0x04,0x05,0x05,0x01,0x04,0x04,0x03,0x04,0x01,0x04,
	0x03,0x04,0x02,0x02,0x03,0x04,0x03,0x06,0x05,0x02,
	0x04,0x04,0x02,0x02,0x01,0x01,0x02,0x03,0x03,0x03,
	0x02,0x04,0x02,0x07,0x02,0x05,0x05,0x03,0x04,0x04,
	0x02,0x02,0x03,0x04,0x08,0x05,0x01,0x02,0x02,0x05,
	0x02,0x05,0x0d,0x04,0x02,0x01,0x03,0x07,0x05,0x07,
	0x03,0x07,0x03,0x01,0x02,0x03,0x04,0x01,0x06,0x07,
	0x03,0x02,0x01,0x05,0x06,0x07,0x04,0x08,0x06,0x06,
	0x06,0x08,0x03,0x01,0x02,0x07,0x05,0x08,0x04,0x0a,
	0x04,0x06,0x07,0x08,0x01,0x01,0x03,0x07,0x02,0x01,
	0x04,0x0a,0x03,0x0a,0x06,0x03,0x06,0x09,0x01,0x01,
	0x02,0x01,0x03,0x07,0x01,0x01,0x05,0x0b,0x05,0x0a,
	0x08,0x04,0x01,0x02,0x01,0x08,0x01,0x02,0x02,0x01,
	0x01,0x0a,0x01,0x01,0x01,0x01,0x02,0x0b,0x02,0x01,
	0x01,0x0a,0x08,0x02,0x01,0x07,0x01,0x08,0x01,0x02,
	0x01,0x01,0x02,0x05,0x01,0x08,0x01,0x11,0x01,0x0f,
	0x06,0x19,0x01,0x01,0x01
};

#define	sixLEN	1232
unsigned char sixtab[sixLEN] = {
	0x01,0x2a,0x01,0x3d,0x01,0x08,0x01,0x01,0x01,0x05,
	0x01,0x01,0x02,0x01,0x01,0x09,0x01,0x01,0x01,0x03,
	0x01,0x27,0x01,0x0d,0x01,0x01,0x01,0x04,0x01,0x02,
	0x01,0x01,0x01,0x0a,0x01,0x01,0x01,0x02,0x01,0x09,
	0x01,0x02,0x01,0x07,0x01,0x0b,0x01,0x07,0x01,0x01,
	0x01,0x0f,0x01,0x01,0x01,0x03,0x01,0x01,0x01,0x13,
	0x01,0x03,0x01,0x01,0x01,0x01,0x01,0x05,0x01,0x05,
	0x01,0x02,0x01,0x08,0x01,0x0a,0x01,0x01,0x01,0x04,
	0x01,0x01,0x01,0x01,0x01,0x02,0x01,0x05,0x01,0x01,
	0x01,0x04,0x01,0x01,0x01,0x03,0x01,0x11,0x01,0x01,
	0x01,0x02,0x01,0x02,0x01,0x06,0x01,0x01,0x01,0x04,
	0x01,0x02,0x01,0x02,0x01,0x03,0x01,0x01,0x01,0x06,
	0x01,0x05,0x01,0x01,0x01,0x01,0x01,0x04,0x01,0x09,
	0x02,0x03,0x01,0x01,0x01,0x02,0x01,0x02,0x01,0x09,
	0x02,0x0a,0x01,0x01,0x02,0x05,0x01,0x01,0x01,0x0b,
	0x02,0x06,0x01,0x01,0x01,0x04,0x01,0x02,0x01,0x04,
	0x01,0x01,0x01,0x02,0x01,0x02,0x01,0x04,0x01,0x02,
	0x01,0x06,0x01,0x08,0x02,0x0c,0x01,0x02,0x01,0x01,
	0x01,0x01,0x01,0x02,0x01,0x07,0x01,0x07,0x01,0x09,
	0x01,0x04,0x01,0x02,0x01,0x02,0x02,0x01,0x01,0x14,
	0x01,0x07,0x02,0x04,0x01,0x02,0x01,0x0a,0x01,0x01,
	0x01,0x01,0x01,0x0d,0x03,0x09,0x01,0x07,0x01,0x08,
	0x01,0x01,0x01,0x08,0x01,0x02,0x01,0x09,0x02,0x01,
	0x01,0x04,0x01,0x03,0x01,0x01,0x01,0x01,0x01,0x0c,
	0x01,0x01,0x01,0x04,0x01,0x01,0x01,0x04,0x01,0x07,
	0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x02,0x01,0x0a,
	0x01,0x01,0x01,0x09,0x01,0x01,0x01,0x04,0x01,0x04,
	0x01,0x01,0x01,0x02,0x01,0x01,0x01,0x02,0x01,0x02,
	0x01,0x07,0x01,0x01,0x01,0x12,0x01,0x05,0x01,0x04,
	0x01,0x01,0x01,0x07,0x02,0x07,0x01,0x02,0x01,0x07,
	0x01,0x02,0x01,0x01,0x01,0x01,0x02,0x01,0x02,0x06,
	0x01,0x05,0x01,0x01,0x01,0x04,0x01,0x06,0x01,0x02,
	0x01,0x04,0x01,0x02,0x01,0x01,0x01,0x04,0x01,0x01,
	0x02,0x09,0x01,0x01,0x02,0x0b,0x03,0x05,0x01,0x05,
	0x01,0x01,0x02,0x04,0x01,0x01,0x02,0x06,0x02,0x01,
	0x01,0x09,0x01,0x14,0x06,0x01,0x01,0x06,0x01,0x01,
	0x01,0x0b,0x01,0x01,0x01,0x04,0x01,0x0a,0x03,0x07,
	0x01,0x05,0x01,0x01,0x01,0x03,0x01,0x09,0x01,0x09,
	0x01,0x07,0x01,0x02,0x01,0x03,0x02,0x0c,0x01,0x01,
	0x01,0x01,0x01,0x04,0x01,0x02,0x01,0x06,0x01,0x02,
	0x01,0x03,0x02,0x01,0x01,0x03,0x01,0x04,0x01,0x02,
	0x01,0x09,0x01,0x08,0x01,0x01,0x01,0x05,0x01,0x02,
	0x01,0x07,0x01,0x09,0x01,0x08,0x01,0x07,0x01,0x01,
	0x01,0x02,0x01,0x01,0x02,0x03,0x01,0x01,0x01,0x02,
	0x01,0x02,0x01,0x01,0x01,0x07,0x02,0x04,0x01,0x03,
	0x01,0x01,0x01,0x02,0x01,0x02,0x01,0x04,0x01,0x02,
	0x01,0x01,0x01,0x04,0x01,0x02,0x01,0x01,0x02,0x03,
	0x01,0x01,0x02,0x07,0x01,0x06,0x02,0x0e,0x01,0x07,
	0x01,0x03,0x01,0x01,0x01,0x18,0x01,0x08,0x01,0x0a,
	0x01,0x04,0x01,0x01,0x02,0x0d,0x01,0x1e,0x01,0x26,
	0x01,0x01,0x01,0x01,0x01,0x1c,0x01,0x01,0x0d,0x0d,
	0x08,0x0a,0x0b,0x0b,0x08,0x01,0x01,0x09,0x0c,0x0b,
	0x08,0x02,0x01,0x08,0x0c,0x0b,0x07,0x0c,0x0c,0x0a,
	0x08,0x02,0x01,0x08,0x0d,0x02,0x01,0x08,0x02,0x01,
	0x04,0x02,0x01,0x08,0x02,0x01,0x0a,0x02,0x01,0x08,
	0x02,0x01,0x05,0x02,0x01,0x08,0x01,0x01,0x05,0x01,
	0x05,0x02,0x01,0x08,0x02,0x01,0x05,0x01,0x01,0x08,
	0x02,0x01,0x02,0x01,0x02,0x01,0x05,0x01,0x02,0x08,
	0x01,0x01,0x05,0x02,0x01,0x08,0x01,0x02,0x02,0x01,
	0x01,0x01,0x06,0x01,0x01,0x09,0x01,0x02,0x04,0x01,
	0x02,0x08,0x01,0x02,0x02,0x04,0x01,0x01,0x04,0x01,
	0x02,0x08,0x01,0x02,0x04,0x01,0x02,0x07,0x02,0x02,
	0x02,0x07,0x05,0x01,0x01,0x0b,0x05,0x01,0x02,0x08,
	0x01,0x01,0x03,0x09,0x05,0x01,0x02,0x08,0x01,0x01,
	0x05,0x0a,0x06,0x0a,0x08,0x03,0x01,0x05,0x01,0x02,
	0x01,0x02,0x01,0x02,0x01,0x05,0x01,0x02,0x05,0x01,
	0x01,0x0a,0x07,0x04,0x02,0x02,0x01,0x02,0x01,0x06,
	0x01,0x01,0x02,0x01,0x02,0x02,0x01,0x02,0x01,0x02,
	0x01,0x02,0x02,0x01,0x01,0x0f,0x02,0x01,0x02,0x01,
	0x02,0x01,0x02,0x02,0x01,0x02,0x01,0x03,0x01,0x02,
	0x01,0x02,0x02,0x01,0x02,0x01,0x02,0x02,0x01,0x02,
	0x01,0x06,0x01,0x02,0x01,0x29,0x01,0x02,0x02,0x02,
	0x01,0x02,0x01,0x03,0x01,0x84,0x03,0x01,0x04,0x01,
	0x08,0x01,0x15,0x01,0x04,0x01,0x0e,0x01,0x16,0x01,
	0x01,0x01,0x04,0x01,0x01,0x01,0x09,0x01,0x05,0x01,
	0x02,0x01,0x01,0x01,0x04,0x01,0x01,0x01,0x03,0x01,
	0x01,0x02,0x05,0x01,0x03,0x01,0x01,0x01,0x06,0x01,
	0x01,0x01,0x03,0x01,0x02,0x01,0x04,0x01,0x01,0x01,
	0x03,0x01,0x04,0x01,0x04,0x01,0x03,0x01,0x02,0x01,
	0x01,0x01,0x07,0x01,0x04,0x01,0x01,0x01,0x0a,0x01,
	0x02,0x01,0x05,0x01,0x01,0x01,0x03,0x01,0x06,0x01,
	0x01,0x01,0x03,0x01,0x06,0x01,0x01,0x01,0x02,0x01,
	0x04,0x01,0x08,0x01,0x01,0x03,0x05,0x01,0x01,0x04,
	0x04,0x01,0x02,0x01,0x0c,0x01,0x01,0x03,0x01,0x01,
	0x01,0x01,0x08,0x01,0x01,0x01,0x01,0x02,0x05,0x01,
	0x07,0x01,0x09,0x01,0x02,0x01,0x01,0x01,0x08,0x01,
	0x06,0x01,0x03,0x02,0x04,0x01,0x02,0x01,0x08,0x01,
	0x01,0x01,0x06,0x01,0x07,0x01,0x0d,0x01,0x01,0x01,
	0x05,0x01,0x02,0x01,0x02,0x01,0x01,0x01,0x02,0x01,
	0x0e,0x01,0x08,0x01,0x01,0x01,0x05,0x01,0x03,0x01,
	0x06,0x02,0x08,0x01,0x0f,0x01,0x01,0x01,0x05,0x01,
	0x07,0x01,0x01,0x01,0x03,0x01,0x01,0x01,0x14,0x01,
	0x01,0x01,0x04,0x01,0x02,0x01,0x01,0x01,0x05,0x01,
	0x02,0x01,0x07,0x01,0x04,0x01,0x01,0x01,0x01,0x01,
	0x03,0x01,0x09,0x01,0x04,0x01,0x02,0x01,0x0a,0x01,
	0x0a,0x01,0x06,0x01,0x05,0x01,0x01,0x01,0x02,0x01,
	0x01,0x01,0x06,0x01,0x02,0x01,0x06,0x01,0x01,0x01,
	0x0f,0x01,0x01,0x01,0x07,0x01,0x06,0x01,0x02,0x01,
	0x01,0x01,0x02,0x01,0x05,0x01,0x08,0x01,0x04,0x01,
	0x02,0x01,0x01,0x01,0x02,0x01,0x03,0x01,0x07,0x01,
	0x02,0x01,0x01,0x01,0x07,0x01,0x0b,0x01,0x10,0x01,
	0x0a,0x01,0x0a,0x01,0x04,0x01,0x03,0x01,0x01,0x01,
	0x0e,0x01,0x06,0x01,0x01,0x02,0x01,0x01,0x0d,0x01,
	0x04,0x01,0x1b,0x01,0x09,0x01,0x10,0x01,0x05,0x01,
	0x01,0x01,0x0e,0x01,0x02,0x01,0x02,0x01,0x02,0x01,
	0x01,0x01,0x0d,0x01,0x0a,0x01,0x0e,0x01,0x01,0x01,
	0x01,0x01,0x02,0x01,0x1d,0x01,0x01,0x01,0x06,0x01,
	0x12,0x01,0x09,0x01,0x03,0x01,0x14,0x01,0x02,0x01,
	0x01,0x02,0x01,0x01,0x06,0x01,0x07,0x01,0x04,0x01,
	0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x02,0x01,0x01,
	0x02,0x01,0x01,0x01,0x09,0x01,0x01,0x01,0x09,0x01,
	0x06,0x01,0x07,0x01,0x01,0x01,0x01,0x01,0x04,0x01,
	0x04,0x01,0x05,0x01,0x01,0x01,0x01,0x01,0x03,0x01,
	0x03,0x01,0x01,0x01,0x01,0x01,0x07,0x01,0x1a,0x01,
	0x01,0x01,0x0d,0x01,0x0e,0x01,0x18,0x01,0x23,0x01,
	0x08,0x01,0x07,0x01,0x08,0x01,0x05,0x01,0x05,0x01,
	0x04,0x01,0x09,0x01,0x05,0x01,0x0c,0x01,0x01,0x01,
	0x01,0x01,0x07,0x01,0x04,0x01,0x01,0x01,0x10,0x01,
	0x08,0x01,0x01,0x01,0x08,0x01,0x05,0x01,0x02,0x01,
	0x0b,0x01,0x01,0x01,0x08,0x01,0x07,0x01,0x05,0x01,
	0x19,0x01,0x22,0x01,0x03,0x01,0x01,0x01,0x01,0x01,
	0x06,0x01,0x18,0x01,0x08,0x01,0x03,0x01,0x01,0x01,
	0x0f,0x01,0x3d,0x01,0x08,0x01,0x1a,0x01,0x7d,0x01,
	0x01,0x01
};

#define	sevenLEN	733
unsigned char seventab[sevenLEN] = {
	0x01,0x31,0x01,0x0d,0x01,0x0d,0x01,0x12,0x01,0x04,
	0x01,0x07,0x01,0x05,0x01,0x26,0x01,0x0b,0x01,0x05,
	0x01,0x1a,0x01,0x07,0x01,0x06,0x02,0x05,0x01,0x09,
	0x02,0x06,0x01,0x09,0x01,0x07,0x01,0x03,0x01,0x07,
	0x01,0x01,0x01,0x02,0x01,0x01,0x02,0x09,0x01,0x15,
	0x01,0x07,0x01,0x0b,0x01,0x01,0x02,0x02,0x01,0x0e,
	0x02,0x0d,0x01,0x09,0x01,0x02,0x01,0x02,0x01,0x01,
	0x01,0x05,0x01,0x01,0x01,0x05,0x01,0x18,0x03,0x05,
	0x01,0x01,0x02,0x01,0x01,0x02,0x02,0x0b,0x01,0x01,
	0x01,0x04,0x01,0x02,0x02,0x05,0x01,0x04,0x01,0x05,
	0x02,0x1d,0x01,0x07,0x01,0x02,0x01,0x03,0x01,0x03,
	0x01,0x01,0x01,0x05,0x01,0x0e,0x03,0x02,0x01,0x04,
	0x01,0x09,0x01,0x05,0x01,0x01,0x01,0x02,0x01,0x04,
	0x02,0x02,0x01,0x02,0x01,0x0c,0x01,0x07,0x02,0x01,
	0x01,0x05,0x02,0x09,0x01,0x01,0x02,0x10,0x01,0x01,
	0x02,0x01,0x01,0x02,0x01,0x01,0x01,0x01,0x01,0x01,
	0x02,0x02,0x01,0x0c,0x01,0x01,0x01,0x02,0x02,0x01,
	0x02,0x0a,0x01,0x06,0x01,0x04,0x01,0x06,0x01,0x03,
	0x01,0x01,0x01,0x08,0x01,0x04,0x01,0x0a,0x01,0x05,
	0x01,0x01,0x01,0x12,0x01,0x02,0x02,0x14,0x01,0x01,
	0x02,0x01,0x03,0x0f,0x01,0x01,0x01,0x03,0x02,0x02,
	0x01,0x02,0x01,0x01,0x02,0x01,0x01,0x0c,0x01,0x02,
	0x01,0x04,0x01,0x07,0x01,0x0c,0x01,0x05,0x01,0x01,
	0x02,0x3d,0x01,0x02,0x01,0x04,0x02,0x02,0x03,0x0b,
	0x01,0x01,0x01,0x02,0x01,0x02,0x01,0x01,0x01,0x02,
	0x01,0x07,0x02,0x04,0x01,0x01,0x01,0x04,0x01,0x07,
	0x01,0x05,0x01,0x05,0x03,0x05,0x01,0x02,0x01,0x02,
	0x01,0x04,0x01,0x01,0x01,0x05,0x01,0x07,0x02,0x01,
	0x01,0x04,0x01,0x07,0x01,0x01,0x01,0x03,0x01,0x03,
	0x01,0x01,0x02,0x0a,0x01,0x09,0x01,0x02,0x01,0x09,
	0x01,0x03,0x01,0x01,0x01,0x05,0x01,0x04,0x01,0x02,
	0x01,0x37,0x0c,0x0e,0x07,0x08,0x0b,0x0b,0x05,0x01,
	0x01,0x09,0x11,0x0b,0x07,0x08,0x07,0x03,0x07,0x08,
	0x08,0x07,0x02,0x01,0x07,0x03,0x07,0x07,0x08,0x06,
	0x04,0x01,0x02,0x07,0x07,0x07,0x07,0x07,0x04,0x07,
	0x0a,0x08,0x04,0x07,0x06,0x07,0x0b,0x05,0x01,0x01,
	0x04,0x07,0x05,0x08,0x0a,0x08,0x03,0x07,0x05,0x07,
	0x0c,0x05,0x01,0x01,0x04,0x07,0x05,0x06,0x06,0x01,
	0x06,0x04,0x01,0x02,0x03,0x04,0x01,0x02,0x04,0x07,
	0x03,0x01,0x02,0x01,0x06,0x05,0x01,0x02,0x02,0x04,
	0x01,0x02,0x05,0x07,0x02,0x01,0x03,0x01,0x05,0x04,
	0x01,0x02,0x03,0x04,0x01,0x02,0x04,0x08,0x02,0x01,
	0x09,0x04,0x01,0x02,0x03,0x04,0x01,0x02,0x05,0x07,
	0x0c,0x04,0x01,0x02,0x03,0x04,0x01,0x02,0x04,0x08,
	0x0c,0x07,0x03,0x04,0x01,0x03,0x04,0x01,0x01,0x05,
	0x0d,0x08,0x02,0x04,0x01,0x03,0x04,0x01,0x01,0x05,
	0x0d,0x08,0x03,0x08,0x06,0x05,0x05,0x01,0x07,0x07,
	0x03,0x01,0x01,0x02,0x01,0x03,0x01,0x01,0x02,0x01,
	0x01,0x06,0x01,0x01,0x0b,0x08,0x05,0x07,0x03,0x01,
	0x01,0x08,0x01,0x01,0x09,0x09,0x04,0x01,0x02,0x05,
	0x01,0x02,0x01,0x01,0x02,0x08,0x09,0x08,0x01,0x01,
	0x02,0x01,0x04,0x03,0x01,0x05,0x02,0x02,0x01,0x02,
	0x01,0x02,0x01,0x01,0x08,0x03,0x01,0x0b,0x04,0x01,
	0x02,0x12,0x08,0x03,0x02,0x0d,0x01,0x01,0x02,0x18,
	0x09,0x28,0x09,0x01,0x02,0x2a,0x0c,0x2c,0x07,0x01,
	0x01,0x01,0x01,0x2e,0x07,0x01,0x01,0x31,0x01,0x01,
	0x01,0x01,0x04,0x33,0x01,0x02,0x01,0x01,0x05,0x3c,
	0x01,0x01,0x02,0x3a,0x01,0x03,0x03,0x34,0x01,0x03,
	0x02,0x04,0x04,0x35,0x01,0x01,0x0c,0x0d,0x03,0x01,
	0x04,0x08,0x01,0x0e,0x02,0x01,0x06,0x01,0x08,0x0b,
	0x06,0x01,0x01,0x0a,0x02,0x0b,0x08,0x06,0x05,0x09,
	0x01,0x01,0x06,0x01,0x01,0x08,0x04,0x0b,0x04,0x01,
	0x02,0x08,0x09,0x08,0x02,0x01,0x04,0x08,0x02,0x01,
	0x04,0x08,0x01,0x02,0x03,0x0a,0x05,0x01,0x01,0x05,
	0x04,0x08,0x01,0x02,0x05,0x01,0x01,0x06,0x01,0x01,
	0x02,0x01,0x01,0x09,0x01,0x02,0x01,0x01,0x02,0x08,
	0x01,0x01,0x05,0x0b,0x01,0x01,0x02,0x09,0x02,0x01,
	0x02,0x01,0x01,0x02,0x01,0x05,0x02,0x01,0x02,0x01,
	0x01,0x06,0x01,0x02,0x01,0x02,0x01,0x08,0x01,0x02,
	0x01,0x01,0x02,0x02,0x01,0x05,0x02,0x0c,0x02,0x09,
	0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x05,0x02,0x01,
	0x02,0x01,0x01,0x0c,0x01,0x0b,0x01,0x02,0x01,0x02,
	0x01,0x05,0x01,0x10,0x02,0x02,0x01,0x09,0x01,0x05,
	0x01,0x0f,0x01
};

#define	eightLEN	461
unsigned char eighttab[eightLEN] = {
	0x01,0x0d,0x01,0x81,0xf7,0x01,0x04,0x02,0x0b,0x01,
	0x0f,0x01,0x07,0x01,0x02,0x01,0x09,0x01,0x05,0x01,
	0x02,0x01,0x81,0x2c,0x04,0x1b,0x09,0x0b,0x01,0x01,
	0x01,0x01,0x02,0x0a,0x03,0x01,0x01,0x0a,0x0b,0x0b,
	0x04,0x01,0x01,0x0a,0x02,0x0d,0x08,0x0b,0x06,0x0a,
	0x04,0x0b,0x08,0x0a,0x07,0x09,0x06,0x09,0x08,0x0a,
	0x07,0x09,0x08,0x08,0x07,0x01,0x01,0x08,0x08,0x09,
	0x07,0x08,0x05,0x01,0x02,0x08,0x01,0x01,0x07,0x09,
	0x07,0x07,0x04,0x01,0x01,0x02,0x01,0x08,0x08,0x0b,
	0x05,0x06,0x04,0x01,0x02,0x01,0x01,0x08,0x08,0x09,
	0x01,0x01,0x06,0x05,0x05,0x01,0x01,0x02,0x01,0x06,
	0x01,0x01,0x08,0x0b,0x05,0x06,0x05,0x01,0x01,0x02,
	0x01,0x08,0x01,0x01,0x06,0x08,0x01,0x02,0x05,0x01,
	0x01,0x03,0x06,0x01,0x01,0x02,0x01,0x08,0x01,0x01,
	0x06,0x01,0x01,0x09,0x05,0x01,0x01,0x04,0x05,0x01,
	0x02,0x01,0x01,0x06,0x01,0x02,0x07,0x0b,0x05,0x02,
	0x01,0x03,0x06,0x01,0x02,0x01,0x01,0x06,0x01,0x01,
	0x01,0x01,0x06,0x01,0x01,0x09,0x02,0x01,0x02,0x01,
	0x02,0x03,0x01,0x01,0x04,0x01,0x02,0x01,0x01,0x06,
	0x01,0x01,0x08,0x01,0x01,0x0d,0x01,0x01,0x03,0x02,
	0x01,0x01,0x05,0x01,0x02,0x01,0x01,0x06,0x01,0x01,
	0x01,0x01,0x08,0x02,0x01,0x08,0x01,0x01,0x03,0x01,
	0x0b,0x01,0x01,0x01,0x02,0x05,0x01,0x02,0x01,0x01,
	0x01,0x01,0x06,0x01,0x01,0x0c,0x02,0x01,0x0b,0x01,
	0x02,0x01,0x01,0x06,0x01,0x01,0x01,0x01,0x04,0x01,
	0x05,0x0d,0x01,0x02,0x0c,0x01,0x01,0x02,0x01,0x08,
	0x01,0x01,0x01,0x01,0x06,0x01,0x01,0x0f,0x0d,0x01,
	0x02,0x01,0x01,0x06,0x01,0x01,0x01,0x02,0x03,0x01,
	0x05,0x02,0x01,0x0c,0x01,0x01,0x0d,0x01,0x01,0x02,
	0x01,0x08,0x01,0x01,0x01,0x01,0x04,0x01,0x03,0x01,
	0x02,0x01,0x01,0x0d,0x0d,0x01,0x02,0x01,0x01,0x02,
	0x01,0x03,0x01,0x01,0x01,0x02,0x03,0x01,0x01,0x01,
	0x03,0x02,0x01,0x01,0x01,0x0c,0x02,0x01,0x0e,0x01,
	0x01,0x02,0x01,0x08,0x01,0x01,0x01,0x01,0x01,0x01,
	0x02,0x01,0x03,0x01,0x01,0x01,0x02,0x0e,0x0c,0x01,
	0x01,0x01,0x01,0x02,0x01,0x02,0x01,0x01,0x01,0x03,
	0x01,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x02,
	0x03,0x01,0x01,0x01,0x01,0x0f,0x02,0x01,0x05,0x02,
	0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x01,0x01,0x02,
	0x01,0x01,0x01,0x03,0x01,0x02,0x01,0x01,0x01,0x01,
	0x01,0x01,0x01,0x01,0x02,0x01,0x03,0x01,0x01,0x0f,
	0x01,0x02,0x01,0x02,0x01,0x02,0x02,0x01,0x01,0x06,
	0x01,0x01,0x02,0x02,0x01,0x01,0x01,0x02,0x01,0x05,
	0x01,0x04,0x01,0x01,0x01,0x01,0x05,0x01,0x01,0x12,
	0x02,0x11,0x06,0x01,0x01,0x02,0x01,0x0e,0x09,0x01,
	0x01,0x11,0x02,0x01,0x01,0x14,0x04,0x01,0x01,0x15,
	0x01
};

#define	nineLEN	689
unsigned char ninetab[nineLEN] = {
	0x01,0x01,0x01,0x3e,0x01,0x02,0x01,0x01,0x02,0x3d,
	0x07,0x3b,0x06,0x32,0x01,0x02,0x01,0x01,0x02,0x01,
	0x05,0x33,0x01,0x02,0x01,0x04,0x04,0x33,0x04,0x01,
	0x07,0x30,0x03,0x01,0x09,0x30,0x0b,0x01,0x01,0x12,
	0x01,0x1a,0x01,0x01,0x08,0x15,0x02,0x16,0x0d,0x0a,
	0x02,0x02,0x01,0x05,0x01,0x05,0x01,0x0e,0x0e,0x09,
	0x03,0x05,0x01,0x02,0x03,0x09,0x01,0x08,0x0d,0x05,
	0x02,0x04,0x01,0x05,0x02,0x02,0x03,0x10,0x0e,0x05,
	0x02,0x04,0x02,0x04,0x03,0x03,0x02,0x04,0x03,0x09,
	0x0d,0x04,0x03,0x04,0x02,0x03,0x03,0x04,0x02,0x04,
	0x03,0x04,0x01,0x04,0x03,0x01,0x08,0x05,0x03,0x03,
	0x02,0x04,0x03,0x03,0x03,0x04,0x02,0x05,0x01,0x03,
	0x04,0x01,0x07,0x05,0x03,0x04,0x01,0x04,0x03,0x04,
	0x02,0x04,0x03,0x04,0x01,0x04,0x03,0x01,0x06,0x05,
	0x03,0x04,0x02,0x04,0x02,0x04,0x02,0x04,0x04,0x04,
	0x01,0x03,0x09,0x05,0x03,0x04,0x02,0x03,0x03,0x04,
	0x03,0x04,0x02,0x04,0x02,0x03,0x09,0x05,0x02,0x04,
	0x02,0x04,0x03,0x03,0x03,0x04,0x03,0x07,0x0b,0x04,
	0x03,0x04,0x02,0x03,0x03,0x03,0x03,0x04,0x02,0x04,
	0x02,0x04,0x09,0x05,0x02,0x04,0x02,0x03,0x03,0x04,
	0x02,0x04,0x03,0x04,0x01,0x04,0x0a,0x04,0x03,0x03,
	0x02,0x03,0x03,0x04,0x02,0x0f,0x04,0x01,0x06,0x05,
	0x03,0x03,0x01,0x04,0x03,0x03,0x02,0x09,0x02,0x06,
	0x0a,0x04,0x03,0x02,0x02,0x04,0x02,0x04,0x02,0x09,
	0x01,0x08,0x09,0x06,0x01,0x02,0x01,0x0b,0x01,0x09,
	0x01,0x09,0x09,0x08,0x02,0x08,0x02,0x0d,0x01,0x08,
	0x08,0x08,0x02,0x08,0x01,0x02,0x02,0x08,0x01,0x04,
	0x01,0x04,0x09,0x08,0x02,0x01,0x02,0x08,0x02,0x0d,
	0x01,0x06,0x07,0x08,0x02,0x01,0x02,0x08,0x01,0x02,
	0x02,0x08,0x01,0x02,0x01,0x04,0x08,0x09,0x01,0x01,
	0x02,0x02,0x01,0x08,0x02,0x0b,0x01,0x04,0x09,0x02,
	0x01,0x07,0x02,0x02,0x01,0x08,0x02,0x01,0x02,0x0b,
	0x01,0x02,0x09,0x01,0x01,0x08,0x02,0x01,0x02,0x02,
	0x01,0x06,0x01,0x01,0x02,0x0e,0x09,0x0b,0x01,0x01,
	0x02,0x01,0x02,0x08,0x03,0x0d,0x09,0x01,0x01,0x09,
	0x01,0x01,0x02,0x02,0x01,0x08,0x01,0x02,0x01,0x0c,
	0x09,0x02,0x01,0x08,0x01,0x02,0x02,0x01,0x01,0x09,
	0x01,0x01,0x02,0x0b,0x0a,0x01,0x01,0x09,0x01,0x01,
	0x02,0x01,0x02,0x08,0x01,0x02,0x01,0x0e,0x09,0x01,
	0x01,0x02,0x01,0x05,0x01,0x02,0x01,0x02,0x01,0x02,
	0x01,0x06,0x01,0x01,0x02,0x0d,0x09,0x02,0x01,0x08,
	0x01,0x02,0x02,0x01,0x01,0x02,0x01,0x03,0x02,0x01,
	0x01,0x13,0x0d,0x10,0x04,0x01,0x01,0x14,0x0c,0x13,
	0x01,0x02,0x04,0x13,0x0b,0x14,0x01,0x01,0x06,0x10,
	0x0d,0x12,0x09,0x12,0x0c,0x12,0x08,0x01,0x01,0x16,
	0x0b,0x11,0x06,0x01,0x01,0x1b,0x0c,0x11,0x01,0x02,
	0x01,0x03,0x01,0x02,0x01,0x18,0x01,0x01,0x08,0x02,
	0x01,0x0b,0x02,0x01,0x02,0x01,0x01,0x06,0x01,0x02,
	0x01,0x19,0x0b,0x02,0x01,0x05,0x01,0x02,0x02,0x02,
	0x01,0x01,0x01,0x07,0x03,0x1c,0x01,0x01,0x0b,0x0b,
	0x03,0x08,0x02,0x01,0x04,0x1c,0x0e,0x08,0x02,0x01,
	0x03,0x08,0x04,0x02,0x01,0x09,0x02,0x12,0x03,0x02,
	0x09,0x08,0x04,0x02,0x01,0x08,0x04,0x22,0x01,0x02,
	0x0a,0x09,0x03,0x09,0x02,0x02,0x03,0x0a,0x01,0x0c,
	0x01,0x0c,0x0d,0x08,0x03,0x0a,0x02,0x02,0x02,0x0b,
	0x01,0x14,0x02,0x03,0x06,0x01,0x03,0x01,0x02,0x09,
	0x03,0x0a,0x02,0x02,0x03,0x0a,0x02,0x1a,0x04,0x04,
	0x05,0x09,0x02,0x0a,0x03,0x02,0x02,0x0b,0x02,0x10,
	0x01,0x0a,0x03,0x02,0x07,0x09,0x03,0x0a,0x02,0x03,
	0x02,0x0a,0x02,0x0f,0x02,0x0a,0x03,0x03,0x04,0x01,
	0x03,0x0a,0x03,0x03,0x01,0x06,0x01,0x03,0x03,0x0a,
	0x02,0x0f,0x02,0x0c,0x01,0x03,0x02,0x04,0x03,0x0a,
	0x03,0x03,0x01,0x0b,0x03,0x0a,0x01,0x10,0x01,0x10,
	0x02,0x09,0x01,0x0a,0x02,0x03,0x03,0x0a,0x03,0x0a,
	0x01,0x03,0x01,0x0c,0x01,0x0d,0x01,0x0e,0x01,0x0a,
	0x03,0x02,0x03,0x0a,0x03,0x0a,0x01,0x04,0x01,0x1c,
	0x02,0x0b,0x01,0x0b,0x02,0x03,0x02,0x0b,0x02,0x0f,
	0x02,0x36,0x02,0x03,0x02,0x0b,0x02,0x0f,0x02,0x39,
	0x02,0x03,0x02,0x0b,0x02,0x0f,0x01,0x40,0x01
};

#define	alphaLEN	470
unsigned char alphatab[alphaLEN] = {
	0x03,0x0a,0x02,0x08,0x02,0x08,0x04,0x1a,0x04,0x04,
	0x05,0x05,0x01,0x02,0x01,0x02,0x01,0x03,0x04,0x08,
	0x03,0x09,0x02,0x08,0x01,0x06,0x04,0x04,0x02,0x05,
	0x02,0x04,0x01,0x03,0x04,0x08,0x03,0x09,0x02,0x04,
	0x04,0x06,0x04,0x01,0x03,0x05,0x02,0x04,0x01,0x04,
	0x03,0x05,0x01,0x03,0x03,0x05,0x01,0x09,0x03,0x04,
	0x09,0x05,0x02,0x04,0x01,0x04,0x04,0x04,0x02,0x03,
	0x02,0x05,0x03,0x06,0x05,0x04,0x06,0x05,0x04,0x08,
	0x03,0x04,0x04,0x01,0x03,0x04,0x04,0x04,0x06,0x04,
	0x05,0x04,0x05,0x02,0x01,0x04,0x04,0x04,0x03,0x03,
	0x02,0x04,0x04,0x04,0x07,0x02,0x05,0x05,0x03,0x03,
	0x02,0x04,0x04,0x04,0x03,0x09,0x03,0x04,0x04,0x03,
	0x06,0x04,0x04,0x09,0x05,0x04,0x02,0x0a,0x02,0x04,
	0x05,0x02,0x04,0x05,0x04,0x04,0x02,0x03,0x04,0x04,
	0x04,0x09,0x03,0x03,0x09,0x05,0x04,0x05,0x02,0x03,
	0x04,0x05,0x03,0x05,0x01,0x04,0x02,0x02,0x08,0x05,
	0x05,0x09,0x05,0x05,0x04,0x05,0x04,0x03,0x07,0x06,
	0x04,0x09,0x06,0x05,0x03,0x06,0x04,0x03,0x06,0x06,
	0x04,0x0a,0x04,0x06,0x04,0x04,0x04,0x03,0x07,0x05,
	0x04,0x0a,0x05,0x05,0x04,0x05,0x04,0x03,0x06,0x05,
	0x06,0x09,0x05,0x05,0x04,0x04,0x04,0x04,0x06,0x05,
	0x05,0x0a,0x05,0x05,0x04,0x04,0x04,0x04,0x05,0x06,
	0x05,0x0a,0x05,0x05,0x04,0x04,0x04,0x03,0x06,0x05,
	0x05,0x0b,0x05,0x05,0x03,0x04,0x04,0x03,0x06,0x06,
	0x06,0x0a,0x05,0x05,0x03,0x03,0x05,0x03,0x06,0x06,
	0x06,0x0a,0x05,0x0a,0x05,0x05,0x06,0x06,0x07,0x0a,
	0x05,0x0a,0x0c,0x07,0x05,0x03,0x01,0x08,0x09,0x06,
	0x05,0x0d,0x07,0x0f,0x01,0x1e,0x06,0x64,0x01,0x83,
	0x87,0x06,0x0c,0x03,0x1d,0x04,0x03,0x09,0x0b,0x05,
	0x0a,0x04,0x0b,0x04,0x0a,0x0d,0x08,0x01,0x02,0x04,
	0x0b,0x04,0x0b,0x02,0x0c,0x04,0x06,0x09,0x07,0x02,
	0x01,0x05,0x07,0x07,0x07,0x07,0x07,0x08,0x06,0x02,
	0x02,0x03,0x04,0x06,0x07,0x01,0x02,0x04,0x06,0x01,
	0x01,0x02,0x01,0x03,0x07,0x01,0x02,0x04,0x07,0x02,
	0x04,0x01,0x06,0x01,0x05,0x02,0x04,0x09,0x07,0x02,
	0x01,0x04,0x05,0x04,0x02,0x02,0x07,0x04,0x09,0x03,
	0x0b,0x02,0x0b,0x04,0x01,0x06,0x08,0x02,0x01,0x02,
	0x01,0x01,0x05,0x04,0x02,0x02,0x07,0x02,0x0a,0x04,
	0x0b,0x02,0x0b,0x03,0x05,0x01,0x03,0x02,0x07,0x02,
	0x02,0x01,0x01,0x02,0x05,0x04,0x02,0x01,0x07,0x03,
	0x0a,0x04,0x0a,0x03,0x0b,0x03,0x09,0x03,0x05,0x01,
	0x02,0x01,0x02,0x04,0x05,0x04,0x02,0x01,0x07,0x03,
	0x0a,0x03,0x0b,0x02,0x0b,0x03,0x0a,0x04,0x09,0x02,
	0x01,0x02,0x01,0x01,0x06,0x04,0x02,0x01,0x07,0x02,
	0x0b,0x03,0x0a,0x03,0x0b,0x01,0x0d,0x02,0x0d,0x01,
	0x0b,0x02,0x01,0x01,0x02,0x01,0x06,0x03,0x0b,0x02,
	0x0c,0x01,0x2e,0x01,0x0b,0x02,0x60,0x01,0x08,0x01
};

#define	bravoLEN	769
unsigned char bravotab[bravoLEN] = {
	0x04,0x04,0x0b,0x0b,0x08,0x18,0x09,0x02,0x07,0x0b,
	0x07,0x0d,0x02,0x09,0x08,0x05,0x07,0x0b,0x07,0x0c,
	0x03,0x08,0x08,0x06,0x07,0x0a,0x06,0x07,0x02,0x03,
	0x03,0x08,0x09,0x04,0x08,0x07,0x09,0x06,0x05,0x0a,
	0x09,0x05,0x08,0x06,0x09,0x06,0x05,0x0a,0x03,0x02,
	0x04,0x05,0x08,0x06,0x09,0x05,0x05,0x09,0x04,0x04,
	0x03,0x03,0x0a,0x05,0x05,0x02,0x02,0x05,0x05,0x0a,
	0x03,0x03,0x04,0x03,0x0a,0x05,0x05,0x03,0x02,0x04,
	0x05,0x06,0x01,0x09,0x04,0x03,0x0a,0x05,0x04,0x05,
	0x01,0x04,0x04,0x05,0x03,0x09,0x03,0x03,0x06,0x01,
	0x03,0x05,0x04,0x04,0x02,0x04,0x04,0x05,0x03,0x05,
	0x02,0x08,0x05,0x02,0x03,0x05,0x04,0x04,0x03,0x03,
	0x04,0x05,0x03,0x04,0x04,0x07,0x04,0x03,0x03,0x05,
	0x04,0x03,0x03,0x03,0x04,0x05,0x03,0x05,0x03,0x06,
	0x06,0x02,0x03,0x05,0x04,0x04,0x03,0x03,0x04,0x04,
	0x03,0x05,0x03,0x07,0x05,0x02,0x03,0x05,0x04,0x03,
	0x04,0x03,0x04,0x04,0x03,0x05,0x02,0x07,0x05,0x03,
	0x03,0x05,0x04,0x03,0x03,0x03,0x04,0x04,0x04,0x04,
	0x03,0x06,0x06,0x02,0x04,0x04,0x04,0x04,0x03,0x02,
	0x05,0x04,0x03,0x04,0x04,0x06,0x06,0x01,0x03,0x05,
	0x04,0x04,0x03,0x03,0x03,0x05,0x03,0x04,0x04,0x05,
	0x06,0x02,0x03,0x05,0x04,0x04,0x03,0x02,0x04,0x05,
	0x03,0x04,0x03,0x07,0x05,0x02,0x03,0x04,0x04,0x05,
	0x02,0x03,0x04,0x04,0x04,0x04,0x03,0x07,0x05,0x02,
	0x03,0x04,0x04,0x04,0x03,0x03,0x04,0x04,0x03,0x05,
	0x03,0x07,0x04,0x03,0x03,0x04,0x04,0x04,0x02,0x04,
	0x04,0x04,0x03,0x04,0x03,0x08,0x04,0x03,0x02,0x05,
	0x04,0x04,0x02,0x04,0x03,0x04,0x04,0x04,0x02,0x03,
	0x02,0x04,0x04,0x03,0x02,0x05,0x04,0x04,0x02,0x03,
	0x04,0x04,0x04,0x04,0x02,0x03,0x02,0x04,0x05,0x01,
	0x04,0x04,0x04,0x04,0x02,0x03,0x04,0x04,0x04,0x03,
	0x03,0x03,0x03,0x03,0x09,0x05,0x04,0x04,0x01,0x04,
	0x04,0x04,0x03,0x04,0x02,0x04,0x03,0x03,0x08,0x05,
	0x04,0x0a,0x04,0x0a,0x03,0x05,0x01,0x03,0x09,0x05,
	0x04,0x02,0x01,0x07,0x05,0x08,0x05,0x08,0x08,0x06,
	0x04,0x02,0x03,0x05,0x06,0x01,0x01,0x07,0x03,0x09,
	0x08,0x07,0x01,0x03,0x05,0x06,0x03,0x02,0x04,0x0b,
	0x05,0x01,0x0a,0x0c,0x03,0x04,0x04,0x15,0x01,0x02,
	0x01,0x02,0x09,0x13,0x02,0x01,0x01,0x22,0x06,0x38,
	0x09,0x3e,0x03,0x3e,0x01,0x01,0x05,0x45,0x01,0x42,
	0x01,0x01,0x05,0x3e,0x0a,0x0d,0x02,0x0e,0x01,0x0f,
	0x01,0x04,0x01,0x06,0x01,0x01,0x08,0x0b,0x06,0x0b,
	0x04,0x0b,0x05,0x08,0x09,0x0a,0x07,0x09,0x06,0x09,
	0x07,0x08,0x0a,0x07,0x03,0x01,0x05,0x07,0x08,0x07,
	0x03,0x01,0x01,0x01,0x03,0x07,0x02,0x01,0x05,0x04,
	0x04,0x08,0x01,0x02,0x05,0x07,0x01,0x02,0x05,0x07,
	0x02,0x01,0x02,0x01,0x02,0x07,0x02,0x01,0x05,0x05,
	0x07,0x07,0x02,0x01,0x05,0x08,0x07,0x07,0x05,0x0a,
	0x03,0x01,0x01,0x03,0x01,0x04,0x0a,0x07,0x03,0x01,
	0x01,0x02,0x01,0x07,0x03,0x01,0x01,0x09,0x04,0x0b,
	0x04,0x05,0x01,0x01,0x02,0x01,0x05,0x04,0x03,0x07,
	0x02,0x02,0x01,0x01,0x02,0x07,0x03,0x01,0x01,0x02,
	0x01,0x07,0x03,0x0c,0x03,0x05,0x03,0x03,0x01,0x01,
	0x02,0x04,0x05,0x07,0x01,0x02,0x02,0x01,0x02,0x07,
	0x02,0x04,0x02,0x06,0x04,0x0c,0x03,0x06,0x02,0x02,
	0x04,0x05,0x06,0x07,0x02,0x01,0x02,0x01,0x02,0x07,
	0x05,0x0a,0x05,0x0b,0x01,0x08,0x01,0x02,0x01,0x01,
	0x02,0x07,0x05,0x07,0x02,0x01,0x01,0x02,0x02,0x07,
	0x05,0x0a,0x05,0x0a,0x04,0x06,0x01,0x05,0x04,0x05,
	0x04,0x08,0x01,0x02,0x01,0x01,0x02,0x08,0x02,0x01,
	0x01,0x02,0x01,0x08,0x05,0x0a,0x05,0x0b,0x04,0x05,
	0x01,0x01,0x03,0x07,0x02,0x01,0x02,0x01,0x02,0x08,
	0x01,0x01,0x02,0x02,0x01,0x08,0x05,0x0a,0x04,0x0b,
	0x02,0x01,0x02,0x07,0x04,0x08,0x01,0x01,0x02,0x01,
	0x02,0x08,0x05,0x01,0x01,0x08,0x05,0x0b,0x04,0x0b,
	0x05,0x07,0x01,0x01,0x02,0x08,0x01,0x02,0x02,0x01,
	0x02,0x01,0x01,0x06,0x01,0x01,0x02,0x01,0x02,0x0a,
	0x02,0x01,0x02,0x0a,0x05,0x08,0x01,0x02,0x04,0x08,
	0x03,0x0b,0x01,0x01,0x05,0x08,0x01,0x02,0x01,0x02,
	0x01,0x08,0x05,0x0b,0x04,0x0e,0x01,0x08,0x02,0x01,
	0x01,0x0b,0x01,0x01,0x05,0x08,0x02,0x01,0x02,0x01,
	0x01,0x09,0x01,0x01,0x02,0x0d,0x03,0x0d,0x04,0x08,
	0x01,0x0c,0x01,0x01,0x02,0x01,0x02,0x08,0x01,0x02,
	0x01,0x0e,0x02,0x0e,0x01,0x01,0x02,0x17,0x01,0x0b,
	0x02,0x01,0x02,0x01,0x02,0x0b,0x01,0x0f,0x01,0x01,
	0x01,0x0f,0x01,0x02,0x01,0x22,0x01,0x01,0x05,0x0b,
	0x01,0x01,0x02,0x46,0x04,0x01,0x01,0x0e,0x02
};

#define	charlieLEN	800
unsigned char charlietab[charlieLEN] = {
	0x01,0x0b,0x01,0x02,0x01,0x01,0x01,0x13,0x01,0x02,
	0x01,0x07,0x01,0x03,0x01,0x03,0x01,0x04,0x01,0x05,
	0x01,0x04,0x01,0x0a,0x01,0x07,0x01,0x01,0x01,0x02,
	0x01,0x07,0x01,0x10,0x01,0x06,0x01,0x01,0x01,0x04,
	0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x02,
	0x01,0x01,0x01,0x01,0x01,0x02,0x01,0x04,0x01,0x03,
	0x01,0x0b,0x02,0x02,0x01,0x08,0x01,0x02,0x01,0x02,
	0x01,0x05,0x01,0x08,0x01,0x05,0x01,0x01,0x01,0x01,
	0x01,0x02,0x01,0x06,0x01,0x01,0x01,0x04,0x01,0x01,
	0x01,0x02,0x01,0x01,0x01,0x02,0x01,0x01,0x01,0x01,
	0x01,0x01,0x01,0x04,0x01,0x01,0x01,0x0a,0x01,0x0a,
	0x01,0x01,0x01,0x01,0x01,0x04,0x01,0x06,0x01,0x07,
	0x01,0x03,0x01,0x01,0x02,0x02,0x01,0x08,0x01,0x01,
	0x01,0x06,0x01,0x01,0x02,0x01,0x01,0x03,0x01,0x08,
	0x01,0x01,0x01,0x02,0x01,0x01,0x01,0x03,0x01,0x06,
	0x01,0x1b,0x01,0x11,0x01,0x21,0x01,0x01,0x01,0x05,
	0x01,0x09,0x01,0x01,0x01,0x10,0x04,0x07,0x0e,0x10,
	0x02,0x09,0x04,0x05,0x0c,0x0b,0x03,0x0a,0x04,0x09,
	0x0a,0x0a,0x04,0x06,0x03,0x02,0x02,0x03,0x02,0x04,
	0x0a,0x05,0x03,0x04,0x03,0x04,0x04,0x03,0x03,0x03,
	0x03,0x03,0x05,0x01,0x04,0x05,0x03,0x03,0x03,0x04,
	0x04,0x04,0x03,0x04,0x02,0x03,0x08,0x06,0x03,0x03,
	0x03,0x05,0x04,0x04,0x04,0x05,0x05,0x03,0x04,0x05,
	0x04,0x03,0x03,0x04,0x04,0x05,0x04,0x05,0x05,0x03,
	0x04,0x05,0x04,0x03,0x02,0x05,0x04,0x05,0x04,0x05,
	0x05,0x03,0x04,0x04,0x04,0x04,0x02,0x05,0x04,0x05,
	0x04,0x05,0x05,0x02,0x04,0x05,0x04,0x04,0x03,0x04,
	0x04,0x05,0x04,0x05,0x05,0x02,0x04,0x05,0x04,0x04,
	0x02,0x04,0x05,0x04,0x04,0x05,0x05,0x02,0x04,0x05,
	0x04,0x05,0x02,0x04,0x04,0x05,0x04,0x04,0x06,0x01,
	0x04,0x05,0x04,0x04,0x03,0x04,0x04,0x05,0x04,0x04,
	0x05,0x02,0x04,0x05,0x04,0x04,0x02,0x04,0x05,0x05,
	0x03,0x05,0x05,0x01,0x04,0x05,0x04,0x04,0x03,0x04,
	0x04,0x05,0x03,0x05,0x04,0x02,0x05,0x05,0x04,0x03,
	0x03,0x04,0x04,0x05,0x03,0x05,0x05,0x01,0x05,0x04,
	0x05,0x03,0x03,0x04,0x04,0x05,0x04,0x04,0x0b,0x05,
	0x04,0x03,0x03,0x04,0x04,0x05,0x04,0x05,0x0a,0x05,
	0x04,0x03,0x03,0x04,0x04,0x06,0x03,0x05,0x0b,0x05,
	0x04,0x03,0x02,0x05,0x04,0x05,0x04,0x06,0x0a,0x05,
	0x04,0x02,0x03,0x05,0x04,0x06,0x01,0x02,0x02,0x04,
	0x05,0x01,0x04,0x05,0x03,0x03,0x03,0x05,0x04,0x09,
	0x03,0x04,0x04,0x02,0x03,0x05,0x04,0x02,0x03,0x05,
	0x04,0x03,0x01,0x05,0x03,0x04,0x04,0x02,0x04,0x04,
	0x04,0x03,0x03,0x04,0x04,0x03,0x02,0x05,0x03,0x03,
	0x04,0x03,0x04,0x04,0x03,0x03,0x03,0x05,0x04,0x02,
	0x03,0x04,0x03,0x04,0x04,0x02,0x04,0x05,0x02,0x03,
	0x04,0x04,0x04,0x02,0x04,0x04,0x03,0x04,0x03,0x03,
	0x05,0x04,0x02,0x03,0x04,0x05,0x02,0x03,0x04,0x04,
	0x03,0x03,0x04,0x03,0x05,0x05,0x02,0x02,0x05,0x05,
	0x02,0x02,0x04,0x05,0x03,0x03,0x04,0x02,0x07,0x05,
	0x02,0x02,0x04,0x05,0x02,0x02,0x05,0x04,0x03,0x03,
	0x03,0x03,0x07,0x05,0x02,0x03,0x04,0x04,0x02,0x02,
	0x05,0x05,0x02,0x04,0x03,0x02,0x08,0x05,0x03,0x02,
	0x04,0x04,0x02,0x03,0x04,0x05,0x01,0x05,0x03,0x02,
	0x09,0x05,0x01,0x04,0x04,0x09,0x04,0x0b,0x04,0x02,
	0x08,0x0b,0x04,0x0a,0x04,0x0c,0x0c,0x0c,0x04,0x0b,
	0x04,0x0b,0x0d,0x0c,0x05,0x0b,0x04,0x0b,0x0d,0x0c,
	0x07,0x0b,0x03,0x0b,0x0e,0x0c,0x07,0x18,0x0a,0x01,
	0x04,0x0e,0x07,0x1b,0x05,0x01,0x07,0x0c,0x09,0x1d,
	0x01,0x01,0x09,0x0f,0x06,0x24,0x07,0x0e,0x01,0x01,
	0x01,0x01,0x02,0x01,0x01,0x01,0x01,0x1c,0x02,0x04,
	0x06,0x0e,0x01,0x01,0x04,0x0d,0x01,0x0d,0x01,0x0c,
	0x07,0x0b,0x04,0x01,0x01,0x02,0x01,0x06,0x06,0x01,
	0x01,0x0a,0x04,0x09,0x0b,0x09,0x06,0x01,0x01,0x07,
	0x06,0x01,0x01,0x09,0x05,0x01,0x01,0x08,0x0c,0x0b,
	0x02,0x01,0x02,0x01,0x01,0x09,0x04,0x01,0x01,0x0a,
	0x05,0x0a,0x0d,0x0a,0x06,0x01,0x01,0x08,0x02,0x01,
	0x02,0x01,0x01,0x0a,0x06,0x09,0x0d,0x08,0x01,0x02,
	0x05,0x01,0x01,0x09,0x01,0x01,0x02,0x01,0x01,0x0b,
	0x07,0x08,0x01,0x01,0x08,0x01,0x03,0x02,0x01,0x08,
	0x01,0x01,0x05,0x02,0x01,0x08,0x02,0x01,0x01,0x01,
	0x02,0x0a,0x07,0x0a,0x07,0x01,0x03,0x03,0x01,0x08,
	0x01,0x02,0x04,0x02,0x01,0x0b,0x01,0x02,0x01,0x0d,
	0x05,0x0c,0x01,0x02,0x01,0x04,0x02,0x01,0x01,0x02,
	0x01,0x08,0x01,0x02,0x02,0x01,0x02,0x01,0x02,0x0d,
	0x02,0x01,0x01,0x0f,0x05,0x0f,0x03,0x01,0x01,0x02,
	0x01,0x0c,0x01,0x01,0x02,0x02,0x02,0x01,0x01,0x0e,
	0x01,0x02,0x01,0x11,0x02,0x2a,0x01,0x01,0x02,0x01,
	0x02,0x53,0x02,0x01,0x02,0x28,0x01,0x2d,0x01,0x01,
	0x02,0x29,0x01,0x30,0x01,0x02,0x01,0x80,0xc8,0x01
};

#define	deltaLEN	542
unsigned char deltatab[deltaLEN] = {
	0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x0a,0x01,0x03,
	0x01,0x08,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x14,
	0x01,0x1b,0x01,0x01,0x01,0x01,0x01,0x02,0x01,0x01,
	0x03,0x01,0x09,0x10,0x07,0x11,0x01,0x02,0x03,0x01,
	0x0d,0x0e,0x09,0x0b,0x07,0x02,0x01,0x04,0x09,0x0c,
	0x09,0x09,0x08,0x07,0x0a,0x0b,0x08,0x09,0x06,0x08,
	0x0b,0x08,0x08,0x09,0x08,0x07,0x0b,0x08,0x08,0x07,
	0x07,0x09,0x0d,0x08,0x07,0x08,0x07,0x07,0x0f,0x04,
	0x01,0x02,0x08,0x07,0x06,0x07,0x10,0x06,0x01,0x01,
	0x05,0x07,0x08,0x07,0x04,0x02,0x09,0x08,0x04,0x08,
	0x08,0x06,0x01,0x01,0x04,0x02,0x07,0x07,0x01,0x01,
	0x04,0x08,0x04,0x09,0x03,0x03,0x09,0x07,0x01,0x01,
	0x04,0x08,0x05,0x09,0x02,0x04,0x09,0x04,0x01,0x04,
	0x04,0x06,0x01,0x01,0x04,0x0a,0x03,0x03,0x09,0x04,
	0x01,0x01,0x07,0x05,0x08,0x05,0x01,0x04,0x03,0x03,
	0x08,0x06,0x08,0x05,0x08,0x06,0x04,0x06,0x07,0x06,
	0x08,0x05,0x09,0x05,0x04,0x04,0x0a,0x06,0x08,0x05,
	0x09,0x05,0x04,0x04,0x0a,0x06,0x04,0x01,0x04,0x04,
	0x06,0x01,0x01,0x07,0x03,0x03,0x0b,0x05,0x04,0x01,
	0x05,0x05,0x05,0x09,0x04,0x03,0x0a,0x06,0x04,0x01,
	0x05,0x05,0x05,0x0a,0x03,0x02,0x0a,0x08,0x08,0x06,
	0x05,0x0b,0x0e,0x08,0x09,0x06,0x05,0x0b,0x0e,0x08,
	0x08,0x07,0x04,0x03,0x01,0x09,0x0d,0x08,0x09,0x0d,
	0x03,0x08,0x01,0x01,0x0a,0x0e,0x05,0x0c,0x04,0x0a,
	0x0b,0x0f,0x05,0x0b,0x03,0x0b,0x0e,0x2e,0x01,0x01,
	0x01,0x32,0x01,0x01,0x01,0x30,0x01,0x82,0xb1,0x01,
	0x14,0x01,0x1e,0x01,0x01,0x01,0x1d,0x01,0x3a,0x01,
	0x08,0x01,0x01,0x09,0x0e,0x08,0x0e,0x04,0x05,0x0c,
	0x0b,0x07,0x09,0x05,0x0b,0x07,0x06,0x07,0x09,0x08,
	0x08,0x05,0x09,0x07,0x08,0x0b,0x08,0x01,0x01,0x04,
	0x09,0x02,0x01,0x04,0x0a,0x02,0x04,0x01,0x05,0x01,
	0x03,0x03,0x02,0x0a,0x05,0x01,0x02,0x01,0x01,0x04,
	0x08,0x07,0x08,0x04,0x0a,0x01,0x04,0x02,0x08,0x08,
	0x04,0x01,0x02,0x01,0x01,0x04,0x08,0x05,0x01,0x01,
	0x06,0x02,0x01,0x03,0x0a,0x02,0x0a,0x04,0x01,0x07,
	0x04,0x01,0x02,0x01,0x02,0x02,0x09,0x05,0x02,0x01,
	0x06,0x02,0x02,0x02,0x07,0x01,0x02,0x01,0x0a,0x05,
	0x04,0x01,0x02,0x04,0x07,0x01,0x01,0x04,0x08,0x05,
	0x08,0x04,0x02,0x01,0x06,0x02,0x0a,0x01,0x04,0x02,
	0x04,0x04,0x02,0x06,0x04,0x01,0x02,0x01,0x01,0x02,
	0x01,0x01,0x08,0x03,0x0a,0x03,0x09,0x03,0x0a,0x03,
	0x08,0x04,0x04,0x01,0x03,0x04,0x04,0x01,0x02,0x01,
	0x01,0x04,0x08,0x04,0x09,0x03,0x0a,0x03,0x09,0x03,
	0x09,0x03,0x04,0x02,0x04,0x03,0x05,0x01,0x02,0x01,
	0x01,0x04,0x08,0x04,0x09,0x03,0x09,0x04,0x0a,0x02,
	0x0a,0x02,0x04,0x01,0x06,0x02,0x01,0x01,0x05,0x01,
	0x02,0x01,0x01,0x02,0x08,0x01,0x01,0x04,0x09,0x03,
	0x09,0x04,0x0a,0x02,0x0b,0x01,0x0b,0x05,0x05,0x01,
	0x02,0x01,0x01,0x02,0x01,0x01,0x06,0x01,0x02,0x03,
	0x0a,0x03,0x0a,0x02,0x23,0x04,0x07,0x01,0x01,0x02,
	0x01,0x01,0x01,0x02,0x04,0x01,0x01,0x01,0x02,0x03,
	0x0b,0x02,0x06,0x01,0x29,0x02,0x05,0x01,0x05,0x01,
	0x01,0x01,0x02,0x01,0x01,0x01,0x06,0x02,0x01,0x01,
	0x01,0x01,0x06,0x01,0x05,0x01,0x06,0x01,0x4f,0x01,
	0x26,0x01
};

#define	echoLEN	537
unsigned char echotab[echoLEN] = {
	0x03,0x05,0x01,0x01,0x02,0x11,0x01,0x01,0x03,0x09,
	0x02,0x0b,0x01,0x08,0x08,0x05,0x01,0x02,0x02,0x02,
	0x01,0x05,0x05,0x08,0x01,0x08,0x0a,0x04,0x02,0x01,
	0x03,0x07,0x02,0x01,0x02,0x08,0x01,0x08,0x09,0x05,
	0x01,0x02,0x02,0x07,0x06,0x07,0x02,0x05,0x01,0x01,
	0x02,0x01,0x07,0x05,0x01,0x01,0x02,0x08,0x02,0x01,
	0x02,0x08,0x01,0x05,0x01,0x02,0x09,0x05,0x01,0x01,
	0x03,0x07,0x05,0x08,0x01,0x01,0x01,0x06,0x08,0x05,
	0x01,0x01,0x03,0x07,0x06,0x07,0x03,0x06,0x08,0x07,
	0x04,0x07,0x05,0x07,0x03,0x02,0x01,0x02,0x0a,0x07,
	0x04,0x01,0x01,0x05,0x05,0x07,0x05,0x02,0x04,0x01,
	0x06,0x07,0x06,0x07,0x04,0x06,0x03,0x02,0x01,0x01,
	0x0b,0x08,0x06,0x07,0x05,0x05,0x02,0x02,0x09,0x01,
	0x04,0x0a,0x05,0x09,0x02,0x01,0x05,0x06,0x0c,0x0b,
	0x02,0x0c,0x07,0x09,0x02,0x02,0x06,0x16,0x01,0x05,
	0x01,0x83,0x08,0x02,0x04,0x01,0x3b,0x01,0x08,0x01,
	0x09,0x01,0x03,0x03,0x02,0x03,0x0b,0x03,0x02,0x03,
	0x0a,0x02,0x0e,0x04,0x09,0x0b,0x0d,0x07,0x0c,0x01,
	0x01,0x01,0x06,0x0b,0x0b,0x07,0x09,0x04,0x0b,0x0e,
	0x0a,0x05,0x08,0x05,0x01,0x01,0x0b,0x10,0x09,0x06,
	0x08,0x05,0x09,0x03,0x02,0x04,0x04,0x09,0x09,0x06,
	0x08,0x05,0x09,0x04,0x04,0x02,0x03,0x0b,0x04,0x01,
	0x01,0x02,0x01,0x05,0x05,0x02,0x01,0x05,0x05,0x01,
	0x01,0x01,0x02,0x03,0x06,0x02,0x02,0x06,0x01,0x05,
	0x04,0x01,0x01,0x02,0x01,0x05,0x05,0x02,0x01,0x04,
	0x06,0x03,0x04,0x01,0x05,0x04,0x03,0x04,0x01,0x06,
	0x07,0x01,0x02,0x04,0x05,0x05,0x01,0x02,0x06,0x03,
	0x01,0x01,0x08,0x03,0x04,0x03,0x03,0x06,0x07,0x07,
	0x06,0x04,0x01,0x02,0x06,0x05,0x08,0x04,0x08,0x09,
	0x06,0x08,0x05,0x05,0x01,0x01,0x01,0x01,0x05,0x05,
	0x08,0x04,0x05,0x01,0x02,0x09,0x07,0x02,0x01,0x05,
	0x05,0x04,0x04,0x01,0x05,0x04,0x09,0x04,0x04,0x03,
	0x02,0x09,0x06,0x08,0x06,0x04,0x01,0x01,0x01,0x01,
	0x06,0x04,0x09,0x04,0x04,0x02,0x04,0x08,0x06,0x08,
	0x06,0x04,0x01,0x01,0x01,0x01,0x07,0x04,0x09,0x04,
	0x05,0x03,0x01,0x09,0x07,0x07,0x06,0x06,0x09,0x04,
	0x09,0x04,0x05,0x04,0x02,0x07,0x07,0x08,0x06,0x04,
	0x01,0x01,0x09,0x04,0x0a,0x03,0x05,0x04,0x03,0x06,
	0x07,0x08,0x06,0x06,0x09,0x05,0x09,0x04,0x06,0x02,
	0x03,0x08,0x06,0x08,0x06,0x06,0x09,0x05,0x0a,0x04,
	0x05,0x04,0x01,0x09,0x07,0x05,0x01,0x02,0x07,0x05,
	0x0a,0x05,0x0a,0x04,0x05,0x0e,0x06,0x05,0x02,0x01,
	0x08,0x04,0x0b,0x05,0x0b,0x04,0x06,0x03,0x02,0x08,
	0x07,0x02,0x01,0x02,0x01,0x02,0x08,0x04,0x0b,0x05,
	0x0c,0x04,0x06,0x01,0x01,0x02,0x01,0x07,0x08,0x04,
	0x01,0x04,0x07,0x06,0x0b,0x04,0x0b,0x05,0x07,0x0b,
	0x07,0x0a,0x07,0x06,0x0b,0x05,0x0b,0x06,0x06,0x0a,
	0x07,0x0b,0x07,0x06,0x0b,0x06,0x0a,0x07,0x07,0x08,
	0x09,0x08,0x09,0x06,0x0c,0x05,0x09,0x08,0x08,0x07,
	0x0a,0x08,0x0a,0x06,0x0c,0x05,0x08,0x01,0x01,0x07,
	0x08,0x07,0x0a,0x08,0x0a,0x06,0x0c,0x04,0x0c,0x03,
	0x0d,0x07,0x0b,0x07,0x0b,0x05,0x1e,0x06,0x0c,0x01,
	0x01,0x03,0x0b,0x05,0x01,0x01,0x0c,0x04,0x1d,0x01,
	0x01,0x01,0x01,0x01,0x81,0x4d,0x01
};

#define	foxtrotLEN	961
unsigned char foxtrottab[foxtrotLEN] = {
	0x06,0x1a,0x0c,0x09,0x05,0x06,0x02,0x01,0x05,0x05,
	0x01,0x03,0x04,0x02,0x0a,0x05,0x04,0x01,0x04,0x04,
	0x04,0x0a,0x02,0x04,0x03,0x03,0x09,0x04,0x04,0x02,
	0x03,0x04,0x05,0x09,0x03,0x04,0x03,0x03,0x09,0x05,
	0x04,0x09,0x04,0x04,0x02,0x03,0x03,0x04,0x03,0x04,
	0x09,0x05,0x04,0x04,0x01,0x03,0x04,0x05,0x03,0x04,
	0x01,0x03,0x03,0x04,0x05,0x02,0x03,0x05,0x04,0x03,
	0x03,0x02,0x04,0x04,0x04,0x04,0x04,0x01,0x02,0x04,
	0x04,0x03,0x03,0x05,0x03,0x04,0x03,0x03,0x03,0x04,
	0x03,0x05,0x04,0x06,0x04,0x04,0x04,0x03,0x04,0x03,
	0x04,0x02,0x04,0x04,0x03,0x05,0x01,0x01,0x03,0x05,
	0x04,0x03,0x04,0x04,0x04,0x03,0x04,0x02,0x04,0x03,
	0x04,0x04,0x01,0x02,0x03,0x04,0x04,0x04,0x04,0x04,
	0x04,0x03,0x03,0x03,0x04,0x03,0x03,0x06,0x01,0x01,
	0x03,0x04,0x04,0x03,0x05,0x04,0x04,0x02,0x04,0x02,
	0x04,0x04,0x03,0x05,0x05,0x04,0x05,0x02,0x05,0x04,
	0x04,0x03,0x03,0x03,0x03,0x04,0x03,0x05,0x01,0x02,
	0x03,0x04,0x04,0x03,0x04,0x04,0x04,0x03,0x02,0x04,
	0x03,0x03,0x04,0x04,0x02,0x02,0x03,0x04,0x04,0x03,
	0x04,0x04,0x04,0x03,0x02,0x04,0x04,0x02,0x04,0x03,
	0x03,0x03,0x03,0x04,0x04,0x01,0x05,0x04,0x03,0x04,
	0x02,0x04,0x03,0x03,0x03,0x04,0x02,0x04,0x03,0x04,
	0x04,0x01,0x05,0x05,0x03,0x03,0x02,0x05,0x03,0x03,
	0x02,0x05,0x02,0x03,0x03,0x05,0x03,0x02,0x05,0x01,
	0x01,0x06,0x01,0x04,0x03,0x04,0x02,0x04,0x03,0x04,
	0x02,0x05,0x02,0x04,0x01,0x05,0x01,0x05,0x01,0x4b,
	0x01,0x82,0x4f,0x02,0x0a,0x01,0x03,0x02,0x2f,0x01,
	0x15,0x01,0x16,0x01,0x0c,0x01,0x01,0x01,0x07,0x03,
	0x01,0x01,0x0c,0x01,0x02,0x02,0x01,0x01,0x0a,0x01,
	0x01,0x02,0x05,0x01,0x01,0x01,0x02,0x01,0x0a,0x01,
	0x01,0x03,0x03,0x01,0x01,0x01,0x05,0x01,0x03,0x01,
	0x01,0x01,0x08,0x01,0x01,0x01,0x01,0x01,0x05,0x02,
	0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x04,0x01,
	0x09,0x01,0x01,0x01,0x02,0x01,0x08,0x01,0x05,0x01,
	0x01,0x01,0x0a,0x01,0x01,0x01,0x01,0x01,0x03,0x01,
	0x03,0x01,0x02,0x01,0x05,0x01,0x01,0x01,0x02,0x01,
	0x05,0x01,0x03,0x01,0x02,0x01,0x08,0x02,0x01,0x01,
	0x02,0x02,0x01,0x01,0x06,0x02,0x07,0x01,0x01,0x01,
	0x0c,0x01,0x01,0x02,0x09,0x01,0x01,0x01,0x02,0x01,
	0x0a,0x01,0x01,0x02,0x07,0x02,0x05,0x01,0x05,0x01,
	0x01,0x02,0x03,0x01,0x05,0x01,0x04,0x01,0x05,0x01,
	0x04,0x01,0x05,0x01,0x05,0x01,0x07,0x01,0x02,0x01,
	0x01,0x02,0x01,0x01,0x02,0x01,0x01,0x01,0x05,0x01,
	0x04,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x08,0x01,
	0x01,0x01,0x01,0x02,0x01,0x01,0x01,0x01,0x01,0x01,
	0x01,0x01,0x0e,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
	0x03,0x01,0x04,0x01,0x04,0x01,0x0a,0x01,0x0b,0x01,
	0x02,0x01,0x01,0x01,0x01,0x01,0x02,0x02,0x01,0x01,
	0x07,0x02,0x03,0x01,0x01,0x02,0x01,0x01,0x03,0x01,
	0x01,0x01,0x01,0x01,0x09,0x01,0x01,0x02,0x04,0x01,
	0x08,0x01,0x02,0x01,0x01,0x02,0x02,0x01,0x02,0x01,
	0x03,0x01,0x01,0x02,0x02,0x01,0x04,0x01,0x03,0x01,
	0x02,0x01,0x01,0x01,0x04,0x01,0x01,0x01,0x05,0x01,
	0x01,0x01,0x02,0x01,0x04,0x01,0x01,0x01,0x02,0x01,
	0x01,0x01,0x03,0x01,0x04,0x01,0x01,0x01,0x02,0x01,
	0x02,0x02,0x01,0x01,0x03,0x01,0x01,0x01,0x01,0x01,
	0x06,0x01,0x06,0x01,0x08,0x01,0x04,0x01,0x0f,0x01,
	0x0f,0x01,0x04,0x01,0x01,0x01,0x05,0x01,0x81,0xa1,
	0x01,0x07,0x01,0x08,0x01,0x01,0x01,0x0a,0x01,0x01,
	0x01,0x1b,0x01,0x04,0x01,0x0a,0x01,0x21,0x01,0x04,
	0x01,0x12,0x01,0x12,0x01,0x5b,0x01,0x04,0x03,0x04,
	0x03,0x11,0x03,0x0a,0x04,0x02,0x03,0x04,0x0a,0x0b,
	0x06,0x09,0x02,0x03,0x03,0x09,0x06,0x02,0x02,0x03,
	0x03,0x0b,0x04,0x18,0x09,0x05,0x07,0x07,0x01,0x03,
	0x05,0x05,0x03,0x02,0x01,0x07,0x03,0x04,0x05,0x02,
	0x01,0x04,0x09,0x06,0x09,0x05,0x05,0x09,0x04,0x05,
	0x02,0x04,0x01,0x04,0x04,0x01,0x01,0x01,0x05,0x05,
	0x05,0x01,0x03,0x05,0x05,0x0a,0x03,0x05,0x03,0x0d,
	0x07,0x06,0x04,0x0a,0x04,0x1a,0x02,0x07,0x0b,0x05,
	0x04,0x09,0x05,0x05,0x04,0x08,0x03,0x05,0x03,0x06,
	0x05,0x04,0x04,0x05,0x04,0x04,0x01,0x05,0x04,0x05,
	0x04,0x08,0x03,0x05,0x03,0x06,0x05,0x04,0x05,0x05,
	0x04,0x0a,0x04,0x05,0x03,0x13,0x01,0x06,0x04,0x05,
	0x06,0x06,0x04,0x05,0x01,0x03,0x04,0x04,0x04,0x10,
	0x03,0x07,0x04,0x05,0x08,0x05,0x04,0x04,0x04,0x01,
	0x04,0x04,0x04,0x06,0x02,0x08,0x03,0x06,0x04,0x06,
	0x09,0x05,0x04,0x04,0x03,0x02,0x04,0x04,0x04,0x05,
	0x02,0x09,0x03,0x06,0x04,0x06,0x04,0x02,0x04,0x05,
	0x04,0x04,0x03,0x03,0x03,0x05,0x03,0x10,0x04,0x05,
	0x05,0x05,0x04,0x04,0x04,0x05,0x04,0x05,0x01,0x03,
	0x04,0x04,0x03,0x0a,0x02,0x05,0x04,0x05,0x05,0x05,
	0x04,0x04,0x05,0x05,0x04,0x05,0x01,0x03,0x04,0x04,
	0x03,0x09,0x03,0x05,0x04,0x05,0x04,0x06,0x04,0x05,
	0x06,0x05,0x04,0x05,0x01,0x03,0x04,0x04,0x04,0x08,
	0x03,0x05,0x03,0x07,0x04,0x05,0x04,0x06,0x05,0x01,
	0x02,0x05,0x04,0x04,0x02,0x02,0x04,0x04,0x02,0x06,
	0x01,0x01,0x01,0x02,0x02,0x05,0x03,0x09,0x02,0x06,
	0x02,0x09,0x03,0x04,0x02,0x05,0x04,0x02,0x01,0x02,
	0x01,0x02,0x03,0x04,0x01,0x01,0x02,0x09,0x03,0x0b,
	0x01,0x05,0x03,0x07,0x04,0x04,0x04,0x07,0x05,0x05,
	0x02,0x01,0x01,0x02,0x01,0x05,0x02,0x07,0x01,0x02,
	0x02,0x05,0x04,0x08,0x02,0x06,0x02,0x09,0x03,0x05,
	0x02,0x12,0x01,0x05,0x02,0x01,0x01,0x02,0x01,0x05,
	0x02,0x0a,0x02,0x05,0x01,0x0b,0x01,0x0b,0x01,0x10,
	0x02,0x0f,0x01,0x05,0x02,0x01,0x01,0x02,0x01,0x04,
	0x03,0x04,0x01,0x05,0x01,0x0b,0x01,0x54,0x01,0x33,
	0x01
};

#define	golfLEN	415
unsigned char golftab[golfLEN] = {
	0x01,0x03,0x03,0x04,0x02,0x0e,0x01,0x05,0x01,0x03,
	0x03,0x02,0x01,0x07,0x01,0x01,0x01,0x05,0x02,0x02,
	0x01,0x02,0x01,0x06,0x01,0x01,0x01,0x03,0x01,0x05,
	0x01,0x06,0x01,0x16,0x02,0x01,0x01,0x01,0x08,0x10,
	0x06,0x0d,0x02,0x01,0x01,0x05,0x0c,0x0a,0x08,0x09,
	0x06,0x09,0x0d,0x0a,0x06,0x09,0x05,0x0b,0x0f,0x09,
	0x05,0x08,0x06,0x08,0x02,0x03,0x0e,0x08,0x06,0x06,
	0x07,0x08,0x03,0x04,0x05,0x01,0x06,0x06,0x01,0x01,
	0x06,0x05,0x08,0x06,0x02,0x09,0x0b,0x05,0x08,0x05,
	0x07,0x07,0x02,0x06,0x01,0x04,0x0a,0x05,0x05,0x08,
	0x05,0x09,0x02,0x05,0x03,0x04,0x09,0x05,0x04,0x04,
	0x01,0x04,0x04,0x05,0x03,0x09,0x03,0x03,0x08,0x05,
	0x05,0x08,0x05,0x04,0x04,0x06,0x03,0x05,0x07,0x06,
	0x05,0x08,0x04,0x05,0x04,0x05,0x04,0x04,0x0a,0x05,
	0x04,0x04,0x02,0x03,0x04,0x05,0x03,0x05,0x03,0x05,
	0x0b,0x04,0x04,0x05,0x03,0x02,0x04,0x04,0x04,0x04,
	0x04,0x05,0x0a,0x05,0x04,0x05,0x03,0x03,0x03,0x04,
	0x04,0x04,0x04,0x05,0x0b,0x04,0x04,0x05,0x03,0x03,
	0x04,0x04,0x04,0x04,0x04,0x04,0x0b,0x05,0x05,0x04,
	0x03,0x03,0x04,0x04,0x03,0x05,0x03,0x05,0x0c,0x05,
	0x04,0x04,0x03,0x04,0x03,0x05,0x03,0x05,0x03,0x05,
	0x06,0x01,0x05,0x05,0x04,0x04,0x03,0x03,0x04,0x04,
	0x04,0x05,0x03,0x05,0x0c,0x05,0x04,0x05,0x02,0x03,
	0x04,0x05,0x04,0x04,0x04,0x04,0x07,0x01,0x04,0x05,
	0x04,0x05,0x03,0x03,0x04,0x05,0x03,0x05,0x03,0x05,
	0x0c,0x05,0x05,0x04,0x04,0x02,0x04,0x04,0x04,0x05,
	0x04,0x04,0x0c,0x05,0x05,0x04,0x04,0x01,0x05,0x05,
	0x04,0x04,0x04,0x05,0x06,0x01,0x05,0x05,0x05,0x04,
	0x04,0x03,0x03,0x05,0x04,0x04,0x04,0x05,0x05,0x03,
	0x05,0x06,0x04,0x04,0x04,0x01,0x01,0x01,0x03,0x06,
	0x03,0x05,0x04,0x04,0x05,0x04,0x06,0x05,0x05,0x06,
	0x04,0x01,0x04,0x05,0x04,0x05,0x03,0x05,0x05,0x04,
	0x06,0x07,0x04,0x06,0x04,0x01,0x04,0x06,0x04,0x05,
	0x04,0x04,0x04,0x05,0x07,0x07,0x05,0x06,0x09,0x06,
	0x04,0x06,0x04,0x05,0x03,0x05,0x0a,0x07,0x05,0x05,
	0x06,0x02,0x01,0x07,0x04,0x06,0x04,0x06,0x03,0x05,
	0x0b,0x07,0x06,0x06,0x04,0x02,0x01,0x08,0x04,0x07,
	0x04,0x09,0x02,0x01,0x01,0x05,0x04,0x02,0x03,0x07,
	0x06,0x06,0x02,0x01,0x01,0x02,0x01,0x01,0x02,0x06,
	0x04,0x08,0x04,0x08,0x05,0x06,0x04,0x01,0x04,0x08,
	0x04,0x07,0x04,0x01,0x01,0x01,0x02,0x08,0x04,0x08,
	0x04,0x09,0x02,0x0f,0x02
};

#define	hotelLEN	721
unsigned char hoteltab[hotelLEN] = {
	0x02,0x27,0x0d,0x07,0x04,0x01,0x03,0x06,0x03,0x03,
	0x02,0x05,0x01,0x04,0x0a,0x06,0x03,0x02,0x04,0x05,
	0x03,0x02,0x03,0x05,0x02,0x03,0x06,0x01,0x05,0x05,
	0x03,0x02,0x04,0x06,0x02,0x02,0x04,0x0a,0x0b,0x05,
	0x04,0x01,0x04,0x06,0x02,0x02,0x04,0x0a,0x0b,0x05,
	0x04,0x01,0x05,0x05,0x03,0x02,0x04,0x05,0x01,0x04,
	0x0b,0x05,0x03,0x02,0x05,0x05,0x03,0x01,0x05,0x05,
	0x02,0x03,0x0a,0x06,0x03,0x02,0x05,0x05,0x03,0x01,
	0x01,0x01,0x03,0x06,0x02,0x02,0x0a,0x07,0x02,0x02,
	0x05,0x05,0x05,0x01,0x03,0x06,0x02,0x02,0x0b,0x06,
	0x03,0x01,0x05,0x06,0x04,0x01,0x04,0x06,0x01,0x03,
	0x09,0x08,0x08,0x07,0x08,0x09,0x0a,0x08,0x08,0x09,
	0x06,0x09,0x09,0x08,0x01,0x01,0x06,0x0a,0x06,0x09,
	0x09,0x09,0x07,0x0a,0x06,0x09,0x08,0x09,0x08,0x09,
	0x08,0x07,0x08,0x0a,0x08,0x09,0x08,0x07,0x07,0x0a,
	0x0a,0x09,0x06,0x09,0x06,0x0a,0x09,0x0a,0x09,0x05,
	0x08,0x0a,0x0a,0x0a,0x08,0x06,0x08,0x0c,0x09,0x0a,
	0x09,0x04,0x08,0x0e,0x05,0x1a,0x07,0x0c,0x02,0x21,
	0x02,0x01,0x01,0x82,0xbb,0x01,0x09,0x01,0x08,0x01,
	0x0c,0x01,0x0f,0x01,0x03,0x01,0x05,0x02,0x01,0x01,
	0x07,0x01,0x01,0x01,0x01,0x01,0x03,0x01,0x09,0x01,
	0x04,0x01,0x02,0x01,0x01,0x01,0x03,0x01,0x01,0x01,
	0x01,0x01,0x01,0x01,0x02,0x01,0x01,0x01,0x03,0x01,
	0x01,0x01,0x01,0x01,0x0d,0x01,0x05,0x01,0x06,0x01,
	0x01,0x01,0x01,0x01,0x08,0x01,0x17,0x01,0x0c,0x01,
	0x3a,0x01,0x17,0x01,0x81,0x05,0x02,0x02,0x01,0x01,
	0x01,0x01,0x0a,0x1b,0x01,0x01,0x02,0x02,0x01,0x01,
	0x01,0x02,0x0a,0x01,0x01,0x0a,0x01,0x0d,0x01,0x02,
	0x01,0x08,0x0b,0x09,0x02,0x01,0x04,0x07,0x03,0x0a,
	0x0c,0x08,0x05,0x08,0x05,0x08,0x01,0x01,0x02,0x01,
	0x02,0x01,0x08,0x08,0x06,0x07,0x05,0x07,0x05,0x02,
	0x01,0x01,0x07,0x08,0x06,0x07,0x06,0x06,0x05,0x04,
	0x08,0x07,0x05,0x08,0x05,0x07,0x05,0x04,0x07,0x08,
	0x05,0x08,0x05,0x07,0x05,0x04,0x07,0x08,0x05,0x07,
	0x05,0x08,0x04,0x05,0x07,0x07,0x05,0x08,0x05,0x07,
	0x05,0x05,0x07,0x07,0x05,0x07,0x05,0x08,0x04,0x05,
	0x08,0x07,0x05,0x07,0x05,0x08,0x04,0x05,0x08,0x07,
	0x05,0x06,0x07,0x06,0x05,0x05,0x08,0x05,0x01,0x02,
	0x04,0x07,0x06,0x06,0x05,0x06,0x08,0x05,0x01,0x01,
	0x05,0x06,0x07,0x05,0x06,0x06,0x08,0x05,0x01,0x01,
	0x05,0x07,0x05,0x07,0x05,0x06,0x08,0x05,0x01,0x01,
	0x05,0x07,0x05,0x07,0x04,0x07,0x09,0x04,0x02,0x01,
	0x04,0x08,0x04,0x08,0x03,0x08,0x09,0x04,0x01,0x02,
	0x04,0x08,0x04,0x08,0x04,0x08,0x08,0x05,0x01,0x01,
	0x05,0x07,0x05,0x08,0x03,0x08,0x08,0x05,0x08,0x04,
	0x02,0x01,0x05,0x08,0x02,0x0a,0x08,0x04,0x08,0x05,
	0x07,0x05,0x02,0x04,0x01,0x09,0x08,0x04,0x04,0x01,
	0x03,0x05,0x03,0x01,0x04,0x04,0x03,0x0d,0x09,0x05,
	0x03,0x01,0x01,0x01,0x02,0x04,0x08,0x05,0x03,0x09,
	0x02,0x01,0x01,0x01,0x09,0x05,0x03,0x03,0x02,0x04,
	0x05,0x01,0x02,0x05,0x04,0x09,0x03,0x02,0x05,0x01,
	0x04,0x04,0x04,0x02,0x03,0x04,0x04,0x03,0x02,0x04,
	0x04,0x08,0x04,0x03,0x04,0x02,0x05,0x05,0x03,0x02,
	0x03,0x04,0x04,0x04,0x01,0x04,0x04,0x09,0x03,0x04,
	0x03,0x03,0x07,0x05,0x05,0x01,0x01,0x06,0x04,0x09,
	0x04,0x06,0x01,0x03,0x01,0x01,0x01,0x05,0x02,0x03,
	0x09,0x06,0x04,0x09,0x04,0x09,0x04,0x05,0x03,0x03,
	0x03,0x05,0x02,0x02,0x05,0x03,0x04,0x05,0x04,0x04,
	0x01,0x04,0x05,0x0a,0x03,0x06,0x01,0x0c,0x02,0x03,
	0x04,0x05,0x05,0x06,0x04,0x09,0x05,0x06,0x01,0x01,
	0x01,0x01,0x03,0x06,0x03,0x12,0x03,0x05,0x07,0x06,
	0x03,0x0a,0x04,0x06,0x01,0x01,0x01,0x0b,0x04,0x19,
	0x03,0x03,0x02,0x07,0x04,0x0a,0x04,0x06,0x03,0x0b,
	0x04,0x07,0x02,0x1a,0x02,0x07,0x04,0x0b,0x04,0x06,
	0x03,0x0d,0x02,0x07,0x02,0x08,0x01,0x06,0x02,0x0e,
	0x01,0x07,0x04,0x0c,0x03,0x07,0x04,0x15,0x03,0x10,
	0x01,0x0e,0x01,0x08,0x04,0x0c,0x03,0x07,0x04,0x17,
	0x02,0x1f,0x02,0x07,0x04,0x0e,0x01,0x08,0x04,0x37,
	0x01,0x08,0x05,0x18,0x03,0x38,0x01,0x09,0x04,0x19,
	0x02,0x43,0x05,0x0b,0x01,0x0c,0x03,0x40,0x05,0x0e,
	0x01,0x09,0x03,0x39,0x01,0x09,0x03,0x0d,0x03,0x0b,
	0x02,0x39,0x02,0x08,0x04,0x01,0x01,0x0b,0x03,0x1b,
	0x01
};

#define	indiaLEN	598
unsigned char indiatab[indiaLEN] = {
	0x07,0x01,0x02,0x0d,0x08,0x0d,0x0a,0x01,0x01,0x0b,
	0x01,0x01,0x09,0x0d,0x0a,0x02,0x01,0x02,0x01,0x08,
	0x0a,0x0e,0x0b,0x01,0x01,0x02,0x01,0x08,0x02,0x01,
	0x07,0x0c,0x0c,0x02,0x01,0x0b,0x09,0x0c,0x0d,0x01,
	0x01,0x0b,0x09,0x0c,0x0c,0x02,0x01,0x0b,0x09,0x0b,
	0x0d,0x01,0x02,0x0b,0x09,0x0b,0x0c,0x02,0x01,0x0b,
	0x09,0x0b,0x0c,0x01,0x01,0x0b,0x07,0x01,0x01,0x0b,
	0x0b,0x01,0x01,0x0b,0x08,0x0c,0x0d,0x0b,0x07,0x01,
	0x01,0x0a,0x0d,0x0b,0x07,0x01,0x01,0x0b,0x0c,0x0b,
	0x07,0x01,0x02,0x0a,0x0c,0x11,0x07,0x0d,0x0b,0x11,
	0x06,0x01,0x01,0x08,0x0b,0x10,0x09,0x08,0x0b,0x10,
	0x09,0x07,0x0c,0x11,0x01,0x01,0x02,0x02,0x03,0x06,
	0x0c,0x11,0x01,0x01,0x02,0x01,0x01,0x02,0x01,0x07,
	0x0b,0x13,0x01,0x03,0x03,0x07,0x0c,0x10,0x01,0x01,
	0x04,0x02,0x01,0x08,0x0c,0x10,0x06,0x01,0x02,0x09,
	0x0b,0x10,0x07,0x01,0x02,0x09,0x0b,0x10,0x07,0x01,
	0x02,0x08,0x0c,0x12,0x05,0x01,0x01,0x09,0x0d,0x11,
	0x09,0x08,0x0d,0x18,0x03,0x06,0x02,0x04,0x0a,0x17,
	0x01,0x02,0x01,0x0b,0x0d,0x19,0x03,0x10,0x08,0x17,
	0x01,0x01,0x03,0x10,0x09,0x2f,0x07,0x32,0x07,0x2d,
	0x05,0x01,0x02,0x01,0x01,0x10,0x04,0x01,0x02,0x10,
	0x0c,0x01,0x01,0x0b,0x0a,0x02,0x01,0x0b,0x0d,0x01,
	0x01,0x0b,0x0b,0x0c,0x0d,0x0d,0x0b,0x0c,0x0e,0x02,
	0x01,0x0a,0x0b,0x0d,0x0b,0x01,0x02,0x01,0x01,0x0b,
	0x0b,0x0e,0x0d,0x0d,0x02,0x01,0x08,0x0e,0x0e,0x02,
	0x01,0x0b,0x0b,0x0d,0x0f,0x01,0x01,0x0b,0x0b,0x0f,
	0x0e,0x0d,0x0c,0x0e,0x0f,0x02,0x01,0x0b,0x01,0x01,
	0x07,0x01,0x01,0x0d,0x01,0x01,0x0d,0x01,0x01,0x02,
	0x01,0x0b,0x01,0x01,0x07,0x01,0x01,0x0e,0x0f,0x01,
	0x02,0x01,0x01,0x0b,0x02,0x01,0x08,0x0e,0x10,0x02,
	0x01,0x01,0x02,0x0a,0x09,0x10,0x12,0x01,0x01,0x02,
	0x01,0x0a,0x0a,0x0f,0x0a,0x01,0x08,0x01,0x01,0x02,
	0x01,0x08,0x0b,0x0d,0x0a,0x07,0x06,0x01,0x01,0x02,
	0x01,0x08,0x0a,0x0c,0x08,0x09,0x09,0x01,0x02,0x0a,
	0x08,0x0b,0x01,0x01,0x05,0x0b,0x0d,0x02,0x01,0x02,
	0x01,0x06,0x01,0x01,0x05,0x01,0x01,0x09,0x01,0x01,
	0x05,0x0a,0x09,0x06,0x04,0x01,0x02,0x08,0x01,0x01,
	0x07,0x09,0x08,0x09,0x07,0x08,0x07,0x01,0x01,0x08,
	0x08,0x08,0x07,0x0a,0x07,0x08,0x0a,0x09,0x06,0x01,
	0x01,0x08,0x07,0x0a,0x05,0x0a,0x08,0x04,0x05,0x02,
	0x01,0x05,0x01,0x02,0x05,0x08,0x07,0x08,0x06,0x09,
	0x07,0x05,0x08,0x08,0x06,0x08,0x07,0x08,0x05,0x08,
	0x07,0x08,0x0a,0x08,0x06,0x06,0x02,0x01,0x04,0x08,
	0x05,0x07,0x05,0x07,0x09,0x02,0x06,0x08,0x04,0x08,
	0x06,0x07,0x01,0x01,0x03,0x08,0x06,0x05,0x01,0x01,
	0x04,0x07,0x08,0x05,0x01,0x01,0x04,0x08,0x05,0x07,
	0x06,0x09,0x03,0x08,0x03,0x08,0x0a,0x05,0x01,0x02,
	0x04,0x08,0x04,0x07,0x03,0x09,0x02,0x0f,0x02,0x09,
	0x0a,0x05,0x01,0x01,0x04,0x08,0x04,0x07,0x04,0x08,
	0x03,0x09,0x02,0x04,0x03,0x08,0x0b,0x05,0x01,0x03,
	0x02,0x05,0x03,0x03,0x01,0x05,0x02,0x03,0x01,0x05,
	0x03,0x09,0x03,0x08,0x03,0x04,0x01,0x02,0x04,0x03,
	0x04,0x05,0x02,0x02,0x03,0x06,0x02,0x01,0x03,0x05,
	0x02,0x09,0x03,0x09,0x02,0x09,0x03,0x04,0x03,0x03,
	0x01,0x03,0x05,0x06,0x02,0x01,0x01,0x07,0x04,0x08,
	0x03,0x09,0x03,0x08,0x03,0x08,0x02,0x06,0x02,0x06,
	0x05,0x09,0x03,0x08,0x04,0x08,0x03,0x0a,0x02,0x11,
	0x02,0x08,0x02,0x06,0x03,0x05,0x01,0x07,0x02,0x09,
	0x04,0x09,0x02,0x0a,0x01,0x11,0x02,0x07,0x01,0x09,
	0x01,0x0b,0x03,0x11,0x01,0x80,0x8c,0x01
};

#define	julietLEN	532
unsigned char juliettab[julietLEN] = {
	0x01,0x02,0x01,0x22,0x01,0x0c,0x01,0x08,0x01,0x01,
	0x01,0x1a,0x01,0x0a,0x01,0x1b,0x01,0x0a,0x01,0x06,
	0x01,0x05,0x01,0x05,0x01,0x0a,0x01,0x04,0x01,0x03,
	0x01,0x04,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x05,
	0x01,0x12,0x01,0x0e,0x01,0x05,0x01,0x16,0x01,0x28,
	0x01,0x03,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
	0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x13,0x01,0x0f,
	0x01,0x01,0x0d,0x10,0x09,0x0d,0x0e,0x0e,0x09,0x0c,
	0x0f,0x0e,0x08,0x0b,0x0e,0x0c,0x08,0x0b,0x0f,0x0c,
	0x0a,0x0a,0x0f,0x0c,0x09,0x0a,0x10,0x0c,0x09,0x0b,
	0x0e,0x0c,0x0a,0x0a,0x0f,0x0c,0x09,0x0b,0x0e,0x0c,
	0x09,0x0b,0x10,0x0b,0x09,0x0a,0x10,0x0c,0x09,0x0a,
	0x10,0x0c,0x09,0x0a,0x10,0x0b,0x09,0x0b,0x0f,0x0c,
	0x09,0x0a,0x11,0x0b,0x08,0x0b,0x10,0x0b,0x09,0x0a,
	0x11,0x0b,0x08,0x0b,0x10,0x0c,0x08,0x0b,0x10,0x0d,
	0x09,0x09,0x11,0x0d,0x0a,0x08,0x12,0x0c,0x0a,0x09,
	0x09,0x01,0x08,0x0c,0x0a,0x0b,0x11,0x0b,0x0a,0x0b,
	0x10,0x0c,0x09,0x0a,0x09,0x03,0x06,0x0c,0x07,0x0a,
	0x09,0x03,0x07,0x0c,0x08,0x0a,0x08,0x02,0x01,0x01,
	0x06,0x0c,0x08,0x0a,0x11,0x0d,0x08,0x0a,0x10,0x02,
	0x01,0x0b,0x08,0x0b,0x10,0x01,0x01,0x0c,0x07,0x0b,
	0x0f,0x02,0x01,0x0b,0x08,0x0c,0x0f,0x01,0x01,0x0c,
	0x0a,0x0b,0x0e,0x01,0x01,0x0e,0x08,0x0b,0x0e,0x02,
	0x01,0x0d,0x09,0x0d,0x0c,0x01,0x01,0x0d,0x0a,0x0d,
	0x0c,0x01,0x01,0x0d,0x0a,0x0d,0x0b,0x01,0x01,0x0e,
	0x0a,0x0c,0x0c,0x01,0x01,0x0d,0x0a,0x0c,0x0c,0x01,
	0x01,0x0d,0x09,0x0c,0x0d,0x01,0x01,0x0b,0x01,0x01,
	0x08,0x0c,0x0d,0x02,0x01,0x0b,0x01,0x01,0x06,0x01,
	0x01,0x0a,0x01,0x01,0x0d,0x01,0x02,0x0a,0x08,0x01,
	0x01,0x0a,0x0f,0x01,0x02,0x08,0x01,0x01,0x08,0x0b,
	0x0a,0x01,0x05,0x02,0x01,0x08,0x01,0x02,0x07,0x0b,
	0x08,0x03,0x05,0x01,0x02,0x08,0x01,0x01,0x08,0x0a,
	0x06,0x06,0x05,0x01,0x01,0x08,0x02,0x01,0x05,0x0b,
	0x07,0x06,0x06,0x01,0x01,0x08,0x08,0x09,0x07,0x07,
	0x07,0x0a,0x07,0x08,0x06,0x09,0x09,0x08,0x07,0x08,
	0x07,0x08,0x0b,0x08,0x06,0x09,0x05,0x09,0x0c,0x08,
	0x02,0x01,0x04,0x08,0x05,0x07,0x0f,0x08,0x06,0x06,
	0x01,0x01,0x06,0x06,0x06,0x02,0x07,0x08,0x07,0x06,
	0x07,0x07,0x06,0x03,0x07,0x07,0x03,0x01,0x03,0x07,
	0x07,0x06,0x06,0x04,0x07,0x07,0x06,0x07,0x07,0x07,
	0x04,0x06,0x08,0x06,0x06,0x08,0x05,0x07,0x05,0x07,
	0x08,0x07,0x03,0x01,0x02,0x07,0x04,0x08,0x04,0x09,
	0x0a,0x06,0x04,0x01,0x01,0x06,0x01,0x01,0x04,0x08,
	0x03,0x09,0x03,0x01,0x08,0x07,0x03,0x02,0x01,0x05,
	0x02,0x01,0x04,0x07,0x04,0x08,0x03,0x04,0x08,0x07,
	0x03,0x01,0x01,0x06,0x01,0x01,0x04,0x08,0x05,0x07,
	0x05,0x06,0x07,0x07,0x03,0x01,0x01,0x06,0x01,0x01,
	0x04,0x08,0x05,0x08,0x04,0x07,0x09,0x06,0x03,0x01,
	0x02,0x08,0x04,0x08,0x05,0x09,0x03,0x0a,0x0a,0x08,
	0x02,0x01,0x03,0x07,0x04,0x09,0x01,0x01,0x04,0x08,
	0x01,0x0e,0x01,0x01,0x03,0x06,0x02,0x09,0x01,0x01,
	0x01,0x02,0x02,0x0b,0x01,0x02,0x01,0x0f,0x01,0x19,
	0x01,0x83,0x04,0x01,0x02,0x01,0x0b,0x01,0x18,0x01,
	0x10,0x01
};

#define	kiloLEN	785
unsigned char kilotab[kiloLEN] = {
	0x01,0x30,0x01,0x01,0x01,0x03,0x01,0x1c,0x01,0x20,
	0x01,0x80,0xc3,0x01,0x2c,0x01,0x02,0x01,0x80,0xed,
	0x0d,0x13,0x11,0x01,0x01,0x02,0x01,0x0d,0x02,0x01,
	0x06,0x01,0x02,0x04,0x05,0x01,0x01,0x02,0x01,0x0d,
	0x02,0x01,0x06,0x01,0x02,0x01,0x07,0x01,0x02,0x01,
	0x01,0x0e,0x01,0x01,0x09,0x04,0x04,0x01,0x02,0x01,
	0x02,0x0d,0x01,0x02,0x05,0x01,0x02,0x02,0x01,0x01,
	0x04,0x01,0x02,0x01,0x01,0x0e,0x01,0x01,0x06,0x01,
	0x02,0x03,0x05,0x01,0x01,0x02,0x01,0x0d,0x02,0x01,
	0x06,0x01,0x01,0x02,0x01,0x01,0x04,0x01,0x01,0x02,
	0x01,0x02,0x01,0x0b,0x01,0x01,0x06,0x01,0x01,0x02,
	0x02,0x01,0x03,0x01,0x02,0x01,0x01,0x02,0x01,0x0b,
	0x01,0x01,0x02,0x01,0x03,0x01,0x01,0x02,0x02,0x01,
	0x03,0x01,0x02,0x01,0x01,0x02,0x01,0x0a,0x02,0x01,
	0x02,0x01,0x03,0x01,0x01,0x02,0x08,0x01,0x02,0x0d,
	0x01,0x02,0x01,0x01,0x01,0x01,0x01,0x02,0x01,0x02,
	0x05,0x01,0x01,0x02,0x01,0x02,0x01,0x0b,0x01,0x01,
	0x06,0x01,0x01,0x02,0x05,0x01,0x02,0x01,0x02,0x01,
	0x01,0x0b,0x01,0x01,0x03,0x02,0x01,0x04,0x05,0x01,
	0x02,0x01,0x02,0x01,0x01,0x0b,0x01,0x01,0x02,0x01,
	0x03,0x04,0x01,0x01,0x03,0x01,0x02,0x01,0x02,0x0d,
	0x01,0x01,0x04,0x01,0x01,0x05,0x07,0x02,0x01,0x0d,
	0x01,0x02,0x03,0x01,0x01,0x06,0x04,0x01,0x01,0x02,
	0x01,0x0d,0x02,0x01,0x03,0x01,0x01,0x06,0x04,0x01,
	0x02,0x01,0x01,0x0e,0x01,0x01,0x06,0x05,0x02,0x01,
	0x02,0x01,0x02,0x01,0x01,0x02,0x01,0x08,0x01,0x01,
	0x02,0x01,0x03,0x01,0x02,0x05,0x07,0x01,0x02,0x01,
	0x01,0x0b,0x01,0x01,0x04,0x01,0x01,0x06,0x01,0x01,
	0x02,0x01,0x02,0x01,0x02,0x0d,0x01,0x01,0x03,0x01,
	0x02,0x05,0x01,0x02,0x02,0x01,0x01,0x02,0x01,0x0b,
	0x01,0x02,0x05,0x01,0x02,0x05,0x01,0x01,0x03,0x01,
	0x04,0x0b,0x01,0x01,0x06,0x01,0x02,0x07,0x03,0x01,
	0x02,0x01,0x02,0x0d,0x08,0x07,0x06,0x02,0x01,0x0b,
	0x01,0x01,0x03,0x01,0x02,0x01,0x01,0x08,0x09,0x0b,
	0x08,0x0a,0x07,0x01,0x02,0x0b,0x08,0x0a,0x08,0x0e,
	0x08,0x0b,0x09,0x0e,0x07,0x0a,0x0a,0x0d,0x07,0x0a,
	0x09,0x01,0x01,0x0b,0x08,0x0a,0x0a,0x01,0x01,0x0b,
	0x08,0x0b,0x09,0x02,0x01,0x0b,0x08,0x0b,0x0a,0x01,
	0x01,0x0b,0x08,0x01,0x01,0x0a,0x09,0x02,0x01,0x0b,
	0x08,0x01,0x01,0x0a,0x0a,0x01,0x01,0x0d,0x06,0x01,
	0x02,0x0b,0x09,0x02,0x01,0x0d,0x09,0x0d,0x08,0x01,
	0x02,0x0d,0x08,0x0e,0x09,0x01,0x01,0x0d,0x06,0x01,
	0x01,0x0d,0x0c,0x10,0x05,0x02,0x01,0x0e,0x0a,0x0c,
	0x01,0x01,0x01,0x01,0x05,0x0a,0x01,0x01,0x01,0x04,
	0x0b,0x0a,0x09,0x0b,0x05,0x07,0x07,0x0a,0x07,0x08,
	0x08,0x08,0x09,0x09,0x06,0x09,0x06,0x09,0x0c,0x07,
	0x08,0x08,0x06,0x0a,0x10,0x06,0x01,0x03,0x04,0x05,
	0x02,0x01,0x06,0x0a,0x04,0x03,0x03,0x02,0x05,0x0a,
	0x04,0x05,0x01,0x03,0x05,0x06,0x01,0x02,0x05,0x03,
	0x03,0x02,0x06,0x0a,0x05,0x05,0x01,0x01,0x06,0x07,
	0x07,0x04,0x0c,0x08,0x07,0x05,0x08,0x06,0x05,0x01,
	0x02,0x05,0x05,0x01,0x08,0x07,0x08,0x05,0x07,0x07,
	0x04,0x08,0x0f,0x07,0x08,0x05,0x07,0x07,0x04,0x09,
	0x04,0x03,0x04,0x02,0x05,0x06,0x08,0x05,0x08,0x07,
	0x04,0x08,0x05,0x03,0x02,0x03,0x06,0x07,0x08,0x05,
	0x07,0x08,0x04,0x08,0x04,0x05,0x01,0x03,0x07,0x07,
	0x07,0x06,0x07,0x08,0x04,0x09,0x03,0x06,0x01,0x02,
	0x08,0x07,0x08,0x06,0x04,0x0a,0x04,0x0a,0x03,0x05,
	0x03,0x03,0x07,0x08,0x08,0x06,0x04,0x0a,0x04,0x0b,
	0x03,0x05,0x02,0x03,0x08,0x08,0x05,0x01,0x02,0x06,
	0x04,0x0a,0x04,0x0b,0x04,0x04,0x02,0x04,0x05,0x02,
	0x03,0x07,0x04,0x02,0x02,0x06,0x04,0x0b,0x03,0x0c,
	0x03,0x05,0x03,0x03,0x04,0x03,0x03,0x07,0x02,0x01,
	0x01,0x02,0x02,0x07,0x05,0x0a,0x03,0x06,0x01,0x05,
	0x03,0x05,0x03,0x03,0x04,0x03,0x04,0x07,0x02,0x03,
	0x03,0x06,0x05,0x0a,0x04,0x0c,0x04,0x0b,0x04,0x03,
	0x04,0x07,0x02,0x01,0x01,0x02,0x02,0x07,0x05,0x0a,
	0x04,0x0c,0x04,0x0b,0x04,0x04,0x04,0x07,0x04,0x02,
	0x03,0x06,0x05,0x0b,0x04,0x0d,0x04,0x0b,0x05,0x05,
	0x01,0x07,0x04,0x03,0x03,0x06,0x04,0x0d,0x04,0x0c,
	0x04,0x0b,0x05,0x06,0x01,0x08,0x04,0x02,0x04,0x06,
	0x04,0x0d,0x04,0x0c,0x04,0x0b,0x06,0x07,0x02,0x0d,
	0x04,0x08,0x04,0x0d,0x04,0x0c,0x04,0x0d,0x04,0x07,
	0x01,0x10,0x04,0x0b,0x01,0x0e,0x04,0x0e,0x02,0x0d,
	0x04,0x15,0x02,0x01,0x04,0x0b,0x02,0x11,0x01,0x1d,
	0x01,0x1a,0x01,0x01,0x02,0x01,0x01,0x0c,0x01,0x02,
	0x01,0x11,0x01,0x1d,0x01,0x1a,0x01,0x01,0x02,0x01,
	0x01,0x0e,0x01,0x01,0x02,0x4b,0x05,0x0f,0x02,0x4f,
	0x05,0x10,0x02,0x14,0x01
};

#define	limaLEN	727
unsigned char limatab[limaLEN] = {
	0x07,0x0f,0x08,0x0f,0x0f,0x01,0x01,0x0e,0x09,0x10,
	0x0c,0x01,0x07,0x0f,0x09,0x0f,0x0b,0x04,0x06,0x01,
	0x01,0x0e,0x09,0x0e,0x0b,0x07,0x01,0x01,0x02,0x11,
	0x07,0x0e,0x09,0x08,0x05,0x11,0x06,0x0d,0x09,0x08,
	0x05,0x12,0x06,0x0e,0x01,0x01,0x05,0x01,0x0a,0x11,
	0x01,0x01,0x04,0x01,0x01,0x11,0x01,0x01,0x01,0x01,
	0x0a,0x13,0x02,0x02,0x01,0x01,0x02,0x0e,0x01,0x02,
	0x0a,0x11,0x02,0x02,0x01,0x02,0x01,0x12,0x01,0x01,
	0x09,0x0f,0x07,0x0b,0x01,0x01,0x11,0x0d,0x08,0x0c,
	0x11,0x02,0x01,0x0b,0x07,0x0b,0x11,0x02,0x01,0x0b,
	0x07,0x0a,0x01,0x01,0x10,0x01,0x01,0x0b,0x09,0x0a,
	0x0f,0x02,0x01,0x0b,0x09,0x0a,0x0e,0x02,0x01,0x0b,
	0x09,0x0a,0x0e,0x02,0x01,0x0c,0x08,0x0a,0x0e,0x02,
	0x01,0x0c,0x0a,0x0a,0x0c,0x01,0x02,0x0c,0x09,0x0b,
	0x0b,0x02,0x01,0x0c,0x09,0x0b,0x0b,0x01,0x01,0x0c,
	0x07,0x01,0x01,0x09,0x01,0x01,0x0d,0x01,0x01,0x0a,
	0x06,0x01,0x02,0x0b,0x0c,0x01,0x01,0x09,0x07,0x01,
	0x02,0x0b,0x0b,0x02,0x01,0x09,0x01,0x01,0x07,0x0c,
	0x0b,0x02,0x01,0x09,0x01,0x01,0x04,0x02,0x01,0x0b,
	0x09,0x01,0x02,0x01,0x01,0x0a,0x01,0x01,0x01,0x01,
	0x02,0x01,0x02,0x0a,0x01,0x02,0x06,0x01,0x02,0x01,
	0x02,0x0b,0x01,0x01,0x02,0x01,0x02,0x02,0x01,0x08,
	0x01,0x01,0x09,0x02,0x01,0x0b,0x01,0x02,0x01,0x02,
	0x01,0x02,0x01,0x08,0x01,0x01,0x07,0x01,0x02,0x01,
	0x01,0x0c,0x01,0x01,0x02,0x01,0x02,0x0a,0x09,0x01,
	0x02,0x0e,0x01,0x01,0x02,0x01,0x01,0x09,0x01,0x01,
	0x0c,0x02,0x01,0x0b,0x02,0x01,0x01,0x0e,0x0b,0x02,
	0x01,0x09,0x01,0x01,0x02,0x01,0x02,0x0e,0x0b,0x0b,
	0x01,0x02,0x04,0x01,0x01,0x0d,0x0b,0x0c,0x01,0x01,
	0x06,0x0d,0x09,0x01,0x01,0x0c,0x01,0x01,0x07,0x10,
	0x0b,0x10,0x02,0x0f,0x0d,0x0f,0x04,0x0f,0x0c,0x10,
	0x03,0x10,0x0c,0x0f,0x03,0x12,0x0b,0x10,0x02,0x12,
	0x0b,0x10,0x01,0x14,0x0c,0x25,0x0c,0x26,0x0c,0x18,
	0x01,0x0d,0x0c,0x0f,0x01,0x07,0x02,0x0d,0x0d,0x17,
	0x03,0x0d,0x0c,0x17,0x03,0x0d,0x08,0x0d,0x01,0x06,
	0x01,0x01,0x01,0x0c,0x01,0x07,0x0a,0x0b,0x03,0x05,
	0x02,0x01,0x01,0x02,0x04,0x05,0x02,0x04,0x02,0x04,
	0x09,0x07,0x01,0x04,0x02,0x05,0x04,0x02,0x04,0x04,
	0x03,0x05,0x01,0x04,0x0a,0x05,0x01,0x01,0x01,0x04,
	0x02,0x05,0x03,0x04,0x02,0x06,0x02,0x05,0x01,0x04,
	0x04,0x02,0x07,0x04,0x02,0x01,0x01,0x02,0x01,0x01,
	0x02,0x05,0x05,0x01,0x02,0x06,0x02,0x0a,0x04,0x03,
	0x09,0x05,0x03,0x04,0x02,0x05,0x03,0x03,0x02,0x05,
	0x03,0x05,0x02,0x04,0x03,0x04,0x03,0x02,0x06,0x04,
	0x04,0x02,0x01,0x01,0x01,0x04,0x04,0x04,0x01,0x05,
	0x03,0x05,0x03,0x03,0x04,0x03,0x03,0x03,0x07,0x05,
	0x01,0x01,0x02,0x04,0x01,0x05,0x04,0x05,0x01,0x04,
	0x02,0x05,0x03,0x04,0x03,0x04,0x04,0x01,0x09,0x05,
	0x03,0x04,0x02,0x05,0x04,0x05,0x01,0x04,0x02,0x06,
	0x03,0x04,0x01,0x05,0x03,0x02,0x05,0x02,0x04,0x05,
	0x03,0x04,0x02,0x05,0x03,0x04,0x01,0x01,0x01,0x04,
	0x02,0x05,0x03,0x05,0x01,0x04,0x03,0x04,0x03,0x03,
	0x07,0x05,0x04,0x04,0x01,0x05,0x03,0x06,0x01,0x04,
	0x02,0x07,0x02,0x0a,0x02,0x04,0x02,0x04,0x08,0x05,
	0x04,0x04,0x02,0x04,0x03,0x05,0x03,0x02,0x01,0x01,
	0x02,0x04,0x01,0x05,0x03,0x05,0x02,0x04,0x03,0x03,
	0x0a,0x05,0x04,0x04,0x01,0x05,0x03,0x04,0x03,0x03,
	0x03,0x05,0x02,0x04,0x03,0x05,0x02,0x04,0x02,0x04,
	0x04,0x02,0x05,0x05,0x03,0x0a,0x04,0x04,0x01,0x05,
	0x03,0x05,0x02,0x05,0x02,0x05,0x01,0x05,0x03,0x04,
	0x03,0x03,0x05,0x05,0x04,0x0a,0x03,0x0a,0x01,0x01,
	0x01,0x05,0x02,0x07,0x01,0x0a,0x02,0x06,0x0c,0x05,
	0x04,0x0a,0x03,0x06,0x01,0x03,0x03,0x05,0x03,0x11,
	0x02,0x06,0x07,0x03,0x04,0x05,0x03,0x05,0x01,0x04,
	0x04,0x05,0x02,0x04,0x02,0x04,0x03,0x0b,0x02,0x05,
	0x01,0x06,0x02,0x03,0x04,0x03,0x04,0x05,0x04,0x0a,
	0x02,0x0b,0x03,0x05,0x02,0x0b,0x02,0x05,0x02,0x0a,
	0x04,0x03,0x04,0x07,0x01,0x01,0x02,0x0a,0x02,0x0a,
	0x01,0x08,0x01,0x1f,0x02,0x05,0x04,0x02,0x01,0x05,
	0x04,0x0a,0x03,0x0c,0x01,0x05,0x01,0x0c,0x01,0x13,
	0x02,0x04,0x02,0x01,0x01,0x03,0x01,0x06,0x03,0x0a,
	0x04,0x0b,0x02,0x05,0x01,0x13,0x01,0x13,0x01,0x0b,
	0x01,0x06,0x03,0x0a,0x03,0x0b,0x01
};

#define	mikeLEN	456
unsigned char miketab[mikeLEN] = {
	0x01,0x47,0x01,0x3b,0x02,0x05,0x01,0x02,0x02,0x38,
	0x01,0x04,0x02,0x01,0x02,0x37,0x01,0x01,0x01,0x04,
	0x05,0x35,0x01,0x01,0x08,0x35,0x09,0x01,0x01,0x32,
	0x0b,0x32,0x08,0x02,0x01,0x17,0x01,0x18,0x09,0x01,
	0x02,0x16,0x01,0x17,0x08,0x02,0x01,0x17,0x02,0x13,
	0x0d,0x15,0x04,0x11,0x0d,0x15,0x04,0x0b,0x02,0x02,
	0x07,0x0c,0x03,0x05,0x02,0x06,0x02,0x05,0x01,0x05,
	0x0b,0x06,0x03,0x03,0x03,0x05,0x04,0x0a,0x02,0x05,
	0x0b,0x04,0x04,0x04,0x02,0x05,0x04,0x05,0x02,0x04,
	0x01,0x05,0x0a,0x04,0x04,0x04,0x03,0x04,0x03,0x04,
	0x04,0x04,0x02,0x03,0x04,0x01,0x05,0x04,0x04,0x04,
	0x02,0x04,0x04,0x04,0x03,0x04,0x03,0x03,0x09,0x04,
	0x04,0x04,0x03,0x03,0x03,0x04,0x04,0x04,0x02,0x03,
	0x09,0x04,0x04,0x03,0x03,0x03,0x04,0x04,0x03,0x03,
	0x04,0x03,0x09,0x04,0x03,0x04,0x03,0x03,0x04,0x04,
	0x02,0x04,0x03,0x04,0x08,0x04,0x04,0x03,0x03,0x03,
	0x03,0x05,0x02,0x03,0x04,0x03,0x08,0x05,0x03,0x04,
	0x02,0x03,0x04,0x03,0x04,0x03,0x03,0x04,0x07,0x05,
	0x03,0x03,0x02,0x04,0x03,0x04,0x03,0x03,0x03,0x03,
	0x03,0x02,0x04,0x04,0x04,0x03,0x02,0x04,0x03,0x03,
	0x02,0x04,0x02,0x04,0x04,0x02,0x04,0x05,0x03,0x03,
	0x01,0x05,0x02,0x04,0x02,0x04,0x02,0x04,0x02,0x02,
	0x07,0x04,0x03,0x03,0x02,0x04,0x03,0x04,0x01,0x04,
	0x02,0x05,0x01,0x02,0x07,0x05,0x01,0x03,0x03,0x04,
	0x03,0x01,0x02,0x07,0x01,0x02,0x01,0x03,0x01,0x01,
	0x08,0x05,0x01,0x02,0x03,0x06,0x06,0x08,0x03,0x02,
	0x01,0x04,0x06,0x07,0x03,0x01,0x01,0x06,0x04,0x01,
	0x01,0x06,0x01,0x01,0x02,0x01,0x01,0x05,0x06,0x07,
	0x03,0x01,0x01,0x01,0x02,0x03,0x01,0x01,0x04,0x08,
	0x05,0x04,0x07,0x08,0x02,0x01,0x03,0x06,0x07,0x07,
	0x06,0x03,0x06,0x08,0x01,0x02,0x01,0x01,0x01,0x01,
	0x01,0x04,0x01,0x02,0x05,0x09,0x0d,0x02,0x01,0x06,
	0x01,0x01,0x01,0x01,0x04,0x07,0x06,0x0b,0x0c,0x01,
	0x01,0x06,0x01,0x01,0x06,0x01,0x01,0x08,0x01,0x01,
	0x02,0x0c,0x01,0x01,0x0b,0x06,0x01,0x01,0x01,0x01,
	0x01,0x01,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x08,
	0x01,0x02,0x01,0x01,0x01,0x01,0x01,0x0b,0x0c,0x02,
	0x01,0x01,0x01,0x08,0x01,0x01,0x06,0x01,0x01,0x0a,
	0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x0d,0x01,0x01,
	0x09,0x02,0x01,0x01,0x01,0x06,0x01,0x01,0x01,0x01,
	0x06,0x01,0x01,0x01,0x01,0x08,0x01,0x05,0x02,0x01,
	0x01,0x12,0x01,0x01,0x09,0x01,0x01,0x02,0x01,0x05,
	0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x03,0x02,
	0x01,0x03,0x01,0x0c,0x01,0x05,0x01,0x12,0x01,0x03,
	0x01,0x08,0x01,0x02,0x01,0x01,0x01,0x12,0x01,0x01,
	0x01,0x83,0x47,0x01,0x02,0x01
};

#define	novemberLEN	729
unsigned char novembertab[novemberLEN] = {
	0x01,0x37,0x01,0x01,0x04,0x36,0x09,0x35,0x01,0x01,
	0x08,0x32,0x01,0x01,0x0a,0x32,0x0a,0x34,0x0b,0x2c,
	0x0b,0x0d,0x03,0x01,0x02,0x0b,0x01,0x0c,0x0e,0x0d,
	0x04,0x0c,0x01,0x01,0x01,0x0a,0x10,0x09,0x01,0x01,
	0x05,0x09,0x02,0x0c,0x11,0x08,0x05,0x01,0x02,0x05,
	0x02,0x02,0x03,0x0a,0x08,0x01,0x08,0x09,0x05,0x02,
	0x01,0x05,0x03,0x01,0x01,0x01,0x01,0x0a,0x08,0x01,
	0x08,0x09,0x05,0x08,0x05,0x09,0x01,0x02,0x06,0x03,
	0x07,0x0a,0x04,0x09,0x04,0x09,0x04,0x01,0x05,0x03,
	0x07,0x09,0x05,0x08,0x05,0x0a,0x09,0x03,0x06,0x0a,
	0x04,0x0a,0x04,0x0a,0x09,0x03,0x05,0x0a,0x05,0x0a,
	0x04,0x0a,0x10,0x0b,0x05,0x0a,0x04,0x0a,0x06,0x01,
	0x01,0x01,0x07,0x0b,0x05,0x0b,0x05,0x09,0x06,0x04,
	0x06,0x0b,0x06,0x0a,0x05,0x09,0x07,0x04,0x05,0x0b,
	0x06,0x0b,0x04,0x07,0x0a,0x02,0x05,0x0c,0x06,0x0b,
	0x04,0x06,0x0b,0x03,0x05,0x0c,0x06,0x0c,0x04,0x06,
	0x04,0x01,0x0c,0x0c,0x07,0x0b,0x04,0x06,0x03,0x02,
	0x07,0x02,0x05,0x0c,0x07,0x0d,0x01,0x05,0x04,0x0b,
	0x06,0x0d,0x08,0x22,0x07,0x35,0x01,0x02,0x01,0x07,
	0x03,0x41,0x01,0x01,0x01,0x42,0x01,0x01,0x01,0x01,
	0x01,0x40,0x02,0x01,0x01,0x45,0x03,0x43,0x03,0x3b,
	0x07,0x2f,0x01,0x01,0x0b,0x0b,0x02,0x01,0x05,0x16,
	0x01,0x02,0x0c,0x0b,0x08,0x09,0x05,0x09,0x0d,0x09,
	0x08,0x08,0x01,0x01,0x04,0x09,0x0d,0x09,0x08,0x08,
	0x04,0x0b,0x0d,0x09,0x04,0x01,0x02,0x06,0x06,0x09,
	0x01,0x02,0x0d,0x08,0x05,0x01,0x01,0x06,0x05,0x01,
	0x01,0x06,0x01,0x01,0x02,0x05,0x09,0x08,0x04,0x02,
	0x01,0x05,0x06,0x08,0x03,0x06,0x08,0x08,0x04,0x08,
	0x06,0x08,0x04,0x05,0x08,0x07,0x05,0x08,0x06,0x07,
	0x02,0x01,0x01,0x05,0x08,0x04,0x01,0x02,0x05,0x07,
	0x06,0x07,0x02,0x07,0x07,0x05,0x01,0x02,0x04,0x08,
	0x05,0x07,0x03,0x07,0x07,0x05,0x01,0x02,0x04,0x05,
	0x01,0x02,0x04,0x08,0x03,0x07,0x07,0x04,0x01,0x03,
	0x04,0x04,0x01,0x03,0x04,0x08,0x02,0x07,0x07,0x04,
	0x01,0x03,0x04,0x04,0x01,0x03,0x04,0x08,0x02,0x01,
	0x01,0x04,0x07,0x05,0x01,0x03,0x03,0x05,0x01,0x03,
	0x04,0x09,0x03,0x02,0x09,0x04,0x01,0x04,0x03,0x04,
	0x02,0x04,0x03,0x0a,0x02,0x03,0x07,0x0b,0x02,0x01,
	0x01,0x02,0x01,0x01,0x01,0x18,0x0c,0x14,0x02,0x02,
	0x01,0x0b,0x0b,0x24,0x0c,0x14,0x01,0x11,0x0a,0x14,
	0x02,0x10,0x0b,0x26,0x0a,0x27,0x0a,0x27,0x0a,0x27,
	0x0b,0x14,0x01,0x04,0x01,0x0e,0x0a,0x14,0x01,0x02,
	0x01,0x02,0x01,0x0d,0x0b,0x14,0x01,0x04,0x02,0x0d,
	0x0c,0x14,0x01,0x01,0x05,0x0e,0x0b,0x14,0x07,0x10,
	0x0a,0x16,0x06,0x12,0x09,0x17,0x05,0x13,0x09,0x32,
	0x09,0x1a,0x01,0x18,0x07,0x39,0x01,0x01,0x01,0x02,
	0x01,0x39,0x08,0x36,0x07,0x11,0x04,0x19,0x01,0x03,
	0x0b,0x0b,0x09,0x0a,0x04,0x0a,0x09,0x02,0x07,0x0a,
	0x09,0x09,0x04,0x0a,0x08,0x04,0x08,0x0a,0x09,0x09,
	0x04,0x0a,0x08,0x08,0x05,0x0a,0x09,0x08,0x06,0x09,
	0x08,0x08,0x08,0x09,0x09,0x05,0x09,0x09,0x08,0x07,
	0x0b,0x09,0x06,0x08,0x09,0x0a,0x04,0x0a,0x0d,0x0a,
	0x04,0x03,0x02,0x05,0x02,0x03,0x03,0x0a,0x04,0x0a,
	0x09,0x02,0x04,0x0a,0x05,0x02,0x02,0x05,0x03,0x02,
	0x04,0x0a,0x04,0x0a,0x08,0x03,0x05,0x0a,0x04,0x02,
	0x02,0x06,0x02,0x03,0x03,0x0a,0x04,0x0a,0x03,0x01,
	0x04,0x04,0x07,0x0a,0x05,0x01,0x02,0x06,0x03,0x02,
	0x03,0x0b,0x03,0x03,0x02,0x05,0x02,0x03,0x03,0x05,
	0x07,0x0a,0x04,0x02,0x02,0x06,0x03,0x02,0x03,0x0b,
	0x03,0x04,0x01,0x05,0x03,0x03,0x02,0x06,0x08,0x0a,
	0x04,0x03,0x02,0x05,0x03,0x02,0x04,0x0a,0x04,0x04,
	0x01,0x05,0x02,0x04,0x02,0x05,0x03,0x01,0x06,0x0b,
	0x04,0x01,0x03,0x05,0x03,0x02,0x04,0x0a,0x04,0x0a,
	0x02,0x03,0x02,0x09,0x02,0x01,0x06,0x0b,0x04,0x0a,
	0x03,0x02,0x03,0x0a,0x04,0x0a,0x02,0x0e,0x06,0x03,
	0x03,0x0b,0x03,0x03,0x02,0x05,0x02,0x04,0x02,0x0b,
	0x03,0x0b,0x02,0x04,0x01,0x0b,0x03,0x05,0x01,0x0e,
	0x04,0x02,0x01,0x0c,0x03,0x0b,0x03,0x0c,0x01,0x03,
	0x01,0x0d,0x02,0x0a,0x02,0x0b,0x04,0x03,0x01,0x0c,
	0x02,0x0b,0x03,0x1d,0x02,0x0e,0x02,0x0a,0x04,0x0f,
	0x03,0x0c,0x02,0x0f,0x01,0x13,0x01,0x0c,0x02,0x0a,
	0x04,0x0a,0x02,0x03,0x03,0x0b,0x02,0x11,0x01,0x0d,
	0x01,0x21,0x03,0x0b,0x01,0x05,0x01,0x0c,0x01
};

#define	oscarLEN	710
unsigned char oscartab[oscarLEN] = {
	0x01,0x07,0x02,0x09,0x03,0x1a,0x02,0x04,0x06,0x04,
	0x04,0x05,0x01,0x05,0x02,0x05,0x03,0x11,0x02,0x06,
	0x03,0x02,0x01,0x02,0x05,0x05,0x04,0x04,0x02,0x04,
	0x03,0x04,0x04,0x10,0x03,0x04,0x08,0x04,0x04,0x05,
	0x02,0x03,0x03,0x05,0x03,0x05,0x02,0x08,0x04,0x04,
	0x06,0x05,0x04,0x04,0x02,0x04,0x02,0x05,0x04,0x06,
	0x02,0x06,0x04,0x04,0x05,0x05,0x04,0x04,0x02,0x03,
	0x04,0x04,0x04,0x08,0x01,0x06,0x04,0x03,0x05,0x04,
	0x04,0x04,0x02,0x04,0x03,0x05,0x03,0x06,0x01,0x08,
	0x04,0x03,0x04,0x04,0x04,0x04,0x03,0x04,0x03,0x04,
	0x03,0x05,0x02,0x08,0x04,0x03,0x04,0x04,0x04,0x04,
	0x02,0x04,0x03,0x04,0x04,0x04,0x02,0x08,0x04,0x03,
	0x04,0x04,0x04,0x04,0x02,0x03,0x04,0x04,0x03,0x04,
	0x03,0x07,0x05,0x02,0x02,0x05,0x04,0x04,0x02,0x04,
	0x03,0x03,0x04,0x04,0x04,0x06,0x05,0x01,0x03,0x04,
	0x04,0x04,0x03,0x03,0x03,0x04,0x03,0x05,0x03,0x07,
	0x05,0x01,0x02,0x04,0x04,0x04,0x02,0x03,0x04,0x04,
	0x03,0x07,0x04,0x04,0x07,0x05,0x04,0x08,0x04,0x04,
	0x03,0x08,0x03,0x04,0x08,0x04,0x05,0x02,0x01,0x04,
	0x04,0x05,0x01,0x03,0x02,0x05,0x03,0x04,0x07,0x04,
	0x05,0x01,0x02,0x04,0x05,0x02,0x01,0x05,0x03,0x04,
	0x01,0x05,0x07,0x05,0x03,0x01,0x04,0x04,0x03,0x01,
	0x04,0x04,0x03,0x04,0x01,0x03,0x01,0x04,0x05,0x06,
	0x06,0x06,0x06,0x06,0x02,0x04,0x05,0x04,0x06,0x08,
	0x04,0x0a,0x01,0x01,0x01,0x09,0x06,0x04,0x07,0x0b,
	0x02,0x01,0x01,0x08,0x05,0x08,0x04,0x06,0x09,0x16,
	0x05,0x06,0x01,0x0b,0x01,0x02,0x02,0x06,0x01,0x01,
	0x05,0x22,0x01,0x01,0x01,0x0e,0x01,0x01,0x01,0x01,
	0x01,0x04,0x01,0x01,0x02,0x03,0x01,0x01,0x01,0x09,
	0x01,0x0b,0x01,0x07,0x01,0x01,0x01,0x0a,0x01,0x09,
	0x01,0x01,0x01,0x02,0x04,0x01,0x01,0x07,0x01,0x01,
	0x01,0x01,0x01,0x06,0x01,0x08,0x01,0x01,0x01,0x02,
	0x01,0x09,0x01,0x02,0x01,0x06,0x04,0x04,0x02,0x01,
	0x01,0x06,0x01,0x06,0x04,0x01,0x01,0x0e,0x02,0x02,
	0x01,0x11,0x01,0x02,0x01,0x03,0x01,0x01,0x01,0x06,
	0x01,0x04,0x01,0x03,0x01,0x02,0x01,0x04,0x03,0x04,
	0x01,0x01,0x02,0x03,0x01,0x01,0x01,0x03,0x01,0x02,
	0x01,0x01,0x01,0x0f,0x01,0x05,0x01,0x06,0x01,0x01,
	0x03,0x01,0x01,0x01,0x01,0x04,0x01,0x0d,0x01,0x05,
	0x01,0x07,0x01,0x0b,0x01,0x0c,0x01,0x06,0x01,0x01,
	0x01,0x02,0x01,0x01,0x01,0x08,0x01,0x01,0x01,0x01,
	0x01,0x01,0x01,0x01,0x01,0x03,0x01,0x02,0x01,0x0b,
	0x01,0x03,0x01,0x06,0x01,0x0e,0x01,0x01,0x01,0x02,
	0x01,0x06,0x01,0x08,0x01,0x01,0x01,0x01,0x01,0x01,
	0x01,0x01,0x01,0x04,0x01,0x09,0x01,0x06,0x01,0x01,
	0x03,0x0d,0x01,0x04,0x01,0x02,0x01,0x01,0x02,0x07,
	0x01,0x01,0x02,0x01,0x01,0x04,0x01,0x02,0x01,0x02,
	0x02,0x0b,0x01,0x14,0x01,0x04,0x01,0x0c,0x01,0x03,
	0x01,0x08,0x01,0x05,0x01,0x01,0x01,0x01,0x01,0x08,
	0x01,0x09,0x01,0x0c,0x01,0x01,0x01,0x02,0x01,0x01,
	0x01,0x01,0x01,0x09,0x01,0x01,0x01,0x03,0x01,0x04,
	0x01,0x09,0x01,0x01,0x01,0x04,0x01,0x01,0x01,0x03,
	0x01,0x06,0x02,0x03,0x01,0x04,0x01,0x01,0x01,0x01,
	0x01,0x09,0x01,0x01,0x01,0x01,0x01,0x0f,0x02,0x08,
	0x01,0x0b,0x01,0x07,0x01,0x06,0x01,0x05,0x01,0x24,
	0x01,0x81,0xe1,0x01,0x27,0x01,0x34,0x05,0x0e,0x07,
	0x1b,0x09,0x0c,0x08,0x0b,0x03,0x0b,0x08,0x01,0x06,
	0x0c,0x07,0x09,0x01,0x01,0x04,0x0a,0x07,0x07,0x07,
	0x0a,0x07,0x09,0x07,0x0a,0x05,0x09,0x0c,0x09,0x06,
	0x01,0x01,0x08,0x06,0x08,0x03,0x01,0x03,0x0a,0x08,
	0x05,0x05,0x09,0x08,0x0a,0x05,0x09,0x01,0x03,0x02,
	0x0b,0x04,0x01,0x01,0x07,0x07,0x09,0x09,0x09,0x05,
	0x09,0x02,0x02,0x03,0x0a,0x04,0x01,0x02,0x09,0x07,
	0x09,0x08,0x0a,0x04,0x0b,0x01,0x01,0x03,0x0a,0x05,
	0x0b,0x09,0x0a,0x03,0x01,0x03,0x0a,0x04,0x0c,0x05,
	0x0a,0x03,0x01,0x01,0x09,0x01,0x01,0x04,0x04,0x01,
	0x01,0x02,0x09,0x03,0x02,0x03,0x0a,0x03,0x0e,0x03,
	0x0a,0x01,0x04,0x01,0x0b,0x04,0x09,0x04,0x09,0x03,
	0x01,0x04,0x09,0x04,0x0d,0x04,0x0a,0x02,0x0f,0x03,
	0x0c,0x05,0x0a,0x03,0x02,0x02,0x0b,0x03,0x0a,0x01,
	0x03,0x02,0x0b,0x02,0x26,0x02,0x0a,0x02,0x0f,0x03
};


#define	papaLEN	520
unsigned char papatab[papaLEN] = {
	0x1a,0x06,0x01,0x01,0x01,0x20,0x02,0x03,0x03,0x02,
	0x07,0x17,0x0b,0x1c,0x01,0x15,0x01,0x01,0x01,0x0a,
	0x01,0x01,0x01,0x11,0x01,0x05,0x01,0x01,0x02,0x24,
	0x01,0x0e,0x01,0x07,0x01,0x13,0x01,0x05,0x01,0x17,
	0x0d,0x06,0x03,0x04,0x02,0x04,0x03,0x04,0x03,0x04,
	0x09,0x05,0x04,0x04,0x03,0x04,0x03,0x04,0x02,0x04,
	0x05,0x01,0x04,0x06,0x03,0x04,0x02,0x04,0x03,0x04,
	0x03,0x04,0x04,0x03,0x04,0x05,0x04,0x04,0x02,0x04,
	0x03,0x04,0x03,0x04,0x04,0x03,0x04,0x05,0x03,0x04,
	0x02,0x04,0x03,0x04,0x04,0x03,0x05,0x03,0x04,0x05,
	0x03,0x04,0x02,0x04,0x03,0x04,0x03,0x04,0x04,0x03,
	0x05,0x04,0x04,0x03,0x03,0x04,0x03,0x04,0x03,0x04,
	0x04,0x04,0x04,0x05,0x03,0x04,0x03,0x03,0x03,0x04,
	0x04,0x03,0x04,0x04,0x05,0x04,0x04,0x03,0x03,0x03,
	0x04,0x03,0x04,0x04,0x03,0x04,0x05,0x04,0x04,0x03,
	0x03,0x04,0x03,0x04,0x03,0x03,0x04,0x04,0x05,0x04,
	0x04,0x04,0x03,0x03,0x03,0x04,0x03,0x04,0x04,0x03,
	0x05,0x04,0x04,0x04,0x03,0x03,0x03,0x04,0x03,0x04,
	0x04,0x04,0x05,0x04,0x04,0x04,0x02,0x04,0x03,0x03,
	0x04,0x03,0x04,0x04,0x06,0x04,0x04,0x03,0x03,0x03,
	0x03,0x04,0x03,0x04,0x04,0x04,0x05,0x05,0x03,0x04,
	0x03,0x03,0x03,0x04,0x03,0x04,0x04,0x04,0x06,0x04,
	0x04,0x04,0x02,0x03,0x04,0x03,0x04,0x04,0x04,0x04,
	0x05,0x04,0x04,0x04,0x02,0x04,0x03,0x04,0x03,0x04,
	0x03,0x04,0x06,0x04,0x04,0x04,0x02,0x04,0x03,0x04,
	0x03,0x04,0x04,0x03,0x06,0x04,0x04,0x04,0x02,0x04,
	0x03,0x04,0x04,0x03,0x0d,0x04,0x04,0x04,0x03,0x03,
	0x03,0x05,0x03,0x04,0x03,0x01,0x08,0x05,0x04,0x04,
	0x02,0x04,0x03,0x09,0x04,0x03,0x04,0x01,0x04,0x05,
	0x03,0x03,0x04,0x04,0x01,0x04,0x02,0x0d,0x01,0x04,
	0x04,0x22,0x01,0x14,0x01,0x16,0x02,0x82,0x9e,0x0b,
	0x0b,0x05,0x0b,0x02,0x0b,0x09,0x07,0x09,0x05,0x08,
	0x07,0x04,0x02,0x01,0x05,0x08,0x06,0x09,0x05,0x05,
	0x09,0x04,0x09,0x04,0x03,0x09,0x06,0x03,0x02,0x04,
	0x04,0x05,0x09,0x04,0x09,0x04,0x04,0x03,0x03,0x06,
	0x06,0x04,0x01,0x04,0x05,0x04,0x09,0x04,0x0a,0x03,
	0x0a,0x04,0x02,0x06,0x05,0x03,0x02,0x04,0x04,0x04,
	0x09,0x04,0x05,0x01,0x04,0x03,0x05,0x02,0x04,0x03,
	0x03,0x08,0x05,0x04,0x04,0x01,0x04,0x04,0x09,0x04,
	0x05,0x01,0x04,0x03,0x04,0x04,0x03,0x03,0x04,0x02,
	0x03,0x05,0x05,0x04,0x02,0x03,0x05,0x04,0x02,0x01,
	0x05,0x04,0x0a,0x03,0x05,0x01,0x04,0x03,0x04,0x03,
	0x03,0x05,0x01,0x02,0x05,0x03,0x05,0x01,0x04,0x04,
	0x09,0x04,0x05,0x01,0x03,0x03,0x05,0x03,0x0a,0x03,
	0x03,0x04,0x02,0x04,0x05,0x04,0x02,0x01,0x01,0x01,
	0x05,0x03,0x03,0x01,0x05,0x04,0x05,0x01,0x04,0x03,
	0x05,0x02,0x0a,0x03,0x04,0x03,0x03,0x06,0x06,0x03,
	0x03,0x01,0x06,0x04,0x08,0x04,0x05,0x01,0x04,0x03,
	0x06,0x01,0x0b,0x02,0x04,0x02,0x06,0x01,0x02,0x04,
	0x05,0x04,0x03,0x01,0x06,0x03,0x0a,0x03,0x0a,0x03,
	0x12,0x02,0x04,0x01,0x0c,0x02,0x0a,0x02,0x03,0x01,
	0x06,0x04,0x09,0x03,0x0a,0x02,0x0c,0x01,0x0c,0x02
};

#define	quebecLEN	424
unsigned char quebectab[quebecLEN] = {
	0x02,0x0d,0x01,0x13,0x04,0x80,0x83,0x03,0x81,0x5c,
	0x01,0x02,0x01,0x18,0x04,0x08,0x0d,0x0b,0x08,0x0b,
	0x06,0x07,0x09,0x0b,0x07,0x0a,0x07,0x07,0x09,0x0a,
	0x07,0x0a,0x06,0x09,0x07,0x0a,0x07,0x09,0x07,0x09,
	0x08,0x08,0x08,0x08,0x07,0x09,0x0a,0x08,0x08,0x07,
	0x08,0x0a,0x0c,0x0a,0x05,0x0a,0x04,0x0a,0x05,0x02,
	0x08,0x09,0x06,0x08,0x05,0x0a,0x0f,0x0a,0x05,0x08,
	0x05,0x0a,0x05,0x01,0x04,0x01,0x05,0x0a,0x04,0x09,
	0x05,0x09,0x06,0x01,0x03,0x03,0x04,0x0a,0x05,0x09,
	0x05,0x0a,0x09,0x03,0x05,0x0a,0x05,0x0a,0x05,0x0b,
	0x09,0x02,0x04,0x0d,0x05,0x01,0x05,0x1f,0x08,0x36,
	0x01,0x01,0x01,0x23,0x04,0x16,0x01,0x01,0x07,0x3b,
	0x01,0x41,0x03,0x01,0x04,0x3f,0x01,0x4a,0x01,0x80,
	0xcd,0x02,0x01,0x08,0x0e,0x04,0x15,0x01,0x02,0x0a,
	0x0a,0x08,0x09,0x06,0x09,0x0d,0x09,0x07,0x08,0x06,
	0x09,0x09,0x02,0x06,0x08,0x07,0x08,0x05,0x0a,0x07,
	0x04,0x06,0x08,0x07,0x08,0x05,0x08,0x08,0x04,0x06,
	0x08,0x07,0x06,0x07,0x08,0x05,0x01,0x02,0x01,0x01,
	0x02,0x05,0x08,0x07,0x06,0x07,0x08,0x05,0x05,0x06,
	0x07,0x08,0x06,0x07,0x06,0x06,0x05,0x06,0x08,0x06,
	0x07,0x07,0x05,0x05,0x01,0x01,0x05,0x06,0x07,0x06,
	0x07,0x05,0x08,0x05,0x01,0x01,0x05,0x05,0x07,0x06,
	0x06,0x06,0x08,0x05,0x01,0x01,0x04,0x06,0x07,0x06,
	0x06,0x06,0x07,0x05,0x05,0x08,0x07,0x05,0x06,0x07,
	0x06,0x03,0x08,0x08,0x07,0x04,0x06,0x08,0x06,0x04,
	0x08,0x07,0x08,0x03,0x01,0x01,0x05,0x05,0x01,0x02,
	0x04,0x01,0x03,0x01,0x04,0x01,0x05,0x07,0x05,0x01,
	0x01,0x04,0x07,0x07,0x06,0x01,0x08,0x01,0x04,0x08,
	0x05,0x01,0x01,0x04,0x07,0x05,0x01,0x01,0x05,0x03,
	0x06,0x02,0x05,0x08,0x05,0x01,0x01,0x04,0x07,0x05,
	0x01,0x01,0x05,0x02,0x08,0x01,0x05,0x0b,0x04,0x01,
	0x02,0x02,0x08,0x04,0x02,0x01,0x04,0x03,0x07,0x03,
	0x07,0x03,0x01,0x05,0x05,0x01,0x01,0x03,0x07,0x03,
	0x01,0x01,0x02,0x01,0x03,0x01,0x01,0x02,0x08,0x02,
	0x02,0x01,0x04,0x03,0x03,0x06,0x05,0x01,0x02,0x02,
	0x04,0x01,0x03,0x04,0x08,0x01,0x0d,0x02,0x04,0x01,
	0x04,0x07,0x01,0x03,0x04,0x01,0x01,0x01,0x01,0x02,
	0x03,0x01,0x04,0x03,0x08,0x03,0x01,0x01,0x06,0x01,
	0x09,0x01,0x05,0x01,0x01,0x04,0x01,0x06,0x07,0x01,
	0x01,0x01,0x01,0x01,0x06,0x04,0x01,0x01,0x08,0x01,
	0x01,0x01,0x08,0x02,0x0e,0x01,0x0a,0x07,0x06,0x01,
	0x01,0x02,0x01,0x01,0x01,0x01,0x06,0x05,0x08,0x03,
	0x0d,0x01,0x18,0x01
};

#define	romeoLEN	719
unsigned char romeotab[romeoLEN] = {
	0x04,0x40,0x06,0x3f,0x01,0x01,0x06,0x12,0x04,0x28,
	0x01,0x01,0x06,0x10,0x08,0x11,0x06,0x09,0x01,0x01,
	0x09,0x0f,0x07,0x0f,0x08,0x05,0x01,0x01,0x0a,0x0d,
	0x0a,0x0e,0x07,0x08,0x08,0x0c,0x0a,0x0c,0x07,0x04,
	0x0d,0x0b,0x0a,0x09,0x07,0x07,0x0c,0x0a,0x07,0x0a,
	0x05,0x09,0x0d,0x0b,0x06,0x0a,0x05,0x09,0x0e,0x07,
	0x01,0x03,0x05,0x0a,0x04,0x09,0x0e,0x0a,0x05,0x09,
	0x05,0x0a,0x0e,0x06,0x01,0x03,0x05,0x05,0x09,0x09,
	0x0e,0x06,0x01,0x01,0x01,0x02,0x04,0x05,0x09,0x07,
	0x10,0x05,0x04,0x01,0x05,0x05,0x05,0x02,0x02,0x06,
	0x0f,0x06,0x09,0x06,0x05,0x0a,0x0d,0x07,0x08,0x06,
	0x06,0x09,0x0d,0x07,0x08,0x07,0x05,0x0a,0x0c,0x07,
	0x09,0x06,0x05,0x0a,0x0c,0x07,0x09,0x06,0x05,0x0b,
	0x0b,0x07,0x09,0x07,0x04,0x0b,0x0a,0x07,0x09,0x08,
	0x04,0x0b,0x0a,0x07,0x08,0x08,0x05,0x0b,0x09,0x08,
	0x08,0x08,0x04,0x0d,0x08,0x08,0x08,0x08,0x04,0x0d,
	0x09,0x07,0x08,0x07,0x05,0x0d,0x09,0x07,0x01,0x01,
	0x08,0x06,0x05,0x0c,0x09,0x0a,0x08,0x07,0x03,0x0d,
	0x09,0x0d,0x05,0x0e,0x02,0x07,0x0a,0x0e,0x02,0x06,
	0x02,0x14,0x0a,0x01,0x01,0x19,0x03,0x0d,0x0a,0x19,
	0x03,0x0d,0x0b,0x18,0x04,0x0d,0x0a,0x19,0x04,0x0c,
	0x0b,0x19,0x03,0x0e,0x09,0x2b,0x0a,0x0e,0x03,0x05,
	0x01,0x13,0x0b,0x0e,0x06,0x02,0x01,0x15,0x0a,0x01,
	0x01,0x0c,0x03,0x01,0x02,0x01,0x01,0x03,0x01,0x03,
	0x01,0x0d,0x0b,0x02,0x01,0x0b,0x03,0x01,0x02,0x01,
	0x02,0x02,0x01,0x02,0x01,0x0f,0x01,0x01,0x0a,0x01,
	0x01,0x0b,0x01,0x01,0x03,0x01,0x02,0x02,0x01,0x02,
	0x01,0x0f,0x01,0x01,0x0b,0x01,0x02,0x01,0x01,0x06,
	0x01,0x01,0x02,0x01,0x05,0x02,0x01,0x02,0x01,0x12,
	0x01,0x01,0x0a,0x01,0x01,0x02,0x01,0x08,0x01,0x01,
	0x02,0x01,0x03,0x01,0x02,0x01,0x01,0x02,0x01,0x01,
	0x01,0x0e,0x0f,0x01,0x01,0x0b,0x01,0x01,0x07,0x01,
	0x01,0x01,0x01,0x10,0x01,0x01,0x0c,0x01,0x01,0x02,
	0x01,0x08,0x01,0x01,0x02,0x01,0x06,0x01,0x01,0x10,
	0x01,0x01,0x01,0x01,0x01,0x01,0x0b,0x01,0x02,0x01,
	0x01,0x0b,0x02,0x01,0x06,0x01,0x01,0x04,0x01,0x0a,
	0x01,0x04,0x01,0x01,0x0c,0x01,0x02,0x01,0x01,0x08,
	0x01,0x02,0x01,0x01,0x06,0x04,0x01,0x06,0x01,0x0d,
	0x0c,0x01,0x01,0x02,0x01,0x08,0x01,0x02,0x08,0x04,
	0x01,0x06,0x01,0x0d,0x0c,0x02,0x01,0x0b,0x01,0x01,
	0x06,0x01,0x01,0x0b,0x02,0x01,0x01,0x08,0x02,0x01,
	0x0c,0x02,0x01,0x0b,0x08,0x0e,0x01,0x01,0x01,0x09,
	0x01,0x01,0x0d,0x0b,0x01,0x01,0x08,0x0c,0x01,0x0d,
	0x0f,0x02,0x01,0x09,0x01,0x01,0x08,0x09,0x01,0x01,
	0x02,0x0b,0x08,0x05,0x06,0x01,0x02,0x08,0x08,0x01,
	0x01,0x08,0x06,0x0a,0x07,0x07,0x06,0x01,0x02,0x08,
	0x07,0x09,0x06,0x0a,0x07,0x08,0x08,0x09,0x01,0x01,
	0x06,0x08,0x07,0x09,0x06,0x09,0x0c,0x09,0x06,0x08,
	0x06,0x0a,0x04,0x01,0x01,0x0a,0x09,0x02,0x04,0x09,
	0x06,0x08,0x01,0x01,0x04,0x08,0x06,0x09,0x06,0x01,
	0x01,0x05,0x06,0x09,0x06,0x07,0x07,0x08,0x05,0x08,
	0x05,0x0a,0x08,0x05,0x01,0x02,0x05,0x09,0x05,0x08,
	0x06,0x09,0x05,0x09,0x0a,0x05,0x01,0x02,0x01,0x01,
	0x03,0x09,0x05,0x09,0x04,0x08,0x05,0x08,0x0e,0x05,
	0x01,0x03,0x04,0x0a,0x04,0x09,0x04,0x09,0x03,0x09,
	0x05,0x01,0x08,0x05,0x01,0x01,0x01,0x02,0x04,0x09,
	0x04,0x09,0x04,0x0a,0x03,0x0a,0x04,0x03,0x07,0x07,
	0x01,0x01,0x04,0x0a,0x04,0x09,0x05,0x09,0x04,0x0b,
	0x03,0x04,0x06,0x0a,0x05,0x08,0x05,0x0a,0x04,0x0a,
	0x03,0x0b,0x04,0x04,0x06,0x08,0x01,0x01,0x05,0x06,
	0x01,0x01,0x06,0x0a,0x04,0x0b,0x04,0x0b,0x04,0x03,
	0x06,0x0a,0x05,0x0a,0x04,0x0a,0x05,0x0a,0x04,0x0b,
	0x06,0x03,0x04,0x07,0x01,0x03,0x04,0x08,0x01,0x01,
	0x05,0x09,0x03,0x01,0x02,0x08,0x07,0x08,0x0a,0x03,
	0x02,0x07,0x02,0x02,0x05,0x07,0x03,0x02,0x04,0x07,
	0x03,0x0d,0x03,0x0c,0x0b,0x09,0x01,0x02,0x06,0x07,
	0x09,0x08,0x04,0x0c,0x05,0x0b,0x0a,0x08,0x09,0x09,
	0x06,0x0b,0x05,0x0b,0x05,0x0b,0x07,0x0d,0x07,0x0a,
	0x05,0x0c,0x05,0x0c,0x05,0x0a,0x08,0x0b,0x08,0x0a,
	0x06,0x0c,0x04,0x0e,0x04,0x0a,0x08,0x0a,0x08,0x0b,
	0x05,0x0e,0x01,0x0c,0x05,0x0c,0x06,0x0c,0x05,0x0d,
	0x04,0x0b,0x02,0x0e,0x01,0x01,0x02,0x26,0x01
};

#define	sierraLEN	952
unsigned char sierratab[sierraLEN] = {
	0x01,0x80,0xce,0x01,0x15,0x01,0x25,0x01,0x25,0x01,
	0x01,0x01,0x14,0x01,0x0a,0x01,0x0a,0x01,0x03,0x01,
	0x06,0x01,0x07,0x01,0x01,0x01,0x01,0x01,0x0c,0x01,
	0x0b,0x01,0x13,0x01,0x07,0x02,0x03,0x01,0x01,0x01,
	0x04,0x01,0x13,0x01,0x04,0x01,0x0b,0x01,0x3b,0x01,
	0x0c,0x02,0x06,0x01,0x06,0x01,0x02,0x01,0x03,0x01,
	0x2a,0x01,0x07,0x01,0x06,0x01,0x04,0x01,0x10,0x01,
	0x09,0x01,0x01,0x01,0x01,0x01,0x05,0x01,0x01,0x01,
	0x02,0x01,0x09,0x01,0x03,0x01,0x09,0x01,0x03,0x01,
	0x03,0x01,0x01,0x01,0x05,0x01,0x02,0x02,0x04,0x01,
	0x07,0x01,0x07,0x01,0x1a,0x01,0x05,0x01,0x06,0x01,
	0x10,0x01,0x0a,0x02,0x06,0x01,0x06,0x01,0x04,0x01,
	0x04,0x01,0x0b,0x01,0x05,0x03,0x06,0x01,0x0b,0x01,
	0x0e,0x01,0x08,0x01,0x01,0x01,0x06,0x01,0x02,0x01,
	0x18,0x01,0x01,0x01,0x6e,0x01,0x1b,0x09,0x04,0x01,
	0x01,0x06,0x01,0x01,0x0f,0x08,0x0d,0x0d,0x11,0x08,
	0x0e,0x0d,0x02,0x01,0x0c,0x01,0x01,0x08,0x0e,0x0e,
	0x01,0x02,0x0e,0x09,0x0d,0x0f,0x01,0x01,0x0e,0x09,
	0x0e,0x01,0x01,0x0d,0x01,0x02,0x0d,0x09,0x01,0x01,
	0x0e,0x0d,0x02,0x01,0x0e,0x08,0x01,0x02,0x0d,0x0f,
	0x01,0x01,0x02,0x01,0x0b,0x0a,0x0f,0x0e,0x01,0x02,
	0x0d,0x02,0x01,0x08,0x0e,0x0f,0x01,0x02,0x0e,0x0a,
	0x0e,0x10,0x01,0x01,0x02,0x01,0x0b,0x09,0x0f,0x10,
	0x02,0x01,0x0d,0x09,0x10,0x0f,0x02,0x01,0x02,0x01,
	0x09,0x01,0x01,0x08,0x0e,0x01,0x01,0x10,0x01,0x01,
	0x02,0x01,0x09,0x01,0x01,0x08,0x0e,0x11,0x02,0x01,
	0x0b,0x01,0x02,0x08,0x0d,0x12,0x01,0x02,0x01,0x01,
	0x09,0x01,0x01,0x08,0x0c,0x01,0x01,0x05,0x01,0x01,
	0x02,0x08,0x01,0x02,0x0b,0x09,0x0c,0x06,0x06,0x08,
	0x01,0x02,0x0a,0x09,0x0b,0x06,0x08,0x08,0x01,0x01,
	0x09,0x0a,0x09,0x07,0x08,0x09,0x0b,0x08,0x0a,0x06,
	0x0a,0x09,0x0b,0x07,0x09,0x07,0x08,0x0c,0x09,0x04,
	0x01,0x02,0x08,0x02,0x01,0x05,0x0a,0x0c,0x02,0x01,
	0x06,0x01,0x01,0x02,0x01,0x02,0x08,0x01,0x01,0x05,
	0x09,0x01,0x01,0x0c,0x09,0x01,0x01,0x01,0x02,0x01,
	0x08,0x07,0x09,0x02,0x01,0x0b,0x02,0x01,0x06,0x01,
	0x01,0x02,0x01,0x02,0x08,0x05,0x0a,0x02,0x01,0x0b,
	0x02,0x01,0x05,0x02,0x01,0x02,0x01,0x01,0x08,0x05,
	0x09,0x04,0x01,0x0a,0x02,0x01,0x06,0x01,0x01,0x02,
	0x01,0x01,0x08,0x05,0x09,0x04,0x01,0x02,0x01,0x07,
	0x08,0x02,0x01,0x04,0x06,0x07,0x07,0x05,0x02,0x09,
	0x02,0x01,0x04,0x03,0x01,0x04,0x06,0x07,0x08,0x05,
	0x01,0x02,0x01,0x06,0x08,0x02,0x01,0x04,0x06,0x07,
	0x07,0x06,0x01,0x08,0x08,0x02,0x01,0x04,0x06,0x07,
	0x06,0x05,0x04,0x08,0x08,0x02,0x01,0x01,0x01,0x01,
	0x07,0x06,0x06,0x05,0x04,0x07,0x07,0x04,0x01,0x01,
	0x01,0x01,0x06,0x05,0x07,0x05,0x04,0x08,0x08,0x05,
	0x01,0x01,0x04,0x01,0x01,0x05,0x07,0x04,0x06,0x06,
	0x08,0x05,0x07,0x07,0x06,0x05,0x05,0x07,0x08,0x05,
	0x07,0x06,0x06,0x06,0x05,0x07,0x08,0x05,0x07,0x06,
	0x06,0x06,0x05,0x07,0x09,0x04,0x07,0x05,0x08,0x02,
	0x03,0x01,0x04,0x08,0x04,0x01,0x03,0x04,0x08,0x05,
	0x08,0x03,0x02,0x02,0x04,0x08,0x04,0x01,0x03,0x04,
	0x04,0x01,0x03,0x04,0x09,0x03,0x03,0x02,0x03,0x07,
	0x05,0x01,0x03,0x04,0x04,0x01,0x03,0x04,0x09,0x03,
	0x04,0x01,0x04,0x07,0x04,0x01,0x03,0x05,0x08,0x04,
	0x09,0x03,0x09,0x07,0x04,0x01,0x03,0x05,0x05,0x01,
	0x02,0x05,0x09,0x03,0x0a,0x06,0x04,0x01,0x03,0x05,
	0x05,0x01,0x02,0x06,0x08,0x04,0x05,0x02,0x02,0x06,
	0x09,0x05,0x05,0x01,0x03,0x05,0x09,0x03,0x05,0x02,
	0x03,0x06,0x09,0x06,0x08,0x05,0x09,0x04,0x05,0x01,
	0x04,0x06,0x0a,0x05,0x09,0x05,0x0a,0x04,0x02,0x03,
	0x04,0x08,0x09,0x05,0x0a,0x05,0x09,0x04,0x04,0x01,
	0x04,0x0b,0x05,0x01,0x03,0x05,0x0a,0x04,0x0a,0x04,
	0x03,0x02,0x06,0x0b,0x0a,0x05,0x09,0x05,0x0a,0x03,
	0x04,0x01,0x05,0x02,0x03,0x0b,0x05,0x02,0x03,0x05,
	0x09,0x04,0x0a,0x04,0x03,0x02,0x05,0x01,0x04,0x04,
	0x03,0x07,0x0a,0x04,0x0a,0x04,0x0a,0x03,0x04,0x01,
	0x05,0x02,0x03,0x04,0x04,0x09,0x05,0x01,0x03,0x05,
	0x09,0x04,0x09,0x04,0x0a,0x02,0x04,0x02,0x04,0x03,
	0x01,0x08,0x09,0x05,0x09,0x04,0x09,0x03,0x0a,0x03,
	0x04,0x02,0x04,0x0a,0x01,0x03,0x05,0x02,0x02,0x04,
	0x05,0x02,0x02,0x04,0x09,0x03,0x05,0x02,0x03,0x03,
	0x04,0x02,0x04,0x03,0x02,0x04,0x02,0x03,0x05,0x03,
	0x02,0x03,0x05,0x03,0x02,0x03,0x05,0x02,0x03,0x02,
	0x05,0x02,0x04,0x01,0x05,0x02,0x04,0x03,0x04,0x08,
	0x05,0x03,0x02,0x03,0x04,0x04,0x02,0x03,0x04,0x03,
	0x03,0x01,0x05,0x03,0x09,0x02,0x04,0x03,0x07,0x06,
	0x05,0x03,0x01,0x04,0x04,0x04,0x02,0x02,0x06,0x02,
	0x09,0x03,0x09,0x02,0x04,0x04,0x07,0x05,0x05,0x03,
	0x02,0x01,0x01,0x01,0x04,0x04,0x02,0x02,0x05,0x03,
	0x09,0x04,0x09,0x02,0x04,0x02,0x06,0x01,0x01,0x06,
	0x05,0x03,0x02,0x01,0x01,0x01,0x05,0x03,0x09,0x03,
	0x0b,0x02,0x0a,0x02,0x03,0x01,0x0a,0x08,0x04,0x03,
	0x04,0x01,0x05,0x03,0x09,0x03,0x0a,0x01,0x05,0x01,
	0x09,0x04,0x09,0x09,0x05,0x03,0x04,0x01,0x04,0x03,
	0x09,0x04,0x09,0x02,0x05,0x02,0x09,0x03,0x05,0x02,
	0x02,0x02,0x04,0x05,0x05,0x02,0x02,0x01,0x01,0x02,
	0x04,0x03,0x09,0x03,0x0a,0x02,0x11,0x02,0x09,0x02,
	0x05,0x03,0x02,0x01,0x05,0x03,0x0a,0x03,0x09,0x02,
	0x0b,0x02,0x0b,0x01,0x0b,0x01,0x0b,0x03,0x02,0x01,
	0x02,0x01,0x05,0x03,0x04,0x01,0x04,0x03,0x0a,0x02,
	0x0a,0x03,0x2b,0x01,0x03,0x01,0x05,0x03,0x04,0x01,
	0x04,0x03,0x0a,0x03,0x0a,0x02,0x0c,0x01,0x0a,0x01,
	0x0d,0x01,0x0b,0x01,0x05,0x01,0x0b,0x03,0x0a,0x02,
	0x55,0x01
};

#define	tangoLEN	699
unsigned char tangotab[tangoLEN] = {
	0x0d,0x1b,0x02,0x06,0x0a,0x08,0x02,0x0b,0x03,0x08,
	0x0d,0x08,0x03,0x08,0x04,0x09,0x0d,0x06,0x01,0x01,
	0x03,0x08,0x04,0x09,0x0e,0x05,0x01,0x01,0x03,0x08,
	0x04,0x07,0x02,0x01,0x0c,0x05,0x02,0x01,0x03,0x07,
	0x05,0x07,0x02,0x01,0x01,0x01,0x09,0x06,0x01,0x01,
	0x03,0x07,0x05,0x08,0x01,0x01,0x01,0x01,0x09,0x08,
	0x02,0x07,0x05,0x08,0x01,0x01,0x02,0x02,0x07,0x08,
	0x02,0x07,0x06,0x07,0x01,0x01,0x02,0x02,0x08,0x07,
	0x02,0x08,0x06,0x08,0x02,0x02,0x08,0x08,0x02,0x07,
	0x06,0x08,0x02,0x02,0x08,0x08,0x02,0x07,0x07,0x08,
	0x01,0x01,0x0a,0x08,0x01,0x03,0x01,0x04,0x01,0x01,
	0x04,0x08,0x01,0x02,0x01,0x01,0x07,0x08,0x02,0x02,
	0x01,0x07,0x03,0x08,0x01,0x02,0x0a,0x08,0x01,0x03,
	0x01,0x06,0x04,0x08,0x01,0x01,0x03,0x01,0x07,0x02,
	0x01,0x05,0x01,0x02,0x01,0x08,0x02,0x02,0x01,0x07,
	0x03,0x01,0x07,0x02,0x01,0x05,0x01,0x02,0x01,0x08,
	0x03,0x01,0x01,0x08,0x02,0x02,0x07,0x02,0x01,0x08,
	0x01,0x08,0x02,0x02,0x01,0x08,0x02,0x01,0x08,0x02,
	0x01,0x08,0x01,0x02,0x01,0x04,0x02,0x01,0x03,0x07,
	0x01,0x03,0x07,0x02,0x01,0x02,0x01,0x09,0x01,0x04,
	0x01,0x01,0x04,0x0a,0x08,0x02,0x01,0x02,0x01,0x05,
	0x01,0x02,0x01,0x02,0x01,0x02,0x01,0x01,0x01,0x01,
	0x01,0x0b,0x08,0x01,0x02,0x0b,0x01,0x02,0x01,0x01,
	0x01,0x01,0x01,0x01,0x02,0x0a,0x08,0x02,0x01,0x0b,
	0x01,0x02,0x01,0x03,0x02,0x01,0x01,0x0b,0x08,0x01,
	0x01,0x02,0x01,0x06,0x01,0x04,0x01,0x02,0x01,0x01,
	0x01,0x01,0x01,0x02,0x01,0x08,0x01,0x02,0x06,0x01,
	0x01,0x02,0x01,0x0b,0x01,0x01,0x02,0x01,0x01,0x01,
	0x01,0x0e,0x06,0x01,0x01,0x02,0x01,0x09,0x01,0x01,
	0x01,0x04,0x01,0x01,0x01,0x01,0x02,0x0b,0x09,0x01,
	0x01,0x09,0x01,0x06,0x01,0x01,0x01,0x02,0x01,0x0b,
	0x01,0x01,0x08,0x11,0x02,0x01,0x02,0x01,0x01,0x0d,
	0x08,0x27,0x09,0x25,0x0a,0x27,0x09,0x11,0x01,0x15,
	0x09,0x11,0x01,0x15,0x0a,0x27,0x0a,0x11,0x01,0x15,
	0x0a,0x27,0x0b,0x10,0x02,0x17,0x09,0x11,0x01,0x01,
	0x01,0x15,0x01,0x01,0x0a,0x15,0x01,0x01,0x02,0x16,
	0x08,0x16,0x05,0x15,0x08,0x1a,0x01,0x19,0x01,0x01,
	0x04,0x3b,0x01,0x1b,0x01,0x1c,0x01,0x08,0x01,0x1a,
	0x02,0x0f,0x02,0x01,0x03,0x07,0x07,0x01,0x01,0x0d,
	0x09,0x12,0x01,0x01,0x04,0x03,0x01,0x01,0x09,0x0e,
	0x09,0x0d,0x01,0x01,0x01,0x06,0x01,0x01,0x0f,0x0b,
	0x09,0x09,0x01,0x01,0x02,0x01,0x01,0x0a,0x08,0x01,
	0x01,0x02,0x05,0x0b,0x08,0x09,0x05,0x0a,0x07,0x07,
	0x07,0x09,0x08,0x08,0x07,0x09,0x07,0x08,0x09,0x09,
	0x07,0x07,0x08,0x09,0x04,0x01,0x01,0x09,0x0e,0x09,
	0x06,0x08,0x06,0x08,0x01,0x01,0x04,0x0b,0x07,0x03,
	0x05,0x09,0x05,0x09,0x06,0x08,0x05,0x08,0x01,0x01,
	0x06,0x07,0x06,0x09,0x05,0x09,0x06,0x08,0x05,0x08,
	0x07,0x06,0x0a,0x05,0x01,0x02,0x05,0x0a,0x05,0x09,
	0x05,0x08,0x06,0x08,0x0a,0x06,0x01,0x02,0x01,0x02,
	0x02,0x0a,0x05,0x09,0x04,0x09,0x04,0x0a,0x05,0x02,
	0x02,0x01,0x03,0x0b,0x04,0x09,0x04,0x0a,0x03,0x0b,
	0x04,0x09,0x04,0x01,0x02,0x04,0x03,0x0b,0x04,0x09,
	0x04,0x0a,0x03,0x0b,0x04,0x0a,0x04,0x01,0x01,0x05,
	0x03,0x0b,0x04,0x0a,0x03,0x0b,0x04,0x0b,0x03,0x0b,
	0x04,0x04,0x05,0x08,0x01,0x02,0x05,0x0a,0x03,0x0b,
	0x04,0x0b,0x04,0x0a,0x05,0x05,0x03,0x0c,0x04,0x0a,
	0x04,0x0b,0x04,0x0b,0x04,0x0a,0x06,0x04,0x03,0x0b,
	0x05,0x0b,0x04,0x0b,0x04,0x0b,0x04,0x0b,0x05,0x04,
	0x03,0x07,0x01,0x03,0x04,0x0c,0x04,0x0c,0x03,0x0c,
	0x03,0x07,0x02,0x01,0x01,0x01,0x05,0x05,0x01,0x08,
	0x01,0x04,0x03,0x08,0x01,0x05,0x02,0x08,0x01,0x05,
	0x01,0x09,0x01,0x02,0x01,0x01,0x01,0x08,0x06,0x01,
	0x02,0x12,0x01,0x01,0x02,0x1a,0x02,0x0e,0x02,0x01,
	0x01,0x0b,0x04,0x14,0x02,0x01,0x02,0x0a,0x02,0x02,
	0x01,0x0b,0x01,0x01,0x01,0x0d,0x04,0x0d,0x04,0x11,
	0x01,0x01,0x01,0x01,0x03,0x1b,0x01,0x0e,0x04,0x0d,
	0x05,0x10,0x01,0x01,0x01,0x01,0x02,0x01,0x01,0x09,
	0x01,0x01,0x01,0x0f,0x01,0x10,0x04,0x0c,0x04,0x12,
	0x01,0x02,0x01,0x58,0x04,0x58,0x02,0x01,0x01
};

#define	uniformLEN	687
unsigned char uniformtab[uniformLEN] = {
	0x01,0x01,0x01,0x01,0x04,0x01,0x01,0x18,0x01,0x01,
	0x01,0x17,0x0b,0x01,0x01,0x15,0x01,0x01,0x01,0x01,
	0x02,0x01,0x01,0x13,0x0b,0x03,0x01,0x15,0x04,0x01,
	0x01,0x01,0x01,0x13,0x0c,0x01,0x02,0x01,0x01,0x11,
	0x01,0x01,0x01,0x01,0x03,0x02,0x01,0x11,0x0d,0x01,
	0x01,0x11,0x01,0x01,0x08,0x10,0x0e,0x01,0x01,0x11,
	0x0a,0x0f,0x0d,0x02,0x01,0x0e,0x01,0x01,0x09,0x0e,
	0x0e,0x11,0x0b,0x0e,0x0c,0x01,0x01,0x0f,0x09,0x01,
	0x01,0x0c,0x0c,0x01,0x01,0x0e,0x0a,0x0e,0x0b,0x01,
	0x01,0x0c,0x0c,0x0c,0x0c,0x01,0x01,0x0c,0x0b,0x0c,
	0x0c,0x01,0x01,0x0c,0x0a,0x0c,0x0c,0x01,0x01,0x0c,
	0x09,0x0c,0x0c,0x01,0x02,0x0c,0x09,0x0b,0x0b,0x0f,
	0x08,0x0c,0x0a,0x02,0x01,0x0b,0x0a,0x0a,0x0c,0x01,
	0x01,0x0b,0x08,0x0d,0x0a,0x01,0x01,0x0c,0x07,0x0d,
	0x09,0x01,0x02,0x0b,0x08,0x0d,0x08,0x02,0x01,0x0b,
	0x08,0x0d,0x08,0x01,0x01,0x0c,0x05,0x01,0x02,0x0c,
	0x01,0x01,0x07,0x01,0x01,0x0b,0x03,0x01,0x04,0x0c,
	0x08,0x02,0x01,0x0b,0x02,0x02,0x01,0x0c,0x01,0x02,
	0x08,0x0e,0x02,0x02,0x01,0x01,0x01,0x09,0x02,0x01,
	0x09,0x01,0x01,0x0c,0x01,0x02,0x02,0x01,0x01,0x09,
	0x01,0x02,0x09,0x01,0x01,0x0b,0x02,0x02,0x02,0x01,
	0x01,0x09,0x01,0x02,0x08,0x02,0x01,0x11,0x02,0x10,
	0x0a,0x20,0x0a,0x16,0x01,0x0a,0x0b,0x15,0x01,0x01,
	0x01,0x09,0x0a,0x11,0x01,0x04,0x01,0x0b,0x0b,0x10,
	0x02,0x0f,0x0b,0x0f,0x04,0x0e,0x0b,0x0f,0x02,0x0a,
	0x01,0x04,0x01,0x01,0x06,0x02,0x01,0x0b,0x02,0x03,
	0x02,0x04,0x02,0x0d,0x06,0x02,0x01,0x08,0x01,0x01,
	0x03,0x08,0x02,0x0d,0x06,0x0b,0x01,0x02,0x03,0x04,
	0x01,0x02,0x03,0x0a,0x02,0x01,0x07,0x09,0x03,0x01,
	0x03,0x04,0x02,0x01,0x03,0x0a,0x02,0x01,0x08,0x09,
	0x07,0x05,0x01,0x01,0x05,0x08,0x04,0x01,0x07,0x09,
	0x07,0x05,0x01,0x01,0x06,0x08,0x04,0x02,0x07,0x09,
	0x07,0x07,0x06,0x0a,0x02,0x02,0x09,0x04,0x01,0x04,
	0x07,0x06,0x06,0x0a,0x0f,0x09,0x04,0x01,0x02,0x01,
	0x01,0x04,0x03,0x01,0x02,0x0b,0x10,0x0a,0x05,0x02,
	0x01,0x05,0x01,0x05,0x02,0x09,0x06,0x01,0x09,0x0b,
	0x06,0x01,0x01,0x0c,0x01,0x08,0x07,0x08,0x06,0x11,
	0x01,0x83,0xb3,0x01,0x01,0x0a,0x0e,0x04,0x0c,0x01,
	0x01,0x01,0x09,0x0a,0x09,0x0a,0x09,0x04,0x0b,0x0e,
	0x09,0x09,0x0b,0x04,0x0a,0x0a,0x03,0x05,0x09,0x08,
	0x0c,0x04,0x09,0x09,0x04,0x07,0x09,0x07,0x0d,0x04,
	0x09,0x07,0x06,0x09,0x09,0x07,0x09,0x07,0x0b,0x06,
	0x08,0x09,0x0a,0x06,0x08,0x07,0x0c,0x06,0x08,0x0a,
	0x0a,0x07,0x08,0x06,0x0c,0x06,0x08,0x0a,0x0b,0x06,
	0x09,0x06,0x0c,0x05,0x08,0x0c,0x0a,0x06,0x09,0x06,
	0x0d,0x04,0x09,0x0c,0x0a,0x06,0x09,0x06,0x0e,0x01,
	0x0b,0x0d,0x0b,0x05,0x08,0x07,0x19,0x10,0x0a,0x04,
	0x09,0x06,0x1b,0x09,0x02,0x05,0x0a,0x04,0x09,0x05,
	0x1b,0x07,0x04,0x07,0x09,0x04,0x09,0x05,0x1b,0x07,
	0x04,0x08,0x09,0x04,0x09,0x05,0x18,0x01,0x07,0x04,
	0x02,0x09,0x08,0x04,0x09,0x01,0x02,0x04,0x09,0x02,
	0x08,0x04,0x07,0x05,0x04,0x09,0x07,0x03,0x0c,0x05,
	0x07,0x03,0x0b,0x02,0x07,0x06,0x04,0x09,0x07,0x03,
	0x0b,0x05,0x06,0x03,0x0c,0x04,0x05,0x04,0x05,0x01,
	0x03,0x08,0x06,0x03,0x05,0x01,0x06,0x04,0x05,0x03,
	0x04,0x02,0x07,0x03,0x0a,0x04,0x05,0x0a,0x05,0x04,
	0x04,0x01,0x05,0x04,0x0b,0x03,0x06,0x02,0x04,0x03,
	0x04,0x04,0x04,0x02,0x04,0x0a,0x04,0x04,0x04,0x02,
	0x05,0x04,0x0a,0x03,0x0c,0x02,0x05,0x03,0x03,0x03,
	0x05,0x04,0x01,0x06,0x06,0x03,0x04,0x01,0x05,0x04,
	0x03,0x01,0x06,0x03,0x0b,0x02,0x0b,0x03,0x09,0x0a,
	0x05,0x02,0x04,0x03,0x04,0x04,0x03,0x02,0x05,0x03,
	0x04,0x01,0x06,0x02,0x0b,0x03,0x04,0x01,0x04,0x04,
	0x02,0x05,0x05,0x01,0x04,0x03,0x05,0x03,0x02,0x04,
	0x04,0x03,0x04,0x01,0x06,0x02,0x05,0x01,0x05,0x03,
	0x04,0x01,0x05,0x04,0x02,0x05,0x0b,0x03,0x05,0x02,
	0x02,0x04,0x0b,0x03,0x0b,0x02,0x06,0x01,0x05,0x02,
	0x05,0x02,0x03,0x07,0x0b,0x03,0x0a,0x04,0x0c,0x02,
	0x0d,0x01,0x1a,0x05,0x81,0xc6,0x01
};

#define	victorLEN	523
unsigned char victortab[victorLEN] = {
	0x01,0x80,0x89,0x01,0x80,0x88,0x02,0x40,0x01,0x02,
	0x01,0x38,0x01,0x4d,0x03,0x3a,0x0d,0x2c,0x0b,0x02,
	0x01,0x0d,0x07,0x11,0x0c,0x02,0x01,0x09,0x01,0x01,
	0x09,0x0b,0x11,0x01,0x01,0x09,0x01,0x01,0x08,0x09,
	0x11,0x01,0x01,0x09,0x01,0x01,0x06,0x01,0x01,0x08,
	0x10,0x02,0x01,0x09,0x01,0x01,0x08,0x09,0x01,0x01,
	0x0d,0x02,0x01,0x08,0x01,0x01,0x08,0x09,0x01,0x01,
	0x0d,0x01,0x01,0x09,0x01,0x01,0x08,0x0b,0x0c,0x02,
	0x01,0x09,0x01,0x01,0x08,0x0a,0x0c,0x02,0x01,0x09,
	0x01,0x01,0x08,0x08,0x0e,0x01,0x01,0x09,0x01,0x01,
	0x08,0x0a,0x0c,0x01,0x02,0x08,0x01,0x01,0x01,0x01,
	0x06,0x0a,0x01,0x01,0x0b,0x01,0x01,0x08,0x01,0x03,
	0x02,0x01,0x03,0x01,0x01,0x08,0x01,0x01,0x02,0x01,
	0x01,0x01,0x01,0x01,0x02,0x01,0x02,0x02,0x01,0x0f,
	0x07,0x01,0x01,0x0f,0x01,0x01,0x01,0x01,0x01,0x26,
	0x07,0x81,0xe0,0x02,0x02,0x01,0x05,0x01,0x4a,0x01,
	0x0a,0x01,0x0c,0x01,0x52,0x01,0x07,0x01,0x06,0x01,
	0x0b,0x01,0x01,0x01,0x08,0x01,0x24,0x01,0x06,0x01,
	0x1d,0x01,0x01,0x01,0x0b,0x01,0x82,0x8c,0x01,0x01,
	0x01,0x05,0x01,0x1f,0x02,0x04,0x01,0x2b,0x01,0x01,
	0x01,0x02,0x01,0x01,0x02,0x01,0x04,0x12,0x02,0x01,
	0x01,0x13,0x01,0x01,0x0a,0x0e,0x09,0x0f,0x0f,0x0c,
	0x01,0x01,0x09,0x0b,0x05,0x07,0x08,0x02,0x01,0x09,
	0x09,0x0b,0x05,0x09,0x0a,0x0b,0x08,0x0a,0x06,0x09,
	0x0d,0x0c,0x05,0x01,0x01,0x09,0x06,0x0a,0x08,0x03,
	0x06,0x0b,0x08,0x09,0x01,0x01,0x04,0x09,0x09,0x05,
	0x05,0x0c,0x07,0x0b,0x05,0x0b,0x06,0x04,0x07,0x0c,
	0x07,0x09,0x01,0x01,0x06,0x08,0x09,0x06,0x07,0x0a,
	0x09,0x08,0x08,0x09,0x07,0x09,0x06,0x09,0x0a,0x08,
	0x07,0x0b,0x06,0x08,0x09,0x09,0x09,0x09,0x07,0x0b,
	0x06,0x07,0x0b,0x09,0x09,0x09,0x07,0x0b,0x07,0x07,
	0x0b,0x09,0x09,0x0a,0x07,0x0b,0x06,0x07,0x0d,0x09,
	0x07,0x0c,0x06,0x0c,0x06,0x06,0x0f,0x09,0x08,0x0a,
	0x06,0x0d,0x05,0x07,0x07,0x01,0x09,0x08,0x09,0x09,
	0x06,0x0c,0x05,0x09,0x08,0x04,0x06,0x08,0x09,0x08,
	0x05,0x0c,0x05,0x0a,0x06,0x06,0x08,0x08,0x08,0x08,
	0x06,0x0a,0x05,0x0b,0x05,0x0a,0x07,0x07,0x09,0x07,
	0x05,0x0a,0x05,0x0b,0x05,0x0a,0x05,0x03,0x04,0x07,
	0x02,0x03,0x04,0x06,0x04,0x02,0x03,0x06,0x04,0x0b,
	0x03,0x04,0x02,0x06,0x02,0x04,0x04,0x01,0x05,0x06,
	0x03,0x02,0x04,0x05,0x04,0x02,0x04,0x05,0x02,0x03,
	0x04,0x06,0x02,0x04,0x02,0x06,0x01,0x04,0x04,0x04,
	0x05,0x0a,0x05,0x09,0x05,0x0a,0x04,0x0a,0x03,0x0c,
	0x02,0x0a,0x05,0x09,0x05,0x0a,0x04,0x09,0x05,0x0a,
	0x02,0x0b,0x03,0x0b,0x06,0x07,0x01,0x02,0x05,0x09,
	0x04,0x0a,0x04,0x0a,0x03,0x0b,0x03,0x09,0x09,0x06,
	0x01,0x03,0x04,0x0a,0x03,0x0a,0x04,0x0a,0x02,0x0b,
	0x02,0x0b,0x02,0x03,0x05,0x0a,0x04,0x0a,0x04,0x0a,
	0x03,0x0b,0x01,0x0b,0x01,0x0d,0x01,0x05,0x01,0x03,
	0x04,0x09,0x04,0x0a,0x03,0x0a,0x03,0x0b,0x01,0x1f,
	0x01,0x05,0x01,0x02,0x01,0x0a,0x04,0x0a,0x03,0x0b,
	0x01,0x35,0x01,0x0d,0x03,0x0b,0x02,0x49,0x01,0x0a,
	0x03,0x0b,0x02
};

#define	whiskeyLEN	802
unsigned char whiskeytab[whiskeyLEN] = {
	0x07,0x0f,0x01,0x01,0x05,0x13,0x0f,0x0f,0x09,0x11,
	0x10,0x0e,0x09,0x0d,0x13,0x0d,0x09,0x11,0x0d,0x0d,
	0x0a,0x0c,0x11,0x0b,0x0b,0x0a,0x11,0x0e,0x07,0x01,
	0x01,0x0a,0x10,0x0d,0x08,0x0b,0x10,0x02,0x01,0x09,
	0x09,0x0b,0x10,0x0c,0x09,0x0b,0x0f,0x02,0x01,0x09,
	0x09,0x0a,0x10,0x02,0x01,0x09,0x09,0x0b,0x10,0x01,
	0x01,0x09,0x01,0x01,0x08,0x0a,0x11,0x02,0x01,0x08,
	0x01,0x02,0x07,0x0a,0x0b,0x03,0x03,0x02,0x02,0x0b,
	0x07,0x0a,0x09,0x06,0x06,0x01,0x01,0x0c,0x05,0x0a,
	0x08,0x07,0x0a,0x10,0x03,0x01,0x01,0x07,0x01,0x01,
	0x01,0x01,0x01,0x0a,0x01,0x03,0x02,0x02,0x01,0x01,
	0x01,0x01,0x01,0x1e,0x01,0x02,0x01,0x07,0x01,0x04,
	0x01,0x01,0x01,0x02,0x02,0x01,0x01,0x01,0x01,0x02,
	0x01,0x0e,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
	0x02,0x03,0x01,0x03,0x01,0x04,0x01,0x01,0x01,0x01,
	0x01,0x04,0x01,0x05,0x01,0x04,0x02,0x04,0x02,0x01,
	0x01,0x01,0x01,0x02,0x01,0x03,0x01,0x01,0x01,0x05,
	0x01,0x01,0x01,0x09,0x01,0x02,0x01,0x01,0x01,0x01,
	0x01,0x01,0x01,0x02,0x01,0x01,0x01,0x01,0x01,0x01,
	0x01,0x05,0x01,0x02,0x02,0x01,0x02,0x02,0x01,0x02,
	0x01,0x01,0x01,0x04,0x02,0x01,0x02,0x01,0x01,0x05,
	0x01,0x03,0x03,0x08,0x02,0x01,0x02,0x01,0x02,0x06,
	0x02,0x01,0x02,0x01,0x01,0x09,0x01,0x03,0x01,0x16,
	0x04,0x03,0x01,0x01,0x02,0x05,0x01,0x01,0x01,0x05,
	0x01,0x0b,0x01,0x04,0x01,0x03,0x01,0x01,0x01,0x01,
	0x01,0x03,0x01,0x01,0x01,0x03,0x01,0x01,0x01,0x06,
	0x01,0x01,0x01,0x02,0x01,0x08,0x01,0x09,0x01,0x02,
	0x01,0x01,0x01,0x04,0x01,0x01,0x01,0x09,0x01,0x03,
	0x01,0x0e,0x01,0x05,0x01,0x06,0x04,0x05,0x02,0x02,
	0x01,0x01,0x01,0x0c,0x01,0x07,0x02,0x01,0x01,0x0a,
	0x01,0x01,0x01,0x02,0x01,0x01,0x02,0x02,0x01,0x04,
	0x01,0x01,0x01,0x0f,0x01,0x03,0x04,0x01,0x01,0x04,
	0x01,0x04,0x01,0x01,0x01,0x0b,0x01,0x01,0x01,0x05,
	0x01,0x02,0x01,0x02,0x01,0x0c,0x02,0x01,0x01,0x1c,
	0x03,0x02,0x01,0x01,0x01,0x08,0x01,0x04,0x02,0x07,
	0x01,0x02,0x01,0x01,0x01,0x05,0x01,0x01,0x01,0x07,
	0x01,0x01,0x01,0x04,0x01,0x01,0x02,0x01,0x01,0x01,
	0x03,0x01,0x02,0x01,0x01,0x05,0x01,0x05,0x01,0x04,
	0x01,0x02,0x01,0x03,0x03,0x07,0x01,0x04,0x01,0x02,
	0x01,0x04,0x01,0x01,0x01,0x01,0x02,0x01,0x01,0x0a,
	0x01,0x0c,0x02,0x05,0x01,0x03,0x01,0x01,0x01,0x01,
	0x01,0x01,0x02,0x01,0x01,0x03,0x01,0x01,0x01,0x04,
	0x01,0x01,0x01,0x05,0x01,0x01,0x01,0x03,0x02,0x01,
	0x01,0x05,0x01,0x05,0x01,0x01,0x01,0x02,0x01,0x02,
	0x01,0x01,0x01,0x05,0x01,0x01,0x01,0x02,0x01,0x04,
	0x01,0x02,0x01,0x02,0x01,0x01,0x01,0x03,0x01,0x01,
	0x01,0x02,0x01,0x02,0x01,0x01,0x01,0x02,0x01,0x07,
	0x01,0x01,0x01,0x01,0x01,0x05,0x01,0x0a,0x01,0x02,
	0x01,0x03,0x01,0x01,0x01,0x05,0x01,0x09,0x01,0x03,
	0x01,0x0d,0x01,0x82,0x95,0x01,0x75,0x01,0x01,0x01,
	0x02,0x01,0x05,0x03,0x02,0x01,0x01,0x01,0x12,0x05,
	0x14,0x0c,0x01,0x02,0x01,0x01,0x0e,0x09,0x01,0x01,
	0x0f,0x0e,0x02,0x01,0x01,0x01,0x0d,0x0a,0x02,0x01,
	0x0d,0x10,0x02,0x01,0x02,0x01,0x0d,0x0a,0x0f,0x0c,
	0x01,0x02,0x02,0x01,0x03,0x01,0x02,0x01,0x0c,0x09,
	0x11,0x0c,0x01,0x01,0x02,0x04,0x01,0x02,0x01,0x01,
	0x0c,0x09,0x11,0x01,0x01,0x09,0x06,0x01,0x01,0x02,
	0x03,0x01,0x0f,0x09,0x11,0x01,0x01,0x09,0x08,0x04,
	0x01,0x01,0x02,0x01,0x0d,0x09,0x12,0x09,0x09,0x06,
	0x01,0x01,0x0f,0x09,0x01,0x01,0x0f,0x01,0x01,0x08,
	0x0a,0x01,0x01,0x05,0x01,0x02,0x01,0x01,0x0a,0x01,
	0x01,0x0a,0x13,0x05,0x02,0x01,0x0a,0x01,0x01,0x08,
	0x01,0x01,0x0c,0x01,0x02,0x09,0x13,0x01,0x02,0x02,
	0x10,0x01,0x02,0x02,0x01,0x04,0x01,0x01,0x02,0x01,
	0x0a,0x01,0x01,0x0a,0x01,0x01,0x11,0x01,0x02,0x02,
	0x01,0x02,0x10,0x01,0x01,0x04,0x01,0x03,0x01,0x01,
	0x02,0x01,0x0a,0x01,0x01,0x02,0x01,0x03,0x01,0x02,
	0x02,0x01,0x11,0x01,0x01,0x02,0x17,0x01,0x02,0x02,
	0x01,0x02,0x02,0x02,0x01,0x01,0x0a,0x01,0x01,0x02,
	0x01,0x04,0x01,0x02,0x16,0x01,0x02,0x02,0x02,0x01,
	0x10,0x01,0x01,0x01,0x01,0x01,0x01,0x02,0x01,0x01,
	0x02,0x01,0x01,0x02,0x01,0x01,0x07,0x01,0x01,0x02,
	0x01,0x07,0x01,0x01,0x14,0x01,0x02,0x02,0x02,0x01,
	0x17,0x01,0x01,0x02,0x02,0x01,0x02,0x01,0x09,0x01,
	0x02,0x01,0x01,0x04,0x01,0x02,0x02,0x01,0x17,0x01,
	0x02,0x01,0x1f,0x02,0x01,0x01,0x0a,0x01,0x01,0x01,
	0x02,0x03,0x01,0x02,0x40,0x01,0x01,0x01,0x0f,0x03,
	0x02,0x02,0x01,0x01,0x40,0x01,0x12,0x02,0x02,0x02,
	0x01,0x01,0x42,0x01,0x01,0x01,0x10,0x01,0x01,0x01,
	0x01,0x01,0x47,0x01,0x01,0x01,0x10,0x01,0x01,0x01,
	0x4d,0x01
};

#define	xrayLEN	865
unsigned char xraytab[xrayLEN] = {
	0x06,0x07,0x03,0x01,0x02,0x08,0x04,0x09,0x04,0x04,
	0x06,0x07,0x06,0x07,0x05,0x08,0x04,0x06,0x07,0x07,
	0x06,0x07,0x05,0x08,0x04,0x06,0x07,0x07,0x06,0x07,
	0x04,0x07,0x05,0x06,0x08,0x07,0x05,0x07,0x05,0x07,
	0x05,0x04,0x01,0x01,0x07,0x07,0x06,0x07,0x05,0x06,
	0x06,0x04,0x01,0x01,0x07,0x07,0x06,0x07,0x04,0x07,
	0x05,0x04,0x01,0x02,0x07,0x07,0x06,0x06,0x05,0x07,
	0x05,0x03,0x02,0x01,0x07,0x07,0x06,0x07,0x04,0x07,
	0x05,0x01,0x01,0x01,0x02,0x02,0x06,0x07,0x06,0x07,
	0x06,0x08,0x02,0x01,0x0c,0x07,0x07,0x07,0x06,0x07,
	0x01,0x02,0x0c,0x09,0x05,0x0b,0x02,0x03,0x02,0x06,
	0x0b,0x0a,0x04,0x01,0x01,0x0b,0x05,0x01,0x02,0x06,
	0x04,0x01,0x03,0x01,0x01,0x82,0x35,0x02,0x10,0x02,
	0x07,0x01,0x04,0x02,0x16,0x01,0x6b,0x01,0x01,0x01,
	0x04,0x01,0x01,0x01,0x01,0x01,0x06,0x01,0x02,0x03,
	0x01,0x01,0x01,0x01,0x01,0x01,0x02,0x01,0x01,0x01,
	0x05,0x01,0x01,0x01,0x02,0x01,0x01,0x01,0x05,0x01,
	0x01,0x02,0x05,0x03,0x01,0x01,0x01,0x01,0x04,0x01,
	0x02,0x01,0x01,0x01,0x01,0x01,0x09,0x01,0x03,0x01,
	0x01,0x01,0x01,0x02,0x03,0x01,0x03,0x01,0x04,0x01,
	0x01,0x02,0x01,0x01,0x03,0x01,0x02,0x01,0x01,0x05,
	0x01,0x01,0x09,0x04,0x01,0x01,0x05,0x01,0x01,0x02,
	0x01,0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x03,0x01,
	0x01,0x01,0x01,0x01,0x0b,0x02,0x04,0x01,0x09,0x01,
	0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
	0x01,0x04,0x01,0x01,0x02,0x01,0x08,0x01,0x01,0x01,
	0x01,0x02,0x0e,0x01,0x01,0x01,0x06,0x01,0x05,0x01,
	0x01,0x01,0x03,0x01,0x02,0x01,0x01,0x01,0x02,0x01,
	0x01,0x01,0x01,0x03,0x01,0x01,0x01,0x02,0x01,0x01,
	0x01,0x01,0x03,0x01,0x01,0x01,0x02,0x01,0x0c,0x01,
	0x03,0x01,0x04,0x01,0x03,0x01,0x04,0x01,0x02,0x02,
	0x01,0x01,0x03,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
	0x04,0x01,0x03,0x01,0x03,0x01,0x05,0x01,0x06,0x02,
	0x01,0x01,0x03,0x01,0x01,0x01,0x02,0x01,0x01,0x02,
	0x06,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
	0x01,0x01,0x01,0x01,0x03,0x01,0x03,0x01,0x01,0x01,
	0x02,0x01,0x02,0x02,0x01,0x01,0x01,0x01,0x01,0x01,
	0x03,0x02,0x01,0x01,0x03,0x01,0x01,0x01,0x01,0x01,
	0x06,0x03,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x01,
	0x02,0x01,0x06,0x01,0x05,0x01,0x01,0x01,0x08,0x01,
	0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x0a,0x01,
	0x08,0x01,0x01,0x01,0x01,0x01,0x04,0x01,0x01,0x01,
	0x01,0x01,0x01,0x01,0x03,0x01,0x01,0x01,0x02,0x01,
	0x01,0x01,0x01,0x01,0x02,0x03,0x07,0x04,0x02,0x01,
	0x01,0x01,0x08,0x01,0x07,0x01,0x02,0x01,0x01,0x01,
	0x01,0x01,0x07,0x01,0x01,0x01,0x08,0x01,0x04,0x01,
	0x03,0x01,0x01,0x01,0x01,0x01,0x05,0x01,0x04,0x01,
	0x0b,0x01,0x02,0x01,0x02,0x01,0x07,0x01,0x01,0x01,
	0x02,0x01,0x01,0x01,0x05,0x01,0x19,0x02,0x13,0x01,
	0x05,0x01,0x01,0x01,0x20,0x01,0x02,0x01,0x3e,0x01,
	0x7d,0x01,0x05,0x03,0x02,0x04,0x14,0x01,0x11,0x01,
	0x06,0x08,0x0d,0x07,0x10,0x01,0x07,0x0a,0x0d,0x0a,
	0x08,0x02,0x04,0x02,0x06,0x0b,0x0d,0x08,0x0a,0x03,
	0x04,0x02,0x06,0x0a,0x0c,0x08,0x0b,0x04,0x02,0x02,
	0x06,0x0a,0x0c,0x08,0x0b,0x04,0x0a,0x0b,0x0b,0x07,
	0x0a,0x05,0x0a,0x0e,0x0b,0x06,0x0a,0x05,0x0a,0x09,
	0x04,0x05,0x0a,0x06,0x09,0x08,0x09,0x06,0x07,0x07,
	0x09,0x07,0x07,0x07,0x09,0x05,0x09,0x09,0x09,0x06,
	0x07,0x08,0x09,0x03,0x09,0x0e,0x08,0x06,0x01,0x01,
	0x04,0x08,0x08,0x04,0x09,0x01,0x02,0x02,0x03,0x09,
	0x07,0x08,0x05,0x01,0x02,0x04,0x09,0x02,0x01,0x02,
	0x05,0x01,0x03,0x02,0x03,0x02,0x02,0x08,0x08,0x04,
	0x01,0x02,0x06,0x01,0x01,0x04,0x08,0x03,0x01,0x02,
	0x09,0x02,0x08,0x09,0x08,0x04,0x01,0x02,0x08,0x04,
	0x0a,0x04,0x08,0x03,0x03,0x01,0x03,0x03,0x01,0x08,
	0x07,0x04,0x01,0x02,0x08,0x05,0x01,0x01,0x07,0x04,
	0x08,0x03,0x08,0x0b,0x08,0x03,0x01,0x02,0x08,0x05,
	0x01,0x01,0x07,0x05,0x08,0x04,0x07,0x03,0x01,0x09,
	0x07,0x07,0x08,0x06,0x08,0x04,0x09,0x05,0x09,0x0a,
	0x07,0x04,0x01,0x02,0x08,0x06,0x08,0x05,0x08,0x06,
	0x08,0x0c,0x07,0x06,0x09,0x06,0x08,0x06,0x08,0x05,
	0x08,0x0d,0x02,0x01,0x04,0x01,0x01,0x04,0x09,0x06,
	0x08,0x06,0x08,0x05,0x09,0x07,0x02,0x05,0x02,0x01,
	0x04,0x01,0x01,0x04,0x01,0x01,0x08,0x05,0x0a,0x04,
	0x0a,0x03,0x0b,0x0d,0x0b,0x04,0x08,0x05,0x0a,0x05,
	0x09,0x03,0x0a,0x03,0x01,0x03,0x02,0x07,0x07,0x01,
	0x01,0x06,0x08,0x05,0x0a,0x04,0x0b,0x04,0x0b,0x0d,
	0x07,0x01,0x01,0x04,0x01,0x01,0x08,0x06,0x0a,0x05,
	0x0a,0x04,0x0b,0x0d,0x0a,0x05,0x09,0x06,0x09,0x06,
	0x0a,0x05,0x09,0x07,0x04,0x01,0x01,0x01,0x0b,0x02,
	0x01,0x01,0x0a,0x05,0x0b,0x05,0x0a,0x05,0x0a,0x07,
	0x01,0x01,0x02,0x01,0x0c,0x06,0x0a,0x04,0x0b,0x05,
	0x0b,0x05,0x0a,0x06,0x08,0x01,0x0c,0x01,0x01,0x03,
	0x0c,0x02,0x0d,0x04,0x0c,0x04,0x0b,0x02,0x01,0x01,
	0x17,0x01,0x01,0x02,0x2d,0x04,0x0d,0x01,0x02,0x01,
	0x18,0x04,0x40,0x01,0x15,0x02,0x59,0x02,0x01,0x01,
	0x80,0x9d,0x01,0x14,0x01
};

#define	yankeeLEN	681
unsigned char yankeetab[yankeeLEN] = {
	0x01,0x20,0x01,0x01,0x01,0x3c,0x01,0x07,0x01,0x36,
	0x01,0x07,0x01,0x01,0x01,0x32,0x01,0x01,0x01,0x02,
	0x01,0x01,0x02,0x01,0x02,0x1b,0x01,0x17,0x01,0x02,
	0x01,0x01,0x02,0x01,0x02,0x01,0x01,0x15,0x04,0x01,
	0x02,0x11,0x08,0x01,0x01,0x02,0x01,0x15,0x08,0x0e,
	0x0c,0x02,0x01,0x01,0x02,0x11,0x08,0x0c,0x14,0x01,
	0x01,0x0c,0x0a,0x0c,0x09,0x04,0x09,0x0c,0x09,0x0a,
	0x06,0x08,0x09,0x0b,0x08,0x09,0x06,0x09,0x0c,0x0a,
	0x06,0x08,0x05,0x0b,0x0f,0x0a,0x06,0x07,0x05,0x09,
	0x12,0x07,0x01,0x01,0x04,0x07,0x01,0x01,0x04,0x08,
	0x05,0x06,0x09,0x07,0x06,0x07,0x05,0x08,0x04,0x06,
	0x09,0x08,0x02,0x01,0x02,0x07,0x06,0x07,0x03,0x07,
	0x09,0x07,0x03,0x02,0x01,0x05,0x01,0x01,0x05,0x08,
	0x03,0x07,0x09,0x07,0x03,0x01,0x01,0x06,0x01,0x01,
	0x04,0x07,0x05,0x06,0x08,0x07,0x03,0x01,0x02,0x07,
	0x05,0x07,0x03,0x07,0x08,0x02,0x01,0x02,0x01,0x01,
	0x03,0x01,0x02,0x07,0x02,0x01,0x02,0x08,0x02,0x02,
	0x01,0x04,0x08,0x06,0x06,0x07,0x02,0x01,0x02,0x08,
	0x02,0x03,0x01,0x02,0x08,0x05,0x01,0x01,0x02,0x01,
	0x03,0x07,0x02,0x01,0x02,0x07,0x02,0x02,0x01,0x04,
	0x07,0x02,0x01,0x06,0x04,0x07,0x02,0x01,0x02,0x07,
	0x02,0x01,0x03,0x03,0x07,0x02,0x01,0x06,0x03,0x02,
	0x01,0x05,0x01,0x01,0x02,0x08,0x01,0x01,0x04,0x01,
	0x01,0x01,0x07,0x01,0x01,0x07,0x03,0x01,0x01,0x06,
	0x01,0x01,0x02,0x01,0x01,0x08,0x01,0x02,0x03,0x01,
	0x06,0x01,0x02,0x06,0x01,0x01,0x01,0x01,0x02,0x05,
	0x01,0x02,0x01,0x01,0x01,0x08,0x01,0x02,0x01,0x01,
	0x01,0x01,0x06,0x02,0x01,0x06,0x01,0x01,0x01,0x01,
	0x02,0x01,0x01,0x03,0x01,0x02,0x01,0x01,0x01,0x08,
	0x01,0x01,0x02,0x01,0x01,0x01,0x06,0x01,0x01,0x02,
	0x01,0x06,0x01,0x01,0x01,0x01,0x02,0x03,0x01,0x01,
	0x01,0x0a,0x01,0x02,0x03,0x01,0x06,0x01,0x02,0x01,
	0x01,0x06,0x01,0x01,0x01,0x02,0x01,0x01,0x01,0x01,
	0x01,0x01,0x01,0x0b,0x01,0x01,0x01,0x01,0x0a,0x02,
	0x01,0x08,0x01,0x01,0x01,0x01,0x02,0x01,0x01,0x01,
	0x01,0x01,0x01,0x06,0x01,0x03,0x02,0x01,0x09,0x02,
	0x01,0x0c,0x02,0x01,0x01,0x01,0x01,0x01,0x01,0x0b,
	0x0c,0x01,0x01,0x0c,0x01,0x02,0x01,0x01,0x02,0x0c,
	0x01,0x01,0x0c,0x0f,0x05,0x0d,0x0c,0x10,0x05,0x0d,
	0x0c,0x10,0x03,0x0e,0x0e,0x10,0x03,0x0d,0x10,0x20,
	0x06,0x02,0x01,0x07,0x01,0x1d,0x01,0x1a,0x04,0x28,
	0x01,0x82,0x2b,0x01,0x04,0x01,0x03,0x01,0x22,0x01,
	0x80,0x8f,0x01,0x02,0x04,0x01,0x05,0x01,0x01,0x01,
	0x02,0x11,0x01,0x01,0x02,0x01,0x01,0x01,0x01,0x0e,
	0x09,0x01,0x01,0x11,0x09,0x0f,0x0b,0x01,0x02,0x0f,
	0x0a,0x10,0x0d,0x01,0x01,0x0d,0x0d,0x0f,0x01,0x01,
	0x0d,0x01,0x01,0x02,0x01,0x0c,0x0c,0x12,0x10,0x02,
	0x01,0x01,0x01,0x0d,0x09,0x01,0x01,0x13,0x0a,0x05,
	0x04,0x01,0x01,0x02,0x01,0x0c,0x02,0x01,0x09,0x01,
	0x01,0x11,0x0b,0x06,0x03,0x01,0x02,0x01,0x01,0x0f,
	0x07,0x01,0x01,0x02,0x01,0x10,0x09,0x0b,0x03,0x01,
	0x02,0x01,0x01,0x0c,0x01,0x02,0x07,0x01,0x01,0x12,
	0x09,0x0c,0x04,0x02,0x01,0x02,0x01,0x0c,0x01,0x02,
	0x06,0x02,0x01,0x15,0x02,0x01,0x02,0x02,0x01,0x0a,
	0x07,0x01,0x01,0x02,0x01,0x0c,0x02,0x01,0x06,0x02,
	0x01,0x02,0x01,0x13,0x05,0x01,0x01,0x10,0x01,0x03,
	0x01,0x02,0x01,0x0c,0x01,0x02,0x01,0x01,0x04,0x01,
	0x01,0x13,0x01,0x02,0x02,0x01,0x01,0x03,0x01,0x13,
	0x01,0x03,0x01,0x01,0x02,0x0c,0x01,0x01,0x02,0x01,
	0x04,0x01,0x01,0x19,0x01,0x20,0x01,0x02,0x01,0x0a,
	0x01,0x01,0x02,0x01,0x01,0x07,0x01,0x20,0x01,0x19,
	0x01,0x02,0x01,0x0c,0x02,0x01,0x01,0x42,0x01,0x02,
	0x01,0x0c,0x01,0x02,0x01,0x02,0x01,0x27,0x01,0x06,
	0x02,0x13,0x01,0x02,0x01,0x0c,0x01,0x02,0x01,0x30,
	0x01,0x19,0x01,0x0f,0x01,0x02,0x01,0x30,0x01,0x15,
	0x01,0x02,0x01,0x0c,0x01,0x02,0x01,0x02,0x01,0x30,
	0x01,0x15,0x01,0x01,0x01,0x10,0x01,0x01,0x01,0x04,
	0x01,0x43,0x01,0x0f,0x01,0x02,0x03,0x01,0x01,0x01,
	0x01
};

#define	zuluLEN	690
unsigned char zulutab[zuluLEN] = {
	0x01,0x01,0x01,0x01,0x02,0x32,0x01,0x04,0x02,0x01,
	0x02,0x01,0x01,0x30,0x01,0x2b,0x02,0x01,0x01,0x01,
	0x01,0x01,0x01,0x12,0x01,0x02,0x01,0x29,0x01,0x0f,
	0x01,0x01,0x01,0x01,0x02,0x0c,0x01,0x23,0x01,0x06,
	0x01,0x01,0x01,0x01,0x01,0x0a,0x01,0x07,0x03,0x01,
	0x01,0x03,0x01,0x31,0x01,0x01,0x01,0x06,0x01,0x04,
	0x01,0x04,0x01,0x03,0x01,0x03,0x01,0x27,0x01,0x01,
	0x01,0x01,0x01,0x11,0x01,0x05,0x01,0x02,0x01,0x1e,
	0x01,0x01,0x02,0x01,0x01,0x05,0x02,0x03,0x01,0x08,
	0x03,0x09,0x01,0x01,0x01,0x1b,0x01,0x03,0x01,0x03,
	0x01,0x01,0x01,0x04,0x01,0x01,0x01,0x01,0x01,0x02,
	0x01,0x01,0x01,0x03,0x01,0x01,0x01,0x05,0x01,0x01,
	0x01,0x02,0x03,0x1b,0x01,0x02,0x07,0x02,0x01,0x01,
	0x01,0x01,0x01,0x09,0x01,0x04,0x01,0x01,0x01,0x02,
	0x01,0x01,0x01,0x02,0x01,0x1b,0x01,0x02,0x01,0x02,
	0x02,0x04,0x01,0x0a,0x01,0x02,0x01,0x01,0x01,0x05,
	0x01,0x01,0x02,0x12,0x01,0x01,0x01,0x0d,0x01,0x01,
	0x01,0x04,0x01,0x05,0x02,0x05,0x02,0x01,0x04,0x02,
	0x01,0x01,0x01,0x17,0x01,0x06,0x01,0x01,0x01,0x01,
	0x01,0x01,0x04,0x08,0x01,0x01,0x06,0x01,0x01,0x12,
	0x01,0x01,0x01,0x06,0x01,0x02,0x01,0x01,0x01,0x01,
	0x01,0x01,0x01,0x03,0x01,0x04,0x01,0x01,0x02,0x01,
	0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x20,0x03,0x01,
	0x04,0x01,0x01,0x01,0x01,0x01,0x01,0x04,0x06,0x1d,
	0x01,0x05,0x01,0x01,0x03,0x01,0x0a,0x01,0x02,0x11,
	0x01,0x01,0x01,0x0b,0x01,0x01,0x03,0x02,0x01,0x01,
	0x0b,0x10,0x07,0x08,0x03,0x01,0x03,0x01,0x01,0x01,
	0x08,0x0f,0x09,0x04,0x01,0x02,0x06,0x01,0x06,0x02,
	0x01,0x0e,0x08,0x09,0x0b,0x01,0x02,0x0d,0x09,0x08,
	0x0a,0x01,0x01,0x0e,0x08,0x09,0x08,0x01,0x02,0x0d,
	0x09,0x09,0x0a,0x0d,0x09,0x09,0x0a,0x0b,0x01,0x01,
	0x09,0x08,0x0a,0x0b,0x01,0x01,0x09,0x08,0x0a,0x0c,
	0x0a,0x08,0x0a,0x0c,0x09,0x09,0x0a,0x0b,0x09,0x09,
	0x09,0x0c,0x09,0x09,0x09,0x0c,0x09,0x08,0x09,0x0c,
	0x09,0x08,0x0a,0x0b,0x09,0x08,0x0a,0x0b,0x09,0x07,
	0x0a,0x0c,0x09,0x07,0x0a,0x0c,0x09,0x08,0x0a,0x0c,
	0x08,0x08,0x0a,0x0c,0x09,0x07,0x0a,0x0c,0x09,0x08,
	0x0a,0x0c,0x09,0x08,0x0a,0x0c,0x09,0x08,0x0b,0x0b,
	0x09,0x09,0x0a,0x0c,0x09,0x09,0x0a,0x0c,0x09,0x09,
	0x0a,0x0c,0x09,0x09,0x0b,0x0c,0x09,0x0a,0x09,0x0d,
	0x09,0x0a,0x09,0x0c,0x0b,0x0a,0x0a,0x0c,0x0b,0x0a,
	0x09,0x0c,0x0b,0x0b,0x0a,0x0c,0x0a,0x0b,0x0b,0x0c,
	0x0b,0x0c,0x0b,0x0f,0x09,0x0b,0x0b,0x0d,0x0a,0x0a,
	0x0c,0x0c,0x0a,0x0b,0x0b,0x0d,0x0a,0x0b,0x0c,0x0c,
	0x0b,0x0b,0x0c,0x0c,0x0b,0x0c,0x0a,0x0f,0x0a,0x0d,
	0x0b,0x0f,0x09,0x0e,0x0c,0x10,0x0a,0x0e,0x0c,0x01,
	0x01,0x0f,0x0a,0x0f,0x0c,0x01,0x01,0x0f,0x0a,0x0f,
	0x01,0x01,0x0c,0x01,0x01,0x10,0x0b,0x11,0x0b,0x0e,
	0x0a,0x10,0x0f,0x0e,0x01,0x01,0x08,0x10,0x01,0x05,
	0x0d,0x0d,0x0a,0x0e,0x05,0x09,0x09,0x0c,0x0a,0x0b,
	0x08,0x09,0x0b,0x0b,0x0a,0x0b,0x08,0x0a,0x0c,0x0c,
	0x09,0x0b,0x08,0x0a,0x0f,0x0c,0x09,0x0b,0x05,0x0b,
	0x09,0x02,0x07,0x0c,0x09,0x0b,0x06,0x0a,0x08,0x01,
	0x01,0x03,0x07,0x0b,0x0a,0x0b,0x06,0x0b,0x0a,0x03,
	0x07,0x0c,0x09,0x0b,0x07,0x0b,0x09,0x04,0x08,0x0b,
	0x09,0x0b,0x07,0x0c,0x09,0x03,0x09,0x0c,0x09,0x0c,
	0x05,0x0e,0x09,0x06,0x07,0x0c,0x09,0x0d,0x05,0x0d,
	0x09,0x07,0x06,0x0d,0x09,0x0d,0x04,0x0d,0x08,0x08,
	0x08,0x0d,0x09,0x0e,0x02,0x10,0x06,0x09,0x07,0x0e,
	0x09,0x0e,0x03,0x0f,0x07,0x0b,0x05,0x0e,0x09,0x0e,
	0x05,0x0e,0x09,0x09,0x06,0x0e,0x09,0x0d,0x06,0x0e,
	0x09,0x08,0x01,0x01,0x06,0x0e,0x09,0x0e,0x06,0x0e,
	0x08,0x0a,0x07,0x0e,0x0a,0x0e,0x07,0x0e,0x07,0x0c,
	0x07,0x0e,0x09,0x0f,0x06,0x11,0x07,0x0c,0x01,0x01,
	0x01,0x01,0x01,0x10,0x08,0x12,0x05,0x10,0x08,0x11,
	0x02,0x10,0x09,0x10,0x06,0x0f,0x08,0x14,0x01,0x11,
	0x07,0x12,0x05,0x11,0x07,0x27,0x07,0x10,0x03,0x03,
	0x01,0x13,0x05,0x2b,0x04,0x16,0x01,0x15,0x02,0x01,
	0x01,0x12,0x01,0x1b,0x03,0x2a,0x01,0x81,0x8d,0x02
};


#ifndef	USEIOCTL

__inline__ static unsigned char
inb(register unsigned short port)
{
	register unsigned char value;

	__asm__ __volatile__ ("inb %w1,%0":"=a" (value):"Nd" (port));
	return(value);
}

__inline__ static void
outb(register unsigned char value,
register unsigned short int port)
{
	__asm__ volatile ("outb %b0,%w1": :"a" (value), "Nd" (port));
}

__inline__ static void
cli()
{
	__asm__ volatile ("cli");
}

__inline__ static void
sti()
{
	__asm__ volatile ("sti");
}

#endif

__inline__ static unsigned long long
until(register unsigned long long when)
{
	register union tick_union result;
	register unsigned int msr = 0;

again:
	__asm __volatile(
			 ".byte 0xf
			  .byte 0x31		# Read the cycle counter
			  movl %%edx, %0	# high order bits
			  movl %%eax, %1	# low order bits"
			 : "=g" (result.lowhi.hi32), "=g" (result.lowhi.low32)
			 : "g" (msr)
			 : "eax", "edx"
			 );

	if (result.val64 < when) {
		if ((result.val64 + SYSTICKS) < when) {
			usleep(1);
		}
		goto again;
	}

	return(result.val64);
}


void
shutup(int signum)
{
#ifdef	USEIOCTL
	ioctl(consolefd, KIOCSOUND, 0);
#else
	/* Timer2 sound control off */
	outb((inb(0x61) & ~3), 0x61);
#endif
	exit(1);
}

void
tone(register int freq,
register unsigned long long usec)
{
	register unsigned long long now = until(0ULL);

#ifndef	FORCETOGGLE
#ifdef	USEIOCTL
	register int t = (freq ? ((TIMERPERSEC + (freq >> 1)) / freq) : 0);
	ioctl(consolefd, KIOCSOUND, t);

	/* Delay for the specified time in microseconds */
	until(now + ((usec * TICKSPERSEC) / 1000000ULL));
#else
	if (freq > 0) {
		/* Convert t from frequency to wavelength */
		register int t = ((TIMERPERSEC + (freq >> 1)) / freq);

		/* Timer2 sound control on */
		cli();
		outb((inb(0x61) | 0x03), 0x61);
		outb(0xd2, 0x43);	/* Mode2, load LS */
		outb(t, 0x42);		/* Out frequency LS */
		outb(0xe2, 0x43);	/* Mode2, load MS */
		outb((t >> 8), 0x42);	/* Out frequency MS */
		sti();
	} else {
		/* Timer2 sound control off */
		outb((inb(0x61) & ~3), 0x61);
	}

	/* Delay for the specified time in microseconds */
	until(now + ((usec * TICKSPERSEC) / 1000000ULL));
#endif
#else
	/* Force dumb toggling of the speaker bit... */
	register unsigned long long done = (now + ((usec * TICKSPERSEC) / 1000000ULL));
	register int datum = (inb(0x61) & ~0x03);

	if (freq > 0) {
		/* Convert t from frequency to wavelength */
		register int t = ((TICKSPERSEC + (freq >> 1)) / freq);
		register unsigned long long flip;

		do {
			/* Flip the PC speaker state */
			outb((datum ^= 0x02), 0x61);

			flip = (now + t);
			now = until(flip);
		} while (now < done);
	} else {
		until(done);
	}

	/* Always exit with speaker off */
	outb(datum, 0x61);
#endif
}


void
alert(register int c)
{
	register int i, j;

	switch (c) {
	case '!':
		for (j=0; j<5; ++j) {
			for (i=220; i<=(8*220); i+=128) tone(i, 40000ULL);
			for (i=(8*220); i>=220; i-=128) tone(i, 40000ULL);
		}
		break;
	case '?':
		tone(440, 500000ULL);
		for (i=440; i<=880; i+=40) tone(i, 40000ULL);
		break;
	case '.':
		/* Essentially the standard console beep,
		   but 4X as long
		*/
		tone(750, (4 * 125000ULL));
	}
	tone(0, 0ULL);
}

void
nato(register int c)
{
	register unsigned long long now;
	register unsigned long long when;
	register unsigned char *p;
	register unsigned char *e;
	register unsigned char datum;

	/* Get time reference */
	now = until(0ULL);
	
	c &= 0x7f;
	switch (c) {
	case '0':		p = &(zerotab[0]); e = &(zerotab[zeroLEN]); break;
	case '1':		p = &(onetab[0]); e = &(onetab[oneLEN]); break;
	case '2':		p = &(twotab[0]); e = &(twotab[twoLEN]); break;
	case '3':		p = &(threetab[0]); e = &(threetab[threeLEN]); break;
	case '4':		p = &(fourtab[0]); e = &(fourtab[fourLEN]); break;
	case '5':		p = &(fivetab[0]); e = &(fivetab[fiveLEN]); break;
	case '6':		p = &(sixtab[0]); e = &(sixtab[sixLEN]); break;
	case '7':		p = &(seventab[0]); e = &(seventab[sevenLEN]); break;
	case '8':		p = &(eighttab[0]); e = &(eighttab[eightLEN]); break;
	case '9':		p = &(ninetab[0]); e = &(ninetab[nineLEN]); break;
	case 'A': case 'a':	p = &(alphatab[0]); e = &(alphatab[alphaLEN]); break;
	case 'B': case 'b':	p = &(bravotab[0]); e = &(bravotab[bravoLEN]); break;
	case 'C': case 'c':	p = &(charlietab[0]); e = &(charlietab[charlieLEN]); break;
	case 'D': case 'd':	p = &(deltatab[0]); e = &(deltatab[deltaLEN]); break;
	case 'E': case 'e':	p = &(echotab[0]); e = &(echotab[echoLEN]); break;
	case 'F': case 'f':	p = &(foxtrottab[0]); e = &(foxtrottab[foxtrotLEN]); break;
	case 'G': case 'g':	p = &(golftab[0]); e = &(golftab[golfLEN]); break;
	case 'H': case 'h':	p = &(hoteltab[0]); e = &(hoteltab[hotelLEN]); break;
	case 'I': case 'i':	p = &(indiatab[0]); e = &(indiatab[indiaLEN]); break;
	case 'J': case 'j':	p = &(juliettab[0]); e = &(juliettab[julietLEN]); break;
	case 'K': case 'k':	p = &(kilotab[0]); e = &(kilotab[kiloLEN]); break;
	case 'L': case 'l':	p = &(limatab[0]); e = &(limatab[limaLEN]); break;
	case 'M': case 'm':	p = &(miketab[0]); e = &(miketab[mikeLEN]); break;
	case 'N': case 'n':	p = &(novembertab[0]); e = &(novembertab[novemberLEN]); break;
	case 'O': case 'o':	p = &(oscartab[0]); e = &(oscartab[oscarLEN]); break;
	case 'P': case 'p':	p = &(papatab[0]); e = &(papatab[papaLEN]); break;
	case 'Q': case 'q':	p = &(quebectab[0]); e = &(quebectab[quebecLEN]); break;
	case 'R': case 'r':	p = &(romeotab[0]); e = &(romeotab[romeoLEN]); break;
	case 'S': case 's':	p = &(sierratab[0]); e = &(sierratab[sierraLEN]); break;
	case 'T': case 't':	p = &(tangotab[0]); e = &(tangotab[tangoLEN]); break;
	case 'U': case 'u':	p = &(uniformtab[0]); e = &(uniformtab[uniformLEN]); break;
	case 'V': case 'v':	p = &(victortab[0]); e = &(victortab[victorLEN]); break;
	case 'W': case 'w':	p = &(whiskeytab[0]); e = &(whiskeytab[whiskeyLEN]); break;
	case 'X': case 'x':	p = &(xraytab[0]); e = &(xraytab[xrayLEN]); break;
	case 'Y': case 'y':	p = &(yankeetab[0]); e = &(yankeetab[yankeeLEN]); break;
	case 'Z': case 'z':	p = &(zulutab[0]); e = &(zulutab[zuluLEN]); break;
	case ' ': case ',':	until(now + WORDTICKS); return;
	default:		return;
	}

	/* Force kerning time */
	when = (now + KERNTICKS);

#ifndef	USEIOCTL
	/* Get base value for control of the PC speaker */
	datum = (inb(0x61) & ~0x03);
#else
	datum = 0;
#endif
	while (p < e) {
		register int t;

		/* Delay for previous speaker cone position */
		now = until(when);

#ifndef	USEIOCTL
		/* Flip the PC speaker state */
		outb((datum ^= 0x02), 0x61);
#else
		/* Flip the PC speaker state */
		if (datum = !datum) {
			ioctl(consolefd, KIOCSOUND, 30000);
		} else {
			ioctl(consolefd, KIOCSOUND, 0);
		}
#endif

		/* Determine delay for this position */
		t = *p;
		if ((t & 128) != 0) {
			t = (((int) (t & 0x7f)) << 8);
			t += *(++p);
		}
		when = now + (t * SAMPLETICKS);
		++p;
	}

	/* Delay for previous speaker cone position */
	now = until(when);

#ifndef	USEIOCTL
	/* Flip the PC speaker cone to 0 position */
	outb((datum & ~0x03), 0x61);
#else
	ioctl(consolefd, KIOCSOUND, 0);
#endif

	/* And wait for 1/2 intercharacter (kerning) time */
	until(now + KERNTICKS);
}

void
morse(register int c)
{
	register unsigned long long now;
	register unsigned long long when;
	register unsigned char *p;
	register unsigned char *e;
	register unsigned char datum;

	/* Get time reference */
	now = until(0ULL);
	
	c &= 0x7f;
	switch (c) {
	case '0':		p = "-----"; break;
	case '1':		p = ".----"; break;
	case '2':		p = "..---"; break;
	case '3':		p = "...--"; break;
	case '4':		p = "....-"; break;
	case '5':		p = "....."; break;
	case '6':		p = "-...."; break;
	case '7':		p = "--..."; break;
	case '8':		p = "---.."; break;
	case '9':		p = "----."; break;
	case 'A': case 'a':	p = ".-"; break;
	case 'B': case 'b':	p = "-..."; break;
	case 'C': case 'c':	p = "-.-."; break;
	case 'D': case 'd':	p = "-.."; break;
	case 'E': case 'e':	p = "."; break;
	case 'F': case 'f':	p = "..-."; break;
	case 'G': case 'g':	p = "--."; break;
	case 'H': case 'h':	p = "...."; break;
	case 'I': case 'i':	p = ".."; break;
	case 'J': case 'j':	p = ".---"; break;
	case 'K': case 'k':	p = "-.-"; break;
	case 'L': case 'l':	p = ".-.."; break;
	case 'M': case 'm':	p = "--"; break;
	case 'N': case 'n':	p = "-."; break;
	case 'O': case 'o':	p = "---"; break;
	case 'P': case 'p':	p = ".--."; break;
	case 'Q': case 'q':	p = "--.-"; break;
	case 'R': case 'r':	p = ".-."; break;
	case 'S': case 's':	p = "..."; break;
	case 'T': case 't':	p = "-"; break;
	case 'U': case 'u':	p = "..-"; break;
	case 'V': case 'v':	p = "...-"; break;
	case 'W': case 'w':	p = ".--"; break;
	case 'X': case 'x':	p = "-..-"; break;
	case 'Y': case 'y':	p = "-.--"; break;
	case 'Z': case 'z':	p = "--.."; break;
	case ' ': case ',':	until(now + WORDTICKS); return;
	default:		return;
	}

	/* Force kerning time */
	tone(0, 150000ULL);

	/* Play the tones... */
	while (*p) {
		tone(1500, ((*p == '.') ? 50000ULL : 150000ULL));
		tone(0, 50000ULL);
		++p;
	}

	/* Force kerning time */
	tone(0, 150000ULL);
}


void
addlex(register int c)
{
	/* Is there space for this character? */
	if (inputlen >= (MAXINPUT-1)) return;

	/* Is c lexically valid? */
	switch (c) {
	case '0':	case '1':	case '2':	case '3':
	case '4':	case '5':	case '6':	case '7':
	case '8':	case '9':	case 'A':	case 'a':
	case 'B':	case 'b':	case 'C':	case 'c':
	case 'D':	case 'd':	case 'E':	case 'e':
	case 'F':	case 'f':	case 'G':	case 'g':
	case 'H':	case 'h':	case 'I':	case 'i':
	case 'J':	case 'j':	case 'K':	case 'k':
	case 'L':	case 'l':	case 'M':	case 'm':
	case 'N':	case 'n':	case 'O':	case 'o':
	case 'P':	case 'p':	case 'Q':	case 'q':
	case 'R':	case 'r':	case 'S':	case 's':
	case 'T':	case 't':	case 'U':	case 'u':
	case 'V':	case 'v':	case 'W':	case 'w':
	case 'X':	case 'x':	case 'Y':	case 'y':
	case 'Z':	case 'z':	case ' ':	case ',':
	case ';':	case '!':	case '?':	case '.':
	case '-':	case '@':	case '%':	case '(':
	case ')':	case '*':	case '~':	case '_':
					break;

	/* The following are treated as aliases... */
	case '<':	case '{':	case '[':
					c = '(';
					break;
	case '>':	case '}':	case ']':
					c = ')';
					break;
	case '\t':	case '\n':
					c = ' ';
					break;

	/* Anything else is ignored... */
	default:			return;
	}

	/* Compress space sequences into single spaces */
	if ((c == ' ') && (inputlen > 0) && (inputbuf[inputlen-1] == ' ')) return;

	/* Put it in the buffer */
	inputbuf[inputlen++] = c;
}

int
token(void)
{
	return((pc >= inputlen) ? 0 : inputbuf[pc]);
}

int
number(void)
{
	register int count = 0;

	while (token() == ' ') ++pc;
	for (;;) {
		switch (token()) {
		case '0':	count = (count * 10); break;
		case '1':	count = (count * 10) + 1; break;
		case '2':	count = (count * 10) + 2; break;
		case '3':	count = (count * 10) + 3; break;
		case '4':	count = (count * 10) + 4; break;
		case '5':	count = (count * 10) + 5; break;
		case '6':	count = (count * 10) + 6; break;
		case '7':	count = (count * 10) + 7; break;
		case '8':	count = (count * 10) + 8; break;
		case '9':	count = (count * 10) + 9; break;
		default:	while (token() == ' ') ++pc;
				return(count);
		}

		++pc;
	}
}

int
repeats(void)
{
	/* Eat white space, if any */
	while (token() == ' ') ++pc;

	if (token() == '*') {
		++pc;
		return(-1);
	}

	return(number());
}

int
phrase(void)
{
	register int begin, end, count, freqhz;

	if (token() == '(') {
		begin = ++pc;
		if (!phrase()) return(0);
		if (token() == ')') {
			++pc;
			if (!(count = repeats())) return(0);
			end = pc;
			while ((count == -1) || (--count > 0)) {
				pc = begin;
				phrase();
			}
			pc = end;
		}
		return(1);
	}

	/* Must be ordinary text... */
	for (;;) {
		switch (token()) {
		case 0:		return(0);
		case ')':	return(1);
		case '(':	if (!phrase()) return(0);
				break;
		case '_':	++pc;
				usecdelay = (1000ULL * number());
				while (token() == ' ') ++pc;
				break;
		case '~':	++pc;
				freqhz = number();
				while (token() == ' ') ++pc;
				if (freqhz > 0) {
					tone(freqhz, usecdelay);
					tone(0, 0ULL);
				} else {
					tone(0, usecdelay);
				}
				break;
		case ';':	++pc;
				tone(0, usecdelay);
				break;
		case '-':	++pc;
				usenato = 0;
				break;
		case '@':	++pc;
				usenato = 1;
				break;
		case '%':	++pc;
				usenato = !usenato;
				break;
		case '!':
		case '?':
		case '.':	alert(token());
				++pc;
				break;
		default:	if (usenato) nato(token()); else morse(token());
				++pc;
		}
	}
}

int
main(register int argc,
register char **argv)
{
	register int hadword = 0;

#ifdef	AUTOCALIBRATE
	/* Variables for auto calibration of performance tick timer */
	register int time0, time1, reftime;
	register unsigned long long tick0, tick1;

	/* Wait for the system second-resolution clock to tick */
	tick0 = until(0);
	time0 = time(0);
	do {
		tick0 = until(tick0);
		time1 = time(0);
	} while (time0 == time1);
	reftime = time1;
#endif

#ifdef	USEIOCTL
	if ((consolefd = open("/dev/console", O_NOCTTY)) < 0) exit(1);
#else
	/* Get port access */
	if (iopl(3) != 0) exit(1);
#endif

	/* Read command line options and/or input words */
	if (argc > 1) {
		register int i, j, c;

		for (i=1; i<argc; ++i) {
			if (*argv[i] == '-') {
				/* A command line option... */
			} else {
				/* A command line input word... */
				register int j = 0;

				/* Had a word of input */
				hadword = 1;

				/* Catenate */
				while ((c = *(argv[i] + j)) != 0) {
					addlex(c);
					++j;
				}

				/* Word break after each argument */
				addlex(' ');
			}
		}
	}

	/* Where is our input? */
	if (hadword == 0) {
		/* Read input from stdin */
		register int i;
		register char *p = &(inputbuf[inputlen]);

		i = read(0, p, (&(inputbuf[MAXINPUT]) - p));
		while (i > 0) {
			do { addlex(*(p++)); } while (--i > 0);
			p = &(inputbuf[inputlen]);
			i = read(0, p, (&(inputbuf[MAXINPUT]) - p));
		}
	}

#ifdef	AUTOCALIBRATE
	/* Complete auto calibration of tick timer by waiting for
	   the system second-resolution clock to tick again
	*/
	tick1 = tick0;
	time0 = time(0);
	do {
		tick1 = until(tick1);
		time1 = time(0);
	} while (time0 == time1);
	tickspersec = ((tick1 - tick0) / (time1 - reftime));
#endif

	/* If we die now, shutup sound */
	signal(SIGINT,  shutup);
	signal(SIGTERM, shutup);
	signal(SIGQUIT, shutup);
	signal(SIGTSTP, shutup);

	/* Interpret the now-buffered input */
	while (phrase()) ;

	/* All's well that ends well... */
	exit(0);
}
