YAZ 5.35.1
stem_UTF_8_italian.c
Go to the documentation of this file.
1
2/* This file was generated automatically by the Snowball to ANSI C compiler */
3
4#include "../runtime/header.h"
5
6#ifdef __cplusplus
7extern "C"
8{
9#endif
10 extern int italian_UTF_8_stem (struct SN_env *z);
11#ifdef __cplusplus
12}
13#endif
14static int r_vowel_suffix (struct SN_env *z);
15static int r_verb_suffix (struct SN_env *z);
16static int r_standard_suffix (struct SN_env *z);
17static int r_attached_pronoun (struct SN_env *z);
18static int r_R2 (struct SN_env *z);
19static int r_R1 (struct SN_env *z);
20static int r_RV (struct SN_env *z);
21static int r_mark_regions (struct SN_env *z);
22static int r_postlude (struct SN_env *z);
23static int r_prelude (struct SN_env *z);
24#ifdef __cplusplus
25extern "C"
26{
27#endif
28
29
30 extern struct SN_env *italian_UTF_8_create_env (void);
31 extern void italian_UTF_8_close_env (struct SN_env *z);
32
33
34#ifdef __cplusplus
35}
36#endif
37static const symbol s_0_1[2] = { 'q', 'u' };
38static const symbol s_0_2[2] = { 0xC3, 0xA1 };
39static const symbol s_0_3[2] = { 0xC3, 0xA9 };
40static const symbol s_0_4[2] = { 0xC3, 0xAD };
41static const symbol s_0_5[2] = { 0xC3, 0xB3 };
42static const symbol s_0_6[2] = { 0xC3, 0xBA };
43
44static const struct among a_0[7] = {
45/* 0 */ {0, 0, -1, 7, 0},
46/* 1 */ {2, s_0_1, 0, 6, 0},
47/* 2 */ {2, s_0_2, 0, 1, 0},
48/* 3 */ {2, s_0_3, 0, 2, 0},
49/* 4 */ {2, s_0_4, 0, 3, 0},
50/* 5 */ {2, s_0_5, 0, 4, 0},
51/* 6 */ {2, s_0_6, 0, 5, 0}
52};
53
54static const symbol s_1_1[1] = { 'I' };
55static const symbol s_1_2[1] = { 'U' };
56
57static const struct among a_1[3] = {
58/* 0 */ {0, 0, -1, 3, 0},
59/* 1 */ {1, s_1_1, 0, 1, 0},
60/* 2 */ {1, s_1_2, 0, 2, 0}
61};
62
63static const symbol s_2_0[2] = { 'l', 'a' };
64static const symbol s_2_1[4] = { 'c', 'e', 'l', 'a' };
65static const symbol s_2_2[6] = { 'g', 'l', 'i', 'e', 'l', 'a' };
66static const symbol s_2_3[4] = { 'm', 'e', 'l', 'a' };
67static const symbol s_2_4[4] = { 't', 'e', 'l', 'a' };
68static const symbol s_2_5[4] = { 'v', 'e', 'l', 'a' };
69static const symbol s_2_6[2] = { 'l', 'e' };
70static const symbol s_2_7[4] = { 'c', 'e', 'l', 'e' };
71static const symbol s_2_8[6] = { 'g', 'l', 'i', 'e', 'l', 'e' };
72static const symbol s_2_9[4] = { 'm', 'e', 'l', 'e' };
73static const symbol s_2_10[4] = { 't', 'e', 'l', 'e' };
74static const symbol s_2_11[4] = { 'v', 'e', 'l', 'e' };
75static const symbol s_2_12[2] = { 'n', 'e' };
76static const symbol s_2_13[4] = { 'c', 'e', 'n', 'e' };
77static const symbol s_2_14[6] = { 'g', 'l', 'i', 'e', 'n', 'e' };
78static const symbol s_2_15[4] = { 'm', 'e', 'n', 'e' };
79static const symbol s_2_16[4] = { 's', 'e', 'n', 'e' };
80static const symbol s_2_17[4] = { 't', 'e', 'n', 'e' };
81static const symbol s_2_18[4] = { 'v', 'e', 'n', 'e' };
82static const symbol s_2_19[2] = { 'c', 'i' };
83static const symbol s_2_20[2] = { 'l', 'i' };
84static const symbol s_2_21[4] = { 'c', 'e', 'l', 'i' };
85static const symbol s_2_22[6] = { 'g', 'l', 'i', 'e', 'l', 'i' };
86static const symbol s_2_23[4] = { 'm', 'e', 'l', 'i' };
87static const symbol s_2_24[4] = { 't', 'e', 'l', 'i' };
88static const symbol s_2_25[4] = { 'v', 'e', 'l', 'i' };
89static const symbol s_2_26[3] = { 'g', 'l', 'i' };
90static const symbol s_2_27[2] = { 'm', 'i' };
91static const symbol s_2_28[2] = { 's', 'i' };
92static const symbol s_2_29[2] = { 't', 'i' };
93static const symbol s_2_30[2] = { 'v', 'i' };
94static const symbol s_2_31[2] = { 'l', 'o' };
95static const symbol s_2_32[4] = { 'c', 'e', 'l', 'o' };
96static const symbol s_2_33[6] = { 'g', 'l', 'i', 'e', 'l', 'o' };
97static const symbol s_2_34[4] = { 'm', 'e', 'l', 'o' };
98static const symbol s_2_35[4] = { 't', 'e', 'l', 'o' };
99static const symbol s_2_36[4] = { 'v', 'e', 'l', 'o' };
100
101static const struct among a_2[37] = {
102/* 0 */ {2, s_2_0, -1, -1, 0},
103/* 1 */ {4, s_2_1, 0, -1, 0},
104/* 2 */ {6, s_2_2, 0, -1, 0},
105/* 3 */ {4, s_2_3, 0, -1, 0},
106/* 4 */ {4, s_2_4, 0, -1, 0},
107/* 5 */ {4, s_2_5, 0, -1, 0},
108/* 6 */ {2, s_2_6, -1, -1, 0},
109/* 7 */ {4, s_2_7, 6, -1, 0},
110/* 8 */ {6, s_2_8, 6, -1, 0},
111/* 9 */ {4, s_2_9, 6, -1, 0},
112/* 10 */ {4, s_2_10, 6, -1, 0},
113/* 11 */ {4, s_2_11, 6, -1, 0},
114/* 12 */ {2, s_2_12, -1, -1, 0},
115/* 13 */ {4, s_2_13, 12, -1, 0},
116/* 14 */ {6, s_2_14, 12, -1, 0},
117/* 15 */ {4, s_2_15, 12, -1, 0},
118/* 16 */ {4, s_2_16, 12, -1, 0},
119/* 17 */ {4, s_2_17, 12, -1, 0},
120/* 18 */ {4, s_2_18, 12, -1, 0},
121/* 19 */ {2, s_2_19, -1, -1, 0},
122/* 20 */ {2, s_2_20, -1, -1, 0},
123/* 21 */ {4, s_2_21, 20, -1, 0},
124/* 22 */ {6, s_2_22, 20, -1, 0},
125/* 23 */ {4, s_2_23, 20, -1, 0},
126/* 24 */ {4, s_2_24, 20, -1, 0},
127/* 25 */ {4, s_2_25, 20, -1, 0},
128/* 26 */ {3, s_2_26, 20, -1, 0},
129/* 27 */ {2, s_2_27, -1, -1, 0},
130/* 28 */ {2, s_2_28, -1, -1, 0},
131/* 29 */ {2, s_2_29, -1, -1, 0},
132/* 30 */ {2, s_2_30, -1, -1, 0},
133/* 31 */ {2, s_2_31, -1, -1, 0},
134/* 32 */ {4, s_2_32, 31, -1, 0},
135/* 33 */ {6, s_2_33, 31, -1, 0},
136/* 34 */ {4, s_2_34, 31, -1, 0},
137/* 35 */ {4, s_2_35, 31, -1, 0},
138/* 36 */ {4, s_2_36, 31, -1, 0}
139};
140
141static const symbol s_3_0[4] = { 'a', 'n', 'd', 'o' };
142static const symbol s_3_1[4] = { 'e', 'n', 'd', 'o' };
143static const symbol s_3_2[2] = { 'a', 'r' };
144static const symbol s_3_3[2] = { 'e', 'r' };
145static const symbol s_3_4[2] = { 'i', 'r' };
146
147static const struct among a_3[5] = {
148/* 0 */ {4, s_3_0, -1, 1, 0},
149/* 1 */ {4, s_3_1, -1, 1, 0},
150/* 2 */ {2, s_3_2, -1, 2, 0},
151/* 3 */ {2, s_3_3, -1, 2, 0},
152/* 4 */ {2, s_3_4, -1, 2, 0}
153};
154
155static const symbol s_4_0[2] = { 'i', 'c' };
156static const symbol s_4_1[4] = { 'a', 'b', 'i', 'l' };
157static const symbol s_4_2[2] = { 'o', 's' };
158static const symbol s_4_3[2] = { 'i', 'v' };
159
160static const struct among a_4[4] = {
161/* 0 */ {2, s_4_0, -1, -1, 0},
162/* 1 */ {4, s_4_1, -1, -1, 0},
163/* 2 */ {2, s_4_2, -1, -1, 0},
164/* 3 */ {2, s_4_3, -1, 1, 0}
165};
166
167static const symbol s_5_0[2] = { 'i', 'c' };
168static const symbol s_5_1[4] = { 'a', 'b', 'i', 'l' };
169static const symbol s_5_2[2] = { 'i', 'v' };
170
171static const struct among a_5[3] = {
172/* 0 */ {2, s_5_0, -1, 1, 0},
173/* 1 */ {4, s_5_1, -1, 1, 0},
174/* 2 */ {2, s_5_2, -1, 1, 0}
175};
176
177static const symbol s_6_0[3] = { 'i', 'c', 'a' };
178static const symbol s_6_1[5] = { 'l', 'o', 'g', 'i', 'a' };
179static const symbol s_6_2[3] = { 'o', 's', 'a' };
180static const symbol s_6_3[4] = { 'i', 's', 't', 'a' };
181static const symbol s_6_4[3] = { 'i', 'v', 'a' };
182static const symbol s_6_5[4] = { 'a', 'n', 'z', 'a' };
183static const symbol s_6_6[4] = { 'e', 'n', 'z', 'a' };
184static const symbol s_6_7[3] = { 'i', 'c', 'e' };
185static const symbol s_6_8[6] = { 'a', 't', 'r', 'i', 'c', 'e' };
186static const symbol s_6_9[4] = { 'i', 'c', 'h', 'e' };
187static const symbol s_6_10[5] = { 'l', 'o', 'g', 'i', 'e' };
188static const symbol s_6_11[5] = { 'a', 'b', 'i', 'l', 'e' };
189static const symbol s_6_12[5] = { 'i', 'b', 'i', 'l', 'e' };
190static const symbol s_6_13[6] = { 'u', 's', 'i', 'o', 'n', 'e' };
191static const symbol s_6_14[6] = { 'a', 'z', 'i', 'o', 'n', 'e' };
192static const symbol s_6_15[6] = { 'u', 'z', 'i', 'o', 'n', 'e' };
193static const symbol s_6_16[5] = { 'a', 't', 'o', 'r', 'e' };
194static const symbol s_6_17[3] = { 'o', 's', 'e' };
195static const symbol s_6_18[4] = { 'a', 'n', 't', 'e' };
196static const symbol s_6_19[5] = { 'm', 'e', 'n', 't', 'e' };
197static const symbol s_6_20[6] = { 'a', 'm', 'e', 'n', 't', 'e' };
198static const symbol s_6_21[4] = { 'i', 's', 't', 'e' };
199static const symbol s_6_22[3] = { 'i', 'v', 'e' };
200static const symbol s_6_23[4] = { 'a', 'n', 'z', 'e' };
201static const symbol s_6_24[4] = { 'e', 'n', 'z', 'e' };
202static const symbol s_6_25[3] = { 'i', 'c', 'i' };
203static const symbol s_6_26[6] = { 'a', 't', 'r', 'i', 'c', 'i' };
204static const symbol s_6_27[4] = { 'i', 'c', 'h', 'i' };
205static const symbol s_6_28[5] = { 'a', 'b', 'i', 'l', 'i' };
206static const symbol s_6_29[5] = { 'i', 'b', 'i', 'l', 'i' };
207static const symbol s_6_30[4] = { 'i', 's', 'm', 'i' };
208static const symbol s_6_31[6] = { 'u', 's', 'i', 'o', 'n', 'i' };
209static const symbol s_6_32[6] = { 'a', 'z', 'i', 'o', 'n', 'i' };
210static const symbol s_6_33[6] = { 'u', 'z', 'i', 'o', 'n', 'i' };
211static const symbol s_6_34[5] = { 'a', 't', 'o', 'r', 'i' };
212static const symbol s_6_35[3] = { 'o', 's', 'i' };
213static const symbol s_6_36[4] = { 'a', 'n', 't', 'i' };
214static const symbol s_6_37[6] = { 'a', 'm', 'e', 'n', 't', 'i' };
215static const symbol s_6_38[6] = { 'i', 'm', 'e', 'n', 't', 'i' };
216static const symbol s_6_39[4] = { 'i', 's', 't', 'i' };
217static const symbol s_6_40[3] = { 'i', 'v', 'i' };
218static const symbol s_6_41[3] = { 'i', 'c', 'o' };
219static const symbol s_6_42[4] = { 'i', 's', 'm', 'o' };
220static const symbol s_6_43[3] = { 'o', 's', 'o' };
221static const symbol s_6_44[6] = { 'a', 'm', 'e', 'n', 't', 'o' };
222static const symbol s_6_45[6] = { 'i', 'm', 'e', 'n', 't', 'o' };
223static const symbol s_6_46[3] = { 'i', 'v', 'o' };
224static const symbol s_6_47[4] = { 'i', 't', 0xC3, 0xA0 };
225static const symbol s_6_48[5] = { 'i', 's', 't', 0xC3, 0xA0 };
226static const symbol s_6_49[5] = { 'i', 's', 't', 0xC3, 0xA8 };
227static const symbol s_6_50[5] = { 'i', 's', 't', 0xC3, 0xAC };
228
229static const struct among a_6[51] = {
230/* 0 */ {3, s_6_0, -1, 1, 0},
231/* 1 */ {5, s_6_1, -1, 3, 0},
232/* 2 */ {3, s_6_2, -1, 1, 0},
233/* 3 */ {4, s_6_3, -1, 1, 0},
234/* 4 */ {3, s_6_4, -1, 9, 0},
235/* 5 */ {4, s_6_5, -1, 1, 0},
236/* 6 */ {4, s_6_6, -1, 5, 0},
237/* 7 */ {3, s_6_7, -1, 1, 0},
238/* 8 */ {6, s_6_8, 7, 1, 0},
239/* 9 */ {4, s_6_9, -1, 1, 0},
240/* 10 */ {5, s_6_10, -1, 3, 0},
241/* 11 */ {5, s_6_11, -1, 1, 0},
242/* 12 */ {5, s_6_12, -1, 1, 0},
243/* 13 */ {6, s_6_13, -1, 4, 0},
244/* 14 */ {6, s_6_14, -1, 2, 0},
245/* 15 */ {6, s_6_15, -1, 4, 0},
246/* 16 */ {5, s_6_16, -1, 2, 0},
247/* 17 */ {3, s_6_17, -1, 1, 0},
248/* 18 */ {4, s_6_18, -1, 1, 0},
249/* 19 */ {5, s_6_19, -1, 1, 0},
250/* 20 */ {6, s_6_20, 19, 7, 0},
251/* 21 */ {4, s_6_21, -1, 1, 0},
252/* 22 */ {3, s_6_22, -1, 9, 0},
253/* 23 */ {4, s_6_23, -1, 1, 0},
254/* 24 */ {4, s_6_24, -1, 5, 0},
255/* 25 */ {3, s_6_25, -1, 1, 0},
256/* 26 */ {6, s_6_26, 25, 1, 0},
257/* 27 */ {4, s_6_27, -1, 1, 0},
258/* 28 */ {5, s_6_28, -1, 1, 0},
259/* 29 */ {5, s_6_29, -1, 1, 0},
260/* 30 */ {4, s_6_30, -1, 1, 0},
261/* 31 */ {6, s_6_31, -1, 4, 0},
262/* 32 */ {6, s_6_32, -1, 2, 0},
263/* 33 */ {6, s_6_33, -1, 4, 0},
264/* 34 */ {5, s_6_34, -1, 2, 0},
265/* 35 */ {3, s_6_35, -1, 1, 0},
266/* 36 */ {4, s_6_36, -1, 1, 0},
267/* 37 */ {6, s_6_37, -1, 6, 0},
268/* 38 */ {6, s_6_38, -1, 6, 0},
269/* 39 */ {4, s_6_39, -1, 1, 0},
270/* 40 */ {3, s_6_40, -1, 9, 0},
271/* 41 */ {3, s_6_41, -1, 1, 0},
272/* 42 */ {4, s_6_42, -1, 1, 0},
273/* 43 */ {3, s_6_43, -1, 1, 0},
274/* 44 */ {6, s_6_44, -1, 6, 0},
275/* 45 */ {6, s_6_45, -1, 6, 0},
276/* 46 */ {3, s_6_46, -1, 9, 0},
277/* 47 */ {4, s_6_47, -1, 8, 0},
278/* 48 */ {5, s_6_48, -1, 1, 0},
279/* 49 */ {5, s_6_49, -1, 1, 0},
280/* 50 */ {5, s_6_50, -1, 1, 0}
281};
282
283static const symbol s_7_0[4] = { 'i', 's', 'c', 'a' };
284static const symbol s_7_1[4] = { 'e', 'n', 'd', 'a' };
285static const symbol s_7_2[3] = { 'a', 't', 'a' };
286static const symbol s_7_3[3] = { 'i', 't', 'a' };
287static const symbol s_7_4[3] = { 'u', 't', 'a' };
288static const symbol s_7_5[3] = { 'a', 'v', 'a' };
289static const symbol s_7_6[3] = { 'e', 'v', 'a' };
290static const symbol s_7_7[3] = { 'i', 'v', 'a' };
291static const symbol s_7_8[6] = { 'e', 'r', 'e', 'b', 'b', 'e' };
292static const symbol s_7_9[6] = { 'i', 'r', 'e', 'b', 'b', 'e' };
293static const symbol s_7_10[4] = { 'i', 's', 'c', 'e' };
294static const symbol s_7_11[4] = { 'e', 'n', 'd', 'e' };
295static const symbol s_7_12[3] = { 'a', 'r', 'e' };
296static const symbol s_7_13[3] = { 'e', 'r', 'e' };
297static const symbol s_7_14[3] = { 'i', 'r', 'e' };
298static const symbol s_7_15[4] = { 'a', 's', 's', 'e' };
299static const symbol s_7_16[3] = { 'a', 't', 'e' };
300static const symbol s_7_17[5] = { 'a', 'v', 'a', 't', 'e' };
301static const symbol s_7_18[5] = { 'e', 'v', 'a', 't', 'e' };
302static const symbol s_7_19[5] = { 'i', 'v', 'a', 't', 'e' };
303static const symbol s_7_20[3] = { 'e', 't', 'e' };
304static const symbol s_7_21[5] = { 'e', 'r', 'e', 't', 'e' };
305static const symbol s_7_22[5] = { 'i', 'r', 'e', 't', 'e' };
306static const symbol s_7_23[3] = { 'i', 't', 'e' };
307static const symbol s_7_24[6] = { 'e', 'r', 'e', 's', 't', 'e' };
308static const symbol s_7_25[6] = { 'i', 'r', 'e', 's', 't', 'e' };
309static const symbol s_7_26[3] = { 'u', 't', 'e' };
310static const symbol s_7_27[4] = { 'e', 'r', 'a', 'i' };
311static const symbol s_7_28[4] = { 'i', 'r', 'a', 'i' };
312static const symbol s_7_29[4] = { 'i', 's', 'c', 'i' };
313static const symbol s_7_30[4] = { 'e', 'n', 'd', 'i' };
314static const symbol s_7_31[4] = { 'e', 'r', 'e', 'i' };
315static const symbol s_7_32[4] = { 'i', 'r', 'e', 'i' };
316static const symbol s_7_33[4] = { 'a', 's', 's', 'i' };
317static const symbol s_7_34[3] = { 'a', 't', 'i' };
318static const symbol s_7_35[3] = { 'i', 't', 'i' };
319static const symbol s_7_36[6] = { 'e', 'r', 'e', 's', 't', 'i' };
320static const symbol s_7_37[6] = { 'i', 'r', 'e', 's', 't', 'i' };
321static const symbol s_7_38[3] = { 'u', 't', 'i' };
322static const symbol s_7_39[3] = { 'a', 'v', 'i' };
323static const symbol s_7_40[3] = { 'e', 'v', 'i' };
324static const symbol s_7_41[3] = { 'i', 'v', 'i' };
325static const symbol s_7_42[4] = { 'i', 's', 'c', 'o' };
326static const symbol s_7_43[4] = { 'a', 'n', 'd', 'o' };
327static const symbol s_7_44[4] = { 'e', 'n', 'd', 'o' };
328static const symbol s_7_45[4] = { 'Y', 'a', 'm', 'o' };
329static const symbol s_7_46[4] = { 'i', 'a', 'm', 'o' };
330static const symbol s_7_47[5] = { 'a', 'v', 'a', 'm', 'o' };
331static const symbol s_7_48[5] = { 'e', 'v', 'a', 'm', 'o' };
332static const symbol s_7_49[5] = { 'i', 'v', 'a', 'm', 'o' };
333static const symbol s_7_50[5] = { 'e', 'r', 'e', 'm', 'o' };
334static const symbol s_7_51[5] = { 'i', 'r', 'e', 'm', 'o' };
335static const symbol s_7_52[6] = { 'a', 's', 's', 'i', 'm', 'o' };
336static const symbol s_7_53[4] = { 'a', 'm', 'm', 'o' };
337static const symbol s_7_54[4] = { 'e', 'm', 'm', 'o' };
338static const symbol s_7_55[6] = { 'e', 'r', 'e', 'm', 'm', 'o' };
339static const symbol s_7_56[6] = { 'i', 'r', 'e', 'm', 'm', 'o' };
340static const symbol s_7_57[4] = { 'i', 'm', 'm', 'o' };
341static const symbol s_7_58[3] = { 'a', 'n', 'o' };
342static const symbol s_7_59[6] = { 'i', 's', 'c', 'a', 'n', 'o' };
343static const symbol s_7_60[5] = { 'a', 'v', 'a', 'n', 'o' };
344static const symbol s_7_61[5] = { 'e', 'v', 'a', 'n', 'o' };
345static const symbol s_7_62[5] = { 'i', 'v', 'a', 'n', 'o' };
346static const symbol s_7_63[6] = { 'e', 'r', 'a', 'n', 'n', 'o' };
347static const symbol s_7_64[6] = { 'i', 'r', 'a', 'n', 'n', 'o' };
348static const symbol s_7_65[3] = { 'o', 'n', 'o' };
349static const symbol s_7_66[6] = { 'i', 's', 'c', 'o', 'n', 'o' };
350static const symbol s_7_67[5] = { 'a', 'r', 'o', 'n', 'o' };
351static const symbol s_7_68[5] = { 'e', 'r', 'o', 'n', 'o' };
352static const symbol s_7_69[5] = { 'i', 'r', 'o', 'n', 'o' };
353static const symbol s_7_70[8] = { 'e', 'r', 'e', 'b', 'b', 'e', 'r', 'o' };
354static const symbol s_7_71[8] = { 'i', 'r', 'e', 'b', 'b', 'e', 'r', 'o' };
355static const symbol s_7_72[6] = { 'a', 's', 's', 'e', 'r', 'o' };
356static const symbol s_7_73[6] = { 'e', 's', 's', 'e', 'r', 'o' };
357static const symbol s_7_74[6] = { 'i', 's', 's', 'e', 'r', 'o' };
358static const symbol s_7_75[3] = { 'a', 't', 'o' };
359static const symbol s_7_76[3] = { 'i', 't', 'o' };
360static const symbol s_7_77[3] = { 'u', 't', 'o' };
361static const symbol s_7_78[3] = { 'a', 'v', 'o' };
362static const symbol s_7_79[3] = { 'e', 'v', 'o' };
363static const symbol s_7_80[3] = { 'i', 'v', 'o' };
364static const symbol s_7_81[2] = { 'a', 'r' };
365static const symbol s_7_82[2] = { 'i', 'r' };
366static const symbol s_7_83[4] = { 'e', 'r', 0xC3, 0xA0 };
367static const symbol s_7_84[4] = { 'i', 'r', 0xC3, 0xA0 };
368static const symbol s_7_85[4] = { 'e', 'r', 0xC3, 0xB2 };
369static const symbol s_7_86[4] = { 'i', 'r', 0xC3, 0xB2 };
370
371static const struct among a_7[87] = {
372/* 0 */ {4, s_7_0, -1, 1, 0},
373/* 1 */ {4, s_7_1, -1, 1, 0},
374/* 2 */ {3, s_7_2, -1, 1, 0},
375/* 3 */ {3, s_7_3, -1, 1, 0},
376/* 4 */ {3, s_7_4, -1, 1, 0},
377/* 5 */ {3, s_7_5, -1, 1, 0},
378/* 6 */ {3, s_7_6, -1, 1, 0},
379/* 7 */ {3, s_7_7, -1, 1, 0},
380/* 8 */ {6, s_7_8, -1, 1, 0},
381/* 9 */ {6, s_7_9, -1, 1, 0},
382/* 10 */ {4, s_7_10, -1, 1, 0},
383/* 11 */ {4, s_7_11, -1, 1, 0},
384/* 12 */ {3, s_7_12, -1, 1, 0},
385/* 13 */ {3, s_7_13, -1, 1, 0},
386/* 14 */ {3, s_7_14, -1, 1, 0},
387/* 15 */ {4, s_7_15, -1, 1, 0},
388/* 16 */ {3, s_7_16, -1, 1, 0},
389/* 17 */ {5, s_7_17, 16, 1, 0},
390/* 18 */ {5, s_7_18, 16, 1, 0},
391/* 19 */ {5, s_7_19, 16, 1, 0},
392/* 20 */ {3, s_7_20, -1, 1, 0},
393/* 21 */ {5, s_7_21, 20, 1, 0},
394/* 22 */ {5, s_7_22, 20, 1, 0},
395/* 23 */ {3, s_7_23, -1, 1, 0},
396/* 24 */ {6, s_7_24, -1, 1, 0},
397/* 25 */ {6, s_7_25, -1, 1, 0},
398/* 26 */ {3, s_7_26, -1, 1, 0},
399/* 27 */ {4, s_7_27, -1, 1, 0},
400/* 28 */ {4, s_7_28, -1, 1, 0},
401/* 29 */ {4, s_7_29, -1, 1, 0},
402/* 30 */ {4, s_7_30, -1, 1, 0},
403/* 31 */ {4, s_7_31, -1, 1, 0},
404/* 32 */ {4, s_7_32, -1, 1, 0},
405/* 33 */ {4, s_7_33, -1, 1, 0},
406/* 34 */ {3, s_7_34, -1, 1, 0},
407/* 35 */ {3, s_7_35, -1, 1, 0},
408/* 36 */ {6, s_7_36, -1, 1, 0},
409/* 37 */ {6, s_7_37, -1, 1, 0},
410/* 38 */ {3, s_7_38, -1, 1, 0},
411/* 39 */ {3, s_7_39, -1, 1, 0},
412/* 40 */ {3, s_7_40, -1, 1, 0},
413/* 41 */ {3, s_7_41, -1, 1, 0},
414/* 42 */ {4, s_7_42, -1, 1, 0},
415/* 43 */ {4, s_7_43, -1, 1, 0},
416/* 44 */ {4, s_7_44, -1, 1, 0},
417/* 45 */ {4, s_7_45, -1, 1, 0},
418/* 46 */ {4, s_7_46, -1, 1, 0},
419/* 47 */ {5, s_7_47, -1, 1, 0},
420/* 48 */ {5, s_7_48, -1, 1, 0},
421/* 49 */ {5, s_7_49, -1, 1, 0},
422/* 50 */ {5, s_7_50, -1, 1, 0},
423/* 51 */ {5, s_7_51, -1, 1, 0},
424/* 52 */ {6, s_7_52, -1, 1, 0},
425/* 53 */ {4, s_7_53, -1, 1, 0},
426/* 54 */ {4, s_7_54, -1, 1, 0},
427/* 55 */ {6, s_7_55, 54, 1, 0},
428/* 56 */ {6, s_7_56, 54, 1, 0},
429/* 57 */ {4, s_7_57, -1, 1, 0},
430/* 58 */ {3, s_7_58, -1, 1, 0},
431/* 59 */ {6, s_7_59, 58, 1, 0},
432/* 60 */ {5, s_7_60, 58, 1, 0},
433/* 61 */ {5, s_7_61, 58, 1, 0},
434/* 62 */ {5, s_7_62, 58, 1, 0},
435/* 63 */ {6, s_7_63, -1, 1, 0},
436/* 64 */ {6, s_7_64, -1, 1, 0},
437/* 65 */ {3, s_7_65, -1, 1, 0},
438/* 66 */ {6, s_7_66, 65, 1, 0},
439/* 67 */ {5, s_7_67, 65, 1, 0},
440/* 68 */ {5, s_7_68, 65, 1, 0},
441/* 69 */ {5, s_7_69, 65, 1, 0},
442/* 70 */ {8, s_7_70, -1, 1, 0},
443/* 71 */ {8, s_7_71, -1, 1, 0},
444/* 72 */ {6, s_7_72, -1, 1, 0},
445/* 73 */ {6, s_7_73, -1, 1, 0},
446/* 74 */ {6, s_7_74, -1, 1, 0},
447/* 75 */ {3, s_7_75, -1, 1, 0},
448/* 76 */ {3, s_7_76, -1, 1, 0},
449/* 77 */ {3, s_7_77, -1, 1, 0},
450/* 78 */ {3, s_7_78, -1, 1, 0},
451/* 79 */ {3, s_7_79, -1, 1, 0},
452/* 80 */ {3, s_7_80, -1, 1, 0},
453/* 81 */ {2, s_7_81, -1, 1, 0},
454/* 82 */ {2, s_7_82, -1, 1, 0},
455/* 83 */ {4, s_7_83, -1, 1, 0},
456/* 84 */ {4, s_7_84, -1, 1, 0},
457/* 85 */ {4, s_7_85, -1, 1, 0},
458/* 86 */ {4, s_7_86, -1, 1, 0}
459};
460
461static const unsigned char g_v[] =
462 { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 8, 2, 1 };
463
464static const unsigned char g_AEIO[] =
465 { 17, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 8, 2 };
466
467static const unsigned char g_CG[] = { 17 };
468
469static const symbol s_0[] = { 0xC3, 0xA0 };
470static const symbol s_1[] = { 0xC3, 0xA8 };
471static const symbol s_2[] = { 0xC3, 0xAC };
472static const symbol s_3[] = { 0xC3, 0xB2 };
473static const symbol s_4[] = { 0xC3, 0xB9 };
474static const symbol s_5[] = { 'q', 'U' };
475static const symbol s_6[] = { 'u' };
476static const symbol s_7[] = { 'U' };
477static const symbol s_8[] = { 'i' };
478static const symbol s_9[] = { 'I' };
479static const symbol s_10[] = { 'i' };
480static const symbol s_11[] = { 'u' };
481static const symbol s_12[] = { 'e' };
482static const symbol s_13[] = { 'i', 'c' };
483static const symbol s_14[] = { 'l', 'o', 'g' };
484static const symbol s_15[] = { 'u' };
485static const symbol s_16[] = { 'e', 'n', 't', 'e' };
486static const symbol s_17[] = { 'a', 't' };
487static const symbol s_18[] = { 'a', 't' };
488static const symbol s_19[] = { 'i', 'c' };
489static const symbol s_20[] = { 'i' };
490static const symbol s_21[] = { 'h' };
491
492static int
493r_prelude (struct SN_env *z)
494{
495 int among_var;
496 {
497 int c_test = z->c; /* test, line 35 */
498 while (1)
499 { /* repeat, line 35 */
500 int c1 = z->c;
501 z->bra = z->c; /* [, line 36 */
502 among_var = find_among (z, a_0, 7); /* substring, line 36 */
503 if (!(among_var))
504 goto lab0;
505 z->ket = z->c; /* ], line 36 */
506 switch (among_var)
507 {
508 case 0:
509 goto lab0;
510 case 1:
511 {
512 int ret = slice_from_s (z, 2, s_0); /* <-, line 37 */
513 if (ret < 0)
514 return ret;
515 }
516 break;
517 case 2:
518 {
519 int ret = slice_from_s (z, 2, s_1); /* <-, line 38 */
520 if (ret < 0)
521 return ret;
522 }
523 break;
524 case 3:
525 {
526 int ret = slice_from_s (z, 2, s_2); /* <-, line 39 */
527 if (ret < 0)
528 return ret;
529 }
530 break;
531 case 4:
532 {
533 int ret = slice_from_s (z, 2, s_3); /* <-, line 40 */
534 if (ret < 0)
535 return ret;
536 }
537 break;
538 case 5:
539 {
540 int ret = slice_from_s (z, 2, s_4); /* <-, line 41 */
541 if (ret < 0)
542 return ret;
543 }
544 break;
545 case 6:
546 {
547 int ret = slice_from_s (z, 2, s_5); /* <-, line 42 */
548 if (ret < 0)
549 return ret;
550 }
551 break;
552 case 7:
553 {
554 int ret = skip_utf8 (z->p, z->c, 0, z->l, 1);
555 if (ret < 0)
556 goto lab0;
557 z->c = ret; /* next, line 43 */
558 }
559 break;
560 }
561 continue;
562 lab0:
563 z->c = c1;
564 break;
565 }
566 z->c = c_test;
567 }
568 while (1)
569 { /* repeat, line 46 */
570 int c2 = z->c;
571 while (1)
572 { /* goto, line 46 */
573 int c3 = z->c;
574 if (in_grouping_U (z, g_v, 97, 249, 0))
575 goto lab2;
576 z->bra = z->c; /* [, line 47 */
577 {
578 int c4 = z->c; /* or, line 47 */
579 if (!(eq_s (z, 1, s_6)))
580 goto lab4;
581 z->ket = z->c; /* ], line 47 */
582 if (in_grouping_U (z, g_v, 97, 249, 0))
583 goto lab4;
584 {
585 int ret = slice_from_s (z, 1, s_7); /* <-, line 47 */
586 if (ret < 0)
587 return ret;
588 }
589 goto lab3;
590 lab4:
591 z->c = c4;
592 if (!(eq_s (z, 1, s_8)))
593 goto lab2;
594 z->ket = z->c; /* ], line 48 */
595 if (in_grouping_U (z, g_v, 97, 249, 0))
596 goto lab2;
597 {
598 int ret = slice_from_s (z, 1, s_9); /* <-, line 48 */
599 if (ret < 0)
600 return ret;
601 }
602 }
603 lab3:
604 z->c = c3;
605 break;
606 lab2:
607 z->c = c3;
608 {
609 int ret = skip_utf8 (z->p, z->c, 0, z->l, 1);
610 if (ret < 0)
611 goto lab1;
612 z->c = ret; /* goto, line 46 */
613 }
614 }
615 continue;
616 lab1:
617 z->c = c2;
618 break;
619 }
620 return 1;
621}
622
623static int
625{
626 z->I[0] = z->l;
627 z->I[1] = z->l;
628 z->I[2] = z->l;
629 {
630 int c1 = z->c; /* do, line 58 */
631 {
632 int c2 = z->c; /* or, line 60 */
633 if (in_grouping_U (z, g_v, 97, 249, 0))
634 goto lab2;
635 {
636 int c3 = z->c; /* or, line 59 */
637 if (out_grouping_U (z, g_v, 97, 249, 0))
638 goto lab4;
639 { /* gopast *//* grouping v, line 59 */
640 int ret = out_grouping_U (z, g_v, 97, 249, 1);
641 if (ret < 0)
642 goto lab4;
643 z->c += ret;
644 }
645 goto lab3;
646 lab4:
647 z->c = c3;
648 if (in_grouping_U (z, g_v, 97, 249, 0))
649 goto lab2;
650 { /* gopast *//* non v, line 59 */
651 int ret = in_grouping_U (z, g_v, 97, 249, 1);
652 if (ret < 0)
653 goto lab2;
654 z->c += ret;
655 }
656 }
657 lab3:
658 goto lab1;
659 lab2:
660 z->c = c2;
661 if (out_grouping_U (z, g_v, 97, 249, 0))
662 goto lab0;
663 {
664 int c4 = z->c; /* or, line 61 */
665 if (out_grouping_U (z, g_v, 97, 249, 0))
666 goto lab6;
667 { /* gopast *//* grouping v, line 61 */
668 int ret = out_grouping_U (z, g_v, 97, 249, 1);
669 if (ret < 0)
670 goto lab6;
671 z->c += ret;
672 }
673 goto lab5;
674 lab6:
675 z->c = c4;
676 if (in_grouping_U (z, g_v, 97, 249, 0))
677 goto lab0;
678 {
679 int ret = skip_utf8 (z->p, z->c, 0, z->l, 1);
680 if (ret < 0)
681 goto lab0;
682 z->c = ret; /* next, line 61 */
683 }
684 }
685 lab5:
686 ;
687 }
688 lab1:
689 z->I[0] = z->c; /* setmark pV, line 62 */
690 lab0:
691 z->c = c1;
692 }
693 {
694 int c5 = z->c; /* do, line 64 */
695 { /* gopast *//* grouping v, line 65 */
696 int ret = out_grouping_U (z, g_v, 97, 249, 1);
697 if (ret < 0)
698 goto lab7;
699 z->c += ret;
700 }
701 { /* gopast *//* non v, line 65 */
702 int ret = in_grouping_U (z, g_v, 97, 249, 1);
703 if (ret < 0)
704 goto lab7;
705 z->c += ret;
706 }
707 z->I[1] = z->c; /* setmark p1, line 65 */
708 { /* gopast *//* grouping v, line 66 */
709 int ret = out_grouping_U (z, g_v, 97, 249, 1);
710 if (ret < 0)
711 goto lab7;
712 z->c += ret;
713 }
714 { /* gopast *//* non v, line 66 */
715 int ret = in_grouping_U (z, g_v, 97, 249, 1);
716 if (ret < 0)
717 goto lab7;
718 z->c += ret;
719 }
720 z->I[2] = z->c; /* setmark p2, line 66 */
721 lab7:
722 z->c = c5;
723 }
724 return 1;
725}
726
727static int
729{
730 int among_var;
731 while (1)
732 { /* repeat, line 70 */
733 int c1 = z->c;
734 z->bra = z->c; /* [, line 72 */
735 if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 85))
736 among_var = 3;
737 else
738 among_var = find_among (z, a_1, 3); /* substring, line 72 */
739 if (!(among_var))
740 goto lab0;
741 z->ket = z->c; /* ], line 72 */
742 switch (among_var)
743 {
744 case 0:
745 goto lab0;
746 case 1:
747 {
748 int ret = slice_from_s (z, 1, s_10); /* <-, line 73 */
749 if (ret < 0)
750 return ret;
751 }
752 break;
753 case 2:
754 {
755 int ret = slice_from_s (z, 1, s_11); /* <-, line 74 */
756 if (ret < 0)
757 return ret;
758 }
759 break;
760 case 3:
761 {
762 int ret = skip_utf8 (z->p, z->c, 0, z->l, 1);
763 if (ret < 0)
764 goto lab0;
765 z->c = ret; /* next, line 75 */
766 }
767 break;
768 }
769 continue;
770 lab0:
771 z->c = c1;
772 break;
773 }
774 return 1;
775}
776
777static int
778r_RV (struct SN_env *z)
779{
780 if (!(z->I[0] <= z->c))
781 return 0;
782 return 1;
783}
784
785static int
786r_R1 (struct SN_env *z)
787{
788 if (!(z->I[1] <= z->c))
789 return 0;
790 return 1;
791}
792
793static int
794r_R2 (struct SN_env *z)
795{
796 if (!(z->I[2] <= z->c))
797 return 0;
798 return 1;
799}
800
801static int
803{
804 int among_var;
805 z->ket = z->c; /* [, line 87 */
806 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3
807 || !((33314 >> (z->p[z->c - 1] & 0x1f)) & 1))
808 return 0;
809 if (!(find_among_b (z, a_2, 37)))
810 return 0; /* substring, line 87 */
811 z->bra = z->c; /* ], line 87 */
812 if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 111 && z->p[z->c - 1] != 114))
813 return 0;
814 among_var = find_among_b (z, a_3, 5); /* among, line 97 */
815 if (!(among_var))
816 return 0;
817 {
818 int ret = r_RV (z);
819 if (ret == 0)
820 return 0; /* call RV, line 97 */
821 if (ret < 0)
822 return ret;
823 }
824 switch (among_var)
825 {
826 case 0:
827 return 0;
828 case 1:
829 {
830 int ret = slice_del (z); /* delete, line 98 */
831 if (ret < 0)
832 return ret;
833 }
834 break;
835 case 2:
836 {
837 int ret = slice_from_s (z, 1, s_12); /* <-, line 99 */
838 if (ret < 0)
839 return ret;
840 }
841 break;
842 }
843 return 1;
844}
845
846static int
848{
849 int among_var;
850 z->ket = z->c; /* [, line 104 */
851 among_var = find_among_b (z, a_6, 51); /* substring, line 104 */
852 if (!(among_var))
853 return 0;
854 z->bra = z->c; /* ], line 104 */
855 switch (among_var)
856 {
857 case 0:
858 return 0;
859 case 1:
860 {
861 int ret = r_R2 (z);
862 if (ret == 0)
863 return 0; /* call R2, line 111 */
864 if (ret < 0)
865 return ret;
866 }
867 {
868 int ret = slice_del (z); /* delete, line 111 */
869 if (ret < 0)
870 return ret;
871 }
872 break;
873 case 2:
874 {
875 int ret = r_R2 (z);
876 if (ret == 0)
877 return 0; /* call R2, line 113 */
878 if (ret < 0)
879 return ret;
880 }
881 {
882 int ret = slice_del (z); /* delete, line 113 */
883 if (ret < 0)
884 return ret;
885 }
886 {
887 int m_keep = z->l - z->c; /* (void) m_keep; *//* try, line 114 */
888 z->ket = z->c; /* [, line 114 */
889 if (!(eq_s_b (z, 2, s_13)))
890 {
891 z->c = z->l - m_keep;
892 goto lab0;
893 }
894 z->bra = z->c; /* ], line 114 */
895 {
896 int ret = r_R2 (z);
897 if (ret == 0)
898 {
899 z->c = z->l - m_keep;
900 goto lab0;
901 } /* call R2, line 114 */
902 if (ret < 0)
903 return ret;
904 }
905 {
906 int ret = slice_del (z); /* delete, line 114 */
907 if (ret < 0)
908 return ret;
909 }
910 lab0:
911 ;
912 }
913 break;
914 case 3:
915 {
916 int ret = r_R2 (z);
917 if (ret == 0)
918 return 0; /* call R2, line 117 */
919 if (ret < 0)
920 return ret;
921 }
922 {
923 int ret = slice_from_s (z, 3, s_14); /* <-, line 117 */
924 if (ret < 0)
925 return ret;
926 }
927 break;
928 case 4:
929 {
930 int ret = r_R2 (z);
931 if (ret == 0)
932 return 0; /* call R2, line 119 */
933 if (ret < 0)
934 return ret;
935 }
936 {
937 int ret = slice_from_s (z, 1, s_15); /* <-, line 119 */
938 if (ret < 0)
939 return ret;
940 }
941 break;
942 case 5:
943 {
944 int ret = r_R2 (z);
945 if (ret == 0)
946 return 0; /* call R2, line 121 */
947 if (ret < 0)
948 return ret;
949 }
950 {
951 int ret = slice_from_s (z, 4, s_16); /* <-, line 121 */
952 if (ret < 0)
953 return ret;
954 }
955 break;
956 case 6:
957 {
958 int ret = r_RV (z);
959 if (ret == 0)
960 return 0; /* call RV, line 123 */
961 if (ret < 0)
962 return ret;
963 }
964 {
965 int ret = slice_del (z); /* delete, line 123 */
966 if (ret < 0)
967 return ret;
968 }
969 break;
970 case 7:
971 {
972 int ret = r_R1 (z);
973 if (ret == 0)
974 return 0; /* call R1, line 125 */
975 if (ret < 0)
976 return ret;
977 }
978 {
979 int ret = slice_del (z); /* delete, line 125 */
980 if (ret < 0)
981 return ret;
982 }
983 {
984 int m_keep = z->l - z->c; /* (void) m_keep; *//* try, line 126 */
985 z->ket = z->c; /* [, line 127 */
986 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3
987 || !((4722696 >> (z->p[z->c - 1] & 0x1f)) & 1))
988 {
989 z->c = z->l - m_keep;
990 goto lab1;
991 }
992 among_var = find_among_b (z, a_4, 4); /* substring, line 127 */
993 if (!(among_var))
994 {
995 z->c = z->l - m_keep;
996 goto lab1;
997 }
998 z->bra = z->c; /* ], line 127 */
999 {
1000 int ret = r_R2 (z);
1001 if (ret == 0)
1002 {
1003 z->c = z->l - m_keep;
1004 goto lab1;
1005 } /* call R2, line 127 */
1006 if (ret < 0)
1007 return ret;
1008 }
1009 {
1010 int ret = slice_del (z); /* delete, line 127 */
1011 if (ret < 0)
1012 return ret;
1013 }
1014 switch (among_var)
1015 {
1016 case 0:
1017 {
1018 z->c = z->l - m_keep;
1019 goto lab1;
1020 }
1021 case 1:
1022 z->ket = z->c; /* [, line 128 */
1023 if (!(eq_s_b (z, 2, s_17)))
1024 {
1025 z->c = z->l - m_keep;
1026 goto lab1;
1027 }
1028 z->bra = z->c; /* ], line 128 */
1029 {
1030 int ret = r_R2 (z);
1031 if (ret == 0)
1032 {
1033 z->c = z->l - m_keep;
1034 goto lab1;
1035 } /* call R2, line 128 */
1036 if (ret < 0)
1037 return ret;
1038 }
1039 {
1040 int ret = slice_del (z); /* delete, line 128 */
1041 if (ret < 0)
1042 return ret;
1043 }
1044 break;
1045 }
1046 lab1:
1047 ;
1048 }
1049 break;
1050 case 8:
1051 {
1052 int ret = r_R2 (z);
1053 if (ret == 0)
1054 return 0; /* call R2, line 134 */
1055 if (ret < 0)
1056 return ret;
1057 }
1058 {
1059 int ret = slice_del (z); /* delete, line 134 */
1060 if (ret < 0)
1061 return ret;
1062 }
1063 {
1064 int m_keep = z->l - z->c; /* (void) m_keep; *//* try, line 135 */
1065 z->ket = z->c; /* [, line 136 */
1066 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3
1067 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1))
1068 {
1069 z->c = z->l - m_keep;
1070 goto lab2;
1071 }
1072 among_var = find_among_b (z, a_5, 3); /* substring, line 136 */
1073 if (!(among_var))
1074 {
1075 z->c = z->l - m_keep;
1076 goto lab2;
1077 }
1078 z->bra = z->c; /* ], line 136 */
1079 switch (among_var)
1080 {
1081 case 0:
1082 {
1083 z->c = z->l - m_keep;
1084 goto lab2;
1085 }
1086 case 1:
1087 {
1088 int ret = r_R2 (z);
1089 if (ret == 0)
1090 {
1091 z->c = z->l - m_keep;
1092 goto lab2;
1093 } /* call R2, line 137 */
1094 if (ret < 0)
1095 return ret;
1096 }
1097 {
1098 int ret = slice_del (z); /* delete, line 137 */
1099 if (ret < 0)
1100 return ret;
1101 }
1102 break;
1103 }
1104 lab2:
1105 ;
1106 }
1107 break;
1108 case 9:
1109 {
1110 int ret = r_R2 (z);
1111 if (ret == 0)
1112 return 0; /* call R2, line 142 */
1113 if (ret < 0)
1114 return ret;
1115 }
1116 {
1117 int ret = slice_del (z); /* delete, line 142 */
1118 if (ret < 0)
1119 return ret;
1120 }
1121 {
1122 int m_keep = z->l - z->c; /* (void) m_keep; *//* try, line 143 */
1123 z->ket = z->c; /* [, line 143 */
1124 if (!(eq_s_b (z, 2, s_18)))
1125 {
1126 z->c = z->l - m_keep;
1127 goto lab3;
1128 }
1129 z->bra = z->c; /* ], line 143 */
1130 {
1131 int ret = r_R2 (z);
1132 if (ret == 0)
1133 {
1134 z->c = z->l - m_keep;
1135 goto lab3;
1136 } /* call R2, line 143 */
1137 if (ret < 0)
1138 return ret;
1139 }
1140 {
1141 int ret = slice_del (z); /* delete, line 143 */
1142 if (ret < 0)
1143 return ret;
1144 }
1145 z->ket = z->c; /* [, line 143 */
1146 if (!(eq_s_b (z, 2, s_19)))
1147 {
1148 z->c = z->l - m_keep;
1149 goto lab3;
1150 }
1151 z->bra = z->c; /* ], line 143 */
1152 {
1153 int ret = r_R2 (z);
1154 if (ret == 0)
1155 {
1156 z->c = z->l - m_keep;
1157 goto lab3;
1158 } /* call R2, line 143 */
1159 if (ret < 0)
1160 return ret;
1161 }
1162 {
1163 int ret = slice_del (z); /* delete, line 143 */
1164 if (ret < 0)
1165 return ret;
1166 }
1167 lab3:
1168 ;
1169 }
1170 break;
1171 }
1172 return 1;
1173}
1174
1175static int
1177{
1178 int among_var;
1179 {
1180 int mlimit; /* setlimit, line 148 */
1181 int m1 = z->l - z->c;
1182 (void) m1;
1183 if (z->c < z->I[0])
1184 return 0;
1185 z->c = z->I[0]; /* tomark, line 148 */
1186 mlimit = z->lb;
1187 z->lb = z->c;
1188 z->c = z->l - m1;
1189 z->ket = z->c; /* [, line 149 */
1190 among_var = find_among_b (z, a_7, 87); /* substring, line 149 */
1191 if (!(among_var))
1192 {
1193 z->lb = mlimit;
1194 return 0;
1195 }
1196 z->bra = z->c; /* ], line 149 */
1197 switch (among_var)
1198 {
1199 case 0:
1200 {
1201 z->lb = mlimit;
1202 return 0;
1203 }
1204 case 1:
1205 {
1206 int ret = slice_del (z); /* delete, line 163 */
1207 if (ret < 0)
1208 return ret;
1209 }
1210 break;
1211 }
1212 z->lb = mlimit;
1213 }
1214 return 1;
1215}
1216
1217static int
1219{
1220 {
1221 int m_keep = z->l - z->c; /* (void) m_keep; *//* try, line 171 */
1222 z->ket = z->c; /* [, line 172 */
1223 if (in_grouping_b_U (z, g_AEIO, 97, 242, 0))
1224 {
1225 z->c = z->l - m_keep;
1226 goto lab0;
1227 }
1228 z->bra = z->c; /* ], line 172 */
1229 {
1230 int ret = r_RV (z);
1231 if (ret == 0)
1232 {
1233 z->c = z->l - m_keep;
1234 goto lab0;
1235 } /* call RV, line 172 */
1236 if (ret < 0)
1237 return ret;
1238 }
1239 {
1240 int ret = slice_del (z); /* delete, line 172 */
1241 if (ret < 0)
1242 return ret;
1243 }
1244 z->ket = z->c; /* [, line 173 */
1245 if (!(eq_s_b (z, 1, s_20)))
1246 {
1247 z->c = z->l - m_keep;
1248 goto lab0;
1249 }
1250 z->bra = z->c; /* ], line 173 */
1251 {
1252 int ret = r_RV (z);
1253 if (ret == 0)
1254 {
1255 z->c = z->l - m_keep;
1256 goto lab0;
1257 } /* call RV, line 173 */
1258 if (ret < 0)
1259 return ret;
1260 }
1261 {
1262 int ret = slice_del (z); /* delete, line 173 */
1263 if (ret < 0)
1264 return ret;
1265 }
1266 lab0:
1267 ;
1268 }
1269 {
1270 int m_keep = z->l - z->c; /* (void) m_keep; *//* try, line 175 */
1271 z->ket = z->c; /* [, line 176 */
1272 if (!(eq_s_b (z, 1, s_21)))
1273 {
1274 z->c = z->l - m_keep;
1275 goto lab1;
1276 }
1277 z->bra = z->c; /* ], line 176 */
1278 if (in_grouping_b_U (z, g_CG, 99, 103, 0))
1279 {
1280 z->c = z->l - m_keep;
1281 goto lab1;
1282 }
1283 {
1284 int ret = r_RV (z);
1285 if (ret == 0)
1286 {
1287 z->c = z->l - m_keep;
1288 goto lab1;
1289 } /* call RV, line 176 */
1290 if (ret < 0)
1291 return ret;
1292 }
1293 {
1294 int ret = slice_del (z); /* delete, line 176 */
1295 if (ret < 0)
1296 return ret;
1297 }
1298 lab1:
1299 ;
1300 }
1301 return 1;
1302}
1303
1304extern int
1306{
1307 {
1308 int c1 = z->c; /* do, line 182 */
1309 {
1310 int ret = r_prelude (z);
1311 if (ret == 0)
1312 goto lab0; /* call prelude, line 182 */
1313 if (ret < 0)
1314 return ret;
1315 }
1316 lab0:
1317 z->c = c1;
1318 }
1319 {
1320 int c2 = z->c; /* do, line 183 */
1321 {
1322 int ret = r_mark_regions (z);
1323 if (ret == 0)
1324 goto lab1; /* call mark_regions, line 183 */
1325 if (ret < 0)
1326 return ret;
1327 }
1328 lab1:
1329 z->c = c2;
1330 }
1331 z->lb = z->c;
1332 z->c = z->l; /* backwards, line 184 */
1333
1334 {
1335 int m3 = z->l - z->c;
1336 (void) m3; /* do, line 185 */
1337 {
1338 int ret = r_attached_pronoun (z);
1339 if (ret == 0)
1340 goto lab2; /* call attached_pronoun, line 185 */
1341 if (ret < 0)
1342 return ret;
1343 }
1344 lab2:
1345 z->c = z->l - m3;
1346 }
1347 {
1348 int m4 = z->l - z->c;
1349 (void) m4; /* do, line 186 */
1350 {
1351 int m5 = z->l - z->c;
1352 (void) m5; /* or, line 186 */
1353 {
1354 int ret = r_standard_suffix (z);
1355 if (ret == 0)
1356 goto lab5; /* call standard_suffix, line 186 */
1357 if (ret < 0)
1358 return ret;
1359 }
1360 goto lab4;
1361 lab5:
1362 z->c = z->l - m5;
1363 {
1364 int ret = r_verb_suffix (z);
1365 if (ret == 0)
1366 goto lab3; /* call verb_suffix, line 186 */
1367 if (ret < 0)
1368 return ret;
1369 }
1370 }
1371 lab4:
1372 lab3:
1373 z->c = z->l - m4;
1374 }
1375 {
1376 int m6 = z->l - z->c;
1377 (void) m6; /* do, line 187 */
1378 {
1379 int ret = r_vowel_suffix (z);
1380 if (ret == 0)
1381 goto lab6; /* call vowel_suffix, line 187 */
1382 if (ret < 0)
1383 return ret;
1384 }
1385 lab6:
1386 z->c = z->l - m6;
1387 }
1388 z->c = z->lb;
1389 {
1390 int c7 = z->c; /* do, line 189 */
1391 {
1392 int ret = r_postlude (z);
1393 if (ret == 0)
1394 goto lab7; /* call postlude, line 189 */
1395 if (ret < 0)
1396 return ret;
1397 }
1398 lab7:
1399 z->c = c7;
1400 }
1401 return 1;
1402}
1403
1404extern struct SN_env *
1406{
1407 return SN_create_env (0, 3, 0);
1408}
1409
1410extern void
1412{
1413 SN_close_env (z, 0);
1414}
struct SN_env * SN_create_env(int S_size, int I_size, int B_size)
Definition api.c:6
void SN_close_env(struct SN_env *z, int S_size)
Definition api.c:50
unsigned char symbol
Definition api.h:2
int find_among_b(struct SN_env *z, const struct among *v, int v_size)
Definition utilities.c:400
int out_grouping_U(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
Definition utilities.c:170
int slice_del(struct SN_env *z)
Definition utilities.c:573
int in_grouping_U(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
Definition utilities.c:134
int eq_s(struct SN_env *z, int s_size, const symbol *s)
Definition utilities.c:280
int skip_utf8(const symbol *p, int c, int lb, int l, int n)
Definition utilities.c:42
int in_grouping_b_U(struct SN_env *z, const unsigned char *s, int min, int max, int repeat)
Definition utilities.c:152
int eq_s_b(struct SN_env *z, int s_size, const symbol *s)
Definition utilities.c:290
int find_among(struct SN_env *z, const struct among *v, int v_size)
Definition utilities.c:312
int slice_from_s(struct SN_env *z, int s_size, const symbol *s)
Definition utilities.c:559
static const symbol s_7_63[6]
static const symbol s_2_30[2]
void italian_UTF_8_close_env(struct SN_env *z)
static const symbol s_2_29[2]
static const symbol s_2[]
static const symbol s_7_66[6]
static const symbol s_0_4[2]
static const symbol s_7_19[5]
static const symbol s_7_68[5]
static const symbol s_6_21[4]
static const unsigned char g_AEIO[]
static const symbol s_0_5[2]
static const symbol s_7_26[3]
static const symbol s_4[]
static const symbol s_6_38[6]
static const symbol s_6_22[3]
static const symbol s_7_72[6]
static const symbol s_7_31[4]
static const symbol s_7_7[3]
static const symbol s_6_17[3]
static const symbol s_2_19[2]
static const symbol s_7_11[4]
static const symbol s_6_29[5]
static const symbol s_7_57[4]
static const symbol s_7_61[5]
static const symbol s_7_77[3]
static const symbol s_7_74[6]
static const symbol s_3_4[2]
static const symbol s_7_28[4]
static const symbol s_7_23[3]
static const symbol s_6_34[5]
static const symbol s_5_0[2]
static const symbol s_7_71[8]
static const symbol s_7_56[6]
int italian_UTF_8_stem(struct SN_env *z)
static const symbol s_7_14[3]
static const symbol s_7_32[4]
static int r_standard_suffix(struct SN_env *z)
static const symbol s_0_1[2]
static const symbol s_7_44[4]
static const symbol s_7_51[5]
static const symbol s_4_1[4]
static const symbol s_7_82[2]
static const symbol s_2_20[2]
static const symbol s_2_33[6]
static const symbol s_6_36[4]
static const symbol s_7_46[4]
static const symbol s_2_0[2]
static const symbol s_7_67[5]
static const symbol s_3_0[4]
static const symbol s_6[]
static const symbol s_6_41[3]
static int r_verb_suffix(struct SN_env *z)
static const symbol s_2_22[6]
static const symbol s_7_49[5]
static const symbol s_2_23[4]
static const symbol s_7_1[4]
static const symbol s_7_62[5]
static const symbol s_21[]
static const symbol s_3[]
static const struct among a_0[7]
static const symbol s_6_6[4]
static const symbol s_6_47[4]
static const symbol s_2_15[4]
static const symbol s_2_14[6]
static const symbol s_2_16[4]
static const symbol s_6_3[4]
static const symbol s_7_25[6]
static const symbol s_6_39[4]
static const symbol s_7_30[4]
static const symbol s_7_20[3]
static const symbol s_7_41[3]
static const symbol s_6_26[6]
static const symbol s_2_4[4]
static const symbol s_7_29[4]
static const symbol s_2_7[4]
static const struct among a_6[51]
static const symbol s_7_42[4]
static int r_R2(struct SN_env *z)
static const symbol s_7[]
static const symbol s_7_43[4]
static const symbol s_7_86[4]
static const symbol s_13[]
static const symbol s_7_13[3]
static const symbol s_7_5[3]
static const symbol s_7_35[3]
static const symbol s_6_27[4]
static const symbol s_7_53[4]
static const symbol s_20[]
static const symbol s_7_79[3]
static const struct among a_7[87]
static const symbol s_6_50[5]
static const symbol s_6_2[3]
static const symbol s_2_24[4]
static const symbol s_6_12[5]
static const symbol s_6_18[4]
static const symbol s_7_9[6]
static const symbol s_7_38[3]
static const symbol s_7_27[4]
static const symbol s_7_48[5]
static int r_RV(struct SN_env *z)
static const symbol s_6_32[6]
static const symbol s_7_47[5]
static const symbol s_6_24[4]
static const symbol s_7_81[2]
static const symbol s_7_8[6]
static const symbol s_19[]
static const symbol s_2_13[4]
static const symbol s_7_33[4]
static const symbol s_7_64[6]
static const symbol s_7_50[5]
static const symbol s_2_1[4]
static const symbol s_2_8[6]
static const symbol s_7_59[6]
static const symbol s_7_58[3]
static const struct among a_2[37]
static const symbol s_6_1[5]
static const symbol s_7_12[3]
static const symbol s_6_15[6]
static const symbol s_3_3[2]
static const symbol s_7_24[6]
static const symbol s_2_18[4]
static const symbol s_6_7[3]
static const symbol s_6_8[6]
static const symbol s_7_45[4]
static const symbol s_6_30[4]
static const symbol s_7_60[5]
static const symbol s_2_35[4]
static int r_R1(struct SN_env *z)
static const symbol s_1_2[1]
static const symbol s_6_48[5]
static const symbol s_16[]
static int r_postlude(struct SN_env *z)
static const symbol s_14[]
static const symbol s_2_11[4]
static const symbol s_7_39[3]
static int r_attached_pronoun(struct SN_env *z)
static const symbol s_7_70[8]
static const symbol s_6_28[5]
static const symbol s_6_31[6]
static const struct among a_5[3]
static const symbol s_7_55[6]
static const symbol s_2_28[2]
static int r_prelude(struct SN_env *z)
static const symbol s_6_9[4]
static const symbol s_7_75[3]
static const symbol s_4_2[2]
static const symbol s_10[]
static const symbol s_1_1[1]
static const symbol s_2_17[4]
static const symbol s_6_16[5]
static const struct among a_1[3]
static const unsigned char g_CG[]
static int r_vowel_suffix(struct SN_env *z)
static const symbol s_1[]
static const symbol s_6_14[6]
static const symbol s_2_32[4]
static const symbol s_7_36[6]
static const symbol s_2_9[4]
static const symbol s_2_10[4]
static const symbol s_7_73[6]
static const symbol s_6_11[5]
static const symbol s_7_37[6]
static const symbol s_7_69[5]
static const symbol s_5_2[2]
static const symbol s_3_1[4]
static const symbol s_7_0[4]
static const symbol s_6_45[6]
static const symbol s_4_0[2]
static const symbol s_6_44[6]
static const symbol s_6_43[3]
static const symbol s_7_54[4]
static const symbol s_6_42[4]
static const symbol s_6_25[3]
static const symbol s_6_49[5]
static const symbol s_7_76[3]
static int r_mark_regions(struct SN_env *z)
static const symbol s_7_3[3]
static const symbol s_6_20[6]
static const symbol s_11[]
static const symbol s_12[]
static const symbol s_2_27[2]
static const symbol s_7_40[3]
static const symbol s_7_21[5]
static const symbol s_6_23[4]
static const symbol s_6_13[6]
static const symbol s_2_12[2]
static const symbol s_7_18[5]
static const symbol s_7_85[4]
static const symbol s_2_3[4]
static const symbol s_7_15[4]
static const symbol s_0_6[2]
static const symbol s_2_21[4]
static const symbol s_6_33[6]
static const symbol s_6_37[6]
static const symbol s_2_36[4]
static const symbol s_7_83[4]
static const symbol s_6_0[3]
static const symbol s_7_2[3]
static const symbol s_7_84[4]
static const symbol s_7_4[3]
static const struct among a_3[5]
static const symbol s_4_3[2]
static const symbol s_7_17[5]
static const symbol s_2_34[4]
static const symbol s_6_4[3]
static const symbol s_6_35[3]
static const symbol s_0_2[2]
static const symbol s_7_34[3]
static const symbol s_7_65[3]
static const symbol s_18[]
static const symbol s_17[]
static const struct among a_4[4]
static const symbol s_7_80[3]
static const symbol s_6_19[5]
static const symbol s_7_16[3]
static const symbol s_2_5[4]
static const symbol s_2_2[6]
static const symbol s_7_6[3]
static const symbol s_7_22[5]
static const symbol s_2_25[4]
static const symbol s_0_3[2]
static const symbol s_2_6[2]
static const symbol s_6_40[3]
static const symbol s_2_31[2]
static const unsigned char g_v[]
static const symbol s_7_10[4]
static const symbol s_8[]
static const symbol s_9[]
static const symbol s_6_10[5]
static const symbol s_6_5[4]
static const symbol s_3_2[2]
static const symbol s_7_78[3]
static const symbol s_5[]
static const symbol s_15[]
static const symbol s_7_52[6]
struct SN_env * italian_UTF_8_create_env(void)
static const symbol s_2_26[3]
static const symbol s_5_1[4]
static const symbol s_0[]
static const symbol s_6_46[3]
Definition api.h:14
int lb
Definition api.h:16
symbol * p
Definition api.h:15
int * I
Definition api.h:18
int ket
Definition api.h:16
int c
Definition api.h:16
int bra
Definition api.h:16
int l
Definition api.h:16
Definition header.h:16