Class com.markwatson.nlbean.ATN

public class com.markwatson.nlbean.ATN
implements Serializable

Attributes

static final int AP = 920

static final int AT = 8

static final int CC = 62

static final int CD = 64

static final int CL = 998

static final int CS = 9

static final int DT = 37

private final String[] FAIL = {"^"}

static final int IN = 930

static final int JJ = 1

private final int MAX_WORDS = 10000

static final int MD = 67

static final int NN = 3

static final int NNS = 31

static final int NP = 32

static final int NU = 945

static final int OD = 955

static final int PN = 7

static final int PP = 731

static final int RB = 2

static final int RP = 6

static final int TB = 999

static final int TO = 68

static final int UH = 940

static final int VB = 4

static final int VBD = 41

static final int VBG = 43

static final int VBN = 44

static final int VBZ = 42

static final int WDT = 66

private final int WHAT = 1

private final int WHERE = 2

private final int WHY = 3

static final int WPS = 38

static final int WRB = 5

public String[] allWords = null

public DBInfo dbinfo = null

private int depth = 0

private java.util.Hashtable lexicon = null

public int numWords = 0

int p_count = 3820

static final short[] p_pos = { 8, 4, 3, 3, 3, 31, 42, 4, 42, 3, 4, 930, 2, 6, 3, 4, 1, 4, 41, 44, 3, 43, 3, 3, 31, 42, 4, 1, 3, 31, 3, 44, 4, 3, 4, 9, 930, 31, 3, 31, 4, 3, 31, 1, 2, 4, 3, 1, 2, 2, 2, 2, 930, 3, 4, 8, 4, 62, 3, 1, 3, 2, 37, 3, 4, 2, 2, 3, 31, 1, 4, 1, 3, 31, 4, 3, 31, 3, 31, 4, 41, 44, 1, 4, 41, 2, 3, 31, 3, 31, 930, 2, 4, 3, 3, 31, 9, 4, 4, 3, 31, 4, 4, 43, 930, 4, 41, 3, 3, 3, 3, 4, 43, 3, 31, 3, 3, 31, 4, 31, 3, 3, 1, 3, 31, 31, 3, 3, 1, 1, 3, 4, 2, 1, 3, 2, 4, 3, 3, 31, 3, 4, 3, 3, 31, 31, 1, 3, 44, 3, 1, 3, 3, 41, 9, 2, 4, 44, 42, 3, 43, 9, 930, 2, 4, 42, 930, 3, 2, 4, 42, 930, 2, 3, 3, 31, 930, 1, 2, 1, 1, 1, 3, 31, 1, 3, 1, 3, 3, 31, 3, 31, 31, 3, 3, 44, 3, 3, 31, 31, 3, 3, 3, 31, 1, 3, 41, 44, 3, 4, 31, 3, 31, 1, 3, 31, 1, 3, 3, 31, 3, 3, 31, 1, 3, 3, 31, 3, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 62, 2, 3, 3, 31, 3, 3, 31, 3, 31, 4, 3, 31, 3, 31, 3, 3, 31, 3, 31, 41, 67, 3, 4, 3, 42, 3, 1, 3, 31, 3, 3, 31, 4, 31, 31, 31, 3, 4, 3, 3, 3, 41, 44, 3, 1, 3, 4, 41, 44, 1, 31, 1, 3, 31, 4, 3, 31, 4, 41, 42, 43, 3, 31, 3, 3, 4, 41, 44, 31, 42, 43, 3, 4, 41, 44, 3, 43, 31, 42, 3, 31, 1, 3, 4, 43, 3, 3, 4, 3, 4, 31, 31, 4, 43, 3, 31, 3, 31, 3, 31, 3, 31, 1, 3, 2, 4, 41, 44, 3, 43, 3, 3, 31, 3, 4, 31, 3, 4, 44, 31, 43, 3, 4, 4, 41, 44, 31, 42, 3, 31, 3, 4, 3, 44, 3, 31, 3, 31, 3, 4, 41, 44, 42, 43, 4, 44, 42, 3, 43, 4, 31, 42, 3, 4, 3, 1, 3, 2, 1, 4, 42, 1, 3, 2, 3, 31, 3, 1, 4, 41, 44, 42, 43, 3, 4, 44, 42, 4, 41, 42, 43, 4, 3, 31, 3, 31, 4, 44, 3, 31, 42, 3, 4, 1, 31, 3, 31, 4, 41, 44, 43, 3, 31, 42, 4, 41, 44, 42, 1, 3, 3, 31, 4, 41, 44, 43, 42, 1, 3, 4, 31, 3, 31, 3, 4, 41, 44, 31, 42, 1, 3, 4, 44, 43, 3, 3, 4, 43, 1, 3, 31, 3, 4, 41, 44, 3, 43, 31, 42, 3, 4, 41, 44, 2, 4, 43, 31, 42, 3, 3, 3, 4, 41, 44, 31, 31, 42, 1, 31, 3, 1, 3, 2, 3, 31, 3, 31, 3, 44, 31, 42, 3, 31, 3, 31, 3, 31, 32, 4, 3, 3, 1, 31, 3, 31, 4, 41, 44, 42, 3, 31, 4, 3, 4, 3, 4, 1, 4, 41, 44, 42, 43, 4, 4, 3, 1, 31, 3, 31, 4, 1, 3, 31, 42, 3, 4, 44, 31, 31, 3, 3, 31, 3, 31, 3, 4, 41, 44, 42, 43, 3, 31, 1, 3, 4, 41, 44, 3, 43, 31, 42, 3, 31, 4, 41, 44, 3, 4, 44, 31, 4, 4, 4, 3, 31, 43, 3, 1, 31, 42, 31, 3, 4, 41, 44, 3, 31, 1, 4, 42, 1, 31, 3, 1, 3, 4, 1, 1, 2, 4, 2, 3, 31, 3, 42, 31, 3, 4, 44, 43, 3, 31, 4, 41, 44, 3, 31, 4, 41, 44, 42, 3, 31, 3, 4, 41, 31, 4, 41, 44, 42, 4, 41, 44, 42, 43, 3, 31, 4, 3, 4, 41, 44, 43, 31, 42, 3, 4, 44, 31, 42, 44, 4, 3, 4, 3, 31, 1, 2, 1, 4, 41, 44, 3, 31, 3, 1, 4, 44, 43, 4, 4, 41, 44, 3, 31, 31, 3, 4, 3, 41, 44, 31, 3, 43, 3, 31, 3, 31, 3, 31, 1, 1, 3, 2, 1, 3, 4, 44, 3, 3, 930, 37, 1, 2, 1, 1, 2, 4, 41, 44, 43, 31, 42, 1, 1, 3, 4, 41, 44, 3, 43, 3, 4, 1, 1, 2, 64, 64, 955, 62, 64, 955, 4, 2, 3, 4, 41, 44, 3, 31, 3, 31, 3, 42, 1, 4, 41, 44, 41, 44, 42, 3, 3, 4, 41, 44, 3, 43, 31, 42, 3, 3, 43, 31, 31, 920, 2, 4, 41, 44, 42, 1, 31, 3, 3, 3, 31, 3, 3, 31, 1, 3, 4, 3, 2, 31, 42, 4, 3, 31, 1, 2, 3, 1, 3, 4, 44, 43, 3, 31, 4, 41, 44, 3, 3, 4, 41, 44, 31, 42, 43, 3, 4, 44, 43, 3, 31, 1, 2, 4, 2, 3, 31, 2, 8, 1, 41, 4, 41, 44, 42, 3, 31, 4, 41, 44, 42, 930, 2, 4, 3, 1, 2, 31, 1, 3, 3, 4, 41, 44, 4, 44, 42, 930, 43, 3, 31, 3, 1, 3, 31, 1, 4, 3, 31, 4, 41, 44, 3, 1, 3, 43, 42, 3, 42, 4, 41, 44, 43, 42, 4, 41, 44, 4, 1, 3, 31, 3, 31, 1, 1, 3, 31, 4, 41, 44, 43, 42, 1, 3, 4, 41, 44, 42, 43, 3, 2, 1, 31, 3, 4, 44, 42, 31, 3, 3, 31, 1, 4, 41, 44, 1, 1, 2, 2, 1, 2, 1, 3, 2, 4, 1, 2, 1, 2, 3, 31, 1, 1, 2, 3, 4, 41, 44, 31, 42, 32, 3, 31, 1, 3, 31, 920, 920, 1, 3, 4, 31, 42, 64, 955, 955, 2, 64, 3, 4, 41, 44, 31, 42, 3, 4, 41, 44, 31, 42, 920, 1, 3, 3, 4, 44, 31, 1, 2, 3, 4, 42, 1, 3, 955, 2, 1, 1, 3, 4, 41, 44, 31, 42, 41, 44, 64, 3, 4, 3, 4, 1, 3, 2, 3, 3, 31, 3, 4, 41, 44, 42, 43, 31, 3, 31, 3, 3, 31, 930, 3, 4, 44, 31, 1, 4, 3, 4, 3, 31, 920, 2, 31, 42, 3, 2, 3, 31, 64, 1, 2, 4, 41, 44, 64, 64, 955, 955, 2, 3, 1, 31, 3, 4, 41, 44, 31, 3, 1, 2, 4, 3, 31, 3, 1, 4, 2, 930, 1, 3, 2, 3, 4, 1, 3, 3, 43, 31, 42, 1, 3, 3, 31, 3, 4, 41, 44, 3, 43, 31, 42, 3, 31, 41, 1, 3, 4, 41, 44, 42, 43, 4, 42, 3, 43, 3, 31, 3, 4, 44, 42, 3, 43, 3, 3, 4, 3, 31, 42, 3, 43, 44, 1, 3, 2, 31, 41, 44, 3, 44, 31, 43, 1, 2, 3, 31, 3, 4, 31, 3, 44, 1, 31, 1, 3, 1, 43, 1, 2, 1, 1, 1, 3, 1, 3, 3, 3, 4, 44, 43, 31, 31, 3, 4, 41, 44, 3, 4, 31, 31, 42, 3, 4, 31, 4, 42, 1, 2, 1, 2, 1, 2, 3, 731, 3, 4, 41, 44, 3, 3, 43, 31, 3, 31, 41, 44, 3, 940, 4, 41, 44, 731, 2, 41, 44, 3, 4, 31, 42, 31, 3, 1, 3, 2, 1, 2, 1, 2, 3, 4, 3, 43, 31, 31, 42, 3, 4, 31, 3, 31, 3, 4, 31, 31, 3, 31, 1, 3, 1, 31, 3, 4, 31, 42, 3, 5, 2, 64, 1, 2, 9, 1, 2, 4, 43, 3, 1, 2, 41, 2, 4, 41, 44, 3, 42, 43, 930, 31, 3, 1, 3, 3, 31, 3, 41, 31, 4, 41, 44, 42, 930, 43, 1, 3, 31, 1, 1, 2, 1, 3, 4, 41, 44, 31, 42, 43, 2, 1, 4, 41, 44, 43, 42, 1, 2, 3, 4, 31, 3, 43, 4, 41, 44, 42, 43, 3, 31, 1, 3, 31, 1, 2, 920, 1, 3, 2, 31, 1, 1, 31, 3, 1, 4, 3, 1, 3, 41, 44, 1, 3, 4, 44, 3, 3, 4, 1, 4, 3, 1, 41, 44, 42, 1, 2, 1, 44, 2, 31, 4, 41, 44, 3, 1, 3, 31, 3, 1, 3, 4, 41, 44, 3, 31, 31, 930, 1, 3, 2, 4, 41, 44, 3, 31, 4, 3, 31, 41, 44, 43, 3, 31, 3, 31, 2, 3, 4, 41, 3, 1, 4, 41, 44, 43, 3, 1, 31, 1, 3, 31, 42, 3, 31, 3, 4, 41, 44, 42, 4, 41, 44, 43, 42, 1, 3, 3, 1, 31, 4, 43, 3, 31, 42, 44, 3, 1, 44, 1, 2, 31, 42, 1, 3, 1, 1, 2, 1, 3, 2, 4, 3, 31, 41, 44, 42, 44, 4, 3, 31, 4, 43, 3, 3, 31, 930, 4, 41, 44, 42, 3, 31, 1, 1, 3, 4, 44, 31, 3, 4, 4, 44, 43, 3, 31, 3, 31, 31, 4, 41, 44, 42, 930, 43, 1, 3, 4, 41, 44, 31, 42, 43, 731, 731, 3, 3, 44, 43, 31, 32, 4, 41, 44, 43, 42, 1, 3, 2, 32, 3, 4, 41, 44, 31, 42, 32, 3, 4, 3, 43, 41, 44, 1, 3, 4, 31, 3, 31, 3, 4, 3, 44, 3, 3, 4, 41, 44, 43, 31, 42, 3, 4, 3, 31, 3, 4, 1, 3, 2, 2, 1, 1, 920, 2, 4, 1, 43, 2, 1, 2, 2, 1, 2, 1, 3, 1, 31, 3, 31, 3, 31, 1, 4, 41, 3, 31, 3, 4, 3, 31, 31, 42, 4, 1, 41, 44, 3, 43, 42, 920, 3, 4, 3, 31, 1, 3, 41, 44, 1, 3, 44, 2, 4, 3, 43, 42, 41, 44, 920, 4, 41, 44, 42, 920, 1, 3, 4, 41, 44, 42, 3, 43, 1, 3, 4, 31, 42, 3, 3, 4, 44, 31, 3, 31, 9, 4, 41, 44, 31, 42, 3, 4, 3, 31, 41, 44, 43, 31, 42, 3, 4, 41, 44, 42, 3, 4, 41, 44, 3, 43, 31, 31, 42, 920, 1, 3, 44, 31, 4, 41, 44, 43, 3, 1, 2, 1, 2, 1, 3, 4, 41, 44, 1, 3, 43, 31, 42, 1, 3, 2, 1, 2, 4, 1, 3, 3, 31, 41, 44, 1, 3, 2, 4, 42, 1, 3, 4, 3, 3, 4, 3, 31, 31, 42, 3, 43, 1, 3, 31, 3, 4, 41, 44, 3, 3, 31, 42, 43, 1, 1, 3, 2, 31, 3, 4, 41, 44, 3, 31, 42, 3, 43, 920, 32, 3, 1, 2, 31, 1, 41, 44, 1, 1, 3, 4, 3, 4, 1, 3, 31, 3, 4, 44, 43, 1, 3, 67, 32, 731, 1, 3, 4, 3, 43, 3, 31, 42, 3, 4, 41, 44, 3, 31, 3, 4, 3, 43, 31, 31, 42, 3, 31, 3, 31, 3, 31, 3, 31, 31, 3, 4, 41, 44, 3, 43, 31, 42, 3, 43, 3, 31, 4, 41, 44, 3, 31, 42, 3, 43, 3, 31, 41, 44, 3, 3, 31, 1, 1, 3, 3, 3, 3, 31, 3, 31, 64, 31, 3, 4, 41, 44, 31, 3, 731, 1, 2, 4, 41, 44, 42, 43, 1, 3, 1, 3, 62, 930, 3, 1, 3, 31, 3, 4, 4, 1, 3, 4, 41, 44, 43, 1, 2, 31, 42, 3, 31, 44, 3, 31, 42, 4, 43, 1, 3, 3, 1, 2, 31, 920, 3, 31, 920, 3, 4, 920, 2, 1, 4, 43, 2, 731, 940, 731, 3, 4, 41, 44, 31, 42, 1, 930, 1, 2, 4, 1, 2, 930, 1, 2, 930, 1, 2, 43, 2, 1, 67, 3, 4, 41, 44, 43, 62, 2, 3, 31, 1, 2, 1, 1, 1, 3, 920, 930, 2, 3, 3, 2, 31, 64, 64, 955, 31, 955, 64, 955, 8, 2, 7, 3, 1, 2, 2, 1, 3, 1, 1, 1, 2, 1, 3, 3, 4, 41, 44, 31, 42, 7, 3, 4, 1, 31, 43, 3, 41, 44, 4, 43, 43, 3, 31, 3, 31, 32, 3, 2, 3, 4, 41, 44, 31, 42, 1, 1, 3, 4, 31, 42, 1, 4, 1, 2, 3, 3, 31, 3, 1, 31, 4, 3, 31, 42, 1, 930, 930, 6, 2, 1, 1, 1, 4, 42, 44, 43, 930, 9, 2, 64, 920, 2, 930, 1, 3, 2, 4, 3, 43, 930, 1, 3, 2, 3, 1, 31, 62, 3, 4, 41, 44, 3, 43, 31, 42, 3, 31, 920, 31, 2, 930, 6, 3, 4, 41, 44, 31, 42, 3, 930, 1, 6, 1, 1, 3, 2, 3, 4, 41, 44, 42, 43, 1, 4, 41, 44, 42, 3, 4, 44, 3, 3, 4, 31, 41, 44, 3, 4, 31, 3, 4, 1, 2, 3, 31, 3, 3, 4, 920, 930, 1, 3, 2, 3, 31, 3, 4, 44, 3, 4, 3, 3, 43, 3, 31, 3, 42, 31, 4, 930, 3, 3, 31, 4, 3, 1, 31, 31, 3, 4, 41, 44, 31, 42, 3, 4, 31, 3, 3, 4, 41, 44, 3, 31, 42, 3, 43, 3, 4, 31, 42, 62, 930, 3, 4, 31, 42, 3, 31, 3, 4, 44, 31, 1, 3, 2, 1, 2, 1, 3, 2, 3, 4, 31, 4, 3, 31, 41, 44, 43, 1, 3, 3, 31, 4, 920, 1, 2, 2, 3, 4, 44, 31, 3, 43, 1, 3, 1, 3, 1, 3, 31, 1, 2, 31, 3, 930, 1, 3, 3, 31, 3, 31, 4, 31, 42, 3, 4, 44, 31, 3, 43, 3, 3, 4, 41, 44, 3, 31, 3, 4, 3, 1, 2, 41, 44, 31, 3, 4, 3, 31, 31, 42, 31, 3, 3, 3, 31, 4, 41, 44, 42, 43, 1, 3, 3, 4, 41, 44, 31, 31, 42, 3, 43, 4, 41, 44, 42, 41, 44, 42, 4, 31, 3, 31, 3, 3, 3, 31, 31, 4, 41, 44, 42, 3, 31, 3, 4, 41, 1, 3, 41, 44, 31, 42, 3, 4, 44, 31, 42, 3, 43, 31, 3, 31, 3, 4, 4, 41, 44, 3, 43, 31, 42, 1, 4, 1, 3, 4, 3, 4, 41, 44, 42, 3, 31, 4, 41, 44, 42, 43, 1, 2, 1, 3, 31, 3, 4, 41, 44, 31, 42, 4, 1, 4, 41, 44, 3, 1, 43, 1, 3, 4, 41, 43, 3, 31, 4, 3, 31, 3, 31, 41, 44, 43, 42, 4, 4, 41, 44, 43, 42, 3, 44, 31, 3, 4, 41, 44, 930, 43, 2, 3, 1, 31, 1, 3, 2, 4, 44, 3, 42, 4, 41, 44, 43, 4, 41, 44, 3, 42, 43, 3, 3, 31, 1, 3, 2, 3, 4, 41, 44, 31, 42, 43, 1, 3, 1, 2, 4, 43, 4, 3, 41, 44, 43, 1, 3, 4, 41, 44, 42, 43, 4, 1, 3, 41, 44, 43, 3, 4, 44, 1, 3, 31, 44, 43, 31, 4, 4, 44, 3, 4, 41, 44, 31, 4, 1, 3, 3, 4, 4, 41, 44, 3, 31, 41, 44, 31, 42, 3, 4, 43, 3, 4, 41, 44, 31, 42, 4, 41, 44, 31, 42, 4, 41, 44, 3, 31, 42, 43, 3, 4, 41, 44, 31, 42, 43, 1, 4, 3, 31, 3, 1, 31, 3, 4, 3, 4, 4, 44, 3, 1, 42, 3, 4, 31, 42, 3, 4, 1, 3, 4, 3, 31, 4, 41, 4, 1, 3, 4, 41, 44, 31, 42, 3, 4, 41, 44, 1, 3, 1, 3, 4, 44, 42, 4, 41, 44, 43, 3, 1, 3, 31, 3, 4, 3, 4, 31, 3, 31, 3, 31, 3, 4, 31, 930, 1, 3, 2, 4, 3, 41, 31, 1, 3, 2, 31, 3, 4, 41, 44, 31, 42, 3, 4, 41, 44, 1, 3, 1, 31, 3, 3, 31, 920, 3, 4, 41, 44, 31, 3, 43, 930, 4, 41, 44, 42, 3, 43, 3, 4, 41, 3, 4, 41, 44, 31, 3, 43, 3, 4, 3, 1, 31, 3, 955, 2, 1, 2, 31, 1, 31, 3, 31, 1, 4, 41, 44, 2, 3, 43, 31, 3, 940, 4, 9, 43, 4, 41, 44, 1, 43, 42, 44, 42, 2, 1, 4, 41, 44, 43, 3, 31, 1, 2, 42, 3, 4, 3, 1, 3, 43, 42, 4, 3, 43, 42, 41, 44, 1, 4, 41, 44, 2, 42, 43, 3, 31, 32, 1, 3, 3, 31, 64, 955, 955, 64, 920, 3, 31, 3, 4, 41, 44, 31, 42, 3, 4, 41, 44, 3, 31, 31, 42, 731, 4, 3, 31, 41, 44, 3, 31, 3, 43, 3, 4, 31, 1, 2, 3, 4, 3, 43, 44, 31, 42, 1, 3, 44, 31, 3, 4, 31, 3, 4, 3, 31, 41, 44, 31, 42, 1, 31, 3, 1, 1, 9, 920, 1, 3, 4, 41, 44, 2, 1, 4, 3, 31, 42, 44, 3, 31, 64, 64, 955, 955, 64, 3, 4, 1, 41, 44, 31, 4, 41, 44, 43, 42, 1, 3, 1, 1, 9, 2, 41, 44, 1, 3, 2, 3, 31, 4, 41, 44, 42, 43, 2, 3, 31, 2, 2, 3, 2, 4, 41, 44, 43, 31, 3, 31, 1, 2, 1, 1, 1, 31, 44, 42, 4, 3, 31, 3, 4, 4, 3, 43, 42, 41, 44, 1, 3, 2, 4, 31, 1, 3, 4, 44, 43, 31, 31, 3, 31, 4, 1, 3, 44, 43, 31, 31, 42, 3, 4, 41, 44, 3, 43, 31, 42, 31, 3, 4, 41, 44, 3, 31, 31, 42, 43, 3, 1, 44, 31, 1, 31, 3, 3, 4, 3, 4, 31, 42, 3, 4, 3, 3, 31, 31, 41, 44, 3, 4, 41, 44, 43, 31, 42, 3, 3, 4, 41, 44, 31, 1, 2, 3, 31, 3, 3, 4, 31, 1, 2, 1, 1, 2, 3, 4, 44, 31, 3, 31, 3, 41, 44, 31, 3, 1, 3, 4, 31, 42, 4, 42, 4, 41, 44, 31, 31, 1, 3, 31, 4, 41, 44, 3, 1, 3, 4, 41, 44, 31, 43, 3, 31, 44, 4, 41, 44, 43, 3, 3, 31, 1, 1, 4, 1, 41, 44, 3, 31, 3, 4, 31, 42, 3, 4, 3, 31, 42, 1, 3, 41, 44, 4, 41, 44, 42, 43, 3, 3, 31, 1, 3, 4, 1, 1, 43, 31, 41, 44, 3, 31, 31, 42, 3, 4, 43, 3, 4, 41, 44, 43, 31, 42, 1, 2, 4, 1, 3, 1, 3, 31, 4, 41, 44, 43, 31, 3, 3, 4, 3, 31, 3, 1, 31, 1, 1, 3, 3, 31, 3, 1, 31, 3, 1, 2, 31, 3, 3, 4, 31, 3, 41, 44, 31, 3, 4, 44, 42, 3, 43, 3, 4, 3, 44, 31, 3, 31, 3, 31, 3, 4, 1, 3, 41, 44, 31, 3, 31, 4, 42, 3, 41, 43, 3, 31, 31, 3, 4, 1, 31, 2, 3, 31, 3, 3, 4, 41, 44, 31, 4, 1, 3, 43, 2, 1, 64, 3, 4, 4, 44, 31, 42, 3, 4, 41, 44, 3, 43, 31, 42, 3, 31, 9, 930, 9, 37, 8, 2, 2, 731, 3, 31, 3, 955, 2, 2, 31, 64, 955, 955, 64, 37, 64, 31, 930, 930, 2, 2, 3, 31, 3, 4, 41, 44, 31, 42, 3, 4, 41, 44, 1, 1, 2, 3, 41, 44, 31, 930, 68, 2, 3, 31, 41, 1, 3, 43, 31, 1, 3, 4, 3, 31, 1, 3, 4, 41, 44, 43, 31, 42, 930, 930, 1, 3, 4, 3, 4, 41, 44, 43, 31, 3, 31, 3, 4, 41, 44, 3, 31, 31, 42, 43, 3, 3, 4, 3, 4, 31, 42, 4, 3, 31, 3, 4, 3, 3, 41, 44, 43, 31, 42, 3, 3, 3, 4, 42, 44, 3, 3, 43, 3, 4, 41, 44, 43, 31, 41, 44, 43, 3, 31, 3, 31, 41, 44, 31, 42, 64, 3, 3, 3, 4, 1, 3, 41, 44, 41, 43, 31, 1, 3, 2, 1, 1, 3, 4, 3, 3, 4, 1, 43, 3, 4, 31, 42, 955, 64, 31, 64, 2, 64, 3, 4, 41, 44, 31, 1, 2, 4, 43, 1, 1, 1, 1, 1, 930, 1, 2, 930, 2, 1, 4, 1, 1, 3, 43, 42, 41, 44, 4, 44, 42, 3, 41, 1, 41, 4, 1, 3, 1, 1, 2, 1, 1, 1, 2, 31, 4, 43, 3, 31, 3, 3, 4, 41, 44, 42, 43, 31, 9, 1, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 9, 930, 1, 1, 1, 6, 1, 4, 44, 4, 44, 3, 43, 930, 2, 1, 1, 731, 1, 3, 3, 4, 41, 44, 1, 2, 3, 3, 31, 31, 42, 1, 43, 1, 2, 2, 31, 3, 1, 4, 41, 43, 3, 3, 3, 4, 41, 44, 31, 42, 1, 3, 31, 3, 41, 44, 44, 42, 31, 3, 920, 1, 4, 1, 43, 3, 31, 1, 3, 31, 3, 1, 2, 31, 3, 44, 4, 3, 3, 31, 930, 1, 2, 920, 1, 3, 3, 4, 41, 44, 3, 31, 43, 3, 31, 31, 42, 4, 41, 44, 42, 43, 3, 31, 1, 3, 3, 1, 2, 3, 3, 4, 41, 44, 43, 3, 31, 31, 42, 31, 3, 3, 1, 3, 3, 41, 44, 31, 1, 3, 42, 3, 31, 3, 4, 41, 44, 3, 31, 31, 42, 3, 43, 31, 43, 3, 31, 3, 3, 31, 3, 4, 31, 3, 4, 41, 44, 3, 43, 42, 4, 44, 3, 3, 4, 44, 31, 3, 4, 41, 44, 43, 31, 42, 31, 4, 3, 43, 42, 3, 3, 4, 41, 3, 4, 3, 2, 31, 731, 1, 4, 41, 44, 3, 43, 42, 1, 1, 2, 3, 31, 3, 4, 43, 42, 3, 3, 3, 3, 31, 1, 3, 2, 31, 4, 41, 44, 43, 42, 3, 31, 42, 3, 1, 3, 2, 4, 41, 1, 1, 4, 41, 44, 3, 3, 66, 2, 66, 5, 5, 5, 5, 9, 66, 9, 3, 4, 1, 3, 1, 3, 1, 31, 1, 940, 5, 1, 2, 2, 4, 41, 44, 42, 1, 1, 2, 1, 3, 31, 67, 3, 4, 31, 3, 4, 3, 4, 3, 31, 3, 41, 44, 31, 3, 930, 2, 4, 3, 43, 44, 41, 41, 44, 4, 3, 43, 930, 2, 930, 3, 4, 41, 44, 31, 43, 3, 4, 31, 41, 44, 3, 3, 3, 44, 3, 43, 31, 41, 3, 4, 3, 41, 44, 3, 31, 43, 3, 31, 31, 42, 3, 3, 1, 44, 1, 2, 1, 1, 3, 67, 4, 41, 44, 3, 31, 3, 43, 31, 4, 3, 31, 42, 3, 43, 44, 1, 3, 2, 41, 3, 31, 3, 1, 2, 31, 1, 3, 2, 62, 2, 3, 4, 41, 44, 3, 43, 31, 42, 731, 64, 3, 44, 31, }

