LCOV - code coverage report
Current view: top level - src/backend/snowball/libstemmer - stem_UTF_8_portuguese.c (source / functions) Hit Total Coverage
Test: PostgreSQL 14devel Lines: 0 358 0.0 %
Date: 2020-09-25 15:06:21 Functions: 0 13 0.0 %
Legend: Lines: hit not hit

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

Generated by: LCOV version 1.13