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