Browse Source

Removing ancient scsi experiment and obsolete spelling/dictionary tools

Signed-off-by: Álvaro Jurado <elbingmiss@gmail.com>
Álvaro Jurado 6 years ago
parent
commit
d8c0151af9
54 changed files with 0 additions and 47544 deletions
  1. 0 96
      sys/man/1/spell
  2. 0 163
      sys/man/7/dict
  3. 0 413
      sys/man/8/scuzz
  4. 0 148
      sys/src/cmd/dict/ahd.c
  5. 0 29
      sys/src/cmd/dict/canonind.awk
  6. 0 56
      sys/src/cmd/dict/comfix.awk
  7. 0 684
      sys/src/cmd/dict/dict.c
  8. 0 172
      sys/src/cmd/dict/dict.h
  9. 0 15
      sys/src/cmd/dict/egfix
  10. 0 8
      sys/src/cmd/dict/egfix2
  11. 0 123
      sys/src/cmd/dict/fromemf
  12. 0 1117
      sys/src/cmd/dict/gb2312.c
  13. 0 23
      sys/src/cmd/dict/gefix
  14. 0 8
      sys/src/cmd/dict/getneeds
  15. 0 1068
      sys/src/cmd/dict/jis208.c
  16. 0 123
      sys/src/cmd/dict/kuten.h
  17. 0 23
      sys/src/cmd/dict/mkfile
  18. 0 115
      sys/src/cmd/dict/mkindex.c
  19. 0 23
      sys/src/cmd/dict/mkroget
  20. 0 333
      sys/src/cmd/dict/movie.c
  21. 0 1434
      sys/src/cmd/dict/oed.c
  22. 0 235
      sys/src/cmd/dict/pcollins.c
  23. 0 257
      sys/src/cmd/dict/pcollinsg.c
  24. 0 1170
      sys/src/cmd/dict/pgw.c
  25. 0 6
      sys/src/cmd/dict/rev.awk
  26. 0 321
      sys/src/cmd/dict/robert.c
  27. 0 156
      sys/src/cmd/dict/roget.c
  28. 0 55
      sys/src/cmd/dict/simple.c
  29. 0 212
      sys/src/cmd/dict/slang.c
  30. 0 13
      sys/src/cmd/dict/t.awk
  31. 0 95
      sys/src/cmd/dict/thesaurus.c
  32. 0 559
      sys/src/cmd/dict/utils.c
  33. 0 193
      sys/src/cmd/dict/world.c
  34. 0 168
      sys/src/cmd/scuzz/cdaudio.c
  35. 0 228
      sys/src/cmd/scuzz/cdr.c
  36. 0 71
      sys/src/cmd/scuzz/changer.c
  37. 0 15
      sys/src/cmd/scuzz/mkfile
  38. 0 54
      sys/src/cmd/scuzz/mo.words
  39. 0 765
      sys/src/cmd/scuzz/scsireq.c
  40. 0 160
      sys/src/cmd/scuzz/scsireq.h
  41. 0 1967
      sys/src/cmd/scuzz/scuzz.c
  42. 0 53
      sys/src/cmd/scuzz/sense.c
  43. 0 416
      sys/src/cmd/spell/american
  44. BIN
      sys/src/cmd/spell/amspell
  45. 0 411
      sys/src/cmd/spell/british
  46. BIN
      sys/src/cmd/spell/brspell
  47. 0 37
      sys/src/cmd/spell/code.h
  48. 0 29383
      sys/src/cmd/spell/list
  49. 0 840
      sys/src/cmd/spell/local
  50. 0 46
      sys/src/cmd/spell/mkfile
  51. 0 345
      sys/src/cmd/spell/pcode.c
  52. 0 21
      sys/src/cmd/spell/spell.rc
  53. 0 1386
      sys/src/cmd/spell/sprog.c
  54. 0 1732
      sys/src/cmd/spell/stop

+ 0 - 96
sys/man/1/spell

@@ -1,96 +0,0 @@
-.TH SPELL 1
-.SH NAME
-spell, sprog \- find spelling errors
-.SH SYNOPSIS
-.B spell
-[
-.I options
-]
-\&...
-[
-.I file
-]
-\&...
-.PP
-.B aux/sprog
-[
-.I options
-]
-[
-.B -f
-.I file
-]
-.SH DESCRIPTION
-.I Spell
-looks up words from the named
-.I files
-(standard input default)
-in a spelling list and places
-possible misspellings\(emwords 
-not sanctioned there\(emon the standard output.
-.PP
-.I Spell
-ignores constructs of
-.IR troff (1)
-and its standard preprocessors.
-It understands these options:
-.TP
-.B -b
-Check British spelling.
-.TP
-.B -v
-Print all words not literally in the spelling list, with
-derivations.
-.TP
-.B -x
-Print on standard error, marked with
-.LR = ,
-every stem as it is looked up in the spelling list,
-along with its affix classes.
-.PP
-As a matter of policy, 
-.I spell
-does not admit multiple spellings of the same word.
-Variants that follow general rules are preferred
-over those that don't, even when the unruly spelling is
-more common.
-Thus, in American usage, `modelled', `sizeable', and `judgment' are
-rejected in favor of `modeled', `sizable', and `judgement'.
-Agglutinated variants are shunned: `crewmember' and `backyard'
-cede to `crew member' and  `back yard' (noun) or `back-yard' 
-(adjective).
-.SH FILES
-.TF \fL/sys/lib/brspell
-.TP
-.B /sys/lib/amspell
-American spelling list
-.TP
-.B /sys/lib/brspell
-British spelling list
-.TP
-.B /bin/aux/sprog
-The actual spelling checker.
-It expects one word per line on standard input,
-and takes the same arguments as
-.IR spell .
-.SH SOURCE
-.TF /sys/src/cmd/spell
-.TP
-.B /rc/bin/spell
-the script
-.TP
-.B /sys/src/cmd/spell
-source for
-.I sprog
-.SH SEE ALSO
-.IR deroff (1)
-.SH BUGS
-The heuristics of
-.IR deroff (1)
-used to excise formatting information are imperfect.
-.PP
-The spelling list's coverage is uneven;
-in particular biology, medicine, and chemistry, and
-perforce proper names,
-not to mention languages other than English,
-are covered very lightly.

+ 0 - 163
sys/man/7/dict

@@ -1,163 +0,0 @@
-.TH DICT 7
-.SH NAME
-dict \- dictionary browser
-.SH SYNOPSIS
-.B dict
-[
-.B -k
-]
-[
-.B -d
-.I dictname
-]
-[
-.B -c
-.I command
-]
-[
-.I pattern
-]
-.SH DESCRIPTION
-.I Dict
-is a dictionary browser.
-If a
-.I pattern
-is given on the command line,
-.I dict
-prints all matching entries;
-otherwise it repeatedly accepts and executes commands.
-The options are
-.TF -d\ \fIdictname\fP
-.TP
-.BI -d " dictname"
-Use the given dictionary.
-The default is
-.BR oed ,
-the second edition of the Oxford English Dictionary.
-A list of available dictionaries is printed by option
-.BR -d? .
-.TP
-.BI -c " command"
-Execute one command and quit.
-The command syntax is described below.
-.TP
-.B -k
-Print a pronunciation key.
-.PD
-.PP
-Patterns are regular expressions (see
-.IR regexp (6)),
-with an implicit leading
-.L ^
-and trailing
-.LR $ .
-Patterns are matched against an index of headwords and variants,
-to form a `match set'.
-By default, both patterns and the index are folded:
-upper case characters are mapped into their lower case equivalents,
-and accented characters are mapped into their base
-equivalents.
-In interactive mode, there is always a `current match set'
-and a `current entry' within the match set.
-Commands can change either or both, as well as print the entries
-or information about them.
-.PP
-Commands have an address followed by a command letter.
-Addresses have the form:
-.TF /\fIre\fP/.\fIn\fP
-.TP
-.BI / re /
-Set the match set to all entries matching the regular expression
-.IR re ,
-sorted in dictionary order.
-Set the current entry to the first of the match set.
-.TP
-.BI ! re !
-Like
-.BI / re /
-but use exact matching, i.e., without case and accent folding.
-.TP
-.I n
-An integer
-.I n
-means change the current entry to the
-.IR n th
-of the current match set.
-.TP
-.BI # n
-The integer
-.I n
-is an absolute byte offset into the raw dictionary.
-(See the
-.B A
-command, below.)
-.TP
-.IB addr +
-After setting the match set and current entry according to
-.IR addr ,
-change the match set and current entry to be the next entry
-in the dictionary (not necessarily in the match set) after
-the current entry.
-.TP
-.IB addr -
-Like
-.IB addr +
-but go to previous dictionary entry.
-.PD
-.PP
-The command letters come in pairs: a lower case and the
-corresponding upper case letter.
-The lower case version prints something about the current
-entry only, and advances the current entry to the next
-in the match set (wrapping around to the beginning after
-the last).
-The upper case version prints something about all of the
-match set and resets the current entry to the beginning of
-the set.
-.TF \fLa,A\fP
-.TP
-.BR p , P
-Print the whole entry.
-.TP
-.BR h , H
-Print only the headword(s) of the entry.
-.TP
-.BR a , A
-Print the dictionary byte offset of the entry.
-.TP
-.BR r , R
-Print the whole entry in raw format (without translating
-special characters, etc.).
-.PD
-.PP
-If no command letter is given for the first command,
-.B H
-is assumed.
-After an
-.BR H ,
-the default command is
-.BR p .
-Otherwise, the default command is the previous command.
-.SH FILES
-.B /lib/dict/oed2
-.br
-.B /lib/dict/oed2index
-.br
-Other files in
-.BR /lib .
-.SH "SEE ALSO"
-.IR regexp (6)
-.SH SOURCE
-.B /sys/src/cmd/dict
-.SH BUGS
-A font with wide coverage of the Unicode Standard
-should be used for best results.
-(Try
-.BR /lib/font/bit/pelm/unicode.9.font .)
-.br
-If the
-.I pattern
-doesn't begin with
-a few literal characters, matching takes a long time.
-.br
-The dictionaries are not distributed outside Bell Labs.

+ 0 - 413
sys/man/8/scuzz

@@ -1,413 +0,0 @@
-.TH SCUZZ 8
-.SH NAME
-scuzz \- SCSI target control
-.SH SYNOPSIS
-.B scuzz
-[
-.B -6eq
-] [
-.B -m
-.I max-xfer
-] [
-[
-.B -r
-]
-.I sddev
-]
-.SH DESCRIPTION
-.I Scuzz
-is an interactive program for exercising
-raw SCSI devices.
-Its intended purpose is to investigate and manipulate
-odd devices without the effort of writing a special driver,
-such as shuffling the media around on an optical jukebox.
-It reads commands from standard input and applies them to a SCSI target
-(other devices accessed through the
-.IR sd (3)
-interface,
-such as ATA(PI) devices,
-may also work).
-If
-.I sddev
-is given on the command line, an
-.B open
-(see below)
-is immediately applied to the target.
-On successful completion of a command,
-.BI ok " n
-is printed, where
-.I n
-is the number of bytes transferred to/from the target;
-the
-.B -q
-command line option suppresses the
-.B ok
-message.
-.LP
-The
-.B -6
-forces the use of 6-byte SCSI commands rather than 10-byte ones.
-Some older devices require this, though
-.I scuzz
-attempts to adapt automatically.
-The
-.B -e
-makes
-.I scuzz
-more willing to retry I/O errors but less tolerant of other errors
-and implies
-.BR -6 .
-This option is often needed to read Exabyte 8mm tapes.
-The
-.B -m
-option sets the maximum I/O transfer size to
-.IR max-xfer .
-Exabyte drives often require this to be 1024 or the exact tape block size
-and some 4mm drives require this to be the exact tape block size or larger.
-.SS Commands
-.TF "inquiry"
-.PD
-.TP
-.BI help " command
-.B Help
-is rudimentary and prints a one line synopsis for the named
-.IR command ,
-or for all commands if no argument is given.
-.TP
-.B probe
-.B Probe
-attempts an
-.B inquiry
-command on all SCSI units,
-and prints the result preceded by the name of those
-targets which respond.
-.LP
-The
-.B help
-and
-.B probe
-commands may be given at any time.
-.TF "inquiry"
-.PD
-.TP
-.BI open\ [ -r ] sddev
-.B Open
-must be given before any of the remaining commands will be accepted.
-Internally,
-unless the
-.B -r
-option is given,
-.B open
-issues
-.B ready
-then
-.BR inquiry ,
-followed by a device class-specific command to determine the
-logical block size of the target.
-.I Sddev
-is an
-.IR sd (3)
-device directory like
-.IR /dev/sdC0 .
-.TP
-.B close
-.B Close
-need only be given if another target is to be opened in the current
-session.
-.LP
-The remaining commands are in rough groups,
-intended for specific classes of device.
-With the exception of the
-.BR read ,
-.BR write ,
-and
-.B space
-commands,
-all arguments are in the style of ANSI-C integer constants.
-.TF "inquiry"
-.PD
-.TP
-.B ready
-Test Unit Ready
-checks if the unit is powered up and ready to do
-.B read
-and
-.B write
-commands.
-.TP
-.B rezero
-Rezero
-Unit requests that a disk be brought to a known state,
-usually by seeking to track zero.
-.TP
-.B rewind
-.B Rewind
-positions a tape at the beginning of current partition
-(there is usually only one partition, the beginning of tape).
-.TP
-.B reqsense
-Request Sense retrieves Sense Data concerning an error or
-other condition and is usually issued following the completion of a command
-that had check-condition status.
-.I Scuzz
-automatically issues a
-.B reqsense
-in response to a check-condition status and prints the result.
-.TP
-.B format
-Format
-Unit performs a ``low level'' format of a disk.
-.TP
-.B rblimits
-Read Block Limits
-reports the possible block lengths for the logical unit. Tapes only.
-.TP
-.BI read " file nbytes
-.B Read
-transfers data from the target to the host.
-A missing
-.I nbytes
-causes the entire device to be read.
-.TP
-.BI write " file nbytes
-.B Write
-transfers data from the host to the target.
-A missing
-.I nbytes
-causes the entire input file to be transferred.
-.IP
-The first argument to the
-.BR read
-and
-.BR write
-commands specifies a source
-.RB ( write )
-or destination
-.RB ( read )
-for the I/O.
-The argument is either a plain file name or
-.B |
-followed by a command to be executed by
-.IR rc (1).
-The argument may be quoted in the style of
-.IR rc (1).
-.TP
-.BI seek " offset whence
-.B Seek
-requests the target to seek to a position on a disk,
-arguments being in the style of
-.IR seek (2);
-.I whence
-is 0 by default.
-.IP
-.I Scuzz
-maintains an internal notion of where the current target
-is positioned.
-The
-.BR seek ,
-.BR read ,
-.BR write ,
-.BR rewind ,
-.BR rezero ,
-and
-.B wtrack
-commands all manipulate the internal offset.
-.TP
-.BI filemark " howmany
-Write Filemarks
-writes one (default) or more filemarks on a tape.
-.TP
-.BI space\ [ -b ]\ [ -f ]\ [[ "--\fP]\fIhowmany\fP]"
-.B Space
-positions a tape forwards or backwards.
-The arguments
-specify logical block
-.RB ( -b )
-or
-filemark
-.RB ( -f )
-spacing;
-default is
-.BR -b .
-If
-.I howmany
-is negative
-it specifies spacing backwards,
-and should be preceded by
-.B --
-to turn off any further
-option processing.
-Default is 1.
-.TP
-.B inquiry
-.B Inquiry
-is issued to determine the device type of a particular target,
-and to determine some basic information about the implemented options and
-the product name.
-.TP
-.BI modeselect bytes...
-.TP
-.BI modeselect6 bytes...
-Mode
-Select
-is issued to set variable parameters in the target.
-.I Bytes
-given as arguments comprise all the data for the target;
-see an appropriate manual for the format.
-The default is the 10-byte form of the command;
-modeselect6 is the 6-byte version.
-.TP
-.BI modesense\ [ page [ nbytes ]]
-.TP
-.BI modesense6\ [ page [ nbytes ]]
-Mode
-Sense
-reports variable and fixed parameters from the target.
-If no
-.I page
-is given,
-all pages are returned.
-.I Nbytes
-specifies how many bytes should be returned.
-The default is the 10-byte form of the command;
-modesense6 is the 6-byte version.
-.TP
-.BI start\ [ code ]
-.TP
-.BI stop\ [ code ]
-.TP
-.BI eject\ [ code ]
-.TP
-.BI ingest\ [ code ]
-.BR Start ,
-.BR stop ,
-.BR eject ,
-and
-.B ingest
-are synonyms for Start/Stop Unit with different default values of
-.IR code .
-Start/Stop Unit is typically used to spin up and spin down a rotating
-disk drive.
-.I Code
-is 0 to stop,
-1 to start and
-3 to eject (if the device supports ejection of the medium).
-.TP
-.B capacity
-Read Capacity reports the number of blocks and the block
-size of a disk.
-.LP
-The following commands are specific to CD and CD-R/RW devices.
-A brief description of each is given; see the SCSI-3
-Multimedia Commands (MMC) Specification for details of arguments
-and interpretation of the results.
-.TF "inquiry"
-.PD
-.TP
-.BI blank\ [ track/LBA [ type ]]
-Erase a CD-RW disk.
-Type identifies the method and coverage of the blanking.
-.TP
-.BI rtoc\ [ track/session-number [ ses ]]
-The Read TOC/PMA command transfers data from one of the tables of contents
-(TOC or PMA) on the CD medium.
-.TP
-.B rdiscinfo
-(Note the spelling.)
-Provides information about disks, including incomplete CD-R/RW.
-.TP
-.BI rtrackinfo\ [ track ]
-Provides information about a track, regardless of its status.
-.TP
-.B cdpause
-.TP
-.B cdresume
-Pause/resume playback.
-.TP
-.B cdstop
-Stop playback.
-.TP
-.BI cdplay\ [ track-number ]\ or\ [ -r [ "LBA\fP[\fIlength\fP]]]"
-Play audio.
-With no arguments, starts at the beginning of the medium.
-If a track number is given, the table of contents is read
-to find the playback start point.
-If the
-.B -r
-option is given, block addressing is used to find the
-playback start point.
-.TP
-.BI cdload\ [ slot ]
-.TP
-.BI cdunload\ [ slot ]
-Load/unload a disk from a changer.
-.TP
-.B cdstatus
-Read the mechanism status.
-.LP
-The following commands are specific to Media Changer devices.
-A brief description of each is given; see the SCSI-3
-Medium Changer Commands (SMC) Specification for details of arguments.
-.TF "inquiry"
-.PD
-.TP
-.B einit
-Initialize element status.
-.TP
-.BI "estatus " "type " [ length ]
-Report the status of the internal elements.
-Type 0 reports all element types.
-.TP
-.BI "mmove " transport\ source\ destination [ invert ]
-Move medium.
-.SH FILES
-.TF /dev/sdXX/raw
-.TP
-.B /dev/\fIsdXX\fP/raw
-raw SCSI interface for command, I/O, and status.
-.SH SOURCE
-.B /sys/src/cmd/scuzz
-.SH "SEE ALSO"
-.IR sd (3)
-.br
-.IR "Small Computer System Interface - 2 (X3T9.2/86-109)" ,
-Global Engineering Documents
-.br
-.IR "SCSI Bench Reference" ,
-ENDL Publications
-.br
-.IR "SCSI-3 Multimedia Commands (MMC) Specification" ,
-www.t10.org
-.br
-.IR "SCSI-3 Medium Changer Commands (SMC) Specification" ,
-www.t10.org
-.SH BUGS
-Only a limited subset of SCSI commands has been implemented (as needed).
-.LP
-Only one target can be open at a time.
-.LP
-LUNs other than 0 are not supported.
-.LP
-No way to force 10-byte commands, though they are the default.
-.LP
-Should be recoded to use
-.IR scsi (2)
-in order to get more complete sense code descriptions.
-.LP
-.I Scuzz
-betrays its origins by spelling
-.B rdiscinfo
-with a
-.B c
-even though the devices it manipulates are spelled with a
-.BR k .
-.LP
-The
-.I max-xfer
-value is currently limited to 245760
-to limit kernel memory consumption.
-.LP
-It may be necessary to set
-.I max-xfer
-to exactly the block size used to write a tape
-in order to read it on some drives.

+ 0 - 148
sys/src/cmd/dict/ahd.c

@@ -1,148 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-/*
- * American Heritage Dictionary (encrypted)
- */
-
-static Rune intab[256] = {
-	[0x82] = L'é',
-	[0x85] = L'à',
-	[0x89] = L'ë',
-	[0x8a] = L'è',
-	[0xa4] = L'ñ',
-	[0xf8] = L'°',
-	[0xf9] = L'·',
-};
-
-static char	tag[64];
-
-enum{
-	Run, Openper, Openat, Closeat
-};
-
-void
-ahdprintentry(Entry e, int cmd)
-{
-	static int inited;
-	int32_t addr;
-	char *p, *t = tag;
-	int obreaklen;
-	int c, state = Run;
-
-	if(!inited){
-		for(c=0; c<256; c++)
-			if(intab[c] == 0)
-				intab[c] = c;
-		inited = 1;
-	}
-	obreaklen = breaklen;
-	breaklen = 80;
-	addr = e.doff;
-	for(p=e.start; p<e.end; p++){
-		c = intab[(*p ^ (addr++>>1))&0xff];
-		switch(state){
-		case Run:
-			if(c == '%'){
-				t = tag;
-				state = Openper;
-				break;
-			}
-		Putchar:
-			if(c == '\n')
-				outnl(0);
-			else if(c < Runeself)
-				outchar(c);
-			else
-				outrune(c);
-			break;
-
-		case Openper:
-			if(c == '@')
-				state = Openat;
-			else{
-				outchar('%');
-				state = Run;
-				goto Putchar;
-			}
-			break;
-
-		case Openat:
-			if(c == '@')
-				state = Closeat;
-			else if(t < &tag[sizeof tag-1])
-				*t++ = c;
-			break;
-
-		case Closeat:
-			if(c == '%'){
-				*t = 0;
-				switch(cmd){
-				case 'h':
-					if(strcmp("EH", tag) == 0)
-						goto out;
-					break;
-				case 'r':
-					outprint("%%@%s@%%", tag);
-					break;
-				}
-				state = Run;
-			}else{
-				if(t < &tag[sizeof tag-1])
-					*t++ = '@';
-				if(t < &tag[sizeof tag-1])
-					*t++ = c;
-				state = Openat;
-			}
-			break;
-		}
-	}
-out:
-	outnl(0);
-	breaklen = obreaklen;
-}
-
-int32_t
-ahdnextoff(int32_t fromoff)
-{
-	static char *patterns[] = { "%@NL@%", "%@2@%", 0 };
-	int c, k = 0, state = 0;
-	char *pat = patterns[0];
-	int32_t defoff = -1;
-
-	if(Bseek(bdict, fromoff, 0) < 0)
-		return -1;
-	while((c = Bgetc(bdict)) >= 0){
-		c ^= (fromoff++>>1)&0xff;
-		if(c != pat[state]){
-			state = 0;
-			continue;
-		}
-		if(pat[++state])
-			continue;
-		if(pat = patterns[++k]){
-			state = 0;
-			defoff = fromoff-6;
-			continue;
-		}
-		return fromoff-5;
-	}
-	return defoff;
-}
-
-void
-ahdprintkey(void)
-{
-	Bprint(bout, "No pronunciations.\n");
-}

+ 0 - 29
sys/src/cmd/dict/canonind.awk

@@ -1,29 +0,0 @@
-# turn output of mkindex into form needed by dict
-BEGIN {
-	if(ARGC != 2) {
-		print "Usage: awk -F'	' -f canonind.awk rawindex > index"
-		exit 1
-	}
-	file = ARGV[1]
-	ARGV[1] = ""
-	while ((getline < file) > 0) {
-		for(i = 2; i <= NF; i++) {
-			w = $i
-			if(length(w) == 0)
-				continue
-			b = index(w, "(")
-			e = index(w, ")")
-			if(b && e && b < e) {
-				w1 = substr(w, 1, b-1)
-				w2 = substr(w, b+1, e-b-1)
-				w3 =  substr(w, e+1)
-				printf "%s%s\t%d\n", w1, w3, $1 > "junk"
-				printf "%s%s%s\t%d\n", w1, w2, w3, $1 > "junk"
-			} else
-				printf "%s\t%d\n", w, $1 > "junk"
-		}
-	}
-	system("sort -u -t'	' +0f -1 +0 -1 +1n -2 < junk")
-	system("rm junk")
-	exit 0
-}

+ 0 - 56
sys/src/cmd/dict/comfix.awk

@@ -1,56 +0,0 @@
-# when raw index has a lot of entries like
-# 1578324	problematico, a, ci, che
-# apply this algorithm:
-#  treat things after comma as suffixes
-#  for each suffix:
-#      if single letter, replace last letter
-#      else search backwards for beginning of suffix
-#      and if it leads to an old suffix of approximately
-#      the same length, put replace that suffix
-# This will still leave some commas to fix by hand
-# Usage: awk -F'	' -f comfix.awk rawindex > newrawindex
-
-NF == 2	{
-		i = index($2, ",")
-		if(i == 0 || length($2) == 0)
-			print $0
-		else {
-			n = split($2, a, /,[ ]*/)
-			w = a[1]
-			printf "%s\t%s\n", $1, w
-			for(i = 2; i <= n; i++) {
-				suf = a[i]
-				m = matchsuflen(w, suf)
-				if(m) {
-					nw = substr(w, 1, length(w)-m) suf
-					printf "%s\t%s\n", $1, nw
-				} else
-					printf "%s\t%s\n", $1, w ", " suf
-			}
-		}
-	}
-NF != 2 {
-	print $0
-	}
-
-function matchsuflen(w, suf,		wlen,suflen,c,pat,k,d)
-{
-	wlen = length(w)
-	suflen = length(suf)
-	if(suflen == 1)
-		return 1
-	else {
-		c = substr(suf, 1, 1)
-		for (k = 1; k <= wlen ; k++)
-			if(substr(w, wlen-k+1, 1) == c)
-				break
-		if(k > wlen)
-			return 0
-		d = k-suflen
-		if(d < 0)
-			d = -d
-		if(d > 3)
-			return 0
-		return k
-	}
-}

+ 0 - 684
sys/src/cmd/dict/dict.c

@@ -1,684 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include <regexp.h>
-#include <ctype.h>
-#include "dict.h"
-
-/*
- * Assumed index file structure: lines of form
- * 	[^\t]+\t[0-9]+
- * First field is key, second is byte offset into dictionary.
- * Should be sorted with args -u -t'	' +0f -1 +0 -1 +1n -2
- */
-typedef struct Addr Addr;
-
-struct Addr {
-	int	n;		/* number of offsets */
-	int	cur;		/* current position within doff array */
-	int	maxn;		/* actual current size of doff array */
-	uint32_t	doff[1];	/* doff[maxn], with 0..n-1 significant */
-};
-
-Biobuf	binbuf;
-Biobuf	boutbuf;
-Biobuf	*bin = &binbuf;		/* user cmd input */
-Biobuf	*bout = &boutbuf;	/* output */
-Biobuf	*bdict;			/* dictionary */
-Biobuf	*bindex;		/* index file */
-int32_t	indextop;		/* index offset at end of file */
-int	lastcmd;		/* last executed command */
-Addr	*dot;			/* "current" address */
-Dict	*dict;			/* current dictionary */
-int	linelen;
-int	breaklen = 60;
-int	outinhibit;
-int	debug;
-
-void	execcmd(int);
-int	getpref(char*, Rune*);
-Entry	getentry(int);
-int	getfield(Rune*);
-int32_t	locate(Rune*);
-int	parseaddr(char*, char**);
-int	parsecmd(char*);
-int	search(char*, int);
-int32_t	seeknextline(Biobuf*, int32_t);
-void	setdotnext(void);
-void	setdotprev(void);
-void	sortaddr(Addr*);
-void	usage(void);
-
-enum {
-	Plen=300,	/* max length of a search pattern */
-	Fieldlen=200,	/* max length of an index field */
-	Aslots=10,	/* initial number of slots in an address */
-};
-
-void
-main(int argc, char **argv)
-{
-	int i, cmd, kflag;
-	char *line, *p;
-
-	Binit(&binbuf, 0, OREAD);
-	Binit(&boutbuf, 1, OWRITE);
-	kflag = 0;
-	line = 0;
-	dict = 0;
-	for(i=0; dicts[i].name; i++){
-		if(access(dicts[i].path, 0)>=0 && access(dicts[i].indexpath, 0)>=0){
-			dict = &dicts[i];
-			break;
-		}
-	}
-	ARGBEGIN {
-		case 'd':
-			p = ARGF();
-			dict = 0;
-			if(p) {
-				for(i=0; dicts[i].name; i++)
-					if(strcmp(p, dicts[i].name)==0) {
-						dict = &dicts[i];
-						break;
-					}
-			}
-			if(!dict)
-				usage();
-			break;
-		case 'c':
-			line = ARGF();
-			if(!line)
-				usage();
-			break;
-		case 'k':
-			kflag++;
-			break;
-		case 'D':
-			debug++;
-			break;
-		default:
-			usage();
-	ARGEND }
-	if(dict == 0){
-		err("no dictionaries present on this system");
-		exits("nodict");
-	}
-
-	if(kflag) {
-		(*dict->printkey)();
-		exits(0);
-	}
-	if(argc > 1)
-		usage();
-	else if(argc == 1) {
-		if(line)
-			usage();
-		p = argv[0];
-		line = malloc(strlen(p)+5);
-		sprint(line, "/%s/P\n", p);
-	}
-	bdict = Bopen(dict->path, OREAD);
-	if(!bdict) {
-		err("can't open dictionary %s", dict->path);
-		exits("nodict");
-	}
-	bindex = Bopen(dict->indexpath, OREAD);
-	if(!bindex) {
-		err("can't open index %s", dict->indexpath);
-		exits("noindex");
-	}
-	indextop = Bseek(bindex, 0L, 2);
-
-	dot = malloc(sizeof(Addr)+(Aslots-1)*sizeof(ulong));
-	dot->n = 0;
-	dot->cur = 0;
-	dot->maxn = Aslots;
-	lastcmd = 0;
-
-	if(line) {
-		cmd = parsecmd(line);
-		if(cmd)
-			execcmd(cmd);
-	} else {
-		for(;;) {
-			Bprint(bout, "*");
-			Bflush(bout);
-			line = Brdline(bin, '\n');
-			linelen = 0;
-			if(!line)
-				break;
-			cmd = parsecmd(line);
-			if(cmd) {
-				execcmd(cmd);
-				lastcmd = cmd;
-			}
-		}
-	}
-	exits(0);
-}
-
-void
-usage(void)
-{
-	int i;
-	char *a, *b;
-
-	Bprint(bout, "Usage: %s [-d dict] [-k] [-c cmd] [word]\n", argv0);
-	Bprint(bout, "dictionaries (brackets mark dictionaries not present on this system):\n");
-	for(i = 0; dicts[i].name; i++){
-		a = b = "";
-		if(access(dicts[i].path, 0)<0 || access(dicts[i].indexpath, 0)<0){
-			a = "[";
-			b = "]";
-		}
-		Bprint(bout, "   %s%s\t%s%s\n", a, dicts[i].name, dicts[i].desc, b);
-	}
-	exits("usage");
-}
-
-int
-parsecmd(char *line)
-{
-	char *e;
-	int cmd, ans;
-
-	if(parseaddr(line, &e) >= 0)
-		line = e;
-	else
-		return 0;
-	cmd = *line;
-	ans = cmd;
-	if(isupper(cmd))
-		cmd = tolower(cmd);
-	if(!(cmd == 'a' || cmd == 'h' || cmd == 'p' || cmd == 'r' ||
-	     cmd == '\n')) {
-		err("unknown command %c", cmd);
-		return 0;
-	}
-	if(cmd == '\n')
-		switch(lastcmd) {
-			case 0:	ans = 'H'; break;
-			case 'H':	ans = 'p'; break;
-			default :	ans = lastcmd; break;
-		}
-	else if(line[1] != '\n' && line[1] != 0)
-		err("extra stuff after command %c ignored", cmd);
-	return ans;
-}
-
-void
-execcmd(int cmd)
-{
-	Entry e;
-	int cur, doall;
-
-	if(isupper(cmd)) {
-		doall = 1;
-		cmd = tolower(cmd);
-		cur = 0;
-	} else {
-		doall = 0;
-		cur = dot->cur;
-	}
-
-	if(debug && doall && cmd == 'a')
-		Bprint(bout, "%d entries, cur=%d\n", dot->n, cur+1);
-	for(;;){
-		if(cur >= dot->n)
-			break;
-		if(doall) {
-			Bprint(bout, "%d\t", cur+1);
-			linelen += 4 + (cur >= 10);
-		}
-		switch(cmd) {
-		case 'a':
-			Bprint(bout, "#%lu\n", dot->doff[cur]);
-			break;
-		case 'h':
-		case 'p':
-		case 'r':
-			e = getentry(cur);
-			(*dict->printentry)(e, cmd);
-			break;
-		}
-		cur++;
-		if(doall) {
-			if(cmd == 'p' || cmd == 'r') {
-				Bputc(bout, '\n');
-				linelen = 0;
-			}
-		} else
-			break;
-	}
-	if(cur >= dot->n)
-		cur = 0;
-	dot->cur = cur;
-}
-
-/*
- * Address syntax: ('.' | '/' re '/' | '!' re '!' | number | '#' number) ('+' | '-')*
- * Answer goes in dot.
- * Return -1 if address starts, but get error.
- * Return 0 if no address.
- */
-int
-parseaddr(char *line, char **eptr)
-{
-	int delim, plen;
-	uint32_t v;
-	char *e;
-	char pat[Plen];
-
-	if(*line == '/' || *line == '!') {
-		/* anchored regular expression match; '!' means no folding */
-		if(*line == '/') {
-			delim = '/';
-			e = strpbrk(line+1, "/\n");
-		} else {
-			delim = '!';
-			e = strpbrk(line+1, "!\n");
-		}
-		plen = e-line-1;
-		if(plen >= Plen-3) {
-			err("pattern too big");
-			return -1;
-		}
-		pat[0] = '^';
-		memcpy(pat+1, line+1, plen);
-		pat[plen+1] = '$';
-		pat[plen+2] = 0;
-		if(*e == '\n')
-			line = e;
-		else
-			line = e+1;
-		if(!search(pat, delim == '/')) {
-			err("pattern not found");
-			return -1;
-		}
-	} else if(*line == '#') {
-		/* absolute byte offset into dictionary */
-		line++;
-		if(!isdigit(*line))
-			return -1;
-		v = strtoul(line, &e, 10);
-		line = e;
-		dot->doff[0] = v;
-		dot->n = 1;
-		dot->cur = 0;
-	} else if(isdigit(*line)) {
-		v = strtoul(line, &e, 10);
-		line = e;
-		if(v < 1 || v > dot->n)
-			err(".%d not in range [1,%d], ignored",
-				v, dot->n);
-		else
-			dot->cur = v-1;
-	} else if(*line == '.') {
-		line++;
-	} else {
-		*eptr = line;
-		return 0;
-	}
-	while(*line == '+' || *line == '-') {
-		if(*line == '+')
-			setdotnext();
-		else
-			setdotprev();
-		line++;
-	}
-	*eptr = line;
-	return 1;
-}
-
-/*
- * Index file is sorted by folded field1.
- * Method: find pre, a folded prefix of r.e. pat,
- * and then low = offset to beginning of
- * line in index file where first match of prefix occurs.
- * Then go through index until prefix no longer matches,
- * adding each line that matches real pattern to dot.
- * Finally, sort dot offsets (uniquing).
- * We know pat len < Plen, and that it is surrounded by ^..$
- */
-int
-search(char *pat, int dofold)
-{
-	int needre, prelen, match, n;
-	Reprog *re;
-	int32_t ioff, v;
-	Rune pre[Plen];
-	Rune lit[Plen];
-	Rune entry[Fieldlen];
-	char fpat[Plen];
-
-	prelen = getpref(pat+1, pre);
-	if(pat[prelen+1] == 0 || pat[prelen+1] == '$') {
-		runescpy(lit, pre);
-		if(dofold)
-			fold(lit);
-		needre = 0;
-		SET(re);
-	} else {
-		needre = 1;
-		if(dofold) {
-			foldre(fpat, pat);
-			re = regcomp(fpat);
-		} else
-			re = regcomp(pat);
-	}
-	fold(pre);
-	ioff = locate(pre);
-	if(ioff < 0)
-		return 0;
-	dot->n = 0;
-	Bseek(bindex, ioff, 0);
-	for(;;) {
-		if(!getfield(entry))
-			break;
-		if(dofold)
-			fold(entry);
-		if(needre)
-			match = rregexec(re, entry, 0, 0);
-		else
-			match = (acomp(lit, entry) == 0);
-		if(match) {
-			if(!getfield(entry))
-				break;
-			v = runetol(entry);
-			if(dot->n >= dot->maxn) {
-				n = 2*dot->maxn;
-				dot = realloc(dot,
-					sizeof(Addr)+(n-1)*sizeof(int32_t));
-				if(!dot) {
-					err("out of memory");
-					exits("nomem");
-				}
-				dot->maxn = n;
-			}
-			dot->doff[dot->n++] = v;
-		} else {
-			if(!dofold)
-				fold(entry);
-			if(*pre) {
-				n = acomp(pre, entry);
-				if(n < -1 || (!needre && n < 0))
-					break;
-			}
-			/* get to next index entry */
-			if(!getfield(entry))
-				break;
-		}
-	}
-	sortaddr(dot);
-	dot->cur = 0;
-	return dot->n;
-}
-
-/*
- * Return offset in index file of first line whose folded
- * first field has pre as a prefix.  -1 if none found.
- */
-int32_t
-locate(Rune *pre)
-{
-	int32_t top, bot, mid;
-	Rune entry[Fieldlen];
-
-	if(*pre == 0)
-		return 0;
-	bot = 0;
-	top = indextop;
-	if(debug>1)
-		fprint(2, "locate looking for prefix %S\n", pre);
-	for(;;) {
-		/*
-		 * Loop invariant: foldkey(bot) < pre <= foldkey(top)
-		 * and bot < top, and bot,top point at beginning of lines
-		 */
-		mid = (top+bot) / 2;
-		mid = seeknextline(bindex, mid);
-		if(debug > 1)
-			fprint(2, "bot=%ld, mid=%ld->%ld, top=%ld\n",
-				bot, (top+bot) / 2, mid, top);
-		if(mid == top || !getfield(entry))
-			break;
-		if(debug > 1)
-			fprint(2, "key=%S\n", entry);
-		/*
-		 * here mid is strictly between bot and top
-		 */
-		fold(entry);
-		if(acomp(pre, entry) <= 0)
-			top = mid;
-		else
-			bot = mid;
-	}
-	/*
-	 * bot < top, but they don't necessarily point at successive lines
-	 * Use linear search from bot to find first line that pre is a
-	 * prefix of
-	 */
-	while((bot = seeknextline(bindex, bot)) <= top) {
-		if(!getfield(entry))
-			return -1;
-		if(debug > 1)
-			fprint(2, "key=%S\n", entry);
-		fold(entry);
-		switch(acomp(pre, entry)) {
-		case -2:
-			return -1;
-		case -1:
-		case 0:
-			return bot;
-		case 1:
-		case 2:
-			continue;
-		}
-	}
-	return -1;
-
-}
-
-/*
- * Get prefix of non re-metacharacters, runified, into pre,
- * and return length
- */
-int
-getpref(char *pat, Rune *pre)
-{
-	int n, r;
-	char *p;
-
-	p = pat;
-	while(*p) {
-		n = chartorune(pre, p);
-		r = *pre;
-		switch(r) {
-		case L'.': case L'*': case L'+': case L'?':
-		case L'[': case L']': case L'(': case ')':
-		case L'|': case L'^': case L'$':
-			*pre = 0;
-			return p-pat;
-		case L'\\':
-			p += n;
-			p += chartorune(++pre, p);
-			pre++;
-			break;
-		default:
-			p += n;
-			pre++;
-		}
-	}
-	return p-pat;
-}
-
-int32_t
-seeknextline(Biobuf *b, int32_t off)
-{
-	int32_t c;
-
-	Bseek(b, off, 0);
-	do {
-		c = Bgetrune(b);
-	} while(c>=0 && c!='\n');
-	return Boffset(b);
-}
-
-/*
- * Get next field out of index file (either tab- or nl- terminated)
- * Answer in *rp, assumed to be Fieldlen long.
- * Return 0 if read error first.
- */
-int
-getfield(Rune *rp)
-{
-	int32_t c;
-	int n;
-
-	for(n=Fieldlen; n-- > 0; ) {
-		if ((c = Bgetrune(bindex)) < 0)
-			return 0;
-		if(c == '\t' || c == '\n') {
-			*rp = L'\0';
-			return 1;
-		}
-		*rp++ = c;
-	}
-	err("word too long");
-	return 0;
-}
-
-/*
- * A compare longs function suitable for qsort
- */
-static int
-longcmp(const void *av, const void *bv)
-{
-	int32_t v;
-	int32_t *a, *b;
-
-	a = av;
-	b = bv;
-
-	v = *a - *b;
-	if(v < 0)
-		return -1;
-	else if(v == 0)
-		return 0;
-	else
-		return 1;
-}
-
-void
-sortaddr(Addr *a)
-{
-	int i, j;
-	int32_t v;
-
-	if(a->n <= 1)
-		return;
-
-	qsort(a->doff, a->n, sizeof(int32_t), longcmp);
-
-	/* remove duplicates */
-	for(i=0, j=0; j < a->n; j++) {
-		v = a->doff[j];
-		if(i > 0 && v == a->doff[i-1])
-			continue;
-		a->doff[i++] = v;
-	}
-	a->n = i;
-}
-
-Entry
-getentry(int i)
-{
-	int32_t b, e, n;
-	static Entry ans;
-	static int anslen = 0;
-
-	b = dot->doff[i];
-	e = (*dict->nextoff)(b+1);
-	ans.doff = b;
-	if(e < 0) {
-		err("couldn't seek to entry");
-		ans.start = 0;
-		ans.end = 0;
-	} else {
-		n = e-b;
-		if(n+1 > anslen) {
-			ans.start = realloc(ans.start, n+1);
-			if(!ans.start) {
-				err("out of memory");
-				exits("nomem");
-			}
-			anslen = n+1;
-		}
-		Bseek(bdict, b, 0);
-		n = Bread(bdict, ans.start, n);
-		ans.end = ans.start + n;
-		*ans.end = 0;
-	}
-	return ans;
-}
-
-void
-setdotnext(void)
-{
-	int32_t b;
-
-	b = (*dict->nextoff)(dot->doff[dot->cur]+1);
-	if(b < 0) {
-		err("couldn't find a next entry");
-		return;
-	}
-	dot->doff[0] = b;
-	dot->n = 1;
-	dot->cur = 0;
-}
-
-void
-setdotprev(void)
-{
-	int tryback;
-	int32_t here, last, p;
-
-	if(dot->cur < 0 || dot->cur >= dot->n)
-		return;
-	tryback = 2000;
-	here = dot->doff[dot->cur];
-	last = 0;
-	while(last == 0) {
-		p = here - tryback;
-		if(p < 0)
-			p = 0;
-		for(;;) {
-			p = (*dict->nextoff)(p+1);
-			if(p < 0)
-				return; /* shouldn't happen */
-			if(p >= here)
-				break;
-			last = p;
-		}
-		if(!last) {
-			if(here - tryback < 0) {
-				err("can't find a previous entry");
-				return;
-			}
-			tryback = 2*tryback;
-		}
-	}
-	dot->doff[0] = last;
-	dot->n = 1;
-	dot->cur = 0;
-}

+ 0 - 172
sys/src/cmd/dict/dict.h

@@ -1,172 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-/* Runes for special purposes (0xe800-0xfdff is Private Use Area) */
-enum {	NONE=0xe800,	/* Emit nothing */
-	TAGS,		/* Start of tag */
-	TAGE,		/* End of tag */
-	SPCS,		/* Start of special character name */
-	PAR,		/* Newline, indent */
-	LIGS,		/* Start of ligature codes */
-	LACU=LIGS,	/* Acute (´) ligatures */
-	LGRV,		/* Grave (ˋ) ligatures */
-	LUML,		/* Umlaut (¨) ligatures */
-	LCED,		/* Cedilla (¸) ligatures */
-	LTIL,		/* Tilde (˜) ligatures */
-	LBRV,		/* Breve (˘) ligatures */
-	LRNG,		/* Ring (˚) ligatures */
-	LDOT,		/* Dot (˙) ligatures */
-	LDTB,		/* Dot below (.) ligatures */
-	LFRN,		/* Frown (⌢) ligatures */
-	LFRB,		/* Frown below (̯) ligatures */
-	LOGO,		/* Ogonek (˛) ligatures */
-	LMAC,		/* Macron (¯) ligatures */
-	LHCK,		/* Hacek (ˇ) ligatures */
-	LASP,		/* Asper (ʽ) ligatures */
-	LLEN,		/* Lenis (ʼ) ligatures */
-	LBRB,		/* Breve below (̮) ligatures */
-	LIGE,		/* End of ligature codes */
-	MULTI,		/* Start of multi-rune codes */
-	MAAS=MULTI,	/* ʽα */
-	MALN,		/* ʼα */
-	MAND,		/* and */
-	MAOQ,		/* a/q */
-	MBRA,		/* <| */
-	MDD,		/* .. */
-	MDDD,		/* ... */
-	MEAS,		/* ʽε */
-	MELN,		/* ʼε */
-	MEMM,		/* —— */
-	MHAS,		/* ʽη */
-	MHLN,		/* ʼη */
-	MIAS,		/* ʽι */
-	MILN,		/* ʼι */
-	MLCT,		/* ct */
-	MLFF,		/* ff */
-	MLFFI,		/* ffi */
-	MLFFL,		/* ffl */
-	MLFL,		/* fl */
-	MLFI,		/* fi */
-	MLLS,		/* ll with swing */
-	MLST,		/* st */
-	MOAS,		/* ʽο */
-	MOLN,		/* ʼο */
-	MOR,		/* or */
-	MRAS,		/* ʽρ */
-	MRLN,		/* ʼρ */
-	MTT,		/* ~~ */
-	MUAS,		/* ʽυ */
-	MULN,		/* ʼυ */
-	MWAS,		/* ʽω */
-	MWLN,		/* ʼω */
-	MOE,		/* oe */
-	MES,		/* em space */
-	MULTIE,		/* End of multi-rune codes */
-};
-#define Nligs (LIGE-LIGS)
-#define Nmulti (MULTIE-MULTI)
-
-typedef struct Entry Entry;
-typedef struct Assoc Assoc;
-typedef struct Nassoc Nassoc;
-typedef struct Dict Dict;
-
-struct Entry {
-	char	*start;		/* entry starts at start */
-	char	*end;		/* and finishes just before end */
-	long	doff;		/* dictionary offset (for debugging) */
-};
-
-struct Assoc {
-	char	*key;
-	long	val;
-};
-
-struct Nassoc {
-	long	key;
-	long	val;
-};
-
-struct Dict {
-	char	*name;			/* dictionary name */
-	char	*desc;			/* description */
-	char	*path;			/* path to dictionary data */
-	char	*indexpath;		/* path to index data */
-	long	(*nextoff)(long);	/* function to find next entry offset from arg */
-	void	(*printentry)(Entry, int); /* function to print entry */
-	void	(*printkey)(void);	/* function to print pronunciation key */
-};
-
-int	acomp(Rune*, Rune*);
-Rune	*changett(Rune *, Rune *, int);
-void	err(char*, ...);
-void	fold(Rune *);
-void	foldre(char*, char*);
-Rune	liglookup(Rune, Rune);
-long	lookassoc(Assoc*, int, char*);
-long	looknassoc(Nassoc*, int, long);
-void	outprint(char*, ...);
-void	outrune(long);
-void	outrunes(Rune *);
-void	outchar(int);
-void	outchars(char *);
-void	outnl(int);
-void	outpiece(char *, char *);
-void	runescpy(Rune*, Rune*);
-long	runetol(Rune*);
-
-long	oednextoff(long);
-void	oedprintentry(Entry, int);
-void	oedprintkey(void);
-long	ahdnextoff(long);
-void	ahdprintentry(Entry, int);
-void	ahdprintkey(void);
-long	pcollnextoff(long);
-void	pcollprintentry(Entry, int);
-void	pcollprintkey(void);
-long	pcollgnextoff(long);
-void	pcollgprintentry(Entry, int);
-void	pcollgprintkey(void);
-long	movienextoff(long);
-void	movieprintentry(Entry, int);
-void	movieprintkey(void);
-long	pgwnextoff(long);
-void	pgwprintentry(Entry,int);
-void	pgwprintkey(void);
-void	rogetprintentry(Entry, int);
-long	rogetnextoff(long);
-void	rogetprintkey(void);
-long	slangnextoff(long);
-void	slangprintentry(Entry, int);
-void	slangprintkey(void);
-long	robertnextoff(long);
-void	robertindexentry(Entry, int);
-void	robertprintkey(void);
-long	robertnextflex(long);
-void	robertflexentry(Entry, int);
-long	simplenextoff(long);
-void	simpleprintentry(Entry, int);
-void	simpleprintkey(void);
-long	thesnextoff(long);
-void	thesprintentry(Entry, int);
-void	thesprintkey(void);
-long	worldnextoff(long);
-void	worldprintentry(Entry, int);
-void	worldprintkey(void);
-
-extern Biobuf	*bdict;
-extern Biobuf	*bout;
-extern int	linelen;
-extern int	breaklen;
-extern int	outinhibit;
-extern int	debug;
-extern Rune	*multitab[];
-extern Dict	dicts[];
-
-#define asize(a) (sizeof (a)/sizeof(a[0]))

+ 0 - 15
sys/src/cmd/dict/egfix

@@ -1,15 +0,0 @@
-#!/bin/rc
-
-sed '
-	s/[ 	]+$//
-	/	/!d
-	/, /{; h; s/,.*//; p; g; s/	.*, /	/; }
-' $1 |
-sed '
-	/\(/{; h; s/\([^)]+\)//; p; g; s/[()]//g; }
-' |
-sed '
-	s/	 +/	/
-	s/[ 	]+$//
-	s/  +/ /g
-'

+ 0 - 8
sys/src/cmd/dict/egfix2

@@ -1,8 +0,0 @@
-#!/bin/rc
-
-awk '
-BEGIN	{ FS = "	|, " }
-	{ for(i=2; i<=NF; i++)print $i "	" $1 }
-' $1 |
-tr A-Z a-z |
-sort -u -t'	' +0f -1 +0 -1 +1n -2

+ 0 - 123
sys/src/cmd/dict/fromemf

@@ -1,123 +0,0 @@
-From emf Tue Sep 19 10:41:30 EDT 1989
-Here are the IPA equivalents of the Collins code for German-English.
-RE: Avant-garde, it is listed as exemplifying a nasal vowel in the
-Collins pronunciation key, and occurs in the English-German dictionary,
-where it is translated into German as Avantgarde.  However, it does
-not appear in the German-English dictionary.
-
-I'll drop by with your hardcopy dictionary today or tomorrow.
-Thanks.
-
-IPA		COLLINS		EXAMPLE
-
-[']		349		H Salon
-				P za\N'349'lo^~:
-
-[a]		a		H ab
-				P ap
-
-upsilon		348  		H Abbau 
-				P \N'349'apba\fp\N'348'\f1
-
-schwa		343  		H aalen
-				P \N'349'a:l\fp\N'343'\f1n
-
-[i:]		i:           	H abbiegen
-				P \N'349'apbi:g\fp\N'343'\f1n
-
-[I]		351  		H Abbild
-				P \N'349'apb\fp\N'351'\f1lt
-
-turned script a 356		H abdominal 
-				P \x91b\N'349'd\fp\N'356'\f1m\fp\N'351'\f1nl
-
-open o		341		H abdrosseln
-				P \N'349'apdr\fp\N'341'\f1s\fp\N'343'\f1ln
-
-upsilon		348		H Abbau
-				P \N'349'apba\fp\N'348'\f1
-
-[b]		b
-[d]		d
-[f]		f
-[g]		g
-[h]		h
-[j]		j
-[k]		k	
-[l]		l
-[m]		m
-[n]		n
-
-eng		384		H Abgang
-				P \N'349'apga\fp\N'384'\f1
-
-[p]		p
-[s]		s
-
-esh		346		H abgespannt
-				P \N'349'apg\fp\N'343'\N'346'\f1pant
-
-[t]		t
-[v]		v
-[x]		x
-[z]		z
-
-yogh		345		 H azure
-				\N'349'e\fp\N'351'\f1\fp\N'345'\f1\fp\N'343'\f1*
-
-ash		x91		H acrobat
-				P \N'349'\x91kr\fp\N'343'\f1b\x91t
-
-script a:	354		H almond
-				P \N'349'\fp\N'354'\f1:m\fp\N'343'\f1nd
-
-[e]		e
-
-rvrsd epsilon:	352		H absurd
-				P \fp\N'343'\f1b\N'349's\fp\N'352'\f1:d
-
-[u:]		u:
-
-inverted v	342		H above
-				P \fp\N'343'\f1\fp\N'349'\f1b\fp\N'342'\f1v
-
-superscript tilde
-over
-  open o	o^~ 		H Salon
-				P za\N'349'lo^~:
-
-script a	
-lower case a
-epsilon
-o
-
-[w]		w
-
-theta		347 		H apathy
-				P \N'349'\x91p\fp\N'343'\f1\fp\N'347'
-				  \f1\fp\N'351'\f1
-
-
-eth		445 		H another
-				P \fp\N'343'\f1\N'349'n\fp\N'342'\f1\N'445'
-				  \fp\N'343'\f1*
-
-epsilon		340 		H aba^:ndern
-				P \N'349'ap'\fp\N'340'\f1nd\fp\N'343'\f1rn
-
-slashed o	x97 		H abgewo^:hnen
-				P \N'349'apg\fp\N'343'\f1v\x97:n\fp\N'343'\f1n
-
-o-e ligature 	(oe 		H abbro^:ckeln
-				P \N'349'apbr\(oek\fp\N'343'\f1ln
-
-small capital y	y 		H abbru^:hen
-				P \N'349'apbry:\fp\N'343'\f1n
-
-c cedilla	c^ 		H abbrechen
-				P \N'349'apbr\fp\N'340'\f1c^,\fp\N'343'\f1n
-
-
-
-
-

+ 0 - 1117
sys/src/cmd/dict/gb2312.c

@@ -1,1117 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include "kuten.h"
-
-#define	NONE	0xffff
-
-Rune tabgb2312[GB2312MAX] = {
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x3000,0x3001,0x3002,
-0x2024,0x02c9,0x02c7,0x00a8,0x3003,0x3005,0x2015,0x223c,
-0x2225,0x2026,0x2018,0x2019,0x201c,0x201d,0x3014,0x3015,
-0x3008,0x3009,0x300a,0x300b,0x300c,0x300d,0x300e,0x300f,
-0x301a,0x301b,0x3010,0x3011,0x00b1,0x00d7,0x00f7,0x2236,
-0x2227,0x2228,0x2211,0x220f,0x222a,0x2229,0x2208,0x2237,
-0x221a,0x22a5,0x01c1,0x2220,0x2322,0x2299,0x222b,0x222e,
-0x2261,0x224c,0x2248,0x223d,0x221d,0x2260,0x226e,0x226f,
-0x2264,0x2265,0x221e,0x2235,0x2234,0x2642,0x2640,0x00b0,
-0x2032,0x2033,0x2103,0x0024,0x00a4,0x00a2,0x00a3,0x2030,
-0x00a7,0x2116,0x2606,0x2605,0x25cb,0x25cf,0x25ce,0x25c7,
-0x25c6,0x25a1,0x25a0,0x25b3,0x25b2,0x203b,0x2192,0x2190,
-0x2191,0x2193,0x3013,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x2488,0x2489,0x248a,0x248b,0x248c,0x248d,0x248e,
-0x248f,0x2490,0x2491,0x2492,0x2493,0x2494,0x2495,0x2496,
-0x2497,0x2498,0x2499,0x249a,0x249b,0x2474,0x2475,0x2476,
-0x2477,0x2478,0x2479,0x247a,0x247b,0x247c,0x247d,0x247e,
-0x247f,0x2480,0x2481,0x2482,0x2483,0x2484,0x2485,0x2486,
-0x2487,0x2460,0x2461,0x2462,0x2463,0x2464,0x2465,0x2466,
-0x2467,0x2468,0x2469,  NONE,  NONE,0x3220,0x3221,0x3222,
-0x3223,0x3224,0x3225,0x3226,0x3227,0x3228,0x3229,  NONE,
-  NONE,0x2160,0x2161,0x2162,0x2163,0x2164,0x2165,0x2166,
-0x2167,0x2168,0x2169,0x216a,0x216b,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x0021,0x0022,0x0023,
-0x00a5,0x0025,0x0026,0x0027,0x0028,0x0029,0x002a,0x002b,
-0x002c,0x002d,0x002e,0x002f,0x0030,0x0031,0x0032,0x0033,
-0x0034,0x0035,0x0036,0x0037,0x0038,0x0039,0x003a,0x003b,
-0x003c,0x003d,0x003e,0x003f,0x0040,0x0041,0x0042,0x0043,
-0x0044,0x0045,0x0046,0x0047,0x0048,0x0049,0x004a,0x004b,
-0x004c,0x004d,0x004e,0x004f,0x0050,0x0051,0x0052,0x0053,
-0x0054,0x0055,0x0056,0x0057,0x0058,0x0059,0x005a,0x005b,
-0x005c,0x005d,0x005e,0x005f,0x0060,0x0061,0x0062,0x0063,
-0x0064,0x0065,0x0066,0x0067,0x0068,0x0069,0x006a,0x006b,
-0x006c,0x006d,0x006e,0x006f,0x0070,0x0071,0x0072,0x0073,
-0x0074,0x0075,0x0076,0x0077,0x0078,0x0079,0x007a,0x007b,
-0x007c,0x007d,0x00af,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x3041,0x3042,0x3043,0x3044,0x3045,0x3046,0x3047,
-0x3048,0x3049,0x304a,0x304b,0x304c,0x304d,0x304e,0x304f,
-0x3050,0x3051,0x3052,0x3053,0x3054,0x3055,0x3056,0x3057,
-0x3058,0x3059,0x305a,0x305b,0x305c,0x305d,0x305e,0x305f,
-0x3060,0x3061,0x3062,0x3063,0x3064,0x3065,0x3066,0x3067,
-0x3068,0x3069,0x306a,0x306b,0x306c,0x306d,0x306e,0x306f,
-0x3070,0x3071,0x3072,0x3073,0x3074,0x3075,0x3076,0x3077,
-0x3078,0x3079,0x307a,0x307b,0x307c,0x307d,0x307e,0x307f,
-0x3080,0x3081,0x3082,0x3083,0x3084,0x3085,0x3086,0x3087,
-0x3088,0x3089,0x308a,0x308b,0x308c,0x308d,0x308e,0x308f,
-0x3090,0x3091,0x3092,0x3093,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x30a1,0x30a2,0x30a3,
-0x30a4,0x30a5,0x30a6,0x30a7,0x30a8,0x30a9,0x30aa,0x30ab,
-0x30ac,0x30ad,0x30ae,0x30af,0x30b0,0x30b1,0x30b2,0x30b3,
-0x30b4,0x30b5,0x30b6,0x30b7,0x30b8,0x30b9,0x30ba,0x30bb,
-0x30bc,0x30bd,0x30be,0x30bf,0x30c0,0x30c1,0x30c2,0x30c3,
-0x30c4,0x30c5,0x30c6,0x30c7,0x30c8,0x30c9,0x30ca,0x30cb,
-0x30cc,0x30cd,0x30ce,0x30cf,0x30d0,0x30d1,0x30d2,0x30d3,
-0x30d4,0x30d5,0x30d6,0x30d7,0x30d8,0x30d9,0x30da,0x30db,
-0x30dc,0x30dd,0x30de,0x30df,0x30e0,0x30e1,0x30e2,0x30e3,
-0x30e4,0x30e5,0x30e6,0x30e7,0x30e8,0x30e9,0x30ea,0x30eb,
-0x30ec,0x30ed,0x30ee,0x30ef,0x30f0,0x30f1,0x30f2,0x30f3,
-0x30f4,0x30f5,0x30f6,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x0391,0x0392,0x0393,0x0394,0x0395,0x0396,0x0397,
-0x0398,0x0399,0x039a,0x039b,0x039c,0x039d,0x039e,0x039f,
-0x03a0,0x03a1,0x03a3,0x03a4,0x03a5,0x03a6,0x03a7,0x03a8,
-0x03a9,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x03b1,0x03b2,0x03b3,0x03b4,0x03b5,0x03b6,0x03b7,
-0x03b8,0x03b9,0x03ba,0x03bb,0x03bc,0x03bd,0x03be,0x03bf,
-0x03c0,0x03c1,0x03c3,0x03c4,0x03c5,0x03c6,0x03c7,0x03c8,
-0x03c9,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x0410,0x0411,0x0412,
-0x0413,0x0414,0x0415,0x0401,0x0416,0x0417,0x0418,0x0419,
-0x041a,0x041b,0x041c,0x041d,0x041e,0x041f,0x0420,0x0421,
-0x0422,0x0423,0x0424,0x0425,0x0426,0x0427,0x0428,0x0429,
-0x042a,0x042b,0x042c,0x042d,0x042e,0x042f,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x0430,0x0431,0x0432,
-0x0433,0x0434,0x0435,0x0451,0x0436,0x0437,0x0438,0x0439,
-0x043a,0x043b,0x043c,0x043d,0x043e,0x043f,0x0440,0x0441,
-0x0442,0x0443,0x0444,0x0445,0x0446,0x0447,0x0448,0x0449,
-0x044a,0x044b,0x044c,0x044d,0x044e,0x044f,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x0101,0x00e1,0x0103,0x00e0,0x0113,0x00e9,0x0115,
-0x00e8,0x012b,0x00ed,0x012d,0x00ec,0x014d,0x00f3,0x014f,
-0x00f2,0x016b,0x00fa,0x016d,0x00f9,0x01d6,0x01d8,0x01da,
-0x01dc,0x00fc,0x00ea,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x3105,0x3106,0x3107,
-0x3108,0x3109,0x310a,0x310b,0x310c,0x310d,0x310e,0x310f,
-0x3110,0x3111,0x3112,0x3113,0x3114,0x3115,0x3116,0x3117,
-0x3118,0x3119,0x311a,0x311b,0x311c,0x311d,0x311e,0x311f,
-0x3120,0x3121,0x3122,0x3123,0x3124,0x3125,0x3126,0x3127,
-0x3128,0x3129,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-0x2500,0x2501,0x2502,0x2503,0x2504,0x2505,0x2506,0x2507,
-0x2508,0x2509,0x250a,0x250b,0x250c,0x250d,0x250e,0x250f,
-0x2510,0x2511,0x2512,0x2513,0x2514,0x2515,0x2516,0x2517,
-0x2518,0x2519,0x251a,0x251b,0x251c,0x251d,0x251e,0x251f,
-0x2520,0x2521,0x2522,0x2523,0x2524,0x2525,0x2526,0x2527,
-0x2528,0x2529,0x252a,0x252b,0x252c,0x252d,0x252e,0x252f,
-0x2530,0x2531,0x2532,0x2533,0x2534,0x2535,0x2536,0x2537,
-0x2538,0x2539,0x253a,0x253b,0x253c,0x253d,0x253e,0x253f,
-0x2540,0x2541,0x2542,0x2543,0x2544,0x2545,0x2546,0x2547,
-0x2548,0x2549,0x254a,0x254b,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x554a,0x963f,0x57c3,0x6328,0x54ce,0x5509,0x54c0,
-0x7691,0x764c,0x853c,0x77ee,0x827e,0x788d,0x7231,0x9698,
-0x978d,0x6c28,0x5b89,0x4ffa,0x6309,0x6697,0x5cb8,0x80fa,
-0x6848,0x80ae,0x6602,0x76ce,0x51f9,0x6556,0x71ac,0x7ff1,
-0x8884,0x50b2,0x5965,0x61ca,0x6fb3,0x82ad,0x634c,0x6252,
-0x53ed,0x5427,0x7b06,0x516b,0x75a4,0x5df4,0x62d4,0x8dcb,
-0x9776,0x628a,0x8019,0x575d,0x9738,0x7f62,0x7238,0x767d,
-0x67cf,0x767e,0x6446,0x4f70,0x8d25,0x62dc,0x7a17,0x6591,
-0x73ed,0x642c,0x6273,0x822c,0x9881,0x677f,0x7248,0x626e,
-0x62cc,0x4f34,0x74e3,0x534a,0x529e,0x7eca,0x90a6,0x5e2e,
-0x6886,0x699c,0x8180,0x7ed1,0x68d2,0x78c5,0x868c,0x9551,
-0x508d,0x8c24,0x82de,0x80de,0x5305,0x8912,0x5265,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x8584,0x96f9,0x4fdd,
-0x5821,0x9971,0x5b9d,0x62b1,0x62a5,0x66b4,0x8c79,0x9c8d,
-0x7206,0x676f,0x7891,0x60b2,0x5351,0x5317,0x8f88,0x80cc,
-0x8d1d,0x94a1,0x500d,0x72c8,0x5907,0x60eb,0x7119,0x88ab,
-0x5954,0x82ef,0x672c,0x7b28,0x5d29,0x7ef7,0x752d,0x6cf5,
-0x8e66,0x8ff8,0x903c,0x9f3b,0x6bd4,0x9119,0x7b14,0x5f7c,
-0x78a7,0x84d6,0x853d,0x6bd5,0x6bd9,0x6bd6,0x5e01,0x5e87,
-0x75f9,0x95ed,0x655d,0x5f0a,0x5fc5,0x8f9f,0x58c1,0x81c2,
-0x907f,0x965b,0x97ad,0x8fb9,0x7f16,0x8d2c,0x6241,0x4fbf,
-0x53d8,0x535e,0x8fa8,0x8fa9,0x8fab,0x904d,0x6807,0x5f6a,
-0x8198,0x8868,0x9cd6,0x618b,0x522b,0x762a,0x5f6c,0x658c,
-0x6fd2,0x6ee8,0x5bbe,0x6448,0x5175,0x51b0,0x67c4,0x4e19,
-0x79c9,0x997c,0x70b3,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x75c5,0x5e76,0x73bb,0x83e0,0x64ad,0x62e8,0x94b5,
-0x6ce2,0x535a,0x52c3,0x640f,0x94c2,0x7b94,0x4f2f,0x5e1b,
-0x8236,0x8116,0x818a,0x6e24,0x6cca,0x9a73,0x6355,0x535c,
-0x54fa,0x8865,0x57e0,0x4e0d,0x5e03,0x6b65,0x7c3f,0x90e8,
-0x6016,0x64e6,0x731c,0x88c1,0x6750,0x624d,0x8d22,0x776c,
-0x8e29,0x91c7,0x5f69,0x83dc,0x8521,0x9910,0x53c2,0x8695,
-0x6b8b,0x60ed,0x60e8,0x707f,0x82cd,0x8231,0x4ed3,0x6ca7,
-0x85cf,0x64cd,0x7cd9,0x69fd,0x66f9,0x8349,0x5395,0x7b56,
-0x4fa7,0x518c,0x6d4b,0x5c42,0x8e6d,0x63d2,0x53c9,0x832c,
-0x8336,0x67e5,0x78b4,0x643d,0x5bdf,0x5c94,0x5dee,0x8be7,
-0x62c6,0x67f4,0x8c7a,0x6400,0x63ba,0x8749,0x998b,0x8c17,
-0x7f20,0x94f2,0x4ea7,0x9610,0x98a4,0x660c,0x7316,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x573a,0x5c1d,0x5e38,
-0x957f,0x507f,0x80a0,0x5382,0x655e,0x7545,0x5531,0x5021,
-0x8d85,0x6284,0x949e,0x671d,0x5632,0x6f6e,0x5de2,0x5435,
-0x7092,0x8f66,0x626f,0x64a4,0x63a3,0x5f7b,0x6f88,0x90f4,
-0x81e3,0x8fb0,0x5c18,0x6668,0x5ff1,0x6c89,0x9648,0x8d81,
-0x886c,0x6491,0x79f0,0x57ce,0x6a59,0x6210,0x5448,0x4e58,
-0x7a0b,0x60e9,0x6f84,0x8bda,0x627f,0x901e,0x9a8b,0x79e4,
-0x5403,0x75f4,0x6301,0x5319,0x6c60,0x8fdf,0x5f1b,0x9a70,
-0x803b,0x9f7f,0x4f88,0x5c3a,0x8d64,0x7fc5,0x65a5,0x70bd,
-0x5145,0x51b2,0x866b,0x5d07,0x5ba0,0x62bd,0x916c,0x7574,
-0x8e0c,0x7a20,0x6101,0x7b79,0x4ec7,0x7ef8,0x7785,0x4e11,
-0x81ed,0x521d,0x51fa,0x6a71,0x53a8,0x8e87,0x9504,0x96cf,
-0x6ec1,0x9664,0x695a,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x7840,0x50a8,0x77d7,0x6410,0x89e6,0x5904,0x63e3,
-0x5ddd,0x7a7f,0x693d,0x4f20,0x8239,0x5598,0x4e32,0x75ae,
-0x7a97,0x5e62,0x5e8a,0x95ef,0x521b,0x5439,0x708a,0x6376,
-0x9524,0x5782,0x6625,0x693f,0x9187,0x5507,0x6df3,0x7eaf,
-0x8822,0x6233,0x7ef0,0x75b5,0x8328,0x78c1,0x96cc,0x8f9e,
-0x6148,0x74f7,0x8bcd,0x6b64,0x523a,0x8d50,0x6b21,0x806a,
-0x8471,0x56f1,0x5306,0x4ece,0x4e1b,0x51d1,0x7c97,0x918b,
-0x7c07,0x4fc3,0x8e7f,0x7be1,0x7a9c,0x6467,0x5d14,0x50ac,
-0x8106,0x7601,0x7cb9,0x6dec,0x7fe0,0x6751,0x5b58,0x5bf8,
-0x78cb,0x64ae,0x6413,0x63aa,0x632b,0x9519,0x642d,0x8fbe,
-0x7b54,0x7629,0x6253,0x5927,0x5446,0x6b79,0x50a3,0x6234,
-0x5e26,0x6b86,0x4ee3,0x8d37,0x888b,0x5f85,0x902e,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6020,0x803d,0x62c5,
-0x4e39,0x5355,0x90f8,0x63b8,0x80c6,0x65e6,0x6c2e,0x4f46,
-0x60ee,0x6de1,0x8bde,0x5f39,0x86cb,0x5f53,0x6321,0x515a,
-0x8361,0x6863,0x5200,0x6363,0x8e48,0x5012,0x5c9b,0x7977,
-0x5bfc,0x5230,0x7a3b,0x60bc,0x9053,0x76d7,0x5fb7,0x5f97,
-0x7684,0x8e6c,0x706f,0x767b,0x7b49,0x77aa,0x51f3,0x9093,
-0x5824,0x4f4e,0x6ef4,0x8fea,0x654c,0x7b1b,0x72c4,0x6da4,
-0x7fdf,0x5ae1,0x62b5,0x5e95,0x5730,0x8482,0x7b2c,0x5e1d,
-0x5f1f,0x9012,0x7f14,0x98a0,0x6382,0x6ec7,0x7898,0x70b9,
-0x5178,0x975b,0x57ab,0x7535,0x4f43,0x7538,0x5e97,0x60e6,
-0x5960,0x6dc0,0x6bbf,0x7889,0x53fc,0x96d5,0x51cb,0x5201,
-0x6389,0x540a,0x9493,0x8c03,0x8dcc,0x7239,0x789f,0x8776,
-0x8fed,0x8c0d,0x53e0,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x4e01,0x76ef,0x53ee,0x9489,0x9876,0x9f0e,0x952d,
-0x5b9a,0x8ba2,0x4e22,0x4e1c,0x51ac,0x8463,0x61c2,0x52a8,
-0x680b,0x4f97,0x606b,0x51bb,0x6d1e,0x515c,0x6296,0x6597,
-0x9661,0x8c46,0x9017,0x75d8,0x90fd,0x7763,0x6bd2,0x728a,
-0x72ec,0x8bfb,0x5835,0x7779,0x8d4c,0x675c,0x9540,0x809a,
-0x5ea6,0x6e21,0x5992,0x7aef,0x77ed,0x953b,0x6bb5,0x65ad,
-0x7f0e,0x5806,0x5151,0x961f,0x5bf9,0x58a9,0x5428,0x8e72,
-0x6566,0x987f,0x56e4,0x949d,0x76fe,0x9041,0x6387,0x54c6,
-0x591a,0x593a,0x579b,0x8eb2,0x6735,0x8dfa,0x8235,0x5241,
-0x60f0,0x5815,0x86fe,0x5ce8,0x9e45,0x4fc4,0x989d,0x8bb9,
-0x5a25,0x6076,0x5384,0x627c,0x904f,0x9102,0x997f,0x6069,
-0x800c,0x513f,0x8033,0x5c14,0x9975,0x6d31,0x4e8c,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x8d30,0x53d1,0x7f5a,
-0x7b4f,0x4f10,0x4e4f,0x9600,0x6cd5,0x73d0,0x85e9,0x5e06,
-0x756a,0x7ffb,0x6a0a,0x77fe,0x9492,0x7e41,0x51e1,0x70e6,
-0x53cd,0x8fd4,0x8303,0x8d29,0x72af,0x996d,0x6cdb,0x574a,
-0x82b3,0x65b9,0x80aa,0x623f,0x9632,0x59a8,0x4eff,0x8bbf,
-0x7eba,0x653e,0x83f2,0x975e,0x5561,0x98de,0x80a5,0x532a,
-0x8bfd,0x5420,0x80ba,0x5e9f,0x6cb8,0x8d39,0x82ac,0x915a,
-0x5429,0x6c1b,0x5206,0x7eb7,0x575f,0x711a,0x6c7e,0x7c89,
-0x594b,0x4efd,0x5fff,0x6124,0x7caa,0x4e30,0x5c01,0x67ab,
-0x8702,0x5cf0,0x950b,0x98ce,0x75af,0x70fd,0x9022,0x51af,
-0x7f1d,0x8bbd,0x5949,0x51e4,0x4f5b,0x5426,0x592b,0x6577,
-0x80a4,0x5b75,0x6276,0x62c2,0x8f90,0x5e45,0x6c1f,0x7b26,
-0x4f0f,0x4fd8,0x670d,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6d6e,0x6daa,0x798f,0x88b1,0x5f17,0x752b,0x629a,
-0x8f85,0x4fef,0x91dc,0x65a7,0x812f,0x8151,0x5e9c,0x8150,
-0x8d74,0x526f,0x8986,0x8d4b,0x590d,0x5085,0x4ed8,0x961c,
-0x7236,0x8179,0x8d1f,0x5bcc,0x8ba3,0x9644,0x5987,0x7f1a,
-0x5490,0x5676,0x560e,0x8be5,0x6539,0x6982,0x9499,0x76d6,
-0x6e89,0x5e72,0x7518,0x6746,0x67d1,0x7aff,0x809d,0x8d76,
-0x611f,0x79c6,0x6562,0x8d63,0x5188,0x521a,0x94a2,0x7f38,
-0x809b,0x7eb2,0x5c97,0x6e2f,0x6760,0x7bd9,0x768b,0x9ad8,
-0x818f,0x7f94,0x7cd5,0x641e,0x9550,0x7a3f,0x544a,0x54e5,
-0x6b4c,0x6401,0x6208,0x9e3d,0x80f3,0x7599,0x5272,0x9769,
-0x845b,0x683c,0x86e4,0x9601,0x9694,0x94ec,0x4e2a,0x5404,
-0x7ed9,0x6839,0x8ddf,0x8015,0x66f4,0x5e9a,0x7fb9,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x57c2,0x803f,0x6897,
-0x5de5,0x653b,0x529f,0x606d,0x9f9a,0x4f9b,0x8eac,0x516c,
-0x5bab,0x5f13,0x5de9,0x6c5e,0x62f1,0x8d21,0x5171,0x94a9,
-0x52fe,0x6c9f,0x82df,0x72d7,0x57a2,0x6784,0x8d2d,0x591f,
-0x8f9c,0x83c7,0x5495,0x7b8d,0x4f30,0x6cbd,0x5b64,0x59d1,
-0x9f13,0x53e4,0x86ca,0x9aa8,0x8c37,0x80a1,0x6545,0x987e,
-0x56fa,0x96c7,0x522e,0x74dc,0x5250,0x5be1,0x6302,0x8902,
-0x4e56,0x62d0,0x602a,0x68fa,0x5173,0x5b98,0x51a0,0x89c2,
-0x7ba1,0x9986,0x7f50,0x60ef,0x704c,0x8d2f,0x5149,0x5e7f,
-0x901b,0x7470,0x89c4,0x572d,0x7845,0x5f52,0x9f9f,0x95fa,
-0x8f68,0x9b3c,0x8be1,0x7678,0x6842,0x67dc,0x8dea,0x8d35,
-0x523d,0x8f8a,0x6eda,0x68cd,0x9505,0x90ed,0x56fd,0x679c,
-0x88f9,0x8fc7,0x54c8,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x9ab8,0x5b69,0x6d77,0x6c26,0x4ea5,0x5bb3,0x9a87,
-0x9163,0x61a8,0x90af,0x97e9,0x542b,0x6db5,0x5bd2,0x51fd,
-0x558a,0x7f55,0x7ff0,0x64bc,0x634d,0x65f1,0x61be,0x608d,
-0x710a,0x6c57,0x6c49,0x592f,0x676d,0x822a,0x58d5,0x568e,
-0x8c6a,0x6beb,0x90dd,0x597d,0x8017,0x53f7,0x6d69,0x5475,
-0x559d,0x8377,0x83cf,0x6838,0x79be,0x548c,0x4f55,0x5408,
-0x76d2,0x8c89,0x9602,0x6cb3,0x6db8,0x8d6b,0x8910,0x9e64,
-0x8d3a,0x563f,0x9ed1,0x75d5,0x5f88,0x72e0,0x6068,0x54fc,
-0x4ea8,0x6a2a,0x8861,0x6052,0x8f70,0x54c4,0x70d8,0x8679,
-0x9e3f,0x6d2a,0x5b8f,0x5f18,0x7ea2,0x5589,0x4faf,0x7334,
-0x543c,0x539a,0x5019,0x540e,0x547c,0x4e4e,0x5ffd,0x745a,
-0x58f6,0x846b,0x80e1,0x8774,0x72d0,0x7cca,0x6e56,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x5f27,0x864e,0x552c,
-0x62a4,0x4e92,0x6caa,0x6237,0x82b1,0x54d7,0x534e,0x733e,
-0x6ed1,0x753b,0x5212,0x5316,0x8bdd,0x69d0,0x5f8a,0x6000,
-0x6dee,0x574f,0x6b22,0x73af,0x6853,0x8fd8,0x7f13,0x6362,
-0x60a3,0x5524,0x75ea,0x8c62,0x7115,0x6da3,0x5ba6,0x5e7b,
-0x8352,0x614c,0x9ec4,0x78fa,0x8757,0x7c27,0x7687,0x51f0,
-0x60f6,0x714c,0x6643,0x5e4c,0x604d,0x8c0e,0x7070,0x6325,
-0x8f89,0x5fbd,0x6062,0x86d4,0x56de,0x6bc1,0x6094,0x6167,
-0x5349,0x60e0,0x6666,0x8d3f,0x79fd,0x4f1a,0x70e9,0x6c47,
-0x8bb3,0x8bf2,0x7ed8,0x8364,0x660f,0x5a5a,0x9b42,0x6d51,
-0x6df7,0x8c41,0x6d3b,0x4f19,0x706b,0x83b7,0x6216,0x60d1,
-0x970d,0x8d27,0x7978,0x51fb,0x573e,0x57fa,0x673a,0x7578,
-0x7a3d,0x79ef,0x7b95,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x808c,0x9965,0x8ff9,0x6fc0,0x8ba5,0x9e21,0x59ec,
-0x7ee9,0x7f09,0x5409,0x6781,0x68d8,0x8f91,0x7c4d,0x96c6,
-0x53ca,0x6025,0x75be,0x6c72,0x5373,0x5ac9,0x7ea7,0x6324,
-0x51e0,0x810a,0x5df1,0x84df,0x6280,0x5180,0x5b63,0x4f0e,
-0x796d,0x5242,0x60b8,0x6d4e,0x5bc4,0x5bc2,0x8ba1,0x8bb0,
-0x65e2,0x5fcc,0x9645,0x5993,0x7ee7,0x7eaa,0x5609,0x67b7,
-0x5939,0x4f73,0x5bb6,0x52a0,0x835a,0x988a,0x8d3e,0x7532,
-0x94be,0x5047,0x7a3c,0x4ef7,0x67b6,0x9a7e,0x5ac1,0x6b7c,
-0x76d1,0x575a,0x5c16,0x7b3a,0x95f4,0x714e,0x517c,0x80a9,
-0x8270,0x5978,0x7f04,0x8327,0x68c0,0x67ec,0x78b1,0x7877,
-0x62e3,0x6361,0x7b80,0x4fed,0x526a,0x51cf,0x8350,0x69db,
-0x9274,0x8df5,0x8d31,0x89c1,0x952e,0x7bad,0x4ef6,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x5065,0x8230,0x5251,
-0x996f,0x6e10,0x6e85,0x6da7,0x5efa,0x50f5,0x59dc,0x5c06,
-0x6d46,0x6c5f,0x7586,0x848b,0x6868,0x5956,0x8bb2,0x5320,
-0x9171,0x964d,0x8549,0x6912,0x7901,0x7126,0x80f6,0x4ea4,
-0x90ca,0x6d47,0x9a84,0x5a07,0x56bc,0x6405,0x94f0,0x77eb,
-0x4fa5,0x811a,0x72e1,0x89d2,0x997a,0x7f34,0x7ede,0x527f,
-0x6559,0x9175,0x8f7f,0x8f83,0x53eb,0x7a96,0x63ed,0x63a5,
-0x7686,0x79f8,0x8857,0x9636,0x622a,0x52ab,0x8282,0x6854,
-0x6770,0x6377,0x776b,0x7aed,0x6d01,0x7ed3,0x89e3,0x59d0,
-0x6212,0x85c9,0x82a5,0x754c,0x501f,0x4ecb,0x75a5,0x8beb,
-0x5c4a,0x5dfe,0x7b4b,0x65a4,0x91d1,0x4eca,0x6d25,0x895f,
-0x7d27,0x9526,0x4ec5,0x8c28,0x8fdb,0x9773,0x664b,0x7981,
-0x8fd1,0x70ec,0x6d78,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5c3d,0x52b2,0x8346,0x5162,0x830e,0x775b,0x6676,
-0x9cb8,0x4eac,0x60ca,0x7cbe,0x7cb3,0x7ecf,0x4e95,0x8b66,
-0x666f,0x9888,0x9759,0x5883,0x656c,0x955c,0x5f84,0x75c9,
-0x9756,0x7adf,0x7ade,0x51c0,0x70af,0x7a98,0x63ea,0x7a76,
-0x7ea0,0x7396,0x97ed,0x4e45,0x7078,0x4e5d,0x9152,0x53a9,
-0x6551,0x65e7,0x81fc,0x8205,0x548e,0x5c31,0x759a,0x97a0,
-0x62d8,0x72d9,0x75bd,0x5c45,0x9a79,0x83ca,0x5c40,0x5480,
-0x77e9,0x4e3e,0x6cae,0x805a,0x62d2,0x636e,0x5de8,0x5177,
-0x8ddd,0x8e1e,0x952f,0x4ff1,0x53e5,0x60e7,0x70ac,0x5267,
-0x6350,0x9e43,0x5a1f,0x5026,0x7737,0x5377,0x7ee2,0x6485,
-0x652b,0x6289,0x6398,0x5014,0x7235,0x89c9,0x51b3,0x8bc0,
-0x7edd,0x5747,0x83cc,0x94a7,0x519b,0x541b,0x5cfb,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x4fca,0x7ae3,0x6d5a,
-0x90e1,0x9a8f,0x5580,0x5496,0x5361,0x54af,0x5f00,0x63e9,
-0x6977,0x51ef,0x6168,0x520a,0x582a,0x52d8,0x574e,0x780d,
-0x770b,0x5eb7,0x6177,0x7ce0,0x625b,0x6297,0x4ea2,0x7095,
-0x8003,0x62f7,0x70e4,0x9760,0x5777,0x82db,0x67ef,0x68f5,
-0x78d5,0x9897,0x79d1,0x58f3,0x54b3,0x53ef,0x6e34,0x514b,
-0x523b,0x5ba2,0x8bfe,0x80af,0x5543,0x57a6,0x6073,0x5751,
-0x542d,0x7a7a,0x6050,0x5b54,0x63a7,0x62a0,0x53e3,0x6263,
-0x5bc7,0x67af,0x54ed,0x7a9f,0x82e6,0x9177,0x5e93,0x88e4,
-0x5938,0x57ae,0x630e,0x8de8,0x80ef,0x5757,0x7b77,0x4fa9,
-0x5feb,0x5bbd,0x6b3e,0x5321,0x7b50,0x72c2,0x6846,0x77ff,
-0x7736,0x65f7,0x51b5,0x4e8f,0x76d4,0x5cbf,0x7aa5,0x8475,
-0x594e,0x9b41,0x5080,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x9988,0x6127,0x6e83,0x5764,0x6606,0x6346,0x56f0,
-0x62ec,0x6269,0x5ed3,0x9614,0x5783,0x62c9,0x5587,0x8721,
-0x814a,0x8fa3,0x5566,0x83b1,0x6765,0x8d56,0x84dd,0x5a6a,
-0x680f,0x62e6,0x7bee,0x9611,0x5170,0x6f9c,0x8c30,0x63fd,
-0x89c8,0x61d2,0x7f06,0x70c2,0x6ee5,0x7405,0x6994,0x72fc,
-0x5eca,0x90ce,0x6717,0x6d6a,0x635e,0x52b3,0x7262,0x8001,
-0x4f6c,0x59e5,0x916a,0x70d9,0x6d9d,0x52d2,0x4e50,0x96f7,
-0x956d,0x857e,0x78ca,0x7d2f,0x5121,0x5792,0x64c2,0x808b,
-0x7c7b,0x6cea,0x68f1,0x695e,0x51b7,0x5398,0x68a8,0x7281,
-0x9ece,0x7bf1,0x72f8,0x79bb,0x6f13,0x7406,0x674e,0x91cc,
-0x9ca4,0x793c,0x8389,0x8354,0x540f,0x6817,0x4e3d,0x5389,
-0x52b1,0x783e,0x5386,0x5229,0x5088,0x4f8b,0x4fd0,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x75e2,0x7acb,0x7c92,
-0x6ca5,0x96b6,0x529b,0x7483,0x54e9,0x4fe9,0x8054,0x83b2,
-0x8fde,0x9570,0x5ec9,0x601c,0x6d9f,0x5e18,0x655b,0x8138,
-0x94fe,0x604b,0x70bc,0x7ec3,0x7cae,0x51c9,0x6881,0x7cb1,
-0x826f,0x4e24,0x8f86,0x91cf,0x667e,0x4eae,0x8c05,0x64a9,
-0x804a,0x50da,0x7597,0x71ce,0x5be5,0x8fbd,0x6f66,0x4e86,
-0x6482,0x9563,0x5ed6,0x6599,0x5217,0x88c2,0x70c8,0x52a3,
-0x730e,0x7433,0x6797,0x78f7,0x9716,0x4e34,0x90bb,0x9cde,
-0x6dcb,0x51db,0x8d41,0x541d,0x62ce,0x73b2,0x83f1,0x96f6,
-0x9f84,0x94c3,0x4f36,0x7f9a,0x51cc,0x7075,0x9675,0x5cad,
-0x9886,0x53e6,0x4ee4,0x6e9c,0x7409,0x69b4,0x786b,0x998f,
-0x7559,0x5218,0x7624,0x6d41,0x67f3,0x516d,0x9f99,0x804b,
-0x5499,0x7b3c,0x7abf,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x9686,0x5784,0x62e2,0x9647,0x697c,0x5a04,0x6402,
-0x7bd3,0x6f0f,0x964b,0x82a6,0x5362,0x9885,0x5e90,0x7089,
-0x63b3,0x5364,0x864f,0x9c81,0x9e93,0x788c,0x9732,0x8def,
-0x8d42,0x9e7f,0x6f5e,0x7984,0x5f55,0x9646,0x622e,0x9a74,
-0x5415,0x94dd,0x4fa3,0x65c5,0x5c65,0x5c61,0x7f15,0x8651,
-0x6c2f,0x5f8b,0x7387,0x6ee4,0x7eff,0x5ce6,0x631b,0x5b6a,
-0x6ee6,0x5375,0x4e71,0x63a0,0x7565,0x62a1,0x8f6e,0x4f26,
-0x4ed1,0x6ca6,0x7eb6,0x8bba,0x841d,0x87ba,0x7f57,0x903b,
-0x9523,0x7ba9,0x9aa1,0x88f8,0x843d,0x6d1b,0x9a86,0x7edc,
-0x5988,0x9ebb,0x739b,0x7801,0x8682,0x9a6c,0x9a82,0x561b,
-0x5417,0x57cb,0x4e70,0x9ea6,0x5356,0x8fc8,0x8109,0x7792,
-0x9992,0x86ee,0x6ee1,0x8513,0x66fc,0x6162,0x6f2b,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x8c29,0x8292,0x832b,
-0x76f2,0x6c13,0x5fd9,0x83bd,0x732b,0x8305,0x951a,0x6bdb,
-0x77db,0x94c6,0x536f,0x8302,0x5192,0x5e3d,0x8c8c,0x8d38,
-0x4e48,0x73ab,0x679a,0x6885,0x9176,0x9709,0x7164,0x6ca1,
-0x7709,0x5a92,0x9541,0x6bcf,0x7f8e,0x6627,0x5bd0,0x59b9,
-0x5a9a,0x95e8,0x95f7,0x4eec,0x840c,0x8499,0x6aac,0x76df,
-0x9530,0x731b,0x68a6,0x5b5f,0x772f,0x919a,0x9761,0x7cdc,
-0x8ff7,0x8c1c,0x5f25,0x7c73,0x79d8,0x89c5,0x6ccc,0x871c,
-0x5bc6,0x5e42,0x68c9,0x7720,0x7ef5,0x5195,0x514d,0x52c9,
-0x5a29,0x7f05,0x9762,0x82d7,0x63cf,0x7784,0x85d0,0x79d2,
-0x6e3a,0x5e99,0x5999,0x8511,0x706d,0x6c11,0x62bf,0x76bf,
-0x654f,0x60af,0x95fd,0x660e,0x879f,0x9e23,0x94ed,0x540d,
-0x547d,0x8c2c,0x6478,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6479,0x8611,0x6a21,0x819c,0x78e8,0x6469,0x9b54,
-0x62b9,0x672b,0x83ab,0x58a8,0x9ed8,0x6cab,0x6f20,0x5bde,
-0x964c,0x8c0b,0x725f,0x67d0,0x62c7,0x7261,0x4ea9,0x59c6,
-0x6bcd,0x5893,0x66ae,0x5e55,0x52df,0x6155,0x6728,0x76ee,
-0x7766,0x7267,0x7a46,0x62ff,0x54ea,0x5450,0x94a0,0x90a3,
-0x5a1c,0x7eb3,0x6c16,0x4e43,0x5976,0x8010,0x5948,0x5357,
-0x7537,0x96be,0x56ca,0x6320,0x8111,0x607c,0x95f9,0x6dd6,
-0x5462,0x9981,0x5185,0x5ae9,0x80fd,0x59ae,0x9713,0x502a,
-0x6ce5,0x5c3c,0x62df,0x4f60,0x533f,0x817b,0x9006,0x6eba,
-0x852b,0x62c8,0x5e74,0x78be,0x64b5,0x637b,0x5ff5,0x5a18,
-0x917f,0x9e1f,0x5c3f,0x634f,0x8042,0x5b7d,0x556e,0x954a,
-0x954d,0x6d85,0x60a8,0x67e0,0x72de,0x51dd,0x5b81,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x62e7,0x6cde,0x725b,
-0x626d,0x94ae,0x7ebd,0x8113,0x6d53,0x519c,0x5f04,0x5974,
-0x52aa,0x6012,0x5973,0x6696,0x8650,0x759f,0x632a,0x61e6,
-0x7cef,0x8bfa,0x54e6,0x6b27,0x9e25,0x6bb4,0x85d5,0x5455,
-0x5076,0x6ca4,0x556a,0x8db4,0x722c,0x5e15,0x6015,0x7436,
-0x62cd,0x6392,0x724c,0x5f98,0x6e43,0x6d3e,0x6500,0x6f58,
-0x76d8,0x78d0,0x76fc,0x7554,0x5224,0x53db,0x4e53,0x5e9e,
-0x65c1,0x802a,0x80d6,0x629b,0x5486,0x5228,0x70ae,0x888d,
-0x8dd1,0x6ce1,0x5478,0x80da,0x57f9,0x88f4,0x8d54,0x966a,
-0x914d,0x4f69,0x6c9b,0x55b7,0x76c6,0x7830,0x62a8,0x70f9,
-0x6f8e,0x5f6d,0x84ec,0x68da,0x787c,0x7bf7,0x81a8,0x670b,
-0x9e4f,0x6367,0x78b0,0x576f,0x7812,0x9739,0x6279,0x62ab,
-0x5288,0x7435,0x6bd7,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5564,0x813e,0x75b2,0x76ae,0x5339,0x75de,0x50fb,
-0x5c41,0x8b6c,0x7bc7,0x504f,0x7247,0x9a97,0x98d8,0x6f02,
-0x74e2,0x7968,0x6487,0x77a5,0x62fc,0x9891,0x8d2b,0x54c1,
-0x8058,0x4e52,0x576a,0x82f9,0x840d,0x5e73,0x51ed,0x74f6,
-0x8bc4,0x5c4f,0x5761,0x6cfc,0x9887,0x5a46,0x7834,0x9b44,
-0x8feb,0x7c95,0x5256,0x6251,0x94fa,0x4ec6,0x8386,0x8461,
-0x83e9,0x84b2,0x57d4,0x6734,0x5703,0x666e,0x6d66,0x8c31,
-0x66dd,0x7011,0x671f,0x6b3a,0x6816,0x621a,0x59bb,0x4e03,
-0x51c4,0x6f06,0x67d2,0x6c8f,0x5176,0x68cb,0x5947,0x6b67,
-0x7566,0x5d0e,0x8110,0x9f50,0x65d7,0x7948,0x7941,0x9a91,
-0x8d77,0x5c82,0x4e5e,0x4f01,0x542f,0x5951,0x780c,0x5668,
-0x6c14,0x8fc4,0x5f03,0x6c7d,0x6ce3,0x8bab,0x6390,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6070,0x6d3d,0x7275,
-0x6266,0x948e,0x94c5,0x5343,0x8fc1,0x7b7e,0x4edf,0x8c26,
-0x4e7e,0x9ed4,0x94b1,0x94b3,0x524d,0x6f5c,0x9063,0x6d45,
-0x8c34,0x5811,0x5d4c,0x6b20,0x6b49,0x67aa,0x545b,0x8154,
-0x7f8c,0x5899,0x8537,0x5f3a,0x62a2,0x6a47,0x9539,0x6572,
-0x6084,0x6865,0x77a7,0x4e54,0x4fa8,0x5de7,0x9798,0x64ac,
-0x7fd8,0x5ced,0x4fcf,0x7a8d,0x5207,0x8304,0x4e14,0x602f,
-0x7a83,0x94a6,0x4fb5,0x4eb2,0x79e6,0x7434,0x52e4,0x82b9,
-0x64d2,0x79bd,0x5bdd,0x6c81,0x9752,0x8f7b,0x6c22,0x503e,
-0x537f,0x6e05,0x64ce,0x6674,0x6c30,0x60c5,0x9877,0x8bf7,
-0x5e86,0x743c,0x7a77,0x79cb,0x4e18,0x90b1,0x7403,0x6c42,
-0x56da,0x914b,0x6cc5,0x8d8b,0x533a,0x86c6,0x66f2,0x8eaf,
-0x5c48,0x9a71,0x6e20,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x53d6,0x5a36,0x9f8b,0x8da3,0x53bb,0x5708,0x98a7,
-0x6743,0x919b,0x6cc9,0x5168,0x75ca,0x62f3,0x72ac,0x5238,
-0x529d,0x7f3a,0x7094,0x7638,0x5374,0x9e4a,0x69b7,0x786e,
-0x96c0,0x88d9,0x7fa4,0x7136,0x71c3,0x5189,0x67d3,0x74e4,
-0x58e4,0x6518,0x56b7,0x8ba9,0x9976,0x6270,0x7ed5,0x60f9,
-0x70ed,0x58ec,0x4ec1,0x4eba,0x5fcd,0x97e7,0x4efb,0x8ba4,
-0x5203,0x598a,0x7eab,0x6254,0x4ecd,0x65e5,0x620e,0x8338,
-0x84c9,0x8363,0x878d,0x7194,0x6eb6,0x5bb9,0x7ed2,0x5197,
-0x63c9,0x67d4,0x8089,0x8339,0x8815,0x5112,0x5b7a,0x5982,
-0x8fb1,0x4e73,0x6c5d,0x5165,0x8925,0x8f6f,0x962e,0x854a,
-0x745e,0x9510,0x95f0,0x6da6,0x82e5,0x5f31,0x6492,0x6d12,
-0x8428,0x816e,0x9cc3,0x585e,0x8d5b,0x4e09,0x53c1,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x4f1e,0x6563,0x6851,
-0x55d3,0x4e27,0x6414,0x9a9a,0x626b,0x5ac2,0x745f,0x8272,
-0x6da9,0x68ee,0x50e7,0x838e,0x7802,0x6740,0x5239,0x6c99,
-0x7eb1,0x50bb,0x5565,0x715e,0x7b5b,0x6652,0x73ca,0x82eb,
-0x6749,0x5c71,0x5220,0x717d,0x886b,0x95ea,0x9655,0x64c5,
-0x8d61,0x81b3,0x5584,0x6c55,0x6247,0x7f2e,0x5892,0x4f24,
-0x5546,0x8d4f,0x664c,0x4e0a,0x5c1a,0x88f3,0x68a2,0x634e,
-0x7a0d,0x70e7,0x828d,0x52fa,0x97f6,0x5c11,0x54e8,0x90b5,
-0x7ecd,0x5962,0x8d4a,0x86c7,0x820c,0x820d,0x8d66,0x6444,
-0x5c04,0x6151,0x6d89,0x793e,0x8bbe,0x7837,0x7533,0x547b,
-0x4f38,0x8eab,0x6df1,0x5a20,0x7ec5,0x795e,0x6c88,0x5ba1,
-0x5a76,0x751a,0x80be,0x614e,0x6e17,0x58f0,0x751f,0x7525,
-0x7272,0x5347,0x7ef3,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x7701,0x76db,0x5269,0x80dc,0x5723,0x5e08,0x5931,
-0x72ee,0x65bd,0x6e7f,0x8bd7,0x5c38,0x8671,0x5341,0x77f3,
-0x62fe,0x65f6,0x4ec0,0x98df,0x8680,0x5b9e,0x8bc6,0x53f2,
-0x77e2,0x4f7f,0x5c4e,0x9a76,0x59cb,0x5f0f,0x793a,0x58eb,
-0x4e16,0x67ff,0x4e8b,0x62ed,0x8a93,0x901d,0x52bf,0x662f,
-0x55dc,0x566c,0x9002,0x4ed5,0x4f8d,0x91ca,0x9970,0x6c0f,
-0x5e02,0x6043,0x5ba4,0x89c6,0x8bd5,0x6536,0x624b,0x9996,
-0x5b88,0x5bff,0x6388,0x552e,0x53d7,0x7626,0x517d,0x852c,
-0x67a2,0x68b3,0x6b8a,0x6292,0x8f93,0x53d4,0x8212,0x6dd1,
-0x758f,0x4e66,0x8d4e,0x5b70,0x719f,0x85af,0x6691,0x66d9,
-0x7f72,0x8700,0x9ecd,0x9f20,0x5c5e,0x672f,0x8ff0,0x6811,
-0x675f,0x620d,0x7ad6,0x5885,0x5eb6,0x6570,0x6f31,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6055,0x5237,0x800d,
-0x6454,0x8870,0x7529,0x5e05,0x6813,0x62f4,0x971c,0x53cc,
-0x723d,0x8c01,0x6c34,0x7761,0x7a0e,0x542e,0x77ac,0x987a,
-0x821c,0x8bf4,0x7855,0x6714,0x70c1,0x65af,0x6495,0x5636,
-0x601d,0x79c1,0x53f8,0x4e1d,0x6b7b,0x8086,0x5bfa,0x55e3,
-0x56db,0x4f3a,0x4f3c,0x9972,0x5df3,0x677e,0x8038,0x6002,
-0x9882,0x9001,0x5b8b,0x8bbc,0x8bf5,0x641c,0x8258,0x64de,
-0x55fd,0x82cf,0x9165,0x4fd7,0x7d20,0x901f,0x7c9f,0x50f3,
-0x5851,0x6eaf,0x5bbf,0x8bc9,0x8083,0x9178,0x849c,0x7b97,
-0x867d,0x968b,0x968f,0x7ee5,0x9ad3,0x788e,0x5c81,0x7a57,
-0x9042,0x96a7,0x795f,0x5b59,0x635f,0x7b0b,0x84d1,0x68ad,
-0x5506,0x7f29,0x7410,0x7d22,0x9501,0x6240,0x584c,0x4ed6,
-0x5b83,0x5979,0x5854,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x736d,0x631e,0x8e4b,0x8e0f,0x80ce,0x82d4,0x62ac,
-0x53f0,0x6cf0,0x915e,0x592a,0x6001,0x6c70,0x574d,0x644a,
-0x8d2a,0x762b,0x6ee9,0x575b,0x6a80,0x75f0,0x6f6d,0x8c2d,
-0x8c08,0x5766,0x6bef,0x8892,0x78b3,0x63a2,0x53f9,0x70ad,
-0x6c64,0x5858,0x642a,0x5802,0x68e0,0x819b,0x5510,0x7cd6,
-0x5018,0x8eba,0x6dcc,0x8d9f,0x70eb,0x638f,0x6d9b,0x6ed4,
-0x7ee6,0x8404,0x6843,0x9003,0x6dd8,0x9676,0x8ba8,0x5957,
-0x7279,0x85e4,0x817e,0x75bc,0x8a8a,0x68af,0x5254,0x8e22,
-0x9511,0x63d0,0x9898,0x8e44,0x557c,0x4f53,0x66ff,0x568f,
-0x60d5,0x6d95,0x5243,0x5c49,0x5929,0x6dfb,0x586b,0x7530,
-0x751c,0x606c,0x8214,0x8146,0x6311,0x6761,0x8fe2,0x773a,
-0x8df3,0x8d34,0x94c1,0x5e16,0x5385,0x542c,0x70c3,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6c40,0x5ef7,0x505c,
-0x4ead,0x5ead,0x633a,0x8247,0x901a,0x6850,0x916e,0x77b3,
-0x540c,0x94dc,0x5f64,0x7ae5,0x6876,0x6345,0x7b52,0x7edf,
-0x75db,0x5077,0x6295,0x5934,0x900f,0x51f8,0x79c3,0x7a81,
-0x56fe,0x5f92,0x9014,0x6d82,0x5c60,0x571f,0x5410,0x5154,
-0x6e4d,0x56e2,0x63a8,0x9893,0x817f,0x8715,0x892a,0x9000,
-0x541e,0x5c6f,0x81c0,0x62d6,0x6258,0x8131,0x9e35,0x9640,
-0x9a6e,0x9a7c,0x692d,0x59a5,0x62d3,0x553e,0x6316,0x54c7,
-0x86d9,0x6d3c,0x5a03,0x74e6,0x889c,0x6b6a,0x5916,0x8c4c,
-0x5f2f,0x6e7e,0x73a9,0x987d,0x4e38,0x70f7,0x5b8c,0x7897,
-0x633d,0x665a,0x7696,0x60cb,0x5b9b,0x5a49,0x4e07,0x8155,
-0x6c6a,0x738b,0x4ea1,0x6789,0x7f51,0x5f80,0x65fa,0x671b,
-0x5fd8,0x5984,0x5a01,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5dcd,0x5fae,0x5371,0x97e6,0x8fdd,0x6845,0x56f4,
-0x552f,0x60df,0x4e3a,0x6f4d,0x7ef4,0x82c7,0x840e,0x59d4,
-0x4f1f,0x4f2a,0x5c3e,0x7eac,0x672a,0x851a,0x5473,0x754f,
-0x80c3,0x5582,0x9b4f,0x4f4d,0x6e2d,0x8c13,0x5c09,0x6170,
-0x536b,0x761f,0x6e29,0x868a,0x6587,0x95fb,0x7eb9,0x543b,
-0x7a33,0x7d0a,0x95ee,0x55e1,0x7fc1,0x74ee,0x631d,0x8717,
-0x6da1,0x7a9d,0x6211,0x65a1,0x5367,0x63e1,0x6c83,0x5deb,
-0x545c,0x94a8,0x4e4c,0x6c61,0x8bec,0x5c4b,0x65e0,0x829c,
-0x68a7,0x543e,0x5434,0x6bcb,0x6b66,0x4e94,0x6342,0x5348,
-0x821e,0x4f0d,0x4fae,0x575e,0x620a,0x96fe,0x6664,0x7269,
-0x52ff,0x52a1,0x609f,0x8bef,0x6614,0x7199,0x6790,0x897f,
-0x7852,0x77fd,0x6670,0x563b,0x5438,0x9521,0x727a,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x7a00,0x606f,0x5e0c,
-0x6089,0x819d,0x5915,0x60dc,0x7184,0x70ef,0x6eaa,0x6c50,
-0x7280,0x6a84,0x88ad,0x5e2d,0x4e60,0x5ab3,0x559c,0x94e3,
-0x6d17,0x7cfb,0x9699,0x620f,0x7ec6,0x778e,0x867e,0x5323,
-0x971e,0x8f96,0x6687,0x5ce1,0x4fa0,0x72ed,0x4e0b,0x53a6,
-0x590f,0x5413,0x6380,0x9528,0x5148,0x4ed9,0x9c9c,0x7ea4,
-0x54b8,0x8d24,0x8854,0x8237,0x95f2,0x6d8e,0x5f26,0x5acc,
-0x663e,0x9669,0x73b0,0x732e,0x53bf,0x817a,0x9985,0x7fa1,
-0x5baa,0x9677,0x9650,0x7ebf,0x76f8,0x53a2,0x9576,0x9999,
-0x7bb1,0x8944,0x6e58,0x4e61,0x7fd4,0x7965,0x8be6,0x60f3,
-0x54cd,0x4eab,0x9879,0x5df7,0x6a61,0x50cf,0x5411,0x8c61,
-0x8427,0x785d,0x9704,0x524a,0x54ee,0x56a3,0x9500,0x6d88,
-0x5bb5,0x6dc6,0x6653,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5c0f,0x5b5d,0x6821,0x8096,0x5578,0x7b11,0x6548,
-0x6954,0x4e9b,0x6b47,0x874e,0x978b,0x534f,0x631f,0x643a,
-0x90aa,0x659c,0x80c1,0x8c10,0x5199,0x68b0,0x5378,0x87f9,
-0x61c8,0x6cc4,0x6cfb,0x8c22,0x5c51,0x85aa,0x82af,0x950c,
-0x6b23,0x8f9b,0x65b0,0x5ffb,0x5fc3,0x4fe1,0x8845,0x661f,
-0x8165,0x7329,0x60fa,0x5174,0x5211,0x578b,0x5f62,0x90a2,
-0x884c,0x9192,0x5e78,0x674f,0x6027,0x59d3,0x5144,0x51f6,
-0x80f8,0x5308,0x6c79,0x96c4,0x718a,0x4f11,0x4fee,0x7f9e,
-0x673d,0x55c5,0x9508,0x79c0,0x8896,0x7ee3,0x589f,0x620c,
-0x9700,0x865a,0x5618,0x987b,0x5f90,0x8bb8,0x84c4,0x9157,
-0x53d9,0x65ed,0x5e8f,0x755c,0x6064,0x7d6e,0x5a7f,0x7eea,
-0x7eed,0x8f69,0x55a7,0x5ba3,0x60ac,0x65cb,0x7384,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x9009,0x7663,0x7729,
-0x7eda,0x9774,0x859b,0x5b66,0x7a74,0x96ea,0x8840,0x52cb,
-0x718f,0x5faa,0x65ec,0x8be2,0x5bfb,0x9a6f,0x5de1,0x6b89,
-0x6c5b,0x8bad,0x8baf,0x900a,0x8fc5,0x538b,0x62bc,0x9e26,
-0x9e2d,0x5440,0x4e2b,0x82bd,0x7259,0x869c,0x5d16,0x8859,
-0x6daf,0x96c5,0x54d1,0x4e9a,0x8bb6,0x7109,0x54bd,0x9609,
-0x70df,0x6df9,0x76d0,0x4e25,0x7814,0x8712,0x5ca9,0x5ef6,
-0x8a00,0x989c,0x960e,0x708e,0x6cbf,0x5944,0x63a9,0x773c,
-0x884d,0x6f14,0x8273,0x5830,0x71d5,0x538c,0x781a,0x96c1,
-0x5501,0x5f66,0x7130,0x5bb4,0x8c1a,0x9a8c,0x6b83,0x592e,
-0x9e2f,0x79e7,0x6768,0x626c,0x4f6f,0x75a1,0x7f8a,0x6d0b,
-0x9633,0x6c27,0x4ef0,0x75d2,0x517b,0x6837,0x6f3e,0x9080,
-0x8170,0x5996,0x7476,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6447,0x5c27,0x9065,0x7a91,0x8c23,0x59da,0x54ac,
-0x8200,0x836f,0x8981,0x8000,0x6930,0x564e,0x8036,0x7237,
-0x91ce,0x51b6,0x4e5f,0x9875,0x6396,0x4e1a,0x53f6,0x66f3,
-0x814b,0x591c,0x6db2,0x4e00,0x58f9,0x533b,0x63d6,0x94f1,
-0x4f9d,0x4f0a,0x8863,0x9890,0x5937,0x9057,0x79fb,0x4eea,
-0x80f0,0x7591,0x6c82,0x5b9c,0x59e8,0x5f5d,0x6905,0x8681,
-0x501a,0x5df2,0x4e59,0x77e3,0x4ee5,0x827a,0x6291,0x6613,
-0x9091,0x5c79,0x4ebf,0x5f79,0x81c6,0x9038,0x8084,0x75ab,
-0x4ea6,0x88d4,0x610f,0x6bc5,0x5fc6,0x4e49,0x76ca,0x6ea2,
-0x8be3,0x8bae,0x8c0a,0x8bd1,0x5f02,0x7ffc,0x7fcc,0x7ece,
-0x8335,0x836b,0x56e0,0x6bb7,0x97f3,0x9634,0x59fb,0x541f,
-0x94f6,0x6deb,0x5bc5,0x996e,0x5c39,0x5f15,0x9690,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x5370,0x82f1,0x6a31,
-0x5a74,0x9e70,0x5e94,0x7f28,0x83b9,0x8424,0x8425,0x8367,
-0x8747,0x8fce,0x8d62,0x76c8,0x5f71,0x9896,0x786c,0x6620,
-0x54df,0x62e5,0x4f63,0x81c3,0x75c8,0x5eb8,0x96cd,0x8e0a,
-0x86f9,0x548f,0x6cf3,0x6d8c,0x6c38,0x607f,0x52c7,0x7528,
-0x5e7d,0x4f18,0x60a0,0x5fe7,0x5c24,0x7531,0x90ae,0x94c0,
-0x72b9,0x6cb9,0x6e38,0x9149,0x6709,0x53cb,0x53f3,0x4f51,
-0x91c9,0x8bf1,0x53c8,0x5e7c,0x8fc2,0x6de4,0x4e8e,0x76c2,
-0x6986,0x865e,0x611a,0x8206,0x4f59,0x4fde,0x903e,0x9c7c,
-0x6109,0x6e1d,0x6e14,0x9685,0x4e88,0x5a31,0x96e8,0x4e0e,
-0x5c7f,0x79b9,0x5b87,0x8bed,0x7fbd,0x7389,0x57df,0x828b,
-0x90c1,0x5401,0x9047,0x55bb,0x5cea,0x5fa1,0x6108,0x6b32,
-0x72f1,0x80b2,0x8a89,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6d74,0x5bd3,0x88d5,0x9884,0x8c6b,0x9a6d,0x9e33,
-0x6e0a,0x51a4,0x5143,0x57a3,0x8881,0x539f,0x63f4,0x8f95,
-0x56ed,0x5458,0x5706,0x733f,0x6e90,0x7f18,0x8fdc,0x82d1,
-0x613f,0x6028,0x9662,0x66f0,0x7ea6,0x8d8a,0x8dc3,0x94a5,
-0x5cb3,0x7ca4,0x6708,0x60a6,0x9605,0x8018,0x4e91,0x90e7,
-0x5300,0x9668,0x5141,0x8fd0,0x8574,0x915d,0x6655,0x97f5,
-0x5b55,0x531d,0x7838,0x6742,0x683d,0x54c9,0x707e,0x5bb0,
-0x8f7d,0x518d,0x5728,0x54b1,0x6512,0x6682,0x8d5e,0x8d43,
-0x810f,0x846c,0x906d,0x7cdf,0x51ff,0x85fb,0x67a3,0x65e9,
-0x6fa1,0x86a4,0x8e81,0x566a,0x9020,0x7682,0x7076,0x71e5,
-0x8d23,0x62e9,0x5219,0x6cfd,0x8d3c,0x600e,0x589e,0x618e,
-0x66fe,0x8d60,0x624e,0x55b3,0x6e23,0x672d,0x8f67,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x94e1,0x95f8,0x7728,
-0x6805,0x69a8,0x548b,0x4e4d,0x70b8,0x8bc8,0x6458,0x658b,
-0x5b85,0x7a84,0x503a,0x5be8,0x77bb,0x6be1,0x8a79,0x7c98,
-0x6cbe,0x76cf,0x65a9,0x8f97,0x5d2d,0x5c55,0x8638,0x6808,
-0x5360,0x6218,0x7ad9,0x6e5b,0x7efd,0x6a1f,0x7ae0,0x5f70,
-0x6f33,0x5f20,0x638c,0x6da8,0x6756,0x4e08,0x5e10,0x8d26,
-0x4ed7,0x80c0,0x7634,0x969c,0x62db,0x662d,0x627e,0x6cbc,
-0x8d75,0x7167,0x7f69,0x5146,0x8087,0x53ec,0x906e,0x6298,
-0x54f2,0x86f0,0x8f99,0x8005,0x9517,0x8517,0x8fd9,0x6d59,
-0x73cd,0x659f,0x771f,0x7504,0x7827,0x81fb,0x8d1e,0x9488,
-0x4fa6,0x6795,0x75b9,0x8bca,0x9707,0x632f,0x9547,0x9635,
-0x84b8,0x6323,0x7741,0x5f81,0x72f0,0x4e89,0x6014,0x6574,
-0x62ef,0x6b63,0x653f,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5e27,0x75c7,0x90d1,0x8bc1,0x829d,0x679d,0x652f,
-0x5431,0x8718,0x77e5,0x80a2,0x8102,0x6c41,0x4e4b,0x7ec7,
-0x804c,0x76f4,0x690d,0x6b96,0x6267,0x503c,0x4f84,0x5740,
-0x6307,0x6b62,0x8dbe,0x53ea,0x65e8,0x7eb8,0x5fd7,0x631a,
-0x63b7,0x81f3,0x81f4,0x7f6e,0x5e1c,0x5cd9,0x5236,0x667a,
-0x79e9,0x7a1a,0x8d28,0x7099,0x75d4,0x6ede,0x6cbb,0x7a92,
-0x4e2d,0x76c5,0x5fe0,0x949f,0x8877,0x7ec8,0x79cd,0x80bf,
-0x91cd,0x4ef2,0x4f17,0x821f,0x5468,0x5dde,0x6d32,0x8bcc,
-0x7ca5,0x8f74,0x8098,0x5e1a,0x5492,0x76b1,0x5b99,0x663c,
-0x9aa4,0x73e0,0x682a,0x86db,0x6731,0x732a,0x8bf8,0x8bdb,
-0x9010,0x7af9,0x70db,0x716e,0x62c4,0x77a9,0x5631,0x4e3b,
-0x8457,0x67f1,0x52a9,0x86c0,0x8d2e,0x94f8,0x7b51,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x4f4f,0x6ce8,0x795d,
-0x9a7b,0x6293,0x722a,0x62fd,0x4e13,0x7816,0x8f6c,0x64b0,
-0x8d5a,0x7bc6,0x6869,0x5e84,0x88c5,0x5986,0x649e,0x58ee,
-0x72b6,0x690e,0x9525,0x8ffd,0x8d58,0x5760,0x7f00,0x8c06,
-0x51c6,0x6349,0x62d9,0x5353,0x684c,0x7422,0x8301,0x914c,
-0x5544,0x7740,0x707c,0x6d4a,0x5179,0x54a8,0x8d44,0x59ff,
-0x6ecb,0x6dc4,0x5b5c,0x7d2b,0x4ed4,0x7c7d,0x6ed3,0x5b50,
-0x81ea,0x6e0d,0x5b57,0x9b03,0x68d5,0x8e2a,0x5b97,0x7efc,
-0x603b,0x7eb5,0x90b9,0x8d70,0x594f,0x63cd,0x79df,0x8db3,
-0x5352,0x65cf,0x7956,0x8bc5,0x963b,0x7ec4,0x94bb,0x7e82,
-0x5634,0x9189,0x6700,0x7f6a,0x5c0a,0x9075,0x6628,0x5de6,
-0x4f50,0x67de,0x505a,0x4f5c,0x5750,0x5ea7,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x4e8d,0x4e0c,0x5140,0x4e10,0x5eff,0x5345,0x4e15,
-0x4e98,0x4e1e,0x9b32,0x5b6c,0x5669,0x4e28,0x79ba,0x4e3f,
-0x5315,0x4e47,0x592d,0x723b,0x536e,0x6c10,0x56df,0x80e4,
-0x9997,0x6bd3,0x777e,0x9f17,0x4e36,0x4e9f,0x9f10,0x4e5c,
-0x4e69,0x4e93,0x8288,0x5b5b,0x556c,0x560f,0x4ec4,0x538d,
-0x539d,0x53a3,0x53a5,0x53ae,0x9765,0x8d5d,0x531a,0x53f5,
-0x5326,0x532e,0x533e,0x8d5c,0x5366,0x5363,0x5202,0x5208,
-0x520e,0x522d,0x5233,0x523f,0x5240,0x524c,0x525e,0x5261,
-0x525c,0x84af,0x527d,0x5282,0x5281,0x5290,0x5293,0x5182,
-0x7f54,0x4ebb,0x4ec3,0x4ec9,0x4ec2,0x4ee8,0x4ee1,0x4eeb,
-0x4ede,0x4f1b,0x4ef3,0x4f22,0x4f64,0x4ef5,0x4f25,0x4f27,
-0x4f09,0x4f2b,0x4f5e,0x4f67,0x6538,0x4f5a,0x4f5d,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x4f5f,0x4f57,0x4f32,
-0x4f3d,0x4f76,0x4f74,0x4f91,0x4f89,0x4f83,0x4f8f,0x4f7e,
-0x4f7b,0x4faa,0x4f7c,0x4fac,0x4f94,0x4fe6,0x4fe8,0x4fea,
-0x4fc5,0x4fda,0x4fe3,0x4fdc,0x4fd1,0x4fdf,0x4ff8,0x5029,
-0x504c,0x4ff3,0x502c,0x500f,0x502e,0x502d,0x4ffe,0x501c,
-0x500c,0x5025,0x5028,0x507e,0x5043,0x5055,0x5048,0x504e,
-0x506c,0x507b,0x50a5,0x50a7,0x50a9,0x50ba,0x50d6,0x5106,
-0x50ed,0x50ec,0x50e6,0x50ee,0x5107,0x510b,0x4edd,0x6c3d,
-0x4f58,0x4f65,0x4fce,0x9fa0,0x6c46,0x7c74,0x516e,0x5dfd,
-0x9ec9,0x9998,0x5181,0x5914,0x52f9,0x530d,0x8a07,0x5310,
-0x51eb,0x5919,0x5155,0x4ea0,0x5156,0x4eb3,0x886e,0x88a4,
-0x4eb5,0x8114,0x88d2,0x7980,0x5b34,0x8803,0x7fb8,0x51ab,
-0x51b1,0x51bd,0x51bc,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x51c7,0x5196,0x51a2,0x51a5,0x8ba0,0x8ba6,0x8ba7,
-0x8baa,0x8bb4,0x8bb5,0x8bb7,0x8bc2,0x8bc3,0x8bcb,0x8bcf,
-0x8bce,0x8bd2,0x8bd3,0x8bd4,0x8bd6,0x8bd8,0x8bd9,0x8bdc,
-0x8bdf,0x8be0,0x8be4,0x8be8,0x8be9,0x8bee,0x8bf0,0x8bf3,
-0x8bf6,0x8bf9,0x8bfc,0x8bff,0x8c00,0x8c02,0x8c04,0x8c07,
-0x8c0c,0x8c0f,0x8c11,0x8c12,0x8c14,0x8c15,0x8c16,0x8c19,
-0x8c1b,0x8c18,0x8c1d,0x8c1f,0x8c20,0x8c21,0x8c25,0x8c27,
-0x8c2a,0x8c2b,0x8c2e,0x8c2f,0x8c32,0x8c33,0x8c35,0x8c36,
-0x5369,0x537a,0x961d,0x9622,0x9621,0x9631,0x962a,0x963d,
-0x963c,0x9642,0x9649,0x9654,0x965f,0x9667,0x966c,0x9672,
-0x9674,0x9688,0x968d,0x9697,0x96b0,0x9097,0x909b,0x909d,
-0x9099,0x90ac,0x90a1,0x90b4,0x90b3,0x90b6,0x90ba,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x90b8,0x90b0,0x90cf,
-0x90c5,0x90be,0x90d0,0x90c4,0x90c7,0x90d3,0x90e6,0x90e2,
-0x90dc,0x90d7,0x90db,0x90eb,0x90ef,0x90fe,0x9104,0x9122,
-0x911e,0x9123,0x9131,0x912f,0x9139,0x9143,0x9146,0x520d,
-0x5942,0x52a2,0x52ac,0x52ad,0x52be,0x54ff,0x52d0,0x52d6,
-0x52f0,0x53df,0x71ee,0x77cd,0x5ef4,0x51f5,0x51fc,0x9b2f,
-0x53b6,0x5f01,0x755a,0x5def,0x574c,0x57a9,0x57a1,0x587e,
-0x58bc,0x58c5,0x58d1,0x5729,0x572c,0x572a,0x5733,0x5739,
-0x572e,0x572f,0x575c,0x573b,0x5742,0x5769,0x5785,0x576b,
-0x5786,0x577c,0x577b,0x5768,0x576d,0x5776,0x5773,0x57ad,
-0x57a4,0x578c,0x57b2,0x57cf,0x57a7,0x57b4,0x5793,0x57a0,
-0x57d5,0x57d8,0x57da,0x57d9,0x57d2,0x57b8,0x57f4,0x57ef,
-0x57f8,0x57e4,0x57dd,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x580b,0x580d,0x57fd,0x57ed,0x5800,0x581e,0x5819,
-0x5844,0x5820,0x5865,0x586c,0x5881,0x5889,0x589a,0x5880,
-0x99a8,0x9f19,0x61ff,0x8279,0x827d,0x827f,0x828f,0x828a,
-0x82a8,0x8284,0x828e,0x8291,0x8297,0x8299,0x82ab,0x82b8,
-0x82be,0x82b0,0x82c8,0x82ca,0x82e3,0x8298,0x82b7,0x82ae,
-0x82cb,0x82cc,0x82c1,0x82a9,0x82b4,0x82a1,0x82aa,0x829f,
-0x82c4,0x82ce,0x82a4,0x82e1,0x8309,0x82f7,0x82e4,0x830f,
-0x8307,0x82dc,0x82f4,0x82d2,0x82d8,0x830c,0x82fb,0x82d3,
-0x8311,0x831a,0x8306,0x8314,0x8315,0x82e0,0x82d5,0x831c,
-0x8351,0x835b,0x835c,0x8308,0x8392,0x833c,0x8334,0x8331,
-0x839b,0x835e,0x832f,0x834f,0x8347,0x8343,0x835f,0x8340,
-0x8317,0x8360,0x832d,0x833a,0x8333,0x8366,0x8365,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x8368,0x831b,0x8369,
-0x836c,0x836a,0x836d,0x836e,0x83b0,0x8378,0x83b3,0x83b4,
-0x83a0,0x83aa,0x8393,0x839c,0x8385,0x837c,0x83b6,0x83a9,
-0x837d,0x83b8,0x837b,0x8398,0x839e,0x83a8,0x83ba,0x83bc,
-0x83c1,0x8401,0x83e5,0x83d8,0x5807,0x8418,0x840b,0x83dd,
-0x83fd,0x83d6,0x841c,0x8438,0x8411,0x8406,0x83d4,0x83df,
-0x840f,0x8403,0x83f8,0x83f9,0x83ea,0x83c5,0x83c0,0x8426,
-0x83f0,0x83e1,0x845c,0x8451,0x845a,0x8459,0x8473,0x8487,
-0x8488,0x847a,0x8489,0x8478,0x843c,0x8446,0x8469,0x8476,
-0x848c,0x848e,0x8431,0x846d,0x84c1,0x84cd,0x84d0,0x84e6,
-0x84bd,0x84d3,0x84ca,0x84bf,0x84ba,0x84e0,0x84a1,0x84b9,
-0x84b4,0x8497,0x84e5,0x84e3,0x850c,0x750d,0x8538,0x84f0,
-0x8539,0x851f,0x853a,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x8556,0x853b,0x84ff,0x84fc,0x8559,0x8548,0x8568,
-0x8564,0x855e,0x857a,0x77a2,0x8543,0x8572,0x857b,0x85a4,
-0x85a8,0x8587,0x858f,0x8579,0x85ae,0x859c,0x8585,0x85b9,
-0x85b7,0x85b0,0x85d3,0x85c1,0x85dc,0x85ff,0x8627,0x8605,
-0x8629,0x8616,0x863c,0x5efe,0x5f08,0x593c,0x5941,0x8037,
-0x5955,0x595a,0x5958,0x530f,0x5c22,0x5c25,0x5c2c,0x5c34,
-0x624c,0x626a,0x629f,0x62bb,0x62ca,0x62da,0x62d7,0x62ee,
-0x6322,0x62f6,0x6339,0x634b,0x6343,0x63ad,0x63f6,0x6371,
-0x637a,0x638e,0x63b4,0x636d,0x63ac,0x638a,0x6369,0x63ae,
-0x63bc,0x63f2,0x63f8,0x63e0,0x63ff,0x63c4,0x63de,0x63ce,
-0x6452,0x63c6,0x63be,0x6445,0x6441,0x640b,0x641b,0x6420,
-0x640c,0x6426,0x6421,0x645e,0x6484,0x646d,0x6496,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x647a,0x64b7,0x64b8,
-0x6499,0x64ba,0x64c0,0x64d0,0x64d7,0x64e4,0x64e2,0x6509,
-0x6525,0x652e,0x5f0b,0x5fd2,0x7519,0x5f11,0x535f,0x53f1,
-0x53fd,0x53e9,0x53e8,0x53fb,0x5412,0x5416,0x5406,0x544b,
-0x5452,0x5453,0x5454,0x5456,0x5443,0x5421,0x5457,0x5459,
-0x5423,0x5432,0x5482,0x5494,0x5477,0x5471,0x5464,0x549a,
-0x549b,0x5484,0x5476,0x5466,0x549d,0x54d0,0x54ad,0x54c2,
-0x54b4,0x54d2,0x54a7,0x54a6,0x54d3,0x54d4,0x5472,0x54a3,
-0x54d5,0x54bb,0x54bf,0x54cc,0x54d9,0x54da,0x54dc,0x54a9,
-0x54aa,0x54a4,0x54dd,0x54cf,0x54de,0x551b,0x54e7,0x5520,
-0x54fd,0x5514,0x54f3,0x5522,0x5523,0x550f,0x5511,0x5527,
-0x552a,0x5567,0x558f,0x55b5,0x5549,0x556d,0x5541,0x5555,
-0x553f,0x5550,0x553c,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5537,0x5556,0x5575,0x5576,0x5577,0x5533,0x5530,
-0x555c,0x558b,0x55d2,0x5583,0x55b1,0x55b9,0x5588,0x5581,
-0x559f,0x557e,0x55d6,0x5591,0x557b,0x55df,0x55bd,0x55be,
-0x5594,0x5599,0x55ea,0x55f7,0x55c9,0x561f,0x55d1,0x55eb,
-0x55ec,0x55d4,0x55e6,0x55dd,0x55c4,0x55ef,0x55e5,0x55f2,
-0x55f3,0x55cc,0x55cd,0x55e8,0x55f5,0x55e4,0x8f94,0x561e,
-0x5608,0x560c,0x5601,0x5624,0x5623,0x55fe,0x5600,0x5627,
-0x562d,0x5658,0x5639,0x5657,0x562c,0x564d,0x5662,0x5659,
-0x565c,0x564c,0x5654,0x5686,0x5664,0x5671,0x566b,0x567b,
-0x567c,0x5685,0x5693,0x56af,0x56d4,0x56d7,0x56dd,0x56e1,
-0x56f5,0x56eb,0x56f9,0x56ff,0x5704,0x570a,0x5709,0x571c,
-0x5e0f,0x5e19,0x5e14,0x5e11,0x5e31,0x5e3b,0x5e3c,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x5e37,0x5e44,0x5e54,
-0x5e5b,0x5e5e,0x5e61,0x5c8c,0x5c7a,0x5c8d,0x5c90,0x5c96,
-0x5c88,0x5c98,0x5c99,0x5c91,0x5c9a,0x5c9c,0x5cb5,0x5ca2,
-0x5cbd,0x5cac,0x5cab,0x5cb1,0x5ca3,0x5cc1,0x5cb7,0x5cc4,
-0x5cd2,0x5ce4,0x5ccb,0x5ce5,0x5d02,0x5d03,0x5d27,0x5d26,
-0x5d2e,0x5d24,0x5d1e,0x5d06,0x5d1b,0x5d58,0x5d3e,0x5d34,
-0x5d3d,0x5d6c,0x5d5b,0x5d6f,0x5d5d,0x5d6b,0x5d4b,0x5d4a,
-0x5d69,0x5d74,0x5d82,0x5d99,0x5d9d,0x8c73,0x5db7,0x5dc5,
-0x5f73,0x5f77,0x5f82,0x5f87,0x5f89,0x5f8c,0x5f95,0x5f99,
-0x5f9c,0x5fa8,0x5fad,0x5fb5,0x5fbc,0x8862,0x5f61,0x72ad,
-0x72b0,0x72b4,0x72b7,0x72b8,0x72c3,0x72c1,0x72ce,0x72cd,
-0x72d2,0x72e8,0x72ef,0x72e9,0x72f2,0x72f4,0x72f7,0x7301,
-0x72f3,0x7303,0x72fa,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x72fb,0x7317,0x7313,0x7321,0x730a,0x731e,0x731d,
-0x7315,0x7322,0x7339,0x7325,0x732c,0x7338,0x7331,0x7350,
-0x734d,0x7357,0x7360,0x736c,0x736f,0x737e,0x821b,0x5925,
-0x98e7,0x5924,0x5902,0x9963,0x9967,0x9968,0x9969,0x996a,
-0x996b,0x996c,0x9974,0x9977,0x997d,0x9980,0x9984,0x9987,
-0x998a,0x998d,0x9990,0x9991,0x9993,0x9994,0x9995,0x5e80,
-0x5e91,0x5e8b,0x5e96,0x5ea5,0x5ea0,0x5eb9,0x5eb5,0x5ebe,
-0x5eb3,0x8d53,0x5ed2,0x5ed1,0x5edb,0x5ee8,0x5eea,0x81ba,
-0x5fc4,0x5fc9,0x5fd6,0x5fcf,0x6003,0x5fee,0x6004,0x5fe1,
-0x5fe4,0x5ffe,0x6005,0x6006,0x5fea,0x5fed,0x5ff8,0x6019,
-0x6035,0x6026,0x601b,0x600f,0x600d,0x6029,0x602b,0x600a,
-0x603f,0x6021,0x6078,0x6079,0x607b,0x607a,0x6042,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x606a,0x607d,0x6096,
-0x609a,0x60ad,0x609d,0x6083,0x6092,0x608c,0x609b,0x60ec,
-0x60bb,0x60b1,0x60dd,0x60d8,0x60c6,0x60da,0x60b4,0x6120,
-0x6126,0x6115,0x6123,0x60f4,0x6100,0x610e,0x612b,0x614a,
-0x6175,0x61ac,0x6194,0x61a7,0x61b7,0x61d4,0x61f5,0x5fdd,
-0x96b3,0x95e9,0x95eb,0x95f1,0x95f3,0x95f5,0x95f6,0x95fc,
-0x95fe,0x9603,0x9604,0x9606,0x9608,0x960a,0x960b,0x960c,
-0x960d,0x960f,0x9612,0x9615,0x9616,0x9617,0x9619,0x961a,
-0x4e2c,0x723f,0x6215,0x6c35,0x6c54,0x6c5c,0x6c4a,0x6ca3,
-0x6c85,0x6c90,0x6c94,0x6c8c,0x6c68,0x6c69,0x6c74,0x6c76,
-0x6c86,0x6ca9,0x6cd0,0x6cd4,0x6cad,0x6cf7,0x6cf8,0x6cf1,
-0x6cd7,0x6cb2,0x6ce0,0x6cd6,0x6cfa,0x6ceb,0x6cee,0x6cb1,
-0x6cd3,0x6cef,0x6cfe,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6d39,0x6d27,0x6d0c,0x6d43,0x6d48,0x6d07,0x6d04,
-0x6d19,0x6d0e,0x6d2b,0x6d4d,0x6d2e,0x6d35,0x6d1a,0x6d4f,
-0x6d52,0x6d54,0x6d33,0x6d91,0x6d6f,0x6d9e,0x6da0,0x6d5e,
-0x6d93,0x6d94,0x6d5c,0x6d60,0x6d7c,0x6d63,0x6e1a,0x6dc7,
-0x6dc5,0x6dde,0x6e0e,0x6dbf,0x6de0,0x6e11,0x6de6,0x6ddd,
-0x6dd9,0x6e16,0x6dab,0x6e0c,0x6dae,0x6e2b,0x6e6e,0x6e4e,
-0x6e6b,0x6eb2,0x6e5f,0x6e86,0x6e53,0x6e54,0x6e32,0x6e25,
-0x6e44,0x6edf,0x6eb1,0x6e98,0x6ee0,0x6f2d,0x6ee2,0x6ea5,
-0x6ea7,0x6ebd,0x6ebb,0x6eb7,0x6ed7,0x6eb4,0x6ecf,0x6e8f,
-0x6ec2,0x6e9f,0x6f62,0x6f46,0x6f47,0x6f24,0x6f15,0x6ef9,
-0x6f2f,0x6f36,0x6f4b,0x6f74,0x6f2a,0x6f09,0x6f29,0x6f89,
-0x6f8d,0x6f8c,0x6f78,0x6f72,0x6f7c,0x6f7a,0x6fd1,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6fc9,0x6fa7,0x6fb9,
-0x6fb6,0x6fc2,0x6fe1,0x6fee,0x6fde,0x6fe0,0x6fef,0x701a,
-0x7023,0x701b,0x7039,0x7035,0x704f,0x705e,0x5b80,0x5b84,
-0x5b95,0x5b93,0x5ba5,0x5bb8,0x752f,0x9a9e,0x6434,0x5be4,
-0x5bee,0x8930,0x5bf0,0x8e47,0x8b07,0x8fb6,0x8fd3,0x8fd5,
-0x8fe5,0x8fee,0x8fe4,0x8fe9,0x8fe6,0x8ff3,0x8fe8,0x9005,
-0x9004,0x900b,0x9026,0x9011,0x900d,0x9016,0x9021,0x9035,
-0x9036,0x902d,0x902f,0x9044,0x9051,0x9052,0x9050,0x9068,
-0x9058,0x9062,0x905b,0x66b9,0x9074,0x907d,0x9082,0x9088,
-0x9083,0x908b,0x5f50,0x5f57,0x5f56,0x5f58,0x5c3b,0x54ab,
-0x5c50,0x5c59,0x5b71,0x5c63,0x5c66,0x7fbc,0x5f2a,0x5f29,
-0x5f2d,0x8274,0x5f3c,0x9b3b,0x5c6e,0x5981,0x5983,0x598d,
-0x59a9,0x59aa,0x59a3,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5997,0x59ca,0x59ab,0x599e,0x59a4,0x59d2,0x59b2,
-0x59af,0x59d7,0x59be,0x5a05,0x5a06,0x59dd,0x5a08,0x59e3,
-0x59d8,0x59f9,0x5a0c,0x5a09,0x5a32,0x5a34,0x5a11,0x5a23,
-0x5a13,0x5a40,0x5a67,0x5a4a,0x5a55,0x5a3c,0x5a62,0x5a75,
-0x80ec,0x5aaa,0x5a9b,0x5a77,0x5a7a,0x5abe,0x5aeb,0x5ab2,
-0x5ad2,0x5ad4,0x5ab8,0x5ae0,0x5ae3,0x5af1,0x5ad6,0x5ae6,
-0x5ad8,0x5adc,0x5b09,0x5b17,0x5b16,0x5b32,0x5b37,0x5b40,
-0x5c15,0x5c1c,0x5b5a,0x5b65,0x5b73,0x5b51,0x5b53,0x5b62,
-0x9a75,0x9a77,0x9a78,0x9a7a,0x9a7f,0x9a7d,0x9a80,0x9a81,
-0x9a85,0x9a88,0x9a8a,0x9a90,0x9a92,0x9a93,0x9a96,0x9a98,
-0x9a9b,0x9a9c,0x9a9d,0x9a9f,0x9aa0,0x9aa2,0x9aa3,0x9aa5,
-0x9aa7,0x7e9f,0x7ea1,0x7ea3,0x7ea5,0x7ea8,0x7ea9,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x7ead,0x7eb0,0x7ebe,
-0x7ec0,0x7ec1,0x7ec2,0x7ec9,0x7ecb,0x7ecc,0x7ed0,0x7ed4,
-0x7ed7,0x7edb,0x7ee0,0x7ee1,0x7ee8,0x7eeb,0x7eee,0x7eef,
-0x7ef1,0x7ef2,0x7f0d,0x7ef6,0x7efa,0x7efb,0x7efe,0x7f01,
-0x7f02,0x7f03,0x7f07,0x7f08,0x7f0b,0x7f0c,0x7f0f,0x7f11,
-0x7f12,0x7f17,0x7f19,0x7f1c,0x7f1b,0x7f1f,0x7f21,0x7f22,
-0x7f23,0x7f24,0x7f25,0x7f26,0x7f27,0x7f2a,0x7f2b,0x7f2c,
-0x7f2d,0x7f2f,0x7f30,0x7f31,0x7f32,0x7f33,0x7f35,0x5e7a,
-0x757f,0x5ddb,0x753e,0x9095,0x738e,0x7391,0x73ae,0x73a2,
-0x739f,0x73cf,0x73c2,0x73d1,0x73b7,0x73b3,0x73c0,0x73c9,
-0x73c8,0x73e5,0x73d9,0x987c,0x740a,0x73e9,0x73e7,0x73de,
-0x73ba,0x73f2,0x740f,0x742a,0x745b,0x7426,0x7425,0x7428,
-0x7430,0x742e,0x742c,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x741b,0x741a,0x7441,0x745c,0x7457,0x7455,0x7459,
-0x7477,0x746d,0x747e,0x749c,0x748e,0x7480,0x7481,0x7487,
-0x748b,0x749e,0x74a8,0x74a9,0x7490,0x74a7,0x74d2,0x74ba,
-0x97ea,0x97eb,0x97ec,0x674c,0x6753,0x675e,0x6748,0x6769,
-0x67a5,0x6787,0x676a,0x6773,0x6798,0x67a7,0x6775,0x67a8,
-0x679e,0x67ad,0x678b,0x6777,0x677c,0x67f0,0x6809,0x67d8,
-0x680a,0x67e9,0x67b0,0x680c,0x67d9,0x67b5,0x67da,0x67b3,
-0x67dd,0x6800,0x67c3,0x67b8,0x67e2,0x680e,0x67c1,0x67fd,
-0x6832,0x6833,0x6860,0x6861,0x684e,0x6862,0x6844,0x6864,
-0x6883,0x681d,0x6855,0x6866,0x6841,0x6867,0x6840,0x683e,
-0x684a,0x6849,0x6829,0x68b5,0x688f,0x6874,0x6877,0x6893,
-0x686b,0x68c2,0x696e,0x68fc,0x691f,0x6920,0x68f9,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6924,0x68f0,0x690b,
-0x6901,0x6957,0x68e3,0x6910,0x6971,0x6939,0x6960,0x6942,
-0x695d,0x6984,0x696b,0x6980,0x6998,0x6978,0x6934,0x69cc,
-0x6987,0x6988,0x69ce,0x6989,0x6966,0x6963,0x6979,0x699b,
-0x69a7,0x69bb,0x69ab,0x69ad,0x69d4,0x69b1,0x69c1,0x69ca,
-0x69df,0x6995,0x69e0,0x698d,0x69ff,0x6a2f,0x69ed,0x6a17,
-0x6a18,0x6a65,0x69f2,0x6a44,0x6a3e,0x6aa0,0x6a50,0x6a5b,
-0x6a35,0x6a8e,0x6a79,0x6a3d,0x6a28,0x6a58,0x6a7c,0x6a91,
-0x6a90,0x6aa9,0x6a97,0x6aab,0x7337,0x7352,0x6b81,0x6b82,
-0x6b87,0x6b84,0x6b92,0x6b93,0x6b8d,0x6b9a,0x6b9b,0x6ba1,
-0x6baa,0x8f6b,0x8f6d,0x8f71,0x8f72,0x8f73,0x8f75,0x8f76,
-0x8f78,0x8f77,0x8f79,0x8f7a,0x8f7c,0x8f7e,0x8f81,0x8f82,
-0x8f84,0x8f87,0x8f8b,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x8f8d,0x8f8e,0x8f8f,0x8f98,0x8f9a,0x8ece,0x620b,
-0x6217,0x621b,0x621f,0x6222,0x6221,0x6225,0x6224,0x622c,
-0x81e7,0x74ef,0x74f4,0x74ff,0x750f,0x7511,0x7513,0x6534,
-0x65ee,0x65ef,0x65f0,0x660a,0x6619,0x6772,0x6603,0x6615,
-0x6600,0x7085,0x66f7,0x661d,0x6634,0x6631,0x6636,0x6635,
-0x8006,0x665f,0x6654,0x6641,0x664f,0x6656,0x6661,0x6657,
-0x6677,0x6684,0x668c,0x66a7,0x669d,0x66be,0x66db,0x66dc,
-0x66e6,0x66e9,0x8d32,0x8d33,0x8d36,0x8d3b,0x8d3d,0x8d40,
-0x8d45,0x8d46,0x8d48,0x8d49,0x8d47,0x8d4d,0x8d55,0x8d59,
-0x89c7,0x89ca,0x89cb,0x89cc,0x89ce,0x89cf,0x89d0,0x89d1,
-0x726e,0x729f,0x725d,0x7266,0x726f,0x727e,0x727f,0x7284,
-0x728b,0x728d,0x728f,0x7292,0x6308,0x6332,0x63b0,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x643f,0x64d8,0x8004,
-0x6bea,0x6bf3,0x6bfd,0x6bf5,0x6bf9,0x6c05,0x6c07,0x6c06,
-0x6c0d,0x6c15,0x6c18,0x6c19,0x6c1a,0x6c21,0x6c29,0x6c24,
-0x6c2a,0x6c32,0x6535,0x6555,0x656b,0x724d,0x7252,0x7256,
-0x7230,0x8662,0x5216,0x809f,0x809c,0x8093,0x80bc,0x670a,
-0x80bd,0x80b1,0x80ab,0x80ad,0x80b4,0x80b7,0x80e7,0x80e8,
-0x80e9,0x80ea,0x80db,0x80c2,0x80c4,0x80d9,0x80cd,0x80d7,
-0x6710,0x80dd,0x80eb,0x80f1,0x80f4,0x80ed,0x810d,0x810e,
-0x80f2,0x80fc,0x6715,0x8112,0x8c5a,0x8136,0x811e,0x812c,
-0x8118,0x8132,0x8148,0x814c,0x8153,0x8174,0x8159,0x815a,
-0x8171,0x8160,0x8169,0x817c,0x817d,0x816d,0x8167,0x584d,
-0x5ab5,0x8188,0x8182,0x8191,0x6ed5,0x81a3,0x81aa,0x81cc,
-0x6726,0x81ca,0x81bb,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x81c1,0x81a6,0x6b24,0x6b37,0x6b39,0x6b43,0x6b46,
-0x6b59,0x98d1,0x98d2,0x98d3,0x98d5,0x98d9,0x98da,0x6bb3,
-0x5f40,0x6bc2,0x89f3,0x6590,0x9f51,0x6593,0x65bc,0x65c6,
-0x65c4,0x65c3,0x65cc,0x65ce,0x65d2,0x65d6,0x7080,0x709c,
-0x7096,0x709d,0x70bb,0x70c0,0x70b7,0x70ab,0x70b1,0x70e8,
-0x70ca,0x7110,0x7113,0x7116,0x712f,0x7131,0x7173,0x715c,
-0x7168,0x7145,0x7172,0x714a,0x7178,0x717a,0x7198,0x71b3,
-0x71b5,0x71a8,0x71a0,0x71e0,0x71d4,0x71e7,0x71f9,0x721d,
-0x7228,0x706c,0x7118,0x7166,0x71b9,0x623e,0x623d,0x6243,
-0x6248,0x6249,0x793b,0x7940,0x7946,0x7949,0x795b,0x795c,
-0x7953,0x795a,0x7962,0x7957,0x7960,0x796f,0x7967,0x797a,
-0x7985,0x798a,0x799a,0x79a7,0x79b3,0x5fd1,0x5fd0,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x603c,0x605d,0x605a,
-0x6067,0x6041,0x6059,0x6063,0x60ab,0x6106,0x610d,0x615d,
-0x61a9,0x619d,0x61cb,0x61d1,0x6206,0x8080,0x807f,0x6c93,
-0x6cf6,0x6dfc,0x77f6,0x77f8,0x7800,0x7809,0x7817,0x7818,
-0x7811,0x65ab,0x782d,0x781c,0x781d,0x7839,0x783a,0x783b,
-0x781f,0x783c,0x7825,0x782c,0x7823,0x7829,0x784e,0x786d,
-0x7856,0x7857,0x7826,0x7850,0x7847,0x784c,0x786a,0x789b,
-0x7893,0x789a,0x7887,0x789c,0x78a1,0x78a3,0x78b2,0x78b9,
-0x78a5,0x78d4,0x78d9,0x78c9,0x78ec,0x78f2,0x7905,0x78f4,
-0x7913,0x7924,0x791e,0x7934,0x9f9b,0x9ef9,0x9efb,0x9efc,
-0x76f1,0x7704,0x770d,0x76f9,0x7707,0x7708,0x771a,0x7722,
-0x7719,0x772d,0x7726,0x7735,0x7738,0x7750,0x7751,0x7747,
-0x7743,0x775a,0x7768,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x7762,0x7765,0x777f,0x778d,0x777d,0x7780,0x778c,
-0x7791,0x779f,0x77a0,0x77b0,0x77b5,0x77bd,0x753a,0x7540,
-0x754e,0x754b,0x7548,0x755b,0x7572,0x7579,0x7583,0x7f58,
-0x7f61,0x7f5f,0x8a48,0x7f68,0x7f74,0x7f71,0x7f79,0x7f81,
-0x7f7e,0x76cd,0x76e5,0x8832,0x9485,0x9486,0x9487,0x948b,
-0x948a,0x948c,0x948d,0x948f,0x9490,0x9494,0x9497,0x9495,
-0x949a,0x949b,0x949c,0x94a3,0x94a4,0x94ab,0x94aa,0x94ad,
-0x94ac,0x94af,0x94b0,0x94b2,0x94b4,0x94b6,0x94b7,0x94b8,
-0x94b9,0x94ba,0x94bc,0x94bd,0x94bf,0x94c4,0x94c8,0x94c9,
-0x94ca,0x94cb,0x94cc,0x94cd,0x94ce,0x94d0,0x94d1,0x94d2,
-0x94d5,0x94d6,0x94d7,0x94d9,0x94d8,0x94db,0x94de,0x94df,
-0x94e0,0x94e2,0x94e4,0x94e5,0x94e7,0x94e8,0x94ea,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x94e9,0x94eb,0x94ee,
-0x94ef,0x94f3,0x94f4,0x94f5,0x94f7,0x94f9,0x94fc,0x94fd,
-0x94ff,0x9503,0x9502,0x9506,0x9507,0x9509,0x950a,0x950d,
-0x950e,0x950f,0x9512,0x9513,0x9514,0x9515,0x9516,0x9518,
-0x951b,0x951d,0x951e,0x951f,0x9522,0x952a,0x952b,0x9529,
-0x952c,0x9531,0x9532,0x9534,0x9536,0x9537,0x9538,0x953c,
-0x953e,0x953f,0x9542,0x9535,0x9544,0x9545,0x9546,0x9549,
-0x954c,0x954e,0x954f,0x9552,0x9553,0x9554,0x9556,0x9557,
-0x9558,0x9559,0x955b,0x955e,0x955f,0x955d,0x9561,0x9562,
-0x9564,0x9565,0x9566,0x9567,0x9568,0x9569,0x956a,0x956b,
-0x956c,0x956f,0x9571,0x9572,0x9573,0x953a,0x77e7,0x77ec,
-0x96c9,0x79d5,0x79ed,0x79e3,0x79eb,0x7a06,0x5d47,0x7a03,
-0x7a02,0x7a1e,0x7a14,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x7a39,0x7a37,0x7a51,0x9ecf,0x99a5,0x7a70,0x7688,
-0x768e,0x7693,0x7699,0x76a4,0x74de,0x74e0,0x752c,0x9e20,
-0x9e22,0x9e28,0x9e29,0x9e2a,0x9e2b,0x9e2c,0x9e32,0x9e31,
-0x9e36,0x9e38,0x9e37,0x9e39,0x9e3a,0x9e3e,0x9e41,0x9e42,
-0x9e44,0x9e46,0x9e47,0x9e48,0x9e49,0x9e4b,0x9e4c,0x9e4e,
-0x9e51,0x9e55,0x9e57,0x9e5a,0x9e5b,0x9e5c,0x9e5e,0x9e63,
-0x9e66,0x9e67,0x9e68,0x9e69,0x9e6a,0x9e6b,0x9e6c,0x9e71,
-0x9e6d,0x9e73,0x7592,0x7594,0x7596,0x75a0,0x759d,0x75ac,
-0x75a3,0x75b3,0x75b4,0x75b8,0x75c4,0x75b1,0x75b0,0x75c3,
-0x75c2,0x75d6,0x75cd,0x75e3,0x75e8,0x75e6,0x75e4,0x75eb,
-0x75e7,0x7603,0x75f1,0x75fc,0x75ff,0x7610,0x7600,0x7605,
-0x760c,0x7617,0x760a,0x7625,0x7618,0x7615,0x7619,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x761b,0x763c,0x7622,
-0x7620,0x7640,0x762d,0x7630,0x763f,0x7635,0x7643,0x763e,
-0x7633,0x764d,0x765e,0x7654,0x765c,0x7656,0x766b,0x766f,
-0x7fca,0x7ae6,0x7a78,0x7a79,0x7a80,0x7a86,0x7a88,0x7a95,
-0x7aa6,0x7aa0,0x7aac,0x7aa8,0x7aad,0x7ab3,0x8864,0x8869,
-0x8872,0x887d,0x887f,0x8882,0x88a2,0x88c6,0x88b7,0x88bc,
-0x88c9,0x88e2,0x88ce,0x88e3,0x88e5,0x88f1,0x891a,0x88fc,
-0x88e8,0x88fe,0x88f0,0x8921,0x8919,0x8913,0x891b,0x890a,
-0x8934,0x892b,0x8936,0x8941,0x8966,0x897b,0x758b,0x80e5,
-0x76b2,0x76b4,0x77dc,0x8012,0x8014,0x8016,0x801c,0x8020,
-0x8022,0x8025,0x8026,0x8027,0x8029,0x8028,0x8031,0x800b,
-0x8035,0x8043,0x8046,0x804d,0x8052,0x8069,0x8071,0x8983,
-0x9878,0x9880,0x9883,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x9889,0x988c,0x988d,0x988f,0x9894,0x989a,0x989b,
-0x989e,0x989f,0x98a1,0x98a2,0x98a5,0x98a6,0x864d,0x8654,
-0x866c,0x866e,0x867f,0x867a,0x867c,0x867b,0x86a8,0x868d,
-0x868b,0x86ac,0x869d,0x86a7,0x86a3,0x86aa,0x8693,0x86a9,
-0x86b6,0x86c4,0x86b5,0x86ce,0x86b0,0x86ba,0x86b1,0x86af,
-0x86c9,0x86cf,0x86b4,0x86e9,0x86f1,0x86f2,0x86ed,0x86f3,
-0x86d0,0x8713,0x86de,0x86f4,0x86df,0x86d8,0x86d1,0x8703,
-0x8707,0x86f8,0x8708,0x870a,0x870d,0x8709,0x8723,0x873b,
-0x871e,0x8725,0x872e,0x871a,0x873e,0x8748,0x8734,0x8731,
-0x8729,0x8737,0x873f,0x8782,0x8722,0x877d,0x877e,0x877b,
-0x8760,0x8770,0x874c,0x876e,0x878b,0x8753,0x8763,0x877c,
-0x8764,0x8759,0x8765,0x8793,0x87af,0x87a8,0x87d2,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x87c6,0x8788,0x8785,
-0x87ad,0x8797,0x8783,0x87ab,0x87e5,0x87ac,0x87b5,0x87b3,
-0x87cb,0x87d3,0x87bd,0x87d1,0x87c0,0x87ca,0x87db,0x87ea,
-0x87e0,0x87ee,0x8816,0x8813,0x87fe,0x880a,0x881b,0x8821,
-0x8839,0x883c,0x7f36,0x7f42,0x7f44,0x7f45,0x8210,0x7afa,
-0x7afd,0x7b08,0x7b03,0x7b04,0x7b15,0x7b0a,0x7b2b,0x7b0f,
-0x7b47,0x7b38,0x7b2a,0x7b19,0x7b2e,0x7b31,0x7b20,0x7b25,
-0x7b24,0x7b33,0x7b3e,0x7b1e,0x7b58,0x7b5a,0x7b45,0x7b75,
-0x7b4c,0x7b5d,0x7b60,0x7b6e,0x7b7b,0x7b62,0x7b72,0x7b71,
-0x7b90,0x7ba6,0x7ba7,0x7bb8,0x7bac,0x7b9d,0x7ba8,0x7b85,
-0x7baa,0x7b9c,0x7ba2,0x7bab,0x7bb4,0x7bd1,0x7bc1,0x7bcc,
-0x7bdd,0x7bda,0x7be5,0x7be6,0x7bea,0x7c0c,0x7bfe,0x7bfc,
-0x7c0f,0x7c16,0x7c0b,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x7c1f,0x7c2a,0x7c26,0x7c38,0x7c41,0x7c40,0x81fe,
-0x8201,0x8202,0x8204,0x81ec,0x8844,0x8221,0x8222,0x8223,
-0x822d,0x822f,0x8228,0x822b,0x8238,0x823b,0x8233,0x8234,
-0x823e,0x8244,0x8249,0x824b,0x824f,0x825a,0x825f,0x8268,
-0x887e,0x8885,0x8888,0x88d8,0x88df,0x895e,0x7f9d,0x7f9f,
-0x7fa7,0x7faf,0x7fb0,0x7fb2,0x7c7c,0x6549,0x7c91,0x7c9d,
-0x7c9c,0x7c9e,0x7ca2,0x7cb2,0x7cbc,0x7cbd,0x7cc1,0x7cc7,
-0x7ccc,0x7ccd,0x7cc8,0x7cc5,0x7cd7,0x7ce8,0x826e,0x66a8,
-0x7fbf,0x7fce,0x7fd5,0x7fe5,0x7fe1,0x7fe6,0x7fe9,0x7fee,
-0x7ff3,0x7cf8,0x7d77,0x7da6,0x7dae,0x7e47,0x7e9b,0x9eb8,
-0x9eb4,0x8d73,0x8d84,0x8d94,0x8d91,0x8db1,0x8d67,0x8d6d,
-0x8c47,0x8c49,0x914a,0x9150,0x914e,0x914f,0x9164,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x9162,0x9161,0x9170,
-0x9169,0x916f,0x917d,0x917e,0x9172,0x9174,0x9179,0x918c,
-0x9185,0x9190,0x918d,0x9191,0x91a2,0x91a3,0x91aa,0x91ad,
-0x91ae,0x91af,0x91b5,0x91b4,0x91ba,0x8c55,0x9e7e,0x8db8,
-0x8deb,0x8e05,0x8e59,0x8e69,0x8db5,0x8dbf,0x8dbc,0x8dba,
-0x8dc4,0x8dd6,0x8dd7,0x8dda,0x8dde,0x8dce,0x8dcf,0x8ddb,
-0x8dc6,0x8dec,0x8df7,0x8df8,0x8de3,0x8df9,0x8dfb,0x8de4,
-0x8e09,0x8dfd,0x8e14,0x8e1d,0x8e1f,0x8e2c,0x8e2e,0x8e23,
-0x8e2f,0x8e3a,0x8e40,0x8e39,0x8e35,0x8e3d,0x8e31,0x8e49,
-0x8e41,0x8e42,0x8e51,0x8e52,0x8e4a,0x8e70,0x8e76,0x8e7c,
-0x8e6f,0x8e74,0x8e85,0x8e8f,0x8e94,0x8e90,0x8e9c,0x8e9e,
-0x8c78,0x8c82,0x8c8a,0x8c85,0x8c98,0x8c94,0x659b,0x89d6,
-0x89de,0x89da,0x89dc,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x89e5,0x89eb,0x89ef,0x8a3e,0x8b26,0x9753,0x96e9,
-0x96f3,0x96ef,0x9706,0x9701,0x9708,0x970f,0x970e,0x972a,
-0x972d,0x9730,0x973e,0x9f80,0x9f83,0x9f85,0x9f86,0x9f87,
-0x9f88,0x9f89,0x9f8a,0x9f8c,0x9efe,0x9f0b,0x9f0d,0x96b9,
-0x96bc,0x96bd,0x96ce,0x96d2,0x77bf,0x96e0,0x928e,0x92ae,
-0x92c8,0x933e,0x936a,0x93ca,0x938f,0x943e,0x946b,0x9c7f,
-0x9c82,0x9c85,0x9c86,0x9c87,0x9c88,0x7a23,0x9c8b,0x9c8e,
-0x9c90,0x9c91,0x9c92,0x9c94,0x9c95,0x9c9a,0x9c9b,0x9c9e,
-0x9c9f,0x9ca0,0x9ca1,0x9ca2,0x9ca3,0x9ca5,0x9ca6,0x9ca7,
-0x9ca8,0x9ca9,0x9cab,0x9cad,0x9cae,0x9cb0,0x9cb1,0x9cb2,
-0x9cb3,0x9cb4,0x9cb5,0x9cb6,0x9cb7,0x9cba,0x9cbb,0x9cbc,
-0x9cbd,0x9cc4,0x9cc5,0x9cc6,0x9cc7,0x9cca,0x9ccb,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x9ccc,0x9ccd,0x9cce,
-0x9ccf,0x9cd0,0x9cd3,0x9cd4,0x9cd5,0x9cd7,0x9cd8,0x9cd9,
-0x9cdc,0x9cdd,0x9cdf,0x9ce2,0x977c,0x9785,0x9791,0x9792,
-0x9794,0x97af,0x97ab,0x97a3,0x97b2,0x97b4,0x9ab1,0x9ab0,
-0x9ab7,0x9e58,0x9ab6,0x9aba,0x9abc,0x9ac1,0x9ac0,0x9ac5,
-0x9ac2,0x9acb,0x9acc,0x9ad1,0x9b45,0x9b43,0x9b47,0x9b49,
-0x9b48,0x9b4d,0x9b51,0x98e8,0x990d,0x992e,0x9955,0x9954,
-0x9adf,0x9ae1,0x9ae6,0x9aef,0x9aeb,0x9afb,0x9aed,0x9af9,
-0x9b08,0x9b0f,0x9b13,0x9b1f,0x9b23,0x9ebd,0x9ebe,0x7e3b,
-0x9e82,0x9e87,0x9e88,0x9e8b,0x9e92,0x93d6,0x9e9d,0x9e9f,
-0x9edb,0x9edc,0x9edd,0x9ee0,0x9edf,0x9ee2,0x9ee9,0x9ee7,
-0x9ee5,0x9eea,0x9eef,0x9f22,0x9f2c,0x9f2f,0x9f39,0x9f37,
-0x9f3d,0x9f3e,0x9f44,
-};

+ 0 - 23
sys/src/cmd/dict/gefix

@@ -1,23 +0,0 @@
-#!/bin/rc
-
-sed '
-	s/[ 	]+$//
-	/	/!d
-	s/\\N''349''//g
-	s/''//g
-	s/	-/	/
-	s/-$//
-	/\([^,) ]+(\)|$)/{; h; s///; p; g; s/\(//; s/\)//; }
-	/\(r, s\)$/{; s///; p; s/$/r/; p; s/r$/s/; }
-' $1 |
-sed '
-	/\([^,) ]+(\)|$)/{; h; s///; p; g; s/\(//; s/\)//; }
-	/\(r, s\)$/{; s///; p; s/$/r/; p; s/r$/s/; }
-' |
-sed '/ß/{; p; s/ß/ss/g; }' |
-awk '
-BEGIN	{ FS = "	|, " }
-	{ for(i=2; i<=NF; i++)print $i "	" $1 }
-' |
-tr A-Z a-z |
-sort -u -t'	' +0f -1 +0 -1 +1n -2

+ 0 - 8
sys/src/cmd/dict/getneeds

@@ -1,8 +0,0 @@
-#!/bin/rc
-for (x in spec tag aux status) {
-	grep ' '^$x^' ' $1 > junk1
-	sort +4 -5 +3n -4 junk1 > junk2
-	awk '{if ($5 != prev) print $0; prev = $5}' junk2 > junk3
-	sort -n +2 -3 junk3 > need$x
-	rm junk*
-}

+ 0 - 1068
sys/src/cmd/dict/jis208.c

@@ -1,1068 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include "kuten.h"
-
-#define	NONE	0xffff
-
-Rune tabjis208[JIS208MAX] = {
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x3000,0x3001,0x3002,
-0xff0c,0xff0e,0x30fb,0xff1a,0xff1b,0xff1f,0xff01,0x309b,
-0x309c,0x00b4,0xff40,0x00a8,0xff3e,0x203e,0xff3f,0x30fd,
-0x30fe,0x309d,0x309e,0x3003,0x4edd,0x3005,0x3006,0x3007,
-0x30fc,0x2015,0x00ad,0xff0f,0xff3c,0xff5e,0x2225,0xff5c,
-0x2026,0x2025,0x2018,0x2019,0x201c,0x201d,0xff08,0xff09,
-0x3014,0x3015,0xff3b,0xff3d,0xff5b,0xff5d,0x3008,0x3009,
-0x300a,0x300b,0x300c,0x300d,0x300e,0x300f,0x3010,0x3011,
-0xff0b,0xff0d,0x00b1,0x00d7,0x00f7,0xff1d,0x2260,0xff1c,
-0xff1e,0x2264,0x2265,0x221e,0x2234,0x2642,0x2640,0x00b0,
-0x2032,0x2033,0x2103,0x00a5,0xff04,0x00a2,0x00a3,0xff05,
-0xff03,0xff06,0xff0a,0xff20,0x00a7,0x2606,0x2605,0x25cb,
-0x25cf,0x25ce,0x25c7,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x25c6,0x25a1,0x25a0,0x25b3,0x25b2,0x25bd,0x25bc,
-0x203b,0x3012,0x2192,0x2190,0x2191,0x2193,0x3013,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,0x2208,0x220b,0x2286,0x2287,0x2282,0x2283,
-0x222a,0x2229,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,0x2227,0x2228,0x00ac,0x21d2,0x21d4,0x2200,
-0x2203,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,0x2220,0x22a5,0x2040,0x2202,
-0x2207,0x2261,0x2252,0x226a,0x226b,0x221a,0x224c,0x221d,
-0x2235,0x222b,0x222c,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,0x212b,0x2030,0x266f,0x266d,0x266a,0x2020,
-0x2021,0x00b6,  NONE,  NONE,  NONE,  NONE,0x20dd,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,0xff10,0xff11,0xff12,0xff13,
-0xff14,0xff15,0xff16,0xff17,0xff18,0xff19,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0xff21,0xff22,0xff23,
-0xff24,0xff25,0xff26,0xff27,0xff28,0xff29,0xff2a,0xff2b,
-0xff2c,0xff2d,0xff2e,0xff2f,0xff30,0xff31,0xff32,0xff33,
-0xff34,0xff35,0xff36,0xff37,0xff38,0xff39,0xff3a,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0xff41,0xff42,0xff43,
-0xff44,0xff45,0xff46,0xff47,0xff48,0xff49,0xff4a,0xff4b,
-0xff4c,0xff4d,0xff4e,0xff4f,0xff50,0xff51,0xff52,0xff53,
-0xff54,0xff55,0xff56,0xff57,0xff58,0xff59,0xff5a,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x3041,0x3042,0x3043,0x3044,0x3045,0x3046,0x3047,
-0x3048,0x3049,0x304a,0x304b,0x304c,0x304d,0x304e,0x304f,
-0x3050,0x3051,0x3052,0x3053,0x3054,0x3055,0x3056,0x3057,
-0x3058,0x3059,0x305a,0x305b,0x305c,0x305d,0x305e,0x305f,
-0x3060,0x3061,0x3062,0x3063,0x3064,0x3065,0x3066,0x3067,
-0x3068,0x3069,0x306a,0x306b,0x306c,0x306d,0x306e,0x306f,
-0x3070,0x3071,0x3072,0x3073,0x3074,0x3075,0x3076,0x3077,
-0x3078,0x3079,0x307a,0x307b,0x307c,0x307d,0x307e,0x307f,
-0x3080,0x3081,0x3082,0x3083,0x3084,0x3085,0x3086,0x3087,
-0x3088,0x3089,0x308a,0x308b,0x308c,0x308d,0x308e,0x308f,
-0x3090,0x3091,0x3092,0x3093,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x30a1,0x30a2,0x30a3,
-0x30a4,0x30a5,0x30a6,0x30a7,0x30a8,0x30a9,0x30aa,0x30ab,
-0x30ac,0x30ad,0x30ae,0x30af,0x30b0,0x30b1,0x30b2,0x30b3,
-0x30b4,0x30b5,0x30b6,0x30b7,0x30b8,0x30b9,0x30ba,0x30bb,
-0x30bc,0x30bd,0x30be,0x30bf,0x30c0,0x30c1,0x30c2,0x30c3,
-0x30c4,0x30c5,0x30c6,0x30c7,0x30c8,0x30c9,0x30ca,0x30cb,
-0x30cc,0x30cd,0x30ce,0x30cf,0x30d0,0x30d1,0x30d2,0x30d3,
-0x30d4,0x30d5,0x30d6,0x30d7,0x30d8,0x30d9,0x30da,0x30db,
-0x30dc,0x30dd,0x30de,0x30df,0x30e0,0x30e1,0x30e2,0x30e3,
-0x30e4,0x30e5,0x30e6,0x30e7,0x30e8,0x30e9,0x30ea,0x30eb,
-0x30ec,0x30ed,0x30ee,0x30ef,0x30f0,0x30f1,0x30f2,0x30f3,
-0x30f4,0x30f5,0x30f6,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x0391,0x0392,0x0393,0x0394,0x0395,0x0396,0x0397,
-0x0398,0x0399,0x039a,0x039b,0x039c,0x039d,0x039e,0x039f,
-0x03a0,0x03a1,0x03a3,0x03a4,0x03a5,0x03a6,0x03a7,0x03a8,
-0x03a9,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x03b1,0x03b2,0x03b3,0x03b4,0x03b5,0x03b6,0x03b7,
-0x03b8,0x03b9,0x03ba,0x03bb,0x03bc,0x03bd,0x03be,0x03bf,
-0x03c0,0x03c1,0x03c3,0x03c4,0x03c5,0x03c6,0x03c7,0x03c8,
-0x03c9,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x0410,0x0411,0x0412,
-0x0413,0x0414,0x0415,0x0401,0x0416,0x0417,0x0418,0x0419,
-0x041a,0x041b,0x041c,0x041d,0x041e,0x041f,0x0420,0x0421,
-0x0422,0x0423,0x0424,0x0425,0x0426,0x0427,0x0428,0x0429,
-0x042a,0x042b,0x042c,0x042d,0x042e,0x042f,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x0430,0x0431,0x0432,
-0x0433,0x0434,0x0435,0x0451,0x0436,0x0437,0x0438,0x0439,
-0x043a,0x043b,0x043c,0x043d,0x043e,0x043f,0x0440,0x0441,
-0x0442,0x0443,0x0444,0x0445,0x0446,0x0447,0x0448,0x0449,
-0x044a,0x044b,0x044c,0x044d,0x044e,0x044f,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x2500,0x2502,0x250c,0x2510,0x2518,0x2514,0x251c,
-0x252c,0x2524,0x2534,0x253c,0x2501,0x2503,0x250f,0x2513,
-0x251b,0x2517,0x2523,0x2533,0x252b,0x253b,0x254b,0x2520,
-0x252f,0x2528,0x2537,0x253f,0x251d,0x2530,0x2525,0x2538,
-0x2542,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x4e9c,0x5516,0x5a03,0x963f,0x54c0,0x611b,0x6328,
-0x59f6,0x9022,0x8475,0x831c,0x7a50,0x60aa,0x63e1,0x6e25,
-0x65ed,0x8466,0x82a6,0x9bf5,0x6893,0x5727,0x65a1,0x6271,
-0x5b9b,0x59d0,0x867b,0x98f4,0x7d62,0x7dbe,0x9b8e,0x6216,
-0x7c9f,0x88b7,0x5b89,0x5eb5,0x6309,0x6697,0x6848,0x95c7,
-0x978d,0x674f,0x4ee5,0x4f0a,0x4f4d,0x4f9d,0x5049,0x56f2,
-0x5937,0x59d4,0x5a01,0x5c09,0x60df,0x610f,0x6170,0x6613,
-0x6905,0x70ba,0x754f,0x7570,0x79fb,0x7dad,0x7def,0x80c3,
-0x840e,0x8863,0x8b02,0x9055,0x907a,0x533b,0x4e95,0x4ea5,
-0x57df,0x80b2,0x90c1,0x78ef,0x4e00,0x58f1,0x6ea2,0x9038,
-0x7a32,0x8328,0x828b,0x9c2f,0x5141,0x5370,0x54bd,0x54e1,
-0x56e0,0x59fb,0x5f15,0x98f2,0x6deb,0x80e4,0x852d,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x9662,0x9670,0x96a0,
-0x97fb,0x540b,0x53f3,0x5b87,0x70cf,0x7fbd,0x8fc2,0x96e8,
-0x536f,0x9d5c,0x7aba,0x4e11,0x7893,0x81fc,0x6e26,0x5618,
-0x5504,0x6b1d,0x851a,0x9c3b,0x59e5,0x53a9,0x6d66,0x74dc,
-0x958f,0x5642,0x4e91,0x904b,0x96f2,0x834f,0x990c,0x53e1,
-0x55b6,0x5b30,0x5f71,0x6620,0x66f3,0x6804,0x6c38,0x6cf3,
-0x6d29,0x745b,0x76c8,0x7a4e,0x9834,0x82f1,0x885b,0x8a60,
-0x92ed,0x6db2,0x75ab,0x76ca,0x99c5,0x60a6,0x8b01,0x8d8a,
-0x95b2,0x698e,0x53ad,0x5186,0x5712,0x5830,0x5944,0x5bb4,
-0x5ef6,0x6028,0x63a9,0x63f4,0x6cbf,0x6f14,0x708e,0x7114,
-0x7159,0x71d5,0x733f,0x7e01,0x8276,0x82d1,0x8597,0x9060,
-0x925b,0x9d1b,0x5869,0x65bc,0x6c5a,0x7525,0x51f9,0x592e,
-0x5965,0x5f80,0x5fdc,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x62bc,0x65fa,0x6a2a,0x6b27,0x6bb4,0x738b,0x7fc1,
-0x8956,0x9d2c,0x9d0e,0x9ec4,0x5ca1,0x6c96,0x837b,0x5104,
-0x5c4b,0x61b6,0x81c6,0x6876,0x7261,0x4e59,0x4ffa,0x5378,
-0x6069,0x6e29,0x7a4f,0x97f3,0x4e0b,0x5316,0x4eee,0x4f55,
-0x4f3d,0x4fa1,0x4f73,0x52a0,0x53ef,0x5609,0x590f,0x5ac1,
-0x5bb6,0x5be1,0x79d1,0x6687,0x679c,0x67b6,0x6b4c,0x6cb3,
-0x706b,0x73c2,0x798d,0x79be,0x7a3c,0x7b87,0x82b1,0x82db,
-0x8304,0x8377,0x83ef,0x83d3,0x8766,0x8ab2,0x5629,0x8ca8,
-0x8fe6,0x904e,0x971e,0x868a,0x4fc4,0x5ce8,0x6211,0x7259,
-0x753b,0x81e5,0x82bd,0x86fe,0x8cc0,0x96c5,0x9913,0x99d5,
-0x4ecb,0x4f1a,0x89e3,0x56de,0x584a,0x58ca,0x5efb,0x5feb,
-0x602a,0x6094,0x6062,0x61d0,0x6212,0x62d0,0x6539,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x9b41,0x6666,0x68b0,
-0x6d77,0x7070,0x754c,0x7686,0x7d75,0x82a5,0x87f9,0x958b,
-0x968e,0x8c9d,0x51f1,0x52be,0x5916,0x54b3,0x5bb3,0x5d16,
-0x6168,0x6982,0x6daf,0x788d,0x84cb,0x8857,0x8a72,0x93a7,
-0x9ab8,0x6d6c,0x99a8,0x86d9,0x57a3,0x67ff,0x86ce,0x920e,
-0x5283,0x5687,0x5404,0x5ed3,0x62e1,0x64b9,0x683c,0x6838,
-0x6bbb,0x7372,0x78ba,0x7a6b,0x899a,0x89d2,0x8d6b,0x8f03,
-0x90ed,0x95a3,0x9694,0x9769,0x5b66,0x5cb3,0x697d,0x984d,
-0x984e,0x639b,0x7b20,0x6a2b,0x6a7f,0x68b6,0x9c0d,0x6f5f,
-0x5272,0x559d,0x6070,0x62ec,0x6d3b,0x6e07,0x6ed1,0x845b,
-0x8910,0x8f44,0x4e14,0x9c39,0x53f6,0x691b,0x6a3a,0x9784,
-0x682a,0x515c,0x7ac3,0x84b2,0x91dc,0x938c,0x565b,0x9d28,
-0x6822,0x8305,0x8431,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x7ca5,0x5208,0x82c5,0x74e6,0x4e7e,0x4f83,0x51a0,
-0x5bd2,0x520a,0x52d8,0x52e7,0x5dfb,0x559a,0x582a,0x59e6,
-0x5b8c,0x5b98,0x5bdb,0x5e72,0x5e79,0x60a3,0x611f,0x6163,
-0x61be,0x63db,0x6562,0x67d1,0x6853,0x68fa,0x6b3e,0x6b53,
-0x6c57,0x6f22,0x6f97,0x6f45,0x74b0,0x7518,0x76e3,0x770b,
-0x7aff,0x7ba1,0x7c21,0x7de9,0x7f36,0x7ff0,0x809d,0x8266,
-0x839e,0x89b3,0x8acc,0x8cab,0x9084,0x9451,0x9593,0x9591,
-0x95a2,0x9665,0x97d3,0x9928,0x8218,0x4e38,0x542b,0x5cb8,
-0x5dcc,0x73a9,0x764c,0x773c,0x5ca9,0x7feb,0x8d0b,0x96c1,
-0x9811,0x9854,0x9858,0x4f01,0x4f0e,0x5371,0x559c,0x5668,
-0x57fa,0x5947,0x5b09,0x5bc4,0x5c90,0x5e0c,0x5e7e,0x5fcc,
-0x63ee,0x673a,0x65d7,0x65e2,0x671f,0x68cb,0x68c4,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6a5f,0x5e30,0x6bc5,
-0x6c17,0x6c7d,0x757f,0x7948,0x5b63,0x7a00,0x7d00,0x5fbd,
-0x898f,0x8a18,0x8cb4,0x8d77,0x8ecc,0x8f1d,0x98e2,0x9a0e,
-0x9b3c,0x4e80,0x507d,0x5100,0x5993,0x5b9c,0x622f,0x6280,
-0x64ec,0x6b3a,0x72a0,0x7591,0x7947,0x7fa9,0x87fb,0x8abc,
-0x8b70,0x63ac,0x83ca,0x97a0,0x5409,0x5403,0x55ab,0x6854,
-0x6a58,0x8a70,0x7827,0x6775,0x9ecd,0x5374,0x5ba2,0x811a,
-0x8650,0x9006,0x4e18,0x4e45,0x4ec7,0x4f11,0x53ca,0x5438,
-0x5bae,0x5f13,0x6025,0x6551,0x673d,0x6c42,0x6c72,0x6ce3,
-0x7078,0x7403,0x7a76,0x7aae,0x7b08,0x7d1a,0x7cfe,0x7d66,
-0x65e7,0x725b,0x53bb,0x5c45,0x5de8,0x62d2,0x62e0,0x6319,
-0x6e20,0x865a,0x8a31,0x8ddd,0x92f8,0x6f01,0x79a6,0x9b5a,
-0x4ea8,0x4eab,0x4eac,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x4f9b,0x4fa0,0x50d1,0x5147,0x7af6,0x5171,0x51f6,
-0x5354,0x5321,0x537f,0x53eb,0x55ac,0x5883,0x5ce1,0x5f37,
-0x5f4a,0x602f,0x6050,0x606d,0x631f,0x6559,0x6a4b,0x6cc1,
-0x72c2,0x72ed,0x77ef,0x80f8,0x8105,0x8208,0x854e,0x90f7,
-0x93e1,0x97ff,0x9957,0x9a5a,0x4ef0,0x51dd,0x5c2d,0x6681,
-0x696d,0x5c40,0x66f2,0x6975,0x7389,0x6850,0x7c81,0x50c5,
-0x52e4,0x5747,0x5dfe,0x9326,0x65a4,0x6b23,0x6b3d,0x7434,
-0x7981,0x79bd,0x7b4b,0x7dca,0x82b9,0x83cc,0x887f,0x895f,
-0x8b39,0x8fd1,0x91d1,0x541f,0x9280,0x4e5d,0x5036,0x53e5,
-0x533a,0x72d7,0x7396,0x77e9,0x82e6,0x8eaf,0x99c6,0x99c8,
-0x99d2,0x5177,0x611a,0x865e,0x55b0,0x7a7a,0x5076,0x5bd3,
-0x9047,0x9685,0x4e32,0x6adb,0x91e7,0x5c51,0x5c48,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6398,0x7a9f,0x6c93,
-0x9774,0x8f61,0x7aaa,0x718a,0x9688,0x7c82,0x6817,0x7e70,
-0x6851,0x936c,0x52f2,0x541b,0x85ab,0x8a13,0x7fa4,0x8ecd,
-0x90e1,0x5366,0x8888,0x7941,0x4fc2,0x50be,0x5211,0x5144,
-0x5553,0x572d,0x73ea,0x578b,0x5951,0x5f62,0x5f84,0x6075,
-0x6176,0x6167,0x61a9,0x63b2,0x643a,0x656c,0x666f,0x6842,
-0x6e13,0x7566,0x7a3d,0x7cfb,0x7d4c,0x7d99,0x7e4b,0x7f6b,
-0x830e,0x834a,0x86cd,0x8a08,0x8a63,0x8b66,0x8efd,0x981a,
-0x9d8f,0x82b8,0x8fce,0x9be8,0x5287,0x621f,0x6483,0x6fc0,
-0x9699,0x6841,0x5091,0x6b20,0x6c7a,0x6f54,0x7a74,0x7d50,
-0x8840,0x8a23,0x6708,0x4ef6,0x5039,0x5026,0x5065,0x517c,
-0x5238,0x5263,0x55a7,0x570f,0x5805,0x5acc,0x5efa,0x61b2,
-0x61f8,0x62f3,0x6372,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x691c,0x6a29,0x727d,0x72ac,0x732e,0x7814,0x786f,
-0x7d79,0x770c,0x80a9,0x898b,0x8b19,0x8ce2,0x8ed2,0x9063,
-0x9375,0x967a,0x9855,0x9a13,0x9e78,0x5143,0x539f,0x53b3,
-0x5e7b,0x5f26,0x6e1b,0x6e90,0x7384,0x73fe,0x7d43,0x8237,
-0x8a00,0x8afa,0x9650,0x4e4e,0x500b,0x53e4,0x547c,0x56fa,
-0x59d1,0x5b64,0x5df1,0x5eab,0x5f27,0x6238,0x6545,0x67af,
-0x6e56,0x72d0,0x7cca,0x88b4,0x80a1,0x80e1,0x83f0,0x864e,
-0x8a87,0x8de8,0x9237,0x96c7,0x9867,0x9f13,0x4e94,0x4e92,
-0x4f0d,0x5348,0x5449,0x543e,0x5a2f,0x5f8c,0x5fa1,0x609f,
-0x68a7,0x6a8e,0x745a,0x7881,0x8a9e,0x8aa4,0x8b77,0x9190,
-0x4e5e,0x9bc9,0x4ea4,0x4f7c,0x4faf,0x5019,0x5016,0x5149,
-0x516c,0x529f,0x52b9,0x52fe,0x539a,0x53e3,0x5411,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x540e,0x5589,0x5751,
-0x57a2,0x597d,0x5b54,0x5b5d,0x5b8f,0x5de5,0x5de7,0x5df7,
-0x5e78,0x5e83,0x5e9a,0x5eb7,0x5f18,0x6052,0x614c,0x6297,
-0x62d8,0x63a7,0x653b,0x6602,0x6643,0x66f4,0x676d,0x6821,
-0x6897,0x69cb,0x6c5f,0x6d2a,0x6d69,0x6e2f,0x6e9d,0x7532,
-0x7687,0x786c,0x7a3f,0x7ce0,0x7d05,0x7d18,0x7d5e,0x7db1,
-0x8015,0x8003,0x80af,0x80b1,0x8154,0x818f,0x822a,0x8352,
-0x884c,0x8861,0x8b1b,0x8ca2,0x8cfc,0x90ca,0x9175,0x9271,
-0x783f,0x92fc,0x95a4,0x964d,0x9805,0x9999,0x9ad8,0x9d3b,
-0x525b,0x52ab,0x53f7,0x5408,0x58d5,0x62f7,0x6fe0,0x8c6a,
-0x8f5f,0x9eb9,0x514b,0x523b,0x544a,0x56fd,0x7a40,0x9177,
-0x9d60,0x9ed2,0x7344,0x6f09,0x8170,0x7511,0x5ffd,0x60da,
-0x9aa8,0x72db,0x8fbc,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6b64,0x9803,0x4eca,0x56f0,0x5764,0x58be,0x5a5a,
-0x6068,0x61c7,0x660f,0x6606,0x6839,0x68b1,0x6df7,0x75d5,
-0x7d3a,0x826e,0x9b42,0x4e9b,0x4f50,0x53c9,0x5506,0x5d6f,
-0x5de6,0x5dee,0x67fb,0x6c99,0x7473,0x7802,0x8a50,0x9396,
-0x88df,0x5750,0x5ea7,0x632b,0x50b5,0x50ac,0x518d,0x6700,
-0x54c9,0x585e,0x59bb,0x5bb0,0x5f69,0x624d,0x63a1,0x683d,
-0x6b73,0x6e08,0x707d,0x91c7,0x7280,0x7815,0x7826,0x796d,
-0x658e,0x7d30,0x83dc,0x88c1,0x8f09,0x969b,0x5264,0x5728,
-0x6750,0x7f6a,0x8ca1,0x51b4,0x5742,0x962a,0x583a,0x698a,
-0x80b4,0x54b2,0x5d0e,0x57fc,0x7895,0x9dfa,0x4f5c,0x524a,
-0x548b,0x643e,0x6628,0x6714,0x67f5,0x7a84,0x7b56,0x7d22,
-0x932f,0x685c,0x9bad,0x7b39,0x5319,0x518a,0x5237,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x5bdf,0x62f6,0x64ae,
-0x64e6,0x672d,0x6bba,0x85a9,0x96d1,0x7690,0x9bd6,0x634c,
-0x9306,0x9bab,0x76bf,0x6652,0x4e09,0x5098,0x53c2,0x5c71,
-0x60e8,0x6492,0x6563,0x685f,0x71e6,0x73ca,0x7523,0x7b97,
-0x7e82,0x8695,0x8b83,0x8cdb,0x9178,0x9910,0x65ac,0x66ab,
-0x6b8b,0x4ed5,0x4ed4,0x4f3a,0x4f7f,0x523a,0x53f8,0x53f2,
-0x55e3,0x56db,0x58eb,0x59cb,0x59c9,0x59ff,0x5b50,0x5c4d,
-0x5e02,0x5e2b,0x5fd7,0x601d,0x6307,0x652f,0x5b5c,0x65af,
-0x65bd,0x65e8,0x679d,0x6b62,0x6b7b,0x6c0f,0x7345,0x7949,
-0x79c1,0x7cf8,0x7d19,0x7d2b,0x80a2,0x8102,0x81f3,0x8996,
-0x8a5e,0x8a69,0x8a66,0x8a8c,0x8aee,0x8cc7,0x8cdc,0x96cc,
-0x98fc,0x6b6f,0x4e8b,0x4f3c,0x4f8d,0x5150,0x5b57,0x5bfa,
-0x6148,0x6301,0x6642,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6b21,0x6ecb,0x6cbb,0x723e,0x74bd,0x75d4,0x78c1,
-0x793a,0x800c,0x8033,0x81ea,0x8494,0x8f9e,0x6c50,0x9e7f,
-0x5f0f,0x8b58,0x9d2b,0x7afa,0x8ef8,0x5b8d,0x96eb,0x4e03,
-0x53f1,0x57f7,0x5931,0x5ac9,0x5ba4,0x6089,0x6e7f,0x6f06,
-0x75be,0x8cea,0x5b9f,0x8500,0x7be0,0x5072,0x67f4,0x829d,
-0x5c61,0x854a,0x7e1e,0x820e,0x5199,0x5c04,0x6368,0x8d66,
-0x659c,0x716e,0x793e,0x7d17,0x8005,0x8b1d,0x8eca,0x906e,
-0x86c7,0x90aa,0x501f,0x52fa,0x5c3a,0x6753,0x707c,0x7235,
-0x914c,0x91c8,0x932b,0x82e5,0x5bc2,0x5f31,0x60f9,0x4e3b,
-0x53d6,0x5b88,0x624b,0x6731,0x6b8a,0x72e9,0x73e0,0x7a2e,
-0x816b,0x8da3,0x9152,0x9996,0x5112,0x53d7,0x546a,0x5bff,
-0x6388,0x6a39,0x7dac,0x9700,0x56da,0x53ce,0x5468,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x5b97,0x5c31,0x5dde,
-0x4fee,0x6101,0x62fe,0x6d32,0x79c0,0x79cb,0x7d42,0x7e4d,
-0x7fd2,0x81ed,0x821f,0x8490,0x8846,0x8972,0x8b90,0x8e74,
-0x8f2f,0x9031,0x914b,0x916c,0x96c6,0x919c,0x4ec0,0x4f4f,
-0x5145,0x5341,0x5f93,0x620e,0x67d4,0x6c41,0x6e0b,0x7363,
-0x7e26,0x91cd,0x9283,0x53d4,0x5919,0x5bbf,0x6dd1,0x795d,
-0x7e2e,0x7c9b,0x587e,0x719f,0x51fa,0x8853,0x8ff0,0x4fca,
-0x5cfb,0x6625,0x77ac,0x7ae3,0x821c,0x99ff,0x51c6,0x5faa,
-0x65ec,0x696f,0x6b89,0x6df3,0x6e96,0x6f64,0x76fe,0x7d14,
-0x5de1,0x9075,0x9187,0x9806,0x51e6,0x521d,0x6240,0x6691,
-0x66d9,0x6e1a,0x5eb6,0x7dd2,0x7f72,0x66f8,0x85af,0x85f7,
-0x8af8,0x52a9,0x53d9,0x5973,0x5e8f,0x5f90,0x6055,0x92e4,
-0x9664,0x50b7,0x511f,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x52dd,0x5320,0x5347,0x53ec,0x54e8,0x5546,0x5531,
-0x5617,0x5968,0x59be,0x5a3c,0x5bb5,0x5c06,0x5c0f,0x5c11,
-0x5c1a,0x5e84,0x5e8a,0x5ee0,0x5f70,0x627f,0x6284,0x62db,
-0x638c,0x6377,0x6607,0x660c,0x662d,0x6676,0x677e,0x68a2,
-0x6a1f,0x6a35,0x6cbc,0x6d88,0x6e09,0x6e58,0x713c,0x7126,
-0x7167,0x75c7,0x7701,0x785d,0x7901,0x7965,0x79f0,0x7ae0,
-0x7b11,0x7ca7,0x7d39,0x8096,0x83d6,0x848b,0x8549,0x885d,
-0x88f3,0x8a1f,0x8a3c,0x8a54,0x8a73,0x8c61,0x8cde,0x91a4,
-0x9266,0x937e,0x9418,0x969c,0x9798,0x4e0a,0x4e08,0x4e1e,
-0x4e57,0x5197,0x5270,0x57ce,0x5834,0x58cc,0x5b22,0x5e38,
-0x60c5,0x64fe,0x6761,0x6756,0x6d44,0x72b6,0x7573,0x7a63,
-0x84b8,0x8b72,0x91b8,0x9320,0x5631,0x57f4,0x98fe,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x62ed,0x690d,0x6b96,
-0x71ed,0x7e54,0x8077,0x8272,0x89e6,0x98df,0x8755,0x8fb1,
-0x5c3b,0x4f38,0x4fe1,0x4fb5,0x5507,0x5a20,0x5bdd,0x5be9,
-0x5fc3,0x614e,0x632f,0x65b0,0x664b,0x68ee,0x699b,0x6d78,
-0x6df1,0x7533,0x75b9,0x771f,0x795e,0x79e6,0x7d33,0x81e3,
-0x82af,0x85aa,0x89aa,0x8a3a,0x8eab,0x8f9b,0x9032,0x91dd,
-0x9707,0x4eba,0x4ec1,0x5203,0x5875,0x58ec,0x5c0b,0x751a,
-0x5c3d,0x814e,0x8a0a,0x8fc5,0x9663,0x976d,0x7b25,0x8acf,
-0x9808,0x9162,0x56f3,0x53a8,0x9017,0x5439,0x5782,0x5e25,
-0x63a8,0x6c34,0x708a,0x7761,0x7c8b,0x7fe0,0x8870,0x9042,
-0x9154,0x9310,0x9318,0x968f,0x745e,0x9ac4,0x5d07,0x5d69,
-0x6570,0x67a2,0x8da8,0x96db,0x636e,0x6749,0x6919,0x83c5,
-0x9817,0x96c0,0x88fe,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6f84,0x647a,0x5bf8,0x4e16,0x702c,0x755d,0x662f,
-0x51c4,0x5236,0x52e2,0x59d3,0x5f81,0x6027,0x6210,0x653f,
-0x6574,0x661f,0x6674,0x68f2,0x6816,0x6b63,0x6e05,0x7272,
-0x751f,0x76db,0x7cbe,0x8056,0x58f0,0x88fd,0x897f,0x8aa0,
-0x8a93,0x8acb,0x901d,0x9192,0x9752,0x9759,0x6589,0x7a0e,
-0x8106,0x96bb,0x5e2d,0x60dc,0x621a,0x65a5,0x6614,0x6790,
-0x77f3,0x7a4d,0x7c4d,0x7e3e,0x810a,0x8cac,0x8d64,0x8de1,
-0x8e5f,0x78a9,0x5207,0x62d9,0x63a5,0x6442,0x6298,0x8a2d,
-0x7a83,0x7bc0,0x8aac,0x96ea,0x7d76,0x820c,0x8749,0x4ed9,
-0x5148,0x5343,0x5360,0x5ba3,0x5c02,0x5c16,0x5ddd,0x6226,
-0x6247,0x64b0,0x6813,0x6834,0x6cc9,0x6d45,0x6d17,0x67d3,
-0x6f5c,0x714e,0x717d,0x65cb,0x7a7f,0x7bad,0x7dda,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x7e4a,0x7fa8,0x817a,
-0x821b,0x8239,0x85a6,0x8a6e,0x8cce,0x8df5,0x9078,0x9077,
-0x92ad,0x9291,0x9583,0x9bae,0x524d,0x5584,0x6f38,0x7136,
-0x5168,0x7985,0x7e55,0x81b3,0x7cce,0x564c,0x5851,0x5ca8,
-0x63aa,0x66fe,0x66fd,0x695a,0x72d9,0x758f,0x758e,0x790e,
-0x7956,0x79df,0x7c97,0x7d20,0x7d44,0x8607,0x8a34,0x963b,
-0x9061,0x9f20,0x50e7,0x5275,0x53cc,0x53e2,0x5009,0x55aa,
-0x58ee,0x594f,0x723d,0x5b8b,0x5c64,0x531d,0x60e3,0x60f3,
-0x635c,0x6383,0x633f,0x63bb,0x64cd,0x65e9,0x66f9,0x5de3,
-0x69cd,0x69fd,0x6f15,0x71e5,0x4e89,0x75e9,0x76f8,0x7a93,
-0x7cdf,0x7dcf,0x7d9c,0x8061,0x8349,0x8358,0x846c,0x84bc,
-0x85fb,0x88c5,0x8d70,0x9001,0x906d,0x9397,0x971c,0x9a12,
-0x50cf,0x5897,0x618e,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x81d3,0x8535,0x8d08,0x9020,0x4fc3,0x5074,0x5247,
-0x5373,0x606f,0x6349,0x675f,0x6e2c,0x8db3,0x901f,0x4fd7,
-0x5c5e,0x8cca,0x65cf,0x7d9a,0x5352,0x8896,0x5176,0x63c3,
-0x5b58,0x5b6b,0x5c0a,0x640d,0x6751,0x905c,0x4ed6,0x591a,
-0x592a,0x6c70,0x8a51,0x553e,0x5815,0x59a5,0x60f0,0x6253,
-0x67c1,0x8235,0x6955,0x9640,0x99c4,0x9a28,0x4f53,0x5806,
-0x5bfe,0x8010,0x5cb1,0x5e2f,0x5f85,0x6020,0x614b,0x6234,
-0x66ff,0x6cf0,0x6ede,0x80ce,0x817f,0x82d4,0x888b,0x8cb8,
-0x9000,0x902e,0x968a,0x9edb,0x9bdb,0x4ee3,0x53f0,0x5927,
-0x7b2c,0x918d,0x984c,0x9df9,0x6edd,0x7027,0x5353,0x5544,
-0x5b85,0x6258,0x629e,0x62d3,0x6ca2,0x6fef,0x7422,0x8a17,
-0x9438,0x6fc1,0x8afe,0x8338,0x51e7,0x86f8,0x53ea,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x53e9,0x4f46,0x9054,
-0x8fb0,0x596a,0x8131,0x5dfd,0x7aea,0x8fbf,0x68da,0x8c37,
-0x72f8,0x9c48,0x6a3d,0x8ab0,0x4e39,0x5358,0x5606,0x5766,
-0x62c5,0x63a2,0x65e6,0x6b4e,0x6de1,0x6e5b,0x70ad,0x77ed,
-0x7aef,0x7baa,0x7dbb,0x803d,0x80c6,0x86cb,0x8a95,0x935b,
-0x56e3,0x58c7,0x5f3e,0x65ad,0x6696,0x6a80,0x6bb5,0x7537,
-0x8ac7,0x5024,0x77e5,0x5730,0x5f1b,0x6065,0x667a,0x6c60,
-0x75f4,0x7a1a,0x7f6e,0x81f4,0x8718,0x9045,0x99b3,0x7bc9,
-0x755c,0x7af9,0x7b51,0x84c4,0x9010,0x79e9,0x7a92,0x8336,
-0x5ae1,0x7740,0x4e2d,0x4ef2,0x5b99,0x5fe0,0x62bd,0x663c,
-0x67f1,0x6ce8,0x866b,0x8877,0x8a3b,0x914e,0x92f3,0x99d0,
-0x6a17,0x7026,0x732a,0x82e7,0x8457,0x8caf,0x4e01,0x5146,
-0x51cb,0x558b,0x5bf5,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5e16,0x5e33,0x5e81,0x5f14,0x5f35,0x5f6b,0x5fb4,
-0x61f2,0x6311,0x66a2,0x671d,0x6f6e,0x7252,0x753a,0x773a,
-0x8074,0x8139,0x8178,0x8776,0x8abf,0x8adc,0x8d85,0x8df3,
-0x929a,0x9577,0x9802,0x9ce5,0x52c5,0x6357,0x76f4,0x6715,
-0x6c88,0x73cd,0x8cc3,0x93ae,0x9673,0x6d25,0x589c,0x690e,
-0x69cc,0x8ffd,0x939a,0x75db,0x901a,0x585a,0x6802,0x63b4,
-0x69fb,0x4f43,0x6f2c,0x67d8,0x8fbb,0x8526,0x7db4,0x9354,
-0x693f,0x6f70,0x576a,0x58f7,0x5b2c,0x7d2c,0x722a,0x540a,
-0x91e3,0x9db4,0x4ead,0x4f4e,0x505c,0x5075,0x5243,0x8c9e,
-0x5448,0x5824,0x5b9a,0x5e1d,0x5e95,0x5ead,0x5ef7,0x5f1f,
-0x608c,0x62b5,0x633a,0x63d0,0x68af,0x6c40,0x7887,0x798e,
-0x7a0b,0x7de0,0x8247,0x8a02,0x8ae6,0x8e44,0x9013,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x90b8,0x912d,0x91d8,
-0x9f0e,0x6ce5,0x6458,0x64e2,0x6575,0x6ef4,0x7684,0x7b1b,
-0x9069,0x93d1,0x6eba,0x54f2,0x5fb9,0x64a4,0x8f4d,0x8fed,
-0x9244,0x5178,0x586b,0x5929,0x5c55,0x5e97,0x6dfb,0x7e8f,
-0x751c,0x8cbc,0x8ee2,0x985b,0x70b9,0x4f1d,0x6bbf,0x6fb1,
-0x7530,0x96fb,0x514e,0x5410,0x5835,0x5857,0x59ac,0x5c60,
-0x5f92,0x6597,0x675c,0x6e21,0x767b,0x83df,0x8ced,0x9014,
-0x90fd,0x934d,0x7825,0x783a,0x52aa,0x5ea6,0x571f,0x5974,
-0x6012,0x5012,0x515a,0x51ac,0x51cd,0x5200,0x5510,0x5854,
-0x5858,0x5957,0x5b95,0x5cf6,0x5d8b,0x60bc,0x6295,0x642d,
-0x6771,0x6843,0x68bc,0x68df,0x76d7,0x6dd8,0x6e6f,0x6d9b,
-0x706f,0x71c8,0x5f53,0x75d8,0x7977,0x7b49,0x7b54,0x7b52,
-0x7cd6,0x7d71,0x5230,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x8463,0x8569,0x85e4,0x8a0e,0x8b04,0x8c46,0x8e0f,
-0x9003,0x900f,0x9419,0x9676,0x982d,0x9a30,0x95d8,0x50cd,
-0x52d5,0x540c,0x5802,0x5c0e,0x61a7,0x649e,0x6d1e,0x77b3,
-0x7ae5,0x80f4,0x8404,0x9053,0x9285,0x5ce0,0x9d07,0x533f,
-0x5f97,0x5fb3,0x6d9c,0x7279,0x7763,0x79bf,0x7be4,0x6bd2,
-0x72ec,0x8aad,0x6803,0x6a61,0x51f8,0x7a81,0x6934,0x5c4a,
-0x9cf6,0x82eb,0x5bc5,0x9149,0x701e,0x5678,0x5c6f,0x60c7,
-0x6566,0x6c8c,0x8c5a,0x9041,0x9813,0x5451,0x66c7,0x920d,
-0x5948,0x90a3,0x5185,0x4e4d,0x51ea,0x8599,0x8b0e,0x7058,
-0x637a,0x934b,0x6962,0x99b4,0x7e04,0x7577,0x5357,0x6960,
-0x8edf,0x96e3,0x6c5d,0x4e8c,0x5c3c,0x5f10,0x8fe9,0x5302,
-0x8cd1,0x8089,0x8679,0x5eff,0x65e5,0x4e73,0x5165,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x5982,0x5c3f,0x97ee,
-0x4efb,0x598a,0x5fcd,0x8a8d,0x6fe1,0x79b0,0x7962,0x5be7,
-0x8471,0x732b,0x71b1,0x5e74,0x5ff5,0x637b,0x649a,0x71c3,
-0x7c98,0x4e43,0x5efc,0x4e4b,0x57dc,0x56a2,0x60a9,0x6fc3,
-0x7d0d,0x80fd,0x8133,0x81bf,0x8fb2,0x8997,0x86a4,0x5df4,
-0x628a,0x64ad,0x8987,0x6777,0x6ce2,0x6d3e,0x7436,0x7834,
-0x5a46,0x7f75,0x82ad,0x99ac,0x4ff3,0x5ec3,0x62dd,0x6392,
-0x6557,0x676f,0x76c3,0x724c,0x80cc,0x80ba,0x8f29,0x914d,
-0x500d,0x57f9,0x5a92,0x6885,0x6973,0x7164,0x72fd,0x8cb7,
-0x58f2,0x8ce0,0x966a,0x9019,0x877f,0x79e4,0x77e7,0x8429,
-0x4f2f,0x5265,0x535a,0x62cd,0x67cf,0x6cca,0x767d,0x7b94,
-0x7c95,0x8236,0x8584,0x8feb,0x66dd,0x6f20,0x7206,0x7e1b,
-0x83ab,0x99c1,0x9ea6,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x51fd,0x7bb1,0x7872,0x7bb8,0x8087,0x7b48,0x6ae8,
-0x5e61,0x808c,0x7551,0x7560,0x516b,0x9262,0x6e8c,0x767a,
-0x9197,0x9aea,0x4f10,0x7f70,0x629c,0x7b4f,0x95a5,0x9ce9,
-0x567a,0x5859,0x86e4,0x96bc,0x4f34,0x5224,0x534a,0x53cd,
-0x53db,0x5e06,0x642c,0x6591,0x677f,0x6c3e,0x6c4e,0x7248,
-0x72af,0x73ed,0x7554,0x7e41,0x822c,0x85e9,0x8ca9,0x7bc4,
-0x91c6,0x7169,0x9812,0x98ef,0x633d,0x6669,0x756a,0x76e4,
-0x78d0,0x8543,0x86ee,0x532a,0x5351,0x5426,0x5983,0x5e87,
-0x5f7c,0x60b2,0x6249,0x6279,0x62ab,0x6590,0x6bd4,0x6ccc,
-0x75b2,0x76ae,0x7891,0x79d8,0x7dcb,0x7f77,0x80a5,0x88ab,
-0x8ab9,0x8cbb,0x907f,0x975e,0x98db,0x6a0b,0x7c38,0x5099,
-0x5c3e,0x5fae,0x6787,0x6bd8,0x7435,0x7709,0x7f8e,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x9f3b,0x67ca,0x7a17,
-0x5339,0x758b,0x9aed,0x5f66,0x819d,0x83f1,0x8098,0x5f3c,
-0x5fc5,0x7562,0x7b46,0x903c,0x6867,0x59eb,0x5a9b,0x7d10,
-0x767e,0x8b2c,0x4ff5,0x5f6a,0x6a19,0x6c37,0x6f02,0x74e2,
-0x7968,0x8868,0x8a55,0x8c79,0x5edf,0x63cf,0x75c5,0x79d2,
-0x82d7,0x9328,0x92f2,0x849c,0x86ed,0x9c2d,0x54c1,0x5f6c,
-0x658c,0x6d5c,0x7015,0x8ca7,0x8cd3,0x983b,0x654f,0x74f6,
-0x4e0d,0x4ed8,0x57e0,0x592b,0x5a66,0x5bcc,0x51a8,0x5e03,
-0x5e9c,0x6016,0x6276,0x6577,0x65a7,0x666e,0x6d6e,0x7236,
-0x7b26,0x8150,0x819a,0x8299,0x8b5c,0x8ca0,0x8ce6,0x8d74,
-0x961c,0x9644,0x4fae,0x64ab,0x6b66,0x821e,0x8461,0x856a,
-0x90e8,0x5c01,0x6953,0x98a8,0x847a,0x8557,0x4f0f,0x526f,
-0x5fa9,0x5e45,0x670d,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x798f,0x8179,0x8907,0x8986,0x6df5,0x5f17,0x6255,
-0x6cb8,0x4ecf,0x7269,0x9b92,0x5206,0x543b,0x5674,0x58b3,
-0x61a4,0x626e,0x711a,0x596e,0x7c89,0x7cde,0x7d1b,0x96f0,
-0x6587,0x805e,0x4e19,0x4f75,0x5175,0x5840,0x5e63,0x5e73,
-0x5f0a,0x67c4,0x4e26,0x853d,0x9589,0x965b,0x7c73,0x9801,
-0x50fb,0x58c1,0x7656,0x78a7,0x5225,0x77a5,0x8511,0x7b86,
-0x504f,0x5909,0x7247,0x7bc7,0x7de8,0x8fba,0x8fd4,0x904d,
-0x4fbf,0x52c9,0x5a29,0x5f01,0x97ad,0x4fdd,0x8217,0x92ea,
-0x5703,0x6355,0x6b69,0x752b,0x88dc,0x8f14,0x7a42,0x52df,
-0x5893,0x6155,0x620a,0x66ae,0x6bcd,0x7c3f,0x83e9,0x5023,
-0x4ff8,0x5305,0x5446,0x5831,0x5949,0x5b9d,0x5cf0,0x5cef,
-0x5d29,0x5e96,0x62b1,0x6367,0x653e,0x65b9,0x670b,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6cd5,0x6ce1,0x70f9,
-0x7832,0x7e2b,0x80de,0x82b3,0x840c,0x84ec,0x8702,0x8912,
-0x8a2a,0x8c4a,0x90a6,0x92d2,0x98fd,0x9cf3,0x9d6c,0x4e4f,
-0x4ea1,0x508d,0x5256,0x574a,0x59a8,0x5e3d,0x5fd8,0x5fd9,
-0x623f,0x66b4,0x671b,0x67d0,0x68d2,0x5192,0x7d21,0x80aa,
-0x81a8,0x8b00,0x8c8c,0x8cbf,0x927e,0x9632,0x5420,0x982c,
-0x5317,0x50d5,0x535c,0x58a8,0x64b2,0x6734,0x7267,0x7766,
-0x7a46,0x91e6,0x52c3,0x6ca1,0x6b86,0x5800,0x5e4c,0x5954,
-0x672c,0x7ffb,0x51e1,0x76c6,0x6469,0x78e8,0x9b54,0x9ebb,
-0x57cb,0x59b9,0x6627,0x679a,0x6bce,0x54e9,0x69d9,0x5e55,
-0x819c,0x6795,0x9baa,0x67fe,0x9c52,0x685d,0x4ea6,0x4fe3,
-0x53c8,0x62b9,0x672b,0x6cab,0x8fc4,0x4fad,0x7e6d,0x9ebf,
-0x4e07,0x6162,0x6e80,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6f2b,0x8513,0x5473,0x672a,0x9b45,0x5df3,0x7b95,
-0x5cac,0x5bc6,0x871c,0x6e4a,0x84d1,0x7a14,0x8108,0x5999,
-0x7c8d,0x6c11,0x7720,0x52d9,0x5922,0x7121,0x725f,0x77db,
-0x9727,0x9d61,0x690b,0x5a7f,0x5a18,0x51a5,0x540d,0x547d,
-0x660e,0x76df,0x8ff7,0x9298,0x9cf4,0x59ea,0x725d,0x6ec5,
-0x514d,0x68c9,0x7dbf,0x7dec,0x9762,0x9eba,0x6478,0x6a21,
-0x8302,0x5984,0x5b5f,0x6bdb,0x731b,0x76f2,0x7db2,0x8017,
-0x8499,0x5132,0x6728,0x9ed9,0x76ee,0x6762,0x52ff,0x9905,
-0x5c24,0x623b,0x7c7e,0x8cb0,0x554f,0x60b6,0x7d0b,0x9580,
-0x5301,0x4e5f,0x51b6,0x591c,0x723a,0x8036,0x91ce,0x5f25,
-0x77e2,0x5384,0x5f79,0x7d04,0x85ac,0x8a33,0x8e8d,0x9756,
-0x67f3,0x85ae,0x9453,0x6109,0x6108,0x6cb9,0x7652,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x8aed,0x8f38,0x552f,
-0x4f51,0x512a,0x52c7,0x53cb,0x5ba5,0x5e7d,0x60a0,0x6182,
-0x63d6,0x6709,0x67da,0x6e67,0x6d8c,0x7336,0x7337,0x7531,
-0x7950,0x88d5,0x8a98,0x904a,0x9091,0x90f5,0x96c4,0x878d,
-0x5915,0x4e88,0x4f59,0x4e0e,0x8a89,0x8f3f,0x9810,0x50ad,
-0x5e7c,0x5996,0x5bb9,0x5eb8,0x63da,0x63fa,0x64c1,0x66dc,
-0x694a,0x69d8,0x6d0b,0x6eb6,0x7194,0x7528,0x7aaf,0x7f8a,
-0x8000,0x8449,0x84c9,0x8981,0x8b21,0x8e0a,0x9065,0x967d,
-0x990a,0x617e,0x6291,0x6b32,0x6c83,0x6d74,0x7fcc,0x7ffc,
-0x6dc0,0x7f85,0x87ba,0x88f8,0x6765,0x83b1,0x983c,0x96f7,
-0x6d1b,0x7d61,0x843d,0x916a,0x4e71,0x5375,0x5d50,0x6b04,
-0x6feb,0x85cd,0x862d,0x89a7,0x5229,0x540f,0x5c65,0x674e,
-0x68a8,0x7406,0x7483,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x75e2,0x88cf,0x88e1,0x91cc,0x96e2,0x9678,0x5f8b,
-0x7387,0x7acb,0x844e,0x63a0,0x7565,0x5289,0x6d41,0x6e9c,
-0x7409,0x7559,0x786b,0x7c92,0x9686,0x7adc,0x9f8d,0x4fb6,
-0x616e,0x65c5,0x865c,0x4e86,0x4eae,0x50da,0x4e21,0x51cc,
-0x5bee,0x6599,0x6881,0x6dbc,0x731f,0x7642,0x77ad,0x7a1c,
-0x7ce7,0x826f,0x8ad2,0x907c,0x91cf,0x9675,0x9818,0x529b,
-0x7dd1,0x502b,0x5398,0x6797,0x6dcb,0x71d0,0x7433,0x81e8,
-0x8f2a,0x96a3,0x9c57,0x9e9f,0x7460,0x5841,0x6d99,0x7d2f,
-0x985e,0x4ee4,0x4f36,0x4f8b,0x51b7,0x52b1,0x5dba,0x601c,
-0x73b2,0x793c,0x82d3,0x9234,0x96b7,0x96f6,0x970a,0x9e97,
-0x9f62,0x66a6,0x6b74,0x5217,0x52a3,0x70c8,0x88c2,0x5ec9,
-0x604b,0x6190,0x6f23,0x7149,0x7c3e,0x7df4,0x806f,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x84ee,0x9023,0x932c,
-0x5442,0x9b6f,0x6ad3,0x7089,0x8cc2,0x8def,0x9732,0x52b4,
-0x5a41,0x5eca,0x5f04,0x6717,0x697c,0x6994,0x6d6a,0x6f0f,
-0x7262,0x72fc,0x7bed,0x8001,0x807e,0x874b,0x90ce,0x516d,
-0x9e93,0x7984,0x808b,0x9332,0x8ad6,0x502d,0x548c,0x8a71,
-0x6b6a,0x8cc4,0x8107,0x60d1,0x67a0,0x9df2,0x4e99,0x4e98,
-0x9c10,0x8a6b,0x85c1,0x8568,0x6900,0x6e7e,0x7897,0x8155,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5f0c,0x4e10,0x4e15,0x4e2a,0x4e31,0x4e36,0x4e3c,
-0x4e3f,0x4e42,0x4e56,0x4e58,0x4e82,0x4e85,0x8c6b,0x4e8a,
-0x8212,0x5f0d,0x4e8e,0x4e9e,0x4e9f,0x4ea0,0x4ea2,0x4eb0,
-0x4eb3,0x4eb6,0x4ece,0x4ecd,0x4ec4,0x4ec6,0x4ec2,0x4ed7,
-0x4ede,0x4eed,0x4edf,0x4ef7,0x4f09,0x4f5a,0x4f30,0x4f5b,
-0x4f5d,0x4f57,0x4f47,0x4f76,0x4f88,0x4f8f,0x4f98,0x4f7b,
-0x4f69,0x4f70,0x4f91,0x4f6f,0x4f86,0x4f96,0x5118,0x4fd4,
-0x4fdf,0x4fce,0x4fd8,0x4fdb,0x4fd1,0x4fda,0x4fd0,0x4fe4,
-0x4fe5,0x501a,0x5028,0x5014,0x502a,0x5025,0x5005,0x4f1c,
-0x4ff6,0x5021,0x5029,0x502c,0x4ffe,0x4fef,0x5011,0x5006,
-0x5043,0x5047,0x6703,0x5055,0x5050,0x5048,0x505a,0x5056,
-0x506c,0x5078,0x5080,0x509a,0x5085,0x50b4,0x50b2,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x50c9,0x50ca,0x50b3,
-0x50c2,0x50d6,0x50de,0x50e5,0x50ed,0x50e3,0x50ee,0x50f9,
-0x50f5,0x5109,0x5101,0x5102,0x5116,0x5115,0x5114,0x511a,
-0x5121,0x513a,0x5137,0x513c,0x513b,0x513f,0x5140,0x5152,
-0x514c,0x5154,0x5162,0x7af8,0x5169,0x516a,0x516e,0x5180,
-0x5182,0x56d8,0x518c,0x5189,0x518f,0x5191,0x5193,0x5195,
-0x5196,0x51a4,0x51a6,0x51a2,0x51a9,0x51aa,0x51ab,0x51b3,
-0x51b1,0x51b2,0x51b0,0x51b5,0x51bd,0x51c5,0x51c9,0x51db,
-0x51e0,0x8655,0x51e9,0x51ed,0x51f0,0x51f5,0x51fe,0x5204,
-0x520b,0x5214,0x520e,0x5227,0x522a,0x522e,0x5233,0x5239,
-0x524f,0x5244,0x524b,0x524c,0x525e,0x5254,0x526a,0x5274,
-0x5269,0x5273,0x527f,0x527d,0x528d,0x5294,0x5292,0x5271,
-0x5288,0x5291,0x8fa8,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x8fa7,0x52ac,0x52ad,0x52bc,0x52b5,0x52c1,0x52cd,
-0x52d7,0x52de,0x52e3,0x52e6,0x98ed,0x52e0,0x52f3,0x52f5,
-0x52f8,0x52f9,0x5306,0x5308,0x7538,0x530d,0x5310,0x530f,
-0x5315,0x531a,0x5323,0x532f,0x5331,0x5333,0x5338,0x5340,
-0x5346,0x5345,0x4e17,0x5349,0x534d,0x51d6,0x535e,0x5369,
-0x536e,0x5918,0x537b,0x5377,0x5382,0x5396,0x53a0,0x53a6,
-0x53a5,0x53ae,0x53b0,0x53b6,0x53c3,0x7c12,0x96d9,0x53df,
-0x66fc,0x71ee,0x53ee,0x53e8,0x53ed,0x53fa,0x5401,0x543d,
-0x5440,0x542c,0x542d,0x543c,0x542e,0x5436,0x5429,0x541d,
-0x544e,0x548f,0x5475,0x548e,0x545f,0x5471,0x5477,0x5470,
-0x5492,0x547b,0x5480,0x5476,0x5484,0x5490,0x5486,0x54c7,
-0x54a2,0x54b8,0x54a5,0x54ac,0x54c4,0x54c8,0x54a8,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x54ab,0x54c2,0x54a4,
-0x54be,0x54bc,0x54d8,0x54e5,0x54e6,0x550f,0x5514,0x54fd,
-0x54ee,0x54ed,0x54fa,0x54e2,0x5539,0x5540,0x5563,0x554c,
-0x552e,0x555c,0x5545,0x5556,0x5557,0x5538,0x5533,0x555d,
-0x5599,0x5580,0x54af,0x558a,0x559f,0x557b,0x557e,0x5598,
-0x559e,0x55ae,0x557c,0x5583,0x55a9,0x5587,0x55a8,0x55da,
-0x55c5,0x55df,0x55c4,0x55dc,0x55e4,0x55d4,0x5614,0x55f7,
-0x5616,0x55fe,0x55fd,0x561b,0x55f9,0x564e,0x5650,0x71df,
-0x5634,0x5636,0x5632,0x5638,0x566b,0x5664,0x562f,0x566c,
-0x566a,0x5686,0x5680,0x568a,0x56a0,0x5694,0x568f,0x56a5,
-0x56ae,0x56b6,0x56b4,0x56c2,0x56bc,0x56c1,0x56c3,0x56c0,
-0x56c8,0x56ce,0x56d1,0x56d3,0x56d7,0x56ee,0x56f9,0x5700,
-0x56ff,0x5704,0x5709,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5708,0x570b,0x570d,0x5713,0x5718,0x5716,0x55c7,
-0x571c,0x5726,0x5737,0x5738,0x574e,0x573b,0x5740,0x574f,
-0x5769,0x57c0,0x5788,0x5761,0x577f,0x5789,0x5793,0x57a0,
-0x57b3,0x57a4,0x57aa,0x57b0,0x57c3,0x57c6,0x57d4,0x57d2,
-0x57d3,0x580a,0x57d6,0x57e3,0x580b,0x5819,0x581d,0x5872,
-0x5821,0x5862,0x584b,0x5870,0x6bc0,0x5852,0x583d,0x5879,
-0x5885,0x58b9,0x589f,0x58ab,0x58ba,0x58de,0x58bb,0x58b8,
-0x58ae,0x58c5,0x58d3,0x58d1,0x58d7,0x58d9,0x58d8,0x58e5,
-0x58dc,0x58e4,0x58df,0x58ef,0x58fa,0x58f9,0x58fb,0x58fc,
-0x58fd,0x5902,0x590a,0x5910,0x591b,0x68a6,0x5925,0x592c,
-0x592d,0x5932,0x5938,0x593e,0x7ad2,0x5955,0x5950,0x594e,
-0x595a,0x5958,0x5962,0x5960,0x5967,0x596c,0x5969,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x5978,0x5981,0x599d,
-0x4f5e,0x4fab,0x59a3,0x59b2,0x59c6,0x59e8,0x59dc,0x598d,
-0x59d9,0x59da,0x5a25,0x5a1f,0x5a11,0x5a1c,0x5a09,0x5a1a,
-0x5a40,0x5a6c,0x5a49,0x5a35,0x5a36,0x5a62,0x5a6a,0x5a9a,
-0x5abc,0x5abe,0x5acb,0x5ac2,0x5abd,0x5ae3,0x5ad7,0x5ae6,
-0x5ae9,0x5ad6,0x5afa,0x5afb,0x5b0c,0x5b0b,0x5b16,0x5b32,
-0x5ad0,0x5b2a,0x5b36,0x5b3e,0x5b43,0x5b45,0x5b40,0x5b51,
-0x5b55,0x5b5a,0x5b5b,0x5b65,0x5b69,0x5b70,0x5b73,0x5b75,
-0x5b78,0x6588,0x5b7a,0x5b80,0x5b83,0x5ba6,0x5bb8,0x5bc3,
-0x5bc7,0x5bc9,0x5bd4,0x5bd0,0x5be4,0x5be6,0x5be2,0x5bde,
-0x5be5,0x5beb,0x5bf0,0x5bf6,0x5bf3,0x5c05,0x5c07,0x5c08,
-0x5c0d,0x5c13,0x5c20,0x5c22,0x5c28,0x5c38,0x5c39,0x5c41,
-0x5c46,0x5c4e,0x5c53,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x5c50,0x5c4f,0x5b71,0x5c6c,0x5c6e,0x4e62,0x5c76,
-0x5c79,0x5c8c,0x5c91,0x5c94,0x599b,0x5cab,0x5cbb,0x5cb6,
-0x5cbc,0x5cb7,0x5cc5,0x5cbe,0x5cc7,0x5cd9,0x5ce9,0x5cfd,
-0x5cfa,0x5ced,0x5d8c,0x5cea,0x5d0b,0x5d15,0x5d17,0x5d5c,
-0x5d1f,0x5d1b,0x5d11,0x5d14,0x5d22,0x5d1a,0x5d19,0x5d18,
-0x5d4c,0x5d52,0x5d4e,0x5d4b,0x5d6c,0x5d73,0x5d76,0x5d87,
-0x5d84,0x5d82,0x5da2,0x5d9d,0x5dac,0x5dae,0x5dbd,0x5d90,
-0x5db7,0x5dbc,0x5dc9,0x5dcd,0x5dd3,0x5dd2,0x5dd6,0x5ddb,
-0x5deb,0x5df2,0x5df5,0x5e0b,0x5e1a,0x5e19,0x5e11,0x5e1b,
-0x5e36,0x5e37,0x5e44,0x5e43,0x5e40,0x5e4e,0x5e57,0x5e54,
-0x5e5f,0x5e62,0x5e64,0x5e47,0x5e75,0x5e76,0x5e7a,0x9ebc,
-0x5e7f,0x5ea0,0x5ec1,0x5ec2,0x5ec8,0x5ed0,0x5ecf,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x5ed6,0x5ee3,0x5edd,
-0x5eda,0x5edb,0x5ee2,0x5ee1,0x5ee8,0x5ee9,0x5eec,0x5ef1,
-0x5ef3,0x5ef0,0x5ef4,0x5ef8,0x5efe,0x5f03,0x5f09,0x5f5d,
-0x5f5c,0x5f0b,0x5f11,0x5f16,0x5f29,0x5f2d,0x5f38,0x5f41,
-0x5f48,0x5f4c,0x5f4e,0x5f2f,0x5f51,0x5f56,0x5f57,0x5f59,
-0x5f61,0x5f6d,0x5f73,0x5f77,0x5f83,0x5f82,0x5f7f,0x5f8a,
-0x5f88,0x5f91,0x5f87,0x5f9e,0x5f99,0x5f98,0x5fa0,0x5fa8,
-0x5fad,0x5fbc,0x5fd6,0x5ffb,0x5fe4,0x5ff8,0x5ff1,0x5fdd,
-0x60b3,0x5fff,0x6021,0x6060,0x6019,0x6010,0x6029,0x600e,
-0x6031,0x601b,0x6015,0x602b,0x6026,0x600f,0x603a,0x605a,
-0x6041,0x606a,0x6077,0x605f,0x604a,0x6046,0x604d,0x6063,
-0x6043,0x6064,0x6042,0x606c,0x606b,0x6059,0x6081,0x608d,
-0x60e7,0x6083,0x609a,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6084,0x609b,0x6096,0x6097,0x6092,0x60a7,0x608b,
-0x60e1,0x60b8,0x60e0,0x60d3,0x60b4,0x5ff0,0x60bd,0x60c6,
-0x60b5,0x60d8,0x614d,0x6115,0x6106,0x60f6,0x60f7,0x6100,
-0x60f4,0x60fa,0x6103,0x6121,0x60fb,0x60f1,0x610d,0x610e,
-0x6147,0x613e,0x6128,0x6127,0x614a,0x613f,0x613c,0x612c,
-0x6134,0x613d,0x6142,0x6144,0x6173,0x6177,0x6158,0x6159,
-0x615a,0x616b,0x6174,0x616f,0x6165,0x6171,0x615f,0x615d,
-0x6153,0x6175,0x6199,0x6196,0x6187,0x61ac,0x6194,0x619a,
-0x618a,0x6191,0x61ab,0x61ae,0x61cc,0x61ca,0x61c9,0x61f7,
-0x61c8,0x61c3,0x61c6,0x61ba,0x61cb,0x7f79,0x61cd,0x61e6,
-0x61e3,0x61f6,0x61fa,0x61f4,0x61ff,0x61fd,0x61fc,0x61fe,
-0x6200,0x6208,0x6209,0x620d,0x620c,0x6214,0x621b,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x621e,0x6221,0x622a,
-0x622e,0x6230,0x6232,0x6233,0x6241,0x624e,0x625e,0x6263,
-0x625b,0x6260,0x6268,0x627c,0x6282,0x6289,0x627e,0x6292,
-0x6293,0x6296,0x62d4,0x6283,0x6294,0x62d7,0x62d1,0x62bb,
-0x62cf,0x62ff,0x62c6,0x64d4,0x62c8,0x62dc,0x62cc,0x62ca,
-0x62c2,0x62c7,0x629b,0x62c9,0x630c,0x62ee,0x62f1,0x6327,
-0x6302,0x6308,0x62ef,0x62f5,0x6350,0x633e,0x634d,0x641c,
-0x634f,0x6396,0x638e,0x6380,0x63ab,0x6376,0x63a3,0x638f,
-0x6389,0x639f,0x63b5,0x636b,0x6369,0x63be,0x63e9,0x63c0,
-0x63c6,0x63e3,0x63c9,0x63d2,0x63f6,0x63c4,0x6416,0x6434,
-0x6406,0x6413,0x6426,0x6436,0x651d,0x6417,0x6428,0x640f,
-0x6467,0x646f,0x6476,0x644e,0x652a,0x6495,0x6493,0x64a5,
-0x64a9,0x6488,0x64bc,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x64da,0x64d2,0x64c5,0x64c7,0x64bb,0x64d8,0x64c2,
-0x64f1,0x64e7,0x8209,0x64e0,0x64e1,0x62ac,0x64e3,0x64ef,
-0x652c,0x64f6,0x64f4,0x64f2,0x64fa,0x6500,0x64fd,0x6518,
-0x651c,0x6505,0x6524,0x6523,0x652b,0x6534,0x6535,0x6537,
-0x6536,0x6538,0x754b,0x6548,0x6556,0x6555,0x654d,0x6558,
-0x655e,0x655d,0x6572,0x6578,0x6582,0x6583,0x8b8a,0x659b,
-0x659f,0x65ab,0x65b7,0x65c3,0x65c6,0x65c1,0x65c4,0x65cc,
-0x65d2,0x65db,0x65d9,0x65e0,0x65e1,0x65f1,0x6772,0x660a,
-0x6603,0x65fb,0x6773,0x6635,0x6636,0x6634,0x661c,0x664f,
-0x6644,0x6649,0x6641,0x665e,0x665d,0x6664,0x6667,0x6668,
-0x665f,0x6662,0x6670,0x6683,0x6688,0x668e,0x6689,0x6684,
-0x6698,0x669d,0x66c1,0x66b9,0x66c9,0x66be,0x66bc,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x66c4,0x66b8,0x66d6,
-0x66da,0x66e0,0x663f,0x66e6,0x66e9,0x66f0,0x66f5,0x66f7,
-0x670f,0x6716,0x671e,0x6726,0x6727,0x9738,0x672e,0x673f,
-0x6736,0x6741,0x6738,0x6737,0x6746,0x675e,0x6760,0x6759,
-0x6763,0x6764,0x6789,0x6770,0x67a9,0x677c,0x676a,0x678c,
-0x678b,0x67a6,0x67a1,0x6785,0x67b7,0x67ef,0x67b4,0x67ec,
-0x67b3,0x67e9,0x67b8,0x67e4,0x67de,0x67dd,0x67e2,0x67ee,
-0x67b9,0x67ce,0x67c6,0x67e7,0x6a9c,0x681e,0x6846,0x6829,
-0x6840,0x684d,0x6832,0x684e,0x68b3,0x682b,0x6859,0x6863,
-0x6877,0x687f,0x689f,0x688f,0x68ad,0x6894,0x689d,0x689b,
-0x6883,0x6aae,0x68b9,0x6874,0x68b5,0x68a0,0x68ba,0x690f,
-0x688d,0x687e,0x6901,0x68ca,0x6908,0x68d8,0x6922,0x6926,
-0x68e1,0x690c,0x68cd,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x68d4,0x68e7,0x68d5,0x6936,0x6912,0x6904,0x68d7,
-0x68e3,0x6925,0x68f9,0x68e0,0x68ef,0x6928,0x692a,0x691a,
-0x6923,0x6921,0x68c6,0x6979,0x6977,0x695c,0x6978,0x696b,
-0x6954,0x697e,0x696e,0x6939,0x6974,0x693d,0x6959,0x6930,
-0x6961,0x695e,0x695d,0x6981,0x696a,0x69b2,0x69ae,0x69d0,
-0x69bf,0x69c1,0x69d3,0x69be,0x69ce,0x5be8,0x69ca,0x69dd,
-0x69bb,0x69c3,0x69a7,0x6a2e,0x6991,0x69a0,0x699c,0x6995,
-0x69b4,0x69de,0x69e8,0x6a02,0x6a1b,0x69ff,0x6b0a,0x69f9,
-0x69f2,0x69e7,0x6a05,0x69b1,0x6a1e,0x69ed,0x6a14,0x69eb,
-0x6a0a,0x6a12,0x6ac1,0x6a23,0x6a13,0x6a44,0x6a0c,0x6a72,
-0x6a36,0x6a78,0x6a47,0x6a62,0x6a59,0x6a66,0x6a48,0x6a38,
-0x6a22,0x6a90,0x6a8d,0x6aa0,0x6a84,0x6aa2,0x6aa3,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6a97,0x8617,0x6abb,
-0x6ac3,0x6ac2,0x6ab8,0x6ab3,0x6aac,0x6ade,0x6ad1,0x6adf,
-0x6aaa,0x6ada,0x6aea,0x6afb,0x6b05,0x8616,0x6afa,0x6b12,
-0x6b16,0x9b31,0x6b1f,0x6b38,0x6b37,0x76dc,0x6b39,0x98ee,
-0x6b47,0x6b43,0x6b49,0x6b50,0x6b59,0x6b54,0x6b5b,0x6b5f,
-0x6b61,0x6b78,0x6b79,0x6b7f,0x6b80,0x6b84,0x6b83,0x6b8d,
-0x6b98,0x6b95,0x6b9e,0x6ba4,0x6baa,0x6bab,0x6baf,0x6bb2,
-0x6bb1,0x6bb3,0x6bb7,0x6bbc,0x6bc6,0x6bcb,0x6bd3,0x6bdf,
-0x6bec,0x6beb,0x6bf3,0x6bef,0x9ebe,0x6c08,0x6c13,0x6c14,
-0x6c1b,0x6c24,0x6c23,0x6c5e,0x6c55,0x6c62,0x6c6a,0x6c82,
-0x6c8d,0x6c9a,0x6c81,0x6c9b,0x6c7e,0x6c68,0x6c73,0x6c92,
-0x6c90,0x6cc4,0x6cf1,0x6cd3,0x6cbd,0x6cd7,0x6cc5,0x6cdd,
-0x6cae,0x6cb1,0x6cbe,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x6cba,0x6cdb,0x6cef,0x6cd9,0x6cea,0x6d1f,0x884d,
-0x6d36,0x6d2b,0x6d3d,0x6d38,0x6d19,0x6d35,0x6d33,0x6d12,
-0x6d0c,0x6d63,0x6d93,0x6d64,0x6d5a,0x6d79,0x6d59,0x6d8e,
-0x6d95,0x6fe4,0x6d85,0x6df9,0x6e15,0x6e0a,0x6db5,0x6dc7,
-0x6de6,0x6db8,0x6dc6,0x6dec,0x6dde,0x6dcc,0x6de8,0x6dd2,
-0x6dc5,0x6dfa,0x6dd9,0x6de4,0x6dd5,0x6dea,0x6dee,0x6e2d,
-0x6e6e,0x6e2e,0x6e19,0x6e72,0x6e5f,0x6e3e,0x6e23,0x6e6b,
-0x6e2b,0x6e76,0x6e4d,0x6e1f,0x6e43,0x6e3a,0x6e4e,0x6e24,
-0x6eff,0x6e1d,0x6e38,0x6e82,0x6eaa,0x6e98,0x6ec9,0x6eb7,
-0x6ed3,0x6ebd,0x6eaf,0x6ec4,0x6eb2,0x6ed4,0x6ed5,0x6e8f,
-0x6ea5,0x6ec2,0x6e9f,0x6f41,0x6f11,0x704c,0x6eec,0x6ef8,
-0x6efe,0x6f3f,0x6ef2,0x6f31,0x6eef,0x6f32,0x6ecc,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x6f3e,0x6f13,0x6ef7,
-0x6f86,0x6f7a,0x6f78,0x6f81,0x6f80,0x6f6f,0x6f5b,0x6ff3,
-0x6f6d,0x6f82,0x6f7c,0x6f58,0x6f8e,0x6f91,0x6fc2,0x6f66,
-0x6fb3,0x6fa3,0x6fa1,0x6fa4,0x6fb9,0x6fc6,0x6faa,0x6fdf,
-0x6fd5,0x6fec,0x6fd4,0x6fd8,0x6ff1,0x6fee,0x6fdb,0x7009,
-0x700b,0x6ffa,0x7011,0x7001,0x700f,0x6ffe,0x701b,0x701a,
-0x6f74,0x701d,0x7018,0x701f,0x7030,0x703e,0x7032,0x7051,
-0x7063,0x7099,0x7092,0x70af,0x70f1,0x70ac,0x70b8,0x70b3,
-0x70ae,0x70df,0x70cb,0x70dd,0x70d9,0x7109,0x70fd,0x711c,
-0x7119,0x7165,0x7155,0x7188,0x7166,0x7162,0x714c,0x7156,
-0x716c,0x718f,0x71fb,0x7184,0x7195,0x71a8,0x71ac,0x71d7,
-0x71b9,0x71be,0x71d2,0x71c9,0x71d4,0x71ce,0x71e0,0x71ec,
-0x71e7,0x71f5,0x71fc,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x71f9,0x71ff,0x720d,0x7210,0x721b,0x7228,0x722d,
-0x722c,0x7230,0x7232,0x723b,0x723c,0x723f,0x7240,0x7246,
-0x724b,0x7258,0x7274,0x727e,0x7282,0x7281,0x7287,0x7292,
-0x7296,0x72a2,0x72a7,0x72b9,0x72b2,0x72c3,0x72c6,0x72c4,
-0x72ce,0x72d2,0x72e2,0x72e0,0x72e1,0x72f9,0x72f7,0x500f,
-0x7317,0x730a,0x731c,0x7316,0x731d,0x7334,0x732f,0x7329,
-0x7325,0x733e,0x734e,0x734f,0x9ed8,0x7357,0x736a,0x7368,
-0x7370,0x7378,0x7375,0x737b,0x737a,0x73c8,0x73b3,0x73ce,
-0x73bb,0x73c0,0x73e5,0x73ee,0x73de,0x74a2,0x7405,0x746f,
-0x7425,0x73f8,0x7432,0x743a,0x7455,0x743f,0x745f,0x7459,
-0x7441,0x745c,0x7469,0x7470,0x7463,0x746a,0x7476,0x747e,
-0x748b,0x749e,0x74a7,0x74ca,0x74cf,0x74d4,0x73f1,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x74e0,0x74e3,0x74e7,
-0x74e9,0x74ee,0x74f2,0x74f0,0x74f1,0x74f8,0x74f7,0x7504,
-0x7503,0x7505,0x750c,0x750e,0x750d,0x7515,0x7513,0x751e,
-0x7526,0x752c,0x753c,0x7544,0x754d,0x754a,0x7549,0x755b,
-0x7546,0x755a,0x7569,0x7564,0x7567,0x756b,0x756d,0x7578,
-0x7576,0x7586,0x7587,0x7574,0x758a,0x7589,0x7582,0x7594,
-0x759a,0x759d,0x75a5,0x75a3,0x75c2,0x75b3,0x75c3,0x75b5,
-0x75bd,0x75b8,0x75bc,0x75b1,0x75cd,0x75ca,0x75d2,0x75d9,
-0x75e3,0x75de,0x75fe,0x75ff,0x75fc,0x7601,0x75f0,0x75fa,
-0x75f2,0x75f3,0x760b,0x760d,0x7609,0x761f,0x7627,0x7620,
-0x7621,0x7622,0x7624,0x7634,0x7630,0x763b,0x7647,0x7648,
-0x7646,0x765c,0x7658,0x7661,0x7662,0x7668,0x7669,0x766a,
-0x7667,0x766c,0x7670,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x7672,0x7676,0x7678,0x767c,0x7680,0x7683,0x7688,
-0x768b,0x768e,0x7696,0x7693,0x7699,0x769a,0x76b0,0x76b4,
-0x76b8,0x76b9,0x76ba,0x76c2,0x76cd,0x76d6,0x76d2,0x76de,
-0x76e1,0x76e5,0x76e7,0x76ea,0x862f,0x76fb,0x7708,0x7707,
-0x7704,0x7729,0x7724,0x771e,0x7725,0x7726,0x771b,0x7737,
-0x7738,0x7747,0x775a,0x7768,0x776b,0x775b,0x7765,0x777f,
-0x777e,0x7779,0x778e,0x778b,0x7791,0x77a0,0x779e,0x77b0,
-0x77b6,0x77b9,0x77bf,0x77bc,0x77bd,0x77bb,0x77c7,0x77cd,
-0x77d7,0x77da,0x77dc,0x77e3,0x77ee,0x77fc,0x780c,0x7812,
-0x7926,0x7820,0x792a,0x7845,0x788e,0x7874,0x7886,0x787c,
-0x789a,0x788c,0x78a3,0x78b5,0x78aa,0x78af,0x78d1,0x78c6,
-0x78cb,0x78d4,0x78be,0x78bc,0x78c5,0x78ca,0x78ec,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x78e7,0x78da,0x78fd,
-0x78f4,0x7907,0x7912,0x7911,0x7919,0x792c,0x792b,0x7940,
-0x7960,0x7957,0x795f,0x795a,0x7955,0x7953,0x797a,0x797f,
-0x798a,0x799d,0x79a7,0x9f4b,0x79aa,0x79ae,0x79b3,0x79b9,
-0x79ba,0x79c9,0x79d5,0x79e7,0x79ec,0x79e1,0x79e3,0x7a08,
-0x7a0d,0x7a18,0x7a19,0x7a20,0x7a1f,0x7980,0x7a31,0x7a3b,
-0x7a3e,0x7a37,0x7a43,0x7a57,0x7a49,0x7a61,0x7a62,0x7a69,
-0x9f9d,0x7a70,0x7a79,0x7a7d,0x7a88,0x7a97,0x7a95,0x7a98,
-0x7a96,0x7aa9,0x7ac8,0x7ab0,0x7ab6,0x7ac5,0x7ac4,0x7abf,
-0x9083,0x7ac7,0x7aca,0x7acd,0x7acf,0x7ad5,0x7ad3,0x7ad9,
-0x7ada,0x7add,0x7ae1,0x7ae2,0x7ae6,0x7aed,0x7af0,0x7b02,
-0x7b0f,0x7b0a,0x7b06,0x7b33,0x7b18,0x7b19,0x7b1e,0x7b35,
-0x7b28,0x7b36,0x7b50,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x7b7a,0x7b04,0x7b4d,0x7b0b,0x7b4c,0x7b45,0x7b75,
-0x7b65,0x7b74,0x7b67,0x7b70,0x7b71,0x7b6c,0x7b6e,0x7b9d,
-0x7b98,0x7b9f,0x7b8d,0x7b9c,0x7b9a,0x7b8b,0x7b92,0x7b8f,
-0x7b5d,0x7b99,0x7bcb,0x7bc1,0x7bcc,0x7bcf,0x7bb4,0x7bc6,
-0x7bdd,0x7be9,0x7c11,0x7c14,0x7be6,0x7be5,0x7c60,0x7c00,
-0x7c07,0x7c13,0x7bf3,0x7bf7,0x7c17,0x7c0d,0x7bf6,0x7c23,
-0x7c27,0x7c2a,0x7c1f,0x7c37,0x7c2b,0x7c3d,0x7c4c,0x7c43,
-0x7c54,0x7c4f,0x7c40,0x7c50,0x7c58,0x7c5f,0x7c64,0x7c56,
-0x7c65,0x7c6c,0x7c75,0x7c83,0x7c90,0x7ca4,0x7cad,0x7ca2,
-0x7cab,0x7ca1,0x7ca8,0x7cb3,0x7cb2,0x7cb1,0x7cae,0x7cb9,
-0x7cbd,0x7cc0,0x7cc5,0x7cc2,0x7cd8,0x7cd2,0x7cdc,0x7ce2,
-0x9b3b,0x7cef,0x7cf2,0x7cf4,0x7cf6,0x7cfa,0x7d06,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x7d02,0x7d1c,0x7d15,
-0x7d0a,0x7d45,0x7d4b,0x7d2e,0x7d32,0x7d3f,0x7d35,0x7d46,
-0x7d73,0x7d56,0x7d4e,0x7d72,0x7d68,0x7d6e,0x7d4f,0x7d63,
-0x7d93,0x7d89,0x7d5b,0x7d8f,0x7d7d,0x7d9b,0x7dba,0x7dae,
-0x7da3,0x7db5,0x7dc7,0x7dbd,0x7dab,0x7e3d,0x7da2,0x7daf,
-0x7ddc,0x7db8,0x7d9f,0x7db0,0x7dd8,0x7ddd,0x7de4,0x7dde,
-0x7dfb,0x7df2,0x7de1,0x7e05,0x7e0a,0x7e23,0x7e21,0x7e12,
-0x7e31,0x7e1f,0x7e09,0x7e0b,0x7e22,0x7e46,0x7e66,0x7e3b,
-0x7e35,0x7e39,0x7e43,0x7e37,0x7e32,0x7e3a,0x7e67,0x7e5d,
-0x7e56,0x7e5e,0x7e59,0x7e5a,0x7e79,0x7e6a,0x7e69,0x7e7c,
-0x7e7b,0x7e83,0x7dd5,0x7e7d,0x8fae,0x7e7f,0x7e88,0x7e89,
-0x7e8c,0x7e92,0x7e90,0x7e93,0x7e94,0x7e96,0x7e8e,0x7e9b,
-0x7e9c,0x7f38,0x7f3a,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x7f45,0x7f4c,0x7f4d,0x7f4e,0x7f50,0x7f51,0x7f55,
-0x7f54,0x7f58,0x7f5f,0x7f60,0x7f68,0x7f69,0x7f67,0x7f78,
-0x7f82,0x7f86,0x7f83,0x7f88,0x7f87,0x7f8c,0x7f94,0x7f9e,
-0x7f9d,0x7f9a,0x7fa3,0x7faf,0x7fb2,0x7fb9,0x7fae,0x7fb6,
-0x7fb8,0x8b71,0x7fc5,0x7fc6,0x7fca,0x7fd5,0x7fd4,0x7fe1,
-0x7fe6,0x7fe9,0x7ff3,0x7ff9,0x98dc,0x8006,0x8004,0x800b,
-0x8012,0x8018,0x8019,0x801c,0x8021,0x8028,0x803f,0x803b,
-0x804a,0x8046,0x8052,0x8058,0x805a,0x805f,0x8062,0x8068,
-0x8073,0x8072,0x8070,0x8076,0x8079,0x807d,0x807f,0x8084,
-0x8086,0x8085,0x809b,0x8093,0x809a,0x80ad,0x5190,0x80ac,
-0x80db,0x80e5,0x80d9,0x80dd,0x80c4,0x80da,0x80d6,0x8109,
-0x80ef,0x80f1,0x811b,0x8129,0x8123,0x812f,0x814b,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x968b,0x8146,0x813e,
-0x8153,0x8151,0x80fc,0x8171,0x816e,0x8165,0x8166,0x8174,
-0x8183,0x8188,0x818a,0x8180,0x8182,0x81a0,0x8195,0x81a4,
-0x81a3,0x815f,0x8193,0x81a9,0x81b0,0x81b5,0x81be,0x81b8,
-0x81bd,0x81c0,0x81c2,0x81ba,0x81c9,0x81cd,0x81d1,0x81d9,
-0x81d8,0x81c8,0x81da,0x81df,0x81e0,0x81e7,0x81fa,0x81fb,
-0x81fe,0x8201,0x8202,0x8205,0x8207,0x820a,0x820d,0x8210,
-0x8216,0x8229,0x822b,0x8238,0x8233,0x8240,0x8259,0x8258,
-0x825d,0x825a,0x825f,0x8264,0x8262,0x8268,0x826a,0x826b,
-0x822e,0x8271,0x8277,0x8278,0x827e,0x828d,0x8292,0x82ab,
-0x829f,0x82bb,0x82ac,0x82e1,0x82e3,0x82df,0x82d2,0x82f4,
-0x82f3,0x82fa,0x8393,0x8303,0x82fb,0x82f9,0x82de,0x8306,
-0x82dc,0x8309,0x82d9,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x8335,0x8334,0x8316,0x8332,0x8331,0x8340,0x8339,
-0x8350,0x8345,0x832f,0x832b,0x8317,0x8318,0x8385,0x839a,
-0x83aa,0x839f,0x83a2,0x8396,0x8323,0x838e,0x8387,0x838a,
-0x837c,0x83b5,0x8373,0x8375,0x83a0,0x8389,0x83a8,0x83f4,
-0x8413,0x83eb,0x83ce,0x83fd,0x8403,0x83d8,0x840b,0x83c1,
-0x83f7,0x8407,0x83e0,0x83f2,0x840d,0x8422,0x8420,0x83bd,
-0x8438,0x8506,0x83fb,0x846d,0x842a,0x843c,0x855a,0x8484,
-0x8477,0x846b,0x84ad,0x846e,0x8482,0x8469,0x8446,0x842c,
-0x846f,0x8479,0x8435,0x84ca,0x8462,0x84b9,0x84bf,0x849f,
-0x84d9,0x84cd,0x84bb,0x84da,0x84d0,0x84c1,0x84c6,0x84d6,
-0x84a1,0x8521,0x84ff,0x84f4,0x8517,0x8518,0x852c,0x851f,
-0x8515,0x8514,0x84fc,0x8540,0x8563,0x8558,0x8548,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x8541,0x8602,0x854b,
-0x8555,0x8580,0x85a4,0x8588,0x8591,0x858a,0x85a8,0x856d,
-0x8594,0x859b,0x85ea,0x8587,0x859c,0x8577,0x857e,0x8590,
-0x85c9,0x85ba,0x85cf,0x85b9,0x85d0,0x85d5,0x85dd,0x85e5,
-0x85dc,0x85f9,0x860a,0x8613,0x860b,0x85fe,0x85fa,0x8606,
-0x8622,0x861a,0x8630,0x863f,0x864d,0x4e55,0x8654,0x865f,
-0x8667,0x8671,0x8693,0x86a3,0x86a9,0x86aa,0x868b,0x868c,
-0x86b6,0x86af,0x86c4,0x86c6,0x86b0,0x86c9,0x8823,0x86ab,
-0x86d4,0x86de,0x86e9,0x86ec,0x86df,0x86db,0x86ef,0x8712,
-0x8706,0x8708,0x8700,0x8703,0x86fb,0x8711,0x8709,0x870d,
-0x86f9,0x870a,0x8734,0x873f,0x8737,0x873b,0x8725,0x8729,
-0x871a,0x8760,0x875f,0x8778,0x874c,0x874e,0x8774,0x8757,
-0x8768,0x876e,0x8759,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x8753,0x8763,0x876a,0x8805,0x87a2,0x879f,0x8782,
-0x87af,0x87cb,0x87bd,0x87c0,0x87d0,0x96d6,0x87ab,0x87c4,
-0x87b3,0x87c7,0x87c6,0x87bb,0x87ef,0x87f2,0x87e0,0x880f,
-0x880d,0x87fe,0x87f6,0x87f7,0x880e,0x87d2,0x8811,0x8816,
-0x8815,0x8822,0x8821,0x8831,0x8836,0x8839,0x8827,0x883b,
-0x8844,0x8842,0x8852,0x8859,0x885e,0x8862,0x886b,0x8881,
-0x887e,0x889e,0x8875,0x887d,0x88b5,0x8872,0x8882,0x8897,
-0x8892,0x88ae,0x8899,0x88a2,0x888d,0x88a4,0x88b0,0x88bf,
-0x88b1,0x88c3,0x88c4,0x88d4,0x88d8,0x88d9,0x88dd,0x88f9,
-0x8902,0x88fc,0x88f4,0x88e8,0x88f2,0x8904,0x890c,0x890a,
-0x8913,0x8943,0x891e,0x8925,0x892a,0x892b,0x8941,0x8944,
-0x893b,0x8936,0x8938,0x894c,0x891d,0x8960,0x895e,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x8966,0x8964,0x896d,
-0x896a,0x896f,0x8974,0x8977,0x897e,0x8983,0x8988,0x898a,
-0x8993,0x8998,0x89a1,0x89a9,0x89a6,0x89ac,0x89af,0x89b2,
-0x89ba,0x89bd,0x89bf,0x89c0,0x89da,0x89dc,0x89dd,0x89e7,
-0x89f4,0x89f8,0x8a03,0x8a16,0x8a10,0x8a0c,0x8a1b,0x8a1d,
-0x8a25,0x8a36,0x8a41,0x8a5b,0x8a52,0x8a46,0x8a48,0x8a7c,
-0x8a6d,0x8a6c,0x8a62,0x8a85,0x8a82,0x8a84,0x8aa8,0x8aa1,
-0x8a91,0x8aa5,0x8aa6,0x8a9a,0x8aa3,0x8ac4,0x8acd,0x8ac2,
-0x8ada,0x8aeb,0x8af3,0x8ae7,0x8ae4,0x8af1,0x8b14,0x8ae0,
-0x8ae2,0x8af7,0x8ade,0x8adb,0x8b0c,0x8b07,0x8b1a,0x8ae1,
-0x8b16,0x8b10,0x8b17,0x8b20,0x8b33,0x97ab,0x8b26,0x8b2b,
-0x8b3e,0x8b28,0x8b41,0x8b4c,0x8b4f,0x8b4e,0x8b49,0x8b56,
-0x8b5b,0x8b5a,0x8b6b,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x8b5f,0x8b6c,0x8b6f,0x8b74,0x8b7d,0x8b80,0x8b8c,
-0x8b8e,0x8b92,0x8b93,0x8b96,0x8b99,0x8b9a,0x8c3a,0x8c41,
-0x8c3f,0x8c48,0x8c4c,0x8c4e,0x8c50,0x8c55,0x8c62,0x8c6c,
-0x8c78,0x8c7a,0x8c82,0x8c89,0x8c85,0x8c8a,0x8c8d,0x8c8e,
-0x8c94,0x8c7c,0x8c98,0x621d,0x8cad,0x8caa,0x8cbd,0x8cb2,
-0x8cb3,0x8cae,0x8cb6,0x8cc8,0x8cc1,0x8ce4,0x8ce3,0x8cda,
-0x8cfd,0x8cfa,0x8cfb,0x8d04,0x8d05,0x8d0a,0x8d07,0x8d0f,
-0x8d0d,0x8d10,0x9f4e,0x8d13,0x8ccd,0x8d14,0x8d16,0x8d67,
-0x8d6d,0x8d71,0x8d73,0x8d81,0x8d99,0x8dc2,0x8dbe,0x8dba,
-0x8dcf,0x8dda,0x8dd6,0x8dcc,0x8ddb,0x8dcb,0x8dea,0x8deb,
-0x8ddf,0x8de3,0x8dfc,0x8e08,0x8e09,0x8dff,0x8e1d,0x8e1e,
-0x8e10,0x8e1f,0x8e42,0x8e35,0x8e30,0x8e34,0x8e4a,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x8e47,0x8e49,0x8e4c,
-0x8e50,0x8e48,0x8e59,0x8e64,0x8e60,0x8e2a,0x8e63,0x8e55,
-0x8e76,0x8e72,0x8e7c,0x8e81,0x8e87,0x8e85,0x8e84,0x8e8b,
-0x8e8a,0x8e93,0x8e91,0x8e94,0x8e99,0x8eaa,0x8ea1,0x8eac,
-0x8eb0,0x8ec6,0x8eb1,0x8ebe,0x8ec5,0x8ec8,0x8ecb,0x8edb,
-0x8ee3,0x8efc,0x8efb,0x8eeb,0x8efe,0x8f0a,0x8f05,0x8f15,
-0x8f12,0x8f19,0x8f13,0x8f1c,0x8f1f,0x8f1b,0x8f0c,0x8f26,
-0x8f33,0x8f3b,0x8f39,0x8f45,0x8f42,0x8f3e,0x8f4c,0x8f49,
-0x8f46,0x8f4e,0x8f57,0x8f5c,0x8f62,0x8f63,0x8f64,0x8f9c,
-0x8f9f,0x8fa3,0x8fad,0x8faf,0x8fb7,0x8fda,0x8fe5,0x8fe2,
-0x8fea,0x8fef,0x9087,0x8ff4,0x9005,0x8ff9,0x8ffa,0x9011,
-0x9015,0x9021,0x900d,0x901e,0x9016,0x900b,0x9027,0x9036,
-0x9035,0x9039,0x8ff8,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x904f,0x9050,0x9051,0x9052,0x900e,0x9049,0x903e,
-0x9056,0x9058,0x905e,0x9068,0x906f,0x9076,0x96a8,0x9072,
-0x9082,0x907d,0x9081,0x9080,0x908a,0x9089,0x908f,0x90a8,
-0x90af,0x90b1,0x90b5,0x90e2,0x90e4,0x6248,0x90db,0x9102,
-0x9112,0x9119,0x9132,0x9130,0x914a,0x9156,0x9158,0x9163,
-0x9165,0x9169,0x9173,0x9172,0x918b,0x9189,0x9182,0x91a2,
-0x91ab,0x91af,0x91aa,0x91b5,0x91b4,0x91ba,0x91c0,0x91c1,
-0x91c9,0x91cb,0x91d0,0x91d6,0x91df,0x91e1,0x91db,0x91fc,
-0x91f5,0x91f6,0x921e,0x91ff,0x9214,0x922c,0x9215,0x9211,
-0x925e,0x9257,0x9245,0x9249,0x9264,0x9248,0x9295,0x923f,
-0x924b,0x9250,0x929c,0x9296,0x9293,0x929b,0x925a,0x92cf,
-0x92b9,0x92b7,0x92e9,0x930f,0x92fa,0x9344,0x932e,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x9319,0x9322,0x931a,
-0x9323,0x933a,0x9335,0x933b,0x935c,0x9360,0x937c,0x936e,
-0x9356,0x93b0,0x93ac,0x93ad,0x9394,0x93b9,0x93d6,0x93d7,
-0x93e8,0x93e5,0x93d8,0x93c3,0x93dd,0x93d0,0x93c8,0x93e4,
-0x941a,0x9414,0x9413,0x9403,0x9407,0x9410,0x9436,0x942b,
-0x9435,0x9421,0x943a,0x9441,0x9452,0x9444,0x945b,0x9460,
-0x9462,0x945e,0x946a,0x9229,0x9470,0x9475,0x9477,0x947d,
-0x945a,0x947c,0x947e,0x9481,0x947f,0x9582,0x9587,0x958a,
-0x9594,0x9596,0x9598,0x9599,0x95a0,0x95a8,0x95a7,0x95ad,
-0x95bc,0x95bb,0x95b9,0x95be,0x95ca,0x6ff6,0x95c3,0x95cd,
-0x95cc,0x95d5,0x95d4,0x95d6,0x95dc,0x95e1,0x95e5,0x95e2,
-0x9621,0x9628,0x962e,0x962f,0x9642,0x964c,0x964f,0x964b,
-0x9677,0x965c,0x965e,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x965d,0x965f,0x9666,0x9672,0x966c,0x968d,0x9698,
-0x9695,0x9697,0x96aa,0x96a7,0x96b1,0x96b2,0x96b0,0x96b4,
-0x96b6,0x96b8,0x96b9,0x96ce,0x96cb,0x96c9,0x96cd,0x894d,
-0x96dc,0x970d,0x96d5,0x96f9,0x9704,0x9706,0x9708,0x9713,
-0x970e,0x9711,0x970f,0x9716,0x9719,0x9724,0x972a,0x9730,
-0x9739,0x973d,0x973e,0x9744,0x9746,0x9748,0x9742,0x9749,
-0x975c,0x9760,0x9764,0x9766,0x9768,0x52d2,0x976b,0x9771,
-0x9779,0x9785,0x977c,0x9781,0x977a,0x9786,0x978b,0x978f,
-0x9790,0x979c,0x97a8,0x97a6,0x97a3,0x97b3,0x97b4,0x97c3,
-0x97c6,0x97c8,0x97cb,0x97dc,0x97ed,0x9f4f,0x97f2,0x7adf,
-0x97f6,0x97f5,0x980f,0x980c,0x9838,0x9824,0x9821,0x9837,
-0x983d,0x9846,0x984f,0x984b,0x986b,0x986f,0x9870,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x9871,0x9874,0x9873,
-0x98aa,0x98af,0x98b1,0x98b6,0x98c4,0x98c3,0x98c6,0x98e9,
-0x98eb,0x9903,0x9909,0x9912,0x9914,0x9918,0x9921,0x991d,
-0x991e,0x9924,0x9920,0x992c,0x992e,0x993d,0x993e,0x9942,
-0x9949,0x9945,0x9950,0x994b,0x9951,0x9952,0x994c,0x9955,
-0x9997,0x9998,0x99a5,0x99ad,0x99ae,0x99bc,0x99df,0x99db,
-0x99dd,0x99d8,0x99d1,0x99ed,0x99ee,0x99f1,0x99f2,0x99fb,
-0x99f8,0x9a01,0x9a0f,0x9a05,0x99e2,0x9a19,0x9a2b,0x9a37,
-0x9a45,0x9a42,0x9a40,0x9a43,0x9a3e,0x9a55,0x9a4d,0x9a5b,
-0x9a57,0x9a5f,0x9a62,0x9a65,0x9a64,0x9a69,0x9a6b,0x9a6a,
-0x9aad,0x9ab0,0x9abc,0x9ac0,0x9acf,0x9ad1,0x9ad3,0x9ad4,
-0x9ade,0x9adf,0x9ae2,0x9ae3,0x9ae6,0x9aef,0x9aeb,0x9aee,
-0x9af4,0x9af1,0x9af7,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x9afb,0x9b06,0x9b18,0x9b1a,0x9b1f,0x9b22,0x9b23,
-0x9b25,0x9b27,0x9b28,0x9b29,0x9b2a,0x9b2e,0x9b2f,0x9b32,
-0x9b44,0x9b43,0x9b4f,0x9b4d,0x9b4e,0x9b51,0x9b58,0x9b74,
-0x9b93,0x9b83,0x9b91,0x9b96,0x9b97,0x9b9f,0x9ba0,0x9ba8,
-0x9bb4,0x9bc0,0x9bca,0x9bb9,0x9bc6,0x9bcf,0x9bd1,0x9bd2,
-0x9be3,0x9be2,0x9be4,0x9bd4,0x9be1,0x9c3a,0x9bf2,0x9bf1,
-0x9bf0,0x9c15,0x9c14,0x9c09,0x9c13,0x9c0c,0x9c06,0x9c08,
-0x9c12,0x9c0a,0x9c04,0x9c2e,0x9c1b,0x9c25,0x9c24,0x9c21,
-0x9c30,0x9c47,0x9c32,0x9c46,0x9c3e,0x9c5a,0x9c60,0x9c67,
-0x9c76,0x9c78,0x9ce7,0x9cec,0x9cf0,0x9d09,0x9d08,0x9ceb,
-0x9d03,0x9d06,0x9d2a,0x9d26,0x9daf,0x9d23,0x9d1f,0x9d44,
-0x9d15,0x9d12,0x9d41,0x9d3f,0x9d3e,0x9d46,0x9d48,  NONE,
-  NONE,  NONE,  NONE,  NONE,  NONE,0x9d5d,0x9d5e,0x9d64,
-0x9d51,0x9d50,0x9d59,0x9d72,0x9d89,0x9d87,0x9dab,0x9d6f,
-0x9d7a,0x9d9a,0x9da4,0x9da9,0x9db2,0x9dc4,0x9dc1,0x9dbb,
-0x9db8,0x9dba,0x9dc6,0x9dcf,0x9dc2,0x9dd9,0x9dd3,0x9df8,
-0x9de6,0x9ded,0x9def,0x9dfd,0x9e1a,0x9e1b,0x9e1e,0x9e75,
-0x9e79,0x9e7d,0x9e81,0x9e88,0x9e8b,0x9e8c,0x9e92,0x9e95,
-0x9e91,0x9e9d,0x9ea5,0x9ea9,0x9eb8,0x9eaa,0x9ead,0x9761,
-0x9ecc,0x9ece,0x9ecf,0x9ed0,0x9ed4,0x9edc,0x9ede,0x9edd,
-0x9ee0,0x9ee5,0x9ee8,0x9eef,0x9ef4,0x9ef6,0x9ef7,0x9ef9,
-0x9efb,0x9efc,0x9efd,0x9f07,0x9f08,0x76b7,0x9f15,0x9f21,
-0x9f2c,0x9f3e,0x9f4a,0x9f52,0x9f54,0x9f63,0x9f5f,0x9f60,
-0x9f61,0x9f66,0x9f67,0x9f6c,0x9f6a,0x9f77,0x9f72,0x9f76,
-0x9f95,0x9f9c,0x9fa0,  NONE,  NONE,  NONE,  NONE,  NONE,
-  NONE,0x582f,0x69c7,0x9059,0x7464,0x51dc,0x7199,
-};

+ 0 - 123
sys/src/cmd/dict/kuten.h

@@ -1,123 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-/*
-	following astonishing goo courtesy of kogure.
-*/
-/*
- * MicroSoft Kanji Encoding (SJIS) Transformation
- */
-
-/*
- * void
- * J2S(unsigned char *_h, unsigned char *_l)
- *	JIS X 208 to MS kanji transformation.
- *
- * Calling/Exit State:
- *	_h and _l should be in their valid range.
- *	No return value.
- */
-#define J2S(_h, _l) { \
-	/* lower: 21-7e >> 40-9d,9e-fb >> 40-7e,(skip 7f),80-fc */ \
-	if (((_l) += (((_h)-- % 2) ? 0x1f : 0x7d)) > 0x7e) (_l)++; \
-	/* upper: 21-7e >> 81-af >> 81-9f,(skip a0-df),e0-ef */ \
-	if (((_h) = ((_h) / 2 + 0x71)) > 0x9f) (_h) += 0x40; \
-}
-
-/*
- * void
- * S2J(unsigned char *_h, unsigned char *_l)
- *	MS kanji to JIS X 208 transformation.
- *
- * Calling/Exit State:
- *	_h and _l should be in valid range.
- *	No return value.
- */
-#define S2J(_h, _l) { \
-	/* lower: 40-7e,80-fc >> 21-5f,61-dd >> 21-7e,7f-dc */ \
-	if (((_l) -= 0x1f) > 0x60) (_l)--; \
-	/* upper: 81-9f,e0-ef >> 00-1e,5f-6e >> 00-2e >> 21-7d */ \
-	if (((_h) -= 0x81) > 0x5e) (_h) -= 0x40; (_h) *= 2, (_h) += 0x21; \
-	/* upper: ,21-7d >> ,22-7e ; lower: ,7f-dc >> ,21-7e */ \
-	if ((_l) > 0x7e) (_h)++, (_l) -= 0x5e; \
-}
-
-/*
- * int
- * ISJKANA(const unsigned char *_b)
- *	Tests given byte is in the range of JIS X 0201 katakana.
- *
- * Calling/Exit State:
- *	Returns 1 if it is, or 0 otherwise.
- */
-#define	ISJKANA(_b)	(0xa0 <= (_b) && (_b) < 0xe0)
-
-/*
- * int
- * CANS2JH(const unsigned char *_h)
- *	Tests given byte is in the range of valid first byte of MS
- *	kanji code; either acts as a subroutine of CANS2J() macro
- *	or can be used to parse MS kanji encoded strings.
- *
- * Calling/Exit State:
- *	Returns 1 if it is, or 0 otherwise.
- */
-#define CANS2JH(_h)	((0x81 <= (_h) && (_h) < 0xf0) && !ISJKANA(_h))
-
-/*
- * int
- * CANS2JL(const unsigned char *_l)
- *	Tests given byte is in the range of valid second byte of MS
- *	kanji code; acts as a subroutine of CANS2J() macro.
- *
- * Calling/Exit State:
- *	Returns 1 if it is, or 0 otherwise.
- */
-#define CANS2JL(_l)	(0x40 <= (_l) && (_l) < 0xfd && (_l) != 0x7f)
-
-/*
- * int
- * CANS2J(const unsigned char *_h, const unsinged char *_l)
- *	Tests given bytes form a MS kanji code point which can be
- *	transformed to a valid JIS X 208 code point.
- *
- * Calling/Exit State:
- *	Returns 1 if they are, or 0 otherwise.
- */
-#define CANS2J(_h, _l)  (CANS2JH(_h) && CANS2JL(_l))
-
-/*
- * int
- * CANJ2SB(const unsigned char *_b)
- *	Tests given bytes is in the range of valid 94 graphic
- *	character set; acts as a subroutine of CANJ2S() macro.
- *
- * Calling/Exit State:
- *	Returns 1 if it is, or 0 otherwise.
- */
-#define CANJ2SB(_b)	(0x21 <= (_b) && (_b) < 0x7f)
-
-/*
- * int
- * CANJ2S(const unsigned char *_h, const unsigned char *_l)
- *	Tests given bytes form valid JIS X 208 code points
- *	(which can be transformed to MS kanji).
- *
- * Calling/Exit State:
- *	Returns 1 if they are, or 0 otherwise.
- */
-#define CANJ2S(_h, _l)	(CANJ2SB(_h) && CANJ2SB(_l))
-
-#define		JIS208MAX	8407
-#define		GB2312MAX	8795
-#define		BIG5MAX		13973
-
-extern Rune tabjis208[JIS208MAX];	/* runes indexed by kuten */
-extern Rune tabgb2312[GB2312MAX];
-extern Rune tabbig5[BIG5MAX];

+ 0 - 23
sys/src/cmd/dict/mkfile

@@ -1,23 +0,0 @@
-</$objtype/mkfile
-
-TARG=dict
-LFILES=oed.$O ahd.$O pcollins.$O pcollinsg.$O movie.$O slang.$O robert.$O\
-	world.$O jis208.$O gb2312.$O thesaurus.$O simple.$O pgw.$O roget.$O
-
-OFILES=dict.$O\
-	$LFILES\
-	utils.$O
-
-HFILES=dict.h kuten.h
-
-BIN=/$objtype/bin
-
-UPDATE=\
-	mkfile\
-	$HFILES\
-	${OFILES:%.$O=%.c}\
-
-</sys/src/cmd/mkone
-
-mkindex: mkindex.$O $LFILES utils.$O
-	$LD $LDFLAGS -o $target $prereq

+ 0 - 115
sys/src/cmd/dict/mkindex.c

@@ -1,115 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-/*
- * Use this to start making an index for a new dictionary.
- * Get the dictionary-specific nextoff and printentry(_,'h')
- * commands working, add a record to the dicts[] array below,
- * and run this program to get a list of offset,headword
- * pairs
- */
-Biobuf	boutbuf;
-Biobuf	*bdict;
-Biobuf	*bout = &boutbuf;
-int	linelen;
-int	breaklen = 2000;
-int	outinhibit;
-int	debug;
-
-Dict	*dict;	/* current dictionary */
-
-Entry	getentry(int32_t);
-
-void
-main(int argc, char **argv)
-{
-	int i;
-	long a, ae;
-	char *p;
-	Entry e;
-
-	Binit(&boutbuf, 1, OWRITE);
-	dict = &dicts[0];
-	ARGBEGIN {
-		case 'd':
-			p = ARGF();
-			dict = 0;
-			if(p) {
-				for(i=0; dicts[i].name; i++)
-					if(strcmp(p, dicts[i].name)==0) {
-						dict = &dicts[i];
-						break;
-					}
-			}
-			if(!dict) {
-				err("unknown dictionary: %s", p);
-				exits("nodict");
-			}
-			break;
-		case 'D':
-			debug++;
-			break;
-	ARGEND }
-	USED(argc,argv);
-	bdict = Bopen(dict->path, OREAD);
-	ae = Bseek(bdict, 0, 2);
-	if(!bdict) {
-		err("can't open dictionary %s", dict->path);
-		exits("nodict");
-	}
-	for(a = 0; a < ae; a = (*dict->nextoff)(a+1)) {
-		linelen = 0;
-		e = getentry(a);
-		Bprint(bout, "%ld\t", a);
-		linelen = 4;	/* only has to be approx right */
-		(*dict->printentry)(e, 'h');
-	}
-	exits(0);
-}
-
-Entry
-getentry(int32_t b)
-{
-	int32_t e, n, dtop;
-	static Entry ans;
-	static int anslen = 0;
-
-	e = (*dict->nextoff)(b+1);
-	ans.doff = b;
-	if(e < 0) {
-		dtop = Bseek(bdict, 0L, 2);
-		if(b < dtop) {
-			e = dtop;
-		} else {
-			err("couldn't seek to entry");
-			ans.start = 0;
-			ans.end = 0;
-		}
-	}
-	n = e-b;
-	if(n) {
-		if(n > anslen) {
-			ans.start = realloc(ans.start, n);
-			if(!ans.start) {
-				err("out of memory");
-				exits("nomem");
-			}
-			anslen = n;
-		}
-		Bseek(bdict, b, 0);
-		n = Bread(bdict, ans.start, n);
-		ans.end = ans.start + n;
-	}
-	return ans;
-}

+ 0 - 23
sys/src/cmd/dict/mkroget

@@ -1,23 +0,0 @@
-#!/bin/rc
-
-rtf2txt roget-body.rtf |
-	sed '
-		1,12d
-		/^100. /{
-			N
-			s/\n//
-			p
-		}
-		/^388a. /{
-			N
-			s/\n//
-			p
-		}
-	' > /lib/dict/roget
-
-mkindex -d roget | 
-	sort -u -t'	' +0f -1 +0 -1 +1n -2 |
-	sed '
-		s/[ 	]+$//g
-		s/ 	/	/g
-	' > /lib/dict/rogetindex

+ 0 - 333
sys/src/cmd/dict/movie.c

@@ -1,333 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-/* Possible tags */
-enum {
-	BEG,	/* beginning of entry */
-	AB,	/* abstract */
-	AN,	/* database serial number */
-	AS,	/* author (one at a time) */
-	AU,	/* all authors */
-	AW,	/* award_awardee */
-	BW,	/* bw or c */
-	CA,	/* cast: character_actor */
-	CN,	/* cinematography */
-	CO,	/* country */
-	CR,	/* miscellaneous job_name */
-	DE,	/* topic keyword */
-	DR,	/* director */
-	ED,	/* editor */
-	MP,	/* MPAA rating (R, PG, etc.) */
-	NT,	/* note */
-	PR,	/* producer and for ...*/
-	PS,	/* producer (repeats info in PR) */
-	RA,	/* rating (letter) */
-	RD,	/* release date */
-	RT,	/* running time */
-	RV,	/* review citation */
-	ST,	/* production or release company (repeats info in PR) */
-	TI,	/* title[; original foreign title] */
-	TX,	/* paragraph of descriptive text */
-	VD,	/* video information (format_time_company; or "Not Avail.") */
-	NTAG	/* number of tags */
-};
-
-/* Assoc tables must be sorted on first field */
-
-static char *tagtab[] = {
-[BEG]	"$$",
-[AB]	"AB",
-[AN]	"AN",
-[AS]	"AS",
-[AU]	"AU",
-[AW]	"AW",
-[BW]	"BW",
-[CA]	"CA",
-[CN]	"CN",
-[CO]	"CO",
-[CR]	"CR",
-[DE]	"DE",
-[DR]	"DR",
-[ED]	"ED",
-[MP]	"MP",
-[NT]	"NT",
-[PR]	"PR",
-[PS]	"PS",
-[RA]	"RA",
-[RD]	"RD",
-[RT]	"RT",
-[RV]	"RV",
-[ST]	"ST",
-[TI]	"TI",
-[TX]	"TX",
-[VD]	"VD",
-};
-
-static char	*mget(int, char *, char *, char **);
-static void	moutall(int, char *, char *);
-static void	moutall2(int, char *, char *);
-
-void
-movieprintentry(Entry ent, int cmd)
-{
-	char *p, *e, *ps, *pe, *pn;
-	int n;
-
-	ps = ent.start;
-	pe = ent.end;
-	if(cmd == 'r') {
-		Bwrite(bout, ps, pe-ps);
-		return;
-	}
-	p = mget(TI, ps, pe, &e);
-	if(p) {
-		outpiece(p, e);
-		outnl(0);
-	}
-	if(cmd == 'h')
-		return;
-	outnl(2);
-	n = 0;
-	p = mget(RD, ps, pe, &e);
-	if(p) {
-		outchars("Released: ");
-		outpiece(p, e);
-		n++;
-	}
-	p = mget(CO, ps, pe, &e);
-	if(p) {
-		if(n)
-			outchars(", ");
-		outpiece(p, e);
-		n++;
-	}
-	p = mget(RT, ps, pe, &e);
-	if(p) {
-		if(n)
-			outchars(", ");
-		outchars("Running time: ");
-		outpiece(p, e);
-		n++;
-	}
-	p = mget(MP, ps, pe, &e);
-	if(p) {
-		if(n)
-			outchars(", ");
-		outpiece(p, e);
-		n++;
-	}
-	p = mget(BW, ps, pe, &e);
-	if(p) {
-		if(n)
-			outchars(", ");
-		if(*p == 'c' || *p == 'C')
-			outchars("Color");
-		else
-			outchars("B&W");
-		n++;
-	}
-	if(n) {
-		outchar('.');
-		outnl(1);
-	}
-	p = mget(VD, ps, pe, &e);
-	if(p) {
-		outchars("Video: ");
-		outpiece(p, e);
-		outnl(1);
-	}
-	p = mget(AU, ps, pe, &e);
-	if(p) {
-		outchars("By: ");
-		moutall2(AU, ps, pe);
-		outnl(1);
-	}
-	p = mget(DR, ps, pe, &e);
-	if(p) {
-		outchars("Director: ");
-		outpiece(p, e);
-		outnl(1);
-	}
-	p = mget(PR, ps, pe, &e);
-	if(p) {
-		outchars("Producer: ");
-		outpiece(p, e);
-		outnl(1);
-	}
-	p = mget(CN, ps, pe, &e);
-	if(p) {
-		outchars("Cinematograpy: ");
-		outpiece(p, e);
-		outnl(1);
-	}
-	p = mget(CR, ps, pe, &e);
-	if(p) {
-		outchars("Other Credits: ");
-		moutall2(CR, ps, pe);
-	}
-	outnl(2);
-	p = mget(CA, ps, pe, &e);
-	if(p) {
-		outchars("Cast: ");
-		moutall2(CA, ps, pe);
-	}
-	outnl(2);
-	p = mget(AW, ps, pe, &e);
-	if(p) {
-		outchars("Awards: ");
-		moutall2(AW, ps, pe);
-		outnl(2);
-	}
-	p = mget(NT, ps, pe, &e);
-	if(p) {
-		outpiece(p, e);
-		outnl(2);
-	}
-	p = mget(AB, ps, pe, &e);
-	if(p) {
-		outpiece(p, e);
-		outnl(2);
-	}
-	pn = ps;
-	n = 0;
-	while((p = mget(TX, pn, pe, &pn)) != 0) {
-		if(n++)
-			outnl(1);
-		outpiece(p, pn);
-	}
-	outnl(0);
-}
-
-int32_t
-movienextoff(int32_t fromoff)
-{
-	int32_t a;
-	char *p;
-
-	a = Bseek(bdict, fromoff, 0);
-	if(a < 0)
-		return -1;
-	for(;;) {
-		p = Brdline(bdict, '\n');
-		if(!p)
-			break;
-		if(p[0] == '$' && p[1] == '$')
-			return (Boffset(bdict)-Blinelen(bdict));
-	}
-	return -1;
-}
-
-void
-movieprintkey(void)
-{
-	Bprint(bout, "No key\n");
-}
-
-/*
- * write a comma-separated list of all tag values between b and e
- */
-static void
-moutall(int tag, char *b, char *e)
-{
-	char *p, *pn;
-	int n;
-
-	n = 0;
-	pn = b;
-	while((p = mget(tag, pn, e, &pn)) != 0) {
-		if(n++)
-			outchars(", ");
-		outpiece(p, pn);
-	}
-}
-
-/*
- * like moutall, but values are expected to have form:
- *    field1_field2
- * and we are to output 'field2 (field1)' for each
- * (sometimes field1 has underscores, so search from end)
- */
-static void
-moutall2(int tag, char *b, char *e)
-{
-	char *p, *pn, *us, *q;
-	int n;
-
-	n = 0;
-	pn = b;
-	while((p = mget(tag, pn, e, &pn)) != 0) {
-		if(n++)
-			outchars(", ");
-		us = 0;
-		for(q = pn-1; q >= p; q--)
-			if(*q == '_') {
-				us = q;
-				break;
-			}
-		if(us) {
-			/*
-			 * Hack to fix cast list Himself/Herself
-			 */
-			if(strncmp(us+1, "Himself", 7) == 0 ||
-			   strncmp(us+1, "Herself", 7) == 0) {
-				outpiece(p, us);
-				outchars(" (");
-				outpiece(us+1, pn);
-				outchar(')');
-			} else {
-				outpiece(us+1, pn);
-				outchars(" (");
-				outpiece(p, us);
-				outchar(')');
-			}
-		} else {
-			outpiece(p, pn);
-		}
-	}
-}
-
-/*
- * Starting from b, find next line beginning with tagtab[tag].
- * Don't go past e, but assume *e==0.
- * Return pointer to beginning of value (after tag), and set
- * eptr to point at newline that ends the value
- */
-static char *
-mget(int tag, char *b, char *e, char **eptr)
-{
-	char *p, *t, *ans;
-
-	if(tag < 0 || tag >= NTAG)
-		return 0;
-	t = tagtab[tag];
-	ans = 0;
-	for(p = b;;) {
-		p = strchr(p, '\n');
-		if(!p || ++p >= e) {
-			if(ans)
-				*eptr = e-1;
-			break;
-		}
-		if(!ans) {
-			if(p[0] == t[0] && p[1] == t[1])
-				ans = p+3;
-		} else {
-			if(p[0] != ' ') {
-				*eptr = p-1;
-				break;
-			}
-		}
-	}
-	return ans;
-}

+ 0 - 1434
sys/src/cmd/dict/oed.c

@@ -1,1434 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-enum {
-	Buflen=1000,
-	Maxaux=5,
-};
-
-/* Possible tags */
-enum {
-	A,		/* author in quote (small caps) */
-	B,		/* bold */
-	Ba,		/* author inside bib */
-	Bch,		/* builtup chem component */
-	Bib,		/* surrounds word 'in' for bibliographic ref */
-	Bl,		/* bold */
-	Bo,		/* bond over */
-	Bu,		/* bond under */
-	Cb,		/* ? block of stuff (indent) */
-	Cf,		/* cross ref to another entry (italics) */
-	Chem,		/* chemistry formula */
-	Co,		/* over (preceding sum, integral, etc.) */
-	Col,		/* column of table (aux just may be r) */
-	Cu,		/* under (preceding sum, integral, etc.) */
-	Dat,		/* date */
-	Db,		/* def block? indent */
-	Dn,		/* denominator of fraction */
-	E,		/* main entry */
-	Ed,		/* editor's comments (in [...]) */
-	Etym,		/* etymology (in [...]) */
-	Fq,		/* frequency count (superscript) */
-	Form,		/* formula */
-	Fr,		/* fraction (contains <nu>, then <dn>) */
-	Gk,		/* greek (transliteration) */
-	Gr,		/* grammar? (e.g., around 'pa.' in 'pa. pple.') */
-	Hg,		/* headword group */
-	Hm,		/* homonym (superscript) */
-	Hw,		/* headword (bold) */
-	I,		/* italics */
-	Il,		/* italic list? */
-	In,		/* inferior (subscript) */
-	L,		/* row of col of table */
-	La,		/* status or usage label (italic) */
-	Lc,		/* chapter/verse sort of thing for works */
-	N,		/* note (smaller type) */
-	Nu,		/* numerator of fraction */
-	Ov,		/* needs overline */
-	P,		/* paragraph (indent) */
-	Ph,		/* pronunciation (transliteration) */
-	Pi,		/* pile (frac without line) */
-	Pqp,		/* subblock of quote */
-	Pr,		/* pronunciation (in (...)) */
-	Ps,		/* position (e.g., adv.) (italic) */
-	Pt,		/* part (in lc) */
-	Q,		/* quote in quote block */
-	Qd,		/* quote date (bold) */
-	Qig,		/* quote number (greek) */
-	Qla,		/* status or usage label in quote (italic) */
-	Qp,		/* quote block (small type, indent) */
-	Qsn,		/* quote number */
-	Qt,		/* quote words */
-	R,		/* roman type style */
-	Rx,		/* relative cross reference (e.g., next) */
-	S,		/* another form? (italic) */
-	S0,		/* sense (sometimes surrounds several sx's) */
-	S1,		/* sense (aux num: indented bold letter) */
-	S2,		/* sense (aux num: indented bold capital rom num) */
-	S3,		/* sense (aux num: indented number of asterisks) */
-	S4,		/* sense (aux num: indented bold number) */
-	S5,		/* sense (aux num: indented number of asterisks) */
-	S6,		/* subsense (aux num: bold letter) */
-	S7a,		/* subsense (aux num: letter) */
-	S7n,		/* subsense (aux num: roman numeral) */
-	Sc,		/* small caps */
-	Sgk,		/* subsense (aux num: transliterated greek) */
-	Sn,		/* sense of subdefinition (aux num: roman letter) */
-	Ss,		/* sans serif */
-	Ssb,		/* sans serif bold */
-	Ssi,		/* sans serif italic */
-	Su,		/* superior (superscript) */
-	Sub,		/* subdefinition */
-	Table,		/* table (aux cols=number of columns) */
-	Tt,		/* title? (italics) */
-	Vd,		/* numeric label for variant form */
-	Ve,		/* variant entry */
-	Vf,		/* variant form (light bold) */
-	Vfl,		/* list of vf's (starts with Also or Forms) */
-	W,		/* work (e.g., Beowulf) (italics) */
-	X,		/* cross reference to main word (small caps) */
-	Xd,		/* cross reference to quotation by date */
-	Xi,		/* internal cross reference ? (italic) */
-	Xid,		/* cross reference identifer, in quote ? */
-	Xs,		/* cross reference sense (lower number) */
-	Xr,		/* list of x's */
-	Ntag		/* end of tags */
-};
-
-/* Assoc tables must be sorted on first field */
-
-static Assoc tagtab[] = {
-	{"a",		A},
-	{"b",		B},
-	{"ba",		Ba},
-	{"bch",		Bch},
-	{"bib",		Bib},
-	{"bl",		Bl},
-	{"bo",		Bo},
-	{"bu",		Bu},
-	{"cb",		Cb},
-	{"cf",		Cf},
-	{"chem",	Chem},
-	{"co",		Co},
-	{"col",		Col},
-	{"cu",		Cu},
-	{"dat",		Dat},
-	{"db",		Db},
-	{"dn",		Dn},
-	{"e",		E},
-	{"ed",		Ed},
-	{"et",		Etym},
-	{"etym",	Etym},
-	{"form",	Form},
-	{"fq",		Fq},
-	{"fr",		Fr},
-	{"frac",	Fr},
-	{"gk",		Gk},
-	{"gr",		Gr},
-	{"hg",		Hg},
-	{"hm",		Hm},
-	{"hw",		Hw},
-	{"i",		I},
-	{"il",		Il},
-	{"in",		In},
-	{"l",		L},
-	{"la",		La},
-	{"lc",		Lc},
-	{"n",		N},
-	{"nu",		Nu},
-	{"ov",		Ov},
-	{"p",		P},
-	{"ph",		Ph},
-	{"pi",		Pi},
-	{"pqp",		Pqp},
-	{"pr",		Pr},
-	{"ps",		Ps},
-	{"pt",		Pt},
-	{"q",		Q},
-	{"qd",		Qd},
-	{"qig",		Qig},
-	{"qla",		Qla},
-	{"qp",		Qp},
-	{"qsn",		Qsn},
-	{"qt",		Qt},
-	{"r",		R},
-	{"rx",		Rx},
-	{"s",		S},
-	{"s0",		S0},
-	{"s1",		S1},
-	{"s2",		S2},
-	{"s3",		S3},
-	{"s4",		S4},
-	{"s5",		S5},
-	{"s6",		S6},
-	{"s7a",		S7a},
-	{"s7n",		S7n},
-	{"sc",		Sc},
-	{"sgk",		Sgk},
-	{"sn",		Sn},
-	{"ss",		Ss,},
-	{"ssb",		Ssb},
-	{"ssi",		Ssi},
-	{"su",		Su},
-	{"sub",		Sub},
-	{"table",	Table},
-	{"tt",		Tt},
-	{"vd",		Vd},
-	{"ve",		Ve},
-	{"vf",		Vf},
-	{"vfl",		Vfl},
-	{"w",		W},
-	{"x",		X},
-	{"xd",		Xd},
-	{"xi",		Xi},
-	{"xid",		Xid},
-	{"xr",		Xr},
-	{"xs",		Xs},
-};
-
-/* Possible tag auxilliary info */
-enum {
-	Cols,		/* number of columns in a table */
-	Num,		/* letter or number, for a sense */
-	St,		/* status (e.g., obs) */
-	Naux
-};
-
-static Assoc auxtab[] = {
-	{"cols",	Cols},
-	{"num",		Num},
-	{"st",		St}
-};
-
-static Assoc spectab[] = {
-	{"3on4",	L'¾'},
-	{"Aacu",	L'Á'},
-	{"Aang",	L'Å'},
-	{"Abarab",	L'Ā'},
-	{"Acirc",	L'Â'},
-	{"Ae",		L'Æ'},
-	{"Agrave",	L'À'},
-	{"Alpha",	L'Α'},
-	{"Amac",	L'Ā'},
-	{"Asg",		L'Ʒ'},		/* Unicyle. Cf "Sake" */
-	{"Auml",	L'Ä'},
-	{"Beta",	L'Β'},
-	{"Cced",	L'Ç'},
-	{"Chacek",	L'Č'},
-	{"Chi",		L'Χ'},
-	{"Chirho",	L'☧'},		/* Chi Rho U+2627 */
-	{"Csigma",	L'Ϛ'},
-	{"Delta",	L'Δ'},
-	{"Eacu",	L'É'},
-	{"Ecirc",	L'Ê'},
-	{"Edh",		L'Ð'},
-	{"Epsilon",	L'Ε'},
-	{"Eta",		L'Η'},
-	{"Gamma",	L'Γ'},
-	{"Iacu",	L'Í'},
-	{"Icirc",	L'Î'},
-	{"Imac",	L'Ī'},
-	{"Integ",	L'∫'},
-	{"Iota",	L'Ι'},
-	{"Kappa",	L'Κ'},
-	{"Koppa",	L'Ϟ'},
-	{"Lambda",	L'Λ'},
-	{"Lbar",	L'Ł'},
-	{"Mu",		L'Μ'},
-	{"Naira",	L'N'},		/* should have bar through */
-	{"Nplus",	L'N'},		/* should have plus above */
-	{"Ntilde",	L'Ñ'},
-	{"Nu",		L'Ν'},
-	{"Oacu",	L'Ó'},
-	{"Obar",	L'Ø'},
-	{"Ocirc",	L'Ô'},
-	{"Oe",		L'Œ'},
-	{"Omega",	L'Ω'},
-	{"Omicron",	L'Ο'},
-	{"Ouml",	L'Ö'},
-	{"Phi",		L'Φ'},
-	{"Pi",		L'Π'},
-	{"Psi",		L'Ψ'},
-	{"Rho",		L'Ρ'},
-	{"Sacu",	L'Ś'},
-	{"Sigma",	L'Σ'},
-	{"Summ",	L'∑'},
-	{"Tau",		L'Τ'},
-	{"Th",		L'Þ'},
-	{"Theta",	L'Θ'},
-	{"Tse",		L'Ц'},
-	{"Uacu",	L'Ú'},
-	{"Ucirc",	L'Û'},
-	{"Upsilon",	L'Υ'},
-	{"Uuml",	L'Ü'},
-	{"Wyn",		L'ƿ'},		/* wynn U+01BF */
-	{"Xi",		L'Ξ'},
-	{"Ygh",		L'Ʒ'},		/* Yogh	U+01B7 */
-	{"Zeta",	L'Ζ'},
-	{"Zh",		L'Ʒ'},		/* looks like Yogh. Cf "Sake" */
-	{"a",		L'a'},		/* ante */
-	{"aacu",	L'á'},
-	{"aang",	L'å'},
-	{"aasper",	MAAS},
-	{"abreve",	L'ă'},
-	{"acirc",	L'â'},
-	{"acu",		LACU},
-	{"ae",		L'æ'},
-	{"agrave",	L'à'},
-	{"ahook",	L'ą'},
-	{"alenis",	MALN},
-	{"alpha",	L'α'},
-	{"amac",	L'ā'},
-	{"amp",		L'&'},
-	{"and",		MAND},
-	{"ang",		LRNG},
-	{"angle",	L'∠'},
-	{"ankh",	L'☥'},		/* ankh U+2625 */
-	{"ante",	L'a'},		/* before (year) */
-	{"aonq",	MAOQ},
-	{"appreq",	L'≃'},
-	{"aquar",	L'♒'},
-	{"arDadfull",	L'ض'},		/* Dad U+0636 */
-	{"arHa",	L'ح'},		/* haa U+062D */
-	{"arTa",	L'ت'},		/* taa U+062A */
-	{"arain",	L'ع'},		/* ain U+0639 */
-	{"arainfull",	L'ع'},		/* ain U+0639 */
-	{"aralif",	L'ا'},		/* alef U+0627 */
-	{"arba",	L'ب'},		/* baa U+0628 */
-	{"arha",	L'ه'},		/* ha U+0647 */
-	{"aries",	L'♈'},
-	{"arnun",	L'ن'},		/* noon U+0646 */
-	{"arnunfull",	L'ن'},		/* noon U+0646 */
-	{"arpa",	L'ه'},		/* ha U+0647 */
-	{"arqoph",	L'ق'},		/* qaf U+0642 */
-	{"arshinfull",	L'ش'},		/* sheen U+0634 */
-	{"arta",	L'ت'},		/* taa U+062A */
-	{"artafull",	L'ت'},		/* taa U+062A */
-	{"artha",	L'ث'},		/* thaa U+062B */
-	{"arwaw",	L'و'},		/* waw U+0648 */
-	{"arya",	L'ي'},		/* ya U+064A */
-	{"aryafull",	L'ي'},		/* ya U+064A */
-	{"arzero",	L'٠'},		/* indic zero U+0660 */
-	{"asg",		L'ʒ'},		/* unicycle character. Cf "hallow" */
-	{"asper",	LASP},
-	{"assert",	L'⊢'},
-	{"astm",	L'⁂'},		/* asterism: should be upside down */
-	{"at",		L'@'},
-	{"atilde",	L'ã'},
-	{"auml",	L'ä'},
-	{"ayin",	L'ع'},		/* arabic ain U+0639 */
-	{"b1",		L'-'},		/* single bond */
-	{"b2",		L'='},		/* double bond */
-	{"b3",		L'≡'},		/* triple bond */
-	{"bbar",	L'ƀ'},		/* b with bar U+0180 */
-	{"beta",	L'β'},
-	{"bigobl",	L'/'},
-	{"blC",		L'C'},		/* should be black letter */
-	{"blJ",		L'J'},		/* should be black letter */
-	{"blU",		L'U'},		/* should be black letter */
-	{"blb",		L'b'},		/* should be black letter */
-	{"blozenge",	L'◊'},		/* U+25CA; should be black */
-	{"bly",		L'y'},		/* should be black letter */
-	{"bra",		MBRA},
-	{"brbl",	LBRB},
-	{"breve",	LBRV},
-	{"bslash",	L'\\'},
-	{"bsquare",	L'■'},		/* black square U+25A0 */
-	{"btril",	L'◀'},		/* U+25C0 */
-	{"btrir",	L'▶'},		/* U+25B6 */
-	{"c",		L'c'},		/* circa */
-	{"cab",		L'〉'},
-	{"cacu",	L'ć'},
-	{"canc",	L'♋'},
-	{"capr",	L'♑'},
-	{"caret",	L'^'},
-	{"cb",		L'}'},
-	{"cbigb",	L'}'},
-	{"cbigpren",	L')'},
-	{"cbigsb",	L']'},
-	{"cced",	L'ç'},
-	{"cdil",	LCED},
-	{"cdsb",	L'〛'},		/* ]] U+301b */
-	{"cent",	L'¢'},
-	{"chacek",	L'č'},
-	{"chi",		L'χ'},
-	{"circ",	LRNG},
-	{"circa",	L'c'},		/* about (year) */
-	{"circbl",	L'̥'},		/* ring below accent U+0325 */
-	{"circle",	L'○'},		/* U+25CB */
-	{"circledot",	L'⊙'},
-	{"click",	L'ʖ'},
-	{"club",	L'♣'},
-	{"comtime",	L'C'},
-	{"conj",	L'☌'},
-	{"cprt",	L'©'},
-	{"cq",		L'\''},
-	{"cqq",		L'”'},
-	{"cross",	L'✠'},		/* maltese cross U+2720 */
-	{"crotchet",	L'♩'},
-	{"csb",		L']'},
-	{"ctilde",	L'c'},		/* +tilde */
-	{"ctlig",	MLCT},
-	{"cyra",	L'а'},
-	{"cyre",	L'е'},
-	{"cyrhard",	L'ъ'},
-	{"cyrjat",	L'ѣ'},
-	{"cyrm",	L'м'},
-	{"cyrn",	L'н'},
-	{"cyrr",	L'р'},
-	{"cyrsoft",	L'ь'},
-	{"cyrt",	L'т'},
-	{"cyry",	L'ы'},
-	{"dag",		L'†'},
-	{"dbar",	L'đ'},
-	{"dblar",	L'⇋'},
-	{"dblgt",	L'≫'},
-	{"dbllt",	L'≪'},
-	{"dced",	L'd'},		/* +cedilla */
-	{"dd",		MDD},
-	{"ddag",	L'‡'},
-	{"ddd",		MDDD},
-	{"decr",	L'↓'},
-	{"deg",		L'°'},
-	{"dele",	L'd'},		/* should be dele */
-	{"delta",	L'δ'},
-	{"descnode",	L'☋'},		/* descending node U+260B */
-	{"diamond",	L'♢'},
-	{"digamma",	L'ϝ'},
-	{"div",		L'÷'},
-	{"dlessi",	L'ı'},
-	{"dlessj1",	L'j'},		/* should be dotless */
-	{"dlessj2",	L'j'},		/* should be dotless */
-	{"dlessj3",	L'j'},		/* should be dotless */
-	{"dollar",	L'$'},
-	{"dotab",	LDOT},
-	{"dotbl",	LDTB},
-	{"drachm",	L'ʒ'},
-	{"dubh",	L'-'},
-	{"eacu",	L'é'},
-	{"earth",	L'♁'},
-	{"easper",	MEAS},
-	{"ebreve",	L'ĕ'},
-	{"ecirc",	L'ê'},
-	{"edh",		L'ð'},
-	{"egrave",	L'è'},
-	{"ehacek",	L'ě'},
-	{"ehook",	L'ę'},
-	{"elem",	L'∊'},
-	{"elenis",	MELN},
-	{"em",		L'—'},
-	{"emac",	L'ē'},
-	{"emem",	MEMM},
-	{"en",		L'–'},
-	{"epsilon",	L'ε'},
-	{"equil",	L'⇋'},
-	{"ergo",	L'∴'},
-	{"es",		MES},
-	{"eszett",	L'ß'},
-	{"eta",		L'η'},
-	{"eth",		L'ð'},
-	{"euml",	L'ë'},
-	{"expon",	L'↑'},
-	{"fact",	L'!'},
-	{"fata",	L'ɑ'},
-	{"fatpara",	L'¶'},		/* should have fatter, filled in bowl */
-	{"female",	L'♀'},
-	{"ffilig",	MLFFI},
-	{"fflig",	MLFF},
-	{"ffllig",	MLFFL},
-	{"filig",	MLFI},
-	{"flat",	L'♭'},
-	{"fllig",	MLFL},
-	{"frE",		L'E'},		/* should be curly */
-	{"frL",		L'L'},		/* should be curly */
-	{"frR",		L'R'},		/* should be curly */
-	{"frakB",	L'B'},		/* should have fraktur style */
-	{"frakG",	L'G'},
-	{"frakH",	L'H'},
-	{"frakI",	L'I'},
-	{"frakM",	L'M'},
-	{"frakU",	L'U'},
-	{"frakX",	L'X'},
-	{"frakY",	L'Y'},
-	{"frakh",	L'h'},
-	{"frbl",	LFRB},
-	{"frown",	LFRN},
-	{"fs",		L' '},
-	{"fsigma",	L'ς'},
-	{"gAacu",	L'Á'},		/* should be Α+acute */
-	{"gaacu",	L'α'},		/* +acute */
-	{"gabreve",	L'α'},		/* +breve */
-	{"gafrown",	L'α'},		/* +frown */
-	{"gagrave",	L'α'},		/* +grave */
-	{"gamac",	L'α'},		/* +macron */
-	{"gamma",	L'γ'},
-	{"gauml",	L'α'},		/* +umlaut */
-	{"ge",		L'≧'},
-	{"geacu",	L'ε'},		/* +acute */
-	{"gegrave",	L'ε'},		/* +grave */
-	{"ghacu",	L'η'},		/* +acute */
-	{"ghfrown",	L'η'},		/* +frown */
-	{"ghgrave",	L'η'},		/* +grave */
-	{"ghmac",	L'η'},		/* +macron */
-	{"giacu",	L'ι'},		/* +acute */
-	{"gibreve",	L'ι'},		/* +breve */
-	{"gifrown",	L'ι'},		/* +frown */
-	{"gigrave",	L'ι'},		/* +grave */
-	{"gimac",	L'ι'},		/* +macron */
-	{"giuml",	L'ι'},		/* +umlaut */
-	{"glagjat",	L'ѧ'},
-	{"glots",	L'ˀ'},
-	{"goacu",	L'ο'},		/* +acute */
-	{"gobreve",	L'ο'},		/* +breve */
-	{"grave",	LGRV},
-	{"gt",		L'>'},
-	{"guacu",	L'υ'},		/* +acute */
-	{"gufrown",	L'υ'},		/* +frown */
-	{"gugrave",	L'υ'},		/* +grave */
-	{"gumac",	L'υ'},		/* +macron */
-	{"guuml",	L'υ'},		/* +umlaut */
-	{"gwacu",	L'ω'},		/* +acute */
-	{"gwfrown",	L'ω'},		/* +frown */
-	{"gwgrave",	L'ω'},		/* +grave */
-	{"hacek",	LHCK},
-	{"halft",	L'⌈'},
-	{"hash",	L'#'},
-	{"hasper",	MHAS},
-	{"hatpath",	L'ֲ'},		/* hataf patah U+05B2 */
-	{"hatqam",	L'ֳ'},		/* hataf qamats U+05B3 */
-	{"hatseg",	L'ֱ'},		/* hataf segol U+05B1 */
-	{"hbar",	L'ħ'},
-	{"heart",	L'♡'},
-	{"hebaleph",	L'א'},		/* aleph U+05D0 */
-	{"hebayin",	L'ע'},		/* ayin U+05E2 */
-	{"hebbet",	L'ב'},		/* bet U+05D1 */
-	{"hebbeth",	L'ב'},		/* bet U+05D1 */
-	{"hebcheth",	L'ח'},		/* bet U+05D7 */
-	{"hebdaleth",	L'ד'},		/* dalet U+05D3 */
-	{"hebgimel",	L'ג'},		/* gimel U+05D2 */
-	{"hebhe",	L'ה'},		/* he U+05D4 */
-	{"hebkaph",	L'כ'},		/* kaf U+05DB */
-	{"heblamed",	L'ל'},		/* lamed U+05DC */
-	{"hebmem",	L'מ'},		/* mem U+05DE */
-	{"hebnun",	L'נ'},		/* nun U+05E0 */
-	{"hebnunfin",	L'ן'},		/* final nun U+05DF */
-	{"hebpe",	L'פ'},		/* pe U+05E4 */
-	{"hebpedag",	L'ף'},		/* final pe? U+05E3 */
-	{"hebqoph",	L'ק'},		/* qof U+05E7 */
-	{"hebresh",	L'ר'},		/* resh U+05E8 */
-	{"hebshin",	L'ש'},		/* shin U+05E9 */
-	{"hebtav",	L'ת'},		/* tav U+05EA */
-	{"hebtsade",	L'צ'},		/* tsadi U+05E6 */
-	{"hebwaw",	L'ו'},		/* vav? U+05D5 */
-	{"hebyod",	L'י'},		/* yod U+05D9 */
-	{"hebzayin",	L'ז'},		/* zayin U+05D6 */
-	{"hgz",		L'ʒ'},		/* ??? Cf "alet" */
-	{"hireq",	L'ִ'},		/* U+05B4 */
-	{"hlenis",	MHLN},
-	{"hook",	LOGO},
-	{"horizE",	L'E'},		/* should be on side */
-	{"horizP",	L'P'},		/* should be on side */
-	{"horizS",	L'∽'},
-	{"horizT",	L'⊣'},
-	{"horizb",	L'{'},		/* should be underbrace */
-	{"ia",		L'α'},
-	{"iacu",	L'í'},
-	{"iasper",	MIAS},
-	{"ib",		L'β'},
-	{"ibar",	L'ɨ'},
-	{"ibreve",	L'ĭ'},
-	{"icirc",	L'î'},
-	{"id",		L'δ'},
-	{"ident",	L'≡'},
-	{"ie",		L'ε'},
-	{"ifilig",	MLFI},
-	{"ifflig",	MLFF},
-	{"ig",		L'γ'},
-	{"igrave",	L'ì'},
-	{"ih",		L'η'},
-	{"ii",		L'ι'},
-	{"ik",		L'κ'},
-	{"ilenis",	MILN},
-	{"imac",	L'ī'},
-	{"implies",	L'⇒'},
-	{"index",	L'☞'},
-	{"infin",	L'∞'},
-	{"integ",	L'∫'},
-	{"intsec",	L'∩'},
-	{"invpri",	L'ˏ'},
-	{"iota",	L'ι'},
-	{"iq",		L'ψ'},
-	{"istlig",	MLST},
-	{"isub",	L'ϵ'},		/* iota below accent */
-	{"iuml",	L'ï'},
-	{"iz",		L'ζ'},
-	{"jup",		L'♃'},
-	{"kappa",	L'κ'},
-	{"koppa",	L'ϟ'},
-	{"lambda",	L'λ'},
-	{"lar",		L'←'},
-	{"lbar",	L'ł'},
-	{"le",		L'≦'},
-	{"lenis",	LLEN},
-	{"leo",		L'♌'},
-	{"lhalfbr",	L'⌈'},
-	{"lhshoe",	L'⊃'},
-	{"libra",	L'♎'},
-	{"llswing",	MLLS},
-	{"lm",		L'ː'},
-	{"logicand",	L'∧'},
-	{"logicor",	L'∨'},
-	{"longs",	L'ʃ'},
-	{"lrar",	L'↔'},
-	{"lt",		L'<'},
-	{"ltappr",	L'≾'},
-	{"ltflat",	L'∠'},
-	{"lumlbl",	L'l'},		/* +umlaut below */
-	{"mac",		LMAC},
-	{"male",	L'♂'},
-	{"mc",		L'c'},		/* should be raised */
-	{"merc",	L'☿'},		/* mercury U+263F */
-	{"min",		L'−'},
-	{"moonfq",	L'☽'},		/* first quarter moon U+263D */
-	{"moonlq",	L'☾'},		/* last quarter moon U+263E */
-	{"msylab",	L'm'},		/* +sylab (ˌ) */
-	{"mu",		L'μ'},
-	{"nacu",	L'ń'},
-	{"natural",	L'♮'},
-	{"neq",		L'≠'},
-	{"nfacu",	L'′'},
-	{"nfasper",	L'ʽ'},
-	{"nfbreve",	L'˘'},
-	{"nfced",	L'¸'},
-	{"nfcirc",	L'ˆ'},
-	{"nffrown",	L'⌢'},
-	{"nfgra",	L'ˋ'},
-	{"nfhacek",	L'ˇ'},
-	{"nfmac",	L'¯'},
-	{"nftilde",	L'˜'},
-	{"nfuml",	L'¨'},
-	{"ng",		L'ŋ'},
-	{"not",		L'¬'},
-	{"notelem",	L'∉'},
-	{"ntilde",	L'ñ'},
-	{"nu",		L'ν'},
-	{"oab",		L'〈'},
-	{"oacu",	L'ó'},
-	{"oasper",	MOAS},
-	{"ob",		L'{'},
-	{"obar",	L'ø'},
-	{"obigb",	L'{'},		/* should be big */
-	{"obigpren",	L'('},
-	{"obigsb",	L'['},		/* should be big */
-	{"obreve",	L'ŏ'},
-	{"ocirc",	L'ô'},
-	{"odsb",	L'〚'},		/* [[ U+301A */
-	{"oe",		L'œ'},
-	{"oeamp",	L'&'},
-	{"ograve",	L'ò'},
-	{"ohook",	L'o'},		/* +hook */
-	{"olenis",	MOLN},
-	{"omac",	L'ō'},
-	{"omega",	L'ω'},
-	{"omicron",	L'ο'},
-	{"ope",		L'ɛ'},
-	{"opp",		L'☍'},
-	{"oq",		L'`'},
-	{"oqq",		L'“'},
-	{"or",		MOR},
-	{"osb",		L'['},
-	{"otilde",	L'õ'},
-	{"ouml",	L'ö'},
-	{"ounce",	L'℥'},		/* ounce U+2125 */
-	{"ovparen",	L'⌢'},		/* should be sideways ( */
-	{"p",		L'′'},
-	{"pa",		L'∂'},
-	{"page",	L'P'},
-	{"pall",	L'ʎ'},
-	{"paln",	L'ɲ'},
-	{"par",		PAR},
-	{"para",	L'¶'},
-	{"pbar",	L'p'},		/* +bar */
-	{"per",		L'℘'},		/* per U+2118 */
-	{"phi",		L'φ'},
-	{"phi2",	L'ϕ'},
-	{"pi",		L'π'},
-	{"pisces",	L'♓'},
-	{"planck",	L'ħ'},
-	{"plantinJ",	L'J'},		/* should be script */
-	{"pm",		L'±'},
-	{"pmil",	L'‰'},
-	{"pp",		L'″'},
-	{"ppp",		L'‴'},
-	{"prop",	L'∝'},
-	{"psi",		L'ψ'},
-	{"pstlg",	L'£'},
-	{"q",		L'?'},		/* should be raised */
-	{"qamets",	L'ֳ'},		/* U+05B3 */
-	{"quaver",	L'♪'},
-	{"rar",		L'→'},
-	{"rasper",	MRAS},
-	{"rdot",	L'·'},
-	{"recipe",	L'℞'},		/* U+211E */
-	{"reg",		L'®'},
-	{"revC",	L'Ɔ'},		/* open O U+0186 */
-	{"reva",	L'ɒ'},
-	{"revc",	L'ɔ'},
-	{"revope",	L'ɜ'},
-	{"revr",	L'ɹ'},
-	{"revsc",	L'˒'},		/* upside-down semicolon */
-	{"revv",	L'ʌ'},
-	{"rfa",		L'o'},		/* +hook (Cf "goal") */
-	{"rhacek",	L'ř'},
-	{"rhalfbr",	L'⌉'},
-	{"rho",		L'ρ'},
-	{"rhshoe",	L'⊂'},
-	{"rlenis",	MRLN},
-	{"rsylab",	L'r'},		/* +sylab */
-	{"runash",	L'F'},		/* should be runic 'ash' */
-	{"rvow",	L'˔'},
-	{"sacu",	L'ś'},
-	{"sagit",	L'♐'},
-	{"sampi",	L'ϡ'},
-	{"saturn",	L'♄'},
-	{"sced",	L'ş'},
-	{"schwa",	L'ə'},
-	{"scorpio",	L'♏'},
-	{"scrA",	L'A'},		/* should be script */
-	{"scrC",	L'C'},
-	{"scrE",	L'E'},
-	{"scrF",	L'F'},
-	{"scrI",	L'I'},
-	{"scrJ",	L'J'},
-	{"scrL",	L'L'},
-	{"scrO",	L'O'},
-	{"scrP",	L'P'},
-	{"scrQ",	L'Q'},
-	{"scrS",	L'S'},
-	{"scrT",	L'T'},
-	{"scrb",	L'b'},
-	{"scrd",	L'd'},
-	{"scrh",	L'h'},
-	{"scrl",	L'l'},
-	{"scruple",	L'℈'},		/* U+2108 */
-	{"sdd",		L'ː'},
-	{"sect",	L'§'},
-	{"semE",	L'∃'},
-	{"sh",		L'ʃ'},
-	{"shacek",	L'š'},
-	{"sharp",	L'♯'},
-	{"sheva",	L'ְ'},		/* U+05B0 */
-	{"shti",	L'ɪ'},
-	{"shtsyll",	L'∪'},
-	{"shtu",	L'ʊ'},
-	{"sidetri",	L'⊲'},
-	{"sigma",	L'σ'},
-	{"since",	L'∵'},
-	{"slge",	L'≥'},		/* should have slanted line under */
-	{"slle",	L'≤'},		/* should have slanted line under */
-	{"sm",		L'ˈ'},
-	{"smm",		L'ˌ'},
-	{"spade",	L'♠'},
-	{"sqrt",	L'√'},
-	{"square",	L'□'},		/* U+25A1 */
-	{"ssChi",	L'Χ'},		/* should be sans serif */
-	{"ssIota",	L'Ι'},
-	{"ssOmicron",	L'Ο'},
-	{"ssPi",	L'Π'},
-	{"ssRho",	L'Ρ'},
-	{"ssSigma",	L'Σ'},
-	{"ssTau",	L'Τ'},
-	{"star",	L'*'},
-	{"stlig",	MLST},
-	{"sup2",	L'⁲'},
-	{"supgt",	L'˃'},
-	{"suplt",	L'˂'},
-	{"sur",		L'ʳ'},
-	{"swing",	L'∼'},
-	{"tau",		L'τ'},
-	{"taur",	L'♉'},
-	{"th",		L'þ'},
-	{"thbar",	L'þ'},		/* +bar */
-	{"theta",	L'θ'},
-	{"thinqm",	L'?'},		/* should be thinner */
-	{"tilde",	LTIL},
-	{"times",	L'×'},
-	{"tri",		L'∆'},
-	{"trli",	L'‖'},
-	{"ts",		L' '},
-	{"uacu",	L'ú'},
-	{"uasper",	MUAS},
-	{"ubar",	L'u'},		/* +bar */
-	{"ubreve",	L'ŭ'},
-	{"ucirc",	L'û'},
-	{"udA",		L'∀'},
-	{"udT",		L'⊥'},
-	{"uda",		L'ɐ'},
-	{"udh",		L'ɥ'},
-	{"udqm",	L'¿'},
-	{"udpsi",	L'⋔'},
-	{"udtr",	L'∇'},
-	{"ugrave",	L'ù'},
-	{"ulenis",	MULN},
-	{"umac",	L'ū'},
-	{"uml",		LUML},
-	{"undl",	L'ˍ'},		/* underline accent */
-	{"union",	L'∪'},
-	{"upsilon",	L'υ'},
-	{"uuml",	L'ü'},
-	{"vavpath",	L'ו'},		/* vav U+05D5 (+patah) */
-	{"vavsheva",	L'ו'},		/* vav U+05D5 (+sheva) */
-	{"vb",		L'|'},
-	{"vddd",	L'⋮'},
-	{"versicle2",	L'℣'},		/* U+2123 */
-	{"vinc",	L'¯'},
-	{"virgo",	L'♍'},
-	{"vpal",	L'ɟ'},
-	{"vvf",		L'ɣ'},
-	{"wasper",	MWAS},
-	{"wavyeq",	L'≈'},
-	{"wlenis",	MWLN},
-	{"wyn",		L'ƿ'},		/* wynn U+01BF */
-	{"xi",		L'ξ'},
-	{"yacu",	L'ý'},
-	{"ycirc",	L'ŷ'},
-	{"ygh",		L'ʒ'},
-	{"ymac",	L'y'},		/* +macron */
-	{"yuml",	L'ÿ'},
-	{"zced",	L'z'},		/* +cedilla */
-	{"zeta",	L'ζ'},
-	{"zh",		L'ʒ'},
-	{"zhacek",	L'ž'},
-};
-/*
-   The following special characters don't have close enough
-   equivalents in Unicode, so aren't in the above table.
-	22n		2^(2^n) Cf Fermat
-	2on4		2/4
-	3on8		3/8
-	Bantuo		Bantu O. Cf Otshi-herero
-	Car		C with circular arrow on top
-	albrtime 	cut-time: C with vertical line
-	ardal		Cf dental
-	bantuo		Bantu o. Cf Otshi-herero
-	bbc1		single chem bond below
-	bbc2		double chem bond below
-	bbl1		chem bond like /
-	bbl2		chem bond like //
-	bbr1		chem bond like \
-	bbr2		chem bond \\
-	bcop1		copper symbol. Cf copper
-	bcop2		copper symbol. Cf copper
-	benchm		Cf benchmark
-	btc1		single chem bond above
-	btc2		double chem bond above
-	btl1		chem bond like \
-	btl2		chem bond like \\
-	btr1		chem bond like /
-	btr2		chem bond line //
-	burman		Cf Burman
-	devph		sanskrit letter. Cf ph
-	devrfls		sanskrit letter. Cf cerebral
-	duplong[12]	musical note
-	egchi		early form of chi
-	eggamma[12]	early form of gamma
-	egiota		early form of iota
-	egkappa		early form of kappa
-	eglambda	early form of lambda
-	egmu[12]	early form of mu
-	egnu[12]	early form of nu
-	egpi[123]	early form of pi
-	egrho[12]	early form of rho
-	egsampi		early form of sampi
-	egsan		early form of san
-	egsigma[12]	early form of sigma
-	egxi[123]	early form of xi
-	elatS		early form of S
-	elatc[12]	early form of C
-	elatg[12]	early form of G
-	glagjeri	Slavonic Glagolitic jeri
-	glagjeru	Slavonic Glagolitic jeru
-	hypolem		hypolemisk (line with underdot)
-	lhrbr		lower half }
-	longmord	long mordent
-	mbwvow		backwards scretched C. Cf retract.
-	mord		music symbol.  Cf mordent
-	mostra		Cf direct
-	ohgcirc		old form of circumflex
-	oldbeta		old form of β. Cf perturbate
-	oldsemibr[12]	old forms of semibreve. Cf prolation
-	ormg		old form of g. Cf G
-	para[12345]	form of ¶
-	pauseo		musical pause sign
-	pauseu		musical pause sign
-	pharyng		Cf pharyngal
-	ragr		Black letter ragged r
-	repetn		musical repeat. Cf retort
-	segno		musical segno sign
-	semain[12]	semitic ain
-	semhe		semitic he
-	semheth		semitic heth
-	semkaph		semitic kaph
-	semlamed[12]	semitic lamed
-	semmem		semitic mem
-	semnum		semitic nun
-	sempe		semitic pe
-	semqoph[123]	semitic qoph
-	semresh		semitic resh
-	semtav[1234]	semitic tav
-	semyod		semitic yod
-	semzayin[123]	semitic zayin
-	shtlong[12]	U with underbar. Cf glyconic
-	sigmatau	σ,τ combination
-	squaver		sixteenth note
-	sqbreve		square musical breve note
-	swast		swastika
-	uhrbr		upper half of big }
-	versicle1		Cf versicle
- */
-
-
-static Rune normtab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	SPCS,	L'\'',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/  L'0',	L'1',	L'2',	L'3',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'9',	L':',	L';',	TAGS,	L'=',	TAGE,	L'?',
-/*40*/  L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-static Rune phtab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'ˈ',	L'#',	L'$',	L'ˌ',	L'æ',	L'\'',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/  L'0',	L'1',	L'2',	L'ɜ',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'ø',	L'ː',	L';',	TAGS,	L'=',	TAGE,	L'?',
-/*40*/  L'ə',	L'ɑ',	L'B',	L'C',	L'ð',	L'ɛ',	L'F',	L'G',
-	L'H',	L'ɪ',	L'J',	L'K',	L'L',	L'M',	L'ŋ',	L'ɔ',
-/*50*/	L'P',	L'ɒ',	L'R',	L'ʃ',	L'θ',	L'ʊ',	L'ʌ',	L'W',
-	L'X',	L'Y',	L'ʒ',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-static Rune grtab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	SPCS,	L'\'',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/  L'0',	L'1',	L'2',	L'3',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'9',	L':',	L';',	TAGS,	L'=',	TAGE,	L'?',
-/*40*/  L'@',	L'Α',	L'Β',	L'Ξ',	L'Δ',	L'Ε',	L'Φ',	L'Γ',
-	L'Η',	L'Ι',	L'Ϛ',	L'Κ',	L'Λ',	L'Μ',	L'Ν',	L'Ο',
-/*50*/	L'Π',	L'Θ',	L'Ρ',	L'Σ',	L'Τ',	L'Υ',	L'V',	L'Ω',
-	L'Χ',	L'Ψ',	L'Ζ',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'α',	L'β',	L'ξ',	L'δ',	L'ε',	L'φ',	L'γ',
-	L'η',	L'ι',	L'ς',	L'κ',	L'λ',	L'μ',	L'ν',	L'ο',
-/*70*/	L'π',	L'θ',	L'ρ',	L'σ',	L'τ',	L'υ',	L'v',	L'ω',
-	L'χ',	L'ψ',	L'ζ',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-static Rune subtab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	SPCS,	L'\'',
-	L'₍',	L'₎',	L'*',	L'₊',	L',',	L'₋',	L'.',	L'/',
-/*30*/  L'₀',	L'₁',	L'₂',	L'₃',	L'₄',	L'₅',	L'₆',	L'₇',
-	L'₈',	L'₉',	L':',	L';',	TAGS,	L'₌',	TAGE,	L'?',
-/*40*/  L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-static Rune suptab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	SPCS,	L'\'',
-	L'⁽',	L'⁾',	L'*',	L'⁺',	L',',	L'⁻',	L'.',	L'/',
-/*30*/  L'⁰',	L'ⁱ',	L'⁲',	L'⁳',	L'⁴',	L'⁵',	L'⁶',	L'⁷',
-	L'⁸',	L'⁹',	L':',	L';',	TAGS,	L'⁼',	TAGE,	L'?',
-/*40*/  L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-
-static int	tagstarts;
-static char	tag[Buflen];
-static int	naux;
-static char	auxname[Maxaux][Buflen];
-static char	auxval[Maxaux][Buflen];
-static char	spec[Buflen];
-static char	*auxstate[Naux];	/* vals for most recent tag */
-static Entry	curentry;
-#define cursize (curentry.end-curentry.start)
-
-static char	*getspec(char *, char *);
-static char	*gettag(char *, char *);
-static void	dostatus(void);
-
-/*
- * cmd is one of:
- *    'p': normal print
- *    'h': just print headwords
- *    'P': print raw
- */
-void
-oedprintentry(Entry e, int cmd)
-{
-	char *p, *pe;
-	int t, a, i;
-	int32_t r, rprev, rlig;
-	Rune *transtab;
-
-	p = e.start;
-	pe = e.end;
-	transtab = normtab;
-	rprev = NONE;
-	changett(0, 0, 0);
-	curentry = e;
-	if(cmd == 'h')
-		outinhibit = 1;
-	while(p < pe) {
-		if(cmd == 'r') {
-			outchar(*p++);
-			continue;
-		}
-		r = transtab[(*p++)&0x7F];
-		if(r < NONE) {
-			/* Emit the rune, but buffer in case of ligature */
-			if(rprev != NONE)
-				outrune(rprev);
-			rprev = r;
-		} else if(r == SPCS) {
-			/* Start of special character name */
-			p = getspec(p, pe);
-			r = lookassoc(spectab, asize(spectab), spec);
-			if(r == -1) {
-				if(debug)
-					err("spec %ld %d %s",
-						e.doff, cursize, spec);
-				r = L'�';
-			}
-			if(r >= LIGS && r < LIGE) {
-				/* handle possible ligature */
-				rlig = liglookup(r, rprev);
-				if(rlig != NONE)
-					rprev = rlig;	/* overwrite rprev */
-				else {
-					/* could print accent, but let's not */
-					if(rprev != NONE) outrune(rprev);
-					rprev = NONE;
-				}
-			} else if(r >= MULTI && r < MULTIE) {
-				if(rprev != NONE) {
-					outrune(rprev);
-					rprev = NONE;
-				}
-				outrunes(multitab[r-MULTI]);
-			} else if(r == PAR) {
-				if(rprev != NONE) {
-					outrune(rprev);
-					rprev = NONE;
-				}
-				outnl(1);
-			} else {
-				if(rprev != NONE) outrune(rprev);
-				rprev = r;
-			}
-		} else if(r == TAGS) {
-			/* Start of tag name */
-			if(rprev != NONE) {
-				outrune(rprev);
-				rprev = NONE;
-			}
-			p = gettag(p, pe);
-			t = lookassoc(tagtab, asize(tagtab), tag);
-			if(t == -1) {
-				if(debug)
-					err("tag %ld %d %s",
-						e.doff, cursize, tag);
-				continue;
-			}
-			for(i = 0; i < Naux; i++)
-				auxstate[i] = 0;
-			for(i = 0; i < naux; i++) {
-				a = lookassoc(auxtab, asize(auxtab), auxname[i]);
-				if(a == -1) {
-					if(debug)
-						err("aux %ld %d %s",
-							e.doff, cursize, auxname[i]);
-				} else
-					auxstate[a] = auxval[i];
-			}
-			switch(t){
-			case E:
-			case Ve:
-				outnl(0);
-				if(tagstarts)
-					dostatus();
-				break;
-			case Ed:
-			case Etym:
-				outchar(tagstarts? '[' : ']');
-				break;
-			case Pr:
-				outchar(tagstarts? '(' : ')');
-				break;
-			case In:
-				transtab = changett(transtab, subtab, tagstarts);
-				break;
-			case Hm:
-			case Su:
-			case Fq:
-				transtab = changett(transtab, suptab, tagstarts);
-				break;
-			case Gk:
-				transtab = changett(transtab, grtab, tagstarts);
-				break;
-			case Ph:
-				transtab = changett(transtab, phtab, tagstarts);
-				break;
-			case Hw:
-				if(cmd == 'h') {
-					if(!tagstarts)
-						outchar(' ');
-					outinhibit = !tagstarts;
-				}
-				break;
-			case S0:
-			case S1:
-			case S2:
-			case S3:
-			case S4:
-			case S5:
-			case S6:
-			case S7a:
-			case S7n:
-			case Sn:
-			case Sgk:
-				if(tagstarts) {
-					outnl(2);
-					dostatus();
-					if(auxstate[Num]) {
-						if(t == S3 || t == S5) {
-							i = atoi(auxstate[Num]);
-							while(i--)
-								outchar('*');
-							outchars("  ");
-						} else if(t == S7a || t == S7n || t == Sn) {
-							outchar('(');
-							outchars(auxstate[Num]);
-							outchars(") ");
-						} else if(t == Sgk) {
-							i = grtab[auxstate[Num][0]];
-							if(i != NONE)
-								outrune(i);
-							outchars(".  ");
-						} else {
-							outchars(auxstate[Num]);
-							outchars(".  ");
-						}
-					}
-				}
-				break;
-			case Cb:
-			case Db:
-			case Qp:
-			case P:
-				if(tagstarts)
-					outnl(1);
-				break;
-			case Table:
-				/*
-				 * Todo: gather columns, justify them, etc.
-				 * For now, just let colums come out as rows
-				 */
-				if(!tagstarts)
-					outnl(0);
-				break;
-			case Col:
-				if(tagstarts)
-					outnl(0);
-				break;
-			case Dn:
-				if(tagstarts)
-					outchar('/');
-				break;
-			}
-		}
-	}
-	if(cmd == 'h') {
-		outinhibit = 0;
-		outnl(0);
-	}
-}
-
-/*
- * Return offset into bdict where next oed entry after fromoff starts.
- * Oed entries start with <e>, <ve>, <e st=...>, or <ve st=...>
- */
-int32_t
-oednextoff(int32_t fromoff)
-{
-	int32_t a, n;
-	int c;
-
-	a = Bseek(bdict, fromoff, 0);
-	if(a < 0)
-		return -1;
-	n = 0;
-	for(;;) {
-		c = Bgetc(bdict);
-		if(c < 0)
-			break;
-		if(c == '<') {
-			c = Bgetc(bdict);
-			if(c == 'e') {
-				c = Bgetc(bdict);
-				if(c == '>' || c == ' ')
-					n = 3;
-			} else if(c == 'v' && Bgetc(bdict) == 'e') {
-				c = Bgetc(bdict);
-				if(c == '>' || c == ' ')
-					n = 4;
-			}
-			if(n)
-				break;
-		}
-	}
-	return (Boffset(bdict)-n);
-}
-
-static char *prkey =
-"KEY TO THE PRONUNCIATION\n"
-"\n"
-"I. CONSONANTS\n"
-"b, d, f, k, l, m, n, p, t, v, z: usual English values\n"
-"\n"
-"g as in go (gəʊ)\n"
-"h  ...  ho! (həʊ)\n"
-"r  ...  run (rʌn), terrier (ˈtɛriə(r))\n"
-"(r)...  her (hɜː(r))\n"
-"s  ...  see (siː), success (səkˈsɜs)\n"
-"w  ...  wear (wɛə(r))\n"
-"hw ...  when (hwɛn)\n"
-"j  ...  yes (jɛs)\n"
-"θ  ...  thin (θin), bath (bɑːθ)\n"
-"ð  ...  then (ðɛn), bathe (beɪð)\n"
-"ʃ  ...  shop (ʃɒp), dish (dɪʃ)\n"
-"tʃ ...  chop (tʃɒp), ditch (dɪtʃ)\n"
-"ʒ  ...  vision (ˈvɪʒən), déjeuner (deʒøne)\n"
-"dʒ ...  judge (dʒʌdʒ)\n"
-"ŋ  ...  singing (ˈsɪŋɪŋ), think (θiŋk)\n"
-"ŋg ...  finger (ˈfiŋgə(r))\n"
-"\n"
-"Foreign\n"
-"ʎ as in It. seraglio (serˈraʎo)\n"
-"ɲ  ...  Fr. cognac (kɔɲak)\n"
-"x  ...  Ger. ach (ax), Sc. loch (lɒx)\n"
-"ç  ...  Ger. ich (ɪç), Sc. nicht (nɪçt)\n"
-"ɣ  ...  North Ger. sagen (ˈzaːɣən)\n"
-"c  ...  Afrikaans baardmannetjie (ˈbaːrtmanəci)\n"
-"ɥ  ...  Fr. cuisine (kɥizin)\n"
-"\n"
-"II. VOWELS AND DIPTHONGS\n"
-"\n"
-"Short\n"
-"ɪ as in pit (pɪt), -ness (-nɪs)\n"
-"ɛ  ...  pet (pɛt), Fr. sept (sɛt)\n"
-"æ  ...  pat (pæt)\n"
-"ʌ  ...  putt (pʌt)\n"
-"ɒ  ...  pot (pɒt)\n"
-"ʊ  ...  put (pʊt)\n"
-"ə  ...  another (əˈnʌðə(r))\n"
-"(ə)...  beaten (ˈbiːt(ə)n)\n"
-"i  ...  Fr. si (si)\n"
-"e  ...  Fr. bébé (bebe)\n"
-"a  ...  Fr. mari (mari)\n"
-"ɑ  ...  Fr. bâtiment (bɑtimã)\n"
-"ɔ  ...  Fr. homme (ɔm)\n"
-"o  ...  Fr. eau (o)\n"
-"ø  ...  Fr. peu (pø)\n"
-"œ  ...  Fr. boeuf (bœf), coeur (kœr)\n"
-"u  ...  Fr. douce (dus)\n"
-"ʏ  ...  Ger. Müller (ˈmʏlər)\n"
-"y  ...  Fr. du (dy)\n"
-"\n"
-"Long\n"
-"iː as in bean (biːn)\n"
-"ɑː ...  barn (bɑːn)\n"
-"ɔː ...  born (bɔːn)\n"
-"uː ...  boon (buːn)\n"
-"ɜː ...  burn (bɜːn)\n"
-"eː ...  Ger. Schnee (ʃneː)\n"
-"ɛː ...  Ger. Fähre (ˈfɛːrə)\n"
-"aː ...  Ger. Tag (taːk)\n"
-"oː ...  Ger. Sohn (zoːn)\n"
-"øː ...  Ger. Goethe (gøːtə)\n"
-"yː ...  Ger. grün (gryːn)\n"
-"\n"
-"Nasal\n"
-"ɛ˜, æ˜ as in Fr. fin (fɛ˜, fæ˜)\n"
-"ã  ...  Fr. franc (frã)\n"
-"ɔ˜ ...  Fr. bon (bɔ˜n)\n"
-"œ˜ ...  Fr. un (œ˜)\n"
-"\n"
-"Dipthongs, etc.\n"
-"eɪ as in bay (beɪ)\n"
-"aɪ ...  buy (baɪ)\n"
-"ɔɪ ...  boy (bɔɪ)\n"
-"əʊ ...  no (nəʊ)\n"
-"aʊ ...  now (naʊ)\n"
-"ɪə ...  peer (pɪə(r))\n"
-"ɛə ...  pair (pɛə(r))\n"
-"ʊə ...  tour (tʊə(r))\n"
-"ɔə ...  boar (bɔə(r))\n"
-"\n"
-"III. STRESS\n"
-"\n"
-"Main stress: ˈ preceding stressed syllable\n"
-"Secondary stress: ˌ preceding stressed syllable\n"
-"\n"
-"E.g.: pronunciation (prəˌnʌnsɪˈeɪʃ(ə)n)\n";
-/* TODO: find transcriptions of foreign consonents, œ, ʏ, nasals */
-
-void
-oedprintkey(void)
-{
-	Bprint(bout, "%s", prkey);
-}
-
-/*
- * f points just after a '&', fe points at end of entry.
- * Accumulate the special name, starting after the &
- * and continuing until the next '.', in spec[].
- * Return pointer to char after '.'.
- */
-static char *
-getspec(char *f, char *fe)
-{
-	char *t;
-	int c, i;
-
-	t = spec;
-	i = sizeof spec;
-	while(--i > 0) {
-		c = *f++;
-		if(c == '.' || f == fe)
-			break;
-		*t++ = c;
-	}
-	*t = 0;
-	return f;
-}
-
-/*
- * f points just after '<'; fe points at end of entry.
- * Expect next characters from bin to match:
- *  [/][^ >]+( [^>=]+=[^ >]+)*>
- *      tag   auxname auxval
- * Accumulate the tag and its auxilliary information in
- * tag[], auxname[][] and auxval[][].
- * Set tagstarts=1 if the tag is 'starting' (has no '/'), else 0.
- * Set naux to the number of aux pairs found.
- * Return pointer to after final '>'.
- */
-static char *
-gettag(char *f, char *fe)
-{
-	char *t;
-	int c, i;
-
-	t = tag;
-	c = *f++;
-	if(c == '/')
-		tagstarts = 0;
-	else {
-		tagstarts = 1;
-		*t++ = c;
-	}
-	i = Buflen;
-	naux = 0;
-	while(--i > 0) {
-		c = *f++;
-		if(c == '>' || f == fe)
-			break;
-		if(c == ' ') {
-			*t = 0;
-			t = auxname[naux];
-			i = Buflen;
-			if(naux < Maxaux-1)
-				naux++;
-		} else if(naux && c == '=') {
-			*t = 0;
-			t = auxval[naux-1];
-			i = Buflen;
-		} else
-			*t++ = c;
-	}
-	*t = 0;
-	return f;
-}
-
-static void
-dostatus(void)
-{
-	char *s;
-
-	s = auxstate[St];
-	if(s) {
-		if(strcmp(s, "obs") == 0)
-			outrune(L'†');
-		else if(strcmp(s, "ali") == 0)
-			outrune(L'‖');
-		else if(strcmp(s, "err") == 0 || strcmp(s, "spu") == 0)
-			outrune(L'¶');
-		else if(strcmp(s, "xref") == 0)
-			{/* nothing */}
-		else if(debug)
-			err("status %ld %d %s", curentry.doff, cursize, s);
-	}
-}

+ 0 - 235
sys/src/cmd/dict/pcollins.c

@@ -1,235 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-/*
- * Routines for handling dictionaries in the "Paperback Collins"
- * format (with tags surrounded by >....<)
- */
-enum {
-	Buflen=1000,
-};
-
-/* More special runes */
-enum {
-	B = MULTIE+1,	/* bold */
-	H,		/* headword start */
-	I,		/* italics */
-	Ps,		/* pronunciation start */
-	Pe,		/* pronunciation end */
-	R,		/* roman */
-	X,		/* headword end */
-};
-
-/* Assoc tables must be sorted on first field */
-
-static Assoc tagtab[] = {
-	{"AA",		L'Å'},
-	{"AC",		LACU},
-	{"B",		B},
-	{"CE",		LCED},
-	{"CI",		LFRN},
-	{"Di",		L'ı'},
-	{"EL",		L'-'},
-	{"GR",		LGRV},
-	{"H",		H},
-	{"I",		I},
-	{"OE",		L'Œ'},
-	{"R",		R},
-	{"TI",		LTIL},
-	{"UM",		LUML},
-	{"X",		X},
-	{"[",		Ps},
-	{"]",		Pe},
-	{"ac",		LACU},
-	{"ce",		LCED},
-	{"ci",		LFRN},
-	{"gr",		LGRV},
-	{"oe",		L'œ'},
-	{"supe",	L'e'},		/* should be raised */
-	{"supo",	L'o'},		/* should be raised */
-	{"ti",		LTIL},
-	{"um",		LUML},
-	{"{",		Ps},
-	{"~",		L'~'},
-	{"~~",		MTT},
-};
-
-static Rune normtab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	L' ',	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	L'&',	L'\'',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/  L'0',	L'1',	L'2',	L'3',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'9',	L':',	L';',	TAGE,	L'=',	TAGS,	L'?',
-/*40*/  L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-
-static char *gettag(char *, char *);
-
-static Entry	curentry;
-static char	tag[Buflen];
-#define cursize (curentry.end-curentry.start)
-
-void
-pcollprintentry(Entry e, int cmd)
-{
-	char *p, *pe;
-	int32_t r, rprev, t, rlig;
-	int saveoi;
-	Rune *transtab;
-
-	p = e.start;
-	pe = e.end;
-	transtab = normtab;
-	rprev = NONE;
-	changett(0, 0, 0);
-	curentry = e;
-	saveoi = 0;
-	if(cmd == 'h')
-		outinhibit = 1;
-	while(p < pe) {
-		if(cmd == 'r') {
-			outchar(*p++);
-			continue;
-		}
-		r = transtab[(*p++)&0x7F];
-		if(r < NONE) {
-			/* Emit the rune, but buffer in case of ligature */
-			if(rprev != NONE)
-				outrune(rprev);
-			rprev = r;
-		} else if(r == TAGS) {
-			p = gettag(p, pe);
-			t = lookassoc(tagtab, asize(tagtab), tag);
-			if(t == -1) {
-				if(debug && !outinhibit)
-					err("tag %ld %d %s",
-						e.doff, cursize, tag);
-				continue;
-			}
-			if(t < NONE) {
-				if(rprev != NONE)
-					outrune(rprev);
-				rprev = t;
-			} else if(t >= LIGS && t < LIGE) {
-				/* handle possible ligature */
-				rlig = liglookup(t, rprev);
-				if(rlig != NONE)
-					rprev = rlig;	/* overwrite rprev */
-				else {
-					/* could print accent, but let's not */
-					if(rprev != NONE) outrune(rprev);
-					rprev = NONE;
-				}
-			} else if(t >= MULTI && t < MULTIE) {
-				if(rprev != NONE) {
-					outrune(rprev);
-					rprev = NONE;
-				}
-				outrunes(multitab[t-MULTI]);
-			} else {
-				if(rprev != NONE) {
-					outrune(rprev);
-					rprev = NONE;
-				}
-				switch(t){
-				case H:
-					if(cmd == 'h')
-						outinhibit = 0;
-					else
-						outnl(0);
-					break;
-				case X:
-					if(cmd == 'h')
-						outinhibit = 1;
-					else
-						outchars(".  ");
-					break;
-				case Ps:
-					/* don't know enough of pron. key yet */
-					saveoi = outinhibit;
-					outinhibit = 1;
-					break;
-				case Pe:
-					outinhibit = saveoi;
-					break;
-				}
-			}
-		}
-	}
-	if(cmd == 'h')
-		outinhibit = 0;
-	outnl(0);
-}
-
-int32_t
-pcollnextoff(int32_t fromoff)
-{
-	int32_t a;
-	char *p;
-
-	a = Bseek(bdict, fromoff, 0);
-	if(a < 0)
-		return -1;
-	for(;;) {
-		p = Brdline(bdict, '\n');
-		if(!p)
-			break;
-		if(p[0] == '>' && p[1] == 'H' && p[2] == '<')
-			return (Boffset(bdict)-Blinelen(bdict));
-	}
-	return -1;
-}
-
-void
-pcollprintkey(void)
-{
-	Bprint(bout, "No pronunciation key yet\n");
-}
-
-/*
- * f points just after '>'; fe points at end of entry.
- * Expect next characters from bin to match:
- *  [^ <]+<
- *     tag
- * Accumulate the tag in tag[].
- * Return pointer to after final '<'.
- */
-static char *
-gettag(char *f, char *fe)
-{
-	char *t;
-	int c, i;
-
-	t = tag;
-	i = Buflen;
-	while(--i > 0) {
-		c = *f++;
-		if(c == '<' || f == fe)
-			break;
-		*t++ = c;
-	}
-	*t = 0;
-	return f;
-}

+ 0 - 257
sys/src/cmd/dict/pcollinsg.c

@@ -1,257 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-/*
- * Routines for handling dictionaries in the "Paperback Collins"
- * `German' format (with tags surrounded by \5⋯\6 and \xba⋯\xba)
- */
-
-/*
- *	\5⋯\6 escapes (fonts, mostly)
- *
- *	h	headword (helvetica 7 pt)
- *	c	clause (helvetica 7 pt)
- *	3	helvetica 7 pt
- *	4	helvetica 6.5 pt
- *	s	helvetica 8 pt
- *	x	helvetica 8 pt
- *	y	helvetica 5 pt
- *	m	helvetica 30 pt
- *	1	roman 6 pt
- *	9	roman 4.5 pt
- *	p	roman 7 pt
- *	q	roman 4.5 pt
- *	2	italic 6 pt
- *	7	italic 4.5 pt
- *	b	bold 6 pt
- *	a	`indent 0:4 left'
- *	k	`keep 9'
- *	l	`size 12'
- */
-
-enum {
-	IBASE=L'i',	/* dotless i */
-	Taglen=32,
-};
-
-static Rune intab[256] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	TAGS,	TAGE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	L' ',	NONE,	NONE,
-/*10*/	NONE,	L'-',	L' ',	L' ',	NONE,	NONE,	NONE,	NONE,
-	L' ',	NONE,	NONE,	NONE,	L' ',	NONE,	NONE,	L'-',
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	L'&',	L'\'',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/  L'0',	L'1',	L'2',	L'3',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'9',	L':',	L';',	L'<',	L'=',	L'>',	L'?',
-/*40*/  L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-/*80*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	L' ',	NONE,	NONE,	NONE,	NONE,	NONE,
-/*90*/	L'ß',	L'æ',	NONE,	MOE,	NONE,	NONE,	NONE,	L'ø',
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*A0*/	NONE,	NONE,	L'"',	L'£',	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*B0*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	L'~',
-	NONE,	IBASE,	SPCS,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*C0*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*D0*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*E0*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*F0*/	L' ',	L' ',	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-};
-
-static Nassoc numtab[] = {
-	{1,	L'+'},
-	{4,	L'='},
-	{7,	L'°'},
-	{11,	L'≈'},
-	{69,	L'♦'},
-	{114,	L'®'},
-	{340,	L'ɛ'},
-	{341,	L'ɔ'},
-	{342,	L'ʌ'},
-	{343,	L'ə'},
-	{345,	L'ʒ'},
-	{346,	L'ʃ'},
-	{347,	L'ɵ'},
-	{348,	L'ʊ'},
-	{349,	L'ˈ'},
-	{351,	L'ɪ'},
-	{352,	L'ɜ'},
-	{354,	L'ɑ'},
-	{355,	L'~'},
-	{356,	L'ɒ'},
-	{384,	L'ɳ'},
-	{445,	L'ð'},	/* BUG -- should be script eth */
-};
-
-static Nassoc overtab[] = {
-	{L',',	LCED},
-	{L'/',	LACU},
-	{L':',	LUML},
-	{L'\\',	LGRV},
-	{L'^',	LFRN},
-	{L'~',	LTIL},
-};
-
-static uint8_t *reach(uint8_t*, int);
-
-static Entry	curentry;
-static char	tag[Taglen];
-
-void
-pcollgprintentry(Entry e, int cmd)
-{
-	uint8_t *p, *pe;
-	int r, rprev = NONE, rx, over = 0, font;
-	char buf[16];
-
-	p = (uint8_t *)e.start;
-	pe = (uint8_t *)e.end;
-	curentry = e;
-	if(cmd == 'h')
-		outinhibit = 1;
-	while(p < pe){
-		if(cmd == 'r'){
-			outchar(*p++);
-			continue;
-		}
-		switch(r = intab[*p++]){
-		case TAGS:
-			if(rprev != NONE){
-				outrune(rprev);
-				rprev = NONE;
-			}
-			p = reach(p, 0x06);
-			font = tag[0];
-			if(cmd == 'h')
-				outinhibit = (font != 'h');
-			break;
-
-		case TAGE:	/* an extra one */
-			break;
-
-		case SPCS:
-			p = reach(p, 0xba);
-			r = looknassoc(numtab, asize(numtab), strtol(tag,0,0));
-			if(r < 0){
-				if(rprev != NONE){
-					outrune(rprev);
-					rprev = NONE;
-				}
-				sprint(buf, "\\N'%s'", tag);
-				outchars(buf);
-				break;
-			}
-			/* else fall through */
-
-		default:
-			if(over){
-				rx = looknassoc(overtab, asize(overtab), r);
-				if(rx > 0)
-					rx = liglookup(rx, rprev);
-				if(rx > 0 && rx != NONE)
-					outrune(rx);
-				else{
-					outrune(rprev);
-					if(r == ':')
-						outrune(L'¨');
-					else{
-						outrune(L'^');
-						outrune(r);
-					}
-				}
-				over = 0;
-				rprev = NONE;
-			}else if(r == '^'){
-				over = 1;
-			}else{
-				if(rprev != NONE)
-					outrune(rprev);
-				rprev = r;
-			}
-		}
-
-	}
-	if(rprev != NONE)
-		outrune(rprev);
-	if(cmd == 'h')
-		outinhibit = 0;
-	outnl(0);
-}
-
-int32_t
-pcollgnextoff(int32_t fromoff)
-{
-	int c, state = 0, defoff = -1;
-
-	if(Bseek(bdict, fromoff, 0) < 0)
-		return -1;
-	while((c = Bgetc(bdict)) >= 0){
-		if(c == '\r')
-			defoff = Boffset(bdict);
-		switch(state){
-		case 0:
-			if(c == 0x05)
-				state = 1;
-			break;
-		case 1:
-			if(c == 'h')
-				state = 2;
-			else
-				state = 0;
-			break;
-		case 2:
-			if(c == 0x06)
-				return (Boffset(bdict)-3);
-			else
-				state = 0;
-			break;
-		}
-	}
-	return defoff;
-}
-
-void
-pcollgprintkey(void)
-{
-	Bprint(bout, "No pronunciation key yet\n");
-}
-
-static uint8_t *
-reach(uint8_t *p, int tagchar)
-{
-	int c; char *q=tag;
-
-	while(p < (uint8_t *)curentry.end){
-		c = *p++;
-		if(c == tagchar)
-			break;
-		*q++ = c;
-		if(q >= &tag[sizeof tag-1])
-			break;
-	}
-	*q = 0;
-	return p;
-}

+ 0 - 1170
sys/src/cmd/dict/pgw.c

@@ -1,1170 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-/* thanks to Caerwyn Jones <caerwyn@comcast.net> for this module */
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-enum {
-	Buflen=1000,
-	Maxaux=5,
-};
-
-/* Possible tags */
-enum {
-	B,		/* Bold */
-	Blockquote,	/* Block quote */
-	Br,		/* Break line */
-	Cd,		/* ? coloquial data */
-	Col,		/* ? Coloquial */
-	Def,		/* Definition */
-	Hw, 		/* Head Word */
-	I,		/* Italics */
-	P,		/* Paragraph */
-	Pos,		/* Part of Speach */
-	Sn,		/* Sense */
-	U,		/* ? cross reference*/
-	Wf,		/* ? word form */
-	Ntag		/* end of tags */
-};
-
-/* Assoc tables must be sorted on first field */
-
-static Assoc tagtab[] = {
-	{"b",			B},
-	{"blockquote",	Blockquote},
-	{"BR",		Br},
-	{"cd",		Cd},
-	{"col",		Col},
-	{"def",		Def},
-	{"hw",		Hw},
-	{"i",			I},
-	{"p",			P},
-	{"pos",		Pos},
-	{"sn",		Sn},
-	{"u",			U},
-	{"wf",		Wf},
-};
-
-/* Possible tag auxilliary info */
-enum {
-	Cols,		/* number of columns in a table */
-	Num,		/* letter or number, for a sense */
-	St,		/* status (e.g., obs) */
-	Naux
-};
-
-static Assoc auxtab[] = {
-	{"cols",	Cols},
-	{"num",		Num},
-	{"st",		St}
-};
-
-static Assoc spectab[] = {
-	{"3on4",	L'¾'},
-	{"AElig",		L'Æ'},
-	{"Aacute",	L'Á'},
-	{"Aang",	L'Å'},
-	{"Abarab",	L'Ā'},
-	{"Acirc",	L'Â'},
-	{"Agrave",	L'À'},
-	{"Alpha",	L'Α'},
-	{"Amacr",	L'Ā'},
-	{"Asg",		L'Ʒ'},		/* Unicyle. Cf "Sake" */
-	{"Auml",	L'Ä'},
-	{"Beta",	L'Β'},
-	{"Cced",	L'Ç'},
-	{"Chacek",	L'Č'},
-	{"Chi",		L'Χ'},
-	{"Chirho",	L'☧'},		/* Chi Rho U+2627 */
-	{"Csigma",	L'Ϛ'},
-	{"Delta",	L'Δ'},
-	{"Eacute",	L'É'},
-	{"Ecirc",	L'Ê'},
-	{"Edh",		L'Ð'},
-	{"Epsilon",	L'Ε'},
-	{"Eta",		L'Η'},
-	{"Gamma",	L'Γ'},
-	{"Iacute",	L'Í'},
-	{"Icirc",	L'Î'},
-	{"Imacr",	L'Ī'},
-	{"Integ",	L'∫'},
-	{"Iota",	L'Ι'},
-	{"Kappa",	L'Κ'},
-	{"Koppa",	L'Ϟ'},
-	{"Lambda",	L'Λ'},
-	{"Lbar",	L'Ł'},
-	{"Mu",		L'Μ'},
-	{"Naira",	L'N'},		/* should have bar through */
-	{"Nplus",	L'N'},		/* should have plus above */
-	{"Ntilde",	L'Ñ'},
-	{"Nu",		L'Ν'},
-	{"Oacute",	L'Ó'},
-	{"Obar",	L'Ø'},
-	{"Ocirc",	L'Ô'},
-	{"Oe",		L'Œ'},
-	{"Omega",	L'Ω'},
-	{"Omicron",	L'Ο'},
-	{"Ouml",	L'Ö'},
-	{"Phi",		L'Φ'},
-	{"Pi",		L'Π'},
-	{"Psi",		L'Ψ'},
-	{"Rho",		L'Ρ'},
-	{"Sacute",	L'Ś'},
-	{"Sigma",	L'Σ'},
-	{"Summ",	L'∑'},
-	{"Tau",		L'Τ'},
-	{"Th",		L'Þ'},
-	{"Theta",	L'Θ'},
-	{"Tse",		L'Ц'},
-	{"Uacute",	L'Ú'},
-	{"Ucirc",	L'Û'},
-	{"Upsilon",	L'Υ'},
-	{"Uuml",	L'Ü'},
-	{"Wyn",		L'ƿ'},		/* wynn U+01BF */
-	{"Xi",		L'Ξ'},
-	{"Ygh",		L'Ʒ'},		/* Yogh	U+01B7 */
-	{"Zeta",	L'Ζ'},
-	{"Zh",		L'Ʒ'},		/* looks like Yogh. Cf "Sake" */
-	{"a",		L'a'},		/* ante */
-	{"aacute",	L'á'},
-	{"aang",	L'å'},
-	{"aasper",	MAAS},
-	{"abreve",	L'ă'},
-	{"acirc",	L'â'},
-	{"acute",		LACU},
-	{"aelig",		L'æ'},
-	{"agrave",	L'à'},
-	{"ahook",	L'ą'},
-	{"alenis",	MALN},
-	{"alpha",	L'α'},
-	{"amacr",	L'ā'},
-	{"amp",		L'&'},
-	{"and",		MAND},
-	{"ang",		LRNG},
-	{"angle",	L'∠'},
-	{"ankh",	L'☥'},		/* ankh U+2625 */
-	{"ante",	L'a'},		/* before (year) */
-	{"aonq",	MAOQ},
-	{"appreq",	L'≃'},
-	{"aquar",	L'♒'},
-	{"arDadfull",	L'ض'},		/* Dad U+0636 */
-	{"arHa",	L'ح'},		/* haa U+062D */
-	{"arTa",	L'ت'},		/* taa U+062A */
-	{"arain",	L'ع'},		/* ain U+0639 */
-	{"arainfull",	L'ع'},		/* ain U+0639 */
-	{"aralif",	L'ا'},		/* alef U+0627 */
-	{"arba",	L'ب'},		/* baa U+0628 */
-	{"arha",	L'ه'},		/* ha U+0647 */
-	{"aries",	L'♈'},
-	{"arnun",	L'ن'},		/* noon U+0646 */
-	{"arnunfull",	L'ن'},		/* noon U+0646 */
-	{"arpa",	L'ه'},		/* ha U+0647 */
-	{"arqoph",	L'ق'},		/* qaf U+0642 */
-	{"arshinfull",	L'ش'},		/* sheen U+0634 */
-	{"arta",	L'ت'},		/* taa U+062A */
-	{"artafull",	L'ت'},		/* taa U+062A */
-	{"artha",	L'ث'},		/* thaa U+062B */
-	{"arwaw",	L'و'},		/* waw U+0648 */
-	{"arya",	L'ي'},		/* ya U+064A */
-	{"aryafull",	L'ي'},		/* ya U+064A */
-	{"arzero",	L'٠'},		/* indic zero U+0660 */
-	{"asg",		L'ʒ'},		/* unicycle character. Cf "hallow" */
-	{"asper",	LASP},
-	{"assert",	L'⊢'},
-	{"astm",	L'⁂'},		/* asterism: should be upside down */
-	{"at",		L'@'},
-	{"atilde",	L'ã'},
-	{"auml",	L'ä'},
-	{"ayin",	L'ع'},		/* arabic ain U+0639 */
-	{"b1",		L'-'},		/* single bond */
-	{"b2",		L'='},		/* double bond */
-	{"b3",		L'≡'},		/* triple bond */
-	{"bbar",	L'ƀ'},		/* b with bar U+0180 */
-	{"beta",	L'β'},
-	{"bigobl",	L'/'},
-	{"blC",		L'C'},		/* should be black letter */
-	{"blJ",		L'J'},		/* should be black letter */
-	{"blU",		L'U'},		/* should be black letter */
-	{"blb",		L'b'},		/* should be black letter */
-	{"blozenge",	L'◊'},		/* U+25CA; should be black */
-	{"bly",		L'y'},		/* should be black letter */
-	{"bra",		MBRA},
-	{"brbl",	LBRB},
-	{"breve",	LBRV},
-	{"bslash",	L'\\'},
-	{"bsquare",	L'■'},		/* black square U+25A0 */
-	{"btril",	L'◀'},		/* U+25C0 */
-	{"btrir",	L'▶'},		/* U+25B6 */
-	{"c",		L'c'},		/* circa */
-	{"cab",		L'〉'},
-	{"cacute",	L'ć'},
-	{"canc",	L'♋'},
-	{"capr",	L'♑'},
-	{"caret",	L'^'},
-	{"cb",		L'}'},
-	{"cbigb",	L'}'},
-	{"cbigpren",	L')'},
-	{"cbigsb",	L']'},
-	{"cced",	L'ç'},
-	{"cdil",	LCED},
-	{"cdsb",	L'〛'},		/* ]] U+301b */
-	{"cent",	L'¢'},
-	{"chacek",	L'č'},
-	{"chi",		L'χ'},
-	{"circ",	LRNG},
-	{"circa",	L'c'},		/* about (year) */
-	{"circbl",	L'̥'},		/* ring below accent U+0325 */
-	{"circle",	L'○'},		/* U+25CB */
-	{"circledot",	L'⊙'},
-	{"click",	L'ʖ'},
-	{"club",	L'♣'},
-	{"comtime",	L'C'},
-	{"conj",	L'☌'},
-	{"cprt",	L'©'},
-	{"cq",		L'\''},
-	{"cqq",		L'”'},
-	{"cross",	L'✠'},		/* maltese cross U+2720 */
-	{"crotchet",	L'♩'},
-	{"csb",		L']'},
-	{"ctilde",	L'c'},		/* +tilde */
-	{"ctlig",	MLCT},
-	{"cyra",	L'а'},
-	{"cyre",	L'е'},
-	{"cyrhard",	L'ъ'},
-	{"cyrjat",	L'ѣ'},
-	{"cyrm",	L'м'},
-	{"cyrn",	L'н'},
-	{"cyrr",	L'р'},
-	{"cyrsoft",	L'ь'},
-	{"cyrt",	L'т'},
-	{"cyry",	L'ы'},
-	{"dag",		L'†'},
-	{"dbar",	L'đ'},
-	{"dblar",	L'⇋'},
-	{"dblgt",	L'≫'},
-	{"dbllt",	L'≪'},
-	{"dced",	L'd'},		/* +cedilla */
-	{"dd",		MDD},
-	{"ddag",	L'‡'},
-	{"ddd",		MDDD},
-	{"decr",	L'↓'},
-	{"deg",		L'°'},
-	{"dele",	L'd'},		/* should be dele */
-	{"delta",	L'δ'},
-	{"descnode",	L'☋'},		/* descending node U+260B */
-	{"diamond",	L'♢'},
-	{"digamma",	L'ϝ'},
-	{"div",		L'÷'},
-	{"dlessi",	L'ı'},
-	{"dlessj1",	L'j'},		/* should be dotless */
-	{"dlessj2",	L'j'},		/* should be dotless */
-	{"dlessj3",	L'j'},		/* should be dotless */
-	{"dollar",	L'$'},
-	{"dotab",	LDOT},
-	{"dotbl",	LDTB},
-	{"drachm",	L'ʒ'},
-	{"dubh",	L'-'},
-	{"eacute",	L'é'},
-	{"earth",	L'♁'},
-	{"easper",	MEAS},
-	{"ebreve",	L'ĕ'},
-	{"ecirc",	L'ê'},
-	{"edh",		L'ð'},
-	{"egrave",	L'è'},
-	{"ehacek",	L'ě'},
-	{"ehook",	L'ę'},
-	{"elem",	L'∊'},
-	{"elenis",	MELN},
-	{"em",		L'—'},
-	{"emacr",	L'ē'},
-	{"emem",	MEMM},
-	{"en",		L'–'},
-	{"epsilon",	L'ε'},
-	{"equil",	L'⇋'},
-	{"ergo",	L'∴'},
-	{"es",		MES},
-	{"eszett",	L'ß'},
-	{"eta",		L'η'},
-	{"eth",		L'ð'},
-	{"euml",	L'ë'},
-	{"expon",	L'↑'},
-	{"fact",	L'!'},
-	{"fata",	L'ɑ'},
-	{"fatpara",	L'¶'},		/* should have fatter, filled in bowl */
-	{"female",	L'♀'},
-	{"ffilig",	MLFFI},
-	{"fflig",	MLFF},
-	{"ffllig",	MLFFL},
-	{"filig",	MLFI},
-	{"flat",	L'♭'},
-	{"fllig",	MLFL},
-	{"frE",		L'E'},		/* should be curly */
-	{"frL",		L'L'},		/* should be curly */
-	{"frR",		L'R'},		/* should be curly */
-	{"frakB",	L'B'},		/* should have fraktur style */
-	{"frakG",	L'G'},
-	{"frakH",	L'H'},
-	{"frakI",	L'I'},
-	{"frakM",	L'M'},
-	{"frakU",	L'U'},
-	{"frakX",	L'X'},
-	{"frakY",	L'Y'},
-	{"frakh",	L'h'},
-	{"frbl",	LFRB},
-	{"frown",	LFRN},
-	{"fs",		L' '},
-	{"fsigma",	L'ς'},
-	{"gAacute",	L'Á'},		/* should be Α+acute */
-	{"gaacute",	L'α'},		/* +acute */
-	{"gabreve",	L'α'},		/* +breve */
-	{"gafrown",	L'α'},		/* +frown */
-	{"gagrave",	L'α'},		/* +grave */
-	{"gamacr",	L'α'},		/* +macron */
-	{"gamma",	L'γ'},
-	{"gauml",	L'α'},		/* +umlaut */
-	{"ge",		L'≧'},
-	{"geacute",	L'ε'},		/* +acute */
-	{"gegrave",	L'ε'},		/* +grave */
-	{"ghacute",	L'η'},		/* +acute */
-	{"ghfrown",	L'η'},		/* +frown */
-	{"ghgrave",	L'η'},		/* +grave */
-	{"ghmacr",	L'η'},		/* +macron */
-	{"giacute",	L'ι'},		/* +acute */
-	{"gibreve",	L'ι'},		/* +breve */
-	{"gifrown",	L'ι'},		/* +frown */
-	{"gigrave",	L'ι'},		/* +grave */
-	{"gimacr",	L'ι'},		/* +macron */
-	{"giuml",	L'ι'},		/* +umlaut */
-	{"glagjat",	L'ѧ'},
-	{"glots",	L'ˀ'},
-	{"goacute",	L'ο'},		/* +acute */
-	{"gobreve",	L'ο'},		/* +breve */
-	{"grave",	LGRV},
-	{"gt",		L'>'},
-	{"guacute",	L'υ'},		/* +acute */
-	{"gufrown",	L'υ'},		/* +frown */
-	{"gugrave",	L'υ'},		/* +grave */
-	{"gumacr",	L'υ'},		/* +macron */
-	{"guuml",	L'υ'},		/* +umlaut */
-	{"gwacute",	L'ω'},		/* +acute */
-	{"gwfrown",	L'ω'},		/* +frown */
-	{"gwgrave",	L'ω'},		/* +grave */
-	{"hacek",	LHCK},
-	{"halft",	L'⌈'},
-	{"hash",	L'#'},
-	{"hasper",	MHAS},
-	{"hatpath",	L'ֲ'},		/* hataf patah U+05B2 */
-	{"hatqam",	L'ֳ'},		/* hataf qamats U+05B3 */
-	{"hatseg",	L'ֱ'},		/* hataf segol U+05B1 */
-	{"hbar",	L'ħ'},
-	{"heart",	L'♡'},
-	{"hebaleph",	L'א'},		/* aleph U+05D0 */
-	{"hebayin",	L'ע'},		/* ayin U+05E2 */
-	{"hebbet",	L'ב'},		/* bet U+05D1 */
-	{"hebbeth",	L'ב'},		/* bet U+05D1 */
-	{"hebcheth",	L'ח'},		/* bet U+05D7 */
-	{"hebdaleth",	L'ד'},		/* dalet U+05D3 */
-	{"hebgimel",	L'ג'},		/* gimel U+05D2 */
-	{"hebhe",	L'ה'},		/* he U+05D4 */
-	{"hebkaph",	L'כ'},		/* kaf U+05DB */
-	{"heblamed",	L'ל'},		/* lamed U+05DC */
-	{"hebmem",	L'מ'},		/* mem U+05DE */
-	{"hebnun",	L'נ'},		/* nun U+05E0 */
-	{"hebnunfin",	L'ן'},		/* final nun U+05DF */
-	{"hebpe",	L'פ'},		/* pe U+05E4 */
-	{"hebpedag",	L'ף'},		/* final pe? U+05E3 */
-	{"hebqoph",	L'ק'},		/* qof U+05E7 */
-	{"hebresh",	L'ר'},		/* resh U+05E8 */
-	{"hebshin",	L'ש'},		/* shin U+05E9 */
-	{"hebtav",	L'ת'},		/* tav U+05EA */
-	{"hebtsade",	L'צ'},		/* tsadi U+05E6 */
-	{"hebwaw",	L'ו'},		/* vav? U+05D5 */
-	{"hebyod",	L'י'},		/* yod U+05D9 */
-	{"hebzayin",	L'ז'},		/* zayin U+05D6 */
-	{"hgz",		L'ʒ'},		/* ??? Cf "alet" */
-	{"hireq",	L'ִ'},		/* U+05B4 */
-	{"hlenis",	MHLN},
-	{"hook",	LOGO},
-	{"horizE",	L'E'},		/* should be on side */
-	{"horizP",	L'P'},		/* should be on side */
-	{"horizS",	L'∽'},
-	{"horizT",	L'⊣'},
-	{"horizb",	L'{'},		/* should be underbrace */
-	{"ia",		L'α'},
-	{"iacute",	L'í'},
-	{"iasper",	MIAS},
-	{"ib",		L'β'},
-	{"ibar",	L'ɨ'},
-	{"ibreve",	L'ĭ'},
-	{"icirc",	L'î'},
-	{"id",		L'δ'},
-	{"ident",	L'≡'},
-	{"ie",		L'ε'},
-	{"ifilig",	MLFI},
-	{"ifflig",	MLFF},
-	{"ig",		L'γ'},
-	{"igrave",	L'ì'},
-	{"ih",		L'η'},
-	{"ii",		L'ι'},
-	{"ik",		L'κ'},
-	{"ilenis",	MILN},
-	{"imacr",	L'ī'},
-	{"implies",	L'⇒'},
-	{"index",	L'☞'},
-	{"infin",	L'∞'},
-	{"integ",	L'∫'},
-	{"intsec",	L'∩'},
-	{"invpri",	L'ˏ'},
-	{"iota",	L'ι'},
-	{"iq",		L'ψ'},
-	{"istlig",	MLST},
-	{"isub",	L'ϵ'},		/* iota below accent */
-	{"iuml",	L'ï'},
-	{"iz",		L'ζ'},
-	{"jup",		L'♃'},
-	{"kappa",	L'κ'},
-	{"koppa",	L'ϟ'},
-	{"lambda",	L'λ'},
-	{"lar",		L'←'},
-	{"lbar",	L'ł'},
-	{"le",		L'≦'},
-	{"lenis",	LLEN},
-	{"leo",		L'♌'},
-	{"lhalfbr",	L'⌈'},
-	{"lhshoe",	L'⊃'},
-	{"libra",	L'♎'},
-	{"llswing",	MLLS},
-	{"lm",		L'ː'},
-	{"logicand",	L'∧'},
-	{"logicor",	L'∨'},
-	{"longs",	L'ʃ'},
-	{"lrar",	L'↔'},
-	{"lt",		L'<'},
-	{"ltappr",	L'≾'},
-	{"ltflat",	L'∠'},
-	{"lumlbl",	L'l'},		/* +umlaut below */
-	{"mac",		LMAC},
-	{"male",	L'♂'},
-	{"mc",		L'c'},		/* should be raised */
-	{"merc",	L'☿'},		/* mercury U+263F */
-	{"min",		L'−'},
-	{"moonfq",	L'☽'},		/* first quarter moon U+263D */
-	{"moonlq",	L'☾'},		/* last quarter moon U+263E */
-	{"msylab",	L'm'},		/* +sylab (ˌ) */
-	{"mu",		L'μ'},
-	{"nacute",	L'ń'},
-	{"natural",	L'♮'},
-	{"neq",		L'≠'},
-	{"nfacute",	L'′'},
-	{"nfasper",	L'ʽ'},
-	{"nfbreve",	L'˘'},
-	{"nfced",	L'¸'},
-	{"nfcirc",	L'ˆ'},
-	{"nffrown",	L'⌢'},
-	{"nfgra",	L'ˋ'},
-	{"nfhacek",	L'ˇ'},
-	{"nfmac",	L'¯'},
-	{"nftilde",	L'˜'},
-	{"nfuml",	L'¨'},
-	{"ng",		L'ŋ'},
-	{"not",		L'¬'},
-	{"notelem",	L'∉'},
-	{"ntilde",	L'ñ'},
-	{"nu",		L'ν'},
-	{"oab",		L'〈'},
-	{"oacute",	L'ó'},
-	{"oasper",	MOAS},
-	{"ob",		L'{'},
-	{"obar",	L'ø'},
-	{"obigb",	L'{'},		/* should be big */
-	{"obigpren",	L'('},
-	{"obigsb",	L'['},		/* should be big */
-	{"obreve",	L'ŏ'},
-	{"ocirc",	L'ô'},
-	{"odsb",	L'〚'},		/* [[ U+301A */
-	{"oelig",		L'œ'},
-	{"oeamp",	L'&'},
-	{"ograve",	L'ò'},
-	{"ohook",	L'o'},		/* +hook */
-	{"olenis",	MOLN},
-	{"omacr",	L'ō'},
-	{"omega",	L'ω'},
-	{"omicron",	L'ο'},
-	{"ope",		L'ɛ'},
-	{"opp",		L'☍'},
-	{"oq",		L'`'},
-	{"oqq",		L'“'},
-	{"or",		MOR},
-	{"osb",		L'['},
-	{"otilde",	L'õ'},
-	{"ouml",	L'ö'},
-	{"ounce",	L'℥'},		/* ounce U+2125 */
-	{"ovparen",	L'⌢'},		/* should be sideways ( */
-	{"p",		L'′'},
-	{"pa",		L'∂'},
-	{"page",	L'P'},
-	{"pall",	L'ʎ'},
-	{"paln",	L'ɲ'},
-	{"par",		PAR},
-	{"para",	L'¶'},
-	{"pbar",	L'p'},		/* +bar */
-	{"per",		L'℘'},		/* per U+2118 */
-	{"phi",		L'φ'},
-	{"phi2",	L'ϕ'},
-	{"pi",		L'π'},
-	{"pisces",	L'♓'},
-	{"planck",	L'ħ'},
-	{"plantinJ",	L'J'},		/* should be script */
-	{"pm",		L'±'},
-	{"pmil",	L'‰'},
-	{"pp",		L'″'},
-	{"ppp",		L'‴'},
-	{"prop",	L'∝'},
-	{"psi",		L'ψ'},
-	{"pstlg",	L'£'},
-	{"q",		L'?'},		/* should be raised */
-	{"qamets",	L'ֳ'},		/* U+05B3 */
-	{"quaver",	L'♪'},
-	{"rar",		L'→'},
-	{"rasper",	MRAS},
-	{"rdot",	L'·'},
-	{"recipe",	L'℞'},		/* U+211E */
-	{"reg",		L'®'},
-	{"revC",	L'Ɔ'},		/* open O U+0186 */
-	{"reva",	L'ɒ'},
-	{"revc",	L'ɔ'},
-	{"revope",	L'ɜ'},
-	{"revr",	L'ɹ'},
-	{"revsc",	L'˒'},		/* upside-down semicolon */
-	{"revv",	L'ʌ'},
-	{"rfa",		L'o'},		/* +hook (Cf "goal") */
-	{"rhacek",	L'ř'},
-	{"rhalfbr",	L'⌉'},
-	{"rho",		L'ρ'},
-	{"rhshoe",	L'⊂'},
-	{"rlenis",	MRLN},
-	{"rsylab",	L'r'},		/* +sylab */
-	{"runash",	L'F'},		/* should be runic 'ash' */
-	{"rvow",	L'˔'},
-	{"sacute",	L'ś'},
-	{"sagit",	L'♐'},
-	{"sampi",	L'ϡ'},
-	{"saturn",	L'♄'},
-	{"sced",	L'ş'},
-	{"schwa",	L'ə'},
-	{"scorpio",	L'♏'},
-	{"scrA",	L'A'},		/* should be script */
-	{"scrC",	L'C'},
-	{"scrE",	L'E'},
-	{"scrF",	L'F'},
-	{"scrI",	L'I'},
-	{"scrJ",	L'J'},
-	{"scrL",	L'L'},
-	{"scrO",	L'O'},
-	{"scrP",	L'P'},
-	{"scrQ",	L'Q'},
-	{"scrS",	L'S'},
-	{"scrT",	L'T'},
-	{"scrb",	L'b'},
-	{"scrd",	L'd'},
-	{"scrh",	L'h'},
-	{"scrl",	L'l'},
-	{"scruple",	L'℈'},		/* U+2108 */
-	{"sdd",		L'ː'},
-	{"sect",	L'§'},
-	{"semE",	L'∃'},
-	{"sh",		L'ʃ'},
-	{"shacek",	L'š'},
-	{"sharp",	L'♯'},
-	{"sheva",	L'ְ'},		/* U+05B0 */
-	{"shti",	L'ɪ'},
-	{"shtsyll",	L'∪'},
-	{"shtu",	L'ʊ'},
-	{"sidetri",	L'⊲'},
-	{"sigma",	L'σ'},
-	{"since",	L'∵'},
-	{"slge",	L'≥'},		/* should have slanted line under */
-	{"slle",	L'≤'},		/* should have slanted line under */
-	{"sm",		L'ˈ'},
-	{"smm",		L'ˌ'},
-	{"spade",	L'♠'},
-	{"sqrt",	L'√'},
-	{"square",	L'□'},		/* U+25A1 */
-	{"ssChi",	L'Χ'},		/* should be sans serif */
-	{"ssIota",	L'Ι'},
-	{"ssOmicron",	L'Ο'},
-	{"ssPi",	L'Π'},
-	{"ssRho",	L'Ρ'},
-	{"ssSigma",	L'Σ'},
-	{"ssTau",	L'Τ'},
-	{"star",	L'*'},
-	{"stlig",	MLST},
-	{"sup2",	L'⁲'},
-	{"supgt",	L'˃'},
-	{"suplt",	L'˂'},
-	{"sur",		L'ʳ'},
-	{"swing",	L'∼'},
-	{"tau",		L'τ'},
-	{"taur",	L'♉'},
-	{"th",		L'þ'},
-	{"thbar",	L'þ'},		/* +bar */
-	{"theta",	L'θ'},
-	{"thinqm",	L'?'},		/* should be thinner */
-	{"tilde",	LTIL},
-	{"times",	L'×'},
-	{"tri",		L'∆'},
-	{"trli",	L'‖'},
-	{"ts",		L' '},
-	{"uacute",	L'ú'},
-	{"uasper",	MUAS},
-	{"ubar",	L'u'},		/* +bar */
-	{"ubreve",	L'ŭ'},
-	{"ucirc",	L'û'},
-	{"udA",		L'∀'},
-	{"udT",		L'⊥'},
-	{"uda",		L'ɐ'},
-	{"udh",		L'ɥ'},
-	{"udqm",	L'¿'},
-	{"udpsi",	L'⋔'},
-	{"udtr",	L'∇'},
-	{"ugrave",	L'ù'},
-	{"ulenis",	MULN},
-	{"umacr",	L'ū'},
-	{"uml",		LUML},
-	{"undl",	L'ˍ'},		/* underline accent */
-	{"union",	L'∪'},
-	{"upsilon",	L'υ'},
-	{"uuml",	L'ü'},
-	{"vavpath",	L'ו'},		/* vav U+05D5 (+patah) */
-	{"vavsheva",	L'ו'},		/* vav U+05D5 (+sheva) */
-	{"vb",		L'|'},
-	{"vddd",	L'⋮'},
-	{"versicle2",	L'℣'},		/* U+2123 */
-	{"vinc",	L'¯'},
-	{"virgo",	L'♍'},
-	{"vpal",	L'ɟ'},
-	{"vvf",		L'ɣ'},
-	{"wasper",	MWAS},
-	{"wavyeq",	L'≈'},
-	{"wlenis",	MWLN},
-	{"wyn",		L'ƿ'},		/* wynn U+01BF */
-	{"xi",		L'ξ'},
-	{"yacute",	L'ý'},
-	{"ycirc",	L'ŷ'},
-	{"ygh",		L'ʒ'},
-	{"ymacr",	L'y'},		/* +macron */
-	{"yuml",	L'ÿ'},
-	{"zced",	L'z'},		/* +cedilla */
-	{"zeta",	L'ζ'},
-	{"zh",		L'ʒ'},
-	{"zhacek",	L'ž'},
-};
-/*
-   The following special characters don't have close enough
-   equivalents in Unicode, so aren't in the above table.
-	22n		2^(2^n) Cf Fermat
-	2on4		2/4
-	3on8		3/8
-	Bantuo		Bantu O. Cf Otshi-herero
-	Car		C with circular arrow on top
-	albrtime 	cut-time: C with vertical line
-	ardal		Cf dental
-	bantuo		Bantu o. Cf Otshi-herero
-	bbc1		single chem bond below
-	bbc2		double chem bond below
-	bbl1		chem bond like /
-	bbl2		chem bond like //
-	bbr1		chem bond like \
-	bbr2		chem bond \\
-	bcop1		copper symbol. Cf copper
-	bcop2		copper symbol. Cf copper
-	benchm		Cf benchmark
-	btc1		single chem bond above
-	btc2		double chem bond above
-	btl1		chem bond like \
-	btl2		chem bond like \\
-	btr1		chem bond like /
-	btr2		chem bond line //
-	burman		Cf Burman
-	devph		sanskrit letter. Cf ph
-	devrfls		sanskrit letter. Cf cerebral
-	duplong[12]	musical note
-	egchi		early form of chi
-	eggamma[12]	early form of gamma
-	egiota		early form of iota
-	egkappa		early form of kappa
-	eglambda	early form of lambda
-	egmu[12]	early form of mu
-	egnu[12]	early form of nu
-	egpi[123]	early form of pi
-	egrho[12]	early form of rho
-	egsampi		early form of sampi
-	egsan		early form of san
-	egsigma[12]	early form of sigma
-	egxi[123]	early form of xi
-	elatS		early form of S
-	elatc[12]	early form of C
-	elatg[12]	early form of G
-	glagjeri	Slavonic Glagolitic jeri
-	glagjeru	Slavonic Glagolitic jeru
-	hypolem		hypolemisk (line with underdot)
-	lhrbr		lower half }
-	longmord	long mordent
-	mbwvow		backwards scretched C. Cf retract.
-	mord		music symbol.  Cf mordent
-	mostra		Cf direct
-	ohgcirc		old form of circumflex
-	oldbeta		old form of β. Cf perturbate
-	oldsemibr[12]	old forms of semibreve. Cf prolation
-	ormg		old form of g. Cf G
-	para[12345]	form of ¶
-	pauseo		musical pause sign
-	pauseu		musical pause sign
-	pharyng		Cf pharyngal
-	ragr		Black letter ragged r
-	repetn		musical repeat. Cf retort
-	segno		musical segno sign
-	semain[12]	semitic ain
-	semhe		semitic he
-	semheth		semitic heth
-	semkaph		semitic kaph
-	semlamed[12]	semitic lamed
-	semmem		semitic mem
-	semnum		semitic nun
-	sempe		semitic pe
-	semqoph[123]	semitic qoph
-	semresh		semitic resh
-	semtav[1234]	semitic tav
-	semyod		semitic yod
-	semzayin[123]	semitic zayin
-	shtlong[12]	U with underbar. Cf glyconic
-	sigmatau	σ,τ combination
-	squaver		sixteenth note
-	sqbreve		square musical breve note
-	swast		swastika
-	uhrbr		upper half of big }
-	versicle1		Cf versicle
- */
-
-
-static Rune normtab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	' ',	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	SPCS,	L'\'',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/  L'0',	L'1',	L'2',	L'3',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'9',	L':',	L';',	TAGS,	L'=',	TAGE,	L'?',
-/*40*/  L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-static Rune phtab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'ˈ',	L'#',	L'$',	L'ˌ',	L'æ',	L'\'',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/  L'0',	L'1',	L'2',	L'ɜ',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'ø',	L'ː',	L';',	TAGS,	L'=',	TAGE,	L'?',
-/*40*/  L'ə',	L'ɑ',	L'B',	L'C',	L'ð',	L'ɛ',	L'F',	L'G',
-	L'H',	L'ɪ',	L'J',	L'K',	L'L',	L'M',	L'ŋ',	L'ɔ',
-/*50*/	L'P',	L'ɒ',	L'R',	L'ʃ',	L'θ',	L'ʊ',	L'ʌ',	L'W',
-	L'X',	L'Y',	L'ʒ',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-static Rune grtab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	SPCS,	L'\'',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/  L'0',	L'1',	L'2',	L'3',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'9',	L':',	L';',	TAGS,	L'=',	TAGE,	L'?',
-/*40*/  L'@',	L'Α',	L'Β',	L'Ξ',	L'Δ',	L'Ε',	L'Φ',	L'Γ',
-	L'Η',	L'Ι',	L'Ϛ',	L'Κ',	L'Λ',	L'Μ',	L'Ν',	L'Ο',
-/*50*/	L'Π',	L'Θ',	L'Ρ',	L'Σ',	L'Τ',	L'Υ',	L'V',	L'Ω',
-	L'Χ',	L'Ψ',	L'Ζ',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'α',	L'β',	L'ξ',	L'δ',	L'ε',	L'φ',	L'γ',
-	L'η',	L'ι',	L'ς',	L'κ',	L'λ',	L'μ',	L'ν',	L'ο',
-/*70*/	L'π',	L'θ',	L'ρ',	L'σ',	L'τ',	L'υ',	L'v',	L'ω',
-	L'χ',	L'ψ',	L'ζ',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-static Rune subtab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	SPCS,	L'\'',
-	L'₍',	L'₎',	L'*',	L'₊',	L',',	L'₋',	L'.',	L'/',
-/*30*/  L'₀',	L'₁',	L'₂',	L'₃',	L'₄',	L'₅',	L'₆',	L'₇',
-	L'₈',	L'₉',	L':',	L';',	TAGS,	L'₌',	TAGE,	L'?',
-/*40*/  L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-static Rune suptab[128] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	SPCS,	L'\'',
-	L'⁽',	L'⁾',	L'*',	L'⁺',	L',',	L'⁻',	L'.',	L'/',
-/*30*/  L'⁰',	L'ⁱ',	L'⁲',	L'⁳',	L'⁴',	L'⁵',	L'⁶',	L'⁷',
-	L'⁸',	L'⁹',	L':',	L';',	TAGS,	L'⁼',	TAGE,	L'?',
-/*40*/  L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-};
-
-static int	tagstarts;
-static char	tag[Buflen];
-static char	spec[Buflen];
-static Entry	curentry;
-#define cursize (curentry.end-curentry.start)
-
-static char	*getspec(char *, char *);
-static char	*gettag(char *, char *);
-
-/*
- * cmd is one of:
- *    'p': normal print
- *    'h': just print headwords
- *    'P': print raw
- */
-void
-pgwprintentry(Entry e, int cmd)
-{
-	char *p, *pe;
-	int t;
-	int32_t r, rprev, rlig;
-	Rune *transtab;
-
-	p = e.start;
-	pe = e.end;
-	transtab = normtab;
-	rprev = NONE;
-	changett(0, 0, 0);
-	curentry = e;
-	if(cmd == 'h')
-		outinhibit = 1;
-	while(p < pe) {
-		if(cmd == 'r') {
-			outchar(*p++);
-			continue;
-		}
-		r = transtab[(*p++)&0x7F];
-		if(r < NONE) {
-			/* Emit the rune, but buffer in case of ligature */
-			if(rprev != NONE)
-				outrune(rprev);
-			rprev = r;
-		} else if(r == SPCS) {
-			/* Start of special character name */
-			p = getspec(p, pe);
-			r = lookassoc(spectab, asize(spectab), spec);
-			if(r == -1) {
-				if(debug)
-					err("spec %ld %d %s",
-						e.doff, cursize, spec);
-				r = L'�';
-			}
-			if(r >= LIGS && r < LIGE) {
-				/* handle possible ligature */
-				rlig = liglookup(r, rprev);
-				if(rlig != NONE)
-					rprev = rlig;	/* overwrite rprev */
-				else {
-					/* could print accent, but let's not */
-					if(rprev != NONE) outrune(rprev);
-					rprev = NONE;
-				}
-			} else if(r >= MULTI && r < MULTIE) {
-				if(rprev != NONE) {
-					outrune(rprev);
-					rprev = NONE;
-				}
-				outrunes(multitab[r-MULTI]);
-			} else if(r == PAR) {
-				if(rprev != NONE) {
-					outrune(rprev);
-					rprev = NONE;
-				}
-				outnl(1);
-			} else {
-				if(rprev != NONE) outrune(rprev);
-				rprev = r;
-			}
-		} else if(r == TAGS) {
-			/* Start of tag name */
-			if(rprev != NONE) {
-				outrune(rprev);
-				rprev = NONE;
-			}
-			p = gettag(p, pe);
-			t = lookassoc(tagtab, asize(tagtab), tag);
-			if(t == -1) {
-				if(debug)
-					err("tag %ld %d %s",
-						e.doff, cursize, tag);
-				continue;
-			}
-			switch(t){
-			case Hw:
-				if(cmd == 'h') {
-					if(!tagstarts)
-						outchar(' ');
-					outinhibit = !tagstarts;
-				}
-				break;
-			case Sn:
-				if(tagstarts) {
-					outnl(2);
-				}
-				break;
-			case P:
-				outnl(tagstarts);
-				break;
-			case Col:
-			case Br:
-			case Blockquote:
-				if(tagstarts)
-					outnl(1);
-				break;
-			case U:
-				outchar('/');
-			}
-		}
-	}
-	if(cmd == 'h') {
-		outinhibit = 0;
-		outnl(0);
-	}
-}
-
-/*
- * Return offset into bdict where next webster entry after fromoff starts.
- * Webster entries start with <p><hw>
- */
-int32_t
-pgwnextoff(int32_t fromoff)
-{
-	int32_t a, n;
-	int c;
-
-	a = Bseek(bdict, fromoff, 0);
-	if(a != fromoff)
-		return -1;
-	n = 0;
-	for(;;) {
-		c = Bgetc(bdict);
-		if(c < 0)
-			break;
-		if(c == '<' && Bgetc(bdict) == 'p' && Bgetc(bdict) == '>') {
-			c = Bgetc(bdict);
-			if(c == '<') {
-				if (Bgetc(bdict) == 'h' && Bgetc(bdict) == 'w'
-					&& Bgetc(bdict) == '>')
-						n = 7;
-			}else if (c == '{')
-				n = 4;
-			if(n)
-				break;
-		}
-	}
-	return (Boffset(bdict)-n);
-}
-
-static char *prkey =
-"KEY TO THE PRONUNCIATION\n"
-"\n"
-"I. CONSONANTS\n"
-"b, d, f, k, l, m, n, p, t, v, z: usual English values\n"
-"\n"
-"g as in go (gəʊ)\n"
-"h  ...  ho! (həʊ)\n"
-"r  ...  run (rʌn), terrier (ˈtɛriə(r))\n"
-"(r)...  her (hɜː(r))\n"
-"s  ...  see (siː), success (səkˈsɜs)\n"
-"w  ...  wear (wɛə(r))\n"
-"hw ...  when (hwɛn)\n"
-"j  ...  yes (jɛs)\n"
-"θ  ...  thin (θin), bath (bɑːθ)\n"
-"ð  ...  then (ðɛn), bathe (beɪð)\n"
-"ʃ  ...  shop (ʃɒp), dish (dɪʃ)\n"
-"tʃ ...  chop (tʃɒp), ditch (dɪtʃ)\n"
-"ʒ  ...  vision (ˈvɪʒən), déjeuner (deʒøne)\n"
-"dʒ ...  judge (dʒʌdʒ)\n"
-"ŋ  ...  singing (ˈsɪŋɪŋ), think (θiŋk)\n"
-"ŋg ...  finger (ˈfiŋgə(r))\n"
-"\n"
-"Foreign\n"
-"ʎ as in It. seraglio (serˈraʎo)\n"
-"ɲ  ...  Fr. cognac (kɔɲak)\n"
-"x  ...  Ger. ach (ax), Sc. loch (lɒx)\n"
-"ç  ...  Ger. ich (ɪç), Sc. nicht (nɪçt)\n"
-"ɣ  ...  North Ger. sagen (ˈzaːɣən)\n"
-"c  ...  Afrikaans baardmannetjie (ˈbaːrtmanəci)\n"
-"ɥ  ...  Fr. cuisine (kɥizin)\n"
-"\n"
-"II. VOWELS AND DIPTHONGS\n"
-"\n"
-"Short\n"
-"ɪ as in pit (pɪt), -ness (-nɪs)\n"
-"ɛ  ...  pet (pɛt), Fr. sept (sɛt)\n"
-"æ  ...  pat (pæt)\n"
-"ʌ  ...  putt (pʌt)\n"
-"ɒ  ...  pot (pɒt)\n"
-"ʊ  ...  put (pʊt)\n"
-"ə  ...  another (əˈnʌðə(r))\n"
-"(ə)...  beaten (ˈbiːt(ə)n)\n"
-"i  ...  Fr. si (si)\n"
-"e  ...  Fr. bébé (bebe)\n"
-"a  ...  Fr. mari (mari)\n"
-"ɑ  ...  Fr. bâtiment (bɑtimã)\n"
-"ɔ  ...  Fr. homme (ɔm)\n"
-"o  ...  Fr. eau (o)\n"
-"ø  ...  Fr. peu (pø)\n"
-"œ  ...  Fr. boeuf (bœf), coeur (kœr)\n"
-"u  ...  Fr. douce (dus)\n"
-"ʏ  ...  Ger. Müller (ˈmʏlər)\n"
-"y  ...  Fr. du (dy)\n"
-"\n"
-"Long\n"
-"iː as in bean (biːn)\n"
-"ɑː ...  barn (bɑːn)\n"
-"ɔː ...  born (bɔːn)\n"
-"uː ...  boon (buːn)\n"
-"ɜː ...  burn (bɜːn)\n"
-"eː ...  Ger. Schnee (ʃneː)\n"
-"ɛː ...  Ger. Fähre (ˈfɛːrə)\n"
-"aː ...  Ger. Tag (taːk)\n"
-"oː ...  Ger. Sohn (zoːn)\n"
-"øː ...  Ger. Goethe (gøːtə)\n"
-"yː ...  Ger. grün (gryːn)\n"
-"\n"
-"Nasal\n"
-"ɛ˜, æ˜ as in Fr. fin (fɛ˜, fæ˜)\n"
-"ã  ...  Fr. franc (frã)\n"
-"ɔ˜ ...  Fr. bon (bɔ˜n)\n"
-"œ˜ ...  Fr. un (œ˜)\n"
-"\n"
-"Dipthongs, etc.\n"
-"eɪ as in bay (beɪ)\n"
-"aɪ ...  buy (baɪ)\n"
-"ɔɪ ...  boy (bɔɪ)\n"
-"əʊ ...  no (nəʊ)\n"
-"aʊ ...  now (naʊ)\n"
-"ɪə ...  peer (pɪə(r))\n"
-"ɛə ...  pair (pɛə(r))\n"
-"ʊə ...  tour (tʊə(r))\n"
-"ɔə ...  boar (bɔə(r))\n"
-"\n"
-"III. STRESS\n"
-"\n"
-"Main stress: ˈ preceding stressed syllable\n"
-"Secondary stress: ˌ preceding stressed syllable\n"
-"\n"
-"E.g.: pronunciation (prəˌnʌnsɪˈeɪʃ(ə)n)\n";
-/* TODO: find transcriptions of foreign consonents, œ, ʏ, nasals */
-
-void
-pgwprintkey(void)
-{
-	Bprint(bout, "%s", prkey);
-}
-
-/*
- * f points just after a '&', fe points at end of entry.
- * Accumulate the special name, starting after the &
- * and continuing until the next ';', in spec[].
- * Return pointer to char after ';'.
- */
-static char *
-getspec(char *f, char *fe)
-{
-	char *t;
-	int c, i;
-
-	t = spec;
-	i = sizeof spec;
-	while(--i > 0) {
-		c = *f++;
-		if(c == ';' || f == fe)
-			break;
-		*t++ = c;
-	}
-	*t = 0;
-	return f;
-}
-
-/*
- * f points just after '<'; fe points at end of entry.
- * Expect next characters from bin to match:
- *  [/][^ >]+( [^>=]+=[^ >]+)*>
- *      tag   auxname auxval
- * Accumulate the tag and its auxilliary information in
- * tag[], auxname[][] and auxval[][].
- * Set tagstarts=1 if the tag is 'starting' (has no '/'), else 0.
- * Set naux to the number of aux pairs found.
- * Return pointer to after final '>'.
- */
-static char *
-gettag(char *f, char *fe)
-{
-	char *t;
-	int c, i;
-
-	t = tag;
-	c = *f++;
-	if(c == '/')
-		tagstarts = 0;
-	else {
-		tagstarts = 1;
-		*t++ = c;
-	}
-	i = Buflen;
-	while(--i > 0) {
-		c = *f++;
-		if(c == '>' || f == fe)
-			break;
-		*t++ = c;
-	}
-	*t = 0;
-	return f;
-}

+ 0 - 6
sys/src/cmd/dict/rev.awk

@@ -1,6 +0,0 @@
-NF == 2	{
-		printf "%s\t%s\n", $2, $1
-	}
-NF != 2 {
-		print "ERROR " $0
-	}

+ 0 - 321
sys/src/cmd/dict/robert.c

@@ -1,321 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-/*
- * Robert Électronique.
- */
-
-enum
-{
-	CIT = MULTIE+1,	/* citation ptr followed by long int and ascii label */
-	BROM,		/* bold roman */
-	ITON,		/* start italic */
-	ROM,		/* roman */
-	SYM,		/* symbol font? */
-	HEL,		/* helvetica */
-	BHEL,		/* helvetica bold */
-	SMALL,		/* smaller? */
-	ITOFF,		/* end italic */
-	SUP,		/* following character is superscript */
-	SUB		/* following character is subscript */
-};
-
-static Rune intab[256] = {
-	/*0*/	/*1*/	/*2*/	/*3*/	/*4*/	/*5*/	/*6*/	/*7*/
-/*00*/	NONE,	L'☺',	L'☻',	L'♥',	L'♦',	L'♣',	L'♠',	L'•',
-	0x25d8,	L'ʘ',	L'\n',	L'♂',	L'♀',	L'♪',	0x266b,	L'※',
-/*10*/	L'⇨',	L'⇦',	L'↕',	L'‼',	L'¶',	L'§',	L'⁃',	L'↨',
-	L'↑',	L'↓',	L'→',	L'←',	L'⌙',	L'↔',	0x25b4,	0x25be,
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	L'&',	L''',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/	L'0',	L'1',	L'2',	L'3',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'9',	L':',	L';',	L'<',	L'=',	L'>',	L'?',
-/*40*/	L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	L'',
-/*80*/	L'Ç',	L'ü',	L'é',	L'â',	L'ä',	L'à',	L'å',	L'ç',
-	L'ê',	L'ë',	L'è',	L'ï',	L'î',	L'ì',	L'Ä',	L'Å',
-/*90*/	L'É',	L'æ',	L'Æ',	L'ô',	L'ö',	L'ò',	L'û',	L'ù',
-	L'ÿ',	L'Ö',	L'Ü',	L'¢',	L'£',	L'¥',	L'₧',	L'ʃ',
-/*a0*/	L'á',	L'í',	L'ó',	L'ú',	L'ñ',	L'Ñ',	L'ª',	L'º',
-	L'¿',	L'⌐',	L'¬',	L'½',	L'¼',	L'¡',	L'«',	L'»',
-/*b0*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*c0*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	CIT,	BROM,	NONE,	ITON,	ROM,	SYM,	HEL,	BHEL,
-/*d0*/	NONE,	SMALL,	ITOFF,	SUP,	SUB,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-/*e0*/	L'α',	L'ß',	L'γ',	L'π',	L'Σ',	L'σ',	L'µ',	L'τ',
-	L'Φ',	L'Θ',	L'Ω',	L'δ',	L'∞',	L'Ø',	L'ε',	L'∩',
-/*f0*/	L'≡',	L'±',	L'≥',	L'≤',	L'⌠',	L'⌡',	L'÷',	L'≈',
-	L'°',	L'∙',	L'·',	L'√',	L'ⁿ',	L'²',	L'∎',	L' ',
-};
-
-static Rune suptab[] = {
-	['0'] = L'⁰', ['1'] = L'ⁱ', ['2'] = L'⁲', ['3'] = L'⁳',
-	['4'] = L'⁴', ['5'] = L'⁵', ['6'] = L'⁶', ['7'] = L'⁷',
-	['8'] = L'⁸', ['9'] = L'⁹', ['+'] = L'⁺', ['-'] = L'⁻',
-	['='] = L'⁼', ['('] = L'⁽', [')'] = L'⁾', ['a'] = L'ª',
-	['n'] = L'ⁿ', ['o'] = L'º'
-};
-
-static Rune subtab[] = {
-	['0'] = L'₀', ['1'] = L'₁', ['2'] = L'₂', ['3'] = L'₃',
-	['4'] = L'₄', ['5'] = L'₅', ['6'] = L'₆', ['7'] = L'₇',
-	['8'] = L'₈', ['9'] = L'₉', ['+'] = L'₊', ['-'] = L'₋',
-	['='] = L'₌', ['('] = L'₍', [')'] = L'₎'
-};
-
-#define	GSHORT(p)	(((p)[0]<<8) | (p)[1])
-#define	GLONG(p)	(((p)[0]<<24) | ((p)[1]<<16) | ((p)[2]<<8) | (p)[3])
-
-static char	cfile[] = "/lib/dict/robert/cits.rob";
-static char	dfile[] = "/lib/dict/robert/defs.rob";
-static char	efile[] = "/lib/dict/robert/etym.rob";
-static char	kfile[] = "/lib/dict/robert/_phon";
-
-static Biobuf *	cb;
-static Biobuf *	db;
-static Biobuf *	eb;
-
-static Biobuf *	Bouvrir(char*);
-static void	citation(int, int);
-static void	robertprintentry(Entry*, Entry*, int);
-
-void
-robertindexentry(Entry e, int cmd)
-{
-	uint8_t *p = (uint8_t *)e.start;
-	int32_t ea, el, da, dl, fa;
-	Entry def, etym;
-
-	ea = GLONG(&p[0]);
-	el = GSHORT(&p[4]);
-	da = GLONG(&p[6]);
-	dl = GSHORT(&p[10]);
-	fa = GLONG(&p[12]);
-	USED(fa);
-
-	if(db == 0)
-		db = Bouvrir(dfile);
-	def.start = malloc(dl+1);
-	def.end = def.start + dl;
-	def.doff = da;
-	Bseek(db, da, 0);
-	Bread(db, def.start, dl);
-	*def.end = 0;
-	if(cmd == 'h'){
-		robertprintentry(&def, 0, cmd);
-	}else{
-		if(eb == 0)
-			eb = Bouvrir(efile);
-		etym.start = malloc(el+1);
-		etym.end = etym.start + el;
-		etym.doff = ea;
-		Bseek(eb, ea, 0);
-		Bread(eb, etym.start, el);
-		*etym.end = 0;
-		robertprintentry(&def, &etym, cmd);
-		free(etym.start);
-	}
-	free(def.start);
-}
-
-static void
-robertprintentry(Entry *def, Entry *etym, int cmd)
-{
-	uint8_t *p, *pe;
-	Rune r; int c, n;
-	int baseline = 0;
-	int lineno = 0;
-	int cit = 0;
-
-	p = (uint8_t *)def->start;
-	pe = (uint8_t *)def->end;
-	while(p < pe){
-		if(cmd == 'r'){
-			outchar(*p++);
-			continue;
-		}
-		c = *p++;
-		switch(r = intab[c]){
-		case BROM:
-		case ITON:
-		case ROM:
-		case SYM:
-		case HEL:
-		case BHEL:
-		case SMALL:
-		case ITOFF:
-		case NONE:
-			if(debug)
-				outprint("\\%.2x", c);
-			baseline = 0;
-			break;
-
-		case SUP:
-			baseline = 1;
-			break;
-
-		case SUB:
-			baseline = -1;
-			break;
-
-		case CIT:
-			n = p[0] | (p[1]<<8) | (p[2]<<16) | (p[3]<<24);
-			p += 4;
-			if(debug)
-				outprint("[%d]", n);
-			while(*p == ' ' || ('0'<=*p && *p<='9') || *p == '.'){
-				if(debug)
-					outchar(*p);
-				++p;
-			}
-			++cit;
-			outnl(2);
-			citation(n, cmd);
-			baseline = 0;
-			break;
-
-		case '\n':
-			outnl(0);
-			baseline = 0;
-			++lineno;
-			break;
-
-		default:
-			if(baseline > 0 && r < nelem(suptab))
-				r = suptab[r];
-			else if(baseline < 0 && r < nelem(subtab))
-				r = subtab[r];
-			if(cit){
-				outchar('\n');
-				cit = 0;
-			}
-			outrune(r);
-			baseline = 0;
-			break;
-		}
-		if(r == '\n'){
-			if(cmd == 'h')
-				break;
-			if(lineno == 1 && etym)
-				robertprintentry(etym, 0, cmd);
-		}
-	}
-	outnl(0);
-}
-
-static void
-citation(int addr, int cmd)
-{
-	Entry cit;
-
-	if(cb == 0)
-		cb = Bouvrir(cfile);
-	Bseek(cb, addr, 0);
-	cit.start = Brdline(cb, 0xc8);
-	cit.end = cit.start + Blinelen(cb) - 1;
-	cit.doff = addr;
-	*cit.end = 0;
-	robertprintentry(&cit, 0, cmd);
-}
-
-int32_t
-robertnextoff(int32_t fromoff)
-{
-	return (fromoff & ~15) + 16;
-}
-
-void
-robertprintkey(void)
-{
-	Biobuf *db;
-	char *l;
-
-	db = Bouvrir(kfile);
-	while((l = Brdline(db, '\n')) != nil)
-		Bwrite(bout, l, Blinelen(db));
-	Bterm(db);
-}
-
-void
-robertflexentry(Entry e, int cmd)
-{
-	uint8_t *p, *pe;
-	Rune r; int c;
-	int lineno = 1;
-
-	p = (uint8_t *)e.start;
-	pe = (uint8_t *)e.end;
-	while(p < pe){
-		if(cmd == 'r'){
-			Bputc(bout, *p++);
-			continue;
-		}
-		c = *p++;
-		r = intab[c];
-		if(r == '$')
-			r = '\n';
-		if(r == '\n'){
-			++lineno;
-			if(cmd == 'h' && lineno > 2)
-				break;
-		}
-		if(cmd == 'h' && lineno < 2)
-			continue;
-		if(r > MULTIE){
-			if(debug)
-				Bprint(bout, "\\%.2x", c);
-			continue;
-		}
-		if(r < Runeself)
-			Bputc(bout, r);
-		else
-			Bputrune(bout, r);
-	}
-	outnl(0);
-}
-
-int32_t
-robertnextflex(int32_t fromoff)
-{
-	int c;
-
-	if(Bseek(bdict, fromoff, 0) < 0)
-		return -1;
-	while((c = Bgetc(bdict)) >= 0){
-		if(c == '$')
-			return Boffset(bdict);
-	}
-	return -1;
-}
-
-static Biobuf *
-Bouvrir(char *fichier)
-{
-	Biobuf *db;
-
-	db = Bopen(fichier, OREAD);
-	if(db == 0){
-		fprint(2, "%s: impossible d'ouvrir %s: %r\n", argv0, fichier);
-		exits("ouvrir");
-	}
-	return db;
-}

+ 0 - 156
sys/src/cmd/dict/roget.c

@@ -1,156 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include <ctype.h>
-#include "dict.h"
-
-/* Roget's Thesaurus from project Gutenberg */
-
-static int32_t Last = 0;
-
-void
-rogetprintentry(Entry e, int cmd)
-{
-	int spc;
-	char c, *p;
-
-	spc = 0;
-	p = e.start;
-
-	if(cmd == 'h'){
-		while(!isspace(*p) && p < e.end)
-			p++;
-		while(strncmp(p, " -- ", 4) != 0 && p < e.end){
-			while(isspace(*p) && p < e.end)
-				p++;
-			if (*p == '[' || *p == '{'){
-				c = (*p == '[')? ']': '}';
-				while(*p != c && p < e.end)
-					p++;
-				p++;
-				continue;
-			}
-			if (isdigit(*p) || ispunct(*p)){
-				while(!isspace(*p) && p < e.end)
-					p++;
-				continue;
-			}
-
-
-			if (isspace(*p))
-				spc = 1;
-			else
-			if (spc){
-				outchar(' ');
-				spc = 0;
-			}
-
-			while(!isspace(*p) && p < e.end)
-				outchar(*p++);
-		}
-		return;
-	}
-
-	while(p < e.end && !isspace(*p))
-		p++;
-	while(p < e.end && isspace(*p))
-		p++;
-
-	while (p < e.end){
-		if (p < e.end -4 && strncmp(p, " -- ", 4) == 0){	/* first line */
-			outnl(2);
-			p += 4;
-			spc = 0;
-		}
-
-		if (p < e.end -2 && strncmp(p, "[ ", 4) == 0){		/* twiddle layout */
-			outchars(" [");
-			continue;
-		}
-
-		if (p < e.end -4 && strncmp(p, "&c (", 4) == 0){	/* usefull xref */
-			if (spc)
-				outchar(' ');
-			outchar('/');
-			while(p < e.end && *p != '(')
-				p++;
-			p++;
-			while(p < e.end && *p != ')')
-				outchar(*p++);
-			p++;
-			while(p < e.end && isspace(*p))
-				p++;
-			while(p < e.end && isdigit(*p))
-				p++;
-			outchar('/');
-			continue;
-		}
-
-		if (p < e.end -3 && strncmp(p, "&c ", 3) == 0){		/* less usefull xref */
-			while(p < e.end && !isdigit(*p))
-				p++;
-			while(p < e.end && isdigit(*p))
-				p++;
-			continue;
-		}
-
-		if (*p == '\n' && p < (e.end -1)){			/* their newlines */
-			spc = 0;
-			p++;
-			if (isspace(*p)){				/* their continuation line */
-				while (isspace(*p))
-					p++;
-				p--;
-			}
-			else{
-				outnl(2);
-			}
-		}
-		if (spc && *p != ';' && *p != '.' &&
-		    *p != ',' && !isspace(*p)){				/* drop spaces before punct */
-			spc = 0;
-			outchar(' ');
-		}
-		if (isspace(*p))
-			spc = 1;
-		else
-			outchar(*p);
-		p++;
-	}
-	outnl(0);
-}
-
-int32_t
-rogetnextoff(int32_t fromoff)
-{
-	int i;
-	int64_t l;
-	char *p;
-
-	Bseek(bdict, fromoff, 0);
-	Brdline(bdict, '\n');
-	while ((p = Brdline(bdict, '\n')) != nil){
-		l = Blinelen(bdict);
-		if (!isdigit(*p))
-			continue;
-		for (i = 0; i < l-4; i++)
-			if (strncmp(p+i, " -- ", 4) == 0)
-				return Boffset(bdict)-l;
-	}
-	return Boffset(bdict);
-}
-
-void
-rogetprintkey(void)
-{
-	Bprint(bout, "No pronunciation key.\n");
-}

+ 0 - 55
sys/src/cmd/dict/simple.c

@@ -1,55 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-/*
- * Routines for handling dictionaries in UTF, headword
- * separated from entry by tab, entries separated by newline.
- */
-
-void
-simpleprintentry(Entry e, int cmd)
-{
-	uint8_t *p, *pe;
-
-	p = (uint8_t *)e.start;
-	pe = (uint8_t *)e.end;
-	while(p < pe){
-		if(*p == '\t'){
-			if(cmd == 'h')
-				break;
-			else
-				outchar(' '), ++p;
-		}else if(*p == '\n')
-			break;
-		else
-			outchar(*p++);
-	}
-	outnl(0);
-}
-
-int32_t
-simplenextoff(int32_t fromoff)
-{
-	if(Bseek(bdict, fromoff, 0) < 0)
-		return -1;
-	if(Brdline(bdict, '\n') == 0)
-		return -1;
-	return Boffset(bdict);
-}
-
-void
-simpleprintkey(void)
-{
-	Bprint(bout, "No pronunciation key.\n");
-}

+ 0 - 212
sys/src/cmd/dict/slang.c

@@ -1,212 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-/* Possible tags */
-enum {
-	DF,		/* definition */
-	DX,		/* definition/example */
-	ET,		/* etymology */
-	EX,		/* example */
-	LA,		/* label */
-	ME,		/* main entry */
-	NU,		/* sense number */
-	PR,		/* pronunciation */
-	PS,		/* grammar part */
-	XR,		/* cross reference */
-	XX,		/* cross reference (whole entry) */
-};
-
-/* Assoc tables must be sorted on first field */
-
-static Assoc tagtab[] = {
-	{"df",	DF},
-	{"dx",	DX},
-	{"et",	ET},
-	{"ex",	EX},
-	{"la",	LA},
-	{"me",	ME},
-	{"nu",	NU},
-	{"pr",	PR},
-	{"ps",	PS},
-	{"xr",	XR},
-	{"xx",	XX},
-};
-static int32_t	sget(char *, char *, char **, char **);
-static void	soutpiece(char *, char *);
-
-void
-slangprintentry(Entry e, int cmd)
-{
-	char *p, *pe, *vs, *ve;
-	int32_t t;
-
-	p = e.start;
-	pe = e.end;
-	if(cmd == 'h') {
-		t = sget(p, pe, &vs, &ve);
-		if(t == ME)
-			soutpiece(vs, ve);
-		outnl(0);
-		return;
-	}
-	while(p < pe) {
-		switch(sget(p, pe, &vs, &ve)) {
-		case DF:
-			soutpiece(vs, ve);
-			outchars(".  ");
-			break;
-		case DX:
-			soutpiece(vs, ve);
-			outchars(".  ");
-			break;
-		case ET:
-			outchars("[");
-			soutpiece(vs, ve);
-			outchars("] ");
-			break;
-		case EX:
-			outchars("E.g., ");
-			soutpiece(vs, ve);
-			outchars(".  ");
-			break;
-		case LA:
-			outchars("(");
-			soutpiece(vs, ve);
-			outchars(") ");
-			break;
-		case ME:
-			outnl(0);
-			soutpiece(vs, ve);
-			outnl(0);
-			break;
-		case NU:
-			outnl(2);
-			soutpiece(vs, ve);
-			outchars(".  ");
-			break;
-		case PR:
-			outchars("[");
-			soutpiece(vs, ve);
-			outchars("] ");
-			break;
-		case PS:
-			outnl(1);
-			soutpiece(vs, ve);
-			outchars(". ");
-			break;
-		case XR:
-			outchars("See ");
-			soutpiece(vs, ve);
-			outchars(".  ");
-			break;
-		case XX:
-			outchars("See ");
-			soutpiece(vs, ve);
-			outchars(".  ");
-			break;
-		default:
-			ve = pe;	/* will end loop */
-			break;
-		}
-		p = ve;
-	}
-	outnl(0);
-}
-
-int32_t
-slangnextoff(int32_t fromoff)
-{
-	int32_t a;
-	char *p;
-
-	a = Bseek(bdict, fromoff, 0);
-	if(a < 0)
-		return -1;
-	for(;;) {
-		p = Brdline(bdict, '\n');
-		if(!p)
-			break;
-		if(p[0] == 'm' && p[1] == 'e' && p[2] == ' ')
-			return (Boffset(bdict)-Blinelen(bdict));
-	}
-	return -1;
-}
-
-void
-slangprintkey(void)
-{
-	Bprint(bout, "No key\n");
-}
-
-/*
- * Starting from b, find next line beginning with a tag.
- * Don't go past e, but assume *e==0.
- * Return tag value, or -1 if no more tags before e.
- * Set pvb to beginning of value (after tag).
- * Set pve to point at newline that ends the value.
- */
-static int32_t
-sget(char *b, char *e, char **pvb, char **pve)
-{
-	char *p;
-	char buf[3];
-	int32_t t, tans;
-
-	buf[2] = 0;
-	tans = -1;
-	for(p = b;;) {
-		if(p[2] == ' ') {
-			buf[0] = p[0];
-			buf[1] = p[1];
-			t = lookassoc(tagtab, asize(tagtab), buf);
-			if(t < 0) {
-				if(debug)
-					err("tag %s\n", buf);
-				p += 3;
-			} else {
-				if(tans < 0) {
-					p += 3;
-					tans = t;
-					*pvb = p;
-				} else {
-					*pve = p;
-					break;
-				}
-			}
-		}
-		p = strchr(p, '\n');
-		if(!p || ++p >= e) {
-			if(tans >= 0)
-				*pve = e-1;
-			break;
-		}
-	}
-	return tans;
-}
-
-static void
-soutpiece(char *b, char *e)
-{
-	int c, lastc;
-
-	lastc = 0;
-	while(b < e) {
-		c = *b++;
-		if(c == '\n')
-			c = ' ';
-		if(!(c == ' ' && lastc == ' ') && c != '@')
-			outchar(c);
-		lastc = c;
-	}
-}

+ 0 - 13
sys/src/cmd/dict/t.awk

@@ -1,13 +0,0 @@
-NF == 2	{
-		if($2 !~ / or / || $2 ~ /\(or/)
-			print $0
-		else {
-			n = split($2, a, / or /)
-			for(i = 1; i <= n; i++) {
-				printf "%s\t%s\n", $1, a[i]
-			}
-		}
-	}
-NF != 2 {
-	print $0
-	}

+ 0 - 95
sys/src/cmd/dict/thesaurus.c

@@ -1,95 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-void
-thesprintentry(Entry e, int cmd)
-{
-	char *p, *pe;
-	int c, i;
-
-	p = e.start;
-	pe = e.end;
-	while(p < pe) {
-		c = *p++;
-		if(cmd == 'r') {
-			outchar(c);
-			continue;
-		}
-		switch(c) {
-		case '*':
-			c = *p++;
-			if(cmd == 'h' && c != 'L') {
-				outnl(0);
-				return;
-			}
-			if(c == 'L' && cmd != 'h')
-				outnl(0);
-			if(c == 'S') {
-				outchar('(');
-				outchar(*p++);
-				outchar(')');
-			}
-			break;
-		case '#':
-			c = *p++;
-			i = *p++ - '0' - 1;
-			if(i < 0 || i > 4)
-				break;
-			switch(c) {
-			case 'a': outrune(L"áàâäa"[i]); break;
-			case 'e': outrune(L"éèêëe"[i]); break;
-			case 'o': outrune(L"óòôöo"[i]); break;
-			case 'c': outrune(L"ccccç"[i]); break;
-			default: outchar(c); break;
-			}
-			break;
-		case '+':
-		case '<':
-			break;
-		case ' ':
-			if(cmd == 'h' && *p == '*') {
-				outnl(0);
-				return;
-			}
-		default:
-			outchar(c);
-		}
-	}
-	outnl(0);
-}
-
-int32_t
-thesnextoff(int32_t fromoff)
-{
-	int32_t a;
-	char *p;
-
-	a = Bseek(bdict, fromoff, 0);
-	if(a < 0)
-		return -1;
-	for(;;) {
-		p = Brdline(bdict, '\n');
-		if(!p)
-			break;
-		if(p[0] == '*' && p[1] == 'L')
-			return (Boffset(bdict)-Blinelen(bdict));
-	}
-	return -1;
-}
-
-void
-thesprintkey(void)
-{
-	Bprint(bout, "No key\n");
-}

+ 0 - 559
sys/src/cmd/dict/utils.c

@@ -1,559 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-
-Dict dicts[] = {
-	{"oed",		"Oxford English Dictionary, 2nd Ed.",
-	 "/lib/dict/oed2",	"/lib/dict/oed2index",
-	 oednextoff,	oedprintentry,		oedprintkey},
-	{"ahd",		"American Heritage Dictionary, 2nd College Ed.",
-	 "/lib/ahd/DICT.DB",	"/lib/ahd/index",
-	 ahdnextoff,	ahdprintentry,		ahdprintkey},
-	{"pgw",		"Project Gutenberg Webster Dictionary",
-	 "/lib/dict/pgw",	"/lib/dict/pgwindex",
-	 pgwnextoff,	pgwprintentry,		pgwprintkey},
-	{"thesaurus",	"Collins Thesaurus",
-	 "/lib/dict/thesaurus",	"/lib/dict/thesindex",
-	 thesnextoff,	thesprintentry,	thesprintkey},
-	{"roget",		"Project Gutenberg Roget's Thesaurus",
-	 "/lib/dict/roget", "/lib/dict/rogetindex",
-	 rogetnextoff,	rogetprintentry,	rogetprintkey},
-
-	{"ce",		"Gendai Chinese->English",
-	 "/lib/dict/world/sansdata/sandic24.dat",
-	 "/lib/dict/world/sansdata/ceindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"ceh",		"Gendai Chinese->English (Hanzi index)",
-	 "/lib/dict/world/sansdata/sandic24.dat",
-	 "/lib/dict/world/sansdata/cehindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"ec",		"Gendai English->Chinese",
-	 "/lib/dict/world/sansdata/sandic24.dat",
-	 "/lib/dict/world/sansdata/ecindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-
-	{"dae",		"Gyldendal Danish->English",
-	 "/lib/dict/world/gylddata/sandic30.dat",
-	 "/lib/dict/world/gylddata/daeindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"eda",		"Gyldendal English->Danish",
-	 "/lib/dict/world/gylddata/sandic29.dat",
-	 "/lib/dict/world/gylddata/edaindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-
-	{"due",		"Wolters-Noordhoff Dutch->English",
-	 "/lib/dict/world/woltdata/sandic07.dat",
-	 "/lib/dict/world/woltdata/deindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"edu",		"Wolters-Noordhoff English->Dutch",
-	 "/lib/dict/world/woltdata/sandic06.dat",
-	 "/lib/dict/world/woltdata/edindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-
-	{"fie",		"WSOY Finnish->English",
-	 "/lib/dict/world/werndata/sandic32.dat",
-	 "/lib/dict/world/werndata/fieindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"efi",		"WSOY English->Finnish",
-	 "/lib/dict/world/werndata/sandic31.dat",
-	 "/lib/dict/world/werndata/efiindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-
-	{"fe",		"Collins French->English",
-	 "/lib/dict/fe",	"/lib/dict/feindex",
-	 pcollnextoff,	pcollprintentry,	pcollprintkey},
-	{"ef",		"Collins English->French",
-	 "/lib/dict/ef",	"/lib/dict/efindex",
-	 pcollnextoff,	pcollprintentry,	pcollprintkey},
-
-	{"ge",		"Collins German->English",
-	 "/lib/dict/ge",	"/lib/dict/geindex",
-	 pcollgnextoff,	pcollgprintentry,	pcollgprintkey},
-	{"eg",		"Collins English->German",
-	 "/lib/dict/eg",	"/lib/dict/egindex",
-	 pcollgnextoff,	pcollgprintentry,	pcollgprintkey},
-
-	{"ie",		"Collins Italian->English",
-	 "/lib/dict/ie",	"/lib/dict/ieindex",
-	 pcollnextoff,	pcollprintentry,	pcollprintkey},
-	{"ei",		"Collins English->Italian",
-	 "/lib/dict/ei",	"/lib/dict/eiindex",
-	 pcollnextoff,	pcollprintentry,	pcollprintkey},
-
-	{"je",		"Sanshusha Japanese->English",
-	 "/lib/dict/world/sansdata/sandic18.dat",
-	 "/lib/dict/world/sansdata/jeindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"jek",		"Sanshusha Japanese->English (Kanji index)",
-	 "/lib/dict/world/sansdata/sandic18.dat",
-	 "/lib/dict/world/sansdata/jekindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"ej",		"Sanshusha English->Japanese",
-	 "/lib/dict/world/sansdata/sandic18.dat",
-	 "/lib/dict/world/sansdata/ejindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-
-	{"tjeg",	"Sanshusha technical Japanese->English,German",
-	 "/lib/dict/world/sansdata/sandic16.dat",
-	 "/lib/dict/world/sansdata/tjegindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"tjegk",	"Sanshusha technical Japanese->English,German (Kanji index)",
-	 "/lib/dict/world/sansdata/sandic16.dat",
-	 "/lib/dict/world/sansdata/tjegkindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"tegj",	"Sanshusha technical English->German,Japanese",
-	 "/lib/dict/world/sansdata/sandic16.dat",
-	 "/lib/dict/world/sansdata/tegjindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"tgje",	"Sanshusha technical German->Japanese,English",
-	 "/lib/dict/world/sansdata/sandic16.dat",
-	 "/lib/dict/world/sansdata/tgjeindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-
-	{"ne",		"Kunnskapforlaget Norwegian->English",
-	 "/lib/dict/world/kunndata/sandic28.dat",
-	 "/lib/dict/world/kunndata/neindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"en",		"Kunnskapforlaget English->Norwegian",
-	 "/lib/dict/world/kunndata/sandic27.dat",
-	 "/lib/dict/world/kunndata/enindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-
-	{"re",		"Leon Ungier Russian->English",
-	 "/lib/dict/re",	"/lib/dict/reindex",
-	 simplenextoff,	simpleprintentry,	simpleprintkey},
-	{"er",		"Leon Ungier English->Russian",
-	 "/lib/dict/re",	"/lib/dict/erindex",
-	 simplenextoff,	simpleprintentry,	simpleprintkey},
-
-	{"se",		"Collins Spanish->English",
-	 "/lib/dict/se",	"/lib/dict/seindex",
-	 pcollnextoff,	pcollprintentry,	pcollprintkey},
-	{"es",		"Collins English->Spanish",
-	 "/lib/dict/es",	"/lib/dict/esindex",
-	 pcollnextoff,	pcollprintentry,	pcollprintkey},
-
-	{"swe",		"Esselte Studium Swedish->English",
-	 "/lib/dict/world/essedata/sandic34.dat",
-	 "/lib/dict/world/essedata/sweindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-	{"esw",		"Esselte Studium English->Swedish",
-	 "/lib/dict/world/essedata/sandic33.dat",
-	 "/lib/dict/world/essedata/eswindex",
-	 worldnextoff,	worldprintentry,	worldprintkey},
-
-	{"movie",	"Movies -- by title",
-	 "/lib/movie/data",	"/lib/dict/movtindex",
-	 movienextoff,	movieprintentry,	movieprintkey},
-	{"moviea",	"Movies -- by actor",
-	 "/lib/movie/data",	"/lib/dict/movaindex",
-	 movienextoff,	movieprintentry,	movieprintkey},
-	{"movied",	"Movies -- by director",
-	 "/lib/movie/data",	"/lib/dict/movdindex",
-	 movienextoff,	movieprintentry,	movieprintkey},
-
-	{"slang",	"English Slang",
-	 "/lib/dict/slang",	"/lib/dict/slangindex",
-	 slangnextoff,	slangprintentry,	slangprintkey},
-
-	{"robert",	"Robert Électronique",
-	 "/lib/dict/robert/_pointers",	"/lib/dict/robert/_index",
-	 robertnextoff,	robertindexentry,	robertprintkey},
-	{"robertv",	"Robert Électronique - formes des verbes",
-	 "/lib/dict/robert/flex.rob",	"/lib/dict/robert/_flexindex",
-	 robertnextflex,	robertflexentry,	robertprintkey},
-
-	{0, 0, 0, 0, 0}
-};
-
-typedef struct Lig Lig;
-struct Lig {
-	Rune	start;		/* accent rune */
-	Rune	*pairs;		/* <char,accented version> pairs */
-};
-
-static Lig ligtab[Nligs] = {
-[LACU-LIGS]	{L'´',	L"AÁaáCĆcćEÉeégģIÍiíıíLĹlĺNŃnńOÓoóRŔrŕSŚsśUÚuúYÝyýZŹzź"},
-[LGRV-LIGS]	{L'ˋ',	L"AÀaàEÈeèIÌiìıìOÒoòUÙuù"},
-[LUML-LIGS]	{L'¨',	L"AÄaäEËeëIÏiïOÖoöUÜuüYŸyÿ"},
-[LCED-LIGS]	{L'¸',	L"CÇcçGĢKĶkķLĻlļNŅnņRŖrŗSŞsşTŢtţ"},
-[LTIL-LIGS]	{L'˜',	L"AÃaãIĨiĩıĩNÑnñOÕoõUŨuũ"},
-[LBRV-LIGS]	{L'˘',	L"AĂaăEĔeĕGĞgğIĬiĭıĭOŎoŏUŬuŭ"},
-[LRNG-LIGS]	{L'˚',	L"AÅaåUŮuů"},
-[LDOT-LIGS]	{L'˙',	L"CĊcċEĖeėGĠgġIİLĿlŀZŻzż"},
-[LDTB-LIGS]	{L'.',	L""},
-[LFRN-LIGS]	{L'⌢',	L"AÂaâCĈcĉEÊeêGĜgĝHĤhĥIÎiîıîJĴjĵOÔoôSŜsŝUÛuûWŴwŵYŶyŷ"},
-[LFRB-LIGS]	{L'̯',	L""},
-[LOGO-LIGS]	{L'˛',	L"AĄaąEĘeęIĮiįıįUŲuų"},
-[LMAC-LIGS]	{L'¯',	L"AĀaāEĒeēIĪiīıīOŌoōUŪuū"},
-[LHCK-LIGS]	{L'ˇ',	L"CČcčDĎdďEĚeěLĽlľNŇnňRŘrřSŠsšTŤtťZŽzž"},
-[LASP-LIGS]	{L'ʽ',	L""},
-[LLEN-LIGS]	{L'ʼ',	L""},
-[LBRB-LIGS]	{L'̮',	L""}
-};
-
-Rune *multitab[Nmulti] = {
-[MAAS-MULTI]	L"ʽα",
-[MALN-MULTI]	L"ʼα",
-[MAND-MULTI]	L"and",
-[MAOQ-MULTI]	L"a/q",
-[MBRA-MULTI]	L"<|",
-[MDD-MULTI]	L"..",
-[MDDD-MULTI]	L"...",
-[MEAS-MULTI]	L"ʽε",
-[MELN-MULTI]	L"ʼε",
-[MEMM-MULTI]	L"——",
-[MHAS-MULTI]	L"ʽη",
-[MHLN-MULTI]	L"ʼη",
-[MIAS-MULTI]	L"ʽι",
-[MILN-MULTI]	L"ʼι",
-[MLCT-MULTI]	L"ct",
-[MLFF-MULTI]	L"ff",
-[MLFFI-MULTI]	L"ffi",
-[MLFFL-MULTI]	L"ffl",
-[MLFL-MULTI]	L"fl",
-[MLFI-MULTI]	L"fi",
-[MLLS-MULTI]	L"ɫɫ",
-[MLST-MULTI]	L"st",
-[MOAS-MULTI]	L"ʽο",
-[MOLN-MULTI]	L"ʼο",
-[MOR-MULTI]	L"or",
-[MRAS-MULTI]	L"ʽρ",
-[MRLN-MULTI]	L"ʼρ",
-[MTT-MULTI]	L"~~",
-[MUAS-MULTI]	L"ʽυ",
-[MULN-MULTI]	L"ʼυ",
-[MWAS-MULTI]	L"ʽω",
-[MWLN-MULTI]	L"ʼω",
-[MOE-MULTI]	L"oe",
-[MES-MULTI]	L"  ",
-};
-
-static Rune 	*ttabstack[20];
-static int	ntt;
-
-/*
- * tab is an array of n Assoc's, sorted by key.
- * Look for key in tab, and return corresponding val
- * or -1 if not there
- */
-int32_t
-lookassoc(Assoc *tab, int n, char *key)
-{
-	Assoc *q;
-	int32_t i, low, high;
-	int r;
-
-	for(low = -1, high = n; high > low+1; ){
-		i = (high+low)/2;
-		q = &tab[i];
-		if((r=strcmp(key, q->key))<0)
-			high = i;
-		else if(r == 0)
-			return q->val;
-		else
-			low=i;
-	}
-	return -1;
-}
-
-int32_t
-looknassoc(Nassoc *tab, int n, int32_t key)
-{
-	Nassoc *q;
-	int32_t i, low, high;
-
-	for(low = -1, high = n; high > low+1; ){
-		i = (high+low)/2;
-		q = &tab[i];
-		if(key < q->key)
-			high = i;
-		else if(key == q->key)
-			return q->val;
-		else
-			low=i;
-	}
-	return -1;
-}
-
-void
-err(char *fmt, ...)
-{
-	char buf[1000];
-	va_list v;
-
-	va_start(v, fmt);
-	vsnprint(buf, sizeof(buf), fmt, v);
-	va_end(v);
-	fprint(2, "%s: %s\n", argv0, buf);
-}
-
-/*
- * Write the rune r to bout, keeping track of line length
- * and breaking the lines (at blanks) when they get too long
- */
-void
-outrune(int32_t r)
-{
-	if(outinhibit)
-		return;
-	if(++linelen > breaklen && r == L' ') {
-		Bputc(bout, '\n');
-		linelen = 0;
-	} else
-		Bputrune(bout, r);
-}
-
-void
-outrunes(Rune *rp)
-{
-	Rune r;
-
-	while((r = *rp++) != 0)
-		outrune(r);
-}
-
-/* like outrune, but when arg is know to be a char */
-void
-outchar(int c)
-{
-	if(outinhibit)
-		return;
-	if(++linelen > breaklen && c == ' ') {
-		c ='\n';
-		linelen = 0;
-	}
-	Bputc(bout, c);
-}
-
-void
-outchars(char *s)
-{
-	char c;
-
-	while((c = *s++) != 0)
-		outchar(c);
-}
-
-void
-outprint(char *fmt, ...)
-{
-	char buf[1000];
-	va_list v;
-
-	va_start(v, fmt);
-	vsnprint(buf, sizeof(buf), fmt, v);
-	va_end(v);
-	outchars(buf);
-}
-
-void
-outpiece(char *b, char *e)
-{
-	int c, lastc;
-
-	lastc = 0;
-	while(b < e) {
-		c = *b++;
-		if(c == '\n')
-			c = ' ';
-		if(!(c == ' ' && lastc == ' '))
-			outchar(c);
-		lastc = c;
-	}
-}
-
-/*
- * Go to new line if not already there; indent if ind != 0.
- * If ind > 1, leave a blank line too.
- * Slight hack: assume if current line is only one or two
- * characters long, then they were spaces.
- */
-void
-outnl(int ind)
-{
-	if(outinhibit)
-		return;
-	if(ind) {
-		if(ind > 1) {
-			if(linelen > 2)
-				Bputc(bout, '\n');
-			Bprint(bout, "\n  ");
-		} else if(linelen == 0)
-			Bprint(bout, "  ");
-		else if(linelen == 1)
-			Bputc(bout, ' ');
-		else if(linelen != 2)
-			Bprint(bout, "\n  ");
-		linelen = 2;
-	} else {
-		if(linelen) {
-			Bputc(bout, '\n');
-			linelen = 0;
-		}
-	}
-}
-
-/*
- * Fold the runes in null-terminated rp.
- * Use the sort(1) definition of folding (uppercase to lowercase,
- * accented characters to corresponding unaccented chars)
- */
-void
-fold(Rune *rp)
-{
-	Rune r;
-
-	while((r = *rp) != 0) {
-		r = tobaserune(r);
-		if(isupperrune(r))
-			r = tolowerrune(r);
-		*rp++ = r;
-	}
-}
-
-/*
- * Like fold, but put folded result into new
- * (assumed to have enough space).
- * old is a regular expression, but we know that
- * metacharacters aren't affected
- */
-void
-foldre(char *new, char *old)
-{
-	Rune r;
-
-	while(*old) {
-		old += chartorune(&r, old);
-		r = tobaserune(r);
-		if(isupperrune(r))
-			r = tolowerrune(r);
-		new += runetochar(new, &r);
-	}
-	*new = 0;
-}
-
-/*
- *	acomp(s, t) returns:
- *		-2 if s strictly precedes t
- *		-1 if s is a prefix of t
- *		0 if s is the same as t
- *		1 if t is a prefix of s
- *		2 if t strictly precedes s
- */
-
-int
-acomp(Rune *s, Rune *t)
-{
-	int cs, ct;
-
-	for(;;) {
-		cs = *s;
-		ct = *t;
-		if(cs != ct)
-			break;
-		if(cs == 0)
-			return 0;
-		s++;
-		t++;
-	}
-	if(cs == 0)
-		return -1;
-	if(ct == 0)
-		return 1;
-	if(cs < ct)
-		return -2;
-	return 2;
-}
-
-/*
- * Copy null terminated Runes from 'from' to 'to'.
- */
-void
-runescpy(Rune *to, Rune *from)
-{
-	while((*to++ = *from++) != 0)
-		continue;
-}
-
-/*
- * Conversion of unsigned number to long, no overflow detection
- */
-int32_t
-runetol(Rune *r)
-{
-	int c;
-	int32_t n;
-
-	n = 0;
-	for(;; r++){
-		c = *r;
-		if(L'0'<=c && c<=L'9')
-			c -= '0';
-		else
-			break;
-		n = n*10 + c;
-	}
-	return n;
-}
-
-/*
- * See if there is a rune corresponding to the accented
- * version of r with accent acc (acc in [LIGS..LIGE-1]),
- * and return it if so, else return NONE.
- */
-Rune
-liglookup(Rune acc, Rune r)
-{
-	Rune *p;
-
-	if(acc < LIGS || acc >= LIGE)
-		return NONE;
-	for(p = ligtab[acc-LIGS].pairs; *p; p += 2)
-		if(*p == r)
-			return *(p+1);
-	return NONE;
-}
-
-/*
- * Maintain a translation table stack (a translation table
- * is an array of Runes indexed by bytes or 7-bit bytes).
- * If starting is true, push the curtab onto the stack
- * and return newtab; else pop the top of the stack and
- * return it.
- * If curtab is 0, initialize the stack and return.
- */
-Rune *
-changett(Rune *curtab, Rune *newtab, int starting)
-{
-	if(curtab == 0) {
-		ntt = 0;
-		return 0;
-	}
-	if(starting) {
-		if(ntt >= asize(ttabstack)) {
-			if(debug)
-				err("translation stack overflow");
-			return curtab;
-		}
-		ttabstack[ntt++] = curtab;
-		return newtab;
-	} else {
-		if(ntt == 0) {
-			if(debug)
-				err("translation stack underflow");
-			return curtab;
-		}
-		return ttabstack[--ntt];
-	}
-}

+ 0 - 193
sys/src/cmd/dict/world.c

@@ -1,193 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include "dict.h"
-#include "kuten.h"
-
-/*
- * Routines for handling dictionaries in the "Languages of the World"
- * format.  worldnextoff *must* be called with <address of valid entry>+1.
- */
-
-#define	GSHORT(p)	(((p)[0]<<8)|(p)[1])
-
-static void	putchar(int, int*);
-
-#define	NONE	0xffff
-
-/* adapted from jhelling@cs.ruu.nl (Jeroen Hellingman) */
-
-static Rune chartab[] = {
-
-/*00*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	L'\n',	L'æ',	L'ø',	L'å',	L'ä',	L'ö',
-/*10*/	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,	NONE,
-	NONE,	NONE,	NONE,	L'Æ',	L'Ø',	L'Å',	L'Ä',	L'Ö',
-
-/*20*/	L' ',	L'!',	L'"',	L'#',	L'$',	L'%',	L'&',	L'\'',
-	L'(',	L')',	L'*',	L'+',	L',',	L'-',	L'.',	L'/',
-/*30*/  L'0',	L'1',	L'2',	L'3',	L'4',	L'5',	L'6',	L'7',
-	L'8',	L'9',	L':',	L';',	L'<',	L'=',	L'>',	L'?',
-/*40*/  L'@',	L'A',	L'B',	L'C',	L'D',	L'E',	L'F',	L'G',
-	L'H',	L'I',	L'J',	L'K',	L'L',	L'M',	L'N',	L'O',
-/*50*/	L'P',	L'Q',	L'R',	L'S',	L'T',	L'U',	L'V',	L'W',
-	L'X',	L'Y',	L'Z',	L'[',	L'\\',	L']',	L'^',	L'_',
-/*60*/	L'`',	L'a',	L'b',	L'c',	L'd',	L'e',	L'f',	L'g',
-	L'h',	L'i',	L'j',	L'k',	L'l',	L'm',	L'n',	L'o',
-/*70*/	L'p',	L'q',	L'r',	L's',	L't',	L'u',	L'v',	L'w',
-	L'x',	L'y',	L'z',	L'{',	L'|',	L'}',	L'~',	NONE,
-
-/*80*/	L'Ç',	L'ü',	L'é',	L'â',	L'ä',	L'à',	L'å',	L'ç',
-	L'ê',	L'ë',	L'è',	L'ï',	L'î',	L'ì',	L'Ä',	L'Å',
-/*90*/	L'É',	L'æ',	L'Æ',	L'ô',	L'ö',	L'ò',	L'û',	L'ù',
-	L'ÿ',	L'Ö',	L'Ü',	L'¢',	L'£',	L'¥',	L'₧',	L'ʃ',
-/*a0*/	L'á',	L'í',	L'ó',	L'ú',	L'ñ',	L'Ñ',	L'ª',	L'º',
-	L'¿',	L'⌐',	L'¬',	L'½',	L'¼',	L'¡',	L'«',	L'»',
-
-/*b0*/	L'ɔ',	L'ə',	L'ð',	L'ʃ',	L'ʒ',	L'ŋ',	L'ɑ',	L'z',
-	L'ɪ',	L'ð',	L'ʒ',	L'ã',	L'œ',	L'ũ',	L'ʌ',	L'ɥ',
-/*c0*/	L'ʀ',	L'ë',	L'l',	L'ʌ',	L'õ',	L'ñ',	L'Œ',	NONE,
-	NONE,	L'S',	L's',	L'Z',	L'z',	NONE,	NONE,	NONE,
-/*d0*/	L'ß',	NONE,	NONE,	L'ā',	L'ī',	L'ū',	L'ē',	L'ō',
-	NONE,	NONE,	NONE,	L' ',	NONE,	NONE,	NONE,	NONE,
-
-/*e0*/	L'α',	L'β',	L'γ',	L'π',	L'Σ',	L'σ',	L'µ',	L'τ',
-	L'Φ',	L'Θ',	L'Ω',	L'δ',	L'∞',	L'Ø',	L'ε',	L'∩',
-/*f0*/	L'≡',	L'±',	L'≥',	L'≤',	L'⌠',	L'⌡',	L'÷',	L'≈',
-	L'°',	L'∙',	L'·',	NONE,	NONE,	NONE,	NONE,	NONE,
-};
-
-enum{ Utf, Kanahi, Kanalo=Kanahi+1, GBhi, GBlo=GBhi+1, };
-
-void
-worldprintentry(Entry e, int cmd)
-{
-	int nh, state[3];
-	uint8_t *p, *pe;
-
-	p = (uint8_t *)e.start;
-	pe = (uint8_t *)e.end;
-	nh = GSHORT(p);
-	p += 6;
-	if(cmd == 'h')
-		pe = p+nh;
-	state[0] = Utf;
-	state[1] = 0;
-	state[2] = 0;
-	while(p < pe){
-		if(cmd == 'r')
-			outchar(*p++);
-		else
-			putchar(*p++, state);
-	}
-	outnl(0);
-}
-
-int32_t
-worldnextoff(int32_t fromoff)
-{
-	int nh, np, nd;
-	uint8_t buf[6];
-
-	if(Bseek(bdict, fromoff-1, 0) < 0)
-		return -1;
-	if(Bread(bdict, buf, 6) != 6)
-		return -1;
-	nh = GSHORT(buf);
-	np = GSHORT(buf+2);
-	nd = GSHORT(buf+4);
-	return fromoff-1 + 6 + nh + np + nd;
-}
-
-static void
-putchar(int c, int *state)
-{
-	int xflag = 0;
-	Rune r;
-	int hi, lo;
-
-	switch(state[0]){
-	case Kanahi:
-	case GBhi:
-		if(CANS2JH(c) || c == 0xff){
-			state[0]++;
-			state[1] = c;
-			break;
-		}
-		/* fall through */
-	case Utf:
-		if(c == 0xfe){
-			state[0] = Kanahi;
-			break;
-		}else if(c == 0xff){
-			state[0] = GBhi;
-			break;
-		}
-		r = chartab[c];
-		if(r < 0x80 && state[2] == 0)
-			outchar(r);
-		else if(r == NONE){
-			switch(c){
-			case 0xfb:
-				if(!xflag){
-					state[2] = 1;
-					break;
-				}
-			case 0xfc:
-				if(!xflag){
-					state[2] = 0;
-					break;
-				}
-			case 0x10:
-			case 0xc7: case 0xc8:
-			case 0xd8: case 0xd9: case 0xda:
-			case 0xdc: case 0xdd: case 0xde: case 0xdf:
-			case 0xfd:
-				if(!xflag)
-					break;
-				/* fall through */
-			default:
-				outprint("\\%.2x", c);
-			}
-		}else if(state[2] == 0)
-			outrune(r);
-		break;
-	case Kanalo:
-	case GBlo:
-		if(state[1] == 0xff && c == 0xff){
-			state[0] = Utf;
-			break;
-		}
-		state[0]--;
-		hi = state[1];
-		lo = c;
-		S2J(hi, lo);		/* convert to JIS */
-		r = hi*100 + lo - 3232;	/* convert to jis208 */
-		if(state[0] == Kanahi && r < JIS208MAX)
-			r = tabjis208[r];
-		else if(state[0] == GBhi && r < GB2312MAX)
-			r = tabgb2312[r];
-		else
-			r = NONE;
-		if(r == NONE)
-			outprint("\\%.2x\\%.2x", state[1], c);
-		else
-			outrune(r);
-		break;
-	}
-}
-
-void
-worldprintkey(void)
-{
-	Bprint(bout, "No pronunciation key.\n");
-}

+ 0 - 168
sys/src/cmd/scuzz/cdaudio.c

@@ -1,168 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include <disk.h>
-#include "scsireq.h"
-
-extern Biobuf bout;
-
-int32_t
-SRcdpause(ScsiReq *rp, int resume)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdCDpause;
-	cmd[8] = resume;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRcdstop(ScsiReq *rp)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdCDstop;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-static int32_t
-_SRcdplay(ScsiReq *rp, int32_t lba, int32_t length)
-{
-	uint8_t cmd[12];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdCDplay;
-	cmd[2] = lba>>24;
-	cmd[3] = lba>>16;
-	cmd[4] = lba>>8;
-	cmd[5] = lba;
-	cmd[6] = length>>24;
-	cmd[7] = length>>16;
-	cmd[8] = length>>8;
-	cmd[9] = length;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-
-	return SRrequest(rp);
-}
-
-static struct {
-	int	trackno;
-	int32_t	lba;
-	int32_t	length;
-} tracks[100];
-static int ntracks;
-
-int32_t
-SRcdplay(ScsiReq *rp, int raw, int32_t start, int32_t length)
-{
-	uint8_t d[100*8+4], *p;
-	int lba, n, tdl;
-
-	if(raw || start == 0)
-		return _SRcdplay(rp, start, length);
-
-	ntracks = 0;
-	if(SRTOC(rp, d, sizeof(d), 0, 0) == -1){
-		if(rp->status == STok)
-			Bprint(&bout, "\t(probably empty)\n");
-		return -1;
-	}
-	tdl = (d[0]<<8)|d[1];
-	for(p = &d[4], n = tdl-2; n; n -= 8, p += 8){
-		tracks[ntracks].trackno = p[2];
-		lba = (p[4]<<24)|(p[5]<<16)|(p[6]<<8)|p[7];
-		tracks[ntracks].lba = lba;
-		if(ntracks > 0)
-			tracks[ntracks-1].length = lba-tracks[ntracks-1].lba;
-		ntracks++;
-	}
-	if(ntracks > 0)
-		tracks[ntracks-1].length = 0xFFFFFFFF;
-
-	for(n = 0; n < ntracks; n++){
-		if(start != tracks[n].trackno)
-			continue;
-		return _SRcdplay(rp, tracks[n].lba, tracks[n].length);
-	}
-
-	return -1;
-}
-
-int32_t
-SRcdload(ScsiReq *rp, int load, int slot)
-{
-	uint8_t cmd[12];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdCDload;
-	if(load)
-		cmd[4] = 0x03;
-	else
-		cmd[4] = 0x02;
-	cmd[8] = slot;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRcdstatus(ScsiReq *rp, uint8_t *list, int nbytes)
-{
-	uint8_t cmd[12];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdCDstatus;
-	cmd[8] = nbytes>>8;
-	cmd[9] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = list;
-	rp->data.count = nbytes;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-int32_t
-SRgetconf(ScsiReq *rp, uint8_t *list, int nbytes)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = Scmdgetconf;
-	cmd[7] = nbytes>>8;
-	cmd[8] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = list;
-	rp->data.count = nbytes;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}

+ 0 - 228
sys/src/cmd/scuzz/cdr.c

@@ -1,228 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <disk.h>
-#include "scsireq.h"
-
-int32_t
-SRblank(ScsiReq *rp, uint8_t type, uint8_t track)
-{
-	uint8_t cmd[12];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdBlank;
-	cmd[1] = type;
-	cmd[2] = track>>24;
-	cmd[3] = track>>16;
-	cmd[4] = track>>8;
-	cmd[5] = track;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRsynccache(ScsiReq *rp)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdSynccache;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRTOC(ScsiReq *rp, void *data, int nbytes, uint8_t format, uint8_t track)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdRTOC;
-	cmd[2] = format;
-	cmd[6] = track;
-	cmd[7] = nbytes>>8;
-	cmd[8] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = data;
-	rp->data.count = nbytes;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-int32_t
-SRrdiscinfo(ScsiReq *rp, void *data, int nbytes)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdRdiscinfo;
-	cmd[7] = nbytes>>8;
-	cmd[8] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = data;
-	rp->data.count = nbytes;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-int32_t
-SRrtrackinfo(ScsiReq *rp, void *data, int nbytes, int track)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdRtrackinfo;
-	cmd[1] = 0x01;
-	cmd[2] = track>>24;
-	cmd[3] = track>>16;
-	cmd[4] = track>>8;
-	cmd[5] = track;
-	cmd[7] = nbytes>>8;
-	cmd[8] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = data;
-	rp->data.count = nbytes;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-int32_t
-SRfwaddr(ScsiReq *rp, uint8_t track, uint8_t mode, uint8_t npa,
-	 uint8_t *data)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdFwaddr;
-	cmd[2] = track;
-	cmd[3] = mode;
-	cmd[7] = npa;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = data;
-	rp->data.count = MaxDirData;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-int32_t
-SRtreserve(ScsiReq *rp, int32_t nbytes)
-{
-	uint8_t cmd[10];
-	int32_t n;
-
-	if((nbytes % rp->lbsize)){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdTreserve;
-	n = nbytes/rp->lbsize;
-	cmd[5] = n>>24;
-	cmd[6] = n>>16;
-	cmd[7] = n>>8;
-	cmd[8] = n;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRtinfo(ScsiReq *rp, uint8_t track, uint8_t *data)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdTinfo;
-	cmd[5] = track;
-	cmd[8] = MaxDirData;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = data;
-	rp->data.count = MaxDirData;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-int32_t
-SRwtrack(ScsiReq *rp, void *buf, int32_t nbytes, uint8_t track, uint8_t mode)
-{
-	uint8_t cmd[10];
-	int32_t m, n;
-
-	if((nbytes % rp->lbsize) || nbytes > maxiosize){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdTwrite;
-	cmd[5] = track;
-	cmd[6] = mode;
-	n = nbytes/rp->lbsize;
-	cmd[7] = n>>8;
-	cmd[8] = n;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = buf;
-	rp->data.count = nbytes;
-	rp->data.write = 1;
-	m = SRrequest(rp);
-	if(m < 0)
-		return -1;
-	rp->offset += n;
-	return m;
-}
-
-int32_t
-SRmload(ScsiReq *rp, uint8_t code)
-{
-	uint8_t cmd[12];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdMload;
-	cmd[8] = code;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRfixation(ScsiReq *rp, uint8_t type)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdFixation;
-	cmd[8] = type;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}

+ 0 - 71
sys/src/cmd/scuzz/changer.c

@@ -1,71 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <disk.h>
-#include "scsireq.h"
-
-int32_t
-SReinitialise(ScsiReq *rp)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdEInitialise;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRmmove(ScsiReq *rp, int transport, int source, int destination, int invert)
-{
-	uint8_t cmd[12];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdMMove;
-	cmd[2] = transport>>8;
-	cmd[3] = transport;
-	cmd[4] = source>>8;
-	cmd[5] = source;
-	cmd[6] = destination>>8;
-	cmd[7] = destination;
-	cmd[10] = invert & 0x01;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRestatus(ScsiReq *rp, uint8_t type, uint8_t *list, int nbytes)
-{
-	uint8_t cmd[12];
-
-	memset(cmd, 0, sizeof(cmd));
-	cmd[0] = ScmdEStatus;
-	cmd[1] = type & 0x07;
-	cmd[4] = 0xFF;
-	cmd[5] = 0xFF;
-	cmd[7] = nbytes>>16;
-	cmd[8] = nbytes>>8;
-	cmd[9] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof(cmd);
-	rp->data.p = list;
-	rp->data.count = nbytes;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}

+ 0 - 15
sys/src/cmd/scuzz/mkfile

@@ -1,15 +0,0 @@
-</$objtype/mkfile
-
-TARG =	scuzz
-
-HFILES = scsireq.h
-OFILES = scuzz.$O cdaudio.$O cdr.$O changer.$O scsireq.$O sense.$O
-
-BIN=/$objtype/bin
-UPDATE=\
-	mkfile\
-	$HFILES\
-	${OFILES:%.$O=%.c}\
-	${TARG:%=/386/bin/%}\
-
-</sys/src/cmd/mkone

+ 0 - 54
sys/src/cmd/scuzz/mo.words

@@ -1,54 +0,0 @@
-/*
- * these scuzz modesense commands return the following for an hp worm drive:
- *
- * modesense
- *  Header
- *     00 5E 02 90 00 00 00 08
- *  Block 0
- *     00 13 47 70 00 00 08 00    (density 00 blocks 1263472 length 2048)
- *  Page 01 10
- *     80 05 00 00 00 00 05 00 00 00
- *  Page 02 14
- *     20 20 00 00 00 00 00 00 00 20 00 00 00 00
- *  Page 08 10
- *     06 00 00 40 00 01 00 01 00 40
- *  Page 0A 6
- *     00 00 00 00 00 00
- *  Page 0B 6
- *     00 00 02 03 00 00
- *  Page 20 10
- *     04 00 00 00 00 00 00 00 00 18
- *  Page 21 10
- *     00 00 01 00 02 00 00 00 00 00
- *  Page 00 0
- *
- * modesense6
- *  Header
- *     5B 02 90 08
- *  Block 0
- *     00 13 47 70 00 00 08 00    (density 00 blocks 1263472 length 2048)
- *  Page 01 10
- *     80 05 00 00 00 00 05 00 00 00
- *  Page 02 14
- *     20 20 00 00 00 00 00 00 00 20 00 00 00 00
- *  Page 08 10
- *     06 00 00 40 00 01 00 01 00 40
- *  Page 0A 6
- *     00 00 00 00 00 00
- *  Page 0B 6
- *     00 00 02 03 00 00
- *  Page 20 10
- *     04 00 00 00 00 00 00 00 00 18
- *  Page 21 10
- *     00 00 01 00 02 00 00 00 00 00
- *  Page 00 0
- *     Page 00 0
- *    ok 92
- *
- * the drive is:
- *
- * # cat ctl
- * inquiry HP      C1113J          1.099904323710    8XMO  
- * geometry 1263472 2048
- * part data 0 1263472
- */

+ 0 - 765
sys/src/cmd/scuzz/scsireq.c

@@ -1,765 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-/*
- * BUGS:
- *	no luns
- *	and incomplete in many other ways
- */
-#include <disk.h>
-#include "scsireq.h"
-
-enum {
-	Debug = 0,
-};
-
-/*
- * exabyte tape drives, at least old ones like the 8200 and 8505,
- * are dumb: you have to read the exact block size on the tape,
- * they don't take 10-byte SCSI commands, and various other fine points.
- */
-extern int exabyte, force6bytecmds;
-
-static int debug = Debug;
-
-int32_t
-SRready(ScsiReq *rp)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRrewind(ScsiReq *rp)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdRewind;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	if(SRrequest(rp) >= 0){
-		rp->offset = 0;
-		return 0;
-	}
-	return -1;
-}
-
-int32_t
-SRreqsense(ScsiReq *rp)
-{
-	uint8_t cmd[6];
-	ScsiReq req;
-	int32_t status;
-
-	if(rp->status == Status_SD){
-		rp->status = STok;
-		return 0;
-	}
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdRsense;
-	cmd[4] = sizeof(req.sense);
-	memset(&req, 0, sizeof(req));
-	if(rp->flags&Fusb)
-		req.flags |= Fusb;
-	req.fd = rp->fd;
-	req.umsc = rp->umsc;
-	req.cmd.p = cmd;
-	req.cmd.count = sizeof cmd;
-	req.data.p = rp->sense;
-	req.data.count = sizeof(rp->sense);
-	req.data.write = 0;
-	status = SRrequest(&req);
-	rp->status = req.status;
-	return status;
-}
-
-int32_t
-SRformat(ScsiReq *rp)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdFormat;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = cmd;
-	rp->data.count = 6;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-int32_t
-SRrblimits(ScsiReq *rp, uint8_t *list)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdRblimits;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = list;
-	rp->data.count = 6;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-static int
-dirdevrw(ScsiReq *rp, uint8_t *cmd, int32_t nbytes)
-{
-	int32_t n;
-
-	n = nbytes / rp->lbsize;
-	if(rp->offset <= Max24off && n <= 256 && (rp->flags & Frw10) == 0){
-		PUTBE24(cmd+1, rp->offset);
-		cmd[4] = n;
-		cmd[5] = 0;
-		return 6;
-	}
-	cmd[0] |= ScmdExtread;
-	cmd[1] = 0;
-	PUTBELONG(cmd+2, rp->offset);
-	cmd[6] = 0;
-	cmd[7] = n>>8;
-	cmd[8] = n;
-	cmd[9] = 0;
-	return 10;
-}
-
-static int
-seqdevrw(ScsiReq *rp, uint8_t *cmd, int32_t nbytes)
-{
-	int32_t n;
-
-	/* don't set Cmd1sili; we want the ILI bit instead of a fatal error */
-	cmd[1] = rp->flags&Fbfixed? Cmd1fixed: 0;
-	n = nbytes / rp->lbsize;
-	PUTBE24(cmd+2, n);
-	cmd[5] = 0;
-	return 6;
-}
-
-int32_t
-SRread(ScsiReq *rp, void *buf, int32_t nbytes)
-{
-	uint8_t cmd[10];
-	int32_t n;
-
-	if((nbytes % rp->lbsize) || nbytes > maxiosize){
-		if(debug)
-			if (nbytes % rp->lbsize)
-				fprint(2, "scuzz: i/o size %ld %% %ld != 0\n",
-					nbytes, rp->lbsize);
-			else
-				fprint(2, "scuzz: i/o size %ld > %ld\n",
-					nbytes, maxiosize);
-		rp->status = Status_BADARG;
-		return -1;
-	}
-
-	/* set up scsi read cmd */
-	cmd[0] = ScmdRead;
-	if(rp->flags & Fseqdev)
-		rp->cmd.count = seqdevrw(rp, cmd, nbytes);
-	else
-		rp->cmd.count = dirdevrw(rp, cmd, nbytes);
-	rp->cmd.p = cmd;
-	rp->data.p = buf;
-	rp->data.count = nbytes;
-	rp->data.write = 0;
-
-	/* issue it */
-	n = SRrequest(rp);
-	if(n != -1){			/* it worked? */
-		rp->offset += n / rp->lbsize;
-		return n;
-	}
-
-	/* request failed; maybe we just read a short record? */
-	if (exabyte) {
-		fprint(2, "read error\n");
-		rp->status = STcheck;
-		return n;
-	}
-	if(rp->status != Status_SD || !(rp->sense[0] & Sd0valid))
-		return -1;
-	/* compute # of bytes not read */
-	n = GETBELONG(rp->sense+3) * rp->lbsize;
-	if (debug)
-		fprint(2,
-	"SRread: request failed with sense data; sense byte count %ld\n",
-			n);
-	if(!(rp->flags & Fseqdev))
-		return -1;
-
-	/* device is a tape or something similar */
-	if (rp->sense[2] == Sd2filemark || rp->sense[2] == 0x08 ||
-	    rp->sense[2] & Sd2ili && n > 0)
-		rp->data.count = nbytes - n;
-	else
-		return -1;
-	n = rp->data.count;
-	if (!rp->readblock++ || debug)
-		fprint(2, "SRread: tape data count %ld%s\n", n,
-			(rp->sense[2] & Sd2ili? " with ILI": ""));
-	rp->status = STok;
-	rp->offset += n / rp->lbsize;
-	return n;
-}
-
-int32_t
-SRwrite(ScsiReq *rp, void *buf, int32_t nbytes)
-{
-	uint8_t cmd[10];
-	int32_t n;
-
-	if((nbytes % rp->lbsize) || nbytes > maxiosize){
-		if(debug)
-			if (nbytes % rp->lbsize)
-				fprint(2, "scuzz: i/o size %ld %% %ld != 0\n",
-					nbytes, rp->lbsize);
-			else
-				fprint(2, "scuzz: i/o size %ld > %ld\n",
-					nbytes, maxiosize);
-		rp->status = Status_BADARG;
-		return -1;
-	}
-
-	/* set up scsi write cmd */
-	cmd[0] = ScmdWrite;
-	if(rp->flags & Fseqdev)
-		rp->cmd.count = seqdevrw(rp, cmd, nbytes);
-	else
-		rp->cmd.count = dirdevrw(rp, cmd, nbytes);
-	rp->cmd.p = cmd;
-	rp->data.p = buf;
-	rp->data.count = nbytes;
-	rp->data.write = 1;
-
-	/* issue it */
-	if((n = SRrequest(rp)) == -1){
-		if (exabyte) {
-			fprint(2, "write error\n");
-			rp->status = STcheck;
-			return n;
-		}
-		if(rp->status != Status_SD || rp->sense[2] != Sd2eom)
-			return -1;
-		if(rp->sense[0] & Sd0valid){
-			n -= GETBELONG(rp->sense+3) * rp->lbsize;
-			rp->data.count = nbytes - n;
-		}
-		else
-			rp->data.count = nbytes;
-		n = rp->data.count;
-	}
-	rp->offset += n / rp->lbsize;
-	return n;
-}
-
-int32_t
-SRseek(ScsiReq *rp, int32_t offset, int type)
-{
-	uint8_t cmd[10];
-
-	switch(type){
-
-	case 0:
-		break;
-
-	case 1:
-		offset += rp->offset;
-		if(offset >= 0)
-			break;
-		/*FALLTHROUGH*/
-
-	default:
-		if(debug)
-			fprint(2, "scuzz: seek failed\n");
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	memset(cmd, 0, sizeof cmd);
-	if(offset <= Max24off && (rp->flags & Frw10) == 0){
-		cmd[0] = ScmdSeek;
-		PUTBE24(cmd+1, offset & Max24off);
-		rp->cmd.count = 6;
-	}else{
-		cmd[0] = ScmdExtseek;
-		PUTBELONG(cmd+2, offset);
-		rp->cmd.count = 10;
-	}
-	rp->cmd.p = cmd;
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	SRrequest(rp);
-	if(rp->status == STok)
-		return rp->offset = offset;
-	return -1;
-}
-
-int32_t
-SRfilemark(ScsiReq *rp, uint32_t howmany)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdFmark;
-	PUTBE24(cmd+2, howmany);
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRspace(ScsiReq *rp, uint8_t code, int32_t howmany)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdSpace;
-	cmd[1] = code;
-	PUTBE24(cmd+2, howmany);
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	/*
-	 * what about rp->offset?
-	 */
-	return SRrequest(rp);
-}
-
-int32_t
-SRinquiry(ScsiReq *rp)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdInq;
-	cmd[4] = sizeof rp->inquiry;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	memset(rp->inquiry, 0, sizeof rp->inquiry);
-	rp->data.p = rp->inquiry;
-	rp->data.count = sizeof rp->inquiry;
-	rp->data.write = 0;
-	if(SRrequest(rp) >= 0){
-		rp->flags |= Finqok;
-		return 0;
-	}
-	rp->flags &= ~Finqok;
-	return -1;
-}
-
-int32_t
-SRmodeselect6(ScsiReq *rp, uint8_t *list, int32_t nbytes)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdMselect6;
-	if((rp->flags & Finqok) && (rp->inquiry[2] & 0x07) >= 2)
-		cmd[1] = 0x10;
-	cmd[4] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = list;
-	rp->data.count = nbytes;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRmodeselect10(ScsiReq *rp, uint8_t *list, int32_t nbytes)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof cmd);
-	if((rp->flags & Finqok) && (rp->inquiry[2] & 0x07) >= 2)
-		cmd[1] = 0x10;
-	cmd[0] = ScmdMselect10;
-	cmd[7] = nbytes>>8;
-	cmd[8] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = list;
-	rp->data.count = nbytes;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRmodesense6(ScsiReq *rp, uint8_t page, uint8_t *list, int32_t nbytes)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdMsense6;
-	cmd[2] = page;
-	cmd[4] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = list;
-	rp->data.count = nbytes;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-int32_t
-SRmodesense10(ScsiReq *rp, uint8_t page, uint8_t *list, int32_t nbytes)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdMsense10;
-	cmd[2] = page;
-	cmd[7] = nbytes>>8;
-	cmd[8] = nbytes;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = list;
-	rp->data.count = nbytes;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-int32_t
-SRstart(ScsiReq *rp, uint8_t code)
-{
-	uint8_t cmd[6];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdStart;
-	cmd[4] = code;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = cmd;
-	rp->data.count = 0;
-	rp->data.write = 1;
-	return SRrequest(rp);
-}
-
-int32_t
-SRrcapacity(ScsiReq *rp, uint8_t *data)
-{
-	uint8_t cmd[10];
-
-	memset(cmd, 0, sizeof cmd);
-	cmd[0] = ScmdRcapacity;
-	rp->cmd.p = cmd;
-	rp->cmd.count = sizeof cmd;
-	rp->data.p = data;
-	rp->data.count = 8;
-	rp->data.write = 0;
-	return SRrequest(rp);
-}
-
-static int32_t
-request(int fd, ScsiPtr *cmd, ScsiPtr *data, int *status)
-{
-	int32_t n, r;
-	char buf[16];
-
-	/* this was an experiment but it seems to be a good idea */
-	*status = STok;
-
-	/* send SCSI command */
-	if(write(fd, cmd->p, cmd->count) != cmd->count){
-		fprint(2, "scsireq: write cmd: %r\n");
-		*status = Status_SW;
-		return -1;
-	}
-
-	/* read or write actual data */
-	werrstr("");
-	if(data->write)
-		n = write(fd, data->p, data->count);
-	else {
-		n = read(fd, data->p, data->count);
-		if (n < 0)
-			memset(data->p, 0, data->count);
-		else if (n < data->count)
-			memset(data->p + n, 0, data->count - n);
-	}
-	if (n != data->count && n <= 0) {
-		if (debug)
-			fprint(2,
-	"request: tried to %s %ld bytes of data for cmd 0x%x but got %r\n",
-				(data->write? "write": "read"),
-				data->count, cmd->p[0]);
-	} else if (n != data->count && (data->write || debug))
-		fprint(2, "request: %s %ld of %ld bytes of actual data\n",
-			(data->write? "wrote": "read"), n, data->count);
-
-	/* read status */
-	buf[0] = '\0';
-	r = read(fd, buf, sizeof buf-1);
-	if(exabyte && r <= 0 || !exabyte && r < 0){
-		fprint(2, "scsireq: read status: %r\n");
-		*status = Status_SW;
-		return -1;
-	}
-	if (r >= 0)
-		buf[r] = '\0';
-	*status = atoi(buf);
-	if(n < 0 && (exabyte || *status != STcheck))
-		fprint(2, "scsireq: status 0x%2.2X: data transfer: %r\n",
-			*status);
-	return n;
-}
-
-int32_t
-SRrequest(ScsiReq *rp)
-{
-	int32_t n;
-	int status;
-
-retry:
-	if(rp->flags&Fusb)
-		n = umsrequest(rp->umsc, &rp->cmd, &rp->data, &status);
-	else
-		n = request(rp->fd, &rp->cmd, &rp->data, &status);
-	switch(rp->status = status){
-
-	case STok:
-		rp->data.count = n;
-		break;
-
-	case STcheck:
-		if(rp->cmd.p[0] != ScmdRsense && SRreqsense(rp) != -1)
-			rp->status = Status_SD;
-		if (exabyte)
-			fprint(2, "SRrequest: STcheck, returning -1\n");
-		return -1;
-
-	case STbusy:
-		sleep(1000);
-		goto retry;
-
-	default:
-		fprint(2, "status 0x%2.2X\n", status);
-		return -1;
-	}
-	return n;
-}
-
-int
-SRclose(ScsiReq *rp)
-{
-	if((rp->flags & Fopen) == 0){
-		if(debug)
-			fprint(2, "scuzz: closing closed file\n");
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	close(rp->fd);
-	rp->flags = 0;
-	return 0;
-}
-
-uint
-mkascq(ScsiReq *r)
-{
-	uint8_t *u;
-
-	u = r->sense;
-	return u[2]<<16 | u[12]<<8 | u[13];
-}
-
-static int
-dirdevopen(ScsiReq *rp)
-{
-	uint32_t blocks;
-	uint8_t data[8];
-
-	if(SRstart(rp, 1) == -1)
-		/*
-		 * it's okay for removable media to say
-		 * "check condition: medium not present".
-		 * 3a is "medium not present".
-		 */
-		return rp->inquiry[1] & 0x80 && (mkascq(rp) >> 8) == 0x023a?
-			0: -1;
-	memset(data, 0, sizeof data);
-	if(SRrcapacity(rp, data) == -1)
-		return -1;
-	rp->lbsize = GETBELONG(data+4);
-	blocks =     GETBELONG(data);
-	if(debug)
-		fprint(2, "scuzz: dirdevopen: logical block size %lu, "
-			"# blocks %lu\n", rp->lbsize, blocks);
-	/* some newer dev's don't support 6-byte commands */
-	if(blocks > Max24off && !force6bytecmds)
-		rp->flags |= Frw10;
-	return 0;
-}
-
-static int
-seqdevopen(ScsiReq *rp)
-{
-	uint8_t mode[16], limits[6];
-
-	if(SRrblimits(rp, limits) == -1)
-		return -1;
-	if(limits[1] == 0 && limits[2] == limits[4] && limits[3] == limits[5]){
-		rp->flags |= Fbfixed;
-		rp->lbsize = limits[4]<<8 | limits[5];
-		if(debug)
-			fprint(2, "scuzz: seqdevopen: logical block size %lu\n",
-				rp->lbsize);
-		return 0;
-	}
-	/*
-	 * On some older hardware the optional 10-byte
-	 * modeselect command isn't implemented.
-	 */
-	if (force6bytecmds)
-		rp->flags |= Fmode6;
-	if(!(rp->flags & Fmode6)){
-		/* try 10-byte command first */
-		memset(mode, 0, sizeof mode);
-		mode[3] = 0x10;		/* device-specific param. */
-		mode[7] = 8;		/* block descriptor length */
-		/*
-		 * exabytes can't handle this, and
-		 * modeselect(10) is optional.
-		 */
-		if(SRmodeselect10(rp, mode, sizeof mode) != -1){
-			rp->lbsize = 1;
-			return 0;	/* success */
-		}
-		/* can't do 10-byte commands, back off to 6-byte ones */
-		rp->flags |= Fmode6;
-	}
-
-	/* 6-byte command */
-	memset(mode, 0, sizeof mode);
-	mode[2] = 0x10;		/* device-specific param. */
-	mode[3] = 8;		/* block descriptor length */
-	/*
-	 * bsd sez exabytes need this bit (NBE: no busy enable) in
-	 * vendor-specific page (0), but so far we haven't needed it.
-	mode[12] |= 8;
-	 */
-	if(SRmodeselect6(rp, mode, 4+8) == -1)
-		return -1;
-	rp->lbsize = 1;
-	return 0;
-}
-
-static int
-wormdevopen(ScsiReq *rp)
-{
-	int32_t status;
-	uint8_t list[MaxDirData];
-
-	if (SRstart(rp, 1) == -1 ||
-	    (status = SRmodesense10(rp, Allmodepages, list, sizeof list)) == -1)
-		return -1;
-	/* nbytes = list[0]<<8 | list[1]; */
-
-	/* # of bytes of block descriptors of 8 bytes each; not even 1? */
-	if((list[6]<<8 | list[7]) < 8)
-		rp->lbsize = 2048;
-	else
-		/* last 3 bytes of block 0 descriptor */
-		rp->lbsize = GETBE24(list+13);
-	if(debug)
-		fprint(2, "scuzz: wormdevopen: logical block size %lu\n",
-			rp->lbsize);
-	return status;
-}
-
-int
-SRopenraw(ScsiReq *rp, char *unit)
-{
-	char name[128];
-
-	if(rp->flags & Fopen){
-		if(debug)
-			fprint(2, "scuzz: opening open file\n");
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	memset(rp, 0, sizeof *rp);
-	rp->unit = unit;
-
-	sprint(name, "%s/raw", unit);
-
-	if((rp->fd = open(name, ORDWR)) == -1){
-		rp->status = STtimeout;
-		return -1;
-	}
-	rp->flags = Fopen;
-	return 0;
-}
-
-int
-SRopen(ScsiReq *rp, char *unit)
-{
-	if(SRopenraw(rp, unit) == -1)
-		return -1;
-	SRready(rp);
-	if(SRinquiry(rp) >= 0){
-		switch(rp->inquiry[0]){
-
-		default:
-			fprint(2, "unknown device type 0x%.2x\n", rp->inquiry[0]);
-			rp->status = Status_SW;
-			break;
-
-		case 0x00:	/* Direct access (disk) */
-		case 0x05:	/* CD-ROM */
-		case 0x07:	/* rewriteable MO */
-			if(dirdevopen(rp) == -1)
-				break;
-			return 0;
-
-		case 0x01:	/* Sequential eg: tape */
-			rp->flags |= Fseqdev;
-			if(seqdevopen(rp) == -1)
-				break;
-			return 0;
-
-		case 0x02:	/* Printer */
-			rp->flags |= Fprintdev;
-			return 0;
-
-		case 0x04:	/* Worm */
-			rp->flags |= Fwormdev;
-			if(wormdevopen(rp) == -1)
-				break;
-			return 0;
-
-		case 0x08:	/* medium-changer */
-			rp->flags |= Fchanger;
-			return 0;
-		}
-	}
-	SRclose(rp);
-	return -1;
-}

+ 0 - 160
sys/src/cmd/scuzz/scsireq.h

@@ -1,160 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-/* this file is also included by usb/disk and cdfs */
-typedef struct Umsc Umsc;
-//#pragma incomplete Umsc
-
-enum {					/* fundamental constants/defaults */
-	NTargetID	= 8,		/* number of target IDs */
-	CtlrID		= 7,		/* default controller target ID */
-	MaxDirData	= 255,		/* max. direct data returned */
-	LBsize		= 512,		/* default logical-block size */
-};
-
-typedef struct {
-	unsigned char	*p;
-	int32_t	count;
-	unsigned char	write;
-} ScsiPtr;
-
-typedef struct {
-	int	flags;
-	char	*unit;			/* unit directory */
-	int	lun;
-	uint32_t	lbsize;
-	uint32_t	offset;			/* in blocks of lbsize bytes */
-	int	fd;
-	Umsc	*umsc;			/* lun */
-	ScsiPtr	cmd;
-	ScsiPtr	data;
-	int	status;			/* returned status */
-	unsigned char	sense[MaxDirData];	/* returned sense data */
-	unsigned char	inquiry[MaxDirData];	/* returned inquiry data */
-	int	readblock;		/* flag: read a block since open */
-} ScsiReq;
-
-enum {					/* software flags */
-	Fopen		= 0x0001,	/* open */
-	Fseqdev		= 0x0002,	/* sequential-access device */
-	Fwritten	= 0x0004,	/* device written */
-	Fronly		= 0x0008,	/* device is read-only */
-	Fwormdev	= 0x0010,	/* write-once read-multiple device */
-	Fprintdev	= 0x0020,	/* printer */
-	Fbfixed		= 0x0040,	/* fixed block size */
-	Fchanger	= 0x0080,	/* medium-changer device */
-	Finqok		= 0x0100,	/* inquiry data is OK */
-	Fmode6		= 0x0200,	/* use 6-byte modeselect */
-	Frw10		= 0x0400,	/* use 10-byte read/write */
-	Fusb		= 0x0800,	/* USB transparent scsi */
-};
-
-enum {
-	STnomem		=-4,		/* buffer allocation failed */
-	STharderr	=-3,		/* controller error of some kind */
-	STtimeout	=-2,		/* bus timeout */
-	STok		= 0,		/* good */
-	STcheck		= 0x02,		/* check condition */
-	STcondmet	= 0x04,		/* condition met/good */
-	STbusy		= 0x08,		/* busy */
-	STintok		= 0x10,		/* intermediate/good */
-	STintcondmet	= 0x14,		/* intermediate/condition met/good */
-	STresconf	= 0x18,		/* reservation conflict */
-	STterminated	= 0x22,		/* command terminated */
-	STqfull		= 0x28,		/* queue full */
-};
-
-enum {					/* status */
-	Status_SD	= 0x80,		/* sense-data available */
-	Status_SW	= 0x83,		/* internal software error */
-	Status_BADARG	= 0x84,		/* bad argument to request */
-	Status_RO	= 0x85,		/* device is read-only */
-};
-
-enum {
-	/* sense data byte 0 */
-	Sd0valid	= 0x80,		/* valid sense data present */
-
-	/* sense data byte 2 */
-	/* incorrect-length indicator, difference in bytes 3—6 */
-	Sd2ili		= 0x20,
-	Sd2eom		= 0x40,		/* end of medium (tape) */
-	Sd2filemark	= 0x80,		/* at a filemark (tape) */
-
-	/* command byte 1 */
-	Cmd1fixed	= 1,		/* use fixed-length blocks */
-	Cmd1sili	= 2,		/* don't set Sd2ili */
-
-	/* limit of block #s in 24-bit ccbs */
-	Max24off	= (1<<21) - 1,	/* 2⁲ⁱ - 1 */
-
-	/* mode pages */
-	Allmodepages = 0x3F,
-};
-
-/* p arguments should be of type unsigned char* */
-#define GETBELONG(p) ((uint32_t)(p)[0]<<24 | (uint32_t)(p)[1]<<16 | (p)[2]<<8 | (p)[3])
-#define PUTBELONG(p, ul) ((p)[0] = (ul)>>24, (p)[1] = (ul)>>16, \
-			  (p)[2] = (ul)>>8,  (p)[3] = (ul))
-#define GETBE24(p)	((uint32_t)(p)[0]<<16 | (p)[1]<<8 | (p)[2])
-#define PUTBE24(p, ul)	((p)[0] = (ul)>>16, (p)[1] = (ul)>>8, (p)[2] = (ul))
-
-extern int32_t maxiosize;
-
-int32_t	SRready(ScsiReq*);
-int32_t	SRrewind(ScsiReq*);
-int32_t	SRreqsense(ScsiReq*);
-int32_t	SRformat(ScsiReq*);
-int32_t	SRrblimits(ScsiReq*, unsigned char*);
-int32_t	SRread(ScsiReq*, void*, int32_t);
-int32_t	SRwrite(ScsiReq*, void*, int32_t);
-int32_t	SRseek(ScsiReq*, int32_t, int);
-int32_t	SRfilemark(ScsiReq*, uint32_t);
-int32_t	SRspace(ScsiReq*, unsigned char, int32_t);
-int32_t	SRinquiry(ScsiReq*);
-int32_t	SRmodeselect6(ScsiReq*, unsigned char*, int32_t);
-int32_t	SRmodeselect10(ScsiReq*, unsigned char*, int32_t);
-int32_t	SRmodesense6(ScsiReq*, unsigned char, unsigned char*, int32_t);
-int32_t	SRmodesense10(ScsiReq*, unsigned char, unsigned char*, int32_t);
-int32_t	SRstart(ScsiReq*, unsigned char);
-int32_t	SRrcapacity(ScsiReq*, unsigned char*);
-
-int32_t	SRblank(ScsiReq*, unsigned char, unsigned char);	/* MMC CD-R/CD-RW commands */
-int32_t	SRsynccache(ScsiReq*);
-int32_t	SRTOC(ScsiReq*, void*, int, unsigned char, unsigned char);
-int32_t	SRrdiscinfo(ScsiReq*, void*, int);
-int32_t	SRrtrackinfo(ScsiReq*, void*, int, int);
-
-int32_t	SRcdpause(ScsiReq*, int);		/* MMC CD audio commands */
-int32_t	SRcdstop(ScsiReq*);
-int32_t	SRcdload(ScsiReq*, int, int);
-int32_t	SRcdplay(ScsiReq*, int, int32_t, int32_t);
-int32_t	SRcdstatus(ScsiReq*, unsigned char*, int);
-int32_t	SRgetconf(ScsiReq*, unsigned char*, int);
-
-/*	old CD-R/CD-RW commands */
-int32_t	SRfwaddr(ScsiReq*, unsigned char, unsigned char, unsigned char, unsigned char*);
-int32_t	SRtreserve(ScsiReq*, int32_t);
-int32_t	SRtinfo(ScsiReq*, unsigned char, unsigned char*);
-int32_t	SRwtrack(ScsiReq*, void*, int32_t, unsigned char, unsigned char);
-int32_t	SRmload(ScsiReq*, unsigned char);
-int32_t	SRfixation(ScsiReq*, unsigned char);
-
-int32_t	SReinitialise(ScsiReq*);		/* CHANGER commands */
-int32_t	SRestatus(ScsiReq*, unsigned char, unsigned char*, int);
-int32_t	SRmmove(ScsiReq*, int, int, int, int);
-
-int32_t	SRrequest(ScsiReq*);
-int	SRclose(ScsiReq*);
-int	SRopenraw(ScsiReq*, char*);
-int	SRopen(ScsiReq*, char*);
-
-void	makesense(ScsiReq*);
-
-int32_t	umsrequest(struct Umsc*, ScsiPtr*, ScsiPtr*, int*);

+ 0 - 1967
sys/src/cmd/scuzz/scuzz.c

@@ -1,1967 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include <disk.h>
-#include "scsireq.h"
-
-enum {					/* fundamental constants/defaults */
-	/*
-	 * default & maximum `maximum i/o size'; overridden by -m.
-	 * limits kernel memory consumption.
-	 * 240K is exabyte maximum block size.
-	 */
-	MaxIOsize	= 240*1024,
-};
-
-#define MIN(a, b)	((a) < (b) ? (a): (b))
-
-static char rwbuf[MaxIOsize];
-static int verbose = 1;
-
-Biobuf bin, bout;
-int32_t maxiosize = MaxIOsize;
-int exabyte = 0;
-int force6bytecmds = 0;
-
-typedef struct {
-	char *name;
-	int32_t (*f)(ScsiReq *, int, char *[]);
-	int open;
-	char *help;
-} ScsiCmd;
-
-static ScsiCmd scsicmds[];
-
-static int64_t
-vlmin(int64_t a, int64_t b)
-{
-	if (a < b)
-		return a;
-	else
-		return b;
-}
-
-static int32_t
-cmdready(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRready(rp);
-}
-
-static int32_t
-cmdrewind(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRrewind(rp);
-}
-
-static int32_t
-cmdreqsense(ScsiReq *rp, int argc, char *argv[])
-{
-	int32_t nbytes;
-
-	USED(argc, argv);
-	if((nbytes = SRreqsense(rp)) != -1)
-		makesense(rp);
-	return nbytes;
-}
-
-static int32_t
-cmdformat(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRformat(rp);
-}
-
-static int32_t
-cmdrblimits(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t l[6];
-	int32_t n;
-
-	USED(argc, argv);
-	if((n = SRrblimits(rp, l)) == -1)
-		return -1;
-	Bprint(&bout, " %2.2X %2.2X %2.2X %2.2X %2.2X %2.2X\n",
-		l[0], l[1], l[2], l[3], l[4], l[5]);
-	return n;
-}
-
-static int
-mkfile(char *file, int omode, int *pid)
-{
-	int fd[2];
-
-	if(*file != '|'){
-		*pid = -1;
-		if(omode == OWRITE)
-			return create(file, OWRITE, 0666);
-		else if(omode == OREAD)
-			return open(file, OREAD);
-		return -1;
-	}
-
-	file++;
-	if(*file == 0 || pipe(fd) == -1)
-		return -1;
-	if((*pid = fork()) == -1){
-		close(fd[0]);
-		close(fd[1]);
-		return -1;
-	}
-	if(*pid == 0){
-		switch(omode){
-
-		case OREAD:
-			dup(fd[0], 1);
-			break;
-
-		case OWRITE:
-			dup(fd[0], 0);
-			break;
-		}
-		close(fd[0]);
-		close(fd[1]);
-		execl("/bin/rc", "rc", "-c", file, nil);
-		exits("exec");
-	}
-	close(fd[0]);
-	return fd[1];
-}
-
-int
-waitfor(int pid)
-{
-	int msg;
-	Waitmsg *w;
-
-	while((w = wait()) != nil){
-		if(w->pid != pid){
-			free(w);
-			continue;
-		}
-		msg = (w->msg[0] != '\0');
-		free(w);
-		return msg;
-	}
-	return -1;
-}
-
-static int32_t
-cmdread(ScsiReq *rp, int argc, char *argv[])
-{
-	int32_t n, iosize, prevsize = 0;
-	int64_t nbytes, total;
-	int fd, pid;
-	char *p;
-
-	iosize = maxiosize;
-	nbytes = ~0ULL >> 1;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 2:
-		nbytes = strtoll(argv[1], &p, 0);
-		if(nbytes == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((fd = mkfile(argv[0], OWRITE, &pid)) == -1){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		break;
-	}
-	print("device native block size=%lu\n", rp->lbsize);
-	total = 0;
-	while(nbytes){
-		n = vlmin(nbytes, iosize);
-		if((n = SRread(rp, rwbuf, n)) == -1){
-			if(total == 0)
-				total = -1;
-			break;
-		}
-		if (n == 0)
-			break;
-		if (prevsize != n) {
-			print("tape block size=%ld\n", n);
-			prevsize = n;
-		}
-		if(write(fd, rwbuf, n) != n){
-			if(total == 0)
-				total = -1;
-			if(rp->status == STok)
-				rp->status = Status_SW;
-			break;
-		}
-		nbytes -= n;
-		total += n;
-	}
-	close(fd);
-	if(pid >= 0 && waitfor(pid)){
-		rp->status = Status_SW;
-		return -1;
-	}
-	return total;
-}
-
-static int32_t
-cmdwrite(ScsiReq *rp, int argc, char *argv[])
-{
-	int32_t n, prevsize = 0;
-	int64_t nbytes, total;
-	int fd, pid;
-	char *p;
-
-	nbytes = ~0ULL >> 1;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 2:
-		nbytes = strtoll(argv[1], &p, 0);
-		if(nbytes == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((fd = mkfile(argv[0], OREAD, &pid)) == -1){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		break;
-	}
-	total = 0;
-	while(nbytes){
-		n = vlmin(nbytes, maxiosize);
-		if((n = read(fd, rwbuf, n)) == -1){
-			if(total == 0)
-				total = -1;
-			break;
-		}
-		if (n == 0)
-			break;
-		if (prevsize != n) {
-			print("tape block size=%ld\n", n);
-			prevsize = n;
-		}
-		if(SRwrite(rp, rwbuf, n) != n){
-			if(total == 0)
-				total = -1;
-			if(rp->status == STok)
-				rp->status = Status_SW;
-			break;
-		}
-		nbytes -= n;
-		total += n;
-	}
-	close(fd);
-	if(pid >= 0 && waitfor(pid)){
-		rp->status = Status_SW;
-		return -1;
-	}
-	return total;
-}
-
-static int32_t
-cmdseek(ScsiReq *rp, int argc, char *argv[])
-{
-	char *p;
-	int32_t offset;
-	int type;
-
-	type = 0;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 2:
-		if((type = strtol(argv[1], &p, 0)) == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((offset = strtol(argv[0], &p, 0)) == 0 && p == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		break;
-	}
-	return SRseek(rp, offset, type);
-}
-
-static int32_t
-cmdfilemark(ScsiReq *rp, int argc, char *argv[])
-{
-	char *p;
-	uint32_t howmany;
-
-	howmany = 1;
-	if(argc && (howmany = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	return SRfilemark(rp, howmany);
-}
-
-static int32_t
-cmdspace(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t code;
-	int32_t howmany;
-	char option, *p;
-
-	code = 0x00;
-	howmany = 1;
-	while(argc && (*argv)[0] == '-'){
-		while(option = *++argv[0]){
-			switch(option){
-
-			case '-':
-				break;
-
-			case 'b':
-				code = 0x00;
-				break;
-
-			case 'f':
-				code = 0x01;
-				break;
-
-			default:
-				rp->status = Status_BADARG;
-				return -1;
-			}
-			break;
-		}
-		argc--; argv++;
-		if(option == '-')
-			break;
-	}
-	if(argc && ((howmany = strtol(argv[0], &p, 0)) == 0 && p == argv[0])){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	return SRspace(rp, code, howmany);
-}
-
-static int32_t
-cmdinquiry(ScsiReq *rp, int argc, char *argv[])
-{
-	int32_t status;
-	int i, n;
-	uint8_t *p;
-
-	USED(argc, argv);
-	if((status = SRinquiry(rp)) != -1){
-		n = rp->inquiry[4]+4;
-		for(i = 0; i < MIN(8, n); i++)
-			Bprint(&bout, " %2.2X", rp->inquiry[i]);
-		p = &rp->inquiry[8];
-		n = MIN(n, sizeof(rp->inquiry)-8);
-		while(n && (*p == ' ' || *p == '\t' || *p == '\n')){
-			n--;
-			p++;
-		}
-		Bprint(&bout, "\t%.*s\n", n, (char*)p);
-	}
-	return status;
-}
-
-static int32_t
-cmdmodeselect6(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t list[MaxDirData];
-	int32_t nbytes, ul;
-	char *p;
-
-	memset(list, 0, sizeof list);
-	for(nbytes = 0; argc; argc--, argv++, nbytes++){
-		if((ul = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		list[nbytes] = ul;
-
-	}
-	if(!(rp->flags & Finqok) && SRinquiry(rp) == -1)
-		Bprint(&bout, "warning: couldn't determine whether SCSI-1/SCSI-2 mode");
-	return SRmodeselect6(rp, list, nbytes);
-}
-
-static int32_t
-cmdmodeselect10(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t list[MaxDirData];
-	int32_t nbytes, ul;
-	char *p;
-
-	memset(list, 0, sizeof list);
-	for(nbytes = 0; argc; argc--, argv++, nbytes++){
-		if((ul = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		list[nbytes] = ul;
-
-	}
-	if(!(rp->flags & Finqok) && SRinquiry(rp) == -1)
-		Bprint(&bout, "warning: couldn't determine whether SCSI-1/SCSI-2 mode");
-	return SRmodeselect10(rp, list, nbytes);
-}
-
-static int32_t
-cmdmodesense6(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t list[MaxDirData], *lp, page;
-	int32_t i, n, nbytes, status;
-	char *p;
-
-	nbytes = sizeof list;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 2:
-		if((nbytes = strtoul(argv[1], &p, 0)) == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((page = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		break;
-
-	case 0:
-		page = Allmodepages;
-		break;
-	}
-	if((status = SRmodesense6(rp, page, list, nbytes)) == -1)
-		return -1;
-	lp = list;
-	nbytes = list[0];
-	Bprint(&bout, " Header\n   ");
-	for(i = 0; i < 4; i++){				/* header */
-		Bprint(&bout, " %2.2X", *lp);
-		lp++;
-	}
-	Bputc(&bout, '\n');
-
-	if(list[3]){					/* block descriptors */
-		for(n = 0; n < list[3]/8; n++){
-			Bprint(&bout, " Block %ld\n   ", n);
-			for(i = 0; i < 8; i++)
-				Bprint(&bout, " %2.2X", lp[i]);
-			Bprint(&bout, "    (density %2.2X", lp[0]);
-			Bprint(&bout, " blocks %d", (lp[1]<<16)|(lp[2]<<8)|lp[3]);
-			Bprint(&bout, " length %d)", (lp[5]<<16)|(lp[6]<<8)|lp[7]);
-			lp += 8;
-			nbytes -= 8;
-			Bputc(&bout, '\n');
-		}
-	}
-
-	while(nbytes > 0){				/* pages */
-		i = *(lp+1);
-		nbytes -= i+2;
-		Bprint(&bout, " Page %2.2X %d\n   ", *lp & 0x3F, *(lp+1));
-		lp += 2;
-		for(n = 0; n < i; n++){
-			if(n && ((n & 0x0F) == 0))
-				Bprint(&bout, "\n   ");
-			Bprint(&bout, " %2.2X", *lp);
-			lp++;
-		}
-		if(n && (n & 0x0F))
-			Bputc(&bout, '\n');
-	}
-	return status;
-}
-
-static int32_t
-cmdmodesense10(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t *list, *lp, page;
-	int32_t blen, i, n, nbytes, status;
-	char *p;
-
-	nbytes = MaxDirData;
-	switch(argc){
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 2:
-		if((nbytes = strtoul(argv[1], &p, 0)) == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-	case 1:
-		if((page = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		break;
-
-	case 0:
-		page = Allmodepages;
-		break;
-	}
-	list = malloc(nbytes);
-	if(list == 0){
-		rp->status = STnomem;
-		return -1;
-	}
-	if((status = SRmodesense10(rp, page, list, nbytes)) == -1)
-		return -1;
-	lp = list;
-	nbytes = ((list[0]<<8)|list[1]);
-	Bprint(&bout, " Header\n   ");
-	for(i = 0; i < 8; i++){				/* header */
-		Bprint(&bout, " %2.2X", *lp);
-		lp++;
-	}
-	Bputc(&bout, '\n');
-
-	blen = (list[6]<<8)|list[7];
-	if(blen){					/* block descriptors */
-		for(n = 0; n < blen/8; n++){
-			Bprint(&bout, " Block %ld\n   ", n);
-			for(i = 0; i < 8; i++)
-				Bprint(&bout, " %2.2X", lp[i]);
-			Bprint(&bout, "    (density %2.2X", lp[0]);
-			Bprint(&bout, " blocks %d", (lp[1]<<16)|(lp[2]<<8)|lp[3]);
-			Bprint(&bout, " length %d)", (lp[5]<<16)|(lp[6]<<8)|lp[7]);
-			lp += 8;
-			nbytes -= 8;
-			Bputc(&bout, '\n');
-		}
-	}
-
-	/*
-	 * Special for ATA drives, page 0 is the drive info in 16-bit
-	 * chunks, little-endian, 256 in total. No decoding for now.
-	 */
-	if(page == 0){
-		for(n = 0; n < nbytes; n += 2){
-			if(n && ((n & 0x1F) == 0))
-				Bprint(&bout, "\n");
-			Bprint(&bout, " %4.4X", (*(lp+1)<<8)|*lp);
-			lp += 2;
-		}
-		Bputc(&bout, '\n');
-	}
-	else
-		while(nbytes > 0){				/* pages */
-			i = *(lp+1);
-			nbytes -= i+2;
-			Bprint(&bout, " Page %2.2X %d\n   ", *lp & 0x3F, lp[1]);
-			lp += 2;
-			for(n = 0; n < i; n++){
-				if(n && ((n & 0x0F) == 0))
-					Bprint(&bout, "\n   ");
-				Bprint(&bout, " %2.2X", *lp);
-				lp++;
-			}
-			if(n && (n & 0x0F))
-				Bputc(&bout, '\n');
-		}
-	free(list);
-	return status;
-}
-
-static int32_t
-start(ScsiReq *rp, int argc, char *argv[], uint8_t code)
-{
-	char *p;
-
-	if(argc && (code = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	return SRstart(rp, code);
-}
-
-static int32_t
-cmdstart(ScsiReq *rp, int argc, char *argv[])
-{
-	return start(rp, argc, argv, 1);
-}
-
-static int32_t
-cmdstop(ScsiReq *rp, int argc, char *argv[])
-{
-	return start(rp, argc, argv, 0);
-}
-
-static int32_t
-cmdeject(ScsiReq *rp, int argc, char *argv[])
-{
-	return start(rp, argc, argv, 2);
-}
-
-static int32_t
-cmdingest(ScsiReq *rp, int argc, char *argv[])
-{
-	return start(rp, argc, argv, 3);
-}
-
-static int32_t
-cmdcapacity(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t d[8];
-	int32_t n;
-
-	USED(argc, argv);
-	if((n = SRrcapacity(rp, d)) == -1)
-		return -1;
-	Bprint(&bout, " %u %u\n",
-		d[0]<<24|d[1]<<16|d[2]<<8|d[3],
-		d[4]<<24|d[5]<<16|d[6]<<8|d[7]);
-	return n;
-}
-
-static int32_t
-cmdblank(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t type, track;
-	char *sp;
-
-	type = track = 0;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 2:
-		if((type = strtoul(argv[1], &sp, 0)) == 0 && sp == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		if(type > 6){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((track = strtoul(argv[0], &sp, 0)) == 0 && sp == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 0:
-		break;
-	}
-	return SRblank(rp, type, track);
-}
-
-static int32_t
-cmdsynccache(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRsynccache(rp);
-}
-
-static int32_t
-cmdrtoc(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t d[100*8+4], format, track, *p;
-	char *sp;
-	int32_t n, nbytes;
-	int tdl;
-
-	format = track = 0;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 2:
-		if((format = strtoul(argv[1], &sp, 0)) == 0 && sp == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		if(format > 4){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((track = strtoul(argv[0], &sp, 0)) == 0 && sp == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 0:
-		break;
-	}
-	if((nbytes = SRTOC(rp, d, sizeof d, format, track)) == -1){
-		if(rp->status == STok)
-			Bprint(&bout, "\t(probably empty)\n");
-		return -1;
-	}
-	tdl = (d[0]<<8)|d[1];
-	switch(format){
-
-	case 0:
-		Bprint(&bout, "\ttoc/pma data length: 0x%X\n", tdl);
-		Bprint(&bout, "\tfirst track number: %d\n", d[2]);
-		Bprint(&bout, "\tlast track number: %d\n", d[3]);
-		for(p = &d[4], n = tdl-2; n; n -= 8, p += 8){
-			Bprint(&bout, "\ttrack number: 0x%2.2X\n", p[2]);
-			Bprint(&bout, "\t\tcontrol: 0x%2.2X\n", p[1] & 0x0F);
-			Bprint(&bout, "\t\tblock address: 0x%X\n",
-				(p[4]<<24)|(p[5]<<16)|(p[6]<<8)|p[7]);
-		}
-		break;
-
-	case 1:
-		Bprint(&bout, "\tsessions data length: 0x%X\n", tdl);
-		Bprint(&bout, "\tnumber of finished sessions: %d\n", d[2]);
-		Bprint(&bout, "\tunfinished session number: %d\n", d[3]);
-		for(p = &d[4], n = tdl-2; n; n -= 8, p += 8){
-			Bprint(&bout, "\tsession number: 0x%2.2X\n", p[0]);
-			Bprint(&bout, "\t\tfirst track number in session: 0x%2.2X\n",
-				p[2]);
-			Bprint(&bout, "\t\tlogical start address: 0x%X\n",
-				(p[5]<<16)|(p[6]<<8)|p[7]);
-		}
-		break;
-
-	case 2:
-		Bprint(&bout, "\tfull TOC data length: 0x%X\n", tdl);
-		Bprint(&bout, "\tnumber of finished sessions: %d\n", d[2]);
-		Bprint(&bout, "\tunfinished session number: %d\n", d[3]);
-		for(p = &d[4], n = tdl-2; n > 0; n -= 11, p += 11){
-			Bprint(&bout, "\tsession number: 0x%2.2X\n", p[0]);
-			Bprint(&bout, "\t\tcontrol: 0x%2.2X\n", p[1] & 0x0F);
-			Bprint(&bout, "\t\tADR: 0x%2.2X\n", (p[1]>>4) & 0x0F);
-			Bprint(&bout, "\t\tTNO: 0x%2.2X\n", p[2]);
-			Bprint(&bout, "\t\tPOINT: 0x%2.2X\n", p[3]);
-			Bprint(&bout, "\t\tMin: 0x%2.2X\n", p[4]);
-			Bprint(&bout, "\t\tSec: 0x%2.2X\n", p[5]);
-			Bprint(&bout, "\t\tFrame: 0x%2.2X\n", p[6]);
-			Bprint(&bout, "\t\tZero: 0x%2.2X\n", p[7]);
-			Bprint(&bout, "\t\tPMIN: 0x%2.2X\n", p[8]);
-			Bprint(&bout, "\t\tPSEC: 0x%2.2X\n", p[9]);
-			Bprint(&bout, "\t\tPFRAME: 0x%2.2X\n", p[10]);
-		}
-		break;
-	case 3:
-		Bprint(&bout, "\tPMA data length: 0x%X\n", tdl);
-		for(p = &d[4], n = tdl-2; n > 0; n -= 11, p += 11){
-			Bprint(&bout, "\t\tcontrol: 0x%2.2X\n", p[1] & 0x0F);
-			Bprint(&bout, "\t\tADR: 0x%2.2X\n", (p[1]>>4) & 0x0F);
-			Bprint(&bout, "\t\tTNO: 0x%2.2X\n", p[2]);
-			Bprint(&bout, "\t\tPOINT: 0x%2.2X\n", p[3]);
-			Bprint(&bout, "\t\tMin: 0x%2.2X\n", p[4]);
-			Bprint(&bout, "\t\tSec: 0x%2.2X\n", p[5]);
-			Bprint(&bout, "\t\tFrame: 0x%2.2X\n", p[6]);
-			Bprint(&bout, "\t\tZero: 0x%2.2X\n", p[7]);
-			Bprint(&bout, "\t\tPMIN: 0x%2.2X\n", p[8]);
-			Bprint(&bout, "\t\tPSEC: 0x%2.2X\n", p[9]);
-			Bprint(&bout, "\t\tPFRAME: 0x%2.2X\n", p[10]);
-		}
-		break;
-
-	case 4:
-		Bprint(&bout, "\tATIP data length: 0x%X\n", tdl);
-		break;
-
-	}
-	for(n = 0; n < nbytes; n++){
-		if(n && ((n & 0x0F) == 0))
-			Bprint(&bout, "\n");
-		Bprint(&bout, " %2.2X", d[n]);
-	}
-	if(n && (n & 0x0F))
-		Bputc(&bout, '\n');
-	return nbytes;
-}
-
-static int32_t
-cmdrdiscinfo(ScsiReq *rp, int argc, char*[])
-{
-	uint8_t d[MaxDirData];
-	int dl;
-	int32_t n, nbytes;
-
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 0:
-		break;
-	}
-	if((nbytes = SRrdiscinfo(rp, d, sizeof d)) == -1)
-		return -1;
-
-	dl = (d[0]<<8)|d[1];
-	Bprint(&bout, "\tdata length: 0x%X\n", dl);
-	Bprint(&bout, "\tinfo[2] 0x%2.2X\n", d[2]);
-	switch(d[2] & 0x03){
-
-	case 0:
-		Bprint(&bout, "\t\tEmpty\n");
-		break;
-
-	case 1:
-		Bprint(&bout, "\t\tIncomplete disc (Appendable)\n");
-		break;
-
-	case 2:
-		Bprint(&bout, "\t\tComplete (CD-ROM or last session is closed and has no next session pointer)\n");
-		break;
-
-	case 3:
-		Bprint(&bout, "\t\tReserved\n");
-		break;
-	}
-	switch((d[2]>>2) & 0x03){
-
-	case 0:
-		Bprint(&bout, "\t\tEmpty Session\n");
-		break;
-
-	case 1:
-		Bprint(&bout, "\t\tIncomplete Session\n");
-		break;
-
-	case 2:
-		Bprint(&bout, "\t\tReserved\n");
-		break;
-
-	case 3:
-		Bprint(&bout, "\t\tComplete Session (only possible when disc Status is Complete)\n");
-		break;
-	}
-	if(d[2] & 0x10)
-		Bprint(&bout, "\t\tErasable\n");
-	Bprint(&bout, "\tNumber of First Track on Disc %u\n", d[3]);
-	Bprint(&bout, "\tNumber of Sessions %u\n", d[4]);
-	Bprint(&bout, "\tFirst Track Number in Last Session %u\n", d[5]);
-	Bprint(&bout, "\tLast Track Number in Last Session %u\n", d[6]);
-	Bprint(&bout, "\tinfo[7] 0x%2.2X\n", d[7]);
-	if(d[7] & 0x20)
-		Bprint(&bout, "\t\tUnrestricted Use Disc\n");
-	if(d[7] & 0x40)
-		Bprint(&bout, "\t\tDisc Bar Code Valid\n");
-	if(d[7] & 0x80)
-		Bprint(&bout, "\t\tDisc ID Valid\n");
-	Bprint(&bout, "\tinfo[8] 0x%2.2X\n", d[8]);
-	switch(d[8]){
-
-	case 0x00:
-		Bprint(&bout, "\t\tCD-DA or CD-ROM Disc\n");
-		break;
-
-	case 0x10:
-		Bprint(&bout, "\t\tCD-I Disc\n");
-		break;
-
-	case 0x20:
-		Bprint(&bout, "\t\tCD-ROM XA Disc\n");
-		break;
-
-	case 0xFF:
-		Bprint(&bout, "\t\tUndefined\n");
-		break;
-
-	default:
-		Bprint(&bout, "\t\tReserved\n");
-		break;
-	}
-	Bprint(&bout, "\tLast Session lead-in Start Time M/S/F: 0x%2.2X/0x%2.2X/0x%2.2X\n",
-		d[17], d[18], d[19]);
-	Bprint(&bout, "\tLast Possible Start Time for Start of lead-out M/S/F: 0x%2.2X/0x%2.2X/0x%2.2X\n",
-		d[21], d[22], d[23]);
-
-	for(n = 0; n < nbytes; n++){
-		if(n && ((n & 0x0F) == 0))
-			Bprint(&bout, "\n");
-		Bprint(&bout, " %2.2X", d[n]);
-	}
-	if(n && (n & 0x0F))
-		Bputc(&bout, '\n');
-
-	return nbytes;
-}
-
-static int32_t
-cmdrtrackinfo(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t d[MaxDirData], track;
-	char *sp;
-	int32_t n, nbytes;
-	int dl;
-
-	track = 0;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 1:
-		if((track = strtoul(argv[0], &sp, 0)) == 0 && sp == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 0:
-		break;
-	}
-	if((nbytes = SRrtrackinfo(rp, d, sizeof d, track)) == -1)
-		return -1;
-
-	dl = (d[0]<<8)|d[1];
-	Bprint(&bout, "\tdata length: 0x%X\n", dl);
-	Bprint(&bout, "\Track Number %d\n", d[2]);
-	Bprint(&bout, "\Session Number %d\n", d[3]);
-	Bprint(&bout, "\tinfo[4] 0x%2.2X\n", d[5]);
-	Bprint(&bout, "\t\tTrack Mode 0x%2.2X: ", d[5] & 0x0F);
-	switch(d[5] & 0x0F){
-	case 0x00:
-	case 0x02:
-		Bprint(&bout, "2 audio channels without pre-emphasis\n");
-		break;
-	case 0x01:
-	case 0x03:
-		Bprint(&bout, "2 audio channels with pre-emphasis of 50/15µs\n");
-		break;
-	case 0x08:
-	case 0x0A:
-		Bprint(&bout, "audio channels without pre-emphasis (reserved in CD-R/RW)\n");
-		break;
-	case 0x09:
-	case 0x0B:
-		Bprint(&bout, "audio channels with pre-emphasis of 50/15µs (reserved in CD-R/RW)\n");
-		break;
-	case 0x04:
-	case 0x06:
-		Bprint(&bout, "Data track, recorded uninterrupted\n");
-		break;
-	case 0x05:
-	case 0x07:
-		Bprint(&bout, "Data track, recorded incremental\n");
-		break;
-	default:
-		Bprint(&bout, "(mode unknown)\n");
-		break;
-	}
-	if(d[5] & 0x10)
-		Bprint(&bout, "\t\tCopy\n");
-	if(d[5] & 0x20)
-		Bprint(&bout, "\t\tDamage\n");
-	Bprint(&bout, "\tinfo[6] 0x%2.2X\n", d[6]);
-	Bprint(&bout, "\t\tData Mode 0x%2.2X: ", d[6] & 0x0F);
-	switch(d[6] & 0x0F){
-	case 0x01:
-		Bprint(&bout, "Mode 1 (ISO/IEC 10149)\n");
-		break;
-	case 0x02:
-		Bprint(&bout, "Mode 2 (ISO/IEC 10149 or CD-ROM XA)\n");
-		break;
-	case 0x0F:
-		Bprint(&bout, "Data Block Type unknown (no track descriptor block)\n");
-		break;
-	default:
-		Bprint(&bout, "(Reserved)\n");
-		break;
-	}
-	if(d[6] & 0x10)
-		Bprint(&bout, "\t\tFP\n");
-	if(d[6] & 0x20)
-		Bprint(&bout, "\t\tPacket\n");
-	if(d[6] & 0x40)
-		Bprint(&bout, "\t\tBlank\n");
-	if(d[6] & 0x80)
-		Bprint(&bout, "\t\tRT\n");
-	Bprint(&bout, "\tTrack Start Address 0x%8.8X\n",
-		(d[8]<<24)|(d[9]<<16)|(d[10]<<8)|d[11]);
-	if(d[7] & 0x01)
-		Bprint(&bout, "\tNext Writeable Address 0x%8.8X\n",
-			(d[12]<<24)|(d[13]<<16)|(d[14]<<8)|d[15]);
-	Bprint(&bout, "\tFree Blocks 0x%8.8X\n",
-		(d[16]<<24)|(d[17]<<16)|(d[18]<<8)|d[19]);
-	if((d[6] & 0x30) == 0x30)
-		Bprint(&bout, "\tFixed Packet Size 0x%8.8X\n",
-			(d[20]<<24)|(d[21]<<16)|(d[22]<<8)|d[23]);
-	Bprint(&bout, "\tTrack Size 0x%8.8X\n",
-		(d[24]<<24)|(d[25]<<16)|(d[26]<<8)|d[27]);
-
-	for(n = 0; n < nbytes; n++){
-		if(n && ((n & 0x0F) == 0))
-			Bprint(&bout, "\n");
-		Bprint(&bout, " %2.2X", d[n]);
-	}
-	if(n && (n & 0x0F))
-		Bputc(&bout, '\n');
-
-	return nbytes;
-}
-
-static int32_t
-cmdcdpause(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRcdpause(rp, 0);
-}
-
-static int32_t
-cmdcdresume(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRcdpause(rp, 1);
-}
-
-static int32_t
-cmdcdstop(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRcdstop(rp);
-}
-
-static int32_t
-cmdcdplay(ScsiReq *rp, int argc, char *argv[])
-{
-	int32_t length, start;
-	char *sp;
-	int raw;
-
-	raw = 0;
-	start = 0;
-	if(argc && strcmp("-r", argv[0]) == 0){
-		raw = 1;
-		argc--, argv++;
-	}
-
-	length = 0xFFFFFFFF;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 2:
-		if(!raw || ((length = strtol(argv[1], &sp, 0)) == 0 && sp == argv[1])){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((start = strtol(argv[0], &sp, 0)) == 0 && sp == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 0:
-		break;
-	}
-
-	return SRcdplay(rp, raw, start, length);
-}
-
-static int32_t
-cmdcdload(ScsiReq *rp, int argc, char *argv[])
-{
-	char *p;
-	uint32_t slot;
-
-	slot = 0;
-	if(argc && (slot = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	return SRcdload(rp, 1, slot);
-}
-
-static int32_t
-cmdcdunload(ScsiReq *rp, int argc, char *argv[])
-{
-	char *p;
-	uint32_t slot;
-
-	slot = 0;
-	if(argc && (slot = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	return SRcdload(rp, 0, slot);
-}
-
-static int32_t
-cmdcdstatus(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t *list, *lp;
-	int32_t nbytes, status;
-	int i, slots;
-
-	USED(argc, argv);
-
-	nbytes = 4096;
-	list = malloc(nbytes);
-	if(list == 0){
-		rp->status = STnomem;
-		return -1;
-	}
-	status = SRcdstatus(rp, list, nbytes);
-	if(status == -1){
-		free(list);
-		return -1;
-	}
-
-	lp = list;
-	Bprint(&bout, " Header\n   ");
-	for(i = 0; i < 8; i++){				/* header */
-		Bprint(&bout, " %2.2X", *lp);
-		lp++;
-	}
-	Bputc(&bout, '\n');
-
-	slots = ((list[6]<<8)|list[7])/4;
-	Bprint(&bout, " Slots\n   ");
-	while(slots--){
-		Bprint(&bout, " %2.2X %2.2X %2.2X %2.2X\n   ",
-			*lp, *(lp+1), *(lp+2), *(lp+3));
-		lp += 4;
-	}
-
-	free(list);
-	return status;
-}
-
-static int32_t
-cmdgetconf(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t *list;
-	int32_t nbytes, status;
-
-	USED(argc, argv);
-
-	nbytes = 4096;
-	list = malloc(nbytes);
-	if(list == 0){
-		rp->status = STnomem;
-		return -1;
-	}
-	status = SRgetconf(rp, list, nbytes);
-	if(status == -1){
-		free(list);
-		return -1;
-	}
-	/* to be done... */
-	free(list);
-	return status;
-}
-
-static int32_t
-cmdfwaddr(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t d[MaxDirData], npa, track, mode;
-	int32_t n;
-	char *p;
-
-	npa = mode = track = 0;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 3:
-		if((npa = strtoul(argv[1], &p, 0)) == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 2:
-		if((mode = strtoul(argv[1], &p, 0)) == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((track = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		break;
-
-	case 0:
-		break;
-	}
-	if((n = SRfwaddr(rp, track, mode, npa, d)) == -1)
-		return -1;
-	Bprint(&bout, "%u %u\n", d[0], (d[1]<<24)|(d[2]<<16)|(d[3]<<8)|d[4]);
-	return n;
-}
-
-static int32_t
-cmdtreserve(ScsiReq *rp, int argc, char *argv[])
-{
-	int32_t nbytes;
-	char *p;
-
-	if(argc != 1 || ((nbytes = strtoul(argv[0], &p, 0)) == 0 && p == argv[0])){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	return SRtreserve(rp, nbytes);
-}
-
-static int32_t
-cmdtrackinfo(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t d[MaxDirData], track;
-	int32_t n;
-	uint32_t ul;
-	char *p;
-
-	track = 0;
-	if(argc && (track = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	if((n = SRtinfo(rp, track, d)) == -1)
-		return -1;
-	Bprint(&bout, "buffer length: 0x%X\n", d[0]);
-	Bprint(&bout, "number of tracks: 0x%X\n", d[1]);
-	ul = (d[2]<<24)|(d[3]<<16)|(d[4]<<8)|d[5];
-	Bprint(&bout, "start address: 0x%lX\n", ul);
-	ul = (d[6]<<24)|(d[7]<<16)|(d[8]<<8)|d[9];
-	Bprint(&bout, "track length: 0x%lX\n", ul);
-	Bprint(&bout, "track mode: 0x%X\n", d[0x0A] & 0x0F);
-	Bprint(&bout, "track status: 0x%X\n", (d[0x0A]>>4) & 0x0F);
-	Bprint(&bout, "data mode: 0x%X\n", d[0x0B] & 0x0F);
-	ul = (d[0x0C]<<24)|(d[0x0D]<<16)|(d[0x0E]<<8)|d[0x0F];
-	Bprint(&bout, "free blocks: 0x%lX\n", ul);
-	return n;
-}
-
-static int32_t
-cmdwtrack(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t mode, track;
-	int32_t n, nbytes, total, x;
-	int fd, pid;
-	char *p;
-
-	mode = track = 0;
-	nbytes = 0;
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 4:
-		if((mode = strtoul(argv[3], &p, 0)) == 0 && p == argv[3]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 3:
-		if((track = strtoul(argv[2], &p, 0)) == 0 && p == argv[2]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 2:
-		if((nbytes = strtoul(argv[1], &p, 0)) == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((fd = mkfile(argv[0], OREAD, &pid)) == -1){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		break;
-	}
-	total = 0;
-	n = MIN(nbytes, maxiosize);
-	if((n = readn(fd, rwbuf, n)) == -1){
-		fprint(2, "file read failed %r\n");
-		close(fd);
-		return -1;
-	}
-	if((x = SRwtrack(rp, rwbuf, n, track, mode)) != n){
-		fprint(2, "wtrack: write incomplete: asked %ld, did %ld\n", n, x);
-		if(rp->status == STok)
-			rp->status = Status_SW;
-		close(fd);
-		return -1;
-	}
-	nbytes -= n;
-	total += n;
-	while(nbytes){
-		n = MIN(nbytes, maxiosize);
-		if((n = read(fd, rwbuf, n)) == -1){
-			break;
-		}
-		if((x = SRwrite(rp, rwbuf, n)) != n){
-			fprint(2, "write: write incomplete: asked %ld, did %ld\n", n, x);
-			if(rp->status == STok)
-				rp->status = Status_SW;
-			break;
-		}
-		nbytes -= n;
-		total += n;
-	}
-	close(fd);
-	if(pid >= 0 && waitfor(pid)){
-		rp->status = Status_SW;
-		return -1;
-	}
-	return total;
-}
-
-static int32_t
-cmdload(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRmload(rp, 0);
-}
-
-static int32_t
-cmdunload(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRmload(rp, 1);
-}
-
-static int32_t
-cmdfixation(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t type;
-	char *p;
-
-	type = 0;
-	if(argc && (type = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	return SRfixation(rp, type);
-}
-
-static int32_t
-cmdeinit(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SReinitialise(rp);
-}
-
-static int32_t
-cmdmmove(ScsiReq *rp, int argc, char *argv[])
-{
-	int transport, source, destination, invert;
-	char *p;
-
-	invert = 0;
-
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 4:
-		if((invert = strtoul(argv[3], &p, 0)) == 0 && p == argv[3]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 3:
-		if((transport = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		if((source = strtoul(argv[1], &p, 0)) == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		if((destination = strtoul(argv[2], &p, 0)) == 0 && p == argv[2]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		break;
-	}
-
-	return SRmmove(rp, transport, source, destination, invert);
-}
-
-static int32_t
-cmdestatus(ScsiReq *rp, int argc, char *argv[])
-{
-	uint8_t *list, *lp, type;
-	int32_t d, i, n, nbytes, status;
-	char *p;
-
-	type = 0;
-	nbytes = 4096;
-
-	switch(argc){
-
-	default:
-		rp->status = Status_BADARG;
-		return -1;
-
-	case 2:
-		if((nbytes = strtoul(argv[1], &p, 0)) == 0 && p == argv[1]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		/*FALLTHROUGH*/
-
-	case 1:
-		if((type = strtoul(argv[0], &p, 0)) == 0 && p == argv[0]){
-			rp->status = Status_BADARG;
-			return -1;
-		}
-		break;
-
-	case 0:
-		break;
-	}
-
-	list = malloc(nbytes);
-	if(list == 0){
-		rp->status = STnomem;
-		return -1;
-	}
-	status = SRestatus(rp, type, list, nbytes);
-	if(status == -1){
-		free(list);
-		return -1;
-	}
-
-	lp = list;
-	nbytes = ((lp[5]<<16)|(lp[6]<<8)|lp[7])-8;
-	Bprint(&bout, " Header\n   ");
-	for(i = 0; i < 8; i++){				/* header */
-		Bprint(&bout, " %2.2X", *lp);
-		lp++;
-	}
-	Bputc(&bout, '\n');
-
-	while(nbytes > 0){				/* pages */
-		i = ((lp[5]<<16)|(lp[6]<<8)|lp[7]);
-		nbytes -= i+8;
-		Bprint(&bout, " Type");
-		for(n = 0; n < 8; n++)			/* header */
-			Bprint(&bout, " %2.2X", lp[n]);
-		Bprint(&bout, "\n   ");
-		d = (lp[2]<<8)|lp[3];
-		lp += 8;
-		for(n = 0; n < i; n++){
-			if(n && (n % d) == 0)
-				Bprint(&bout, "\n   ");
-			Bprint(&bout, " %2.2X", *lp);
-			lp++;
-		}
-		if(n && (n % d))
-			Bputc(&bout, '\n');
-	}
-
-	free(list);
-	return status;
-}
-
-static int32_t
-cmdhelp(ScsiReq *rp, int argc, char *argv[])
-{
-	ScsiCmd *cp;
-	char *p;
-
-	USED(rp);
-	if(argc)
-		p = argv[0];
-	else
-		p = 0;
-	for(cp = scsicmds; cp->name; cp++){
-		if(p == 0 || strcmp(p, cp->name) == 0)
-			Bprint(&bout, "%s\n", cp->help);
-	}
-	return 0;
-}
-
-static int32_t
-cmdprobe(ScsiReq *rp, int argc, char *argv[])
-{
-	char buf[32];
-	ScsiReq scsireq;
-	char *ctlr, *unit;
-
-	USED(argc, argv);
-	rp->status = STok;
-	scsireq.flags = 0;
-
-	for(ctlr="CDEFGHIJ0123456789abcdef"; *ctlr; ctlr++) {
-		/*
-		 * I can guess how many units you have.
-		 * SATA controllers can have more than two drives each.
-		 */
-		if(*ctlr >= 'C' && *ctlr <= 'D')
-			unit = "01";
-		else if((*ctlr >= '0' && *ctlr <= '9')
-		     || (*ctlr >= 'a' && *ctlr <= 'f'))
-			unit = "0123456789abcdef";	/* allow wide scsi */
-		else
-			unit = "01234567";
-
-		for(; *unit; unit++){
-			sprint(buf, "/dev/sd%c%c", *ctlr, *unit);
-			if(SRopenraw(&scsireq, buf) == -1)
-				continue;
-			SRreqsense(&scsireq);
-			switch(scsireq.status){
-			case STok:
-			case Status_SD:
-				Bprint(&bout, "%s: ", buf);
-				cmdinquiry(&scsireq, 0, 0);
-				break;
-			}
-			SRclose(&scsireq);
-		}
-	}
-	return 0;
-}
-
-static int32_t
-cmdclose(ScsiReq *rp, int argc, char *argv[])
-{
-	USED(argc, argv);
-	return SRclose(rp);
-}
-
-static int32_t
-cmdopen(ScsiReq *rp, int argc, char *argv[])
-{
-	int raw;
-	int32_t status;
-
-	raw = 0;
-	if(argc && strcmp("-r", argv[0]) == 0){
-		raw = 1;
-		argc--, argv++;
-	}
-	if(argc != 1){
-		rp->status = Status_BADARG;
-		return -1;
-	}
-	if(raw == 0){
-		if((status = SRopen(rp, argv[0])) != -1 && verbose)
-			Bprint(&bout, "%sblock size: %ld\n",
-				rp->flags&Fbfixed? "fixed ": "", rp->lbsize);
-	}
-	else {
-		status = SRopenraw(rp, argv[0]);
-		rp->lbsize = 512;
-	}
-	return status;
-}
-
-static ScsiCmd scsicmds[] = {
-	{ "ready",	cmdready,	1,		/*[0x00]*/
-	  "ready",
-	},
-	{ "rewind",	cmdrewind,	1,		/*[0x01]*/
-	  "rewind",
-	},
-	{ "rezero",	cmdrewind,	1,		/*[0x01]*/
-	  "rezero",
-	},
-	{ "reqsense",	cmdreqsense,	1,		/*[0x03]*/
-	  "reqsense",
-	},
-	{ "format",	cmdformat,	0,		/*[0x04]*/
-	  "format",
-	},
-	{ "rblimits",	cmdrblimits,	1,		/*[0x05]*/
-	  "rblimits",
-	},
-	{ "read",	cmdread,	1,		/*[0x08]*/
-	  "read [|]file [nbytes]",
-	},
-	{ "write",	cmdwrite,	1,		/*[0x0A]*/
-	  "write [|]file [nbytes]",
-	},
-	{ "seek",	cmdseek,	1,		/*[0x0B]*/
-	  "seek offset [whence]",
-	},
-	{ "filemark",	cmdfilemark,	1,		/*[0x10]*/
-	  "filemark [howmany]",
-	},
-	{ "space",	cmdspace,	1,		/*[0x11]*/
-	  "space [-f] [-b] [[--] howmany]",
-	},
-	{ "inquiry",	cmdinquiry,	1,		/*[0x12]*/
-	  "inquiry",
-	},
-	{ "modeselect6",cmdmodeselect6,	1,		/*[0x15] */
-	  "modeselect6 bytes...",
-	},
-	{ "modeselect",	cmdmodeselect10, 1,		/*[0x55] */
-	  "modeselect bytes...",
-	},
-	{ "modesense6",	cmdmodesense6,	1,		/*[0x1A]*/
-	  "modesense6 [page [nbytes]]",
-	},
-	{ "modesense",	cmdmodesense10, 1,		/*[0x5A]*/
-	  "modesense [page [nbytes]]",
-	},
-	{ "start",	cmdstart,	1,		/*[0x1B]*/
-	  "start [code]",
-	},
-	{ "stop",	cmdstop,	1,		/*[0x1B]*/
-	  "stop",
-	},
-	{ "eject",	cmdeject,	1,		/*[0x1B]*/
-	  "eject",
-	},
-	{ "ingest",	cmdingest,	1,		/*[0x1B]*/
-	  "ingest",
-	},
-	{ "capacity",	cmdcapacity,	1,		/*[0x25]*/
-	  "capacity",
-	},
-
-	{ "blank",	cmdblank,	1,		/*[0xA1]*/
-	  "blank [track/LBA [type]]",
-	},
-//	{ "synccache",	cmdsynccache,	1,		/*[0x35]*/
-//	  "synccache",
-//	},
-	{ "rtoc",	cmdrtoc,	1,		/*[0x43]*/
-	  "rtoc [track/session-number [format]]",
-	},
-	{ "rdiscinfo",	cmdrdiscinfo,	1,		/*[0x51]*/
-	  "rdiscinfo",
-	},
-	{ "rtrackinfo",	cmdrtrackinfo,	1,		/*[0x52]*/
-	  "rtrackinfo [track]",
-	},
-
-	{ "cdpause",	cmdcdpause,	1,		/*[0x4B]*/
-	  "cdpause",
-	},
-	{ "cdresume",	cmdcdresume,	1,		/*[0x4B]*/
-	  "cdresume",
-	},
-	{ "cdstop",	cmdcdstop,	1,		/*[0x4E]*/
-	  "cdstop",
-	},
-	{ "cdplay",	cmdcdplay,	1,		/*[0xA5]*/
-	  "cdplay [track-number] or [-r [LBA [length]]]",
-	},
-	{ "cdload",	cmdcdload,	1,		/*[0xA6*/
-	  "cdload [slot]",
-	},
-	{ "cdunload",	cmdcdunload,	1,		/*[0xA6]*/
-	  "cdunload [slot]",
-	},
-	{ "cdstatus",	cmdcdstatus,	1,		/*[0xBD]*/
-	  "cdstatus",
-	},
-//	{ "getconf",	cmdgetconf,	1,		/*[0x46]*/
-//	  "getconf",
-//	},
-
-//	{ "fwaddr",	cmdfwaddr,	1,		/*[0xE2]*/
-//	  "fwaddr [track [mode [npa]]]",
-//	},
-//	{ "treserve",	cmdtreserve,	1,		/*[0xE4]*/
-//	  "treserve nbytes",
-//	},
-//	{ "trackinfo",	cmdtrackinfo,	1,		/*[0xE5]*/
-//	  "trackinfo [track]",
-//	},
-//	{ "wtrack",	cmdwtrack,	1,		/*[0xE6]*/
-//	  "wtrack [|]file [nbytes [track [mode]]]",
-//	},
-//	{ "load",	cmdload,	1,		/*[0xE7]*/
-//	  "load",
-//	},
-//	{ "unload",	cmdunload,	1,		/*[0xE7]*/
-//	  "unload",
-//	},
-//	{ "fixation",	cmdfixation,	1,		/*[0xE9]*/
-//	  "fixation [toc-type]",
-//	},
-	{ "einit",	cmdeinit,	1,		/*[0x07]*/
-	  "einit",
-	},
-	{ "estatus",	cmdestatus,	1,		/*[0xB8]*/
-	  "estatus",
-	},
-	{ "mmove",	cmdmmove,	1,		/*[0xA5]*/
-	  "mmove transport source destination [invert]",
-	},
-
-	{ "help",	cmdhelp,	0,
-	  "help",
-	},
-	{ "probe",	cmdprobe,	0,
-	  "probe",
-	},
-	{ "close",	cmdclose,	1,
-	  "close",
-	},
-	{ "open",	cmdopen,	0,
-	  "open [-r] sddev",
-	},
-	{ 0, 0 },
-};
-
-#define	SEP(c)	(((c)==' ')||((c)=='\t')||((c)=='\n'))
-
-static char *
-tokenise(char *s, char **start, char **end)
-{
-	char *to;
-	Rune r;
-	int n;
-
-	while(*s && SEP(*s))				/* skip leading white space */
-		s++;
-	to = *start = s;
-	while(*s){
-		n = chartorune(&r, s);
-		if(SEP(r)){
-			if(to != *start)		/* we have data */
-				break;
-			s += n;				/* null string - keep looking */
-			while(*s && SEP(*s))
-				s++;
-			to = *start = s;
-		}
-		else if(r == '\''){
-			s += n;				/* skip leading quote */
-			while(*s){
-				n = chartorune(&r, s);
-				if(r == '\''){
-					if(s[1] != '\'')
-						break;
-					s++;		/* embedded quote */
-				}
-				while (n--)
-					*to++ = *s++;
-			}
-			if(!*s)				/* no trailing quote */
-				break;
-			s++;				/* skip trailing quote */
-		}
-		else  {
-			while(n--)
-				*to++ = *s++;
-		}
-	}
-	*end = to;
-	return s;
-}
-
-static int
-parse(char *s, char *fields[], int nfields)
-{
-	int c, argc;
-	char *start, *end;
-
-	argc = 0;
-	c = *s;
-	while(c){
-		s = tokenise(s, &start, &end);
-		c = *s++;
-		if(*start == 0)
-			break;
-		if(argc >= nfields-1)
-			return -1;
-		*end = 0;
-		fields[argc++] = start;
-	}
-	fields[argc] = 0;
-	return argc;
-}
-
-static void
-usage(void)
-{
-	fprint(2, "usage: %s [-6eq] [-m maxiosize] [[-r] /dev/sdXX]\n", argv0);
-	exits("usage");
-}
-
-static struct {
-	int	status;
-	char*	description;
-} description[] = {
-	STnomem,	"buffer allocation failed",
-	STtimeout,	"bus timeout",
-	STharderr,	"controller error of some kind",
-	STok,		"good",
-	STcheck,	"check condition",
-	STcondmet,	"condition met/good",
-	STbusy,		"busy ",
-	STintok,	"intermediate/good",
-	STintcondmet,	"intermediate/condition met/good",
-	STresconf,	"reservation conflict",
-	STterminated,	"command terminated",
-	STqfull,	"queue full",
-
-	Status_SD,	"sense-data available",
-	Status_SW,	"internal software error",
-	Status_BADARG,	"bad argument to request",
-
-	0, 0,
-};
-
-void
-main(int argc, char *argv[])
-{
-	ScsiReq target;
-	char *ap, *av[256];
-	int ac, i, raw = 0;
-	ScsiCmd *cp;
-	long status;
-
-	ARGBEGIN {
-	case 'e':
-		exabyte = 1;
-		/* fallthrough */
-	case '6':
-		force6bytecmds = 1;
-		break;
-	case 'm':
-		ap = ARGF();
-		if(ap == nil)
-			usage();
-		maxiosize = atol(ap);
-		if(maxiosize < 512 || maxiosize > MaxIOsize)
-			sysfatal("max-xfer < 512 or > %d", MaxIOsize);
-		break;
-	case 'r':			/* must be last option and not bundled */
-		raw++;
-		break;
-	case 'q':
-		verbose = 0;
-		break;
-	default:
-		usage();
-	} ARGEND
-
-	if(Binit(&bin, 0, OREAD) == Beof || Binit(&bout, 1, OWRITE) == Beof){
-		fprint(2, "%s: can't init bio: %r\n", argv0);
-		exits("Binit");
-	}
-
-	memset(&target, 0, sizeof target);
-	if (raw) {			/* hack for -r */
-		++argc;
-		--argv;
-	}
-	if(argc && cmdopen(&target, argc, argv) == -1) {
-		fprint(2, "open failed\n");
-		usage();
-	}
-	Bflush(&bout);
-
-	while(ap = Brdline(&bin, '\n')){
-		ap[Blinelen(&bin)-1] = 0;
-		switch(ac = parse(ap, av, nelem(av))){
-
-		default:
-			for(cp = scsicmds; cp->name; cp++){
-				if(strcmp(cp->name, av[0]) == 0)
-					break;
-			}
-			if(cp->name == 0){
-				Bprint(&bout, "eh?\n");
-				break;
-			}
-			if((target.flags & Fopen) == 0 && cp->open){
-				Bprint(&bout, "no current target\n");
-				break;
-			}
-			if((status = (*cp->f)(&target, ac-1, &av[1])) != -1){
-				if(verbose)
-					Bprint(&bout, "ok %ld\n", status);
-				break;
-			}
-			for(i = 0; description[i].description; i++){
-				if(target.status != description[i].status)
-					continue;
-				if(target.status == Status_SD)
-					makesense(&target);
-				else
-					Bprint(&bout, "%s\n", description[i].description);
-				break;
-			}
-			break;
-
-		case -1:
-			Bprint(&bout, "eh?\n");
-			break;
-
-		case 0:
-			break;
-		}
-		Bflush(&bout);
-	}
-	exits(0);
-}
-
-/* USB mass storage fake */
-int32_t
-umsrequest(Umsc *umsc, ScsiPtr *cmd, ScsiPtr *data, int *status)
-{
-	USED(umsc, data, cmd);
-	*status = STharderr;
-	return -1;
-}

+ 0 - 53
sys/src/cmd/scuzz/sense.c

@@ -1,53 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include <disk.h>
-#include "scsireq.h"
-
-extern Biobuf bout;
-
-static char* key[16] = {
-	"no sense",
-	"recovered error",
-	"not ready",
-	"medium error",
-	"hardware error",
-	"illegal request",
-	"unit attention",
-	"data protect",
-	"blank check",
-	"vendor specific",
-	"copy aborted",
-	"aborted command",
-	"equal",
-	"volume overflow",
-	"miscompare",
-	"reserved",
-};
-
-/*
- * use libdisk to read /sys/lib/scsicodes
- */
-void
-makesense(ScsiReq *rp)
-{
-	char *s;
-	int i;
-
-	Bprint(&bout, "sense data: %s", key[rp->sense[2] & 0x0F]);
-	if(rp->sense[7] >= 5 && (s = scsierror(rp->sense[0xc], rp->sense[0xd])))
-		Bprint(&bout, ": %s", s);
-	Bprint(&bout, "\n\t");
-	for(i = 0; i < 8+rp->sense[7]; i++)
-		Bprint(&bout, " %2.2x", rp->sense[i]);
-	Bprint(&bout, "\n");
-}

+ 0 - 416
sys/src/cmd/spell/american

@@ -1,416 +0,0 @@
-accessorize	v,ion,va
-accouter	v,va
-acknowledgment	n
-aggrandize	v,er,va
-airplane	n
-allegorize	v,er
-aluminize	v,ion
-aluminum	n
-americanize	v,ion,va
-amphitheater	n
-analog	n,na
-analyze	v,er,va
-anapest	n
-anathematize	v,ion
-anatomize	v,ion
-anemia	n
-anemic	a
-anesthesia	n
-anesthesiology	n,na
-anesthetic	n,na
-anesthetist	n
-anesthetize	v,ion
-anglicize	v,ion
-antagonize	v,er,va
-anthologize	v,er
-anthropomorphize	v,ion
-apologize	v,er
-apostrophize	v
-apparel	n,v
-appetize	v,er
-arbor	n,na
-archeology	n,na
-ardor	n
-arithmeticize	v,ion
-arithmetize	v
-armor	n,v,er
-armory	n
-artifact	n
-attitudinize	v
-axiomatize	v,ion
-balkanize	v,er,ion
-baptize	v,er
-barrel	n,v,na
-bedevil	v,va
-behavior	n,na
-behavioral	a
-behoove	v
-bejeweled	a
-belabor	v
-bevel	n,v,a
-billboard	n
-borscht	n
-botanize	v
-bowdlerize	v,ion
-bushel	n,v,man
-caliber	n
-canalize	v,ion
-cancel	n,v,er
-candor	n
-carol	n,v,er
-catabolize	v
-catalog	n,v,er
-catalyze	v,er,ion
-catechize	v,er,ion
-categorize	v,er,ion
-cauterize	v,er,ion
-cavil	n,v,er
-Cenozoic	pc
-center	n,v
-centerboard	n
-centered	d
-centering	d
-centers	d
-centiliter	n
-centimeter	n
-cesium	n
-channel	n,v,na
-chanty	n
-chili	d
-chilies	d
-chisel	n,v,er
-clamor	n,v
-clangor	n
-cloture	n,v
-color	n,v,er,na,va
-corbel	n,v
-counsel	n,v
-crystallize	v,er,ion,va
-cudgel	n,v
-decarbonize	v,ion
-decentralize	v,ion
-decolonize	vi,ion
-decriminalize	v,ion
-deemphasize	v
-defense	n
-dehumanize	v,ion
-deionize	v,er,ion
-demagnetize	v,er,ion
-demeanor	v
-demilitarize	v,ion
-demineralize	v,er,ion
-demobilize	v,ion
-demonetize	v,ion
-demoralize	v,er,ion
-demythologize	v,er
-denationalize	v,ion
-denormalize	v,ion
-denuclearize	v,ion
-deodorize	v,er,ion
-depersonalize	v,ion
-depolarize	v,er,ion
-depressurize	v,ion
-desensitize	v,er,ion
-destabilize	v,er,ion
-desterilize	v,ion
-desynchronize	v,ion
-detribalize	v,er,ion
-devil	n,v,va
-devitalize	v,ion
-dialyze	v,er,ion
-diarrhea	n
-dichotomize	v,ion
-dieresis	d
-diopter	n
-disembowel	v,va
-dishevel	v
-disorganize	v,er,ion
-distill	v,er
-distills	d
-dogmatize	v,er,ion
-dowel	n,v
-Dr.	d,nopref
-drafts	man
-dramatize	v,er,ion
-drivel	n,v,er
-economize	v,er,ion
-ecumenical	a
-edema	n
-emphasize	v,er
-enamor	v,va
-encyclopedia	n
-encyclopedic	a
-encyclopedist	n
-endeavor	n,v
-energize	v,er,ion
-eon	n
-epicenter	n
-esophagus	pc
-estrogen	n
-estrus	n
-ether	n,na
-etiology	n
-eulogize	v,er
-euphemize	v
-fantasize	v
-favor	n,v,er
-favorable	a
-favorite	n,a
-fecal	a
-feces	pc
-feminize	v,ion
-fervor	n
-fetal	a
-fetus	n
-fiber	n,ed,na
-flavor	n,v,na
-flection	n,na
-fogy	n,na
-fraternize	v,er,ion
-funnel	n,v
-furor	n
-fuze	n,v
-galvanize	v,er,ion
-gambol	n,v
-gavel	n,v
-generaled	a
-glamor	n,na
-gram	n,v,ms
-gravel	n,v,a
-grovel	v,er
-gruel	n,vi,a
-gynecology	n,na
-gyrostabilize	v,er,ion
-harbor	n,v,er,na
-harmonize	v,er,ion
-hiccup	n,v
-hiccupped	d
-hiccupping	d
-homeopathy	n
-homogenize	v,er,ion
-homologize	v,er
-honor	n,v,er,va
-humor	n,v,na
-hydrolyze	v,va
-hypnotize	v,er,va
-hypostatize	v,ion
-hypothesize	v,ion
-imperil	v,va
-inflect	v,ion
-inquire	v,er
-instill	v,er,va
-iodize	v
-ionize	v,er,ion
-jewel	n,v,a,er
-jewelry	n
-judgment	n,na
-kennel	n,v
-kinesthetic	n,a
-label	n,v,er
-labor	n,v,er
-laborite	n
-Labour	pc
-laundromat	n
-laurel	n,v
-legitimize	v,er,ion
-leukemia	n
-level	n,v,a,comp
-libel	n,v,er,na
-libelous	a
-license	n,v,er,na,va
-licorice	n
-liter	n
-lobotomize	v
-logorrhea	pc
-louver	n,ed
-luster	n,v
-maneuver	n,v,er,va
-marshal	n,v,na
-marvel	n,v
-marvelous	a
-meager	a
-mechanize	v,er,ion
-medieval	a
-memorize	v,er,ion
-mesmerize	v,er,ion
-Messrs.	d,nopref
-metal	n,v,na
-metallize	v,er,ion
-metastasize	v
-militarize	v,ion
-misutilize	n,v,a,ion
-miter	n,v,er,nopref
-model	n,v,a,er
-mold	n,v,er,va,y
-moldboard	n
-molt	v,er
-morsel	n,v,nopref
-Mr.	d,nopref
-Mrs.	d,nopref
-Ms.	d,nopref
-Mt.	d,nopref
-mustache	n,ed
-mythologize	v,er
-narcotize	v
-naught	d
-nebulize	v,er
-neighbor	n,v,a,na
-nickel	n,v
-notarize	v,er,ion
-ocher	n
-odor	n,ed,na
-offense	n,na
-optimize	v,er,ion
-orientation	n,na
-orientations	pc
-orthopedic	n,a
-ostracize	v,er
-pajama	n
-paleobotany	n
-Paleocene	pc
-paleography	n,er
-Paleolithic	a
-paleontology	n,na
-Paleozoic	pc
-pallor	n
-panel	n,v,na,in
-parallel	n,v,a,na
-paralyze	v,er,ion
-parametrize	v,er,ion
-parcel	n,v,a
-parenthesize	v,er,ion
-parlor	n
-pasteurize	v,er,ion
-pedal	n,v,a
-pedestal	n,v
-pediatric	n,a
-pediatrician	n
-pencil	n,v,er
-peptize	v,er,ion
-peril	n,v,nopref
-philosophize	v
-philter	n
-photolyze	v
-photosynthesize	v,er
-picogram	n
-pistol	n,v
-plagiarize	v,er
-plow	n,v,er,va,man
-pommel	n,v
-preprogram	v
-presidium	n
-pretense	n
-pretenses	pc
-prioritize	v,ion,va
-propagandize	v,ion
-proselytize	v,er,ion
-psychoanalyze	v,er,ion
-pulverize	v,er,ion,va
-pummel	v
-pyorrhea	n
-pyrolyze	v,er,ion
-quantize	v,er,ion
-quarrel	n,v,er
-rancor	n
-ravel	n,v,er,va
-realize	v,er,ion,va
-recognize	v,er
-reconnoiter	v
-revel	n,v,er
-rhapsodize	v
-rigor	n,na
-rival	n,v,a
-romanize	v,ion
-rowel	n,v
-ruble	n
-rumor	n,v
-russianize	v,ion
-saber	n,v
-saltpeter	n
-sanitize	v,ion
-savior	n
-savor	n,v,er,nopref
-savory	n,a
-scepter	n,v
-schematize	v,ion
-scrutinize	v,er
-sensitize	v,er,ion
-sentinel	n,v
-sepulcher	n,v
-shovel	n,v,er,na
-shrivel	v
-signal	n,v,a,er,na,man
-simonize	v
-siphon	n,v
-skeptic	n,na
-skillful	a
-smolder	v
-snivel	n,v,er
-snorkel	n,v
-soliloquize	v,er
-somber	a
-specialty	n
-specter	n
-speleology	n,na
-spiral	n,v,a
-spirochete	n
-splendor	n
-squirrel	n,v,a
-Sr.	d,nopref
-St.	d,nopref
-Ste.	d,nopref
-stencil	n,v,er,na
-stigmatize	v,er,ion
-succor	n,v,er
-sulfa	n
-sulfate	n
-sulfide	n,nopref
-sulfur	n,v,na
-summarize	v,er
-swivel	n,v
-symbol	n,v,na
-symmetrize	v,er,ion
-sympathize	v,er
-synchronize	v,er,ion
-synopsize	v
-synthesize	v,er
-systematize	v,er,ion
-tantalize	v,er,ion
-tassel	n,v
-teasel	n,v
-teetotal	v,er,na
-temporize	v,er,ion
-theater	n
-theatergoer	n
-theatergoing	d
-theorize	v,er
-tinsel	n,v,a
-totaled	a
-totaling	a
-totalizator	n
-towel	n,v
-trammel	n,v
-traumatize	v,ion
-travel	n,v,er
-tricolor	n,ed
-trowel	n,v,er
-tumor	n,na
-tunnel	n,v,er,na
-tyrannize	v,er,ion
-tyrranize	v,er
-unfertilized	d
-valor	n,na
-vapor	n,v,er,na,y
-varicolored	d
-victual	n,v,er
-vigor	n
-vise	n,v,ion
-vulcanize	v,er,ion
-wagon	n,er
-watercolor	n,v,na
-weasel	n,v
-whiskey	n
-will	n,v,na,va
-woolen	n,a
-worship	n,v,er,na
-yodel	n,v,er

BIN
sys/src/cmd/spell/amspell


+ 0 - 411
sys/src/cmd/spell/british

@@ -1,411 +0,0 @@
-acclimatise	v,er,ion
-accoutre	v,va
-aeon	n
-aerodrome	n
-aeroplane	n
-aether	n,na
-aetiology	n
-aggrandise	v,va
-alarum	n,v
-allegorise	v,er
-aluminise	v,ion
-aluminium	n
-americanise	v,ion,va
-amphitheatre	n
-anaemia	n
-anaemic	a
-anaesthesia	n
-anaesthesiology	n,na
-anaesthetic	n,na
-anaesthetise	v,ion
-anaesthetist	n
-analyse	v,er,va
-anapaest	n
-anathematise	v,ion
-anatomise	v,ion
-anglicise	v,ion
-antagonise	v,er,va
-anthologise	v,er
-anthropomorphise	v,ion
-apologise	v,er
-apostrophise	v
-apparel	n,v,ms
-appetise	v,er
-arbour	n,na
-archaeology	n,na
-ardour	n
-arithmeticise	v,ion
-arithmetise	v
-armour	n,v,er
-armoury	n
-arse	n
-artefact	n
-attitudinise	v
-aubergine	n
-axiomatise	v
-balkanise	v,er,ion
-baptise	v,er
-barrel	n,v,na,ms
-bedevil	v,va,ms
-behaviour	n,na
-behavioural	a
-behove	v
-bejewelled	a
-belabour	v
-bevel	n,v,a,ms
-borsch	n
-botanise	v
-bowdlerise	v,ion
-bushel	n,v,man,ms
-Caenozoic	pc
-caesium	n
-calibre	n
-canalise	v,ion
-cancel	n,v,er,ms
-candour	n
-carol	n,er
-carolled	d
-carolling	n
-catabolise	v
-catalyse	v,er,ion
-catechise	v,er,ion
-categorise	v,er,ion
-cauterise	v,er,ion
-cavil	n,v,er,ms
-centilitre	n
-centimetre	n
-centre	n,v
-channel	n,v,na,ms
-cheque	n,v
-chilli	d
-chillies	d
-chisel	n,v,er,ms
-clamour	n,v
-clangour	n
-colour	n,v,er,na,va
-connexion	n
-corbel	n,v,ms
-counsel	n,v,ms
-courgette	n
-crystallise	v,er,ion,va
-cudgel	n,v,ms
-decarbonise	v,ion
-decentralise	v,ion
-decolonise	vi,ion
-decriminalise	v,ion
-deemphasise	v
-defence	n,na
-dehumanise	v,ion
-deionise	v,er,ion
-demagnetise	v,er,ion
-demeanour	v
-demilitarise	v,ion
-demineralise	v,er,ion
-demobilise	v,ion
-demonetise	v,ion
-demoralise	v,er,ion
-demythologise	v,er
-denationalise	v,ion
-denormalise	v,ion
-denuclearise	v,ion
-deodorise	v,er,ion
-depersonalise	v,ion
-depolarise	v,er,ion
-depressurise	v,ion
-desensitise	v,er,ion
-destabilise	v,er,ion
-desterilise	v,ion
-desynchronise	v,ion
-detribalise	v,er,ion
-devil	n,v,va,ms
-devitalise	v,ion
-diaeresis	d
-dialyse	v,er,ion
-diarrhoea	n
-dichotomise	v,ion
-dioptre	n
-disembowel	v,va,ms
-dishevel	v,ms
-distil	v,er,ms
-distils	d
-dogmatise	v,er,ion
-dowel	n,v,ms
-Dr	d,nopref
-dramatise	v,er,ion
-draught	n,v,er,y
-draughts	man
-drivel	n,v,er,ms
-economise	v,er,ion
-emphasise	v,er
-enamour	v,va
-encyclopaedia	n
-encyclopaedic	a
-encyclopaedist	n
-endeavour	n,v
-energise	v,er,ion
-epicentre	n
-eulogise	v,er
-euphemise	v
-faecal	a
-faeces	pc
-fantasise	v
-favour	n,v,er
-favourable	a
-favourite	n
-feminise	v,ion
-fervour	n
-fibre	n,ed,na
-flavour	n,v,na
-flexion	n,na
-foetal	a
-foetus	n
-fraternise	v,er,ion
-funnel	n,v,ms
-galvanise	v,er,ion
-gambol	n,v,ms
-gaol	n
-gavel	n,v,ms
-generalled	a
-glamour	n,na
-goitre	n
-gramme	n,v
-gravel	n,v,a,ms
-grovel	v,er,ms
-gruel	n,vi,ms
-gynaecology	n,na
-gyrostabilise	v,er,ion
-harbour	n,v,er,na
-harmonise	v,er,ion
-homoeopathy	n
-homogenise	v,er,ion
-homologise	v,er
-honour	n,v,er,va
-humour	n,v,na
-hydrolyse	v,va
-hypnotise	v,er,va
-hypostatise	v,ion
-hypothesise	v,ion
-imperil	v,va,ms
-inflect	v
-inflexion	n
-instil	v,va,ms
-instils	pc
-iodise	v
-ionise	v,er,ion
-jewel	n,v,a,er,ms
-kennel	n,v,ms
-kinaesthetic	a
-label	n,v,er,ms
-labour	n,v,er
-labourite	n
-laundermat	n
-laurel	n,v,ms
-learnt	d
-legitimise	v,er,ion
-leukaemia	n
-leukaemic	n,a
-level	n,v,a,comp,ms
-libel	n,v,er,na,ms
-libellous	a
-licence	n,v,er
-licenceable	a
-liquorice	n
-litre	n
-lobotomise	v
-logorrhoea	pc
-lustre	n,v
-manoeuvre	n,v,er,va
-marshal	n,v,na,ms
-marshaled	s
-marshalled	d
-marvel	n,v,ms
-marvellous	a
-meagre	a
-mechanise	v,er,ion
-mediaeval	a
-memorise	v,er,ion
-mesmerise	v,er,ion
-Messrs	d,nopref
-metal	n,v,na,ms
-metastasise	v
-metre	n
-militarise	v,ion
-mitre	n,v,er
-model	n,v,a,er,ms
-morsel	n,v,nopref,ms
-mould	n,v,er,va,y
-moult	v,er
-Mr	d,nopref
-Mrs	d,nopref
-Ms	d,nopref
-Mt	d,nopref
-mythologise	v,er
-narcotise	v
-nebulise	v,er
-neighbour	n,v
-nickel	n,v,ms
-notarise	v,er,ion
-nought	d
-ochre	n
-odour	n,ed,na
-oecumenical	a
-oedema	n
-oesophagus	n
-oestrogen	n
-oestrus	n
-offence	n,na
-optimise	v,er,ion
-orientate	v,er,ion
-orthopaedic	n,a
-ostracise	v,er
-paediatric	n,a
-paediatrician	n
-palaeobotany	n
-Palaeocene	pc
-palaeography	n,er
-Palaeolithic	a
-palaeontology	n,na
-Palaeozoic	pc
-pallour	n
-panel	n,v,na,ms,in
-parallel	n,v,a,na,ms
-paralyse	v,er,ion
-parametrise	v,er,ion
-parcel	n,v,a,ms
-parenthesise	v,er,ion
-parlour	n
-pasteurise	v,er,ion
-pedal	n,v,a,ms
-pedestal	n,v,ms
-pencil	n,v,er,ms
-peptise	v,er,ion
-peril	n,v,nopref,ms
-philosophise	v
-philtre	n
-photolyse	v
-photosynthesise	v,er
-picogramme	n
-pistol	n,v,ms
-plagiarise	v,er
-plough	n,v,er,va,man
-pommel	n,v,ms
-practise	n,v
-praesidium	n
-preprogramme	v
-pretence	n
-pretences	pc
-prioritise	v,ion,va
-programme	n,v
-propagandise	v,ion
-proselytise	v,er,ion
-pulverise	v,er,ion,va
-pummel	v,ms
-pyjama	n
-pyorrhoea	n
-pyrolyse	v,er,ion
-quantise	v,er,ion
-quarrel	n,v,er,ms
-rancour	n
-ravel	n,v,er,va,ms
-realise	v,er,ion,va
-recognise	v,er
-reconnoitre	v
-revel	n,v,er,ms
-rhapsodise	v
-rigour	n,na
-rival	n,v,a,ms
-romanise	v,ion
-rouble	n
-rowel	n,v,ms
-rumour	n,v
-russianise	v,ion
-sabre	n,v
-saltpetre	n
-sanitise	v,ion
-saviour	n
-savour	n,v,er
-savoury	n,na
-sceptic	n,na
-sceptre	n,v
-schematise	v,ion
-scrutinise	v,er
-sensitise	v,er,ion
-sentinel	n,v,ms
-sepulchre	n,v
-shovel	n,v,er,na,ms
-shrivel	v,ms
-signal	n,v,a,er,man,ms
-skilful	a
-smoulder	v
-snivel	n,v,er,ms
-snorkel	n,v,ms
-soliloquise	v,er
-sombre	a
-speciality	n
-spectre	n
-spelaeology	n,na
-spiral	n,v,a,ms
-spirochaete	n
-splendour	n
-squirrel	n,v,a,ms
-Sr	d,nopref
-St	d,nopref
-Ste	d,nopref
-stencil	n,v,er,na,ms
-stigmatise	v,er,ion
-storey	n
-succour	n,v,er
-sulpha	n
-sulphate	n
-sulphide	n
-sulphur	n,v,na
-summarise	v,er
-swivel	n,v,ms
-symbol	n,v,na,ms
-symmetrise	v,er,ion
-sympathise	v,er
-synchronise	v,er,ion
-synopsise	v
-synthesise	v,er
-syphon	n,v
-systematise	v,er,ion
-tantalise	v,er,ion
-tassel	n,v,ms
-teasel	n,v,ms
-teetotal	v,er,ms
-temporise	v,er,ion
-theatre	n
-theorise	v,er
-tinsel	n,v,a,ms
-totalisator	n
-totalled	a
-totalling	a
-towel	n,v,ms
-trammel	n,v,ms
-traumatise	v,er,ion
-travel	n,v,er,ms
-tricolour	n,ed
-trowel	n,v,er,ms
-tumour	n,na
-tunnel	n,v,er,na,ms
-tyrannise	v,er,ion
-tyre	n
-tyrranise	v,er
-unfertilised	d
-valour	n,na
-vapour	n,v,er,na,y
-varicoloured	d
-victual	n,v,er,ms
-vigour	n
-vise	v,ion
-vulcanise	v,er,ion
-waggon	n,er
-watercolour	n,v,na
-weasel	n,v,ms
-whilst	d
-whisky	n
-wilful	a
-will	n,v,va
-woollen	n,a
-worship	n,v,er,na,ms
-yodel	n,v,er,ms

BIN
sys/src/cmd/spell/brspell


+ 0 - 37
sys/src/cmd/spell/code.h

@@ -1,37 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-
-/*
- * affix codes
- */
-
-#define	ED		(1<<0)	/* +ed, +ing */
-#define	ADJ		(1<<1)	/* (nce)-t_ce, +ize,+al, +ness, -t+cy, +ity, +ly */
-#define	NOUN		(1<<2)	/* +s (+es), +make, +hood, +ship +less  */
-#define PROP_COLLECT	(1<<3)	/* +'s,  +an, +ship(for -manship) +less */
-#define ACTOR		(1<<4)	/* +er  */
-#define	EST		(1<<5)
-#define COMP		(EST|ACTOR)	/* +er,+est */
-#define	DONT_TOUCH	(1<<6)
-#define	ION		(1<<7)	/* +ion, +or */
-#define	N_AFFIX		(1<<8) 	/* +ic, +ive, +ize, +like, +al, +ful, +ism, +ist, -t+cy, +c (maniac) */
-#define	V_AFFIX		(1<<9)	/* +able, +ive, +ity((bility), +ment */
-#define	V_IRREG		(1<<10)	/* +ing +es +s*/
-#define	VERB		(V_IRREG|ED)
-#define MAN		(1<<11)	/* +man, +men, +women, +woman */
-#define	ADV		(1<<12)	/* +hood, +ness */
-#define STOP		(1<<14)	/* stop list */
-#define	NOPREF		(1<<13)	/* no prefix */
-
-#define MONO		(1<<15)	/* double final consonant as in fib->fibbing */
-#define IN		(1<<16) /* in- im- ir, not un- */
-#define _Y		(1<<17)	/* +y */
-
-#define ALL		(~(NOPREF|STOP|DONT_TOUCH|MONO|IN))    /*anything goes (no stop or nopref)*/

+ 0 - 29383
sys/src/cmd/spell/list

@@ -1,29383 +0,0 @@
-AAA	pc,nopref
-AAAS	pc,nopref
-aardvark	n
-Aaron	n
-AARP	pc,nopref
-AAU	pc,nopref
-AAUP	pc,nopref
-AAUW	pc,nopref
-ABA	pc,nopref
-Ababa	pc
-aback	d
-abacus	n
-abaft	d
-abalone	n
-abandon	v,er,va
-abase	v,er,va
-abash	v,er,va
-abate	v,er,va
-abattoir	n
-abbe	n
-abbess	n
-abbey	n
-abbot	n
-Abbott	n
-abbreviate	v,ion
-abc	n
-abcdefghijklmnopqrstuvwxyz	d
-abdicate	v,ion,va
-abdomen	n
-abdominal	a
-abduct	v,ion
-Abe	pc
-abeam	d
-abed	d
-Abel	pc
-Abelian	pc
-Abelson	n
-Aberdeen	pc
-Abernathy	n
-aberrant	n,a
-aberrate	v,ion
-abet	v,er,va,ms
-abettor	n
-abeyant	a
-abhor	v,er,ms
-abhorrent	a
-abide	v,er
-Abidjan	pc
-Abigail	pc
-abject	a,ion
-abjuration	n
-abjure	v,er
-ablate	v,ion
-ablaut	n
-ablaze	d
-able	v,a,comp,va
-abloom	d
-ablution	n
-ABM	n,nopref
-abnegate	v,ion
-Abner	pc
-abnormal	n,a
-aboard	d
-abode	n
-abolish	v,er,va
-abolition	n,na
-abolitionary	n
-abomasum	n
-abominable	a
-abominate	v,ion
-aboriginal	n,a
-aborigine	n
-aborning	d
-abort	v,er,ion
-abortifacient	n
-abound	v
-about	d,nopref
-above	d,nopref
-aboveboard	d
-aboveground	d
-abovementioned	d
-abracadabra	n
-abrade	v,er,va
-Abraham	n
-Abram	n
-Abramson	n
-abrasion	n,na
-abreact	v,ion
-abreast	d
-abridge	v,er,va
-abridgment	n
-abroad	d
-abrogate	v,ion
-abrupt	a,ion
-Absalom	pc,nopref
-abscess	n,v
-abscissa	n
-abscissae	d
-abscission	n
-abscond	v,er
-absent	v,a
-absentee	n
-absenteeism	n
-absentia	n
-absentminded	a
-absinthe	n
-absolute	n,a,ion,na
-absolve	v,er
-absorb	v,er,va
-absorbent	a
-absorption	n,na
-abstain	v,er
-abstemious	a
-abstention	n
-abstinent	a
-abstract	n,v,a,er,ion
-abstruse	a
-absurd	a,na
-absurdum	d
-abuilding	d
-abundant	a
-abuse	n,v,er,va
-abusive	a
-abut	v,er,va,ms
-abysmal	a
-abyss	n
-abyssal	a
-Abyssinia	pc
-AC	d,nopref
-acacia	n
-Acad.	d,nopref
-academe	pc,na
-academia	pc
-academic	n,na
-academician	n
-academy	n
-Acadia	pc
-acanthus	n
-Acapulco	pc
-accede	v
-accelerando	d
-accelerant	n
-accelerate	v,ion
-accelerometer	n
-accent	n,v,na
-accentual	a
-accentuate	v,ion
-accept	v,er,va
-acceptant	a
-acceptor	n
-access	n,v
-accessible	a,in
-accession	n,v,na
-accessory	n,na
-accident	n,a
-accidental	n,a
-accipiter	n
-acclaim	n,v,er
-acclamation	n
-acclimate	n,v,ion
-acclimatize	v,er,ion
-accolade	n
-accommodate	v,ion
-accompaniment	n
-accompanist	n
-accompany	v,na
-accompli	d
-accomplice	n
-accomplish	v,er,va
-accord	n,v
-accordant	a
-accordion	n,na
-accost	v
-account	n,v,va
-accountant	n,a,na
-Accra	pc
-accredit	v,va
-accreditation	n
-accrete	v
-accretion	n,na
-accretionary	n
-accrual	n
-accrue	v,va
-acculturate	v,ion
-accumulate	v,ion
-accuracy	n,in
-accurate	a,in
-accursed	a
-accusation	n,na
-accusatory	d
-accuse	v,er
-accustom	v
-ace	n,v,nopref
-acentric	d
-acerb	a
-acerbic	a
-acetaldehyde	n
-acetate	n
-acetic	d
-acetify	v,er,ion
-acetone	n
-acetyl	n,na
-acetylene	n
-ache	n,v,er
-achieve	v,er,va
-Achilles	pc
-aching	a
-achondrite	n,na
-achromatic	a
-acid	n,a
-acidic	d
-acidify	v,er,ion
-acidimeter	n,na
-acidulous	a
-Ackley	n
-acknowledge	v,va
-acknowledgeable	d
-ACLU	pc,nopref
-ACM	pc,nopref
-acme	pc
-acne	n
-acolyte	n
-acorn	n
-acoustic	n,a
-acoustician	n
-acoustoelectric	a,na
-acoustooptic	n,a,na
-acquaint	v
-acquaintance	n,na
-acquiesce	v
-acquiescent	a
-acquire	v,va
-acquisition	n,na
-acquit	v,er,ms
-acquittal	n
-acre	n
-acreage	pc
-acrid	a
-acrimonious	a
-acrimony	n
-acrobat	n
-acrobatic	n,na
-acrolein	n
-acronym	n
-acrophobe	n
-acropolis	n
-across	d
-acrostic	n
-acrylate	n
-acrylic	n
-ACS	pc,nopref
-act	n,v,ion,va
-Actaeon	pc
-actinic	na
-actinide	n
-actinium	n
-actinometer	n,na
-activate	v,ion,in
-activism	pc
-Acton	n
-actress	n
-actual	a,na
-actuarial	a
-actuary	n
-actuate	v,ion
-acuity	n
-acumen	n
-acupuncture	n,na
-Acura	n
-acute	a
-acyclic	a
-acyl	n
-A.D.	d,nopref
-ad	n,man
-Ada	pc
-adage	n
-adagio	n
-Adair	pc
-Adam	pc
-adamant	a
-adamantine	a
-Adams	n
-Adamson	n
-adapt	v,er,ion,va
-adaptation	n,na
-adaptive	a
-adaptor	n
-add	v,er,va
-addend	n
-addenda	pc
-addendum	pc
-addict	n,v,ion
-Addis	pc
-Addison	n
-addition	n,na
-addle	v
-address	n,v,er,na,va
-addressee	n
-Addressograph	pc
-adduce	v,er,va
-Adelaide	pc
-Adele	pc
-Adelia	pc
-Adelphi	pc
-Aden	pc
-adenine	n
-adenoid	n,na
-adenoma	n
-adenosine	n
-adept	n,a
-adequacy	n,in
-adequate	a,in
-adhere	v
-adherent	n,a
-adhesion	n,na
-adiabatic	n
-Adidas	pc
-adieu	n
-adipose	a
-Adirondack	n
-adjacent	a
-adjectival	a
-adjective	n,a
-adjoin	v
-adjoint	n
-adjourn	v,va
-adjudge	v
-adjudicate	v,ion
-adjunct	n,a,ion
-adjuration	n
-adjure	v
-adjust	v,er,va
-adjutant	n,a
-Adkins	n
-Adler	n
-administer	v
-administrable	d
-administrate	v,ion
-administratrix	d
-admiral	n
-admiralty	n
-admiration	n
-admire	v,er,va
-admissible	a,in
-admission	n,na
-admit	v,er,ms
-admittance	n
-admix	v
-admixture	n
-admonish	v,er,va
-admonition	n
-admonitory	a
-ado	d,nopref
-adobe	n,er
-adolescent	n,a
-Adolf	pc
-Adolph	pc
-Adolphus	pc
-Adonis	pc
-adopt	v,er,ion,va
-adoration	n
-adore	v,er,va
-adorn	v,er,va
-adrenal	n,a
-adrenalin	n
-adrenaline	n
-Adrian	pc
-Adriatic	pc
-Adrienne	pc
-adrift	d
-adroit	a,comp
-adsorb	v,va
-adsorbate	n
-adsorbent	n
-adsorption	n,na
-adulate	v,ion
-adult	n,a
-adulterant	n
-adulterate	v,ion
-adulterer	n
-adulteress	n
-adulterous	a
-adultery	n
-adumbrate	v,ion
-advance	v,er,va
-advantage	n,v
-advantageous	a
-advection	n,na
-advent	n,na
-adventitial	a
-adventitious	a
-adventure	n,v,er,na
-adventuresome	a
-adventuress	n
-adventurous	a
-adverb	n
-adverbial	a
-adversarial	a
-adversary	n,a
-adverse	a
-advert	n,v
-advertent	a,in
-advertise	v,er,va
-advice	pc
-advise	v,er,va
-advisee	n
-advisor	n,y
-advisory	n
-advocacy	n
-advocate	n,v,ion
-adz	n
-adze	n
-Aegean	pc
-aegis	n
-Aeneas	pc
-Aeneid	pc
-aeolian	d
-Aeolus	pc
-aerate	v,a,ion,va
-aerial	n,a,na
-aerie	n
-Aerobacter	pc
-aerobatic	n
-aerobic	n,na
-aerodynamic	n,na
-aeronautic	n,na
-aerosol	n,na
-aerospace	n
-Aeschylus	pc
-Aesop	pc,nopref
-aesthete	n
-aesthetic	a
-afar	d
-affable	a,va
-affair	n
-affect	n,v,ion,va
-affectation	n
-affectionate	a
-afferent	a
-affiance	n,v
-affidavit	n
-affiliate	n,v,ion
-affine	n,ed,a
-affinity	n
-affirm	v,va
-affirmation	n,na
-affix	v,va
-affixation	n
-afflatus	n
-afflict	v,er,ion
-affluent	n,a
-afford	v,va
-afforest	v
-afforestation	n
-affray	n,v
-affright	n,v
-affront	n,v
-afghan	n
-Afghanistan	pc
-aficionado	n
-afield	d
-afire	d
-AFL	pc,nopref
-aflame	d
-afloat	d
-aflutter	d
-afoot	d
-aforementioned	d
-aforesaid	d
-aforethought	d
-afoul	d
-afraid	d
-afresh	d
-Africa	pc
-Afrikaans	pc
-Afrikaner	pc
-afro	n
-aft	er
-afterbirth	n
-afterburner	n
-aftercare	pc
-afterdeck	n
-aftereffect	n
-afterglow	n
-afterimage	n
-afterlife	n
-aftermarket	n
-aftermath	n
-aftermost	d
-afternoon	n
-aftershock	n
-aftertaste	n
-afterthought	n
-afterward	n
-afterworld	n
-again	d,nopref
-against	d,nopref
-Agamemnon	pc
-agamic	a
-agape	d
-agar	n,nopref
-agaric	n
-agate	n,nopref
-Agatha	pc
-agave	n
-age	n,v
-Agee	n
-agelong	d
-agenda	pc,na
-agendum	pc
-agent	n,a
-agglomerate	v,ion
-agglutinate	v,ion
-agglutinin	n
-aggrade	v
-aggravate	v,ion
-aggregate	n,v,a,ion
-aggression	n,na
-aggressor	n
-aggrieve	v
-aghast	d
-agile	a
-agitate	v,ion
-agitprop	pc
-agleam	d
-agley	d
-aglitter	d
-aglow	d
-Agnes	pc
-Agnew	n
-agnomen	n
-agnostic	n,na
-ago	d,nopref
-agog	d
-agon	n
-agone	na
-agony	n
-agora	n
-agoraphobe	n
-agouti	n
-agrarian	n,na
-agree	v,va
-agreeable	a
-agribusiness	n
-Agricola	pc
-agricultural	a,na
-agriculture	n,na
-agrimony	n
-agronomist	n
-agronomy	n,na
-aground	d
-ague	n
-Aguilar	n
-Agway	pc
-ah	n,nopref
-aha	n
-Ahab	pc
-ahead	d
-ahem	d
-Ahmadabad	pc
-ahoy	d
-aid	n,v,er,nopref
-Aida	pc
-aide	n,nopref
-Aiken	pc
-ail	n,v,nopref
-ailanthus	pc
-Aileen	pc
-aileron	n
-ailment	n
-aim	n,v
-ain't	d
-Ainu	n
-air	n,v,man,y
-airbag	n
-airborne	d
-airbrush	n,v
-Airbus	n
-aircraft	n
-airdrop	n,v,va
-Airedale	n,nopref
-Aires	pc
-airfare	n
-airfield	n
-airflow	n
-airfoil	n
-airframe	n
-airhead	n
-airlift	n,v
-airline	n,er
-airlock	n
-airmail	n,v
-airmass	n
-airpark	n
-airport	n
-airscrew	n
-airsick	a
-airspace	n
-airspeed	n
-airstream	n
-airstrip	n
-airtight	a
-airwave	n
-airway	n
-airworthy	a
-aisle	n
-Aitken	pc
-ajar	d
-Ajax	pc
-AK	pc,nopref
-AK47	n
-Akers	n
-akido	pc
-akimbo	d
-akin	d,nopref
-Akkadian	n
-Akron	pc
-akvavit	n
-Al	n,nopref
-Alabama	pc
-Alabamian	n
-alabaster	n
-alack	d
-alacrity	n
-Aladdin	pc
-Alameda	pc
-Alamo	pc
-Alan	pc
-alar	n,nopref
-alarm	n,v,na
-alas	d
-Alaska	pc
-alb	n
-albacore	n
-Albania	pc
-Albanian	n
-Albany	pc
-albatross	n
-albedo	n
-albeit	d
-Alberich	pc
-Albert	n
-Alberta	pc
-Alberto	pc
-albinism	n
-albino	n
-Albion	pc
-Albrecht	pc
-Albright	n
-album	n
-albumen	n
-albumin	n
-Albuquerque	pc
-Alcestis	pc
-alchemical	a
-alchemist	n,na
-alchemy	n
-Alcmena	pc
-Alcoa	pc
-alcohol	n,na
-alcoholic	n,na
-Alcott	pc
-alcove	n
-Aldebaran	pc
-aldehyde	n
-Alden	n
-alder	n,man
-Aldrich	n
-aldrin	n
-ale	n
-Alec	pc
-Aleck	pc
-alehouse	n
-alembic	n
-aleph	n
-alert	n,v,a
-Aleut	pc
-Aleutian	n
-alewife	pc
-Alex	pc
-Alexander	n
-Alexandra	pc
-Alexandria	pc
-alexandrine	n
-Alexis	pc
-alfalfa	n
-Alfonso	pc
-Alfred	pc
-Alfredo	pc
-alfresco	d
-alga	pc,nopref
-algae	pc
-algal	d
-algebra	n
-algebraic	n
-Algenib	pc
-Alger	n
-Algeria	pc
-Algerian	n
-Algiers	pc
-Algol	pc
-Algonquin	n
-algorithm	n
-algorithmic	n,a,na
-Alhambra	pc
-Ali	pc
-alia	d
-alias	n,v
-alibi	n
-Alice	pc
-Alicia	pc
-alidade	n
-alien	n,a,va
-alienate	v,ion
-alienee	n
-alienor	n
-alight	v
-align	v,er,va
-alike	a
-aliment	n,v,na
-alimentary	d
-alimentation	n
-alimony	n
-aliphatic	d
-aliquot	n
-Alison	pc
-Alistair	pc
-alive	a
-alizarin	n
-alkali	n
-alkaline	a,na
-alkaloid	n
-alkane	n
-alkene	n
-alkyd	n
-alkyl	n
-all	d
-Allah	pc
-allay	v
-allegation	n
-allege	v
-Alleghenies	d
-Allegheny	pc
-allegiant	a
-allegoric	n
-allegorist	n
-allegory	n
-Allegra	pc
-allegretto	n
-allegro	n
-allele	n,na
-alleluia	d
-allemand	n
-Allen	pc
-Allentown	pc
-allergen	n
-allergenic	d
-allergic	d
-allergist	n
-allergy	n
-alleviate	v,ion
-alley	n
-alleyway	n
-alliance	n
-alligator	n
-Allis	pc
-Allison	pc
-alliterate	v,ion
-allocable	d
-allocate	v,ion,va
-allophone	n
-allophonic	d
-allot	v,va,ms
-allotrope	n
-allotropic	n
-allow	v,va
-allowance	n,v
-alloy	n,v
-allspice	n
-Allstate	pc
-allude	v
-allure	n,v,va
-allusion	n,na
-alluvial	n
-alluvium	n
-ally	n,v
-allyl	n
-Allyn	n
-alma	d
-Almaden	pc
-almagest	n
-almanac	n
-almighty	n,a
-almond	n
-almost	d
-alms	d
-almshouse	n
-alnico	n
-aloe	n
-aloft	d
-aloha	d
-alone	a
-along	d
-alongside	d
-Alonzo	n,nopref
-aloof	a
-aloud	d
-alp	n,nopref
-alpaca	n
-alpenstock	n
-Alpert	n
-alpha	n
-alphabet	n,na
-alphabetic	n,na
-alphameric	n
-alphanumeric	n
-Alpheratz	pc
-Alphonse	pc
-alphorn	n
-alpine	n,na
-already	d
-Alsace	pc
-Alsatian	n
-also	d
-Alsop	n
-Altair	pc
-altar	n
-altarpiece	n
-altazimuth	n
-alter	n,v,er,va
-alteration	n,na,nopref
-altercate	v,ion
-altern	n
-alternate	v,a,ion
-althea	n
-although	d
-altimeter	n
-altiplano	n
-altitude	n
-alto	n,nopref
-altocumulus	n
-altogether	d
-Alton	pc
-altostratus	d
-altricial	d
-altruism	n
-altruist	n,na
-alum	n
-alumina	n
-aluminate	n
-alumna	pc
-alumnae	pc
-alumni	d
-alumnus	pc
-alundum	pc
-Alva	pc
-Alvarez	n
-alveolar	a
-alveoli	d
-alveolus	pc
-Alvin	pc
-always	d
-alyssum	n
-Alzheimer	pc
-a.m.	d,nopref
-am	d,nopref
-A&M	pc,nopref
-AMA	pc,nopref
-Amadeus	pc
-amalgam	n
-amalgamate	v,a,ion,va
-Amanda	n
-amanita	d
-amanuensis	pc
-amaranth	n
-Amarillo	pc
-amaryllis	n
-amass	v,er,va
-amateur	n,na
-amateurish	a,na
-amatory	a
-amaze	v,va
-amazon	n
-Amazonia	pc
-Amazonian	a,nopref
-ambassador	n
-ambassadorial	a
-ambassadress	n
-amber	n
-ambergris	pc
-ambiance	d
-ambidextrous	a
-ambient	a
-ambiguity	n
-ambiguous	a
-ambit	n
-ambition	n
-ambitious	a
-ambivalent	a
-amble	n,v,er
-ambrosia	pc
-ambrosial	a
-ambulant	a
-ambulate	v,ion
-ambuscade	n,er
-ambush	v,va
-ameer	n
-Amelia	pc
-ameliorate	v,ion,va
-amen	n,a,va
-amend	v,er,va
-amendatory	a
-Amerada	pc
-America	n
-American	n,na
-Americana	pc
-americium	n
-Amerindian	n
-Ames	n
-Ameslan	pc
-amethyst	n
-amethystine	a
-Amherst	pc
-amiable	a
-amicable	a
-amicus	d
-amid	d
-amide	n
-amidships	d
-amidst	d
-amigo	n
-amine	n
-amino	n
-Amish	pc
-amiss	d
-amity	n
-Amman	pc
-Ammerman	n
-ammeter	n,na
-ammo	pc
-ammonia	n,na
-ammonium	n
-ammunition	n
-amnesia	n,na
-amnesty	n
-amniocentesis	n
-amniotic	a
-Amoco	pc
-amoeba	n,nopref
-amoebae	pc
-amoebic	a,nopref
-amok	d
-among	d
-amongst	d
-amoral	a,na
-amorous	a
-amorphous	a
-amort	a,na
-Amos	pc
-amount	n,v
-amour	n
-amperage	n
-ampere	n
-ampersand	n
-Ampex	pc
-amphetamine	n
-amphibia	pc
-amphibian	n
-amphibious	a
-amphibole	n,na
-amphibology	n
-amphora	n
-ample	a,comp,nopref
-amplify	v,er,ion
-amplitude	n
-amply	d
-ampoule	n
-amputate	v,ion
-amputee	n
-Amsterdam	pc
-Amtrak	pc
-amulet	n
-amuse	n,v,er,na,va
-Amy	pc
-amygdaloid	a
-amyl	n
-amyloid	n,a
-an	d,nopref
-ana	n,nopref
-Anabaptist	pc
-anabasis	pc
-Anabel	pc
-anabolic	a
-anachronism	n
-anachronistic	a,na
-anachronous	a
-anaconda	n
-anaerobic	a
-anaglyph	n,na
-anagram	n,v,ms
-anagrammatic	a
-Anaheim	pc
-anal	a
-analemma	n
-analeptic	a
-analgesia	n
-analgesic	n,a
-analogous	a
-analogue	n
-analogy	n,na
-analysand	n
-analyses	d
-analysis	pc
-analyst	n
-analytic	n,a,na
-anamorphic	a
-anapestic	n
-anarch	na
-anarchic	a
-anarchs	d
-anarchy	n
-anastigmat	n
-anastigmatic	d
-anastomosis	pc
-anastomotic	a
-anathema	n
-Anatole	pc
-Anatolia	pc
-Anatolian	n
-anatomic	a
-anatomist	n
-anatomy	n
-ancestor	n
-ancestral	a
-ancestress	n
-ancestry	n
-anchor	n,v,man
-anchorage	n
-anchorite	n,na
-anchovy	n
-ancient	n,a
-ancillary	n
-and	v,nopref
-andante	n
-andantino	n
-Andean	n
-Andersen	n
-Anderson	n
-Andes	pc
-andesine	n
-andesite	n
-andiron	n
-Andorra	pc
-Andover	pc
-Andre	pc
-Andrea	pc
-Andrei	pc
-Andrew	pc
-Andrews	n
-Androcles	pc
-androgen	n
-androgenic	a
-androgynous	a
-androgyny	n
-android	n
-Andromache	pc
-Andromeda	pc
-Andy	pc
-anecdotal	a
-anecdote	n,na
-anechoic	a
-anemometer	n,na
-anemone	n
-anent	d,nopref
-aneroid	n
-aneurism	n
-aneurysm	n
-anew	d
-angel	n
-Angela	pc
-Angeles	pc
-angelfish	n
-angelic	a
-Angelica	pc
-Angelina	pc
-Angeline	pc
-Angelo	pc
-anger	n,v,na,nopref
-Angie	pc
-angina	n
-angiogram	n
-angioplasty	n
-angiosperm	n
-angle	n,v,er,nopref
-angleworm	n
-Anglican	n,na
-anglicism	n
-Anglo	pc
-anglophile	n,na
-anglophobe	n,na
-anglophobic	a
-anglophone	n
-Angola	pc
-angora	n
-angry	a,comp
-angst	d
-angstrom	n
-anguish	n,v
-angular	a
-angulate	a,ed,v,ion
-Angus	pc
-anharmonic	a
-Anheuser	pc
-anhydride	n
-anhydrite	n
-anhydrous	a
-ani	n
-aniline	n
-animadversion	n
-animadvert	v
-animal	n,a,na
-animate	v,a,ion,in
-animism	n
-animist	n,na
-animosity	n
-animus	n,nopref
-anion	n
-anionic	a
-anise	n
-anisette	n
-anisotropic	a
-anisotropy	n,na
-Anita	pc
-Ankara	pc
-ankle	n
-anklebone	n
-anklet	n
-Ann	n,nopref
-Anna	pc
-Annale	pc
-Annalen	pc
-annalist	n
-annals	pc,na
-Annapolis	pc
-Anne	pc
-anneal	v
-Annette	pc
-annex	n,v
-annexation	n,na
-Annie	pc
-annihilate	v,ion
-anniversary	n
-annotate	v,a,ion,va
-announce	v,er,va
-annoy	v,er
-annoyance	n
-annual	n,a
-annuitant	n
-annuity	n
-annul	v,er,va,ms
-annular	a
-annuli	d
-annulus	n
-annum	pc
-annunciate	v,ion
-anode	n,na
-anodic	a
-anodyne	n
-anoint	v,er,va
-anomalous	a
-anomaly	n
-anomie	n
-anon	d
-anonymity	n
-anonymous	a
-anopheles	pc
-anorak	n
-anorexia	pc
-anorexic	n,a
-anorthic	a
-anorthosite	n
-another	pc
-anoxia	pc
-anoxic	a
-Anselm	pc
-Anselmo	n
-ANSI	pc,nopref
-answer	n,v,er,va
-ant	n,nopref
-antacid	n
-Antaeus	pc
-antagonism	n
-antagonist	n
-antagonistic	a
-antarctic	pc
-Antarctica	pc
-Antares	pc
-ante	n,v,nopref
-anteater	n
-antebellum	d
-antecede	v
-antecedent	n,a
-antechamber	n
-antedate	n,v
-antediluvian	n
-anteing	a
-antelope	n
-antenna	n
-antennae	pc
-antepenultimate	n,a
-anterior	a
-anteroom	n
-anthem	n,ion
-anther	n
-anthill	n
-anthology	n,na
-Anthony	n
-anthracite	n,na
-anthracnose	n
-anthrax	pc
-anthropic	a
-anthropocentric	a
-anthropogenic	a
-anthropoid	n
-anthropology	n,na
-anthropometric	a
-anthropomorphic	a
-anthropomorphism	n
-anti	n,nopref
-antic	n,a,nopref
-antichrist	n
-anticipant	n
-anticipate	v,ion,va
-anticline	n
-antidotal	a
-Antietam	pc
-antigen	n
-antigenic	a
-Antigone	pc
-Antigua	pc
-antihistamine	n
-Antilles	pc
-antimony	n
-antinomy	n
-Antioch	pc
-antipasto	n
-antipathy	n
-antiperspirant	n
-antiphonal	a
-antipodal	a
-antipodean	n
-antipodes	pc
-antiquarian	n,na
-antiquary	n
-antiquate	v,ion
-antiquated	a
-antique	n,v,a
-antiquity	n
-antisemite	n
-antisemitic	a
-antisemitism	n
-antithetic	a
-antler	n,v
-Antoine	pc
-Antoinette	pc
-Anton	pc
-Antonia	n
-Antonio	pc
-Antony	pc
-antonym	n
-antonymous	a
-antonymy	n
-Antwerp	pc
-anus	n
-anvil	n
-anxiety	n
-anxious	a
-any	d,nopref
-anybody	pc
-anybody'd	d
-anyhow	d
-anymore	d
-anyone	pc
-anyplace	pc
-anything	pc
-anyway	n
-anywhere	d
-aorta	n
-aortic	a
-A&P	pc,nopref
-AP	pc,nopref
-apace	d
-apache	n
-apart	a,va
-apartheid	n
-apathetic	a
-apathy	n
-ape	n,v,er,na
-apercu	n
-aperiodic	a
-aperitif	d
-aperture	n
-apex	n
-aphasia	n
-aphasic	a
-aphelion	pc
-aphid	n
-aphis	pc
-aphorism	n
-aphorist	n,na
-aphrodisiac	n
-Aphrodite	pc
-apiarist	n
-apiary	n
-apices	d
-apiculture	n,na
-apiece	d
-apish	a
-aplomb	d
-apnea	n
-apocalypse	n
-apocalyptic	a,na
-apocope	n
-apocrypha	pc
-apocryphal	a
-apodictic	a
-apogee	n
-apolitical	a
-Apollo	pc
-Apollonian	n
-apologetic	n,a
-apologia	n
-apology	n,na
-apoplectic	n,a
-apoplexy	n
-apostasy	n
-apostate	n,na
-apostle	n,na
-apostolic	a
-apostrophe	n
-apothecary	n
-apothegm	n
-apotheosis	pc
-Appalachia	pc
-appall	v
-appanage	n
-apparatchik	pc
-apparatus	n
-apparent	a
-apparition	n,na
-appeal	n,v,er,va
-appear	v
-appearance	n
-appease	v,er,va
-appellant	n,a
-appellate	n,ion
-append	v
-appendage	n,v
-appendectomy	n
-appendices	d
-appendicitis	n
-appendix	n
-apperceive	v
-apperception	n,na
-appertain	v
-appetite	n
-Appian	pc
-applaud	v,er,va
-applause	n
-apple	n
-Appleby	n
-applejack	n
-Appleton	pc
-appliance	n
-applicable	a,in
-applicant	n
-application	n,na
-applicator	n
-applique	n,v,er
-apply	v,er
-appoint	v,va
-appointee	n
-appointive	a
-apportion	v,va
-apposite	a,in
-apposition	n,na
-appraisal	n
-appraise	v,er,va
-appreciable	a,in
-appreciate	v,ion
-apprehend	v
-apprehensible	a
-apprehension	n,na
-apprentice	n,v
-apprise	v
-approach	v,va
-approbation	n
-approbatory	n
-appropriable	a
-appropriate	v,a,ion,in
-approval	n
-approve	v,er,va
-approximable	a
-approximant	a
-approximate	v,a,ion,va
-appurtenant	n,a
-Apr.	d,nopref
-Apr	pc,nopref
-apricot	n
-April	pc
-apron	n,na
-apropos	d
-apse	n,nopref
-apsidal	a
-apsides	d
-apt	d
-aptitude	n,in
-aptly	d
-aptness	d
-aqua	n
-aquaculture	n,na
-aqualung	n,er
-aquamarine	n
-aquaplane	n,er
-aquarist	n
-aquarium	n
-Aquarius	pc
-aquatic	n,a
-aqueduct	n
-aqueous	a
-aquifer	n
-Aquila	pc
-aquiline	a
-Aquinas	pc
-aquiver	d
-AR	pc,nopref
-Arab	n,na
-arabesque	n
-Arabia	pc
-Arabic	pc
-arable	a
-Araby	pc
-Arachne	pc
-arachnid	n
-Aramaic	pc
-Arapaho	n
-Arawak	pc
-arbiter	n
-arbitrable	a
-arbitrage	n,v,er
-arbitrageur	n
-arbitrary	a
-arbitrate	v,ion
-arboreal	a
-arborescent	a
-arboretum	n
-arbutus	n
-arc	n,v
-arcade	n,v
-Arcadia	pc
-arcana	d
-arcane	a
-arccos	d
-arccosine	n
-arch	n,v,a,er
-archaic	a
-archaism	n
-archangel	n
-archbishop	n
-archbishopric	n
-archdeacon	n
-archdiocese	n
-archduchess	n
-archduke	n
-archenemy	n
-Archer	pc
-archery	n
-archetypal	a
-archetype	n
-archetypical	a
-archfool	n
-Archibald	n
-Archie	pc
-Archimedean	pc
-Archimedes	pc
-archipelago	n
-architect	n
-architectonic	n,a
-architectural	a
-architecture	n
-architrave	n
-archival	a
-archive	n,v,na
-archrival	n
-archway	n
-arcing	d
-arcsin	d
-arcsine	n
-arctan	d
-arctangent	n
-arctic	n,a
-Arcturus	pc
-Arden	pc
-ardent	a
-arduous	a
-are	d
-area	n
-areal	a
-areaway	n
-areawide	d
-arena	n
-arenaceous	a
-aren't	d
-Arequipa	pc
-Ares	pc
-argent	n
-Argentina	pc
-argentine	n
-Argentinian	n
-argillaceous	a
-Argive	pc
-argon	n
-argonaut	n
-Argonne	pc
-argosy	n
-argot	n
-argue	v,er,va
-argument	n
-argumentation	n,na
-argumentive	a
-Argus	pc
-argyll	n
-Ariadne	pc
-Arianism	pc
-arid	a
-Ariel	pc
-Aries	pc
-arise	vi
-arisen	d
-aristocracy	n
-aristocrat	n
-aristocratic	a
-Aristophanes	pc
-Aristotelean	n
-Aristotelian	n,na
-Aristotle	pc
-arithmetic	n,na
-arithmetician	n
-Arizona	pc
-ark	n,nopref
-Arkansan	n
-Arkansas	pc
-Arlen	pc
-Arlene	pc
-Arlington	pc
-Arlo	n
-arm	n,v,na
-armada	n
-armadillo	n
-Armageddon	pc
-armament	n
-armamentaria	d
-armamentarium	pc
-Armando	n
-Armata	pc
-armature	n
-armchair	n
-Armco	pc
-Armenia	pc
-Armenian	n
-armhole	n
-armillaria	n
-armistice	n
-armlet	n
-armload	n
-armoire	n
-armorial	a
-Armour	pc
-armpit	n
-armrest	n
-Armstrong	n
-army	n
-Arnold	n
-aroma	n
-aromatic	n,a,na
-arose	d
-around	d,nopref
-arousal	d
-arouse	v
-ARPA	pc,nopref
-arpeggio	n
-arrack	n
-Arragon	pc
-arraign	v,va
-arrange	v,er,va
-arrangeable	a
-arrant	a,nopref
-array	n,v,er
-arrear	n
-arrest	n,v,er,va
-Arrhenius	pc
-arrhythmia	n
-arrival	n
-arrive	v,er
-arrogant	a
-arrogate	v,ion
-arrow	n
-arrowhead	n
-arrowroot	n
-arroyo	n
-arsenal	n
-arsenate	n
-arsenic	n,na
-arsenide	n
-arsine	n
-arson	na
-art	n,na,nopref,y
-Artemis	pc
-artemisia	pc
-arterial	a,na
-arteriole	n
-arteriosclerosis	pc
-arteriosclerotic	n,a
-artery	n
-artesian	a
-arthritic	n,a
-arthritis	pc
-arthropod	n
-arthroscope	n,na
-Arthur	n
-Arthurian	n
-artichoke	n
-article	n,v
-articulate	v,a,ion,in
-Artie	pc
-artifice	n,er
-artificial	a
-artillery	n
-artisan	n,nopref
-artistry	n,na
-Arturo	pc
-artwork	n
-Aruba	pc
-arugula	n
-arum	n
-Aryan	n
-aryl	n
-a's	d
-as	d,nopref
-ASA	pc,nopref
-ASAP	d,nopref
-asbestos	n
-ascend	v,er,va
-ascendant	a
-ascendent	a
-ascension	n,na
-ascent	n,nopref
-ascertain	v,va
-ascetic	n,a
-asceticism	n
-ascorbic	a
-ascot	n
-ascribe	v,va
-ascription	n,na
-asepsis	pc
-aseptic	a
-asexual	a
-ash	n,y
-ashamed	a
-Ashanti	pc
-ashcan	n
-ashen	a
-Asher	pc
-Asheville	pc
-Ashland	pc
-ashlar	n
-Ashley	pc
-Ashmolean	pc
-ashore	d
-ashram	n
-ashtray	n
-Asia	pc
-Asiatic	n
-aside	n
-Asilomar	pc
-Asimov	pc
-asinine	a
-ask	v,er
-askance	d
-askew	a
-aslant	d
-asleep	d
-asocial	a
-asp	n
-asparagus	n
-aspect	n
-aspen	n
-asperity	n
-aspersion	n
-asphalt	n
-aspheric	a
-asphyxia	n
-asphyxiate	v,ion
-aspic	n
-aspidistra	n
-aspirant	n
-aspirate	n,v,ion
-aspire	v,er
-aspirin	n
-ass	n,na,nopref
-assai	d
-assail	v,va
-assailant	n
-Assam	pc
-assassin	n
-assassinate	v,ion
-assault	v,er,ion
-assay	n,v,er
-assemblage	n,na
-assemble	v,a,er
-assembly	n,man
-assent	n,v,er
-assert	v,ion
-assess	v,va
-assessor	n
-asset	n
-asseverate	v,ion
-assiduity	n
-assiduous	a
-assign	v,er,va
-assignation	n,na
-assignee	n
-assimilable	a
-assimilate	v,ion
-assist	v
-assistant	n,a,na
-associable	a
-associate	n,v,na,ion
-assonant	a
-assort	v,er,va
-Asst.	d,nopref
-assuage	v,va
-assume	v,va
-assumption	n,na
-assurance	n
-assure	v,er,va
-assured	n
-Assyria	pc
-Assyriology	n,na
-Astarte	pc
-astatine	n
-aster	n,na
-asteria	n
-asterisk	n
-astern	d
-asteroid	n
-asthma	n
-asthmatic	n,a
-astigmat	n
-astigmatic	n,a
-astigmatism	n
-ASTM	pc,nopref
-astonish	v,va
-Astor	n
-Astoria	pc
-astound	v
-astraddle	d
-astral	a
-astray	d
-astride	d
-astringent	n,a
-astrodome	n
-astrolabe	n
-astrologer	n
-astrology	n,na
-astronaut	n
-astronautic	n,a
-astronomer	n
-astronomy	n
-astrophysical	a
-astrophysicist	n
-astrophysics	pc
-Astroturf	pc
-astute	a
-Asuncion	pc
-asunder	d
-asylum	n
-asymmetry	n,na
-asymptomatic	a
-asymptote	n
-asymptotic	n,a
-asynchronism	n
-asynchronous	a
-asynchrony	n
-at	d,nopref
-Atalanta	pc
-atavism	n
-atavistic	a
-Atchison	n
-ate	d
-atelier	n
-Athabascan	n
-atheism	n
-atheist	n,na
-Athena	pc
-Athene	pc
-Athenian	n
-Athens	pc
-athirst	d
-athlete	n
-athletic	n,a,na
-athwart	na
-Atkins	n
-Atkinson	n
-Atlanta	pc
-Atlantic	pc
-Atlantica	pc
-Atlantis	pc
-atlas	n
-ATM	n,nopref
-atmosphere	n
-atmospheric	n,a
-atoll	n
-atom	n,na
-atomic	n,a
-atonal	a,na
-atone	v,va
-atop	d
-atremble	d
-Atreus	pc
-atrium	n
-atrocious	a
-atrocity	n
-atrophic	a
-atrophy	v
-Atropos	pc
-AT&T	pc,nopref
-attach	v,er,va
-attache	n
-attack	n,v,er,va
-attain	v,va
-attainder	n
-attar	n
-attempt	n,v,va
-attend	v
-attendant	n,a
-attendee	n
-attention	n,na,in
-attenuate	v,ion
-attest	v,er
-attestation	n
-attic	n
-Attica	pc
-attire	n,v
-attitude	n
-attitudinal	a
-Attn	d,nopref
-Attn.	d,nopref
-attorney	n
-attract	v,ion,va
-attribute	n,v,er,ion,va
-attrition	n,na
-attune	v,va
-Atwater	n
-Atwood	n
-atypic	a
-Auberge	pc
-Aubrey	pc
-auburn	n
-Auckland	pc,nopref
-auction	n,v
-auctioneer	n,vi
-audacious	a
-audacity	n
-audible	a,in
-audience	n
-audio	n
-audiology	n,na
-audiometer	n,na
-audiophile	n
-audiotape	n
-audiovisual	a
-audit	n,v,va
-audition	n,v,va
-auditor	n,y
-auditorium	n
-Audrey	pc
-Audubon	pc
-Auerbach	pc
-Aug.	d,nopref
-Augean	pc
-augend	n
-auger	n
-aught	n,nopref
-augment	v,er,va
-augmentation	n,na
-augur	n,v
-augury	n
-august	a
-Augusta	pc
-Augustan	n
-Augustine	pc
-Augustus	pc
-auk	n
-aunt	n,na,nopref
-auntie	n
-aura	n
-aural	a
-aureomycin	n
-auric	a
-auricle	n
-auricular	a
-Auriga	pc
-aurora	n
-auroral	a
-Auschwitz	pc
-auspices	d
-auspicious	a,in
-Aussie	n,nopref
-austenite	n,na
-austere	a
-Austin	n
-austral	a
-Australasia	pc
-Australia	pc
-Australis	pc
-Australopithecus	pc
-Austria	pc
-autarchy	n
-autarky	n
-authentic	a
-authenticate	v,ion
-author	n,v,a,na
-authorial	a
-authoritarian	n,na
-authoritative	a
-autism	n
-autistic	n,a
-auto	n
-autobahn	n
-autochthonous	a
-autoclave	n,v
-autocracy	n
-autocrat	n
-autocratic	a
-autodidact	n,na
-autogen	n
-autogenic	a
-autogenous	a
-autogiro	n
-automata	n
-automate	v,a,ion,va
-automatic	a
-automaton	n
-automorph	n,na
-automorphic	a
-autonomous	a
-autonomy	n
-autopsy	n,v
-autumn	n
-autumnal	a
-auxiliary	n
-auxin	n
-avail	n,v,va
-avalanche	n,v
-avalanching	d
-avarice	n
-avaricious	a
-avast	d
-avatar	n
-Ave.	d,nopref
-avenge	v,er
-avenue	n
-aver	v,ms
-average	n,v,a
-averse	a
-aversion	n,na
-avert	v
-avertive	a
-Avery	n
-avian	na
-aviarist	n
-aviary	n
-aviate	v,ion
-aviatrix	pc
-aviculture	n,na
-avid	a
-avifauna	pc
-avionic	n,a
-Avis	pc
-Aviv	pc
-avocado	n
-avocation	n,na
-avocet	n
-Avogadro	pc
-avoid	v,er,va
-avoidance	n
-avoirdupois	n
-Avon	pc
-avow	v,er,va
-avowal	n
-avuncular	a
-await	v
-awake	v
-awaken	v,er
-award	n,v,er,va
-awardee	n
-aware	n,a
-awash	d
-away	a,nopref
-awe	n,v
-aweigh	d
-awesome	a
-awestricken	d
-awestruck	d
-awful	a,nopref
-awhile	d
-awkward	a
-awl	n
-awn	n,v
-awoke	d
-awoken	d
-awry	d,nopref
-ax	n,v,nopref
-axe	n,v,nopref
-axial	a
-axil	n,nopref
-axillary	n,a,nopref
-axiology	n,na
-axiom	n
-axiomatic	a
-axis	pc,nopref
-axle	n
-axon	n
-ayatollah	n
-aye	n
-Ayers	n
-Aylesbury	pc
-AZ	pc,nopref
-azalea	n
-Azerbaijan	pc
-azimuth	n
-azimuthal	a
-Azores	pc
-Aztec	pc
-Aztecan	pc
-azure	n
-azurite	n
-babbitt	n,v
-babble	v,er
-Babcock	n
-babe	n
-Babel	pc
-baboon	n
-babushka	n
-baby	n,v,na
-babyhood	n
-babyish	a
-Babylon	pc
-Babylonian	n
-babysat	d
-babysit	vi,er,ms
-baccalaureate	n
-baccarat	n
-bacchanal	d
-bacchanalia	pc
-bacchanalian	n
-Bacchus	pc
-Bach	n
-bachelor	n
-bacilli	d
-bacillus	pc
-back	n,v,er
-backache	n
-backbencher	n
-backbite	v,er
-backboard	n
-backbone	n
-backcross	n,v
-backdate	v,er
-backdrop	n
-backfield	n
-backfill	n,v
-backfire	n,v
-backgammon	d
-background	n,v
-backhand	n,v
-backhoe	n,v
-backlash	n,er
-backlog	n,v,ms
-backorder	n,v
-backpack	n,v,er
-backplane	n,v
-backplate	n,v
-backrest	n
-backsaw	n
-backscatter	n,v
-backside	n
-backslap	v,er,ms
-backslid	d
-backslide	vi,er
-backspace	n,v
-backspin	n,v
-backstage	d
-backstay	n
-backstitch	n,v
-backstop	n,v
-backstretch	n
-backstroke	n,v,er
-backswept	d
-backtrack	v
-backup	n
-backward	n,a
-backwash	n
-backwater	n
-backwoods	pc,man
-backyard	n
-bacon	pc
-bacteria	pc
-bacterial	a
-bacteriologic	a,na
-bacteriology	pc,na
-bacteriophage	n
-bacterium	pc
-bad	a,nopref
-bade	d,nopref
-Baden	pc
-badge	n,v,er
-badinage	n
-badland	n
-badminton	d
-Baedeker	n
-Baffin	pc
-baffle	n,v,er,va
-bag	n,v,er,na,va,man,ms
-bagatelle	n
-bagel	n
-baggage	pc
-baggy	n,a,comp
-Baghdad	pc
-Bagley	n
-bagpipe	n,er
-baguette	n
-bah	d,nopref
-Bahai	n
-Bahaism	n
-Bahama	n,nopref
-Bahrein	pc
-bail	n,v,er,va
-Bailey	n
-bailiff	n
-bailiwick	n
-bailout	n
-Baird	n
-bait	n,v,er
-baize	n
-Baja	pc
-bake	v,er
-Bakelite	pc
-Bakersfield	pc
-bakery	n
-Bakhtiari	pc
-baklava	n
-baksheesh	n
-Baku	pc
-balalaika	n
-balance	n,v,er
-Balboa	pc
-balcony	n,v
-bald	v,a,comp
-balderdash	d
-baldpate	n
-Baldwin	n
-baldy	n
-bale	n,v,er
-baleen	n
-baleful	a
-Balfour	n
-Bali	pc
-Balinese	pc
-balk	n,v,er,y
-Balkan	n
-ball	n,v,er,na
-ballad	n,na
-balladeer	n
-Ballard	n
-ballast	n,v
-ballerina	n
-ballet	n
-balletic	d
-balletomane	n
-ballfield	n
-balloon	n,v,na
-ballot	n,v,er
-ballpark	n
-ballroom	n
-ballyhoo	n
-balm	n,nopref,y
-baloney	n
-balsa	n
-balsam	n,na
-balsamic	a
-Baltic	pc
-Baltimore	pc
-Baltimorean	pc
-baluster	n
-balustrade	n
-Balzac	pc
-bam	d
-Bamako	pc
-Bamberger	pc
-Bambi	pc
-bambino	n
-bamboo	n
-bamboozle	v,er,va
-ban	n,v,a,er,ms
-banal	a
-banana	n
-Banbury	pc
-band	n,v,er,va
-bandage	n,v,er
-bandanna	n
-bandgap	n
-bandicoot	n
-bandit	n
-banditry	n
-bandolier	n
-bandstand	n
-bandwagon	n
-bandwidth	n
-bandy	n,v
-bane	n,na,nopref
-bang	n,v,er
-bangkok	n
-Bangladesh	pc
-bangle	n
-Bangor	pc
-Bangui	pc
-banish	v,er,va
-banister	n
-banjo	n,na
-bank	n,v,er,va
-bankroll	n,v,er
-bankrupt	n,v
-bankruptcy	n
-banns	d
-banquet	n,v,er
-banquette	n
-banshee	n
-bantam	n
-banter	n,v,er
-Bantu	pc
-Bantus	pc
-banyan	n
-banzai	n
-baobab	n
-baptism	n
-baptismal	a
-baptist	n
-Baptiste	pc
-baptistery	n
-baptistry	n
-bar	n,v,er,va,man,ms
-barb	n,v
-Barbados	pc
-Barbara	pc
-barbarian	n,na
-barbaric	a,na
-barbarism	n
-barbarity	n
-barbarous	a
-barbecue	n,v,er
-barbell	n
-barber	n,v
-barberry	n
-Barbie	n
-barbital	n
-barbiturate	n
-Barbour	n
-Barcelona	pc
-Barclay	n
-bard	n,nopref
-bare	v,a,comp
-bareback	v
-barefaced	a
-barefoot	v
-bareheaded	a
-barfly	n
-bargain	n,v,er
-barge	n,v,er,man
-barhop	v,ms
-baritone	n
-barium	n
-bark	n,v,er,nopref
-barkentine	n
-barley	pc
-Barlow	n
-barmaid	n
-barn	n
-Barnabas	pc
-barnacle	n,v
-Barnard	n
-Barnes	n
-Barnet	n
-Barnett	n
-Barney	pc
-Barnhard	n
-barnstorm	v,er
-barnyard	n
-barograph	n
-barometer	n,na
-baron	n
-baroness	n
-baronet	n
-baronetage	n
-baronial	a
-barony	n
-baroque	n,a
-barque	n
-Barr	n
-barrack	n,v,er
-barracuda	n
-barrage	n,v
-barre	n
-barren	n,a
-Barrett	n
-barrette	n
-barricade	n,v
-barrier	n
-Barrington	n
-barrio	n
-barrister	n
-Barron	n
-barroom	n
-barrow	n
-Barry	pc
-Barrymore	n
-Barstow	n
-Bart	pc
-bartend	v
-bartender	n
-barter	n,v,er
-Barth	pc
-Bartholomew	n
-Bartlett	n
-Bartok	pc
-Barton	n
-baryon	n,na
-basal	a
-basalt	n
-base	n,v,a,comp,man
-baseball	n
-baseboard	n
-Basel	pc
-baseline	n
-basement	n,va
-baseplate	n
-baserun	vi,er,ms
-bash	n,v,er,na,nopref
-bashaw	n
-basic	n,a
-basil	pc
-basilar	d
-basilica	n
-basilisk	n
-basin	n,v
-basis	pc
-bask	v,er
-basket	n,na
-basketball	n
-basketry	pc
-basketwork	n
-basophilic	d
-Basque	pc
-bass	n,na
-basset	n
-Bassett	n
-bassi	d
-bassinet	n
-basso	n
-bassoon	n,na
-basswood	n
-bastard	n,a,ion
-bastardy	n
-baste	v,er
-bastille	n
-basting	n
-bastion	n,v
-bat	n,v,man,nopref,ms
-Batavia	pc
-batch	n,v
-Batchelder	n
-bate	v,er
-bateau	pc
-Bateman	n
-bath	n,v,er
-bathe	v,er
-bathetic	a
-bathhouse	n
-bathos	d
-bathrobe	n
-bathroom	n
-bathtub	n
-Bathurst	pc
-bathymetry	n
-batik	n
-Batman	pc
-baton	n
-Bator	pc
-batt	n,v,er,nopref
-battalion	n
-Battelle	pc
-batten	v
-batterer	n
-battery	n
-battle	n,v,er,va
-battlefield	n
-battlefront	n
-battleground	n
-batwing	n
-bauble	n
-baud	pc
-Baudelaire	pc
-Bauer	n
-Bauhaus	pc
-Bausch	pc
-bauxite	n,na
-Bavaria	pc
-bawd	n,y
-bawl	n,v,er
-Baxter	n
-bay	n,v,nopref
-bayberry	n
-Bayda	pc
-Baylor	pc
-bayonet	n,v
-Bayonne	pc
-bayou	n
-Bayport	pc
-Bayreuth	pc
-bazaar	n
-bazooka	n
-BBC	pc,nopref
-B.C.	d,nopref
-BC	pc,nopref
-be	d
-beach	n,v,er
-beachcomb	vi,er
-beachhead	n
-beacon	n,v
-bead	n,v,y
-beadle	n
-beadwork	n
-beagle	n
-beak	n,ed,er
-beam	n,v,er,nopref,y
-bean	n,v
-beanbag	n
-beanie	n
-bear	n,vi,er,va
-beard	n,v,er
-Beardsley	n
-bearish	a
-bearskin	n
-Beasley	pc
-beast	n,vi,a
-Beastie	n
-beat	n,vi,er,va
-beaten	d
-beatific	n,a
-beatify	v,ion
-beatitude	n
-beatnik	n
-Beatrice	pc
-beau	n
-Beaujolais	pc
-Beaumont	pc
-Beauregard	pc
-beauteous	a
-beautician	n
-beautify	v,er,ion
-beauty	n,na
-beaux	pc
-beaver	n,nopref
-bebop	n,v,er,ms
-becalm	v
-became	d
-because	d
-Bechtel	pc
-beck	n,v
-becket	n
-Beckman	pc
-beckon	n,v
-Becky	pc
-becloud	v
-become	vi
-bed	n,v,er,ms
-bedaub	v
-bedazzle	v,va
-bedbug	n
-bedclothes	n
-bedeck	v
-bedfast	a
-bedfellow	n
-Bedford	pc
-bedim	v,ms
-bedizen	v,va
-bedlam	n,a
-bedouin	n
-bedpan	n
-bedpost	n
-bedraggle	v
-bedridden	a
-bedrock	n
-bedroll	n
-bedroom	n
-bedside	n
-bedspread	n
-bedspring	n
-bedstead	n
-bedstraw	n
-bedtime	n
-bee	n,er,nopref
-Beebe	n
-beebread	n
-beech	n
-Beecham	pc
-Beechcraft	n
-beechwood	n
-beef	n,v,y
-beefeater	n
-beefsteak	n
-beehive	n,a
-Beelzebub	pc
-been	d
-beep	n,v,er
-beer	n,y
-beeswax	n
-beet	n
-Beethoven	pc
-beetle	n,v,a
-befall	vi
-befallen	d
-befell	d
-befit	v,ms
-befog	v,ms
-before	d,nopref
-beforehand	ed
-beforetime	d
-befoul	v
-befriend	v
-befuddle	v,va
-beg	v,ms
-began	d
-begat	d
-beget	vi,er,ms
-beggar	n,v,a
-beggary	n
-begin	vi,er,ms
-begone	v
-begonia	n
-begot	d
-begotten	d
-begrime	v
-begrudge	v
-beguile	v,er,va
-Begum	n,nopref
-begun	d
-behalf	n
-behave	v,er
-behead	v
-beheld	d
-behemoth	n
-behest	n
-behind	n,nopref
-behindhand	d
-behold	vi,er
-beholden	a
-beige	n,a
-Beijing	pc
-being	n
-Beirut	pc
-bel	n
-Bela	pc
-belated	a
-belay	n,v
-belch	n,v,er
-beleaguer	v
-Belfast	pc
-belfry	n
-Belgian	n,a
-Belgium	pc
-Belgrade	pc
-belie	n,v,er,nopref
-belief	n
-belies	d
-believe	v,er,va
-believeth	d
-belike	d
-Belinda	n
-belittle	v,er,va
-Belize	pc,nopref
-bell	n,v,man
-Bella	pc
-belladonna	n
-Bellamy	n
-Bellatrix	pc
-bellboy	n
-belle	n
-bellflower	n
-bellhop	n
-bellicose	a
-belligerent	n,a,na
-Bellingham	pc
-Bellini	pc
-bellow	n,v
-bellum	pc
-bellwether	n
-belly	n,v
-bellyache	n,v
-Belmont	n
-belong	v
-Belorussia	pc
-beloved	n,a
-below	d,nopref
-Belshazzar	pc
-belt	n,v,er
-Beltsville	pc
-Beltway	pc
-beluga	n
-belvedere	n
-belying	d
-bemadden	v
-bemoan	v
-bemuse	v
-Ben	pc
-bench	n,v,er
-benchmark	n,v
-bend	n,v,er
-benday	v,a
-Bendix	pc
-beneath	d
-Benedict	n
-Benedictine	n,a
-benediction	n
-benedictory	a
-benefaction	n
-benefactor	n
-benefactress	n
-benefice	n,v
-beneficent	a
-beneficial	a
-beneficiary	n,a
-benefit	n,v
-Benelux	pc
-benevolent	a
-Bengal	pc
-Bengali	n,a
-benight	ed
-benign	a
-benignant	a,na
-benison	n
-Benjamin	pc
-Bennett	n
-Bennie	n
-Bennington	pc
-Benny	pc
-Benson	n
-bent	n,a
-Bentham	pc,na
-benthic	a
-Bentley	n
-Benton	n
-benumb	v
-Benz	pc
-Benzedrine	pc
-benzene	n
-benzoate	n
-benzoin	n
-benzyl	n
-Beowulf	pc
-beplaster	v,a
-bequeath	v
-bequest	n
-berate	v,er
-Berea	pc
-bereave	v,va
-bereft	v
-Berenices	pc
-beret	n
-berg	n
-bergamot	n
-Bergen	n
-Berger	n
-Bergland	n
-Berglund	n
-Bergman	n
-Bergson	n
-Bergstrom	n
-beribbon	n
-beriberi	n
-Bering	pc,nopref
-Berkeley	pc
-berkelium	n
-Berkowitz	n
-Berkshire	n
-Berlin	pc
-Berliner	n
-Berlioz	pc
-Berlitz	pc
-Berman	n
-Bermuda	pc
-Bern	pc
-Bernadette	pc
-Bernadine	pc
-Bernard	n
-Bernardino	pc
-Bernardo	pc
-berne	n
-Bernet	pc
-Bernhard	n
-Bernice	pc
-Bernie	pc
-Berniece	pc
-Bernini	pc
-Bernoulli	n
-Bernstein	n
-berry	n,v,na,nopref
-berserk	n,a,er
-Bert	pc
-berth	n,v
-Bertha	pc
-Bertie	pc
-Bertram	pc
-Bertrand	pc
-Berwick	pc
-beryl	n
-beryllium	n
-beseech	v
-beseem	v
-beset	vi,er,va,ms
-beside	n,nopref
-besiege	v,er
-besmirch	v
-besot	v,ms
-besought	d
-bespatter	v
-bespeak	v
-bespeckle	v
-bespectacled	d
-bespoke	a
-Bess	pc
-Bessel	pc
-Bessemer	pc
-Bessie	pc
-best	n,v,nopref
-bestial	a,na
-bestiary	n
-bestir	v,ms
-bestow	v,er
-bestowal	n
-bestsell	vi,er,ms
-bestubble	v
-bet	n,v,er,ms
-beta	n,a
-betake	d
-betaken	d
-betatron	n
-betel	n
-Betelgeuse	pc
-Beth	pc
-bethel	n
-Bethesda	pc
-bethink	vi
-Bethlehem	pc
-bethought	d
-betide	v
-betimes	d
-betoken	v
-betony	n
-betook	d
-betray	v
-betrayal	n
-betrayer	n
-betroth	v
-betrothal	n
-Betsey	pc
-Betsy	pc
-Bette	pc
-betterment	n
-bettor	n
-Betty	pc
-between	d
-betwixt	d
-Beulah	n
-beverage	n
-Beverly	pc
-bevy	n
-bewail	v
-beware	v
-bewhisker	v
-bewilder	v,va
-bewitch	v,va
-bey	n,nopref
-beyond	d,nopref
-bezel	n
-Bhutan	pc
-biannual	a
-bias	n,v,a
-biathlon	n
-biaxial	a
-bib	n,v,ms
-bibb	n,v,er
-bible	n
-biblical	a
-bibliography	n,er
-bibliomania	n
-bibliophile	n,na
-bibulous	a
-bicameral	a,na
-bicarbonate	n
-bicentennial	n,a
-bicentric	a
-biceps	n
-bichromate	n,ed
-bicker	n,v,er
-biconcave	a
-biconnected	a
-biconvex	a
-bicuspid	n
-bicycle	n,v,er,na
-bid	n,vi,er,ms
-biddable	a,va
-bidden	d
-biddy	n
-bide	n,v,er,nopref
-bidiagonal	a
-bidirectional	a
-biennial	n,a
-biennium	n
-bier	n
-bifacial	a
-bifocal	n,a
-bifold	a
-bifurcate	v,a,ion
-big	n,a,comp,ms,y
-bigamist	n
-bigamous	a
-bigamy	n
-Bigelow	n
-biggie	n
-biggish	a
-Biggs	n
-bighead	n,ed
-bighearted	a
-bighorn	a
-bight	n,v
-bigot	n,ed
-bigotry	n
-bigwig	n
-biharmonic	a
-bijouterie	n
-bike	n,v,er
-bikini	n
-bilateral	a,na
-bilayer	v
-bile	n,nopref
-bilge	n,v
-bilharzia	pc
-bilharziasis	pc
-bilinear	a
-bilingual	n,a,na
-bilious	a
-bilk	n,v,er
-bill	n,v,er,va
-billabong	n
-billet	n,v
-billfold	n
-billiard	n
-Billie	pc
-Billiken	pc
-billingsgate	n
-billion	n,a
-billionaire	n
-billionth	n,a
-billow	n,v,y
-billy	n
-Biltmore	pc
-bimetal	n
-bimetallic	n,a
-bimetallism	n
-Bimini	pc
-bimodal	a
-bimolecular	a
-bimonthly	n,a
-bin	n,v,nopref,ms
-binary	n,a
-binaural	a
-bind	n,vi,er,va
-bindery	n
-bindle	n
-binge	n
-Bingham	pc
-Binghamton	pc
-bingo	n
-binnacle	n
-binocular	n,a
-binomial	n,a
-binuclear	a
-biocide	n
-biography	n,er
-biology	n,na
-Biometrika	pc
-biometry	pc
-biopsy	n
-biota	n
-biotic	a
-bipartisan	pc,a
-bipartite	a
-biped	n,a
-bipedal	n
-biphenyl	n
-biplane	n
-bipolar	a
-biquadratic	n,a
-biracial	a,na
-birch	n,v,a
-birchbark	n
-bird	n,v,er,na,man,nopref
-birdbath	n
-birdbrain	n
-birdhouse	n
-birdie	n,v,na
-birdseed	n
-birdshot	n
-birdwatch	v
-birefringent	a
-Birgit	pc
-Birmingham	pc
-birth	n,v
-birthday	n
-birthmark	n,v
-birthplace	n
-birthright	n
-birthstone	n
-biscuit	n
-bisect	v,ion
-bisexual	n,a
-bishop	n
-bishopric	n
-Bismarck	pc
-Bismark	pc
-bismuth	n
-bison	n
-bisque	n
-Bissau	pc
-bistable	va
-bistate	n
-bistro	n
-bit	n,v,er,ms
-bitch	n,v,er
-bite	n,vi,er
-bitt	n,v,er,y
-bitten	d
-bittern	n
-bitterroot	n
-bittersweet	n,a
-bitumen	n
-bituminous	a
-bitwise	d
-bivalent	n,a,na
-bivalve	n,ed,a
-bivariate	a
-bivouac	n,v
-bivouacked	d
-bivouacking	d
-biweekly	n,a
-biz	n
-bizarre	n,a
-Bizet	pc
-blab	n,v,er,ms
-blabbermouth	n,vi
-black	n,v,a,comp
-blackamoor	n
-blackball	n,v
-blackberry	n
-blackbird	n
-blackboard	n
-blackbody	n
-Blackburn	n
-blacken	v,er
-blackface	n
-Blackfeet	pc
-blackfly	n
-blackguard	n,v,a,na
-blackhead	n
-blackish	a
-blackjack	n,v
-blacklist	n,v
-blackmail	n,v,er
-Blackman	n
-blackout	n
-blacksmith	n,vi
-blacksnake	n
-Blackstone	pc
-blacktop	n,v,ms
-Blackwell	pc
-bladder	n,na
-bladdernut	n
-blade	n,ed
-blah	n
-Blaine	n
-Blair	n
-Blake	n
-blame	n,v,er,na,va
-blameworthy	a
-blanc	d
-blanch	v,er
-Blanchard	n
-Blanche	pc
-bland	a,comp
-blandish	v,er,va
-blank	n,v,a,comp
-Blankenship	n
-blanket	n,v,a
-blare	n,v
-blarney	n,v
-blaspheme	v,er
-blasphemous	a
-blasphemy	n
-blast	n,v,er,va
-blat	n,v,ms
-blatant	a,na
-blather	n,v,er
-blatherskite	n
-Blatz	n
-blaze	n,v,er,nopref
-blazon	n,v,er
-bleach	n,v,er
-bleak	n,a,comp
-bleary	a,comp
-bleat	n,v,er
-bled	d
-bleed	n,vi,er
-Bleeker	pc
-blemish	n,v
-blench	v
-blend	n,v,er
-Blenheim	pc
-bless	v,er
-blest	d
-Blevins	n
-blew	d
-blight	n,v,er
-blimp	n
-blimpish	a
-blind	n,v,a,comp
-blindfold	n,v,a
-blindside	v
-blink	n,v,er
-Blinn	n
-blintz	n
-blip	n
-bliss	n,na
-blister	n,v,y
-blithe	a,comp
-blitz	n,v
-blitzkrieg	n,v
-blizzard	n
-bloat	n,v,a,er
-blob	n,v,ms
-bloc	n
-Bloch	pc
-block	n,v,er,y
-blockade	n,v,er
-blockage	n
-blockbust	er
-blockhead	n
-blockhouse	n
-bloke	n
-Blomberg	n
-Blomquist	n
-blond	n,a,comp
-blonde	n
-blood	n,v,nopref
-bloodbath	n
-bloodhound	n
-bloodletting	n
-bloodroot	n
-bloodshed	n
-bloodshot	a
-bloodstain	n,ed
-bloodstone	n
-bloodstream	n
-bloodsuck	vi,er
-bloodthirsty	a
-bloody	v,a,comp
-bloom	n,v,er,y
-Bloomfield	pc
-Bloomington	pc
-bloop	er
-blossom	n,v,y
-blot	n,v,er,ms
-blotch	n,v
-blotchy	n,v,y
-blouse	n
-blow	n,vi,er,y
-blowback	n
-blowfish	n
-blowgun	n
-blowhard	n
-blowhole	n
-blown	a
-blowout	n
-blowpipe	n
-blowsy	a,comp
-blowtorch	n
-blowup	n
-blowzy	a
-blubber	n,v,a
-blubbery	a,comp
-bludgeon	n,v
-blue	n,v,a,comp
-blueback	n
-bluebeard	n
-bluebell	n
-blueberry	n
-bluebill	n
-bluebird	n
-bluebonnet	n
-bluebook	n
-bluebush	n
-bluefin	n
-bluefish	n
-bluegill	n
-bluegrass	n
-bluejacket	n
-bluepoint	n
-blueprint	n,v
-bluestocking	n
-bluet	n
-bluff	n,v,a,er
-bluish	a
-Blum	n
-Blumenthal	n
-blunder	n,v,er
-blunderbuss	n
-blunt	v,a,comp
-blur	n,v,ms,y
-blurb	n
-blurt	n,v
-blush	n,v,er,na
-bluster	n,v,er
-blustery	a
-blutwurst	n
-Blvd.	d,nopref
-Blythe	pc
-BMW	n,nopref
-boa	n,nopref
-boar	n,nopref
-board	n,v,er,na
-boardinghouse	n
-boardroom	n
-boardwalk	n
-boast	n,v,er,na
-boat	n,v,er,man
-boathouse	n
-boatload	n
-boatswain	n
-boatyard	n
-bob	n,v,er,ms
-Bobbie	pc
-bobbin	n
-bobble	n,v
-bobby	n
-bobcat	n
-bobolink	n
-bobsled	n,v
-bobtail	n,ed,a
-bobwhite	n
-Boca	pc
-bocce	n
-boccie	pc
-bock	n
-boddhisattva	n
-bode	v
-bodega	n
-bodhisattva	n
-bodice	n
-Bodleian	pc
-body	n,v,a
-bodybuild	vi
-bodyguard	n
-Boeing	n
-Boeotian	n
-bog	n,v,ms,y
-bogey	n,v,man
-boggle	n,v
-Bogota	pc
-bogus	a
-bogy	n
-Bohemia	pc
-bohemian	n,na
-Bohr	pc
-boil	n,v,er
-Bois	pc
-Boise	pc
-boisterous	a
-bola	n
-bold	a,comp
-boldface	n
-bole	n,na
-bolero	n
-boletus	n
-bolivar	n
-Bolivia	pc
-boll	n,nopref
-bollard	n
-bollix	v
-bolo	n
-Bologna	pc
-bolometer	n
-Bolshevik	n,a
-Bolshevism	pc
-Bolshevist	n,a
-Bolshoi	pc
-bolster	n,v,er
-bolt	n,v,er
-Bolton	n
-Boltzmann	pc
-bomb	n,v,er
-bombard	n,v,va
-bombardier	n
-bombast	n,a,er
-bombastic	a
-Bombay	pc
-bombproof	a
-bombshell	n
-bombsight	n
-bon	d,nopref
-bona	d
-bonanza	n
-Bonaparte	pc
-Bonaventure	pc
-bonbon	n
-bond	n,v,er,va,man
-bondage	n
-bondholder	n
-bonds	man
-bone	n,v,er,nopref,y
-bonefish	n
-bonehead	n,v
-bonfire	n
-bong	n,v
-bongo	n
-Boniface	pc
-bonito	n
-bonkers	d
-Bonn	pc
-Bonner	n
-bonnet	n,v
-Bonneville	pc
-Bonnie	pc
-bonny	a
-bonsai	n
-bonus	n
-bonze	n
-boo	n,v,er,nopref
-boob	n,y
-boodle	n
-boogie	n,v
-book	n,v,a,er,man
-bookbind	vi,er
-bookcase	n
-bookend	n
-bookie	n
-bookish	a
-booklet	n
-bookmark	n
-bookmobile	n
-bookplate	n
-booksell	vi,er
-bookshelf	n
-bookshelves	d
-bookstore	n
-bookworm	n
-boolean	n,a
-boom	n,v,er,nopref
-boomerang	n,v
-boon	n,a
-boondock	n
-boondoggle	n,v,er
-Boone	n
-boor	n
-boorish	a
-boost	n,v,er
-boot	n,v,er,y
-bootblack	n
-Bootes	pc
-booth	n
-bootie	n
-bootleg	v,er,ms
-bootlick	n,v,er
-bootstrap	n,v,er,ms
-booze	n,v,er,y
-bop	n,v,er,ms
-borage	n
-borane	n
-borate	n,ed
-borax	n
-Bordeaux	pc
-bordello	n
-Borden	n
-border	n,v,er
-borderland	n
-borderline	a
-bore	n,v,er,nopref
-boreal	a
-borealis	d
-Boreas	pc
-boredom	n
-Borg	n
-boric	a
-Boris	pc
-born	a
-borne	d,nopref
-Borneo	pc
-boron	n
-borosilicate	n
-borough	n
-Borroughs	n
-borrow	v,er
-borzoi	n
-Bosch	pc
-Bose	pc
-bosh	n
-Bosnia	pc
-bosom	n,v,a,y
-boson	n
-boss	n,v,na,y
-Boston	pc
-bosun	n
-Boswell	n
-botanic	n
-botanist	n
-botany	n
-botch	n,v,er,y
-botfly	n
-both	a,er
-botheration	n
-bothersome	a
-Botswana	pc
-bottle	n,v,er,na
-bottleneck	n,v,a
-bottom	n,v,er
-bottommost	a
-botulin	n
-botulism	n
-Boucher	pc
-boudoir	n
-bouffant	a
-bough	n,ed
-bought	d
-bouillabaisse	n
-bouillon	n
-boulder	n,v
-bouldery	a
-boule	n
-boulevard	n
-boulevardier	n
-bounce	n,v,er
-bouncy	a,comp
-bound	n,v,a,er
-boundary	n
-bounden	a
-bounteous	a
-bounty	n,ed,na
-bouquet	n
-bourbon	n,na
-bourdon	n
-bourgeois	n,a
-bourgeoise	n
-bourgeoisie	n
-bourn	n
-bourse	n
-boustrophedon	a
-bout	n
-boutique	n
-boutonniere	n
-bovine	n,a
-bow	n,v,er,man
-Bowditch	pc
-Bowdoin	pc
-bowel	n,nopref
-Bowen	pc
-bowery	n,a
-bowfin	n
-bowhead	n
-bowie	n
-bowl	n,v,er
-bowleg	n,ed,ms
-bowline	n
-bowsprit	n
-bowstring	n
-box	n,v,er,na,y
-boxcar	n
-boxwood	n
-boy	n,nopref
-boyar	n
-Boyce	n
-boycott	n,v,er
-Boyd	n
-Boyer	n
-boyfriend	n
-boyhood	n
-boyish	a
-Boyle	n
-Boylston	pc
-boysenberry	n
-BP	pc,nopref
-bra	n,nopref
-brace	n,v,er
-bracelet	n
-brachycephalic	a
-bracken	n
-bracket	n,v
-brackish	a
-bract	n,ed
-brad	n,v,nopref,ms
-Bradbury	n
-Bradford	n
-Bradley	n
-Bradshaw	n
-Brady	n
-brae	n,nopref
-brag	n,v,a,comp,ms,y
-Bragg	n
-braggart	n,a
-brahma	n
-Brahman	n,na
-Brahmaputra	pc
-Brahmin	n,na
-Brahms	pc
-Brahmsian	pc
-braid	n,v,er
-braille	n,v
-brain	n,v,y
-Brainard	n
-brainchild	pc
-brainchildren	pc
-brainstorm	n,v
-brainwash	n,v
-braise	v
-brake	n,v,man,y
-bramble	n,a
-bran	n,nopref,ms
-branch	n,v,y
-brand	n,v,er
-Brandeis	pc
-Brandenburg	pc
-brandish	n,v
-Brandon	n
-Brandt	n
-brandy	n,v
-brandywine	n
-Braniff	pc
-brant	n
-brash	n,a,comp
-Brasilia	pc
-brass	n,y
-brassiere	n
-brat	n,ms,y
-brattish	a
-bratwurst	n
-Braun	n
-bravado	n
-brave	n,v,a,comp
-bravery	n
-bravo	n,v
-bravura	n
-brawl	n,v,er,y
-brawn	n,y
-bray	n,v,er
-braze	v,er
-brazen	v,a
-brazier	n
-Brazil	pc
-Brazilian	n
-Brazzaville	pc
-breach	n,v,er
-bread	n,v
-breadbasket	n
-breadboard	n
-breadfruit	n
-breadroot	n
-breadth	n
-breadwin	vi,er,ms
-break	n,vi,er,va
-breakage	n
-breakaway	n,a
-breakdown	n
-breakfast	n,v
-breakneck	a
-breakout	n
-breakpoint	n
-breakthrough	n
-breakup	n
-breakwater	n
-bream	n,v
-breast	n,v,nopref
-breastplate	n
-breastwork	n
-breath	n,v,na,va,y
-breathalyzer	n
-breathe	v,er
-breathtaking	a
-breccia	n
-bred	d
-breech	n,vi
-breechclout	n
-breeches	d
-breed	n,vi,er
-breeze	n,v,y
-breezeway	n
-Bremen	pc
-bremsstrahlung	n
-Brenda	pc
-Brendan	pc
-Brennan	n
-Brenner	n
-Brent	n
-Brest	pc
-brethren	pc
-Breton	n,a
-Brett	pc
-breve	n
-brevet	n,v
-breviary	n
-brevity	n
-brew	n,v,er
-brewery	n
-Brewster	n
-Brian	pc
-briar	n
-bribe	n,v,er,va
-bribery	n
-Brice	n
-brick	n,v,er
-brickbat	n
-bricklay	vi,er
-brickwork	n
-brickyard	n
-bridal	n,a
-bride	n,nopref
-bridegroom	n
-bridesmaid	n
-bridge	n,v
-bridgeable	a
-bridgehead	n
-Bridgeport	pc
-Bridget	pc
-Bridgetown	pc
-bridgework	n
-bridle	n,v
-Brie	pc
-brief	n,v,a,comp
-briefcase	n
-brier	n,nopref
-briery	a,comp
-brig	n
-brigade	n,v
-brigadier	n
-brigand	n,na
-brigantine	n
-Briggs	n
-Brigham	n
-bright	a,comp
-brighten	v
-Brighton	pc
-brightwork	n
-Brigitte	pc
-brilliant	n,a,na
-Brillouin	pc
-brim	n,v,er,na,ms
-brimstone	n
-Brindisi	pc
-brindle	n,ed
-brine	n,er,y
-bring	vi,er
-brink	n
-brinkmanship	n
-brioche	n
-briquette	n
-Brisbane	pc
-brisk	v,a,comp
-brisket	n
-bristle	n,v,na
-bristly	a,comp
-bristol	n
-Britain	pc
-Britannic	a
-Britannica	pc
-britches	n
-Briticism	n
-British	n,a,er
-Britisher	n
-Briton	n
-Britt	n
-Brittany	pc
-Britten	pc
-brittle	n,a,nopref
-broach	n,v,er
-broad	n,a,comp
-broadcast	n,v,a,er
-broadcloth	n
-broaden	v
-broadloom	n,a
-broadsheet	n
-broadside	n,a
-Broadway	pc
-brocade	n,v
-broccoli	d
-brochette	n
-brochure	n
-Brock	n
-Broglie	pc
-brogue	n
-broil	n,v,er
-broke	er
-broken	a
-brokerage	n
-bromate	n,v
-bromeliad	n
-Bromfield	n
-bromide	n
-bromine	n
-Bromley	n
-bronchi	d
-bronchial	a
-bronchitis	n
-bronchus	pc
-bronco	n
-brontosaurus	pc
-Bronx	pc
-bronze	n,v,y
-brooch	n
-brood	n,v,er,y
-brook	n,v
-Brooke	pc
-Brookhaven	pc
-Brookline	pc
-Brooklyn	pc
-brookside	n
-broom	n,v
-broomcorn	n
-broomstick	n
-broth	n
-brothel	n
-brother	n,a,na
-brougham	n
-brought	d
-brouhaha	n
-brow	n
-browbeat	n,vi,er
-browbeaten	d
-brown	n,v,a,comp
-Browne	n
-Brownell	n
-Brownian	pc
-brownie	n
-brownish	a
-brownout	n
-brownstone	n
-browse	n,v,er
-Bruce	pc
-brucellosis	pc
-Bruckner	pc
-Bruegel	pc
-bruise	n,v,er
-bruit	n,v
-Brumidi	pc
-brunch	n
-brunette	n
-Brunhilde	pc
-Bruno	n
-Brunswick	pc
-brunt	n
-brush	n,v,er,na,y
-brushfire	n
-brushwork	n
-brusque	a
-Brussels	pc
-brutal	a,na
-brute	n,a
-brutish	a
-Bryan	n
-Bryant	n
-Bryce	n
-Bryn	pc
-bryophyte	n
-b's	d,nopref
-BSA	pc,nopref
-BTU	n,nopref
-bubble	n,v,a,er
-bubonic	a
-buccaneer	n,v
-Buchanan	n
-Bucharest	pc
-Buchenwald	pc
-Buchwald	pc
-buck	n,v,a,er
-buckaroo	n
-buckboard	n
-bucket	n,v,nopref
-buckeye	n
-buckhorn	n
-Buckingham	n
-buckle	n,v,er
-Buckley	n
-Bucknell	pc
-buckram	n,v,a
-buckshot	n
-buckskin	n
-buckthorn	n
-bucktooth	n,ed
-buckwheat	n
-bucolic	n,a
-bud	n,v,er,ms
-Budapest	pc
-Budd	n
-Buddha	n
-Buddhism	pc
-Buddhist	n,a,na
-buddy	n
-budge	n,v,er,a,va
-budget	n,v,er
-budgetary	a
-budgeteer	n
-budgie	n
-budgiregar	n
-Budweiser	pc
-Buena	pc
-Buenos	pc
-buff	n,v,er
-buffalo	n,v
-buffet	n,v
-bufflehead	n
-buffoon	n
-buffoonery	n
-buffoonish	a
-bug	n,v,er,nopref,ms
-bugaboo	n
-bugbear	n
-bugeyed	a
-buggery	pc
-buggy	n,a,comp
-bughouse	n,a
-bugle	n,v,a,er
-Buick	n
-build	n,v,er,va
-buildup	n
-built	d
-builtin	n
-Bujumbura	pc
-bulb	n,ed
-bulblet	n
-bulbous	a
-Bulgaria	pc
-bulge	n,v,y
-bulimia	pc
-bulimic	a
-bulk	n,v,y
-bulkhead	n
-bull	n,v,a
-bulldog	n,v,a
-bulldoze	v,er
-bullet	n
-bulletin	n,v
-bulletproof	a
-bullfight	n,vi,er
-bullfinch	n
-bullfrog	n
-bullhead	n,ed
-bullhide	n
-bullhorn	n
-bullion	n
-bullish	a
-bullock	n,y
-bullpen	n
-bullseye	n
-bullshit	n,v,er,ms
-bullwhack	v
-bullwhip	n,v,ms
-bully	n,v,a
-bullyboy	n
-bullyrag	v,er,ms
-bulrush	n
-bulwark	n,v
-bum	n,v,a,er,ms
-bumble	v,er
-bumblebee	n
-bump	n,v,er,y
-bumpkin	n
-bumptious	a
-bun	n
-bunch	n,v,y
-buncombe	n
-Bundestag	pc
-bundle	n,v,er
-bung	n,v
-bungalow	n
-bungee	n
-bunghole	n
-bungle	v,er
-bunion	n
-bunk	n,v,er
-bunkhouse	n
-bunkmate	n
-bunkum	pc
-bunny	n
-Bunsen	pc
-bunt	n,v,er
-Bunyan	pc
-buoy	n,v
-buoyant	a,na
-burble	n,v,a,er
-Burch	n
-burden	n,v,va
-burdensome	a
-burdock	n
-bureau	n
-bureaucracy	n
-bureaucrat	n
-bureaucratic	n,a
-buret	n
-burette	n
-burg	n,er
-burgee	n
-burgeon	v
-burgess	n
-burgher	n
-burglar	n,na
-burglarproof	v
-burglary	n
-burgle	v
-burgomaster	n
-Burgundian	n
-Burgundy	n
-burial	n
-buried	d
-burin	n
-Burke	n
-Burkina	d,nopref
-burl	n,v,er
-burlap	n
-burlesque	n,v,a,er
-burley	n
-Burlington	pc
-burly	a,comp
-Burma	pc
-Burmese	pc,a
-burn	n,v,er,va
-Burnett	n
-Burnham	n
-burnish	n,v,er
-burnoose	n
-burnout	n
-Burnside	n
-burnt	d
-burp	n,v,er
-burr	n,v,er,y
-burrito	n
-burro	n
-Burroughs	n
-burrow	n,v,er
-bursar	n
-bursitis	n
-burst	n,v,er,y
-Burt	pc
-Burton	n
-Burtt	n
-Burundi	pc
-bury	v,er
-bus	n,man
-busboy	n
-Busch	pc
-buses	d
-bush	n,v,man,y
-bushmaster	n
-Bushnell	n
-bushwhack	v,er
-business	n,na,man
-busload	n
-buss	n,v,nopref
-bust	n,v,er,nopref,y
-bustard	n
-bustle	n,v,er
-busy	v,a,comp
-busybody	n
-busyness	d
-but	n
-butadiene	n
-butane	n
-butch	d
-butcher	n,v,a,er
-butchery	n
-butene	n
-buteo	n
-butler	n
-butt	n,v,va
-butte	n,er
-butterball	n
-buttercup	n
-butterfat	n
-Butterfield	n
-butterfinger	ed
-butterfly	n
-buttermilk	n
-butternut	n
-butterscotch	n
-buttery	n,a
-buttock	n
-button	n,v,er,y
-buttonhole	n,v,er
-buttonhook	n
-buttonwood	n
-buttress	n,v
-Buttrick	n
-butyl	n
-butylene	n
-butyrate	n
-butyric	a
-buxom	a
-Buxtehude	pc
-Buxton	n
-buy	n,vi
-buyback	n
-buyer	n
-buyout	n
-buzz	n,v,y
-buzzard	n
-buzzer	n
-buzzing	a
-buzzsaw	n,v
-buzzword	n
-BWI	pc,nopref
-by	d,nopref
-bye	n
-Byers	pc
-bygone	n,a
-bylaw	n
-byline	n
-bypass	n,v
-bypath	n
-byplay	n
-byproduct	n
-Byrd	n
-Byrne	n
-byroad	n
-Byron	pc,na
-Byronic	a
-bystander	n
-byte	n
-byway	n
-byword	n
-Byzantine	n,a
-Byzantium	pc
-CA	pc,nopref
-cab	n,man
-cabal	n,na
-cabala	n
-cabana	n
-cabaret	n
-cabbage	n,v
-cabby	n
-cabdriver	n
-cabin	n,v
-cabinet	n,a
-cabinetry	pc
-cabinetwork	n
-cable	n,v,er
-cablegram	n
-caboodle	n
-caboose	n
-Cabot	n
-cabriole	n
-cabriolet	n
-cacao	n
-cacciatore	d,nopref
-cachalot	n
-cache	n,v
-cachet	n
-caching	d
-cacique	n,na
-cackle	n,v,er
-CACM	pc,nopref
-cacophonist	n
-cacophonous	a
-cacophony	n
-cacti	d
-cactus	n
-cad	n,nopref
-cadastral	a
-cadaver	n
-cadaverous	a
-caddie	n,v
-caddish	a
-caddy	n
-cadent	a
-cadenza	n
-cadet	n
-cadge	v,er
-Cadillac	n
-cadmium	n
-cadre	n
-caduceus	n
-Cady	n
-Caesar	n,na
-caesura	n
-cafe	n
-cafeteria	n
-caffeinate	v,va
-caffeine	n
-caftan	n
-cage	n,v,er,y
-cagey	a
-Cahill	pc
-cahoot	n
-caiman	n
-Cain	pc
-Caine	pc
-cairn	n,ed
-Cairo	pc
-caisson	n
-cajole	v,er,va
-cajolery	n
-Cajun	n
-cake	n,v
-cakewalk	n,v,er
-Cal	pc
-calabash	n
-Calais	pc
-calamine	n
-calamitous	a
-calamity	n
-calcareous	a
-calcify	v,ion
-calcine	v
-calcite	n,na
-calcium	n
-calculable	a,va,in
-calculate	v,ion
-calculi	d
-calculus	pc
-Calcutta	pc
-Calder	n
-caldera	n
-Caldwell	n
-Caleb	pc
-calendar	n,v
-calendric	a
-calends	n
-calendula	n
-calf	n,nopref
-calfskin	n
-Calgary	pc
-Calhoun	n
-calibrate	v,ion
-calico	n,a
-California	pc
-californium	n
-caliper	n,v
-caliph	n
-caliphate	n
-calisthenic	n,a
-calk	n,ed
-Calkins	n
-call	n,v,er,va
-calla	n
-Callaghan	n
-Callahan	n
-calligraph	n,er,na
-calligraphy	n,na
-calliope	n
-Callisto	pc
-callous	v,a
-callow	a
-callus	n,v
-calm	n,v,a,comp
-caloric	n,a,na
-calorie	n
-calorimeter	n,na
-Calumet	pc
-calumniate	v,ion
-calumny	n
-calvados	n
-calvary	n
-calve	n,v,nopref
-Calvert	n
-Calvin	n,na
-Calvinist	n,a,na
-calypso	n
-calyx	n
-cam	n,nopref
-camaraderie	n
-camber	n,v
-cambium	n
-Cambodia	pc
-Cambrian	a
-cambric	n
-Cambridge	pc
-camcorder	n
-Camden	pc
-came	n
-camel	n
-camelback	n
-cameleer	n
-camellia	n
-camelopard	n
-Camelot	pc
-Camembert	n
-cameo	n
-camera	n,man
-Cameron	n
-Cameroun	pc
-Camilla	pc
-Camille	pc
-Camino	pc
-camisole	n
-camouflage	n,v
-camp	n,v,er
-campaign	n,v,er
-campanile	n
-campanology	n
-Campbell	n
-campfire	n
-campground	n
-camphor	n
-campion	n
-camporee	n
-campsite	n
-campus	n
-camshaft	n
-can	n,v,er,nopref,ms,y
-Canaan	pc
-Canada	pc
-Canadian	n
-canal	n,v,er,ms
-canape	n
-canard	n
-canary	n
-canasta	n
-Canaveral	pc
-Canberra	pc
-cancan	n
-cancellate	a,ion
-cancer	n
-cancerous	a
-Candace	pc
-candela	n
-candelabra	n
-candid	a
-candidacy	n
-candidate	n
-Candide	pc
-candle	n,v,er
-candlelight	n,er
-candlelit	d
-candlepower	n
-candlestick	n
-candy	n,v
-cane	n,v,er
-Canfield	n
-canine	n,a
-Canis	pc
-canister	n
-canker	n,v
-cankerworm	n
-canna	n
-cannabis	n
-cannel	n
-cannery	n
-cannibal	n,a,na
-cannister	n
-cannon	n,v
-cannonade	n
-cannonball	n,v
-cannoneer	n
-cannot	d
-canoe	n,v
-canoeing	pc
-canoeist	n
-Canoga	pc
-canon	n,na
-canonic	a
-canopy	n,v
-canst	d
-can't	d
-cant	n,v,er,y
-cantabile	d
-Cantabrigian	n,a
-cantaloupe	n
-cantankerous	a
-cantata	n
-canteen	n
-Canterbury	pc
-canticle	n
-cantilever	n
-cantle	n
-canto	n
-canton	n,v,va
-Cantonese	a
-cantor	n
-Cantrell	n
-canvas	n
-canvasback	n
-canvass	n,v,er
-canyon	n
-cap	n,v,er,ms
-capacious	a
-capacitance	n
-capacitate	v,ion,in
-capacitive	a
-capacitor	n
-capacity	n,in
-caparison	n,v
-cape	n,va
-capella	d
-caper	n,v
-Capetown	pc
-capillarity	n
-capillary	n,a
-Capistrano	pc
-capita	d
-capital	n,a,na
-capitate	a,ion
-capitol	n
-Capitoline	a
-capitulate	v,ion
-capo	d
-capon	n,na
-cappucino	n
-caprice	n
-capricious	a
-Capricorn	n
-capsicum	pc
-capsize	v
-capstan	n
-capstone	n
-capsule	n,a
-captain	n,v
-captaincy	n
-caption	n,v,na,va
-captious	a
-captivate	v,ion
-captor	n
-capture	n,v
-capuchin	n
-Caputo	n
-capybara	n
-car	n,nopref
-carabiner	n
-Caracas	pc
-caracul	n
-carafe	n
-carageen	n
-caramel	n,na
-carapace	n
-carat	n
-caravan	n
-caravansary	n
-caravel	n
-caraway	n
-carbide	n
-carbine	n
-carbohydrate	n
-Carboloy	pc
-carbon	n,na
-carbonaceous	a
-carbonate	n,v,ion
-Carbondale	pc
-Carbone	n
-carbonic	a
-carboniferous	n,a
-carbonyl	n
-carborundum	n
-carboxy	a
-carboxyl	n
-carboxylate	n,v,ion
-carboy	n
-carbuncle	n,ed
-carburet	v
-carburetion	n
-carburetor	n
-carcass	n
-carcinogen	n
-carcinogenic	a
-carcinoma	n
-card	n,v,er
-cardamom	n
-cardboard	n,a
-cardiac	n,a
-cardigan	n
-cardinal	n,a
-cardiograph	n,er
-cardiography	n,na
-cardioid	n
-cardiology	n,na
-cardiovascular	a
-care	n,v,er,na
-careen	n,v
-career	n,v,na
-carefree	a
-caress	n,v,er
-caret	n
-caretaker	n
-careworn	a
-Carey	n
-carfare	n
-Cargill	n
-cargo	n
-cargoes	d
-carhop	n
-Carib	n
-Caribbean	a
-caribou	n
-caricature	n,v,na
-caries	n
-carillon	n
-carioca	n
-Carl	pc,na
-Carla	pc
-Carleton	n
-Carlin	n
-Carlisle	n
-Carlo	n
-carload	n
-Carlson	n
-Carlton	n
-Carlyle	n
-Carmela	pc
-Carmen	pc
-Carmichael	n
-carmine	n
-carnage	n
-carnal	a
-carnation	n
-carne	pc
-Carnegie	pc
-carnelian	n
-carney	n
-carnival	n
-carnivore	n
-carnivorous	a
-carny	n
-carob	n
-Carole	n
-Carolina	n
-Caroline	pc
-Carolingian	n,a
-Carolinian	n,a
-Carolyn	pc
-carom	n,v
-carotene	n
-carotid	n,a
-carousal	n
-carouse	n,v,er
-carousel	n
-carp	n,v,er
-carpal	n
-Carpathia	pc
-carpel	n
-carpenter	n,v
-carpentry	n
-carpet	n,v
-carpetbag	n,v,a,er,ms
-carport	n
-Carr	n
-carrageen	n
-Carrara	pc
-carrel	n
-carriage	n
-Carrie	pc
-carrion	n
-Carroll	n
-carrot	n
-Carruthers	n
-carry	n,v,er
-carryall	n
-carryover	v
-carsick	a
-Carson	n
-cart	n,v,er,nopref
-cartage	n
-carte	d,nopref
-cartel	n
-Cartesian	n,a,na
-Carthage	pc
-Carthaginian	n
-cartilage	n
-cartogram	n
-cartography	n,er
-carton	n
-cartoon	n,v,na
-cartouche	n
-cartridge	n
-cartwheel	n,v
-Caruso	pc
-carve	v,er
-carven	d
-caryatid	n
-casaba	n
-Casanova	pc
-casbah	n
-cascade	n,v
-cascara	n
-case	n,v,va
-casebook	n
-casein	n
-casework	n,er
-Casey	n
-cash	n,v,er,va
-cashew	n
-cashier	n,v
-cashmere	n
-casino	n
-cask	n
-casket	n,v
-Caspian	pc
-Cassandra	n
-cassava	n
-casserole	n
-cassette	n
-Cassidy	pc
-Cassiopeia	pc
-Cassius	pc
-cassock	n
-cassowary	n
-cast	n,vi
-castanet	n
-castaway	n,a
-caste	n,ed,er
-casteth	d
-castigate	v,ion
-Castilian	n,a
-Castillo	pc
-castle	n,v
-castoff	n
-castor	n
-castrate	n,v,ion
-Castro	n
-casual	n,a
-casualty	n
-casuist	n,na
-casuistry	n
-cat	n,v,na,nopref,ms
-catabolic	a,na
-cataclysm	n
-cataclysmic	a
-catacomb	n
-catafalque	n
-Catalan	n,a
-catalepsy	n
-cataleptic	n,a
-Catalina	pc
-catalogue	n,v,er
-catalpa	n
-catalysis	pc
-catalyst	n
-catalytic	a,na
-catamaran	n
-catamount	n
-catapult	n,v
-cataract	n
-catarrh	n
-catastrophe	n
-catastrophic	a,na
-catatonia	n
-catatonic	n,a
-catbird	n
-catcall	n,v
-catch	n,vi,er,va,y
-catchall	a
-catchup	n
-catchword	n
-catechism	n
-catechist	n,na
-categoric	a,na
-category	n
-catena	n
-catenary	n,a
-catenate	v,ion
-cater	v,er
-caterpillar	n
-caterwaul	v
-catfish	n
-catgut	n
-catharsis	pc
-cathartic	n,a
-cathedra	n
-cathedral	n,a
-Catherine	pc
-Catherwood	n
-catheter	n,na
-cathode	n
-cathodic	a,na
-catholic	n,a,na
-Catholicism	pc
-Cathy	pc
-cation	n,nopref
-cationic	a,na
-catkin	n
-catnap	n,v,ms
-catnip	n
-Catskill	pc
-catsup	n
-cattail	n
-cattle	n,man
-catty	n,a,comp
-CATV	pc,nopref
-catwalk	n
-Caucasia	pc
-Caucasus	pc
-Cauchy	pc
-caucus	n,v
-caudal	a
-caudillo	n
-caught	d
-cauldron	n
-cauliflower	n
-caulk	v,er
-causa	d
-causal	a
-causation	n,na,va
-cause	n,v,er
-causeway	n,v
-caustic	n,a,na
-caution	n,v,in
-cautionary	a,nopref
-cautious	a,in
-cavalcade	n
-cavalier	n,a
-cavalry	n,man
-cave	n,v,a,comp,man,y
-caveat	n
-Cavendish	n
-cavern	n,v
-cavernous	a
-caviar	n
-Caviness	n
-cavitate	v,ion
-cavort	v
-caw	n,v
-cay	n
-cayenne	n
-Cayley	pc
-cayman	n
-Cayuga	n
-CB	pc,nopref
-CBC	pc,nopref
-CBS	pc,nopref
-CCC	pc,nopref
-CCNY	pc,nopref
-CD	n,nopref
-CDC	pc,nopref
-cease	n,v
-Cecil	pc
-Cecilia	pc
-Cecily	pc
-Cecropia	pc
-cedar	n
-cede	v,er
-cedilla	n
-Cedric	pc
-ceil	v
-celandine	n
-Celanese	pc
-Celebes	pc
-celebrant	n
-celebrate	v,ion
-celebrity	n
-celeriac	n
-celerity	n
-celery	n
-celesta	n
-Celeste	pc
-celestial	n,a
-Celia	pc
-celibacy	n
-celibate	n,a
-cell	n,ed,na
-cellar	n,er,nopref
-cello	n
-cellophane	n
-cellular	a
-celluloid	n,a
-cellulose	n
-Celsius	a
-Celt	n
-Celtic	n,a,na
-cement	n,v,er
-cemetery	n
-cenotaph	n
-cenote	n
-censer	n
-censor	n,v
-censorial	a
-censorious	a
-censure	n,v,er,va
-census	n,v
-cent	n
-centaur	n
-Centauri	pc
-centenarian	n,a
-centenary	n,a
-centennial	n,a
-centerfold	n
-centerline	n
-centerpiece	n
-centesimal	n,a
-centigrade	a
-centigram	n
-centime	n
-centipede	n
-central	n,a,na
-centrex	n
-centric	a,na
-centrifugal	n,a
-centrifugate	ion
-centrifuge	n,v
-centripetal	a
-centrist	n
-centroid	n
-centum	a
-centurion	n
-century	n
-CEO	n,nopref
-cephalic	a,na
-cephalopod	n,a
-Cepheid	n
-Cepheus	pc
-CEQ	pc,nopref
-ceramic	n,a,na
-ceramist	n
-Cerberus	pc
-cereal	n,a
-cerebellum	n
-cerebral	a
-cerebrate	v,ion
-cerebrum	n
-ceremonial	n,a,na
-ceremonious	a
-ceremony	n
-Ceres	pc
-cereus	n
-cerise	n
-cerium	n
-CERN	pc,nopref
-certain	a
-certainty	n
-certificate	n,v
-certificatory	a
-certified	d
-certify	v,er,ion,va
-certiorari	d
-certitude	n
-cerulean	a
-Cervantes	pc
-cervical	a
-cervix	n
-cesarean	n
-cessation	n,na
-cession	n,na
-Cessna	n
-cesspool	n
-cetacean	n,a
-cetera	d
-ceteris	d,nopref
-Cetus	pc
-Ceylon	pc
-Cezanne	pc
-Chablis	pc
-Chad	pc
-chador	n
-Chadwick	n
-chafe	n,v,er
-chaff	n,v,y
-chaffer	n,v,er
-chaffinch	n
-chagrin	n,v
-chain	n,v,va
-chainsaw	n
-chair	n,v,man
-chairlady	n
-chaise	n
-chalcedony	n
-chalet	n
-chalice	n
-chalk	n,v,er,y
-chalkboard	n
-chalkline	n
-challenge	n,v,er
-Chalmers	n
-chamber	n,v,a,er
-chamberlain	n
-chambermaid	n
-chameleon	n
-chamfer	n,v
-chamois	n
-chamomile	n
-champ	n,v
-champagne	n
-champaign	n,a
-champion	n,v
-Champlain	pc
-Chan	n
-chance	n,v,a,na
-chancel	n
-chancellery	n
-chancellor	n
-chancery	n
-chancy	a,comp
-chandelier	n
-chandler	n
-chandlery	n
-Chaney	pc
-Chang	n
-change	n,v,er,na
-changeable	a,va
-changeling	n,a
-changeover	n
-chanson	n
-chant	n,v,er,va
-chantey	n
-chanticleer	n
-Chantilly	pc
-chantry	n
-Chao	n
-chaos	n
-chaotic	a,na
-chap	n,v,ms,man
-chaparral	n
-chapel	n
-chaperon	n,v
-chaperone	n
-chaplain	n
-chaplaincy	n
-Chaplin	n
-chapter	n
-char	n,v,man,ms
-character	n,v,na
-characteristic	n,a,na
-charade	n
-charcoal	n
-chard	n
-charge	n,v,er
-chargeable	a
-charily	d
-chariot	n,v
-charioteer	n
-charisma	n
-charismatic	n,a
-charitable	a
-charity	n
-charlatan	n,na
-Charlene	n
-Charles	n
-Charleston	n
-Charley	pc
-Charlie	pc
-Charlotte	pc
-Charlottesville	pc
-charm	n,v,er
-charnel	a
-Charon	pc
-chart	n,v,na
-Charta	pc
-charter	n,v,er
-Chartres	pc
-chartreuse	n
-chartroom	n
-chary	a,comp
-Charybdis	pc
-chase	n,v,er
-chasm	n
-chassis	pc
-chaste	a
-chasten	v,er
-chastise	v,er,va
-chastity	n
-chasuble	n
-chat	n,v,nopref,ms,y
-chateau	pc
-chateaux	pc
-Chatham	pc
-Chattanooga	pc
-chattel	n
-chatter	n,v,er
-Chaucer	pc
-chauffer	n,v
-chauffeur	n,v
-Chauncey	pc
-Chautauqua	pc
-chauvinism	n
-chauvinist	n,na
-Chavez	n
-chaw	n,v
-cheap	n,a,comp
-cheapen	v
-cheapskate	n
-cheat	n,v,er
-check	n,v,er,va
-checkbook	n
-checkerboard	n
-checklist	n
-checkmate	n,v
-checkout	d
-checkpoint	n,v
-checkroom	n
-checksum	n,v,ms
-checkup	n
-cheddar	n
-cheek	n,v,y
-cheekbone	n
-cheer	n,v,er,na
-cheerlead	vi,er
-cheery	a,comp
-cheese	n,y
-cheeseburger	n
-cheesecake	n
-cheesecloth	n
-cheetah	n
-chef	n,nopref
-chelate	v,a,ion
-Chelsea	pc
-chemic	a,na
-chemise	n
-chemisorb	v
-chemisorption	n
-chemist	n
-chemistry	n
-chemoreception	n,na,va
-chemoreceptor	n
-chemotherapeutic	n,a,na
-chemotherapy	n
-chemurgy	n
-Chen	n
-Cheney	pc
-chenille	n
-cherish	v
-Cherokee	n
-cheroot	n
-cherry	n
-chert	n,y
-cherub	n
-cherubic	a
-cherubim	d
-chervil	n
-Cheryl	pc
-Chesapeake	pc
-Cheshire	pc
-chess	n,man
-chessboard	n
-chest	n,ed
-Chester	n
-chesterfield	n
-Chesterton	n
-chestnut	n,a
-chevalier	n
-Chevrolet	n
-chevron	n
-Chevy	n
-chew	n,v,er,va,y
-Cheyenne	n
-chi	n
-Chiang	n
-chianti	n
-chiaroscuro	n
-chiasma	d
-chic	n,a,comp
-Chicago	pc
-Chicagoan	n
-chicanery	n
-Chicano	n
-chick	n
-chickadee	n
-chicken	n,v,a
-chicle	n
-chicory	n
-chide	v,er
-chief	n,a
-chiefdom	n
-chieftain	n
-chiffon	n,a
-chigger	n
-chignon	n
-Chihuahua	n
-chilblain	n
-child	pc,a,na,adv
-childbear	vi
-childbirth	n
-Childers	n
-childish	a
-children	pc
-Chile	pc
-Chilean	a
-chill	n,v,a,er
-chilly	a,comp
-chime	n,v,er
-chimera	n
-chimeric	a,na
-Chimique	pc
-chimney	n
-chimp	n
-chimpanzee	n
-chin	n,v,nopref,ms
-china	n
-Chinaman	pc
-Chinamen	pc
-Chinatown	n
-chinch	n
-chinchilla	n
-chine	n,ed
-Chinese	a
-Ching	n
-chink	n,v,er
-chino	n
-chinoiserie	n
-Chinook	n
-chintz	n
-chintzy	a,comp
-chip	n,v,er,ms
-chipboard	n
-chipmunk	n
-Chippendale	a
-Chippewa	n
-chiropodist	n
-chiropractic	n
-chiropractor	n
-chirp	n,v
-Chisholm	n
-chit	n,er,ms
-chitchat	n,v
-chitin	n
-chitinous	a
-chiton	n
-chivalric	a
-chivalrous	a
-chivalry	n
-chive	n
-chlorate	n,nopref
-chlordane	n
-chloric	a
-chloride	n
-chlorinate	v,ion
-chlorine	n
-chloroform	n,v
-chlorophyl	n
-chlorophyll	n
-chock	n,v
-chocolate	n,a
-Choctaw	n
-choice	n,a,comp
-choir	n,v,a
-choirboy	n
-choirmaster	n
-choke	n,v,er,y
-choler	n
-cholera	n
-choleric	a
-cholesterol	n
-cholinesterase	n
-chomp	v,er
-chondrite	n,na
-chondrule	n
-choose	vi,er,va,y
-chop	n,v,er,ms,y
-chophouse	n
-Chopin	pc
-chopstick	n
-choral	a
-chorale	n
-chord	n,v
-chordal	a
-chordate	n,a
-chore	n,na
-choreograph	v,er
-choreography	n,er
-chorine	n
-chortle	n,v,er
-chorus	n,v
-chose	n
-chosen	a
-Chou	pc
-chow	n
-chowder	n
-Chris	pc
-Christ	n,a
-christen	v
-Christendom	pc
-Christensen	n
-Christenson	n
-Christian	n,a,na
-Christiana	pc
-Christianson	n
-Christie	n
-Christina	pc
-Christine	pc
-Christlike	a
-Christmas	n
-Christoffel	pc
-Christophe	n
-Christopher	n
-Christy	pc
-chromate	n,na
-chromatic	n,a,na
-chromatograph	n,v
-chromatography	n,na
-chrome	n,v,na
-chromic	a
-chromium	n
-chromosomal	a
-chromosome	n
-chromosphere	n
-chronic	n,a,na
-chronicle	n,v,er
-chronograph	n
-chronography	n,na
-chronology	n,na
-chronometer	n,na
-chrysalis	n
-chrysanthemum	n
-Chrysler	n
-chub	n,ms,y
-chuck	n,v
-chuckle	n,v,er
-chuff	n,v,er,y
-chug	n,v,ms
-chukker	n
-chum	n,v,ms,y
-chump	n
-Chungking	pc
-chunk	n,y
-church	n,ed,a,man,y
-churchgo	vi,er
-Churchill	n
-Churchillian	pc
-churchyard	n
-churl	n
-churlish	a
-churn	n,v,er
-chute	n,v,va
-chutney	n
-CIA	pc,nopref
-cicada	n
-Cicero	pc
-Ciceronian	a
-cider	n
-cigar	n
-cigarette	n
-cilantro	n
-cilia	pc
-ciliate	n,ed,a
-cinch	n,v,er
-Cincinnati	pc
-cinder	n,nopref,y
-Cinderella	n
-Cindy	pc
-cinema	n
-cinematic	a,na
-cinematography	n,er,na
-Cinerama	pc
-cinnabar	n
-cinnamon	n
-CIO	pc,nopref
-cipher	n,v,er
-circa	d
-circadian	a
-Circe	pc
-circle	n,v,er
-circlet	n
-circuit	n,v
-circuitous	a
-circuitry	pc
-circulant	n,a
-circular	n,a,na
-circulate	v,ion
-circumambient	a
-circumambulate	v,ion
-circumcircle	v
-circumcise	v
-circumcision	n
-circumference	n
-circumferential	a
-circumflex	n,a
-circumfluent	a
-circumlocution	n
-circumlocutory	a
-circumnavigate	v,ion
-circumpolar	a
-circumradius	pc
-circumscribe	v
-circumscription	n
-circumspect	a,ion,in
-circumsphere	v
-circumstance	n,ed
-circumstantial	a
-circumvallate	v,a,ion
-circumvent	v,ion
-circus	n
-cirque	n
-cirrhosis	pc
-cirrostratus	n
-cirrus	n
-CIS	pc,nopref
-cistern	n
-cit.	d,nopref
-citadel	n
-citation	n,va,in
-cite	v,er,va,in
-Citicorp	pc
-citify	v
-citizen	n,a
-citizeness	n
-citizenry	pc
-citrate	n
-citric	a
-Citroen	pc
-citron	n
-citrus	n
-city	n,ed
-cityscape	n
-citywide	d
-civet	n
-civic	n,a,na
-civil	a,na
-civilian	n,a
-clack	v,er
-clad	vi,ms
-claim	n,v,er,va
-claimant	n
-Claire	pc
-clairvoyant	n,a
-clam	n,v,nopref,ms,y
-clambake	n
-clamber	v,er
-clamorous	a
-clamp	n,v
-clamshell	n
-clan	n,nopref
-clandestine	a
-clang	n,v
-clangorous	a
-clank	n,v
-clannish	a
-clans	man
-clap	n,v,er,nopref,ms
-clapboard	n,v
-Clapeyron	pc
-claptrap	n
-claque	n
-Clara	pc
-Clare	pc
-Claremont	pc
-Clarence	n
-Clarendon	pc
-claret	n,a
-clarify	v,er,ion
-clarinet	n,na
-clarion	n,a
-clarity	n
-Clark	n
-Clarke	n
-clash	n,v,er
-clasp	n,v,er
-class	n,v,na,man,y
-classic	n,a,na
-classification	n
-classificatory	a
-classify	v,er,va
-classmate	n
-classroom	n
-clatter	n,v,er
-clattery	a
-Claude	pc
-Claudia	pc
-Claudio	pc
-Claus	pc
-clausal	a
-clause	n
-Clausen	n
-Clausius	pc
-claustral	a
-claustrophobe	n,na
-clavichord	n,na
-clavicle	n
-clavier	n,na
-claw	n,v
-clay	n
-clayey	a,comp
-claymore	n
-Clayton	n
-clean	v,a,comp,va
-cleanse	v,er
-cleanup	n
-clear	v,a,comp,va
-clearance	n
-clearheaded	a
-clearinghouse	n
-Clearwater	pc
-cleat	n,v
-cleavage	n
-cleave	v,er,va
-clef	n
-cleft	n,a
-Clem	pc
-clematis	n
-clement	n,a,na,in
-Clemson	pc
-clench	n,v
-Cleo	n
-Cleopatra	pc
-clepsydra	n
-clerestory	n
-clergy	n,man
-cleric	n,a,na
-clerisy	n
-clerk	n,v,a
-Cleveland	n
-clever	a,comp
-cliche	n
-click	n,v,er
-client	n
-clientele	n
-cliff	n
-cliffhang	vi,er
-Clifford	n
-Clifton	pc
-climactic	a,na
-climate	n
-climatic	a,na
-climatology	n,na
-climax	n,v
-climb	n,v,er,va
-clime	n
-clinch	n,v,er
-cline	n
-cling	vi,er
-clinic	n,a,na
-clinician	n
-clink	n,v,er
-Clint	pc
-Clinton	n
-Clio	pc
-clip	n,v,er,ms
-clipboard	n
-clique	n,y
-clitoral	a
-clitoris	n
-Clive	pc
-cloaca	n
-cloak	n,v
-cloakroom	n
-clobber	v
-clock	n,v,er
-clockwatcher	n
-clockwise	a
-clockwork	n
-clod	n,nopref,ms,y
-cloddish	a
-clodhop	v,er,ms
-clog	n,v,ms
-cloisonne	d
-cloister	n,v
-clomp	v
-clonal	a
-clone	n,v,er
-clonic	a
-clop	n,v,ms
-close	n,v,a,comp
-closemouthed	a
-closet	n,v,a
-closeup	d
-closure	n
-clot	n,v,ms
-cloth	n,vi
-clothbound	d
-clothe	v
-clothes	man
-clotheshorse	n
-clothesline	n
-clothespin	n
-clothier	n
-Clotho	pc
-cloud	n,v,na,y
-cloudburst	n
-clout	n,v,nopref
-clove	n,er
-cloven	a
-cloverleaf	n
-clown	n,v
-clownish	a
-cloy	v
-club	n,v,va,ms,y
-clubfoot	n,ed
-clubhouse	n
-clubroom	n
-cluck	n,v
-clue	n,v,nopref
-clump	n,v,y
-clumsy	a,comp
-clung	d
-clunk	v,er,y
-cluster	n,v,y
-clutch	n,v
-clutter	n,v
-Clyde	pc
-Clytemnestra	pc
-CNN	pc,nopref
-Co.	d,nopref
-coach	n,v,er,man
-coachwork	n
-coact	v,va
-coadjutor	n,a
-coagulable	a,va
-coagulant	n
-coagulate	v,a,ion
-coal	n,v,er
-coalesce	v
-coalescent	a
-coalition	n,na
-coaming	n
-coanchor	n,v
-coarse	a,comp
-coarsen	v
-coarticulate	v,ion
-coast	n,v,er
-coastal	a
-coastline	n
-coastwise	a
-coat	n,v,er
-Coates	n
-coati	n
-coattail	n
-coauthor	n,v,na
-coax	v,er
-coaxial	a
-cob	n,er,ms
-cobalt	n
-Cobb	n
-cobble	n,v,er
-cobblestone	n
-Cobol	pc
-cobra	n
-cobweb	n,ed,ms,y
-coca	n
-cocaine	n,na
-cocci	d
-coccidiosis	pc
-coccus	n
-cochair	n,v,man
-cochineal	n
-cochlea	n
-cochlear	a
-Cochran	n
-Cochrane	n
-cock	n,v,er,y
-cockade	n,ed
-cockamamie	d
-cockatiel	n
-cockatoo	n
-cockcrow	n
-cockerel	n
-cockeye	n,ed
-cockfight	n,vi
-cockle	n,v
-cocklebur	n
-cockleshell	n
-cockney	n,a,na
-cockpit	n
-cockroach	n
-cocksure	a
-cocktail	n,a
-coco	n,a
-cocoa	n
-cocoanut	n
-coconut	n
-cocoon	n
-cod	n,nopref
-coda	n
-Coddington	n
-coddle	v,er
-code	n,v,er
-codebreak	v
-codefendant	n
-codeine	n
-codeposit	v
-codetermine	v
-codeword	n
-codex	n
-codfish	n
-codger	n
-codices	d
-codicil	n
-codify	v,er,ion
-codpiece	n
-Cody	n
-coed	n,nopref
-coeditor	n
-coeducation	n,na
-coefficient	n
-coelacanth	n,a
-coequal	a
-coerce	v
-coercible	a,in
-coercion	n,na,va
-coeval	n,a
-coexist	v
-coexistent	a
-coextensive	a
-cofactor	n,v
-coffee	n
-coffeecup	n
-coffeehouse	n
-coffeepot	n
-coffer	n
-cofferdam	n
-Coffey	n
-coffin	n,v
-Coffman	n
-cofound	v,er
-cog	n,v,ms
-cogent	a
-cogitate	v,ion
-cognac	n
-cognate	n,a
-cognition	n,na,va
-cognizable	a
-cognizant	a,in
-cognoscenti	pc
-cohabit	v
-cohabitation	n
-Cohen	n
-cohere	v,er
-coherent	a,in
-cohesion	n,na,va
-Cohn	n
-cohort	n
-cohosh	n
-cohost	n,v
-coif	n,v,ms
-coiffeur	n
-coiffure	n,v
-coil	n,v,er
-coin	n,v,er
-coinage	n
-coincide	v
-coincident	a
-coincidental	a
-coinsurance	n
-coinsure	v,er
-coinvent	v,ion
-coinventor	n
-coital	a
-coitus	n
-coke	n,v
-col	n,a,nopref
-cola	n
-colander	n
-colatitude	n
-Colby	n
-cold	n,a,comp
-cole	n
-Coleman	n
-coleoptera	n
-Coleridge	pc
-coleslaw	n
-Colette	pc
-coleus	n
-Colgate	pc
-colic	n,a
-colicky	a
-coliform	n,a
-Colin	pc
-coliseum	n
-colitis	n
-collaborate	v,ion
-collage	n
-collagen	n
-collagenic	a
-collapse	n,v
-collapsible	a,va
-collar	n,v,na
-collarbone	n
-collard	n
-collate	v,ion
-collateral	n,a
-colleague	n
-collect	n,v,ion,va
-collectible	a
-colleen	n
-college	n
-collegial	a
-collegian	n
-collegiate	a
-collet	n,nopref
-collide	v,er
-collie	n,er
-colliery	n
-collimate	v,ion
-collinear	a
-Collins	n
-collision	n
-collocate	v,ion
-collodion	d
-colloid	n
-colloquia	pc
-colloquial	n,a,na
-colloquium	n
-colloquy	n
-collude	v
-collusion	n,na,va
-cologne	n
-Colombia	pc
-Colombo	pc
-colon	n,na
-colonel	n
-colonial	n,a,na
-colonic	a
-colonist	n
-colonnade	n,ed
-colony	n
-colophon	n
-Colorado	pc
-colorate	ion
-coloratura	n
-colorcast	n,v
-colorfast	a
-colorimeter	n,na
-colossal	a
-Colosseum	pc
-colossi	d
-Colossian	n
-Colossians	pc
-colossus	n
-colostomy	n
-colostrum	n
-colt	n,er
-coltish	a
-coltsfoot	n
-Columbia	pc
-columbine	n
-Columbus	pc
-column	n,ed,na
-columnar	a
-colza	n
-coma	n,nopref
-Comanche	n
-comatose	a
-comb	n,v,er
-combat	n,v,ms
-combatant	n,a
-combative	a
-combination	n,na,va
-combinator	n,y
-combinatorial	a
-combinatoric	n,a
-combine	n,v,er,va
-combust	v,ion
-combustible	n,a,va,in
-come	n,vi,a,er
-comeback	n
-comedian	n
-comedic	a
-comedienne	n
-comedown	n
-comedy	n
-comestible	n,a
-comet	n
-cometary	a
-cometh	d
-comeuppance	n
-comfort	n,v,er,va
-comfrey	d
-comfy	a,comp
-comic	n,a,nopref
-Cominform	pc
-comma	n
-command	n,v,a,er,va
-commandant	n
-commandeer	v
-commando	n
-commemorate	v,ion
-commend	v,er,va
-commendation	n
-commendatory	a
-commensurable	n,a,va,in
-commensurate	a,ion,in
-comment	n,v,a
-commentary	n
-commentator	n
-commerce	n,v
-commercial	n,a,na
-commie	n
-commingle	v
-comminute	v,va
-commiserate	v,ion
-commissar	n
-commissariat	n
-commissary	n
-commission	n,v,er
-commit	n,v,er,va,ms
-committable	a
-committal	n,a
-committee	n,man
-commode	n,in
-commodious	a,in
-commodity	n
-commodore	n
-common	n,a,er
-commonality	n
-commonplace	n,a
-commonweal	n
-commonwealth	n
-commotion	n
-communal	a,na
-commune	n,v,a,na
-communicable	a,va,in
-communicant	n,a
-communicate	v,ion
-communion	n
-communique	n
-communitarian	n
-commutate	v,ion
-commute	v,er,va
-compact	n,v,a,ion
-Compagnie	pc
-companion	n,v,va
-companionway	n
-company	n,v
-comparative	n,a
-comparator	n
-compare	n,v,va
-comparison	n
-compartment	n,ed,na
-compass	n,v,a
-compassion	n
-compassionate	v,a
-compatible	n,a,va,in
-compatriot	n
-compeer	n,v
-compel	v,er,ms
-compellable	a
-compendia	pc
-compendious	a
-compendium	n
-compensable	a
-compensate	v,ion
-compete	v
-competent	a
-competition	n,na,va
-competitor	n
-compilation	n
-compile	v,er,va
-complacent	a
-complain	v,er
-complainant	n
-complaint	n
-complaisant	a
-compleat	a
-complement	n,v,na
-complementarity	n
-complementary	n,a
-complementation	n
-complete	v,a,va,in
-completion	n,na,va
-complex	n,a
-complexion	n,ed,na
-compliant	a,in
-complicate	v,ion
-complicity	n
-compliment	n,v
-complimentary	a
-compline	n
-comply	v,er
-component	n,a
-comport	n,v,va
-compose	v,er
-composit	v
-composite	n,a
-composition	n,na
-compositor	n
-compost	n,v,va
-composure	n
-compote	n
-compound	n,v,a,er,va
-comprehend	v
-comprehensible	a,va,in
-comprehension	n,na,va
-compress	n,v
-compressible	a,va,in
-compression	n,na,va
-compressor	n
-comprise	v
-compromise	n,v,er
-Compton	n
-comptroller	n
-compulsion	n,na,va
-compulsory	a
-compunction	n
-computation	n,na
-compute	n,v,er,va
-comrade	n
-Comstock	pc
-con	n,v,nopref,ms
-Conakry	pc
-Conant	n
-concatenate	v,a,ion
-concave	n,a
-conceal	v,va
-concede	v,er
-conceit	n,v
-conceive	v,er,va
-concentrate	n,v,ion
-concentric	a,na
-concept	n,ion
-conceptual	a,na
-concern	n,v,va
-concert	n,v
-concertgo	vi,er
-concerti	pc
-concertina	n
-concertino	n
-concertmaster	n
-concertmeister	n
-concerto	n
-concession	n,er,na,va
-concessionaire	n
-conch	pc
-conchoidal	a
-conchology	n,na
-conchs	d
-concierge	n
-conciliate	v,ion
-concise	a
-concision	n
-conclave	n
-conclude	v,er
-conclusion	n,na,va
-concoct	v,er,ion
-concomitant	n,a
-concord	n
-concordant	a
-concordat	n
-Concorde	pc
-concourse	n
-concrete	n,v,a
-concretion	n
-concubinage	pc
-concubine	n
-concupiscent	a
-concur	v,ms
-concurrent	n,a
-concussion	n,na,va
-condemn	v,er,va
-condemnate	ion
-condensate	n,ion
-condense	v,er,va
-condescend	v
-condescension	n
-condiment	n
-condition	n,v,er,na
-condo	n
-condole	v
-condolence	n
-condom	n
-condominium	n
-condone	v,er
-condor	n
-conduce	n,v,nopref
-conducive	a,nopref
-conduct	n,v,ion
-conductance	n
-conduit	n
-cone	n,v,nopref
-coneflower	n
-conelrad	n
-Conestoga	n
-coney	n,nopref
-confab	v,ms
-confabulate	v,ion
-confect	n,v,ion
-confectionary	n,a
-confectionery	n
-confederacy	n
-confederate	n,v,a,ion
-confer	v,er,va,ms
-conferee	n
-conference	n,v
-conferential	a
-conferral	n
-confess	v
-confession	n,na
-confessor	n
-confetti	pc
-confidant	n
-confidante	n
-confide	v,er
-confident	a
-confidential	a
-configuration	n,na,va
-configure	v,va
-confine	n,v,er,va
-confirm	v,va
-confirmation	n
-confirmatory	a
-confiscable	a
-confiscate	v,a,ion,va
-conflagration	n
-conflate	v,ion
-conflation	n
-conflict	n,v,ion
-confluent	n,a
-confocal	a
-conform	n,v,a,er,va
-conformal	a
-conformant	n,a,na
-conformation	n,na
-confound	v,er
-confraternity	n
-confrere	n
-confront	v
-confrontation	n,na
-Confucian	n,a
-Confucianism	pc
-Confucius	pc
-confuse	v,va
-confusion	n,na
-confutation	n,na,va
-confute	v,er,va
-conga	n
-congeal	v,va
-congelation	n
-congener	n
-congeneric	a
-congenial	a
-congenital	a
-congeries	d
-congest	v
-congestion	n,na,va
-conglomerate	n,v,a,ion
-Congo	pc
-Congolese	pc
-congratulate	v,ion
-congregate	v,ion
-congress	n,man
-congressional	a
-congruent	a,in
-congruential	a
-congruity	n,in
-congruous	a,in
-conic	n,a
-conifer	n
-coniferous	a
-conjectural	a
-conjecture	n,v,er
-conjoin	v
-conjoint	a
-conjugal	a
-conjugate	n,v,a,ion
-conjunct	n,a,ion
-conjunctivitis	n
-conjuncture	n
-conjure	v,er
-conk	v
-Conklin	n
-Conley	n
-conn	n,v
-connect	v,ion
-Connecticut	pc
-Conner	n
-Connie	pc
-conniption	n
-connivance	n
-connive	v,er
-connoisseur	n
-Connolly	pc
-Connor	n
-Connors	n
-connotation	n,na,va
-connote	v
-connubial	a
-conoid	n,a
-conquer	v,va
-conqueror	n
-conquest	n
-conquistador	n
-Conrad	n
-Conrail	pc
-consanguine	a
-consanguineous	a
-conscience	n
-conscientious	a
-conscionable	a
-conscious	n,a
-conscript	n,v,a,ion
-consecrate	v,a,ion
-consecutive	a
-consensual	a
-consensus	n
-consent	n,v,er
-consequent	n,a,in
-consequential	a,in
-conservancy	n
-conservation	n,na,va
-conservatism	n
-conservator	n,y
-conserve	n,v,er
-consider	v,va
-considerate	a,ion,in
-consign	v,va
-consignee	n
-consignor	n
-consist	v
-consistent	a,in
-consistory	n
-consolation	n
-console	n,v
-consolidate	v,ion
-consomme	n
-consonant	n,a
-consonantal	a
-consort	n,v
-consortia	pc
-consortium	n
-conspecific	a
-conspicuous	a,in
-conspiracy	n
-conspirator	n
-conspiratorial	a
-conspire	v
-constable	n
-constabulary	n,a
-Constance	pc
-constant	n,a,in
-Constantine	pc
-Constantinople	pc
-constellate	v,ion
-consternate	v,ion
-constipate	v,ion
-constituent	n,a
-constitute	v,ion
-constrain	v
-constraint	n
-constrict	v,ion
-construct	n,v,ion
-constructible	a
-construe	v,va
-consul	n
-consular	a
-consulate	n
-consult	n,v,er,na,va
-consultant	n,a
-consultation	n,na,va
-consultive	a
-consume	v,er,va,in
-consummate	v,a,ion
-consumption	n,na,va
-contact	n,v,nopref
-contagion	n
-contagious	a
-contain	v,er,va
-contaminant	n
-contaminate	v,ion
-contemplate	v,ion
-contemporaneity	n
-contemporaneous	a
-contemporary	n,a
-contempt	n
-contemptible	a
-contemptuous	a
-contend	v,er
-content	n,v,a,ion,va
-contentious	a
-conterminous	a
-contest	n,v,er,va
-contestant	n
-context	n
-contextual	a
-contiguity	n
-contiguous	a
-continent	n,a,in
-continental	n,a
-contingent	n,a
-continua	v,er
-continual	a
-continuant	n,a
-continuation	n,na,va
-continue	v,er
-continuity	n
-continuo	d
-continuous	a
-continuum	n
-contort	v,ion
-contour	n,v,a
-contraband	n,a,na
-contrabass	n,na
-contrabassoon	n
-contraception	n,na,va
-contract	n,v,a,ion
-contractual	a
-contradict	v,ion,va
-contradictor	n,y
-contradistinction	n,na,va
-contradistinguish	v
-contrail	n
-contraindicate	v,ion
-contralateral	a
-contralto	n
-contraposition	n
-contrapositive	n,a
-contraption	n
-contrapuntal	a
-contrariety	n
-contrariwise	d
-contrary	n,a
-contrast	n,v,va,y
-contravariant	a
-contravene	v,er
-contravention	n
-contretemps	n
-contribute	v,ion
-contributor	n,y
-contrite	a,comp
-contrition	n
-contrivance	n
-contrive	v,er
-control	n,v,er,va,ms
-controversial	a,na
-controversy	n
-controvert	v,er
-controvertible	a,in
-contumacious	a
-contumacy	n
-contumelious	a
-contumely	n
-contusion	n
-conundrum	n
-conurbation	n
-Convair	pc
-convalesce	v
-convalescent	n,a
-convect	v,ion
-convene	v,er
-convenient	a,in
-convent	n,ion
-conventioneer	n
-converge	v
-convergent	a
-conversant	a
-conversation	n,na
-converse	n,v,a,er,va
-conversion	n,na
-convert	n,v,er
-convertible	n,a,va,in
-convex	a
-convey	v,er
-conveyance	n,vi,er
-conveyor	n
-convict	n,v,a,ion,va
-convince	v,er
-convivial	a
-convocation	n,na
-convoke	v
-convolute	v,a,ion
-convolve	v
-convoy	n,v
-convulse	v
-convulsion	n,na,va
-Conway	n
-cony	n
-coo	n,v,nopref
-cook	n,v,er
-cookbook	n
-Cooke	n
-cookery	n
-cookie	n
-cookout	n
-cookware	pc
-cool	n,v,a,comp
-coolant	n
-Cooley	n
-coolheaded	a
-Coolidge	n
-coolie	n
-coolish	a
-coon	n,nopref
-coonskin	n,a
-coop	n,v,er
-cooperage	n
-cooperate	v,ion
-coordinate	n,v,a,ion
-Coors	pc
-coot	n,nopref
-cootie	n
-cop	n,v,er,nopref,ms
-cope	n,v,er,nopref
-Copeland	n
-Copenhagen	pc
-copepod	n,a
-Copernican	n,a
-Copernicus	pc
-copilot	n
-copious	a
-coplanar	a
-copolymer	n,na
-copperas	n
-Copperfield	pc
-copperhead	n
-coppery	a
-copra	n
-coprolite	n,na
-copse	n
-copter	n
-Coptic	pc,a
-copula	n
-copulate	v,ion
-copy	n,v,er,na,va
-copybook	n
-copycat	n
-copyreader	n
-copyright	n,v,a,va
-copywriter	n
-coquetry	n
-coquette	n,ed
-coquettish	a
-Cora	n
-coracle	n
-coral	n
-coralline	n,a
-Corbett	n
-Corcoran	n
-cord	n,v,er,na
-cordage	n
-cordial	n,a
-cordiform	a
-cordillera	n
-cordite	n
-cordon	n,v
-corduroy	n,v
-cordwood	n
-core	n,v,er
-coreligionist	n
-Corey	pc
-coriander	n
-Corinne	n
-Corinth	pc
-Corinthian	n,a
-Coriolanus	pc
-Coriolis	pc
-cork	n,v,er,y
-corkscrew	n,v
-cormorant	n
-corn	n,v,er,nopref,y
-cornbread	n
-cornea	n
-corneal	a
-Cornelia	pc
-Cornelius	n
-Cornell	n
-cornerstone	n
-cornet	n,na
-cornfield	n
-cornflower	n
-cornice	n
-corniche	n
-Cornish	a
-cornmeal	n
-cornstalk	n
-cornstarch	n
-cornucopia	n
-Cornwall	pc
-corolla	n
-corollary	n,a
-corona	n
-Coronado	pc
-coronary	n,a
-coronate	v,ion
-coroner	n
-coronet	n
-coroutine	n
-Corp.	d,nopref
-corpora	d
-corporal	n,a
-corporate	a,ion
-corporeal	a,in
-corps	n,man
-corpse	n
-corpulent	a
-corpus	pc
-corpuscle	n
-corpuscular	a
-corral	n,v,ms
-correct	v,a,ion,va
-correlate	n,v,a,ion
-correspond	v
-correspondent	n,a
-corridor	n
-corrigenda	pc
-corrigendum	pc
-corrigible	a,va
-corroborate	v,ion
-corroboree	n
-corrode	v
-corrodible	a
-corrosion	n,na,va
-corrugate	v,ion
-corrupt	n,v,a,comp,ion,va
-corruptible	a,in
-corsage	n
-corsair	n
-corset	n,v
-Corsica	n
-cortege	n
-cortex	n
-cortical	a
-cortisone	n
-Cortland	pc
-corundum	n
-coruscate	v,ion
-corvette	n
-Corvus	pc
-cos	d,nopref
-cosec	d
-cosecant	n
-coset	n
-Cosgrove	pc
-cosh	n
-cosign	v
-cosignatory	n
-cosine	n
-cosmetic	n,a
-cosmetician	n
-cosmetology	n,na
-cosmic	a,na
-cosmogeny	n
-cosmography	n,er,na
-cosmology	n,na
-cosmonaut	n
-cosmopolitan	n,a,na
-cosmopolite	n,na
-cosmos	n
-cosponsor	n,v
-cossack	n
-cosset	v
-cost	n,vi,a,er
-Costa	d
-costar	n,v,ms
-Costello	n
-costume	n,v,a,er
-cosy	n,a
-cot	n,er,ms
-cotangent	n
-coterie	n
-cotillion	n
-cotoneaster	n
-cotta	n
-cottage	n,er
-cotton	n,v,nopref,y
-cottonmouth	n
-cottonseed	n
-cottontail	n
-cottonwood	n
-Cottrell	n
-couch	n,v
-couchant	a
-cougar	n
-cough	n,v,er
-could	d
-couldn't	d
-couloir	n
-coulomb	n
-Coulter	n
-council	n,man
-councillor	n
-counselor	n
-count	n,v,er,va
-countdown	n
-countenance	n,v,er
-counterfeit	n,v,a,er
-countermand	n,v
-countervail	v
-countess	n
-countinghouse	n
-countrify	ed
-country	n,na,man
-countryside	pc
-countrywide	d
-county	n
-countywide	d
-coup	n,v,va
-coupe	n,va
-couple	n,v,a,er,va
-couplet	n
-coupon	n
-courage	n,v,er,va
-courageous	a
-courier	n
-course	n,v,er
-court	n,v,a,er
-courteous	a
-courtesan	n
-courtesy	n
-courthouse	n
-courtier	n
-Courtney	n
-courtroom	n
-courtyard	n
-couscous	n
-cousin	n
-couture	n
-couturier	n
-covalent	a
-covariant	a
-covary	n
-cove	n,v
-coven	n
-covenant	n,v,er
-cover	n,v,er,va
-coverage	n
-coverall	n
-coverlet	n
-covert	n,a,nopref
-coverup	n
-covet	v,er,va
-covetous	a
-cow	n,v,er,man
-Cowan	n
-coward	n,a
-cowardice	n
-cowbell	n
-cowbird	n
-cowboy	n
-cowcatcher	n
-cowgirl	n
-cowhand	n
-cowherd	n
-cowhide	n,v
-cowl	n,v
-cowlick	n
-coworker	n
-cowpea	n
-cowpoke	n
-cowpony	n
-cowpox	n
-cowpunch	er
-cowrie	n
-cowry	n
-cowslip	n
-cox	n,v
-coxcomb	n
-coxswain	n
-coy	a,comp,nopref
-coyote	n
-coypu	n
-cozen	v,er
-cozy	n,a,comp
-CPA	n,nopref
-CPI	n,nopref
-CPR	pc,nopref
-crab	n,v,er,ms,y
-crabapple	n
-crabgrass	n
-crabmeat	n
-crack	n,v,a,er,va
-crackbrain	n,ed
-crackdown	n
-crackerjack	n,a
-crackle	n,v,er
-crackly	d
-crackpot	n,a
-crackup	n
-cradle	n,v
-craft	n,v,y
-crafts	man
-craftspeople	pc
-crag	n,ed,ms,y
-Craig	n
-cram	n,v,er,ms
-Cramer	n
-cramp	n,v,a
-crampon	n
-cranberry	n
-Crandall	n
-crane	n,v
-cranelike	d
-Cranford	pc
-crania	pc
-cranial	a
-cranium	n
-crank	n,v,y
-crankcase	n
-crankshaft	n
-cranny	n
-Cranston	n
-crap	n,v,er,ms,y
-crape	n
-crash	n,v,a,er,va
-crass	a,comp
-crate	v,er
-cravat	n
-crave	v,er
-craven	n,a
-craw	n,a
-crawdad	n
-crawfish	n,v
-Crawford	n
-crawl	n,v,er
-crawlspace	n
-crayfish	n
-crayon	n,v,na
-craze	n,v,y
-creak	n,v,y
-cream	n,v,er,y
-creamery	n
-crease	n,v,er,va,in
-create	v,ion
-creature	n,a
-creche	n
-credal	d
-credent	a
-credential	n,a
-credenza	n
-credible	a,va,in
-credit	n,v,va
-creditor	n
-credo	n
-credulity	n,in
-credulous	a,in
-creed	n
-creedal	a
-creek	n
-creekside	d
-creel	n
-creep	n,vi,er,y
-creepage	n
-cremate	v,ion
-crematorium	n
-crematory	n,a
-crenelate	v,ion
-crenellate	v,ion
-creole	n
-Creon	pc
-creosote	n,v
-crepe	n,a
-crepitate	v,er,ion
-crept	d
-crepuscular	a
-crescendo	n
-crescent	n,a,in
-cress	n
-Cressida	n
-crest	n,v
-crestfallen	a
-Crestview	pc
-Cretaceous	pc
-Cretan	pc
-Crete	pc
-cretin	n,na,nopref
-cretinous	a
-crevasse	n
-crevice	n
-crew	n,v,man
-crewcut	n
-crewel	n
-crib	n,v,er,ms
-cribbage	n
-crick	n,v
-cricket	n,v,er
-cried	d
-crime	n
-Crimea	pc
-criminal	n,a
-criminology	n,na
-crimp	n,v,er,y
-crimson	n,v,a
-cringe	n,v,er
-cringle	n
-crinkle	n,v
-crinkly	a,comp
-crinoid	n,a
-crinoline	n
-cripple	n,v,a,er
-crises	d
-crisis	pc
-crisp	n,v,a,comp,y
-Crispin	pc
-criss	d
-crisscross	n,v
-criteria	pc
-criterion	n
-critic	n,a,na
-critique	n,v
-critter	n
-croak	n,v,er,y
-Croatia	pc
-crochet	n,v,er
-crock	n,v
-crockery	n
-Crockett	n
-crocodile	n
-crocodilian	n,a
-crocus	n
-croft	n,er
-croissant	n
-Croix	pc
-Cromwell	n
-crone	n,y
-crook	n,v
-crookneck	n
-croon	n,v,er
-crop	n,v,er,ms
-cropland	n
-croquet	n,v
-croquette	n
-Crosby	n
-crosier	n
-cross	n,v,a,comp,ion,va
-crossarm	n,v
-crossbar	n
-crossbill	n
-crossbones	pc
-crossbow	n,man
-crossbred	n,a
-crossbreed	n,vi
-crosscurrent	n
-crosscut	n,v,a
-crosshatch	n,v
-crosslink	n,v
-crossover	n
-crosspatch	n
-crosspoint	n
-crossroad	n
-crossruff	n,v
-crosstalk	n
-crosstown	d
-crosstree	n
-crosswalk	n
-crossway	n
-crosswind	n
-crosswise	a
-crossword	n
-crotch	n,ed
-crotchet	n,y
-crouch	n,v
-croup	n,y
-crouton	n
-crow	n,v,nopref
-crowbar	n
-crowd	n,v
-Crowe	n
-crowfoot	n
-Crowley	n
-crown	n,v,er
-crozier	n
-CRT	pc,nopref
-crucial	a
-crucible	n
-crucifix	n
-crucifixion	n
-cruciform	n,a
-crucify	v
-crud	n,v,ms,y
-crude	n,a,comp
-cruel	a,comp
-cruelty	n
-cruet	n
-Cruickshank	n
-cruise	n,v,er
-cruller	n
-crumb	n,v,y
-crumble	n,v,a
-crummy	a,comp
-crump	n,v,er,a
-crumpet	n
-crumple	n,v,er
-crumply	d
-crunch	n,v,er,y
-crupper	n
-crusade	n,v,er
-crush	n,v,er
-Crusoe	pc
-crust	n,v,y
-crustacean	n,a
-crustal	a
-crutch	n,v
-crux	n
-Cruz	n
-cry	n,v,er
-cryogen	n
-cryogenic	n,a
-cryostat	n
-crypt	n
-cryptanalysis	pc
-cryptanalyst	n
-cryptanalytic	a
-cryptanalyze	v
-cryptic	a,na
-crypto	d
-cryptograph	n
-cryptography	n,er,na
-cryptology	n,na
-crystal	n,na,ms
-crystalline	a
-crystallite	n,na
-crystallography	n,er,na
-c's	d,nopref
-CSPAN	pc,nopref
-CT	pc,nopref
-cub	n,ms,y
-Cuba	pc
-cubbyhole	n
-cube	n,v,a,er,na
-cubic	n,a
-cubicle	n
-cubicly	d
-cubit	n
-cuboctahedron	n
-cuboid	a
-cuckold	n,v
-cuckoldry	pc
-cuckoo	n,v,a
-cucumber	n
-cud	n,ms,y
-cuddle	n,v,er
-cuddlesome	a
-cuddly	a,comp
-cue	n,v,er
-cuesta	n
-cuff	n,v
-cufflink	n
-cuirass	n,v
-cuisine	n
-Culbertson	n
-culex	n
-culinary	a
-cull	n,v,er,y
-cullet	n
-culm	n
-culminate	v,ion
-culotte	n
-culpa	n
-culpable	a,in
-culprit	n
-cult	n,na
-cultivable	a,va
-cultivar	n
-cultivate	v,ion,va
-cultural	a
-culture	n,v
-Culver	n
-culvert	n
-cumber	v
-Cumberland	pc
-cumbersome	a
-cumin	n
-cummerbund	n
-Cummings	n
-Cummins	n
-cumquat	n
-cumulate	v,a,ion
-cumulostratus	n
-cumulus	n
-Cunard	pc
-cuneiform	n,a
-cunnilingus	n
-cunning	n,a
-Cunningham	n
-CUNY	pc,nopref
-cup	n,v,er,na,ms,y
-cupboard	n
-cupcake	n
-Cupid	n
-cupidity	n
-cupola	n
-cupric	a
-cuprous	a
-cur	n,a,nopref
-curacy	n
-curare	n,na
-curate	n,v,ion
-curatorial	a
-curb	n,v
-curbside	d
-curbstone	n
-curd	n,y
-curdle	v
-cure	n,v,er,va,in
-curettage	n
-curette	n,v,er
-curfew	n
-curia	n
-curie	n
-curio	n
-curiosa	pc
-curiosity	n,in
-curious	a,in
-curium	n
-curl	n,v,er
-curlew	n
-curlicue	n,v
-curmudgeon	n,a
-Curran	n
-currant	n
-current	n,a,in
-curricula	pc
-curricular	a
-curriculum	n
-curry	n,v,er
-curse	n,v,er,nopref
-cursive	n,a
-cursor	n,y
-curt	a,comp
-curtail	v,er,va
-curtain	n,v
-Curtis	n
-curtsey	v
-curtsy	n,v
-curvaceous	a
-curvacious	a
-curvature	n,v,in
-curve	n,v,va,in,y
-curvilinear	a
-Cushing	n
-cushion	n,v,y
-Cushman	n
-cushy	a,comp
-cusp	n
-cuspidor	n
-cuss	n,v,er,nopref
-custard	n
-Custer	pc
-custodial	a
-custodian	n
-custody	n
-custom	n,er,na,va
-customary	a
-customhouse	n
-cut	n,vi,er,ms
-cutaneous	a
-cutaway	n,a
-cutback	n
-cute	n,a,comp
-cutesy	comp
-cuticle	n
-cutlass	n
-cutler	n
-cutlery	n
-cutlet	n
-cutoff	n,a
-cutout	n,a
-cutpurse	n
-cutthroat	n,a
-cuttlebone	n
-cuttlefish	n
-cutup	n
-cutworm	n
-cyan	d
-Cyanamid	pc
-cyanate	n
-cyanic	a
-cyanide	n,v
-cybernetic	a
-cybernetics	n
-cyberpunk	n
-cycad	n
-Cyclades	pc
-cyclamen	n
-cycle	n,v,er,va
-cyclic	a,na
-cyclist	n
-cycloid	n,a
-cyclone	n
-cyclopean	a
-cyclops	n
-cyclorama	n
-cyclotron	n
-cygnet	n
-Cygnus	pc
-cylinder	n,ed
-cylindric	a,na
-cymbal	n
-cynic	n,a,na
-Cynthia	pc
-cypress	n
-Cyprian	pc
-Cypriot	n
-Cyprus	pc
-Cyril	pc
-Cyrillic	a
-Cyrus	pc
-cyst	n
-cystic	a
-cytochemistry	n
-cytochrome	n
-cytogenetic	n,a,na
-cytology	n,na
-cytolysis	pc
-cytoplasm	n
-cytoplasmic	a,na
-cytoplast	n
-cytosine	n
-czar	n
-czarina	n
-czarism	n
-czarist	n,a
-Czech	n,a
-Czechoslovakia	pc
-Czechs	pc
-dab	n,v,er,ms
-dabble	v,er
-Dacca	pc
-dacha	n
-dachshund	n
-Dacron	pc
-dactyl	n
-dactylic	n,a
-dad	n
-dada	n,na
-Dadaism	pc
-Dadaist	pc
-daddy	n
-Dade	pc
-dado	n,v
-dadoes	d
-Daedalus	pc
-d'affaires	d
-daffodil	n
-daffy	a,comp
-daft	a,comp,nopref
-dageurreotype	n,er,na,y
-dagger	n
-daguerreotype	n,y
-Daguerrotype	n
-Dahl	pc
-dahlia	n
-Dahomey	pc
-Dailey	n
-daily	n,a
-Daimler	pc
-dainty	n,a,comp
-daiquiri	n
-dairy	n,v,man
-Dairylea	pc
-dairymaid	n
-dais	n
-daisy	n
-Dakar	pc
-Dakota	n
-dale	n
-Daley	n
-Dallas	pc
-dalliance	n
-dally	v,er
-dalmatian	n
-Dalton	n
-Daly	n
-Dalzell	n
-dam	n,v,er,ms
-damage	n,v
-Damascus	pc
-damask	n,a
-dame	n
-damn	n,v,va
-damnation	n
-Damocles	pc
-Damon	pc
-damp	n,v,a,comp
-dampen	v,er
-dampish	a
-damsel	n
-Dan	pc
-Dana	n
-Danbury	pc
-dance	n,v,er,va
-dandelion	n
-dander	n
-dandify	v
-dandle	v
-dandruff	n,y
-dandy	n,a,na
-Dane	n
-dang	d
-danger	n
-dangerous	a
-dangle	n,v,er
-Daniel	n,nopref
-Danielson	n
-Danish	n,a
-dank	a,comp
-Danny	pc
-danseuse	n
-Dante	pc
-Danube	pc
-Danubian	a
-Danzig	pc
-Daphne	pc
-dapper	a,nopref
-dapple	n,v
-Dar	pc
-dare	n,v,er,na
-daredevil	n,a
-Darius	pc
-Darjeeling	pc
-dark	n,a,comp,y
-darken	v,er
-darkish	a
-darkle	v
-darkroom	n
-Darlene	pc
-darling	n,a
-darn	n,ed,er
-Darrell	pc
-Darren	n
-Darryl	n
-d'art	n
-dart	n,v,er
-Dartmouth	pc
-Darwin	n,na
-Darwinian	n,a
-Daryl	pc
-dash	n,v,er,nopref
-dashboard	n
-dastard	n,a
-data	pc
-database	n
-date	n,v,a,er,ion,va
-dateline	n,v
-Datsun	n
-datum	n
-daub	n,v,er
-Daugherty	n
-daughter	n,a
-daunt	n,v
-dauphin	n
-dauphine	n
-Dave	pc
-davenport	n
-David	n
-Davidson	n
-Davies	n
-Davis	n
-Davison	n
-davit	n
-Davy	pc
-dawdle	v,er
-dawn	n,v
-Dawson	n
-day	n
-daybed	n
-daybreak	n
-daydream	n,v,er
-daylight	n,v
-daytime	n
-Dayton	pc
-Daytona	pc
-daze	n,v
-dazzle	n,v,er
-DC	pc,nopref
-DDT	pc,nopref
-de	d
-deacon	n
-deaconess	n
-deactivate	v,ion
-dead	n,a,nopref
-deadbeat	n,a
-deaden	v
-deadeye	n
-deadfall	n
-deadhead	n,v
-deadline	n
-deadlock	n,v
-deadpan	v
-deadweight	n
-deadwood	n
-deaf	a,comp
-deafen	v
-deal	n,vi,er,va
-deallocate	v,ion
-dealt	d
-dean	n
-Deane	pc
-deanery	n
-Deanna	pc
-dear	n,a,comp
-Dearborn	pc
-dearie	n
-dearth	n
-deasil	d
-death	n,a
-deathbed	n
-deathward	d
-deathwatch	n
-debacle	n
-debar	v,va,ms
-debark	v
-debarkation	n
-debase	v,er,va
-debate	n,v,er,va
-debauch	n,v,er
-debauchery	n
-Debbie	pc
-Debby	pc
-debenture	n
-debilitate	v,ion
-debility	n
-debit	n,v
-deblur	v,ms
-debonair	a
-Deborah	pc
-Debra	pc
-debrief	v
-debris	n
-debt	n,nopref
-debtor	n
-debug	v,er,ms
-debunk	v,er
-Debussy	pc
-debut	n
-debutant	n
-debutante	n
-Dec.	d,nopref
-decade	n
-decadent	n,a
-decaffeinate	v,ion
-decagon	n
-decagonal	a
-decal	n
-decalcify	v,ion
-decalogue	n
-decamp	v,va
-decant	v,er
-decapitate	v,ion
-decapod	n,a
-decarbonate	v,ion
-decathlon	n
-Decatur	pc
-decay	n,v
-Decca	pc
-decease	n,v
-decedent	n
-deceit	n,na
-deceive	v,er,va
-decelerate	v,ion
-December	n
-decennial	n,a
-decennium	n
-decent	a,comp
-deception	n,na,va
-decertify	v,ion
-decibel	n
-decide	v,er,va
-deciduous	a
-decile	n,a
-deciliter	n
-decimal	n,a,na
-decimate	v,ion
-decimeter	n
-decipher	v,er,va
-decision	n,na,va,in
-decisional	a
-deck	n,v,er
-Decker	pc
-deckhand	n
-deckhouse	n
-declaim	v,er
-declamation	n
-declamatory	a
-declaration	n,na,va
-declarator	n,y
-declare	v,er,va
-declassify	v,ion
-declaw	v
-declension	n,na
-declinable	a
-declinate	v,a,ion
-decline	n,v,er,va
-declivity	n
-decoct	v,ion
-decode	v,er
-decollate	v,ion
-decolletage	n
-decollimate	v,ion
-decolorize	v,er
-decommission	v
-decommit	v,va,ms
-decompile	v
-decompose	v,va
-decomposition	n
-decompress	v
-decompression	n
-decompressor	n
-decongestant	a
-deconstruct	v,ion
-decontaminate	v,ion
-decontrol	v,er,ms
-deconvolution	n
-deconvolve	v
-decor	n
-decorate	v,ion
-decorous	a,in
-decorticate	v,ion
-decorum	n,in
-decouple	v,er
-decoy	n,v
-decrease	n,v
-decree	n,v,er
-decrement	n,v,na
-decrepit	a
-decrepitude	n
-decrescendo	n
-decry	v,er
-decrypt	v,ion
-dedicate	v,a,ion
-dedifferentiate	ion
-deduce	v
-deducible	a
-deduct	v,ion
-deductible	a,va
-Dee	pc
-deed	n,v,er
-deem	v,er,va
-deep	n,a,comp
-deepen	v
-deer	n,nopref
-Deere	pc
-deerfly	n
-deerhound	n
-deerskin	n
-deerstalker	n
-deface	v,er,va
-defalcate	v,ion
-defamation	n
-defamatory	a
-defame	v,er
-defang	v
-default	n,v,er
-defeat	n,v,na,va
-defecate	v,ion
-defect	n,v,ion
-defend	v,er
-defendant	n
-defenestrate	ion
-defensible	a,va,in
-defensive	n,a
-defer	v,er,va,ms
-deferent	a
-deferential	a
-deferral	n
-defiant	a
-deficient	n,a
-deficit	n
-defile	n,v,er,va
-define	v,er,va
-definiendum	d
-definiens	d
-definite	a,in
-definition	n,na,va
-deflate	v,ion
-deflationary	a
-deflect	v,ion
-deflower	v
-defocus	v
-defog	v,er,ms
-defoliant	n
-defoliate	v,a,ion
-deforest	v,er
-deforestation	n
-deform	v,a
-deformation	n
-defraud	v,er
-defray	v,va
-defrayal	n
-defrock	v
-defrost	v,er
-deft	a,comp
-defunct	a
-defuse	v
-defy	n,v,er,va
-degas	v
-degauss	v
-degeneracy	n
-degenerate	n,v,a,ion
-degradation	n
-degrade	v,er,va
-degrease	v,er
-degree	n
-degum	v,ms
-dehiscent	a,in
-dehumidify	v,er,ion
-dehydrate	v,ion
-dehydrogenate	v,ion
-deice	v,er
-deify	v,ion
-deign	n,v,nopref
-deinstitute	v,ion
-Deirdre	pc
-deism	n,nopref
-deist	n,nopref
-deistic	a,nopref
-deity	n
-deja	d
-deject	v,a,ion
-Del	pc
-delaminate	v,ion
-Delaney	pc
-Delano	n
-Delaware	n
-delay	n,v,er
-Delbert	n
-Delco	n
-delectable	a,va
-delectate	ion
-delegable	a
-delegacy	n
-delegate	n,v,ion
-delete	v,va
-deleterious	a
-deletion	n
-delft	n
-Delgado	n
-Delhi	pc
-deli	n
-Delia	pc
-deliberate	v,a,ion
-delicacy	n,in
-delicate	n,a,nopref
-delicatessen	n
-delicious	a
-delicti	d
-delight	n,v,er,na
-delightsome	a
-Delilah	pc
-delimit	v,er
-delimitation	n,na,va
-delineament	n
-delineate	v,ion
-delinquent	n,a
-deliquesce	v
-deliquescent	a
-delirious	a
-delirium	n
-delist	v
-deliver	v,er,va
-deliverance	n
-delivery	n
-dell	n,nopref
-Della	pc
-Delmarva	pc
-Delores	n
-delouse	v
-Delphi	pc
-Delphic	pc
-delphinium	n
-Delphinus	pc
-delta	n,a
-deltoid	n,a
-delude	v,er
-deluge	n,v
-delusion	n,na,va
-delusory	a
-deluxe	a
-delve	n,v,er,nopref
-demagnify	v,ion,va
-demagogic	a
-demagogue	n
-demagoguery	n
-demagogy	n
-demand	n,v,er,va
-demarcate	v,ion
-demark	v
-demarkation	n
-deme	n,na
-demean	n,v
-demented	a
-dementia	n
-demerit	n
-demigod	n
-demijohn	n
-demimonde	n
-demiscible	a
-demise	n,v
-demission	n
-demit	v,ms
-demitasse	n
-demiurge	n
-demo	n,v
-democracy	n
-democrat	n,na
-democratic	a,na
-demodulate	v,ion
-demography	n,er,na
-demolish	v,er,va
-demolition	n,na
-demon	n,na
-demoniac	n,a
-demoniacal	a
-demonic	a,na
-demonology	n,na
-demonstrable	a,va
-demonstrate	v,ion
-demote	v
-demotion	n
-demount	n,v,er,va
-demountable	a
-Dempsey	n
-demultiplex	v
-demur	v,er,ms
-demure	a,comp
-demurral	n
-demystify	v,ion
-den	n,v,ms
-denaturalize	v,ion
-denature	v
-dendrite	n,na
-dendrochronology	n,na
-dendrology	n,na
-Deneb	pc
-Denebola	pc
-deniable	a
-denial	n
-denigrate	v,ion
-denim	n
-Denise	pc
-denitrify	v,ion
-denizen	n
-Denmark	pc
-Dennis	n
-Denny	pc
-denominate	v,ion
-denotation	n,na,va
-denote	v,va
-denouement	n
-denounce	v,er,va
-dense	a,comp
-densitometer	n,na
-dent	n,v,er,na,va,nopref
-dental	n,a
-dentate	ed,a,ion
-dentistry	n
-dentition	n
-Denton	n
-dentrifice	n
-denture	n,nopref
-denudation	n,na
-denude	v,er
-denumerable	a
-denunciation	n,na,va
-denunciatory	a
-Denver	pc
-deny	v,er
-deodorant	n,a
-deoxidize	v,ion
-deoxyribonucleic	a
-depart	v
-department	n,na
-departure	n
-depend	v,va
-dependent	n,a,in
-depict	v,ion
-depilate	v,ion
-depilatory	n
-deplane	v
-deplete	v,va
-depletion	n,na,va
-deplore	v,er,va
-deploy	v,er,va
-depopulate	v,ion
-deport	v,va
-deportation	n
-deportee	n
-depose	v,va
-deposit	n,v
-depositary	n
-deposition	n,na
-depositor	n,y
-depot	n
-deprave	v,er,va
-depravity	n
-deprecate	v,ion
-depreciable	a
-depreciate	v,ion
-depredate	v,ion
-depress	v
-depressant	n,a
-depressible	a
-depression	n,na,va
-depressor	n
-deprivation	n
-deprive	v,va
-Dept.	d,nopref
-depth	n
-deputation	n
-depute	v,na
-deputy	n
-deracinate	v,ion
-derail	v,va
-derange	v,va
-derate	v,er
-derby	n
-Derbyshire	pc
-dereference	n,v
-deregulate	v,ion
-Derek	pc
-derelict	n,a,ion
-deride	v,er
-derision	n,na,va
-derisory	a
-derivate	n,ion
-derive	v,er,va
-dermatitis	n
-dermatology	n,na
-derogate	v,ion
-derrick	n
-derriere	n
-dervish	n
-Des	pc
-desalinate	v,ion
-desalt	v,er
-descant	n,v
-Descartes	pc
-descend	v,er
-descendant	n,a
-descendent	n,a
-descent	n
-describe	v,er,va
-description	n,na,va
-descriptor	n
-descry	n,v
-Desdemona	n
-desecrate	v,er,ion
-desegregate	v,ion
-desert	n,v,a,comp,ion,va
-desertify	v,ion
-deserve	v,er
-desex	v,er
-deshabille	n
-desiccant	n
-desiccate	v,ion
-desiderata	pc
-desideratum	n
-design	n,v,er,va
-designate	v,a,ion
-designee	n
-desire	n,v,va
-desirous	a
-desist	v
-desk	n,man
-desktop	n
-Desmond	n
-desolate	v,a,er,ion
-desorption	n
-despair	n,v
-despatch	d
-desperado	pc
-desperadoes	d
-desperate	a,comp,ion
-despicable	a
-despise	v,er,va
-despite	n,v,na
-despoil	v,er,va
-despoliation	n,na
-despond	n,v
-despondent	a
-despot	n,na
-despotic	a,na
-dessert	n
-destinate	ion
-destine	v
-destiny	n
-destitute	a,ion
-destroy	v,er
-destruct	v,ion
-destructible	a,in
-desuetude	n
-desultory	a
-detach	v,va
-detail	n,v,er
-detain	v,er,va
-detainee	n
-d'etat	n
-detect	v,ion,va
-detent	n,ion
-detente	n
-deter	v,va,ms
-detergent	n,a
-deteriorate	v,ion
-determinacy	n,in
-determinant	n
-determinate	a,ion,in
-determine	n,v,er,na,va
-deterrent	n,a
-detest	v,er,va
-detestation	n
-dethrone	v,er,va
-detonable	a
-detonate	v,ion,va
-detour	n,v
-detoxify	v,ion
-detract	v,ion
-d'etre	d
-detriment	n,na
-detrital	a
-detritus	n
-Detroit	pc
-detune	v
-deuce	n,v
-deus	d
-deuterate	v
-deuterium	n
-deuteron	n
-Deuteronomy	pc,nopref
-devaluate	v,ion
-devalue	v
-devastate	v,ion
-develop	v,er,va
-deviant	n,a
-deviate	n,v,a,ion
-device	n
-devilish	a,comp
-devilry	n
-deviltry	n
-devious	a
-devise	n,v,er,va
-devisee	n
-devitrify	v
-devoid	a
-devolution	n,na
-devolve	v
-Devon	pc
-Devonshire	pc
-devote	v,ion,va
-devotee	n
-devotion	n,na
-devour	v,er
-devout	a,comp
-dew	n,v,nopref,y
-dewar	n
-dewdrop	n
-Dewey	n
-Dewitt	pc
-dewlap	n
-dexter	a
-dexterity	n
-dextral	a
-dextro	a
-dextrorotation	n
-dextrorotatory	a
-dextrose	n
-dextrous	a
-dey	n,nopref
-Dhabi	pc
-dharma	n
-dhow	n
-diabase	n
-diabetes	n
-diabetic	n,a
-diabolic	a,na
-diabolism	n
-diabolist	n
-diachronic	a,na
-diacritical	n,a
-diadem	n
-diagnose	v,va
-diagnosis	pc
-diagnostic	n,a,na
-diagnostician	n
-diagonal	n,a
-diagram	n,v
-diagrammatic	a,na
-dial	n,v,er
-dialect	n
-dialectic	n,a,na
-dialectician	n
-dialog	n
-dialogue	n,v
-dialyses	d
-dialysis	pc
-dialytic	a
-diamagnetic	a
-diamagnetism	n
-diamegnetism	n
-diameter	n,na
-diametral	a
-diamine	n
-diamond	n,v
-diamondback	n,ed,a
-Diana	pc
-Diane	pc
-diapason	n
-diaper	n,v
-diaphanous	a
-diaphoresis	pc
-diaphragm	n
-diarist	n
-diary	n
-diaspora	n
-diastolic	a
-diathermic	a
-diathermy	n
-diatom	n
-diatomaceous	a
-diatomic	a
-diatonic	a,na
-diatribe	n
-Diaz	n
-diazo	a
-dib	v,er
-dibasic	a
-dibble	n,v
-dibs	n
-dice	n,v,er,nopref
-dichloride	n
-dichotomous	a
-dichotomy	n
-dick	n,er
-dickcissel	n
-dickens	n
-Dickensian	a
-Dickerson	n
-dickey	n
-Dickinson	n
-Dickson	n
-dicky	n
-dicot	n
-dicotyledon	n
-dicta	pc
-dictate	n,v,ion
-dictatorial	a
-diction	n,na
-dictionary	n
-dictum	n
-did	d
-didactic	n,a,na
-diddle	v,er
-diddly	d
-didn't	d
-Dido	pc
-didst	d
-die	n,ed
-Diebold	n
-Diego	pc
-diehard	n
-dieldrin	n
-dielectric	n,a
-diem	d
-diesel	n,na
-diet	n,v,er,nopref
-dietary	n,a
-dietetic	n,a,na
-diethylstilbestrol	n
-dietician	n
-dietitian	n
-Dietrich	n
-Dietz	pc
-differ	v
-different	a,in
-differentiable	a,va
-differential	n,a
-differentiate	v,ion
-difficult	a
-difficulty	n
-diffident	a
-diffract	v,ion
-diffractometer	n
-diffuse	v,a,er
-diffusible	a
-diffusion	n,na,va
-difluoride	n
-dig	n,vi,er,ms
-digest	n,v,er
-digestible	a,va
-digestion	n,na,va,in
-digit	n,na
-digital	a,na
-digitalis	n
-digitate	a,ion
-dignify	v
-dignitary	n,a
-dignity	n,in
-digram	n
-digraph	n
-digress	v
-digression	n,na,va
-dihedral	n,a
-dike	n,v,er
-dilapidate	v,ion
-dilatant	a
-dilatation	n,na
-dilate	v,ion,va
-dilemma	n
-dilettante	n,a
-dilettantish	a
-dilettantism	n
-diligent	a
-dill	n
-Dillon	pc
-dilly	n
-dilogarithm	n
-diluent	n,a
-dilute	v,a,er,ion
-dim	n,v,a,comp,ms
-dime	n,a,er
-dimension	n,v,na
-dimeric	a
-dimethyl	n
-diminish	v,va
-diminuendo	n
-diminution	n,na,va
-dimple	n,v
-dimply	a
-dimwit	n,ed,ms
-din	n,v,er,nopref,ms
-Dinah	pc
-dinar	n
-dine	n,v,er
-dinette	n
-ding	v,y
-dingbat	n
-dingdong	n,v,a
-dinghy	n
-dingo	pc
-dingoes	d
-dinky	a
-dinnertime	n
-dinnerware	n
-dinosaur	n
-dinosaurian	d
-dint	n,v
-diocesan	n,a
-diocese	n
-diode	n
-Dionysiac	a
-Dionysian	a
-Dionysus	pc
-Diophantine	pc
-diorama	n
-dioxide	n
-dioxin	n
-dip	n,v,er,ms,y
-diphenyl	n
-diphtheria	n
-diphthong	n,na
-diploid	n,a
-diploidy	n
-diploma	n
-diplomacy	n
-diplomat	n,na
-diplomatic	a,na
-dipole	n
-dipsomania	n,na
-dipstick	n
-diptych	n
-Dirac	pc
-dire	a,comp,na
-direct	v,a,ion,va
-directorate	n
-directorial	a
-directory	n,a
-directrices	d
-directrix	pc
-dirge	n
-Dirichlet	pc
-dirigible	n,a
-dirk	n,v
-dirt	n
-dirty	v,a,comp
-Dis	pc
-disambiguate	v,ion
-disastrous	a
-disburse	v,er,va
-disc	n,na
-discern	v,er,va
-discernible	a,in
-disciple	n
-disciplinarian	n,a
-disciplinary	a
-discipline	n,v,er,va
-disco	n,v
-discography	n,er
-discoid	a
-discombobulate	v
-discomfit	n,v
-discomfiture	n
-discommode	v
-disconsolate	a
-discordant	a
-discotheque	n,er
-discovery	n
-discreet	a,in
-discrepant	a
-discrete	a
-discretion	n,in
-discretionary	a
-discriminable	a
-discriminant	n
-discriminate	v,a,ion,in
-discus	n
-discuss	v,er,va
-discussant	n
-discussion	n
-disdain	n,v,na
-disgruntle	v,va
-dish	n,v,nopref
-dishcloth	n
-dishes	d
-dishrag	n
-dishwasher	n
-dishwater	n
-disinfectant	n
-disjunct	n,a
-disk	n,v,na
-dismal	a,comp
-dismay	v
-dismissal	n
-Disney	pc
-Disneyland	pc
-disparage	v,er,va
-disparate	a
-disparity	n
-dispel	v,va,ms
-dispensary	n
-dispensate	ion
-dispense	v,er,va
-dispersal	n
-dispersant	n
-disperse	v,er
-dispersible	a
-dispersion	n,na,va
-dispirit	v
-disposal	n
-disputant	n
-disputation	n
-disputatious	a
-dispute	n,v,er,va
-disquietude	n
-disquisition	n
-disrupt	v,er,ion
-dissemble	v,er
-disseminate	v,ion
-dissension	n
-dissertation	n
-dissident	n,a
-dissipate	v,er,ion
-dissociable	a,va
-dissociate	v,ion
-dissonant	a
-dissuade	v,er,va
-dissuasion	n,na,va
-distaff	n,a
-distal	a
-distant	a
-distensible	a
-distention	n
-distillate	n,ion
-distillery	n
-distinct	a,comp,ion
-distinguish	v,va
-distort	v
-distortion	n,na
-distraught	a
-distribution	n,na,va
-distributor	n
-district	n,v
-disturb	v,er,va
-disturbance	n
-disulfide	n
-disyllabic	a
-disyllable	n
-ditch	n,v,er
-dither	n,v,y
-ditto	n,v
-ditty	n
-Ditzel	pc
-diuretic	n,a,na
-diurnal	n,a
-diva	n
-divalent	a
-divan	n
-dive	n,v,er
-diverge	v
-divergent	a
-diverse	a
-diversify	v,ion
-diversion	n,na
-diversionary	a
-divert	v
-diverticulitis	d
-diverticulosis	pc
-divertimento	n
-divertissement	n
-divest	v
-divestiture	n
-divide	n,v,er,va
-dividend	n
-divination	n
-divine	n,v,a,er,va
-divisible	a,va,in
-division	n,na,va
-divisional	a
-divisor	n
-divorce	n,v,va
-divorcee	n
-divot	n
-divulge	v
-divulgence	n
-divvy	v
-Dixie	n
-Dixieland	pc
-Dixon	n
-dizzy	v,a,comp
-DJ	pc,nopref
-Djakarta	pc
-djinn	n
-djinni	n
-Dmitry	pc
-DNA	pc,nopref
-Dnieper	pc
-do	n,vi
-DOA	d,nopref
-doable	a
-dobbin	n
-Dobbs	n
-dobson	n
-Doc	pc
-docile	a,in
-dock	n,v,er
-docket	n,v
-dockhand	n
-dockside	d
-dockyard	n
-doctor	n,v
-doctoral	a
-doctorate	n
-doctrinaire	n,a,na
-doctrinal	a
-doctrine	n
-document	n,v,er,na,va
-documentary	n,a
-documentation	n
-DOD	pc,nopref
-Dodd	n
-dodder	n,v,er,y
-dodecahedra	n
-dodecahedral	a
-dodecahedron	n
-dodge	n,v,er,y
-dodo	pc
-dodoes	d
-Dodson	n
-doe	n,er
-doesn't	d
-doeth	d
-d'oeuvre	n
-doff	v
-dog	n,v,na,ms,y
-dogcart	n
-dogcatcher	n
-doge	n,nopref
-dogface	n
-dogfight	n,vi,er
-dogfish	n
-doggerel	n,a
-doggone	n,v
-doghouse	n
-dogleg	n,a
-dogma	n
-dogmatic	n,a,na
-dogmatism	n
-dogmatist	n
-dogtooth	n
-dogtrot	n,v
-dogwood	n
-Doherty	n
-doily	n
-Dolan	n
-dolce	d
-doldrums	n
-dole	n,v,na
-dolichocephalic	a
-doll	n,nopref
-dollar	n
-dollop	n
-dolly	n,v
-dolomite	n,na
-dolor	n
-Dolores	pc
-dolorous	a
-dolphin	n
-dolt	n
-doltish	a
-domain	n
-dome	n,v
-Domenico	pc
-Domesday	pc
-domestic	n,a,na
-domesticate	v,ion
-domicile	n,v
-domiciliary	a
-dominant	n,a
-dominate	v,ion
-domineer	v
-Domingo	pc
-Dominic	pc
-dominical	a
-Dominican	n,a
-Dominick	pc
-dominion	n
-Dominique	pc
-domino	pc
-dominoes	d
-don	n,v,ms
-Donahue	n
-Donald	pc
-Donaldson	n
-donate	v,a,ion,va
-done	a
-Doneck	n
-donkey	n
-Donna	pc
-Donnelly	n
-Donner	pc
-Donnie	n
-donnish	a
-donnybrook	n
-donor	n
-Donovan	n
-don't	n
-doodad	n
-doodle	n,v,er
-Dooley	n
-Doolittle	n
-doom	n,v
-doomsday	n
-door	n,man
-doorbell	n
-doorknob	n
-doormat	n
-doorstep	n
-doorway	n
-dooryard	n
-dopant	n
-dope	n,v,er
-dopester	n
-dopey	a,comp
-dopier	d
-dopiest	d
-Doppler	pc
-Dora	pc
-Dorado	pc
-Dorcas	n
-Dorchester	pc
-Doreen	pc
-Doria	pc
-Doric	n
-Doris	pc
-dorm	n,er,y
-dormant	a
-dormitory	n
-Dorothea	pc
-Dorothy	pc
-dorsal	n,a
-Dorset	pc
-Dorsey	pc
-dory	n
-dosage	n
-dose	n,v
-dosimeter	n,na
-dossier	n
-Dostoevsky	pc
-dot	n,v,er,ms,y
-dotage	n
-dotard	n
-dote	v,er
-doth	d
-Dottie	pc
-double	n,v,a,er
-Doubleday	n
-doubleheader	n
-doublet	n
-doubleton	n
-doubloon	n
-doubt	n,v,er,na,va
-douce	a
-douche	n,v
-Doug	pc
-dough	n,y
-doughboy	n
-Dougherty	n
-doughnut	n
-doughty	a
-Douglas	n
-Douglass	n
-dour	a,comp
-douse	n,v,er
-dove	n,er
-dovecote	n
-dovekie	n
-dovetail	n,v
-dovish	a
-Dow	pc
-dowager	n
-dowdy	n,a,comp
-dower	n,v
-dowitcher	n
-Dowling	n
-down	n,v,er,y,nopref
-downbeat	n,a
-downcast	a
-downdraft	n
-Downey	n
-downfall	n
-downfallen	a
-downgrade	n,v
-downhaul	n
-downhearted	a
-downhill	n,a
-Downing	pc
-downplay	v
-downpour	n
-downrange	d
-downright	a
-downriver	d
-downside	d
-downsize	v
-downslope	d
-downspout	n
-downstage	n
-downstairs	n,a
-downstate	er
-downstream	d
-downstroke	n
-downswing	n
-downtime	n
-downtown	n,a
-downtrend	n
-downtrodden	a
-downturn	n
-downward	n,a
-downwind	d
-dowry	n
-dowse	v,er
-doxology	n
-doxy	n
-doyenne	n
-Doyle	n
-doze	n,v,er
-dozen	n
-dozenth	a
-drab	n,v,a,comp,ms
-drably	d,nopref
-drachma	n
-Draco	pc
-draconian	a
-draft	n,v,er,in,y
-draftee	n
-drag	n,v,er,ms,y
-draggle	v
-draggly	d
-dragline	n
-dragnet	n
-dragon	n,nopref
-dragonfly	n
-dragonhead	n
-dragoon	n,v
-drain	n,v,er
-drainage	n
-drainpipe	n
-drake	n
-dram	n
-drama	n
-dramatic	n,a,na
-dramatist	n
-dramaturgic	a,na
-dramaturgy	n
-drank	d
-drape	n,v,er
-drapery	n
-drastic	a,na
-draw	n,vi,er
-drawback	n
-drawbar	n
-drawbridge	n
-drawknife	n
-drawl	n,v,er
-drawn	d
-drawstring	n
-dray	n,v,man
-dread	n,v,a,na
-dreadnought	n
-dream	n,v,er,na,y
-dreamboat	n
-dreamland	n
-dreamlike	a
-dreamt	d
-dreamworld	n
-drear	d
-dreary	a,comp
-dredge	n,v,er
-dreg	n
-drench	n,v,er
-dress	n,v,er,y
-dressage	n
-drew	d
-Drexel	pc
-Dreyfuss	n
-drib	n,nopref
-dribble	n,v,er
-driblet	n
-dried	d
-drier	n
-drift	n,v,er,y
-driftwood	n
-drill	n,v,er
-drillmaster	n
-drink	n,vi,er,va
-drip	n,v,er,ms,y
-Driscoll	n
-drive	n,vi,er,va
-driven	d
-driveway	n
-drizzle	n,v,er
-drizzly	a,comp
-drogue	n
-droll	n,v,a,comp
-drollery	n
-drolly	d
-dromedary	n
-drone	n,v,er
-drool	n,v,er
-droop	n,v,er,y
-drop	n,v,er,nopref,ms
-drophead	n
-dropkick	n,er
-droplet	n
-dropout	n
-dropsy	n
-drosophila	n
-dross	n
-drought	n
-drove	n,er
-drown	v,er,va
-drowse	n,v,y
-drub	v,er,ms
-drudge	n,v,er
-drudgery	n
-drug	n,v,ms
-druggist	n
-drugstore	n
-druid	n,na
-druidic	a,na
-drum	n,v,er,ms
-drumbeat	n,vi
-drumhead	n
-drumlin	n
-Drummond	n
-drumstick	n
-drunk	n,a,comp
-drunkard	n
-drunken	a
-drunkometer	n
-Drury	pc
-dry	n,v,a,comp
-dryad	n
-Dryden	n
-drypoint	n
-drywall	n
-d's	d,nopref
-dual	n,a,na
-dualism	n
-Duane	pc
-dub	n,v,er,ms
-Dubhe	pc
-dubiety	n
-dubious	a
-dubitable	a,in
-Dublin	pc
-Dubliner	n
-ducal	a
-ducat	n
-duce	n
-duchess	n
-duchy	n
-duck	n,v,er,y
-duckbill	n
-duckling	n
-duckpin	n
-duckweed	n
-duct	n,v,ion,in
-ductile	a,in
-ductwork	n
-dud	n,a,nopref
-dude	n
-dudgeon	n
-Dudley	n
-due	n
-duel	n,v,er,na
-dueness	n
-duenna	n
-duet	n,v,ms
-duff	n,er
-duffel	n
-duffle	n
-Duffy	n
-dug	n
-Dugan	n
-dugong	n
-dugout	n
-duke	n
-dukedom	n
-dulcet	n,a
-dulcimer	n
-dull	v,a,comp
-dullard	n
-dullish	a
-dully	d,nopref
-dulse	n
-Duluth	pc
-duly	d
-Duma	pc
-dumb	v,a,comp
-dumbbell	n
-dumbfound	v,va
-dumbly	d
-dumbstruck	a
-dumbwaiter	n
-dumdum	n
-dumfound	er
-dummy	n,a
-dump	n,v,er,y
-dumpish	a
-dumpling	n
-dumpster	n
-Dumpty	pc
-dun	n,v,a,ms
-Dunbar	pc
-Duncan	n
-dunce	n
-dunderhead	n,ed
-dune	n
-Dunedin	pc
-dung	n,v,y
-dungaree	n
-dungeon	n
-dunghill	n
-Dunham	n
-dunk	v,er
-Dunkirk	pc
-Dunlap	n
-Dunlop	n
-Dunn	n
-dunnage	n
-duo	n
-duodecimal	n,a
-duodenal	a
-duodenum	n
-duopolist	n
-duopoly	n
-dupe	n,v,er
-duple	a
-duplex	n,a
-duplicable	a
-duplicate	n,v,a,ion,in
-duplicity	n
-DuPont	n
-durable	n,a,va
-Durango	pc
-duration	n,na,in
-Durer	pc
-duress	n
-Durham	pc
-during	a
-Durkee	pc
-Durkin	n
-Durrell	n
-Durward	n
-Dusenberg	pc
-Dusenbury	n
-dusk	n,v,y
-Dusseldorf	pc
-dust	n,v,er,na,man,y
-dustbin	n
-dustpan	n
-dustup	n
-Dutch	na,man
-dutiable	a
-Dutton	n
-duty	n,na
-Dvorak	pc
-dwarf	n,v,a
-dwarfish	a
-dwarves	d
-Dwayne	n
-dwell	n,v,er,in
-dwelt	d
-Dwight	n
-dwindle	v
-Dwyer	n
-dyad	n
-dyadic	a
-dye	n,v
-dyeing	d
-dyer	n
-dyestuff	n
-dying	d
-Dyke	n
-Dylan	n
-dynamic	n,a,na
-dynamism	n
-dynamite	n,v,er,na
-dynamo	n
-dynamometer	n,na
-dynast	n
-dynastic	a,na
-dynasty	n
-dyne	n
-Dynel	pc
-dysentery	n
-dysfunction	n,na
-dysgenic	a
-dyslexia	n
-dyslexic	n,a
-dyspepsia	n
-dyspeptic	n,a,na
-dysplasia	n
-dysprosium	n
-dystrophy	n
-each	a,nopref
-Eagan	n
-eager	a
-eagle	n
-eaglet	n
-ear	n,v,na,nopref
-earache	n
-eardrum	n
-earl	n,nopref
-earlobe	n
-early	a,comp
-earmark	n,v
-earmuff	n
-earn	v,er
-earnest	n,a
-earphone	n
-earring	n
-earshot	n
-earth	n,v,a,y
-earthbound	a
-earthen	a
-earthenware	n
-earthling	n
-earthmen	pc
-earthmove	n
-earthquake	n
-earthshaking	a
-earthshine	n
-earthwork	n
-earthworm	n
-earwig	n,v,ms
-ease	n,v,na,va,y
-easel	n
-east	n,vi,er
-eastbound	a
-eastern	a,er
-easternmost	d
-Eastland	n
-Eastman	n
-eastmost	d
-eastward	n
-Eastwood	n
-easygoing	a
-eat	n,vi,er,va
-eaten	d
-eatery	n
-Eaton	n
-eave	n,nopref
-eavesdrop	v,er,ms
-ebb	n,v
-Eben	pc
-ebony	n,a
-ebullient	a
-ebullition	n
-EC	pc,nopref
-eccentric	n,a,na
-Eccles	n
-Ecclesiastes	pc,nopref
-ecclesiastic	n,a,na
-ecdysiast	n
-ecdysis	d
-echelon	n,v
-echidna	n
-echinoderm	n
-echo	n,v
-echoes	d
-eclair	n
-eclat	d
-eclectic	n,a,na
-eclipse	n,v
-ecliptic	n,a
-eclogue	n
-Ecole	pc
-ecology	n,na
-econometric	n,a
-Econometrica	pc
-economics	d
-economist	n
-economy	n,na
-ecosystem	n
-ecstasy	n
-ecstatic	a,na
-ectomorph	n,na
-ectomorphic	a
-ectoplasm	n
-ectothermic	a
-ecu	n
-Ecuador	pc
-ecumenic	a
-ecumenist	n
-eczema	n
-Ed	pc,nopref
-Eddie	pc
-eddy	n,v,nopref
-edelweiss	n
-edematous	a
-Eden	n
-edentate	n,a
-Edgar	pc
-edge	n,v,er,y
-Edgerton	n
-edgeways	d
-edgewise	d
-edging	n
-edible	n,a,in
-edict	n,nopref
-edifice	n
-edify	v,ion
-Edinburgh	pc
-Edison	n
-edit	v,va
-Edith	pc
-edition	n
-editor	n
-editorial	n,a,na
-Edmonds	n
-Edmondson	n
-Edmonton	pc
-Edmund	pc
-Edna	pc
-EDT	pc,nopref
-educable	a
-educate	v,ion,va
-educe	n,v,nopref
-educible	a
-Edward	n
-Edwardian	n,a
-Edwards	n
-Edwin	n
-Edwina	pc
-EEG	n,nopref
-eel	n,na,nopref
-eelgrass	n
-EEOC	pc,nopref
-e'er	d
-eerie	a,comp
-eerily	d
-eeriness	n
-efface	v,er,va
-effaceable	a,in
-effect	n,v,er,ion
-effectual	a,in
-effectuate	v,ion
-effeminacy	n
-effeminate	a
-effendi	n
-efferent	n,a
-effervesce	v
-effervescent	a
-effete	a
-efficacious	a,in
-efficacity	n
-efficacy	n,in
-efficient	a,in
-Effie	pc
-effigy	n
-effloresce	v
-efflorescent	a
-effluent	n,a
-effluvia	pc
-effluvium	n
-efflux	n
-effort	n
-effrontery	n
-effulgent	a
-effuse	v
-effusion	n,na,va
-eft	n,nopref
-EFTA	pc,nopref
-e.g.	d,nopref
-egad	n
-egalitarian	n,a,na
-Egan	n
-egg	n,v,er
-egghead	n
-eggnog	n
-eggplant	n
-eggshell	n,a
-ego	n,na
-egocentric	n,a
-egomania	n,na
-egotism	n
-egotist	n,na
-egregious	a
-egress	n,v,nopref
-egret	n,nopref
-Egypt	pc
-Egyptian	n,a
-Egyptology	n,na
-eh	d
-Ehrlich	n
-eider	n
-eiderdown	n
-eidetic	a,na
-Eiffel	pc,nopref
-eigenfunction	n
-eigenstate	n
-eigenvalue	n
-eigenvector	n,v
-eight	n,nopref
-eighteen	n
-eighteenth	n,a
-eightfold	n
-eighth	n
-eightieth	n,a
-eighty	n
-Eileen	pc
-Einstein	n
-Einsteinian	a
-einsteinium	n
-Eire	pc
-Eisenhower	n
-Eisner	n
-either	a
-ejaculate	n,v,ion
-eject	v,ion,va
-ejecta	n
-eke	v
-Ekstrom	n
-Ektachrome	pc
-elaborate	v,a,ion
-Elaine	pc
-elan	pc
-elapse	n,v,nopref
-elastic	n,a,na
-elastomer	n
-elastomeric	a
-elate	v,er,ion
-Elba	pc
-Elbert	n
-elbow	n,v
-elder	n,a
-elderberry	n
-eldest	a
-Eldon	pc
-Eleanor	pc
-Eleazar	pc
-elect	n,v,a,ion,va
-electioneer	v,er
-electoral	a
-electorate	n
-Electra	n
-electress	n
-electret	n
-electric	n,a,na
-electrician	n
-electrify	v,ion
-electro	n,nopref
-electrocute	v,ion
-electrode	n
-electrography	n
-electrolysis	pc
-electrolyte	n
-electrolytic	a,na
-electrolyze	v
-electron	n
-electronic	n,a
-electrophoresis	pc
-electrophorus	n
-electrum	n
-eleemosynary	a
-elegant	a,in
-elegiac	n,a
-elegy	n
-element	n,na
-elementary	a
-Elena	pc
-elephant	n
-elephantiasis	pc
-elephantine	a
-elevate	v,a,ion
-eleven	n
-eleventh	n
-elf	pc
-elfin	a
-elfish	a,nopref
-Elgin	n
-Eli	n
-Elias	n
-elicit	v
-elide	v
-eligible	n,a,va,in
-Elijah	pc
-eliminate	v,ion
-Elinor	pc
-Eliot	n
-Elisabeth	pc
-Elisha	pc
-elision	n
-elite	n,a,comp,na
-elixir	n
-Elizabeth	pc
-Elizabethan	n,a
-elk	n
-Elkhart	pc
-elkhound	n
-Ella	pc
-Ellen	pc
-Elliott	n
-ellipse	n
-ellipsis	pc
-ellipsoid	n,a
-ellipsometer	n
-elliptic	a,na
-Ellis	n
-Ellison	n
-Ellsworth	n
-Ellwood	pc
-elm	n
-Elmer	pc
-Elmhurst	pc
-Elmira	pc
-Elmsford	pc
-elocution	n,na
-elocutionary	a
-Eloise	pc
-elongate	v,a,ion
-elope	v,er,va
-eloquent	a,in
-Elsa	pc
-else	pc
-Elsevier	pc
-elsewhere	d
-Elsie	pc
-Elsinore	pc
-Elton	n
-eluate	v
-elucidate	v,ion
-elude	n,v,nopref
-elusive	a,nopref
-elute	v,ion
-elver	n
-elves	d
-Elvis	n
-elvish	a
-Ely	pc
-Elysee	pc
-elysian	a
-em	n,er,nopref,ms
-emaciate	v,ion
-emanate	v,ion
-emancipate	v,ion
-Emanuel	n
-emasculate	v,a,ion
-embalm	v,er,va
-embank	v,va
-embarcadero	pc
-embargo	n,v
-embargoes	d
-embark	v,va
-embarkation	n
-embarrass	v,va
-embassy	n
-embattle	v,va
-embayment	n
-embed	v,er,va,ms
-embellish	v,va
-ember	n,nopref
-embezzle	v,er,va
-embitter	v,va
-emblazon	v,er,va
-emblem	n,v,na
-emblematic	a,na
-embodiment	n
-embody	v,er
-embolden	v
-embolism	n
-emboss	v,er,va
-embouchure	n
-embrace	n,v,er,va
-embraceable	a
-embrasure	n
-embrittle	v,va
-embrocate	v,ion
-embroider	v,er
-embroidery	n
-embroil	v,va
-embryo	n
-embryology	n,na
-embryonic	a,na
-emcee	n,v
-emend	v
-emendable	a
-emendation	n
-emerald	n,a
-emerge	v
-emergent	n,a
-emeritus	n,a
-emersed	a
-emersion	n
-Emerson	n
-emery	n
-emetic	n,a,na
-emigrant	n,a
-emigrate	v,ion
-emigre	n
-Emil	pc
-Emile	pc
-Emilio	pc
-Emily	pc
-eminent	a
-emir	n
-emirate	n
-emissary	n
-emission	n,na,va
-emissivity	n
-emit	v,er,nopref,ms
-emittance	n,nopref
-Emma	pc
-Emmanuel	pc
-Emmett	pc
-emollient	n
-emolument	n
-Emory	n
-emote	n,v,nopref
-emotion	n,va
-emotional	a,na
-empathetic	a
-empathic	a
-empathy	n
-emperor	n
-emphases	d
-emphasis	pc
-emphatic	a,na
-emphysema	n
-emphysematous	a
-empire	n
-empiric	n,a,na
-emplace	v,va
-emplane	v
-employ	n,va
-employed	d
-employee	n
-employer	n
-employing	d
-emporia	pc
-emporium	n
-empower	v,va
-empress	n
-emptor	d
-empty	n,v,a,comp
-emu	n
-emulate	v,a,ion
-emulsify	v,er,ion,va
-emulsion	n,na,va
-en	n,nopref
-enable	v,a,comp,va
-enact	v,ion,va
-enamel	n,v
-enamelware	n
-enantiomorph	n,na
-enantiomorphic	a
-encage	v
-encamp	v,va
-encapsulate	v,ion
-encase	v,va
-encaustic	a,na
-encephalic	a,na
-encephalitis	n
-encephalograph	n
-encephalography	n,na
-enchain	v,va
-enchant	v,er,va
-enchantress	n
-enchilada	n
-encipher	v,er,va
-encircle	v,er,va
-enclave	n
-enclose	v,a,comp
-enclosure	n
-encode	v,er
-encomia	pc
-encomium	n
-encompass	v,a,va
-encore	n
-encounter	v,er
-encourage	v,er,va
-encroach	v,va
-encrust	v
-encrypt	v,ion
-encumber	v,va
-encumbrance	n,er
-encyclical	n
-encyst	v,va
-end	n,v,er,nopref
-endanger	v,va
-endear	v,va
-endearment	n
-endemic	n,a,na
-endemism	n
-endgame	n
-Endicott	n
-endive	n
-endmost	a
-endocrine	n,a
-endogamous	a
-endogamy	n
-endogenous	a
-endomorph	n,na
-endomorphic	a
-endoplasm	n
-endorse	v,er,va
-endorsee	n
-endoskeleton	n
-endosperm	n
-endothelial	a
-endothermal	a
-endothermic	a
-endow	v,va
-endpaper	n
-endpoint	n
-endue	v
-endurance	n
-endure	v,va
-endways	d
-endwise	d
-ENE	d,nopref
-enema	n
-enemy	n
-energetic	n,a
-energy	n
-enervate	v,a,ion
-enfant	n
-enfeeble	v,va
-Enfield	pc
-enfilade	n,v
-enfold	v
-enforce	v,er,va
-enforceable	a,va
-enfranchise	v,er,va
-Eng.	d,nopref
-engage	v,va
-Engel	n
-engender	v
-engine	n,v
-engineer	n,v
-engirdle	v,er
-England	pc
-Englander	n
-Engle	pc
-Englewood	pc
-English	n,v,er,man
-engorge	v,er,va
-engram	n
-engrave	v,er
-engross	v,va
-engulf	v,va
-enhance	v,er,va
-enharmonic	a
-Enid	pc
-enigma	n
-enigmatic	a,na
-enjoin	v,er,va
-enjoinder	n
-enjoy	v,va
-enlarge	v,va
-enlargeable	a
-enlighten	v,er,va
-enlist	v,er,va
-enlistee	n
-enliven	v
-enmesh	v
-enmity	n
-ennoble	v,va,er
-ennui	n
-Enoch	pc
-enormity	n
-enormous	a
-Enos	pc
-enough	d
-enounce	v
-enplane	v
-enquire	v
-Enquirer	pc
-enquiry	n
-enrage	v
-enrapt	a
-enrapture	v,va
-enrich	v,er,va
-Enrico	pc
-enrobe	v
-enroll	v,er,va
-enrollee	n
-ensconce	v
-ensemble	n
-enshrine	v,va
-enshroud	v
-ensign	n
-ensilage	n
-enslave	v,er,va
-ensnare	v,er
-ensoul	ed
-ensue	v
-ensuite	d
-ensure	v,er
-entablature	n
-entail	v,er,va
-entangle	v,er,va
-entendre	d
-entente	n
-enter	v,va
-enteric	a
-enterprise	n,vi,er
-entertain	v,er,va
-enthalpy	n
-enthrall	v,va
-enthrone	v,er,va
-enthuse	v
-enthusiasm	n
-enthusiast	n
-enthusiastic	a,na
-entice	v,va
-entire	a
-entirety	n
-entitle	v,va
-entity	n
-entomb	v,va
-entomology	n,na
-entourage	n
-entrails	d
-entrain	v,er,va
-entrance	n,v,va
-entranceway	n
-entrant	n
-entrap	v,er,va,ms
-entreat	v,er
-entreaty	n
-entree	n
-entrench	v,er,va
-entrepreneur	n
-entrepreneurial	a
-entropy	n
-entrust	v,er,va
-entry	n
-entryway	n
-entwine	v,er
-entwist	v,er
-enumerable	a
-enumerate	v,ion
-enunciable	a
-enunciate	v,ion
-envelop	v,va
-envelope	n
-enviable	a
-envious	a
-environ	v,va
-envisage	v,er,va
-envision	v,va
-envoi	n
-envoy	n
-envy	n,v,er,va
-enzymatic	a,na
-enzyme	n
-enzymology	n,na
-Eocene	pc
-eohippus	n
-eosine	n
-EPA	pc,nopref
-epaulet	n
-epaulette	n
-ephemera	n
-ephemeral	n,a
-ephemerides	d
-ephemeris	n
-Ephesian	n
-Ephesus	pc
-Ephraim	pc
-epic	n,a,na
-epicene	n,a,na
-epicure	n,na
-epicurean	a,na
-epicycle	n
-epicyclic	a
-epicycloid	n
-epidemic	n,a,na
-epidemiology	n,na
-epidermal	a
-epidermic	n,a
-epidermis	n
-epigenetic	a
-epiglottal	a
-epiglottis	n
-epigram	n
-epigrammatic	a,na
-epigraph	n,er,na
-epigraphy	n,na
-epilepsy	n
-epileptic	n,a,na
-epilogue	n
-epinephrine	n
-epiphany	n
-epiphenomenal	a,na
-epiphenomenon	pc
-epiphyseal	a
-epiphysis	pc
-epiphyte	n
-epiphytic	a,na
-episcopacy	n
-episcopal	a
-Episcopalian	n,a,na
-episcopate	n
-episode	n
-episodic	a,na
-epistemic	a
-epistemology	n,na
-epistle	n,er
-epistolary	a
-epitaph	n
-epitaxial	a
-epitaxy	n
-epithelial	a,na
-epithelium	n
-epithet	n
-epitome	n,na
-epizootic	n,a,na
-epoch	n
-epochal	a
-epochs	d
-eponym	n
-eponymic	a
-eponymous	a
-eponymy	n
-epoxy	n,a
-epsilon	n
-Epsom	pc
-Epstein	n
-equable	a,va
-equal	n,v,a,na
-equalitarian	n
-equanimity	n
-equate	v,ion
-equatorial	n,a
-equerry	n
-equestrian	n,a
-equiangular	a
-equidistant	a
-equidistribute	v,ion
-equilateral	a
-equilibrate	v,ion
-equilibria	pc
-equilibrium	n
-equine	n,a
-equinoctial	n,a
-equinox	n
-equip	n,v,va,ms
-equipage	n
-equipoise	n,v
-equipotent	a
-equipotential	n,a
-equiprobable	a
-equitable	a,in
-equitation	n
-equity	n,in
-equivalent	n,a
-equivocal	a
-equivocate	v,ion
-era	n,nopref
-eradicable	a,in
-eradicate	v,ion
-erase	v,er,va
-Erasmus	pc
-Erastus	pc
-erasure	n
-Erato	pc
-Eratosthenes	pc
-erbium	n
-ERDA	pc,nopref
-ere	d
-erect	v,a,ion
-erectile	a
-eremite	n,na
-erg	n
-ergo	d,nopref
-ergodic	a
-ergonomic	n,a
-ergot	n,na
-Eric	pc
-Erica	pc
-Erich	pc
-Erickson	n
-Ericsson	n
-Erie	pc
-Erlenmeyer	pc
-Erma	n
-ermine	n,ed
-Ernest	pc
-Ernestine	pc
-Ernie	pc
-Ernst	pc,nopref
-erode	v
-erodible	a
-Eros	pc
-erosible	a
-erosion	n,na,va
-erotic	n,a,na
-erotica	n
-err	v
-errancy	n
-errand	n
-errant	a,in
-errantry	n
-errata	n
-erratic	n,a,na
-erratum	n
-Errol	pc
-erroneous	a
-error	n
-ersatz	n,a
-Erskine	n
-erstwhile	a
-erudite	a
-erudition	n
-erupt	v,ion
-Ervin	n
-Erwin	n
-e's	d
-escadrille	n
-escalate	v,ion
-escapade	n
-escape	n,v,a,er,na,va
-escapee	n
-escargot	n
-escarole	n
-escarpment	n
-eschatology	n,na
-escheat	n,v,va
-eschew	v
-escort	n,v
-escritoire	n
-escrow	n,v
-escudo	n
-escutcheon	n
-ESE	d,nopref
-esker	n
-Eskimo	n
-Esmark	pc
-esophageal	a
-esophagi	d
-esoteric	a,na
-esoterica	n
-ESP	pc,nopref
-espalier	n,v
-especial	a
-Esperanto	pc
-espial	n
-espionage	n
-esplanade	n
-ESPN	pc,nopref
-Esposito	pc
-espousal	n
-espouse	v,er
-espresso	n
-esprit	n
-espy	v
-Esq.	d,nopref
-esquire	n
-essay	n,v,er,na
-Essen	pc
-essence	n
-Essene	n
-essential	n,a,na
-Essex	pc
-EST	pc,nopref
-establish	v,er,va
-estate	n,v,nopref
-esteem	n,v
-Estella	pc
-Estelle	pc
-ester	n
-esterase	n
-Estes	pc
-Esther	pc
-estimable	a,in
-estimate	n,v,ion
-estival	n
-estivate	v
-Estonia	pc
-estop	v
-estoppal	a
-estrange	v,er,va
-estrogenic	a,na
-estuarine	a
-estuary	n
-et	d,nopref
-eta	n
-etc	d
-etcetera	n
-etch	n,v,er
-eternal	n,a
-eternity	n
-Ethan	pc
-ethane	n
-ethanol	n
-Ethel	pc
-ethereal	a,na
-ethic	n,a,na
-Ethiopia	pc
-ethnic	a,na
-ethnocentric	a
-ethnography	n,er,na
-ethnology	n,na
-ethology	n,na
-ethos	n
-ethyl	n
-ethylene	n
-etiquette	n
-Etruscan	n,a
-ETS	pc,nopref
-etude	n
-etymology	n,na
-eucalypt	n
-eucalyptus	n
-Eucharist	pc
-eucharistic	a
-Euclid	pc
-euclidean	d
-Eugene	pc
-Eugenia	pc
-eugenic	n,a,na
-eukaryote	n
-Euler	pc
-Eulerian	pc
-eulogy	n,na
-Eumenides	pc
-Eunice	pc
-eunuch	n,na
-eunuchs	d
-euphemism	n
-euphemist	na
-euphonic	a,na
-euphonious	a
-euphonium	n
-euphony	n
-euphoria	n
-euphoric	a
-Euphrates	pc
-Eurasia	pc
-eureka	d
-Euridyce	pc
-Euripides	pc
-Europa	pc
-Europe	pc
-European	n,a
-europium	n
-Eurydice	pc
-eustatic	a
-eutectic	n,a
-Euterpe	pc
-euthanasia	n
-eutrophic	a
-eutrophy	n
-Eva	pc
-evacuate	v,ion
-evacuee	n
-evade	v,er,va
-evaluable	a
-evaluate	v,ion
-evanescent	a
-evangel	n,na
-evangelic	n,a
-Evans	n
-Evanston	pc
-Evansville	pc
-evaporate	v,ion
-evasion	n,na,va
-eve	n,nopref
-Evelyn	pc
-even	n,v,a,er
-evenhanded	a
-evensong	n
-event	n,na
-eventide	n
-eventual	a
-eventuate	v
-ever	d,nopref
-Eveready	pc
-Everest	pc
-Everett	n
-Everglades	pc
-evergreen	n,a
-Everhart	n
-everlasting	n,a
-evermore	d
-evert	v
-every	d,nopref
-everybody	pc
-everyday	a
-everyman	pc
-everyone	pc
-everything	pc
-everywhere	d
-evict	v,ion
-evictor	n
-evident	a
-evidential	a
-evidentiary	d
-evil	n,a,comp
-evildoer	n
-evildoing	n
-evince	v
-eviscerate	v,ion
-evocable	a,nopref
-evocation	n,na,va
-evoke	n,v,nopref
-evolute	n,ion,nopref
-evolutionary	a
-evolve	v,va
-evzone	n
-ewe	n,er,nopref
-Ewing	n
-ex	n,nopref
-exacerbate	v,ion
-exact	v,a,ion,va
-exactitude	n,in
-exactor	n
-exaggerate	v,ion
-exalt	v,er
-exaltation	n
-exam	n
-examination	n,na
-examine	v,er,va
-examinee	n
-example	n,v
-exarch	n,y
-exasperate	v,a,er,ion
-excavate	v,ion
-exceed	v
-excel	v,ms
-excellent	a
-excelsior	n
-except	v,ion
-excerpt	n,v,ion
-excess	n,a
-excessive	a
-exchange	n,v,er
-exchangeable	a
-exchequer	n
-excise	n,v,va
-excision	n
-excitation	n,na,va
-excitatory	a
-excite	v,er,va
-exciton	n
-exclaim	v,er
-exclamation	n
-exclamatory	a
-exclude	v,er,va
-excludible	a
-exclusion	n,na,va
-exclusionary	a
-excommunicate	n,v,a,ion
-excoriate	v,ion
-excrement	n,na
-excrescent	a
-excreta	n
-excretal	a
-excrete	v,er
-excretion	n
-excretory	a
-excruciate	v,ion
-exculpate	v,ion
-excursion	n,na,va
-excursus	n
-excuse	n,v,er,va
-exec	n
-execrable	a
-execrate	v,ion
-execute	v,er,ion,va
-executor	n
-executrix	n
-exegesis	pc
-exegete	n,na
-exegetic	a,na
-exemplar	n,y
-exemplify	v,ion
-exempt	n,v,a,ion
-exercise	n,v,er,va
-exert	v,ion
-Exeter	pc
-exeunt	a
-exfoliate	v,ion
-exhalation	n
-exhale	v
-exhaust	n,v,er
-exhaustible	a,va,in
-exhaustion	n,na,va
-exhibit	n,v,er
-exhibition	n,er,na,va
-exhibitor	n
-exhilarate	v,ion
-exhort	v,er
-exhortation	n,na,va
-exhortatory	a
-exhumation	n
-exhume	v,er
-exigent	a
-exiguous	a
-exile	n,v
-exist	v
-existent	n,a,in
-existential	a,na
-exit	n,v,nopref
-exodus	n
-exogamous	a
-exogamy	n
-exogenous	a
-exon	n
-exonerate	v,ion
-exorable	a,va,in
-exorbitant	a
-exorcise	v,er
-exorcism	n
-exorcist	n
-exoskeletal	a
-exoskeleton	n
-exothermic	a
-exotic	n,a,na
-exotica	d
-expand	v,er,va
-expanse	n
-expansible	a
-expansion	n,na,va
-expansionary	a
-expatiate	v,ion
-expatriate	n,v,a,ion
-expect	v,er,va
-expectant	n,a
-expectation	n,na,va
-expectorant	n,a
-expectorate	v,ion
-expedient	n,a,in
-expedite	v,er
-expedition	n
-expeditionary	a
-expeditious	a
-expeditor	n
-expel	v,er,va,ms
-expend	v,er,va
-expenditure	n
-expense	n
-expensive	a,in
-experience	n,v
-experiential	a
-experiment	n,v,er,na
-experimentation	n
-expert	n,v,a,na
-expertise	n
-expiable	a,in
-expiate	v,ion
-expiration	n
-expire	v
-expiry	n
-explain	v,er,va
-explanation	n,na,va
-explanatory	a
-expletive	n,a
-explicable	a,in
-explicate	v,ion
-explicit	a,in
-explode	v,er
-exploit	n,v,er,va
-exploitation	n,na,va
-exploration	n,na,va
-exploratory	a
-explore	v,er,va
-explosion	n,na,va
-exponent	n
-exponential	n,a
-exponentiate	v,ion
-export	n,v,a,er,va
-exportation	n
-expose	v,er,va
-exposit	v
-exposition	n,na,va
-expositor	n,y
-expostulate	v,ion
-exposure	n
-expound	v,er
-express	n,v,a,er
-expressible	a
-expression	n,na,va,in
-expressway	n
-expropriate	v,ion
-expulsion	n,na,va
-expunge	v,er
-expurgate	v,ion
-exquisite	n,a
-exsert	v,ion
-extant	a
-extemporaneous	a
-extempore	a,na
-extend	v,er
-extendible	a
-extensible	a,va,in
-extensile	a
-extension	n,na,va
-extensometer	n
-extensor	n
-extent	n
-extenuate	v,ion
-exterior	n,a,na
-exterminate	v,ion
-external	n,a,na
-extinct	v,a,ion
-extinguish	v,er,va
-extirpate	v,ion
-extol	n,va
-extoll	n,v,er
-extort	v,er,ion
-extortionate	a
-extra	n,a
-extracellular	a
-extract	n,v,ion,va
-extracurricular	a
-extraditable	a
-extradite	v,va
-extradition	n
-extralegal	a
-extralinguistic	a
-extramarital	a
-extramural	a
-extraneous	a
-extraordinary	a
-extrapolate	v,ion
-extrasensory	a
-extraterrestrial	a
-extraterritorial	a
-extravagant	a
-extravaganza	n
-extrema	d
-extremal	a
-extreme	n,a,na
-extremis	d
-extremum	d
-extricable	a,in
-extricate	v,ion
-extrinsic	a,na
-extroversion	n,na,va
-extrovert	n,ed,a
-extrude	v,er
-extrusion	n,na,va
-exuberant	a
-exuberate	v
-exudation	n,na,va
-exude	v
-exult	v
-exultant	a
-exultation	n
-exurb	n
-exurbanite	n
-exurbia	n
-Exxon	pc
-eye	n,v,na,nopref
-eyeball	n,v
-eyebolt	n
-eyebright	n
-eyebrow	n
-eyedrop	n,er,ms
-eyeglass	n
-eyeing	d
-eyelash	n
-eyelet	n
-eyelid	n
-eyepiece	n
-eyeshade	n
-eyeshot	n
-eyesight	n
-eyesore	n
-eyestrain	n
-eyewash	n
-eyewitness	n
-eyrie	n
-Ezekiel	pc
-Ezra	pc
-FAA	pc,nopref
-Faber	pc
-Fabian	n,a,na
-fable	n,v,er
-fabric	n
-fabricate	v,ion
-fabulist	n
-fabulous	a
-facade	n
-face	n,v,er
-facedown	a
-faceplate	n
-facet	n,ed
-facetious	a
-facial	n,a
-facies	n
-facile	a
-facilitate	v,ion
-facsimile	n
-fact	n,ion
-factious	a
-factitious	a
-facto	d,nopref
-factoid	n
-factor	n,v,na,va
-factorial	n,a,nopref
-factory	n,nopref
-factotum	n
-factual	a,na
-facula	n
-facultative	a
-faculty	n
-fad	n,na,ms
-faddish	a
-fade	n,v,va
-fadeaway	n
-fadeout	n
-faery	a
-Fafnir	pc
-fag	n,v,ms
-faggot	vi
-Fahey	n
-Fahrenheit	a
-faience	n
-fail	n,v
-failsafe	a
-failsoft	a
-failure	n
-fain	d,nopref
-faint	n,v,a,comp
-fainthearted	a
-fair	n,v,a,comp
-Fairchild	n
-Fairfax	n
-Fairfield	pc
-fairgoer	n
-fairground	n
-fairish	a
-fairlead	n,er
-Fairport	pc
-fairway	n
-fairy	n,a,na
-fairyland	n
-faith	n,v,na
-fajita	n
-fake	n,v,a,comp
-fakery	n
-fakir	n
-falcon	n,er
-falconry	n
-fall	n,vi,a,er
-fallacious	a
-fallacy	n
-fallback	n
-fallen	d
-fallible	a,va,in
-falloff	n
-fallout	n
-fallow	n,v,a
-Falmouth	pc
-false	a,comp
-falsehood	n
-falsetto	n
-falsie	n
-falsify	v,er,ion
-Falstaff	pc
-falter	n,v,er
-fame	n,ed
-familial	a
-familiar	n,a,na
-familiarly	d
-family	n,a
-famine	n
-famish	v,va
-famous	a,in
-fan	n,v,er,na,ms
-fanatic	n,a,na
-fancy	n,v,a,comp,na
-fandango	n
-fanfare	n
-fanfold	v
-fang	n,ed
-fangled	d
-fanlight	n
-Fannie	n
-Fanny	pc
-fanout	n
-fantail	n
-fantasia	pc
-fantasist	n
-fantasm	n
-fantastic	n,a,na
-fantasy	n,v
-fantod	n
-far	d,nopref
-farad	n,na
-faraday	n
-faraway	a
-Farber	n
-farce	n,v,y
-farceur	n
-farcical	a
-fare	n,v,er
-farewell	n,a
-farfetched	a
-Fargo	pc
-farina	n
-farinaceous	a
-Farkas	n
-Farley	n
-farm	n,v,er
-farmhand	n
-farmhouse	n
-Farmington	pc
-farmland	n
-farmstead	n,vi
-farmyard	n
-Farnsworth	n
-faro	n
-farrago	n
-Farrell	pc
-farrier	n
-Farris	n
-farrow	n,v,a
-Farsi	pc
-farsighted	a
-farther	a
-farthermost	a
-farthest	a
-farthing	n
-fascia	n
-fascicle	n,ed
-fasciculate	ed,a,ion
-fascinate	v,ion
-fascism	n
-fascist	n,a,na
-fashion	n,v,er,va
-Faso	pc,nopref
-fast	n,v,a,comp
-fasten	v,er
-fastidious	a
-fat	n,v,a,comp,ms,y
-fatal	a,na
-fate	n,v,na
-father	n,v,a,na
-fatherland	n
-fathom	n,v,va
-fatigue	n,v
-Fatima	pc
-fatten	v,er
-fattish	a
-fatuity	n
-fatuous	a
-faucet	n
-Faulkner	n
-fault	n,v,y
-faultfind	vi,er
-faun	n,na
-fauna	n
-faunal	a
-Faust	pc
-Faustian	a
-Faustus	pc
-fawn	n,v,er
-fax	n,v
-fay	n,ed,a
-Faye	n
-Fayette	n
-Fayetteville	pc
-faze	v
-FBI	pc,nopref
-FCC	pc,nopref
-FDA	pc,nopref
-Fe	pc
-fealty	n
-fear	n,v,er,na
-fearsome	a
-feasible	a,va,in
-feast	n,v,er,na
-feat	n,a
-feather	n,v,na,y
-featherbed	n,v,a,ms
-featherbrain	n,ed
-featherhead	n,ed
-featherweight	n
-feathery	a
-feature	n,v,na,va
-Feb.	d,nopref
-febrile	a
-February	n
-feckless	a
-fecund	a
-fed	d
-Fedders	pc
-federal	a,na
-federate	v,a,ion
-fedora	n
-fee	n,nopref
-feeble	a,comp
-feebleminded	a
-feed	n,vi,er
-feedback	n
-feedstock	n
-feel	n,vi,er
-Feeney	n
-feet	pc
-feign	v,er
-feint	n,v
-feisty	a,comp
-Feldman	n
-feldspar	n
-feldspathic	a
-Felice	pc
-Felicia	pc
-felicitate	v,a,ion
-felicitous	a,in
-felicity	n,in
-feline	n,a
-Felix	pc
-fell	n,v,a,er,va,y
-fellah	n
-fellatio	n
-fellow	n,a
-felon	n,a
-felonious	a
-felony	n
-felt	n,v
-felucca	n
-female	n,a
-feminine	n,a
-feminism	n
-feminist	n,a,na
-femur	n
-fen	n,ms,y
-fence	n,v,er
-fencepost	n
-fend	n,v,er
-fenestrate	ed,a,ion
-fennel	n
-Fenton	n
-fenugreek	n
-feral	a,nopref
-Ferber	n
-Ferdinand	pc
-Ferguson	n
-Fermat	pc
-fermata	n
-ferment	n,v,er,va
-fermentation	n,na,va
-Fermi	pc
-fermion	n
-fermium	n
-fern	n,na,y
-Fernando	pc
-fernery	n
-ferocious	a
-ferocity	n
-Ferrell	n
-Ferrer	pc
-ferret	n,v,er
-ferric	a
-ferris	d
-ferrite	n,na
-ferroelectric	n
-ferromagnet	n
-ferromagnetic	n,a
-ferromagnetism	n
-ferrous	a
-ferruginous	a
-ferrule	n,v
-ferry	n,v,man
-ferryboat	n
-fertile	a,na,in
-fervent	a
-fervid	a,na
-fescue	n
-fest	n,er
-festal	a
-festival	n,a
-festive	a
-festoon	n,v
-festschrift	n
-feta	n
-fetch	n,v,er
-fete	n,v
-fetid	a
-fetish	n,na
-fetlock	n
-fetter	n,v
-fettle	n,v
-feud	n,v,er,na
-feudal	a,na
-feudatory	n,a
-fever	n,v
-feverish	a
-few	a,comp
-fey	a,comp
-fez	n,ms
-fiance	n,nopref
-fiancee	n
-fiasco	n
-fiat	n
-fib	n,v,er,ms
-fiberboard	n
-Fiberglas	pc
-Fibonacci	pc
-fibrillar	a
-fibrillation	n
-fibrin	n
-fibrosis	pc
-fibrous	a
-fibula	n
-FICA	d,nopref
-fiche	n
-fickle	a
-fiction	n,na,va
-fictioneer	n,vi
-fictitious	a
-fid	n,a
-fiddle	n,v,er
-fiddlehead	n
-fiddlestick	n
-fide	d
-fidelity	n
-fidget	n,v,y
-fiducial	a
-fiduciary	n,a
-fie	d
-fief	n
-fiefdom	n
-field	n,v,a,er
-fieldstone	n
-fieldwork	n
-fiend	n,nopref
-fiendish	a
-fierce	n,a,comp
-fiery	a,comp,nopref
-fiesta	n
-fife	n
-FIFO	n,nopref
-fifteen	n
-fifteenth	n,a
-fifth	n,a
-fiftieth	n,a
-fifty	n
-fiftyish	a
-fig	n,va
-fight	n,vi,er
-figural	a
-figurate	ion
-figure	n,v,er,va
-figurehead	n
-figurine	n
-Fiji	n
-filament	n
-filamentary	a
-filamentous	a
-filar	a,nopref
-filbert	n
-filch	v,er
-file	n,v,er,va
-filet	n
-filial	a
-filibuster	n,v,er
-filigree	n,v
-Filipino	n,a
-fill	n,v,er,na,va
-fillet	n,v
-fillip	n,v
-filly	n
-film	n,v,er,y
-filmdom	n
-filmic	a,na
-filmstrip	n
-filter	n,v,va
-filth	n,y
-filtrate	n,v,ion,in
-fin	n,v,na,nopref,ms,y
-finagle	v,er
-final	n,a
-finale	n,a,na
-finance	n,v
-financial	a
-financier	n,v
-finch	n
-find	n,vi,er,va
-fine	n,v,a,comp
-finery	n
-finesse	n,v
-finessing	a
-finger	n,v
-fingerboard	n
-fingerling	n
-fingernail	n
-fingerprint	n,v
-fingertip	n
-finial	n
-finicky	a
-finis	n,nopref
-finish	n,v,er
-finitary	n
-finite	n,a,in
-finitude	pc
-fink	n
-Finland	pc
-Finley	pc
-Finn	n
-Finnegan	n
-Finnish	a
-fir	n,nopref,ms,y
-fire	n,v,er,man
-firearm	n
-fireball	n
-firebird	n
-fireboat	n
-firebox	n
-firebrand	n
-firebreak	n
-firebrick	n
-firebug	n
-fireclay	n
-firecracker	n
-firefight	vi,er
-firefly	n
-fireguard	n
-firehouse	n
-firelight	n
-fireplace	n
-fireplug	n
-firepower	n
-fireproof	v,a
-fireside	n
-Firestone	n
-firetrap	n
-firewall	n
-firewood	n
-firework	n
-firm	n,v,a,comp,in
-firmament	n,na
-first	n,a
-firstborn	n,a
-firsthand	a
-fiscal	n,a
-Fischbein	n
-Fischer	n
-fish	n,v,na,va,y
-fisher	n,man
-fishery	n
-fishhook	n
-fishmonger	n
-fishpond	n
-fishtail	v
-fishwife	n
-Fisk	n
-Fiske	n
-fissile	a
-fission	n,v,na,va
-fissure	n,v
-fist	n,v
-fisticuffs	n
-fit	n,v,a,comp,ms
-Fitch	n
-Fitchburg	pc
-fitful	a
-fitment	n
-Fitzgerald	n
-Fitzpatrick	n
-Fitzroy	n
-five	n,er,nopref
-fivefold	d
-fix	n,v,a,er,va
-fixate	v,ion
-fixture	n
-Fizeau	pc
-fizz	n,v,y
-fizzle	n,v
-fjord	n
-FL	pc,nopref
-flabbergast	v
-flabby	a,comp
-flaccid	a
-flack	n
-flag	n,v,er,man,ms
-flagella	pc
-flagellant	n,a,na
-flagellar	a
-flagellate	n,v,a,ion
-flagellum	n
-flageolet	n
-flagitious	a
-Flagler	n
-flagon	n
-flagpole	n
-flagrant	a
-flagstaff	n
-flagstone	n
-flail	n,v
-flair	n
-flak	n,nopref
-flake	n,v,er,y
-flam	n,v,ms
-flambe	v
-flamboyant	n,a
-flame	n,v,er
-flamenco	n
-flameout	n
-flameproof	a
-flamethrower	n
-flamingo	n
-flammable	n,a,in
-Flanagan	n
-Flanders	pc
-flange	n,v,er
-flank	n,v,er
-flannel	n,a
-flap	n,v,er,va,ms,y
-flapjack	n
-flare	n,v
-flareup	n
-flash	n,v,er,y
-flashback	n
-flashbulb	n
-flashgun	n
-flashlight	n
-flashover	n
-flask	n
-flat	n,v,a,comp,ms
-flatbed	n,a
-flatcar	n
-flatfeet	pc
-flatfish	n
-flatfoot	n
-flathead	n
-flatiron	n
-flatland	n
-flatten	v,er
-flatter	n,v,er
-flattery	n
-flattish	a
-flatulent	a
-flatus	n
-flatware	n
-flatways	d
-flatwise	d
-flatwork	n
-flatworm	n
-flaunt	n,v,y
-flautist	n
-flavorsome	a
-flaw	n,v
-flax	n,y
-flaxen	a
-flaxseed	n
-flay	v
-flea	n
-fleabane	n
-fleck	n,v
-fled	d
-fledge	v
-fledgling	n
-flee	vi,er
-fleece	n,v,y
-fleet	n,v,a,comp
-Fleming	n
-Flemish	a
-flense	v
-flesh	n,v,a,va
-fleshpot	n
-fleshy	a,comp
-fletch	v,er
-Fletcher	n,na
-flew	n
-flex	n,v,a
-flexible	a,va,in
-flexural	a
-flexure	n
-flibbertigibbet	n,y
-flick	n,v,er
-flicker	n,v,er,y
-flier	n
-flight	n,v,y
-flimflam	n,v,er,ms
-flimsy	n,a,comp
-flinch	n,v,er
-fling	n,vi,er
-flint	n,v,na,nopref,y
-flintlock	n
-flip	n,v,a,er,ms
-flipflop	n,v,ms
-flippant	a
-flirt	n,v,er,y
-flirtation	n
-flirtatious	a
-flit	n,v,er,ms
-flitch	n
-flivver	n
-Flo	pc
-float	n,v,er,y
-floc	n,v,ms
-floccing	d
-flocculate	n,v,a,ion
-flocculi	d
-flock	n,v
-floe	n
-flog	v,er,ms
-flood	n,v,er
-floodgate	n
-floodlight	n,v
-floodlit	d
-floodplain	n
-floodwater	n
-floodway	n
-flooey	d
-floor	n,v,er
-floorboard	n
-floorwalker	n
-floozy	n
-flop	n,v,er,ms
-flophouse	n
-floppy	n,a,comp
-flora	n
-floral	a
-Florence	pc
-Florentine	pc
-Flores	n
-floret	n
-floriculture	n,na
-florid	a
-Florida	pc
-Floridian	n
-florin	n
-florist	n,na
-floss	n,y
-flotation	n
-flotilla	n
-flotsam	n
-flounce	n,v
-flouncy	a,comp
-flounder	n,v
-flour	n,v,y
-flourish	n,v,er
-flout	n,v,er
-flow	n,v,in
-flowchart	n,v
-flower	n,v,er,na
-flowerpot	n
-flowery	a,comp
-flown	a
-flowstone	n
-Floyd	n
-flu	n,nopref
-flub	n,v,ms
-fluctuant	a
-fluctuate	v,ion
-flue	n
-fluency	n
-fluent	a,in
-fluff	n,v,y
-fluid	n,a,na
-fluke	n,y
-flume	n
-flummery	n
-flummox	v
-flung	d
-flunk	n,v,er,y
-fluoresce	v
-fluorescein	n
-fluorescent	a
-fluoridate	v,ion
-fluoride	n
-fluorimeter	n
-fluorinate	v,ion
-fluorine	n
-fluorite	n
-fluorocarbon	n
-fluorography	n
-fluoroscope	n,v,na
-fluoroscopic	a,na
-fluoroscopy	n
-fluorspar	n
-flurry	n,v
-flush	n,v,er,a,va
-fluster	n,v
-flute	n,v,er,na,y
-flutter	n,v,er
-fluttery	a,comp
-fluvial	a
-flux	n,v
-fly	n,v,va
-flyby	n
-flycatcher	n
-flyer	n
-flyleaf	n
-Flynn	n
-flyover	n
-flypaper	n
-flyspeck	n,v
-flyway	n
-flyweight	n
-flywheel	n
-FM	pc,nopref
-FMC	pc,nopref
-foal	n,v
-foam	n,v,y
-fob	n,v,ms
-focal	a,na
-foci	d
-focus	n,v
-fodder	n,v
-foe	n,man
-fog	n,v,ms,y
-fogbound	a
-fogey	n
-foghorn	n
-foible	n
-foil	n,ed
-foist	v
-fold	n,v,er
-foldaway	a
-folderol	n
-foldout	n
-Foley	n
-foliage	n,ed
-foliate	v,a,ion
-folio	n,v
-folk	n,a,na
-folkish	a
-folklore	n,na
-folkloric	a
-folksong	n
-folksy	a,comp
-folkway	n
-follicle	n
-follicular	a
-follow	n,v,er
-followeth	d
-folly	n
-Fomalhaut	pc
-foment	v,er
-fond	n,a,comp
-fondle	v,er
-fondue	n
-font	n,nopref
-Fontaine	n
-Fontainebleau	pc
-food	n,nopref
-foodstuff	n
-foofaraw	n
-fool	n,v,er,va
-foolery	n
-foolhardy	a
-foolish	a
-foolproof	a
-foolscap	n
-foot	n,v,er,na,man,y
-footage	n
-football	n
-footboard	n
-footbridge	n
-footcandle	n
-Foote	n
-footfall	n
-footgear	n
-foothill	n
-foothold	n
-footlight	n
-footling	a
-footlocker	n
-footloose	a
-footnote	n,v
-footpad	n
-footpath	n
-footprint	n
-footrest	n
-footrope	n
-footsie	ed
-footsore	a
-footstep	n
-footstool	n
-footway	n
-footwear	n
-footwork	n
-fop	n,v,ms
-foppery	n
-foppish	a
-for	d,nopref
-forage	n,v,er
-foray	n,v,er
-forbade	d
-forbear	vi,er
-forbearance	n
-Forbes	n
-forbid	n,v,a,er,ms
-forbidden	d
-forbode	v
-forbore	d
-forborne	d
-force	n,v,er,na
-forceps	n,na
-forcible	a
-ford	n,v,va
-Fordham	pc
-fore	man,nopref
-forearm	v
-forebears	d
-forebode	v,er
-forebrain	n
-forecast	v,er
-forecastle	n
-foreclose	v,er
-foreclosure	n
-foredeck	n
-foredoom	v
-foreface	n
-forefather	n
-forefeet	d
-forefinger	n
-forefoot	d
-forefront	d
-foregoing	d
-foregone	d
-foreground	n
-forehand	n,ed,a
-forehead	n
-foreign	a,er
-forejudge	v
-foreknow	vi
-foreknowledge	d
-foreknown	d
-forelady	n
-foreleg	n
-forelimb	n
-forelock	n
-foremast	n
-foremost	d
-foremother	n
-forename	n,ed
-forenoon	n
-forensic	n,a,na
-foreordain	v
-foreordination	n
-forepart	n
-forepaw	n
-forepeak	n
-foreplay	n
-forequarter	n
-forerunner	n,na
-foresail	n
-foresaw	d
-foresee	vi
-foreseeable	a
-foreseen	d
-foreseer	n
-foreshadow	v,er
-foreshore	n
-foreshorten	v
-foresight	n,ed
-foreskin	n
-forest	n,ed,er
-forestall	v,er,va
-forestation	n
-forestay	n
-forestry	n
-foreswear	vi,er
-foresworn	d
-foretaste	n
-foretell	vi,er
-forethought	n,na
-foretoken	v
-foretold	d
-foretop	n,man
-forever	a
-forevermore	d
-forewarn	v
-foreword	n
-forfeit	n,v,a,er,va
-forfeiture	n
-forfend	v
-forgather	v
-forgave	d
-forge	n,v,er,va
-forgeable	a
-forgery	n
-forget	vi,er,na,va,ms
-forgive	v,a,er,va
-forgiven	d
-forgo	er
-forgoes	d
-forgoing	d
-forgot	d
-forgotten	d
-fork	n,v,er,na,y
-forklift	n
-forlorn	a
-form	n,v,er,na,va
-formal	n,a,na,in
-formaldehyde	n
-formant	n,in
-format	n,v,er,va,ms
-formate	n,ion
-formfitting	a
-formic	a
-Formica	pc
-formidable	a,va
-Formosa	pc
-formula	n
-formulae	pc
-formulaic	a,na
-formulary	n,a
-formulate	v,ion
-fornicate	v,a,ion
-Forrest	pc
-forsake	vi
-forsaken	d
-forsook	d
-forsooth	d
-forswear	vi
-forsworn	a
-Forsythe	n
-forsythia	n
-fort	n
-forte	n
-Fortescue	n
-forth	d
-forthcome	vi
-forthright	n,a
-forthwith	d
-fortieth	n,a
-fortify	v,er,ion
-fortiori	d
-fortissimo	n
-fortitude	n
-fortnight	n,a
-Fortran	n
-fortress	n,v
-fortuitous	a
-fortuity	n
-fortunate	a
-fortune	n,v
-forty	n
-fortyish	a
-forum	n
-forward	n,v,a,er
-forwent	d
-Foss	n
-fossil	n,a,na
-fossiliferous	a
-foster	v,a,er
-Foucault	pc
-fought	d
-foul	n,v,a,comp
-foulard	n
-foulmouth	ed
-found	n,v,er
-foundation	n,na
-foundling	n
-foundry	n
-fount	n
-fountain	n
-fountainhead	n
-four	n,nopref
-fourfold	a
-Fourier	pc,na
-fourscore	a
-foursome	n
-foursquare	a
-fourteen	n,er
-fourteenth	n,a
-fourth	n,a
-fovea	n
-foveal	a
-fowl	n,v,er
-fox	n,v,y
-foxglove	n
-Foxhall	pc
-foxhole	n
-foxhound	n
-foxtail	n
-foyer	n
-FPC	pc,nopref
-fracas	n
-fractal	n,a
-fraction	n,na
-fractionate	v,ion
-fractious	a
-fracture	n,v
-fragile	a
-fragment	n,v,na
-fragmentary	a
-fragmentation	n
-fragrant	a
-frail	n,a,comp
-frailty	n
-frambesia	n
-frame	n,v,a,er
-framework	n,v
-Fran	pc
-franc	n
-franca	n
-France	pc
-Frances	pc
-Francesca	pc
-franchise	n,v,er
-Francine	n
-Francis	n
-Franciscan	n,a
-Francisco	pc
-francium	n
-Franco	pc
-Francois	pc,nopref
-frangible	a,va,in
-frangipani	n
-frank	n,v,a,comp
-Frankenstein	pc
-Frankfort	pc
-Frankfurt	pc
-frankfurter	n
-Frankie	n
-franklin	n
-frantic	a,na
-Franz	pc
-frappe	ed
-Fraser	n
-fraternal	a,na
-fraternity	n
-fratricidal	a
-fratricide	n
-Frau	n
-fraud	n
-fraudulent	a
-fraught	n,v,a
-fray	n,v,er
-Frazier	n
-frazzle	n,v
-freak	n,v,a
-freakish	a
-freckle	n,v
-Fred	pc
-Freda	n
-Freddie	pc
-Freddy	pc
-Frederic	pc
-Frederick	n
-Fredericks	n
-Fredericksburg	pc
-Fredericton	pc
-Fredholm	pc
-Fredrickson	n
-free	n,v,a,comp,man
-freebase	v,er
-freebie	n
-freeboard	n
-freeboot	er
-freed	pc,man
-freedom	n
-freehand	ed,a
-freehearted	a
-freehold	n,er
-freeload	v,er
-Freemason	n
-freemasonry	n
-Freeport	pc
-freestanding	a
-freestone	n
-freethink	vi,er
-Freetown	pc
-freeway	n
-freewheel	n,v
-freewill	a
-freeze	n,vi,er
-freight	n,v,er
-French	n,v,er,man
-frenetic	a,na
-frenzy	n,v
-freon	n
-frequent	v,a,er
-fresco	n,v
-frescoes	d
-fresh	v,a,comp,va,man
-freshen	v,er
-freshet	n
-freshwater	a
-Fresnel	pc
-Fresno	pc
-fret	n,v,na,ms
-fretwork	n
-Freud	n
-Freudian	n,a,na
-Frey	pc
-Fri.	d,nopref
-friable	a,va
-friar	n,a,y
-fricassee	n,v
-fricative	n,a
-Frick	n
-friction	n
-frictional	a
-Friday	n
-fridge	n
-fried	d
-Friedman	n
-Friedrich	pc
-friend	n,v,a
-friendlily	d
-frieze	n
-frigate	n
-Frigga	pc
-fright	n,v,na
-frighten	v
-frigid	a
-Frigidaire	n
-frijoles	d
-frill	n,v
-frilly	a,comp
-fringe	n,v,er,va,in
-fringy	a,comp
-frippery	n
-frisbee	n
-frisk	n,v,er,y
-fritillary	n
-fritter	n,v,er
-Fritz	pc
-frivolity	n
-frivolous	a
-frizz	n,a,y
-frizzle	n,v
-frock	n,v
-frog	n,v,man,ms
-frolic	n,v,a
-frolicked	d
-frolicking	d
-frolicsome	a
-from	d,nopref
-frond	n,ed
-front	n,v,a
-frontage	n
-frontal	n,a
-frontier	n,a
-frontiers	man
-frontispiece	n
-frontlet	n
-frosh	d
-frost	n,v,er,y
-frostbite	n,v
-frostbitten	d
-froth	n,v,y
-froward	a
-frown	n,v,er
-frowsy	a,comp
-frowzy	a,comp
-froze	d
-frozen	a
-FRS	d,nopref
-fructify	v,ion
-fructose	n
-Fruehauf	pc
-frugal	a
-fruit	n,v,na
-fruitcake	n
-fruiterer	n
-fruition	n
-fruity	a,comp
-frumpish	a
-frumpy	a,comp
-frustrate	v,a,er,ion
-frustum	n
-fry	n,v,er
-Frye	pc
-f's	d,nopref
-FTC	pc,nopref
-Fuchs	n
-fuchsia	n
-fuddle	v
-fudge	n,v,er
-fuel	n,v
-fugacity	n
-fugal	a
-fugitive	n,a
-fugue	n,v,na
-Fuji	pc
-Fujitsu	pc
-fulcrum	n
-fulfill	v,er,va
-fulgent	a
-full	n,a,comp
-fullback	n
-Fullbright	n
-Fullerton	n
-fully	d,nopref
-fulminate	n,v,ion
-fulsome	a
-Fulton	n
-fumarole	n
-fumble	n,v,er
-fume	n,v,er,nopref,y
-fumigant	n
-fumigate	v,ion
-fun	n,v,nopref,ms
-function	n,v,na
-functionary	n
-functor	n
-fund	n,v,er
-fundable	a
-fundamental	n,a,na
-fundraise	vi,er
-funeral	n
-funerary	a
-funereal	a
-fungal	a
-fungi	d
-fungible	n,a,va
-fungicidal	a
-fungicide	n
-fungiform	a
-fungo	pc
-fungoes	d
-fungoid	n,a
-fungus	n
-funicular	n,a
-funk	n,v,y
-funny	n,a,comp
-fur	n,v,ms,y
-furbelow	n
-furbish	v,er,va
-furious	a
-furl	v
-furlong	n
-furlough	n,v
-Furman	n
-furnace	n
-furnish	v,er,va
-furniture	n
-furore	n
-furrier	n,y
-furrow	n,v
-further	v,a,er
-furtherance	n
-furthermore	d
-furthermost	a
-furthest	d
-furtive	a
-fury	n
-furze	n,y
-fuse	n,v,er,in
-fuselage	n
-fusible	a,va,in
-fusiform	a
-fusil	n
-fusileer	n
-fusillade	n,v
-fusion	n,na,in
-fuss	n,v,er,y
-fussbudget	n
-fustian	n,a
-fusty	a,comp
-futile	a
-future	n,a,na
-fuzz	n,v,y
-FY	d,nopref
-FYI	d,nopref
-GA	pc,nopref
-gab	n,v,er,ms,y
-gabardine	n
-gabble	n,v,er
-gabbro	n
-gaberdine	n
-Gaberones	pc
-gabfest	n
-gabion	n
-gable	n,ed
-Gabon	pc
-Gabriel	pc
-Gabrielle	pc
-gad	n,v,er,nopref,ms
-gadabout	n,a
-gadfly	n
-gadget	n,y
-gadgeteer	n
-gadgetry	pc
-gadolinium	n
-gadwall	n
-Gaelic	n,a
-gaff	n,v
-gaffe	n,er
-gag	n,v,er,man,ms
-gage	n,v
-gaggle	n
-gagster	n
-gagwriter	n
-gaiety	n
-Gail	pc
-gaillardia	n
-gaily	d
-gain	n,v,a,er,na
-Gaines	n
-Gainesville	pc
-gainsaid	d
-gainsay	vi,er
-gait	n,v,er
-Gaithersburg	pc
-gal	n,a,ms
-gala	n,a
-galactic	a
-Galapagos	pc
-Galatea	pc
-Galatia	pc
-galaxy	n
-Galbreath	n
-gale	n,va
-Galen	pc,na
-galena	n
-Galilean	n,a
-Galilee	pc
-Galileo	pc
-gall	n,v,nopref
-Gallagher	n
-gallant	n,v,a
-gallantry	n
-galleon	n
-gallery	n,ed
-galley	n
-Gallic	a
-gallinule	n
-gallium	n
-gallivant	v
-gallon	n
-gallonage	n
-gallop	n,v,er
-Galloway	pc
-gallows	n,a
-gallstone	n
-Gallup	n
-gallus	n,ed
-Galois	pc
-galoot	n
-galore	a
-galosh	n,ed
-Galt	n
-galumph	v
-galvanic	n,a
-galvanism	n
-galvanometer	n
-Galveston	pc
-Galway	n
-gam	n,v,er,nopref,ms
-gamba	d
-Gambia	pc
-gambit	n
-gamble	n,v,er
-gambrel	n
-game	n,v,a,comp,y
-gamecock	n
-gamelan	n
-games	man
-gamete	n
-gamey	a
-gamin	n
-gamma	n,a
-gamut	n
-gander	n,v
-gang	n,v,a,er
-Ganges	pc
-gangland	n
-ganglia	pc
-gangling	a
-ganglion	n
-gangplank	n
-gangrene	n,v
-gangrenous	a
-gangster	n,na
-gangway	n
-gannet	n
-Gannett	n
-gantlet	n,v
-gantry	n
-Ganymede	pc
-GAO	pc,nopref
-gap	n,v,ms,y
-gape	n,v,er
-gar	n,va
-garage	n,v,man
-garb	n,v,er
-garbage	n
-garble	n,v,er
-Garcia	n
-garden	n,v,a,er
-gardenia	n
-Gardner	n
-Garfield	n
-Gargantua	pc
-gargantuan	a
-gargle	n,v
-gargoyle	n
-Garibaldi	pc
-garish	a
-garland	n,v
-garlic	n
-garlicky	comp
-garner	n,v
-garnet	n
-garnish	n,v,va
-garnishee	n,v
-garniture	n
-garotte	n
-garret	n
-Garrett	n
-garrison	n,v
-Garrisonian	n
-garrulity	n
-garrulous	a
-Garry	pc
-garter	n,v
-Garth	n
-Garvey	n
-Gary	pc
-Garza	n
-gas	n,v,er,ms,y
-gasbag	n
-Gascony	pc
-gaseous	a
-gases	d
-gash	n,v,er,a
-gasholder	n
-gashouse	n
-gasify	v,ion
-gasket	n
-gaslight	n,a
-gaslit	a
-gasohol	n
-gasoline	n
-gasp	n,v,er
-Gaspee	pc
-Gaston	pc
-gastric	a
-gastritis	n
-gastrointestinal	a
-gastronome	n,na
-gastronomy	n
-gastropod	n
-gasworks	n
-gat	n
-gate	n,v,ion,man
-gatefold	n
-gatehouse	n
-gatepost	n
-gateway	n
-gather	n,v,er,in
-Gatlinburg	pc
-gator	n
-Gatwick	pc
-gauche	a
-gaucherie	n
-gaucho	n
-gaud	n,y
-gauge	n,v,er
-gaugeable	a
-Gauguin	pc
-Gaul	n
-Gaulle	pc,na
-gaunt	a,comp
-gauntlet	n,ed
-gaur	n
-gauss	n
-Gaussian	n
-gauze	n,na,y
-gave	d,nopref
-Gavin	n
-gavotte	n,v
-gawk	n,v,er,y
-gawkish	a
-gay	n,a,comp,nopref
-gayety	pc
-Gayle	n
-Gaylord	pc
-gaze	n,v,er,nopref
-gazebo	n
-gazelle	n
-gazette	n,v
-gazetteer	n
-GDP	n,nopref
-GE	pc,nopref
-gear	n,v
-gearbox	n
-gearshift	n
-gecko	n
-gedanken	d
-gee	n,v
-geese	pc
-geest	n
-geezer	n
-gefilte	d
-Gegenschein	pc
-Geiger	n
-Geigy	pc
-geisha	n
-gel	n,v,ms
-gelable	a
-gelatin	n
-gelatine	na
-gelatinous	a
-geld	n,v
-gelid	a
-gem	n,v,ms,y
-Gemini	n
-Gemma	pc
-gemology	n,na
-gemstone	n
-gendarme	n
-gender	n,v
-gene	n
-genealogy	n,na
-genera	pc,nopref
-generable	a
-general	n,a,na
-generalissimo	n
-generate	v,a,ion
-generatrices	d
-generatrix	pc
-generic	n,a
-generosity	n
-generous	a
-Genesco	pc
-geneses	d
-genesis	pc
-genetic	n,a,na
-Geneva	pc
-Genevieve	pc
-genial	a,nopref
-genie	n
-genii	d
-genital	n,a
-genitalia	n
-genitive	a
-genius	n
-Genoa	pc
-genocidal	a
-genocide	n
-genome	n,na
-genomic	a
-genotype	n
-genotypical	a
-genre	n
-gent	n,a
-genteel	a
-gentian	n
-gentile	n,a
-gentility	n
-gentle	n,v,a,comp,man
-gentlefolk	n
-gentleman	n,a,na
-gentrify	v,ion
-gentry	n
-genuflect	v,ion
-genuine	a
-genus	pc
-geochronometry	pc
-geode	n
-geodesic	n,a
-geodesy	n
-geodetic	n,a
-Geoffrey	pc
-geography	n,er
-geoid	n
-geology	n,na
-geometrician	n
-geometrize	v,ion
-geomorphology	n
-geophysicist	n
-George	n
-Georgetown	pc
-Georgia	pc
-geoscience	n
-geosynclinal	a
-geosyncline	n
-Gerald	pc
-Geraldine	pc
-geranium	n
-Gerard	pc
-Gerber	n
-gerbil	n
-Gerhard	pc
-Gerhardt	n
-geriatric	n,a
-germ	n
-German	n,a,na
-germane	a,na
-Germanic	n,a
-germanium	n
-Germantown	pc
-Germany	pc
-germicidal	a
-germicide	n
-germinal	a
-germinate	v,ion
-gerontocracy	n
-gerontology	n,na
-Gerry	pc
-gerrymander	n,v
-Gershwin	n
-Gertrude	pc
-gerund	n
-gerundive	n
-gestalt	n,na
-gestapo	n
-gestation	n,na
-gesticulate	v,ion
-gestural	a
-gesture	n,v
-gesundheit	d
-get	n,vi,er,va,ms
-getaway	n
-Gethsemane	pc
-Getty	pc
-Gettysburg	pc
-getup	n
-gewgaw	n
-geyser	n
-Ghana	pc
-ghastly	a,comp
-Ghent	pc
-gherkin	n
-ghetto	n,v,na
-ghost	n,v,a,y
-ghostwrite	vi,er
-ghostwritten	a
-ghoul	n
-ghoulish	a
-GI	n,nopref
-Giacomo	pc
-giant	n,a,na
-giantess	n
-gibber	n,v
-gibberish	n
-gibbet	n,v
-gibbon	n
-gibbous	a
-Gibbs	n
-gibe	n,v,er
-giblet	n
-Gibraltar	pc
-Gibson	n
-giddap	d
-giddy	v,a,comp
-Gideon	n
-Gifford	n
-gift	n,v
-gig	n,v,ms
-gigantesque	a
-gigantic	n,a
-gigantism	n
-giggle	n,v,er
-giggly	a,comp
-gigolo	n
-Gil	pc
-gila	n
-gilbert	n
-Gilbertson	n
-Gilchrist	n
-gild	v,er
-Gilead	pc
-Giles	pc
-gill	n,v,er,y
-Gillespie	n
-Gillette	n
-Gilligan	n
-Gilmore	n
-gilt	n,a
-gimbal	n
-Gimbel	n
-gimcrack	n,a
-gimcrackery	n
-gimlet	n,v,a
-gimmick	n,v,y
-gimmickry	n
-gimpy	a,comp
-gin	n,v,er,nopref,ms,y
-Gina	pc
-ginger	n,v,a
-gingerbread	n,a
-gingery	a
-gingham	n
-gingivitis	n
-gingko	n
-ginkgo	n
-ginmill	n
-Ginn	pc
-Ginny	pc
-Gino	pc
-Ginsberg	pc
-Ginsburg	pc
-ginseng	n
-Giovanni	pc
-Gipsy	pc
-giraffe	n
-gird	n,v,er
-girdle	n,v,er
-girl	n,na
-girlfriend	n
-girlie	a
-girlish	a
-girly	d
-girth	n,v
-Gisela	pc
-gist	n,er
-Giuliano	pc
-Giuseppe	pc
-give	n,vi,er
-giveaway	n
-given	n,a
-giveth	d
-gizmo	n
-gizzard	n
-glace	d
-glacial	a,na
-glaciate	v,ion
-glacier	n
-glaciology	n,na
-glacis	n
-glad	n,v,a,comp,ms,y
-gladden	v
-glade	n,y
-gladiator	n
-gladiatorial	a
-gladiolus	n
-gladsome	a
-Gladstone	n
-Gladys	pc
-glamorous	a
-glance	n,v
-gland	n,er,nopref
-glandular	a
-glare	n,v,er,nopref,y
-Glasgow	pc
-glasnost	pc
-glass	n,v,na,nopref,y
-glassblow	vi,er
-glassine	n
-glassware	n
-glasswork	n,er
-Glaswegian	n
-glaucoma	n
-glaucous	a
-glaze	n,v,er
-glazier	n
-gleam	n,v,er,y
-glean	v,er,va
-Gleason	n
-glee	n,ed,na
-glen	n
-Glenda	pc
-Glendale	pc
-Glenn	n
-glib	a,comp,ms
-glibly	d
-Glidden	n
-glide	n,v,er
-glimmer	n,v
-glimpse	n,v,er
-glint	n,v
-glissade	n,v,er
-glissando	n
-glisten	n,v
-glister	n,v
-glitch	n
-glitter	n,v
-glittery	a,comp
-glitz	v,y,nopref
-gloaming	n
-gloat	n,v,er
-glob	n
-global	a
-globe	n,v
-globular	a
-globule	n
-globulin	n
-glockenspiel	n
-glom	v,ms
-glomerular	a
-gloom	n,v,y
-Gloria	n
-Gloriana	pc
-glorify	v,er,ion
-glorious	a,in
-glory	n,v
-gloss	n,v,y
-glossary	n
-glossolalia	pc
-glottal	a
-glottis	n,nopref
-Gloucester	pc
-glove	n,v,er
-glow	n,v,er
-glowworm	n
-glucose	n
-glue	n,v
-gluey	a,comp
-gluier	d
-glum	a,comp,ms
-glut	n,v,ms
-glutamic	d
-gluten	n
-glutinous	a
-glutton	n
-gluttonous	a
-gluttony	n
-glyceride	n
-glycerin	n
-glycerinate	v,ion
-glycerine	n
-glycerol	n
-glycol	n
-glycoprotein	n
-glyph	n
-GM	pc,nopref
-GMT	pc,nopref
-gnarl	n,v
-gnarly	a,comp
-gnash	n,v,er
-gnat	n,nopref,ms,y
-gnaw	v,er
-gneiss	n
-gnome	n
-gnomic	a
-gnomish	a
-gnomon	n
-gnomonic	a
-gnosis	n
-GNP	n,nopref
-gnu	n,nopref
-go	er
-Goa	pc
-goad	n,v,er
-goal	n,v,nopref
-goalie	n
-goalpost	n
-goaltend	er
-goat	n,na
-goatee	n
-goatherd	n
-goatskin	n
-gob	n
-gobble	n,v,er
-gobbledegook	n
-gobbledygook	n
-goblet	n
-goblin	n
-god	n,a,na
-Goddard	n
-goddess	n
-godfather	n,v
-Godfrey	n
-godhead	n
-godmother	n
-godparent	n
-godsend	n
-godson	n
-Godwin	n
-godwit	n
-goer	n
-goes	d
-Goethe	pc
-Goff	n
-goggle	v,er,y
-Gogh	pc
-gogo	n
-going	n
-goiter	n
-gold	n
-Goldberg	n
-golden	a
-goldeneye	n
-goldenrod	n
-goldenseal	n
-goldfield	n
-goldfinch	n
-goldfish	n
-Goldman	n
-goldsmith	n
-Goldstein	n
-Goldstine	n
-Goldwater	n
-Goleta	pc
-golf	n,v,er
-Goliath	n
-golly	d
-Gomez	n,nopref
-gonad	n
-gondola	n
-gondolier	n
-gone	er
-gong	n,v,nopref
-goniometer	n
-gonorrhea	n
-Gonzales	n
-Gonzalez	n
-goo	n,nopref
-goober	n
-good	n,a,nopref
-Goode	n
-Goodman	n
-Goodrich	n
-goodwill	n
-Goodwin	n
-goody	n
-Goodyear	n
-gooey	a
-goof	n,v,y
-googol	n
-googolplex	n
-gooier	d
-gooiest	d
-goon	n,nopref
-goose	n,v,er
-gooseberry	n
-gooseflesh	n
-gooseneck	n,ed
-GOP	pc,nopref
-gopher	n
-Gordian	pc
-Gordon	n
-gore	n,v,er,nopref,y
-Goren	n
-gorge	n,v,er
-gorgeous	a
-gorgon	n,na
-Gorham	pc
-gorilla	n
-Gorky	pc
-Gorman	n
-gorse	n,y
-Gorton	n
-gosh	d
-goshawk	n
-gosling	n
-gospel	n,a,er
-gossamer	n,a
-gossip	n,v,er,y
-got	d
-Gotham	pc
-Gothic	n,a,na
-gotta	d
-gotten	d
-Gottfried	n
-gouache	n
-gouge	n,v,er
-goulash	n
-Gould	n
-gourd	n
-gourmand	n,na
-gourmet	n
-gout	n,y
-govern	v,va
-governance	n
-governess	n
-governor	n
-gown	n,v
-goy	n
-goyim	d
-GPO	pc,nopref
-GPS	pc,nopref
-grab	n,v,a,er,ms,y
-grace	n,v,er,na
-gracile	a
-gracious	a
-grackle	n
-grad	n
-gradate	v,ion
-grade	n,v,er
-gradient	n
-gradual	n,a,na
-graduate	n,v,a,ion
-Grady	n
-Graff	n
-graffiti	pc
-graft	n,v,er
-graham	n
-grail	n,ed
-grain	n,v,er,in,y
-grammar	n
-grammarian	n
-grammatic	n
-grampus	n
-granary	n
-grand	n,a,comp
-grandam	n
-grandchild	pc
-grandchildren	pc
-granddaughter	n
-grandee	n
-grandeur	n
-grandfather	n,ed,a
-grandiloquent	a
-grandiose	a
-grandma	n
-grandmother	n,a
-grandnephew	n
-grandniece	n
-grandpa	n
-grandparent	n
-grandsire	n
-grandson	n
-grandstand	n,v,er
-granduncle	n
-grange	n,er
-granite	n,na
-grannie	n
-granny	n
-granola	n
-grant	n,v,er,va
-grantee	n
-grantor	n
-grantsman	n
-granular	a
-granulate	v,ion
-granule	n
-Granville	n
-grape	n,y
-grapefruit	n
-grapeshot	n
-grapevine	n
-graph	n,v,er,na
-grapheme	n
-graphic	n,a
-graphite	n,na
-graphology	n,na
-grapnel	n
-grapple	n,v,er
-grasp	n,v,er,va
-grass	n,v,er,na,y
-grasshopper	n
-grassland	n
-grata	d
-grate	n,v,er,na
-graticule	n
-gratify	v,ion
-gratin	n
-gratis	d
-gratitude	n,in
-gratuitous	a
-gratuity	n
-grave	n,v,a,comp
-graven	d
-gravestone	n
-graveyard	n
-gravid	a
-gravimeter	n
-gravitate	v,ion
-graviton	n
-gravure	n
-gravy	n
-gray	n,v,a,comp
-graybeard	n
-grayish	a
-Grayson	n
-graywacke	n
-graze	n,v,er
-grease	n,v,er,y
-great	n,a,comp
-greatcoat	n
-greathearted	a
-grebe	n
-Grecian	a
-Greece	pc
-greed	n,y
-Greek	n,a
-green	n,v,a,comp,y
-greenback	n,er,na
-greenbelt	n
-Greenberg	n
-Greenblatt	n
-Greenbriar	pc
-greenbrier	n
-Greene	n
-greenery	n
-Greenfield	pc
-greengrocer	n
-greengrocery	n
-greenhorn	n
-greenhouse	n
-greenie	n
-greenish	a
-Greenland	pc
-greenmail	n,v,er
-greensand	n
-Greensboro	pc
-greensward	n
-greenware	n
-Greenwich	pc
-greenwood	n
-Greer	n
-greet	v,er
-Greg	pc
-gregarious	a
-Gregg	n
-Gregorian	a
-Gregory	n
-gremlin	n
-grenade	n
-grenadier	n
-grenadine	n
-Grendel	pc
-Grenoble	pc
-Gresham	pc
-Greta	pc
-Gretchen	pc
-grew	d
-grey	n,v,a,comp
-greyhound	n
-greyish	a
-greylag	n
-grid	n,ed,er
-griddle	n
-gridiron	n
-gridlock	n,ed
-grief	n
-grievance	n
-grieve	v,er
-grievous	a
-griffin	n
-Griffith	n
-grill	n,v
-grille	n,er
-grillwork	n
-grim	a,comp,ms
-grimace	n,v,er
-Grimaldi	n
-grime	n,v,y
-Grimm	pc
-grin	n,v,er,nopref,ms
-grind	n,vi,er
-grindstone	n
-gringo	n
-grip	n,v,ms
-gripe	n,v,er
-grippe	n,ed,er
-grisly	a,comp
-grist	n,a
-gristle	n
-gristmill	n
-Griswold	n
-grit	n,v,nopref,ms,y
-grizzle	n,v
-grizzly	a,comp
-groan	n,v,er
-groat	n
-grocer	n,nopref
-grocery	n,nopref
-grog	n,ms,y
-grogshop	n
-groin	n,v
-grommet	n
-groom	n,v,er
-groove	n,v,er
-groovy	a
-grope	n,v,er
-grosbeak	n
-gross	v,a,comp
-Grosset	pc
-Grosvenor	n
-grotesque	n,a
-Groton	pc
-grotto	n
-grouch	n,v,y
-ground	n,v,er
-groundhog	n
-groundnut	n
-groundsel	n
-groundsheet	n
-groundskeeper	n
-groundskeeping	n
-groundwater	n
-groundwork	n
-group	n,v,er,va
-groupie	n
-grouse	n,v,er
-grout	n,v,er
-grove	n,nopref
-Grover	pc
-grow	vi,er,va,in
-growl	n,v,er
-grown	a,in
-grownup	n
-growth	n,in
-grub	n,v,er,ms,y
-grubstake	n,v,er
-grudge	n,v,er
-gruesome	a
-gruff	a,comp
-grumble	n,v,a,er
-Grumman	pc
-grumpy	a,comp
-grunge	n,y
-grunion	n
-grunt	n,v,er,nopref
-gryphon	n
-g's	d,nopref
-GSA	pc,nopref
-GTE	pc,nopref
-Guadalupe	n
-Guam	pc
-guanaco	n
-guanidine	n
-guanine	n
-guano	n
-guarantee	n,v
-guarantor	n
-guaranty	n
-guard	n,v,er
-guardhouse	n
-Guardia	pc
-guardian	n
-guardroom	n
-guards	man
-Guatemala	pc
-guava	n
-gubernatorial	a
-gudgeon	n
-Guenther	pc
-guerdon	n,v
-guerilla	n
-guernsey	n
-guerrilla	n
-guess	n,v,er,va
-guesstimate	n,v
-guesswork	n
-guest	n,v
-guff	n
-guffaw	n,v
-Guggenheim	n
-Guiana	pc
-guidance	n
-guide	n,v,er,va
-guidebook	n
-guideline	n
-guidepost	n
-guignol	n
-guild	n,er
-guildhall	n
-guile	n,na
-Guilford	pc
-guillemot	n
-guillotine	n,v
-guilt	n,y
-guinea	n
-Guinness	pc
-guise	n,v,er,va
-guitar	n,na
-gulag	n
-gulch	n
-gulf	n,v
-gull	n,v
-Gullah	n
-gullet	n
-gullible	a,va
-Gulliver	pc
-gully	n,v
-gulp	n,v,er
-gum	n,v,er,nopref,ms,y
-gumbo	n,a
-gumdrop	n
-gumption	n
-gumshoe	n,v
-gun	n,v,er,man,ms
-gunboat	n
-guncotton	n
-Gunderson	n
-gunfight	n,er
-gunfire	n
-gunflint	n
-gunk	n,y
-gunmetal	n
-gunnery	n
-gunny	n
-gunnysack	n
-gunplay	n
-gunpoint	d
-gunpowder	n
-gunrun	vi,er,ms
-gunshot	n
-gunsling	vi,er
-gunsmith	n
-Gunther	pc
-gunwale	n
-guppy	n
-gurdy	n,nopref
-gurgle	n,v
-Gurkha	n
-gurney	n
-guru	n
-Gus	pc
-gush	n,v,er,y
-gusset	n
-gussy	v
-gust	n,v,na,va,y
-Gustafson	n
-gustatorial	a
-gustatory	a
-Gustav	pc
-Gustave	pc
-Gustavus	pc
-gusto	n
-gut	n,v,er,na,ms,y
-Gutenberg	pc
-Guthrie	n
-Gutierrez	n
-gutsy	a,comp
-guttersnipe	n
-guttural	n,a,na
-guy	n,v
-Guyana	pc
-Guzman	n
-guzzle	v,er
-Gwen	pc
-Gwendolyn	n
-Gwyn	pc
-gybe	n,v
-gym	n
-gymnasium	n
-gymnast	n
-gymnastic	n,a
-gymnosperm	n
-gyp	n,v,ms
-gypsum	n
-gypsy	n
-gyrate	v,a,ion
-gyrfalcon	n
-gyro	n
-gyrocompass	n
-gyromagnetic	a
-gyroscope	n
-gyroscopic	n,a
-ha	n,nopref
-Haag	pc
-Haas	n
-Habakkuk	pc,nopref
-habeas	d
-haberdasher	n
-haberdashery	n
-Haberman	n
-Habib	n
-habiliment	n
-habit	n,v,va
-habitant	n,a,in
-habitat	n
-habitation	n,in
-habitual	a
-habituate	v,ion
-habitue	n
-hachure	n,v
-hacienda	n
-hack	n,v,a,er
-Hackett	n
-hackle	n,v,er,nopref
-hackmatack	n
-hackney	n,v,a
-hackneyed	a
-hacksaw	n
-hackwork	n
-had	d,nopref
-Hadamard	pc
-Hadassah	pc,nopref
-Haddad	n
-haddock	n
-Hades	pc
-Hadley	n
-hadn't	d
-Hadrian	pc
-hadron	n
-hafnium	n
-haft	n,v,nopref
-hag	n,nopref
-Hagen	n
-Hager	n
-Haggai	pc,nopref
-haggard	n,a
-haggis	n
-haggle	n,v,er
-hagiography	n,er
-Hagstrom	n
-Hague	n
-Hahn	n
-Haifa	pc
-haiku	n
-hail	n,v,er
-hailstone	n
-hailstorm	n
-Haines	n
-hair	n,ed,na,y
-hairbreadth	n,a
-hairbrush	n
-haircut	n,vi,er,ms
-hairdo	n
-hairdress	vi,er
-hairline	n,a
-hairpin	n,a
-hairsplit	vi,er,ms
-hairspring	n
-Haiti	pc
-Haitian	n
-hajj	d
-hajji	n
-Hal	pc
-halation	n,in
-halberd	n
-halcyon	n,a
-hale	n,v,er,in
-Haley	n
-half	n,a
-halfback	n
-halfhearted	a
-halfpenny	n,a
-halftone	n,v
-halfway	a
-halibut	n
-halide	n
-Halifax	pc
-halite	n
-halitosis	pc
-hall	n
-hallelujah	n
-Halley	pc
-hallmark	n,v
-hallow	v
-Halloween	n
-hallucinate	v,ion
-hallucinogen	n
-hallucinogenic	a
-hallway	n
-halo	n,v
-halocarbon	n
-halogen	n
-halogenate	v,ion
-Halsey	n
-Halstead	n
-halt	n,v,a,er
-haltere	vi
-halvah	n
-halve	v,er
-Halverson	n
-halyard	n
-ham	n,v,a,ms,y
-Hamburg	pc
-hamburger	n
-Hamilton	n
-hamlet	n
-Hamlin	n
-hammer	n,v,er,na
-hammerhead	n
-hammerlock	n
-hammock	n
-Hammond	n
-hamper	n,v
-Hampshire	pc
-Hampshirite	pc
-Hampton	n
-hamster	n
-hamstring	n,vi
-hamstrung	d
-Han	pc
-Hancock	n
-hand	n,v,er,na
-handbag	n
-handball	n
-handbill	n
-handbook	n
-handcar	n
-handcart	n
-handclasp	n
-handcraft	n,v
-handcuff	n,v
-Handel	pc
-handgrip	n
-handgun	n
-handhold	n
-handicap	n,v,er,ms
-handicraft	n,er
-handicrafts	man
-handiwork	n
-handkerchief	n
-handle	n,v,er,na
-handleable	a
-handlebar	n
-handline	n
-handmade	a
-handmaiden	n
-handoff	n
-handout	n
-handpick	v
-handrail	n
-handsbreadth	n
-handset	n
-handshake	n,vi
-handsome	a,comp
-handspike	n
-handspring	n
-handstand	n
-handwork	n
-handwoven	a
-handwrite	vi
-handwritten	d
-handy	n,v,a,comp,man
-Haney	n
-Hanford	n
-hang	n,v,er,man
-hangable	a
-hangar	n,v
-hangdog	n,a
-hangnail	n
-hangout	n
-hangover	n
-hank	n,nopref
-Hankel	pc
-hanker	v,er
-hanky	n
-Hanley	n
-Hanlon	n
-Hanna	pc
-Hannah	pc
-Hannibal	pc
-Hanoi	pc
-Hanover	pc
-Hanoverian	n,a
-Hans	pc
-Hansard	n
-Hansel	pc
-Hansen	n
-hansom	n
-Hanson	n
-Hanukkah	n
-hap	n,v,a,ms,y
-haphazard	n,a
-haploid	n,a,y
-happen	v
-happenstance	n
-happing	d
-Hapsburg	n,nopref
-harangue	n,v,er
-harass	v,er,va
-Harbin	pc
-harbinger	n,v
-Harcourt	pc
-hard	a,comp,na
-hardball	n
-hardboard	n
-hardboiled	a
-hardcover	a
-harden	v,er
-hardhat	n
-hardhead	n,ed
-hardhearted	a
-Hardin	n
-Harding	n
-hardline	vi,er
-hardpan	n
-hardscrabble	a
-hardship	n
-hardtack	n
-hardtop	n
-hardware	n
-hardwood	n,a
-hardworking	d
-hardy	a,comp,adv
-hare	n,v,nopref
-harebrained	a
-harelip	n
-harem	n
-haricot	n
-hark	v
-Harlan	n
-Harlem	pc
-harlequin	n
-Harley	n
-harlot	n
-harlotry	pc
-harm	n,v,er,na
-Harmon	n
-harmonic	n,a
-harmonica	n
-harmonious	a,in
-harmonist	n,na
-harmonium	n
-harmony	n,in
-harness	n,v
-Harold	n
-harp	n,v,er,na
-harpoon	n,v,er
-harpsichord	n
-harpy	n
-Harrell	n
-Harriet	pc
-Harriman	n
-Harrington	n
-Harris	n
-Harrisburg	pc
-Harrison	n
-harrow	n,v,er
-harry	n,v,er
-harsh	a,comp
-harshen	v
-hart	n
-Hartford	n
-Hartley	n
-Hartman	n
-harum	d
-haruspex	pc
-Harvard	pc
-harvest	n,v,er,va,man
-Harvey	n
-hash	n,v
-Hashemite	n,na
-hashish	n
-hasn't	d
-hasp	n,v
-hassle	n,v
-hassock	n
-hast	d
-haste	n,vi,y
-hasten	v,er
-Hastings	n
-hasty	a,comp
-hat	n,er,ms
-hatbox	n
-hatch	n,v,er,va
-hatchery	n
-hatchet	n
-hatchling	n
-hatchway	n
-hate	n,v,er,na,va
-Hatfield	n
-hath	d
-Hathaway	n
-hatred	n
-Hatteras	pc
-Hattie	pc
-haughty	a,comp
-haul	n,v,er,in
-haulage	n
-haunch	n
-haunt	n,v,er
-hauteur	n
-Havana	pc
-have	n,vi
-haven	n,v
-haven't	d
-Havilland	pc
-havoc	n,v
-haw	n,v
-Hawaii	pc
-Hawaiian	n,a
-hawk	n,v,er
-Hawkins	n
-hawkish	a
-Hawley	n
-hawsehole	n
-hawser	n
-hawthorn	n
-Hawthorne	n
-hay	n,v,er
-haycock	n
-Hayden	n
-Haydn	pc
-Hayes	n
-hayfield	n
-hayloft	n
-haymarket	n
-haymow	n
-Haynes	n
-hayrack	n
-hayride	n,v,er
-hayseed	n
-haystack	n
-Hayward	n
-haywire	a
-hazard	n,v
-hazardous	a
-haze	n,v,er,y
-hazel	n,a
-hazelnut	n
-HDTV	d,nopref
-he	n,nopref
-head	n,v,er,man,y
-headache	n
-headband	n
-headboard	n
-headcount	n
-headdress	n
-headfirst	a
-headgear	n
-headhunt	n,v,er
-headland	n
-headlight	n
-headline	n,v,er
-headlock	n
-headlong	a
-headmaster	n
-headmistress	n
-headmost	a
-headphone	n
-headpiece	n
-headquartered	d
-headquarters	n
-headrest	n
-headroom	d
-heads	man
-headsail	n
-headset	n
-headstand	n
-headstone	n
-headstrong	a
-headwaiter	n
-headwall	n
-headwater	n
-headway	n
-headwind	n
-headwork	n
-heal	v,er
-Healey	n
-health	n,na,y
-Healy	n
-heap	n,v,er
-hear	vi,er
-heard	d
-hearken	v
-hearsay	n
-hearse	n,v,er
-Hearst	n
-heart	n,v,nopref,y
-heartache	n
-heartbeat	n
-heartbreak	n,vi
-heartbroken	a
-heartburn	n,vi
-hearten	v,va
-heartfelt	a
-hearth	n
-hearthstone	n
-heartland	n
-heartrending	a
-heartsick	a
-heartsore	a
-heartstring	n
-heartthrob	n
-heat	n,v,er
-heath	n,er,na,y
-heathen	n,a,na
-heathenish	a
-heather	n,v,na,y
-Heathkit	pc
-Heathrow	pc
-heatstroke	n
-heave	n,v,er
-heaven	n,a
-heavenward	n
-heavy	n,a,comp
-heavyhearted	a
-heavyset	a
-heavyweight	n
-Hebe	pc
-hebephrenic	a
-Hebert	n
-hebetude	n
-Hebraic	n,a
-Hebraism	n
-Hebraist	n,na
-Hebrew	n,a
-Hecate	pc
-hecatomb	n
-heck	d,nopref
-heckle	v,er
-Heckman	n
-hectare	n
-hectic	n,a
-hectograph	n,v
-hector	n,v
-Hecuba	pc
-he'd	d
-hedge	n,v,a,er
-hedgehog	n
-hedgehop	v,er,ms
-hedgerow	n
-hedonism	n
-hedonist	n,na
-heebie	n
-heed	n,v,er,na
-heel	n,v,er,nopref
-heelpiece	n
-heft	n,v,y
-Hegelian	n,a,na
-hegemonic	a
-hegemony	n
-hegira	n
-Heidelberg	pc
-Heidi	n
-heifer	n
-heigh	d
-height	n
-heighten	v
-Heine	n
-heinous	a
-Heinrich	n
-Heinz	n
-heir	n,v
-heiress	n
-heirloom	n
-Heisenberg	pc
-heist	n,v,nopref
-held	d
-Helen	n
-Helena	pc
-Helene	pc
-Helga	pc
-heliacal	a
-helical	a
-helices	d
-helicoid	n,a
-helicopter	n,v
-heliocentric	a
-heliograph	n,v,er,y
-heliostat	n
-heliotrope	n,na
-heliotropic	n,a
-heliport	n
-helium	n
-helix	pc
-he'll	d
-hell	n,er
-hellbender	n
-hellcat	n
-hellebore	n
-Hellene	n
-Hellenic	a
-Hellenism	pc
-Hellenist	n,na
-hellfire	n
-hellgrammite	n
-hellion	n
-hellish	a
-hello	n
-helm	n,v,nopref
-helmet	n,ed,na
-Helmholtz	n
-helms	man
-Helmut	pc
-helot	n,na
-helotry	n
-help	n,v,er,na
-helpmate	n
-helpmeet	n
-Helsinki	pc
-helter	a
-helve	n
-hem	n,v,er,ms
-hematite	n
-hematology	n
-hematoma	n
-heme	n
-hemicycle	n
-Hemingway	n
-hemiola	n
-hemiplegic	n,a
-hemisphere	n
-hemispheric	n,a
-hemline	n
-hemlock	n
-hemoglobin	n
-hemolysis	pc
-hemolytic	a
-hemophilia	n,na
-hemophilic	a
-hemorrhage	n,v
-hemorrhagic	a
-hemorrhoid	n
-hemosiderin	n
-hemp	n
-Hempstead	pc
-hen	n,nopref,ms
-henbane	n
-hence	d
-henceforth	d
-henceforward	d
-henchman	n
-henchmen	pc
-Henderson	n
-Hendrick	pc
-Hendricks	n
-Hendrickson	n
-Hendrix	n
-henequen	n
-Henley	n
-henna	n,v
-hennery	n
-henpeck	v
-Henri	pc
-Henrietta	pc
-henry	n
-Hensley	pc
-Henson	n
-hep	a
-hepatic	a
-hepatica	n
-hepatitis	n
-Hepburn	n
-heptagon	n
-heptagonal	a
-heptameter	n
-heptane	n
-her	vi,ms
-Hera	pc
-Heraclitus	pc
-herald	n,v
-heraldic	n,a
-heraldry	n
-herb	n,na,y
-herbaceous	a
-herbal	n,a,na
-herbarium	n
-Herbert	n
-herbicidal	a
-herbicide	n
-herbivore	n
-herbivorous	a
-Herculean	a
-Hercules	pc
-herd	n,v,er,nopref
-herds	man
-here	pc,nopref
-hereabout	n
-hereafter	n,a
-hereby	d
-hereditary	a
-heredity	n
-Hereford	n
-herein	d
-hereinabove	d
-hereinafter	d
-hereinbefore	d
-hereinbelow	d
-hereof	d
-hereon	d
-heresy	n
-heretic	n
-hereto	d
-heretofore	d
-hereunder	d
-hereunto	d
-hereupon	d
-herewith	d
-heritable	a,va
-heritage	n
-Herkimer	pc
-Herman	n
-hermaphrodite	n,a,na
-hermeneutic	n,a
-Hermes	pc
-hermetic	n,a
-hermit	n
-hermitage	n
-Hermite	pc
-hermitian	n
-Hermosa	pc
-Hernandez	n
-hernia	n
-hero	pc,na
-Herodotus	pc
-heroes	d
-heroic	n,a
-heroin	n
-heroine	n,na
-heroism	n
-heron	n,nopref
-heronry	n
-herpes	n
-herpetology	n,na
-Herr	d
-Herrera	n
-herringbone	n,v
-Herschel	n
-herself	d
-Hershel	n
-Hershey	n
-hertz	n
-Hertzog	pc
-hesitant	a,na
-hesitate	v,er,ion
-Hesperus	pc
-Hess	n
-Hessian	n
-Hester	n
-heterocyclic	n,a
-heterodox	a,y
-heterodyne	v,a
-heterogamous	a
-heterogeneity	n
-heterogeneous	a
-heterologous	a
-heterology	n,na
-heteromorph	n,na
-heteromorphic	a
-heterosexual	n,a
-heterostructure	n,v
-heterotrophic	a
-heterozygous	a
-Hetman	n
-Hettie	pc
-Hetty	pc
-Heublein	pc
-heuristic	n,a
-Heusen	pc
-Heuser	n
-hew	v,er
-Hewett	n
-Hewitt	n
-Hewlett	pc
-hewn	d
-hex	n,v,er
-hexad	n
-hexadecimal	a
-hexagon	n
-hexagonal	a
-hexagram	n
-hexameter	n
-hexane	n
-hey	d
-heyday	n
-hi	d,nopref
-Hiatt	pc
-hiatus	n
-Hiawatha	n
-hibachi	n
-Hibbard	n
-hibernate	v,ion
-Hibernia	pc
-hibiscus	n
-hick	n,v
-Hickey	n
-Hickman	n
-hickory	n
-hid	a
-hidalgo	n
-hidden	d
-hide	n,v,er
-hideaway	n
-hidebound	a
-hideous	a
-hideout	n
-hie	v
-hierarch	n
-hierarchal	a
-hierarchic	n
-hierarchs	d
-hierarchy	n
-hieratic	n,a
-hieroglyph	n
-hieroglyphic	n,a
-Hieronymus	pc
-hierophant	n
-hifalutin	d
-Higgins	n
-higgle	v,er
-higgledy	d
-high	n,a,comp
-highball	n,v
-highboy	n
-highbrow	n,ed
-highfalutin	a
-highhanded	a
-highland	n,a,er
-highlight	n,v
-highroad	n
-hightail	v
-highway	n,man
-hijack	v,er
-hijinks	d
-hike	n,v,er
-hilarious	a
-hilarity	n
-Hilbert	pc
-Hilda	pc
-Hildebrand	n
-Hildegard	pc
-hill	n,v,er,man
-Hillary	pc
-hillbilly	n
-Hillcrest	pc
-Hillel	pc
-hillock	n,y
-hillside	n
-hilltop	n
-hilly	a,comp
-hilt	n
-Hilton	n
-hilum	n
-him	d
-Himalaya	n
-himself	d
-Hinayana	pc
-hind	n
-hinder	v,er
-Hindi	a
-hindmost	a
-hindquarter	n
-hindrance	n
-hindsight	n
-Hindu	n,a
-Hinduism	pc
-Hindustani	n
-Hines	n
-hinge	n,v
-Hinman	n
-hint	n,v,er
-hinterland	n
-Hinton	n
-hip	n,v,nopref,ms
-hippie	n
-hippo	n
-hippocampus	pc
-Hippocratic	a
-hippodrome	n
-hippopotamus	n
-hippy	n
-hipster	n
-Hiram	pc
-hire	n,v,er
-hireling	n
-Hiroshi	pc
-Hiroshima	pc
-Hirsch	n
-hirsute	a
-his	d
-Hispanic	n,a,na
-hiss	n,v,er
-histamine	n
-histidine	n
-histochemistry	n
-histogram	n
-histology	n,na
-historian	n
-historic	n,a,na
-historiography	n,er
-history	n
-histrionic	n,a
-hit	n,vi,er,ms
-Hitachi	pc
-hitch	n,v,er
-Hitchcock	n
-hitchhike	v,er
-hither	a
-hithermost	a
-hitherto	d
-hitherward	d
-Hitler	pc,na
-Hitlerian	a
-Hittite	n,a
-HIV	pc,nopref
-hive	n,v
-HMO	pc,nopref
-ho	d,nopref
-hoagie	n
-Hoagland	n
-hoagy	n
-hoar	n,y
-hoard	n,v,er
-hoarfrost	n
-hoarse	a,comp
-hoarsen	v
-hoax	n,v,er
-hob	n,v,na,ms
-Hobart	pc
-Hobbes	n
-Hobbesian	d
-hobble	n,v,er
-hobbledehoy	n
-Hobbs	n
-hobby	n,na
-hobbyhorse	n
-hobgoblin	n
-hobnail	n
-hobnob	v,er,ms
-hobo	n,v,na
-hoboes	d
-Hoboken	pc
-hoc	d
-hock	n,ed,er
-hockey	n
-hocus	v
-hod	n,nopref
-Hodge	n
-hodgepodge	n
-Hodgkin	n
-hoe	n,v,er,nopref
-hoecake	n
-hoedown	n
-Hoff	pc,man
-hog	n,v,ms
-hogan	n
-hogback	n
-hoggish	a
-hogshead	n
-hogwash	n
-hoist	v,er
-Hokkaido	pc
-hokum	n
-Holbrook	n
-Holcomb	n
-hold	n,vi,er
-holden	d
-holdfast	n
-holdout	n
-holdover	n
-holdup	n
-hole	n,v,er,na
-holeable	a
-holey	a
-holiday	n,v,er
-Holland	n
-hollandaise	n
-holler	n,v
-Hollerith	pc
-Hollingsworth	n
-Hollister	n
-hollow	n,v,a,comp
-Holloway	n
-hollowware	n
-holly	n,nopref
-hollyhock	n
-Hollywood	pc
-Holm	n
-Holman	n
-Holmdel	pc
-Holmes	n
-holmium	n
-holocaust	n
-Holocene	pc,a
-holograph	n,a
-holography	n,er
-holotype	n
-Holst	n
-Holstein	pc
-holster	n
-Holt	n
-holy	n,a,comp
-Holyoke	pc
-holystone	n,v
-homage	n,er
-hombre	n
-homburg	n
-home	n,v,a,er,na
-homebody	n
-homebound	d
-homebred	a
-homebuild	vi,er
-homecome	vi
-homegrown	a
-homeland	n
-homemade	a
-homeomorph	n,na
-homeomorphic	a
-homeopath	n
-homeopathic	n,a
-homeostasis	pc
-homeostatic	a
-homeotypic	n,a
-homeown	v,er
-Homeric	a
-homeroom	n
-homesick	a
-homespun	n,a
-homestead	n,v,er
-homestretch	n
-hometown	n
-homeward	a
-homework	n
-homey	a
-homicidal	a
-homicide	n
-homier	d
-homiest	d
-homiletic	n,a
-homily	n
-hominess	d
-hominid	n,a,nopref
-hominoid	n,a
-hominy	n
-homo	n
-homoerotic	n,a,na
-homogenate	n
-homogeneity	n
-homogeneous	a
-homograph	n
-homolog	n
-homologous	a
-homologue	n
-homology	n
-homomorph	n,na
-homomorphic	a
-homonym	n
-homonymic	a
-homonymous	a
-homonymy	n
-homophobe	n,na
-homophone	n
-homophonic	a
-homosexual	n,a
-homotopy	n
-homozygous	a
-homunculi	pc
-homunculus	pc
-honcho	n,v
-Honda	pc
-Honduran	pc
-Honduras	pc
-hone	n,v,er,nopref
-honest	a,y
-honey	n,v,a
-honeybee	n
-honeycomb	n,v
-honeydew	n
-honeymoon	n,v,er
-honeysuckle	n
-Honeywell	pc
-Hong	d,nopref
-honied	d
-honk	n,v,er
-honky	n,v,er,y
-Honolulu	pc
-honoraria	pc
-honorarium	n
-honorary	n,a
-honoree	n
-honorific	n,a
-honoris	d
-Honshu	pc
-hooch	n
-hood	n,v,na
-hoodlum	n
-hoodoo	n,v,na
-hoodwink	v,er
-hooey	pc
-hoof	n,v,er
-hoofmark	n
-hook	n,v,er,y
-hookah	n
-hookup	n
-hookworm	n
-hooligan	n,na
-hoop	n,v,er
-hoopla	n
-hooray	n
-hoosegow	n
-Hoosier	n,a
-hoot	n,v,er,nopref
-hootenanny	n
-Hoover	n
-hooves	d
-hop	n,v,er,va,nopref,ms,y
-hope	n,v,er,na
-Hopi	n
-Hopkins	n
-Hopkinsian	n
-hopscotch	n,v
-Horace	pc
-Horatio	pc
-horde	n
-horehound	n
-horizon	n
-horizontal	n,a
-hormonal	a
-hormone	n
-horn	n,ed,na,y
-hornbeam	n
-hornblende	n
-Hornblower	pc
-hornbook	n
-Horne	n
-Horner	pc
-hornet	n
-hornpipe	n
-hornswoggle	v
-horntail	n
-hornworm	n
-horology	n,na
-horoscope	n
-Horowitz	n
-horrendous	a
-horrible	n,a
-horrid	a
-horrific	a
-horrify	v
-horror	n
-hors	d,nopref
-horse	n,v,man
-horseback	n
-horsecar	n
-horsedom	d
-horseflesh	n
-horsefly	n
-horsehair	n
-horsehide	n
-horselaugh	n
-horseplay	n
-horsepower	n
-horseradish	n
-horseshoe	n,v,er
-horsetail	n
-horsewhip	v
-hortatory	a
-horticultural	a
-horticulture	n,na
-Horton	n
-Horus	pc
-hosanna	n
-hose	n,v,nopref
-Hosea	pc,nopref
-hosiery	n
-hospice	n
-hospitable	a,in
-hospital	n,a,comp,na,in
-host	n,v
-hostage	n
-hostel	n,er
-hostelry	n
-hostess	n
-hostile	n,a
-hostler	n
-hot	a,comp,ms
-hotbed	n
-hotblood	n
-hotbox	n
-hotel	n,man
-hotelier	n
-hotfoot	n,v
-hothead	n,ed
-hothouse	n,a
-hotline	n
-hotrod	n
-hotshot	n
-Houdaille	pc
-Houdini	pc
-hough	d
-Houghton	n
-hound	n,v,er
-hour	n,a
-hourglass	n,a
-house	n,v,na
-houseboat	n
-housebreak	v,er
-housebroken	a
-houseclean	v,er
-housecoat	n
-housefly	n
-household	n,a,er
-houselights	n
-housemaid	n
-housemother	n
-housetop	n
-houseware	n
-housewarming	n
-housewife	pc,a,na
-housewives	d
-housework	n
-Houston	pc
-Houyhnhnm	n
-hove	d
-hovel	n
-hover	v,er
-hovercraft	n
-how	n,nopref
-Howard	n
-howbeit	d
-how'd	d
-howdy	n
-Howe	n
-Howell	n
-however	d
-Howie	n,nopref
-howitzer	n
-howl	n,v,er
-how're	d
-howsoever	d
-howsomever	d
-hoy	n,nopref
-hoyden	n
-hoydenish	a
-hoyle	n
-Hoyt	n
-Hrothgar	n
-h's	d,nopref
-hub	n
-Hubbard	n
-Hubbell	n
-hubbub	n
-hubby	n
-hubcap	n
-Huber	n
-Hubert	pc
-hubris	n
-huckleberry	n
-huckster	n,v
-huddle	n,v,er
-Hudson	n
-hue	n
-hued	a
-huff	n,v,er,y
-Huffman	pc
-hug	n,v,er,va,nopref,ms,y
-huge	a,comp
-Huggins	n
-Hugh	pc
-Hughes	n
-Hugo	n
-Huguenot	n
-huh	d
-hula	n
-hulk	n,v
-hull	n,v,er
-hullabaloo	n
-hum	n,v,er,ms
-human	n,a
-humane	a,na,in
-humanitarian	n,a,na
-humankind	n
-humanoid	n,a
-humble	v,a,comp
-Humboldt	pc
-humbug	n,v
-humbuggery	n
-humdinger	n
-humdrum	n,a
-humerus	n
-humic	a
-humid	a
-humidify	v,er,ion
-humidistat	n
-humidor	n
-humiliate	v,ion
-humility	n
-Hummel	n
-hummingbird	n
-hummock	n,y
-humongous	a
-humoresque	n
-humorous	a
-hump	n,v,y
-humpback	n,ed
-humph	d
-Humphrey	n
-humus	n
-Hun	n
-hunch	n,v
-hunchback	n,ed
-hundred	n,a
-hundredfold	n
-hundredth	n,a
-hundredweight	n
-hung	er
-Hungarian	n,a
-Hungary	pc
-hungry	a,comp
-hunk	n,er,y
-hunt	n,v,er
-Huntington	n
-Huntley	n
-huntress	n
-hunts	man
-Huntsville	pc
-Hurd	n
-hurdle	n,v,er
-hurdy	d,nopref
-hurl	n,v,er
-Hurley	pc
-hurly	d
-Huron	n
-hurrah	n
-hurray	n
-hurricane	n
-hurry	n,v,er
-Hurst	n
-hurt	n,vi,er
-hurtful	a
-hurtle	v
-Hurwitz	n
-husband	n,v,er,man
-husbandry	n
-hush	n,v,er,a,va
-husk	n,v,er,y
-hussar	n
-hussy	n
-hustings	n
-hustle	n,v,er
-Huston	n
-hut	n,v,va,ms
-hutch	n
-Hutchins	n
-Hutchinson	n
-Hutchison	n
-Hutton	n
-Huxley	n
-Huxtable	n
-huzza	n,a
-huzzah	d
-hyacinth	n
-Hyades	pc
-hyaline	n,a
-Hyannis	pc
-Hyatt	n
-hybrid	n,a,na
-Hyde	n
-hydra	n
-hydrangea	n
-hydrant	n
-hydrate	n,v,ion
-hydraulic	n,a
-hydrazine	n
-hydride	n
-hydro	n
-hydrocarbon	n
-hydrocarbonate	n,v,ion
-hydrocephalic	n,a
-hydrochemistry	n
-hydrochloric	a
-hydrochloride	n
-hydrodynamic	n,a
-hydroelectric	a
-hydrofluoric	a
-hydrofoil	n
-hydroform	vi
-hydrogen	n
-hydrogenate	v,ion
-hydrography	n,er
-hydrology	n,na
-hydrolysis	pc
-hydrometer	n
-hydrophilic	a
-hydrophobe	n,na
-hydrophone	n
-hydroplane	n,v
-hydroponic	n,a,na
-hydropower	n
-hydroscope	n
-hydrosphere	n
-hydrostatic	n,a
-hydrotherapy	n
-hydrothermal	a
-hydrous	a
-hydroxide	n
-hydroxy	a
-hydroxyl	n
-hydroxylate	v,ion
-hyena	n
-hygiene	n,na
-hygienic	n,a
-hygrometer	n
-hygroscopic	n,a
-hying	d
-Hyman	pc
-hymen	n
-hymeneal	a
-hymenoptera	n
-hymn	n,v
-hymnal	n
-hymnbook	n
-hype	n,v,er
-hyperbola	n
-hyperbolic	n,a
-hyperboloid	n
-hyperborean	a
-hypergolic	a
-hyperopia	n
-hyperopic	a
-hyphen	n,v,na
-hyphenate	v,ion
-hypnosis	pc
-hypnotic	n,a
-hypnotism	n
-hypnotist	n
-hypoactive	a
-hypocaust	n
-hypocenter	n
-hypochondria	n,na
-hypocrisy	n
-hypocrite	n,a,na
-hypocritical	a
-hypocycloid	n
-hypodermic	n,a
-hypophyseal	a
-hypotenuse	n
-hypothalamic	a
-hypothalamus	n
-hypothermia	n
-hypothermic	a
-hypotheses	d
-hypothesis	pc
-hypothetic	n
-hypothyroid	a,na
-hypoxia	n
-hypsometer	n
-hysterectomy	n
-hysteresis	pc
-hysteria	n
-hysteric	n,a
-Hyundai	n
-IA	pc,nopref
-iambic	n,a
-Ian	pc
-iatrogenic	a
-Iberia	pc
-ibex	n
-ibid.	d,nopref
-ibis	n
-IBM	n,nopref
-Ibn	pc,nopref
-Icarus	n
-ICBM	pc,nopref
-ICC	pc,nopref
-ice	n,v,man,y
-iceberg	n
-iceboat	n
-icebox	n
-icebreaker	n
-icefall	n
-icehouse	n
-Iceland	pc
-Icelandic	n,a
-ichneumon	n
-ichthyology	n,na
-ichthyosaur	n
-icicle	n
-icky	a
-icon	n,nopref
-iconic	n,a
-iconoclasm	n
-iconoclast	n
-iconoclastic	a
-iconography	n,er
-iconology	n,na
-iconoscope	n
-icosahedra	n
-icosahedral	a
-icosahedron	n
-I'd	d,nopref
-ID	pc,nopref
-Ida	pc
-Idaho	pc
-idea	n
-ideal	n,a,na
-ideate	v,ion
-idempotent	n,a
-identical	a
-identify	v,er,ion
-identity	n
-ideograph	n
-ideography	n
-ideologue	n
-ideology	n,na
-ides	d,nopref
-idiocy	n
-idiom	n
-idiomatic	n,a
-idiosyncrasy	n
-idiosyncratic	n,a
-idiot	n,a,na
-idiotic	n,a
-idle	v,a,comp
-idly	d
-idol	n,na
-idolater	n
-idolatrous	a
-idolatry	n
-idyll	n,na
-idyllic	n,a
-i.e.	d,nopref
-IEEE	pc,nopref
-if	n,nopref,ms,y
-Ifni	pc
-igloo	n
-igneous	a
-ignite	v,er,va
-ignition	n
-ignoble	a
-ignominious	a
-ignominy	n
-ignoramus	n
-ignorant	a
-ignore	v,er
-iguana	n
-ii	pc,nopref
-iii	pc,nopref
-Ike	pc
-IL	pc,nopref
-ileitis	n
-ileum	n
-iliac	a
-Iliad	pc
-ilk	d,nopref
-I'll	d,nopref
-ill	n,nopref
-illegal	a
-illegible	a,va
-illegitimacy	n
-illegitimate	a
-illiberal	a
-illicit	a
-illimitable	a,va
-Illinois	pc
-illiquid	a
-illiteracy	n
-illiterate	n,a
-illness	n
-illogic	n
-illume	v
-illuminant	n,a
-illuminate	v,a,ion
-illuminati	pc
-illumine	n,v,na,va
-illusion	n,v,na,va
-illusionary	a
-illusory	a
-illustrate	v,ion
-illustrious	a
-Ilona	pc
-Ilyushin	pc
-I'm	d,nopref
-image	n,v,na
-imagery	n
-imaginary	n,a
-imaginate	ion
-imagine	v,er,va
-imbalance	n
-imbecile	n,a
-imbecilic	a
-imbibe	v,er
-Imbrium	pc
-imbroglio	n
-imbrue	v
-imbue	v
-imitable	a,in
-imitate	v,ion
-immanent	a,na
-immediacy	n
-immense	a
-immerse	v
-immersion	n,na
-imminent	a,na
-immolate	v,ion
-immovable	n,a
-immune	n,a,na
-immunization	n
-immunology	n,na
-immure	v,va
-imp	n,vi
-impact	n,v,ion
-impair	v,er,va
-impartation	n
-impassable	a
-impasse	n
-impasto	n
-impatient	a
-impeach	n,v,va
-impecunious	a
-impedance	n
-impede	v,er
-impedimenta	n
-impel	v,er,ms
-impend	v
-imperative	n,a
-imperial	n,a,na
-imperious	a
-imperium	n
-impersonate	v,ion
-impetigo	n
-impetuosity	n
-impetuous	a
-impetus	n
-impinge	v,va
-impish	a
-implement	n,v,er,na,va
-implementation	n,na
-implicant	n,a
-implicate	v,ion
-implicit	a
-implode	v
-implore	v
-important	a,na
-importation	n
-importunate	a
-importune	v,a,er
-impost	n,er
-impoverish	v,er,va
-imprecate	v,ion
-impregnable	a,va
-impregnate	v,a,ion
-impresario	n
-impressible	a,va
-impression	n,na,va
-imprimatur	n
-imprint	n,v,er,va
-impromptu	n,a
-improvisation	n,na
-improvisatorial	a
-improvisatory	a
-improvise	v,er
-impudent	a
-impugn	v,er
-impulsion	n
-impulsive	a
-impunity	n
-imputation	n,na,va
-impute	v,va
-in	n,nopref
-inability	n
-inaction	n,na,va
-inadvisable	a,va
-inalienable	a,va
-inalterable	a,va
-inamorata	n
-inane	n,a
-inappeasable	a
-inapproachable	a
-inapt	a
-inarguable	a
-inartistic	n,a
-inasmuch	d
-inaugural	n,a
-inaugurate	v,ion
-inboard	a
-inborn	a
-inbound	a
-inbred	d
-inbreed	v
-Inc.	d,nopref
-Inca	n
-incandescent	a
-incant	v
-incantation	n,na
-incapable	a,va
-incarcerate	v,ion
-incarnate	v,a,ion
-incendiary	n,a
-incense	n,v
-incentive	n,a
-inception	n,na,va
-inceptor	n
-incessant	a
-incest	n
-incestuous	a
-inch	n,v
-inchoate	a,ion
-inchworm	n
-incident	n,a
-incidental	n,a
-incinerate	v,ion
-incipient	a,na
-incise	v
-incision	n
-incisive	a
-incisor	n
-incivil	a
-inclination	n,na
-incline	n,v,er,va
-inclose	v
-include	v,va
-inclusion	n,na,va
-incognito	n
-income	n,vi
-incommunicado	d
-incommutable	a
-incomparable	a,va
-incompetent	n,a,na
-incomplete	a
-incompletion	n
-incomprehension	n
-incomputable	a
-inconceivable	a,va
-inconclusive	a
-incondensable	a
-inconsiderable	a
-inconsolable	a
-incontestable	a,va
-incontrollable	a
-incorporable	a
-incorporate	v,a,ion
-incorrect	a
-incorrigible	n,a,va
-increment	n,v,na
-incriminate	v,ion
-incross	n
-incrustation	n
-incubate	v,ion
-incubi	d
-incubus	n
-inculcate	v,ion
-incumbent	n,a,na
-incunabula	pc
-incur	v,er,va,ms
-incursion	n,na,va
-indebted	a
-indecent	a,na
-indecipherable	a
-indecomposable	a
-indeed	d
-indefatigable	a,va
-indefeasible	a,va
-indefinable	n,a,va
-indelible	a,va
-indelicate	a
-indemnify	v,er,ion
-indemnity	n
-indent	n,v,er
-indentation	n
-indenture	n,v
-indescribable	a
-indeterminable	a
-indeterminism	n
-index	n,v,er
-India	pc,man
-Indian	n,a
-Indiana	pc
-Indianapolis	pc
-indicant	n
-indicate	v,ion
-indices	d
-indicia	pc
-indict	v,er,ion,va
-Indies	pc
-indigene	n
-indigenous	a
-indigent	a
-indigestible	a,va
-indignant	a
-indignation	n
-indigo	n
-indirect	a,ion
-indiscoverable	a
-indispensable	n,a,va
-indispose	v
-indisposition	n
-indisputable	a
-indissoluble	a,va
-indistinct	a,ion
-indistinguishable	a
-indium	n
-individual	n,a,na
-individualism	n
-individuate	v,ion
-Indochina	pc
-Indochinese	pc
-indoctrinate	v,ion
-indole	n
-indolent	a
-indomitable	a,va
-Indonesia	pc
-indoor	n
-indrawn	d
-induce	v,er,va
-inducible	a
-inductance	n
-inductee	n
-indulge	v,er
-indulgent	a
-industrial	n,a,na
-industrialism	n
-industrious	a
-industry	n
-inebriate	n,v,a,ion
-inebriety	n
-ineducable	a
-ineffable	a,va
-ineffective	a
-inelastic	a
-ineluctable	a,va
-inept	a
-ineptitude	n
-inequality	n
-inequivalent	a
-inerrant	a
-inert	n,a
-inertance	n
-inertia	n
-inertial	a
-inescapable	a
-inessential	a,na
-inevitable	a,va
-inexact	a
-inexcusable	a
-inexperience	n,ed
-inexpert	n,a
-inexplainable	a
-inexpressible	a
-inextinguishable	a
-Inez	n
-infamy	n
-infancy	n
-infant	n,a
-infanta	n
-infanticide	n
-infantile	a,na
-infantry	n,man
-infarct	n,ion
-infatuate	v,a,ion
-infect	v,ion
-infectible	a
-infectious	a
-infer	v,er,ms
-inferable	a
-inference	n
-inferential	a
-inferior	n,a
-infernal	a
-inferno	n
-infest	v,er
-infestation	n
-infidel	n,a
-infield	n,er
-infight	vi,er
-infima	pc
-infimum	pc
-infinitesimal	n,a
-infinitive	n,a
-infinitude	n
-infinitum	pc
-infinity	n
-infirmary	n
-infix	n,v
-inflame	v,er
-inflammation	n
-inflammatory	a
-inflate	v,er,ion,va
-inflationary	a
-inflict	v,er,ion
-inflorescent	a
-influential	a
-influenza	n
-influx	n
-info	pc
-inform	v,er
-informatics	d
-information	n,na,va
-infra	d
-infract	v,ion
-infrared	n,a
-infrasonic	a
-infrastructure	n
-infrequent	a,na
-infuriate	v,a,ion
-ingenious	a
-ingenue	n
-ingenuity	n
-ingenuous	a
-Ingersoll	n
-ingest	v
-ingestible	a
-ingestion	n,na,va
-ingot	n
-Ingram	n
-ingrate	n,a
-ingratiate	v,ion
-ingredient	n,a
-ingress	n
-Ingrid	n,nopref
-ingroup	n
-inhabit	v,er,va
-inhalant	n,a
-inhere	v
-inherent	a
-inherit	v,va
-inheritance	n
-inheritor	n
-inhibit	v,er
-inhibition	n,na,va
-inhibitor	n,y
-inholding	d
-inhomogeneity	n
-inhomogeneous	a
-inhuman	a
-inhume	v
-inimical	a
-iniquitous	a
-iniquity	n
-initial	n,v,a
-initiate	n,v,a,ion
-inject	v,ion,va
-Injun	pc
-injure	v,er
-injurious	a
-injury	n
-ink	n,v,y
-inkblot	n
-inker	n
-inkling	n
-inkwell	n
-inland	n,a,er
-inlay	n,vi,er
-inlet	n
-Inman	n
-inmate	n
-inmost	d
-inn	n,nopref
-innards	n
-innate	a
-inner	n,a
-innermost	n,a
-innersole	n
-innervate	v,ion
-inning	n
-innocent	n,a,na
-innocuous	a
-innovate	v,ion
-innuendo	n,v
-inoculant	n
-inoculate	v,ion
-inoperative	a
-inordinate	a
-inpatient	n
-input	n
-inquiry	n
-inquisition	n,na,va
-inquisitor	n
-inquisitorial	a
-inroad	n
-inrush	n
-inscription	n,na,va
-inseam	n
-insect	n,a
-insecticidal	a
-insecticide	n
-insectivore	n
-insecure	a
-inseminate	v,ion
-insert	v,er,ion
-inset	n,v
-inshore	a
-inside	n,a,er
-insidious	a
-insight	n,na,nopref
-insignia	n
-insincere	a
-insinuate	v,ion
-insipid	a
-insist	v
-insistent	a,na
-insofar	d
-insolate	v,ion
-insole	n
-insolent	n,a
-insolvable	a
-insomnia	n,na
-insomuch	d
-insouciant	a
-inspect	v,ion
-inspiration	n,na
-inspirit	v
-instable	a,va
-installation	n
-instalment	n
-instant	n,a,comp,na
-instantaneous	a
-instantiate	v,ion
-instar	n
-instate	v,va
-instead	d
-instep	n
-instigate	v,ion
-instinct	n,a,ion
-instinctual	a
-institute	n,v,er,ion
-instruct	v,ion
-instructible	a
-instrument	n,v,er,na
-instrumentation	n
-insubordinate	n,a,ion
-insufferable	a
-insulant	n
-insular	a,nopref
-insulate	v,ion
-insulin	n,na
-insult	n,v,er
-insuperable	a
-insupportable	a
-insurance	n
-insure	v,er,va
-insurgent	n,a,na
-insurmountable	a
-insurrection	n,na
-intact	a
-intake	n
-integer	n
-integrable	a
-integral	n,a
-integrand	n
-integrate	v,ion
-integrity	n
-intellect	n,ion
-intellectual	n,a,na
-intelligent	a
-intelligentsia	n
-intelligible	a,va
-intend	v,er
-intendant	n,a
-intense	a
-intensify	v,er,ion
-intensive	n,a
-intent	n,a,nopref
-intention	n,ed,na
-inter	v,va
-intercalary	a
-intercalate	v,ion
-intercept	v,er,ion
-intercessor	n
-intercom	n
-interdict	n,v,ion
-interest	n,v
-interfere	v,er
-interference	n
-interferometer	n
-interim	n,a
-interior	n,a
-interject	v,ion
-interlude	n
-intermediacy	n
-intermediary	n,a
-intermit	v
-intermittent	a
-intermitting	a
-intern	n,v,na,va
-internal	n,a,na
-internecine	a
-Interpol	pc
-interpolant	n
-interpolate	v,ion
-interpret	v,er,va
-interpretation	n,na,va
-interpretive	a
-interpupillary	a
-interregnum	n
-interrogate	v,ion
-interrogatory	n,a
-interrupt	v,er,ion
-interruptible	a
-intersperse	v
-interspersion	n
-interstice	n
-interstitial	a
-interval	n
-intervale	n
-intervene	v,er
-intervenor	n
-intervention	n,na
-interviewee	n
-intestacy	n
-intestate	n,a
-intestinal	a
-intestine	n,a
-intimacy	n
-intimal	a
-intimate	n,v,a,er,ion
-intimidate	v,ion
-into	d
-intonate	v,ion
-intoxicant	n,a
-intoxicate	v,a,ion
-intractable	a,va
-intramolecular	a
-intransigent	n,a
-intransitive	a
-intrepid	a
-intricacy	n
-intricate	a
-intrigue	n,v,er
-intrinsic	n,a
-introduce	v,er
-introduction	n
-introductory	a
-introit	n
-introject	v,ion
-intromission	n
-intromit	v,ms
-intron	n
-introspect	v,ion
-introversion	n,na,va
-introvert	n,v
-intrude	v,er
-intrusion	n,na,va
-intuit	v
-intuitable	a
-Inuit	n,nopref
-inundate	v,ion
-inure	v,va
-invade	v,er
-invalid	n,v,a,na
-invasion	n,na,va
-invective	n,a
-inveigh	v,er
-inveigle	v,er,va
-invent	v,ion
-inventor	n
-inventory	n,v
-Inverness	pc
-inverse	n,a
-invert	n,v,a,er
-invertible	a
-invest	v,va
-investigate	v,ion
-investiture	n
-investor	n
-inveterate	a
-inviable	a,va
-invidious	a
-invigorate	v,ion
-inviolable	a,va
-inviolate	a
-invitation	n,na
-invite	n,v,er
-invitee	n
-invoice	n,v,na
-invoke	v,er
-involutionary	a
-involutory	n
-involve	v,er,va
-inward	n,a
-Io	pc
-iodate	n,v,ion
-iodic	a
-iodide	n
-iodine	n
-iodoform	n
-iodous	a
-ion	n
-ionic	a
-ionosphere	n
-ionospheric	a
-iota	n
-IOU	n,nopref
-Iowa	pc
-ipecac	n
-ipsilateral	a
-ipso	d
-IQ	pc,nopref
-IR	pc,nopref
-Ira	pc
-Iran	pc
-Iranian	n,a
-Iraq	pc
-Iraqi	n,nopref
-irascible	a,va
-irate	a,nopref
-ire	n,na,nopref
-Ireland	pc
-Irene	pc
-irenic	n,a
-irides	d
-iridescent	a
-iridium	n
-iris	n
-Irish	na,man
-irk	v
-irksome	a
-Irma	pc
-iron	n,v,a,er,na
-ironbound	a
-ironclad	n,a
-ironic	n,a
-ironmaster	n
-ironmonger	n
-ironmongery	n
-ironside	n
-ironstone	n
-ironware	n
-ironwood	n
-ironwork	n,er
-irony	n
-Iroquois	pc
-irrational	n,a
-Irrawaddy	pc
-irreclaimable	a
-irrecoverable	a
-irredeemable	a
-irredentism	n
-irredentist	n,a
-irrefragable	a
-irremovable	a,va
-irreplaceable	a
-irreproducible	a
-irresolute	a,ion
-irresolvable	a
-irrevocable	a,va
-irrigate	v,ion
-irritable	a,va
-irritant	n,a
-irritate	v,ion
-irrupt	v,ion
-IRS	pc,nopref
-Irvin	pc
-Irvine	n
-Irving	n
-Irwin	pc
-i's	d
-is	d,nopref
-Isaac	pc
-Isaacson	n
-Isabel	pc
-Isabella	pc
-Isaiah	pc
-ISBN	d,nopref
-isentropic	a
-Isfahan	pc
-Ising	pc
-isinglass	n
-Isis	pc
-Islam	pc,na
-Islamabad	pc
-Islamic	n,a
-island	n,v,er
-isle	n,v
-islet	n
-ism	n
-isn't	d
-isochronal	a
-isochronism	n
-isochronous	a
-isoclinal	n,a
-isocline	n
-isogonic	n,a
-isolate	v,ion
-Isolde	pc
-isomer	n
-isomeric	n,a
-isomorph	n,na
-isomorphic	a
-isopleth	n
-isosceles	d
-isostasy	n
-isotherm	n
-isothermal	a
-isotope	n
-isotopic	n,a
-isotopy	n
-isotropic	a
-isotropy	n
-Israel	pc,a
-Israeli	n,a
-Israelite	n,a
-ISSN	d,nopref
-issuant	a
-issue	n,v,er,va
-Istanbul	pc
-isthmian	n,a
-isthmus	n
-it	n,nopref
-Italian	n,a,na
-italianate	v
-italic	n,a,na
-Italy	pc
-itch	n,v,nopref,y
-it'd	d
-item	n,v,na
-iterate	v,ion
-Ithaca	pc
-itinerant	n,a,na
-itinerary	n,a
-it'll	d
-Ito	pc
-itself	d
-IT&T	pc,nopref
-ITT	pc,nopref
-IUD	n,nopref
-iv	d,nopref
-Ivan	n
-Ivanhoe	pc
-I've	d
-Iverson	n
-ivory	n
-ivy	n,ed,a
-ix	d,nopref
-Izvestia	pc
-jab	n,v,ms
-jabber	v,er
-jabberwocky	n
-Jablonsky	n
-jacaranda	n
-jack	n,v,er
-jackal	n
-jackanapes	n
-jackass	n
-jackboot	n
-jackdaw	n
-jacket	n,v
-jackhammer	n
-Jackie	pc
-jackknife	v
-jacklight	n
-Jackman	n
-jackpot	n
-jackrabbit	n
-Jackson	n
-Jacksonville	pc
-jackstraw	n
-Jacky	pc
-JACM	pc,nopref
-Jacob	pc
-Jacobean	n,a
-Jacobi	pc
-Jacobian	n
-Jacobin	n,na
-Jacobs	n
-Jacobsen	n
-Jacobson	n
-Jacobus	pc
-jacquard	n
-Jacqueline	pc
-Jacques	pc
-jacuzzi	n
-jade	n,v
-jaeger	n
-jag	n,v,er,ms,y
-jaguar	n
-jail	n,v,er
-jailbird	n
-jailbreak	n
-jailhouse	n
-Jaime	n
-Jakarta	pc
-Jake	pc
-jalapeno	n
-jalopy	n
-jalousie	n
-jam	n,v,er,ms
-Jamaica	pc
-jamb	n,va
-jambalaya	n
-jamboree	n
-James	n
-Jamestown	pc
-Jamie	n
-Jan	pc
-Jane	pc
-Janeiro	pc
-Janet	pc
-jangle	n,v,er
-Janice	pc
-Janie	n
-Janis	n
-janissary	n
-janitor	n
-janitorial	a
-janizary	n
-Janos	pc
-Jansenist	n,na
-January	n
-Janus	pc,na
-Japan	pc
-Japanese	a
-japanned	d
-jape	n,v,er
-japery	n
-jar	n,v,na,ms
-jargon	n,v,na
-Jarvin	n
-Jarvis	n
-jasmine	n
-Jason	pc
-jasper	n
-jaundice	n,v
-jaunt	n,v,a,y
-Java	pc
-Javanese	a
-javelin	n
-jaw	n,v
-jawbone	n,v,er
-jawbreak	er
-jay	n
-jaybird	n
-Jaycee	n
-jaywalk	v,er
-jazz	n,v,man,y
-jealous	a
-jealousy	n
-jean	n
-Jeanette	pc
-Jeanne	pc
-Jeannie	pc
-Jed	pc
-jeebies	d
-jeep	n
-jeer	n,v,er
-Jeff	pc
-Jefferson	n
-Jeffrey	n
-Jehovah	pc
-jejune	a
-jejunum	n
-jelly	n,v,na
-jellyfish	n
-Jenkins	n
-Jennie	pc
-Jennifer	pc
-Jennings	n
-jenny	n
-Jensen	n
-jeopard	v,na
-jeopardy	n
-jerboa	n
-jeremiad	n
-Jeremiah	n
-Jeremy	pc
-Jeres	pc
-Jericho	pc
-jerk	n,v,er,y
-jerkin	n
-jerkwater	a
-jeroboam	n
-Jerome	n
-jerry	n
-jersey	n
-Jerseyite	n
-Jerusalem	pc
-jess	n,ed
-Jesse	pc
-Jessica	pc
-Jessie	pc
-jest	n,v,er,nopref
-Jesuit	n
-jesuitic	n,a
-jesuitism	n
-Jesus	pc
-jet	n,v,ms
-jetliner	n
-jetport	n
-jetsam	n
-jettison	n,v,va
-jetty	n,v,a
-jetway	n
-Jew	n
-Jewell	n
-Jewess	n
-Jewett	n
-Jewish	a
-Jewry	pc
-jezebel	n
-JFK	pc,nopref
-jib	n,v,er,ms
-jibe	v
-Jiddah	pc,nopref
-jiffy	n
-jig	n,v,er,ms
-jiggle	n,v,er
-jiggly	a,comp
-jigsaw	n,v
-jihad	n
-Jill	pc
-jilt	n,v
-Jim	pc
-Jimenez	pc
-Jimmie	pc
-jimmy	n,v
-jingle	n,v,er
-jingly	a,comp
-jingo	n
-jingoism	n
-jingoist	n,na
-jinks	d
-jinx	n,v
-jitney	n
-jitter	v
-jitterbug	v,er,ms
-jittery	a,comp
-jive	n,v,er
-J&J	pc,nopref
-Jo	pc
-Joan	pc
-Joann	n
-Joanna	pc
-Joanne	pc
-Joaquin	pc
-job	n,v,a,er,ms
-jobholder	n
-Jocelyn	pc
-jock	n
-jockey	n,v
-jockstrap	n
-jocose	a
-jocular	a
-jocund	a
-jodhpur	n
-Jodi	n
-Jody	pc,nopref
-Joe	pc
-Joel	pc
-joey	n
-jog	n,v,er,ms
-joggle	n,v,er
-Johann	pc
-Johannes	pc
-Johannesburg	pc
-Johansen	n
-Johanson	n
-john	n,ms,y
-Johnny	pc
-johnnycake	n
-Johnson	n
-Johnston	n
-Johnstown	pc
-join	n,v,er,va
-joinery	n
-joint	n,v,a,er
-joist	n
-joke	n,v,er
-Joliet	pc
-Jolla	pc
-jollity	n
-jolly	v,a,comp
-jolt	n,v,er,y
-Jon	pc
-Jonah	pc,nopref
-Jonas	pc
-Jonathan	pc
-Jones	n
-jonquil	n
-Jordan	n
-Jordanian	n
-Jorge	pc
-Jorgensen	n
-Jorgenson	n
-Jose	pc
-Josef	pc
-Joseph	n
-Josephine	pc
-Josephson	n
-Josephus	pc
-josh	n,v,er
-Joshua	pc
-Josiah	pc
-joss	n
-jostle	n,v,er
-jot	n,v,ms
-joule	n
-jounce	n,v
-jouncy	a
-journal	n,na
-journalese	n
-journey	n,v,er,man
-joust	n,v,er
-Jovanovich	pc
-Jove	pc
-jovial	a
-Jovian	a
-jowl	n,y
-jowly	a,comp
-joy	n,v,na
-Joyce	n
-joyous	a
-joyride	n,vi,er
-joystick	n
-Jr.	d,nopref
-j's	d,nopref
-Juan	pc
-Juanita	pc
-jubilant	a
-jubilate	v,ion
-jubilee	n
-Judah	pc
-Judaic	a
-Judaism	n
-Judaist	n,na
-Judas	n
-Judd	n
-Jude	pc
-judge	n,v,er,va
-judicable	a
-judicatory	n
-judicature	n
-judicial	a
-judiciary	n,a
-judicious	a,in
-Judith	pc
-judo	n
-Judson	n
-Judy	pc
-jug	n,v,na,ms
-jugate	v,a,ion
-juggernaut	n
-juggle	n,v,er
-jugular	a
-juice	n,v,er,nopref,y
-Juilliard	pc
-jujitsu	d
-juju	n
-jujube	n
-juke	d
-jukebox	n
-Jukes	n
-Jul.	d,nopref
-julep	n
-Jules	pc
-Julia	pc
-Julie	pc
-julienne	n,v
-Juliet	pc
-Julio	pc
-Julius	pc
-Julliard	pc
-July	pc
-jumble	n,v
-jumbo	n
-jump	n,v,er,y
-Jun.	d,nopref
-junco	n
-junction	n,na,in
-juncture	n
-June	n
-Juneau	pc
-jungle	n
-jungly	a,comp
-junior	n,a
-juniper	n
-junk	n,v,er,man,y
-junkerdom	n
-junket	n,v,er
-junketeer	n,v
-junkie	n
-Juno	pc
-junta	n
-Jupiter	pc
-Jura	pc
-Jurassic	a
-jure	d,nopref
-juridic	n
-Juris	pc
-jurisdiction	n,na
-jurisprudent	n,a
-jurisprudential	a
-jurist	n,na
-juror	n
-jury	n,ed,man
-just	a
-justice	n,in
-justiciable	a
-justify	v,er,ion
-Justine	pc
-Justinian	pc
-jut	n,v,nopref,ms,y
-jute	n
-juvenal	a
-juvenile	n,a
-juxtapose	v
-juxtaposition	n,na
-Kaaba	pc
-kabob	n
-Kabuki	pc
-Kabul	pc
-Kaddish	pc
-kafir	n
-Kafka	pc
-Kafkaesque	pc
-Kahn	n
-kaiser	n,na
-Kajar	pc
-Kalamazoo	pc
-kale	n
-kaleidescope	n
-kaleidoscope	n
-kaleidoscopic	n,a
-kalends	d
-Kalmuk	pc
-Kamchatka	pc
-kamikaze	n
-Kampala	pc
-kampong	n
-Kampuchea	pc
-Kane	n
-kangaroo	n
-Kanji	pc
-Kankakee	pc
-Kansan	n
-Kansas	pc
-Kant	n
-Kantian	n,a,na
-kaolin	n
-Kaplan	n
-kapok	n
-kappa	n
-kaput	a
-Karachi	pc
-karakul	n
-Karamazov	n
-karate	n
-Karen	n
-Karl	pc
-Karla	n
-karma	n
-Karol	pc
-Karp	n
-karyotype	n
-Kashmir	n
-Kashmiri	n
-Kaskaskia	pc
-Kate	pc
-Katharine	pc
-Katherine	pc
-Kathleen	pc
-Kathryn	n
-Kathy	pc
-Katie	pc
-Katmandu	pc
-Katowice	pc
-katydid	n
-Katz	n
-Kauffman	n
-Kaufman	n
-kava	n
-Kay	pc
-kayak	n,v,er
-kayo	n,v
-Kazakhstan	pc
-kazoo	n
-Keaton	n
-Keats	n
-kedge	n,v
-keel	n,v
-keelboat	n
-keelhaul	v
-keelson	n
-keen	n,v,a,comp
-Keenan	n
-keep	n,v,er
-keepsake	n
-keg	n
-kegler	n
-keiretsu	pc
-Keith	n
-Keller	n
-Kelley	n
-Kellogg	n
-Kelly	n
-kelp	n
-Kelsey	n
-kelvin	n
-Kemp	n
-ken	n,v,ms
-Kendall	n
-Kennan	n
-Kennecott	pc
-Kennedy	n
-Kenneth	pc
-Kenney	n
-Kenny	pc
-keno	n
-Kensington	pc
-Kent	n
-Kenton	n
-Kentuckian	n
-Kentucky	pc
-Kenya	pc
-Kenyon	n
-kepi	n
-Kepler	pc
-kept	d
-kerchief	n
-kerfuffle	n
-Kermit	pc
-kern	n,v
-kernel	n
-kerosene	n
-Kerr	n
-kerry	n
-kerygma	n
-Kessler	n
-kestrel	n
-ketch	n
-ketchup	n
-ketone	n
-ketosis	pc
-Kettering	n
-kettle	n
-kettledrum	n
-Kevin	pc
-key	n,v,a
-keyboard	n,v,er
-keyed	a
-Keyes	n
-keyhole	n,a
-Keynes	n
-Keynesian	n,a,na
-keynote	n,v,er
-keypunch	n,v,er
-keystone	n
-keyway	n
-keyword	n
-khaki	n
-khan	n
-Khartoum	pc
-khedive	n
-Khmer	n
-Khrushchev	pc
-kibbutz	d
-kibbutzim	n
-kibitz	v,er
-kibitzing	d
-kibosh	n,v
-kick	n,v,er
-kickback	n
-kickoff	n
-kickshaw	n
-kid	n,v,er,nopref,ms
-Kidd	n
-Kidde	pc
-kiddie	n
-kidnap	v,er,ms
-kidney	n
-Kieffer	n
-kielbasa	n
-Kiev	pc
-Kiewit	n
-Kigali	pc
-Kikuyu	pc
-Kilgore	n
-kill	n,v,er
-killdeer	n
-killjoy	n
-kiln	n,v
-kilo	n
-kilohm	n
-kilt	n,v,a,er
-Kim	pc
-Kimball	n
-Kimberly	pc
-kimono	n
-kin	n
-kind	n,a,comp
-kindergarten	n,er
-kindergartner	n
-kindhearted	a
-kindle	v,er
-kindred	n,a
-kine	pc
-kinematic	n,a
-kinescope	n,v
-kinesic	a
-kinesthesis	pc
-kinetic	n,a
-kinfolk	n
-king	n,a,na
-kingbird	n
-kingdom	n
-kingfish	n
-kingfisher	n
-kinglet	n
-kingpin	n
-Kingsbury	n
-Kingsley	n
-Kingston	pc
-kink	n,v,y
-kinkajou	n
-Kinney	n
-kins	man
-Kinshasa	pc,nopref
-Kinshasha	pc
-kinship	d
-kiosk	n
-Kiowa	pc
-Kipling	pc
-kipper	n,v
-Kirby	n
-Kirchner	n
-Kirchoff	pc
-Kirghiz	n
-Kirgizstan	pc
-kirk	n
-Kirkland	n
-Kirkpatrick	n
-Kirov	pc
-kirsch	n
-Kirsten	pc
-kiss	n,v,er,va
-kissing	d
-kit	n,nopref
-Kitakyushu	pc
-kitchen	n
-kitchenette	n
-kitchenware	n
-kite	n,v,er
-kith	n
-kitsch	n
-kitten	n,v
-kittenish	a
-kittiwake	n
-kittle	v,a
-kitty	n
-kiva	n
-Kiwanian	n
-Kiwanis	pc
-kiwi	n
-Klan	n
-Klans	man
-klatch	n
-klatsch	n
-Klaus	pc
-klaxon	n
-kleenex	n
-Klein	n
-kleptomania	n,na
-Kline	n
-klutz	n,y
-Klux	pc
-klystron	n
-km	d,nopref
-knack	n,er
-knap	v,er,ms
-Knapp	n
-knapsack	n
-Knauer	n
-knave	n
-knavery	n
-knavish	a
-knead	v,er
-knee	n,v
-kneecap	n
-kneehole	n
-kneel	v,er
-knell	n,v
-knelt	d
-knew	d
-knick	er
-knickerbocker	n
-knickknack	n
-knife	v,er
-knifelike	a
-knight	n,v,a
-Knightsbridge	pc
-knit	v,er,ms
-knitwear	n
-knives	d
-knob	n,ed,ms,y
-knock	n,v,er
-knockdown	n,a
-knockout	n,a
-knoll	n,v
-knot	n,v,er,ms,y
-knothole	n
-Knott	n
-knout	n,v
-know	n,vi,er,va
-knoweth	d
-knowhow	d
-knowledge	n
-knowledgeable	a
-Knowles	n
-Knowlton	n
-known	n
-Knox	n
-Knoxville	pc
-knuckle	n,v,er
-knuckleball	n,v
-knucklebone	n
-Knudsen	n
-Knudson	n
-knurl	n,ed
-Knutsen	n
-Knutson	n
-koala	n
-Koch	n
-Kochab	pc
-Kodachrome	pc
-Kodak	pc
-Kodiak	pc
-Koenig	n
-Koenigsberg	pc
-kohl	n
-kohlrabi	pc
-kohlrabies	pc
-kola	n
-kolkhoz	n
-Kong	pc
-kook	n,y
-kooky	a
-kopeck	n
-Koppers	pc
-Koran	n
-Korea	pc
-kosher	v,a
-Kowalewski	n
-Kowalski	n
-kowtow	n,v
-kraal	n,v
-kraft	n
-Krakatoa	pc
-Krakow	pc
-Kramer	n
-krater	n
-Krause	n
-kraut	n
-Kremlin	pc
-Kresge	n
-Krieger	n
-krill	n
-Kris	n
-Krishna	pc
-Kristin	pc
-Kristine	n
-krona	pc
-Kronecker	pc
-kroner	d
-Krueger	n
-Kruger	n
-Kruse	n
-krypton	n
-k's	d,nopref
-KS	pc,nopref
-Ku	pc
-kudos	n
-kudzu	n
-Kuhn	n
-kulak	n
-kumquat	n
-Kurd	n
-Kurdish	a
-Kurt	pc
-kurtosis	d
-kuru	n
-Kuwait	n
-Kuwaiti	n
-kvass	n
-kwashiorkor	n
-KY	pc,nopref
-Kyle	pc
-Kyoto	pc
-kyrie	n
-Kyushu	pc
-la	n,nopref
-lab	n
-Laban	pc
-labia	pc
-labial	n,a,na
-labile	a
-lability	n
-laboratory	n
-laborious	a
-Labrador	pc
-labyrinth	n
-labyrinthine	a
-lac	n,nopref,ms
-laccolith	n
-lace	n,v,er,na,y
-lacerate	v,a,ion
-Lacerta	pc
-lacewing	n
-Lachesis	pc
-lachrymal	a
-lachrymate	v,ion
-lachrymose	a
-lack	n,v
-lackadaisic	n
-lackaday	d
-lackey	n,v
-lackluster	n,a
-laconic	n,a
-lacquer	n,v,er
-lacrosse	n
-lactase	n
-lactate	n,v,ion
-lactic	a
-lactose	n
-lacuna	n
-lacunae	pc
-lacustrine	a
-lad	n,er,nopref,ms
-laddie	n
-laden	v,a
-ladle	n,v
-lady	n,na
-ladybird	n
-ladybug	n
-ladyfern	n
-ladyfinger	n
-Lafayette	n
-lag	n,v,er,ms
-lager	n,nopref
-laggard	n,a
-lagniappe	n
-lagoon	n
-Lagos	pc
-Lagrange	pc
-Lagrangian	n
-Laguerre	pc
-Lahore	pc
-laic	a,va
-laid	d,in
-Laidlaw	pc
-lain	d
-lair	n,v
-laird	n,a
-laissez	d
-laity	n,nopref
-lake	n,v,er,y
-lakefront	a
-Lakehurst	pc
-lakeside	n
-Lally	pc
-lam	n,v,nopref,ms
-lama	n,na
-Lamar	pc
-Lamarck	pc,na
-Lamarckian	a
-lamasery	n
-lamb	n,v,er
-lambaste	v
-lambasting	n
-lambda	n
-lambert	n
-lame	v,a,comp
-lamella	n
-lamellae	pc
-lamellar	a
-lament	n,v,va
-lamentation	n
-lamina	n
-laminar	a
-laminate	n,v,a,ion
-lamp	n,nopref
-lampblack	n
-lamplight	er
-lampoon	n,v,er
-lampoonery	n
-lamprey	n
-Lana	pc
-Lancashire	pc
-Lancaster	n
-lance	n,v,er,nopref
-lanceolate	ed,a
-lancet	n
-land	n,v,er
-landau	n
-landfall	n
-landfill	n
-landform	n
-landhold	vi,er
-Landis	n
-landlady	n
-landlocked	a
-landlord	n,na
-landlubber	n,a
-landmark	n
-landmass	n
-landowner	n
-Landry	pc
-lands	man
-Landsat	n
-landscape	n,v,er
-landslide	n
-landward	a
-lane	n,nopref
-Lang	n
-Lange	n
-Langley	n
-Langmuir	n
-language	n
-languid	a
-languish	v,er,va
-languor	n
-languorous	a
-lank	a,comp,nopref,y
-Lanka	pc
-lanolin	n
-Lansing	pc
-lantern	n
-lanthanide	n
-lanthanum	n
-lanyard	n
-Lao	n,a
-Laocoon	pc
-Laos	pc
-Laotian	n
-lap	n,v,er,na,ms
-lapboard	n
-LAPD	pc,nopref
-lapdog	n
-lapel	n,ed,ms
-lapidary	n,a
-Laplace	pc
-Laplacian	n
-lappet	n
-lapse	n,v,er
-lapstrake	n,a
-lapwing	n
-Laramie	pc
-larboard	n,a
-larcenist	n,na
-larcenous	a
-larceny	n
-larch	n
-lard	n,v,er,y
-Laredo	pc
-lares	n
-large	a,comp
-largemouth	n,ed
-largess	n
-largesse	d
-larghetto	n
-largish	a
-largo	n
-lariat	n
-lark	n,v,er
-Larkin	n
-larkspur	n
-Larry	pc
-Lars	pc
-Larsen	n
-Larson	n
-larva	n
-larvae	pc
-larval	a
-larvicide	n
-laryngeal	n,a
-larynges	d
-laryngitis	n
-laryngology	n,na
-laryngoscope	n
-laryngoscopic	n,a
-laryngoscopy	n
-larynx	n
-lasagna	n
-lascar	n
-lascivious	a
-lase	er
-lash	n,v,er
-lass	n,nopref
-lassie	n
-lassitude	n
-lasso	n,v,er
-last	n,v,a,er
-Laszlo	n
-latch	n,v
-latchkey	n
-latchstring	n
-late	n,v,a,comp,ion,va
-latecome	vi,er
-lateen	n,a,er
-latent	n,a,na
-lateral	n,a
-Lateran	pc
-laterite	n
-latex	n
-lath	n,v,nopref
-lathe	n,v
-lather	n,v,er,y
-Lathrop	n
-latifundium	n
-Latin	n
-Latinate	a
-latinize	v,va,ion
-latish	a
-latitude	n
-latitudinal	a
-latitudinarian	n,a,na
-latitudinary	n
-latrine	n
-Latrobe	n
-latter	n,a,nopref
-lattice	n,v
-latticework	n
-latus	d
-Latvia	pc
-laud	n,v,va
-laudanum	n
-laudatory	a
-Lauderdale	pc
-Laue	pc
-laugh	n,v,er,va
-laughingstock	n
-Laughlin	n
-laughter	n
-launch	n,v,er
-launder	n,v,er
-launderette	n
-laundress	n
-laundry	n
-Laura	pc
-laureate	n,v,ion,man
-Lauren	pc
-Laurence	n
-Laurent	pc
-Laurentian	n
-Laurie	pc
-Lausanne	pc
-lava	n
-lavabo	n
-lavatory	n,a
-lave	v,er
-lavender	n,v
-Laverne	n
-lavish	v,a
-Lavoisier	pc
-law	n,na,man
-lawbreak	er
-lawgive	er
-lawn	n,a,y
-Lawrence	n
-lawrencium	n
-Lawson	n
-lawsuit	n
-lawyer	n
-lax	v,a,comp
-laxative	n,a
-lay	n,v,er,man
-layette	n
-layoff	n,a
-layout	n
-layover	n
-Layton	n
-layup	n
-Lazarus	pc
-laze	n,v,nopref,y
-lazybones	n
-lea	n,nopref
-leach	n,v,er,va
-leachate	v
-lead	n,v,a,er,y
-leaden	a
-leadeth	d
-leadoff	n
-leads	man
-leaf	n,v,na,y
-leaflet	n
-league	n,v,er
-Leah	n
-leak	n,v,er,y
-leakage	n
-lean	n,v,er,a
-Leander	pc
-Leanne	n
-leap	n,v,er
-leapfrog	n,v,er,ms
-leapt	d
-Lear	pc
-learn	v,er,va
-lease	n,v,er,va
-leasehold	n,er
-leash	n,v
-least	n,a
-leastwise	d
-leather	n,v
-leatherback	n
-leatherneck	n
-leatherwork	n
-leathery	a
-leave	n,v,er
-leaven	n,v
-Leavenworth	pc
-Lebanese	pc
-Lebanon	pc
-lebensraum	n
-Lebesgue	pc
-lecher	n
-lecherous	a
-lechery	n
-lecithin	n
-lectern	n
-lectionary	n
-lector	n,nopref
-lecture	n,v,er
-led	d
-lederhosen	n
-ledge	n,er
-lee	n,a
-leeboard	n
-leech	n,v
-leek	n
-leer	n,v,er,nopref
-leery	a
-leeward	n,a
-leeway	n
-left	n,a,na
-leftmost	a
-leftover	n,a
-leftward	n
-lefty	n
-leg	n,v,man,ms,y
-legacy	n
-legal	n,a,na
-legalese	n
-legate	n,v,ion,man
-legatee	n,nopref
-legato	d
-legend	n
-legendary	a
-Legendre	pc
-legerdemain	n
-leghorn	n
-legible	a,va
-legion	n
-legionary	n,a
-legionnaire	n
-legislate	v,ion
-legislature	n
-legit	d
-legitimacy	n
-legitimate	v,a,ion
-Lego	n
-legume	n
-leguminous	a
-Lehigh	pc
-Lehman	n
-Leigh	n
-Leighton	n
-Leila	pc
-leisure	n,a
-leitmotif	n
-leitmotiv	n
-Leland	pc
-lemma	n
-lemming	n
-lemon	n,y
-lemonade	n
-Lemuel	pc
-lemur	n
-Len	pc
-Lena	pc
-lend	vi
-lender	n
-length	n,y
-lengthen	v,er
-lengthways	d
-lengthwise	a
-lenient	a,na
-Lenin	pc,na
-Leningrad	pc
-Leninism	pc
-Leninist	n,a
-lenity	n
-Lennox	pc
-Lenny	pc
-lens	n,v
-lensing	n
-lent	pc
-Lenten	a
-lenticular	a
-lentil	n
-lento	d
-Leo	n
-Leon	pc
-Leona	pc
-Leonard	n
-Leonardo	pc
-Leone	pc
-Leonid	n
-leonine	a
-leopard	n
-Leopold	n
-leotard	n
-leper	n
-lepidoptera	pc
-leprechaun	n
-leprosy	n
-leprous	a
-lepton	n
-Leroy	n
-lesbian	n,a,na
-lesion	n
-Lesley	pc
-Leslie	pc
-Lesotho	pc
-less	n,a,er
-lessee	n
-lessen	v
-lesson	n,v
-lessor	n
-lest	d,nopref
-Lester	n
-let	n,vi,er,ms
-letdown	n
-lethal	n,a
-lethargic	n,a
-lethargy	n
-Lethe	pc
-Letitia	pc
-letter	n,v,er,man
-letterhead	n
-letterpress	n
-Lettish	a
-lettuce	n
-letup	n
-leukemic	a
-leukocyte	n
-levee	n,v
-levelheaded	a
-lever	n,v,nopref
-leverage	n,v
-Levi	n
-leviathan	n
-Levin	n
-Levine	n
-Levinson	n
-levitate	v,ion
-Levite	n
-Leviticus	pc
-Levitt	n
-levity	n
-levo	a,nopref
-levorotary	n
-levorotation	n
-levorotatory	a
-levy	n,v,er,va
-Lew	pc
-lewd	a,comp
-lewis	n
-lexeme	n
-lexical	a
-lexicography	n,er
-lexicon	n
-Lexington	pc
-Leyden	pc
-liable	a,va
-liaison	n
-liana	n
-liar	n
-lib	v,er,nopref,ms
-libation	n
-Libby	pc
-liberal	n,a,na
-liberate	v,ion
-Liberia	pc
-libertarian	n,a,na
-libertine	n,a,na
-liberty	n
-libidinal	a
-libidinous	a
-libido	n
-librarian	n
-library	n
-librate	ion
-librettist	n
-libretto	n
-Libreville	pc
-Libya	pc
-lice	pc,nopref
-licensee	n
-licensor	n
-licentious	a
-lichee	n
-lichen	n,v
-licit	a
-lick	n,v,er
-lid	n,v,nopref,ms
-lido	n
-lie	n,nopref
-Liechtenstein	pc
-lied	er
-lief	a
-lien	n,nopref
-lieu	d
-lieutenant	n,a,na
-life	n,er,na,man
-lifeblood	n
-lifeboat	n
-lifeguard	n
-lifeline	n
-lifelong	a
-lifer	n
-lifesaver	n
-lifesaving	n,a
-lifespan	n
-lifestyle	n
-lifetime	n
-LIFO	pc,nopref
-lift	n,v,er,man
-liftoff	n
-ligament	n
-ligamentary	a
-ligand	n
-ligate	v,ion
-ligature	n
-Ligget	n
-Liggett	n
-light	n,v,a,comp
-lighten	v,er
-lighterage	n
-lightface	n,ed
-lightfast	a
-lighthearted	a
-lighthouse	n
-lightish	a
-lightning	n,v,a
-lightproof	a
-lightsome	a
-lightweight	n,a
-lignin	n
-lignite	n,na
-lignum	d
-like	n,v,a,er,va
-liken	v
-likewise	d
-Lila	pc
-lilac	n
-Lilian	pc
-Lilith	pc
-Lillian	pc
-Lillie	n
-lilliputian	a
-Lilly	pc
-lilt	n,v
-lily	n,ed,a
-Lima	pc
-limb	n,v,er
-limbic	a
-limbo	n
-Limburger	n
-lime	n,v,a
-limelight	n,v,er
-limerick	n
-limestone	n
-limey	n,nopref
-limit	n,v,er,va
-limitation	n,na,va
-limn	v,er
-limnology	n,na
-limo	n
-limousine	n
-limp	n,v,a,comp
-limpet	n
-limpid	a
-limpkin	n
-Lin	pc
-linchpin	n
-Lincoln	n
-Lincolnesque	a
-Lind	n
-Linda	pc
-lindane	n
-Lindberg	n
-Lindbergh	n
-linden	n
-Lindholm	n
-Lindquist	n
-Lindsay	n
-Lindsey	pc
-Lindstrom	n
-line	n,v,man
-lineage	n
-lineal	a
-lineament	n,na
-linear	a,na
-lineation	n
-linebacker	n
-linen	n,a
-liner	n
-lineup	n
-linger	v,er
-lingerie	n,a
-lingo	n
-lingua	n,nopref
-lingual	a
-linguist	n,na
-liniment	n
-link	n,v,er
-linkage	n
-linkup	n
-Linnaean	a
-Linnean	a
-linoleum	n
-Linotype	pc
-linseed	n
-lint	n,y
-lintel	n
-Linus	pc
-lion	n,na
-Lionel	pc
-lioness	n
-lionhearted	a
-lip	n,v,ms,y
-lipid	n
-lipoma	n
-Lippincott	pc
-lipread	vi
-Lipschitz	pc
-Lipscomb	n
-lipstick	n
-Lipton	n
-liquefaction	n
-liquefy	v,er
-liqueur	n
-liquid	n,a,na
-liquidate	v,ion
-liquidus	pc
-liquor	n,v
-lira	n
-Lisa	pc
-Lisbon	pc
-Lise	pc
-lisle	n
-lisp	n,v,er
-Lissajous	pc
-lissome	a
-list	n,v,er
-listen	n,v,er,va,nopref
-lit	d
-litany	n
-literacy	n
-literal	n,a,na
-literary	a
-literate	n,a,ion
-literati	d
-literature	n
-lithe	a
-lithic	n,a
-lithium	n
-lithograph	n,v,er
-lithography	n,na
-lithology	n
-lithosphere	n
-lithospheric	a
-Lithuania	pc
-litigant	n,a
-litigate	v,ion
-litigious	a
-litmus	n
-litter	n,c
-litterbug	n
-little	n,a,comp
-littleneck	n
-Littleton	n
-Litton	n
-littoral	n,a
-liturgic	n
-liturgy	n
-live	v,a,er,va
-livelong	a
-liven	v
-Livermore	pc
-Liverpool	pc
-liverwort	n
-liverwurst	n
-livery	n,v,man
-livestock	n
-liveth	d
-livid	a
-Livingston	n
-livre	d
-Liz	pc
-lizard	n
-Lizzie	pc
-llama	n
-Lloyd	n
-lo	d,nopref
-load	n,v,er,va
-loaf	n,v,er
-loam	n,y
-loan	n,v,er
-loath	v,a
-loathe	v,er
-loathsome	a
-loaves	d
-lob	n,v,ms
-lobar	a
-lobate	ed,a,ion
-lobby	n,v,er,na
-lobe	n,ed
-loblolly	n
-lobo	n
-lobotomy	n
-lobscouse	n
-lobster	n,man
-lobular	a
-lobule	n
-local	n,a
-locale	n,a,na
-locate	v,er,ion,va
-loci	d
-lock	n,v,er,va
-Locke	n
-locket	n
-Lockhart	n
-Lockheed	pc
-Lockian	pc
-lockjaw	n
-locknut	n
-lockout	n
-locksmith	n
-lockstep	n
-lockstitch	n,v
-lockup	n
-Lockwood	n
-loco	n,v,a,na
-locomotion	n,na,va
-locomotor	a,y
-locus	n
-locust	n
-locution	n
-locutor	n,y
-lode	n,nopref
-lodestone	n
-lodge	n,v,er,va
-lodgepole	n
-Lodowick	pc
-Loeb	n
-l'oeil	d
-loess	n
-loft	n,v,y
-log	n,v,er,ms,y
-Logan	n
-logarithm	n
-logarithmic	a
-logbook	n
-loge	n,na
-loggerhead	n
-loggia	n
-logic	n
-logician	n
-logistic	n,a
-logjam	n
-logo	n,nopref
-logotype	n
-logroll	v,er
-logy	a
-Lohengrin	n
-loin	n
-loincloth	n
-Loire	pc
-Lois	pc
-loiter	v,er
-Loki	pc
-Lola	pc
-loll	n,v
-lollipop	n
-lolly	n
-lollygag	v,ms
-lollypop	n
-Lomb	pc
-London	pc
-Londoner	n
-lone	a
-lonely	a,comp
-lonesome	n,a
-long	n,v,a,comp
-longboat	n
-longbow	n
-longevity	n
-Longfellow	pc
-longhair	n
-longhand	n
-longhorn	n
-longhouse	n
-longish	a
-longitude	n
-longitudinal	a
-longleg	n
-longshoreman	pc
-longshoremen	pc
-longspur	n
-longstanding	d
-longtime	d
-longueur	n
-Lonnie	n
-look	n,v,er
-lookout	n
-lookup	n
-loom	n,v
-Loomis	n
-loon	n,y
-loop	n,v,er,nopref
-loophole	n,v
-loopy	n,v,er,y,nopref
-loose	v,a,comp
-looseleaf	d
-loosen	v
-loosestrife	n
-loot	n,v,er
-lop	n,v,er,nopref,ms,y
-lope	n,v,er
-Lopez	n
-lopsided	a
-loquacious	a
-loquacity	n
-loquat	n
-loran	n
-lord	n,v,a
-lordling	n
-lordosis	d
-lore	n
-Lorelei	pc
-Loren	pc
-Lorene	n
-Loretta	pc
-lorgnette	n
-Lorinda	pc
-loris	n
-Lorraine	pc
-lorry	n
-Los	pc
-lose	vi,er,va
-loss	n,nopref,y
-lost	a
-lot	n,v,nopref,ms
-lothario	n
-lotion	n
-Lotte	pc
-lottery	n
-Lottie	pc
-lotto	n
-lotus	n
-Lou	pc
-loud	a,comp
-loudmouth	ed
-loudspeak	er
-Louis	n
-Louisa	pc
-Louise	pc
-Louisiana	pc
-Louisville	pc
-lounge	n,v,er
-Lounsbury	n
-loupe	n
-Lourdes	pc
-louse	n,v,y
-lout	n,v
-loutish	a
-Louvre	pc
-love	n,v,er,va
-lovebird	n
-Lovelace	n
-Loveland	n
-lovelorn	a
-lovely	a,comp
-lovemaking	n
-lovesick	a
-loveth	d
-low	n,v,a,comp
-lowborn	a
-lowboy	n
-lowbrow	n,ed
-lowdown	n
-Lowe	n
-Lowell	n
-lower	n,v
-lowerclass	man
-lowermost	a
-Lowery	pc
-lowland	n,a,er
-Lowry	n
-lox	n
-loxodrome	n
-loyal	a,na
-loyalty	n
-lozenge	n
-LP	n,nopref
-LPG	pc,nopref
-l's	d,nopref
-LSI	pc,nopref
-Ltd.	d,nopref
-LTV	pc,nopref
-luau	n
-lubber	n,a
-Lubbock	pc
-lube	n
-Lubell	n
-lubricant	n,a
-lubricate	v,ion
-lubricious	a
-lubricity	n
-Lucas	n
-lucent	a,na
-Lucerne	pc
-Lucia	pc
-Lucian	pc
-lucid	a
-Lucifer	pc
-Lucille	pc
-Lucinda	n,nopref
-Lucite	pc
-Lucius	pc
-luck	n,nopref,y
-lucrative	a
-lucre	n
-Lucretia	pc
-Lucretius	pc
-lucubrate	v,ion
-Lucy	pc
-Luddite	n
-ludicrous	a
-Ludlow	n
-Ludwig	n
-luff	n,v
-Lufthansa	pc
-Luftwaffe	pc
-lug	n,v,er,ms
-luge	n
-luggage	n
-lugsail	n
-lugubrious	a
-Luis	pc
-Luke	pc
-lukewarm	a
-Lula	n
-lull	n,v
-lullaby	n
-lulu	n
-lumbago	n
-lumbar	a
-lumber	n,v,a,comp,man
-lumberjack	n
-lumberyard	n
-lumen	n
-luminaire	n
-luminal	a
-luminance	n
-luminary	n,a
-luminesce	v
-luminescent	a
-luminiferous	a
-luminosity	n
-luminous	a
-lummox	n
-lump	n,v,er,y
-lumpen	d
-lumpish	a
-Lumpur	pc
-luna	n,nopref
-lunacy	n
-lunar	a,y
-lunate	a,ion
-lunatic	n,a
-lunch	n,v,er
-luncheon	n
-luncheonette	n
-lunchroom	n
-lunchtime	d
-Lund	n
-Lundberg	n
-Lundquist	n
-lune	n
-lunette	n
-lung	n,nopref
-lunge	n,v,er
-lungfish	n
-lunker	n
-lunkhead	n,ed
-lupine	n,a
-Lura	pc
-lurch	n,v,er
-lure	n,v,er
-lurid	a
-lurk	v,er
-Lusaka	pc
-luscious	a
-lush	n,ed,a
-lust	n,v,na,nopref,y
-lustrous	a
-lutanist	n
-lute	n,v,na
-luteal	a
-lutetium	n
-Luther	n
-Lutheran	n,a,na
-Lutz	n
-lux	n,nopref
-luxe	n
-Luxembourg	pc
-luxuriant	a,na
-luxuriate	v
-luxurious	a
-luxury	n,a
-Luzon	pc
-lyceum	n
-lycopodium	n
-Lydia	pc
-lye	n,nopref
-lying	a
-Lykes	n
-Lyle	pc
-Lyman	n
-Lyme	pc
-lymph	n
-lymphatic	a
-lymphocyte	n
-lymphocytic	a
-lymphoma	n
-lynch	v,er
-Lynchburg	pc
-Lynda	n
-Lynn	n
-Lynne	n
-lynx	n
-Lyon	pc
-lyonnaise	a
-Lyons	n
-Lyra	n
-lyre	n,na
-lyrebird	n
-lyric	n,a,na
-lyricism	n
-lyse	n,v,er,na
-Lysenkoism	pc
-lysergic	a
-lyses	d
-lysine	n
-lysis	pc
-ma	pc,nopref
-ma'am	n
-Mabel	pc
-Mac	pc
-macabre	a
-macadam	n,na
-macadamia	n
-macaque	n
-macaroni	pc
-macaroon	n
-MacArthur	n
-Macassar	pc
-macaw	n
-Macbeth	n
-MacDonald	n
-mace	n,v,nopref
-Macedon	pc
-Macedonia	pc
-macerate	v,er,ion
-MacGregor	n
-Mach	pc
-machete	n
-Machiavelli	pc
-Machiavellian	n,a,na
-machicolate	v,ion
-machination	n
-machine	n,v,na,va
-machinery	n
-machismo	d
-macho	d
-macintosh	n
-Mack	n
-MacKenzie	n
-mackerel	n
-Mackey	n
-Mackinac	pc
-mackinaw	n
-mackintosh	n
-MacMillan	n
-Macon	pc
-macrame	n
-macro	n
-macrocosm	n
-macroeconomic	n,a
-macromolecular	a
-macromolecule	n
-macron	n
-macrophage	n
-macroprocessor	n
-macroscopic	n,a
-macrostructure	n
-maculate	a,in
-Macy	pc
-mad	n,v,a,comp,man,ms
-Madagascar	pc
-madam	n
-Madame	pc
-madcap	n,a
-madden	v
-maddish	a
-Maddox	n
-made	a
-Madeira	n
-Madeleine	pc
-Madeline	pc
-mademoiselle	n
-madhouse	n
-Madison	n
-Madonna	n
-madras	n
-Madrid	pc
-madrigal	n,na
-Madsen	n
-Mae	pc
-maelstrom	n
-maestoso	a
-maestro	n
-Mafia	pc
-magazine	n,na
-magdalen	n
-Magdalene	pc
-Magellan	n,na,nopref
-magenta	n
-Maggie	pc
-maggot	n,y
-magi	d
-magic	n,a
-magician	n
-magisterial	a
-magistracy	n
-magistrate	n
-magma	n
-magmatic	a
-magna	d
-magnanimity	n
-magnanimous	a
-magnate	n
-magnesia	n
-magnesite	n
-magnesium	n
-magnet	n,na
-magnetic	n,a
-magnetite	n,na
-magneto	n
-magneton	n
-magnetron	n
-magnificat	n
-magnificent	a
-magnify	v,er,ion
-magniloquent	a
-magnitude	n
-magnolia	n
-magnum	n
-Magnuson	n
-Magog	pc
-magpie	n
-Magruder	n
-maguey	n
-Magyar	n
-maharaja	n
-maharajah	n
-maharani	n
-mahatma	n
-Mahayana	n
-Mahayanist	pc
-mahogany	n
-Mahoney	n
-mahout	n
-maid	n,nopref
-maiden	n,a
-maidenhair	n
-maidenhead	n
-maidservant	n
-Maier	n
-mail	n,v,er,va,man
-mailbag	n
-mailbox	n
-maim	n,v,er
-main	n,v,a
-Maine	pc
-mainland	n,er
-mainline	n,v
-mainmast	n
-mainsail	n
-mainsheet	n
-mainspring	n
-mainstay	n
-mainstream	n,v
-maintain	v,er,va
-maintenance	n
-maintop	n
-maitre	d
-maize	n
-majestic	n,a
-majesty	n
-major	n,v,a
-majorette	n
-majuscule	n,a
-make	n,v,er,va
-makeshift	n,a
-makeup	n
-Malabar	pc
-Malachi	pc,nopref
-malachite	n
-maladapt	ed
-maladaptation	n
-maladaptive	a
-maladjust	v,er,va
-maladjustive	a
-maladminister	v
-maladministration	n
-maladroit	a
-malady	n
-Malagasy	n,a
-malaise	n
-malaprop	a,na
-malaria	n
-malarial	a
-malarkey	pc
-malathion	n
-Malawi	pc
-Malay	n
-Malaya	pc
-Malaysia	pc
-Malcolm	n
-malconduct	n
-malcontent	n,a
-Malden	pc
-maldistribute	v,ion
-Maldive	pc
-male	n,a
-maledict	v,a,ion
-maledictory	a
-malefaction	n
-malefactor	n
-maleficent	a
-malemute	n
-malevolent	a
-malfeasant	n,a
-malformation	n
-malformed	a
-malfunction	n,v
-malgre	d
-Mali	pc
-malice	n
-malicious	a
-malign	v,a
-malignant	n,a,na
-malinger	n,v,er
-mall	n,nopref
-mallard	n
-malleable	a,va
-mallet	n
-Mallory	n
-mallow	n
-malnourished	a
-malnutrition	n
-malocclusion	n
-malodorous	a
-Malone	n
-Maloney	n
-malposed	a
-malpractice	n
-Malraux	pc
-malt	n,v,y
-Malta	pc
-Maltese	a
-Malthusian	n,a,na
-Malton	pc
-maltose	n
-maltreat	v,va
-mama	n
-mamba	n
-mambo	n,v
-Mamie	pc
-mamma	n
-mammal	n
-mammalian	n,a
-mammalogy	n
-mammary	d
-mammograph	n
-mammography	n
-mammon	n,na
-mammoth	n,a
-mammy	n
-man	pc,v,a,er,na,adv,ms
-mana	n,nopref
-manacle	n,v
-manage	n,v,er,va
-manageable	a,va
-managerial	a
-Managua	pc
-Manama	pc
-manatee	n
-Manchester	n
-Manchu	n,a
-mandala	n
-mandamus	n
-mandarin	n,a,na
-mandate	n,v,ion
-mandible	n
-mandolin	n,na
-mandrake	n
-mandrel	n
-mandrill	n
-Mandy	pc
-mane	n,ed
-Manfred	pc
-manganese	n
-mange	n,er,y
-mangle	n,v,er
-mango	n
-mangrove	n
-manhandle	v
-Manhattan	pc
-manhole	n
-manhunt	n
-mania	n,na
-maniacal	a
-manic	d,nopref
-manicotti	pc
-manicure	n,v,na
-manifest	n,v,a,er
-manifestation	n,na,va
-manifesto	n,v
-manifold	n,v,a
-manikin	n
-manila	n,a
-manioc	n
-maniple	n
-manipulable	a,va
-manipulate	v,ion,va
-Manitoba	pc
-mankind	n
-Manley	n
-Mann	n
-manna	n
-mannequin	n
-mannerism	n
-mannikin	n
-mannish	a
-manometer	n
-manor	n
-manorial	a,na
-manpower	pc
-manque	n
-manrope	n
-Mans	pc
-mansard	n
-manse	n
-manservant	n
-Mansfield	n
-mansion	n
-manslaughter	n
-mantel	n,nopref
-mantic	a
-mantilla	n
-mantis	n
-mantissa	n
-mantle	n,v,va
-mantlepiece	n
-mantra	n
-mantrap	n
-manual	n,a
-Manuel	pc
-manufactory	n,a
-manufacture	n,v,er,va
-manumission	n
-manumit	v,ms
-manure	n,v,er
-manuscript	n,a
-Manville	n
-Manx	a
-many	d,nopref
-manzanita	n
-Mao	pc,na
-Maori	n
-map	n,v,er,ms
-maple	n
-mar	n,v,nopref,ms
-marathon	n,er
-maraud	v,er
-maravedi	n
-marble	n,v,a
-Marc	pc
-Marceau	pc
-Marcel	pc
-Marcella	n
-Marcello	pc
-march	n,v,er
-marchioness	n
-Marcia	pc
-Marco	pc
-Marconi	a
-Marcus	pc
-Marcy	n
-Mardi	pc
-mare	n,na
-Margaret	pc
-margarine	n
-margay	n
-marge	n
-Margery	pc
-Margie	n
-margin	n,v
-marginal	a
-marginalia	n
-Margo	pc
-Margot	n
-Marguerite	pc
-maria	n
-mariachi	n
-Marian	n
-Marianne	n
-Marie	pc
-Marietta	pc
-marigold	n
-marijuana	n
-Marilyn	pc
-marimba	n
-Marin	pc
-marina	n
-marinade	n,v
-marinate	v
-marine	n,a,er
-Marino	pc
-Mario	pc
-Marion	n
-marionette	n
-marital	a
-maritime	a
-marjoram	n
-Marjorie	pc
-Marjory	pc
-mark	n,v,er,va
-markdown	n
-market	n,v,er,va
-marketeer	n
-marketplace	n
-Markham	n
-Markov	pc
-Markovian	pc
-marks	man
-markup	n
-marl	n,ed
-Marlboro	pc
-Marlborough	pc
-Marlene	pc
-marlin	n
-marline	n
-marlinspike	n
-Marlowe	n
-marly	a
-marmalade	n
-marmoset	n
-marmot	n
-maroon	n,v
-marque	d
-marquee	n
-marquess	n
-marquetry	pc
-Marquette	pc
-marquis	n
-marquise	n
-marriage	n
-marriageable	a
-married	n,a
-Marrietta	pc
-Marriott	pc
-marrow	n
-marrowbone	n
-marry	v
-Marseilles	pc
-marsh	n,y
-Marsha	pc
-Marshall	n
-marshland	n
-marshmallow	n
-marsupial	n,a
-mart	n,v,nopref
-marten	n
-martensite	n,na
-Martha	pc
-martial	v,a
-Martian	n,a
-martin	n
-martinet	n
-Martinez	pc
-martingale	n
-martini	n
-Martinique	pc
-Martinson	n
-Marty	pc
-martyr	n,v,na
-martyrdom	n
-Marva	n
-Marvin	n
-Marx	n,na
-Marxian	a
-Mary	n
-Maryann	n
-Maryland	pc
-marzipan	n
-mascara	n
-mascot	n
-masculine	n,a,na
-maser	n,nopref
-Maseru	pc
-mash	n,v,er,nopref
-mashie	n
-mask	n,v,er
-masochism	n
-masochist	n,na
-mason	n,v
-Masonic	a
-Masonite	pc
-masonry	n
-masque	n,er
-masquerade	n,v,er
-mass	n,v,a,y
-Massachusetts	pc
-massacre	n,v,er
-massacring	d
-massage	n,v,er
-masseur	n
-Massey	n
-massif	n
-massive	a
-mast	n,v,er
-mastectomy	n
-mastermind	n,v
-masterpiece	n
-masterwork	n
-mastery	n
-masthead	n
-mastic	n
-masticate	v,ion
-mastiff	n
-mastitis	n
-mastodon	n
-mastoid	n,a
-mastoidectomy	n
-masturbate	v,ion
-mat	n,v,ms
-matador	n
-match	n,v,er,va
-matchbook	n
-matchbox	n
-matchlock	n
-matchstick	a
-mate	n,v
-Mateo	pc
-mater	n,nopref
-material	n,a,na,in
-materiel	n
-maternal	a
-maternity	n
-matey	a,comp
-math	n
-mathematic	n
-mathematician	n
-Mathematik	pc
-Mathews	n
-Mathewson	n
-Mathias	n
-Mathieu	n
-Mathis	n
-Matilda	pc
-matinal	a
-matinee	n
-matins	n
-Matisse	pc
-matriarch	pc
-matriarchal	a
-matriarchs	d
-matriarchy	n
-matrices	d
-matricide	n
-matriculate	v,ion
-matrilineal	a
-matrimonial	a
-matrimony	n
-matrix	n
-matron	n,a,na
-Matson	n
-Matt	pc
-matte	n,ed,er
-Matthew	pc
-Matthews	n
-Mattie	n
-mattock	n
-mattress	n
-Mattson	n
-maturate	v,ion
-mature	n,v,a,comp,in
-maudlin	a
-maul	n,v,er
-maunder	v,er
-Maureen	pc
-Maurice	pc
-Maurine	pc
-Mauritania	pc
-Mauritius	pc
-mausoleum	n
-mauve	n
-maverick	n
-Mavis	pc
-maw	n
-mawkish	a
-Mawr	pc
-Max	pc,nopref
-maxilla	n
-maxim	n,na
-maxima	d
-maximal	a,na
-Maximilian	pc
-maximum	n,a
-Maxine	pc
-maxwell	n
-Maxwellian	pc
-may	pc
-Maya	n
-mayapple	n
-maybe	d
-Mayer	n
-mayest	d
-Mayfair	pc
-mayflower	n
-mayfly	n
-mayhap	d
-mayhem	n
-Maynard	n
-mayn't	d
-Mayo	pc
-mayonnaise	n
-mayor	n
-mayoral	a
-mayoralty	n
-Mays	n
-mayst	d
-Mazda	pc
-maze	n,v,er,y
-mazurka	n
-MBA	n,nopref
-Mbabane	pc
-MC	n,nopref
-McAdams	n
-McAllister	n
-McBride	n
-McCabe	n
-McCall	n
-McCann	n
-McCarthy	n,na
-McCarty	n
-McCauley	n
-McClain	n
-McClellan	n
-McClure	n
-McCluskey	n
-McConnel	n
-McConnell	n
-McCormick	n
-McCoy	n
-McCracken	n
-McCullough	n
-McDaniel	n
-McDermott	n
-McDonald	n
-McDonnell	n
-McDougall	n
-McDowell	n
-McElroy	n
-McFadden	n
-McFarland	n
-McGee	n
-McGill	n
-McGinnis	n
-McGovern	n
-McGowan	n
-McGrath	n
-McGraw	n
-McGregor	n
-McGuire	n
-McHugh	n
-McIntosh	n
-McIntyre	n
-McKay	n
-McKee	n
-McKenna	n
-McKenzie	n
-McKeon	n
-McKesson	n
-McKinley	n
-McKinney	n
-McKnight	n
-McLaughlin	n
-McLean	n
-McLeod	n
-McMahon	n
-McMillan	n
-McMullen	n
-McNally	n
-McNamara	n
-McNaughton	n
-McNeil	n
-McPherson	n
-M.D.	d,nopref
-MD	pc,nopref
-me	d
-mead	n
-Meade	n
-meadow	n
-meadowland	n
-meadowlark	n
-meadowsweet	n
-meal	n,nopref
-mealtime	n
-mealy	a,comp
-mealybug	n
-mean	n,a,comp,y
-meander	n,v
-meaning	n,na
-meant	d
-meantime	n
-meanwhile	n
-measle	n,ed
-measly	a,comp
-measure	n,v,er,va,in
-meat	n,man,nopref,y
-mecca	n
-mechanic	n,a
-mechanician	n
-mechanism	n
-mechanist	n,na
-mecum	d
-medal	n,na,nopref
-medallion	n
-meddle	v,er
-meddlesome	a
-Medea	pc
-media	pc,nopref
-medial	n,a
-median	n,a
-mediate	v,a,ion,in
-mediatrix	n
-medic	n
-medicable	a,in
-Medicaid	pc
-medicament	n
-Medicare	pc,nopref
-medicate	v,ion
-Medici	pc
-medicinal	n,a
-medicine	n,v,va
-medico	n
-mediocre	a
-mediocrity	n
-meditate	v,ion
-Mediterranean	a
-medium	n,a,na
-medley	n,a
-medusa	n
-meek	a,comp
-meet	n,vi,a,er
-meetinghouse	n
-Meg	pc
-megalith	n
-megalithic	a
-megalomania	n,na
-megalomanic	n,a
-megalopolis	n
-megalopolitan	n,a,na
-megohm	n
-Meier	n
-meiosis	pc
-meiotic	n,a
-Meistersinger	pc
-Mekong	pc
-Mel	pc
-melamine	n
-melancholia	n
-melancholic	n,a
-melancholy	n,a
-Melanesia	pc
-melange	pc
-melanic	a
-Melanie	pc
-melanin	n
-melanism	n
-melanist	n,na
-melanoma	n
-Melbourne	pc
-Melcher	pc
-meld	n,v
-melee	n
-Melinda	pc
-meliorate	v,ion
-meliorism	n
-meliorist	n,a,na
-Melissa	pc
-mellifluent	a
-mellifluous	a
-Mellon	n
-mellow	v,a,er
-melodeon	n
-melodic	n,a
-melodious	a
-melodrama	n
-melodramatic	n,a
-melody	n
-melon	n
-Melpomene	pc
-melt	n,v,er,va
-meltdown	n
-meltwater	n
-Melville	n
-Melvin	pc
-member	n,v,er,na,va
-membrane	n,ed
-membranous	a
-memento	n
-memo	n
-memoir	n
-memorabilia	n
-memorable	a
-memoranda	pc
-memorandum	n
-memorial	n,a,na,in
-memorium	n
-memory	n
-Memphis	pc
-men	pc,nopref
-menace	n,v
-menage	pc
-menagerie	n
-menarche	pc
-mend	n,v,er
-mendacious	a
-mendacity	n
-mendelevium	n
-Mendelian	n,a,na
-Mendelssohn	pc
-mendicant	n,a,na
-Menelaus	pc
-menfolk	pc
-menhaden	n
-menhir	n
-menial	n,a
-meningitis	n
-meniscus	n
-Menlo	pc
-Mennonite	n
-menopause	n
-menorah	n
-Menshevik	n
-menstrual	a
-menstruate	v,ion
-mensurable	a,va
-mensuration	n
-mental	a
-menthol	n
-mention	n,v,er,va
-mentor	n,v
-menu	n
-Menzies	pc
-meow	v
-Mephistopheles	pc
-mercantile	a,na
-mercaptan	n
-Mercator	pc
-Mercedes	pc
-mercenary	n,a
-mercer	n,na
-merchandise	n,v,er
-merchant	n,v,a,va,man
-mercilessly	d
-Merck	n
-mercurate	v,ion
-mercurial	n,a
-mercuric	a
-mercurous	a
-mercury	n
-mercy	n,na
-mere	n,a,comp,na
-Meredith	n
-meretricious	a
-merganser	n
-merge	v,er
-meridian	n,a
-meridional	n,a
-meringue	n
-merino	n,a
-merit	n,v
-meritorious	a
-Merle	pc
-merlin	n
-mermaid	n
-merman	n
-Merriam	pc
-Merrill	n
-Merrimack	pc
-merriment	n
-Merritt	n
-merry	a,comp,nopref
-merrymaker	n
-merrymaking	n
-Mervin	pc
-mesa	n
-mescal	n
-mescaline	n
-mesdames	d
-mesenteric	a
-mesh	n,v
-mesmeric	n,a
-mesmerism	n
-mesomorph	n,na
-mesomorphic	a
-meson	n
-Mesopotamia	pc
-mesosphere	n
-Mesozoic	a
-mesquite	n
-mess	n,v,y
-message	n,v
-messenger	n
-messiah	n
-messianic	a
-messieurs	d
-mestiza	n
-mestizo	n
-met	d,nopref
-metabolic	n,a
-metabolism	n
-metabolite	n
-metacarpal	n
-metallic	n,a
-metalliferous	a
-metallography	n,er
-metalloid	n,a
-metallurgic	n
-metallurgist	n
-metallurgy	n
-metalware	n
-metalwork	n,vi,er
-metamorphic	a
-metamorphism	n
-metamorphose	v
-metamorphosis	pc
-metaphor	n
-metaphoric	n
-metatarsal	n
-Metcalf	n
-mete	n,v
-meteor	n
-meteoric	n,a
-meteorite	n,na
-meteoroid	n
-meteorology	n,na
-meter	n,v,na
-methacrylate	n
-methadone	n
-methane	n
-methanol	n
-methinks	d
-method	n,na
-methodic	n,a
-Methodism	pc
-Methodist	pc
-methodology	n,na
-methought	d
-Methuen	pc
-Methuselah	pc
-methyl	n
-methylate	n,v,ion
-methylene	n
-meticulous	a
-metier	d
-metonymy	n
-metope	n
-metric	n,a
-metro	n
-metrology	n,na
-metronome	n
-metropolis	n
-metropolitan	n,a
-mettle	n,ed
-mettlesome	a
-Metzler	n
-mew	n,v,er
-Mexican	n,a
-Mexico	pc
-Meyer	n
-Meyers	n
-mezzanine	n
-mezzo	n
-MGM	pc,nopref
-mho	n
-mi	d,nopref
-Miami	pc
-miasma	n
-miasmal	a
-miasmic	a
-mica	n
-Micah	pc,nopref
-mice	pc
-Michael	pc
-Michel	n
-Michelangelo	pc
-Michele	n
-Michelin	pc
-Michelle	pc
-Michelson	n
-Michigan	pc
-Mickelson	n
-mickey	pc
-micro	n
-microbial	a
-microbic	a
-microcosm	n
-microfiche	n
-micrography	n
-micron	n,na
-Micronesia	pc
-microscopy	n
-mid	nopref,ms,y
-Midas	n
-middle	n,v,er,man
-middlebrow	n,a
-Middlebury	pc
-Middlesex	pc
-Middleton	n
-Middletown	pc
-middleweight	n
-midge	n
-midriff	n
-midst	n
-midterm	n,a
-midwifery	n
-mien	n,nopref
-miff	n,v
-Mifflin	pc
-might	n,y
-mightn't	d
-mignon	d
-migraine	n
-migrant	n,a,in
-migrate	v,ion,in
-Miguel	pc
-mikado	n
-mike	n
-mil	n,nopref
-milady	n
-Milan	pc
-milch	a
-mild	a,comp
-mildew	n,v
-Mildred	pc
-mile	n,er
-mileage	n
-milepost	n
-milestone	n
-milieu	n
-militant	n,a,na
-militarism	n
-militarist	n,na
-military	n,a
-militate	v
-militia	pc,man
-milk	n,v,er,na,man,y
-milkmaid	n
-milkshake	n
-milksop	n
-milkweed	n
-mill	n,v
-Millard	pc
-millenarian	n,a,na
-millenary	n,a
-millennia	pc
-millennial	a,na
-millennium	n
-miller	n
-millet	n
-Millie	pc
-Millikan	n
-milliner	n,y
-millinery	n
-million	n
-millionaire	n
-millions	d
-millionth	n,a
-millipede	n
-millpond	n
-millrace	n
-millstone	n
-millstream	n
-millwork	n
-millwright	n
-milo	n
-milord	n
-milt	n,er,y
-Milton	n
-Miltonic	a
-Milwaukee	pc
-mime	n,v,er
-mimeo	n,v
-mimeograph	n,v
-mimesis	pc
-mimetic	n,a
-Mimi	pc
-mimic	n,a
-mimicked	d
-mimicking	d
-mimicry	n
-mimosa	n
-mina	n,nopref
-minaret	n
-minatory	a
-mince	n,v,er
-mincemeat	n
-mind	n,v,er,na
-Mindanao	pc
-mindset	n
-mine	n,v,er,va
-minefield	n
-minelayer	n
-mineral	n,a,na
-mineralogy	n,na
-Minerva	pc
-minestrone	n
-minesweep	vi
-minesweeper	n
-Ming	pc
-mingle	v,er
-mini	n
-miniature	n,a,na
-minim	n,a,na
-minima	d
-minimal	a,na
-minimax	n
-minimum	n,a
-minion	n
-minister	n,v
-ministerial	a
-ministration	n
-ministry	n
-miniver	n
-mink	n
-Minneapolis	pc
-Minnesota	pc
-Minnie	pc
-minnow	n
-Minoan	a
-minor	n,v,a
-Minos	pc
-Minotaur	pc
-Minsky	pc
-minstrel	n
-minstrelsy	n
-mint	n,v,a,er
-minuend	n
-minuet	n
-minus	n,a
-minuscule	n,a
-minute	n,v,a,comp,man
-minutia	d
-minutiae	pc
-minx	n
-Miocene	a
-Mira	pc
-miracle	n
-miraculous	a
-mirage	n
-Miranda	pc
-mire	n,v,nopref,y
-Mirfak	pc
-Miriam	pc
-mirror	n,v
-mirth	n,na
-MIRV	n,v,nopref
-miry	a
-misanthrope	n,na,y
-miscegenation	n
-miscellanea	pc
-miscellaneous	a
-miscellany	n
-mischievous	a
-miscible	a,va,in
-miscreant	n,a
-miser	n,a
-miserable	a
-misericord	n
-misery	n
-mishmash	n
-misnomer	n
-misogamy	n
-misogynic	a
-misogynist	n
-misogynous	a
-misogyny	n
-misprision	n
-mispronunciation	n
-miss	n,v,a,y
-missal	n
-misshapen	a
-missile	n,nopref,man
-missileer	n
-missilery	n
-mission	n,v,a,er,na,va
-missionary	n,a
-Mississippi	pc
-Mississippian	a
-Missoula	pc
-Missouri	pc
-Missy	pc
-mist	n,v,er,nopref,y
-mistletoe	n
-mistral	n
-MIT	pc,nopref
-Mitchell	n
-mite	n,nopref
-MITI	pc,nopref
-miticide	n
-mitigate	v,ion
-mitochondria	pc
-mitosis	pc
-mitral	a
-Mitsubishi	n,nopref
-mitt	n,nopref
-mitten	n,nopref
-mitzvah	n
-mix	n,v,er,va
-mixture	n
-mixup	n
-Mizar	pc
-mizzen	n,a
-mizzenmast	n
-MN	pc,nopref
-mnemonic	n,a
-MO	pc,nopref
-moa	n,nopref
-moan	n,v,er
-moat	n,v
-mob	n,v,ms
-Mobil	pc
-mobile	n,a,na,in
-mobility	n,in
-mobocracy	n
-mobster	n
-moccasin	n
-mocha	n
-mock	n,v,er
-mockery	n
-mockingbird	n
-mockup	n
-modal	a
-mode	n,ed
-modem	n
-moderacy	n,in
-moderate	n,v,a,ion,in
-moderato	d
-modern	n,a,na
-modest	a,in
-Modesto	pc
-modesty	n,in
-modicum	n
-modify	v,er,ion
-modish	a
-modular	a
-modulate	v,ion
-module	n,va
-moduli	d
-modulo	d
-modulus	pc
-modus	d
-Moe	pc
-Moen	pc
-Mogadiscio	pc
-mogul	n
-mohair	n
-Mohammed	pc,nopref
-Mohammedan	n
-Mohawk	n
-Mohican	n
-Mohr	pc
-moiety	n
-Moines	pc
-Moira	pc
-moire	d
-Moiseyev	pc
-moist	a,comp
-moisten	v,er
-moisture	n,a
-Mojave	pc,nopref
-mola	n,nopref
-molal	a
-molar	n,a
-molasses	n
-Moldova	pc
-mole	n
-molecular	a
-molecule	n
-molehill	n
-moleskin	n
-molest	v,er
-molestation	n
-Moliere	pc
-Moline	pc
-moll	n
-mollify	v,ion
-mollusc	n
-molluscan	d
-mollusk	n
-Molly	pc
-mollycoddle	n,v,er
-Moloch	pc
-molten	a
-molto	d
-Moluccas	pc
-molybdate	n
-molybdenite	n
-molybdenum	n
-mom	n
-moment	n,a
-momenta	d
-momentary	a
-momentous	a
-momentum	n
-mommy	n
-Mon.	d,nopref
-Mona	pc
-Monaco	pc
-monad	n,na
-monadic	a
-monadnock	n
-monarch	pc,na
-monarchial	a
-monarchic	n
-monarchs	d
-monarchy	n
-monasterial	a
-monastery	n
-monastic	n,a,na
-monatomic	a
-monaural	a
-Monday	n
-monel	n
-monetarism	n
-monetarist	n
-monetary	a
-money	n,ed,er
-moneybags	n
-moneylender	n
-monger	n,v
-Mongol	n,a
-Mongolia	pc
-mongolism	n
-Mongoloid	d
-mongoose	n
-mongrel	n,a,na
-Monica	pc
-monicker	n
-monied	d
-monies	d
-moniker	n
-monism	n
-monist	n,na
-monitor	n,v,y
-monk	n,na
-monkey	n,v
-monkeyflower	n
-monkeyshine	n
-monkish	a
-Monmouth	pc
-Monoceros	pc
-monochromatic	n,a
-monochromator	n
-monocle	n,ed
-monocotyledon	n
-monocular	a
-monogamous	a
-monogamy	n
-monogynous	a
-monogyny	n
-monolith	n
-monologist	n
-monologue	n,na
-monomer	n
-monomeric	a
-monomial	n,a
-Monongahela	pc
-mononucleosis	pc
-monophony	n
-monopoly	n
-monotheism	n
-monotheist	n,na
-monotonous	a
-monoxide	n
-Monroe	n
-Monrovia	pc
-Mons	d
-Monsanto	pc
-monsieur	n
-monsignor	n
-monsoon	n
-monster	n
-monstrosity	n
-monstrous	a
-Mont	pc
-montage	n,v
-Montague	n
-Montana	pc
-Montclair	pc
-monte	n
-Montenegrin	pc
-Monterey	pc
-Monteverdi	pc
-Montevideo	pc
-Montgomery	n
-month	n,a
-Monticello	pc
-Montmartre	pc
-Montpelier	pc
-Montrachet	pc
-Montreal	pc
-Monty	pc
-monument	n,na
-moo	n,v,nopref
-mooch	v,er
-mood	n,nopref,y
-moon	n,v,er,y
-moonbeam	n
-Mooney	pc
-moonlet	n
-moonlight	n,v,er
-moonlit	a
-moonrise	n
-moonscape	n
-moonset	n
-moonshine	n,er
-moonstone	n
-moonstruck	a
-moor	n,v
-moorage	n
-Moore	pc
-Moorish	a
-moose	n
-moot	n,v,a
-mop	n,v,er,ms
-mope	n,v,er
-moppet	n
-moraine	n
-moral	n,a,in
-morale	n,a,na
-Moran	n
-morass	n,y
-moratorium	n
-Moravia	pc
-morbid	a,comp
-mordant	n,a
-more	n,nopref
-morel	n
-Moreland	n
-moreover	d
-Moresby	pc
-Morgan	n
-morganatic	n,a
-morgue	n
-Moriarty	n
-moribund	a
-Morley	n
-Mormon	n,na
-morn	n,vi
-Moroccan	pc
-morocco	n
-moron	n,a,na
-moronic	n,a
-morose	a
-morph	n
-morpheme	n
-morphemic	n,a
-morphine	n,na
-morphogenesis	d
-morphogenetic	a
-morphology	n,na
-morphophonemic	n,a
-Morrill	n
-morris	n
-Morrison	n
-Morrissey	n
-Morristown	pc
-morrow	n
-Morse	n
-mort	n
-mortal	n,a,in
-mortar	n,v
-mortarboard	n
-mortem	n
-mortgage	n,v,er
-mortgagee	n
-mortgagor	n
-mortician	n
-mortify	v,ion
-Mortimer	n,nopref
-mortise	n,v
-Morton	pc
-mortuary	n,a
-mosaic	n,v,a,na
-Moscow	pc
-Moser	n
-Moses	n
-Moslem	pc
-mosque	n
-mosquito	pc
-mosquitoes	d
-moss	n,v,na,y
-mossback	n
-most	a
-mot	n,nopref
-mote	n
-motel	n,nopref
-motet	n
-moth	n
-mothball	n,v
-mother	n,v,a,na
-motherland	n
-motif	n
-motile	n,a,in
-motion	n,v,na,va
-motivate	v,ion
-motley	n,nopref
-motoneuron	n
-motor	n,v,na,ion,man
-motorboat	n
-motorcade	n
-motorcar	n
-motorcycle	n,v,na
-Motorola	pc
-mottle	n,v,er
-motto	pc
-mottoes	d
-Moulton	n
-mound	n,v
-mount	n,v,er,va
-mountain	n,y
-mountaineer	n,v
-mountainous	a
-mountainside	n
-mountaintop	n
-mountebank	n,v
-Mountie	n
-mourn	n,v,er,na,va
-mouse	n,v,er,y
-mousse	n,nopref
-moustache	n
-mouth	n,v,er,na,y
-mouthpiece	n
-mouthwash	n
-Mouton	pc
-move	n,v,er,va
-movie	n
-mow	n,v,er
-mown	d
-moxie	n
-Moyer	n
-Mozambique	pc,nopref
-Mozart	pc
-mozzarella	pc
-MPH	pc,nopref
-m's	d,nopref
-mu	n,nopref
-much	a
-mucilage	n
-mucilaginous	a
-muck	n,v,er,y
-muckrake	v,er
-mucosa	n
-mucous	a
-mucus	n
-mud	n,v,nopref,ms
-Mudd	n
-muddle	n,v,er
-muddlehead	ed
-muddy	v,a,comp
-mudguard	n
-mudslide	n
-mudsling	vi,er
-Mueller	n
-Muenster	pc
-muezzin	n
-muff	n,v,er
-muffin	n
-muffle	n,v,er
-mufti	n
-mug	n,v,er,ms,y
-mugwump	n
-Muir	n
-Mukden	pc
-mukluk	n
-mulatto	n
-mulattoes	d
-mulberry	n
-mulch	n,v,er
-mulct	n,v
-mule	n
-mulish	a
-mull	n,v,er
-mullah	n,na
-mullein	n
-mullen	n
-mullet	n
-mulligan	n
-mulligatawny	n
-mullion	n,v
-multi	d
-multifarious	a
-multiformity	n
-multimedia	a
-multinomial	a
-multiphasic	a
-multiple	n,a
-multiplet	n
-multiplex	v,a,er
-multiplexor	n
-multipliable	a
-multiplicable	a
-multiplicand	n
-multiplication	n,na,va
-multiplicity	n
-multiply	v,er
-multitude	n
-multitudinous	a
-mum	n,v,a,er,ms
-mumble	n,v,er
-mumbo	d
-Mumford	n
-mummify	v,ion
-mummy	n,v
-mumps	n
-munch	v,er
-Muncie	pc
-mundane	a
-mung	n
-Munich	pc
-municipal	n,a,na
-munificent	a
-munition	n,v
-Munson	n
-muon	n
-Muong	pc
-mural	n,a,na
-murder	n,v,er
-murderess	n
-murderous	a
-muriatic	a
-Muriel	pc
-murine	n,a
-murk	n,y
-murmur	n,v,er
-murmurous	a
-Murphy	n
-Murray	n
-murre	n
-muscat	n
-muscatel	n
-muscle	n,v
-muscovite	n,a
-Muscovy	pc
-muscular	a
-musculature	n
-muse	n,v,er,nopref
-musette	n
-museum	n
-mush	n,v,er,y
-mushroom	n,v
-music	n
-musicale	n,a
-musician	n,a
-musicology	n,na
-musk	n,y
-Muskegon	pc
-muskellunge	n
-musket	n
-musketeer	n
-musketry	pc
-muskmelon	n
-muskoxen	pc
-muskrat	n
-Muslim	n,a
-muslin	n
-muss	n,v,y
-mussel	n
-must	n,v,er,y
-mustachio	n,ed
-mustang	n
-mustard	n
-mustn't	d
-mutagen	n
-mutagenic	n,a
-mutandis	d
-mutant	n,a
-mutate	v,ion
-mutatis	d
-mute	n,v,a,comp,va,in
-mutilate	v,ion
-mutineer	n
-mutinous	a
-mutiny	n,v
-mutt	n
-mutter	n,v,er
-mutton	n,y
-mutual	a,na
-mutuel	n
-Muzak	pc
-muzhik	n
-Muzo	pc
-muzzle	n,v,er
-muzzy	n,a
-my	d,nopref
-Myanmar	pc,nopref
-mycelium	n
-Mycenae	pc
-Mycenaean	a
-mycology	n,na
-mycophagous	a
-myeline	n
-myeloid	a
-Myers	n
-mylar	a
-mynah	n
-Mynheer	pc
-myocardial	a
-myocardium	n
-myoglobin	n
-myopia	n
-myopic	n,a
-myosin	n
-Myra	pc
-myriad	n,a
-myrmidon	n
-Myrna	n
-Myron	n
-myrrh	n
-myrtle	n
-myself	d
-mysterious	a
-mystery	n
-mystic	n,a,na
-mystify	v,ion
-mystique	n
-myth	n
-mythic	n,na
-mythology	n,na
-mythopoeic	d
-myxomatosis	d
-NAACP	pc,nopref
-nab	v,ms
-Nabisco	pc
-nabla	d
-nabob	n,a
-nacelle	n
-nacho	n
-nacreous	a
-Nadia	pc
-Nadine	pc
-nadir	n
-nag	n,v,er,ms
-Nagasaki	pc
-Nagoya	pc
-Nagy	n
-Nahum	pc,nopref
-naiad	n
-nail	n,v,er
-Nair	n
-Nairobi	pc
-naive	a,comp
-naivete	d
-naked	a,comp
-Nam	pc,nopref
-name	n,v,a,er,va
-nameable	a
-nameplate	n
-namesake	n
-Namibia	pc,nopref
-Nan	pc
-Nancy	pc
-Nanette	pc
-Nanking	pc
-nanny	n
-Nantucket	pc
-Naomi	pc
-nap	n,v,er,nopref,ms,y
-napalm	n
-nape	n
-naphtha	n
-naphthalene	n
-napkin	n
-Naples	pc
-napoleon	n
-Napoleonic	a
-Narbonne	pc
-narcissism	n
-narcissist	n,a,na
-narcissus	n
-narcolepsy	n
-narcoleptic	a
-narcosis	pc
-narcotic	n,a
-nares	d
-Narragansett	pc
-narrate	v,ion
-narrow	n,v,a,comp
-narrowish	a
-narthex	n
-narwhal	n
-nary	a,nopref
-NASA	pc,nopref
-nasal	n,a,na
-nascent	a,na
-Nash	n
-Nashua	pc
-Nashville	pc
-Nassau	pc
-nasturtium	n
-nasty	a,comp
-Nat	pc
-natal	a
-Natalie	pc
-natation	n
-natatorium	n
-natatory	n
-Natchez	pc
-Nathan	n
-Nathaniel	pc
-nation	n,na,va
-nationwide	a
-NATO	pc,nopref
-natter	v,er
-natty	a,comp
-natural	n,a,na
-nature	n,ed
-naturopath	n
-naturopathy	n
-naughty	a,comp
-nausea	n
-nauseate	v
-nauseous	a
-nauseum	pc
-nautical	a
-nautilus	n
-Navajo	n
-naval	a
-nave	n
-navel	n
-navigable	a,va
-navigate	v,ion
-navvy	n
-navy	n
-nay	n,nopref
-naysay	vi,er
-Nazarene	n
-Nazareth	pc
-nazi	n
-nazify	v,va
-Naziism	n
-Nazism	pc
-N.B.	d,nopref
-NBA	pc,nopref
-NBC	pc,nopref
-NBS	pc,nopref
-NC	d,nopref
-NCAA	pc,nopref
-NCAR	pc,nopref
-NCR	pc,nopref
-ND	d,nopref
-Ndjamena	d
-NE	pc,nopref
-Neal	pc
-Neanderthal	n,a
-neap	a
-Neapolitan	pc
-near	v,a,comp
-nearby	d
-nearsighted	a
-neat	n,a,comp
-neath	d
-Nebraska	pc
-Nebuchadnezzar	n
-nebula	n
-nebulae	pc
-nebular	a
-nebulosity	n
-nebulous	a
-necessary	n,a
-necessitate	v,ion
-necessity	n
-neck	n,v
-neckerchief	n
-neckerchieves	d
-necklace	n,v
-neckline	n
-necktie	n
-necrology	n,na
-necromancer	n
-necromancy	n
-necromantic	n,a
-necrophagous	a
-necrophilia	n,na
-necropolis	n
-necropsy	n
-necrosis	pc
-necrotic	a
-nectar	n,y
-nectarine	n
-Ned	pc
-nee	d
-need	n,v,na,y
-Needham	n
-needle	n,v,er,na,man
-needlecraft	n
-needlepoint	n,a
-needlework	n,er
-needn't	d
-ne'er	d
-nefarious	a
-Neff	n
-negate	n,v,er,ion
-neglect	n,v,er,na
-negligee	n
-negligent	a
-negligible	a,va
-negotiable	a,va
-negotiant	n
-negotiate	v,ion
-Negress	n
-Negro	pc,a
-Negroes	pc
-negroid	n,a
-negrophile	n,na
-negrophobe	n
-Nehemiah	pc,nopref
-Nehru	n
-neigh	n,v
-Neil	pc
-neither	a
-Nell	pc
-Nellie	pc
-Nelsen	n
-nelson	n
-nematode	n
-nemeses	d
-nemesis	pc
-Neocene	pc
-neoclassic	n,a,na
-neoconservative	n
-neodymium	n
-neoliberal	n
-neolithic	a
-neologism	n
-neology	n,na
-neomycin	n
-neon	n
-neonatal	a
-neonate	n
-neonatology	n,na
-neoorthodox	a
-neoorthodoxy	n
-neophyte	n
-neoprene	n
-neotenic	a
-neoteny	n
-Nepal	pc
-Nepali	n,a
-nepenthe	n
-nephew	n
-nepotism	n
-Neptune	pc
-Neptunian	n
-neptunium	n
-nerd	n,y
-nereid	n
-Nero	pc
-nerve	n,v,y
-nervous	a
-Ness	pc
-nest	n,v,er
-nestle	v,er
-Nestor	pc
-Nestorian	n,a,na
-net	n,v,er,na,ms,y
-nether	a
-Netherlands	pc
-netherworld	n
-nettle	n,v
-nettlesome	a
-network	n,v
-Neumann	n
-neural	d
-neuralgia	n
-neuralgic	a
-neurally	d
-neurasthenia	n
-neurasthenic	n,a
-neuritis	n
-neurology	n,na
-neuron	n
-neuronal	a
-neuroses	d
-neurosis	pc
-neurotic	n,a
-neuter	n,v,a
-neutral	n,a,na
-neutrino	n
-neutron	n
-Neva	pc
-Nevada	pc
-never	d
-nevermore	d
-nevertheless	d
-Nevins	n
-new	v,a,comp,va
-Newark	pc
-Newbold	pc
-newborn	a
-Newbury	n
-Newcastle	pc
-newcomer	n
-newel	n
-Newell	n
-newfangled	a
-newfound	a
-Newfoundland	pc
-newish	a
-newlywed	n
-Newman	n
-Newport	pc
-news	man
-newsboy	n
-newsbreak	n
-newscast	n,er
-newsletter	n
-newsmonger	n
-newspaper	n,v,man
-newsprint	n
-newsreel	n
-newsroom	n
-newsstand	n
-Newsweek	pc
-newsworthy	a
-newsy	n,a,comp
-newt	n
-newton	n
-Newtonian	a
-next	a
-nexus	n
-NFL	pc,nopref
-Nguyen	pc
-NH	pc,nopref
-NHL	pc,nopref
-niacin	n
-Niagara	n
-Niamey	pc
-nib	n
-nibble	n,v,er
-Nibelung	pc
-niblick	n
-nibs	n
-Nicaragua	pc
-nice	a,comp
-Nicene	a
-nicety	n
-niche	n,v
-Nicholas	n
-Nicholls	n
-Nichols	n
-Nicholson	n
-nichrome	n
-nick	n,v,er
-nickelodeon	n
-nickname	n,v,er
-Nicodemus	pc
-Nicole	pc
-Nicosia	pc
-nicotine	n
-niece	n
-niello	n,v
-Nielsen	n
-Nielson	n
-Nietzsche	pc
-nifty	n,a,comp
-Niger	pc
-Nigeria	pc
-niggard	n,v,a
-niggardly	a
-nigger	n
-niggle	v,er
-nigh	d,nopref
-night	n,a,er
-nightcap	n
-nightclothes	n
-nightclub	n
-nightdress	n
-nightfall	n
-nightgown	n
-nighthawk	n
-nightingale	n
-nightjar	n
-nightlong	a
-nightmare	n
-nightmarish	a
-nightshade	n
-nightshirt	n
-nightstick	n
-nighttime	n
-nightwalker	n
-NIH	pc,nopref
-nihilism	n
-nihilist	n,a,na
-Nike	pc
-Nikkei	pc
-Nikko	pc
-Nikolai	pc
-Nikon	n
-nil	n,a,nopref
-Nile	n
-nilpotent	a
-nim	v,ms
-nimble	a,comp
-nimbostratus	n
-nimbus	n
-NIMH	pc,nopref
-Nimrod	pc
-Nina	pc
-nincompoop	n
-nine	n,nopref
-ninefold	d
-ninepence	n
-ninepin	n
-nineteen	n,a
-nineteenth	n,a
-ninetieth	n,a
-ninety	n,a
-Nineveh	pc
-ninny	n
-ninth	n,a
-Niobe	pc
-niobium	n
-nip	n,v,er,ms,y
-nipple	n
-Nippon	pc
-Nipponese	a
-nirvana	n
-nisei	n
-Nissan	n,nopref
-NIST	pc,nopref
-nit	n,nopref,ms
-nitpick	v
-nitrate	n,v,ion
-nitric	a
-nitride	n
-nitrify	v,ion
-nitrite	n
-nitrobenzene	n
-nitrocellulose	n
-nitrogen	n,na
-nitrogenous	a
-nitroglycerine	n
-nitrosamine	n
-nitrous	a
-nitty	d
-nitwit	n
-nix	n,v
-Nixon	n
-nizam	n
-NJ	pc,nopref
-NM	pc,nopref
-NNE	d,nopref
-NNW	d,nopref
-no	n,nopref
-NOAA	pc,nopref
-Noah	pc
-nob	n
-Nobel	pc
-nobelium	n
-noble	a,comp,man
-noblesse	n
-nobody	n
-nobody'd	d
-nocturnal	a
-nocturne	n
-nod	n,v,er,nopref,ms,y
-nodal	a
-node	n
-nodular	a
-nodule	n
-Noel	pc
-noetic	a
-nog	n
-noggin	n
-noise	n,v,y
-noisomely	d
-Nolan	n
-Noll	n
-nolo	n
-nomad	n,a,na
-nomadic	a
-nomenclature	n
-nomenklatura	n
-nominal	a,na
-nominate	v,ion,in
-nominee	n
-nomograph	n
-nomography	n
-non	d,nopref
-nonagenarian	n,a
-nonagon	n
-nonce	n,a,nopref
-nonchalant	a
-noncom	n
-nondescript	n,a
-none	n,a,nopref
-nonesuch	n,a
-nonetheless	d
-nonfeasance	n
-nonpareil	n,a
-nonplus	v
-nonsensical	a
-noodle	n
-nook	n
-noon	n,vi
-noonday	n
-noontide	n
-noontime	n
-noose	n,v
-nor	d,nopref
-Nora	pc
-Norbert	pc
-Nordhoff	n
-Nordic	n,a
-Nordstrom	n
-Noreen	pc
-norepinephrine	n
-Norfolk	pc
-noria	n
-norm	n,v
-Norma	pc
-normal	n,a,na
-normalcy	n
-Norman	n,a
-Normandy	pc
-normative	a
-Norris	n
-Norse	na,man
-north	n,vi,a,er
-Northampton	pc
-northbound	a
-northeast	n,a,er
-northeastern	a,er
-northeastward	n
-northerly	n
-northern	n,a,er
-northernmost	d
-northland	n
-northmost	d
-Northrop	n
-Northrup	n
-Northumberland	pc
-northward	n
-northwest	n,a,er
-northwestern	a,er
-northwestward	n
-Norton	n
-Norwalk	pc
-Norway	pc
-Norwegian	n,a
-Norwich	pc
-nose	n,v,y
-nosebag	n
-nosebleed	n
-nosedive	v
-nosegay	n
-nosepiece	n
-nosh	n
-nostalgia	n
-nostalgic	n,a
-Nostradamus	pc
-Nostrand	pc
-nostril	n
-nostrum	n
-not	d
-notarial	a
-notary	n
-notate	v,ion
-notch	n,v
-note	n,v,er,va
-notebook	n
-noteworthy	a
-nothing	n,a
-notice	n,v
-noticeable	a
-notify	v,er,ion
-notion	n,na
-notoriety	n
-notorious	a
-Nottingham	pc
-notwithstanding	d
-Nouakchott	pc
-nougat	n
-noun	n
-nourish	v,er,va
-nouveau	d
-Nov.	d,nopref
-nova	n
-Novak	pc
-novel	n,a,na
-novelette	n
-novella	n
-novelty	n
-November	n
-novena	n
-novice	n
-novitiate	n
-novo	d
-Novosibirsk	pc
-now	pc,nopref
-nowadays	d
-nowhere	n
-nowise	d
-noxious	a
-nozzle	n
-NRA	pc,nopref
-NRC	pc,nopref
-n's	d,nopref
-NSA	pc,nopref
-NSF	pc,nopref
-NTIS	pc,nopref
-nu	n,nopref
-nuance	n
-nub	n
-nubbin	n
-nubble	n
-nubbly	a,comp
-Nubia	pc
-nubile	a
-nubility	n
-nucleant	n
-nuclear	a
-nucleate	v,a,ion
-nuclei	d
-nucleic	a
-nucleoli	d
-nucleolus	n
-nucleon	n
-nucleonic	n,a
-nucleoplasm	n
-nucleoprotein	n
-nucleoside	n
-nucleotide	n
-nucleus	pc
-nuclide	n
-nude	n,a,na
-nudge	n,v,er
-nugatory	a
-nugget	n
-nuisance	n
-nuisancy	a
-nuke	v
-null	n,v,a
-nullify	v,er,ion
-numb	v,a,comp
-number	n,v,er,va
-numbly	d
-numbskull	n
-numerable	a,in
-numeral	n,a
-numerate	v,ion
-numeric	n
-Numerische	pc
-numerology	n,na
-numerous	a
-numinous	a
-numismatic	n,a
-numismatist	n
-nun	n
-nuncio	n
-nunnery	n
-nuptial	n,a
-nurse	n,v,er
-nursemaid	n
-nursery	n,man
-nurserymaid	n
-nursling	n
-nurture	n,v,er
-nut	n,v,na,nopref,ms,y
-nutant	a
-nutate	ion
-nutcrack	er
-nuthatch	n
-nutmeg	n
-nutpick	n
-nutria	n
-nutrient	n,a
-nutriment	n
-nutrition	n,na
-nutritious	a
-nutshell	n
-nuzzle	v
-NV	pc,nopref
-NW	d,nopref
-NWT	pc,nopref
-NY	pc,nopref
-N.Y.C.	d,nopref
-NYC	pc,nopref
-nylon	n
-nymph	n
-nymphomania	n,na
-NYPD	pc,nopref
-Nyquist	n
-NYSE	pc,nopref
-NYU	pc,nopref
-NZ	d,nopref
-oaf	n
-oafish	a
-Oahu	pc
-oak	n
-oaken	a
-Oakland	pc
-Oakley	n
-oakum	n
-oakwood	n
-oar	n,v,nopref
-oarlock	n
-oars	man
-oases	d
-oasis	pc
-oat	n,nopref
-oath	n
-oatmeal	n
-Obadiah	pc,nopref
-obbligato	n,a
-obduracy	n
-obdurate	a
-obedient	a
-obeisant	a
-obelisk	n
-Oberlin	pc
-Oberon	pc
-obese	a
-obey	v,er
-obfuscate	v,ion
-obi	n
-obit	n
-obituary	n,a
-object	n,v,ion
-objectify	v,ion
-objectivity	n
-objet	n
-oblate	n,a,ion
-obligate	v,a,ion
-oblige	v,er
-obligee	n,nopref
-obligor	n
-oblique	n,a
-obliterate	v,ion
-oblivion	n
-oblivious	a
-oblong	n,a
-obloquy	n
-obnoxious	a
-oboe	n
-oboist	n
-O'Brien	pc
-obscene	a,comp
-obscurant	n,a,na
-obscuration	n,na
-obscure	n,v,a
-obsequious	a
-obsequy	n
-observant	n,a,in
-observation	n,a,na
-observatory	n
-observe	v,er,va
-obsess	v
-obsession	n,na,va
-obsidian	n
-obsolesce	v
-obsolescent	a
-obsolete	v,a
-obstacle	n
-obstetric	n,a
-obstetrician	n
-obstinacy	n
-obstinate	a
-obstreperous	a
-obstruct	v,ion
-obtain	v,er,va
-obtrude	v,er
-obtrusion	n,na,va
-obtuse	a
-obverse	n,a
-obviate	v,ion
-obvious	a
-ocarina	n
-occasion	n,v,na
-occident	n
-occidental	a,na
-occipital	n,a
-occiput	n
-occlude	v
-occlusion	n,na,va
-occult	n,v,a,er,na
-occultation	n
-occupant	n,a,na
-occupation	n,na
-occupy	v,er
-occur	v,ms
-occurrent	n,a
-ocean	n
-oceanarium	n
-oceangoing	a
-Oceania	pc
-oceanic	a
-oceanography	n,er
-oceanside	n
-ocelli	d
-ocelot	n
-o'clock	d
-O'Connell	pc
-O'Connor	pc
-Oct.	d,nopref
-octagon	n
-octagonal	a
-octahedra	n
-octahedral	a
-octahedron	n
-octal	a
-octameter	n
-octane	n
-octant	n
-octave	n
-Octavia	pc
-octavo	n
-octennial	a
-octet	n
-octile	n
-octillion	n
-October	n
-octogenarian	n,a
-octopod	n,a
-octopus	n
-octoroon	n
-ocular	n,a
-oculist	n
-odd	n,a,comp
-oddball	n,a
-oddment	n
-ode	n,nopref
-O'Dell	pc
-Odessa	pc
-odeum	n
-Odin	pc
-odious	a
-odium	n,nopref
-Odom	n
-odometer	n
-O'Donnell	pc
-odorant	n
-odoriferous	a
-odorous	a
-O'Dwyer	pc
-Odysseus	pc
-odyssey	n
-Oedipal	pc
-Oedipus	pc
-oenology	n,na
-o'er	d
-oersted	n
-oestrous	d
-oeuvre	n
-of	d,nopref
-off	n,vi,nopref
-offal	n
-offbeat	n,a
-Offenbach	pc
-offend	v,er
-offensive	n,a,in
-offer	n,v
-offertory	n
-offhand	ed
-office	n,er
-officeholder	n
-officemate	n
-official	n,a,na
-officialdom	n
-officiate	v,ion
-officio	d
-officious	a
-offload	v
-offprint	n,v
-offset	vi,er,va,ms
-offshoot	n
-offshore	a
-offspring	n
-offstage	d
-oft	d,nopref
-often	d
-oftentimes	d
-ofttimes	d
-Ogden	n
-ogee	n
-ogle	n,v,er
-ogre	n
-ogress	n
-oh	n,nopref
-O'Hare	pc
-Ohio	pc
-ohm	n
-ohmic	a
-ohmmeter	n
-oil	n,v,er,man
-oilcloth	n
-oilseed	n
-oilskin	n
-oilstone	n
-oily	a,comp
-oink	v
-ointment	n
-OK	n,v,nopref
-okapi	n
-Okay	pc
-OK'd	d
-Okinawa	pc
-Oklahoma	pc
-okra	n
-Olaf	pc
-old	n,a,comp
-olden	d
-Oldenburg	n
-oldie	n
-oldish	a
-Oldsmobile	n
-oldster	n
-oldy	n
-oleaginous	a
-oleander	n
-O'Leary	pc
-olefin	n
-olefinic	a
-oleo	n
-oleomargarine	n
-olfaction	n
-olfactory	a
-Olga	pc
-oligarch	pc
-oligarchic	n,a
-oligarchs	d
-oligarchy	n
-Oligocene	a
-oligoclase	n
-oligopoly	n
-Olin	pc
-olive	n,a
-Oliver	n
-Olivetti	pc
-Olivia	pc
-olivine	n
-Ollie	n
-Olsen	n
-Olson	n
-Olympia	pc
-olympiad	n
-Olympic	n,a
-Olympus	pc
-Omaha	n
-Oman	pc
-omasum	n
-ombuds	man
-omega	n
-omelet	n
-omelette	n
-omen	n,ed,nopref
-omicron	n
-ominous	a
-omission	n,na,va
-omit	v,va,ms
-omnibus	n,a
-omnidirectional	a
-omnipotent	n,a
-omnipresent	a
-omnirange	n
-omniscient	a
-omnivore	n
-omnivorous	a
-on	d,nopref
-once	n,a,nopref
-oncology	n,na
-oncoming	a
-one	n,nopref
-Oneida	n
-O'Neil	n
-oneness	d
-onerous	a
-oneself	d
-onetime	a
-oneupmanship	pc
-ongoing	n,a
-onion	n
-onionskin	n
-onlook	vi,er
-only	d
-onomatopoeia	n
-onomatopoeic	n,a
-onomatopoetic	n
-Onondaga	n
-onrush	n
-onrushing	a
-onset	n
-onshore	a
-onslaught	n
-Ont.	d,nopref
-Ontario	pc
-onto	d
-ontogenetic	n,a
-ontogeny	n
-ontology	n,na
-onus	n,nopref
-onward	n,a
-onyx	n
-oodles	n
-oolong	n
-oomph	n
-oops	d
-ooze	n,v,y
-op.	d,nopref
-opacity	n
-opal	n
-opalescent	a
-opaline	a
-opaque	n,a
-OPEC	pc,nopref
-Opel	n
-open	n,v,a,comp,va
-openhanded	a
-openhearted	a
-openmouthed	a
-openwork	n
-opera	n
-operable	a,in
-operago	vi,er
-operand	n
-operant	n,v,a,ion
-operate	v,ion
-operatic	n,a
-operculum	n
-operetta	n
-Ophelia	pc
-Ophiucus	pc
-ophthalmic	a
-ophthalmology	n,na
-opiate	n,a
-opine	v
-opinion	n
-opinionated	a
-opium	n
-opossum	n
-Oppenheimer	n
-opponent	n,a
-opportune	a,na,in
-oppose	n,v,er,va
-opposite	n,a
-opposition	n,na
-oppress	v
-oppression	n,na,va
-oppressor	n
-opprobrious	a
-opprobrium	n
-opt	v,ion
-optative	n,a
-optic	n,a
-optician	n
-optima	pc
-optimal	a
-optimism	n
-optimist	n,a
-optimistic	n,a
-optimum	n,a
-optoacoustic	n,a
-optoelectronic	n,a
-optoisolate	v
-optometrist	n
-optometry	pc
-opulent	a
-opus	n,nopref
-opuscule	n
-or	n,nopref
-oracle	n
-oracular	a
-oral	n,a,nopref
-orange	n,a
-orangeade	n
-orangeroot	n
-orangery	n
-orangish	a
-orangutan	n
-orate	v,ion
-oratorical	a
-oratorio	n
-oratory	n
-orb	n,v,nopref
-orbicular	a
-orbit	n,v,er
-orbital	a
-orchard	n,na
-orchestra	n
-orchestral	a
-orchestrate	v,ion
-orchid	n
-orchis	n
-ordain	v,er,va
-ordeal	n
-order	n,v,er
-orderly	n,a
-ordinal	n,a
-ordinance	n
-ordinary	n,a
-ordinate	n,v,a,ion
-ordnance	n
-Ordovician	a
-ordure	n
-ore	n,nopref
-oregano	n
-Oregon	pc
-Oresteia	pc
-Orestes	pc
-organ	n,na
-organdy	n
-organic	n,a,na,in
-organismic	n,a
-organometallic	n,a
-orgasm	n
-orgiastic	n,a
-orgy	n
-orient	n,v,va
-oriental	n,a,na
-orienteer	n,vi
-orifice	n
-origami	n
-origin	n
-original	n,a
-originate	v,ion
-Orin	pc
-Orinoco	pc
-oriole	n
-Orion	pc
-Orionid	n
-orison	n
-Orkney	pc
-Orlando	pc
-Orleans	pc
-Orlon	pc
-ormolu	n
-ornament	n,v,na
-ornamentation	n
-ornate	a,ion
-ornately	d
-ornery	a,comp
-ornithology	n,na
-orogenesis	pc
-orogenic	a
-orogeny	n
-orography	n
-Orono	pc
-orotund	a
-orphan	n,v,a
-orphanage	n
-Orpheus	pc
-Orphic	pc
-Orr	n,nopref
-orrery	n
-Ortega	n
-orthant	n,a
-orthicon	n
-ortho	a
-orthoclase	n
-orthodontic	n,a
-orthodontist	n
-orthodox	n,a
-orthodoxy	n
-orthogonal	n,a
-orthography	n,er
-orthonormal	a
-orthophosphate	n
-orthorhombic	a
-orthotropic	n,a
-Ortiz	n
-Orville	pc
-Orwell	n
-Orwellian	a
-oryx	n
-o's	d
-Osaka	pc
-Osborn	n
-Osborne	n
-Oscar	n
-oscillate	v,ion
-oscillograph	n
-oscillography	n
-oscilloscope	n
-osculate	v,ion,in
-Osgood	n
-OSHA	pc,nopref
-O'Shea	pc
-Oshkosh	pc
-osier	n
-Osiris	pc
-Oslo	pc
-osmium	n
-osmosis	pc,nopref
-osmotic	n,a,nopref
-osprey	n
-osseous	a
-ossify	v,ion
-ossuary	n
-ostensible	a
-ostensive	a
-ostentation	n
-ostentatious	a
-osteology	n,na
-osteomyelitis	n
-osteopath	n,y
-osteopathic	n,a
-osteoporosis	d
-ostracism	n
-ostracod	n
-Ostrander	n
-ostrich	n
-O'Sullivan	pc
-Oswald	n
-Othello	pc
-other	n,nopref
-otherness	n
-otherwise	a
-otherworld	n
-otherworldly	a
-otic	d,nopref
-otiose	a
-Otis	n
-Ott	n,nopref
-Ottawa	n
-otter	n
-Otto	n,man
-Ouagadougou	pc
-ouch	n,nopref
-ought	d,nopref
-oughtn't	d,nopref
-Ouija	pc
-ounce	n
-our	d,nopref
-ours	d,nopref
-ourselves	d
-oust	v,er
-out	n,vi,er
-outermost	a
-outlandish	a
-outlaw	n,v
-outlawry	n
-outlier	n
-outpace	v
-outrageous	a
-outrance	n
-outshine	v
-ouzel	n
-ouzo	n
-ova	pc,nopref
-oval	n,a,nopref
-ovarian	a
-ovary	n
-ovate	a,ion
-oven	n,nopref
-ovenbird	n
-over	n,v,a
-overhang	n,vi
-overt	a
-overture	n,v
-Ovid	pc
-oviduct	n
-oviform	n
-ovine	n,a
-oviparous	a
-ovipositor	n
-ovoid	n,a
-ovular	a,nopref
-ovulate	v,ion
-ovum	n
-owe	v
-Owen	pc
-Owens	n
-owing	d
-owl	n,y
-owlet	n
-owlish	a
-own	v,a,er,va
-ox	pc,nopref
-oxalate	n
-oxalic	n,a
-oxbow	n,a
-Oxbridge	pc
-oxcart	n
-oxen	pc
-oxeye	n
-oxford	n
-oxidant	n
-oxidase	n
-oxidate	ion
-oxide	n,na
-Oxnard	pc
-oxtail	n
-oxygen	n
-oxygenate	v,ion
-oxygenic	a
-oxymoron	n
-oxymoronic	a
-oyez	n
-oyster	n,man
-Ozark	n,nopref
-ozone	n,na
-pa	n,a,nopref
-Pablo	pc
-Pabst	pc
-PAC	pc,nopref
-paca	n
-pace	n,v,er,nopref
-paceset	v,ms
-pachyderm	n
-pachysandra	n
-pacific	n,a,na
-pacifism	n
-pacifist	n,a,na
-pacify	v,er,ion
-pack	n,v,a,er,va,man
-package	n,v,er
-Packard	n
-packet	n,na
-packsack	n
-packsaddle	n
-pact	n,nopref
-pad	n,v,ms
-paddle	n,v,er
-paddock	n
-paddy	n
-padlock	n,v
-padre	n
-paean	n
-pagan	n,a,na
-page	n,v,er
-pageant	n
-pageantry	n
-pageboy	n
-paginate	v,ion
-pagoda	n
-paid	d
-pail	n,na
-pain	n,v,na
-Paine	n
-painstaking	n,a
-paint	n,v,er,va
-paintbrush	n
-pair	n,v,er,va
-pairwise	a
-paisley	n,a
-Pakistan	pc
-Pakistani	n
-pal	n,v,a,ms
-palace	n
-paladin	n
-palanquin	n
-palatal	n,a,na
-palate	n,va
-palatial	a
-palatine	n
-palaver	n,v
-palazzi	d
-palazzo	pc
-pale	n,v,a,comp,in
-paleface	n
-Palermo	pc
-Palestine	pc
-Palestinian	n
-palette	n
-palfrey	n
-palimpsest	n
-palindrome	n
-palindromic	n,a
-palisade	n,v
-pall	n,v
-palladia	pc
-Palladian	a,na
-palladium	n
-Pallas	pc
-pallbearer	n
-pallet	n,na
-palliate	v,ion
-pallid	a
-palm	n,v,er,na,y
-palmate	ed,a,ion
-palmetto	n
-palmistry	n
-Palmolive	pc
-Palmyra	pc
-Palo	pc
-Palomar	pc
-palomino	n
-palp	n
-palpable	a,in
-palpate	v,ion
-palpitant	a
-palpitate	v,ion
-palsy	n,v
-paltry	a
-Pam	pc
-Pamela	pc
-pampa	n
-pamper	v,er
-pamphlet	n
-pamphleteer	n,v
-pan	n,v,nopref,ms
-panacea	n
-panache	n
-panama	n
-Panamanian	n
-panatela	n
-pancake	n,v
-Pancho	pc
-panchromatic	a
-pancreas	n
-pancreatic	a
-panda	n
-Pandanus	pc
-pandemic	n,a
-pandemonium	n
-pander	n,v,er
-Pandora	pc
-pane	n
-panegyric	n
-panegyrist	n
-pang	n,v,nopref
-panhandle	n,v,er
-panic	n,v,a
-panicked	d
-panicking	a
-panicky	a,comp
-panicle	n,ed
-panjandrum	n
-panky	d
-pannier	n
-panoply	n,ed
-panorama	n
-panoramic	a
-pansy	n
-pant	n,v,er
-pantaloon	n
-pantheism	n
-pantheist	n,na
-pantheon	n
-panther	n
-pantograph	n
-pantomime	n,v,na
-pantomimic	a
-pantry	n
-panty	n
-pantywaist	n,a
-panzer	n,a
-Paoli	pc
-pap	n
-papa	n
-papacy	n
-papal	a
-papaw	n
-papaya	n
-paper	n,v,er,na
-paperback	n,a
-paperboard	n,a
-paperbound	d
-paperhang	vi,er
-paperweight	n
-paperwork	n
-papery	a,comp
-papillary	a
-papist	n
-papistry	n
-papoose	n
-Pappas	n
-pappy	n
-paprika	n
-Papua	pc
-papyri	d
-papyrus	n
-par	n,v,nopref,ms
-para	n,a,va,nopref
-parabola	n
-parabolic	a
-paraboloid	n
-parachute	n,na
-parade	n,v,er
-paradigm	n
-paradigmatic	a
-paradise	n
-paradisiac	a
-paradox	n
-paradoxic	n
-paraffin	n,v
-paragon	n,v
-Paraguay	pc
-parakeet	n
-paralinguistic	n,a
-parallax	n
-parallelepiped	n
-parallelism	n,na
-parallelogram	n
-paralytic	n,a
-Paramaribo	pc,nopref
-paramecium	n
-paramour	n
-Paramus	pc
-paranoia	n,na
-paranoid	n,a
-parapet	n,ed
-paraphernalia	n
-paraplegia	n
-paraplegic	n,a
-parasite	n,na
-parasitology	n,na
-parasol	n
-parathion	n
-paraxial	a
-parboil	v
-parch	v,va
-pardner	n
-pardon	n,v,er,va
-pare	v,er,va
-paregoric	n
-parent	n,v,na
-parentage	n
-parental	a
-parentheses	d
-parenthesis	pc
-parenthetic	n,a
-Pareto	pc
-parfait	n
-pariah	n
-paribus	d,nopref
-parietal	n,a
-parimutuel	a
-Paris	pc
-parish	n
-parishioner	n
-Parisian	n
-parity	n
-park	n,v,er
-parka	n
-Parke	n
-Parkinson	n
-parkinsonism	n
-parkland	n
-parkway	n
-parlance	n
-parlay	n,v
-parley	n,v
-parliament	n
-parliamentarian	n
-parliamentary	a
-parlous	a
-Parmesan	pc
-parochial	a,na
-parodist	n
-parody	n,v
-parole	n,v,a
-parolee	n
-paroxysm	n
-parquet	n,v
-Parr	n
-parricide	n
-Parrish	n
-parrot	n,v,a
-parry	n,v,nopref
-parse	n,v,er,va,nopref
-parsec	n
-Parsifal	pc
-parsimonious	a
-parsimony	n
-parsley	n
-parsnip	n
-parson	n
-parsonage	n
-part	n,v,a,er,va,in
-partake	vi,er
-parterre	n
-Parthenon	pc
-partial	n,a,in
-participant	n,a
-participate	v,ion
-participial	a
-participle	n
-particle	n
-particular	n,a,na
-particulate	n,a
-partisan	n,a
-partita	n
-partition	n,v,er,na,va
-partner	n,v
-partook	d
-partridge	n
-parturition	n
-party	n,v,er
-partygo	v,er
-parvenu	n,a
-Pasadena	pc
-Pascal	pc
-paseo	n
-pasha	n
-Paso	pc
-pass	n,v,er,va
-passage	n,v
-passageway	n
-Passaic	pc
-passbook	n
-passe	d
-passel	n
-passenger	n
-passerby	n
-passerine	n,a
-passeth	d
-passion	n,v,na,va,in
-passionate	a,in
-passivate	v,ion
-passkey	n
-Passover	n
-passport	n
-password	n
-past	n,v,y
-pasta	n
-paste	n,v,er
-pasteboard	n,a
-pastel	n,a,na
-pasteup	n
-Pasteur	pc
-pastiche	n
-pastime	n
-pastor	n,na
-pastoral	n,a
-pastorale	n,na
-pastorate	n
-pastrami	n
-pastry	n
-pasturage	n
-pasture	n,v,er
-pat	n,v,nopref,ms
-Patagonia	pc
-patch	n,v,er,va,y
-patchwork	n
-pate	n,ed,er
-Patel	n
-patent	n,v,a,va
-patentee	n
-paterfamilias	n
-paternal	a,na
-paternity	n
-paternoster	n
-Paterson	n
-path	n
-pathetic	n,a
-pathfind	er
-pathogen	n
-pathogenesis	pc
-pathogenic	n,a
-pathology	n,na
-pathos	n
-pathway	n
-patient	n,a
-patina	n
-patio	n
-patois	n
-patriarch	pc
-patriarchal	a
-patriarchate	n
-patriarchs	d
-patriarchy	n
-Patrice	pc
-Patricia	pc
-patrician	n,a
-patricidal	a
-patricide	n
-Patrick	n
-patrilineal	a
-patrimonial	a
-patrimony	n
-patriot	n,na
-patriotic	n,a
-patristic	n,a
-patrol	n,v,er,man,ms
-patron	n,na
-patronage	n
-patroness	n
-patronymic	n,a
-patsy	n
-patter	n,v,er
-pattern	n,v
-Patterson	n
-Patti	pc
-Patton	n
-patty	n
-paucity	n
-Paul	pc,na
-Paula	pc
-Paulette	pc
-Pauli	pc
-Pauline	a
-Paulo	pc
-Paulsen	n
-Paulson	n
-Paulus	pc
-paunch	n,y
-pauper	n,na
-pause	n,v
-pavane	n
-pave	v,er,va
-pavilion	n,v
-Pavlov	pc
-Pavlovian	a
-paw	n,v
-pawl	n
-pawn	n,v,er
-pawnbroker	n
-pawnshop	n
-pawpaw	n
-Pawtucket	pc
-pax	pc
-pay	n,v,a,er,va
-payback	n
-paycheck	n
-payday	n
-payee	n
-payload	n
-paymaster	n
-Payne	n
-payoff	n,a
-payola	n
-payout	n
-payroll	n
-Paz	pc
-PBS	pc,nopref
-PDQ	d,nopref
-pea	n,na
-Peabody	pc
-peace	n,v,na
-peaceable	a
-peacetime	n
-peach	n,v,va,in,y
-Peachtree	pc
-peacock	n,v
-peafowl	n
-peahen	n
-peak	n,v,a,y
-peal	n,v,er,va
-Peale	n
-peanut	n,a
-pear	n,a
-Pearce	n
-pearl	n,v,er,na
-Pearson	n
-peasant	n,na
-peasantry	n
-Pease	n
-peashooter	n
-peat	n,v,va,y
-peavy	n
-pebble	n,v,a
-pecan	n
-peccable	a,va,in
-peccadillo	n
-peccadilloes	d
-peccary	n
-peck	n,v,er,nopref,y
-Pecos	pc
-pectin	n
-pectoral	n,a
-peculate	v,ion
-peculiar	n,a
-pecuniary	a
-pedagogic	n,a
-pedagogue	n
-pedagogy	n
-pedant	n
-pedantic	a
-pedantry	n
-peddle	v,er
-pederast	n,y
-pedestrian	n,a,na
-pedicab	n
-pedicure	n
-pedigree	n,ed
-pediment	n,na,in
-pedlar	n
-pedometer	n
-Pedro	pc
-pee	n,nopref
-peed	d,nopref
-peek	n,v,er
-peekaboo	n
-peel	n,v,er,nopref
-peen	n,v
-peep	n,v,er,y
-peephole	n
-peer	n,v
-peerage	n
-peeress	n
-peeve	n,v
-peevish	a
-peewee	n
-peg	n,v,a,ms
-Pegasus	pc
-pegboard	n
-Peggy	pc
-pegmatite	n,na
-PEI	pc,nopref
-pejorative	a
-Peking	pc
-Pekingese	n
-pekoe	n
-pelagic	a
-Pelham	pc
-pelican	n
-pellagra	n
-pellet	n,v,nopref
-pellucid	a
-pelt	n,v,er,nopref
-peltry	n
-pelvic	n,a
-pelvis	n
-Pembroke	pc
-pemmican	n
-pen	n,v,er,man,ms
-Pena	n
-penal	a,na
-penalty	n,a
-penance	n,v,nopref
-penates	n
-pence	n,nopref
-penchant	n
-pendant	n
-pending	d
-pendulous	a
-pendulum	n
-Penelope	pc
-peneplain	n
-peneplane	n
-penetrable	a,in
-penetrant	n,a
-penetrate	v,ion
-penguin	n
-Penh	pc
-penholder	n
-penicillin	n
-peninsula	n
-peninsular	a
-penis	n
-penitent	n,a,in
-penitential	a
-penitentiary	n,a
-penknife	n
-Penn	n
-penna	n
-pennant	n
-Pennington	n
-pennon	n
-Pennsylvania	pc
-penny	n,nopref
-pennyroyal	n
-pennyweight	n
-penology	n,na
-Penrose	n
-Pensacola	pc
-pension	n,v,er,va
-penstock	n
-pent	v,a,er
-pentad	n
-pentagon	n
-pentagonal	a
-pentagram	n
-pentamer	n
-pentameter	n
-pentane	n,nopref
-Pentateuch	pc
-pentathlon	n
-Pentecost	pc
-pentecostal	na
-penthouse	n
-penult	n
-penultimate	a
-penumbra	n
-penumbral	a
-penurious	a
-penury	n
-peon	n
-peonage	n
-peony	n
-people	n,v
-Peoria	pc
-pep	n,v,ms,y
-pepper	n,v,er
-peppercorn	n
-peppergrass	n
-peppermint	n
-pepperoni	pc
-peppery	a,comp
-Pepsi	pc
-PepsiCo	pc
-peptic	a
-peptide	n
-per	d,nopref
-peradventure	n
-perambulate	v,ion
-percale	n
-perceivable	d,in
-perceive	v,er
-percent	n,a
-percentage	n
-percentile	n
-percept	n,ion,in
-perceptible	a,in
-perceptual	a
-perch	n,v
-perchance	d
-perchlorate	n
-Percival	pc
-percolate	v,ion
-percussion	n,na,va
-Percy	pc
-perdition	n
-perdurable	a,va
-peregrinate	v,ion
-peregrine	n,a
-peremptory	a
-perennial	n,a
-perestroika	n
-Perez	n
-perfect	n,v,a,er,ion,in
-perfecta	n
-perfectible	a,va
-perfervid	a
-perfidious	a
-perfidy	n
-perforate	v,a,ion,in
-perforce	d
-perform	v,er,va
-performance	n
-perfume	n,v,er
-perfumery	n
-perfunctory	a
-perfuse	v
-perfusion	n,na,va
-Pergamon	pc
-pergola	n
-perhaps	n
-Periclean	a
-Pericles	pc
-perigee	n
-perihelion	n
-Perilla	pc
-perilous	a
-perimeter	n
-period	n,a,na
-periodic	n,a
-periodontic	n
-periodontist	n
-peripatetic	n,a,na
-peripheral	n,a
-periphery	n
-periphrastic	n,a
-periscope	n
-perish	v,va,in
-peristyle	n
-peritectic	n,a
-peritoneal	a
-periwig	n,ed,ms
-periwinkle	n
-perjure	v,er
-perjury	n
-perk	v,y
-Perkins	n
-Perle	pc
-perlite	n,na
-permafrost	n
-permalloy	n
-permanent	n,a,na,in
-permeable	a,in
-permeance	n
-permeate	v,ion
-Permian	a
-permissible	a,in
-permission	n,na,va
-permit	n,v,ms
-permittivity	n
-permutation	n,na
-permute	v,er,va
-pernicious	a
-pernickety	a
-Pernod	pc
-perorate	v,ion
-peroxide	n,v
-perpendicular	n,a
-perpetrate	v,ion
-perpetual	a
-perpetuate	v,ion
-perpetuity	n
-perplex	v,a
-perquisite	n
-Perry	n
-persecute	v,ion
-persecutor	n,y
-Perseid	n
-Persephone	pc
-Perseus	pc
-perseverance	n
-persevere	v
-Pershing	pc
-Persia	pc
-Persian	n,a
-persiflage	n
-persimmon	n
-persist	v,er
-persistent	a,na
-persnickety	a
-person	n,va
-persona	n,nopref
-personae	pc
-personage	n
-personal	n,a,na,in
-personify	v,er,ion
-personnel	n
-perspective	n,a
-perspicacious	a
-perspicacity	n
-perspicuity	n
-perspicuous	a
-perspiration	n
-perspire	v
-persuade	v,er,va
-persuasion	n,na,va
-pert	a,comp
-pertain	v
-Perth	pc
-pertinacious	a
-pertinacity	n
-pertinent	a,in
-perturb	v,va,in
-perturbation	n,na
-Peru	pc
-perusal	n
-peruse	v,er
-Peruvian	n
-pervade	v
-pervasion	n,na,va
-perverse	a
-perversion	n,na,va
-pervert	n,v,er
-pervious	a,in
-peseta	n
-pesky	a,comp
-peso	n
-pessimal	a
-pessimism	n
-pessimist	n,na
-pessimum	n
-pest	n,er
-pesticide	n
-pestiferous	a
-pestilent	a
-pestilential	a
-pestle	n,v
-pet	n,v,er,nopref,ms,y
-petal	n,ed,na
-petard	n
-Pete	pc,er
-peter	v
-Petersburg	pc
-Petersen	n
-Peterson	n
-petiole	n,ed
-petit	d
-petite	a
-petition	n,v,er,na,va
-petrel	n
-petri	d
-petrifaction	n,na,va
-petrify	v,ion
-petrochemical	n
-petroglyph	n
-petrography	n,er
-petrol	n
-petrolatum	n
-petroleum	n
-petrology	n,na
-petticoat	n,a
-pettifog	v,er,ms
-pettifoggery	n
-pettish	a
-petulant	a,na
-petunia	n
-Peugeot	pc
-pew	n
-pewter	n,a,er
-peyote	n
-pfennig	n
-Pfizer	pc
-phaeton	n
-phage	n
-phagocyte	n,na
-phalange	n,er
-phalanx	n
-phalarope	n
-phallic	a,na
-phallus	n
-phantasm	n
-phantasy	n
-phantom	n,a
-pharaoh	n
-pharaonic	a
-pharisaic	n,a
-pharisee	n
-pharmaceutic	n,a
-pharmacist	n
-pharmacology	n,na
-pharmacopoeia	n
-pharmacy	n
-pharyngeal	a
-pharynx	n
-phase	n,v,er
-phasor	n
-PhD	pc,nopref
-pheasant	n
-Phelps	n
-phenobarbital	n
-phenol	n
-phenolic	n,a
-phenomena	pc
-phenomenal	a,na
-phenomenology	n,na
-phenomenon	pc
-phenotype	n
-phenotypic	n,a
-phenyl	n
-pheromone	n
-phi	n
-phial	n
-Phil	pc
-Philadelphia	pc
-philander	v,er
-philanthropic	n,a
-philanthropist	n
-philanthropy	n
-philatelic	n,a
-philatelist	n
-philately	n
-Philemon	pc,nopref
-philharmonic	n,a
-Philip	pc
-Philippian	n
-philippic	n
-Philippine	pc
-philistine	n,na
-Phillip	n
-Phillips	n
-philodendron	n
-philology	n,na
-Philomena	pc
-philosopher	n
-philosophic	n,a
-philosophy	n
-Phipps	n
-phlebitis	n
-phlebotomist	n
-phlebotomy	n
-phlegm	n
-phlegmatic	n,a
-phloem	n
-phlogiston	n
-phlox	n
-phobia	n
-phobic	a
-phoebe	n
-Phoebus	pc
-Phoenicia	pc
-phoenix	n
-phon	n,y,nopref
-phone	n,v,er
-phoneme	n
-phonemic	n,a
-phonetic	n,a
-phonetician	n
-phonic	n,a
-phonograph	n
-phonology	n,na
-phonon	n
-phosgene	n
-phosphate	n,na
-phosphene	n
-phosphide	n
-phosphine	n
-phosphor	n,na
-phosphoresce	v
-phosphorescent	a
-phosphoric	a
-phosphorus	n
-phosphorylate	n,ion
-photo	n,v,a
-photogenic	n,a
-photogrammetry	pc
-photography	n,er
-photolysis	pc
-photolytic	a
-photon	n
-photonic	n,a
-photostat	v
-phrasal	a
-phrase	n,v,er
-phraseology	n,na
-phrenology	n,na
-phthalate	n
-phthisis	n
-phyla	pc
-phyletic	n,a,na
-Phyllis	pc
-phyllotaxis	pc
-phylogenetic	n,a
-phylogeny	n
-phylum	n
-physic	n,v,na
-physician	n
-Physik	pc
-physiochemical	n,a
-physiognomy	n
-physiography	n,er
-physiology	n,na
-physiotherapist	n
-physiotherapy	n
-physique	n,ed
-phytology	n
-phytoplankton	n
-phytotoxic	a
-phytotoxin	n
-pi	n,v,nopref
-pianissimo	n
-pianist	n
-piano	n
-pianoforte	n
-piaster	n
-piazza	n
-pica	n,nopref
-picador	n
-picalilli	n
-picaresque	a
-Picasso	pc
-picayune	n,a
-Piccadilly	pc
-piccolo	n,a,na
-pick	n,v,er,y
-pickaninny	n
-pickax	n,v
-pickaxe	n
-pickerel	n
-Pickering	n
-picket	n,v,er
-Pickett	n
-Pickford	n
-pickle	n,v,er
-Pickman	n
-pickoff	d
-pickpocket	n
-pickup	n
-picnic	n,v
-picnicked	d
-picnicker	n
-picnicking	d
-Pict	n
-pictograph	n
-pictographic	a
-pictorial	n,a
-picture	n,v
-picturesque	a
-piddle	v,er
-piddly	d
-pidgin	n
-pie	n,ed
-piebald	n,a
-piece	n,v,er
-piecemeal	a
-piecewise	d
-piecework	n,er
-piedmont	n,a
-pier	n
-pierce	n,v,er
-Pierre	pc
-Pierrot	n
-Pierson	n
-pieta	n
-pietism	n
-pietist	n,na
-pietistic	n,a
-piety	n,in
-piezoelectric	n,a
-piffle	n,v
-pig	n,v,ms,y
-pigeon	n
-pigeonfoot	ed
-pigeonhole	n,v
-piggish	a
-piggledy	d
-piggyback	v
-pigheaded	a
-piglet	n
-pigment	n,v
-pigmentary	a
-pigmentation	n
-pigmy	n
-pigpen	n
-pigroot	n
-pigskin	n
-pigstick	v,er
-pigsty	n
-pigtail	n
-pike	n,v,er,man
-pilaf	n
-pilaster	n
-Pilate	pc
-pile	n,v
-pileate	ed,a
-pileup	n
-pilfer	v,er
-pilferage	n
-pilgrim	n
-pilgrimage	n,v
-pill	n,v
-pillage	n,v,er
-pillar	n,v
-pillory	n,v
-pillow	n,v
-pillowcase	n
-Pillsbury	pc
-pilot	n,v,a
-pimento	n
-pimiento	n
-pimp	n,v,a
-pimple	n,ed
-pin	v,er,ms
-pinafore	n
-pinata	n
-pinball	n
-pincer	n,na
-pinch	n,v,er
-pincushion	n
-pine	n,v,er,y
-pineal	a
-pineapple	n
-Pinehurst	pc
-pinetum	n
-pinewood	n
-pinfeather	n,ed
-ping	n,v,nopref
-pinhead	n,ed
-pinhole	n
-pinion	n,v
-pink	n,v,a,comp,y
-pinkeye	n
-pinkie	n
-pinkish	a
-pinko	n
-pinnace	n
-pinnacle	n,v
-pinnate	a,ion
-pinochle	n
-pinpoint	v,a
-pinprick	n,v
-pinsetter	n
-Pinsky	n
-pinspotter	n
-pinstripe	n
-pint	n,nopref
-pintail	n
-pintle	n
-pinto	n,a
-pinup	n,a
-pinwheel	n
-pion	n,nopref
-pioneer	n,v,a
-pious	a,in
-pip	n,v,ms
-pipe	n,v,er,na
-pipeline	n,v
-pipette	n
-pipsissewa	n
-piquant	a,na
-pique	v
-piracy	n
-Piraeus	pc
-piranha	n
-pirate	n,v,nopref
-piratic	n
-pirogue	n
-pirouette	n,v
-pirouetted	d
-pirouetting	n
-Piscataway	pc
-piscatory	a
-Pisces	pc
-pisciculture	n
-piscine	a
-piss	n,v,er,nopref
-pissoir	n
-pistachio	n
-pistil	n
-pistole	n,v
-pistoleer	n
-piston	n
-pit	n,v,man,ms
-pita	n
-pitch	n,v,er,man,y
-pitchblende	n
-pitchfork	n,v
-pitchstone	n
-piteous	a
-pitfall	n
-pith	n,v,y
-pithead	n
-pithecanthropus	n
-pitiable	a
-pitilessly	d
-Pitney	n
-piton	n,nopref
-Pitt	pc
-pittance	n
-Pittman	n
-Pitts	n
-Pittsburgh	pc
-Pittsburgher	n
-Pittsfield	pc
-Pittston	pc
-pituitary	a
-pity	n,v,er,na
-Pius	pc
-pivot	n,v,a
-pivotal	a
-pixel	n
-pixie	n,a
-pixilate	v,ion
-pixy	a,comp
-pizza	n
-pizzazz	d
-pizzeria	n
-pizzicato	d
-placable	a,va,in
-placard	n,v
-placate	v,er,ion
-place	n,v,er,va
-placeable	a
-placebo	n
-placehold	vi,er
-placenta	n
-placental	n,a
-placid	a
-placket	n
-plagiarism	n
-plagiarist	n,na
-plagioclase	n
-plague	n,vi,er,y
-plagued	d
-plaguey	a
-plaguily	d
-plaice	n
-plaid	n,ed
-plain	n,v,a,comp
-plainclothesman	pc
-Plainfield	pc
-plains	man
-plainsong	n
-plainspoken	a
-plaint	n,na
-plaintiff	n
-plaintive	a
-plait	n,v,er
-plan	n,v,er,ms
-planar	a
-planarian	n
-Planck	pc
-plane	n,v,a,er
-planeload	n
-planet	n
-planetaria	pc
-planetarium	n
-planetary	a
-planetesimal	n
-planetoid	n
-plangent	a,na
-planimeter	n
-plank	n,v
-plankton	n
-planktonic	a
-planoconcave	a
-planoconvex	a
-plant	n,v,er,na,va,in
-plantain	n
-plantation	n,in
-plaque	n
-plasm	n
-plasma	n
-plasmon	n
-plaster	n,v,er,y
-plasterboard	n
-plasterwork	n
-plastic	n,a,na
-plastomer	n
-plastron	n
-plat	n,v,er,ms
-plate	n,v,er,na,y
-plateau	v
-platelet	n
-platen	n
-platform	n
-platinic	a
-platinum	n
-platitude	n
-platitudinous	a
-Plato	pc
-platonic	n,a
-Platonism	pc
-Platonist	n,na
-platoon	n
-Platte	pc
-platypus	n
-plaudit	n
-plausible	a,in
-play	n,v,er,na,va
-playa	n
-playact	v
-playback	n
-playbill	n
-playboy	n
-playgo	vi,er
-playground	n
-playhouse	n
-playland	n
-playlet	n
-playmate	n
-playoff	n
-playpen	n
-playroom	n
-playsuit	n
-plaything	n
-playtime	n
-playwright	n
-playwriting	d
-plaza	n
-plea	n,nopref
-plead	v,er,va
-pleasant	a,comp
-pleasantry	n
-please	v,er
-pleasure	n,v,na,va
-pleat	n,v,er
-plebe	n
-plebeian	n,a,na
-plebiscite	n
-plectrum	n
-pled	d
-pledge	n,v,er
-Pleiades	pc
-Pleistocene	a
-plenary	a
-plenipotentiary	n,a
-plenish	v,er,va
-plenitude	n
-plenteous	a
-plenty	n,a,na
-plenum	n
-plesiosaur	n
-plethora	n
-pleura	n
-pleural	a
-pleurisy	n
-Plexiglas	pc
-plexus	n
-pliable	a,va
-pliancy	n
-pliant	a
-pliers	n
-plight	n,v,er
-plimsoll	n
-plink	n,v,er
-plinth	n
-Pliny	pc
-Pliocene	a
-plod	n,v,er,nopref,ms
-plop	n,v,ms
-plosion	n,na,va,in
-plot	n,v,er,ms
-plover	n
-plowboy	n
-plowshare	n
-ploy	n,nopref
-pluck	n,v,er,nopref,y
-plug	n,v,er,ms
-plugboard	n
-pluggable	a
-plum	n,na,ms
-plumage	n
-plumb	n,v,a,er,na
-plumbago	n
-plumbate	v
-plumbic	a
-plume	n,v,y
-plummet	n,v
-plumose	a
-plump	n,v,a,comp
-plumpish	a
-plunder	n,v,er,va
-plunge	n,v,er
-plunk	n,v,er
-pluperfect	n,a
-plural	n,a,na
-plus	n,v,nopref
-plush	n,a,y
-Plutarch	pc
-Pluto	pc
-plutocracy	n
-plutocrat	n
-plutocratic	n,a
-plutonian	a
-plutonic	a
-plutonium	n
-pluvial	a
-ply	n,v,er,in
-Plymouth	n
-plyscore	n
-plywood	n
-p.m.	d,nopref
-PM	pc,nopref
-pneuma	n
-pneumatic	n,a
-pneumococcus	n
-pneumonia	n
-pneumonic	a
-Po	pc
-poach	n,v,er,nopref
-pock	n,v,y
-pocket	n,v,a,na
-pocketbook	n
-pockmark	n,v
-Pocono	pc
-pocus	d
-pod	n,v,ms
-podia	pc
-podiatrist	n
-podiatry	n
-podium	n
-Podunk	n
-podzol	n,na
-Poe	pc
-poem	n
-poesy	n
-poet	n,na
-poetaster	n
-poetess	n
-poetic	n,a,na
-poetress	n
-poetry	n
-pogo	d
-pogrom	n,v,na
-poi	pc,nopref
-poignant	a,na
-Poincare	pc
-poinsettia	n
-point	n,v,er,y
-pointillism	n
-pointillist	n,na
-pointwise	a
-poise	n,v
-poison	n,v,a,er
-poisonous	a
-Poisson	pc
-poke	n,v,er,y
-pokerface	n
-pokey	n
-pol	a,nopref
-Poland	pc
-polar	n,a,na
-polarimeter	n
-Polaris	n
-polariscope	n
-polariscopic	a
-polariton	n
-polarograph	n,v
-polarography	n
-Polaroid	pc
-polaron	n
-polder	n
-pole	n,v,er,na
-polecat	n
-polemic	n,a,na
-police	n,v,man
-policy	n
-policyholder	n
-polio	n
-poliomyelitis	n
-polis	n,nopref
-polish	n,v,er
-politburo	n
-polite	a,comp,na,in
-politesse	n
-politic	n,na
-politician	n
-politicker	n
-politicking	d
-politico	n
-politics	d
-polity	n
-Polk	n
-polka	n,v
-poll	n,v,er,nopref
-pollack	n
-Pollard	n
-pollen	n,na
-pollinate	v,ion
-polliwog	n
-pollock	n
-pollster	n
-pollutant	n
-pollute	v,er,ion
-Pollux	pc
-Pollyanna	n
-polo	n,na
-polonaise	n
-polonium	n
-polopony	n
-poltergeist	n
-poltroon	n,a
-poly	d
-polyandry	n
-polyethylene	n
-polygamist	n
-polygamous	a
-polygamy	n
-polyglot	n,a,na
-polygon	n
-polygonal	a
-polygynous	a
-polyhedra	n
-polyhedral	a
-polyhedron	n
-Polyhymnia	pc
-polymathic	n,a
-polymer	n,y
-polymerase	n
-polymeric	n,a
-polymorph	n,na
-polymorphic	n,a
-polymorphous	a
-Polynesia	pc
-Polynices	pc
-polynomial	n,a
-polyp	n
-Polyphemus	pc
-polyphonous	a
-polyphony	n
-polyploid	n,a
-polypropylene	n
-polytechnic	n,a
-polytheism	n
-polytheist	n,a,na
-polytope	n
-polytypy	n
-pomade	n,v
-pomegranate	n
-pomology	n,na
-Pomona	pc
-pomp	n
-pompadour	n
-pompano	n
-Pompeii	pc
-pompon	n
-pomposity	n
-pompous	a
-Ponce	pc
-Ponchartrain	pc
-poncho	n
-pond	n,nopref
-ponder	v,er,va,in
-ponderous	a
-pong	d
-poniard	n,v
-Pontiac	n
-pontifex	n
-pontiff	n
-pontific	n
-pontificate	n,v,ion
-pontoon	n
-pony	n,nopref
-ponytail	n
-Ponzi	n
-pooch	n
-poodle	n
-pooh	v,er
-pool	n,v,er,nopref
-Poole	n
-poolroom	n
-poop	n,v,er
-poor	a,comp
-poorhouse	n
-poorish	a
-pop	n,v,er,nopref,ms
-popcorn	n
-pope	n
-popery	n
-popeye	ed
-popgun	n
-popinjay	n
-popish	a
-poplar	n,nopref
-poplin	n
-popover	n
-poppet	n
-poppy	n,ed
-poppycock	n
-popsicle	n
-populace	n
-popular	a,na
-populate	v,ion
-populism	n
-populist	na
-populous	a
-porcelain	n,na
-porch	n
-porcine	a
-porcupine	n
-pore	n,v,nopref
-porgy	n
-pork	n,er
-porn	d
-porno	d
-pornography	n,er
-porosity	n
-porous	a,nopref
-porphyry	n
-porpoise	n
-porridge	n
-porringer	n
-Porsche	n
-port	n,v,a,er,ion,va,in
-portage	n
-portal	n,a
-portamenti	pc
-portamento	pc
-portation	n,na
-portcullis	n
-Porte	n
-portend	v
-portent	n
-portentous	a
-porter	n
-porterage	n
-porterhouse	n
-portfolio	n
-porthole	n
-Portia	pc
-portico	n
-portiere	n
-Portland	pc
-portmanteau	n,a
-Porto	pc
-portrait	n,na
-portraiture	n
-portray	v,er
-portrayal	n
-Portsmouth	pc
-Portugal	pc
-Portuguese	a
-portulaca	n
-posada	n
-pose	n,v,er,na,va,in
-Poseidon	pc
-poseur	n
-posh	a,comp
-posit	v
-position	n,v,er,na,va,in
-positron	n
-posse	n,man
-possess	v
-possession	n,na,va
-possessor	n,y
-possible	a,va,in
-possum	n
-post	n,v,er,man
-postage	n
-postal	a
-postbellum	a
-postcard	n
-postclassic	a
-postcondition	n
-postdate	v
-postdoc	n
-postdoctoral	a
-posterior	n,a
-posteriori	d
-posterity	n
-postern	n,a
-postfix	v
-postglacial	a
-postgraduate	n,a
-posthaste	d
-posthumous	a
-posthypnotic	a
-postilion	n
-postimpression	n,na
-postlude	n
-postmark	n,v
-postmaster	n
-postmillenarian	n,na
-postmistress	n
-postmodern	n,na
-postmortem	n,a
-postmultiply	v
-postnasal	a
-postnuptial	a
-postoperative	a
-postorder	n,v
-postpaid	a
-postpartum	a
-postpone	v,er,va
-postprandial	a
-postprocess	v
-postprocessor	n
-postscript	n,ion
-postulant	n,a,na
-postulate	n,v,ion
-postural	a
-posture	n,v,er,in
-postwar	a
-posy	n
-pot	n,v,er,na,ms,y
-potable	n,a,va
-potash	n
-potassium	n
-potation	n
-potato	pc
-potatoes	d
-potbelly	n,ed
-potboil	v,er
-potent	a,na,in
-potentate	n
-potential	n,a
-potentiate	v,ion
-potentiometer	n
-pothole	n
-pothook	n
-pothunter	n
-potion	n
-potlatch	n,v
-potluck	n
-Potomac	pc
-potpourri	n
-potsherd	n
-potshot	n,v
-pottage	n
-potter	n,v,er,y
-pottery	n
-Potts	n
-pouch	n,v,y
-Poughkeepsie	pc
-poultice	n,v
-poultry	n,man
-pounce	n,v
-pound	n,v,er,va,in
-poundage	n
-poundal	n
-pour	n,v,er,va,in
-pout	n,v,er,y
-poverty	n
-pow	n
-powder	n,v,er
-powderpuff	n
-powdery	a,comp
-Powell	n
-power	n,v,na
-powerhouse	n
-powwow	n,v
-pox	n,v
-Poynting	pc
-ppm	d,nopref
-PR	d,nopref
-practicable	a,in
-practical	a,in
-practice	n,v,er
-practitioner	n
-Prado	pc
-pragmatic	n,a,na
-pragmatism	n
-pragmatist	n,a,na
-Prague	pc
-prairie	n
-praise	n,v,er
-praiseworthy	a
-praline	n
-pram	n
-prance	n,v,er
-prank	n,v
-prankish	a
-prankster	n
-praseodymium	n
-prate	n,v,er
-pratfall	n
-Pratt	pc
-prattle	n,v,er
-Pravda	pc
-prawn	n,v,er
-praxes	pc
-praxis	pc
-pray	n,v,nopref
-prayer	n,na
-preach	v,er,va
-preachy	a,comp
-preamble	n
-Precambrian	a
-precarious	a
-precaution	n
-precautionary	a
-precede	v
-precedent	n,ed,a
-precept	n,ion
-preceptive	a
-precess	v
-precession	n,na
-precinct	n
-precious	a
-precipice	n
-precipitable	a
-precipitate	n,v,a,ion
-precipitous	a
-precis	d
-precise	a,in
-precision	n,a,na,in
-preclude	v
-preclusion	n,na,va
-precocial	a
-precocious	a
-precocity	n
-precursor	n
-predaceous	a
-predacious	a
-predecessor	n
-predicament	n
-predicate	n,v,a,ion
-predict	v,ion,va
-predilect	ion
-predispose	v
-predisposition	n
-predominant	a,na
-predominate	v,a,ion
-preemie	n
-preeminent	a
-preempt	v,ion
-preen	n,v,er,nopref
-prefab	n
-prefabricate	v,ion
-preface	n,v,er
-prefatory	a
-prefect	n,nopref
-prefecture	n
-prefer	n,v,er,va,ms
-preferable	a
-preference	n
-preferential	a
-prefix	n,v
-pregnant	a,na
-prehensile	a,nopref
-prehension	n,na,va
-prehistoric	n,a
-prehominid	n,a
-prejudice	n,v
-prejudicial	a
-prelim	n,a
-preliminary	n,a
-prelude	n,v,er
-premature	n,a
-premed	n
-premeditate	v,ion
-premier	n,a
-premiere	n,v,a
-premise	n,v
-premium	n,a
-premonition	n
-Prentice	n
-preoccupy	v
-prep	n,v,ms
-preparation	n,na,va
-preparator	n,y
-prepare	v,er
-preponderant	a,na
-preponderate	v,ion
-preposition	n,na,va
-preposterous	a
-preppy	n,a,comp
-prerequisite	n,a
-prerogative	n,ed
-presage	n,v,er,na
-presbyter	n
-presbyterial	n,a
-Presbyterian	n,a,na
-presbytery	n
-prescient	a
-Prescott	n
-prescribe	v,er
-prescript	n,ion
-present	n,v,a,er,va
-presentation	n,na,va
-preservation	n,na,va
-preserve	n,v,er,va
-preside	v,er
-president	n,a,na
-presidential	a
-press	n,v,er,va,man,in
-pressboard	n
-pressroom	n
-pressure	n,v,na
-prestidigitate	ion
-prestige	n
-prestigious	a
-presto	n
-Preston	n
-presume	n,v,er,va
-presumed	d
-presuming	a
-presumption	n,na,va
-presumptuous	a
-presuppose	v
-presupposition	n
-pretend	v,er
-pretension	n
-pretentious	a
-preterite	n
-preternatural	a
-pretext	n
-Pretoria	pc
-prettify	v,ion
-pretty	v,a,comp
-pretzel	n
-prevail	v
-prevalent	n,a
-prevaricate	v,ion
-prevent	v,er,ion,va
-preview	n,v,er
-previous	a
-prexy	n
-prey	n,v,er
-Priam	pc
-price	n,v,er
-prick	n,v,a,er
-prickle	n,v
-pride	n,v,na
-priest	n,a
-priestess	n
-Priestley	n
-prig	n
-priggish	a
-prim	v,a,comp,ms
-prima	d
-primacy	n
-primal	a
-primary	n,a
-primate	n
-prime	n,v,a,er
-primeval	a
-primitive	n,a,na
-primitivism	n
-primo	n
-primogeniture	n
-primordial	a
-primp	v,er
-primrose	n
-primus	n
-prince	n,a
-princedom	n
-princeling	n
-princess	n,a
-Princeton	pc
-principal	n,a
-principia	pc
-principle	n,ed
-print	n,v,er,va
-printery	n
-printout	n
-prion	n
-prior	n,a,na
-prioress	n
-priori	d
-priory	n
-Priscilla	pc
-prism	n
-prismatic	n,a
-prismoid	n
-prison	n,v,er,va,in
-prissy	a,comp
-pristine	a
-Pritchard	n
-prithee	d
-privacy	n
-private	n,a,ion
-privateer	n,v
-privet	n
-privilege	n,v
-privity	n
-privy	n,a
-prix	d
-prize	n,v,a,er
-prizefight	n,vi,er
-prizewin	vi,er,ms
-pro	n
-proactive	a
-probabilist	n,a,na
-probate	n,v,ion
-probationary	a
-probe	n,v,er,va,in
-probity	n
-problem	n
-problematic	n,a
-proboscis	n
-procaine	n
-procedural	a
-procedure	n
-proceed	v
-process	n,v,a
-procession	n,v,na
-processor	n
-proclaim	v,er
-proclamation	n
-proclivity	n
-proconsul	n
-procrastinate	v,ion
-procreate	v,ion
-procrustean	a
-Procrustes	pc
-Procter	n
-proctology	n,na
-proctor	n,v
-procurator	n
-procure	v,er,va
-procuress	n
-Procyon	pc
-prod	n,v,er,ms
-prodigal	n,a
-prodigious	a
-prodigy	n
-produce	n,v,er
-producible	a,va
-product	n,ion
-productivity	n
-prof	n,nopref
-profanation	n
-profane	v,a,er
-profess	v
-profession	n
-professional	n,a,na
-professor	n
-professorial	a
-proffer	n,v
-proficient	n,a,na
-profile	n,v,er
-profit	n,v,va
-profiteer	n,v
-profligacy	n
-profligate	n,a
-profound	a,comp
-profundity	n
-profuse	a
-profusion	n
-progenitor	n
-progeny	n
-progesterone	n
-prognosis	pc
-prognosticate	v,ion
-program	n,v,er,va,ms
-programmatic	n,a
-progress	n,v,na
-progression	n,na,va
-prohibit	v
-prohibition	n,na,va
-prohibitory	a
-project	n,v,ion,va
-projectile	n,a
-prokaryote	n
-Prokofieff	pc
-prolate	a
-prolegomena	pc
-proletarian	n,a,na
-proletariat	n
-proliferate	v,a,ion
-prolific	n,a
-prolix	a
-prologue	n,na
-prolong	v,er
-prolongate	v,ion
-prolusion	n
-prom	n
-promenade	n,v,er
-Promethean	a
-Prometheus	pc
-promethium	n
-prominent	a
-promiscuity	n
-promiscuous	a
-promise	n,v,er
-promissory	a
-promontory	n
-promote	v,er,ion,va
-promotion	n,na,va
-prompt	n,v,a,er
-promptitude	n
-promulgate	v,ion
-pronate	v,ion
-prone	a
-prong	n,v
-pronghorn	n
-pronominal	a
-pronoun	n
-pronounce	v,er,va
-pronounceable	a
-pronto	d
-pronunciamento	n
-pronunciation	n,na
-proof	n,v,a,er
-proofread	v,er
-prop	n,v,man,ms
-propagable	a,va
-propaganda	n
-propagandist	n,a,na
-propagate	v,ion
-propane	n
-propel	v,er,ms
-propellant	n
-propensity	n
-proper	n,a,in
-property	n,ed
-propertyless	a
-prophecy	n
-prophesy	v,er
-prophet	n
-prophetess	n
-prophetic	n,a
-prophylactic	n,a
-prophylaxis	n
-propinquity	n
-propionate	n
-propitiable	a
-propitiate	v,ion
-propitious	a
-proponent	n
-proportion	n,v,na,va
-proportionate	v,a
-propos	d
-proposal	n
-propose	v,er
-proposition	n,v,na
-propound	v,er
-proprietary	n,a
-proprietor	n
-proprietress	n
-propriety	n,in
-proprioception	n,na,va
-propulsion	n,na,va
-propyl	n
-propylene	n
-prorate	v,er,ion
-prorogue	v
-prosaic	n,a
-proscenium	n
-prosciutto	pc
-proscribe	v,er
-proscription	n,na,va
-prose	n,er,y
-prosecute	v,ion,va
-prosecutor	n
-prosecutorial	a
-proselyte	n,v,na
-Proserpine	pc
-prosodic	n,a
-prosodist	n
-prosody	n
-prosopopoeia	n
-prospect	n,v,ion
-prospectus	n
-prosper	v,a
-prosperous	a
-prostate	a,na
-prostheses	d
-prosthesis	pc
-prosthetic	n,a
-prostitute	n,v,a,ion
-prostrate	v,a,ion
-protactinium	n
-protagonist	n
-protean	a
-protease	n
-protect	v,ion
-protectorate	n
-protectress	n
-protege	n
-protegee	n
-protein	n
-proteolysis	pc
-proteolytic	a
-protest	n,v,er
-protestant	n,a,na
-protestation	n
-prothonotary	n
-protocol	n
-protolanguage	n
-proton	n
-protoplasm	n
-protoplasmic	a
-protoplast	n
-protoplastic	a
-prototype	n,v
-prototypic	a
-protozoa	pc
-protozoan	n,a
-protozooic	a
-protozoon	n
-protract	v,ion
-protractor	n
-protrude	v
-protrusion	n,na,va
-protuberant	a
-proud	a,comp,na
-Proust	pc
-prove	v,er,va,in
-proven	a
-provenance	n
-Provencal	pc
-provender	n
-proverb	n,v
-proverbial	a
-provide	v,er
-provident	a,in
-providential	a
-province	n
-provincial	n,a,na
-provision	n,v,er
-provisional	n,a
-proviso	n
-provisory	a
-provocateur	n
-provocation	n,na,va
-provoke	v
-provolone	n
-provost	n
-prow	n,a
-prowess	n
-prowl	n,v,er
-proximal	a
-proximate	a
-proximity	n
-proxy	n,a
-prude	n,na
-prudent	a,in
-prudential	a
-prudery	n
-prudish	a
-Pruitt	n
-prune	n,v,er
-prurient	a,na
-Prussia	pc
-pry	n,v,er,nopref
-p's	d,nopref
-P.S.	d,nopref
-psalm	n,na
-psalter	n,y
-psaltery	n
-pseudo	a
-pseudonym	n
-pseudonymous	a
-pshaw	d
-psi	n
-psoriasis	pc
-psych	v
-psyche	n
-psychedelic	a
-psychiatric	n,a
-psychiatrist	n
-psychiatry	n
-psychic	n,a
-psycho	n,a
-psychogenic	a
-psychokinesis	pc
-psychology	n,na
-psychometry	pc
-psychopath	n,y
-psychopathic	n,a
-psychoses	d
-psychosis	pc
-psychotic	a
-PTA	n,nopref
-ptarmigan	n
-pterodactyl	n
-Ptolemaic	a
-Ptolemy	pc
-ptomaine	n
-pub	n
-puberty	n
-pubescent	a
-pubic	d,nopref
-public	n,a,na
-publican	n
-publication	n
-publicly	d
-publish	v,er,va
-PUC	pc,nopref
-Puccini	pc
-puce	n
-puck	n,er
-puckish	a
-pudding	n
-puddle	n,v,er
-pudenda	pc
-pudendum	pc
-pudgy	a,comp
-pueblo	n
-puerile	a,na
-Puerto	pc
-puff	n,v,er,y
-puffball	n
-puffery	n
-puffin	n
-pug	n,v,nopref,ms
-Pugh	n
-pugilism	n
-pugilist	n,na
-pugnacious	a
-pugnacity	n
-puissant	a
-puke	n,v
-pukka	a
-Pulaski	pc
-pulchritude	n
-pule	v,er
-Pulitzer	n
-pull	n,v,er
-pullback	n
-pullet	n
-pulley	n
-Pullman	n
-pullout	n
-pullover	n,a
-pulmonary	a
-pulmonic	a
-pulp	n,v,er,y
-pulpit	n
-pulpwood	n
-pulsar	n
-pulsate	v,ion
-pulsatile	a
-pulse	n,v,er,in
-pulverable	a
-puma	n
-pumice	n,v
-pump	n,v,er
-pumpernickel	n
-pumpkin	n
-pumpkinseed	n
-pun	n,v,nopref,ms
-punch	n,v,er,y
-punchboard	n
-puncheon	n
-punctate	a,ion
-punctilio	n
-punctilious	a
-punctual	a
-punctuate	v,ion
-puncture	n,v
-pundit	n
-punditry	n
-pungent	a,na
-Punic	a
-punish	v,er,va
-punitive	a
-punk	n,a,y
-punkah	n
-punster	n
-punt	n,v,er
-puny	a,comp
-pup	n,v,ms
-pupa	n
-pupae	pc
-pupal	a
-pupate	v,ion
-pupil	n
-pupillary	a
-puppet	n
-puppeteer	n
-puppetry	pc
-puppy	n
-puppyish	a
-purblind	a
-Purcell	pc
-purchase	n,v,er,va
-purdah	n
-Purdue	pc
-pure	n,a,comp,na,in
-purebred	n,a
-puree	n,v
-purgation	n,na,va
-purgatory	n
-purge	n,v,er
-purify	v,er,ion
-Purina	pc
-purine	n
-puritan	n,a,na
-puritanic	n
-purl	n,v
-purlieu	n
-purloin	v,er
-purple	n,v,a,comp
-purplish	a
-purport	n,v
-purpose	n,v,a,na
-purposive	a
-purr	n,v,er
-purse	n,v,er,y
-purslane	n
-pursuant	a
-pursue	v
-pursuer	n
-pursuit	n
-pursuivant	n
-purulent	a
-purvey	v
-purveyance	n
-purveyor	n
-purview	n
-pus	n,nopref
-Pusan	pc
-Pusey	n,na
-push	n,v,er,y
-pushball	n
-pushbutton	n
-pushcart	n
-pushover	n
-pushpin	n
-pusillanimity	n
-pusillanimous	a
-puss	n,nopref,y
-pussycat	n,v
-pussyfoot	n,v
-pustulant	n,a
-pustular	a
-pustulate	v,ion
-pustule	n
-put	n
-putative	a
-Putnam	n
-putrefaction	n,na,va
-putrefy	v
-putrescent	a
-putrid	a
-putsch	n,na
-putt	n,v,nopref
-putter	n,v,er,nopref
-putty	n,v,er
-puzzle	n,v,er,va
-PVC	pc,nopref
-Pygmalion	n
-pygmy	n,a,na
-Pyhrric	pc
-Pyle	n
-pylon	n
-pyloric	a
-Pyongyang	pc
-pyramid	n,v
-pyramidal	a
-pyre	n
-pyrethrin	n
-pyrethrum	n
-Pyrex	pc
-pyridine	n
-pyrite	n,na
-pyroelectric	a
-pyrolysis	pc
-pyrolytic	n,a
-pyromania	n,na
-pyrometer	n
-pyrophosphate	n
-pyrotechnic	n,a
-pyroxene	n
-pyrrhic	n,a
-Pythagoras	pc
-Pythagorean	n,a,na
-Pythias	pc
-python	n
-Q&A	n,nopref
-Qatar	pc
-QED	pc,nopref
-q's	d,nopref
-qua	d
-quack	n,v,er,a
-quackery	n
-quad	n,v,ms
-quadrangle	n
-quadrangular	a
-quadrant	n
-quadratic	n,a
-quadrature	n
-quadrennial	n,a
-quadrennium	n
-quadric	n,a
-quadriceps	n
-quadrilateral	n,a
-quadrille	n,a
-quadrillion	n,a
-quadrillionth	n,a
-quadripartite	a
-quadriplegia	d
-quadriplegic	a
-quadrivium	n
-quadroon	n
-quadruped	n,a
-quadruple	n,v,a
-quadruplet	n
-quadruplicate	n,v,a
-quadrupole	n
-quaff	n,v,er
-quagmire	n
-quahog	n
-quail	n,v
-quaint	a,comp
-quake	n,v,er
-Quakeress	pc
-qualified	a
-qualify	v,er,ion
-qualitative	a
-quality	n
-qualm	n,y
-qualmish	a
-quandary	n
-quanta	d
-Quantico	pc
-quantify	v,er,ion
-quantile	n
-quantitate	v,ion
-quantitative	a
-quantity	n
-quantum	n
-quarantine	n,v,va
-quark	n
-quarrelsome	a
-quarry	n,v,er,man
-quart	n,er
-quarterback	n,v
-quarterdeck	n
-quarterfinal	n,a
-quarterfinalist	n
-quartermaster	n
-quarternion	n
-quartet	n
-quartette	n
-quartic	n,a
-quartile	n
-quarto	n
-quartz	n
-quasar	n
-quash	v,er
-quasi	a
-quaternary	n,a
-quatrain	n
-quaver	n,v
-quay	n,nopref
-quayside	n
-Que.	d,nopref
-queasy	a,comp
-queazy	a,comp
-Quebec	pc
-Quechua	n
-queen	n,v,a,na
-Queensland	pc,nopref
-queer	n,v,a,comp
-queerish	a
-quell	n,v,er
-quench	n,v,er,va
-Quentin	pc
-querulous	a
-query	n,v
-quest	n,v,er,in
-question	n,v,er,va
-questionnaire	n
-quetzal	n
-queue	n,v,er
-Quezon	pc
-quibble	n,v,er
-quiche	n
-quick	n,v,a,comp
-quicken	v,er
-quickie	n
-quicklime	n
-quicksand	n
-quicksilver	n,a
-quickstep	n
-quid	n,a,ms
-quiescent	a
-quiet	n,v,a,comp,na
-quietude	pc,in
-quietus	n
-quill	n,v
-quilt	n,v,er
-quince	n
-quinine	n
-Quinn	pc
-quinquennial	n,a
-quint	n
-quintal	n
-quintessence	n
-quintessential	a
-quintet	n
-quintette	n
-quintic	n,a
-quintile	n
-quintillion	n,a
-quintuple	n,v,a
-quintuplet	n
-quintuplicate	n,v,a
-quip	n,v,er,ms
-quire	n
-Quirinal	pc
-quirk	n,v,y
-quirt	n,v
-quisling	n,na
-quit	n,v,er,nopref,ms
-quite	d,nopref
-Quito	pc
-quiver	n,v
-Quixote	pc
-quixotic	n,a
-quiz	n,v,er,ms
-quizzical	a
-quo	d
-quod	n
-quoin	n,v
-quoit	n,v
-quondam	a
-quonset	n
-quorum	n
-quota	n
-quotation	n
-quote	n,v,er,va
-quoth	v
-quotidian	a
-quotient	n
-Rabat	pc
-rabbet	n,v
-rabbi	n,a,comp
-rabbinate	n
-rabbinic	n,a
-rabbit	n,v,er
-rabbity	a,comp
-rabble	n,v,er,va
-rabid	a
-rabies	n
-raccoon	n
-race	n,v,er,na,y
-racecourse	n
-racehorse	n
-racemic	a
-racetrack	n
-raceway	n
-Rachel	pc
-Rachmaninoff	pc
-racial	a,na
-rack	n,v,er
-racket	n,v,y
-racketeer	n,v
-raconteur	n
-racquet	n
-radar	n,man
-Radcliffe	pc
-radial	n,a
-radian	n
-radiant	n,a,na,in
-radiate	v,a,ion,in
-radical	n,a,na
-radices	d
-radii	d
-radio	n,v,a,comp,man
-radiograph	n
-radiography	n
-radiolarian	n
-radiology	n,na
-radiosity	n
-radiosonde	n
-radish	n
-radium	n
-radius	n,v
-radix	n
-radome	n
-radon	n
-Rae	pc
-Rafael	pc
-Rafferty	n
-raffia	n
-raffish	a
-raffle	n,v
-raft	n,v,er,nopref
-rafts	man
-rag	n,v,man,nopref,ms
-ragamuffin	n
-rage	n,v
-raggedy	a,comp
-raglan	n
-ragout	n
-ragtag	a
-ragtime	n
-ragweed	n
-raid	n,v,er,nopref
-rail	n,v,er
-railbird	n
-railhead	n
-raillery	n
-railroad	n,v,er
-railway	n
-raiment	n
-rain	n,v,nopref,y
-rainbow	n
-raincoat	n
-raindrop	n
-rainfall	n
-rainproof	a
-rainspout	n
-rainstorm	n
-rainwear	n
-raise	n,v,er,nopref
-raisin	n
-raison	d
-raj	n
-rajah	n
-Rajiv	n
-rake	n,v,er
-rakehell	n,a
-rakish	a
-Raleigh	n
-rally	n,v,nopref
-Ralph	pc
-Ralston	n
-ram	n,v,er,nopref,ms
-Ramada	pc
-Raman	pc
-ramble	n,v,er
-rambunctious	a
-ramify	v,ion
-Ramirez	n
-Ramo	pc
-Ramon	pc
-Ramona	pc
-Ramos	n
-ramp	n,v
-rampage	n,v
-rampant	a,na
-rampart	n
-ramrod	n,a
-Ramsey	n
-ramshackle	a
-ran	d
-ranch	n,v,er,nopref
-rancho	n
-rancid	a
-rancorous	a
-Rand	n
-Randall	n
-Randolph	n
-random	n,a,na
-randy	n,a,comp
-rang	d
-range	n,v,er,y
-rangeland	n
-Rangoon	pc
-Ranier	pc
-rank	n,v,a,er
-Rankin	n
-Rankine	a
-rankle	v
-ransack	v,er
-ransom	n,v,er
-rant	n,v,er
-Rao	n
-Raoul	pc
-rap	n,v,er,nopref,ms
-rapacious	a
-rapacity	n
-rape	n,v,er,na
-Raphael	n
-rapid	n,a
-rapier	n
-rapine	n
-rappel	n,v,er,ms
-rapport	n
-rapprochement	n
-rapscallion	n
-rapt	a
-raptor	n
-rapture	n,v
-rapturous	a
-rara	d
-rare	n,v,a,comp
-rarebit	n
-rarefaction	n,na,va
-rarefy	v
-Raritan	pc
-rasa	d
-rascal	n,a
-rash	n,a,comp
-Rasmussen	n
-rasp	n,v,er,y
-raspberry	n
-raster	n,na
-Rastus	pc
-rat	n,v,er,na,ms,y
-rata	d,nopref
-ratatouille	n
-ratchet	n,v
-rate	n,v,er,ion,va
-ratepayer	n
-rather	d
-rathskeller	n
-ratify	v,ion
-ratio	n
-ratiocinate	v,ion
-rationale	n,a,na
-rattail	n
-rattan	n
-rattle	n,v,er
-rattlesnake	n
-rattletrap	n,ms,y
-rattly	a,comp
-raucous	a
-Raul	n
-raunchy	a,comp
-ravage	n,v,er
-rave	n,v,er,nopref
-raven	n,v,er
-ravenous	a
-ravine	n,ed
-ravioli	pc
-ravish	v,er,va
-raw	n,a,comp
-rawboned	a
-rawhide	n,v
-Rawlinson	n
-ray	n,ed
-Rayleigh	n
-Raymond	n
-rayon	n
-Raytheon	pc
-raze	v,er
-razor	n
-razorback	n
-razz	n,v,er
-razzle	ed
-RBI	n,nopref
-RCA	pc,nopref
-R&D	pc,nopref
-re	a,nopref
-reach	n,v,va
-reactant	n,a
-reactionary	n,a
-read	n,vi,er,va
-readout	n
-ready	n,v,a
-Reagan	n
-real	n,a
-realism	n
-realist	n,na
-reality	n
-realm	n
-realtor	n
-realty	n,nopref
-ream	n,v,er
-reap	v
-rear	n,v,a
-rearmost	a
-rearward	n,a
-reason	n,v,er,va
-reave	v
-reb	n
-rebarbative	a
-Rebecca	pc
-rebel	n,v,a,ms
-rebellion	n
-rebellious	a
-rebuke	n,v,er
-rebut	v,er,ms
-rebuttal	n
-recalcitrant	n,a,na
-recantation	n
-recappable	a
-receipt	n,v
-receivable	n,a
-receive	v,er
-recension	n
-recent	a
-receptacle	n
-reception	n,na,va
-receptor	n
-recess	n,v
-recherche	d
-recidivism	n
-recidivist	n,a
-Recife	pc
-recipe	n
-recipient	n,a
-reciprocal	n,a
-reciprocate	v,ion
-reciprocity	n
-recital	n,na
-reck	n,v
-reckon	v
-reclamation	n
-recline	v,er
-recluse	n,a
-reclusive	a
-recombinant	n
-recompense	n,v
-reconcile	v,va,in
-recondite	a
-reconnaissance	n
-recovery	n
-recreant	a
-recriminate	v,ion
-recrudescent	a
-recruit	n,v,er,va
-rectal	a
-rectangle	n
-rectangular	a
-rectifier	n
-rectify	v,ion
-rectilinear	a
-rectitude	n
-recto	n
-rector	n
-rectory	n
-rectum	n
-recumbent	a,na
-recuperate	v,ion
-recur	v,ms
-recurrent	a
-recursion	n
-recusant	n,a,na
-recuse	v,va,in
-red	n,v,a,comp,ms
-redact	v,ion
-redbird	n
-redbud	n
-redcap	n
-redcoat	n
-redden	v
-reddish	a
-redemption	n,er,na,va
-redemptory	a
-redhead	n
-redivivus	d
-redleg	n
-Redmond	pc
-redneck	n,ed
-redolent	a
-redound	v
-redox	d
-redpoll	n
-redshank	n
-redskin	n
-redstart	n
-Redstone	pc
-redtop	n
-reduce	v,er
-reducible	a,va,in
-redundant	a,na,in
-redwing	n
-redwood	n
-Reebok	n
-reed	n,v,nopref,y
-reedbuck	n
-reef	n,v,er
-reek	n,v,er,y
-reel	n,v,er,va
-reemit	v,ms
-reenable	v
-Reese	n
-reeve	n,v
-ref	n
-refection	n
-refectory	n
-refer	v,er,ms
-referable	a
-referee	n,v
-referenda	pc
-referendum	n
-referent	n,a
-referential	a
-referral	n
-refinement	n
-refinery	n
-reflect	v,ion
-reflectance	n
-reflectible	a
-reflectometer	n
-reflexive	n,a,in
-reformatory	n,a
-refract	v,ion
-refractometer	n
-refractor	n,y
-refrain	n,v,va
-refrangible	a,va,in
-refrigerant	n,a
-refrigerate	v,ion
-refuge	n,v
-refugee	n
-refulgent	a
-refusal	n
-refusenik	n
-refutation	n
-refute	v,er,va,in
-regalia	n
-regality	n
-regard	n,v,na
-regatta	n
-regelation	n
-regeneracy	n
-reggae	pc
-regicide	n
-regime	n
-regimen	n
-regiment	n,v
-regimental	n,a
-regimentation	n
-Regina	pc
-Reginald	pc
-region	n
-regional	n,a,na
-Regis	pc
-registrable	a
-registrant	n
-registrar	n
-registration	n
-registry	n
-regolith	n
-regress	n,v
-regression	n,na,va
-regressor	n
-regret	n,v,er,na,va,ms
-regular	n,a,na,in
-regulate	v,ion
-Regulus	pc
-regurgitate	v,ion
-rehabilitate	v,ion
-rehearsal	n
-Reich	pc
-Reid	n
-reify	v,ion
-reign	n,v
-Reilly	n
-reimburse	v,va
-rein	n,v
-reindeer	n
-reinforce	v,er,va
-Reinhold	n
-reject	n,v,er,ion,va
-rejoice	v,er
-rejoinder	n
-rejuvenate	v,ion
-relatedly	d
-relaxant	n,a
-relaxation	n,na
-relayed	d
-relent	n,v
-relevant	a,na,in
-reliably	a
-reliant	a
-relic	n
-relict	n,ion
-relief	n
-relies	d
-relieve	v,er,va
-religion	n,na,in
-religiosity	n
-religious	n,a,in
-relinquish	v,va
-reliquary	n
-relish	n,v,va
-reluctant	a,na
-remainder	n,v,a
-remand	n,v
-remanent	a
-Rembrandt	n
-remediable	a,in
-remedy	n,v
-remembrance	n,er
-Remington	n
-reminisce	v
-reminiscent	a
-remit	n,v,er,va,ms
-remittal	n
-remittance	n
-remnant	n,a
-remonstrant	n,a
-remonstrate	v,ion
-remorse	n,na
-remote	v,a,comp
-removal	n
-remunerate	v,ion
-Remus	pc
-Rena	pc
-renaissance	n
-renal	a
-Renault	n
-rend	v
-render	n,v,er,va
-rendezvous	n,v
-rendition	n
-Rene	n
-Renee	pc
-renegade	n,v,a
-renege	v,er
-renewal	n
-rennet	n
-Renoir	n
-renounce	n,v,er,va
-renovate	v,ion
-renown	n,v
-Rensselaer	pc
-rent	n,v,er,va
-rental	n,a
-rentier	n
-renunciate	ion
-rep	n
-repair	n,v,er,va,man
-reparable	a,in
-reparation	n,na,va
-repartee	n
-repatriate	n,v,ion
-repeater	n
-repel	v,er,ms
-repellent	n,a,na
-repentant	a
-repertoire	n
-repertory	n
-repetitious	a
-replete	a
-replica	n
-replicable	a
-replicate	n,v,a,ion
-reportorial	a
-repository	n,a
-reprehensible	a
-repressible	a,in
-repression	n,na,va
-repressor	n
-reprieve	n,v
-reprimand	n,v
-reprisal	n
-reprise	n,v
-reproach	n,v,er,na,va,in
-reprography	n,er
-reptile	n,a
-reptilian	n,a
-republican	n,a,na
-repudiate	v,ion
-repugnant	a,na
-repulsion	n,na,va
-reputation	n
-repute	n,v,va
-requiem	n
-require	v,va
-requisite	n,a,nopref
-requisition	n,v,er
-requital	n
-requite	n,v,er
-reredos	n
-rerouted	d
-rerouting	d
-rescind	v,er
-rescission	n
-rescue	n,v,er
-resemblant	a
-resemble	v
-resent	n,v,na,va
-reserpine	n
-reservation	n
-reservoir	n
-resident	n,a,na
-residential	a
-residua	pc
-residual	n,a
-residuary	a
-residue	n
-residuum	pc
-resignation	n
-resilient	a,na
-resinate	v
-resinous	a
-resist	n,v
-resistant	n,a
-resistible	a,va,in
-resistive	a
-resistor	n
-resonant	n,a
-resonate	v,ion
-resorcinol	n
-respect	n,v,er,na,va
-respective	a,in
-respiration	n,na
-respirator	n,y
-resplendent	a,na
-respond	n,v,er
-respondent	n,a
-response	n
-responsible	a,va,in
-responsive	a
-rest	n,v,er,na
-restaurant	n
-restaurateur	n
-restitute	v,ion
-restive	a
-restoration	n,na,va
-restraint	n
-restroom	n
-result	n,v,na
-resultant	n,a
-resume	v
-resumption	n
-resurgent	a
-resurrect	v,ion
-resuscitate	v,ion
-ret	v,ms
-retain	n,v,er,nopref
-retaliate	v,ion
-retard	n,v,er
-retardant	n,a
-retardation	n
-retch	n,v
-retention	n,na,va
-reticent	a,na
-reticle	n
-reticular	a
-reticulate	v,a,ion
-reticule	n
-reticulum	n
-retina	n
-retinal	a
-retinue	n
-retiree	n
-retort	n,v,ion
-retractile	a
-retribution	n,na,va
-retrieval	n
-retrieve	n,v,er,va,in
-retroaction	n
-retroactive	a
-retrofit	v,ms
-retroflex	ed,a
-retrograde	v,a
-retrogress	v
-retrogression	n,na,va
-retrorocket	n
-retrospect	n,v,a,ion
-retrovirus	n
-retrovision	n
-Reub	pc
-Reuben	n
-Reuters	pc
-rev	n,v,ms
-revanche	n,na
-revanchist	n,a
-reveille	n
-revelation	n
-revelatory	a
-revelry	n
-revenge	n,v,er
-revenue	n,er
-reverberant	a
-reverberate	v,a,ion
-revere	n,v
-reverend	n,a
-reverent	a,in
-reverential	a
-reverie	n
-reversal	n
-reversible	n,a,va,in
-reversionary	a
-revert	v,er
-revertible	a
-revertive	a
-revile	v,er
-revilement	n
-revisal	n
-revise	v,er,ion,va
-revival	n,na
-revive	v,er
-revoke	n,v,er,va
-revolt	n,v,er
-revolution	n,na
-revolutionary	n,a
-revolve	v,er,va
-revulsion	n,na,va
-Rex	pc
-Reyes	n
-Reykjavik	pc
-Reynolds	n
-RFP	n,nopref
-rhapsodic	n,a
-rhapsody	n
-Rhea	pc
-Rhenish	pc
-rhenium	n
-rheology	n
-rheostat	n
-rhesus	n
-rhetoric	n
-rhetorician	n
-rheum	n,y
-rheumatic	n,a
-rheumatism	n
-Rhine	pc
-rhinestone	n
-rhino	n
-rhinoceros	n
-rhizome	n
-rho	n
-Rhoda	pc
-Rhode	pc
-Rhodes	pc
-Rhodesia	pc
-rhodium	n
-rhododendron	n
-rhomb	n
-rhombi	d
-rhombic	a
-rhombohedra	d
-rhombohedral	a
-rhombohedron	pc
-rhomboid	n,a
-rhombus	n
-Rhonda	n
-rhubarb	n
-rhumb	n
-rhyme	n,v,er
-rhymester	n
-rhythm	n,na
-rhythmic	n,a
-RI	pc,nopref
-rialto	n
-rib	n,v,er,ms,y
-ribald	n,a
-ribaldry	n
-ribbon	n,v,na
-riboflavin	n
-ribonucleic	a
-ribosome	n
-Rica	pc
-Ricardo	n
-Riccardo	pc
-rice	n,er,nopref
-rich	a,comp
-Richard	pc
-Richards	n
-Richardson	n
-Richfield	n
-Richmond	n
-Richter	n
-rick	n,v,nopref
-rickets	n
-rickettsia	n
-rickettsiae	pc
-rickety	a,comp
-rickrack	n
-ricksha	n
-rickshaw	n
-Rico	pc
-ricochet	n,v
-rid	n,v,nopref,ms
-riddance	n
-ridden	d
-riddle	n,v,er
-ride	n,vi,er,va
-ridge	n,v,y
-ridgepole	n
-Ridgway	n
-ridicule	n,v,er
-ridiculous	a
-Riemann	pc
-Riesling	n
-rife	a
-riffle	n,v,er
-riffraff	n,a
-rifle	n,v,er,man
-riflery	n
-rift	n,v
-rig	n,v,er,ms
-rigamarole	n
-Rigel	pc
-Riggs	n
-right	n,v,a,er,na,y
-righteous	a
-rightmost	d
-rightward	a
-rigid	a,comp
-rigidify	v,ion
-rigorous	a
-rile	v
-Riley	n
-rill	n,ed
-rilly	a
-rim	n,v,nopref,ms
-rime	n,y
-rimester	n
-rind	n,ed
-Rinehart	n
-ring	n,v,er,na
-ringbolt	n
-ringleader	n
-ringlet	n
-ringmaster	n
-ringneck	n
-ringside	n
-ringtail	n
-ringtoss	n
-ringworm	n
-rink	n,nopref
-rinse	n,v,er
-Rio	pc
-Riordan	n
-riot	n,v,er
-riotous	a
-rip	n,v,er,ms
-riparian	a
-ripe	a,comp
-ripen	v,er
-Ripley	n
-ripoff	d
-riposte	n,v
-ripple	n,v,er
-riprap	n,v
-ripsaw	n
-ripsnort	vi,er
-riptide	n
-rise	n,vi,er
-risen	d
-risible	a,va
-risk	n,v,er,y
-risque	a
-Rita	pc
-ritardando	n
-Ritchie	n
-rite	n,nopref
-Ritter	n
-ritual	n,a,na
-Ritz	pc
-ritzy	a,comp
-rivalry	n
-riven	d
-river	n
-Rivera	n
-riverbank	n
-riverbed	n
-riverboat	n
-riverfront	n
-riverine	a
-riverside	n
-rivet	n,v,er
-Riviera	pc
-rivulet	n
-Riyadh	pc
-RNA	pc,nopref
-roach	n,v,nopref
-road	n,va,in
-roadbed	n
-roadblock	n
-roadhouse	n
-roadrunner	n
-roadside	n,a
-roadstead	n
-roadster	n
-roadway	n
-roadwork	n
-roam	n,v,er
-roan	n
-roar	n,v,er
-roast	n,v,a,er
-rob	v,er,ms
-robbery	n
-Robbins	n
-robe	n,v
-Roberson	n
-Robert	pc
-Roberta	pc
-Roberto	pc
-Roberts	n
-Robertson	n
-robin	n
-Robinson	n
-robot	n,na
-robotic	n,a
-robust	a
-roc	n
-Rocco	pc
-Rochester	n
-rock	n,v,er,nopref,y
-rockabye	d
-rockbound	a
-Rockefeller	n
-rocket	n,v
-rocketeer	n
-rocketry	pc
-rockfish	n
-Rockford	pc
-Rockies	pc
-Rockland	pc
-rockslide	n
-Rockwell	n
-rococo	n,a
-rod	n,na,man
-Rodale	pc
-rode	d
-rodent	n,a
-rodeo	n
-Rodgers	n
-Rodney	pc
-rodomontade	n,a
-Rodriguez	n
-roe	n,nopref
-roebuck	n
-roentgen	n,a,na
-roentgenography	n
-Roger	pc
-Rogers	n
-Roget	pc
-rogue	n,v,a
-roguish	a
-roil	v,er
-roily	a,comp
-roister	v,er
-Roland	n
-role	n,nopref
-Rolf	pc
-roll	n,v,er
-rollback	n
-rollerblade	n,v,er
-rollick	n,v
-Rollins	pc
-rollout	n
-roly	d
-romaine	n
-roman	n,a,na
-romance	n,v,er
-Romanesque	a
-Romania	pc
-Romano	pc
-romantic	n,a,na
-Rome	pc
-Romeo	n
-Romero	n
-romp	n,v,er
-Romulus	pc
-Ron	pc
-Ronald	pc
-rondeau	n
-rondo	n
-Ronnie	pc
-rood	n
-roof	n,v,er,na
-rooftop	n
-rooftree	n
-rook	n,v,y
-rookery	n
-rookie	n
-room	n,v,er,na,y
-roomette	n
-roommate	n
-Roosevelt	n
-Rooseveltian	n
-roost	n,v,er
-root	n,v,er,na,y
-rootlet	n
-rootstock	n
-rope	n,v,er,nopref,y
-ropewalk	n,er
-Rorschach	n
-Rosa	pc
-Rosalie	pc
-rosary	n
-Roscoe	pc
-rose	n,na,nopref,y
-roseate	a
-rosebud	n
-rosebush	n
-Roseland	pc
-Rosemarie	n
-rosemary	n
-Rosen	n
-Rosenberg	n
-Rosenblum	n
-Rosenthal	n
-Rosenzweig	n
-roseola	n
-Rosetta	pc
-rosette	n
-rosewater	a
-rosewood	n
-Rosicrucian	n,a,na
-Rosie	n
-rosin	n,v
-Ross	n
-roster	n
-rostrum	n
-rot	n,v,er,nopref,ms
-Rotarian	n
-rotary	n,a
-rotate	v,a,ion,va
-ROTC	pc,nopref
-rote	n
-Roth	n
-rotifer	n
-rotisserie	n
-rotogravure	n
-rotor	n
-rototill	v,er
-rotten	a,comp
-rottweiler	n
-rotund	a
-rotunda	n
-rouge	n,v
-rough	n,v,a,comp
-roughage	n
-roughcast	n,v
-roughen	v
-roughhewn	a
-roughhouse	n,v,a
-roughish	a
-roughneck	n
-roughrider	n
-roughshod	a
-roulade	n
-roulette	n,v
-round	n,v,a,comp
-roundabout	n,a
-roundhead	n,ed
-roundhouse	n
-roundoff	n
-roundtable	n
-roundup	n
-roundworm	n
-rouse	n,v,er
-Rousseau	pc
-roust	v,er
-roustabout	n
-rout	n,v,nopref
-route	n,v,er,man
-routine	n,a,na
-rove	n,v,er,nopref
-row	n,v,er,nopref
-rowboat	n
-rowdy	n,a,comp,na
-Rowe	n
-Rowena	pc
-Rowland	n
-Rowley	n
-Roxanne	n
-Roy	pc
-royal	n,a,na
-royalty	n
-Royce	n
-royster	n
-RPM	n,nopref
-RR	d,nopref
-r's	d,nopref
-RSVP	n,nopref
-Ruanda	pc
-rub	n,v,er,ms
-rubato	n
-rubberneck	n,v
-rubbery	a,comp
-rubbish	n,y
-rubble	n,a
-rubdown	n
-rube	n
-rubella	n
-Ruben	pc
-Rubicon	n
-rubicund	a
-rubidium	n
-rubric	n,a
-ruby	n
-rucksack	n
-ruckus	n
-ruction	n
-rudder	n
-ruddy	a,comp
-rude	a,comp
-rudiment	n,na
-rudimentary	a
-Rudolf	pc
-Rudolph	n
-Rudy	pc
-Rudyard	pc
-rue	n,v,na,nopref
-ruff	n,v,a
-ruffian	n,a,na
-ruffle	n,v,er
-rufous	a
-Rufus	pc
-rug	n,v,er,na,ms
-rugby	pc
-ruggedize	v,ion
-ruin	n,v,er
-ruination	n
-ruinous	a
-Ruiz	n
-rule	n,v,er,y
-rum	n,a,comp,ms,y
-rumble	n,v,a,er
-rumen	n
-Rumford	pc
-ruminant	n,a
-ruminate	v,ion
-rummage	n,v,er
-rummy	n,a,comp
-rumormonger	n
-rump	n,a,nopref
-rumple	n,v
-rumpus	n
-rumrun	vi,er,ms
-run	n,vi,er,va,ms,y
-runabout	n
-runaround	n
-runaway	n,a
-rundown	n
-rune	n,nopref
-rung	n
-Runge	pc
-runic	a
-runneth	d
-Runnymede	pc
-runoff	n
-runt	n,y
-runway	n
-Runyon	n
-rupee	n
-rupture	n,v
-rural	a,na
-ruse	n
-rush	n,v,a,er,y
-Rushmore	pc
-rusk	n
-Russ	n
-Russell	n
-russet	n,vi,a
-Russia	pc
-Russo	n
-rust	n,v,nopref,y
-rustic	n,a
-rusticate	v,ion
-rustle	n,v,er
-rustproof	a
-rut	n,v,nopref,ms,y
-rutabaga	n
-Rutgers	pc
-Ruth	pc
-ruthenium	n
-Rutherford	n
-ruthless	a
-rutile	n
-Rutland	pc
-Rutledge	n
-RV	n,nopref
-Rwanda	pc
-Ryan	n
-Rydberg	pc
-Ryder	n
-rye	n
-Saab	n,nopref
-sabbath	n
-sabbatic	n
-Sabena	pc
-Sabina	pc
-Sabine	n,a
-sable	n,nopref
-sabotage	n,v
-saboteur	n
-sabra	n
-sac	n,na
-saccade	n
-saccadic	a
-saccharine	a
-sacerdotal	a,na
-sachem	n
-sachet	n
-sack	n,v,er,na
-sackcloth	n
-sacral	a
-sacrament	n,na
-Sacramento	pc
-sacred	a
-sacrifice	n,v,er
-sacrificial	a
-sacrilege	n
-sacrilegious	a
-sacristan	n
-sacristy	n
-sacroiliac	n,a
-sacrosanct	a
-sacrum	n
-sad	a,comp,nopref,ms
-sadden	v
-saddle	n,v,er
-saddlebag	n
-saddlery	n
-sadhu	n
-Sadie	pc
-sadism	n
-sadist	n,a,na
-Sadler	n
-sadomasochism	n
-sadomasochist	n,na
-safari	n,v
-safe	n,a,comp
-safecrack	er
-safeguard	n,v
-safelight	n
-safety	n,v
-safflower	n
-saffron	n
-sag	n,v,er,ms
-saga	n
-sagacious	a
-sagacity	n
-sage	n,a,nopref
-sagebrush	n
-Saginaw	pc
-sagittal	a
-Sagittarius	pc
-sago	n
-saguaro	n
-Sahara	pc
-sahib	n
-said	d
-Saigon	pc
-sail	n,v,er
-sailboard	n,v,er
-sailboat	n
-sailcloth	n
-sailfish	n
-sailor	n
-sailplane	n
-saint	n,v,a
-saith	d
-sake	n,er,nopref
-saki	n
-Sal	pc
-salaam	n,v
-salacious	a
-salad	n
-salamander	n
-salami	pc
-salaried	a
-salary	n,man
-Salazar	n
-sale	n,va
-Salem	pc
-Salerno	pc
-sales	man
-salesclerk	n
-salesgirl	n
-Salesian	n
-saleslady	n
-salespeople	d
-salesroom	n
-salient	n,a,na
-Salina	pc
-saline	n,a
-Salisbury	pc
-Salish	pc
-saliva	n
-salivary	a
-salivate	v,ion,in
-Salk	n
-Salle	pc
-sallow	n,a,nopref
-sally	n,v
-salmon	n
-salmonella	n
-salon	n
-saloon	n
-salsify	n
-salt	n,v,a,er,y
-saltate	v,ion
-saltbox	n
-saltbush	n
-saltcellar	n
-saltine	n
-saltshaker	n
-saltwater	a
-saltworks	n
-salubrious	a,in
-salubrity	n,in
-salutary	a
-salutation	n,na
-salutatorian	n
-salutatory	n,a
-salute	n,v,er
-Salvador	pc
-salvage	n,v,er
-salvageable	a
-salvation	n,na
-Salvatore	pc
-salve	n,v,er,va
-salvo	n
-Sam	pc
-Samantha	n
-Samaritan	n,a
-samarium	n
-samba	n,v
-same	a
-samizdat	d
-Sammy	pc
-Samoa	pc
-samovar	n
-sampan	n
-sample	n,v,er
-Sampson	n
-Samson	n
-Samuel	n
-Samuelson	n
-samurai	n
-San	pc
-Sana	pc
-sanatarium	n
-sanatoria	pc
-sanatorium	n
-Sanborn	n
-Sanchez	n
-Sancho	pc
-sanctify	v,er,ion
-sanctimonious	a
-sanctimony	n
-sanction	n,v
-sanctity	n
-sanctuary	n
-sanctum	n
-sand	n,v,er,man,y
-sandal	n
-sandalwood	n
-sandbag	n,v,er,ms
-sandbank	n
-sandbar	n
-sandblast	n,v,er
-sandbox	n
-Sandburg	n
-sanderling	n
-Sanderson	n
-sandglass	n
-sandhill	n
-Sandia	pc
-sandlot	n,a
-sandpaper	n,v
-sandpile	n
-sandpiper	n
-Sandra	pc
-sandstone	n
-sandstorm	n
-Sandusky	pc
-sandwich	n,v
-sane	a,comp,in
-Sanford	n
-sang	d
-sangaree	n
-sangfroid	pc
-sanguinary	a
-sanguine	n,a
-sanguineous	a
-Sanhedrin	n
-sanitarian	n
-sanitarium	n
-sanitary	a
-sanitate	v,ion
-sank	d,nopref
-sans	d
-Sanskrit	a,na
-Santa	pc
-Santayana	pc
-Santiago	pc
-Santo	n
-Sao	pc
-sap	n,v,er,ms,y
-sapiens	a
-sapient	a
-sapling	n
-saponify	v,er,ion
-sapphire	n,a
-saprophyte	n
-saprophytic	a
-sapsucker	n
-sapwood	n
-Sara	pc
-Saracen	n,a
-Sarah	pc
-Saran	pc
-Sarasota	pc
-Saratoga	pc
-sarcasm	n
-sarcastic	n,a
-sarcoma	n
-sarcophagi	n
-sarcophagus	n
-sardine	n
-Sardinia	pc
-sardonic	n,a
-sargasso	n
-sargassum	n
-sarge	pc
-Sargent	n
-sari	n
-sarong	n
-sarsaparilla	n
-sartorial	a
-sash	n
-sashay	n,v
-Saskatchewan	pc
-sass	v,er,y
-sassafras	n
-sassy	a,comp
-sat	d,nopref
-satan	n,na
-satanic	a
-satchel	n
-sate	n,v,nopref
-satellite	n,a
-satiable	a,in
-satiate	v,a,ion,in
-satiety	n
-satin	n,a,y
-satire	n,na
-satiric	n,a
-satisfaction	n
-satisfactory	a
-satisfy	v
-satrap	n
-satrapy	n
-saturable	a
-saturate	v,a,ion
-Saturday	n
-Saturn	pc
-saturnalia	n
-saturnalian	a
-saturnian	n
-saturnine	a
-satyr	n,na
-sauce	n,v,er,y
-saucepan	n
-Saud	pc
-Saudi	pc
-sauerbraten	n
-sauerkraut	n
-Saul	pc
-Sault	pc
-sauna	n
-Saunders	n
-saunter	n,v,er
-sauropod	n
-sausage	n
-saute	v
-sautee	v
-sauterne	n
-savage	n,v,a,na
-savagery	n
-savanna	n
-Savannah	pc
-savant	n
-save	n,v,er,va
-Saviour	pc
-Savonarola	pc
-savoy	n
-Savoyard	n
-savvy	n,v,a,comp
-saw	n,v,er
-sawbuck	n
-sawdust	n
-sawfish	n
-sawfly	n
-sawhorse	n
-sawmill	n
-sawtimber	n
-sawtooth	a
-sawyer	n
-sax	n
-saxifrage	n
-Saxon	n,a
-Saxony	pc
-saxophone	n,na
-say	n,vi,er,va
-SC	pc,nopref
-scab	n,v,ms,y
-scabbard	n,v
-scabious	n,a
-scabrous	a
-scads	d
-scaffold	n,vi
-Scala	pc
-scalar	n,a
-scalawag	n
-scald	n,v,a
-scale	n,v,a,er,na,va
-scalene	a
-scallion	n
-scallop	n,v,er
-scalp	n,v,er
-scalpel	n
-scaly	a,comp
-scam	n
-scamp	n,v,er
-scan	n,v,er,ms
-scandal	n,v,na
-scandalous	a
-Scandinavia	pc
-scandium	n
-scansion	n
-scant	a,comp,nopref,y
-scapegoat	n
-scapegrace	n
-scapula	n
-scapular	n,a
-scar	n,v,ms,y
-scarab	n
-Scarborough	n
-scarce	a,comp,va
-scare	n,v,er,y
-scarecrow	n
-scaremonger	n
-scarf	n,v
-scarface	n
-scarify	v,er,ion
-scarless	a
-scarlet	n,a
-scarp	n,v,er
-Scarsdale	pc
-scarum	d
-scarves	d
-scat	n,v,ms
-scathe	n,v
-scathing	a
-scatology	n
-scatter	n,v,er
-scatterbrain	n,ed
-scattergun	n
-scaup	n
-scavenge	v,er
-scenario	n
-scene	n
-scenery	n
-scenic	n,a
-scent	n,v,nopref
-scentless	a
-Schaefer	n
-Schafer	n
-Schantz	n
-schedule	n,v,er
-schema	n
-schemata	d
-schematic	n,a
-scheme	n,v,er
-Schenectady	pc
-scherzo	n
-Schiller	pc
-schism	n
-schismatic	n,a
-schist	n
-schistosomiasis	pc
-schizoid	n,a
-schizophrenia	n
-schizophrenic	n,a
-schlemiel	n
-schlep	v,ms
-Schlesinger	n
-schlieren	n
-Schlitz	pc
-schlock	y
-Schloss	pc
-schmaltz	n,v,y
-schmaltzy	a,comp
-schmalz	d
-Schmidt	n
-Schmitt	n
-schmooze	v,er
-Schnabel	n
-schnapps	n
-schnauzer	n
-Schneider	n
-Schoenberg	n
-Schofield	n
-scholar	n,a
-scholastic	n,a,na
-scholium	n
-school	n,v,er,man
-schoolbag	n
-schoolbook	n
-schoolboy	n
-schoolchild	pc
-schoolchildren	pc
-schoolgirl	n
-schoolgirlish	na
-schoolhouse	n
-schoolmarm	n
-schoolmaster	n
-schoolmate	n
-schoolmistress	n
-schoolroom	n
-schoolteacher	n
-schoolwork	n
-schooner	n
-Schottky	pc
-Schroeder	n
-Schroedinger	pc
-Schubert	n
-Schultz	n
-Schulz	n
-Schumacher	n
-Schumann	n
-schuss	n,v,er
-Schuster	pc
-Schuyler	pc
-Schuylkill	pc
-schwa	n
-Schwab	n
-Schwartz	n
-Schweitzer	n
-sciatic	a
-sciatica	n
-science	n
-scientific	n,a
-scientist	n,na
-scimitar	n
-scintilla	n
-scintillate	v,ion
-scion	n,nopref
-scission	n
-scissor	n,v
-sclerosis	pc
-sclerotic	n,a
-SCM	pc,nopref
-scoff	n,v,er
-scofflaw	n
-scold	n,v,er
-scoliosis	pc
-sconce	n
-scone	n
-scoop	n,v,er,na
-scoot	n,v,er
-scope	n,v
-scorch	n,v,er
-score	n,v,er,va
-scoreboard	n
-scorecard	n
-scoria	n
-scorn	n,v,er,na
-Scorpio	n
-scorpion	n
-scot	n
-scotch	n,v
-Scotia	pc
-Scotland	pc
-Scots	pc,man
-Scott	n
-Scottish	a
-Scottsdale	pc
-Scotty	pc
-scoundrel	n,a
-scour	n,v,er
-scourge	n,v,er
-scout	n,v,er
-scoutmaster	n
-scow	n
-scowl	n,v,er
-scrabble	n,v,a,er
-scraggly	a,comp
-scraggy	a,comp
-scram	v,ms
-scramble	n,v,er
-Scranton	n
-scrap	n,v,er,ms,y
-scrapbook	n
-scrape	n,v,er
-scrapple	n
-scratch	n,v,er,y
-scrawl	n,v,er,y
-scrawly	a,comp
-scrawny	a,comp
-scream	n,v,er
-scree	n
-screech	n,v,er,y
-screed	n
-screen	n,v,er,va
-screenplay	n
-screenwriter	n
-screw	n,v,er,na,y
-screwball	n,a
-screwdriver	n
-screwworm	n
-scribble	n,v,er
-scribe	n,v,er,in
-Scribner	n
-scrim	n
-scrimmage	n,v,er
-scrimp	v,er,y
-scrimshaw	n,v
-scrip	n,nopref
-Scripps	pc
-script	n,v,ion
-scriptorium	n
-scriptural	a
-scripture	n
-scriptwriter	n
-scriven	er
-scrod	n
-scrofula	n
-scrofulous	a
-scrog	v,ms
-scroll	n,v
-scrooge	n
-scrotum	n
-scrounge	v,er
-scrub	n,v,er,man,ms,y
-scruff	n,y
-scrum	n
-scrumptious	a
-scrunch	v,er,y
-scruple	n,v
-scrupulosity	n
-scrupulous	a
-scrutable	a,in
-scrutiny	n
-scuba	n
-scud	n,v,ms
-scuff	n,v,er
-scuffle	n,v,er
-scull	n,v,er
-scullery	n
-scullion	n
-sculpin	n
-sculpt	v
-sculptor	n
-sculptress	n
-sculptural	a
-sculpture	n,v
-scum	n,v,ms,y
-scurrility	n
-scurrilous	a
-scurry	n,v
-scurvy	n,a,comp
-scuttle	n,v
-scuttlebutt	n
-scutum	n
-Scylla	pc
-scythe	n,v
-Scythia	pc
-SD	pc,nopref
-SE	d,nopref
-sea	n,na,man
-seabag	n
-seabed	n
-seabird	n
-seaboard	n,a
-seaborne	a
-seacoast	n
-seafare	vi,er
-seafood	n
-seafowl	n
-seafront	n
-seagoer	n
-seagoing	a
-Seagram	pc
-seagull	n
-seahorse	n
-seal	n,v,er,va
-sealant	n
-sealskin	n,a
-seam	n,v,er,na,y
-seaman	pc,a,na
-seamount	n
-seamstress	n
-Sean	n
-seance	n
-seaplane	n
-seaport	n
-seaquake	n
-sear	n,v,nopref
-search	n,v,er,na,va
-searchlight	n
-seascape	n
-seashell	n
-seashore	n
-seasick	a
-seaside	n,er
-season	n,v,er,va
-seasonal	a
-seat	n,v,er
-seatmate	n
-Seattle	pc
-seawall	n
-seaward	n
-seaway	n
-seaweed	n
-seaworthy	a,comp
-Sebastian	n
-sec	n,a,nopref
-secant	n
-secede	v,er
-secession	n,na
-seclude	v
-seclusion	n,na,va
-second	n,v,a,er
-secondary	n,a
-secondhand	a
-secondo	n
-secrecy	n
-secret	n,a
-secretarial	a
-secretariat	n
-secretary	n,na
-secrete	v
-secretion	n,na,va
-secretory	a
-sect	n,v,ion,va
-sectarian	n,a,na
-sectary	n
-sector	n,v
-sectoral	a
-secular	n,a,na
-secure	v,a,er,va
-sedan	n
-sedate	v,a,ion
-sedentary	a
-seder	n
-sedge	n,y
-sediment	n,v
-sedimentary	a
-sedimentation	n
-sedition	n
-seditious	a
-seduce	v,er,va
-seduction	n,na,va
-sedulous	a
-see	n,vi,a,er
-seeable	a
-seed	n,v,er,na,y
-seedbed	n
-seedcake	n
-seedeat	vi,er
-seedling	n,a
-seedpod	n
-seedsman	pc
-seek	vi,er
-seem	v,a
-seen	d
-seep	n,v,nopref,y
-seepage	n
-seer	n
-seersucker	n
-seesaw	n,v,a
-seethe	n,v
-seethed	d
-seething	a
-segment	n,v,er,na
-segmentary	a
-segmentation	n
-Segovia	pc
-segregant	n
-segregate	n,v,ion
-segue	n,v
-Segundo	pc
-Seidel	pc
-seigneur	n
-seigneurial	a
-seine	n,v,er
-seism	n,na
-seismic	n,a
-seismograph	n,er
-seismography	n
-seismology	n,na
-seismometer	n,na
-seize	v,er
-seizure	n
-seldom	a
-select	v,a,ion,va,man
-Selectric	pc
-Selena	pc
-selenate	n
-selenite	n
-selenium	n
-selenography	n,er
-selenology	n,na
-self	n,v,a
-selfish	a
-Selfridge	n
-selfsame	a
-Selkirk	n
-sell	n,vi,er,va
-sellout	n
-Selma	pc
-selsyn	n
-seltzer	n
-selvage	n,ed
-selves	d
-Selwyn	n
-semantic	n,a,na
-semaphore	n,v
-semblance	n
-semen	n
-semester	n
-semi	n
-seminal	a
-seminar	n
-seminarian	n
-seminary	n
-Seminole	n
-semiotic	n,a
-Semite	n,na
-semolina	n
-semper	d
-sempiternal	a
-senate	n,ion
-senatorial	a
-send	n,vi
-sender	n
-Seneca	n
-Senegal	pc
-senescent	a
-senile	a
-senior	n,a
-senor	n
-senora	n
-senorita	n
-sensate	a,ion,in
-sense	n,v,na
-sensible	n,a,va,in
-sensitive	a,in
-sensor	n,y
-sensorial	a
-sensorimotor	a
-sensual	a,na
-sensuous	a
-sent	v,er
-sentence	n,v
-sentential	a
-sententious	a
-sentient	a,in
-sentiment	n,na
-sentry	n
-Seoul	pc
-sepal	n,ed
-separable	a,va,in
-separate	n,v,a,ion
-sepia	n,a
-Sepoy	pc
-sepsis	pc
-sept	n
-septa	pc
-septate	a
-September	n
-septennial	a
-septet	n
-septic	a
-septillion	n
-septuagenarian	n,a
-septum	n
-septuplet	n
-sepulchral	a
-sequel	n
-sequelae	d
-sequent	n,a
-sequential	a
-sequester	n,v
-sequestration	n
-sequin	n,ed
-sequitur	n
-sequoia	n
-sera	d
-seraglio	n
-serape	n
-seraph	n
-seraphic	n,a
-seraphim	n
-Serb	n,a
-Serbia	pc
-serenade	n,v,er
-serendipitous	a
-serendipity	n
-serene	n,a,comp
-serf	n
-serfdom	n
-serge	n
-sergeant	n,a,na,y
-Sergei	pc
-serial	n,a,na
-seriate	v,a
-seriatim	a
-series	n
-serif	n
-serigraph	n,er
-seriocomic	n,a
-serious	a
-sermon	n,na
-serology	n,na
-Serpens	pc
-serpent	n
-serpentine	n,a
-serrate	v,a,ion
-serried	a
-serum	n
-servant	n,nopref
-serve	n,v,er,na
-service	n,v,a,comp,man
-serviceable	a,va
-serviette	n
-servile	a
-servitor	n
-servitude	n
-servo	n
-servomechanism	n
-servomotor	n
-sesame	n
-sesquicentennial	n,a
-sesquipedalian	a
-sessile	a
-session	n,na,va
-set	n,vi,er,va,ms
-setback	n
-Seth	pc
-Seton	pc
-setscrew	n
-settee	n
-settle	n,v,er,va
-setup	n
-seven	n,nopref
-sevenfold	n
-seventeen	n
-seventeenth	n
-seventh	n
-seventieth	n
-seventy	n
-sever	v,va
-severable	a
-several	a,nopref
-severalfold	n
-severalty	n
-severance	n,nopref
-severe	v,a,comp,va
-Severn	pc
-Seville	pc
-sew	v,er
-sewage	n
-Seward	n
-sewerage	n
-sewn	d
-sex	n,v,na,y
-sexagesimal	n,a
-sexology	n,na
-Sextans	pc
-sextant	n
-sextet	n
-sextillion	n
-sexton	n
-sextuple	n,v,a
-sextuplet	n
-sexual	a
-Seychelles	pc
-Seymour	n
-sforzando	n,a
-shabby	a,comp
-shack	n,v
-shackle	n,v,er
-shad	n
-shadbush	n
-shade	n,v,er,y
-shadow	n,v,er,na,va,y
-shadowbox	v
-Shafer	n
-Shaffer	n
-shaft	n,v
-shag	n,v,a,ms,y
-shagbark	n
-shah	n
-shake	n,vi,er,va
-shakeable	a
-shakedown	n,a
-shaken	d
-Shakespeare	pc
-Shakespearean	n
-Shakespearian	n
-shako	n
-shaky	a,comp
-shale	n
-shall	vi
-shallot	n
-shallow	n,v,a,comp
-shalom	d
-shalt	d
-sham	n,v,a,er,ms
-shaman	n,na
-shamateur	n,na
-shamble	n,v,er
-shame	n,v,er,na
-shamefaced	a
-shampoo	n,v,er
-shamrock	n
-shamus	n
-Shane	n
-shanghai	n
-shanghaied	d
-shanghaier	n
-shanghaiing	d
-shank	n,nopref
-Shannon	n
-shan't	d
-Shantung	pc
-shanty	n,man
-shantytown	n
-shape	n,v,a,er,va
-Shapiro	n
-shard	n
-share	n,v,er,va
-sharecrop	v,er,ms
-sharehold	vi,er
-shareholder	n
-shareown	v,er
-Shari	pc
-shark	n,v
-sharkskin	n
-Sharon	pc
-sharp	n,v,a,comp,y
-Sharpe	n
-sharpen	v,er
-sharpshoot	vi,er
-Shasta	pc
-shatter	n,v
-shatterproof	a
-Shattuck	pc
-shave	n,v,er
-shaven	d
-shaw	n
-shawl	n,v
-Shawn	n
-Shawnee	n
-shay	n
-she	pc,nopref
-Shea	pc
-sheaf	n,na
-shear	n,v,er
-Shearson	n
-sheath	n,vi
-sheathe	v,er
-sheave	n,v
-shebang	n
-she'd	d
-shed	n,v,er,ms
-Shedir	pc
-Sheehan	n
-sheen	n,v,a
-sheep	n
-sheepfold	n
-sheepherding	n
-sheepish	a
-sheepshank	n
-sheepshead	n
-sheepshear	vi,er
-sheepskin	n
-sheer	n,v,a,comp
-sheet	n,v,a,na
-Sheffield	n
-sheik	n
-sheikdom	n
-sheikh	n
-Sheila	pc
-shekel	n
-Shelby	n
-Sheldon	n
-shelf	n,na
-she'll	d
-shell	n,v,er,a
-shellac	n,v
-shellacked	d
-shellacking	n
-shellback	n
-Shelley	n
-shellfire	n
-shellfish	n
-shellproof	a
-Shelly	pc
-shelter	n,v,er
-Shelton	n
-shelty	n
-shelve	v,er,y
-Shenandoah	pc
-shenanigan	n
-Shepard	n
-shepherd	n,v
-Sheppard	n
-Sheraton	a
-sherbet	n
-Sheri	n
-Sheridan	n
-sheriff	n
-sherlock	n
-Sherman	n
-Sherri	n
-Sherrill	pc
-sherry	n
-Sherwin	n
-Sherwood	n
-Sheryl	n
-Shetland	n
-Shia	n
-shibboleth	n
-shied	d
-shield	n,v,er
-shift	n,v,er,va,y
-shill	n,v
-shillelagh	n
-Shiloh	pc
-shim	n,v,er,ms
-shimmery	a
-shimmy	n,v
-shin	n,v,ms
-shinbone	n
-shindig	n
-shine	n,v,er,nopref,y
-shingle	n,v,er,y
-shinny	n,v
-Shinto	n,a,na
-ship	n,v,er,va,man,ms
-shipboard	n
-shipbuild	vi
-shiplap	n
-Shipley	n
-shipmaster	n
-shipmate	n
-shipshape	a
-shipway	n
-shipworm	n
-shipwreck	n,v
-shipwright	n
-shipyard	n
-shire	n
-shirk	v,er
-Shirley	pc
-shirr	v
-shirt	n,vi
-shirttail	n
-shirtwaist	n
-shish	d
-shit	n,v
-shiv	n
-Shiva	pc
-shivaree	n,v
-shiver	n,v
-shivery	a
-shoal	n,v,a,comp
-shock	n,v,a,er
-Shockley	n
-shod	a
-shoddy	n,a,comp
-shoe	n,v,er
-shoehorn	n,v
-shoelace	n
-shoestring	n
-shofar	n
-shogun	n
-shoji	n
-shone	d
-shoo	v,er
-shoofly	n
-shook	n
-shoot	n,vi,er
-shootout	n
-shop	n,v,er,ms
-shoplift	vi,er
-shopown	vi,er
-shoptalk	n
-shopworn	a
-shore	n,v
-shorebird	n
-shoreline	n
-shorn	d
-short	n,v,a,comp,y
-shortage	n
-shortbread	n
-shortcake	n
-shortchange	v,er
-shortcoming	n
-shortcut	n
-shorten	v,er
-shortfall	n
-shorthand	n,ed,a
-shortish	a
-shortsighted	a
-shortstop	n
-shot	n
-shotgun	n,a
-should	comp
-shoulder	n,v
-shouldn't	d
-shouldst	d
-shout	n,v,er
-shove	n,v,er
-show	n,v,er,man,y
-showboat	n
-showcase	n,v
-showdown	n
-showery	a
-shown	d
-showpiece	n
-showplace	n
-showroom	n
-shrank	d
-shrapnel	n
-shred	n,v,er,ms
-Shreveport	pc
-shrew	n,v
-shrewd	a,comp
-shrewish	a
-shriek	n,v,er
-shrieve	v,er
-shrift	n
-shrike	n
-shrill	n,v,a,comp
-shrilly	a
-shrimp	n,v,er
-shrine	n
-shrink	n,vi,er,va
-shrinkage	n
-shrive	v
-shroud	n,v
-shrove	d
-shrub	n,ms,y
-shrubbery	n
-shrug	n,v,ms
-shrunk	d
-shrunken	d
-shtick	n
-Shu	pc
-shuck	n,v,er
-shudder	n,v
-shuddery	a
-shuffle	n,v,er
-shuffleboard	n
-Shulman	n
-shun	v,er,ms
-shunpike	n
-shunt	n,v,er
-shush	v,er
-shut	n,vi,er,ms
-shutdown	n
-shutoff	n
-shutout	n
-shutterbug	n
-shuttle	n,v
-shuttlecock	n,v
-shy	n,v,a,comp
-Shylock	n
-shyly	d
-shyster	n
-sial	n,nopref
-SIAM	pc,nopref
-Siamese	a
-Sian	pc
-sib	n,a,ms
-Siberia	pc
-sibilant	n,a
-sibilate	v,ion
-Sibley	n
-sibling	n
-sibyl	n,nopref
-sibylline	a
-sic	v,ms
-Sicilian	n
-Sicily	pc
-sick	v,a,comp
-sickbed	n
-sicken	v,er
-sickish	a
-sickle	n,a
-sickroom	n
-side	n,v,er,na,man
-sidearm	n
-sideband	n
-sidebar	n
-sideboard	n
-sideburns	n
-sidecar	n
-sidehill	n,a
-sidekick	n
-sidelight	n
-sideline	n,v,er
-sidelobe	n
-sidelong	a
-sidereal	a
-sidesaddle	n
-sideshow	n
-sideslip	n,v
-sidesplitting	a
-sidestep	v,ms
-sidestroke	n
-sideswipe	n,v
-sidetrack	n,v
-sidewalk	n
-sidewall	n
-sideway	n
-sidewinder	n
-sidewise	d
-sidle	n,v
-Sidney	n
-siege	n,v
-Siegel	pc
-Siegfried	pc
-Sieglinda	pc
-Siegmund	pc
-Siemens	pc
-sienna	n
-sierra	n
-siesta	n
-sieve	n,v
-sift	v,er
-sigh	n,v,er,nopref
-sight	n,v,a
-sightsee	vi
-sightseer	n
-sigma	n
-sigmoid	a
-Sigmund	pc
-sign	n,v,er
-signatory	n,a
-signature	n
-signboard	n
-signet	n,v
-significant	a,na,in
-signify	v,er,ion
-Signor	pc
-Signora	pc
-signpost	n
-Sikh	n
-Sikorsky	n
-silage	n
-silane	n
-Silas	pc
-silent	a,nopref
-silhouette	n,v
-silhouetting	d
-silica	n
-silicate	n
-siliceous	a
-silicic	a
-silicide	n
-silicious	a
-silicon	n
-silicone	n
-silicosis	pc
-silk	n,v,y
-silken	a
-silkworm	n
-sill	n
-silly	a,comp
-silo	n
-silt	n,v,y
-siltation	n
-Silurian	a
-Silva	n
-silver	n,v,a,er
-silverfish	n
-Silverman	n
-silversmith	n
-silverware	n
-silvery	a,comp
-silvicultural	a
-silviculture	n,na
-simian	n,a
-similar	a
-simile	n
-similitude	n
-simmer	v
-Simmons	n
-Simon	n
-Simons	n
-Simonson	n
-simony	n
-simpatico	d
-simper	n,v,er
-simple	n,a,comp,na
-simplectic	n,a
-simpleminded	a
-simpleton	n
-simplex	n,a
-simplicial	a
-simplicity	n
-simplify	v,er,ion
-simplistic	n,a
-simply	d
-Simpson	n
-Sims	n
-simulacra	d
-simulacrum	n
-simulate	v,ion
-simulcast	n,v
-simultaneity	n
-simultaneous	a
-sin	n,v,er,na,ms
-Sinai	pc
-since	d
-sincere	a,comp
-Sinclair	n
-sine	n
-sinecure	n
-sinew	n,v,y
-sinfonia	n
-sing	n,vi,a,va
-singable	a
-Singapore	pc
-singe	n,v,er,nopref
-singeing	d
-Singh	n
-single	n,v,a
-singlehanded	a
-singlet	n
-singleton	n
-singletree	n
-singsong	n,a
-singular	n,a,na
-sinh	n
-sinister	a
-sinistral	a
-sink	n,vi,er,va
-sinkhole	n
-sinter	n,v,nopref
-sinuous	a
-sinus	n
-sinusitis	n
-sinusoid	n
-Siobhan	pc
-Sioux	pc
-sip	n,v,er,nopref,ms
-sir	n
-sire	n,v,nopref
-siren	n,a
-Sirius	pc
-sirloin	n
-sirocco	n
-Sis	pc
-sisal	n
-siskin	n
-sissified	a
-sissy	n,a,comp
-sister	n,a,na
-Sistine	a
-Sisyphean	a
-Sisyphian	a
-Sisyphus	pc
-sit	vi,er,ms
-sitcom	n
-site	n,v,nopref
-situ	d
-situate	v,a,ion
-situs	n
-six	n,nopref
-sixfold	n
-sixgun	n
-sixpence	n
-sixteen	n
-sixteenth	n,a
-sixth	n,a
-sixtieth	n,a
-sixty	n
-sixtyish	a
-size	n,v,a,er,va
-sizzle	n,v,er
-skat	n
-skate	n,v,er
-skateboard	n,v,er
-skedaddle	v
-skeet	n,er
-skein	n,v
-skeletal	a
-skeleton	n,a,na
-skelter	v
-sketch	n,v,er,y
-sketchbook	n
-sketchpad	n
-skew	n,v,a,er
-ski	n,v,nopref
-skid	n,v,er,ms
-skied	d
-skiff	n
-skiing	n
-skill	n,v
-skillet	n
-skim	n,v,a,er,ms
-skimp	v,y
-skin	n,v,er,na,ms,y
-skindive	vi
-skinflint	n
-skinhead	n
-skink	n,v,er
-skip	n,v,er,ms
-skipjack	n
-Skippy	pc
-skirl	n,v
-skirmish	n,v,er
-skirt	n,v,er
-skit	n,er,nopref,ms
-skittish	a
-skittle	n
-skivvy	n
-skoal	n
-skua	n
-skulduggery	n
-skulk	n,v,er
-skull	n,ed
-skullcap	n
-skullduggery	d
-skunk	n,v
-sky	n,v,er
-skycap	n
-skydive	vi
-Skye	pc
-skyhook	n
-skyjack	v
-skylark	n,v,er
-skylight	n
-skyline	n
-skyrocket	n,v
-skysail	n
-skyscrape	er
-skyward	d
-skywave	n
-skyway	n
-skywrite	v,er
-S&L	n,nopref
-slab	n,v,a,er,ms
-slack	n,v,a,er
-slacken	v
-slag	n
-slain	d
-slake	v
-slalom	n
-slam	n,v,er,ms
-slander	n,v,er
-slanderous	a
-slang	n,v,y
-slant	n,v,a,y
-slantwise	d
-slap	n,v,ms
-slapdash	d
-slaphappy	a,comp
-slapstick	n,a
-slash	n,v,er
-slat	n,v,nopref,ms
-slate	n,v,er,na,y
-slather	n,v
-slattern	n,v,a
-slaughter	n,v,er
-slaughterhouse	n
-Slav	n
-slave	n,v,er,na
-slavehold	vi,er
-slavery	n
-Slavic	n,a,na
-slavish	a
-slaw	n
-slay	vi,er
-sleaze	n,y
-sled	n,v,er,ms
-sledge	n,v
-sledgehammer	n,v,a
-sleek	v,a,er
-sleep	n,vi,er,y
-sleeplike	d
-sleepwalk	v,er
-sleepyhead	n
-sleet	n,v,y
-sleeve	n,ed
-sleigh	n,v
-sleight	n
-slender	a,comp,na
-slept	d
-sleuth	n,v
-slew	n
-slice	n,v,er
-slick	n,v,a,comp
-slid	d
-slide	n,vi,er
-slight	n,v,a,comp
-slim	v,a,comp,ms
-slime	n,v,y
-sling	n,vi,er
-slingshot	n
-slink	n,vi,y
-slip	n,v,a,er,ms,y
-slipcase	n
-slipcover	n
-slipknot	n
-slippage	n
-slippery	a
-slipshod	a
-slipstream	n
-slipup	n
-slit	n,vi,a,er,va,ms
-slither	v
-slithery	a
-sliver	n,v
-slivery	d
-slivovitz	n
-Sloan	n
-Sloane	n
-slob	n
-slobber	n,v,er,y
-Slocum	n
-sloe	pc,nopref
-slog	n,v,er,ms
-slogan	n,na
-sloganeer	n,v
-sloop	n
-slop	n,v,ms,y
-slope	n,v,a,er
-slosh	n,v,er
-slot	n,v,ms
-sloth	n,na
-slouch	n,v,er,y
-slough	n,v,y
-sloven	n,a
-slow	v,a,comp
-slowdown	n
-slowish	a
-slowpoke	n
-sludge	n,y
-slug	n,v,er,nopref,ms
-slugfest	n
-sluggard	n,a
-sluggish	a
-sluice	n,v,y
-sluiceway	n
-slum	n,v,er,ms
-slumber	n,v,er,y
-slump	n,v
-slung	d
-slunk	d
-slur	n,v,ms
-slurp	n,v,er
-slurry	n
-slush	n,y
-slushy	a,comp
-slut	n,nopref
-sluttish	a
-sly	a,comp
-smack	n,v,er
-small	n,a,comp
-Smalley	n
-smallish	a
-smallpox	n
-smalltime	n
-smarmy	a
-smart	n,v,a,comp,y
-smarten	v
-smash	n,v,a,er
-smashup	n
-smatter	n,v,er
-smear	n,v,er,y
-smell	n,v,er
-smelly	a,comp
-smelt	n,v,er
-smidgen	n
-smile	n,v,er
-smirch	n,v
-smirk	n,v,er,y
-smite	vi,er
-smith	n
-smithereens	n
-Smithfield	pc
-Smithson	n
-Smithsonian	pc
-smithy	n
-smitten	d
-smock	n,v
-smog	n,ms,y
-smoke	n,v,er,na,va,y
-smokehouse	n
-smokeproof	a
-smokescreen	n
-smokestack	n
-smooch	n,v,er,y
-smooth	n,v,a,comp,y
-smoothbore	n,a
-smorgasbord	n
-smote	d
-smother	v,er,y
-Smucker	pc
-smudge	n,v,er,y
-smug	a,comp,ms
-smuggle	v,er
-smut	n,v,ms,y
-Smyrna	pc
-Smythe	n
-snack	n,v,er
-snaffle	n,v
-snafu	n,v,a
-snag	n,v,ms,y
-snail	n,na
-snake	n,v,na,y
-snakebird	n
-snakebite	n
-snakeroot	n
-snap	n,v,a,er,ms,y
-snapback	n
-snapdragon	n
-snappish	a
-snapshot	n
-snare	n,v,er
-snark	n
-snarl	n,v,er,y
-snarly	a,comp
-snatch	n,v,er
-snazzy	a,comp
-sneak	n,v,er,y
-sneer	n,v,er
-sneeze	n,v,er,y
-snell	n,a
-snick	n,v,er
-snide	a,comp
-sniff	n,v,er,y
-sniffle	n,v,er
-snifter	n
-snigger	vi
-sniggle	v
-sniggly	a,comp
-snip	n,v,er,ms,y
-snipe	n,v,er
-sniperscope	n
-snippet	n,y
-snit	n
-snitch	v,er
-snob	n,na,ms,y
-snobbery	n
-snobbish	a
-snook	n,er
-snoop	n,v,er,y
-snoot	n,y
-snooze	n,v,er
-snore	n,v,er
-snort	n,v,er
-snotty	a,comp
-snout	n,ed,y
-snow	n,v,man,y
-snowball	n,v
-snowbird	n
-snowbound	a
-snowcapped	a
-snowdrift	n
-snowdrop	n
-snowfall	n
-snowfield	n
-snowflake	n
-snowmobile	n,vi,er
-snowplow	n,v
-snowshed	n
-snowshoe	n,v
-snowslide	n
-snowstorm	n
-snowsuit	n
-snub	n,v,a,er,ms,y
-snuff	n,v,er,y
-snuffbox	n
-snuffle	n,v,er
-snug	n,v,a,comp,ms
-snuggle	n,v,er
-snuggly	a,comp
-Snyder	n
-so	n,nopref
-soak	n,v,er
-soap	n,v,y
-soapbox	n,a
-soapstone	n
-soapsud	n
-soar	n,v,er,nopref
-sob	n,v,nopref,ms
-sober	v,a,comp
-soberside	n,ed
-sobriety	n,in
-sobriquet	n
-Soc.	d,nopref
-soccer	n
-sociable	n,a,va
-social	n,a,na
-socialite	n
-societal	a
-Societe	pc
-society	n,a
-socioeconomic	a
-sociology	n,na
-sociometry	pc
-sociopath	n
-sock	n,v,nopref
-socket	n,v
-sockeye	n
-Socrates	pc
-Socratic	n,a
-sod	n,v,ms,y
-soda	n
-sodden	v,a
-sodium	n
-Sodom	n
-sodomite	n
-sodomize	v,er
-sodomy	n
-sofa	n
-soffit	n
-Sofia	pc
-soft	n,a,comp,y
-softball	n
-soften	v,er
-softhead	n,ed
-softhearted	a
-software	pc
-softwood	n,a
-soggy	a,comp
-soignee	n
-soil	n,v,er
-soilage	n
-soiree	n
-sojourn	n,v,er
-Sol	pc
-solace	n,v,er,va
-solar	a,na
-solarium	n
-sold	d
-solder	n,v,er
-soldier	n,v,a,na
-soldiery	n
-sole	n,v,a
-solecism	n
-solemn	a,na
-solemnity	n
-solenoid	n
-solicit	v
-solicitation	n
-solicitor	n
-solicitous	a
-solicitude	n
-solid	n,a
-solidarity	n
-solidify	v,ion
-solidus	n
-soliloquist	n
-soliloquy	n
-solipsism	n
-solipsist	n,na
-solitaire	n
-solitary	n,a
-soliton	n
-solitude	n
-solo	n,v,na
-Solomon	n
-Solomonic	a
-Solon	n
-solstice	n
-soluble	a,va,in
-solute	n,a,ion
-solvate	n,v,ion
-solve	v,er,va
-solvent	n,a,na,in
-Somali	n
-Somalia	pc,nopref
-somatic	n,a
-sombrero	n
-some	n
-somebody	n
-somebody'd	d
-someday	d
-somehow	d
-someone	pc
-someplace	d
-Somers	n
-somersault	n,v
-Somerset	pc
-Somerville	pc
-something	pc
-sometime	n,a
-somewhat	d
-somewhere	n
-sommelier	n
-Sommerfeld	n
-somnambulate	v,ion
-somnambulist	n,na
-somnolent	a,na
-son	n,a
-sonar	n
-sonata	n
-sonatina	n
-song	n,na
-songbag	n
-songbird	n
-songbook	n
-songfest	n
-songwrite	vi,er
-Sonia	pc
-sonic	n,a
-sonnet	n,na
-sonneteer	n
-sonny	n
-sonogram	n
-Sonoma	pc
-Sonora	pc
-sonority	n
-sonorous	a
-Sony	pc
-Sonya	n
-soon	comp
-soot	n,v,nopref,y
-sooth	n,vi,a
-soothe	v,er
-soothsay	v,er
-sop	n,v,nopref,ms,y
-Sophia	pc
-Sophie	pc
-sophism	n
-sophist	n,na
-sophisticate	n,v,ion
-sophistry	n
-Sophoclean	a
-Sophocles	pc
-sophomore	n
-sophomoric	a
-soporific	n,a
-soprano	n,a
-sora	n,nopref
-sorb	n,v
-Sorbonne	pc
-sorcerer	n
-sorceress	n
-sorcery	n
-sordid	a
-sore	n,a,comp
-sorehead	n,ed,a
-Sorensen	n
-Sorenson	n
-sorghum	n
-sorority	n
-sorption	n,na
-sorrel	n
-sorrow	n,v,er,na
-sorry	a,comp
-sort	n,v,er,va
-sortie	n,v
-sostenuto	n
-sot	n,ed,ms
-Soto	n
-sottish	a
-sou	n,nopref
-souffle	n
-sought	d
-soul	n,ed,na
-sound	n,v,a,comp,va
-soundboard	n
-soundproof	v,a
-soup	n,v,y
-sour	n,v,a,comp
-source	n,na
-sourdough	n
-sourpuss	n
-sourwood	n
-Sousa	pc
-souse	n,v
-soutane	n
-south	n,vi,a,er
-Southampton	pc
-southbound	a
-southeast	n,a,er
-southeastern	a,er
-southeasternmost	a
-southeastward	n
-southern	a,er
-southernmost	d
-Southey	pc
-southland	n
-southmost	d
-southpaw	n,a
-southward	n
-southwest	n,a,er
-southwestern	a,er
-southwesternmost	a
-southwestward	n
-souvenir	n
-sou'wester	n
-sovereign	n,a
-sovereignty	n
-soviet	n,a,na
-sovkhoz	n
-sow	n,v,er
-sowbelly	n
-sown	d
-sox	pc
-soy	n
-soya	n
-soybean	n
-S&P	n,nopref
-spa	n
-space	n,v,er,ion,man
-spacecraft	n
-spacesuit	n
-spacious	a
-spackle	v,er
-spade	n,v,er,na
-spadework	n
-spaghetti	pc
-Spain	pc
-spake	d
-spall	n,v
-spallation	n
-span	n,v,er,ms
-spandrel	n
-spangle	n,v
-Spaniard	n
-spaniel	n
-Spanish	a
-spank	n,v,er
-spar	n,v,nopref,ms
-spare	n,v,a,comp,ion,va
-spareribs	n
-sparge	n,v,er
-spark	n,v,er,y
-sparkle	n,v,er
-Sparkman	n
-sparkplug	v
-sparling	n
-sparrow	n
-sparse	a,comp
-Sparta	pc
-Spartan	n,a,na
-spasm	n
-spasmodic	n,a
-spastic	n,a
-spat	n,v,er,ms
-spate	n,nopref
-spatial	a
-spatiotemporal	a
-spatterdock	n
-spatula	n
-Spaulding	n
-spavin	n,ed
-spawn	n,v,er
-spay	v
-spayed	d
-speak	n,vi,er,va
-speakeasy	n
-spear	n,v,a,er
-spearhead	n,v
-spearmint	n
-spec	n,nopref,ms
-special	n,a,na
-speciation	n,na
-specie	n
-species	n,a
-specific	n,a
-specify	v,er,ion
-specimen	n
-specious	a
-speck	n,v
-speckle	n,v,nopref
-spectacle	n,ed
-spectacular	n,a
-spectator	n,a
-spectra	pc
-spectral	a
-spectrograph	n
-spectrography	n
-spectroheliograph	n
-spectrometer	n
-spectrophotometer	n
-spectroscope	n,na
-spectroscopy	n
-spectrum	n
-specular	a
-speculate	v,ion
-speculum	n
-sped	d,nopref
-speech	n
-speechify	v
-speed	n,v,er,y
-speedboat	n,vi
-speedometer	n
-speedster	n
-speedup	n
-speedway	n
-speedwell	n
-spell	n,v,er
-spellbind	v,er
-spellbound	a
-spelunker	n
-spelunking	n
-Spence	n
-Spencer	n
-Spencerian	a,na
-spend	n,vi,er,va
-spendthrift	n,a
-spent	d
-speramtozoon	n
-sperm	n
-spermatophyte	n
-spermatozoa	pc
-spermicide	n
-Sperry	pc
-spew	n,v,er
-sphagnum	n
-sphere	n,v
-spheric	n,a
-spheroid	n
-spherule	n
-sphincter	n
-sphinx	n
-sphygmometer	n
-Spica	pc
-spice	n,v,y
-spicebush	n
-spicule	n
-spider	n
-spidery	a,comp
-Spiegel	n
-spiel	n,v,er
-spiffy	a,comp
-spigot	n
-spike	n,v,er,na,y
-spikenard	n
-spill	n,v,er,va
-spillage	n
-spillway	n
-spilt	d
-spin	n,vi,er,ms
-spinach	n
-spinal	n,a
-spindle	n,v
-spindly	a,comp
-spine	n,nopref,y
-spinet	n
-spinnaker	n
-spinneret	n
-spinodal	a
-spinoff	n
-spinor	n
-spinster	n
-spire	n,v,er,va,in,y
-spirit	n,v,na,va
-spiritual	n,a,na
-Spiro	pc
-spit	n,v,er,ms
-spitball	n
-spite	n,v,na
-spitfire	n
-spittle	n
-spittoon	n
-spitz	n
-splash	n,v,er,y
-splat	n,v,er,ms
-splay	n,v,a
-splayed	d
-splayfoot	n,ed,a
-spleen	n,na,y
-splendid	a
-splendiferous	a
-splenetic	n,a
-splice	n,v,er
-spline	n
-splint	n,v,er
-splintery	a
-split	n,vi,a,er,va,ms
-splotch	n,v,y
-splurge	n,v,er
-splutter	n,v,er,y
-spoil	n,v,er,va
-spoilage	n
-spoilsman	n
-spoilsport	pc
-Spokane	pc
-spoke	n,v,nopref
-spoken	a
-spokes	man
-spokeshave	n
-spoliate	ion
-spondaic	n,a
-sponge	n,v,er,y
-sponson	n,nopref
-sponsor	n,v
-spontaneity	n,v,a,ion
-spontaneous	a
-spoof	n,v,er,va
-spook	n,v,y
-spool	n,v,er
-spoon	n,v,er,na,y
-spoonbill	n
-spoor	n,vi
-sporadic	n,a
-spore	n,ed
-sporran	n
-sport	n,v,na,y
-sportive	a
-sports	man
-sportscast	n,er
-sportsman	n,a
-sportswear	n
-sportswrite	er
-sportswriting	n
-spot	n,v,er,va,ms,y
-spotlight	n,v
-spouse	n,v
-spout	n,v,er
-Sprague	n
-sprain	n,v
-sprang	d
-sprawl	n,v
-spray	n,v,er
-spread	n,vi,er
-spree	n
-sprig	n,v,ms
-sprightly	a,comp
-spring	n,vi,y
-springboard	n
-springe	n,vi,er
-Springfield	pc
-springhouse	n
-springtail	n
-springtime	n
-sprinkle	n,v,er
-sprint	n,v,er,nopref
-sprite	n
-sprocket	n
-Sproul	n
-sprout	n,v
-spruce	n,v,a,y
-sprue	n
-sprung	d
-spry	a,comp,nopref
-spud	n,v,ms
-spume	n,v,y
-spumoni	pc
-spun	d
-spunk	n,v,y
-spur	n,v,ms,y
-spurge	n
-spurious	a
-spurn	n,v,er
-spurt	n,v,er
-sputnik	n
-sputter	n,v,er
-sputum	n
-spy	n,v,er,nopref
-spyglass	n
-squab	n,a
-squabble	n,v,er
-squad	n,v,ms
-squadron	n
-squalid	a
-squall	n,v,er
-squally	a
-squalor	n
-squamous	a
-squander	n,v,er
-square	n,v,a,er
-squarish	a
-squash	n,v,er,y
-squat	n,v,a,comp,ms,y
-squaw	n
-squawk	n,v,er
-squawroot	n
-squeak	n,v,er,y
-squeal	n,v,er
-squeamish	a
-squeegee	n,v
-squeeze	n,v,er
-squelch	n,v,er
-squib	n,v,ms
-Squibb	pc
-squid	n,v,ms
-squiggle	n,v,y
-squiggly	a,comp
-squill	n
-squint	n,v,a,er,y
-squire	n,v,na
-squirm	n,v,er,y
-squirt	n,v,er
-squish	n,v,y
-Sri	pc
-s's	d,nopref
-SSE	d,nopref
-SST	n,nopref
-SSW	d,nopref
-stab	n,v,er,ms
-stabile	n,a,na
-stable	n,v,a,comp,man
-staccato	n,a
-Stacey	pc
-stack	n,v,er
-Stacy	pc
-stadia	n,nopref
-stadium	n
-staff	n,v,a,er
-Stafford	n
-stag	n,v,nopref,ms,y
-stage	n,v,er,y
-stagecoach	n
-stagecraft	n
-stagehand	n
-stagestruck	a
-stagger	n,v,er
-stagnant	a,na
-stagnate	v,ion
-Stahl	n
-staid	a,comp
-stain	n,v,er,va
-stair	n
-staircase	n
-stairway	n
-stairwell	n
-stake	n,v,er
-stakehold	vi,er
-stalactite	n,na
-stalag	n
-stalagmite	n,na
-stale	n,v,a,comp
-stalemate	n,v
-Staley	n
-Stalin	pc,na
-stalk	n,v,er,y
-stall	n,v,er,va,in
-stallion	n
-stalwart	n,a
-stamen	n
-Stamford	pc
-stamina	n
-staminate	a
-stammer	n,v,er
-stamp	n,v,er
-stampede	n,v
-Stan	pc
-stance	n,nopref
-stanch	v,er
-stanchion	n,v
-stand	n,vi,er,va
-standard	n,a,na
-standby	pc,nopref
-standbys	d,nopref
-standee	n
-standeth	d
-Standish	n
-standoff	n
-standoffish	a
-standout	n
-standpipe	n
-standpoint	n
-standstill	n
-standup	d
-Stanford	pc
-Stanhope	pc
-stank	n
-Stanley	n
-stannic	a
-stannous	a
-Stanton	pc
-stanza	n
-staph	n
-staphylococcus	n
-staple	n,v,a,er
-Stapleton	n
-star	n,v,na,nopref,ms,y
-starboard	n,v,a
-starch	n,v,y
-stardom	n
-stardust	n
-stare	n,v,er
-starfish	n
-stargaze	v,er
-stark	a,comp
-Starkey	n
-starlet	n
-starlight	n,a,comp
-starling	n
-starlit	a
-Starr	pc
-start	n,v,er,va
-startle	n,v
-startup	n
-starvation	n
-starve	v
-starveling	n
-stash	n,v
-stasis	pc
-state	n,v,a,er,na,ion,va
-statecraft	n
-statehouse	n
-Staten	pc
-stater	n
-stateroom	n
-states	man
-stateside	a
-statewide	d
-static	n,a
-stationarity	n
-stationary	a
-stationery	n
-stationmaster	n
-statistician	n
-Statler	pc
-stator	n
-statuary	n,a
-statue	n
-statuesque	a
-statuette	n
-stature	n
-status	n
-statute	n,va
-statutory	a
-Stauffer	n
-staunch	a,comp
-Staunton	pc
-stave	n,v
-stay	n,vi,er
-stayed	d
-staysail	n
-stead	n,v,nopref
-steadfast	a
-steady	n,v,a,comp
-steak	n
-steal	n,vi,er
-stealth	n,y
-steam	n,v,er,y
-steamboat	n
-steamroll	v,er
-stearate	n
-stearic	d
-Stearns	n
-steed	n
-steel	n,v,nopref
-Steele	n
-steelhead	n
-steelwork	n,er
-steely	a,comp
-steelyard	n
-Steen	n
-steep	n,v,a,comp
-steepen	v
-steeple	n
-steeplebush	n
-steeplechase	n,er
-steeplejack	n
-steer	n,v,er,va
-steerage	n
-steersman	pc
-steeve	n,v
-Stefan	pc
-stegosaurus	n
-stein	n
-Steinberg	n
-steinbok	n
-Steiner	n
-stela	n
-stele	n
-Stella	pc
-stellar	a
-stellate	v,a,ion
-stem	n,v,er,ms,y
-stemware	n
-stench	n,na,y
-steno	n
-stenography	n,er
-stenotype	n,v,na
-stentorian	a
-step	n,v,na,ms
-stepbrother	n
-stepchild	pc
-stepchildren	pc
-stepdaughter	n
-stepfather	n
-Stephanie	pc
-Stephen	pc
-Stephens	n
-Stephenson	n
-stepladder	n
-stepmother	n
-steppe	n,ed,er
-stepsister	n
-stepson	n
-stepwise	a
-steradian	n
-stere	n
-stereo	n,a
-stereography	n
-stereopsis	pc
-stereopticon	n
-stereoscopy	n
-steric	n,a
-sterile	a,na
-sterling	n,a
-stern	n,a,comp
-sternal	a
-sternmost	a
-Sterno	pc
-sternpost	n
-sternum	n
-steroid	n,a
-stet	v,ms
-stethoscope	n
-Stetson	pc
-Steuben	pc
-Steve	pc
-stevedore	n,v
-Steven	pc
-Stevens	n
-Stevenson	n
-stew	n,v,nopref
-steward	n,v
-stewardess	n
-Stewart	n
-stick	n,v,er,na,va,man
-stickle	v,er
-stickpin	n
-sticktight	n
-stickup	n
-stickwork	n
-sticky	a,comp
-stiff	n,v,a,comp
-stiffen	v,er
-stifle	n,v,er
-stigma	n
-stigmata	pc
-stigmatic	n,a
-stile	n
-stiletto	n
-still	n,v,a,comp,man,in
-stillbirth	n
-stillborn	n,a
-stillwater	n
-stilt	n,v
-stimulant	n,a
-stimulate	v,ion
-stimuli	d
-stimulus	pc
-sting	n,vi,er,y
-stink	n,vi,er,y
-stinkbug	n
-stinkpot	n
-stint	n,v,er
-stipend	n
-stipple	n,v,er
-stipulate	v,a,ion
-stir	n,v,er,ms
-Stirling	n
-stirrup	n
-stitch	n,v,er
-stoat	n
-stochastic	a
-stock	n,v,er,man,y
-stockade	n,v
-stockbroker	n
-stockholder	n
-Stockholm	pc
-stockpile	n,v
-stockpot	n
-stockroom	n
-Stockton	pc
-stockyard	n
-stodgy	a,comp
-stogy	n
-stoic	n,a,na
-stoichiometry	pc
-stoke	v,er
-stole	n,ed
-stolen	d
-stolid	a
-stolon	n
-stoma	n
-stomach	n,v,er,y
-stomachs	d
-stomp	n,v,er
-stone	n,v,er,nopref,y
-stonecrop	n
-stonecut	vi,er,ms
-Stonehenge	pc
-stonemason	n
-stonewall	v,er
-stoneware	n
-stonework	n
-stood	d
-stooge	n,v
-stool	n,v
-stoolie	n
-stoop	n,v,er
-stop	n,v,a,er,va,ms
-stopcock	n
-stopgap	n
-stoplight	n
-stopover	n
-stoppage	n
-stopwatch	n
-storage	n
-store	n,v,a,er,va
-storehouse	n
-storeown	vi,er
-storeroom	n
-storewide	a
-Storey	pc
-stork	n
-storm	n,v,y
-stormbound	a
-story	n,v
-storyboard	n
-storybook	n
-storytell	vi,er
-stout	n,a,comp
-stouthearted	a
-stove	n,er
-stovepipe	n
-stow	v
-stowage	n
-stowaway	n
-strabismic	a
-strabismus	n
-straddle	n,v,er
-strafe	n,v,er
-straggle	n,v,er
-straggly	a
-straight	n,v,a,comp
-straightaway	n,a
-straightedge	n
-straighten	v,er
-straightforward	n,a
-straightway	a
-strain	n,v,er,va
-strait	n,a,nopref
-straiten	v
-straitjacket	n,v
-straitlaced	a
-strake	n
-strand	n,v,er
-strange	a,comp
-strangle	v,er
-stranglehold	n
-strangulate	v,ion
-strap	n,v,er,ms
-straphanger	n
-strata	pc
-stratagem	n
-strategic	n,a
-strategist	n
-strategy	n
-Stratford	pc
-stratify	v,ion
-stratigraphy	n,er
-stratocumulus	n
-stratosphere	n
-stratospheric	a
-Stratton	n
-stratum	n
-stratus	n
-Strauss	n
-straw	n,y
-strawberry	n
-strawflower	n
-stray	n,v,a,er
-streak	n,v,er,y
-stream	n,v,er
-streamlet	n
-streamline	n,v,er
-streamside	n
-street	n
-streetcar	n
-streetwalk	vi,er
-strength	n
-strengthen	v,er
-strenuous	a
-strep	d
-streptococcus	n
-streptomycin	n
-stress	n,v,na
-stretch	n,v,a,er,va
-stretchy	a,comp
-strew	v,er,va
-strewn	d
-striate	v,a,ion
-stricken	d
-Strickland	pc
-strict	n,v,a,comp,ion,va
-stricter	d
-stricture	n
-stride	n,vi,er
-strident	a,na
-strife	n
-strike	n,vi,er
-strikebound	a
-strikebreak	vi,er
-strikeout	n
-string	n,v,er,na,y
-stringent	a,na
-strip	n,v,er,va,ms
-stripe	n,v,er,y
-stripling	n
-striptease	n,er
-strive	v,er
-striven	d
-strobe	n,v
-stroboscope	n
-strode	d
-stroganoff	a
-stroke	n,v,er
-stroll	n,v,er
-Strom	pc
-Stromberg	n
-strong	a,comp
-strongbox	n
-stronghold	n
-strongish	a
-strongroom	n
-strontium	n
-strop	n,v,ms
-strophe	n
-strove	d
-struck	d
-structural	a,na
-structure	n,v
-strudel	n
-struggle	n,v,er
-strum	n,v,er,ms
-strumpet	n
-strung	d
-strut	n,v,er,ms
-strychnine	n,na
-Stu	pc
-Stuart	n,a
-stub	n,v,ms,y
-stubble	n,a
-stubborn	a
-stucco	n,v
-stuck	d
-stud	n,v,nopref,ms
-Studebaker	n
-student	n
-studio	n
-studious	a
-study	n,v
-stuff	n,v,er,y
-stultify	v,ion
-stumble	n,v,er
-stumblebum	n
-stump	n,v,er,y
-stumpage	n
-stun	n,v,er,ms
-stung	d,nopref
-stunk	d
-stunt	n,v
-stupefaction	n
-stupefy	v,er
-stupendous	a
-stupid	n,a,comp
-stupor	n
-Sturbridge	pc
-sturdy	a,comp
-sturgeon	n
-Sturm	n
-stutter	n,v,er
-Stuttgart	pc
-Stuyvesant	n
-sty	n,v,nopref
-stye	n
-Stygian	a
-style	n,v,er,na
-styli	d
-stylish	a
-stylites	a
-stylus	n,nopref
-stymie	n,v
-styptic	n,a
-styrene	n
-Styrofoam	pc
-Styx	pc
-suasion	n,na,va
-suave	a,comp
-sub	n,v,a,ms
-Subaru	n
-subdeb	n
-subdue	v,er,va
-subito	d
-subject	n,v,a,ion
-subjectivity	n
-sublimate	n,v,ion
-sublimer	n
-subliminal	a
-submersible	n,a
-submersion	n
-submit	v,er,ms
-submittal	n
-suborn	v,er
-subpoena	n,v
-subpoenaed	d
-subrogation	n
-subservient	a,na
-subsidence	n
-subsidiary	n,a
-subsidy	n
-subsist	v
-subsistent	a
-substance	n
-substantial	n,a,in
-substantiate	v,ion
-substantive	n,a,na
-substituent	n,a
-substitute	n,v,a,va,ion
-substitutionary	a
-substrate	n
-subsume	v
-subsumed	d
-subsuming	d
-subsumption	n
-subterfuge	n
-subterranean	a
-subtext	n
-subtle	a,comp
-subtlety	n
-subtly	a
-subtracter	n
-subtrahend	n
-suburb	n
-suburbia	n
-subvent	v,ion
-subvert	v,er
-succeed	v,er
-success	n,na
-succession	n,na,va
-successor	n
-succinct	a
-succotash	n
-succubus	n
-succulent	a
-succumb	v
-such	na
-suck	n,v,er
-suckle	v
-suckling	n
-sucrose	n
-suction	n
-Sudan	pc
-Sudanese	pc
-sudden	n,a
-suds	n,v
-sudsy	a,comp
-sue	v,er,va
-suede	n
-suet	n
-suey	n
-Suez	pc
-suffer	v,er,va
-sufferance	n
-suffice	v,er
-sufficient	a,na,in
-suffix	n,v
-suffocate	v,ion
-Suffolk	pc
-suffragan	n,a
-suffrage	n,na
-suffragette	n
-suffuse	v
-suffusion	n,na,va
-sugar	n,v,y
-sugarcane	n
-sugarhouse	n
-sugarloaf	n
-sugarplum	n
-suggest	v,er
-suggestible	a,va
-suggestion	n,na,va
-suicidal	a
-suicide	n,v
-suit	n,v,va
-suitcase	n
-suite	n
-suitor	n
-sukiyaki	n
-sulfanilamide	n
-sulfite	n,na
-sulfonamide	n
-sulfuric	a
-sulfurous	a
-sulk	n,v,er,y
-sulky	n,a,comp
-sullen	a,comp
-Sullivan	n
-sully	n,v
-sultan	n,nopref
-sultanate	n
-sultry	a,comp
-sum	n,v,va,ms
-sumac	n
-Sumatra	pc
-Sumerian	n,a
-summa	n
-summand	n
-summarily	d
-summary	n,a
-summation	n,na
-summer	n,y
-summersault	n
-summertime	n
-summit	n
-summitry	n
-summon	v,er
-summons	n
-Sumner	n
-sump	n
-sumptuous	a,nopref
-Sumter	pc
-sun	n,v,na,nopref,ms,y
-sunbaked	d
-sunbath	n
-sunbathe	v,er
-sunbathing	d
-sunbeam	n
-sunbonnet	n
-sunbow	n
-sunburn	n,v
-sunburnt	d
-sunburst	n
-sundae	n
-Sunday	n,v,a
-sunder	v
-sundew	n
-sundial	n
-sundown	n,er
-sundry	n
-sunfish	n
-sunflower	n
-sung	d
-sunglasses	d
-sunk	d
-sunken	a
-sunlamp	n
-sunlight	n
-sunlit	a
-Sunni	n
-Sunnyvale	pc
-sunrise	n
-sunscreen	n
-sunset	n
-sunshade	n
-sunshine	n,y
-sunspot	n
-sunstroke	n
-sunstruck	a
-sunsuit	n
-suntan	n,v,ms
-sunup	n
-SUNY	pc,nopref
-sup	n,v,er,ms
-super	n,v
-superannuate	v,ion
-superb	a
-superbly	d
-supercilious	a
-superficial	a
-superfluity	n
-superfluous	a
-superintendent	n,a,na
-superior	n,a
-superlunary	a
-supernatant	n,a
-supernovae	pc
-supernumerary	n,a
-supersede	v
-superstar	n
-superstition	n
-superstitious	a
-supervene	v
-supervention	n
-supervise	v,ion
-supervisory	a
-supine	n,a
-supplant	v,er
-supple	v,a,comp,va
-supplely	d
-supplementary	a
-supplementation	n
-suppliant	n,a
-supplicant	n,a
-supplicate	v,ion
-supply	n,v,er,va
-support	v,er,ion,va
-supposal	n
-suppose	n,v,va,nopref
-supposition	n,na,va
-suppositious	a
-suppository	n
-suppress	v
-suppressant	n
-suppressible	a,in
-suppression	n,na,va
-suppressor	n
-suppurate	v,ion
-supra	d
-supramolecular	a
-supranational	a
-suprema	d
-supremacist	n
-supremacy	n
-supreme	a
-supremum	pc
-surcease	n,v
-surcharge	n,v
-surcoat	n
-surd	n,a
-sure	a,comp
-surefire	a,comp
-surefooted	a
-surety	n,na
-surf	n,v,er
-surface	n,v,a,er
-surfactant	n
-surfboard	n,v,er
-surfboat	n
-surfeit	n,v,er
-surge	n,v
-surgeon	n
-surgery	n
-surgical	a
-surly	a,comp
-surmise	n,v
-surmount	v,va
-surname	n,v
-surpass	v,va
-surplice	n
-surplus	n,a
-surprint	n,v
-surprise	n,v,er
-surreal	na
-surrender	n,v
-surreptitious	a
-surrey	n
-surrogate	n,v
-surround	n,v
-surtax	n
-surtout	n
-surveillant	n,a
-survey	n,v,va
-surveyor	n
-survival	n,na
-survive	v,va
-survivor	n
-Sus	pc
-Susan	pc
-Susanna	pc
-Susanne	pc
-susceptance	n
-susceptible	a,va,in
-sushi	n
-Susie	pc
-suspect	n,v,a
-suspend	v,er
-suspense	n,na
-suspension	n,na,va
-suspensor	n,y
-suspicion	n,v
-suspicious	a
-Sussex	pc
-sustain	v,er,va
-sustenance	n
-Sutherland	n
-sutra	n
-Sutton	n
-suture	n,v
-Suzanne	pc
-suzerain	n
-suzerainty	n
-Suzuki	pc
-svelte	a,comp
-Sven	n
-SW	d,nopref
-swab	n,v,er,ms,y
-swaddle	v
-swag	n,v,man,ms
-swage	n,v
-swagger	n,v,er
-Swahili	n
-swain	n
-swale	n
-swallow	n,v,er
-swallowtail	n
-swam	d
-swami	n
-swamp	n,v,er,y
-swampland	n
-swan	n,v,na,ms
-swank	n,v,a,comp,y
-swansdown	n
-Swanson	n
-swap	n,v,er,ms
-sward	n
-swarm	n,v,er
-swart	a
-Swarthmore	pc
-Swarthout	n
-swarthy	a,comp
-swash	n,v,a,er
-swashbuckle	v,er
-swastika	n
-swat	n,v,er,ms
-swatch	n
-swath	n
-swathe	n,v,er
-sway	n,v,er
-swayback	n,ed
-Swaziland	pc
-swear	vi,er
-swearword	n
-sweat	n,v,er,y
-sweatband	n
-sweatshirt	n
-sweatshop	n
-Swede	n
-Sweden	pc
-Swedish	a
-Sweeney	n
-sweep	n,vi,er,y
-sweepstake	n
-sweet	n,v,a,comp
-sweetbread	n
-sweeten	v,er
-sweetheart	n
-sweetie	n
-sweetish	a
-sweetmeat	n
-sweetshop	n
-swell	n,v,a
-swelter	n,v
-Swenson	n
-swept	a
-swerve	n,v
-swift	n,a,comp
-swig	n,v,er,ms
-swill	n,v,er
-swim	n,vi,er,va,ms,y
-swimsuit	n
-swimwear	pc
-swindle	n,v,er
-swine	n
-swineherd	n
-swing	n,v,a,er,y
-swingable	a
-swinish	a
-swipe	n,er,v
-swirl	n,v
-swirly	a,comp
-swish	n,v,a,er,y
-swiss	n,v
-switch	n,v,er,man
-switchback	n
-switchblade	n
-switchboard	n
-switchgear	n
-switchyard	n
-Switzer	pc
-Switzerland	pc
-swizzle	n,v,er
-swollen	d
-swoon	n,v,er
-swoop	n,v,er
-swoosh	n,v
-sword	n,na,man
-swordfish	n
-swordplay	n,er
-swords	man
-swordtail	n
-swore	d
-sworn	d,nopref
-swum	d
-swung	d
-sybarite	na
-Sybil	pc
-sycamore	n
-sycophant	n,a,na
-sycophantic	n,a
-Sydney	pc
-Sykes	pc
-syllabary	n
-syllabic	n,a
-syllabify	v,ion
-syllable	n,v
-syllabus	n
-syllogism	n
-syllogistic	n,a
-sylph	n,na
-sylvan	n,a
-Sylvania	pc
-Sylvester	n
-Sylvia	pc
-sylviculture	n
-symbiont	n
-symbiosis	pc
-symbiotic	n,a
-symbolic	n,a
-symbology	n
-symmetry	n
-sympathetic	n,a
-sympathy	n
-sympatric	a
-symphonic	n,a
-symphony	n
-symposia	pc
-symposium	n
-symptom	n,na
-symptomatic	n,a
-synagogue	n
-synapse	n,v
-synaptic	a
-sync	n,v,a
-synch	v
-synchromesh	n,a
-synchronic	n,a
-synchronism	n
-synchronous	a
-synchrony	n
-synchrotron	n
-syncline	n
-syncopate	v,ion
-syndic	n
-syndicate	n,v,ion
-syndrome	n
-synecdoche	n
-synergetic	n,a
-synergism	n
-synergist	n
-synergistic	n,a
-synergy	n
-synod	n
-synodic	n
-synonym	n,a,na
-synonymous	a
-synonymy	n
-synopses	d
-synopsis	pc
-synoptic	n,a
-syntactic	n,a
-syntax	n
-syntheses	d
-synthesis	pc
-synthetic	n,a
-syphilis	n
-syphilitic	n,a
-Syracuse	pc
-Syria	pc
-syringa	n
-syringe	n,v
-syrinx	n
-syrup	n,y
-system	n,na
-systematic	n,a
-systemic	n,a
-systemization	n
-systemwide	a
-systole	n
-systolic	a
-syzygy	n
-tab	n,v,ms
-tabby	n
-tabernacle	n,v
-tablature	n
-table	n,v,er
-tableau	n
-tableaux	pc
-tablecloth	n
-tableland	n
-tablespoon	n,na
-tablet	n
-tabletop	n
-tableware	n
-tabloid	n
-taboo	n,v
-tabu	n
-tabula	pc
-tabular	a
-tabulate	v,ion
-tachinid	n
-tachistoscope	n
-tachometer	n
-tacit	a,comp
-taciturn	a
-Tacitus	pc
-tack	n,v,er,y
-tackle	n,v,er
-taco	n
-Tacoma	pc
-tact	pc,na
-tactic	n,a
-tactician	n
-tactile	a,nopref
-taction	n
-tactual	a
-tad	n,nopref
-tadpole	n
-taffeta	n
-taffrail	n
-taffy	n
-Taft	n
-tag	n,v,ms
-Tagalog	n
-tagalong	n
-Tahiti	pc
-Tahitian	n
-Tahoe	pc
-tail	n,v,er,na
-tailback	n
-tailcoat	n
-tailgate	n,v,er
-taillight	n
-tailor	n,v
-tailpiece	n
-tailpipe	n
-tailrace	n
-tailspin	n
-tailstock	n
-tailwind	n
-taint	n,v,nopref
-Taipei	pc
-Taiwan	pc
-Taiwanese	pc
-Tajikistan	pc
-take	n,vi,er,va
-takedown	n,a
-taken	a
-takeoff	n
-takeout	n
-takeover	n
-taketh	d
-talc	n
-talcum	n
-tale	n,er,nopref
-talebear	vi,er
-talent	n,ed
-talisman	n
-talismanic	n,a
-talk	n,v,er,y
-talkative	a
-talkie	n
-tall	a,comp,nopref
-Tallahassee	pc
-tallish	a
-tallow	n,v,y
-tally	n,v,man
-tallyho	n
-Talmud	pc,na
-talmudic	n,a
-talon	n,ed
-talus	n
-tam	n
-tamale	n
-Tamara	n
-tamarack	n
-tamarind	n
-tamarisk	n
-tambour	n,v,er
-tambourine	n
-tame	v,a,comp,va
-Tamil	n
-Tammany	a,na
-Tammy	pc
-tamp	n,v
-Tampa	pc
-tamper	v,er
-tampon	n
-tan	n,v,er,nopref,ms
-tanager	n
-Tanaka	pc
-Tananarive	pc
-tanbark	n
-tandem	n
-tang	n,ed,a
-tangelo	n
-tangent	n,a,na
-tangential	a
-tangerine	n
-tangible	n,a,va,in
-tangle	n,v,er
-tango	n,v
-tangy	a,comp
-tanh	d
-tank	n,v,er
-tankard	n
-tannery	n
-tannest	d
-tannin	n
-tansy	n
-tantalum	n
-Tantalus	pc
-tantamount	a
-tantrum	n
-Tanya	pc
-Tanzania	pc
-tao	na
-Taoist	n,a,na
-Taos	pc
-tap	n,v,er,ms
-tapa	n
-tape	n,v
-taper	n,v,er
-tapestry	n,ed
-tapeworm	n
-tapioca	n
-tapir	n
-tapis	n
-tappet	n
-taproom	n
-taproot	n
-tapster	n
-tar	n,v,ms
-tarantara	n
-tarantella	n
-tarantula	n
-Tarbell	pc
-tardy	a,comp
-target	n,v,va
-Tarheel	n
-tariff	n,v
-tarmac	pc
-tarn	n
-tarnish	n,v,va
-tarp	n
-tarpaper	n
-tarpaulin	n
-tarpon	n
-tarragon	n
-tarry	n,v
-Tarrytown	pc
-tart	n,a,comp
-tartan	n
-tartar	n
-Tartary	pc
-tartrate	n,ed
-Tarzan	pc
-task	n,v
-taskmaster	n
-taskmistress	n
-Tasmania	pc
-Tass	pc
-taste	n,v,er,na
-tasting	n
-tasty	a,comp
-tat	n,v,er,nopref,ms,y
-Tate	n
-tater	n
-tattle	n,v
-tattler	n
-tattletale	n
-tattoo	n,v,er
-tau	n
-taught	d
-taunt	n,v,er
-Taurus	pc
-taut	a,comp
-tauten	v
-tautologous	a
-tautology	n
-tautonym	n
-tavern	n,er
-taverna	n
-tawdry	n,a,comp
-tawny	n,a,comp
-tax	n,v,er,va
-taxa	d
-taxation	n
-taxi	n,v,man
-taxicab	n
-taxidermic	a
-taxidermist	n
-taxidermy	n
-taxied	d
-taxiing	d
-taximeter	n
-taxiway	n
-taxon	n
-taxonomist	n
-taxonomy	n,na
-taxpay	vi,er
-Taylor	n
-TB	pc,nopref
-tea	n
-teacart	n
-teach	n,vi,er,va
-teacup	n,na
-teahouse	n
-teak	n
-teakettle	n
-teakwood	n
-teal	n,nopref
-team	n,v,a
-teammate	n
-teamster	n
-teamwork	n
-teapot	n
-tear	n,v,er,na,y
-teardrop	n
-tearjerk	er
-tearoom	n
-tease	n,v,er
-teaspoon	n,na
-teat	n,ed
-teatime	n
-tech	ed
-technetium	n
-technic	n,a
-technician	n
-technicolor	n,ed
-technique	n
-technocracy	n
-technocrat	n
-technocratic	n,a
-technology	n,na
-tectonic	n,a
-tecum	n
-ted	n,v,er,nopref,ms
-teddy	n
-tedious	a
-tedium	n
-tee	n,v
-teem	v
-teen	n,y
-teenage	n,ed,er
-teensy	a,comp
-teepee	n
-teeter	n,v
-teeterboard	n
-teeth	n,v,er
-teethe	v
-Teflon	pc
-Tegucigalpa	pc
-tegument	n,na,in
-Teheran	pc
-Tehran	pc
-tektite	n
-Tektronix	pc
-telecom	n
-Teledyne	pc
-Telefunken	pc
-telegenic	a
-telegraphy	n,er,na
-telekinesis	pc
-teleology	n,na
-telepathic	n,a
-telepathy	n
-telephone	n,v,er,na,y
-telephony	d
-telethon	n
-Telex	pc
-tell	vi,er,va,y
-telltale	n
-tellurium	n
-temblor	n
-temerity	n
-temper	n,v,er,va
-tempera	n,va
-temperance	n,in
-temperate	a,in
-temperature	n
-tempest	n,v
-tempestuous	a
-template	n
-temple	n,ed
-Templeton	pc
-tempo	n
-temporal	a,na
-temporary	n,a
-tempt	v,er,va
-temptation	n
-temptress	n
-tempura	d
-ten	n,er,nopref,ms
-tenable	a,va
-tenacious	a
-tenacity	n
-tenant	n,v,na
-tenantry	n
-tend	v,er
-tendency	n
-tendentious	a
-tender	v,a,er,va
-tenderfeet	pc
-tenderfoot	n
-tenderhearted	a
-tenderloin	n
-tendinitis	n
-tendon	n
-tendril	n,ed,a
-tenebrous	a
-tenement	n
-tenet	n,nopref
-tenfold	a
-Tenneco	pc
-Tennessee	pc
-Tenney	n
-tennis	n
-Tennyson	pc
-tenon	n,v
-tenor	n
-tense	n,v,a,comp
-tensile	a
-tension	n,v,na,va
-tensional	a
-tensor	n
-tenspot	n
-tent	n,v,er,na,y
-tentacle	n,ed
-tentage	n
-tentative	n,a
-tenterhook	n
-tenth	n,a
-tenuous	a
-tenure	n,ed
-tepee	n
-tepid	a
-tequila	n
-teratogen	n
-teratogenic	a
-teratology	n
-terbium	n
-tercel	n
-tercentenary	n,a
-teredo	n
-Terence	pc
-Teresa	pc
-tergiversate	v,ion
-teriyaki	n
-term	n,v,er,nopref
-termagant	n,a
-terminable	a
-terminal	n,a
-terminate	v,a,ion
-termini	d
-terminology	n
-terminus	n
-termite	n,nopref
-tern	n,nopref
-ternary	a
-terpene	n
-Terpsichore	pc
-terpsichorean	a
-Terra	pc
-terrace	n,v,er
-terrain	n
-terramycin	n
-terrapin	n
-terrarium	n
-terrazzo	n
-Terre	pc
-Terrell	n
-Terrence	n
-terrestrial	n,a
-Terri	n
-terrible	a
-terrier	n
-terrific	n,a
-terrify	v
-territorial	n,a,na
-territory	n
-terror	n,na
-terry	n
-terse	a,comp
-tertiary	n,a
-Tess	pc
-tessellate	v,ion
-tessera	n
-tesserae	pc
-tessitura	n
-test	n,v,er,va,y
-testament	n,na
-testamentary	a
-testate	a,ion
-testbed	n
-testes	d
-testicle	n
-testicular	a
-testify	v,er
-testimonial	n,a
-testimony	n
-testosterone	n
-tetanus	n
-tetched	a
-tetchy	a
-tete	n,nopref
-tether	n,v
-tetherball	n
-Teton	n,nopref
-tetrachloride	n
-tetracycline	n
-tetrad	n
-tetraethyl	a
-tetrafluoride	n
-tetrafluouride	n
-tetragonal	a
-tetragrammaton	n
-tetrahedra	n
-tetrahedral	a
-tetrahedron	n
-tetralogy	n
-tetramer	n
-tetraploid	n,a
-tetravalent	a
-tetrode	n
-Teutonic	n,a
-Texaco	pc
-Texan	pc
-Texas	pc
-text	n,nopref
-textbook	n
-textile	n
-Textron	pc
-textual	a
-textural	a
-texture	n,v
-TGV	n,nopref
-Thadeus	n
-Thai	n
-Thailand	pc
-thalamus	n
-Thalia	pc
-thallium	n
-thallophyte	n
-Thames	pc
-than	d,nopref
-thane	n,nopref
-thank	n,v,er,na
-thanksgiving	n
-that	pc,nopref
-thatch	n,v,er
-that'll	d
-thaumaturgic	a
-thaumaturgy	n
-thaw	n,v
-Thayer	n
-the	d,nopref
-Thea	pc
-theatric	n
-Thebes	pc
-thee	d,nopref
-theft	n
-their	d,nopref
-theirs	d,nopref
-theism	n
-theist	n,a,na
-Thelma	pc
-them	d,nopref
-thematic	n,a
-theme	n
-themselves	d
-then	d,nopref
-thence	d
-thenceforth	d
-Theo	pc
-theocracy	n
-theocratic	n,a
-theodolite	n,na
-Theodore	pc
-theogony	n
-theologian	n
-theology	n
-theorem	n
-theoretic	n
-theoretician	n
-theorist	n
-theory	n
-theosophy	n
-therapeutic	n,a
-therapist	n
-therapy	n
-there	pc,nopref
-thereabouts	d
-thereafter	d
-thereat	d
-thereby	d
-there'd	d
-therefore	d
-therefrom	d
-therein	d
-there'll	d
-thereof	d
-thereon	d
-Theresa	pc
-Therese	n
-thereto	d
-theretofore	d
-thereunder	d
-thereunto	d
-thereupon	d
-therewith	d
-therm	n
-thermal	n,a
-thermionic	n,a
-thermistor	n
-thermo	n
-Thermofax	pc
-thermography	n,er
-thermophile	n
-thermophilic	a
-thermostat	n,v
-thesaurus	n
-these	n
-Theseus	pc
-thesis	pc
-thespian	n,a
-Thessalonian	n
-theta	n
-Thetis	pc
-they	d
-they'd	d
-they'll	d
-they're	d
-they've	d
-thiamin	n
-thiamine	n
-thick	n,a,comp
-thicken	v,er
-thicket	n,ed,y
-thickheaded	a
-thickish	a
-thickset	a
-thief	pc
-thieve	v
-thievery	n
-thievish	a
-thigh	n
-thimble	n,na
-Thimbu	pc
-thin	v,a,comp,ms
-thine	d
-thing	n,a
-thingamajig	n
-think	n,vi,er,va
-thinnish	a
-thiocyanate	n
-thiouracil	n
-third	n,a
-thirst	n,v,er,y
-thirteen	n
-thirteenth	n
-thirtieth	n
-thirty	n
-thirtyish	a
-this	d
-this'll	d
-thistle	n
-thistledown	n
-thither	a
-Thomas	n
-Thomistic	a
-Thompson	n
-Thomson	n
-thong	n
-Thor	pc
-thorax	n
-Thoreau	pc
-thorium	n
-thorn	n,ed,na,y
-Thornton	n
-thorough	a
-thoroughbred	n,a
-thoroughfare	n
-thoroughgoing	a
-Thorpe	n
-Thorstein	pc
-those	d
-thou	n,v
-though	d,nopref
-thought	n,na
-thousand	n
-thousandfold	n
-thousandth	n
-thraldom	n
-thrall	n
-thrash	n,v,er
-thread	n,v,er,na,y
-threadbare	a
-threat	n,v
-threaten	v,er
-three	n,nopref
-threefold	n
-threesome	n
-threnody	n
-thresh	v,er
-threshold	n,v
-threw	d
-thrice	d
-thrift	n,y
-thrill	n,v,er
-thrips	n
-thrive	v,er
-throat	n,v,y
-throb	n,v,er,ms
-throes	d
-thrombosis	pc
-thrombus	n
-throne	n,ed
-throng	n,v
-throttle	n,v,er
-through	d
-throughout	d
-throughput	d
-throughway	n
-throve	d
-throw	n,vi,er
-throwaway	n
-throwback	n
-thrown	d
-thrum	n,v,nopref,ms
-thrush	n
-thrust	n,vi,er
-Thruway	pc
-Thu.	d,nopref
-Thuban	pc
-thud	n,v,ms
-thug	n
-thuggee	n
-thuggery	pc
-thuggish	a
-Thule	pc
-thulium	n
-thumb	n,v,nopref
-thumbnail	n
-thumbprint	n
-thumbscrew	n
-thumbtack	n
-thump	n,v,er
-thunder	n,v,er
-thunderbird	n
-thunderbolt	n
-thunderclap	n
-thundercloud	n
-thunderhead	n
-thunderous	a
-thundershower	n
-thunderstorm	n
-Thurman	pc
-Thursday	n
-Thurston	pc
-thus	d
-thwack	n,v
-thwart	n,v,a,er
-thy	d
-thyme	n
-thymine	n
-thyratron	n
-thyroid	n
-thyroidectomy	n
-thyroxine	n
-thyself	d
-ti	n,nopref
-tiara	n
-Tiber	pc
-Tibet	pc
-Tibetan	n,a
-tibia	n
-Tibor	pc
-tic	n
-tick	n,v,er,nopref
-ticket	n,v
-tickle	n,v,er
-ticklish	a
-tidal	a
-tidbit	n
-tide	n,v,nopref
-tideland	n
-tidewater	n
-tidy	n,v,a,comp
-tie	n,ed,er
-tieback	n
-tiedown	n
-Tientsin	pc
-tiff	n,v
-tiffany	n
-tiger	n,na
-tigerish	a
-tight	n,a,comp
-tighten	v,er
-tightfisted	a
-tightrope	n
-tightwad	n
-tightwire	n
-tigress	n
-Tigris	pc
-til	d
-tilde	n
-tile	n,v,a,comp,na
-till	n,v,er,va
-tillage	n
-tilt	n,v,er,nopref
-tilth	n
-Tim	pc
-timber	n,v,man
-timberland	n
-timberline	n
-timbre	n
-time	n,v,a,er
-timeout	n
-timepiece	n
-timesave	vi
-timeserve	vi,er
-timeshare	n,v
-timetable	n
-timeworn	a
-Timex	pc
-timid	a,comp
-Timon	pc
-timorous	a
-timothy	n
-timpani	d
-timpanist	n
-tin	n,v,er,man,ms,y
-Tina	pc
-tincture	n,v
-tinder	n,y
-tinderbox	n
-tine	n,ed,y
-tinfoil	n
-tinge	n,v
-tingle	n,v,er
-tingly	d
-tinhorn	n
-tinker	n,v,er
-Tinkertoy	n
-tinkle	n,v,er
-tinkly	d
-tinplate	n
-tinsmith	n
-tint	n,v,er
-tintinnabulate	v,ion
-tintype	n
-tinware	n
-Tioga	pc
-tip	n,v,er,ms,y
-tipoff	n
-Tipperary	pc
-tipple	n,v,er
-tipster	n
-tipsy	a,comp
-tiptoe	n,v
-tirade	n
-Tirana	pc
-tire	n,v,va,man
-tiresome	a
-tissue	n
-tit	n,er,nopref,ms
-titan	n,na
-titanate	n
-titanic	a
-titanium	n
-titer	n,nopref
-tithe	n,v,er
-tithing	n
-titian	a
-titillate	v,ion
-title	n,v,na
-titmouse	n
-titrate	v,ion,va
-tittle	n,nopref
-titular	n,a
-Titus	n
-TLC	d,nopref
-TN	pc,nopref
-TNT	pc,nopref
-to	d,nopref
-toad	n
-toadstool	n
-toady	n,v,na
-toast	n,v,er,y
-toastmaster	n
-toastmistress	n
-tobacco	n
-tobacconist	n
-Tobago	pc
-Tobias	n,nopref
-toboggan	n,v,er,na
-Toby	pc
-toccata	n
-tocsin	n
-today	n
-Todd	pc
-toddle	n,v,er
-toddy	n
-toe	n,ed
-toehold	n
-toeing	d
-toenail	n,v
-toffee	n
-tofu	d
-tog	v,ms
-together	a
-toggery	n
-toggle	n,v
-Togo	pc
-togs	n
-toil	n,v,er,na
-toilet	n
-toiletry	n
-toilette	n
-toilsome	a
-toilworn	a
-tokamak	n
-token	n,v,a
-Tokyo	pc
-told	d
-Toledo	pc
-tolerable	a,va,in
-tolerant	a,in
-tolerate	v,ion
-toll	n,v,er,man
-tollbooth	n
-tollgate	n
-tollhouse	n
-Tolstoy	pc
-toluene	n
-Tom	pc
-tomahawk	n
-tomato	d
-tomatoes	d
-tomb	n,na
-tomboy	n
-tomboyish	a
-tombstone	n
-tomcat	n
-tome	n
-tomfoolery	n
-Tomlinson	pc
-Tommie	pc
-tommy	n,nopref
-tommyrot	n
-tomograph	n
-tomography	n
-tomorrow	n
-Tompkins	n
-ton	n,er,ms
-tonal	a
-tone	n,v,er,in,y
-tong	n,v,er
-tongue	n,v,na
-Toni	pc
-tonic	n,a
-tonight	n
-tonnage	n
-tonne	n
-tonneau	n
-tonsil	n
-tonsillectomy	n
-tonsillitis	n
-tonsorial	a
-tonsure	n,v
-Tonya	n
-too	d,nopref
-toodle	v
-took	d
-tool	n,v
-toolbox	n
-toolholder	n
-toolkit	n
-toolroom	n
-toolshed	n
-toolsmith	n
-toot	n,v,er
-tooth	n,ed,na,y
-toothache	n
-toothbrush	n
-toothpaste	n
-toothpick	n
-toothsome	a
-tootle	n,v,er
-top	n,v,er,na,ms
-topaz	n
-topcoat	n
-Topeka	pc
-toper	n
-topflight	a
-topgallant	n,a
-topiary	n,a
-topic	n,nopref
-topkick	n
-topknot	n
-topmast	n
-topmost	a
-topnotch	n,er
-topo	n
-topocentric	a
-topography	n,er
-topology	n,na
-topple	v
-topsail	n
-topside	n
-topsoil	n
-topsy	d
-toque	n
-Torah	n
-torch	n,v
-torchbearer	n
-torchlight	n
-tore	d,nopref
-toreador	n
-tori	d
-torment	n,v,er
-torn	d
-tornado	n
-tornadoes	d
-toroid	n
-Toronto	pc
-torpedo	n,v
-torpedoes	d
-torpid	a
-torpor	n
-torque	n
-torr	n,nopref
-Torrance	pc
-torrent	n,a
-torrential	a
-Torres	n
-torrid	a
-torsion	n,na,in
-torso	n
-tort	n
-torte	n,er
-tortellini	pc
-tortilla	n
-tortious	a
-tortoise	n
-tortoiseshell	n
-tortoni	pc
-tortuous	a
-torture	n,v,er
-torus	n
-Tory	n,na
-Toshiba	n
-toss	n,v,er
-tot	n,v,er,nopref,ms
-total	n,a,na
-totalitarian	n,a,na
-tote	n,v,er
-totem	n,na
-totemic	a
-toucan	n
-touch	n,v,va,y
-touchback	n
-touchdown	n
-touche	v,er
-touchhole	n
-touchstone	n
-tough	n,v,a,comp,y
-toughen	v
-toughie	n
-toupee	n
-tour	n,v,na
-touristy	a
-tourmaline	n
-tournament	n
-tourney	n
-tourniquet	n
-tousle	n,v
-tout	n,v,er
-tow	n,v,er
-toward	n,a
-towboat	n
-towhead	n,ed
-towhee	n
-towline	n
-town	n,y
-townhouse	n
-towns	man
-Townsend	n
-townsfolk	n
-townspeople	n
-towpath	n
-towrope	n
-toxic	a
-toxicology	n,na
-toxin	n
-toy	n,v,er,na
-Toyota	n
-trace	n,v,er
-traceable	a
-tracery	n
-Tracey	pc
-trachea	n
-tracheal	a
-tracheotomy	n
-track	n,v,er,va
-trackage	n
-trackwalker	n
-tract	n,v,ion,va
-Tracy	n
-trade	n,v,er
-trademark	n,v
-tradeoff	n
-trades	man
-tradespeople	n
-tradition	n,na
-traduce	v,er,va
-traffic	n
-trafficked	d
-trafficker	n
-trafficking	d
-tragedian	n
-tragedienne	n
-tragedy	n
-tragic	n,a
-tragicomedy	n
-tragicomic	n,a
-trail	n,v,er
-trailblaze	vi,er
-trailside	n
-train	n,v,er,va,man
-trainee	n,na
-trainload	n
-traipse	n,v
-trait	n
-traitor	n
-traitorous	a
-trajectory	n
-tram	n,v,ms
-tramcar	n
-tramp	n,v,er
-trample	n,v,er
-trampoline	n,er,na
-tramway	n
-Tran	n
-trance	n,v
-tranquil	a,comp,na
-tranquillity	n
-transact	v,ion
-transalpine	n,a
-transatlantic	a
-transceiver	n
-transcend	v
-transcendent	a,na
-transcendental	a,na
-transconductance	n
-transcontinental	a
-transcribe	v,er
-transcript	n,ion
-transducer	n
-transduction	n
-transect	v,ion
-transept	n
-transfer	n,v,er,ms
-transferable	a
-transferal	n
-transferee	n
-transference	n
-transferor	n
-transfiguration	n
-transfigure	v
-transfinite	a
-transfix	v
-transform	n,v,er,va
-transformation	n,na,va
-transfuse	v
-transfusion	n
-transgenic	n,a
-transgress	v
-transgression	n,na,va
-transgressor	n
-transient	n,a,na
-transistor	n,na
-transit	n,v,va
-Transite	pc
-transition	n,na,va
-transitory	a
-translate	v,ion,va
-transliterate	v,ion
-translocate	v,ion
-translucent	a,na
-transmigrate	v,ion
-transmissible	a,va
-transmission	n,na,va
-transmit	v,er,ms
-transmittable	a
-transmittal	n
-transmittance	n
-transmogrify	v,ion
-transmutation	n,na,va
-transmute	v,va
-transoceanic	a
-transom	n
-transpacific	a
-transparent	a,na
-transpiration	n
-transpire	v
-transplant	n,v,er,va
-transplantation	n
-transpolar	a
-transpond	v,er
-transport	n,v,er,va
-transportation	n,na
-transpose	v,va
-transposition	n,na
-transship	n,v,er,va,ms
-transubstantiate	v,ion
-transuranium	a
-transversal	n,a
-transverse	n,a
-transvestite	n,a
-trap	n,v,er,na,ms
-trapdoor	n
-trapeze	n,na
-trapezium	n
-trapezoid	n
-traprock	n
-trapshoot	vi,er
-trash	n,v,y
-Trastevere	pc
-trauma	n
-traumatic	n,a
-travail	n,v
-travelogue	n
-traversal	n
-traverse	n,v,a,er,va
-travertine	n
-travesty	n,v
-Travis	n
-travois	n
-trawl	n,v,er
-tray	n
-treacherous	a
-treachery	n
-treacle	n
-tread	n,v,er
-treadle	n,v
-treadmill	n
-treason	n,va
-treasonous	a
-treasure	n,v,er,va
-treasury	n
-treat	n,v,er,va
-treatise	n
-treaty	n
-treble	n,v,a
-tree	n,v,na
-treehopper	n
-treetop	n
-trefoil	n
-trek	n,v,er,ms
-trellis	n,v
-tremble	n,v,a,er
-tremendous	a
-tremolo	n
-tremor	n
-tremulous	a
-trench	n,v,er
-trenchant	a,na
-trencherman	pc
-trenchermen	pc
-trend	n,v,y
-Trenton	pc
-trepan	v,ms
-trepidation	n
-trespass	n,v,er
-tress	n,v,na
-trestle	n
-Trevelyan	n
-Trevor	pc
-triable	a
-triac	n
-triad	n
-triage	n
-trial	n
-triangle	n
-triangular	a
-triangulate	v,a,ion
-Triangulum	pc
-Trianon	pc
-Triassic	a
-triathlon	n
-triatomic	a
-triaxial	n,v,a,er
-tribal	a,na
-tribe	n
-tribes	man
-tribulate	v,ion
-tribunal	n
-tribune	n,na
-tributary	n,a
-tribute	n,v,va
-trice	n,v,nopref
-Trichinella	pc
-trichloride	n
-trichloroethane	n
-trick	n,v,er,y
-trickery	n
-trickle	n,v
-trickster	n
-tricorn	a
-tricornered	a
-tricot	n
-tricycle	n
-trident	n
-tridiagonal	a
-tried	d
-triennial	n,a
-triennium	n
-trifecta	n
-trifle	n,v,er
-trifluouride	n
-trifocal	n,a
-trifurcate	v,a,ion
-trig	n,v,nopref,ms
-trigger	n,v,man
-trigonal	a
-trigonometric	a
-trigonometry	pc
-trigram	n
-trigraph	n
-trihedral	n,a
-trilateral	a
-trilingual	a
-trill	n,v,er
-trillion	n,a
-trillionth	n,a
-trilobite	n,na
-trilogy	n
-trim	n,v,a,comp,ms
-trimer	n
-trimester	n
-trimotor	n
-Trinidad	pc
-trinitarian	a,na
-trinity	n
-trinket	n,v,er
-trinomial	a,n
-trio	n
-triode	n
-trioxide	n
-trip	n,v,a,er,ms
-tripartite	a
-tripe	n
-triplane	n
-triple	n,v,a
-triplet	n
-Triplett	n
-triplex	n
-triplicate	n,v,a,ion
-triploid	a
-tripod	n
-tripoli	n
-triptych	n
-trireme	n
-trisect	v,ion
-trisodium	n
-Tristan	pc
-tristate	n
-trisyllable	n
-trite	a,comp,nopref
-tritiate	v,ion
-tritium	n
-triton	n
-tritone	n
-triumph	n,v
-triumphal	a
-triumphant	a
-triumvir	n
-triumvirate	n
-triune	n,a
-trivalent	a,na
-trivia	pc
-trivial	a,na
-trivium	pc
-trochaic	n,a
-trochee	n
-trod	a
-trodden	d
-troglodyte	n
-troglodytic	a
-trogon	n
-troika	n
-Trojan	n,a
-troll	n,v,er
-trolley	n,v
-trolleybus	n
-trollop	n
-trombone	n,na
-trompe	n
-troop	n,v,er
-trope	n
-trophic	n,a
-trophy	n,v
-tropic	n,a
-tropism	n
-tropopause	n
-troposphere	n
-tropospheric	a
-trot	n,v,er,nopref,ms
-troth	n,v
-troubadour	n
-trouble	n,v,er
-troubleshoot	v,er
-troublesome	a
-trough	n
-trounce	v
-troupe	n,v,er
-trouser	n
-trousseau	n
-trout	n,y
-Troutman	n
-trove	n,er
-troy	pc,nopref
-truancy	n
-truant	n,v,a
-truantry	n
-truce	n,ed
-truck	n,v,er,man
-truckle	n,v,er
-truckload	n
-truculent	a,na
-trudge	n,v,er
-Trudy	pc
-true	n,v,a,comp,na
-truffle	n,ed
-truism	n
-truly	d
-Truman	n
-Trumbull	n
-trump	n,v
-trumpery	n,a
-trumpet	n,v,er,na
-truncate	v,a,ion
-truncheon	n,v
-trundle	n,v,er
-trunk	n,v
-trunnion	n
-truss	n,v,er
-trust	n,v,er,na
-trustbust	vi,er
-trustee	n,v
-trustworthy	a,comp
-trusty	n,a,comp
-truth	n,na
-TRW	pc,nopref
-try	n,v,er
-tryout	n
-trypsin	n
-tsar	n
-tsarina	n
-tsetse	n
-tsunami	n
-TTL	pc,nopref
-TTY	pc,nopref
-tub	n,v,er,va,ms
-tuba	n
-tubby	n,a,comp
-tube	n,v,er,na
-tubercle	n,ed
-tubercular	n,a
-tuberculin	n
-tuberculosis	pc
-tuberculous	a
-tuberous	a
-tubular	a
-tubule	n
-tuck	n,v,er
-Tucson	pc
-Tudor	n,nopref
-Tue.	d,nopref
-Tuesday	n
-tufa	n
-tuff	n,nopref
-tuffet	n
-tuft	n,v,er,y
-tug	n,v,er,ms
-tugboat	n
-tuition	n,na,in
-Tulane	pc
-tulip	n
-tulle	n
-Tulsa	pc
-tum	n,nopref
-tumble	n,v,er
-tumbledown	a
-tumbleweed	n
-tumbrel	n
-tumbril	n
-tumescent	a,in
-tumid	a,comp
-tummy	n
-tumpline	n
-tumuli	d
-tumult	n
-tumultuous	a
-tumulus	n
-tun	n,nopref,ms,y
-tuna	n
-tundra	n
-tune	n,v,er,na,va
-tung	n
-tungstate	n
-tungsten	n
-tunic	n
-Tunis	pc
-Tunisia	pc
-tuppence	n
-turban	n,ed
-turbid	a,comp
-turbinate	ed,a
-turbine	n
-turbo	n
-turbocharge	v,er
-turbofan	n
-turbojet	n
-turboprop	n
-turbot	n
-turbulent	a,na
-tureen	n
-turf	n,v
-turgid	a,comp
-Turin	pc
-Turing	n
-turk	na
-turkey	n
-Turkish	a
-Turkmenistan	pc
-turmeric	n
-turmoil	n
-turn	n,v,er,va
-turnabout	n
-turnaround	n
-turnbuckle	n
-turncoat	n
-turndown	n
-turnery	n
-turnip	n
-turnkey	n
-turnoff	n
-turnout	n
-turnover	n
-turnpike	n
-turnstile	n
-turnstone	n
-turntable	n
-turnup	n
-turpentine	n,v
-turpitude	n
-turquoise	n
-turret	n,ed
-turtle	n,v
-turtleback	n,a
-turtledove	n
-turtleneck	n
-turvy	a,comp
-Tuscaloosa	pc
-Tuscan	n,a
-Tuscany	pc
-Tuscarora	n
-tusk	n,v,er,na
-Tuskegee	pc
-tussle	n,v
-tussock	n
-tut	d
-tutelage	n
-tutelary	n,a
-tutor	n,v
-tutorial	n,a
-tutti	n
-Tuttle	n
-tutu	n
-tux	n
-tuxedo	n
-tuyere	n
-TV	pc,nopref
-TVA	pc,nopref
-TWA	pc,nopref
-twaddle	n,v,er
-twain	n
-twang	n,v,y
-tweak	n,v,er
-tweed	n,ed,y
-tween	d
-tweet	n,v,er
-tweeze	v,er
-twelfth	n
-twelve	n
-twentieth	n
-twenty	n
-twentyish	a
-twerp	n
-twice	d
-twiddle	n,v,er
-twig	n,v,ms,y
-twilight	n
-twill	n,v
-twin	n,v,ms
-twine	n,v,er,y
-twinge	n,v
-twinkle	n,v,er
-twinkly	a
-twirl	n,v,er
-twirly	a
-twist	n,v,er,y
-twit	n,v,nopref,ms
-twitch	n,v,er,y
-twitter	n,v,er
-twixt	d
-two	n,nopref
-twofold	a
-Twombly	n
-twopenny	n
-twosome	n
-TWX	pc,nopref
-TX	pc,nopref
-Tyburn	pc
-tycoon	n
-tying	d
-Tyler	n
-tympanist	n
-tympanum	n
-Tyndall	n
-type	n,v,er,na,va,y
-typecast	v
-typeface	n
-typescript	n
-typeset	vi,er,va,ms
-typewrite	v,er
-typewritten	d
-typhoid	n
-Typhon	pc
-typhoon	n
-typhus	n
-typic	n,a
-typify	v,ion
-typo	n
-typography	n,er
-typology	n,na
-tyrannic	n
-tyrannicide	n
-tyrannosaurus	n
-tyrannous	a
-tyranny	n
-tyrant	n
-tyro	n
-tyrosine	n
-Tyson	n
-UAL	pc,nopref
-ubiquitous	a
-ubiquity	n
-UCLA	pc,nopref
-udder	n
-Uganda	pc
-ugh	d,nopref
-uglify	v,ion
-ugly	a,comp
-UHF	pc,nopref
-UJA	pc,nopref
-U.K.	d,nopref
-UK	pc,nopref
-ukase	n
-Ukraine	pc
-Ukrainian	n,a
-ukulele	n
-Ulan	pc
-ulcer	n,v
-ulcerate	v,ion
-ulcerous	a
-Ullman	n
-ulna	n
-ulster	n
-ulterior	a
-ultimacy	n
-ultimate	n,a,nopref
-ultimatum	n
-ultra	n,a
-ululate	v,ion
-Ulysses	pc
-umber	n,v,nopref
-umbilical	a
-umbilici	d
-umbilicus	n
-umbra	n,nopref
-umbrage	n
-umbrageous	a
-umbrella	n,v,a
-umiak	n
-umlaut	n,v
-umpire	n,v
-umpteen	n
-umpteenth	a
-U.N.	d,nopref
-UN	pc,nopref
-unaided	d
-unanimity	n
-unanimous	a
-unarticulated	a
-unary	n,nopref
-unbeknown	d
-unbeknownst	d
-unbidden	n
-unborn	a
-uncanny	a,comp
-unchristian	a
-uncial	n,a,nopref
-uncle	n
-uncompleted	d
-uncouth	a
-unction	n,na,nopref
-unctuous	a
-under	d,nopref
-underclassman	pc,na
-underclassmen	pc
-underlie	v
-underling	n
-underlying	a
-undulant	a
-undulate	v,a,ion
-unending	a
-UNESCO	pc,nopref
-uniaxial	a
-unicameral	a
-unicellular	a
-unicorn	n
-unicycle	n,na
-unidimensional	a
-unidirectional	a
-uniform	n,v,a
-uniformitarian	n,a,na
-unify	v,er,ion
-unilateral	a
-unimodal	a
-unimodular	a
-uninominal	a
-union	n,v,na
-uniplex	v
-unipolar	a
-uniprocessor	n
-unique	a
-Uniroyal	pc
-unisex	d
-unisexual	a
-unison	n
-unit	n
-unitarian	n,a,na
-unitary	a
-unite	n,v,er,na
-unity	n
-Univac	pc
-univalent	n,a
-univariate	v
-universal	n,a,na
-universe	n,a
-univocal	a
-Unix	pc
-unkempt	a
-unlucky	a,comp
-unmediated	a
-unmet	d
-unmoderated	d
-unperturbed	a
-unpolitical	a
-unportable	a
-unprovable	a,va
-unproved	a
-unruly	a,comp
-unscented	d
-untainted	a
-until	d
-untilled	a
-unto	d
-untouchable	n,a
-unused	d
-unvented	a
-unwary	a,comp
-unwieldy	a,comp
-up	n,v,er,nopref,ms
-upbeat	n,a
-upbraid	v,er
-upbring	vi
-upchuck	v
-upcome	vi
-update	v
-updraft	n
-upend	v
-upgrade	n,v,va
-upheaval	n
-upheave	v,er
-upheld	d
-uphill	n
-uphold	vi,er
-upholster	v,er
-upholstery	n
-UPI	pc,nopref
-upkeep	n
-upland	n
-uplift	n,v,er
-upload	v,er
-upmost	d
-upon	d
-upperclass	n,man
-uppercut	n,v
-uppermost	a
-uppity	a
-upraise	v
-uprear	v
-upright	n,a
-uprise	n,v,er
-uprisen	d
-upriver	d
-uproar	n
-uproarious	a
-uproot	v,er
-uprose	d
-upscale	d
-upset	vi,er,va,ms
-upshot	n
-upside	n
-upsilon	n
-upslope	d
-upstage	v
-upstairs	n
-upstand	vi
-upstart	n,v,a
-upstate	n,a
-upstater	n
-upstream	n,a
-upstroke	n
-upsurge	n
-upsweep	n,v
-upswept	a
-upswing	n
-uptake	n
-upthrust	n
-uptilt	v
-uptime	n
-Upton	n
-uptown	a
-uptrend	n
-upturn	n,v
-upward	n,a
-upwell	v
-upwind	d
-uranium	n
-Uranus	pc
-uranyl	n
-urban	d
-Urbana	pc
-urbane	a,na
-urbanite	n
-urchin	n
-urea	n
-urethane	n
-urethra	n
-urge	n,v,er
-urgency	n
-urgent	a,nopref
-uric	a,nopref
-urinal	n
-urinalysis	pc
-urinary	a
-urinate	v,ion
-urine	n
-Uris	pc
-urn	n,in
-urology	n,na
-Ursa	pc
-ursine	a
-Ursula	pc
-Ursuline	n,a
-Uruguay	pc
-u's	d
-U.S.	d,nopref
-us	d,nopref
-U.S.A.	d,nopref
-USA	pc,nopref
-USAF	pc,nopref
-usage	n
-USC	pc,nopref
-USC&GS	pc,nopref
-USDA	pc,nopref
-use	n,v,er,va
-useful	a
-USGS	pc,nopref
-usher	n,v
-usherette	n
-USIA	pc,nopref
-USMA	pc,nopref
-USMC	pc,nopref
-USN	pc,nopref
-USNA	pc,nopref
-USNR	pc,nopref
-USPS	pc,nopref
-USSR	pc,nopref
-usual	a
-usurer	n
-usurious	a
-usurp	v,er
-usurpation	n
-usury	n
-UT	pc,nopref
-Utah	pc
-utensil	n
-uterine	a
-utero	d
-uterus	n
-Utica	pc
-utile	a,na,in
-utilitarian	n,a,na
-utmost	n,a
-utopia	n
-utopian	n,a,na
-utter	v,a,er,va
-utterance	n
-uttermost	n,a
-uvula	n
-uxorial	a
-uxorious	a
-Uzbekistan	pc
-Uzi	n
-VA	pc,nopref
-vacant	a,na
-vacate	v,ion
-vacationland	n
-vaccinate	n,v,ion
-vaccine	n
-vaccinia	n
-vacillate	v,ion
-vacua	pc
-vacuity	n
-vacuo	d
-vacuolate	ed,a,ion
-vacuole	n
-vacuous	a
-vacuum	n,v,a,na
-Vaduz	pc
-vagabond	n,v,na
-vagarious	a
-vagary	n
-vagina	n
-vaginal	a
-vagrant	n,a,na
-vague	a,comp
-Vail	n
-vain	a,comp
-vainglorious	a
-vainglory	n
-Valdez	n
-vale	n,nopref
-valediction	n
-valedictorian	n
-valedictory	n,a
-valent	a
-valentine	n
-Valerie	pc
-Valery	pc
-valet	n,v,nopref
-Valhalla	pc
-valiant	n,a,na
-valid	a,comp
-validate	v,ion,in
-valise	n
-Valkyrie	n
-Valletta	pc
-valley	n
-Valois	a
-valorous	a
-valuable	n,a,in
-valuate	v,ion
-value	n,v,er
-valve	n,ed
-vamoose	v
-vamp	n,v,er
-vampire	n,na
-van	n
-vanadium	n
-Vance	n
-Vancouver	pc
-vandal	n,a,na
-Vandenberg	n
-Vanderbilt	n
-Vanderpoel	n
-vane	n,ed
-Vanessa	pc
-vanguard	n
-vanilla	n
-vanish	v,er
-vanity	n
-vanload	n
-vanquish	v,er,va
-vantage	n
-vapid	a
-vaporous	a
-Vargas	n
-variable	n,a,va,in
-variac	a
-Varian	pc
-variant	n,a,in
-variate	n,ion
-varicose	ed,a
-variegate	v,ion
-varietal	n,a
-variety	n
-variorum	n,a
-various	a
-varistor	n
-Varitype	pc
-varlet	n
-varmint	n
-varnish	n,v,er,y
-varsity	n
-vary	v,er
-vascular	a
-vase	n
-vasectomy	n
-Vaseline	n
-vasoconstrict	ion
-vasodilate	ion
-vasomotor	a
-Vasquez	n
-vassal	n,a
-vassalage	n
-Vassar	pc
-vast	n,a,comp
-vasty	d
-vat	n,v,ms
-Vatican	a
-vaudeville	n
-vaudevillian	n
-Vaudois	pc
-Vaughan	pc
-Vaughn	pc
-vault	n,v,er
-vaunt	n,v,er,na
-VCR	n,nopref
-veal	n,v,er,va,y
-vector	n,v,na
-vectorial	a
-Veda	pc
-vee	n,nopref
-veep	n
-veer	n,v,nopref
-veery	n,nopref
-Vega	n
-vegetable	n,a
-vegetal	a
-vegetarian	n,a,na
-vegetate	v,ion
-veggie	n
-vehement	a
-vehicle	n
-vehicular	a
-veil	n,v
-vein	n,v,er,nopref,y
-velar	n,a,na
-Velasquez	pc
-Velcro	d
-veld	n,nopref
-veldt	n
-Vella	pc
-vellum	n
-Velma	n
-velocipede	n
-velocity	n
-velour	n
-velvet	n,a,y
-velveteen	n
-venal	a
-venation	n,na
-vend	v,er,va
-vendetta	n
-vendible	n,a,va
-vendor	n
-veneer	n,v,er,nopref
-venerable	a,va
-venerate	v,ion
-venereal	a
-venery	n
-Venetian	n
-Veneto	pc
-Venezuela	pc
-vengeance	n
-vengeful	a
-venial	a
-Venice	pc
-venin	n
-venire	n,man
-venison	n
-venom	n
-venomous	a
-venous	a
-vent	n,v,er,nopref
-ventilate	v,ion
-ventral	n,a
-ventricle	n
-ventricular	a
-ventriloquism	n
-ventriloquist	n
-ventriloquy	n
-venture	n,v,er
-venturesome	a
-venturi	n
-venturous	a
-venue	n
-Venus	pc
-Venusian	n,a
-Vera	pc
-veracious	a
-veracity	n
-veranda	n
-verandah	n
-verb	n
-verbal	n,a,na
-verbatim	d
-verbena	n
-verbiage	n
-verbose	a
-verbosity	n
-verdant	a,na
-Verde	pc
-Verdi	pc
-verdict	n
-verdure	n,ed
-verge	n,v,er
-veridic	n
-verify	v,er,ion
-verisimilitude	n
-veritable	a
-verity	n
-Verlag	pc
-vermeil	n,a
-vermicelli	pc
-vermicide	n
-vermiculite	n
-vermilion	n
-vermin	n
-verminous	a
-Vermont	pc
-vermouth	n
-Vern	n
-Verna	pc
-vernacular	n,a,na
-vernal	a,na
-Verne	pc
-vernier	n,a
-Vernon	n
-Verona	pc
-Veronica	pc
-versa	d,nopref
-Versailles	pc
-versant	a
-versatile	a
-verse	n,v,er
-versify	v,er,ion
-version	n,na,va,in
-verso	n
-verst	n
-versus	d
-vertebra	n,nopref
-vertebrae	pc
-vertebral	n,a
-vertebrate	n,in
-vertex	n
-vertical	n,a
-vertices	d
-vertiginous	a
-vertigo	pc
-vertigoes	d
-verve	n
-very	a
-vesicle	n
-vesicular	a
-vesper	n
-vessel	n
-vest	n,v,na,va
-vestal	n,a
-vestibular	a
-vestibule	n,ed
-vestige	n
-vestigial	a
-vestry	n,man
-vet	n,v,va,ms
-vetch	n
-veteran	n
-veterinarian	n
-veterinary	n,a
-veto	n,v,er
-vetoes	d
-vex	v
-vexation	n
-vexatious	a
-VHF	pc,nopref
-VHS	d
-vi	d
-via	d
-viable	a
-viaduct	n
-vial	n,nopref
-viand	n
-vibrant	a,na
-vibraphone	n,na
-vibrate	v,ion
-vibrato	n
-viburnum	n
-Vic	pc
-vicar	n
-vicarage	n
-vicarious	a
-vice	n,vi
-viceregal	a
-viceroy	n
-Vichy	pc
-vichyssoise	n
-vicinal	a
-vicinity	n
-vicious	a
-vicissitude	n
-Vicki	n
-Vickie	n
-Vicksburg	pc
-Vicky	pc
-victim	n,na
-victor	n
-Victoria	pc
-Victorian	n,a
-victorious	a
-victory	n
-vicuna	n
-Vida	pc
-vide	d,nopref
-video	n,a
-videoconference	n,v
-videotape	n,v
-vidicon	n
-vie	v,er
-Vienna	pc
-Viennese	pc
-Vientiane	pc
-Viet	pc
-Vietnam	pc
-Vietnamese	a
-view	n,v,er,na,va,y
-viewpoint	n
-vigil	n
-vigilant	a
-vigilante	n
-vigilantism	n
-vigintillion	n
-vignette	n,v,er
-vignetting	d
-vigorous	a
-vii	d,nopref
-viii	d,nopref
-Viking	n
-vile	a,comp
-vilify	v,er,ion
-villa	n
-village	n,er
-villain	n
-villainous	a
-villainy	n
-villein	n
-vim	n
-Vincent	n
-vincible	a,in
-vinculum	n
-vindicate	v,ion
-vindictive	a
-vine	n,v,y
-vinegar	n,y
-vineyard	n,na
-viniculture	n
-vinous	a
-Vinson	n
-vintage	n,a,er
-vintner	n
-vinyl	n
-viol	n,va
-viola	n
-violate	n,v,a,ion
-violent	a
-violet	n
-violin	n,na
-violist	n
-VIP	n,nopref
-viper	n
-virago	n
-viral	a
-vireo	n
-Virgil	pc
-virgin	n,a
-virginal	n,a
-Virginia	pc
-Virginian	n
-Virgo	n
-virgule	n
-virile	a,na
-virology	n,na
-virtual	a,na
-virtue	n
-virtuosi	d
-virtuosity	n
-virtuoso	n
-virtuous	a
-virulent	a,na
-virus	n
-vis	n
-visa	n,v,nopref
-visage	n,ed
-viscera	pc
-visceral	a
-viscid	a,in
-viscoelastic	a
-viscometer	n
-viscosimeter	n
-viscosity	n
-viscount	n
-viscous	a
-Vishnu	pc
-visible	a,va,in
-Visigoth	n
-Visigothic	a
-vision	n,v,na
-visionary	n,a
-visit	n,v,va
-visitation	n,na
-visitor	n
-visor	n,ed,na
-vista	n
-visual	n,a,na
-vita	n,nopref
-vitae	pc
-vital	n,a,na
-vitamin	n,na
-vitiate	v,ion
-viticulture	n,na
-Vito	pc
-vitreous	a
-vitrify	v,ion
-vitriol	n,v
-vitriolic	a
-vitro	d
-vituperate	v,ion
-viva	d,nopref
-vivace	d
-vivacious	a
-vivacity	n
-Vivaldi	pc
-Vivian	pc
-vivid	a
-vivify	v,er,ion
-viviparous	a
-vivisect	v,ion
-vivo	d
-vixen	n
-viz.	d,nopref
-vizier	n
-Vladimir	pc
-Vladivostok	pc
-vocable	n
-vocabulary	n
-vocal	n,a,na
-vocalic	n,a
-vocate	v,ion,in
-vociferate	v,ion
-vociferous	a
-vocoder	n
-vodka	n
-Vogel	n
-vogue	n
-voguish	a
-voice	n,v,na
-voiceband	n
-void	n,v,a,er,va
-volatile	n,a,na
-volcanic	n,a
-volcanism	n
-volcano	n
-Volga	pc
-volition	n,na,va
-Volkswagen	n
-volley	n,v,er
-volleyball	n
-volocanology	n
-Volstead	pc
-volt	n,va
-Volta	pc
-voltage	n
-voltaic	a
-Voltaire	pc
-Volterra	pc
-voltmeter	n
-voluble	a,va
-volume	n,v
-volumetric	n,a
-voluminous	a
-voluntarism	n
-voluntary	n,a,na,in
-volunteer	n,v,a
-voluptuary	n,a
-voluptuous	a
-volute	n,ed,a,ion,in
-Volvo	n
-vomit	n,v,er
-von	d
-voodoo	n,v,a,na
-voracious	a
-voracity	n
-vortex	n
-vortices	d
-vorticity	n
-Voss	n
-votary	n
-vote	n,v,er
-votive	a
-vouch	n,v,er
-vouchsafe	v,va
-Vought	n
-vow	n,v,er,nopref
-vowel	n,na
-voyage	n,v,er
-voyageur	n
-voyeur	n,na
-V.P.	d,nopref
-VP	n,nopref
-Vreeland	n
-vs	d
-v's	d,nopref
-vs.	d,nopref
-VT	pc,nopref
-Vulcan	pc
-vulgar	a,na
-vulgarian	n
-vulgate	n
-vulnerable	a,va,in
-vulpine	a
-vulture	n
-vulva	n
-VW	n,nopref
-vying	a
-WA	pc,nopref
-Waals	pc
-Wabash	pc
-WAC	pc,nopref
-wacky	a,comp
-Waco	pc
-wad	n,v,er,nopref,ms,y
-waddle	n,v,er
-wade	n,v,va
-wader	n
-wadi	n
-Wadsworth	pc
-wafer	n,v
-waffle	n,v,er
-waft	n,v,er
-wag	n,v,er,ms
-wage	n,v,nopref
-wager	n,v,er
-waggish	a
-waggle	n,v
-Wagner	n
-Wagnerian	n
-wagoneer	n
-wagonload	n
-wah	d
-Wahl	n
-wahoo	n
-waif	n
-wail	n,v,er,na
-wainscot	n,v
-Wainwright	n
-waist	n,er
-waistband	n
-waistcoat	n,ed
-waistline	n
-wait	n,v,er,nopref
-Waite	n
-waitress	n
-waive	v,er
-wake	n,v,er,na
-Wakefield	pc
-waken	v,er
-wakeup	d
-Walcott	n
-Walden	n
-Waldo	pc
-Waldorf	pc
-Waldron	n
-wale	n,v,er,nopref
-Walgreen	pc
-walk	n,v,er
-walkie	n
-walkout	n
-walkover	n
-walkway	n
-wall	n,v
-wallaby	n
-Wallace	n
-wallboard	n
-Waller	n
-wallet	n
-walleye	n,ed
-Wallis	n
-wallop	n,v,er
-wallow	n,v,er
-wallpaper	n,v
-walnut	n
-Walpole	n
-walrus	n
-Walsh	n
-Walt	pc
-Walter	pc
-Walters	n
-Waltham	pc
-Walton	n
-waltz	n,v,er
-waltzing	d
-wampum	n
-wan	v,a,comp,ms
-wand	n
-Wanda	pc
-wander	n,v,er
-wanderlust	n
-wane	n,v,y
-Wang	n
-wangle	v,er
-want	n,v
-wanton	n,v,a,er
-wapiti	n
-Wappinger	pc
-war	n,v,na,ms
-warble	n,v,er
-ward	n,v,a,er,va
-warden	n
-wardrobe	n
-wardroom	n
-ware	n,nopref,y
-warehouse	n,v,man
-warfare	n
-warfarin	n
-warhead	n
-warhorse	n
-Waring	n
-warlock	n
-warlord	n
-warm	v,a,comp
-warmhearted	a
-warmish	a
-warmonger	n,vi
-warmth	n
-warmup	n
-warn	v,er
-warp	n,v,er,nopref
-warpath	n
-warplane	n
-warrant	n,v,er,va
-warranty	n
-warren	n,er
-warrior	n
-Warsaw	pc
-wart	n,ed,y
-warthog	n
-wartime	n
-Warwick	n
-was	d,nopref
-wash	n,v,va,man,y
-washbasin	n
-washboard	n
-washbowl	n
-Washburn	n
-washcloth	n
-washer	n,man
-Washington	n
-washout	n
-washrag	n
-washroom	n
-washstand	n
-washtub	n
-wasn't	d
-wasp	n
-waspish	a
-wassail	n,v,er
-Wasserman	n
-wast	d,nopref
-wastage	n
-waste	n,v,a,er,na
-wastebasket	n
-wasteland	n
-wastepaper	n
-wastewater	n
-wasting	a
-wastrel	n
-watch	n,v,er,na,va,man,ms
-watchband	n
-watchcase	n
-watchdog	n,v
-watchtower	n
-watchword	n
-water	n,v,er,man
-waterbed	n
-waterborne	a
-Waterbury	pc
-watercourse	n
-watercraft	n
-watercress	n
-waterfall	n
-waterfowl	n
-waterfront	n
-Watergate	pc
-Waterhouse	pc
-waterlily	n
-waterline	n
-waterlog	v,ms
-waterloo	n
-watermark	n,v
-watermelon	n
-waterproof	n,v,a,er
-watershed	n
-waterside	n,a
-waterspout	n
-watertight	a
-Watertown	pc
-waterway	n
-waterworks	n
-watery	a,comp
-Watkins	n
-Watson	n
-watt	n,er
-wattage	n
-wattle	n,v
-wattmeter	n
-wave	n,v,na,y
-waveform	n
-wavefront	n
-waveguide	n
-wavelength	n
-wavelet	n
-wavenumber	n
-waver	n,v,er
-wax	n,v,er,na,y
-waxen	a
-waxwing	n
-waxwork	n
-way	n,na
-waybill	n
-wayfare	vi,er
-waylaid	d
-waylay	vi
-Wayne	n
-wayside	n,a
-wayward	n,a
-we	d,nopref
-weak	a,comp
-weaken	v,er
-weakish	a
-weakling	n,a
-weal	n
-wealth	n,y
-wean	v,er
-weapon	n,v
-weaponry	n
-wear	n,vi,er,va
-wearied	d
-wearisome	a
-weary	n,v,a,comp,na
-weather	n,v,a,va,man
-weatherbeaten	a
-weathercock	n
-weatherglass	n
-weatherproof	v,a
-weatherstrip	v,ms
-weathertight	a
-weave	n,v,er,in
-web	n,v,na,ms,y
-Webb	n
-weber	n
-Webster	n
-WECo	pc
-we'd	d
-wed	v,er,ms
-wedge	n,v
-wedlock	n
-Wednesday	n
-wee	d,nopref
-weed	n,v,er,na,y
-week	n,a
-weekday	n
-weekend	n,v,er
-weeklong	d
-ween	v,y
-weep	n,vi,er,y
-weevil	n,ed,a
-Wehr	n
-Wei	n
-Weierstrass	pc
-weigh	n,v,er,va
-weight	n,v,na,y
-Weinberg	n,er
-Weinstein	n
-weir	n
-weird	n,a,comp
-Weiss	n
-Welch	n
-welcome	n,v,a,er
-weld	n,v,er,va
-Weldon	pc
-welfare	n,a,na
-welkin	n
-we'll	d
-well	n,a
-wellbeing	d
-wellborn	d
-Weller	n
-Welles	n
-Wellesley	pc
-wellhead	n
-Wellington	n,nopref
-wellingtons	pc
-wellspring	n
-welsh	v,er
-welt	n,v,er
-wen	n
-wench	n,v,er
-wend	v
-Wendell	n
-Wendy	pc
-went	d
-wept	d
-we're	d
-were	d
-weren't	d
-werewolf	pc
-werewolves	d
-Werner	n
-wert	d
-Werther	pc
-Wesley	n
-Wesleyan	n,a
-west	n,vi,a,er
-westbound	d
-Westchester	pc
-westerly	n
-western	n,a,comp,na
-westernmost	d
-Westfield	pc
-Westinghouse	pc
-Westminster	pc
-westmost	d
-Weston	n
-westward	n
-wet	n,v,a,comp,va,ms
-wetback	n
-wetland	n
-we've	d
-Weyerhauser	pc
-whack	n,v,er,y
-whale	n,v,er
-whaleboat	n
-whalebone	n
-Whalen	n
-wham	n,v,ms
-whammy	n
-wharf	n,v
-wharfinger	n
-Wharton	n
-wharves	d
-what	pc
-what'd	d
-whatever	d
-Whatley	n
-whatnot	n
-what're	d
-whatsoever	d
-wheat	n
-Wheaties	n
-Wheatstone	pc
-whee	d,nopref
-wheedle	v,er
-wheel	n,v,er,man
-wheelbarrow	n,v
-wheelbase	n
-wheelchair	n
-wheelhorse	n
-wheelhouse	n
-wheelwright	n
-wheeze	n,v,er,y
-Whelan	n
-whelk	n
-Wheller	n
-whelm	v
-whelp	n,v
-when	d
-whence	d
-whenever	d
-whensoever	d
-where	n
-whereabout	n
-whereas	n
-whereat	d
-whereby	d
-where'd	d
-wherefore	n
-wherefrom	d
-wherein	d
-whereof	d
-whereon	d
-where're	d
-wheresoever	d
-whereunto	d
-whereupon	d
-wherever	d
-wherewith	d
-wherewithal	n
-wherry	n
-whet	n,v,er,ms
-whether	d
-whetstone	n
-whey	n
-wheyey	a
-which	d
-whichever	d
-whiff	n,v
-whiffle	v,er
-whiffletree	n
-whig	n
-while	n,v,nopref
-whilom	d
-whim	n
-whimper	n,v
-whimsical	a
-whimsy	n,v,a,comp
-whine	n,v,er,y
-whinny	n,v
-whip	n,v,er,na,ms
-whipcord	n
-whiplash	n
-whippersnapper	n
-whippet	n
-Whipple	n
-whippoorwill	n
-whipsaw	n,v
-whir	n,v,a,ms
-whirl	n,v,er
-whirligig	n
-whirlpool	n
-whirlwind	n
-whirlybird	n
-whirr	v
-whish	n,v
-whisk	n,v,er
-whiskery	a,comp
-whisper	n,v,er,y
-whist	n
-whistle	n,v,er
-whistleable	a
-whistleblow	vi,er
-whit	n
-Whitaker	n
-Whitcomb	n
-white	n,v,a,comp
-whitecap	n
-whiteface	n
-whitefish	n
-Whitehall	pc
-whitehead	n
-Whitehorse	pc
-whiten	v,er
-whiteout	n
-whitetail	n
-whitewall	n
-whitewash	n,v,er
-whitey	n
-whither	d
-whitish	a
-Whitlock	n
-Whitman	n
-Whitney	n
-Whittaker	n
-Whittier	n
-whittle	n,v,er
-whiz	n,v,er,ms,y
-whizbang	n
-who	pc
-whoa	d
-who'd	d
-whodunit	n
-whoever	d
-whole	n,a
-wholehearted	a
-wholesale	n,v,er
-wholesome	a,comp
-who'll	d
-wholly	d
-whom	d
-whomever	d
-whomp	n,v
-whomsoever	d
-whoop	n,v,er
-whoopee	n
-whoosh	n,v
-whop	n,v,er,ms
-whore	n,v
-whorehouse	n
-whorl	n,ed
-whose	d
-whosoever	d
-who've	d
-whup	v,ms
-why	d
-WI	pc,nopref
-Wichita	pc
-wick	n,v,er
-wickerwork	n
-wicket	n
-wide	a,comp
-widen	v,er
-widespread	d
-widgeon	n
-widget	n
-widish	a
-widow	n,v,er
-width	n
-widthwise	d
-wield	n,v,er,nopref,y
-wiener	n
-Wier	n
-wife	n,a
-wig	n,v,nopref,ms
-Wiggins	n
-wiggle	n,v,er
-wiggly	a,comp
-wigwag	n,v
-wigwam	n
-Wilbert	n
-Wilbur	n
-Wilcox	n
-wild	n,v,a,comp
-wildcat	n,v,er,ms
-wildebeest	n
-wilderment	d
-wildfire	n
-wildfowl	n,vi,er
-wildlife	n
-wildwood	n
-wile	n,nopref
-Wiley	n
-Wilfred	pc
-Wilhelm	pc
-Wilhelmina	pc
-Wilkerson	n
-Wilkes	n
-Wilkins	n
-Wilkinson	n
-Willa	pc
-Willard	n
-William	pc
-Williams	n
-Williamsburg	pc
-Williamson	n
-Willie	pc
-Willis	n
-Willoughby	n
-willow	n,v,er,na,y
-willpower	n
-willy	n
-Wilma	pc
-Wilmington	pc
-Wilshire	pc
-Wilson	n
-wilt	n,v
-wily	a,comp
-wimp	n,y
-win	n,vi,er,va,ms
-wince	n,v
-winch	n,v,er
-Winchester	pc
-wind	n,v,er,y
-windage	n
-windbag	n
-windblown	a
-windbreak	n,er
-windburn	n,ed
-windfall	n
-windjammer	n
-windlass	n,v
-windmill	n,v
-window	n,v
-windowpane	n
-windowsill	n
-windpipe	n
-windproof	a
-windrow	n,v
-windscreen	n
-windshield	n
-Windsor	n
-windstorm	n
-windsurf	n,v,er
-windswept	a
-windup	n,a
-windward	n,a
-wine	n,v,nopref,y
-wineglass	n
-winegrower	n
-winemaster	n
-winepress	n
-winery	n
-wineshop	n
-wineskin	n
-Winfield	n
-wing	n,v,er,na,ion,man,y
-wingback	n
-winglet	n
-wingspan	n
-wingspread	n
-wingtip	n
-Winifred	pc
-wink	n,v,er
-winkle	n,v
-Winnetka	pc
-Winnie	pc
-Winnipeg	pc
-winnow	n,v,er
-wino	n
-Winslow	n
-winsome	a
-Winston	n
-winter	n,v,a,er,na,y
-wintergreen	n
-wintertime	n
-wintery	a,comp
-Winthrop	n
-wintry	a,comp
-winy	n,v,nopref,y
-wipe	n,v,er
-wirable	a
-wire	n,v,er,na,man,y
-wirehair	n,ed
-wiretap	n,v,er,ms
-Wisconsin	pc
-wisdom	n
-wise	n,v,a,comp
-wiseacre	n
-wisecrack	n,v,er
-wisenheimer	n
-wish	n,v,er,na,y
-wishbone	n
-wisp	n,v,y
-wisteria	n
-wistful	a
-wit	n,v,ms,y
-witch	n,v,er
-witchcraft	n
-with	nopref,y
-withal	d
-withdraw	vi
-withdrawal	n
-withdrawn	a
-withdrew	d
-withe	n,er
-withheld	d
-withhold	v,er
-within	d,nopref
-without	n
-withstand	vi
-withstood	d
-witness	n,v
-Witt	n
-witticism	n
-wive	v
-wizard	n,a
-wizardry	n
-wizen	v
-WNW	d,nopref
-woad	n
-wobble	n,v,a,er
-woe	n,na
-woebegone	a
-wok	n,nopref
-woke	d
-Wolcott	n
-wolf	n,v,er,na
-Wolfe	n
-Wolff	n
-Wolfgang	pc
-wolfhound	n
-wolfish	a
-wolverine	n
-wolves	d
-woman	pc,a,na,adv
-womanish	a
-womankind	n
-womb	n,ed
-wombat	n
-women	pc
-womenfolk	n
-won	n,nopref
-wonder	n,v,er,na,va
-wonderland	n
-wonderwork	n
-wondrous	a
-Wong	n
-wonk	n,y
-won't	d
-wont	n,v
-woo	v,a,er
-wood	n,v,man,y
-Woodard	pc
-woodbine	n
-Woodbury	n
-woodcarver	n
-woodchopper	n
-woodchuck	n
-woodcock	n
-woodcraft	n
-woodcut	n,vi,er,ms
-wooden	a,comp
-woodenhead	n
-woodgrain	n
-woodhen	n
-woodland	n,a,er
-Woodlawn	pc
-woodlot	n
-woodpecker	n
-woodpile	n
-Woodrow	pc
-woodruff	n
-woods	man
-woodshed	n
-woodside	n
-Woodstock	n
-woodsy	a,comp
-woodturner	n
-Woodward	n
-woodwind	n,a
-woodwork	n,vi,er
-woof	n,er
-wool	n,v,a,er
-woolgather	vi,er
-Woolworth	pc
-Wooster	pc
-woozy	a,comp
-Worcester	pc
-word	n,v,y
-wordmonger	n
-wordplay	n
-wordsmith	n,vi
-Wordsworth	pc
-wore	d
-work	n,v,er,man
-workable	a
-workaday	a
-workaholic	n
-workbag	n
-workbasket	n
-workbench	n
-workbook	n
-workday	n,a
-workforce	n
-workhorse	n
-workhouse	n
-working	n,man
-workload	n
-workman	n,a,na
-workout	n
-workpiece	n
-workplace	n
-workroom	n
-worksheet	n
-workshop	n
-workspace	n
-workstation	n
-worktable	n
-workweek	n
-world	n,a
-worldwide	a
-worm	n,v,er,na,y
-wormhole	n
-wormwood	n
-worn	d
-worrisome	a
-worry	n,v,er
-worse	pc
-worsen	v
-worst	n,v
-worth	n,v,na
-Worthington	n
-worthwhile	a
-worthy	n,a,comp
-Wotan	pc
-would	comp
-wouldn't	d
-wouldst	d
-wound	n,v
-wove	d
-woven	d
-wow	n,v
-WPA	pc,nopref
-wrack	n,v,na
-wraith	n
-wrangle	n,v,er
-wrap	n,v,er,ms
-wraparound	n
-wrapup	d
-wrasse	n
-wrath	n,na,y
-wreak	v,er,na
-wreath	n,y
-wreathe	v
-wreck	n,v,er
-wreckage	n
-wren	n
-wrench	n,v
-wrest	n,v,er
-wrestle	n,v,er
-wretch	n,ed
-wriggle	n,v,er
-wriggly	a,comp
-wright	n
-Wrigley	n
-wring	n,vi,er
-wrinkle	n,v
-wrinkly	a,comp
-wrist	n
-wristband	n
-wristlet	n
-wristwatch	n
-writ	n
-write	n,vi,er,va
-writeup	n
-writhe	n,v
-writhing	d
-written	d
-wrong	n,v,a,er,na
-wrongdoer	n
-wrongdoing	n
-wrongheaded	a
-Wronskian	pc
-wrote	d
-wrought	d
-wrung	d
-wry	v,a,comp
-w's	d,nopref
-WSW	d,nopref
-Wu	n
-Wuhan	pc
-wunderkind	n,er
-wurst	n
-WV	pc,nopref
-WWI	pc,nopref
-WWII	pc,nopref
-WY	pc,nopref
-Wyandotte	pc
-Wyatt	n
-Wyeth	n
-Wylie	n
-Wyman	n
-Wyner	n
-Wyoming	pc
-Xavier	pc
-x'd	d,nopref
-xebec	n
-xenolith	n
-xenon	n
-xenophobe	n,na
-xenophobic	a
-xeric	a
-xeriscape	n,v
-xerography	n
-Xerox	n,v
-Xerxes	pc
-xi	n,nopref
-Xiao	n
-x'ing	d
-Xmas	n
-Xosa	n
-x's	d,nopref
-xylem	n
-xylene	n
-xylophone	n,na
-yacht	n,v,er
-yachts	man
-yack	v,er
-yackety	d
-yagi	n
-yah	d
-yahoo	n
-Yahweh	pc
-yak	n,v,er,ms
-Yakima	n
-Yale	pc
-Yalta	pc
-yam	n
-Yamaha	pc
-yammer	v,er
-yang	n
-Yangtze	pc
-yank	n,v
-Yankee	n
-Yankton	pc
-Yaounde	pc
-yap	n
-yapping	d
-Yaqui	pc
-yard	n,v,man
-yardage	n
-yardarm	n
-yardbird	n
-yardmaster	n
-yardstick	n
-Yarmouth	pc
-yarmulke	n
-yarn	n,v,er
-yarrow	n
-Yates	n
-yaw	n,v
-yawl	n
-yawn	n,v,er
-yawp	n,v,er
-yclept	d
-ye	d,nopref
-yea	n,nopref
-Yeager	n
-yeah	d
-year	n,a
-yearbook	n
-yearling	n
-yearn	v,er
-yeast	n,v,y
-Yeats	pc
-yegg	n
-yell	n,v,er
-yellow	n,v,a,comp
-yellowish	a
-Yellowknife	pc
-yellowlegs	n
-Yellowstone	pc
-yelp	n,v,er
-Yemen	pc
-yen	n
-yeoman	pc,a,na
-yeomanry	n
-Yerkes	pc
-yes	n,nopref
-yeshiva	n
-yesterday	n
-yesteryear	n
-yet	d,nopref
-yeti	n
-yew	n
-Yiddish	a
-yield	n,v,er
-yin	n
-yip	n
-yippee	d
-yipping	d
-YMCA	n,nopref
-Yoder	n
-yoga	n
-yogi	n
-yogurt	n
-yoke	n,v
-yokel	n
-Yokohama	pc
-Yokuts	pc
-Yolanda	n
-yolk	n,ed,y
-yon	d
-yond	er
-Yonkers	pc
-yore	n
-York	n,na
-Yorker	n
-Yorktown	pc
-Yosemite	pc
-Yost	n
-you	d
-you'd	d
-you'll	d
-young	n,a,comp
-youngish	a
-youngster	n
-Youngstown	pc
-your	d
-you're	d
-yours	d
-yourself	d
-yourselves	d
-youth	n,na
-you've	d
-yowl	n,v,er
-Ypsilanti	pc
-y's	d
-ytterbium	n
-yttrium	n
-Yucatan	pc
-yucca	n
-Yugoslav	pc
-Yugoslavia	pc
-yuh	d
-Yuki	pc
-Yukon	pc
-yule	n
-yuletide	n
-yummy	a,comp
-yuppie	n
-Yves	pc
-Yvette	pc
-Yvonne	pc
-YWCA	n,nopref
-zabaglione	n
-Zachary	pc
-zag	n,v,ms
-zaibatsu	pc
-Zaire	pc
-Zambia	pc
-Zan	pc
-zany	n,a,comp,na
-Zanzibar	pc
-zap	v,ms
-zarzuela	n
-zeal	n
-Zealand	pc
-Zealander	n
-zealot	n
-zealotry	n
-zealous	a
-zebra	n
-zebu	n
-Zechariah	pc,nopref
-zed	n
-Zeiss	pc
-zeitgeist	n
-Zelda	pc
-Zellerbach	pc
-Zen	pc
-zenith	n
-Zeno	pc
-zeolite	n,na
-Zephaniah	pc,nopref
-zephyr	n
-zeppelin	n
-zero	n,v
-zeroth	d
-zest	n,na,y
-zeta	n
-Zeus	pc
-Ziegler	n
-zig	n,v,ms
-ziggurat	n
-zigzag	n,v,er,ms
-zilch	d
-zillion	n
-Zimbabwe	pc
-Zimmerman	n
-zinc	n,v
-zing	n,v,er,y
-zinnia	n
-Zion	n,na
-zip	n,v,er,ms,y
-zircon	n
-zirconium	n
-zither	n,na
-zloty	pc
-zlotys	d
-zodiac	n
-zodiacal	a
-Zoe	pc
-Zomba	pc
-zombie	n,a
-zonal	a
-zonate	ed,a,ion
-zone	n,v,er
-zonk	v,er
-zoo	n
-zoogeography	n,na
-zoology	n,na
-zoom	n,v
-zoomorph	n,na
-zoomorphic	a
-zoophyte	n
-Zoroaster	pc
-zounds	d
-z's	d,nopref
-zucchini	n
-Zulu	n
-Zurich	pc
-zwieback	n
-zygote	n,na
-zygotic	a
-zymurgy	n

+ 0 - 840
sys/src/cmd/spell/local

@@ -1,840 +0,0 @@
-3B	d
-3B2	d
-3B20	d
-5ESS	n,nopref
-AAAI	pc,nopref
-abend	n
-Abhaya	pc,nopref
-Abramowitz	n,nopref
-abs	d
-Ackermann	pc
-ACR	pc,nopref
-Acta	pc,nopref
-ACU	n,nopref
-ADAPSO	pc,nopref
-ADP	pc,nopref
-ADPCM	pc,nopref
-Afek	n,nopref
-AFIPS	pc,nopref
-Agrawal	n,nopref
-Aho	n,nopref
-AI	pc,nopref
-AIP	pc,nopref
-Airey	n,nopref
-Alcatel	pc,nopref
-Aleta	pc,nopref
-algebraist	n
-Allan	pc,nopref
-Alliant	pc,nopref
-Alperin	n,nopref
-Alphard	pc,nopref
-Altran	pc,nopref
-ALU	n,nopref
-Amboy	pc,nopref
-Amdahl	pc,nopref
-Ameritech	pc,nopref
-amp	n
-AMS	pc,nopref
-Anantha	pc,nopref
-Andrej	pc,nopref
-APL	pc,nopref
-Appl	d,nopref
-approx	d
-APS	pc,nopref
-Aranha	pc,nopref
-Arbib	n,nopref
-Ardis	pc,nopref
-Arno	pc,nopref
-Arun	pc,nopref
-Arya	n,nopref
-ASCII	d,nopref
-ASR	pc,nopref
-Assoc	d,nopref
-Asthana	pc,nopref
-AT&TTJ	pc,nopref
-Atal	n,nopref
-Audix	pc,nopref
-autodecrement	v,er
-autoincrement	v,er
-axisymmetric	a
-Babbage	n,nopref
-Bachenko	n,nopref
-backslash	n
-backsolve	v
-backtrace	n
-Backus	pc,nopref
-BAL	pc,nopref
-Banach	pc,nopref
-bandpass	a
-bandstop	a
-barycenter	n
-barycentric	a
-baseband	n,a
-Baudot	pc,nopref
-Bayes	pc,nopref
-Bayesian	n,nopref
-BBN	pc,nopref
-BCD	pc,nopref
-BCPL	pc,nopref
-BCR	pc,nopref
-BCS	pc,nopref
-BDN	pc,nopref
-Becker	n,nopref
-Bedminster	pc,nopref
-Bellcore	pc,nopref
-Belleville	pc,nopref
-Bellovin	pc,nopref
-Benes	n,nopref
-Beranek	pc,nopref
-Berenbaum	n,nopref
-Berlekamp	n,nopref
-Bernardsville	pc,nopref
-Bethe	pc,nopref
-Beutnagel	pc,nopref
-Bezier	pc,nopref
-bijection	n
-Billington	pc,nopref
-Biometrica	pc,nopref
-Birkhoff	n,nopref
-Bischoff	n,nopref
-Bishnu	pc,nopref
-bisimulate	v,ion
-bitblt	n,v
-bitmap	n,ed,ms
-Bjarne	pc,nopref
-Blewett	n,nopref
-Blit	n,nopref
-BLN	pc,nopref
-BNF	pc,nopref
-Boie	n,nopref
-Boole	n,nopref
-Boonton	pc,nopref
-Borland	n,nopref
-Bourne	n,nopref
-bpi	n
-bps	n
-Brachman	n,nopref
-Branchburg	pc,nopref
-Brendzel	n,nopref
-Bridgewater	pc,nopref
-Brinch	pc,nopref
-broadband	a
-Broyden	n,nopref
-BSD	pc,nopref
-BSP	pc,nopref
-BSTJ	pc,nopref
-BTL	pc,nopref
-Buchsbaum	n,nopref
-Buntschuh	n,nopref
-Burstall	n,nopref
-CAI	pc,nopref
-Calderbank	n,nopref
-Camlet	n,nopref
-Canaday	n,nopref
-Cardelli	n,nopref
-Caryl	pc,nopref
-Caspers	n
-CCD	pc,nopref
-CCITT	pc,nopref
-CCS	pc,nopref
-cepstral	a
-cepstrum	n
-Chem	d,nopref
-Cheng	n,nopref
-Cheswick	n,nopref
-Cholesky	pc,nopref
-Chomsky	pc,nopref
-CICS	pc,nopref
-Clarkson	n,nopref
-cm	d
-CMOS	pc,nopref
-CMU	pc,nopref
-Cocke	pc,nopref
-Codasyl	pc,nopref
-Codd	pc,nopref
-codec	n
-codimension	n,na
-coinbox	n
-Coker	n,nopref
-Colbry	n,nopref
-Collyer	n,nopref
-Comm	d,nopref
-compand	n
-compandor	n
-Compuserv	pc,nopref
-Computerworld	pc,nopref
-COMSEC	pc,nopref
-Condon	n,nopref
-const	n
-Contel	pc,nopref
-coprocessor	n
-Coughran	n,nopref
-Courant	pc,nopref
-Courcoubetis	n,nopref
-courseware	n
-CPU	n,nopref
-Cravatts	n,nopref
-Cray	n,nopref
-CRC	pc,nopref
-CS	pc,nopref
-CSTR	n,nopref
-CTSS	pc,nopref
-cutover	n
-CWA	pc,nopref
-Cwikla	pc,nopref
-Cyber	pc,nopref
-cyclide	n
-DAG	n,nopref
-Dahbura	pc,nopref
-Dantzig	pc,nopref
-DASI	pc,nopref
-dataflow	a
-datagram	n
-Datakit	n,nopref
-Datamation	pc,nopref
-Dataphone	pc,nopref
-Dataspeed	pc,nopref
-dba	d,nopref
-DBTG	pc,nopref
-DDCMP	pc,nopref
-DDD	pc,nopref
-deaccess	v
-Deb	pc,nopref
-deBakker	pc
-Debasis	pc,nopref
-DeBoor	pc,nopref
-Denby	n,nopref
-Denning	n,nopref
-Denville	pc,nopref
-dequeue	v
-Derr	n,nopref
-descramble	v,er
-Desiato	n,nopref
-deskew	v
-Deutsch	pc,nopref
-Devanbu	pc,nopref
-Dewayne	pc,nopref
-DFA	pc,nopref
-DH	n,nopref
-Diablo	pc,nopref
-dialup	d
-Dijkstra	pc,nopref
-diskette	n
-DMA	pc,nopref
-DMTS	n,nopref
-Dolotta	n,nopref
-Dom	pc,nopref
-downline	n,v
-downlink	n
-download	v,er,va
-DPCM	pc,nopref
-DSP	n,nopref
-Dunellen	pc,nopref
-e.g	n,nopref
-Earley	n,nopref
-EBCDIC	pc,nopref
-ECC	n,nopref
-ECL	pc,nopref
-EDP	pc,nopref
-EE	n,nopref
-EECS	pc,nopref
-EIA	pc,nopref
-eigensystem	n
-Eindhoven	pc,nopref
-EISPACK	pc,nopref
-elementwise	d
-Elko	pc,nopref
-Emlin	pc,nopref
-endian	a
-executable	n
-EOF	n,nopref
-EOT	n,nopref
-Erdos	pc,nopref
-Erik	pc,nopref
-Ershov	pc,nopref
-Escher	pc,nopref
-Esperanza	pc,nopref
-ESS	pc,nopref
-ETH	pc,nopref
-Ethernet	n
-exp	d
-expr	d
-Fairleigh	pc,nopref
-Fanwood	pc,nopref
-Farey	pc,nopref
-FDDI	pc,nopref
-Feigenbaum	n,nopref
-Fernandez	n,nopref
-ferreed	n
-FFT	pc,nopref
-firmware	n
-Fishburn	n,nopref
-Flatto	n,nopref
-Flemington	pc,nopref
-Florham	d,nopref
-FOCS	d,nopref
-Fostik	n,nopref
-FPU	n
-Fredman	n,nopref
-Freeny	n,nopref
-Frobenius	pc,nopref
-FSM	n,nopref
-Fulkerson	n,nopref
-Galerkin	pc,nopref
-Garey	n,nopref
-Garwood	pc,nopref
-Gasparinetti	n,nopref
-GCD	n,nopref
-GCOS	pc,nopref
-Geffrard	n,nopref
-Gehani	n,nopref
-GEI	pc,nopref
-Geoff	n,nopref
-Gerardo	pc,nopref
-Geri	pc,nopref
-Gersho	n,nopref
-Ghitza	n,nopref
-Gimpel	n,nopref
-Giordano	n,nopref
-GIS	n,nopref
-Glick	n,nopref
-Golomb	pc,nopref
-Golub	pc,nopref
-Gonthier	n,nopref
-Gorin	n,nopref
-Grampp	n,nopref
-Greenwald	n,nopref
-Gries	pc,nopref
-Grosse	n,nopref
-GUI	n,nopref
-Guibas	pc,nopref
-Gunter	n,nopref
-Guttag	pc,nopref
-Hahne	pc,nopref
-Haight	n,nopref
-halfspace	n
-halfword	n
-hangup	n
-Hartmanis	pc,nopref
-heapsort	d
-Hearn	pc,nopref
-Helfman	n,nopref
-Helvetica	pc,nopref
-Henrici	pc,nopref
-Hessenberg	pc,nopref
-Hillsborough	pc,nopref
-Hindle	pc,nopref
-Hirschberg	pc,nopref
-HL	pc,nopref
-Hoare	pc,nopref
-Hobbit	n,nopref
-Holzmann	n,nopref
-Hopcroft	pc,nopref
-Hopfield	n,nopref
-HP	pc,nopref
-hr	n
-Hui	pc,nopref
-Hume	n,nopref
-Hunterdon	pc,nopref
-Hwang	pc,nopref
-hypertext	n
-Hz	pc,nopref
-i.e	n,nopref
-IC	n,nopref
-Ichbiah	pc,nopref
-ICL	pc,nopref
-IFIP	pc,nopref
-IH	pc,nopref
-IHP	pc,nopref
-IIT	pc,nopref
-IMS	pc,nopref
-IMSL	pc,nopref
-Informatica	pc,nopref
-INRIA	pc,nopref
-Inst	pc,nopref
-Intel	pc,nopref
-Intelsat	pc,nopref
-IP	d,nopref
-IPA	pc,nopref
-IPC	d,nopref
-IRCAM	pc,nopref
-Irvington	pc,nopref
-ISDN	pc,nopref
-ISN	pc,nopref
-ISO	pc,nopref
-IW	pc,nopref
-Jagadish	n,nopref
-Jayant	n,nopref
-JCL	pc,nopref
-Jelinski	n,nopref
-Jie	pc,nopref
-Jih	pc,nopref
-Jont	pc,nopref
-JPL	pc,nopref
-Juang	pc,nopref
-Juergen	pc,nopref
-Jukl	n,nopref
-Julesz	n,nopref
-junctor	n
-K&R	pc,nopref
-Kac	pc,nopref
-Kadota	n,nopref
-Kagi	n,nopref
-Kahan	pc,nopref
-Kahrs	n,nopref
-Kallman	n,nopref
-Kalmanek	n,nopref
-Kam	pc,nopref
-Kanakia	n,nopref
-Kapilow	n,nopref
-Karmarkar	pc,nopref
-Kathie	pc,nopref
-Kautz	n,nopref
-Kearns	pc
-Kearny	pc,nopref
-Kelleman	n,nopref
-Kenilworth	pc,nopref
-Kernighan	n,nopref
-Keutzer	n,nopref
-Keven	pc,nopref
-keystroke	n
-kg	d
-Killian	n,nopref
-Kinnelon	pc,nopref
-Kleene	pc,nopref
-Klinger	n,nopref
-kludge	pc,y
-kludgey	a
-Knuth	pc,nopref
-Kolmogorov	pc
-Korn	pc
-Kornfeld	n,nopref
-Kosaraju	pc,nopref
-Krishan	pc,nopref
-Krishnakumar	n,nopref
-Kroon	pc,nopref
-Kropfl	n,nopref
-Kruskal	n,nopref
-KSR	pc,nopref
-Kubli	pc,nopref
-Kuckreja	n,nopref
-Kuratowski	pc,nopref
-Kurshan	n,nopref
-KWIC	pc,nopref
-Lackawanna	pc,nopref
-Lagarias	n,nopref
-LALR	pc,nopref
-Lamport	pc,nopref
-Lampson	pc,nopref
-LAN	pc,nopref
-Landweber	pc,nopref
-Landwehr	pc,nopref
-Lapone	n,nopref
-laptop	n
-LATA	n,nopref
-LCD	n,nopref
-Ledgard	pc,nopref
-Lehmer	pc,nopref
-Lempel	pc,nopref
-Lesk	n,nopref
-libc	n
-libmach	n
-libmp	n
-libsec	n
-Liberman	n,nopref
-lightpen	n
-Lincroft	pc,nopref
-Linderman	n,nopref
-linewidth	n
-Linhart	n,nopref
-Linotron	pc,nopref
-linux	n,nopref
-Liskov	pc,nopref
-Litman	n,nopref
-livelock	n,ed
-Ljolje	pc,nopref
-Locanthi	n,nopref
-login	n
-logoff	d
-logon	n
-logout	d
-lookahead	d
-Lori	pc,nopref
-LPC	d,nopref
-LR	pc,nopref
-LU	pc,nopref
-Lubachevsky	n,nopref
-Luca	pc,nopref
-Lucasfilm	pc,nopref
-Luckham	pc,nopref
-lvalue	pc
-MacQueen	n,nopref
-macromodel	n,v
-MAG	pc,nopref
-Mahaney	n,nopref
-mainframe	n
-Mandelbrot	pc,nopref
-Manna	pc,nopref
-Maplewood	pc,nopref
-Marky	n,nopref
-Marotta	pc,nopref
-Marquardt	n,nopref
-Martinsville	pc,nopref
-Maryanne	pc,nopref
-matroid	n
-Matsushita	pc,nopref
-max	d
-Maxemchuk	n,nopref
-Mazo	n,nopref
-McDonough	n,nopref
-McGuinness	n,nopref
-MCI	pc,nopref
-McIlroy	n,nopref
-McKeeman	pc,nopref
-McKie	n,nopref
-McLellan	n,nopref
-Melchner	pc,nopref
-memoryless	a
-Mendham	pc,nopref
-Mergenthaler	pc,nopref
-meromorphic	a
-Mersenne	pc,nopref
-MERT	pc,nopref
-mg	d
-MH	pc,nopref
-MHCC	pc,nopref
-MHz	pc,nopref
-Mihalis	pc,nopref
-MII	n
-Millburn	pc,nopref
-Millington	pc,nopref
-Milne	pc,nopref
-min	ion
-Minkowski	pc,nopref
-MIPS	pc,nopref
-Mitch	pc,nopref
-Mitra	n,nopref
-mkfile	n
-ML	pc,nopref
-mm	d
-MMU	n,nopref
-mod	d
-Mohan	pc,nopref
-monoid	n
-Montville	pc,nopref
-MOS	pc,nopref
-Mosteller	pc,nopref
-MOVW	n
-MTBF	d,nopref
-MTS	n,nopref
-Multics	pc,nopref
-Murakami	pc,nopref
-Murrel	pc,nopref
-Naftali	pc,nopref
-Nakatani	n,nopref
-Nambi	pc,nopref
-nand	d
-Naperville	pc,nopref
-Narain	pc,nopref
-Narendra	pc,nopref
-NAS	pc,nopref
-Naur	pc,nopref
-Navier	pc,nopref
-Naylor	n,nopref
-NCC	pc,nopref
-NDFA	pc,nopref
-NEC	pc,nopref
-Neera	pc,nopref
-Netcong	pc,nopref
-Netravali	n,nopref
-newline	n
-NMOS	pc,nopref
-NOP	n
-NP	pc,nopref
-NPA	pc,nopref
-NPL	pc,nopref
-nroff	d
-ns	d
-nth	d
-NTSC	pc,nopref
-NTT	pc,nopref
-nullary	d
-Nutley	pc,nopref
-NYNEX	pc,nopref
-O'Gorman	pc,nopref
-OCLC	pc,nopref
-OCR	pc,nopref
-Odlyzko	n,nopref
-OEM	n,nopref
-Ogielski	n,nopref
-Oldwick	pc,nopref
-ONR	pc,nopref
-OOH	pc,nopref
-opcode	n
-OS	n,nopref
-OSI	pc,nopref
-Ossanna	n,nopref
-OTA	pc,nopref
-OTC	pc,nopref
-Pade	pc,nopref
-Padmanabhan	n,nopref
-PAMI	pc,nopref
-Panasonic	pc,nopref
-Paone	n,nopref
-Papadimitriou	pc,nopref
-Papathomas	n,nopref
-PARC	pc,nopref
-Parnas	pc,nopref
-Parseghian	n,nopref
-Parsippany	pc,nopref
-passband	n,a
-patchboard	n
-Pavlidis	n,nopref
-PBX	n,nopref
-PC	n,nopref
-PCM	pc,nopref
-PDE	n,nopref
-PDP	pc,nopref
-PDP11	n,nopref
-Peapack	pc,nopref
-Penzias	n,nopref
-Pequannock	pc,nopref
-perceptron	n
-Perlis	pc,nopref
-Petajan	n,nopref
-phreak	n
-PHY	n
-Phys	pc,nopref
-Pierrehumbert	n,nopref
-Pinson	n,nopref
-Pippenger	pc,nopref
-Pirz	n,nopref
-PLA	n,nopref
-Plata	pc,nopref
-Plauger	n,nopref
-Plotnick	n,nopref
-PMOS	pc,nopref
-Pollak	n,nopref
-Polya	pc,nopref
-polyadic	a
-POPL	pc,nopref
-Posix	pc
-PostScript	pc,nopref
-pragma	n
-Prathima	pc,nopref
-Pravin	n,nopref
-Pregibon	n,nopref
-Prem	pc,nopref
-prenex	a
-Presotto	n,nopref
-Proc	pc,nopref
-Pruzansky	pc,nopref
-pushdown	n
-Puttress	n,nopref
-PWB	pc,nopref
-PY	pc,nopref
-QR	pc,nopref
-Quackenbush	n,nopref
-quadruplex	v
-quadtree	n
-quaternion	n
-quicksort	n,v
-Quinlan	n,nopref
-qwerty	d
-Rabin	n,nopref
-Rabiner	n,nopref
-Radner	n,nopref
-Rahway	pc,nopref
-Rakesh	pc,nopref
-Ramakrishnan	n,nopref
-Randell	n,nopref
-Ratfor	pc,nopref
-Ravi	pc,nopref
-Readington	pc,nopref
-Redbank	n,nopref
-Reinsch	n,nopref
-Restrick	n,nopref
-Rev	pc,nopref
-RGB	d,nopref
-Ricany	n,nopref
-RISC	pc,nopref
-Riverdale	pc,nopref
-Rivest	pc,nopref
-rms	d
-Rochkind	pc,nopref
-roff	v
-ROM	n,nopref
-Romayne	pc,nopref
-Roome	n,nopref
-Rooth	n,nopref
-Roselle	pc,nopref
-Roseville	pc,nopref
-Rothkopf	n,nopref
-Roxbury	pc,nopref
-RSA	pc,nopref
-Rudd	pc,nopref
-Ruedisueli	n,nopref
-runtime	n
-rvalue	n
-Sabnani	n,nopref
-saddlepoint	n
-Safranek	n,nopref
-Salton	pc,nopref
-Saltzer	pc,nopref
-Samelson	pc,nopref
-Sammet	pc,nopref
-Sande	pc,nopref
-Santen	n,nopref
-Schaeffer	pc,nopref
-Schell	n,nopref
-Schilling	n,nopref
-Schroeter	n,nopref
-Schryer	n,nopref
-Schuchard	n,nopref
-SCR	pc,nopref
-Secaucus	pc,nopref
-Sedgwick	pc,nopref
-Seery	n,nopref
-semiaxes	d
-semiaxis	d
-Seshadri	n,nopref
-Sethi	n,nopref
-SF	pc,nopref
-SGI	n,nopref
-Shamos	pc,nopref
-Shen	pc,nopref
-Shepp	n,nopref
-Shieh	n,nopref
-Shoham	pc,nopref
-Shopiro	n,nopref
-Shor	n,nopref
-Shoup	n,nopref
-Shugard	n,nopref
-Shumard	n,nopref
-SIGACT	pc,nopref
-SIGMOD	pc,nopref
-SIGNUM	pc,nopref
-SIGPLAN	pc,nopref
-SIGSAM	pc,nopref
-simplices	d
-Simula	pc,nopref
-Sinden	n,nopref
-Sitar	n,nopref
-Skokie	pc,nopref
-Sleator	pc,nopref
-Slepian	n,nopref
-Snobol	pc,nopref
-SoC	n,nopref
-Softech	pc,nopref
-Sondhi	n,nopref
-Speakerphone	pc,nopref
-spreadsheet	n
-Sproat	n,nopref
-SQL	pc,nopref
-sqrt	n
-SSB	pc,nopref
-STA	n,nopref
-Stegun	pc,nopref
-Stockmeyer	pc,nopref
-Stonebraker	pc,nopref
-stopband	n
-Strachey	pc,nopref
-Stroustrup	n,nopref
-Sundberg	pc,nopref
-surjection	n
-sysgen	n
-Szurkowski	n,nopref
-Szymanski	n,nopref
-TA	n,nopref
-Taejeong	n,nopref
-Tague	n,nopref
-Talkin	n,nopref
-Tandy	pc
-Tarjan	pc,nopref
-Tarski	pc,nopref
-TCP	d,nopref
-Teaneck	pc,nopref
-Technion	pc,nopref
-Telefonica	pc
-Telefonos	d
-temp	n
-Tennent	pc,nopref
-termwise	a
-Terpenning	n,nopref
-Tewksbury	pc,nopref
-Thu	pc,nopref
-Tillman	n,nopref
-Tishby	n,nopref
-TLB	n
-TM	s,nopref
-Toeplitz	pc,nopref
-TOMS	pc,nopref
-TOPLAS	pc,nopref
-Townshend	n,nopref
-TPC	pc,nopref
-Trans	pc,nopref
-Transputer	n
-Traub	n,nopref
-Trickey	n,nopref
-Trimline	pc,nopref
-troff	v,er
-Tsichritzis	pc,nopref
-TSO	pc,nopref
-TSPS	pc,nopref
-TSS	pc,nopref
-Tukey	n,nopref
-tuple	n
-UART	n,nopref
-Ulam	pc,nopref
-Unibus	n,nopref
-Unisys	pc,nopref
-Univ	pc,nopref
-uplink	n
-Usenet	pc
-Usenix	pc
-userid	n
-Vaidya	pc,nopref
-Vardi	n,nopref
-Varga	pc,nopref
-variadic	a
-VAX	n,nopref
-Venutolo	n,nopref
-Versatec	pc,nopref
-VGA	pc
-Viewdata	pc,nopref
-viewgraph	n
-Vishwani	pc,nopref
-VLSI	pc,nopref
-Vol	pc,nopref
-Voronoi	pc,nopref
-Votrax	pc,nopref
-Vyssotsky	n,nopref
-Warshall	pc,nopref
-Watchung	n
-WATS	pc,nopref
-Weehawken	pc,nopref
-Wegner	pc,nopref
-Weinberger	n,nopref
-WH	pc,nopref
-Whippany	pc
-Whitt	n,nopref
-wideband	a
-Wijngaarden	pc,nopref
-Wilber	pc,nopref
-Wilfong	n,nopref
-Wilks	n,nopref
-Wilpon	n,nopref
-Winograd	pc,nopref
-Winterbottom	n
-wirewrap	n,v,ms
-Wirth	pc,nopref
-Witsenhausen	n,nopref
-workaround	n,nopref
-Wulf	pc,nopref
-Wyk	n,nopref
-Yannakakis	n,nopref
-Yariv	pc,nopref
-Yehuda	pc,nopref
-Yourdon	pc,nopref
-Zave	n,nopref
-Ziv	n,nopref

+ 0 - 46
sys/src/cmd/spell/mkfile

@@ -1,46 +0,0 @@
-</$objtype/mkfile
-
-TARG=sprog
-OFILES=sprog.$O\
-
-HFILES =\
-	code.h\
-
-BIN=/$objtype/bin/aux
-</sys/src/cmd/mkone
-cpuobjtype=`{sed -n 's/^O=//p' /$cputype/mkfile}
-
-all:V:	lib 
-
-lib:	amspell brspell
-	for (i in $prereq) cp $i /sys/lib/$i
-
-brspell: $cpuobjtype.pcode  list british local stop
-	$cpuobjtype.pcode list british local stop >$target
-
-amspell: $cpuobjtype.pcode  list american local stop
-	$cpuobjtype.pcode list american local stop >$target
-
-$cpuobjtype.pcode:	pcode.c $HFILES
-	objtype=$cputype
-	mk pcode.$cputype
-
-pcode.$cputype:	pcode.$O $HFILES
-	$LD -o $O.pcode pcode.$O
-
-installall:V:
-	for(objtype in $CPUS) mk install
-	cp spell.rc /rc/bin/spell
-	mk lib
-
-nuke:V:
-	rm -f *.[$OS] [$OS].out [$OS].pcode y.tab.? y.debug y.output $TARG
-	rm -f amspell brspell
-
-clean:V:
-	rm -f *.[$OS] [$OS].out [$OS].pcode y.tab.? y.debug y.output $TARG
-
-test:V:	$O.out brspell
-	time ./$O.out -b -f brspell </dev/null >y
-	time ./$O.out -b -f brspell <x >z
-	cmp y z

+ 0 - 345
sys/src/cmd/spell/pcode.c

@@ -1,345 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include <ctype.h>
-#include "code.h"
-
-/* read an annotated spelling list in the form
-	word <tab> affixcode [ , affixcode ] ...
-   print a reencoded version
-	octal <tab> word
- */
-
-typedef	struct	Dict	Dict;
-struct	Dict
-{
-	char*	word;
-	int	encode;
-};
-
-Dict	words[200000];
-char	space[500000];
-int32_t	encodes[4094];
-int32_t	nspace;
-int32_t	nwords;
-int	ncodes;
-Biobuf	bout;
-
-void	readinput(int f);
-int32_t	typecode(char *str);
-int	wcmp(const void*, const void*);
-void	pdict(void);
-void	sput(int);
-
-void
-main(int argc, char *argv[])
-{
-	int f;
-
-	Binit(&bout, 1, OWRITE);
-	nwords = 0;
-	nspace = 0;
-	ncodes = 0;
-	if(argc <= 1)
-		readinput(0);
-	while(argc > 1) {
-		f = open(argv[1], 0);
-		if(f < 0) {
-			fprint(2, "Cannot open %s\n", argv[1]);
-			exits("open");
-		}
-		readinput(f);
-		argc--;
-		argv++;
-	}
-	fprint(2, "words = %ld; space = %ld; codes = %d\n",
-		nwords, nspace, ncodes);
-	qsort(words, nwords, sizeof(words[0]), wcmp);
-	pdict();
-	exits(0);
-}
-
-wcmp(const void *a, const void *b)
-{
-
-	return strcmp(((Dict*)a)->word, ((Dict*)b)->word);
-}
-
-void
-readinput(int f)
-{
-	int32_t i;
-	char *code, *line, *bword;
-	Biobuf buf;
-	int32_t lineno = 0;
-
-	Binit(&buf, f, OREAD);
-	while(line = Brdline(&buf, '\n')) {
-		line[Blinelen(&buf)-1] = 0;
-		lineno++;
-		code = line;
-		while(isspace(*code))
-			code++;
-		bword = code;
-		while(*code && !isspace(*code))
-			code++;
-
-		i = code-bword;
-		memmove(space+nspace, bword, i);
-		words[nwords].word = space+nspace;
-		nspace += i;
-		space[nspace] = 0;
-		nspace++;
-
-		if(*code) {
-			*code++ = 0;
-			while(isspace(*code))
-				code++;
-		}
-		words[nwords].encode = typecode(code);
-		nwords++;
-		if(nwords >= sizeof(words)/sizeof(words[0])) {
-			fprint(2, "words array too small\n");
-			exits("words");
-		}
-		if(nspace >= sizeof(space)/sizeof(space[0])) {
-			fprint(2, "space array too small\n");
-			exits("space");
-		}
-	}
-	Bterm(&buf);
-}
-
-
-typedef	struct	Class	Class;
-struct	Class
-{
-	char*	codename;
-	int32_t	bits;
-};
-Class	codea[]  =
-{
-	{ "a", ADJ },
-	{ "adv", ADV },
-	0
-};
-Class	codec[] =
-{
-	{ "comp", COMP },
-	0
-};
-Class	coded[] =
-{
-	{ "d", DONT_TOUCH},
-	0
-};
-
-Class	codee[] =
-{
-	{ "ed",	ED },
-	{ "er", ACTOR },
-	0
-};
-
-Class	codei[] =
-{
-	{ "in", IN },
-	{ "ion", ION },
-	0
-};
-
-Class	codem[] =
-{
-	{ "man", MAN },
-	{ "ms", MONO },
-	0
-};
-
-Class	coden[] =
-{
-	{ "n", NOUN },
-	{ "na", N_AFFIX },
-	{ "nopref", NOPREF },
-	0
-};
-
-Class	codep[] =
-{
-	{ "pc", PROP_COLLECT },
-	0
-};
-Class	codes[] =
-{
-	{ "s", STOP },
-	0
-};
-
-Class	codev[] =
-{
-	{ "v", VERB },
-	{ "va", V_AFFIX },
-	{ "vi", V_IRREG },
-	0
-};
-
-Class	codey[] =
-{
-	{ "y", _Y },
-	0
-};
-
-Class	codez[] =
-{
-	0
-};
-Class*	codetab[] =
-{
-	codea,
-	codez,
-	codec,
-	coded,
-	codee,
-	codez,
-	codez,
-	codez,
-	codei,
-	codez,
-	codez,
-	codez,
-	codem,
-	coden,
-	codez,
-	codep,
-	codez,
-	codez,
-	codes,
-	codez,
-	codez,
-	codev,
-	codez,
-	codez,
-	codey,
-	codez,
-};
-
-int32_t
-typecode(char *str)
-{
-	Class *p;
-	int32_t code;
-	int n, i;
-	char *s, *sp, *st;
-
-	code = 0;
-
-loop:
-	for(s=str; *s != 0 && *s != ','; s++)
-		;
-	for(p = codetab[*str-'a']; sp = p->codename; p++) {
-		st = str;
-		for(n=s-str;; st++,sp++) {
-			if(*st != *sp)
-				goto cont;
-			n--;
-			if(n == 0)
-				break;
-		}
-		code |= p->bits;
-		if(*s == 0)
-			goto out;
-		str = s+1;
-		goto loop;
-	cont:;
-	}
-	fprint(2, "Unknown affix code \"%s\"\n", str);
-	return 0;
-out:
-	for(i=0; i<ncodes; i++)
-		if(encodes[i] == code)
-			return i;
-	encodes[i] = code;
-	ncodes++;
-	return i;
-}
-
-void
-sput(int s)
-{
-
-	Bputc(&bout, s>>8);
-	Bputc(&bout, s);
-}
-
-void
-lput(int32_t l)
-{
-	Bputc(&bout, l>>24);
-	Bputc(&bout, l>>16);
-	Bputc(&bout, l>>8);
-	Bputc(&bout, l);
-}
-
-/*
- * spit out the encoded dictionary
- * all numbers are encoded big-endian.
- *	struct
- *	{
- *		short	ncodes;
- *		long	encodes[ncodes];
- *		struct
- *		{
- *			short	encode;
- *			char	word[*];
- *		} words[*];
- *	};
- * 0x8000 flag for code word
- * 0x7800 count of number of common bytes with previous word
- * 0x07ff index into codes array for affixes
- */
-void
-pdict(void)
-{
-	int32_t i, count;
-	int encode, j, c;
-	char *lastword, *thisword, *word;
-
-	sput(ncodes);
-	for(i=0; i<ncodes; i++)
-		lput(encodes[i]);
-
-	count = ncodes*4 + 2;
-	lastword = "";
-	for(i=0; i<nwords; i++) {
-		word = words[i].word;
-		thisword = word;
-		for(j=0; *thisword == *lastword; j++) {
-			if(*thisword == 0) {
-				fprint(2, "identical words: %s\n", word);
-				break;
-			}
-			thisword++;
-			lastword++;
-		}
-		if(j > 15)
-			j = 15;
-		encode = words[i].encode;
-		c = (1<<15) | (j<<11) | encode;
-		sput(c);
-		count += 2;
-		for(thisword=word+j; c = *thisword; thisword++) {
-			Bputc(&bout, c);
-			count++;
-		}
-		lastword = word;
-	}
-	fprint(2, "output bytes = %ld\n", count);
-}

+ 0 - 21
sys/src/cmd/spell/spell.rc

@@ -1,21 +0,0 @@
-#!/bin/rc
-
-spellflags=()
-deroffargs=()
-fflag=''
-for(x){
-	switch($x){
-	case -[abcvx]
-		spellflags=($spellflags $x)
-	case -f
-		fflag=$x
-	case *
-		if(~ $fflag -f)	{
-			spellflags=($spellflags -f $x)
-			fflag=''
-		}
-		if not		deroffargs=($deroffargs $x)
-	}
-}
-
-deroff -w $deroffargs | sort -u | aux/sprog $spellflags

+ 0 - 1386
sys/src/cmd/spell/sprog.c

@@ -1,1386 +0,0 @@
-/*
- * This file is part of the UCB release of Plan 9. It is subject to the license
- * terms in the LICENSE file found in the top-level directory of this
- * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
- * part of the UCB release of Plan 9, including this file, may be copied,
- * modified, propagated, or distributed except according to the terms contained
- * in the LICENSE file.
- */
-
-#include <u.h>
-#include <libc.h>
-#include <bio.h>
-#include <ctype.h>
-#include "code.h"
-
-/* fig leaves for possibly signed char quantities */
-#define ISUPPER(c)	isupper((c)&0xff)
-#define ISLOWER(c)	islower((c)&0xff)
-#define	ISALPHA(c)	isalpha((c)&0xff)
-#define	ISDIGIT(c)	isdigit((c)&0xff)
-#define ISVOWEL(c)	voweltab[(c)&0xff]
-#define Tolower(c)	(ISUPPER(c)? (c)-'A'+'a': (c))
-#define pair(a,b)	(((a)<<8) | (b))
-#define DLEV		2
-#define DSIZ		40
-
-typedef	int32_t	Bits;
-#define	Set(h, f)	((int32_t)(h) & (f))
-
-Bits 	nop(char*, char*, char*, int, int);
-Bits 	strip(char*, char*, char*, int, int);
-Bits 	ize(char*, char*, char*, int, int);
-Bits 	i_to_y(char*, char*, char*, int, int);
-Bits 	ily(char*, char*, char*, int, int);
-Bits 	subst(char*, char*, char*, int, int);
-Bits 	CCe(char*, char*, char*, int, int);
-Bits 	tion(char*, char*, char*, int, int);
-Bits 	an(char*, char*, char*, int, int);
-Bits 	s(char*, char*, char*, int, int);
-Bits 	es(char*, char*, char*, int, int);
-Bits 	bility(char*, char*, char*, int, int);
-Bits 	y_to_e(char*, char*, char*, int, int);
-Bits 	VCe(char*, char*, char*, int, int);
-
-Bits 	trypref(char*, char*, int, int);
-Bits	tryword(char*, char*, int, int);
-Bits 	trysuff(char*, int, int);
-Bits	dict(char*, char*);
-void	typeprint(Bits);
-void	pcomma(char*);
-
-void	ise(void);
-int	ordinal(void);
-char*	skipv(char*);
-int	inun(char*, Bits);
-char*	ztos(char*);
-void	readdict(char*);
-
-typedef	struct	Ptab	Ptab;
-struct	Ptab
-{
-	char*	s;
-	int	flag;
-};
-
-typedef	struct	Suftab	Suftab;
-struct	Suftab
-{
-	char	*suf;
-	Bits	(*p1)(char*, char*, char*, int, int);
-	int	n1;
-	char	*d1;
-	char	*a1;
-	int	flag;
-	int	affixable;
-	Bits	(*p2)(char*, char*, char*, int, int);
-	int	n2;
-	char	*d2;
-	char	*a2;
-};
-
-Suftab	staba[] = {
-	{"aibohp",subst,1,"-e+ia","",NOUN, NOUN},
-	0
-};
-
-Suftab	stabc[] =
-{
-	{"cai",strip,1,"","+c",N_AFFIX, ADJ|NOUN},
-	{"citsi",strip,2,"","+ic",N_AFFIX, ADJ | N_AFFIX | NOUN},
-	{"citi",ize,1,"-e+ic","",N_AFFIX, ADJ },
-	{"cihparg",i_to_y,1,"-y+ic","",NOUN, ADJ|NOUN },
-	{"cipocs",ize,1,"-e+ic","",NOUN, ADJ },
-	{"cirtem",i_to_y,1,"-y+ic","",NOUN, ADJ },
-	{"cigol",i_to_y,1,"-y+ic","",NOUN, ADJ },
-	{"cimono",i_to_y,1,"-y+ic","",NOUN, ADJ },
-	{"cibohp",subst,1,"-e+ic","",NOUN, ADJ },
-	0
-};
-Suftab	stabd[] =
-{
-	{"de",strip,1,"","+d",ED,ADJ |COMP,i_to_y,2,"-y+ied","+ed"},
-	{"dooh",ily,4,"-y+ihood","+hood",NOUN | ADV, NOUN},
-	0
-};
-Suftab	stabe[] =
-{
-	/*
-	 * V_affix for comment ->commence->commentment??
-	 */
-	{"ecna",subst,1,"-t+ce","",ADJ,N_AFFIX|_Y|NOUN|VERB|ACTOR|V_AFFIX},
-	{"ecne",subst,1,"-t+ce","",ADJ,N_AFFIX|_Y|NOUN|VERB|ACTOR|V_AFFIX},
-	{"elbaif",i_to_y,4,"-y+iable","",V_IRREG,ADJ},
-	{"elba",CCe,4,"-e+able","+able",V_AFFIX,ADJ},
-	{"evi",subst,0,"-ion+ive","",N_AFFIX | V_AFFIX,NOUN | N_AFFIX| ADJ},
-	{"ezi",CCe,3,"-e+ize","+ize",N_AFFIX|ADJ ,V_AFFIX | VERB |ION | COMP},
-	{"ekil",strip,4,"","+like",N_AFFIX ,ADJ},
-	0
-};
-Suftab	stabg[] =
-{
-	{"gniee",strip,3,"","+ing",V_IRREG ,ADJ|NOUN},
-	{"gnikam",strip,6,"","+making",NOUN,NOUN},
-	{"gnipeek",strip,7,"","+keeping",NOUN,NOUN},
-	{"gni",CCe,3,"-e+ing","+ing",V_IRREG ,ADJ|ED|NOUN},
-	0
-};
-Suftab	stabl[] =
-{
-	{"ladio",strip,2,"","+al",NOUN |ADJ,ADJ},
-	{"laci",strip,2,"","+al",NOUN |ADJ,ADJ |NOUN|N_AFFIX},
-	{"latnem",strip,2,"","+al",N_AFFIX,ADJ},
-	{"lanoi",strip,2,"","+al",N_AFFIX,ADJ|NOUN},
-	{"luf",ily,3,"-y+iful","+ful",N_AFFIX,ADJ | NOUN},
-	0
-};
-Suftab	stabm[] =
-{
-		/* congregational + ism */
-	{"msi",CCe,3,"-e+ism","ism",N_AFFIX|ADJ,NOUN},
-	{"margo",subst,-1,"-ph+m","",NOUN,NOUN},
-	0
-};
-Suftab	stabn[] =
-{
-	{"noitacifi",i_to_y,6,"-y+ication","",ION,NOUN | N_AFFIX},
-	{"noitazi",ize,4,"-e+ation","",ION,NOUN| N_AFFIX},
-	{"noit",tion,3,"-e+ion","+ion",ION,NOUN| N_AFFIX | V_AFFIX |VERB|ACTOR},
-	{"naino",an,3,"","+ian",NOUN|PROP_COLLECT,NOUN| N_AFFIX},
-	{"namow",strip,5,"","+woman",MAN,PROP_COLLECT|N_AFFIX},
-	{"nam",strip,3,"","+man",MAN,PROP_COLLECT | N_AFFIX | VERB},
-	{"na",an,1,"","+n",NOUN|PROP_COLLECT,NOUN | N_AFFIX},
-	{"nemow",strip,5,"","+women",MAN,PROP_COLLECT},
-	{"nem",strip,3,"","+man",MAN,PROP_COLLECT},
-	{"nosrep",strip,6,"","+person",MAN,PROP_COLLECT},
-	0
-};
-Suftab	stabp[] =
-{
-	{"pihs",strip,4,"","+ship",NOUN|PROP_COLLECT,NOUN| N_AFFIX},
-	0
-};
-Suftab	stabr[] =
-{
-	{"rehparg",subst,1,"-y+er","",ACTOR,NOUN,strip,2,"","+er"},
-	{"reyhparg",nop,0,"","",0,NOUN},
-	{"reyl",nop,0,"","",0,NOUN},
-	{"rekam",strip,5,"","+maker",NOUN,NOUN},
-	{"repeek",strip,6,"","+keeper",NOUN,NOUN},
-	{"re",strip,1,"","+r",ACTOR,NOUN | N_AFFIX|VERB|ADJ,	i_to_y,2,"-y+ier","+er"},
-	{"rota",tion,2,"-e+or","",ION,NOUN| N_AFFIX|_Y},
-	{"rotc",tion,2,"","+or",ION,NOUN| N_AFFIX},
-	{"rotp",tion,2,"","+or",ION,NOUN| N_AFFIX},
-	0
-};
-Suftab	stabs[] =
-{
-	{"ssen",ily,4,"-y+iness","+ness",ADJ|ADV,NOUN| N_AFFIX},
-	{"ssel",ily,4,"-y+iless","+less",NOUN | PROP_COLLECT,ADJ },
-	{"se",s,1,"","+s",NOUN | V_IRREG,DONT_TOUCH ,	es,2,"-y+ies","+es"},
-	{"s'",s,2,"","+'s",PROP_COLLECT | NOUN,DONT_TOUCH },
-	{"s",s,1,"","+s",NOUN | V_IRREG,DONT_TOUCH  },
-	0
-};
-Suftab	stabt[] =
-{
-	{"tnem",strip,4,"","+ment",V_AFFIX,NOUN | N_AFFIX | ADJ|VERB},
-	{"tse",strip,2,"","+st",EST,DONT_TOUCH,	i_to_y,3,"-y+iest","+est" },
-	{"tsigol",i_to_y,2,"-y+ist","",N_AFFIX,NOUN | N_AFFIX},
-	{"tsi",CCe,3,"-e+ist","+ist",N_AFFIX|ADJ,NOUN | N_AFFIX|COMP},
-	0
-};
-Suftab	staby[] =
-{
-	{"ycna",subst,1,"-t+cy","",ADJ | N_AFFIX,NOUN | N_AFFIX},
-	{"ycne",subst,1,"-t+cy","",ADJ | N_AFFIX,NOUN | N_AFFIX},
-	{"ytilib",bility,5,"-le+ility","",ADJ | V_AFFIX,NOUN | N_AFFIX},
-	{"ytisuo",nop,0,"","",NOUN},
-	{"ytilb",nop,0,"","",0,NOUN},
-	{"yti",CCe,3,"-e+ity","+ity",ADJ ,NOUN | N_AFFIX },
-	{"ylb",y_to_e,1,"-e+y","",ADJ,ADV},
-	{"ylc",nop,0,"","",0},
-	{"ylelb",nop,0,"","",0},
-	{"ylelp",nop,0,"","",0},
-	{"yl",ily,2,"-y+ily","+ly",ADJ,ADV|COMP},
-	{"yrtem",subst,0,"-er+ry","",NOUN,NOUN | N_AFFIX},
-	{"y",CCe,1,"-e+y","+y",_Y,ADJ|COMP},
-	0
-};
-Suftab	stabz[] =
-{
-	0
-};
-Suftab*	suftab[] =
-{
-	staba,
-	stabz,
-	stabc,
-	stabd,
-	stabe,
-	stabz,
-	stabg,
-	stabz,
-	stabz,
-	stabz,
-	stabz,
-	stabl,
-	stabm,
-	stabn,
-	stabz,
-	stabp,
-	stabz,
-	stabr,
-	stabs,
-	stabt,
-	stabz,
-	stabz,
-	stabz,
-	stabz,
-	staby,
-	stabz,
-};
-
-Ptab	ptaba[] =
-{
-	"anti", 0,
-	"auto", 0,
-	0
-};
-Ptab	ptabb[] =
-{
-	"bio", 0,
-	0
-};
-Ptab	ptabc[] =
-{
-	"counter", 0,
-	0
-};
-Ptab	ptabd[] =
-{
-	"dis", 0,
-	0
-};
-Ptab	ptabe[] =
-{
-	"electro", 0,
-	0
-};
-Ptab	ptabf[] =
-{
-	"femto", 0,
-	0
-};
-Ptab	ptabg[] =
-{
-	"geo", 0,
-	"giga", 0,
-	0
-};
-Ptab	ptabh[] =
-{
-	"hyper", 0,
-	0
-};
-Ptab	ptabi[] =
-{
-	"immuno", 0,
-	"im", IN,
-	"intra", 0,
-	"inter", 0,
-	"in", IN,
-	"ir", IN,
-	"iso", 0,
-	0
-};
-Ptab	ptabj[] =
-{
-	0
-};
-Ptab	ptabk[] =
-{
-	"kilo", 0,
-	0
-};
-Ptab	ptabl[] =
-{
-	0
-};
-Ptab	ptabm[] =
-{
-	"magneto", 0,
-	"mega", 0,
-	"meta", 0,
-	"micro", 0,
-	"mid", 0,
-	"milli", 0,
-	"mini", 0,
-	"mis", 0,
-	"mono", 0,
-	"multi", 0,
-	0
-};
-Ptab	ptabn[] =
-{
-	"nano", 0,
-	"neuro", 0,
-	"non", 0,
-	0
-};
-Ptab	ptabo[] =
-{
-	"out", 0,
-	"over", 0,
-	0
-};
-Ptab	ptabp[] =
-{
-	"para", 0,
-	"photo", 0,
-	"pico", 0,
-	"poly", 0,
-	"pre", 0,
-	"pseudo", 0,
-	"psycho", 0,
-	0
-};
-Ptab	ptabq[] =
-{
-	"quasi", 0,
-	0
-};
-Ptab	ptabr[] =
-{
-	"radio", 0,
-	"re", 0,
-	0
-};
-Ptab	ptabs[] =
-{
-	"semi", 0,
-	"stereo", 0,
-	"sub", 0,
-	"super", 0,
-	0
-};
-Ptab	ptabt[] =
-{
-	"tele", 0,
-	"tera", 0,
-	"thermo", 0,
-	0
-};
-Ptab	ptabu[] =
-{
-	"ultra", 0,
-	"under", 0,	/*must precede un*/
-	"un", IN,
-	0
-};
-Ptab	ptabv[] =
-{
-	0
-};
-Ptab	ptabw[] =
-{
-	0
-};
-Ptab	ptabx[] =
-{
-	0
-};
-Ptab	ptaby[] =
-{
-	0
-};
-Ptab	ptabz[] =
-{
-	0
-};
-
-Ptab*	preftab[] =
-{
-	ptaba,
-	ptabb,
-	ptabc,
-	ptabd,
-	ptabe,
-	ptabf,
-	ptabg,
-	ptabh,
-	ptabi,
-	ptabj,
-	ptabk,
-	ptabl,
-	ptabm,
-	ptabn,
-	ptabo,
-	ptabp,
-	ptabq,
-	ptabr,
-	ptabs,
-	ptabt,
-	ptabu,
-	ptabv,
-	ptabw,
-	ptabx,
-	ptaby,
-	ptabz,
-};
-
-typedef struct {
-	char *mesg;
-	enum { NONE, SUFF, PREF} type;
-} Deriv;
-
-int	aflag;
-int	cflag;
-int	fflag;
-int	vflag;
-int	xflag;
-int 	nflag;
-char	word[500];
-char*	original;
-Deriv	emptyderiv;
-Deriv	deriv[DSIZ+3];
-char	affix[DSIZ*10];	/* 10 is longest affix message */
-int	prefcount;
-int 	suffcount;
-char*	acmeid;
-char	space[300000];	/* must be as large as "words"+"space" in pcode run */
-Bits	encode[2048];	/* must be as long as "codes" in pcode run */
-int	nencode;
-char	voweltab[256];
-char*	spacep[128*128+1];	/* pointer to words starting with 'xx' */
-Biobuf	bin;
-Biobuf	bout;
-
-char*	codefile = "/sys/lib/amspell";
-char*	brfile = "/sys/lib/brspell";
-char*	Usage = "usage";
-
-void
-main(int argc, char *argv[])
-{
-	char *ep, *cp;
-	char *dp;
-	int j, i, c;
-	int low;
-	Bits h;
-
-	Binit(&bin, 0, OREAD);
-	Binit(&bout, 1, OWRITE);
-	for(i=0; c = "aeiouyAEIOUY"[i]; i++)
-		voweltab[c] = 1;
-	while(argc > 1) {
-		if(argv[1][0] != '-')
-			break;
-		for(i=1; c = argv[1][i]; i++)
-		switch(c) {
-		default:
-			fprint(2, "usage: spell [-bcCvx] [-f file]\n");
-			exits(Usage);
-
-		case 'a':
-			aflag++;
-			continue;
-
-		case 'b':
-			ise();
-			if(!fflag)
-				codefile = brfile;
-			continue;
-
-		case 'C':		/* for "correct" */
-			vflag++;
-		case 'c':		/* for ocr */
-			cflag++;
-			continue;
-
-		case 'v':
-			vflag++;
-			continue;
-
-		case 'x':
-			xflag++;
-			continue;
-
-		case 'f':
-			if(argc <= 2) {
-				fprint(2, "spell: -f requires another argument\n");
-				exits(Usage);
-			}
-			argv++;
-			argc--;
-			codefile = argv[1];
-			fflag++;
-			goto brk;
-		}
-	brk:
-		argv++;
-		argc--;
-	}
-	readdict(codefile);
-	if(argc > 1) {
-		fprint(2, "usage: spell [-bcCvx] [-f file]\n");
-		exits(Usage);
-	}
-	if(aflag)
-		cflag = vflag = 0;
-
-	for(;;) {
-		affix[0] = 0;
-		original = Brdline(&bin, '\n');
-		if(original == 0)
-			exits(0);
-		original[Blinelen(&bin)-1] = 0;
-		low = 0;
-
-		if(aflag) {
-			acmeid = original;
-			while(*original != ':')
-				if(*original++ == 0)
-					exits(0);
-			while(*++original != ':')
-				if(*original == 0)
-					exits(0);
-			*original++ = 0;
-		}
-		for(ep=word,dp=original; j = *dp; ep++,dp++) {
-			if(ISLOWER(j))
-				low++;
-			if(ep >= word+sizeof(word)-1)
-				break;
-			*ep = j;
-		}
-		*ep = 0;
-
-		if(ISDIGIT(word[0]) && ordinal())
-			continue;
-
-		h = 0;
-		if(!low && !(h = trypref(ep,".",0,ALL|STOP|DONT_TOUCH)))
-			for(cp=original+1,dp=word+1; dp<ep; dp++,cp++)
-				*dp = Tolower(*cp);
-		if(!h)
-		for(;;) {	/* at most twice */
-			if(h = trypref(ep,".",0,ALL|STOP|DONT_TOUCH))
-				break;
-			if(h = trysuff(ep,0,ALL|STOP|DONT_TOUCH))
-				break;
-			if(!ISUPPER(word[0]))
-				break;
-			cp = original;
-			dp = word;
-			while(*dp = *cp++) {
-					if(!low)
-						*dp = Tolower(*dp);
-				dp++;
-			}
-			word[0] = Tolower(word[0]);
-		}
-
-		if(cflag) {
-			if(!h || Set(h,STOP))
-				print("-");
-			else if(!vflag)
-				print("+");
-			else
-				print("%c",'0' + (suffcount>0) +
-				   (prefcount>4? 8: 2*prefcount));
-		} else if(!h || Set(h,STOP)) {
-			if(aflag)
-				Bprint(&bout, "%s:%s\n", acmeid, original);
-			else
-				Bprint(&bout, "%s\n", original);
-		} else if(affix[0] != 0 && affix[0] != '.')
-			print("%s\t%s\n", affix, original);
-	}
-	/* not reached */
-}
-
-/*	strip exactly one suffix and do
- *	indicated routine(s), which may recursively
- *	strip suffixes
- */
-Bits
-trysuff(char* ep, int lev, int flag)
-{
-	Suftab *t;
-	char *cp, *sp;
-	Bits h = 0;
-	int initchar = ep[-1];
-
-	flag &= ~MONO;
-	lev += DLEV;
-	if(lev < DSIZ) {
-		deriv[lev]  = emptyderiv;
-		deriv[lev-1] = emptyderiv;
-	}
-	if(!ISLOWER(initchar))
-		return h;
-	for(t=suftab[initchar-'a']; sp=t->suf; t++) {
-		cp = ep;
-		while(*sp)
-			if(*--cp != *sp++)
-				goto next;
-		for(sp=ep-t->n1; --sp >= word && !ISVOWEL(*sp);)
-			;
-		if(sp < word)
-			continue;
-		if(!(t->affixable & flag))
-			return 0;
-		h = (*t->p1)(ep-t->n1, t->d1, t->a1, lev+1, t->flag|STOP);
-		if(!h && t->p2!=0) {
-			if(lev < DSIZ) {
-				deriv[lev] = emptyderiv;
-				deriv[lev+1] = emptyderiv;
-			}
-			h = (*t->p2)(ep-t->n2, t->d2, t->a2, lev, t->flag|STOP);
-		}
-		break;
-	next:;
-	}
-	return h;
-}
-
-Bits
-nop(char* ep, char* d, char* a, int lev, int flag)
-{
-	USED(ep, d, a, lev, flag);
-	return 0;
-}
-
-Bits
-cstrip(char* ep, char* d, char* a, int lev, int flag)
-{
-	int temp = ep[0];
-
-	if(ISVOWEL(temp) && ISVOWEL(ep[-1])) {
-		switch(pair(ep[-1],ep[0])) {
-		case pair('a', 'a'):
-		case pair('a', 'e'):
-		case pair('a', 'i'):
-		case pair('e', 'a'):
-		case pair('e', 'e'):
-		case pair('e', 'i'):
-		case pair('i', 'i'):
-		case pair('o', 'a'):
-			return 0;
-		}
-	} else
-	if(temp==ep[-1]&&temp==ep[-2])
-		return 0;
-	return strip(ep,d,a,lev,flag);
-}
-
-Bits
-strip(char* ep, char* d, char* a, int lev, int flag)
-{
-	Bits h = trypref(ep, a, lev, flag);
-
-	USED(d);
-	if(Set(h,MONO) && ISVOWEL(*ep) && ISVOWEL(ep[-2]))
-		h = 0;
-	if(h)
-		return h;
-	if(ISVOWEL(*ep) && !ISVOWEL(ep[-1]) && ep[-1]==ep[-2]) {
-		h = trypref(ep-1,a,lev,flag|MONO);
-		if(h)
-			return h;
-	}
-	return trysuff(ep,lev,flag);
-}
-
-Bits
-s(char* ep, char* d, char* a, int lev, int flag)
-{
-	if(lev > DLEV+1)
-		return 0;
-	if(*ep=='s') {
-		switch(ep[-1]) {
-		case 'y':
-			if(ISVOWEL(ep[-2])||ISUPPER(*word))
-				break;	/*says Kennedys*/
-		case 'x':
-		case 'z':
-		case 's':
-			return 0;
-		case 'h':
-			switch(ep[-2]) {
-			case 'c':
-			case 's':
-				return 0;
-			}
-		}
-	}
-	return strip(ep,d,a,lev,flag);
-}
-
-Bits
-an(char* ep, char* d, char* a, int lev, int flag)
-{
-	USED(d);
-	if(!ISUPPER(*word))	/*must be proper name*/
-		return 0;
-	return trypref(ep,a,lev,flag);
-}
-
-Bits
-ize(char* ep, char* d, char* a, int lev, int flag)
-{
-	int temp = ep[-1];
-	Bits h;
-
-	USED(a);
-	ep[-1] = 'e';
-	h = strip(ep,"",d,lev,flag);
-	ep[-1] = temp;
-	return h;
-}
-
-Bits
-y_to_e(char* ep, char* d, char* a, int lev, int flag)
-{
-	Bits h;
-	int  temp;
-
-	USED(a);
-	switch(ep[-1]) {
-	case 'a':
-	case 'e':
-	case 'i':
-		return 0;
-	}
-	temp = *ep;
-	*ep++ = 'e';
-	h = strip(ep,"",d,lev,flag);
-	ep[-1] = temp;
-	return h;
-}
-
-Bits
-ily(char* ep, char* d, char* a, int lev, int flag)
-{
-	int temp = ep[0];
-	char *cp = ep;
-
-	if(temp==ep[-1]&&temp==ep[-2])		/* sillly */
-		return 0;
-	if(*--cp=='y' && !ISVOWEL(*--cp))	/* happyly */
-		while(cp>word)
-			if(ISVOWEL(*--cp))	/* shyness */
-				return 0;
-	if(ep[-1]=='i')
-		return i_to_y(ep,d,a,lev,flag);
-	return cstrip(ep,d,a,lev,flag);
-}
-
-Bits
-bility(char* ep, char* d, char* a, int lev, int flag)
-{
-	*ep++ = 'l';
-	return y_to_e(ep,d,a,lev,flag);
-}
-
-Bits
-i_to_y(char* ep, char* d, char* a, int lev, int flag)
-{
-	Bits h;
-	int temp;
-
-	if(ISUPPER(*word))
-		return 0;
-	if((temp=ep[-1])=='i' && !ISVOWEL(ep[-2])) {
-		ep[-1] = 'y';
-		a = d;
-	}
-	h = cstrip(ep,"",a,lev,flag);
-	ep[-1] = temp;
-	return h;
-}
-
-Bits
-es(char* ep, char* d, char* a, int lev, int flag)
-{
-	if(lev>DLEV)
-		return 0;
-	switch(ep[-1]) {
-	default:
-		return 0;
-	case 'i':
-		return i_to_y(ep,d,a,lev,flag);
-	case 'h':
-		switch(ep[-2]) {
-		default:
-			return 0;
-		case 'c':
-		case 's':
-			break;
-		}
-	case 's':
-	case 'z':
-	case 'x':
-		return strip(ep,d,a,lev,flag);
-	}
-}
-
-Bits
-subst(char* ep, char* d, char* a, int lev, int flag)
-{
-	char *u,*t;
-	Bits h;
-
-	USED(a);
-	if(skipv(skipv(ep-1)) < word)
-		return 0;
-	for(t=d; *t!='+'; t++)
-		continue;
-	for(u=ep; *--t!='-';)
-		*--u = *t;
-	h = strip(ep,"",d,lev,flag);
-	while(*++t != '+')
-		continue;
-	while(*++t)
-		*u++ = *t;
-	return h;
-}
-
-Bits
-tion(char* ep, char* d, char* a, int lev, int flag)
-{
-	switch(ep[-2]) {
-	default:
-		return trypref(ep,a,lev,flag);
-	case 'a':
-	case 'e':
-	case 'i':
-	case 'o':
-	case 'u':
-		return y_to_e(ep,d,a,lev,flag);
-	}
-}
-
-/*
- * possible consonant-consonant-e ending
- */
-Bits
-CCe(char* ep, char* d, char* a, int lev, int flag)
-{
-	Bits h;
-
-	switch(ep[-1]) {
-	case 'l':
-		if(ISVOWEL(ep[-2]))
-			break;
-		switch(ep[-2]) {
-		case 'l':
-		case 'r':
-		case 'w':
-			break;
-		default:
-			return y_to_e(ep,d,a,lev,flag);
-		}
-		break;
-	case 'c':
-	case 'g':
-		if(*ep == 'a')	/* prevent -able for -eable */
-			return 0;
-	case 's':
-	case 'v':
-	case 'z':
-		if(ep[-2]==ep[-1])
-			break;
-		if(ISVOWEL(ep[-2]))
-			break;
-	case 'u':
-		if(h = y_to_e(ep,d,a,lev,flag))
-			return h;
-		if(!(ep[-2]=='n' && ep[-1]=='g'))
-			return 0;
-	}
-	return VCe(ep,d,a,lev,flag);
-}
-
-/*
- * possible consonant-vowel-consonant-e ending
- */
-Bits
-VCe(char* ep, char* d, char* a, int lev, int flag)
-{
-	int c;
-	Bits h;
-
-	c = ep[-1];
-	if(c=='e')
-		return 0;
-	if(!ISVOWEL(c) && ISVOWEL(ep[-2])) {
-		c = *ep;
-		*ep++ = 'e';
-		h = trypref(ep,d,lev,flag);
-		if(!h)
-			h = trysuff(ep,lev,flag);
-		if(h)
-			return h;
-		ep--;
-		*ep = c;
-	}
-	return cstrip(ep,d,a,lev,flag);
-}
-
-Ptab*
-lookuppref(uint8_t** wp, char* ep)
-{
-	Ptab *sp;
-	uint8_t *bp,*cp;
-	unsigned int initchar = Tolower(**wp);
-
-	if(!ISALPHA(initchar))
-		return 0;
-	for(sp=preftab[initchar-'a'];sp->s;sp++) {
-		bp = *wp;
-		for(cp= (uint8_t*)sp->s;*cp; )
-			if(*bp++!=*cp++)
-				goto next;
-		for(cp=bp;cp<(uint8_t*)ep;cp++)
-			if(ISVOWEL(*cp)) {
-				*wp = bp;
-				return sp;
-			}
-	next:;
-	}
-	return 0;
-}
-
-/*	while word is not in dictionary try stripping
- *	prefixes. Fail if no more prefixes.
- */
-Bits
-trypref(char* ep, char* a, int lev, int flag)
-{
-	Ptab *tp;
-	char *bp, *cp;
-	char *pp;
-	Bits h;
-	char space[20];
-
-	if(lev<DSIZ) {
-		deriv[lev].mesg = a;
-		deriv[lev].type = *a=='.'? NONE: SUFF;
-	}
-	if(h = tryword(word,ep,lev,flag)) {
-		if(Set(h, flag&~MONO) && (flag&MONO) <= Set(h, MONO))
-			return h;
-		h = 0;
-	}
-	bp = word;
-	pp = space;
-	if(lev<DSIZ) {
-		deriv[lev+1].mesg = pp;
-		deriv[lev+1].type = 0;
-	}
-	while(tp=lookuppref((uint8_t**)&bp,ep)) {
-		*pp++ = '+';
-		cp = tp->s;
-		while(pp<space+sizeof(space) && (*pp = *cp++))
-			pp++;
-		deriv[lev+1].type += PREF;
-		h = tryword(bp,ep,lev+1,flag);
-		if(Set(h,NOPREF) ||
-		   ((tp->flag&IN) && inun(bp-2,h)==0)) {
-			h = 0;
-			break;
-		}
-		if(Set(h,flag&~MONO) && (flag&MONO) <= Set(h, MONO))
-			break;
-		h = 0;
-	}
-	if(lev < DSIZ) {
-		deriv[lev+1] = emptyderiv;
-		deriv[lev+2] = emptyderiv;
-	}
-	return h;
-}
-
-Bits
-tryword(char* bp, char* ep, int lev, int flag)
-{
-	int  j;
-	Bits h = 0;
-	char duple[3];
-
-	if(ep-bp <= 1)
-		return h;
-	if(flag&MONO) {
-		if(lev<DSIZ) {
-			deriv[++lev].mesg = duple;
-			deriv[lev].type = SUFF;
-		}
-		duple[0] = '+';
-		duple[1] = *ep;
-		duple[2] = 0;
-	}
-	h = dict(bp, ep);
-	if(vflag==0 || h==0)
-		return h;
-	/*
-	 * when derivations are wanted, collect them
-	 * for printing
-	 */
-	j = lev;
-	prefcount = suffcount = 0;
-	do {
-		if(j<DSIZ && deriv[j].type) {
-			strcat(affix, deriv[j].mesg);
-			if(deriv[j].type == SUFF)
-				suffcount++;
-			else if(deriv[j].type != NONE)
-				prefcount = deriv[j].type/PREF;
-		}
-	} while(--j > 0);
-	return h;
-}
-
-int
-inun(char* bp, Bits h)
-{
-	if(*bp == 'u')
-		return Set(h, IN) == 0;
-	/* *bp == 'i' */
-	if(Set(h, IN) == 0)
-		return 0;
-	switch(bp[2]) {
-	case 'r':
-		return bp[1] == 'r';
-	case 'm':
-	case 'p':
-		return bp[1] == 'm';
-	}
-	return bp[1] == 'n';
-}
-
-char*
-skipv(char *s)
-{
-	if(s >= word && ISVOWEL(*s))
-		s--;
-	while(s >= word && !ISVOWEL(*s))
-		s--;
-	return s;
-}
-
-/*
- * crummy way to Britishise
- */
-void
-ise(void)
-{
-	Suftab *p;
-	int i;
-
-	for(i=0; i<26; i++)
-		for(p = suftab[i]; p->suf; p++) {
-			p->suf = ztos(p->suf);
-			p->d1 = ztos(p->d1);
-			p->a1 = ztos(p->a1);
-		}
-}
-
-char*
-ztos(char *as)
-{
-	char *s, *ds;
-
-	for(s=as; *s; s++)
-		if(*s == 'z')
-			goto copy;
-	return as;
-
-copy:
-	ds = strdup(as);
-	for(s=ds; *s; s++)
-		if(*s == 'z')
-			*s = 's';
-	return ds;
-}
-
-Bits
-dict(char* bp, char* ep)
-{
-	char *cp, *cp1, *w, *wp, *we;
-	int n, f;
-
-	w = bp;
-	we = ep;
-	n = ep-bp;
-	if(n <= 1)
-		return NOUN;
-
-	f = w[0] & 0x7f;
-	f *= 128;
-	f += w[1] & 0x7f;
-	bp = spacep[f];
-	ep = spacep[f+1];
-
-loop:
-	if(bp >= ep) {
-		if(xflag)
-			fprint(2, "=%.*s\n", utfnlen(w, n), w);
-		return 0;
-	}
-	/*
-	 * find the beginning of some word in the middle
-	 */
-	cp = bp + (ep-bp)/2;
-
-	while(cp > bp && !(*cp & 0x80))
-		cp--;
-	while(cp > bp && (cp[-1] & 0x80))
-		cp--;
-
-	wp = w + 2;	/* skip two letters */
-	cp1 = cp + 2;	/* skip affix code */
-	for(;;) {
-		if(wp >= we) {
-			if(*cp1 & 0x80)
-				goto found;
-			else
-				f = 1;
-			break;
-		}
-		if(*cp1 & 0x80) {
-			f = -1;
-			break;
-		}
-		f = *cp1++ - *wp++;
-		if(f != 0)
-			break;
-	}
-
-	if(f < 0) {
-		while(!(*cp1 & 0x80))
-			cp1++;
-		bp = cp1;
-		goto loop;
-	}
-	ep = cp;
-	goto loop;
-
-found:
-	f = ((cp[0] & 0x7) << 8) |
-		(cp[1] & 0xff);
-	if(xflag) {
-		fprint(2, "=%.*s ", utfnlen(w, n), w);
-		typeprint(encode[f]);
-	}
-	return encode[f];
-}
-
-void
-typeprint(Bits h)
-{
-
-	pcomma("");
-	if(h & NOUN)
-		pcomma("n");
-	if(h & PROP_COLLECT)
-		pcomma("pc");
-	if(h & VERB) {
-		if((h & VERB) == VERB)
-			pcomma("v");
-		else
-		if((h & VERB) == V_IRREG)
-			pcomma("vi");
-		else
-		if(h & ED)
-			pcomma("ed");
-	}
-	if(h & ADJ)
-		pcomma("a");
-	if(h & COMP) {
-		if((h & COMP) == ACTOR)
-			pcomma("er");
-		else
-			pcomma("comp");
-	}
-	if(h & DONT_TOUCH)
-		pcomma("d");
-	if(h & N_AFFIX)
-		pcomma("na");
-	if(h & ADV)
-		pcomma("adv");
-	if(h & ION)
-		pcomma("ion");
-	if(h & V_AFFIX)
-		pcomma("va");
-	if(h & MAN)
-		pcomma("man");
-	if(h & NOPREF)
-		pcomma("nopref");
-	if(h & MONO)
-		pcomma("ms");
-	if(h & IN)
-		pcomma("in");
-	if(h & _Y)
-		pcomma("y");
-	if(h & STOP)
-		pcomma("s");
-	fprint(2, "\n");
-}
-
-void
-pcomma(char *s)
-{
-	static flag;
-
-	if(*s == 0) {
-		flag = 0;
-		return;
-	}
-	if(!flag) {
-		fprint(2, "%s", s);
-		flag = 1;
-	} else
-		fprint(2, ",%s", s);
-}
-
-/*
- * is the word on of the following
- *	12th	teen
- *	21st	end in 1
- *	23rd	end in 3
- *	77th	default
- * called knowing word[0] is a digit
- */
-int
-ordinal(void)
-{
-	char *cp = word;
-	static char sp[4];
-
-	while(ISDIGIT(*cp))
-		cp++;
-	strncpy(sp,cp,3);
-	if(ISUPPER(cp[0]) && ISUPPER(cp[1])) {
-		sp[0] = Tolower(cp[0]);
-		sp[1] = Tolower(cp[1]);
-	}
-	return 0 == strncmp(sp,
-		cp[-2]=='1'? "th":	/* out of bounds if 1 digit */
-		*--cp=='1'? "st":	/* harmless */
-		*cp=='2'? "nd":
-		*cp=='3'? "rd":
-		"th", 3);
-}
-
-/*
- * read in the dictionary.
- * format is
- * {
- *	short	nencode;
- *	long	encode[nencode];
- *	char	space[*];
- * };
- *
- * the encodings are a table all different
- * affixes.
- * the dictionary proper has 2 bytes
- * that demark and then the rest of the
- * word. the 2 bytes have the following
- *	0x80 0x00	flag
- *	0x78 0x00	count of prefix bytes
- *			common with prev word
- *	0x07 0xff	affix code
- *
- * all ints are big endians in the file.
- */
-void
-readdict(char *file)
-{
-	char *s, *is, *lasts, *ls;
-	int c, i, sp, p;
-	int f;
-	int32_t l;
-
-	lasts = 0;
-	f = open(file, 0);
-	if(f == -1) {
-		fprint(2, "cannot open %s\n", file);
-		exits("open");
-	}
-	if(read(f, space, 2) != 2)
-		goto bad;
-	nencode = ((space[0]&0xff)<<8) | (space[1]&0xff);
-	if(read(f, space, 4*nencode) != 4*nencode)
-		goto bad;
-	s = space;
-	for(i=0; i<nencode; i++) {
-		l = (int32_t)(s[0] & 0xff) << 24;
-		l |= (s[1] & 0xff) << 16;
-		l |= (s[2] & 0xff) << 8;
-		l |= s[3] & 0xff;
-		encode[i] = (Bits)l;
-		s += 4;
-	}
-	l = read(f, space, sizeof(space));
-	if(l == sizeof(space))
-		goto noroom;
-	is = space + (sizeof(space) - l);
-	memmove(is, space, l);
-
-	s = space;
-	c = *is++ & 0xff;
-	sp = -1;
-	i = 0;
-
-loop:
-	if(s > is)
-		goto noroom;
-	if(c < 0) {
-		close(f);
-		while(sp < 128*128)
-			spacep[++sp] = s;
-		*s = 0x80;		/* fence */
-		return;
-	}
-	p = (c>>3) & 0xf;
-	*s++ = c;
-	*s++ = *is++ & 0xff;
-	if(p <= 0)
-		i = (*is++ & 0xff)*128;
-	if(p <= 1) {
-		if(!(*is & 0x80))
-			i = i/128*128 + (*is++ & 0xff);
-		if(i <= sp) {
-			fprint(2, "the dict isnt sorted or \n");
-			fprint(2, "memmove didn't work\n");
-			goto bad;
-		}
-		while(sp < i)
-			spacep[++sp] = s-2;
-	}
-	ls = lasts;
-	lasts = s;
-	for(p-=2; p>0; p--)
-		*s++ = *ls++;
-	for(;;) {
-		if(is >= space+sizeof(space)) {
-			c = -1;
-			break;
-		}
-		c = *is++ & 0xff;
-		if(c & 0x80)
-			break;
-		*s++ = c;
-	}
-	*s = 0;
-	goto loop;
-
-bad:
-	fprint(2, "trouble reading %s\n", file);
-	exits("read");
-noroom:
-	fprint(2, "not enough space for dictionary\n");
-	exits("space");
-}

+ 0 - 1732
sys/src/cmd/spell/stop

@@ -1,1732 +0,0 @@
-accessive	s
-accidently	s
-acreless	s
-actional	s
-actioning	s
-actless	s
-actorize	s
-adaptative	s
-ailless	s
-airyism	s
-alienment	s
-alteringly	s
-amenment	s
-analist	s
-anality	s
-analize	s
-andless	s
-anglingly	s
-anticede	s
-antichamber	s
-anticlimatic	s
-anticore	s
-antidate	s
-antidoe	s
-antidot	s
-antigent	s
-antigone	s
-antiline	s
-antilope	s
-antion	s
-antipast	s
-antipath	s
-antipod	s
-antiquarry	s
-antiroom	s
-antislaver	s
-antitrophic	s
-apering	s
-aperity	s
-apist	s
-apocryphaless	s
-arablist	s
-archism	s
-archist	s
-archize	s
-archlier	s
-Argentinan	s
-arguement	s
-armfully	s
-armfulness	s
-armist	s
-artlike	s
-aspless	s
-asterful	s
-astership	s
-auntful	s
-autoate	s
-autoban	s
-autocave	s
-autodye	s
-autogenus	s
-autological	s
-automatte	s
-automatted	s
-automerism	s
-autopasty	s
-autorat	s
-autoring	s
-autotoy	s
-autotropic	s
-autotuck	s
-aversity	s
-awinged	s
-awlless	s
-awningly	s
-barering	s
-barister	s
-bathering	s
-bearless	s
-bibbless	s
-bidingly	s
-bikering	s
-biobate	s
-biobed	s
-biolo	s
-biotie	s
-biotry	s
-biterly	s
-biterness	s
-blackist	s
-bleatedly	s
-bleatedness	s
-bodable	s
-boltering	s
-bondless	s
-bonerize	s
-booless	s
-botherhood	s
-botherly	s
-bowlerize	s
-bowlless	s
-braeless	s
-branless	s
-buglingly	s
-bunging	s
-bustering	s
-bustingly	s
-butterly	s
-calmity	s
-campering	s
-Canadan	s
-canering	s
-cappering	s
-carerism	s
-carerist	s
-carism	s
-carist	s
-Carolinan	s
-casuality	s
-certainity	s
-chafering	s
-chittering	s
-chromatize	s
-clodless	s
-cobbering	s
-colness	s
-comist	s
-concoctor	s
-coneder	s
-coning	s
-constance	s
-constellator	s
-cookedly	s
-cookedness	s
-cooless	s
-coollier	s
-coonless	s
-copering	s
-corering	s
-corruptable	s
-corruptor	s
-counterarch	s
-counterfit	s
-counterink	s
-countermad	s
-counteroil	s
-counterposse	s
-counterpot	s
-countersin	s
-countersing	s
-countersome	s
-countervie	s
-coyist	s
-cruelity	s
-cubering	s
-cubical	s
-culleder	s
-curedly	s
-curedness	s
-curless	s
-curness	s
-curtliness	s
-curtsyed	s
-cuterize	s
-cutism	s
-cutist	s
-darist	s
-delvering	s
-dentative	s
-desecrator	s
-desolator	s
-desperator	s
-developmently	s
-dicering	s
-dikering	s
-dimmerism	s
-dimmity	s
-dirist	s
-dirity	s
-disale	s
-disally	s
-disalter	s
-disate	s
-disbale	s
-disban	s
-discant	s
-discent	s
-discernable	s
-discloth	s
-disconcrete	s
-discry	s
-discues	s
-diseat	s
-diselation	s
-disenage	s
-disencuber	s
-disendo	s
-disenter	s
-disentil	s
-disfunction	s
-disgut	s
-disguts	s
-dishater	s
-disheed	s
-disink	s
-dision	s
-dislace	s
-dislay	s
-dislease	s
-disliable	s
-disloge	s
-dislogistic	s
-dislose	s
-disman	s
-dismat	s
-dismats	s
-dison	s
-disover	s
-dispair	s
-dispant	s
-dispare	s
-dispath	s
-dispay	s
-dispence	s
-dispens	s
-disperson	s
-displaid	s
-displan	s
-displastic	s
-displat	s
-disply	s
-disposse	s
-disposses	s
-dispot	s
-disprate	s
-disrace	s
-disread	s
-disresect	s
-disroof	s
-disruptor	s
-dissea	s
-disseer	s
-dissemiate	s
-disset	s
-disshed	s
-disshone	s
-dissipator	s
-dissize	s
-dissole	s
-dissown	s
-disspare	s
-disspell	s
-dissplay	s
-dissport	s
-disstaff	s
-disstain	s
-disstill	s
-disstrain	s
-disstress	s
-disstrict	s
-dissue	s
-distact	s
-distaught	s
-distic	s
-distin	s
-distine	s
-distint	s
-distoe	s
-distracing	s
-distrier	s
-distrophic	s
-distub	s
-diswasher	s
-diswater	s
-diverity	s
-divingly	s
-doingly	s
-dolize	s
-drawingly	s
-ductor	s
-dullist	s
-dunless	s
-earfully	s
-earfulness	s
-earnedly	s
-earnedness	s
-earthness	s
-easingly	s
-eatless	s
-echos	s
-educedly	s
-eelless	s
-egretless	s
-ejectedly	s
-elationship	s
-elativism	s
-elativist	s
-elativity	s
-elativize	s
-elator	s
-electioner	s
-electivity	s
-electroate	s
-electrocue	s
-electrolate	s
-electromeeter	s
-electroon	s
-electropate	s
-electrotons	s
-elfless	s
-enaction	s
-enad	s
-enage	s
-enale	s
-enally	s
-enamp	s
-enapt	s
-enarch	s
-enate	s
-enbale	s
-enbank	s
-enbattle	s
-enbed	s
-enbit	s
-enblazon	s
-enbody	s
-enboss	s
-enbow	s
-enbrace	s
-enbrain	s
-enbroil	s
-encant	s
-encap	s
-encave	s
-encite	s
-encoach	s
-encomist	s
-encounterring	s
-encuber	s
-endance	s
-enday	s
-endeed	s
-endie	s
-endig	s
-endo	s
-endon	s
-endose	s
-endrain	s
-endrilled	s
-enelope	s
-enenad	s
-enenate	s
-energ	s
-enerize	s
-enerr	s
-enfame	s
-enfeeling	s
-enfield	s
-enform	s
-engain	s
-engird	s
-engut	s
-enholder	s
-enice	s
-enion	s
-eniron	s
-enitalic	s
-enknife	s
-enlame	s
-enless	s
-enlightning	s
-enlit	s
-enlive	s
-enlo	s
-enlong	s
-enlose	s
-enman	s
-enmost	s
-ennet	s
-ennight	s
-ennoblemen	s
-ennucleate	s
-ennumerate	s
-enoil	s
-enold	s
-enon	s
-enovate	s
-enown	s
-enpane	s
-enpanel	s
-enpaper	s
-enpathetic	s
-enpin	s
-enplace	s
-enpower	s
-enpress	s
-enpurple	s
-enrail	s
-enrant	s
-enrat	s
-enretic	s
-enroad	s
-ensalve	s
-ensave	s
-ensin	s
-ensing	s
-enstock	s
-ensuer	s
-ensuit	s
-entable	s
-entally	s
-entap	s
-enteat	s
-entee	s
-entend	s
-entent	s
-entie	s
-entier	s
-entil	s
-entile	s
-entime	s
-entin	s
-entine	s
-enton	s
-entone	s
-entrace	s
-entrainmen	s
-entrials	s
-enuncable	s
-enurologic	s
-enurology	s
-enuse	s
-environmently	s
-envoice	s
-envyable	s
-enways	s
-enwin	s
-enwise	s
-enwish	s
-erism	s
-erist	s
-errings	s
-exasperator	s
-exemptor	s
-exitedly	s
-exitingly	s
-exless	s
-expelment	s
-extolable	s
-faince	s
-faincy	s
-fairism	s
-faringly	s
-fating	s
-fatteringly	s
-feebles	s
-fibberize	s
-fictionless	s
-fiendless	s
-fileder	s
-filingly	s
-fineder	s
-firless	s
-fleeingly	s
-fleeingness	s
-fleshness	s
-Floridan	s
-foggyism	s
-fondering	s
-fontless	s
-fraility	s
-frizzness	s
-frustrator	s
-fugality	s
-funless	s
-fussilier	s
-galless	s
-gamer	s
-gamest	s
-gamist	s
-gappingly	s
-garless	s
-gayity	s
-gentlity	s
-geograph	s
-geoism	s
-geolo	s
-geolog	s
-geome	s
-geomeeter	s
-geomerize	s
-geospecies	s
-geotaxi	s
-geotrophic	s
-geotype	s
-geotypic	s
-Ghanan	s
-gibering	s
-gigatic	s
-giltless	s
-ginless	s
-governmently	s
-gradator	s
-groundkeeper	s
-hafting	s
-halering	s
-haless	s
-halingly	s
-hamless	s
-handist	s
-hankless	s
-hareder	s
-hartless	s
-heathful	s
-heatlessly	s
-heavyest	s
-hesitator	s
-hidering	s
-highlier	s
-highlyer	s
-hillingly	s
-hoelessly	s
-hoering	s
-holering	s
-homeness	s
-homist	s
-hopless	s
-huntingly	s
-hypergo	s
-hypermeeter	s
-hyperpea	s
-hypertropic	s
-idlely	s
-idlize	s
-immoderated	s
-impressable	s
-incidently	s
-incompleted	s
-indictive	s
-indictor	s
-infarctor	s
-infertilised	s
-infertilized	s
-inflictor	s
-inless	s
-intence	s
-interable	s
-interale	s
-interally	s
-interate	s
-intered	s
-interelate	s
-interere	s
-interfree	s
-intergal	s
-intergreen	s
-interhanger	s
-intering	s
-interink	s
-interism	s
-interjet	s
-interkill	s
-interland	s
-interlay	s
-interlead	s
-interpant	s
-interpay	s
-interpert	s
-interplan	s
-interplat	s
-interplate	s
-interpled	s
-interposse	s
-interrest	s
-interret	s
-interrig	s
-interruptor	s
-interset	s
-intership	s
-intersting	s
-intertil	s
-intertine	s
-interuse	s
-intervie	s
-interwave	s
-intimator	s
-intraact	s
-intracable	s
-intrado	s
-intradoes	s
-intradose	s
-intralumber	s
-intratable	s
-ionical	s
-irelike	s
-isoate	s
-isodoe	s
-isodoes	s
-isohell	s
-isolent	s
-isolo	s
-isologe	s
-isomuch	s
-isoon	s
-isostay	s
-isotoe	s
-isotop	s
-isotoy	s
-itless	s
-joinedly	s
-joinedness	s
-jugship	s
-killeder	s
-kilolitter	s
-kilomeeter	s
-kiloohm	s
-kiloon	s
-labilize	s
-lacement	s
-lacism	s
-lacize	s
-laless	s
-lambering	s
-lancingly	s
-lashingly	s
-latedly	s
-latterize	s
-layed	s
-lealess	s
-leanedly	s
-leanedness	s
-leanliness	s
-leasingly	s
-leasingness	s
-liably	s
-lieless	s
-lifes	s
-lightinged	s
-lightingly	s
-linkering	s
-listering	s
-literatism	s
-livering	s
-locator	s
-lonize	s
-loserly	s
-lowerless	s
-loyality	s
-lusthood	s
-macerator	s
-magnetomeeter	s
-magnetoon	s
-maidships	s
-mangership	s
-manness	s
-mans	s
-marblize	s
-mazing	s
-meanering	s
-meanism	s
-meanist	s
-meanize	s
-megalit	s
-megaohm	s
-megaon	s
-megaphon	s
-megasore	s
-mendering	s
-merer	s
-merist	s
-messiers	s
-metaale	s
-metacarps	s
-metadon	s
-metadone	s
-metaenter	s
-metaere	s
-metalit	s
-metaman	s
-metastale	s
-metatable	s
-metathese	s
-metawork	s
-microbail	s
-microchasm	s
-microere	s
-micromeeter	s
-micromicro	s
-microomicron	s
-microon	s
-microphon	s
-microsore	s
-midash	s
-midding	s
-midenhair	s
-midenhead	s
-midenhood	s
-midgee	s
-midhood	s
-midinter	s
-midion	s
-midless	s
-midrashism	s
-midseal	s
-midseed	s
-mileless	s
-milliad	s
-millicure	s
-milliion	s
-millilamber	s
-millilitter	s
-millime	s
-millimeeter	s
-millimicro	s
-millinee	s
-milliray	s
-mineder	s
-miningly	s
-misall	s
-misate	s
-misband	s
-misdeme	s
-misding	s
-miserr	s
-mishash	s
-mishater	s
-mision	s
-misisle	s
-misjoiner	s
-mismath	s
-mismatte	s
-mispent	s
-misply	s
-misprison	s
-misreate	s
-misred	s
-misreere	s
-misrepot	s
-missign	s
-missin	s
-missively	s
-missivity	s
-misslay	s
-misson	s
-missplay	s
-misstake	s
-missteep	s
-misteak	s
-misteat	s
-misthin	s
-mistie	s
-mistil	s
-mistine	s
-mistrail	s
-monocord	s
-monodial	s
-monodram	s
-monofill	s
-monofish	s
-monoflower	s
-monolet	s
-monolight	s
-monoline	s
-monolit	s
-monolo	s
-monologe	s
-monomail	s
-monomeeter	s
-monometalism	s
-monometalit	s
-monoocular	s
-monoon	s
-monooxide	s
-monopane	s
-monophon	s
-monoplan	s
-monoply	s
-monopodia	s
-monopolitic	s
-monorat	s
-monorise	s
-monoseed	s
-monoset	s
-monoson	s
-monostruck	s
-monotin	s
-monotoe	s
-monoton	s
-monotoy	s
-monotree	s
-monounclear	s
-morningly	s
-mostness	s
-motionality	s
-motionalize	s
-multilet	s
-multiliable	s
-multiold	s
-multipie	s
-multiunclear	s
-musering	s
-naivism	s
-naivist	s
-naivity	s
-nanouncement	s
-nicering	s
-nickers	s
-nightliness	s
-nobless	s
-nonate	s
-nonporting	s
-nonpro	s
-nonsit	s
-nonsue	s
-nontime	s
-nontop	s
-nonviolet	s
-notingness	s
-novelity	s
-nuless	s
-objetless	s
-ocularity	s
-oilingly	s
-oldering	s
-onless	s
-otherless	s
-outache	s
-outall	s
-outbe	s
-outbeak	s
-outbond	s
-outcase	s
-outcure	s
-outerr	s
-outfiled	s
-outher	s
-outhie	s
-outlow	s
-outmath	s
-outodor	s
-outon	s
-outpatent	s
-outpeak	s
-outpent	s
-outply	s
-outpot	s
-outremost	s
-outsand	s
-outsay	s
-outsent	s
-outshoo	s
-outsine	s
-outtrance	s
-outtrip	s
-outwar	s
-outwin	s
-overaster	s
-overbaring	s
-overbe	s
-overcasing	s
-overcloths	s
-overcot	s
-overdive	s
-overdoe	s
-overdoes	s
-overfight	s
-overhat	s
-overher	s
-overinter	s
-overize	s
-overlaugh	s
-overlet	s
-overlip	s
-overlog	s
-overlow	s
-overmath	s
-overness	s
-overply	s
-overrage	s
-overraw	s
-overring	s
-overrip	s
-overroof	s
-overruse	s
-oversay	s
-oversend	s
-overshoo	s
-oversue	s
-overtie	s
-overtoe	s
-overton	s
-overtrue	s
-overwar	s
-overwin	s
-ovinely	s
-ovinity	s
-ownly	s
-paceless	s
-painist	s
-palatalness	s
-palering	s
-palist	s
-palness	s
-paperism	s
-paperize	s
-paraly	s
-paralyer	s
-parascope	s
-paringly	s
-partingly	s
-partist	s
-partness	s
-patence	s
-patless	s
-payerful	s
-peachingly	s
-pearize	s
-peculative	s
-peeless	s
-penality	s
-pently	s
-perfector	s
-photoamp	s
-photodram	s
-photogee	s
-photolash	s
-photolay	s
-photolit	s
-photomeeter	s
-photomissive	s
-photoon	s
-photopay	s
-photoply	s
-phototaxi	s
-phototub	s
-pickering	s
-picograph	s
-picolo	s
-picotoxin	s
-picotrial	s
-piecingly	s
-piking	s
-pinerlike	s
-pintless	s
-pithed	s
-pitless	s
-placator	s
-plaincy	s
-plainize	s
-plantful	s
-plyer	s
-polyamid	s
-polybaste	s
-polygal	s
-polygee	s
-polygo	s
-polygot	s
-polymat	s
-polynee	s
-polyon	s
-polypay	s
-polypea	s
-polyphon	s
-polypie	s
-polypied	s
-polypod	s
-polystyler	s
-polytropic	s
-polyviny	s
-poringly	s
-portive	s
-poserity	s
-preable	s
-preacid	s
-preadd	s
-preadventure	s
-preage	s
-prealter	s
-preambulate	s
-preare	s
-preate	s
-prebed	s
-prebenday	s
-preborate	s
-prebred	s
-precave	s
-precent	s
-precenter	s
-preceptiveness	s
-preceptivity	s
-prechance	s
-precisity	s
-precore	s
-precutaneous	s
-predater	s
-predie	s
-predue	s
-predurability	s
-predurable	s
-preeat	s
-preelate	s
-preennation	s
-preenter	s
-preentice	s
-preerred	s
-preerring	s
-preferrable	s
-prefight	s
-prefoliate	s
-preforce	s
-prefuse	s
-prefusion	s
-pregable	s
-prehap	s
-prehat	s
-preiodic	s
-prejure	s
-prejury	s
-prelay	s
-prelet	s
-premediate	s
-premere	s
-premillennia	s
-premission	s
-premum	s
-premutation	s
-premute	s
-prenee	s
-prenice	s
-preorate	s
-preoxide	s
-prepens	s
-prepent	s
-preposses	s
-preprate	s
-presee	s
-presense	s
-presetment	s
-presever	s
-presevere	s
-presing	s
-preson	s
-presore	s
-prespire	s
-presuably	s
-presuasion	s
-presue	s
-presure	s
-preteat	s
-pretee	s
-pretic	s
-pretress	s
-preuse	s
-prevariate	s
-prevenative	s
-preverse	s
-preversion	s
-previe	s
-previes	s
-previle	s
-priedful	s
-prims	s
-properity	s
-prorator	s
-proveder	s
-pryerful	s
-pseudocap	s
-psychodram	s
-psycholog	s
-psychomoor	s
-publical	s
-queerist	s
-raceful	s
-raceless	s
-rackless	s
-radialism	s
-radialness	s
-ragedly	s
-ragedness	s
-ramless	s
-ranchless	s
-rangerize	s
-rapingly	s
-ratful	s
-ratingly	s
-raveless	s
-reable	s
-reachment	s
-readd	s
-readolescent	s
-reair	s
-reairman	s
-reall	s
-realter	s
-reamble	s
-reamless	s
-reamp	s
-reash	s
-reate	s
-reatomic	s
-reaxial	s
-rebe	s
-rebend	s
-reboat	s
-rebuck	s
-recancerous	s
-recape	s
-recensor	s
-reclinical	s
-recloth	s
-recoat	s
-reconcert	s
-reconscious	s
-recorer	s
-recoring	s
-recot	s
-recoven	s
-recritical	s
-rectalist	s
-recup	s
-recurate	s
-recuring	s
-recursor	s
-recursory	s
-redation	s
-redator	s
-reday	s
-redecease	s
-redeme	s
-reden	s
-redestinate	s
-redestine	s
-redie	s
-reding	s
-redominant	s
-redominate	s
-redue	s
-reease	s
-reeat	s
-reeject	s
-reelate	s
-reeminent	s
-reemission	s
-reenback	s
-reenbelt	s
-reenfly	s
-reenhorn	s
-reenhouse	s
-reenlet	s
-reennet	s
-reenounce	s
-reenovate	s
-reenown	s
-reenroom	s
-reensand	s
-reensick	s
-reentable	s
-reentier	s
-reenwood	s
-reere	s
-reerr	s
-reester	s
-reevocation	s
-reevolve	s
-reexist	s
-reexistent	s
-refact	s
-refeel	s
-refish	s
-reflight	s
-refoil	s
-reformator	s
-reformulae	s
-refree	s
-refreshmen	s
-refrontal	s
-refuss	s
-regala	s
-regar	s
-regelatin	s
-reget	s
-rego	s
-regot	s
-regrad	s
-reguard	s
-rehistoric	s
-rehistory	s
-reignedly	s
-reignedness	s
-reineder	s
-reion	s
-reisle	s
-rejector	s
-rejet	s
-rejoiner	s
-rejudicial	s
-rejudicious	s
-reknown	s
-relacement	s
-relacy	s
-relain	s
-relase	s
-relately	s
-relateness	s
-releader	s
-releg	s
-relet	s
-relibation	s
-relife	s
-relint	s
-relo	s
-relong	s
-relow	s
-remad	s
-remaineder	s
-remakableness	s
-remakably	s
-remane	s
-remath	s
-remature	s
-reme	s
-remedian	s
-remedical	s
-remembrane	s
-remenstrual	s
-remillenarian	s
-remillennial	s
-remin	s
-remindering	s
-reminer	s
-remix	s
-remode	s
-remolar	s
-remunition	s
-renail	s
-renatal	s
-renation	s
-reness	s
-renet	s
-renonwed	s
-renotion	s
-reoilless	s
-reon	s
-reorbital	s
-reounce	s
-reout	s
-reovate	s
-reover	s
-repal	s
-repant	s
-repare	s
-repate	s
-repayed	s
-repea	s
-repenitent	s
-repie	s
-repositional	s
-repositive	s
-reposse	s
-reposses	s
-repot	s
-repotent	s
-reprate	s
-represet	s
-repressable	s
-represser	s
-repuberty	s
-repuce	s
-requiet	s
-rerant	s
-reresent	s
-reret	s
-rerise	s
-reschool	s
-rescription	s
-resea	s
-resectableness	s
-resectably	s
-resentable	s
-resentiment	s
-resetment	s
-reshipmen	s
-resing	s
-resinus	s
-reskin	s
-reson	s
-resore	s
-restainedly	s
-resternum	s
-retact	s
-retally	s
-retart	s
-retchedly	s
-retchedness	s
-reteat	s
-retee	s
-reteem	s
-reteen	s
-retendedly	s
-retenor	s
-retense	s
-retensionless	s
-reterminal	s
-retiedly	s
-retiedness	s
-retier	s
-retine	s
-reton	s
-retop	s
-retrail	s
-retrainedly	s
-retubercular	s
-retuberculous	s
-retypify	s
-reuntie	s
-revalent	s
-revest	s
-revets	s
-revi	s
-revice	s
-revisioning	s
-revocalic	s
-rewar	s
-rewin	s
-rewood	s
-rewrier	s
-reyard	s
-riceless	s
-ridging	s
-riftingly	s
-rookedly	s
-rookedness	s
-rootism	s
-rootize	s
-roperly	s
-rotless	s
-roundity	s
-roundless	s
-royality	s
-rudity	s
-ruedly	s
-ruedness	s
-ruffness	s
-ruism	s
-rumbliness	s
-rutlessly	s
-saddism	s
-saddist	s
-saggering	s
-saintize	s
-salvering	s
-sandering	s
-sarcophaguses	s
-sateless	s
-satinlessly	s
-savering	s
-sealess	s
-seamship	s
-seeless	s
-seeliness	s
-seepingness	s
-seepless	s
-semially	s
-semiannul	s
-semiate	s
-semibasemen	s
-semido	s
-semidoe	s
-semiiterate	s
-semikilled	s
-semilo	s
-semilobular	s
-semimate	s
-semimost	s
-semipalate	s
-semirailer	s
-semitailer	s
-semitic	s
-semitoe	s
-semiton	s
-semiwood	s
-semiwork	s
-senation	s
-sensative	s
-septicism	s
-seriatism	s
-severality	s
-shadless	s
-shamless	s
-sickering	s
-sightingly	s
-sightness	s
-siltedly	s
-silverness	s
-sineless	s
-singless	s
-sinnister	s
-sliering	s
-sliliness	s
-sliness	s
-slipperness	s
-smoothering	s
-soless	s
-solization	s
-solublize	s
-sonlessly	s
-soothness	s
-sootingly	s
-sootingness	s
-sopless	s
-southerism	s
-sovereignity	s
-spaless	s
-sparity	s
-spectraless	s
-spoonist	s
-spyed	s
-spyer	s
-stablize	s
-stagering	s
-startingly	s
-staticism	s
-stereoate	s
-stereocopy	s
-stereoism	s
-stereoisoerism	s
-stereophon	s
-stereopsi	s
-stereotaxi	s
-stereotoy	s
-sticked	s
-storyed	s
-stripless	s
-styed	s
-styeless	s
-subale	s
-subalter	s
-subare	s
-subate	s
-subbasemen	s
-subborn	s
-subcute	s
-subcuts	s
-subease	s
-subere	s
-suberr	s
-subgent	s
-subgrad	s
-subjet	s
-sublase	s
-sublesser	s
-sublumber	s
-submedian	s
-submere	s
-subness	s
-subnonnet	s
-suboil	s
-subon	s
-suboration	s
-subpot	s
-subrub	s
-subsee	s
-subseer	s
-subsit	s
-subsizer	s
-substative	s
-subsue	s
-subtact	s
-subtee	s
-subtie	s
-subtill	s
-subtlely	s
-subtlity	s
-subtlize	s
-subtractor	s
-subvet	s
-superad	s
-superale	s
-superally	s
-superalter	s
-superbound	s
-supercede	s
-supereat	s
-supergo	s
-superhat	s
-superme	s
-superposse	s
-superring	s
-supersee	s
-superseed	s
-supersensor	s
-supertaker	s
-supervie	s
-supervies	s
-supplable	s
-supples	s
-tackless	s
-tamering	s
-tappering	s
-tarter	s
-tatless	s
-teethering	s
-teleaster	s
-teleautograph	s
-telecase	s
-telecephalic	s
-teledyne	s
-teleencephalic	s
-telelay	s
-telelogic	s
-telemeeter	s
-telenet	s
-telepay	s
-teleply	s
-teleton	s
-televie	s
-televies	s
-temperamently	s
-temperment	s
-tenless	s
-terado	s
-terapin	s
-testment	s
-thermoability	s
-thermocoupe	s
-thermomeeter	s
-thermopie	s
-thermostale	s
-thermotable	s
-thermotaxi	s
-thermounclear	s
-tical	s
-tiedly	s
-tiedness	s
-tierlessly	s
-tierlessness	s
-tightist	s
-tilering	s
-tilist	s
-tility	s
-tineder	s
-toelessly	s
-tonless	s
-toppering	s
-torpedos	s
-totering	s
-triablism	s
-tripeless	s
-truely	s
-tuffless	s
-tunless	s
-ultrashot	s
-ultrasit	s
-ultrasort	s
-umberless	s
-unabased	s
-unad	s
-unage	s
-unair	s
-unale	s
-unallyed	s
-unash	s
-unate	s
-unaxial	s
-unbeds	s
-unboard	s
-unbreed	s
-unbushing	s
-uncant	s
-uncasingly	s
-uncaste	s
-uncellular	s
-unchase	s
-uncompletion	s
-uncorporate	s
-uncoupe	s
-uncrew	s
-unctive	s
-uncycle	s
-unday	s
-undeed	s
-underbell	s
-underbreed	s
-underbush	s
-undercloths	s
-undercore	s
-undercot	s
-underdoe	s
-undergradate	s
-underhead	s
-underkind	s
-underneat	s
-underover	s
-underpayed	s
-underpining	s
-underply	s
-underpot	s
-underrage	s
-underraw	s
-underred	s
-underrip	s
-underround	s
-underrush	s
-undersand	s
-underseed	s
-undershoo	s
-undersin	s
-underson	s
-undertoe	s
-underwar	s
-underwast	s
-underweigh	s
-underwin	s
-underwoo	s
-underword	s
-underwrier	s
-undevaluation	s
-undial	s
-undie	s
-unding	s
-undisposition	s
-undog	s
-undoor	s
-undown	s
-undries	s
-undry	s
-uneasing	s
-unere	s
-unermine	s
-unether	s
-unevil	s
-unfairy	s
-unfare	s
-unfest	s
-unfield	s
-unfiling	s
-unfinity	s
-unfire	s
-unflame	s
-unflux	s
-unformation	s
-ungal	s
-ungent	s
-ungo	s
-ungoes	s
-ungrid	s
-unhard	s
-unholding	s
-unhumanity	s
-unice	s
-unive	s
-unjure	s
-unken	s
-unkin	s
-unlater	s
-unlateral	s
-unleanly	s
-unleanness	s
-unlose	s
-unmane	s
-unmetal	s
-unoff	s
-unon	s
-unover	s
-unparing	s
-unpasse	s
-unpeak	s
-unpeasant	s
-unperception	s
-unpie	s
-unpod	s
-unpolar	s
-unpowder	s
-unput	s
-unrace	s
-unrape	s
-unred	s
-unreson	s
-unret	s
-unrise	s
-unrunner	s
-unrunning	s
-unsap	s
-unsavoy	s
-unscription	s
-unsea	s
-unsect	s
-unshot	s
-unside	s
-unslinger	s
-unslinging	s
-unson	s
-unstroke	s
-untable	s
-untact	s
-untake	s
-untech	s
-unteether	s
-untestate	s
-untill	s
-untine	s
-unvalent	s
-unvice	s
-unviolate	s
-unward	s
-unway	s
-unworth	s
-unwry	s
-usering	s
-usingly	s
-valeless	s
-vicelessly	s
-vilist	s
-vocator	s
-voidably	s
-voltmetric	s
-vowedly	s
-waggering	s
-waninged	s
-wans	s
-wearless	s
-weighless	s
-westerize	s
-wholism	s
-wholist	s
-widerness	s
-wineder	s
-winingly	s
-wokless	s
-wries	s
-wriness	s
-yeless	s