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