LCOV - code coverage report
Current view: top level - src/backend/snowball/libstemmer - stem_UTF_8_dutch.c (source / functions) Coverage Total Hit
Test: PostgreSQL 19devel Lines: 0.0 % 1074 0
Test Date: 2026-03-01 02:14:51 Functions: 0.0 % 19 0
Legend: Lines:     hit not hit

            Line data    Source code
       1              : /* Generated from dutch.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
       2              : 
       3              : #include "stem_UTF_8_dutch.h"
       4              : 
       5              : #include <stddef.h>
       6              : 
       7              : #include "snowball_runtime.h"
       8              : 
       9              : struct SN_local {
      10              :     struct SN_env z;
      11              :     int i_p2;
      12              :     int i_p1;
      13              :     unsigned char b_GE_removed;
      14              :     symbol * s_ch;
      15              : };
      16              : 
      17              : typedef struct SN_local SN_local;
      18              : 
      19              : #ifdef __cplusplus
      20              : extern "C" {
      21              : #endif
      22              : extern int dutch_UTF_8_stem(struct SN_env * z);
      23              : #ifdef __cplusplus
      24              : }
      25              : #endif
      26              : 
      27              : static int r_measure(struct SN_env * z);
      28              : static int r_Lose_infix(struct SN_env * z);
      29              : static int r_Lose_prefix(struct SN_env * z);
      30              : static int r_Step_1c(struct SN_env * z);
      31              : static int r_Step_6(struct SN_env * z);
      32              : static int r_Step_7(struct SN_env * z);
      33              : static int r_Step_4(struct SN_env * z);
      34              : static int r_Step_3(struct SN_env * z);
      35              : static int r_Step_2(struct SN_env * z);
      36              : static int r_Step_1(struct SN_env * z);
      37              : static int r_lengthen_V(struct SN_env * z);
      38              : static int r_VX(struct SN_env * z);
      39              : static int r_V(struct SN_env * z);
      40              : static int r_C(struct SN_env * z);
      41              : static int r_R2(struct SN_env * z);
      42              : static int r_R1(struct SN_env * z);
      43              : 
      44              : static const symbol s_0[] = { 'i', 'j' };
      45              : static const symbol s_1[] = { 'i', 'j' };
      46              : static const symbol s_2[] = { 'i', 'j' };
      47              : static const symbol s_3[] = { 'e', 0xC3, 0xAB, 'e' };
      48              : static const symbol s_4[] = { 'i', 'e', 'e' };
      49              : static const symbol s_5[] = { 'i', 'e' };
      50              : static const symbol s_6[] = { 'a', 'r' };
      51              : static const symbol s_7[] = { 'e', 'r' };
      52              : static const symbol s_8[] = { 'e' };
      53              : static const symbol s_9[] = { 0xC3, 0xA9 };
      54              : static const symbol s_10[] = { 'a', 'u' };
      55              : static const symbol s_11[] = { 'h', 'e', 'd' };
      56              : static const symbol s_12[] = { 'h', 'e', 'i', 'd' };
      57              : static const symbol s_13[] = { 'n', 'd' };
      58              : static const symbol s_14[] = { 'n', 'd' };
      59              : static const symbol s_15[] = { '\'', 't' };
      60              : static const symbol s_16[] = { 'e', 't' };
      61              : static const symbol s_17[] = { 'r', 'n', 't' };
      62              : static const symbol s_18[] = { 'r', 'n' };
      63              : static const symbol s_19[] = { 'i', 'n', 'k' };
      64              : static const symbol s_20[] = { 'i', 'n', 'g' };
      65              : static const symbol s_21[] = { 'm', 'p' };
      66              : static const symbol s_22[] = { 'm' };
      67              : static const symbol s_23[] = { 'g' };
      68              : static const symbol s_24[] = { 'l', 'i', 'j', 'k' };
      69              : static const symbol s_25[] = { 'i', 's', 'c', 'h' };
      70              : static const symbol s_26[] = { 't' };
      71              : static const symbol s_27[] = { 's' };
      72              : static const symbol s_28[] = { 'r' };
      73              : static const symbol s_29[] = { 'l' };
      74              : static const symbol s_30[] = { 'e', 'n' };
      75              : static const symbol s_31[] = { 'i', 'e', 'f' };
      76              : static const symbol s_32[] = { 'e', 'e', 'r' };
      77              : static const symbol s_33[] = { 'r' };
      78              : static const symbol s_34[] = { 'i', 'l', 'd' };
      79              : static const symbol s_35[] = { 'e', 'r' };
      80              : static const symbol s_36[] = { 'a', 'a', 'r' };
      81              : static const symbol s_37[] = { 'f' };
      82              : static const symbol s_38[] = { 'g' };
      83              : static const symbol s_39[] = { 't' };
      84              : static const symbol s_40[] = { 'd' };
      85              : static const symbol s_41[] = { 'i', 'e' };
      86              : static const symbol s_42[] = { 'e', 'e', 'r' };
      87              : static const symbol s_43[] = { 'n' };
      88              : static const symbol s_44[] = { 'l' };
      89              : static const symbol s_45[] = { 'r' };
      90              : static const symbol s_46[] = { 't', 'e', 'e', 'r' };
      91              : static const symbol s_47[] = { 'l', 'i', 'j', 'k' };
      92              : static const symbol s_48[] = { 'i', 'n', 'n' };
      93              : static const symbol s_49[] = { 'k' };
      94              : static const symbol s_50[] = { 'f' };
      95              : static const symbol s_51[] = { 'p' };
      96              : static const symbol s_52[] = { 'b' };
      97              : static const symbol s_53[] = { 'c' };
      98              : static const symbol s_54[] = { 'd' };
      99              : static const symbol s_55[] = { 'f' };
     100              : static const symbol s_56[] = { 'g' };
     101              : static const symbol s_57[] = { 'h' };
     102              : static const symbol s_58[] = { 'j' };
     103              : static const symbol s_59[] = { 'k' };
     104              : static const symbol s_60[] = { 'l' };
     105              : static const symbol s_61[] = { 'm' };
     106              : static const symbol s_62[] = { 'n' };
     107              : static const symbol s_63[] = { 'p' };
     108              : static const symbol s_64[] = { 'q' };
     109              : static const symbol s_65[] = { 'r' };
     110              : static const symbol s_66[] = { 's' };
     111              : static const symbol s_67[] = { 't' };
     112              : static const symbol s_68[] = { 'v' };
     113              : static const symbol s_69[] = { 'w' };
     114              : static const symbol s_70[] = { 'x' };
     115              : static const symbol s_71[] = { 'z' };
     116              : static const symbol s_72[] = { 'i', 'n' };
     117              : static const symbol s_73[] = { 'n' };
     118              : static const symbol s_74[] = { 'e', 'n' };
     119              : static const symbol s_75[] = { 'g', 'e' };
     120              : static const symbol s_76[] = { 'i', 'j' };
     121              : static const symbol s_77[] = { 'i', 'j' };
     122              : static const symbol s_78[] = { 'e' };
     123              : static const symbol s_79[] = { 'i' };
     124              : static const symbol s_80[] = { 'g', 'e' };
     125              : static const symbol s_81[] = { 'i', 'j' };
     126              : static const symbol s_82[] = { 'i', 'j' };
     127              : static const symbol s_83[] = { 'e' };
     128              : static const symbol s_84[] = { 'i' };
     129              : static const symbol s_85[] = { 'i', 'j' };
     130              : static const symbol s_86[] = { 'i', 'j' };
     131              : 
     132              : static const symbol s_0_0[1] = { 'a' };
     133              : static const symbol s_0_1[1] = { 'e' };
     134              : static const symbol s_0_2[1] = { 'o' };
     135              : static const symbol s_0_3[1] = { 'u' };
     136              : static const symbol s_0_4[2] = { 0xC3, 0xA0 };
     137              : static const symbol s_0_5[2] = { 0xC3, 0xA1 };
     138              : static const symbol s_0_6[2] = { 0xC3, 0xA2 };
     139              : static const symbol s_0_7[2] = { 0xC3, 0xA4 };
     140              : static const symbol s_0_8[2] = { 0xC3, 0xA8 };
     141              : static const symbol s_0_9[2] = { 0xC3, 0xA9 };
     142              : static const symbol s_0_10[2] = { 0xC3, 0xAA };
     143              : static const symbol s_0_11[3] = { 'e', 0xC3, 0xAB };
     144              : static const symbol s_0_12[3] = { 'i', 0xC3, 0xAB };
     145              : static const symbol s_0_13[2] = { 0xC3, 0xB2 };
     146              : static const symbol s_0_14[2] = { 0xC3, 0xB3 };
     147              : static const symbol s_0_15[2] = { 0xC3, 0xB4 };
     148              : static const symbol s_0_16[2] = { 0xC3, 0xB6 };
     149              : static const symbol s_0_17[2] = { 0xC3, 0xB9 };
     150              : static const symbol s_0_18[2] = { 0xC3, 0xBA };
     151              : static const symbol s_0_19[2] = { 0xC3, 0xBB };
     152              : static const symbol s_0_20[2] = { 0xC3, 0xBC };
     153              : static const struct among a_0[21] = {
     154              : { 1, s_0_0, 0, 1, 0},
     155              : { 1, s_0_1, 0, 2, 0},
     156              : { 1, s_0_2, 0, 1, 0},
     157              : { 1, s_0_3, 0, 1, 0},
     158              : { 2, s_0_4, 0, 1, 0},
     159              : { 2, s_0_5, 0, 1, 0},
     160              : { 2, s_0_6, 0, 1, 0},
     161              : { 2, s_0_7, 0, 1, 0},
     162              : { 2, s_0_8, 0, 2, 0},
     163              : { 2, s_0_9, 0, 2, 0},
     164              : { 2, s_0_10, 0, 2, 0},
     165              : { 3, s_0_11, 0, 3, 0},
     166              : { 3, s_0_12, 0, 4, 0},
     167              : { 2, s_0_13, 0, 1, 0},
     168              : { 2, s_0_14, 0, 1, 0},
     169              : { 2, s_0_15, 0, 1, 0},
     170              : { 2, s_0_16, 0, 1, 0},
     171              : { 2, s_0_17, 0, 1, 0},
     172              : { 2, s_0_18, 0, 1, 0},
     173              : { 2, s_0_19, 0, 1, 0},
     174              : { 2, s_0_20, 0, 1, 0}
     175              : };
     176              : 
     177              : static const symbol s_1_0[3] = { 'n', 'd', 'e' };
     178              : static const symbol s_1_1[2] = { 'e', 'n' };
     179              : static const symbol s_1_2[1] = { 's' };
     180              : static const symbol s_1_3[2] = { '\'', 's' };
     181              : static const symbol s_1_4[2] = { 'e', 's' };
     182              : static const symbol s_1_5[3] = { 'i', 'e', 's' };
     183              : static const symbol s_1_6[3] = { 'a', 'u', 's' };
     184              : static const symbol s_1_7[3] = { 0xC3, 0xA9, 's' };
     185              : static const struct among a_1[8] = {
     186              : { 3, s_1_0, 0, 8, 0},
     187              : { 2, s_1_1, 0, 7, 0},
     188              : { 1, s_1_2, 0, 2, 0},
     189              : { 2, s_1_3, -1, 1, 0},
     190              : { 2, s_1_4, -2, 4, 0},
     191              : { 3, s_1_5, -1, 3, 0},
     192              : { 3, s_1_6, -4, 6, 0},
     193              : { 3, s_1_7, -5, 5, 0}
     194              : };
     195              : 
     196              : static const symbol s_2_0[2] = { 'd', 'e' };
     197              : static const symbol s_2_1[2] = { 'g', 'e' };
     198              : static const symbol s_2_2[5] = { 'i', 's', 'c', 'h', 'e' };
     199              : static const symbol s_2_3[2] = { 'j', 'e' };
     200              : static const symbol s_2_4[5] = { 'l', 'i', 'j', 'k', 'e' };
     201              : static const symbol s_2_5[2] = { 'l', 'e' };
     202              : static const symbol s_2_6[3] = { 'e', 'n', 'e' };
     203              : static const symbol s_2_7[2] = { 'r', 'e' };
     204              : static const symbol s_2_8[2] = { 's', 'e' };
     205              : static const symbol s_2_9[2] = { 't', 'e' };
     206              : static const symbol s_2_10[4] = { 'i', 'e', 'v', 'e' };
     207              : static const struct among a_2[11] = {
     208              : { 2, s_2_0, 0, 5, 0},
     209              : { 2, s_2_1, 0, 2, 0},
     210              : { 5, s_2_2, 0, 4, 0},
     211              : { 2, s_2_3, 0, 1, 0},
     212              : { 5, s_2_4, 0, 3, 0},
     213              : { 2, s_2_5, 0, 9, 0},
     214              : { 3, s_2_6, 0, 10, 0},
     215              : { 2, s_2_7, 0, 8, 0},
     216              : { 2, s_2_8, 0, 7, 0},
     217              : { 2, s_2_9, 0, 6, 0},
     218              : { 4, s_2_10, 0, 11, 0}
     219              : };
     220              : 
     221              : static const symbol s_3_0[4] = { 'h', 'e', 'i', 'd' };
     222              : static const symbol s_3_1[3] = { 'f', 'i', 'e' };
     223              : static const symbol s_3_2[3] = { 'g', 'i', 'e' };
     224              : static const symbol s_3_3[4] = { 'a', 't', 'i', 'e' };
     225              : static const symbol s_3_4[4] = { 'i', 's', 'm', 'e' };
     226              : static const symbol s_3_5[3] = { 'i', 'n', 'g' };
     227              : static const symbol s_3_6[4] = { 'a', 'r', 'i', 'j' };
     228              : static const symbol s_3_7[4] = { 'e', 'r', 'i', 'j' };
     229              : static const symbol s_3_8[3] = { 's', 'e', 'l' };
     230              : static const symbol s_3_9[4] = { 'r', 'd', 'e', 'r' };
     231              : static const symbol s_3_10[4] = { 's', 't', 'e', 'r' };
     232              : static const symbol s_3_11[5] = { 'i', 't', 'e', 'i', 't' };
     233              : static const symbol s_3_12[3] = { 'd', 's', 't' };
     234              : static const symbol s_3_13[3] = { 't', 's', 't' };
     235              : static const struct among a_3[14] = {
     236              : { 4, s_3_0, 0, 3, 0},
     237              : { 3, s_3_1, 0, 7, 0},
     238              : { 3, s_3_2, 0, 8, 0},
     239              : { 4, s_3_3, 0, 1, 0},
     240              : { 4, s_3_4, 0, 5, 0},
     241              : { 3, s_3_5, 0, 5, 0},
     242              : { 4, s_3_6, 0, 6, 0},
     243              : { 4, s_3_7, 0, 5, 0},
     244              : { 3, s_3_8, 0, 3, 0},
     245              : { 4, s_3_9, 0, 4, 0},
     246              : { 4, s_3_10, 0, 3, 0},
     247              : { 5, s_3_11, 0, 2, 0},
     248              : { 3, s_3_12, 0, 10, 0},
     249              : { 3, s_3_13, 0, 9, 0}
     250              : };
     251              : 
     252              : static const symbol s_4_0[3] = { 'e', 'n', 'd' };
     253              : static const symbol s_4_1[5] = { 'a', 't', 'i', 'e', 'f' };
     254              : static const symbol s_4_2[4] = { 'e', 'r', 'i', 'g' };
     255              : static const symbol s_4_3[6] = { 'a', 'c', 'h', 't', 'i', 'g' };
     256              : static const symbol s_4_4[6] = { 'i', 'o', 'n', 'e', 'e', 'l' };
     257              : static const symbol s_4_5[4] = { 'b', 'a', 'a', 'r' };
     258              : static const symbol s_4_6[4] = { 'l', 'a', 'a', 'r' };
     259              : static const symbol s_4_7[4] = { 'n', 'a', 'a', 'r' };
     260              : static const symbol s_4_8[4] = { 'r', 'a', 'a', 'r' };
     261              : static const symbol s_4_9[6] = { 'e', 'r', 'i', 'g', 'e', 'r' };
     262              : static const symbol s_4_10[8] = { 'a', 'c', 'h', 't', 'i', 'g', 'e', 'r' };
     263              : static const symbol s_4_11[6] = { 'l', 'i', 'j', 'k', 'e', 'r' };
     264              : static const symbol s_4_12[4] = { 't', 'a', 'n', 't' };
     265              : static const symbol s_4_13[6] = { 'e', 'r', 'i', 'g', 's', 't' };
     266              : static const symbol s_4_14[8] = { 'a', 'c', 'h', 't', 'i', 'g', 's', 't' };
     267              : static const symbol s_4_15[6] = { 'l', 'i', 'j', 'k', 's', 't' };
     268              : static const struct among a_4[16] = {
     269              : { 3, s_4_0, 0, 9, 0},
     270              : { 5, s_4_1, 0, 2, 0},
     271              : { 4, s_4_2, 0, 9, 0},
     272              : { 6, s_4_3, 0, 3, 0},
     273              : { 6, s_4_4, 0, 1, 0},
     274              : { 4, s_4_5, 0, 3, 0},
     275              : { 4, s_4_6, 0, 5, 0},
     276              : { 4, s_4_7, 0, 4, 0},
     277              : { 4, s_4_8, 0, 6, 0},
     278              : { 6, s_4_9, 0, 9, 0},
     279              : { 8, s_4_10, 0, 3, 0},
     280              : { 6, s_4_11, 0, 8, 0},
     281              : { 4, s_4_12, 0, 7, 0},
     282              : { 6, s_4_13, 0, 9, 0},
     283              : { 8, s_4_14, 0, 3, 0},
     284              : { 6, s_4_15, 0, 8, 0}
     285              : };
     286              : 
     287              : static const symbol s_5_0[2] = { 'i', 'g' };
     288              : static const symbol s_5_1[4] = { 'i', 'g', 'e', 'r' };
     289              : static const symbol s_5_2[4] = { 'i', 'g', 's', 't' };
     290              : static const struct among a_5[3] = {
     291              : { 2, s_5_0, 0, 1, 0},
     292              : { 4, s_5_1, 0, 1, 0},
     293              : { 4, s_5_2, 0, 1, 0}
     294              : };
     295              : 
     296              : static const symbol s_6_0[2] = { 'f', 't' };
     297              : static const symbol s_6_1[2] = { 'k', 't' };
     298              : static const symbol s_6_2[2] = { 'p', 't' };
     299              : static const struct among a_6[3] = {
     300              : { 2, s_6_0, 0, 2, 0},
     301              : { 2, s_6_1, 0, 1, 0},
     302              : { 2, s_6_2, 0, 3, 0}
     303              : };
     304              : 
     305              : static const symbol s_7_0[2] = { 'b', 'b' };
     306              : static const symbol s_7_1[2] = { 'c', 'c' };
     307              : static const symbol s_7_2[2] = { 'd', 'd' };
     308              : static const symbol s_7_3[2] = { 'f', 'f' };
     309              : static const symbol s_7_4[2] = { 'g', 'g' };
     310              : static const symbol s_7_5[2] = { 'h', 'h' };
     311              : static const symbol s_7_6[2] = { 'j', 'j' };
     312              : static const symbol s_7_7[2] = { 'k', 'k' };
     313              : static const symbol s_7_8[2] = { 'l', 'l' };
     314              : static const symbol s_7_9[2] = { 'm', 'm' };
     315              : static const symbol s_7_10[2] = { 'n', 'n' };
     316              : static const symbol s_7_11[2] = { 'p', 'p' };
     317              : static const symbol s_7_12[2] = { 'q', 'q' };
     318              : static const symbol s_7_13[2] = { 'r', 'r' };
     319              : static const symbol s_7_14[2] = { 's', 's' };
     320              : static const symbol s_7_15[2] = { 't', 't' };
     321              : static const symbol s_7_16[1] = { 'v' };
     322              : static const symbol s_7_17[2] = { 'v', 'v' };
     323              : static const symbol s_7_18[2] = { 'w', 'w' };
     324              : static const symbol s_7_19[2] = { 'x', 'x' };
     325              : static const symbol s_7_20[1] = { 'z' };
     326              : static const symbol s_7_21[2] = { 'z', 'z' };
     327              : static const struct among a_7[22] = {
     328              : { 2, s_7_0, 0, 1, 0},
     329              : { 2, s_7_1, 0, 2, 0},
     330              : { 2, s_7_2, 0, 3, 0},
     331              : { 2, s_7_3, 0, 4, 0},
     332              : { 2, s_7_4, 0, 5, 0},
     333              : { 2, s_7_5, 0, 6, 0},
     334              : { 2, s_7_6, 0, 7, 0},
     335              : { 2, s_7_7, 0, 8, 0},
     336              : { 2, s_7_8, 0, 9, 0},
     337              : { 2, s_7_9, 0, 10, 0},
     338              : { 2, s_7_10, 0, 11, 0},
     339              : { 2, s_7_11, 0, 12, 0},
     340              : { 2, s_7_12, 0, 13, 0},
     341              : { 2, s_7_13, 0, 14, 0},
     342              : { 2, s_7_14, 0, 15, 0},
     343              : { 2, s_7_15, 0, 16, 0},
     344              : { 1, s_7_16, 0, 4, 0},
     345              : { 2, s_7_17, -1, 17, 0},
     346              : { 2, s_7_18, 0, 18, 0},
     347              : { 2, s_7_19, 0, 19, 0},
     348              : { 1, s_7_20, 0, 15, 0},
     349              : { 2, s_7_21, -1, 20, 0}
     350              : };
     351              : 
     352              : static const symbol s_8_0[1] = { 'd' };
     353              : static const symbol s_8_1[1] = { 't' };
     354              : static const struct among a_8[2] = {
     355              : { 1, s_8_0, 0, 1, 0},
     356              : { 1, s_8_1, 0, 2, 0}
     357              : };
     358              : 
     359              : static const symbol s_9_1[3] = { 'e', 'f', 't' };
     360              : static const symbol s_9_2[3] = { 'v', 'a', 'a' };
     361              : static const symbol s_9_3[3] = { 'v', 'a', 'l' };
     362              : static const symbol s_9_4[4] = { 'v', 'a', 'l', 'i' };
     363              : static const symbol s_9_5[4] = { 'v', 'a', 'r', 'e' };
     364              : static const struct among a_9[6] = {
     365              : { 0, 0, 0, -1, 0},
     366              : { 3, s_9_1, -1, 1, 0},
     367              : { 3, s_9_2, -2, 1, 0},
     368              : { 3, s_9_3, -3, 1, 0},
     369              : { 4, s_9_4, -1, -1, 0},
     370              : { 4, s_9_5, -5, 1, 0}
     371              : };
     372              : 
     373              : static const symbol s_10_0[2] = { 0xC3, 0xAB };
     374              : static const symbol s_10_1[2] = { 0xC3, 0xAF };
     375              : static const struct among a_10[2] = {
     376              : { 2, s_10_0, 0, 1, 0},
     377              : { 2, s_10_1, 0, 2, 0}
     378              : };
     379              : 
     380              : static const symbol s_11_0[2] = { 0xC3, 0xAB };
     381              : static const symbol s_11_1[2] = { 0xC3, 0xAF };
     382              : static const struct among a_11[2] = {
     383              : { 2, s_11_0, 0, 1, 0},
     384              : { 2, s_11_1, 0, 2, 0}
     385              : };
     386              : 
     387              : static const unsigned char g_E[] = { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120 };
     388              : 
     389              : static const unsigned char g_AIOU[] = { 1, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 11, 120, 46, 15 };
     390              : 
     391              : static const unsigned char g_AEIOU[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15 };
     392              : 
     393              : static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15 };
     394              : 
     395              : static const unsigned char g_v_WX[] = { 17, 65, 208, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15 };
     396              : 
     397            0 : static int r_R1(struct SN_env * z) {
     398            0 :     return ((SN_local *)z)->i_p1 <= z->c;
     399              : }
     400              : 
     401            0 : static int r_R2(struct SN_env * z) {
     402            0 :     return ((SN_local *)z)->i_p2 <= z->c;
     403              : }
     404              : 
     405            0 : static int r_V(struct SN_env * z) {
     406              :     {
     407            0 :         int v_1 = z->l - z->c;
     408              :         do {
     409            0 :             int v_2 = z->l - z->c;
     410            0 :             if (in_grouping_b_U(z, g_v, 97, 252, 0)) goto lab0;
     411            0 :             break;
     412            0 :         lab0:
     413            0 :             z->c = z->l - v_2;
     414            0 :             if (!(eq_s_b(z, 2, s_0))) return 0;
     415              :         } while (0);
     416            0 :         z->c = z->l - v_1;
     417              :     }
     418            0 :     return 1;
     419              : }
     420              : 
     421            0 : static int r_VX(struct SN_env * z) {
     422              :     {
     423            0 :         int v_1 = z->l - z->c;
     424              :         {
     425            0 :             int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
     426            0 :             if (ret < 0) return 0;
     427            0 :             z->c = ret;
     428              :         }
     429              :         do {
     430            0 :             int v_2 = z->l - z->c;
     431            0 :             if (in_grouping_b_U(z, g_v, 97, 252, 0)) goto lab0;
     432            0 :             break;
     433            0 :         lab0:
     434            0 :             z->c = z->l - v_2;
     435            0 :             if (!(eq_s_b(z, 2, s_1))) return 0;
     436              :         } while (0);
     437            0 :         z->c = z->l - v_1;
     438              :     }
     439            0 :     return 1;
     440              : }
     441              : 
     442            0 : static int r_C(struct SN_env * z) {
     443              :     {
     444            0 :         int v_1 = z->l - z->c;
     445              :         {
     446            0 :             int v_2 = z->l - z->c;
     447            0 :             if (!(eq_s_b(z, 2, s_2))) goto lab0;
     448            0 :             return 0;
     449            0 :         lab0:
     450            0 :             z->c = z->l - v_2;
     451              :         }
     452            0 :         if (out_grouping_b_U(z, g_v, 97, 252, 0)) return 0;
     453            0 :         z->c = z->l - v_1;
     454              :     }
     455            0 :     return 1;
     456              : }
     457              : 
     458            0 : static int r_lengthen_V(struct SN_env * z) {
     459              :     int among_var;
     460              :     {
     461            0 :         int v_1 = z->l - z->c;
     462            0 :         if (out_grouping_b_U(z, g_v_WX, 97, 252, 0)) goto lab0;
     463            0 :         z->ket = z->c;
     464            0 :         among_var = find_among_b(z, a_0, 21, 0);
     465            0 :         if (!among_var) goto lab0;
     466            0 :         z->bra = z->c;
     467            0 :         switch (among_var) {
     468            0 :             case 1:
     469              :                 {
     470            0 :                     int v_2 = z->l - z->c;
     471              :                     do {
     472            0 :                         int v_3 = z->l - z->c;
     473            0 :                         if (out_grouping_b_U(z, g_AEIOU, 97, 252, 0)) goto lab1;
     474            0 :                         break;
     475            0 :                     lab1:
     476            0 :                         z->c = z->l - v_3;
     477            0 :                         if (z->c > z->lb) goto lab0;
     478              :                     } while (0);
     479            0 :                     z->c = z->l - v_2;
     480              :                 }
     481              :                 {
     482            0 :                     int ret = slice_to(z, &((SN_local *)z)->s_ch);
     483            0 :                     if (ret < 0) return ret;
     484              :                 }
     485              :                 {
     486            0 :                     int saved_c = z->c;
     487            0 :                     int ret = insert_v(z, z->c, z->c, ((SN_local *)z)->s_ch);
     488            0 :                     z->c = saved_c;
     489            0 :                     if (ret < 0) return ret;
     490              :                 }
     491            0 :                 break;
     492            0 :             case 2:
     493              :                 {
     494            0 :                     int v_4 = z->l - z->c;
     495              :                     do {
     496            0 :                         int v_5 = z->l - z->c;
     497            0 :                         if (out_grouping_b_U(z, g_AEIOU, 97, 252, 0)) goto lab2;
     498            0 :                         break;
     499            0 :                     lab2:
     500            0 :                         z->c = z->l - v_5;
     501            0 :                         if (z->c > z->lb) goto lab0;
     502              :                     } while (0);
     503              :                     {
     504            0 :                         int v_6 = z->l - z->c;
     505              :                         do {
     506            0 :                             int v_7 = z->l - z->c;
     507            0 :                             if (in_grouping_b_U(z, g_AIOU, 97, 252, 0)) goto lab4;
     508            0 :                             break;
     509            0 :                         lab4:
     510            0 :                             z->c = z->l - v_7;
     511            0 :                             if (in_grouping_b_U(z, g_E, 101, 235, 0)) goto lab3;
     512            0 :                             if (z->c > z->lb) goto lab3;
     513              :                         } while (0);
     514            0 :                         goto lab0;
     515            0 :                     lab3:
     516            0 :                         z->c = z->l - v_6;
     517              :                     }
     518              :                     {
     519            0 :                         int v_8 = z->l - z->c;
     520              :                         {
     521            0 :                             int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
     522            0 :                             if (ret < 0) goto lab5;
     523            0 :                             z->c = ret;
     524              :                         }
     525            0 :                         if (in_grouping_b_U(z, g_AIOU, 97, 252, 0)) goto lab5;
     526            0 :                         if (out_grouping_b_U(z, g_AEIOU, 97, 252, 0)) goto lab5;
     527            0 :                         goto lab0;
     528            0 :                     lab5:
     529            0 :                         z->c = z->l - v_8;
     530              :                     }
     531            0 :                     z->c = z->l - v_4;
     532              :                 }
     533              :                 {
     534            0 :                     int ret = slice_to(z, &((SN_local *)z)->s_ch);
     535            0 :                     if (ret < 0) return ret;
     536              :                 }
     537              :                 {
     538            0 :                     int saved_c = z->c;
     539            0 :                     int ret = insert_v(z, z->c, z->c, ((SN_local *)z)->s_ch);
     540            0 :                     z->c = saved_c;
     541            0 :                     if (ret < 0) return ret;
     542              :                 }
     543            0 :                 break;
     544            0 :             case 3:
     545              :                 {
     546            0 :                     int ret = slice_from_s(z, 4, s_3);
     547            0 :                     if (ret < 0) return ret;
     548              :                 }
     549            0 :                 break;
     550            0 :             case 4:
     551              :                 {
     552            0 :                     int ret = slice_from_s(z, 3, s_4);
     553            0 :                     if (ret < 0) return ret;
     554              :                 }
     555            0 :                 break;
     556              :         }
     557            0 :     lab0:
     558            0 :         z->c = z->l - v_1;
     559              :     }
     560            0 :     return 1;
     561              : }
     562              : 
     563            0 : static int r_Step_1(struct SN_env * z) {
     564              :     int among_var;
     565            0 :     z->ket = z->c;
     566            0 :     if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     567            0 :     among_var = find_among_b(z, a_1, 8, 0);
     568            0 :     if (!among_var) return 0;
     569            0 :     z->bra = z->c;
     570            0 :     switch (among_var) {
     571            0 :         case 1:
     572              :             {
     573            0 :                 int ret = slice_del(z);
     574            0 :                 if (ret < 0) return ret;
     575              :             }
     576            0 :             break;
     577            0 :         case 2:
     578              :             {
     579            0 :                 int ret = r_R1(z);
     580            0 :                 if (ret <= 0) return ret;
     581              :             }
     582              :             {
     583            0 :                 int v_1 = z->l - z->c;
     584            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 't') goto lab0;
     585            0 :                 z->c--;
     586              :                 {
     587            0 :                     int ret = r_R1(z);
     588            0 :                     if (ret == 0) goto lab0;
     589            0 :                     if (ret < 0) return ret;
     590              :                 }
     591            0 :                 return 0;
     592            0 :             lab0:
     593            0 :                 z->c = z->l - v_1;
     594              :             }
     595              :             {
     596            0 :                 int ret = r_C(z);
     597            0 :                 if (ret <= 0) return ret;
     598              :             }
     599              :             {
     600            0 :                 int ret = slice_del(z);
     601            0 :                 if (ret < 0) return ret;
     602              :             }
     603            0 :             break;
     604            0 :         case 3:
     605              :             {
     606            0 :                 int ret = r_R1(z);
     607            0 :                 if (ret <= 0) return ret;
     608              :             }
     609              :             {
     610            0 :                 int ret = slice_from_s(z, 2, s_5);
     611            0 :                 if (ret < 0) return ret;
     612              :             }
     613            0 :             break;
     614            0 :         case 4:
     615              :             do {
     616            0 :                 int v_2 = z->l - z->c;
     617              :                 {
     618            0 :                     int v_3 = z->l - z->c;
     619            0 :                     if (!(eq_s_b(z, 2, s_6))) goto lab1;
     620              :                     {
     621            0 :                         int ret = r_R1(z);
     622            0 :                         if (ret == 0) goto lab1;
     623            0 :                         if (ret < 0) return ret;
     624              :                     }
     625              :                     {
     626            0 :                         int ret = r_C(z);
     627            0 :                         if (ret == 0) goto lab1;
     628            0 :                         if (ret < 0) return ret;
     629              :                     }
     630            0 :                     z->c = z->l - v_3;
     631              :                 }
     632              :                 {
     633            0 :                     int ret = slice_del(z);
     634            0 :                     if (ret < 0) return ret;
     635              :                 }
     636              :                 {
     637            0 :                     int ret = r_lengthen_V(z);
     638            0 :                     if (ret < 0) return ret;
     639              :                 }
     640            0 :                 break;
     641            0 :             lab1:
     642            0 :                 z->c = z->l - v_2;
     643              :                 {
     644            0 :                     int v_4 = z->l - z->c;
     645            0 :                     if (!(eq_s_b(z, 2, s_7))) goto lab2;
     646              :                     {
     647            0 :                         int ret = r_R1(z);
     648            0 :                         if (ret == 0) goto lab2;
     649            0 :                         if (ret < 0) return ret;
     650              :                     }
     651              :                     {
     652            0 :                         int ret = r_C(z);
     653            0 :                         if (ret == 0) goto lab2;
     654            0 :                         if (ret < 0) return ret;
     655              :                     }
     656            0 :                     z->c = z->l - v_4;
     657              :                 }
     658              :                 {
     659            0 :                     int ret = slice_del(z);
     660            0 :                     if (ret < 0) return ret;
     661              :                 }
     662            0 :                 break;
     663            0 :             lab2:
     664            0 :                 z->c = z->l - v_2;
     665              :                 {
     666            0 :                     int ret = r_R1(z);
     667            0 :                     if (ret <= 0) return ret;
     668              :                 }
     669              :                 {
     670            0 :                     int ret = r_C(z);
     671            0 :                     if (ret <= 0) return ret;
     672              :                 }
     673              :                 {
     674            0 :                     int ret = slice_from_s(z, 1, s_8);
     675            0 :                     if (ret < 0) return ret;
     676              :                 }
     677              :             } while (0);
     678            0 :             break;
     679            0 :         case 5:
     680              :             {
     681            0 :                 int ret = r_R1(z);
     682            0 :                 if (ret <= 0) return ret;
     683              :             }
     684              :             {
     685            0 :                 int ret = slice_from_s(z, 2, s_9);
     686            0 :                 if (ret < 0) return ret;
     687              :             }
     688            0 :             break;
     689            0 :         case 6:
     690              :             {
     691            0 :                 int ret = r_R1(z);
     692            0 :                 if (ret <= 0) return ret;
     693              :             }
     694              :             {
     695            0 :                 int ret = r_V(z);
     696            0 :                 if (ret <= 0) return ret;
     697              :             }
     698              :             {
     699            0 :                 int ret = slice_from_s(z, 2, s_10);
     700            0 :                 if (ret < 0) return ret;
     701              :             }
     702            0 :             break;
     703            0 :         case 7:
     704              :             do {
     705            0 :                 int v_5 = z->l - z->c;
     706            0 :                 if (!(eq_s_b(z, 3, s_11))) goto lab3;
     707              :                 {
     708            0 :                     int ret = r_R1(z);
     709            0 :                     if (ret == 0) goto lab3;
     710            0 :                     if (ret < 0) return ret;
     711              :                 }
     712            0 :                 z->bra = z->c;
     713              :                 {
     714            0 :                     int ret = slice_from_s(z, 4, s_12);
     715            0 :                     if (ret < 0) return ret;
     716              :                 }
     717            0 :                 break;
     718            0 :             lab3:
     719            0 :                 z->c = z->l - v_5;
     720            0 :                 if (!(eq_s_b(z, 2, s_13))) goto lab4;
     721              :                 {
     722            0 :                     int ret = slice_del(z);
     723            0 :                     if (ret < 0) return ret;
     724              :                 }
     725            0 :                 break;
     726            0 :             lab4:
     727            0 :                 z->c = z->l - v_5;
     728            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 'd') goto lab5;
     729            0 :                 z->c--;
     730              :                 {
     731            0 :                     int ret = r_R1(z);
     732            0 :                     if (ret == 0) goto lab5;
     733            0 :                     if (ret < 0) return ret;
     734              :                 }
     735              :                 {
     736            0 :                     int ret = r_C(z);
     737            0 :                     if (ret == 0) goto lab5;
     738            0 :                     if (ret < 0) return ret;
     739              :                 }
     740            0 :                 z->bra = z->c;
     741              :                 {
     742            0 :                     int ret = slice_del(z);
     743            0 :                     if (ret < 0) return ret;
     744              :                 }
     745            0 :                 break;
     746            0 :             lab5:
     747            0 :                 z->c = z->l - v_5;
     748              :                 do {
     749            0 :                     int v_6 = z->l - z->c;
     750            0 :                     if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab7;
     751            0 :                     z->c--;
     752            0 :                     break;
     753            0 :                 lab7:
     754            0 :                     z->c = z->l - v_6;
     755            0 :                     if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab6;
     756            0 :                     z->c--;
     757              :                 } while (0);
     758              :                 {
     759            0 :                     int ret = r_V(z);
     760            0 :                     if (ret == 0) goto lab6;
     761            0 :                     if (ret < 0) return ret;
     762              :                 }
     763              :                 {
     764            0 :                     int ret = slice_del(z);
     765            0 :                     if (ret < 0) return ret;
     766              :                 }
     767            0 :                 break;
     768            0 :             lab6:
     769            0 :                 z->c = z->l - v_5;
     770              :                 {
     771            0 :                     int ret = r_R1(z);
     772            0 :                     if (ret <= 0) return ret;
     773              :                 }
     774              :                 {
     775            0 :                     int ret = r_C(z);
     776            0 :                     if (ret <= 0) return ret;
     777              :                 }
     778              :                 {
     779            0 :                     int ret = slice_del(z);
     780            0 :                     if (ret < 0) return ret;
     781              :                 }
     782              :                 {
     783            0 :                     int ret = r_lengthen_V(z);
     784            0 :                     if (ret <= 0) return ret;
     785              :                 }
     786              :             } while (0);
     787            0 :             break;
     788            0 :         case 8:
     789              :             {
     790            0 :                 int ret = slice_from_s(z, 2, s_14);
     791            0 :                 if (ret < 0) return ret;
     792              :             }
     793            0 :             break;
     794              :     }
     795            0 :     return 1;
     796              : }
     797              : 
     798            0 : static int r_Step_2(struct SN_env * z) {
     799              :     int among_var;
     800            0 :     z->ket = z->c;
     801            0 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] != 101) return 0;
     802            0 :     among_var = find_among_b(z, a_2, 11, 0);
     803            0 :     if (!among_var) return 0;
     804            0 :     z->bra = z->c;
     805            0 :     switch (among_var) {
     806            0 :         case 1:
     807              :             do {
     808            0 :                 int v_1 = z->l - z->c;
     809            0 :                 if (!(eq_s_b(z, 2, s_15))) goto lab0;
     810            0 :                 z->bra = z->c;
     811              :                 {
     812            0 :                     int ret = slice_del(z);
     813            0 :                     if (ret < 0) return ret;
     814              :                 }
     815            0 :                 break;
     816            0 :             lab0:
     817            0 :                 z->c = z->l - v_1;
     818            0 :                 if (!(eq_s_b(z, 2, s_16))) goto lab1;
     819            0 :                 z->bra = z->c;
     820              :                 {
     821            0 :                     int ret = r_R1(z);
     822            0 :                     if (ret == 0) goto lab1;
     823            0 :                     if (ret < 0) return ret;
     824              :                 }
     825              :                 {
     826            0 :                     int ret = r_C(z);
     827            0 :                     if (ret == 0) goto lab1;
     828            0 :                     if (ret < 0) return ret;
     829              :                 }
     830              :                 {
     831            0 :                     int ret = slice_del(z);
     832            0 :                     if (ret < 0) return ret;
     833              :                 }
     834            0 :                 break;
     835            0 :             lab1:
     836            0 :                 z->c = z->l - v_1;
     837            0 :                 if (!(eq_s_b(z, 3, s_17))) goto lab2;
     838            0 :                 z->bra = z->c;
     839              :                 {
     840            0 :                     int ret = slice_from_s(z, 2, s_18);
     841            0 :                     if (ret < 0) return ret;
     842              :                 }
     843            0 :                 break;
     844            0 :             lab2:
     845            0 :                 z->c = z->l - v_1;
     846            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 't') goto lab3;
     847            0 :                 z->c--;
     848            0 :                 z->bra = z->c;
     849              :                 {
     850            0 :                     int ret = r_R1(z);
     851            0 :                     if (ret == 0) goto lab3;
     852            0 :                     if (ret < 0) return ret;
     853              :                 }
     854              :                 {
     855            0 :                     int ret = r_VX(z);
     856            0 :                     if (ret == 0) goto lab3;
     857            0 :                     if (ret < 0) return ret;
     858              :                 }
     859              :                 {
     860            0 :                     int ret = slice_del(z);
     861            0 :                     if (ret < 0) return ret;
     862              :                 }
     863            0 :                 break;
     864            0 :             lab3:
     865            0 :                 z->c = z->l - v_1;
     866            0 :                 if (!(eq_s_b(z, 3, s_19))) goto lab4;
     867            0 :                 z->bra = z->c;
     868              :                 {
     869            0 :                     int ret = slice_from_s(z, 3, s_20);
     870            0 :                     if (ret < 0) return ret;
     871              :                 }
     872            0 :                 break;
     873            0 :             lab4:
     874            0 :                 z->c = z->l - v_1;
     875            0 :                 if (!(eq_s_b(z, 2, s_21))) goto lab5;
     876            0 :                 z->bra = z->c;
     877              :                 {
     878            0 :                     int ret = slice_from_s(z, 1, s_22);
     879            0 :                     if (ret < 0) return ret;
     880              :                 }
     881            0 :                 break;
     882            0 :             lab5:
     883            0 :                 z->c = z->l - v_1;
     884            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != '\'') goto lab6;
     885            0 :                 z->c--;
     886            0 :                 z->bra = z->c;
     887              :                 {
     888            0 :                     int ret = r_R1(z);
     889            0 :                     if (ret == 0) goto lab6;
     890            0 :                     if (ret < 0) return ret;
     891              :                 }
     892              :                 {
     893            0 :                     int ret = slice_del(z);
     894            0 :                     if (ret < 0) return ret;
     895              :                 }
     896            0 :                 break;
     897            0 :             lab6:
     898            0 :                 z->c = z->l - v_1;
     899            0 :                 z->bra = z->c;
     900              :                 {
     901            0 :                     int ret = r_R1(z);
     902            0 :                     if (ret <= 0) return ret;
     903              :                 }
     904              :                 {
     905            0 :                     int ret = r_C(z);
     906            0 :                     if (ret <= 0) return ret;
     907              :                 }
     908              :                 {
     909            0 :                     int ret = slice_del(z);
     910            0 :                     if (ret < 0) return ret;
     911              :                 }
     912              :             } while (0);
     913            0 :             break;
     914            0 :         case 2:
     915              :             {
     916            0 :                 int ret = r_R1(z);
     917            0 :                 if (ret <= 0) return ret;
     918              :             }
     919              :             {
     920            0 :                 int ret = slice_from_s(z, 1, s_23);
     921            0 :                 if (ret < 0) return ret;
     922              :             }
     923            0 :             break;
     924            0 :         case 3:
     925              :             {
     926            0 :                 int ret = r_R1(z);
     927            0 :                 if (ret <= 0) return ret;
     928              :             }
     929              :             {
     930            0 :                 int ret = slice_from_s(z, 4, s_24);
     931            0 :                 if (ret < 0) return ret;
     932              :             }
     933            0 :             break;
     934            0 :         case 4:
     935              :             {
     936            0 :                 int ret = r_R1(z);
     937            0 :                 if (ret <= 0) return ret;
     938              :             }
     939              :             {
     940            0 :                 int ret = slice_from_s(z, 4, s_25);
     941            0 :                 if (ret < 0) return ret;
     942              :             }
     943            0 :             break;
     944            0 :         case 5:
     945              :             {
     946            0 :                 int ret = r_R1(z);
     947            0 :                 if (ret <= 0) return ret;
     948              :             }
     949              :             {
     950            0 :                 int ret = r_C(z);
     951            0 :                 if (ret <= 0) return ret;
     952              :             }
     953              :             {
     954            0 :                 int ret = slice_del(z);
     955            0 :                 if (ret < 0) return ret;
     956              :             }
     957            0 :             break;
     958            0 :         case 6:
     959              :             {
     960            0 :                 int ret = r_R1(z);
     961            0 :                 if (ret <= 0) return ret;
     962              :             }
     963              :             {
     964            0 :                 int ret = slice_from_s(z, 1, s_26);
     965            0 :                 if (ret < 0) return ret;
     966              :             }
     967            0 :             break;
     968            0 :         case 7:
     969              :             {
     970            0 :                 int ret = r_R1(z);
     971            0 :                 if (ret <= 0) return ret;
     972              :             }
     973              :             {
     974            0 :                 int ret = slice_from_s(z, 1, s_27);
     975            0 :                 if (ret < 0) return ret;
     976              :             }
     977            0 :             break;
     978            0 :         case 8:
     979              :             {
     980            0 :                 int ret = r_R1(z);
     981            0 :                 if (ret <= 0) return ret;
     982              :             }
     983              :             {
     984            0 :                 int ret = slice_from_s(z, 1, s_28);
     985            0 :                 if (ret < 0) return ret;
     986              :             }
     987            0 :             break;
     988            0 :         case 9:
     989              :             {
     990            0 :                 int ret = r_R1(z);
     991            0 :                 if (ret <= 0) return ret;
     992              :             }
     993              :             {
     994            0 :                 int ret = slice_del(z);
     995            0 :                 if (ret < 0) return ret;
     996              :             }
     997              :             {
     998            0 :                 int ret = insert_s(z, z->c, z->c, 1, s_29);
     999            0 :                 if (ret < 0) return ret;
    1000              :             }
    1001              :             {
    1002            0 :                 int ret = r_lengthen_V(z);
    1003            0 :                 if (ret <= 0) return ret;
    1004              :             }
    1005            0 :             break;
    1006            0 :         case 10:
    1007              :             {
    1008            0 :                 int ret = r_R1(z);
    1009            0 :                 if (ret <= 0) return ret;
    1010              :             }
    1011              :             {
    1012            0 :                 int ret = r_C(z);
    1013            0 :                 if (ret <= 0) return ret;
    1014              :             }
    1015              :             {
    1016            0 :                 int ret = slice_del(z);
    1017            0 :                 if (ret < 0) return ret;
    1018              :             }
    1019              :             {
    1020            0 :                 int ret = insert_s(z, z->c, z->c, 2, s_30);
    1021            0 :                 if (ret < 0) return ret;
    1022              :             }
    1023              :             {
    1024            0 :                 int ret = r_lengthen_V(z);
    1025            0 :                 if (ret <= 0) return ret;
    1026              :             }
    1027            0 :             break;
    1028            0 :         case 11:
    1029              :             {
    1030            0 :                 int ret = r_R1(z);
    1031            0 :                 if (ret <= 0) return ret;
    1032              :             }
    1033              :             {
    1034            0 :                 int ret = r_C(z);
    1035            0 :                 if (ret <= 0) return ret;
    1036              :             }
    1037              :             {
    1038            0 :                 int ret = slice_from_s(z, 3, s_31);
    1039            0 :                 if (ret < 0) return ret;
    1040              :             }
    1041            0 :             break;
    1042              :     }
    1043            0 :     return 1;
    1044              : }
    1045              : 
    1046            0 : static int r_Step_3(struct SN_env * z) {
    1047              :     int among_var;
    1048            0 :     z->ket = z->c;
    1049            0 :     if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1316016 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
    1050            0 :     among_var = find_among_b(z, a_3, 14, 0);
    1051            0 :     if (!among_var) return 0;
    1052            0 :     z->bra = z->c;
    1053            0 :     switch (among_var) {
    1054            0 :         case 1:
    1055              :             {
    1056            0 :                 int ret = r_R1(z);
    1057            0 :                 if (ret <= 0) return ret;
    1058              :             }
    1059              :             {
    1060            0 :                 int ret = slice_from_s(z, 3, s_32);
    1061            0 :                 if (ret < 0) return ret;
    1062              :             }
    1063            0 :             break;
    1064            0 :         case 2:
    1065              :             {
    1066            0 :                 int ret = r_R1(z);
    1067            0 :                 if (ret <= 0) return ret;
    1068              :             }
    1069              :             {
    1070            0 :                 int ret = slice_del(z);
    1071            0 :                 if (ret < 0) return ret;
    1072              :             }
    1073              :             {
    1074            0 :                 int ret = r_lengthen_V(z);
    1075            0 :                 if (ret <= 0) return ret;
    1076              :             }
    1077            0 :             break;
    1078            0 :         case 3:
    1079              :             {
    1080            0 :                 int ret = r_R1(z);
    1081            0 :                 if (ret <= 0) return ret;
    1082              :             }
    1083              :             {
    1084            0 :                 int ret = slice_del(z);
    1085            0 :                 if (ret < 0) return ret;
    1086              :             }
    1087            0 :             break;
    1088            0 :         case 4:
    1089              :             {
    1090            0 :                 int ret = slice_from_s(z, 1, s_33);
    1091            0 :                 if (ret < 0) return ret;
    1092              :             }
    1093            0 :             break;
    1094            0 :         case 5:
    1095              :             do {
    1096            0 :                 int v_1 = z->l - z->c;
    1097            0 :                 if (!(eq_s_b(z, 3, s_34))) goto lab0;
    1098              :                 {
    1099            0 :                     int ret = slice_from_s(z, 2, s_35);
    1100            0 :                     if (ret < 0) return ret;
    1101              :                 }
    1102            0 :                 break;
    1103            0 :             lab0:
    1104            0 :                 z->c = z->l - v_1;
    1105              :                 {
    1106            0 :                     int ret = r_R1(z);
    1107            0 :                     if (ret <= 0) return ret;
    1108              :                 }
    1109              :                 {
    1110            0 :                     int ret = slice_del(z);
    1111            0 :                     if (ret < 0) return ret;
    1112              :                 }
    1113              :                 {
    1114            0 :                     int ret = r_lengthen_V(z);
    1115            0 :                     if (ret <= 0) return ret;
    1116              :                 }
    1117              :             } while (0);
    1118            0 :             break;
    1119            0 :         case 6:
    1120              :             {
    1121            0 :                 int ret = r_R1(z);
    1122            0 :                 if (ret <= 0) return ret;
    1123              :             }
    1124              :             {
    1125            0 :                 int ret = r_C(z);
    1126            0 :                 if (ret <= 0) return ret;
    1127              :             }
    1128              :             {
    1129            0 :                 int ret = slice_from_s(z, 3, s_36);
    1130            0 :                 if (ret < 0) return ret;
    1131              :             }
    1132            0 :             break;
    1133            0 :         case 7:
    1134              :             {
    1135            0 :                 int ret = r_R2(z);
    1136            0 :                 if (ret <= 0) return ret;
    1137              :             }
    1138              :             {
    1139            0 :                 int ret = slice_del(z);
    1140            0 :                 if (ret < 0) return ret;
    1141              :             }
    1142              :             {
    1143            0 :                 int ret = insert_s(z, z->c, z->c, 1, s_37);
    1144            0 :                 if (ret < 0) return ret;
    1145              :             }
    1146              :             {
    1147            0 :                 int ret = r_lengthen_V(z);
    1148            0 :                 if (ret <= 0) return ret;
    1149              :             }
    1150            0 :             break;
    1151            0 :         case 8:
    1152              :             {
    1153            0 :                 int ret = r_R2(z);
    1154            0 :                 if (ret <= 0) return ret;
    1155              :             }
    1156              :             {
    1157            0 :                 int ret = slice_del(z);
    1158            0 :                 if (ret < 0) return ret;
    1159              :             }
    1160              :             {
    1161            0 :                 int ret = insert_s(z, z->c, z->c, 1, s_38);
    1162            0 :                 if (ret < 0) return ret;
    1163              :             }
    1164              :             {
    1165            0 :                 int ret = r_lengthen_V(z);
    1166            0 :                 if (ret <= 0) return ret;
    1167              :             }
    1168            0 :             break;
    1169            0 :         case 9:
    1170              :             {
    1171            0 :                 int ret = r_R1(z);
    1172            0 :                 if (ret <= 0) return ret;
    1173              :             }
    1174              :             {
    1175            0 :                 int ret = r_C(z);
    1176            0 :                 if (ret <= 0) return ret;
    1177              :             }
    1178              :             {
    1179            0 :                 int ret = slice_from_s(z, 1, s_39);
    1180            0 :                 if (ret < 0) return ret;
    1181              :             }
    1182            0 :             break;
    1183            0 :         case 10:
    1184              :             {
    1185            0 :                 int ret = r_R1(z);
    1186            0 :                 if (ret <= 0) return ret;
    1187              :             }
    1188              :             {
    1189            0 :                 int ret = r_C(z);
    1190            0 :                 if (ret <= 0) return ret;
    1191              :             }
    1192              :             {
    1193            0 :                 int ret = slice_from_s(z, 1, s_40);
    1194            0 :                 if (ret < 0) return ret;
    1195              :             }
    1196            0 :             break;
    1197              :     }
    1198            0 :     return 1;
    1199              : }
    1200              : 
    1201            0 : static int r_Step_4(struct SN_env * z) {
    1202              :     int among_var;
    1203              :     do {
    1204            0 :         int v_1 = z->l - z->c;
    1205            0 :         z->ket = z->c;
    1206            0 :         if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1315024 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
    1207            0 :         among_var = find_among_b(z, a_4, 16, 0);
    1208            0 :         if (!among_var) goto lab0;
    1209            0 :         z->bra = z->c;
    1210            0 :         switch (among_var) {
    1211            0 :             case 1:
    1212              :                 {
    1213            0 :                     int ret = r_R1(z);
    1214            0 :                     if (ret == 0) goto lab0;
    1215            0 :                     if (ret < 0) return ret;
    1216              :                 }
    1217              :                 {
    1218            0 :                     int ret = slice_from_s(z, 2, s_41);
    1219            0 :                     if (ret < 0) return ret;
    1220              :                 }
    1221            0 :                 break;
    1222            0 :             case 2:
    1223              :                 {
    1224            0 :                     int ret = r_R1(z);
    1225            0 :                     if (ret == 0) goto lab0;
    1226            0 :                     if (ret < 0) return ret;
    1227              :                 }
    1228              :                 {
    1229            0 :                     int ret = slice_from_s(z, 3, s_42);
    1230            0 :                     if (ret < 0) return ret;
    1231              :                 }
    1232            0 :                 break;
    1233            0 :             case 3:
    1234              :                 {
    1235            0 :                     int ret = r_R1(z);
    1236            0 :                     if (ret == 0) goto lab0;
    1237            0 :                     if (ret < 0) return ret;
    1238              :                 }
    1239              :                 {
    1240            0 :                     int ret = slice_del(z);
    1241            0 :                     if (ret < 0) return ret;
    1242              :                 }
    1243            0 :                 break;
    1244            0 :             case 4:
    1245              :                 {
    1246            0 :                     int ret = r_R1(z);
    1247            0 :                     if (ret == 0) goto lab0;
    1248            0 :                     if (ret < 0) return ret;
    1249              :                 }
    1250              :                 {
    1251            0 :                     int ret = r_V(z);
    1252            0 :                     if (ret == 0) goto lab0;
    1253            0 :                     if (ret < 0) return ret;
    1254              :                 }
    1255              :                 {
    1256            0 :                     int ret = slice_from_s(z, 1, s_43);
    1257            0 :                     if (ret < 0) return ret;
    1258              :                 }
    1259            0 :                 break;
    1260            0 :             case 5:
    1261              :                 {
    1262            0 :                     int ret = r_R1(z);
    1263            0 :                     if (ret == 0) goto lab0;
    1264            0 :                     if (ret < 0) return ret;
    1265              :                 }
    1266              :                 {
    1267            0 :                     int ret = r_V(z);
    1268            0 :                     if (ret == 0) goto lab0;
    1269            0 :                     if (ret < 0) return ret;
    1270              :                 }
    1271              :                 {
    1272            0 :                     int ret = slice_from_s(z, 1, s_44);
    1273            0 :                     if (ret < 0) return ret;
    1274              :                 }
    1275            0 :                 break;
    1276            0 :             case 6:
    1277              :                 {
    1278            0 :                     int ret = r_R1(z);
    1279            0 :                     if (ret == 0) goto lab0;
    1280            0 :                     if (ret < 0) return ret;
    1281              :                 }
    1282              :                 {
    1283            0 :                     int ret = r_V(z);
    1284            0 :                     if (ret == 0) goto lab0;
    1285            0 :                     if (ret < 0) return ret;
    1286              :                 }
    1287              :                 {
    1288            0 :                     int ret = slice_from_s(z, 1, s_45);
    1289            0 :                     if (ret < 0) return ret;
    1290              :                 }
    1291            0 :                 break;
    1292            0 :             case 7:
    1293              :                 {
    1294            0 :                     int ret = r_R1(z);
    1295            0 :                     if (ret == 0) goto lab0;
    1296            0 :                     if (ret < 0) return ret;
    1297              :                 }
    1298              :                 {
    1299            0 :                     int ret = slice_from_s(z, 4, s_46);
    1300            0 :                     if (ret < 0) return ret;
    1301              :                 }
    1302            0 :                 break;
    1303            0 :             case 8:
    1304              :                 {
    1305            0 :                     int ret = r_R1(z);
    1306            0 :                     if (ret == 0) goto lab0;
    1307            0 :                     if (ret < 0) return ret;
    1308              :                 }
    1309              :                 {
    1310            0 :                     int ret = slice_from_s(z, 4, s_47);
    1311            0 :                     if (ret < 0) return ret;
    1312              :                 }
    1313            0 :                 break;
    1314            0 :             case 9:
    1315              :                 {
    1316            0 :                     int ret = r_R1(z);
    1317            0 :                     if (ret == 0) goto lab0;
    1318            0 :                     if (ret < 0) return ret;
    1319              :                 }
    1320              :                 {
    1321            0 :                     int ret = r_C(z);
    1322            0 :                     if (ret == 0) goto lab0;
    1323            0 :                     if (ret < 0) return ret;
    1324              :                 }
    1325              :                 {
    1326            0 :                     int ret = slice_del(z);
    1327            0 :                     if (ret < 0) return ret;
    1328              :                 }
    1329              :                 {
    1330            0 :                     int ret = r_lengthen_V(z);
    1331            0 :                     if (ret < 0) return ret;
    1332              :                 }
    1333            0 :                 break;
    1334              :         }
    1335            0 :         break;
    1336            0 :     lab0:
    1337            0 :         z->c = z->l - v_1;
    1338            0 :         z->ket = z->c;
    1339            0 :         if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1310848 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
    1340            0 :         if (!find_among_b(z, a_5, 3, 0)) return 0;
    1341            0 :         z->bra = z->c;
    1342              :         {
    1343            0 :             int ret = r_R1(z);
    1344            0 :             if (ret <= 0) return ret;
    1345              :         }
    1346              :         {
    1347            0 :             int v_2 = z->l - z->c;
    1348            0 :             if (!(eq_s_b(z, 3, s_48))) goto lab1;
    1349            0 :             if (z->c > z->lb) goto lab1;
    1350            0 :             return 0;
    1351            0 :         lab1:
    1352            0 :             z->c = z->l - v_2;
    1353              :         }
    1354              :         {
    1355            0 :             int ret = r_C(z);
    1356            0 :             if (ret <= 0) return ret;
    1357              :         }
    1358              :         {
    1359            0 :             int ret = slice_del(z);
    1360            0 :             if (ret < 0) return ret;
    1361              :         }
    1362              :         {
    1363            0 :             int ret = r_lengthen_V(z);
    1364            0 :             if (ret <= 0) return ret;
    1365              :         }
    1366              :     } while (0);
    1367            0 :     return 1;
    1368              : }
    1369              : 
    1370            0 : static int r_Step_7(struct SN_env * z) {
    1371              :     int among_var;
    1372            0 :     z->ket = z->c;
    1373            0 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] != 116) return 0;
    1374            0 :     among_var = find_among_b(z, a_6, 3, 0);
    1375            0 :     if (!among_var) return 0;
    1376            0 :     z->bra = z->c;
    1377            0 :     switch (among_var) {
    1378            0 :         case 1:
    1379              :             {
    1380            0 :                 int ret = slice_from_s(z, 1, s_49);
    1381            0 :                 if (ret < 0) return ret;
    1382              :             }
    1383            0 :             break;
    1384            0 :         case 2:
    1385              :             {
    1386            0 :                 int ret = slice_from_s(z, 1, s_50);
    1387            0 :                 if (ret < 0) return ret;
    1388              :             }
    1389            0 :             break;
    1390            0 :         case 3:
    1391              :             {
    1392            0 :                 int ret = slice_from_s(z, 1, s_51);
    1393            0 :                 if (ret < 0) return ret;
    1394              :             }
    1395            0 :             break;
    1396              :     }
    1397            0 :     return 1;
    1398              : }
    1399              : 
    1400            0 : static int r_Step_6(struct SN_env * z) {
    1401              :     int among_var;
    1402            0 :     z->ket = z->c;
    1403            0 :     if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((98532828 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
    1404            0 :     among_var = find_among_b(z, a_7, 22, 0);
    1405            0 :     if (!among_var) return 0;
    1406            0 :     z->bra = z->c;
    1407            0 :     switch (among_var) {
    1408            0 :         case 1:
    1409              :             {
    1410            0 :                 int ret = slice_from_s(z, 1, s_52);
    1411            0 :                 if (ret < 0) return ret;
    1412              :             }
    1413            0 :             break;
    1414            0 :         case 2:
    1415              :             {
    1416            0 :                 int ret = slice_from_s(z, 1, s_53);
    1417            0 :                 if (ret < 0) return ret;
    1418              :             }
    1419            0 :             break;
    1420            0 :         case 3:
    1421              :             {
    1422            0 :                 int ret = slice_from_s(z, 1, s_54);
    1423            0 :                 if (ret < 0) return ret;
    1424              :             }
    1425            0 :             break;
    1426            0 :         case 4:
    1427              :             {
    1428            0 :                 int ret = slice_from_s(z, 1, s_55);
    1429            0 :                 if (ret < 0) return ret;
    1430              :             }
    1431            0 :             break;
    1432            0 :         case 5:
    1433              :             {
    1434            0 :                 int ret = slice_from_s(z, 1, s_56);
    1435            0 :                 if (ret < 0) return ret;
    1436              :             }
    1437            0 :             break;
    1438            0 :         case 6:
    1439              :             {
    1440            0 :                 int ret = slice_from_s(z, 1, s_57);
    1441            0 :                 if (ret < 0) return ret;
    1442              :             }
    1443            0 :             break;
    1444            0 :         case 7:
    1445              :             {
    1446            0 :                 int ret = slice_from_s(z, 1, s_58);
    1447            0 :                 if (ret < 0) return ret;
    1448              :             }
    1449            0 :             break;
    1450            0 :         case 8:
    1451              :             {
    1452            0 :                 int ret = slice_from_s(z, 1, s_59);
    1453            0 :                 if (ret < 0) return ret;
    1454              :             }
    1455            0 :             break;
    1456            0 :         case 9:
    1457              :             {
    1458            0 :                 int ret = slice_from_s(z, 1, s_60);
    1459            0 :                 if (ret < 0) return ret;
    1460              :             }
    1461            0 :             break;
    1462            0 :         case 10:
    1463              :             {
    1464            0 :                 int ret = slice_from_s(z, 1, s_61);
    1465            0 :                 if (ret < 0) return ret;
    1466              :             }
    1467            0 :             break;
    1468            0 :         case 11:
    1469              :             {
    1470            0 :                 int v_1 = z->l - z->c;
    1471            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab0;
    1472            0 :                 z->c--;
    1473            0 :                 if (z->c > z->lb) goto lab0;
    1474            0 :                 return 0;
    1475            0 :             lab0:
    1476            0 :                 z->c = z->l - v_1;
    1477              :             }
    1478              :             {
    1479            0 :                 int ret = slice_from_s(z, 1, s_62);
    1480            0 :                 if (ret < 0) return ret;
    1481              :             }
    1482            0 :             break;
    1483            0 :         case 12:
    1484              :             {
    1485            0 :                 int ret = slice_from_s(z, 1, s_63);
    1486            0 :                 if (ret < 0) return ret;
    1487              :             }
    1488            0 :             break;
    1489            0 :         case 13:
    1490              :             {
    1491            0 :                 int ret = slice_from_s(z, 1, s_64);
    1492            0 :                 if (ret < 0) return ret;
    1493              :             }
    1494            0 :             break;
    1495            0 :         case 14:
    1496              :             {
    1497            0 :                 int ret = slice_from_s(z, 1, s_65);
    1498            0 :                 if (ret < 0) return ret;
    1499              :             }
    1500            0 :             break;
    1501            0 :         case 15:
    1502              :             {
    1503            0 :                 int ret = slice_from_s(z, 1, s_66);
    1504            0 :                 if (ret < 0) return ret;
    1505              :             }
    1506            0 :             break;
    1507            0 :         case 16:
    1508              :             {
    1509            0 :                 int ret = slice_from_s(z, 1, s_67);
    1510            0 :                 if (ret < 0) return ret;
    1511              :             }
    1512            0 :             break;
    1513            0 :         case 17:
    1514              :             {
    1515            0 :                 int ret = slice_from_s(z, 1, s_68);
    1516            0 :                 if (ret < 0) return ret;
    1517              :             }
    1518            0 :             break;
    1519            0 :         case 18:
    1520              :             {
    1521            0 :                 int ret = slice_from_s(z, 1, s_69);
    1522            0 :                 if (ret < 0) return ret;
    1523              :             }
    1524            0 :             break;
    1525            0 :         case 19:
    1526              :             {
    1527            0 :                 int ret = slice_from_s(z, 1, s_70);
    1528            0 :                 if (ret < 0) return ret;
    1529              :             }
    1530            0 :             break;
    1531            0 :         case 20:
    1532              :             {
    1533            0 :                 int ret = slice_from_s(z, 1, s_71);
    1534            0 :                 if (ret < 0) return ret;
    1535              :             }
    1536            0 :             break;
    1537              :     }
    1538            0 :     return 1;
    1539              : }
    1540              : 
    1541            0 : static int r_Step_1c(struct SN_env * z) {
    1542              :     int among_var;
    1543            0 :     z->ket = z->c;
    1544            0 :     if (z->c <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 116)) return 0;
    1545            0 :     among_var = find_among_b(z, a_8, 2, 0);
    1546            0 :     if (!among_var) return 0;
    1547            0 :     z->bra = z->c;
    1548              :     {
    1549            0 :         int ret = r_R1(z);
    1550            0 :         if (ret <= 0) return ret;
    1551              :     }
    1552              :     {
    1553            0 :         int ret = r_C(z);
    1554            0 :         if (ret <= 0) return ret;
    1555              :     }
    1556            0 :     switch (among_var) {
    1557            0 :         case 1:
    1558              :             {
    1559            0 :                 int v_1 = z->l - z->c;
    1560            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 'n') goto lab0;
    1561            0 :                 z->c--;
    1562              :                 {
    1563            0 :                     int ret = r_R1(z);
    1564            0 :                     if (ret == 0) goto lab0;
    1565            0 :                     if (ret < 0) return ret;
    1566              :                 }
    1567            0 :                 return 0;
    1568            0 :             lab0:
    1569            0 :                 z->c = z->l - v_1;
    1570              :             }
    1571              :             do {
    1572            0 :                 int v_2 = z->l - z->c;
    1573            0 :                 if (!(eq_s_b(z, 2, s_72))) goto lab1;
    1574            0 :                 if (z->c > z->lb) goto lab1;
    1575              :                 {
    1576            0 :                     int ret = slice_from_s(z, 1, s_73);
    1577            0 :                     if (ret < 0) return ret;
    1578              :                 }
    1579            0 :                 break;
    1580            0 :             lab1:
    1581            0 :                 z->c = z->l - v_2;
    1582              :                 {
    1583            0 :                     int ret = slice_del(z);
    1584            0 :                     if (ret < 0) return ret;
    1585              :                 }
    1586              :             } while (0);
    1587            0 :             break;
    1588            0 :         case 2:
    1589              :             {
    1590            0 :                 int v_3 = z->l - z->c;
    1591            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 'h') goto lab2;
    1592            0 :                 z->c--;
    1593              :                 {
    1594            0 :                     int ret = r_R1(z);
    1595            0 :                     if (ret == 0) goto lab2;
    1596            0 :                     if (ret < 0) return ret;
    1597              :                 }
    1598            0 :                 return 0;
    1599            0 :             lab2:
    1600            0 :                 z->c = z->l - v_3;
    1601              :             }
    1602              :             {
    1603            0 :                 int v_4 = z->l - z->c;
    1604            0 :                 if (!(eq_s_b(z, 2, s_74))) goto lab3;
    1605            0 :                 if (z->c > z->lb) goto lab3;
    1606            0 :                 return 0;
    1607            0 :             lab3:
    1608            0 :                 z->c = z->l - v_4;
    1609              :             }
    1610              :             {
    1611            0 :                 int ret = slice_del(z);
    1612            0 :                 if (ret < 0) return ret;
    1613              :             }
    1614            0 :             break;
    1615              :     }
    1616            0 :     return 1;
    1617              : }
    1618              : 
    1619            0 : static int r_Lose_prefix(struct SN_env * z) {
    1620              :     int among_var;
    1621            0 :     z->bra = z->c;
    1622            0 :     if (!(eq_s(z, 2, s_75))) return 0;
    1623            0 :     z->ket = z->c;
    1624              :     {
    1625            0 :         int v_1 = z->c;
    1626              :         {
    1627            0 :             int ret = skip_utf8(z->p, z->c, z->l, 3);
    1628            0 :             if (ret < 0) return 0;
    1629            0 :             z->c = ret;
    1630              :         }
    1631            0 :         z->c = v_1;
    1632              :     }
    1633              :     {
    1634            0 :         int v_2 = z->c;
    1635            0 :         while (1) {
    1636            0 :             int v_3 = z->c;
    1637              :             do {
    1638            0 :                 int v_4 = z->c;
    1639            0 :                 if (!(eq_s(z, 2, s_76))) goto lab1;
    1640            0 :                 break;
    1641            0 :             lab1:
    1642            0 :                 z->c = v_4;
    1643            0 :                 if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab0;
    1644              :             } while (0);
    1645            0 :             break;
    1646            0 :         lab0:
    1647            0 :             z->c = v_3;
    1648              :             {
    1649            0 :                 int ret = skip_utf8(z->p, z->c, z->l, 1);
    1650            0 :                 if (ret < 0) return 0;
    1651            0 :                 z->c = ret;
    1652              :             }
    1653              :         }
    1654            0 :         while (1) {
    1655            0 :             int v_5 = z->c;
    1656              :             do {
    1657            0 :                 int v_6 = z->c;
    1658            0 :                 if (!(eq_s(z, 2, s_77))) goto lab3;
    1659            0 :                 break;
    1660            0 :             lab3:
    1661            0 :                 z->c = v_6;
    1662            0 :                 if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab2;
    1663              :             } while (0);
    1664            0 :             continue;
    1665            0 :         lab2:
    1666            0 :             z->c = v_5;
    1667            0 :             break;
    1668              :         }
    1669            0 :         if (z->c < z->l) goto lab4;
    1670            0 :         return 0;
    1671            0 :     lab4:
    1672            0 :         z->c = v_2;
    1673              :     }
    1674            0 :     if (z->c + 2 >= z->l || z->p[z->c + 2] >> 5 != 3 || !((1314818 >> (z->p[z->c + 2] & 0x1f)) & 1)) among_var = -1; else
    1675            0 :     among_var = find_among(z, a_9, 6, 0);
    1676            0 :     switch (among_var) {
    1677            0 :         case 1:
    1678            0 :             return 0;
    1679              :             break;
    1680              :     }
    1681            0 :     ((SN_local *)z)->b_GE_removed = 1;
    1682              :     {
    1683            0 :         int ret = slice_del(z);
    1684            0 :         if (ret < 0) return ret;
    1685              :     }
    1686              :     {
    1687            0 :         int v_7 = z->c;
    1688            0 :         z->bra = z->c;
    1689            0 :         if (z->c + 1 >= z->l || (z->p[z->c + 1] != 171 && z->p[z->c + 1] != 175)) goto lab5;
    1690            0 :         among_var = find_among(z, a_10, 2, 0);
    1691            0 :         if (!among_var) goto lab5;
    1692            0 :         z->ket = z->c;
    1693            0 :         switch (among_var) {
    1694            0 :             case 1:
    1695              :                 {
    1696            0 :                     int ret = slice_from_s(z, 1, s_78);
    1697            0 :                     if (ret < 0) return ret;
    1698              :                 }
    1699            0 :                 break;
    1700            0 :             case 2:
    1701              :                 {
    1702            0 :                     int ret = slice_from_s(z, 1, s_79);
    1703            0 :                     if (ret < 0) return ret;
    1704              :                 }
    1705            0 :                 break;
    1706              :         }
    1707            0 :     lab5:
    1708            0 :         z->c = v_7;
    1709              :     }
    1710            0 :     return 1;
    1711              : }
    1712              : 
    1713            0 : static int r_Lose_infix(struct SN_env * z) {
    1714              :     int among_var;
    1715              :     {
    1716            0 :         int ret = skip_utf8(z->p, z->c, z->l, 1);
    1717            0 :         if (ret < 0) return 0;
    1718            0 :         z->c = ret;
    1719              :     }
    1720              :     while (1) {
    1721            0 :         z->bra = z->c;
    1722            0 :         if (!(eq_s(z, 2, s_80))) goto lab0;
    1723            0 :         z->ket = z->c;
    1724            0 :         break;
    1725            0 :     lab0:
    1726              :         {
    1727            0 :             int ret = skip_utf8(z->p, z->c, z->l, 1);
    1728            0 :             if (ret < 0) return 0;
    1729            0 :             z->c = ret;
    1730              :         }
    1731              :     }
    1732              :     {
    1733            0 :         int v_1 = z->c;
    1734              :         {
    1735            0 :             int ret = skip_utf8(z->p, z->c, z->l, 3);
    1736            0 :             if (ret < 0) return 0;
    1737            0 :             z->c = ret;
    1738              :         }
    1739            0 :         z->c = v_1;
    1740              :     }
    1741              :     {
    1742            0 :         int v_2 = z->c;
    1743            0 :         while (1) {
    1744            0 :             int v_3 = z->c;
    1745              :             do {
    1746            0 :                 int v_4 = z->c;
    1747            0 :                 if (!(eq_s(z, 2, s_81))) goto lab2;
    1748            0 :                 break;
    1749            0 :             lab2:
    1750            0 :                 z->c = v_4;
    1751            0 :                 if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab1;
    1752              :             } while (0);
    1753            0 :             break;
    1754            0 :         lab1:
    1755            0 :             z->c = v_3;
    1756              :             {
    1757            0 :                 int ret = skip_utf8(z->p, z->c, z->l, 1);
    1758            0 :                 if (ret < 0) return 0;
    1759            0 :                 z->c = ret;
    1760              :             }
    1761              :         }
    1762            0 :         while (1) {
    1763            0 :             int v_5 = z->c;
    1764              :             do {
    1765            0 :                 int v_6 = z->c;
    1766            0 :                 if (!(eq_s(z, 2, s_82))) goto lab4;
    1767            0 :                 break;
    1768            0 :             lab4:
    1769            0 :                 z->c = v_6;
    1770            0 :                 if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab3;
    1771              :             } while (0);
    1772            0 :             continue;
    1773            0 :         lab3:
    1774            0 :             z->c = v_5;
    1775            0 :             break;
    1776              :         }
    1777            0 :         if (z->c < z->l) goto lab5;
    1778            0 :         return 0;
    1779            0 :     lab5:
    1780            0 :         z->c = v_2;
    1781              :     }
    1782            0 :     ((SN_local *)z)->b_GE_removed = 1;
    1783              :     {
    1784            0 :         int ret = slice_del(z);
    1785            0 :         if (ret < 0) return ret;
    1786              :     }
    1787              :     {
    1788            0 :         int v_7 = z->c;
    1789            0 :         z->bra = z->c;
    1790            0 :         if (z->c + 1 >= z->l || (z->p[z->c + 1] != 171 && z->p[z->c + 1] != 175)) goto lab6;
    1791            0 :         among_var = find_among(z, a_11, 2, 0);
    1792            0 :         if (!among_var) goto lab6;
    1793            0 :         z->ket = z->c;
    1794            0 :         switch (among_var) {
    1795            0 :             case 1:
    1796              :                 {
    1797            0 :                     int ret = slice_from_s(z, 1, s_83);
    1798            0 :                     if (ret < 0) return ret;
    1799              :                 }
    1800            0 :                 break;
    1801            0 :             case 2:
    1802              :                 {
    1803            0 :                     int ret = slice_from_s(z, 1, s_84);
    1804            0 :                     if (ret < 0) return ret;
    1805              :                 }
    1806            0 :                 break;
    1807              :         }
    1808            0 :     lab6:
    1809            0 :         z->c = v_7;
    1810              :     }
    1811            0 :     return 1;
    1812              : }
    1813              : 
    1814            0 : static int r_measure(struct SN_env * z) {
    1815            0 :     ((SN_local *)z)->i_p1 = z->l;
    1816            0 :     ((SN_local *)z)->i_p2 = z->l;
    1817            0 :     {
    1818            0 :         int v_1 = z->c;
    1819              :         while (1) {
    1820            0 :             if (out_grouping_U(z, g_v, 97, 252, 0)) goto lab1;
    1821            0 :             continue;
    1822            0 :         lab1:
    1823            0 :             break;
    1824              :         }
    1825              :         {
    1826            0 :             int v_2 = 1;
    1827            0 :             while (1) {
    1828            0 :                 int v_3 = z->c;
    1829              :                 do {
    1830            0 :                     int v_4 = z->c;
    1831            0 :                     if (!(eq_s(z, 2, s_85))) goto lab3;
    1832            0 :                     break;
    1833            0 :                 lab3:
    1834            0 :                     z->c = v_4;
    1835            0 :                     if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab2;
    1836              :                 } while (0);
    1837            0 :                 v_2--;
    1838            0 :                 continue;
    1839            0 :             lab2:
    1840            0 :                 z->c = v_3;
    1841            0 :                 break;
    1842              :             }
    1843            0 :             if (v_2 > 0) goto lab0;
    1844              :         }
    1845            0 :         if (out_grouping_U(z, g_v, 97, 252, 0)) goto lab0;
    1846            0 :         ((SN_local *)z)->i_p1 = z->c;
    1847              :         while (1) {
    1848            0 :             if (out_grouping_U(z, g_v, 97, 252, 0)) goto lab4;
    1849            0 :             continue;
    1850            0 :         lab4:
    1851            0 :             break;
    1852              :         }
    1853              :         {
    1854            0 :             int v_5 = 1;
    1855            0 :             while (1) {
    1856            0 :                 int v_6 = z->c;
    1857              :                 do {
    1858            0 :                     int v_7 = z->c;
    1859            0 :                     if (!(eq_s(z, 2, s_86))) goto lab6;
    1860            0 :                     break;
    1861            0 :                 lab6:
    1862            0 :                     z->c = v_7;
    1863            0 :                     if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab5;
    1864              :                 } while (0);
    1865            0 :                 v_5--;
    1866            0 :                 continue;
    1867            0 :             lab5:
    1868            0 :                 z->c = v_6;
    1869            0 :                 break;
    1870              :             }
    1871            0 :             if (v_5 > 0) goto lab0;
    1872              :         }
    1873            0 :         if (out_grouping_U(z, g_v, 97, 252, 0)) goto lab0;
    1874            0 :         ((SN_local *)z)->i_p2 = z->c;
    1875            0 :     lab0:
    1876            0 :         z->c = v_1;
    1877              :     }
    1878            0 :     return 1;
    1879              : }
    1880              : 
    1881            0 : extern int dutch_UTF_8_stem(struct SN_env * z) {
    1882              :     int b_stemmed;
    1883            0 :     b_stemmed = 0;
    1884              :     {
    1885            0 :         int ret = r_measure(z);
    1886            0 :         if (ret <= 0) return ret;
    1887              :     }
    1888            0 :     z->lb = z->c; z->c = z->l;
    1889              :     {
    1890            0 :         int v_1 = z->l - z->c;
    1891              :         {
    1892            0 :             int ret = r_Step_1(z);
    1893            0 :             if (ret == 0) goto lab0;
    1894            0 :             if (ret < 0) return ret;
    1895              :         }
    1896            0 :         b_stemmed = 1;
    1897            0 :     lab0:
    1898            0 :         z->c = z->l - v_1;
    1899              :     }
    1900              :     {
    1901            0 :         int v_2 = z->l - z->c;
    1902              :         {
    1903            0 :             int ret = r_Step_2(z);
    1904            0 :             if (ret == 0) goto lab1;
    1905            0 :             if (ret < 0) return ret;
    1906              :         }
    1907            0 :         b_stemmed = 1;
    1908            0 :     lab1:
    1909            0 :         z->c = z->l - v_2;
    1910              :     }
    1911              :     {
    1912            0 :         int v_3 = z->l - z->c;
    1913              :         {
    1914            0 :             int ret = r_Step_3(z);
    1915            0 :             if (ret == 0) goto lab2;
    1916            0 :             if (ret < 0) return ret;
    1917              :         }
    1918            0 :         b_stemmed = 1;
    1919            0 :     lab2:
    1920            0 :         z->c = z->l - v_3;
    1921              :     }
    1922              :     {
    1923            0 :         int v_4 = z->l - z->c;
    1924              :         {
    1925            0 :             int ret = r_Step_4(z);
    1926            0 :             if (ret == 0) goto lab3;
    1927            0 :             if (ret < 0) return ret;
    1928              :         }
    1929            0 :         b_stemmed = 1;
    1930            0 :     lab3:
    1931            0 :         z->c = z->l - v_4;
    1932              :     }
    1933            0 :     z->c = z->lb;
    1934            0 :     ((SN_local *)z)->b_GE_removed = 0;
    1935              :     {
    1936            0 :         int v_5 = z->c;
    1937              :         {
    1938            0 :             int v_6 = z->c;
    1939              :             {
    1940            0 :                 int ret = r_Lose_prefix(z);
    1941            0 :                 if (ret == 0) goto lab4;
    1942            0 :                 if (ret < 0) return ret;
    1943              :             }
    1944            0 :             z->c = v_6;
    1945              :             {
    1946            0 :                 int ret = r_measure(z);
    1947            0 :                 if (ret < 0) return ret;
    1948              :             }
    1949              :         }
    1950            0 :     lab4:
    1951            0 :         z->c = v_5;
    1952              :     }
    1953            0 :     z->lb = z->c; z->c = z->l;
    1954              :     {
    1955            0 :         int v_7 = z->l - z->c;
    1956            0 :         if (!((SN_local *)z)->b_GE_removed) goto lab5;
    1957            0 :         b_stemmed = 1;
    1958              :         {
    1959            0 :             int ret = r_Step_1c(z);
    1960            0 :             if (ret == 0) goto lab5;
    1961            0 :             if (ret < 0) return ret;
    1962              :         }
    1963            0 :     lab5:
    1964            0 :         z->c = z->l - v_7;
    1965              :     }
    1966            0 :     z->c = z->lb;
    1967            0 :     ((SN_local *)z)->b_GE_removed = 0;
    1968              :     {
    1969            0 :         int v_8 = z->c;
    1970              :         {
    1971            0 :             int v_9 = z->c;
    1972              :             {
    1973            0 :                 int ret = r_Lose_infix(z);
    1974            0 :                 if (ret == 0) goto lab6;
    1975            0 :                 if (ret < 0) return ret;
    1976              :             }
    1977            0 :             z->c = v_9;
    1978              :             {
    1979            0 :                 int ret = r_measure(z);
    1980            0 :                 if (ret < 0) return ret;
    1981              :             }
    1982              :         }
    1983            0 :     lab6:
    1984            0 :         z->c = v_8;
    1985              :     }
    1986            0 :     z->lb = z->c; z->c = z->l;
    1987              :     {
    1988            0 :         int v_10 = z->l - z->c;
    1989            0 :         if (!((SN_local *)z)->b_GE_removed) goto lab7;
    1990            0 :         b_stemmed = 1;
    1991              :         {
    1992            0 :             int ret = r_Step_1c(z);
    1993            0 :             if (ret == 0) goto lab7;
    1994            0 :             if (ret < 0) return ret;
    1995              :         }
    1996            0 :     lab7:
    1997            0 :         z->c = z->l - v_10;
    1998              :     }
    1999            0 :     z->c = z->lb;
    2000            0 :     z->lb = z->c; z->c = z->l;
    2001              :     {
    2002            0 :         int v_11 = z->l - z->c;
    2003              :         {
    2004            0 :             int ret = r_Step_7(z);
    2005            0 :             if (ret == 0) goto lab8;
    2006            0 :             if (ret < 0) return ret;
    2007              :         }
    2008            0 :         b_stemmed = 1;
    2009            0 :     lab8:
    2010            0 :         z->c = z->l - v_11;
    2011              :     }
    2012              :     {
    2013            0 :         int v_12 = z->l - z->c;
    2014            0 :         if (!b_stemmed) goto lab9;
    2015              :         {
    2016            0 :             int ret = r_Step_6(z);
    2017            0 :             if (ret == 0) goto lab9;
    2018            0 :             if (ret < 0) return ret;
    2019              :         }
    2020            0 :     lab9:
    2021            0 :         z->c = z->l - v_12;
    2022              :     }
    2023            0 :     z->c = z->lb;
    2024            0 :     return 1;
    2025              : }
    2026              : 
    2027            0 : extern struct SN_env * dutch_UTF_8_create_env(void) {
    2028            0 :     struct SN_env * z = SN_new_env(sizeof(SN_local));
    2029            0 :     if (z) {
    2030            0 :         ((SN_local *)z)->b_GE_removed = 0;
    2031            0 :         ((SN_local *)z)->i_p2 = 0;
    2032            0 :         ((SN_local *)z)->i_p1 = 0;
    2033            0 :         ((SN_local *)z)->s_ch = NULL;
    2034              : 
    2035            0 :         if ((((SN_local *)z)->s_ch = create_s()) == NULL) {
    2036            0 :             dutch_UTF_8_close_env(z);
    2037            0 :             return NULL;
    2038              :         }
    2039              :     }
    2040            0 :     return z;
    2041              : }
    2042              : 
    2043            0 : extern void dutch_UTF_8_close_env(struct SN_env * z) {
    2044            0 :     if (z) {
    2045            0 :         lose_s(((SN_local *)z)->s_ch);
    2046              :     }
    2047            0 :     SN_delete_env(z);
    2048            0 : }
    2049              : 
        

Generated by: LCOV version 2.0-1