 6937d41a02
			
		
	
	6937d41a02
	
	
	
		
			
			git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@23815 ec53bebd-3082-4978-b11e-865c3cabbd6b
		
			
				
	
	
		
			2523 lines
		
	
	
		
			53 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			2523 lines
		
	
	
		
			53 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * Copyright (c) 1995-2000, 2005-2007 Kungliga Tekniska Högskolan
 | |
|  * (Royal Institute of Technology, Stockholm, Sweden).
 | |
|  * All rights reserved.
 | |
|  *
 | |
|  * Redistribution and use in source and binary forms, with or without
 | |
|  * modification, are permitted provided that the following conditions
 | |
|  * are met:
 | |
|  *
 | |
|  * 1. Redistributions of source code must retain the above copyright
 | |
|  *    notice, this list of conditions and the following disclaimer.
 | |
|  *
 | |
|  * 2. Redistributions in binary form must reproduce the above copyright
 | |
|  *    notice, this list of conditions and the following disclaimer in the
 | |
|  *    documentation and/or other materials provided with the distribution.
 | |
|  *
 | |
|  * 3. Neither the name of the Institute nor the names of its contributors
 | |
|  *    may be used to endorse or promote products derived from this software
 | |
|  *    without specific prior written permission.
 | |
|  *
 | |
|  * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND
 | |
|  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 | |
|  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 | |
|  * ARE DISCLAIMED.  IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE
 | |
|  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 | |
|  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 | |
|  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 | |
|  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
 | |
|  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 | |
|  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 | |
|  * SUCH DAMAGE.
 | |
|  */
 | |
| 
 | |
| #ifdef HAVE_CONFIG_H
 | |
| #include "config.h"
 | |
| RCSID("$Id$");
 | |
| #endif
 | |
| 
 | |
| #include "otp_locl.h"
 | |
| 
 | |
| struct e {
 | |
|   const char *s;
 | |
|   unsigned n;
 | |
| };
 | |
| 
 | |
| extern const struct e inv_std_dict[2048];
 | |
| 
 | |
| static int
 | |
| cmp(const void *a, const void *b)
 | |
| {
 | |
|   const struct e *e1, *e2;
 | |
| 
 | |
|   e1 = (const struct e *)a;
 | |
|   e2 = (const struct e *)b;
 | |
|   return strcasecmp (e1->s, e2->s);
 | |
| }
 | |
| 
 | |
| static int
 | |
| get_stdword (const char *s, void *v)
 | |
| {
 | |
|   struct e e, *r;
 | |
| 
 | |
|   e.s = s;
 | |
|   e.n = -1;
 | |
|   r = (struct e *) bsearch (&e, inv_std_dict,
 | |
| 			    sizeof(inv_std_dict)/sizeof(*inv_std_dict),
 | |
| 			    sizeof(*inv_std_dict), cmp);
 | |
|   if (r)
 | |
|     return r->n;
 | |
|   else
 | |
|     return -1;
 | |
| }
 | |
| 
 | |
| static void
 | |
| compress (OtpKey key, unsigned wn[])
 | |
| {
 | |
|   key[0] = wn[0] >> 3;
 | |
|   key[1] = ((wn[0] & 0x07) << 5) | (wn[1] >> 6);
 | |
|   key[2] = ((wn[1] & 0x3F) << 2) | (wn[2] >> 9);
 | |
|   key[3] = ((wn[2] >> 1) & 0xFF);
 | |
|   key[4] = ((wn[2] & 0x01) << 7) | (wn[3] >> 4);
 | |
|   key[5] = ((wn[3] & 0x0F) << 4) | (wn[4] >> 7);
 | |
|   key[6] = ((wn[4] & 0x7F) << 1) | (wn[5] >> 10);
 | |
|   key[7] = ((wn[5] >> 2) & 0xFF);
 | |
| }
 | |
| 
 | |
| static int
 | |
| get_altword (const char *s, void *a)
 | |
| {
 | |
|   OtpAlgorithm *alg = (OtpAlgorithm *)a;
 | |
|   int ret;
 | |
|   unsigned char *res = malloc(alg->hashsize);
 | |
| 
 | |
|   if (res == NULL)
 | |
|     return -1;
 | |
|   alg->hash (s, strlen(s), res);
 | |
|   ret = (unsigned)(res[alg->hashsize - 1]) |
 | |
|       ((res[alg->hashsize - 2] & 0x03) << 8);
 | |
|   free (res);
 | |
|   return ret;
 | |
| }
 | |
| 
 | |
| static int
 | |
| parse_words(unsigned wn[],
 | |
| 	    const char *str,
 | |
| 	    int (*convert)(const char *, void *),
 | |
| 	    void *arg)
 | |
| {
 | |
|   const unsigned char *w, *wend;
 | |
|   char *wcopy;
 | |
|   int i;
 | |
|   int tmp;
 | |
| 
 | |
|   w = (const unsigned char *)str;
 | |
|   for (i = 0; i < 6; ++i) {
 | |
|     while (isspace(*w))
 | |
|       ++w;
 | |
|     wend = w;
 | |
|     while (isalpha (*wend))
 | |
|       ++wend;
 | |
| 
 | |
|     tmp = wend - w;
 | |
|     wcopy = malloc(tmp + 1);
 | |
|     if (wcopy == NULL)
 | |
| 	return -1;
 | |
|     memcpy(wcopy, w, tmp);
 | |
|     wcopy[tmp] = '\0';
 | |
| 
 | |
|     tmp = (*convert)(wcopy, arg);
 | |
|     free(wcopy);
 | |
|     w = wend;
 | |
|     if (tmp < 0)
 | |
|       return -1;
 | |
|     wn[i] = tmp;
 | |
|   }
 | |
|   return 0;
 | |
| }
 | |
| 
 | |
| static int
 | |
| otp_parse_internal (OtpKey key, const char *str,
 | |
| 		    OtpAlgorithm *alg,
 | |
| 		    int (*convert)(const char *, void *))
 | |
| {
 | |
|   unsigned wn[6];
 | |
| 
 | |
|   if (parse_words (wn, str, convert, alg))
 | |
|     return -1;
 | |
|   compress (key, wn);
 | |
|   if (otp_checksum (key) != (wn[5] & 0x03))
 | |
|     return -1;
 | |
|   return 0;
 | |
| }
 | |
| 
 | |
| int
 | |
| otp_parse_stddict (OtpKey key, const char *str)
 | |
| {
 | |
|   return otp_parse_internal (key, str, NULL, get_stdword);
 | |
| }
 | |
| 
 | |
| int
 | |
| otp_parse_altdict (OtpKey key, const char *str, OtpAlgorithm *alg)
 | |
| {
 | |
|   return otp_parse_internal (key, str, alg, get_altword);
 | |
| }
 | |
| 
 | |
| int
 | |
| otp_parse_hex (OtpKey key, const char *s)
 | |
| {
 | |
|   char buf[17], *b;
 | |
|   int is[8];
 | |
|   int i;
 | |
| 
 | |
|   b = buf;
 | |
|   while (*s) {
 | |
|     if (strchr ("0123456789ABCDEFabcdef", *s)) {
 | |
|       if (b - buf >= 16)
 | |
| 	return -1;
 | |
|       else
 | |
| 	*b++ = tolower((unsigned char)*s);
 | |
|     }
 | |
|     s++;
 | |
|   }
 | |
|   *b = '\0';
 | |
|   if (sscanf (buf, "%2x%2x%2x%2x%2x%2x%2x%2x",
 | |
| 	      &is[0], &is[1], &is[2], &is[3], &is[4],
 | |
| 	      &is[5], &is[6], &is[7]) != 8)
 | |
|     return -1;
 | |
|   for (i = 0; i < OTPKEYSIZE; ++i)
 | |
|     key[i] = is[i];
 | |
|   return 0;
 | |
| }
 | |
| 
 | |
| int
 | |
| otp_parse (OtpKey key, const char *s, OtpAlgorithm *alg)
 | |
| {
 | |
|   int ret;
 | |
|   int dohex = 1;
 | |
| 
 | |
|   if (strncmp (s, OTP_HEXPREFIX, strlen(OTP_HEXPREFIX)) == 0)
 | |
|     return otp_parse_hex (key, s + strlen(OTP_HEXPREFIX));
 | |
|   if (strncmp (s, OTP_WORDPREFIX, strlen(OTP_WORDPREFIX)) == 0) {
 | |
|     s += strlen(OTP_WORDPREFIX);
 | |
|     dohex = 0;
 | |
|   }
 | |
| 
 | |
|   ret = otp_parse_stddict (key, s);
 | |
|   if (ret)
 | |
|     ret = otp_parse_altdict (key, s, alg);
 | |
|   if (ret && dohex)
 | |
|     ret = otp_parse_hex (key, s);
 | |
|   return ret;
 | |
| }
 | |
| 
 | |
| const char *const std_dict[2048] =
 | |
