Header And Logo

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

stem_ISO_8859_1_portuguese.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 portuguese_ISO_8859_1_stem(struct SN_env * z);
00010 #ifdef __cplusplus
00011 }
00012 #endif
00013 static int r_residual_form(struct SN_env * z);
00014 static int r_residual_suffix(struct SN_env * z);
00015 static int r_verb_suffix(struct SN_env * z);
00016 static int r_standard_suffix(struct SN_env * z);
00017 static int r_R2(struct SN_env * z);
00018 static int r_R1(struct SN_env * z);
00019 static int r_RV(struct SN_env * z);
00020 static int r_mark_regions(struct SN_env * z);
00021 static int r_postlude(struct SN_env * z);
00022 static int r_prelude(struct SN_env * z);
00023 #ifdef __cplusplus
00024 extern "C" {
00025 #endif
00026 
00027 
00028 extern struct SN_env * portuguese_ISO_8859_1_create_env(void);
00029 extern void portuguese_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] = { 0xE3 };
00036 static const symbol s_0_2[1] = { 0xF5 };
00037 
00038 static const struct among a_0[3] =
00039 {
00040 /*  0 */ { 0, 0, -1, 3, 0},
00041 /*  1 */ { 1, s_0_1, 0, 1, 0},
00042 /*  2 */ { 1, s_0_2, 0, 2, 0}
00043 };
00044 
00045 static const symbol s_1_1[2] = { 'a', '~' };
00046 static const symbol s_1_2[2] = { 'o', '~' };
00047 
00048 static const struct among a_1[3] =
00049 {
00050 /*  0 */ { 0, 0, -1, 3, 0},
00051 /*  1 */ { 2, s_1_1, 0, 1, 0},
00052 /*  2 */ { 2, s_1_2, 0, 2, 0}
00053 };
00054 
00055 static const symbol s_2_0[2] = { 'i', 'c' };
00056 static const symbol s_2_1[2] = { 'a', 'd' };
00057 static const symbol s_2_2[2] = { 'o', 's' };
00058 static const symbol s_2_3[2] = { 'i', 'v' };
00059 
00060 static const struct among a_2[4] =
00061 {
00062 /*  0 */ { 2, s_2_0, -1, -1, 0},
00063 /*  1 */ { 2, s_2_1, -1, -1, 0},
00064 /*  2 */ { 2, s_2_2, -1, -1, 0},
00065 /*  3 */ { 2, s_2_3, -1, 1, 0}
00066 };
00067 
00068 static const symbol s_3_0[4] = { 'a', 'n', 't', 'e' };
00069 static const symbol s_3_1[4] = { 'a', 'v', 'e', 'l' };
00070 static const symbol s_3_2[4] = { 0xED, 'v', 'e', 'l' };
00071 
00072 static const struct among a_3[3] =
00073 {
00074 /*  0 */ { 4, s_3_0, -1, 1, 0},
00075 /*  1 */ { 4, s_3_1, -1, 1, 0},
00076 /*  2 */ { 4, s_3_2, -1, 1, 0}
00077 };
00078 
00079 static const symbol s_4_0[2] = { 'i', 'c' };
00080 static const symbol s_4_1[4] = { 'a', 'b', 'i', 'l' };
00081 static const symbol s_4_2[2] = { 'i', 'v' };
00082 
00083 static const struct among a_4[3] =
00084 {
00085 /*  0 */ { 2, s_4_0, -1, 1, 0},
00086 /*  1 */ { 4, s_4_1, -1, 1, 0},
00087 /*  2 */ { 2, s_4_2, -1, 1, 0}
00088 };
00089 
00090 static const symbol s_5_0[3] = { 'i', 'c', 'a' };
00091 static const symbol s_5_1[5] = { 0xE2, 'n', 'c', 'i', 'a' };
00092 static const symbol s_5_2[5] = { 0xEA, 'n', 'c', 'i', 'a' };
00093 static const symbol s_5_3[3] = { 'i', 'r', 'a' };
00094 static const symbol s_5_4[5] = { 'a', 'd', 'o', 'r', 'a' };
00095 static const symbol s_5_5[3] = { 'o', 's', 'a' };
00096 static const symbol s_5_6[4] = { 'i', 's', 't', 'a' };
00097 static const symbol s_5_7[3] = { 'i', 'v', 'a' };
00098 static const symbol s_5_8[3] = { 'e', 'z', 'a' };
00099 static const symbol s_5_9[5] = { 'l', 'o', 'g', 0xED, 'a' };
00100 static const symbol s_5_10[5] = { 'i', 'd', 'a', 'd', 'e' };
00101 static const symbol s_5_11[4] = { 'a', 'n', 't', 'e' };
00102 static const symbol s_5_12[5] = { 'm', 'e', 'n', 't', 'e' };
00103 static const symbol s_5_13[6] = { 'a', 'm', 'e', 'n', 't', 'e' };
00104 static const symbol s_5_14[4] = { 0xE1, 'v', 'e', 'l' };
00105 static const symbol s_5_15[4] = { 0xED, 'v', 'e', 'l' };
00106 static const symbol s_5_16[5] = { 'u', 'c', 'i', 0xF3, 'n' };
00107 static const symbol s_5_17[3] = { 'i', 'c', 'o' };
00108 static const symbol s_5_18[4] = { 'i', 's', 'm', 'o' };
00109 static const symbol s_5_19[3] = { 'o', 's', 'o' };
00110 static const symbol s_5_20[6] = { 'a', 'm', 'e', 'n', 't', 'o' };
00111 static const symbol s_5_21[6] = { 'i', 'm', 'e', 'n', 't', 'o' };
00112 static const symbol s_5_22[3] = { 'i', 'v', 'o' };
00113 static const symbol s_5_23[5] = { 'a', 0xE7, 'a', '~', 'o' };
00114 static const symbol s_5_24[4] = { 'a', 'd', 'o', 'r' };
00115 static const symbol s_5_25[4] = { 'i', 'c', 'a', 's' };
00116 static const symbol s_5_26[6] = { 0xEA, 'n', 'c', 'i', 'a', 's' };
00117 static const symbol s_5_27[4] = { 'i', 'r', 'a', 's' };
00118 static const symbol s_5_28[6] = { 'a', 'd', 'o', 'r', 'a', 's' };
00119 static const symbol s_5_29[4] = { 'o', 's', 'a', 's' };
00120 static const symbol s_5_30[5] = { 'i', 's', 't', 'a', 's' };
00121 static const symbol s_5_31[4] = { 'i', 'v', 'a', 's' };
00122 static const symbol s_5_32[4] = { 'e', 'z', 'a', 's' };
00123 static const symbol s_5_33[6] = { 'l', 'o', 'g', 0xED, 'a', 's' };
00124 static const symbol s_5_34[6] = { 'i', 'd', 'a', 'd', 'e', 's' };
00125 static const symbol s_5_35[7] = { 'u', 'c', 'i', 'o', 'n', 'e', 's' };
00126 static const symbol s_5_36[6] = { 'a', 'd', 'o', 'r', 'e', 's' };
00127 static const symbol s_5_37[5] = { 'a', 'n', 't', 'e', 's' };
00128 static const symbol s_5_38[6] = { 'a', 0xE7, 'o', '~', 'e', 's' };
00129 static const symbol s_5_39[4] = { 'i', 'c', 'o', 's' };
00130 static const symbol s_5_40[5] = { 'i', 's', 'm', 'o', 's' };
00131 static const symbol s_5_41[4] = { 'o', 's', 'o', 's' };
00132 static const symbol s_5_42[7] = { 'a', 'm', 'e', 'n', 't', 'o', 's' };
00133 static const symbol s_5_43[7] = { 'i', 'm', 'e', 'n', 't', 'o', 's' };
00134 static const symbol s_5_44[4] = { 'i', 'v', 'o', 's' };
00135 
00136 static const struct among a_5[45] =
00137 {
00138 /*  0 */ { 3, s_5_0, -1, 1, 0},
00139 /*  1 */ { 5, s_5_1, -1, 1, 0},
00140 /*  2 */ { 5, s_5_2, -1, 4, 0},
00141 /*  3 */ { 3, s_5_3, -1, 9, 0},
00142 /*  4 */ { 5, s_5_4, -1, 1, 0},
00143 /*  5 */ { 3, s_5_5, -1, 1, 0},
00144 /*  6 */ { 4, s_5_6, -1, 1, 0},
00145 /*  7 */ { 3, s_5_7, -1, 8, 0},
00146 /*  8 */ { 3, s_5_8, -1, 1, 0},
00147 /*  9 */ { 5, s_5_9, -1, 2, 0},
00148 /* 10 */ { 5, s_5_10, -1, 7, 0},
00149 /* 11 */ { 4, s_5_11, -1, 1, 0},
00150 /* 12 */ { 5, s_5_12, -1, 6, 0},
00151 /* 13 */ { 6, s_5_13, 12, 5, 0},
00152 /* 14 */ { 4, s_5_14, -1, 1, 0},
00153 /* 15 */ { 4, s_5_15, -1, 1, 0},
00154 /* 16 */ { 5, s_5_16, -1, 3, 0},
00155 /* 17 */ { 3, s_5_17, -1, 1, 0},
00156 /* 18 */ { 4, s_5_18, -1, 1, 0},
00157 /* 19 */ { 3, s_5_19, -1, 1, 0},
00158 /* 20 */ { 6, s_5_20, -1, 1, 0},
00159 /* 21 */ { 6, s_5_21, -1, 1, 0},
00160 /* 22 */ { 3, s_5_22, -1, 8, 0},
00161 /* 23 */ { 5, s_5_23, -1, 1, 0},
00162 /* 24 */ { 4, s_5_24, -1, 1, 0},
00163 /* 25 */ { 4, s_5_25, -1, 1, 0},
00164 /* 26 */ { 6, s_5_26, -1, 4, 0},
00165 /* 27 */ { 4, s_5_27, -1, 9, 0},
00166 /* 28 */ { 6, s_5_28, -1, 1, 0},
00167 /* 29 */ { 4, s_5_29, -1, 1, 0},
00168 /* 30 */ { 5, s_5_30, -1, 1, 0},
00169 /* 31 */ { 4, s_5_31, -1, 8, 0},
00170 /* 32 */ { 4, s_5_32, -1, 1, 0},
00171 /* 33 */ { 6, s_5_33, -1, 2, 0},
00172 /* 34 */ { 6, s_5_34, -1, 7, 0},
00173 /* 35 */ { 7, s_5_35, -1, 3, 0},
00174 /* 36 */ { 6, s_5_36, -1, 1, 0},
00175 /* 37 */ { 5, s_5_37, -1, 1, 0},
00176 /* 38 */ { 6, s_5_38, -1, 1, 0},
00177 /* 39 */ { 4, s_5_39, -1, 1, 0},
00178 /* 40 */ { 5, s_5_40, -1, 1, 0},
00179 /* 41 */ { 4, s_5_41, -1, 1, 0},
00180 /* 42 */ { 7, s_5_42, -1, 1, 0},
00181 /* 43 */ { 7, s_5_43, -1, 1, 0},
00182 /* 44 */ { 4, s_5_44, -1, 8, 0}
00183 };
00184 
00185 static const symbol s_6_0[3] = { 'a', 'd', 'a' };
00186 static const symbol s_6_1[3] = { 'i', 'd', 'a' };
00187 static const symbol s_6_2[2] = { 'i', 'a' };
00188 static const symbol s_6_3[4] = { 'a', 'r', 'i', 'a' };
00189 static const symbol s_6_4[4] = { 'e', 'r', 'i', 'a' };
00190 static const symbol s_6_5[4] = { 'i', 'r', 'i', 'a' };
00191 static const symbol s_6_6[3] = { 'a', 'r', 'a' };
00192 static const symbol s_6_7[3] = { 'e', 'r', 'a' };
00193 static const symbol s_6_8[3] = { 'i', 'r', 'a' };
00194 static const symbol s_6_9[3] = { 'a', 'v', 'a' };
00195 static const symbol s_6_10[4] = { 'a', 's', 's', 'e' };
00196 static const symbol s_6_11[4] = { 'e', 's', 's', 'e' };
00197 static const symbol s_6_12[4] = { 'i', 's', 's', 'e' };
00198 static const symbol s_6_13[4] = { 'a', 's', 't', 'e' };
00199 static const symbol s_6_14[4] = { 'e', 's', 't', 'e' };
00200 static const symbol s_6_15[4] = { 'i', 's', 't', 'e' };
00201 static const symbol s_6_16[2] = { 'e', 'i' };
00202 static const symbol s_6_17[4] = { 'a', 'r', 'e', 'i' };
00203 static const symbol s_6_18[4] = { 'e', 'r', 'e', 'i' };
00204 static const symbol s_6_19[4] = { 'i', 'r', 'e', 'i' };
00205 static const symbol s_6_20[2] = { 'a', 'm' };
00206 static const symbol s_6_21[3] = { 'i', 'a', 'm' };
00207 static const symbol s_6_22[5] = { 'a', 'r', 'i', 'a', 'm' };
00208 static const symbol s_6_23[5] = { 'e', 'r', 'i', 'a', 'm' };
00209 static const symbol s_6_24[5] = { 'i', 'r', 'i', 'a', 'm' };
00210 static const symbol s_6_25[4] = { 'a', 'r', 'a', 'm' };
00211 static const symbol s_6_26[4] = { 'e', 'r', 'a', 'm' };
00212 static const symbol s_6_27[4] = { 'i', 'r', 'a', 'm' };
00213 static const symbol s_6_28[4] = { 'a', 'v', 'a', 'm' };
00214 static const symbol s_6_29[2] = { 'e', 'm' };
00215 static const symbol s_6_30[4] = { 'a', 'r', 'e', 'm' };
00216 static const symbol s_6_31[4] = { 'e', 'r', 'e', 'm' };
00217 static const symbol s_6_32[4] = { 'i', 'r', 'e', 'm' };
00218 static const symbol s_6_33[5] = { 'a', 's', 's', 'e', 'm' };
00219 static const symbol s_6_34[5] = { 'e', 's', 's', 'e', 'm' };
00220 static const symbol s_6_35[5] = { 'i', 's', 's', 'e', 'm' };
00221 static const symbol s_6_36[3] = { 'a', 'd', 'o' };
00222 static const symbol s_6_37[3] = { 'i', 'd', 'o' };
00223 static const symbol s_6_38[4] = { 'a', 'n', 'd', 'o' };
00224 static const symbol s_6_39[4] = { 'e', 'n', 'd', 'o' };
00225 static const symbol s_6_40[4] = { 'i', 'n', 'd', 'o' };
00226 static const symbol s_6_41[5] = { 'a', 'r', 'a', '~', 'o' };
00227 static const symbol s_6_42[5] = { 'e', 'r', 'a', '~', 'o' };
00228 static const symbol s_6_43[5] = { 'i', 'r', 'a', '~', 'o' };
00229 static const symbol s_6_44[2] = { 'a', 'r' };
00230 static const symbol s_6_45[2] = { 'e', 'r' };
00231 static const symbol s_6_46[2] = { 'i', 'r' };
00232 static const symbol s_6_47[2] = { 'a', 's' };
00233 static const symbol s_6_48[4] = { 'a', 'd', 'a', 's' };
00234 static const symbol s_6_49[4] = { 'i', 'd', 'a', 's' };
00235 static const symbol s_6_50[3] = { 'i', 'a', 's' };
00236 static const symbol s_6_51[5] = { 'a', 'r', 'i', 'a', 's' };
00237 static const symbol s_6_52[5] = { 'e', 'r', 'i', 'a', 's' };
00238 static const symbol s_6_53[5] = { 'i', 'r', 'i', 'a', 's' };
00239 static const symbol s_6_54[4] = { 'a', 'r', 'a', 's' };
00240 static const symbol s_6_55[4] = { 'e', 'r', 'a', 's' };
00241 static const symbol s_6_56[4] = { 'i', 'r', 'a', 's' };
00242 static const symbol s_6_57[4] = { 'a', 'v', 'a', 's' };
00243 static const symbol s_6_58[2] = { 'e', 's' };
00244 static const symbol s_6_59[5] = { 'a', 'r', 'd', 'e', 's' };
00245 static const symbol s_6_60[5] = { 'e', 'r', 'd', 'e', 's' };
00246 static const symbol s_6_61[5] = { 'i', 'r', 'd', 'e', 's' };
00247 static const symbol s_6_62[4] = { 'a', 'r', 'e', 's' };
00248 static const symbol s_6_63[4] = { 'e', 'r', 'e', 's' };
00249 static const symbol s_6_64[4] = { 'i', 'r', 'e', 's' };
00250 static const symbol s_6_65[5] = { 'a', 's', 's', 'e', 's' };
00251 static const symbol s_6_66[5] = { 'e', 's', 's', 'e', 's' };
00252 static const symbol s_6_67[5] = { 'i', 's', 's', 'e', 's' };
00253 static const symbol s_6_68[5] = { 'a', 's', 't', 'e', 's' };
00254 static const symbol s_6_69[5] = { 'e', 's', 't', 'e', 's' };
00255 static const symbol s_6_70[5] = { 'i', 's', 't', 'e', 's' };
00256 static const symbol s_6_71[2] = { 'i', 's' };
00257 static const symbol s_6_72[3] = { 'a', 'i', 's' };
00258 static const symbol s_6_73[3] = { 'e', 'i', 's' };
00259 static const symbol s_6_74[5] = { 'a', 'r', 'e', 'i', 's' };
00260 static const symbol s_6_75[5] = { 'e', 'r', 'e', 'i', 's' };
00261 static const symbol s_6_76[5] = { 'i', 'r', 'e', 'i', 's' };
00262 static const symbol s_6_77[5] = { 0xE1, 'r', 'e', 'i', 's' };
00263 static const symbol s_6_78[5] = { 0xE9, 'r', 'e', 'i', 's' };
00264 static const symbol s_6_79[5] = { 0xED, 'r', 'e', 'i', 's' };
00265 static const symbol s_6_80[6] = { 0xE1, 's', 's', 'e', 'i', 's' };
00266 static const symbol s_6_81[6] = { 0xE9, 's', 's', 'e', 'i', 's' };
00267 static const symbol s_6_82[6] = { 0xED, 's', 's', 'e', 'i', 's' };
00268 static const symbol s_6_83[5] = { 0xE1, 'v', 'e', 'i', 's' };
00269 static const symbol s_6_84[4] = { 0xED, 'e', 'i', 's' };
00270 static const symbol s_6_85[6] = { 'a', 'r', 0xED, 'e', 'i', 's' };
00271 static const symbol s_6_86[6] = { 'e', 'r', 0xED, 'e', 'i', 's' };
00272 static const symbol s_6_87[6] = { 'i', 'r', 0xED, 'e', 'i', 's' };
00273 static const symbol s_6_88[4] = { 'a', 'd', 'o', 's' };
00274 static const symbol s_6_89[4] = { 'i', 'd', 'o', 's' };
00275 static const symbol s_6_90[4] = { 'a', 'm', 'o', 's' };
00276 static const symbol s_6_91[6] = { 0xE1, 'r', 'a', 'm', 'o', 's' };
00277 static const symbol s_6_92[6] = { 0xE9, 'r', 'a', 'm', 'o', 's' };
00278 static const symbol s_6_93[6] = { 0xED, 'r', 'a', 'm', 'o', 's' };
00279 static const symbol s_6_94[6] = { 0xE1, 'v', 'a', 'm', 'o', 's' };
00280 static const symbol s_6_95[5] = { 0xED, 'a', 'm', 'o', 's' };
00281 static const symbol s_6_96[7] = { 'a', 'r', 0xED, 'a', 'm', 'o', 's' };
00282 static const symbol s_6_97[7] = { 'e', 'r', 0xED, 'a', 'm', 'o', 's' };
00283 static const symbol s_6_98[7] = { 'i', 'r', 0xED, 'a', 'm', 'o', 's' };
00284 static const symbol s_6_99[4] = { 'e', 'm', 'o', 's' };
00285 static const symbol s_6_100[6] = { 'a', 'r', 'e', 'm', 'o', 's' };
00286 static const symbol s_6_101[6] = { 'e', 'r', 'e', 'm', 'o', 's' };
00287 static const symbol s_6_102[6] = { 'i', 'r', 'e', 'm', 'o', 's' };
00288 static const symbol s_6_103[7] = { 0xE1, 's', 's', 'e', 'm', 'o', 's' };
00289 static const symbol s_6_104[7] = { 0xEA, 's', 's', 'e', 'm', 'o', 's' };
00290 static const symbol s_6_105[7] = { 0xED, 's', 's', 'e', 'm', 'o', 's' };
00291 static const symbol s_6_106[4] = { 'i', 'm', 'o', 's' };
00292 static const symbol s_6_107[5] = { 'a', 'r', 'm', 'o', 's' };
00293 static const symbol s_6_108[5] = { 'e', 'r', 'm', 'o', 's' };
00294 static const symbol s_6_109[5] = { 'i', 'r', 'm', 'o', 's' };
00295 static const symbol s_6_110[4] = { 0xE1, 'm', 'o', 's' };
00296 static const symbol s_6_111[4] = { 'a', 'r', 0xE1, 's' };
00297 static const symbol s_6_112[4] = { 'e', 'r', 0xE1, 's' };
00298 static const symbol s_6_113[4] = { 'i', 'r', 0xE1, 's' };
00299 static const symbol s_6_114[2] = { 'e', 'u' };
00300 static const symbol s_6_115[2] = { 'i', 'u' };
00301 static const symbol s_6_116[2] = { 'o', 'u' };
00302 static const symbol s_6_117[3] = { 'a', 'r', 0xE1 };
00303 static const symbol s_6_118[3] = { 'e', 'r', 0xE1 };
00304 static const symbol s_6_119[3] = { 'i', 'r', 0xE1 };
00305 
00306 static const struct among a_6[120] =
00307 {
00308 /*  0 */ { 3, s_6_0, -1, 1, 0},
00309 /*  1 */ { 3, s_6_1, -1, 1, 0},
00310 /*  2 */ { 2, s_6_2, -1, 1, 0},
00311 /*  3 */ { 4, s_6_3, 2, 1, 0},
00312 /*  4 */ { 4, s_6_4, 2, 1, 0},
00313 /*  5 */ { 4, s_6_5, 2, 1, 0},
00314 /*  6 */ { 3, s_6_6, -1, 1, 0},
00315 /*  7 */ { 3, s_6_7, -1, 1, 0},
00316 /*  8 */ { 3, s_6_8, -1, 1, 0},
00317 /*  9 */ { 3, s_6_9, -1, 1, 0},
00318 /* 10 */ { 4, s_6_10, -1, 1, 0},
00319 /* 11 */ { 4, s_6_11, -1, 1, 0},
00320 /* 12 */ { 4, s_6_12, -1, 1, 0},
00321 /* 13 */ { 4, s_6_13, -1, 1, 0},
00322 /* 14 */ { 4, s_6_14, -1, 1, 0},
00323 /* 15 */ { 4, s_6_15, -1, 1, 0},
00324 /* 16 */ { 2, s_6_16, -1, 1, 0},
00325 /* 17 */ { 4, s_6_17, 16, 1, 0},
00326 /* 18 */ { 4, s_6_18, 16, 1, 0},
00327 /* 19 */ { 4, s_6_19, 16, 1, 0},
00328 /* 20 */ { 2, s_6_20, -1, 1, 0},
00329 /* 21 */ { 3, s_6_21, 20, 1, 0},
00330 /* 22 */ { 5, s_6_22, 21, 1, 0},
00331 /* 23 */ { 5, s_6_23, 21, 1, 0},
00332 /* 24 */ { 5, s_6_24, 21, 1, 0},
00333 /* 25 */ { 4, s_6_25, 20, 1, 0},
00334 /* 26 */ { 4, s_6_26, 20, 1, 0},
00335 /* 27 */ { 4, s_6_27, 20, 1, 0},
00336 /* 28 */ { 4, s_6_28, 20, 1, 0},
00337 /* 29 */ { 2, s_6_29, -1, 1, 0},
00338 /* 30 */ { 4, s_6_30, 29, 1, 0},
00339 /* 31 */ { 4, s_6_31, 29, 1, 0},
00340 /* 32 */ { 4, s_6_32, 29, 1, 0},
00341 /* 33 */ { 5, s_6_33, 29, 1, 0},
00342 /* 34 */ { 5, s_6_34, 29, 1, 0},
00343 /* 35 */ { 5, s_6_35, 29, 1, 0},
00344 /* 36 */ { 3, s_6_36, -1, 1, 0},
00345 /* 37 */ { 3, s_6_37, -1, 1, 0},
00346 /* 38 */ { 4, s_6_38, -1, 1, 0},
00347 /* 39 */ { 4, s_6_39, -1, 1, 0},
00348 /* 40 */ { 4, s_6_40, -1, 1, 0},
00349 /* 41 */ { 5, s_6_41, -1, 1, 0},
00350 /* 42 */ { 5, s_6_42, -1, 1, 0},
00351 /* 43 */ { 5, s_6_43, -1, 1, 0},
00352 /* 44 */ { 2, s_6_44, -1, 1, 0},
00353 /* 45 */ { 2, s_6_45, -1, 1, 0},
00354 /* 46 */ { 2, s_6_46, -1, 1, 0},
00355 /* 47 */ { 2, s_6_47, -1, 1, 0},
00356 /* 48 */ { 4, s_6_48, 47, 1, 0},
00357 /* 49 */ { 4, s_6_49, 47, 1, 0},
00358 /* 50 */ { 3, s_6_50, 47, 1, 0},
00359 /* 51 */ { 5, s_6_51, 50, 1, 0},
00360 /* 52 */ { 5, s_6_52, 50, 1, 0},
00361 /* 53 */ { 5, s_6_53, 50, 1, 0},
00362 /* 54 */ { 4, s_6_54, 47, 1, 0},
00363 /* 55 */ { 4, s_6_55, 47, 1, 0},
00364 /* 56 */ { 4, s_6_56, 47, 1, 0},
00365 /* 57 */ { 4, s_6_57, 47, 1, 0},
00366 /* 58 */ { 2, s_6_58, -1, 1, 0},
00367 /* 59 */ { 5, s_6_59, 58, 1, 0},
00368 /* 60 */ { 5, s_6_60, 58, 1, 0},
00369 /* 61 */ { 5, s_6_61, 58, 1, 0},
00370 /* 62 */ { 4, s_6_62, 58, 1, 0},
00371 /* 63 */ { 4, s_6_63, 58, 1, 0},
00372 /* 64 */ { 4, s_6_64, 58, 1, 0},
00373 /* 65 */ { 5, s_6_65, 58, 1, 0},
00374 /* 66 */ { 5, s_6_66, 58, 1, 0},
00375 /* 67 */ { 5, s_6_67, 58, 1, 0},
00376 /* 68 */ { 5, s_6_68, 58, 1, 0},
00377 /* 69 */ { 5, s_6_69, 58, 1, 0},
00378 /* 70 */ { 5, s_6_70, 58, 1, 0},
00379 /* 71 */ { 2, s_6_71, -1, 1, 0},
00380 /* 72 */ { 3, s_6_72, 71, 1, 0},
00381 /* 73 */ { 3, s_6_73, 71, 1, 0},
00382 /* 74 */ { 5, s_6_74, 73, 1, 0},
00383 /* 75 */ { 5, s_6_75, 73, 1, 0},
00384 /* 76 */ { 5, s_6_76, 73, 1, 0},
00385 /* 77 */ { 5, s_6_77, 73, 1, 0},
00386 /* 78 */ { 5, s_6_78, 73, 1, 0},
00387 /* 79 */ { 5, s_6_79, 73, 1, 0},
00388 /* 80 */ { 6, s_6_80, 73, 1, 0},
00389 /* 81 */ { 6, s_6_81, 73, 1, 0},
00390 /* 82 */ { 6, s_6_82, 73, 1, 0},
00391 /* 83 */ { 5, s_6_83, 73, 1, 0},
00392 /* 84 */ { 4, s_6_84, 73, 1, 0},
00393 /* 85 */ { 6, s_6_85, 84, 1, 0},
00394 /* 86 */ { 6, s_6_86, 84, 1, 0},
00395 /* 87 */ { 6, s_6_87, 84, 1, 0},
00396 /* 88 */ { 4, s_6_88, -1, 1, 0},
00397 /* 89 */ { 4, s_6_89, -1, 1, 0},
00398 /* 90 */ { 4, s_6_90, -1, 1, 0},
00399 /* 91 */ { 6, s_6_91, 90, 1, 0},
00400 /* 92 */ { 6, s_6_92, 90, 1, 0},
00401 /* 93 */ { 6, s_6_93, 90, 1, 0},
00402 /* 94 */ { 6, s_6_94, 90, 1, 0},
00403 /* 95 */ { 5, s_6_95, 90, 1, 0},
00404 /* 96 */ { 7, s_6_96, 95, 1, 0},
00405 /* 97 */ { 7, s_6_97, 95, 1, 0},
00406 /* 98 */ { 7, s_6_98, 95, 1, 0},
00407 /* 99 */ { 4, s_6_99, -1, 1, 0},
00408 /*100 */ { 6, s_6_100, 99, 1, 0},
00409 /*101 */ { 6, s_6_101, 99, 1, 0},
00410 /*102 */ { 6, s_6_102, 99, 1, 0},
00411 /*103 */ { 7, s_6_103, 99, 1, 0},
00412 /*104 */ { 7, s_6_104, 99, 1, 0},
00413 /*105 */ { 7, s_6_105, 99, 1, 0},
00414 /*106 */ { 4, s_6_106, -1, 1, 0},
00415 /*107 */ { 5, s_6_107, -1, 1, 0},
00416 /*108 */ { 5, s_6_108, -1, 1, 0},
00417 /*109 */ { 5, s_6_109, -1, 1, 0},
00418 /*110 */ { 4, s_6_110, -1, 1, 0},
00419 /*111 */ { 4, s_6_111, -1, 1, 0},
00420 /*112 */ { 4, s_6_112, -1, 1, 0},
00421 /*113 */ { 4, s_6_113, -1, 1, 0},
00422 /*114 */ { 2, s_6_114, -1, 1, 0},
00423 /*115 */ { 2, s_6_115, -1, 1, 0},
00424 /*116 */ { 2, s_6_116, -1, 1, 0},
00425 /*117 */ { 3, s_6_117, -1, 1, 0},
00426 /*118 */ { 3, s_6_118, -1, 1, 0},
00427 /*119 */ { 3, s_6_119, -1, 1, 0}
00428 };
00429 
00430 static const symbol s_7_0[1] = { 'a' };
00431 static const symbol s_7_1[1] = { 'i' };
00432 static const symbol s_7_2[1] = { 'o' };
00433 static const symbol s_7_3[2] = { 'o', 's' };
00434 static const symbol s_7_4[1] = { 0xE1 };
00435 static const symbol s_7_5[1] = { 0xED };
00436 static const symbol s_7_6[1] = { 0xF3 };
00437 
00438 static const struct among a_7[7] =
00439 {
00440 /*  0 */ { 1, s_7_0, -1, 1, 0},
00441 /*  1 */ { 1, s_7_1, -1, 1, 0},
00442 /*  2 */ { 1, s_7_2, -1, 1, 0},
00443 /*  3 */ { 2, s_7_3, -1, 1, 0},
00444 /*  4 */ { 1, s_7_4, -1, 1, 0},
00445 /*  5 */ { 1, s_7_5, -1, 1, 0},
00446 /*  6 */ { 1, s_7_6, -1, 1, 0}
00447 };
00448 
00449 static const symbol s_8_0[1] = { 'e' };
00450 static const symbol s_8_1[1] = { 0xE7 };
00451 static const symbol s_8_2[1] = { 0xE9 };
00452 static const symbol s_8_3[1] = { 0xEA };
00453 
00454 static const struct among a_8[4] =
00455 {
00456 /*  0 */ { 1, s_8_0, -1, 1, 0},
00457 /*  1 */ { 1, s_8_1, -1, 2, 0},
00458 /*  2 */ { 1, s_8_2, -1, 1, 0},
00459 /*  3 */ { 1, s_8_3, -1, 1, 0}
00460 };
00461 
00462 static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 19, 12, 2 };
00463 
00464 static const symbol s_0[] = { 'a', '~' };
00465 static const symbol s_1[] = { 'o', '~' };
00466 static const symbol s_2[] = { 0xE3 };
00467 static const symbol s_3[] = { 0xF5 };
00468 static const symbol s_4[] = { 'l', 'o', 'g' };
00469 static const symbol s_5[] = { 'u' };
00470 static const symbol s_6[] = { 'e', 'n', 't', 'e' };
00471 static const symbol s_7[] = { 'a', 't' };
00472 static const symbol s_8[] = { 'a', 't' };
00473 static const symbol s_9[] = { 'e' };
00474 static const symbol s_10[] = { 'i', 'r' };
00475 static const symbol s_11[] = { 'u' };
00476 static const symbol s_12[] = { 'g' };
00477 static const symbol s_13[] = { 'i' };
00478 static const symbol s_14[] = { 'c' };
00479 static const symbol s_15[] = { 'c' };
00480 static const symbol s_16[] = { 'i' };
00481 static const symbol s_17[] = { 'c' };
00482 
00483 static int r_prelude(struct SN_env * z) {
00484     int among_var;
00485     while(1) { /* repeat, line 36 */
00486         int c1 = z->c;
00487         z->bra = z->c; /* [, line 37 */
00488         if (z->c >= z->l || (z->p[z->c + 0] != 227 && z->p[z->c + 0] != 245)) among_var = 3; else
00489         among_var = find_among(z, a_0, 3); /* substring, line 37 */
00490         if (!(among_var)) goto lab0;
00491         z->ket = z->c; /* ], line 37 */
00492         switch(among_var) {
00493             case 0: goto lab0;
00494             case 1:
00495                 {   int ret = slice_from_s(z, 2, s_0); /* <-, line 38 */
00496                     if (ret < 0) return ret;
00497                 }
00498                 break;
00499             case 2:
00500                 {   int ret = slice_from_s(z, 2, s_1); /* <-, line 39 */
00501                     if (ret < 0) return ret;
00502                 }
00503                 break;
00504             case 3:
00505                 if (z->c >= z->l) goto lab0;
00506                 z->c++; /* next, line 40 */
00507                 break;
00508         }
00509         continue;
00510     lab0:
00511         z->c = c1;
00512         break;
00513     }
00514     return 1;
00515 }
00516 
00517 static int r_mark_regions(struct SN_env * z) {
00518     z->I[0] = z->l;
00519     z->I[1] = z->l;
00520     z->I[2] = z->l;
00521     {   int c1 = z->c; /* do, line 50 */
00522         {   int c2 = z->c; /* or, line 52 */
00523             if (in_grouping(z, g_v, 97, 250, 0)) goto lab2;
00524             {   int c3 = z->c; /* or, line 51 */
00525                 if (out_grouping(z, g_v, 97, 250, 0)) goto lab4;
00526                 {    /* gopast */ /* grouping v, line 51 */
00527                     int ret = out_grouping(z, g_v, 97, 250, 1);
00528                     if (ret < 0) goto lab4;
00529                     z->c += ret;
00530                 }
00531                 goto lab3;
00532             lab4:
00533                 z->c = c3;
00534                 if (in_grouping(z, g_v, 97, 250, 0)) goto lab2;
00535                 {    /* gopast */ /* non v, line 51 */
00536                     int ret = in_grouping(z, g_v, 97, 250, 1);
00537                     if (ret < 0) goto lab2;
00538                     z->c += ret;
00539                 }
00540             }
00541         lab3:
00542             goto lab1;
00543         lab2:
00544             z->c = c2;
00545             if (out_grouping(z, g_v, 97, 250, 0)) goto lab0;
00546             {   int c4 = z->c; /* or, line 53 */
00547                 if (out_grouping(z, g_v, 97, 250, 0)) goto lab6;
00548                 {    /* gopast */ /* grouping v, line 53 */
00549                     int ret = out_grouping(z, g_v, 97, 250, 1);
00550                     if (ret < 0) goto lab6;
00551                     z->c += ret;
00552                 }
00553                 goto lab5;
00554             lab6:
00555                 z->c = c4;
00556                 if (in_grouping(z, g_v, 97, 250, 0)) goto lab0;
00557                 if (z->c >= z->l) goto lab0;
00558                 z->c++; /* next, line 53 */
00559             }
00560         lab5:
00561             ;
00562         }
00563     lab1:
00564         z->I[0] = z->c; /* setmark pV, line 54 */
00565     lab0:
00566         z->c = c1;
00567     }
00568     {   int c5 = z->c; /* do, line 56 */
00569         {    /* gopast */ /* grouping v, line 57 */
00570             int ret = out_grouping(z, g_v, 97, 250, 1);
00571             if (ret < 0) goto lab7;
00572             z->c += ret;
00573         }
00574         {    /* gopast */ /* non v, line 57 */
00575             int ret = in_grouping(z, g_v, 97, 250, 1);
00576             if (ret < 0) goto lab7;
00577             z->c += ret;
00578         }
00579         z->I[1] = z->c; /* setmark p1, line 57 */
00580         {    /* gopast */ /* grouping v, line 58 */
00581             int ret = out_grouping(z, g_v, 97, 250, 1);
00582             if (ret < 0) goto lab7;
00583             z->c += ret;
00584         }
00585         {    /* gopast */ /* non v, line 58 */
00586             int ret = in_grouping(z, g_v, 97, 250, 1);
00587             if (ret < 0) goto lab7;
00588             z->c += ret;
00589         }
00590         z->I[2] = z->c; /* setmark p2, line 58 */
00591     lab7:
00592         z->c = c5;
00593     }
00594     return 1;
00595 }
00596 
00597 static int r_postlude(struct SN_env * z) {
00598     int among_var;
00599     while(1) { /* repeat, line 62 */
00600         int c1 = z->c;
00601         z->bra = z->c; /* [, line 63 */
00602         if (z->c + 1 >= z->l || z->p[z->c + 1] != 126) among_var = 3; else
00603         among_var = find_among(z, a_1, 3); /* substring, line 63 */
00604         if (!(among_var)) goto lab0;
00605         z->ket = z->c; /* ], line 63 */
00606         switch(among_var) {
00607             case 0: goto lab0;
00608             case 1:
00609                 {   int ret = slice_from_s(z, 1, s_2); /* <-, line 64 */
00610                     if (ret < 0) return ret;
00611                 }
00612                 break;
00613             case 2:
00614                 {   int ret = slice_from_s(z, 1, s_3); /* <-, line 65 */
00615                     if (ret < 0) return ret;
00616                 }
00617                 break;
00618             case 3:
00619                 if (z->c >= z->l) goto lab0;
00620                 z->c++; /* next, line 66 */
00621                 break;
00622         }
00623         continue;
00624     lab0:
00625         z->c = c1;
00626         break;
00627     }
00628     return 1;
00629 }
00630 
00631 static int r_RV(struct SN_env * z) {
00632     if (!(z->I[0] <= z->c)) return 0;
00633     return 1;
00634 }
00635 
00636 static int r_R1(struct SN_env * z) {
00637     if (!(z->I[1] <= z->c)) return 0;
00638     return 1;
00639 }
00640 
00641 static int r_R2(struct SN_env * z) {
00642     if (!(z->I[2] <= z->c)) return 0;
00643     return 1;
00644 }
00645 
00646 static int r_standard_suffix(struct SN_env * z) {
00647     int among_var;
00648     z->ket = z->c; /* [, line 77 */
00649     if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((839714 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
00650     among_var = find_among_b(z, a_5, 45); /* substring, line 77 */
00651     if (!(among_var)) return 0;
00652     z->bra = z->c; /* ], line 77 */
00653     switch(among_var) {
00654         case 0: return 0;
00655         case 1:
00656             {   int ret = r_R2(z);
00657                 if (ret == 0) return 0; /* call R2, line 93 */
00658                 if (ret < 0) return ret;
00659             }
00660             {   int ret = slice_del(z); /* delete, line 93 */
00661                 if (ret < 0) return ret;
00662             }
00663             break;
00664         case 2:
00665             {   int ret = r_R2(z);
00666                 if (ret == 0) return 0; /* call R2, line 98 */
00667                 if (ret < 0) return ret;
00668             }
00669             {   int ret = slice_from_s(z, 3, s_4); /* <-, line 98 */
00670                 if (ret < 0) return ret;
00671             }
00672             break;
00673         case 3:
00674             {   int ret = r_R2(z);
00675                 if (ret == 0) return 0; /* call R2, line 102 */
00676                 if (ret < 0) return ret;
00677             }
00678             {   int ret = slice_from_s(z, 1, s_5); /* <-, line 102 */
00679                 if (ret < 0) return ret;
00680             }
00681             break;
00682         case 4:
00683             {   int ret = r_R2(z);
00684                 if (ret == 0) return 0; /* call R2, line 106 */
00685                 if (ret < 0) return ret;
00686             }
00687             {   int ret = slice_from_s(z, 4, s_6); /* <-, line 106 */
00688                 if (ret < 0) return ret;
00689             }
00690             break;
00691         case 5:
00692             {   int ret = r_R1(z);
00693                 if (ret == 0) return 0; /* call R1, line 110 */
00694                 if (ret < 0) return ret;
00695             }
00696             {   int ret = slice_del(z); /* delete, line 110 */
00697                 if (ret < 0) return ret;
00698             }
00699             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 111 */
00700                 z->ket = z->c; /* [, line 112 */
00701                 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 lab0; }
00702                 among_var = find_among_b(z, a_2, 4); /* substring, line 112 */
00703                 if (!(among_var)) { z->c = z->l - m_keep; goto lab0; }
00704                 z->bra = z->c; /* ], line 112 */
00705                 {   int ret = r_R2(z);
00706                     if (ret == 0) { z->c = z->l - m_keep; goto lab0; } /* call R2, line 112 */
00707                     if (ret < 0) return ret;
00708                 }
00709                 {   int ret = slice_del(z); /* delete, line 112 */
00710                     if (ret < 0) return ret;
00711                 }
00712                 switch(among_var) {
00713                     case 0: { z->c = z->l - m_keep; goto lab0; }
00714                     case 1:
00715                         z->ket = z->c; /* [, line 113 */
00716                         if (!(eq_s_b(z, 2, s_7))) { z->c = z->l - m_keep; goto lab0; }
00717                         z->bra = z->c; /* ], line 113 */
00718                         {   int ret = r_R2(z);
00719                             if (ret == 0) { z->c = z->l - m_keep; goto lab0; } /* call R2, line 113 */
00720                             if (ret < 0) return ret;
00721                         }
00722                         {   int ret = slice_del(z); /* delete, line 113 */
00723                             if (ret < 0) return ret;
00724                         }
00725                         break;
00726                 }
00727             lab0:
00728                 ;
00729             }
00730             break;
00731         case 6:
00732             {   int ret = r_R2(z);
00733                 if (ret == 0) return 0; /* call R2, line 122 */
00734                 if (ret < 0) return ret;
00735             }
00736             {   int ret = slice_del(z); /* delete, line 122 */
00737                 if (ret < 0) return ret;
00738             }
00739             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 123 */
00740                 z->ket = z->c; /* [, line 124 */
00741                 if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 101 && z->p[z->c - 1] != 108)) { z->c = z->l - m_keep; goto lab1; }
00742                 among_var = find_among_b(z, a_3, 3); /* substring, line 124 */
00743                 if (!(among_var)) { z->c = z->l - m_keep; goto lab1; }
00744                 z->bra = z->c; /* ], line 124 */
00745                 switch(among_var) {
00746                     case 0: { z->c = z->l - m_keep; goto lab1; }
00747                     case 1:
00748                         {   int ret = r_R2(z);
00749                             if (ret == 0) { z->c = z->l - m_keep; goto lab1; } /* call R2, line 127 */
00750                             if (ret < 0) return ret;
00751                         }
00752                         {   int ret = slice_del(z); /* delete, line 127 */
00753                             if (ret < 0) return ret;
00754                         }
00755                         break;
00756                 }
00757             lab1:
00758                 ;
00759             }
00760             break;
00761         case 7:
00762             {   int ret = r_R2(z);
00763                 if (ret == 0) return 0; /* call R2, line 134 */
00764                 if (ret < 0) return ret;
00765             }
00766             {   int ret = slice_del(z); /* delete, line 134 */
00767                 if (ret < 0) return ret;
00768             }
00769             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 135 */
00770                 z->ket = z->c; /* [, line 136 */
00771                 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 lab2; }
00772                 among_var = find_among_b(z, a_4, 3); /* substring, line 136 */
00773                 if (!(among_var)) { z->c = z->l - m_keep; goto lab2; }
00774                 z->bra = z->c; /* ], line 136 */
00775                 switch(among_var) {
00776                     case 0: { z->c = z->l - m_keep; goto lab2; }
00777                     case 1:
00778                         {   int ret = r_R2(z);
00779                             if (ret == 0) { z->c = z->l - m_keep; goto lab2; } /* call R2, line 139 */
00780                             if (ret < 0) return ret;
00781                         }
00782                         {   int ret = slice_del(z); /* delete, line 139 */
00783                             if (ret < 0) return ret;
00784                         }
00785                         break;
00786                 }
00787             lab2:
00788                 ;
00789             }
00790             break;
00791         case 8:
00792             {   int ret = r_R2(z);
00793                 if (ret == 0) return 0; /* call R2, line 146 */
00794                 if (ret < 0) return ret;
00795             }
00796             {   int ret = slice_del(z); /* delete, line 146 */
00797                 if (ret < 0) return ret;
00798             }
00799             {   int m_keep = z->l - z->c;/* (void) m_keep;*/ /* try, line 147 */
00800                 z->ket = z->c; /* [, line 148 */
00801                 if (!(eq_s_b(z, 2, s_8))) { z->c = z->l - m_keep; goto lab3; }
00802                 z->bra = z->c; /* ], line 148 */
00803                 {   int ret = r_R2(z);
00804                     if (ret == 0) { z->c = z->l - m_keep; goto lab3; } /* call R2, line 148 */
00805                     if (ret < 0) return ret;
00806                 }
00807                 {   int ret = slice_del(z); /* delete, line 148 */
00808                     if (ret < 0) return ret;
00809                 }
00810             lab3:
00811                 ;
00812             }
00813             break;
00814         case 9:
00815             {   int ret = r_RV(z);
00816                 if (ret == 0) return 0; /* call RV, line 153 */
00817                 if (ret < 0) return ret;
00818             }
00819             if (!(eq_s_b(z, 1, s_9))) return 0;
00820             {   int ret = slice_from_s(z, 2, s_10); /* <-, line 154 */
00821                 if (ret < 0) return ret;
00822             }
00823             break;
00824     }
00825     return 1;
00826 }
00827 
00828 static int r_verb_suffix(struct SN_env * z) {
00829     int among_var;
00830     {   int mlimit; /* setlimit, line 159 */
00831         int m1 = z->l - z->c; (void)m1;
00832         if (z->c < z->I[0]) return 0;
00833         z->c = z->I[0]; /* tomark, line 159 */
00834         mlimit = z->lb; z->lb = z->c;
00835         z->c = z->l - m1;
00836         z->ket = z->c; /* [, line 160 */
00837         among_var = find_among_b(z, a_6, 120); /* substring, line 160 */
00838         if (!(among_var)) { z->lb = mlimit; return 0; }
00839         z->bra = z->c; /* ], line 160 */
00840         switch(among_var) {
00841             case 0: { z->lb = mlimit; return 0; }
00842             case 1:
00843                 {   int ret = slice_del(z); /* delete, line 179 */
00844                     if (ret < 0) return ret;
00845                 }
00846                 break;
00847         }
00848         z->lb = mlimit;
00849     }
00850     return 1;
00851 }
00852 
00853 static int r_residual_suffix(struct SN_env * z) {
00854     int among_var;
00855     z->ket = z->c; /* [, line 184 */
00856     among_var = find_among_b(z, a_7, 7); /* substring, line 184 */
00857     if (!(among_var)) return 0;
00858     z->bra = z->c; /* ], line 184 */
00859     switch(among_var) {
00860         case 0: return 0;
00861         case 1:
00862             {   int ret = r_RV(z);
00863                 if (ret == 0) return 0; /* call RV, line 187 */
00864                 if (ret < 0) return ret;
00865             }
00866             {   int ret = slice_del(z); /* delete, line 187 */
00867                 if (ret < 0) return ret;
00868             }
00869             break;
00870     }
00871     return 1;
00872 }
00873 
00874 static int r_residual_form(struct SN_env * z) {
00875     int among_var;
00876     z->ket = z->c; /* [, line 192 */
00877     among_var = find_among_b(z, a_8, 4); /* substring, line 192 */
00878     if (!(among_var)) return 0;
00879     z->bra = z->c; /* ], line 192 */
00880     switch(among_var) {
00881         case 0: return 0;
00882         case 1:
00883             {   int ret = r_RV(z);
00884                 if (ret == 0) return 0; /* call RV, line 194 */
00885                 if (ret < 0) return ret;
00886             }
00887             {   int ret = slice_del(z); /* delete, line 194 */
00888                 if (ret < 0) return ret;
00889             }
00890             z->ket = z->c; /* [, line 194 */
00891             {   int m1 = z->l - z->c; (void)m1; /* or, line 194 */
00892                 if (!(eq_s_b(z, 1, s_11))) goto lab1;
00893                 z->bra = z->c; /* ], line 194 */
00894                 {   int m_test = z->l - z->c; /* test, line 194 */
00895                     if (!(eq_s_b(z, 1, s_12))) goto lab1;
00896                     z->c = z->l - m_test;
00897                 }
00898                 goto lab0;
00899             lab1:
00900                 z->c = z->l - m1;
00901                 if (!(eq_s_b(z, 1, s_13))) return 0;
00902                 z->bra = z->c; /* ], line 195 */
00903                 {   int m_test = z->l - z->c; /* test, line 195 */
00904                     if (!(eq_s_b(z, 1, s_14))) return 0;
00905                     z->c = z->l - m_test;
00906                 }
00907             }
00908         lab0:
00909             {   int ret = r_RV(z);
00910                 if (ret == 0) return 0; /* call RV, line 195 */
00911                 if (ret < 0) return ret;
00912             }
00913             {   int ret = slice_del(z); /* delete, line 195 */
00914                 if (ret < 0) return ret;
00915             }
00916             break;
00917         case 2:
00918             {   int ret = slice_from_s(z, 1, s_15); /* <-, line 196 */
00919                 if (ret < 0) return ret;
00920             }
00921             break;
00922     }
00923     return 1;
00924 }
00925 
00926 extern int portuguese_ISO_8859_1_stem(struct SN_env * z) {
00927     {   int c1 = z->c; /* do, line 202 */
00928         {   int ret = r_prelude(z);
00929             if (ret == 0) goto lab0; /* call prelude, line 202 */
00930             if (ret < 0) return ret;
00931         }
00932     lab0:
00933         z->c = c1;
00934     }
00935     {   int c2 = z->c; /* do, line 203 */
00936         {   int ret = r_mark_regions(z);
00937             if (ret == 0) goto lab1; /* call mark_regions, line 203 */
00938             if (ret < 0) return ret;
00939         }
00940     lab1:
00941         z->c = c2;
00942     }
00943     z->lb = z->c; z->c = z->l; /* backwards, line 204 */
00944 
00945     {   int m3 = z->l - z->c; (void)m3; /* do, line 205 */
00946         {   int m4 = z->l - z->c; (void)m4; /* or, line 209 */
00947             {   int m5 = z->l - z->c; (void)m5; /* and, line 207 */
00948                 {   int m6 = z->l - z->c; (void)m6; /* or, line 206 */
00949                     {   int ret = r_standard_suffix(z);
00950                         if (ret == 0) goto lab6; /* call standard_suffix, line 206 */
00951                         if (ret < 0) return ret;
00952                     }
00953                     goto lab5;
00954                 lab6:
00955                     z->c = z->l - m6;
00956                     {   int ret = r_verb_suffix(z);
00957                         if (ret == 0) goto lab4; /* call verb_suffix, line 206 */
00958                         if (ret < 0) return ret;
00959                     }
00960                 }
00961             lab5:
00962                 z->c = z->l - m5;
00963                 {   int m7 = z->l - z->c; (void)m7; /* do, line 207 */
00964                     z->ket = z->c; /* [, line 207 */
00965                     if (!(eq_s_b(z, 1, s_16))) goto lab7;
00966                     z->bra = z->c; /* ], line 207 */
00967                     {   int m_test = z->l - z->c; /* test, line 207 */
00968                         if (!(eq_s_b(z, 1, s_17))) goto lab7;
00969                         z->c = z->l - m_test;
00970                     }
00971                     {   int ret = r_RV(z);
00972                         if (ret == 0) goto lab7; /* call RV, line 207 */
00973                         if (ret < 0) return ret;
00974                     }
00975                     {   int ret = slice_del(z); /* delete, line 207 */
00976                         if (ret < 0) return ret;
00977                     }
00978                 lab7:
00979                     z->c = z->l - m7;
00980                 }
00981             }
00982             goto lab3;
00983         lab4:
00984             z->c = z->l - m4;
00985             {   int ret = r_residual_suffix(z);
00986                 if (ret == 0) goto lab2; /* call residual_suffix, line 209 */
00987                 if (ret < 0) return ret;
00988             }
00989         }
00990     lab3:
00991     lab2:
00992         z->c = z->l - m3;
00993     }
00994     {   int m8 = z->l - z->c; (void)m8; /* do, line 211 */
00995         {   int ret = r_residual_form(z);
00996             if (ret == 0) goto lab8; /* call residual_form, line 211 */
00997             if (ret < 0) return ret;
00998         }
00999     lab8:
01000         z->c = z->l - m8;
01001     }
01002     z->c = z->lb;
01003     {   int c9 = z->c; /* do, line 213 */
01004         {   int ret = r_postlude(z);
01005             if (ret == 0) goto lab9; /* call postlude, line 213 */
01006             if (ret < 0) return ret;
01007         }
01008     lab9:
01009         z->c = c9;
01010     }
01011     return 1;
01012 }
01013 
01014 extern struct SN_env * portuguese_ISO_8859_1_create_env(void) { return SN_create_env(0, 3, 0); }
01015 
01016 extern void portuguese_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
01017