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