| {        "A",    "ABE",   "ACE",   "ACT",   "AD",    "ADA",   "ADD",
 | |
| "AGO",   "AID",  "AIM",   "AIR",   "ALL",   "ALP",   "AM",    "AMY",
 | |
| "AN",    "ANA",  "AND",   "ANN",   "ANT",   "ANY",   "APE",   "APS",
 | |
| "APT",   "ARC",  "ARE",   "ARK",   "ARM",   "ART",   "AS",    "ASH",
 | |
| "ASK",   "AT",   "ATE",   "AUG",   "AUK",   "AVE",   "AWE",   "AWK",
 | |
| "AWL",   "AWN",  "AX",    "AYE",   "BAD",   "BAG",   "BAH",   "BAM",
 | |
| "BAN",   "BAR",  "BAT",   "BAY",   "BE",    "BED",   "BEE",   "BEG",
 | |
| "BEN",   "BET",  "BEY",   "BIB",   "BID",   "BIG",   "BIN",   "BIT",
 | |
| "BOB",   "BOG",  "BON",   "BOO",   "BOP",   "BOW",   "BOY",   "BUB",
 | |
| "BUD",   "BUG",  "BUM",   "BUN",   "BUS",   "BUT",   "BUY",   "BY",
 | |
| "BYE",   "CAB",  "CAL",   "CAM",   "CAN",   "CAP",   "CAR",   "CAT",
 | |
| "CAW",   "COD",  "COG",   "COL",   "CON",   "COO",   "COP",   "COT",
 | |
| "COW",   "COY",  "CRY",   "CUB",   "CUE",   "CUP",   "CUR",   "CUT",
 | |
| "DAB",   "DAD",  "DAM",   "DAN",   "DAR",   "DAY",   "DEE",   "DEL",
 | |
| "DEN",   "DES",  "DEW",   "DID",   "DIE",   "DIG",   "DIN",   "DIP",
 | |
| "DO",    "DOE",  "DOG",   "DON",   "DOT",   "DOW",   "DRY",   "DUB",
 | |
| "DUD",   "DUE",  "DUG",   "DUN",   "EAR",   "EAT",   "ED",    "EEL",
 | |
| "EGG",   "EGO",  "ELI",   "ELK",   "ELM",   "ELY",   "EM",    "END",
 | |
| "EST",   "ETC",  "EVA",   "EVE",   "EWE",   "EYE",   "FAD",   "FAN",
 | |
| "FAR",   "FAT",  "FAY",   "FED",   "FEE",   "FEW",   "FIB",   "FIG",
 | |
| "FIN",   "FIR",  "FIT",   "FLO",   "FLY",   "FOE",   "FOG",   "FOR",
 | |
| "FRY",   "FUM",  "FUN",   "FUR",   "GAB",   "GAD",   "GAG",   "GAL",
 | |
| "GAM",   "GAP",  "GAS",   "GAY",   "GEE",   "GEL",   "GEM",   "GET",
 | |
| "GIG",   "GIL",  "GIN",   "GO",    "GOT",   "GUM",   "GUN",   "GUS",
 | |
| "GUT",   "GUY",  "GYM",   "GYP",   "HA",    "HAD",   "HAL",   "HAM",
 | |
| "HAN",   "HAP",  "HAS",   "HAT",   "HAW",   "HAY",   "HE",    "HEM",
 | |
| "HEN",   "HER",  "HEW",   "HEY",   "HI",    "HID",   "HIM",   "HIP",
 | |
| "HIS",   "HIT",  "HO",    "HOB",   "HOC",   "HOE",   "HOG",   "HOP",
 | |
| "HOT",   "HOW",  "HUB",   "HUE",   "HUG",   "HUH",   "HUM",   "HUT",
 | |
| "I",     "ICY",  "IDA",   "IF",    "IKE",   "ILL",   "INK",   "INN",
 | |
| "IO",    "ION",  "IQ",    "IRA",   "IRE",   "IRK",   "IS",    "IT",
 | |
| "ITS",   "IVY",  "JAB",   "JAG",   "JAM",   "JAN",   "JAR",   "JAW",
 | |
| "JAY",   "JET",  "JIG",   "JIM",   "JO",    "JOB",   "JOE",   "JOG",
 | |
| "JOT",   "JOY",  "JUG",   "JUT",   "KAY",   "KEG",   "KEN",   "KEY",
 | |
| "KID",   "KIM",  "KIN",   "KIT",   "LA",    "LAB",   "LAC",   "LAD",
 | |
| "LAG",   "LAM",  "LAP",   "LAW",   "LAY",   "LEA",   "LED",   "LEE",
 | |
| "LEG",   "LEN",  "LEO",   "LET",   "LEW",   "LID",   "LIE",   "LIN",
 | |
| "LIP",   "LIT",  "LO",    "LOB",   "LOG",   "LOP",   "LOS",   "LOT",
 | |
| "LOU",   "LOW",  "LOY",   "LUG",   "LYE",   "MA",    "MAC",   "MAD",
 | |
| "MAE",   "MAN",  "MAO",   "MAP",   "MAT",   "MAW",   "MAY",   "ME",
 | |
| "MEG",   "MEL",  "MEN",   "MET",   "MEW",   "MID",   "MIN",   "MIT",
 | |
| "MOB",   "MOD",  "MOE",   "MOO",   "MOP",   "MOS",   "MOT",   "MOW",
 | |
| "MUD",   "MUG",  "MUM",   "MY",    "NAB",   "NAG",   "NAN",   "NAP",
 | |
| "NAT",   "NAY",  "NE",    "NED",   "NEE",   "NET",   "NEW",   "NIB",
 | |
| "NIL",   "NIP",  "NIT",   "NO",    "NOB",   "NOD",   "NON",   "NOR",
 | |
| "NOT",   "NOV",  "NOW",   "NU",    "NUN",   "NUT",   "O",     "OAF",
 | |
| "OAK",   "OAR",  "OAT",   "ODD",   "ODE",   "OF",    "OFF",   "OFT",
 | |
| "OH",    "OIL",  "OK",    "OLD",   "ON",    "ONE",   "OR",    "ORB",
 | |
| "ORE",   "ORR",  "OS",    "OTT",   "OUR",   "OUT",   "OVA",   "OW",
 | |
| "OWE",   "OWL",  "OWN",   "OX",    "PA",    "PAD",   "PAL",   "PAM",
 | |
| "PAN",   "PAP",  "PAR",   "PAT",   "PAW",   "PAY",   "PEA",   "PEG",
 | |
| "PEN",   "PEP",  "PER",   "PET",   "PEW",   "PHI",   "PI",    "PIE",
 | |
| "PIN",   "PIT",  "PLY",   "PO",    "POD",   "POE",   "POP",   "POT",
 | |
| "POW",   "PRO",  "PRY",   "PUB",   "PUG",   "PUN",   "PUP",   "PUT",
 | |
| "QUO",   "RAG",  "RAM",   "RAN",   "RAP",   "RAT",   "RAW",   "RAY",
 | |
| "REB",   "RED",  "REP",   "RET",   "RIB",   "RID",   "RIG",   "RIM",
 | |
| "RIO",   "RIP",  "ROB",   "ROD",   "ROE",   "RON",   "ROT",   "ROW",
 | |
| "ROY",   "RUB",  "RUE",   "RUG",   "RUM",   "RUN",   "RYE",   "SAC",
 | |
| "SAD",   "SAG",  "SAL",   "SAM",   "SAN",   "SAP",   "SAT",   "SAW",
 | |
| "SAY",   "SEA",  "SEC",   "SEE",   "SEN",   "SET",   "SEW",   "SHE",
 | |
| "SHY",   "SIN",  "SIP",   "SIR",   "SIS",   "SIT",   "SKI",   "SKY",
 | |
| "SLY",   "SO",   "SOB",   "SOD",   "SON",   "SOP",   "SOW",   "SOY",
 | |
| "SPA",   "SPY",  "SUB",   "SUD",   "SUE",   "SUM",   "SUN",   "SUP",
 | |
| "TAB",   "TAD",  "TAG",   "TAN",   "TAP",   "TAR",   "TEA",   "TED",
 | |
| "TEE",   "TEN",  "THE",   "THY",   "TIC",   "TIE",   "TIM",   "TIN",
 | |
| "TIP",   "TO",   "TOE",   "TOG",   "TOM",   "TON",   "TOO",   "TOP",
 | |
| "TOW",   "TOY",  "TRY",   "TUB",   "TUG",   "TUM",   "TUN",   "TWO",
 | |
| "UN",    "UP",   "US",    "USE",   "VAN",   "VAT",   "VET",   "VIE",
 | |
| "WAD",   "WAG",  "WAR",   "WAS",   "WAY",   "WE",    "WEB",   "WED",
 | |
| "WEE",   "WET",  "WHO",   "WHY",   "WIN",   "WIT",   "WOK",   "WON",
 | |
| "WOO",   "WOW",  "WRY",   "WU",    "YAM",   "YAP",   "YAW",   "YE",
 | |
| "YEA",   "YES",  "YET",   "YOU",   "ABED",  "ABEL",  "ABET",  "ABLE",
 | |
| "ABUT",  "ACHE",  "ACID", "ACME",  "ACRE",  "ACTA",  "ACTS",  "ADAM",
 | |
| "ADDS",  "ADEN",  "AFAR", "AFRO",  "AGEE",  "AHEM",  "AHOY",  "AIDA",
 | |
| "AIDE",  "AIDS",  "AIRY", "AJAR",  "AKIN",  "ALAN",  "ALEC",  "ALGA",
 | |
| "ALIA",  "ALLY",  "ALMA", "ALOE",  "ALSO",  "ALTO",  "ALUM",  "ALVA",
 | |
| "AMEN",  "AMES",  "AMID", "AMMO",  "AMOK",  "AMOS",  "AMRA",  "ANDY",
 | |
| "ANEW",  "ANNA",  "ANNE", "ANTE",  "ANTI",  "AQUA",  "ARAB",  "ARCH",
 | |
| "AREA",  "ARGO",  "ARID", "ARMY",  "ARTS",  "ARTY",  "ASIA",  "ASKS",
 | |
| "ATOM",  "AUNT",  "AURA", "AUTO",  "AVER",  "AVID",  "AVIS",  "AVON",
 | |
| "AVOW",  "AWAY",  "AWRY", "BABE",  "BABY",  "BACH",  "BACK",  "BADE",
 | |
| "BAIL",  "BAIT",  "BAKE", "BALD",  "BALE",  "BALI",  "BALK",  "BALL",
 | |
| "BALM",  "BAND",  "BANE", "BANG",  "BANK",  "BARB",  "BARD",  "BARE",
 | |
| "BARK",  "BARN",  "BARR", "BASE",  "BASH",  "BASK",  "BASS",  "BATE",
 | |
| "BATH",  "BAWD",  "BAWL", "BEAD",  "BEAK",  "BEAM",  "BEAN",  "BEAR",
 | |
| "BEAT",  "BEAU",  "BECK", "BEEF",  "BEEN",  "BEER",  "BEET",  "BELA",
 | |
| "BELL",  "BELT",  "BEND", "BENT",  "BERG",  "BERN",  "BERT",  "BESS",
 | |
| "BEST",  "BETA",  "BETH", "BHOY",  "BIAS",  "BIDE",  "BIEN",  "BILE",
 | |
| "BILK",  "BILL",  "BIND", "BING",  "BIRD",  "BITE",  "BITS",  "BLAB",
 | |
| "BLAT",  "BLED",  "BLEW", "BLOB",  "BLOC",  "BLOT",  "BLOW",  "BLUE",
 | |
| "BLUM",  "BLUR",  "BOAR", "BOAT",  "BOCA",  "BOCK",  "BODE",  "BODY",
 | |
| "BOGY",  "BOHR",  "BOIL", "BOLD",  "BOLO",  "BOLT",  "BOMB",  "BONA",
 | |
| "BOND",  "BONE",  "BONG", "BONN",  "BONY",  "BOOK",  "BOOM",  "BOON",
 | |
| "BOOT",  "BORE",  "BORG", "BORN",  "BOSE",  "BOSS",  "BOTH",  "BOUT",
 | |
| "BOWL",  "BOYD",  "BRAD", "BRAE",  "BRAG",  "BRAN",  "BRAY",  "BRED",
 | |
| "BREW",  "BRIG",  "BRIM", "BROW",  "BUCK",  "BUDD",  "BUFF",  "BULB",
 | |
| "BULK",  "BULL",  "BUNK", "BUNT",  "BUOY",  "BURG",  "BURL",  "BURN",
 | |
| "BURR",  "BURT",  "BURY", "BUSH",  "BUSS",  "BUST",  "BUSY",  "BYTE",
 | |
| "CADY",  "CAFE",  "CAGE", "CAIN",  "CAKE",  "CALF",  "CALL",  "CALM",
 | |
| "CAME",  "CANE",  "CANT", "CARD",  "CARE",  "CARL",  "CARR",  "CART",
 | |
| "CASE",  "CASH",  "CASK", "CAST",  "CAVE",  "CEIL",  "CELL",  "CENT",
 | |
| "CERN",  "CHAD",  "CHAR", "CHAT",  "CHAW",  "CHEF",  "CHEN",  "CHEW",
 | |
| "CHIC",  "CHIN",  "CHOU", "CHOW",  "CHUB",  "CHUG",  "CHUM",  "CITE",
 | |
| "CITY",  "CLAD",  "CLAM", "CLAN",  "CLAW",  "CLAY",  "CLOD",  "CLOG",
 | |
| "CLOT",  "CLUB",  "CLUE", "COAL",  "COAT",  "COCA",  "COCK",  "COCO",
 | |
| "CODA",  "CODE",  "CODY", "COED",  "COIL",  "COIN",  "COKE",  "COLA",
 | |
| "COLD",  "COLT",  "COMA", "COMB",  "COME",  "COOK",  "COOL",  "COON",
 | |
| "COOT",  "CORD",  "CORE", "CORK",  "CORN",  "COST",  "COVE",  "COWL",
 | |
| "CRAB",  "CRAG",  "CRAM", "CRAY",  "CREW",  "CRIB",  "CROW",  "CRUD",
 | |
| "CUBA",  "CUBE",  "CUFF", "CULL",  "CULT",  "CUNY",  "CURB",  "CURD",
 | |
| "CURE",  "CURL",  "CURT", "CUTS",  "DADE",  "DALE",  "DAME",  "DANA",
 | |
| "DANE",  "DANG",  "DANK", "DARE",  "DARK",  "DARN",  "DART",  "DASH",
 | |
| "DATA",  "DATE",  "DAVE", "DAVY",  "DAWN",  "DAYS",  "DEAD",  "DEAF",
 | |
| "DEAL",  "DEAN",  "DEAR", "DEBT",  "DECK",  "DEED",  "DEEM",  "DEER",
 | |
| "DEFT",  "DEFY",  "DELL", "DENT",  "DENY",  "DESK",  "DIAL",  "DICE",
 | |
| "DIED",  "DIET",  "DIME", "DINE",  "DING",  "DINT",  "DIRE",  "DIRT",
 | |
| "DISC",  "DISH",  "DISK", "DIVE",  "DOCK",  "DOES",  "DOLE",  "DOLL",
 | |
| "DOLT",  "DOME",  "DONE", "DOOM",  "DOOR",  "DORA",  "DOSE",  "DOTE",
 | |
| "DOUG",  "DOUR",  "DOVE", "DOWN",  "DRAB",  "DRAG",  "DRAM",  "DRAW",
 | |
| "DREW",  "DRUB",  "DRUG", "DRUM",  "DUAL",  "DUCK",  "DUCT",  "DUEL",
 | |
| "DUET",  "DUKE",  "DULL", "DUMB",  "DUNE",  "DUNK",  "DUSK",  "DUST",
 | |
| "DUTY",  "EACH",  "EARL", "EARN",  "EASE",  "EAST",  "EASY",  "EBEN",
 | |
| "ECHO",  "EDDY",  "EDEN", "EDGE",  "EDGY",  "EDIT",  "EDNA",  "EGAN",
 | |
| "ELAN",  "ELBA",  "ELLA", "ELSE",  "EMIL",  "EMIT",  "EMMA",  "ENDS",
 | |
| "ERIC",  "EROS",  "EVEN", "EVER",  "EVIL",  "EYED",  "FACE",  "FACT",
 | |
| "FADE",  "FAIL",  "FAIN", "FAIR",  "FAKE",  "FALL",  "FAME",  "FANG",
 | |
| "FARM",  "FAST",  "FATE", "FAWN",  "FEAR",  "FEAT",  "FEED",  "FEEL",
 | |
| "FEET",  "FELL",  "FELT", "FEND",  "FERN",  "FEST",  "FEUD",  "FIEF",
 | |
| "FIGS",  "FILE",  "FILL", "FILM",  "FIND",  "FINE",  "FINK",  "FIRE",
 | |
| "FIRM",  "FISH",  "FISK", "FIST",  "FITS",  "FIVE",  "FLAG",  "FLAK",
 | |
| "FLAM",  "FLAT",  "FLAW", "FLEA",  "FLED",  "FLEW",  "FLIT",  "FLOC",
 | |
| "FLOG",  "FLOW",  "FLUB", "FLUE",  "FOAL",  "FOAM",  "FOGY",  "FOIL",
 | |
| "FOLD",  "FOLK",  "FOND", "FONT",  "FOOD",  "FOOL",  "FOOT",  "FORD",
 | |
| "FORE",  "FORK",  "FORM", "FORT",  "FOSS",  "FOUL",  "FOUR",  "FOWL",
 | |
| "FRAU",  "FRAY",  "FRED", "FREE",  "FRET",  "FREY",  "FROG",  "FROM",
 | |
| "FUEL",  "FULL",  "FUME", "FUND",  "FUNK",  "FURY",  "FUSE",  "FUSS",
 | |
| "GAFF",  "GAGE",  "GAIL", "GAIN",  "GAIT",  "GALA",  "GALE",  "GALL",
 | |
| "GALT",  "GAME",  "GANG", "GARB",  "GARY",  "GASH",  "GATE",  "GAUL",
 | |
| "GAUR",  "GAVE",  "GAWK", "GEAR",  "GELD",  "GENE",  "GENT",  "GERM",
 | |
| "GETS",  "GIBE",  "GIFT", "GILD",  "GILL",  "GILT",  "GINA",  "GIRD",
 | |
| "GIRL",  "GIST",  "GIVE", "GLAD",  "GLEE",  "GLEN",  "GLIB",  "GLOB",
 | |
| "GLOM",  "GLOW",  "GLUE", "GLUM",  "GLUT",  "GOAD",  "GOAL",  "GOAT",
 | |
| "GOER",  "GOES",  "GOLD", "GOLF",  "GONE",  "GONG",  "GOOD",  "GOOF",
 | |
| "GORE",  "GORY",  "GOSH", "GOUT",  "GOWN",  "GRAB",  "GRAD",  "GRAY",
 | |
| "GREG",  "GREW",  "GREY", "GRID",  "GRIM",  "GRIN",  "GRIT",  "GROW",
 | |
| "GRUB",  "GULF",  "GULL", "GUNK",  "GURU",  "GUSH",  "GUST",  "GWEN",
 | |
| "GWYN",  "HAAG",  "HAAS", "HACK",  "HAIL",  "HAIR",  "HALE",  "HALF",
 | |
| "HALL",  "HALO",  "HALT", "HAND",  "HANG",  "HANK",  "HANS",  "HARD",
 | |
| "HARK",  "HARM",  "HART", "HASH",  "HAST",  "HATE",  "HATH",  "HAUL",
 | |
| "HAVE",  "HAWK",  "HAYS", "HEAD",  "HEAL",  "HEAR",  "HEAT",  "HEBE",
 | |
| "HECK",  "HEED",  "HEEL", "HEFT",  "HELD",  "HELL",  "HELM",  "HERB",
 | |
| "HERD",  "HERE",  "HERO", "HERS",  "HESS",  "HEWN",  "HICK",  "HIDE",
 | |
| "HIGH",  "HIKE",  "HILL", "HILT",  "HIND",  "HINT",  "HIRE",  "HISS",
 | |
| "HIVE",  "HOBO",  "HOCK", "HOFF",  "HOLD",  "HOLE",  "HOLM",  "HOLT",
 | |
| "HOME",  "HONE",  "HONK", "HOOD",  "HOOF",  "HOOK",  "HOOT",  "HORN",
 | |
| "HOSE",  "HOST",  "HOUR", "HOVE",  "HOWE",  "HOWL",  "HOYT",  "HUCK",
 | |
| "HUED",  "HUFF",  "HUGE", "HUGH",  "HUGO",  "HULK",  "HULL",  "HUNK",
 | |
| "HUNT",  "HURD",  "HURL", "HURT",  "HUSH",  "HYDE",  "HYMN",  "IBIS",
 | |
| "ICON",  "IDEA",  "IDLE", "IFFY",  "INCA",  "INCH",  "INTO",  "IONS",
 | |
| "IOTA",  "IOWA",  "IRIS", "IRMA",  "IRON",  "ISLE",  "ITCH",  "ITEM",
 | |
| "IVAN",  "JACK",  "JADE", "JAIL",  "JAKE",  "JANE",  "JAVA",  "JEAN",
 | |
| "JEFF",  "JERK",  "JESS", "JEST",  "JIBE",  "JILL",  "JILT",  "JIVE",
 | |
| "JOAN",  "JOBS",  "JOCK", "JOEL",  "JOEY",  "JOHN",  "JOIN",  "JOKE",
 | |
| "JOLT",  "JOVE",  "JUDD", "JUDE",  "JUDO",  "JUDY",  "JUJU",  "JUKE",
 | |
| "JULY",  "JUNE",  "JUNK", "JUNO",  "JURY",  "JUST",  "JUTE",  "KAHN",
 | |
| "KALE",  "KANE",  "KANT", "KARL",  "KATE",  "KEEL",  "KEEN",  "KENO",
 | |
| "KENT",  "KERN",  "KERR", "KEYS",  "KICK",  "KILL",  "KIND",  "KING",
 | |
| "KIRK",  "KISS",  "KITE", "KLAN",  "KNEE",  "KNEW",  "KNIT",  "KNOB",
 | |
| "KNOT",  "KNOW",  "KOCH", "KONG",  "KUDO",  "KURD",  "KURT",  "KYLE",
 | |
| "LACE",  "LACK",  "LACY", "LADY",  "LAID",  "LAIN",  "LAIR",  "LAKE",
 | |
| "LAMB",  "LAME",  "LAND", "LANE",  "LANG",  "LARD",  "LARK",  "LASS",
 | |
| "LAST",  "LATE",  "LAUD", "LAVA",  "LAWN",  "LAWS",  "LAYS",  "LEAD",
 | |
| "LEAF",  "LEAK",  "LEAN", "LEAR",  "LEEK",  "LEER",  "LEFT",  "LEND",
 | |
| "LENS",  "LENT",  "LEON", "LESK",  "LESS",  "LEST",  "LETS",  "LIAR",
 | |
| "LICE",  "LICK",  "LIED", "LIEN",  "LIES",  "LIEU",  "LIFE",  "LIFT",
 | |
| "LIKE",  "LILA",  "LILT", "LILY",  "LIMA",  "LIMB",  "LIME",  "LIND",
 | |
| "LINE",  "LINK",  "LINT", "LION",  "LISA",  "LIST",  "LIVE",  "LOAD",
 | |
| "LOAF",  "LOAM",  "LOAN", "LOCK",  "LOFT",  "LOGE",  "LOIS",  "LOLA",
 | |
| "LONE",  "LONG",  "LOOK", "LOON",  "LOOT",  "LORD",  "LORE",  "LOSE",
 | |
| "LOSS",  "LOST",  "LOUD", "LOVE",  "LOWE",  "LUCK",  "LUCY",  "LUGE",
 | |
| "LUKE",  "LULU",  "LUND", "LUNG",  "LURA",  "LURE",  "LURK",  "LUSH",
 | |
| "LUST",  "LYLE",  "LYNN", "LYON",  "LYRA",  "MACE",  "MADE",  "MAGI",
 | |
| "MAID",  "MAIL",  "MAIN", "MAKE",  "MALE",  "MALI",  "MALL",  "MALT",
 | |
| "MANA",  "MANN",  "MANY", "MARC",  "MARE",  "MARK",  "MARS",  "MART",
 | |
| "MARY",  "MASH",  "MASK", "MASS",  "MAST",  "MATE",  "MATH",  "MAUL",
 | |
| "MAYO",  "MEAD",  "MEAL", "MEAN",  "MEAT",  "MEEK",  "MEET",  "MELD",
 | |
| "MELT",  "MEMO",  "MEND", "MENU",  "MERT",  "MESH",  "MESS",  "MICE",
 | |
| "MIKE",  "MILD",  "MILE", "MILK",  "MILL",  "MILT",  "MIMI",  "MIND",
 | |
| "MINE",  "MINI",  "MINK", "MINT",  "MIRE",  "MISS",  "MIST",  "MITE",
 | |
| "MITT",  "MOAN",  "MOAT", "MOCK",  "MODE",  "MOLD",  "MOLE",  "MOLL",
 | |
| "MOLT",  "MONA",  "MONK", "MONT",  "MOOD",  "MOON",  "MOOR",  "MOOT",
 | |
| "MORE",  "MORN",  "MORT", "MOSS",  "MOST",  "MOTH",  "MOVE",  "MUCH",
 | |
| "MUCK",  "MUDD",  "MUFF", "MULE",  "MULL",  "MURK",  "MUSH",  "MUST",
 | |
| "MUTE",  "MUTT",  "MYRA", "MYTH",  "NAGY",  "NAIL",  "NAIR",  "NAME",
 | |
| "NARY",  "NASH",  "NAVE", "NAVY",  "NEAL",  "NEAR",  "NEAT",  "NECK",
 | |
| "NEED",  "NEIL",  "NELL", "NEON",  "NERO",  "NESS",  "NEST",  "NEWS",
 | |
| "NEWT",  "NIBS",  "NICE", "NICK",  "NILE",  "NINA",  "NINE",  "NOAH",
 | |
| "NODE",  "NOEL",  "NOLL", "NONE",  "NOOK",  "NOON",  "NORM",  "NOSE",
 | |
| "NOTE",  "NOUN",  "NOVA", "NUDE",  "NULL",  "NUMB",  "OATH",  "OBEY",
 | |
| "OBOE",  "ODIN",  "OHIO", "OILY",  "OINT",  "OKAY",  "OLAF",  "OLDY",
 | |
| "OLGA",  "OLIN",  "OMAN", "OMEN",  "OMIT",  "ONCE",  "ONES",  "ONLY",
 | |
| "ONTO",  "ONUS",  "ORAL", "ORGY",  "OSLO",  "OTIS",  "OTTO",  "OUCH",
 | |
| "OUST",  "OUTS",  "OVAL", "OVEN",  "OVER",  "OWLY",  "OWNS",  "QUAD",
 | |
| "QUIT",  "QUOD",  "RACE", "RACK",  "RACY",  "RAFT",  "RAGE",  "RAID",
 | |
| "RAIL",  "RAIN",  "RAKE", "RANK",  "RANT",  "RARE",  "RASH",  "RATE",
 | |
| "RAVE",  "RAYS",  "READ", "REAL",  "REAM",  "REAR",  "RECK",  "REED",
 | |
| "REEF",  "REEK",  "REEL", "REID",  "REIN",  "RENA",  "REND",  "RENT",
 | |
| "REST",  "RICE",  "RICH", "RICK",  "RIDE",  "RIFT",  "RILL",  "RIME",
 | |
| "RING",  "RINK",  "RISE", "RISK",  "RITE",  "ROAD",  "ROAM",  "ROAR",
 | |
| "ROBE",  "ROCK",  "RODE", "ROIL",  "ROLL",  "ROME",  "ROOD",  "ROOF",
 | |
| "ROOK",  "ROOM",  "ROOT", "ROSA",  "ROSE",  "ROSS",  "ROSY",  "ROTH",
 | |
| "ROUT",  "ROVE",  "ROWE", "ROWS",  "RUBE",  "RUBY",  "RUDE",  "RUDY",
 | |
| "RUIN",  "RULE",  "RUNG", "RUNS",  "RUNT",  "RUSE",  "RUSH",  "RUSK",
 | |
| "RUSS",  "RUST",  "RUTH", "SACK",  "SAFE",  "SAGE",  "SAID",  "SAIL",
 | |
| "SALE",  "SALK",  "SALT", "SAME",  "SAND",  "SANE",  "SANG",  "SANK",
 | |
| "SARA",  "SAUL",  "SAVE", "SAYS",  "SCAN",  "SCAR",  "SCAT",  "SCOT",
 | |
| "SEAL",  "SEAM",  "SEAR", "SEAT",  "SEED",  "SEEK",  "SEEM",  "SEEN",
 | |
| "SEES",  "SELF",  "SELL", "SEND",  "SENT",  "SETS",  "SEWN",  "SHAG",
 | |
| "SHAM",  "SHAW",  "SHAY", "SHED",  "SHIM",  "SHIN",  "SHOD",  "SHOE",
 | |
| "SHOT",  "SHOW",  "SHUN", "SHUT",  "SICK",  "SIDE",  "SIFT",  "SIGH",
 | |
| "SIGN",  "SILK",  "SILL", "SILO",  "SILT",  "SINE",  "SING",  "SINK",
 | |
| "SIRE",  "SITE",  "SITS", "SITU",  "SKAT",  "SKEW",  "SKID",  "SKIM",
 | |
| "SKIN",  "SKIT",  "SLAB", "SLAM",  "SLAT",  "SLAY",  "SLED",  "SLEW",
 | |
| "SLID",  "SLIM",  "SLIT", "SLOB",  "SLOG",  "SLOT",  "SLOW",  "SLUG",
 | |
| "SLUM",  "SLUR",  "SMOG", "SMUG",  "SNAG",  "SNOB",  "SNOW",  "SNUB",
 | |
| "SNUG",  "SOAK",  "SOAR", "SOCK",  "SODA",  "SOFA",  "SOFT",  "SOIL",
 | |
| "SOLD",  "SOME",  "SONG", "SOON",  "SOOT",  "SORE",  "SORT",  "SOUL",
 | |
| "SOUR",  "SOWN",  "STAB", "STAG",  "STAN",  "STAR",  "STAY",  "STEM",
 | |
| "STEW",  "STIR",  "STOW", "STUB",  "STUN",  "SUCH",  "SUDS",  "SUIT",
 | |
| "SULK",  "SUMS",  "SUNG", "SUNK",  "SURE",  "SURF",  "SWAB",  "SWAG",
 | |
| "SWAM",  "SWAN",  "SWAT", "SWAY",  "SWIM",  "SWUM",  "TACK",  "TACT",
 | |
| "TAIL",  "TAKE",  "TALE", "TALK",  "TALL",  "TANK",  "TASK",  "TATE",
 | |
| "TAUT",  "TEAL",  "TEAM", "TEAR",  "TECH",  "TEEM",  "TEEN",  "TEET",
 | |
| "TELL",  "TEND",  "TENT", "TERM",  "TERN",  "TESS",  "TEST",  "THAN",
 | |
| "THAT",  "THEE",  "THEM", "THEN",  "THEY",  "THIN",  "THIS",  "THUD",
 | |
| "THUG",  "TICK",  "TIDE", "TIDY",  "TIED",  "TIER",  "TILE",  "TILL",
 | |
| "TILT",  "TIME",  "TINA", "TINE",  "TINT",  "TINY",  "TIRE",  "TOAD",
 | |
| "TOGO",  "TOIL",  "TOLD", "TOLL",  "TONE",  "TONG",  "TONY",  "TOOK",
 | |
| "TOOL",  "TOOT",  "TORE", "TORN",  "TOTE",  "TOUR",  "TOUT",  "TOWN",
 | |
| "TRAG",  "TRAM",  "TRAY", "TREE",  "TREK",  "TRIG",  "TRIM",  "TRIO",
 | |
| "TROD",  "TROT",  "TROY", "TRUE",  "TUBA",  "TUBE",  "TUCK",  "TUFT",
 | |
| "TUNA",  "TUNE",  "TUNG", "TURF",  "TURN",  "TUSK",  "TWIG",  "TWIN",
 | |
| "TWIT",  "ULAN",  "UNIT", "URGE",  "USED",  "USER",  "USES",  "UTAH",
 | |
| "VAIL",  "VAIN",  "VALE", "VARY",  "VASE",  "VAST",  "VEAL",  "VEDA",
 | |
| "VEIL",  "VEIN",  "VEND", "VENT",  "VERB",  "VERY",  "VETO",  "VICE",
 | |
| "VIEW",  "VINE",  "VISE", "VOID",  "VOLT",  "VOTE",  "WACK",  "WADE",
 | |
| "WAGE",  "WAIL",  "WAIT", "WAKE",  "WALE",  "WALK",  "WALL",  "WALT",
 | |
| "WAND",  "WANE",  "WANG", "WANT",  "WARD",  "WARM",  "WARN",  "WART",
 | |
| "WASH",  "WAST",  "WATS", "WATT",  "WAVE",  "WAVY",  "WAYS",  "WEAK",
 | |
| "WEAL",  "WEAN",  "WEAR", "WEED",  "WEEK",  "WEIR",  "WELD",  "WELL",
 | |
| "WELT",  "WENT",  "WERE", "WERT",  "WEST",  "WHAM",  "WHAT",  "WHEE",
 | |
| "WHEN",  "WHET",  "WHOA", "WHOM",  "WICK",  "WIFE",  "WILD",  "WILL",
 | |
| "WIND",  "WINE",  "WING", "WINK",  "WINO",  "WIRE",  "WISE",  "WISH",
 | |
| "WITH",  "WOLF",  "WONT", "WOOD",  "WOOL",  "WORD",  "WORE",  "WORK",
 | |
| "WORM",  "WORN",  "WOVE", "WRIT",  "WYNN",  "YALE",  "YANG",  "YANK",
 | |
| "YARD",  "YARN",  "YAWL", "YAWN",  "YEAH",  "YEAR",  "YELL",  "YOGA",
 | |
| "YOKE"                         };
 | |
