LCOV - code coverage report
Current view: top level - src/backend/snowball/libstemmer - stem_UTF_8_english.c (source / functions) Hit Total Coverage
Test: PostgreSQL 18devel Lines: 346 536 64.6 %
Date: 2024-11-21 08:14:44 Functions: 17 18 94.4 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
       2             : 
       3             : #include "header.h"
       4             : 
       5             : #ifdef __cplusplus
       6             : extern "C" {
       7             : #endif
       8             : extern int english_UTF_8_stem(struct SN_env * z);
       9             : #ifdef __cplusplus
      10             : }
      11             : #endif
      12             : static int r_exception2(struct SN_env * z);
      13             : static int r_exception1(struct SN_env * z);
      14             : static int r_Step_5(struct SN_env * z);
      15             : static int r_Step_4(struct SN_env * z);
      16             : static int r_Step_3(struct SN_env * z);
      17             : static int r_Step_2(struct SN_env * z);
      18             : static int r_Step_1c(struct SN_env * z);
      19             : static int r_Step_1b(struct SN_env * z);
      20             : static int r_Step_1a(struct SN_env * z);
      21             : static int r_R2(struct SN_env * z);
      22             : static int r_R1(struct SN_env * z);
      23             : static int r_shortv(struct SN_env * z);
      24             : static int r_mark_regions(struct SN_env * z);
      25             : static int r_postlude(struct SN_env * z);
      26             : static int r_prelude(struct SN_env * z);
      27             : #ifdef __cplusplus
      28             : extern "C" {
      29             : #endif
      30             : 
      31             : 
      32             : extern struct SN_env * english_UTF_8_create_env(void);
      33             : extern void english_UTF_8_close_env(struct SN_env * z);
      34             : 
      35             : 
      36             : #ifdef __cplusplus
      37             : }
      38             : #endif
      39             : static const symbol s_0_0[5] = { 'a', 'r', 's', 'e', 'n' };
      40             : static const symbol s_0_1[6] = { 'c', 'o', 'm', 'm', 'u', 'n' };
      41             : static const symbol s_0_2[5] = { 'g', 'e', 'n', 'e', 'r' };
      42             : 
      43             : static const struct among a_0[3] =
      44             : {
      45             : { 5, s_0_0, -1, -1, 0},
      46             : { 6, s_0_1, -1, -1, 0},
      47             : { 5, s_0_2, -1, -1, 0}
      48             : };
      49             : 
      50             : static const symbol s_1_0[1] = { '\'' };
      51             : static const symbol s_1_1[3] = { '\'', 's', '\'' };
      52             : static const symbol s_1_2[2] = { '\'', 's' };
      53             : 
      54             : static const struct among a_1[3] =
      55             : {
      56             : { 1, s_1_0, -1, 1, 0},
      57             : { 3, s_1_1, 0, 1, 0},
      58             : { 2, s_1_2, -1, 1, 0}
      59             : };
      60             : 
      61             : static const symbol s_2_0[3] = { 'i', 'e', 'd' };
      62             : static const symbol s_2_1[1] = { 's' };
      63             : static const symbol s_2_2[3] = { 'i', 'e', 's' };
      64             : static const symbol s_2_3[4] = { 's', 's', 'e', 's' };
      65             : static const symbol s_2_4[2] = { 's', 's' };
      66             : static const symbol s_2_5[2] = { 'u', 's' };
      67             : 
      68             : static const struct among a_2[6] =
      69             : {
      70             : { 3, s_2_0, -1, 2, 0},
      71             : { 1, s_2_1, -1, 3, 0},
      72             : { 3, s_2_2, 1, 2, 0},
      73             : { 4, s_2_3, 1, 1, 0},
      74             : { 2, s_2_4, 1, -1, 0},
      75             : { 2, s_2_5, 1, -1, 0}
      76             : };
      77             : 
      78             : static const symbol s_3_1[2] = { 'b', 'b' };
      79             : static const symbol s_3_2[2] = { 'd', 'd' };
      80             : static const symbol s_3_3[2] = { 'f', 'f' };
      81             : static const symbol s_3_4[2] = { 'g', 'g' };
      82             : static const symbol s_3_5[2] = { 'b', 'l' };
      83             : static const symbol s_3_6[2] = { 'm', 'm' };
      84             : static const symbol s_3_7[2] = { 'n', 'n' };
      85             : static const symbol s_3_8[2] = { 'p', 'p' };
      86             : static const symbol s_3_9[2] = { 'r', 'r' };
      87             : static const symbol s_3_10[2] = { 'a', 't' };
      88             : static const symbol s_3_11[2] = { 't', 't' };
      89             : static const symbol s_3_12[2] = { 'i', 'z' };
      90             : 
      91             : static const struct among a_3[13] =
      92             : {
      93             : { 0, 0, -1, 3, 0},
      94             : { 2, s_3_1, 0, 2, 0},
      95             : { 2, s_3_2, 0, 2, 0},
      96             : { 2, s_3_3, 0, 2, 0},
      97             : { 2, s_3_4, 0, 2, 0},
      98             : { 2, s_3_5, 0, 1, 0},
      99             : { 2, s_3_6, 0, 2, 0},
     100             : { 2, s_3_7, 0, 2, 0},
     101             : { 2, s_3_8, 0, 2, 0},
     102             : { 2, s_3_9, 0, 2, 0},
     103             : { 2, s_3_10, 0, 1, 0},
     104             : { 2, s_3_11, 0, 2, 0},
     105             : { 2, s_3_12, 0, 1, 0}
     106             : };
     107             : 
     108             : static const symbol s_4_0[2] = { 'e', 'd' };
     109             : static const symbol s_4_1[3] = { 'e', 'e', 'd' };
     110             : static const symbol s_4_2[3] = { 'i', 'n', 'g' };
     111             : static const symbol s_4_3[4] = { 'e', 'd', 'l', 'y' };
     112             : static const symbol s_4_4[5] = { 'e', 'e', 'd', 'l', 'y' };
     113             : static const symbol s_4_5[5] = { 'i', 'n', 'g', 'l', 'y' };
     114             : 
     115             : static const struct among a_4[6] =
     116             : {
     117             : { 2, s_4_0, -1, 2, 0},
     118             : { 3, s_4_1, 0, 1, 0},
     119             : { 3, s_4_2, -1, 2, 0},
     120             : { 4, s_4_3, -1, 2, 0},
     121             : { 5, s_4_4, 3, 1, 0},
     122             : { 5, s_4_5, -1, 2, 0}
     123             : };
     124             : 
     125             : static const symbol s_5_0[4] = { 'a', 'n', 'c', 'i' };
     126             : static const symbol s_5_1[4] = { 'e', 'n', 'c', 'i' };
     127             : static const symbol s_5_2[3] = { 'o', 'g', 'i' };
     128             : static const symbol s_5_3[2] = { 'l', 'i' };
     129             : static const symbol s_5_4[3] = { 'b', 'l', 'i' };
     130             : static const symbol s_5_5[4] = { 'a', 'b', 'l', 'i' };
     131             : static const symbol s_5_6[4] = { 'a', 'l', 'l', 'i' };
     132             : static const symbol s_5_7[5] = { 'f', 'u', 'l', 'l', 'i' };
     133             : static const symbol s_5_8[6] = { 'l', 'e', 's', 's', 'l', 'i' };
     134             : static const symbol s_5_9[5] = { 'o', 'u', 's', 'l', 'i' };
     135             : static const symbol s_5_10[5] = { 'e', 'n', 't', 'l', 'i' };
     136             : static const symbol s_5_11[5] = { 'a', 'l', 'i', 't', 'i' };
     137             : static const symbol s_5_12[6] = { 'b', 'i', 'l', 'i', 't', 'i' };
     138             : static const symbol s_5_13[5] = { 'i', 'v', 'i', 't', 'i' };
     139             : static const symbol s_5_14[6] = { 't', 'i', 'o', 'n', 'a', 'l' };
     140             : static const symbol s_5_15[7] = { 'a', 't', 'i', 'o', 'n', 'a', 'l' };
     141             : static const symbol s_5_16[5] = { 'a', 'l', 'i', 's', 'm' };
     142             : static const symbol s_5_17[5] = { 'a', 't', 'i', 'o', 'n' };
     143             : static const symbol s_5_18[7] = { 'i', 'z', 'a', 't', 'i', 'o', 'n' };
     144             : static const symbol s_5_19[4] = { 'i', 'z', 'e', 'r' };
     145             : static const symbol s_5_20[4] = { 'a', 't', 'o', 'r' };
     146             : static const symbol s_5_21[7] = { 'i', 'v', 'e', 'n', 'e', 's', 's' };
     147             : static const symbol s_5_22[7] = { 'f', 'u', 'l', 'n', 'e', 's', 's' };
     148             : static const symbol s_5_23[7] = { 'o', 'u', 's', 'n', 'e', 's', 's' };
     149             : 
     150             : static const struct among a_5[24] =
     151             : {
     152             : { 4, s_5_0, -1, 3, 0},
     153             : { 4, s_5_1, -1, 2, 0},
     154             : { 3, s_5_2, -1, 13, 0},
     155             : { 2, s_5_3, -1, 15, 0},
     156             : { 3, s_5_4, 3, 12, 0},
     157             : { 4, s_5_5, 4, 4, 0},
     158             : { 4, s_5_6, 3, 8, 0},
     159             : { 5, s_5_7, 3, 9, 0},
     160             : { 6, s_5_8, 3, 14, 0},
     161             : { 5, s_5_9, 3, 10, 0},
     162             : { 5, s_5_10, 3, 5, 0},
     163             : { 5, s_5_11, -1, 8, 0},
     164             : { 6, s_5_12, -1, 12, 0},
     165             : { 5, s_5_13, -1, 11, 0},
     166             : { 6, s_5_14, -1, 1, 0},
     167             : { 7, s_5_15, 14, 7, 0},
     168             : { 5, s_5_16, -1, 8, 0},
     169             : { 5, s_5_17, -1, 7, 0},
     170             : { 7, s_5_18, 17, 6, 0},
     171             : { 4, s_5_19, -1, 6, 0},
     172             : { 4, s_5_20, -1, 7, 0},
     173             : { 7, s_5_21, -1, 11, 0},
     174             : { 7, s_5_22, -1, 9, 0},
     175             : { 7, s_5_23, -1, 10, 0}
     176             : };
     177             : 
     178             : static const symbol s_6_0[5] = { 'i', 'c', 'a', 't', 'e' };
     179             : static const symbol s_6_1[5] = { 'a', 't', 'i', 'v', 'e' };
     180             : static const symbol s_6_2[5] = { 'a', 'l', 'i', 'z', 'e' };
     181             : static const symbol s_6_3[5] = { 'i', 'c', 'i', 't', 'i' };
     182             : static const symbol s_6_4[4] = { 'i', 'c', 'a', 'l' };
     183             : static const symbol s_6_5[6] = { 't', 'i', 'o', 'n', 'a', 'l' };
     184             : static const symbol s_6_6[7] = { 'a', 't', 'i', 'o', 'n', 'a', 'l' };
     185             : static const symbol s_6_7[3] = { 'f', 'u', 'l' };
     186             : static const symbol s_6_8[4] = { 'n', 'e', 's', 's' };
     187             : 
     188             : static const struct among a_6[9] =
     189             : {
     190             : { 5, s_6_0, -1, 4, 0},
     191             : { 5, s_6_1, -1, 6, 0},
     192             : { 5, s_6_2, -1, 3, 0},
     193             : { 5, s_6_3, -1, 4, 0},
     194             : { 4, s_6_4, -1, 4, 0},
     195             : { 6, s_6_5, -1, 1, 0},
     196             : { 7, s_6_6, 5, 2, 0},
     197             : { 3, s_6_7, -1, 5, 0},
     198             : { 4, s_6_8, -1, 5, 0}
     199             : };
     200             : 
     201             : static const symbol s_7_0[2] = { 'i', 'c' };
     202             : static const symbol s_7_1[4] = { 'a', 'n', 'c', 'e' };
     203             : static const symbol s_7_2[4] = { 'e', 'n', 'c', 'e' };
     204             : static const symbol s_7_3[4] = { 'a', 'b', 'l', 'e' };
     205             : static const symbol s_7_4[4] = { 'i', 'b', 'l', 'e' };
     206             : static const symbol s_7_5[3] = { 'a', 't', 'e' };
     207             : static const symbol s_7_6[3] = { 'i', 'v', 'e' };
     208             : static const symbol s_7_7[3] = { 'i', 'z', 'e' };
     209             : static const symbol s_7_8[3] = { 'i', 't', 'i' };
     210             : static const symbol s_7_9[2] = { 'a', 'l' };
     211             : static const symbol s_7_10[3] = { 'i', 's', 'm' };
     212             : static const symbol s_7_11[3] = { 'i', 'o', 'n' };
     213             : static const symbol s_7_12[2] = { 'e', 'r' };
     214             : static const symbol s_7_13[3] = { 'o', 'u', 's' };
     215             : static const symbol s_7_14[3] = { 'a', 'n', 't' };
     216             : static const symbol s_7_15[3] = { 'e', 'n', 't' };
     217             : static const symbol s_7_16[4] = { 'm', 'e', 'n', 't' };
     218             : static const symbol s_7_17[5] = { 'e', 'm', 'e', 'n', 't' };
     219             : 
     220             : static const struct among a_7[18] =
     221             : {
     222             : { 2, s_7_0, -1, 1, 0},
     223             : { 4, s_7_1, -1, 1, 0},
     224             : { 4, s_7_2, -1, 1, 0},
     225             : { 4, s_7_3, -1, 1, 0},
     226             : { 4, s_7_4, -1, 1, 0},
     227             : { 3, s_7_5, -1, 1, 0},
     228             : { 3, s_7_6, -1, 1, 0},
     229             : { 3, s_7_7, -1, 1, 0},
     230             : { 3, s_7_8, -1, 1, 0},
     231             : { 2, s_7_9, -1, 1, 0},
     232             : { 3, s_7_10, -1, 1, 0},
     233             : { 3, s_7_11, -1, 2, 0},
     234             : { 2, s_7_12, -1, 1, 0},
     235             : { 3, s_7_13, -1, 1, 0},
     236             : { 3, s_7_14, -1, 1, 0},
     237             : { 3, s_7_15, -1, 1, 0},
     238             : { 4, s_7_16, 15, 1, 0},
     239             : { 5, s_7_17, 16, 1, 0}
     240             : };
     241             : 
     242             : static const symbol s_8_0[1] = { 'e' };
     243             : static const symbol s_8_1[1] = { 'l' };
     244             : 
     245             : static const struct among a_8[2] =
     246             : {
     247             : { 1, s_8_0, -1, 1, 0},
     248             : { 1, s_8_1, -1, 2, 0}
     249             : };
     250             : 
     251             : static const symbol s_9_0[7] = { 's', 'u', 'c', 'c', 'e', 'e', 'd' };
     252             : static const symbol s_9_1[7] = { 'p', 'r', 'o', 'c', 'e', 'e', 'd' };
     253             : static const symbol s_9_2[6] = { 'e', 'x', 'c', 'e', 'e', 'd' };
     254             : static const symbol s_9_3[7] = { 'c', 'a', 'n', 'n', 'i', 'n', 'g' };
     255             : static const symbol s_9_4[6] = { 'i', 'n', 'n', 'i', 'n', 'g' };
     256             : static const symbol s_9_5[7] = { 'e', 'a', 'r', 'r', 'i', 'n', 'g' };
     257             : static const symbol s_9_6[7] = { 'h', 'e', 'r', 'r', 'i', 'n', 'g' };
     258             : static const symbol s_9_7[6] = { 'o', 'u', 't', 'i', 'n', 'g' };
     259             : 
     260             : static const struct among a_9[8] =
     261             : {
     262             : { 7, s_9_0, -1, -1, 0},
     263             : { 7, s_9_1, -1, -1, 0},
     264             : { 6, s_9_2, -1, -1, 0},
     265             : { 7, s_9_3, -1, -1, 0},
     266             : { 6, s_9_4, -1, -1, 0},
     267             : { 7, s_9_5, -1, -1, 0},
     268             : { 7, s_9_6, -1, -1, 0},
     269             : { 6, s_9_7, -1, -1, 0}
     270             : };
     271             : 
     272             : static const symbol s_10_0[5] = { 'a', 'n', 'd', 'e', 's' };
     273             : static const symbol s_10_1[5] = { 'a', 't', 'l', 'a', 's' };
     274             : static const symbol s_10_2[4] = { 'b', 'i', 'a', 's' };
     275             : static const symbol s_10_3[6] = { 'c', 'o', 's', 'm', 'o', 's' };
     276             : static const symbol s_10_4[5] = { 'd', 'y', 'i', 'n', 'g' };
     277             : static const symbol s_10_5[5] = { 'e', 'a', 'r', 'l', 'y' };
     278             : static const symbol s_10_6[6] = { 'g', 'e', 'n', 't', 'l', 'y' };
     279             : static const symbol s_10_7[4] = { 'h', 'o', 'w', 'e' };
     280             : static const symbol s_10_8[4] = { 'i', 'd', 'l', 'y' };
     281             : static const symbol s_10_9[5] = { 'l', 'y', 'i', 'n', 'g' };
     282             : static const symbol s_10_10[4] = { 'n', 'e', 'w', 's' };
     283             : static const symbol s_10_11[4] = { 'o', 'n', 'l', 'y' };
     284             : static const symbol s_10_12[6] = { 's', 'i', 'n', 'g', 'l', 'y' };
     285             : static const symbol s_10_13[5] = { 's', 'k', 'i', 'e', 's' };
     286             : static const symbol s_10_14[4] = { 's', 'k', 'i', 's' };
     287             : static const symbol s_10_15[3] = { 's', 'k', 'y' };
     288             : static const symbol s_10_16[5] = { 't', 'y', 'i', 'n', 'g' };
     289             : static const symbol s_10_17[4] = { 'u', 'g', 'l', 'y' };
     290             : 
     291             : static const struct among a_10[18] =
     292             : {
     293             : { 5, s_10_0, -1, -1, 0},
     294             : { 5, s_10_1, -1, -1, 0},
     295             : { 4, s_10_2, -1, -1, 0},
     296             : { 6, s_10_3, -1, -1, 0},
     297             : { 5, s_10_4, -1, 3, 0},
     298             : { 5, s_10_5, -1, 9, 0},
     299             : { 6, s_10_6, -1, 7, 0},
     300             : { 4, s_10_7, -1, -1, 0},
     301             : { 4, s_10_8, -1, 6, 0},
     302             : { 5, s_10_9, -1, 4, 0},
     303             : { 4, s_10_10, -1, -1, 0},
     304             : { 4, s_10_11, -1, 10, 0},
     305             : { 6, s_10_12, -1, 11, 0},
     306             : { 5, s_10_13, -1, 2, 0},
     307             : { 4, s_10_14, -1, 1, 0},
     308             : { 3, s_10_15, -1, -1, 0},
     309             : { 5, s_10_16, -1, 5, 0},
     310             : { 4, s_10_17, -1, 8, 0}
     311             : };
     312             : 
     313             : static const unsigned char g_v[] = { 17, 65, 16, 1 };
     314             : 
     315             : static const unsigned char g_v_WXY[] = { 1, 17, 65, 208, 1 };
     316             : 
     317             : static const unsigned char g_valid_LI[] = { 55, 141, 2 };
     318             : 
     319             : static const symbol s_0[] = { 'Y' };
     320             : static const symbol s_1[] = { 'Y' };
     321             : static const symbol s_2[] = { 's', 's' };
     322             : static const symbol s_3[] = { 'i' };
     323             : static const symbol s_4[] = { 'i', 'e' };
     324             : static const symbol s_5[] = { 'e', 'e' };
     325             : static const symbol s_6[] = { 'e' };
     326             : static const symbol s_7[] = { 'e' };
     327             : static const symbol s_8[] = { 'i' };
     328             : static const symbol s_9[] = { 't', 'i', 'o', 'n' };
     329             : static const symbol s_10[] = { 'e', 'n', 'c', 'e' };
     330             : static const symbol s_11[] = { 'a', 'n', 'c', 'e' };
     331             : static const symbol s_12[] = { 'a', 'b', 'l', 'e' };
     332             : static const symbol s_13[] = { 'e', 'n', 't' };
     333             : static const symbol s_14[] = { 'i', 'z', 'e' };
     334             : static const symbol s_15[] = { 'a', 't', 'e' };
     335             : static const symbol s_16[] = { 'a', 'l' };
     336             : static const symbol s_17[] = { 'f', 'u', 'l' };
     337             : static const symbol s_18[] = { 'o', 'u', 's' };
     338             : static const symbol s_19[] = { 'i', 'v', 'e' };
     339             : static const symbol s_20[] = { 'b', 'l', 'e' };
     340             : static const symbol s_21[] = { 'o', 'g' };
     341             : static const symbol s_22[] = { 'l', 'e', 's', 's' };
     342             : static const symbol s_23[] = { 't', 'i', 'o', 'n' };
     343             : static const symbol s_24[] = { 'a', 't', 'e' };
     344             : static const symbol s_25[] = { 'a', 'l' };
     345             : static const symbol s_26[] = { 'i', 'c' };
     346             : static const symbol s_27[] = { 's', 'k', 'i' };
     347             : static const symbol s_28[] = { 's', 'k', 'y' };
     348             : static const symbol s_29[] = { 'd', 'i', 'e' };
     349             : static const symbol s_30[] = { 'l', 'i', 'e' };
     350             : static const symbol s_31[] = { 't', 'i', 'e' };
     351             : static const symbol s_32[] = { 'i', 'd', 'l' };
     352             : static const symbol s_33[] = { 'g', 'e', 'n', 't', 'l' };
     353             : static const symbol s_34[] = { 'u', 'g', 'l', 'i' };
     354             : static const symbol s_35[] = { 'e', 'a', 'r', 'l', 'i' };
     355             : static const symbol s_36[] = { 'o', 'n', 'l', 'i' };
     356             : static const symbol s_37[] = { 's', 'i', 'n', 'g', 'l' };
     357             : static const symbol s_38[] = { 'y' };
     358             : 
     359        6262 : static int r_prelude(struct SN_env * z) {
     360        6262 :     z->I[2] = 0;
     361        6262 :     {   int c1 = z->c;
     362        6262 :         z->bra = z->c;
     363        6262 :         if (z->c == z->l || z->p[z->c] != '\'') goto lab0;
     364           0 :         z->c++;
     365           0 :         z->ket = z->c;
     366           0 :         {   int ret = slice_del(z);
     367           0 :             if (ret < 0) return ret;
     368             :         }
     369           0 :     lab0:
     370        6262 :         z->c = c1;
     371             :     }
     372        6262 :     {   int c2 = z->c;
     373        6262 :         z->bra = z->c;
     374        6262 :         if (z->c == z->l || z->p[z->c] != 'y') goto lab1;
     375          42 :         z->c++;
     376          42 :         z->ket = z->c;
     377          42 :         {   int ret = slice_from_s(z, 1, s_0);
     378          42 :             if (ret < 0) return ret;
     379             :         }
     380          42 :         z->I[2] = 1;
     381        6262 :     lab1:
     382        6262 :         z->c = c2;
     383             :     }
     384        6262 :     {   int c3 = z->c;
     385         486 :         while(1) {
     386        6748 :             int c4 = z->c;
     387       29164 :             while(1) {
     388       35912 :                 int c5 = z->c;
     389       35912 :                 if (in_grouping_U(z, g_v, 97, 121, 0)) goto lab4;
     390       11448 :                 z->bra = z->c;
     391       11448 :                 if (z->c == z->l || z->p[z->c] != 'y') goto lab4;
     392         486 :                 z->c++;
     393         486 :                 z->ket = z->c;
     394         486 :                 z->c = c5;
     395         486 :                 break;
     396       35426 :             lab4:
     397       35426 :                 z->c = c5;
     398       35426 :                 {   int ret = skip_utf8(z->p, z->c, z->l, 1);
     399       35426 :                     if (ret < 0) goto lab3;
     400       29164 :                     z->c = ret;
     401             :                 }
     402             :             }
     403         486 :             {   int ret = slice_from_s(z, 1, s_1);
     404         486 :                 if (ret < 0) return ret;
     405             :             }
     406         486 :             z->I[2] = 1;
     407         486 :             continue;
     408        6262 :         lab3:
     409        6262 :             z->c = c4;
     410        6262 :             break;
     411             :         }
     412        6262 :         z->c = c3;
     413             :     }
     414        6262 :     return 1;
     415             : }
     416             : 
     417        6262 : static int r_mark_regions(struct SN_env * z) {
     418        6262 :     z->I[1] = z->l;
     419        6262 :     z->I[0] = z->l;
     420        6262 :     {   int c1 = z->c;
     421        6262 :         {   int c2 = z->c;
     422        6262 :             if (z->c + 4 >= z->l || z->p[z->c + 4] >> 5 != 3 || !((2375680 >> (z->p[z->c + 4] & 0x1f)) & 1)) goto lab2;
     423        1034 :             if (!(find_among(z, a_0, 3))) goto lab2;
     424           0 :             goto lab1;
     425        6262 :         lab2:
     426        6262 :             z->c = c2;
     427             :             {   
     428        6262 :                 int ret = out_grouping_U(z, g_v, 97, 121, 1);
     429        6262 :                 if (ret < 0) goto lab0;
     430        5590 :                 z->c += ret;
     431             :             }
     432             :             {   
     433        5590 :                 int ret = in_grouping_U(z, g_v, 97, 121, 1);
     434        5590 :                 if (ret < 0) goto lab0;
     435        5006 :                 z->c += ret;
     436             :             }
     437             :         }
     438        5006 :     lab1:
     439        5006 :         z->I[1] = z->c;
     440             :         {   
     441        5006 :             int ret = out_grouping_U(z, g_v, 97, 121, 1);
     442        5006 :             if (ret < 0) goto lab0;
     443        2738 :             z->c += ret;
     444             :         }
     445             :         {   
     446        2738 :             int ret = in_grouping_U(z, g_v, 97, 121, 1);
     447        2738 :             if (ret < 0) goto lab0;
     448        2204 :             z->c += ret;
     449             :         }
     450        2204 :         z->I[0] = z->c;
     451        6262 :     lab0:
     452        6262 :         z->c = c1;
     453             :     }
     454        6262 :     return 1;
     455             : }
     456             : 
     457         436 : static int r_shortv(struct SN_env * z) {
     458         436 :     {   int m1 = z->l - z->c; (void)m1;
     459         436 :         if (out_grouping_b_U(z, g_v_WXY, 89, 121, 0)) goto lab1;
     460         436 :         if (in_grouping_b_U(z, g_v, 97, 121, 0)) goto lab1;
     461         232 :         if (out_grouping_b_U(z, g_v, 97, 121, 0)) goto lab1;
     462          66 :         goto lab0;
     463         370 :     lab1:
     464         370 :         z->c = z->l - m1;
     465         370 :         if (out_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
     466         370 :         if (in_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
     467         166 :         if (z->c > z->lb) return 0;
     468             :     }
     469         108 : lab0:
     470         174 :     return 1;
     471             : }
     472             : 
     473         606 : static int r_R1(struct SN_env * z) {
     474         606 :     if (!(z->I[1] <= z->c)) return 0;
     475         436 :     return 1;
     476             : }
     477             : 
     478        1730 : static int r_R2(struct SN_env * z) {
     479        1730 :     if (!(z->I[0] <= z->c)) return 0;
     480         332 :     return 1;
     481             : }
     482             : 
     483        6262 : static int r_Step_1a(struct SN_env * z) {
     484             :     int among_var;
     485        6262 :     {   int m1 = z->l - z->c; (void)m1;
     486        6262 :         z->ket = z->c;
     487        6262 :         if (z->c <= z->lb || (z->p[z->c - 1] != 39 && z->p[z->c - 1] != 115)) { z->c = z->l - m1; goto lab0; }
     488         298 :         if (!(find_among_b(z, a_1, 3))) { z->c = z->l - m1; goto lab0; }
     489           0 :         z->bra = z->c;
     490           0 :         {   int ret = slice_del(z);
     491           0 :             if (ret < 0) return ret;
     492             :         }
     493           0 :     lab0:
     494             :         ;
     495             :     }
     496        6262 :     z->ket = z->c;
     497        6262 :     if (z->c <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 115)) return 0;
     498         790 :     among_var = find_among_b(z, a_2, 6);
     499         790 :     if (!(among_var)) return 0;
     500         298 :     z->bra = z->c;
     501         298 :     switch (among_var) {
     502           0 :         case 1:
     503           0 :             {   int ret = slice_from_s(z, 2, s_2);
     504           0 :                 if (ret < 0) return ret;
     505             :             }
     506           0 :             break;
     507           0 :         case 2:
     508           0 :             {   int m2 = z->l - z->c; (void)m2;
     509           0 :                 {   int ret = skip_b_utf8(z->p, z->c, z->lb, 2);
     510           0 :                     if (ret < 0) goto lab2;
     511           0 :                     z->c = ret;
     512             :                 }
     513           0 :                 {   int ret = slice_from_s(z, 1, s_3);
     514           0 :                     if (ret < 0) return ret;
     515             :                 }
     516           0 :                 goto lab1;
     517           0 :             lab2:
     518           0 :                 z->c = z->l - m2;
     519           0 :                 {   int ret = slice_from_s(z, 2, s_4);
     520           0 :                     if (ret < 0) return ret;
     521             :                 }
     522             :             }
     523           0 :         lab1:
     524           0 :             break;
     525         244 :         case 3:
     526         244 :             {   int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
     527         244 :                 if (ret < 0) return 0;
     528         244 :                 z->c = ret;
     529             :             }
     530             :             {   
     531         244 :                 int ret = out_grouping_b_U(z, g_v, 97, 121, 1);
     532         244 :                 if (ret < 0) return 0;
     533         238 :                 z->c -= ret;
     534             :             }
     535         238 :             {   int ret = slice_del(z);
     536         238 :                 if (ret < 0) return ret;
     537             :             }
     538         238 :             break;
     539             :     }
     540         292 :     return 1;
     541             : }
     542             : 
     543        6262 : static int r_Step_1b(struct SN_env * z) {
     544             :     int among_var;
     545        6262 :     z->ket = z->c;
     546        6262 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((33554576 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     547        1142 :     among_var = find_among_b(z, a_4, 6);
     548        1142 :     if (!(among_var)) return 0;
     549         388 :     z->bra = z->c;
     550         388 :     switch (among_var) {
     551           0 :         case 1:
     552           0 :             {   int ret = r_R1(z);
     553           0 :                 if (ret <= 0) return ret;
     554             :             }
     555           0 :             {   int ret = slice_from_s(z, 2, s_5);
     556           0 :                 if (ret < 0) return ret;
     557             :             }
     558           0 :             break;
     559         388 :         case 2:
     560         388 :             {   int m_test1 = z->l - z->c;
     561             :                 {   
     562         388 :                     int ret = out_grouping_b_U(z, g_v, 97, 121, 1);
     563         388 :                     if (ret < 0) return 0;
     564         388 :                     z->c -= ret;
     565             :                 }
     566         388 :                 z->c = z->l - m_test1;
     567             :             }
     568         388 :             {   int ret = slice_del(z);
     569         388 :                 if (ret < 0) return ret;
     570             :             }
     571         388 :             {   int m_test2 = z->l - z->c;
     572         388 :                 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else
     573         324 :                 among_var = find_among_b(z, a_3, 13);
     574         388 :                 if (!(among_var)) return 0;
     575         388 :                 z->c = z->l - m_test2;
     576             :             }
     577             :             switch (among_var) {
     578           0 :                 case 1:
     579             :                     {   int ret;
     580           0 :                         {   int saved_c = z->c;
     581           0 :                             ret = insert_s(z, z->c, z->c, 1, s_6);
     582           0 :                             z->c = saved_c;
     583             :                         }
     584           0 :                         if (ret < 0) return ret;
     585             :                     }
     586           0 :                     break;
     587          36 :                 case 2:
     588          36 :                     z->ket = z->c;
     589          36 :                     {   int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
     590          36 :                         if (ret < 0) return 0;
     591          36 :                         z->c = ret;
     592             :                     }
     593          36 :                     z->bra = z->c;
     594          36 :                     {   int ret = slice_del(z);
     595          36 :                         if (ret < 0) return ret;
     596             :                     }
     597          36 :                     break;
     598         352 :                 case 3:
     599         352 :                     if (z->c != z->I[1]) return 0;
     600          58 :                     {   int m_test3 = z->l - z->c;
     601          58 :                         {   int ret = r_shortv(z);
     602          58 :                             if (ret <= 0) return ret;
     603             :                         }
     604           6 :                         z->c = z->l - m_test3;
     605             :                     }
     606             :                     {   int ret;
     607           6 :                         {   int saved_c = z->c;
     608           6 :                             ret = insert_s(z, z->c, z->c, 1, s_7);
     609           6 :                             z->c = saved_c;
     610             :                         }
     611           6 :                         if (ret < 0) return ret;
     612             :                     }
     613           6 :                     break;
     614             :             }
     615          42 :             break;
     616             :     }
     617          42 :     return 1;
     618             : }
     619             : 
     620        6262 : static int r_Step_1c(struct SN_env * z) {
     621        6262 :     z->ket = z->c;
     622        6262 :     {   int m1 = z->l - z->c; (void)m1;
     623        6262 :         if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1;
     624         354 :         z->c--;
     625         354 :         goto lab0;
     626        5908 :     lab1:
     627        5908 :         z->c = z->l - m1;
     628        5908 :         if (z->c <= z->lb || z->p[z->c - 1] != 'Y') return 0;
     629         486 :         z->c--;
     630             :     }
     631         840 : lab0:
     632         840 :     z->bra = z->c;
     633         840 :     if (out_grouping_b_U(z, g_v, 97, 121, 0)) return 0;
     634             :     
     635         354 :     if (z->c > z->lb) goto lab2;
     636           0 :     return 0;
     637         354 : lab2:
     638         354 :     {   int ret = slice_from_s(z, 1, s_8);
     639         354 :         if (ret < 0) return ret;
     640             :     }
     641         354 :     return 1;
     642             : }
     643             : 
     644        6262 : static int r_Step_2(struct SN_env * z) {
     645             :     int among_var;
     646        6262 :     z->ket = z->c;
     647        6262 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((815616 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     648        1930 :     among_var = find_among_b(z, a_5, 24);
     649        1930 :     if (!(among_var)) return 0;
     650          58 :     z->bra = z->c;
     651          58 :     {   int ret = r_R1(z);
     652          58 :         if (ret <= 0) return ret;
     653             :     }
     654          58 :     switch (among_var) {
     655           0 :         case 1:
     656           0 :             {   int ret = slice_from_s(z, 4, s_9);
     657           0 :                 if (ret < 0) return ret;
     658             :             }
     659           0 :             break;
     660           0 :         case 2:
     661           0 :             {   int ret = slice_from_s(z, 4, s_10);
     662           0 :                 if (ret < 0) return ret;
     663             :             }
     664           0 :             break;
     665           0 :         case 3:
     666           0 :             {   int ret = slice_from_s(z, 4, s_11);
     667           0 :                 if (ret < 0) return ret;
     668             :             }
     669           0 :             break;
     670           0 :         case 4:
     671           0 :             {   int ret = slice_from_s(z, 4, s_12);
     672           0 :                 if (ret < 0) return ret;
     673             :             }
     674           0 :             break;
     675           0 :         case 5:
     676           0 :             {   int ret = slice_from_s(z, 3, s_13);
     677           0 :                 if (ret < 0) return ret;
     678             :             }
     679           0 :             break;
     680           0 :         case 6:
     681           0 :             {   int ret = slice_from_s(z, 3, s_14);
     682           0 :                 if (ret < 0) return ret;
     683             :             }
     684           0 :             break;
     685          46 :         case 7:
     686          46 :             {   int ret = slice_from_s(z, 3, s_15);
     687          46 :                 if (ret < 0) return ret;
     688             :             }
     689          46 :             break;
     690          12 :         case 8:
     691          12 :             {   int ret = slice_from_s(z, 2, s_16);
     692          12 :                 if (ret < 0) return ret;
     693             :             }
     694          12 :             break;
     695           0 :         case 9:
     696           0 :             {   int ret = slice_from_s(z, 3, s_17);
     697           0 :                 if (ret < 0) return ret;
     698             :             }
     699           0 :             break;
     700           0 :         case 10:
     701           0 :             {   int ret = slice_from_s(z, 3, s_18);
     702           0 :                 if (ret < 0) return ret;
     703             :             }
     704           0 :             break;
     705           0 :         case 11:
     706           0 :             {   int ret = slice_from_s(z, 3, s_19);
     707           0 :                 if (ret < 0) return ret;
     708             :             }
     709           0 :             break;
     710           0 :         case 12:
     711           0 :             {   int ret = slice_from_s(z, 3, s_20);
     712           0 :                 if (ret < 0) return ret;
     713             :             }
     714           0 :             break;
     715           0 :         case 13:
     716           0 :             if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
     717           0 :             z->c--;
     718           0 :             {   int ret = slice_from_s(z, 2, s_21);
     719           0 :                 if (ret < 0) return ret;
     720             :             }
     721           0 :             break;
     722           0 :         case 14:
     723           0 :             {   int ret = slice_from_s(z, 4, s_22);
     724           0 :                 if (ret < 0) return ret;
     725             :             }
     726           0 :             break;
     727           0 :         case 15:
     728           0 :             if (in_grouping_b_U(z, g_valid_LI, 99, 116, 0)) return 0;
     729           0 :             {   int ret = slice_del(z);
     730           0 :                 if (ret < 0) return ret;
     731             :             }
     732           0 :             break;
     733             :     }
     734          58 :     return 1;
     735             : }
     736             : 
     737        6262 : static int r_Step_3(struct SN_env * z) {
     738             :     int among_var;
     739        6262 :     z->ket = z->c;
     740        6262 :     if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((528928 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     741        1420 :     among_var = find_among_b(z, a_6, 9);
     742        1420 :     if (!(among_var)) return 0;
     743           0 :     z->bra = z->c;
     744           0 :     {   int ret = r_R1(z);
     745           0 :         if (ret <= 0) return ret;
     746             :     }
     747           0 :     switch (among_var) {
     748           0 :         case 1:
     749           0 :             {   int ret = slice_from_s(z, 4, s_23);
     750           0 :                 if (ret < 0) return ret;
     751             :             }
     752           0 :             break;
     753           0 :         case 2:
     754           0 :             {   int ret = slice_from_s(z, 3, s_24);
     755           0 :                 if (ret < 0) return ret;
     756             :             }
     757           0 :             break;
     758           0 :         case 3:
     759           0 :             {   int ret = slice_from_s(z, 2, s_25);
     760           0 :                 if (ret < 0) return ret;
     761             :             }
     762           0 :             break;
     763           0 :         case 4:
     764           0 :             {   int ret = slice_from_s(z, 2, s_26);
     765           0 :                 if (ret < 0) return ret;
     766             :             }
     767           0 :             break;
     768           0 :         case 5:
     769           0 :             {   int ret = slice_del(z);
     770           0 :                 if (ret < 0) return ret;
     771             :             }
     772           0 :             break;
     773           0 :         case 6:
     774           0 :             {   int ret = r_R2(z);
     775           0 :                 if (ret <= 0) return ret;
     776             :             }
     777           0 :             {   int ret = slice_del(z);
     778           0 :                 if (ret < 0) return ret;
     779             :             }
     780           0 :             break;
     781             :     }
     782           0 :     return 1;
     783             : }
     784             : 
     785        6262 : static int r_Step_4(struct SN_env * z) {
     786             :     int among_var;
     787        6262 :     z->ket = z->c;
     788        6262 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1864232 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     789        3422 :     among_var = find_among_b(z, a_7, 18);
     790        3422 :     if (!(among_var)) return 0;
     791         848 :     z->bra = z->c;
     792         848 :     {   int ret = r_R2(z);
     793         848 :         if (ret <= 0) return ret;
     794             :     }
     795          88 :     switch (among_var) {
     796          88 :         case 1:
     797          88 :             {   int ret = slice_del(z);
     798          88 :                 if (ret < 0) return ret;
     799             :             }
     800          88 :             break;
     801           0 :         case 2:
     802           0 :             {   int m1 = z->l - z->c; (void)m1;
     803           0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1;
     804           0 :                 z->c--;
     805           0 :                 goto lab0;
     806           0 :             lab1:
     807           0 :                 z->c = z->l - m1;
     808           0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 't') return 0;
     809           0 :                 z->c--;
     810             :             }
     811           0 :         lab0:
     812           0 :             {   int ret = slice_del(z);
     813           0 :                 if (ret < 0) return ret;
     814             :             }
     815           0 :             break;
     816             :     }
     817          88 :     return 1;
     818             : }
     819             : 
     820        6262 : static int r_Step_5(struct SN_env * z) {
     821             :     int among_var;
     822        6262 :     z->ket = z->c;
     823        6262 :     if (z->c <= z->lb || (z->p[z->c - 1] != 101 && z->p[z->c - 1] != 108)) return 0;
     824         882 :     among_var = find_among_b(z, a_8, 2);
     825         882 :     if (!(among_var)) return 0;
     826         882 :     z->bra = z->c;
     827         882 :     switch (among_var) {
     828         786 :         case 1:
     829         786 :             {   int m1 = z->l - z->c; (void)m1;
     830         786 :                 {   int ret = r_R2(z);
     831         786 :                     if (ret == 0) goto lab1;
     832         238 :                     if (ret < 0) return ret;
     833             :                 }
     834         238 :                 goto lab0;
     835         548 :             lab1:
     836         548 :                 z->c = z->l - m1;
     837         548 :                 {   int ret = r_R1(z);
     838         548 :                     if (ret <= 0) return ret;
     839             :                 }
     840         378 :                 {   int m2 = z->l - z->c; (void)m2;
     841         378 :                     {   int ret = r_shortv(z);
     842         378 :                         if (ret == 0) goto lab2;
     843         168 :                         if (ret < 0) return ret;
     844             :                     }
     845         168 :                     return 0;
     846         210 :                 lab2:
     847         210 :                     z->c = z->l - m2;
     848             :                 }
     849             :             }
     850         448 :         lab0:
     851         448 :             {   int ret = slice_del(z);
     852         448 :                 if (ret < 0) return ret;
     853             :             }
     854         448 :             break;
     855          96 :         case 2:
     856          96 :             {   int ret = r_R2(z);
     857          96 :                 if (ret <= 0) return ret;
     858             :             }
     859           6 :             if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
     860           0 :             z->c--;
     861           0 :             {   int ret = slice_del(z);
     862           0 :                 if (ret < 0) return ret;
     863             :             }
     864           0 :             break;
     865             :     }
     866         448 :     return 1;
     867             : }
     868             : 
     869        6262 : static int r_exception2(struct SN_env * z) {
     870        6262 :     z->ket = z->c;
     871        6262 :     if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 103)) return 0;
     872         412 :     if (!(find_among_b(z, a_9, 8))) return 0;
     873           0 :     z->bra = z->c;
     874           0 :     if (z->c > z->lb) return 0;
     875           0 :     return 1;
     876             : }
     877             : 
     878        6802 : static int r_exception1(struct SN_env * z) {
     879             :     int among_var;
     880        6802 :     z->bra = z->c;
     881        6802 :     if (z->c + 2 >= z->l || z->p[z->c + 2] >> 5 != 3 || !((42750482 >> (z->p[z->c + 2] & 0x1f)) & 1)) return 0;
     882        2982 :     among_var = find_among(z, a_10, 18);
     883        2982 :     if (!(among_var)) return 0;
     884          36 :     z->ket = z->c;
     885          36 :     if (z->c < z->l) return 0;
     886          36 :     switch (among_var) {
     887           0 :         case 1:
     888           0 :             {   int ret = slice_from_s(z, 3, s_27);
     889           0 :                 if (ret < 0) return ret;
     890             :             }
     891           0 :             break;
     892          36 :         case 2:
     893          36 :             {   int ret = slice_from_s(z, 3, s_28);
     894          36 :                 if (ret < 0) return ret;
     895             :             }
     896          36 :             break;
     897           0 :         case 3:
     898           0 :             {   int ret = slice_from_s(z, 3, s_29);
     899           0 :                 if (ret < 0) return ret;
     900             :             }
     901           0 :             break;
     902           0 :         case 4:
     903           0 :             {   int ret = slice_from_s(z, 3, s_30);
     904           0 :                 if (ret < 0) return ret;
     905             :             }
     906           0 :             break;
     907           0 :         case 5:
     908           0 :             {   int ret = slice_from_s(z, 3, s_31);
     909           0 :                 if (ret < 0) return ret;
     910             :             }
     911           0 :             break;
     912           0 :         case 6:
     913           0 :             {   int ret = slice_from_s(z, 3, s_32);
     914           0 :                 if (ret < 0) return ret;
     915             :             }
     916           0 :             break;
     917           0 :         case 7:
     918           0 :             {   int ret = slice_from_s(z, 5, s_33);
     919           0 :                 if (ret < 0) return ret;
     920             :             }
     921           0 :             break;
     922           0 :         case 8:
     923           0 :             {   int ret = slice_from_s(z, 4, s_34);
     924           0 :                 if (ret < 0) return ret;
     925             :             }
     926           0 :             break;
     927           0 :         case 9:
     928           0 :             {   int ret = slice_from_s(z, 5, s_35);
     929           0 :                 if (ret < 0) return ret;
     930             :             }
     931           0 :             break;
     932           0 :         case 10:
     933           0 :             {   int ret = slice_from_s(z, 4, s_36);
     934           0 :                 if (ret < 0) return ret;
     935             :             }
     936           0 :             break;
     937           0 :         case 11:
     938           0 :             {   int ret = slice_from_s(z, 5, s_37);
     939           0 :                 if (ret < 0) return ret;
     940             :             }
     941           0 :             break;
     942             :     }
     943          36 :     return 1;
     944             : }
     945             : 
     946        6262 : static int r_postlude(struct SN_env * z) {
     947        6262 :     if (!(z->I[2])) return 0;
     948         528 :     while(1) {
     949        1056 :         int c1 = z->c;
     950        1626 :         while(1) {
     951        2682 :             int c2 = z->c;
     952        2682 :             z->bra = z->c;
     953        2682 :             if (z->c == z->l || z->p[z->c] != 'Y') goto lab1;
     954         528 :             z->c++;
     955         528 :             z->ket = z->c;
     956         528 :             z->c = c2;
     957         528 :             break;
     958        2154 :         lab1:
     959        2154 :             z->c = c2;
     960        2154 :             {   int ret = skip_utf8(z->p, z->c, z->l, 1);
     961        2154 :                 if (ret < 0) goto lab0;
     962        1626 :                 z->c = ret;
     963             :             }
     964             :         }
     965         528 :         {   int ret = slice_from_s(z, 1, s_38);
     966         528 :             if (ret < 0) return ret;
     967             :         }
     968         528 :         continue;
     969         528 :     lab0:
     970         528 :         z->c = c1;
     971         528 :         break;
     972             :     }
     973         528 :     return 1;
     974             : }
     975             : 
     976        6802 : extern int english_UTF_8_stem(struct SN_env * z) {
     977        6802 :     {   int c1 = z->c;
     978        6802 :         {   int ret = r_exception1(z);
     979        6802 :             if (ret == 0) goto lab1;
     980          36 :             if (ret < 0) return ret;
     981             :         }
     982          36 :         goto lab0;
     983        6766 :     lab1:
     984        6766 :         z->c = c1;
     985        6766 :         {   int c2 = z->c;
     986        6766 :             {   int ret = skip_utf8(z->p, z->c, z->l, 3);
     987        6766 :                 if (ret < 0) goto lab3;
     988        6262 :                 z->c = ret;
     989             :             }
     990        6262 :             goto lab2;
     991         504 :         lab3:
     992         504 :             z->c = c2;
     993             :         }
     994         504 :         goto lab0;
     995        6262 :     lab2:
     996        6262 :         z->c = c1;
     997             :         
     998        6262 :         {   int ret = r_prelude(z);
     999        6262 :             if (ret < 0) return ret;
    1000             :         }
    1001             :         
    1002        6262 :         {   int ret = r_mark_regions(z);
    1003        6262 :             if (ret < 0) return ret;
    1004             :         }
    1005        6262 :         z->lb = z->c; z->c = z->l;
    1006             : 
    1007        6262 :         {   int m3 = z->l - z->c; (void)m3;
    1008        6262 :             {   int ret = r_Step_1a(z);
    1009        6262 :                 if (ret < 0) return ret;
    1010             :             }
    1011        6262 :             z->c = z->l - m3;
    1012             :         }
    1013        6262 :         {   int m4 = z->l - z->c; (void)m4;
    1014        6262 :             {   int ret = r_exception2(z);
    1015        6262 :                 if (ret == 0) goto lab5;
    1016           0 :                 if (ret < 0) return ret;
    1017             :             }
    1018           0 :             goto lab4;
    1019        6262 :         lab5:
    1020        6262 :             z->c = z->l - m4;
    1021        6262 :             {   int m5 = z->l - z->c; (void)m5;
    1022        6262 :                 {   int ret = r_Step_1b(z);
    1023        6262 :                     if (ret < 0) return ret;
    1024             :                 }
    1025        6262 :                 z->c = z->l - m5;
    1026             :             }
    1027        6262 :             {   int m6 = z->l - z->c; (void)m6;
    1028        6262 :                 {   int ret = r_Step_1c(z);
    1029        6262 :                     if (ret < 0) return ret;
    1030             :                 }
    1031        6262 :                 z->c = z->l - m6;
    1032             :             }
    1033        6262 :             {   int m7 = z->l - z->c; (void)m7;
    1034        6262 :                 {   int ret = r_Step_2(z);
    1035        6262 :                     if (ret < 0) return ret;
    1036             :                 }
    1037        6262 :                 z->c = z->l - m7;
    1038             :             }
    1039        6262 :             {   int m8 = z->l - z->c; (void)m8;
    1040        6262 :                 {   int ret = r_Step_3(z);
    1041        6262 :                     if (ret < 0) return ret;
    1042             :                 }
    1043        6262 :                 z->c = z->l - m8;
    1044             :             }
    1045        6262 :             {   int m9 = z->l - z->c; (void)m9;
    1046        6262 :                 {   int ret = r_Step_4(z);
    1047        6262 :                     if (ret < 0) return ret;
    1048             :                 }
    1049        6262 :                 z->c = z->l - m9;
    1050             :             }
    1051        6262 :             {   int m10 = z->l - z->c; (void)m10;
    1052        6262 :                 {   int ret = r_Step_5(z);
    1053        6262 :                     if (ret < 0) return ret;
    1054             :                 }
    1055        6262 :                 z->c = z->l - m10;
    1056             :             }
    1057             :         }
    1058        6262 :     lab4:
    1059        6262 :         z->c = z->lb;
    1060        6262 :         {   int c11 = z->c;
    1061        6262 :             {   int ret = r_postlude(z);
    1062        6262 :                 if (ret < 0) return ret;
    1063             :             }
    1064        6262 :             z->c = c11;
    1065             :         }
    1066             :     }
    1067        6802 : lab0:
    1068        6802 :     return 1;
    1069             : }
    1070             : 
    1071          38 : extern struct SN_env * english_UTF_8_create_env(void) { return SN_create_env(0, 3); }
    1072             : 
    1073           0 : extern void english_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
    1074             : 

Generated by: LCOV version 1.14