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

            Line data    Source code
       1              : /* Generated from french.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
       2              : 
       3              : #include "stem_ISO_8859_1_french.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              :     int i_pV;
      14              : };
      15              : 
      16              : typedef struct SN_local SN_local;
      17              : 
      18              : #ifdef __cplusplus
      19              : extern "C" {
      20              : #endif
      21              : extern int french_ISO_8859_1_stem(struct SN_env * z);
      22              : #ifdef __cplusplus
      23              : }
      24              : #endif
      25              : 
      26              : static int r_un_accent(struct SN_env * z);
      27              : static int r_un_double(struct SN_env * z);
      28              : static int r_residual_suffix(struct SN_env * z);
      29              : static int r_verb_suffix(struct SN_env * z);
      30              : static int r_i_verb_suffix(struct SN_env * z);
      31              : static int r_standard_suffix(struct SN_env * z);
      32              : static int r_R2(struct SN_env * z);
      33              : static int r_R1(struct SN_env * z);
      34              : static int r_RV(struct SN_env * z);
      35              : static int r_mark_regions(struct SN_env * z);
      36              : static int r_postlude(struct SN_env * z);
      37              : static int r_prelude(struct SN_env * z);
      38              : static int r_elisions(struct SN_env * z);
      39              : 
      40              : static const symbol s_0[] = { 'q', 'u' };
      41              : static const symbol s_1[] = { 'U' };
      42              : static const symbol s_2[] = { 'I' };
      43              : static const symbol s_3[] = { 'Y' };
      44              : static const symbol s_4[] = { 'H', 'e' };
      45              : static const symbol s_5[] = { 'H', 'i' };
      46              : static const symbol s_6[] = { 'Y' };
      47              : static const symbol s_7[] = { 'U' };
      48              : static const symbol s_8[] = { 'i' };
      49              : static const symbol s_9[] = { 'u' };
      50              : static const symbol s_10[] = { 'y' };
      51              : static const symbol s_11[] = { 0xEB };
      52              : static const symbol s_12[] = { 0xEF };
      53              : static const symbol s_13[] = { 'i', 'c' };
      54              : static const symbol s_14[] = { 'i', 'q', 'U' };
      55              : static const symbol s_15[] = { 'l', 'o', 'g' };
      56              : static const symbol s_16[] = { 'u' };
      57              : static const symbol s_17[] = { 'e', 'n', 't' };
      58              : static const symbol s_18[] = { 'a', 't' };
      59              : static const symbol s_19[] = { 'e', 'u', 'x' };
      60              : static const symbol s_20[] = { 'i' };
      61              : static const symbol s_21[] = { 'a', 'b', 'l' };
      62              : static const symbol s_22[] = { 'i', 'q', 'U' };
      63              : static const symbol s_23[] = { 'a', 't' };
      64              : static const symbol s_24[] = { 'i', 'c' };
      65              : static const symbol s_25[] = { 'i', 'q', 'U' };
      66              : static const symbol s_26[] = { 'e', 'a', 'u' };
      67              : static const symbol s_27[] = { 'a', 'l' };
      68              : static const symbol s_28[] = { 'o', 'u' };
      69              : static const symbol s_29[] = { 'e', 'u', 'x' };
      70              : static const symbol s_30[] = { 'a', 'n', 't' };
      71              : static const symbol s_31[] = { 'e', 'n', 't' };
      72              : static const symbol s_32[] = { 'H', 'i' };
      73              : static const symbol s_33[] = { 'i' };
      74              : static const symbol s_34[] = { 'e' };
      75              : static const symbol s_35[] = { 'i' };
      76              : static const symbol s_36[] = { 'c' };
      77              : 
      78              : static const symbol s_0_0[3] = { 'c', 'o', 'l' };
      79              : static const symbol s_0_1[2] = { 'n', 'i' };
      80              : static const symbol s_0_2[3] = { 'p', 'a', 'r' };
      81              : static const symbol s_0_3[3] = { 't', 'a', 'p' };
      82              : static const struct among a_0[4] = {
      83              : { 3, s_0_0, 0, -1, 0},
      84              : { 2, s_0_1, 0, 1, 0},
      85              : { 3, s_0_2, 0, -1, 0},
      86              : { 3, s_0_3, 0, -1, 0}
      87              : };
      88              : 
      89              : static const symbol s_1_1[1] = { 'H' };
      90              : static const symbol s_1_2[2] = { 'H', 'e' };
      91              : static const symbol s_1_3[2] = { 'H', 'i' };
      92              : static const symbol s_1_4[1] = { 'I' };
      93              : static const symbol s_1_5[1] = { 'U' };
      94              : static const symbol s_1_6[1] = { 'Y' };
      95              : static const struct among a_1[7] = {
      96              : { 0, 0, 0, 7, 0},
      97              : { 1, s_1_1, -1, 6, 0},
      98              : { 2, s_1_2, -1, 4, 0},
      99              : { 2, s_1_3, -2, 5, 0},
     100              : { 1, s_1_4, -4, 1, 0},
     101              : { 1, s_1_5, -5, 2, 0},
     102              : { 1, s_1_6, -6, 3, 0}
     103              : };
     104              : 
     105              : static const symbol s_2_0[3] = { 'i', 'q', 'U' };
     106              : static const symbol s_2_1[3] = { 'a', 'b', 'l' };
     107              : static const symbol s_2_2[3] = { 'I', 0xE8, 'r' };
     108              : static const symbol s_2_3[3] = { 'i', 0xE8, 'r' };
     109              : static const symbol s_2_4[3] = { 'e', 'u', 's' };
     110              : static const symbol s_2_5[2] = { 'i', 'v' };
     111              : static const struct among a_2[6] = {
     112              : { 3, s_2_0, 0, 3, 0},
     113              : { 3, s_2_1, 0, 3, 0},
     114              : { 3, s_2_2, 0, 4, 0},
     115              : { 3, s_2_3, 0, 4, 0},
     116              : { 3, s_2_4, 0, 2, 0},
     117              : { 2, s_2_5, 0, 1, 0}
     118              : };
     119              : 
     120              : static const symbol s_3_0[2] = { 'i', 'c' };
     121              : static const symbol s_3_1[4] = { 'a', 'b', 'i', 'l' };
     122              : static const symbol s_3_2[2] = { 'i', 'v' };
     123              : static const struct among a_3[3] = {
     124              : { 2, s_3_0, 0, 2, 0},
     125              : { 4, s_3_1, 0, 1, 0},
     126              : { 2, s_3_2, 0, 3, 0}
     127              : };
     128              : 
     129              : static const symbol s_4_0[4] = { 'i', 'q', 'U', 'e' };
     130              : static const symbol s_4_1[6] = { 'a', 't', 'r', 'i', 'c', 'e' };
     131              : static const symbol s_4_2[4] = { 'a', 'n', 'c', 'e' };
     132              : static const symbol s_4_3[4] = { 'e', 'n', 'c', 'e' };
     133              : static const symbol s_4_4[5] = { 'l', 'o', 'g', 'i', 'e' };
     134              : static const symbol s_4_5[4] = { 'a', 'b', 'l', 'e' };
     135              : static const symbol s_4_6[4] = { 'i', 's', 'm', 'e' };
     136              : static const symbol s_4_7[4] = { 'e', 'u', 's', 'e' };
     137              : static const symbol s_4_8[4] = { 'i', 's', 't', 'e' };
     138              : static const symbol s_4_9[3] = { 'i', 'v', 'e' };
     139              : static const symbol s_4_10[2] = { 'i', 'f' };
     140              : static const symbol s_4_11[5] = { 'u', 's', 'i', 'o', 'n' };
     141              : static const symbol s_4_12[5] = { 'a', 't', 'i', 'o', 'n' };
     142              : static const symbol s_4_13[5] = { 'u', 't', 'i', 'o', 'n' };
     143              : static const symbol s_4_14[5] = { 'a', 't', 'e', 'u', 'r' };
     144              : static const symbol s_4_15[5] = { 'i', 'q', 'U', 'e', 's' };
     145              : static const symbol s_4_16[7] = { 'a', 't', 'r', 'i', 'c', 'e', 's' };
     146              : static const symbol s_4_17[5] = { 'a', 'n', 'c', 'e', 's' };
     147              : static const symbol s_4_18[5] = { 'e', 'n', 'c', 'e', 's' };
     148              : static const symbol s_4_19[6] = { 'l', 'o', 'g', 'i', 'e', 's' };
     149              : static const symbol s_4_20[5] = { 'a', 'b', 'l', 'e', 's' };
     150              : static const symbol s_4_21[5] = { 'i', 's', 'm', 'e', 's' };
     151              : static const symbol s_4_22[5] = { 'e', 'u', 's', 'e', 's' };
     152              : static const symbol s_4_23[5] = { 'i', 's', 't', 'e', 's' };
     153              : static const symbol s_4_24[4] = { 'i', 'v', 'e', 's' };
     154              : static const symbol s_4_25[3] = { 'i', 'f', 's' };
     155              : static const symbol s_4_26[6] = { 'u', 's', 'i', 'o', 'n', 's' };
     156              : static const symbol s_4_27[6] = { 'a', 't', 'i', 'o', 'n', 's' };
     157              : static const symbol s_4_28[6] = { 'u', 't', 'i', 'o', 'n', 's' };
     158              : static const symbol s_4_29[6] = { 'a', 't', 'e', 'u', 'r', 's' };
     159              : static const symbol s_4_30[5] = { 'm', 'e', 'n', 't', 's' };
     160              : static const symbol s_4_31[6] = { 'e', 'm', 'e', 'n', 't', 's' };
     161              : static const symbol s_4_32[9] = { 'i', 's', 's', 'e', 'm', 'e', 'n', 't', 's' };
     162              : static const symbol s_4_33[4] = { 'i', 't', 0xE9, 's' };
     163              : static const symbol s_4_34[4] = { 'm', 'e', 'n', 't' };
     164              : static const symbol s_4_35[5] = { 'e', 'm', 'e', 'n', 't' };
     165              : static const symbol s_4_36[8] = { 'i', 's', 's', 'e', 'm', 'e', 'n', 't' };
     166              : static const symbol s_4_37[6] = { 'a', 'm', 'm', 'e', 'n', 't' };
     167              : static const symbol s_4_38[6] = { 'e', 'm', 'm', 'e', 'n', 't' };
     168              : static const symbol s_4_39[3] = { 'a', 'u', 'x' };
     169              : static const symbol s_4_40[4] = { 'e', 'a', 'u', 'x' };
     170              : static const symbol s_4_41[3] = { 'e', 'u', 'x' };
     171              : static const symbol s_4_42[3] = { 'o', 'u', 'x' };
     172              : static const symbol s_4_43[3] = { 'i', 't', 0xE9 };
     173              : static const struct among a_4[44] = {
     174              : { 4, s_4_0, 0, 1, 0},
     175              : { 6, s_4_1, 0, 2, 0},
     176              : { 4, s_4_2, 0, 1, 0},
     177              : { 4, s_4_3, 0, 5, 0},
     178              : { 5, s_4_4, 0, 3, 0},
     179              : { 4, s_4_5, 0, 1, 0},
     180              : { 4, s_4_6, 0, 1, 0},
     181              : { 4, s_4_7, 0, 12, 0},
     182              : { 4, s_4_8, 0, 1, 0},
     183              : { 3, s_4_9, 0, 8, 0},
     184              : { 2, s_4_10, 0, 8, 0},
     185              : { 5, s_4_11, 0, 4, 0},
     186              : { 5, s_4_12, 0, 2, 0},
     187              : { 5, s_4_13, 0, 4, 0},
     188              : { 5, s_4_14, 0, 2, 0},
     189              : { 5, s_4_15, 0, 1, 0},
     190              : { 7, s_4_16, 0, 2, 0},
     191              : { 5, s_4_17, 0, 1, 0},
     192              : { 5, s_4_18, 0, 5, 0},
     193              : { 6, s_4_19, 0, 3, 0},
     194              : { 5, s_4_20, 0, 1, 0},
     195              : { 5, s_4_21, 0, 1, 0},
     196              : { 5, s_4_22, 0, 12, 0},
     197              : { 5, s_4_23, 0, 1, 0},
     198              : { 4, s_4_24, 0, 8, 0},
     199              : { 3, s_4_25, 0, 8, 0},
     200              : { 6, s_4_26, 0, 4, 0},
     201              : { 6, s_4_27, 0, 2, 0},
     202              : { 6, s_4_28, 0, 4, 0},
     203              : { 6, s_4_29, 0, 2, 0},
     204              : { 5, s_4_30, 0, 16, 0},
     205              : { 6, s_4_31, -1, 6, 0},
     206              : { 9, s_4_32, -1, 13, 0},
     207              : { 4, s_4_33, 0, 7, 0},
     208              : { 4, s_4_34, 0, 16, 0},
     209              : { 5, s_4_35, -1, 6, 0},
     210              : { 8, s_4_36, -1, 13, 0},
     211              : { 6, s_4_37, -3, 14, 0},
     212              : { 6, s_4_38, -4, 15, 0},
     213              : { 3, s_4_39, 0, 10, 0},
     214              : { 4, s_4_40, -1, 9, 0},
     215              : { 3, s_4_41, 0, 1, 0},
     216              : { 3, s_4_42, 0, 11, 0},
     217              : { 3, s_4_43, 0, 7, 0}
     218              : };
     219              : 
     220              : static const symbol s_5_0[3] = { 'i', 'r', 'a' };
     221              : static const symbol s_5_1[2] = { 'i', 'e' };
     222              : static const symbol s_5_2[4] = { 'i', 's', 's', 'e' };
     223              : static const symbol s_5_3[7] = { 'i', 's', 's', 'a', 'n', 't', 'e' };
     224              : static const symbol s_5_4[1] = { 'i' };
     225              : static const symbol s_5_5[4] = { 'i', 'r', 'a', 'i' };
     226              : static const symbol s_5_6[2] = { 'i', 'r' };
     227              : static const symbol s_5_7[4] = { 'i', 'r', 'a', 's' };
     228              : static const symbol s_5_8[3] = { 'i', 'e', 's' };
     229              : static const symbol s_5_9[4] = { 0xEE, 'm', 'e', 's' };
     230              : static const symbol s_5_10[5] = { 'i', 's', 's', 'e', 's' };
     231              : static const symbol s_5_11[8] = { 'i', 's', 's', 'a', 'n', 't', 'e', 's' };
     232              : static const symbol s_5_12[4] = { 0xEE, 't', 'e', 's' };
     233              : static const symbol s_5_13[2] = { 'i', 's' };
     234              : static const symbol s_5_14[5] = { 'i', 'r', 'a', 'i', 's' };
     235              : static const symbol s_5_15[6] = { 'i', 's', 's', 'a', 'i', 's' };
     236              : static const symbol s_5_16[6] = { 'i', 'r', 'i', 'o', 'n', 's' };
     237              : static const symbol s_5_17[7] = { 'i', 's', 's', 'i', 'o', 'n', 's' };
     238              : static const symbol s_5_18[5] = { 'i', 'r', 'o', 'n', 's' };
     239              : static const symbol s_5_19[6] = { 'i', 's', 's', 'o', 'n', 's' };
     240              : static const symbol s_5_20[7] = { 'i', 's', 's', 'a', 'n', 't', 's' };
     241              : static const symbol s_5_21[2] = { 'i', 't' };
     242              : static const symbol s_5_22[5] = { 'i', 'r', 'a', 'i', 't' };
     243              : static const symbol s_5_23[6] = { 'i', 's', 's', 'a', 'i', 't' };
     244              : static const symbol s_5_24[6] = { 'i', 's', 's', 'a', 'n', 't' };
     245              : static const symbol s_5_25[7] = { 'i', 'r', 'a', 'I', 'e', 'n', 't' };
     246              : static const symbol s_5_26[8] = { 'i', 's', 's', 'a', 'I', 'e', 'n', 't' };
     247              : static const symbol s_5_27[5] = { 'i', 'r', 'e', 'n', 't' };
     248              : static const symbol s_5_28[6] = { 'i', 's', 's', 'e', 'n', 't' };
     249              : static const symbol s_5_29[5] = { 'i', 'r', 'o', 'n', 't' };
     250              : static const symbol s_5_30[2] = { 0xEE, 't' };
     251              : static const symbol s_5_31[5] = { 'i', 'r', 'i', 'e', 'z' };
     252              : static const symbol s_5_32[6] = { 'i', 's', 's', 'i', 'e', 'z' };
     253              : static const symbol s_5_33[4] = { 'i', 'r', 'e', 'z' };
     254              : static const symbol s_5_34[5] = { 'i', 's', 's', 'e', 'z' };
     255              : static const struct among a_5[35] = {
     256              : { 3, s_5_0, 0, 1, 0},
     257              : { 2, s_5_1, 0, 1, 0},
     258              : { 4, s_5_2, 0, 1, 0},
     259              : { 7, s_5_3, 0, 1, 0},
     260              : { 1, s_5_4, 0, 1, 0},
     261              : { 4, s_5_5, -1, 1, 0},
     262              : { 2, s_5_6, 0, 1, 0},
     263              : { 4, s_5_7, 0, 1, 0},
     264              : { 3, s_5_8, 0, 1, 0},
     265              : { 4, s_5_9, 0, 1, 0},
     266              : { 5, s_5_10, 0, 1, 0},
     267              : { 8, s_5_11, 0, 1, 0},
     268              : { 4, s_5_12, 0, 1, 0},
     269              : { 2, s_5_13, 0, 1, 0},
     270              : { 5, s_5_14, -1, 1, 0},
     271              : { 6, s_5_15, -2, 1, 0},
     272              : { 6, s_5_16, 0, 1, 0},
     273              : { 7, s_5_17, 0, 1, 0},
     274              : { 5, s_5_18, 0, 1, 0},
     275              : { 6, s_5_19, 0, 1, 0},
     276              : { 7, s_5_20, 0, 1, 0},
     277              : { 2, s_5_21, 0, 1, 0},
     278              : { 5, s_5_22, -1, 1, 0},
     279              : { 6, s_5_23, -2, 1, 0},
     280              : { 6, s_5_24, 0, 1, 0},
     281              : { 7, s_5_25, 0, 1, 0},
     282              : { 8, s_5_26, 0, 1, 0},
     283              : { 5, s_5_27, 0, 1, 0},
     284              : { 6, s_5_28, 0, 1, 0},
     285              : { 5, s_5_29, 0, 1, 0},
     286              : { 2, s_5_30, 0, 1, 0},
     287              : { 5, s_5_31, 0, 1, 0},
     288              : { 6, s_5_32, 0, 1, 0},
     289              : { 4, s_5_33, 0, 1, 0},
     290              : { 5, s_5_34, 0, 1, 0}
     291              : };
     292              : 
     293              : static const symbol s_6_0[2] = { 'a', 'l' };
     294              : static const symbol s_6_1[3] = { 0xE9, 'p', 'l' };
     295              : static const symbol s_6_2[3] = { 'a', 'u', 'v' };
     296              : static const struct among a_6[3] = {
     297              : { 2, s_6_0, 0, 1, 0},
     298              : { 3, s_6_1, 0, -1, 0},
     299              : { 3, s_6_2, 0, -1, 0}
     300              : };
     301              : 
     302              : static const symbol s_7_0[1] = { 'a' };
     303              : static const symbol s_7_1[3] = { 'e', 'r', 'a' };
     304              : static const symbol s_7_2[4] = { 'a', 'i', 's', 'e' };
     305              : static const symbol s_7_3[4] = { 'a', 's', 's', 'e' };
     306              : static const symbol s_7_4[4] = { 'a', 'n', 't', 'e' };
     307              : static const symbol s_7_5[2] = { 0xE9, 'e' };
     308              : static const symbol s_7_6[2] = { 'a', 'i' };
     309              : static const symbol s_7_7[4] = { 'e', 'r', 'a', 'i' };
     310              : static const symbol s_7_8[2] = { 'e', 'r' };
     311              : static const symbol s_7_9[2] = { 'a', 's' };
     312              : static const symbol s_7_10[4] = { 'e', 'r', 'a', 's' };
     313              : static const symbol s_7_11[4] = { 0xE2, 'm', 'e', 's' };
     314              : static const symbol s_7_12[5] = { 'a', 'i', 's', 'e', 's' };
     315              : static const symbol s_7_13[5] = { 'a', 's', 's', 'e', 's' };
     316              : static const symbol s_7_14[5] = { 'a', 'n', 't', 'e', 's' };
     317              : static const symbol s_7_15[4] = { 0xE2, 't', 'e', 's' };
     318              : static const symbol s_7_16[3] = { 0xE9, 'e', 's' };
     319              : static const symbol s_7_17[3] = { 'a', 'i', 's' };
     320              : static const symbol s_7_18[4] = { 'e', 'a', 'i', 's' };
     321              : static const symbol s_7_19[5] = { 'e', 'r', 'a', 'i', 's' };
     322              : static const symbol s_7_20[4] = { 'i', 'o', 'n', 's' };
     323              : static const symbol s_7_21[6] = { 'e', 'r', 'i', 'o', 'n', 's' };
     324              : static const symbol s_7_22[7] = { 'a', 's', 's', 'i', 'o', 'n', 's' };
     325              : static const symbol s_7_23[5] = { 'e', 'r', 'o', 'n', 's' };
     326              : static const symbol s_7_24[4] = { 'a', 'n', 't', 's' };
     327              : static const symbol s_7_25[2] = { 0xE9, 's' };
     328              : static const symbol s_7_26[3] = { 'a', 'i', 't' };
     329              : static const symbol s_7_27[5] = { 'e', 'r', 'a', 'i', 't' };
     330              : static const symbol s_7_28[3] = { 'a', 'n', 't' };
     331              : static const symbol s_7_29[5] = { 'a', 'I', 'e', 'n', 't' };
     332              : static const symbol s_7_30[7] = { 'e', 'r', 'a', 'I', 'e', 'n', 't' };
     333              : static const symbol s_7_31[5] = { 0xE8, 'r', 'e', 'n', 't' };
     334              : static const symbol s_7_32[6] = { 'a', 's', 's', 'e', 'n', 't' };
     335              : static const symbol s_7_33[5] = { 'e', 'r', 'o', 'n', 't' };
     336              : static const symbol s_7_34[2] = { 0xE2, 't' };
     337              : static const symbol s_7_35[2] = { 'e', 'z' };
     338              : static const symbol s_7_36[3] = { 'i', 'e', 'z' };
     339              : static const symbol s_7_37[5] = { 'e', 'r', 'i', 'e', 'z' };
     340              : static const symbol s_7_38[6] = { 'a', 's', 's', 'i', 'e', 'z' };
     341              : static const symbol s_7_39[4] = { 'e', 'r', 'e', 'z' };
     342              : static const symbol s_7_40[1] = { 0xE9 };
     343              : static const struct among a_7[41] = {
     344              : { 1, s_7_0, 0, 3, 0},
     345              : { 3, s_7_1, -1, 2, 0},
     346              : { 4, s_7_2, 0, 4, 0},
     347              : { 4, s_7_3, 0, 3, 0},
     348              : { 4, s_7_4, 0, 3, 0},
     349              : { 2, s_7_5, 0, 2, 0},
     350              : { 2, s_7_6, 0, 3, 0},
     351              : { 4, s_7_7, -1, 2, 0},
     352              : { 2, s_7_8, 0, 2, 0},
     353              : { 2, s_7_9, 0, 3, 0},
     354              : { 4, s_7_10, -1, 2, 0},
     355              : { 4, s_7_11, 0, 3, 0},
     356              : { 5, s_7_12, 0, 4, 0},
     357              : { 5, s_7_13, 0, 3, 0},
     358              : { 5, s_7_14, 0, 3, 0},
     359              : { 4, s_7_15, 0, 3, 0},
     360              : { 3, s_7_16, 0, 2, 0},
     361              : { 3, s_7_17, 0, 4, 0},
     362              : { 4, s_7_18, -1, 2, 0},
     363              : { 5, s_7_19, -2, 2, 0},
     364              : { 4, s_7_20, 0, 1, 0},
     365              : { 6, s_7_21, -1, 2, 0},
     366              : { 7, s_7_22, -2, 3, 0},
     367              : { 5, s_7_23, 0, 2, 0},
     368              : { 4, s_7_24, 0, 3, 0},
     369              : { 2, s_7_25, 0, 2, 0},
     370              : { 3, s_7_26, 0, 3, 0},
     371              : { 5, s_7_27, -1, 2, 0},
     372              : { 3, s_7_28, 0, 3, 0},
     373              : { 5, s_7_29, 0, 3, 0},
     374              : { 7, s_7_30, -1, 2, 0},
     375              : { 5, s_7_31, 0, 2, 0},
     376              : { 6, s_7_32, 0, 3, 0},
     377              : { 5, s_7_33, 0, 2, 0},
     378              : { 2, s_7_34, 0, 3, 0},
     379              : { 2, s_7_35, 0, 2, 0},
     380              : { 3, s_7_36, -1, 2, 0},
     381              : { 5, s_7_37, -1, 2, 0},
     382              : { 6, s_7_38, -2, 3, 0},
     383              : { 4, s_7_39, -4, 2, 0},
     384              : { 1, s_7_40, 0, 2, 0}
     385              : };
     386              : 
     387              : static const symbol s_8_0[1] = { 'e' };
     388              : static const symbol s_8_1[4] = { 'I', 0xE8, 'r', 'e' };
     389              : static const symbol s_8_2[4] = { 'i', 0xE8, 'r', 'e' };
     390              : static const symbol s_8_3[3] = { 'i', 'o', 'n' };
     391              : static const symbol s_8_4[3] = { 'I', 'e', 'r' };
     392              : static const symbol s_8_5[3] = { 'i', 'e', 'r' };
     393              : static const struct among a_8[6] = {
     394              : { 1, s_8_0, 0, 3, 0},
     395              : { 4, s_8_1, -1, 2, 0},
     396              : { 4, s_8_2, -2, 2, 0},
     397              : { 3, s_8_3, 0, 1, 0},
     398              : { 3, s_8_4, 0, 2, 0},
     399              : { 3, s_8_5, 0, 2, 0}
     400              : };
     401              : 
     402              : static const symbol s_9_0[3] = { 'e', 'l', 'l' };
     403              : static const symbol s_9_1[4] = { 'e', 'i', 'l', 'l' };
     404              : static const symbol s_9_2[3] = { 'e', 'n', 'n' };
     405              : static const symbol s_9_3[3] = { 'o', 'n', 'n' };
     406              : static const symbol s_9_4[3] = { 'e', 't', 't' };
     407              : static const struct among a_9[5] = {
     408              : { 3, s_9_0, 0, -1, 0},
     409              : { 4, s_9_1, 0, -1, 0},
     410              : { 3, s_9_2, 0, -1, 0},
     411              : { 3, s_9_3, 0, -1, 0},
     412              : { 3, s_9_4, 0, -1, 0}
     413              : };
     414              : 
     415              : static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 130, 103, 8, 5 };
     416              : 
     417              : static const unsigned char g_oux_ending[] = { 65, 85 };
     418              : 
     419              : static const unsigned char g_elision_char[] = { 131, 14, 3 };
     420              : 
     421              : static const unsigned char g_keep_with_s[] = { 1, 65, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
     422              : 
     423            0 : static int r_elisions(struct SN_env * z) {
     424            0 :     z->bra = z->c;
     425              :     do {
     426            0 :         int v_1 = z->c;
     427            0 :         if (in_grouping(z, g_elision_char, 99, 116, 0)) goto lab0;
     428            0 :         break;
     429            0 :     lab0:
     430            0 :         z->c = v_1;
     431            0 :         if (!(eq_s(z, 2, s_0))) return 0;
     432              :     } while (0);
     433            0 :     if (z->c == z->l || z->p[z->c] != '\'') return 0;
     434            0 :     z->c++;
     435            0 :     z->ket = z->c;
     436            0 :     if (z->c < z->l) goto lab1;
     437            0 :     return 0;
     438            0 : lab1:
     439              :     {
     440            0 :         int ret = slice_del(z);
     441            0 :         if (ret < 0) return ret;
     442              :     }
     443            0 :     return 1;
     444              : }
     445              : 
     446            0 : static int r_prelude(struct SN_env * z) {
     447            0 :     while (1) {
     448            0 :         int v_1 = z->c;
     449            0 :         while (1) {
     450            0 :             int v_2 = z->c;
     451              :             do {
     452            0 :                 int v_3 = z->c;
     453            0 :                 if (in_grouping(z, g_v, 97, 251, 0)) goto lab2;
     454            0 :                 z->bra = z->c;
     455              :                 do {
     456            0 :                     int v_4 = z->c;
     457            0 :                     if (z->c == z->l || z->p[z->c] != 'u') goto lab3;
     458            0 :                     z->c++;
     459            0 :                     z->ket = z->c;
     460            0 :                     if (in_grouping(z, g_v, 97, 251, 0)) goto lab3;
     461              :                     {
     462            0 :                         int ret = slice_from_s(z, 1, s_1);
     463            0 :                         if (ret < 0) return ret;
     464              :                     }
     465            0 :                     break;
     466            0 :                 lab3:
     467            0 :                     z->c = v_4;
     468            0 :                     if (z->c == z->l || z->p[z->c] != 'i') goto lab4;
     469            0 :                     z->c++;
     470            0 :                     z->ket = z->c;
     471            0 :                     if (in_grouping(z, g_v, 97, 251, 0)) goto lab4;
     472              :                     {
     473            0 :                         int ret = slice_from_s(z, 1, s_2);
     474            0 :                         if (ret < 0) return ret;
     475              :                     }
     476            0 :                     break;
     477            0 :                 lab4:
     478            0 :                     z->c = v_4;
     479            0 :                     if (z->c == z->l || z->p[z->c] != 'y') goto lab2;
     480            0 :                     z->c++;
     481            0 :                     z->ket = z->c;
     482              :                     {
     483            0 :                         int ret = slice_from_s(z, 1, s_3);
     484            0 :                         if (ret < 0) return ret;
     485              :                     }
     486              :                 } while (0);
     487            0 :                 break;
     488            0 :             lab2:
     489            0 :                 z->c = v_3;
     490            0 :                 z->bra = z->c;
     491            0 :                 if (z->c == z->l || z->p[z->c] != 0xEB) goto lab5;
     492            0 :                 z->c++;
     493            0 :                 z->ket = z->c;
     494              :                 {
     495            0 :                     int ret = slice_from_s(z, 2, s_4);
     496            0 :                     if (ret < 0) return ret;
     497              :                 }
     498            0 :                 break;
     499            0 :             lab5:
     500            0 :                 z->c = v_3;
     501            0 :                 z->bra = z->c;
     502            0 :                 if (z->c == z->l || z->p[z->c] != 0xEF) goto lab6;
     503            0 :                 z->c++;
     504            0 :                 z->ket = z->c;
     505              :                 {
     506            0 :                     int ret = slice_from_s(z, 2, s_5);
     507            0 :                     if (ret < 0) return ret;
     508              :                 }
     509            0 :                 break;
     510            0 :             lab6:
     511            0 :                 z->c = v_3;
     512            0 :                 z->bra = z->c;
     513            0 :                 if (z->c == z->l || z->p[z->c] != 'y') goto lab7;
     514            0 :                 z->c++;
     515            0 :                 z->ket = z->c;
     516            0 :                 if (in_grouping(z, g_v, 97, 251, 0)) goto lab7;
     517              :                 {
     518            0 :                     int ret = slice_from_s(z, 1, s_6);
     519            0 :                     if (ret < 0) return ret;
     520              :                 }
     521            0 :                 break;
     522            0 :             lab7:
     523            0 :                 z->c = v_3;
     524            0 :                 if (z->c == z->l || z->p[z->c] != 'q') goto lab1;
     525            0 :                 z->c++;
     526            0 :                 z->bra = z->c;
     527            0 :                 if (z->c == z->l || z->p[z->c] != 'u') goto lab1;
     528            0 :                 z->c++;
     529            0 :                 z->ket = z->c;
     530              :                 {
     531            0 :                     int ret = slice_from_s(z, 1, s_7);
     532            0 :                     if (ret < 0) return ret;
     533              :                 }
     534              :             } while (0);
     535            0 :             z->c = v_2;
     536            0 :             break;
     537            0 :         lab1:
     538            0 :             z->c = v_2;
     539            0 :             if (z->c >= z->l) goto lab0;
     540            0 :             z->c++;
     541              :         }
     542            0 :         continue;
     543            0 :     lab0:
     544            0 :         z->c = v_1;
     545            0 :         break;
     546              :     }
     547            0 :     return 1;
     548              : }
     549              : 
     550            0 : static int r_mark_regions(struct SN_env * z) {
     551              :     int among_var;
     552            0 :     ((SN_local *)z)->i_pV = z->l;
     553            0 :     ((SN_local *)z)->i_p1 = z->l;
     554            0 :     ((SN_local *)z)->i_p2 = z->l;
     555              :     {
     556            0 :         int v_1 = z->c;
     557              :         do {
     558            0 :             int v_2 = z->c;
     559            0 :             if (in_grouping(z, g_v, 97, 251, 0)) goto lab1;
     560            0 :             if (in_grouping(z, g_v, 97, 251, 0)) goto lab1;
     561            0 :             if (z->c >= z->l) goto lab1;
     562            0 :             z->c++;
     563            0 :             break;
     564            0 :         lab1:
     565            0 :             z->c = v_2;
     566            0 :             if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 3 || !((33282 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab2;
     567            0 :             among_var = find_among(z, a_0, 4, 0);
     568            0 :             if (!among_var) goto lab2;
     569            0 :             switch (among_var) {
     570            0 :                 case 1:
     571            0 :                     if (in_grouping(z, g_v, 97, 251, 0)) goto lab2;
     572            0 :                     break;
     573              :             }
     574            0 :             break;
     575            0 :         lab2:
     576            0 :             z->c = v_2;
     577            0 :             if (z->c >= z->l) goto lab0;
     578            0 :             z->c++;
     579              :             {
     580            0 :                 int ret = out_grouping(z, g_v, 97, 251, 1);
     581            0 :                 if (ret < 0) goto lab0;
     582            0 :                 z->c += ret;
     583              :             }
     584              :         } while (0);
     585            0 :         ((SN_local *)z)->i_pV = z->c;
     586            0 :     lab0:
     587            0 :         z->c = v_1;
     588              :     }
     589              :     {
     590            0 :         int v_3 = z->c;
     591              :         {
     592            0 :             int ret = out_grouping(z, g_v, 97, 251, 1);
     593            0 :             if (ret < 0) goto lab3;
     594            0 :             z->c += ret;
     595              :         }
     596              :         {
     597            0 :             int ret = in_grouping(z, g_v, 97, 251, 1);
     598            0 :             if (ret < 0) goto lab3;
     599            0 :             z->c += ret;
     600              :         }
     601            0 :         ((SN_local *)z)->i_p1 = z->c;
     602              :         {
     603            0 :             int ret = out_grouping(z, g_v, 97, 251, 1);
     604            0 :             if (ret < 0) goto lab3;
     605            0 :             z->c += ret;
     606              :         }
     607              :         {
     608            0 :             int ret = in_grouping(z, g_v, 97, 251, 1);
     609            0 :             if (ret < 0) goto lab3;
     610            0 :             z->c += ret;
     611              :         }
     612            0 :         ((SN_local *)z)->i_p2 = z->c;
     613            0 :     lab3:
     614            0 :         z->c = v_3;
     615              :     }
     616            0 :     return 1;
     617              : }
     618              : 
     619            0 : static int r_postlude(struct SN_env * z) {
     620              :     int among_var;
     621            0 :     while (1) {
     622            0 :         int v_1 = z->c;
     623            0 :         z->bra = z->c;
     624            0 :         if (z->c >= z->l || z->p[z->c + 0] >> 5 != 2 || !((35652352 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 7; else
     625            0 :         among_var = find_among(z, a_1, 7, 0);
     626            0 :         z->ket = z->c;
     627            0 :         switch (among_var) {
     628            0 :             case 1:
     629              :                 {
     630            0 :                     int ret = slice_from_s(z, 1, s_8);
     631            0 :                     if (ret < 0) return ret;
     632              :                 }
     633            0 :                 break;
     634            0 :             case 2:
     635              :                 {
     636            0 :                     int ret = slice_from_s(z, 1, s_9);
     637            0 :                     if (ret < 0) return ret;
     638              :                 }
     639            0 :                 break;
     640            0 :             case 3:
     641              :                 {
     642            0 :                     int ret = slice_from_s(z, 1, s_10);
     643            0 :                     if (ret < 0) return ret;
     644              :                 }
     645            0 :                 break;
     646            0 :             case 4:
     647              :                 {
     648            0 :                     int ret = slice_from_s(z, 1, s_11);
     649            0 :                     if (ret < 0) return ret;
     650              :                 }
     651            0 :                 break;
     652            0 :             case 5:
     653              :                 {
     654            0 :                     int ret = slice_from_s(z, 1, s_12);
     655            0 :                     if (ret < 0) return ret;
     656              :                 }
     657            0 :                 break;
     658            0 :             case 6:
     659              :                 {
     660            0 :                     int ret = slice_del(z);
     661            0 :                     if (ret < 0) return ret;
     662              :                 }
     663            0 :                 break;
     664            0 :             case 7:
     665            0 :                 if (z->c >= z->l) goto lab0;
     666            0 :                 z->c++;
     667            0 :                 break;
     668              :         }
     669            0 :         continue;
     670            0 :     lab0:
     671            0 :         z->c = v_1;
     672            0 :         break;
     673              :     }
     674            0 :     return 1;
     675              : }
     676              : 
     677            0 : static int r_RV(struct SN_env * z) {
     678            0 :     return ((SN_local *)z)->i_pV <= z->c;
     679              : }
     680              : 
     681            0 : static int r_R1(struct SN_env * z) {
     682            0 :     return ((SN_local *)z)->i_p1 <= z->c;
     683              : }
     684              : 
     685            0 : static int r_R2(struct SN_env * z) {
     686            0 :     return ((SN_local *)z)->i_p2 <= z->c;
     687              : }
     688              : 
     689            0 : static int r_standard_suffix(struct SN_env * z) {
     690              :     int among_var;
     691            0 :     z->ket = z->c;
     692            0 :     among_var = find_among_b(z, a_4, 44, 0);
     693            0 :     if (!among_var) return 0;
     694            0 :     z->bra = z->c;
     695            0 :     switch (among_var) {
     696            0 :         case 1:
     697              :             {
     698            0 :                 int ret = r_R2(z);
     699            0 :                 if (ret <= 0) return ret;
     700              :             }
     701              :             {
     702            0 :                 int ret = slice_del(z);
     703            0 :                 if (ret < 0) return ret;
     704              :             }
     705            0 :             break;
     706            0 :         case 2:
     707              :             {
     708            0 :                 int ret = r_R2(z);
     709            0 :                 if (ret <= 0) return ret;
     710              :             }
     711              :             {
     712            0 :                 int ret = slice_del(z);
     713            0 :                 if (ret < 0) return ret;
     714              :             }
     715              :             {
     716            0 :                 int v_1 = z->l - z->c;
     717            0 :                 z->ket = z->c;
     718            0 :                 if (!(eq_s_b(z, 2, s_13))) { z->c = z->l - v_1; goto lab0; }
     719            0 :                 z->bra = z->c;
     720              :                 do {
     721            0 :                     int v_2 = z->l - z->c;
     722              :                     {
     723            0 :                         int ret = r_R2(z);
     724            0 :                         if (ret == 0) goto lab1;
     725            0 :                         if (ret < 0) return ret;
     726              :                     }
     727              :                     {
     728            0 :                         int ret = slice_del(z);
     729            0 :                         if (ret < 0) return ret;
     730              :                     }
     731            0 :                     break;
     732            0 :                 lab1:
     733            0 :                     z->c = z->l - v_2;
     734              :                     {
     735            0 :                         int ret = slice_from_s(z, 3, s_14);
     736            0 :                         if (ret < 0) return ret;
     737              :                     }
     738              :                 } while (0);
     739            0 :             lab0:
     740              :                 ;
     741              :             }
     742            0 :             break;
     743            0 :         case 3:
     744              :             {
     745            0 :                 int ret = r_R2(z);
     746            0 :                 if (ret <= 0) return ret;
     747              :             }
     748              :             {
     749            0 :                 int ret = slice_from_s(z, 3, s_15);
     750            0 :                 if (ret < 0) return ret;
     751              :             }
     752            0 :             break;
     753            0 :         case 4:
     754              :             {
     755            0 :                 int ret = r_R2(z);
     756            0 :                 if (ret <= 0) return ret;
     757              :             }
     758              :             {
     759            0 :                 int ret = slice_from_s(z, 1, s_16);
     760            0 :                 if (ret < 0) return ret;
     761              :             }
     762            0 :             break;
     763            0 :         case 5:
     764              :             {
     765            0 :                 int ret = r_R2(z);
     766            0 :                 if (ret <= 0) return ret;
     767              :             }
     768              :             {
     769            0 :                 int ret = slice_from_s(z, 3, s_17);
     770            0 :                 if (ret < 0) return ret;
     771              :             }
     772            0 :             break;
     773            0 :         case 6:
     774              :             {
     775            0 :                 int ret = r_RV(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 v_3 = z->l - z->c;
     784            0 :                 z->ket = z->c;
     785            0 :                 among_var = find_among_b(z, a_2, 6, 0);
     786            0 :                 if (!among_var) { z->c = z->l - v_3; goto lab2; }
     787            0 :                 z->bra = z->c;
     788            0 :                 switch (among_var) {
     789            0 :                     case 1:
     790              :                         {
     791            0 :                             int ret = r_R2(z);
     792            0 :                             if (ret == 0) { z->c = z->l - v_3; goto lab2; }
     793            0 :                             if (ret < 0) return ret;
     794              :                         }
     795              :                         {
     796            0 :                             int ret = slice_del(z);
     797            0 :                             if (ret < 0) return ret;
     798              :                         }
     799            0 :                         z->ket = z->c;
     800            0 :                         if (!(eq_s_b(z, 2, s_18))) { z->c = z->l - v_3; goto lab2; }
     801            0 :                         z->bra = z->c;
     802              :                         {
     803            0 :                             int ret = r_R2(z);
     804            0 :                             if (ret == 0) { z->c = z->l - v_3; goto lab2; }
     805            0 :                             if (ret < 0) return ret;
     806              :                         }
     807              :                         {
     808            0 :                             int ret = slice_del(z);
     809            0 :                             if (ret < 0) return ret;
     810              :                         }
     811            0 :                         break;
     812            0 :                     case 2:
     813              :                         do {
     814            0 :                             int v_4 = z->l - z->c;
     815              :                             {
     816            0 :                                 int ret = r_R2(z);
     817            0 :                                 if (ret == 0) goto lab3;
     818            0 :                                 if (ret < 0) return ret;
     819              :                             }
     820              :                             {
     821            0 :                                 int ret = slice_del(z);
     822            0 :                                 if (ret < 0) return ret;
     823              :                             }
     824            0 :                             break;
     825            0 :                         lab3:
     826            0 :                             z->c = z->l - v_4;
     827              :                             {
     828            0 :                                 int ret = r_R1(z);
     829            0 :                                 if (ret == 0) { z->c = z->l - v_3; goto lab2; }
     830            0 :                                 if (ret < 0) return ret;
     831              :                             }
     832              :                             {
     833            0 :                                 int ret = slice_from_s(z, 3, s_19);
     834            0 :                                 if (ret < 0) return ret;
     835              :                             }
     836              :                         } while (0);
     837            0 :                         break;
     838            0 :                     case 3:
     839              :                         {
     840            0 :                             int ret = r_R2(z);
     841            0 :                             if (ret == 0) { z->c = z->l - v_3; goto lab2; }
     842            0 :                             if (ret < 0) return ret;
     843              :                         }
     844              :                         {
     845            0 :                             int ret = slice_del(z);
     846            0 :                             if (ret < 0) return ret;
     847              :                         }
     848            0 :                         break;
     849            0 :                     case 4:
     850              :                         {
     851            0 :                             int ret = r_RV(z);
     852            0 :                             if (ret == 0) { z->c = z->l - v_3; goto lab2; }
     853            0 :                             if (ret < 0) return ret;
     854              :                         }
     855              :                         {
     856            0 :                             int ret = slice_from_s(z, 1, s_20);
     857            0 :                             if (ret < 0) return ret;
     858              :                         }
     859            0 :                         break;
     860              :                 }
     861            0 :             lab2:
     862              :                 ;
     863              :             }
     864            0 :             break;
     865            0 :         case 7:
     866              :             {
     867            0 :                 int ret = r_R2(z);
     868            0 :                 if (ret <= 0) return ret;
     869              :             }
     870              :             {
     871            0 :                 int ret = slice_del(z);
     872            0 :                 if (ret < 0) return ret;
     873              :             }
     874              :             {
     875            0 :                 int v_5 = z->l - z->c;
     876            0 :                 z->ket = z->c;
     877            0 :                 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_5; goto lab4; }
     878            0 :                 among_var = find_among_b(z, a_3, 3, 0);
     879            0 :                 if (!among_var) { z->c = z->l - v_5; goto lab4; }
     880            0 :                 z->bra = z->c;
     881            0 :                 switch (among_var) {
     882            0 :                     case 1:
     883              :                         do {
     884            0 :                             int v_6 = z->l - z->c;
     885              :                             {
     886            0 :                                 int ret = r_R2(z);
     887            0 :                                 if (ret == 0) goto lab5;
     888            0 :                                 if (ret < 0) return ret;
     889              :                             }
     890              :                             {
     891            0 :                                 int ret = slice_del(z);
     892            0 :                                 if (ret < 0) return ret;
     893              :                             }
     894            0 :                             break;
     895            0 :                         lab5:
     896            0 :                             z->c = z->l - v_6;
     897              :                             {
     898            0 :                                 int ret = slice_from_s(z, 3, s_21);
     899            0 :                                 if (ret < 0) return ret;
     900              :                             }
     901              :                         } while (0);
     902            0 :                         break;
     903            0 :                     case 2:
     904              :                         do {
     905            0 :                             int v_7 = z->l - z->c;
     906              :                             {
     907            0 :                                 int ret = r_R2(z);
     908            0 :                                 if (ret == 0) goto lab6;
     909            0 :                                 if (ret < 0) return ret;
     910              :                             }
     911              :                             {
     912            0 :                                 int ret = slice_del(z);
     913            0 :                                 if (ret < 0) return ret;
     914              :                             }
     915            0 :                             break;
     916            0 :                         lab6:
     917            0 :                             z->c = z->l - v_7;
     918              :                             {
     919            0 :                                 int ret = slice_from_s(z, 3, s_22);
     920            0 :                                 if (ret < 0) return ret;
     921              :                             }
     922              :                         } while (0);
     923            0 :                         break;
     924            0 :                     case 3:
     925              :                         {
     926            0 :                             int ret = r_R2(z);
     927            0 :                             if (ret == 0) { z->c = z->l - v_5; goto lab4; }
     928            0 :                             if (ret < 0) return ret;
     929              :                         }
     930              :                         {
     931            0 :                             int ret = slice_del(z);
     932            0 :                             if (ret < 0) return ret;
     933              :                         }
     934            0 :                         break;
     935              :                 }
     936            0 :             lab4:
     937              :                 ;
     938              :             }
     939            0 :             break;
     940            0 :         case 8:
     941              :             {
     942            0 :                 int ret = r_R2(z);
     943            0 :                 if (ret <= 0) return ret;
     944              :             }
     945              :             {
     946            0 :                 int ret = slice_del(z);
     947            0 :                 if (ret < 0) return ret;
     948              :             }
     949              :             {
     950            0 :                 int v_8 = z->l - z->c;
     951            0 :                 z->ket = z->c;
     952            0 :                 if (!(eq_s_b(z, 2, s_23))) { z->c = z->l - v_8; goto lab7; }
     953            0 :                 z->bra = z->c;
     954              :                 {
     955            0 :                     int ret = r_R2(z);
     956            0 :                     if (ret == 0) { z->c = z->l - v_8; goto lab7; }
     957            0 :                     if (ret < 0) return ret;
     958              :                 }
     959              :                 {
     960            0 :                     int ret = slice_del(z);
     961            0 :                     if (ret < 0) return ret;
     962              :                 }
     963            0 :                 z->ket = z->c;
     964            0 :                 if (!(eq_s_b(z, 2, s_24))) { z->c = z->l - v_8; goto lab7; }
     965            0 :                 z->bra = z->c;
     966              :                 do {
     967            0 :                     int v_9 = z->l - z->c;
     968              :                     {
     969            0 :                         int ret = r_R2(z);
     970            0 :                         if (ret == 0) goto lab8;
     971            0 :                         if (ret < 0) return ret;
     972              :                     }
     973              :                     {
     974            0 :                         int ret = slice_del(z);
     975            0 :                         if (ret < 0) return ret;
     976              :                     }
     977            0 :                     break;
     978            0 :                 lab8:
     979            0 :                     z->c = z->l - v_9;
     980              :                     {
     981            0 :                         int ret = slice_from_s(z, 3, s_25);
     982            0 :                         if (ret < 0) return ret;
     983              :                     }
     984              :                 } while (0);
     985            0 :             lab7:
     986              :                 ;
     987              :             }
     988            0 :             break;
     989            0 :         case 9:
     990              :             {
     991            0 :                 int ret = slice_from_s(z, 3, s_26);
     992            0 :                 if (ret < 0) return ret;
     993              :             }
     994            0 :             break;
     995            0 :         case 10:
     996              :             {
     997            0 :                 int ret = r_R1(z);
     998            0 :                 if (ret <= 0) return ret;
     999              :             }
    1000              :             {
    1001            0 :                 int ret = slice_from_s(z, 2, s_27);
    1002            0 :                 if (ret < 0) return ret;
    1003              :             }
    1004            0 :             break;
    1005            0 :         case 11:
    1006            0 :             if (in_grouping_b(z, g_oux_ending, 98, 112, 0)) return 0;
    1007              :             {
    1008            0 :                 int ret = slice_from_s(z, 2, s_28);
    1009            0 :                 if (ret < 0) return ret;
    1010              :             }
    1011            0 :             break;
    1012            0 :         case 12:
    1013              :             do {
    1014            0 :                 int v_10 = z->l - z->c;
    1015              :                 {
    1016            0 :                     int ret = r_R2(z);
    1017            0 :                     if (ret == 0) goto lab9;
    1018            0 :                     if (ret < 0) return ret;
    1019              :                 }
    1020              :                 {
    1021            0 :                     int ret = slice_del(z);
    1022            0 :                     if (ret < 0) return ret;
    1023              :                 }
    1024            0 :                 break;
    1025            0 :             lab9:
    1026            0 :                 z->c = z->l - v_10;
    1027              :                 {
    1028            0 :                     int ret = r_R1(z);
    1029            0 :                     if (ret <= 0) return ret;
    1030              :                 }
    1031              :                 {
    1032            0 :                     int ret = slice_from_s(z, 3, s_29);
    1033            0 :                     if (ret < 0) return ret;
    1034              :                 }
    1035              :             } while (0);
    1036            0 :             break;
    1037            0 :         case 13:
    1038              :             {
    1039            0 :                 int ret = r_R1(z);
    1040            0 :                 if (ret <= 0) return ret;
    1041              :             }
    1042            0 :             if (out_grouping_b(z, g_v, 97, 251, 0)) return 0;
    1043              :             {
    1044            0 :                 int ret = slice_del(z);
    1045            0 :                 if (ret < 0) return ret;
    1046              :             }
    1047            0 :             break;
    1048            0 :         case 14:
    1049              :             {
    1050            0 :                 int ret = r_RV(z);
    1051            0 :                 if (ret <= 0) return ret;
    1052              :             }
    1053              :             {
    1054            0 :                 int ret = slice_from_s(z, 3, s_30);
    1055            0 :                 if (ret < 0) return ret;
    1056              :             }
    1057            0 :             return 0;
    1058              :             break;
    1059            0 :         case 15:
    1060              :             {
    1061            0 :                 int ret = r_RV(z);
    1062            0 :                 if (ret <= 0) return ret;
    1063              :             }
    1064              :             {
    1065            0 :                 int ret = slice_from_s(z, 3, s_31);
    1066            0 :                 if (ret < 0) return ret;
    1067              :             }
    1068            0 :             return 0;
    1069              :             break;
    1070            0 :         case 16:
    1071              :             {
    1072            0 :                 int v_11 = z->l - z->c;
    1073            0 :                 if (in_grouping_b(z, g_v, 97, 251, 0)) return 0;
    1074              :                 {
    1075            0 :                     int ret = r_RV(z);
    1076            0 :                     if (ret <= 0) return ret;
    1077              :                 }
    1078            0 :                 z->c = z->l - v_11;
    1079              :             }
    1080              :             {
    1081            0 :                 int ret = slice_del(z);
    1082            0 :                 if (ret < 0) return ret;
    1083              :             }
    1084            0 :             return 0;
    1085              :             break;
    1086              :     }
    1087            0 :     return 1;
    1088              : }
    1089              : 
    1090            0 : static int r_i_verb_suffix(struct SN_env * z) {
    1091              :     {
    1092              :         int v_1;
    1093            0 :         if (z->c < ((SN_local *)z)->i_pV) return 0;
    1094            0 :         v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
    1095            0 :         z->ket = z->c;
    1096            0 :         if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68944418 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_1; return 0; }
    1097            0 :         if (!find_among_b(z, a_5, 35, 0)) { z->lb = v_1; return 0; }
    1098            0 :         z->bra = z->c;
    1099              :         {
    1100            0 :             int v_2 = z->l - z->c;
    1101            0 :             if (z->c <= z->lb || z->p[z->c - 1] != 'H') goto lab0;
    1102            0 :             z->c--;
    1103            0 :             { z->lb = v_1; return 0; }
    1104            0 :         lab0:
    1105            0 :             z->c = z->l - v_2;
    1106              :         }
    1107            0 :         if (out_grouping_b(z, g_v, 97, 251, 0)) { z->lb = v_1; return 0; }
    1108              :         {
    1109            0 :             int ret = slice_del(z);
    1110            0 :             if (ret < 0) return ret;
    1111              :         }
    1112            0 :         z->lb = v_1;
    1113              :     }
    1114            0 :     return 1;
    1115              : }
    1116              : 
    1117            0 : static int r_verb_suffix(struct SN_env * z) {
    1118              :     int among_var;
    1119              :     {
    1120              :         int v_1;
    1121            0 :         if (z->c < ((SN_local *)z)->i_pV) return 0;
    1122            0 :         v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
    1123            0 :         z->ket = z->c;
    1124            0 :         among_var = find_among_b(z, a_7, 41, 0);
    1125            0 :         if (!among_var) { z->lb = v_1; return 0; }
    1126            0 :         z->bra = z->c;
    1127            0 :         z->lb = v_1;
    1128              :     }
    1129            0 :     switch (among_var) {
    1130            0 :         case 1:
    1131              :             {
    1132            0 :                 int ret = r_R2(z);
    1133            0 :                 if (ret <= 0) return ret;
    1134              :             }
    1135              :             {
    1136            0 :                 int ret = slice_del(z);
    1137            0 :                 if (ret < 0) return ret;
    1138              :             }
    1139            0 :             break;
    1140            0 :         case 2:
    1141              :             {
    1142            0 :                 int ret = slice_del(z);
    1143            0 :                 if (ret < 0) return ret;
    1144              :             }
    1145            0 :             break;
    1146            0 :         case 3:
    1147              :             {
    1148            0 :                 int v_2 = z->l - z->c;
    1149            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 'e') { z->c = z->l - v_2; goto lab0; }
    1150            0 :                 z->c--;
    1151              :                 {
    1152            0 :                     int ret = r_RV(z);
    1153            0 :                     if (ret == 0) { z->c = z->l - v_2; goto lab0; }
    1154            0 :                     if (ret < 0) return ret;
    1155              :                 }
    1156            0 :                 z->bra = z->c;
    1157            0 :             lab0:
    1158              :                 ;
    1159              :             }
    1160              :             {
    1161            0 :                 int ret = slice_del(z);
    1162            0 :                 if (ret < 0) return ret;
    1163              :             }
    1164            0 :             break;
    1165            0 :         case 4:
    1166              :             {
    1167            0 :                 int v_3 = z->l - z->c;
    1168            0 :                 if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 108 && z->p[z->c - 1] != 118)) goto lab1;
    1169            0 :                 among_var = find_among_b(z, a_6, 3, 0);
    1170            0 :                 if (!among_var) goto lab1;
    1171            0 :                 switch (among_var) {
    1172            0 :                     case 1:
    1173            0 :                         if (z->c <= z->lb) goto lab1;
    1174            0 :                         z->c--;
    1175            0 :                         if (z->c > z->lb) goto lab1;
    1176            0 :                         break;
    1177              :                 }
    1178            0 :                 return 0;
    1179            0 :             lab1:
    1180            0 :                 z->c = z->l - v_3;
    1181              :             }
    1182              :             {
    1183            0 :                 int ret = slice_del(z);
    1184            0 :                 if (ret < 0) return ret;
    1185              :             }
    1186            0 :             break;
    1187              :     }
    1188            0 :     return 1;
    1189              : }
    1190              : 
    1191            0 : static int r_residual_suffix(struct SN_env * z) {
    1192              :     int among_var;
    1193              :     {
    1194            0 :         int v_1 = z->l - z->c;
    1195            0 :         z->ket = z->c;
    1196            0 :         if (z->c <= z->lb || z->p[z->c - 1] != 's') { z->c = z->l - v_1; goto lab0; }
    1197            0 :         z->c--;
    1198            0 :         z->bra = z->c;
    1199              :         {
    1200            0 :             int v_2 = z->l - z->c;
    1201              :             do {
    1202            0 :                 int v_3 = z->l - z->c;
    1203            0 :                 if (!(eq_s_b(z, 2, s_32))) goto lab1;
    1204            0 :                 break;
    1205            0 :             lab1:
    1206            0 :                 z->c = z->l - v_3;
    1207            0 :                 if (out_grouping_b(z, g_keep_with_s, 97, 232, 0)) { z->c = z->l - v_1; goto lab0; }
    1208              :             } while (0);
    1209            0 :             z->c = z->l - v_2;
    1210              :         }
    1211              :         {
    1212            0 :             int ret = slice_del(z);
    1213            0 :             if (ret < 0) return ret;
    1214              :         }
    1215            0 :     lab0:
    1216              :         ;
    1217              :     }
    1218              :     {
    1219              :         int v_4;
    1220            0 :         if (z->c < ((SN_local *)z)->i_pV) return 0;
    1221            0 :         v_4 = z->lb; z->lb = ((SN_local *)z)->i_pV;
    1222            0 :         z->ket = z->c;
    1223            0 :         if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((278560 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_4; return 0; }
    1224            0 :         among_var = find_among_b(z, a_8, 6, 0);
    1225            0 :         if (!among_var) { z->lb = v_4; return 0; }
    1226            0 :         z->bra = z->c;
    1227            0 :         switch (among_var) {
    1228            0 :             case 1:
    1229              :                 {
    1230            0 :                     int ret = r_R2(z);
    1231            0 :                     if (ret == 0) { z->lb = v_4; return 0; }
    1232            0 :                     if (ret < 0) return ret;
    1233              :                 }
    1234              :                 do {
    1235            0 :                     int v_5 = z->l - z->c;
    1236            0 :                     if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab2;
    1237            0 :                     z->c--;
    1238            0 :                     break;
    1239            0 :                 lab2:
    1240            0 :                     z->c = z->l - v_5;
    1241            0 :                     if (z->c <= z->lb || z->p[z->c - 1] != 't') { z->lb = v_4; return 0; }
    1242            0 :                     z->c--;
    1243              :                 } while (0);
    1244              :                 {
    1245            0 :                     int ret = slice_del(z);
    1246            0 :                     if (ret < 0) return ret;
    1247              :                 }
    1248            0 :                 break;
    1249            0 :             case 2:
    1250              :                 {
    1251            0 :                     int ret = slice_from_s(z, 1, s_33);
    1252            0 :                     if (ret < 0) return ret;
    1253              :                 }
    1254            0 :                 break;
    1255            0 :             case 3:
    1256              :                 {
    1257            0 :                     int ret = slice_del(z);
    1258            0 :                     if (ret < 0) return ret;
    1259              :                 }
    1260            0 :                 break;
    1261              :         }
    1262            0 :         z->lb = v_4;
    1263              :     }
    1264            0 :     return 1;
    1265              : }
    1266              : 
    1267            0 : static int r_un_double(struct SN_env * z) {
    1268              :     {
    1269            0 :         int v_1 = z->l - z->c;
    1270            0 :         if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1069056 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
    1271            0 :         if (!find_among_b(z, a_9, 5, 0)) return 0;
    1272            0 :         z->c = z->l - v_1;
    1273              :     }
    1274            0 :     z->ket = z->c;
    1275            0 :     if (z->c <= z->lb) return 0;
    1276            0 :     z->c--;
    1277            0 :     z->bra = z->c;
    1278              :     {
    1279            0 :         int ret = slice_del(z);
    1280            0 :         if (ret < 0) return ret;
    1281              :     }
    1282            0 :     return 1;
    1283              : }
    1284              : 
    1285            0 : static int r_un_accent(struct SN_env * z) {
    1286            0 :     {
    1287            0 :         int v_1 = 1;
    1288              :         while (1) {
    1289            0 :             if (out_grouping_b(z, g_v, 97, 251, 0)) goto lab0;
    1290            0 :             v_1--;
    1291            0 :             continue;
    1292            0 :         lab0:
    1293            0 :             break;
    1294              :         }
    1295            0 :         if (v_1 > 0) return 0;
    1296              :     }
    1297            0 :     z->ket = z->c;
    1298              :     do {
    1299            0 :         int v_2 = z->l - z->c;
    1300            0 :         if (z->c <= z->lb || z->p[z->c - 1] != 0xE9) goto lab1;
    1301            0 :         z->c--;
    1302            0 :         break;
    1303            0 :     lab1:
    1304            0 :         z->c = z->l - v_2;
    1305            0 :         if (z->c <= z->lb || z->p[z->c - 1] != 0xE8) return 0;
    1306            0 :         z->c--;
    1307              :     } while (0);
    1308            0 :     z->bra = z->c;
    1309              :     {
    1310            0 :         int ret = slice_from_s(z, 1, s_34);
    1311            0 :         if (ret < 0) return ret;
    1312              :     }
    1313            0 :     return 1;
    1314              : }
    1315              : 
    1316            0 : extern int french_ISO_8859_1_stem(struct SN_env * z) {
    1317              :     {
    1318            0 :         int v_1 = z->c;
    1319              :         {
    1320            0 :             int ret = r_elisions(z);
    1321            0 :             if (ret < 0) return ret;
    1322              :         }
    1323            0 :         z->c = v_1;
    1324              :     }
    1325              :     {
    1326            0 :         int v_2 = z->c;
    1327              :         {
    1328            0 :             int ret = r_prelude(z);
    1329            0 :             if (ret < 0) return ret;
    1330              :         }
    1331            0 :         z->c = v_2;
    1332              :     }
    1333              :     {
    1334            0 :         int ret = r_mark_regions(z);
    1335            0 :         if (ret < 0) return ret;
    1336              :     }
    1337            0 :     z->lb = z->c; z->c = z->l;
    1338              :     {
    1339            0 :         int v_3 = z->l - z->c;
    1340              :         do {
    1341            0 :             int v_4 = z->l - z->c;
    1342              :             {
    1343            0 :                 int v_5 = z->l - z->c;
    1344              :                 do {
    1345            0 :                     int v_6 = z->l - z->c;
    1346              :                     {
    1347            0 :                         int ret = r_standard_suffix(z);
    1348            0 :                         if (ret == 0) goto lab2;
    1349            0 :                         if (ret < 0) return ret;
    1350              :                     }
    1351            0 :                     break;
    1352            0 :                 lab2:
    1353            0 :                     z->c = z->l - v_6;
    1354              :                     {
    1355            0 :                         int ret = r_i_verb_suffix(z);
    1356            0 :                         if (ret == 0) goto lab3;
    1357            0 :                         if (ret < 0) return ret;
    1358              :                     }
    1359            0 :                     break;
    1360            0 :                 lab3:
    1361            0 :                     z->c = z->l - v_6;
    1362              :                     {
    1363            0 :                         int ret = r_verb_suffix(z);
    1364            0 :                         if (ret == 0) goto lab1;
    1365            0 :                         if (ret < 0) return ret;
    1366              :                     }
    1367              :                 } while (0);
    1368            0 :                 z->c = z->l - v_5;
    1369              :                 {
    1370            0 :                     int v_7 = z->l - z->c;
    1371            0 :                     z->ket = z->c;
    1372              :                     do {
    1373            0 :                         int v_8 = z->l - z->c;
    1374            0 :                         if (z->c <= z->lb || z->p[z->c - 1] != 'Y') goto lab5;
    1375            0 :                         z->c--;
    1376            0 :                         z->bra = z->c;
    1377              :                         {
    1378            0 :                             int ret = slice_from_s(z, 1, s_35);
    1379            0 :                             if (ret < 0) return ret;
    1380              :                         }
    1381            0 :                         break;
    1382            0 :                     lab5:
    1383            0 :                         z->c = z->l - v_8;
    1384            0 :                         if (z->c <= z->lb || z->p[z->c - 1] != 0xE7) { z->c = z->l - v_7; goto lab4; }
    1385            0 :                         z->c--;
    1386            0 :                         z->bra = z->c;
    1387              :                         {
    1388            0 :                             int ret = slice_from_s(z, 1, s_36);
    1389            0 :                             if (ret < 0) return ret;
    1390              :                         }
    1391              :                     } while (0);
    1392            0 :                 lab4:
    1393              :                     ;
    1394              :                 }
    1395              :             }
    1396            0 :             break;
    1397            0 :         lab1:
    1398            0 :             z->c = z->l - v_4;
    1399              :             {
    1400            0 :                 int ret = r_residual_suffix(z);
    1401            0 :                 if (ret == 0) goto lab0;
    1402            0 :                 if (ret < 0) return ret;
    1403              :             }
    1404              :         } while (0);
    1405            0 :     lab0:
    1406            0 :         z->c = z->l - v_3;
    1407              :     }
    1408              :     {
    1409            0 :         int v_9 = z->l - z->c;
    1410              :         {
    1411            0 :             int ret = r_un_double(z);
    1412            0 :             if (ret < 0) return ret;
    1413              :         }
    1414            0 :         z->c = z->l - v_9;
    1415              :     }
    1416              :     {
    1417            0 :         int v_10 = z->l - z->c;
    1418              :         {
    1419            0 :             int ret = r_un_accent(z);
    1420            0 :             if (ret < 0) return ret;
    1421              :         }
    1422            0 :         z->c = z->l - v_10;
    1423              :     }
    1424            0 :     z->c = z->lb;
    1425              :     {
    1426            0 :         int v_11 = z->c;
    1427              :         {
    1428            0 :             int ret = r_postlude(z);
    1429            0 :             if (ret < 0) return ret;
    1430              :         }
    1431            0 :         z->c = v_11;
    1432              :     }
    1433            0 :     return 1;
    1434              : }
    1435              : 
    1436            0 : extern struct SN_env * french_ISO_8859_1_create_env(void) {
    1437            0 :     struct SN_env * z = SN_new_env(sizeof(SN_local));
    1438            0 :     if (z) {
    1439            0 :         ((SN_local *)z)->i_p2 = 0;
    1440            0 :         ((SN_local *)z)->i_p1 = 0;
    1441            0 :         ((SN_local *)z)->i_pV = 0;
    1442              :     }
    1443            0 :     return z;
    1444              : }
    1445              : 
    1446            0 : extern void french_ISO_8859_1_close_env(struct SN_env * z) {
    1447            0 :     SN_delete_env(z);
    1448            0 : }
    1449              : 
        

Generated by: LCOV version 2.0-1