Branch data Line data Source code
1 : : /* Generated from dutch.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
2 : :
3 : : #include "stem_ISO_8859_1_dutch.h"
4 : :
5 : : #include <stddef.h>
6 : :
7 : : #include "snowball_runtime.h"
8 : :
9 : : struct SN_local {
10 : : struct SN_env z;
11 : : int i_p2;
12 : : int i_p1;
13 : : unsigned char b_GE_removed;
14 : : symbol * s_ch;
15 : : };
16 : :
17 : : typedef struct SN_local SN_local;
18 : :
19 : : #ifdef __cplusplus
20 : : extern "C" {
21 : : #endif
22 : : extern int dutch_ISO_8859_1_stem(struct SN_env * z);
23 : : #ifdef __cplusplus
24 : : }
25 : : #endif
26 : :
27 : : static int r_measure(struct SN_env * z);
28 : : static int r_Lose_infix(struct SN_env * z);
29 : : static int r_Lose_prefix(struct SN_env * z);
30 : : static int r_Step_1c(struct SN_env * z);
31 : : static int r_Step_6(struct SN_env * z);
32 : : static int r_Step_7(struct SN_env * z);
33 : : static int r_Step_4(struct SN_env * z);
34 : : static int r_Step_3(struct SN_env * z);
35 : : static int r_Step_2(struct SN_env * z);
36 : : static int r_Step_1(struct SN_env * z);
37 : : static int r_lengthen_V(struct SN_env * z);
38 : : static int r_VX(struct SN_env * z);
39 : : static int r_V(struct SN_env * z);
40 : : static int r_C(struct SN_env * z);
41 : : static int r_R2(struct SN_env * z);
42 : : static int r_R1(struct SN_env * z);
43 : :
44 : : static const symbol s_0[] = { 'i', 'j' };
45 : : static const symbol s_1[] = { 'i', 'j' };
46 : : static const symbol s_2[] = { 'i', 'j' };
47 : : static const symbol s_3[] = { 'e', 0xEB, 'e' };
48 : : static const symbol s_4[] = { 'i', 'e', 'e' };
49 : : static const symbol s_5[] = { 'i', 'e' };
50 : : static const symbol s_6[] = { 'a', 'r' };
51 : : static const symbol s_7[] = { 'e', 'r' };
52 : : static const symbol s_8[] = { 'e' };
53 : : static const symbol s_9[] = { 0xE9 };
54 : : static const symbol s_10[] = { 'a', 'u' };
55 : : static const symbol s_11[] = { 'h', 'e', 'd' };
56 : : static const symbol s_12[] = { 'h', 'e', 'i', 'd' };
57 : : static const symbol s_13[] = { 'n', 'd' };
58 : : static const symbol s_14[] = { 'n', 'd' };
59 : : static const symbol s_15[] = { '\'', 't' };
60 : : static const symbol s_16[] = { 'e', 't' };
61 : : static const symbol s_17[] = { 'r', 'n', 't' };
62 : : static const symbol s_18[] = { 'r', 'n' };
63 : : static const symbol s_19[] = { 'i', 'n', 'k' };
64 : : static const symbol s_20[] = { 'i', 'n', 'g' };
65 : : static const symbol s_21[] = { 'm', 'p' };
66 : : static const symbol s_22[] = { 'm' };
67 : : static const symbol s_23[] = { 'g' };
68 : : static const symbol s_24[] = { 'l', 'i', 'j', 'k' };
69 : : static const symbol s_25[] = { 'i', 's', 'c', 'h' };
70 : : static const symbol s_26[] = { 't' };
71 : : static const symbol s_27[] = { 's' };
72 : : static const symbol s_28[] = { 'r' };
73 : : static const symbol s_29[] = { 'l' };
74 : : static const symbol s_30[] = { 'e', 'n' };
75 : : static const symbol s_31[] = { 'i', 'e', 'f' };
76 : : static const symbol s_32[] = { 'e', 'e', 'r' };
77 : : static const symbol s_33[] = { 'r' };
78 : : static const symbol s_34[] = { 'i', 'l', 'd' };
79 : : static const symbol s_35[] = { 'e', 'r' };
80 : : static const symbol s_36[] = { 'a', 'a', 'r' };
81 : : static const symbol s_37[] = { 'f' };
82 : : static const symbol s_38[] = { 'g' };
83 : : static const symbol s_39[] = { 't' };
84 : : static const symbol s_40[] = { 'd' };
85 : : static const symbol s_41[] = { 'i', 'e' };
86 : : static const symbol s_42[] = { 'e', 'e', 'r' };
87 : : static const symbol s_43[] = { 'n' };
88 : : static const symbol s_44[] = { 'l' };
89 : : static const symbol s_45[] = { 'r' };
90 : : static const symbol s_46[] = { 't', 'e', 'e', 'r' };
91 : : static const symbol s_47[] = { 'l', 'i', 'j', 'k' };
92 : : static const symbol s_48[] = { 'i', 'n', 'n' };
93 : : static const symbol s_49[] = { 'k' };
94 : : static const symbol s_50[] = { 'f' };
95 : : static const symbol s_51[] = { 'p' };
96 : : static const symbol s_52[] = { 'b' };
97 : : static const symbol s_53[] = { 'c' };
98 : : static const symbol s_54[] = { 'd' };
99 : : static const symbol s_55[] = { 'f' };
100 : : static const symbol s_56[] = { 'g' };
101 : : static const symbol s_57[] = { 'h' };
102 : : static const symbol s_58[] = { 'j' };
103 : : static const symbol s_59[] = { 'k' };
104 : : static const symbol s_60[] = { 'l' };
105 : : static const symbol s_61[] = { 'm' };
106 : : static const symbol s_62[] = { 'n' };
107 : : static const symbol s_63[] = { 'p' };
108 : : static const symbol s_64[] = { 'q' };
109 : : static const symbol s_65[] = { 'r' };
110 : : static const symbol s_66[] = { 's' };
111 : : static const symbol s_67[] = { 't' };
112 : : static const symbol s_68[] = { 'v' };
113 : : static const symbol s_69[] = { 'w' };
114 : : static const symbol s_70[] = { 'x' };
115 : : static const symbol s_71[] = { 'z' };
116 : : static const symbol s_72[] = { 'i', 'n' };
117 : : static const symbol s_73[] = { 'n' };
118 : : static const symbol s_74[] = { 'e', 'n' };
119 : : static const symbol s_75[] = { 'g', 'e' };
120 : : static const symbol s_76[] = { 'i', 'j' };
121 : : static const symbol s_77[] = { 'i', 'j' };
122 : : static const symbol s_78[] = { 'e' };
123 : : static const symbol s_79[] = { 'i' };
124 : : static const symbol s_80[] = { 'g', 'e' };
125 : : static const symbol s_81[] = { 'i', 'j' };
126 : : static const symbol s_82[] = { 'i', 'j' };
127 : : static const symbol s_83[] = { 'e' };
128 : : static const symbol s_84[] = { 'i' };
129 : : static const symbol s_85[] = { 'i', 'j' };
130 : : static const symbol s_86[] = { 'i', 'j' };
131 : :
132 : : static const symbol s_0_0[1] = { 'a' };
133 : : static const symbol s_0_1[1] = { 'e' };
134 : : static const symbol s_0_2[1] = { 'o' };
135 : : static const symbol s_0_3[1] = { 'u' };
136 : : static const symbol s_0_4[1] = { 0xE0 };
137 : : static const symbol s_0_5[1] = { 0xE1 };
138 : : static const symbol s_0_6[1] = { 0xE2 };
139 : : static const symbol s_0_7[1] = { 0xE4 };
140 : : static const symbol s_0_8[1] = { 0xE8 };
141 : : static const symbol s_0_9[1] = { 0xE9 };
142 : : static const symbol s_0_10[1] = { 0xEA };
143 : : static const symbol s_0_11[2] = { 'e', 0xEB };
144 : : static const symbol s_0_12[2] = { 'i', 0xEB };
145 : : static const symbol s_0_13[1] = { 0xF2 };
146 : : static const symbol s_0_14[1] = { 0xF3 };
147 : : static const symbol s_0_15[1] = { 0xF4 };
148 : : static const symbol s_0_16[1] = { 0xF6 };
149 : : static const symbol s_0_17[1] = { 0xF9 };
150 : : static const symbol s_0_18[1] = { 0xFA };
151 : : static const symbol s_0_19[1] = { 0xFB };
152 : : static const symbol s_0_20[1] = { 0xFC };
153 : : static const struct among a_0[21] = {
154 : : { 1, s_0_0, 0, 1, 0},
155 : : { 1, s_0_1, 0, 2, 0},
156 : : { 1, s_0_2, 0, 1, 0},
157 : : { 1, s_0_3, 0, 1, 0},
158 : : { 1, s_0_4, 0, 1, 0},
159 : : { 1, s_0_5, 0, 1, 0},
160 : : { 1, s_0_6, 0, 1, 0},
161 : : { 1, s_0_7, 0, 1, 0},
162 : : { 1, s_0_8, 0, 2, 0},
163 : : { 1, s_0_9, 0, 2, 0},
164 : : { 1, s_0_10, 0, 2, 0},
165 : : { 2, s_0_11, 0, 3, 0},
166 : : { 2, s_0_12, 0, 4, 0},
167 : : { 1, s_0_13, 0, 1, 0},
168 : : { 1, s_0_14, 0, 1, 0},
169 : : { 1, s_0_15, 0, 1, 0},
170 : : { 1, s_0_16, 0, 1, 0},
171 : : { 1, s_0_17, 0, 1, 0},
172 : : { 1, s_0_18, 0, 1, 0},
173 : : { 1, s_0_19, 0, 1, 0},
174 : : { 1, s_0_20, 0, 1, 0}
175 : : };
176 : :
177 : : static const symbol s_1_0[3] = { 'n', 'd', 'e' };
178 : : static const symbol s_1_1[2] = { 'e', 'n' };
179 : : static const symbol s_1_2[1] = { 's' };
180 : : static const symbol s_1_3[2] = { '\'', 's' };
181 : : static const symbol s_1_4[2] = { 'e', 's' };
182 : : static const symbol s_1_5[3] = { 'i', 'e', 's' };
183 : : static const symbol s_1_6[3] = { 'a', 'u', 's' };
184 : : static const symbol s_1_7[2] = { 0xE9, 's' };
185 : : static const struct among a_1[8] = {
186 : : { 3, s_1_0, 0, 8, 0},
187 : : { 2, s_1_1, 0, 7, 0},
188 : : { 1, s_1_2, 0, 2, 0},
189 : : { 2, s_1_3, -1, 1, 0},
190 : : { 2, s_1_4, -2, 4, 0},
191 : : { 3, s_1_5, -1, 3, 0},
192 : : { 3, s_1_6, -4, 6, 0},
193 : : { 2, s_1_7, -5, 5, 0}
194 : : };
195 : :
196 : : static const symbol s_2_0[2] = { 'd', 'e' };
197 : : static const symbol s_2_1[2] = { 'g', 'e' };
198 : : static const symbol s_2_2[5] = { 'i', 's', 'c', 'h', 'e' };
199 : : static const symbol s_2_3[2] = { 'j', 'e' };
200 : : static const symbol s_2_4[5] = { 'l', 'i', 'j', 'k', 'e' };
201 : : static const symbol s_2_5[2] = { 'l', 'e' };
202 : : static const symbol s_2_6[3] = { 'e', 'n', 'e' };
203 : : static const symbol s_2_7[2] = { 'r', 'e' };
204 : : static const symbol s_2_8[2] = { 's', 'e' };
205 : : static const symbol s_2_9[2] = { 't', 'e' };
206 : : static const symbol s_2_10[4] = { 'i', 'e', 'v', 'e' };
207 : : static const struct among a_2[11] = {
208 : : { 2, s_2_0, 0, 5, 0},
209 : : { 2, s_2_1, 0, 2, 0},
210 : : { 5, s_2_2, 0, 4, 0},
211 : : { 2, s_2_3, 0, 1, 0},
212 : : { 5, s_2_4, 0, 3, 0},
213 : : { 2, s_2_5, 0, 9, 0},
214 : : { 3, s_2_6, 0, 10, 0},
215 : : { 2, s_2_7, 0, 8, 0},
216 : : { 2, s_2_8, 0, 7, 0},
217 : : { 2, s_2_9, 0, 6, 0},
218 : : { 4, s_2_10, 0, 11, 0}
219 : : };
220 : :
221 : : static const symbol s_3_0[4] = { 'h', 'e', 'i', 'd' };
222 : : static const symbol s_3_1[3] = { 'f', 'i', 'e' };
223 : : static const symbol s_3_2[3] = { 'g', 'i', 'e' };
224 : : static const symbol s_3_3[4] = { 'a', 't', 'i', 'e' };
225 : : static const symbol s_3_4[4] = { 'i', 's', 'm', 'e' };
226 : : static const symbol s_3_5[3] = { 'i', 'n', 'g' };
227 : : static const symbol s_3_6[4] = { 'a', 'r', 'i', 'j' };
228 : : static const symbol s_3_7[4] = { 'e', 'r', 'i', 'j' };
229 : : static const symbol s_3_8[3] = { 's', 'e', 'l' };
230 : : static const symbol s_3_9[4] = { 'r', 'd', 'e', 'r' };
231 : : static const symbol s_3_10[4] = { 's', 't', 'e', 'r' };
232 : : static const symbol s_3_11[5] = { 'i', 't', 'e', 'i', 't' };
233 : : static const symbol s_3_12[3] = { 'd', 's', 't' };
234 : : static const symbol s_3_13[3] = { 't', 's', 't' };
235 : : static const struct among a_3[14] = {
236 : : { 4, s_3_0, 0, 3, 0},
237 : : { 3, s_3_1, 0, 7, 0},
238 : : { 3, s_3_2, 0, 8, 0},
239 : : { 4, s_3_3, 0, 1, 0},
240 : : { 4, s_3_4, 0, 5, 0},
241 : : { 3, s_3_5, 0, 5, 0},
242 : : { 4, s_3_6, 0, 6, 0},
243 : : { 4, s_3_7, 0, 5, 0},
244 : : { 3, s_3_8, 0, 3, 0},
245 : : { 4, s_3_9, 0, 4, 0},
246 : : { 4, s_3_10, 0, 3, 0},
247 : : { 5, s_3_11, 0, 2, 0},
248 : : { 3, s_3_12, 0, 10, 0},
249 : : { 3, s_3_13, 0, 9, 0}
250 : : };
251 : :
252 : : static const symbol s_4_0[3] = { 'e', 'n', 'd' };
253 : : static const symbol s_4_1[5] = { 'a', 't', 'i', 'e', 'f' };
254 : : static const symbol s_4_2[4] = { 'e', 'r', 'i', 'g' };
255 : : static const symbol s_4_3[6] = { 'a', 'c', 'h', 't', 'i', 'g' };
256 : : static const symbol s_4_4[6] = { 'i', 'o', 'n', 'e', 'e', 'l' };
257 : : static const symbol s_4_5[4] = { 'b', 'a', 'a', 'r' };
258 : : static const symbol s_4_6[4] = { 'l', 'a', 'a', 'r' };
259 : : static const symbol s_4_7[4] = { 'n', 'a', 'a', 'r' };
260 : : static const symbol s_4_8[4] = { 'r', 'a', 'a', 'r' };
261 : : static const symbol s_4_9[6] = { 'e', 'r', 'i', 'g', 'e', 'r' };
262 : : static const symbol s_4_10[8] = { 'a', 'c', 'h', 't', 'i', 'g', 'e', 'r' };
263 : : static const symbol s_4_11[6] = { 'l', 'i', 'j', 'k', 'e', 'r' };
264 : : static const symbol s_4_12[4] = { 't', 'a', 'n', 't' };
265 : : static const symbol s_4_13[6] = { 'e', 'r', 'i', 'g', 's', 't' };
266 : : static const symbol s_4_14[8] = { 'a', 'c', 'h', 't', 'i', 'g', 's', 't' };
267 : : static const symbol s_4_15[6] = { 'l', 'i', 'j', 'k', 's', 't' };
268 : : static const struct among a_4[16] = {
269 : : { 3, s_4_0, 0, 9, 0},
270 : : { 5, s_4_1, 0, 2, 0},
271 : : { 4, s_4_2, 0, 9, 0},
272 : : { 6, s_4_3, 0, 3, 0},
273 : : { 6, s_4_4, 0, 1, 0},
274 : : { 4, s_4_5, 0, 3, 0},
275 : : { 4, s_4_6, 0, 5, 0},
276 : : { 4, s_4_7, 0, 4, 0},
277 : : { 4, s_4_8, 0, 6, 0},
278 : : { 6, s_4_9, 0, 9, 0},
279 : : { 8, s_4_10, 0, 3, 0},
280 : : { 6, s_4_11, 0, 8, 0},
281 : : { 4, s_4_12, 0, 7, 0},
282 : : { 6, s_4_13, 0, 9, 0},
283 : : { 8, s_4_14, 0, 3, 0},
284 : : { 6, s_4_15, 0, 8, 0}
285 : : };
286 : :
287 : : static const symbol s_5_0[2] = { 'i', 'g' };
288 : : static const symbol s_5_1[4] = { 'i', 'g', 'e', 'r' };
289 : : static const symbol s_5_2[4] = { 'i', 'g', 's', 't' };
290 : : static const struct among a_5[3] = {
291 : : { 2, s_5_0, 0, 1, 0},
292 : : { 4, s_5_1, 0, 1, 0},
293 : : { 4, s_5_2, 0, 1, 0}
294 : : };
295 : :
296 : : static const symbol s_6_0[2] = { 'f', 't' };
297 : : static const symbol s_6_1[2] = { 'k', 't' };
298 : : static const symbol s_6_2[2] = { 'p', 't' };
299 : : static const struct among a_6[3] = {
300 : : { 2, s_6_0, 0, 2, 0},
301 : : { 2, s_6_1, 0, 1, 0},
302 : : { 2, s_6_2, 0, 3, 0}
303 : : };
304 : :
305 : : static const symbol s_7_0[2] = { 'b', 'b' };
306 : : static const symbol s_7_1[2] = { 'c', 'c' };
307 : : static const symbol s_7_2[2] = { 'd', 'd' };
308 : : static const symbol s_7_3[2] = { 'f', 'f' };
309 : : static const symbol s_7_4[2] = { 'g', 'g' };
310 : : static const symbol s_7_5[2] = { 'h', 'h' };
311 : : static const symbol s_7_6[2] = { 'j', 'j' };
312 : : static const symbol s_7_7[2] = { 'k', 'k' };
313 : : static const symbol s_7_8[2] = { 'l', 'l' };
314 : : static const symbol s_7_9[2] = { 'm', 'm' };
315 : : static const symbol s_7_10[2] = { 'n', 'n' };
316 : : static const symbol s_7_11[2] = { 'p', 'p' };
317 : : static const symbol s_7_12[2] = { 'q', 'q' };
318 : : static const symbol s_7_13[2] = { 'r', 'r' };
319 : : static const symbol s_7_14[2] = { 's', 's' };
320 : : static const symbol s_7_15[2] = { 't', 't' };
321 : : static const symbol s_7_16[1] = { 'v' };
322 : : static const symbol s_7_17[2] = { 'v', 'v' };
323 : : static const symbol s_7_18[2] = { 'w', 'w' };
324 : : static const symbol s_7_19[2] = { 'x', 'x' };
325 : : static const symbol s_7_20[1] = { 'z' };
326 : : static const symbol s_7_21[2] = { 'z', 'z' };
327 : : static const struct among a_7[22] = {
328 : : { 2, s_7_0, 0, 1, 0},
329 : : { 2, s_7_1, 0, 2, 0},
330 : : { 2, s_7_2, 0, 3, 0},
331 : : { 2, s_7_3, 0, 4, 0},
332 : : { 2, s_7_4, 0, 5, 0},
333 : : { 2, s_7_5, 0, 6, 0},
334 : : { 2, s_7_6, 0, 7, 0},
335 : : { 2, s_7_7, 0, 8, 0},
336 : : { 2, s_7_8, 0, 9, 0},
337 : : { 2, s_7_9, 0, 10, 0},
338 : : { 2, s_7_10, 0, 11, 0},
339 : : { 2, s_7_11, 0, 12, 0},
340 : : { 2, s_7_12, 0, 13, 0},
341 : : { 2, s_7_13, 0, 14, 0},
342 : : { 2, s_7_14, 0, 15, 0},
343 : : { 2, s_7_15, 0, 16, 0},
344 : : { 1, s_7_16, 0, 4, 0},
345 : : { 2, s_7_17, -1, 17, 0},
346 : : { 2, s_7_18, 0, 18, 0},
347 : : { 2, s_7_19, 0, 19, 0},
348 : : { 1, s_7_20, 0, 15, 0},
349 : : { 2, s_7_21, -1, 20, 0}
350 : : };
351 : :
352 : : static const symbol s_8_0[1] = { 'd' };
353 : : static const symbol s_8_1[1] = { 't' };
354 : : static const struct among a_8[2] = {
355 : : { 1, s_8_0, 0, 1, 0},
356 : : { 1, s_8_1, 0, 2, 0}
357 : : };
358 : :
359 : : static const symbol s_9_1[3] = { 'e', 'f', 't' };
360 : : static const symbol s_9_2[3] = { 'v', 'a', 'a' };
361 : : static const symbol s_9_3[3] = { 'v', 'a', 'l' };
362 : : static const symbol s_9_4[4] = { 'v', 'a', 'l', 'i' };
363 : : static const symbol s_9_5[4] = { 'v', 'a', 'r', 'e' };
364 : : static const struct among a_9[6] = {
365 : : { 0, 0, 0, -1, 0},
366 : : { 3, s_9_1, -1, 1, 0},
367 : : { 3, s_9_2, -2, 1, 0},
368 : : { 3, s_9_3, -3, 1, 0},
369 : : { 4, s_9_4, -1, -1, 0},
370 : : { 4, s_9_5, -5, 1, 0}
371 : : };
372 : :
373 : : static const symbol s_10_0[1] = { 0xEB };
374 : : static const symbol s_10_1[1] = { 0xEF };
375 : : static const struct among a_10[2] = {
376 : : { 1, s_10_0, 0, 1, 0},
377 : : { 1, s_10_1, 0, 2, 0}
378 : : };
379 : :
380 : : static const symbol s_11_0[1] = { 0xEB };
381 : : static const symbol s_11_1[1] = { 0xEF };
382 : : static const struct among a_11[2] = {
383 : : { 1, s_11_0, 0, 1, 0},
384 : : { 1, s_11_1, 0, 2, 0}
385 : : };
386 : :
387 : : static const unsigned char g_E[] = { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120 };
388 : :
389 : : static const unsigned char g_AIOU[] = { 1, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 11, 120, 46, 15 };
390 : :
391 : : static const unsigned char g_AEIOU[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15 };
392 : :
393 : : static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15 };
394 : :
395 : : static const unsigned char g_v_WX[] = { 17, 65, 208, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15 };
396 : :
397 : 0 : static int r_R1(struct SN_env * z) {
398 : 0 : return ((SN_local *)z)->i_p1 <= z->c;
399 : : }
400 : :
401 : 0 : static int r_R2(struct SN_env * z) {
402 : 0 : return ((SN_local *)z)->i_p2 <= z->c;
403 : : }
404 : :
405 : 0 : static int r_V(struct SN_env * z) {
406 : : {
407 : 0 : int v_1 = z->l - z->c;
408 : 0 : do {
409 : 0 : int v_2 = z->l - z->c;
410 [ # # ]: 0 : if (in_grouping_b(z, g_v, 97, 252, 0)) goto lab0;
411 : 0 : break;
412 : : lab0:
413 : 0 : z->c = z->l - v_2;
414 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_0))) return 0;
415 [ # # # ]: 0 : } while (0);
416 : 0 : z->c = z->l - v_1;
417 [ # # # ]: 0 : }
418 : 0 : return 1;
419 : 0 : }
420 : :
421 : 0 : static int r_VX(struct SN_env * z) {
422 : : {
423 : 0 : int v_1 = z->l - z->c;
424 [ # # ]: 0 : if (z->c <= z->lb) return 0;
425 : 0 : z->c--;
426 : 0 : do {
427 : 0 : int v_2 = z->l - z->c;
428 [ # # ]: 0 : if (in_grouping_b(z, g_v, 97, 252, 0)) goto lab0;
429 : 0 : break;
430 : : lab0:
431 : 0 : z->c = z->l - v_2;
432 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_1))) return 0;
433 [ # # # ]: 0 : } while (0);
434 : 0 : z->c = z->l - v_1;
435 [ # # # ]: 0 : }
436 : 0 : return 1;
437 : 0 : }
438 : :
439 : 0 : static int r_C(struct SN_env * z) {
440 : : {
441 : 0 : int v_1 = z->l - z->c;
442 : : {
443 : 0 : int v_2 = z->l - z->c;
444 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_2))) goto lab0;
445 : 0 : return 0;
446 : : lab0:
447 : 0 : z->c = z->l - v_2;
448 [ # # ]: 0 : }
449 [ # # ]: 0 : if (out_grouping_b(z, g_v, 97, 252, 0)) return 0;
450 : 0 : z->c = z->l - v_1;
451 [ # # # ]: 0 : }
452 : 0 : return 1;
453 : 0 : }
454 : :
455 : 0 : static int r_lengthen_V(struct SN_env * z) {
456 : 0 : int among_var;
457 : : {
458 : 0 : int v_1 = z->l - z->c;
459 [ # # ]: 0 : if (out_grouping_b(z, g_v_WX, 97, 252, 0)) goto lab0;
460 : 0 : z->ket = z->c;
461 : 0 : among_var = find_among_b(z, a_0, 21, 0);
462 [ # # ]: 0 : if (!among_var) goto lab0;
463 : 0 : z->bra = z->c;
464 [ # # # # : 0 : switch (among_var) {
# ]
465 : : case 1:
466 : : {
467 : 0 : int v_2 = z->l - z->c;
468 : 0 : do {
469 : 0 : int v_3 = z->l - z->c;
470 [ # # ]: 0 : if (out_grouping_b(z, g_AEIOU, 97, 252, 0)) goto lab1;
471 : 0 : break;
472 : : lab1:
473 : 0 : z->c = z->l - v_3;
474 [ # # ]: 0 : if (z->c > z->lb) goto lab0;
475 [ # # # ]: 0 : } while (0);
476 : 0 : z->c = z->l - v_2;
477 [ # # ]: 0 : }
478 : : {
479 : 0 : int ret = slice_to(z, &((SN_local *)z)->s_ch);
480 [ # # ]: 0 : if (ret < 0) return ret;
481 [ # # ]: 0 : }
482 : : {
483 : 0 : int saved_c = z->c;
484 : 0 : int ret = insert_v(z, z->c, z->c, ((SN_local *)z)->s_ch);
485 : 0 : z->c = saved_c;
486 [ # # ]: 0 : if (ret < 0) return ret;
487 [ # # ]: 0 : }
488 : 0 : break;
489 : : case 2:
490 : : {
491 : 0 : int v_4 = z->l - z->c;
492 : 0 : do {
493 : 0 : int v_5 = z->l - z->c;
494 [ # # ]: 0 : if (out_grouping_b(z, g_AEIOU, 97, 252, 0)) goto lab2;
495 : 0 : break;
496 : : lab2:
497 : 0 : z->c = z->l - v_5;
498 [ # # ]: 0 : if (z->c > z->lb) goto lab0;
499 [ # # # ]: 0 : } while (0);
500 : : {
501 : 0 : int v_6 = z->l - z->c;
502 : 0 : do {
503 : 0 : int v_7 = z->l - z->c;
504 [ # # ]: 0 : if (in_grouping_b(z, g_AIOU, 97, 252, 0)) goto lab4;
505 : 0 : break;
506 : : lab4:
507 : 0 : z->c = z->l - v_7;
508 [ # # ]: 0 : if (in_grouping_b(z, g_E, 101, 235, 0)) goto lab3;
509 [ # # ]: 0 : if (z->c > z->lb) goto lab3;
510 [ # # # # ]: 0 : } while (0);
511 : 0 : goto lab0;
512 : : lab3:
513 : 0 : z->c = z->l - v_6;
514 [ # # ]: 0 : }
515 : : {
516 : 0 : int v_8 = z->l - z->c;
517 [ # # ]: 0 : if (z->c <= z->lb) goto lab5;
518 : 0 : z->c--;
519 [ # # ]: 0 : if (in_grouping_b(z, g_AIOU, 97, 252, 0)) goto lab5;
520 [ # # ]: 0 : if (out_grouping_b(z, g_AEIOU, 97, 252, 0)) goto lab5;
521 : 0 : goto lab0;
522 : : lab5:
523 : 0 : z->c = z->l - v_8;
524 [ # # ]: 0 : }
525 : 0 : z->c = z->l - v_4;
526 [ # # # ]: 0 : }
527 : : {
528 : 0 : int ret = slice_to(z, &((SN_local *)z)->s_ch);
529 [ # # ]: 0 : if (ret < 0) return ret;
530 [ # # ]: 0 : }
531 : : {
532 : 0 : int saved_c = z->c;
533 : 0 : int ret = insert_v(z, z->c, z->c, ((SN_local *)z)->s_ch);
534 : 0 : z->c = saved_c;
535 [ # # ]: 0 : if (ret < 0) return ret;
536 [ # # ]: 0 : }
537 : 0 : break;
538 : : case 3:
539 : : {
540 : 0 : int ret = slice_from_s(z, 3, s_3);
541 [ # # ]: 0 : if (ret < 0) return ret;
542 [ # # ]: 0 : }
543 : 0 : break;
544 : : case 4:
545 : : {
546 : 0 : int ret = slice_from_s(z, 3, s_4);
547 [ # # ]: 0 : if (ret < 0) return ret;
548 [ # # ]: 0 : }
549 : 0 : break;
550 : 0 : }
551 : : lab0:
552 : 0 : z->c = z->l - v_1;
553 [ # # ]: 0 : }
554 : 0 : return 1;
555 : 0 : }
556 : :
557 : 0 : static int r_Step_1(struct SN_env * z) {
558 : 0 : int among_var;
559 : 0 : z->ket = z->c;
560 [ # # # # : 0 : if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
# # ]
561 : 0 : among_var = find_among_b(z, a_1, 8, 0);
562 [ # # ]: 0 : if (!among_var) return 0;
563 : 0 : z->bra = z->c;
564 [ # # # # : 0 : switch (among_var) {
# # # #
# ]
565 : : case 1:
566 : : {
567 : 0 : int ret = slice_del(z);
568 [ # # ]: 0 : if (ret < 0) return ret;
569 [ # # ]: 0 : }
570 : 0 : break;
571 : : case 2:
572 : : {
573 : 0 : int ret = r_R1(z);
574 [ # # ]: 0 : if (ret <= 0) return ret;
575 [ # # ]: 0 : }
576 : : {
577 : 0 : int v_1 = z->l - z->c;
578 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 't') goto lab0;
579 : 0 : z->c--;
580 : : {
581 : 0 : int ret = r_R1(z);
582 [ # # ]: 0 : if (ret == 0) goto lab0;
583 [ # # ]: 0 : if (ret < 0) return ret;
584 [ # # # ]: 0 : }
585 : 0 : return 0;
586 : : lab0:
587 : 0 : z->c = z->l - v_1;
588 [ # # ]: 0 : }
589 : : {
590 : 0 : int ret = r_C(z);
591 [ # # ]: 0 : if (ret <= 0) return ret;
592 [ # # ]: 0 : }
593 : : {
594 : 0 : int ret = slice_del(z);
595 [ # # ]: 0 : if (ret < 0) return ret;
596 [ # # ]: 0 : }
597 : 0 : break;
598 : : case 3:
599 : : {
600 : 0 : int ret = r_R1(z);
601 [ # # ]: 0 : if (ret <= 0) return ret;
602 [ # # ]: 0 : }
603 : : {
604 : 0 : int ret = slice_from_s(z, 2, s_5);
605 [ # # ]: 0 : if (ret < 0) return ret;
606 [ # # ]: 0 : }
607 : 0 : break;
608 : : case 4:
609 : 0 : do {
610 : 0 : int v_2 = z->l - z->c;
611 : : {
612 : 0 : int v_3 = z->l - z->c;
613 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_6))) goto lab1;
614 : : {
615 : 0 : int ret = r_R1(z);
616 [ # # ]: 0 : if (ret == 0) goto lab1;
617 [ # # ]: 0 : if (ret < 0) return ret;
618 [ # # ]: 0 : }
619 : : {
620 : 0 : int ret = r_C(z);
621 [ # # ]: 0 : if (ret == 0) goto lab1;
622 [ # # ]: 0 : if (ret < 0) return ret;
623 [ # # ]: 0 : }
624 : 0 : z->c = z->l - v_3;
625 [ # # # ]: 0 : }
626 : : {
627 : 0 : int ret = slice_del(z);
628 [ # # ]: 0 : if (ret < 0) return ret;
629 [ # # ]: 0 : }
630 : : {
631 : 0 : int ret = r_lengthen_V(z);
632 [ # # ]: 0 : if (ret < 0) return ret;
633 [ # # ]: 0 : }
634 : 0 : break;
635 : : lab1:
636 : 0 : z->c = z->l - v_2;
637 : : {
638 : 0 : int v_4 = z->l - z->c;
639 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_7))) goto lab2;
640 : : {
641 : 0 : int ret = r_R1(z);
642 [ # # ]: 0 : if (ret == 0) goto lab2;
643 [ # # ]: 0 : if (ret < 0) return ret;
644 [ # # ]: 0 : }
645 : : {
646 : 0 : int ret = r_C(z);
647 [ # # ]: 0 : if (ret == 0) goto lab2;
648 [ # # ]: 0 : if (ret < 0) return ret;
649 [ # # ]: 0 : }
650 : 0 : z->c = z->l - v_4;
651 [ # # # ]: 0 : }
652 : : {
653 : 0 : int ret = slice_del(z);
654 [ # # ]: 0 : if (ret < 0) return ret;
655 [ # # ]: 0 : }
656 : 0 : break;
657 : : lab2:
658 : 0 : z->c = z->l - v_2;
659 : : {
660 : 0 : int ret = r_R1(z);
661 [ # # ]: 0 : if (ret <= 0) return ret;
662 [ # # ]: 0 : }
663 : : {
664 : 0 : int ret = r_C(z);
665 [ # # ]: 0 : if (ret <= 0) return ret;
666 [ # # ]: 0 : }
667 : : {
668 : 0 : int ret = slice_from_s(z, 1, s_8);
669 [ # # ]: 0 : if (ret < 0) return ret;
670 [ # # ]: 0 : }
671 [ # # # ]: 0 : } while (0);
672 : 0 : break;
673 : : case 5:
674 : : {
675 : 0 : int ret = r_R1(z);
676 [ # # ]: 0 : if (ret <= 0) return ret;
677 [ # # ]: 0 : }
678 : : {
679 : 0 : int ret = slice_from_s(z, 1, s_9);
680 [ # # ]: 0 : if (ret < 0) return ret;
681 [ # # ]: 0 : }
682 : 0 : break;
683 : : case 6:
684 : : {
685 : 0 : int ret = r_R1(z);
686 [ # # ]: 0 : if (ret <= 0) return ret;
687 [ # # ]: 0 : }
688 : : {
689 : 0 : int ret = r_V(z);
690 [ # # ]: 0 : if (ret <= 0) return ret;
691 [ # # ]: 0 : }
692 : : {
693 : 0 : int ret = slice_from_s(z, 2, s_10);
694 [ # # ]: 0 : if (ret < 0) return ret;
695 [ # # ]: 0 : }
696 : 0 : break;
697 : : case 7:
698 : 0 : do {
699 : 0 : int v_5 = z->l - z->c;
700 [ # # ]: 0 : if (!(eq_s_b(z, 3, s_11))) goto lab3;
701 : : {
702 : 0 : int ret = r_R1(z);
703 [ # # ]: 0 : if (ret == 0) goto lab3;
704 [ # # ]: 0 : if (ret < 0) return ret;
705 [ # # # ]: 0 : }
706 : 0 : z->bra = z->c;
707 : : {
708 : 0 : int ret = slice_from_s(z, 4, s_12);
709 [ # # ]: 0 : if (ret < 0) return ret;
710 [ # # ]: 0 : }
711 : 0 : break;
712 : : lab3:
713 : 0 : z->c = z->l - v_5;
714 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_13))) goto lab4;
715 : : {
716 : 0 : int ret = slice_del(z);
717 [ # # ]: 0 : if (ret < 0) return ret;
718 [ # # ]: 0 : }
719 : 0 : break;
720 : : lab4:
721 : 0 : z->c = z->l - v_5;
722 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'd') goto lab5;
723 : 0 : z->c--;
724 : : {
725 : 0 : int ret = r_R1(z);
726 [ # # ]: 0 : if (ret == 0) goto lab5;
727 [ # # ]: 0 : if (ret < 0) return ret;
728 [ # # # ]: 0 : }
729 : : {
730 : 0 : int ret = r_C(z);
731 [ # # ]: 0 : if (ret == 0) goto lab5;
732 [ # # ]: 0 : if (ret < 0) return ret;
733 [ # # ]: 0 : }
734 : 0 : z->bra = z->c;
735 : : {
736 : 0 : int ret = slice_del(z);
737 [ # # ]: 0 : if (ret < 0) return ret;
738 [ # # ]: 0 : }
739 : 0 : break;
740 : : lab5:
741 : 0 : z->c = z->l - v_5;
742 : 0 : do {
743 : 0 : int v_6 = z->l - z->c;
744 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab7;
745 : 0 : z->c--;
746 : 0 : break;
747 : : lab7:
748 : 0 : z->c = z->l - v_6;
749 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab6;
750 : 0 : z->c--;
751 [ # # # # ]: 0 : } while (0);
752 : : {
753 : 0 : int ret = r_V(z);
754 [ # # ]: 0 : if (ret == 0) goto lab6;
755 [ # # ]: 0 : if (ret < 0) return ret;
756 [ # # ]: 0 : }
757 : : {
758 : 0 : int ret = slice_del(z);
759 [ # # ]: 0 : if (ret < 0) return ret;
760 [ # # ]: 0 : }
761 : 0 : break;
762 : : lab6:
763 : 0 : z->c = z->l - v_5;
764 : : {
765 : 0 : int ret = r_R1(z);
766 [ # # ]: 0 : if (ret <= 0) return ret;
767 [ # # ]: 0 : }
768 : : {
769 : 0 : int ret = r_C(z);
770 [ # # ]: 0 : if (ret <= 0) return ret;
771 [ # # ]: 0 : }
772 : : {
773 : 0 : int ret = slice_del(z);
774 [ # # ]: 0 : if (ret < 0) return ret;
775 [ # # ]: 0 : }
776 : : {
777 : 0 : int ret = r_lengthen_V(z);
778 [ # # ]: 0 : if (ret <= 0) return ret;
779 [ # # ]: 0 : }
780 [ # # # ]: 0 : } while (0);
781 : 0 : break;
782 : : case 8:
783 : : {
784 : 0 : int ret = slice_from_s(z, 2, s_14);
785 [ # # ]: 0 : if (ret < 0) return ret;
786 [ # # ]: 0 : }
787 : 0 : break;
788 : : }
789 : 0 : return 1;
790 : 0 : }
791 : :
792 : 0 : static int r_Step_2(struct SN_env * z) {
793 : 0 : int among_var;
794 : 0 : z->ket = z->c;
795 [ # # # # ]: 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] != 101) return 0;
796 : 0 : among_var = find_among_b(z, a_2, 11, 0);
797 [ # # ]: 0 : if (!among_var) return 0;
798 : 0 : z->bra = z->c;
799 [ # # # # : 0 : switch (among_var) {
# # # # #
# # # ]
800 : : case 1:
801 : 0 : do {
802 : 0 : int v_1 = z->l - z->c;
803 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_15))) goto lab0;
804 : 0 : z->bra = z->c;
805 : : {
806 : 0 : int ret = slice_del(z);
807 [ # # ]: 0 : if (ret < 0) return ret;
808 [ # # ]: 0 : }
809 : 0 : break;
810 : : lab0:
811 : 0 : z->c = z->l - v_1;
812 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_16))) goto lab1;
813 : 0 : z->bra = z->c;
814 : : {
815 : 0 : int ret = r_R1(z);
816 [ # # ]: 0 : if (ret == 0) goto lab1;
817 [ # # ]: 0 : if (ret < 0) return ret;
818 [ # # # ]: 0 : }
819 : : {
820 : 0 : int ret = r_C(z);
821 [ # # ]: 0 : if (ret == 0) goto lab1;
822 [ # # ]: 0 : if (ret < 0) return ret;
823 [ # # ]: 0 : }
824 : : {
825 : 0 : int ret = slice_del(z);
826 [ # # ]: 0 : if (ret < 0) return ret;
827 [ # # ]: 0 : }
828 : 0 : break;
829 : : lab1:
830 : 0 : z->c = z->l - v_1;
831 [ # # ]: 0 : if (!(eq_s_b(z, 3, s_17))) goto lab2;
832 : 0 : z->bra = z->c;
833 : : {
834 : 0 : int ret = slice_from_s(z, 2, s_18);
835 [ # # ]: 0 : if (ret < 0) return ret;
836 [ # # ]: 0 : }
837 : 0 : break;
838 : : lab2:
839 : 0 : z->c = z->l - v_1;
840 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 't') goto lab3;
841 : 0 : z->c--;
842 : 0 : z->bra = z->c;
843 : : {
844 : 0 : int ret = r_R1(z);
845 [ # # ]: 0 : if (ret == 0) goto lab3;
846 [ # # ]: 0 : if (ret < 0) return ret;
847 [ # # # ]: 0 : }
848 : : {
849 : 0 : int ret = r_VX(z);
850 [ # # ]: 0 : if (ret == 0) goto lab3;
851 [ # # ]: 0 : if (ret < 0) return ret;
852 [ # # ]: 0 : }
853 : : {
854 : 0 : int ret = slice_del(z);
855 [ # # ]: 0 : if (ret < 0) return ret;
856 [ # # ]: 0 : }
857 : 0 : break;
858 : : lab3:
859 : 0 : z->c = z->l - v_1;
860 [ # # ]: 0 : if (!(eq_s_b(z, 3, s_19))) goto lab4;
861 : 0 : z->bra = z->c;
862 : : {
863 : 0 : int ret = slice_from_s(z, 3, s_20);
864 [ # # ]: 0 : if (ret < 0) return ret;
865 [ # # ]: 0 : }
866 : 0 : break;
867 : : lab4:
868 : 0 : z->c = z->l - v_1;
869 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_21))) goto lab5;
870 : 0 : z->bra = z->c;
871 : : {
872 : 0 : int ret = slice_from_s(z, 1, s_22);
873 [ # # ]: 0 : if (ret < 0) return ret;
874 [ # # ]: 0 : }
875 : 0 : break;
876 : : lab5:
877 : 0 : z->c = z->l - v_1;
878 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != '\'') goto lab6;
879 : 0 : z->c--;
880 : 0 : z->bra = z->c;
881 : : {
882 : 0 : int ret = r_R1(z);
883 [ # # ]: 0 : if (ret == 0) goto lab6;
884 [ # # ]: 0 : if (ret < 0) return ret;
885 [ # # # ]: 0 : }
886 : : {
887 : 0 : int ret = slice_del(z);
888 [ # # ]: 0 : if (ret < 0) return ret;
889 [ # # ]: 0 : }
890 : 0 : break;
891 : : lab6:
892 : 0 : z->c = z->l - v_1;
893 : 0 : z->bra = z->c;
894 : : {
895 : 0 : int ret = r_R1(z);
896 [ # # ]: 0 : if (ret <= 0) return ret;
897 [ # # ]: 0 : }
898 : : {
899 : 0 : int ret = r_C(z);
900 [ # # ]: 0 : if (ret <= 0) return ret;
901 [ # # ]: 0 : }
902 : : {
903 : 0 : int ret = slice_del(z);
904 [ # # ]: 0 : if (ret < 0) return ret;
905 [ # # ]: 0 : }
906 [ # # # ]: 0 : } while (0);
907 : 0 : break;
908 : : case 2:
909 : : {
910 : 0 : int ret = r_R1(z);
911 [ # # ]: 0 : if (ret <= 0) return ret;
912 [ # # ]: 0 : }
913 : : {
914 : 0 : int ret = slice_from_s(z, 1, s_23);
915 [ # # ]: 0 : if (ret < 0) return ret;
916 [ # # ]: 0 : }
917 : 0 : break;
918 : : case 3:
919 : : {
920 : 0 : int ret = r_R1(z);
921 [ # # ]: 0 : if (ret <= 0) return ret;
922 [ # # ]: 0 : }
923 : : {
924 : 0 : int ret = slice_from_s(z, 4, s_24);
925 [ # # ]: 0 : if (ret < 0) return ret;
926 [ # # ]: 0 : }
927 : 0 : break;
928 : : case 4:
929 : : {
930 : 0 : int ret = r_R1(z);
931 [ # # ]: 0 : if (ret <= 0) return ret;
932 [ # # ]: 0 : }
933 : : {
934 : 0 : int ret = slice_from_s(z, 4, s_25);
935 [ # # ]: 0 : if (ret < 0) return ret;
936 [ # # ]: 0 : }
937 : 0 : break;
938 : : case 5:
939 : : {
940 : 0 : int ret = r_R1(z);
941 [ # # ]: 0 : if (ret <= 0) return ret;
942 [ # # ]: 0 : }
943 : : {
944 : 0 : int ret = r_C(z);
945 [ # # ]: 0 : if (ret <= 0) return ret;
946 [ # # ]: 0 : }
947 : : {
948 : 0 : int ret = slice_del(z);
949 [ # # ]: 0 : if (ret < 0) return ret;
950 [ # # ]: 0 : }
951 : 0 : break;
952 : : case 6:
953 : : {
954 : 0 : int ret = r_R1(z);
955 [ # # ]: 0 : if (ret <= 0) return ret;
956 [ # # ]: 0 : }
957 : : {
958 : 0 : int ret = slice_from_s(z, 1, s_26);
959 [ # # ]: 0 : if (ret < 0) return ret;
960 [ # # ]: 0 : }
961 : 0 : break;
962 : : case 7:
963 : : {
964 : 0 : int ret = r_R1(z);
965 [ # # ]: 0 : if (ret <= 0) return ret;
966 [ # # ]: 0 : }
967 : : {
968 : 0 : int ret = slice_from_s(z, 1, s_27);
969 [ # # ]: 0 : if (ret < 0) return ret;
970 [ # # ]: 0 : }
971 : 0 : break;
972 : : case 8:
973 : : {
974 : 0 : int ret = r_R1(z);
975 [ # # ]: 0 : if (ret <= 0) return ret;
976 [ # # ]: 0 : }
977 : : {
978 : 0 : int ret = slice_from_s(z, 1, s_28);
979 [ # # ]: 0 : if (ret < 0) return ret;
980 [ # # ]: 0 : }
981 : 0 : break;
982 : : case 9:
983 : : {
984 : 0 : int ret = r_R1(z);
985 [ # # ]: 0 : if (ret <= 0) return ret;
986 [ # # ]: 0 : }
987 : : {
988 : 0 : int ret = slice_del(z);
989 [ # # ]: 0 : if (ret < 0) return ret;
990 [ # # ]: 0 : }
991 : : {
992 : 0 : int ret = insert_s(z, z->c, z->c, 1, s_29);
993 [ # # ]: 0 : if (ret < 0) return ret;
994 [ # # ]: 0 : }
995 : : {
996 : 0 : int ret = r_lengthen_V(z);
997 [ # # ]: 0 : if (ret <= 0) return ret;
998 [ # # ]: 0 : }
999 : 0 : break;
1000 : : case 10:
1001 : : {
1002 : 0 : int ret = r_R1(z);
1003 [ # # ]: 0 : if (ret <= 0) return ret;
1004 [ # # ]: 0 : }
1005 : : {
1006 : 0 : int ret = r_C(z);
1007 [ # # ]: 0 : if (ret <= 0) return ret;
1008 [ # # ]: 0 : }
1009 : : {
1010 : 0 : int ret = slice_del(z);
1011 [ # # ]: 0 : if (ret < 0) return ret;
1012 [ # # ]: 0 : }
1013 : : {
1014 : 0 : int ret = insert_s(z, z->c, z->c, 2, s_30);
1015 [ # # ]: 0 : if (ret < 0) return ret;
1016 [ # # ]: 0 : }
1017 : : {
1018 : 0 : int ret = r_lengthen_V(z);
1019 [ # # ]: 0 : if (ret <= 0) return ret;
1020 [ # # ]: 0 : }
1021 : 0 : break;
1022 : : case 11:
1023 : : {
1024 : 0 : int ret = r_R1(z);
1025 [ # # ]: 0 : if (ret <= 0) return ret;
1026 [ # # ]: 0 : }
1027 : : {
1028 : 0 : int ret = r_C(z);
1029 [ # # ]: 0 : if (ret <= 0) return ret;
1030 [ # # ]: 0 : }
1031 : : {
1032 : 0 : int ret = slice_from_s(z, 3, s_31);
1033 [ # # ]: 0 : if (ret < 0) return ret;
1034 [ # # ]: 0 : }
1035 : 0 : break;
1036 : : }
1037 : 0 : return 1;
1038 : 0 : }
1039 : :
1040 : 0 : static int r_Step_3(struct SN_env * z) {
1041 : 0 : int among_var;
1042 : 0 : z->ket = z->c;
1043 [ # # # # : 0 : if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1316016 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
# # ]
1044 : 0 : among_var = find_among_b(z, a_3, 14, 0);
1045 [ # # ]: 0 : if (!among_var) return 0;
1046 : 0 : z->bra = z->c;
1047 [ # # # # : 0 : switch (among_var) {
# # # # #
# # ]
1048 : : case 1:
1049 : : {
1050 : 0 : int ret = r_R1(z);
1051 [ # # ]: 0 : if (ret <= 0) return ret;
1052 [ # # ]: 0 : }
1053 : : {
1054 : 0 : int ret = slice_from_s(z, 3, s_32);
1055 [ # # ]: 0 : if (ret < 0) return ret;
1056 [ # # ]: 0 : }
1057 : 0 : break;
1058 : : case 2:
1059 : : {
1060 : 0 : int ret = r_R1(z);
1061 [ # # ]: 0 : if (ret <= 0) return ret;
1062 [ # # ]: 0 : }
1063 : : {
1064 : 0 : int ret = slice_del(z);
1065 [ # # ]: 0 : if (ret < 0) return ret;
1066 [ # # ]: 0 : }
1067 : : {
1068 : 0 : int ret = r_lengthen_V(z);
1069 [ # # ]: 0 : if (ret <= 0) return ret;
1070 [ # # ]: 0 : }
1071 : 0 : break;
1072 : : case 3:
1073 : : {
1074 : 0 : int ret = r_R1(z);
1075 [ # # ]: 0 : if (ret <= 0) return ret;
1076 [ # # ]: 0 : }
1077 : : {
1078 : 0 : int ret = slice_del(z);
1079 [ # # ]: 0 : if (ret < 0) return ret;
1080 [ # # ]: 0 : }
1081 : 0 : break;
1082 : : case 4:
1083 : : {
1084 : 0 : int ret = slice_from_s(z, 1, s_33);
1085 [ # # ]: 0 : if (ret < 0) return ret;
1086 [ # # ]: 0 : }
1087 : 0 : break;
1088 : : case 5:
1089 : 0 : do {
1090 : 0 : int v_1 = z->l - z->c;
1091 [ # # ]: 0 : if (!(eq_s_b(z, 3, s_34))) goto lab0;
1092 : : {
1093 : 0 : int ret = slice_from_s(z, 2, s_35);
1094 [ # # ]: 0 : if (ret < 0) return ret;
1095 [ # # ]: 0 : }
1096 : 0 : break;
1097 : : lab0:
1098 : 0 : z->c = z->l - v_1;
1099 : : {
1100 : 0 : int ret = r_R1(z);
1101 [ # # ]: 0 : if (ret <= 0) return ret;
1102 [ # # ]: 0 : }
1103 : : {
1104 : 0 : int ret = slice_del(z);
1105 [ # # ]: 0 : if (ret < 0) return ret;
1106 [ # # ]: 0 : }
1107 : : {
1108 : 0 : int ret = r_lengthen_V(z);
1109 [ # # ]: 0 : if (ret <= 0) return ret;
1110 [ # # ]: 0 : }
1111 [ # # # ]: 0 : } while (0);
1112 : 0 : break;
1113 : : case 6:
1114 : : {
1115 : 0 : int ret = r_R1(z);
1116 [ # # ]: 0 : if (ret <= 0) return ret;
1117 [ # # ]: 0 : }
1118 : : {
1119 : 0 : int ret = r_C(z);
1120 [ # # ]: 0 : if (ret <= 0) return ret;
1121 [ # # ]: 0 : }
1122 : : {
1123 : 0 : int ret = slice_from_s(z, 3, s_36);
1124 [ # # ]: 0 : if (ret < 0) return ret;
1125 [ # # ]: 0 : }
1126 : 0 : break;
1127 : : case 7:
1128 : : {
1129 : 0 : int ret = r_R2(z);
1130 [ # # ]: 0 : if (ret <= 0) return ret;
1131 [ # # ]: 0 : }
1132 : : {
1133 : 0 : int ret = slice_del(z);
1134 [ # # ]: 0 : if (ret < 0) return ret;
1135 [ # # ]: 0 : }
1136 : : {
1137 : 0 : int ret = insert_s(z, z->c, z->c, 1, s_37);
1138 [ # # ]: 0 : if (ret < 0) return ret;
1139 [ # # ]: 0 : }
1140 : : {
1141 : 0 : int ret = r_lengthen_V(z);
1142 [ # # ]: 0 : if (ret <= 0) return ret;
1143 [ # # ]: 0 : }
1144 : 0 : break;
1145 : : case 8:
1146 : : {
1147 : 0 : int ret = r_R2(z);
1148 [ # # ]: 0 : if (ret <= 0) return ret;
1149 [ # # ]: 0 : }
1150 : : {
1151 : 0 : int ret = slice_del(z);
1152 [ # # ]: 0 : if (ret < 0) return ret;
1153 [ # # ]: 0 : }
1154 : : {
1155 : 0 : int ret = insert_s(z, z->c, z->c, 1, s_38);
1156 [ # # ]: 0 : if (ret < 0) return ret;
1157 [ # # ]: 0 : }
1158 : : {
1159 : 0 : int ret = r_lengthen_V(z);
1160 [ # # ]: 0 : if (ret <= 0) return ret;
1161 [ # # ]: 0 : }
1162 : 0 : break;
1163 : : case 9:
1164 : : {
1165 : 0 : int ret = r_R1(z);
1166 [ # # ]: 0 : if (ret <= 0) return ret;
1167 [ # # ]: 0 : }
1168 : : {
1169 : 0 : int ret = r_C(z);
1170 [ # # ]: 0 : if (ret <= 0) return ret;
1171 [ # # ]: 0 : }
1172 : : {
1173 : 0 : int ret = slice_from_s(z, 1, s_39);
1174 [ # # ]: 0 : if (ret < 0) return ret;
1175 [ # # ]: 0 : }
1176 : 0 : break;
1177 : : case 10:
1178 : : {
1179 : 0 : int ret = r_R1(z);
1180 [ # # ]: 0 : if (ret <= 0) return ret;
1181 [ # # ]: 0 : }
1182 : : {
1183 : 0 : int ret = r_C(z);
1184 [ # # ]: 0 : if (ret <= 0) return ret;
1185 [ # # ]: 0 : }
1186 : : {
1187 : 0 : int ret = slice_from_s(z, 1, s_40);
1188 [ # # ]: 0 : if (ret < 0) return ret;
1189 [ # # ]: 0 : }
1190 : 0 : break;
1191 : : }
1192 : 0 : return 1;
1193 : 0 : }
1194 : :
1195 : 0 : static int r_Step_4(struct SN_env * z) {
1196 : 0 : int among_var;
1197 : 0 : do {
1198 : 0 : int v_1 = z->l - z->c;
1199 : 0 : z->ket = z->c;
1200 [ # # # # : 0 : if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1315024 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
# # ]
1201 : 0 : among_var = find_among_b(z, a_4, 16, 0);
1202 [ # # ]: 0 : if (!among_var) goto lab0;
1203 : 0 : z->bra = z->c;
1204 [ # # # # : 0 : switch (among_var) {
# # # # #
# ]
1205 : : case 1:
1206 : : {
1207 : 0 : int ret = r_R1(z);
1208 [ # # ]: 0 : if (ret == 0) goto lab0;
1209 [ # # ]: 0 : if (ret < 0) return ret;
1210 [ # # ]: 0 : }
1211 : : {
1212 : 0 : int ret = slice_from_s(z, 2, s_41);
1213 [ # # ]: 0 : if (ret < 0) return ret;
1214 [ # # ]: 0 : }
1215 : 0 : break;
1216 : : case 2:
1217 : : {
1218 : 0 : int ret = r_R1(z);
1219 [ # # ]: 0 : if (ret == 0) goto lab0;
1220 [ # # ]: 0 : if (ret < 0) return ret;
1221 [ # # ]: 0 : }
1222 : : {
1223 : 0 : int ret = slice_from_s(z, 3, s_42);
1224 [ # # ]: 0 : if (ret < 0) return ret;
1225 [ # # ]: 0 : }
1226 : 0 : break;
1227 : : case 3:
1228 : : {
1229 : 0 : int ret = r_R1(z);
1230 [ # # ]: 0 : if (ret == 0) goto lab0;
1231 [ # # ]: 0 : if (ret < 0) return ret;
1232 [ # # ]: 0 : }
1233 : : {
1234 : 0 : int ret = slice_del(z);
1235 [ # # ]: 0 : if (ret < 0) return ret;
1236 [ # # ]: 0 : }
1237 : 0 : break;
1238 : : case 4:
1239 : : {
1240 : 0 : int ret = r_R1(z);
1241 [ # # ]: 0 : if (ret == 0) goto lab0;
1242 [ # # ]: 0 : if (ret < 0) return ret;
1243 [ # # # ]: 0 : }
1244 : : {
1245 : 0 : int ret = r_V(z);
1246 [ # # ]: 0 : if (ret == 0) goto lab0;
1247 [ # # ]: 0 : if (ret < 0) return ret;
1248 [ # # ]: 0 : }
1249 : : {
1250 : 0 : int ret = slice_from_s(z, 1, s_43);
1251 [ # # ]: 0 : if (ret < 0) return ret;
1252 [ # # ]: 0 : }
1253 : 0 : break;
1254 : : case 5:
1255 : : {
1256 : 0 : int ret = r_R1(z);
1257 [ # # ]: 0 : if (ret == 0) goto lab0;
1258 [ # # ]: 0 : if (ret < 0) return ret;
1259 [ # # ]: 0 : }
1260 : : {
1261 : 0 : int ret = r_V(z);
1262 [ # # ]: 0 : if (ret == 0) goto lab0;
1263 [ # # ]: 0 : if (ret < 0) return ret;
1264 [ # # ]: 0 : }
1265 : : {
1266 : 0 : int ret = slice_from_s(z, 1, s_44);
1267 [ # # ]: 0 : if (ret < 0) return ret;
1268 [ # # ]: 0 : }
1269 : 0 : break;
1270 : : case 6:
1271 : : {
1272 : 0 : int ret = r_R1(z);
1273 [ # # ]: 0 : if (ret == 0) goto lab0;
1274 [ # # ]: 0 : if (ret < 0) return ret;
1275 [ # # ]: 0 : }
1276 : : {
1277 : 0 : int ret = r_V(z);
1278 [ # # ]: 0 : if (ret == 0) goto lab0;
1279 [ # # ]: 0 : if (ret < 0) return ret;
1280 [ # # ]: 0 : }
1281 : : {
1282 : 0 : int ret = slice_from_s(z, 1, s_45);
1283 [ # # ]: 0 : if (ret < 0) return ret;
1284 [ # # ]: 0 : }
1285 : 0 : break;
1286 : : case 7:
1287 : : {
1288 : 0 : int ret = r_R1(z);
1289 [ # # ]: 0 : if (ret == 0) goto lab0;
1290 [ # # ]: 0 : if (ret < 0) return ret;
1291 [ # # ]: 0 : }
1292 : : {
1293 : 0 : int ret = slice_from_s(z, 4, s_46);
1294 [ # # ]: 0 : if (ret < 0) return ret;
1295 [ # # ]: 0 : }
1296 : 0 : break;
1297 : : case 8:
1298 : : {
1299 : 0 : int ret = r_R1(z);
1300 [ # # ]: 0 : if (ret == 0) goto lab0;
1301 [ # # ]: 0 : if (ret < 0) return ret;
1302 [ # # ]: 0 : }
1303 : : {
1304 : 0 : int ret = slice_from_s(z, 4, s_47);
1305 [ # # ]: 0 : if (ret < 0) return ret;
1306 [ # # ]: 0 : }
1307 : 0 : break;
1308 : : case 9:
1309 : : {
1310 : 0 : int ret = r_R1(z);
1311 [ # # ]: 0 : if (ret == 0) goto lab0;
1312 [ # # ]: 0 : if (ret < 0) return ret;
1313 [ # # ]: 0 : }
1314 : : {
1315 : 0 : int ret = r_C(z);
1316 [ # # ]: 0 : if (ret == 0) goto lab0;
1317 [ # # ]: 0 : if (ret < 0) return ret;
1318 [ # # ]: 0 : }
1319 : : {
1320 : 0 : int ret = slice_del(z);
1321 [ # # ]: 0 : if (ret < 0) return ret;
1322 [ # # ]: 0 : }
1323 : : {
1324 : 0 : int ret = r_lengthen_V(z);
1325 [ # # ]: 0 : if (ret < 0) return ret;
1326 [ # # ]: 0 : }
1327 : 0 : break;
1328 : : }
1329 : 0 : break;
1330 : : lab0:
1331 : 0 : z->c = z->l - v_1;
1332 : 0 : z->ket = z->c;
1333 [ # # # # : 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1310848 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
# # ]
1334 [ # # ]: 0 : if (!find_among_b(z, a_5, 3, 0)) return 0;
1335 : 0 : z->bra = z->c;
1336 : : {
1337 : 0 : int ret = r_R1(z);
1338 [ # # ]: 0 : if (ret <= 0) return ret;
1339 [ # # ]: 0 : }
1340 : : {
1341 : 0 : int v_2 = z->l - z->c;
1342 [ # # ]: 0 : if (!(eq_s_b(z, 3, s_48))) goto lab1;
1343 [ # # ]: 0 : if (z->c > z->lb) goto lab1;
1344 : 0 : return 0;
1345 : : lab1:
1346 : 0 : z->c = z->l - v_2;
1347 [ # # ]: 0 : }
1348 : : {
1349 : 0 : int ret = r_C(z);
1350 [ # # ]: 0 : if (ret <= 0) return ret;
1351 [ # # ]: 0 : }
1352 : : {
1353 : 0 : int ret = slice_del(z);
1354 [ # # ]: 0 : if (ret < 0) return ret;
1355 [ # # ]: 0 : }
1356 : : {
1357 : 0 : int ret = r_lengthen_V(z);
1358 [ # # ]: 0 : if (ret <= 0) return ret;
1359 [ # # ]: 0 : }
1360 [ # # # ]: 0 : } while (0);
1361 : 0 : return 1;
1362 : 0 : }
1363 : :
1364 : 0 : static int r_Step_7(struct SN_env * z) {
1365 : 0 : int among_var;
1366 : 0 : z->ket = z->c;
1367 [ # # # # ]: 0 : if (z->c - 1 <= z->lb || z->p[z->c - 1] != 116) return 0;
1368 : 0 : among_var = find_among_b(z, a_6, 3, 0);
1369 [ # # ]: 0 : if (!among_var) return 0;
1370 : 0 : z->bra = z->c;
1371 [ # # # # ]: 0 : switch (among_var) {
1372 : : case 1:
1373 : : {
1374 : 0 : int ret = slice_from_s(z, 1, s_49);
1375 [ # # ]: 0 : if (ret < 0) return ret;
1376 [ # # ]: 0 : }
1377 : 0 : break;
1378 : : case 2:
1379 : : {
1380 : 0 : int ret = slice_from_s(z, 1, s_50);
1381 [ # # ]: 0 : if (ret < 0) return ret;
1382 [ # # ]: 0 : }
1383 : 0 : break;
1384 : : case 3:
1385 : : {
1386 : 0 : int ret = slice_from_s(z, 1, s_51);
1387 [ # # ]: 0 : if (ret < 0) return ret;
1388 [ # # ]: 0 : }
1389 : 0 : break;
1390 : : }
1391 : 0 : return 1;
1392 : 0 : }
1393 : :
1394 : 0 : static int r_Step_6(struct SN_env * z) {
1395 : 0 : int among_var;
1396 : 0 : z->ket = z->c;
1397 [ # # # # : 0 : if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((98532828 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
# # ]
1398 : 0 : among_var = find_among_b(z, a_7, 22, 0);
1399 [ # # ]: 0 : if (!among_var) return 0;
1400 : 0 : z->bra = z->c;
1401 [ # # # # : 0 : switch (among_var) {
# # # # #
# # # # #
# # # # #
# # ]
1402 : : case 1:
1403 : : {
1404 : 0 : int ret = slice_from_s(z, 1, s_52);
1405 [ # # ]: 0 : if (ret < 0) return ret;
1406 [ # # ]: 0 : }
1407 : 0 : break;
1408 : : case 2:
1409 : : {
1410 : 0 : int ret = slice_from_s(z, 1, s_53);
1411 [ # # ]: 0 : if (ret < 0) return ret;
1412 [ # # ]: 0 : }
1413 : 0 : break;
1414 : : case 3:
1415 : : {
1416 : 0 : int ret = slice_from_s(z, 1, s_54);
1417 [ # # ]: 0 : if (ret < 0) return ret;
1418 [ # # ]: 0 : }
1419 : 0 : break;
1420 : : case 4:
1421 : : {
1422 : 0 : int ret = slice_from_s(z, 1, s_55);
1423 [ # # ]: 0 : if (ret < 0) return ret;
1424 [ # # ]: 0 : }
1425 : 0 : break;
1426 : : case 5:
1427 : : {
1428 : 0 : int ret = slice_from_s(z, 1, s_56);
1429 [ # # ]: 0 : if (ret < 0) return ret;
1430 [ # # ]: 0 : }
1431 : 0 : break;
1432 : : case 6:
1433 : : {
1434 : 0 : int ret = slice_from_s(z, 1, s_57);
1435 [ # # ]: 0 : if (ret < 0) return ret;
1436 [ # # ]: 0 : }
1437 : 0 : break;
1438 : : case 7:
1439 : : {
1440 : 0 : int ret = slice_from_s(z, 1, s_58);
1441 [ # # ]: 0 : if (ret < 0) return ret;
1442 [ # # ]: 0 : }
1443 : 0 : break;
1444 : : case 8:
1445 : : {
1446 : 0 : int ret = slice_from_s(z, 1, s_59);
1447 [ # # ]: 0 : if (ret < 0) return ret;
1448 [ # # ]: 0 : }
1449 : 0 : break;
1450 : : case 9:
1451 : : {
1452 : 0 : int ret = slice_from_s(z, 1, s_60);
1453 [ # # ]: 0 : if (ret < 0) return ret;
1454 [ # # ]: 0 : }
1455 : 0 : break;
1456 : : case 10:
1457 : : {
1458 : 0 : int ret = slice_from_s(z, 1, s_61);
1459 [ # # ]: 0 : if (ret < 0) return ret;
1460 [ # # ]: 0 : }
1461 : 0 : break;
1462 : : case 11:
1463 : : {
1464 : 0 : int v_1 = z->l - z->c;
1465 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab0;
1466 : 0 : z->c--;
1467 [ # # ]: 0 : if (z->c > z->lb) goto lab0;
1468 : 0 : return 0;
1469 : : lab0:
1470 : 0 : z->c = z->l - v_1;
1471 [ # # ]: 0 : }
1472 : : {
1473 : 0 : int ret = slice_from_s(z, 1, s_62);
1474 [ # # ]: 0 : if (ret < 0) return ret;
1475 [ # # ]: 0 : }
1476 : 0 : break;
1477 : : case 12:
1478 : : {
1479 : 0 : int ret = slice_from_s(z, 1, s_63);
1480 [ # # ]: 0 : if (ret < 0) return ret;
1481 [ # # ]: 0 : }
1482 : 0 : break;
1483 : : case 13:
1484 : : {
1485 : 0 : int ret = slice_from_s(z, 1, s_64);
1486 [ # # ]: 0 : if (ret < 0) return ret;
1487 [ # # ]: 0 : }
1488 : 0 : break;
1489 : : case 14:
1490 : : {
1491 : 0 : int ret = slice_from_s(z, 1, s_65);
1492 [ # # ]: 0 : if (ret < 0) return ret;
1493 [ # # ]: 0 : }
1494 : 0 : break;
1495 : : case 15:
1496 : : {
1497 : 0 : int ret = slice_from_s(z, 1, s_66);
1498 [ # # ]: 0 : if (ret < 0) return ret;
1499 [ # # ]: 0 : }
1500 : 0 : break;
1501 : : case 16:
1502 : : {
1503 : 0 : int ret = slice_from_s(z, 1, s_67);
1504 [ # # ]: 0 : if (ret < 0) return ret;
1505 [ # # ]: 0 : }
1506 : 0 : break;
1507 : : case 17:
1508 : : {
1509 : 0 : int ret = slice_from_s(z, 1, s_68);
1510 [ # # ]: 0 : if (ret < 0) return ret;
1511 [ # # ]: 0 : }
1512 : 0 : break;
1513 : : case 18:
1514 : : {
1515 : 0 : int ret = slice_from_s(z, 1, s_69);
1516 [ # # ]: 0 : if (ret < 0) return ret;
1517 [ # # ]: 0 : }
1518 : 0 : break;
1519 : : case 19:
1520 : : {
1521 : 0 : int ret = slice_from_s(z, 1, s_70);
1522 [ # # ]: 0 : if (ret < 0) return ret;
1523 [ # # ]: 0 : }
1524 : 0 : break;
1525 : : case 20:
1526 : : {
1527 : 0 : int ret = slice_from_s(z, 1, s_71);
1528 [ # # ]: 0 : if (ret < 0) return ret;
1529 [ # # ]: 0 : }
1530 : 0 : break;
1531 : : }
1532 : 0 : return 1;
1533 : 0 : }
1534 : :
1535 : 0 : static int r_Step_1c(struct SN_env * z) {
1536 : 0 : int among_var;
1537 : 0 : z->ket = z->c;
1538 [ # # # # : 0 : if (z->c <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 116)) return 0;
# # ]
1539 : 0 : among_var = find_among_b(z, a_8, 2, 0);
1540 [ # # ]: 0 : if (!among_var) return 0;
1541 : 0 : z->bra = z->c;
1542 : : {
1543 : 0 : int ret = r_R1(z);
1544 [ # # ]: 0 : if (ret <= 0) return ret;
1545 [ # # ]: 0 : }
1546 : : {
1547 : 0 : int ret = r_C(z);
1548 [ # # ]: 0 : if (ret <= 0) return ret;
1549 [ # # ]: 0 : }
1550 [ # # # ]: 0 : switch (among_var) {
1551 : : case 1:
1552 : : {
1553 : 0 : int v_1 = z->l - z->c;
1554 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'n') goto lab0;
1555 : 0 : z->c--;
1556 : : {
1557 : 0 : int ret = r_R1(z);
1558 [ # # ]: 0 : if (ret == 0) goto lab0;
1559 [ # # ]: 0 : if (ret < 0) return ret;
1560 [ # # # ]: 0 : }
1561 : 0 : return 0;
1562 : : lab0:
1563 : 0 : z->c = z->l - v_1;
1564 [ # # ]: 0 : }
1565 : 0 : do {
1566 : 0 : int v_2 = z->l - z->c;
1567 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_72))) goto lab1;
1568 [ # # ]: 0 : if (z->c > z->lb) goto lab1;
1569 : : {
1570 : 0 : int ret = slice_from_s(z, 1, s_73);
1571 [ # # ]: 0 : if (ret < 0) return ret;
1572 [ # # ]: 0 : }
1573 : 0 : break;
1574 : : lab1:
1575 : 0 : z->c = z->l - v_2;
1576 : : {
1577 : 0 : int ret = slice_del(z);
1578 [ # # ]: 0 : if (ret < 0) return ret;
1579 [ # # ]: 0 : }
1580 [ # # # ]: 0 : } while (0);
1581 : 0 : break;
1582 : : case 2:
1583 : : {
1584 : 0 : int v_3 = z->l - z->c;
1585 [ # # # # ]: 0 : if (z->c <= z->lb || z->p[z->c - 1] != 'h') goto lab2;
1586 : 0 : z->c--;
1587 : : {
1588 : 0 : int ret = r_R1(z);
1589 [ # # ]: 0 : if (ret == 0) goto lab2;
1590 [ # # ]: 0 : if (ret < 0) return ret;
1591 [ # # # ]: 0 : }
1592 : 0 : return 0;
1593 : : lab2:
1594 : 0 : z->c = z->l - v_3;
1595 [ # # ]: 0 : }
1596 : : {
1597 : 0 : int v_4 = z->l - z->c;
1598 [ # # ]: 0 : if (!(eq_s_b(z, 2, s_74))) goto lab3;
1599 [ # # ]: 0 : if (z->c > z->lb) goto lab3;
1600 : 0 : return 0;
1601 : : lab3:
1602 : 0 : z->c = z->l - v_4;
1603 [ # # ]: 0 : }
1604 : : {
1605 : 0 : int ret = slice_del(z);
1606 [ # # ]: 0 : if (ret < 0) return ret;
1607 [ # # ]: 0 : }
1608 : 0 : break;
1609 : : }
1610 : 0 : return 1;
1611 : 0 : }
1612 : :
1613 : 0 : static int r_Lose_prefix(struct SN_env * z) {
1614 : 0 : int among_var;
1615 : 0 : z->bra = z->c;
1616 [ # # ]: 0 : if (!(eq_s(z, 2, s_75))) return 0;
1617 : 0 : z->ket = z->c;
1618 : : {
1619 : 0 : int v_1 = z->c;
1620 [ # # ]: 0 : if (z->c + 3 > z->l) return 0;
1621 : 0 : z->c += 3;
1622 : 0 : z->c = v_1;
1623 [ # # ]: 0 : }
1624 : : {
1625 : 0 : int v_2 = z->c;
1626 : 0 : while (1) {
1627 : 0 : int v_3 = z->c;
1628 : 0 : do {
1629 : 0 : int v_4 = z->c;
1630 [ # # ]: 0 : if (!(eq_s(z, 2, s_76))) goto lab1;
1631 : 0 : break;
1632 : : lab1:
1633 : 0 : z->c = v_4;
1634 [ # # ]: 0 : if (in_grouping(z, g_v, 97, 252, 0)) goto lab0;
1635 [ # # # # ]: 0 : } while (0);
1636 : 0 : break;
1637 : : lab0:
1638 : 0 : z->c = v_3;
1639 [ # # ]: 0 : if (z->c >= z->l) return 0;
1640 : 0 : z->c++;
1641 [ # # # ]: 0 : }
1642 : 0 : while (1) {
1643 : 0 : int v_5 = z->c;
1644 : 0 : do {
1645 : 0 : int v_6 = z->c;
1646 [ # # ]: 0 : if (!(eq_s(z, 2, s_77))) goto lab3;
1647 : 0 : break;
1648 : : lab3:
1649 : 0 : z->c = v_6;
1650 [ # # ]: 0 : if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
1651 [ # # # # ]: 0 : } while (0);
1652 : 0 : continue;
1653 : : lab2:
1654 : 0 : z->c = v_5;
1655 : 0 : break;
1656 [ # # # ]: 0 : }
1657 [ # # ]: 0 : if (z->c < z->l) goto lab4;
1658 : 0 : return 0;
1659 : : lab4:
1660 : 0 : z->c = v_2;
1661 [ # # ]: 0 : }
1662 [ # # # # : 0 : if (z->c + 2 >= z->l || z->p[z->c + 2] >> 5 != 3 || !((1314818 >> (z->p[z->c + 2] & 0x1f)) & 1)) among_var = -1; else
# # ]
1663 : 0 : among_var = find_among(z, a_9, 6, 0);
1664 [ # # ]: 0 : switch (among_var) {
1665 : : case 1:
1666 : 0 : return 0;
1667 : : break;
1668 : : }
1669 : 0 : ((SN_local *)z)->b_GE_removed = 1;
1670 : : {
1671 : 0 : int ret = slice_del(z);
1672 [ # # ]: 0 : if (ret < 0) return ret;
1673 [ # # ]: 0 : }
1674 : : {
1675 : 0 : int v_7 = z->c;
1676 : 0 : z->bra = z->c;
1677 [ # # # # : 0 : if (z->c >= z->l || (z->p[z->c + 0] != 235 && z->p[z->c + 0] != 239)) goto lab5;
# # ]
1678 : 0 : among_var = find_among(z, a_10, 2, 0);
1679 [ # # ]: 0 : if (!among_var) goto lab5;
1680 : 0 : z->ket = z->c;
1681 [ # # # ]: 0 : switch (among_var) {
1682 : : case 1:
1683 : : {
1684 : 0 : int ret = slice_from_s(z, 1, s_78);
1685 [ # # ]: 0 : if (ret < 0) return ret;
1686 [ # # ]: 0 : }
1687 : 0 : break;
1688 : : case 2:
1689 : : {
1690 : 0 : int ret = slice_from_s(z, 1, s_79);
1691 [ # # ]: 0 : if (ret < 0) return ret;
1692 [ # # ]: 0 : }
1693 : 0 : break;
1694 : 0 : }
1695 : : lab5:
1696 : 0 : z->c = v_7;
1697 [ # # ]: 0 : }
1698 : 0 : return 1;
1699 : 0 : }
1700 : :
1701 : 0 : static int r_Lose_infix(struct SN_env * z) {
1702 : 0 : int among_var;
1703 [ # # ]: 0 : if (z->c >= z->l) return 0;
1704 : 0 : z->c++;
1705 : 0 : while (1) {
1706 : 0 : z->bra = z->c;
1707 [ # # ]: 0 : if (!(eq_s(z, 2, s_80))) goto lab0;
1708 : 0 : z->ket = z->c;
1709 : 0 : break;
1710 : : lab0:
1711 [ # # ]: 0 : if (z->c >= z->l) return 0;
1712 : 0 : z->c++;
1713 : : }
1714 : : {
1715 : 0 : int v_1 = z->c;
1716 [ # # ]: 0 : if (z->c + 3 > z->l) return 0;
1717 : 0 : z->c += 3;
1718 : 0 : z->c = v_1;
1719 [ # # ]: 0 : }
1720 : : {
1721 : 0 : int v_2 = z->c;
1722 : 0 : while (1) {
1723 : 0 : int v_3 = z->c;
1724 : 0 : do {
1725 : 0 : int v_4 = z->c;
1726 [ # # ]: 0 : if (!(eq_s(z, 2, s_81))) goto lab2;
1727 : 0 : break;
1728 : : lab2:
1729 : 0 : z->c = v_4;
1730 [ # # ]: 0 : if (in_grouping(z, g_v, 97, 252, 0)) goto lab1;
1731 [ # # # # ]: 0 : } while (0);
1732 : 0 : break;
1733 : : lab1:
1734 : 0 : z->c = v_3;
1735 [ # # ]: 0 : if (z->c >= z->l) return 0;
1736 : 0 : z->c++;
1737 [ # # # ]: 0 : }
1738 : 0 : while (1) {
1739 : 0 : int v_5 = z->c;
1740 : 0 : do {
1741 : 0 : int v_6 = z->c;
1742 [ # # ]: 0 : if (!(eq_s(z, 2, s_82))) goto lab4;
1743 : 0 : break;
1744 : : lab4:
1745 : 0 : z->c = v_6;
1746 [ # # ]: 0 : if (in_grouping(z, g_v, 97, 252, 0)) goto lab3;
1747 [ # # # # ]: 0 : } while (0);
1748 : 0 : continue;
1749 : : lab3:
1750 : 0 : z->c = v_5;
1751 : 0 : break;
1752 [ # # # ]: 0 : }
1753 [ # # ]: 0 : if (z->c < z->l) goto lab5;
1754 : 0 : return 0;
1755 : : lab5:
1756 : 0 : z->c = v_2;
1757 [ # # ]: 0 : }
1758 : 0 : ((SN_local *)z)->b_GE_removed = 1;
1759 : : {
1760 : 0 : int ret = slice_del(z);
1761 [ # # ]: 0 : if (ret < 0) return ret;
1762 [ # # ]: 0 : }
1763 : : {
1764 : 0 : int v_7 = z->c;
1765 : 0 : z->bra = z->c;
1766 [ # # # # : 0 : if (z->c >= z->l || (z->p[z->c + 0] != 235 && z->p[z->c + 0] != 239)) goto lab6;
# # ]
1767 : 0 : among_var = find_among(z, a_11, 2, 0);
1768 [ # # ]: 0 : if (!among_var) goto lab6;
1769 : 0 : z->ket = z->c;
1770 [ # # # ]: 0 : switch (among_var) {
1771 : : case 1:
1772 : : {
1773 : 0 : int ret = slice_from_s(z, 1, s_83);
1774 [ # # ]: 0 : if (ret < 0) return ret;
1775 [ # # ]: 0 : }
1776 : 0 : break;
1777 : : case 2:
1778 : : {
1779 : 0 : int ret = slice_from_s(z, 1, s_84);
1780 [ # # ]: 0 : if (ret < 0) return ret;
1781 [ # # ]: 0 : }
1782 : 0 : break;
1783 : 0 : }
1784 : : lab6:
1785 : 0 : z->c = v_7;
1786 [ # # ]: 0 : }
1787 : 0 : return 1;
1788 : 0 : }
1789 : :
1790 : 0 : static int r_measure(struct SN_env * z) {
1791 : 0 : ((SN_local *)z)->i_p1 = z->l;
1792 : 0 : ((SN_local *)z)->i_p2 = z->l;
1793 : : {
1794 : 0 : int v_1 = z->c;
1795 : 0 : while (1) {
1796 [ # # ]: 0 : if (out_grouping(z, g_v, 97, 252, 0)) goto lab1;
1797 : 0 : continue;
1798 : : lab1:
1799 : 0 : break;
1800 : : }
1801 : : {
1802 : 0 : int v_2 = 1;
1803 : 0 : while (1) {
1804 : 0 : int v_3 = z->c;
1805 : 0 : do {
1806 : 0 : int v_4 = z->c;
1807 [ # # ]: 0 : if (!(eq_s(z, 2, s_85))) goto lab3;
1808 : 0 : break;
1809 : : lab3:
1810 : 0 : z->c = v_4;
1811 [ # # ]: 0 : if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
1812 [ # # # # ]: 0 : } while (0);
1813 : 0 : v_2--;
1814 : 0 : continue;
1815 : : lab2:
1816 : 0 : z->c = v_3;
1817 : 0 : break;
1818 [ # # ]: 0 : }
1819 [ # # ]: 0 : if (v_2 > 0) goto lab0;
1820 [ # # ]: 0 : }
1821 [ # # ]: 0 : if (out_grouping(z, g_v, 97, 252, 0)) goto lab0;
1822 : 0 : ((SN_local *)z)->i_p1 = z->c;
1823 : 0 : while (1) {
1824 [ # # ]: 0 : if (out_grouping(z, g_v, 97, 252, 0)) goto lab4;
1825 : 0 : continue;
1826 : : lab4:
1827 : 0 : break;
1828 : : }
1829 : : {
1830 : 0 : int v_5 = 1;
1831 : 0 : while (1) {
1832 : 0 : int v_6 = z->c;
1833 : 0 : do {
1834 : 0 : int v_7 = z->c;
1835 [ # # ]: 0 : if (!(eq_s(z, 2, s_86))) goto lab6;
1836 : 0 : break;
1837 : : lab6:
1838 : 0 : z->c = v_7;
1839 [ # # ]: 0 : if (in_grouping(z, g_v, 97, 252, 0)) goto lab5;
1840 [ # # # # ]: 0 : } while (0);
1841 : 0 : v_5--;
1842 : 0 : continue;
1843 : : lab5:
1844 : 0 : z->c = v_6;
1845 : 0 : break;
1846 [ # # ]: 0 : }
1847 [ # # ]: 0 : if (v_5 > 0) goto lab0;
1848 [ # # ]: 0 : }
1849 [ # # ]: 0 : if (out_grouping(z, g_v, 97, 252, 0)) goto lab0;
1850 : 0 : ((SN_local *)z)->i_p2 = z->c;
1851 : : lab0:
1852 : 0 : z->c = v_1;
1853 : 0 : }
1854 : 0 : return 1;
1855 : : }
1856 : :
1857 : 0 : extern int dutch_ISO_8859_1_stem(struct SN_env * z) {
1858 : 0 : int b_stemmed;
1859 : 0 : b_stemmed = 0;
1860 : : {
1861 : 0 : int ret = r_measure(z);
1862 [ # # ]: 0 : if (ret <= 0) return ret;
1863 [ # # ]: 0 : }
1864 : 0 : z->lb = z->c; z->c = z->l;
1865 : : {
1866 : 0 : int v_1 = z->l - z->c;
1867 : : {
1868 : 0 : int ret = r_Step_1(z);
1869 [ # # ]: 0 : if (ret == 0) goto lab0;
1870 [ # # ]: 0 : if (ret < 0) return ret;
1871 [ # # # ]: 0 : }
1872 : 0 : b_stemmed = 1;
1873 : : lab0:
1874 : 0 : z->c = z->l - v_1;
1875 [ # # ]: 0 : }
1876 : : {
1877 : 0 : int v_2 = z->l - z->c;
1878 : : {
1879 : 0 : int ret = r_Step_2(z);
1880 [ # # ]: 0 : if (ret == 0) goto lab1;
1881 [ # # ]: 0 : if (ret < 0) return ret;
1882 [ # # # ]: 0 : }
1883 : 0 : b_stemmed = 1;
1884 : : lab1:
1885 : 0 : z->c = z->l - v_2;
1886 [ # # ]: 0 : }
1887 : : {
1888 : 0 : int v_3 = z->l - z->c;
1889 : : {
1890 : 0 : int ret = r_Step_3(z);
1891 [ # # ]: 0 : if (ret == 0) goto lab2;
1892 [ # # ]: 0 : if (ret < 0) return ret;
1893 [ # # # ]: 0 : }
1894 : 0 : b_stemmed = 1;
1895 : : lab2:
1896 : 0 : z->c = z->l - v_3;
1897 [ # # ]: 0 : }
1898 : : {
1899 : 0 : int v_4 = z->l - z->c;
1900 : : {
1901 : 0 : int ret = r_Step_4(z);
1902 [ # # ]: 0 : if (ret == 0) goto lab3;
1903 [ # # ]: 0 : if (ret < 0) return ret;
1904 [ # # # ]: 0 : }
1905 : 0 : b_stemmed = 1;
1906 : : lab3:
1907 : 0 : z->c = z->l - v_4;
1908 [ # # ]: 0 : }
1909 : 0 : z->c = z->lb;
1910 : 0 : ((SN_local *)z)->b_GE_removed = 0;
1911 : : {
1912 : 0 : int v_5 = z->c;
1913 : : {
1914 : 0 : int v_6 = z->c;
1915 : : {
1916 : 0 : int ret = r_Lose_prefix(z);
1917 [ # # ]: 0 : if (ret == 0) goto lab4;
1918 [ # # ]: 0 : if (ret < 0) return ret;
1919 [ # # ]: 0 : }
1920 : 0 : z->c = v_6;
1921 : : {
1922 : 0 : int ret = r_measure(z);
1923 [ # # ]: 0 : if (ret < 0) return ret;
1924 [ # # ]: 0 : }
1925 [ # # # ]: 0 : }
1926 : : lab4:
1927 : 0 : z->c = v_5;
1928 [ # # ]: 0 : }
1929 : 0 : z->lb = z->c; z->c = z->l;
1930 : : {
1931 : 0 : int v_7 = z->l - z->c;
1932 [ # # ]: 0 : if (!((SN_local *)z)->b_GE_removed) goto lab5;
1933 : 0 : b_stemmed = 1;
1934 : : {
1935 : 0 : int ret = r_Step_1c(z);
1936 [ # # ]: 0 : if (ret == 0) goto lab5;
1937 [ # # ]: 0 : if (ret < 0) return ret;
1938 [ # # # ]: 0 : }
1939 : : lab5:
1940 : 0 : z->c = z->l - v_7;
1941 [ # # ]: 0 : }
1942 : 0 : z->c = z->lb;
1943 : 0 : ((SN_local *)z)->b_GE_removed = 0;
1944 : : {
1945 : 0 : int v_8 = z->c;
1946 : : {
1947 : 0 : int v_9 = z->c;
1948 : : {
1949 : 0 : int ret = r_Lose_infix(z);
1950 [ # # ]: 0 : if (ret == 0) goto lab6;
1951 [ # # ]: 0 : if (ret < 0) return ret;
1952 [ # # ]: 0 : }
1953 : 0 : z->c = v_9;
1954 : : {
1955 : 0 : int ret = r_measure(z);
1956 [ # # ]: 0 : if (ret < 0) return ret;
1957 [ # # ]: 0 : }
1958 [ # # # ]: 0 : }
1959 : : lab6:
1960 : 0 : z->c = v_8;
1961 [ # # ]: 0 : }
1962 : 0 : z->lb = z->c; z->c = z->l;
1963 : : {
1964 : 0 : int v_10 = z->l - z->c;
1965 [ # # ]: 0 : if (!((SN_local *)z)->b_GE_removed) goto lab7;
1966 : 0 : b_stemmed = 1;
1967 : : {
1968 : 0 : int ret = r_Step_1c(z);
1969 [ # # ]: 0 : if (ret == 0) goto lab7;
1970 [ # # ]: 0 : if (ret < 0) return ret;
1971 [ # # # ]: 0 : }
1972 : : lab7:
1973 : 0 : z->c = z->l - v_10;
1974 [ # # ]: 0 : }
1975 : 0 : z->c = z->lb;
1976 : 0 : z->lb = z->c; z->c = z->l;
1977 : : {
1978 : 0 : int v_11 = z->l - z->c;
1979 : : {
1980 : 0 : int ret = r_Step_7(z);
1981 [ # # ]: 0 : if (ret == 0) goto lab8;
1982 [ # # ]: 0 : if (ret < 0) return ret;
1983 [ # # # ]: 0 : }
1984 : 0 : b_stemmed = 1;
1985 : : lab8:
1986 : 0 : z->c = z->l - v_11;
1987 [ # # ]: 0 : }
1988 : : {
1989 : 0 : int v_12 = z->l - z->c;
1990 [ # # ]: 0 : if (!b_stemmed) goto lab9;
1991 : : {
1992 : 0 : int ret = r_Step_6(z);
1993 [ # # ]: 0 : if (ret == 0) goto lab9;
1994 [ # # ]: 0 : if (ret < 0) return ret;
1995 [ # # # ]: 0 : }
1996 : : lab9:
1997 : 0 : z->c = z->l - v_12;
1998 [ # # ]: 0 : }
1999 : 0 : z->c = z->lb;
2000 : 0 : return 1;
2001 : 0 : }
2002 : :
2003 : 0 : extern struct SN_env * dutch_ISO_8859_1_create_env(void) {
2004 : 0 : struct SN_env * z = SN_new_env(sizeof(SN_local));
2005 [ # # ]: 0 : if (z) {
2006 : 0 : ((SN_local *)z)->b_GE_removed = 0;
2007 : 0 : ((SN_local *)z)->i_p2 = 0;
2008 : 0 : ((SN_local *)z)->i_p1 = 0;
2009 : 0 : ((SN_local *)z)->s_ch = NULL;
2010 : :
2011 [ # # ]: 0 : if ((((SN_local *)z)->s_ch = create_s()) == NULL) {
2012 : 0 : dutch_ISO_8859_1_close_env(z);
2013 : 0 : return NULL;
2014 : : }
2015 : 0 : }
2016 : 0 : return z;
2017 : 0 : }
2018 : :
2019 : 0 : extern void dutch_ISO_8859_1_close_env(struct SN_env * z) {
2020 [ # # ]: 0 : if (z) {
2021 : 0 : lose_s(((SN_local *)z)->s_ch);
2022 : 0 : }
2023 : 0 : SN_delete_env(z);
2024 : 0 : }
2025 : :
|