static final String[] p_words = { "a", "accept", "access", "account", "accountant", "accounts", "accounts", "accumulate", "accumulates", "accuracy", "acquire", "across", "across", "across", "act", "act", "actual", "add", "added", "added", "adding", "adding", "addition", "address", "addresses", "addresses", "adjust", "adjustable", "adjustment", "adjustments", "advance", "advanced", "advertise", "affect", "affect", "after", "after", "agenda", "agent", "agents", "agree", "agreement", "agreements", "alike", "alike", "allocate", "allocation", "alone", "alone", "already", "also", "always", "among", "amount", "amount", "an", "analyze", "and", "animal", "annual", "annual", "annually", "another", "answer", "answer", "any", "apart", "apartment", "apartments", "apparent", "appear", "applicable", "application", "applications", "apply", "appointment", "appointments", "appropriation", "appropriations", "approve", "approved", "approved", "approximate", "approximate", "approximated", "approximately", "archive", "archives", "area", "areas", "around", "around", "arrange", "art", "article", "articles", "as", "ask", "assess", "asset", "assets", "assign", "assume", "assuming", "at", "attach", "attached", "attachment", "attention", "attorney", "attribute", "attribute", "attributing", "audience", "audiences", "author", "authorization", "authorizations", "authorize", "authors", "authorship", "auto", "automatic", "automobile", "automobiles", "autos", "autumn", "availability", "available", "average", "average", "average", "away", "back", "back", "back", "back", "backlog", "badge", "badges", "balance", "balance", "bank", "banker", "bankers", "banks", "base", "base", "based", "baseline", "basic", "basis", "batch", "became", "because", "because", "become", "become", "becomes", "becoming", "becoming", "before", "before", "before", "begin", "begins", "behind", "behind", "behind", "belong", "belongs", "below", "below", "belt", "bench", "benchmarks", "beside", "best", "best", "big", "bigger", "biggest", "bill", "bills", "blank", "blank", "blue", "blue", "blueprint", "blueprints", "board", "boards", "bonds", "bonus", "book", "booked", "bookkeeping", "booklet", "booklets", "books", "border", "borderline", "boss", "bosses", "bottom", "bottom", "bought", "bought", "box", "box", "boxes", "bridge", "bridges", "brief", "brief", "briefs", "broad", "broadcast", "brochure", "brochures", "broker", "brokerage", "brokers", "brown", "brush", "budget", "budgets", "build", "builder", "builders", "building", "buildings", "bulletin", "bulletins", "business", "businesses", "businessman", "businessmen", "but", "but", "buy", "buyer", "buyers", "buying", "byproduct", "byproducts", "cable", "cables", "calculate", "calculation", "calculations", "calendar", "calendars", "call", "caller", "callers", "calling", "calls", "came", "can", "can", "cancel", "cancellation", "cancels", "capacity", "capital", "capital", "caps", "car", "card", "cards", "carry", "cars", "cartons", "cases", "case", "case", "cash", "cast", "category", "caught", "caught", "cent", "center", "center", "center", "centered", "centered", "central", "cents", "certain", "certificate", "certificates", "certify", "chair", "chairs", "change", "changed", "changes", "changing", "chapter", "chapters", "character", "charge", "charge", "charged", "charged", "charges", "charges", "charging", "check", "check", "checked", "checked", "checking", "checking", "checks", "checks", "child", "children", "choice", "choice", "choose", "choosing", "city", "claim", "claim", "class", "class", "classes", "classifiers", "classify", "classifying", "clerk", "clerks", "client", "clients", "clinic", "clinics", "clock", "clocks", "close", "close", "close", "close", "closed", "closed", "closing", "closing", "cloth", "coast", "coasts", "coat", "coat", "coats", "code", "code", "coded", "codes", "coding", "coin", "coin", "collect", "collected", "collected", "collections", "collects", "college", "colleges", "color", "color", "coloration", "colored", "column", "columns", "combination", "combinations", "combine", "combine", "combined", "combined", "combines", "combining", "come", "come", "comes", "coming", "coming", "command", "commands", "commands", "comment", "comment", "commerce", "commercial", "commercial", "commercially", "commit", "commit", "commits", "common", "common", "commonly", "community", "companies", "company", "comparable", "compare", "compared", "compared", "compares", "comparing", "comparison", "compensate", "compensated", "compensates", "compete", "competed", "competes", "competing", "complete", "component", "components", "computation", "computations", "compute", "computed", "computer", "computers", "computes", "condition", "condition", "conditional", "conditions", "configuration", "configurations", "connect", "connected", "connected", "connecting", "connection", "connections", "connects", "consist", "consisted", "consisted", "consists", "constant", "constant", "consumer", "consumers", "contain", "contained", "contained", "containing", "contains", "content", "content", "content", "contents", "context", "contexts", "control", "control", "controlled", "controlled", "controls", "controls", "coordinate", "coordinate", "coordinate", "coordinated", "coordinating", "coordination", "copy", "copy", "copying", "corporate", "corporation", "corporations", "cost", "cost", "cost", "cost", "costing", "costing", "costs", "costs", "count", "count", "counted", "counted", "counter", "counter", "counting", "counts", "counts", "county", "course", "credit", "credit", "credited", "credited", "creditors", "credits", "credits", "cumulative", "currencies", "currency", "current", "current", "currently", "customer", "customers", "data", "data", "date", "dated", "dates", "dates", "day", "days", "debt", "debts", "decade", "decades", "december", "decide", "default", "defect", "defective", "defects", "deficit", "deficits", "define", "defined", "defined", "defines", "definition", "definitions", "defraud", "delay", "delay", "demand", "demand", "demographic", "demonstrate", "demonstrated", "demonstrated", "demonstrates", "demonstrating", "deny", "depart", "department", "departmental", "departments", "departure", "departures", "depend", "dependent", "dependent", "dependents", "depends", "deposit", "deposit", "deposited", "depositors", "deposits", "depreciation", "depth", "depths", "descendant", "descendants", "descent", "describe", "described", "described", "describes", "describing", "description", "descriptions", "descriptive", "design", "design", "designed", "designed", "designing", "designing", "designs", "designs", "desk", "desks", "destroy", "destroyed", "destroyed", "detail", "detail", "detailed", "details", "detect", "determine", "develop", "developer", "developers", "developing", "development", "developmental", "developments", "develops", "dictionaries", "dictionary", "differ", "differed", "differed", "difference", "differences", "different", "differentiate", "differs", "difficult", "difficulties", "difficulty", "digital", "dimension", "dimension", "dimensional", "direct", "direct", "direct", "directly", "director", "directors", "directory", "directs", "disabilities", "disability", "disable", "disabled", "disabling", "disadvantage", "disadvantages", "disagree", "disallowed", "disbursed", "disbursement", "disbursements", "disclose", "disclosed", "disclosed", "discloses", "disclosure", "disclosures", "discount", "discount", "discounted", "discounts", "discover", "discovered", "discovered", "discovers", "discuss", "discussed", "discussed", "discusses", "discussing", "discussion", "discussions", "dismiss", "display", "display", "displayed", "displayed", "displaying", "displays", "displays", "dispute", "dispute", "disputed", "disputes", "disputes", "disqualified", "disqualify", "disregard", "disregard", "distance", "distances", "distant", "distantly", "distinct", "distribute", "distributed", "distributed", "distribution", "distributions", "distributorship", "diverse", "divert", "diverted", "diverting", "divest", "divide", "divided", "divided", "dividend", "dividends", "divisions", "document", "document", "documentation", "documented", "documented", "documents", "doing", "doing", "dollar", "dollars", "door", "doors", "dozen", "dozens", "dual", "due", "due", "due", "duplicate", "duplicate", "duplicate", "duplicated", "duplication", "duration", "during", "each", "earlier", "earlier", "earliest", "early", "early", "earn", "earned", "earned", "earning", "earnings", "earns", "east", "economy", "economy", "edit", "edited", "edited", "editing", "editing", "effect", "effect", "effective", "efficient", "efficiently", "eight", "eighteen", "eighth", "either", "eleven", "eleventh", "eliminate", "else", "employ", "employ", "employed", "employed", "employee", "employees", "employer", "employers", "employment", "employs", "empty", "enable", "enabled", "enabled", "enclosed", "enclosed", "encloses", "enclosure", "end", "end", "ended", "ended", "ending", "ending", "ends", "ends", "engineer", "engineering", "engineering", "engineers", "engines", "enough", "enough", "enter", "entered", "entered", "enters", "entire", "entities", "entity", "entrance", "entranceway", "entries", "entry", "envelope", "envelopes", "equal", "equal", "equal", "equality", "equally", "equals", "equals", "equate", "equation", "equations", "equitable", "equitably", "equity", "equivalent", "equivalent", "erase", "erased", "erasing", "error", "errors", "establish", "established", "established", "establishment", "estimate", "estimate", "estimated", "estimated", "estimates", "estimates", "estimating", "estimation", "evaluate", "evaluated", "evaluating", "evaluation", "evaluations", "even", "even", "even", "evenly", "event", "events", "ever", "every", "exact", "exacted", "examine", "examined", "examined", "examines", "example", "examples", "exceed", "exceeded", "exceeded", "exceeds", "except", "except", "except", "exception", "exceptional", "exceptionally", "exceptions", "excess", "excess", "exchange", "exchange", "exchanged", "exchanged", "exclude", "excluded", "excludes", "excluding", "excluding", "exclusion", "exclusions", "execution", "executive", "executive", "executives", "exempt", "exempt", "exemption", "exemptions", "exist", "existed", "existed", "existence", "existent", "existent", "existing", "exists", "exit", "exits", "expand", "expanded", "expanded", "expanding", "expands", "expect", "expected", "expected", "expend", "expendable", "expenditure", "expenditures", "expense", "expenses", "expensive", "expert", "expert", "experts", "explain", "explained", "explained", "explaining", "explains", "express", "express", "express", "expressed", "expressed", "expresses", "expressing", "expression", "expressly", "extra", "extras", "face", "facilitate", "facilitated", "facilitates", "facilities", "facility", "fact", "facts", "factual", "fail", "failed", "failed", "familiar", "far", "far", "farther", "farthest", "farthest", "fast", "fast", "fast", "fasten", "faster", "faster", "fastest", "fastest", "fault", "faults", "faulty", "favorable", "favorably", "feature", "feature", "featured", "featured", "features", "features", "february", "fee", "fees", "female", "female", "females", "few", "fewer", "fewer", "field", "field", "fields", "fields", "fifteen", "fifteenth", "fifth", "fifth", "fifty", "figure", "figure", "figured", "figured", "figures", "figures", "file", "file", "filed", "filed", "files", "files", "final", "final", "final", "finance", "finance", "financed", "finances", "financial", "financially", "find", "find", "finds", "fine", "fine", "first", "first", "fiscal", "fit", "fit", "fit", "fit", "fit", "fits", "fits", "fitted", "fitted", "five", "fix", "fix", "flag", "flag", "flat", "flat", "flat", "floor", "flooring", "floors", "flow", "flow", "flowed", "flowed", "fluctuates", "fluctuating", "fluctuations", "folder", "folders", "foot", "footnote", "footnotes", "for", "forecast", "forecast", "forecast", "forecasts", "foreign", "forfeit", "form", "form", "format", "formats", "former", "formerly", "forms", "forms", "formula", "forth", "fortune", "fortunes", "forty", "forward", "forward", "found", "found", "found", "four", "fourteen", "fourteenth", "fourth", "fourth", "fraction", "fractional", "fractions", "frame", "frame", "framed", "framed", "frames", "framework", "free", "free", "free", "freight", "freights", "frequency", "frequent", "frequent", "frequently", "from", "front", "front", "fully", "function", "function", "functional", "functional", "functioning", "functioning", "functions", "functions", "future", "future", "gage", "gages", "gain", "gain", "gained", "gained", "gaining", "gaining", "gains", "gains", "gallon", "gallons", "gave", "general", "general", "generate", "generated", "generated", "generates", "generating", "get", "gets", "getting", "getting", "girl", "girls", "give", "give", "given", "gives", "giving", "giving", "glossary", "go", "go", "goal", "goals", "goes", "going", "going", "gone", "good", "good", "good", "goods", "got", "got", "grade", "graded", "grades", "grading", "gradual", "gradually", "gram", "grams", "grant", "grant", "grants", "graph", "graphed", "graphic", "graphs", "gray", "gray", "grayer", "graying", "great", "great", "greater", "greatest", "green", "green", "gross", "gross", "ground", "group", "group", "grouped", "grouping", "groupings", "groups", "guarantee", "guarantee", "guaranteed", "guaranteed", "guide", "guide", "guidelines", "guides", "guides", "hand", "hand", "hands", "happen", "happens", "hard", "hard", "harder", "harder", "hardest", "hardest", "hardness", "he", "head", "head", "headed", "headed", "header", "heading", "heading", "headings", "height", "heights", "held", "held", "help", "help", "help", "helped", "helped", "her", "here", "hid", "hidden", "hide", "hide", "hides", "hides", "hierarchies", "hierarchy", "high", "high", "high", "higher", "higher", "highest", "highest", "hold", "hold", "holding", "holding", "holdings", "holds", "holds", "hole", "hole", "holes", "holiday", "holidays", "home", "home", "homeowners", "homes", "host", "hosts", "hot", "hour", "hourly", "hours", "house", "house", "houses", "houses", "housing", "how", "however", "hundred", "identical", "identically", "if", "immediate", "immediately", "imply", "implying", "importance", "important", "importantly", "imported", "improbably", "improve", "improved", "improved", "improvement", "improves", "improving", "in", "inaccuracies", "inaccuracy", "inaccurate", "inactivity", "incentive", "incentives", "inch", "inched", "inches", "include", "included", "included", "includes", "including", "including", "inclusive", "income", "incomes", "incoming", "incomplete", "incompletely", "incorrect", "increase", "increase", "increased", "increased", "increases", "increases", "increasing", "increasingly", "incremental", "incur", "incurred", "incurred", "incurring", "incurs", "independent", "independently", "index", "index", "indexes", "indexing", "indexing", "indicate", "indicated", "indicated", "indicates", "indicating", "indication", "indications", "indicative", "indicator", "indicators", "indirect", "indirectly", "individual", "individual", "individual", "individually", "individuals", "indivisible", "industrial", "industries", "industry", "ineligible", "infer", "inference", "inferior", "inferiority", "inferred", "inferred", "infinite", "infinite", "inflate", "inflated", "inflation", "influence", "influence", "influential", "inform", "information", "informative", "informed", "informed", "informs", "infrequent", "infrequently", "initial", "initialed", "initially", "initials", "initiate", "initiated", "initiated", "initiative", "inner", "input", "inquiries", "inquiry", "inseparable", "insert", "insert", "inserted", "inserted", "insertion", "insertions", "inserts", "inside", "inside", "inside", "inside", "inspect", "inspected", "inspected", "inspection", "inspections", "install", "installation", "installations", "installed", "installed", "installing", "installment", "installments", "instance", "instances", "instead", "institute", "institute", "instituted", "institution", "institutional", "instruct", "instructed", "instructed", "instructing", "instruction", "instructional", "instructions", "instructive", "instructor", "instructors", "instructs", "instrument", "instruments", "insurance", "insure", "insured", "insured", "insures", "intend", "intended", "intended", "intending", "intends", "intent", "intent", "intention", "intentional", "intentions", "interact", "interacting", "interaction", "interactions", "interacts", "interconnected", "interest", "interested", "interested", "interesting", "interestingly", "interests", "interests", "interim", "interim", "intermediate", "internal", "internally", "international", "international", "internationally", "interpret", "interpretation", "interpretations", "interpreted", "interpreted", "interprets", "interrelated", "interrupt", "interruption", "interruptions", "intersect", "intersecting", "intersection", "interval", "intervals", "into", "introduce", "introduced", "introduced", "introduces", "introduction", "introductions", "introductory", "invalid", "invalid", "invalidate", "invalidated", "inventories", "inventory", "inventory", "invest", "invested", "investing", "investment", "investments", "investor", "investors", "invoices", "involve", "involved", "involved", "involves", "involving", "involving", "irregular", "issue", "issue", "issued", "issued", "issues", "issues", "issuing", "it", "it", "item", "itemization", "itemized", "itemizing", "items", "january", "join", "joined", "joined", "joining", "joins", "joint", "joint", "jointly", "july", "jump", "jump", "jumped", "jumped", "jumps", "jumps", "june", "keep", "keep", "keeping", "keeping", "kept", "kept", "key", "key", "key", "keys", "kilometer", "kilometers", "know", "know", "knowledge", "known", "lab", "label", "label", "labeled", "labeled", "labeling", "labels", "labels", "labor", "labor", "laborer", "laborers", "land", "land", "large", "large", "large", "largely", "larger", "largest", "last", "last", "last", "lasting", "lasting", "lastly", "late", "late", "lately", "later", "later", "latest", "law", "lawful", "laws", "lawsuit", "lawsuits", "lawyer", "lawyers", "lay", "lay", "lay", "layer", "layoffs", "lead", "lead", "leader", "leaders", "leads", "leads", "learn", "learned", "learned", "learned", "learning", "learning", "learns", "least", "leave", "leave", "ledger", "ledgers", "left", "left", "left", "left", "legal", "legality", "legalized", "legally", "lend", "lending", "lending", "lends", "lent", "lent", "less", "lessen", "lessened", "lessened", "lessens", "lesser", "lesser", "let", "let", "let", "let", "lets", "letting", "letting", "level", "level", "level", "levels", "levels", "lexicon", "license", "license", "licensed", "licenses", "lien", "liens", "like", "like", "liked", "liked", "likes", "likes", "limit", "limit", "limitation", "limitations", "limited", "limited", "limiting", "limits", "limits", "line", "line", "lined", "lined", "lines", "list", "list", "listed", "listed", "listing", "listing", "listings", "lists", "lists", "little", "little", "loan", "loaned", "loans", "locate", "located", "located", "locating", "location", "long", "long", "longer", "longer", "longest", "look", "look", "looked", "looked", "looking", "looking", "looking", "looks", "looks", "low", "low", "low", "lower", "lower", "lower", "lowest", "machine", "machinery", "machines", "made", "made", "main", "main", "mainly", "maintain", "maintains", "major", "major", "major", "majority", "make", "make", "maker", "makers", "makes", "makes", "making", "making", "male", "male", "males", "man", "manage", "managed", "managed", "management", "manager", "managers", "manages", "managing", "mandatory", "manual", "manual", "manually", "manuals", "manufacture", "manufacture", "manufactured", "manufactured", "manufacturer", "manufacturers", "manufactures", "manufacturing", "manufacturing", "many", "march", "margin", "marginal", "marginally", "margins", "marked", "marked", "marked", "masculine", "mass", "mass", "mass", "match", "match", "material", "material", "materials", "matrix", "maximize", "maximized", "maximizing", "maximum", "maximum", "may", "may", "me", "mean", "mean", "mean", "meaning", "meaning", "means", "means", "means", "measure", "measure", "measured", "measured", "measurement", "measurements", "meet", "meet", "meeting", "meeting", "meetings", "meets", "meets", "member", "members", "membership", "memberships", "memo", "memoranda", "memorandum", "memos", "men", "mention", "mention", "mentioned", "mentioned", "mentioning", "mentioning", "mentions", "mentions", "merchandise", "merchandising", "merchant", "merchants", "merge", "merged", "merged", "merger", "mergers", "merges", "merging", "merging", "message", "messages", "met", "met", "method", "methodology", "methods", "metrical", "middle", "middle", "midpoint", "mile", "mileage", "miles", "milestone", "milestones", "million", "millions", "mind", "mind", "minded", "minded", "minds", "mine", "mine", "minimal", "minimally", "minimize", "minimized", "minimized", "minimizes", "minimizing", "minimum", "minimum", "minor", "minor", "minus", "minus", "minus", "minute", "minute", "minutes", "miss", "miss", "mitigate", "model", "model", "model", "modeled", "modeled", "modeling", "moderate", "moderately", "moderates", "moderates", "modification", "modifications", "modified", "modifier", "modifiers", "modifies", "modify", "modifying", "monetary", "money", "month", "monthly", "monthly", "months", "more", "mortgage", "mortgages", "most", "move", "move", "much", "much", "multiple", "multiply", "multiplying", "mutually", "my", "my", "myself", "name", "name", "named", "named", "names", "names", "narrow", "near", "near", "near", "near", "nearby", "nearby", "nearer", "nearer", "nearer", "nearest", "nearest", "nearest", "nearing", "nearly", "necessary", "need", "need", "need", "needed", "needed", "needing", "neither", "neither", "network", "networks", "neural", "never", "new", "newer", "newest", "news", "next", "next", "next", "niche", "night", "nightly", "nights", "nine", "nineteen", "nineteenth", "nineties", "ninetieth", "ninety", "ninth", "no", "no", "none", "norm", "normal", "normal", "normally", "north", "north", "northeast", "northerly", "northern", "northward", "northwest", "notation", "note", "note", "noted", "noted", "notes", "notes", "nothing", "notice", "notice", "noticeable", "notices", "noticing", "notification", "notified", "notified", "notify", "notifying", "noting", "notion", "notions", "noun", "nouns", "november", "novice", "now", "number", "number", "numbered", "numbered", "numbers", "numbers", "numerical", "numerous", "object", "object", "objects", "objects", "obsolete", "obtain", "occasional", "occasionally", "occupancy", "occupant", "occupants", "occupation", "occupational", "occupations", "occur", "occurrence", "occurrences", "occurs", "odd", "of", "off", "off", "often", "old", "older", "oldest", "omit", "omits", "omitted", "omitting", "on", "once", "once", "one", "only", "only", "onto", "open", "open", "open", "open", "opening", "opening", "opposite", "opposite", "opposite", "opposite", "option", "optional", "options", "or", "order", "order", "ordered", "ordered", "ordering", "ordering", "orders", "orders", "organization", "organizations", "other", "others", "otherwise", "out", "out", "outline", "outline", "outlined", "outlined", "outlines", "outlines", "output", "over", "over", "over", "overdue", "overhead", "overhead", "overhead", "overtime", "owe", "owed", "owed", "owes", "owing", "own", "own", "owned", "owned", "owns", "package", "package", "packaged", "packing", "page", "page", "pages", "paid", "paid", "paper", "paper", "papers", "part", "part", "partial", "partly", "partner", "partners", "partnership", "pass", "pass", "past", "past", "past", "past", "past", "path", "paths", "pattern", "pattern", "patterned", "pay", "pay", "paycheck", "payday", "paying", "payment", "payments", "payroll", "pays", "people", "people", "per", "percent", "percentage", "percentages", "perform", "period", "periodic", "periods", "personnel", "phone", "phone", "phoned", "phoned", "phones", "phones", "piece", "piece", "pieces", "pint", "place", "place", "placed", "placed", "placement", "places", "places", "placing", "placing", "plan", "plan", "plans", "plans", "plus", "plus", "point", "point", "points", "points", "population", "populations", "position", "position", "positioned", "positions", "positive", "positive", "positively", "possible", "possibly", "potential", "potential", "potentially", "pound", "pound", "pounds", "predict", "preference", "preferences", "preferred", "preferred", "preferring", "preliminary", "preliminary", "premium", "premiums", "prepare", "previous", "previous", "previous", "previously", "price", "price", "priced", "prices", "pricing", "pricing", "primary", "primary", "prime", "prime", "principal", "principal", "principals", "prior", "prior", "priorities", "priority", "pro", "pro", "pro", "problem", "problems", "procedure", "procedures", "proceed", "proceeds", "proceeds", "process", "process", "processed", "processes", "processing", "processing", "procurement", "produce", "produce", "produced", "produced", "product", "products", "profit", "profit", "profitability", "profitable", "profitably", "profited", "profited", "profits", "project", "project", "projection", "projections", "projects", "projects", "properties", "property", "proportion", "proposal", "proposals", "propose", "proposed", "proposed", "proposes", "proposing", "public", "public", "purchase", "purchase", "purchased", "purchased", "purchasers", "purchases", "purchases", "purchasing", "purchasing", "put", "put", "put", "puts", "qualified", "qualified", "qualifies", "qualify", "qualities", "quality", "quantities", "quantity", "quart", "quarter", "quarters", "quarts", "quit", "quit", "quit", "quits", "quota", "quotas", "raise", "raise", "ran", "rank", "rank", "ranked", "ranked", "ranks", "ranks", "rate", "rate", "rated", "rates", "rates", "rating", "rating", "ratings", "ratio", "ratios", "reach", "reach", "read", "read", "read", "reading", "reading", "readings", "reads", "ready", "ready", "rear", "rear", "rear", "recall", "recall", "recalled", "recalled", "recalls", "receipt", "receipts", "receive", "received", "received", "receives", "receiving", "recent", "recently", "recipient", "recipient", "recipients", "record", "record", "recorded", "recorded", "records", "records", "recover", "recoverable", "recur", "recurred", "recurred", "recurrence", "recurrent", "recurring", "red", "red", "reduce", "reduced", "reducing", "reduction", "reductions", "refer", "reference", "references", "referral", "referrals", "referred", "referred", "referring", "refers", "refinance", "reflect", "reflected", "reflected", "reflecting", "reflects", "refund", "refunded", "refunds", "regard", "regard", "regarded", "regarded", "regarding", "regarding", "regardless", "region", "regional", "regions", "regular", "regularity", "regularly", "reimburse", "reimbursed", "reimbursement", "reimburses", "reject", "rejected", "rejected", "rejecting", "relate", "related", "related", "relatedness", "relates", "relating", "relation", "relationship", "relationships", "relative", "relative", "relatively", "release", "release", "released", "released", "releases", "releases", "releasing", "relevant", "reliability", "reliable", "reliably", "rely", "relying", "remain", "remainder", "remained", "remained", "remaining", "removable", "removal", "remove", "removed", "removed", "removes", "removing", "renew", "renewable", "renewal", "renewed", "renewed", "renewing", "rent", "rent", "rent", "rental", "rental", "rentals", "rented", "renting", "rents", "reorder", "reorganize", "repaid", "repair", "repair", "repaired", "repaired", "repairs", "repay", "repayable", "repayment", "repeat", "repeat", "replace", "replaced", "replaced", "replacement", "replacements", "replied", "replied", "replies", "replies", "reply", "reply", "replying", "report", "report", "reported", "reported", "reports", "reports", "request", "requested", "requested", "requests", "requests", "require", "required", "required", "requirement", "requirements", "requires", "requiring", "reserve", "reserve", "reserved", "reserved", "reserves", "reserves", "reserving", "residual", "resign", "resolution", "resolutions", "resource", "resourceful", "resources", "rest", "rest", "restitution", "restock", "restrict", "restricted", "restriction", "restrictive", "restricts", "result", "result", "results", "results", "resume", "resume", "retail", "retail", "retail", "retailer", "retailers", "retain", "retained", "retrieve", "return", "return", "return", "returned", "returned", "returns", "returns", "revaluation", "reveal", "revealed", "revealed", "revealing", "revenue", "reverse", "reverse", "reverse", "reversed", "reverses", "revise", "revised", "revised", "revising", "revision", "right", "right", "rights", "rise", "rise", "risk", "risk", "risks", "role", "roles", "roof", "roofs", "room", "room", "rooms", "round", "round", "round", "round", "round", "route", "routed", "routes", "routine", "routine", "routinely", "routines", "rule", "rule", "ruled", "ruled", "rules", "rules", "run", "run", "run", "run", "rundown", "rundown", "salaried", "salaries", "salary", "sale", "sales", "same", "sample", "sample", "sampled", "sampled", "samples", "sampling", "sampling", "save", "save", "saved", "saved", "saves", "saving", "saving", "saw", "saw", "saw", "schedule", "schedule", "scheduled", "scheduled", "schedules", "scheduling", "scheduling", "search", "search", "season", "seasonal", "seasons", "second", "second", "second", "secondary", "secondly", "seconds", "secretarial", "secretaries", "section", "sections", "secure", "secure", "secured", "secured", "securely", "securing", "securing", "securities", "security", "see", "see", "seeing", "seeing", "seem", "seemed", "seemed", "seeming", "seeming", "seems", "seen", "sees", "seldom", "select", "select", "selected", "selected", "selecting", "selection", "selections", "selective", "selectively", "selects", "sell", "sell", "seller", "selling", "selling", "selling", "sells", "send", "sending", "sending", "sends", "sent", "sent", "separate", "separate", "separated", "separated", "separately", "separates", "separating", "separation", "separations", "september", "serial", "serial", "series", "series", "seven", "seventeenth", "seventh", "seventy", "several", "sex", "sexes", "shape", "shape", "shaped", "shaped", "shapes", "shapes", "share", "share", "shared", "shared", "shareholder", "shareholders", "shares", "shares", "she", "ship", "shipment", "shipments", "shipped", "shipped", "shipper", "shippers", "shipping", "shipping", "shop", "shop", "shops", "short", "short", "show", "show", "showing", "showing", "shown", "shows", "shows", "side", "side", "sided", "sides", "sight", "sight", "sights", "sign", "sign", "signature", "signatures", "signed", "signed", "signs", "signs", "similar", "similarities", "similarity", "simple", "simpler", "since", "single", "single", "single", "single", "singled", "singled", "singly", "singular", "sit", "site", "sites", "sits", "situated", "situation", "situations", "six", "sixteen", "sixteenth", "sixth", "sixty", "size", "size", "sized", "sized", "sized", "sizes", "skip", "skipped", "skipped", "skipping", "skips", "small", "small", "smaller", "smallest", "so", "so", "sold", "sold", "sole", "sole", "solely", "solution", "solutions", "solve", "solved", "solved", "solves", "solving", "some", "son", "sons", "soon", "sooner", "sort", "sort", "sort", "sorted", "sorted", "sorting", "sorts", "source", "sources", "south", "south", "southeast", "southeastern", "southern", "specifics", "specified", "specifies", "specify", "speech", "speeches", "speed", "speed", "spend", "spending", "spending", "spends", "spent", "spent", "square", "square", "square", "square", "squares", "stable", "staff", "staff", "staffed", "staffing", "staffs", "stairs", "stairway", "stairways", "stand", "standard", "standard", "standardized", "standardizing", "standards", "stands", "stands", "start", "start", "started", "started", "starting", "starting", "starts", "starts", "startups", "state", "state", "stated", "stated", "statement", "statements", "states", "states", "stating", "station", "stationary", "stationed", "stations", "statistical", "statistics", "status", "stay", "stay", "step", "step", "steps", "steps", "stock", "stock", "stockbroker", "stockholder", "stockholders", "stocks", "stood", "stood", "stop", "stop", "stopped", "stopped", "stopping", "stops", "stops", "storage", "store", "store", "stored", "stored", "stores", "straight", "straight", "street", "streets", "strength", "string", "string", "strings", "strong", "strong", "stronger", "strongest", "strongly", "structure", "structure", "structured", "structures", "student", "students", "style", "styled", "styled", "styles", "sub", "subject", "subject", "subject", "subjects", "subjects", "submit", "submits", "subscribe", "subscribed", "subscribed", "subscribers", "subsidiaries", "subsidiary", "subsidiary", "subsidies", "subsidize", "subsidized", "subsidized", "subsidy", "substitute", "substitute", "substitute", "substituted", "substituted", "substitutes", "substituting", "substitution", "substitutions", "subtitled", "subtract", "subtracted", "subtracted", "subtracting", "subtraction", "successor", "successors", "such", "sufficient", "suggest", "suggested", "suggested", "suggested", "suggestion", "suggestions", "suit", "suit", "suits", "suits", "sum", "sum", "summary", "sums", "sums", "superior", "superior", "superseded", "superseded", "supervise", "supervised", "supervised", "supervises", "supervising", "supervision", "supervisor", "supervisors", "supervisory", "supplement", "supplement", "supplemental", "supplementary", "supplementing", "supplements", "supplied", "supplied", "supplier", "suppliers", "supplies", "supplies", "supply", "supply", "supplying", "support", "support", "supported", "supported", "supporting", "supports", "supports", "sure", "sure", "sure", "surface", "surface", "surplus", "surplus", "surpluses", "surround", "surrounded", "surrounded", "surrounding", "surroundings", "survey", "switch", "switch", "syllable", "syllables", "symbol", "symbolic", "symbols", "symmetric", "symmetrical", "symmetry", "symptom", "symptoms", "synonym", "synonymous", "synonyms", "system", "systematic", "systematically", "systems", "tab", "table", "table", "tables", "tag", "tagged", "tagged", "tags", "take", "take", "taken", "takes", "taking", "taking", "tally", "tally", "tape", "taped", "tapes", "target", "targets", "task", "tasks", "tax", "tax", "taxable", "taxation", "taxed", "taxed", "taxes", "taxpayer", "taxpayers", "teach", "teaches", "team", "teamed", "teaming", "teammate", "teammates", "teams", "teamwork", "tear", "technical", "technicalities", "technically", "technician", "technicians", "technology", "telephone", "telephone", "telephoned", "telephoned", "telephones", "tell", "telling", "telling", "telling", "temporarily", "temporary", "ten", "term", "term", "terminate", "terminated", "terms", "terms", "test", "test", "tested", "tested", "testing", "testing", "tests", "tests", "text", "texts", "than", "than", "that", "that", "the", "then", "there", "they", "thing", "things", "third", "third", "third", "thirdly", "thirds", "thirteen", "thirteenth", "thirtieth", "thirty", "this", "three", "threes", "through", "throughout", "throughout", "thus", "ticket", "tickets", "tie", "tie", "tied", "tied", "ties", "ties", "time", "time", "timed", "timed", "timeless", "timely", "timely", "title", "titled", "titled", "titles", "to", "to", "together", "ton", "tons", "took", "tool", "tool", "tooling", "tools", "top", "top", "top", "topic", "topics", "total", "total", "total", "totaled", "totaled", "totaling", "totals", "totals", "toward", "towards", "trace", "trace", "trace", "track", "track", "tracked", "tracked", "tracking", "tracks", "tract", "tracts", "trade", "trade", "traded", "traded", "trademark", "trademarks", "trades", "trades", "trading", "traffic", "trail", "trail", "train", "train", "trains", "trains", "transact", "transaction", "transactions", "transfer", "transfer", "transferee", "transference", "transferred", "transferred", "transferring", "transfers", "transfers", "transit", "transition", "transmission", "transmit", "transmits", "transmitted", "transmitter", "transmitting", "transmitting", "travel", "travel", "traveled", "traveled", "traveling", "travels", "traversed", "traversed", "traversing", "trend", "trends", "trial", "trials", "tried", "tried", "tries", "tries", "trillion", "trimester", "trio", "trip", "trip", "triple", "triple", "tripled", "tripled", "tripped", "tripping", "trips", "true", "true", "true", "truer", "truest", "trust", "trust", "truth", "try", "try", "trying", "trying", "turn", "turn", "turns", "turns", "twelfth", "twelve", "twenties", "twenty", "twice", "two", "type", "type", "typed", "typed", "types", "typical", "typically", "typify", "typifying", "uncertain", "unchecked", "uncommon", "unconditional", "undamaged", "under", "under", "under", "underneath", "underneath", "underpaid", "understand", "understandable", "understanding", "understanding", "understanding", "understands", "understood", "understood", "undertake", "undertaken", "undertakes", "undertaking", "undertook", "undetermined", "undid", "undo", "unemployed", "unemployment", "unequal", "unequaled", "unequally", "uneven", "unfamiliar", "unidentified", "uniformly", "uniforms", "unify", "unifying", "union", "unions", "unison", "unit", "unite", "united", "united", "unites", "uniting", "units", "unless", "unlimited", "unload", "unnecessarily", "unnecessary", "unoccupied", "unpaid", "unprofitable", "unprotected", "unproved", "unrelated", "unreleased", "unrestricted", "unsigned", "until", "until", "untrained", "untreated", "unused", "up", "upcoming", "update", "updated", "upgrade", "upgraded", "upgrading", "upgrading", "upon", "upon", "upper", "upper", "us", "usable", "usage", "use", "use", "used", "used", "useful", "usefully", "usefulness", "user", "users", "uses", "uses", "using", "using", "usual", "usual", "usually", "utilities", "utility", "valid", "validate", "validated", "validating", "validation", "validity", "value", "value", "valued", "valued", "values", "values", "variable", "variable", "variables", "variance", "varied", "varied", "variegated", "varies", "varieties", "variety", "various", "various", "vary", "varying", "varying", "vehicle", "vehicles", "vehicular", "vendor", "vendors", "verb", "verbal", "verbally", "verbs", "verification", "verified", "verify", "versatility", "version", "versions", "versus", "vertical", "vertically", "very", "very", "video", "view", "view", "viewed", "viewed", "viewer", "viewers", "viewing", "viewpoint", "viewpoints", "views", "views", "violate", "violated", "violated", "violates", "violating", "violation", "violations", "virtual", "visa", "visibility", "visible", "visibly", "vision", "visit", "visit", "visited", "visited", "visiting", "visitor", "visitors", "visits", "visits", "vocabularies", "vocabulary", "vocation", "vocational", "vocational", "voice", "voiced", "voiced", "voices", "void", "void", "voids", "volume", "volumes", "vote", "vote", "voted", "voted", "voter", "voters", "votes", "votes", "voting", "voting", "vouchers", "vouching", "vowel", "vowels", "voyage", "voyager", "voyages", "wage", "wage", "wages", "wait", "wait", "waited", "waited", "waiting", "waiting", "waits", "waive", "waived", "walkout", "wall", "wall", "walled", "walls", "want", "want", "wanted", "wanted", "wanting", "wants", "wants", "wares", "warn", "warning", "warning", "warns", "warranty", "wash", "wash", "washed", "water", "water", "way", "way", "ways", "we", "weak", "weaken", "weakened", "weakened", "weakening", "weakening", "weakens", "weaker", "weakest", "weakly", "weakness", "weaknesses", "wear", "wear", "wearing", "wears", "web", "week", "weekday", "weekend", "weekends", "weekly", "weekly", "weekly", "weeks", "weigh", "weighed", "weighed", "weighing", "weighs", "weight", "weights", "weights", "welfare", "well", "well", "well", "well", "went", "west", "wet", "wet", "wet", "wet", "wetness", "wetting", "what", "whatever", "whatever", "when", "whence", "whenever", "where", "whether", "which", "while", "while", "while", "white", "white", "whole", "whole", "wholesale", "wholesalers", "wholesome", "why", "why", "wide", "wide", "widely", "widen", "widened", "widened", "widens", "wider", "widespread", "widespread", "widest", "width", "widths", "will", "will", "will", "wills", "win", "win", "wind", "wind", "window", "windows", "wire", "wired", "wired", "wires", "wiring", "with", "with", "withdraw", "withdrawal", "withdrawing", "withdrawn", "withdrew", "withheld", "withheld", "withhold", "withholding", "withholding", "within", "within", "without", "witness", "witness", "witnessed", "witnessed", "witnesses", "witnessing", "woman", "woman", "women", "won", "won", "wood", "woodwork", "word", "worded", "wording", "wording", "words", "wore", "work", "work", "workday", "worked", "worked", "worker", "workers", "working", "workman", "workmen", "works", "works", "worksheet", "world", "worldwide", "worn", "worse", "worse", "worst", "worth", "worth", "would", "wrap", "wrapped", "wrapped", "wrapper", "wrappers", "wrapping", "wrapping", "wraps", "write", "writer", "writers", "writes", "writing", "writing", "written", "wrong", "wrong", "wrong", "wrote", "yard", "yards", "year", "yearly", "yearly", "years", "yellow", "yellow", "yes", "yet", "yet", "yield", "yield", "yielded", "yielded", "yielding", "yielding", "yields", "yields", "you", "zero", "zero", "zeroed", "zeros", }

