1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License, Version 1.0 only
6 * (the "License").  You may not use this file except in compliance
7 * with the License.
8 *
9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10 * or http://www.opensolaris.org/os/licensing.
11 * See the License for the specific language governing permissions
12 * and limitations under the License.
13 *
14 * When distributing Covered Code, include this CDDL HEADER in each
15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16 * If applicable, add the following below this CDDL HEADER, with the
17 * fields enclosed by brackets "[]" replaced with your own identifying
18 * information: Portions Copyright [yyyy] [name of copyright owner]
19 *
20 * CDDL HEADER END
21 */
22/*
23 * Copyright 1989 Sun Microsystems, Inc.  All rights reserved.
24 * Use is subject to license terms.
25 */
26
27/*	Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T	*/
28/*	  All Rights Reserved  	*/
29
30
31#pragma ident	"%Z%%M%	%I%	%E% SMI"
32
33/*
34 * University Copyright- Copyright (c) 1982, 1986, 1988
35 * The Regents of the University of California
36 * All Rights Reserved
37 *
38 * University Acknowledgment- Portions of this document are derived from
39 * software developed by the University of California, Berkeley, and its
40 * contributors.
41 */
42
43/*
44 * Suffix table
45 */
46
47static	unsigned char sufa[] = {
48	02,0200+'t',	/* -TA */
49	02,0200+'s',	/* -SA */
50	03,0200+'t','r',	/* -TRA */
51	03,0200+'d','r',	/* -DRA */
52	03,0200+'b','r',	/* -BRA */
53	02,0200+'p',	/* -PA */
54	02,0200+'n',	/* -NA */
55	02,0200+'m',	/* -MA */
56	03,0200+'p','l',	/* -PLA */
57	02,0200+'l',	/* -LA */
58	02,0200+'k',	/* -KA */
59	03,0200+'t','h',	/* -THA */
60	03,0200+'s','h',	/* -SHA */
61	02,0200+'g',	/* -GA */
62	02,0200+'d',	/* -DA */
63	02,0200+'c',	/* -CA */
64	02,0200+'b',	/* -BA */
65	00
66};
67
68static	unsigned char sufc[] = {
69	04,'e','t',0200+'i',	/* ET-IC */
70	07,'a','l',0200+'i','s',0200+'t','i',	/* AL-IS-TIC */
71	04,'s',0200+'t','i',	/* S-TIC */
72	04,'p',0200+'t','i',	/* P-TIC */
73	05,0200+'l','y','t',0200+'i',	/* -LYT-IC */
74	04,'o','t',0200+'i',	/* OT-IC */
75	05,'a','n',0200+'t','i',	/* AN-TIC */
76	04,'n',0200+'t','i',	/* N-TIC */
77	04,'c',0200+'t','i',	/* C-TIC */
78	04,'a','t',0200+'i',	/* AT-IC */
79	04,'h',0200+'n','i',	/* H-NIC */
80	03,'n',0200+'i',	/* N-IC */
81	03,'m',0200+'i',	/* M-IC */
82	04,'l',0200+'l','i',	/* L-LIC */
83	04,'b',0200+'l','i',	/* B-LIC */
84	04,0200+'c','l','i',	/* -CLIC */
85	03,'l',0200+'i',	/* L-IC */
86	03,'h',0200+'i',	/* H-IC */
87	03,'f',0200+'i',	/* F-IC */
88	03,'d',0200+'i',	/* D-IC */
89	03,0200+'b','i',	/* -BIC */
90	03,'a',0200+'i',	/* A-IC */
91	03,0200+'m','a',	/* -MAC */
92	03,'i',0200+'a',	/* I-AC */
93	00
94};
95
96static	unsigned char sufd[] = {
97	04,0200+'w','o','r',	/* -WORD */
98	04,0200+'l','o','r',	/* -LORD */
99	04,0200+'f','o','r',	/* -FORD */
100	04,0200+'y','a','r',	/* -YARD */
101	04,0200+'w','a','r',	/* -WARD */
102	05,0200+'g','u','a','r',	/* -GUARD */
103	04,0200+'t','a','r',	/* -TARD */
104	05,0200+'b','o','a','r',	/* -BOARD */
105	04,0200+'n','a','r',	/* -NARD */
106	05,0200+'l','i','a','r',	/* -LIARD */
107	04,0200+'i','a','r',	/* -IARD */
108	04,0200+'g','a','r',	/* -GARD */
109	04,0200+'b','a','r',	/* -BARD */
110	03,0200+'r','o',	/* -ROD */
111	04,0200+'w','o','o',	/* -WOOD */
112	04,0200+'h','o','o',	/* -HOOD */
113	04,0200+'m','o','n',	/* -MOND */
114	04,0200+'t','e','n',	/* -TEND */
115	05,0200+'s','t','a','n',	/* -STAND */
116	04,0200+'l','a','n',	/* -LAND */
117	04,0200+'h','a','n',	/* -HAND */
118	04,0200+'h','o','l',	/* -HOLD */
119	04,0200+'f','o','l',	/* -FOLD */
120	05,0200+'f','i','e','l',	/* -FIELD */
121	03,0200+'v','i',	/* -VID */
122	03,0200+'c','i',	/* -CID */
123	04,0200+'s','a','i',	/* -SAID */
124	04,0200+'m','a','i',	/* -MAID */
125	04,'t',0200+'t','e',	/* T-TED */
126	03,'t',0200+'e',	/* T-ED */
127	04,0200+'d','r','e',	/* -DRED */
128	04,0200+'c','r','e',	/* -CRED */
129	04,0200+'b','r','e',	/* -BRED */
130	05,'v',0200+'e','l','e',	/* V-ELED */
131	0100+04,'a','l',0200+'e',	/* AL/ED */
132	0140+03,0200+'e','e',	/* /EED */
133	040+05,'e','d',0200+'d','e',	/* ED-DED */
134	04,'d',0200+'d','e',	/* D-DED */
135	040+04,'e','d',0200+'e',	/* ED-ED */
136	03,'d',0200+'e',	/* D-ED */
137	05,0200+'d','u','c','e',	/* -DUCED */
138	0300+02,'e',	/* E/D */
139	05,0200+'s','t','e','a',	/* -STEAD */
140	04,0200+'h','e','a',	/* -HEAD */
141	00
142};
143
144static	unsigned char sufe[] = {
145	05,'a','r',0200+'i','z',	/* AR-IZE */
146	05,'a','n',0200+'i','z',	/* AN-IZE */
147	05,'a','l',0200+'i','z',	/* AL-IZE */
148	06,0200+'a','r','d',0200+'i','z',	/* -ARD-IZE */
149	05,0200+'s','e','l','v',	/* -SELVE */
150	05,0200+'k','n','i','v',	/* -KNIVE */
151	05,0200+'l','i','e','v',	/* -LIEVE */
152	0100+03,0200+'q','u',	/* /QUE */
153	07,'o','n',0200+'t','i','n',0200+'u',	/* ON-TIN-UE */
154	03,0200+'n','u',	/* -NUE */
155	03,0200+'d','u',	/* -DUE */
156	0300+02,'u',	/* U/E */
157	0300+05,'q','u','a','t',	/*  QUAT/E */
158	04,'u',0200+'a','t',	/* U-ATE */
159	05,0200+'s','t','a','t',	/* -STATE */
160	04,0200+'t','a','t',	/* -TATE */
161	06,0200+'t','o','r',0200+'a','t',	/* -TOR-ATE */
162	05,'e','n',0200+'a','t',	/* EN-ATE */
163	04,0200+'m','a','t',	/* -MATE */
164	05,0200+'h','o','u','s',	/* -HOUSE */
165	05,0200+'c','l','o','s',	/* -CLOSE */
166	04,'i',0200+'o','s',	/* I-OSE */
167	04,0200+'w','i','s',	/* -WISE */
168	05,'a','s',0200+'u','r',	/* AS-URE */
169	040+04,0200+'s','u','r',	/* -SURE */
170	06,0200+'f','i','g',0200+'u','r',	/* -FIG-URE */
171	040+03,0200+'t','r',	/* -TRE */
172	05,0200+'s','t','o','r',	/* -STORE */
173	04,0200+'f','o','r',	/* -FORE */
174	05,0200+'w','h','e','r',	/* -WHERE */
175	06,0200+'s','p','h','e','r',	/* -SPHERE */
176	03,0200+'d','r',	/* -DRE */
177	03,0200+'c','r',	/* -CRE */
178	03,0200+'b','r',	/* -BRE */
179	05,0200+'s','c','o','p',	/* -SCOPE */
180	04,'y',0200+'o','n',	/* Y-ONE */
181	05,0200+'s','t','o','n',	/* -STONE */
182	05,0200+'p','h','o','n',	/* -PHONE */
183	04,0200+'g','o','n',	/* -GONE */
184	04,'e',0200+'o','n',	/* E-ONE */
185	040+04,0200+'e','n','n',	/* -ENNE */
186	040+05,'a',0200+'r','i','n',	/* A-RINE */
187	05,0200+'c','l','i','n',	/* -CLINE */
188	04,0200+'l','i','n',	/* -LINE */
189	007,00200+'r','o','u',00200+'t','i','n',	/*-ROU-TINE */
190	04,0200+'s','o','m',	/* -SOME */
191	04,0200+'c','o','m',	/* -COME */
192	04,0200+'t','i','m',	/* -TIME */
193	03,0200+'z','l',	/* -ZLE */
194	03,0200+'t','l',	/* -TLE */
195	03,0200+'s','l',	/* -SLE */
196	03,0200+'p','l',	/* -PLE */
197	05,0200+'v','i','l','l',	/* -VILLE */
198	04,'c','k',0200+'l',	/* CK-LE */
199	03,0200+'k','l',	/* -KLE */
200	03,0200+'g','l',	/* -GLE */
201	03,0200+'f','l',	/* -FLE */
202	03,0200+'d','l',	/* -DLE */
203	03,0200+'c','l',	/* -CLE */
204	05,0200+'p','a',0200+'b','l',	/* -PA-BLE */
205	05,'f','a',0200+'b','l',	/* FA-BLE */
206	05,0200+'c','a',0200+'b','l',	/* -CA-BLE */
207	06,0200+'s','t','a','b','l',	/* -STABLE */
208	04,0200+'a','b','l',	/* -ABLE */
209	03,0200+'b','l',	/* -BLE */
210	04,0200+'d','a','l',	/* -DALE */
211	04,0200+'m','a','l',	/* -MALE */
212	04,0200+'s','a','l',	/* -SALE */
213	04,0200+'l','i','k',	/* -LIKE */
214	0340+05,'g',0200+'u','a','g',	/* -G/UAGE */
215	05,0200+'r','i','a','g',	/* -RIAGE */
216	05,'e','r',0200+'a','g',	/* ER-AGE */
217	04,'m',0200+'a','g',	/* M-AGE */
218	04,'k',0200+'a','g',	/* K-AGE */
219	04,'d',0200+'a','g',	/* D-AGE */
220	04,0200+'w','i','f',	/* -WIFE */
221	05,0200+'k','n','i','f',	/* -KNYFE */
222	03,0200+'s','e',	/* -SEE */
223	04,0200+'f','r','e',	/* -FREE */
224	0340+02,'e',	/* EE */
225	04,0200+'w','i','d',	/* -WIDE */
226	04,0200+'t','i','d',	/* -TIDE */
227	04,0200+'s','i','d',	/* -SIDE */
228	06,0200+'q','u','e','n','c',	/* -QUENCE */
229	07,0200+'f','l','u',0200+'e','n','c',	/* -FLU-ENCE */
230	040+06,'e','s',0200+'e','n','c',	/* ES-ENCE */
231	06,'e','r',0200+'e','n','c',	/* ER-ENCE */
232	05,'i',0200+'e','n','c',	/* I-ENCE */
233	040+05,0200+'s','a','n','c',	/* -SANCE */
234	06,'e','r',0200+'a','n','c',	/* ER-ANCE */
235	06,'a','r',0200+'a','n','c',	/* AR-ANCE */
236	05,0200+'n','a','n','c',	/* -NANCE */
237	07,0200+'b','a','l',0200+'a','n','c',	/* -BAL-ANCE */
238	05,'i',0200+'a','n','c',	/* I-ANCE */
239	07,0200+'j','u','s',0200+'t','i','c',	/* -JUS-TICE */
240	05,0200+'s','t','i','c',	/* -STICE */
241	05,0200+'p','i','e','c',	/* -PIECE */
242	05,0200+'p','l','a','c',	/* -PLACE */
243	0340+01,	/* /E */
244	00
245};
246
247static	unsigned char suff[] = {
248	03,0200+'o','f',	/* -OFF */
249	05,0200+'p','r','o','o',	/* -PROOF */
250	04,0200+'s','e','l',	/* -SELF */
251	03,0200+'r','i',	/* -RIF */
252	040+04,0200+'l','i','e',	/* -LIEF */
253	00
254};
255
256static	unsigned char sufg[] = {
257	03,0200+'l','o',	/* -LOG */
258	04,0200+'l','o','n',	/* -LONG */
259	05,'t',0200+'t','i','n',	/* T-TING */
260	06,0200+'s','t','r','i','n',	/*  -STRING */
261	05,'r',0200+'r','i','n',	/* R-RING */
262	05,'p',0200+'p','i','n',	/* P-PING */
263	05,'n',0200+'n','i','n',	/* N-NING */
264	05,'m',0200+'m','i','n',	/* M-MING */
265	05,'l',0200+'l','i','n',	/*  L-LING */
266	05,0200+'z','l','i','n',	/* -ZLING */
267	05,0200+'t','l','i','n',	/* -TLING */
268	040+05,'s',0200+'l','i','n',	/* S-LING */
269	05,'r',0200+'l','i','n',	/* R-LING */
270	05,0200+'p','l','i','n',	/* -PLING */
271	06,'n',0200+'k','l','i','n',	/* N-KLING */
272	05,'k',0200+'l','i','n',	/* K-LING */
273	05,0200+'g','l','i','n',	/* -GLING */
274	05,0200+'f','l','i','n',	/* -FLING */
275	05,0200+'d','l','i','n',	/* -DLING */
276	05,0200+'c','l','i','n',	/* -CLING */
277	05,0200+'b','l','i','n',	/* -BLING */
278	06,'y',0200+'t','h','i','n',	/* Y-THING */
279	07,'e','e','t','h',0200+'i','n',	/* EETH-ING */
280	06,'e',0200+'t','h','i','n',	/* E-THING */
281	05,'g',0200+'g','i','n',	/* G-GING */
282	05,'d',0200+'d','i','n',	/* D-DING */
283	05,'b',0200+'b','i','n',	/* B-BING */
284	03,0200+'i','n',	/* -ING */
285	00
286};
287
288static	unsigned char sufh[] = {
289	05,0200+'m','o','u','t',	/* -MOUTH */
290	05,0200+'w','o','r','t',	/* -WORTH */
291	04,0200+'w','i','t',	/* -WITH */
292	05,'t',0200+'t','i','s',	/* T-TISH */
293	05,'e',0200+'t','i','s',	/* E-TISH */
294	05,'p',0200+'p','i','s',	/* P-PISH */
295	05,'r',0200+'n','i','s',	/* R-NISH */
296	05,'n',0200+'n','i','s',	/* N-NISH */
297	05,0200+'p','l','i','s',	/* -PLISH */
298	05,0200+'g','u','i','s',	/*  -GUISH */
299	05,0200+'g','l','i','s',	/*  -GLISH */
300	05,'b',0200+'l','i','s',	/*  B-LISH */
301	05,'g',0200+'g','i','s',	/* G-GISH */
302	05,'d',0200+'d','i','s',	/* D-DISH */
303	03,0200+'i','s',	/* -ISH */
304	05,0200+'g','r','a','p',	/* -GRAPH */
305	07,0200+'b','o','r',0200+'o','u','g',	/* -BOR-OUGH */
306	05,0200+'b','u','r','g',	/* -BURGH */
307	04,0200+'v','i','c',	/* -VICH */
308	03,0200+'n','a',	/* -NAH */
309	03,0200+'l','a',	/* -LAH */
310	04,0200+'m','i',0200+'a',	/* -MI-AH */
311	00
312};
313
314static	unsigned char sufi[] = {
315	03,0200+'t','r',	/* -TRI */
316	03,0200+'c','h',	/* -CHI */
317	0200+03,'i','f',	/* IF-I */
318	0200+03,'e','d',	/* ED-I */
319	05,0200+'a','s','c','i',	/* -ASCII */
320	04,0200+'s','e','m',	/* -SEMI */
321	00
322};
323
324static	unsigned char sufk[] = {
325	04,0200+'w','o','r',	/* -WORK */
326	04,0200+'m','a','r',	/* -MARK */
327	04,0200+'b','o','o',	/* -BOOK */
328	04,0200+'w','a','l',	/* -WALK */
329	05,0200+'c','r','a','c',	/* -CRACK */
330	04,0200+'b','a','c',	/* -BACK */
331	00
332};
333
334static	unsigned char sufl[] = {
335	03,0200+'f','u',	/* -FUL */
336	05,'s',0200+'w','e','l',	/* S-WELL */
337	04,0200+'t','e','l',	/* -TELL */
338	05,0200+'s','h','e','l',	/* -SHELL */
339	05,0200+'s','t','a','l',	/* -STALL */
340	04,'s',0200+'t','a',	/* S-TAL */
341	04,0200+'b','a','l',	/* -BALL */
342	04,0200+'c','a','l',	/* -CALL */
343	03,'v',0200+'e',	/* V-EL */
344	03,'u',0200+'e',	/* U-EL */
345	03,'k',0200+'e',	/* K-EL */
346	04,'t','h',0200+'e',	/* TH-EL */
347	05,'t','c','h',0200+'e',	/* TCH-EL */
348	03,'a',0200+'e',	/* A-EL */
349	0140+04,0200+'q','u','a',	/* /QUAL */
350	040+03,'u',0200+'a',	/* U-AL */
351	03,0200+'t','a',	/* -TAL */
352	04,'u','r',0200+'a',	/* UR-AL */
353	040+05,'g',0200+'o',0200+'n','a',	/* G-O-NAL */
354	04,'o','n',0200+'a',	/* ON-AL */
355	03,0200+'n','a',	/* -NAL */
356	04,0200+'t','i','a',	/* -TIAL */
357	04,0200+'s','i','a',	/* -SIAL */
358	040+05,0200+'t','r','i',0200+'a',	/* -TRI-AL */
359	04,'r','i',0200+'a',	/* RI-AL */
360	04,0200+'n','i',0200+'a',	/* -NI-AL */
361	04,0200+'d','i',0200+'a',	/* -DI-AL */
362	04,0200+'c','i','a',	/* -CIAL */
363	03,0200+'g','a',	/* -GAL */
364	04,0200+'m','e','a',	/* -MEAL */
365/*	040+04,0200+'r','e',0200+'a', */	/* -RE-AL */
366	040+04,0200+'r','e','a',	/* -REAL */
367	06,'c',0200+'t','i',0200+'c','a',	/* C-TI-CAL */
368	05,0200+'s','i',0200+'c','a',	/* -SI-CAL */
369	04,0200+'i',0200+'c','a',	/* -I-CAL */
370	03,0200+'c','a',	/* -CAL */
371	03,0200+'b','a',	/* -BAL */
372	06,0200+'n','o',0200+'m','i',0200+'a',	/* -NO-MI-AL */
373	00
374};
375
376static	unsigned char sufm[] = {
377	03,0200+'n','u',	/* -NUM */
378	05,'o',0200+'r','i',0200+'u',	/* O-RI-UM */
379	040+03,'i',0200+'u',	/* I-UM */
380	040+03,'e',0200+'u',	/* E-UM */
381	05,'i','v',0200+'i','s',	/* IV-ISM */
382	04,0200+'t','i','s',	/* -TISM */
383	05,'i',0200+'m','i','s',	/* I-MISM */
384	05,'a','l',0200+'i','s',	/* AL-ISM */
385	040+04,'e',0200+'i','s',	/* E-ISM */
386	040+04,'a',0200+'i','s',	/* A-ISM */
387	04,0200+'r','o','o',	/* -ROOM */
388	03,0200+'d','o',	/* -DOM */
389	03,0200+'h','a',	/* -HAM */
390	06,0200+'a',0200+'r','i','t','h',	/* -A-RITHM */
391	05,0200+'r','i','t','h',	/* -RITHM */
392	00
393};
394
395static	unsigned char sufn[] = {
396	05,0200+'k','n','o','w', /* -KNOWN */
397	04,0200+'t','o','w',	/* -TOWN */
398	04,0200+'d','o','w',	/* -DOWN */
399	04,0200+'t','u','r',	/* -TURN */
400	05,0200+'s','p','o','o',	/* -SPOON */
401	04,0200+'n','o','o',	/* -NOON */
402	04,0200+'m','o','o',	/* -MOON */
403	011,'a','l',0200+'i',0200+'z','a',0200+'t','i','o',	/* AL-I-ZA-TION */
404	07,0200+'i',0200+'z','a',0200+'t','i','o',	/* -I-ZA-TION */
405	07,'l',0200+'i',0200+'a',0200+'t','i','o',	/* L-I-A-TION */
406	04,0200+'t','i','o',	/* -TION */
407	040+05,'s',0200+'s','i','o',	/* S-SION */
408	04,0200+'s','i','o',	/* -SION */
409	04,'n',0200+'i','o',	/* N-ION */
410	04,0200+'g','i','o',	/* -GION */
411	04,0200+'c','i','o',	/* -CION */
412	03,0200+'c','o',	/* -CON */
413	05,0200+'c','o','l','o',	/* -COLON */
414	03,0200+'t','o',	/* -TON */
415	04,'i','s',0200+'o',		/* IS-ON */
416	03,0200+'s','o',	/* -SON */
417	03,0200+'r','i',	/* -RIN */
418	03,0200+'p','i',	/* -PIN */
419	03,0200+'n','i',	/* -NIN */
420	03,0200+'m','i',	/* -MIN */
421	03,0200+'l','i',	/* -LIN */
422	03,0200+'k','i',	/* -KIN */
423	05,0200+'s','t','e','i',	/* -STEIN */
424	04,0200+'t','a','i',	/* -TAIN */
425	05,'g','h','t',0200+'e',	/* GHT-EN */
426	05,0200+'w','o','m',0200+'e',	/* -WOM-EN */
427	03,0200+'m','e',	/* -MEN */
428	04,'o',0200+'k','e',	/* O-KEN */
429	03,'k',0200+'e',	/* K-EN */
430	04,0200+'t','e','e',	/* -TEEN */
431	04,0200+'s','e','e',	/* -SEEN */
432	040+03,0200+'s','a',	/* -SAN */
433	05,0200+'w','o','m',0200+'a',	/* -WOM-AN */
434	03,0200+'m','a',	/* -MAN */
435	04,0200+'t','i','a',	/* -TIAN */
436	04,0200+'s','i','a',	/* -SIAN */
437	040+04,'e',0200+'i','a',	/* E-IAN */
438	04,0200+'c','i','a',	/* -CIAN */
439	0300+03,'i','a',	/* IA/N */
440	05,0200+'c','l','e','a',	/* -CLEAN */
441	04,0200+'m','e','a',	/* -MEAN */
442	040+03,'e',0200+'a',	/* E-AN */
443	00
444};
445
446static	unsigned char sufo[] = {
447	05,0200+'m','a','c',0200+'r',	/* -MAC-RO */
448	00
449};
450
451static	unsigned char sufp[] = {
452	05,0200+'g','r','o','u',	/* -GROUP */
453	02,0200+'u',	/* -UP */
454	04,0200+'s','h','i',	/* -SHIP */
455	04,0200+'k','e','e',	/* -KEEP */
456	00
457};
458
459static	unsigned char sufr[] = {
460	04,0200+'z','a','r',	/* -ZARR */
461	0300+02,'r',	/* R/R */
462	03,0200+'t','o',	/* -TOR */
463	040+03,0200+'s','o',	/* -SOR */
464	040+04,0200+'r','i',0200+'o',	/* -RI-OR */
465	04,'i','z',0200+'e',	/* IZ-ER */
466	05,0200+'c','o','v',0200+'e',	/* -COV-ER */
467	04,0200+'o','v','e',	/* -OVER */
468	04,0200+'e','v',0200+'e',	/* -EV-ER */
469	8,0200+'c','o','m',0200+'p','u','t',0200+'e',	/* -COM-PUT-ER */
470	040+05,'u','s',0200+'t','e',	/* US-TER */
471	05,'o','s','t',0200+'e',	/* OST-ER */
472	040+05,0200+'a','c',0200+'t','e',	/* -AC-TER */
473	06,0200+'w','r','i','t',0200+'e',	/* -WRIT-ER */
474	040+05,'i','s',0200+'t','e',	/* IS-TER */
475	040+05,'e','s',0200+'t','e',	/* ES-TER */
476	040+05,'a','s',0200+'t','e',	/* AS-TER */
477	04,0200+'s','t','e',	/* -STER */
478	05,'a','r',0200+'t','e',	/* AR-TER */
479	04,'r','t',0200+'e',	/* RT-ER */
480	040+05,'m',0200+'e',0200+'t','e',	/* M-E-TER */
481	05,0200+'w','a',0200+'t','e',	/* -WA-TER */
482	03,'r',0200+'e',	/* R-ER */
483	04,'o','p',0200+'e',	/* OP-ER */
484	05,0200+'p','a',0200+'p','e',	/* -PA-PER */
485	04,'w','n',0200+'e',	/* WN-ER */
486	040+04,'s',0200+'n','e',	/* S-NER */
487	04,'o','n',0200+'e',	/* ON-ER */
488	04,'r','m',0200+'e',	/* RM-ER */
489	03,0200+'m','e',	/* -MER */
490	04,'l','l',0200+'e',	/* LL-ER */
491	05,'d',0200+'d','l','e',	/* D-DLER */
492	04,0200+'b','l','e',	/* -BLER */
493	03,'k',0200+'e',	/* K-ER */
494	05,'n',0200+'t','h','e',	/* N-THER */
495	06,0200+'f','a',0200+'t','h','e',	/* -FA-THER */
496	06,'e','i',0200+'t','h','e',	/* EI-THER */
497	04,'t','h',0200+'e',	/* TH-ER */
498	04,'s','h',0200+'e',	/* SH-ER */
499	04,0200+'p','h','e',	/* -PHER */
500	04,'c','h',0200+'e',	/* CH-ER */
501	04,'d','g',0200+'e',	/* DG-ER */
502	04,'r','d',0200+'e',	/* RD-ER */
503	06,'o','u','n','d',0200+'e',	/* OUND-ER */
504	04,'l','d',0200+'e',	/* LD-ER */
505	04,'i','d',0200+'e',	/* ID-ER */
506	05,0200+'d','u','c',0200+'e',	/* -DUC-ER */
507	04,'n','c',0200+'e',	/* NC-ER */
508	0100+02, 0200+'e',	/*  /ER */
509	03,0200+'s','a',	/* -SAR */
510	040+06,'a','c',0200+'u',0200+'l','a',	/* AC-U-LAR */
511	040+06,'e','c',0200+'u',0200+'l','a',	/* EC-U-LAR */
512	040+06,'i','c',0200+'u',0200+'l','a',	/* IC-U-LAR */
513	040+06,'e','g',0200+'u',0200+'l','a',	/* EG-U-LAR */
514	00
515};
516
517static	unsigned char sufs[] = {
518	040+04,'u',0200+'o','u',	/* U-OUS */
519	05,0200+'t','i','o','u',	/* -TIOUS */
520	05,0200+'g','i','o','u',	/* -GIOUS */
521	05,0200+'c','i','o','u',	/* -CIOUS */
522	040+04,'i',0200+'o','u',	/* I-OUS */
523	05,0200+'g','e','o','u',	/* -GEOUS */
524	05,0200+'c','e','o','u',	/* -CEOUS */
525	04,'e',0200+'o','u',	/* E-OUS */
526	0140+02,0200+'u',	/* /US */
527	04,0200+'n','e','s',	/* -NESS */
528	04,0200+'l','e','s',	/* -LESS */
529	0140+02,0200+'s',	/* /SS */
530	040+05,'p',0200+'o',0200+'l','i',	/* P-O-LIS */
531	0140+02,0200+'i',	/* /IS */
532	0100+03,0200+'x','e',	/* X/ES */
533	0100+03,0200+'s','e',	/* S/ES */
534	0100+04,'s','h',0200+'e',	/* SH/ES */
535	0100+04,'c','h',0200+'e',	/* CH/ES */
536	0300+01,	/* /S */
537	00
538};
539
540static	unsigned char suft[] = {
541	06,'i','o','n',0200+'i','s',	/* ION-IST */
542	05,'i','n',0200+'i','s',	/* IN-IST */
543	05,'a','l',0200+'i','s',	/* AL-IST */
544	06,'l',0200+'o',0200+'g','i','s',	/* L-O-GIST */
545	05,'h','t',0200+'e','s',	/* HT-EST */
546	04,'i',0200+'e','s',	/* I-EST */
547	05,'g',0200+'g','e','s',	/* G-GEST */
548	04,'g',0200+'e','s',	/* G-EST */
549	05,'d',0200+'d','e','s',	/* D-DEST */
550	04,'d',0200+'e','s',	/* D-EST */
551	04,0200+'c','a','s',	/* -CAST */
552	05,0200+'h','e','a','r',	/* -HEART */
553	04,0200+'f','o','o',	/* -FOOT */
554	03,'i',0200+'o',	/* I-OT */
555	05,0200+'f','r','o','n',	/* -FRONT */
556	05,0200+'p','r','i','n',	/* -PRINT */
557	04,0200+'m','e','n',	/* -MENT */
558	05,0200+'c','i','e','n',	/* -CIENT */
559	04,'i',0200+'a','n',	/* I-ANT */
560	06,0200+'w','r','i','g','h',	/* -WRIGHT */
561	06,0200+'b','r','i','g','h',	/* -BRIGHT */
562	06,0200+'f','l','i','g','h',	/* -FLIGHT */
563	06,0200+'w','e','i','g','h',	/* -WEIGHT */
564	05,0200+'s','h','i','f',	/* -SHIFT */
565	05,0200+'c','r','a','f',	/* -CRAFT */
566	040+04,'d','g',0200+'e',	/* DG-ET */
567	04,0200+'g','o','a',	/* -GOAT */
568	04,0200+'c','o','a',	/* -COAT */
569	04,0200+'b','o','a',	/* -BOAT */
570	04,0200+'w','h','a',	/* -WHAT */
571	04,0200+'c','u','i',	/* -CUIT */
572	00
573};
574
575static	unsigned char sufy[] = {
576	040+04,'e','s',0200+'t',	/* ES-TY */
577	040+05,'q','u','i',0200+'t',	/* QUI-TY */
578	04,0200+'t','i',0200+'t',	/* -TI-TY */
579	040+05,'o','s',0200+'i',0200+'t',	/* OS-I-TY */
580	04,0200+'s','i',0200+'t',	/* -SI-TY */
581	05,'i','n',0200+'i',0200+'t',	/* IN-I-TY */
582	04,'n','i',0200+'t',	/* NI-TY */
583	040+010,'f','a',0200+'b','i','l',0200+'i',0200+'t',	/* FA-BIL-I-TY */
584	010,0200+'c','a',0200+'b','i','l',0200+'i',0200+'t',	/* -CA-BIL-I-TY */
585	010,0200+'p','a',0200+'b','i','l',0200+'i',0200+'t',	/* -PA-BIL-I-TY */
586	06,0200+'b','i','l',0200+'i',0200+'t',	/* -BIL-I-TY */
587	03,'i',0200+'t',	/* I-TY */
588	04,0200+'b','u','r',	/* -BUR-Y */
589	04,0200+'t','o',0200+'r',	/* -TO-RY */
590	05,0200+'q','u','a','r',	/* -QUAR-Y */
591	040+04,'u',0200+'a','r',	/* U-ARY */
592	07,0200+'m','e','n',0200+'t','a',0200+'r',	/* -MEN-TA-RY */
593	06,'i','o','n',0200+'a','r',	/* ION-ARY */
594	04,'i',0200+'a','r',	/* I-ARY */
595	04,'n',0200+'o',0200+'m',	/* N-O-MY */
596	03,0200+'p','l',	/* -PLY */
597	04,'g',0200+'g','l',	/* G-GLY */
598	05,0200+'p','a',0200+'b','l',	/* -PA-BLY */
599	05,'f','a',0200+'b','l',	/* FA-BLY */
600	05,0200+'c','a',0200+'b','l',	/* -CA-BLY */
601	04,0200+'a','b','l',	/* -ABLY */
602	03,0200+'b','l',	/* -BLY */
603	02,0200+'l',	/* -LY */
604	03,0200+'s','k',	/* -SKY */
605	040+06,'g',0200+'r','a',0200+'p','h',	/* G-RA-PHY */
606	04,'l',0200+'o',0200+'g',	/* L-O-GY */
607	02,0200+'f',	/* -FY */
608	03,0200+'n','e',	/* -NEY */
609	03,0200+'l','e',	/* -LEY */
610	04,'c','k',0200+'e',	/* CK-EY */
611	03,0200+'k','e',	/* -KEY */
612	04,0200+'b','o','d',	/* -BODY */
613	05,0200+'s','t','u','d',	/* -STUDY */
614	0340+04,'e','e','d',	/* EEDY */
615	02,0200+'b',	/* -BY */
616	03,0200+'w','a',	/* -WAY */
617	03,0200+'d','a',	/* -DAY */
618	00
619};
620
621unsigned char	*suftab[] = {
622	sufa,
623	0,
624	sufc,
625	sufd,
626	sufe,
627	suff,
628	sufg,
629	sufh,
630	sufi,
631	0,
632	sufk,
633	sufl,
634	sufm,
635	sufn,
636	sufo,
637	sufp,
638	0,
639	sufr,
640	sufs,
641	suft,
642	0,
643	0,
644	0,
645	0,
646	sufy,
647	0,
648};
649