1 /* This file was generated automatically by the Snowball to ISO C compiler */ 2 /* http://snowballstem.org/ */ 3 4 #include "header.h" 5 6 #ifdef __cplusplus 7 extern "C" { 8 #endif 9 extern int nepali_UTF_8_stem(struct SN_env * z); 10 #ifdef __cplusplus 11 } 12 #endif 13 static int r_remove_category_3(struct SN_env * z); 14 static int r_remove_category_2(struct SN_env * z); 15 static int r_check_category_2(struct SN_env * z); 16 static int r_remove_category_1(struct SN_env * z); 17 #ifdef __cplusplus 18 extern "C" { 19 #endif 20 21 22 extern struct SN_env * nepali_UTF_8_create_env(void); 23 extern void nepali_UTF_8_close_env(struct SN_env * z); 24 25 26 #ifdef __cplusplus 27 } 28 #endif 29 static const symbol s_0_0[6] = { 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x80 }; 30 static const symbol s_0_1[9] = { 0xE0, 0xA4, 0xB2, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87 }; 31 static const symbol s_0_2[6] = { 0xE0, 0xA4, 0xB2, 0xE0, 0xA5, 0x87 }; 32 static const symbol s_0_3[9] = { 0xE0, 0xA4, 0xB2, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x88 }; 33 static const symbol s_0_4[6] = { 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x88 }; 34 static const symbol s_0_5[12] = { 0xE0, 0xA4, 0xB8, 0xE0, 0xA4, 0x81, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x88 }; 35 static const symbol s_0_6[6] = { 0xE0, 0xA4, 0xAE, 0xE0, 0xA5, 0x88 }; 36 static const symbol s_0_7[6] = { 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x8B }; 37 static const symbol s_0_8[9] = { 0xE0, 0xA4, 0xB8, 0xE0, 0xA4, 0x81, 0xE0, 0xA4, 0x97 }; 38 static const symbol s_0_9[9] = { 0xE0, 0xA4, 0xB8, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97 }; 39 static const symbol s_0_10[18] = { 0xE0, 0xA4, 0xAE, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xB0, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0xAB, 0xE0, 0xA4, 0xA4 }; 40 static const symbol s_0_11[6] = { 0xE0, 0xA4, 0xB0, 0xE0, 0xA4, 0xA4 }; 41 static const symbol s_0_12[6] = { 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xBE }; 42 static const symbol s_0_13[6] = { 0xE0, 0xA4, 0xAE, 0xE0, 0xA4, 0xBE }; 43 static const symbol s_0_14[18] = { 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0xB5, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xB0, 0xE0, 0xA4, 0xBE }; 44 static const symbol s_0_15[6] = { 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xBF }; 45 static const symbol s_0_16[9] = { 0xE0, 0xA4, 0xAA, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xBF }; 46 47 static const struct among a_0[17] = 48 { 49 /* 0 */ { 6, s_0_0, -1, 2, 0}, 50 /* 1 */ { 9, s_0_1, -1, 1, 0}, 51 /* 2 */ { 6, s_0_2, -1, 1, 0}, 52 /* 3 */ { 9, s_0_3, -1, 1, 0}, 53 /* 4 */ { 6, s_0_4, -1, 2, 0}, 54 /* 5 */ { 12, s_0_5, -1, 1, 0}, 55 /* 6 */ { 6, s_0_6, -1, 1, 0}, 56 /* 7 */ { 6, s_0_7, -1, 2, 0}, 57 /* 8 */ { 9, s_0_8, -1, 1, 0}, 58 /* 9 */ { 9, s_0_9, -1, 1, 0}, 59 /* 10 */ { 18, s_0_10, -1, 1, 0}, 60 /* 11 */ { 6, s_0_11, -1, 1, 0}, 61 /* 12 */ { 6, s_0_12, -1, 2, 0}, 62 /* 13 */ { 6, s_0_13, -1, 1, 0}, 63 /* 14 */ { 18, s_0_14, -1, 1, 0}, 64 /* 15 */ { 6, s_0_15, -1, 2, 0}, 65 /* 16 */ { 9, s_0_16, -1, 1, 0} 66 }; 67 68 static const symbol s_1_0[3] = { 0xE0, 0xA4, 0x81 }; 69 static const symbol s_1_1[3] = { 0xE0, 0xA4, 0x82 }; 70 static const symbol s_1_2[3] = { 0xE0, 0xA5, 0x88 }; 71 72 static const struct among a_1[3] = 73 { 74 /* 0 */ { 3, s_1_0, -1, -1, 0}, 75 /* 1 */ { 3, s_1_1, -1, -1, 0}, 76 /* 2 */ { 3, s_1_2, -1, -1, 0} 77 }; 78 79 static const symbol s_2_0[3] = { 0xE0, 0xA4, 0x81 }; 80 static const symbol s_2_1[3] = { 0xE0, 0xA4, 0x82 }; 81 static const symbol s_2_2[3] = { 0xE0, 0xA5, 0x88 }; 82 83 static const struct among a_2[3] = 84 { 85 /* 0 */ { 3, s_2_0, -1, 1, 0}, 86 /* 1 */ { 3, s_2_1, -1, 1, 0}, 87 /* 2 */ { 3, s_2_2, -1, 2, 0} 88 }; 89 90 static const symbol s_3_0[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x80 }; 91 static const symbol s_3_1[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x80 }; 92 static const symbol s_3_2[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x80 }; 93 static const symbol s_3_3[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x80 }; 94 static const symbol s_3_4[12] = { 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x96, 0xE0, 0xA5, 0x80 }; 95 static const symbol s_3_5[6] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA5, 0x80 }; 96 static const symbol s_3_6[6] = { 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x80 }; 97 static const symbol s_3_7[6] = { 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x81 }; 98 static const symbol s_3_8[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x81 }; 99 static const symbol s_3_9[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x81 }; 100 static const symbol s_3_10[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x81 }; 101 static const symbol s_3_11[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x81 }; 102 static const symbol s_3_12[9] = { 0xE0, 0xA4, 0xB9, 0xE0, 0xA4, 0xB0, 0xE0, 0xA5, 0x81 }; 103 static const symbol s_3_13[9] = { 0xE0, 0xA4, 0xB9, 0xE0, 0xA4, 0xB0, 0xE0, 0xA5, 0x82 }; 104 static const symbol s_3_14[6] = { 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x87 }; 105 static const symbol s_3_15[6] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA5, 0x87 }; 106 static const symbol s_3_16[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 }; 107 static const symbol s_3_17[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x88 }; 108 static const symbol s_3_18[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x88 }; 109 static const symbol s_3_19[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x88 }; 110 static const symbol s_3_20[6] = { 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x88 }; 111 static const symbol s_3_21[9] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x88 }; 112 static const symbol s_3_22[9] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x88 }; 113 static const symbol s_3_23[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x8B }; 114 static const symbol s_3_24[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x8B }; 115 static const symbol s_3_25[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x8B }; 116 static const symbol s_3_26[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x8B }; 117 static const symbol s_3_27[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA5, 0x8B }; 118 static const symbol s_3_28[6] = { 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x8B }; 119 static const symbol s_3_29[9] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x8B }; 120 static const symbol s_3_30[9] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x8B }; 121 static const symbol s_3_31[6] = { 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B }; 122 static const symbol s_3_32[9] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B }; 123 static const symbol s_3_33[12] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B }; 124 static const symbol s_3_34[9] = { 0xE0, 0xA4, 0xAD, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B }; 125 static const symbol s_3_35[9] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B }; 126 static const symbol s_3_36[12] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B }; 127 static const symbol s_3_37[12] = { 0xE0, 0xA4, 0xA6, 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B }; 128 static const symbol s_3_38[6] = { 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x8C }; 129 static const symbol s_3_39[9] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x8C }; 130 static const symbol s_3_40[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x8C }; 131 static const symbol s_3_41[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x8C }; 132 static const symbol s_3_42[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x8C }; 133 static const symbol s_3_43[9] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x8C }; 134 static const symbol s_3_44[6] = { 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8C }; 135 static const symbol s_3_45[12] = { 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8C }; 136 static const symbol s_3_46[12] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8C }; 137 static const symbol s_3_47[12] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8C }; 138 static const symbol s_3_48[9] = { 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D }; 139 static const symbol s_3_49[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D }; 140 static const symbol s_3_50[12] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D }; 141 static const symbol s_3_51[15] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D }; 142 static const symbol s_3_52[12] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D }; 143 static const symbol s_3_53[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D }; 144 static const symbol s_3_54[12] = { 0xE0, 0xA4, 0xB2, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D }; 145 static const symbol s_3_55[12] = { 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D }; 146 static const symbol s_3_56[12] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D }; 147 static const symbol s_3_57[9] = { 0xE0, 0xA4, 0xAA, 0xE0, 0xA4, 0xB0, 0xE0, 0xA5, 0x8D }; 148 static const symbol s_3_58[9] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 149 static const symbol s_3_59[15] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 150 static const symbol s_3_60[12] = { 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 151 static const symbol s_3_61[12] = { 0xE0, 0xA4, 0xB9, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 152 static const symbol s_3_62[9] = { 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 153 static const symbol s_3_63[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 154 static const symbol s_3_64[12] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 155 static const symbol s_3_65[15] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 156 static const symbol s_3_66[12] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 157 static const symbol s_3_67[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x9B, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 158 static const symbol s_3_68[9] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 159 static const symbol s_3_69[12] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xB8, 0xE0, 0xA5, 0x8D }; 160 static const symbol s_3_70[9] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x8F }; 161 static const symbol s_3_71[3] = { 0xE0, 0xA4, 0x9B }; 162 static const symbol s_3_72[6] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x9B }; 163 static const symbol s_3_73[6] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B }; 164 static const symbol s_3_74[9] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B }; 165 static const symbol s_3_75[15] = { 0xE0, 0xA4, 0xB9, 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x9B }; 166 static const symbol s_3_76[15] = { 0xE0, 0xA4, 0xB9, 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0x9B }; 167 static const symbol s_3_77[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0x9B }; 168 static const symbol s_3_78[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0x9B }; 169 static const symbol s_3_79[6] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x9B }; 170 static const symbol s_3_80[6] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x9B }; 171 static const symbol s_3_81[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xBE }; 172 static const symbol s_3_82[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xBE }; 173 static const symbol s_3_83[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xBE }; 174 static const symbol s_3_84[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xBE }; 175 static const symbol s_3_85[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xBE }; 176 static const symbol s_3_86[6] = { 0xE0, 0xA4, 0xA6, 0xE0, 0xA4, 0xBE }; 177 static const symbol s_3_87[9] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xA6, 0xE0, 0xA4, 0xBE }; 178 static const symbol s_3_88[9] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xA6, 0xE0, 0xA4, 0xBE }; 179 static const symbol s_3_89[12] = { 0xE0, 0xA4, 0xA6, 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x96, 0xE0, 0xA4, 0xBF }; 180 static const symbol s_3_90[12] = { 0xE0, 0xA4, 0xAE, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA5, 0xE0, 0xA4, 0xBF }; 181 182 static const struct among a_3[91] = 183 { 184 /* 0 */ { 9, s_3_0, -1, 1, 0}, 185 /* 1 */ { 9, s_3_1, -1, 1, 0}, 186 /* 2 */ { 12, s_3_2, 1, 1, 0}, 187 /* 3 */ { 12, s_3_3, 1, 1, 0}, 188 /* 4 */ { 12, s_3_4, -1, 1, 0}, 189 /* 5 */ { 6, s_3_5, -1, 1, 0}, 190 /* 6 */ { 6, s_3_6, -1, 1, 0}, 191 /* 7 */ { 6, s_3_7, -1, 1, 0}, 192 /* 8 */ { 9, s_3_8, 7, 1, 0}, 193 /* 9 */ { 12, s_3_9, 8, 1, 0}, 194 /* 10 */ { 9, s_3_10, 7, 1, 0}, 195 /* 11 */ { 6, s_3_11, -1, 1, 0}, 196 /* 12 */ { 9, s_3_12, -1, 1, 0}, 197 /* 13 */ { 9, s_3_13, -1, 1, 0}, 198 /* 14 */ { 6, s_3_14, -1, 1, 0}, 199 /* 15 */ { 6, s_3_15, -1, 1, 0}, 200 /* 16 */ { 6, s_3_16, -1, 1, 0}, 201 /* 17 */ { 9, s_3_17, -1, 1, 0}, 202 /* 18 */ { 12, s_3_18, 17, 1, 0}, 203 /* 19 */ { 9, s_3_19, -1, 1, 0}, 204 /* 20 */ { 6, s_3_20, -1, 1, 0}, 205 /* 21 */ { 9, s_3_21, 20, 1, 0}, 206 /* 22 */ { 9, s_3_22, 20, 1, 0}, 207 /* 23 */ { 9, s_3_23, -1, 1, 0}, 208 /* 24 */ { 12, s_3_24, 23, 1, 0}, 209 /* 25 */ { 9, s_3_25, -1, 1, 0}, 210 /* 26 */ { 12, s_3_26, 25, 1, 0}, 211 /* 27 */ { 12, s_3_27, 25, 1, 0}, 212 /* 28 */ { 6, s_3_28, -1, 1, 0}, 213 /* 29 */ { 9, s_3_29, 28, 1, 0}, 214 /* 30 */ { 9, s_3_30, 28, 1, 0}, 215 /* 31 */ { 6, s_3_31, -1, 1, 0}, 216 /* 32 */ { 9, s_3_32, 31, 1, 0}, 217 /* 33 */ { 12, s_3_33, 31, 1, 0}, 218 /* 34 */ { 9, s_3_34, 31, 1, 0}, 219 /* 35 */ { 9, s_3_35, 31, 1, 0}, 220 /* 36 */ { 12, s_3_36, 35, 1, 0}, 221 /* 37 */ { 12, s_3_37, 35, 1, 0}, 222 /* 38 */ { 6, s_3_38, -1, 1, 0}, 223 /* 39 */ { 9, s_3_39, 38, 1, 0}, 224 /* 40 */ { 9, s_3_40, 38, 1, 0}, 225 /* 41 */ { 12, s_3_41, 40, 1, 0}, 226 /* 42 */ { 9, s_3_42, 38, 1, 0}, 227 /* 43 */ { 9, s_3_43, 38, 1, 0}, 228 /* 44 */ { 6, s_3_44, -1, 1, 0}, 229 /* 45 */ { 12, s_3_45, 44, 1, 0}, 230 /* 46 */ { 12, s_3_46, 44, 1, 0}, 231 /* 47 */ { 12, s_3_47, 44, 1, 0}, 232 /* 48 */ { 9, s_3_48, -1, 1, 0}, 233 /* 49 */ { 12, s_3_49, 48, 1, 0}, 234 /* 50 */ { 12, s_3_50, 48, 1, 0}, 235 /* 51 */ { 15, s_3_51, 50, 1, 0}, 236 /* 52 */ { 12, s_3_52, 48, 1, 0}, 237 /* 53 */ { 12, s_3_53, 48, 1, 0}, 238 /* 54 */ { 12, s_3_54, -1, 1, 0}, 239 /* 55 */ { 12, s_3_55, -1, 1, 0}, 240 /* 56 */ { 12, s_3_56, -1, 1, 0}, 241 /* 57 */ { 9, s_3_57, -1, 1, 0}, 242 /* 58 */ { 9, s_3_58, -1, 1, 0}, 243 /* 59 */ { 15, s_3_59, 58, 1, 0}, 244 /* 60 */ { 12, s_3_60, -1, 1, 0}, 245 /* 61 */ { 12, s_3_61, -1, 1, 0}, 246 /* 62 */ { 9, s_3_62, -1, 1, 0}, 247 /* 63 */ { 12, s_3_63, 62, 1, 0}, 248 /* 64 */ { 12, s_3_64, 62, 1, 0}, 249 /* 65 */ { 15, s_3_65, 64, 1, 0}, 250 /* 66 */ { 12, s_3_66, 62, 1, 0}, 251 /* 67 */ { 12, s_3_67, 62, 1, 0}, 252 /* 68 */ { 9, s_3_68, -1, 1, 0}, 253 /* 69 */ { 12, s_3_69, 68, 1, 0}, 254 /* 70 */ { 9, s_3_70, -1, 1, 0}, 255 /* 71 */ { 3, s_3_71, -1, 1, 0}, 256 /* 72 */ { 6, s_3_72, 71, 1, 0}, 257 /* 73 */ { 6, s_3_73, 71, 1, 0}, 258 /* 74 */ { 9, s_3_74, 73, 1, 0}, 259 /* 75 */ { 15, s_3_75, 74, 1, 0}, 260 /* 76 */ { 15, s_3_76, 71, 1, 0}, 261 /* 77 */ { 12, s_3_77, 71, 1, 0}, 262 /* 78 */ { 12, s_3_78, 71, 1, 0}, 263 /* 79 */ { 6, s_3_79, 71, 1, 0}, 264 /* 80 */ { 6, s_3_80, 71, 1, 0}, 265 /* 81 */ { 9, s_3_81, -1, 1, 0}, 266 /* 82 */ { 12, s_3_82, 81, 1, 0}, 267 /* 83 */ { 9, s_3_83, -1, 1, 0}, 268 /* 84 */ { 12, s_3_84, 83, 1, 0}, 269 /* 85 */ { 12, s_3_85, 83, 1, 0}, 270 /* 86 */ { 6, s_3_86, -1, 1, 0}, 271 /* 87 */ { 9, s_3_87, 86, 1, 0}, 272 /* 88 */ { 9, s_3_88, 86, 1, 0}, 273 /* 89 */ { 12, s_3_89, -1, 1, 0}, 274 /* 90 */ { 12, s_3_90, -1, 1, 0} 275 }; 276 277 static const symbol s_0[] = { 0xE0, 0xA4, 0x8F }; 278 static const symbol s_1[] = { 0xE0, 0xA5, 0x87 }; 279 static const symbol s_2[] = { 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8C }; 280 static const symbol s_3[] = { 0xE0, 0xA4, 0x9B, 0xE0, 0xA5, 0x8C }; 281 static const symbol s_4[] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x8C }; 282 static const symbol s_5[] = { 0xE0, 0xA4, 0xA5, 0xE0, 0xA5, 0x87 }; 283 static const symbol s_6[] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x8D, 0xE0, 0xA4, 0xB0 }; 284 285 static int r_remove_category_1(struct SN_env * z) { /* backwardmode */ 286 int among_var; 287 z->ket = z->c; /* [, line 54 */ 288 among_var = find_among_b(z, a_0, 17); /* substring, line 54 */ 289 if (!(among_var)) return 0; 290 z->bra = z->c; /* ], line 54 */ 291 switch (among_var) { /* among, line 54 */ 292 case 1: 293 { int ret = slice_del(z); /* delete, line 58 */ 294 if (ret < 0) return ret; 295 } 296 break; 297 case 2: 298 { int m1 = z->l - z->c; (void)m1; /* or, line 59 */ 299 { int m2 = z->l - z->c; (void)m2; /* or, line 59 */ 300 if (!(eq_s_b(z, 3, s_0))) goto lab3; /* literal, line 59 */ 301 goto lab2; 302 lab3: 303 z->c = z->l - m2; 304 if (!(eq_s_b(z, 3, s_1))) goto lab1; /* literal, line 59 */ 305 } 306 lab2: 307 goto lab0; 308 lab1: 309 z->c = z->l - m1; 310 { int ret = slice_del(z); /* delete, line 59 */ 311 if (ret < 0) return ret; 312 } 313 } 314 lab0: 315 break; 316 } 317 return 1; 318 } 319 320 static int r_check_category_2(struct SN_env * z) { /* backwardmode */ 321 z->ket = z->c; /* [, line 64 */ 322 if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 4 || !((262 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 64 */ 323 if (!(find_among_b(z, a_1, 3))) return 0; 324 z->bra = z->c; /* ], line 64 */ 325 return 1; 326 } 327 328 static int r_remove_category_2(struct SN_env * z) { /* backwardmode */ 329 int among_var; 330 z->ket = z->c; /* [, line 70 */ 331 if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 4 || !((262 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 70 */ 332 among_var = find_among_b(z, a_2, 3); 333 if (!(among_var)) return 0; 334 z->bra = z->c; /* ], line 70 */ 335 switch (among_var) { /* among, line 70 */ 336 case 1: 337 { int m1 = z->l - z->c; (void)m1; /* or, line 71 */ 338 if (!(eq_s_b(z, 6, s_2))) goto lab1; /* literal, line 71 */ 339 goto lab0; 340 lab1: 341 z->c = z->l - m1; 342 if (!(eq_s_b(z, 6, s_3))) goto lab2; /* literal, line 71 */ 343 goto lab0; 344 lab2: 345 z->c = z->l - m1; 346 if (!(eq_s_b(z, 6, s_4))) goto lab3; /* literal, line 71 */ 347 goto lab0; 348 lab3: 349 z->c = z->l - m1; 350 if (!(eq_s_b(z, 6, s_5))) return 0; /* literal, line 71 */ 351 } 352 lab0: 353 { int ret = slice_del(z); /* delete, line 71 */ 354 if (ret < 0) return ret; 355 } 356 break; 357 case 2: 358 if (!(eq_s_b(z, 9, s_6))) return 0; /* literal, line 72 */ 359 { int ret = slice_del(z); /* delete, line 72 */ 360 if (ret < 0) return ret; 361 } 362 break; 363 } 364 return 1; 365 } 366 367 static int r_remove_category_3(struct SN_env * z) { /* backwardmode */ 368 z->ket = z->c; /* [, line 77 */ 369 if (!(find_among_b(z, a_3, 91))) return 0; /* substring, line 77 */ 370 z->bra = z->c; /* ], line 77 */ 371 { int ret = slice_del(z); /* delete, line 79 */ 372 if (ret < 0) return ret; 373 } 374 return 1; 375 } 376 377 extern int nepali_UTF_8_stem(struct SN_env * z) { /* forwardmode */ 378 z->lb = z->c; z->c = z->l; /* backwards, line 86 */ 379 380 { int m1 = z->l - z->c; (void)m1; /* do, line 87 */ 381 { int ret = r_remove_category_1(z); /* call remove_category_1, line 87 */ 382 if (ret == 0) goto lab0; 383 if (ret < 0) return ret; 384 } 385 lab0: 386 z->c = z->l - m1; 387 } 388 { int m2 = z->l - z->c; (void)m2; /* do, line 88 */ 389 while(1) { /* repeat, line 89 */ 390 int m3 = z->l - z->c; (void)m3; 391 { int m4 = z->l - z->c; (void)m4; /* do, line 89 */ 392 { int m5 = z->l - z->c; (void)m5; /* and, line 89 */ 393 { int ret = r_check_category_2(z); /* call check_category_2, line 89 */ 394 if (ret == 0) goto lab3; 395 if (ret < 0) return ret; 396 } 397 z->c = z->l - m5; 398 { int ret = r_remove_category_2(z); /* call remove_category_2, line 89 */ 399 if (ret == 0) goto lab3; 400 if (ret < 0) return ret; 401 } 402 } 403 lab3: 404 z->c = z->l - m4; 405 } 406 { int ret = r_remove_category_3(z); /* call remove_category_3, line 89 */ 407 if (ret == 0) goto lab2; 408 if (ret < 0) return ret; 409 } 410 continue; 411 lab2: 412 z->c = z->l - m3; 413 break; 414 } 415 z->c = z->l - m2; 416 } 417 z->c = z->lb; 418 return 1; 419 } 420 421 extern struct SN_env * nepali_UTF_8_create_env(void) { return SN_create_env(0, 0, 0); } 422 423 extern void nepali_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); } 424 425