| 
 | |
| const struct e inv_std_dict[2048] = {
 | |
| {"A", 0},
 | |
| {"ABE", 1},
 | |
| {"ABED", 571},
 | |
| {"ABEL", 572},
 | |
| {"ABET", 573},
 | |
| {"ABLE", 574},
 | |
| {"ABUT", 575},
 | |
| {"ACE", 2},
 | |
| {"ACHE", 576},
 | |
| {"ACID", 577},
 | |
| {"ACME", 578},
 | |
| {"ACRE", 579},
 | |
| {"ACT", 3},
 | |
| {"ACTA", 580},
 | |
| {"ACTS", 581},
 | |
| {"AD", 4},
 | |
| {"ADA", 5},
 | |
| {"ADAM", 582},
 | |
| {"ADD", 6},
 | |
| {"ADDS", 583},
 | |
| {"ADEN", 584},
 | |
| {"AFAR", 585},
 | |
| {"AFRO", 586},
 | |
| {"AGEE", 587},
 | |
| {"AGO", 7},
 | |
| {"AHEM", 588},
 | |
| {"AHOY", 589},
 | |
| {"AID", 8},
 | |
| {"AIDA", 590},
 | |
| {"AIDE", 591},
 | |
| {"AIDS", 592},
 | |
| {"AIM", 9},
 | |
| {"AIR", 10},
 | |
| {"AIRY", 593},
 | |
| {"AJAR", 594},
 | |
| {"AKIN", 595},
 | |
| {"ALAN", 596},
 | |
| {"ALEC", 597},
 | |
| {"ALGA", 598},
 | |
| {"ALIA", 599},
 | |
| {"ALL", 11},
 | |
| {"ALLY", 600},
 | |
| {"ALMA", 601},
 | |
| {"ALOE", 602},
 | |
| {"ALP", 12},
 | |
| {"ALSO", 603},
 | |
| {"ALTO", 604},
 | |
| {"ALUM", 605},
 | |
| {"ALVA", 606},
 | |
| {"AM", 13},
 | |
| {"AMEN", 607},
 | |
| {"AMES", 608},
 | |
| {"AMID", 609},
 | |
| {"AMMO", 610},
 | |
| {"AMOK", 611},
 | |
| {"AMOS", 612},
 | |
| {"AMRA", 613},
 | |
| {"AMY", 14},
 | |
| {"AN", 15},
 | |
| {"ANA", 16},
 | |
| {"AND", 17},
 | |
| {"ANDY", 614},
 | |
| {"ANEW", 615},
 | |
| {"ANN", 18},
 | |
| {"ANNA", 616},
 | |
| {"ANNE", 617},
 | |
| {"ANT", 19},
 | |
| {"ANTE", 618},
 | |
| {"ANTI", 619},
 | |
| {"ANY", 20},
 | |
| {"APE", 21},
 | |
| {"APS", 22},
 | |
| {"APT", 23},
 | |
| {"AQUA", 620},
 | |
| {"ARAB", 621},
 | |
| {"ARC", 24},
 | |
| {"ARCH", 622},
 | |
| {"ARE", 25},
 | |
| {"AREA", 623},
 | |
| {"ARGO", 624},
 | |
| {"ARID", 625},
 | |
| {"ARK", 26},
 | |
| {"ARM", 27},
 | |
| {"ARMY", 626},
 | |
| {"ART", 28},
 | |
| {"ARTS", 627},
 | |
| {"ARTY", 628},
 | |
| {"AS", 29},
 | |
| {"ASH", 30},
 | |
| {"ASIA", 629},
 | |
| {"ASK", 31},
 | |
| {"ASKS", 630},
 | |
| {"AT", 32},
 | |
| {"ATE", 33},
 | |
| {"ATOM", 631},
 | |
| {"AUG", 34},
 | |
| {"AUK", 35},
 | |
| {"AUNT", 632},
 | |
| {"AURA", 633},
 | |
| {"AUTO", 634},
 | |
| {"AVE", 36},
 | |
| {"AVER", 635},
 | |
| {"AVID", 636},
 | |
| {"AVIS", 637},
 | |
| {"AVON", 638},
 | |
| {"AVOW", 639},
 | |
| {"AWAY", 640},
 | |
| {"AWE", 37},
 | |
| {"AWK", 38},
 | |
| {"AWL", 39},
 | |
| {"AWN", 40},
 | |
| {"AWRY", 641},
 | |
| {"AX", 41},
 | |
| {"AYE", 42},
 | |
| {"BABE", 642},
 | |
| {"BABY", 643},
 | |
| {"BACH", 644},
 | |
| {"BACK", 645},
 | |
| {"BAD", 43},
 | |
| {"BADE", 646},
 | |
| {"BAG", 44},
 | |
| {"BAH", 45},
 | |
| {"BAIL", 647},
 | |
| {"BAIT", 648},
 | |
| {"BAKE", 649},
 | |
| {"BALD", 650},
 | |
| {"BALE", 651},
 | |
| {"BALI", 652},
 | |
| {"BALK", 653},
 | |
| {"BALL", 654},
 | |
| {"BALM", 655},
 | |
| {"BAM", 46},
 | |
| {"BAN", 47},
 | |
| {"BAND", 656},
 | |
| {"BANE", 657},
 | |
| {"BANG", 658},
 | |
| {"BANK", 659},
 | |
| {"BAR", 48},
 | |
| {"BARB", 660},
 | |
| {"BARD", 661},
 | |
| {"BARE", 662},
 | |
| {"BARK", 663},
 | |
| {"BARN", 664},
 | |
| {"BARR", 665},
 | |
| {"BASE", 666},
 | |
| {"BASH", 667},
 | |
| {"BASK", 668},
 | |
| {"BASS", 669},
 | |
| {"BAT", 49},
 | |
| {"BATE", 670},
 | |
| {"BATH", 671},
 | |
| {"BAWD", 672},
 | |
| {"BAWL", 673},
 | |
| {"BAY", 50},
 | |
| {"BE", 51},
 | |
| {"BEAD", 674},
 | |
| {"BEAK", 675},
 | |
| {"BEAM", 676},
 | |
| {"BEAN", 677},
 | |
| {"BEAR", 678},
 | |
| {"BEAT", 679},
 | |
| {"BEAU", 680},
 | |
| {"BECK", 681},
 | |
| {"BED", 52},
 | |
| {"BEE", 53},
 | |
| {"BEEF", 682},
 | |
| {"BEEN", 683},
 | |
| {"BEER", 684},
 | |
| {"BEET", 685},
 | |
| {"BEG", 54},
 | |
| {"BELA", 686},
 | |
| {"BELL", 687},
 | |
| {"BELT", 688},
 | |
| {"BEN", 55},
 | |
| {"BEND", 689},
 | |
| {"BENT", 690},
 | |
| {"BERG", 691},
 | |
| {"BERN", 692},
 | |
| {"BERT", 693},
 | |
| {"BESS", 694},
 | |
| {"BEST", 695},
 | |
| {"BET", 56},
 | |
| {"BETA", 696},
 | |
| {"BETH", 697},
 | |
| {"BEY", 57},
 | |
| {"BHOY", 698},
 | |
| {"BIAS", 699},
 | |
| {"BIB", 58},
 | |
| {"BID", 59},
 | |
| {"BIDE", 700},
 | |
| {"BIEN", 701},
 | |
| {"BIG", 60},
 | |
| {"BILE", 702},
 | |
| {"BILK", 703},
 | |
| {"BILL", 704},
 | |
| {"BIN", 61},
 | |
| {"BIND", 705},
 | |
| {"BING", 706},
 | |
| {"BIRD", 707},
 | |
| {"BIT", 62},
 | |
| {"BITE", 708},
 | |
| {"BITS", 709},
 | |
| {"BLAB", 710},
 | |
| {"BLAT", 711},
 | |
| {"BLED", 712},
 | |
| {"BLEW", 713},
 | |
| {"BLOB", 714},
 | |
| {"BLOC", 715},
 | |
| {"BLOT", 716},
 | |
| {"BLOW", 717},
 | |
| {"BLUE", 718},
 | |
| {"BLUM", 719},
 | |
| {"BLUR", 720},
 | |
| {"BOAR", 721},
 | |
| {"BOAT", 722},
 | |
| {"BOB", 63},
 | |
| {"BOCA", 723},
 | |
| {"BOCK", 724},
 | |
| {"BODE", 725},
 | |
| {"BODY", 726},
 | |
| {"BOG", 64},
 | |
| {"BOGY", 727},
 | |
| {"BOHR", 728},
 | |
| {"BOIL", 729},
 | |
| {"BOLD", 730},
 | |
| {"BOLO", 731},
 | |
| {"BOLT", 732},
 | |
| {"BOMB", 733},
 | |
| {"BON", 65},
 | |
| {"BONA", 734},
 | |
| {"BOND", 735},
 | |
| {"BONE", 736},
 | |
| {"BONG", 737},
 | |
| {"BONN", 738},
 | |
| {"BONY", 739},
 | |
| {"BOO", 66},
 | |
| {"BOOK", 740},
 | |
| {"BOOM", 741},
 | |
| {"BOON", 742},
 | |
| {"BOOT", 743},
 | |
| {"BOP", 67},
 | |
| {"BORE", 744},
 | |
| {"BORG", 745},
 | |
| {"BORN", 746},
 | |
| {"BOSE", 747},
 | |
| {"BOSS", 748},
 | |
| {"BOTH", 749},
 | |
| {"BOUT", 750},
 | |
| {"BOW", 68},
 | |
| {"BOWL", 751},
 | |
| {"BOY", 69},
 | |
| {"BOYD", 752},
 | |
| {"BRAD", 753},
 | |
| {"BRAE", 754},
 | |
| {"BRAG", 755},
 | |
| {"BRAN", 756},
 | |
| {"BRAY", 757},
 | |
| {"BRED", 758},
 | |
| {"BREW", 759},
 | |
| {"BRIG", 760},
 | |
| {"BRIM", 761},
 | |
| {"BROW", 762},
 | |
| {"BUB", 70},
 | |
| {"BUCK", 763},
 | |
| {"BUD", 71},
 | |
| {"BUDD", 764},
 | |
| {"BUFF", 765},
 | |
| {"BUG", 72},
 | |
| {"BULB", 766},
 | |
| {"BULK", 767},
 | |
| {"BULL", 768},
 | |
| {"BUM", 73},
 | |
| {"BUN", 74},
 | |
| {"BUNK", 769},
 | |
| {"BUNT", 770},
 | |
| {"BUOY", 771},
 | |
| {"BURG", 772},
 | |
| {"BURL", 773},
 | |
| {"BURN", 774},
 | |
| {"BURR", 775},
 | |
| {"BURT", 776},
 | |
| {"BURY", 777},
 | |
| {"BUS", 75},
 | |
| {"BUSH", 778},
 | |
| {"BUSS", 779},
 | |
| {"BUST", 780},
 | |
| {"BUSY", 781},
 | |
| {"BUT", 76},
 | |
| {"BUY", 77},
 | |
| {"BY", 78},
 | |
| {"BYE", 79},
 | |
| {"BYTE", 782},
 | |
| {"CAB", 80},
 | |
| {"CADY", 783},
 | |
| {"CAFE", 784},
 | |
| {"CAGE", 785},
 | |
| {"CAIN", 786},
 | |
| {"CAKE", 787},
 | |
| {"CAL", 81},
 | |
| {"CALF", 788},
 | |
| {"CALL", 789},
 | |
| {"CALM", 790},
 | |
| {"CAM", 82},
 | |
| {"CAME", 791},
 | |
| {"CAN", 83},
 | |
| {"CANE", 792},
 | |
| {"CANT", 793},
 | |
| {"CAP", 84},
 | |
| {"CAR", 85},
 | |
| {"CARD", 794},
 | |
| {"CARE", 795},
 | |
| {"CARL", 796},
 | |
| {"CARR", 797},
 | |
| {"CART", 798},
 | |
| {"CASE", 799},
 | |
| {"CASH", 800},
 | |
| {"CASK", 801},
 | |
| {"CAST", 802},
 | |
| {"CAT", 86},
 | |
| {"CAVE", 803},
 | |
| {"CAW", 87},
 | |
| {"CEIL", 804},
 | |
| {"CELL", 805},
 | |
| {"CENT", 806},
 | |
| {"CERN", 807},
 | |
| {"CHAD", 808},
 | |
| {"CHAR", 809},
 | |
| {"CHAT", 810},
 | |
| {"CHAW", 811},
 | |
| {"CHEF", 812},
 | |
| {"CHEN", 813},
 | |
| {"CHEW", 814},
 | |
| {"CHIC", 815},
 | |
| {"CHIN", 816},
 | |
| {"CHOU", 817},
 | |
| {"CHOW", 818},
 | |
| {"CHUB", 819},
 | |
| {"CHUG", 820},
 | |
| {"CHUM", 821},
 | |
| {"CITE", 822},
 | |
| {"CITY", 823},
 | |
| {"CLAD", 824},
 | |
| {"CLAM", 825},
 | |
| {"CLAN", 826},
 | |
| {"CLAW", 827},
 | |
| {"CLAY", 828},
 | |
| {"CLOD", 829},
 | |
| {"CLOG", 830},
 | |
| {"CLOT", 831},
 | |
| {"CLUB", 832},
 | |
| {"CLUE", 833},
 | |
| {"COAL", 834},
 | |
| {"COAT", 835},
 | |
| {"COCA", 836},
 | |
| {"COCK", 837},
 | |
| {"COCO", 838},
 | |
| {"COD", 88},
 | |
| {"CODA", 839},
 | |
| {"CODE", 840},
 | |
| {"CODY", 841},
 | |
| {"COED", 842},
 | |
| {"COG", 89},
 | |
| {"COIL", 843},
 | |
| {"COIN", 844},
 | |
| {"COKE", 845},
 | |
| {"COL", 90},
 | |
| {"COLA", 846},
 | |
| {"COLD", 847},
 | |
| {"COLT", 848},
 | |
| {"COMA", 849},
 | |
| {"COMB", 850},
 | |
| {"COME", 851},
 | |
| {"CON", 91},
 | |
| {"COO", 92},
 | |
| {"COOK", 852},
 | |
| {"COOL", 853},
 | |
| {"COON", 854},
 | |
| {"COOT", 855},
 | |
| {"COP", 93},
 | |
| {"CORD", 856},
 | |
| {"CORE", 857},
 | |
| {"CORK", 858},
 | |
| {"CORN", 859},
 | |
| {"COST", 860},
 | |
| {"COT", 94},
 | |
| {"COVE", 861},
 | |
| {"COW", 95},
 | |
| {"COWL", 862},
 | |
| {"COY", 96},
 | |
| {"CRAB", 863},
 | |
| {"CRAG", 864},
 | |
| {"CRAM", 865},
 | |
| {"CRAY", 866},
 | |
| {"CREW", 867},
 | |
| {"CRIB", 868},
 | |
| {"CROW", 869},
 | |
| {"CRUD", 870},
 | |
| {"CRY", 97},
 | |
| {"CUB", 98},
 | |
| {"CUBA", 871},
 | |
| {"CUBE", 872},
 | |
| {"CUE", 99},
 | |
| {"CUFF", 873},
 | |
| {"CULL", 874},
 | |
| {"CULT", 875},
 | |
| {"CUNY", 876},
 | |
| {"CUP", 100},
 | |
| {"CUR", 101},
 | |
| {"CURB", 877},
 | |
| {"CURD", 878},
 | |
| {"CURE", 879},
 | |
| {"CURL", 880},
 | |
| {"CURT", 881},
 | |
| {"CUT", 102},
 | |
| {"CUTS", 882},
 | |
| {"DAB", 103},
 | |
| {"DAD", 104},
 | |
| {"DADE", 883},
 | |
| {"DALE", 884},
 | |
| {"DAM", 105},
 | |
| {"DAME", 885},
 | |
| {"DAN", 106},
 | |
| {"DANA", 886},
 | |
| {"DANE", 887},
 | |
| {"DANG", 888},
 | |
| {"DANK", 889},
 | |
| {"DAR", 107},
 | |
| {"DARE", 890},
 | |
| {"DARK", 891},
 | |
| {"DARN", 892},
 | |
| {"DART", 893},
 | |
| {"DASH", 894},
 | |
| {"DATA", 895},
 | |
| {"DATE", 896},
 | |
| {"DAVE", 897},
 | |
| {"DAVY", 898},
 | |
| {"DAWN", 899},
 | |
| {"DAY", 108},
 | |
| {"DAYS", 900},
 | |
| {"DEAD", 901},
 | |
| {"DEAF", 902},
 | |
| {"DEAL", 903},
 | |
| {"DEAN", 904},
 | |
| {"DEAR", 905},
 | |
| {"DEBT", 906},
 | |
| {"DECK", 907},
 | |
| {"DEE", 109},
 | |
| {"DEED", 908},
 | |
| {"DEEM", 909},
 | |
| {"DEER", 910},
 | |
| {"DEFT", 911},
 | |
| {"DEFY", 912},
 | |
| {"DEL", 110},
 | |
| {"DELL", 913},
 | |
| {"DEN", 111},
 | |
| {"DENT", 914},
 | |
| {"DENY", 915},
 | |
| {"DES", 112},
 | |
| {"DESK", 916},
 | |
| {"DEW", 113},
 | |
| {"DIAL", 917},
 | |
| {"DICE", 918},
 | |
| {"DID", 114},
 | |
| {"DIE", 115},
 | |
| {"DIED", 919},
 | |
| {"DIET", 920},
 | |
| {"DIG", 116},
 | |
| {"DIME", 921},
 | |
| {"DIN", 117},
 | |
| {"DINE", 922},
 | |
| {"DING", 923},
 | |
| {"DINT", 924},
 | |
| {"DIP", 118},
 | |
| {"DIRE", 925},
 | |
| {"DIRT", 926},
 | |
| {"DISC", 927},
 | |
| {"DISH", 928},
 | |
| {"DISK", 929},
 | |
| {"DIVE", 930},
 | |
| {"DO", 119},
 | |
| {"DOCK", 931},
 | |
| {"DOE", 120},
 | |
| {"DOES", 932},
 | |
| {"DOG", 121},
 | |
| {"DOLE", 933},
 | |
| {"DOLL", 934},
 | |
| {"DOLT", 935},
 | |
| {"DOME", 936},
 | |
| {"DON", 122},
 | |
| {"DONE", 937},
 | |
| {"DOOM", 938},
 | |
| {"DOOR", 939},
 | |
| {"DORA", 940},
 | |
| {"DOSE", 941},
 | |
| {"DOT", 123},
 | |
| {"DOTE", 942},
 | |
| {"DOUG", 943},
 | |
| {"DOUR", 944},
 | |
| {"DOVE", 945},
 | |
| {"DOW", 124},
 | |
| {"DOWN", 946},
 | |
| {"DRAB", 947},
 | |
| {"DRAG", 948},
 | |
| {"DRAM", 949},
 | |
| {"DRAW", 950},
 | |
| {"DREW", 951},
 | |
| {"DRUB", 952},
 | |
| {"DRUG", 953},
 | |
| {"DRUM", 954},
 | |
| {"DRY", 125},
 | |
| {"DUAL", 955},
 | |
| {"DUB", 126},
 | |
| {"DUCK", 956},
 | |
| {"DUCT", 957},
 | |
| {"DUD", 127},
 | |
| {"DUE", 128},
 | |
| {"DUEL", 958},
 | |
| {"DUET", 959},
 | |
| {"DUG", 129},
 | |
| {"DUKE", 960},
 | |
| {"DULL", 961},
 | |
| {"DUMB", 962},
 | |
| {"DUN", 130},
 | |
| {"DUNE", 963},
 | |
| {"DUNK", 964},
 | |
| {"DUSK", 965},
 | |
| {"DUST", 966},
 | |
| {"DUTY", 967},
 | |
| {"EACH", 968},
 | |
| {"EAR", 131},
 | |
| {"EARL", 969},
 | |
| {"EARN", 970},
 | |
| {"EASE", 971},
 | |
| {"EAST", 972},
 | |
| {"EASY", 973},
 | |
| {"EAT", 132},
 | |
| {"EBEN", 974},
 | |
| {"ECHO", 975},
 | |
| {"ED", 133},
 | |
| {"EDDY", 976},
 | |
| {"EDEN", 977},
 | |
| {"EDGE", 978},
 | |
| {"EDGY", 979},
 | |
| {"EDIT", 980},
 | |
| {"EDNA", 981},
 | |
| {"EEL", 134},
 | |
| {"EGAN", 982},
 | |
| {"EGG", 135},
 | |
| {"EGO", 136},
 | |
| {"ELAN", 983},
 | |
| {"ELBA", 984},
 | |
| {"ELI", 137},
 | |
| {"ELK", 138},
 | |
| {"ELLA", 985},
 | |
| {"ELM", 139},
 | |
| {"ELSE", 986},
 | |
| {"ELY", 140},
 | |
| {"EM", 141},
 | |
| {"EMIL", 987},
 | |
| {"EMIT", 988},
 | |
| {"EMMA", 989},
 | |
| {"END", 142},
 | |
| {"ENDS", 990},
 | |
| {"ERIC", 991},
 | |
| {"EROS", 992},
 | |
| {"EST", 143},
 | |
| {"ETC", 144},
 | |
| {"EVA", 145},
 | |
| {"EVE", 146},
 | |
| {"EVEN", 993},
 | |
| {"EVER", 994},
 | |
| {"EVIL", 995},
 | |
| {"EWE", 147},
 | |
| {"EYE", 148},
 | |
| {"EYED", 996},
 | |
| {"FACE", 997},
 | |
| {"FACT", 998},
 | |
| {"FAD", 149},
 | |
| {"FADE", 999},
 | |
| {"FAIL", 1000},
 | |
| {"FAIN", 1001},
 | |
| {"FAIR", 1002},
 | |
| {"FAKE", 1003},
 | |
| {"FALL", 1004},
 | |
| {"FAME", 1005},
 | |
| {"FAN", 150},
 | |
| {"FANG", 1006},
 | |
| {"FAR", 151},
 | |
| {"FARM", 1007},
 | |
| {"FAST", 1008},
 | |
| {"FAT", 152},
 | |
| {"FATE", 1009},
 | |
| {"FAWN", 1010},
 | |
| {"FAY", 153},
 | |
| {"FEAR", 1011},
 | |
| {"FEAT", 1012},
 | |
| {"FED", 154},
 | |
| {"FEE", 155},
 | |
| {"FEED", 1013},
 | |
| {"FEEL", 1014},
 | |
| {"FEET", 1015},
 | |
| {"FELL", 1016},
 | |
| {"FELT", 1017},
 | |
| {"FEND", 1018},
 | |
| {"FERN", 1019},
 | |
| {"FEST", 1020},
 | |
| {"FEUD", 1021},
 | |
| {"FEW", 156},
 | |
| {"FIB", 157},
 | |
| {"FIEF", 1022},
 | |
| {"FIG", 158},
 | |
| {"FIGS", 1023},
 | |
| {"FILE", 1024},
 | |
| {"FILL", 1025},
 | |
| {"FILM", 1026},
 | |
| {"FIN", 159},
 | |
| {"FIND", 1027},
 | |
| {"FINE", 1028},
 | |
| {"FINK", 1029},
 | |
| {"FIR", 160},
 | |
| {"FIRE", 1030},
 | |
| {"FIRM", 1031},
 | |
| {"FISH", 1032},
 | |
| {"FISK", 1033},
 | |
| {"FIST", 1034},
 | |
| {"FIT", 161},
 | |
| {"FITS", 1035},
 | |
| {"FIVE", 1036},
 | |
| {"FLAG", 1037},
 | |
| {"FLAK", 1038},
 | |
| {"FLAM", 1039},
 | |
| {"FLAT", 1040},
 | |
| {"FLAW", 1041},
 | |
| {"FLEA", 1042},
 | |
| {"FLED", 1043},
 | |
| {"FLEW", 1044},
 | |
| {"FLIT", 1045},
 | |
| {"FLO", 162},
 | |
| {"FLOC", 1046},
 | |
| {"FLOG", 1047},
 | |
| {"FLOW", 1048},
 | |
| {"FLUB", 1049},
 | |
| {"FLUE", 1050},
 | |
| {"FLY", 163},
 | |
| {"FOAL", 1051},
 | |
| {"FOAM", 1052},
 | |
| {"FOE", 164},
 | |
| {"FOG", 165},
 | |
| {"FOGY", 1053},
 | |
| {"FOIL", 1054},
 | |
| {"FOLD", 1055},
 | |
| {"FOLK", 1056},
 | |
| {"FOND", 1057},
 | |
| {"FONT", 1058},
 | |
| {"FOOD", 1059},
 | |
| {"FOOL", 1060},
 | |
| {"FOOT", 1061},
 | |
| {"FOR", 166},
 | |
| {"FORD", 1062},
 | |
| {"FORE", 1063},
 | |
| {"FORK", 1064},
 | |
| {"FORM", 1065},
 | |
| {"FORT", 1066},
 | |
| {"FOSS", 1067},
 | |
| {"FOUL", 1068},
 | |
| {"FOUR", 1069},
 | |
| {"FOWL", 1070},
 | |
| {"FRAU", 1071},
 | |
| {"FRAY", 1072},
 | |
| {"FRED", 1073},
 | |
| {"FREE", 1074},
 | |
| {"FRET", 1075},
 | |
| {"FREY", 1076},
 | |
| {"FROG", 1077},
 | |
| {"FROM", 1078},
 | |
| {"FRY", 167},
 | |
| {"FUEL", 1079},
 | |
| {"FULL", 1080},
 | |
| {"FUM", 168},
 | |
| {"FUME", 1081},
 | |
| {"FUN", 169},
 | |
| {"FUND", 1082},
 | |
| {"FUNK", 1083},
 | |
| {"FUR", 170},
 | |
| {"FURY", 1084},
 | |
| {"FUSE", 1085},
 | |
| {"FUSS", 1086},
 | |
| {"GAB", 171},
 | |
| {"GAD", 172},
 | |
| {"GAFF", 1087},
 | |
| {"GAG", 173},
 | |
| {"GAGE", 1088},
 | |
| {"GAIL", 1089},
 | |
| {"GAIN", 1090},
 | |
| {"GAIT", 1091},
 | |
| {"GAL", 174},
 | |
| {"GALA", 1092},
 | |
| {"GALE", 1093},
 | |
| {"GALL", 1094},
 | |
| {"GALT", 1095},
 | |
| {"GAM", 175},
 | |
| {"GAME", 1096},
 | |
| {"GANG", 1097},
 | |
| {"GAP", 176},
 | |
| {"GARB", 1098},
 | |
| {"GARY", 1099},
 | |
| {"GAS", 177},
 | |
| {"GASH", 1100},
 | |
| {"GATE", 1101},
 | |
| {"GAUL", 1102},
 | |
| {"GAUR", 1103},
 | |
| {"GAVE", 1104},
 | |
| {"GAWK", 1105},
 | |
| {"GAY", 178},
 | |
| {"GEAR", 1106},
 | |
| {"GEE", 179},
 | |
| {"GEL", 180},
 | |
| {"GELD", 1107},
 | |
| {"GEM", 181},
 | |
| {"GENE", 1108},
 | |
| {"GENT", 1109},
 | |
| {"GERM", 1110},
 | |
| {"GET", 182},
 | |
| {"GETS", 1111},
 | |
| {"GIBE", 1112},
 | |
| {"GIFT", 1113},
 | |
| {"GIG", 183},
 | |
| {"GIL", 184},
 | |
| {"GILD", 1114},
 | |
| {"GILL", 1115},
 | |
| {"GILT", 1116},
 | |
| {"GIN", 185},
 | |
| {"GINA", 1117},
 | |
| {"GIRD", 1118},
 | |
| {"GIRL", 1119},
 | |
| {"GIST", 1120},
 | |
| {"GIVE", 1121},
 | |
| {"GLAD", 1122},
 | |
| {"GLEE", 1123},
 | |
| {"GLEN", 1124},
 | |
| {"GLIB", 1125},
 | |
| {"GLOB", 1126},
 | |
| {"GLOM", 1127},
 | |
| {"GLOW", 1128},
 | |
| {"GLUE", 1129},
 | |
| {"GLUM", 1130},
 | |
| {"GLUT", 1131},
 | |
| {"GO", 186},
 | |
| {"GOAD", 1132},
 | |
| {"GOAL", 1133},
 | |
| {"GOAT", 1134},
 | |
| {"GOER", 1135},
 | |
| {"GOES", 1136},
 | |
| {"GOLD", 1137},
 | |
| {"GOLF", 1138},
 | |
| {"GONE", 1139},
 | |
| {"GONG", 1140},
 | |
| {"GOOD", 1141},
 | |
| {"GOOF", 1142},
 | |
| {"GORE", 1143},
 | |
| {"GORY", 1144},
 | |
| {"GOSH", 1145},
 | |
| {"GOT", 187},
 | |
| {"GOUT", 1146},
 | |
| {"GOWN", 1147},
 | |
| {"GRAB", 1148},
 | |
| {"GRAD", 1149},
 | |
| {"GRAY", 1150},
 | |
| {"GREG", 1151},
 | |
| {"GREW", 1152},
 | |
| {"GREY", 1153},
 | |
| {"GRID", 1154},
 | |
| {"GRIM", 1155},
 | |
| {"GRIN", 1156},
 | |
| {"GRIT", 1157},
 | |
| {"GROW", 1158},
 | |
| {"GRUB", 1159},
 | |
| {"GULF", 1160},
 | |
| {"GULL", 1161},
 | |
| {"GUM", 188},
 | |
| {"GUN", 189},
 | |
| {"GUNK", 1162},
 | |
| {"GURU", 1163},
 | |
| {"GUS", 190},
 | |
| {"GUSH", 1164},
 | |
| {"GUST", 1165},
 | |
| {"GUT", 191},
 | |
| {"GUY", 192},
 | |
| {"GWEN", 1166},
 | |
| {"GWYN", 1167},
 | |
| {"GYM", 193},
 | |
| {"GYP", 194},
 | |
| {"HA", 195},
 | |
| {"HAAG", 1168},
 | |
| {"HAAS", 1169},
 | |
| {"HACK", 1170},
 | |
| {"HAD", 196},
 | |
| {"HAIL", 1171},
 | |
| {"HAIR", 1172},
 | |
| {"HAL", 197},
 | |
| {"HALE", 1173},
 | |
| {"HALF", 1174},
 | |
| {"HALL", 1175},
 | |
| {"HALO", 1176},
 | |
| {"HALT", 1177},
 | |
| {"HAM", 198},
 | |
| {"HAN", 199},
 | |
| {"HAND", 1178},
 | |
| {"HANG", 1179},
 | |
| {"HANK", 1180},
 | |
| {"HANS", 1181},
 | |
| {"HAP", 200},
 | |
| {"HARD", 1182},
 | |
| {"HARK", 1183},
 | |
| {"HARM", 1184},
 | |
| {"HART", 1185},
 | |
| {"HAS", 201},
 | |
| {"HASH", 1186},
 | |
| {"HAST", 1187},
 | |
| {"HAT", 202},
 | |
| {"HATE", 1188},
 | |
| {"HATH", 1189},
 | |
| {"HAUL", 1190},
 | |
| {"HAVE", 1191},
 | |
| {"HAW", 203},
 | |
| {"HAWK", 1192},
 | |
| {"HAY", 204},
 | |
| {"HAYS", 1193},
 | |
| {"HE", 205},
 | |
| {"HEAD", 1194},
 | |
| {"HEAL", 1195},
 | |
| {"HEAR", 1196},
 | |
| {"HEAT", 1197},
 | |
| {"HEBE", 1198},
 | |
| {"HECK", 1199},
 | |
| {"HEED", 1200},
 | |
| {"HEEL", 1201},
 | |
| {"HEFT", 1202},
 | |
| {"HELD", 1203},
 | |
| {"HELL", 1204},
 | |
| {"HELM", 1205},
 | |
| {"HEM", 206},
 | |
| {"HEN", 207},
 | |
| {"HER", 208},
 | |
| {"HERB", 1206},
 | |
| {"HERD", 1207},
 | |
| {"HERE", 1208},
 | |
| {"HERO", 1209},
 | |
| {"HERS", 1210},
 | |
| {"HESS", 1211},
 | |
| {"HEW", 209},
 | |
| {"HEWN", 1212},
 | |
| {"HEY", 210},
 | |
| {"HI", 211},
 | |
| {"HICK", 1213},
 | |
| {"HID", 212},
 | |
| {"HIDE", 1214},
 | |
| {"HIGH", 1215},
 | |
| {"HIKE", 1216},
 | |
| {"HILL", 1217},
 | |
| {"HILT", 1218},
 | |
| {"HIM", 213},
 | |
| {"HIND", 1219},
 | |
| {"HINT", 1220},
 | |
| {"HIP", 214},
 | |
| {"HIRE", 1221},
 | |
| {"HIS", 215},
 | |
| {"HISS", 1222},
 | |
| {"HIT", 216},
 | |
| {"HIVE", 1223},
 | |
| {"HO", 217},
 | |
| {"HOB", 218},
 | |
| {"HOBO", 1224},
 | |
| {"HOC", 219},
 | |
| {"HOCK", 1225},
 | |
| {"HOE", 220},
 | |
| {"HOFF", 1226},
 | |
| {"HOG", 221},
 | |
| {"HOLD", 1227},
 | |
| {"HOLE", 1228},
 | |
| {"HOLM", 1229},
 | |
| {"HOLT", 1230},
 | |
| {"HOME", 1231},
 | |
| {"HONE", 1232},
 | |
| {"HONK", 1233},
 | |
| {"HOOD", 1234},
 | |
| {"HOOF", 1235},
 | |
| {"HOOK", 1236},
 | |
| {"HOOT", 1237},
 | |
| {"HOP", 222},
 | |
| {"HORN", 1238},
 | |
| {"HOSE", 1239},
 | |
| {"HOST", 1240},
 | |
| {"HOT", 223},
 | |
| {"HOUR", 1241},
 | |
| {"HOVE", 1242},
 | |
| {"HOW", 224},
 | |
| {"HOWE", 1243},
 | |
| {"HOWL", 1244},
 | |
| {"HOYT", 1245},
 | |
| {"HUB", 225},
 | |
| {"HUCK", 1246},
 | |
| {"HUE", 226},
 | |
| {"HUED", 1247},
 | |
| {"HUFF", 1248},
 | |
| {"HUG", 227},
 | |
| {"HUGE", 1249},
 | |
| {"HUGH", 1250},
 | |
| {"HUGO", 1251},
 | |
| {"HUH", 228},
 | |
| {"HULK", 1252},
 | |
| {"HULL", 1253},
 | |
| {"HUM", 229},
 | |
| {"HUNK", 1254},
 | |
| {"HUNT", 1255},
 | |
| {"HURD", 1256},
 | |
| {"HURL", 1257},
 | |
| {"HURT", 1258},
 | |
| {"HUSH", 1259},
 | |
| {"HUT", 230},
 | |
| {"HYDE", 1260},
 | |
| {"HYMN", 1261},
 | |
| {"I", 231},
 | |
| {"IBIS", 1262},
 | |
| {"ICON", 1263},
 | |
| {"ICY", 232},
 | |
| {"IDA", 233},
 | |
| {"IDEA", 1264},
 | |
| {"IDLE", 1265},
 | |
| {"IF", 234},
 | |
| {"IFFY", 1266},
 | |
| {"IKE", 235},
 | |
| {"ILL", 236},
 | |
| {"INCA", 1267},
 | |
| {"INCH", 1268},
 | |
| {"INK", 237},
 | |
| {"INN", 238},
 | |
| {"INTO", 1269},
 | |
| {"IO", 239},
 | |
| {"ION", 240},
 | |
| {"IONS", 1270},
 | |
| {"IOTA", 1271},
 | |
| {"IOWA", 1272},
 | |
| {"IQ", 241},
 | |
| {"IRA", 242},
 | |
| {"IRE", 243},
 | |
| {"IRIS", 1273},
 | |
| {"IRK", 244},
 | |
| {"IRMA", 1274},
 | |
| {"IRON", 1275},
 | |
| {"IS", 245},
 | |
| {"ISLE", 1276},
 | |
| {"IT", 246},
 | |
| {"ITCH", 1277},
 | |
| {"ITEM", 1278},
 | |
| {"ITS", 247},
 | |
| {"IVAN", 1279},
 | |
| {"IVY", 248},
 | |
| {"JAB", 249},
 | |
| {"JACK", 1280},
 | |
| {"JADE", 1281},
 | |
| {"JAG", 250},
 | |
| {"JAIL", 1282},
 | |
| {"JAKE", 1283},
 | |
| {"JAM", 251},
 | |
| {"JAN", 252},
 | |
| {"JANE", 1284},
 | |
| {"JAR", 253},
 | |
| {"JAVA", 1285},
 | |
| {"JAW", 254},
 | |
| {"JAY", 255},
 | |
| {"JEAN", 1286},
 | |
| {"JEFF", 1287},
 | |
| {"JERK", 1288},
 | |
| {"JESS", 1289},
 | |
| {"JEST", 1290},
 | |
| {"JET", 256},
 | |
| {"JIBE", 1291},
 | |
| {"JIG", 257},
 | |
| {"JILL", 1292},
 | |
| {"JILT", 1293},
 | |
| {"JIM", 258},
 | |
| {"JIVE", 1294},
 | |
| {"JO", 259},
 | |
| {"JOAN", 1295},
 | |
| {"JOB", 260},
 | |
| {"JOBS", 1296},
 | |
| {"JOCK", 1297},
 | |
| {"JOE", 261},
 | |
| {"JOEL", 1298},
 | |
| {"JOEY", 1299},
 | |
| {"JOG", 262},
 | |
| {"JOHN", 1300},
 | |
| {"JOIN", 1301},
 | |
| {"JOKE", 1302},
 | |
| {"JOLT", 1303},
 | |
| {"JOT", 263},
 | |
| {"JOVE", 1304},
 | |
| {"JOY", 264},
 | |
| {"JUDD", 1305},
 | |
| {"JUDE", 1306},
 | |
| {"JUDO", 1307},
 | |
| {"JUDY", 1308},
 | |
| {"JUG", 265},
 | |
| {"JUJU", 1309},
 | |
| {"JUKE", 1310},
 | |
| {"JULY", 1311},
 | |
| {"JUNE", 1312},
 | |
| {"JUNK", 1313},
 | |
| {"JUNO", 1314},
 | |
| {"JURY", 1315},
 | |
| {"JUST", 1316},
 | |
| {"JUT", 266},
 | |
| {"JUTE", 1317},
 | |
| {"KAHN", 1318},
 | |
| {"KALE", 1319},
 | |
| {"KANE", 1320},
 | |
| {"KANT", 1321},
 | |
| {"KARL", 1322},
 | |
| {"KATE", 1323},
 | |
| {"KAY", 267},
 | |
| {"KEEL", 1324},
 | |
| {"KEEN", 1325},
 | |
| {"KEG", 268},
 | |
| {"KEN", 269},
 | |
| {"KENO", 1326},
 | |
| {"KENT", 1327},
 | |
| {"KERN", 1328},
 | |
| {"KERR", 1329},
 | |
| {"KEY", 270},
 | |
| {"KEYS", 1330},
 | |
| {"KICK", 1331},
 | |
| {"KID", 271},
 | |
| {"KILL", 1332},
 | |
| {"KIM", 272},
 | |
| {"KIN", 273},
 | |
| {"KIND", 1333},
 | |
| {"KING", 1334},
 | |
| {"KIRK", 1335},
 | |
| {"KISS", 1336},
 | |
| {"KIT", 274},
 | |
| {"KITE", 1337},
 | |
| {"KLAN", 1338},
 | |
| {"KNEE", 1339},
 | |
| {"KNEW", 1340},
 | |
| {"KNIT", 1341},
 | |
| {"KNOB", 1342},
 | |
| {"KNOT", 1343},
 | |
| {"KNOW", 1344},
 | |
| {"KOCH", 1345},
 | |
| {"KONG", 1346},
 | |
| {"KUDO", 1347},
 | |
| {"KURD", 1348},
 | |
| {"KURT", 1349},
 | |
| {"KYLE", 1350},
 | |
| {"LA", 275},
 | |
| {"LAB", 276},
 | |
| {"LAC", 277},
 | |
| {"LACE", 1351},
 | |
| {"LACK", 1352},
 | |
| {"LACY", 1353},
 | |
| {"LAD", 278},
 | |
| {"LADY", 1354},
 | |
| {"LAG", 279},
 | |
| {"LAID", 1355},
 | |
| {"LAIN", 1356},
 | |
| {"LAIR", 1357},
 | |
| {"LAKE", 1358},
 | |
| {"LAM", 280},
 | |
| {"LAMB", 1359},
 | |
| {"LAME", 1360},
 | |
| {"LAND", 1361},
 | |
| {"LANE", 1362},
 | |
| {"LANG", 1363},
 | |
| {"LAP", 281},
 | |
| {"LARD", 1364},
 | |
| {"LARK", 1365},
 | |
| {"LASS", 1366},
 | |
| {"LAST", 1367},
 | |
| {"LATE", 1368},
 | |
| {"LAUD", 1369},
 | |
| {"LAVA", 1370},
 | |
| {"LAW", 282},
 | |
| {"LAWN", 1371},
 | |
| {"LAWS", 1372},
 | |
| {"LAY", 283},
 | |
| {"LAYS", 1373},
 | |
| {"LEA", 284},
 | |
| {"LEAD", 1374},
 | |
| {"LEAF", 1375},
 | |
| {"LEAK", 1376},
 | |
| {"LEAN", 1377},
 | |
| {"LEAR", 1378},
 | |
| {"LED", 285},
 | |
| {"LEE", 286},
 | |
| {"LEEK", 1379},
 | |
| {"LEER", 1380},
 | |
| {"LEFT", 1381},
 | |
| {"LEG", 287},
 | |
| {"LEN", 288},
 | |
| {"LEND", 1382},
 | |
| {"LENS", 1383},
 | |
| {"LENT", 1384},
 | |
| {"LEO", 289},
 | |
| {"LEON", 1385},
 | |
| {"LESK", 1386},
 | |
| {"LESS", 1387},
 | |
| {"LEST", 1388},
 | |
| {"LET", 290},
 | |
| {"LETS", 1389},
 | |
| {"LEW", 291},
 | |
| {"LIAR", 1390},
 | |
| {"LICE", 1391},
 | |
| {"LICK", 1392},
 | |
| {"LID", 292},
 | |
| {"LIE", 293},
 | |
| {"LIED", 1393},
 | |
| {"LIEN", 1394},
 | |
| {"LIES", 1395},
 | |
| {"LIEU", 1396},
 | |
| {"LIFE", 1397},
 | |
| {"LIFT", 1398},
 | |
| {"LIKE", 1399},
 | |
| {"LILA", 1400},
 | |
| {"LILT", 1401},
 | |
| {"LILY", 1402},
 | |
| {"LIMA", 1403},
 | |
| {"LIMB", 1404},
 | |
| {"LIME", 1405},
 | |
| {"LIN", 294},
 | |
| {"LIND", 1406},
 | |
| {"LINE", 1407},
 | |
| {"LINK", 1408},
 | |
| {"LINT", 1409},
 | |
| {"LION", 1410},
 | |
| {"LIP", 295},
 | |
| {"LISA", 1411},
 | |
| {"LIST", 1412},
 | |
| {"LIT", 296},
 | |
| {"LIVE", 1413},
 | |
| {"LO", 297},
 | |
| {"LOAD", 1414},
 | |
| {"LOAF", 1415},
 | |
| {"LOAM", 1416},
 | |
| {"LOAN", 1417},
 | |
| {"LOB", 298},
 | |
| {"LOCK", 1418},
 | |
| {"LOFT", 1419},
 | |
| {"LOG", 299},
 | |
| {"LOGE", 1420},
 | |
| {"LOIS", 1421},
 | |
| {"LOLA", 1422},
 | |
| {"LONE", 1423},
 | |
| {"LONG", 1424},
 | |
| {"LOOK", 1425},
 | |
| {"LOON", 1426},
 | |
| {"LOOT", 1427},
 | |
| {"LOP", 300},
 | |
| {"LORD", 1428},
 | |
| {"LORE", 1429},
 | |
| {"LOS", 301},
 | |
| {"LOSE", 1430},
 | |
| {"LOSS", 1431},
 | |
| {"LOST", 1432},
 | |
| {"LOT", 302},
 | |
| {"LOU", 303},
 | |
| {"LOUD", 1433},
 | |
| {"LOVE", 1434},
 | |
| {"LOW", 304},
 | |
| {"LOWE", 1435},
 | |
| {"LOY", 305},
 | |
| {"LUCK", 1436},
 | |
| {"LUCY", 1437},
 | |
| {"LUG", 306},
 | |
| {"LUGE", 1438},
 | |
| {"LUKE", 1439},
 | |
| {"LULU", 1440},
 | |
| {"LUND", 1441},
 | |
| {"LUNG", 1442},
 | |
| {"LURA", 1443},
 | |
| {"LURE", 1444},
 | |
| {"LURK", 1445},
 | |
| {"LUSH", 1446},
 | |
| {"LUST", 1447},
 | |
| {"LYE", 307},
 | |
| {"LYLE", 1448},
 | |
| {"LYNN", 1449},
 | |
| {"LYON", 1450},
 | |
| {"LYRA", 1451},
 | |
| {"MA", 308},
 | |
| {"MAC", 309},
 | |
| {"MACE", 1452},
 | |
| {"MAD", 310},
 | |
| {"MADE", 1453},
 | |
| {"MAE", 311},
 | |
| {"MAGI", 1454},
 | |
| {"MAID", 1455},
 | |
| {"MAIL", 1456},
 | |
| {"MAIN", 1457},
 | |
| {"MAKE", 1458},
 | |
| {"MALE", 1459},
 | |
| {"MALI", 1460},
 | |
| {"MALL", 1461},
 | |
| {"MALT", 1462},
 | |
| {"MAN", 312},
 | |
| {"MANA", 1463},
 | |
| {"MANN", 1464},
 | |
| {"MANY", 1465},
 | |
| {"MAO", 313},
 | |
| {"MAP", 314},
 | |
| {"MARC", 1466},
 | |
| {"MARE", 1467},
 | |
| {"MARK", 1468},
 | |
| {"MARS", 1469},
 | |
| {"MART", 1470},
 | |
| {"MARY", 1471},
 | |
| {"MASH", 1472},
 | |
| {"MASK", 1473},
 | |
| {"MASS", 1474},
 | |
| {"MAST", 1475},
 | |
| {"MAT", 315},
 | |
| {"MATE", 1476},
 | |
| {"MATH", 1477},
 | |
| {"MAUL", 1478},
 | |
| {"MAW", 316},
 | |
| {"MAY", 317},
 | |
| {"MAYO", 1479},
 | |
| {"ME", 318},
 | |
| {"MEAD", 1480},
 | |
| {"MEAL", 1481},
 | |
| {"MEAN", 1482},
 | |
| {"MEAT", 1483},
 | |
| {"MEEK", 1484},
 | |
| {"MEET", 1485},
 | |
| {"MEG", 319},
 | |
| {"MEL", 320},
 | |
| {"MELD", 1486},
 | |
| {"MELT", 1487},
 | |
| {"MEMO", 1488},
 | |
| {"MEN", 321},
 | |
| {"MEND", 1489},
 | |
| {"MENU", 1490},
 | |
| {"MERT", 1491},
 | |
| {"MESH", 1492},
 | |
| {"MESS", 1493},
 | |
| {"MET", 322},
 | |
| {"MEW", 323},
 | |
| {"MICE", 1494},
 | |
| {"MID", 324},
 | |
| {"MIKE", 1495},
 | |
| {"MILD", 1496},
 | |
| {"MILE", 1497},
 | |
| {"MILK", 1498},
 | |
| {"MILL", 1499},
 | |
| {"MILT", 1500},
 | |
| {"MIMI", 1501},
 | |
| {"MIN", 325},
 | |
| {"MIND", 1502},
 | |
| {"MINE", 1503},
 | |
| {"MINI", 1504},
 | |
| {"MINK", 1505},
 | |
| {"MINT", 1506},
 | |
| {"MIRE", 1507},
 | |
| {"MISS", 1508},
 | |
| {"MIST", 1509},
 | |
| {"MIT", 326},
 | |
| {"MITE", 1510},
 | |
| {"MITT", 1511},
 | |
| {"MOAN", 1512},
 | |
| {"MOAT", 1513},
 | |
| {"MOB", 327},
 | |
| {"MOCK", 1514},
 | |
| {"MOD", 328},
 | |
| {"MODE", 1515},
 | |
| {"MOE", 329},
 | |
| {"MOLD", 1516},
 | |
| {"MOLE", 1517},
 | |
| {"MOLL", 1518},
 | |
| {"MOLT", 1519},
 | |
| {"MONA", 1520},
 | |
| {"MONK", 1521},
 | |
| {"MONT", 1522},
 | |
| {"MOO", 330},
 | |
| {"MOOD", 1523},
 | |
| {"MOON", 1524},
 | |
| {"MOOR", 1525},
 | |
| {"MOOT", 1526},
 | |
| {"MOP", 331},
 | |
| {"MORE", 1527},
 | |
| {"MORN", 1528},
 | |
| {"MORT", 1529},
 | |
| {"MOS", 332},
 | |
| {"MOSS", 1530},
 | |
| {"MOST", 1531},
 | |
| {"MOT", 333},
 | |
| {"MOTH", 1532},
 | |
| {"MOVE", 1533},
 | |
| {"MOW", 334},
 | |
| {"MUCH", 1534},
 | |
| {"MUCK", 1535},
 | |
| {"MUD", 335},
 | |
| {"MUDD", 1536},
 | |
| {"MUFF", 1537},
 | |
| {"MUG", 336},
 | |
| {"MULE", 1538},
 | |
| {"MULL", 1539},
 | |
| {"MUM", 337},
 | |
| {"MURK", 1540},
 | |
| {"MUSH", 1541},
 | |
| {"MUST", 1542},
 | |
| {"MUTE", 1543},
 | |
| {"MUTT", 1544},
 | |
| {"MY", 338},
 | |
| {"MYRA", 1545},
 | |
| {"MYTH", 1546},
 | |
| {"NAB", 339},
 | |
| {"NAG", 340},
 | |
| {"NAGY", 1547},
 | |
| {"NAIL", 1548},
 | |
| {"NAIR", 1549},
 | |
| {"NAME", 1550},
 | |
| {"NAN", 341},
 | |
| {"NAP", 342},
 | |
| {"NARY", 1551},
 | |
| {"NASH", 1552},
 | |
| {"NAT", 343},
 | |
| {"NAVE", 1553},
 | |
| {"NAVY", 1554},
 | |
| {"NAY", 344},
 | |
| {"NE", 345},
 | |
| {"NEAL", 1555},
 | |
| {"NEAR", 1556},
 | |
| {"NEAT", 1557},
 | |
| {"NECK", 1558},
 | |
| {"NED", 346},
 | |
| {"NEE", 347},
 | |
| {"NEED", 1559},
 | |
| {"NEIL", 1560},
 | |
| {"NELL", 1561},
 | |
| {"NEON", 1562},
 | |
| {"NERO", 1563},
 | |
| {"NESS", 1564},
 | |
| {"NEST", 1565},
 | |
| {"NET", 348},
 | |
| {"NEW", 349},
 | |
| {"NEWS", 1566},
 | |
| {"NEWT", 1567},
 | |
| {"NIB", 350},
 | |
| {"NIBS", 1568},
 | |
| {"NICE", 1569},
 | |
| {"NICK", 1570},
 | |
| {"NIL", 351},
 | |
| {"NILE", 1571},
 | |
| {"NINA", 1572},
 | |
| {"NINE", 1573},
 | |
| {"NIP", 352},
 | |
| {"NIT", 353},
 | |
| {"NO", 354},
 | |
| {"NOAH", 1574},
 | |
| {"NOB", 355},
 | |
| {"NOD", 356},
 | |
| {"NODE", 1575},
 | |
| {"NOEL", 1576},
 | |
| {"NOLL", 1577},
 | |
| {"NON", 357},
 | |
| {"NONE", 1578},
 | |
| {"NOOK", 1579},
 | |
| {"NOON", 1580},
 | |
| {"NOR", 358},
 | |
| {"NORM", 1581},
 | |
| {"NOSE", 1582},
 | |
| {"NOT", 359},
 | |
| {"NOTE", 1583},
 | |
| {"NOUN", 1584},
 | |
| {"NOV", 360},
 | |
| {"NOVA", 1585},
 | |
| {"NOW", 361},
 | |
| {"NU", 362},
 | |
| {"NUDE", 1586},
 | |
| {"NULL", 1587},
 | |
| {"NUMB", 1588},
 | |
| {"NUN", 363},
 | |
| {"NUT", 364},
 | |
| {"O", 365},
 | |
| {"OAF", 366},
 | |
| {"OAK", 367},
 | |
| {"OAR", 368},
 | |
| {"OAT", 369},
 | |
| {"OATH", 1589},
 | |
| {"OBEY", 1590},
 | |
| {"OBOE", 1591},
 | |
| {"ODD", 370},
 | |
| {"ODE", 371},
 | |
| {"ODIN", 1592},
 | |
| {"OF", 372},
 | |
| {"OFF", 373},
 | |
| {"OFT", 374},
 | |
| {"OH", 375},
 | |
| {"OHIO", 1593},
 | |
| {"OIL", 376},
 | |
| {"OILY", 1594},
 | |
| {"OINT", 1595},
 | |
| {"OK", 377},
 | |
| {"OKAY", 1596},
 | |
| {"OLAF", 1597},
 | |
| {"OLD", 378},
 | |
| {"OLDY", 1598},
 | |
| {"OLGA", 1599},
 | |
| {"OLIN", 1600},
 | |
| {"OMAN", 1601},
 | |
| {"OMEN", 1602},
 | |
| {"OMIT", 1603},
 | |
| {"ON", 379},
 | |
| {"ONCE", 1604},
 | |
| {"ONE", 380},
 | |
| {"ONES", 1605},
 | |
| {"ONLY", 1606},
 | |
| {"ONTO", 1607},
 | |
| {"ONUS", 1608},
 | |
| {"OR", 381},
 | |
| {"ORAL", 1609},
 | |
| {"ORB", 382},
 | |
| {"ORE", 383},
 | |
| {"ORGY", 1610},
 | |
| {"ORR", 384},
 | |
| {"OS", 385},
 | |
| {"OSLO", 1611},
 | |
| {"OTIS", 1612},
 | |
| {"OTT", 386},
 | |
| {"OTTO", 1613},
 | |
| {"OUCH", 1614},
 | |
| {"OUR", 387},
 | |
| {"OUST", 1615},
 | |
| {"OUT", 388},
 | |
| {"OUTS", 1616},
 | |
| {"OVA", 389},
 | |
| {"OVAL", 1617},
 | |
| {"OVEN", 1618},
 | |
| {"OVER", 1619},
 | |
| {"OW", 390},
 | |
| {"OWE", 391},
 | |
| {"OWL", 392},
 | |
| {"OWLY", 1620},
 | |
| {"OWN", 393},
 | |
| {"OWNS", 1621},
 | |
| {"OX", 394},
 | |
| {"PA", 395},
 | |
| {"PAD", 396},
 | |
| {"PAL", 397},
 | |
| {"PAM", 398},
 | |
| {"PAN", 399},
 | |
| {"PAP", 400},
 | |
| {"PAR", 401},
 | |
| {"PAT", 402},
 | |
| {"PAW", 403},
 | |
| {"PAY", 404},
 | |
| {"PEA", 405},
 | |
| {"PEG", 406},
 | |
| {"PEN", 407},
 | |
| {"PEP", 408},
 | |
| {"PER", 409},
 | |
| {"PET", 410},
 | |
| {"PEW", 411},
 | |
| {"PHI", 412},
 | |
| {"PI", 413},
 | |
| {"PIE", 414},
 | |
| {"PIN", 415},
 | |
| {"PIT", 416},
 | |
| {"PLY", 417},
 | |
| {"PO", 418},
 | |
| {"POD", 419},
 | |
| {"POE", 420},
 | |
| {"POP", 421},
 | |
| {"POT", 422},
 | |
| {"POW", 423},
 | |
| {"PRO", 424},
 | |
| {"PRY", 425},
 | |
| {"PUB", 426},
 | |
| {"PUG", 427},
 | |
| {"PUN", 428},
 | |
| {"PUP", 429},
 | |
| {"PUT", 430},
 | |
| {"QUAD", 1622},
 | |
| {"QUIT", 1623},
 | |
| {"QUO", 431},
 | |
| {"QUOD", 1624},
 | |
| {"RACE", 1625},
 | |
| {"RACK", 1626},
 | |
| {"RACY", 1627},
 | |
| {"RAFT", 1628},
 | |
| {"RAG", 432},
 | |
| {"RAGE", 1629},
 | |
| {"RAID", 1630},
 | |
| {"RAIL", 1631},
 | |
| {"RAIN", 1632},
 | |
| {"RAKE", 1633},
 | |
| {"RAM", 433},
 | |
| {"RAN", 434},
 | |
| {"RANK", 1634},
 | |
| {"RANT", 1635},
 | |
| {"RAP", 435},
 | |
| {"RARE", 1636},
 | |
| {"RASH", 1637},
 | |
| {"RAT", 436},
 | |
| {"RATE", 1638},
 | |
| {"RAVE", 1639},
 | |
| {"RAW", 437},
 | |
| {"RAY", 438},
 | |
| {"RAYS", 1640},
 | |
| {"READ", 1641},
 | |
| {"REAL", 1642},
 | |
| {"REAM", 1643},
 | |
| {"REAR", 1644},
 | |
| {"REB", 439},
 | |
| {"RECK", 1645},
 | |
| {"RED", 440},
 | |
| {"REED", 1646},
 | |
| {"REEF", 1647},
 | |
| {"REEK", 1648},
 | |
| {"REEL", 1649},
 | |
| {"REID", 1650},
 | |
| {"REIN", 1651},
 | |
| {"RENA", 1652},
 | |
| {"REND", 1653},
 | |
| {"RENT", 1654},
 | |
| {"REP", 441},
 | |
| {"REST", 1655},
 | |
| {"RET", 442},
 | |
| {"RIB", 443},
 | |
| {"RICE", 1656},
 | |
| {"RICH", 1657},
 | |
| {"RICK", 1658},
 | |
| {"RID", 444},
 | |
| {"RIDE", 1659},
 | |
| {"RIFT", 1660},
 | |
| {"RIG", 445},
 | |
| {"RILL", 1661},
 | |
| {"RIM", 446},
 | |
| {"RIME", 1662},
 | |
| {"RING", 1663},
 | |
| {"RINK", 1664},
 | |
| {"RIO", 447},
 | |
| {"RIP", 448},
 | |
| {"RISE", 1665},
 | |
| {"RISK", 1666},
 | |
| {"RITE", 1667},
 | |
| {"ROAD", 1668},
 | |
| {"ROAM", 1669},
 | |
| {"ROAR", 1670},
 | |
| {"ROB", 449},
 | |
| {"ROBE", 1671},
 | |
| {"ROCK", 1672},
 | |
| {"ROD", 450},
 | |
| {"RODE", 1673},
 | |
| {"ROE", 451},
 | |
| {"ROIL", 1674},
 | |
| {"ROLL", 1675},
 | |
| {"ROME", 1676},
 | |
| {"RON", 452},
 | |
| {"ROOD", 1677},
 | |
| {"ROOF", 1678},
 | |
| {"ROOK", 1679},
 | |
| {"ROOM", 1680},
 | |
| {"ROOT", 1681},
 | |
| {"ROSA", 1682},
 | |
| {"ROSE", 1683},
 | |
| {"ROSS", 1684},
 | |
| {"ROSY", 1685},
 | |
| {"ROT", 453},
 | |
| {"ROTH", 1686},
 | |
| {"ROUT", 1687},
 | |
| {"ROVE", 1688},
 | |
| {"ROW", 454},
 | |
| {"ROWE", 1689},
 | |
| {"ROWS", 1690},
 | |
| {"ROY", 455},
 | |
| {"RUB", 456},
 | |
| {"RUBE", 1691},
 | |
| {"RUBY", 1692},
 | |
| {"RUDE", 1693},
 | |
| {"RUDY", 1694},
 | |
| {"RUE", 457},
 | |
| {"RUG", 458},
 | |
| {"RUIN", 1695},
 | |
| {"RULE", 1696},
 | |
| {"RUM", 459},
 | |
| {"RUN", 460},
 | |
| {"RUNG", 1697},
 | |
| {"RUNS", 1698},
 | |
| {"RUNT", 1699},
 | |
| {"RUSE", 1700},
 | |
| {"RUSH", 1701},
 | |
| {"RUSK", 1702},
 | |
| {"RUSS", 1703},
 | |
| {"RUST", 1704},
 | |
| {"RUTH", 1705},
 | |
| {"RYE", 461},
 | |
| {"SAC", 462},
 | |
| {"SACK", 1706},
 | |
| {"SAD", 463},
 | |
| {"SAFE", 1707},
 | |
| {"SAG", 464},
 | |
| {"SAGE", 1708},
 | |
| {"SAID", 1709},
 | |
| {"SAIL", 1710},
 | |
| {"SAL", 465},
 | |
| {"SALE", 1711},
 | |
| {"SALK", 1712},
 | |
| {"SALT", 1713},
 | |
| {"SAM", 466},
 | |
| {"SAME", 1714},
 | |
| {"SAN", 467},
 | |
| {"SAND", 1715},
 | |
| {"SANE", 1716},
 | |
| {"SANG", 1717},
 | |
| {"SANK", 1718},
 | |
| {"SAP", 468},
 | |
| {"SARA", 1719},
 | |
| {"SAT", 469},
 | |
| {"SAUL", 1720},
 | |
| {"SAVE", 1721},
 | |
| {"SAW", 470},
 | |
| {"SAY", 471},
 | |
| {"SAYS", 1722},
 | |
| {"SCAN", 1723},
 | |
| {"SCAR", 1724},
 | |
| {"SCAT", 1725},
 | |
| {"SCOT", 1726},
 | |
| {"SEA", 472},
 | |
| {"SEAL", 1727},
 | |
| {"SEAM", 1728},
 | |
| {"SEAR", 1729},
 | |
| {"SEAT", 1730},
 | |
| {"SEC", 473},
 | |
| {"SEE", 474},
 | |
| {"SEED", 1731},
 | |
| {"SEEK", 1732},
 | |
| {"SEEM", 1733},
 | |
| {"SEEN", 1734},
 | |
| {"SEES", 1735},
 | |
| {"SELF", 1736},
 | |
| {"SELL", 1737},
 | |
| {"SEN", 475},
 | |
| {"SEND", 1738},
 | |
| {"SENT", 1739},
 | |
| {"SET", 476},
 | |
| {"SETS", 1740},
 | |
| {"SEW", 477},
 | |
| {"SEWN", 1741},
 | |
| {"SHAG", 1742},
 | |
| {"SHAM", 1743},
 | |
| {"SHAW", 1744},
 | |
| {"SHAY", 1745},
 | |
| {"SHE", 478},
 | |
| {"SHED", 1746},
 | |
| {"SHIM", 1747},
 | |
| {"SHIN", 1748},
 | |
| {"SHOD", 1749},
 | |
| {"SHOE", 1750},
 | |
| {"SHOT", 1751},
 | |
| {"SHOW", 1752},
 | |
| {"SHUN", 1753},
 | |
| {"SHUT", 1754},
 | |
| {"SHY", 479},
 | |
| {"SICK", 1755},
 | |
| {"SIDE", 1756},
 | |
| {"SIFT", 1757},
 | |
| {"SIGH", 1758},
 | |
| {"SIGN", 1759},
 | |
| {"SILK", 1760},
 | |
| {"SILL", 1761},
 | |
| {"SILO", 1762},
 | |
| {"SILT", 1763},
 | |
| {"SIN", 480},
 | |
| {"SINE", 1764},
 | |
| {"SING", 1765},
 | |
| {"SINK", 1766},
 | |
| {"SIP", 481},
 | |
| {"SIR", 482},
 | |
| {"SIRE", 1767},
 | |
| {"SIS", 483},
 | |
| {"SIT", 484},
 | |
| {"SITE", 1768},
 | |
| {"SITS", 1769},
 | |
| {"SITU", 1770},
 | |
| {"SKAT", 1771},
 | |
| {"SKEW", 1772},
 | |
| {"SKI", 485},
 | |
| {"SKID", 1773},
 | |
| {"SKIM", 1774},
 | |
| {"SKIN", 1775},
 | |
| {"SKIT", 1776},
 | |
| {"SKY", 486},
 | |
| {"SLAB", 1777},
 | |
| {"SLAM", 1778},
 | |
| {"SLAT", 1779},
 | |
| {"SLAY", 1780},
 | |
| {"SLED", 1781},
 | |
| {"SLEW", 1782},
 | |
| {"SLID", 1783},
 | |
| {"SLIM", 1784},
 | |
| {"SLIT", 1785},
 | |
| {"SLOB", 1786},
 | |
| {"SLOG", 1787},
 | |
| {"SLOT", 1788},
 | |
| {"SLOW", 1789},
 | |
| {"SLUG", 1790},
 | |
| {"SLUM", 1791},
 | |
| {"SLUR", 1792},
 | |
| {"SLY", 487},
 | |
| {"SMOG", 1793},
 | |
| {"SMUG", 1794},
 | |
| {"SNAG", 1795},
 | |
| {"SNOB", 1796},
 | |
| {"SNOW", 1797},
 | |
| {"SNUB", 1798},
 | |
| {"SNUG", 1799},
 | |
| {"SO", 488},
 | |
| {"SOAK", 1800},
 | |
| {"SOAR", 1801},
 | |
| {"SOB", 489},
 | |
| {"SOCK", 1802},
 | |
| {"SOD", 490},
 | |
| {"SODA", 1803},
 | |
| {"SOFA", 1804},
 | |
| {"SOFT", 1805},
 | |
| {"SOIL", 1806},
 | |
| {"SOLD", 1807},
 | |
| {"SOME", 1808},
 | |
| {"SON", 491},
 | |
| {"SONG", 1809},
 | |
| {"SOON", 1810},
 | |
| {"SOOT", 1811},
 | |
| {"SOP", 492},
 | |
| {"SORE", 1812},
 | |
| {"SORT", 1813},
 | |
| {"SOUL", 1814},
 | |
| {"SOUR", 1815},
 | |
| {"SOW", 493},
 | |
| {"SOWN", 1816},
 | |
| {"SOY", 494},
 | |
| {"SPA", 495},
 | |
| {"SPY", 496},
 | |
| {"STAB", 1817},
 | |
| {"STAG", 1818},
 | |
| {"STAN", 1819},
 | |
| {"STAR", 1820},
 | |
| {"STAY", 1821},
 | |
| {"STEM", 1822},
 | |
| {"STEW", 1823},
 | |
| {"STIR", 1824},
 | |
| {"STOW", 1825},
 | |
| {"STUB", 1826},
 | |
| {"STUN", 1827},
 | |
| {"SUB", 497},
 | |
| {"SUCH", 1828},
 | |
| {"SUD", 498},
 | |
| {"SUDS", 1829},
 | |
| {"SUE", 499},
 | |
| {"SUIT", 1830},
 | |
| {"SULK", 1831},
 | |
| {"SUM", 500},
 | |
| {"SUMS", 1832},
 | |
| {"SUN", 501},
 | |
| {"SUNG", 1833},
 | |
| {"SUNK", 1834},
 | |
| {"SUP", 502},
 | |
| {"SURE", 1835},
 | |
| {"SURF", 1836},
 | |
| {"SWAB", 1837},
 | |
| {"SWAG", 1838},
 | |
| {"SWAM", 1839},
 | |
| {"SWAN", 1840},
 | |
| {"SWAT", 1841},
 | |
| {"SWAY", 1842},
 | |
| {"SWIM", 1843},
 | |
| {"SWUM", 1844},
 | |
| {"TAB", 503},
 | |
| {"TACK", 1845},
 | |
| {"TACT", 1846},
 | |
| {"TAD", 504},
 | |
| {"TAG", 505},
 | |
| {"TAIL", 1847},
 | |
| {"TAKE", 1848},
 | |
| {"TALE", 1849},
 | |
| {"TALK", 1850},
 | |
| {"TALL", 1851},
 | |
| {"TAN", 506},
 | |
| {"TANK", 1852},
 | |
| {"TAP", 507},
 | |
| {"TAR", 508},
 | |
| {"TASK", 1853},
 | |
| {"TATE", 1854},
 | |
| {"TAUT", 1855},
 | |
| {"TEA", 509},
 | |
| {"TEAL", 1856},
 | |
| {"TEAM", 1857},
 | |
| {"TEAR", 1858},
 | |
| {"TECH", 1859},
 | |
| {"TED", 510},
 | |
| {"TEE", 511},
 | |
| {"TEEM", 1860},
 | |
| {"TEEN", 1861},
 | |
| {"TEET", 1862},
 | |
| {"TELL", 1863},
 | |
| {"TEN", 512},
 | |
| {"TEND", 1864},
 | |
| {"TENT", 1865},
 | |
| {"TERM", 1866},
 | |
| {"TERN", 1867},
 | |
| {"TESS", 1868},
 | |
| {"TEST", 1869},
 | |
| {"THAN", 1870},
 | |
| {"THAT", 1871},
 | |
| {"THE", 513},
 | |
| {"THEE", 1872},
 | |
| {"THEM", 1873},
 | |
| {"THEN", 1874},
 | |
| {"THEY", 1875},
 | |
| {"THIN", 1876},
 | |
| {"THIS", 1877},
 | |
| {"THUD", 1878},
 | |
| {"THUG", 1879},
 | |
| {"THY", 514},
 | |
| {"TIC", 515},
 | |
| {"TICK", 1880},
 | |
| {"TIDE", 1881},
 | |
| {"TIDY", 1882},
 | |
| {"TIE", 516},
 | |
| {"TIED", 1883},
 | |
| {"TIER", 1884},
 | |
| {"TILE", 1885},
 | |
| {"TILL", 1886},
 | |
| {"TILT", 1887},
 | |
| {"TIM", 517},
 | |
| {"TIME", 1888},
 | |
| {"TIN", 518},
 | |
| {"TINA", 1889},
 | |
| {"TINE", 1890},
 | |
| {"TINT", 1891},
 | |
| {"TINY", 1892},
 | |
| {"TIP", 519},
 | |
| {"TIRE", 1893},
 | |
| {"TO", 520},
 | |
| {"TOAD", 1894},
 | |
| {"TOE", 521},
 | |
| {"TOG", 522},
 | |
| {"TOGO", 1895},
 | |
| {"TOIL", 1896},
 | |
| {"TOLD", 1897},
 | |
| {"TOLL", 1898},
 | |
| {"TOM", 523},
 | |
| {"TON", 524},
 | |
| {"TONE", 1899},
 | |
| {"TONG", 1900},
 | |
| {"TONY", 1901},
 | |
| {"TOO", 525},
 | |
| {"TOOK", 1902},
 | |
| {"TOOL", 1903},
 | |
| {"TOOT", 1904},
 | |
| {"TOP", 526},
 | |
| {"TORE", 1905},
 | |
| {"TORN", 1906},
 | |
| {"TOTE", 1907},
 | |
| {"TOUR", 1908},
 | |
| {"TOUT", 1909},
 | |
| {"TOW", 527},
 | |
| {"TOWN", 1910},
 | |
| {"TOY", 528},
 | |
| {"TRAG", 1911},
 | |
| {"TRAM", 1912},
 | |
| {"TRAY", 1913},
 | |
| {"TREE", 1914},
 | |
| {"TREK", 1915},
 | |
| {"TRIG", 1916},
 | |
| {"TRIM", 1917},
 | |
| {"TRIO", 1918},
 | |
| {"TROD", 1919},
 | |
| {"TROT", 1920},
 | |
| {"TROY", 1921},
 | |
| {"TRUE", 1922},
 | |
| {"TRY", 529},
 | |
| {"TUB", 530},
 | |
| {"TUBA", 1923},
 | |
| {"TUBE", 1924},
 | |
| {"TUCK", 1925},
 | |
| {"TUFT", 1926},
 | |
| {"TUG", 531},
 | |
| {"TUM", 532},
 | |
| {"TUN", 533},
 | |
| {"TUNA", 1927},
 | |
| {"TUNE", 1928},
 | |
| {"TUNG", 1929},
 | |
| {"TURF", 1930},
 | |
| {"TURN", 1931},
 | |
| {"TUSK", 1932},
 | |
| {"TWIG", 1933},
 | |
| {"TWIN", 1934},
 | |
| {"TWIT", 1935},
 | |
| {"TWO", 534},
 | |
| {"ULAN", 1936},
 | |
| {"UN", 535},
 | |
| {"UNIT", 1937},
 | |
| {"UP", 536},
 | |
| {"URGE", 1938},
 | |
| {"US", 537},
 | |
| {"USE", 538},
 | |
| {"USED", 1939},
 | |
| {"USER", 1940},
 | |
| {"USES", 1941},
 | |
| {"UTAH", 1942},
 | |
| {"VAIL", 1943},
 | |
| {"VAIN", 1944},
 | |
| {"VALE", 1945},
 | |
| {"VAN", 539},
 | |
| {"VARY", 1946},
 | |
| {"VASE", 1947},
 | |
| {"VAST", 1948},
 | |
| {"VAT", 540},
 | |
| {"VEAL", 1949},
 | |
| {"VEDA", 1950},
 | |
| {"VEIL", 1951},
 | |
| {"VEIN", 1952},
 | |
| {"VEND", 1953},
 | |
| {"VENT", 1954},
 | |
| {"VERB", 1955},
 | |
| {"VERY", 1956},
 | |
| {"VET", 541},
 | |
| {"VETO", 1957},
 | |
| {"VICE", 1958},
 | |
| {"VIE", 542},
 | |
| {"VIEW", 1959},
 | |
| {"VINE", 1960},
 | |
| {"VISE", 1961},
 | |
| {"VOID", 1962},
 | |
| {"VOLT", 1963},
 | |
| {"VOTE", 1964},
 | |
| {"WACK", 1965},
 | |
| {"WAD", 543},
 | |
| {"WADE", 1966},
 | |
| {"WAG", 544},
 | |
| {"WAGE", 1967},
 | |
| {"WAIL", 1968},
 | |
| {"WAIT", 1969},
 | |
| {"WAKE", 1970},
 | |
| {"WALE", 1971},
 | |
| {"WALK", 1972},
 | |
| {"WALL", 1973},
 | |
| {"WALT", 1974},
 | |
| {"WAND", 1975},
 | |
| {"WANE", 1976},
 | |
| {"WANG", 1977},
 | |
| {"WANT", 1978},
 | |
| {"WAR", 545},
 | |
| {"WARD", 1979},
 | |
| {"WARM", 1980},
 | |
| {"WARN", 1981},
 | |
| {"WART", 1982},
 | |
| {"WAS", 546},
 | |
| {"WASH", 1983},
 | |
| {"WAST", 1984},
 | |
| {"WATS", 1985},
 | |
| {"WATT", 1986},
 | |
| {"WAVE", 1987},
 | |
| {"WAVY", 1988},
 | |
| {"WAY", 547},
 | |
| {"WAYS", 1989},
 | |
| {"WE", 548},
 | |
| {"WEAK", 1990},
 | |
| {"WEAL", 1991},
 | |
| {"WEAN", 1992},
 | |
| {"WEAR", 1993},
 | |
| {"WEB", 549},
 | |
| {"WED", 550},
 | |
| {"WEE", 551},
 | |
| {"WEED", 1994},
 | |
| {"WEEK", 1995},
 | |
| {"WEIR", 1996},
 | |
| {"WELD", 1997},
 | |
| {"WELL", 1998},
 | |
| {"WELT", 1999},
 | |
| {"WENT", 2000},
 | |
| {"WERE", 2001},
 | |
| {"WERT", 2002},
 | |
| {"WEST", 2003},
 | |
| {"WET", 552},
 | |
| {"WHAM", 2004},
 | |
| {"WHAT", 2005},
 | |
| {"WHEE", 2006},
 | |
| {"WHEN", 2007},
 | |
| {"WHET", 2008},
 | |
| {"WHO", 553},
 | |
| {"WHOA", 2009},
 | |
| {"WHOM", 2010},
 | |
| {"WHY", 554},
 | |
| {"WICK", 2011},
 | |
| {"WIFE", 2012},
 | |
| {"WILD", 2013},
 | |
| {"WILL", 2014},
 | |
| {"WIN", 555},
 | |
| {"WIND", 2015},
 | |
| {"WINE", 2016},
 | |
| {"WING", 2017},
 | |
| {"WINK", 2018},
 | |
| {"WINO", 2019},
 | |
| {"WIRE", 2020},
 | |
| {"WISE", 2021},
 | |
| {"WISH", 2022},
 | |
| {"WIT", 556},
 | |
| {"WITH", 2023},
 | |
| {"WOK", 557},
 | |
| {"WOLF", 2024},
 | |
| {"WON", 558},
 | |
| {"WONT", 2025},
 | |
| {"WOO", 559},
 | |
| {"WOOD", 2026},
 | |
| {"WOOL", 2027},
 | |
| {"WORD", 2028},
 | |
| {"WORE", 2029},
 | |
| {"WORK", 2030},
 | |
| {"WORM", 2031},
 | |
| {"WORN", 2032},
 | |
| {"WOVE", 2033},
 | |
| {"WOW", 560},
 | |
| {"WRIT", 2034},
 | |
| {"WRY", 561},
 | |
| {"WU", 562},
 | |
| {"WYNN", 2035},
 | |
| {"YALE", 2036},
 | |
| {"YAM", 563},
 | |
| {"YANG", 2037},
 | |
| {"YANK", 2038},
 | |
| {"YAP", 564},
 | |
| {"YARD", 2039},
 | |
| {"YARN", 2040},
 | |
| {"YAW", 565},
 | |
| {"YAWL", 2041},
 | |
| {"YAWN", 2042},
 | |
| {"YE", 566},
 | |
| {"YEA", 567},
 | |
| {"YEAH", 2043},
 | |
| {"YEAR", 2044},
 | |
| {"YELL", 2045},
 | |
| {"YES", 568},
 | |
| {"YET", 569},
 | |
| {"YOGA", 2046},
 | |
| {"YOKE", 2047},
 | |
| {"YOU", 570}
 | |
| };
 |