1 | /* This file was generated automatically by the Snowball to ISO C compiler */ |
2 | /* http://snowballstem.org/ */ |
3 | |
4 | #include "header.h" |
5 | |
6 | #ifdef __cplusplus |
7 | extern "C" { |
8 | #endif |
9 | extern int portuguese_ISO_8859_1_stem(struct SN_env * z); |
10 | #ifdef __cplusplus |
11 | } |
12 | #endif |
13 | static int r_residual_form(struct SN_env * z); |
14 | static int r_residual_suffix(struct SN_env * z); |
15 | static int r_verb_suffix(struct SN_env * z); |
16 | static int r_standard_suffix(struct SN_env * z); |
17 | static int r_R2(struct SN_env * z); |
18 | static int r_R1(struct SN_env * z); |
19 | static int r_RV(struct SN_env * z); |
20 | static int r_mark_regions(struct SN_env * z); |
21 | static int r_postlude(struct SN_env * z); |
22 | static int r_prelude(struct SN_env * z); |
23 | #ifdef __cplusplus |
24 | extern "C" { |
25 | #endif |
26 | |
27 | |
28 | extern struct SN_env * portuguese_ISO_8859_1_create_env(void); |
29 | extern void portuguese_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] = { 0xE3 }; |
36 | static const symbol s_0_2[1] = { 0xF5 }; |
37 | |
38 | static const struct among a_0[3] = |
39 | { |
40 | /* 0 */ { 0, 0, -1, 3, 0}, |
41 | /* 1 */ { 1, s_0_1, 0, 1, 0}, |
42 | /* 2 */ { 1, s_0_2, 0, 2, 0} |
43 | }; |
44 | |
45 | static const symbol s_1_1[2] = { 'a', '~' }; |
46 | static const symbol s_1_2[2] = { 'o', '~' }; |
47 | |
48 | static const struct among a_1[3] = |
49 | { |
50 | /* 0 */ { 0, 0, -1, 3, 0}, |
51 | /* 1 */ { 2, s_1_1, 0, 1, 0}, |
52 | /* 2 */ { 2, s_1_2, 0, 2, 0} |
53 | }; |
54 | |
55 | static const symbol s_2_0[2] = { 'i', 'c' }; |
56 | static const symbol s_2_1[2] = { 'a', 'd' }; |
57 | static const symbol s_2_2[2] = { 'o', 's' }; |
58 | static const symbol s_2_3[2] = { 'i', 'v' }; |
59 | |
60 | static const struct among a_2[4] = |
61 | { |
62 | /* 0 */ { 2, s_2_0, -1, -1, 0}, |
63 | /* 1 */ { 2, s_2_1, -1, -1, 0}, |
64 | /* 2 */ { 2, s_2_2, -1, -1, 0}, |
65 | /* 3 */ { 2, s_2_3, -1, 1, 0} |
66 | }; |
67 | |
68 | static const symbol s_3_0[4] = { 'a', 'n', 't', 'e' }; |
69 | static const symbol s_3_1[4] = { 'a', 'v', 'e', 'l' }; |
70 | static const symbol s_3_2[4] = { 0xED, 'v', 'e', 'l' }; |
71 | |
72 | static const struct among a_3[3] = |
73 | { |
74 | /* 0 */ { 4, s_3_0, -1, 1, 0}, |
75 | /* 1 */ { 4, s_3_1, -1, 1, 0}, |
76 | /* 2 */ { 4, s_3_2, -1, 1, 0} |
77 | }; |
78 | |
79 | static const symbol s_4_0[2] = { 'i', 'c' }; |
80 | static const symbol s_4_1[4] = { 'a', 'b', 'i', 'l' }; |
81 | static const symbol s_4_2[2] = { 'i', 'v' }; |
82 | |
83 | static const struct among a_4[3] = |
84 | { |
85 | /* 0 */ { 2, s_4_0, -1, 1, 0}, |
86 | /* 1 */ { 4, s_4_1, -1, 1, 0}, |
87 | /* 2 */ { 2, s_4_2, -1, 1, 0} |
88 | }; |
89 | |
90 | static const symbol s_5_0[3] = { 'i', 'c', 'a' }; |
91 | static const symbol s_5_1[5] = { 0xE2, 'n', 'c', 'i', 'a' }; |
92 | static const symbol s_5_2[5] = { 0xEA, 'n', 'c', 'i', 'a' }; |
93 | static const symbol s_5_3[5] = { 'l', 'o', 'g', 'i', 'a' }; |
94 | static const symbol s_5_4[3] = { 'i', 'r', 'a' }; |
95 | static const symbol s_5_5[5] = { 'a', 'd', 'o', 'r', 'a' }; |
96 | static const symbol s_5_6[3] = { 'o', 's', 'a' }; |
97 | static const symbol s_5_7[4] = { 'i', 's', 't', 'a' }; |
98 | static const symbol s_5_8[3] = { 'i', 'v', 'a' }; |
99 | static const symbol s_5_9[3] = { 'e', 'z', 'a' }; |
100 | static const symbol s_5_10[5] = { 'i', 'd', 'a', 'd', 'e' }; |
101 | static const symbol s_5_11[4] = { 'a', 'n', 't', 'e' }; |
102 | static const symbol s_5_12[5] = { 'm', 'e', 'n', 't', 'e' }; |
103 | static const symbol s_5_13[6] = { 'a', 'm', 'e', 'n', 't', 'e' }; |
104 | static const symbol s_5_14[4] = { 0xE1, 'v', 'e', 'l' }; |
105 | static const symbol s_5_15[4] = { 0xED, 'v', 'e', 'l' }; |
106 | static const symbol s_5_16[3] = { 'i', 'c', 'o' }; |
107 | static const symbol s_5_17[4] = { 'i', 's', 'm', 'o' }; |
108 | static const symbol s_5_18[3] = { 'o', 's', 'o' }; |
109 | static const symbol s_5_19[6] = { 'a', 'm', 'e', 'n', 't', 'o' }; |
110 | static const symbol s_5_20[6] = { 'i', 'm', 'e', 'n', 't', 'o' }; |
111 | static const symbol s_5_21[3] = { 'i', 'v', 'o' }; |
112 | static const symbol s_5_22[5] = { 'a', 0xE7, 'a', '~', 'o' }; |
113 | static const symbol s_5_23[5] = { 'u', 0xE7, 'a', '~', 'o' }; |
114 | static const symbol s_5_24[4] = { 'a', 'd', 'o', 'r' }; |
115 | static const symbol s_5_25[4] = { 'i', 'c', 'a', 's' }; |
116 | static const symbol s_5_26[6] = { 0xEA, 'n', 'c', 'i', 'a', 's' }; |
117 | static const symbol s_5_27[6] = { 'l', 'o', 'g', 'i', 'a', 's' }; |
118 | static const symbol s_5_28[4] = { 'i', 'r', 'a', 's' }; |
119 | static const symbol s_5_29[6] = { 'a', 'd', 'o', 'r', 'a', 's' }; |
120 | static const symbol s_5_30[4] = { 'o', 's', 'a', 's' }; |
121 | static const symbol s_5_31[5] = { 'i', 's', 't', 'a', 's' }; |
122 | static const symbol s_5_32[4] = { 'i', 'v', 'a', 's' }; |
123 | static const symbol s_5_33[4] = { 'e', 'z', 'a', 's' }; |
124 | static const symbol s_5_34[6] = { 'i', 'd', 'a', 'd', 'e', 's' }; |
125 | static const symbol s_5_35[6] = { 'a', 'd', 'o', 'r', 'e', 's' }; |
126 | static const symbol s_5_36[5] = { 'a', 'n', 't', 'e', 's' }; |
127 | static const symbol s_5_37[6] = { 'a', 0xE7, 'o', '~', 'e', 's' }; |
128 | static const symbol s_5_38[6] = { 'u', 0xE7, 'o', '~', 'e', 's' }; |
129 | static const symbol s_5_39[4] = { 'i', 'c', 'o', 's' }; |
130 | static const symbol s_5_40[5] = { 'i', 's', 'm', 'o', 's' }; |
131 | static const symbol s_5_41[4] = { 'o', 's', 'o', 's' }; |
132 | static const symbol s_5_42[7] = { 'a', 'm', 'e', 'n', 't', 'o', 's' }; |
133 | static const symbol s_5_43[7] = { 'i', 'm', 'e', 'n', 't', 'o', 's' }; |
134 | static const symbol s_5_44[4] = { 'i', 'v', 'o', 's' }; |
135 | |
136 | static const struct among a_5[45] = |
137 | { |
138 | /* 0 */ { 3, s_5_0, -1, 1, 0}, |
139 | /* 1 */ { 5, s_5_1, -1, 1, 0}, |
140 | /* 2 */ { 5, s_5_2, -1, 4, 0}, |
141 | /* 3 */ { 5, s_5_3, -1, 2, 0}, |
142 | /* 4 */ { 3, s_5_4, -1, 9, 0}, |
143 | /* 5 */ { 5, s_5_5, -1, 1, 0}, |
144 | /* 6 */ { 3, s_5_6, -1, 1, 0}, |
145 | /* 7 */ { 4, s_5_7, -1, 1, 0}, |
146 | /* 8 */ { 3, s_5_8, -1, 8, 0}, |
147 | /* 9 */ { 3, s_5_9, -1, 1, 0}, |
148 | /* 10 */ { 5, s_5_10, -1, 7, 0}, |
149 | /* 11 */ { 4, s_5_11, -1, 1, 0}, |
150 | /* 12 */ { 5, s_5_12, -1, 6, 0}, |
151 | /* 13 */ { 6, s_5_13, 12, 5, 0}, |
152 | /* 14 */ { 4, s_5_14, -1, 1, 0}, |
153 | /* 15 */ { 4, s_5_15, -1, 1, 0}, |
154 | /* 16 */ { 3, s_5_16, -1, 1, 0}, |
155 | /* 17 */ { 4, s_5_17, -1, 1, 0}, |
156 | /* 18 */ { 3, s_5_18, -1, 1, 0}, |
157 | /* 19 */ { 6, s_5_19, -1, 1, 0}, |
158 | /* 20 */ { 6, s_5_20, -1, 1, 0}, |
159 | /* 21 */ { 3, s_5_21, -1, 8, 0}, |
160 | /* 22 */ { 5, s_5_22, -1, 1, 0}, |
161 | /* 23 */ { 5, s_5_23, -1, 3, 0}, |
162 | /* 24 */ { 4, s_5_24, -1, 1, 0}, |
163 | /* 25 */ { 4, s_5_25, -1, 1, 0}, |
164 | /* 26 */ { 6, s_5_26, -1, 4, 0}, |
165 | /* 27 */ { 6, s_5_27, -1, 2, 0}, |
166 | /* 28 */ { 4, s_5_28, -1, 9, 0}, |
167 | /* 29 */ { 6, s_5_29, -1, 1, 0}, |
168 | /* 30 */ { 4, s_5_30, -1, 1, 0}, |
169 | /* 31 */ { 5, s_5_31, -1, 1, 0}, |
170 | /* 32 */ { 4, s_5_32, -1, 8, 0}, |
171 | /* 33 */ { 4, s_5_33, -1, 1, 0}, |
172 | /* 34 */ { 6, s_5_34, -1, 7, 0}, |
173 | /* 35 */ { 6, s_5_35, -1, 1, 0}, |
174 | /* 36 */ { 5, s_5_36, -1, 1, 0}, |
175 | /* 37 */ { 6, s_5_37, -1, 1, 0}, |
176 | /* 38 */ { 6, s_5_38, -1, 3, 0}, |
177 | /* 39 */ { 4, s_5_39, -1, 1, 0}, |
178 | /* 40 */ { 5, s_5_40, -1, 1, 0}, |
179 | /* 41 */ { 4, s_5_41, -1, 1, 0}, |
180 | /* 42 */ { 7, s_5_42, -1, 1, 0}, |
181 | /* 43 */ { 7, s_5_43, -1, 1, 0}, |
182 | /* 44 */ { 4, s_5_44, -1, 8, 0} |
183 | }; |
184 | |
185 | static const symbol s_6_0[3] = { 'a', 'd', 'a' }; |
186 | static const symbol s_6_1[3] = { 'i', 'd', 'a' }; |
187 | static const symbol s_6_2[2] = { 'i', 'a' }; |
188 | static const symbol s_6_3[4] = { 'a', 'r', 'i', 'a' }; |
189 | static const symbol s_6_4[4] = { 'e', 'r', 'i', 'a' }; |
190 | static const symbol s_6_5[4] = { 'i', 'r', 'i', 'a' }; |
191 | static const symbol s_6_6[3] = { 'a', 'r', 'a' }; |
192 | static const symbol s_6_7[3] = { 'e', 'r', 'a' }; |
193 | static const symbol s_6_8[3] = { 'i', 'r', 'a' }; |
194 | static const symbol s_6_9[3] = { 'a', 'v', 'a' }; |
195 | static const symbol s_6_10[4] = { 'a', 's', 's', 'e' }; |
196 | static const symbol s_6_11[4] = { 'e', 's', 's', 'e' }; |
197 | static const symbol s_6_12[4] = { 'i', 's', 's', 'e' }; |
198 | static const symbol s_6_13[4] = { 'a', 's', 't', 'e' }; |
199 | static const symbol s_6_14[4] = { 'e', 's', 't', 'e' }; |
200 | static const symbol s_6_15[4] = { 'i', 's', 't', 'e' }; |
201 | static const symbol s_6_16[2] = { 'e', 'i' }; |
202 | static const symbol s_6_17[4] = { 'a', 'r', 'e', 'i' }; |
203 | static const symbol s_6_18[4] = { 'e', 'r', 'e', 'i' }; |
204 | static const symbol s_6_19[4] = { 'i', 'r', 'e', 'i' }; |
205 | static const symbol s_6_20[2] = { 'a', 'm' }; |
206 | static const symbol s_6_21[3] = { 'i', 'a', 'm' }; |
207 | static const symbol s_6_22[5] = { 'a', 'r', 'i', 'a', 'm' }; |
208 | static const symbol s_6_23[5] = { 'e', 'r', 'i', 'a', 'm' }; |
209 | static const symbol s_6_24[5] = { 'i', 'r', 'i', 'a', 'm' }; |
210 | static const symbol s_6_25[4] = { 'a', 'r', 'a', 'm' }; |
211 | static const symbol s_6_26[4] = { 'e', 'r', 'a', 'm' }; |
212 | static const symbol s_6_27[4] = { 'i', 'r', 'a', 'm' }; |
213 | static const symbol s_6_28[4] = { 'a', 'v', 'a', 'm' }; |
214 | static const symbol s_6_29[2] = { 'e', 'm' }; |
215 | static const symbol s_6_30[4] = { 'a', 'r', 'e', 'm' }; |
216 | static const symbol s_6_31[4] = { 'e', 'r', 'e', 'm' }; |
217 | static const symbol s_6_32[4] = { 'i', 'r', 'e', 'm' }; |
218 | static const symbol s_6_33[5] = { 'a', 's', 's', 'e', 'm' }; |
219 | static const symbol s_6_34[5] = { 'e', 's', 's', 'e', 'm' }; |
220 | static const symbol s_6_35[5] = { 'i', 's', 's', 'e', 'm' }; |
221 | static const symbol s_6_36[3] = { 'a', 'd', 'o' }; |
222 | static const symbol s_6_37[3] = { 'i', 'd', 'o' }; |
223 | static const symbol s_6_38[4] = { 'a', 'n', 'd', 'o' }; |
224 | static const symbol s_6_39[4] = { 'e', 'n', 'd', 'o' }; |
225 | static const symbol s_6_40[4] = { 'i', 'n', 'd', 'o' }; |
226 | static const symbol s_6_41[5] = { 'a', 'r', 'a', '~', 'o' }; |
227 | static const symbol s_6_42[5] = { 'e', 'r', 'a', '~', 'o' }; |
228 | static const symbol s_6_43[5] = { 'i', 'r', 'a', '~', 'o' }; |
229 | static const symbol s_6_44[2] = { 'a', 'r' }; |
230 | static const symbol s_6_45[2] = { 'e', 'r' }; |
231 | static const symbol s_6_46[2] = { 'i', 'r' }; |
232 | static const symbol s_6_47[2] = { 'a', 's' }; |
233 | static const symbol s_6_48[4] = { 'a', 'd', 'a', 's' }; |
234 | static const symbol s_6_49[4] = { 'i', 'd', 'a', 's' }; |
235 | static const symbol s_6_50[3] = { 'i', 'a', 's' }; |
236 | static const symbol s_6_51[5] = { 'a', 'r', 'i', 'a', 's' }; |
237 | static const symbol s_6_52[5] = { 'e', 'r', 'i', 'a', 's' }; |
238 | static const symbol s_6_53[5] = { 'i', 'r', 'i', 'a', 's' }; |
239 | static const symbol s_6_54[4] = { 'a', 'r', 'a', 's' }; |
240 | static const symbol s_6_55[4] = { 'e', 'r', 'a', 's' }; |
241 | static const symbol s_6_56[4] = { 'i', 'r', 'a', 's' }; |
242 | static const symbol s_6_57[4] = { 'a', 'v', 'a', 's' }; |
243 | static const symbol s_6_58[2] = { 'e', 's' }; |
244 | static const symbol s_6_59[5] = { 'a', 'r', 'd', 'e', 's' }; |
245 | static const symbol s_6_60[5] = { 'e', 'r', 'd', 'e', 's' }; |
246 | static const symbol s_6_61[5] = { 'i', 'r', 'd', 'e', 's' }; |
247 | static const symbol s_6_62[4] = { 'a', 'r', 'e', 's' }; |
248 | static const symbol s_6_63[4] = { 'e', 'r', 'e', 's' }; |
249 | static const symbol s_6_64[4] = { 'i', 'r', 'e', 's' }; |
250 | static const symbol s_6_65[5] = { 'a', 's', 's', 'e', 's' }; |
251 | static const symbol s_6_66[5] = { 'e', 's', 's', 'e', 's' }; |
252 | static const symbol s_6_67[5] = { 'i', 's', 's', 'e', 's' }; |
253 | static const symbol s_6_68[5] = { 'a', 's', 't', 'e', 's' }; |
254 | static const symbol s_6_69[5] = { 'e', 's', 't', 'e', 's' }; |
255 | static const symbol s_6_70[5] = { 'i', 's', 't', 'e', 's' }; |
256 | static const symbol s_6_71[2] = { 'i', 's' }; |
257 | static const symbol s_6_72[3] = { 'a', 'i', 's' }; |
258 | static const symbol s_6_73[3] = { 'e', 'i', 's' }; |
259 | static const symbol s_6_74[5] = { 'a', 'r', 'e', 'i', 's' }; |
260 | static const symbol s_6_75[5] = { 'e', 'r', 'e', 'i', 's' }; |
261 | static const symbol s_6_76[5] = { 'i', 'r', 'e', 'i', 's' }; |
262 | static const symbol s_6_77[5] = { 0xE1, 'r', 'e', 'i', 's' }; |
263 | static const symbol s_6_78[5] = { 0xE9, 'r', 'e', 'i', 's' }; |
264 | static const symbol s_6_79[5] = { 0xED, 'r', 'e', 'i', 's' }; |
265 | static const symbol s_6_80[6] = { 0xE1, 's', 's', 'e', 'i', 's' }; |
266 | static const symbol s_6_81[6] = { 0xE9, 's', 's', 'e', 'i', 's' }; |
267 | static const symbol s_6_82[6] = { 0xED, 's', 's', 'e', 'i', 's' }; |
268 | static const symbol s_6_83[5] = { 0xE1, 'v', 'e', 'i', 's' }; |
269 | static const symbol s_6_84[4] = { 0xED, 'e', 'i', 's' }; |
270 | static const symbol s_6_85[6] = { 'a', 'r', 0xED, 'e', 'i', 's' }; |
271 | static const symbol s_6_86[6] = { 'e', 'r', 0xED, 'e', 'i', 's' }; |
272 | static const symbol s_6_87[6] = { 'i', 'r', 0xED, 'e', 'i', 's' }; |
273 | static const symbol s_6_88[4] = { 'a', 'd', 'o', 's' }; |
274 | static const symbol s_6_89[4] = { 'i', 'd', 'o', 's' }; |
275 | static const symbol s_6_90[4] = { 'a', 'm', 'o', 's' }; |
276 | static const symbol s_6_91[6] = { 0xE1, 'r', 'a', 'm', 'o', 's' }; |
277 | static const symbol s_6_92[6] = { 0xE9, 'r', 'a', 'm', 'o', 's' }; |
278 | static const symbol s_6_93[6] = { 0xED, 'r', 'a', 'm', 'o', 's' }; |
279 | static const symbol s_6_94[6] = { 0xE1, 'v', 'a', 'm', 'o', 's' }; |
280 | static const symbol s_6_95[5] = { 0xED, 'a', 'm', 'o', 's' }; |
281 | static const symbol s_6_96[7] = { 'a', 'r', 0xED, 'a', 'm', 'o', 's' }; |
282 | static const symbol s_6_97[7] = { 'e', 'r', 0xED, 'a', 'm', 'o', 's' }; |
283 | static const symbol s_6_98[7] = { 'i', 'r', 0xED, 'a', 'm', 'o', 's' }; |
284 | static const symbol s_6_99[4] = { 'e', 'm', 'o', 's' }; |
285 | static const symbol s_6_100[6] = { 'a', 'r', 'e', 'm', 'o', 's' }; |
286 | static const symbol s_6_101[6] = { 'e', 'r', 'e', 'm', 'o', 's' }; |
287 | static const symbol s_6_102[6] = { 'i', 'r', 'e', 'm', 'o', 's' }; |
288 | static const symbol s_6_103[7] = { 0xE1, 's', 's', 'e', 'm', 'o', 's' }; |
289 | static const symbol s_6_104[7] = { 0xEA, 's', 's', 'e', 'm', 'o', 's' }; |
290 | static const symbol s_6_105[7] = { 0xED, 's', 's', 'e', 'm', 'o', 's' }; |
291 | static const symbol s_6_106[4] = { 'i', 'm', 'o', 's' }; |
292 | static const symbol s_6_107[5] = { 'a', 'r', 'm', 'o', 's' }; |
293 | static const symbol s_6_108[5] = { 'e', 'r', 'm', 'o', 's' }; |
294 | static const symbol s_6_109[5] = { 'i', 'r', 'm', 'o', 's' }; |
295 | static const symbol s_6_110[4] = { 0xE1, 'm', 'o', 's' }; |
296 | static const symbol s_6_111[4] = { 'a', 'r', 0xE1, 's' }; |
297 | static const symbol s_6_112[4] = { 'e', 'r', 0xE1, 's' }; |
298 | static const symbol s_6_113[4] = { 'i', 'r', 0xE1, 's' }; |
299 | static const symbol s_6_114[2] = { 'e', 'u' }; |
300 | static const symbol s_6_115[2] = { 'i', 'u' }; |
301 | static const symbol s_6_116[2] = { 'o', 'u' }; |
302 | static const symbol s_6_117[3] = { 'a', 'r', 0xE1 }; |
303 | static const symbol s_6_118[3] = { 'e', 'r', 0xE1 }; |
304 | static const symbol s_6_119[3] = { 'i', 'r', 0xE1 }; |
305 | |
306 | static const struct among a_6[120] = |
307 | { |
308 | /* 0 */ { 3, s_6_0, -1, 1, 0}, |
309 | /* 1 */ { 3, s_6_1, -1, 1, 0}, |
310 | /* 2 */ { 2, s_6_2, -1, 1, 0}, |
311 | /* 3 */ { 4, s_6_3, 2, 1, 0}, |
312 | /* 4 */ { 4, s_6_4, 2, 1, 0}, |
313 | /* 5 */ { 4, s_6_5, 2, 1, 0}, |
314 | /* 6 */ { 3, s_6_6, -1, 1, 0}, |
315 | /* 7 */ { 3, s_6_7, -1, 1, 0}, |
316 | /* 8 */ { 3, s_6_8, -1, 1, 0}, |
317 | /* 9 */ { 3, s_6_9, -1, 1, 0}, |
318 | /* 10 */ { 4, s_6_10, -1, 1, 0}, |
319 | /* 11 */ { 4, s_6_11, -1, 1, 0}, |
320 | /* 12 */ { 4, s_6_12, -1, 1, 0}, |
321 | /* 13 */ { 4, s_6_13, -1, 1, 0}, |
322 | /* 14 */ { 4, s_6_14, -1, 1, 0}, |
323 | /* 15 */ { 4, s_6_15, -1, 1, 0}, |
324 | /* 16 */ { 2, s_6_16, -1, 1, 0}, |
325 | /* 17 */ { 4, s_6_17, 16, 1, 0}, |
326 | /* 18 */ { 4, s_6_18, 16, 1, 0}, |
327 | /* 19 */ { 4, s_6_19, 16, 1, 0}, |
328 | /* 20 */ { 2, s_6_20, -1, 1, 0}, |
329 | /* 21 */ { 3, s_6_21, 20, 1, 0}, |
330 | /* 22 */ { 5, s_6_22, 21, 1, 0}, |
331 | /* 23 */ { 5, s_6_23, 21, 1, 0}, |
332 | /* 24 */ { 5, s_6_24, 21, 1, 0}, |
333 | /* 25 */ { 4, s_6_25, 20, 1, 0}, |
334 | /* 26 */ { 4, s_6_26, 20, 1, 0}, |
335 | /* 27 */ { 4, s_6_27, 20, 1, 0}, |
336 | /* 28 */ { 4, s_6_28, 20, 1, 0}, |
337 | /* 29 */ { 2, s_6_29, -1, 1, 0}, |
338 | /* 30 */ { 4, s_6_30, 29, 1, 0}, |
339 | /* 31 */ { 4, s_6_31, 29, 1, 0}, |
340 | /* 32 */ { 4, s_6_32, 29, 1, 0}, |
341 | /* 33 */ { 5, s_6_33, 29, 1, 0}, |
342 | /* 34 */ { 5, s_6_34, 29, 1, 0}, |
343 | /* 35 */ { 5, s_6_35, 29, 1, 0}, |
344 | /* 36 */ { 3, s_6_36, -1, 1, 0}, |
345 | /* 37 */ { 3, s_6_37, -1, 1, 0}, |
346 | /* 38 */ { 4, s_6_38, -1, 1, 0}, |
347 | /* 39 */ { 4, s_6_39, -1, 1, 0}, |
348 | /* 40 */ { 4, s_6_40, -1, 1, 0}, |
349 | /* 41 */ { 5, s_6_41, -1, 1, 0}, |
350 | /* 42 */ { 5, s_6_42, -1, 1, 0}, |
351 | /* 43 */ { 5, s_6_43, -1, 1, 0}, |
352 | /* 44 */ { 2, s_6_44, -1, 1, 0}, |
353 | /* 45 */ { 2, s_6_45, -1, 1, 0}, |
354 | /* 46 */ { 2, s_6_46, -1, 1, 0}, |
355 | /* 47 */ { 2, s_6_47, -1, 1, 0}, |
356 | /* 48 */ { 4, s_6_48, 47, 1, 0}, |
357 | /* 49 */ { 4, s_6_49, 47, 1, 0}, |
358 | /* 50 */ { 3, s_6_50, 47, 1, 0}, |
359 | /* 51 */ { 5, s_6_51, 50, 1, 0}, |
360 | /* 52 */ { 5, s_6_52, 50, 1, 0}, |
361 | /* 53 */ { 5, s_6_53, 50, 1, 0}, |
362 | /* 54 */ { 4, s_6_54, 47, 1, 0}, |
363 | /* 55 */ { 4, s_6_55, 47, 1, 0}, |
364 | /* 56 */ { 4, s_6_56, 47, 1, 0}, |
365 | /* 57 */ { 4, s_6_57, 47, 1, 0}, |
366 | /* 58 */ { 2, s_6_58, -1, 1, 0}, |
367 | /* 59 */ { 5, s_6_59, 58, 1, 0}, |
368 | /* 60 */ { 5, s_6_60, 58, 1, 0}, |
369 | /* 61 */ { 5, s_6_61, 58, 1, 0}, |
370 | /* 62 */ { 4, s_6_62, 58, 1, 0}, |
371 | /* 63 */ { 4, s_6_63, 58, 1, 0}, |
372 | /* 64 */ { 4, s_6_64, 58, 1, 0}, |
373 | /* 65 */ { 5, s_6_65, 58, 1, 0}, |
374 | /* 66 */ { 5, s_6_66, 58, 1, 0}, |
375 | /* 67 */ { 5, s_6_67, 58, 1, 0}, |
376 | /* 68 */ { 5, s_6_68, 58, 1, 0}, |
377 | /* 69 */ { 5, s_6_69, 58, 1, 0}, |
378 | /* 70 */ { 5, s_6_70, 58, 1, 0}, |
379 | /* 71 */ { 2, s_6_71, -1, 1, 0}, |
380 | /* 72 */ { 3, s_6_72, 71, 1, 0}, |
381 | /* 73 */ { 3, s_6_73, 71, 1, 0}, |
382 | /* 74 */ { 5, s_6_74, 73, 1, 0}, |
383 | /* 75 */ { 5, s_6_75, 73, 1, 0}, |
384 | /* 76 */ { 5, s_6_76, 73, 1, 0}, |
385 | /* 77 */ { 5, s_6_77, 73, 1, 0}, |
386 | /* 78 */ { 5, s_6_78, 73, 1, 0}, |
387 | /* 79 */ { 5, s_6_79, 73, 1, 0}, |
388 | /* 80 */ { 6, s_6_80, 73, 1, 0}, |
389 | /* 81 */ { 6, s_6_81, 73, 1, 0}, |
390 | /* 82 */ { 6, s_6_82, 73, 1, 0}, |
391 | /* 83 */ { 5, s_6_83, 73, 1, 0}, |
392 | /* 84 */ { 4, s_6_84, 73, 1, 0}, |
393 | /* 85 */ { 6, s_6_85, 84, 1, 0}, |
394 | /* 86 */ { 6, s_6_86, 84, 1, 0}, |
395 | /* 87 */ { 6, s_6_87, 84, 1, 0}, |
396 | /* 88 */ { 4, s_6_88, -1, 1, 0}, |
397 | /* 89 */ { 4, s_6_89, -1, 1, 0}, |
398 | /* 90 */ { 4, s_6_90, -1, 1, 0}, |
399 | /* 91 */ { 6, s_6_91, 90, 1, 0}, |
400 | /* 92 */ { 6, s_6_92, 90, 1, 0}, |
401 | /* 93 */ { 6, s_6_93, 90, 1, 0}, |
402 | /* 94 */ { 6, s_6_94, 90, 1, 0}, |
403 | /* 95 */ { 5, s_6_95, 90, 1, 0}, |
404 | /* 96 */ { 7, s_6_96, 95, 1, 0}, |
405 | /* 97 */ { 7, s_6_97, 95, 1, 0}, |
406 | /* 98 */ { 7, s_6_98, 95, 1, 0}, |
407 | /* 99 */ { 4, s_6_99, -1, 1, 0}, |
408 | /*100 */ { 6, s_6_100, 99, 1, 0}, |
409 | /*101 */ { 6, s_6_101, 99, 1, 0}, |
410 | /*102 */ { 6, s_6_102, 99, 1, 0}, |
411 | /*103 */ { 7, s_6_103, 99, 1, 0}, |
412 | /*104 */ { 7, s_6_104, 99, 1, 0}, |
413 | /*105 */ { 7, s_6_105, 99, 1, 0}, |
414 | /*106 */ { 4, s_6_106, -1, 1, 0}, |
415 | /*107 */ { 5, s_6_107, -1, 1, 0}, |
416 | /*108 */ { 5, s_6_108, -1, 1, 0}, |
417 | /*109 */ { 5, s_6_109, -1, 1, 0}, |
418 | /*110 */ { 4, s_6_110, -1, 1, 0}, |
419 | /*111 */ { 4, s_6_111, -1, 1, 0}, |
420 | /*112 */ { 4, s_6_112, -1, 1, 0}, |
421 | /*113 */ { 4, s_6_113, -1, 1, 0}, |
422 | /*114 */ { 2, s_6_114, -1, 1, 0}, |
423 | /*115 */ { 2, s_6_115, -1, 1, 0}, |
424 | /*116 */ { 2, s_6_116, -1, 1, 0}, |
425 | /*117 */ { 3, s_6_117, -1, 1, 0}, |
426 | /*118 */ { 3, s_6_118, -1, 1, 0}, |
427 | /*119 */ { 3, s_6_119, -1, 1, 0} |
428 | }; |
429 | |
430 | static const symbol s_7_0[1] = { 'a' }; |
431 | static const symbol s_7_1[1] = { 'i' }; |
432 | static const symbol s_7_2[1] = { 'o' }; |
433 | static const symbol s_7_3[2] = { 'o', 's' }; |
434 | static const symbol s_7_4[1] = { 0xE1 }; |
435 | static const symbol s_7_5[1] = { 0xED }; |
436 | static const symbol s_7_6[1] = { 0xF3 }; |
437 | |
438 | static const struct among a_7[7] = |
439 | { |
440 | /* 0 */ { 1, s_7_0, -1, 1, 0}, |
441 | /* 1 */ { 1, s_7_1, -1, 1, 0}, |
442 | /* 2 */ { 1, s_7_2, -1, 1, 0}, |
443 | /* 3 */ { 2, s_7_3, -1, 1, 0}, |
444 | /* 4 */ { 1, s_7_4, -1, 1, 0}, |
445 | /* 5 */ { 1, s_7_5, -1, 1, 0}, |
446 | /* 6 */ { 1, s_7_6, -1, 1, 0} |
447 | }; |
448 | |
449 | static const symbol s_8_0[1] = { 'e' }; |
450 | static const symbol s_8_1[1] = { 0xE7 }; |
451 | static const symbol s_8_2[1] = { 0xE9 }; |
452 | static const symbol s_8_3[1] = { 0xEA }; |
453 | |
454 | static const struct among a_8[4] = |
455 | { |
456 | /* 0 */ { 1, s_8_0, -1, 1, 0}, |
457 | /* 1 */ { 1, s_8_1, -1, 2, 0}, |
458 | /* 2 */ { 1, s_8_2, -1, 1, 0}, |
459 | /* 3 */ { 1, s_8_3, -1, 1, 0} |
460 | }; |
461 | |
462 | static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 19, 12, 2 }; |
463 | |
464 | static const symbol s_0[] = { 'a', '~' }; |
465 | static const symbol s_1[] = { 'o', '~' }; |
466 | static const symbol s_2[] = { 0xE3 }; |
467 | static const symbol s_3[] = { 0xF5 }; |
468 | static const symbol s_4[] = { 'l', 'o', 'g' }; |
469 | static const symbol s_5[] = { 'u' }; |
470 | static const symbol s_6[] = { 'e', 'n', 't', 'e' }; |
471 | static const symbol s_7[] = { 'a', 't' }; |
472 | static const symbol s_8[] = { 'a', 't' }; |
473 | static const symbol s_9[] = { 'i', 'r' }; |
474 | static const symbol s_10[] = { 'c' }; |
475 | |
476 | static int r_prelude(struct SN_env * z) { /* forwardmode */ |
477 | int among_var; |
478 | while(1) { /* repeat, line 36 */ |
479 | int c1 = z->c; |
480 | z->bra = z->c; /* [, line 37 */ |
481 | if (z->c >= z->l || (z->p[z->c + 0] != 227 && z->p[z->c + 0] != 245)) among_var = 3; else /* substring, line 37 */ |
482 | among_var = find_among(z, a_0, 3); |
483 | if (!(among_var)) goto lab0; |
484 | z->ket = z->c; /* ], line 37 */ |
485 | switch (among_var) { /* among, line 37 */ |
486 | case 1: |
487 | { int ret = slice_from_s(z, 2, s_0); /* <-, line 38 */ |
488 | if (ret < 0) return ret; |
489 | } |
490 | break; |
491 | case 2: |
492 | { int ret = slice_from_s(z, 2, s_1); /* <-, line 39 */ |
493 | if (ret < 0) return ret; |
494 | } |
495 | break; |
496 | case 3: |
497 | if (z->c >= z->l) goto lab0; |
498 | z->c++; /* next, line 40 */ |
499 | break; |
500 | } |
501 | continue; |
502 | lab0: |
503 | z->c = c1; |
504 | break; |
505 | } |
506 | return 1; |
507 | } |
508 | |
509 | static int r_mark_regions(struct SN_env * z) { /* forwardmode */ |
510 | z->I[0] = z->l; /* $pV = <integer expression>, line 46 */ |
511 | z->I[1] = z->l; /* $p1 = <integer expression>, line 47 */ |
512 | z->I[2] = z->l; /* $p2 = <integer expression>, line 48 */ |
513 | { int c1 = z->c; /* do, line 50 */ |
514 | { int c2 = z->c; /* or, line 52 */ |
515 | if (in_grouping(z, g_v, 97, 250, 0)) goto lab2; /* grouping v, line 51 */ |
516 | { int c3 = z->c; /* or, line 51 */ |
517 | if (out_grouping(z, g_v, 97, 250, 0)) goto lab4; /* non v, line 51 */ |
518 | { /* gopast */ /* grouping v, line 51 */ |
519 | int ret = out_grouping(z, g_v, 97, 250, 1); |
520 | if (ret < 0) goto lab4; |
521 | z->c += ret; |
522 | } |
523 | goto lab3; |
524 | lab4: |
525 | z->c = c3; |
526 | if (in_grouping(z, g_v, 97, 250, 0)) goto lab2; /* grouping v, line 51 */ |
527 | { /* gopast */ /* non v, line 51 */ |
528 | int ret = in_grouping(z, g_v, 97, 250, 1); |
529 | if (ret < 0) goto lab2; |
530 | z->c += ret; |
531 | } |
532 | } |
533 | lab3: |
534 | goto lab1; |
535 | lab2: |
536 | z->c = c2; |
537 | if (out_grouping(z, g_v, 97, 250, 0)) goto lab0; /* non v, line 53 */ |
538 | { int c4 = z->c; /* or, line 53 */ |
539 | if (out_grouping(z, g_v, 97, 250, 0)) goto lab6; /* non v, line 53 */ |
540 | { /* gopast */ /* grouping v, line 53 */ |
541 | int ret = out_grouping(z, g_v, 97, 250, 1); |
542 | if (ret < 0) goto lab6; |
543 | z->c += ret; |
544 | } |
545 | goto lab5; |
546 | lab6: |
547 | z->c = c4; |
548 | if (in_grouping(z, g_v, 97, 250, 0)) goto lab0; /* grouping v, line 53 */ |
549 | if (z->c >= z->l) goto lab0; |
550 | z->c++; /* next, line 53 */ |
551 | } |
552 | lab5: |
553 | ; |
554 | } |
555 | lab1: |
556 | z->I[0] = z->c; /* setmark pV, line 54 */ |
557 | lab0: |
558 | z->c = c1; |
559 | } |
560 | { int c5 = z->c; /* do, line 56 */ |
561 | { /* gopast */ /* grouping v, line 57 */ |
562 | int ret = out_grouping(z, g_v, 97, 250, 1); |
563 | if (ret < 0) goto lab7; |
564 | z->c += ret; |
565 | } |
566 | { /* gopast */ /* non v, line 57 */ |
567 | int ret = in_grouping(z, g_v, 97, 250, 1); |
568 | if (ret < 0) goto lab7; |
569 | z->c += ret; |
570 | } |
571 | z->I[1] = z->c; /* setmark p1, line 57 */ |
572 | { /* gopast */ /* grouping v, line 58 */ |
573 | int ret = out_grouping(z, g_v, 97, 250, 1); |
574 | if (ret < 0) goto lab7; |
575 | z->c += ret; |
576 | } |
577 | { /* gopast */ /* non v, line 58 */ |
578 | int ret = in_grouping(z, g_v, 97, 250, 1); |
579 | if (ret < 0) goto lab7; |
580 | z->c += ret; |
581 | } |
582 | z->I[2] = z->c; /* setmark p2, line 58 */ |
583 | lab7: |
584 | z->c = c5; |
585 | } |
586 | return 1; |
587 | } |
588 | |
589 | static int r_postlude(struct SN_env * z) { /* forwardmode */ |
590 | int among_var; |
591 | while(1) { /* repeat, line 62 */ |
592 | int c1 = z->c; |
593 | z->bra = z->c; /* [, line 63 */ |
594 | if (z->c + 1 >= z->l || z->p[z->c + 1] != 126) among_var = 3; else /* substring, line 63 */ |
595 | among_var = find_among(z, a_1, 3); |
596 | if (!(among_var)) goto lab0; |
597 | z->ket = z->c; /* ], line 63 */ |
598 | switch (among_var) { /* among, line 63 */ |
599 | case 1: |
600 | { int ret = slice_from_s(z, 1, s_2); /* <-, line 64 */ |
601 | if (ret < 0) return ret; |
602 | } |
603 | break; |
604 | case 2: |
605 | { int ret = slice_from_s(z, 1, s_3); /* <-, line 65 */ |
606 | if (ret < 0) return ret; |
607 | } |
608 | break; |
609 | case 3: |
610 | if (z->c >= z->l) goto lab0; |
611 | z->c++; /* next, line 66 */ |
612 | break; |
613 | } |
614 | continue; |
615 | lab0: |
616 | z->c = c1; |
617 | break; |
618 | } |
619 | return 1; |
620 | } |
621 | |
622 | static int r_RV(struct SN_env * z) { /* backwardmode */ |
623 | if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 72 */ |
624 | return 1; |
625 | } |
626 | |
627 | static int r_R1(struct SN_env * z) { /* backwardmode */ |
628 | if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 73 */ |
629 | return 1; |
630 | } |
631 | |
632 | static int r_R2(struct SN_env * z) { /* backwardmode */ |
633 | if (!(z->I[2] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 74 */ |
634 | return 1; |
635 | } |
636 | |
637 | static int r_standard_suffix(struct SN_env * z) { /* backwardmode */ |
638 | int among_var; |
639 | z->ket = z->c; /* [, line 77 */ |
640 | if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((823330 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 77 */ |
641 | among_var = find_among_b(z, a_5, 45); |
642 | if (!(among_var)) return 0; |
643 | z->bra = z->c; /* ], line 77 */ |
644 | switch (among_var) { /* among, line 77 */ |
645 | case 1: |
646 | { int ret = r_R2(z); /* call R2, line 93 */ |
647 | if (ret <= 0) return ret; |
648 | } |
649 | { int ret = slice_del(z); /* delete, line 93 */ |
650 | if (ret < 0) return ret; |
651 | } |
652 | break; |
653 | case 2: |
654 | { int ret = r_R2(z); /* call R2, line 98 */ |
655 | if (ret <= 0) return ret; |
656 | } |
657 | { int ret = slice_from_s(z, 3, s_4); /* <-, line 98 */ |
658 | if (ret < 0) return ret; |
659 | } |
660 | break; |
661 | case 3: |
662 | { int ret = r_R2(z); /* call R2, line 102 */ |
663 | if (ret <= 0) return ret; |
664 | } |
665 | { int ret = slice_from_s(z, 1, s_5); /* <-, line 102 */ |
666 | if (ret < 0) return ret; |
667 | } |
668 | break; |
669 | case 4: |
670 | { int ret = r_R2(z); /* call R2, line 106 */ |
671 | if (ret <= 0) return ret; |
672 | } |
673 | { int ret = slice_from_s(z, 4, s_6); /* <-, line 106 */ |
674 | if (ret < 0) return ret; |
675 | } |
676 | break; |
677 | case 5: |
678 | { int ret = r_R1(z); /* call R1, line 110 */ |
679 | if (ret <= 0) return ret; |
680 | } |
681 | { int ret = slice_del(z); /* delete, line 110 */ |
682 | if (ret < 0) return ret; |
683 | } |
684 | { int m1 = z->l - z->c; (void)m1; /* try, line 111 */ |
685 | z->ket = z->c; /* [, line 112 */ |
686 | 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 - m1; goto lab0; } /* substring, line 112 */ |
687 | among_var = find_among_b(z, a_2, 4); |
688 | if (!(among_var)) { z->c = z->l - m1; goto lab0; } |
689 | z->bra = z->c; /* ], line 112 */ |
690 | { int ret = r_R2(z); /* call R2, line 112 */ |
691 | if (ret == 0) { z->c = z->l - m1; goto lab0; } |
692 | if (ret < 0) return ret; |
693 | } |
694 | { int ret = slice_del(z); /* delete, line 112 */ |
695 | if (ret < 0) return ret; |
696 | } |
697 | switch (among_var) { /* among, line 112 */ |
698 | case 1: |
699 | z->ket = z->c; /* [, line 113 */ |
700 | if (!(eq_s_b(z, 2, s_7))) { z->c = z->l - m1; goto lab0; } /* literal, line 113 */ |
701 | z->bra = z->c; /* ], line 113 */ |
702 | { int ret = r_R2(z); /* call R2, line 113 */ |
703 | if (ret == 0) { z->c = z->l - m1; goto lab0; } |
704 | if (ret < 0) return ret; |
705 | } |
706 | { int ret = slice_del(z); /* delete, line 113 */ |
707 | if (ret < 0) return ret; |
708 | } |
709 | break; |
710 | } |
711 | lab0: |
712 | ; |
713 | } |
714 | break; |
715 | case 6: |
716 | { int ret = r_R2(z); /* call R2, line 122 */ |
717 | if (ret <= 0) return ret; |
718 | } |
719 | { int ret = slice_del(z); /* delete, line 122 */ |
720 | if (ret < 0) return ret; |
721 | } |
722 | { int m2 = z->l - z->c; (void)m2; /* try, line 123 */ |
723 | z->ket = z->c; /* [, line 124 */ |
724 | if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 101 && z->p[z->c - 1] != 108)) { z->c = z->l - m2; goto lab1; } /* substring, line 124 */ |
725 | if (!(find_among_b(z, a_3, 3))) { z->c = z->l - m2; goto lab1; } |
726 | z->bra = z->c; /* ], line 124 */ |
727 | { int ret = r_R2(z); /* call R2, line 127 */ |
728 | if (ret == 0) { z->c = z->l - m2; goto lab1; } |
729 | if (ret < 0) return ret; |
730 | } |
731 | { int ret = slice_del(z); /* delete, line 127 */ |
732 | if (ret < 0) return ret; |
733 | } |
734 | lab1: |
735 | ; |
736 | } |
737 | break; |
738 | case 7: |
739 | { int ret = r_R2(z); /* call R2, line 134 */ |
740 | if (ret <= 0) return ret; |
741 | } |
742 | { int ret = slice_del(z); /* delete, line 134 */ |
743 | if (ret < 0) return ret; |
744 | } |
745 | { int m3 = z->l - z->c; (void)m3; /* try, line 135 */ |
746 | z->ket = z->c; /* [, line 136 */ |
747 | 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 - m3; goto lab2; } /* substring, line 136 */ |
748 | if (!(find_among_b(z, a_4, 3))) { z->c = z->l - m3; goto lab2; } |
749 | z->bra = z->c; /* ], line 136 */ |
750 | { int ret = r_R2(z); /* call R2, line 139 */ |
751 | if (ret == 0) { z->c = z->l - m3; goto lab2; } |
752 | if (ret < 0) return ret; |
753 | } |
754 | { int ret = slice_del(z); /* delete, line 139 */ |
755 | if (ret < 0) return ret; |
756 | } |
757 | lab2: |
758 | ; |
759 | } |
760 | break; |
761 | case 8: |
762 | { int ret = r_R2(z); /* call R2, line 146 */ |
763 | if (ret <= 0) return ret; |
764 | } |
765 | { int ret = slice_del(z); /* delete, line 146 */ |
766 | if (ret < 0) return ret; |
767 | } |
768 | { int m4 = z->l - z->c; (void)m4; /* try, line 147 */ |
769 | z->ket = z->c; /* [, line 148 */ |
770 | if (!(eq_s_b(z, 2, s_8))) { z->c = z->l - m4; goto lab3; } /* literal, line 148 */ |
771 | z->bra = z->c; /* ], line 148 */ |
772 | { int ret = r_R2(z); /* call R2, line 148 */ |
773 | if (ret == 0) { z->c = z->l - m4; goto lab3; } |
774 | if (ret < 0) return ret; |
775 | } |
776 | { int ret = slice_del(z); /* delete, line 148 */ |
777 | if (ret < 0) return ret; |
778 | } |
779 | lab3: |
780 | ; |
781 | } |
782 | break; |
783 | case 9: |
784 | { int ret = r_RV(z); /* call RV, line 153 */ |
785 | if (ret <= 0) return ret; |
786 | } |
787 | if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0; /* literal, line 153 */ |
788 | z->c--; |
789 | { int ret = slice_from_s(z, 2, s_9); /* <-, line 154 */ |
790 | if (ret < 0) return ret; |
791 | } |
792 | break; |
793 | } |
794 | return 1; |
795 | } |
796 | |
797 | static int r_verb_suffix(struct SN_env * z) { /* backwardmode */ |
798 | |
799 | { int mlimit1; /* setlimit, line 159 */ |
800 | if (z->c < z->I[0]) return 0; |
801 | mlimit1 = z->lb; z->lb = z->I[0]; |
802 | z->ket = z->c; /* [, line 160 */ |
803 | if (!(find_among_b(z, a_6, 120))) { z->lb = mlimit1; return 0; } /* substring, line 160 */ |
804 | z->bra = z->c; /* ], line 160 */ |
805 | { int ret = slice_del(z); /* delete, line 179 */ |
806 | if (ret < 0) return ret; |
807 | } |
808 | z->lb = mlimit1; |
809 | } |
810 | return 1; |
811 | } |
812 | |
813 | static int r_residual_suffix(struct SN_env * z) { /* backwardmode */ |
814 | z->ket = z->c; /* [, line 184 */ |
815 | if (!(find_among_b(z, a_7, 7))) return 0; /* substring, line 184 */ |
816 | z->bra = z->c; /* ], line 184 */ |
817 | { int ret = r_RV(z); /* call RV, line 187 */ |
818 | if (ret <= 0) return ret; |
819 | } |
820 | { int ret = slice_del(z); /* delete, line 187 */ |
821 | if (ret < 0) return ret; |
822 | } |
823 | return 1; |
824 | } |
825 | |
826 | static int r_residual_form(struct SN_env * z) { /* backwardmode */ |
827 | int among_var; |
828 | z->ket = z->c; /* [, line 192 */ |
829 | among_var = find_among_b(z, a_8, 4); /* substring, line 192 */ |
830 | if (!(among_var)) return 0; |
831 | z->bra = z->c; /* ], line 192 */ |
832 | switch (among_var) { /* among, line 192 */ |
833 | case 1: |
834 | { int ret = r_RV(z); /* call RV, line 194 */ |
835 | if (ret <= 0) return ret; |
836 | } |
837 | { int ret = slice_del(z); /* delete, line 194 */ |
838 | if (ret < 0) return ret; |
839 | } |
840 | z->ket = z->c; /* [, line 194 */ |
841 | { int m1 = z->l - z->c; (void)m1; /* or, line 194 */ |
842 | if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab1; /* literal, line 194 */ |
843 | z->c--; |
844 | z->bra = z->c; /* ], line 194 */ |
845 | { int m_test2 = z->l - z->c; /* test, line 194 */ |
846 | if (z->c <= z->lb || z->p[z->c - 1] != 'g') goto lab1; /* literal, line 194 */ |
847 | z->c--; |
848 | z->c = z->l - m_test2; |
849 | } |
850 | goto lab0; |
851 | lab1: |
852 | z->c = z->l - m1; |
853 | if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0; /* literal, line 195 */ |
854 | z->c--; |
855 | z->bra = z->c; /* ], line 195 */ |
856 | { int m_test3 = z->l - z->c; /* test, line 195 */ |
857 | if (z->c <= z->lb || z->p[z->c - 1] != 'c') return 0; /* literal, line 195 */ |
858 | z->c--; |
859 | z->c = z->l - m_test3; |
860 | } |
861 | } |
862 | lab0: |
863 | { int ret = r_RV(z); /* call RV, line 195 */ |
864 | if (ret <= 0) return ret; |
865 | } |
866 | { int ret = slice_del(z); /* delete, line 195 */ |
867 | if (ret < 0) return ret; |
868 | } |
869 | break; |
870 | case 2: |
871 | { int ret = slice_from_s(z, 1, s_10); /* <-, line 196 */ |
872 | if (ret < 0) return ret; |
873 | } |
874 | break; |
875 | } |
876 | return 1; |
877 | } |
878 | |
879 | extern int portuguese_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */ |
880 | { int c1 = z->c; /* do, line 202 */ |
881 | { int ret = r_prelude(z); /* call prelude, line 202 */ |
882 | if (ret == 0) goto lab0; |
883 | if (ret < 0) return ret; |
884 | } |
885 | lab0: |
886 | z->c = c1; |
887 | } |
888 | /* do, line 203 */ |
889 | { int ret = r_mark_regions(z); /* call mark_regions, line 203 */ |
890 | if (ret == 0) goto lab1; |
891 | if (ret < 0) return ret; |
892 | } |
893 | lab1: |
894 | z->lb = z->c; z->c = z->l; /* backwards, line 204 */ |
895 | |
896 | { int m2 = z->l - z->c; (void)m2; /* do, line 205 */ |
897 | { int m3 = z->l - z->c; (void)m3; /* or, line 209 */ |
898 | { int m4 = z->l - z->c; (void)m4; /* and, line 207 */ |
899 | { int m5 = z->l - z->c; (void)m5; /* or, line 206 */ |
900 | { int ret = r_standard_suffix(z); /* call standard_suffix, line 206 */ |
901 | if (ret == 0) goto lab6; |
902 | if (ret < 0) return ret; |
903 | } |
904 | goto lab5; |
905 | lab6: |
906 | z->c = z->l - m5; |
907 | { int ret = r_verb_suffix(z); /* call verb_suffix, line 206 */ |
908 | if (ret == 0) goto lab4; |
909 | if (ret < 0) return ret; |
910 | } |
911 | } |
912 | lab5: |
913 | z->c = z->l - m4; |
914 | { int m6 = z->l - z->c; (void)m6; /* do, line 207 */ |
915 | z->ket = z->c; /* [, line 207 */ |
916 | if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab7; /* literal, line 207 */ |
917 | z->c--; |
918 | z->bra = z->c; /* ], line 207 */ |
919 | { int m_test7 = z->l - z->c; /* test, line 207 */ |
920 | if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab7; /* literal, line 207 */ |
921 | z->c--; |
922 | z->c = z->l - m_test7; |
923 | } |
924 | { int ret = r_RV(z); /* call RV, line 207 */ |
925 | if (ret == 0) goto lab7; |
926 | if (ret < 0) return ret; |
927 | } |
928 | { int ret = slice_del(z); /* delete, line 207 */ |
929 | if (ret < 0) return ret; |
930 | } |
931 | lab7: |
932 | z->c = z->l - m6; |
933 | } |
934 | } |
935 | goto lab3; |
936 | lab4: |
937 | z->c = z->l - m3; |
938 | { int ret = r_residual_suffix(z); /* call residual_suffix, line 209 */ |
939 | if (ret == 0) goto lab2; |
940 | if (ret < 0) return ret; |
941 | } |
942 | } |
943 | lab3: |
944 | lab2: |
945 | z->c = z->l - m2; |
946 | } |
947 | { int m8 = z->l - z->c; (void)m8; /* do, line 211 */ |
948 | { int ret = r_residual_form(z); /* call residual_form, line 211 */ |
949 | if (ret == 0) goto lab8; |
950 | if (ret < 0) return ret; |
951 | } |
952 | lab8: |
953 | z->c = z->l - m8; |
954 | } |
955 | z->c = z->lb; |
956 | { int c9 = z->c; /* do, line 213 */ |
957 | { int ret = r_postlude(z); /* call postlude, line 213 */ |
958 | if (ret == 0) goto lab9; |
959 | if (ret < 0) return ret; |
960 | } |
961 | lab9: |
962 | z->c = c9; |
963 | } |
964 | return 1; |
965 | } |
966 | |
967 | extern struct SN_env * portuguese_ISO_8859_1_create_env(void) { return SN_create_env(0, 3, 0); } |
968 | |
969 | extern void portuguese_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); } |
970 | |
971 | |