Header And Logo

PostgreSQL
| The world's most advanced open source database.

stem_ISO_8859_1_spanish.c

Go to the documentation of this file.
00001 
00002 /* This file was generated automatically by the Snowball to ANSI C compiler */
00003 
00004 #include "header.h"
00005 
00006 #ifdef __cplusplus
00007 extern "C" {
00008 #endif
00009 extern int spanish_ISO_8859_1_stem(struct SN_env * z);
00010 #ifdef __cplusplus
00011 }
00012 #endif
00013 static int r_residual_suffix(struct SN_env * z);
00014 static int r_verb_suffix(struct SN_env * z);
00015 static int r_y_verb_suffix(struct SN_env * z);
00016 static int r_standard_suffix(struct SN_env * z);
00017 static int r_attached_pronoun(struct SN_env * z);
00018 static int r_R2(struct SN_env * z);
00019 static int r_R1(struct SN_env * z);
00020 static int r_RV(struct SN_env * z);
00021 static int r_mark_regions(struct SN_env * z);
00022 static int r_postlude(struct SN_env * z);
00023 #ifdef __cplusplus
00024 extern "C" {
00025 #endif
00026 
00027 
00028 extern struct SN_env * spanish_ISO_8859_1_create_env(void);
00029 extern void spanish_ISO_8859_1_close_env(struct SN_env * z);
00030 
00031 
00032 #ifdef __cplusplus
00033 }
00034 #endif
00035 static const symbol s_0_1[1] = { 0xE1 };
00036 static const symbol s_0_2[1] = { 0xE9 };
00037 static const symbol s_0_3[1] = { 0xED };
00038 static const symbol s_0_4[1] = { 0xF3 };
00039 static const symbol s_0_5[1] = { 0xFA };
00040 
00041 static const struct among a_0[6] =
00042 {
00043 /*  0 */ { 0, 0, -1, 6, 0},
00044 /*  1 */ { 1, s_0_1, 0, 1, 0},
00045 /*  2 */ { 1, s_0_2, 0, 2, 0},
00046 /*  3 */ { 1, s_0_3, 0, 3, 0},
00047 /*  4 */ { 1, s_0_4, 0, 4, 0},
00048 /*  5 */ { 1, s_0_5, 0, 5, 0}
00049 };
00050 
00051 static const symbol s_1_0[2] = { 'l', 'a' };
00052 static const symbol s_1_1[4] = { 's', 'e', 'l', 'a' };
00053 static const symbol s_1_2[2] = { 'l', 'e' };
00054 static const symbol s_1_3[2] = { 'm', 'e' };
00055 static const symbol s_1_4[2] = { 's', 'e' };
00056 static const symbol s_1_5[2] = { 'l', 'o' };
00057 static const symbol s_1_6[4] = { 's', 'e', 'l', 'o' };
00058 static const symbol s_1_7[3] = { 'l', 'a', 's' };
00059 static const symbol s_1_8[5] = { 's', 'e', 'l', 'a', 's' };
00060 static const symbol s_1_9[3] = { 'l', 'e', 's' };
00061 static const symbol s_1_10[3] = { 'l', 'o', 's' };
00062 static const symbol s_1_11[5] = { 's', 'e', 'l', 'o', 's' };
00063 static const symbol s_1_12[3] = { 'n', 'o', 's' };
00064 
00065 static const struct among a_1[13] =
00066 {
00067 /*  0 */ { 2, s_1_0, -1, -1, 0},
00068 /*  1 */ { 4, s_1_1, 0, -1, 0},
00069 /*  2 */ { 2, s_1_2, -1, -1, 0},
00070 /*  3 */ { 2, s_1_3, -1, -1, 0},
00071 /*  4 */ { 2, s_1_4, -1, -1, 0},
00072 /*  5 */ { 2, s_1_5, -1, -1, 0},
00073 /*  6 */ { 4, s_1_6, 5, -1, 0},
00074 /*  7 */ { 3, s_1_7, -1, -1, 0},
00075 /*  8 */ { 5, s_1_8, 7, -1, 0},
00076 /*  9 */ { 3, s_1_9, -1, -1, 0},
00077 /* 10 */ { 3, s_1_10, -1, -1, 0},
00078 /* 11 */ { 5, s_1_11, 10, -1, 0},
00079 /* 12 */ { 3, s_1_12, -1, -1, 0}
00080 };
00081 
00082 static const symbol s_2_0[4] = { 'a', 'n', 'd', 'o' };
00083 static const symbol s_2_1[5] = { 'i', 'e', 'n', 'd', 'o' };
00084 static const symbol s_2_2[5] = { 'y', 'e', 'n', 'd', 'o' };
00085 static const symbol s_2_3[4] = { 0xE1, 'n', 'd', 'o' };
00086 static const symbol s_2_4[5] = { 'i', 0xE9, 'n', 'd', 'o' };
00087 static const symbol s_2_5[2] = { 'a', 'r' };
00088 static const symbol s_2_6[2] = { 'e', 'r' };
00089 static const symbol s_2_7[2] = { 'i', 'r' };
00090 static const symbol s_2_8[2] = { 0xE1, 'r' };
00091 static const symbol s_2_9[2] = { 0xE9, 'r' };
00092 static const symbol s_2_10[2] = { 0xED, 'r' };
00093 
00094 static const struct among a_2[11] =
00095 {
00096 /*  0 */ { 4, s_2_0, -1, 6, 0},
00097 /*  1 */ { 5, s_2_1, -1, 6, 0},
00098 /*  2 */ { 5, s_2_2, -1, 7, 0},
00099 /*  3 */ { 4, s_2_3, -1, 2, 0},
00100 /*  4 */ { 5, s_2_4, -1, 1, 0},
00101 /*  5 */ { 2, s_2_5, -1, 6, 0},
00102 /*  6 */ { 2, s_2_6, -1, 6, 0},
00103 /*  7 */ { 2, s_2_7, -1, 6, 0},
00104 /*  8 */ { 2, s_2_8, -1, 3, 0},
00105 /*  9 */ { 2, s_2_9, -1, 4, 0},
00106 /* 10 */ { 2, s_2_10, -1, 5, 0}
00107 };
00108 
00109 static const symbol s_3_0[2] = { 'i', 'c' };
00110 static const symbol s_3_1[2] = { 'a', 'd' };
00111 static const symbol s_3_2[2] = { 'o', 's' };
00112 static const symbol s_3_3[2] = { 'i', 'v' };
00113 
00114 static const struct among a_3[4] =
00115 {
00116 /*  0 */ { 2, s_3_0, -1, -1, 0},
00117 /*  1 */ { 2, s_3_1, -1, -1, 0},
00118 /*  2 */ { 2, s_3_2, -1, -1, 0},
00119 /*  3 */ { 2, s_3_3, -1, 1, 0}
00120 };
00121 
00122 static const symbol s_4_0[4] = { 'a', 'b', 'l', 'e' };
00123 static const symbol s_4_1[4] = { 'i', 'b', 'l', 'e' };
00124 static const symbol s_4_2[4] = { 'a', 'n', 't', 'e' };
00125 
00126 static const struct among a_4[3] =
00127 {
00128 /*  0 */ { 4, s_4_0, -1, 1, 0},
00129 /*  1 */ { 4, s_4_1, -1, 1, 0},
00130 /*  2 */ { 4, s_4_2, -1, 1, 0}
00131 };
00132 
00133 static const symbol s_5_0[2] = { 'i', 'c' };
00134 static const symbol s_5_1[4] = { 'a', 'b', 'i', 'l' };
00135 static const symbol s_5_2[2] = { 'i', 'v' };
00136 
00137 static const struct among a_5[3] =
00138 {
00139 /*  0 */ { 2, s_5_0, -1, 1, 0},
00140 /*  1 */ { 4, s_5_1, -1, 1, 0},
00141 /*  2 */ { 2, s_5_2, -1, 1, 0}
00142 };
00143 
00144 static const symbol s_6_0[3] = { 'i', 'c', 'a' };
00145 static const symbol s_6_1[5] = { 'a', 'n', 'c', 'i', 'a' };
00146 static const symbol s_6_2[5] = { 'e', 'n', 'c', 'i', 'a' };
00147 static const symbol s_6_3[5] = { 'a', 'd', 'o', 'r', 'a' };
00148 static const symbol s_6_4[3] = { 'o', 's', 'a' };
00149 static const symbol s_6_5[4] = { 'i', 's', 't', 'a' };
00150 static const symbol s_6_6[3] = { 'i', 'v', 'a' };
00151 static const symbol s_6_7[4] = { 'a', 'n', 'z', 'a' };
00152 static const symbol s_6_8[5] = { 'l', 'o', 'g', 0xED, 'a' };
00153 static const symbol s_6_9[4] = { 'i', 'd', 'a', 'd' };
00154 static const symbol s_6_10[4] = { 'a', 'b', 'l', 'e' };
00155 static const symbol s_6_11[4] = { 'i', 'b', 'l', 'e' };
00156 static const symbol s_6_12[4] = { 'a', 'n', 't', 'e' };
00157 static const symbol s_6_13[5] = { 'm', 'e', 'n', 't', 'e' };
00158 static const symbol s_6_14[6] = { 'a', 'm', 'e', 'n', 't', 'e' };
00159 static const symbol s_6_15[5] = { 'a', 'c', 'i', 0xF3, 'n' };
00160 static const symbol s_6_16[5] = { 'u', 'c', 'i', 0xF3, 'n' };
00161 static const symbol s_6_17[3] = { 'i', 'c', 'o' };
00162 static const symbol s_6_18[4] = { 'i', 's', 'm', 'o' };
00163 static const symbol s_6_19[3] = { 'o', 's', 'o' };
00164 static const symbol s_6_20[7] = { 'a', 'm', 'i', 'e', 'n', 't', 'o' };
00165 static const symbol s_6_21[7] = { 'i', 'm', 'i', 'e', 'n', 't', 'o' };
00166 static const symbol s_6_22[3] = { 'i', 'v', 'o' };
00167 static const symbol s_6_23[4] = { 'a', 'd', 'o', 'r' };
00168 static const symbol s_6_24[4] = { 'i', 'c', 'a', 's' };
00169 static const symbol s_6_25[6] = { 'a', 'n', 'c', 'i', 'a', 's' };
00170 static const symbol s_6_26[6] = { 'e', 'n', 'c', 'i', 'a', 's' };
00171 static const symbol s_6_27[6] = { 'a', 'd', 'o', 'r', 'a', 's' };
00172 static const symbol s_6_28[4] = { 'o', 's', 'a', 's' };
00173 static const symbol s_6_29[5] = { 'i', 's', 't', 'a', 's' };
00174 static const symbol s_6_30[4] = { 'i', 'v', 'a', 's' };
00175 static const symbol s_6_31[5] = { 'a', 'n', 'z', 'a', 's' };
00176 static const symbol s_6_32[6] = { 'l', 'o', 'g', 0xED, 'a', 's' };
00177 static const symbol s_6_33[6] = { 'i', 'd', 'a', 'd', 'e', 's' };
00178 static const symbol s_6_34[5] = { 'a', 'b', 'l', 'e', 's' };
00179 static const symbol s_6_35[5] = { 'i', 'b', 'l', 'e', 's' };
00180 static const symbol s_6_36[7] = { 'a', 'c', 'i', 'o', 'n', 'e', 's' };
00181 static const symbol s_6_37[7] = { 'u', 'c', 'i', 'o', 'n', 'e', 's' };
00182 static const symbol s_6_38[6] = { 'a', 'd', 'o', 'r', 'e', 's' };
00183 static const symbol s_6_39[5] = { 'a', 'n', 't', 'e', 's' };
00184 static const symbol s_6_40[4] = { 'i', 'c', 'o', 's' };
00185 static const symbol s_6_41[5] = { 'i', 's', 'm', 'o', 's' };
00186 static const symbol s_6_42[4] = { 'o', 's', 'o', 's' };
00187 static const symbol s_6_43[8] = { 'a', 'm', 'i', 'e', 'n', 't', 'o', 's' };
00188 static const symbol s_6_44[8] = { 'i', 'm', 'i', 'e', 'n', 't', 'o', 's' };
00189 static const symbol s_6_45[4] = { 'i', 'v', 'o', 's' };
00190 
00191 static const struct among a_6[46] =
00192 {
00193 /*  0 */ { 3, s_6_0, -1, 1, 0},
00194 /*  1 */ { 5, s_6_1, -1, 2, 0},
00195 /*  2 */ { 5, s_6_2, -1, 5, 0},
00196 /*  3 */ { 5, s_6_3, -1, 2, 0},
00197 /*  4 */ { 3, s_6_4, -1, 1, 0},
00198 /*  5 */ { 4, s_6_5, -1, 1, 0},
00199 /*  6 */ { 3, s_6_6, -1, 9, 0},
00200 /*  7 */ { 4, s_6_7, -1, 1, 0},
00201 /*  8 */ { 5, s_6_8, -1, 3, 0},
00202 /*  9 */ { 4, s_6_9, -1, 8, 0},
00203 /* 10 */ { 4, s_6_10, -1, 1, 0},
00204 /* 11 */ { 4, s_6_11, -1, 1, 0},
00205 /* 12 */ { 4, s_6_12, -1, 2, 0},
00206 /* 13 */ { 5, s_6_13, -1, 7, 0},
00207 /* 14 */ { 6, s_6_14, 13, 6, 0},
00208 /* 15 */ { 5, s_6_15, -1, 2, 0},
00209 /* 16 */ { 5, s_6_16, -1, 4, 0},
00210 /* 17 */ { 3, s_6_17, -1, 1, 0},
00211 /* 18 */ { 4, s_6_18, -1, 1, 0},
00212 /* 19 */ { 3, s_6_19, -1, 1, 0},
00213 /* 20 */ { 7, s_6_20, -1, 1, 0},
00214 /* 21 */ { 7, s_6_21, -1, 1, 0},
00215 /* 22 */ { 3, s_6_22, -1, 9, 0},
00216 /* 23 */ { 4, s_6_23, -1, 2, 0},
00217 /* 24 */ { 4, s_6_24, -1, 1, 0},
00218 /* 25 */ { 6, s_6_25, -1, 2, 0},
00219 /* 26 */ { 6, s_6_26, -1, 5, 0},
00220 /* 27 */ { 6, s_6_27, -1, 2, 0},
00221 /* 28 */ { 4, s_6_28, -1, 1, 0},
00222 /* 29 */ { 5, s_6_29, -1, 1, 0},
00223 /* 30 */ { 4, s_6_30, -1, 9, 0},
00224 /* 31 */ { 5, s_6_31, -1, 1, 0},
00225 /* 32 */ { 6, s_6_32, -1, 3, 0},
00226 /* 33 */ { 6, s_6_33, -1, 8, 0},
00227 /* 34 */ { 5, s_6_34, -1, 1, 0},
00228 /* 35 */ { 5, s_6_35, -1, 1, 0},
00229 /* 36 */ { 7, s_6_36, -1, 2, 0},
00230 /* 37 */ { 7, s_6_37, -1, 4, 0},
00231 /* 38 */ { 6, s_6_38, -1, 2, 0},
00232 /* 39 */ { 5, s_6_39, -1, 2, 0},
00233 /* 40 */ { 4, s_6_40, -1, 1, 0},
00234 /* 41 */ { 5, s_6_41, -1, 1, 0},
00235 /* 42 */ { 4, s_6_42, -1, 1, 0},
00236 /* 43 */ { 8, s_6_43, -1, 1, 0},
00237 /* 44 */ { 8, s_6_44, -1, 1, 0},
00238 /* 45 */ { 4, s_6_45, -1, 9, 0}
00239 };
00240 
00241 static const symbol s_7_0[2] = { 'y', 'a' };
00242 static const symbol s_7_1[2] = { 'y', 'e' };
00243 static const symbol s_7_2[3] = { 'y', 'a', 'n' };
00244 static const symbol s_7_3[3] = { 'y', 'e', 'n' };
00245 static const symbol s_7_4[5] = { 'y', 'e', 'r', 'o', 'n' };
00246 static const symbol s_7_5[5] = { 'y', 'e', 'n', 'd', 'o' };
00247 static const symbol s_7_6[2] = { 'y', 'o' };
00248 static const symbol s_7_7[3] = { 'y', 'a', 's' };
00249 static const symbol s_7_8[3] = { 'y', 'e', 's' };
00250 static const symbol s_7_9[4] = { 'y', 'a', 'i', 's' };
00251 static const symbol s_7_10[5] = { 'y', 'a', 'm', 'o', 's' };
00252 static const symbol s_7_11[2] = { 'y', 0xF3 };
00253 
00254 static const struct among a_7[12] =
00255 {
00256 /*  0 */ { 2, s_7_0, -1, 1, 0},
00257 /*  1 */ { 2, s_7_1, -1, 1, 0},
00258 /*  2 */ { 3, s_7_2, -1, 1, 0},
00259 /*  3 */ { 3, s_7_3, -1, 1, 0},
00260 /*  4 */ { 5, s_7_4, -1, 1, 0},
00261 /*  5 */ { 5, s_7_5, -1, 1, 0},
00262 /*  6 */ { 2, s_7_6, -1, 1, 0},
00263 /*  7 */ { 3, s_7_7, -1, 1, 0},
00264 /*  8 */ { 3, s_7_8, -1, 1, 0},
00265 /*  9 */ { 4, s_7_9, -1, 1, 0},
00266 /* 10 */ { 5, s_7_10, -1, 1, 0},
00267 /* 11 */ { 2, s_7_11, -1, 1, 0}
00268 };
00269 
00270 static const symbol s_8_0[3] = { 'a', 'b', 'a' };
00271 static const symbol s_8_1[3] = { 'a', 'd', 'a' };
00272 static const symbol s_8_2[3] = { 'i', 'd', 'a' };
00273 static const symbol s_8_3[3] = { 'a', 'r', 'a' };
00274 static const symbol s_8_4[4] = { 'i', 'e', 'r', 'a' };
00275 static const symbol s_8_5[2] = { 0xED, 'a' };
00276 static const symbol s_8_6[4] = { 'a', 'r', 0xED, 'a' };
00277 static const symbol s_8_7[4] = { 'e', 'r', 0xED, 'a' };
00278 static const symbol s_8_8[4] = { 'i', 'r', 0xED, 'a' };
00279 static const symbol s_8_9[2] = { 'a', 'd' };
00280 static const symbol s_8_10[2] = { 'e', 'd' };
00281 static const symbol s_8_11[2] = { 'i', 'd' };
00282 static const symbol s_8_12[3] = { 'a', 's', 'e' };
00283 static const symbol s_8_13[4] = { 'i', 'e', 's', 'e' };
00284 static const symbol s_8_14[4] = { 'a', 's', 't', 'e' };
00285 static const symbol s_8_15[4] = { 'i', 's', 't', 'e' };
00286 static const symbol s_8_16[2] = { 'a', 'n' };
00287 static const symbol s_8_17[4] = { 'a', 'b', 'a', 'n' };
00288 static const symbol s_8_18[4] = { 'a', 'r', 'a', 'n' };
00289 static const symbol s_8_19[5] = { 'i', 'e', 'r', 'a', 'n' };
00290 static const symbol s_8_20[3] = { 0xED, 'a', 'n' };
00291 static const symbol s_8_21[5] = { 'a', 'r', 0xED, 'a', 'n' };
00292 static const symbol s_8_22[5] = { 'e', 'r', 0xED, 'a', 'n' };
00293 static const symbol s_8_23[5] = { 'i', 'r', 0xED, 'a', 'n' };
00294 static const symbol s_8_24[2] = { 'e', 'n' };
00295 static const symbol s_8_25[4] = { 'a', 's', 'e', 'n' };
00296 static const symbol s_8_26[5] = { 'i', 'e', 's', 'e', 'n' };
00297 static const symbol s_8_27[4] = { 'a', 'r', 'o', 'n' };
00298 static const symbol s_8_28[5] = { 'i', 'e', 'r', 'o', 'n' };
00299 static const symbol s_8_29[4] = { 'a', 'r', 0xE1, 'n' };
00300 static const symbol s_8_30[4] = { 'e', 'r', 0xE1, 'n' };
00301 static const symbol s_8_31[4] = { 'i', 'r', 0xE1, 'n' };
00302 static const symbol s_8_32[3] = { 'a', 'd', 'o' };
00303 static const symbol s_8_33[3] = { 'i', 'd', 'o' };
00304 static const symbol s_8_34[4] = { 'a', 'n', 'd', 'o' };
00305 static const symbol s_8_35[5] = { 'i', 'e', 'n', 'd', 'o' };
00306 static const symbol s_8_36[2] = { 'a', 'r' };
00307 static const symbol s_8_37[2] = { 'e', 'r' };
00308 static const symbol s_8_38[2] = { 'i', 'r' };
00309 static const symbol s_8_39[2] = { 'a', 's' };
00310 static const symbol s_8_40[4] = { 'a', 'b', 'a', 's' };
00311 static const symbol s_8_41[4] = { 'a', 'd', 'a', 's' };
00312 static const symbol s_8_42[4] = { 'i', 'd', 'a', 's' };
00313 static const symbol s_8_43[4] = { 'a', 'r', 'a', 's' };
00314 static const symbol s_8_44[5] = { 'i', 'e', 'r', 'a', 's' };
00315 static const symbol s_8_45[3] = { 0xED, 'a', 's' };
00316 static const symbol s_8_46[5] = { 'a', 'r', 0xED, 'a', 's' };
00317 static const symbol s_8_47[5] = { 'e', 'r', 0xED, 'a', 's' };
00318 static const symbol s_8_48[5] = { 'i', 'r', 0xED, 'a', 's' };
00319 static const symbol s_8_49[2] = { 'e', 's' };
00320 static const symbol s_8_50[4] = { 'a', 's', 'e', 's' };
00321 static const symbol s_8_51[5] = { 'i', 'e', 's', 'e', 's' };
00322 static const symbol s_8_52[5] = { 'a', 'b', 'a', 'i', 's' };
00323 static const symbol s_8_53[5] = { 'a', 'r', 'a', 'i', 's' };
00324 static const symbol s_8_54[6] = { 'i', 'e', 'r', 'a', 'i', 's' };
00325 static const symbol s_8_55[4] = { 0xED, 'a', 'i', 's' };
00326 static const symbol s_8_56[6] = { 'a', 'r', 0xED, 'a', 'i', 's' };
00327 static const symbol s_8_57[6] = { 'e', 'r', 0xED, 'a', 'i', 's' };
00328 static const symbol s_8_58[6] = { 'i', 'r', 0xED, 'a', 'i', 's' };
00329 static const symbol s_8_59[5] = { 'a', 's', 'e', 'i', 's' };
00330 static const symbol s_8_60[6] = { 'i', 'e', 's', 'e', 'i', 's' };
00331 static const symbol s_8_61[6] = { 'a', 's', 't', 'e', 'i', 's' };
00332 static const symbol s_8_62[6] = { 'i', 's', 't', 'e', 'i', 's' };
00333 static const symbol s_8_63[3] = { 0xE1, 'i', 's' };
00334 static const symbol s_8_64[3] = { 0xE9, 'i', 's' };
00335 static const symbol s_8_65[5] = { 'a', 'r', 0xE9, 'i', 's' };
00336 static const symbol s_8_66[5] = { 'e', 'r', 0xE9, 'i', 's' };
00337 static const symbol s_8_67[5] = { 'i', 'r', 0xE9, 'i', 's' };
00338 static const symbol s_8_68[4] = { 'a', 'd', 'o', 's' };
00339 static const symbol s_8_69[4] = { 'i', 'd', 'o', 's' };
00340 static const symbol s_8_70[4] = { 'a', 'm', 'o', 's' };
00341 static const symbol s_8_71[6] = { 0xE1, 'b', 'a', 'm', 'o', 's' };
00342 static const symbol s_8_72[6] = { 0xE1, 'r', 'a', 'm', 'o', 's' };
00343 static const symbol s_8_73[7] = { 'i', 0xE9, 'r', 'a', 'm', 'o', 's' };
00344 static const symbol s_8_74[5] = { 0xED, 'a', 'm', 'o', 's' };
00345 static const symbol s_8_75[7] = { 'a', 'r', 0xED, 'a', 'm', 'o', 's' };
00346 static const symbol s_8_76[7] = { 'e', 'r', 0xED, 'a', 'm', 'o', 's' };
00347 static const symbol s_8_77[7] = { 'i', 'r', 0xED, 'a', 'm', 'o', 's' };
00348 static const symbol s_8_78[4] = { 'e', 'm', 'o', 's' };
00349 static const symbol s_8_79[6] = { 'a', 'r', 'e', 'm', 'o', 's' };
00350 static const symbol s_8_80[6] = { 'e', 'r', 'e', 'm', 'o', 's' };
00351 static const symbol s_8_81[6] = { 'i', 'r', 'e', 'm', 'o', 's' };
00352 static const symbol s_8_82[6] = { 0xE1, 's', 'e', 'm', 'o', 's' };
00353 static const symbol s_8_83[7] = { 'i', 0xE9, 's', 'e', 'm', 'o', 's' };
00354 static const symbol s_8_84[4] = { 'i', 'm', 'o', 's' };
00355 static const symbol s_8_85[4] = { 'a', 'r', 0xE1, 's' };
00356 static const symbol s_8_86[4] = { 'e', 'r', 0xE1, 's' };
00357 static const symbol s_8_87[4] = { 'i', 'r', 0xE1, 's' };
00358 static const symbol s_8_88[2] = { 0xED, 's' };
00359 static const symbol s_8_89[3] = { 'a', 'r', 0xE1 };
00360 static const symbol s_8_90[3] = { 'e', 'r', 0xE1 };
00361 static const symbol s_8_91[3] = { 'i', 'r', 0xE1 };
00362 static const symbol s_8_92[3] = { 'a', 'r', 0xE9 };
00363 static const symbol s_8_93[3] = { 'e', 'r', 0xE9 };
00364 static const symbol s_8_94[3] = { 'i', 'r', 0xE9 };
00365 static const symbol s_8_95[2] = { 'i', 0xF3 };
00366 
00367 static const struct among a_8[96] =
00368 {
00369 /*  0 */ { 3, s_8_0, -1, 2, 0},
00370 /*  1 */ { 3, s_8_1, -1, 2, 0},
00371 /*  2 */ { 3, s_8_2, -1, 2, 0},
00372 /*  3 */ { 3, s_8_3, -1, 2, 0},
00373 /*  4 */ { 4, s_8_4, -1, 2, 0},
00374 /*  5 */ { 2, s_8_5, -1, 2, 0},
00375 /*  6 */ { 4, s_8_6, 5, 2, 0},
00376 /*  7 */ { 4, s_8_7, 5, 2, 0},
00377 /*  8 */ { 4, s_8_8, 5, 2, 0},
00378 /*  9 */ { 2, s_8_9, -1, 2, 0},
00379 /* 10 */ { 2, s_8_10, -1, 2, 0},
00380 /* 11 */ { 2, s_8_11, -1, 2, 0},
00381 /* 12 */ { 3, s_8_12, -1, 2, 0},
00382 /* 13 */ { 4, s_8_13, -1, 2, 0},
00383 /* 14 */ { 4, s_8_14, -1, 2, 0},
00384 /* 15 */ { 4, s_8_15, -1, 2, 0},
00385 /* 16 */ { 2, s_8_16, -1, 2, 0},
00386 /* 17 */ { 4, s_8_17, 16, 2, 0},
00387 /* 18 */ { 4, s_8_18, 16, 2, 0},
00388 /* 19 */ { 5, s_8_19, 16, 2, 0},
00389 /* 20 */ { 3, s_8_20, 16, 2, 0},
00390 /* 21 */ { 5, s_8_21, 20, 2, 0},
00391 /* 22 */ { 5, s_8_22, 20, 2, 0},
00392 /* 23 */ { 5, s_8_23, 20, 2, 0},
00393 /* 24 */ { 2, s_8_24, -1, 1, 0},
00394 /* 25 */ { 4, s_8_25, 24, 2, 0},
00395 /* 26 */ { 5, s_8_26, 24, 2, 0},
00396 /* 27 */ { 4, s_8_27, -1, 2, 0},
00397 /* 28 */ { 5, s_8_28, -1, 2, 0},
00398 /* 29 */ { 4, s_8_29, -1, 2, 0},
00399 /* 30 */ { 4, s_8_30, -1, 2, 0},
00400 /* 31 */ { 4, s_8_31, -1, 2, 0},
00401 /* 32 */ { 3, s_8_32, -1, 2, 0},
00402 /* 33 */ { 3, s_8_33, -1, 2, 0},
00403 /* 34 */ { 4, s_8_34, -1, 2, 0},
00404 /* 35 */ { 5, s_8_35, -1, 2, 0},
00405 /* 36 */ { 2, s_8_36, -1, 2, 0},
00406 /* 37 */ { 2, s_8_37, -1, 2, 0},
00407 /* 38 */ { 2, s_8_38, -1, 2, 0},
00408 /* 39 */ { 2, s_8_39, -1, 2, 0},
00409 /* 40 */ { 4, s_8_40, 39, 2, 0},
00410 /* 41 */ { 4, s_8_41, 39, 2, 0},
00411 /* 42 */ { 4, s_8_42, 39, 2, 0},
00412 /* 43 */ { 4, s_8_43, 39, 2, 0},
00413 /* 44 */ { 5, s_8_44, 39, 2, 0},
00414 /* 45 */ { 3, s_8_45, 39, 2, 0},
00415 /* 46 */ { 5, s_8_46, 45, 2, 0},
00416 /* 47 */ { 5, s_8_47, 45, 2, 0},
00417 /* 48 */ { 5, s_8_48, 45, 2, 0},
00418 /* 49 */ { 2, s_8_49, -1, 1, 0},
00419 /* 50 */ { 4, s_8_50, 49, 2, 0},
00420 /* 51 */ { 5, s_8_51, 49, 2, 0},
00421 /* 52 */ { 5, s_8_52, -1, 2, 0},
00422 /* 53 */ { 5, s_8_53, -1, 2, 0},
00423 /* 54 */ { 6, s_8_54, -1, 2, 0},
00424 /* 55 */ { 4, s_8_55, -1, 2, 0},
00425 /* 56 */ { 6, s_8_56, 55, 2, 0},
00426 /* 57 */ { 6, s_8_57, 55, 2, 0},
00427 /* 58 */ { 6, s_8_58, 55, 2, 0},
00428 /* 59 */ { 5, s_8_59, -1, 2, 0},
00429 /* 60 */ { 6, s_8_60, -1, 2, 0},
00430 /* 61 */ { 6, s_8_61, -1, 2, 0},
00431 /* 62 */ { 6, s_8_62, -1, 2, 0},
00432 /* 63 */ { 3, s_8_63, -1, 2, 0},
00433 /* 64 */ { 3, s_8_64, -1, 1, 0},
00434 /* 65 */ { 5, s_8_65, 64, 2, 0},
00435 /* 66 */ { 5, s_8_66, 64, 2, 0},
00436 /* 67 */ { 5, s_8_67, 64, 2, 0},
00437 /* 68 */ { 4, s_8_68, -1, 2, 0},
00438 /* 69 */ { 4, s_8_69, -1, 2, 0},
00439 /* 70 */ { 4, s_8_70, -1, 2, 0},
00440 /* 71 */ { 6, s_8_71, 70, 2, 0},
00441 /* 72 */ { 6, s_8_72, 70, 2, 0},
00442 /* 73 */ { 7, s_8_73, 70, 2, 0},
00443 /* 74 */ { 5, s_8_74, 70, 2, 0},
00444 /* 75 */ { 7, s_8_75, 74, 2, 0},
00445 /* 76 */ { 7, s_8_76, 74, 2, 0},
00446 /* 77 */ { 7, s_8_77, 74, 2, 0},
00447 /* 78 */ { 4, s_8_78, -1, 1, 0},
00448 /* 79 */ { 6, s_8_79, 78, 2, 0},
00449 /* 80 */ { 6, s_8_80, 78, 2, 0},
00450 /* 81 */ { 6, s_8_81, 78, 2, 0},
00451 /* 82 */ { 6, s_8_82, 78, 2, 0},
00452 /* 83 */ { 7, s_8_83, 78, 2, 0},
00453 /* 84 */ { 4, s_8_84, -1, 2, 0},
00454 /* 85 */ { 4, s_8_85, -1, 2, 0},
00455 /* 86 */ { 4, s_8_86, -1, 2, 0},
00456 /* 87 */ { 4, s_8_87, -1, 2, 0},
00457 /* 88 */ { 2, s_8_88, -1, 2, 0},
00458 /* 89 */ { 3, s_8_89, -1, 2, 0},
00459 /* 90 */ { 3, s_8_90, -1, 2, 0},
00460 /* 91 */ { 3, s_8_91, -1, 2, 0},
00461 /* 92 */ { 3, s_8_92, -1, 2, 0},
00462 /* 93 */ { 3, s_8_93, -1, 2, 0},
00463 /* 94 */ { 3, s_8_94, -1, 2, 0},
00464 /* 95 */ { 2, s_8_95, -1, 2, 0}
00465 };
00466 
00467 static const symbol s_9_0[1] = { 'a' };
00468 static const symbol s_9_1[1] = { 'e' };
00469 static const symbol s_9_2[1] = { 'o' };
00470 static const symbol s_9_3[2] = { 'o', 's' };
00471 static const symbol s_9_4[1] = { 0xE1 };
00472 static const symbol s_9_5[1] = { 0xE9 };
00473 static const symbol s_9_6[1] = { 0xED };
00474 static const symbol s_9_7[1] = { 0xF3 };
00475 
00476 static const struct among a_9[8] =
00477 {
00478 /*  0 */ { 1, s_9_0, -1, 1, 0},
00479 /*  1 */ { 1, s_9_1, -1, 2, 0},
00480 /*  2 */ { 1, s_9_2, -1, 1, 0},
00481 /*  3 */ { 2, s_9_3, -1, 1, 0},
00482 /*  4 */ { 1, s_9_4, -1, 1, 0},
00483 /*  5 */ { 1, s_9_5, -1, 2, 0},
00484 /*  6 */ { 1, s_9_6, -1, 1, 0},
00485 /*  7 */ { 1, s_9_7, -1, 1, 0}
00486 };
00487 
00488 static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 10 };
00489 
00490 static const symbol s_0[] = { 'a' };
00491 static const symbol s_1[] = { 'e' };
00492 static const symbol s_2[] = { 'i' };
00493 static const symbol s_3[] = { 'o' };
00494 static const symbol s_4[] = { 'u' };
00495 static const symbol s_5[] = { 'i', 'e', 'n', 'd', 'o' };
00496 static const symbol s_6[] = { 'a', 'n', 'd', 'o' };
00497 static const symbol s_7[] = { 'a', 'r' };
00498 static const symbol s_8[] = { 'e', 'r' };
00499 static const symbol s_9[] = { 'i', 'r' };
00500 static const symbol s_10[] = { 'u' };
00501 static const symbol s_11[] = { 'i', 'c' };
00502 static const symbol s_12[] = { 'l', 'o', 'g' };
00503 static const symbol s_13[] = { 'u' };
00504 static const symbol s_14[] = { 'e', 'n', 't', 'e' };
00505 static const symbol s_15[] = { 'a', 't' };
00506 static const symbol s_16[] = { 'a', 't' };
00507 static const symbol s_17[] = { 'u' };
00508 static const symbol s_18[] = { 'u' };
00509 static const symbol s_19[] = { 'g' };
00510 static const symbol s_20[] = { 'u' };
00511 static const symbol s_21[] = { 'g' };
00512 
00513 static int r_mark_regions(struct SN_env * z) {
00514     z->I[0] = z->l;
00515     z->I[1] = z->l;
00516     z->I[2] = z->l;
00517     {   int c1 = z->c; /* do, line 37 */
00518         {   int c2 = z->c; /* or, line 39 */
00519             if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
00520             {   int c3 = z->c; /* or, line 38 */
00521                 if (out_grouping(z, g_v, 97, 252, 0)) goto lab4;
00522                 {    /* gopast */ /* grouping v, line 38 */
00523                     int ret = out_grouping(z, g_v, 97, 252, 1);
00524                     if (ret < 0) goto lab4;
00525                     z->c += ret;
00526                 }
00527                 goto lab3;
00528             lab4:
00529                 z->c = c3;
00530                 if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
00531                 {    /* gopast */ /* non v, line 38 */
00532                     int ret = in_grouping(z, g_v, 97, 252, 1);
00533                     if (ret < 0) goto lab2;
00534                     z->c += ret;
00535                 }
00536             }
00537         lab3:
00538             goto lab1;
00539         lab2:
00540             z->c = c2;
00541             if (out_grouping(z, g_v, 97, 252, 0)) goto lab0;
00542             {   int c4 = z->c; /* or, line 40 */
00543                 if (out_grouping(z, g_v, 97, 252, 0)) goto lab6;
00544                 {    /* gopast */ /* grouping v, line 40 */
00545                     int ret = out_grouping(z, g_v, 97, 252, 1);
00546                     if (ret < 0) goto lab6;
00547                     z->c += ret;
00548                 }
00549                 goto lab5;
00550             lab6:
00551                 z->c = c4;
00552                 if (in_grouping(z, g_v, 97, 252, 0)) goto lab0;
00553                 if (z->c >= z->l) goto lab0;
00554                 z->c++; /* next, line 40 */
00555             }
00556         lab5:
00557             ;
00558         }
00559     lab1:
00560         z->I[0] = z->c; /* setmark pV, line 41 */
00561     lab0:
00562         z->c = c1;
00563     }
00564     {   int c5 = z->c; /* do, line 43 */
00565         {    /* gopast */ /* grouping v, line 44 */
00566             int ret = out_grouping(z, g_v, 97, 252, 1);
00567             if (ret < 0) goto lab7;
00568             z->c += ret;
00569         }
00570         {    /* gopast */ /* non v, line 44 */
00571             int ret = in_grouping(z, g_v, 97, 252, 1);
00572             if (ret < 0) goto lab7;
00573             z->c += ret;
00574         }
00575         z->I[1] = z->c; /* setmark p1, line 44 */
00576         {    /* gopast */ /* grouping v, line 45 */
00577             int ret = out_grouping(z, g_v, 97, 252, 1);
00578             if (ret < 0) goto lab7;
00579             z->c += ret;
00580         }
00581         {    /* gopast */ /* non v, line 45 */
00582             int ret = in_grouping(z, g_v, 97, 252, 1);
00583             if (ret < 0) goto lab7;
00584             z->c += ret;
00585         }
00586         z->I[2] = z->c; /* setmark p2, line 45 */
00587     lab7:
00588         z->c = c5;
00589     }
00590     return 1;
00591 }
00592 
00593 static int r_postlude(struct SN_env * z) {
00594     int among_var;
00595     while(1) { /* repeat, line 49 */
00596         int c1 = z->c;
00597         z->bra = z->c; /* [, line 50 */
00598         if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((67641858 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else
00599         among_var = find_among(z, a_0, 6); /* substring, line 50 */
00600         if (!(among_var)) goto lab0;
00601         z->ket = z->c; /* ], line 50 */
00602         switch(among_var) {
00603             case 0: goto lab0;
00604             case 1:
00605                 {   int ret = slice_from_s(z, 1, s_0); /* <-, line 51 */
00606                     if (ret < 0) return ret;
00607                 }
00608                 break;
00609             case 2:
00610                 {   int ret = slice_from_s(z, 1, s_1); /* <-, line 52 */
00611                     if (ret < 0) return ret;
00612                 }
00613                 break;
00614             case 3:
00615                 {   int ret = slice_from_s(z, 1, s_2); /* <-, line 53 */
00616                     if (ret < 0) return ret;
00617                 }
00618                 break;
00619             case 4:
00620                 {   int ret = slice_from_s(z, 1, s_3); /* <-, line 54 */
00621                     if (ret < 0) return ret;
00622                 }
00623                 break;
00624             case 5:
00625                 {   int ret = slice_from_s(z, 1, s_4); /* <-, line 55 */
00626                     if (ret < 0) return ret;
00627                 }
00628                 break;
00629             case 6:
00630                 if (z->c >= z->l) goto lab0;
00631                 z->c++; /* next, line 57 */
00632                 break;
00633         }
00634         continue;
00635     lab0:
00636         z->c = c1;
00637         break;
00638     }
00639     return 1;
00640 }
00641 
00642 static int r_RV(struct SN_env * z) {
00643     if (!(z->I[0] <= z->c)) return 0;
00644     return 1;
00645 }
00646 
00647 static int r_R1(struct SN_env * z) {
00648     if (!(z->I[1] <= z->c)) return 0;
00649     return 1;
00650 }
00651 
00652 static int r_R2(struct SN_env * z) {
00653     if (!(z->I[2] <= z->c)) return 0;
00654     return 1;
00655 }
00656 
00657 static int r_attached_pronoun(struct SN_env * z) {
00658     int among_var;
00659     z->ket = z->c; /* [, line 68 */
00660     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((557090 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
00661     if (!(find_among_b(z, a_1, 13))) return 0; /* substring, line 68 */
00662     z->bra = z->c; /* ], line 68 */
00663     if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 111 && z->p[z->c - 1] != 114)) return 0;
00664     among_var = find_among_b(z, a_2, 11); /* substring, line 72 */
00665     if (!(among_var)) return 0;
00666     {   int ret = r_RV(z);
00667         if (ret == 0) return 0; /* call RV, line 72 */
00668         if (ret < 0) return ret;
00669     }
00670     switch(among_var) {
00671         case 0: return 0;
00672         case 1:
00673             z->bra = z->c; /* ], line 73 */
00674             {   int ret = slice_from_s(z, 5, s_5); /* <-, line 73 */
00675                 if (ret < 0) return ret;
00676             }
00677             break;
00678         case 2:
00679             z->bra = z->c; /* ], line 74 */
00680             {   int ret = slice_from_s(z, 4, s_6); /* <-, line 74 */
00681                 if (ret < 0) return ret;
00682             }
00683             break;
00684         case 3:
00685             z->bra = z->c; /* ], line 75 */
00686             {   int ret = slice_from_s(z, 2, s_7); /* <-, line 75 */
00687                 if (ret < 0) return ret;
00688             }
00689             break;
00690         case 4:
00691             z->bra = z->c; /* ], line 76 */
00692             {   int ret = slice_from_s(z, 2, s_8); /* <-, line 76 */
00693                 if (ret < 0) return ret;
00694             }
00695             break;
00696         case 5:
00697             z->bra = z->c; /* ], line 77 */
00698             {   int ret = slice_from_s(z, 2, s_9); /* <-, line 77 */
00699                 if (ret < 0) return ret;
00700             }
00701             break;
00702         case 6:
00703             {   int ret = slice_del(z); /* delete, line 81 */
00704                 if (ret < 0) return ret;
00705             }
00706             break;
00707         case 7:
00708             if (!(eq_s_b(z, 1, s_10))) return 0;
00709             {   int ret = slice_del(z); /* delete, line 82 */
00710                 if (ret < 0) return ret;
00711             }
00712             break;
00713     }
00714     return 1;
00715 }
00716 
00717 static int r_standard_suffix(struct SN_env * z) {
00718     int among_var;
00719     z->ket = z->c; /* [, line 87 */
00720     if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((835634 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
00721     among_var = find_among_b(z, a_6, 46); /* substring, line 87 */
00722     if (!(among_var)) return 0;
00723     z->bra = z->c; /* ], line 87 */
00724     switch(among_var) {
00725         case 0: return 0;
00726         case 1:
00727             {   int ret = r_R2(z);
00728                 if (ret == 0) return 0; /* call R2, line 99 */
00729                 if (ret < 0) return ret;
00730             }
00731             {   int ret = slice_del(z); /* delete, line 99 */
00732                 if (ret < 0) return ret;
00733             }
00734             break;
00735         case 2:
00736             {   int ret = r_R2(z);
00737                 if (ret == 0) return 0; /* call R2, line 105 */
00738                 if (ret < 0) return ret;
00739             }
00740             {   int ret = slice_del(z); /* delete, line 105 */
00741                 if (ret < 0) return ret;
00742             }
00743             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 106 */
00744                 z->ket = z->c; /* [, line 106 */
00745                 if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m_keep; goto lab0; }
00746                 z->bra = z->c; /* ], line 106 */
00747                 {   int ret = r_R2(z);
00748                     if (ret == 0) { z->c = z->l - m_keep; goto lab0; } /* call R2, line 106 */
00749                     if (ret < 0) return ret;
00750                 }
00751                 {   int ret = slice_del(z); /* delete, line 106 */
00752                     if (ret < 0) return ret;
00753                 }
00754             lab0:
00755                 ;
00756             }
00757             break;
00758         case 3:
00759             {   int ret = r_R2(z);
00760                 if (ret == 0) return 0; /* call R2, line 111 */
00761                 if (ret < 0) return ret;
00762             }
00763             {   int ret = slice_from_s(z, 3, s_12); /* <-, line 111 */
00764                 if (ret < 0) return ret;
00765             }
00766             break;
00767         case 4:
00768             {   int ret = r_R2(z);
00769                 if (ret == 0) return 0; /* call R2, line 115 */
00770                 if (ret < 0) return ret;
00771             }
00772             {   int ret = slice_from_s(z, 1, s_13); /* <-, line 115 */
00773                 if (ret < 0) return ret;
00774             }
00775             break;
00776         case 5:
00777             {   int ret = r_R2(z);
00778                 if (ret == 0) return 0; /* call R2, line 119 */
00779                 if (ret < 0) return ret;
00780             }
00781             {   int ret = slice_from_s(z, 4, s_14); /* <-, line 119 */
00782                 if (ret < 0) return ret;
00783             }
00784             break;
00785         case 6:
00786             {   int ret = r_R1(z);
00787                 if (ret == 0) return 0; /* call R1, line 123 */
00788                 if (ret < 0) return ret;
00789             }
00790             {   int ret = slice_del(z); /* delete, line 123 */
00791                 if (ret < 0) return ret;
00792             }
00793             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 124 */
00794                 z->ket = z->c; /* [, line 125 */
00795                 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718616 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m_keep; goto lab1; }
00796                 among_var = find_among_b(z, a_3, 4); /* substring, line 125 */
00797                 if (!(among_var)) { z->c = z->l - m_keep; goto lab1; }
00798                 z->bra = z->c; /* ], line 125 */
00799                 {   int ret = r_R2(z);
00800                     if (ret == 0) { z->c = z->l - m_keep; goto lab1; } /* call R2, line 125 */
00801                     if (ret < 0) return ret;
00802                 }
00803                 {   int ret = slice_del(z); /* delete, line 125 */
00804                     if (ret < 0) return ret;
00805                 }
00806                 switch(among_var) {
00807                     case 0: { z->c = z->l - m_keep; goto lab1; }
00808                     case 1:
00809                         z->ket = z->c; /* [, line 126 */
00810                         if (!(eq_s_b(z, 2, s_15))) { z->c = z->l - m_keep; goto lab1; }
00811                         z->bra = z->c; /* ], line 126 */
00812                         {   int ret = r_R2(z);
00813                             if (ret == 0) { z->c = z->l - m_keep; goto lab1; } /* call R2, line 126 */
00814                             if (ret < 0) return ret;
00815                         }
00816                         {   int ret = slice_del(z); /* delete, line 126 */
00817                             if (ret < 0) return ret;
00818                         }
00819                         break;
00820                 }
00821             lab1:
00822                 ;
00823             }
00824             break;
00825         case 7:
00826             {   int ret = r_R2(z);
00827                 if (ret == 0) return 0; /* call R2, line 135 */
00828                 if (ret < 0) return ret;
00829             }
00830             {   int ret = slice_del(z); /* delete, line 135 */
00831                 if (ret < 0) return ret;
00832             }
00833             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 136 */
00834                 z->ket = z->c; /* [, line 137 */
00835                 if (z->c - 3 <= z->lb || z->p[z->c - 1] != 101) { z->c = z->l - m_keep; goto lab2; }
00836                 among_var = find_among_b(z, a_4, 3); /* substring, line 137 */
00837                 if (!(among_var)) { z->c = z->l - m_keep; goto lab2; }
00838                 z->bra = z->c; /* ], line 137 */
00839                 switch(among_var) {
00840                     case 0: { z->c = z->l - m_keep; goto lab2; }
00841                     case 1:
00842                         {   int ret = r_R2(z);
00843                             if (ret == 0) { z->c = z->l - m_keep; goto lab2; } /* call R2, line 140 */
00844                             if (ret < 0) return ret;
00845                         }
00846                         {   int ret = slice_del(z); /* delete, line 140 */
00847                             if (ret < 0) return ret;
00848                         }
00849                         break;
00850                 }
00851             lab2:
00852                 ;
00853             }
00854             break;
00855         case 8:
00856             {   int ret = r_R2(z);
00857                 if (ret == 0) return 0; /* call R2, line 147 */
00858                 if (ret < 0) return ret;
00859             }
00860             {   int ret = slice_del(z); /* delete, line 147 */
00861                 if (ret < 0) return ret;
00862             }
00863             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 148 */
00864                 z->ket = z->c; /* [, line 149 */
00865                 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m_keep; goto lab3; }
00866                 among_var = find_among_b(z, a_5, 3); /* substring, line 149 */
00867                 if (!(among_var)) { z->c = z->l - m_keep; goto lab3; }
00868                 z->bra = z->c; /* ], line 149 */
00869                 switch(among_var) {
00870                     case 0: { z->c = z->l - m_keep; goto lab3; }
00871                     case 1:
00872                         {   int ret = r_R2(z);
00873                             if (ret == 0) { z->c = z->l - m_keep; goto lab3; } /* call R2, line 152 */
00874                             if (ret < 0) return ret;
00875                         }
00876                         {   int ret = slice_del(z); /* delete, line 152 */
00877                             if (ret < 0) return ret;
00878                         }
00879                         break;
00880                 }
00881             lab3:
00882                 ;
00883             }
00884             break;
00885         case 9:
00886             {   int ret = r_R2(z);
00887                 if (ret == 0) return 0; /* call R2, line 159 */
00888                 if (ret < 0) return ret;
00889             }
00890             {   int ret = slice_del(z); /* delete, line 159 */
00891                 if (ret < 0) return ret;
00892             }
00893             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 160 */
00894                 z->ket = z->c; /* [, line 161 */
00895                 if (!(eq_s_b(z, 2, s_16))) { z->c = z->l - m_keep; goto lab4; }
00896                 z->bra = z->c; /* ], line 161 */
00897                 {   int ret = r_R2(z);
00898                     if (ret == 0) { z->c = z->l - m_keep; goto lab4; } /* call R2, line 161 */
00899                     if (ret < 0) return ret;
00900                 }
00901                 {   int ret = slice_del(z); /* delete, line 161 */
00902                     if (ret < 0) return ret;
00903                 }
00904             lab4:
00905                 ;
00906             }
00907             break;
00908     }
00909     return 1;
00910 }
00911 
00912 static int r_y_verb_suffix(struct SN_env * z) {
00913     int among_var;
00914     {   int mlimit; /* setlimit, line 168 */
00915         int m1 = z->l - z->c; (void)m1;
00916         if (z->c < z->I[0]) return 0;
00917         z->c = z->I[0]; /* tomark, line 168 */
00918         mlimit = z->lb; z->lb = z->c;
00919         z->c = z->l - m1;
00920         z->ket = z->c; /* [, line 168 */
00921         among_var = find_among_b(z, a_7, 12); /* substring, line 168 */
00922         if (!(among_var)) { z->lb = mlimit; return 0; }
00923         z->bra = z->c; /* ], line 168 */
00924         z->lb = mlimit;
00925     }
00926     switch(among_var) {
00927         case 0: return 0;
00928         case 1:
00929             if (!(eq_s_b(z, 1, s_17))) return 0;
00930             {   int ret = slice_del(z); /* delete, line 171 */
00931                 if (ret < 0) return ret;
00932             }
00933             break;
00934     }
00935     return 1;
00936 }
00937 
00938 static int r_verb_suffix(struct SN_env * z) {
00939     int among_var;
00940     {   int mlimit; /* setlimit, line 176 */
00941         int m1 = z->l - z->c; (void)m1;
00942         if (z->c < z->I[0]) return 0;
00943         z->c = z->I[0]; /* tomark, line 176 */
00944         mlimit = z->lb; z->lb = z->c;
00945         z->c = z->l - m1;
00946         z->ket = z->c; /* [, line 176 */
00947         among_var = find_among_b(z, a_8, 96); /* substring, line 176 */
00948         if (!(among_var)) { z->lb = mlimit; return 0; }
00949         z->bra = z->c; /* ], line 176 */
00950         z->lb = mlimit;
00951     }
00952     switch(among_var) {
00953         case 0: return 0;
00954         case 1:
00955             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 179 */
00956                 if (!(eq_s_b(z, 1, s_18))) { z->c = z->l - m_keep; goto lab0; }
00957                 {   int m_test = z->l - z->c; /* test, line 179 */
00958                     if (!(eq_s_b(z, 1, s_19))) { z->c = z->l - m_keep; goto lab0; }
00959                     z->c = z->l - m_test;
00960                 }
00961             lab0:
00962                 ;
00963             }
00964             z->bra = z->c; /* ], line 179 */
00965             {   int ret = slice_del(z); /* delete, line 179 */
00966                 if (ret < 0) return ret;
00967             }
00968             break;
00969         case 2:
00970             {   int ret = slice_del(z); /* delete, line 200 */
00971                 if (ret < 0) return ret;
00972             }
00973             break;
00974     }
00975     return 1;
00976 }
00977 
00978 static int r_residual_suffix(struct SN_env * z) {
00979     int among_var;
00980     z->ket = z->c; /* [, line 205 */
00981     among_var = find_among_b(z, a_9, 8); /* substring, line 205 */
00982     if (!(among_var)) return 0;
00983     z->bra = z->c; /* ], line 205 */
00984     switch(among_var) {
00985         case 0: return 0;
00986         case 1:
00987             {   int ret = r_RV(z);
00988                 if (ret == 0) return 0; /* call RV, line 208 */
00989                 if (ret < 0) return ret;
00990             }
00991             {   int ret = slice_del(z); /* delete, line 208 */
00992                 if (ret < 0) return ret;
00993             }
00994             break;
00995         case 2:
00996             {   int ret = r_RV(z);
00997                 if (ret == 0) return 0; /* call RV, line 210 */
00998                 if (ret < 0) return ret;
00999             }
01000             {   int ret = slice_del(z); /* delete, line 210 */
01001                 if (ret < 0) return ret;
01002             }
01003             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 210 */
01004                 z->ket = z->c; /* [, line 210 */
01005                 if (!(eq_s_b(z, 1, s_20))) { z->c = z->l - m_keep; goto lab0; }
01006                 z->bra = z->c; /* ], line 210 */
01007                 {   int m_test = z->l - z->c; /* test, line 210 */
01008                     if (!(eq_s_b(z, 1, s_21))) { z->c = z->l - m_keep; goto lab0; }
01009                     z->c = z->l - m_test;
01010                 }
01011                 {   int ret = r_RV(z);
01012                     if (ret == 0) { z->c = z->l - m_keep; goto lab0; } /* call RV, line 210 */
01013                     if (ret < 0) return ret;
01014                 }
01015                 {   int ret = slice_del(z); /* delete, line 210 */
01016                     if (ret < 0) return ret;
01017                 }
01018             lab0:
01019                 ;
01020             }
01021             break;
01022     }
01023     return 1;
01024 }
01025 
01026 extern int spanish_ISO_8859_1_stem(struct SN_env * z) {
01027     {   int c1 = z->c; /* do, line 216 */
01028         {   int ret = r_mark_regions(z);
01029             if (ret == 0) goto lab0; /* call mark_regions, line 216 */
01030             if (ret < 0) return ret;
01031         }
01032     lab0:
01033         z->c = c1;
01034     }
01035     z->lb = z->c; z->c = z->l; /* backwards, line 217 */
01036 
01037     {   int m2 = z->l - z->c; (void)m2; /* do, line 218 */
01038         {   int ret = r_attached_pronoun(z);
01039             if (ret == 0) goto lab1; /* call attached_pronoun, line 218 */
01040             if (ret < 0) return ret;
01041         }
01042     lab1:
01043         z->c = z->l - m2;
01044     }
01045     {   int m3 = z->l - z->c; (void)m3; /* do, line 219 */
01046         {   int m4 = z->l - z->c; (void)m4; /* or, line 219 */
01047             {   int ret = r_standard_suffix(z);
01048                 if (ret == 0) goto lab4; /* call standard_suffix, line 219 */
01049                 if (ret < 0) return ret;
01050             }
01051             goto lab3;
01052         lab4:
01053             z->c = z->l - m4;
01054             {   int ret = r_y_verb_suffix(z);
01055                 if (ret == 0) goto lab5; /* call y_verb_suffix, line 220 */
01056                 if (ret < 0) return ret;
01057             }
01058             goto lab3;
01059         lab5:
01060             z->c = z->l - m4;
01061             {   int ret = r_verb_suffix(z);
01062                 if (ret == 0) goto lab2; /* call verb_suffix, line 221 */
01063                 if (ret < 0) return ret;
01064             }
01065         }
01066     lab3:
01067     lab2:
01068         z->c = z->l - m3;
01069     }
01070     {   int m5 = z->l - z->c; (void)m5; /* do, line 223 */
01071         {   int ret = r_residual_suffix(z);
01072             if (ret == 0) goto lab6; /* call residual_suffix, line 223 */
01073             if (ret < 0) return ret;
01074         }
01075     lab6:
01076         z->c = z->l - m5;
01077     }
01078     z->c = z->lb;
01079     {   int c6 = z->c; /* do, line 225 */
01080         {   int ret = r_postlude(z);
01081             if (ret == 0) goto lab7; /* call postlude, line 225 */
01082             if (ret < 0) return ret;
01083         }
01084     lab7:
01085         z->c = c6;
01086     }
01087     return 1;
01088 }
01089 
01090 extern struct SN_env * spanish_ISO_8859_1_create_env(void) { return SN_create_env(0, 3, 0); }
01091 
01092 extern void spanish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
01093