Age Owner Branch data TLA Line data Source code
1 : : /* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
2 : :
3 : : #include "header.h"
4 : :
5 : : #ifdef __cplusplus
6 : : extern "C" {
7 : : #endif
8 : : extern int turkish_UTF_8_stem(struct SN_env * z);
9 : : #ifdef __cplusplus
10 : : }
11 : : #endif
12 : : static int r_stem_suffix_chain_before_ki(struct SN_env * z);
13 : : static int r_stem_noun_suffixes(struct SN_env * z);
14 : : static int r_stem_nominal_verb_suffixes(struct SN_env * z);
15 : : static int r_remove_proper_noun_suffix(struct SN_env * z);
16 : : static int r_postlude(struct SN_env * z);
17 : : static int r_post_process_last_consonants(struct SN_env * z);
18 : : static int r_more_than_one_syllable_word(struct SN_env * z);
19 : : static int r_mark_suffix_with_optional_s_consonant(struct SN_env * z);
20 : : static int r_mark_suffix_with_optional_n_consonant(struct SN_env * z);
21 : : static int r_mark_suffix_with_optional_U_vowel(struct SN_env * z);
22 : : static int r_mark_suffix_with_optional_y_consonant(struct SN_env * z);
23 : : static int r_mark_ysA(struct SN_env * z);
24 : : static int r_mark_ymUs_(struct SN_env * z);
25 : : static int r_mark_yken(struct SN_env * z);
26 : : static int r_mark_yDU(struct SN_env * z);
27 : : static int r_mark_yUz(struct SN_env * z);
28 : : static int r_mark_yUm(struct SN_env * z);
29 : : static int r_mark_yU(struct SN_env * z);
30 : : static int r_mark_ylA(struct SN_env * z);
31 : : static int r_mark_yA(struct SN_env * z);
32 : : static int r_mark_possessives(struct SN_env * z);
33 : : static int r_mark_sUnUz(struct SN_env * z);
34 : : static int r_mark_sUn(struct SN_env * z);
35 : : static int r_mark_sU(struct SN_env * z);
36 : : static int r_mark_nUz(struct SN_env * z);
37 : : static int r_mark_nUn(struct SN_env * z);
38 : : static int r_mark_nU(struct SN_env * z);
39 : : static int r_mark_ndAn(struct SN_env * z);
40 : : static int r_mark_ndA(struct SN_env * z);
41 : : static int r_mark_ncA(struct SN_env * z);
42 : : static int r_mark_nA(struct SN_env * z);
43 : : static int r_mark_lArI(struct SN_env * z);
44 : : static int r_mark_lAr(struct SN_env * z);
45 : : static int r_mark_ki(struct SN_env * z);
46 : : static int r_mark_DUr(struct SN_env * z);
47 : : static int r_mark_DAn(struct SN_env * z);
48 : : static int r_mark_DA(struct SN_env * z);
49 : : static int r_mark_cAsInA(struct SN_env * z);
50 : : static int r_is_reserved_word(struct SN_env * z);
51 : : static int r_check_vowel_harmony(struct SN_env * z);
52 : : static int r_append_U_to_stems_ending_with_d_or_g(struct SN_env * z);
53 : : #ifdef __cplusplus
54 : : extern "C" {
55 : : #endif
56 : :
57 : :
58 : : extern struct SN_env * turkish_UTF_8_create_env(void);
59 : : extern void turkish_UTF_8_close_env(struct SN_env * z);
60 : :
61 : :
62 : : #ifdef __cplusplus
63 : : }
64 : : #endif
65 : : static const symbol s_0_0[1] = { 'm' };
66 : : static const symbol s_0_1[1] = { 'n' };
67 : : static const symbol s_0_2[3] = { 'm', 'i', 'z' };
68 : : static const symbol s_0_3[3] = { 'n', 'i', 'z' };
69 : : static const symbol s_0_4[3] = { 'm', 'u', 'z' };
70 : : static const symbol s_0_5[3] = { 'n', 'u', 'z' };
71 : : static const symbol s_0_6[4] = { 'm', 0xC4, 0xB1, 'z' };
72 : : static const symbol s_0_7[4] = { 'n', 0xC4, 0xB1, 'z' };
73 : : static const symbol s_0_8[4] = { 'm', 0xC3, 0xBC, 'z' };
74 : : static const symbol s_0_9[4] = { 'n', 0xC3, 0xBC, 'z' };
75 : :
76 : : static const struct among a_0[10] =
77 : : {
78 : : { 1, s_0_0, -1, -1, 0},
79 : : { 1, s_0_1, -1, -1, 0},
80 : : { 3, s_0_2, -1, -1, 0},
81 : : { 3, s_0_3, -1, -1, 0},
82 : : { 3, s_0_4, -1, -1, 0},
83 : : { 3, s_0_5, -1, -1, 0},
84 : : { 4, s_0_6, -1, -1, 0},
85 : : { 4, s_0_7, -1, -1, 0},
86 : : { 4, s_0_8, -1, -1, 0},
87 : : { 4, s_0_9, -1, -1, 0}
88 : : };
89 : :
90 : : static const symbol s_1_0[4] = { 'l', 'e', 'r', 'i' };
91 : : static const symbol s_1_1[5] = { 'l', 'a', 'r', 0xC4, 0xB1 };
92 : :
93 : : static const struct among a_1[2] =
94 : : {
95 : : { 4, s_1_0, -1, -1, 0},
96 : : { 5, s_1_1, -1, -1, 0}
97 : : };
98 : :
99 : : static const symbol s_2_0[2] = { 'n', 'i' };
100 : : static const symbol s_2_1[2] = { 'n', 'u' };
101 : : static const symbol s_2_2[3] = { 'n', 0xC4, 0xB1 };
102 : : static const symbol s_2_3[3] = { 'n', 0xC3, 0xBC };
103 : :
104 : : static const struct among a_2[4] =
105 : : {
106 : : { 2, s_2_0, -1, -1, 0},
107 : : { 2, s_2_1, -1, -1, 0},
108 : : { 3, s_2_2, -1, -1, 0},
109 : : { 3, s_2_3, -1, -1, 0}
110 : : };
111 : :
112 : : static const symbol s_3_0[2] = { 'i', 'n' };
113 : : static const symbol s_3_1[2] = { 'u', 'n' };
114 : : static const symbol s_3_2[3] = { 0xC4, 0xB1, 'n' };
115 : : static const symbol s_3_3[3] = { 0xC3, 0xBC, 'n' };
116 : :
117 : : static const struct among a_3[4] =
118 : : {
119 : : { 2, s_3_0, -1, -1, 0},
120 : : { 2, s_3_1, -1, -1, 0},
121 : : { 3, s_3_2, -1, -1, 0},
122 : : { 3, s_3_3, -1, -1, 0}
123 : : };
124 : :
125 : : static const symbol s_4_0[1] = { 'a' };
126 : : static const symbol s_4_1[1] = { 'e' };
127 : :
128 : : static const struct among a_4[2] =
129 : : {
130 : : { 1, s_4_0, -1, -1, 0},
131 : : { 1, s_4_1, -1, -1, 0}
132 : : };
133 : :
134 : : static const symbol s_5_0[2] = { 'n', 'a' };
135 : : static const symbol s_5_1[2] = { 'n', 'e' };
136 : :
137 : : static const struct among a_5[2] =
138 : : {
139 : : { 2, s_5_0, -1, -1, 0},
140 : : { 2, s_5_1, -1, -1, 0}
141 : : };
142 : :
143 : : static const symbol s_6_0[2] = { 'd', 'a' };
144 : : static const symbol s_6_1[2] = { 't', 'a' };
145 : : static const symbol s_6_2[2] = { 'd', 'e' };
146 : : static const symbol s_6_3[2] = { 't', 'e' };
147 : :
148 : : static const struct among a_6[4] =
149 : : {
150 : : { 2, s_6_0, -1, -1, 0},
151 : : { 2, s_6_1, -1, -1, 0},
152 : : { 2, s_6_2, -1, -1, 0},
153 : : { 2, s_6_3, -1, -1, 0}
154 : : };
155 : :
156 : : static const symbol s_7_0[3] = { 'n', 'd', 'a' };
157 : : static const symbol s_7_1[3] = { 'n', 'd', 'e' };
158 : :
159 : : static const struct among a_7[2] =
160 : : {
161 : : { 3, s_7_0, -1, -1, 0},
162 : : { 3, s_7_1, -1, -1, 0}
163 : : };
164 : :
165 : : static const symbol s_8_0[3] = { 'd', 'a', 'n' };
166 : : static const symbol s_8_1[3] = { 't', 'a', 'n' };
167 : : static const symbol s_8_2[3] = { 'd', 'e', 'n' };
168 : : static const symbol s_8_3[3] = { 't', 'e', 'n' };
169 : :
170 : : static const struct among a_8[4] =
171 : : {
172 : : { 3, s_8_0, -1, -1, 0},
173 : : { 3, s_8_1, -1, -1, 0},
174 : : { 3, s_8_2, -1, -1, 0},
175 : : { 3, s_8_3, -1, -1, 0}
176 : : };
177 : :
178 : : static const symbol s_9_0[4] = { 'n', 'd', 'a', 'n' };
179 : : static const symbol s_9_1[4] = { 'n', 'd', 'e', 'n' };
180 : :
181 : : static const struct among a_9[2] =
182 : : {
183 : : { 4, s_9_0, -1, -1, 0},
184 : : { 4, s_9_1, -1, -1, 0}
185 : : };
186 : :
187 : : static const symbol s_10_0[2] = { 'l', 'a' };
188 : : static const symbol s_10_1[2] = { 'l', 'e' };
189 : :
190 : : static const struct among a_10[2] =
191 : : {
192 : : { 2, s_10_0, -1, -1, 0},
193 : : { 2, s_10_1, -1, -1, 0}
194 : : };
195 : :
196 : : static const symbol s_11_0[2] = { 'c', 'a' };
197 : : static const symbol s_11_1[2] = { 'c', 'e' };
198 : :
199 : : static const struct among a_11[2] =
200 : : {
201 : : { 2, s_11_0, -1, -1, 0},
202 : : { 2, s_11_1, -1, -1, 0}
203 : : };
204 : :
205 : : static const symbol s_12_0[2] = { 'i', 'm' };
206 : : static const symbol s_12_1[2] = { 'u', 'm' };
207 : : static const symbol s_12_2[3] = { 0xC4, 0xB1, 'm' };
208 : : static const symbol s_12_3[3] = { 0xC3, 0xBC, 'm' };
209 : :
210 : : static const struct among a_12[4] =
211 : : {
212 : : { 2, s_12_0, -1, -1, 0},
213 : : { 2, s_12_1, -1, -1, 0},
214 : : { 3, s_12_2, -1, -1, 0},
215 : : { 3, s_12_3, -1, -1, 0}
216 : : };
217 : :
218 : : static const symbol s_13_0[3] = { 's', 'i', 'n' };
219 : : static const symbol s_13_1[3] = { 's', 'u', 'n' };
220 : : static const symbol s_13_2[4] = { 's', 0xC4, 0xB1, 'n' };
221 : : static const symbol s_13_3[4] = { 's', 0xC3, 0xBC, 'n' };
222 : :
223 : : static const struct among a_13[4] =
224 : : {
225 : : { 3, s_13_0, -1, -1, 0},
226 : : { 3, s_13_1, -1, -1, 0},
227 : : { 4, s_13_2, -1, -1, 0},
228 : : { 4, s_13_3, -1, -1, 0}
229 : : };
230 : :
231 : : static const symbol s_14_0[2] = { 'i', 'z' };
232 : : static const symbol s_14_1[2] = { 'u', 'z' };
233 : : static const symbol s_14_2[3] = { 0xC4, 0xB1, 'z' };
234 : : static const symbol s_14_3[3] = { 0xC3, 0xBC, 'z' };
235 : :
236 : : static const struct among a_14[4] =
237 : : {
238 : : { 2, s_14_0, -1, -1, 0},
239 : : { 2, s_14_1, -1, -1, 0},
240 : : { 3, s_14_2, -1, -1, 0},
241 : : { 3, s_14_3, -1, -1, 0}
242 : : };
243 : :
244 : : static const symbol s_15_0[5] = { 's', 'i', 'n', 'i', 'z' };
245 : : static const symbol s_15_1[5] = { 's', 'u', 'n', 'u', 'z' };
246 : : static const symbol s_15_2[7] = { 's', 0xC4, 0xB1, 'n', 0xC4, 0xB1, 'z' };
247 : : static const symbol s_15_3[7] = { 's', 0xC3, 0xBC, 'n', 0xC3, 0xBC, 'z' };
248 : :
249 : : static const struct among a_15[4] =
250 : : {
251 : : { 5, s_15_0, -1, -1, 0},
252 : : { 5, s_15_1, -1, -1, 0},
253 : : { 7, s_15_2, -1, -1, 0},
254 : : { 7, s_15_3, -1, -1, 0}
255 : : };
256 : :
257 : : static const symbol s_16_0[3] = { 'l', 'a', 'r' };
258 : : static const symbol s_16_1[3] = { 'l', 'e', 'r' };
259 : :
260 : : static const struct among a_16[2] =
261 : : {
262 : : { 3, s_16_0, -1, -1, 0},
263 : : { 3, s_16_1, -1, -1, 0}
264 : : };
265 : :
266 : : static const symbol s_17_0[3] = { 'n', 'i', 'z' };
267 : : static const symbol s_17_1[3] = { 'n', 'u', 'z' };
268 : : static const symbol s_17_2[4] = { 'n', 0xC4, 0xB1, 'z' };
269 : : static const symbol s_17_3[4] = { 'n', 0xC3, 0xBC, 'z' };
270 : :
271 : : static const struct among a_17[4] =
272 : : {
273 : : { 3, s_17_0, -1, -1, 0},
274 : : { 3, s_17_1, -1, -1, 0},
275 : : { 4, s_17_2, -1, -1, 0},
276 : : { 4, s_17_3, -1, -1, 0}
277 : : };
278 : :
279 : : static const symbol s_18_0[3] = { 'd', 'i', 'r' };
280 : : static const symbol s_18_1[3] = { 't', 'i', 'r' };
281 : : static const symbol s_18_2[3] = { 'd', 'u', 'r' };
282 : : static const symbol s_18_3[3] = { 't', 'u', 'r' };
283 : : static const symbol s_18_4[4] = { 'd', 0xC4, 0xB1, 'r' };
284 : : static const symbol s_18_5[4] = { 't', 0xC4, 0xB1, 'r' };
285 : : static const symbol s_18_6[4] = { 'd', 0xC3, 0xBC, 'r' };
286 : : static const symbol s_18_7[4] = { 't', 0xC3, 0xBC, 'r' };
287 : :
288 : : static const struct among a_18[8] =
289 : : {
290 : : { 3, s_18_0, -1, -1, 0},
291 : : { 3, s_18_1, -1, -1, 0},
292 : : { 3, s_18_2, -1, -1, 0},
293 : : { 3, s_18_3, -1, -1, 0},
294 : : { 4, s_18_4, -1, -1, 0},
295 : : { 4, s_18_5, -1, -1, 0},
296 : : { 4, s_18_6, -1, -1, 0},
297 : : { 4, s_18_7, -1, -1, 0}
298 : : };
299 : :
300 : : static const symbol s_19_0[7] = { 'c', 'a', 's', 0xC4, 0xB1, 'n', 'a' };
301 : : static const symbol s_19_1[6] = { 'c', 'e', 's', 'i', 'n', 'e' };
302 : :
303 : : static const struct among a_19[2] =
304 : : {
305 : : { 7, s_19_0, -1, -1, 0},
306 : : { 6, s_19_1, -1, -1, 0}
307 : : };
308 : :
309 : : static const symbol s_20_0[2] = { 'd', 'i' };
310 : : static const symbol s_20_1[2] = { 't', 'i' };
311 : : static const symbol s_20_2[3] = { 'd', 'i', 'k' };
312 : : static const symbol s_20_3[3] = { 't', 'i', 'k' };
313 : : static const symbol s_20_4[3] = { 'd', 'u', 'k' };
314 : : static const symbol s_20_5[3] = { 't', 'u', 'k' };
315 : : static const symbol s_20_6[4] = { 'd', 0xC4, 0xB1, 'k' };
316 : : static const symbol s_20_7[4] = { 't', 0xC4, 0xB1, 'k' };
317 : : static const symbol s_20_8[4] = { 'd', 0xC3, 0xBC, 'k' };
318 : : static const symbol s_20_9[4] = { 't', 0xC3, 0xBC, 'k' };
319 : : static const symbol s_20_10[3] = { 'd', 'i', 'm' };
320 : : static const symbol s_20_11[3] = { 't', 'i', 'm' };
321 : : static const symbol s_20_12[3] = { 'd', 'u', 'm' };
322 : : static const symbol s_20_13[3] = { 't', 'u', 'm' };
323 : : static const symbol s_20_14[4] = { 'd', 0xC4, 0xB1, 'm' };
324 : : static const symbol s_20_15[4] = { 't', 0xC4, 0xB1, 'm' };
325 : : static const symbol s_20_16[4] = { 'd', 0xC3, 0xBC, 'm' };
326 : : static const symbol s_20_17[4] = { 't', 0xC3, 0xBC, 'm' };
327 : : static const symbol s_20_18[3] = { 'd', 'i', 'n' };
328 : : static const symbol s_20_19[3] = { 't', 'i', 'n' };
329 : : static const symbol s_20_20[3] = { 'd', 'u', 'n' };
330 : : static const symbol s_20_21[3] = { 't', 'u', 'n' };
331 : : static const symbol s_20_22[4] = { 'd', 0xC4, 0xB1, 'n' };
332 : : static const symbol s_20_23[4] = { 't', 0xC4, 0xB1, 'n' };
333 : : static const symbol s_20_24[4] = { 'd', 0xC3, 0xBC, 'n' };
334 : : static const symbol s_20_25[4] = { 't', 0xC3, 0xBC, 'n' };
335 : : static const symbol s_20_26[2] = { 'd', 'u' };
336 : : static const symbol s_20_27[2] = { 't', 'u' };
337 : : static const symbol s_20_28[3] = { 'd', 0xC4, 0xB1 };
338 : : static const symbol s_20_29[3] = { 't', 0xC4, 0xB1 };
339 : : static const symbol s_20_30[3] = { 'd', 0xC3, 0xBC };
340 : : static const symbol s_20_31[3] = { 't', 0xC3, 0xBC };
341 : :
342 : : static const struct among a_20[32] =
343 : : {
344 : : { 2, s_20_0, -1, -1, 0},
345 : : { 2, s_20_1, -1, -1, 0},
346 : : { 3, s_20_2, -1, -1, 0},
347 : : { 3, s_20_3, -1, -1, 0},
348 : : { 3, s_20_4, -1, -1, 0},
349 : : { 3, s_20_5, -1, -1, 0},
350 : : { 4, s_20_6, -1, -1, 0},
351 : : { 4, s_20_7, -1, -1, 0},
352 : : { 4, s_20_8, -1, -1, 0},
353 : : { 4, s_20_9, -1, -1, 0},
354 : : { 3, s_20_10, -1, -1, 0},
355 : : { 3, s_20_11, -1, -1, 0},
356 : : { 3, s_20_12, -1, -1, 0},
357 : : { 3, s_20_13, -1, -1, 0},
358 : : { 4, s_20_14, -1, -1, 0},
359 : : { 4, s_20_15, -1, -1, 0},
360 : : { 4, s_20_16, -1, -1, 0},
361 : : { 4, s_20_17, -1, -1, 0},
362 : : { 3, s_20_18, -1, -1, 0},
363 : : { 3, s_20_19, -1, -1, 0},
364 : : { 3, s_20_20, -1, -1, 0},
365 : : { 3, s_20_21, -1, -1, 0},
366 : : { 4, s_20_22, -1, -1, 0},
367 : : { 4, s_20_23, -1, -1, 0},
368 : : { 4, s_20_24, -1, -1, 0},
369 : : { 4, s_20_25, -1, -1, 0},
370 : : { 2, s_20_26, -1, -1, 0},
371 : : { 2, s_20_27, -1, -1, 0},
372 : : { 3, s_20_28, -1, -1, 0},
373 : : { 3, s_20_29, -1, -1, 0},
374 : : { 3, s_20_30, -1, -1, 0},
375 : : { 3, s_20_31, -1, -1, 0}
376 : : };
377 : :
378 : : static const symbol s_21_0[2] = { 's', 'a' };
379 : : static const symbol s_21_1[2] = { 's', 'e' };
380 : : static const symbol s_21_2[3] = { 's', 'a', 'k' };
381 : : static const symbol s_21_3[3] = { 's', 'e', 'k' };
382 : : static const symbol s_21_4[3] = { 's', 'a', 'm' };
383 : : static const symbol s_21_5[3] = { 's', 'e', 'm' };
384 : : static const symbol s_21_6[3] = { 's', 'a', 'n' };
385 : : static const symbol s_21_7[3] = { 's', 'e', 'n' };
386 : :
387 : : static const struct among a_21[8] =
388 : : {
389 : : { 2, s_21_0, -1, -1, 0},
390 : : { 2, s_21_1, -1, -1, 0},
391 : : { 3, s_21_2, -1, -1, 0},
392 : : { 3, s_21_3, -1, -1, 0},
393 : : { 3, s_21_4, -1, -1, 0},
394 : : { 3, s_21_5, -1, -1, 0},
395 : : { 3, s_21_6, -1, -1, 0},
396 : : { 3, s_21_7, -1, -1, 0}
397 : : };
398 : :
399 : : static const symbol s_22_0[4] = { 'm', 'i', 0xC5, 0x9F };
400 : : static const symbol s_22_1[4] = { 'm', 'u', 0xC5, 0x9F };
401 : : static const symbol s_22_2[5] = { 'm', 0xC4, 0xB1, 0xC5, 0x9F };
402 : : static const symbol s_22_3[5] = { 'm', 0xC3, 0xBC, 0xC5, 0x9F };
403 : :
404 : : static const struct among a_22[4] =
405 : : {
406 : : { 4, s_22_0, -1, -1, 0},
407 : : { 4, s_22_1, -1, -1, 0},
408 : : { 5, s_22_2, -1, -1, 0},
409 : : { 5, s_22_3, -1, -1, 0}
410 : : };
411 : :
412 : : static const symbol s_23_0[1] = { 'b' };
413 : : static const symbol s_23_1[1] = { 'c' };
414 : : static const symbol s_23_2[1] = { 'd' };
415 : : static const symbol s_23_3[2] = { 0xC4, 0x9F };
416 : :
417 : : static const struct among a_23[4] =
418 : : {
419 : : { 1, s_23_0, -1, 1, 0},
420 : : { 1, s_23_1, -1, 2, 0},
421 : : { 1, s_23_2, -1, 3, 0},
422 : : { 2, s_23_3, -1, 4, 0}
423 : : };
424 : :
425 : : static const unsigned char g_vowel[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 8, 0, 0, 0, 0, 0, 0, 1 };
426 : :
427 : : static const unsigned char g_U[] = { 1, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 1 };
428 : :
429 : : static const unsigned char g_vowel1[] = { 1, 64, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 };
430 : :
431 : : static const unsigned char g_vowel2[] = { 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 130 };
432 : :
433 : : static const unsigned char g_vowel3[] = { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 };
434 : :
435 : : static const unsigned char g_vowel4[] = { 17 };
436 : :
437 : : static const unsigned char g_vowel5[] = { 65 };
438 : :
439 : : static const unsigned char g_vowel6[] = { 65 };
440 : :
441 : : static const symbol s_0[] = { 0xC4, 0xB1 };
442 : : static const symbol s_1[] = { 0xC3, 0xB6 };
443 : : static const symbol s_2[] = { 0xC3, 0xBC };
444 : : static const symbol s_3[] = { 'k', 'i' };
445 : : static const symbol s_4[] = { 'k', 'e', 'n' };
446 : : static const symbol s_5[] = { 'p' };
447 : : static const symbol s_6[] = { 0xC3, 0xA7 };
448 : : static const symbol s_7[] = { 't' };
449 : : static const symbol s_8[] = { 'k' };
450 : : static const symbol s_9[] = { 0xC4, 0xB1 };
451 : : static const symbol s_10[] = { 0xC4, 0xB1 };
452 : : static const symbol s_11[] = { 'i' };
453 : : static const symbol s_12[] = { 'u' };
454 : : static const symbol s_13[] = { 0xC3, 0xB6 };
455 : : static const symbol s_14[] = { 0xC3, 0xBC };
456 : : static const symbol s_15[] = { 0xC3, 0xBC };
457 : : static const symbol s_16[] = { 'a', 'd' };
458 : : static const symbol s_17[] = { 's', 'o', 'y' };
459 : :
1660 peter@eisentraut.org 460 :UBC 0 : static int r_check_vowel_harmony(struct SN_env * z) {
461 : 0 : { int m_test1 = z->l - z->c;
462 : :
463 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel, 97, 305, 1) < 0) return 0;
464 : 0 : { int m2 = z->l - z->c; (void)m2;
465 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'a') goto lab1;
2539 tgl@sss.pgh.pa.us 466 : 0 : z->c--;
467 : :
1660 peter@eisentraut.org 468 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel1, 97, 305, 1) < 0) goto lab1;
6591 tgl@sss.pgh.pa.us 469 : 0 : goto lab0;
470 : 0 : lab1:
2539 471 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 472 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab2;
2539 tgl@sss.pgh.pa.us 473 : 0 : z->c--;
474 : :
1660 peter@eisentraut.org 475 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel2, 101, 252, 1) < 0) goto lab2;
6591 tgl@sss.pgh.pa.us 476 : 0 : goto lab0;
477 : 0 : lab2:
2539 478 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 479 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_0))) goto lab3;
480 : :
481 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel3, 97, 305, 1) < 0) goto lab3;
6591 tgl@sss.pgh.pa.us 482 : 0 : goto lab0;
483 : 0 : lab3:
2539 484 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 485 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab4;
2539 tgl@sss.pgh.pa.us 486 : 0 : z->c--;
487 : :
1660 peter@eisentraut.org 488 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel4, 101, 105, 1) < 0) goto lab4;
6591 tgl@sss.pgh.pa.us 489 : 0 : goto lab0;
490 : 0 : lab4:
2539 491 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 492 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab5;
2539 tgl@sss.pgh.pa.us 493 : 0 : z->c--;
494 : :
1660 peter@eisentraut.org 495 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel5, 111, 117, 1) < 0) goto lab5;
6591 tgl@sss.pgh.pa.us 496 : 0 : goto lab0;
497 : 0 : lab5:
2539 498 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 499 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_1))) goto lab6;
500 : :
501 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel6, 246, 252, 1) < 0) goto lab6;
6591 tgl@sss.pgh.pa.us 502 : 0 : goto lab0;
503 : 0 : lab6:
2539 504 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 505 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab7;
2539 tgl@sss.pgh.pa.us 506 : 0 : z->c--;
507 : :
1660 peter@eisentraut.org 508 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel5, 111, 117, 1) < 0) goto lab7;
6591 tgl@sss.pgh.pa.us 509 : 0 : goto lab0;
510 : 0 : lab7:
2539 511 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 512 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_2))) return 0;
513 : :
514 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel6, 246, 252, 1) < 0) return 0;
515 : : }
6591 tgl@sss.pgh.pa.us 516 : 0 : lab0:
2539 517 : 0 : z->c = z->l - m_test1;
518 : : }
6591 519 : 0 : return 1;
520 : : }
521 : :
1660 peter@eisentraut.org 522 : 0 : static int r_mark_suffix_with_optional_n_consonant(struct SN_env * z) {
523 : 0 : { int m1 = z->l - z->c; (void)m1;
524 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'n') goto lab1;
2539 tgl@sss.pgh.pa.us 525 : 0 : z->c--;
1660 peter@eisentraut.org 526 : 0 : { int m_test2 = z->l - z->c;
527 [ # # ]: 0 : if (in_grouping_b_U(z, g_vowel, 97, 305, 0)) goto lab1;
2539 tgl@sss.pgh.pa.us 528 : 0 : z->c = z->l - m_test2;
529 : : }
6591 530 : 0 : goto lab0;
531 : 0 : lab1:
532 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 533 : 0 : { int m3 = z->l - z->c; (void)m3;
534 : 0 : { int m_test4 = z->l - z->c;
535 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'n') goto lab2;
2539 tgl@sss.pgh.pa.us 536 : 0 : z->c--;
537 : 0 : z->c = z->l - m_test4;
538 : : }
6591 539 : 0 : return 0;
540 : 0 : lab2:
2539 541 : 0 : z->c = z->l - m3;
542 : : }
1660 peter@eisentraut.org 543 : 0 : { int m_test5 = z->l - z->c;
544 : 0 : { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
6591 tgl@sss.pgh.pa.us 545 [ # # ]: 0 : if (ret < 0) return 0;
1660 peter@eisentraut.org 546 : 0 : z->c = ret;
547 : : }
548 [ # # ]: 0 : if (in_grouping_b_U(z, g_vowel, 97, 305, 0)) return 0;
2539 tgl@sss.pgh.pa.us 549 : 0 : z->c = z->l - m_test5;
550 : : }
551 : : }
6591 552 : 0 : lab0:
553 : 0 : return 1;
554 : : }
555 : :
1660 peter@eisentraut.org 556 : 0 : static int r_mark_suffix_with_optional_s_consonant(struct SN_env * z) {
557 : 0 : { int m1 = z->l - z->c; (void)m1;
558 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1;
2539 tgl@sss.pgh.pa.us 559 : 0 : z->c--;
1660 peter@eisentraut.org 560 : 0 : { int m_test2 = z->l - z->c;
561 [ # # ]: 0 : if (in_grouping_b_U(z, g_vowel, 97, 305, 0)) goto lab1;
2539 tgl@sss.pgh.pa.us 562 : 0 : z->c = z->l - m_test2;
563 : : }
6591 564 : 0 : goto lab0;
565 : 0 : lab1:
566 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 567 : 0 : { int m3 = z->l - z->c; (void)m3;
568 : 0 : { int m_test4 = z->l - z->c;
569 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab2;
2539 tgl@sss.pgh.pa.us 570 : 0 : z->c--;
571 : 0 : z->c = z->l - m_test4;
572 : : }
6591 573 : 0 : return 0;
574 : 0 : lab2:
2539 575 : 0 : z->c = z->l - m3;
576 : : }
1660 peter@eisentraut.org 577 : 0 : { int m_test5 = z->l - z->c;
578 : 0 : { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
6591 tgl@sss.pgh.pa.us 579 [ # # ]: 0 : if (ret < 0) return 0;
1660 peter@eisentraut.org 580 : 0 : z->c = ret;
581 : : }
582 [ # # ]: 0 : if (in_grouping_b_U(z, g_vowel, 97, 305, 0)) return 0;
2539 tgl@sss.pgh.pa.us 583 : 0 : z->c = z->l - m_test5;
584 : : }
585 : : }
6591 586 : 0 : lab0:
587 : 0 : return 1;
588 : : }
589 : :
1660 peter@eisentraut.org 590 : 0 : static int r_mark_suffix_with_optional_y_consonant(struct SN_env * z) {
591 : 0 : { int m1 = z->l - z->c; (void)m1;
592 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1;
2539 tgl@sss.pgh.pa.us 593 : 0 : z->c--;
1660 peter@eisentraut.org 594 : 0 : { int m_test2 = z->l - z->c;
595 [ # # ]: 0 : if (in_grouping_b_U(z, g_vowel, 97, 305, 0)) goto lab1;
2539 tgl@sss.pgh.pa.us 596 : 0 : z->c = z->l - m_test2;
597 : : }
6591 598 : 0 : goto lab0;
599 : 0 : lab1:
600 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 601 : 0 : { int m3 = z->l - z->c; (void)m3;
602 : 0 : { int m_test4 = z->l - z->c;
603 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab2;
2539 tgl@sss.pgh.pa.us 604 : 0 : z->c--;
605 : 0 : z->c = z->l - m_test4;
606 : : }
6591 607 : 0 : return 0;
608 : 0 : lab2:
2539 609 : 0 : z->c = z->l - m3;
610 : : }
1660 peter@eisentraut.org 611 : 0 : { int m_test5 = z->l - z->c;
612 : 0 : { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
6591 tgl@sss.pgh.pa.us 613 [ # # ]: 0 : if (ret < 0) return 0;
1660 peter@eisentraut.org 614 : 0 : z->c = ret;
615 : : }
616 [ # # ]: 0 : if (in_grouping_b_U(z, g_vowel, 97, 305, 0)) return 0;
2539 tgl@sss.pgh.pa.us 617 : 0 : z->c = z->l - m_test5;
618 : : }
619 : : }
6591 620 : 0 : lab0:
621 : 0 : return 1;
622 : : }
623 : :
1660 peter@eisentraut.org 624 : 0 : static int r_mark_suffix_with_optional_U_vowel(struct SN_env * z) {
625 : 0 : { int m1 = z->l - z->c; (void)m1;
626 [ # # ]: 0 : if (in_grouping_b_U(z, g_U, 105, 305, 0)) goto lab1;
627 : 0 : { int m_test2 = z->l - z->c;
628 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel, 97, 305, 0)) goto lab1;
2539 tgl@sss.pgh.pa.us 629 : 0 : z->c = z->l - m_test2;
630 : : }
6591 631 : 0 : goto lab0;
632 : 0 : lab1:
633 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 634 : 0 : { int m3 = z->l - z->c; (void)m3;
635 : 0 : { int m_test4 = z->l - z->c;
636 [ # # ]: 0 : if (in_grouping_b_U(z, g_U, 105, 305, 0)) goto lab2;
2539 tgl@sss.pgh.pa.us 637 : 0 : z->c = z->l - m_test4;
638 : : }
6591 639 : 0 : return 0;
640 : 0 : lab2:
2539 641 : 0 : z->c = z->l - m3;
642 : : }
1660 peter@eisentraut.org 643 : 0 : { int m_test5 = z->l - z->c;
644 : 0 : { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
6591 tgl@sss.pgh.pa.us 645 [ # # ]: 0 : if (ret < 0) return 0;
1660 peter@eisentraut.org 646 : 0 : z->c = ret;
647 : : }
648 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel, 97, 305, 0)) return 0;
2539 tgl@sss.pgh.pa.us 649 : 0 : z->c = z->l - m_test5;
650 : : }
651 : : }
6591 652 : 0 : lab0:
653 : 0 : return 1;
654 : : }
655 : :
1660 peter@eisentraut.org 656 : 0 : static int r_mark_possessives(struct SN_env * z) {
657 [ # # # # : 0 : if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((67133440 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 658 [ # # ]: 0 : if (!find_among_b(z, a_0, 10)) return 0;
1660 peter@eisentraut.org 659 : 0 : { int ret = r_mark_suffix_with_optional_U_vowel(z);
2539 tgl@sss.pgh.pa.us 660 [ # # ]: 0 : if (ret <= 0) return ret;
661 : : }
6591 662 : 0 : return 1;
663 : : }
664 : :
1660 peter@eisentraut.org 665 : 0 : static int r_mark_sU(struct SN_env * z) {
666 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 667 [ # # ]: 0 : if (ret <= 0) return ret;
668 : : }
1660 peter@eisentraut.org 669 [ # # ]: 0 : if (in_grouping_b_U(z, g_U, 105, 305, 0)) return 0;
670 : 0 : { int ret = r_mark_suffix_with_optional_s_consonant(z);
2539 tgl@sss.pgh.pa.us 671 [ # # ]: 0 : if (ret <= 0) return ret;
672 : : }
6591 673 : 0 : return 1;
674 : : }
675 : :
1660 peter@eisentraut.org 676 : 0 : static int r_mark_lArI(struct SN_env * z) {
677 [ # # # # : 0 : if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 177)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 678 [ # # ]: 0 : if (!find_among_b(z, a_1, 2)) return 0;
6591 679 : 0 : return 1;
680 : : }
681 : :
1660 peter@eisentraut.org 682 : 0 : static int r_mark_yU(struct SN_env * z) {
683 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 684 [ # # ]: 0 : if (ret <= 0) return ret;
685 : : }
1660 peter@eisentraut.org 686 [ # # ]: 0 : if (in_grouping_b_U(z, g_U, 105, 305, 0)) return 0;
687 : 0 : { int ret = r_mark_suffix_with_optional_y_consonant(z);
2539 tgl@sss.pgh.pa.us 688 [ # # ]: 0 : if (ret <= 0) return ret;
689 : : }
6591 690 : 0 : return 1;
691 : : }
692 : :
1660 peter@eisentraut.org 693 : 0 : static int r_mark_nU(struct SN_env * z) {
694 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 695 [ # # ]: 0 : if (ret <= 0) return ret;
696 : : }
200 697 [ # # ]: 0 : if (!find_among_b(z, a_2, 4)) return 0;
6591 698 : 0 : return 1;
699 : : }
700 : :
1660 peter@eisentraut.org 701 : 0 : static int r_mark_nUn(struct SN_env * z) {
702 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 703 [ # # ]: 0 : if (ret <= 0) return ret;
704 : : }
1660 peter@eisentraut.org 705 [ # # # # ]: 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] != 110) return 0;
200 tgl@sss.pgh.pa.us 706 [ # # ]: 0 : if (!find_among_b(z, a_3, 4)) return 0;
1660 peter@eisentraut.org 707 : 0 : { int ret = r_mark_suffix_with_optional_n_consonant(z);
2539 tgl@sss.pgh.pa.us 708 [ # # ]: 0 : if (ret <= 0) return ret;
709 : : }
6591 710 : 0 : return 1;
711 : : }
712 : :
1660 peter@eisentraut.org 713 : 0 : static int r_mark_yA(struct SN_env * z) {
714 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 715 [ # # ]: 0 : if (ret <= 0) return ret;
716 : : }
1660 peter@eisentraut.org 717 [ # # # # : 0 : if (z->c <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 101)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 718 [ # # ]: 0 : if (!find_among_b(z, a_4, 2)) return 0;
1660 peter@eisentraut.org 719 : 0 : { int ret = r_mark_suffix_with_optional_y_consonant(z);
2539 tgl@sss.pgh.pa.us 720 [ # # ]: 0 : if (ret <= 0) return ret;
721 : : }
6591 722 : 0 : return 1;
723 : : }
724 : :
1660 peter@eisentraut.org 725 : 0 : static int r_mark_nA(struct SN_env * z) {
726 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 727 [ # # ]: 0 : if (ret <= 0) return ret;
728 : : }
1660 peter@eisentraut.org 729 [ # # # # : 0 : if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 101)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 730 [ # # ]: 0 : if (!find_among_b(z, a_5, 2)) return 0;
6591 731 : 0 : return 1;
732 : : }
733 : :
1660 peter@eisentraut.org 734 : 0 : static int r_mark_DA(struct SN_env * z) {
735 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 736 [ # # ]: 0 : if (ret <= 0) return ret;
737 : : }
1660 peter@eisentraut.org 738 [ # # # # : 0 : if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 101)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 739 [ # # ]: 0 : if (!find_among_b(z, a_6, 4)) return 0;
6591 740 : 0 : return 1;
741 : : }
742 : :
1660 peter@eisentraut.org 743 : 0 : static int r_mark_ndA(struct SN_env * z) {
744 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 745 [ # # ]: 0 : if (ret <= 0) return ret;
746 : : }
1660 peter@eisentraut.org 747 [ # # # # : 0 : if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 101)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 748 [ # # ]: 0 : if (!find_among_b(z, a_7, 2)) return 0;
6591 749 : 0 : return 1;
750 : : }
751 : :
1660 peter@eisentraut.org 752 : 0 : static int r_mark_DAn(struct SN_env * z) {
753 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 754 [ # # ]: 0 : if (ret <= 0) return ret;
755 : : }
1660 peter@eisentraut.org 756 [ # # # # ]: 0 : if (z->c - 2 <= z->lb || z->p[z->c - 1] != 110) return 0;
200 tgl@sss.pgh.pa.us 757 [ # # ]: 0 : if (!find_among_b(z, a_8, 4)) return 0;
6591 758 : 0 : return 1;
759 : : }
760 : :
1660 peter@eisentraut.org 761 : 0 : static int r_mark_ndAn(struct SN_env * z) {
762 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 763 [ # # ]: 0 : if (ret <= 0) return ret;
764 : : }
1660 peter@eisentraut.org 765 [ # # # # ]: 0 : if (z->c - 3 <= z->lb || z->p[z->c - 1] != 110) return 0;
200 tgl@sss.pgh.pa.us 766 [ # # ]: 0 : if (!find_among_b(z, a_9, 2)) return 0;
6591 767 : 0 : return 1;
768 : : }
769 : :
1660 peter@eisentraut.org 770 : 0 : static int r_mark_ylA(struct SN_env * z) {
771 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 772 [ # # ]: 0 : if (ret <= 0) return ret;
773 : : }
1660 peter@eisentraut.org 774 [ # # # # : 0 : if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 101)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 775 [ # # ]: 0 : if (!find_among_b(z, a_10, 2)) return 0;
1660 peter@eisentraut.org 776 : 0 : { int ret = r_mark_suffix_with_optional_y_consonant(z);
2539 tgl@sss.pgh.pa.us 777 [ # # ]: 0 : if (ret <= 0) return ret;
778 : : }
6591 779 : 0 : return 1;
780 : : }
781 : :
1660 peter@eisentraut.org 782 : 0 : static int r_mark_ki(struct SN_env * z) {
783 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_3))) return 0;
6591 tgl@sss.pgh.pa.us 784 : 0 : return 1;
785 : : }
786 : :
1660 peter@eisentraut.org 787 : 0 : static int r_mark_ncA(struct SN_env * z) {
788 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 789 [ # # ]: 0 : if (ret <= 0) return ret;
790 : : }
1660 peter@eisentraut.org 791 [ # # # # : 0 : if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 101)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 792 [ # # ]: 0 : if (!find_among_b(z, a_11, 2)) return 0;
1660 peter@eisentraut.org 793 : 0 : { int ret = r_mark_suffix_with_optional_n_consonant(z);
2539 tgl@sss.pgh.pa.us 794 [ # # ]: 0 : if (ret <= 0) return ret;
795 : : }
6591 796 : 0 : return 1;
797 : : }
798 : :
1660 peter@eisentraut.org 799 : 0 : static int r_mark_yUm(struct SN_env * z) {
800 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 801 [ # # ]: 0 : if (ret <= 0) return ret;
802 : : }
1660 peter@eisentraut.org 803 [ # # # # ]: 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] != 109) return 0;
200 tgl@sss.pgh.pa.us 804 [ # # ]: 0 : if (!find_among_b(z, a_12, 4)) return 0;
1660 peter@eisentraut.org 805 : 0 : { int ret = r_mark_suffix_with_optional_y_consonant(z);
2539 tgl@sss.pgh.pa.us 806 [ # # ]: 0 : if (ret <= 0) return ret;
807 : : }
6591 808 : 0 : return 1;
809 : : }
810 : :
1660 peter@eisentraut.org 811 : 0 : static int r_mark_sUn(struct SN_env * z) {
812 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 813 [ # # ]: 0 : if (ret <= 0) return ret;
814 : : }
1660 peter@eisentraut.org 815 [ # # # # ]: 0 : if (z->c - 2 <= z->lb || z->p[z->c - 1] != 110) return 0;
200 tgl@sss.pgh.pa.us 816 [ # # ]: 0 : if (!find_among_b(z, a_13, 4)) return 0;
6591 817 : 0 : return 1;
818 : : }
819 : :
1660 peter@eisentraut.org 820 : 0 : static int r_mark_yUz(struct SN_env * z) {
821 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 822 [ # # ]: 0 : if (ret <= 0) return ret;
823 : : }
1660 peter@eisentraut.org 824 [ # # # # ]: 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] != 122) return 0;
200 tgl@sss.pgh.pa.us 825 [ # # ]: 0 : if (!find_among_b(z, a_14, 4)) return 0;
1660 peter@eisentraut.org 826 : 0 : { int ret = r_mark_suffix_with_optional_y_consonant(z);
2539 tgl@sss.pgh.pa.us 827 [ # # ]: 0 : if (ret <= 0) return ret;
828 : : }
6591 829 : 0 : return 1;
830 : : }
831 : :
1660 peter@eisentraut.org 832 : 0 : static int r_mark_sUnUz(struct SN_env * z) {
833 [ # # # # ]: 0 : if (z->c - 4 <= z->lb || z->p[z->c - 1] != 122) return 0;
200 tgl@sss.pgh.pa.us 834 [ # # ]: 0 : if (!find_among_b(z, a_15, 4)) return 0;
6591 835 : 0 : return 1;
836 : : }
837 : :
1660 peter@eisentraut.org 838 : 0 : static int r_mark_lAr(struct SN_env * z) {
839 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 840 [ # # ]: 0 : if (ret <= 0) return ret;
841 : : }
1660 peter@eisentraut.org 842 [ # # # # ]: 0 : if (z->c - 2 <= z->lb || z->p[z->c - 1] != 114) return 0;
200 tgl@sss.pgh.pa.us 843 [ # # ]: 0 : if (!find_among_b(z, a_16, 2)) return 0;
6591 844 : 0 : return 1;
845 : : }
846 : :
1660 peter@eisentraut.org 847 : 0 : static int r_mark_nUz(struct SN_env * z) {
848 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 849 [ # # ]: 0 : if (ret <= 0) return ret;
850 : : }
1660 peter@eisentraut.org 851 [ # # # # ]: 0 : if (z->c - 2 <= z->lb || z->p[z->c - 1] != 122) return 0;
200 tgl@sss.pgh.pa.us 852 [ # # ]: 0 : if (!find_among_b(z, a_17, 4)) return 0;
6591 853 : 0 : return 1;
854 : : }
855 : :
1660 peter@eisentraut.org 856 : 0 : static int r_mark_DUr(struct SN_env * z) {
857 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 858 [ # # ]: 0 : if (ret <= 0) return ret;
859 : : }
1660 peter@eisentraut.org 860 [ # # # # ]: 0 : if (z->c - 2 <= z->lb || z->p[z->c - 1] != 114) return 0;
200 tgl@sss.pgh.pa.us 861 [ # # ]: 0 : if (!find_among_b(z, a_18, 8)) return 0;
6591 862 : 0 : return 1;
863 : : }
864 : :
1660 peter@eisentraut.org 865 : 0 : static int r_mark_cAsInA(struct SN_env * z) {
866 [ # # # # : 0 : if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 101)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 867 [ # # ]: 0 : if (!find_among_b(z, a_19, 2)) return 0;
6591 868 : 0 : return 1;
869 : : }
870 : :
1660 peter@eisentraut.org 871 : 0 : static int r_mark_yDU(struct SN_env * z) {
872 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 873 [ # # ]: 0 : if (ret <= 0) return ret;
874 : : }
200 875 [ # # ]: 0 : if (!find_among_b(z, a_20, 32)) return 0;
1660 peter@eisentraut.org 876 : 0 : { int ret = r_mark_suffix_with_optional_y_consonant(z);
2539 tgl@sss.pgh.pa.us 877 [ # # ]: 0 : if (ret <= 0) return ret;
878 : : }
6591 879 : 0 : return 1;
880 : : }
881 : :
1660 peter@eisentraut.org 882 : 0 : static int r_mark_ysA(struct SN_env * z) {
883 [ # # # # : 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((26658 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
# # ]
200 tgl@sss.pgh.pa.us 884 [ # # ]: 0 : if (!find_among_b(z, a_21, 8)) return 0;
1660 peter@eisentraut.org 885 : 0 : { int ret = r_mark_suffix_with_optional_y_consonant(z);
2539 tgl@sss.pgh.pa.us 886 [ # # ]: 0 : if (ret <= 0) return ret;
887 : : }
6591 888 : 0 : return 1;
889 : : }
890 : :
1660 peter@eisentraut.org 891 : 0 : static int r_mark_ymUs_(struct SN_env * z) {
892 : 0 : { int ret = r_check_vowel_harmony(z);
2539 tgl@sss.pgh.pa.us 893 [ # # ]: 0 : if (ret <= 0) return ret;
894 : : }
1660 peter@eisentraut.org 895 [ # # # # ]: 0 : if (z->c - 3 <= z->lb || z->p[z->c - 1] != 159) return 0;
200 tgl@sss.pgh.pa.us 896 [ # # ]: 0 : if (!find_among_b(z, a_22, 4)) return 0;
1660 peter@eisentraut.org 897 : 0 : { int ret = r_mark_suffix_with_optional_y_consonant(z);
2539 tgl@sss.pgh.pa.us 898 [ # # ]: 0 : if (ret <= 0) return ret;
899 : : }
6591 900 : 0 : return 1;
901 : : }
902 : :
1660 peter@eisentraut.org 903 : 0 : static int r_mark_yken(struct SN_env * z) {
904 [ # # ]: 0 : if (!(eq_s_b(z, 3, s_4))) return 0;
905 : 0 : { int ret = r_mark_suffix_with_optional_y_consonant(z);
2539 tgl@sss.pgh.pa.us 906 [ # # ]: 0 : if (ret <= 0) return ret;
907 : : }
6591 908 : 0 : return 1;
909 : : }
910 : :
1660 peter@eisentraut.org 911 : 0 : static int r_stem_nominal_verb_suffixes(struct SN_env * z) {
912 : 0 : z->ket = z->c;
913 : 0 : z->I[0] = 1;
914 : 0 : { int m1 = z->l - z->c; (void)m1;
915 : 0 : { int m2 = z->l - z->c; (void)m2;
916 : 0 : { int ret = r_mark_ymUs_(z);
2539 tgl@sss.pgh.pa.us 917 [ # # ]: 0 : if (ret == 0) goto lab3;
6591 918 [ # # ]: 0 : if (ret < 0) return ret;
919 : : }
920 : 0 : goto lab2;
921 : 0 : lab3:
922 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 923 : 0 : { int ret = r_mark_yDU(z);
2539 tgl@sss.pgh.pa.us 924 [ # # ]: 0 : if (ret == 0) goto lab4;
6591 925 [ # # ]: 0 : if (ret < 0) return ret;
926 : : }
927 : 0 : goto lab2;
928 : 0 : lab4:
929 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 930 : 0 : { int ret = r_mark_ysA(z);
2539 tgl@sss.pgh.pa.us 931 [ # # ]: 0 : if (ret == 0) goto lab5;
6591 932 [ # # ]: 0 : if (ret < 0) return ret;
933 : : }
934 : 0 : goto lab2;
935 : 0 : lab5:
936 : 0 : z->c = z->l - m2;
1660 peter@eisentraut.org 937 : 0 : { int ret = r_mark_yken(z);
2539 tgl@sss.pgh.pa.us 938 [ # # ]: 0 : if (ret == 0) goto lab1;
6591 939 [ # # ]: 0 : if (ret < 0) return ret;
940 : : }
941 : : }
942 : 0 : lab2:
943 : 0 : goto lab0;
944 : 0 : lab1:
945 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 946 : 0 : { int ret = r_mark_cAsInA(z);
2539 tgl@sss.pgh.pa.us 947 [ # # ]: 0 : if (ret == 0) goto lab6;
6591 948 [ # # ]: 0 : if (ret < 0) return ret;
949 : : }
1660 peter@eisentraut.org 950 : 0 : { int m3 = z->l - z->c; (void)m3;
951 : 0 : { int ret = r_mark_sUnUz(z);
2539 tgl@sss.pgh.pa.us 952 [ # # ]: 0 : if (ret == 0) goto lab8;
6591 953 [ # # ]: 0 : if (ret < 0) return ret;
954 : : }
955 : 0 : goto lab7;
956 : 0 : lab8:
957 : 0 : z->c = z->l - m3;
1660 peter@eisentraut.org 958 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 959 [ # # ]: 0 : if (ret == 0) goto lab9;
6591 960 [ # # ]: 0 : if (ret < 0) return ret;
961 : : }
962 : 0 : goto lab7;
963 : 0 : lab9:
964 : 0 : z->c = z->l - m3;
1660 peter@eisentraut.org 965 : 0 : { int ret = r_mark_yUm(z);
2539 tgl@sss.pgh.pa.us 966 [ # # ]: 0 : if (ret == 0) goto lab10;
6591 967 [ # # ]: 0 : if (ret < 0) return ret;
968 : : }
969 : 0 : goto lab7;
970 : 0 : lab10:
971 : 0 : z->c = z->l - m3;
1660 peter@eisentraut.org 972 : 0 : { int ret = r_mark_sUn(z);
2539 tgl@sss.pgh.pa.us 973 [ # # ]: 0 : if (ret == 0) goto lab11;
6591 974 [ # # ]: 0 : if (ret < 0) return ret;
975 : : }
976 : 0 : goto lab7;
977 : 0 : lab11:
978 : 0 : z->c = z->l - m3;
1660 peter@eisentraut.org 979 : 0 : { int ret = r_mark_yUz(z);
2539 tgl@sss.pgh.pa.us 980 [ # # ]: 0 : if (ret == 0) goto lab12;
6591 981 [ # # ]: 0 : if (ret < 0) return ret;
982 : : }
983 : 0 : goto lab7;
984 : 0 : lab12:
985 : 0 : z->c = z->l - m3;
986 : : }
987 : 0 : lab7:
1660 peter@eisentraut.org 988 : 0 : { int ret = r_mark_ymUs_(z);
2539 tgl@sss.pgh.pa.us 989 [ # # ]: 0 : if (ret == 0) goto lab6;
6591 990 [ # # ]: 0 : if (ret < 0) return ret;
991 : : }
992 : 0 : goto lab0;
993 : 0 : lab6:
994 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 995 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 996 [ # # ]: 0 : if (ret == 0) goto lab13;
6591 997 [ # # ]: 0 : if (ret < 0) return ret;
998 : : }
1660 peter@eisentraut.org 999 : 0 : z->bra = z->c;
1000 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1001 [ # # ]: 0 : if (ret < 0) return ret;
1002 : : }
1660 peter@eisentraut.org 1003 : 0 : { int m4 = z->l - z->c; (void)m4;
1004 : 0 : z->ket = z->c;
1005 : 0 : { int m5 = z->l - z->c; (void)m5;
1006 : 0 : { int ret = r_mark_DUr(z);
2539 tgl@sss.pgh.pa.us 1007 [ # # ]: 0 : if (ret == 0) goto lab16;
6591 1008 [ # # ]: 0 : if (ret < 0) return ret;
1009 : : }
1010 : 0 : goto lab15;
1011 : 0 : lab16:
2539 1012 : 0 : z->c = z->l - m5;
1660 peter@eisentraut.org 1013 : 0 : { int ret = r_mark_yDU(z);
2539 tgl@sss.pgh.pa.us 1014 [ # # ]: 0 : if (ret == 0) goto lab17;
6591 1015 [ # # ]: 0 : if (ret < 0) return ret;
1016 : : }
1017 : 0 : goto lab15;
1018 : 0 : lab17:
2539 1019 : 0 : z->c = z->l - m5;
1660 peter@eisentraut.org 1020 : 0 : { int ret = r_mark_ysA(z);
2539 tgl@sss.pgh.pa.us 1021 [ # # ]: 0 : if (ret == 0) goto lab18;
6591 1022 [ # # ]: 0 : if (ret < 0) return ret;
1023 : : }
1024 : 0 : goto lab15;
1025 : 0 : lab18:
2539 1026 : 0 : z->c = z->l - m5;
1660 peter@eisentraut.org 1027 : 0 : { int ret = r_mark_ymUs_(z);
2539 tgl@sss.pgh.pa.us 1028 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m4; goto lab14; }
6591 1029 [ # # ]: 0 : if (ret < 0) return ret;
1030 : : }
1031 : : }
1032 : 0 : lab15:
1033 : 0 : lab14:
1034 : : ;
1035 : : }
1660 peter@eisentraut.org 1036 : 0 : z->I[0] = 0;
6591 tgl@sss.pgh.pa.us 1037 : 0 : goto lab0;
1038 : 0 : lab13:
1039 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1040 : 0 : { int ret = r_mark_nUz(z);
2539 tgl@sss.pgh.pa.us 1041 [ # # ]: 0 : if (ret == 0) goto lab19;
6591 1042 [ # # ]: 0 : if (ret < 0) return ret;
1043 : : }
1660 peter@eisentraut.org 1044 : 0 : { int m6 = z->l - z->c; (void)m6;
1045 : 0 : { int ret = r_mark_yDU(z);
2539 tgl@sss.pgh.pa.us 1046 [ # # ]: 0 : if (ret == 0) goto lab21;
6591 1047 [ # # ]: 0 : if (ret < 0) return ret;
1048 : : }
1049 : 0 : goto lab20;
1050 : 0 : lab21:
2539 1051 : 0 : z->c = z->l - m6;
1660 peter@eisentraut.org 1052 : 0 : { int ret = r_mark_ysA(z);
2539 tgl@sss.pgh.pa.us 1053 [ # # ]: 0 : if (ret == 0) goto lab19;
6591 1054 [ # # ]: 0 : if (ret < 0) return ret;
1055 : : }
1056 : : }
1057 : 0 : lab20:
1058 : 0 : goto lab0;
1059 : 0 : lab19:
1060 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1061 : 0 : { int m7 = z->l - z->c; (void)m7;
1062 : 0 : { int ret = r_mark_sUnUz(z);
2539 tgl@sss.pgh.pa.us 1063 [ # # ]: 0 : if (ret == 0) goto lab24;
6591 1064 [ # # ]: 0 : if (ret < 0) return ret;
1065 : : }
1066 : 0 : goto lab23;
1067 : 0 : lab24:
2539 1068 : 0 : z->c = z->l - m7;
1660 peter@eisentraut.org 1069 : 0 : { int ret = r_mark_yUz(z);
2539 tgl@sss.pgh.pa.us 1070 [ # # ]: 0 : if (ret == 0) goto lab25;
6591 1071 [ # # ]: 0 : if (ret < 0) return ret;
1072 : : }
1073 : 0 : goto lab23;
1074 : 0 : lab25:
2539 1075 : 0 : z->c = z->l - m7;
1660 peter@eisentraut.org 1076 : 0 : { int ret = r_mark_sUn(z);
2539 tgl@sss.pgh.pa.us 1077 [ # # ]: 0 : if (ret == 0) goto lab26;
6591 1078 [ # # ]: 0 : if (ret < 0) return ret;
1079 : : }
1080 : 0 : goto lab23;
1081 : 0 : lab26:
2539 1082 : 0 : z->c = z->l - m7;
1660 peter@eisentraut.org 1083 : 0 : { int ret = r_mark_yUm(z);
2539 tgl@sss.pgh.pa.us 1084 [ # # ]: 0 : if (ret == 0) goto lab22;
6591 1085 [ # # ]: 0 : if (ret < 0) return ret;
1086 : : }
1087 : : }
1088 : 0 : lab23:
1660 peter@eisentraut.org 1089 : 0 : z->bra = z->c;
1090 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1091 [ # # ]: 0 : if (ret < 0) return ret;
1092 : : }
1660 peter@eisentraut.org 1093 : 0 : { int m8 = z->l - z->c; (void)m8;
1094 : 0 : z->ket = z->c;
1095 : 0 : { int ret = r_mark_ymUs_(z);
2539 tgl@sss.pgh.pa.us 1096 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m8; goto lab27; }
6591 1097 [ # # ]: 0 : if (ret < 0) return ret;
1098 : : }
1099 : 0 : lab27:
1100 : : ;
1101 : : }
1102 : 0 : goto lab0;
1103 : 0 : lab22:
1104 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1105 : 0 : { int ret = r_mark_DUr(z);
2539 tgl@sss.pgh.pa.us 1106 [ # # ]: 0 : if (ret <= 0) return ret;
1107 : : }
1660 peter@eisentraut.org 1108 : 0 : z->bra = z->c;
1109 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1110 [ # # ]: 0 : if (ret < 0) return ret;
1111 : : }
1660 peter@eisentraut.org 1112 : 0 : { int m9 = z->l - z->c; (void)m9;
1113 : 0 : z->ket = z->c;
1114 : 0 : { int m10 = z->l - z->c; (void)m10;
1115 : 0 : { int ret = r_mark_sUnUz(z);
2539 tgl@sss.pgh.pa.us 1116 [ # # ]: 0 : if (ret == 0) goto lab30;
6591 1117 [ # # ]: 0 : if (ret < 0) return ret;
1118 : : }
1119 : 0 : goto lab29;
1120 : 0 : lab30:
2539 1121 : 0 : z->c = z->l - m10;
1660 peter@eisentraut.org 1122 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1123 [ # # ]: 0 : if (ret == 0) goto lab31;
6591 1124 [ # # ]: 0 : if (ret < 0) return ret;
1125 : : }
1126 : 0 : goto lab29;
1127 : 0 : lab31:
2539 1128 : 0 : z->c = z->l - m10;
1660 peter@eisentraut.org 1129 : 0 : { int ret = r_mark_yUm(z);
2539 tgl@sss.pgh.pa.us 1130 [ # # ]: 0 : if (ret == 0) goto lab32;
6591 1131 [ # # ]: 0 : if (ret < 0) return ret;
1132 : : }
1133 : 0 : goto lab29;
1134 : 0 : lab32:
2539 1135 : 0 : z->c = z->l - m10;
1660 peter@eisentraut.org 1136 : 0 : { int ret = r_mark_sUn(z);
2539 tgl@sss.pgh.pa.us 1137 [ # # ]: 0 : if (ret == 0) goto lab33;
6591 1138 [ # # ]: 0 : if (ret < 0) return ret;
1139 : : }
1140 : 0 : goto lab29;
1141 : 0 : lab33:
2539 1142 : 0 : z->c = z->l - m10;
1660 peter@eisentraut.org 1143 : 0 : { int ret = r_mark_yUz(z);
2539 tgl@sss.pgh.pa.us 1144 [ # # ]: 0 : if (ret == 0) goto lab34;
6591 1145 [ # # ]: 0 : if (ret < 0) return ret;
1146 : : }
1147 : 0 : goto lab29;
1148 : 0 : lab34:
2539 1149 : 0 : z->c = z->l - m10;
1150 : : }
6591 1151 : 0 : lab29:
1660 peter@eisentraut.org 1152 : 0 : { int ret = r_mark_ymUs_(z);
2539 tgl@sss.pgh.pa.us 1153 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m9; goto lab28; }
6591 1154 [ # # ]: 0 : if (ret < 0) return ret;
1155 : : }
1156 : 0 : lab28:
1157 : : ;
1158 : : }
1159 : : }
1160 : 0 : lab0:
1660 peter@eisentraut.org 1161 : 0 : z->bra = z->c;
1162 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1163 [ # # ]: 0 : if (ret < 0) return ret;
1164 : : }
1165 : 0 : return 1;
1166 : : }
1167 : :
1660 peter@eisentraut.org 1168 : 0 : static int r_stem_suffix_chain_before_ki(struct SN_env * z) {
1169 : 0 : z->ket = z->c;
1170 : 0 : { int ret = r_mark_ki(z);
2539 tgl@sss.pgh.pa.us 1171 [ # # ]: 0 : if (ret <= 0) return ret;
1172 : : }
1660 peter@eisentraut.org 1173 : 0 : { int m1 = z->l - z->c; (void)m1;
1174 : 0 : { int ret = r_mark_DA(z);
2539 tgl@sss.pgh.pa.us 1175 [ # # ]: 0 : if (ret == 0) goto lab1;
6591 1176 [ # # ]: 0 : if (ret < 0) return ret;
1177 : : }
1660 peter@eisentraut.org 1178 : 0 : z->bra = z->c;
1179 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1180 [ # # ]: 0 : if (ret < 0) return ret;
1181 : : }
1660 peter@eisentraut.org 1182 : 0 : { int m2 = z->l - z->c; (void)m2;
1183 : 0 : z->ket = z->c;
1184 : 0 : { int m3 = z->l - z->c; (void)m3;
1185 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1186 [ # # ]: 0 : if (ret == 0) goto lab4;
6591 1187 [ # # ]: 0 : if (ret < 0) return ret;
1188 : : }
1660 peter@eisentraut.org 1189 : 0 : z->bra = z->c;
1190 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1191 [ # # ]: 0 : if (ret < 0) return ret;
1192 : : }
1660 peter@eisentraut.org 1193 : 0 : { int m4 = z->l - z->c; (void)m4;
1194 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1195 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m4; goto lab5; }
6591 1196 [ # # ]: 0 : if (ret < 0) return ret;
1197 : : }
1198 : 0 : lab5:
1199 : : ;
1200 : : }
1201 : 0 : goto lab3;
1202 : 0 : lab4:
2539 1203 : 0 : z->c = z->l - m3;
1660 peter@eisentraut.org 1204 : 0 : { int ret = r_mark_possessives(z);
2539 tgl@sss.pgh.pa.us 1205 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m2; goto lab2; }
6591 1206 [ # # ]: 0 : if (ret < 0) return ret;
1207 : : }
1660 peter@eisentraut.org 1208 : 0 : z->bra = z->c;
1209 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1210 [ # # ]: 0 : if (ret < 0) return ret;
1211 : : }
1660 peter@eisentraut.org 1212 : 0 : { int m5 = z->l - z->c; (void)m5;
1213 : 0 : z->ket = z->c;
1214 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1215 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m5; goto lab6; }
6591 1216 [ # # ]: 0 : if (ret < 0) return ret;
1217 : : }
1660 peter@eisentraut.org 1218 : 0 : z->bra = z->c;
1219 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1220 [ # # ]: 0 : if (ret < 0) return ret;
1221 : : }
1660 peter@eisentraut.org 1222 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1223 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m5; goto lab6; }
6591 1224 [ # # ]: 0 : if (ret < 0) return ret;
1225 : : }
1226 : 0 : lab6:
1227 : : ;
1228 : : }
1229 : : }
1230 : 0 : lab3:
1231 : 0 : lab2:
1232 : : ;
1233 : : }
1234 : 0 : goto lab0;
1235 : 0 : lab1:
1236 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1237 : 0 : { int ret = r_mark_nUn(z);
2539 tgl@sss.pgh.pa.us 1238 [ # # ]: 0 : if (ret == 0) goto lab7;
6591 1239 [ # # ]: 0 : if (ret < 0) return ret;
1240 : : }
1660 peter@eisentraut.org 1241 : 0 : z->bra = z->c;
1242 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1243 [ # # ]: 0 : if (ret < 0) return ret;
1244 : : }
1660 peter@eisentraut.org 1245 : 0 : { int m6 = z->l - z->c; (void)m6;
1246 : 0 : z->ket = z->c;
1247 : 0 : { int m7 = z->l - z->c; (void)m7;
1248 : 0 : { int ret = r_mark_lArI(z);
2539 tgl@sss.pgh.pa.us 1249 [ # # ]: 0 : if (ret == 0) goto lab10;
6591 1250 [ # # ]: 0 : if (ret < 0) return ret;
1251 : : }
1660 peter@eisentraut.org 1252 : 0 : z->bra = z->c;
1253 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1254 [ # # ]: 0 : if (ret < 0) return ret;
1255 : : }
1256 : 0 : goto lab9;
1257 : 0 : lab10:
2539 1258 : 0 : z->c = z->l - m7;
1660 peter@eisentraut.org 1259 : 0 : z->ket = z->c;
1260 : 0 : { int m8 = z->l - z->c; (void)m8;
1261 : 0 : { int ret = r_mark_possessives(z);
2539 tgl@sss.pgh.pa.us 1262 [ # # ]: 0 : if (ret == 0) goto lab13;
6591 1263 [ # # ]: 0 : if (ret < 0) return ret;
1264 : : }
1265 : 0 : goto lab12;
1266 : 0 : lab13:
2539 1267 : 0 : z->c = z->l - m8;
1660 peter@eisentraut.org 1268 : 0 : { int ret = r_mark_sU(z);
2539 tgl@sss.pgh.pa.us 1269 [ # # ]: 0 : if (ret == 0) goto lab11;
6591 1270 [ # # ]: 0 : if (ret < 0) return ret;
1271 : : }
1272 : : }
1273 : 0 : lab12:
1660 peter@eisentraut.org 1274 : 0 : z->bra = z->c;
1275 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1276 [ # # ]: 0 : if (ret < 0) return ret;
1277 : : }
1660 peter@eisentraut.org 1278 : 0 : { int m9 = z->l - z->c; (void)m9;
1279 : 0 : z->ket = z->c;
1280 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1281 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m9; goto lab14; }
6591 1282 [ # # ]: 0 : if (ret < 0) return ret;
1283 : : }
1660 peter@eisentraut.org 1284 : 0 : z->bra = z->c;
1285 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1286 [ # # ]: 0 : if (ret < 0) return ret;
1287 : : }
1660 peter@eisentraut.org 1288 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1289 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m9; goto lab14; }
6591 1290 [ # # ]: 0 : if (ret < 0) return ret;
1291 : : }
1292 : 0 : lab14:
1293 : : ;
1294 : : }
1295 : 0 : goto lab9;
1296 : 0 : lab11:
2539 1297 : 0 : z->c = z->l - m7;
1660 peter@eisentraut.org 1298 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1299 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m6; goto lab8; }
6591 1300 [ # # ]: 0 : if (ret < 0) return ret;
1301 : : }
1302 : : }
1303 : 0 : lab9:
1304 : 0 : lab8:
1305 : : ;
1306 : : }
1307 : 0 : goto lab0;
1308 : 0 : lab7:
1309 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1310 : 0 : { int ret = r_mark_ndA(z);
2539 tgl@sss.pgh.pa.us 1311 [ # # ]: 0 : if (ret <= 0) return ret;
1312 : : }
1660 peter@eisentraut.org 1313 : 0 : { int m10 = z->l - z->c; (void)m10;
1314 : 0 : { int ret = r_mark_lArI(z);
2539 tgl@sss.pgh.pa.us 1315 [ # # ]: 0 : if (ret == 0) goto lab16;
6591 1316 [ # # ]: 0 : if (ret < 0) return ret;
1317 : : }
1660 peter@eisentraut.org 1318 : 0 : z->bra = z->c;
1319 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1320 [ # # ]: 0 : if (ret < 0) return ret;
1321 : : }
1322 : 0 : goto lab15;
1323 : 0 : lab16:
2539 1324 : 0 : z->c = z->l - m10;
1660 peter@eisentraut.org 1325 : 0 : { int ret = r_mark_sU(z);
2539 tgl@sss.pgh.pa.us 1326 [ # # ]: 0 : if (ret == 0) goto lab17;
6591 1327 [ # # ]: 0 : if (ret < 0) return ret;
1328 : : }
1660 peter@eisentraut.org 1329 : 0 : z->bra = z->c;
1330 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1331 [ # # ]: 0 : if (ret < 0) return ret;
1332 : : }
1660 peter@eisentraut.org 1333 : 0 : { int m11 = z->l - z->c; (void)m11;
1334 : 0 : z->ket = z->c;
1335 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1336 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m11; goto lab18; }
6591 1337 [ # # ]: 0 : if (ret < 0) return ret;
1338 : : }
1660 peter@eisentraut.org 1339 : 0 : z->bra = z->c;
1340 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1341 [ # # ]: 0 : if (ret < 0) return ret;
1342 : : }
1660 peter@eisentraut.org 1343 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1344 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m11; goto lab18; }
6591 1345 [ # # ]: 0 : if (ret < 0) return ret;
1346 : : }
1347 : 0 : lab18:
1348 : : ;
1349 : : }
1350 : 0 : goto lab15;
1351 : 0 : lab17:
2539 1352 : 0 : z->c = z->l - m10;
1660 peter@eisentraut.org 1353 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1354 [ # # ]: 0 : if (ret <= 0) return ret;
1355 : : }
1356 : : }
6591 1357 : 0 : lab15:
1358 : : ;
1359 : : }
1360 : 0 : lab0:
1361 : 0 : return 1;
1362 : : }
1363 : :
1660 peter@eisentraut.org 1364 : 0 : static int r_stem_noun_suffixes(struct SN_env * z) {
1365 : 0 : { int m1 = z->l - z->c; (void)m1;
1366 : 0 : z->ket = z->c;
1367 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1368 [ # # ]: 0 : if (ret == 0) goto lab1;
6591 1369 [ # # ]: 0 : if (ret < 0) return ret;
1370 : : }
1660 peter@eisentraut.org 1371 : 0 : z->bra = z->c;
1372 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1373 [ # # ]: 0 : if (ret < 0) return ret;
1374 : : }
1660 peter@eisentraut.org 1375 : 0 : { int m2 = z->l - z->c; (void)m2;
1376 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1377 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m2; goto lab2; }
6591 1378 [ # # ]: 0 : if (ret < 0) return ret;
1379 : : }
1380 : 0 : lab2:
1381 : : ;
1382 : : }
1383 : 0 : goto lab0;
1384 : 0 : lab1:
1385 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1386 : 0 : z->ket = z->c;
1387 : 0 : { int ret = r_mark_ncA(z);
2539 tgl@sss.pgh.pa.us 1388 [ # # ]: 0 : if (ret == 0) goto lab3;
6591 1389 [ # # ]: 0 : if (ret < 0) return ret;
1390 : : }
1660 peter@eisentraut.org 1391 : 0 : z->bra = z->c;
1392 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1393 [ # # ]: 0 : if (ret < 0) return ret;
1394 : : }
1660 peter@eisentraut.org 1395 : 0 : { int m3 = z->l - z->c; (void)m3;
1396 : 0 : { int m4 = z->l - z->c; (void)m4;
1397 : 0 : z->ket = z->c;
1398 : 0 : { int ret = r_mark_lArI(z);
2539 tgl@sss.pgh.pa.us 1399 [ # # ]: 0 : if (ret == 0) goto lab6;
6591 1400 [ # # ]: 0 : if (ret < 0) return ret;
1401 : : }
1660 peter@eisentraut.org 1402 : 0 : z->bra = z->c;
1403 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1404 [ # # ]: 0 : if (ret < 0) return ret;
1405 : : }
1406 : 0 : goto lab5;
1407 : 0 : lab6:
2539 1408 : 0 : z->c = z->l - m4;
1660 peter@eisentraut.org 1409 : 0 : z->ket = z->c;
1410 : 0 : { int m5 = z->l - z->c; (void)m5;
1411 : 0 : { int ret = r_mark_possessives(z);
2539 tgl@sss.pgh.pa.us 1412 [ # # ]: 0 : if (ret == 0) goto lab9;
6591 1413 [ # # ]: 0 : if (ret < 0) return ret;
1414 : : }
1415 : 0 : goto lab8;
1416 : 0 : lab9:
2539 1417 : 0 : z->c = z->l - m5;
1660 peter@eisentraut.org 1418 : 0 : { int ret = r_mark_sU(z);
2539 tgl@sss.pgh.pa.us 1419 [ # # ]: 0 : if (ret == 0) goto lab7;
6591 1420 [ # # ]: 0 : if (ret < 0) return ret;
1421 : : }
1422 : : }
1423 : 0 : lab8:
1660 peter@eisentraut.org 1424 : 0 : z->bra = z->c;
1425 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1426 [ # # ]: 0 : if (ret < 0) return ret;
1427 : : }
1660 peter@eisentraut.org 1428 : 0 : { int m6 = z->l - z->c; (void)m6;
1429 : 0 : z->ket = z->c;
1430 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1431 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m6; goto lab10; }
6591 1432 [ # # ]: 0 : if (ret < 0) return ret;
1433 : : }
1660 peter@eisentraut.org 1434 : 0 : z->bra = z->c;
1435 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1436 [ # # ]: 0 : if (ret < 0) return ret;
1437 : : }
1660 peter@eisentraut.org 1438 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1439 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m6; goto lab10; }
6591 1440 [ # # ]: 0 : if (ret < 0) return ret;
1441 : : }
1442 : 0 : lab10:
1443 : : ;
1444 : : }
1445 : 0 : goto lab5;
1446 : 0 : lab7:
2539 1447 : 0 : z->c = z->l - m4;
1660 peter@eisentraut.org 1448 : 0 : z->ket = z->c;
1449 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1450 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m3; goto lab4; }
6591 1451 [ # # ]: 0 : if (ret < 0) return ret;
1452 : : }
1660 peter@eisentraut.org 1453 : 0 : z->bra = z->c;
1454 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1455 [ # # ]: 0 : if (ret < 0) return ret;
1456 : : }
1660 peter@eisentraut.org 1457 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1458 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m3; goto lab4; }
6591 1459 [ # # ]: 0 : if (ret < 0) return ret;
1460 : : }
1461 : : }
1462 : 0 : lab5:
1463 : 0 : lab4:
1464 : : ;
1465 : : }
1466 : 0 : goto lab0;
1467 : 0 : lab3:
1468 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1469 : 0 : z->ket = z->c;
1470 : 0 : { int m7 = z->l - z->c; (void)m7;
1471 : 0 : { int ret = r_mark_ndA(z);
2539 tgl@sss.pgh.pa.us 1472 [ # # ]: 0 : if (ret == 0) goto lab13;
6591 1473 [ # # ]: 0 : if (ret < 0) return ret;
1474 : : }
1475 : 0 : goto lab12;
1476 : 0 : lab13:
2539 1477 : 0 : z->c = z->l - m7;
1660 peter@eisentraut.org 1478 : 0 : { int ret = r_mark_nA(z);
2539 tgl@sss.pgh.pa.us 1479 [ # # ]: 0 : if (ret == 0) goto lab11;
6591 1480 [ # # ]: 0 : if (ret < 0) return ret;
1481 : : }
1482 : : }
1483 : 0 : lab12:
1660 peter@eisentraut.org 1484 : 0 : { int m8 = z->l - z->c; (void)m8;
1485 : 0 : { int ret = r_mark_lArI(z);
2539 tgl@sss.pgh.pa.us 1486 [ # # ]: 0 : if (ret == 0) goto lab15;
6591 1487 [ # # ]: 0 : if (ret < 0) return ret;
1488 : : }
1660 peter@eisentraut.org 1489 : 0 : z->bra = z->c;
1490 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1491 [ # # ]: 0 : if (ret < 0) return ret;
1492 : : }
1493 : 0 : goto lab14;
1494 : 0 : lab15:
2539 1495 : 0 : z->c = z->l - m8;
1660 peter@eisentraut.org 1496 : 0 : { int ret = r_mark_sU(z);
2539 tgl@sss.pgh.pa.us 1497 [ # # ]: 0 : if (ret == 0) goto lab16;
6591 1498 [ # # ]: 0 : if (ret < 0) return ret;
1499 : : }
1660 peter@eisentraut.org 1500 : 0 : z->bra = z->c;
1501 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1502 [ # # ]: 0 : if (ret < 0) return ret;
1503 : : }
1660 peter@eisentraut.org 1504 : 0 : { int m9 = z->l - z->c; (void)m9;
1505 : 0 : z->ket = z->c;
1506 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1507 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m9; goto lab17; }
6591 1508 [ # # ]: 0 : if (ret < 0) return ret;
1509 : : }
1660 peter@eisentraut.org 1510 : 0 : z->bra = z->c;
1511 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1512 [ # # ]: 0 : if (ret < 0) return ret;
1513 : : }
1660 peter@eisentraut.org 1514 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1515 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m9; goto lab17; }
6591 1516 [ # # ]: 0 : if (ret < 0) return ret;
1517 : : }
1518 : 0 : lab17:
1519 : : ;
1520 : : }
1521 : 0 : goto lab14;
1522 : 0 : lab16:
2539 1523 : 0 : z->c = z->l - m8;
1660 peter@eisentraut.org 1524 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1525 [ # # ]: 0 : if (ret == 0) goto lab11;
6591 1526 [ # # ]: 0 : if (ret < 0) return ret;
1527 : : }
1528 : : }
1529 : 0 : lab14:
1530 : 0 : goto lab0;
1531 : 0 : lab11:
1532 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1533 : 0 : z->ket = z->c;
1534 : 0 : { int m10 = z->l - z->c; (void)m10;
1535 : 0 : { int ret = r_mark_ndAn(z);
2539 tgl@sss.pgh.pa.us 1536 [ # # ]: 0 : if (ret == 0) goto lab20;
6591 1537 [ # # ]: 0 : if (ret < 0) return ret;
1538 : : }
1539 : 0 : goto lab19;
1540 : 0 : lab20:
2539 1541 : 0 : z->c = z->l - m10;
1660 peter@eisentraut.org 1542 : 0 : { int ret = r_mark_nU(z);
2539 tgl@sss.pgh.pa.us 1543 [ # # ]: 0 : if (ret == 0) goto lab18;
6591 1544 [ # # ]: 0 : if (ret < 0) return ret;
1545 : : }
1546 : : }
1547 : 0 : lab19:
1660 peter@eisentraut.org 1548 : 0 : { int m11 = z->l - z->c; (void)m11;
1549 : 0 : { int ret = r_mark_sU(z);
2539 tgl@sss.pgh.pa.us 1550 [ # # ]: 0 : if (ret == 0) goto lab22;
6591 1551 [ # # ]: 0 : if (ret < 0) return ret;
1552 : : }
1660 peter@eisentraut.org 1553 : 0 : z->bra = z->c;
1554 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1555 [ # # ]: 0 : if (ret < 0) return ret;
1556 : : }
1660 peter@eisentraut.org 1557 : 0 : { int m12 = z->l - z->c; (void)m12;
1558 : 0 : z->ket = z->c;
1559 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1560 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m12; goto lab23; }
6591 1561 [ # # ]: 0 : if (ret < 0) return ret;
1562 : : }
1660 peter@eisentraut.org 1563 : 0 : z->bra = z->c;
1564 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1565 [ # # ]: 0 : if (ret < 0) return ret;
1566 : : }
1660 peter@eisentraut.org 1567 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1568 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m12; goto lab23; }
6591 1569 [ # # ]: 0 : if (ret < 0) return ret;
1570 : : }
1571 : 0 : lab23:
1572 : : ;
1573 : : }
1574 : 0 : goto lab21;
1575 : 0 : lab22:
2539 1576 : 0 : z->c = z->l - m11;
1660 peter@eisentraut.org 1577 : 0 : { int ret = r_mark_lArI(z);
2539 tgl@sss.pgh.pa.us 1578 [ # # ]: 0 : if (ret == 0) goto lab18;
6591 1579 [ # # ]: 0 : if (ret < 0) return ret;
1580 : : }
1581 : : }
1582 : 0 : lab21:
1583 : 0 : goto lab0;
1584 : 0 : lab18:
1585 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1586 : 0 : z->ket = z->c;
1587 : 0 : { int ret = r_mark_DAn(z);
2539 tgl@sss.pgh.pa.us 1588 [ # # ]: 0 : if (ret == 0) goto lab24;
6591 1589 [ # # ]: 0 : if (ret < 0) return ret;
1590 : : }
1660 peter@eisentraut.org 1591 : 0 : z->bra = z->c;
1592 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1593 [ # # ]: 0 : if (ret < 0) return ret;
1594 : : }
1660 peter@eisentraut.org 1595 : 0 : { int m13 = z->l - z->c; (void)m13;
1596 : 0 : z->ket = z->c;
1597 : 0 : { int m14 = z->l - z->c; (void)m14;
1598 : 0 : { int ret = r_mark_possessives(z);
2539 tgl@sss.pgh.pa.us 1599 [ # # ]: 0 : if (ret == 0) goto lab27;
6591 1600 [ # # ]: 0 : if (ret < 0) return ret;
1601 : : }
1660 peter@eisentraut.org 1602 : 0 : z->bra = z->c;
1603 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1604 [ # # ]: 0 : if (ret < 0) return ret;
1605 : : }
1660 peter@eisentraut.org 1606 : 0 : { int m15 = z->l - z->c; (void)m15;
1607 : 0 : z->ket = z->c;
1608 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1609 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m15; goto lab28; }
6591 1610 [ # # ]: 0 : if (ret < 0) return ret;
1611 : : }
1660 peter@eisentraut.org 1612 : 0 : z->bra = z->c;
1613 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1614 [ # # ]: 0 : if (ret < 0) return ret;
1615 : : }
1660 peter@eisentraut.org 1616 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1617 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m15; goto lab28; }
6591 1618 [ # # ]: 0 : if (ret < 0) return ret;
1619 : : }
1620 : 0 : lab28:
1621 : : ;
1622 : : }
1623 : 0 : goto lab26;
1624 : 0 : lab27:
2539 1625 : 0 : z->c = z->l - m14;
1660 peter@eisentraut.org 1626 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1627 [ # # ]: 0 : if (ret == 0) goto lab29;
6591 1628 [ # # ]: 0 : if (ret < 0) return ret;
1629 : : }
1660 peter@eisentraut.org 1630 : 0 : z->bra = z->c;
1631 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1632 [ # # ]: 0 : if (ret < 0) return ret;
1633 : : }
1660 peter@eisentraut.org 1634 : 0 : { int m16 = z->l - z->c; (void)m16;
1635 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1636 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m16; goto lab30; }
6591 1637 [ # # ]: 0 : if (ret < 0) return ret;
1638 : : }
1639 : 0 : lab30:
1640 : : ;
1641 : : }
1642 : 0 : goto lab26;
1643 : 0 : lab29:
2539 1644 : 0 : z->c = z->l - m14;
1660 peter@eisentraut.org 1645 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1646 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m13; goto lab25; }
6591 1647 [ # # ]: 0 : if (ret < 0) return ret;
1648 : : }
1649 : : }
1650 : 0 : lab26:
1651 : 0 : lab25:
1652 : : ;
1653 : : }
1654 : 0 : goto lab0;
1655 : 0 : lab24:
1656 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1657 : 0 : z->ket = z->c;
1658 : 0 : { int m17 = z->l - z->c; (void)m17;
1659 : 0 : { int ret = r_mark_nUn(z);
2539 tgl@sss.pgh.pa.us 1660 [ # # ]: 0 : if (ret == 0) goto lab33;
6591 1661 [ # # ]: 0 : if (ret < 0) return ret;
1662 : : }
1663 : 0 : goto lab32;
1664 : 0 : lab33:
2539 1665 : 0 : z->c = z->l - m17;
1660 peter@eisentraut.org 1666 : 0 : { int ret = r_mark_ylA(z);
2539 tgl@sss.pgh.pa.us 1667 [ # # ]: 0 : if (ret == 0) goto lab31;
6591 1668 [ # # ]: 0 : if (ret < 0) return ret;
1669 : : }
1670 : : }
1671 : 0 : lab32:
1660 peter@eisentraut.org 1672 : 0 : z->bra = z->c;
1673 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1674 [ # # ]: 0 : if (ret < 0) return ret;
1675 : : }
1660 peter@eisentraut.org 1676 : 0 : { int m18 = z->l - z->c; (void)m18;
1677 : 0 : { int m19 = z->l - z->c; (void)m19;
1678 : 0 : z->ket = z->c;
1679 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1680 [ # # ]: 0 : if (ret == 0) goto lab36;
6591 1681 [ # # ]: 0 : if (ret < 0) return ret;
1682 : : }
1660 peter@eisentraut.org 1683 : 0 : z->bra = z->c;
1684 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1685 [ # # ]: 0 : if (ret < 0) return ret;
1686 : : }
1660 peter@eisentraut.org 1687 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1688 [ # # ]: 0 : if (ret == 0) goto lab36;
6591 1689 [ # # ]: 0 : if (ret < 0) return ret;
1690 : : }
1691 : 0 : goto lab35;
1692 : 0 : lab36:
2539 1693 : 0 : z->c = z->l - m19;
1660 peter@eisentraut.org 1694 : 0 : z->ket = z->c;
1695 : 0 : { int m20 = z->l - z->c; (void)m20;
1696 : 0 : { int ret = r_mark_possessives(z);
2539 tgl@sss.pgh.pa.us 1697 [ # # ]: 0 : if (ret == 0) goto lab39;
6591 1698 [ # # ]: 0 : if (ret < 0) return ret;
1699 : : }
1700 : 0 : goto lab38;
1701 : 0 : lab39:
2539 1702 : 0 : z->c = z->l - m20;
1660 peter@eisentraut.org 1703 : 0 : { int ret = r_mark_sU(z);
2539 tgl@sss.pgh.pa.us 1704 [ # # ]: 0 : if (ret == 0) goto lab37;
6591 1705 [ # # ]: 0 : if (ret < 0) return ret;
1706 : : }
1707 : : }
1708 : 0 : lab38:
1660 peter@eisentraut.org 1709 : 0 : z->bra = z->c;
1710 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1711 [ # # ]: 0 : if (ret < 0) return ret;
1712 : : }
1660 peter@eisentraut.org 1713 : 0 : { int m21 = z->l - z->c; (void)m21;
1714 : 0 : z->ket = z->c;
1715 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1716 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m21; goto lab40; }
6591 1717 [ # # ]: 0 : if (ret < 0) return ret;
1718 : : }
1660 peter@eisentraut.org 1719 : 0 : z->bra = z->c;
1720 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1721 [ # # ]: 0 : if (ret < 0) return ret;
1722 : : }
1660 peter@eisentraut.org 1723 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1724 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m21; goto lab40; }
6591 1725 [ # # ]: 0 : if (ret < 0) return ret;
1726 : : }
1727 : 0 : lab40:
1728 : : ;
1729 : : }
1730 : 0 : goto lab35;
1731 : 0 : lab37:
2539 1732 : 0 : z->c = z->l - m19;
1660 peter@eisentraut.org 1733 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1734 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m18; goto lab34; }
6591 1735 [ # # ]: 0 : if (ret < 0) return ret;
1736 : : }
1737 : : }
1738 : 0 : lab35:
1739 : 0 : lab34:
1740 : : ;
1741 : : }
1742 : 0 : goto lab0;
1743 : 0 : lab31:
1744 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1745 : 0 : z->ket = z->c;
1746 : 0 : { int ret = r_mark_lArI(z);
2539 tgl@sss.pgh.pa.us 1747 [ # # ]: 0 : if (ret == 0) goto lab41;
6591 1748 [ # # ]: 0 : if (ret < 0) return ret;
1749 : : }
1660 peter@eisentraut.org 1750 : 0 : z->bra = z->c;
1751 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1752 [ # # ]: 0 : if (ret < 0) return ret;
1753 : : }
1754 : 0 : goto lab0;
1755 : 0 : lab41:
1756 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1757 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1758 [ # # ]: 0 : if (ret == 0) goto lab42;
6591 1759 [ # # ]: 0 : if (ret < 0) return ret;
1760 : : }
1761 : 0 : goto lab0;
1762 : 0 : lab42:
1763 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1764 : 0 : z->ket = z->c;
1765 : 0 : { int m22 = z->l - z->c; (void)m22;
1766 : 0 : { int ret = r_mark_DA(z);
2539 tgl@sss.pgh.pa.us 1767 [ # # ]: 0 : if (ret == 0) goto lab45;
6591 1768 [ # # ]: 0 : if (ret < 0) return ret;
1769 : : }
1770 : 0 : goto lab44;
1771 : 0 : lab45:
2539 1772 : 0 : z->c = z->l - m22;
1660 peter@eisentraut.org 1773 : 0 : { int ret = r_mark_yU(z);
2539 tgl@sss.pgh.pa.us 1774 [ # # ]: 0 : if (ret == 0) goto lab46;
6591 1775 [ # # ]: 0 : if (ret < 0) return ret;
1776 : : }
1777 : 0 : goto lab44;
1778 : 0 : lab46:
2539 1779 : 0 : z->c = z->l - m22;
1660 peter@eisentraut.org 1780 : 0 : { int ret = r_mark_yA(z);
2539 tgl@sss.pgh.pa.us 1781 [ # # ]: 0 : if (ret == 0) goto lab43;
6591 1782 [ # # ]: 0 : if (ret < 0) return ret;
1783 : : }
1784 : : }
1785 : 0 : lab44:
1660 peter@eisentraut.org 1786 : 0 : z->bra = z->c;
1787 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1788 [ # # ]: 0 : if (ret < 0) return ret;
1789 : : }
1660 peter@eisentraut.org 1790 : 0 : { int m23 = z->l - z->c; (void)m23;
1791 : 0 : z->ket = z->c;
1792 : 0 : { int m24 = z->l - z->c; (void)m24;
1793 : 0 : { int ret = r_mark_possessives(z);
2539 tgl@sss.pgh.pa.us 1794 [ # # ]: 0 : if (ret == 0) goto lab49;
6591 1795 [ # # ]: 0 : if (ret < 0) return ret;
1796 : : }
1660 peter@eisentraut.org 1797 : 0 : z->bra = z->c;
1798 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1799 [ # # ]: 0 : if (ret < 0) return ret;
1800 : : }
1660 peter@eisentraut.org 1801 : 0 : { int m25 = z->l - z->c; (void)m25;
1802 : 0 : z->ket = z->c;
1803 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1804 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m25; goto lab50; }
6591 1805 [ # # ]: 0 : if (ret < 0) return ret;
1806 : : }
1807 : 0 : lab50:
1808 : : ;
1809 : : }
1810 : 0 : goto lab48;
1811 : 0 : lab49:
2539 1812 : 0 : z->c = z->l - m24;
1660 peter@eisentraut.org 1813 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1814 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m23; goto lab47; }
6591 1815 [ # # ]: 0 : if (ret < 0) return ret;
1816 : : }
1817 : : }
1818 : 0 : lab48:
1660 peter@eisentraut.org 1819 : 0 : z->bra = z->c;
1820 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1821 [ # # ]: 0 : if (ret < 0) return ret;
1822 : : }
1660 peter@eisentraut.org 1823 : 0 : z->ket = z->c;
1824 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1825 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m23; goto lab47; }
6591 1826 [ # # ]: 0 : if (ret < 0) return ret;
1827 : : }
1828 : 0 : lab47:
1829 : : ;
1830 : : }
1831 : 0 : goto lab0;
1832 : 0 : lab43:
1833 : 0 : z->c = z->l - m1;
1660 peter@eisentraut.org 1834 : 0 : z->ket = z->c;
1835 : 0 : { int m26 = z->l - z->c; (void)m26;
1836 : 0 : { int ret = r_mark_possessives(z);
2539 tgl@sss.pgh.pa.us 1837 [ # # ]: 0 : if (ret == 0) goto lab52;
6591 1838 [ # # ]: 0 : if (ret < 0) return ret;
1839 : : }
1840 : 0 : goto lab51;
1841 : 0 : lab52:
2539 1842 : 0 : z->c = z->l - m26;
1660 peter@eisentraut.org 1843 : 0 : { int ret = r_mark_sU(z);
2539 tgl@sss.pgh.pa.us 1844 [ # # ]: 0 : if (ret <= 0) return ret;
1845 : : }
1846 : : }
6591 1847 : 0 : lab51:
1660 peter@eisentraut.org 1848 : 0 : z->bra = z->c;
1849 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1850 [ # # ]: 0 : if (ret < 0) return ret;
1851 : : }
1660 peter@eisentraut.org 1852 : 0 : { int m27 = z->l - z->c; (void)m27;
1853 : 0 : z->ket = z->c;
1854 : 0 : { int ret = r_mark_lAr(z);
2539 tgl@sss.pgh.pa.us 1855 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m27; goto lab53; }
6591 1856 [ # # ]: 0 : if (ret < 0) return ret;
1857 : : }
1660 peter@eisentraut.org 1858 : 0 : z->bra = z->c;
1859 : 0 : { int ret = slice_del(z);
6591 tgl@sss.pgh.pa.us 1860 [ # # ]: 0 : if (ret < 0) return ret;
1861 : : }
1660 peter@eisentraut.org 1862 : 0 : { int ret = r_stem_suffix_chain_before_ki(z);
2539 tgl@sss.pgh.pa.us 1863 [ # # ]: 0 : if (ret == 0) { z->c = z->l - m27; goto lab53; }
6591 1864 [ # # ]: 0 : if (ret < 0) return ret;
1865 : : }
1866 : 0 : lab53:
1867 : : ;
1868 : : }
1869 : : }
1870 : 0 : lab0:
1871 : 0 : return 1;
1872 : : }
1873 : :
1660 peter@eisentraut.org 1874 : 0 : static int r_post_process_last_consonants(struct SN_env * z) {
1875 : : int among_var;
1876 : 0 : z->ket = z->c;
1877 : 0 : among_var = find_among_b(z, a_23, 4);
200 tgl@sss.pgh.pa.us 1878 [ # # ]: 0 : if (!among_var) return 0;
1660 peter@eisentraut.org 1879 : 0 : z->bra = z->c;
1880 [ # # # # : 0 : switch (among_var) {
# ]
6591 tgl@sss.pgh.pa.us 1881 : 0 : case 1:
1660 peter@eisentraut.org 1882 : 0 : { int ret = slice_from_s(z, 1, s_5);
6591 tgl@sss.pgh.pa.us 1883 [ # # ]: 0 : if (ret < 0) return ret;
1884 : : }
1885 : 0 : break;
1886 : 0 : case 2:
1660 peter@eisentraut.org 1887 : 0 : { int ret = slice_from_s(z, 2, s_6);
6591 tgl@sss.pgh.pa.us 1888 [ # # ]: 0 : if (ret < 0) return ret;
1889 : : }
1890 : 0 : break;
1891 : 0 : case 3:
1660 peter@eisentraut.org 1892 : 0 : { int ret = slice_from_s(z, 1, s_7);
6591 tgl@sss.pgh.pa.us 1893 [ # # ]: 0 : if (ret < 0) return ret;
1894 : : }
1895 : 0 : break;
1896 : 0 : case 4:
1660 peter@eisentraut.org 1897 : 0 : { int ret = slice_from_s(z, 1, s_8);
6591 tgl@sss.pgh.pa.us 1898 [ # # ]: 0 : if (ret < 0) return ret;
1899 : : }
1900 : 0 : break;
1901 : : }
1902 : 0 : return 1;
1903 : : }
1904 : :
1660 peter@eisentraut.org 1905 : 0 : static int r_append_U_to_stems_ending_with_d_or_g(struct SN_env * z) {
200 tgl@sss.pgh.pa.us 1906 : 0 : z->ket = z->c;
1907 : 0 : z->bra = z->c;
1908 : 0 : { int m1 = z->l - z->c; (void)m1;
1909 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'd') goto lab1;
1910 : 0 : z->c--;
1911 : 0 : goto lab0;
1912 : 0 : lab1:
1913 : 0 : z->c = z->l - m1;
1914 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'g') return 0;
1915 : 0 : z->c--;
1916 : : }
1917 : 0 : lab0:
1918 : :
1919 [ # # ]: 0 : if (out_grouping_b_U(z, g_vowel, 97, 305, 1) < 0) return 0;
1920 : 0 : { int m2 = z->l - z->c; (void)m2;
1921 : 0 : { int m3 = z->l - z->c; (void)m3;
1922 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'a') goto lab5;
1923 : 0 : z->c--;
1924 : 0 : goto lab4;
1925 : 0 : lab5:
1926 : 0 : z->c = z->l - m3;
1927 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_9))) goto lab3;
1928 : : }
1929 : 0 : lab4:
1930 : 0 : { int ret = slice_from_s(z, 2, s_10);
6591 1931 [ # # ]: 0 : if (ret < 0) return ret;
1932 : : }
1933 : 0 : goto lab2;
1934 : 0 : lab3:
200 1935 : 0 : z->c = z->l - m2;
1936 : 0 : { int m4 = z->l - z->c; (void)m4;
1937 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab8;
1938 : 0 : z->c--;
1939 : 0 : goto lab7;
1940 : 0 : lab8:
1941 : 0 : z->c = z->l - m4;
1942 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab6;
1943 : 0 : z->c--;
1944 : : }
1945 : 0 : lab7:
1946 : 0 : { int ret = slice_from_s(z, 1, s_11);
6591 1947 [ # # ]: 0 : if (ret < 0) return ret;
1948 : : }
1949 : 0 : goto lab2;
1950 : 0 : lab6:
200 1951 : 0 : z->c = z->l - m2;
1952 : 0 : { int m5 = z->l - z->c; (void)m5;
1953 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab11;
1954 : 0 : z->c--;
1955 : 0 : goto lab10;
1956 : 0 : lab11:
1957 : 0 : z->c = z->l - m5;
1958 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab9;
1959 : 0 : z->c--;
1960 : : }
1961 : 0 : lab10:
1962 : 0 : { int ret = slice_from_s(z, 1, s_12);
6591 1963 [ # # ]: 0 : if (ret < 0) return ret;
1964 : : }
1965 : 0 : goto lab2;
1966 : 0 : lab9:
200 1967 : 0 : z->c = z->l - m2;
1968 : 0 : { int m6 = z->l - z->c; (void)m6;
1969 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_13))) goto lab13;
1970 : 0 : goto lab12;
1971 : 0 : lab13:
1972 : 0 : z->c = z->l - m6;
1973 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_14))) return 0;
1974 : : }
1975 : 0 : lab12:
1976 : 0 : { int ret = slice_from_s(z, 2, s_15);
6591 1977 [ # # ]: 0 : if (ret < 0) return ret;
1978 : : }
1979 : : }
1980 : 0 : lab2:
1981 : 0 : return 1;
1982 : : }
1983 : :
1660 peter@eisentraut.org 1984 : 0 : static int r_is_reserved_word(struct SN_env * z) {
1985 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_16))) return 0;
1986 : 0 : { int m1 = z->l - z->c; (void)m1;
1987 [ # # ]: 0 : if (!(eq_s_b(z, 3, s_17))) { z->c = z->l - m1; goto lab0; }
2539 tgl@sss.pgh.pa.us 1988 : 0 : lab0:
1989 : : ;
1990 : : }
1660 peter@eisentraut.org 1991 [ # # ]: 0 : if (z->c > z->lb) return 0;
2539 tgl@sss.pgh.pa.us 1992 : 0 : return 1;
1993 : : }
1994 : :
200 1995 : 0 : static int r_remove_proper_noun_suffix(struct SN_env * z) {
1996 : 0 : { int c1 = z->c;
1997 : 0 : while(1) {
1998 : 0 : int c2 = z->c;
1999 [ # # # # ]: 0 : if (z->c == z->l || z->p[z->c] != '\'') goto lab1;
2000 : 0 : z->c++;
2001 : 0 : z->c = c2;
2002 : 0 : break;
2003 : 0 : lab1:
2004 : 0 : z->c = c2;
2005 : 0 : { int ret = skip_utf8(z->p, z->c, z->l, 1);
2006 [ # # ]: 0 : if (ret < 0) goto lab0;
2007 : 0 : z->c = ret;
2008 : : }
2009 : : }
2010 : 0 : z->bra = z->c;
2011 : 0 : z->c = z->l;
2012 : 0 : z->ket = z->c;
2013 : 0 : { int ret = slice_del(z);
2014 [ # # ]: 0 : if (ret < 0) return ret;
2015 : : }
2016 : 0 : lab0:
2017 : 0 : z->c = c1;
2018 : : }
2019 : 0 : return 1;
2020 : : }
2021 : :
1660 peter@eisentraut.org 2022 : 0 : static int r_more_than_one_syllable_word(struct SN_env * z) {
2023 : 0 : { int c_test1 = z->c;
200 tgl@sss.pgh.pa.us 2024 [ # # ]: 0 : { int i; for (i = 2; i > 0; i--)
2025 : : {
2026 : : {
6591 2027 : 0 : int ret = out_grouping_U(z, g_vowel, 97, 305, 1);
200 2028 [ # # ]: 0 : if (ret < 0) return 0;
6591 2029 : 0 : z->c += ret;
2030 : : }
2031 : : }
2032 : : }
2539 2033 : 0 : z->c = c_test1;
2034 : : }
6591 2035 : 0 : return 1;
2036 : : }
2037 : :
1660 peter@eisentraut.org 2038 : 0 : static int r_postlude(struct SN_env * z) {
2039 : 0 : z->lb = z->c; z->c = z->l;
2040 : :
2041 : 0 : { int m1 = z->l - z->c; (void)m1;
2042 : 0 : { int ret = r_is_reserved_word(z);
2539 tgl@sss.pgh.pa.us 2043 [ # # ]: 0 : if (ret == 0) goto lab0;
6591 2044 [ # # ]: 0 : if (ret < 0) return ret;
2045 : : }
2046 : 0 : return 0;
2047 : 0 : lab0:
2539 2048 : 0 : z->c = z->l - m1;
2049 : : }
1660 peter@eisentraut.org 2050 : 0 : { int m2 = z->l - z->c; (void)m2;
2051 : 0 : { int ret = r_append_U_to_stems_ending_with_d_or_g(z);
6591 tgl@sss.pgh.pa.us 2052 [ # # ]: 0 : if (ret < 0) return ret;
2053 : : }
2054 : 0 : z->c = z->l - m2;
2055 : : }
1660 peter@eisentraut.org 2056 : 0 : { int m3 = z->l - z->c; (void)m3;
2057 : 0 : { int ret = r_post_process_last_consonants(z);
6591 tgl@sss.pgh.pa.us 2058 [ # # ]: 0 : if (ret < 0) return ret;
2059 : : }
2060 : 0 : z->c = z->l - m3;
2061 : : }
2062 : 0 : z->c = z->lb;
2063 : 0 : return 1;
2064 : : }
2065 : :
1660 peter@eisentraut.org 2066 : 0 : extern int turkish_UTF_8_stem(struct SN_env * z) {
2067 : :
200 tgl@sss.pgh.pa.us 2068 : 0 : { int ret = r_remove_proper_noun_suffix(z);
2069 [ # # ]: 0 : if (ret < 0) return ret;
2070 : : }
1660 peter@eisentraut.org 2071 : 0 : { int ret = r_more_than_one_syllable_word(z);
2539 tgl@sss.pgh.pa.us 2072 [ # # ]: 0 : if (ret <= 0) return ret;
2073 : : }
1660 peter@eisentraut.org 2074 : 0 : z->lb = z->c; z->c = z->l;
2075 : :
2076 : 0 : { int m1 = z->l - z->c; (void)m1;
2077 : 0 : { int ret = r_stem_nominal_verb_suffixes(z);
6591 tgl@sss.pgh.pa.us 2078 [ # # ]: 0 : if (ret < 0) return ret;
2079 : : }
2080 : 0 : z->c = z->l - m1;
2081 : : }
1660 peter@eisentraut.org 2082 [ # # ]: 0 : if (!(z->I[0])) return 0;
2083 : 0 : { int m2 = z->l - z->c; (void)m2;
2084 : 0 : { int ret = r_stem_noun_suffixes(z);
6591 tgl@sss.pgh.pa.us 2085 [ # # ]: 0 : if (ret < 0) return ret;
2086 : : }
2087 : 0 : z->c = z->l - m2;
2088 : : }
2089 : 0 : z->c = z->lb;
1660 peter@eisentraut.org 2090 : 0 : { int ret = r_postlude(z);
2539 tgl@sss.pgh.pa.us 2091 [ # # ]: 0 : if (ret <= 0) return ret;
2092 : : }
6591 2093 : 0 : return 1;
2094 : : }
2095 : :
1660 peter@eisentraut.org 2096 : 0 : extern struct SN_env * turkish_UTF_8_create_env(void) { return SN_create_env(0, 1); }
2097 : :
6591 tgl@sss.pgh.pa.us 2098 : 0 : extern void turkish_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
2099 : :
|