Operations

public ATN()

private WordList NOUN_PHRASE_article_adj_noun(WordList wl)

private WordList NOUN_PHRASE_article_noun(WordList wl)

private WordList NOUN_PHRASE_noun(WordList wl)

private WordList VERB_PHRASE_verb(WordList wl_orig)

private WordList VERB_PHRASE_verb_nounphrase(WordList wl_orig)

private WordList VERB_PHRASE_verb_prepositionalphrase(WordList wl_orig)

private boolean WH_word(WordList wl, String word)

public void addColumnName(String word)

public void addTableName(String word)

private void clearSemantics(WordList wl)

public java.util.Hashtable getLexicon()

public void load(String dump_name)

public void loadLexicon(String file_name)

public void loadLexiconFromJarFile(String file_name)

private WordList noun(WordList wl)

private void nounSemantics(WordList wl, String word)

private void printSemantics(WordList wl)

private void printWordType(String word)

public void save(String dump_name)

public WordList sentence(String a_sentence)

public WordList sentence(WordList wl)

public String [] toString(WordList wl)

private void trace(int depth, String s1, String s2, String s3)

private void trace(int depth, String s1, String s2)

private void trace(int depth, String s, WordList wl)

private void trace(int depth, String s)

private void trace(int depth, WordList wl)

public String typeName(int type)

private WordList verb(WordList wl)

private void verbSemantics(WordList wl, String word)

public boolean wordInLexicon(String word)