Stripped down to only use English/porter for now
[libstemmer_c.git] / src_c / stem_ISO_8859_1_spanish.c
1
2 /* This file was generated automatically by the Snowball to ANSI C compiler */
3
4 #include "../runtime/header.h"
5
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9 extern int spanish_ISO_8859_1_stem(struct SN_env * z);
10 #ifdef __cplusplus
11 }
12 #endif
13 static int r_residual_suffix(struct SN_env * z);
14 static int r_verb_suffix(struct SN_env * z);
15 static int r_y_verb_suffix(struct SN_env * z);
16 static int r_standard_suffix(struct SN_env * z);
17 static int r_attached_pronoun(struct SN_env * z);
18 static int r_R2(struct SN_env * z);
19 static int r_R1(struct SN_env * z);
20 static int r_RV(struct SN_env * z);
21 static int r_mark_regions(struct SN_env * z);
22 static int r_postlude(struct SN_env * z);
23 #ifdef __cplusplus
24 extern "C" {
25 #endif
26
27
28 extern struct SN_env * spanish_ISO_8859_1_create_env(void);
29 extern void spanish_ISO_8859_1_close_env(struct SN_env * z);
30
31
32 #ifdef __cplusplus
33 }
34 #endif
35 static const symbol s_0_1[1] = { 0xE1 };
36 static const symbol s_0_2[1] = { 0xE9 };
37 static const symbol s_0_3[1] = { 0xED };
38 static const symbol s_0_4[1] = { 0xF3 };
39 static const symbol s_0_5[1] = { 0xFA };
40
41 static const struct among a_0[6] =
42 {
43 /*  0 */ { 0, 0, -1, 6, 0},
44 /*  1 */ { 1, s_0_1, 0, 1, 0},
45 /*  2 */ { 1, s_0_2, 0, 2, 0},
46 /*  3 */ { 1, s_0_3, 0, 3, 0},
47 /*  4 */ { 1, s_0_4, 0, 4, 0},
48 /*  5 */ { 1, s_0_5, 0, 5, 0}
49 };
50
51 static const symbol s_1_0[2] = { 'l', 'a' };
52 static const symbol s_1_1[4] = { 's', 'e', 'l', 'a' };
53 static const symbol s_1_2[2] = { 'l', 'e' };
54 static const symbol s_1_3[2] = { 'm', 'e' };
55 static const symbol s_1_4[2] = { 's', 'e' };
56 static const symbol s_1_5[2] = { 'l', 'o' };
57 static const symbol s_1_6[4] = { 's', 'e', 'l', 'o' };
58 static const symbol s_1_7[3] = { 'l', 'a', 's' };
59 static const symbol s_1_8[5] = { 's', 'e', 'l', 'a', 's' };
60 static const symbol s_1_9[3] = { 'l', 'e', 's' };
61 static const symbol s_1_10[3] = { 'l', 'o', 's' };
62 static const symbol s_1_11[5] = { 's', 'e', 'l', 'o', 's' };
63 static const symbol s_1_12[3] = { 'n', 'o', 's' };
64
65 static const struct among a_1[13] =
66 {
67 /*  0 */ { 2, s_1_0, -1, -1, 0},
68 /*  1 */ { 4, s_1_1, 0, -1, 0},
69 /*  2 */ { 2, s_1_2, -1, -1, 0},
70 /*  3 */ { 2, s_1_3, -1, -1, 0},
71 /*  4 */ { 2, s_1_4, -1, -1, 0},
72 /*  5 */ { 2, s_1_5, -1, -1, 0},
73 /*  6 */ { 4, s_1_6, 5, -1, 0},
74 /*  7 */ { 3, s_1_7, -1, -1, 0},
75 /*  8 */ { 5, s_1_8, 7, -1, 0},
76 /*  9 */ { 3, s_1_9, -1, -1, 0},
77 /* 10 */ { 3, s_1_10, -1, -1, 0},
78 /* 11 */ { 5, s_1_11, 10, -1, 0},
79 /* 12 */ { 3, s_1_12, -1, -1, 0}
80 };
81
82 static const symbol s_2_0[4] = { 'a', 'n', 'd', 'o' };
83 static const symbol s_2_1[5] = { 'i', 'e', 'n', 'd', 'o' };
84 static const symbol s_2_2[5] = { 'y', 'e', 'n', 'd', 'o' };
85 static const symbol s_2_3[4] = { 0xE1, 'n', 'd', 'o' };
86 static const symbol s_2_4[5] = { 'i', 0xE9, 'n', 'd', 'o' };
87 static const symbol s_2_5[2] = { 'a', 'r' };
88 static const symbol s_2_6[2] = { 'e', 'r' };
89 static const symbol s_2_7[2] = { 'i', 'r' };
90 static const symbol s_2_8[2] = { 0xE1, 'r' };
91 static const symbol s_2_9[2] = { 0xE9, 'r' };
92 static const symbol s_2_10[2] = { 0xED, 'r' };
93
94 static const struct among a_2[11] =
95 {
96 /*  0 */ { 4, s_2_0, -1, 6, 0},
97 /*  1 */ { 5, s_2_1, -1, 6, 0},
98 /*  2 */ { 5, s_2_2, -1, 7, 0},
99 /*  3 */ { 4, s_2_3, -1, 2, 0},
100 /*  4 */ { 5, s_2_4, -1, 1, 0},
101 /*  5 */ { 2, s_2_5, -1, 6, 0},
102 /*  6 */ { 2, s_2_6, -1, 6, 0},
103 /*  7 */ { 2, s_2_7, -1, 6, 0},
104 /*  8 */ { 2, s_2_8, -1, 3, 0},
105 /*  9 */ { 2, s_2_9, -1, 4, 0},
106 /* 10 */ { 2, s_2_10, -1, 5, 0}
107 };
108
109 static const symbol s_3_0[2] = { 'i', 'c' };
110 static const symbol s_3_1[2] = { 'a', 'd' };
111 static const symbol s_3_2[2] = { 'o', 's' };
112 static const symbol s_3_3[2] = { 'i', 'v' };
113
114 static const struct among a_3[4] =
115 {
116 /*  0 */ { 2, s_3_0, -1, -1, 0},
117 /*  1 */ { 2, s_3_1, -1, -1, 0},
118 /*  2 */ { 2, s_3_2, -1, -1, 0},
119 /*  3 */ { 2, s_3_3, -1, 1, 0}
120 };
121
122 static const symbol s_4_0[4] = { 'a', 'b', 'l', 'e' };
123 static const symbol s_4_1[4] = { 'i', 'b', 'l', 'e' };
124 static const symbol s_4_2[4] = { 'a', 'n', 't', 'e' };
125
126 static const struct among a_4[3] =
127 {
128 /*  0 */ { 4, s_4_0, -1, 1, 0},
129 /*  1 */ { 4, s_4_1, -1, 1, 0},
130 /*  2 */ { 4, s_4_2, -1, 1, 0}
131 };
132
133 static const symbol s_5_0[2] = { 'i', 'c' };
134 static const symbol s_5_1[4] = { 'a', 'b', 'i', 'l' };
135 static const symbol s_5_2[2] = { 'i', 'v' };
136
137 static const struct among a_5[3] =
138 {
139 /*  0 */ { 2, s_5_0, -1, 1, 0},
140 /*  1 */ { 4, s_5_1, -1, 1, 0},
141 /*  2 */ { 2, s_5_2, -1, 1, 0}
142 };
143
144 static const symbol s_6_0[3] = { 'i', 'c', 'a' };
145 static const symbol s_6_1[5] = { 'a', 'n', 'c', 'i', 'a' };
146 static const symbol s_6_2[5] = { 'e', 'n', 'c', 'i', 'a' };
147 static const symbol s_6_3[5] = { 'a', 'd', 'o', 'r', 'a' };
148 static const symbol s_6_4[3] = { 'o', 's', 'a' };
149 static const symbol s_6_5[4] = { 'i', 's', 't', 'a' };
150 static const symbol s_6_6[3] = { 'i', 'v', 'a' };
151 static const symbol s_6_7[4] = { 'a', 'n', 'z', 'a' };
152 static const symbol s_6_8[5] = { 'l', 'o', 'g', 0xED, 'a' };
153 static const symbol s_6_9[4] = { 'i', 'd', 'a', 'd' };
154 static const symbol s_6_10[4] = { 'a', 'b', 'l', 'e' };
155 static const symbol s_6_11[4] = { 'i', 'b', 'l', 'e' };
156 static const symbol s_6_12[4] = { 'a', 'n', 't', 'e' };
157 static const symbol s_6_13[5] = { 'm', 'e', 'n', 't', 'e' };
158 static const symbol s_6_14[6] = { 'a', 'm', 'e', 'n', 't', 'e' };
159 static const symbol s_6_15[5] = { 'a', 'c', 'i', 0xF3, 'n' };
160 static const symbol s_6_16[5] = { 'u', 'c', 'i', 0xF3, 'n' };
161 static const symbol s_6_17[3] = { 'i', 'c', 'o' };
162 static const symbol s_6_18[4] = { 'i', 's', 'm', 'o' };
163 static const symbol s_6_19[3] = { 'o', 's', 'o' };
164 static const symbol s_6_20[7] = { 'a', 'm', 'i', 'e', 'n', 't', 'o' };
165 static const symbol s_6_21[7] = { 'i', 'm', 'i', 'e', 'n', 't', 'o' };
166 static const symbol s_6_22[3] = { 'i', 'v', 'o' };
167 static const symbol s_6_23[4] = { 'a', 'd', 'o', 'r' };
168 static const symbol s_6_24[4] = { 'i', 'c', 'a', 's' };
169 static const symbol s_6_25[6] = { 'a', 'n', 'c', 'i', 'a', 's' };
170 static const symbol s_6_26[6] = { 'e', 'n', 'c', 'i', 'a', 's' };
171 static const symbol s_6_27[6] = { 'a', 'd', 'o', 'r', 'a', 's' };
172 static const symbol s_6_28[4] = { 'o', 's', 'a', 's' };
173 static const symbol s_6_29[5] = { 'i', 's', 't', 'a', 's' };
174 static const symbol s_6_30[4] = { 'i', 'v', 'a', 's' };
175 static const symbol s_6_31[5] = { 'a', 'n', 'z', 'a', 's' };
176 static const symbol s_6_32[6] = { 'l', 'o', 'g', 0xED, 'a', 's' };
177 static const symbol s_6_33[6] = { 'i', 'd', 'a', 'd', 'e', 's' };
178 static const symbol s_6_34[5] = { 'a', 'b', 'l', 'e', 's' };
179 static const symbol s_6_35[5] = { 'i', 'b', 'l', 'e', 's' };
180 static const symbol s_6_36[7] = { 'a', 'c', 'i', 'o', 'n', 'e', 's' };
181 static const symbol s_6_37[7] = { 'u', 'c', 'i', 'o', 'n', 'e', 's' };
182 static const symbol s_6_38[6] = { 'a', 'd', 'o', 'r', 'e', 's' };
183 static const symbol s_6_39[5] = { 'a', 'n', 't', 'e', 's' };
184 static const symbol s_6_40[4] = { 'i', 'c', 'o', 's' };
185 static const symbol s_6_41[5] = { 'i', 's', 'm', 'o', 's' };
186 static const symbol s_6_42[4] = { 'o', 's', 'o', 's' };
187 static const symbol s_6_43[8] = { 'a', 'm', 'i', 'e', 'n', 't', 'o', 's' };
188 static const symbol s_6_44[8] = { 'i', 'm', 'i', 'e', 'n', 't', 'o', 's' };
189 static const symbol s_6_45[4] = { 'i', 'v', 'o', 's' };
190
191 static const struct among a_6[46] =
192 {
193 /*  0 */ { 3, s_6_0, -1, 1, 0},
194 /*  1 */ { 5, s_6_1, -1, 2, 0},
195 /*  2 */ { 5, s_6_2, -1, 5, 0},
196 /*  3 */ { 5, s_6_3, -1, 2, 0},
197 /*  4 */ { 3, s_6_4, -1, 1, 0},
198 /*  5 */ { 4, s_6_5, -1, 1, 0},
199 /*  6 */ { 3, s_6_6, -1, 9, 0},
200 /*  7 */ { 4, s_6_7, -1, 1, 0},
201 /*  8 */ { 5, s_6_8, -1, 3, 0},
202 /*  9 */ { 4, s_6_9, -1, 8, 0},
203 /* 10 */ { 4, s_6_10, -1, 1, 0},
204 /* 11 */ { 4, s_6_11, -1, 1, 0},
205 /* 12 */ { 4, s_6_12, -1, 2, 0},
206 /* 13 */ { 5, s_6_13, -1, 7, 0},
207 /* 14 */ { 6, s_6_14, 13, 6, 0},
208 /* 15 */ { 5, s_6_15, -1, 2, 0},
209 /* 16 */ { 5, s_6_16, -1, 4, 0},
210 /* 17 */ { 3, s_6_17, -1, 1, 0},
211 /* 18 */ { 4, s_6_18, -1, 1, 0},
212 /* 19 */ { 3, s_6_19, -1, 1, 0},
213 /* 20 */ { 7, s_6_20, -1, 1, 0},
214 /* 21 */ { 7, s_6_21, -1, 1, 0},
215 /* 22 */ { 3, s_6_22, -1, 9, 0},
216 /* 23 */ { 4, s_6_23, -1, 2, 0},
217 /* 24 */ { 4, s_6_24, -1, 1, 0},
218 /* 25 */ { 6, s_6_25, -1, 2, 0},
219 /* 26 */ { 6, s_6_26, -1, 5, 0},
220 /* 27 */ { 6, s_6_27, -1, 2, 0},
221 /* 28 */ { 4, s_6_28, -1, 1, 0},
222 /* 29 */ { 5, s_6_29, -1, 1, 0},
223 /* 30 */ { 4, s_6_30, -1, 9, 0},
224 /* 31 */ { 5, s_6_31, -1, 1, 0},
225 /* 32 */ { 6, s_6_32, -1, 3, 0},
226 /* 33 */ { 6, s_6_33, -1, 8, 0},
227 /* 34 */ { 5, s_6_34, -1, 1, 0},
228 /* 35 */ { 5, s_6_35, -1, 1, 0},
229 /* 36 */ { 7, s_6_36, -1, 2, 0},
230 /* 37 */ { 7, s_6_37, -1, 4, 0},
231 /* 38 */ { 6, s_6_38, -1, 2, 0},
232 /* 39 */ { 5, s_6_39, -1, 2, 0},
233 /* 40 */ { 4, s_6_40, -1, 1, 0},
234 /* 41 */ { 5, s_6_41, -1, 1, 0},
235 /* 42 */ { 4, s_6_42, -1, 1, 0},
236 /* 43 */ { 8, s_6_43, -1, 1, 0},
237 /* 44 */ { 8, s_6_44, -1, 1, 0},
238 /* 45 */ { 4, s_6_45, -1, 9, 0}
239 };
240
241 static const symbol s_7_0[2] = { 'y', 'a' };
242 static const symbol s_7_1[2] = { 'y', 'e' };
243 static const symbol s_7_2[3] = { 'y', 'a', 'n' };
244 static const symbol s_7_3[3] = { 'y', 'e', 'n' };
245 static const symbol s_7_4[5] = { 'y', 'e', 'r', 'o', 'n' };
246 static const symbol s_7_5[5] = { 'y', 'e', 'n', 'd', 'o' };
247 static const symbol s_7_6[2] = { 'y', 'o' };
248 static const symbol s_7_7[3] = { 'y', 'a', 's' };
249 static const symbol s_7_8[3] = { 'y', 'e', 's' };
250 static const symbol s_7_9[4] = { 'y', 'a', 'i', 's' };
251 static const symbol s_7_10[5] = { 'y', 'a', 'm', 'o', 's' };
252 static const symbol s_7_11[2] = { 'y', 0xF3 };
253
254 static const struct among a_7[12] =
255 {
256 /*  0 */ { 2, s_7_0, -1, 1, 0},
257 /*  1 */ { 2, s_7_1, -1, 1, 0},
258 /*  2 */ { 3, s_7_2, -1, 1, 0},
259 /*  3 */ { 3, s_7_3, -1, 1, 0},
260 /*  4 */ { 5, s_7_4, -1, 1, 0},
261 /*  5 */ { 5, s_7_5, -1, 1, 0},
262 /*  6 */ { 2, s_7_6, -1, 1, 0},
263 /*  7 */ { 3, s_7_7, -1, 1, 0},
264 /*  8 */ { 3, s_7_8, -1, 1, 0},
265 /*  9 */ { 4, s_7_9, -1, 1, 0},
266 /* 10 */ { 5, s_7_10, -1, 1, 0},
267 /* 11 */ { 2, s_7_11, -1, 1, 0}
268 };
269
270 static const symbol s_8_0[3] = { 'a', 'b', 'a' };
271 static const symbol s_8_1[3] = { 'a', 'd', 'a' };
272 static const symbol s_8_2[3] = { 'i', 'd', 'a' };
273 static const symbol s_8_3[3] = { 'a', 'r', 'a' };
274 static const symbol s_8_4[4] = { 'i', 'e', 'r', 'a' };
275 static const symbol s_8_5[2] = { 0xED, 'a' };
276 static const symbol s_8_6[4] = { 'a', 'r', 0xED, 'a' };
277 static const symbol s_8_7[4] = { 'e', 'r', 0xED, 'a' };
278 static const symbol s_8_8[4] = { 'i', 'r', 0xED, 'a' };
279 static const symbol s_8_9[2] = { 'a', 'd' };
280 static const symbol s_8_10[2] = { 'e', 'd' };
281 static const symbol s_8_11[2] = { 'i', 'd' };
282 static const symbol s_8_12[3] = { 'a', 's', 'e' };
283 static const symbol s_8_13[4] = { 'i', 'e', 's', 'e' };
284 static const symbol s_8_14[4] = { 'a', 's', 't', 'e' };
285 static const symbol s_8_15[4] = { 'i', 's', 't', 'e' };
286 static const symbol s_8_16[2] = { 'a', 'n' };
287 static const symbol s_8_17[4] = { 'a', 'b', 'a', 'n' };
288 static const symbol s_8_18[4] = { 'a', 'r', 'a', 'n' };
289 static const symbol s_8_19[5] = { 'i', 'e', 'r', 'a', 'n' };
290 static const symbol s_8_20[3] = { 0xED, 'a', 'n' };
291 static const symbol s_8_21[5] = { 'a', 'r', 0xED, 'a', 'n' };
292 static const symbol s_8_22[5] = { 'e', 'r', 0xED, 'a', 'n' };
293 static const symbol s_8_23[5] = { 'i', 'r', 0xED, 'a', 'n' };
294 static const symbol s_8_24[2] = { 'e', 'n' };
295 static const symbol s_8_25[4] = { 'a', 's', 'e', 'n' };
296 static const symbol s_8_26[5] = { 'i', 'e', 's', 'e', 'n' };
297 static const symbol s_8_27[4] = { 'a', 'r', 'o', 'n' };
298 static const symbol s_8_28[5] = { 'i', 'e', 'r', 'o', 'n' };
299 static const symbol s_8_29[4] = { 'a', 'r', 0xE1, 'n' };
300 static const symbol s_8_30[4] = { 'e', 'r', 0xE1, 'n' };
301 static const symbol s_8_31[4] = { 'i', 'r', 0xE1, 'n' };
302 static const symbol s_8_32[3] = { 'a', 'd', 'o' };
303 static const symbol s_8_33[3] = { 'i', 'd', 'o' };
304 static const symbol s_8_34[4] = { 'a', 'n', 'd', 'o' };
305 static const symbol s_8_35[5] = { 'i', 'e', 'n', 'd', 'o' };
306 static const symbol s_8_36[2] = { 'a', 'r' };
307 static const symbol s_8_37[2] = { 'e', 'r' };
308 static const symbol s_8_38[2] = { 'i', 'r' };
309 static const symbol s_8_39[2] = { 'a', 's' };
310 static const symbol s_8_40[4] = { 'a', 'b', 'a', 's' };
311 static const symbol s_8_41[4] = { 'a', 'd', 'a', 's' };
312 static const symbol s_8_42[4] = { 'i', 'd', 'a', 's' };
313 static const symbol s_8_43[4] = { 'a', 'r', 'a', 's' };
314 static const symbol s_8_44[5] = { 'i', 'e', 'r', 'a', 's' };
315 static const symbol s_8_45[3] = { 0xED, 'a', 's' };
316 static const symbol s_8_46[5] = { 'a', 'r', 0xED, 'a', 's' };
317 static const symbol s_8_47[5] = { 'e', 'r', 0xED, 'a', 's' };
318 static const symbol s_8_48[5] = { 'i', 'r', 0xED, 'a', 's' };
319 static const symbol s_8_49[2] = { 'e', 's' };
320 static const symbol s_8_50[4] = { 'a', 's', 'e', 's' };
321 static const symbol s_8_51[5] = { 'i', 'e', 's', 'e', 's' };
322 static const symbol s_8_52[5] = { 'a', 'b', 'a', 'i', 's' };
323 static const symbol s_8_53[5] = { 'a', 'r', 'a', 'i', 's' };
324 static const symbol s_8_54[6] = { 'i', 'e', 'r', 'a', 'i', 's' };
325 static const symbol s_8_55[4] = { 0xED, 'a', 'i', 's' };
326 static const symbol s_8_56[6] = { 'a', 'r', 0xED, 'a', 'i', 's' };
327 static const symbol s_8_57[6] = { 'e', 'r', 0xED, 'a', 'i', 's' };
328 static const symbol s_8_58[6] = { 'i', 'r', 0xED, 'a', 'i', 's' };
329 static const symbol s_8_59[5] = { 'a', 's', 'e', 'i', 's' };
330 static const symbol s_8_60[6] = { 'i', 'e', 's', 'e', 'i', 's' };
331 static const symbol s_8_61[6] = { 'a', 's', 't', 'e', 'i', 's' };
332 static const symbol s_8_62[6] = { 'i', 's', 't', 'e', 'i', 's' };
333 static const symbol s_8_63[3] = { 0xE1, 'i', 's' };
334 static const symbol s_8_64[3] = { 0xE9, 'i', 's' };
335 static const symbol s_8_65[5] = { 'a', 'r', 0xE9, 'i', 's' };
336 static const symbol s_8_66[5] = { 'e', 'r', 0xE9, 'i', 's' };
337 static const symbol s_8_67[5] = { 'i', 'r', 0xE9, 'i', 's' };
338 static const symbol s_8_68[4] = { 'a', 'd', 'o', 's' };
339 static const symbol s_8_69[4] = { 'i', 'd', 'o', 's' };
340 static const symbol s_8_70[4] = { 'a', 'm', 'o', 's' };
341 static const symbol s_8_71[6] = { 0xE1, 'b', 'a', 'm', 'o', 's' };
342 static const symbol s_8_72[6] = { 0xE1, 'r', 'a', 'm', 'o', 's' };
343 static const symbol s_8_73[7] = { 'i', 0xE9, 'r', 'a', 'm', 'o', 's' };
344 static const symbol s_8_74[5] = { 0xED, 'a', 'm', 'o', 's' };
345 static const symbol s_8_75[7] = { 'a', 'r', 0xED, 'a', 'm', 'o', 's' };
346 static const symbol s_8_76[7] = { 'e', 'r', 0xED, 'a', 'm', 'o', 's' };
347 static const symbol s_8_77[7] = { 'i', 'r', 0xED, 'a', 'm', 'o', 's' };
348 static const symbol s_8_78[4] = { 'e', 'm', 'o', 's' };
349 static const symbol s_8_79[6] = { 'a', 'r', 'e', 'm', 'o', 's' };
350 static const symbol s_8_80[6] = { 'e', 'r', 'e', 'm', 'o', 's' };
351 static const symbol s_8_81[6] = { 'i', 'r', 'e', 'm', 'o', 's' };
352 static const symbol s_8_82[6] = { 0xE1, 's', 'e', 'm', 'o', 's' };
353 static const symbol s_8_83[7] = { 'i', 0xE9, 's', 'e', 'm', 'o', 's' };
354 static const symbol s_8_84[4] = { 'i', 'm', 'o', 's' };
355 static const symbol s_8_85[4] = { 'a', 'r', 0xE1, 's' };
356 static const symbol s_8_86[4] = { 'e', 'r', 0xE1, 's' };
357 static const symbol s_8_87[4] = { 'i', 'r', 0xE1, 's' };
358 static const symbol s_8_88[2] = { 0xED, 's' };
359 static const symbol s_8_89[3] = { 'a', 'r', 0xE1 };
360 static const symbol s_8_90[3] = { 'e', 'r', 0xE1 };
361 static const symbol s_8_91[3] = { 'i', 'r', 0xE1 };
362 static const symbol s_8_92[3] = { 'a', 'r', 0xE9 };
363 static const symbol s_8_93[3] = { 'e', 'r', 0xE9 };
364 static const symbol s_8_94[3] = { 'i', 'r', 0xE9 };
365 static const symbol s_8_95[2] = { 'i', 0xF3 };
366
367 static const struct among a_8[96] =
368 {
369 /*  0 */ { 3, s_8_0, -1, 2, 0},
370 /*  1 */ { 3, s_8_1, -1, 2, 0},
371 /*  2 */ { 3, s_8_2, -1, 2, 0},
372 /*  3 */ { 3, s_8_3, -1, 2, 0},
373 /*  4 */ { 4, s_8_4, -1, 2, 0},
374 /*  5 */ { 2, s_8_5, -1, 2, 0},
375 /*  6 */ { 4, s_8_6, 5, 2, 0},
376 /*  7 */ { 4, s_8_7, 5, 2, 0},
377 /*  8 */ { 4, s_8_8, 5, 2, 0},
378 /*  9 */ { 2, s_8_9, -1, 2, 0},
379 /* 10 */ { 2, s_8_10, -1, 2, 0},
380 /* 11 */ { 2, s_8_11, -1, 2, 0},
381 /* 12 */ { 3, s_8_12, -1, 2, 0},
382 /* 13 */ { 4, s_8_13, -1, 2, 0},
383 /* 14 */ { 4, s_8_14, -1, 2, 0},
384 /* 15 */ { 4, s_8_15, -1, 2, 0},
385 /* 16 */ { 2, s_8_16, -1, 2, 0},
386 /* 17 */ { 4, s_8_17, 16, 2, 0},
387 /* 18 */ { 4, s_8_18, 16, 2, 0},
388 /* 19 */ { 5, s_8_19, 16, 2, 0},
389 /* 20 */ { 3, s_8_20, 16, 2, 0},
390 /* 21 */ { 5, s_8_21, 20, 2, 0},
391 /* 22 */ { 5, s_8_22, 20, 2, 0},
392 /* 23 */ { 5, s_8_23, 20, 2, 0},
393 /* 24 */ { 2, s_8_24, -1, 1, 0},
394 /* 25 */ { 4, s_8_25, 24, 2, 0},
395 /* 26 */ { 5, s_8_26, 24, 2, 0},
396 /* 27 */ { 4, s_8_27, -1, 2, 0},
397 /* 28 */ { 5, s_8_28, -1, 2, 0},
398 /* 29 */ { 4, s_8_29, -1, 2, 0},
399 /* 30 */ { 4, s_8_30, -1, 2, 0},
400 /* 31 */ { 4, s_8_31, -1, 2, 0},
401 /* 32 */ { 3, s_8_32, -1, 2, 0},
402 /* 33 */ { 3, s_8_33, -1, 2, 0},
403 /* 34 */ { 4, s_8_34, -1, 2, 0},
404 /* 35 */ { 5, s_8_35, -1, 2, 0},
405 /* 36 */ { 2, s_8_36, -1, 2, 0},
406 /* 37 */ { 2, s_8_37, -1, 2, 0},
407 /* 38 */ { 2, s_8_38, -1, 2, 0},
408 /* 39 */ { 2, s_8_39, -1, 2, 0},
409 /* 40 */ { 4, s_8_40, 39, 2, 0},
410 /* 41 */ { 4, s_8_41, 39, 2, 0},
411 /* 42 */ { 4, s_8_42, 39, 2, 0},
412 /* 43 */ { 4, s_8_43, 39, 2, 0},
413 /* 44 */ { 5, s_8_44, 39, 2, 0},
414 /* 45 */ { 3, s_8_45, 39, 2, 0},
415 /* 46 */ { 5, s_8_46, 45, 2, 0},
416 /* 47 */ { 5, s_8_47, 45, 2, 0},
417 /* 48 */ { 5, s_8_48, 45, 2, 0},
418 /* 49 */ { 2, s_8_49, -1, 1, 0},
419 /* 50 */ { 4, s_8_50, 49, 2, 0},
420 /* 51 */ { 5, s_8_51, 49, 2, 0},
421 /* 52 */ { 5, s_8_52, -1, 2, 0},
422 /* 53 */ { 5, s_8_53, -1, 2, 0},
423 /* 54 */ { 6, s_8_54, -1, 2, 0},
424 /* 55 */ { 4, s_8_55, -1, 2, 0},
425 /* 56 */ { 6, s_8_56, 55, 2, 0},
426 /* 57 */ { 6, s_8_57, 55, 2, 0},
427 /* 58 */ { 6, s_8_58, 55, 2, 0},
428 /* 59 */ { 5, s_8_59, -1, 2, 0},
429 /* 60 */ { 6, s_8_60, -1, 2, 0},
430 /* 61 */ { 6, s_8_61, -1, 2, 0},
431 /* 62 */ { 6, s_8_62, -1, 2, 0},
432 /* 63 */ { 3, s_8_63, -1, 2, 0},
433 /* 64 */ { 3, s_8_64, -1, 1, 0},
434 /* 65 */ { 5, s_8_65, 64, 2, 0},
435 /* 66 */ { 5, s_8_66, 64, 2, 0},
436 /* 67 */ { 5, s_8_67, 64, 2, 0},
437 /* 68 */ { 4, s_8_68, -1, 2, 0},
438 /* 69 */ { 4, s_8_69, -1, 2, 0},
439 /* 70 */ { 4, s_8_70, -1, 2, 0},
440 /* 71 */ { 6, s_8_71, 70, 2, 0},
441 /* 72 */ { 6, s_8_72, 70, 2, 0},
442 /* 73 */ { 7, s_8_73, 70, 2, 0},
443 /* 74 */ { 5, s_8_74, 70, 2, 0},
444 /* 75 */ { 7, s_8_75, 74, 2, 0},
445 /* 76 */ { 7, s_8_76, 74, 2, 0},
446 /* 77 */ { 7, s_8_77, 74, 2, 0},
447 /* 78 */ { 4, s_8_78, -1, 1, 0},
448 /* 79 */ { 6, s_8_79, 78, 2, 0},
449 /* 80 */ { 6, s_8_80, 78, 2, 0},
450 /* 81 */ { 6, s_8_81, 78, 2, 0},
451 /* 82 */ { 6, s_8_82, 78, 2, 0},
452 /* 83 */ { 7, s_8_83, 78, 2, 0},
453 /* 84 */ { 4, s_8_84, -1, 2, 0},
454 /* 85 */ { 4, s_8_85, -1, 2, 0},
455 /* 86 */ { 4, s_8_86, -1, 2, 0},
456 /* 87 */ { 4, s_8_87, -1, 2, 0},
457 /* 88 */ { 2, s_8_88, -1, 2, 0},
458 /* 89 */ { 3, s_8_89, -1, 2, 0},
459 /* 90 */ { 3, s_8_90, -1, 2, 0},
460 /* 91 */ { 3, s_8_91, -1, 2, 0},
461 /* 92 */ { 3, s_8_92, -1, 2, 0},
462 /* 93 */ { 3, s_8_93, -1, 2, 0},
463 /* 94 */ { 3, s_8_94, -1, 2, 0},
464 /* 95 */ { 2, s_8_95, -1, 2, 0}
465 };
466
467 static const symbol s_9_0[1] = { 'a' };
468 static const symbol s_9_1[1] = { 'e' };
469 static const symbol s_9_2[1] = { 'o' };
470 static const symbol s_9_3[2] = { 'o', 's' };
471 static const symbol s_9_4[1] = { 0xE1 };
472 static const symbol s_9_5[1] = { 0xE9 };
473 static const symbol s_9_6[1] = { 0xED };
474 static const symbol s_9_7[1] = { 0xF3 };
475
476 static const struct among a_9[8] =
477 {
478 /*  0 */ { 1, s_9_0, -1, 1, 0},
479 /*  1 */ { 1, s_9_1, -1, 2, 0},
480 /*  2 */ { 1, s_9_2, -1, 1, 0},
481 /*  3 */ { 2, s_9_3, -1, 1, 0},
482 /*  4 */ { 1, s_9_4, -1, 1, 0},
483 /*  5 */ { 1, s_9_5, -1, 2, 0},
484 /*  6 */ { 1, s_9_6, -1, 1, 0},
485 /*  7 */ { 1, s_9_7, -1, 1, 0}
486 };
487
488 static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 10 };
489
490 static const symbol s_0[] = { 'a' };
491 static const symbol s_1[] = { 'e' };
492 static const symbol s_2[] = { 'i' };
493 static const symbol s_3[] = { 'o' };
494 static const symbol s_4[] = { 'u' };
495 static const symbol s_5[] = { 'i', 'e', 'n', 'd', 'o' };
496 static const symbol s_6[] = { 'a', 'n', 'd', 'o' };
497 static const symbol s_7[] = { 'a', 'r' };
498 static const symbol s_8[] = { 'e', 'r' };
499 static const symbol s_9[] = { 'i', 'r' };
500 static const symbol s_10[] = { 'u' };
501 static const symbol s_11[] = { 'i', 'c' };
502 static const symbol s_12[] = { 'l', 'o', 'g' };
503 static const symbol s_13[] = { 'u' };
504 static const symbol s_14[] = { 'e', 'n', 't', 'e' };
505 static const symbol s_15[] = { 'a', 't' };
506 static const symbol s_16[] = { 'a', 't' };
507 static const symbol s_17[] = { 'u' };
508 static const symbol s_18[] = { 'u' };
509 static const symbol s_19[] = { 'g' };
510 static const symbol s_20[] = { 'u' };
511 static const symbol s_21[] = { 'g' };
512
513 static int r_mark_regions(struct SN_env * z) {
514     z->I[0] = z->l;
515     z->I[1] = z->l;
516     z->I[2] = z->l;
517     {   int c1 = z->c; /* do, line 37 */
518         {   int c2 = z->c; /* or, line 39 */
519             if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
520             {   int c3 = z->c; /* or, line 38 */
521                 if (out_grouping(z, g_v, 97, 252, 0)) goto lab4;
522                 {    /* gopast */ /* grouping v, line 38 */
523                     int ret = out_grouping(z, g_v, 97, 252, 1);
524                     if (ret < 0) goto lab4;
525                     z->c += ret;
526                 }
527                 goto lab3;
528             lab4:
529                 z->c = c3;
530                 if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
531                 {    /* gopast */ /* non v, line 38 */
532                     int ret = in_grouping(z, g_v, 97, 252, 1);
533                     if (ret < 0) goto lab2;
534                     z->c += ret;
535                 }
536             }
537         lab3:
538             goto lab1;
539         lab2:
540             z->c = c2;
541             if (out_grouping(z, g_v, 97, 252, 0)) goto lab0;
542             {   int c4 = z->c; /* or, line 40 */
543                 if (out_grouping(z, g_v, 97, 252, 0)) goto lab6;
544                 {    /* gopast */ /* grouping v, line 40 */
545                     int ret = out_grouping(z, g_v, 97, 252, 1);
546                     if (ret < 0) goto lab6;
547                     z->c += ret;
548                 }
549                 goto lab5;
550             lab6:
551                 z->c = c4;
552                 if (in_grouping(z, g_v, 97, 252, 0)) goto lab0;
553                 if (z->c >= z->l) goto lab0;
554                 z->c++; /* next, line 40 */
555             }
556         lab5:
557             ;
558         }
559     lab1:
560         z->I[0] = z->c; /* setmark pV, line 41 */
561     lab0:
562         z->c = c1;
563     }
564     {   int c5 = z->c; /* do, line 43 */
565         {    /* gopast */ /* grouping v, line 44 */
566             int ret = out_grouping(z, g_v, 97, 252, 1);
567             if (ret < 0) goto lab7;
568             z->c += ret;
569         }
570         {    /* gopast */ /* non v, line 44 */
571             int ret = in_grouping(z, g_v, 97, 252, 1);
572             if (ret < 0) goto lab7;
573             z->c += ret;
574         }
575         z->I[1] = z->c; /* setmark p1, line 44 */
576         {    /* gopast */ /* grouping v, line 45 */
577             int ret = out_grouping(z, g_v, 97, 252, 1);
578             if (ret < 0) goto lab7;
579             z->c += ret;
580         }
581         {    /* gopast */ /* non v, line 45 */
582             int ret = in_grouping(z, g_v, 97, 252, 1);
583             if (ret < 0) goto lab7;
584             z->c += ret;
585         }
586         z->I[2] = z->c; /* setmark p2, line 45 */
587     lab7:
588         z->c = c5;
589     }
590     return 1;
591 }
592
593 static int r_postlude(struct SN_env * z) {
594     int among_var;
595     while(1) { /* repeat, line 49 */
596         int c1 = z->c;
597         z->bra = z->c; /* [, line 50 */
598         if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((67641858 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else
599         among_var = find_among(z, a_0, 6); /* substring, line 50 */
600         if (!(among_var)) goto lab0;
601         z->ket = z->c; /* ], line 50 */
602         switch(among_var) {
603             case 0: goto lab0;
604             case 1:
605                 {   int ret = slice_from_s(z, 1, s_0); /* <-, line 51 */
606                     if (ret < 0) return ret;
607                 }
608                 break;
609             case 2:
610                 {   int ret = slice_from_s(z, 1, s_1); /* <-, line 52 */
611                     if (ret < 0) return ret;
612                 }
613                 break;
614             case 3:
615                 {   int ret = slice_from_s(z, 1, s_2); /* <-, line 53 */
616                     if (ret < 0) return ret;
617                 }
618                 break;
619             case 4:
620                 {   int ret = slice_from_s(z, 1, s_3); /* <-, line 54 */
621                     if (ret < 0) return ret;
622                 }
623                 break;
624             case 5:
625                 {   int ret = slice_from_s(z, 1, s_4); /* <-, line 55 */
626                     if (ret < 0) return ret;
627                 }
628                 break;
629             case 6:
630                 if (z->c >= z->l) goto lab0;
631                 z->c++; /* next, line 57 */
632                 break;
633         }
634         continue;
635     lab0:
636         z->c = c1;
637         break;
638     }
639     return 1;
640 }
641
642 static int r_RV(struct SN_env * z) {
643     if (!(z->I[0] <= z->c)) return 0;
644     return 1;
645 }
646
647 static int r_R1(struct SN_env * z) {
648     if (!(z->I[1] <= z->c)) return 0;
649     return 1;
650 }
651
652 static int r_R2(struct SN_env * z) {
653     if (!(z->I[2] <= z->c)) return 0;
654     return 1;
655 }
656
657 static int r_attached_pronoun(struct SN_env * z) {
658     int among_var;
659     z->ket = z->c; /* [, line 68 */
660     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((557090 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
661     if (!(find_among_b(z, a_1, 13))) return 0; /* substring, line 68 */
662     z->bra = z->c; /* ], line 68 */
663     if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 111 && z->p[z->c - 1] != 114)) return 0;
664     among_var = find_among_b(z, a_2, 11); /* substring, line 72 */
665     if (!(among_var)) return 0;
666     {   int ret = r_RV(z);
667         if (ret == 0) return 0; /* call RV, line 72 */
668         if (ret < 0) return ret;
669     }
670     switch(among_var) {
671         case 0: return 0;
672         case 1:
673             z->bra = z->c; /* ], line 73 */
674             {   int ret = slice_from_s(z, 5, s_5); /* <-, line 73 */
675                 if (ret < 0) return ret;
676             }
677             break;
678         case 2:
679             z->bra = z->c; /* ], line 74 */
680             {   int ret = slice_from_s(z, 4, s_6); /* <-, line 74 */
681                 if (ret < 0) return ret;
682             }
683             break;
684         case 3:
685             z->bra = z->c; /* ], line 75 */
686             {   int ret = slice_from_s(z, 2, s_7); /* <-, line 75 */
687                 if (ret < 0) return ret;
688             }
689             break;
690         case 4:
691             z->bra = z->c; /* ], line 76 */
692             {   int ret = slice_from_s(z, 2, s_8); /* <-, line 76 */
693                 if (ret < 0) return ret;
694             }
695             break;
696         case 5:
697             z->bra = z->c; /* ], line 77 */
698             {   int ret = slice_from_s(z, 2, s_9); /* <-, line 77 */
699                 if (ret < 0) return ret;
700             }
701             break;
702         case 6:
703             {   int ret = slice_del(z); /* delete, line 81 */
704                 if (ret < 0) return ret;
705             }
706             break;
707         case 7:
708             if (!(eq_s_b(z, 1, s_10))) return 0;
709             {   int ret = slice_del(z); /* delete, line 82 */
710                 if (ret < 0) return ret;
711             }
712             break;
713     }
714     return 1;
715 }
716
717 static int r_standard_suffix(struct SN_env * z) {
718     int among_var;
719     z->ket = z->c; /* [, line 87 */
720     if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((835634 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
721     among_var = find_among_b(z, a_6, 46); /* substring, line 87 */
722     if (!(among_var)) return 0;
723     z->bra = z->c; /* ], line 87 */
724     switch(among_var) {
725         case 0: return 0;
726         case 1:
727             {   int ret = r_R2(z);
728                 if (ret == 0) return 0; /* call R2, line 99 */
729                 if (ret < 0) return ret;
730             }
731             {   int ret = slice_del(z); /* delete, line 99 */
732                 if (ret < 0) return ret;
733             }
734             break;
735         case 2:
736             {   int ret = r_R2(z);
737                 if (ret == 0) return 0; /* call R2, line 105 */
738                 if (ret < 0) return ret;
739             }
740             {   int ret = slice_del(z); /* delete, line 105 */
741                 if (ret < 0) return ret;
742             }
743             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 106 */
744                 z->ket = z->c; /* [, line 106 */
745                 if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m_keep; goto lab0; }
746                 z->bra = z->c; /* ], line 106 */
747                 {   int ret = r_R2(z);
748                     if (ret == 0) { z->c = z->l - m_keep; goto lab0; } /* call R2, line 106 */
749                     if (ret < 0) return ret;
750                 }
751                 {   int ret = slice_del(z); /* delete, line 106 */
752                     if (ret < 0) return ret;
753                 }
754             lab0:
755                 ;
756             }
757             break;
758         case 3:
759             {   int ret = r_R2(z);
760                 if (ret == 0) return 0; /* call R2, line 111 */
761                 if (ret < 0) return ret;
762             }
763             {   int ret = slice_from_s(z, 3, s_12); /* <-, line 111 */
764                 if (ret < 0) return ret;
765             }
766             break;
767         case 4:
768             {   int ret = r_R2(z);
769                 if (ret == 0) return 0; /* call R2, line 115 */
770                 if (ret < 0) return ret;
771             }
772             {   int ret = slice_from_s(z, 1, s_13); /* <-, line 115 */
773                 if (ret < 0) return ret;
774             }
775             break;
776         case 5:
777             {   int ret = r_R2(z);
778                 if (ret == 0) return 0; /* call R2, line 119 */
779                 if (ret < 0) return ret;
780             }
781             {   int ret = slice_from_s(z, 4, s_14); /* <-, line 119 */
782                 if (ret < 0) return ret;
783             }
784             break;
785         case 6:
786             {   int ret = r_R1(z);
787                 if (ret == 0) return 0; /* call R1, line 123 */
788                 if (ret < 0) return ret;
789             }
790             {   int ret = slice_del(z); /* delete, line 123 */
791                 if (ret < 0) return ret;
792             }
793             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 124 */
794                 z->ket = z->c; /* [, line 125 */
795                 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718616 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m_keep; goto lab1; }
796                 among_var = find_among_b(z, a_3, 4); /* substring, line 125 */
797                 if (!(among_var)) { z->c = z->l - m_keep; goto lab1; }
798                 z->bra = z->c; /* ], line 125 */
799                 {   int ret = r_R2(z);
800                     if (ret == 0) { z->c = z->l - m_keep; goto lab1; } /* call R2, line 125 */
801                     if (ret < 0) return ret;
802                 }
803                 {   int ret = slice_del(z); /* delete, line 125 */
804                     if (ret < 0) return ret;
805                 }
806                 switch(among_var) {
807                     case 0: { z->c = z->l - m_keep; goto lab1; }
808                     case 1:
809                         z->ket = z->c; /* [, line 126 */
810                         if (!(eq_s_b(z, 2, s_15))) { z->c = z->l - m_keep; goto lab1; }
811                         z->bra = z->c; /* ], line 126 */
812                         {   int ret = r_R2(z);
813                             if (ret == 0) { z->c = z->l - m_keep; goto lab1; } /* call R2, line 126 */
814                             if (ret < 0) return ret;
815                         }
816                         {   int ret = slice_del(z); /* delete, line 126 */
817                             if (ret < 0) return ret;
818                         }
819                         break;
820                 }
821             lab1:
822                 ;
823             }
824             break;
825         case 7:
826             {   int ret = r_R2(z);
827                 if (ret == 0) return 0; /* call R2, line 135 */
828                 if (ret < 0) return ret;
829             }
830             {   int ret = slice_del(z); /* delete, line 135 */
831                 if (ret < 0) return ret;
832             }
833             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 136 */
834                 z->ket = z->c; /* [, line 137 */
835                 if (z->c - 3 <= z->lb || z->p[z->c - 1] != 101) { z->c = z->l - m_keep; goto lab2; }
836                 among_var = find_among_b(z, a_4, 3); /* substring, line 137 */
837                 if (!(among_var)) { z->c = z->l - m_keep; goto lab2; }
838                 z->bra = z->c; /* ], line 137 */
839                 switch(among_var) {
840                     case 0: { z->c = z->l - m_keep; goto lab2; }
841                     case 1:
842                         {   int ret = r_R2(z);
843                             if (ret == 0) { z->c = z->l - m_keep; goto lab2; } /* call R2, line 140 */
844                             if (ret < 0) return ret;
845                         }
846                         {   int ret = slice_del(z); /* delete, line 140 */
847                             if (ret < 0) return ret;
848                         }
849                         break;
850                 }
851             lab2:
852                 ;
853             }
854             break;
855         case 8:
856             {   int ret = r_R2(z);
857                 if (ret == 0) return 0; /* call R2, line 147 */
858                 if (ret < 0) return ret;
859             }
860             {   int ret = slice_del(z); /* delete, line 147 */
861                 if (ret < 0) return ret;
862             }
863             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 148 */
864                 z->ket = z->c; /* [, line 149 */
865                 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m_keep; goto lab3; }
866                 among_var = find_among_b(z, a_5, 3); /* substring, line 149 */
867                 if (!(among_var)) { z->c = z->l - m_keep; goto lab3; }
868                 z->bra = z->c; /* ], line 149 */
869                 switch(among_var) {
870                     case 0: { z->c = z->l - m_keep; goto lab3; }
871                     case 1:
872                         {   int ret = r_R2(z);
873                             if (ret == 0) { z->c = z->l - m_keep; goto lab3; } /* call R2, line 152 */
874                             if (ret < 0) return ret;
875                         }
876                         {   int ret = slice_del(z); /* delete, line 152 */
877                             if (ret < 0) return ret;
878                         }
879                         break;
880                 }
881             lab3:
882                 ;
883             }
884             break;
885         case 9:
886             {   int ret = r_R2(z);
887                 if (ret == 0) return 0; /* call R2, line 159 */
888                 if (ret < 0) return ret;
889             }
890             {   int ret = slice_del(z); /* delete, line 159 */
891                 if (ret < 0) return ret;
892             }
893             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 160 */
894                 z->ket = z->c; /* [, line 161 */
895                 if (!(eq_s_b(z, 2, s_16))) { z->c = z->l - m_keep; goto lab4; }
896                 z->bra = z->c; /* ], line 161 */
897                 {   int ret = r_R2(z);
898                     if (ret == 0) { z->c = z->l - m_keep; goto lab4; } /* call R2, line 161 */
899                     if (ret < 0) return ret;
900                 }
901                 {   int ret = slice_del(z); /* delete, line 161 */
902                     if (ret < 0) return ret;
903                 }
904             lab4:
905                 ;
906             }
907             break;
908     }
909     return 1;
910 }
911
912 static int r_y_verb_suffix(struct SN_env * z) {
913     int among_var;
914     {   int mlimit; /* setlimit, line 168 */
915         int m1 = z->l - z->c; (void)m1;
916         if (z->c < z->I[0]) return 0;
917         z->c = z->I[0]; /* tomark, line 168 */
918         mlimit = z->lb; z->lb = z->c;
919         z->c = z->l - m1;
920         z->ket = z->c; /* [, line 168 */
921         among_var = find_among_b(z, a_7, 12); /* substring, line 168 */
922         if (!(among_var)) { z->lb = mlimit; return 0; }
923         z->bra = z->c; /* ], line 168 */
924         z->lb = mlimit;
925     }
926     switch(among_var) {
927         case 0: return 0;
928         case 1:
929             if (!(eq_s_b(z, 1, s_17))) return 0;
930             {   int ret = slice_del(z); /* delete, line 171 */
931                 if (ret < 0) return ret;
932             }
933             break;
934     }
935     return 1;
936 }
937
938 static int r_verb_suffix(struct SN_env * z) {
939     int among_var;
940     {   int mlimit; /* setlimit, line 176 */
941         int m1 = z->l - z->c; (void)m1;
942         if (z->c < z->I[0]) return 0;
943         z->c = z->I[0]; /* tomark, line 176 */
944         mlimit = z->lb; z->lb = z->c;
945         z->c = z->l - m1;
946         z->ket = z->c; /* [, line 176 */
947         among_var = find_among_b(z, a_8, 96); /* substring, line 176 */
948         if (!(among_var)) { z->lb = mlimit; return 0; }
949         z->bra = z->c; /* ], line 176 */
950         z->lb = mlimit;
951     }
952     switch(among_var) {
953         case 0: return 0;
954         case 1:
955             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 179 */
956                 if (!(eq_s_b(z, 1, s_18))) { z->c = z->l - m_keep; goto lab0; }
957                 {   int m_test = z->l - z->c; /* test, line 179 */
958                     if (!(eq_s_b(z, 1, s_19))) { z->c = z->l - m_keep; goto lab0; }
959                     z->c = z->l - m_test;
960                 }
961             lab0:
962                 ;
963             }
964             z->bra = z->c; /* ], line 179 */
965             {   int ret = slice_del(z); /* delete, line 179 */
966                 if (ret < 0) return ret;
967             }
968             break;
969         case 2:
970             {   int ret = slice_del(z); /* delete, line 200 */
971                 if (ret < 0) return ret;
972             }
973             break;
974     }
975     return 1;
976 }
977
978 static int r_residual_suffix(struct SN_env * z) {
979     int among_var;
980     z->ket = z->c; /* [, line 205 */
981     among_var = find_among_b(z, a_9, 8); /* substring, line 205 */
982     if (!(among_var)) return 0;
983     z->bra = z->c; /* ], line 205 */
984     switch(among_var) {
985         case 0: return 0;
986         case 1:
987             {   int ret = r_RV(z);
988                 if (ret == 0) return 0; /* call RV, line 208 */
989                 if (ret < 0) return ret;
990             }
991             {   int ret = slice_del(z); /* delete, line 208 */
992                 if (ret < 0) return ret;
993             }
994             break;
995         case 2:
996             {   int ret = r_RV(z);
997                 if (ret == 0) return 0; /* call RV, line 210 */
998                 if (ret < 0) return ret;
999             }
1000             {   int ret = slice_del(z); /* delete, line 210 */
1001                 if (ret < 0) return ret;
1002             }
1003             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 210 */
1004                 z->ket = z->c; /* [, line 210 */
1005                 if (!(eq_s_b(z, 1, s_20))) { z->c = z->l - m_keep; goto lab0; }
1006                 z->bra = z->c; /* ], line 210 */
1007                 {   int m_test = z->l - z->c; /* test, line 210 */
1008                     if (!(eq_s_b(z, 1, s_21))) { z->c = z->l - m_keep; goto lab0; }
1009                     z->c = z->l - m_test;
1010                 }
1011                 {   int ret = r_RV(z);
1012                     if (ret == 0) { z->c = z->l - m_keep; goto lab0; } /* call RV, line 210 */
1013                     if (ret < 0) return ret;
1014                 }
1015                 {   int ret = slice_del(z); /* delete, line 210 */
1016                     if (ret < 0) return ret;
1017                 }
1018             lab0:
1019                 ;
1020             }
1021             break;
1022     }
1023     return 1;
1024 }
1025
1026 extern int spanish_ISO_8859_1_stem(struct SN_env * z) {
1027     {   int c1 = z->c; /* do, line 216 */
1028         {   int ret = r_mark_regions(z);
1029             if (ret == 0) goto lab0; /* call mark_regions, line 216 */
1030             if (ret < 0) return ret;
1031         }
1032     lab0:
1033         z->c = c1;
1034     }
1035     z->lb = z->c; z->c = z->l; /* backwards, line 217 */
1036
1037     {   int m2 = z->l - z->c; (void)m2; /* do, line 218 */
1038         {   int ret = r_attached_pronoun(z);
1039             if (ret == 0) goto lab1; /* call attached_pronoun, line 218 */
1040             if (ret < 0) return ret;
1041         }
1042     lab1:
1043         z->c = z->l - m2;
1044     }
1045     {   int m3 = z->l - z->c; (void)m3; /* do, line 219 */
1046         {   int m4 = z->l - z->c; (void)m4; /* or, line 219 */
1047             {   int ret = r_standard_suffix(z);
1048                 if (ret == 0) goto lab4; /* call standard_suffix, line 219 */
1049                 if (ret < 0) return ret;
1050             }
1051             goto lab3;
1052         lab4:
1053             z->c = z->l - m4;
1054             {   int ret = r_y_verb_suffix(z);
1055                 if (ret == 0) goto lab5; /* call y_verb_suffix, line 220 */
1056                 if (ret < 0) return ret;
1057             }
1058             goto lab3;
1059         lab5:
1060             z->c = z->l - m4;
1061             {   int ret = r_verb_suffix(z);
1062                 if (ret == 0) goto lab2; /* call verb_suffix, line 221 */
1063                 if (ret < 0) return ret;
1064             }
1065         }
1066     lab3:
1067     lab2:
1068         z->c = z->l - m3;
1069     }
1070     {   int m5 = z->l - z->c; (void)m5; /* do, line 223 */
1071         {   int ret = r_residual_suffix(z);
1072             if (ret == 0) goto lab6; /* call residual_suffix, line 223 */
1073             if (ret < 0) return ret;
1074         }
1075     lab6:
1076         z->c = z->l - m5;
1077     }
1078     z->c = z->lb;
1079     {   int c6 = z->c; /* do, line 225 */
1080         {   int ret = r_postlude(z);
1081             if (ret == 0) goto lab7; /* call postlude, line 225 */
1082             if (ret < 0) return ret;
1083         }
1084     lab7:
1085         z->c = c6;
1086     }
1087     return 1;
1088 }
1089
1090 extern struct SN_env * spanish_ISO_8859_1_create_env(void) { return SN_create_env(0, 3, 0); }
1091
1092 extern void spanish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
1093