Blob


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