LCOV - code coverage report
Current view: top level - src/backend/snowball/libstemmer - stem_UTF_8_spanish.c (source / functions) Coverage Total Hit
Test: PostgreSQL 19devel Lines: 0.0 % 394 0
Test Date: 2026-03-02 18:15:05 Functions: 0.0 % 13 0
Legend: Lines:     hit not hit

            Line data    Source code
       1              : /* Generated from spanish.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
       2              : 
       3              : #include "stem_UTF_8_spanish.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 spanish_UTF_8_stem(struct SN_env * z);
      22              : #ifdef __cplusplus
      23              : }
      24              : #endif
      25              : 
      26              : static int r_residual_suffix(struct SN_env * z);
      27              : static int r_verb_suffix(struct SN_env * z);
      28              : static int r_y_verb_suffix(struct SN_env * z);
      29              : static int r_standard_suffix(struct SN_env * z);
      30              : static int r_attached_pronoun(struct SN_env * z);
      31              : static int r_R2(struct SN_env * z);
      32              : static int r_R1(struct SN_env * z);
      33              : static int r_RV(struct SN_env * z);
      34              : static int r_mark_regions(struct SN_env * z);
      35              : static int r_postlude(struct SN_env * z);
      36              : 
      37              : static const symbol s_0[] = { 'a' };
      38              : static const symbol s_1[] = { 'e' };
      39              : static const symbol s_2[] = { 'i' };
      40              : static const symbol s_3[] = { 'o' };
      41              : static const symbol s_4[] = { 'u' };
      42              : static const symbol s_5[] = { 'i', 'e', 'n', 'd', 'o' };
      43              : static const symbol s_6[] = { 'a', 'n', 'd', 'o' };
      44              : static const symbol s_7[] = { 'a', 'r' };
      45              : static const symbol s_8[] = { 'e', 'r' };
      46              : static const symbol s_9[] = { 'i', 'r' };
      47              : static const symbol s_10[] = { 'i', 'c' };
      48              : static const symbol s_11[] = { 'l', 'o', 'g' };
      49              : static const symbol s_12[] = { 'u' };
      50              : static const symbol s_13[] = { 'e', 'n', 't', 'e' };
      51              : static const symbol s_14[] = { 'a', 't' };
      52              : static const symbol s_15[] = { 'a', 't' };
      53              : 
      54              : static const symbol s_0_1[2] = { 0xC3, 0xA1 };
      55              : static const symbol s_0_2[2] = { 0xC3, 0xA9 };
      56              : static const symbol s_0_3[2] = { 0xC3, 0xAD };
      57              : static const symbol s_0_4[2] = { 0xC3, 0xB3 };
      58              : static const symbol s_0_5[2] = { 0xC3, 0xBA };
      59              : static const struct among a_0[6] = {
      60              : { 0, 0, 0, 6, 0},
      61              : { 2, s_0_1, -1, 1, 0},
      62              : { 2, s_0_2, -2, 2, 0},
      63              : { 2, s_0_3, -3, 3, 0},
      64              : { 2, s_0_4, -4, 4, 0},
      65              : { 2, s_0_5, -5, 5, 0}
      66              : };
      67              : 
      68              : static const symbol s_1_0[2] = { 'l', 'a' };
      69              : static const symbol s_1_1[4] = { 's', 'e', 'l', 'a' };
      70              : static const symbol s_1_2[2] = { 'l', 'e' };
      71              : static const symbol s_1_3[2] = { 'm', 'e' };
      72              : static const symbol s_1_4[2] = { 's', 'e' };
      73              : static const symbol s_1_5[2] = { 'l', 'o' };
      74              : static const symbol s_1_6[4] = { 's', 'e', 'l', 'o' };
      75              : static const symbol s_1_7[3] = { 'l', 'a', 's' };
      76              : static const symbol s_1_8[5] = { 's', 'e', 'l', 'a', 's' };
      77              : static const symbol s_1_9[3] = { 'l', 'e', 's' };
      78              : static const symbol s_1_10[3] = { 'l', 'o', 's' };
      79              : static const symbol s_1_11[5] = { 's', 'e', 'l', 'o', 's' };
      80              : static const symbol s_1_12[3] = { 'n', 'o', 's' };
      81              : static const struct among a_1[13] = {
      82              : { 2, s_1_0, 0, -1, 0},
      83              : { 4, s_1_1, -1, -1, 0},
      84              : { 2, s_1_2, 0, -1, 0},
      85              : { 2, s_1_3, 0, -1, 0},
      86              : { 2, s_1_4, 0, -1, 0},
      87              : { 2, s_1_5, 0, -1, 0},
      88              : { 4, s_1_6, -1, -1, 0},
      89              : { 3, s_1_7, 0, -1, 0},
      90              : { 5, s_1_8, -1, -1, 0},
      91              : { 3, s_1_9, 0, -1, 0},
      92              : { 3, s_1_10, 0, -1, 0},
      93              : { 5, s_1_11, -1, -1, 0},
      94              : { 3, s_1_12, 0, -1, 0}
      95              : };
      96              : 
      97              : static const symbol s_2_0[4] = { 'a', 'n', 'd', 'o' };
      98              : static const symbol s_2_1[5] = { 'i', 'e', 'n', 'd', 'o' };
      99              : static const symbol s_2_2[5] = { 'y', 'e', 'n', 'd', 'o' };
     100              : static const symbol s_2_3[5] = { 0xC3, 0xA1, 'n', 'd', 'o' };
     101              : static const symbol s_2_4[6] = { 'i', 0xC3, 0xA9, 'n', 'd', 'o' };
     102              : static const symbol s_2_5[2] = { 'a', 'r' };
     103              : static const symbol s_2_6[2] = { 'e', 'r' };
     104              : static const symbol s_2_7[2] = { 'i', 'r' };
     105              : static const symbol s_2_8[3] = { 0xC3, 0xA1, 'r' };
     106              : static const symbol s_2_9[3] = { 0xC3, 0xA9, 'r' };
     107              : static const symbol s_2_10[3] = { 0xC3, 0xAD, 'r' };
     108              : static const struct among a_2[11] = {
     109              : { 4, s_2_0, 0, 6, 0},
     110              : { 5, s_2_1, 0, 6, 0},
     111              : { 5, s_2_2, 0, 7, 0},
     112              : { 5, s_2_3, 0, 2, 0},
     113              : { 6, s_2_4, 0, 1, 0},
     114              : { 2, s_2_5, 0, 6, 0},
     115              : { 2, s_2_6, 0, 6, 0},
     116              : { 2, s_2_7, 0, 6, 0},
     117              : { 3, s_2_8, 0, 3, 0},
     118              : { 3, s_2_9, 0, 4, 0},
     119              : { 3, s_2_10, 0, 5, 0}
     120              : };
     121              : 
     122              : static const symbol s_3_0[2] = { 'i', 'c' };
     123              : static const symbol s_3_1[2] = { 'a', 'd' };
     124              : static const symbol s_3_2[2] = { 'o', 's' };
     125              : static const symbol s_3_3[2] = { 'i', 'v' };
     126              : static const struct among a_3[4] = {
     127              : { 2, s_3_0, 0, -1, 0},
     128              : { 2, s_3_1, 0, -1, 0},
     129              : { 2, s_3_2, 0, -1, 0},
     130              : { 2, s_3_3, 0, 1, 0}
     131              : };
     132              : 
     133              : static const symbol s_4_0[4] = { 'a', 'b', 'l', 'e' };
     134              : static const symbol s_4_1[4] = { 'i', 'b', 'l', 'e' };
     135              : static const symbol s_4_2[4] = { 'a', 'n', 't', 'e' };
     136              : static const struct among a_4[3] = {
     137              : { 4, s_4_0, 0, 1, 0},
     138              : { 4, s_4_1, 0, 1, 0},
     139              : { 4, s_4_2, 0, 1, 0}
     140              : };
     141              : 
     142              : static const symbol s_5_0[2] = { 'i', 'c' };
     143              : static const symbol s_5_1[4] = { 'a', 'b', 'i', 'l' };
     144              : static const symbol s_5_2[2] = { 'i', 'v' };
     145              : static const struct among a_5[3] = {
     146              : { 2, s_5_0, 0, 1, 0},
     147              : { 4, s_5_1, 0, 1, 0},
     148              : { 2, s_5_2, 0, 1, 0}
     149              : };
     150              : 
     151              : static const symbol s_6_0[3] = { 'i', 'c', 'a' };
     152              : static const symbol s_6_1[5] = { 'a', 'n', 'c', 'i', 'a' };
     153              : static const symbol s_6_2[5] = { 'e', 'n', 'c', 'i', 'a' };
     154              : static const symbol s_6_3[5] = { 'a', 'd', 'o', 'r', 'a' };
     155              : static const symbol s_6_4[3] = { 'o', 's', 'a' };
     156              : static const symbol s_6_5[4] = { 'i', 's', 't', 'a' };
     157              : static const symbol s_6_6[3] = { 'i', 'v', 'a' };
     158              : static const symbol s_6_7[4] = { 'a', 'n', 'z', 'a' };
     159              : static const symbol s_6_8[6] = { 'l', 'o', 'g', 0xC3, 0xAD, 'a' };
     160              : static const symbol s_6_9[4] = { 'i', 'd', 'a', 'd' };
     161              : static const symbol s_6_10[4] = { 'a', 'b', 'l', 'e' };
     162              : static const symbol s_6_11[4] = { 'i', 'b', 'l', 'e' };
     163              : static const symbol s_6_12[4] = { 'a', 'n', 't', 'e' };
     164              : static const symbol s_6_13[5] = { 'm', 'e', 'n', 't', 'e' };
     165              : static const symbol s_6_14[6] = { 'a', 'm', 'e', 'n', 't', 'e' };
     166              : static const symbol s_6_15[5] = { 'a', 'c', 'i', 'o', 'n' };
     167              : static const symbol s_6_16[5] = { 'u', 'c', 'i', 'o', 'n' };
     168              : static const symbol s_6_17[6] = { 'a', 'c', 'i', 0xC3, 0xB3, 'n' };
     169              : static const symbol s_6_18[6] = { 'u', 'c', 'i', 0xC3, 0xB3, 'n' };
     170              : static const symbol s_6_19[3] = { 'i', 'c', 'o' };
     171              : static const symbol s_6_20[4] = { 'i', 's', 'm', 'o' };
     172              : static const symbol s_6_21[3] = { 'o', 's', 'o' };
     173              : static const symbol s_6_22[7] = { 'a', 'm', 'i', 'e', 'n', 't', 'o' };
     174              : static const symbol s_6_23[7] = { 'i', 'm', 'i', 'e', 'n', 't', 'o' };
     175              : static const symbol s_6_24[3] = { 'i', 'v', 'o' };
     176              : static const symbol s_6_25[4] = { 'a', 'd', 'o', 'r' };
     177              : static const symbol s_6_26[4] = { 'i', 'c', 'a', 's' };
     178              : static const symbol s_6_27[6] = { 'a', 'n', 'c', 'i', 'a', 's' };
     179              : static const symbol s_6_28[6] = { 'e', 'n', 'c', 'i', 'a', 's' };
     180              : static const symbol s_6_29[6] = { 'a', 'd', 'o', 'r', 'a', 's' };
     181              : static const symbol s_6_30[4] = { 'o', 's', 'a', 's' };
     182              : static const symbol s_6_31[5] = { 'i', 's', 't', 'a', 's' };
     183              : static const symbol s_6_32[4] = { 'i', 'v', 'a', 's' };
     184              : static const symbol s_6_33[5] = { 'a', 'n', 'z', 'a', 's' };
     185              : static const symbol s_6_34[7] = { 'l', 'o', 'g', 0xC3, 0xAD, 'a', 's' };
     186              : static const symbol s_6_35[6] = { 'i', 'd', 'a', 'd', 'e', 's' };
     187              : static const symbol s_6_36[5] = { 'a', 'b', 'l', 'e', 's' };
     188              : static const symbol s_6_37[5] = { 'i', 'b', 'l', 'e', 's' };
     189              : static const symbol s_6_38[7] = { 'a', 'c', 'i', 'o', 'n', 'e', 's' };
     190              : static const symbol s_6_39[7] = { 'u', 'c', 'i', 'o', 'n', 'e', 's' };
     191              : static const symbol s_6_40[6] = { 'a', 'd', 'o', 'r', 'e', 's' };
     192              : static const symbol s_6_41[5] = { 'a', 'n', 't', 'e', 's' };
     193              : static const symbol s_6_42[4] = { 'i', 'c', 'o', 's' };
     194              : static const symbol s_6_43[5] = { 'i', 's', 'm', 'o', 's' };
     195              : static const symbol s_6_44[4] = { 'o', 's', 'o', 's' };
     196              : static const symbol s_6_45[8] = { 'a', 'm', 'i', 'e', 'n', 't', 'o', 's' };
     197              : static const symbol s_6_46[8] = { 'i', 'm', 'i', 'e', 'n', 't', 'o', 's' };
     198              : static const symbol s_6_47[4] = { 'i', 'v', 'o', 's' };
     199              : static const struct among a_6[48] = {
     200              : { 3, s_6_0, 0, 1, 0},
     201              : { 5, s_6_1, 0, 2, 0},
     202              : { 5, s_6_2, 0, 5, 0},
     203              : { 5, s_6_3, 0, 2, 0},
     204              : { 3, s_6_4, 0, 1, 0},
     205              : { 4, s_6_5, 0, 1, 0},
     206              : { 3, s_6_6, 0, 9, 0},
     207              : { 4, s_6_7, 0, 1, 0},
     208              : { 6, s_6_8, 0, 3, 0},
     209              : { 4, s_6_9, 0, 8, 0},
     210              : { 4, s_6_10, 0, 1, 0},
     211              : { 4, s_6_11, 0, 1, 0},
     212              : { 4, s_6_12, 0, 2, 0},
     213              : { 5, s_6_13, 0, 7, 0},
     214              : { 6, s_6_14, -1, 6, 0},
     215              : { 5, s_6_15, 0, 2, 0},
     216              : { 5, s_6_16, 0, 4, 0},
     217              : { 6, s_6_17, 0, 2, 0},
     218              : { 6, s_6_18, 0, 4, 0},
     219              : { 3, s_6_19, 0, 1, 0},
     220              : { 4, s_6_20, 0, 1, 0},
     221              : { 3, s_6_21, 0, 1, 0},
     222              : { 7, s_6_22, 0, 1, 0},
     223              : { 7, s_6_23, 0, 1, 0},
     224              : { 3, s_6_24, 0, 9, 0},
     225              : { 4, s_6_25, 0, 2, 0},
     226              : { 4, s_6_26, 0, 1, 0},
     227              : { 6, s_6_27, 0, 2, 0},
     228              : { 6, s_6_28, 0, 5, 0},
     229              : { 6, s_6_29, 0, 2, 0},
     230              : { 4, s_6_30, 0, 1, 0},
     231              : { 5, s_6_31, 0, 1, 0},
     232              : { 4, s_6_32, 0, 9, 0},
     233              : { 5, s_6_33, 0, 1, 0},
     234              : { 7, s_6_34, 0, 3, 0},
     235              : { 6, s_6_35, 0, 8, 0},
     236              : { 5, s_6_36, 0, 1, 0},
     237              : { 5, s_6_37, 0, 1, 0},
     238              : { 7, s_6_38, 0, 2, 0},
     239              : { 7, s_6_39, 0, 4, 0},
     240              : { 6, s_6_40, 0, 2, 0},
     241              : { 5, s_6_41, 0, 2, 0},
     242              : { 4, s_6_42, 0, 1, 0},
     243              : { 5, s_6_43, 0, 1, 0},
     244              : { 4, s_6_44, 0, 1, 0},
     245              : { 8, s_6_45, 0, 1, 0},
     246              : { 8, s_6_46, 0, 1, 0},
     247              : { 4, s_6_47, 0, 9, 0}
     248              : };
     249              : 
     250              : static const symbol s_7_0[2] = { 'y', 'a' };
     251              : static const symbol s_7_1[2] = { 'y', 'e' };
     252              : static const symbol s_7_2[3] = { 'y', 'a', 'n' };
     253              : static const symbol s_7_3[3] = { 'y', 'e', 'n' };
     254              : static const symbol s_7_4[5] = { 'y', 'e', 'r', 'o', 'n' };
     255              : static const symbol s_7_5[5] = { 'y', 'e', 'n', 'd', 'o' };
     256              : static const symbol s_7_6[2] = { 'y', 'o' };
     257              : static const symbol s_7_7[3] = { 'y', 'a', 's' };
     258              : static const symbol s_7_8[3] = { 'y', 'e', 's' };
     259              : static const symbol s_7_9[4] = { 'y', 'a', 'i', 's' };
     260              : static const symbol s_7_10[5] = { 'y', 'a', 'm', 'o', 's' };
     261              : static const symbol s_7_11[3] = { 'y', 0xC3, 0xB3 };
     262              : static const struct among a_7[12] = {
     263              : { 2, s_7_0, 0, 1, 0},
     264              : { 2, s_7_1, 0, 1, 0},
     265              : { 3, s_7_2, 0, 1, 0},
     266              : { 3, s_7_3, 0, 1, 0},
     267              : { 5, s_7_4, 0, 1, 0},
     268              : { 5, s_7_5, 0, 1, 0},
     269              : { 2, s_7_6, 0, 1, 0},
     270              : { 3, s_7_7, 0, 1, 0},
     271              : { 3, s_7_8, 0, 1, 0},
     272              : { 4, s_7_9, 0, 1, 0},
     273              : { 5, s_7_10, 0, 1, 0},
     274              : { 3, s_7_11, 0, 1, 0}
     275              : };
     276              : 
     277              : static const symbol s_8_0[3] = { 'a', 'b', 'a' };
     278              : static const symbol s_8_1[3] = { 'a', 'd', 'a' };
     279              : static const symbol s_8_2[3] = { 'i', 'd', 'a' };
     280              : static const symbol s_8_3[3] = { 'a', 'r', 'a' };
     281              : static const symbol s_8_4[4] = { 'i', 'e', 'r', 'a' };
     282              : static const symbol s_8_5[3] = { 0xC3, 0xAD, 'a' };
     283              : static const symbol s_8_6[5] = { 'a', 'r', 0xC3, 0xAD, 'a' };
     284              : static const symbol s_8_7[5] = { 'e', 'r', 0xC3, 0xAD, 'a' };
     285              : static const symbol s_8_8[5] = { 'i', 'r', 0xC3, 0xAD, 'a' };
     286              : static const symbol s_8_9[2] = { 'a', 'd' };
     287              : static const symbol s_8_10[2] = { 'e', 'd' };
     288              : static const symbol s_8_11[2] = { 'i', 'd' };
     289              : static const symbol s_8_12[3] = { 'a', 's', 'e' };
     290              : static const symbol s_8_13[4] = { 'i', 'e', 's', 'e' };
     291              : static const symbol s_8_14[4] = { 'a', 's', 't', 'e' };
     292              : static const symbol s_8_15[4] = { 'i', 's', 't', 'e' };
     293              : static const symbol s_8_16[2] = { 'a', 'n' };
     294              : static const symbol s_8_17[4] = { 'a', 'b', 'a', 'n' };
     295              : static const symbol s_8_18[4] = { 'a', 'r', 'a', 'n' };
     296              : static const symbol s_8_19[5] = { 'i', 'e', 'r', 'a', 'n' };
     297              : static const symbol s_8_20[4] = { 0xC3, 0xAD, 'a', 'n' };
     298              : static const symbol s_8_21[6] = { 'a', 'r', 0xC3, 0xAD, 'a', 'n' };
     299              : static const symbol s_8_22[6] = { 'e', 'r', 0xC3, 0xAD, 'a', 'n' };
     300              : static const symbol s_8_23[6] = { 'i', 'r', 0xC3, 0xAD, 'a', 'n' };
     301              : static const symbol s_8_24[2] = { 'e', 'n' };
     302              : static const symbol s_8_25[4] = { 'a', 's', 'e', 'n' };
     303              : static const symbol s_8_26[5] = { 'i', 'e', 's', 'e', 'n' };
     304              : static const symbol s_8_27[4] = { 'a', 'r', 'o', 'n' };
     305              : static const symbol s_8_28[5] = { 'i', 'e', 'r', 'o', 'n' };
     306              : static const symbol s_8_29[5] = { 'a', 'r', 0xC3, 0xA1, 'n' };
     307              : static const symbol s_8_30[5] = { 'e', 'r', 0xC3, 0xA1, 'n' };
     308              : static const symbol s_8_31[5] = { 'i', 'r', 0xC3, 0xA1, 'n' };
     309              : static const symbol s_8_32[3] = { 'a', 'd', 'o' };
     310              : static const symbol s_8_33[3] = { 'i', 'd', 'o' };
     311              : static const symbol s_8_34[4] = { 'a', 'n', 'd', 'o' };
     312              : static const symbol s_8_35[5] = { 'i', 'e', 'n', 'd', 'o' };
     313              : static const symbol s_8_36[2] = { 'a', 'r' };
     314              : static const symbol s_8_37[2] = { 'e', 'r' };
     315              : static const symbol s_8_38[2] = { 'i', 'r' };
     316              : static const symbol s_8_39[2] = { 'a', 's' };
     317              : static const symbol s_8_40[4] = { 'a', 'b', 'a', 's' };
     318              : static const symbol s_8_41[4] = { 'a', 'd', 'a', 's' };
     319              : static const symbol s_8_42[4] = { 'i', 'd', 'a', 's' };
     320              : static const symbol s_8_43[4] = { 'a', 'r', 'a', 's' };
     321              : static const symbol s_8_44[5] = { 'i', 'e', 'r', 'a', 's' };
     322              : static const symbol s_8_45[4] = { 0xC3, 0xAD, 'a', 's' };
     323              : static const symbol s_8_46[6] = { 'a', 'r', 0xC3, 0xAD, 'a', 's' };
     324              : static const symbol s_8_47[6] = { 'e', 'r', 0xC3, 0xAD, 'a', 's' };
     325              : static const symbol s_8_48[6] = { 'i', 'r', 0xC3, 0xAD, 'a', 's' };
     326              : static const symbol s_8_49[2] = { 'e', 's' };
     327              : static const symbol s_8_50[4] = { 'a', 's', 'e', 's' };
     328              : static const symbol s_8_51[5] = { 'i', 'e', 's', 'e', 's' };
     329              : static const symbol s_8_52[5] = { 'a', 'b', 'a', 'i', 's' };
     330              : static const symbol s_8_53[5] = { 'a', 'r', 'a', 'i', 's' };
     331              : static const symbol s_8_54[6] = { 'i', 'e', 'r', 'a', 'i', 's' };
     332              : static const symbol s_8_55[5] = { 0xC3, 0xAD, 'a', 'i', 's' };
     333              : static const symbol s_8_56[7] = { 'a', 'r', 0xC3, 0xAD, 'a', 'i', 's' };
     334              : static const symbol s_8_57[7] = { 'e', 'r', 0xC3, 0xAD, 'a', 'i', 's' };
     335              : static const symbol s_8_58[7] = { 'i', 'r', 0xC3, 0xAD, 'a', 'i', 's' };
     336              : static const symbol s_8_59[5] = { 'a', 's', 'e', 'i', 's' };
     337              : static const symbol s_8_60[6] = { 'i', 'e', 's', 'e', 'i', 's' };
     338              : static const symbol s_8_61[6] = { 'a', 's', 't', 'e', 'i', 's' };
     339              : static const symbol s_8_62[6] = { 'i', 's', 't', 'e', 'i', 's' };
     340              : static const symbol s_8_63[4] = { 0xC3, 0xA1, 'i', 's' };
     341              : static const symbol s_8_64[4] = { 0xC3, 0xA9, 'i', 's' };
     342              : static const symbol s_8_65[6] = { 'a', 'r', 0xC3, 0xA9, 'i', 's' };
     343              : static const symbol s_8_66[6] = { 'e', 'r', 0xC3, 0xA9, 'i', 's' };
     344              : static const symbol s_8_67[6] = { 'i', 'r', 0xC3, 0xA9, 'i', 's' };
     345              : static const symbol s_8_68[4] = { 'a', 'd', 'o', 's' };
     346              : static const symbol s_8_69[4] = { 'i', 'd', 'o', 's' };
     347              : static const symbol s_8_70[4] = { 'a', 'm', 'o', 's' };
     348              : static const symbol s_8_71[7] = { 0xC3, 0xA1, 'b', 'a', 'm', 'o', 's' };
     349              : static const symbol s_8_72[7] = { 0xC3, 0xA1, 'r', 'a', 'm', 'o', 's' };
     350              : static const symbol s_8_73[8] = { 'i', 0xC3, 0xA9, 'r', 'a', 'm', 'o', 's' };
     351              : static const symbol s_8_74[6] = { 0xC3, 0xAD, 'a', 'm', 'o', 's' };
     352              : static const symbol s_8_75[8] = { 'a', 'r', 0xC3, 0xAD, 'a', 'm', 'o', 's' };
     353              : static const symbol s_8_76[8] = { 'e', 'r', 0xC3, 0xAD, 'a', 'm', 'o', 's' };
     354              : static const symbol s_8_77[8] = { 'i', 'r', 0xC3, 0xAD, 'a', 'm', 'o', 's' };
     355              : static const symbol s_8_78[4] = { 'e', 'm', 'o', 's' };
     356              : static const symbol s_8_79[6] = { 'a', 'r', 'e', 'm', 'o', 's' };
     357              : static const symbol s_8_80[6] = { 'e', 'r', 'e', 'm', 'o', 's' };
     358              : static const symbol s_8_81[6] = { 'i', 'r', 'e', 'm', 'o', 's' };
     359              : static const symbol s_8_82[7] = { 0xC3, 0xA1, 's', 'e', 'm', 'o', 's' };
     360              : static const symbol s_8_83[8] = { 'i', 0xC3, 0xA9, 's', 'e', 'm', 'o', 's' };
     361              : static const symbol s_8_84[4] = { 'i', 'm', 'o', 's' };
     362              : static const symbol s_8_85[5] = { 'a', 'r', 0xC3, 0xA1, 's' };
     363              : static const symbol s_8_86[5] = { 'e', 'r', 0xC3, 0xA1, 's' };
     364              : static const symbol s_8_87[5] = { 'i', 'r', 0xC3, 0xA1, 's' };
     365              : static const symbol s_8_88[3] = { 0xC3, 0xAD, 's' };
     366              : static const symbol s_8_89[4] = { 'a', 'r', 0xC3, 0xA1 };
     367              : static const symbol s_8_90[4] = { 'e', 'r', 0xC3, 0xA1 };
     368              : static const symbol s_8_91[4] = { 'i', 'r', 0xC3, 0xA1 };
     369              : static const symbol s_8_92[4] = { 'a', 'r', 0xC3, 0xA9 };
     370              : static const symbol s_8_93[4] = { 'e', 'r', 0xC3, 0xA9 };
     371              : static const symbol s_8_94[4] = { 'i', 'r', 0xC3, 0xA9 };
     372              : static const symbol s_8_95[3] = { 'i', 0xC3, 0xB3 };
     373              : static const struct among a_8[96] = {
     374              : { 3, s_8_0, 0, 2, 0},
     375              : { 3, s_8_1, 0, 2, 0},
     376              : { 3, s_8_2, 0, 2, 0},
     377              : { 3, s_8_3, 0, 2, 0},
     378              : { 4, s_8_4, 0, 2, 0},
     379              : { 3, s_8_5, 0, 2, 0},
     380              : { 5, s_8_6, -1, 2, 0},
     381              : { 5, s_8_7, -2, 2, 0},
     382              : { 5, s_8_8, -3, 2, 0},
     383              : { 2, s_8_9, 0, 2, 0},
     384              : { 2, s_8_10, 0, 2, 0},
     385              : { 2, s_8_11, 0, 2, 0},
     386              : { 3, s_8_12, 0, 2, 0},
     387              : { 4, s_8_13, 0, 2, 0},
     388              : { 4, s_8_14, 0, 2, 0},
     389              : { 4, s_8_15, 0, 2, 0},
     390              : { 2, s_8_16, 0, 2, 0},
     391              : { 4, s_8_17, -1, 2, 0},
     392              : { 4, s_8_18, -2, 2, 0},
     393              : { 5, s_8_19, -3, 2, 0},
     394              : { 4, s_8_20, -4, 2, 0},
     395              : { 6, s_8_21, -1, 2, 0},
     396              : { 6, s_8_22, -2, 2, 0},
     397              : { 6, s_8_23, -3, 2, 0},
     398              : { 2, s_8_24, 0, 1, 0},
     399              : { 4, s_8_25, -1, 2, 0},
     400              : { 5, s_8_26, -2, 2, 0},
     401              : { 4, s_8_27, 0, 2, 0},
     402              : { 5, s_8_28, 0, 2, 0},
     403              : { 5, s_8_29, 0, 2, 0},
     404              : { 5, s_8_30, 0, 2, 0},
     405              : { 5, s_8_31, 0, 2, 0},
     406              : { 3, s_8_32, 0, 2, 0},
     407              : { 3, s_8_33, 0, 2, 0},
     408              : { 4, s_8_34, 0, 2, 0},
     409              : { 5, s_8_35, 0, 2, 0},
     410              : { 2, s_8_36, 0, 2, 0},
     411              : { 2, s_8_37, 0, 2, 0},
     412              : { 2, s_8_38, 0, 2, 0},
     413              : { 2, s_8_39, 0, 2, 0},
     414              : { 4, s_8_40, -1, 2, 0},
     415              : { 4, s_8_41, -2, 2, 0},
     416              : { 4, s_8_42, -3, 2, 0},
     417              : { 4, s_8_43, -4, 2, 0},
     418              : { 5, s_8_44, -5, 2, 0},
     419              : { 4, s_8_45, -6, 2, 0},
     420              : { 6, s_8_46, -1, 2, 0},
     421              : { 6, s_8_47, -2, 2, 0},
     422              : { 6, s_8_48, -3, 2, 0},
     423              : { 2, s_8_49, 0, 1, 0},
     424              : { 4, s_8_50, -1, 2, 0},
     425              : { 5, s_8_51, -2, 2, 0},
     426              : { 5, s_8_52, 0, 2, 0},
     427              : { 5, s_8_53, 0, 2, 0},
     428              : { 6, s_8_54, 0, 2, 0},
     429              : { 5, s_8_55, 0, 2, 0},
     430              : { 7, s_8_56, -1, 2, 0},
     431              : { 7, s_8_57, -2, 2, 0},
     432              : { 7, s_8_58, -3, 2, 0},
     433              : { 5, s_8_59, 0, 2, 0},
     434              : { 6, s_8_60, 0, 2, 0},
     435              : { 6, s_8_61, 0, 2, 0},
     436              : { 6, s_8_62, 0, 2, 0},
     437              : { 4, s_8_63, 0, 2, 0},
     438              : { 4, s_8_64, 0, 1, 0},
     439              : { 6, s_8_65, -1, 2, 0},
     440              : { 6, s_8_66, -2, 2, 0},
     441              : { 6, s_8_67, -3, 2, 0},
     442              : { 4, s_8_68, 0, 2, 0},
     443              : { 4, s_8_69, 0, 2, 0},
     444              : { 4, s_8_70, 0, 2, 0},
     445              : { 7, s_8_71, -1, 2, 0},
     446              : { 7, s_8_72, -2, 2, 0},
     447              : { 8, s_8_73, -3, 2, 0},
     448              : { 6, s_8_74, -4, 2, 0},
     449              : { 8, s_8_75, -1, 2, 0},
     450              : { 8, s_8_76, -2, 2, 0},
     451              : { 8, s_8_77, -3, 2, 0},
     452              : { 4, s_8_78, 0, 1, 0},
     453              : { 6, s_8_79, -1, 2, 0},
     454              : { 6, s_8_80, -2, 2, 0},
     455              : { 6, s_8_81, -3, 2, 0},
     456              : { 7, s_8_82, -4, 2, 0},
     457              : { 8, s_8_83, -5, 2, 0},
     458              : { 4, s_8_84, 0, 2, 0},
     459              : { 5, s_8_85, 0, 2, 0},
     460              : { 5, s_8_86, 0, 2, 0},
     461              : { 5, s_8_87, 0, 2, 0},
     462              : { 3, s_8_88, 0, 2, 0},
     463              : { 4, s_8_89, 0, 2, 0},
     464              : { 4, s_8_90, 0, 2, 0},
     465              : { 4, s_8_91, 0, 2, 0},
     466              : { 4, s_8_92, 0, 2, 0},
     467              : { 4, s_8_93, 0, 2, 0},
     468              : { 4, s_8_94, 0, 2, 0},
     469              : { 3, s_8_95, 0, 2, 0}
     470              : };
     471              : 
     472              : static const symbol s_9_0[1] = { 'a' };
     473              : static const symbol s_9_1[1] = { 'e' };
     474              : static const symbol s_9_2[1] = { 'o' };
     475              : static const symbol s_9_3[2] = { 'o', 's' };
     476              : static const symbol s_9_4[2] = { 0xC3, 0xA1 };
     477              : static const symbol s_9_5[2] = { 0xC3, 0xA9 };
     478              : static const symbol s_9_6[2] = { 0xC3, 0xAD };
     479              : static const symbol s_9_7[2] = { 0xC3, 0xB3 };
     480              : static const struct among a_9[8] = {
     481              : { 1, s_9_0, 0, 1, 0},
     482              : { 1, s_9_1, 0, 2, 0},
     483              : { 1, s_9_2, 0, 1, 0},
     484              : { 2, s_9_3, 0, 1, 0},
     485              : { 2, s_9_4, 0, 1, 0},
     486              : { 2, s_9_5, 0, 2, 0},
     487              : { 2, s_9_6, 0, 1, 0},
     488              : { 2, s_9_7, 0, 1, 0}
     489              : };
     490              : 
     491              : static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 10 };
     492              : 
     493            0 : static int r_mark_regions(struct SN_env * z) {
     494            0 :     ((SN_local *)z)->i_pV = z->l;
     495            0 :     ((SN_local *)z)->i_p1 = z->l;
     496            0 :     ((SN_local *)z)->i_p2 = z->l;
     497              :     {
     498            0 :         int v_1 = z->c;
     499              :         do {
     500            0 :             int v_2 = z->c;
     501            0 :             if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab1;
     502              :             do {
     503            0 :                 int v_3 = z->c;
     504            0 :                 if (out_grouping_U(z, g_v, 97, 252, 0)) goto lab2;
     505              :                 {
     506            0 :                     int ret = out_grouping_U(z, g_v, 97, 252, 1);
     507            0 :                     if (ret < 0) goto lab2;
     508            0 :                     z->c += ret;
     509              :                 }
     510            0 :                 break;
     511            0 :             lab2:
     512            0 :                 z->c = v_3;
     513            0 :                 if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab1;
     514              :                 {
     515            0 :                     int ret = in_grouping_U(z, g_v, 97, 252, 1);
     516            0 :                     if (ret < 0) goto lab1;
     517            0 :                     z->c += ret;
     518              :                 }
     519              :             } while (0);
     520            0 :             break;
     521            0 :         lab1:
     522            0 :             z->c = v_2;
     523            0 :             if (out_grouping_U(z, g_v, 97, 252, 0)) goto lab0;
     524              :             do {
     525            0 :                 int v_4 = z->c;
     526            0 :                 if (out_grouping_U(z, g_v, 97, 252, 0)) goto lab3;
     527              :                 {
     528            0 :                     int ret = out_grouping_U(z, g_v, 97, 252, 1);
     529            0 :                     if (ret < 0) goto lab3;
     530            0 :                     z->c += ret;
     531              :                 }
     532            0 :                 break;
     533            0 :             lab3:
     534            0 :                 z->c = v_4;
     535            0 :                 if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab0;
     536              :                 {
     537            0 :                     int ret = skip_utf8(z->p, z->c, z->l, 1);
     538            0 :                     if (ret < 0) goto lab0;
     539            0 :                     z->c = ret;
     540              :                 }
     541              :             } while (0);
     542              :         } while (0);
     543            0 :         ((SN_local *)z)->i_pV = z->c;
     544            0 :     lab0:
     545            0 :         z->c = v_1;
     546              :     }
     547              :     {
     548            0 :         int v_5 = z->c;
     549              :         {
     550            0 :             int ret = out_grouping_U(z, g_v, 97, 252, 1);
     551            0 :             if (ret < 0) goto lab4;
     552            0 :             z->c += ret;
     553              :         }
     554              :         {
     555            0 :             int ret = in_grouping_U(z, g_v, 97, 252, 1);
     556            0 :             if (ret < 0) goto lab4;
     557            0 :             z->c += ret;
     558              :         }
     559            0 :         ((SN_local *)z)->i_p1 = z->c;
     560              :         {
     561            0 :             int ret = out_grouping_U(z, g_v, 97, 252, 1);
     562            0 :             if (ret < 0) goto lab4;
     563            0 :             z->c += ret;
     564              :         }
     565              :         {
     566            0 :             int ret = in_grouping_U(z, g_v, 97, 252, 1);
     567            0 :             if (ret < 0) goto lab4;
     568            0 :             z->c += ret;
     569              :         }
     570            0 :         ((SN_local *)z)->i_p2 = z->c;
     571            0 :     lab4:
     572            0 :         z->c = v_5;
     573              :     }
     574            0 :     return 1;
     575              : }
     576              : 
     577            0 : static int r_postlude(struct SN_env * z) {
     578              :     int among_var;
     579            0 :     while (1) {
     580            0 :         int v_1 = z->c;
     581            0 :         z->bra = z->c;
     582            0 :         if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 5 || !((67641858 >> (z->p[z->c + 1] & 0x1f)) & 1)) among_var = 6; else
     583            0 :         among_var = find_among(z, a_0, 6, 0);
     584            0 :         z->ket = z->c;
     585            0 :         switch (among_var) {
     586            0 :             case 1:
     587              :                 {
     588            0 :                     int ret = slice_from_s(z, 1, s_0);
     589            0 :                     if (ret < 0) return ret;
     590              :                 }
     591            0 :                 break;
     592            0 :             case 2:
     593              :                 {
     594            0 :                     int ret = slice_from_s(z, 1, s_1);
     595            0 :                     if (ret < 0) return ret;
     596              :                 }
     597            0 :                 break;
     598            0 :             case 3:
     599              :                 {
     600            0 :                     int ret = slice_from_s(z, 1, s_2);
     601            0 :                     if (ret < 0) return ret;
     602              :                 }
     603            0 :                 break;
     604            0 :             case 4:
     605              :                 {
     606            0 :                     int ret = slice_from_s(z, 1, s_3);
     607            0 :                     if (ret < 0) return ret;
     608              :                 }
     609            0 :                 break;
     610            0 :             case 5:
     611              :                 {
     612            0 :                     int ret = slice_from_s(z, 1, s_4);
     613            0 :                     if (ret < 0) return ret;
     614              :                 }
     615            0 :                 break;
     616            0 :             case 6:
     617              :                 {
     618            0 :                     int ret = skip_utf8(z->p, z->c, z->l, 1);
     619            0 :                     if (ret < 0) goto lab0;
     620            0 :                     z->c = ret;
     621              :                 }
     622            0 :                 break;
     623              :         }
     624            0 :         continue;
     625            0 :     lab0:
     626            0 :         z->c = v_1;
     627            0 :         break;
     628              :     }
     629            0 :     return 1;
     630              : }
     631              : 
     632            0 : static int r_RV(struct SN_env * z) {
     633            0 :     return ((SN_local *)z)->i_pV <= z->c;
     634              : }
     635              : 
     636            0 : static int r_R1(struct SN_env * z) {
     637            0 :     return ((SN_local *)z)->i_p1 <= z->c;
     638              : }
     639              : 
     640            0 : static int r_R2(struct SN_env * z) {
     641            0 :     return ((SN_local *)z)->i_p2 <= z->c;
     642              : }
     643              : 
     644            0 : static int r_attached_pronoun(struct SN_env * z) {
     645              :     int among_var;
     646            0 :     z->ket = z->c;
     647            0 :     if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((557090 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     648            0 :     if (!find_among_b(z, a_1, 13, 0)) return 0;
     649            0 :     z->bra = z->c;
     650            0 :     if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 111 && z->p[z->c - 1] != 114)) return 0;
     651            0 :     among_var = find_among_b(z, a_2, 11, 0);
     652            0 :     if (!among_var) return 0;
     653              :     {
     654            0 :         int ret = r_RV(z);
     655            0 :         if (ret <= 0) return ret;
     656              :     }
     657            0 :     switch (among_var) {
     658            0 :         case 1:
     659            0 :             z->bra = z->c;
     660              :             {
     661            0 :                 int ret = slice_from_s(z, 5, s_5);
     662            0 :                 if (ret < 0) return ret;
     663              :             }
     664            0 :             break;
     665            0 :         case 2:
     666            0 :             z->bra = z->c;
     667              :             {
     668            0 :                 int ret = slice_from_s(z, 4, s_6);
     669            0 :                 if (ret < 0) return ret;
     670              :             }
     671            0 :             break;
     672            0 :         case 3:
     673            0 :             z->bra = z->c;
     674              :             {
     675            0 :                 int ret = slice_from_s(z, 2, s_7);
     676            0 :                 if (ret < 0) return ret;
     677              :             }
     678            0 :             break;
     679            0 :         case 4:
     680            0 :             z->bra = z->c;
     681              :             {
     682            0 :                 int ret = slice_from_s(z, 2, s_8);
     683            0 :                 if (ret < 0) return ret;
     684              :             }
     685            0 :             break;
     686            0 :         case 5:
     687            0 :             z->bra = z->c;
     688              :             {
     689            0 :                 int ret = slice_from_s(z, 2, s_9);
     690            0 :                 if (ret < 0) return ret;
     691              :             }
     692            0 :             break;
     693            0 :         case 6:
     694              :             {
     695            0 :                 int ret = slice_del(z);
     696            0 :                 if (ret < 0) return ret;
     697              :             }
     698            0 :             break;
     699            0 :         case 7:
     700            0 :             if (z->c <= z->lb || z->p[z->c - 1] != 'u') return 0;
     701            0 :             z->c--;
     702              :             {
     703            0 :                 int ret = slice_del(z);
     704            0 :                 if (ret < 0) return ret;
     705              :             }
     706            0 :             break;
     707              :     }
     708            0 :     return 1;
     709              : }
     710              : 
     711            0 : static int r_standard_suffix(struct SN_env * z) {
     712              :     int among_var;
     713            0 :     z->ket = z->c;
     714            0 :     if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((835634 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
     715            0 :     among_var = find_among_b(z, a_6, 48, 0);
     716            0 :     if (!among_var) return 0;
     717            0 :     z->bra = z->c;
     718            0 :     switch (among_var) {
     719            0 :         case 1:
     720              :             {
     721            0 :                 int ret = r_R2(z);
     722            0 :                 if (ret <= 0) return ret;
     723              :             }
     724              :             {
     725            0 :                 int ret = slice_del(z);
     726            0 :                 if (ret < 0) return ret;
     727              :             }
     728            0 :             break;
     729            0 :         case 2:
     730              :             {
     731            0 :                 int ret = r_R2(z);
     732            0 :                 if (ret <= 0) return ret;
     733              :             }
     734              :             {
     735            0 :                 int ret = slice_del(z);
     736            0 :                 if (ret < 0) return ret;
     737              :             }
     738              :             {
     739            0 :                 int v_1 = z->l - z->c;
     740            0 :                 z->ket = z->c;
     741            0 :                 if (!(eq_s_b(z, 2, s_10))) { z->c = z->l - v_1; goto lab0; }
     742            0 :                 z->bra = z->c;
     743              :                 {
     744            0 :                     int ret = r_R2(z);
     745            0 :                     if (ret == 0) { z->c = z->l - v_1; goto lab0; }
     746            0 :                     if (ret < 0) return ret;
     747              :                 }
     748              :                 {
     749            0 :                     int ret = slice_del(z);
     750            0 :                     if (ret < 0) return ret;
     751              :                 }
     752            0 :             lab0:
     753              :                 ;
     754              :             }
     755            0 :             break;
     756            0 :         case 3:
     757              :             {
     758            0 :                 int ret = r_R2(z);
     759            0 :                 if (ret <= 0) return ret;
     760              :             }
     761              :             {
     762            0 :                 int ret = slice_from_s(z, 3, s_11);
     763            0 :                 if (ret < 0) return ret;
     764              :             }
     765            0 :             break;
     766            0 :         case 4:
     767              :             {
     768            0 :                 int ret = r_R2(z);
     769            0 :                 if (ret <= 0) return ret;
     770              :             }
     771              :             {
     772            0 :                 int ret = slice_from_s(z, 1, s_12);
     773            0 :                 if (ret < 0) return ret;
     774              :             }
     775            0 :             break;
     776            0 :         case 5:
     777              :             {
     778            0 :                 int ret = r_R2(z);
     779            0 :                 if (ret <= 0) return ret;
     780              :             }
     781              :             {
     782            0 :                 int ret = slice_from_s(z, 4, s_13);
     783            0 :                 if (ret < 0) return ret;
     784              :             }
     785            0 :             break;
     786            0 :         case 6:
     787              :             {
     788            0 :                 int ret = r_R1(z);
     789            0 :                 if (ret <= 0) return ret;
     790              :             }
     791              :             {
     792            0 :                 int ret = slice_del(z);
     793            0 :                 if (ret < 0) return ret;
     794              :             }
     795              :             {
     796            0 :                 int v_2 = z->l - z->c;
     797            0 :                 z->ket = z->c;
     798            0 :                 if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718616 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_2; goto lab1; }
     799            0 :                 among_var = find_among_b(z, a_3, 4, 0);
     800            0 :                 if (!among_var) { z->c = z->l - v_2; goto lab1; }
     801            0 :                 z->bra = z->c;
     802              :                 {
     803            0 :                     int ret = r_R2(z);
     804            0 :                     if (ret == 0) { z->c = z->l - v_2; goto lab1; }
     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 :                 switch (among_var) {
     812            0 :                     case 1:
     813            0 :                         z->ket = z->c;
     814            0 :                         if (!(eq_s_b(z, 2, s_14))) { z->c = z->l - v_2; goto lab1; }
     815            0 :                         z->bra = z->c;
     816              :                         {
     817            0 :                             int ret = r_R2(z);
     818            0 :                             if (ret == 0) { z->c = z->l - v_2; goto lab1; }
     819            0 :                             if (ret < 0) return ret;
     820              :                         }
     821              :                         {
     822            0 :                             int ret = slice_del(z);
     823            0 :                             if (ret < 0) return ret;
     824              :                         }
     825            0 :                         break;
     826              :                 }
     827            0 :             lab1:
     828              :                 ;
     829              :             }
     830            0 :             break;
     831            0 :         case 7:
     832              :             {
     833            0 :                 int ret = r_R2(z);
     834            0 :                 if (ret <= 0) return ret;
     835              :             }
     836              :             {
     837            0 :                 int ret = slice_del(z);
     838            0 :                 if (ret < 0) return ret;
     839              :             }
     840              :             {
     841            0 :                 int v_3 = z->l - z->c;
     842            0 :                 z->ket = z->c;
     843            0 :                 if (z->c - 3 <= z->lb || z->p[z->c - 1] != 101) { z->c = z->l - v_3; goto lab2; }
     844            0 :                 if (!find_among_b(z, a_4, 3, 0)) { z->c = z->l - v_3; goto lab2; }
     845            0 :                 z->bra = z->c;
     846              :                 {
     847            0 :                     int ret = r_R2(z);
     848            0 :                     if (ret == 0) { z->c = z->l - v_3; goto lab2; }
     849            0 :                     if (ret < 0) return ret;
     850              :                 }
     851              :                 {
     852            0 :                     int ret = slice_del(z);
     853            0 :                     if (ret < 0) return ret;
     854              :                 }
     855            0 :             lab2:
     856              :                 ;
     857              :             }
     858            0 :             break;
     859            0 :         case 8:
     860              :             {
     861            0 :                 int ret = r_R2(z);
     862            0 :                 if (ret <= 0) return ret;
     863              :             }
     864              :             {
     865            0 :                 int ret = slice_del(z);
     866            0 :                 if (ret < 0) return ret;
     867              :             }
     868              :             {
     869            0 :                 int v_4 = z->l - z->c;
     870            0 :                 z->ket = z->c;
     871            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_4; goto lab3; }
     872            0 :                 if (!find_among_b(z, a_5, 3, 0)) { z->c = z->l - v_4; goto lab3; }
     873            0 :                 z->bra = z->c;
     874              :                 {
     875            0 :                     int ret = r_R2(z);
     876            0 :                     if (ret == 0) { z->c = z->l - v_4; goto lab3; }
     877            0 :                     if (ret < 0) return ret;
     878              :                 }
     879              :                 {
     880            0 :                     int ret = slice_del(z);
     881            0 :                     if (ret < 0) return ret;
     882              :                 }
     883            0 :             lab3:
     884              :                 ;
     885              :             }
     886            0 :             break;
     887            0 :         case 9:
     888              :             {
     889            0 :                 int ret = r_R2(z);
     890            0 :                 if (ret <= 0) return ret;
     891              :             }
     892              :             {
     893            0 :                 int ret = slice_del(z);
     894            0 :                 if (ret < 0) return ret;
     895              :             }
     896              :             {
     897            0 :                 int v_5 = z->l - z->c;
     898            0 :                 z->ket = z->c;
     899            0 :                 if (!(eq_s_b(z, 2, s_15))) { z->c = z->l - v_5; goto lab4; }
     900            0 :                 z->bra = z->c;
     901              :                 {
     902            0 :                     int ret = r_R2(z);
     903            0 :                     if (ret == 0) { z->c = z->l - v_5; goto lab4; }
     904            0 :                     if (ret < 0) return ret;
     905              :                 }
     906              :                 {
     907            0 :                     int ret = slice_del(z);
     908            0 :                     if (ret < 0) return ret;
     909              :                 }
     910            0 :             lab4:
     911              :                 ;
     912              :             }
     913            0 :             break;
     914              :     }
     915            0 :     return 1;
     916              : }
     917              : 
     918            0 : static int r_y_verb_suffix(struct SN_env * z) {
     919              :     {
     920              :         int v_1;
     921            0 :         if (z->c < ((SN_local *)z)->i_pV) return 0;
     922            0 :         v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
     923            0 :         z->ket = z->c;
     924            0 :         if (!find_among_b(z, a_7, 12, 0)) { z->lb = v_1; return 0; }
     925            0 :         z->bra = z->c;
     926            0 :         z->lb = v_1;
     927              :     }
     928            0 :     if (z->c <= z->lb || z->p[z->c - 1] != 'u') return 0;
     929            0 :     z->c--;
     930              :     {
     931            0 :         int ret = slice_del(z);
     932            0 :         if (ret < 0) return ret;
     933              :     }
     934            0 :     return 1;
     935              : }
     936              : 
     937            0 : static int r_verb_suffix(struct SN_env * z) {
     938              :     int among_var;
     939              :     {
     940              :         int v_1;
     941            0 :         if (z->c < ((SN_local *)z)->i_pV) return 0;
     942            0 :         v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
     943            0 :         z->ket = z->c;
     944            0 :         among_var = find_among_b(z, a_8, 96, 0);
     945            0 :         if (!among_var) { z->lb = v_1; return 0; }
     946            0 :         z->bra = z->c;
     947            0 :         z->lb = v_1;
     948              :     }
     949            0 :     switch (among_var) {
     950            0 :         case 1:
     951              :             {
     952            0 :                 int v_2 = z->l - z->c;
     953            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 'u') { z->c = z->l - v_2; goto lab0; }
     954            0 :                 z->c--;
     955              :                 {
     956            0 :                     int v_3 = z->l - z->c;
     957            0 :                     if (z->c <= z->lb || z->p[z->c - 1] != 'g') { z->c = z->l - v_2; goto lab0; }
     958            0 :                     z->c--;
     959            0 :                     z->c = z->l - v_3;
     960              :                 }
     961            0 :             lab0:
     962              :                 ;
     963              :             }
     964            0 :             z->bra = z->c;
     965              :             {
     966            0 :                 int ret = slice_del(z);
     967            0 :                 if (ret < 0) return ret;
     968              :             }
     969            0 :             break;
     970            0 :         case 2:
     971              :             {
     972            0 :                 int ret = slice_del(z);
     973            0 :                 if (ret < 0) return ret;
     974              :             }
     975            0 :             break;
     976              :     }
     977            0 :     return 1;
     978              : }
     979              : 
     980            0 : static int r_residual_suffix(struct SN_env * z) {
     981              :     int among_var;
     982            0 :     z->ket = z->c;
     983            0 :     among_var = find_among_b(z, a_9, 8, 0);
     984            0 :     if (!among_var) return 0;
     985            0 :     z->bra = z->c;
     986            0 :     switch (among_var) {
     987            0 :         case 1:
     988              :             {
     989            0 :                 int ret = r_RV(z);
     990            0 :                 if (ret <= 0) return ret;
     991              :             }
     992              :             {
     993            0 :                 int ret = slice_del(z);
     994            0 :                 if (ret < 0) return ret;
     995              :             }
     996            0 :             break;
     997            0 :         case 2:
     998              :             {
     999            0 :                 int ret = r_RV(z);
    1000            0 :                 if (ret <= 0) return ret;
    1001              :             }
    1002              :             {
    1003            0 :                 int ret = slice_del(z);
    1004            0 :                 if (ret < 0) return ret;
    1005              :             }
    1006              :             {
    1007            0 :                 int v_1 = z->l - z->c;
    1008            0 :                 z->ket = z->c;
    1009            0 :                 if (z->c <= z->lb || z->p[z->c - 1] != 'u') { z->c = z->l - v_1; goto lab0; }
    1010            0 :                 z->c--;
    1011            0 :                 z->bra = z->c;
    1012              :                 {
    1013            0 :                     int v_2 = z->l - z->c;
    1014            0 :                     if (z->c <= z->lb || z->p[z->c - 1] != 'g') { z->c = z->l - v_1; goto lab0; }
    1015            0 :                     z->c--;
    1016            0 :                     z->c = z->l - v_2;
    1017              :                 }
    1018              :                 {
    1019            0 :                     int ret = r_RV(z);
    1020            0 :                     if (ret == 0) { z->c = z->l - v_1; goto lab0; }
    1021            0 :                     if (ret < 0) return ret;
    1022              :                 }
    1023              :                 {
    1024            0 :                     int ret = slice_del(z);
    1025            0 :                     if (ret < 0) return ret;
    1026              :                 }
    1027            0 :             lab0:
    1028              :                 ;
    1029              :             }
    1030            0 :             break;
    1031              :     }
    1032            0 :     return 1;
    1033              : }
    1034              : 
    1035            0 : extern int spanish_UTF_8_stem(struct SN_env * z) {
    1036              :     {
    1037            0 :         int ret = r_mark_regions(z);
    1038            0 :         if (ret < 0) return ret;
    1039              :     }
    1040            0 :     z->lb = z->c; z->c = z->l;
    1041              :     {
    1042            0 :         int v_1 = z->l - z->c;
    1043              :         {
    1044            0 :             int ret = r_attached_pronoun(z);
    1045            0 :             if (ret < 0) return ret;
    1046              :         }
    1047            0 :         z->c = z->l - v_1;
    1048              :     }
    1049              :     {
    1050            0 :         int v_2 = z->l - z->c;
    1051              :         do {
    1052            0 :             int v_3 = z->l - z->c;
    1053              :             {
    1054            0 :                 int ret = r_standard_suffix(z);
    1055            0 :                 if (ret == 0) goto lab1;
    1056            0 :                 if (ret < 0) return ret;
    1057              :             }
    1058            0 :             break;
    1059            0 :         lab1:
    1060            0 :             z->c = z->l - v_3;
    1061              :             {
    1062            0 :                 int ret = r_y_verb_suffix(z);
    1063            0 :                 if (ret == 0) goto lab2;
    1064            0 :                 if (ret < 0) return ret;
    1065              :             }
    1066            0 :             break;
    1067            0 :         lab2:
    1068            0 :             z->c = z->l - v_3;
    1069              :             {
    1070            0 :                 int ret = r_verb_suffix(z);
    1071            0 :                 if (ret == 0) goto lab0;
    1072            0 :                 if (ret < 0) return ret;
    1073              :             }
    1074              :         } while (0);
    1075            0 :     lab0:
    1076            0 :         z->c = z->l - v_2;
    1077              :     }
    1078              :     {
    1079            0 :         int v_4 = z->l - z->c;
    1080              :         {
    1081            0 :             int ret = r_residual_suffix(z);
    1082            0 :             if (ret < 0) return ret;
    1083              :         }
    1084            0 :         z->c = z->l - v_4;
    1085              :     }
    1086            0 :     z->c = z->lb;
    1087              :     {
    1088            0 :         int v_5 = z->c;
    1089              :         {
    1090            0 :             int ret = r_postlude(z);
    1091            0 :             if (ret < 0) return ret;
    1092              :         }
    1093            0 :         z->c = v_5;
    1094              :     }
    1095            0 :     return 1;
    1096              : }
    1097              : 
    1098            0 : extern struct SN_env * spanish_UTF_8_create_env(void) {
    1099            0 :     struct SN_env * z = SN_new_env(sizeof(SN_local));
    1100            0 :     if (z) {
    1101            0 :         ((SN_local *)z)->i_p2 = 0;
    1102            0 :         ((SN_local *)z)->i_p1 = 0;
    1103            0 :         ((SN_local *)z)->i_pV = 0;
    1104              :     }
    1105            0 :     return z;
    1106              : }
    1107              : 
    1108            0 : extern void spanish_UTF_8_close_env(struct SN_env * z) {
    1109            0 :     SN_delete_env(z);
    1110            0 : }
    1111              : 
        

Generated by: LCOV version 2.0-1