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