LCOV - code coverage report
Current view: top level - src/backend/snowball/libstemmer - stem_UTF_8_romanian.c (source / functions) Hit Total Coverage
Test: PostgreSQL 18devel Lines: 0 350 0.0 %
Date: 2025-02-21 17:14:59 Functions: 0 15 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
       2             : 
       3             : #include "header.h"
       4             : 
       5             : #ifdef __cplusplus
       6             : extern "C" {
       7             : #endif
       8             : extern int romanian_UTF_8_stem(struct SN_env * z);
       9             : #ifdef __cplusplus
      10             : }
      11             : #endif
      12             : static int r_vowel_suffix(struct SN_env * z);
      13             : static int r_verb_suffix(struct SN_env * z);
      14             : static int r_combo_suffix(struct SN_env * z);
      15             : static int r_standard_suffix(struct SN_env * z);
      16             : static int r_step_0(struct SN_env * z);
      17             : static int r_R2(struct SN_env * z);
      18             : static int r_R1(struct SN_env * z);
      19             : static int r_RV(struct SN_env * z);
      20             : static int r_mark_regions(struct SN_env * z);
      21             : static int r_postlude(struct SN_env * z);
      22             : static int r_prelude(struct SN_env * z);
      23             : static int r_norm(struct SN_env * z);
      24             : #ifdef __cplusplus
      25             : extern "C" {
      26             : #endif
      27             : 
      28             : 
      29             : extern struct SN_env * romanian_UTF_8_create_env(void);
      30             : extern void romanian_UTF_8_close_env(struct SN_env * z);
      31             : 
      32             : 
      33             : #ifdef __cplusplus
      34             : }
      35             : #endif
      36             : static const symbol s_0_0[2] = { 0xC5, 0x9F };
      37             : static const symbol s_0_1[2] = { 0xC5, 0xA3 };
      38             : 
      39             : static const struct among a_0[2] =
      40             : {
      41             : { 2, s_0_0, -1, 1, 0},
      42             : { 2, s_0_1, -1, 2, 0}
      43             : };
      44             : 
      45             : static const symbol s_1_1[1] = { 'I' };
      46             : static const symbol s_1_2[1] = { 'U' };
      47             : 
      48             : static const struct among a_1[3] =
      49             : {
      50             : { 0, 0, -1, 3, 0},
      51             : { 1, s_1_1, 0, 1, 0},
      52             : { 1, s_1_2, 0, 2, 0}
      53             : };
      54             : 
      55             : static const symbol s_2_0[2] = { 'e', 'a' };
      56             : static const symbol s_2_1[5] = { 'a', 0xC8, 0x9B, 'i', 'a' };
      57             : static const symbol s_2_2[3] = { 'a', 'u', 'a' };
      58             : static const symbol s_2_3[3] = { 'i', 'u', 'a' };
      59             : static const symbol s_2_4[5] = { 'a', 0xC8, 0x9B, 'i', 'e' };
      60             : static const symbol s_2_5[3] = { 'e', 'l', 'e' };
      61             : static const symbol s_2_6[3] = { 'i', 'l', 'e' };
      62             : static const symbol s_2_7[4] = { 'i', 'i', 'l', 'e' };
      63             : static const symbol s_2_8[3] = { 'i', 'e', 'i' };
      64             : static const symbol s_2_9[4] = { 'a', 't', 'e', 'i' };
      65             : static const symbol s_2_10[2] = { 'i', 'i' };
      66             : static const symbol s_2_11[4] = { 'u', 'l', 'u', 'i' };
      67             : static const symbol s_2_12[2] = { 'u', 'l' };
      68             : static const symbol s_2_13[4] = { 'e', 'l', 'o', 'r' };
      69             : static const symbol s_2_14[4] = { 'i', 'l', 'o', 'r' };
      70             : static const symbol s_2_15[5] = { 'i', 'i', 'l', 'o', 'r' };
      71             : 
      72             : static const struct among a_2[16] =
      73             : {
      74             : { 2, s_2_0, -1, 3, 0},
      75             : { 5, s_2_1, -1, 7, 0},
      76             : { 3, s_2_2, -1, 2, 0},
      77             : { 3, s_2_3, -1, 4, 0},
      78             : { 5, s_2_4, -1, 7, 0},
      79             : { 3, s_2_5, -1, 3, 0},
      80             : { 3, s_2_6, -1, 5, 0},
      81             : { 4, s_2_7, 6, 4, 0},
      82             : { 3, s_2_8, -1, 4, 0},
      83             : { 4, s_2_9, -1, 6, 0},
      84             : { 2, s_2_10, -1, 4, 0},
      85             : { 4, s_2_11, -1, 1, 0},
      86             : { 2, s_2_12, -1, 1, 0},
      87             : { 4, s_2_13, -1, 3, 0},
      88             : { 4, s_2_14, -1, 4, 0},
      89             : { 5, s_2_15, 14, 4, 0}
      90             : };
      91             : 
      92             : static const symbol s_3_0[5] = { 'i', 'c', 'a', 'l', 'a' };
      93             : static const symbol s_3_1[5] = { 'i', 'c', 'i', 'v', 'a' };
      94             : static const symbol s_3_2[5] = { 'a', 't', 'i', 'v', 'a' };
      95             : static const symbol s_3_3[5] = { 'i', 't', 'i', 'v', 'a' };
      96             : static const symbol s_3_4[5] = { 'i', 'c', 'a', 'l', 'e' };
      97             : static const symbol s_3_5[7] = { 'a', 0xC8, 0x9B, 'i', 'u', 'n', 'e' };
      98             : static const symbol s_3_6[7] = { 'i', 0xC8, 0x9B, 'i', 'u', 'n', 'e' };
      99             : static const symbol s_3_7[6] = { 'a', 't', 'o', 'a', 'r', 'e' };
     100             : static const symbol s_3_8[6] = { 'i', 't', 'o', 'a', 'r', 'e' };
     101             : static const symbol s_3_9[7] = { 0xC4, 0x83, 't', 'o', 'a', 'r', 'e' };
     102             : static const symbol s_3_10[7] = { 'i', 'c', 'i', 't', 'a', 't', 'e' };
     103             : static const symbol s_3_11[9] = { 'a', 'b', 'i', 'l', 'i', 't', 'a', 't', 'e' };
     104             : static const symbol s_3_12[9] = { 'i', 'b', 'i', 'l', 'i', 't', 'a', 't', 'e' };
     105             : static const symbol s_3_13[7] = { 'i', 'v', 'i', 't', 'a', 't', 'e' };
     106             : static const symbol s_3_14[5] = { 'i', 'c', 'i', 'v', 'e' };
     107             : static const symbol s_3_15[5] = { 'a', 't', 'i', 'v', 'e' };
     108             : static const symbol s_3_16[5] = { 'i', 't', 'i', 'v', 'e' };
     109             : static const symbol s_3_17[5] = { 'i', 'c', 'a', 'l', 'i' };
     110             : static const symbol s_3_18[5] = { 'a', 't', 'o', 'r', 'i' };
     111             : static const symbol s_3_19[7] = { 'i', 'c', 'a', 't', 'o', 'r', 'i' };
     112             : static const symbol s_3_20[5] = { 'i', 't', 'o', 'r', 'i' };
     113             : static const symbol s_3_21[6] = { 0xC4, 0x83, 't', 'o', 'r', 'i' };
     114             : static const symbol s_3_22[7] = { 'i', 'c', 'i', 't', 'a', 't', 'i' };
     115             : static const symbol s_3_23[9] = { 'a', 'b', 'i', 'l', 'i', 't', 'a', 't', 'i' };
     116             : static const symbol s_3_24[7] = { 'i', 'v', 'i', 't', 'a', 't', 'i' };
     117             : static const symbol s_3_25[5] = { 'i', 'c', 'i', 'v', 'i' };
     118             : static const symbol s_3_26[5] = { 'a', 't', 'i', 'v', 'i' };
     119             : static const symbol s_3_27[5] = { 'i', 't', 'i', 'v', 'i' };
     120             : static const symbol s_3_28[7] = { 'i', 'c', 'i', 't', 0xC4, 0x83, 'i' };
     121             : static const symbol s_3_29[9] = { 'a', 'b', 'i', 'l', 'i', 't', 0xC4, 0x83, 'i' };
     122             : static const symbol s_3_30[7] = { 'i', 'v', 'i', 't', 0xC4, 0x83, 'i' };
     123             : static const symbol s_3_31[9] = { 'i', 'c', 'i', 't', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     124             : static const symbol s_3_32[11] = { 'a', 'b', 'i', 'l', 'i', 't', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     125             : static const symbol s_3_33[9] = { 'i', 'v', 'i', 't', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     126             : static const symbol s_3_34[4] = { 'i', 'c', 'a', 'l' };
     127             : static const symbol s_3_35[4] = { 'a', 't', 'o', 'r' };
     128             : static const symbol s_3_36[6] = { 'i', 'c', 'a', 't', 'o', 'r' };
     129             : static const symbol s_3_37[4] = { 'i', 't', 'o', 'r' };
     130             : static const symbol s_3_38[5] = { 0xC4, 0x83, 't', 'o', 'r' };
     131             : static const symbol s_3_39[4] = { 'i', 'c', 'i', 'v' };
     132             : static const symbol s_3_40[4] = { 'a', 't', 'i', 'v' };
     133             : static const symbol s_3_41[4] = { 'i', 't', 'i', 'v' };
     134             : static const symbol s_3_42[6] = { 'i', 'c', 'a', 'l', 0xC4, 0x83 };
     135             : static const symbol s_3_43[6] = { 'i', 'c', 'i', 'v', 0xC4, 0x83 };
     136             : static const symbol s_3_44[6] = { 'a', 't', 'i', 'v', 0xC4, 0x83 };
     137             : static const symbol s_3_45[6] = { 'i', 't', 'i', 'v', 0xC4, 0x83 };
     138             : 
     139             : static const struct among a_3[46] =
     140             : {
     141             : { 5, s_3_0, -1, 4, 0},
     142             : { 5, s_3_1, -1, 4, 0},
     143             : { 5, s_3_2, -1, 5, 0},
     144             : { 5, s_3_3, -1, 6, 0},
     145             : { 5, s_3_4, -1, 4, 0},
     146             : { 7, s_3_5, -1, 5, 0},
     147             : { 7, s_3_6, -1, 6, 0},
     148             : { 6, s_3_7, -1, 5, 0},
     149             : { 6, s_3_8, -1, 6, 0},
     150             : { 7, s_3_9, -1, 5, 0},
     151             : { 7, s_3_10, -1, 4, 0},
     152             : { 9, s_3_11, -1, 1, 0},
     153             : { 9, s_3_12, -1, 2, 0},
     154             : { 7, s_3_13, -1, 3, 0},
     155             : { 5, s_3_14, -1, 4, 0},
     156             : { 5, s_3_15, -1, 5, 0},
     157             : { 5, s_3_16, -1, 6, 0},
     158             : { 5, s_3_17, -1, 4, 0},
     159             : { 5, s_3_18, -1, 5, 0},
     160             : { 7, s_3_19, 18, 4, 0},
     161             : { 5, s_3_20, -1, 6, 0},
     162             : { 6, s_3_21, -1, 5, 0},
     163             : { 7, s_3_22, -1, 4, 0},
     164             : { 9, s_3_23, -1, 1, 0},
     165             : { 7, s_3_24, -1, 3, 0},
     166             : { 5, s_3_25, -1, 4, 0},
     167             : { 5, s_3_26, -1, 5, 0},
     168             : { 5, s_3_27, -1, 6, 0},
     169             : { 7, s_3_28, -1, 4, 0},
     170             : { 9, s_3_29, -1, 1, 0},
     171             : { 7, s_3_30, -1, 3, 0},
     172             : { 9, s_3_31, -1, 4, 0},
     173             : { 11, s_3_32, -1, 1, 0},
     174             : { 9, s_3_33, -1, 3, 0},
     175             : { 4, s_3_34, -1, 4, 0},
     176             : { 4, s_3_35, -1, 5, 0},
     177             : { 6, s_3_36, 35, 4, 0},
     178             : { 4, s_3_37, -1, 6, 0},
     179             : { 5, s_3_38, -1, 5, 0},
     180             : { 4, s_3_39, -1, 4, 0},
     181             : { 4, s_3_40, -1, 5, 0},
     182             : { 4, s_3_41, -1, 6, 0},
     183             : { 6, s_3_42, -1, 4, 0},
     184             : { 6, s_3_43, -1, 4, 0},
     185             : { 6, s_3_44, -1, 5, 0},
     186             : { 6, s_3_45, -1, 6, 0}
     187             : };
     188             : 
     189             : static const symbol s_4_0[3] = { 'i', 'c', 'a' };
     190             : static const symbol s_4_1[5] = { 'a', 'b', 'i', 'l', 'a' };
     191             : static const symbol s_4_2[5] = { 'i', 'b', 'i', 'l', 'a' };
     192             : static const symbol s_4_3[4] = { 'o', 'a', 's', 'a' };
     193             : static const symbol s_4_4[3] = { 'a', 't', 'a' };
     194             : static const symbol s_4_5[3] = { 'i', 't', 'a' };
     195             : static const symbol s_4_6[4] = { 'a', 'n', 't', 'a' };
     196             : static const symbol s_4_7[4] = { 'i', 's', 't', 'a' };
     197             : static const symbol s_4_8[3] = { 'u', 't', 'a' };
     198             : static const symbol s_4_9[3] = { 'i', 'v', 'a' };
     199             : static const symbol s_4_10[2] = { 'i', 'c' };
     200             : static const symbol s_4_11[3] = { 'i', 'c', 'e' };
     201             : static const symbol s_4_12[5] = { 'a', 'b', 'i', 'l', 'e' };
     202             : static const symbol s_4_13[5] = { 'i', 'b', 'i', 'l', 'e' };
     203             : static const symbol s_4_14[4] = { 'i', 's', 'm', 'e' };
     204             : static const symbol s_4_15[4] = { 'i', 'u', 'n', 'e' };
     205             : static const symbol s_4_16[4] = { 'o', 'a', 's', 'e' };
     206             : static const symbol s_4_17[3] = { 'a', 't', 'e' };
     207             : static const symbol s_4_18[5] = { 'i', 't', 'a', 't', 'e' };
     208             : static const symbol s_4_19[3] = { 'i', 't', 'e' };
     209             : static const symbol s_4_20[4] = { 'a', 'n', 't', 'e' };
     210             : static const symbol s_4_21[4] = { 'i', 's', 't', 'e' };
     211             : static const symbol s_4_22[3] = { 'u', 't', 'e' };
     212             : static const symbol s_4_23[3] = { 'i', 'v', 'e' };
     213             : static const symbol s_4_24[3] = { 'i', 'c', 'i' };
     214             : static const symbol s_4_25[5] = { 'a', 'b', 'i', 'l', 'i' };
     215             : static const symbol s_4_26[5] = { 'i', 'b', 'i', 'l', 'i' };
     216             : static const symbol s_4_27[4] = { 'i', 'u', 'n', 'i' };
     217             : static const symbol s_4_28[5] = { 'a', 't', 'o', 'r', 'i' };
     218             : static const symbol s_4_29[3] = { 'o', 's', 'i' };
     219             : static const symbol s_4_30[3] = { 'a', 't', 'i' };
     220             : static const symbol s_4_31[5] = { 'i', 't', 'a', 't', 'i' };
     221             : static const symbol s_4_32[3] = { 'i', 't', 'i' };
     222             : static const symbol s_4_33[4] = { 'a', 'n', 't', 'i' };
     223             : static const symbol s_4_34[4] = { 'i', 's', 't', 'i' };
     224             : static const symbol s_4_35[3] = { 'u', 't', 'i' };
     225             : static const symbol s_4_36[5] = { 'i', 0xC8, 0x99, 't', 'i' };
     226             : static const symbol s_4_37[3] = { 'i', 'v', 'i' };
     227             : static const symbol s_4_38[5] = { 'i', 't', 0xC4, 0x83, 'i' };
     228             : static const symbol s_4_39[4] = { 'o', 0xC8, 0x99, 'i' };
     229             : static const symbol s_4_40[7] = { 'i', 't', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     230             : static const symbol s_4_41[4] = { 'a', 'b', 'i', 'l' };
     231             : static const symbol s_4_42[4] = { 'i', 'b', 'i', 'l' };
     232             : static const symbol s_4_43[3] = { 'i', 's', 'm' };
     233             : static const symbol s_4_44[4] = { 'a', 't', 'o', 'r' };
     234             : static const symbol s_4_45[2] = { 'o', 's' };
     235             : static const symbol s_4_46[2] = { 'a', 't' };
     236             : static const symbol s_4_47[2] = { 'i', 't' };
     237             : static const symbol s_4_48[3] = { 'a', 'n', 't' };
     238             : static const symbol s_4_49[3] = { 'i', 's', 't' };
     239             : static const symbol s_4_50[2] = { 'u', 't' };
     240             : static const symbol s_4_51[2] = { 'i', 'v' };
     241             : static const symbol s_4_52[4] = { 'i', 'c', 0xC4, 0x83 };
     242             : static const symbol s_4_53[6] = { 'a', 'b', 'i', 'l', 0xC4, 0x83 };
     243             : static const symbol s_4_54[6] = { 'i', 'b', 'i', 'l', 0xC4, 0x83 };
     244             : static const symbol s_4_55[5] = { 'o', 'a', 's', 0xC4, 0x83 };
     245             : static const symbol s_4_56[4] = { 'a', 't', 0xC4, 0x83 };
     246             : static const symbol s_4_57[4] = { 'i', 't', 0xC4, 0x83 };
     247             : static const symbol s_4_58[5] = { 'a', 'n', 't', 0xC4, 0x83 };
     248             : static const symbol s_4_59[5] = { 'i', 's', 't', 0xC4, 0x83 };
     249             : static const symbol s_4_60[4] = { 'u', 't', 0xC4, 0x83 };
     250             : static const symbol s_4_61[4] = { 'i', 'v', 0xC4, 0x83 };
     251             : 
     252             : static const struct among a_4[62] =
     253             : {
     254             : { 3, s_4_0, -1, 1, 0},
     255             : { 5, s_4_1, -1, 1, 0},
     256             : { 5, s_4_2, -1, 1, 0},
     257             : { 4, s_4_3, -1, 1, 0},
     258             : { 3, s_4_4, -1, 1, 0},
     259             : { 3, s_4_5, -1, 1, 0},
     260             : { 4, s_4_6, -1, 1, 0},
     261             : { 4, s_4_7, -1, 3, 0},
     262             : { 3, s_4_8, -1, 1, 0},
     263             : { 3, s_4_9, -1, 1, 0},
     264             : { 2, s_4_10, -1, 1, 0},
     265             : { 3, s_4_11, -1, 1, 0},
     266             : { 5, s_4_12, -1, 1, 0},
     267             : { 5, s_4_13, -1, 1, 0},
     268             : { 4, s_4_14, -1, 3, 0},
     269             : { 4, s_4_15, -1, 2, 0},
     270             : { 4, s_4_16, -1, 1, 0},
     271             : { 3, s_4_17, -1, 1, 0},
     272             : { 5, s_4_18, 17, 1, 0},
     273             : { 3, s_4_19, -1, 1, 0},
     274             : { 4, s_4_20, -1, 1, 0},
     275             : { 4, s_4_21, -1, 3, 0},
     276             : { 3, s_4_22, -1, 1, 0},
     277             : { 3, s_4_23, -1, 1, 0},
     278             : { 3, s_4_24, -1, 1, 0},
     279             : { 5, s_4_25, -1, 1, 0},
     280             : { 5, s_4_26, -1, 1, 0},
     281             : { 4, s_4_27, -1, 2, 0},
     282             : { 5, s_4_28, -1, 1, 0},
     283             : { 3, s_4_29, -1, 1, 0},
     284             : { 3, s_4_30, -1, 1, 0},
     285             : { 5, s_4_31, 30, 1, 0},
     286             : { 3, s_4_32, -1, 1, 0},
     287             : { 4, s_4_33, -1, 1, 0},
     288             : { 4, s_4_34, -1, 3, 0},
     289             : { 3, s_4_35, -1, 1, 0},
     290             : { 5, s_4_36, -1, 3, 0},
     291             : { 3, s_4_37, -1, 1, 0},
     292             : { 5, s_4_38, -1, 1, 0},
     293             : { 4, s_4_39, -1, 1, 0},
     294             : { 7, s_4_40, -1, 1, 0},
     295             : { 4, s_4_41, -1, 1, 0},
     296             : { 4, s_4_42, -1, 1, 0},
     297             : { 3, s_4_43, -1, 3, 0},
     298             : { 4, s_4_44, -1, 1, 0},
     299             : { 2, s_4_45, -1, 1, 0},
     300             : { 2, s_4_46, -1, 1, 0},
     301             : { 2, s_4_47, -1, 1, 0},
     302             : { 3, s_4_48, -1, 1, 0},
     303             : { 3, s_4_49, -1, 3, 0},
     304             : { 2, s_4_50, -1, 1, 0},
     305             : { 2, s_4_51, -1, 1, 0},
     306             : { 4, s_4_52, -1, 1, 0},
     307             : { 6, s_4_53, -1, 1, 0},
     308             : { 6, s_4_54, -1, 1, 0},
     309             : { 5, s_4_55, -1, 1, 0},
     310             : { 4, s_4_56, -1, 1, 0},
     311             : { 4, s_4_57, -1, 1, 0},
     312             : { 5, s_4_58, -1, 1, 0},
     313             : { 5, s_4_59, -1, 3, 0},
     314             : { 4, s_4_60, -1, 1, 0},
     315             : { 4, s_4_61, -1, 1, 0}
     316             : };
     317             : 
     318             : static const symbol s_5_0[2] = { 'e', 'a' };
     319             : static const symbol s_5_1[2] = { 'i', 'a' };
     320             : static const symbol s_5_2[3] = { 'e', 's', 'c' };
     321             : static const symbol s_5_3[4] = { 0xC4, 0x83, 's', 'c' };
     322             : static const symbol s_5_4[3] = { 'i', 'n', 'd' };
     323             : static const symbol s_5_5[4] = { 0xC3, 0xA2, 'n', 'd' };
     324             : static const symbol s_5_6[3] = { 'a', 'r', 'e' };
     325             : static const symbol s_5_7[3] = { 'e', 'r', 'e' };
     326             : static const symbol s_5_8[3] = { 'i', 'r', 'e' };
     327             : static const symbol s_5_9[4] = { 0xC3, 0xA2, 'r', 'e' };
     328             : static const symbol s_5_10[2] = { 's', 'e' };
     329             : static const symbol s_5_11[3] = { 'a', 's', 'e' };
     330             : static const symbol s_5_12[4] = { 's', 'e', 's', 'e' };
     331             : static const symbol s_5_13[3] = { 'i', 's', 'e' };
     332             : static const symbol s_5_14[3] = { 'u', 's', 'e' };
     333             : static const symbol s_5_15[4] = { 0xC3, 0xA2, 's', 'e' };
     334             : static const symbol s_5_16[5] = { 'e', 0xC8, 0x99, 't', 'e' };
     335             : static const symbol s_5_17[6] = { 0xC4, 0x83, 0xC8, 0x99, 't', 'e' };
     336             : static const symbol s_5_18[3] = { 'e', 'z', 'e' };
     337             : static const symbol s_5_19[2] = { 'a', 'i' };
     338             : static const symbol s_5_20[3] = { 'e', 'a', 'i' };
     339             : static const symbol s_5_21[3] = { 'i', 'a', 'i' };
     340             : static const symbol s_5_22[3] = { 's', 'e', 'i' };
     341             : static const symbol s_5_23[5] = { 'e', 0xC8, 0x99, 't', 'i' };
     342             : static const symbol s_5_24[6] = { 0xC4, 0x83, 0xC8, 0x99, 't', 'i' };
     343             : static const symbol s_5_25[2] = { 'u', 'i' };
     344             : static const symbol s_5_26[3] = { 'e', 'z', 'i' };
     345             : static const symbol s_5_27[4] = { 'a', 0xC8, 0x99, 'i' };
     346             : static const symbol s_5_28[5] = { 's', 'e', 0xC8, 0x99, 'i' };
     347             : static const symbol s_5_29[6] = { 'a', 's', 'e', 0xC8, 0x99, 'i' };
     348             : static const symbol s_5_30[7] = { 's', 'e', 's', 'e', 0xC8, 0x99, 'i' };
     349             : static const symbol s_5_31[6] = { 'i', 's', 'e', 0xC8, 0x99, 'i' };
     350             : static const symbol s_5_32[6] = { 'u', 's', 'e', 0xC8, 0x99, 'i' };
     351             : static const symbol s_5_33[7] = { 0xC3, 0xA2, 's', 'e', 0xC8, 0x99, 'i' };
     352             : static const symbol s_5_34[4] = { 'i', 0xC8, 0x99, 'i' };
     353             : static const symbol s_5_35[4] = { 'u', 0xC8, 0x99, 'i' };
     354             : static const symbol s_5_36[5] = { 0xC3, 0xA2, 0xC8, 0x99, 'i' };
     355             : static const symbol s_5_37[4] = { 'a', 0xC8, 0x9B, 'i' };
     356             : static const symbol s_5_38[5] = { 'e', 'a', 0xC8, 0x9B, 'i' };
     357             : static const symbol s_5_39[5] = { 'i', 'a', 0xC8, 0x9B, 'i' };
     358             : static const symbol s_5_40[4] = { 'e', 0xC8, 0x9B, 'i' };
     359             : static const symbol s_5_41[4] = { 'i', 0xC8, 0x9B, 'i' };
     360             : static const symbol s_5_42[7] = { 'a', 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     361             : static const symbol s_5_43[8] = { 's', 'e', 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     362             : static const symbol s_5_44[9] = { 'a', 's', 'e', 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     363             : static const symbol s_5_45[10] = { 's', 'e', 's', 'e', 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     364             : static const symbol s_5_46[9] = { 'i', 's', 'e', 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     365             : static const symbol s_5_47[9] = { 'u', 's', 'e', 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     366             : static const symbol s_5_48[10] = { 0xC3, 0xA2, 's', 'e', 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     367             : static const symbol s_5_49[7] = { 'i', 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     368             : static const symbol s_5_50[7] = { 'u', 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     369             : static const symbol s_5_51[8] = { 0xC3, 0xA2, 'r', 0xC4, 0x83, 0xC8, 0x9B, 'i' };
     370             : static const symbol s_5_52[5] = { 0xC3, 0xA2, 0xC8, 0x9B, 'i' };
     371             : static const symbol s_5_53[3] = { 0xC3, 0xA2, 'i' };
     372             : static const symbol s_5_54[2] = { 'a', 'm' };
     373             : static const symbol s_5_55[3] = { 'e', 'a', 'm' };
     374             : static const symbol s_5_56[3] = { 'i', 'a', 'm' };
     375             : static const symbol s_5_57[2] = { 'e', 'm' };
     376             : static const symbol s_5_58[4] = { 'a', 's', 'e', 'm' };
     377             : static const symbol s_5_59[5] = { 's', 'e', 's', 'e', 'm' };
     378             : static const symbol s_5_60[4] = { 'i', 's', 'e', 'm' };
     379             : static const symbol s_5_61[4] = { 'u', 's', 'e', 'm' };
     380             : static const symbol s_5_62[5] = { 0xC3, 0xA2, 's', 'e', 'm' };
     381             : static const symbol s_5_63[2] = { 'i', 'm' };
     382             : static const symbol s_5_64[3] = { 0xC4, 0x83, 'm' };
     383             : static const symbol s_5_65[5] = { 'a', 'r', 0xC4, 0x83, 'm' };
     384             : static const symbol s_5_66[6] = { 's', 'e', 'r', 0xC4, 0x83, 'm' };
     385             : static const symbol s_5_67[7] = { 'a', 's', 'e', 'r', 0xC4, 0x83, 'm' };
     386             : static const symbol s_5_68[8] = { 's', 'e', 's', 'e', 'r', 0xC4, 0x83, 'm' };
     387             : static const symbol s_5_69[7] = { 'i', 's', 'e', 'r', 0xC4, 0x83, 'm' };
     388             : static const symbol s_5_70[7] = { 'u', 's', 'e', 'r', 0xC4, 0x83, 'm' };
     389             : static const symbol s_5_71[8] = { 0xC3, 0xA2, 's', 'e', 'r', 0xC4, 0x83, 'm' };
     390             : static const symbol s_5_72[5] = { 'i', 'r', 0xC4, 0x83, 'm' };
     391             : static const symbol s_5_73[5] = { 'u', 'r', 0xC4, 0x83, 'm' };
     392             : static const symbol s_5_74[6] = { 0xC3, 0xA2, 'r', 0xC4, 0x83, 'm' };
     393             : static const symbol s_5_75[3] = { 0xC3, 0xA2, 'm' };
     394             : static const symbol s_5_76[2] = { 'a', 'u' };
     395             : static const symbol s_5_77[3] = { 'e', 'a', 'u' };
     396             : static const symbol s_5_78[3] = { 'i', 'a', 'u' };
     397             : static const symbol s_5_79[4] = { 'i', 'n', 'd', 'u' };
     398             : static const symbol s_5_80[5] = { 0xC3, 0xA2, 'n', 'd', 'u' };
     399             : static const symbol s_5_81[2] = { 'e', 'z' };
     400             : static const symbol s_5_82[6] = { 'e', 'a', 's', 'c', 0xC4, 0x83 };
     401             : static const symbol s_5_83[4] = { 'a', 'r', 0xC4, 0x83 };
     402             : static const symbol s_5_84[5] = { 's', 'e', 'r', 0xC4, 0x83 };
     403             : static const symbol s_5_85[6] = { 'a', 's', 'e', 'r', 0xC4, 0x83 };
     404             : static const symbol s_5_86[7] = { 's', 'e', 's', 'e', 'r', 0xC4, 0x83 };
     405             : static const symbol s_5_87[6] = { 'i', 's', 'e', 'r', 0xC4, 0x83 };
     406             : static const symbol s_5_88[6] = { 'u', 's', 'e', 'r', 0xC4, 0x83 };
     407             : static const symbol s_5_89[7] = { 0xC3, 0xA2, 's', 'e', 'r', 0xC4, 0x83 };
     408             : static const symbol s_5_90[4] = { 'i', 'r', 0xC4, 0x83 };
     409             : static const symbol s_5_91[4] = { 'u', 'r', 0xC4, 0x83 };
     410             : static const symbol s_5_92[5] = { 0xC3, 0xA2, 'r', 0xC4, 0x83 };
     411             : static const symbol s_5_93[5] = { 'e', 'a', 'z', 0xC4, 0x83 };
     412             : 
     413             : static const struct among a_5[94] =
     414             : {
     415             : { 2, s_5_0, -1, 1, 0},
     416             : { 2, s_5_1, -1, 1, 0},
     417             : { 3, s_5_2, -1, 1, 0},
     418             : { 4, s_5_3, -1, 1, 0},
     419             : { 3, s_5_4, -1, 1, 0},
     420             : { 4, s_5_5, -1, 1, 0},
     421             : { 3, s_5_6, -1, 1, 0},
     422             : { 3, s_5_7, -1, 1, 0},
     423             : { 3, s_5_8, -1, 1, 0},
     424             : { 4, s_5_9, -1, 1, 0},
     425             : { 2, s_5_10, -1, 2, 0},
     426             : { 3, s_5_11, 10, 1, 0},
     427             : { 4, s_5_12, 10, 2, 0},
     428             : { 3, s_5_13, 10, 1, 0},
     429             : { 3, s_5_14, 10, 1, 0},
     430             : { 4, s_5_15, 10, 1, 0},
     431             : { 5, s_5_16, -1, 1, 0},
     432             : { 6, s_5_17, -1, 1, 0},
     433             : { 3, s_5_18, -1, 1, 0},
     434             : { 2, s_5_19, -1, 1, 0},
     435             : { 3, s_5_20, 19, 1, 0},
     436             : { 3, s_5_21, 19, 1, 0},
     437             : { 3, s_5_22, -1, 2, 0},
     438             : { 5, s_5_23, -1, 1, 0},
     439             : { 6, s_5_24, -1, 1, 0},
     440             : { 2, s_5_25, -1, 1, 0},
     441             : { 3, s_5_26, -1, 1, 0},
     442             : { 4, s_5_27, -1, 1, 0},
     443             : { 5, s_5_28, -1, 2, 0},
     444             : { 6, s_5_29, 28, 1, 0},
     445             : { 7, s_5_30, 28, 2, 0},
     446             : { 6, s_5_31, 28, 1, 0},
     447             : { 6, s_5_32, 28, 1, 0},
     448             : { 7, s_5_33, 28, 1, 0},
     449             : { 4, s_5_34, -1, 1, 0},
     450             : { 4, s_5_35, -1, 1, 0},
     451             : { 5, s_5_36, -1, 1, 0},
     452             : { 4, s_5_37, -1, 2, 0},
     453             : { 5, s_5_38, 37, 1, 0},
     454             : { 5, s_5_39, 37, 1, 0},
     455             : { 4, s_5_40, -1, 2, 0},
     456             : { 4, s_5_41, -1, 2, 0},
     457             : { 7, s_5_42, -1, 1, 0},
     458             : { 8, s_5_43, -1, 2, 0},
     459             : { 9, s_5_44, 43, 1, 0},
     460             : { 10, s_5_45, 43, 2, 0},
     461             : { 9, s_5_46, 43, 1, 0},
     462             : { 9, s_5_47, 43, 1, 0},
     463             : { 10, s_5_48, 43, 1, 0},
     464             : { 7, s_5_49, -1, 1, 0},
     465             : { 7, s_5_50, -1, 1, 0},
     466             : { 8, s_5_51, -1, 1, 0},
     467             : { 5, s_5_52, -1, 2, 0},
     468             : { 3, s_5_53, -1, 1, 0},
     469             : { 2, s_5_54, -1, 1, 0},
     470             : { 3, s_5_55, 54, 1, 0},
     471             : { 3, s_5_56, 54, 1, 0},
     472             : { 2, s_5_57, -1, 2, 0},
     473             : { 4, s_5_58, 57, 1, 0},
     474             : { 5, s_5_59, 57, 2, 0},
     475             : { 4, s_5_60, 57, 1, 0},
     476             : { 4, s_5_61, 57, 1, 0},
     477             : { 5, s_5_62, 57, 1, 0},
     478             : { 2, s_5_63, -1, 2, 0},
     479             : { 3, s_5_64, -1, 2, 0},
     480             : { 5, s_5_65, 64, 1, 0},
     481             : { 6, s_5_66, 64, 2, 0},
     482             : { 7, s_5_67, 66, 1, 0},
     483             : { 8, s_5_68, 66, 2, 0},
     484             : { 7, s_5_69, 66, 1, 0},
     485             : { 7, s_5_70, 66, 1, 0},
     486             : { 8, s_5_71, 66, 1, 0},
     487             : { 5, s_5_72, 64, 1, 0},
     488             : { 5, s_5_73, 64, 1, 0},
     489             : { 6, s_5_74, 64, 1, 0},
     490             : { 3, s_5_75, -1, 2, 0},
     491             : { 2, s_5_76, -1, 1, 0},
     492             : { 3, s_5_77, 76, 1, 0},
     493             : { 3, s_5_78, 76, 1, 0},
     494             : { 4, s_5_79, -1, 1, 0},
     495             : { 5, s_5_80, -1, 1, 0},
     496             : { 2, s_5_81, -1, 1, 0},
     497             : { 6, s_5_82, -1, 1, 0},
     498             : { 4, s_5_83, -1, 1, 0},
     499             : { 5, s_5_84, -1, 2, 0},
     500             : { 6, s_5_85, 84, 1, 0},
     501             : { 7, s_5_86, 84, 2, 0},
     502             : { 6, s_5_87, 84, 1, 0},
     503             : { 6, s_5_88, 84, 1, 0},
     504             : { 7, s_5_89, 84, 1, 0},
     505             : { 4, s_5_90, -1, 1, 0},
     506             : { 4, s_5_91, -1, 1, 0},
     507             : { 5, s_5_92, -1, 1, 0},
     508             : { 5, s_5_93, -1, 1, 0}
     509             : };
     510             : 
     511             : static const symbol s_6_0[1] = { 'a' };
     512             : static const symbol s_6_1[1] = { 'e' };
     513             : static const symbol s_6_2[2] = { 'i', 'e' };
     514             : static const symbol s_6_3[1] = { 'i' };
     515             : static const symbol s_6_4[2] = { 0xC4, 0x83 };
     516             : 
     517             : static const struct among a_6[5] =
     518             : {
     519             : { 1, s_6_0, -1, 1, 0},
     520             : { 1, s_6_1, -1, 1, 0},
     521             : { 2, s_6_2, 1, 1, 0},
     522             : { 1, s_6_3, -1, 1, 0},
     523             : { 2, s_6_4, -1, 1, 0}
     524             : };
     525             : 
     526             : static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 32, 0, 0, 4 };
     527             : 
     528             : static const symbol s_0[] = { 0xC8, 0x99 };
     529             : static const symbol s_1[] = { 0xC8, 0x9B };
     530             : static const symbol s_2[] = { 'U' };
     531             : static const symbol s_3[] = { 'I' };
     532             : static const symbol s_4[] = { 'i' };
     533             : static const symbol s_5[] = { 'u' };
     534             : static const symbol s_6[] = { 'a' };
     535             : static const symbol s_7[] = { 'e' };
     536             : static const symbol s_8[] = { 'i' };
     537             : static const symbol s_9[] = { 'a', 'b' };
     538             : static const symbol s_10[] = { 'i' };
     539             : static const symbol s_11[] = { 'a', 't' };
     540             : static const symbol s_12[] = { 'a', 0xC8, 0x9B, 'i' };
     541             : static const symbol s_13[] = { 'a', 'b', 'i', 'l' };
     542             : static const symbol s_14[] = { 'i', 'b', 'i', 'l' };
     543             : static const symbol s_15[] = { 'i', 'v' };
     544             : static const symbol s_16[] = { 'i', 'c' };
     545             : static const symbol s_17[] = { 'a', 't' };
     546             : static const symbol s_18[] = { 'i', 't' };
     547             : static const symbol s_19[] = { 0xC8, 0x9B };
     548             : static const symbol s_20[] = { 't' };
     549             : static const symbol s_21[] = { 'i', 's', 't' };
     550             : 
     551           0 : static int r_norm(struct SN_env * z) {
     552             :     int among_var;
     553           0 :     {   int c1 = z->c;
     554           0 :         while(1) {
     555           0 :             int c2 = z->c;
     556           0 :             while(1) {
     557           0 :                 int c3 = z->c;
     558           0 :                 z->bra = z->c;
     559           0 :                 if (z->c + 1 >= z->l || (z->p[z->c + 1] != 159 && z->p[z->c + 1] != 163)) goto lab2;
     560           0 :                 among_var = find_among(z, a_0, 2);
     561           0 :                 if (!among_var) goto lab2;
     562           0 :                 z->ket = z->c;
     563           0 :                 switch (among_var) {
     564           0 :                     case 1:
     565           0 :                         {   int ret = slice_from_s(z, 2, s_0);
     566           0 :                             if (ret < 0) return ret;
     567             :                         }
     568           0 :                         break;
     569           0 :                     case 2:
     570           0 :                         {   int ret = slice_from_s(z, 2, s_1);
     571           0 :                             if (ret < 0) return ret;
     572             :                         }
     573           0 :                         break;
     574             :                 }
     575           0 :                 z->c = c3;
     576           0 :                 break;
     577           0 :             lab2:
     578           0 :                 z->c = c3;
     579           0 :                 {   int ret = skip_utf8(z->p, z->c, z->l, 1);
     580           0 :                     if (ret < 0) goto lab1;
     581           0 :                     z->c = ret;
     582             :                 }
     583             :             }
     584           0 :             continue;
     585           0 :         lab1:
     586           0 :             z->c = c2;
     587           0 :             break;
     588             :         }
     589           0 :         z->c = c1;
     590             :     }
     591           0 :     return 1;
     592             : }
     593             : 
     594           0 : static int r_prelude(struct SN_env * z) {
     595           0 :     while(1) {
     596           0 :         int c1 = z->c;
     597           0 :         while(1) {
     598           0 :             int c2 = z->c;
     599           0 :             if (in_grouping_U(z, g_v, 97, 259, 0)) goto lab1;
     600           0 :             z->bra = z->c;
     601           0 :             {   int c3 = z->c;
     602           0 :                 if (z->c == z->l || z->p[z->c] != 'u') goto lab3;
     603           0 :                 z->c++;
     604           0 :                 z->ket = z->c;
     605           0 :                 if (in_grouping_U(z, g_v, 97, 259, 0)) goto lab3;
     606           0 :                 {   int ret = slice_from_s(z, 1, s_2);
     607           0 :                     if (ret < 0) return ret;
     608             :                 }
     609           0 :                 goto lab2;
     610           0 :             lab3:
     611           0 :                 z->c = c3;
     612           0 :                 if (z->c == z->l || z->p[z->c] != 'i') goto lab1;
     613           0 :                 z->c++;
     614           0 :                 z->ket = z->c;
     615           0 :                 if (in_grouping_U(z, g_v, 97, 259, 0)) goto lab1;
     616           0 :                 {   int ret = slice_from_s(z, 1, s_3);
     617           0 :                     if (ret < 0) return ret;
     618             :                 }
     619             :             }
     620           0 :         lab2:
     621           0 :             z->c = c2;
     622           0 :             break;
     623           0 :         lab1:
     624           0 :             z->c = c2;
     625           0 :             {   int ret = skip_utf8(z->p, z->c, z->l, 1);
     626           0 :                 if (ret < 0) goto lab0;
     627           0 :                 z->c = ret;
     628             :             }
     629             :         }
     630           0 :         continue;
     631           0 :     lab0:
     632           0 :         z->c = c1;
     633           0 :         break;
     634             :     }
     635           0 :     return 1;
     636             : }
     637             : 
     638           0 : static int r_mark_regions(struct SN_env * z) {
     639           0 :     z->I[2] = z->l;
     640           0 :     z->I[1] = z->l;
     641           0 :     z->I[0] = z->l;
     642           0 :     {   int c1 = z->c;
     643           0 :         {   int c2 = z->c;
     644           0 :             if (in_grouping_U(z, g_v, 97, 259, 0)) goto lab2;
     645           0 :             {   int c3 = z->c;
     646           0 :                 if (out_grouping_U(z, g_v, 97, 259, 0)) goto lab4;
     647             : 
     648             :                 {
     649           0 :                     int ret = out_grouping_U(z, g_v, 97, 259, 1);
     650           0 :                     if (ret < 0) goto lab4;
     651           0 :                     z->c += ret;
     652             :                 }
     653           0 :                 goto lab3;
     654           0 :             lab4:
     655           0 :                 z->c = c3;
     656           0 :                 if (in_grouping_U(z, g_v, 97, 259, 0)) goto lab2;
     657             : 
     658             :                 {
     659           0 :                     int ret = in_grouping_U(z, g_v, 97, 259, 1);
     660           0 :                     if (ret < 0) goto lab2;
     661           0 :                     z->c += ret;
     662             :                 }
     663             :             }
     664           0 :         lab3:
     665           0 :             goto lab1;
     666           0 :         lab2:
     667           0 :             z->c = c2;
     668           0 :             if (out_grouping_U(z, g_v, 97, 259, 0)) goto lab0;
     669           0 :             {   int c4 = z->c;
     670           0 :                 if (out_grouping_U(z, g_v, 97, 259, 0)) goto lab6;
     671             : 
     672             :                 {
     673           0 :                     int ret = out_grouping_U(z, g_v, 97, 259, 1);
     674           0 :                     if (ret < 0) goto lab6;
     675           0 :                     z->c += ret;
     676             :                 }
     677           0 :                 goto lab5;
     678           0 :             lab6:
     679           0 :                 z->c = c4;
     680           0 :                 if (in_grouping_U(z, g_v, 97, 259, 0)) goto lab0;
     681           0 :                 {   int ret = skip_utf8(z->p, z->c, z->l, 1);
     682           0 :                     if (ret < 0) goto lab0;
     683           0 :                     z->c = ret;
     684             :                 }
     685             :             }
     686           0 :         lab5:
     687             :             ;
     688             :         }
     689           0 :     lab1:
     690           0 :         z->I[2] = z->c;
     691           0 :     lab0:
     692           0 :         z->c = c1;
     693             :     }
     694           0 :     {   int c5 = z->c;
     695             : 
     696             :         {
     697           0 :             int ret = out_grouping_U(z, g_v, 97, 259, 1);
     698           0 :             if (ret < 0) goto lab7;
     699           0 :             z->c += ret;
     700             :         }
     701             : 
     702             :         {
     703           0 :             int ret = in_grouping_U(z, g_v, 97, 259, 1);
     704           0 :             if (ret < 0) goto lab7;
     705           0 :             z->c += ret;
     706             :         }
     707           0 :         z->I[1] = z->c;
     708             : 
     709             :         {
     710           0 :             int ret = out_grouping_U(z, g_v, 97, 259, 1);
     711           0 :             if (ret < 0) goto lab7;
     712           0 :             z->c += ret;
     713             :         }
     714             : 
     715             :         {
     716           0 :             int ret = in_grouping_U(z, g_v, 97, 259, 1);
     717           0 :             if (ret < 0) goto lab7;
     718           0 :             z->c += ret;
     719             :         }
     720           0 :         z->I[0] = z->c;
     721           0 :     lab7:
     722           0 :         z->c = c5;
     723             :     }
     724           0 :     return 1;
     725             : }
     726             : 
     727           0 : static int r_postlude(struct SN_env * z) {
     728             :     int among_var;
     729           0 :     while(1) {
     730           0 :         int c1 = z->c;
     731           0 :         z->bra = z->c;
     732           0 :         if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 85)) among_var = 3; else
     733           0 :         among_var = find_among(z, a_1, 3);
     734           0 :         z->ket = z->c;
     735           0 :         switch (among_var) {
     736           0 :             case 1:
     737           0 :                 {   int ret = slice_from_s(z, 1, s_4);
     738           0 :                     if (ret < 0) return ret;
     739             :                 }
     740           0 :                 break;
     741           0 :             case 2:
     742           0 :                 {   int ret = slice_from_s(z, 1, s_5);
     743           0 :                     if (ret < 0) return ret;
     744             :                 }
     745           0 :                 break;
     746           0 :             case 3:
     747           0 :                 {   int ret = skip_utf8(z->p, z->c, z->l, 1);
     748           0 :                     if (ret < 0) goto lab0;
     749           0 :                     z->c = ret;
     750             :                 }
     751           0 :                 break;
     752             :         }
     753           0 :         continue;
     754           0 :     lab0:
     755           0 :         z->c = c1;
     756           0 :         break;
     757             :     }
     758           0 :     return 1;
     759             : }
     760             : 
     761           0 : static int r_RV(struct SN_env * z) {
     762           0 :     return z->I[2] <= z->c;
     763             : }
     764             : 
     765           0 : static int r_R1(struct SN_env * z) {
     766           0 :     return z->I[1] <= z->c;
     767             : }
     768             : 
     769           0 : static int r_R2(struct SN_env * z) {
     770           0 :     return z->I[0] <= z->c;
     771             : }
     772             : 
     773           0 : static int r_step_0(struct SN_env * z) {
     774             :     int among_var;
     775           0 :     z->ket = z->c;
     776           0 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((266786 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     777           0 :     among_var = find_among_b(z, a_2, 16);
     778           0 :     if (!among_var) return 0;
     779           0 :     z->bra = z->c;
     780           0 :     {   int ret = r_R1(z);
     781           0 :         if (ret <= 0) return ret;
     782             :     }
     783           0 :     switch (among_var) {
     784           0 :         case 1:
     785           0 :             {   int ret = slice_del(z);
     786           0 :                 if (ret < 0) return ret;
     787             :             }
     788           0 :             break;
     789           0 :         case 2:
     790           0 :             {   int ret = slice_from_s(z, 1, s_6);
     791           0 :                 if (ret < 0) return ret;
     792             :             }
     793           0 :             break;
     794           0 :         case 3:
     795           0 :             {   int ret = slice_from_s(z, 1, s_7);
     796           0 :                 if (ret < 0) return ret;
     797             :             }
     798           0 :             break;
     799           0 :         case 4:
     800           0 :             {   int ret = slice_from_s(z, 1, s_8);
     801           0 :                 if (ret < 0) return ret;
     802             :             }
     803           0 :             break;
     804           0 :         case 5:
     805           0 :             {   int m1 = z->l - z->c; (void)m1;
     806           0 :                 if (!(eq_s_b(z, 2, s_9))) goto lab0;
     807           0 :                 return 0;
     808           0 :             lab0:
     809           0 :                 z->c = z->l - m1;
     810             :             }
     811           0 :             {   int ret = slice_from_s(z, 1, s_10);
     812           0 :                 if (ret < 0) return ret;
     813             :             }
     814           0 :             break;
     815           0 :         case 6:
     816           0 :             {   int ret = slice_from_s(z, 2, s_11);
     817           0 :                 if (ret < 0) return ret;
     818             :             }
     819           0 :             break;
     820           0 :         case 7:
     821           0 :             {   int ret = slice_from_s(z, 4, s_12);
     822           0 :                 if (ret < 0) return ret;
     823             :             }
     824           0 :             break;
     825             :     }
     826           0 :     return 1;
     827             : }
     828             : 
     829           0 : static int r_combo_suffix(struct SN_env * z) {
     830             :     int among_var;
     831           0 :     {   int m_test1 = z->l - z->c;
     832           0 :         z->ket = z->c;
     833           0 :         among_var = find_among_b(z, a_3, 46);
     834           0 :         if (!among_var) return 0;
     835           0 :         z->bra = z->c;
     836           0 :         {   int ret = r_R1(z);
     837           0 :             if (ret <= 0) return ret;
     838             :         }
     839           0 :         switch (among_var) {
     840           0 :             case 1:
     841           0 :                 {   int ret = slice_from_s(z, 4, s_13);
     842           0 :                     if (ret < 0) return ret;
     843             :                 }
     844           0 :                 break;
     845           0 :             case 2:
     846           0 :                 {   int ret = slice_from_s(z, 4, s_14);
     847           0 :                     if (ret < 0) return ret;
     848             :                 }
     849           0 :                 break;
     850           0 :             case 3:
     851           0 :                 {   int ret = slice_from_s(z, 2, s_15);
     852           0 :                     if (ret < 0) return ret;
     853             :                 }
     854           0 :                 break;
     855           0 :             case 4:
     856           0 :                 {   int ret = slice_from_s(z, 2, s_16);
     857           0 :                     if (ret < 0) return ret;
     858             :                 }
     859           0 :                 break;
     860           0 :             case 5:
     861           0 :                 {   int ret = slice_from_s(z, 2, s_17);
     862           0 :                     if (ret < 0) return ret;
     863             :                 }
     864           0 :                 break;
     865           0 :             case 6:
     866           0 :                 {   int ret = slice_from_s(z, 2, s_18);
     867           0 :                     if (ret < 0) return ret;
     868             :                 }
     869           0 :                 break;
     870             :         }
     871           0 :         z->I[3] = 1;
     872           0 :         z->c = z->l - m_test1;
     873             :     }
     874           0 :     return 1;
     875             : }
     876             : 
     877           0 : static int r_standard_suffix(struct SN_env * z) {
     878             :     int among_var;
     879           0 :     z->I[3] = 0;
     880           0 :     while(1) {
     881           0 :         int m1 = z->l - z->c; (void)m1;
     882           0 :         {   int ret = r_combo_suffix(z);
     883           0 :             if (ret == 0) goto lab0;
     884           0 :             if (ret < 0) return ret;
     885             :         }
     886           0 :         continue;
     887           0 :     lab0:
     888           0 :         z->c = z->l - m1;
     889           0 :         break;
     890             :     }
     891           0 :     z->ket = z->c;
     892           0 :     among_var = find_among_b(z, a_4, 62);
     893           0 :     if (!among_var) return 0;
     894           0 :     z->bra = z->c;
     895           0 :     {   int ret = r_R2(z);
     896           0 :         if (ret <= 0) return ret;
     897             :     }
     898           0 :     switch (among_var) {
     899           0 :         case 1:
     900           0 :             {   int ret = slice_del(z);
     901           0 :                 if (ret < 0) return ret;
     902             :             }
     903           0 :             break;
     904           0 :         case 2:
     905           0 :             if (!(eq_s_b(z, 2, s_19))) return 0;
     906           0 :             z->bra = z->c;
     907           0 :             {   int ret = slice_from_s(z, 1, s_20);
     908           0 :                 if (ret < 0) return ret;
     909             :             }
     910           0 :             break;
     911           0 :         case 3:
     912           0 :             {   int ret = slice_from_s(z, 3, s_21);
     913           0 :                 if (ret < 0) return ret;
     914             :             }
     915           0 :             break;
     916             :     }
     917           0 :     z->I[3] = 1;
     918           0 :     return 1;
     919             : }
     920             : 
     921           0 : static int r_verb_suffix(struct SN_env * z) {
     922             :     int among_var;
     923             : 
     924             :     {   int mlimit1;
     925           0 :         if (z->c < z->I[2]) return 0;
     926           0 :         mlimit1 = z->lb; z->lb = z->I[2];
     927           0 :         z->ket = z->c;
     928           0 :         among_var = find_among_b(z, a_5, 94);
     929           0 :         if (!among_var) { z->lb = mlimit1; return 0; }
     930           0 :         z->bra = z->c;
     931           0 :         switch (among_var) {
     932           0 :             case 1:
     933           0 :                 {   int m2 = z->l - z->c; (void)m2;
     934           0 :                     if (out_grouping_b_U(z, g_v, 97, 259, 0)) goto lab1;
     935           0 :                     goto lab0;
     936           0 :                 lab1:
     937           0 :                     z->c = z->l - m2;
     938           0 :                     if (z->c <= z->lb || z->p[z->c - 1] != 'u') { z->lb = mlimit1; return 0; }
     939           0 :                     z->c--;
     940             :                 }
     941           0 :             lab0:
     942           0 :                 {   int ret = slice_del(z);
     943           0 :                     if (ret < 0) return ret;
     944             :                 }
     945           0 :                 break;
     946           0 :             case 2:
     947           0 :                 {   int ret = slice_del(z);
     948           0 :                     if (ret < 0) return ret;
     949             :                 }
     950           0 :                 break;
     951             :         }
     952           0 :         z->lb = mlimit1;
     953             :     }
     954           0 :     return 1;
     955             : }
     956             : 
     957           0 : static int r_vowel_suffix(struct SN_env * z) {
     958           0 :     z->ket = z->c;
     959           0 :     if (!find_among_b(z, a_6, 5)) return 0;
     960           0 :     z->bra = z->c;
     961           0 :     {   int ret = r_RV(z);
     962           0 :         if (ret <= 0) return ret;
     963             :     }
     964           0 :     {   int ret = slice_del(z);
     965           0 :         if (ret < 0) return ret;
     966             :     }
     967           0 :     return 1;
     968             : }
     969             : 
     970           0 : extern int romanian_UTF_8_stem(struct SN_env * z) {
     971             : 
     972           0 :     {   int ret = r_norm(z);
     973           0 :         if (ret < 0) return ret;
     974             :     }
     975           0 :     {   int c1 = z->c;
     976           0 :         {   int ret = r_prelude(z);
     977           0 :             if (ret < 0) return ret;
     978             :         }
     979           0 :         z->c = c1;
     980             :     }
     981             : 
     982           0 :     {   int ret = r_mark_regions(z);
     983           0 :         if (ret < 0) return ret;
     984             :     }
     985           0 :     z->lb = z->c; z->c = z->l;
     986             : 
     987           0 :     {   int m2 = z->l - z->c; (void)m2;
     988           0 :         {   int ret = r_step_0(z);
     989           0 :             if (ret < 0) return ret;
     990             :         }
     991           0 :         z->c = z->l - m2;
     992             :     }
     993           0 :     {   int m3 = z->l - z->c; (void)m3;
     994           0 :         {   int ret = r_standard_suffix(z);
     995           0 :             if (ret < 0) return ret;
     996             :         }
     997           0 :         z->c = z->l - m3;
     998             :     }
     999           0 :     {   int m4 = z->l - z->c; (void)m4;
    1000           0 :         {   int m5 = z->l - z->c; (void)m5;
    1001           0 :             if (!(z->I[3])) goto lab2;
    1002           0 :             goto lab1;
    1003           0 :         lab2:
    1004           0 :             z->c = z->l - m5;
    1005           0 :             {   int ret = r_verb_suffix(z);
    1006           0 :                 if (ret == 0) goto lab0;
    1007           0 :                 if (ret < 0) return ret;
    1008             :             }
    1009             :         }
    1010           0 :     lab1:
    1011           0 :     lab0:
    1012           0 :         z->c = z->l - m4;
    1013             :     }
    1014           0 :     {   int m6 = z->l - z->c; (void)m6;
    1015           0 :         {   int ret = r_vowel_suffix(z);
    1016           0 :             if (ret < 0) return ret;
    1017             :         }
    1018           0 :         z->c = z->l - m6;
    1019             :     }
    1020           0 :     z->c = z->lb;
    1021           0 :     {   int c7 = z->c;
    1022           0 :         {   int ret = r_postlude(z);
    1023           0 :             if (ret < 0) return ret;
    1024             :         }
    1025           0 :         z->c = c7;
    1026             :     }
    1027           0 :     return 1;
    1028             : }
    1029             : 
    1030           0 : extern struct SN_env * romanian_UTF_8_create_env(void) { return SN_create_env(0, 4); }
    1031             : 
    1032           0 : extern void romanian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
    1033             : 

Generated by: LCOV version 1.14