Update snowball
authorPeter Eisentraut <peter@eisentraut.org>
Mon, 8 Jun 2020 05:58:51 +0000 (07:58 +0200)
committerPeter Eisentraut <peter@eisentraut.org>
Mon, 8 Jun 2020 06:07:15 +0000 (08:07 +0200)
Update to snowball tag v2.0.0.  Major changes are new stemmers for
Basque, Catalan, and Hindi.

Discussion: https://www.postgresql.org/message-id/flat/a8eeabd6-2be1-43fe-401e-a97594c38478%402ndquadrant.com

97 files changed:
src/backend/snowball/Makefile
src/backend/snowball/README
src/backend/snowball/dict_snowball.c
src/backend/snowball/libstemmer/api.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_basque.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_ISO_8859_1_catalan.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_ISO_8859_1_danish.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_dutch.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_english.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_finnish.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_french.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_german.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_indonesian.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_irish.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_italian.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_norwegian.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_porter.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_portuguese.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_spanish.c
src/backend/snowball/libstemmer/stem_ISO_8859_1_swedish.c
src/backend/snowball/libstemmer/stem_ISO_8859_2_hungarian.c
src/backend/snowball/libstemmer/stem_ISO_8859_2_romanian.c
src/backend/snowball/libstemmer/stem_KOI8_R_russian.c
src/backend/snowball/libstemmer/stem_UTF_8_arabic.c
src/backend/snowball/libstemmer/stem_UTF_8_basque.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_UTF_8_catalan.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_UTF_8_danish.c
src/backend/snowball/libstemmer/stem_UTF_8_dutch.c
src/backend/snowball/libstemmer/stem_UTF_8_english.c
src/backend/snowball/libstemmer/stem_UTF_8_finnish.c
src/backend/snowball/libstemmer/stem_UTF_8_french.c
src/backend/snowball/libstemmer/stem_UTF_8_german.c
src/backend/snowball/libstemmer/stem_UTF_8_greek.c
src/backend/snowball/libstemmer/stem_UTF_8_hindi.c [new file with mode: 0644]
src/backend/snowball/libstemmer/stem_UTF_8_hungarian.c
src/backend/snowball/libstemmer/stem_UTF_8_indonesian.c
src/backend/snowball/libstemmer/stem_UTF_8_irish.c
src/backend/snowball/libstemmer/stem_UTF_8_italian.c
src/backend/snowball/libstemmer/stem_UTF_8_lithuanian.c
src/backend/snowball/libstemmer/stem_UTF_8_nepali.c
src/backend/snowball/libstemmer/stem_UTF_8_norwegian.c
src/backend/snowball/libstemmer/stem_UTF_8_porter.c
src/backend/snowball/libstemmer/stem_UTF_8_portuguese.c
src/backend/snowball/libstemmer/stem_UTF_8_romanian.c
src/backend/snowball/libstemmer/stem_UTF_8_russian.c
src/backend/snowball/libstemmer/stem_UTF_8_spanish.c
src/backend/snowball/libstemmer/stem_UTF_8_swedish.c
src/backend/snowball/libstemmer/stem_UTF_8_tamil.c
src/backend/snowball/libstemmer/stem_UTF_8_turkish.c
src/backend/snowball/libstemmer/utilities.c
src/bin/initdb/initdb.c
src/include/snowball/libstemmer/header.h
src/include/snowball/libstemmer/stem_ISO_8859_1_basque.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_ISO_8859_1_catalan.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_ISO_8859_1_danish.h
src/include/snowball/libstemmer/stem_ISO_8859_1_dutch.h
src/include/snowball/libstemmer/stem_ISO_8859_1_english.h
src/include/snowball/libstemmer/stem_ISO_8859_1_finnish.h
src/include/snowball/libstemmer/stem_ISO_8859_1_french.h
src/include/snowball/libstemmer/stem_ISO_8859_1_german.h
src/include/snowball/libstemmer/stem_ISO_8859_1_indonesian.h
src/include/snowball/libstemmer/stem_ISO_8859_1_irish.h
src/include/snowball/libstemmer/stem_ISO_8859_1_italian.h
src/include/snowball/libstemmer/stem_ISO_8859_1_norwegian.h
src/include/snowball/libstemmer/stem_ISO_8859_1_porter.h
src/include/snowball/libstemmer/stem_ISO_8859_1_portuguese.h
src/include/snowball/libstemmer/stem_ISO_8859_1_spanish.h
src/include/snowball/libstemmer/stem_ISO_8859_1_swedish.h
src/include/snowball/libstemmer/stem_ISO_8859_2_hungarian.h
src/include/snowball/libstemmer/stem_ISO_8859_2_romanian.h
src/include/snowball/libstemmer/stem_KOI8_R_russian.h
src/include/snowball/libstemmer/stem_UTF_8_arabic.h
src/include/snowball/libstemmer/stem_UTF_8_basque.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_UTF_8_catalan.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_UTF_8_danish.h
src/include/snowball/libstemmer/stem_UTF_8_dutch.h
src/include/snowball/libstemmer/stem_UTF_8_english.h
src/include/snowball/libstemmer/stem_UTF_8_finnish.h
src/include/snowball/libstemmer/stem_UTF_8_french.h
src/include/snowball/libstemmer/stem_UTF_8_german.h
src/include/snowball/libstemmer/stem_UTF_8_greek.h
src/include/snowball/libstemmer/stem_UTF_8_hindi.h [new file with mode: 0644]
src/include/snowball/libstemmer/stem_UTF_8_hungarian.h
src/include/snowball/libstemmer/stem_UTF_8_indonesian.h
src/include/snowball/libstemmer/stem_UTF_8_irish.h
src/include/snowball/libstemmer/stem_UTF_8_italian.h
src/include/snowball/libstemmer/stem_UTF_8_lithuanian.h
src/include/snowball/libstemmer/stem_UTF_8_nepali.h
src/include/snowball/libstemmer/stem_UTF_8_norwegian.h
src/include/snowball/libstemmer/stem_UTF_8_porter.h
src/include/snowball/libstemmer/stem_UTF_8_portuguese.h
src/include/snowball/libstemmer/stem_UTF_8_romanian.h
src/include/snowball/libstemmer/stem_UTF_8_russian.h
src/include/snowball/libstemmer/stem_UTF_8_spanish.h
src/include/snowball/libstemmer/stem_UTF_8_swedish.h
src/include/snowball/libstemmer/stem_UTF_8_tamil.h
src/include/snowball/libstemmer/stem_UTF_8_turkish.h

index 539f572d81a23fd25eb1dc591936f7c6ad9839ac..ad8482cdd1a710da9ea33ba1eec7e6af35f03df3 100644 (file)
@@ -23,6 +23,8 @@ OBJS = \
    utilities.o
 
 OBJS += \
+   stem_ISO_8859_1_basque.o \
+   stem_ISO_8859_1_catalan.o \
    stem_ISO_8859_1_danish.o \
    stem_ISO_8859_1_dutch.o \
    stem_ISO_8859_1_english.o \
@@ -41,6 +43,8 @@ OBJS += \
    stem_ISO_8859_2_romanian.o \
    stem_KOI8_R_russian.o \
    stem_UTF_8_arabic.o \
+   stem_UTF_8_basque.o \
+   stem_UTF_8_catalan.o \
    stem_UTF_8_danish.o \
    stem_UTF_8_dutch.o \
    stem_UTF_8_english.o \
@@ -48,6 +52,7 @@ OBJS += \
    stem_UTF_8_french.o \
    stem_UTF_8_german.o \
    stem_UTF_8_greek.o \
+   stem_UTF_8_hindi.o \
    stem_UTF_8_hungarian.o \
    stem_UTF_8_indonesian.o \
    stem_UTF_8_irish.o \
@@ -70,6 +75,8 @@ OBJS += \
 # must come after creation of that language
 LANGUAGES=  \
    arabic      arabic      \
+   basque      basque      \
+   catalan     catalan     \
    danish      danish      \
    dutch       dutch       \
    english     english     \
@@ -77,6 +84,7 @@ LANGUAGES=  \
    french      french      \
    german      german      \
    greek       greek       \
+   hindi       english     \
    hungarian   hungarian   \
    indonesian  indonesian  \
    irish       irish       \
index 3463289f1c4b27f65067f9b179b42e7f0b1a35a5..92ee16901fe6c6a3ff8c71acb34d5496c37ad89e 100644 (file)
@@ -7,7 +7,7 @@ This module uses the word stemming code developed by the Snowball project,
 http://snowballstem.org (formerly http://snowball.tartarus.org)
 which is released by them under a BSD-style license.
 
-The Snowball project is not currently making formal releases; it's best
+The Snowball project does not often make formal releases; it's best
 to pull from their git repository
 
 git clone https://github.com/snowballstem/snowball.git
@@ -29,8 +29,8 @@ We choose to include the derived files in the PostgreSQL distribution
 because most installations will not have the Snowball compiler available.
 
 We are currently synced with the Snowball git commit
-4456b82c26c02493e8807a66f30593a98c5d2888
-of 2019-06-24.
+c70ed64f9d41c1032fba4e962b054f8e9d489a74 (tag v2.0.0)
+of 2019-10-02.
 
 To update the PostgreSQL sources from a new Snowball version:
 
@@ -44,6 +44,9 @@ do
     sed 's|\.\./runtime/header\.h|header.h|' $f >libstemmer/`basename $f`
 done
 
+Do not copy stemmers that are listed in libstemmer/modules.txt as
+nonstandard, such as "german2" or "lovins".
+
 2. Copy the *.c files in snowball/runtime/ to
 src/backend/snowball/libstemmer, and edit them to remove direct inclusions
 of system headers such as <stdio.h> --- they should only include "header.h".
index 144120a564fba4c9dfd2b6e7985bad5c03d583e9..4e1aceee025736a3f3af8098fb9aee4802ac0223 100644 (file)
@@ -26,6 +26,8 @@
 
 /* Now we can include the original Snowball header.h */
 #include "snowball/libstemmer/header.h"
+#include "snowball/libstemmer/stem_ISO_8859_1_basque.h"
+#include "snowball/libstemmer/stem_ISO_8859_1_catalan.h"
 #include "snowball/libstemmer/stem_ISO_8859_1_danish.h"
 #include "snowball/libstemmer/stem_ISO_8859_1_dutch.h"
 #include "snowball/libstemmer/stem_ISO_8859_1_english.h"
@@ -44,6 +46,8 @@
 #include "snowball/libstemmer/stem_ISO_8859_2_romanian.h"
 #include "snowball/libstemmer/stem_KOI8_R_russian.h"
 #include "snowball/libstemmer/stem_UTF_8_arabic.h"
+#include "snowball/libstemmer/stem_UTF_8_basque.h"
+#include "snowball/libstemmer/stem_UTF_8_catalan.h"
 #include "snowball/libstemmer/stem_UTF_8_danish.h"
 #include "snowball/libstemmer/stem_UTF_8_dutch.h"
 #include "snowball/libstemmer/stem_UTF_8_english.h"
@@ -51,6 +55,7 @@
 #include "snowball/libstemmer/stem_UTF_8_french.h"
 #include "snowball/libstemmer/stem_UTF_8_german.h"
 #include "snowball/libstemmer/stem_UTF_8_greek.h"
+#include "snowball/libstemmer/stem_UTF_8_hindi.h"
 #include "snowball/libstemmer/stem_UTF_8_hungarian.h"
 #include "snowball/libstemmer/stem_UTF_8_indonesian.h"
 #include "snowball/libstemmer/stem_UTF_8_irish.h"
@@ -92,6 +97,8 @@ static const stemmer_module stemmer_modules[] =
    /*
     * Stemmers list from Snowball distribution
     */
+   STEMMER_MODULE(basque, PG_LATIN1, ISO_8859_1),
+   STEMMER_MODULE(catalan, PG_LATIN1, ISO_8859_1),
    STEMMER_MODULE(danish, PG_LATIN1, ISO_8859_1),
    STEMMER_MODULE(dutch, PG_LATIN1, ISO_8859_1),
    STEMMER_MODULE(english, PG_LATIN1, ISO_8859_1),
@@ -110,6 +117,8 @@ static const stemmer_module stemmer_modules[] =
    STEMMER_MODULE(romanian, PG_LATIN2, ISO_8859_2),
    STEMMER_MODULE(russian, PG_KOI8R, KOI8_R),
    STEMMER_MODULE(arabic, PG_UTF8, UTF_8),
+   STEMMER_MODULE(basque, PG_UTF8, UTF_8),
+   STEMMER_MODULE(catalan, PG_UTF8, UTF_8),
    STEMMER_MODULE(danish, PG_UTF8, UTF_8),
    STEMMER_MODULE(dutch, PG_UTF8, UTF_8),
    STEMMER_MODULE(english, PG_UTF8, UTF_8),
@@ -117,6 +126,7 @@ static const stemmer_module stemmer_modules[] =
    STEMMER_MODULE(french, PG_UTF8, UTF_8),
    STEMMER_MODULE(german, PG_UTF8, UTF_8),
    STEMMER_MODULE(greek, PG_UTF8, UTF_8),
+   STEMMER_MODULE(hindi, PG_UTF8, UTF_8),
    STEMMER_MODULE(hungarian, PG_UTF8, UTF_8),
    STEMMER_MODULE(indonesian, PG_UTF8, UTF_8),
    STEMMER_MODULE(irish, PG_UTF8, UTF_8),
index 530b427a466ce92a87214a9997626c64f7925bf5..8dd32df3d4298dad42b247ee6542e4ce533e4274 100644 (file)
@@ -61,4 +61,3 @@ extern int SN_set_current(struct SN_env * z, int size, const symbol * s)
     z->c = 0;
     return err;
 }
-
diff --git a/src/backend/snowball/libstemmer/stem_ISO_8859_1_basque.c b/src/backend/snowball/libstemmer/stem_ISO_8859_1_basque.c
new file mode 100644 (file)
index 0000000..7f080d8
--- /dev/null
@@ -0,0 +1,1184 @@
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
+
+#include "header.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern int basque_ISO_8859_1_stem(struct SN_env * z);
+#ifdef __cplusplus
+}
+#endif
+static int r_R1(struct SN_env * z);
+static int r_R2(struct SN_env * z);
+static int r_RV(struct SN_env * z);
+static int r_mark_regions(struct SN_env * z);
+static int r_adjetiboak(struct SN_env * z);
+static int r_izenak(struct SN_env * z);
+static int r_aditzak(struct SN_env * z);
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+extern struct SN_env * basque_ISO_8859_1_create_env(void);
+extern void basque_ISO_8859_1_close_env(struct SN_env * z);
+
+
+#ifdef __cplusplus
+}
+#endif
+static const symbol s_0_0[4] = { 'i', 'd', 'e', 'a' };
+static const symbol s_0_1[5] = { 'b', 'i', 'd', 'e', 'a' };
+static const symbol s_0_2[5] = { 'k', 'i', 'd', 'e', 'a' };
+static const symbol s_0_3[5] = { 'p', 'i', 'd', 'e', 'a' };
+static const symbol s_0_4[6] = { 'k', 'u', 'n', 'd', 'e', 'a' };
+static const symbol s_0_5[5] = { 'g', 'a', 'l', 'e', 'a' };
+static const symbol s_0_6[6] = { 't', 'a', 'i', 'l', 'e', 'a' };
+static const symbol s_0_7[7] = { 't', 'z', 'a', 'i', 'l', 'e', 'a' };
+static const symbol s_0_8[5] = { 'g', 'u', 'n', 'e', 'a' };
+static const symbol s_0_9[5] = { 'k', 'u', 'n', 'e', 'a' };
+static const symbol s_0_10[5] = { 't', 'z', 'a', 'g', 'a' };
+static const symbol s_0_11[4] = { 'g', 'a', 'i', 'a' };
+static const symbol s_0_12[5] = { 'a', 'l', 'd', 'i', 'a' };
+static const symbol s_0_13[6] = { 't', 'a', 'l', 'd', 'i', 'a' };
+static const symbol s_0_14[5] = { 'k', 'a', 'r', 'i', 'a' };
+static const symbol s_0_15[6] = { 'g', 'a', 'r', 'r', 'i', 'a' };
+static const symbol s_0_16[6] = { 'k', 'a', 'r', 'r', 'i', 'a' };
+static const symbol s_0_17[2] = { 'k', 'a' };
+static const symbol s_0_18[5] = { 't', 'z', 'a', 'k', 'a' };
+static const symbol s_0_19[2] = { 'l', 'a' };
+static const symbol s_0_20[4] = { 'm', 'e', 'n', 'a' };
+static const symbol s_0_21[4] = { 'p', 'e', 'n', 'a' };
+static const symbol s_0_22[4] = { 'k', 'i', 'n', 'a' };
+static const symbol s_0_23[5] = { 'e', 'z', 'i', 'n', 'a' };
+static const symbol s_0_24[6] = { 't', 'e', 'z', 'i', 'n', 'a' };
+static const symbol s_0_25[4] = { 'k', 'u', 'n', 'a' };
+static const symbol s_0_26[4] = { 't', 'u', 'n', 'a' };
+static const symbol s_0_27[6] = { 'k', 'i', 'z', 'u', 'n', 'a' };
+static const symbol s_0_28[3] = { 'e', 'r', 'a' };
+static const symbol s_0_29[4] = { 'b', 'e', 'r', 'a' };
+static const symbol s_0_30[7] = { 'a', 'r', 'a', 'b', 'e', 'r', 'a' };
+static const symbol s_0_31[4] = { 'k', 'e', 'r', 'a' };
+static const symbol s_0_32[4] = { 'p', 'e', 'r', 'a' };
+static const symbol s_0_33[4] = { 'o', 'r', 'r', 'a' };
+static const symbol s_0_34[5] = { 'k', 'o', 'r', 'r', 'a' };
+static const symbol s_0_35[4] = { 'd', 'u', 'r', 'a' };
+static const symbol s_0_36[4] = { 'g', 'u', 'r', 'a' };
+static const symbol s_0_37[4] = { 'k', 'u', 'r', 'a' };
+static const symbol s_0_38[4] = { 't', 'u', 'r', 'a' };
+static const symbol s_0_39[3] = { 'e', 't', 'a' };
+static const symbol s_0_40[4] = { 'k', 'e', 't', 'a' };
+static const symbol s_0_41[6] = { 'g', 'a', 'i', 'l', 'u', 'a' };
+static const symbol s_0_42[3] = { 'e', 'z', 'a' };
+static const symbol s_0_43[6] = { 'e', 'r', 'r', 'e', 'z', 'a' };
+static const symbol s_0_44[3] = { 't', 'z', 'a' };
+static const symbol s_0_45[6] = { 'g', 'a', 'i', 't', 'z', 'a' };
+static const symbol s_0_46[6] = { 'k', 'a', 'i', 't', 'z', 'a' };
+static const symbol s_0_47[6] = { 'k', 'u', 'n', 't', 'z', 'a' };
+static const symbol s_0_48[3] = { 'i', 'd', 'e' };
+static const symbol s_0_49[4] = { 'b', 'i', 'd', 'e' };
+static const symbol s_0_50[4] = { 'k', 'i', 'd', 'e' };
+static const symbol s_0_51[4] = { 'p', 'i', 'd', 'e' };
+static const symbol s_0_52[5] = { 'k', 'u', 'n', 'd', 'e' };
+static const symbol s_0_53[5] = { 't', 'z', 'a', 'k', 'e' };
+static const symbol s_0_54[5] = { 't', 'z', 'e', 'k', 'e' };
+static const symbol s_0_55[2] = { 'l', 'e' };
+static const symbol s_0_56[4] = { 'g', 'a', 'l', 'e' };
+static const symbol s_0_57[5] = { 't', 'a', 'i', 'l', 'e' };
+static const symbol s_0_58[6] = { 't', 'z', 'a', 'i', 'l', 'e' };
+static const symbol s_0_59[4] = { 'g', 'u', 'n', 'e' };
+static const symbol s_0_60[4] = { 'k', 'u', 'n', 'e' };
+static const symbol s_0_61[3] = { 't', 'z', 'e' };
+static const symbol s_0_62[4] = { 'a', 't', 'z', 'e' };
+static const symbol s_0_63[3] = { 'g', 'a', 'i' };
+static const symbol s_0_64[4] = { 'a', 'l', 'd', 'i' };
+static const symbol s_0_65[5] = { 't', 'a', 'l', 'd', 'i' };
+static const symbol s_0_66[2] = { 'k', 'i' };
+static const symbol s_0_67[3] = { 'a', 'r', 'i' };
+static const symbol s_0_68[4] = { 'k', 'a', 'r', 'i' };
+static const symbol s_0_69[4] = { 'l', 'a', 'r', 'i' };
+static const symbol s_0_70[4] = { 't', 'a', 'r', 'i' };
+static const symbol s_0_71[5] = { 'e', 't', 'a', 'r', 'i' };
+static const symbol s_0_72[5] = { 'g', 'a', 'r', 'r', 'i' };
+static const symbol s_0_73[5] = { 'k', 'a', 'r', 'r', 'i' };
+static const symbol s_0_74[5] = { 'a', 'r', 'a', 'z', 'i' };
+static const symbol s_0_75[6] = { 't', 'a', 'r', 'a', 'z', 'i' };
+static const symbol s_0_76[2] = { 'a', 'n' };
+static const symbol s_0_77[3] = { 'e', 'a', 'n' };
+static const symbol s_0_78[4] = { 'r', 'e', 'a', 'n' };
+static const symbol s_0_79[3] = { 'k', 'a', 'n' };
+static const symbol s_0_80[4] = { 'e', 't', 'a', 'n' };
+static const symbol s_0_81[7] = { 'a', 't', 's', 'e', 'd', 'e', 'n' };
+static const symbol s_0_82[3] = { 'm', 'e', 'n' };
+static const symbol s_0_83[3] = { 'p', 'e', 'n' };
+static const symbol s_0_84[3] = { 'k', 'i', 'n' };
+static const symbol s_0_85[5] = { 'r', 'e', 'k', 'i', 'n' };
+static const symbol s_0_86[4] = { 'e', 'z', 'i', 'n' };
+static const symbol s_0_87[5] = { 't', 'e', 'z', 'i', 'n' };
+static const symbol s_0_88[3] = { 't', 'u', 'n' };
+static const symbol s_0_89[5] = { 'k', 'i', 'z', 'u', 'n' };
+static const symbol s_0_90[2] = { 'g', 'o' };
+static const symbol s_0_91[3] = { 'a', 'g', 'o' };
+static const symbol s_0_92[3] = { 't', 'i', 'o' };
+static const symbol s_0_93[4] = { 'd', 'a', 'k', 'o' };
+static const symbol s_0_94[2] = { 'o', 'r' };
+static const symbol s_0_95[3] = { 'k', 'o', 'r' };
+static const symbol s_0_96[4] = { 't', 'z', 'a', 't' };
+static const symbol s_0_97[2] = { 'd', 'u' };
+static const symbol s_0_98[5] = { 'g', 'a', 'i', 'l', 'u' };
+static const symbol s_0_99[2] = { 't', 'u' };
+static const symbol s_0_100[3] = { 'a', 't', 'u' };
+static const symbol s_0_101[6] = { 'a', 'l', 'd', 'a', 't', 'u' };
+static const symbol s_0_102[4] = { 't', 'a', 't', 'u' };
+static const symbol s_0_103[6] = { 'b', 'a', 'd', 'i', 't', 'u' };
+static const symbol s_0_104[2] = { 'e', 'z' };
+static const symbol s_0_105[5] = { 'e', 'r', 'r', 'e', 'z' };
+static const symbol s_0_106[4] = { 't', 'z', 'e', 'z' };
+static const symbol s_0_107[5] = { 'g', 'a', 'i', 't', 'z' };
+static const symbol s_0_108[5] = { 'k', 'a', 'i', 't', 'z' };
+
+static const struct among a_0[109] =
+{
+/*  0 */ { 4, s_0_0, -1, 1, 0},
+/*  1 */ { 5, s_0_1, 0, 1, 0},
+/*  2 */ { 5, s_0_2, 0, 1, 0},
+/*  3 */ { 5, s_0_3, 0, 1, 0},
+/*  4 */ { 6, s_0_4, -1, 1, 0},
+/*  5 */ { 5, s_0_5, -1, 1, 0},
+/*  6 */ { 6, s_0_6, -1, 1, 0},
+/*  7 */ { 7, s_0_7, -1, 1, 0},
+/*  8 */ { 5, s_0_8, -1, 1, 0},
+/*  9 */ { 5, s_0_9, -1, 1, 0},
+/* 10 */ { 5, s_0_10, -1, 1, 0},
+/* 11 */ { 4, s_0_11, -1, 1, 0},
+/* 12 */ { 5, s_0_12, -1, 1, 0},
+/* 13 */ { 6, s_0_13, 12, 1, 0},
+/* 14 */ { 5, s_0_14, -1, 1, 0},
+/* 15 */ { 6, s_0_15, -1, 2, 0},
+/* 16 */ { 6, s_0_16, -1, 1, 0},
+/* 17 */ { 2, s_0_17, -1, 1, 0},
+/* 18 */ { 5, s_0_18, 17, 1, 0},
+/* 19 */ { 2, s_0_19, -1, 1, 0},
+/* 20 */ { 4, s_0_20, -1, 1, 0},
+/* 21 */ { 4, s_0_21, -1, 1, 0},
+/* 22 */ { 4, s_0_22, -1, 1, 0},
+/* 23 */ { 5, s_0_23, -1, 1, 0},
+/* 24 */ { 6, s_0_24, 23, 1, 0},
+/* 25 */ { 4, s_0_25, -1, 1, 0},
+/* 26 */ { 4, s_0_26, -1, 1, 0},
+/* 27 */ { 6, s_0_27, -1, 1, 0},
+/* 28 */ { 3, s_0_28, -1, 1, 0},
+/* 29 */ { 4, s_0_29, 28, 1, 0},
+/* 30 */ { 7, s_0_30, 29, 4, 0},
+/* 31 */ { 4, s_0_31, 28, 1, 0},
+/* 32 */ { 4, s_0_32, 28, 1, 0},
+/* 33 */ { 4, s_0_33, -1, 1, 0},
+/* 34 */ { 5, s_0_34, 33, 1, 0},
+/* 35 */ { 4, s_0_35, -1, 1, 0},
+/* 36 */ { 4, s_0_36, -1, 1, 0},
+/* 37 */ { 4, s_0_37, -1, 1, 0},
+/* 38 */ { 4, s_0_38, -1, 1, 0},
+/* 39 */ { 3, s_0_39, -1, 1, 0},
+/* 40 */ { 4, s_0_40, 39, 1, 0},
+/* 41 */ { 6, s_0_41, -1, 1, 0},
+/* 42 */ { 3, s_0_42, -1, 1, 0},
+/* 43 */ { 6, s_0_43, 42, 1, 0},
+/* 44 */ { 3, s_0_44, -1, 2, 0},
+/* 45 */ { 6, s_0_45, 44, 1, 0},
+/* 46 */ { 6, s_0_46, 44, 1, 0},
+/* 47 */ { 6, s_0_47, 44, 1, 0},
+/* 48 */ { 3, s_0_48, -1, 1, 0},
+/* 49 */ { 4, s_0_49, 48, 1, 0},
+/* 50 */ { 4, s_0_50, 48, 1, 0},
+/* 51 */ { 4, s_0_51, 48, 1, 0},
+/* 52 */ { 5, s_0_52, -1, 1, 0},
+/* 53 */ { 5, s_0_53, -1, 1, 0},
+/* 54 */ { 5, s_0_54, -1, 1, 0},
+/* 55 */ { 2, s_0_55, -1, 1, 0},
+/* 56 */ { 4, s_0_56, 55, 1, 0},
+/* 57 */ { 5, s_0_57, 55, 1, 0},
+/* 58 */ { 6, s_0_58, 55, 1, 0},
+/* 59 */ { 4, s_0_59, -1, 1, 0},
+/* 60 */ { 4, s_0_60, -1, 1, 0},
+/* 61 */ { 3, s_0_61, -1, 1, 0},
+/* 62 */ { 4, s_0_62, 61, 1, 0},
+/* 63 */ { 3, s_0_63, -1, 1, 0},
+/* 64 */ { 4, s_0_64, -1, 1, 0},
+/* 65 */ { 5, s_0_65, 64, 1, 0},
+/* 66 */ { 2, s_0_66, -1, 1, 0},
+/* 67 */ { 3, s_0_67, -1, 1, 0},
+/* 68 */ { 4, s_0_68, 67, 1, 0},
+/* 69 */ { 4, s_0_69, 67, 1, 0},
+/* 70 */ { 4, s_0_70, 67, 1, 0},
+/* 71 */ { 5, s_0_71, 70, 1, 0},
+/* 72 */ { 5, s_0_72, -1, 2, 0},
+/* 73 */ { 5, s_0_73, -1, 1, 0},
+/* 74 */ { 5, s_0_74, -1, 1, 0},
+/* 75 */ { 6, s_0_75, 74, 1, 0},
+/* 76 */ { 2, s_0_76, -1, 1, 0},
+/* 77 */ { 3, s_0_77, 76, 1, 0},
+/* 78 */ { 4, s_0_78, 77, 1, 0},
+/* 79 */ { 3, s_0_79, 76, 1, 0},
+/* 80 */ { 4, s_0_80, 76, 1, 0},
+/* 81 */ { 7, s_0_81, -1, 3, 0},
+/* 82 */ { 3, s_0_82, -1, 1, 0},
+/* 83 */ { 3, s_0_83, -1, 1, 0},
+/* 84 */ { 3, s_0_84, -1, 1, 0},
+/* 85 */ { 5, s_0_85, 84, 1, 0},
+/* 86 */ { 4, s_0_86, -1, 1, 0},
+/* 87 */ { 5, s_0_87, 86, 1, 0},
+/* 88 */ { 3, s_0_88, -1, 1, 0},
+/* 89 */ { 5, s_0_89, -1, 1, 0},
+/* 90 */ { 2, s_0_90, -1, 1, 0},
+/* 91 */ { 3, s_0_91, 90, 1, 0},
+/* 92 */ { 3, s_0_92, -1, 1, 0},
+/* 93 */ { 4, s_0_93, -1, 1, 0},
+/* 94 */ { 2, s_0_94, -1, 1, 0},
+/* 95 */ { 3, s_0_95, 94, 1, 0},
+/* 96 */ { 4, s_0_96, -1, 1, 0},
+/* 97 */ { 2, s_0_97, -1, 1, 0},
+/* 98 */ { 5, s_0_98, -1, 1, 0},
+/* 99 */ { 2, s_0_99, -1, 1, 0},
+/*100 */ { 3, s_0_100, 99, 1, 0},
+/*101 */ { 6, s_0_101, 100, 1, 0},
+/*102 */ { 4, s_0_102, 100, 1, 0},
+/*103 */ { 6, s_0_103, 99, 5, 0},
+/*104 */ { 2, s_0_104, -1, 1, 0},
+/*105 */ { 5, s_0_105, 104, 1, 0},
+/*106 */ { 4, s_0_106, 104, 1, 0},
+/*107 */ { 5, s_0_107, -1, 1, 0},
+/*108 */ { 5, s_0_108, -1, 1, 0}
+};
+
+static const symbol s_1_0[3] = { 'a', 'd', 'a' };
+static const symbol s_1_1[4] = { 'k', 'a', 'd', 'a' };
+static const symbol s_1_2[4] = { 'a', 'n', 'd', 'a' };
+static const symbol s_1_3[5] = { 'd', 'e', 'n', 'd', 'a' };
+static const symbol s_1_4[5] = { 'g', 'a', 'b', 'e', 'a' };
+static const symbol s_1_5[5] = { 'k', 'a', 'b', 'e', 'a' };
+static const symbol s_1_6[5] = { 'a', 'l', 'd', 'e', 'a' };
+static const symbol s_1_7[6] = { 'k', 'a', 'l', 'd', 'e', 'a' };
+static const symbol s_1_8[6] = { 't', 'a', 'l', 'd', 'e', 'a' };
+static const symbol s_1_9[5] = { 'o', 'r', 'd', 'e', 'a' };
+static const symbol s_1_10[5] = { 'z', 'a', 'l', 'e', 'a' };
+static const symbol s_1_11[6] = { 't', 'z', 'a', 'l', 'e', 'a' };
+static const symbol s_1_12[5] = { 'g', 'i', 'l', 'e', 'a' };
+static const symbol s_1_13[4] = { 'e', 'm', 'e', 'a' };
+static const symbol s_1_14[5] = { 'k', 'u', 'm', 'e', 'a' };
+static const symbol s_1_15[3] = { 'n', 'e', 'a' };
+static const symbol s_1_16[4] = { 'e', 'n', 'e', 'a' };
+static const symbol s_1_17[6] = { 'z', 'i', 'o', 'n', 'e', 'a' };
+static const symbol s_1_18[4] = { 'u', 'n', 'e', 'a' };
+static const symbol s_1_19[5] = { 'g', 'u', 'n', 'e', 'a' };
+static const symbol s_1_20[3] = { 'p', 'e', 'a' };
+static const symbol s_1_21[6] = { 'a', 'u', 'r', 'r', 'e', 'a' };
+static const symbol s_1_22[3] = { 't', 'e', 'a' };
+static const symbol s_1_23[5] = { 'k', 'o', 't', 'e', 'a' };
+static const symbol s_1_24[5] = { 'a', 'r', 't', 'e', 'a' };
+static const symbol s_1_25[5] = { 'o', 's', 't', 'e', 'a' };
+static const symbol s_1_26[5] = { 'e', 't', 'x', 'e', 'a' };
+static const symbol s_1_27[2] = { 'g', 'a' };
+static const symbol s_1_28[4] = { 'a', 'n', 'g', 'a' };
+static const symbol s_1_29[4] = { 'g', 'a', 'i', 'a' };
+static const symbol s_1_30[5] = { 'a', 'l', 'd', 'i', 'a' };
+static const symbol s_1_31[6] = { 't', 'a', 'l', 'd', 'i', 'a' };
+static const symbol s_1_32[6] = { 'h', 'a', 'n', 'd', 'i', 'a' };
+static const symbol s_1_33[6] = { 'm', 'e', 'n', 'd', 'i', 'a' };
+static const symbol s_1_34[4] = { 'g', 'e', 'i', 'a' };
+static const symbol s_1_35[4] = { 'e', 'g', 'i', 'a' };
+static const symbol s_1_36[5] = { 'd', 'e', 'g', 'i', 'a' };
+static const symbol s_1_37[5] = { 't', 'e', 'g', 'i', 'a' };
+static const symbol s_1_38[5] = { 'n', 'a', 'h', 'i', 'a' };
+static const symbol s_1_39[4] = { 'o', 'h', 'i', 'a' };
+static const symbol s_1_40[3] = { 'k', 'i', 'a' };
+static const symbol s_1_41[5] = { 't', 'o', 'k', 'i', 'a' };
+static const symbol s_1_42[3] = { 'o', 'i', 'a' };
+static const symbol s_1_43[4] = { 'k', 'o', 'i', 'a' };
+static const symbol s_1_44[4] = { 'a', 'r', 'i', 'a' };
+static const symbol s_1_45[5] = { 'k', 'a', 'r', 'i', 'a' };
+static const symbol s_1_46[5] = { 'l', 'a', 'r', 'i', 'a' };
+static const symbol s_1_47[5] = { 't', 'a', 'r', 'i', 'a' };
+static const symbol s_1_48[4] = { 'e', 'r', 'i', 'a' };
+static const symbol s_1_49[5] = { 'k', 'e', 'r', 'i', 'a' };
+static const symbol s_1_50[5] = { 't', 'e', 'r', 'i', 'a' };
+static const symbol s_1_51[6] = { 'g', 'a', 'r', 'r', 'i', 'a' };
+static const symbol s_1_52[6] = { 'l', 'a', 'r', 'r', 'i', 'a' };
+static const symbol s_1_53[6] = { 'k', 'i', 'r', 'r', 'i', 'a' };
+static const symbol s_1_54[5] = { 'd', 'u', 'r', 'i', 'a' };
+static const symbol s_1_55[4] = { 'a', 's', 'i', 'a' };
+static const symbol s_1_56[3] = { 't', 'i', 'a' };
+static const symbol s_1_57[4] = { 'e', 'z', 'i', 'a' };
+static const symbol s_1_58[5] = { 'b', 'i', 'z', 'i', 'a' };
+static const symbol s_1_59[6] = { 'o', 'n', 't', 'z', 'i', 'a' };
+static const symbol s_1_60[2] = { 'k', 'a' };
+static const symbol s_1_61[4] = { 'j', 'o', 'k', 'a' };
+static const symbol s_1_62[5] = { 'a', 'u', 'r', 'k', 'a' };
+static const symbol s_1_63[3] = { 's', 'k', 'a' };
+static const symbol s_1_64[3] = { 'x', 'k', 'a' };
+static const symbol s_1_65[3] = { 'z', 'k', 'a' };
+static const symbol s_1_66[6] = { 'g', 'i', 'b', 'e', 'l', 'a' };
+static const symbol s_1_67[4] = { 'g', 'e', 'l', 'a' };
+static const symbol s_1_68[5] = { 'k', 'a', 'i', 'l', 'a' };
+static const symbol s_1_69[5] = { 's', 'k', 'i', 'l', 'a' };
+static const symbol s_1_70[4] = { 't', 'i', 'l', 'a' };
+static const symbol s_1_71[3] = { 'o', 'l', 'a' };
+static const symbol s_1_72[2] = { 'n', 'a' };
+static const symbol s_1_73[4] = { 'k', 'a', 'n', 'a' };
+static const symbol s_1_74[3] = { 'e', 'n', 'a' };
+static const symbol s_1_75[7] = { 'g', 'a', 'r', 'r', 'e', 'n', 'a' };
+static const symbol s_1_76[7] = { 'g', 'e', 'r', 'r', 'e', 'n', 'a' };
+static const symbol s_1_77[6] = { 'u', 'r', 'r', 'e', 'n', 'a' };
+static const symbol s_1_78[5] = { 'z', 'a', 'i', 'n', 'a' };
+static const symbol s_1_79[6] = { 't', 'z', 'a', 'i', 'n', 'a' };
+static const symbol s_1_80[4] = { 'k', 'i', 'n', 'a' };
+static const symbol s_1_81[4] = { 'm', 'i', 'n', 'a' };
+static const symbol s_1_82[5] = { 'g', 'a', 'r', 'n', 'a' };
+static const symbol s_1_83[3] = { 'u', 'n', 'a' };
+static const symbol s_1_84[4] = { 'd', 'u', 'n', 'a' };
+static const symbol s_1_85[5] = { 'a', 's', 'u', 'n', 'a' };
+static const symbol s_1_86[6] = { 't', 'a', 's', 'u', 'n', 'a' };
+static const symbol s_1_87[5] = { 'o', 'n', 'd', 'o', 'a' };
+static const symbol s_1_88[6] = { 'k', 'o', 'n', 'd', 'o', 'a' };
+static const symbol s_1_89[4] = { 'n', 'g', 'o', 'a' };
+static const symbol s_1_90[4] = { 'z', 'i', 'o', 'a' };
+static const symbol s_1_91[3] = { 'k', 'o', 'a' };
+static const symbol s_1_92[5] = { 't', 'a', 'k', 'o', 'a' };
+static const symbol s_1_93[4] = { 'z', 'k', 'o', 'a' };
+static const symbol s_1_94[3] = { 'n', 'o', 'a' };
+static const symbol s_1_95[5] = { 'z', 'i', 'n', 'o', 'a' };
+static const symbol s_1_96[4] = { 'a', 'r', 'o', 'a' };
+static const symbol s_1_97[5] = { 't', 'a', 'r', 'o', 'a' };
+static const symbol s_1_98[5] = { 'z', 'a', 'r', 'o', 'a' };
+static const symbol s_1_99[4] = { 'e', 'r', 'o', 'a' };
+static const symbol s_1_100[4] = { 'o', 'r', 'o', 'a' };
+static const symbol s_1_101[4] = { 'o', 's', 'o', 'a' };
+static const symbol s_1_102[3] = { 't', 'o', 'a' };
+static const symbol s_1_103[4] = { 't', 't', 'o', 'a' };
+static const symbol s_1_104[4] = { 'z', 't', 'o', 'a' };
+static const symbol s_1_105[4] = { 't', 'x', 'o', 'a' };
+static const symbol s_1_106[4] = { 't', 'z', 'o', 'a' };
+static const symbol s_1_107[3] = { 0xF1, 'o', 'a' };
+static const symbol s_1_108[2] = { 'r', 'a' };
+static const symbol s_1_109[3] = { 'a', 'r', 'a' };
+static const symbol s_1_110[4] = { 'd', 'a', 'r', 'a' };
+static const symbol s_1_111[5] = { 'l', 'i', 'a', 'r', 'a' };
+static const symbol s_1_112[5] = { 't', 'i', 'a', 'r', 'a' };
+static const symbol s_1_113[4] = { 't', 'a', 'r', 'a' };
+static const symbol s_1_114[5] = { 'e', 't', 'a', 'r', 'a' };
+static const symbol s_1_115[5] = { 't', 'z', 'a', 'r', 'a' };
+static const symbol s_1_116[4] = { 'b', 'e', 'r', 'a' };
+static const symbol s_1_117[4] = { 'k', 'e', 'r', 'a' };
+static const symbol s_1_118[4] = { 'p', 'e', 'r', 'a' };
+static const symbol s_1_119[3] = { 'o', 'r', 'a' };
+static const symbol s_1_120[6] = { 't', 'z', 'a', 'r', 'r', 'a' };
+static const symbol s_1_121[5] = { 'k', 'o', 'r', 'r', 'a' };
+static const symbol s_1_122[3] = { 't', 'r', 'a' };
+static const symbol s_1_123[2] = { 's', 'a' };
+static const symbol s_1_124[3] = { 'o', 's', 'a' };
+static const symbol s_1_125[2] = { 't', 'a' };
+static const symbol s_1_126[3] = { 'e', 't', 'a' };
+static const symbol s_1_127[4] = { 'k', 'e', 't', 'a' };
+static const symbol s_1_128[3] = { 's', 't', 'a' };
+static const symbol s_1_129[3] = { 'd', 'u', 'a' };
+static const symbol s_1_130[6] = { 'm', 'e', 'n', 'd', 'u', 'a' };
+static const symbol s_1_131[5] = { 'o', 'r', 'd', 'u', 'a' };
+static const symbol s_1_132[5] = { 'l', 'e', 'k', 'u', 'a' };
+static const symbol s_1_133[5] = { 'b', 'u', 'r', 'u', 'a' };
+static const symbol s_1_134[5] = { 'd', 'u', 'r', 'u', 'a' };
+static const symbol s_1_135[4] = { 't', 's', 'u', 'a' };
+static const symbol s_1_136[3] = { 't', 'u', 'a' };
+static const symbol s_1_137[6] = { 'm', 'e', 'n', 't', 'u', 'a' };
+static const symbol s_1_138[5] = { 'e', 's', 't', 'u', 'a' };
+static const symbol s_1_139[4] = { 't', 'x', 'u', 'a' };
+static const symbol s_1_140[3] = { 'z', 'u', 'a' };
+static const symbol s_1_141[4] = { 't', 'z', 'u', 'a' };
+static const symbol s_1_142[2] = { 'z', 'a' };
+static const symbol s_1_143[3] = { 'e', 'z', 'a' };
+static const symbol s_1_144[5] = { 'e', 'r', 'o', 'z', 'a' };
+static const symbol s_1_145[3] = { 't', 'z', 'a' };
+static const symbol s_1_146[6] = { 'k', 'o', 'i', 't', 'z', 'a' };
+static const symbol s_1_147[5] = { 'a', 'n', 't', 'z', 'a' };
+static const symbol s_1_148[6] = { 'g', 'i', 'n', 't', 'z', 'a' };
+static const symbol s_1_149[6] = { 'k', 'i', 'n', 't', 'z', 'a' };
+static const symbol s_1_150[6] = { 'k', 'u', 'n', 't', 'z', 'a' };
+static const symbol s_1_151[4] = { 'g', 'a', 'b', 'e' };
+static const symbol s_1_152[4] = { 'k', 'a', 'b', 'e' };
+static const symbol s_1_153[4] = { 'k', 'i', 'd', 'e' };
+static const symbol s_1_154[4] = { 'a', 'l', 'd', 'e' };
+static const symbol s_1_155[5] = { 'k', 'a', 'l', 'd', 'e' };
+static const symbol s_1_156[5] = { 't', 'a', 'l', 'd', 'e' };
+static const symbol s_1_157[4] = { 'o', 'r', 'd', 'e' };
+static const symbol s_1_158[2] = { 'g', 'e' };
+static const symbol s_1_159[4] = { 'z', 'a', 'l', 'e' };
+static const symbol s_1_160[5] = { 't', 'z', 'a', 'l', 'e' };
+static const symbol s_1_161[4] = { 'g', 'i', 'l', 'e' };
+static const symbol s_1_162[3] = { 'e', 'm', 'e' };
+static const symbol s_1_163[4] = { 'k', 'u', 'm', 'e' };
+static const symbol s_1_164[2] = { 'n', 'e' };
+static const symbol s_1_165[5] = { 'z', 'i', 'o', 'n', 'e' };
+static const symbol s_1_166[3] = { 'u', 'n', 'e' };
+static const symbol s_1_167[4] = { 'g', 'u', 'n', 'e' };
+static const symbol s_1_168[2] = { 'p', 'e' };
+static const symbol s_1_169[5] = { 'a', 'u', 'r', 'r', 'e' };
+static const symbol s_1_170[2] = { 't', 'e' };
+static const symbol s_1_171[4] = { 'k', 'o', 't', 'e' };
+static const symbol s_1_172[4] = { 'a', 'r', 't', 'e' };
+static const symbol s_1_173[4] = { 'o', 's', 't', 'e' };
+static const symbol s_1_174[4] = { 'e', 't', 'x', 'e' };
+static const symbol s_1_175[3] = { 'g', 'a', 'i' };
+static const symbol s_1_176[2] = { 'd', 'i' };
+static const symbol s_1_177[4] = { 'a', 'l', 'd', 'i' };
+static const symbol s_1_178[5] = { 't', 'a', 'l', 'd', 'i' };
+static const symbol s_1_179[5] = { 'g', 'e', 'l', 'd', 'i' };
+static const symbol s_1_180[5] = { 'h', 'a', 'n', 'd', 'i' };
+static const symbol s_1_181[5] = { 'm', 'e', 'n', 'd', 'i' };
+static const symbol s_1_182[3] = { 'g', 'e', 'i' };
+static const symbol s_1_183[3] = { 'e', 'g', 'i' };
+static const symbol s_1_184[4] = { 'd', 'e', 'g', 'i' };
+static const symbol s_1_185[4] = { 't', 'e', 'g', 'i' };
+static const symbol s_1_186[4] = { 'n', 'a', 'h', 'i' };
+static const symbol s_1_187[3] = { 'o', 'h', 'i' };
+static const symbol s_1_188[2] = { 'k', 'i' };
+static const symbol s_1_189[4] = { 't', 'o', 'k', 'i' };
+static const symbol s_1_190[2] = { 'o', 'i' };
+static const symbol s_1_191[3] = { 'g', 'o', 'i' };
+static const symbol s_1_192[3] = { 'k', 'o', 'i' };
+static const symbol s_1_193[3] = { 'a', 'r', 'i' };
+static const symbol s_1_194[4] = { 'k', 'a', 'r', 'i' };
+static const symbol s_1_195[4] = { 'l', 'a', 'r', 'i' };
+static const symbol s_1_196[4] = { 't', 'a', 'r', 'i' };
+static const symbol s_1_197[5] = { 'g', 'a', 'r', 'r', 'i' };
+static const symbol s_1_198[5] = { 'l', 'a', 'r', 'r', 'i' };
+static const symbol s_1_199[5] = { 'k', 'i', 'r', 'r', 'i' };
+static const symbol s_1_200[4] = { 'd', 'u', 'r', 'i' };
+static const symbol s_1_201[3] = { 'a', 's', 'i' };
+static const symbol s_1_202[2] = { 't', 'i' };
+static const symbol s_1_203[5] = { 'o', 'n', 't', 'z', 'i' };
+static const symbol s_1_204[2] = { 0xF1, 'i' };
+static const symbol s_1_205[2] = { 'a', 'k' };
+static const symbol s_1_206[2] = { 'e', 'k' };
+static const symbol s_1_207[5] = { 't', 'a', 'r', 'i', 'k' };
+static const symbol s_1_208[5] = { 'g', 'i', 'b', 'e', 'l' };
+static const symbol s_1_209[3] = { 'a', 'i', 'l' };
+static const symbol s_1_210[4] = { 'k', 'a', 'i', 'l' };
+static const symbol s_1_211[3] = { 'k', 'a', 'n' };
+static const symbol s_1_212[3] = { 't', 'a', 'n' };
+static const symbol s_1_213[4] = { 'e', 't', 'a', 'n' };
+static const symbol s_1_214[2] = { 'e', 'n' };
+static const symbol s_1_215[3] = { 'r', 'e', 'n' };
+static const symbol s_1_216[6] = { 'g', 'a', 'r', 'r', 'e', 'n' };
+static const symbol s_1_217[6] = { 'g', 'e', 'r', 'r', 'e', 'n' };
+static const symbol s_1_218[5] = { 'u', 'r', 'r', 'e', 'n' };
+static const symbol s_1_219[3] = { 't', 'e', 'n' };
+static const symbol s_1_220[4] = { 't', 'z', 'e', 'n' };
+static const symbol s_1_221[4] = { 'z', 'a', 'i', 'n' };
+static const symbol s_1_222[5] = { 't', 'z', 'a', 'i', 'n' };
+static const symbol s_1_223[3] = { 'k', 'i', 'n' };
+static const symbol s_1_224[3] = { 'm', 'i', 'n' };
+static const symbol s_1_225[3] = { 'd', 'u', 'n' };
+static const symbol s_1_226[4] = { 'a', 's', 'u', 'n' };
+static const symbol s_1_227[5] = { 't', 'a', 's', 'u', 'n' };
+static const symbol s_1_228[5] = { 'a', 'i', 'z', 'u', 'n' };
+static const symbol s_1_229[4] = { 'o', 'n', 'd', 'o' };
+static const symbol s_1_230[5] = { 'k', 'o', 'n', 'd', 'o' };
+static const symbol s_1_231[2] = { 'g', 'o' };
+static const symbol s_1_232[3] = { 'n', 'g', 'o' };
+static const symbol s_1_233[3] = { 'z', 'i', 'o' };
+static const symbol s_1_234[2] = { 'k', 'o' };
+static const symbol s_1_235[5] = { 't', 'r', 'a', 'k', 'o' };
+static const symbol s_1_236[4] = { 't', 'a', 'k', 'o' };
+static const symbol s_1_237[5] = { 'e', 't', 'a', 'k', 'o' };
+static const symbol s_1_238[3] = { 'e', 'k', 'o' };
+static const symbol s_1_239[6] = { 't', 'a', 'r', 'i', 'k', 'o' };
+static const symbol s_1_240[3] = { 's', 'k', 'o' };
+static const symbol s_1_241[4] = { 't', 'u', 'k', 'o' };
+static const symbol s_1_242[8] = { 'm', 'i', 'n', 'u', 't', 'u', 'k', 'o' };
+static const symbol s_1_243[3] = { 'z', 'k', 'o' };
+static const symbol s_1_244[2] = { 'n', 'o' };
+static const symbol s_1_245[4] = { 'z', 'i', 'n', 'o' };
+static const symbol s_1_246[2] = { 'r', 'o' };
+static const symbol s_1_247[3] = { 'a', 'r', 'o' };
+static const symbol s_1_248[5] = { 'i', 'g', 'a', 'r', 'o' };
+static const symbol s_1_249[4] = { 't', 'a', 'r', 'o' };
+static const symbol s_1_250[4] = { 'z', 'a', 'r', 'o' };
+static const symbol s_1_251[3] = { 'e', 'r', 'o' };
+static const symbol s_1_252[4] = { 'g', 'i', 'r', 'o' };
+static const symbol s_1_253[3] = { 'o', 'r', 'o' };
+static const symbol s_1_254[3] = { 'o', 's', 'o' };
+static const symbol s_1_255[2] = { 't', 'o' };
+static const symbol s_1_256[3] = { 't', 't', 'o' };
+static const symbol s_1_257[3] = { 'z', 't', 'o' };
+static const symbol s_1_258[3] = { 't', 'x', 'o' };
+static const symbol s_1_259[3] = { 't', 'z', 'o' };
+static const symbol s_1_260[6] = { 'g', 'i', 'n', 't', 'z', 'o' };
+static const symbol s_1_261[2] = { 0xF1, 'o' };
+static const symbol s_1_262[2] = { 'z', 'p' };
+static const symbol s_1_263[2] = { 'a', 'r' };
+static const symbol s_1_264[3] = { 'd', 'a', 'r' };
+static const symbol s_1_265[5] = { 'b', 'e', 'h', 'a', 'r' };
+static const symbol s_1_266[5] = { 'z', 'e', 'h', 'a', 'r' };
+static const symbol s_1_267[4] = { 'l', 'i', 'a', 'r' };
+static const symbol s_1_268[4] = { 't', 'i', 'a', 'r' };
+static const symbol s_1_269[3] = { 't', 'a', 'r' };
+static const symbol s_1_270[4] = { 't', 'z', 'a', 'r' };
+static const symbol s_1_271[2] = { 'o', 'r' };
+static const symbol s_1_272[3] = { 'k', 'o', 'r' };
+static const symbol s_1_273[2] = { 'o', 's' };
+static const symbol s_1_274[3] = { 'k', 'e', 't' };
+static const symbol s_1_275[2] = { 'd', 'u' };
+static const symbol s_1_276[5] = { 'm', 'e', 'n', 'd', 'u' };
+static const symbol s_1_277[4] = { 'o', 'r', 'd', 'u' };
+static const symbol s_1_278[4] = { 'l', 'e', 'k', 'u' };
+static const symbol s_1_279[4] = { 'b', 'u', 'r', 'u' };
+static const symbol s_1_280[4] = { 'd', 'u', 'r', 'u' };
+static const symbol s_1_281[3] = { 't', 's', 'u' };
+static const symbol s_1_282[2] = { 't', 'u' };
+static const symbol s_1_283[4] = { 't', 'a', 't', 'u' };
+static const symbol s_1_284[5] = { 'm', 'e', 'n', 't', 'u' };
+static const symbol s_1_285[4] = { 'e', 's', 't', 'u' };
+static const symbol s_1_286[3] = { 't', 'x', 'u' };
+static const symbol s_1_287[2] = { 'z', 'u' };
+static const symbol s_1_288[3] = { 't', 'z', 'u' };
+static const symbol s_1_289[6] = { 'g', 'i', 'n', 't', 'z', 'u' };
+static const symbol s_1_290[1] = { 'z' };
+static const symbol s_1_291[2] = { 'e', 'z' };
+static const symbol s_1_292[4] = { 'e', 'r', 'o', 'z' };
+static const symbol s_1_293[2] = { 't', 'z' };
+static const symbol s_1_294[5] = { 'k', 'o', 'i', 't', 'z' };
+
+static const struct among a_1[295] =
+{
+/*  0 */ { 3, s_1_0, -1, 1, 0},
+/*  1 */ { 4, s_1_1, 0, 1, 0},
+/*  2 */ { 4, s_1_2, -1, 1, 0},
+/*  3 */ { 5, s_1_3, -1, 1, 0},
+/*  4 */ { 5, s_1_4, -1, 1, 0},
+/*  5 */ { 5, s_1_5, -1, 1, 0},
+/*  6 */ { 5, s_1_6, -1, 1, 0},
+/*  7 */ { 6, s_1_7, 6, 1, 0},
+/*  8 */ { 6, s_1_8, 6, 1, 0},
+/*  9 */ { 5, s_1_9, -1, 1, 0},
+/* 10 */ { 5, s_1_10, -1, 1, 0},
+/* 11 */ { 6, s_1_11, 10, 1, 0},
+/* 12 */ { 5, s_1_12, -1, 1, 0},
+/* 13 */ { 4, s_1_13, -1, 1, 0},
+/* 14 */ { 5, s_1_14, -1, 1, 0},
+/* 15 */ { 3, s_1_15, -1, 1, 0},
+/* 16 */ { 4, s_1_16, 15, 1, 0},
+/* 17 */ { 6, s_1_17, 15, 1, 0},
+/* 18 */ { 4, s_1_18, 15, 1, 0},
+/* 19 */ { 5, s_1_19, 18, 1, 0},
+/* 20 */ { 3, s_1_20, -1, 1, 0},
+/* 21 */ { 6, s_1_21, -1, 1, 0},
+/* 22 */ { 3, s_1_22, -1, 1, 0},
+/* 23 */ { 5, s_1_23, 22, 1, 0},
+/* 24 */ { 5, s_1_24, 22, 1, 0},
+/* 25 */ { 5, s_1_25, 22, 1, 0},
+/* 26 */ { 5, s_1_26, -1, 1, 0},
+/* 27 */ { 2, s_1_27, -1, 1, 0},
+/* 28 */ { 4, s_1_28, 27, 1, 0},
+/* 29 */ { 4, s_1_29, -1, 1, 0},
+/* 30 */ { 5, s_1_30, -1, 1, 0},
+/* 31 */ { 6, s_1_31, 30, 1, 0},
+/* 32 */ { 6, s_1_32, -1, 1, 0},
+/* 33 */ { 6, s_1_33, -1, 1, 0},
+/* 34 */ { 4, s_1_34, -1, 1, 0},
+/* 35 */ { 4, s_1_35, -1, 1, 0},
+/* 36 */ { 5, s_1_36, 35, 1, 0},
+/* 37 */ { 5, s_1_37, 35, 1, 0},
+/* 38 */ { 5, s_1_38, -1, 1, 0},
+/* 39 */ { 4, s_1_39, -1, 1, 0},
+/* 40 */ { 3, s_1_40, -1, 1, 0},
+/* 41 */ { 5, s_1_41, 40, 1, 0},
+/* 42 */ { 3, s_1_42, -1, 1, 0},
+/* 43 */ { 4, s_1_43, 42, 1, 0},
+/* 44 */ { 4, s_1_44, -1, 1, 0},
+/* 45 */ { 5, s_1_45, 44, 1, 0},
+/* 46 */ { 5, s_1_46, 44, 1, 0},
+/* 47 */ { 5, s_1_47, 44, 1, 0},
+/* 48 */ { 4, s_1_48, -1, 1, 0},
+/* 49 */ { 5, s_1_49, 48, 1, 0},
+/* 50 */ { 5, s_1_50, 48, 1, 0},
+/* 51 */ { 6, s_1_51, -1, 2, 0},
+/* 52 */ { 6, s_1_52, -1, 1, 0},
+/* 53 */ { 6, s_1_53, -1, 1, 0},
+/* 54 */ { 5, s_1_54, -1, 1, 0},
+/* 55 */ { 4, s_1_55, -1, 1, 0},
+/* 56 */ { 3, s_1_56, -1, 1, 0},
+/* 57 */ { 4, s_1_57, -1, 1, 0},
+/* 58 */ { 5, s_1_58, -1, 1, 0},
+/* 59 */ { 6, s_1_59, -1, 1, 0},
+/* 60 */ { 2, s_1_60, -1, 1, 0},
+/* 61 */ { 4, s_1_61, 60, 3, 0},
+/* 62 */ { 5, s_1_62, 60, 10, 0},
+/* 63 */ { 3, s_1_63, 60, 1, 0},
+/* 64 */ { 3, s_1_64, 60, 1, 0},
+/* 65 */ { 3, s_1_65, 60, 1, 0},
+/* 66 */ { 6, s_1_66, -1, 1, 0},
+/* 67 */ { 4, s_1_67, -1, 1, 0},
+/* 68 */ { 5, s_1_68, -1, 1, 0},
+/* 69 */ { 5, s_1_69, -1, 1, 0},
+/* 70 */ { 4, s_1_70, -1, 1, 0},
+/* 71 */ { 3, s_1_71, -1, 1, 0},
+/* 72 */ { 2, s_1_72, -1, 1, 0},
+/* 73 */ { 4, s_1_73, 72, 1, 0},
+/* 74 */ { 3, s_1_74, 72, 1, 0},
+/* 75 */ { 7, s_1_75, 74, 1, 0},
+/* 76 */ { 7, s_1_76, 74, 1, 0},
+/* 77 */ { 6, s_1_77, 74, 1, 0},
+/* 78 */ { 5, s_1_78, 72, 1, 0},
+/* 79 */ { 6, s_1_79, 78, 1, 0},
+/* 80 */ { 4, s_1_80, 72, 1, 0},
+/* 81 */ { 4, s_1_81, 72, 1, 0},
+/* 82 */ { 5, s_1_82, 72, 1, 0},
+/* 83 */ { 3, s_1_83, 72, 1, 0},
+/* 84 */ { 4, s_1_84, 83, 1, 0},
+/* 85 */ { 5, s_1_85, 83, 1, 0},
+/* 86 */ { 6, s_1_86, 85, 1, 0},
+/* 87 */ { 5, s_1_87, -1, 1, 0},
+/* 88 */ { 6, s_1_88, 87, 1, 0},
+/* 89 */ { 4, s_1_89, -1, 1, 0},
+/* 90 */ { 4, s_1_90, -1, 1, 0},
+/* 91 */ { 3, s_1_91, -1, 1, 0},
+/* 92 */ { 5, s_1_92, 91, 1, 0},
+/* 93 */ { 4, s_1_93, 91, 1, 0},
+/* 94 */ { 3, s_1_94, -1, 1, 0},
+/* 95 */ { 5, s_1_95, 94, 1, 0},
+/* 96 */ { 4, s_1_96, -1, 1, 0},
+/* 97 */ { 5, s_1_97, 96, 1, 0},
+/* 98 */ { 5, s_1_98, 96, 1, 0},
+/* 99 */ { 4, s_1_99, -1, 1, 0},
+/*100 */ { 4, s_1_100, -1, 1, 0},
+/*101 */ { 4, s_1_101, -1, 1, 0},
+/*102 */ { 3, s_1_102, -1, 1, 0},
+/*103 */ { 4, s_1_103, 102, 1, 0},
+/*104 */ { 4, s_1_104, 102, 1, 0},
+/*105 */ { 4, s_1_105, -1, 1, 0},
+/*106 */ { 4, s_1_106, -1, 1, 0},
+/*107 */ { 3, s_1_107, -1, 1, 0},
+/*108 */ { 2, s_1_108, -1, 1, 0},
+/*109 */ { 3, s_1_109, 108, 1, 0},
+/*110 */ { 4, s_1_110, 109, 1, 0},
+/*111 */ { 5, s_1_111, 109, 1, 0},
+/*112 */ { 5, s_1_112, 109, 1, 0},
+/*113 */ { 4, s_1_113, 109, 1, 0},
+/*114 */ { 5, s_1_114, 113, 1, 0},
+/*115 */ { 5, s_1_115, 109, 1, 0},
+/*116 */ { 4, s_1_116, 108, 1, 0},
+/*117 */ { 4, s_1_117, 108, 1, 0},
+/*118 */ { 4, s_1_118, 108, 1, 0},
+/*119 */ { 3, s_1_119, 108, 2, 0},
+/*120 */ { 6, s_1_120, 108, 1, 0},
+/*121 */ { 5, s_1_121, 108, 1, 0},
+/*122 */ { 3, s_1_122, 108, 1, 0},
+/*123 */ { 2, s_1_123, -1, 1, 0},
+/*124 */ { 3, s_1_124, 123, 1, 0},
+/*125 */ { 2, s_1_125, -1, 1, 0},
+/*126 */ { 3, s_1_126, 125, 1, 0},
+/*127 */ { 4, s_1_127, 126, 1, 0},
+/*128 */ { 3, s_1_128, 125, 1, 0},
+/*129 */ { 3, s_1_129, -1, 1, 0},
+/*130 */ { 6, s_1_130, 129, 1, 0},
+/*131 */ { 5, s_1_131, 129, 1, 0},
+/*132 */ { 5, s_1_132, -1, 1, 0},
+/*133 */ { 5, s_1_133, -1, 1, 0},
+/*134 */ { 5, s_1_134, -1, 1, 0},
+/*135 */ { 4, s_1_135, -1, 1, 0},
+/*136 */ { 3, s_1_136, -1, 1, 0},
+/*137 */ { 6, s_1_137, 136, 1, 0},
+/*138 */ { 5, s_1_138, 136, 1, 0},
+/*139 */ { 4, s_1_139, -1, 1, 0},
+/*140 */ { 3, s_1_140, -1, 1, 0},
+/*141 */ { 4, s_1_141, 140, 1, 0},
+/*142 */ { 2, s_1_142, -1, 1, 0},
+/*143 */ { 3, s_1_143, 142, 1, 0},
+/*144 */ { 5, s_1_144, 142, 1, 0},
+/*145 */ { 3, s_1_145, 142, 2, 0},
+/*146 */ { 6, s_1_146, 145, 1, 0},
+/*147 */ { 5, s_1_147, 145, 1, 0},
+/*148 */ { 6, s_1_148, 145, 1, 0},
+/*149 */ { 6, s_1_149, 145, 1, 0},
+/*150 */ { 6, s_1_150, 145, 1, 0},
+/*151 */ { 4, s_1_151, -1, 1, 0},
+/*152 */ { 4, s_1_152, -1, 1, 0},
+/*153 */ { 4, s_1_153, -1, 1, 0},
+/*154 */ { 4, s_1_154, -1, 1, 0},
+/*155 */ { 5, s_1_155, 154, 1, 0},
+/*156 */ { 5, s_1_156, 154, 1, 0},
+/*157 */ { 4, s_1_157, -1, 1, 0},
+/*158 */ { 2, s_1_158, -1, 1, 0},
+/*159 */ { 4, s_1_159, -1, 1, 0},
+/*160 */ { 5, s_1_160, 159, 1, 0},
+/*161 */ { 4, s_1_161, -1, 1, 0},
+/*162 */ { 3, s_1_162, -1, 1, 0},
+/*163 */ { 4, s_1_163, -1, 1, 0},
+/*164 */ { 2, s_1_164, -1, 1, 0},
+/*165 */ { 5, s_1_165, 164, 1, 0},
+/*166 */ { 3, s_1_166, 164, 1, 0},
+/*167 */ { 4, s_1_167, 166, 1, 0},
+/*168 */ { 2, s_1_168, -1, 1, 0},
+/*169 */ { 5, s_1_169, -1, 1, 0},
+/*170 */ { 2, s_1_170, -1, 1, 0},
+/*171 */ { 4, s_1_171, 170, 1, 0},
+/*172 */ { 4, s_1_172, 170, 1, 0},
+/*173 */ { 4, s_1_173, 170, 1, 0},
+/*174 */ { 4, s_1_174, -1, 1, 0},
+/*175 */ { 3, s_1_175, -1, 1, 0},
+/*176 */ { 2, s_1_176, -1, 1, 0},
+/*177 */ { 4, s_1_177, 176, 1, 0},
+/*178 */ { 5, s_1_178, 177, 1, 0},
+/*179 */ { 5, s_1_179, 176, 8, 0},
+/*180 */ { 5, s_1_180, 176, 1, 0},
+/*181 */ { 5, s_1_181, 176, 1, 0},
+/*182 */ { 3, s_1_182, -1, 1, 0},
+/*183 */ { 3, s_1_183, -1, 1, 0},
+/*184 */ { 4, s_1_184, 183, 1, 0},
+/*185 */ { 4, s_1_185, 183, 1, 0},
+/*186 */ { 4, s_1_186, -1, 1, 0},
+/*187 */ { 3, s_1_187, -1, 1, 0},
+/*188 */ { 2, s_1_188, -1, 1, 0},
+/*189 */ { 4, s_1_189, 188, 1, 0},
+/*190 */ { 2, s_1_190, -1, 1, 0},
+/*191 */ { 3, s_1_191, 190, 1, 0},
+/*192 */ { 3, s_1_192, 190, 1, 0},
+/*193 */ { 3, s_1_193, -1, 1, 0},
+/*194 */ { 4, s_1_194, 193, 1, 0},
+/*195 */ { 4, s_1_195, 193, 1, 0},
+/*196 */ { 4, s_1_196, 193, 1, 0},
+/*197 */ { 5, s_1_197, -1, 2, 0},
+/*198 */ { 5, s_1_198, -1, 1, 0},
+/*199 */ { 5, s_1_199, -1, 1, 0},
+/*200 */ { 4, s_1_200, -1, 1, 0},
+/*201 */ { 3, s_1_201, -1, 1, 0},
+/*202 */ { 2, s_1_202, -1, 1, 0},
+/*203 */ { 5, s_1_203, -1, 1, 0},
+/*204 */ { 2, s_1_204, -1, 1, 0},
+/*205 */ { 2, s_1_205, -1, 1, 0},
+/*206 */ { 2, s_1_206, -1, 1, 0},
+/*207 */ { 5, s_1_207, -1, 1, 0},
+/*208 */ { 5, s_1_208, -1, 1, 0},
+/*209 */ { 3, s_1_209, -1, 1, 0},
+/*210 */ { 4, s_1_210, 209, 1, 0},
+/*211 */ { 3, s_1_211, -1, 1, 0},
+/*212 */ { 3, s_1_212, -1, 1, 0},
+/*213 */ { 4, s_1_213, 212, 1, 0},
+/*214 */ { 2, s_1_214, -1, 4, 0},
+/*215 */ { 3, s_1_215, 214, 2, 0},
+/*216 */ { 6, s_1_216, 215, 1, 0},
+/*217 */ { 6, s_1_217, 215, 1, 0},
+/*218 */ { 5, s_1_218, 215, 1, 0},
+/*219 */ { 3, s_1_219, 214, 4, 0},
+/*220 */ { 4, s_1_220, 214, 4, 0},
+/*221 */ { 4, s_1_221, -1, 1, 0},
+/*222 */ { 5, s_1_222, 221, 1, 0},
+/*223 */ { 3, s_1_223, -1, 1, 0},
+/*224 */ { 3, s_1_224, -1, 1, 0},
+/*225 */ { 3, s_1_225, -1, 1, 0},
+/*226 */ { 4, s_1_226, -1, 1, 0},
+/*227 */ { 5, s_1_227, 226, 1, 0},
+/*228 */ { 5, s_1_228, -1, 1, 0},
+/*229 */ { 4, s_1_229, -1, 1, 0},
+/*230 */ { 5, s_1_230, 229, 1, 0},
+/*231 */ { 2, s_1_231, -1, 1, 0},
+/*232 */ { 3, s_1_232, 231, 1, 0},
+/*233 */ { 3, s_1_233, -1, 1, 0},
+/*234 */ { 2, s_1_234, -1, 1, 0},
+/*235 */ { 5, s_1_235, 234, 5, 0},
+/*236 */ { 4, s_1_236, 234, 1, 0},
+/*237 */ { 5, s_1_237, 236, 1, 0},
+/*238 */ { 3, s_1_238, 234, 1, 0},
+/*239 */ { 6, s_1_239, 234, 1, 0},
+/*240 */ { 3, s_1_240, 234, 1, 0},
+/*241 */ { 4, s_1_241, 234, 1, 0},
+/*242 */ { 8, s_1_242, 241, 6, 0},
+/*243 */ { 3, s_1_243, 234, 1, 0},
+/*244 */ { 2, s_1_244, -1, 1, 0},
+/*245 */ { 4, s_1_245, 244, 1, 0},
+/*246 */ { 2, s_1_246, -1, 1, 0},
+/*247 */ { 3, s_1_247, 246, 1, 0},
+/*248 */ { 5, s_1_248, 247, 9, 0},
+/*249 */ { 4, s_1_249, 247, 1, 0},
+/*250 */ { 4, s_1_250, 247, 1, 0},
+/*251 */ { 3, s_1_251, 246, 1, 0},
+/*252 */ { 4, s_1_252, 246, 1, 0},
+/*253 */ { 3, s_1_253, 246, 1, 0},
+/*254 */ { 3, s_1_254, -1, 1, 0},
+/*255 */ { 2, s_1_255, -1, 1, 0},
+/*256 */ { 3, s_1_256, 255, 1, 0},
+/*257 */ { 3, s_1_257, 255, 1, 0},
+/*258 */ { 3, s_1_258, -1, 1, 0},
+/*259 */ { 3, s_1_259, -1, 1, 0},
+/*260 */ { 6, s_1_260, 259, 1, 0},
+/*261 */ { 2, s_1_261, -1, 1, 0},
+/*262 */ { 2, s_1_262, -1, 1, 0},
+/*263 */ { 2, s_1_263, -1, 1, 0},
+/*264 */ { 3, s_1_264, 263, 1, 0},
+/*265 */ { 5, s_1_265, 263, 1, 0},
+/*266 */ { 5, s_1_266, 263, 7, 0},
+/*267 */ { 4, s_1_267, 263, 1, 0},
+/*268 */ { 4, s_1_268, 263, 1, 0},
+/*269 */ { 3, s_1_269, 263, 1, 0},
+/*270 */ { 4, s_1_270, 263, 1, 0},
+/*271 */ { 2, s_1_271, -1, 2, 0},
+/*272 */ { 3, s_1_272, 271, 1, 0},
+/*273 */ { 2, s_1_273, -1, 1, 0},
+/*274 */ { 3, s_1_274, -1, 1, 0},
+/*275 */ { 2, s_1_275, -1, 1, 0},
+/*276 */ { 5, s_1_276, 275, 1, 0},
+/*277 */ { 4, s_1_277, 275, 1, 0},
+/*278 */ { 4, s_1_278, -1, 1, 0},
+/*279 */ { 4, s_1_279, -1, 2, 0},
+/*280 */ { 4, s_1_280, -1, 1, 0},
+/*281 */ { 3, s_1_281, -1, 1, 0},
+/*282 */ { 2, s_1_282, -1, 1, 0},
+/*283 */ { 4, s_1_283, 282, 4, 0},
+/*284 */ { 5, s_1_284, 282, 1, 0},
+/*285 */ { 4, s_1_285, 282, 1, 0},
+/*286 */ { 3, s_1_286, -1, 1, 0},
+/*287 */ { 2, s_1_287, -1, 1, 0},
+/*288 */ { 3, s_1_288, 287, 1, 0},
+/*289 */ { 6, s_1_289, 288, 1, 0},
+/*290 */ { 1, s_1_290, -1, 1, 0},
+/*291 */ { 2, s_1_291, 290, 1, 0},
+/*292 */ { 4, s_1_292, 290, 1, 0},
+/*293 */ { 2, s_1_293, 290, 1, 0},
+/*294 */ { 5, s_1_294, 293, 1, 0}
+};
+
+static const symbol s_2_0[4] = { 'z', 'l', 'e', 'a' };
+static const symbol s_2_1[5] = { 'k', 'e', 'r', 'i', 'a' };
+static const symbol s_2_2[2] = { 'l', 'a' };
+static const symbol s_2_3[3] = { 'e', 'r', 'a' };
+static const symbol s_2_4[4] = { 'd', 'a', 'd', 'e' };
+static const symbol s_2_5[4] = { 't', 'a', 'd', 'e' };
+static const symbol s_2_6[4] = { 'd', 'a', 't', 'e' };
+static const symbol s_2_7[4] = { 't', 'a', 't', 'e' };
+static const symbol s_2_8[2] = { 'g', 'i' };
+static const symbol s_2_9[2] = { 'k', 'i' };
+static const symbol s_2_10[2] = { 'i', 'k' };
+static const symbol s_2_11[5] = { 'l', 'a', 'n', 'i', 'k' };
+static const symbol s_2_12[3] = { 'r', 'i', 'k' };
+static const symbol s_2_13[5] = { 'l', 'a', 'r', 'i', 'k' };
+static const symbol s_2_14[4] = { 'z', 't', 'i', 'k' };
+static const symbol s_2_15[2] = { 'g', 'o' };
+static const symbol s_2_16[2] = { 'r', 'o' };
+static const symbol s_2_17[3] = { 'e', 'r', 'o' };
+static const symbol s_2_18[2] = { 't', 'o' };
+
+static const struct among a_2[19] =
+{
+/*  0 */ { 4, s_2_0, -1, 2, 0},
+/*  1 */ { 5, s_2_1, -1, 1, 0},
+/*  2 */ { 2, s_2_2, -1, 1, 0},
+/*  3 */ { 3, s_2_3, -1, 1, 0},
+/*  4 */ { 4, s_2_4, -1, 1, 0},
+/*  5 */ { 4, s_2_5, -1, 1, 0},
+/*  6 */ { 4, s_2_6, -1, 1, 0},
+/*  7 */ { 4, s_2_7, -1, 1, 0},
+/*  8 */ { 2, s_2_8, -1, 1, 0},
+/*  9 */ { 2, s_2_9, -1, 1, 0},
+/* 10 */ { 2, s_2_10, -1, 1, 0},
+/* 11 */ { 5, s_2_11, 10, 1, 0},
+/* 12 */ { 3, s_2_12, 10, 1, 0},
+/* 13 */ { 5, s_2_13, 12, 1, 0},
+/* 14 */ { 4, s_2_14, 10, 1, 0},
+/* 15 */ { 2, s_2_15, -1, 1, 0},
+/* 16 */ { 2, s_2_16, -1, 1, 0},
+/* 17 */ { 3, s_2_17, 16, 1, 0},
+/* 18 */ { 2, s_2_18, -1, 1, 0}
+};
+
+static const unsigned char g_v[] = { 17, 65, 16 };
+
+static const symbol s_0[] = { 'a', 't', 's', 'e', 'd', 'e', 'n' };
+static const symbol s_1[] = { 'a', 'r', 'a', 'b', 'e', 'r', 'a' };
+static const symbol s_2[] = { 'b', 'a', 'd', 'i', 't', 'u' };
+static const symbol s_3[] = { 'j', 'o', 'k' };
+static const symbol s_4[] = { 't', 'r', 'a' };
+static const symbol s_5[] = { 'm', 'i', 'n', 'u', 't', 'u' };
+static const symbol s_6[] = { 'z', 'e', 'h', 'a', 'r' };
+static const symbol s_7[] = { 'g', 'e', 'l', 'd', 'i' };
+static const symbol s_8[] = { 'i', 'g', 'a', 'r', 'o' };
+static const symbol s_9[] = { 'a', 'u', 'r', 'k', 'a' };
+static const symbol s_10[] = { 'z' };
+
+static int r_mark_regions(struct SN_env * z) { /* forwardmode */
+    z->I[0] = z->l; /* $pV = <integer expression>, line 25 */
+    z->I[1] = z->l; /* $p1 = <integer expression>, line 26 */
+    z->I[2] = z->l; /* $p2 = <integer expression>, line 27 */
+    {   int c1 = z->c; /* do, line 29 */
+        {   int c2 = z->c; /* or, line 31 */
+            if (in_grouping(z, g_v, 97, 117, 0)) goto lab2; /* grouping v, line 30 */
+            {   int c3 = z->c; /* or, line 30 */
+                if (out_grouping(z, g_v, 97, 117, 0)) goto lab4; /* non v, line 30 */
+                {    /* gopast */ /* grouping v, line 30 */
+                    int ret = out_grouping(z, g_v, 97, 117, 1);
+                    if (ret < 0) goto lab4;
+                    z->c += ret;
+                }
+                goto lab3;
+            lab4:
+                z->c = c3;
+                if (in_grouping(z, g_v, 97, 117, 0)) goto lab2; /* grouping v, line 30 */
+                {    /* gopast */ /* non v, line 30 */
+                    int ret = in_grouping(z, g_v, 97, 117, 1);
+                    if (ret < 0) goto lab2;
+                    z->c += ret;
+                }
+            }
+        lab3:
+            goto lab1;
+        lab2:
+            z->c = c2;
+            if (out_grouping(z, g_v, 97, 117, 0)) goto lab0; /* non v, line 32 */
+            {   int c4 = z->c; /* or, line 32 */
+                if (out_grouping(z, g_v, 97, 117, 0)) goto lab6; /* non v, line 32 */
+                {    /* gopast */ /* grouping v, line 32 */
+                    int ret = out_grouping(z, g_v, 97, 117, 1);
+                    if (ret < 0) goto lab6;
+                    z->c += ret;
+                }
+                goto lab5;
+            lab6:
+                z->c = c4;
+                if (in_grouping(z, g_v, 97, 117, 0)) goto lab0; /* grouping v, line 32 */
+                if (z->c >= z->l) goto lab0;
+                z->c++; /* next, line 32 */
+            }
+        lab5:
+            ;
+        }
+    lab1:
+        z->I[0] = z->c; /* setmark pV, line 33 */
+    lab0:
+        z->c = c1;
+    }
+    {   int c5 = z->c; /* do, line 35 */
+        {    /* gopast */ /* grouping v, line 36 */
+            int ret = out_grouping(z, g_v, 97, 117, 1);
+            if (ret < 0) goto lab7;
+            z->c += ret;
+        }
+        {    /* gopast */ /* non v, line 36 */
+            int ret = in_grouping(z, g_v, 97, 117, 1);
+            if (ret < 0) goto lab7;
+            z->c += ret;
+        }
+        z->I[1] = z->c; /* setmark p1, line 36 */
+        {    /* gopast */ /* grouping v, line 37 */
+            int ret = out_grouping(z, g_v, 97, 117, 1);
+            if (ret < 0) goto lab7;
+            z->c += ret;
+        }
+        {    /* gopast */ /* non v, line 37 */
+            int ret = in_grouping(z, g_v, 97, 117, 1);
+            if (ret < 0) goto lab7;
+            z->c += ret;
+        }
+        z->I[2] = z->c; /* setmark p2, line 37 */
+    lab7:
+        z->c = c5;
+    }
+    return 1;
+}
+
+static int r_RV(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 43 */
+    return 1;
+}
+
+static int r_R2(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[2] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 44 */
+    return 1;
+}
+
+static int r_R1(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 45 */
+    return 1;
+}
+
+static int r_aditzak(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 48 */
+    if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((70566434 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 48 */
+    among_var = find_among_b(z, a_0, 109);
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 48 */
+    switch (among_var) { /* among, line 48 */
+        case 1:
+            {   int ret = r_RV(z); /* call RV, line 59 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 59 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R2(z); /* call R2, line 61 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 61 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 3:
+            {   int ret = slice_from_s(z, 7, s_0); /* <-, line 63 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 4:
+            {   int ret = slice_from_s(z, 7, s_1); /* <-, line 65 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 5:
+            {   int ret = slice_from_s(z, 6, s_2); /* <-, line 67 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+static int r_izenak(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 73 */
+    if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((71162402 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 73 */
+    among_var = find_among_b(z, a_1, 295);
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 73 */
+    switch (among_var) { /* among, line 73 */
+        case 1:
+            {   int ret = r_RV(z); /* call RV, line 103 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 103 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R2(z); /* call R2, line 105 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 105 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 3:
+            {   int ret = slice_from_s(z, 3, s_3); /* <-, line 107 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 4:
+            {   int ret = r_R1(z); /* call R1, line 109 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 109 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 5:
+            {   int ret = slice_from_s(z, 3, s_4); /* <-, line 111 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 6:
+            {   int ret = slice_from_s(z, 6, s_5); /* <-, line 113 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 7:
+            {   int ret = slice_from_s(z, 5, s_6); /* <-, line 115 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 8:
+            {   int ret = slice_from_s(z, 5, s_7); /* <-, line 117 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 9:
+            {   int ret = slice_from_s(z, 5, s_8); /* <-, line 119 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 10:
+            {   int ret = slice_from_s(z, 5, s_9); /* <-, line 121 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+static int r_adjetiboak(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 126 */
+    if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((35362 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 126 */
+    among_var = find_among_b(z, a_2, 19);
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 126 */
+    switch (among_var) { /* among, line 126 */
+        case 1:
+            {   int ret = r_RV(z); /* call RV, line 129 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 129 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = slice_from_s(z, 1, s_10); /* <-, line 131 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+extern int basque_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
+    /* do, line 138 */
+    {   int ret = r_mark_regions(z); /* call mark_regions, line 138 */
+        if (ret < 0) return ret;
+    }
+    z->lb = z->c; z->c = z->l; /* backwards, line 139 */
+
+/* repeat, line 140 */
+
+    while(1) {        int m1 = z->l - z->c; (void)m1;
+        {   int ret = r_aditzak(z); /* call aditzak, line 140 */
+            if (ret == 0) goto lab0;
+            if (ret < 0) return ret;
+        }
+        continue;
+    lab0:
+        z->c = z->l - m1;
+        break;
+    }
+/* repeat, line 141 */
+
+    while(1) {        int m2 = z->l - z->c; (void)m2;
+        {   int ret = r_izenak(z); /* call izenak, line 141 */
+            if (ret == 0) goto lab1;
+            if (ret < 0) return ret;
+        }
+        continue;
+    lab1:
+        z->c = z->l - m2;
+        break;
+    }
+    {   int m3 = z->l - z->c; (void)m3; /* do, line 142 */
+        {   int ret = r_adjetiboak(z); /* call adjetiboak, line 142 */
+            if (ret < 0) return ret;
+        }
+        z->c = z->l - m3;
+    }
+    z->c = z->lb;
+    return 1;
+}
+
+extern struct SN_env * basque_ISO_8859_1_create_env(void) { return SN_create_env(0, 3, 0); }
+
+extern void basque_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+
diff --git a/src/backend/snowball/libstemmer/stem_ISO_8859_1_catalan.c b/src/backend/snowball/libstemmer/stem_ISO_8859_1_catalan.c
new file mode 100644 (file)
index 0000000..87c0cad
--- /dev/null
@@ -0,0 +1,1447 @@
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
+
+#include "header.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern int catalan_ISO_8859_1_stem(struct SN_env * z);
+#ifdef __cplusplus
+}
+#endif
+static int r_residual_suffix(struct SN_env * z);
+static int r_verb_suffix(struct SN_env * z);
+static int r_standard_suffix(struct SN_env * z);
+static int r_attached_pronoun(struct SN_env * z);
+static int r_R2(struct SN_env * z);
+static int r_R1(struct SN_env * z);
+static int r_mark_regions(struct SN_env * z);
+static int r_cleaning(struct SN_env * z);
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+extern struct SN_env * catalan_ISO_8859_1_create_env(void);
+extern void catalan_ISO_8859_1_close_env(struct SN_env * z);
+
+
+#ifdef __cplusplus
+}
+#endif
+static const symbol s_0_1[1] = { 0xB7 };
+static const symbol s_0_2[1] = { 0xE0 };
+static const symbol s_0_3[1] = { 0xE1 };
+static const symbol s_0_4[1] = { 0xE8 };
+static const symbol s_0_5[1] = { 0xE9 };
+static const symbol s_0_6[1] = { 0xEC };
+static const symbol s_0_7[1] = { 0xED };
+static const symbol s_0_8[1] = { 0xEF };
+static const symbol s_0_9[1] = { 0xF2 };
+static const symbol s_0_10[1] = { 0xF3 };
+static const symbol s_0_11[1] = { 0xFA };
+static const symbol s_0_12[1] = { 0xFC };
+
+static const struct among a_0[13] =
+{
+/*  0 */ { 0, 0, -1, 7, 0},
+/*  1 */ { 1, s_0_1, 0, 6, 0},
+/*  2 */ { 1, s_0_2, 0, 1, 0},
+/*  3 */ { 1, s_0_3, 0, 1, 0},
+/*  4 */ { 1, s_0_4, 0, 2, 0},
+/*  5 */ { 1, s_0_5, 0, 2, 0},
+/*  6 */ { 1, s_0_6, 0, 3, 0},
+/*  7 */ { 1, s_0_7, 0, 3, 0},
+/*  8 */ { 1, s_0_8, 0, 3, 0},
+/*  9 */ { 1, s_0_9, 0, 4, 0},
+/* 10 */ { 1, s_0_10, 0, 4, 0},
+/* 11 */ { 1, s_0_11, 0, 5, 0},
+/* 12 */ { 1, s_0_12, 0, 5, 0}
+};
+
+static const symbol s_1_0[2] = { 'l', 'a' };
+static const symbol s_1_1[3] = { '-', 'l', 'a' };
+static const symbol s_1_2[4] = { 's', 'e', 'l', 'a' };
+static const symbol s_1_3[2] = { 'l', 'e' };
+static const symbol s_1_4[2] = { 'm', 'e' };
+static const symbol s_1_5[3] = { '-', 'm', 'e' };
+static const symbol s_1_6[2] = { 's', 'e' };
+static const symbol s_1_7[3] = { '-', 't', 'e' };
+static const symbol s_1_8[2] = { 'h', 'i' };
+static const symbol s_1_9[3] = { '\'', 'h', 'i' };
+static const symbol s_1_10[2] = { 'l', 'i' };
+static const symbol s_1_11[3] = { '-', 'l', 'i' };
+static const symbol s_1_12[2] = { '\'', 'l' };
+static const symbol s_1_13[2] = { '\'', 'm' };
+static const symbol s_1_14[2] = { '-', 'm' };
+static const symbol s_1_15[2] = { '\'', 'n' };
+static const symbol s_1_16[2] = { '-', 'n' };
+static const symbol s_1_17[2] = { 'h', 'o' };
+static const symbol s_1_18[3] = { '\'', 'h', 'o' };
+static const symbol s_1_19[2] = { 'l', 'o' };
+static const symbol s_1_20[4] = { 's', 'e', 'l', 'o' };
+static const symbol s_1_21[2] = { '\'', 's' };
+static const symbol s_1_22[3] = { 'l', 'a', 's' };
+static const symbol s_1_23[5] = { 's', 'e', 'l', 'a', 's' };
+static const symbol s_1_24[3] = { 'l', 'e', 's' };
+static const symbol s_1_25[4] = { '-', 'l', 'e', 's' };
+static const symbol s_1_26[3] = { '\'', 'l', 's' };
+static const symbol s_1_27[3] = { '-', 'l', 's' };
+static const symbol s_1_28[3] = { '\'', 'n', 's' };
+static const symbol s_1_29[3] = { '-', 'n', 's' };
+static const symbol s_1_30[3] = { 'e', 'n', 's' };
+static const symbol s_1_31[3] = { 'l', 'o', 's' };
+static const symbol s_1_32[5] = { 's', 'e', 'l', 'o', 's' };
+static const symbol s_1_33[3] = { 'n', 'o', 's' };
+static const symbol s_1_34[4] = { '-', 'n', 'o', 's' };
+static const symbol s_1_35[3] = { 'v', 'o', 's' };
+static const symbol s_1_36[2] = { 'u', 's' };
+static const symbol s_1_37[3] = { '-', 'u', 's' };
+static const symbol s_1_38[2] = { '\'', 't' };
+
+static const struct among a_1[39] =
+{
+/*  0 */ { 2, s_1_0, -1, 1, 0},
+/*  1 */ { 3, s_1_1, 0, 1, 0},
+/*  2 */ { 4, s_1_2, 0, 1, 0},
+/*  3 */ { 2, s_1_3, -1, 1, 0},
+/*  4 */ { 2, s_1_4, -1, 1, 0},
+/*  5 */ { 3, s_1_5, 4, 1, 0},
+/*  6 */ { 2, s_1_6, -1, 1, 0},
+/*  7 */ { 3, s_1_7, -1, 1, 0},
+/*  8 */ { 2, s_1_8, -1, 1, 0},
+/*  9 */ { 3, s_1_9, 8, 1, 0},
+/* 10 */ { 2, s_1_10, -1, 1, 0},
+/* 11 */ { 3, s_1_11, 10, 1, 0},
+/* 12 */ { 2, s_1_12, -1, 1, 0},
+/* 13 */ { 2, s_1_13, -1, 1, 0},
+/* 14 */ { 2, s_1_14, -1, 1, 0},
+/* 15 */ { 2, s_1_15, -1, 1, 0},
+/* 16 */ { 2, s_1_16, -1, 1, 0},
+/* 17 */ { 2, s_1_17, -1, 1, 0},
+/* 18 */ { 3, s_1_18, 17, 1, 0},
+/* 19 */ { 2, s_1_19, -1, 1, 0},
+/* 20 */ { 4, s_1_20, 19, 1, 0},
+/* 21 */ { 2, s_1_21, -1, 1, 0},
+/* 22 */ { 3, s_1_22, -1, 1, 0},
+/* 23 */ { 5, s_1_23, 22, 1, 0},
+/* 24 */ { 3, s_1_24, -1, 1, 0},
+/* 25 */ { 4, s_1_25, 24, 1, 0},
+/* 26 */ { 3, s_1_26, -1, 1, 0},
+/* 27 */ { 3, s_1_27, -1, 1, 0},
+/* 28 */ { 3, s_1_28, -1, 1, 0},
+/* 29 */ { 3, s_1_29, -1, 1, 0},
+/* 30 */ { 3, s_1_30, -1, 1, 0},
+/* 31 */ { 3, s_1_31, -1, 1, 0},
+/* 32 */ { 5, s_1_32, 31, 1, 0},
+/* 33 */ { 3, s_1_33, -1, 1, 0},
+/* 34 */ { 4, s_1_34, 33, 1, 0},
+/* 35 */ { 3, s_1_35, -1, 1, 0},
+/* 36 */ { 2, s_1_36, -1, 1, 0},
+/* 37 */ { 3, s_1_37, 36, 1, 0},
+/* 38 */ { 2, s_1_38, -1, 1, 0}
+};
+
+static const symbol s_2_0[3] = { 'i', 'c', 'a' };
+static const symbol s_2_1[6] = { 'l', 0xF3, 'g', 'i', 'c', 'a' };
+static const symbol s_2_2[4] = { 'e', 'n', 'c', 'a' };
+static const symbol s_2_3[3] = { 'a', 'd', 'a' };
+static const symbol s_2_4[5] = { 'a', 'n', 'c', 'i', 'a' };
+static const symbol s_2_5[5] = { 'e', 'n', 'c', 'i', 'a' };
+static const symbol s_2_6[5] = { 0xE8, 'n', 'c', 'i', 'a' };
+static const symbol s_2_7[4] = { 0xED, 'c', 'i', 'a' };
+static const symbol s_2_8[5] = { 'l', 'o', 'g', 'i', 'a' };
+static const symbol s_2_9[4] = { 'i', 'n', 'i', 'a' };
+static const symbol s_2_10[5] = { 0xED, 'i', 'n', 'i', 'a' };
+static const symbol s_2_11[4] = { 'e', 'r', 'i', 'a' };
+static const symbol s_2_12[4] = { 0xE0, 'r', 'i', 'a' };
+static const symbol s_2_13[6] = { 'a', 't', 0xF2, 'r', 'i', 'a' };
+static const symbol s_2_14[4] = { 'a', 'l', 'l', 'a' };
+static const symbol s_2_15[4] = { 'e', 'l', 'l', 'a' };
+static const symbol s_2_16[5] = { 0xED, 'v', 'o', 'l', 'a' };
+static const symbol s_2_17[3] = { 'i', 'm', 'a' };
+static const symbol s_2_18[6] = { 0xED, 's', 's', 'i', 'm', 'a' };
+static const symbol s_2_19[8] = { 'q', 'u', 0xED, 's', 's', 'i', 'm', 'a' };
+static const symbol s_2_20[3] = { 'a', 'n', 'a' };
+static const symbol s_2_21[3] = { 'i', 'n', 'a' };
+static const symbol s_2_22[3] = { 'e', 'r', 'a' };
+static const symbol s_2_23[5] = { 's', 'f', 'e', 'r', 'a' };
+static const symbol s_2_24[3] = { 'o', 'r', 'a' };
+static const symbol s_2_25[4] = { 'd', 'o', 'r', 'a' };
+static const symbol s_2_26[5] = { 'a', 'd', 'o', 'r', 'a' };
+static const symbol s_2_27[5] = { 'a', 'd', 'u', 'r', 'a' };
+static const symbol s_2_28[3] = { 'e', 's', 'a' };
+static const symbol s_2_29[3] = { 'o', 's', 'a' };
+static const symbol s_2_30[4] = { 'a', 's', 's', 'a' };
+static const symbol s_2_31[4] = { 'e', 's', 's', 'a' };
+static const symbol s_2_32[4] = { 'i', 's', 's', 'a' };
+static const symbol s_2_33[3] = { 'e', 't', 'a' };
+static const symbol s_2_34[3] = { 'i', 't', 'a' };
+static const symbol s_2_35[3] = { 'o', 't', 'a' };
+static const symbol s_2_36[4] = { 'i', 's', 't', 'a' };
+static const symbol s_2_37[7] = { 'i', 'a', 'l', 'i', 's', 't', 'a' };
+static const symbol s_2_38[7] = { 'i', 'o', 'n', 'i', 's', 't', 'a' };
+static const symbol s_2_39[3] = { 'i', 'v', 'a' };
+static const symbol s_2_40[5] = { 'a', 't', 'i', 'v', 'a' };
+static const symbol s_2_41[3] = { 'n', 0xE7, 'a' };
+static const symbol s_2_42[5] = { 'l', 'o', 'g', 0xED, 'a' };
+static const symbol s_2_43[2] = { 'i', 'c' };
+static const symbol s_2_44[5] = { 0xED, 's', 't', 'i', 'c' };
+static const symbol s_2_45[3] = { 'e', 'n', 'c' };
+static const symbol s_2_46[3] = { 'e', 's', 'c' };
+static const symbol s_2_47[2] = { 'u', 'd' };
+static const symbol s_2_48[4] = { 'a', 't', 'g', 'e' };
+static const symbol s_2_49[3] = { 'b', 'l', 'e' };
+static const symbol s_2_50[4] = { 'a', 'b', 'l', 'e' };
+static const symbol s_2_51[4] = { 'i', 'b', 'l', 'e' };
+static const symbol s_2_52[4] = { 'i', 's', 'm', 'e' };
+static const symbol s_2_53[7] = { 'i', 'a', 'l', 'i', 's', 'm', 'e' };
+static const symbol s_2_54[7] = { 'i', 'o', 'n', 'i', 's', 'm', 'e' };
+static const symbol s_2_55[6] = { 'i', 'v', 'i', 's', 'm', 'e' };
+static const symbol s_2_56[4] = { 'a', 'i', 'r', 'e' };
+static const symbol s_2_57[4] = { 'i', 'c', 't', 'e' };
+static const symbol s_2_58[4] = { 'i', 's', 't', 'e' };
+static const symbol s_2_59[3] = { 'i', 'c', 'i' };
+static const symbol s_2_60[3] = { 0xED, 'c', 'i' };
+static const symbol s_2_61[4] = { 'l', 'o', 'g', 'i' };
+static const symbol s_2_62[3] = { 'a', 'r', 'i' };
+static const symbol s_2_63[4] = { 't', 'o', 'r', 'i' };
+static const symbol s_2_64[2] = { 'a', 'l' };
+static const symbol s_2_65[2] = { 'i', 'l' };
+static const symbol s_2_66[3] = { 'a', 'l', 'l' };
+static const symbol s_2_67[3] = { 'e', 'l', 'l' };
+static const symbol s_2_68[4] = { 0xED, 'v', 'o', 'l' };
+static const symbol s_2_69[4] = { 'i', 's', 'a', 'm' };
+static const symbol s_2_70[5] = { 'i', 's', 's', 'e', 'm' };
+static const symbol s_2_71[5] = { 0xEC, 's', 's', 'e', 'm' };
+static const symbol s_2_72[5] = { 0xED, 's', 's', 'e', 'm' };
+static const symbol s_2_73[5] = { 0xED, 's', 's', 'i', 'm' };
+static const symbol s_2_74[7] = { 'q', 'u', 0xED, 's', 's', 'i', 'm' };
+static const symbol s_2_75[4] = { 'a', 'm', 'e', 'n' };
+static const symbol s_2_76[5] = { 0xEC, 's', 's', 'i', 'n' };
+static const symbol s_2_77[2] = { 'a', 'r' };
+static const symbol s_2_78[6] = { 'i', 'f', 'i', 'c', 'a', 'r' };
+static const symbol s_2_79[4] = { 'e', 'g', 'a', 'r' };
+static const symbol s_2_80[4] = { 'e', 'j', 'a', 'r' };
+static const symbol s_2_81[4] = { 'i', 't', 'a', 'r' };
+static const symbol s_2_82[5] = { 'i', 't', 'z', 'a', 'r' };
+static const symbol s_2_83[3] = { 'f', 'e', 'r' };
+static const symbol s_2_84[2] = { 'o', 'r' };
+static const symbol s_2_85[3] = { 'd', 'o', 'r' };
+static const symbol s_2_86[3] = { 'd', 'u', 'r' };
+static const symbol s_2_87[5] = { 'd', 'o', 'r', 'a', 's' };
+static const symbol s_2_88[3] = { 'i', 'c', 's' };
+static const symbol s_2_89[6] = { 'l', 0xF3, 'g', 'i', 'c', 's' };
+static const symbol s_2_90[3] = { 'u', 'd', 's' };
+static const symbol s_2_91[4] = { 'n', 'c', 'e', 's' };
+static const symbol s_2_92[4] = { 'a', 'd', 'e', 's' };
+static const symbol s_2_93[6] = { 'a', 'n', 'c', 'i', 'e', 's' };
+static const symbol s_2_94[6] = { 'e', 'n', 'c', 'i', 'e', 's' };
+static const symbol s_2_95[6] = { 0xE8, 'n', 'c', 'i', 'e', 's' };
+static const symbol s_2_96[5] = { 0xED, 'c', 'i', 'e', 's' };
+static const symbol s_2_97[6] = { 'l', 'o', 'g', 'i', 'e', 's' };
+static const symbol s_2_98[5] = { 'i', 'n', 'i', 'e', 's' };
+static const symbol s_2_99[5] = { 0xED, 'n', 'i', 'e', 's' };
+static const symbol s_2_100[5] = { 'e', 'r', 'i', 'e', 's' };
+static const symbol s_2_101[5] = { 0xE0, 'r', 'i', 'e', 's' };
+static const symbol s_2_102[7] = { 'a', 't', 0xF2, 'r', 'i', 'e', 's' };
+static const symbol s_2_103[4] = { 'b', 'l', 'e', 's' };
+static const symbol s_2_104[5] = { 'a', 'b', 'l', 'e', 's' };
+static const symbol s_2_105[5] = { 'i', 'b', 'l', 'e', 's' };
+static const symbol s_2_106[4] = { 'i', 'm', 'e', 's' };
+static const symbol s_2_107[7] = { 0xED, 's', 's', 'i', 'm', 'e', 's' };
+static const symbol s_2_108[9] = { 'q', 'u', 0xED, 's', 's', 'i', 'm', 'e', 's' };
+static const symbol s_2_109[6] = { 'f', 'o', 'r', 'm', 'e', 's' };
+static const symbol s_2_110[5] = { 'i', 's', 'm', 'e', 's' };
+static const symbol s_2_111[8] = { 'i', 'a', 'l', 'i', 's', 'm', 'e', 's' };
+static const symbol s_2_112[4] = { 'i', 'n', 'e', 's' };
+static const symbol s_2_113[4] = { 'e', 'r', 'e', 's' };
+static const symbol s_2_114[4] = { 'o', 'r', 'e', 's' };
+static const symbol s_2_115[5] = { 'd', 'o', 'r', 'e', 's' };
+static const symbol s_2_116[6] = { 'i', 'd', 'o', 'r', 'e', 's' };
+static const symbol s_2_117[5] = { 'd', 'u', 'r', 'e', 's' };
+static const symbol s_2_118[4] = { 'e', 's', 'e', 's' };
+static const symbol s_2_119[4] = { 'o', 's', 'e', 's' };
+static const symbol s_2_120[5] = { 'a', 's', 's', 'e', 's' };
+static const symbol s_2_121[5] = { 'i', 'c', 't', 'e', 's' };
+static const symbol s_2_122[4] = { 'i', 't', 'e', 's' };
+static const symbol s_2_123[4] = { 'o', 't', 'e', 's' };
+static const symbol s_2_124[5] = { 'i', 's', 't', 'e', 's' };
+static const symbol s_2_125[8] = { 'i', 'a', 'l', 'i', 's', 't', 'e', 's' };
+static const symbol s_2_126[8] = { 'i', 'o', 'n', 'i', 's', 't', 'e', 's' };
+static const symbol s_2_127[5] = { 'i', 'q', 'u', 'e', 's' };
+static const symbol s_2_128[8] = { 'l', 0xF3, 'g', 'i', 'q', 'u', 'e', 's' };
+static const symbol s_2_129[4] = { 'i', 'v', 'e', 's' };
+static const symbol s_2_130[6] = { 'a', 't', 'i', 'v', 'e', 's' };
+static const symbol s_2_131[6] = { 'l', 'o', 'g', 0xED, 'e', 's' };
+static const symbol s_2_132[9] = { 'a', 'l', 'l', 'e', 'n', 'g', 0xFC, 'e', 's' };
+static const symbol s_2_133[4] = { 'i', 'c', 'i', 's' };
+static const symbol s_2_134[4] = { 0xED, 'c', 'i', 's' };
+static const symbol s_2_135[5] = { 'l', 'o', 'g', 'i', 's' };
+static const symbol s_2_136[4] = { 'a', 'r', 'i', 's' };
+static const symbol s_2_137[5] = { 't', 'o', 'r', 'i', 's' };
+static const symbol s_2_138[2] = { 'l', 's' };
+static const symbol s_2_139[3] = { 'a', 'l', 's' };
+static const symbol s_2_140[4] = { 'e', 'l', 'l', 's' };
+static const symbol s_2_141[3] = { 'i', 'm', 's' };
+static const symbol s_2_142[6] = { 0xED, 's', 's', 'i', 'm', 's' };
+static const symbol s_2_143[8] = { 'q', 'u', 0xED, 's', 's', 'i', 'm', 's' };
+static const symbol s_2_144[4] = { 'i', 'o', 'n', 's' };
+static const symbol s_2_145[5] = { 'c', 'i', 'o', 'n', 's' };
+static const symbol s_2_146[6] = { 'a', 'c', 'i', 'o', 'n', 's' };
+static const symbol s_2_147[4] = { 'e', 's', 'o', 's' };
+static const symbol s_2_148[4] = { 'o', 's', 'o', 's' };
+static const symbol s_2_149[5] = { 'a', 's', 's', 'o', 's' };
+static const symbol s_2_150[5] = { 'i', 's', 's', 'o', 's' };
+static const symbol s_2_151[3] = { 'e', 'r', 's' };
+static const symbol s_2_152[3] = { 'o', 'r', 's' };
+static const symbol s_2_153[4] = { 'd', 'o', 'r', 's' };
+static const symbol s_2_154[5] = { 'a', 'd', 'o', 'r', 's' };
+static const symbol s_2_155[5] = { 'i', 'd', 'o', 'r', 's' };
+static const symbol s_2_156[3] = { 'a', 't', 's' };
+static const symbol s_2_157[5] = { 'i', 't', 'a', 't', 's' };
+static const symbol s_2_158[8] = { 'b', 'i', 'l', 'i', 't', 'a', 't', 's' };
+static const symbol s_2_159[7] = { 'i', 'v', 'i', 't', 'a', 't', 's' };
+static const symbol s_2_160[9] = { 'a', 't', 'i', 'v', 'i', 't', 'a', 't', 's' };
+static const symbol s_2_161[5] = { 0xEF, 't', 'a', 't', 's' };
+static const symbol s_2_162[3] = { 'e', 't', 's' };
+static const symbol s_2_163[4] = { 'a', 'n', 't', 's' };
+static const symbol s_2_164[4] = { 'e', 'n', 't', 's' };
+static const symbol s_2_165[5] = { 'm', 'e', 'n', 't', 's' };
+static const symbol s_2_166[6] = { 'a', 'm', 'e', 'n', 't', 's' };
+static const symbol s_2_167[3] = { 'o', 't', 's' };
+static const symbol s_2_168[3] = { 'u', 't', 's' };
+static const symbol s_2_169[3] = { 'i', 'u', 's' };
+static const symbol s_2_170[5] = { 't', 'r', 'i', 'u', 's' };
+static const symbol s_2_171[5] = { 'a', 't', 'i', 'u', 's' };
+static const symbol s_2_172[2] = { 0xE8, 's' };
+static const symbol s_2_173[2] = { 0xE9, 's' };
+static const symbol s_2_174[2] = { 0xED, 's' };
+static const symbol s_2_175[3] = { 'd', 0xED, 's' };
+static const symbol s_2_176[2] = { 0xF3, 's' };
+static const symbol s_2_177[4] = { 'i', 't', 'a', 't' };
+static const symbol s_2_178[7] = { 'b', 'i', 'l', 'i', 't', 'a', 't' };
+static const symbol s_2_179[6] = { 'i', 'v', 'i', 't', 'a', 't' };
+static const symbol s_2_180[8] = { 'a', 't', 'i', 'v', 'i', 't', 'a', 't' };
+static const symbol s_2_181[4] = { 0xEF, 't', 'a', 't' };
+static const symbol s_2_182[2] = { 'e', 't' };
+static const symbol s_2_183[3] = { 'a', 'n', 't' };
+static const symbol s_2_184[3] = { 'e', 'n', 't' };
+static const symbol s_2_185[4] = { 'i', 'e', 'n', 't' };
+static const symbol s_2_186[4] = { 'm', 'e', 'n', 't' };
+static const symbol s_2_187[5] = { 'a', 'm', 'e', 'n', 't' };
+static const symbol s_2_188[7] = { 'i', 's', 'a', 'm', 'e', 'n', 't' };
+static const symbol s_2_189[2] = { 'o', 't' };
+static const symbol s_2_190[5] = { 'i', 's', 's', 'e', 'u' };
+static const symbol s_2_191[5] = { 0xEC, 's', 's', 'e', 'u' };
+static const symbol s_2_192[5] = { 0xED, 's', 's', 'e', 'u' };
+static const symbol s_2_193[4] = { 't', 'r', 'i', 'u' };
+static const symbol s_2_194[5] = { 0xED, 's', 's', 'i', 'u' };
+static const symbol s_2_195[4] = { 'a', 't', 'i', 'u' };
+static const symbol s_2_196[1] = { 0xF3 };
+static const symbol s_2_197[2] = { 'i', 0xF3 };
+static const symbol s_2_198[3] = { 'c', 'i', 0xF3 };
+static const symbol s_2_199[4] = { 'a', 'c', 'i', 0xF3 };
+
+static const struct among a_2[200] =
+{
+/*  0 */ { 3, s_2_0, -1, 4, 0},
+/*  1 */ { 6, s_2_1, 0, 3, 0},
+/*  2 */ { 4, s_2_2, -1, 1, 0},
+/*  3 */ { 3, s_2_3, -1, 2, 0},
+/*  4 */ { 5, s_2_4, -1, 1, 0},
+/*  5 */ { 5, s_2_5, -1, 1, 0},
+/*  6 */ { 5, s_2_6, -1, 1, 0},
+/*  7 */ { 4, s_2_7, -1, 1, 0},
+/*  8 */ { 5, s_2_8, -1, 3, 0},
+/*  9 */ { 4, s_2_9, -1, 1, 0},
+/* 10 */ { 5, s_2_10, 9, 1, 0},
+/* 11 */ { 4, s_2_11, -1, 1, 0},
+/* 12 */ { 4, s_2_12, -1, 1, 0},
+/* 13 */ { 6, s_2_13, -1, 1, 0},
+/* 14 */ { 4, s_2_14, -1, 1, 0},
+/* 15 */ { 4, s_2_15, -1, 1, 0},
+/* 16 */ { 5, s_2_16, -1, 1, 0},
+/* 17 */ { 3, s_2_17, -1, 1, 0},
+/* 18 */ { 6, s_2_18, 17, 1, 0},
+/* 19 */ { 8, s_2_19, 18, 5, 0},
+/* 20 */ { 3, s_2_20, -1, 1, 0},
+/* 21 */ { 3, s_2_21, -1, 1, 0},
+/* 22 */ { 3, s_2_22, -1, 1, 0},
+/* 23 */ { 5, s_2_23, 22, 1, 0},
+/* 24 */ { 3, s_2_24, -1, 1, 0},
+/* 25 */ { 4, s_2_25, 24, 1, 0},
+/* 26 */ { 5, s_2_26, 25, 1, 0},
+/* 27 */ { 5, s_2_27, -1, 1, 0},
+/* 28 */ { 3, s_2_28, -1, 1, 0},
+/* 29 */ { 3, s_2_29, -1, 1, 0},
+/* 30 */ { 4, s_2_30, -1, 1, 0},
+/* 31 */ { 4, s_2_31, -1, 1, 0},
+/* 32 */ { 4, s_2_32, -1, 1, 0},
+/* 33 */ { 3, s_2_33, -1, 1, 0},
+/* 34 */ { 3, s_2_34, -1, 1, 0},
+/* 35 */ { 3, s_2_35, -1, 1, 0},
+/* 36 */ { 4, s_2_36, -1, 1, 0},
+/* 37 */ { 7, s_2_37, 36, 1, 0},
+/* 38 */ { 7, s_2_38, 36, 1, 0},
+/* 39 */ { 3, s_2_39, -1, 1, 0},
+/* 40 */ { 5, s_2_40, 39, 1, 0},
+/* 41 */ { 3, s_2_41, -1, 1, 0},
+/* 42 */ { 5, s_2_42, -1, 3, 0},
+/* 43 */ { 2, s_2_43, -1, 4, 0},
+/* 44 */ { 5, s_2_44, 43, 1, 0},
+/* 45 */ { 3, s_2_45, -1, 1, 0},
+/* 46 */ { 3, s_2_46, -1, 1, 0},
+/* 47 */ { 2, s_2_47, -1, 1, 0},
+/* 48 */ { 4, s_2_48, -1, 1, 0},
+/* 49 */ { 3, s_2_49, -1, 1, 0},
+/* 50 */ { 4, s_2_50, 49, 1, 0},
+/* 51 */ { 4, s_2_51, 49, 1, 0},
+/* 52 */ { 4, s_2_52, -1, 1, 0},
+/* 53 */ { 7, s_2_53, 52, 1, 0},
+/* 54 */ { 7, s_2_54, 52, 1, 0},
+/* 55 */ { 6, s_2_55, 52, 1, 0},
+/* 56 */ { 4, s_2_56, -1, 1, 0},
+/* 57 */ { 4, s_2_57, -1, 1, 0},
+/* 58 */ { 4, s_2_58, -1, 1, 0},
+/* 59 */ { 3, s_2_59, -1, 1, 0},
+/* 60 */ { 3, s_2_60, -1, 1, 0},
+/* 61 */ { 4, s_2_61, -1, 3, 0},
+/* 62 */ { 3, s_2_62, -1, 1, 0},
+/* 63 */ { 4, s_2_63, -1, 1, 0},
+/* 64 */ { 2, s_2_64, -1, 1, 0},
+/* 65 */ { 2, s_2_65, -1, 1, 0},
+/* 66 */ { 3, s_2_66, -1, 1, 0},
+/* 67 */ { 3, s_2_67, -1, 1, 0},
+/* 68 */ { 4, s_2_68, -1, 1, 0},
+/* 69 */ { 4, s_2_69, -1, 1, 0},
+/* 70 */ { 5, s_2_70, -1, 1, 0},
+/* 71 */ { 5, s_2_71, -1, 1, 0},
+/* 72 */ { 5, s_2_72, -1, 1, 0},
+/* 73 */ { 5, s_2_73, -1, 1, 0},
+/* 74 */ { 7, s_2_74, 73, 5, 0},
+/* 75 */ { 4, s_2_75, -1, 1, 0},
+/* 76 */ { 5, s_2_76, -1, 1, 0},
+/* 77 */ { 2, s_2_77, -1, 1, 0},
+/* 78 */ { 6, s_2_78, 77, 1, 0},
+/* 79 */ { 4, s_2_79, 77, 1, 0},
+/* 80 */ { 4, s_2_80, 77, 1, 0},
+/* 81 */ { 4, s_2_81, 77, 1, 0},
+/* 82 */ { 5, s_2_82, 77, 1, 0},
+/* 83 */ { 3, s_2_83, -1, 1, 0},
+/* 84 */ { 2, s_2_84, -1, 1, 0},
+/* 85 */ { 3, s_2_85, 84, 1, 0},
+/* 86 */ { 3, s_2_86, -1, 1, 0},
+/* 87 */ { 5, s_2_87, -1, 1, 0},
+/* 88 */ { 3, s_2_88, -1, 4, 0},
+/* 89 */ { 6, s_2_89, 88, 3, 0},
+/* 90 */ { 3, s_2_90, -1, 1, 0},
+/* 91 */ { 4, s_2_91, -1, 1, 0},
+/* 92 */ { 4, s_2_92, -1, 2, 0},
+/* 93 */ { 6, s_2_93, -1, 1, 0},
+/* 94 */ { 6, s_2_94, -1, 1, 0},
+/* 95 */ { 6, s_2_95, -1, 1, 0},
+/* 96 */ { 5, s_2_96, -1, 1, 0},
+/* 97 */ { 6, s_2_97, -1, 3, 0},
+/* 98 */ { 5, s_2_98, -1, 1, 0},
+/* 99 */ { 5, s_2_99, -1, 1, 0},
+/*100 */ { 5, s_2_100, -1, 1, 0},
+/*101 */ { 5, s_2_101, -1, 1, 0},
+/*102 */ { 7, s_2_102, -1, 1, 0},
+/*103 */ { 4, s_2_103, -1, 1, 0},
+/*104 */ { 5, s_2_104, 103, 1, 0},
+/*105 */ { 5, s_2_105, 103, 1, 0},
+/*106 */ { 4, s_2_106, -1, 1, 0},
+/*107 */ { 7, s_2_107, 106, 1, 0},
+/*108 */ { 9, s_2_108, 107, 5, 0},
+/*109 */ { 6, s_2_109, -1, 1, 0},
+/*110 */ { 5, s_2_110, -1, 1, 0},
+/*111 */ { 8, s_2_111, 110, 1, 0},
+/*112 */ { 4, s_2_112, -1, 1, 0},
+/*113 */ { 4, s_2_113, -1, 1, 0},
+/*114 */ { 4, s_2_114, -1, 1, 0},
+/*115 */ { 5, s_2_115, 114, 1, 0},
+/*116 */ { 6, s_2_116, 115, 1, 0},
+/*117 */ { 5, s_2_117, -1, 1, 0},
+/*118 */ { 4, s_2_118, -1, 1, 0},
+/*119 */ { 4, s_2_119, -1, 1, 0},
+/*120 */ { 5, s_2_120, -1, 1, 0},
+/*121 */ { 5, s_2_121, -1, 1, 0},
+/*122 */ { 4, s_2_122, -1, 1, 0},
+/*123 */ { 4, s_2_123, -1, 1, 0},
+/*124 */ { 5, s_2_124, -1, 1, 0},
+/*125 */ { 8, s_2_125, 124, 1, 0},
+/*126 */ { 8, s_2_126, 124, 1, 0},
+/*127 */ { 5, s_2_127, -1, 4, 0},
+/*128 */ { 8, s_2_128, 127, 3, 0},
+/*129 */ { 4, s_2_129, -1, 1, 0},
+/*130 */ { 6, s_2_130, 129, 1, 0},
+/*131 */ { 6, s_2_131, -1, 3, 0},
+/*132 */ { 9, s_2_132, -1, 1, 0},
+/*133 */ { 4, s_2_133, -1, 1, 0},
+/*134 */ { 4, s_2_134, -1, 1, 0},
+/*135 */ { 5, s_2_135, -1, 3, 0},
+/*136 */ { 4, s_2_136, -1, 1, 0},
+/*137 */ { 5, s_2_137, -1, 1, 0},
+/*138 */ { 2, s_2_138, -1, 1, 0},
+/*139 */ { 3, s_2_139, 138, 1, 0},
+/*140 */ { 4, s_2_140, 138, 1, 0},
+/*141 */ { 3, s_2_141, -1, 1, 0},
+/*142 */ { 6, s_2_142, 141, 1, 0},
+/*143 */ { 8, s_2_143, 142, 5, 0},
+/*144 */ { 4, s_2_144, -1, 1, 0},
+/*145 */ { 5, s_2_145, 144, 1, 0},
+/*146 */ { 6, s_2_146, 145, 2, 0},
+/*147 */ { 4, s_2_147, -1, 1, 0},
+/*148 */ { 4, s_2_148, -1, 1, 0},
+/*149 */ { 5, s_2_149, -1, 1, 0},
+/*150 */ { 5, s_2_150, -1, 1, 0},
+/*151 */ { 3, s_2_151, -1, 1, 0},
+/*152 */ { 3, s_2_152, -1, 1, 0},
+/*153 */ { 4, s_2_153, 152, 1, 0},
+/*154 */ { 5, s_2_154, 153, 1, 0},
+/*155 */ { 5, s_2_155, 153, 1, 0},
+/*156 */ { 3, s_2_156, -1, 1, 0},
+/*157 */ { 5, s_2_157, 156, 1, 0},
+/*158 */ { 8, s_2_158, 157, 1, 0},
+/*159 */ { 7, s_2_159, 157, 1, 0},
+/*160 */ { 9, s_2_160, 159, 1, 0},
+/*161 */ { 5, s_2_161, 156, 1, 0},
+/*162 */ { 3, s_2_162, -1, 1, 0},
+/*163 */ { 4, s_2_163, -1, 1, 0},
+/*164 */ { 4, s_2_164, -1, 1, 0},
+/*165 */ { 5, s_2_165, 164, 1, 0},
+/*166 */ { 6, s_2_166, 165, 1, 0},
+/*167 */ { 3, s_2_167, -1, 1, 0},
+/*168 */ { 3, s_2_168, -1, 1, 0},
+/*169 */ { 3, s_2_169, -1, 1, 0},
+/*170 */ { 5, s_2_170, 169, 1, 0},
+/*171 */ { 5, s_2_171, 169, 1, 0},
+/*172 */ { 2, s_2_172, -1, 1, 0},
+/*173 */ { 2, s_2_173, -1, 1, 0},
+/*174 */ { 2, s_2_174, -1, 1, 0},
+/*175 */ { 3, s_2_175, 174, 1, 0},
+/*176 */ { 2, s_2_176, -1, 1, 0},
+/*177 */ { 4, s_2_177, -1, 1, 0},
+/*178 */ { 7, s_2_178, 177, 1, 0},
+/*179 */ { 6, s_2_179, 177, 1, 0},
+/*180 */ { 8, s_2_180, 179, 1, 0},
+/*181 */ { 4, s_2_181, -1, 1, 0},
+/*182 */ { 2, s_2_182, -1, 1, 0},
+/*183 */ { 3, s_2_183, -1, 1, 0},
+/*184 */ { 3, s_2_184, -1, 1, 0},
+/*185 */ { 4, s_2_185, 184, 1, 0},
+/*186 */ { 4, s_2_186, 184, 1, 0},
+/*187 */ { 5, s_2_187, 186, 1, 0},
+/*188 */ { 7, s_2_188, 187, 1, 0},
+/*189 */ { 2, s_2_189, -1, 1, 0},
+/*190 */ { 5, s_2_190, -1, 1, 0},
+/*191 */ { 5, s_2_191, -1, 1, 0},
+/*192 */ { 5, s_2_192, -1, 1, 0},
+/*193 */ { 4, s_2_193, -1, 1, 0},
+/*194 */ { 5, s_2_194, -1, 1, 0},
+/*195 */ { 4, s_2_195, -1, 1, 0},
+/*196 */ { 1, s_2_196, -1, 1, 0},
+/*197 */ { 2, s_2_197, 196, 1, 0},
+/*198 */ { 3, s_2_198, 197, 1, 0},
+/*199 */ { 4, s_2_199, 198, 1, 0}
+};
+
+static const symbol s_3_0[3] = { 'a', 'b', 'a' };
+static const symbol s_3_1[4] = { 'e', 's', 'c', 'a' };
+static const symbol s_3_2[4] = { 'i', 's', 'c', 'a' };
+static const symbol s_3_3[4] = { 0xEF, 's', 'c', 'a' };
+static const symbol s_3_4[3] = { 'a', 'd', 'a' };
+static const symbol s_3_5[3] = { 'i', 'd', 'a' };
+static const symbol s_3_6[3] = { 'u', 'd', 'a' };
+static const symbol s_3_7[3] = { 0xEF, 'd', 'a' };
+static const symbol s_3_8[2] = { 'i', 'a' };
+static const symbol s_3_9[4] = { 'a', 'r', 'i', 'a' };
+static const symbol s_3_10[4] = { 'i', 'r', 'i', 'a' };
+static const symbol s_3_11[3] = { 'a', 'r', 'a' };
+static const symbol s_3_12[4] = { 'i', 'e', 'r', 'a' };
+static const symbol s_3_13[3] = { 'i', 'r', 'a' };
+static const symbol s_3_14[5] = { 'a', 'd', 'o', 'r', 'a' };
+static const symbol s_3_15[3] = { 0xEF, 'r', 'a' };
+static const symbol s_3_16[3] = { 'a', 'v', 'a' };
+static const symbol s_3_17[3] = { 'i', 'x', 'a' };
+static const symbol s_3_18[4] = { 'i', 't', 'z', 'a' };
+static const symbol s_3_19[2] = { 0xED, 'a' };
+static const symbol s_3_20[4] = { 'a', 'r', 0xED, 'a' };
+static const symbol s_3_21[4] = { 'e', 'r', 0xED, 'a' };
+static const symbol s_3_22[4] = { 'i', 'r', 0xED, 'a' };
+static const symbol s_3_23[2] = { 0xEF, 'a' };
+static const symbol s_3_24[3] = { 'i', 's', 'c' };
+static const symbol s_3_25[3] = { 0xEF, 's', 'c' };
+static const symbol s_3_26[2] = { 'a', 'd' };
+static const symbol s_3_27[2] = { 'e', 'd' };
+static const symbol s_3_28[2] = { 'i', 'd' };
+static const symbol s_3_29[2] = { 'i', 'e' };
+static const symbol s_3_30[2] = { 'r', 'e' };
+static const symbol s_3_31[3] = { 'd', 'r', 'e' };
+static const symbol s_3_32[3] = { 'a', 's', 'e' };
+static const symbol s_3_33[4] = { 'i', 'e', 's', 'e' };
+static const symbol s_3_34[4] = { 'a', 's', 't', 'e' };
+static const symbol s_3_35[4] = { 'i', 's', 't', 'e' };
+static const symbol s_3_36[2] = { 'i', 'i' };
+static const symbol s_3_37[3] = { 'i', 'n', 'i' };
+static const symbol s_3_38[5] = { 'e', 's', 'q', 'u', 'i' };
+static const symbol s_3_39[4] = { 'e', 'i', 'x', 'i' };
+static const symbol s_3_40[4] = { 'i', 't', 'z', 'i' };
+static const symbol s_3_41[2] = { 'a', 'm' };
+static const symbol s_3_42[2] = { 'e', 'm' };
+static const symbol s_3_43[4] = { 'a', 'r', 'e', 'm' };
+static const symbol s_3_44[4] = { 'i', 'r', 'e', 'm' };
+static const symbol s_3_45[4] = { 0xE0, 'r', 'e', 'm' };
+static const symbol s_3_46[4] = { 0xED, 'r', 'e', 'm' };
+static const symbol s_3_47[5] = { 0xE0, 's', 's', 'e', 'm' };
+static const symbol s_3_48[5] = { 0xE9, 's', 's', 'e', 'm' };
+static const symbol s_3_49[5] = { 'i', 'g', 'u', 'e', 'm' };
+static const symbol s_3_50[5] = { 0xEF, 'g', 'u', 'e', 'm' };
+static const symbol s_3_51[4] = { 'a', 'v', 'e', 'm' };
+static const symbol s_3_52[4] = { 0xE0, 'v', 'e', 'm' };
+static const symbol s_3_53[4] = { 0xE1, 'v', 'e', 'm' };
+static const symbol s_3_54[5] = { 'i', 'r', 0xEC, 'e', 'm' };
+static const symbol s_3_55[3] = { 0xED, 'e', 'm' };
+static const symbol s_3_56[5] = { 'a', 'r', 0xED, 'e', 'm' };
+static const symbol s_3_57[5] = { 'i', 'r', 0xED, 'e', 'm' };
+static const symbol s_3_58[5] = { 'a', 's', 's', 'i', 'm' };
+static const symbol s_3_59[5] = { 'e', 's', 's', 'i', 'm' };
+static const symbol s_3_60[5] = { 'i', 's', 's', 'i', 'm' };
+static const symbol s_3_61[5] = { 0xE0, 's', 's', 'i', 'm' };
+static const symbol s_3_62[5] = { 0xE8, 's', 's', 'i', 'm' };
+static const symbol s_3_63[5] = { 0xE9, 's', 's', 'i', 'm' };
+static const symbol s_3_64[5] = { 0xED, 's', 's', 'i', 'm' };
+static const symbol s_3_65[2] = { 0xEF, 'm' };
+static const symbol s_3_66[2] = { 'a', 'n' };
+static const symbol s_3_67[4] = { 'a', 'b', 'a', 'n' };
+static const symbol s_3_68[5] = { 'a', 'r', 'i', 'a', 'n' };
+static const symbol s_3_69[4] = { 'a', 'r', 'a', 'n' };
+static const symbol s_3_70[5] = { 'i', 'e', 'r', 'a', 'n' };
+static const symbol s_3_71[4] = { 'i', 'r', 'a', 'n' };
+static const symbol s_3_72[3] = { 0xED, 'a', 'n' };
+static const symbol s_3_73[5] = { 'a', 'r', 0xED, 'a', 'n' };
+static const symbol s_3_74[5] = { 'e', 'r', 0xED, 'a', 'n' };
+static const symbol s_3_75[5] = { 'i', 'r', 0xED, 'a', 'n' };
+static const symbol s_3_76[2] = { 'e', 'n' };
+static const symbol s_3_77[3] = { 'i', 'e', 'n' };
+static const symbol s_3_78[5] = { 'a', 'r', 'i', 'e', 'n' };
+static const symbol s_3_79[5] = { 'i', 'r', 'i', 'e', 'n' };
+static const symbol s_3_80[4] = { 'a', 'r', 'e', 'n' };
+static const symbol s_3_81[4] = { 'e', 'r', 'e', 'n' };
+static const symbol s_3_82[4] = { 'i', 'r', 'e', 'n' };
+static const symbol s_3_83[4] = { 0xE0, 'r', 'e', 'n' };
+static const symbol s_3_84[4] = { 0xEF, 'r', 'e', 'n' };
+static const symbol s_3_85[4] = { 'a', 's', 'e', 'n' };
+static const symbol s_3_86[5] = { 'i', 'e', 's', 'e', 'n' };
+static const symbol s_3_87[5] = { 'a', 's', 's', 'e', 'n' };
+static const symbol s_3_88[5] = { 'e', 's', 's', 'e', 'n' };
+static const symbol s_3_89[5] = { 'i', 's', 's', 'e', 'n' };
+static const symbol s_3_90[5] = { 0xE9, 's', 's', 'e', 'n' };
+static const symbol s_3_91[5] = { 0xEF, 's', 's', 'e', 'n' };
+static const symbol s_3_92[6] = { 'e', 's', 'q', 'u', 'e', 'n' };
+static const symbol s_3_93[6] = { 'i', 's', 'q', 'u', 'e', 'n' };
+static const symbol s_3_94[6] = { 0xEF, 's', 'q', 'u', 'e', 'n' };
+static const symbol s_3_95[4] = { 'a', 'v', 'e', 'n' };
+static const symbol s_3_96[4] = { 'i', 'x', 'e', 'n' };
+static const symbol s_3_97[5] = { 'e', 'i', 'x', 'e', 'n' };
+static const symbol s_3_98[4] = { 0xEF, 'x', 'e', 'n' };
+static const symbol s_3_99[3] = { 0xEF, 'e', 'n' };
+static const symbol s_3_100[2] = { 'i', 'n' };
+static const symbol s_3_101[4] = { 'i', 'n', 'i', 'n' };
+static const symbol s_3_102[3] = { 's', 'i', 'n' };
+static const symbol s_3_103[4] = { 'i', 's', 'i', 'n' };
+static const symbol s_3_104[5] = { 'a', 's', 's', 'i', 'n' };
+static const symbol s_3_105[5] = { 'e', 's', 's', 'i', 'n' };
+static const symbol s_3_106[5] = { 'i', 's', 's', 'i', 'n' };
+static const symbol s_3_107[5] = { 0xEF, 's', 's', 'i', 'n' };
+static const symbol s_3_108[6] = { 'e', 's', 'q', 'u', 'i', 'n' };
+static const symbol s_3_109[5] = { 'e', 'i', 'x', 'i', 'n' };
+static const symbol s_3_110[4] = { 'a', 'r', 'o', 'n' };
+static const symbol s_3_111[5] = { 'i', 'e', 'r', 'o', 'n' };
+static const symbol s_3_112[4] = { 'a', 'r', 0xE1, 'n' };
+static const symbol s_3_113[4] = { 'e', 'r', 0xE1, 'n' };
+static const symbol s_3_114[4] = { 'i', 'r', 0xE1, 'n' };
+static const symbol s_3_115[3] = { 'i', 0xEF, 'n' };
+static const symbol s_3_116[3] = { 'a', 'd', 'o' };
+static const symbol s_3_117[3] = { 'i', 'd', 'o' };
+static const symbol s_3_118[4] = { 'a', 'n', 'd', 'o' };
+static const symbol s_3_119[5] = { 'i', 'e', 'n', 'd', 'o' };
+static const symbol s_3_120[2] = { 'i', 'o' };
+static const symbol s_3_121[3] = { 'i', 'x', 'o' };
+static const symbol s_3_122[4] = { 'e', 'i', 'x', 'o' };
+static const symbol s_3_123[3] = { 0xEF, 'x', 'o' };
+static const symbol s_3_124[4] = { 'i', 't', 'z', 'o' };
+static const symbol s_3_125[2] = { 'a', 'r' };
+static const symbol s_3_126[4] = { 't', 'z', 'a', 'r' };
+static const symbol s_3_127[2] = { 'e', 'r' };
+static const symbol s_3_128[5] = { 'e', 'i', 'x', 'e', 'r' };
+static const symbol s_3_129[2] = { 'i', 'r' };
+static const symbol s_3_130[4] = { 'a', 'd', 'o', 'r' };
+static const symbol s_3_131[2] = { 'a', 's' };
+static const symbol s_3_132[4] = { 'a', 'b', 'a', 's' };
+static const symbol s_3_133[4] = { 'a', 'd', 'a', 's' };
+static const symbol s_3_134[4] = { 'i', 'd', 'a', 's' };
+static const symbol s_3_135[4] = { 'a', 'r', 'a', 's' };
+static const symbol s_3_136[5] = { 'i', 'e', 'r', 'a', 's' };
+static const symbol s_3_137[3] = { 0xED, 'a', 's' };
+static const symbol s_3_138[5] = { 'a', 'r', 0xED, 'a', 's' };
+static const symbol s_3_139[5] = { 'e', 'r', 0xED, 'a', 's' };
+static const symbol s_3_140[5] = { 'i', 'r', 0xED, 'a', 's' };
+static const symbol s_3_141[3] = { 'i', 'd', 's' };
+static const symbol s_3_142[2] = { 'e', 's' };
+static const symbol s_3_143[4] = { 'a', 'd', 'e', 's' };
+static const symbol s_3_144[4] = { 'i', 'd', 'e', 's' };
+static const symbol s_3_145[4] = { 'u', 'd', 'e', 's' };
+static const symbol s_3_146[4] = { 0xEF, 'd', 'e', 's' };
+static const symbol s_3_147[5] = { 'a', 't', 'g', 'e', 's' };
+static const symbol s_3_148[3] = { 'i', 'e', 's' };
+static const symbol s_3_149[5] = { 'a', 'r', 'i', 'e', 's' };
+static const symbol s_3_150[5] = { 'i', 'r', 'i', 'e', 's' };
+static const symbol s_3_151[4] = { 'a', 'r', 'e', 's' };
+static const symbol s_3_152[4] = { 'i', 'r', 'e', 's' };
+static const symbol s_3_153[6] = { 'a', 'd', 'o', 'r', 'e', 's' };
+static const symbol s_3_154[4] = { 0xEF, 'r', 'e', 's' };
+static const symbol s_3_155[4] = { 'a', 's', 'e', 's' };
+static const symbol s_3_156[5] = { 'i', 'e', 's', 'e', 's' };
+static const symbol s_3_157[5] = { 'a', 's', 's', 'e', 's' };
+static const symbol s_3_158[5] = { 'e', 's', 's', 'e', 's' };
+static const symbol s_3_159[5] = { 'i', 's', 's', 'e', 's' };
+static const symbol s_3_160[5] = { 0xEF, 's', 's', 'e', 's' };
+static const symbol s_3_161[4] = { 'q', 'u', 'e', 's' };
+static const symbol s_3_162[6] = { 'e', 's', 'q', 'u', 'e', 's' };
+static const symbol s_3_163[6] = { 0xEF, 's', 'q', 'u', 'e', 's' };
+static const symbol s_3_164[4] = { 'a', 'v', 'e', 's' };
+static const symbol s_3_165[4] = { 'i', 'x', 'e', 's' };
+static const symbol s_3_166[5] = { 'e', 'i', 'x', 'e', 's' };
+static const symbol s_3_167[4] = { 0xEF, 'x', 'e', 's' };
+static const symbol s_3_168[3] = { 0xEF, 'e', 's' };
+static const symbol s_3_169[5] = { 'a', 'b', 'a', 'i', 's' };
+static const symbol s_3_170[5] = { 'a', 'r', 'a', 'i', 's' };
+static const symbol s_3_171[6] = { 'i', 'e', 'r', 'a', 'i', 's' };
+static const symbol s_3_172[4] = { 0xED, 'a', 'i', 's' };
+static const symbol s_3_173[6] = { 'a', 'r', 0xED, 'a', 'i', 's' };
+static const symbol s_3_174[6] = { 'e', 'r', 0xED, 'a', 'i', 's' };
+static const symbol s_3_175[6] = { 'i', 'r', 0xED, 'a', 'i', 's' };
+static const symbol s_3_176[5] = { 'a', 's', 'e', 'i', 's' };
+static const symbol s_3_177[6] = { 'i', 'e', 's', 'e', 'i', 's' };
+static const symbol s_3_178[6] = { 'a', 's', 't', 'e', 'i', 's' };
+static const symbol s_3_179[6] = { 'i', 's', 't', 'e', 'i', 's' };
+static const symbol s_3_180[4] = { 'i', 'n', 'i', 's' };
+static const symbol s_3_181[3] = { 's', 'i', 's' };
+static const symbol s_3_182[4] = { 'i', 's', 'i', 's' };
+static const symbol s_3_183[5] = { 'a', 's', 's', 'i', 's' };
+static const symbol s_3_184[5] = { 'e', 's', 's', 'i', 's' };
+static const symbol s_3_185[5] = { 'i', 's', 's', 'i', 's' };
+static const symbol s_3_186[5] = { 0xEF, 's', 's', 'i', 's' };
+static const symbol s_3_187[6] = { 'e', 's', 'q', 'u', 'i', 's' };
+static const symbol s_3_188[5] = { 'e', 'i', 'x', 'i', 's' };
+static const symbol s_3_189[5] = { 'i', 't', 'z', 'i', 's' };
+static const symbol s_3_190[3] = { 0xE1, 'i', 's' };
+static const symbol s_3_191[5] = { 'a', 'r', 0xE9, 'i', 's' };
+static const symbol s_3_192[5] = { 'e', 'r', 0xE9, 'i', 's' };
+static const symbol s_3_193[5] = { 'i', 'r', 0xE9, 'i', 's' };
+static const symbol s_3_194[3] = { 'a', 'm', 's' };
+static const symbol s_3_195[4] = { 'a', 'd', 'o', 's' };
+static const symbol s_3_196[4] = { 'i', 'd', 'o', 's' };
+static const symbol s_3_197[4] = { 'a', 'm', 'o', 's' };
+static const symbol s_3_198[6] = { 0xE1, 'b', 'a', 'm', 'o', 's' };
+static const symbol s_3_199[6] = { 0xE1, 'r', 'a', 'm', 'o', 's' };
+static const symbol s_3_200[7] = { 'i', 0xE9, 'r', 'a', 'm', 'o', 's' };
+static const symbol s_3_201[5] = { 0xED, 'a', 'm', 'o', 's' };
+static const symbol s_3_202[7] = { 'a', 'r', 0xED, 'a', 'm', 'o', 's' };
+static const symbol s_3_203[7] = { 'e', 'r', 0xED, 'a', 'm', 'o', 's' };
+static const symbol s_3_204[7] = { 'i', 'r', 0xED, 'a', 'm', 'o', 's' };
+static const symbol s_3_205[6] = { 'a', 'r', 'e', 'm', 'o', 's' };
+static const symbol s_3_206[6] = { 'e', 'r', 'e', 'm', 'o', 's' };
+static const symbol s_3_207[6] = { 'i', 'r', 'e', 'm', 'o', 's' };
+static const symbol s_3_208[6] = { 0xE1, 's', 'e', 'm', 'o', 's' };
+static const symbol s_3_209[7] = { 'i', 0xE9, 's', 'e', 'm', 'o', 's' };
+static const symbol s_3_210[4] = { 'i', 'm', 'o', 's' };
+static const symbol s_3_211[5] = { 'a', 'd', 'o', 'r', 's' };
+static const symbol s_3_212[3] = { 'a', 's', 's' };
+static const symbol s_3_213[5] = { 'e', 'r', 'a', 's', 's' };
+static const symbol s_3_214[3] = { 'e', 's', 's' };
+static const symbol s_3_215[3] = { 'a', 't', 's' };
+static const symbol s_3_216[3] = { 'i', 't', 's' };
+static const symbol s_3_217[4] = { 'e', 'n', 't', 's' };
+static const symbol s_3_218[2] = { 0xE0, 's' };
+static const symbol s_3_219[4] = { 'a', 'r', 0xE0, 's' };
+static const symbol s_3_220[4] = { 'i', 'r', 0xE0, 's' };
+static const symbol s_3_221[4] = { 'a', 'r', 0xE1, 's' };
+static const symbol s_3_222[4] = { 'e', 'r', 0xE1, 's' };
+static const symbol s_3_223[4] = { 'i', 'r', 0xE1, 's' };
+static const symbol s_3_224[2] = { 0xE9, 's' };
+static const symbol s_3_225[4] = { 'a', 'r', 0xE9, 's' };
+static const symbol s_3_226[2] = { 0xED, 's' };
+static const symbol s_3_227[3] = { 'i', 0xEF, 's' };
+static const symbol s_3_228[2] = { 'a', 't' };
+static const symbol s_3_229[2] = { 'i', 't' };
+static const symbol s_3_230[3] = { 'a', 'n', 't' };
+static const symbol s_3_231[3] = { 'e', 'n', 't' };
+static const symbol s_3_232[3] = { 'i', 'n', 't' };
+static const symbol s_3_233[2] = { 'u', 't' };
+static const symbol s_3_234[2] = { 0xEF, 't' };
+static const symbol s_3_235[2] = { 'a', 'u' };
+static const symbol s_3_236[4] = { 'e', 'r', 'a', 'u' };
+static const symbol s_3_237[3] = { 'i', 'e', 'u' };
+static const symbol s_3_238[4] = { 'i', 'n', 'e', 'u' };
+static const symbol s_3_239[4] = { 'a', 'r', 'e', 'u' };
+static const symbol s_3_240[4] = { 'i', 'r', 'e', 'u' };
+static const symbol s_3_241[4] = { 0xE0, 'r', 'e', 'u' };
+static const symbol s_3_242[4] = { 0xED, 'r', 'e', 'u' };
+static const symbol s_3_243[5] = { 'a', 's', 's', 'e', 'u' };
+static const symbol s_3_244[5] = { 'e', 's', 's', 'e', 'u' };
+static const symbol s_3_245[7] = { 'e', 'r', 'e', 's', 's', 'e', 'u' };
+static const symbol s_3_246[5] = { 0xE0, 's', 's', 'e', 'u' };
+static const symbol s_3_247[5] = { 0xE9, 's', 's', 'e', 'u' };
+static const symbol s_3_248[5] = { 'i', 'g', 'u', 'e', 'u' };
+static const symbol s_3_249[5] = { 0xEF, 'g', 'u', 'e', 'u' };
+static const symbol s_3_250[4] = { 0xE0, 'v', 'e', 'u' };
+static const symbol s_3_251[4] = { 0xE1, 'v', 'e', 'u' };
+static const symbol s_3_252[5] = { 'i', 't', 'z', 'e', 'u' };
+static const symbol s_3_253[3] = { 0xEC, 'e', 'u' };
+static const symbol s_3_254[5] = { 'i', 'r', 0xEC, 'e', 'u' };
+static const symbol s_3_255[3] = { 0xED, 'e', 'u' };
+static const symbol s_3_256[5] = { 'a', 'r', 0xED, 'e', 'u' };
+static const symbol s_3_257[5] = { 'i', 'r', 0xED, 'e', 'u' };
+static const symbol s_3_258[5] = { 'a', 's', 's', 'i', 'u' };
+static const symbol s_3_259[5] = { 'i', 's', 's', 'i', 'u' };
+static const symbol s_3_260[5] = { 0xE0, 's', 's', 'i', 'u' };
+static const symbol s_3_261[5] = { 0xE8, 's', 's', 'i', 'u' };
+static const symbol s_3_262[5] = { 0xE9, 's', 's', 'i', 'u' };
+static const symbol s_3_263[5] = { 0xED, 's', 's', 'i', 'u' };
+static const symbol s_3_264[2] = { 0xEF, 'u' };
+static const symbol s_3_265[2] = { 'i', 'x' };
+static const symbol s_3_266[3] = { 'e', 'i', 'x' };
+static const symbol s_3_267[2] = { 0xEF, 'x' };
+static const symbol s_3_268[3] = { 'i', 't', 'z' };
+static const symbol s_3_269[2] = { 'i', 0xE0 };
+static const symbol s_3_270[3] = { 'a', 'r', 0xE0 };
+static const symbol s_3_271[3] = { 'i', 'r', 0xE0 };
+static const symbol s_3_272[4] = { 'i', 't', 'z', 0xE0 };
+static const symbol s_3_273[3] = { 'a', 'r', 0xE1 };
+static const symbol s_3_274[3] = { 'e', 'r', 0xE1 };
+static const symbol s_3_275[3] = { 'i', 'r', 0xE1 };
+static const symbol s_3_276[3] = { 'i', 'r', 0xE8 };
+static const symbol s_3_277[3] = { 'a', 'r', 0xE9 };
+static const symbol s_3_278[3] = { 'e', 'r', 0xE9 };
+static const symbol s_3_279[3] = { 'i', 'r', 0xE9 };
+static const symbol s_3_280[1] = { 0xED };
+static const symbol s_3_281[2] = { 'i', 0xEF };
+static const symbol s_3_282[2] = { 'i', 0xF3 };
+
+static const struct among a_3[283] =
+{
+/*  0 */ { 3, s_3_0, -1, 1, 0},
+/*  1 */ { 4, s_3_1, -1, 1, 0},
+/*  2 */ { 4, s_3_2, -1, 1, 0},
+/*  3 */ { 4, s_3_3, -1, 1, 0},
+/*  4 */ { 3, s_3_4, -1, 1, 0},
+/*  5 */ { 3, s_3_5, -1, 1, 0},
+/*  6 */ { 3, s_3_6, -1, 1, 0},
+/*  7 */ { 3, s_3_7, -1, 1, 0},
+/*  8 */ { 2, s_3_8, -1, 1, 0},
+/*  9 */ { 4, s_3_9, 8, 1, 0},
+/* 10 */ { 4, s_3_10, 8, 1, 0},
+/* 11 */ { 3, s_3_11, -1, 1, 0},
+/* 12 */ { 4, s_3_12, -1, 1, 0},
+/* 13 */ { 3, s_3_13, -1, 1, 0},
+/* 14 */ { 5, s_3_14, -1, 1, 0},
+/* 15 */ { 3, s_3_15, -1, 1, 0},
+/* 16 */ { 3, s_3_16, -1, 1, 0},
+/* 17 */ { 3, s_3_17, -1, 1, 0},
+/* 18 */ { 4, s_3_18, -1, 1, 0},
+/* 19 */ { 2, s_3_19, -1, 1, 0},
+/* 20 */ { 4, s_3_20, 19, 1, 0},
+/* 21 */ { 4, s_3_21, 19, 1, 0},
+/* 22 */ { 4, s_3_22, 19, 1, 0},
+/* 23 */ { 2, s_3_23, -1, 1, 0},
+/* 24 */ { 3, s_3_24, -1, 1, 0},
+/* 25 */ { 3, s_3_25, -1, 1, 0},
+/* 26 */ { 2, s_3_26, -1, 1, 0},
+/* 27 */ { 2, s_3_27, -1, 1, 0},
+/* 28 */ { 2, s_3_28, -1, 1, 0},
+/* 29 */ { 2, s_3_29, -1, 1, 0},
+/* 30 */ { 2, s_3_30, -1, 1, 0},
+/* 31 */ { 3, s_3_31, 30, 1, 0},
+/* 32 */ { 3, s_3_32, -1, 1, 0},
+/* 33 */ { 4, s_3_33, -1, 1, 0},
+/* 34 */ { 4, s_3_34, -1, 1, 0},
+/* 35 */ { 4, s_3_35, -1, 1, 0},
+/* 36 */ { 2, s_3_36, -1, 1, 0},
+/* 37 */ { 3, s_3_37, -1, 1, 0},
+/* 38 */ { 5, s_3_38, -1, 1, 0},
+/* 39 */ { 4, s_3_39, -1, 1, 0},
+/* 40 */ { 4, s_3_40, -1, 1, 0},
+/* 41 */ { 2, s_3_41, -1, 1, 0},
+/* 42 */ { 2, s_3_42, -1, 1, 0},
+/* 43 */ { 4, s_3_43, 42, 1, 0},
+/* 44 */ { 4, s_3_44, 42, 1, 0},
+/* 45 */ { 4, s_3_45, 42, 1, 0},
+/* 46 */ { 4, s_3_46, 42, 1, 0},
+/* 47 */ { 5, s_3_47, 42, 1, 0},
+/* 48 */ { 5, s_3_48, 42, 1, 0},
+/* 49 */ { 5, s_3_49, 42, 1, 0},
+/* 50 */ { 5, s_3_50, 42, 1, 0},
+/* 51 */ { 4, s_3_51, 42, 1, 0},
+/* 52 */ { 4, s_3_52, 42, 1, 0},
+/* 53 */ { 4, s_3_53, 42, 1, 0},
+/* 54 */ { 5, s_3_54, 42, 1, 0},
+/* 55 */ { 3, s_3_55, 42, 1, 0},
+/* 56 */ { 5, s_3_56, 55, 1, 0},
+/* 57 */ { 5, s_3_57, 55, 1, 0},
+/* 58 */ { 5, s_3_58, -1, 1, 0},
+/* 59 */ { 5, s_3_59, -1, 1, 0},
+/* 60 */ { 5, s_3_60, -1, 1, 0},
+/* 61 */ { 5, s_3_61, -1, 1, 0},
+/* 62 */ { 5, s_3_62, -1, 1, 0},
+/* 63 */ { 5, s_3_63, -1, 1, 0},
+/* 64 */ { 5, s_3_64, -1, 1, 0},
+/* 65 */ { 2, s_3_65, -1, 1, 0},
+/* 66 */ { 2, s_3_66, -1, 1, 0},
+/* 67 */ { 4, s_3_67, 66, 1, 0},
+/* 68 */ { 5, s_3_68, 66, 1, 0},
+/* 69 */ { 4, s_3_69, 66, 1, 0},
+/* 70 */ { 5, s_3_70, 66, 1, 0},
+/* 71 */ { 4, s_3_71, 66, 1, 0},
+/* 72 */ { 3, s_3_72, 66, 1, 0},
+/* 73 */ { 5, s_3_73, 72, 1, 0},
+/* 74 */ { 5, s_3_74, 72, 1, 0},
+/* 75 */ { 5, s_3_75, 72, 1, 0},
+/* 76 */ { 2, s_3_76, -1, 1, 0},
+/* 77 */ { 3, s_3_77, 76, 1, 0},
+/* 78 */ { 5, s_3_78, 77, 1, 0},
+/* 79 */ { 5, s_3_79, 77, 1, 0},
+/* 80 */ { 4, s_3_80, 76, 1, 0},
+/* 81 */ { 4, s_3_81, 76, 1, 0},
+/* 82 */ { 4, s_3_82, 76, 1, 0},
+/* 83 */ { 4, s_3_83, 76, 1, 0},
+/* 84 */ { 4, s_3_84, 76, 1, 0},
+/* 85 */ { 4, s_3_85, 76, 1, 0},
+/* 86 */ { 5, s_3_86, 76, 1, 0},
+/* 87 */ { 5, s_3_87, 76, 1, 0},
+/* 88 */ { 5, s_3_88, 76, 1, 0},
+/* 89 */ { 5, s_3_89, 76, 1, 0},
+/* 90 */ { 5, s_3_90, 76, 1, 0},
+/* 91 */ { 5, s_3_91, 76, 1, 0},
+/* 92 */ { 6, s_3_92, 76, 1, 0},
+/* 93 */ { 6, s_3_93, 76, 1, 0},
+/* 94 */ { 6, s_3_94, 76, 1, 0},
+/* 95 */ { 4, s_3_95, 76, 1, 0},
+/* 96 */ { 4, s_3_96, 76, 1, 0},
+/* 97 */ { 5, s_3_97, 96, 1, 0},
+/* 98 */ { 4, s_3_98, 76, 1, 0},
+/* 99 */ { 3, s_3_99, 76, 1, 0},
+/*100 */ { 2, s_3_100, -1, 1, 0},
+/*101 */ { 4, s_3_101, 100, 1, 0},
+/*102 */ { 3, s_3_102, 100, 1, 0},
+/*103 */ { 4, s_3_103, 102, 1, 0},
+/*104 */ { 5, s_3_104, 102, 1, 0},
+/*105 */ { 5, s_3_105, 102, 1, 0},
+/*106 */ { 5, s_3_106, 102, 1, 0},
+/*107 */ { 5, s_3_107, 102, 1, 0},
+/*108 */ { 6, s_3_108, 100, 1, 0},
+/*109 */ { 5, s_3_109, 100, 1, 0},
+/*110 */ { 4, s_3_110, -1, 1, 0},
+/*111 */ { 5, s_3_111, -1, 1, 0},
+/*112 */ { 4, s_3_112, -1, 1, 0},
+/*113 */ { 4, s_3_113, -1, 1, 0},
+/*114 */ { 4, s_3_114, -1, 1, 0},
+/*115 */ { 3, s_3_115, -1, 1, 0},
+/*116 */ { 3, s_3_116, -1, 1, 0},
+/*117 */ { 3, s_3_117, -1, 1, 0},
+/*118 */ { 4, s_3_118, -1, 2, 0},
+/*119 */ { 5, s_3_119, -1, 1, 0},
+/*120 */ { 2, s_3_120, -1, 1, 0},
+/*121 */ { 3, s_3_121, -1, 1, 0},
+/*122 */ { 4, s_3_122, 121, 1, 0},
+/*123 */ { 3, s_3_123, -1, 1, 0},
+/*124 */ { 4, s_3_124, -1, 1, 0},
+/*125 */ { 2, s_3_125, -1, 1, 0},
+/*126 */ { 4, s_3_126, 125, 1, 0},
+/*127 */ { 2, s_3_127, -1, 1, 0},
+/*128 */ { 5, s_3_128, 127, 1, 0},
+/*129 */ { 2, s_3_129, -1, 1, 0},
+/*130 */ { 4, s_3_130, -1, 1, 0},
+/*131 */ { 2, s_3_131, -1, 1, 0},
+/*132 */ { 4, s_3_132, 131, 1, 0},
+/*133 */ { 4, s_3_133, 131, 1, 0},
+/*134 */ { 4, s_3_134, 131, 1, 0},
+/*135 */ { 4, s_3_135, 131, 1, 0},
+/*136 */ { 5, s_3_136, 131, 1, 0},
+/*137 */ { 3, s_3_137, 131, 1, 0},
+/*138 */ { 5, s_3_138, 137, 1, 0},
+/*139 */ { 5, s_3_139, 137, 1, 0},
+/*140 */ { 5, s_3_140, 137, 1, 0},
+/*141 */ { 3, s_3_141, -1, 1, 0},
+/*142 */ { 2, s_3_142, -1, 1, 0},
+/*143 */ { 4, s_3_143, 142, 1, 0},
+/*144 */ { 4, s_3_144, 142, 1, 0},
+/*145 */ { 4, s_3_145, 142, 1, 0},
+/*146 */ { 4, s_3_146, 142, 1, 0},
+/*147 */ { 5, s_3_147, 142, 1, 0},
+/*148 */ { 3, s_3_148, 142, 1, 0},
+/*149 */ { 5, s_3_149, 148, 1, 0},
+/*150 */ { 5, s_3_150, 148, 1, 0},
+/*151 */ { 4, s_3_151, 142, 1, 0},
+/*152 */ { 4, s_3_152, 142, 1, 0},
+/*153 */ { 6, s_3_153, 142, 1, 0},
+/*154 */ { 4, s_3_154, 142, 1, 0},
+/*155 */ { 4, s_3_155, 142, 1, 0},
+/*156 */ { 5, s_3_156, 142, 1, 0},
+/*157 */ { 5, s_3_157, 142, 1, 0},
+/*158 */ { 5, s_3_158, 142, 1, 0},
+/*159 */ { 5, s_3_159, 142, 1, 0},
+/*160 */ { 5, s_3_160, 142, 1, 0},
+/*161 */ { 4, s_3_161, 142, 1, 0},
+/*162 */ { 6, s_3_162, 161, 1, 0},
+/*163 */ { 6, s_3_163, 161, 1, 0},
+/*164 */ { 4, s_3_164, 142, 1, 0},
+/*165 */ { 4, s_3_165, 142, 1, 0},
+/*166 */ { 5, s_3_166, 165, 1, 0},
+/*167 */ { 4, s_3_167, 142, 1, 0},
+/*168 */ { 3, s_3_168, 142, 1, 0},
+/*169 */ { 5, s_3_169, -1, 1, 0},
+/*170 */ { 5, s_3_170, -1, 1, 0},
+/*171 */ { 6, s_3_171, -1, 1, 0},
+/*172 */ { 4, s_3_172, -1, 1, 0},
+/*173 */ { 6, s_3_173, 172, 1, 0},
+/*174 */ { 6, s_3_174, 172, 1, 0},
+/*175 */ { 6, s_3_175, 172, 1, 0},
+/*176 */ { 5, s_3_176, -1, 1, 0},
+/*177 */ { 6, s_3_177, -1, 1, 0},
+/*178 */ { 6, s_3_178, -1, 1, 0},
+/*179 */ { 6, s_3_179, -1, 1, 0},
+/*180 */ { 4, s_3_180, -1, 1, 0},
+/*181 */ { 3, s_3_181, -1, 1, 0},
+/*182 */ { 4, s_3_182, 181, 1, 0},
+/*183 */ { 5, s_3_183, 181, 1, 0},
+/*184 */ { 5, s_3_184, 181, 1, 0},
+/*185 */ { 5, s_3_185, 181, 1, 0},
+/*186 */ { 5, s_3_186, 181, 1, 0},
+/*187 */ { 6, s_3_187, -1, 1, 0},
+/*188 */ { 5, s_3_188, -1, 1, 0},
+/*189 */ { 5, s_3_189, -1, 1, 0},
+/*190 */ { 3, s_3_190, -1, 1, 0},
+/*191 */ { 5, s_3_191, -1, 1, 0},
+/*192 */ { 5, s_3_192, -1, 1, 0},
+/*193 */ { 5, s_3_193, -1, 1, 0},
+/*194 */ { 3, s_3_194, -1, 1, 0},
+/*195 */ { 4, s_3_195, -1, 1, 0},
+/*196 */ { 4, s_3_196, -1, 1, 0},
+/*197 */ { 4, s_3_197, -1, 1, 0},
+/*198 */ { 6, s_3_198, 197, 1, 0},
+/*199 */ { 6, s_3_199, 197, 1, 0},
+/*200 */ { 7, s_3_200, 197, 1, 0},
+/*201 */ { 5, s_3_201, 197, 1, 0},
+/*202 */ { 7, s_3_202, 201, 1, 0},
+/*203 */ { 7, s_3_203, 201, 1, 0},
+/*204 */ { 7, s_3_204, 201, 1, 0},
+/*205 */ { 6, s_3_205, -1, 1, 0},
+/*206 */ { 6, s_3_206, -1, 1, 0},
+/*207 */ { 6, s_3_207, -1, 1, 0},
+/*208 */ { 6, s_3_208, -1, 1, 0},
+/*209 */ { 7, s_3_209, -1, 1, 0},
+/*210 */ { 4, s_3_210, -1, 1, 0},
+/*211 */ { 5, s_3_211, -1, 1, 0},
+/*212 */ { 3, s_3_212, -1, 1, 0},
+/*213 */ { 5, s_3_213, 212, 1, 0},
+/*214 */ { 3, s_3_214, -1, 1, 0},
+/*215 */ { 3, s_3_215, -1, 1, 0},
+/*216 */ { 3, s_3_216, -1, 1, 0},
+/*217 */ { 4, s_3_217, -1, 1, 0},
+/*218 */ { 2, s_3_218, -1, 1, 0},
+/*219 */ { 4, s_3_219, 218, 1, 0},
+/*220 */ { 4, s_3_220, 218, 1, 0},
+/*221 */ { 4, s_3_221, -1, 1, 0},
+/*222 */ { 4, s_3_222, -1, 1, 0},
+/*223 */ { 4, s_3_223, -1, 1, 0},
+/*224 */ { 2, s_3_224, -1, 1, 0},
+/*225 */ { 4, s_3_225, 224, 1, 0},
+/*226 */ { 2, s_3_226, -1, 1, 0},
+/*227 */ { 3, s_3_227, -1, 1, 0},
+/*228 */ { 2, s_3_228, -1, 1, 0},
+/*229 */ { 2, s_3_229, -1, 1, 0},
+/*230 */ { 3, s_3_230, -1, 1, 0},
+/*231 */ { 3, s_3_231, -1, 1, 0},
+/*232 */ { 3, s_3_232, -1, 1, 0},
+/*233 */ { 2, s_3_233, -1, 1, 0},
+/*234 */ { 2, s_3_234, -1, 1, 0},
+/*235 */ { 2, s_3_235, -1, 1, 0},
+/*236 */ { 4, s_3_236, 235, 1, 0},
+/*237 */ { 3, s_3_237, -1, 1, 0},
+/*238 */ { 4, s_3_238, -1, 1, 0},
+/*239 */ { 4, s_3_239, -1, 1, 0},
+/*240 */ { 4, s_3_240, -1, 1, 0},
+/*241 */ { 4, s_3_241, -1, 1, 0},
+/*242 */ { 4, s_3_242, -1, 1, 0},
+/*243 */ { 5, s_3_243, -1, 1, 0},
+/*244 */ { 5, s_3_244, -1, 1, 0},
+/*245 */ { 7, s_3_245, 244, 1, 0},
+/*246 */ { 5, s_3_246, -1, 1, 0},
+/*247 */ { 5, s_3_247, -1, 1, 0},
+/*248 */ { 5, s_3_248, -1, 1, 0},
+/*249 */ { 5, s_3_249, -1, 1, 0},
+/*250 */ { 4, s_3_250, -1, 1, 0},
+/*251 */ { 4, s_3_251, -1, 1, 0},
+/*252 */ { 5, s_3_252, -1, 1, 0},
+/*253 */ { 3, s_3_253, -1, 1, 0},
+/*254 */ { 5, s_3_254, 253, 1, 0},
+/*255 */ { 3, s_3_255, -1, 1, 0},
+/*256 */ { 5, s_3_256, 255, 1, 0},
+/*257 */ { 5, s_3_257, 255, 1, 0},
+/*258 */ { 5, s_3_258, -1, 1, 0},
+/*259 */ { 5, s_3_259, -1, 1, 0},
+/*260 */ { 5, s_3_260, -1, 1, 0},
+/*261 */ { 5, s_3_261, -1, 1, 0},
+/*262 */ { 5, s_3_262, -1, 1, 0},
+/*263 */ { 5, s_3_263, -1, 1, 0},
+/*264 */ { 2, s_3_264, -1, 1, 0},
+/*265 */ { 2, s_3_265, -1, 1, 0},
+/*266 */ { 3, s_3_266, 265, 1, 0},
+/*267 */ { 2, s_3_267, -1, 1, 0},
+/*268 */ { 3, s_3_268, -1, 1, 0},
+/*269 */ { 2, s_3_269, -1, 1, 0},
+/*270 */ { 3, s_3_270, -1, 1, 0},
+/*271 */ { 3, s_3_271, -1, 1, 0},
+/*272 */ { 4, s_3_272, -1, 1, 0},
+/*273 */ { 3, s_3_273, -1, 1, 0},
+/*274 */ { 3, s_3_274, -1, 1, 0},
+/*275 */ { 3, s_3_275, -1, 1, 0},
+/*276 */ { 3, s_3_276, -1, 1, 0},
+/*277 */ { 3, s_3_277, -1, 1, 0},
+/*278 */ { 3, s_3_278, -1, 1, 0},
+/*279 */ { 3, s_3_279, -1, 1, 0},
+/*280 */ { 1, s_3_280, -1, 1, 0},
+/*281 */ { 2, s_3_281, -1, 1, 0},
+/*282 */ { 2, s_3_282, -1, 1, 0}
+};
+
+static const symbol s_4_0[1] = { 'a' };
+static const symbol s_4_1[1] = { 'e' };
+static const symbol s_4_2[1] = { 'i' };
+static const symbol s_4_3[2] = { 0xEF, 'n' };
+static const symbol s_4_4[1] = { 'o' };
+static const symbol s_4_5[2] = { 'i', 'r' };
+static const symbol s_4_6[1] = { 's' };
+static const symbol s_4_7[2] = { 'i', 's' };
+static const symbol s_4_8[2] = { 'o', 's' };
+static const symbol s_4_9[2] = { 0xEF, 's' };
+static const symbol s_4_10[2] = { 'i', 't' };
+static const symbol s_4_11[2] = { 'e', 'u' };
+static const symbol s_4_12[2] = { 'i', 'u' };
+static const symbol s_4_13[3] = { 'i', 'q', 'u' };
+static const symbol s_4_14[3] = { 'i', 't', 'z' };
+static const symbol s_4_15[1] = { 0xE0 };
+static const symbol s_4_16[1] = { 0xE1 };
+static const symbol s_4_17[1] = { 0xE9 };
+static const symbol s_4_18[1] = { 0xEC };
+static const symbol s_4_19[1] = { 0xED };
+static const symbol s_4_20[1] = { 0xEF };
+static const symbol s_4_21[1] = { 0xF3 };
+
+static const struct among a_4[22] =
+{
+/*  0 */ { 1, s_4_0, -1, 1, 0},
+/*  1 */ { 1, s_4_1, -1, 1, 0},
+/*  2 */ { 1, s_4_2, -1, 1, 0},
+/*  3 */ { 2, s_4_3, -1, 1, 0},
+/*  4 */ { 1, s_4_4, -1, 1, 0},
+/*  5 */ { 2, s_4_5, -1, 1, 0},
+/*  6 */ { 1, s_4_6, -1, 1, 0},
+/*  7 */ { 2, s_4_7, 6, 1, 0},
+/*  8 */ { 2, s_4_8, 6, 1, 0},
+/*  9 */ { 2, s_4_9, 6, 1, 0},
+/* 10 */ { 2, s_4_10, -1, 1, 0},
+/* 11 */ { 2, s_4_11, -1, 1, 0},
+/* 12 */ { 2, s_4_12, -1, 1, 0},
+/* 13 */ { 3, s_4_13, -1, 2, 0},
+/* 14 */ { 3, s_4_14, -1, 1, 0},
+/* 15 */ { 1, s_4_15, -1, 1, 0},
+/* 16 */ { 1, s_4_16, -1, 1, 0},
+/* 17 */ { 1, s_4_17, -1, 1, 0},
+/* 18 */ { 1, s_4_18, -1, 1, 0},
+/* 19 */ { 1, s_4_19, -1, 1, 0},
+/* 20 */ { 1, s_4_20, -1, 1, 0},
+/* 21 */ { 1, s_4_21, -1, 1, 0}
+};
+
+static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 129, 81, 6, 10 };
+
+static const symbol s_0[] = { 'a' };
+static const symbol s_1[] = { 'e' };
+static const symbol s_2[] = { 'i' };
+static const symbol s_3[] = { 'o' };
+static const symbol s_4[] = { 'u' };
+static const symbol s_5[] = { '.' };
+static const symbol s_6[] = { 'l', 'o', 'g' };
+static const symbol s_7[] = { 'i', 'c' };
+static const symbol s_8[] = { 'c' };
+static const symbol s_9[] = { 'i', 'c' };
+
+static int r_mark_regions(struct SN_env * z) { /* forwardmode */
+    z->I[0] = z->l; /* $p1 = <integer expression>, line 38 */
+    z->I[1] = z->l; /* $p2 = <integer expression>, line 39 */
+    {   int c1 = z->c; /* do, line 41 */
+        {    /* gopast */ /* grouping v, line 42 */
+            int ret = out_grouping(z, g_v, 97, 252, 1);
+            if (ret < 0) goto lab0;
+            z->c += ret;
+        }
+        {    /* gopast */ /* non v, line 42 */
+            int ret = in_grouping(z, g_v, 97, 252, 1);
+            if (ret < 0) goto lab0;
+            z->c += ret;
+        }
+        z->I[0] = z->c; /* setmark p1, line 42 */
+        {    /* gopast */ /* grouping v, line 43 */
+            int ret = out_grouping(z, g_v, 97, 252, 1);
+            if (ret < 0) goto lab0;
+            z->c += ret;
+        }
+        {    /* gopast */ /* non v, line 43 */
+            int ret = in_grouping(z, g_v, 97, 252, 1);
+            if (ret < 0) goto lab0;
+            z->c += ret;
+        }
+        z->I[1] = z->c; /* setmark p2, line 43 */
+    lab0:
+        z->c = c1;
+    }
+    return 1;
+}
+
+static int r_cleaning(struct SN_env * z) { /* forwardmode */
+    int among_var;
+/* repeat, line 47 */
+
+    while(1) {        int c1 = z->c;
+        z->bra = z->c; /* [, line 48 */
+        among_var = find_among(z, a_0, 13); /* substring, line 48 */
+        if (!(among_var)) goto lab0;
+        z->ket = z->c; /* ], line 48 */
+        switch (among_var) { /* among, line 48 */
+            case 1:
+                {   int ret = slice_from_s(z, 1, s_0); /* <-, line 49 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 2:
+                {   int ret = slice_from_s(z, 1, s_1); /* <-, line 51 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 3:
+                {   int ret = slice_from_s(z, 1, s_2); /* <-, line 53 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 4:
+                {   int ret = slice_from_s(z, 1, s_3); /* <-, line 55 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 5:
+                {   int ret = slice_from_s(z, 1, s_4); /* <-, line 57 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 6:
+                {   int ret = slice_from_s(z, 1, s_5); /* <-, line 60 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 7:
+                if (z->c >= z->l) goto lab0;
+                z->c++; /* next, line 61 */
+                break;
+        }
+        continue;
+    lab0:
+        z->c = c1;
+        break;
+    }
+    return 1;
+}
+
+static int r_R1(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 67 */
+    return 1;
+}
+
+static int r_R2(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 68 */
+    return 1;
+}
+
+static int r_attached_pronoun(struct SN_env * z) { /* backwardmode */
+    z->ket = z->c; /* [, line 71 */
+    if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1634850 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 71 */
+    if (!(find_among_b(z, a_1, 39))) return 0;
+    z->bra = z->c; /* ], line 71 */
+    {   int ret = r_R1(z); /* call R1, line 81 */
+        if (ret <= 0) return ret;
+    }
+    {   int ret = slice_del(z); /* delete, line 81 */
+        if (ret < 0) return ret;
+    }
+    return 1;
+}
+
+static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 86 */
+    among_var = find_among_b(z, a_2, 200); /* substring, line 86 */
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 86 */
+    switch (among_var) { /* among, line 86 */
+        case 1:
+            {   int ret = r_R1(z); /* call R1, line 110 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 110 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R2(z); /* call R2, line 112 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 112 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 3:
+            {   int ret = r_R2(z); /* call R2, line 114 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_from_s(z, 3, s_6); /* <-, line 114 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 4:
+            {   int ret = r_R2(z); /* call R2, line 116 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_from_s(z, 2, s_7); /* <-, line 116 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 5:
+            {   int ret = r_R1(z); /* call R1, line 118 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_from_s(z, 1, s_8); /* <-, line 118 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+static int r_verb_suffix(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 123 */
+    among_var = find_among_b(z, a_3, 283); /* substring, line 123 */
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 123 */
+    switch (among_var) { /* among, line 123 */
+        case 1:
+            {   int ret = r_R1(z); /* call R1, line 168 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 168 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R2(z); /* call R2, line 170 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 170 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+static int r_residual_suffix(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 175 */
+    among_var = find_among_b(z, a_4, 22); /* substring, line 175 */
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 175 */
+    switch (among_var) { /* among, line 175 */
+        case 1:
+            {   int ret = r_R1(z); /* call R1, line 178 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 178 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R1(z); /* call R1, line 180 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_from_s(z, 2, s_9); /* <-, line 180 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+extern int catalan_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
+    /* do, line 186 */
+    {   int ret = r_mark_regions(z); /* call mark_regions, line 186 */
+        if (ret < 0) return ret;
+    }
+    z->lb = z->c; z->c = z->l; /* backwards, line 187 */
+
+    {   int m1 = z->l - z->c; (void)m1; /* do, line 188 */
+        {   int ret = r_attached_pronoun(z); /* call attached_pronoun, line 188 */
+            if (ret < 0) return ret;
+        }
+        z->c = z->l - m1;
+    }
+    {   int m2 = z->l - z->c; (void)m2; /* do, line 189 */
+        {   int m3 = z->l - z->c; (void)m3; /* or, line 189 */
+            {   int ret = r_standard_suffix(z); /* call standard_suffix, line 189 */
+                if (ret == 0) goto lab2;
+                if (ret < 0) return ret;
+            }
+            goto lab1;
+        lab2:
+            z->c = z->l - m3;
+            {   int ret = r_verb_suffix(z); /* call verb_suffix, line 190 */
+                if (ret == 0) goto lab0;
+                if (ret < 0) return ret;
+            }
+        }
+    lab1:
+    lab0:
+        z->c = z->l - m2;
+    }
+    {   int m4 = z->l - z->c; (void)m4; /* do, line 192 */
+        {   int ret = r_residual_suffix(z); /* call residual_suffix, line 192 */
+            if (ret < 0) return ret;
+        }
+        z->c = z->l - m4;
+    }
+    z->c = z->lb;
+    {   int c5 = z->c; /* do, line 194 */
+        {   int ret = r_cleaning(z); /* call cleaning, line 194 */
+            if (ret < 0) return ret;
+        }
+        z->c = c5;
+    }
+    return 1;
+}
+
+extern struct SN_env * catalan_ISO_8859_1_create_env(void) { return SN_create_env(0, 2, 0); }
+
+extern void catalan_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+
index 0ecbbb76a8f2f9fed53bc18df3c8c7d3c8d39c2e..dff225884b8aa3259daa3a23246cdbaf925072e0 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -241,10 +240,8 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
             }
             {   int m3 = z->l - z->c; (void)m3; /* do, line 72 */
                 {   int ret = r_consonant_pair(z); /* call consonant_pair, line 72 */
-                    if (ret == 0) goto lab1;
                     if (ret < 0) return ret;
                 }
-            lab1:
                 z->c = z->l - m3;
             }
             break;
@@ -279,44 +276,34 @@ static int r_undouble(struct SN_env * z) { /* backwardmode */
 extern int danish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 86 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 86 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 87 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 88 */
         {   int ret = r_main_suffix(z); /* call main_suffix, line 88 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 89 */
         {   int ret = r_consonant_pair(z); /* call consonant_pair, line 89 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 90 */
         {   int ret = r_other_suffix(z); /* call other_suffix, line 90 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 91 */
         {   int ret = r_undouble(z); /* call undouble, line 91 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m5;
     }
     z->c = z->lb;
index b3d2c4e5d139965bc0f408672bcb46508f1b1e1e..aa33b42df39601d2152fa3b7c45b44f96aa411e8 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -148,8 +147,9 @@ static const symbol s_14[] = { 'i', 'g' };
 static int r_prelude(struct SN_env * z) { /* forwardmode */
     int among_var;
     {   int c_test1 = z->c; /* test, line 42 */
-        while(1) { /* repeat, line 42 */
-            int c2 = z->c;
+/* repeat, line 42 */
+
+        while(1) {            int c2 = z->c;
             z->bra = z->c; /* [, line 43 */
             if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((340306450 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else /* substring, line 43 */
             among_var = find_among(z, a_0, 11);
@@ -204,8 +204,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
     lab1:
         ;
     }
-    while(1) { /* repeat, line 58 */
-        int c4 = z->c;
+/* repeat, line 58 */
+
+    while(1) {        int c4 = z->c;
         while(1) { /* goto, line 58 */
             int c5 = z->c;
             if (in_grouping(z, g_v, 97, 232, 0)) goto lab3; /* grouping v, line 59 */
@@ -278,8 +279,9 @@ lab0:
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 75 */
-        int c1 = z->c;
+/* repeat, line 75 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 77 */
         if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else /* substring, line 77 */
         among_var = find_among(z, a_1, 3);
@@ -421,50 +423,48 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
     }
     {   int m2 = z->l - z->c; (void)m2; /* do, line 120 */
         {   int ret = r_e_ending(z); /* call e_ending, line 120 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 122 */
         z->ket = z->c; /* [, line 122 */
-        if (!(eq_s_b(z, 4, s_12))) goto lab2; /* literal, line 122 */
+        if (!(eq_s_b(z, 4, s_12))) goto lab1; /* literal, line 122 */
         z->bra = z->c; /* ], line 122 */
         {   int ret = r_R2(z); /* call R2, line 122 */
-            if (ret == 0) goto lab2;
+            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
         {   int m4 = z->l - z->c; (void)m4; /* not, line 122 */
-            if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab3; /* literal, line 122 */
+            if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2; /* literal, line 122 */
             z->c--;
-            goto lab2;
-        lab3:
+            goto lab1;
+        lab2:
             z->c = z->l - m4;
         }
         {   int ret = slice_del(z); /* delete, line 122 */
             if (ret < 0) return ret;
         }
         z->ket = z->c; /* [, line 123 */
-        if (!(eq_s_b(z, 2, s_13))) goto lab2; /* literal, line 123 */
+        if (!(eq_s_b(z, 2, s_13))) goto lab1; /* literal, line 123 */
         z->bra = z->c; /* ], line 123 */
         {   int ret = r_en_ending(z); /* call en_ending, line 123 */
-            if (ret == 0) goto lab2;
+            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab2:
+    lab1:
         z->c = z->l - m3;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 126 */
         z->ket = z->c; /* [, line 127 */
-        if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab4; /* substring, line 127 */
+        if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3; /* substring, line 127 */
         among_var = find_among_b(z, a_4, 6);
-        if (!(among_var)) goto lab4;
+        if (!(among_var)) goto lab3;
         z->bra = z->c; /* ], line 127 */
         switch (among_var) { /* among, line 127 */
             case 1:
                 {   int ret = r_R2(z); /* call R2, line 129 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 {   int ret = slice_del(z); /* delete, line 129 */
@@ -472,42 +472,42 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
                 }
                 {   int m6 = z->l - z->c; (void)m6; /* or, line 130 */
                     z->ket = z->c; /* [, line 130 */
-                    if (!(eq_s_b(z, 2, s_14))) goto lab6; /* literal, line 130 */
+                    if (!(eq_s_b(z, 2, s_14))) goto lab5; /* literal, line 130 */
                     z->bra = z->c; /* ], line 130 */
                     {   int ret = r_R2(z); /* call R2, line 130 */
-                        if (ret == 0) goto lab6;
+                        if (ret == 0) goto lab5;
                         if (ret < 0) return ret;
                     }
                     {   int m7 = z->l - z->c; (void)m7; /* not, line 130 */
-                        if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7; /* literal, line 130 */
+                        if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6; /* literal, line 130 */
                         z->c--;
-                        goto lab6;
-                    lab7:
+                        goto lab5;
+                    lab6:
                         z->c = z->l - m7;
                     }
                     {   int ret = slice_del(z); /* delete, line 130 */
                         if (ret < 0) return ret;
                     }
-                    goto lab5;
-                lab6:
+                    goto lab4;
+                lab5:
                     z->c = z->l - m6;
                     {   int ret = r_undouble(z); /* call undouble, line 130 */
-                        if (ret == 0) goto lab4;
+                        if (ret == 0) goto lab3;
                         if (ret < 0) return ret;
                     }
                 }
-            lab5:
+            lab4:
                 break;
             case 2:
                 {   int ret = r_R2(z); /* call R2, line 133 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 {   int m8 = z->l - z->c; (void)m8; /* not, line 133 */
-                    if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab8; /* literal, line 133 */
+                    if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7; /* literal, line 133 */
                     z->c--;
-                    goto lab4;
-                lab8:
+                    goto lab3;
+                lab7:
                     z->c = z->l - m8;
                 }
                 {   int ret = slice_del(z); /* delete, line 133 */
@@ -516,20 +516,20 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
                 break;
             case 3:
                 {   int ret = r_R2(z); /* call R2, line 136 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 {   int ret = slice_del(z); /* delete, line 136 */
                     if (ret < 0) return ret;
                 }
                 {   int ret = r_e_ending(z); /* call e_ending, line 136 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 break;
             case 4:
                 {   int ret = r_R2(z); /* call R2, line 139 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 {   int ret = slice_del(z); /* delete, line 139 */
@@ -538,34 +538,34 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
                 break;
             case 5:
                 {   int ret = r_R2(z); /* call R2, line 142 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
-                if (!(z->B[0])) goto lab4; /* Boolean test e_found, line 142 */
+                if (!(z->B[0])) goto lab3; /* Boolean test e_found, line 142 */
                 {   int ret = slice_del(z); /* delete, line 142 */
                     if (ret < 0) return ret;
                 }
                 break;
         }
-    lab4:
+    lab3:
         z->c = z->l - m5;
     }
     {   int m9 = z->l - z->c; (void)m9; /* do, line 146 */
-        if (out_grouping_b(z, g_v_I, 73, 232, 0)) goto lab9; /* non v_I, line 147 */
+        if (out_grouping_b(z, g_v_I, 73, 232, 0)) goto lab8; /* non v_I, line 147 */
         {   int m_test10 = z->l - z->c; /* test, line 148 */
-            if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab9; /* among, line 149 */
-            if (!(find_among_b(z, a_5, 4))) goto lab9;
-            if (out_grouping_b(z, g_v, 97, 232, 0)) goto lab9; /* non v, line 150 */
+            if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab8; /* among, line 149 */
+            if (!(find_among_b(z, a_5, 4))) goto lab8;
+            if (out_grouping_b(z, g_v, 97, 232, 0)) goto lab8; /* non v, line 150 */
             z->c = z->l - m_test10;
         }
         z->ket = z->c; /* [, line 152 */
-        if (z->c <= z->lb) goto lab9;
+        if (z->c <= z->lb) goto lab8;
         z->c--; /* next, line 152 */
         z->bra = z->c; /* ], line 152 */
         {   int ret = slice_del(z); /* delete, line 152 */
             if (ret < 0) return ret;
         }
-    lab9:
+    lab8:
         z->c = z->l - m9;
     }
     return 1;
@@ -574,35 +574,27 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
 extern int dutch_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 159 */
         {   int ret = r_prelude(z); /* call prelude, line 159 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     {   int c2 = z->c; /* do, line 160 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 160 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = c2;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 161 */
 
     /* do, line 162 */
     {   int ret = r_standard_suffix(z); /* call standard_suffix, line 162 */
-        if (ret == 0) goto lab2;
         if (ret < 0) return ret;
     }
-lab2:
     z->c = z->lb;
     {   int c3 = z->c; /* do, line 163 */
         {   int ret = r_postlude(z); /* call postlude, line 163 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = c3;
     }
     return 1;
index 87ff8041aa36c00d33f3a0797f2a3fbe02236788..d1f80c6c3b3c803ac38a7691c88a142fd580db65 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -383,8 +382,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
         z->c = c2;
     }
     {   int c3 = z->c; /* do, line 29 */
-        while(1) { /* repeat, line 29 */
-            int c4 = z->c;
+/* repeat, line 29 */
+
+        while(1) {            int c4 = z->c;
             while(1) { /* goto, line 29 */
                 int c5 = z->c;
                 if (in_grouping(z, g_v, 97, 121, 0)) goto lab4; /* grouping v, line 29 */
@@ -940,8 +940,9 @@ static int r_exception1(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     if (!(z->B[0])) return 0; /* Boolean test Y_found, line 203 */
-    while(1) { /* repeat, line 203 */
-        int c1 = z->c;
+/* repeat, line 203 */
+
+    while(1) {        int c1 = z->c;
         while(1) { /* goto, line 203 */
             int c2 = z->c;
             z->bra = z->c; /* [, line 203 */
@@ -989,91 +990,71 @@ extern int english_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
         z->c = c1;
         /* do, line 209 */
         {   int ret = r_prelude(z); /* call prelude, line 209 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         /* do, line 210 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 210 */
-            if (ret == 0) goto lab5;
             if (ret < 0) return ret;
         }
-    lab5:
         z->lb = z->c; z->c = z->l; /* backwards, line 211 */
 
         {   int m3 = z->l - z->c; (void)m3; /* do, line 213 */
             {   int ret = r_Step_1a(z); /* call Step_1a, line 213 */
-                if (ret == 0) goto lab6;
                 if (ret < 0) return ret;
             }
-        lab6:
             z->c = z->l - m3;
         }
         {   int m4 = z->l - z->c; (void)m4; /* or, line 215 */
             {   int ret = r_exception2(z); /* call exception2, line 215 */
-                if (ret == 0) goto lab8;
+                if (ret == 0) goto lab5;
                 if (ret < 0) return ret;
             }
-            goto lab7;
-        lab8:
+            goto lab4;
+        lab5:
             z->c = z->l - m4;
             {   int m5 = z->l - z->c; (void)m5; /* do, line 217 */
                 {   int ret = r_Step_1b(z); /* call Step_1b, line 217 */
-                    if (ret == 0) goto lab9;
                     if (ret < 0) return ret;
                 }
-            lab9:
                 z->c = z->l - m5;
             }
             {   int m6 = z->l - z->c; (void)m6; /* do, line 218 */
                 {   int ret = r_Step_1c(z); /* call Step_1c, line 218 */
-                    if (ret == 0) goto lab10;
                     if (ret < 0) return ret;
                 }
-            lab10:
                 z->c = z->l - m6;
             }
             {   int m7 = z->l - z->c; (void)m7; /* do, line 220 */
                 {   int ret = r_Step_2(z); /* call Step_2, line 220 */
-                    if (ret == 0) goto lab11;
                     if (ret < 0) return ret;
                 }
-            lab11:
                 z->c = z->l - m7;
             }
             {   int m8 = z->l - z->c; (void)m8; /* do, line 221 */
                 {   int ret = r_Step_3(z); /* call Step_3, line 221 */
-                    if (ret == 0) goto lab12;
                     if (ret < 0) return ret;
                 }
-            lab12:
                 z->c = z->l - m8;
             }
             {   int m9 = z->l - z->c; (void)m9; /* do, line 222 */
                 {   int ret = r_Step_4(z); /* call Step_4, line 222 */
-                    if (ret == 0) goto lab13;
                     if (ret < 0) return ret;
                 }
-            lab13:
                 z->c = z->l - m9;
             }
             {   int m10 = z->l - z->c; (void)m10; /* do, line 224 */
                 {   int ret = r_Step_5(z); /* call Step_5, line 224 */
-                    if (ret == 0) goto lab14;
                     if (ret < 0) return ret;
                 }
-            lab14:
                 z->c = z->l - m10;
             }
         }
-    lab7:
+    lab4:
         z->c = z->lb;
         {   int c11 = z->c; /* do, line 227 */
             {   int ret = r_postlude(z); /* call postlude, line 227 */
-                if (ret == 0) goto lab15;
                 if (ret < 0) return ret;
             }
-        lab15:
             z->c = c11;
         }
     }
index 58285e8c343fd7fb31e0b494a337ee62113133d2..3bb6615a68c446c6458e568984404e8ad1461e14 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -655,10 +654,8 @@ static int r_tidy(struct SN_env * z) { /* backwardmode */
 extern int finnish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 186 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 186 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->B[0] = 0; /* unset ending_removed, line 187 */
@@ -666,63 +663,49 @@ extern int finnish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 189 */
         {   int ret = r_particle_etc(z); /* call particle_etc, line 189 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 190 */
         {   int ret = r_possessive(z); /* call possessive, line 190 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 191 */
         {   int ret = r_case_ending(z); /* call case_ending, line 191 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 192 */
         {   int ret = r_other_endings(z); /* call other_endings, line 192 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m5;
     }
     /* or, line 193 */
-    if (!(z->B[0])) goto lab6; /* Boolean test ending_removed, line 193 */
+    if (!(z->B[0])) goto lab1; /* Boolean test ending_removed, line 193 */
     {   int m6 = z->l - z->c; (void)m6; /* do, line 193 */
         {   int ret = r_i_plural(z); /* call i_plural, line 193 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m6;
     }
-    goto lab5;
-lab6:
+    goto lab0;
+lab1:
     {   int m7 = z->l - z->c; (void)m7; /* do, line 193 */
         {   int ret = r_t_plural(z); /* call t_plural, line 193 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = z->l - m7;
     }
-lab5:
+lab0:
     {   int m8 = z->l - z->c; (void)m8; /* do, line 194 */
         {   int ret = r_tidy(z); /* call tidy, line 194 */
-            if (ret == 0) goto lab9;
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = z->l - m8;
     }
     z->c = z->lb;
index 4e9f76cd9a4134bcca2014a98e38e6aa7263581b..bbf6985ba58419eb58fdc02f7535c0041f855492 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -411,8 +410,9 @@ static const symbol s_33[] = { 'i' };
 static const symbol s_34[] = { 'c' };
 
 static int r_prelude(struct SN_env * z) { /* forwardmode */
-    while(1) { /* repeat, line 38 */
-        int c1 = z->c;
+/* repeat, line 38 */
+
+    while(1) {        int c1 = z->c;
         while(1) { /* goto, line 38 */
             int c2 = z->c;
             {   int c3 = z->c; /* or, line 44 */
@@ -569,8 +569,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 79 */
-        int c1 = z->c;
+/* repeat, line 79 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 81 */
         if (z->c >= z->l || z->p[z->c + 0] >> 5 != 2 || !((35652352 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 7; else /* substring, line 81 */
         among_var = find_among(z, a_1, 7);
@@ -1124,8 +1125,7 @@ static int r_un_double(struct SN_env * z) { /* backwardmode */
 
 static int r_un_accent(struct SN_env * z) { /* backwardmode */
     {   int i = 1;
-        while(1) { /* atleast, line 222 */
-            if (out_grouping_b(z, g_v, 97, 251, 0)) goto lab0; /* non v, line 222 */
+        while(1) {            if (out_grouping_b(z, g_v, 97, 251, 0)) goto lab0; /* non v, line 222 */
             i--;
             continue;
         lab0:
@@ -1154,18 +1154,14 @@ lab1:
 extern int french_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 229 */
         {   int ret = r_prelude(z); /* call prelude, line 229 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 230 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 230 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 231 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 233 */
@@ -1173,85 +1169,79 @@ lab1:
             {   int m4 = z->l - z->c; (void)m4; /* and, line 239 */
                 {   int m5 = z->l - z->c; (void)m5; /* or, line 235 */
                     {   int ret = r_standard_suffix(z); /* call standard_suffix, line 235 */
-                        if (ret == 0) goto lab6;
+                        if (ret == 0) goto lab4;
                         if (ret < 0) return ret;
                     }
-                    goto lab5;
-                lab6:
+                    goto lab3;
+                lab4:
                     z->c = z->l - m5;
                     {   int ret = r_i_verb_suffix(z); /* call i_verb_suffix, line 236 */
-                        if (ret == 0) goto lab7;
+                        if (ret == 0) goto lab5;
                         if (ret < 0) return ret;
                     }
-                    goto lab5;
-                lab7:
+                    goto lab3;
+                lab5:
                     z->c = z->l - m5;
                     {   int ret = r_verb_suffix(z); /* call verb_suffix, line 237 */
-                        if (ret == 0) goto lab4;
+                        if (ret == 0) goto lab2;
                         if (ret < 0) return ret;
                     }
                 }
-            lab5:
+            lab3:
                 z->c = z->l - m4;
                 {   int m6 = z->l - z->c; (void)m6; /* try, line 240 */
                     z->ket = z->c; /* [, line 240 */
                     {   int m7 = z->l - z->c; (void)m7; /* or, line 240 */
-                        if (z->c <= z->lb || z->p[z->c - 1] != 'Y') goto lab10; /* literal, line 240 */
+                        if (z->c <= z->lb || z->p[z->c - 1] != 'Y') goto lab8; /* literal, line 240 */
                         z->c--;
                         z->bra = z->c; /* ], line 240 */
                         {   int ret = slice_from_s(z, 1, s_33); /* <-, line 240 */
                             if (ret < 0) return ret;
                         }
-                        goto lab9;
-                    lab10:
+                        goto lab7;
+                    lab8:
                         z->c = z->l - m7;
-                        if (z->c <= z->lb || z->p[z->c - 1] != 0xE7) { z->c = z->l - m6; goto lab8; } /* literal, line 241 */
+                        if (z->c <= z->lb || z->p[z->c - 1] != 0xE7) { z->c = z->l - m6; goto lab6; } /* literal, line 241 */
                         z->c--;
                         z->bra = z->c; /* ], line 241 */
                         {   int ret = slice_from_s(z, 1, s_34); /* <-, line 241 */
                             if (ret < 0) return ret;
                         }
                     }
-                lab9:
-                lab8:
+                lab7:
+                lab6:
                     ;
                 }
             }
-            goto lab3;
-        lab4:
+            goto lab1;
+        lab2:
             z->c = z->l - m3;
             {   int ret = r_residual_suffix(z); /* call residual_suffix, line 244 */
-                if (ret == 0) goto lab2;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab3:
-    lab2:
+    lab1:
+    lab0:
         z->c = z->l - m2;
     }
     {   int m8 = z->l - z->c; (void)m8; /* do, line 249 */
         {   int ret = r_un_double(z); /* call un_double, line 249 */
-            if (ret == 0) goto lab11;
             if (ret < 0) return ret;
         }
-    lab11:
         z->c = z->l - m8;
     }
     {   int m9 = z->l - z->c; (void)m9; /* do, line 250 */
         {   int ret = r_un_accent(z); /* call un_accent, line 250 */
-            if (ret == 0) goto lab12;
             if (ret < 0) return ret;
         }
-    lab12:
         z->c = z->l - m9;
     }
     z->c = z->lb;
     {   int c10 = z->c; /* do, line 252 */
         {   int ret = r_postlude(z); /* call postlude, line 252 */
-            if (ret == 0) goto lab13;
             if (ret < 0) return ret;
         }
-    lab13:
         z->c = c10;
     }
     return 1;
index ae334f80bf9153dd3236bfbbbe21b6eae68cea24..48d6fbc294a1c44d61726e11b5648d6c69163256 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -126,8 +125,9 @@ static const symbol s_10[] = { 'e', 'n' };
 
 static int r_prelude(struct SN_env * z) { /* forwardmode */
     {   int c_test1 = z->c; /* test, line 35 */
-        while(1) { /* repeat, line 35 */
-            int c2 = z->c;
+/* repeat, line 35 */
+
+        while(1) {            int c2 = z->c;
             {   int c3 = z->c; /* or, line 38 */
                 z->bra = z->c; /* [, line 37 */
                 if (z->c == z->l || z->p[z->c] != 0xDF) goto lab2; /* literal, line 37 */
@@ -150,8 +150,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
         }
         z->c = c_test1;
     }
-    while(1) { /* repeat, line 41 */
-        int c4 = z->c;
+/* repeat, line 41 */
+
+    while(1) {        int c4 = z->c;
         while(1) { /* goto, line 41 */
             int c5 = z->c;
             if (in_grouping(z, g_v, 97, 252, 0)) goto lab4; /* grouping v, line 42 */
@@ -233,8 +234,9 @@ lab0:
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 60 */
-        int c1 = z->c;
+/* repeat, line 60 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 62 */
         among_var = find_among(z, a_0, 6); /* substring, line 62 */
         if (!(among_var)) goto lab0;
@@ -463,35 +465,27 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
 extern int german_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 134 */
         {   int ret = r_prelude(z); /* call prelude, line 134 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     {   int c2 = z->c; /* do, line 135 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 135 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = c2;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 136 */
 
     /* do, line 137 */
     {   int ret = r_standard_suffix(z); /* call standard_suffix, line 137 */
-        if (ret == 0) goto lab2;
         if (ret < 0) return ret;
     }
-lab2:
     z->c = z->lb;
     {   int c3 = z->c; /* do, line 138 */
         {   int ret = r_postlude(z); /* call postlude, line 138 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = c3;
     }
     return 1;
index 42711709032a34ae60171e6efedd1b5e6bacd708..6e0c911d690f9054574c27c48b2cdc7298d993bc 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -314,8 +313,9 @@ static int r_remove_second_order_prefix(struct SN_env * z) { /* forwardmode */
 extern int indonesian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     z->I[0] = 0; /* $measure = <integer expression>, line 172 */
     {   int c1 = z->c; /* do, line 173 */
-        while(1) { /* repeat, line 173 */
-            int c2 = z->c;
+/* repeat, line 173 */
+
+        while(1) {            int c2 = z->c;
             {    /* gopast */ /* grouping vowel, line 173 */
                 int ret = out_grouping(z, g_vowel, 97, 117, 1);
                 if (ret < 0) goto lab1;
@@ -335,19 +335,15 @@ extern int indonesian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
 
     {   int m3 = z->l - z->c; (void)m3; /* do, line 177 */
         {   int ret = r_remove_particle(z); /* call remove_particle, line 177 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     if (!(z->I[0] > 2)) return 0; /* $(<integer expression> > <integer expression>), line 178 */
     {   int m4 = z->l - z->c; (void)m4; /* do, line 179 */
         {   int ret = r_remove_possessive_pronoun(z); /* call remove_possessive_pronoun, line 179 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     z->c = z->lb;
@@ -355,56 +351,54 @@ extern int indonesian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c5 = z->c; /* or, line 188 */
         {   int c_test6 = z->c; /* test, line 182 */
             {   int ret = r_remove_first_order_prefix(z); /* call remove_first_order_prefix, line 183 */
-                if (ret == 0) goto lab5;
+                if (ret == 0) goto lab3;
                 if (ret < 0) return ret;
             }
             {   int c7 = z->c; /* do, line 184 */
                 {   int c_test8 = z->c; /* test, line 185 */
-                    if (!(z->I[0] > 2)) goto lab6; /* $(<integer expression> > <integer expression>), line 185 */
+                    if (!(z->I[0] > 2)) goto lab4; /* $(<integer expression> > <integer expression>), line 185 */
                     z->lb = z->c; z->c = z->l; /* backwards, line 185 */
 
                     {   int ret = r_remove_suffix(z); /* call remove_suffix, line 185 */
-                        if (ret == 0) goto lab6;
+                        if (ret == 0) goto lab4;
                         if (ret < 0) return ret;
                     }
                     z->c = z->lb;
                     z->c = c_test8;
                 }
-                if (!(z->I[0] > 2)) goto lab6; /* $(<integer expression> > <integer expression>), line 186 */
+                if (!(z->I[0] > 2)) goto lab4; /* $(<integer expression> > <integer expression>), line 186 */
                 {   int ret = r_remove_second_order_prefix(z); /* call remove_second_order_prefix, line 186 */
-                    if (ret == 0) goto lab6;
+                    if (ret == 0) goto lab4;
                     if (ret < 0) return ret;
                 }
-            lab6:
+            lab4:
                 z->c = c7;
             }
             z->c = c_test6;
         }
-        goto lab4;
-    lab5:
+        goto lab2;
+    lab3:
         z->c = c5;
         {   int c9 = z->c; /* do, line 189 */
             {   int ret = r_remove_second_order_prefix(z); /* call remove_second_order_prefix, line 189 */
-                if (ret == 0) goto lab7;
                 if (ret < 0) return ret;
             }
-        lab7:
             z->c = c9;
         }
         {   int c10 = z->c; /* do, line 190 */
-            if (!(z->I[0] > 2)) goto lab8; /* $(<integer expression> > <integer expression>), line 190 */
+            if (!(z->I[0] > 2)) goto lab5; /* $(<integer expression> > <integer expression>), line 190 */
             z->lb = z->c; z->c = z->l; /* backwards, line 190 */
 
             {   int ret = r_remove_suffix(z); /* call remove_suffix, line 190 */
-                if (ret == 0) goto lab8;
+                if (ret == 0) goto lab5;
                 if (ret < 0) return ret;
             }
             z->c = z->lb;
-        lab8:
+        lab5:
             z->c = c10;
         }
     }
-lab4:
+lab2:
     return 1;
 }
 
index 8ef9a90d50119d0c86b6899c2b13d492a5375e2e..87df430aea64918632c5e40ba0fc92aedbfb3aeb 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -442,42 +441,32 @@ static int r_verb_sfx(struct SN_env * z) { /* backwardmode */
 extern int irish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 144 */
         {   int ret = r_initial_morph(z); /* call initial_morph, line 144 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 145 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 145 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 146 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 147 */
         {   int ret = r_noun_sfx(z); /* call noun_sfx, line 147 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 148 */
         {   int ret = r_deriv(z); /* call deriv, line 148 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 149 */
         {   int ret = r_verb_sfx(z); /* call verb_sfx, line 149 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m4;
     }
     z->c = z->lb;
index fca2e3af1c327167c80cddb2b031b9edbb45afe8..a06e8902d93df0792ffc4b266fa07fc0d95870e8 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -492,8 +491,9 @@ static const symbol s_17[] = { 'i', 'c' };
 static int r_prelude(struct SN_env * z) { /* forwardmode */
     int among_var;
     {   int c_test1 = z->c; /* test, line 35 */
-        while(1) { /* repeat, line 35 */
-            int c2 = z->c;
+/* repeat, line 35 */
+
+        while(1) {            int c2 = z->c;
             z->bra = z->c; /* [, line 36 */
             among_var = find_among(z, a_0, 7); /* substring, line 36 */
             if (!(among_var)) goto lab0;
@@ -541,8 +541,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
         }
         z->c = c_test1;
     }
-    while(1) { /* repeat, line 46 */
-        int c3 = z->c;
+/* repeat, line 46 */
+
+    while(1) {        int c3 = z->c;
         while(1) { /* goto, line 46 */
             int c4 = z->c;
             if (in_grouping(z, g_v, 97, 249, 0)) goto lab2; /* grouping v, line 47 */
@@ -664,8 +665,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 70 */
-        int c1 = z->c;
+/* repeat, line 70 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 72 */
         if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 85)) among_var = 3; else /* substring, line 72 */
         among_var = find_among(z, a_1, 3);
@@ -967,61 +969,51 @@ static int r_vowel_suffix(struct SN_env * z) { /* backwardmode */
 extern int italian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 182 */
         {   int ret = r_prelude(z); /* call prelude, line 182 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 183 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 183 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 184 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 185 */
         {   int ret = r_attached_pronoun(z); /* call attached_pronoun, line 185 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 186 */
         {   int m4 = z->l - z->c; (void)m4; /* or, line 186 */
             {   int ret = r_standard_suffix(z); /* call standard_suffix, line 186 */
-                if (ret == 0) goto lab5;
+                if (ret == 0) goto lab2;
                 if (ret < 0) return ret;
             }
-            goto lab4;
-        lab5:
+            goto lab1;
+        lab2:
             z->c = z->l - m4;
             {   int ret = r_verb_suffix(z); /* call verb_suffix, line 186 */
-                if (ret == 0) goto lab3;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab4:
-    lab3:
+    lab1:
+    lab0:
         z->c = z->l - m3;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 187 */
         {   int ret = r_vowel_suffix(z); /* call vowel_suffix, line 187 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m5;
     }
     z->c = z->lb;
     {   int c6 = z->c; /* do, line 189 */
         {   int ret = r_postlude(z); /* call postlude, line 189 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = c6;
     }
     return 1;
index 88eb9290e9783bb0aaa5cfc936232870e9faf3d6..a70f6f5aa200a2e3dc192f5687c1742f0ea5c443 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -241,36 +240,28 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
 extern int norwegian_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 74 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 74 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 75 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 76 */
         {   int ret = r_main_suffix(z); /* call main_suffix, line 76 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 77 */
         {   int ret = r_consonant_pair(z); /* call consonant_pair, line 77 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 78 */
         {   int ret = r_other_suffix(z); /* call other_suffix, line 78 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     z->c = z->lb;
index cc330e0cd7390f1bb0f264db6e76a8ac44cb82e5..4666afb725f20e7feaa8cb5bbe1fff87b5648504 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -575,8 +574,9 @@ extern int porter_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
         z->c = c1;
     }
     {   int c2 = z->c; /* do, line 117 */
-        while(1) { /* repeat, line 117 */
-            int c3 = z->c;
+/* repeat, line 117 */
+
+        while(1) {            int c3 = z->c;
             while(1) { /* goto, line 117 */
                 int c4 = z->c;
                 if (in_grouping(z, g_v, 97, 121, 0)) goto lab3; /* grouping v, line 117 */
@@ -634,95 +634,80 @@ extern int porter_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
 
     {   int m6 = z->l - z->c; (void)m6; /* do, line 127 */
         {   int ret = r_Step_1a(z); /* call Step_1a, line 127 */
-            if (ret == 0) goto lab5;
             if (ret < 0) return ret;
         }
-    lab5:
         z->c = z->l - m6;
     }
     {   int m7 = z->l - z->c; (void)m7; /* do, line 128 */
         {   int ret = r_Step_1b(z); /* call Step_1b, line 128 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m7;
     }
     {   int m8 = z->l - z->c; (void)m8; /* do, line 129 */
         {   int ret = r_Step_1c(z); /* call Step_1c, line 129 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m8;
     }
     {   int m9 = z->l - z->c; (void)m9; /* do, line 130 */
         {   int ret = r_Step_2(z); /* call Step_2, line 130 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = z->l - m9;
     }
     {   int m10 = z->l - z->c; (void)m10; /* do, line 131 */
         {   int ret = r_Step_3(z); /* call Step_3, line 131 */
-            if (ret == 0) goto lab9;
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = z->l - m10;
     }
     {   int m11 = z->l - z->c; (void)m11; /* do, line 132 */
         {   int ret = r_Step_4(z); /* call Step_4, line 132 */
-            if (ret == 0) goto lab10;
             if (ret < 0) return ret;
         }
-    lab10:
         z->c = z->l - m11;
     }
     {   int m12 = z->l - z->c; (void)m12; /* do, line 133 */
         {   int ret = r_Step_5a(z); /* call Step_5a, line 133 */
-            if (ret == 0) goto lab11;
             if (ret < 0) return ret;
         }
-    lab11:
         z->c = z->l - m12;
     }
     {   int m13 = z->l - z->c; (void)m13; /* do, line 134 */
         {   int ret = r_Step_5b(z); /* call Step_5b, line 134 */
-            if (ret == 0) goto lab12;
             if (ret < 0) return ret;
         }
-    lab12:
         z->c = z->l - m13;
     }
     z->c = z->lb;
     {   int c14 = z->c; /* do, line 137 */
-        if (!(z->B[0])) goto lab13; /* Boolean test Y_found, line 137 */
-        while(1) { /* repeat, line 137 */
-            int c15 = z->c;
+        if (!(z->B[0])) goto lab5; /* Boolean test Y_found, line 137 */
+/* repeat, line 137 */
+
+        while(1) {            int c15 = z->c;
             while(1) { /* goto, line 137 */
                 int c16 = z->c;
                 z->bra = z->c; /* [, line 137 */
-                if (z->c == z->l || z->p[z->c] != 'Y') goto lab15; /* literal, line 137 */
+                if (z->c == z->l || z->p[z->c] != 'Y') goto lab7; /* literal, line 137 */
                 z->c++;
                 z->ket = z->c; /* ], line 137 */
                 z->c = c16;
                 break;
-            lab15:
+            lab7:
                 z->c = c16;
-                if (z->c >= z->l) goto lab14;
+                if (z->c >= z->l) goto lab6;
                 z->c++; /* goto, line 137 */
             }
             {   int ret = slice_from_s(z, 1, s_23); /* <-, line 137 */
                 if (ret < 0) return ret;
             }
             continue;
-        lab14:
+        lab6:
             z->c = c15;
             break;
         }
-    lab13:
+    lab5:
         z->c = c14;
     }
     return 1;
index 674d9c2657ae793745c38e619442e86686805671..1e440a66e143cebae65bdf08d41e4f3f0ed7d2bb 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -475,8 +474,9 @@ static const symbol s_10[] = { 'c' };
 
 static int r_prelude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 36 */
-        int c1 = z->c;
+/* repeat, line 36 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 37 */
         if (z->c >= z->l || (z->p[z->c + 0] != 227 && z->p[z->c + 0] != 245)) among_var = 3; else /* substring, line 37 */
         among_var = find_among(z, a_0, 3);
@@ -588,8 +588,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 62 */
-        int c1 = z->c;
+/* repeat, line 62 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 63 */
         if (z->c + 1 >= z->l || z->p[z->c + 1] != 126) among_var = 3; else /* substring, line 63 */
         among_var = find_among(z, a_1, 3);
@@ -879,18 +880,14 @@ static int r_residual_form(struct SN_env * z) { /* backwardmode */
 extern int portuguese_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 202 */
         {   int ret = r_prelude(z); /* call prelude, line 202 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 203 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 203 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 204 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 205 */
@@ -898,67 +895,63 @@ lab1:
             {   int m4 = z->l - z->c; (void)m4; /* and, line 207 */
                 {   int m5 = z->l - z->c; (void)m5; /* or, line 206 */
                     {   int ret = r_standard_suffix(z); /* call standard_suffix, line 206 */
-                        if (ret == 0) goto lab6;
+                        if (ret == 0) goto lab4;
                         if (ret < 0) return ret;
                     }
-                    goto lab5;
-                lab6:
+                    goto lab3;
+                lab4:
                     z->c = z->l - m5;
                     {   int ret = r_verb_suffix(z); /* call verb_suffix, line 206 */
-                        if (ret == 0) goto lab4;
+                        if (ret == 0) goto lab2;
                         if (ret < 0) return ret;
                     }
                 }
-            lab5:
+            lab3:
                 z->c = z->l - m4;
                 {   int m6 = z->l - z->c; (void)m6; /* do, line 207 */
                     z->ket = z->c; /* [, line 207 */
-                    if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab7; /* literal, line 207 */
+                    if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab5; /* literal, line 207 */
                     z->c--;
                     z->bra = z->c; /* ], line 207 */
                     {   int m_test7 = z->l - z->c; /* test, line 207 */
-                        if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab7; /* literal, line 207 */
+                        if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab5; /* literal, line 207 */
                         z->c--;
                         z->c = z->l - m_test7;
                     }
                     {   int ret = r_RV(z); /* call RV, line 207 */
-                        if (ret == 0) goto lab7;
+                        if (ret == 0) goto lab5;
                         if (ret < 0) return ret;
                     }
                     {   int ret = slice_del(z); /* delete, line 207 */
                         if (ret < 0) return ret;
                     }
-                lab7:
+                lab5:
                     z->c = z->l - m6;
                 }
             }
-            goto lab3;
-        lab4:
+            goto lab1;
+        lab2:
             z->c = z->l - m3;
             {   int ret = r_residual_suffix(z); /* call residual_suffix, line 209 */
-                if (ret == 0) goto lab2;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab3:
-    lab2:
+    lab1:
+    lab0:
         z->c = z->l - m2;
     }
     {   int m8 = z->l - z->c; (void)m8; /* do, line 211 */
         {   int ret = r_residual_form(z); /* call residual_form, line 211 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = z->l - m8;
     }
     z->c = z->lb;
     {   int c9 = z->c; /* do, line 213 */
         {   int ret = r_postlude(z); /* call postlude, line 213 */
-            if (ret == 0) goto lab9;
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = c9;
     }
     return 1;
index c2f101df3ac03c259b11f386efd3a15ed59b1377..e77aadda6a397b343f98f29a30bf0efa2fc67f91 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -586,8 +585,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 49 */
-        int c1 = z->c;
+/* repeat, line 49 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 50 */
         if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((67641858 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else /* substring, line 50 */
         among_var = find_among(z, a_0, 6);
@@ -985,60 +985,52 @@ static int r_residual_suffix(struct SN_env * z) { /* backwardmode */
 extern int spanish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     /* do, line 216 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 216 */
-        if (ret == 0) goto lab0;
         if (ret < 0) return ret;
     }
-lab0:
     z->lb = z->c; z->c = z->l; /* backwards, line 217 */
 
     {   int m1 = z->l - z->c; (void)m1; /* do, line 218 */
         {   int ret = r_attached_pronoun(z); /* call attached_pronoun, line 218 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m1;
     }
     {   int m2 = z->l - z->c; (void)m2; /* do, line 219 */
         {   int m3 = z->l - z->c; (void)m3; /* or, line 219 */
             {   int ret = r_standard_suffix(z); /* call standard_suffix, line 219 */
-                if (ret == 0) goto lab4;
+                if (ret == 0) goto lab2;
                 if (ret < 0) return ret;
             }
-            goto lab3;
-        lab4:
+            goto lab1;
+        lab2:
             z->c = z->l - m3;
             {   int ret = r_y_verb_suffix(z); /* call y_verb_suffix, line 220 */
-                if (ret == 0) goto lab5;
+                if (ret == 0) goto lab3;
                 if (ret < 0) return ret;
             }
-            goto lab3;
-        lab5:
+            goto lab1;
+        lab3:
             z->c = z->l - m3;
             {   int ret = r_verb_suffix(z); /* call verb_suffix, line 221 */
-                if (ret == 0) goto lab2;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab3:
-    lab2:
+    lab1:
+    lab0:
         z->c = z->l - m2;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 223 */
         {   int ret = r_residual_suffix(z); /* call residual_suffix, line 223 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m4;
     }
     z->c = z->lb;
     {   int c5 = z->c; /* do, line 225 */
         {   int ret = r_postlude(z); /* call postlude, line 225 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = c5;
     }
     return 1;
index 13be21762c39686695dc43d1a77e399f702bb11a..e53777eb735a8e3c053e03ddf436d8a28d017442 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -257,36 +256,28 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
 extern int swedish_ISO_8859_1_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 66 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 66 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 67 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 68 */
         {   int ret = r_main_suffix(z); /* call main_suffix, line 68 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 69 */
         {   int ret = r_consonant_pair(z); /* call consonant_pair, line 69 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 70 */
         {   int ret = r_other_suffix(z); /* call other_suffix, line 70 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     z->c = z->lb;
index ae088a32f753353c5d20a13a8e2da3b602e916af..44ef3d9253d8d1df3cc5af71472697660567363d 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -795,84 +794,64 @@ static int r_plur_owner(struct SN_env * z) { /* backwardmode */
 extern int hungarian_ISO_8859_2_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 229 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 229 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 230 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 231 */
         {   int ret = r_instrum(z); /* call instrum, line 231 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 232 */
         {   int ret = r_case(z); /* call case, line 232 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 233 */
         {   int ret = r_case_special(z); /* call case_special, line 233 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 234 */
         {   int ret = r_case_other(z); /* call case_other, line 234 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m5;
     }
     {   int m6 = z->l - z->c; (void)m6; /* do, line 235 */
         {   int ret = r_factive(z); /* call factive, line 235 */
-            if (ret == 0) goto lab5;
             if (ret < 0) return ret;
         }
-    lab5:
         z->c = z->l - m6;
     }
     {   int m7 = z->l - z->c; (void)m7; /* do, line 236 */
         {   int ret = r_owned(z); /* call owned, line 236 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m7;
     }
     {   int m8 = z->l - z->c; (void)m8; /* do, line 237 */
         {   int ret = r_sing_owner(z); /* call sing_owner, line 237 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m8;
     }
     {   int m9 = z->l - z->c; (void)m9; /* do, line 238 */
         {   int ret = r_plur_owner(z); /* call plur_owner, line 238 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = z->l - m9;
     }
     {   int m10 = z->l - z->c; (void)m10; /* do, line 239 */
         {   int ret = r_plural(z); /* call plural, line 239 */
-            if (ret == 0) goto lab9;
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = z->l - m10;
     }
     z->c = z->lb;
index a085e09efe58e32b7f0399b994d1d3d742c13c77..14c6fb3c1463eb020af8d190d9c9429e768d167a 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -537,8 +536,9 @@ static const symbol s_17[] = { 't' };
 static const symbol s_18[] = { 'i', 's', 't' };
 
 static int r_prelude(struct SN_env * z) { /* forwardmode */
-    while(1) { /* repeat, line 32 */
-        int c1 = z->c;
+/* repeat, line 32 */
+
+    while(1) {        int c1 = z->c;
         while(1) { /* goto, line 32 */
             int c2 = z->c;
             if (in_grouping(z, g_v, 97, 238, 0)) goto lab1; /* grouping v, line 33 */
@@ -660,8 +660,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 56 */
-        int c1 = z->c;
+/* repeat, line 56 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 58 */
         if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 85)) among_var = 3; else /* substring, line 58 */
         among_var = find_among(z, a_0, 3);
@@ -813,8 +814,9 @@ static int r_combo_suffix(struct SN_env * z) { /* backwardmode */
 static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
     int among_var;
     z->B[0] = 0; /* unset standard_suffix_removed, line 130 */
-    while(1) { /* repeat, line 131 */
-        int m1 = z->l - z->c; (void)m1;
+/* repeat, line 131 */
+
+    while(1) {        int m1 = z->l - z->c; (void)m1;
         {   int ret = r_combo_suffix(z); /* call combo_suffix, line 131 */
             if (ret == 0) goto lab0;
             if (ret < 0) return ret;
@@ -907,66 +909,54 @@ static int r_vowel_suffix(struct SN_env * z) { /* backwardmode */
 extern int romanian_ISO_8859_2_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 226 */
         {   int ret = r_prelude(z); /* call prelude, line 226 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 227 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 227 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 228 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 229 */
         {   int ret = r_step_0(z); /* call step_0, line 229 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 230 */
         {   int ret = r_standard_suffix(z); /* call standard_suffix, line 230 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 231 */
         {   int m5 = z->l - z->c; (void)m5; /* or, line 231 */
-            if (!(z->B[0])) goto lab6; /* Boolean test standard_suffix_removed, line 231 */
-            goto lab5;
-        lab6:
+            if (!(z->B[0])) goto lab2; /* Boolean test standard_suffix_removed, line 231 */
+            goto lab1;
+        lab2:
             z->c = z->l - m5;
             {   int ret = r_verb_suffix(z); /* call verb_suffix, line 231 */
-                if (ret == 0) goto lab4;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab5:
-    lab4:
+    lab1:
+    lab0:
         z->c = z->l - m4;
     }
     {   int m6 = z->l - z->c; (void)m6; /* do, line 232 */
         {   int ret = r_vowel_suffix(z); /* call vowel_suffix, line 232 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m6;
     }
     z->c = z->lb;
     {   int c7 = z->c; /* do, line 234 */
         {   int ret = r_postlude(z); /* call postlude, line 234 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = c7;
     }
     return 1;
index fea26a66cf7e66597c4d1b39931215a6200e6ba3..eef4b208e8f4903c7ebe45a6ede6c7499fa07849 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -569,8 +568,9 @@ static int r_tidy_up(struct SN_env * z) { /* backwardmode */
 
 extern int russian_KOI8_R_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 205 */
-        while(1) { /* repeat, line 205 */
-            int c2 = z->c;
+/* repeat, line 205 */
+
+        while(1) {            int c2 = z->c;
             while(1) { /* goto, line 205 */
                 int c3 = z->c;
                 z->bra = z->c; /* [, line 205 */
@@ -596,10 +596,8 @@ extern int russian_KOI8_R_stem(struct SN_env * z) { /* forwardmode */
     }
     /* do, line 207 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 207 */
-        if (ret == 0) goto lab3;
         if (ret < 0) return ret;
     }
-lab3:
     z->lb = z->c; z->c = z->l; /* backwards, line 208 */
 
 
@@ -609,72 +607,68 @@ lab3:
         {   int m5 = z->l - z->c; (void)m5; /* do, line 209 */
             {   int m6 = z->l - z->c; (void)m6; /* or, line 210 */
                 {   int ret = r_perfective_gerund(z); /* call perfective_gerund, line 210 */
-                    if (ret == 0) goto lab6;
+                    if (ret == 0) goto lab5;
                     if (ret < 0) return ret;
                 }
-                goto lab5;
-            lab6:
+                goto lab4;
+            lab5:
                 z->c = z->l - m6;
                 {   int m7 = z->l - z->c; (void)m7; /* try, line 211 */
                     {   int ret = r_reflexive(z); /* call reflexive, line 211 */
-                        if (ret == 0) { z->c = z->l - m7; goto lab7; }
+                        if (ret == 0) { z->c = z->l - m7; goto lab6; }
                         if (ret < 0) return ret;
                     }
-                lab7:
+                lab6:
                     ;
                 }
                 {   int m8 = z->l - z->c; (void)m8; /* or, line 212 */
                     {   int ret = r_adjectival(z); /* call adjectival, line 212 */
-                        if (ret == 0) goto lab9;
+                        if (ret == 0) goto lab8;
                         if (ret < 0) return ret;
                     }
-                    goto lab8;
-                lab9:
+                    goto lab7;
+                lab8:
                     z->c = z->l - m8;
                     {   int ret = r_verb(z); /* call verb, line 212 */
-                        if (ret == 0) goto lab10;
+                        if (ret == 0) goto lab9;
                         if (ret < 0) return ret;
                     }
-                    goto lab8;
-                lab10:
+                    goto lab7;
+                lab9:
                     z->c = z->l - m8;
                     {   int ret = r_noun(z); /* call noun, line 212 */
-                        if (ret == 0) goto lab4;
+                        if (ret == 0) goto lab3;
                         if (ret < 0) return ret;
                     }
                 }
-            lab8:
+            lab7:
                 ;
             }
-        lab5:
         lab4:
+        lab3:
             z->c = z->l - m5;
         }
         {   int m9 = z->l - z->c; (void)m9; /* try, line 215 */
             z->ket = z->c; /* [, line 215 */
-            if (z->c <= z->lb || z->p[z->c - 1] != 0xC9) { z->c = z->l - m9; goto lab11; } /* literal, line 215 */
+            if (z->c <= z->lb || z->p[z->c - 1] != 0xC9) { z->c = z->l - m9; goto lab10; } /* literal, line 215 */
             z->c--;
             z->bra = z->c; /* ], line 215 */
             {   int ret = slice_del(z); /* delete, line 215 */
                 if (ret < 0) return ret;
             }
-        lab11:
+        lab10:
             ;
         }
         {   int m10 = z->l - z->c; (void)m10; /* do, line 218 */
             {   int ret = r_derivational(z); /* call derivational, line 218 */
-                if (ret == 0) goto lab12;
                 if (ret < 0) return ret;
             }
-        lab12:
             z->c = z->l - m10;
         }
         {   int m11 = z->l - z->c; (void)m11; /* do, line 219 */
             {   int ret = r_tidy_up(z); /* call tidy_up, line 219 */
-                if (ret == 0) goto lab13;
                 if (ret < 0) return ret;
             }
-        lab13:
             z->c = z->l - m11;
         }
         z->lb = mlimit4;
index 30bf1d99642dcf4e85914e64a107af3459e5f387..701ae2e810e41ea76e72c97a54c62bbb16f1656c 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -676,8 +675,9 @@ static const symbol s_68[] = { 0xD9, 0x8A };
 static int r_Normalize_pre(struct SN_env * z) { /* forwardmode */
     int among_var;
     {   int c1 = z->c; /* do, line 247 */
-        while(1) { /* repeat, line 247 */
-            int c2 = z->c;
+/* repeat, line 247 */
+
+        while(1) {            int c2 = z->c;
             {   int c3 = z->c; /* or, line 311 */
                 z->bra = z->c; /* [, line 249 */
                 among_var = find_among(z, a_0, 144); /* substring, line 249 */
@@ -976,8 +976,9 @@ static int r_Normalize_post(struct SN_env * z) { /* forwardmode */
         z->c = c1;
     }
     {   int c2 = z->c; /* do, line 329 */
-        while(1) { /* repeat, line 329 */
-            int c3 = z->c;
+/* repeat, line 329 */
+
+        while(1) {            int c3 = z->c;
             {   int c4 = z->c; /* or, line 338 */
                 z->bra = z->c; /* [, line 332 */
                 if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 5 || !((124 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab4; /* substring, line 332 */
@@ -1430,250 +1431,243 @@ extern int arabic_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     z->B[2] = 0; /* unset is_defined, line 495 */
     {   int c1 = z->c; /* do, line 498 */
         {   int ret = r_Checks1(z); /* call Checks1, line 498 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 501 */
     {   int ret = r_Normalize_pre(z); /* call Normalize_pre, line 501 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 504 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 506 */
         {   int m3 = z->l - z->c; (void)m3; /* or, line 520 */
-            if (!(z->B[1])) goto lab4; /* Boolean test is_verb, line 509 */
+            if (!(z->B[1])) goto lab2; /* Boolean test is_verb, line 509 */
             {   int m4 = z->l - z->c; (void)m4; /* or, line 515 */
                 {   int i = 1;
-                    while(1) { /* atleast, line 512 */
-                        int m5 = z->l - z->c; (void)m5;
+                    while(1) {                        int m5 = z->l - z->c; (void)m5;
                         {   int ret = r_Suffix_Verb_Step1(z); /* call Suffix_Verb_Step1, line 512 */
-                            if (ret == 0) goto lab7;
+                            if (ret == 0) goto lab5;
                             if (ret < 0) return ret;
                         }
                         i--;
                         continue;
-                    lab7:
+                    lab5:
                         z->c = z->l - m5;
                         break;
                     }
-                    if (i > 0) goto lab6;
+                    if (i > 0) goto lab4;
                 }
                 {   int m6 = z->l - z->c; (void)m6; /* or, line 513 */
                     {   int ret = r_Suffix_Verb_Step2a(z); /* call Suffix_Verb_Step2a, line 513 */
-                        if (ret == 0) goto lab9;
+                        if (ret == 0) goto lab7;
                         if (ret < 0) return ret;
                     }
-                    goto lab8;
-                lab9:
+                    goto lab6;
+                lab7:
                     z->c = z->l - m6;
                     {   int ret = r_Suffix_Verb_Step2c(z); /* call Suffix_Verb_Step2c, line 513 */
-                        if (ret == 0) goto lab10;
+                        if (ret == 0) goto lab8;
                         if (ret < 0) return ret;
                     }
-                    goto lab8;
-                lab10:
+                    goto lab6;
+                lab8:
                     z->c = z->l - m6;
                     {   int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
-                        if (ret < 0) goto lab6;
+                        if (ret < 0) goto lab4;
                         z->c = ret; /* next, line 513 */
                     }
                 }
-            lab8:
-                goto lab5;
             lab6:
+                goto lab3;
+            lab4:
                 z->c = z->l - m4;
                 {   int ret = r_Suffix_Verb_Step2b(z); /* call Suffix_Verb_Step2b, line 515 */
-                    if (ret == 0) goto lab11;
+                    if (ret == 0) goto lab9;
                     if (ret < 0) return ret;
                 }
-                goto lab5;
-            lab11:
+                goto lab3;
+            lab9:
                 z->c = z->l - m4;
                 {   int ret = r_Suffix_Verb_Step2a(z); /* call Suffix_Verb_Step2a, line 516 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab2;
                     if (ret < 0) return ret;
                 }
             }
-        lab5:
-            goto lab3;
-        lab4:
+        lab3:
+            goto lab1;
+        lab2:
             z->c = z->l - m3;
-            if (!(z->B[0])) goto lab12; /* Boolean test is_noun, line 521 */
+            if (!(z->B[0])) goto lab10; /* Boolean test is_noun, line 521 */
             {   int m7 = z->l - z->c; (void)m7; /* try, line 524 */
                 {   int m8 = z->l - z->c; (void)m8; /* or, line 526 */
                     {   int ret = r_Suffix_Noun_Step2c2(z); /* call Suffix_Noun_Step2c2, line 525 */
-                        if (ret == 0) goto lab15;
+                        if (ret == 0) goto lab13;
                         if (ret < 0) return ret;
                     }
-                    goto lab14;
-                lab15:
+                    goto lab12;
+                lab13:
                     z->c = z->l - m8;
                     /* not, line 526 */
-                    if (!(z->B[2])) goto lab17; /* Boolean test is_defined, line 526 */
-                    goto lab16;
-                lab17:
+                    if (!(z->B[2])) goto lab15; /* Boolean test is_defined, line 526 */
+                    goto lab14;
+                lab15:
                     {   int ret = r_Suffix_Noun_Step1a(z); /* call Suffix_Noun_Step1a, line 526 */
-                        if (ret == 0) goto lab16;
+                        if (ret == 0) goto lab14;
                         if (ret < 0) return ret;
                     }
                     {   int m9 = z->l - z->c; (void)m9; /* or, line 528 */
                         {   int ret = r_Suffix_Noun_Step2a(z); /* call Suffix_Noun_Step2a, line 527 */
-                            if (ret == 0) goto lab19;
+                            if (ret == 0) goto lab17;
                             if (ret < 0) return ret;
                         }
-                        goto lab18;
-                    lab19:
+                        goto lab16;
+                    lab17:
                         z->c = z->l - m9;
                         {   int ret = r_Suffix_Noun_Step2b(z); /* call Suffix_Noun_Step2b, line 528 */
-                            if (ret == 0) goto lab20;
+                            if (ret == 0) goto lab18;
                             if (ret < 0) return ret;
                         }
-                        goto lab18;
-                    lab20:
+                        goto lab16;
+                    lab18:
                         z->c = z->l - m9;
                         {   int ret = r_Suffix_Noun_Step2c1(z); /* call Suffix_Noun_Step2c1, line 529 */
-                            if (ret == 0) goto lab21;
+                            if (ret == 0) goto lab19;
                             if (ret < 0) return ret;
                         }
-                        goto lab18;
-                    lab21:
+                        goto lab16;
+                    lab19:
                         z->c = z->l - m9;
                         {   int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
-                            if (ret < 0) goto lab16;
+                            if (ret < 0) goto lab14;
                             z->c = ret; /* next, line 530 */
                         }
                     }
-                lab18:
-                    goto lab14;
                 lab16:
+                    goto lab12;
+                lab14:
                     z->c = z->l - m8;
                     {   int ret = r_Suffix_Noun_Step1b(z); /* call Suffix_Noun_Step1b, line 531 */
-                        if (ret == 0) goto lab22;
+                        if (ret == 0) goto lab20;
                         if (ret < 0) return ret;
                     }
                     {   int m10 = z->l - z->c; (void)m10; /* or, line 533 */
                         {   int ret = r_Suffix_Noun_Step2a(z); /* call Suffix_Noun_Step2a, line 532 */
-                            if (ret == 0) goto lab24;
+                            if (ret == 0) goto lab22;
                             if (ret < 0) return ret;
                         }
-                        goto lab23;
-                    lab24:
+                        goto lab21;
+                    lab22:
                         z->c = z->l - m10;
                         {   int ret = r_Suffix_Noun_Step2b(z); /* call Suffix_Noun_Step2b, line 533 */
-                            if (ret == 0) goto lab25;
+                            if (ret == 0) goto lab23;
                             if (ret < 0) return ret;
                         }
-                        goto lab23;
-                    lab25:
+                        goto lab21;
+                    lab23:
                         z->c = z->l - m10;
                         {   int ret = r_Suffix_Noun_Step2c1(z); /* call Suffix_Noun_Step2c1, line 534 */
-                            if (ret == 0) goto lab22;
+                            if (ret == 0) goto lab20;
                             if (ret < 0) return ret;
                         }
                     }
-                lab23:
-                    goto lab14;
-                lab22:
+                lab21:
+                    goto lab12;
+                lab20:
                     z->c = z->l - m8;
                     /* not, line 535 */
-                    if (!(z->B[2])) goto lab27; /* Boolean test is_defined, line 535 */
-                    goto lab26;
-                lab27:
+                    if (!(z->B[2])) goto lab25; /* Boolean test is_defined, line 535 */
+                    goto lab24;
+                lab25:
                     {   int ret = r_Suffix_Noun_Step2a(z); /* call Suffix_Noun_Step2a, line 535 */
-                        if (ret == 0) goto lab26;
+                        if (ret == 0) goto lab24;
                         if (ret < 0) return ret;
                     }
-                    goto lab14;
-                lab26:
+                    goto lab12;
+                lab24:
                     z->c = z->l - m8;
                     {   int ret = r_Suffix_Noun_Step2b(z); /* call Suffix_Noun_Step2b, line 536 */
-                        if (ret == 0) { z->c = z->l - m7; goto lab13; }
+                        if (ret == 0) { z->c = z->l - m7; goto lab11; }
                         if (ret < 0) return ret;
                     }
                 }
-            lab14:
-            lab13:
+            lab12:
+            lab11:
                 ;
             }
             {   int ret = r_Suffix_Noun_Step3(z); /* call Suffix_Noun_Step3, line 538 */
-                if (ret == 0) goto lab12;
+                if (ret == 0) goto lab10;
                 if (ret < 0) return ret;
             }
-            goto lab3;
-        lab12:
+            goto lab1;
+        lab10:
             z->c = z->l - m3;
             {   int ret = r_Suffix_All_alef_maqsura(z); /* call Suffix_All_alef_maqsura, line 544 */
-                if (ret == 0) goto lab2;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab3:
-    lab2:
+    lab1:
+    lab0:
         z->c = z->l - m2;
     }
     z->c = z->lb;
     {   int c11 = z->c; /* do, line 549 */
         {   int c12 = z->c; /* try, line 550 */
             {   int ret = r_Prefix_Step1(z); /* call Prefix_Step1, line 550 */
-                if (ret == 0) { z->c = c12; goto lab29; }
+                if (ret == 0) { z->c = c12; goto lab27; }
                 if (ret < 0) return ret;
             }
-        lab29:
+        lab27:
             ;
         }
         {   int c13 = z->c; /* try, line 551 */
             {   int ret = r_Prefix_Step2(z); /* call Prefix_Step2, line 551 */
-                if (ret == 0) { z->c = c13; goto lab30; }
+                if (ret == 0) { z->c = c13; goto lab28; }
                 if (ret < 0) return ret;
             }
-        lab30:
+        lab28:
             ;
         }
         {   int c14 = z->c; /* or, line 553 */
             {   int ret = r_Prefix_Step3a_Noun(z); /* call Prefix_Step3a_Noun, line 552 */
-                if (ret == 0) goto lab32;
+                if (ret == 0) goto lab30;
                 if (ret < 0) return ret;
             }
-            goto lab31;
-        lab32:
+            goto lab29;
+        lab30:
             z->c = c14;
-            if (!(z->B[0])) goto lab33; /* Boolean test is_noun, line 553 */
+            if (!(z->B[0])) goto lab31; /* Boolean test is_noun, line 553 */
             {   int ret = r_Prefix_Step3b_Noun(z); /* call Prefix_Step3b_Noun, line 553 */
-                if (ret == 0) goto lab33;
+                if (ret == 0) goto lab31;
                 if (ret < 0) return ret;
             }
-            goto lab31;
-        lab33:
+            goto lab29;
+        lab31:
             z->c = c14;
-            if (!(z->B[1])) goto lab28; /* Boolean test is_verb, line 554 */
+            if (!(z->B[1])) goto lab26; /* Boolean test is_verb, line 554 */
             {   int c15 = z->c; /* try, line 554 */
                 {   int ret = r_Prefix_Step3_Verb(z); /* call Prefix_Step3_Verb, line 554 */
-                    if (ret == 0) { z->c = c15; goto lab34; }
+                    if (ret == 0) { z->c = c15; goto lab32; }
                     if (ret < 0) return ret;
                 }
-            lab34:
+            lab32:
                 ;
             }
             {   int ret = r_Prefix_Step4_Verb(z); /* call Prefix_Step4_Verb, line 554 */
-                if (ret == 0) goto lab28;
+                if (ret == 0) goto lab26;
                 if (ret < 0) return ret;
             }
         }
-    lab31:
-    lab28:
+    lab29:
+    lab26:
         z->c = c11;
     }
     /* do, line 559 */
     {   int ret = r_Normalize_post(z); /* call Normalize_post, line 559 */
-        if (ret == 0) goto lab35;
         if (ret < 0) return ret;
     }
-lab35:
     return 1;
 }
 
diff --git a/src/backend/snowball/libstemmer/stem_UTF_8_basque.c b/src/backend/snowball/libstemmer/stem_UTF_8_basque.c
new file mode 100644 (file)
index 0000000..f21f531
--- /dev/null
@@ -0,0 +1,1186 @@
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
+
+#include "header.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern int basque_UTF_8_stem(struct SN_env * z);
+#ifdef __cplusplus
+}
+#endif
+static int r_R1(struct SN_env * z);
+static int r_R2(struct SN_env * z);
+static int r_RV(struct SN_env * z);
+static int r_mark_regions(struct SN_env * z);
+static int r_adjetiboak(struct SN_env * z);
+static int r_izenak(struct SN_env * z);
+static int r_aditzak(struct SN_env * z);
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+extern struct SN_env * basque_UTF_8_create_env(void);
+extern void basque_UTF_8_close_env(struct SN_env * z);
+
+
+#ifdef __cplusplus
+}
+#endif
+static const symbol s_0_0[4] = { 'i', 'd', 'e', 'a' };
+static const symbol s_0_1[5] = { 'b', 'i', 'd', 'e', 'a' };
+static const symbol s_0_2[5] = { 'k', 'i', 'd', 'e', 'a' };
+static const symbol s_0_3[5] = { 'p', 'i', 'd', 'e', 'a' };
+static const symbol s_0_4[6] = { 'k', 'u', 'n', 'd', 'e', 'a' };
+static const symbol s_0_5[5] = { 'g', 'a', 'l', 'e', 'a' };
+static const symbol s_0_6[6] = { 't', 'a', 'i', 'l', 'e', 'a' };
+static const symbol s_0_7[7] = { 't', 'z', 'a', 'i', 'l', 'e', 'a' };
+static const symbol s_0_8[5] = { 'g', 'u', 'n', 'e', 'a' };
+static const symbol s_0_9[5] = { 'k', 'u', 'n', 'e', 'a' };
+static const symbol s_0_10[5] = { 't', 'z', 'a', 'g', 'a' };
+static const symbol s_0_11[4] = { 'g', 'a', 'i', 'a' };
+static const symbol s_0_12[5] = { 'a', 'l', 'd', 'i', 'a' };
+static const symbol s_0_13[6] = { 't', 'a', 'l', 'd', 'i', 'a' };
+static const symbol s_0_14[5] = { 'k', 'a', 'r', 'i', 'a' };
+static const symbol s_0_15[6] = { 'g', 'a', 'r', 'r', 'i', 'a' };
+static const symbol s_0_16[6] = { 'k', 'a', 'r', 'r', 'i', 'a' };
+static const symbol s_0_17[2] = { 'k', 'a' };
+static const symbol s_0_18[5] = { 't', 'z', 'a', 'k', 'a' };
+static const symbol s_0_19[2] = { 'l', 'a' };
+static const symbol s_0_20[4] = { 'm', 'e', 'n', 'a' };
+static const symbol s_0_21[4] = { 'p', 'e', 'n', 'a' };
+static const symbol s_0_22[4] = { 'k', 'i', 'n', 'a' };
+static const symbol s_0_23[5] = { 'e', 'z', 'i', 'n', 'a' };
+static const symbol s_0_24[6] = { 't', 'e', 'z', 'i', 'n', 'a' };
+static const symbol s_0_25[4] = { 'k', 'u', 'n', 'a' };
+static const symbol s_0_26[4] = { 't', 'u', 'n', 'a' };
+static const symbol s_0_27[6] = { 'k', 'i', 'z', 'u', 'n', 'a' };
+static const symbol s_0_28[3] = { 'e', 'r', 'a' };
+static const symbol s_0_29[4] = { 'b', 'e', 'r', 'a' };
+static const symbol s_0_30[7] = { 'a', 'r', 'a', 'b', 'e', 'r', 'a' };
+static const symbol s_0_31[4] = { 'k', 'e', 'r', 'a' };
+static const symbol s_0_32[4] = { 'p', 'e', 'r', 'a' };
+static const symbol s_0_33[4] = { 'o', 'r', 'r', 'a' };
+static const symbol s_0_34[5] = { 'k', 'o', 'r', 'r', 'a' };
+static const symbol s_0_35[4] = { 'd', 'u', 'r', 'a' };
+static const symbol s_0_36[4] = { 'g', 'u', 'r', 'a' };
+static const symbol s_0_37[4] = { 'k', 'u', 'r', 'a' };
+static const symbol s_0_38[4] = { 't', 'u', 'r', 'a' };
+static const symbol s_0_39[3] = { 'e', 't', 'a' };
+static const symbol s_0_40[4] = { 'k', 'e', 't', 'a' };
+static const symbol s_0_41[6] = { 'g', 'a', 'i', 'l', 'u', 'a' };
+static const symbol s_0_42[3] = { 'e', 'z', 'a' };
+static const symbol s_0_43[6] = { 'e', 'r', 'r', 'e', 'z', 'a' };
+static const symbol s_0_44[3] = { 't', 'z', 'a' };
+static const symbol s_0_45[6] = { 'g', 'a', 'i', 't', 'z', 'a' };
+static const symbol s_0_46[6] = { 'k', 'a', 'i', 't', 'z', 'a' };
+static const symbol s_0_47[6] = { 'k', 'u', 'n', 't', 'z', 'a' };
+static const symbol s_0_48[3] = { 'i', 'd', 'e' };
+static const symbol s_0_49[4] = { 'b', 'i', 'd', 'e' };
+static const symbol s_0_50[4] = { 'k', 'i', 'd', 'e' };
+static const symbol s_0_51[4] = { 'p', 'i', 'd', 'e' };
+static const symbol s_0_52[5] = { 'k', 'u', 'n', 'd', 'e' };
+static const symbol s_0_53[5] = { 't', 'z', 'a', 'k', 'e' };
+static const symbol s_0_54[5] = { 't', 'z', 'e', 'k', 'e' };
+static const symbol s_0_55[2] = { 'l', 'e' };
+static const symbol s_0_56[4] = { 'g', 'a', 'l', 'e' };
+static const symbol s_0_57[5] = { 't', 'a', 'i', 'l', 'e' };
+static const symbol s_0_58[6] = { 't', 'z', 'a', 'i', 'l', 'e' };
+static const symbol s_0_59[4] = { 'g', 'u', 'n', 'e' };
+static const symbol s_0_60[4] = { 'k', 'u', 'n', 'e' };
+static const symbol s_0_61[3] = { 't', 'z', 'e' };
+static const symbol s_0_62[4] = { 'a', 't', 'z', 'e' };
+static const symbol s_0_63[3] = { 'g', 'a', 'i' };
+static const symbol s_0_64[4] = { 'a', 'l', 'd', 'i' };
+static const symbol s_0_65[5] = { 't', 'a', 'l', 'd', 'i' };
+static const symbol s_0_66[2] = { 'k', 'i' };
+static const symbol s_0_67[3] = { 'a', 'r', 'i' };
+static const symbol s_0_68[4] = { 'k', 'a', 'r', 'i' };
+static const symbol s_0_69[4] = { 'l', 'a', 'r', 'i' };
+static const symbol s_0_70[4] = { 't', 'a', 'r', 'i' };
+static const symbol s_0_71[5] = { 'e', 't', 'a', 'r', 'i' };
+static const symbol s_0_72[5] = { 'g', 'a', 'r', 'r', 'i' };
+static const symbol s_0_73[5] = { 'k', 'a', 'r', 'r', 'i' };
+static const symbol s_0_74[5] = { 'a', 'r', 'a', 'z', 'i' };
+static const symbol s_0_75[6] = { 't', 'a', 'r', 'a', 'z', 'i' };
+static const symbol s_0_76[2] = { 'a', 'n' };
+static const symbol s_0_77[3] = { 'e', 'a', 'n' };
+static const symbol s_0_78[4] = { 'r', 'e', 'a', 'n' };
+static const symbol s_0_79[3] = { 'k', 'a', 'n' };
+static const symbol s_0_80[4] = { 'e', 't', 'a', 'n' };
+static const symbol s_0_81[7] = { 'a', 't', 's', 'e', 'd', 'e', 'n' };
+static const symbol s_0_82[3] = { 'm', 'e', 'n' };
+static const symbol s_0_83[3] = { 'p', 'e', 'n' };
+static const symbol s_0_84[3] = { 'k', 'i', 'n' };
+static const symbol s_0_85[5] = { 'r', 'e', 'k', 'i', 'n' };
+static const symbol s_0_86[4] = { 'e', 'z', 'i', 'n' };
+static const symbol s_0_87[5] = { 't', 'e', 'z', 'i', 'n' };
+static const symbol s_0_88[3] = { 't', 'u', 'n' };
+static const symbol s_0_89[5] = { 'k', 'i', 'z', 'u', 'n' };
+static const symbol s_0_90[2] = { 'g', 'o' };
+static const symbol s_0_91[3] = { 'a', 'g', 'o' };
+static const symbol s_0_92[3] = { 't', 'i', 'o' };
+static const symbol s_0_93[4] = { 'd', 'a', 'k', 'o' };
+static const symbol s_0_94[2] = { 'o', 'r' };
+static const symbol s_0_95[3] = { 'k', 'o', 'r' };
+static const symbol s_0_96[4] = { 't', 'z', 'a', 't' };
+static const symbol s_0_97[2] = { 'd', 'u' };
+static const symbol s_0_98[5] = { 'g', 'a', 'i', 'l', 'u' };
+static const symbol s_0_99[2] = { 't', 'u' };
+static const symbol s_0_100[3] = { 'a', 't', 'u' };
+static const symbol s_0_101[6] = { 'a', 'l', 'd', 'a', 't', 'u' };
+static const symbol s_0_102[4] = { 't', 'a', 't', 'u' };
+static const symbol s_0_103[6] = { 'b', 'a', 'd', 'i', 't', 'u' };
+static const symbol s_0_104[2] = { 'e', 'z' };
+static const symbol s_0_105[5] = { 'e', 'r', 'r', 'e', 'z' };
+static const symbol s_0_106[4] = { 't', 'z', 'e', 'z' };
+static const symbol s_0_107[5] = { 'g', 'a', 'i', 't', 'z' };
+static const symbol s_0_108[5] = { 'k', 'a', 'i', 't', 'z' };
+
+static const struct among a_0[109] =
+{
+/*  0 */ { 4, s_0_0, -1, 1, 0},
+/*  1 */ { 5, s_0_1, 0, 1, 0},
+/*  2 */ { 5, s_0_2, 0, 1, 0},
+/*  3 */ { 5, s_0_3, 0, 1, 0},
+/*  4 */ { 6, s_0_4, -1, 1, 0},
+/*  5 */ { 5, s_0_5, -1, 1, 0},
+/*  6 */ { 6, s_0_6, -1, 1, 0},
+/*  7 */ { 7, s_0_7, -1, 1, 0},
+/*  8 */ { 5, s_0_8, -1, 1, 0},
+/*  9 */ { 5, s_0_9, -1, 1, 0},
+/* 10 */ { 5, s_0_10, -1, 1, 0},
+/* 11 */ { 4, s_0_11, -1, 1, 0},
+/* 12 */ { 5, s_0_12, -1, 1, 0},
+/* 13 */ { 6, s_0_13, 12, 1, 0},
+/* 14 */ { 5, s_0_14, -1, 1, 0},
+/* 15 */ { 6, s_0_15, -1, 2, 0},
+/* 16 */ { 6, s_0_16, -1, 1, 0},
+/* 17 */ { 2, s_0_17, -1, 1, 0},
+/* 18 */ { 5, s_0_18, 17, 1, 0},
+/* 19 */ { 2, s_0_19, -1, 1, 0},
+/* 20 */ { 4, s_0_20, -1, 1, 0},
+/* 21 */ { 4, s_0_21, -1, 1, 0},
+/* 22 */ { 4, s_0_22, -1, 1, 0},
+/* 23 */ { 5, s_0_23, -1, 1, 0},
+/* 24 */ { 6, s_0_24, 23, 1, 0},
+/* 25 */ { 4, s_0_25, -1, 1, 0},
+/* 26 */ { 4, s_0_26, -1, 1, 0},
+/* 27 */ { 6, s_0_27, -1, 1, 0},
+/* 28 */ { 3, s_0_28, -1, 1, 0},
+/* 29 */ { 4, s_0_29, 28, 1, 0},
+/* 30 */ { 7, s_0_30, 29, 4, 0},
+/* 31 */ { 4, s_0_31, 28, 1, 0},
+/* 32 */ { 4, s_0_32, 28, 1, 0},
+/* 33 */ { 4, s_0_33, -1, 1, 0},
+/* 34 */ { 5, s_0_34, 33, 1, 0},
+/* 35 */ { 4, s_0_35, -1, 1, 0},
+/* 36 */ { 4, s_0_36, -1, 1, 0},
+/* 37 */ { 4, s_0_37, -1, 1, 0},
+/* 38 */ { 4, s_0_38, -1, 1, 0},
+/* 39 */ { 3, s_0_39, -1, 1, 0},
+/* 40 */ { 4, s_0_40, 39, 1, 0},
+/* 41 */ { 6, s_0_41, -1, 1, 0},
+/* 42 */ { 3, s_0_42, -1, 1, 0},
+/* 43 */ { 6, s_0_43, 42, 1, 0},
+/* 44 */ { 3, s_0_44, -1, 2, 0},
+/* 45 */ { 6, s_0_45, 44, 1, 0},
+/* 46 */ { 6, s_0_46, 44, 1, 0},
+/* 47 */ { 6, s_0_47, 44, 1, 0},
+/* 48 */ { 3, s_0_48, -1, 1, 0},
+/* 49 */ { 4, s_0_49, 48, 1, 0},
+/* 50 */ { 4, s_0_50, 48, 1, 0},
+/* 51 */ { 4, s_0_51, 48, 1, 0},
+/* 52 */ { 5, s_0_52, -1, 1, 0},
+/* 53 */ { 5, s_0_53, -1, 1, 0},
+/* 54 */ { 5, s_0_54, -1, 1, 0},
+/* 55 */ { 2, s_0_55, -1, 1, 0},
+/* 56 */ { 4, s_0_56, 55, 1, 0},
+/* 57 */ { 5, s_0_57, 55, 1, 0},
+/* 58 */ { 6, s_0_58, 55, 1, 0},
+/* 59 */ { 4, s_0_59, -1, 1, 0},
+/* 60 */ { 4, s_0_60, -1, 1, 0},
+/* 61 */ { 3, s_0_61, -1, 1, 0},
+/* 62 */ { 4, s_0_62, 61, 1, 0},
+/* 63 */ { 3, s_0_63, -1, 1, 0},
+/* 64 */ { 4, s_0_64, -1, 1, 0},
+/* 65 */ { 5, s_0_65, 64, 1, 0},
+/* 66 */ { 2, s_0_66, -1, 1, 0},
+/* 67 */ { 3, s_0_67, -1, 1, 0},
+/* 68 */ { 4, s_0_68, 67, 1, 0},
+/* 69 */ { 4, s_0_69, 67, 1, 0},
+/* 70 */ { 4, s_0_70, 67, 1, 0},
+/* 71 */ { 5, s_0_71, 70, 1, 0},
+/* 72 */ { 5, s_0_72, -1, 2, 0},
+/* 73 */ { 5, s_0_73, -1, 1, 0},
+/* 74 */ { 5, s_0_74, -1, 1, 0},
+/* 75 */ { 6, s_0_75, 74, 1, 0},
+/* 76 */ { 2, s_0_76, -1, 1, 0},
+/* 77 */ { 3, s_0_77, 76, 1, 0},
+/* 78 */ { 4, s_0_78, 77, 1, 0},
+/* 79 */ { 3, s_0_79, 76, 1, 0},
+/* 80 */ { 4, s_0_80, 76, 1, 0},
+/* 81 */ { 7, s_0_81, -1, 3, 0},
+/* 82 */ { 3, s_0_82, -1, 1, 0},
+/* 83 */ { 3, s_0_83, -1, 1, 0},
+/* 84 */ { 3, s_0_84, -1, 1, 0},
+/* 85 */ { 5, s_0_85, 84, 1, 0},
+/* 86 */ { 4, s_0_86, -1, 1, 0},
+/* 87 */ { 5, s_0_87, 86, 1, 0},
+/* 88 */ { 3, s_0_88, -1, 1, 0},
+/* 89 */ { 5, s_0_89, -1, 1, 0},
+/* 90 */ { 2, s_0_90, -1, 1, 0},
+/* 91 */ { 3, s_0_91, 90, 1, 0},
+/* 92 */ { 3, s_0_92, -1, 1, 0},
+/* 93 */ { 4, s_0_93, -1, 1, 0},
+/* 94 */ { 2, s_0_94, -1, 1, 0},
+/* 95 */ { 3, s_0_95, 94, 1, 0},
+/* 96 */ { 4, s_0_96, -1, 1, 0},
+/* 97 */ { 2, s_0_97, -1, 1, 0},
+/* 98 */ { 5, s_0_98, -1, 1, 0},
+/* 99 */ { 2, s_0_99, -1, 1, 0},
+/*100 */ { 3, s_0_100, 99, 1, 0},
+/*101 */ { 6, s_0_101, 100, 1, 0},
+/*102 */ { 4, s_0_102, 100, 1, 0},
+/*103 */ { 6, s_0_103, 99, 5, 0},
+/*104 */ { 2, s_0_104, -1, 1, 0},
+/*105 */ { 5, s_0_105, 104, 1, 0},
+/*106 */ { 4, s_0_106, 104, 1, 0},
+/*107 */ { 5, s_0_107, -1, 1, 0},
+/*108 */ { 5, s_0_108, -1, 1, 0}
+};
+
+static const symbol s_1_0[3] = { 'a', 'd', 'a' };
+static const symbol s_1_1[4] = { 'k', 'a', 'd', 'a' };
+static const symbol s_1_2[4] = { 'a', 'n', 'd', 'a' };
+static const symbol s_1_3[5] = { 'd', 'e', 'n', 'd', 'a' };
+static const symbol s_1_4[5] = { 'g', 'a', 'b', 'e', 'a' };
+static const symbol s_1_5[5] = { 'k', 'a', 'b', 'e', 'a' };
+static const symbol s_1_6[5] = { 'a', 'l', 'd', 'e', 'a' };
+static const symbol s_1_7[6] = { 'k', 'a', 'l', 'd', 'e', 'a' };
+static const symbol s_1_8[6] = { 't', 'a', 'l', 'd', 'e', 'a' };
+static const symbol s_1_9[5] = { 'o', 'r', 'd', 'e', 'a' };
+static const symbol s_1_10[5] = { 'z', 'a', 'l', 'e', 'a' };
+static const symbol s_1_11[6] = { 't', 'z', 'a', 'l', 'e', 'a' };
+static const symbol s_1_12[5] = { 'g', 'i', 'l', 'e', 'a' };
+static const symbol s_1_13[4] = { 'e', 'm', 'e', 'a' };
+static const symbol s_1_14[5] = { 'k', 'u', 'm', 'e', 'a' };
+static const symbol s_1_15[3] = { 'n', 'e', 'a' };
+static const symbol s_1_16[4] = { 'e', 'n', 'e', 'a' };
+static const symbol s_1_17[6] = { 'z', 'i', 'o', 'n', 'e', 'a' };
+static const symbol s_1_18[4] = { 'u', 'n', 'e', 'a' };
+static const symbol s_1_19[5] = { 'g', 'u', 'n', 'e', 'a' };
+static const symbol s_1_20[3] = { 'p', 'e', 'a' };
+static const symbol s_1_21[6] = { 'a', 'u', 'r', 'r', 'e', 'a' };
+static const symbol s_1_22[3] = { 't', 'e', 'a' };
+static const symbol s_1_23[5] = { 'k', 'o', 't', 'e', 'a' };
+static const symbol s_1_24[5] = { 'a', 'r', 't', 'e', 'a' };
+static const symbol s_1_25[5] = { 'o', 's', 't', 'e', 'a' };
+static const symbol s_1_26[5] = { 'e', 't', 'x', 'e', 'a' };
+static const symbol s_1_27[2] = { 'g', 'a' };
+static const symbol s_1_28[4] = { 'a', 'n', 'g', 'a' };
+static const symbol s_1_29[4] = { 'g', 'a', 'i', 'a' };
+static const symbol s_1_30[5] = { 'a', 'l', 'd', 'i', 'a' };
+static const symbol s_1_31[6] = { 't', 'a', 'l', 'd', 'i', 'a' };
+static const symbol s_1_32[6] = { 'h', 'a', 'n', 'd', 'i', 'a' };
+static const symbol s_1_33[6] = { 'm', 'e', 'n', 'd', 'i', 'a' };
+static const symbol s_1_34[4] = { 'g', 'e', 'i', 'a' };
+static const symbol s_1_35[4] = { 'e', 'g', 'i', 'a' };
+static const symbol s_1_36[5] = { 'd', 'e', 'g', 'i', 'a' };
+static const symbol s_1_37[5] = { 't', 'e', 'g', 'i', 'a' };
+static const symbol s_1_38[5] = { 'n', 'a', 'h', 'i', 'a' };
+static const symbol s_1_39[4] = { 'o', 'h', 'i', 'a' };
+static const symbol s_1_40[3] = { 'k', 'i', 'a' };
+static const symbol s_1_41[5] = { 't', 'o', 'k', 'i', 'a' };
+static const symbol s_1_42[3] = { 'o', 'i', 'a' };
+static const symbol s_1_43[4] = { 'k', 'o', 'i', 'a' };
+static const symbol s_1_44[4] = { 'a', 'r', 'i', 'a' };
+static const symbol s_1_45[5] = { 'k', 'a', 'r', 'i', 'a' };
+static const symbol s_1_46[5] = { 'l', 'a', 'r', 'i', 'a' };
+static const symbol s_1_47[5] = { 't', 'a', 'r', 'i', 'a' };
+static const symbol s_1_48[4] = { 'e', 'r', 'i', 'a' };
+static const symbol s_1_49[5] = { 'k', 'e', 'r', 'i', 'a' };
+static const symbol s_1_50[5] = { 't', 'e', 'r', 'i', 'a' };
+static const symbol s_1_51[6] = { 'g', 'a', 'r', 'r', 'i', 'a' };
+static const symbol s_1_52[6] = { 'l', 'a', 'r', 'r', 'i', 'a' };
+static const symbol s_1_53[6] = { 'k', 'i', 'r', 'r', 'i', 'a' };
+static const symbol s_1_54[5] = { 'd', 'u', 'r', 'i', 'a' };
+static const symbol s_1_55[4] = { 'a', 's', 'i', 'a' };
+static const symbol s_1_56[3] = { 't', 'i', 'a' };
+static const symbol s_1_57[4] = { 'e', 'z', 'i', 'a' };
+static const symbol s_1_58[5] = { 'b', 'i', 'z', 'i', 'a' };
+static const symbol s_1_59[6] = { 'o', 'n', 't', 'z', 'i', 'a' };
+static const symbol s_1_60[2] = { 'k', 'a' };
+static const symbol s_1_61[4] = { 'j', 'o', 'k', 'a' };
+static const symbol s_1_62[5] = { 'a', 'u', 'r', 'k', 'a' };
+static const symbol s_1_63[3] = { 's', 'k', 'a' };
+static const symbol s_1_64[3] = { 'x', 'k', 'a' };
+static const symbol s_1_65[3] = { 'z', 'k', 'a' };
+static const symbol s_1_66[6] = { 'g', 'i', 'b', 'e', 'l', 'a' };
+static const symbol s_1_67[4] = { 'g', 'e', 'l', 'a' };
+static const symbol s_1_68[5] = { 'k', 'a', 'i', 'l', 'a' };
+static const symbol s_1_69[5] = { 's', 'k', 'i', 'l', 'a' };
+static const symbol s_1_70[4] = { 't', 'i', 'l', 'a' };
+static const symbol s_1_71[3] = { 'o', 'l', 'a' };
+static const symbol s_1_72[2] = { 'n', 'a' };
+static const symbol s_1_73[4] = { 'k', 'a', 'n', 'a' };
+static const symbol s_1_74[3] = { 'e', 'n', 'a' };
+static const symbol s_1_75[7] = { 'g', 'a', 'r', 'r', 'e', 'n', 'a' };
+static const symbol s_1_76[7] = { 'g', 'e', 'r', 'r', 'e', 'n', 'a' };
+static const symbol s_1_77[6] = { 'u', 'r', 'r', 'e', 'n', 'a' };
+static const symbol s_1_78[5] = { 'z', 'a', 'i', 'n', 'a' };
+static const symbol s_1_79[6] = { 't', 'z', 'a', 'i', 'n', 'a' };
+static const symbol s_1_80[4] = { 'k', 'i', 'n', 'a' };
+static const symbol s_1_81[4] = { 'm', 'i', 'n', 'a' };
+static const symbol s_1_82[5] = { 'g', 'a', 'r', 'n', 'a' };
+static const symbol s_1_83[3] = { 'u', 'n', 'a' };
+static const symbol s_1_84[4] = { 'd', 'u', 'n', 'a' };
+static const symbol s_1_85[5] = { 'a', 's', 'u', 'n', 'a' };
+static const symbol s_1_86[6] = { 't', 'a', 's', 'u', 'n', 'a' };
+static const symbol s_1_87[5] = { 'o', 'n', 'd', 'o', 'a' };
+static const symbol s_1_88[6] = { 'k', 'o', 'n', 'd', 'o', 'a' };
+static const symbol s_1_89[4] = { 'n', 'g', 'o', 'a' };
+static const symbol s_1_90[4] = { 'z', 'i', 'o', 'a' };
+static const symbol s_1_91[3] = { 'k', 'o', 'a' };
+static const symbol s_1_92[5] = { 't', 'a', 'k', 'o', 'a' };
+static const symbol s_1_93[4] = { 'z', 'k', 'o', 'a' };
+static const symbol s_1_94[3] = { 'n', 'o', 'a' };
+static const symbol s_1_95[5] = { 'z', 'i', 'n', 'o', 'a' };
+static const symbol s_1_96[4] = { 'a', 'r', 'o', 'a' };
+static const symbol s_1_97[5] = { 't', 'a', 'r', 'o', 'a' };
+static const symbol s_1_98[5] = { 'z', 'a', 'r', 'o', 'a' };
+static const symbol s_1_99[4] = { 'e', 'r', 'o', 'a' };
+static const symbol s_1_100[4] = { 'o', 'r', 'o', 'a' };
+static const symbol s_1_101[4] = { 'o', 's', 'o', 'a' };
+static const symbol s_1_102[3] = { 't', 'o', 'a' };
+static const symbol s_1_103[4] = { 't', 't', 'o', 'a' };
+static const symbol s_1_104[4] = { 'z', 't', 'o', 'a' };
+static const symbol s_1_105[4] = { 't', 'x', 'o', 'a' };
+static const symbol s_1_106[4] = { 't', 'z', 'o', 'a' };
+static const symbol s_1_107[4] = { 0xC3, 0xB1, 'o', 'a' };
+static const symbol s_1_108[2] = { 'r', 'a' };
+static const symbol s_1_109[3] = { 'a', 'r', 'a' };
+static const symbol s_1_110[4] = { 'd', 'a', 'r', 'a' };
+static const symbol s_1_111[5] = { 'l', 'i', 'a', 'r', 'a' };
+static const symbol s_1_112[5] = { 't', 'i', 'a', 'r', 'a' };
+static const symbol s_1_113[4] = { 't', 'a', 'r', 'a' };
+static const symbol s_1_114[5] = { 'e', 't', 'a', 'r', 'a' };
+static const symbol s_1_115[5] = { 't', 'z', 'a', 'r', 'a' };
+static const symbol s_1_116[4] = { 'b', 'e', 'r', 'a' };
+static const symbol s_1_117[4] = { 'k', 'e', 'r', 'a' };
+static const symbol s_1_118[4] = { 'p', 'e', 'r', 'a' };
+static const symbol s_1_119[3] = { 'o', 'r', 'a' };
+static const symbol s_1_120[6] = { 't', 'z', 'a', 'r', 'r', 'a' };
+static const symbol s_1_121[5] = { 'k', 'o', 'r', 'r', 'a' };
+static const symbol s_1_122[3] = { 't', 'r', 'a' };
+static const symbol s_1_123[2] = { 's', 'a' };
+static const symbol s_1_124[3] = { 'o', 's', 'a' };
+static const symbol s_1_125[2] = { 't', 'a' };
+static const symbol s_1_126[3] = { 'e', 't', 'a' };
+static const symbol s_1_127[4] = { 'k', 'e', 't', 'a' };
+static const symbol s_1_128[3] = { 's', 't', 'a' };
+static const symbol s_1_129[3] = { 'd', 'u', 'a' };
+static const symbol s_1_130[6] = { 'm', 'e', 'n', 'd', 'u', 'a' };
+static const symbol s_1_131[5] = { 'o', 'r', 'd', 'u', 'a' };
+static const symbol s_1_132[5] = { 'l', 'e', 'k', 'u', 'a' };
+static const symbol s_1_133[5] = { 'b', 'u', 'r', 'u', 'a' };
+static const symbol s_1_134[5] = { 'd', 'u', 'r', 'u', 'a' };
+static const symbol s_1_135[4] = { 't', 's', 'u', 'a' };
+static const symbol s_1_136[3] = { 't', 'u', 'a' };
+static const symbol s_1_137[6] = { 'm', 'e', 'n', 't', 'u', 'a' };
+static const symbol s_1_138[5] = { 'e', 's', 't', 'u', 'a' };
+static const symbol s_1_139[4] = { 't', 'x', 'u', 'a' };
+static const symbol s_1_140[3] = { 'z', 'u', 'a' };
+static const symbol s_1_141[4] = { 't', 'z', 'u', 'a' };
+static const symbol s_1_142[2] = { 'z', 'a' };
+static const symbol s_1_143[3] = { 'e', 'z', 'a' };
+static const symbol s_1_144[5] = { 'e', 'r', 'o', 'z', 'a' };
+static const symbol s_1_145[3] = { 't', 'z', 'a' };
+static const symbol s_1_146[6] = { 'k', 'o', 'i', 't', 'z', 'a' };
+static const symbol s_1_147[5] = { 'a', 'n', 't', 'z', 'a' };
+static const symbol s_1_148[6] = { 'g', 'i', 'n', 't', 'z', 'a' };
+static const symbol s_1_149[6] = { 'k', 'i', 'n', 't', 'z', 'a' };
+static const symbol s_1_150[6] = { 'k', 'u', 'n', 't', 'z', 'a' };
+static const symbol s_1_151[4] = { 'g', 'a', 'b', 'e' };
+static const symbol s_1_152[4] = { 'k', 'a', 'b', 'e' };
+static const symbol s_1_153[4] = { 'k', 'i', 'd', 'e' };
+static const symbol s_1_154[4] = { 'a', 'l', 'd', 'e' };
+static const symbol s_1_155[5] = { 'k', 'a', 'l', 'd', 'e' };
+static const symbol s_1_156[5] = { 't', 'a', 'l', 'd', 'e' };
+static const symbol s_1_157[4] = { 'o', 'r', 'd', 'e' };
+static const symbol s_1_158[2] = { 'g', 'e' };
+static const symbol s_1_159[4] = { 'z', 'a', 'l', 'e' };
+static const symbol s_1_160[5] = { 't', 'z', 'a', 'l', 'e' };
+static const symbol s_1_161[4] = { 'g', 'i', 'l', 'e' };
+static const symbol s_1_162[3] = { 'e', 'm', 'e' };
+static const symbol s_1_163[4] = { 'k', 'u', 'm', 'e' };
+static const symbol s_1_164[2] = { 'n', 'e' };
+static const symbol s_1_165[5] = { 'z', 'i', 'o', 'n', 'e' };
+static const symbol s_1_166[3] = { 'u', 'n', 'e' };
+static const symbol s_1_167[4] = { 'g', 'u', 'n', 'e' };
+static const symbol s_1_168[2] = { 'p', 'e' };
+static const symbol s_1_169[5] = { 'a', 'u', 'r', 'r', 'e' };
+static const symbol s_1_170[2] = { 't', 'e' };
+static const symbol s_1_171[4] = { 'k', 'o', 't', 'e' };
+static const symbol s_1_172[4] = { 'a', 'r', 't', 'e' };
+static const symbol s_1_173[4] = { 'o', 's', 't', 'e' };
+static const symbol s_1_174[4] = { 'e', 't', 'x', 'e' };
+static const symbol s_1_175[3] = { 'g', 'a', 'i' };
+static const symbol s_1_176[2] = { 'd', 'i' };
+static const symbol s_1_177[4] = { 'a', 'l', 'd', 'i' };
+static const symbol s_1_178[5] = { 't', 'a', 'l', 'd', 'i' };
+static const symbol s_1_179[5] = { 'g', 'e', 'l', 'd', 'i' };
+static const symbol s_1_180[5] = { 'h', 'a', 'n', 'd', 'i' };
+static const symbol s_1_181[5] = { 'm', 'e', 'n', 'd', 'i' };
+static const symbol s_1_182[3] = { 'g', 'e', 'i' };
+static const symbol s_1_183[3] = { 'e', 'g', 'i' };
+static const symbol s_1_184[4] = { 'd', 'e', 'g', 'i' };
+static const symbol s_1_185[4] = { 't', 'e', 'g', 'i' };
+static const symbol s_1_186[4] = { 'n', 'a', 'h', 'i' };
+static const symbol s_1_187[3] = { 'o', 'h', 'i' };
+static const symbol s_1_188[2] = { 'k', 'i' };
+static const symbol s_1_189[4] = { 't', 'o', 'k', 'i' };
+static const symbol s_1_190[2] = { 'o', 'i' };
+static const symbol s_1_191[3] = { 'g', 'o', 'i' };
+static const symbol s_1_192[3] = { 'k', 'o', 'i' };
+static const symbol s_1_193[3] = { 'a', 'r', 'i' };
+static const symbol s_1_194[4] = { 'k', 'a', 'r', 'i' };
+static const symbol s_1_195[4] = { 'l', 'a', 'r', 'i' };
+static const symbol s_1_196[4] = { 't', 'a', 'r', 'i' };
+static const symbol s_1_197[5] = { 'g', 'a', 'r', 'r', 'i' };
+static const symbol s_1_198[5] = { 'l', 'a', 'r', 'r', 'i' };
+static const symbol s_1_199[5] = { 'k', 'i', 'r', 'r', 'i' };
+static const symbol s_1_200[4] = { 'd', 'u', 'r', 'i' };
+static const symbol s_1_201[3] = { 'a', 's', 'i' };
+static const symbol s_1_202[2] = { 't', 'i' };
+static const symbol s_1_203[5] = { 'o', 'n', 't', 'z', 'i' };
+static const symbol s_1_204[3] = { 0xC3, 0xB1, 'i' };
+static const symbol s_1_205[2] = { 'a', 'k' };
+static const symbol s_1_206[2] = { 'e', 'k' };
+static const symbol s_1_207[5] = { 't', 'a', 'r', 'i', 'k' };
+static const symbol s_1_208[5] = { 'g', 'i', 'b', 'e', 'l' };
+static const symbol s_1_209[3] = { 'a', 'i', 'l' };
+static const symbol s_1_210[4] = { 'k', 'a', 'i', 'l' };
+static const symbol s_1_211[3] = { 'k', 'a', 'n' };
+static const symbol s_1_212[3] = { 't', 'a', 'n' };
+static const symbol s_1_213[4] = { 'e', 't', 'a', 'n' };
+static const symbol s_1_214[2] = { 'e', 'n' };
+static const symbol s_1_215[3] = { 'r', 'e', 'n' };
+static const symbol s_1_216[6] = { 'g', 'a', 'r', 'r', 'e', 'n' };
+static const symbol s_1_217[6] = { 'g', 'e', 'r', 'r', 'e', 'n' };
+static const symbol s_1_218[5] = { 'u', 'r', 'r', 'e', 'n' };
+static const symbol s_1_219[3] = { 't', 'e', 'n' };
+static const symbol s_1_220[4] = { 't', 'z', 'e', 'n' };
+static const symbol s_1_221[4] = { 'z', 'a', 'i', 'n' };
+static const symbol s_1_222[5] = { 't', 'z', 'a', 'i', 'n' };
+static const symbol s_1_223[3] = { 'k', 'i', 'n' };
+static const symbol s_1_224[3] = { 'm', 'i', 'n' };
+static const symbol s_1_225[3] = { 'd', 'u', 'n' };
+static const symbol s_1_226[4] = { 'a', 's', 'u', 'n' };
+static const symbol s_1_227[5] = { 't', 'a', 's', 'u', 'n' };
+static const symbol s_1_228[5] = { 'a', 'i', 'z', 'u', 'n' };
+static const symbol s_1_229[4] = { 'o', 'n', 'd', 'o' };
+static const symbol s_1_230[5] = { 'k', 'o', 'n', 'd', 'o' };
+static const symbol s_1_231[2] = { 'g', 'o' };
+static const symbol s_1_232[3] = { 'n', 'g', 'o' };
+static const symbol s_1_233[3] = { 'z', 'i', 'o' };
+static const symbol s_1_234[2] = { 'k', 'o' };
+static const symbol s_1_235[5] = { 't', 'r', 'a', 'k', 'o' };
+static const symbol s_1_236[4] = { 't', 'a', 'k', 'o' };
+static const symbol s_1_237[5] = { 'e', 't', 'a', 'k', 'o' };
+static const symbol s_1_238[3] = { 'e', 'k', 'o' };
+static const symbol s_1_239[6] = { 't', 'a', 'r', 'i', 'k', 'o' };
+static const symbol s_1_240[3] = { 's', 'k', 'o' };
+static const symbol s_1_241[4] = { 't', 'u', 'k', 'o' };
+static const symbol s_1_242[8] = { 'm', 'i', 'n', 'u', 't', 'u', 'k', 'o' };
+static const symbol s_1_243[3] = { 'z', 'k', 'o' };
+static const symbol s_1_244[2] = { 'n', 'o' };
+static const symbol s_1_245[4] = { 'z', 'i', 'n', 'o' };
+static const symbol s_1_246[2] = { 'r', 'o' };
+static const symbol s_1_247[3] = { 'a', 'r', 'o' };
+static const symbol s_1_248[5] = { 'i', 'g', 'a', 'r', 'o' };
+static const symbol s_1_249[4] = { 't', 'a', 'r', 'o' };
+static const symbol s_1_250[4] = { 'z', 'a', 'r', 'o' };
+static const symbol s_1_251[3] = { 'e', 'r', 'o' };
+static const symbol s_1_252[4] = { 'g', 'i', 'r', 'o' };
+static const symbol s_1_253[3] = { 'o', 'r', 'o' };
+static const symbol s_1_254[3] = { 'o', 's', 'o' };
+static const symbol s_1_255[2] = { 't', 'o' };
+static const symbol s_1_256[3] = { 't', 't', 'o' };
+static const symbol s_1_257[3] = { 'z', 't', 'o' };
+static const symbol s_1_258[3] = { 't', 'x', 'o' };
+static const symbol s_1_259[3] = { 't', 'z', 'o' };
+static const symbol s_1_260[6] = { 'g', 'i', 'n', 't', 'z', 'o' };
+static const symbol s_1_261[3] = { 0xC3, 0xB1, 'o' };
+static const symbol s_1_262[2] = { 'z', 'p' };
+static const symbol s_1_263[2] = { 'a', 'r' };
+static const symbol s_1_264[3] = { 'd', 'a', 'r' };
+static const symbol s_1_265[5] = { 'b', 'e', 'h', 'a', 'r' };
+static const symbol s_1_266[5] = { 'z', 'e', 'h', 'a', 'r' };
+static const symbol s_1_267[4] = { 'l', 'i', 'a', 'r' };
+static const symbol s_1_268[4] = { 't', 'i', 'a', 'r' };
+static const symbol s_1_269[3] = { 't', 'a', 'r' };
+static const symbol s_1_270[4] = { 't', 'z', 'a', 'r' };
+static const symbol s_1_271[2] = { 'o', 'r' };
+static const symbol s_1_272[3] = { 'k', 'o', 'r' };
+static const symbol s_1_273[2] = { 'o', 's' };
+static const symbol s_1_274[3] = { 'k', 'e', 't' };
+static const symbol s_1_275[2] = { 'd', 'u' };
+static const symbol s_1_276[5] = { 'm', 'e', 'n', 'd', 'u' };
+static const symbol s_1_277[4] = { 'o', 'r', 'd', 'u' };
+static const symbol s_1_278[4] = { 'l', 'e', 'k', 'u' };
+static const symbol s_1_279[4] = { 'b', 'u', 'r', 'u' };
+static const symbol s_1_280[4] = { 'd', 'u', 'r', 'u' };
+static const symbol s_1_281[3] = { 't', 's', 'u' };
+static const symbol s_1_282[2] = { 't', 'u' };
+static const symbol s_1_283[4] = { 't', 'a', 't', 'u' };
+static const symbol s_1_284[5] = { 'm', 'e', 'n', 't', 'u' };
+static const symbol s_1_285[4] = { 'e', 's', 't', 'u' };
+static const symbol s_1_286[3] = { 't', 'x', 'u' };
+static const symbol s_1_287[2] = { 'z', 'u' };
+static const symbol s_1_288[3] = { 't', 'z', 'u' };
+static const symbol s_1_289[6] = { 'g', 'i', 'n', 't', 'z', 'u' };
+static const symbol s_1_290[1] = { 'z' };
+static const symbol s_1_291[2] = { 'e', 'z' };
+static const symbol s_1_292[4] = { 'e', 'r', 'o', 'z' };
+static const symbol s_1_293[2] = { 't', 'z' };
+static const symbol s_1_294[5] = { 'k', 'o', 'i', 't', 'z' };
+
+static const struct among a_1[295] =
+{
+/*  0 */ { 3, s_1_0, -1, 1, 0},
+/*  1 */ { 4, s_1_1, 0, 1, 0},
+/*  2 */ { 4, s_1_2, -1, 1, 0},
+/*  3 */ { 5, s_1_3, -1, 1, 0},
+/*  4 */ { 5, s_1_4, -1, 1, 0},
+/*  5 */ { 5, s_1_5, -1, 1, 0},
+/*  6 */ { 5, s_1_6, -1, 1, 0},
+/*  7 */ { 6, s_1_7, 6, 1, 0},
+/*  8 */ { 6, s_1_8, 6, 1, 0},
+/*  9 */ { 5, s_1_9, -1, 1, 0},
+/* 10 */ { 5, s_1_10, -1, 1, 0},
+/* 11 */ { 6, s_1_11, 10, 1, 0},
+/* 12 */ { 5, s_1_12, -1, 1, 0},
+/* 13 */ { 4, s_1_13, -1, 1, 0},
+/* 14 */ { 5, s_1_14, -1, 1, 0},
+/* 15 */ { 3, s_1_15, -1, 1, 0},
+/* 16 */ { 4, s_1_16, 15, 1, 0},
+/* 17 */ { 6, s_1_17, 15, 1, 0},
+/* 18 */ { 4, s_1_18, 15, 1, 0},
+/* 19 */ { 5, s_1_19, 18, 1, 0},
+/* 20 */ { 3, s_1_20, -1, 1, 0},
+/* 21 */ { 6, s_1_21, -1, 1, 0},
+/* 22 */ { 3, s_1_22, -1, 1, 0},
+/* 23 */ { 5, s_1_23, 22, 1, 0},
+/* 24 */ { 5, s_1_24, 22, 1, 0},
+/* 25 */ { 5, s_1_25, 22, 1, 0},
+/* 26 */ { 5, s_1_26, -1, 1, 0},
+/* 27 */ { 2, s_1_27, -1, 1, 0},
+/* 28 */ { 4, s_1_28, 27, 1, 0},
+/* 29 */ { 4, s_1_29, -1, 1, 0},
+/* 30 */ { 5, s_1_30, -1, 1, 0},
+/* 31 */ { 6, s_1_31, 30, 1, 0},
+/* 32 */ { 6, s_1_32, -1, 1, 0},
+/* 33 */ { 6, s_1_33, -1, 1, 0},
+/* 34 */ { 4, s_1_34, -1, 1, 0},
+/* 35 */ { 4, s_1_35, -1, 1, 0},
+/* 36 */ { 5, s_1_36, 35, 1, 0},
+/* 37 */ { 5, s_1_37, 35, 1, 0},
+/* 38 */ { 5, s_1_38, -1, 1, 0},
+/* 39 */ { 4, s_1_39, -1, 1, 0},
+/* 40 */ { 3, s_1_40, -1, 1, 0},
+/* 41 */ { 5, s_1_41, 40, 1, 0},
+/* 42 */ { 3, s_1_42, -1, 1, 0},
+/* 43 */ { 4, s_1_43, 42, 1, 0},
+/* 44 */ { 4, s_1_44, -1, 1, 0},
+/* 45 */ { 5, s_1_45, 44, 1, 0},
+/* 46 */ { 5, s_1_46, 44, 1, 0},
+/* 47 */ { 5, s_1_47, 44, 1, 0},
+/* 48 */ { 4, s_1_48, -1, 1, 0},
+/* 49 */ { 5, s_1_49, 48, 1, 0},
+/* 50 */ { 5, s_1_50, 48, 1, 0},
+/* 51 */ { 6, s_1_51, -1, 2, 0},
+/* 52 */ { 6, s_1_52, -1, 1, 0},
+/* 53 */ { 6, s_1_53, -1, 1, 0},
+/* 54 */ { 5, s_1_54, -1, 1, 0},
+/* 55 */ { 4, s_1_55, -1, 1, 0},
+/* 56 */ { 3, s_1_56, -1, 1, 0},
+/* 57 */ { 4, s_1_57, -1, 1, 0},
+/* 58 */ { 5, s_1_58, -1, 1, 0},
+/* 59 */ { 6, s_1_59, -1, 1, 0},
+/* 60 */ { 2, s_1_60, -1, 1, 0},
+/* 61 */ { 4, s_1_61, 60, 3, 0},
+/* 62 */ { 5, s_1_62, 60, 10, 0},
+/* 63 */ { 3, s_1_63, 60, 1, 0},
+/* 64 */ { 3, s_1_64, 60, 1, 0},
+/* 65 */ { 3, s_1_65, 60, 1, 0},
+/* 66 */ { 6, s_1_66, -1, 1, 0},
+/* 67 */ { 4, s_1_67, -1, 1, 0},
+/* 68 */ { 5, s_1_68, -1, 1, 0},
+/* 69 */ { 5, s_1_69, -1, 1, 0},
+/* 70 */ { 4, s_1_70, -1, 1, 0},
+/* 71 */ { 3, s_1_71, -1, 1, 0},
+/* 72 */ { 2, s_1_72, -1, 1, 0},
+/* 73 */ { 4, s_1_73, 72, 1, 0},
+/* 74 */ { 3, s_1_74, 72, 1, 0},
+/* 75 */ { 7, s_1_75, 74, 1, 0},
+/* 76 */ { 7, s_1_76, 74, 1, 0},
+/* 77 */ { 6, s_1_77, 74, 1, 0},
+/* 78 */ { 5, s_1_78, 72, 1, 0},
+/* 79 */ { 6, s_1_79, 78, 1, 0},
+/* 80 */ { 4, s_1_80, 72, 1, 0},
+/* 81 */ { 4, s_1_81, 72, 1, 0},
+/* 82 */ { 5, s_1_82, 72, 1, 0},
+/* 83 */ { 3, s_1_83, 72, 1, 0},
+/* 84 */ { 4, s_1_84, 83, 1, 0},
+/* 85 */ { 5, s_1_85, 83, 1, 0},
+/* 86 */ { 6, s_1_86, 85, 1, 0},
+/* 87 */ { 5, s_1_87, -1, 1, 0},
+/* 88 */ { 6, s_1_88, 87, 1, 0},
+/* 89 */ { 4, s_1_89, -1, 1, 0},
+/* 90 */ { 4, s_1_90, -1, 1, 0},
+/* 91 */ { 3, s_1_91, -1, 1, 0},
+/* 92 */ { 5, s_1_92, 91, 1, 0},
+/* 93 */ { 4, s_1_93, 91, 1, 0},
+/* 94 */ { 3, s_1_94, -1, 1, 0},
+/* 95 */ { 5, s_1_95, 94, 1, 0},
+/* 96 */ { 4, s_1_96, -1, 1, 0},
+/* 97 */ { 5, s_1_97, 96, 1, 0},
+/* 98 */ { 5, s_1_98, 96, 1, 0},
+/* 99 */ { 4, s_1_99, -1, 1, 0},
+/*100 */ { 4, s_1_100, -1, 1, 0},
+/*101 */ { 4, s_1_101, -1, 1, 0},
+/*102 */ { 3, s_1_102, -1, 1, 0},
+/*103 */ { 4, s_1_103, 102, 1, 0},
+/*104 */ { 4, s_1_104, 102, 1, 0},
+/*105 */ { 4, s_1_105, -1, 1, 0},
+/*106 */ { 4, s_1_106, -1, 1, 0},
+/*107 */ { 4, s_1_107, -1, 1, 0},
+/*108 */ { 2, s_1_108, -1, 1, 0},
+/*109 */ { 3, s_1_109, 108, 1, 0},
+/*110 */ { 4, s_1_110, 109, 1, 0},
+/*111 */ { 5, s_1_111, 109, 1, 0},
+/*112 */ { 5, s_1_112, 109, 1, 0},
+/*113 */ { 4, s_1_113, 109, 1, 0},
+/*114 */ { 5, s_1_114, 113, 1, 0},
+/*115 */ { 5, s_1_115, 109, 1, 0},
+/*116 */ { 4, s_1_116, 108, 1, 0},
+/*117 */ { 4, s_1_117, 108, 1, 0},
+/*118 */ { 4, s_1_118, 108, 1, 0},
+/*119 */ { 3, s_1_119, 108, 2, 0},
+/*120 */ { 6, s_1_120, 108, 1, 0},
+/*121 */ { 5, s_1_121, 108, 1, 0},
+/*122 */ { 3, s_1_122, 108, 1, 0},
+/*123 */ { 2, s_1_123, -1, 1, 0},
+/*124 */ { 3, s_1_124, 123, 1, 0},
+/*125 */ { 2, s_1_125, -1, 1, 0},
+/*126 */ { 3, s_1_126, 125, 1, 0},
+/*127 */ { 4, s_1_127, 126, 1, 0},
+/*128 */ { 3, s_1_128, 125, 1, 0},
+/*129 */ { 3, s_1_129, -1, 1, 0},
+/*130 */ { 6, s_1_130, 129, 1, 0},
+/*131 */ { 5, s_1_131, 129, 1, 0},
+/*132 */ { 5, s_1_132, -1, 1, 0},
+/*133 */ { 5, s_1_133, -1, 1, 0},
+/*134 */ { 5, s_1_134, -1, 1, 0},
+/*135 */ { 4, s_1_135, -1, 1, 0},
+/*136 */ { 3, s_1_136, -1, 1, 0},
+/*137 */ { 6, s_1_137, 136, 1, 0},
+/*138 */ { 5, s_1_138, 136, 1, 0},
+/*139 */ { 4, s_1_139, -1, 1, 0},
+/*140 */ { 3, s_1_140, -1, 1, 0},
+/*141 */ { 4, s_1_141, 140, 1, 0},
+/*142 */ { 2, s_1_142, -1, 1, 0},
+/*143 */ { 3, s_1_143, 142, 1, 0},
+/*144 */ { 5, s_1_144, 142, 1, 0},
+/*145 */ { 3, s_1_145, 142, 2, 0},
+/*146 */ { 6, s_1_146, 145, 1, 0},
+/*147 */ { 5, s_1_147, 145, 1, 0},
+/*148 */ { 6, s_1_148, 145, 1, 0},
+/*149 */ { 6, s_1_149, 145, 1, 0},
+/*150 */ { 6, s_1_150, 145, 1, 0},
+/*151 */ { 4, s_1_151, -1, 1, 0},
+/*152 */ { 4, s_1_152, -1, 1, 0},
+/*153 */ { 4, s_1_153, -1, 1, 0},
+/*154 */ { 4, s_1_154, -1, 1, 0},
+/*155 */ { 5, s_1_155, 154, 1, 0},
+/*156 */ { 5, s_1_156, 154, 1, 0},
+/*157 */ { 4, s_1_157, -1, 1, 0},
+/*158 */ { 2, s_1_158, -1, 1, 0},
+/*159 */ { 4, s_1_159, -1, 1, 0},
+/*160 */ { 5, s_1_160, 159, 1, 0},
+/*161 */ { 4, s_1_161, -1, 1, 0},
+/*162 */ { 3, s_1_162, -1, 1, 0},
+/*163 */ { 4, s_1_163, -1, 1, 0},
+/*164 */ { 2, s_1_164, -1, 1, 0},
+/*165 */ { 5, s_1_165, 164, 1, 0},
+/*166 */ { 3, s_1_166, 164, 1, 0},
+/*167 */ { 4, s_1_167, 166, 1, 0},
+/*168 */ { 2, s_1_168, -1, 1, 0},
+/*169 */ { 5, s_1_169, -1, 1, 0},
+/*170 */ { 2, s_1_170, -1, 1, 0},
+/*171 */ { 4, s_1_171, 170, 1, 0},
+/*172 */ { 4, s_1_172, 170, 1, 0},
+/*173 */ { 4, s_1_173, 170, 1, 0},
+/*174 */ { 4, s_1_174, -1, 1, 0},
+/*175 */ { 3, s_1_175, -1, 1, 0},
+/*176 */ { 2, s_1_176, -1, 1, 0},
+/*177 */ { 4, s_1_177, 176, 1, 0},
+/*178 */ { 5, s_1_178, 177, 1, 0},
+/*179 */ { 5, s_1_179, 176, 8, 0},
+/*180 */ { 5, s_1_180, 176, 1, 0},
+/*181 */ { 5, s_1_181, 176, 1, 0},
+/*182 */ { 3, s_1_182, -1, 1, 0},
+/*183 */ { 3, s_1_183, -1, 1, 0},
+/*184 */ { 4, s_1_184, 183, 1, 0},
+/*185 */ { 4, s_1_185, 183, 1, 0},
+/*186 */ { 4, s_1_186, -1, 1, 0},
+/*187 */ { 3, s_1_187, -1, 1, 0},
+/*188 */ { 2, s_1_188, -1, 1, 0},
+/*189 */ { 4, s_1_189, 188, 1, 0},
+/*190 */ { 2, s_1_190, -1, 1, 0},
+/*191 */ { 3, s_1_191, 190, 1, 0},
+/*192 */ { 3, s_1_192, 190, 1, 0},
+/*193 */ { 3, s_1_193, -1, 1, 0},
+/*194 */ { 4, s_1_194, 193, 1, 0},
+/*195 */ { 4, s_1_195, 193, 1, 0},
+/*196 */ { 4, s_1_196, 193, 1, 0},
+/*197 */ { 5, s_1_197, -1, 2, 0},
+/*198 */ { 5, s_1_198, -1, 1, 0},
+/*199 */ { 5, s_1_199, -1, 1, 0},
+/*200 */ { 4, s_1_200, -1, 1, 0},
+/*201 */ { 3, s_1_201, -1, 1, 0},
+/*202 */ { 2, s_1_202, -1, 1, 0},
+/*203 */ { 5, s_1_203, -1, 1, 0},
+/*204 */ { 3, s_1_204, -1, 1, 0},
+/*205 */ { 2, s_1_205, -1, 1, 0},
+/*206 */ { 2, s_1_206, -1, 1, 0},
+/*207 */ { 5, s_1_207, -1, 1, 0},
+/*208 */ { 5, s_1_208, -1, 1, 0},
+/*209 */ { 3, s_1_209, -1, 1, 0},
+/*210 */ { 4, s_1_210, 209, 1, 0},
+/*211 */ { 3, s_1_211, -1, 1, 0},
+/*212 */ { 3, s_1_212, -1, 1, 0},
+/*213 */ { 4, s_1_213, 212, 1, 0},
+/*214 */ { 2, s_1_214, -1, 4, 0},
+/*215 */ { 3, s_1_215, 214, 2, 0},
+/*216 */ { 6, s_1_216, 215, 1, 0},
+/*217 */ { 6, s_1_217, 215, 1, 0},
+/*218 */ { 5, s_1_218, 215, 1, 0},
+/*219 */ { 3, s_1_219, 214, 4, 0},
+/*220 */ { 4, s_1_220, 214, 4, 0},
+/*221 */ { 4, s_1_221, -1, 1, 0},
+/*222 */ { 5, s_1_222, 221, 1, 0},
+/*223 */ { 3, s_1_223, -1, 1, 0},
+/*224 */ { 3, s_1_224, -1, 1, 0},
+/*225 */ { 3, s_1_225, -1, 1, 0},
+/*226 */ { 4, s_1_226, -1, 1, 0},
+/*227 */ { 5, s_1_227, 226, 1, 0},
+/*228 */ { 5, s_1_228, -1, 1, 0},
+/*229 */ { 4, s_1_229, -1, 1, 0},
+/*230 */ { 5, s_1_230, 229, 1, 0},
+/*231 */ { 2, s_1_231, -1, 1, 0},
+/*232 */ { 3, s_1_232, 231, 1, 0},
+/*233 */ { 3, s_1_233, -1, 1, 0},
+/*234 */ { 2, s_1_234, -1, 1, 0},
+/*235 */ { 5, s_1_235, 234, 5, 0},
+/*236 */ { 4, s_1_236, 234, 1, 0},
+/*237 */ { 5, s_1_237, 236, 1, 0},
+/*238 */ { 3, s_1_238, 234, 1, 0},
+/*239 */ { 6, s_1_239, 234, 1, 0},
+/*240 */ { 3, s_1_240, 234, 1, 0},
+/*241 */ { 4, s_1_241, 234, 1, 0},
+/*242 */ { 8, s_1_242, 241, 6, 0},
+/*243 */ { 3, s_1_243, 234, 1, 0},
+/*244 */ { 2, s_1_244, -1, 1, 0},
+/*245 */ { 4, s_1_245, 244, 1, 0},
+/*246 */ { 2, s_1_246, -1, 1, 0},
+/*247 */ { 3, s_1_247, 246, 1, 0},
+/*248 */ { 5, s_1_248, 247, 9, 0},
+/*249 */ { 4, s_1_249, 247, 1, 0},
+/*250 */ { 4, s_1_250, 247, 1, 0},
+/*251 */ { 3, s_1_251, 246, 1, 0},
+/*252 */ { 4, s_1_252, 246, 1, 0},
+/*253 */ { 3, s_1_253, 246, 1, 0},
+/*254 */ { 3, s_1_254, -1, 1, 0},
+/*255 */ { 2, s_1_255, -1, 1, 0},
+/*256 */ { 3, s_1_256, 255, 1, 0},
+/*257 */ { 3, s_1_257, 255, 1, 0},
+/*258 */ { 3, s_1_258, -1, 1, 0},
+/*259 */ { 3, s_1_259, -1, 1, 0},
+/*260 */ { 6, s_1_260, 259, 1, 0},
+/*261 */ { 3, s_1_261, -1, 1, 0},
+/*262 */ { 2, s_1_262, -1, 1, 0},
+/*263 */ { 2, s_1_263, -1, 1, 0},
+/*264 */ { 3, s_1_264, 263, 1, 0},
+/*265 */ { 5, s_1_265, 263, 1, 0},
+/*266 */ { 5, s_1_266, 263, 7, 0},
+/*267 */ { 4, s_1_267, 263, 1, 0},
+/*268 */ { 4, s_1_268, 263, 1, 0},
+/*269 */ { 3, s_1_269, 263, 1, 0},
+/*270 */ { 4, s_1_270, 263, 1, 0},
+/*271 */ { 2, s_1_271, -1, 2, 0},
+/*272 */ { 3, s_1_272, 271, 1, 0},
+/*273 */ { 2, s_1_273, -1, 1, 0},
+/*274 */ { 3, s_1_274, -1, 1, 0},
+/*275 */ { 2, s_1_275, -1, 1, 0},
+/*276 */ { 5, s_1_276, 275, 1, 0},
+/*277 */ { 4, s_1_277, 275, 1, 0},
+/*278 */ { 4, s_1_278, -1, 1, 0},
+/*279 */ { 4, s_1_279, -1, 2, 0},
+/*280 */ { 4, s_1_280, -1, 1, 0},
+/*281 */ { 3, s_1_281, -1, 1, 0},
+/*282 */ { 2, s_1_282, -1, 1, 0},
+/*283 */ { 4, s_1_283, 282, 4, 0},
+/*284 */ { 5, s_1_284, 282, 1, 0},
+/*285 */ { 4, s_1_285, 282, 1, 0},
+/*286 */ { 3, s_1_286, -1, 1, 0},
+/*287 */ { 2, s_1_287, -1, 1, 0},
+/*288 */ { 3, s_1_288, 287, 1, 0},
+/*289 */ { 6, s_1_289, 288, 1, 0},
+/*290 */ { 1, s_1_290, -1, 1, 0},
+/*291 */ { 2, s_1_291, 290, 1, 0},
+/*292 */ { 4, s_1_292, 290, 1, 0},
+/*293 */ { 2, s_1_293, 290, 1, 0},
+/*294 */ { 5, s_1_294, 293, 1, 0}
+};
+
+static const symbol s_2_0[4] = { 'z', 'l', 'e', 'a' };
+static const symbol s_2_1[5] = { 'k', 'e', 'r', 'i', 'a' };
+static const symbol s_2_2[2] = { 'l', 'a' };
+static const symbol s_2_3[3] = { 'e', 'r', 'a' };
+static const symbol s_2_4[4] = { 'd', 'a', 'd', 'e' };
+static const symbol s_2_5[4] = { 't', 'a', 'd', 'e' };
+static const symbol s_2_6[4] = { 'd', 'a', 't', 'e' };
+static const symbol s_2_7[4] = { 't', 'a', 't', 'e' };
+static const symbol s_2_8[2] = { 'g', 'i' };
+static const symbol s_2_9[2] = { 'k', 'i' };
+static const symbol s_2_10[2] = { 'i', 'k' };
+static const symbol s_2_11[5] = { 'l', 'a', 'n', 'i', 'k' };
+static const symbol s_2_12[3] = { 'r', 'i', 'k' };
+static const symbol s_2_13[5] = { 'l', 'a', 'r', 'i', 'k' };
+static const symbol s_2_14[4] = { 'z', 't', 'i', 'k' };
+static const symbol s_2_15[2] = { 'g', 'o' };
+static const symbol s_2_16[2] = { 'r', 'o' };
+static const symbol s_2_17[3] = { 'e', 'r', 'o' };
+static const symbol s_2_18[2] = { 't', 'o' };
+
+static const struct among a_2[19] =
+{
+/*  0 */ { 4, s_2_0, -1, 2, 0},
+/*  1 */ { 5, s_2_1, -1, 1, 0},
+/*  2 */ { 2, s_2_2, -1, 1, 0},
+/*  3 */ { 3, s_2_3, -1, 1, 0},
+/*  4 */ { 4, s_2_4, -1, 1, 0},
+/*  5 */ { 4, s_2_5, -1, 1, 0},
+/*  6 */ { 4, s_2_6, -1, 1, 0},
+/*  7 */ { 4, s_2_7, -1, 1, 0},
+/*  8 */ { 2, s_2_8, -1, 1, 0},
+/*  9 */ { 2, s_2_9, -1, 1, 0},
+/* 10 */ { 2, s_2_10, -1, 1, 0},
+/* 11 */ { 5, s_2_11, 10, 1, 0},
+/* 12 */ { 3, s_2_12, 10, 1, 0},
+/* 13 */ { 5, s_2_13, 12, 1, 0},
+/* 14 */ { 4, s_2_14, 10, 1, 0},
+/* 15 */ { 2, s_2_15, -1, 1, 0},
+/* 16 */ { 2, s_2_16, -1, 1, 0},
+/* 17 */ { 3, s_2_17, 16, 1, 0},
+/* 18 */ { 2, s_2_18, -1, 1, 0}
+};
+
+static const unsigned char g_v[] = { 17, 65, 16 };
+
+static const symbol s_0[] = { 'a', 't', 's', 'e', 'd', 'e', 'n' };
+static const symbol s_1[] = { 'a', 'r', 'a', 'b', 'e', 'r', 'a' };
+static const symbol s_2[] = { 'b', 'a', 'd', 'i', 't', 'u' };
+static const symbol s_3[] = { 'j', 'o', 'k' };
+static const symbol s_4[] = { 't', 'r', 'a' };
+static const symbol s_5[] = { 'm', 'i', 'n', 'u', 't', 'u' };
+static const symbol s_6[] = { 'z', 'e', 'h', 'a', 'r' };
+static const symbol s_7[] = { 'g', 'e', 'l', 'd', 'i' };
+static const symbol s_8[] = { 'i', 'g', 'a', 'r', 'o' };
+static const symbol s_9[] = { 'a', 'u', 'r', 'k', 'a' };
+static const symbol s_10[] = { 'z' };
+
+static int r_mark_regions(struct SN_env * z) { /* forwardmode */
+    z->I[0] = z->l; /* $pV = <integer expression>, line 25 */
+    z->I[1] = z->l; /* $p1 = <integer expression>, line 26 */
+    z->I[2] = z->l; /* $p2 = <integer expression>, line 27 */
+    {   int c1 = z->c; /* do, line 29 */
+        {   int c2 = z->c; /* or, line 31 */
+            if (in_grouping_U(z, g_v, 97, 117, 0)) goto lab2; /* grouping v, line 30 */
+            {   int c3 = z->c; /* or, line 30 */
+                if (out_grouping_U(z, g_v, 97, 117, 0)) goto lab4; /* non v, line 30 */
+                {    /* gopast */ /* grouping v, line 30 */
+                    int ret = out_grouping_U(z, g_v, 97, 117, 1);
+                    if (ret < 0) goto lab4;
+                    z->c += ret;
+                }
+                goto lab3;
+            lab4:
+                z->c = c3;
+                if (in_grouping_U(z, g_v, 97, 117, 0)) goto lab2; /* grouping v, line 30 */
+                {    /* gopast */ /* non v, line 30 */
+                    int ret = in_grouping_U(z, g_v, 97, 117, 1);
+                    if (ret < 0) goto lab2;
+                    z->c += ret;
+                }
+            }
+        lab3:
+            goto lab1;
+        lab2:
+            z->c = c2;
+            if (out_grouping_U(z, g_v, 97, 117, 0)) goto lab0; /* non v, line 32 */
+            {   int c4 = z->c; /* or, line 32 */
+                if (out_grouping_U(z, g_v, 97, 117, 0)) goto lab6; /* non v, line 32 */
+                {    /* gopast */ /* grouping v, line 32 */
+                    int ret = out_grouping_U(z, g_v, 97, 117, 1);
+                    if (ret < 0) goto lab6;
+                    z->c += ret;
+                }
+                goto lab5;
+            lab6:
+                z->c = c4;
+                if (in_grouping_U(z, g_v, 97, 117, 0)) goto lab0; /* grouping v, line 32 */
+                {   int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
+                    if (ret < 0) goto lab0;
+                    z->c = ret; /* next, line 32 */
+                }
+            }
+        lab5:
+            ;
+        }
+    lab1:
+        z->I[0] = z->c; /* setmark pV, line 33 */
+    lab0:
+        z->c = c1;
+    }
+    {   int c5 = z->c; /* do, line 35 */
+        {    /* gopast */ /* grouping v, line 36 */
+            int ret = out_grouping_U(z, g_v, 97, 117, 1);
+            if (ret < 0) goto lab7;
+            z->c += ret;
+        }
+        {    /* gopast */ /* non v, line 36 */
+            int ret = in_grouping_U(z, g_v, 97, 117, 1);
+            if (ret < 0) goto lab7;
+            z->c += ret;
+        }
+        z->I[1] = z->c; /* setmark p1, line 36 */
+        {    /* gopast */ /* grouping v, line 37 */
+            int ret = out_grouping_U(z, g_v, 97, 117, 1);
+            if (ret < 0) goto lab7;
+            z->c += ret;
+        }
+        {    /* gopast */ /* non v, line 37 */
+            int ret = in_grouping_U(z, g_v, 97, 117, 1);
+            if (ret < 0) goto lab7;
+            z->c += ret;
+        }
+        z->I[2] = z->c; /* setmark p2, line 37 */
+    lab7:
+        z->c = c5;
+    }
+    return 1;
+}
+
+static int r_RV(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 43 */
+    return 1;
+}
+
+static int r_R2(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[2] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 44 */
+    return 1;
+}
+
+static int r_R1(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 45 */
+    return 1;
+}
+
+static int r_aditzak(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 48 */
+    if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((70566434 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 48 */
+    among_var = find_among_b(z, a_0, 109);
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 48 */
+    switch (among_var) { /* among, line 48 */
+        case 1:
+            {   int ret = r_RV(z); /* call RV, line 59 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 59 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R2(z); /* call R2, line 61 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 61 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 3:
+            {   int ret = slice_from_s(z, 7, s_0); /* <-, line 63 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 4:
+            {   int ret = slice_from_s(z, 7, s_1); /* <-, line 65 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 5:
+            {   int ret = slice_from_s(z, 6, s_2); /* <-, line 67 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+static int r_izenak(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 73 */
+    if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((71162402 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 73 */
+    among_var = find_among_b(z, a_1, 295);
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 73 */
+    switch (among_var) { /* among, line 73 */
+        case 1:
+            {   int ret = r_RV(z); /* call RV, line 103 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 103 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R2(z); /* call R2, line 105 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 105 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 3:
+            {   int ret = slice_from_s(z, 3, s_3); /* <-, line 107 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 4:
+            {   int ret = r_R1(z); /* call R1, line 109 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 109 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 5:
+            {   int ret = slice_from_s(z, 3, s_4); /* <-, line 111 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 6:
+            {   int ret = slice_from_s(z, 6, s_5); /* <-, line 113 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 7:
+            {   int ret = slice_from_s(z, 5, s_6); /* <-, line 115 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 8:
+            {   int ret = slice_from_s(z, 5, s_7); /* <-, line 117 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 9:
+            {   int ret = slice_from_s(z, 5, s_8); /* <-, line 119 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 10:
+            {   int ret = slice_from_s(z, 5, s_9); /* <-, line 121 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+static int r_adjetiboak(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 126 */
+    if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((35362 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 126 */
+    among_var = find_among_b(z, a_2, 19);
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 126 */
+    switch (among_var) { /* among, line 126 */
+        case 1:
+            {   int ret = r_RV(z); /* call RV, line 129 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 129 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = slice_from_s(z, 1, s_10); /* <-, line 131 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+extern int basque_UTF_8_stem(struct SN_env * z) { /* forwardmode */
+    /* do, line 138 */
+    {   int ret = r_mark_regions(z); /* call mark_regions, line 138 */
+        if (ret < 0) return ret;
+    }
+    z->lb = z->c; z->c = z->l; /* backwards, line 139 */
+
+/* repeat, line 140 */
+
+    while(1) {        int m1 = z->l - z->c; (void)m1;
+        {   int ret = r_aditzak(z); /* call aditzak, line 140 */
+            if (ret == 0) goto lab0;
+            if (ret < 0) return ret;
+        }
+        continue;
+    lab0:
+        z->c = z->l - m1;
+        break;
+    }
+/* repeat, line 141 */
+
+    while(1) {        int m2 = z->l - z->c; (void)m2;
+        {   int ret = r_izenak(z); /* call izenak, line 141 */
+            if (ret == 0) goto lab1;
+            if (ret < 0) return ret;
+        }
+        continue;
+    lab1:
+        z->c = z->l - m2;
+        break;
+    }
+    {   int m3 = z->l - z->c; (void)m3; /* do, line 142 */
+        {   int ret = r_adjetiboak(z); /* call adjetiboak, line 142 */
+            if (ret < 0) return ret;
+        }
+        z->c = z->l - m3;
+    }
+    z->c = z->lb;
+    return 1;
+}
+
+extern struct SN_env * basque_UTF_8_create_env(void) { return SN_create_env(0, 3, 0); }
+
+extern void basque_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+
diff --git a/src/backend/snowball/libstemmer/stem_UTF_8_catalan.c b/src/backend/snowball/libstemmer/stem_UTF_8_catalan.c
new file mode 100644 (file)
index 0000000..23cf4e5
--- /dev/null
@@ -0,0 +1,1450 @@
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
+
+#include "header.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern int catalan_UTF_8_stem(struct SN_env * z);
+#ifdef __cplusplus
+}
+#endif
+static int r_residual_suffix(struct SN_env * z);
+static int r_verb_suffix(struct SN_env * z);
+static int r_standard_suffix(struct SN_env * z);
+static int r_attached_pronoun(struct SN_env * z);
+static int r_R2(struct SN_env * z);
+static int r_R1(struct SN_env * z);
+static int r_mark_regions(struct SN_env * z);
+static int r_cleaning(struct SN_env * z);
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+extern struct SN_env * catalan_UTF_8_create_env(void);
+extern void catalan_UTF_8_close_env(struct SN_env * z);
+
+
+#ifdef __cplusplus
+}
+#endif
+static const symbol s_0_1[2] = { 0xC2, 0xB7 };
+static const symbol s_0_2[2] = { 0xC3, 0xA0 };
+static const symbol s_0_3[2] = { 0xC3, 0xA1 };
+static const symbol s_0_4[2] = { 0xC3, 0xA8 };
+static const symbol s_0_5[2] = { 0xC3, 0xA9 };
+static const symbol s_0_6[2] = { 0xC3, 0xAC };
+static const symbol s_0_7[2] = { 0xC3, 0xAD };
+static const symbol s_0_8[2] = { 0xC3, 0xAF };
+static const symbol s_0_9[2] = { 0xC3, 0xB2 };
+static const symbol s_0_10[2] = { 0xC3, 0xB3 };
+static const symbol s_0_11[2] = { 0xC3, 0xBA };
+static const symbol s_0_12[2] = { 0xC3, 0xBC };
+
+static const struct among a_0[13] =
+{
+/*  0 */ { 0, 0, -1, 7, 0},
+/*  1 */ { 2, s_0_1, 0, 6, 0},
+/*  2 */ { 2, s_0_2, 0, 1, 0},
+/*  3 */ { 2, s_0_3, 0, 1, 0},
+/*  4 */ { 2, s_0_4, 0, 2, 0},
+/*  5 */ { 2, s_0_5, 0, 2, 0},
+/*  6 */ { 2, s_0_6, 0, 3, 0},
+/*  7 */ { 2, s_0_7, 0, 3, 0},
+/*  8 */ { 2, s_0_8, 0, 3, 0},
+/*  9 */ { 2, s_0_9, 0, 4, 0},
+/* 10 */ { 2, s_0_10, 0, 4, 0},
+/* 11 */ { 2, s_0_11, 0, 5, 0},
+/* 12 */ { 2, s_0_12, 0, 5, 0}
+};
+
+static const symbol s_1_0[2] = { 'l', 'a' };
+static const symbol s_1_1[3] = { '-', 'l', 'a' };
+static const symbol s_1_2[4] = { 's', 'e', 'l', 'a' };
+static const symbol s_1_3[2] = { 'l', 'e' };
+static const symbol s_1_4[2] = { 'm', 'e' };
+static const symbol s_1_5[3] = { '-', 'm', 'e' };
+static const symbol s_1_6[2] = { 's', 'e' };
+static const symbol s_1_7[3] = { '-', 't', 'e' };
+static const symbol s_1_8[2] = { 'h', 'i' };
+static const symbol s_1_9[3] = { '\'', 'h', 'i' };
+static const symbol s_1_10[2] = { 'l', 'i' };
+static const symbol s_1_11[3] = { '-', 'l', 'i' };
+static const symbol s_1_12[2] = { '\'', 'l' };
+static const symbol s_1_13[2] = { '\'', 'm' };
+static const symbol s_1_14[2] = { '-', 'm' };
+static const symbol s_1_15[2] = { '\'', 'n' };
+static const symbol s_1_16[2] = { '-', 'n' };
+static const symbol s_1_17[2] = { 'h', 'o' };
+static const symbol s_1_18[3] = { '\'', 'h', 'o' };
+static const symbol s_1_19[2] = { 'l', 'o' };
+static const symbol s_1_20[4] = { 's', 'e', 'l', 'o' };
+static const symbol s_1_21[2] = { '\'', 's' };
+static const symbol s_1_22[3] = { 'l', 'a', 's' };
+static const symbol s_1_23[5] = { 's', 'e', 'l', 'a', 's' };
+static const symbol s_1_24[3] = { 'l', 'e', 's' };
+static const symbol s_1_25[4] = { '-', 'l', 'e', 's' };
+static const symbol s_1_26[3] = { '\'', 'l', 's' };
+static const symbol s_1_27[3] = { '-', 'l', 's' };
+static const symbol s_1_28[3] = { '\'', 'n', 's' };
+static const symbol s_1_29[3] = { '-', 'n', 's' };
+static const symbol s_1_30[3] = { 'e', 'n', 's' };
+static const symbol s_1_31[3] = { 'l', 'o', 's' };
+static const symbol s_1_32[5] = { 's', 'e', 'l', 'o', 's' };
+static const symbol s_1_33[3] = { 'n', 'o', 's' };
+static const symbol s_1_34[4] = { '-', 'n', 'o', 's' };
+static const symbol s_1_35[3] = { 'v', 'o', 's' };
+static const symbol s_1_36[2] = { 'u', 's' };
+static const symbol s_1_37[3] = { '-', 'u', 's' };
+static const symbol s_1_38[2] = { '\'', 't' };
+
+static const struct among a_1[39] =
+{
+/*  0 */ { 2, s_1_0, -1, 1, 0},
+/*  1 */ { 3, s_1_1, 0, 1, 0},
+/*  2 */ { 4, s_1_2, 0, 1, 0},
+/*  3 */ { 2, s_1_3, -1, 1, 0},
+/*  4 */ { 2, s_1_4, -1, 1, 0},
+/*  5 */ { 3, s_1_5, 4, 1, 0},
+/*  6 */ { 2, s_1_6, -1, 1, 0},
+/*  7 */ { 3, s_1_7, -1, 1, 0},
+/*  8 */ { 2, s_1_8, -1, 1, 0},
+/*  9 */ { 3, s_1_9, 8, 1, 0},
+/* 10 */ { 2, s_1_10, -1, 1, 0},
+/* 11 */ { 3, s_1_11, 10, 1, 0},
+/* 12 */ { 2, s_1_12, -1, 1, 0},
+/* 13 */ { 2, s_1_13, -1, 1, 0},
+/* 14 */ { 2, s_1_14, -1, 1, 0},
+/* 15 */ { 2, s_1_15, -1, 1, 0},
+/* 16 */ { 2, s_1_16, -1, 1, 0},
+/* 17 */ { 2, s_1_17, -1, 1, 0},
+/* 18 */ { 3, s_1_18, 17, 1, 0},
+/* 19 */ { 2, s_1_19, -1, 1, 0},
+/* 20 */ { 4, s_1_20, 19, 1, 0},
+/* 21 */ { 2, s_1_21, -1, 1, 0},
+/* 22 */ { 3, s_1_22, -1, 1, 0},
+/* 23 */ { 5, s_1_23, 22, 1, 0},
+/* 24 */ { 3, s_1_24, -1, 1, 0},
+/* 25 */ { 4, s_1_25, 24, 1, 0},
+/* 26 */ { 3, s_1_26, -1, 1, 0},
+/* 27 */ { 3, s_1_27, -1, 1, 0},
+/* 28 */ { 3, s_1_28, -1, 1, 0},
+/* 29 */ { 3, s_1_29, -1, 1, 0},
+/* 30 */ { 3, s_1_30, -1, 1, 0},
+/* 31 */ { 3, s_1_31, -1, 1, 0},
+/* 32 */ { 5, s_1_32, 31, 1, 0},
+/* 33 */ { 3, s_1_33, -1, 1, 0},
+/* 34 */ { 4, s_1_34, 33, 1, 0},
+/* 35 */ { 3, s_1_35, -1, 1, 0},
+/* 36 */ { 2, s_1_36, -1, 1, 0},
+/* 37 */ { 3, s_1_37, 36, 1, 0},
+/* 38 */ { 2, s_1_38, -1, 1, 0}
+};
+
+static const symbol s_2_0[3] = { 'i', 'c', 'a' };
+static const symbol s_2_1[7] = { 'l', 0xC3, 0xB3, 'g', 'i', 'c', 'a' };
+static const symbol s_2_2[4] = { 'e', 'n', 'c', 'a' };
+static const symbol s_2_3[3] = { 'a', 'd', 'a' };
+static const symbol s_2_4[5] = { 'a', 'n', 'c', 'i', 'a' };
+static const symbol s_2_5[5] = { 'e', 'n', 'c', 'i', 'a' };
+static const symbol s_2_6[6] = { 0xC3, 0xA8, 'n', 'c', 'i', 'a' };
+static const symbol s_2_7[5] = { 0xC3, 0xAD, 'c', 'i', 'a' };
+static const symbol s_2_8[5] = { 'l', 'o', 'g', 'i', 'a' };
+static const symbol s_2_9[4] = { 'i', 'n', 'i', 'a' };
+static const symbol s_2_10[6] = { 0xC3, 0xAD, 'i', 'n', 'i', 'a' };
+static const symbol s_2_11[4] = { 'e', 'r', 'i', 'a' };
+static const symbol s_2_12[5] = { 0xC3, 0xA0, 'r', 'i', 'a' };
+static const symbol s_2_13[7] = { 'a', 't', 0xC3, 0xB2, 'r', 'i', 'a' };
+static const symbol s_2_14[4] = { 'a', 'l', 'l', 'a' };
+static const symbol s_2_15[4] = { 'e', 'l', 'l', 'a' };
+static const symbol s_2_16[6] = { 0xC3, 0xAD, 'v', 'o', 'l', 'a' };
+static const symbol s_2_17[3] = { 'i', 'm', 'a' };
+static const symbol s_2_18[7] = { 0xC3, 0xAD, 's', 's', 'i', 'm', 'a' };
+static const symbol s_2_19[9] = { 'q', 'u', 0xC3, 0xAD, 's', 's', 'i', 'm', 'a' };
+static const symbol s_2_20[3] = { 'a', 'n', 'a' };
+static const symbol s_2_21[3] = { 'i', 'n', 'a' };
+static const symbol s_2_22[3] = { 'e', 'r', 'a' };
+static const symbol s_2_23[5] = { 's', 'f', 'e', 'r', 'a' };
+static const symbol s_2_24[3] = { 'o', 'r', 'a' };
+static const symbol s_2_25[4] = { 'd', 'o', 'r', 'a' };
+static const symbol s_2_26[5] = { 'a', 'd', 'o', 'r', 'a' };
+static const symbol s_2_27[5] = { 'a', 'd', 'u', 'r', 'a' };
+static const symbol s_2_28[3] = { 'e', 's', 'a' };
+static const symbol s_2_29[3] = { 'o', 's', 'a' };
+static const symbol s_2_30[4] = { 'a', 's', 's', 'a' };
+static const symbol s_2_31[4] = { 'e', 's', 's', 'a' };
+static const symbol s_2_32[4] = { 'i', 's', 's', 'a' };
+static const symbol s_2_33[3] = { 'e', 't', 'a' };
+static const symbol s_2_34[3] = { 'i', 't', 'a' };
+static const symbol s_2_35[3] = { 'o', 't', 'a' };
+static const symbol s_2_36[4] = { 'i', 's', 't', 'a' };
+static const symbol s_2_37[7] = { 'i', 'a', 'l', 'i', 's', 't', 'a' };
+static const symbol s_2_38[7] = { 'i', 'o', 'n', 'i', 's', 't', 'a' };
+static const symbol s_2_39[3] = { 'i', 'v', 'a' };
+static const symbol s_2_40[5] = { 'a', 't', 'i', 'v', 'a' };
+static const symbol s_2_41[4] = { 'n', 0xC3, 0xA7, 'a' };
+static const symbol s_2_42[6] = { 'l', 'o', 'g', 0xC3, 0xAD, 'a' };
+static const symbol s_2_43[2] = { 'i', 'c' };
+static const symbol s_2_44[6] = { 0xC3, 0xAD, 's', 't', 'i', 'c' };
+static const symbol s_2_45[3] = { 'e', 'n', 'c' };
+static const symbol s_2_46[3] = { 'e', 's', 'c' };
+static const symbol s_2_47[2] = { 'u', 'd' };
+static const symbol s_2_48[4] = { 'a', 't', 'g', 'e' };
+static const symbol s_2_49[3] = { 'b', 'l', 'e' };
+static const symbol s_2_50[4] = { 'a', 'b', 'l', 'e' };
+static const symbol s_2_51[4] = { 'i', 'b', 'l', 'e' };
+static const symbol s_2_52[4] = { 'i', 's', 'm', 'e' };
+static const symbol s_2_53[7] = { 'i', 'a', 'l', 'i', 's', 'm', 'e' };
+static const symbol s_2_54[7] = { 'i', 'o', 'n', 'i', 's', 'm', 'e' };
+static const symbol s_2_55[6] = { 'i', 'v', 'i', 's', 'm', 'e' };
+static const symbol s_2_56[4] = { 'a', 'i', 'r', 'e' };
+static const symbol s_2_57[4] = { 'i', 'c', 't', 'e' };
+static const symbol s_2_58[4] = { 'i', 's', 't', 'e' };
+static const symbol s_2_59[3] = { 'i', 'c', 'i' };
+static const symbol s_2_60[4] = { 0xC3, 0xAD, 'c', 'i' };
+static const symbol s_2_61[4] = { 'l', 'o', 'g', 'i' };
+static const symbol s_2_62[3] = { 'a', 'r', 'i' };
+static const symbol s_2_63[4] = { 't', 'o', 'r', 'i' };
+static const symbol s_2_64[2] = { 'a', 'l' };
+static const symbol s_2_65[2] = { 'i', 'l' };
+static const symbol s_2_66[3] = { 'a', 'l', 'l' };
+static const symbol s_2_67[3] = { 'e', 'l', 'l' };
+static const symbol s_2_68[5] = { 0xC3, 0xAD, 'v', 'o', 'l' };
+static const symbol s_2_69[4] = { 'i', 's', 'a', 'm' };
+static const symbol s_2_70[5] = { 'i', 's', 's', 'e', 'm' };
+static const symbol s_2_71[6] = { 0xC3, 0xAC, 's', 's', 'e', 'm' };
+static const symbol s_2_72[6] = { 0xC3, 0xAD, 's', 's', 'e', 'm' };
+static const symbol s_2_73[6] = { 0xC3, 0xAD, 's', 's', 'i', 'm' };
+static const symbol s_2_74[8] = { 'q', 'u', 0xC3, 0xAD, 's', 's', 'i', 'm' };
+static const symbol s_2_75[4] = { 'a', 'm', 'e', 'n' };
+static const symbol s_2_76[6] = { 0xC3, 0xAC, 's', 's', 'i', 'n' };
+static const symbol s_2_77[2] = { 'a', 'r' };
+static const symbol s_2_78[6] = { 'i', 'f', 'i', 'c', 'a', 'r' };
+static const symbol s_2_79[4] = { 'e', 'g', 'a', 'r' };
+static const symbol s_2_80[4] = { 'e', 'j', 'a', 'r' };
+static const symbol s_2_81[4] = { 'i', 't', 'a', 'r' };
+static const symbol s_2_82[5] = { 'i', 't', 'z', 'a', 'r' };
+static const symbol s_2_83[3] = { 'f', 'e', 'r' };
+static const symbol s_2_84[2] = { 'o', 'r' };
+static const symbol s_2_85[3] = { 'd', 'o', 'r' };
+static const symbol s_2_86[3] = { 'd', 'u', 'r' };
+static const symbol s_2_87[5] = { 'd', 'o', 'r', 'a', 's' };
+static const symbol s_2_88[3] = { 'i', 'c', 's' };
+static const symbol s_2_89[7] = { 'l', 0xC3, 0xB3, 'g', 'i', 'c', 's' };
+static const symbol s_2_90[3] = { 'u', 'd', 's' };
+static const symbol s_2_91[4] = { 'n', 'c', 'e', 's' };
+static const symbol s_2_92[4] = { 'a', 'd', 'e', 's' };
+static const symbol s_2_93[6] = { 'a', 'n', 'c', 'i', 'e', 's' };
+static const symbol s_2_94[6] = { 'e', 'n', 'c', 'i', 'e', 's' };
+static const symbol s_2_95[7] = { 0xC3, 0xA8, 'n', 'c', 'i', 'e', 's' };
+static const symbol s_2_96[6] = { 0xC3, 0xAD, 'c', 'i', 'e', 's' };
+static const symbol s_2_97[6] = { 'l', 'o', 'g', 'i', 'e', 's' };
+static const symbol s_2_98[5] = { 'i', 'n', 'i', 'e', 's' };
+static const symbol s_2_99[6] = { 0xC3, 0xAD, 'n', 'i', 'e', 's' };
+static const symbol s_2_100[5] = { 'e', 'r', 'i', 'e', 's' };
+static const symbol s_2_101[6] = { 0xC3, 0xA0, 'r', 'i', 'e', 's' };
+static const symbol s_2_102[8] = { 'a', 't', 0xC3, 0xB2, 'r', 'i', 'e', 's' };
+static const symbol s_2_103[4] = { 'b', 'l', 'e', 's' };
+static const symbol s_2_104[5] = { 'a', 'b', 'l', 'e', 's' };
+static const symbol s_2_105[5] = { 'i', 'b', 'l', 'e', 's' };
+static const symbol s_2_106[4] = { 'i', 'm', 'e', 's' };
+static const symbol s_2_107[8] = { 0xC3, 0xAD, 's', 's', 'i', 'm', 'e', 's' };
+static const symbol s_2_108[10] = { 'q', 'u', 0xC3, 0xAD, 's', 's', 'i', 'm', 'e', 's' };
+static const symbol s_2_109[6] = { 'f', 'o', 'r', 'm', 'e', 's' };
+static const symbol s_2_110[5] = { 'i', 's', 'm', 'e', 's' };
+static const symbol s_2_111[8] = { 'i', 'a', 'l', 'i', 's', 'm', 'e', 's' };
+static const symbol s_2_112[4] = { 'i', 'n', 'e', 's' };
+static const symbol s_2_113[4] = { 'e', 'r', 'e', 's' };
+static const symbol s_2_114[4] = { 'o', 'r', 'e', 's' };
+static const symbol s_2_115[5] = { 'd', 'o', 'r', 'e', 's' };
+static const symbol s_2_116[6] = { 'i', 'd', 'o', 'r', 'e', 's' };
+static const symbol s_2_117[5] = { 'd', 'u', 'r', 'e', 's' };
+static const symbol s_2_118[4] = { 'e', 's', 'e', 's' };
+static const symbol s_2_119[4] = { 'o', 's', 'e', 's' };
+static const symbol s_2_120[5] = { 'a', 's', 's', 'e', 's' };
+static const symbol s_2_121[5] = { 'i', 'c', 't', 'e', 's' };
+static const symbol s_2_122[4] = { 'i', 't', 'e', 's' };
+static const symbol s_2_123[4] = { 'o', 't', 'e', 's' };
+static const symbol s_2_124[5] = { 'i', 's', 't', 'e', 's' };
+static const symbol s_2_125[8] = { 'i', 'a', 'l', 'i', 's', 't', 'e', 's' };
+static const symbol s_2_126[8] = { 'i', 'o', 'n', 'i', 's', 't', 'e', 's' };
+static const symbol s_2_127[5] = { 'i', 'q', 'u', 'e', 's' };
+static const symbol s_2_128[9] = { 'l', 0xC3, 0xB3, 'g', 'i', 'q', 'u', 'e', 's' };
+static const symbol s_2_129[4] = { 'i', 'v', 'e', 's' };
+static const symbol s_2_130[6] = { 'a', 't', 'i', 'v', 'e', 's' };
+static const symbol s_2_131[7] = { 'l', 'o', 'g', 0xC3, 0xAD, 'e', 's' };
+static const symbol s_2_132[10] = { 'a', 'l', 'l', 'e', 'n', 'g', 0xC3, 0xBC, 'e', 's' };
+static const symbol s_2_133[4] = { 'i', 'c', 'i', 's' };
+static const symbol s_2_134[5] = { 0xC3, 0xAD, 'c', 'i', 's' };
+static const symbol s_2_135[5] = { 'l', 'o', 'g', 'i', 's' };
+static const symbol s_2_136[4] = { 'a', 'r', 'i', 's' };
+static const symbol s_2_137[5] = { 't', 'o', 'r', 'i', 's' };
+static const symbol s_2_138[2] = { 'l', 's' };
+static const symbol s_2_139[3] = { 'a', 'l', 's' };
+static const symbol s_2_140[4] = { 'e', 'l', 'l', 's' };
+static const symbol s_2_141[3] = { 'i', 'm', 's' };
+static const symbol s_2_142[7] = { 0xC3, 0xAD, 's', 's', 'i', 'm', 's' };
+static const symbol s_2_143[9] = { 'q', 'u', 0xC3, 0xAD, 's', 's', 'i', 'm', 's' };
+static const symbol s_2_144[4] = { 'i', 'o', 'n', 's' };
+static const symbol s_2_145[5] = { 'c', 'i', 'o', 'n', 's' };
+static const symbol s_2_146[6] = { 'a', 'c', 'i', 'o', 'n', 's' };
+static const symbol s_2_147[4] = { 'e', 's', 'o', 's' };
+static const symbol s_2_148[4] = { 'o', 's', 'o', 's' };
+static const symbol s_2_149[5] = { 'a', 's', 's', 'o', 's' };
+static const symbol s_2_150[5] = { 'i', 's', 's', 'o', 's' };
+static const symbol s_2_151[3] = { 'e', 'r', 's' };
+static const symbol s_2_152[3] = { 'o', 'r', 's' };
+static const symbol s_2_153[4] = { 'd', 'o', 'r', 's' };
+static const symbol s_2_154[5] = { 'a', 'd', 'o', 'r', 's' };
+static const symbol s_2_155[5] = { 'i', 'd', 'o', 'r', 's' };
+static const symbol s_2_156[3] = { 'a', 't', 's' };
+static const symbol s_2_157[5] = { 'i', 't', 'a', 't', 's' };
+static const symbol s_2_158[8] = { 'b', 'i', 'l', 'i', 't', 'a', 't', 's' };
+static const symbol s_2_159[7] = { 'i', 'v', 'i', 't', 'a', 't', 's' };
+static const symbol s_2_160[9] = { 'a', 't', 'i', 'v', 'i', 't', 'a', 't', 's' };
+static const symbol s_2_161[6] = { 0xC3, 0xAF, 't', 'a', 't', 's' };
+static const symbol s_2_162[3] = { 'e', 't', 's' };
+static const symbol s_2_163[4] = { 'a', 'n', 't', 's' };
+static const symbol s_2_164[4] = { 'e', 'n', 't', 's' };
+static const symbol s_2_165[5] = { 'm', 'e', 'n', 't', 's' };
+static const symbol s_2_166[6] = { 'a', 'm', 'e', 'n', 't', 's' };
+static const symbol s_2_167[3] = { 'o', 't', 's' };
+static const symbol s_2_168[3] = { 'u', 't', 's' };
+static const symbol s_2_169[3] = { 'i', 'u', 's' };
+static const symbol s_2_170[5] = { 't', 'r', 'i', 'u', 's' };
+static const symbol s_2_171[5] = { 'a', 't', 'i', 'u', 's' };
+static const symbol s_2_172[3] = { 0xC3, 0xA8, 's' };
+static const symbol s_2_173[3] = { 0xC3, 0xA9, 's' };
+static const symbol s_2_174[3] = { 0xC3, 0xAD, 's' };
+static const symbol s_2_175[4] = { 'd', 0xC3, 0xAD, 's' };
+static const symbol s_2_176[3] = { 0xC3, 0xB3, 's' };
+static const symbol s_2_177[4] = { 'i', 't', 'a', 't' };
+static const symbol s_2_178[7] = { 'b', 'i', 'l', 'i', 't', 'a', 't' };
+static const symbol s_2_179[6] = { 'i', 'v', 'i', 't', 'a', 't' };
+static const symbol s_2_180[8] = { 'a', 't', 'i', 'v', 'i', 't', 'a', 't' };
+static const symbol s_2_181[5] = { 0xC3, 0xAF, 't', 'a', 't' };
+static const symbol s_2_182[2] = { 'e', 't' };
+static const symbol s_2_183[3] = { 'a', 'n', 't' };
+static const symbol s_2_184[3] = { 'e', 'n', 't' };
+static const symbol s_2_185[4] = { 'i', 'e', 'n', 't' };
+static const symbol s_2_186[4] = { 'm', 'e', 'n', 't' };
+static const symbol s_2_187[5] = { 'a', 'm', 'e', 'n', 't' };
+static const symbol s_2_188[7] = { 'i', 's', 'a', 'm', 'e', 'n', 't' };
+static const symbol s_2_189[2] = { 'o', 't' };
+static const symbol s_2_190[5] = { 'i', 's', 's', 'e', 'u' };
+static const symbol s_2_191[6] = { 0xC3, 0xAC, 's', 's', 'e', 'u' };
+static const symbol s_2_192[6] = { 0xC3, 0xAD, 's', 's', 'e', 'u' };
+static const symbol s_2_193[4] = { 't', 'r', 'i', 'u' };
+static const symbol s_2_194[6] = { 0xC3, 0xAD, 's', 's', 'i', 'u' };
+static const symbol s_2_195[4] = { 'a', 't', 'i', 'u' };
+static const symbol s_2_196[2] = { 0xC3, 0xB3 };
+static const symbol s_2_197[3] = { 'i', 0xC3, 0xB3 };
+static const symbol s_2_198[4] = { 'c', 'i', 0xC3, 0xB3 };
+static const symbol s_2_199[5] = { 'a', 'c', 'i', 0xC3, 0xB3 };
+
+static const struct among a_2[200] =
+{
+/*  0 */ { 3, s_2_0, -1, 4, 0},
+/*  1 */ { 7, s_2_1, 0, 3, 0},
+/*  2 */ { 4, s_2_2, -1, 1, 0},
+/*  3 */ { 3, s_2_3, -1, 2, 0},
+/*  4 */ { 5, s_2_4, -1, 1, 0},
+/*  5 */ { 5, s_2_5, -1, 1, 0},
+/*  6 */ { 6, s_2_6, -1, 1, 0},
+/*  7 */ { 5, s_2_7, -1, 1, 0},
+/*  8 */ { 5, s_2_8, -1, 3, 0},
+/*  9 */ { 4, s_2_9, -1, 1, 0},
+/* 10 */ { 6, s_2_10, 9, 1, 0},
+/* 11 */ { 4, s_2_11, -1, 1, 0},
+/* 12 */ { 5, s_2_12, -1, 1, 0},
+/* 13 */ { 7, s_2_13, -1, 1, 0},
+/* 14 */ { 4, s_2_14, -1, 1, 0},
+/* 15 */ { 4, s_2_15, -1, 1, 0},
+/* 16 */ { 6, s_2_16, -1, 1, 0},
+/* 17 */ { 3, s_2_17, -1, 1, 0},
+/* 18 */ { 7, s_2_18, 17, 1, 0},
+/* 19 */ { 9, s_2_19, 18, 5, 0},
+/* 20 */ { 3, s_2_20, -1, 1, 0},
+/* 21 */ { 3, s_2_21, -1, 1, 0},
+/* 22 */ { 3, s_2_22, -1, 1, 0},
+/* 23 */ { 5, s_2_23, 22, 1, 0},
+/* 24 */ { 3, s_2_24, -1, 1, 0},
+/* 25 */ { 4, s_2_25, 24, 1, 0},
+/* 26 */ { 5, s_2_26, 25, 1, 0},
+/* 27 */ { 5, s_2_27, -1, 1, 0},
+/* 28 */ { 3, s_2_28, -1, 1, 0},
+/* 29 */ { 3, s_2_29, -1, 1, 0},
+/* 30 */ { 4, s_2_30, -1, 1, 0},
+/* 31 */ { 4, s_2_31, -1, 1, 0},
+/* 32 */ { 4, s_2_32, -1, 1, 0},
+/* 33 */ { 3, s_2_33, -1, 1, 0},
+/* 34 */ { 3, s_2_34, -1, 1, 0},
+/* 35 */ { 3, s_2_35, -1, 1, 0},
+/* 36 */ { 4, s_2_36, -1, 1, 0},
+/* 37 */ { 7, s_2_37, 36, 1, 0},
+/* 38 */ { 7, s_2_38, 36, 1, 0},
+/* 39 */ { 3, s_2_39, -1, 1, 0},
+/* 40 */ { 5, s_2_40, 39, 1, 0},
+/* 41 */ { 4, s_2_41, -1, 1, 0},
+/* 42 */ { 6, s_2_42, -1, 3, 0},
+/* 43 */ { 2, s_2_43, -1, 4, 0},
+/* 44 */ { 6, s_2_44, 43, 1, 0},
+/* 45 */ { 3, s_2_45, -1, 1, 0},
+/* 46 */ { 3, s_2_46, -1, 1, 0},
+/* 47 */ { 2, s_2_47, -1, 1, 0},
+/* 48 */ { 4, s_2_48, -1, 1, 0},
+/* 49 */ { 3, s_2_49, -1, 1, 0},
+/* 50 */ { 4, s_2_50, 49, 1, 0},
+/* 51 */ { 4, s_2_51, 49, 1, 0},
+/* 52 */ { 4, s_2_52, -1, 1, 0},
+/* 53 */ { 7, s_2_53, 52, 1, 0},
+/* 54 */ { 7, s_2_54, 52, 1, 0},
+/* 55 */ { 6, s_2_55, 52, 1, 0},
+/* 56 */ { 4, s_2_56, -1, 1, 0},
+/* 57 */ { 4, s_2_57, -1, 1, 0},
+/* 58 */ { 4, s_2_58, -1, 1, 0},
+/* 59 */ { 3, s_2_59, -1, 1, 0},
+/* 60 */ { 4, s_2_60, -1, 1, 0},
+/* 61 */ { 4, s_2_61, -1, 3, 0},
+/* 62 */ { 3, s_2_62, -1, 1, 0},
+/* 63 */ { 4, s_2_63, -1, 1, 0},
+/* 64 */ { 2, s_2_64, -1, 1, 0},
+/* 65 */ { 2, s_2_65, -1, 1, 0},
+/* 66 */ { 3, s_2_66, -1, 1, 0},
+/* 67 */ { 3, s_2_67, -1, 1, 0},
+/* 68 */ { 5, s_2_68, -1, 1, 0},
+/* 69 */ { 4, s_2_69, -1, 1, 0},
+/* 70 */ { 5, s_2_70, -1, 1, 0},
+/* 71 */ { 6, s_2_71, -1, 1, 0},
+/* 72 */ { 6, s_2_72, -1, 1, 0},
+/* 73 */ { 6, s_2_73, -1, 1, 0},
+/* 74 */ { 8, s_2_74, 73, 5, 0},
+/* 75 */ { 4, s_2_75, -1, 1, 0},
+/* 76 */ { 6, s_2_76, -1, 1, 0},
+/* 77 */ { 2, s_2_77, -1, 1, 0},
+/* 78 */ { 6, s_2_78, 77, 1, 0},
+/* 79 */ { 4, s_2_79, 77, 1, 0},
+/* 80 */ { 4, s_2_80, 77, 1, 0},
+/* 81 */ { 4, s_2_81, 77, 1, 0},
+/* 82 */ { 5, s_2_82, 77, 1, 0},
+/* 83 */ { 3, s_2_83, -1, 1, 0},
+/* 84 */ { 2, s_2_84, -1, 1, 0},
+/* 85 */ { 3, s_2_85, 84, 1, 0},
+/* 86 */ { 3, s_2_86, -1, 1, 0},
+/* 87 */ { 5, s_2_87, -1, 1, 0},
+/* 88 */ { 3, s_2_88, -1, 4, 0},
+/* 89 */ { 7, s_2_89, 88, 3, 0},
+/* 90 */ { 3, s_2_90, -1, 1, 0},
+/* 91 */ { 4, s_2_91, -1, 1, 0},
+/* 92 */ { 4, s_2_92, -1, 2, 0},
+/* 93 */ { 6, s_2_93, -1, 1, 0},
+/* 94 */ { 6, s_2_94, -1, 1, 0},
+/* 95 */ { 7, s_2_95, -1, 1, 0},
+/* 96 */ { 6, s_2_96, -1, 1, 0},
+/* 97 */ { 6, s_2_97, -1, 3, 0},
+/* 98 */ { 5, s_2_98, -1, 1, 0},
+/* 99 */ { 6, s_2_99, -1, 1, 0},
+/*100 */ { 5, s_2_100, -1, 1, 0},
+/*101 */ { 6, s_2_101, -1, 1, 0},
+/*102 */ { 8, s_2_102, -1, 1, 0},
+/*103 */ { 4, s_2_103, -1, 1, 0},
+/*104 */ { 5, s_2_104, 103, 1, 0},
+/*105 */ { 5, s_2_105, 103, 1, 0},
+/*106 */ { 4, s_2_106, -1, 1, 0},
+/*107 */ { 8, s_2_107, 106, 1, 0},
+/*108 */ { 10, s_2_108, 107, 5, 0},
+/*109 */ { 6, s_2_109, -1, 1, 0},
+/*110 */ { 5, s_2_110, -1, 1, 0},
+/*111 */ { 8, s_2_111, 110, 1, 0},
+/*112 */ { 4, s_2_112, -1, 1, 0},
+/*113 */ { 4, s_2_113, -1, 1, 0},
+/*114 */ { 4, s_2_114, -1, 1, 0},
+/*115 */ { 5, s_2_115, 114, 1, 0},
+/*116 */ { 6, s_2_116, 115, 1, 0},
+/*117 */ { 5, s_2_117, -1, 1, 0},
+/*118 */ { 4, s_2_118, -1, 1, 0},
+/*119 */ { 4, s_2_119, -1, 1, 0},
+/*120 */ { 5, s_2_120, -1, 1, 0},
+/*121 */ { 5, s_2_121, -1, 1, 0},
+/*122 */ { 4, s_2_122, -1, 1, 0},
+/*123 */ { 4, s_2_123, -1, 1, 0},
+/*124 */ { 5, s_2_124, -1, 1, 0},
+/*125 */ { 8, s_2_125, 124, 1, 0},
+/*126 */ { 8, s_2_126, 124, 1, 0},
+/*127 */ { 5, s_2_127, -1, 4, 0},
+/*128 */ { 9, s_2_128, 127, 3, 0},
+/*129 */ { 4, s_2_129, -1, 1, 0},
+/*130 */ { 6, s_2_130, 129, 1, 0},
+/*131 */ { 7, s_2_131, -1, 3, 0},
+/*132 */ { 10, s_2_132, -1, 1, 0},
+/*133 */ { 4, s_2_133, -1, 1, 0},
+/*134 */ { 5, s_2_134, -1, 1, 0},
+/*135 */ { 5, s_2_135, -1, 3, 0},
+/*136 */ { 4, s_2_136, -1, 1, 0},
+/*137 */ { 5, s_2_137, -1, 1, 0},
+/*138 */ { 2, s_2_138, -1, 1, 0},
+/*139 */ { 3, s_2_139, 138, 1, 0},
+/*140 */ { 4, s_2_140, 138, 1, 0},
+/*141 */ { 3, s_2_141, -1, 1, 0},
+/*142 */ { 7, s_2_142, 141, 1, 0},
+/*143 */ { 9, s_2_143, 142, 5, 0},
+/*144 */ { 4, s_2_144, -1, 1, 0},
+/*145 */ { 5, s_2_145, 144, 1, 0},
+/*146 */ { 6, s_2_146, 145, 2, 0},
+/*147 */ { 4, s_2_147, -1, 1, 0},
+/*148 */ { 4, s_2_148, -1, 1, 0},
+/*149 */ { 5, s_2_149, -1, 1, 0},
+/*150 */ { 5, s_2_150, -1, 1, 0},
+/*151 */ { 3, s_2_151, -1, 1, 0},
+/*152 */ { 3, s_2_152, -1, 1, 0},
+/*153 */ { 4, s_2_153, 152, 1, 0},
+/*154 */ { 5, s_2_154, 153, 1, 0},
+/*155 */ { 5, s_2_155, 153, 1, 0},
+/*156 */ { 3, s_2_156, -1, 1, 0},
+/*157 */ { 5, s_2_157, 156, 1, 0},
+/*158 */ { 8, s_2_158, 157, 1, 0},
+/*159 */ { 7, s_2_159, 157, 1, 0},
+/*160 */ { 9, s_2_160, 159, 1, 0},
+/*161 */ { 6, s_2_161, 156, 1, 0},
+/*162 */ { 3, s_2_162, -1, 1, 0},
+/*163 */ { 4, s_2_163, -1, 1, 0},
+/*164 */ { 4, s_2_164, -1, 1, 0},
+/*165 */ { 5, s_2_165, 164, 1, 0},
+/*166 */ { 6, s_2_166, 165, 1, 0},
+/*167 */ { 3, s_2_167, -1, 1, 0},
+/*168 */ { 3, s_2_168, -1, 1, 0},
+/*169 */ { 3, s_2_169, -1, 1, 0},
+/*170 */ { 5, s_2_170, 169, 1, 0},
+/*171 */ { 5, s_2_171, 169, 1, 0},
+/*172 */ { 3, s_2_172, -1, 1, 0},
+/*173 */ { 3, s_2_173, -1, 1, 0},
+/*174 */ { 3, s_2_174, -1, 1, 0},
+/*175 */ { 4, s_2_175, 174, 1, 0},
+/*176 */ { 3, s_2_176, -1, 1, 0},
+/*177 */ { 4, s_2_177, -1, 1, 0},
+/*178 */ { 7, s_2_178, 177, 1, 0},
+/*179 */ { 6, s_2_179, 177, 1, 0},
+/*180 */ { 8, s_2_180, 179, 1, 0},
+/*181 */ { 5, s_2_181, -1, 1, 0},
+/*182 */ { 2, s_2_182, -1, 1, 0},
+/*183 */ { 3, s_2_183, -1, 1, 0},
+/*184 */ { 3, s_2_184, -1, 1, 0},
+/*185 */ { 4, s_2_185, 184, 1, 0},
+/*186 */ { 4, s_2_186, 184, 1, 0},
+/*187 */ { 5, s_2_187, 186, 1, 0},
+/*188 */ { 7, s_2_188, 187, 1, 0},
+/*189 */ { 2, s_2_189, -1, 1, 0},
+/*190 */ { 5, s_2_190, -1, 1, 0},
+/*191 */ { 6, s_2_191, -1, 1, 0},
+/*192 */ { 6, s_2_192, -1, 1, 0},
+/*193 */ { 4, s_2_193, -1, 1, 0},
+/*194 */ { 6, s_2_194, -1, 1, 0},
+/*195 */ { 4, s_2_195, -1, 1, 0},
+/*196 */ { 2, s_2_196, -1, 1, 0},
+/*197 */ { 3, s_2_197, 196, 1, 0},
+/*198 */ { 4, s_2_198, 197, 1, 0},
+/*199 */ { 5, s_2_199, 198, 1, 0}
+};
+
+static const symbol s_3_0[3] = { 'a', 'b', 'a' };
+static const symbol s_3_1[4] = { 'e', 's', 'c', 'a' };
+static const symbol s_3_2[4] = { 'i', 's', 'c', 'a' };
+static const symbol s_3_3[5] = { 0xC3, 0xAF, 's', 'c', 'a' };
+static const symbol s_3_4[3] = { 'a', 'd', 'a' };
+static const symbol s_3_5[3] = { 'i', 'd', 'a' };
+static const symbol s_3_6[3] = { 'u', 'd', 'a' };
+static const symbol s_3_7[4] = { 0xC3, 0xAF, 'd', 'a' };
+static const symbol s_3_8[2] = { 'i', 'a' };
+static const symbol s_3_9[4] = { 'a', 'r', 'i', 'a' };
+static const symbol s_3_10[4] = { 'i', 'r', 'i', 'a' };
+static const symbol s_3_11[3] = { 'a', 'r', 'a' };
+static const symbol s_3_12[4] = { 'i', 'e', 'r', 'a' };
+static const symbol s_3_13[3] = { 'i', 'r', 'a' };
+static const symbol s_3_14[5] = { 'a', 'd', 'o', 'r', 'a' };
+static const symbol s_3_15[4] = { 0xC3, 0xAF, 'r', 'a' };
+static const symbol s_3_16[3] = { 'a', 'v', 'a' };
+static const symbol s_3_17[3] = { 'i', 'x', 'a' };
+static const symbol s_3_18[4] = { 'i', 't', 'z', 'a' };
+static const symbol s_3_19[3] = { 0xC3, 0xAD, 'a' };
+static const symbol s_3_20[5] = { 'a', 'r', 0xC3, 0xAD, 'a' };
+static const symbol s_3_21[5] = { 'e', 'r', 0xC3, 0xAD, 'a' };
+static const symbol s_3_22[5] = { 'i', 'r', 0xC3, 0xAD, 'a' };
+static const symbol s_3_23[3] = { 0xC3, 0xAF, 'a' };
+static const symbol s_3_24[3] = { 'i', 's', 'c' };
+static const symbol s_3_25[4] = { 0xC3, 0xAF, 's', 'c' };
+static const symbol s_3_26[2] = { 'a', 'd' };
+static const symbol s_3_27[2] = { 'e', 'd' };
+static const symbol s_3_28[2] = { 'i', 'd' };
+static const symbol s_3_29[2] = { 'i', 'e' };
+static const symbol s_3_30[2] = { 'r', 'e' };
+static const symbol s_3_31[3] = { 'd', 'r', 'e' };
+static const symbol s_3_32[3] = { 'a', 's', 'e' };
+static const symbol s_3_33[4] = { 'i', 'e', 's', 'e' };
+static const symbol s_3_34[4] = { 'a', 's', 't', 'e' };
+static const symbol s_3_35[4] = { 'i', 's', 't', 'e' };
+static const symbol s_3_36[2] = { 'i', 'i' };
+static const symbol s_3_37[3] = { 'i', 'n', 'i' };
+static const symbol s_3_38[5] = { 'e', 's', 'q', 'u', 'i' };
+static const symbol s_3_39[4] = { 'e', 'i', 'x', 'i' };
+static const symbol s_3_40[4] = { 'i', 't', 'z', 'i' };
+static const symbol s_3_41[2] = { 'a', 'm' };
+static const symbol s_3_42[2] = { 'e', 'm' };
+static const symbol s_3_43[4] = { 'a', 'r', 'e', 'm' };
+static const symbol s_3_44[4] = { 'i', 'r', 'e', 'm' };
+static const symbol s_3_45[5] = { 0xC3, 0xA0, 'r', 'e', 'm' };
+static const symbol s_3_46[5] = { 0xC3, 0xAD, 'r', 'e', 'm' };
+static const symbol s_3_47[6] = { 0xC3, 0xA0, 's', 's', 'e', 'm' };
+static const symbol s_3_48[6] = { 0xC3, 0xA9, 's', 's', 'e', 'm' };
+static const symbol s_3_49[5] = { 'i', 'g', 'u', 'e', 'm' };
+static const symbol s_3_50[6] = { 0xC3, 0xAF, 'g', 'u', 'e', 'm' };
+static const symbol s_3_51[4] = { 'a', 'v', 'e', 'm' };
+static const symbol s_3_52[5] = { 0xC3, 0xA0, 'v', 'e', 'm' };
+static const symbol s_3_53[5] = { 0xC3, 0xA1, 'v', 'e', 'm' };
+static const symbol s_3_54[6] = { 'i', 'r', 0xC3, 0xAC, 'e', 'm' };
+static const symbol s_3_55[4] = { 0xC3, 0xAD, 'e', 'm' };
+static const symbol s_3_56[6] = { 'a', 'r', 0xC3, 0xAD, 'e', 'm' };
+static const symbol s_3_57[6] = { 'i', 'r', 0xC3, 0xAD, 'e', 'm' };
+static const symbol s_3_58[5] = { 'a', 's', 's', 'i', 'm' };
+static const symbol s_3_59[5] = { 'e', 's', 's', 'i', 'm' };
+static const symbol s_3_60[5] = { 'i', 's', 's', 'i', 'm' };
+static const symbol s_3_61[6] = { 0xC3, 0xA0, 's', 's', 'i', 'm' };
+static const symbol s_3_62[6] = { 0xC3, 0xA8, 's', 's', 'i', 'm' };
+static const symbol s_3_63[6] = { 0xC3, 0xA9, 's', 's', 'i', 'm' };
+static const symbol s_3_64[6] = { 0xC3, 0xAD, 's', 's', 'i', 'm' };
+static const symbol s_3_65[3] = { 0xC3, 0xAF, 'm' };
+static const symbol s_3_66[2] = { 'a', 'n' };
+static const symbol s_3_67[4] = { 'a', 'b', 'a', 'n' };
+static const symbol s_3_68[5] = { 'a', 'r', 'i', 'a', 'n' };
+static const symbol s_3_69[4] = { 'a', 'r', 'a', 'n' };
+static const symbol s_3_70[5] = { 'i', 'e', 'r', 'a', 'n' };
+static const symbol s_3_71[4] = { 'i', 'r', 'a', 'n' };
+static const symbol s_3_72[4] = { 0xC3, 0xAD, 'a', 'n' };
+static const symbol s_3_73[6] = { 'a', 'r', 0xC3, 0xAD, 'a', 'n' };
+static const symbol s_3_74[6] = { 'e', 'r', 0xC3, 0xAD, 'a', 'n' };
+static const symbol s_3_75[6] = { 'i', 'r', 0xC3, 0xAD, 'a', 'n' };
+static const symbol s_3_76[2] = { 'e', 'n' };
+static const symbol s_3_77[3] = { 'i', 'e', 'n' };
+static const symbol s_3_78[5] = { 'a', 'r', 'i', 'e', 'n' };
+static const symbol s_3_79[5] = { 'i', 'r', 'i', 'e', 'n' };
+static const symbol s_3_80[4] = { 'a', 'r', 'e', 'n' };
+static const symbol s_3_81[4] = { 'e', 'r', 'e', 'n' };
+static const symbol s_3_82[4] = { 'i', 'r', 'e', 'n' };
+static const symbol s_3_83[5] = { 0xC3, 0xA0, 'r', 'e', 'n' };
+static const symbol s_3_84[5] = { 0xC3, 0xAF, 'r', 'e', 'n' };
+static const symbol s_3_85[4] = { 'a', 's', 'e', 'n' };
+static const symbol s_3_86[5] = { 'i', 'e', 's', 'e', 'n' };
+static const symbol s_3_87[5] = { 'a', 's', 's', 'e', 'n' };
+static const symbol s_3_88[5] = { 'e', 's', 's', 'e', 'n' };
+static const symbol s_3_89[5] = { 'i', 's', 's', 'e', 'n' };
+static const symbol s_3_90[6] = { 0xC3, 0xA9, 's', 's', 'e', 'n' };
+static const symbol s_3_91[6] = { 0xC3, 0xAF, 's', 's', 'e', 'n' };
+static const symbol s_3_92[6] = { 'e', 's', 'q', 'u', 'e', 'n' };
+static const symbol s_3_93[6] = { 'i', 's', 'q', 'u', 'e', 'n' };
+static const symbol s_3_94[7] = { 0xC3, 0xAF, 's', 'q', 'u', 'e', 'n' };
+static const symbol s_3_95[4] = { 'a', 'v', 'e', 'n' };
+static const symbol s_3_96[4] = { 'i', 'x', 'e', 'n' };
+static const symbol s_3_97[5] = { 'e', 'i', 'x', 'e', 'n' };
+static const symbol s_3_98[5] = { 0xC3, 0xAF, 'x', 'e', 'n' };
+static const symbol s_3_99[4] = { 0xC3, 0xAF, 'e', 'n' };
+static const symbol s_3_100[2] = { 'i', 'n' };
+static const symbol s_3_101[4] = { 'i', 'n', 'i', 'n' };
+static const symbol s_3_102[3] = { 's', 'i', 'n' };
+static const symbol s_3_103[4] = { 'i', 's', 'i', 'n' };
+static const symbol s_3_104[5] = { 'a', 's', 's', 'i', 'n' };
+static const symbol s_3_105[5] = { 'e', 's', 's', 'i', 'n' };
+static const symbol s_3_106[5] = { 'i', 's', 's', 'i', 'n' };
+static const symbol s_3_107[6] = { 0xC3, 0xAF, 's', 's', 'i', 'n' };
+static const symbol s_3_108[6] = { 'e', 's', 'q', 'u', 'i', 'n' };
+static const symbol s_3_109[5] = { 'e', 'i', 'x', 'i', 'n' };
+static const symbol s_3_110[4] = { 'a', 'r', 'o', 'n' };
+static const symbol s_3_111[5] = { 'i', 'e', 'r', 'o', 'n' };
+static const symbol s_3_112[5] = { 'a', 'r', 0xC3, 0xA1, 'n' };
+static const symbol s_3_113[5] = { 'e', 'r', 0xC3, 0xA1, 'n' };
+static const symbol s_3_114[5] = { 'i', 'r', 0xC3, 0xA1, 'n' };
+static const symbol s_3_115[4] = { 'i', 0xC3, 0xAF, 'n' };
+static const symbol s_3_116[3] = { 'a', 'd', 'o' };
+static const symbol s_3_117[3] = { 'i', 'd', 'o' };
+static const symbol s_3_118[4] = { 'a', 'n', 'd', 'o' };
+static const symbol s_3_119[5] = { 'i', 'e', 'n', 'd', 'o' };
+static const symbol s_3_120[2] = { 'i', 'o' };
+static const symbol s_3_121[3] = { 'i', 'x', 'o' };
+static const symbol s_3_122[4] = { 'e', 'i', 'x', 'o' };
+static const symbol s_3_123[4] = { 0xC3, 0xAF, 'x', 'o' };
+static const symbol s_3_124[4] = { 'i', 't', 'z', 'o' };
+static const symbol s_3_125[2] = { 'a', 'r' };
+static const symbol s_3_126[4] = { 't', 'z', 'a', 'r' };
+static const symbol s_3_127[2] = { 'e', 'r' };
+static const symbol s_3_128[5] = { 'e', 'i', 'x', 'e', 'r' };
+static const symbol s_3_129[2] = { 'i', 'r' };
+static const symbol s_3_130[4] = { 'a', 'd', 'o', 'r' };
+static const symbol s_3_131[2] = { 'a', 's' };
+static const symbol s_3_132[4] = { 'a', 'b', 'a', 's' };
+static const symbol s_3_133[4] = { 'a', 'd', 'a', 's' };
+static const symbol s_3_134[4] = { 'i', 'd', 'a', 's' };
+static const symbol s_3_135[4] = { 'a', 'r', 'a', 's' };
+static const symbol s_3_136[5] = { 'i', 'e', 'r', 'a', 's' };
+static const symbol s_3_137[4] = { 0xC3, 0xAD, 'a', 's' };
+static const symbol s_3_138[6] = { 'a', 'r', 0xC3, 0xAD, 'a', 's' };
+static const symbol s_3_139[6] = { 'e', 'r', 0xC3, 0xAD, 'a', 's' };
+static const symbol s_3_140[6] = { 'i', 'r', 0xC3, 0xAD, 'a', 's' };
+static const symbol s_3_141[3] = { 'i', 'd', 's' };
+static const symbol s_3_142[2] = { 'e', 's' };
+static const symbol s_3_143[4] = { 'a', 'd', 'e', 's' };
+static const symbol s_3_144[4] = { 'i', 'd', 'e', 's' };
+static const symbol s_3_145[4] = { 'u', 'd', 'e', 's' };
+static const symbol s_3_146[5] = { 0xC3, 0xAF, 'd', 'e', 's' };
+static const symbol s_3_147[5] = { 'a', 't', 'g', 'e', 's' };
+static const symbol s_3_148[3] = { 'i', 'e', 's' };
+static const symbol s_3_149[5] = { 'a', 'r', 'i', 'e', 's' };
+static const symbol s_3_150[5] = { 'i', 'r', 'i', 'e', 's' };
+static const symbol s_3_151[4] = { 'a', 'r', 'e', 's' };
+static const symbol s_3_152[4] = { 'i', 'r', 'e', 's' };
+static const symbol s_3_153[6] = { 'a', 'd', 'o', 'r', 'e', 's' };
+static const symbol s_3_154[5] = { 0xC3, 0xAF, 'r', 'e', 's' };
+static const symbol s_3_155[4] = { 'a', 's', 'e', 's' };
+static const symbol s_3_156[5] = { 'i', 'e', 's', 'e', 's' };
+static const symbol s_3_157[5] = { 'a', 's', 's', 'e', 's' };
+static const symbol s_3_158[5] = { 'e', 's', 's', 'e', 's' };
+static const symbol s_3_159[5] = { 'i', 's', 's', 'e', 's' };
+static const symbol s_3_160[6] = { 0xC3, 0xAF, 's', 's', 'e', 's' };
+static const symbol s_3_161[4] = { 'q', 'u', 'e', 's' };
+static const symbol s_3_162[6] = { 'e', 's', 'q', 'u', 'e', 's' };
+static const symbol s_3_163[7] = { 0xC3, 0xAF, 's', 'q', 'u', 'e', 's' };
+static const symbol s_3_164[4] = { 'a', 'v', 'e', 's' };
+static const symbol s_3_165[4] = { 'i', 'x', 'e', 's' };
+static const symbol s_3_166[5] = { 'e', 'i', 'x', 'e', 's' };
+static const symbol s_3_167[5] = { 0xC3, 0xAF, 'x', 'e', 's' };
+static const symbol s_3_168[4] = { 0xC3, 0xAF, 'e', 's' };
+static const symbol s_3_169[5] = { 'a', 'b', 'a', 'i', 's' };
+static const symbol s_3_170[5] = { 'a', 'r', 'a', 'i', 's' };
+static const symbol s_3_171[6] = { 'i', 'e', 'r', 'a', 'i', 's' };
+static const symbol s_3_172[5] = { 0xC3, 0xAD, 'a', 'i', 's' };
+static const symbol s_3_173[7] = { 'a', 'r', 0xC3, 0xAD, 'a', 'i', 's' };
+static const symbol s_3_174[7] = { 'e', 'r', 0xC3, 0xAD, 'a', 'i', 's' };
+static const symbol s_3_175[7] = { 'i', 'r', 0xC3, 0xAD, 'a', 'i', 's' };
+static const symbol s_3_176[5] = { 'a', 's', 'e', 'i', 's' };
+static const symbol s_3_177[6] = { 'i', 'e', 's', 'e', 'i', 's' };
+static const symbol s_3_178[6] = { 'a', 's', 't', 'e', 'i', 's' };
+static const symbol s_3_179[6] = { 'i', 's', 't', 'e', 'i', 's' };
+static const symbol s_3_180[4] = { 'i', 'n', 'i', 's' };
+static const symbol s_3_181[3] = { 's', 'i', 's' };
+static const symbol s_3_182[4] = { 'i', 's', 'i', 's' };
+static const symbol s_3_183[5] = { 'a', 's', 's', 'i', 's' };
+static const symbol s_3_184[5] = { 'e', 's', 's', 'i', 's' };
+static const symbol s_3_185[5] = { 'i', 's', 's', 'i', 's' };
+static const symbol s_3_186[6] = { 0xC3, 0xAF, 's', 's', 'i', 's' };
+static const symbol s_3_187[6] = { 'e', 's', 'q', 'u', 'i', 's' };
+static const symbol s_3_188[5] = { 'e', 'i', 'x', 'i', 's' };
+static const symbol s_3_189[5] = { 'i', 't', 'z', 'i', 's' };
+static const symbol s_3_190[4] = { 0xC3, 0xA1, 'i', 's' };
+static const symbol s_3_191[6] = { 'a', 'r', 0xC3, 0xA9, 'i', 's' };
+static const symbol s_3_192[6] = { 'e', 'r', 0xC3, 0xA9, 'i', 's' };
+static const symbol s_3_193[6] = { 'i', 'r', 0xC3, 0xA9, 'i', 's' };
+static const symbol s_3_194[3] = { 'a', 'm', 's' };
+static const symbol s_3_195[4] = { 'a', 'd', 'o', 's' };
+static const symbol s_3_196[4] = { 'i', 'd', 'o', 's' };
+static const symbol s_3_197[4] = { 'a', 'm', 'o', 's' };
+static const symbol s_3_198[7] = { 0xC3, 0xA1, 'b', 'a', 'm', 'o', 's' };
+static const symbol s_3_199[7] = { 0xC3, 0xA1, 'r', 'a', 'm', 'o', 's' };
+static const symbol s_3_200[8] = { 'i', 0xC3, 0xA9, 'r', 'a', 'm', 'o', 's' };
+static const symbol s_3_201[6] = { 0xC3, 0xAD, 'a', 'm', 'o', 's' };
+static const symbol s_3_202[8] = { 'a', 'r', 0xC3, 0xAD, 'a', 'm', 'o', 's' };
+static const symbol s_3_203[8] = { 'e', 'r', 0xC3, 0xAD, 'a', 'm', 'o', 's' };
+static const symbol s_3_204[8] = { 'i', 'r', 0xC3, 0xAD, 'a', 'm', 'o', 's' };
+static const symbol s_3_205[6] = { 'a', 'r', 'e', 'm', 'o', 's' };
+static const symbol s_3_206[6] = { 'e', 'r', 'e', 'm', 'o', 's' };
+static const symbol s_3_207[6] = { 'i', 'r', 'e', 'm', 'o', 's' };
+static const symbol s_3_208[7] = { 0xC3, 0xA1, 's', 'e', 'm', 'o', 's' };
+static const symbol s_3_209[8] = { 'i', 0xC3, 0xA9, 's', 'e', 'm', 'o', 's' };
+static const symbol s_3_210[4] = { 'i', 'm', 'o', 's' };
+static const symbol s_3_211[5] = { 'a', 'd', 'o', 'r', 's' };
+static const symbol s_3_212[3] = { 'a', 's', 's' };
+static const symbol s_3_213[5] = { 'e', 'r', 'a', 's', 's' };
+static const symbol s_3_214[3] = { 'e', 's', 's' };
+static const symbol s_3_215[3] = { 'a', 't', 's' };
+static const symbol s_3_216[3] = { 'i', 't', 's' };
+static const symbol s_3_217[4] = { 'e', 'n', 't', 's' };
+static const symbol s_3_218[3] = { 0xC3, 0xA0, 's' };
+static const symbol s_3_219[5] = { 'a', 'r', 0xC3, 0xA0, 's' };
+static const symbol s_3_220[5] = { 'i', 'r', 0xC3, 0xA0, 's' };
+static const symbol s_3_221[5] = { 'a', 'r', 0xC3, 0xA1, 's' };
+static const symbol s_3_222[5] = { 'e', 'r', 0xC3, 0xA1, 's' };
+static const symbol s_3_223[5] = { 'i', 'r', 0xC3, 0xA1, 's' };
+static const symbol s_3_224[3] = { 0xC3, 0xA9, 's' };
+static const symbol s_3_225[5] = { 'a', 'r', 0xC3, 0xA9, 's' };
+static const symbol s_3_226[3] = { 0xC3, 0xAD, 's' };
+static const symbol s_3_227[4] = { 'i', 0xC3, 0xAF, 's' };
+static const symbol s_3_228[2] = { 'a', 't' };
+static const symbol s_3_229[2] = { 'i', 't' };
+static const symbol s_3_230[3] = { 'a', 'n', 't' };
+static const symbol s_3_231[3] = { 'e', 'n', 't' };
+static const symbol s_3_232[3] = { 'i', 'n', 't' };
+static const symbol s_3_233[2] = { 'u', 't' };
+static const symbol s_3_234[3] = { 0xC3, 0xAF, 't' };
+static const symbol s_3_235[2] = { 'a', 'u' };
+static const symbol s_3_236[4] = { 'e', 'r', 'a', 'u' };
+static const symbol s_3_237[3] = { 'i', 'e', 'u' };
+static const symbol s_3_238[4] = { 'i', 'n', 'e', 'u' };
+static const symbol s_3_239[4] = { 'a', 'r', 'e', 'u' };
+static const symbol s_3_240[4] = { 'i', 'r', 'e', 'u' };
+static const symbol s_3_241[5] = { 0xC3, 0xA0, 'r', 'e', 'u' };
+static const symbol s_3_242[5] = { 0xC3, 0xAD, 'r', 'e', 'u' };
+static const symbol s_3_243[5] = { 'a', 's', 's', 'e', 'u' };
+static const symbol s_3_244[5] = { 'e', 's', 's', 'e', 'u' };
+static const symbol s_3_245[7] = { 'e', 'r', 'e', 's', 's', 'e', 'u' };
+static const symbol s_3_246[6] = { 0xC3, 0xA0, 's', 's', 'e', 'u' };
+static const symbol s_3_247[6] = { 0xC3, 0xA9, 's', 's', 'e', 'u' };
+static const symbol s_3_248[5] = { 'i', 'g', 'u', 'e', 'u' };
+static const symbol s_3_249[6] = { 0xC3, 0xAF, 'g', 'u', 'e', 'u' };
+static const symbol s_3_250[5] = { 0xC3, 0xA0, 'v', 'e', 'u' };
+static const symbol s_3_251[5] = { 0xC3, 0xA1, 'v', 'e', 'u' };
+static const symbol s_3_252[5] = { 'i', 't', 'z', 'e', 'u' };
+static const symbol s_3_253[4] = { 0xC3, 0xAC, 'e', 'u' };
+static const symbol s_3_254[6] = { 'i', 'r', 0xC3, 0xAC, 'e', 'u' };
+static const symbol s_3_255[4] = { 0xC3, 0xAD, 'e', 'u' };
+static const symbol s_3_256[6] = { 'a', 'r', 0xC3, 0xAD, 'e', 'u' };
+static const symbol s_3_257[6] = { 'i', 'r', 0xC3, 0xAD, 'e', 'u' };
+static const symbol s_3_258[5] = { 'a', 's', 's', 'i', 'u' };
+static const symbol s_3_259[5] = { 'i', 's', 's', 'i', 'u' };
+static const symbol s_3_260[6] = { 0xC3, 0xA0, 's', 's', 'i', 'u' };
+static const symbol s_3_261[6] = { 0xC3, 0xA8, 's', 's', 'i', 'u' };
+static const symbol s_3_262[6] = { 0xC3, 0xA9, 's', 's', 'i', 'u' };
+static const symbol s_3_263[6] = { 0xC3, 0xAD, 's', 's', 'i', 'u' };
+static const symbol s_3_264[3] = { 0xC3, 0xAF, 'u' };
+static const symbol s_3_265[2] = { 'i', 'x' };
+static const symbol s_3_266[3] = { 'e', 'i', 'x' };
+static const symbol s_3_267[3] = { 0xC3, 0xAF, 'x' };
+static const symbol s_3_268[3] = { 'i', 't', 'z' };
+static const symbol s_3_269[3] = { 'i', 0xC3, 0xA0 };
+static const symbol s_3_270[4] = { 'a', 'r', 0xC3, 0xA0 };
+static const symbol s_3_271[4] = { 'i', 'r', 0xC3, 0xA0 };
+static const symbol s_3_272[5] = { 'i', 't', 'z', 0xC3, 0xA0 };
+static const symbol s_3_273[4] = { 'a', 'r', 0xC3, 0xA1 };
+static const symbol s_3_274[4] = { 'e', 'r', 0xC3, 0xA1 };
+static const symbol s_3_275[4] = { 'i', 'r', 0xC3, 0xA1 };
+static const symbol s_3_276[4] = { 'i', 'r', 0xC3, 0xA8 };
+static const symbol s_3_277[4] = { 'a', 'r', 0xC3, 0xA9 };
+static const symbol s_3_278[4] = { 'e', 'r', 0xC3, 0xA9 };
+static const symbol s_3_279[4] = { 'i', 'r', 0xC3, 0xA9 };
+static const symbol s_3_280[2] = { 0xC3, 0xAD };
+static const symbol s_3_281[3] = { 'i', 0xC3, 0xAF };
+static const symbol s_3_282[3] = { 'i', 0xC3, 0xB3 };
+
+static const struct among a_3[283] =
+{
+/*  0 */ { 3, s_3_0, -1, 1, 0},
+/*  1 */ { 4, s_3_1, -1, 1, 0},
+/*  2 */ { 4, s_3_2, -1, 1, 0},
+/*  3 */ { 5, s_3_3, -1, 1, 0},
+/*  4 */ { 3, s_3_4, -1, 1, 0},
+/*  5 */ { 3, s_3_5, -1, 1, 0},
+/*  6 */ { 3, s_3_6, -1, 1, 0},
+/*  7 */ { 4, s_3_7, -1, 1, 0},
+/*  8 */ { 2, s_3_8, -1, 1, 0},
+/*  9 */ { 4, s_3_9, 8, 1, 0},
+/* 10 */ { 4, s_3_10, 8, 1, 0},
+/* 11 */ { 3, s_3_11, -1, 1, 0},
+/* 12 */ { 4, s_3_12, -1, 1, 0},
+/* 13 */ { 3, s_3_13, -1, 1, 0},
+/* 14 */ { 5, s_3_14, -1, 1, 0},
+/* 15 */ { 4, s_3_15, -1, 1, 0},
+/* 16 */ { 3, s_3_16, -1, 1, 0},
+/* 17 */ { 3, s_3_17, -1, 1, 0},
+/* 18 */ { 4, s_3_18, -1, 1, 0},
+/* 19 */ { 3, s_3_19, -1, 1, 0},
+/* 20 */ { 5, s_3_20, 19, 1, 0},
+/* 21 */ { 5, s_3_21, 19, 1, 0},
+/* 22 */ { 5, s_3_22, 19, 1, 0},
+/* 23 */ { 3, s_3_23, -1, 1, 0},
+/* 24 */ { 3, s_3_24, -1, 1, 0},
+/* 25 */ { 4, s_3_25, -1, 1, 0},
+/* 26 */ { 2, s_3_26, -1, 1, 0},
+/* 27 */ { 2, s_3_27, -1, 1, 0},
+/* 28 */ { 2, s_3_28, -1, 1, 0},
+/* 29 */ { 2, s_3_29, -1, 1, 0},
+/* 30 */ { 2, s_3_30, -1, 1, 0},
+/* 31 */ { 3, s_3_31, 30, 1, 0},
+/* 32 */ { 3, s_3_32, -1, 1, 0},
+/* 33 */ { 4, s_3_33, -1, 1, 0},
+/* 34 */ { 4, s_3_34, -1, 1, 0},
+/* 35 */ { 4, s_3_35, -1, 1, 0},
+/* 36 */ { 2, s_3_36, -1, 1, 0},
+/* 37 */ { 3, s_3_37, -1, 1, 0},
+/* 38 */ { 5, s_3_38, -1, 1, 0},
+/* 39 */ { 4, s_3_39, -1, 1, 0},
+/* 40 */ { 4, s_3_40, -1, 1, 0},
+/* 41 */ { 2, s_3_41, -1, 1, 0},
+/* 42 */ { 2, s_3_42, -1, 1, 0},
+/* 43 */ { 4, s_3_43, 42, 1, 0},
+/* 44 */ { 4, s_3_44, 42, 1, 0},
+/* 45 */ { 5, s_3_45, 42, 1, 0},
+/* 46 */ { 5, s_3_46, 42, 1, 0},
+/* 47 */ { 6, s_3_47, 42, 1, 0},
+/* 48 */ { 6, s_3_48, 42, 1, 0},
+/* 49 */ { 5, s_3_49, 42, 1, 0},
+/* 50 */ { 6, s_3_50, 42, 1, 0},
+/* 51 */ { 4, s_3_51, 42, 1, 0},
+/* 52 */ { 5, s_3_52, 42, 1, 0},
+/* 53 */ { 5, s_3_53, 42, 1, 0},
+/* 54 */ { 6, s_3_54, 42, 1, 0},
+/* 55 */ { 4, s_3_55, 42, 1, 0},
+/* 56 */ { 6, s_3_56, 55, 1, 0},
+/* 57 */ { 6, s_3_57, 55, 1, 0},
+/* 58 */ { 5, s_3_58, -1, 1, 0},
+/* 59 */ { 5, s_3_59, -1, 1, 0},
+/* 60 */ { 5, s_3_60, -1, 1, 0},
+/* 61 */ { 6, s_3_61, -1, 1, 0},
+/* 62 */ { 6, s_3_62, -1, 1, 0},
+/* 63 */ { 6, s_3_63, -1, 1, 0},
+/* 64 */ { 6, s_3_64, -1, 1, 0},
+/* 65 */ { 3, s_3_65, -1, 1, 0},
+/* 66 */ { 2, s_3_66, -1, 1, 0},
+/* 67 */ { 4, s_3_67, 66, 1, 0},
+/* 68 */ { 5, s_3_68, 66, 1, 0},
+/* 69 */ { 4, s_3_69, 66, 1, 0},
+/* 70 */ { 5, s_3_70, 66, 1, 0},
+/* 71 */ { 4, s_3_71, 66, 1, 0},
+/* 72 */ { 4, s_3_72, 66, 1, 0},
+/* 73 */ { 6, s_3_73, 72, 1, 0},
+/* 74 */ { 6, s_3_74, 72, 1, 0},
+/* 75 */ { 6, s_3_75, 72, 1, 0},
+/* 76 */ { 2, s_3_76, -1, 1, 0},
+/* 77 */ { 3, s_3_77, 76, 1, 0},
+/* 78 */ { 5, s_3_78, 77, 1, 0},
+/* 79 */ { 5, s_3_79, 77, 1, 0},
+/* 80 */ { 4, s_3_80, 76, 1, 0},
+/* 81 */ { 4, s_3_81, 76, 1, 0},
+/* 82 */ { 4, s_3_82, 76, 1, 0},
+/* 83 */ { 5, s_3_83, 76, 1, 0},
+/* 84 */ { 5, s_3_84, 76, 1, 0},
+/* 85 */ { 4, s_3_85, 76, 1, 0},
+/* 86 */ { 5, s_3_86, 76, 1, 0},
+/* 87 */ { 5, s_3_87, 76, 1, 0},
+/* 88 */ { 5, s_3_88, 76, 1, 0},
+/* 89 */ { 5, s_3_89, 76, 1, 0},
+/* 90 */ { 6, s_3_90, 76, 1, 0},
+/* 91 */ { 6, s_3_91, 76, 1, 0},
+/* 92 */ { 6, s_3_92, 76, 1, 0},
+/* 93 */ { 6, s_3_93, 76, 1, 0},
+/* 94 */ { 7, s_3_94, 76, 1, 0},
+/* 95 */ { 4, s_3_95, 76, 1, 0},
+/* 96 */ { 4, s_3_96, 76, 1, 0},
+/* 97 */ { 5, s_3_97, 96, 1, 0},
+/* 98 */ { 5, s_3_98, 76, 1, 0},
+/* 99 */ { 4, s_3_99, 76, 1, 0},
+/*100 */ { 2, s_3_100, -1, 1, 0},
+/*101 */ { 4, s_3_101, 100, 1, 0},
+/*102 */ { 3, s_3_102, 100, 1, 0},
+/*103 */ { 4, s_3_103, 102, 1, 0},
+/*104 */ { 5, s_3_104, 102, 1, 0},
+/*105 */ { 5, s_3_105, 102, 1, 0},
+/*106 */ { 5, s_3_106, 102, 1, 0},
+/*107 */ { 6, s_3_107, 102, 1, 0},
+/*108 */ { 6, s_3_108, 100, 1, 0},
+/*109 */ { 5, s_3_109, 100, 1, 0},
+/*110 */ { 4, s_3_110, -1, 1, 0},
+/*111 */ { 5, s_3_111, -1, 1, 0},
+/*112 */ { 5, s_3_112, -1, 1, 0},
+/*113 */ { 5, s_3_113, -1, 1, 0},
+/*114 */ { 5, s_3_114, -1, 1, 0},
+/*115 */ { 4, s_3_115, -1, 1, 0},
+/*116 */ { 3, s_3_116, -1, 1, 0},
+/*117 */ { 3, s_3_117, -1, 1, 0},
+/*118 */ { 4, s_3_118, -1, 2, 0},
+/*119 */ { 5, s_3_119, -1, 1, 0},
+/*120 */ { 2, s_3_120, -1, 1, 0},
+/*121 */ { 3, s_3_121, -1, 1, 0},
+/*122 */ { 4, s_3_122, 121, 1, 0},
+/*123 */ { 4, s_3_123, -1, 1, 0},
+/*124 */ { 4, s_3_124, -1, 1, 0},
+/*125 */ { 2, s_3_125, -1, 1, 0},
+/*126 */ { 4, s_3_126, 125, 1, 0},
+/*127 */ { 2, s_3_127, -1, 1, 0},
+/*128 */ { 5, s_3_128, 127, 1, 0},
+/*129 */ { 2, s_3_129, -1, 1, 0},
+/*130 */ { 4, s_3_130, -1, 1, 0},
+/*131 */ { 2, s_3_131, -1, 1, 0},
+/*132 */ { 4, s_3_132, 131, 1, 0},
+/*133 */ { 4, s_3_133, 131, 1, 0},
+/*134 */ { 4, s_3_134, 131, 1, 0},
+/*135 */ { 4, s_3_135, 131, 1, 0},
+/*136 */ { 5, s_3_136, 131, 1, 0},
+/*137 */ { 4, s_3_137, 131, 1, 0},
+/*138 */ { 6, s_3_138, 137, 1, 0},
+/*139 */ { 6, s_3_139, 137, 1, 0},
+/*140 */ { 6, s_3_140, 137, 1, 0},
+/*141 */ { 3, s_3_141, -1, 1, 0},
+/*142 */ { 2, s_3_142, -1, 1, 0},
+/*143 */ { 4, s_3_143, 142, 1, 0},
+/*144 */ { 4, s_3_144, 142, 1, 0},
+/*145 */ { 4, s_3_145, 142, 1, 0},
+/*146 */ { 5, s_3_146, 142, 1, 0},
+/*147 */ { 5, s_3_147, 142, 1, 0},
+/*148 */ { 3, s_3_148, 142, 1, 0},
+/*149 */ { 5, s_3_149, 148, 1, 0},
+/*150 */ { 5, s_3_150, 148, 1, 0},
+/*151 */ { 4, s_3_151, 142, 1, 0},
+/*152 */ { 4, s_3_152, 142, 1, 0},
+/*153 */ { 6, s_3_153, 142, 1, 0},
+/*154 */ { 5, s_3_154, 142, 1, 0},
+/*155 */ { 4, s_3_155, 142, 1, 0},
+/*156 */ { 5, s_3_156, 142, 1, 0},
+/*157 */ { 5, s_3_157, 142, 1, 0},
+/*158 */ { 5, s_3_158, 142, 1, 0},
+/*159 */ { 5, s_3_159, 142, 1, 0},
+/*160 */ { 6, s_3_160, 142, 1, 0},
+/*161 */ { 4, s_3_161, 142, 1, 0},
+/*162 */ { 6, s_3_162, 161, 1, 0},
+/*163 */ { 7, s_3_163, 161, 1, 0},
+/*164 */ { 4, s_3_164, 142, 1, 0},
+/*165 */ { 4, s_3_165, 142, 1, 0},
+/*166 */ { 5, s_3_166, 165, 1, 0},
+/*167 */ { 5, s_3_167, 142, 1, 0},
+/*168 */ { 4, s_3_168, 142, 1, 0},
+/*169 */ { 5, s_3_169, -1, 1, 0},
+/*170 */ { 5, s_3_170, -1, 1, 0},
+/*171 */ { 6, s_3_171, -1, 1, 0},
+/*172 */ { 5, s_3_172, -1, 1, 0},
+/*173 */ { 7, s_3_173, 172, 1, 0},
+/*174 */ { 7, s_3_174, 172, 1, 0},
+/*175 */ { 7, s_3_175, 172, 1, 0},
+/*176 */ { 5, s_3_176, -1, 1, 0},
+/*177 */ { 6, s_3_177, -1, 1, 0},
+/*178 */ { 6, s_3_178, -1, 1, 0},
+/*179 */ { 6, s_3_179, -1, 1, 0},
+/*180 */ { 4, s_3_180, -1, 1, 0},
+/*181 */ { 3, s_3_181, -1, 1, 0},
+/*182 */ { 4, s_3_182, 181, 1, 0},
+/*183 */ { 5, s_3_183, 181, 1, 0},
+/*184 */ { 5, s_3_184, 181, 1, 0},
+/*185 */ { 5, s_3_185, 181, 1, 0},
+/*186 */ { 6, s_3_186, 181, 1, 0},
+/*187 */ { 6, s_3_187, -1, 1, 0},
+/*188 */ { 5, s_3_188, -1, 1, 0},
+/*189 */ { 5, s_3_189, -1, 1, 0},
+/*190 */ { 4, s_3_190, -1, 1, 0},
+/*191 */ { 6, s_3_191, -1, 1, 0},
+/*192 */ { 6, s_3_192, -1, 1, 0},
+/*193 */ { 6, s_3_193, -1, 1, 0},
+/*194 */ { 3, s_3_194, -1, 1, 0},
+/*195 */ { 4, s_3_195, -1, 1, 0},
+/*196 */ { 4, s_3_196, -1, 1, 0},
+/*197 */ { 4, s_3_197, -1, 1, 0},
+/*198 */ { 7, s_3_198, 197, 1, 0},
+/*199 */ { 7, s_3_199, 197, 1, 0},
+/*200 */ { 8, s_3_200, 197, 1, 0},
+/*201 */ { 6, s_3_201, 197, 1, 0},
+/*202 */ { 8, s_3_202, 201, 1, 0},
+/*203 */ { 8, s_3_203, 201, 1, 0},
+/*204 */ { 8, s_3_204, 201, 1, 0},
+/*205 */ { 6, s_3_205, -1, 1, 0},
+/*206 */ { 6, s_3_206, -1, 1, 0},
+/*207 */ { 6, s_3_207, -1, 1, 0},
+/*208 */ { 7, s_3_208, -1, 1, 0},
+/*209 */ { 8, s_3_209, -1, 1, 0},
+/*210 */ { 4, s_3_210, -1, 1, 0},
+/*211 */ { 5, s_3_211, -1, 1, 0},
+/*212 */ { 3, s_3_212, -1, 1, 0},
+/*213 */ { 5, s_3_213, 212, 1, 0},
+/*214 */ { 3, s_3_214, -1, 1, 0},
+/*215 */ { 3, s_3_215, -1, 1, 0},
+/*216 */ { 3, s_3_216, -1, 1, 0},
+/*217 */ { 4, s_3_217, -1, 1, 0},
+/*218 */ { 3, s_3_218, -1, 1, 0},
+/*219 */ { 5, s_3_219, 218, 1, 0},
+/*220 */ { 5, s_3_220, 218, 1, 0},
+/*221 */ { 5, s_3_221, -1, 1, 0},
+/*222 */ { 5, s_3_222, -1, 1, 0},
+/*223 */ { 5, s_3_223, -1, 1, 0},
+/*224 */ { 3, s_3_224, -1, 1, 0},
+/*225 */ { 5, s_3_225, 224, 1, 0},
+/*226 */ { 3, s_3_226, -1, 1, 0},
+/*227 */ { 4, s_3_227, -1, 1, 0},
+/*228 */ { 2, s_3_228, -1, 1, 0},
+/*229 */ { 2, s_3_229, -1, 1, 0},
+/*230 */ { 3, s_3_230, -1, 1, 0},
+/*231 */ { 3, s_3_231, -1, 1, 0},
+/*232 */ { 3, s_3_232, -1, 1, 0},
+/*233 */ { 2, s_3_233, -1, 1, 0},
+/*234 */ { 3, s_3_234, -1, 1, 0},
+/*235 */ { 2, s_3_235, -1, 1, 0},
+/*236 */ { 4, s_3_236, 235, 1, 0},
+/*237 */ { 3, s_3_237, -1, 1, 0},
+/*238 */ { 4, s_3_238, -1, 1, 0},
+/*239 */ { 4, s_3_239, -1, 1, 0},
+/*240 */ { 4, s_3_240, -1, 1, 0},
+/*241 */ { 5, s_3_241, -1, 1, 0},
+/*242 */ { 5, s_3_242, -1, 1, 0},
+/*243 */ { 5, s_3_243, -1, 1, 0},
+/*244 */ { 5, s_3_244, -1, 1, 0},
+/*245 */ { 7, s_3_245, 244, 1, 0},
+/*246 */ { 6, s_3_246, -1, 1, 0},
+/*247 */ { 6, s_3_247, -1, 1, 0},
+/*248 */ { 5, s_3_248, -1, 1, 0},
+/*249 */ { 6, s_3_249, -1, 1, 0},
+/*250 */ { 5, s_3_250, -1, 1, 0},
+/*251 */ { 5, s_3_251, -1, 1, 0},
+/*252 */ { 5, s_3_252, -1, 1, 0},
+/*253 */ { 4, s_3_253, -1, 1, 0},
+/*254 */ { 6, s_3_254, 253, 1, 0},
+/*255 */ { 4, s_3_255, -1, 1, 0},
+/*256 */ { 6, s_3_256, 255, 1, 0},
+/*257 */ { 6, s_3_257, 255, 1, 0},
+/*258 */ { 5, s_3_258, -1, 1, 0},
+/*259 */ { 5, s_3_259, -1, 1, 0},
+/*260 */ { 6, s_3_260, -1, 1, 0},
+/*261 */ { 6, s_3_261, -1, 1, 0},
+/*262 */ { 6, s_3_262, -1, 1, 0},
+/*263 */ { 6, s_3_263, -1, 1, 0},
+/*264 */ { 3, s_3_264, -1, 1, 0},
+/*265 */ { 2, s_3_265, -1, 1, 0},
+/*266 */ { 3, s_3_266, 265, 1, 0},
+/*267 */ { 3, s_3_267, -1, 1, 0},
+/*268 */ { 3, s_3_268, -1, 1, 0},
+/*269 */ { 3, s_3_269, -1, 1, 0},
+/*270 */ { 4, s_3_270, -1, 1, 0},
+/*271 */ { 4, s_3_271, -1, 1, 0},
+/*272 */ { 5, s_3_272, -1, 1, 0},
+/*273 */ { 4, s_3_273, -1, 1, 0},
+/*274 */ { 4, s_3_274, -1, 1, 0},
+/*275 */ { 4, s_3_275, -1, 1, 0},
+/*276 */ { 4, s_3_276, -1, 1, 0},
+/*277 */ { 4, s_3_277, -1, 1, 0},
+/*278 */ { 4, s_3_278, -1, 1, 0},
+/*279 */ { 4, s_3_279, -1, 1, 0},
+/*280 */ { 2, s_3_280, -1, 1, 0},
+/*281 */ { 3, s_3_281, -1, 1, 0},
+/*282 */ { 3, s_3_282, -1, 1, 0}
+};
+
+static const symbol s_4_0[1] = { 'a' };
+static const symbol s_4_1[1] = { 'e' };
+static const symbol s_4_2[1] = { 'i' };
+static const symbol s_4_3[3] = { 0xC3, 0xAF, 'n' };
+static const symbol s_4_4[1] = { 'o' };
+static const symbol s_4_5[2] = { 'i', 'r' };
+static const symbol s_4_6[1] = { 's' };
+static const symbol s_4_7[2] = { 'i', 's' };
+static const symbol s_4_8[2] = { 'o', 's' };
+static const symbol s_4_9[3] = { 0xC3, 0xAF, 's' };
+static const symbol s_4_10[2] = { 'i', 't' };
+static const symbol s_4_11[2] = { 'e', 'u' };
+static const symbol s_4_12[2] = { 'i', 'u' };
+static const symbol s_4_13[3] = { 'i', 'q', 'u' };
+static const symbol s_4_14[3] = { 'i', 't', 'z' };
+static const symbol s_4_15[2] = { 0xC3, 0xA0 };
+static const symbol s_4_16[2] = { 0xC3, 0xA1 };
+static const symbol s_4_17[2] = { 0xC3, 0xA9 };
+static const symbol s_4_18[2] = { 0xC3, 0xAC };
+static const symbol s_4_19[2] = { 0xC3, 0xAD };
+static const symbol s_4_20[2] = { 0xC3, 0xAF };
+static const symbol s_4_21[2] = { 0xC3, 0xB3 };
+
+static const struct among a_4[22] =
+{
+/*  0 */ { 1, s_4_0, -1, 1, 0},
+/*  1 */ { 1, s_4_1, -1, 1, 0},
+/*  2 */ { 1, s_4_2, -1, 1, 0},
+/*  3 */ { 3, s_4_3, -1, 1, 0},
+/*  4 */ { 1, s_4_4, -1, 1, 0},
+/*  5 */ { 2, s_4_5, -1, 1, 0},
+/*  6 */ { 1, s_4_6, -1, 1, 0},
+/*  7 */ { 2, s_4_7, 6, 1, 0},
+/*  8 */ { 2, s_4_8, 6, 1, 0},
+/*  9 */ { 3, s_4_9, 6, 1, 0},
+/* 10 */ { 2, s_4_10, -1, 1, 0},
+/* 11 */ { 2, s_4_11, -1, 1, 0},
+/* 12 */ { 2, s_4_12, -1, 1, 0},
+/* 13 */ { 3, s_4_13, -1, 2, 0},
+/* 14 */ { 3, s_4_14, -1, 1, 0},
+/* 15 */ { 2, s_4_15, -1, 1, 0},
+/* 16 */ { 2, s_4_16, -1, 1, 0},
+/* 17 */ { 2, s_4_17, -1, 1, 0},
+/* 18 */ { 2, s_4_18, -1, 1, 0},
+/* 19 */ { 2, s_4_19, -1, 1, 0},
+/* 20 */ { 2, s_4_20, -1, 1, 0},
+/* 21 */ { 2, s_4_21, -1, 1, 0}
+};
+
+static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 129, 81, 6, 10 };
+
+static const symbol s_0[] = { 'a' };
+static const symbol s_1[] = { 'e' };
+static const symbol s_2[] = { 'i' };
+static const symbol s_3[] = { 'o' };
+static const symbol s_4[] = { 'u' };
+static const symbol s_5[] = { '.' };
+static const symbol s_6[] = { 'l', 'o', 'g' };
+static const symbol s_7[] = { 'i', 'c' };
+static const symbol s_8[] = { 'c' };
+static const symbol s_9[] = { 'i', 'c' };
+
+static int r_mark_regions(struct SN_env * z) { /* forwardmode */
+    z->I[0] = z->l; /* $p1 = <integer expression>, line 38 */
+    z->I[1] = z->l; /* $p2 = <integer expression>, line 39 */
+    {   int c1 = z->c; /* do, line 41 */
+        {    /* gopast */ /* grouping v, line 42 */
+            int ret = out_grouping_U(z, g_v, 97, 252, 1);
+            if (ret < 0) goto lab0;
+            z->c += ret;
+        }
+        {    /* gopast */ /* non v, line 42 */
+            int ret = in_grouping_U(z, g_v, 97, 252, 1);
+            if (ret < 0) goto lab0;
+            z->c += ret;
+        }
+        z->I[0] = z->c; /* setmark p1, line 42 */
+        {    /* gopast */ /* grouping v, line 43 */
+            int ret = out_grouping_U(z, g_v, 97, 252, 1);
+            if (ret < 0) goto lab0;
+            z->c += ret;
+        }
+        {    /* gopast */ /* non v, line 43 */
+            int ret = in_grouping_U(z, g_v, 97, 252, 1);
+            if (ret < 0) goto lab0;
+            z->c += ret;
+        }
+        z->I[1] = z->c; /* setmark p2, line 43 */
+    lab0:
+        z->c = c1;
+    }
+    return 1;
+}
+
+static int r_cleaning(struct SN_env * z) { /* forwardmode */
+    int among_var;
+/* repeat, line 47 */
+
+    while(1) {        int c1 = z->c;
+        z->bra = z->c; /* [, line 48 */
+        if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 5 || !((344765187 >> (z->p[z->c + 1] & 0x1f)) & 1)) among_var = 7; else /* substring, line 48 */
+        among_var = find_among(z, a_0, 13);
+        if (!(among_var)) goto lab0;
+        z->ket = z->c; /* ], line 48 */
+        switch (among_var) { /* among, line 48 */
+            case 1:
+                {   int ret = slice_from_s(z, 1, s_0); /* <-, line 49 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 2:
+                {   int ret = slice_from_s(z, 1, s_1); /* <-, line 51 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 3:
+                {   int ret = slice_from_s(z, 1, s_2); /* <-, line 53 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 4:
+                {   int ret = slice_from_s(z, 1, s_3); /* <-, line 55 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 5:
+                {   int ret = slice_from_s(z, 1, s_4); /* <-, line 57 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 6:
+                {   int ret = slice_from_s(z, 1, s_5); /* <-, line 60 */
+                    if (ret < 0) return ret;
+                }
+                break;
+            case 7:
+                {   int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
+                    if (ret < 0) goto lab0;
+                    z->c = ret; /* next, line 61 */
+                }
+                break;
+        }
+        continue;
+    lab0:
+        z->c = c1;
+        break;
+    }
+    return 1;
+}
+
+static int r_R1(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[0] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 67 */
+    return 1;
+}
+
+static int r_R2(struct SN_env * z) { /* backwardmode */
+    if (!(z->I[1] <= z->c)) return 0; /* $(<integer expression> <= <integer expression>), line 68 */
+    return 1;
+}
+
+static int r_attached_pronoun(struct SN_env * z) { /* backwardmode */
+    z->ket = z->c; /* [, line 71 */
+    if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1634850 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 71 */
+    if (!(find_among_b(z, a_1, 39))) return 0;
+    z->bra = z->c; /* ], line 71 */
+    {   int ret = r_R1(z); /* call R1, line 81 */
+        if (ret <= 0) return ret;
+    }
+    {   int ret = slice_del(z); /* delete, line 81 */
+        if (ret < 0) return ret;
+    }
+    return 1;
+}
+
+static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 86 */
+    among_var = find_among_b(z, a_2, 200); /* substring, line 86 */
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 86 */
+    switch (among_var) { /* among, line 86 */
+        case 1:
+            {   int ret = r_R1(z); /* call R1, line 110 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 110 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R2(z); /* call R2, line 112 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 112 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 3:
+            {   int ret = r_R2(z); /* call R2, line 114 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_from_s(z, 3, s_6); /* <-, line 114 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 4:
+            {   int ret = r_R2(z); /* call R2, line 116 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_from_s(z, 2, s_7); /* <-, line 116 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 5:
+            {   int ret = r_R1(z); /* call R1, line 118 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_from_s(z, 1, s_8); /* <-, line 118 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+static int r_verb_suffix(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 123 */
+    among_var = find_among_b(z, a_3, 283); /* substring, line 123 */
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 123 */
+    switch (among_var) { /* among, line 123 */
+        case 1:
+            {   int ret = r_R1(z); /* call R1, line 168 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 168 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R2(z); /* call R2, line 170 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 170 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+static int r_residual_suffix(struct SN_env * z) { /* backwardmode */
+    int among_var;
+    z->ket = z->c; /* [, line 175 */
+    among_var = find_among_b(z, a_4, 22); /* substring, line 175 */
+    if (!(among_var)) return 0;
+    z->bra = z->c; /* ], line 175 */
+    switch (among_var) { /* among, line 175 */
+        case 1:
+            {   int ret = r_R1(z); /* call R1, line 178 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_del(z); /* delete, line 178 */
+                if (ret < 0) return ret;
+            }
+            break;
+        case 2:
+            {   int ret = r_R1(z); /* call R1, line 180 */
+                if (ret <= 0) return ret;
+            }
+            {   int ret = slice_from_s(z, 2, s_9); /* <-, line 180 */
+                if (ret < 0) return ret;
+            }
+            break;
+    }
+    return 1;
+}
+
+extern int catalan_UTF_8_stem(struct SN_env * z) { /* forwardmode */
+    /* do, line 186 */
+    {   int ret = r_mark_regions(z); /* call mark_regions, line 186 */
+        if (ret < 0) return ret;
+    }
+    z->lb = z->c; z->c = z->l; /* backwards, line 187 */
+
+    {   int m1 = z->l - z->c; (void)m1; /* do, line 188 */
+        {   int ret = r_attached_pronoun(z); /* call attached_pronoun, line 188 */
+            if (ret < 0) return ret;
+        }
+        z->c = z->l - m1;
+    }
+    {   int m2 = z->l - z->c; (void)m2; /* do, line 189 */
+        {   int m3 = z->l - z->c; (void)m3; /* or, line 189 */
+            {   int ret = r_standard_suffix(z); /* call standard_suffix, line 189 */
+                if (ret == 0) goto lab2;
+                if (ret < 0) return ret;
+            }
+            goto lab1;
+        lab2:
+            z->c = z->l - m3;
+            {   int ret = r_verb_suffix(z); /* call verb_suffix, line 190 */
+                if (ret == 0) goto lab0;
+                if (ret < 0) return ret;
+            }
+        }
+    lab1:
+    lab0:
+        z->c = z->l - m2;
+    }
+    {   int m4 = z->l - z->c; (void)m4; /* do, line 192 */
+        {   int ret = r_residual_suffix(z); /* call residual_suffix, line 192 */
+            if (ret < 0) return ret;
+        }
+        z->c = z->l - m4;
+    }
+    z->c = z->lb;
+    {   int c5 = z->c; /* do, line 194 */
+        {   int ret = r_cleaning(z); /* call cleaning, line 194 */
+            if (ret < 0) return ret;
+        }
+        z->c = c5;
+    }
+    return 1;
+}
+
+extern struct SN_env * catalan_UTF_8_create_env(void) { return SN_create_env(0, 2, 0); }
+
+extern void catalan_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+
index 901491c7b6e30f1c4d395e906b29ba17bbd0a4f3..9bc7e060b1d0b30cbc0abd05b8ba58f8d41bafbf 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -243,10 +242,8 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
             }
             {   int m3 = z->l - z->c; (void)m3; /* do, line 72 */
                 {   int ret = r_consonant_pair(z); /* call consonant_pair, line 72 */
-                    if (ret == 0) goto lab1;
                     if (ret < 0) return ret;
                 }
-            lab1:
                 z->c = z->l - m3;
             }
             break;
@@ -281,44 +278,34 @@ static int r_undouble(struct SN_env * z) { /* backwardmode */
 extern int danish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 86 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 86 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 87 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 88 */
         {   int ret = r_main_suffix(z); /* call main_suffix, line 88 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 89 */
         {   int ret = r_consonant_pair(z); /* call consonant_pair, line 89 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 90 */
         {   int ret = r_other_suffix(z); /* call other_suffix, line 90 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 91 */
         {   int ret = r_undouble(z); /* call undouble, line 91 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m5;
     }
     z->c = z->lb;
index 0a61174502d2c9561dc81c1590e86156a1430a11..56028832f1f46c3b8e6d99818ee2669ed757cbd4 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -148,8 +147,9 @@ static const symbol s_14[] = { 'i', 'g' };
 static int r_prelude(struct SN_env * z) { /* forwardmode */
     int among_var;
     {   int c_test1 = z->c; /* test, line 42 */
-        while(1) { /* repeat, line 42 */
-            int c2 = z->c;
+/* repeat, line 42 */
+
+        while(1) {            int c2 = z->c;
             z->bra = z->c; /* [, line 43 */
             if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 5 || !((340306450 >> (z->p[z->c + 1] & 0x1f)) & 1)) among_var = 6; else /* substring, line 43 */
             among_var = find_among(z, a_0, 11);
@@ -206,8 +206,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
     lab1:
         ;
     }
-    while(1) { /* repeat, line 58 */
-        int c4 = z->c;
+/* repeat, line 58 */
+
+    while(1) {        int c4 = z->c;
         while(1) { /* goto, line 58 */
             int c5 = z->c;
             if (in_grouping_U(z, g_v, 97, 232, 0)) goto lab3; /* grouping v, line 59 */
@@ -282,8 +283,9 @@ lab0:
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 75 */
-        int c1 = z->c;
+/* repeat, line 75 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 77 */
         if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else /* substring, line 77 */
         among_var = find_among(z, a_1, 3);
@@ -429,50 +431,48 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
     }
     {   int m2 = z->l - z->c; (void)m2; /* do, line 120 */
         {   int ret = r_e_ending(z); /* call e_ending, line 120 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 122 */
         z->ket = z->c; /* [, line 122 */
-        if (!(eq_s_b(z, 4, s_12))) goto lab2; /* literal, line 122 */
+        if (!(eq_s_b(z, 4, s_12))) goto lab1; /* literal, line 122 */
         z->bra = z->c; /* ], line 122 */
         {   int ret = r_R2(z); /* call R2, line 122 */
-            if (ret == 0) goto lab2;
+            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
         {   int m4 = z->l - z->c; (void)m4; /* not, line 122 */
-            if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab3; /* literal, line 122 */
+            if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2; /* literal, line 122 */
             z->c--;
-            goto lab2;
-        lab3:
+            goto lab1;
+        lab2:
             z->c = z->l - m4;
         }
         {   int ret = slice_del(z); /* delete, line 122 */
             if (ret < 0) return ret;
         }
         z->ket = z->c; /* [, line 123 */
-        if (!(eq_s_b(z, 2, s_13))) goto lab2; /* literal, line 123 */
+        if (!(eq_s_b(z, 2, s_13))) goto lab1; /* literal, line 123 */
         z->bra = z->c; /* ], line 123 */
         {   int ret = r_en_ending(z); /* call en_ending, line 123 */
-            if (ret == 0) goto lab2;
+            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab2:
+    lab1:
         z->c = z->l - m3;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 126 */
         z->ket = z->c; /* [, line 127 */
-        if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab4; /* substring, line 127 */
+        if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3; /* substring, line 127 */
         among_var = find_among_b(z, a_4, 6);
-        if (!(among_var)) goto lab4;
+        if (!(among_var)) goto lab3;
         z->bra = z->c; /* ], line 127 */
         switch (among_var) { /* among, line 127 */
             case 1:
                 {   int ret = r_R2(z); /* call R2, line 129 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 {   int ret = slice_del(z); /* delete, line 129 */
@@ -480,42 +480,42 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
                 }
                 {   int m6 = z->l - z->c; (void)m6; /* or, line 130 */
                     z->ket = z->c; /* [, line 130 */
-                    if (!(eq_s_b(z, 2, s_14))) goto lab6; /* literal, line 130 */
+                    if (!(eq_s_b(z, 2, s_14))) goto lab5; /* literal, line 130 */
                     z->bra = z->c; /* ], line 130 */
                     {   int ret = r_R2(z); /* call R2, line 130 */
-                        if (ret == 0) goto lab6;
+                        if (ret == 0) goto lab5;
                         if (ret < 0) return ret;
                     }
                     {   int m7 = z->l - z->c; (void)m7; /* not, line 130 */
-                        if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7; /* literal, line 130 */
+                        if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6; /* literal, line 130 */
                         z->c--;
-                        goto lab6;
-                    lab7:
+                        goto lab5;
+                    lab6:
                         z->c = z->l - m7;
                     }
                     {   int ret = slice_del(z); /* delete, line 130 */
                         if (ret < 0) return ret;
                     }
-                    goto lab5;
-                lab6:
+                    goto lab4;
+                lab5:
                     z->c = z->l - m6;
                     {   int ret = r_undouble(z); /* call undouble, line 130 */
-                        if (ret == 0) goto lab4;
+                        if (ret == 0) goto lab3;
                         if (ret < 0) return ret;
                     }
                 }
-            lab5:
+            lab4:
                 break;
             case 2:
                 {   int ret = r_R2(z); /* call R2, line 133 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 {   int m8 = z->l - z->c; (void)m8; /* not, line 133 */
-                    if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab8; /* literal, line 133 */
+                    if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7; /* literal, line 133 */
                     z->c--;
-                    goto lab4;
-                lab8:
+                    goto lab3;
+                lab7:
                     z->c = z->l - m8;
                 }
                 {   int ret = slice_del(z); /* delete, line 133 */
@@ -524,20 +524,20 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
                 break;
             case 3:
                 {   int ret = r_R2(z); /* call R2, line 136 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 {   int ret = slice_del(z); /* delete, line 136 */
                     if (ret < 0) return ret;
                 }
                 {   int ret = r_e_ending(z); /* call e_ending, line 136 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 break;
             case 4:
                 {   int ret = r_R2(z); /* call R2, line 139 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
                 {   int ret = slice_del(z); /* delete, line 139 */
@@ -546,36 +546,36 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
                 break;
             case 5:
                 {   int ret = r_R2(z); /* call R2, line 142 */
-                    if (ret == 0) goto lab4;
+                    if (ret == 0) goto lab3;
                     if (ret < 0) return ret;
                 }
-                if (!(z->B[0])) goto lab4; /* Boolean test e_found, line 142 */
+                if (!(z->B[0])) goto lab3; /* Boolean test e_found, line 142 */
                 {   int ret = slice_del(z); /* delete, line 142 */
                     if (ret < 0) return ret;
                 }
                 break;
         }
-    lab4:
+    lab3:
         z->c = z->l - m5;
     }
     {   int m9 = z->l - z->c; (void)m9; /* do, line 146 */
-        if (out_grouping_b_U(z, g_v_I, 73, 232, 0)) goto lab9; /* non v_I, line 147 */
+        if (out_grouping_b_U(z, g_v_I, 73, 232, 0)) goto lab8; /* non v_I, line 147 */
         {   int m_test10 = z->l - z->c; /* test, line 148 */
-            if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab9; /* among, line 149 */
-            if (!(find_among_b(z, a_5, 4))) goto lab9;
-            if (out_grouping_b_U(z, g_v, 97, 232, 0)) goto lab9; /* non v, line 150 */
+            if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab8; /* among, line 149 */
+            if (!(find_among_b(z, a_5, 4))) goto lab8;
+            if (out_grouping_b_U(z, g_v, 97, 232, 0)) goto lab8; /* non v, line 150 */
             z->c = z->l - m_test10;
         }
         z->ket = z->c; /* [, line 152 */
         {   int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
-            if (ret < 0) goto lab9;
+            if (ret < 0) goto lab8;
             z->c = ret; /* next, line 152 */
         }
         z->bra = z->c; /* ], line 152 */
         {   int ret = slice_del(z); /* delete, line 152 */
             if (ret < 0) return ret;
         }
-    lab9:
+    lab8:
         z->c = z->l - m9;
     }
     return 1;
@@ -584,35 +584,27 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
 extern int dutch_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 159 */
         {   int ret = r_prelude(z); /* call prelude, line 159 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     {   int c2 = z->c; /* do, line 160 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 160 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = c2;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 161 */
 
     /* do, line 162 */
     {   int ret = r_standard_suffix(z); /* call standard_suffix, line 162 */
-        if (ret == 0) goto lab2;
         if (ret < 0) return ret;
     }
-lab2:
     z->c = z->lb;
     {   int c3 = z->c; /* do, line 163 */
         {   int ret = r_postlude(z); /* call postlude, line 163 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = c3;
     }
     return 1;
index ae206f654f6e69c8db48832191277ee83f1bfe63..e03c37c98a3bdd50f5b035607d45cc8826fc1ac5 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -383,8 +382,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
         z->c = c2;
     }
     {   int c3 = z->c; /* do, line 29 */
-        while(1) { /* repeat, line 29 */
-            int c4 = z->c;
+/* repeat, line 29 */
+
+        while(1) {            int c4 = z->c;
             while(1) { /* goto, line 29 */
                 int c5 = z->c;
                 if (in_grouping_U(z, g_v, 97, 121, 0)) goto lab4; /* grouping v, line 29 */
@@ -946,8 +946,9 @@ static int r_exception1(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     if (!(z->B[0])) return 0; /* Boolean test Y_found, line 203 */
-    while(1) { /* repeat, line 203 */
-        int c1 = z->c;
+/* repeat, line 203 */
+
+    while(1) {        int c1 = z->c;
         while(1) { /* goto, line 203 */
             int c2 = z->c;
             z->bra = z->c; /* [, line 203 */
@@ -997,91 +998,71 @@ extern int english_UTF_8_stem(struct SN_env * z) { /* forwardmode */
         z->c = c1;
         /* do, line 209 */
         {   int ret = r_prelude(z); /* call prelude, line 209 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         /* do, line 210 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 210 */
-            if (ret == 0) goto lab5;
             if (ret < 0) return ret;
         }
-    lab5:
         z->lb = z->c; z->c = z->l; /* backwards, line 211 */
 
         {   int m3 = z->l - z->c; (void)m3; /* do, line 213 */
             {   int ret = r_Step_1a(z); /* call Step_1a, line 213 */
-                if (ret == 0) goto lab6;
                 if (ret < 0) return ret;
             }
-        lab6:
             z->c = z->l - m3;
         }
         {   int m4 = z->l - z->c; (void)m4; /* or, line 215 */
             {   int ret = r_exception2(z); /* call exception2, line 215 */
-                if (ret == 0) goto lab8;
+                if (ret == 0) goto lab5;
                 if (ret < 0) return ret;
             }
-            goto lab7;
-        lab8:
+            goto lab4;
+        lab5:
             z->c = z->l - m4;
             {   int m5 = z->l - z->c; (void)m5; /* do, line 217 */
                 {   int ret = r_Step_1b(z); /* call Step_1b, line 217 */
-                    if (ret == 0) goto lab9;
                     if (ret < 0) return ret;
                 }
-            lab9:
                 z->c = z->l - m5;
             }
             {   int m6 = z->l - z->c; (void)m6; /* do, line 218 */
                 {   int ret = r_Step_1c(z); /* call Step_1c, line 218 */
-                    if (ret == 0) goto lab10;
                     if (ret < 0) return ret;
                 }
-            lab10:
                 z->c = z->l - m6;
             }
             {   int m7 = z->l - z->c; (void)m7; /* do, line 220 */
                 {   int ret = r_Step_2(z); /* call Step_2, line 220 */
-                    if (ret == 0) goto lab11;
                     if (ret < 0) return ret;
                 }
-            lab11:
                 z->c = z->l - m7;
             }
             {   int m8 = z->l - z->c; (void)m8; /* do, line 221 */
                 {   int ret = r_Step_3(z); /* call Step_3, line 221 */
-                    if (ret == 0) goto lab12;
                     if (ret < 0) return ret;
                 }
-            lab12:
                 z->c = z->l - m8;
             }
             {   int m9 = z->l - z->c; (void)m9; /* do, line 222 */
                 {   int ret = r_Step_4(z); /* call Step_4, line 222 */
-                    if (ret == 0) goto lab13;
                     if (ret < 0) return ret;
                 }
-            lab13:
                 z->c = z->l - m9;
             }
             {   int m10 = z->l - z->c; (void)m10; /* do, line 224 */
                 {   int ret = r_Step_5(z); /* call Step_5, line 224 */
-                    if (ret == 0) goto lab14;
                     if (ret < 0) return ret;
                 }
-            lab14:
                 z->c = z->l - m10;
             }
         }
-    lab7:
+    lab4:
         z->c = z->lb;
         {   int c11 = z->c; /* do, line 227 */
             {   int ret = r_postlude(z); /* call postlude, line 227 */
-                if (ret == 0) goto lab15;
                 if (ret < 0) return ret;
             }
-        lab15:
             z->c = c11;
         }
     }
index 0cbb64d65bfe80e0a83d84d9a2242464f1279bc5..d99456f32392348e1f071d87006f9332e6254a4e 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -659,10 +658,8 @@ static int r_tidy(struct SN_env * z) { /* backwardmode */
 extern int finnish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 186 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 186 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->B[0] = 0; /* unset ending_removed, line 187 */
@@ -670,63 +667,49 @@ extern int finnish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 189 */
         {   int ret = r_particle_etc(z); /* call particle_etc, line 189 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 190 */
         {   int ret = r_possessive(z); /* call possessive, line 190 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 191 */
         {   int ret = r_case_ending(z); /* call case_ending, line 191 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 192 */
         {   int ret = r_other_endings(z); /* call other_endings, line 192 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m5;
     }
     /* or, line 193 */
-    if (!(z->B[0])) goto lab6; /* Boolean test ending_removed, line 193 */
+    if (!(z->B[0])) goto lab1; /* Boolean test ending_removed, line 193 */
     {   int m6 = z->l - z->c; (void)m6; /* do, line 193 */
         {   int ret = r_i_plural(z); /* call i_plural, line 193 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m6;
     }
-    goto lab5;
-lab6:
+    goto lab0;
+lab1:
     {   int m7 = z->l - z->c; (void)m7; /* do, line 193 */
         {   int ret = r_t_plural(z); /* call t_plural, line 193 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = z->l - m7;
     }
-lab5:
+lab0:
     {   int m8 = z->l - z->c; (void)m8; /* do, line 194 */
         {   int ret = r_tidy(z); /* call tidy, line 194 */
-            if (ret == 0) goto lab9;
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = z->l - m8;
     }
     z->c = z->lb;
index 9e12865c678925e9d41779a1205f73b230340b56..fa4a1c8f30578e4d1c8bfbe8d0035b9c9ca1a6dd 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -416,8 +415,9 @@ static const symbol s_38[] = { 0xC3, 0xA7 };
 static const symbol s_39[] = { 'c' };
 
 static int r_prelude(struct SN_env * z) { /* forwardmode */
-    while(1) { /* repeat, line 38 */
-        int c1 = z->c;
+/* repeat, line 38 */
+
+    while(1) {        int c1 = z->c;
         while(1) { /* goto, line 38 */
             int c2 = z->c;
             {   int c3 = z->c; /* or, line 44 */
@@ -578,8 +578,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 79 */
-        int c1 = z->c;
+/* repeat, line 79 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 81 */
         if (z->c >= z->l || z->p[z->c + 0] >> 5 != 2 || !((35652352 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 7; else /* substring, line 81 */
         among_var = find_among(z, a_1, 7);
@@ -1137,8 +1138,7 @@ static int r_un_double(struct SN_env * z) { /* backwardmode */
 
 static int r_un_accent(struct SN_env * z) { /* backwardmode */
     {   int i = 1;
-        while(1) { /* atleast, line 222 */
-            if (out_grouping_b_U(z, g_v, 97, 251, 0)) goto lab0; /* non v, line 222 */
+        while(1) {            if (out_grouping_b_U(z, g_v, 97, 251, 0)) goto lab0; /* non v, line 222 */
             i--;
             continue;
         lab0:
@@ -1165,18 +1165,14 @@ lab1:
 extern int french_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 229 */
         {   int ret = r_prelude(z); /* call prelude, line 229 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 230 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 230 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 231 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 233 */
@@ -1184,84 +1180,78 @@ lab1:
             {   int m4 = z->l - z->c; (void)m4; /* and, line 239 */
                 {   int m5 = z->l - z->c; (void)m5; /* or, line 235 */
                     {   int ret = r_standard_suffix(z); /* call standard_suffix, line 235 */
-                        if (ret == 0) goto lab6;
+                        if (ret == 0) goto lab4;
                         if (ret < 0) return ret;
                     }
-                    goto lab5;
-                lab6:
+                    goto lab3;
+                lab4:
                     z->c = z->l - m5;
                     {   int ret = r_i_verb_suffix(z); /* call i_verb_suffix, line 236 */
-                        if (ret == 0) goto lab7;
+                        if (ret == 0) goto lab5;
                         if (ret < 0) return ret;
                     }
-                    goto lab5;
-                lab7:
+                    goto lab3;
+                lab5:
                     z->c = z->l - m5;
                     {   int ret = r_verb_suffix(z); /* call verb_suffix, line 237 */
-                        if (ret == 0) goto lab4;
+                        if (ret == 0) goto lab2;
                         if (ret < 0) return ret;
                     }
                 }
-            lab5:
+            lab3:
                 z->c = z->l - m4;
                 {   int m6 = z->l - z->c; (void)m6; /* try, line 240 */
                     z->ket = z->c; /* [, line 240 */
                     {   int m7 = z->l - z->c; (void)m7; /* or, line 240 */
-                        if (z->c <= z->lb || z->p[z->c - 1] != 'Y') goto lab10; /* literal, line 240 */
+                        if (z->c <= z->lb || z->p[z->c - 1] != 'Y') goto lab8; /* literal, line 240 */
                         z->c--;
                         z->bra = z->c; /* ], line 240 */
                         {   int ret = slice_from_s(z, 1, s_37); /* <-, line 240 */
                             if (ret < 0) return ret;
                         }
-                        goto lab9;
-                    lab10:
+                        goto lab7;
+                    lab8:
                         z->c = z->l - m7;
-                        if (!(eq_s_b(z, 2, s_38))) { z->c = z->l - m6; goto lab8; } /* literal, line 241 */
+                        if (!(eq_s_b(z, 2, s_38))) { z->c = z->l - m6; goto lab6; } /* literal, line 241 */
                         z->bra = z->c; /* ], line 241 */
                         {   int ret = slice_from_s(z, 1, s_39); /* <-, line 241 */
                             if (ret < 0) return ret;
                         }
                     }
-                lab9:
-                lab8:
+                lab7:
+                lab6:
                     ;
                 }
             }
-            goto lab3;
-        lab4:
+            goto lab1;
+        lab2:
             z->c = z->l - m3;
             {   int ret = r_residual_suffix(z); /* call residual_suffix, line 244 */
-                if (ret == 0) goto lab2;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab3:
-    lab2:
+    lab1:
+    lab0:
         z->c = z->l - m2;
     }
     {   int m8 = z->l - z->c; (void)m8; /* do, line 249 */
         {   int ret = r_un_double(z); /* call un_double, line 249 */
-            if (ret == 0) goto lab11;
             if (ret < 0) return ret;
         }
-    lab11:
         z->c = z->l - m8;
     }
     {   int m9 = z->l - z->c; (void)m9; /* do, line 250 */
         {   int ret = r_un_accent(z); /* call un_accent, line 250 */
-            if (ret == 0) goto lab12;
             if (ret < 0) return ret;
         }
-    lab12:
         z->c = z->l - m9;
     }
     z->c = z->lb;
     {   int c10 = z->c; /* do, line 252 */
         {   int ret = r_postlude(z); /* call postlude, line 252 */
-            if (ret == 0) goto lab13;
             if (ret < 0) return ret;
         }
-    lab13:
         z->c = c10;
     }
     return 1;
index 1a8b5924b4198674059d0e89d09c02c07d682dfd..41a3b4eec347b3fb7beed10573b510b5dee6b957 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -127,8 +126,9 @@ static const symbol s_11[] = { 'e', 'n' };
 
 static int r_prelude(struct SN_env * z) { /* forwardmode */
     {   int c_test1 = z->c; /* test, line 35 */
-        while(1) { /* repeat, line 35 */
-            int c2 = z->c;
+/* repeat, line 35 */
+
+        while(1) {            int c2 = z->c;
             {   int c3 = z->c; /* or, line 38 */
                 z->bra = z->c; /* [, line 37 */
                 if (!(eq_s(z, 2, s_0))) goto lab2; /* literal, line 37 */
@@ -152,8 +152,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
         }
         z->c = c_test1;
     }
-    while(1) { /* repeat, line 41 */
-        int c4 = z->c;
+/* repeat, line 41 */
+
+    while(1) {        int c4 = z->c;
         while(1) { /* goto, line 41 */
             int c5 = z->c;
             if (in_grouping_U(z, g_v, 97, 252, 0)) goto lab4; /* grouping v, line 42 */
@@ -237,8 +238,9 @@ lab0:
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 60 */
-        int c1 = z->c;
+/* repeat, line 60 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 62 */
         among_var = find_among(z, a_0, 6); /* substring, line 62 */
         if (!(among_var)) goto lab0;
@@ -469,35 +471,27 @@ static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
 extern int german_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 134 */
         {   int ret = r_prelude(z); /* call prelude, line 134 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     {   int c2 = z->c; /* do, line 135 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 135 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = c2;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 136 */
 
     /* do, line 137 */
     {   int ret = r_standard_suffix(z); /* call standard_suffix, line 137 */
-        if (ret == 0) goto lab2;
         if (ret < 0) return ret;
     }
-lab2:
     z->c = z->lb;
     {   int c3 = z->c; /* do, line 138 */
         {   int ret = r_postlude(z); /* call postlude, line 138 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = c3;
     }
     return 1;
index 6566d9cafb99e42ee08b8e4b7c0825f660ed7041..8810357358f87427be35a6cdf652a3096139d634 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -2358,143 +2357,144 @@ static const symbol s_105[] = { 0xCE, 0xBF, 0xCF, 0x85, 0xCE, 0xBC };
 static const symbol s_106[] = { 0xCE, 0xBC, 0xCE, 0xB1 };
 
 static int r_has_min_length(struct SN_env * z) { /* backwardmode */
-    if (!(len_utf8(z->p) >= 3)) return 0; /* $(<integer expression> >= <integer expression>), line 111 */
+    if (!(len_utf8(z->p) >= 3)) return 0; /* $(<integer expression> >= <integer expression>), line 109 */
     return 1;
 }
 
 static int r_tolower(struct SN_env * z) { /* backwardmode */
     int among_var;
-    while(1) { /* repeat, line 115 */
-        int m1 = z->l - z->c; (void)m1;
-        z->ket = z->c; /* [, line 116 */
-        among_var = find_among_b(z, a_0, 46); /* substring, line 116 */
+/* repeat, line 113 */
+
+    while(1) {        int m1 = z->l - z->c; (void)m1;
+        z->ket = z->c; /* [, line 114 */
+        among_var = find_among_b(z, a_0, 46); /* substring, line 114 */
         if (!(among_var)) goto lab0;
-        z->bra = z->c; /* ], line 116 */
-        switch (among_var) { /* among, line 116 */
+        z->bra = z->c; /* ], line 114 */
+        switch (among_var) { /* among, line 114 */
             case 1:
-                {   int ret = slice_from_s(z, 2, s_0); /* <-, line 117 */
+                {   int ret = slice_from_s(z, 2, s_0); /* <-, line 115 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 2:
-                {   int ret = slice_from_s(z, 2, s_1); /* <-, line 118 */
+                {   int ret = slice_from_s(z, 2, s_1); /* <-, line 116 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 3:
-                {   int ret = slice_from_s(z, 2, s_2); /* <-, line 119 */
+                {   int ret = slice_from_s(z, 2, s_2); /* <-, line 117 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 4:
-                {   int ret = slice_from_s(z, 2, s_3); /* <-, line 120 */
+                {   int ret = slice_from_s(z, 2, s_3); /* <-, line 118 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 5:
-                {   int ret = slice_from_s(z, 2, s_4); /* <-, line 121 */
+                {   int ret = slice_from_s(z, 2, s_4); /* <-, line 119 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 6:
-                {   int ret = slice_from_s(z, 2, s_5); /* <-, line 122 */
+                {   int ret = slice_from_s(z, 2, s_5); /* <-, line 120 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 7:
-                {   int ret = slice_from_s(z, 2, s_6); /* <-, line 123 */
+                {   int ret = slice_from_s(z, 2, s_6); /* <-, line 121 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 8:
-                {   int ret = slice_from_s(z, 2, s_7); /* <-, line 124 */
+                {   int ret = slice_from_s(z, 2, s_7); /* <-, line 122 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 9:
-                {   int ret = slice_from_s(z, 2, s_8); /* <-, line 125 */
+                {   int ret = slice_from_s(z, 2, s_8); /* <-, line 123 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 10:
-                {   int ret = slice_from_s(z, 2, s_9); /* <-, line 126 */
+                {   int ret = slice_from_s(z, 2, s_9); /* <-, line 124 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 11:
-                {   int ret = slice_from_s(z, 2, s_10); /* <-, line 127 */
+                {   int ret = slice_from_s(z, 2, s_10); /* <-, line 125 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 12:
-                {   int ret = slice_from_s(z, 2, s_11); /* <-, line 128 */
+                {   int ret = slice_from_s(z, 2, s_11); /* <-, line 126 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 13:
-                {   int ret = slice_from_s(z, 2, s_12); /* <-, line 129 */
+                {   int ret = slice_from_s(z, 2, s_12); /* <-, line 127 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 14:
-                {   int ret = slice_from_s(z, 2, s_13); /* <-, line 130 */
+                {   int ret = slice_from_s(z, 2, s_13); /* <-, line 128 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 15:
-                {   int ret = slice_from_s(z, 2, s_14); /* <-, line 131 */
+                {   int ret = slice_from_s(z, 2, s_14); /* <-, line 129 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 16:
-                {   int ret = slice_from_s(z, 2, s_15); /* <-, line 132 */
+                {   int ret = slice_from_s(z, 2, s_15); /* <-, line 130 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 17:
-                {   int ret = slice_from_s(z, 2, s_16); /* <-, line 133 */
+                {   int ret = slice_from_s(z, 2, s_16); /* <-, line 131 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 18:
-                {   int ret = slice_from_s(z, 2, s_17); /* <-, line 134 */
+                {   int ret = slice_from_s(z, 2, s_17); /* <-, line 132 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 19:
-                {   int ret = slice_from_s(z, 2, s_18); /* <-, line 135 */
+                {   int ret = slice_from_s(z, 2, s_18); /* <-, line 133 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 20:
-                {   int ret = slice_from_s(z, 2, s_19); /* <-, line 136 */
+                {   int ret = slice_from_s(z, 2, s_19); /* <-, line 134 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 21:
-                {   int ret = slice_from_s(z, 2, s_20); /* <-, line 137 */
+                {   int ret = slice_from_s(z, 2, s_20); /* <-, line 135 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 22:
-                {   int ret = slice_from_s(z, 2, s_21); /* <-, line 138 */
+                {   int ret = slice_from_s(z, 2, s_21); /* <-, line 136 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 23:
-                {   int ret = slice_from_s(z, 2, s_22); /* <-, line 139 */
+                {   int ret = slice_from_s(z, 2, s_22); /* <-, line 137 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 24:
-                {   int ret = slice_from_s(z, 2, s_23); /* <-, line 140 */
+                {   int ret = slice_from_s(z, 2, s_23); /* <-, line 138 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 25:
                 {   int ret = skip_utf8(z->p, z->c, z->lb, 0, -1);
                     if (ret < 0) goto lab0;
-                    z->c = ret; /* next, line 162 */
+                    z->c = ret; /* next, line 160 */
                 }
                 break;
         }
@@ -2508,114 +2508,96 @@ static int r_tolower(struct SN_env * z) { /* backwardmode */
 
 static int r_step1(struct SN_env * z) { /* backwardmode */
     int among_var;
-    z->ket = z->c; /* [, line 168 */
-    among_var = find_among_b(z, a_1, 40); /* substring, line 168 */
+    z->ket = z->c; /* [, line 166 */
+    among_var = find_among_b(z, a_1, 40); /* substring, line 166 */
     if (!(among_var)) return 0;
-    z->bra = z->c; /* ], line 168 */
-    switch (among_var) { /* among, line 168 */
+    z->bra = z->c; /* ], line 166 */
+    switch (among_var) { /* among, line 166 */
         case 1:
-            {   int ret = slice_from_s(z, 4, s_24); /* <-, line 169 */
+            {   int ret = slice_from_s(z, 4, s_24); /* <-, line 167 */
                 if (ret < 0) return ret;
             }
             break;
         case 2:
-            {   int ret = slice_from_s(z, 6, s_25); /* <-, line 170 */
+            {   int ret = slice_from_s(z, 6, s_25); /* <-, line 168 */
                 if (ret < 0) return ret;
             }
             break;
         case 3:
-            {   int ret = slice_from_s(z, 6, s_26); /* <-, line 171 */
+            {   int ret = slice_from_s(z, 6, s_26); /* <-, line 169 */
                 if (ret < 0) return ret;
             }
             break;
         case 4:
-            {   int ret = slice_from_s(z, 4, s_27); /* <-, line 172 */
+            {   int ret = slice_from_s(z, 4, s_27); /* <-, line 170 */
                 if (ret < 0) return ret;
             }
             break;
         case 5:
-            {   int ret = slice_from_s(z, 8, s_28); /* <-, line 173 */
+            {   int ret = slice_from_s(z, 8, s_28); /* <-, line 171 */
                 if (ret < 0) return ret;
             }
             break;
         case 6:
-            {   int ret = slice_from_s(z, 6, s_29); /* <-, line 174 */
+            {   int ret = slice_from_s(z, 6, s_29); /* <-, line 172 */
                 if (ret < 0) return ret;
             }
             break;
         case 7:
-            {   int ret = slice_from_s(z, 6, s_30); /* <-, line 175 */
+            {   int ret = slice_from_s(z, 6, s_30); /* <-, line 173 */
                 if (ret < 0) return ret;
             }
             break;
         case 8:
-            {   int ret = slice_from_s(z, 6, s_31); /* <-, line 176 */
+            {   int ret = slice_from_s(z, 6, s_31); /* <-, line 174 */
                 if (ret < 0) return ret;
             }
             break;
         case 9:
-            {   int ret = slice_from_s(z, 4, s_32); /* <-, line 177 */
+            {   int ret = slice_from_s(z, 4, s_32); /* <-, line 175 */
                 if (ret < 0) return ret;
             }
             break;
         case 10:
-            {   int ret = slice_from_s(z, 12, s_33); /* <-, line 178 */
+            {   int ret = slice_from_s(z, 12, s_33); /* <-, line 176 */
                 if (ret < 0) return ret;
             }
             break;
         case 11:
-            {   int ret = slice_from_s(z, 10, s_34); /* <-, line 179 */
+            {   int ret = slice_from_s(z, 10, s_34); /* <-, line 177 */
                 if (ret < 0) return ret;
             }
             break;
     }
-    z->B[0] = 0; /* unset test1, line 181 */
+    z->B[0] = 0; /* unset test1, line 179 */
     return 1;
 }
 
 static int r_steps1(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 185 */
-    if (!(find_among_b(z, a_4, 14))) return 0; /* substring, line 185 */
-    z->bra = z->c; /* ], line 185 */
-    {   int ret = slice_del(z); /* delete, line 188 */
+    z->ket = z->c; /* [, line 183 */
+    if (!(find_among_b(z, a_4, 14))) return 0; /* substring, line 183 */
+    z->bra = z->c; /* ], line 183 */
+    {   int ret = slice_del(z); /* delete, line 186 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 189 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 193 */
-        z->ket = z->c; /* [, line 190 */
-        if (z->c - 3 <= z->lb || z->p[z->c - 1] >> 5 != 5 || !((-2145255424 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab1; /* substring, line 190 */
+    z->B[0] = 0; /* unset test1, line 187 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 191 */
+        z->ket = z->c; /* [, line 188 */
+        z->bra = z->c; /* ], line 188 */
+        if (z->c - 3 <= z->lb || z->p[z->c - 1] >> 5 != 5 || !((-2145255424 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab1; /* substring, line 188 */
         if (!(find_among_b(z, a_2, 9))) goto lab1;
-        z->bra = z->c; /* ], line 190 */
-        if (z->c > z->lb) goto lab1; /* atlimit, line 190 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 192 */
-        if (z->S[0] == 0) return -1; /* -> s, line 192 */
-        {   int ret = slice_from_s(z, 2, s_35); /* <-, line 192 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 192 */
-                z->c = saved_c;
-            }
+        if (z->c > z->lb) goto lab1; /* atlimit, line 188 */
+        {   int ret = slice_from_s(z, 2, s_35); /* <-, line 190 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 194 */
-        if (!(find_among_b(z, a_3, 22))) return 0; /* substring, line 194 */
-        z->bra = z->c; /* ], line 194 */
-        if (z->c > z->lb) return 0; /* atlimit, line 194 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 198 */
-        if (z->S[0] == 0) return -1; /* -> s, line 198 */
-        {   int ret = slice_from_s(z, 4, s_36); /* <-, line 198 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 198 */
-                z->c = saved_c;
-            }
+        z->ket = z->c; /* [, line 192 */
+        z->bra = z->c; /* ], line 192 */
+        if (!(find_among_b(z, a_3, 22))) return 0; /* substring, line 192 */
+        if (z->c > z->lb) return 0; /* atlimit, line 192 */
+        {   int ret = slice_from_s(z, 4, s_36); /* <-, line 196 */
             if (ret < 0) return ret;
         }
     }
@@ -2624,83 +2606,56 @@ lab0:
 }
 
 static int r_steps2(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 205 */
-    if (!(find_among_b(z, a_6, 7))) return 0; /* substring, line 205 */
-    z->bra = z->c; /* ], line 205 */
-    {   int ret = slice_del(z); /* delete, line 207 */
+    z->ket = z->c; /* [, line 203 */
+    if (!(find_among_b(z, a_6, 7))) return 0; /* substring, line 203 */
+    z->bra = z->c; /* ], line 203 */
+    {   int ret = slice_del(z); /* delete, line 205 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 208 */
-    z->ket = z->c; /* [, line 209 */
-    if (!(find_among_b(z, a_5, 8))) return 0; /* substring, line 209 */
-    z->bra = z->c; /* ], line 209 */
-    if (z->c > z->lb) return 0; /* atlimit, line 209 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 210 */
-    if (z->S[0] == 0) return -1; /* -> s, line 210 */
-    {   int ret = slice_from_s(z, 4, s_37); /* <-, line 210 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 210 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 206 */
+    z->ket = z->c; /* [, line 207 */
+    z->bra = z->c; /* ], line 207 */
+    if (!(find_among_b(z, a_5, 8))) return 0; /* substring, line 207 */
+    if (z->c > z->lb) return 0; /* atlimit, line 207 */
+    {   int ret = slice_from_s(z, 4, s_37); /* <-, line 208 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_steps3(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 217 */
-    if (!(find_among_b(z, a_9, 7))) return 0; /* substring, line 217 */
-    z->bra = z->c; /* ], line 217 */
-    {   int ret = slice_del(z); /* delete, line 219 */
+    z->ket = z->c; /* [, line 215 */
+    if (!(find_among_b(z, a_9, 7))) return 0; /* substring, line 215 */
+    z->bra = z->c; /* ], line 215 */
+    {   int ret = slice_del(z); /* delete, line 217 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 220 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 221 */
-        if (!(eq_s_b(z, 6, s_38))) goto lab1; /* literal, line 221 */
-        if (z->c > z->lb) goto lab1; /* atlimit, line 221 */
-        {   int ret = slice_from_s(z, 4, s_39); /* <-, line 221 */
+    z->B[0] = 0; /* unset test1, line 218 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 219 */
+        if (!(eq_s_b(z, 6, s_38))) goto lab1; /* literal, line 219 */
+        if (z->c > z->lb) goto lab1; /* atlimit, line 219 */
+        {   int ret = slice_from_s(z, 4, s_39); /* <-, line 219 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 222 */
-        if (z->c - 3 <= z->lb || z->p[z->c - 1] >> 5 != 5 || !((-2145255424 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab2; /* substring, line 222 */
+        z->ket = z->c; /* [, line 220 */
+        z->bra = z->c; /* ], line 220 */
+        if (z->c - 3 <= z->lb || z->p[z->c - 1] >> 5 != 5 || !((-2145255424 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab2; /* substring, line 220 */
         if (!(find_among_b(z, a_7, 19))) goto lab2;
-        z->bra = z->c; /* ], line 222 */
-        if (z->c > z->lb) goto lab2; /* atlimit, line 222 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 226 */
-        if (z->S[0] == 0) return -1; /* -> s, line 226 */
-        {   int ret = slice_from_s(z, 2, s_40); /* <-, line 226 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 226 */
-                z->c = saved_c;
-            }
+        if (z->c > z->lb) goto lab2; /* atlimit, line 220 */
+        {   int ret = slice_from_s(z, 2, s_40); /* <-, line 224 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab2:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 228 */
-        if (!(find_among_b(z, a_8, 13))) return 0; /* substring, line 228 */
-        z->bra = z->c; /* ], line 228 */
-        if (z->c > z->lb) return 0; /* atlimit, line 228 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 231 */
-        if (z->S[0] == 0) return -1; /* -> s, line 231 */
-        {   int ret = slice_from_s(z, 4, s_41); /* <-, line 231 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 231 */
-                z->c = saved_c;
-            }
+        z->ket = z->c; /* [, line 226 */
+        z->bra = z->c; /* ], line 226 */
+        if (!(find_among_b(z, a_8, 13))) return 0; /* substring, line 226 */
+        if (z->c > z->lb) return 0; /* atlimit, line 226 */
+        {   int ret = slice_from_s(z, 4, s_41); /* <-, line 229 */
             if (ret < 0) return ret;
         }
     }
@@ -2709,76 +2664,49 @@ lab0:
 }
 
 static int r_steps4(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 238 */
-    if (!(find_among_b(z, a_11, 7))) return 0; /* substring, line 238 */
-    z->bra = z->c; /* ], line 238 */
-    {   int ret = slice_del(z); /* delete, line 240 */
+    z->ket = z->c; /* [, line 236 */
+    if (!(find_among_b(z, a_11, 7))) return 0; /* substring, line 236 */
+    z->bra = z->c; /* ], line 236 */
+    {   int ret = slice_del(z); /* delete, line 238 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 241 */
-    z->ket = z->c; /* [, line 242 */
-    if (z->c - 3 <= z->lb || z->p[z->c - 1] >> 5 != 5 || !((-2145255424 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 242 */
+    z->B[0] = 0; /* unset test1, line 239 */
+    z->ket = z->c; /* [, line 240 */
+    z->bra = z->c; /* ], line 240 */
+    if (z->c - 3 <= z->lb || z->p[z->c - 1] >> 5 != 5 || !((-2145255424 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 240 */
     if (!(find_among_b(z, a_10, 19))) return 0;
-    z->bra = z->c; /* ], line 242 */
-    if (z->c > z->lb) return 0; /* atlimit, line 242 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 246 */
-    if (z->S[0] == 0) return -1; /* -> s, line 246 */
-    {   int ret = slice_from_s(z, 2, s_42); /* <-, line 246 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 246 */
-            z->c = saved_c;
-        }
+    if (z->c > z->lb) return 0; /* atlimit, line 240 */
+    {   int ret = slice_from_s(z, 2, s_42); /* <-, line 244 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_steps5(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 253 */
-    if (!(find_among_b(z, a_14, 11))) return 0; /* substring, line 253 */
-    z->bra = z->c; /* ], line 253 */
-    {   int ret = slice_del(z); /* delete, line 256 */
+    z->ket = z->c; /* [, line 251 */
+    if (!(find_among_b(z, a_14, 11))) return 0; /* substring, line 251 */
+    z->bra = z->c; /* ], line 251 */
+    {   int ret = slice_del(z); /* delete, line 254 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 257 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 261 */
-        z->ket = z->c; /* [, line 258 */
-        if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 181 && z->p[z->c - 1] != 191)) goto lab1; /* substring, line 258 */
+    z->B[0] = 0; /* unset test1, line 255 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 259 */
+        z->ket = z->c; /* [, line 256 */
+        z->bra = z->c; /* ], line 256 */
+        if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 181 && z->p[z->c - 1] != 191)) goto lab1; /* substring, line 256 */
         if (!(find_among_b(z, a_12, 7))) goto lab1;
-        z->bra = z->c; /* ], line 258 */
-        if (z->c > z->lb) goto lab1; /* atlimit, line 258 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 260 */
-        if (z->S[0] == 0) return -1; /* -> s, line 260 */
-        {   int ret = slice_from_s(z, 2, s_43); /* <-, line 260 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 260 */
-                z->c = saved_c;
-            }
+        if (z->c > z->lb) goto lab1; /* atlimit, line 256 */
+        {   int ret = slice_from_s(z, 2, s_43); /* <-, line 258 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 262 */
-        if (!(find_among_b(z, a_13, 33))) return 0; /* substring, line 262 */
-        z->bra = z->c; /* ], line 262 */
-        if (z->c > z->lb) return 0; /* atlimit, line 262 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 266 */
-        if (z->S[0] == 0) return -1; /* -> s, line 266 */
-        {   int ret = slice_from_s(z, 6, s_44); /* <-, line 266 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 266 */
-                z->c = saved_c;
-            }
+        z->ket = z->c; /* [, line 260 */
+        z->bra = z->c; /* ], line 260 */
+        if (!(find_among_b(z, a_13, 33))) return 0; /* substring, line 260 */
+        if (z->c > z->lb) return 0; /* atlimit, line 260 */
+        {   int ret = slice_from_s(z, 6, s_44); /* <-, line 264 */
             if (ret < 0) return ret;
         }
     }
@@ -2788,107 +2716,89 @@ lab0:
 
 static int r_steps6(struct SN_env * z) { /* backwardmode */
     int among_var;
-    z->ket = z->c; /* [, line 273 */
-    if (!(find_among_b(z, a_18, 6))) return 0; /* substring, line 273 */
-    z->bra = z->c; /* ], line 273 */
-    {   int ret = slice_del(z); /* delete, line 275 */
+    z->ket = z->c; /* [, line 271 */
+    if (!(find_among_b(z, a_18, 6))) return 0; /* substring, line 271 */
+    z->bra = z->c; /* ], line 271 */
+    {   int ret = slice_del(z); /* delete, line 273 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 276 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 280 */
-        z->ket = z->c; /* [, line 277 */
-        if (z->c - 3 <= z->lb || z->p[z->c - 1] != 181) goto lab1; /* substring, line 277 */
+    z->B[0] = 0; /* unset test1, line 274 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 278 */
+        z->ket = z->c; /* [, line 275 */
+        z->bra = z->c; /* ], line 275 */
+        if (z->c - 3 <= z->lb || z->p[z->c - 1] != 181) goto lab1; /* substring, line 275 */
         if (!(find_among_b(z, a_15, 5))) goto lab1;
-        z->bra = z->c; /* ], line 277 */
-        if (z->c > z->lb) goto lab1; /* atlimit, line 277 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 279 */
-        if (z->S[0] == 0) return -1; /* -> s, line 279 */
-        {   int ret = slice_from_s(z, 6, s_45); /* <-, line 279 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 279 */
-                z->c = saved_c;
-            }
+        if (z->c > z->lb) goto lab1; /* atlimit, line 275 */
+        {   int ret = slice_from_s(z, 6, s_45); /* <-, line 277 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 281 */
-        if (z->c - 7 <= z->lb || z->p[z->c - 1] != 181) goto lab2; /* substring, line 281 */
+        z->ket = z->c; /* [, line 279 */
+        z->bra = z->c; /* ], line 279 */
+        if (z->c - 7 <= z->lb || z->p[z->c - 1] != 181) goto lab2; /* substring, line 279 */
         if (!(find_among_b(z, a_16, 2))) goto lab2;
-        z->bra = z->c; /* ], line 281 */
-        if (z->c > z->lb) goto lab2; /* atlimit, line 281 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 283 */
-        if (z->S[0] == 0) return -1; /* -> s, line 283 */
-        {   int ret = slice_from_s(z, 2, s_46); /* <-, line 283 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 283 */
-                z->c = saved_c;
-            }
+        if (z->c > z->lb) goto lab2; /* atlimit, line 279 */
+        {   int ret = slice_from_s(z, 2, s_46); /* <-, line 281 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab2:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 285 */
-        if (z->c - 9 <= z->lb || (z->p[z->c - 1] != 186 && z->p[z->c - 1] != 189)) return 0; /* substring, line 285 */
+        z->ket = z->c; /* [, line 283 */
+        if (z->c - 9 <= z->lb || (z->p[z->c - 1] != 186 && z->p[z->c - 1] != 189)) return 0; /* substring, line 283 */
         among_var = find_among_b(z, a_17, 10);
         if (!(among_var)) return 0;
-        z->bra = z->c; /* ], line 285 */
-        switch (among_var) { /* among, line 285 */
+        z->bra = z->c; /* ], line 283 */
+        switch (among_var) { /* among, line 283 */
             case 1:
-                {   int ret = slice_from_s(z, 12, s_47); /* <-, line 286 */
+                {   int ret = slice_from_s(z, 12, s_47); /* <-, line 284 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 2:
-                {   int ret = slice_from_s(z, 8, s_48); /* <-, line 287 */
+                {   int ret = slice_from_s(z, 8, s_48); /* <-, line 285 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 3:
-                {   int ret = slice_from_s(z, 10, s_49); /* <-, line 288 */
+                {   int ret = slice_from_s(z, 10, s_49); /* <-, line 286 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 4:
-                {   int ret = slice_from_s(z, 6, s_50); /* <-, line 289 */
+                {   int ret = slice_from_s(z, 6, s_50); /* <-, line 287 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 5:
-                {   int ret = slice_from_s(z, 12, s_51); /* <-, line 290 */
+                {   int ret = slice_from_s(z, 12, s_51); /* <-, line 288 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 6:
-                {   int ret = slice_from_s(z, 10, s_52); /* <-, line 291 */
+                {   int ret = slice_from_s(z, 10, s_52); /* <-, line 289 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 7:
-                {   int ret = slice_from_s(z, 6, s_53); /* <-, line 292 */
+                {   int ret = slice_from_s(z, 6, s_53); /* <-, line 290 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 8:
-                {   int ret = slice_from_s(z, 16, s_54); /* <-, line 293 */
+                {   int ret = slice_from_s(z, 16, s_54); /* <-, line 291 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 9:
-                {   int ret = slice_from_s(z, 12, s_55); /* <-, line 294 */
+                {   int ret = slice_from_s(z, 12, s_55); /* <-, line 292 */
                     if (ret < 0) return ret;
                 }
                 break;
             case 10:
-                {   int ret = slice_from_s(z, 10, s_56); /* <-, line 295 */
+                {   int ret = slice_from_s(z, 10, s_56); /* <-, line 293 */
                     if (ret < 0) return ret;
                 }
                 break;
@@ -2899,94 +2809,58 @@ lab0:
 }
 
 static int r_steps7(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 302 */
-    if (z->c - 9 <= z->lb || (z->p[z->c - 1] != 177 && z->p[z->c - 1] != 185)) return 0; /* substring, line 302 */
+    z->ket = z->c; /* [, line 300 */
+    if (z->c - 9 <= z->lb || (z->p[z->c - 1] != 177 && z->p[z->c - 1] != 185)) return 0; /* substring, line 300 */
     if (!(find_among_b(z, a_20, 4))) return 0;
-    z->bra = z->c; /* ], line 302 */
-    {   int ret = slice_del(z); /* delete, line 304 */
+    z->bra = z->c; /* ], line 300 */
+    {   int ret = slice_del(z); /* delete, line 302 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 305 */
-    z->ket = z->c; /* [, line 306 */
-    if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 135)) return 0; /* substring, line 306 */
+    z->B[0] = 0; /* unset test1, line 303 */
+    z->ket = z->c; /* [, line 304 */
+    z->bra = z->c; /* ], line 304 */
+    if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 135)) return 0; /* substring, line 304 */
     if (!(find_among_b(z, a_19, 2))) return 0;
-    z->bra = z->c; /* ], line 306 */
-    if (z->c > z->lb) return 0; /* atlimit, line 306 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 308 */
-    if (z->S[0] == 0) return -1; /* -> s, line 308 */
-    {   int ret = slice_from_s(z, 8, s_57); /* <-, line 308 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 308 */
-            z->c = saved_c;
-        }
+    if (z->c > z->lb) return 0; /* atlimit, line 304 */
+    {   int ret = slice_from_s(z, 8, s_57); /* <-, line 306 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_steps8(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 315 */
-    if (!(find_among_b(z, a_23, 8))) return 0; /* substring, line 315 */
-    z->bra = z->c; /* ], line 315 */
-    {   int ret = slice_del(z); /* delete, line 317 */
+    z->ket = z->c; /* [, line 313 */
+    if (!(find_among_b(z, a_23, 8))) return 0; /* substring, line 313 */
+    z->bra = z->c; /* ], line 313 */
+    {   int ret = slice_del(z); /* delete, line 315 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 318 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 325 */
-        z->ket = z->c; /* [, line 319 */
-        if (!(find_among_b(z, a_21, 33))) goto lab1; /* substring, line 319 */
-        z->bra = z->c; /* ], line 319 */
-        if (z->c > z->lb) goto lab1; /* atlimit, line 319 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 324 */
-        if (z->S[0] == 0) return -1; /* -> s, line 324 */
-        {   int ret = slice_from_s(z, 4, s_58); /* <-, line 324 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 324 */
-                z->c = saved_c;
-            }
+    z->B[0] = 0; /* unset test1, line 316 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 323 */
+        z->ket = z->c; /* [, line 317 */
+        z->bra = z->c; /* ], line 317 */
+        if (!(find_among_b(z, a_21, 33))) goto lab1; /* substring, line 317 */
+        if (z->c > z->lb) goto lab1; /* atlimit, line 317 */
+        {   int ret = slice_from_s(z, 4, s_58); /* <-, line 322 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 326 */
-        if (!(find_among_b(z, a_22, 15))) goto lab2; /* substring, line 326 */
-        z->bra = z->c; /* ], line 326 */
-        if (z->c > z->lb) goto lab2; /* atlimit, line 326 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 329 */
-        if (z->S[0] == 0) return -1; /* -> s, line 329 */
-        {   int ret = slice_from_s(z, 6, s_59); /* <-, line 329 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 329 */
-                z->c = saved_c;
-            }
+        z->ket = z->c; /* [, line 324 */
+        z->bra = z->c; /* ], line 324 */
+        if (!(find_among_b(z, a_22, 15))) goto lab2; /* substring, line 324 */
+        if (z->c > z->lb) goto lab2; /* atlimit, line 324 */
+        {   int ret = slice_from_s(z, 6, s_59); /* <-, line 327 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab2:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 331 */
-        if (!(eq_s_b(z, 6, s_60))) return 0; /* literal, line 331 */
-        z->bra = z->c; /* ], line 331 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 331 */
-        if (z->S[0] == 0) return -1; /* -> s, line 331 */
-        {   int ret = slice_from_s(z, 6, s_61); /* <-, line 331 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 331 */
-                z->c = saved_c;
-            }
+        z->ket = z->c; /* [, line 329 */
+        z->bra = z->c; /* ], line 329 */
+        if (!(eq_s_b(z, 6, s_60))) return 0; /* literal, line 329 */
+        {   int ret = slice_from_s(z, 6, s_61); /* <-, line 329 */
             if (ret < 0) return ret;
         }
     }
@@ -2995,48 +2869,30 @@ lab0:
 }
 
 static int r_steps9(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 337 */
-    if (z->c - 7 <= z->lb || z->p[z->c - 1] >> 5 != 5 || !((-1610481664 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 337 */
+    z->ket = z->c; /* [, line 335 */
+    if (z->c - 7 <= z->lb || z->p[z->c - 1] >> 5 != 5 || !((-1610481664 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0; /* substring, line 335 */
     if (!(find_among_b(z, a_26, 3))) return 0;
-    z->bra = z->c; /* ], line 337 */
-    {   int ret = slice_del(z); /* delete, line 339 */
+    z->bra = z->c; /* ], line 335 */
+    {   int ret = slice_del(z); /* delete, line 337 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 340 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 343 */
-        z->ket = z->c; /* [, line 341 */
-        if (!(find_among_b(z, a_24, 4))) goto lab1; /* substring, line 341 */
-        z->bra = z->c; /* ], line 341 */
-        if (z->c > z->lb) goto lab1; /* atlimit, line 341 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 342 */
-        if (z->S[0] == 0) return -1; /* -> s, line 342 */
-        {   int ret = slice_from_s(z, 4, s_62); /* <-, line 342 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 342 */
-                z->c = saved_c;
-            }
+    z->B[0] = 0; /* unset test1, line 338 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 341 */
+        z->ket = z->c; /* [, line 339 */
+        z->bra = z->c; /* ], line 339 */
+        if (!(find_among_b(z, a_24, 4))) goto lab1; /* substring, line 339 */
+        if (z->c > z->lb) goto lab1; /* atlimit, line 339 */
+        {   int ret = slice_from_s(z, 4, s_62); /* <-, line 340 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 344 */
-        if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 181 && z->p[z->c - 1] != 189)) return 0; /* substring, line 344 */
+        z->ket = z->c; /* [, line 342 */
+        z->bra = z->c; /* ], line 342 */
+        if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 181 && z->p[z->c - 1] != 189)) return 0; /* substring, line 342 */
         if (!(find_among_b(z, a_25, 2))) return 0;
-        z->bra = z->c; /* ], line 344 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 345 */
-        if (z->S[0] == 0) return -1; /* -> s, line 345 */
-        {   int ret = slice_from_s(z, 4, s_63); /* <-, line 345 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 345 */
-                z->c = saved_c;
-            }
+        {   int ret = slice_from_s(z, 4, s_63); /* <-, line 343 */
             if (ret < 0) return ret;
         }
     }
@@ -3045,51 +2901,42 @@ lab0:
 }
 
 static int r_steps10(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 352 */
-    if (!(find_among_b(z, a_28, 4))) return 0; /* substring, line 352 */
-    z->bra = z->c; /* ], line 352 */
-    {   int ret = slice_del(z); /* delete, line 354 */
+    z->ket = z->c; /* [, line 350 */
+    if (!(find_among_b(z, a_28, 4))) return 0; /* substring, line 350 */
+    z->bra = z->c; /* ], line 350 */
+    {   int ret = slice_del(z); /* delete, line 352 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 355 */
-    z->ket = z->c; /* [, line 356 */
-    if (!(find_among_b(z, a_27, 7))) return 0; /* substring, line 356 */
-    z->bra = z->c; /* ], line 356 */
-    if (z->c > z->lb) return 0; /* atlimit, line 356 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 358 */
-    if (z->S[0] == 0) return -1; /* -> s, line 358 */
-    {   int ret = slice_from_s(z, 6, s_64); /* <-, line 358 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 358 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 353 */
+    z->ket = z->c; /* [, line 354 */
+    z->bra = z->c; /* ], line 354 */
+    if (!(find_among_b(z, a_27, 7))) return 0; /* substring, line 354 */
+    if (z->c > z->lb) return 0; /* atlimit, line 354 */
+    {   int ret = slice_from_s(z, 6, s_64); /* <-, line 356 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step2a(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 365 */
-    if (z->c - 7 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 189)) return 0; /* substring, line 365 */
+    z->ket = z->c; /* [, line 363 */
+    if (z->c - 7 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 189)) return 0; /* substring, line 363 */
     if (!(find_among_b(z, a_29, 2))) return 0;
-    z->bra = z->c; /* ], line 365 */
-    {   int ret = slice_del(z); /* delete, line 366 */
+    z->bra = z->c; /* ], line 363 */
+    {   int ret = slice_del(z); /* delete, line 364 */
         if (ret < 0) return ret;
     }
-    {   int m1 = z->l - z->c; (void)m1; /* not, line 368 */
-        z->ket = z->c; /* [, line 368 */
-        if (!(find_among_b(z, a_30, 10))) goto lab0; /* substring, line 368 */
-        z->bra = z->c; /* ], line 368 */
+    {   int m1 = z->l - z->c; (void)m1; /* not, line 366 */
+        z->ket = z->c; /* [, line 366 */
+        if (!(find_among_b(z, a_30, 10))) goto lab0; /* substring, line 366 */
+        z->bra = z->c; /* ], line 366 */
         return 0;
     lab0:
         z->c = z->l - m1;
     }
     {   int ret;
         {   int saved_c = z->c;
-            ret = insert_s(z, z->c, z->c, 4, s_65); /* <+, line 371 */
+            ret = insert_s(z, z->c, z->c, 4, s_65); /* <+, line 369 */
             z->c = saved_c;
         }
         if (ret < 0) return ret;
@@ -3098,405 +2945,270 @@ static int r_step2a(struct SN_env * z) { /* backwardmode */
 }
 
 static int r_step2b(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 375 */
-    if (z->c - 7 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 189)) return 0; /* substring, line 375 */
+    z->ket = z->c; /* [, line 373 */
+    if (z->c - 7 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 189)) return 0; /* substring, line 373 */
     if (!(find_among_b(z, a_31, 2))) return 0;
-    z->bra = z->c; /* ], line 375 */
-    {   int ret = slice_del(z); /* delete, line 376 */
+    z->bra = z->c; /* ], line 373 */
+    {   int ret = slice_del(z); /* delete, line 374 */
         if (ret < 0) return ret;
     }
-    z->ket = z->c; /* [, line 378 */
-    if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 128 && z->p[z->c - 1] != 187)) return 0; /* substring, line 378 */
+    z->ket = z->c; /* [, line 376 */
+    z->bra = z->c; /* ], line 376 */
+    if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 128 && z->p[z->c - 1] != 187)) return 0; /* substring, line 376 */
     if (!(find_among_b(z, a_32, 8))) return 0;
-    z->bra = z->c; /* ], line 378 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 379 */
-    if (z->S[0] == 0) return -1; /* -> s, line 379 */
-    {   int ret = slice_from_s(z, 4, s_66); /* <-, line 379 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 379 */
-            z->c = saved_c;
-        }
+    {   int ret = slice_from_s(z, 4, s_66); /* <-, line 377 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step2c(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 384 */
-    if (z->c - 9 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 189)) return 0; /* substring, line 384 */
+    z->ket = z->c; /* [, line 382 */
+    if (z->c - 9 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 189)) return 0; /* substring, line 382 */
     if (!(find_among_b(z, a_33, 2))) return 0;
-    z->bra = z->c; /* ], line 384 */
-    {   int ret = slice_del(z); /* delete, line 385 */
+    z->bra = z->c; /* ], line 382 */
+    {   int ret = slice_del(z); /* delete, line 383 */
         if (ret < 0) return ret;
     }
-    z->ket = z->c; /* [, line 387 */
-    if (!(find_among_b(z, a_34, 15))) return 0; /* substring, line 387 */
-    z->bra = z->c; /* ], line 387 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 389 */
-    if (z->S[0] == 0) return -1; /* -> s, line 389 */
-    {   int ret = slice_from_s(z, 6, s_67); /* <-, line 389 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 389 */
-            z->c = saved_c;
-        }
+    z->ket = z->c; /* [, line 385 */
+    z->bra = z->c; /* ], line 385 */
+    if (!(find_among_b(z, a_34, 15))) return 0; /* substring, line 385 */
+    {   int ret = slice_from_s(z, 6, s_67); /* <-, line 387 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step2d(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 394 */
-    if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 189)) return 0; /* substring, line 394 */
+    z->ket = z->c; /* [, line 392 */
+    if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 131 && z->p[z->c - 1] != 189)) return 0; /* substring, line 392 */
     if (!(find_among_b(z, a_35, 2))) return 0;
-    z->bra = z->c; /* ], line 394 */
-    {   int ret = slice_del(z); /* delete, line 395 */
-        if (ret < 0) return ret;
-    }
-    z->B[0] = 0; /* unset test1, line 395 */
-    z->ket = z->c; /* [, line 397 */
-    if (!(find_among_b(z, a_36, 8))) return 0; /* substring, line 397 */
-    z->bra = z->c; /* ], line 397 */
-    if (z->c > z->lb) return 0; /* atlimit, line 397 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 398 */
-    if (z->S[0] == 0) return -1; /* -> s, line 398 */
-    {   int ret = slice_from_s(z, 2, s_68); /* <-, line 398 */
+    z->bra = z->c; /* ], line 392 */
+    {   int ret = slice_del(z); /* delete, line 393 */
         if (ret < 0) return ret;
     }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 398 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 393 */
+    z->ket = z->c; /* [, line 395 */
+    z->bra = z->c; /* ], line 395 */
+    if (!(find_among_b(z, a_36, 8))) return 0; /* substring, line 395 */
+    if (z->c > z->lb) return 0; /* atlimit, line 395 */
+    {   int ret = slice_from_s(z, 2, s_68); /* <-, line 396 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step3(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 403 */
-    if (!(find_among_b(z, a_37, 3))) return 0; /* substring, line 403 */
-    z->bra = z->c; /* ], line 403 */
-    {   int ret = slice_del(z); /* delete, line 404 */
-        if (ret < 0) return ret;
-    }
-    z->B[0] = 0; /* unset test1, line 404 */
-    z->ket = z->c; /* [, line 406 */
-    if (in_grouping_b_U(z, g_v, 945, 969, 0)) return 0; /* grouping v, line 406 */
-    z->bra = z->c; /* ], line 406 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 406 */
-    if (z->S[0] == 0) return -1; /* -> s, line 406 */
-    {   int ret = slice_from_s(z, 2, s_69); /* <-, line 406 */
+    z->ket = z->c; /* [, line 401 */
+    if (!(find_among_b(z, a_37, 3))) return 0; /* substring, line 401 */
+    z->bra = z->c; /* ], line 401 */
+    {   int ret = slice_del(z); /* delete, line 402 */
         if (ret < 0) return ret;
     }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 406 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 402 */
+    z->ket = z->c; /* [, line 404 */
+    z->bra = z->c; /* ], line 404 */
+    if (in_grouping_b_U(z, g_v, 945, 969, 0)) return 0; /* grouping v, line 404 */
+    {   int ret = slice_from_s(z, 2, s_69); /* <-, line 404 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step4(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 410 */
-    if (!(find_among_b(z, a_38, 4))) return 0; /* substring, line 410 */
-    z->bra = z->c; /* ], line 410 */
-    {   int ret = slice_del(z); /* delete, line 411 */
+    z->ket = z->c; /* [, line 408 */
+    if (!(find_among_b(z, a_38, 4))) return 0; /* substring, line 408 */
+    z->bra = z->c; /* ], line 408 */
+    {   int ret = slice_del(z); /* delete, line 409 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 411 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 413 */
-        z->ket = z->c; /* [, line 413 */
-        if (in_grouping_b_U(z, g_v, 945, 969, 0)) goto lab1; /* grouping v, line 413 */
-        z->bra = z->c; /* ], line 413 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 413 */
-        if (z->S[0] == 0) return -1; /* -> s, line 413 */
-        {   int ret = slice_from_s(z, 4, s_70); /* <-, line 413 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 413 */
-                z->c = saved_c;
-            }
+    z->B[0] = 0; /* unset test1, line 409 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 411 */
+        z->ket = z->c; /* [, line 411 */
+        z->bra = z->c; /* ], line 411 */
+        if (in_grouping_b_U(z, g_v, 945, 969, 0)) goto lab1; /* grouping v, line 411 */
+        {   int ret = slice_from_s(z, 4, s_70); /* <-, line 411 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 414 */
+        z->ket = z->c; /* [, line 412 */
     }
 lab0:
-    if (!(find_among_b(z, a_39, 36))) return 0; /* substring, line 414 */
-    z->bra = z->c; /* ], line 414 */
-    if (z->c > z->lb) return 0; /* atlimit, line 414 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 419 */
-    if (z->S[0] == 0) return -1; /* -> s, line 419 */
-    {   int ret = slice_from_s(z, 4, s_71); /* <-, line 419 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 419 */
-            z->c = saved_c;
-        }
+    z->bra = z->c; /* ], line 412 */
+    if (!(find_among_b(z, a_39, 36))) return 0; /* substring, line 412 */
+    if (z->c > z->lb) return 0; /* atlimit, line 412 */
+    {   int ret = slice_from_s(z, 4, s_71); /* <-, line 417 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step5a(struct SN_env * z) { /* backwardmode */
-    {   int m1 = z->l - z->c; (void)m1; /* do, line 424 */
-        if (!(eq_s_b(z, 10, s_72))) goto lab0; /* literal, line 424 */
-        if (z->c > z->lb) goto lab0; /* atlimit, line 424 */
-        {   int ret = slice_from_s(z, 8, s_73); /* <-, line 424 */
+    {   int m1 = z->l - z->c; (void)m1; /* do, line 422 */
+        if (!(eq_s_b(z, 10, s_72))) goto lab0; /* literal, line 422 */
+        if (z->c > z->lb) goto lab0; /* atlimit, line 422 */
+        {   int ret = slice_from_s(z, 8, s_73); /* <-, line 422 */
             if (ret < 0) return ret;
         }
     lab0:
         z->c = z->l - m1;
     }
-    {   int m2 = z->l - z->c; (void)m2; /* do, line 425 */
-        z->ket = z->c; /* [, line 426 */
-        if (z->c - 9 <= z->lb || z->p[z->c - 1] != 181) goto lab1; /* substring, line 426 */
+    {   int m2 = z->l - z->c; (void)m2; /* do, line 423 */
+        z->ket = z->c; /* [, line 424 */
+        if (z->c - 9 <= z->lb || z->p[z->c - 1] != 181) goto lab1; /* substring, line 424 */
         if (!(find_among_b(z, a_40, 5))) goto lab1;
-        z->bra = z->c; /* ], line 426 */
-        {   int ret = slice_del(z); /* delete, line 427 */
+        z->bra = z->c; /* ], line 424 */
+        {   int ret = slice_del(z); /* delete, line 425 */
             if (ret < 0) return ret;
         }
-        z->B[0] = 0; /* unset test1, line 427 */
+        z->B[0] = 0; /* unset test1, line 425 */
     lab1:
         z->c = z->l - m2;
     }
-    z->ket = z->c; /* [, line 430 */
-    if (!(eq_s_b(z, 6, s_74))) return 0; /* literal, line 430 */
-    z->bra = z->c; /* ], line 430 */
-    {   int ret = slice_del(z); /* delete, line 431 */
+    z->ket = z->c; /* [, line 428 */
+    if (!(eq_s_b(z, 6, s_74))) return 0; /* literal, line 428 */
+    z->bra = z->c; /* ], line 428 */
+    {   int ret = slice_del(z); /* delete, line 429 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 432 */
-    z->ket = z->c; /* [, line 433 */
-    if (!(find_among_b(z, a_41, 12))) return 0; /* substring, line 433 */
-    z->bra = z->c; /* ], line 433 */
-    if (z->c > z->lb) return 0; /* atlimit, line 433 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 435 */
-    if (z->S[0] == 0) return -1; /* -> s, line 435 */
-    {   int ret = slice_from_s(z, 4, s_75); /* <-, line 435 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 435 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 430 */
+    z->ket = z->c; /* [, line 431 */
+    z->bra = z->c; /* ], line 431 */
+    if (!(find_among_b(z, a_41, 12))) return 0; /* substring, line 431 */
+    if (z->c > z->lb) return 0; /* atlimit, line 431 */
+    {   int ret = slice_from_s(z, 4, s_75); /* <-, line 433 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step5b(struct SN_env * z) { /* backwardmode */
-    {   int m1 = z->l - z->c; (void)m1; /* do, line 440 */
-        z->ket = z->c; /* [, line 441 */
-        if (z->c - 9 <= z->lb || z->p[z->c - 1] != 181) goto lab0; /* substring, line 441 */
+    {   int m1 = z->l - z->c; (void)m1; /* do, line 438 */
+        z->ket = z->c; /* [, line 439 */
+        if (z->c - 9 <= z->lb || z->p[z->c - 1] != 181) goto lab0; /* substring, line 439 */
         if (!(find_among_b(z, a_43, 11))) goto lab0;
-        z->bra = z->c; /* ], line 441 */
-        {   int ret = slice_del(z); /* delete, line 444 */
+        z->bra = z->c; /* ], line 439 */
+        {   int ret = slice_del(z); /* delete, line 442 */
             if (ret < 0) return ret;
         }
-        z->B[0] = 0; /* unset test1, line 445 */
-        z->ket = z->c; /* [, line 446 */
-        if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 129 && z->p[z->c - 1] != 131)) goto lab0; /* substring, line 446 */
+        z->B[0] = 0; /* unset test1, line 443 */
+        z->ket = z->c; /* [, line 444 */
+        z->bra = z->c; /* ], line 444 */
+        if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 129 && z->p[z->c - 1] != 131)) goto lab0; /* substring, line 444 */
         if (!(find_among_b(z, a_42, 2))) goto lab0;
-        z->bra = z->c; /* ], line 446 */
-        if (z->c > z->lb) goto lab0; /* atlimit, line 446 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 447 */
-        if (z->S[0] == 0) return -1; /* -> s, line 447 */
-        {   int ret = slice_from_s(z, 8, s_76); /* <-, line 447 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 447 */
-                z->c = saved_c;
-            }
+        if (z->c > z->lb) goto lab0; /* atlimit, line 444 */
+        {   int ret = slice_from_s(z, 8, s_76); /* <-, line 445 */
             if (ret < 0) return ret;
         }
     lab0:
         z->c = z->l - m1;
     }
-    z->ket = z->c; /* [, line 452 */
-    if (!(eq_s_b(z, 6, s_77))) return 0; /* literal, line 452 */
-    z->bra = z->c; /* ], line 452 */
-    {   int ret = slice_del(z); /* delete, line 453 */
+    z->ket = z->c; /* [, line 450 */
+    if (!(eq_s_b(z, 6, s_77))) return 0; /* literal, line 450 */
+    z->bra = z->c; /* ], line 450 */
+    {   int ret = slice_del(z); /* delete, line 451 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 454 */
-    {   int m2 = z->l - z->c; (void)m2; /* or, line 455 */
-        z->ket = z->c; /* [, line 455 */
-        if (in_grouping_b_U(z, g_v2, 945, 969, 0)) goto lab2; /* grouping v2, line 455 */
-        z->bra = z->c; /* ], line 455 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 455 */
-        if (z->S[0] == 0) return -1; /* -> s, line 455 */
-        {   int ret = slice_from_s(z, 4, s_78); /* <-, line 455 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 455 */
-                z->c = saved_c;
-            }
+    z->B[0] = 0; /* unset test1, line 452 */
+    {   int m2 = z->l - z->c; (void)m2; /* or, line 453 */
+        z->ket = z->c; /* [, line 453 */
+        z->bra = z->c; /* ], line 453 */
+        if (in_grouping_b_U(z, g_v2, 945, 969, 0)) goto lab2; /* grouping v2, line 453 */
+        {   int ret = slice_from_s(z, 4, s_78); /* <-, line 453 */
             if (ret < 0) return ret;
         }
         goto lab1;
     lab2:
         z->c = z->l - m2;
-        z->ket = z->c; /* [, line 456 */
+        z->ket = z->c; /* [, line 454 */
     }
 lab1:
-    if (!(find_among_b(z, a_44, 95))) return 0; /* substring, line 456 */
-    z->bra = z->c; /* ], line 456 */
-    if (z->c > z->lb) return 0; /* atlimit, line 456 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 473 */
-    if (z->S[0] == 0) return -1; /* -> s, line 473 */
-    {   int ret = slice_from_s(z, 4, s_79); /* <-, line 473 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 473 */
-            z->c = saved_c;
-        }
+    z->bra = z->c; /* ], line 454 */
+    if (!(find_among_b(z, a_44, 95))) return 0; /* substring, line 454 */
+    if (z->c > z->lb) return 0; /* atlimit, line 454 */
+    {   int ret = slice_from_s(z, 4, s_79); /* <-, line 471 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step5c(struct SN_env * z) { /* backwardmode */
-    {   int m1 = z->l - z->c; (void)m1; /* do, line 478 */
-        z->ket = z->c; /* [, line 479 */
-        if (z->c - 9 <= z->lb || z->p[z->c - 1] != 181) goto lab0; /* substring, line 479 */
+    {   int m1 = z->l - z->c; (void)m1; /* do, line 476 */
+        z->ket = z->c; /* [, line 477 */
+        if (z->c - 9 <= z->lb || z->p[z->c - 1] != 181) goto lab0; /* substring, line 477 */
         if (!(find_among_b(z, a_45, 1))) goto lab0;
-        z->bra = z->c; /* ], line 479 */
-        {   int ret = slice_del(z); /* delete, line 480 */
+        z->bra = z->c; /* ], line 477 */
+        {   int ret = slice_del(z); /* delete, line 478 */
             if (ret < 0) return ret;
         }
-        z->B[0] = 0; /* unset test1, line 480 */
+        z->B[0] = 0; /* unset test1, line 478 */
     lab0:
         z->c = z->l - m1;
     }
-    z->ket = z->c; /* [, line 483 */
-    if (!(eq_s_b(z, 6, s_80))) return 0; /* literal, line 483 */
-    z->bra = z->c; /* ], line 483 */
-    {   int ret = slice_del(z); /* delete, line 484 */
+    z->ket = z->c; /* [, line 481 */
+    if (!(eq_s_b(z, 6, s_80))) return 0; /* literal, line 481 */
+    z->bra = z->c; /* ], line 481 */
+    {   int ret = slice_del(z); /* delete, line 482 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 485 */
-    {   int m2 = z->l - z->c; (void)m2; /* or, line 486 */
-        z->ket = z->c; /* [, line 486 */
-        if (in_grouping_b_U(z, g_v2, 945, 969, 0)) goto lab2; /* grouping v2, line 486 */
-        z->bra = z->c; /* ], line 486 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 486 */
-        if (z->S[0] == 0) return -1; /* -> s, line 486 */
-        {   int ret = slice_from_s(z, 4, s_81); /* <-, line 486 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 486 */
-                z->c = saved_c;
-            }
+    z->B[0] = 0; /* unset test1, line 483 */
+    {   int m2 = z->l - z->c; (void)m2; /* or, line 484 */
+        z->ket = z->c; /* [, line 484 */
+        z->bra = z->c; /* ], line 484 */
+        if (in_grouping_b_U(z, g_v2, 945, 969, 0)) goto lab2; /* grouping v2, line 484 */
+        {   int ret = slice_from_s(z, 4, s_81); /* <-, line 484 */
             if (ret < 0) return ret;
         }
         goto lab1;
     lab2:
         z->c = z->l - m2;
-        z->ket = z->c; /* [, line 487 */
-        if (!(find_among_b(z, a_46, 31))) goto lab3; /* substring, line 487 */
-        z->bra = z->c; /* ], line 487 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 491 */
-        if (z->S[0] == 0) return -1; /* -> s, line 491 */
-        {   int ret = slice_from_s(z, 4, s_82); /* <-, line 491 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 491 */
-                z->c = saved_c;
-            }
+        z->ket = z->c; /* [, line 485 */
+        z->bra = z->c; /* ], line 485 */
+        if (!(find_among_b(z, a_46, 31))) goto lab3; /* substring, line 485 */
+        {   int ret = slice_from_s(z, 4, s_82); /* <-, line 489 */
             if (ret < 0) return ret;
         }
         goto lab1;
     lab3:
         z->c = z->l - m2;
-        z->ket = z->c; /* [, line 493 */
+        z->ket = z->c; /* [, line 491 */
     }
 lab1:
-    if (!(find_among_b(z, a_47, 25))) return 0; /* substring, line 493 */
-    z->bra = z->c; /* ], line 493 */
-    if (z->c > z->lb) return 0; /* atlimit, line 493 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 497 */
-    if (z->S[0] == 0) return -1; /* -> s, line 497 */
-    {   int ret = slice_from_s(z, 4, s_83); /* <-, line 497 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 497 */
-            z->c = saved_c;
-        }
+    z->bra = z->c; /* ], line 491 */
+    if (!(find_among_b(z, a_47, 25))) return 0; /* substring, line 491 */
+    if (z->c > z->lb) return 0; /* atlimit, line 491 */
+    {   int ret = slice_from_s(z, 4, s_83); /* <-, line 495 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step5d(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 502 */
-    if (z->c - 9 <= z->lb || z->p[z->c - 1] != 131) return 0; /* substring, line 502 */
+    z->ket = z->c; /* [, line 500 */
+    if (z->c - 9 <= z->lb || z->p[z->c - 1] != 131) return 0; /* substring, line 500 */
     if (!(find_among_b(z, a_48, 2))) return 0;
-    z->bra = z->c; /* ], line 502 */
-    {   int ret = slice_del(z); /* delete, line 504 */
+    z->bra = z->c; /* ], line 500 */
+    {   int ret = slice_del(z); /* delete, line 502 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 505 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 506 */
-        z->ket = z->c; /* [, line 506 */
-        if (!(eq_s_b(z, 6, s_84))) goto lab1; /* literal, line 506 */
-        z->bra = z->c; /* ], line 506 */
-        if (z->c > z->lb) goto lab1; /* atlimit, line 506 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 506 */
-        if (z->S[0] == 0) return -1; /* -> s, line 506 */
-        {   int ret = slice_from_s(z, 6, s_85); /* <-, line 506 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 506 */
-                z->c = saved_c;
-            }
+    z->B[0] = 0; /* unset test1, line 503 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 504 */
+        z->ket = z->c; /* [, line 504 */
+        z->bra = z->c; /* ], line 504 */
+        if (!(eq_s_b(z, 6, s_84))) goto lab1; /* literal, line 504 */
+        if (z->c > z->lb) goto lab1; /* atlimit, line 504 */
+        {   int ret = slice_from_s(z, 6, s_85); /* <-, line 504 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 507 */
-        if (!(eq_s_b(z, 6, s_86))) return 0; /* literal, line 507 */
-        z->bra = z->c; /* ], line 507 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 507 */
-        if (z->S[0] == 0) return -1; /* -> s, line 507 */
-        {   int ret = slice_from_s(z, 6, s_87); /* <-, line 507 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 507 */
-                z->c = saved_c;
-            }
+        z->ket = z->c; /* [, line 505 */
+        z->bra = z->c; /* ], line 505 */
+        if (!(eq_s_b(z, 6, s_86))) return 0; /* literal, line 505 */
+        {   int ret = slice_from_s(z, 6, s_87); /* <-, line 505 */
             if (ret < 0) return ret;
         }
     }
@@ -3505,141 +3217,96 @@ lab0:
 }
 
 static int r_step5e(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 513 */
-    if (z->c - 11 <= z->lb || z->p[z->c - 1] != 181) return 0; /* substring, line 513 */
+    z->ket = z->c; /* [, line 511 */
+    if (z->c - 11 <= z->lb || z->p[z->c - 1] != 181) return 0; /* substring, line 511 */
     if (!(find_among_b(z, a_49, 2))) return 0;
-    z->bra = z->c; /* ], line 513 */
-    {   int ret = slice_del(z); /* delete, line 515 */
+    z->bra = z->c; /* ], line 511 */
+    {   int ret = slice_del(z); /* delete, line 513 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 516 */
-    z->ket = z->c; /* [, line 517 */
-    if (!(eq_s_b(z, 4, s_88))) return 0; /* literal, line 517 */
-    z->bra = z->c; /* ], line 517 */
-    if (z->c > z->lb) return 0; /* atlimit, line 517 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 517 */
-    if (z->S[0] == 0) return -1; /* -> s, line 517 */
-    {   int ret = slice_from_s(z, 10, s_89); /* <-, line 517 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 517 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 514 */
+    z->ket = z->c; /* [, line 515 */
+    z->bra = z->c; /* ], line 515 */
+    if (!(eq_s_b(z, 4, s_88))) return 0; /* literal, line 515 */
+    if (z->c > z->lb) return 0; /* atlimit, line 515 */
+    {   int ret = slice_from_s(z, 10, s_89); /* <-, line 515 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step5f(struct SN_env * z) { /* backwardmode */
-    {   int m1 = z->l - z->c; (void)m1; /* do, line 523 */
-        z->ket = z->c; /* [, line 524 */
-        if (!(eq_s_b(z, 10, s_90))) goto lab0; /* literal, line 524 */
-        z->bra = z->c; /* ], line 524 */
-        {   int ret = slice_del(z); /* delete, line 525 */
+    {   int m1 = z->l - z->c; (void)m1; /* do, line 521 */
+        z->ket = z->c; /* [, line 522 */
+        if (!(eq_s_b(z, 10, s_90))) goto lab0; /* literal, line 522 */
+        z->bra = z->c; /* ], line 522 */
+        {   int ret = slice_del(z); /* delete, line 523 */
             if (ret < 0) return ret;
         }
-        z->B[0] = 0; /* unset test1, line 526 */
-        z->ket = z->c; /* [, line 527 */
-        if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 128 && z->p[z->c - 1] != 134)) goto lab0; /* substring, line 527 */
+        z->B[0] = 0; /* unset test1, line 524 */
+        z->ket = z->c; /* [, line 525 */
+        z->bra = z->c; /* ], line 525 */
+        if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 128 && z->p[z->c - 1] != 134)) goto lab0; /* substring, line 525 */
         if (!(find_among_b(z, a_50, 6))) goto lab0;
-        z->bra = z->c; /* ], line 527 */
-        if (z->c > z->lb) goto lab0; /* atlimit, line 527 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 528 */
-        if (z->S[0] == 0) return -1; /* -> s, line 528 */
-        {   int ret = slice_from_s(z, 8, s_91); /* <-, line 528 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 528 */
-                z->c = saved_c;
-            }
+        if (z->c > z->lb) goto lab0; /* atlimit, line 525 */
+        {   int ret = slice_from_s(z, 8, s_91); /* <-, line 526 */
             if (ret < 0) return ret;
         }
     lab0:
         z->c = z->l - m1;
     }
-    z->ket = z->c; /* [, line 531 */
-    if (!(eq_s_b(z, 8, s_92))) return 0; /* literal, line 531 */
-    z->bra = z->c; /* ], line 531 */
-    {   int ret = slice_del(z); /* delete, line 532 */
+    z->ket = z->c; /* [, line 529 */
+    if (!(eq_s_b(z, 8, s_92))) return 0; /* literal, line 529 */
+    z->bra = z->c; /* ], line 529 */
+    {   int ret = slice_del(z); /* delete, line 530 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 533 */
-    z->ket = z->c; /* [, line 534 */
-    if (!(find_among_b(z, a_51, 9))) return 0; /* substring, line 534 */
-    z->bra = z->c; /* ], line 534 */
-    if (z->c > z->lb) return 0; /* atlimit, line 534 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 536 */
-    if (z->S[0] == 0) return -1; /* -> s, line 536 */
-    {   int ret = slice_from_s(z, 8, s_93); /* <-, line 536 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 536 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 531 */
+    z->ket = z->c; /* [, line 532 */
+    z->bra = z->c; /* ], line 532 */
+    if (!(find_among_b(z, a_51, 9))) return 0; /* substring, line 532 */
+    if (z->c > z->lb) return 0; /* atlimit, line 532 */
+    {   int ret = slice_from_s(z, 8, s_93); /* <-, line 534 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step5g(struct SN_env * z) { /* backwardmode */
-    {   int m1 = z->l - z->c; (void)m1; /* do, line 541 */
-        z->ket = z->c; /* [, line 542 */
-        if (!(find_among_b(z, a_52, 3))) goto lab0; /* substring, line 542 */
-        z->bra = z->c; /* ], line 542 */
-        {   int ret = slice_del(z); /* delete, line 543 */
+    {   int m1 = z->l - z->c; (void)m1; /* do, line 539 */
+        z->ket = z->c; /* [, line 540 */
+        if (!(find_among_b(z, a_52, 3))) goto lab0; /* substring, line 540 */
+        z->bra = z->c; /* ], line 540 */
+        {   int ret = slice_del(z); /* delete, line 541 */
             if (ret < 0) return ret;
         }
-        z->B[0] = 0; /* unset test1, line 543 */
+        z->B[0] = 0; /* unset test1, line 541 */
     lab0:
         z->c = z->l - m1;
     }
-    z->ket = z->c; /* [, line 546 */
-    if (!(find_among_b(z, a_55, 3))) return 0; /* substring, line 546 */
-    z->bra = z->c; /* ], line 546 */
-    {   int ret = slice_del(z); /* delete, line 548 */
+    z->ket = z->c; /* [, line 544 */
+    if (!(find_among_b(z, a_55, 3))) return 0; /* substring, line 544 */
+    z->bra = z->c; /* ], line 544 */
+    {   int ret = slice_del(z); /* delete, line 546 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 549 */
-    {   int m2 = z->l - z->c; (void)m2; /* or, line 552 */
-        z->ket = z->c; /* [, line 550 */
-        if (!(find_among_b(z, a_53, 6))) goto lab2; /* substring, line 550 */
-        z->bra = z->c; /* ], line 550 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 551 */
-        if (z->S[0] == 0) return -1; /* -> s, line 551 */
-        {   int ret = slice_from_s(z, 4, s_94); /* <-, line 551 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 551 */
-                z->c = saved_c;
-            }
+    z->B[0] = 0; /* unset test1, line 547 */
+    {   int m2 = z->l - z->c; (void)m2; /* or, line 550 */
+        z->ket = z->c; /* [, line 548 */
+        z->bra = z->c; /* ], line 548 */
+        if (!(find_among_b(z, a_53, 6))) goto lab2; /* substring, line 548 */
+        {   int ret = slice_from_s(z, 4, s_94); /* <-, line 549 */
             if (ret < 0) return ret;
         }
         goto lab1;
     lab2:
         z->c = z->l - m2;
-        z->ket = z->c; /* [, line 553 */
-        if (z->c - 1 <= z->lb || z->p[z->c - 1] != 184) return 0; /* substring, line 553 */
+        z->ket = z->c; /* [, line 551 */
+        z->bra = z->c; /* ], line 551 */
+        if (z->c - 1 <= z->lb || z->p[z->c - 1] != 184) return 0; /* substring, line 551 */
         if (!(find_among_b(z, a_54, 5))) return 0;
-        z->bra = z->c; /* ], line 553 */
-        if (z->c > z->lb) return 0; /* atlimit, line 553 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 554 */
-        if (z->S[0] == 0) return -1; /* -> s, line 554 */
-        {   int ret = slice_from_s(z, 4, s_95); /* <-, line 554 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 554 */
-                z->c = saved_c;
-            }
+        if (z->c > z->lb) return 0; /* atlimit, line 551 */
+        {   int ret = slice_from_s(z, 4, s_95); /* <-, line 552 */
             if (ret < 0) return ret;
         }
     }
@@ -3648,46 +3315,28 @@ lab1:
 }
 
 static int r_step5h(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 561 */
-    if (!(find_among_b(z, a_58, 3))) return 0; /* substring, line 561 */
-    z->bra = z->c; /* ], line 561 */
-    {   int ret = slice_del(z); /* delete, line 563 */
+    z->ket = z->c; /* [, line 559 */
+    if (!(find_among_b(z, a_58, 3))) return 0; /* substring, line 559 */
+    z->bra = z->c; /* ], line 559 */
+    {   int ret = slice_del(z); /* delete, line 561 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 564 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 569 */
-        z->ket = z->c; /* [, line 565 */
-        if (!(find_among_b(z, a_56, 12))) goto lab1; /* substring, line 565 */
-        z->bra = z->c; /* ], line 565 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 567 */
-        if (z->S[0] == 0) return -1; /* -> s, line 567 */
-        {   int ret = slice_from_s(z, 6, s_96); /* <-, line 567 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 567 */
-                z->c = saved_c;
-            }
+    z->B[0] = 0; /* unset test1, line 562 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 567 */
+        z->ket = z->c; /* [, line 563 */
+        z->bra = z->c; /* ], line 563 */
+        if (!(find_among_b(z, a_56, 12))) goto lab1; /* substring, line 563 */
+        {   int ret = slice_from_s(z, 6, s_96); /* <-, line 565 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        z->ket = z->c; /* [, line 570 */
-        if (!(find_among_b(z, a_57, 25))) return 0; /* substring, line 570 */
-        z->bra = z->c; /* ], line 570 */
-        if (z->c > z->lb) return 0; /* atlimit, line 570 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 574 */
-        if (z->S[0] == 0) return -1; /* -> s, line 574 */
-        {   int ret = slice_from_s(z, 6, s_97); /* <-, line 574 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 574 */
-                z->c = saved_c;
-            }
+        z->ket = z->c; /* [, line 568 */
+        z->bra = z->c; /* ], line 568 */
+        if (!(find_among_b(z, a_57, 25))) return 0; /* substring, line 568 */
+        if (z->c > z->lb) return 0; /* atlimit, line 568 */
+        {   int ret = slice_from_s(z, 6, s_97); /* <-, line 572 */
             if (ret < 0) return ret;
         }
     }
@@ -3696,74 +3345,47 @@ lab0:
 }
 
 static int r_step5i(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 581 */
-    if (!(find_among_b(z, a_62, 3))) return 0; /* substring, line 581 */
-    z->bra = z->c; /* ], line 581 */
-    {   int ret = slice_del(z); /* delete, line 583 */
+    z->ket = z->c; /* [, line 579 */
+    if (!(find_among_b(z, a_62, 3))) return 0; /* substring, line 579 */
+    z->bra = z->c; /* ], line 579 */
+    {   int ret = slice_del(z); /* delete, line 581 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 584 */
-    {   int m1 = z->l - z->c; (void)m1; /* or, line 585 */
-        z->ket = z->c; /* [, line 585 */
-        if (!(eq_s_b(z, 8, s_98))) goto lab1; /* literal, line 585 */
-        z->bra = z->c; /* ], line 585 */
-        z->S[0] = slice_to(z, z->S[0]); /* -> s, line 585 */
-        if (z->S[0] == 0) return -1; /* -> s, line 585 */
-        {   int ret = slice_from_s(z, 4, s_99); /* <-, line 585 */
-            if (ret < 0) return ret;
-        }
-        {   int ret;
-            {   int saved_c = z->c;
-                ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 585 */
-                z->c = saved_c;
-            }
+    z->B[0] = 0; /* unset test1, line 582 */
+    {   int m1 = z->l - z->c; (void)m1; /* or, line 583 */
+        z->ket = z->c; /* [, line 583 */
+        z->bra = z->c; /* ], line 583 */
+        if (!(eq_s_b(z, 8, s_98))) goto lab1; /* literal, line 583 */
+        {   int ret = slice_from_s(z, 4, s_99); /* <-, line 583 */
             if (ret < 0) return ret;
         }
         goto lab0;
     lab1:
         z->c = z->l - m1;
-        {   int m2 = z->l - z->c; (void)m2; /* not, line 586 */
-            z->ket = z->c; /* [, line 586 */
-            if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 134 && z->p[z->c - 1] != 135)) goto lab2; /* substring, line 586 */
+        {   int m2 = z->l - z->c; (void)m2; /* not, line 584 */
+            z->ket = z->c; /* [, line 584 */
+            if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 134 && z->p[z->c - 1] != 135)) goto lab2; /* substring, line 584 */
             if (!(find_among_b(z, a_59, 2))) goto lab2;
-            z->bra = z->c; /* ], line 586 */
+            z->bra = z->c; /* ], line 584 */
             return 0;
         lab2:
             z->c = z->l - m2;
         }
-        {   int m3 = z->l - z->c; (void)m3; /* or, line 590 */
-            z->ket = z->c; /* [, line 587 */
-            if (!(find_among_b(z, a_60, 10))) goto lab4; /* substring, line 587 */
-            z->bra = z->c; /* ], line 587 */
-            z->S[0] = slice_to(z, z->S[0]); /* -> s, line 589 */
-            if (z->S[0] == 0) return -1; /* -> s, line 589 */
-            {   int ret = slice_from_s(z, 4, s_100); /* <-, line 589 */
-                if (ret < 0) return ret;
-            }
-            {   int ret;
-                {   int saved_c = z->c;
-                    ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 589 */
-                    z->c = saved_c;
-                }
+        {   int m3 = z->l - z->c; (void)m3; /* or, line 588 */
+            z->ket = z->c; /* [, line 585 */
+            z->bra = z->c; /* ], line 585 */
+            if (!(find_among_b(z, a_60, 10))) goto lab4; /* substring, line 585 */
+            {   int ret = slice_from_s(z, 4, s_100); /* <-, line 587 */
                 if (ret < 0) return ret;
             }
             goto lab3;
         lab4:
             z->c = z->l - m3;
-            z->ket = z->c; /* [, line 591 */
-            if (!(find_among_b(z, a_61, 44))) return 0; /* substring, line 591 */
-            z->bra = z->c; /* ], line 591 */
-            if (z->c > z->lb) return 0; /* atlimit, line 591 */
-            z->S[0] = slice_to(z, z->S[0]); /* -> s, line 597 */
-            if (z->S[0] == 0) return -1; /* -> s, line 597 */
-            {   int ret = slice_from_s(z, 4, s_101); /* <-, line 597 */
-                if (ret < 0) return ret;
-            }
-            {   int ret;
-                {   int saved_c = z->c;
-                    ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 597 */
-                    z->c = saved_c;
-                }
+            z->ket = z->c; /* [, line 589 */
+            z->bra = z->c; /* ], line 589 */
+            if (!(find_among_b(z, a_61, 44))) return 0; /* substring, line 589 */
+            if (z->c > z->lb) return 0; /* atlimit, line 589 */
+            {   int ret = slice_from_s(z, 4, s_101); /* <-, line 595 */
                 if (ret < 0) return ret;
             }
         }
@@ -3775,425 +3397,323 @@ lab0:
 }
 
 static int r_step5j(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 605 */
-    if (!(find_among_b(z, a_63, 3))) return 0; /* substring, line 605 */
-    z->bra = z->c; /* ], line 605 */
-    {   int ret = slice_del(z); /* delete, line 606 */
+    z->ket = z->c; /* [, line 603 */
+    if (!(find_among_b(z, a_63, 3))) return 0; /* substring, line 603 */
+    z->bra = z->c; /* ], line 603 */
+    {   int ret = slice_del(z); /* delete, line 604 */
         if (ret < 0) return ret;
     }
-    z->B[0] = 0; /* unset test1, line 606 */
-    z->ket = z->c; /* [, line 608 */
-    if (z->c - 1 <= z->lb || z->p[z->c - 1] != 189) return 0; /* substring, line 608 */
+    z->B[0] = 0; /* unset test1, line 604 */
+    z->ket = z->c; /* [, line 606 */
+    z->bra = z->c; /* ], line 606 */
+    if (z->c - 1 <= z->lb || z->p[z->c - 1] != 189) return 0; /* substring, line 606 */
     if (!(find_among_b(z, a_64, 6))) return 0;
-    z->bra = z->c; /* ], line 608 */
-    if (z->c > z->lb) return 0; /* atlimit, line 608 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 609 */
-    if (z->S[0] == 0) return -1; /* -> s, line 609 */
-    {   int ret = slice_from_s(z, 4, s_102); /* <-, line 609 */
-        if (ret < 0) return ret;
-    }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 609 */
-            z->c = saved_c;
-        }
+    if (z->c > z->lb) return 0; /* atlimit, line 606 */
+    {   int ret = slice_from_s(z, 4, s_102); /* <-, line 607 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step5k(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 614 */
-    if (z->c - 7 <= z->lb || z->p[z->c - 1] != 181) return 0; /* substring, line 614 */
+    z->ket = z->c; /* [, line 612 */
+    if (z->c - 7 <= z->lb || z->p[z->c - 1] != 181) return 0; /* substring, line 612 */
     if (!(find_among_b(z, a_65, 1))) return 0;
-    z->bra = z->c; /* ], line 614 */
-    {   int ret = slice_del(z); /* delete, line 615 */
-        if (ret < 0) return ret;
-    }
-    z->B[0] = 0; /* unset test1, line 615 */
-    z->ket = z->c; /* [, line 617 */
-    if (!(find_among_b(z, a_66, 10))) return 0; /* substring, line 617 */
-    z->bra = z->c; /* ], line 617 */
-    if (z->c > z->lb) return 0; /* atlimit, line 617 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 619 */
-    if (z->S[0] == 0) return -1; /* -> s, line 619 */
-    {   int ret = slice_from_s(z, 6, s_103); /* <-, line 619 */
+    z->bra = z->c; /* ], line 612 */
+    {   int ret = slice_del(z); /* delete, line 613 */
         if (ret < 0) return ret;
     }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 619 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 613 */
+    z->ket = z->c; /* [, line 615 */
+    z->bra = z->c; /* ], line 615 */
+    if (!(find_among_b(z, a_66, 10))) return 0; /* substring, line 615 */
+    if (z->c > z->lb) return 0; /* atlimit, line 615 */
+    {   int ret = slice_from_s(z, 6, s_103); /* <-, line 617 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step5l(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 624 */
-    if (z->c - 7 <= z->lb || z->p[z->c - 1] != 181) return 0; /* substring, line 624 */
+    z->ket = z->c; /* [, line 622 */
+    if (z->c - 7 <= z->lb || z->p[z->c - 1] != 181) return 0; /* substring, line 622 */
     if (!(find_among_b(z, a_67, 3))) return 0;
-    z->bra = z->c; /* ], line 624 */
-    {   int ret = slice_del(z); /* delete, line 625 */
-        if (ret < 0) return ret;
-    }
-    z->B[0] = 0; /* unset test1, line 625 */
-    z->ket = z->c; /* [, line 627 */
-    if (!(find_among_b(z, a_68, 6))) return 0; /* substring, line 627 */
-    z->bra = z->c; /* ], line 627 */
-    if (z->c > z->lb) return 0; /* atlimit, line 627 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 628 */
-    if (z->S[0] == 0) return -1; /* -> s, line 628 */
-    {   int ret = slice_from_s(z, 6, s_104); /* <-, line 628 */
+    z->bra = z->c; /* ], line 622 */
+    {   int ret = slice_del(z); /* delete, line 623 */
         if (ret < 0) return ret;
     }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 628 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 623 */
+    z->ket = z->c; /* [, line 625 */
+    z->bra = z->c; /* ], line 625 */
+    if (!(find_among_b(z, a_68, 6))) return 0; /* substring, line 625 */
+    if (z->c > z->lb) return 0; /* atlimit, line 625 */
+    {   int ret = slice_from_s(z, 6, s_104); /* <-, line 626 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step5m(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 633 */
-    if (z->c - 7 <= z->lb || z->p[z->c - 1] != 181) return 0; /* substring, line 633 */
+    z->ket = z->c; /* [, line 631 */
+    if (z->c - 7 <= z->lb || z->p[z->c - 1] != 181) return 0; /* substring, line 631 */
     if (!(find_among_b(z, a_69, 3))) return 0;
-    z->bra = z->c; /* ], line 633 */
-    {   int ret = slice_del(z); /* delete, line 634 */
-        if (ret < 0) return ret;
-    }
-    z->B[0] = 0; /* unset test1, line 634 */
-    z->ket = z->c; /* [, line 636 */
-    if (!(find_among_b(z, a_70, 7))) return 0; /* substring, line 636 */
-    z->bra = z->c; /* ], line 636 */
-    if (z->c > z->lb) return 0; /* atlimit, line 636 */
-    z->S[0] = slice_to(z, z->S[0]); /* -> s, line 638 */
-    if (z->S[0] == 0) return -1; /* -> s, line 638 */
-    {   int ret = slice_from_s(z, 6, s_105); /* <-, line 638 */
+    z->bra = z->c; /* ], line 631 */
+    {   int ret = slice_del(z); /* delete, line 632 */
         if (ret < 0) return ret;
     }
-    {   int ret;
-        {   int saved_c = z->c;
-            ret = insert_v(z, z->c, z->c, z->S[0]); /* <+ s, line 638 */
-            z->c = saved_c;
-        }
+    z->B[0] = 0; /* unset test1, line 632 */
+    z->ket = z->c; /* [, line 634 */
+    z->bra = z->c; /* ], line 634 */
+    if (!(find_among_b(z, a_70, 7))) return 0; /* substring, line 634 */
+    if (z->c > z->lb) return 0; /* atlimit, line 634 */
+    {   int ret = slice_from_s(z, 6, s_105); /* <-, line 636 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step6(struct SN_env * z) { /* backwardmode */
-    {   int m1 = z->l - z->c; (void)m1; /* do, line 643 */
-        z->ket = z->c; /* [, line 644 */
-        if (!(find_among_b(z, a_71, 3))) goto lab0; /* substring, line 644 */
-        z->bra = z->c; /* ], line 644 */
-        {   int ret = slice_from_s(z, 4, s_106); /* <-, line 645 */
+    {   int m1 = z->l - z->c; (void)m1; /* do, line 641 */
+        z->ket = z->c; /* [, line 642 */
+        if (!(find_among_b(z, a_71, 3))) goto lab0; /* substring, line 642 */
+        z->bra = z->c; /* ], line 642 */
+        {   int ret = slice_from_s(z, 4, s_106); /* <-, line 643 */
             if (ret < 0) return ret;
         }
     lab0:
         z->c = z->l - m1;
     }
-    if (!(z->B[0])) return 0; /* Boolean test test1, line 648 */
-    z->ket = z->c; /* [, line 649 */
-    if (!(find_among_b(z, a_72, 84))) return 0; /* substring, line 649 */
-    z->bra = z->c; /* ], line 649 */
-    {   int ret = slice_del(z); /* delete, line 659 */
+    if (!(z->B[0])) return 0; /* Boolean test test1, line 646 */
+    z->ket = z->c; /* [, line 647 */
+    if (!(find_among_b(z, a_72, 84))) return 0; /* substring, line 647 */
+    z->bra = z->c; /* ], line 647 */
+    {   int ret = slice_del(z); /* delete, line 657 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 static int r_step7(struct SN_env * z) { /* backwardmode */
-    z->ket = z->c; /* [, line 664 */
-    if (z->c - 7 <= z->lb || (z->p[z->c - 1] != 129 && z->p[z->c - 1] != 132)) return 0; /* substring, line 664 */
+    z->ket = z->c; /* [, line 662 */
+    if (z->c - 7 <= z->lb || (z->p[z->c - 1] != 129 && z->p[z->c - 1] != 132)) return 0; /* substring, line 662 */
     if (!(find_among_b(z, a_73, 8))) return 0;
-    z->bra = z->c; /* ], line 664 */
-    {   int ret = slice_del(z); /* delete, line 665 */
+    z->bra = z->c; /* ], line 662 */
+    {   int ret = slice_del(z); /* delete, line 663 */
         if (ret < 0) return ret;
     }
     return 1;
 }
 
 extern int greek_UTF_8_stem(struct SN_env * z) { /* forwardmode */
-    z->lb = z->c; z->c = z->l; /* backwards, line 671 */
+    z->lb = z->c; z->c = z->l; /* backwards, line 669 */
 
-    {   int m1 = z->l - z->c; (void)m1; /* do, line 672 */
-        {   int ret = r_tolower(z); /* call tolower, line 672 */
-            if (ret == 0) goto lab0;
+    {   int m1 = z->l - z->c; (void)m1; /* do, line 670 */
+        {   int ret = r_tolower(z); /* call tolower, line 670 */
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = z->l - m1;
     }
-    {   int ret = r_has_min_length(z); /* call has_min_length, line 673 */
+    {   int ret = r_has_min_length(z); /* call has_min_length, line 671 */
         if (ret <= 0) return ret;
     }
-    z->B[0] = 1; /* set test1, line 674 */
-    {   int m2 = z->l - z->c; (void)m2; /* do, line 675 */
-        {   int ret = r_step1(z); /* call step1, line 675 */
-            if (ret == 0) goto lab1;
+    z->B[0] = 1; /* set test1, line 672 */
+    {   int m2 = z->l - z->c; (void)m2; /* do, line 673 */
+        {   int ret = r_step1(z); /* call step1, line 673 */
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
-    {   int m3 = z->l - z->c; (void)m3; /* do, line 676 */
-        {   int ret = r_steps1(z); /* call steps1, line 676 */
-            if (ret == 0) goto lab2;
+    {   int m3 = z->l - z->c; (void)m3; /* do, line 674 */
+        {   int ret = r_steps1(z); /* call steps1, line 674 */
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
-    {   int m4 = z->l - z->c; (void)m4; /* do, line 677 */
-        {   int ret = r_steps2(z); /* call steps2, line 677 */
-            if (ret == 0) goto lab3;
+    {   int m4 = z->l - z->c; (void)m4; /* do, line 675 */
+        {   int ret = r_steps2(z); /* call steps2, line 675 */
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
-    {   int m5 = z->l - z->c; (void)m5; /* do, line 678 */
-        {   int ret = r_steps3(z); /* call steps3, line 678 */
-            if (ret == 0) goto lab4;
+    {   int m5 = z->l - z->c; (void)m5; /* do, line 676 */
+        {   int ret = r_steps3(z); /* call steps3, line 676 */
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m5;
     }
-    {   int m6 = z->l - z->c; (void)m6; /* do, line 679 */
-        {   int ret = r_steps4(z); /* call steps4, line 679 */
-            if (ret == 0) goto lab5;
+    {   int m6 = z->l - z->c; (void)m6; /* do, line 677 */
+        {   int ret = r_steps4(z); /* call steps4, line 677 */
             if (ret < 0) return ret;
         }
-    lab5:
         z->c = z->l - m6;
     }
-    {   int m7 = z->l - z->c; (void)m7; /* do, line 680 */
-        {   int ret = r_steps5(z); /* call steps5, line 680 */
-            if (ret == 0) goto lab6;
+    {   int m7 = z->l - z->c; (void)m7; /* do, line 678 */
+        {   int ret = r_steps5(z); /* call steps5, line 678 */
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m7;
     }
-    {   int m8 = z->l - z->c; (void)m8; /* do, line 681 */
-        {   int ret = r_steps6(z); /* call steps6, line 681 */
-            if (ret == 0) goto lab7;
+    {   int m8 = z->l - z->c; (void)m8; /* do, line 679 */
+        {   int ret = r_steps6(z); /* call steps6, line 679 */
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m8;
     }
-    {   int m9 = z->l - z->c; (void)m9; /* do, line 682 */
-        {   int ret = r_steps7(z); /* call steps7, line 682 */
-            if (ret == 0) goto lab8;
+    {   int m9 = z->l - z->c; (void)m9; /* do, line 680 */
+        {   int ret = r_steps7(z); /* call steps7, line 680 */
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = z->l - m9;
     }
-    {   int m10 = z->l - z->c; (void)m10; /* do, line 683 */
-        {   int ret = r_steps8(z); /* call steps8, line 683 */
-            if (ret == 0) goto lab9;
+    {   int m10 = z->l - z->c; (void)m10; /* do, line 681 */
+        {   int ret = r_steps8(z); /* call steps8, line 681 */
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = z->l - m10;
     }
-    {   int m11 = z->l - z->c; (void)m11; /* do, line 684 */
-        {   int ret = r_steps9(z); /* call steps9, line 684 */
-            if (ret == 0) goto lab10;
+    {   int m11 = z->l - z->c; (void)m11; /* do, line 682 */
+        {   int ret = r_steps9(z); /* call steps9, line 682 */
             if (ret < 0) return ret;
         }
-    lab10:
         z->c = z->l - m11;
     }
-    {   int m12 = z->l - z->c; (void)m12; /* do, line 685 */
-        {   int ret = r_steps10(z); /* call steps10, line 685 */
-            if (ret == 0) goto lab11;
+    {   int m12 = z->l - z->c; (void)m12; /* do, line 683 */
+        {   int ret = r_steps10(z); /* call steps10, line 683 */
             if (ret < 0) return ret;
         }
-    lab11:
         z->c = z->l - m12;
     }
-    {   int m13 = z->l - z->c; (void)m13; /* do, line 686 */
-        {   int ret = r_step2a(z); /* call step2a, line 686 */
-            if (ret == 0) goto lab12;
+    {   int m13 = z->l - z->c; (void)m13; /* do, line 684 */
+        {   int ret = r_step2a(z); /* call step2a, line 684 */
             if (ret < 0) return ret;
         }
-    lab12:
         z->c = z->l - m13;
     }
-    {   int m14 = z->l - z->c; (void)m14; /* do, line 687 */
-        {   int ret = r_step2b(z); /* call step2b, line 687 */
-            if (ret == 0) goto lab13;
+    {   int m14 = z->l - z->c; (void)m14; /* do, line 685 */
+        {   int ret = r_step2b(z); /* call step2b, line 685 */
             if (ret < 0) return ret;
         }
-    lab13:
         z->c = z->l - m14;
     }
-    {   int m15 = z->l - z->c; (void)m15; /* do, line 688 */
-        {   int ret = r_step2c(z); /* call step2c, line 688 */
-            if (ret == 0) goto lab14;
+    {   int m15 = z->l - z->c; (void)m15; /* do, line 686 */
+        {   int ret = r_step2c(z); /* call step2c, line 686 */
             if (ret < 0) return ret;
         }
-    lab14:
         z->c = z->l - m15;
     }
-    {   int m16 = z->l - z->c; (void)m16; /* do, line 689 */
-        {   int ret = r_step2d(z); /* call step2d, line 689 */
-            if (ret == 0) goto lab15;
+    {   int m16 = z->l - z->c; (void)m16; /* do, line 687 */
+        {   int ret = r_step2d(z); /* call step2d, line 687 */
             if (ret < 0) return ret;
         }
-    lab15:
         z->c = z->l - m16;
     }
-    {   int m17 = z->l - z->c; (void)m17; /* do, line 690 */
-        {   int ret = r_step3(z); /* call step3, line 690 */
-            if (ret == 0) goto lab16;
+    {   int m17 = z->l - z->c; (void)m17; /* do, line 688 */
+        {   int ret = r_step3(z); /* call step3, line 688 */
             if (ret < 0) return ret;
         }
-    lab16:
         z->c = z->l - m17;
     }
-    {   int m18 = z->l - z->c; (void)m18; /* do, line 691 */
-        {   int ret = r_step4(z); /* call step4, line 691 */
-            if (ret == 0) goto lab17;
+    {   int m18 = z->l - z->c; (void)m18; /* do, line 689 */
+        {   int ret = r_step4(z); /* call step4, line 689 */
             if (ret < 0) return ret;
         }
-    lab17:
         z->c = z->l - m18;
     }
-    {   int m19 = z->l - z->c; (void)m19; /* do, line 692 */
-        {   int ret = r_step5a(z); /* call step5a, line 692 */
-            if (ret == 0) goto lab18;
+    {   int m19 = z->l - z->c; (void)m19; /* do, line 690 */
+        {   int ret = r_step5a(z); /* call step5a, line 690 */
             if (ret < 0) return ret;
         }
-    lab18:
         z->c = z->l - m19;
     }
-    {   int m20 = z->l - z->c; (void)m20; /* do, line 693 */
-        {   int ret = r_step5b(z); /* call step5b, line 693 */
-            if (ret == 0) goto lab19;
+    {   int m20 = z->l - z->c; (void)m20; /* do, line 691 */
+        {   int ret = r_step5b(z); /* call step5b, line 691 */
             if (ret < 0) return ret;
         }
-    lab19:
         z->c = z->l - m20;
     }
-    {   int m21 = z->l - z->c; (void)m21; /* do, line 694 */
-        {   int ret = r_step5c(z); /* call step5c, line 694 */
-            if (ret == 0) goto lab20;
+    {   int m21 = z->l - z->c; (void)m21; /* do, line 692 */
+        {   int ret = r_step5c(z); /* call step5c, line 692 */
             if (ret < 0) return ret;
         }
-    lab20:
         z->c = z->l - m21;
     }
-    {   int m22 = z->l - z->c; (void)m22; /* do, line 695 */
-        {   int ret = r_step5d(z); /* call step5d, line 695 */
-            if (ret == 0) goto lab21;
+    {   int m22 = z->l - z->c; (void)m22; /* do, line 693 */
+        {   int ret = r_step5d(z); /* call step5d, line 693 */
             if (ret < 0) return ret;
         }
-    lab21:
         z->c = z->l - m22;
     }
-    {   int m23 = z->l - z->c; (void)m23; /* do, line 696 */
-        {   int ret = r_step5e(z); /* call step5e, line 696 */
-            if (ret == 0) goto lab22;
+    {   int m23 = z->l - z->c; (void)m23; /* do, line 694 */
+        {   int ret = r_step5e(z); /* call step5e, line 694 */
             if (ret < 0) return ret;
         }
-    lab22:
         z->c = z->l - m23;
     }
-    {   int m24 = z->l - z->c; (void)m24; /* do, line 697 */
-        {   int ret = r_step5f(z); /* call step5f, line 697 */
-            if (ret == 0) goto lab23;
+    {   int m24 = z->l - z->c; (void)m24; /* do, line 695 */
+        {   int ret = r_step5f(z); /* call step5f, line 695 */
             if (ret < 0) return ret;
         }
-    lab23:
         z->c = z->l - m24;
     }
-    {   int m25 = z->l - z->c; (void)m25; /* do, line 698 */
-        {   int ret = r_step5g(z); /* call step5g, line 698 */
-            if (ret == 0) goto lab24;
+    {   int m25 = z->l - z->c; (void)m25; /* do, line 696 */
+        {   int ret = r_step5g(z); /* call step5g, line 696 */
             if (ret < 0) return ret;
         }
-    lab24:
         z->c = z->l - m25;
     }
-    {   int m26 = z->l - z->c; (void)m26; /* do, line 699 */
-        {   int ret = r_step5h(z); /* call step5h, line 699 */
-            if (ret == 0) goto lab25;
+    {   int m26 = z->l - z->c; (void)m26; /* do, line 697 */
+        {   int ret = r_step5h(z); /* call step5h, line 697 */
             if (ret < 0) return ret;
         }
-    lab25:
         z->c = z->l - m26;
     }
-    {   int m27 = z->l - z->c; (void)m27; /* do, line 700 */
-        {   int ret = r_step5j(z); /* call step5j, line 700 */
-            if (ret == 0) goto lab26;
+    {   int m27 = z->l - z->c; (void)m27; /* do, line 698 */
+        {   int ret = r_step5j(z); /* call step5j, line 698 */
             if (ret < 0) return ret;
         }
-    lab26:
         z->c = z->l - m27;
     }
-    {   int m28 = z->l - z->c; (void)m28; /* do, line 701 */
-        {   int ret = r_step5i(z); /* call step5i, line 701 */
-            if (ret == 0) goto lab27;
+    {   int m28 = z->l - z->c; (void)m28; /* do, line 699 */
+        {   int ret = r_step5i(z); /* call step5i, line 699 */
             if (ret < 0) return ret;
         }
-    lab27:
         z->c = z->l - m28;
     }
-    {   int m29 = z->l - z->c; (void)m29; /* do, line 702 */
-        {   int ret = r_step5k(z); /* call step5k, line 702 */
-            if (ret == 0) goto lab28;
+    {   int m29 = z->l - z->c; (void)m29; /* do, line 700 */
+        {   int ret = r_step5k(z); /* call step5k, line 700 */
             if (ret < 0) return ret;
         }
-    lab28:
         z->c = z->l - m29;
     }
-    {   int m30 = z->l - z->c; (void)m30; /* do, line 703 */
-        {   int ret = r_step5l(z); /* call step5l, line 703 */
-            if (ret == 0) goto lab29;
+    {   int m30 = z->l - z->c; (void)m30; /* do, line 701 */
+        {   int ret = r_step5l(z); /* call step5l, line 701 */
             if (ret < 0) return ret;
         }
-    lab29:
         z->c = z->l - m30;
     }
-    {   int m31 = z->l - z->c; (void)m31; /* do, line 704 */
-        {   int ret = r_step5m(z); /* call step5m, line 704 */
-            if (ret == 0) goto lab30;
+    {   int m31 = z->l - z->c; (void)m31; /* do, line 702 */
+        {   int ret = r_step5m(z); /* call step5m, line 702 */
             if (ret < 0) return ret;
         }
-    lab30:
         z->c = z->l - m31;
     }
-    {   int m32 = z->l - z->c; (void)m32; /* do, line 705 */
-        {   int ret = r_step6(z); /* call step6, line 705 */
-            if (ret == 0) goto lab31;
+    {   int m32 = z->l - z->c; (void)m32; /* do, line 703 */
+        {   int ret = r_step6(z); /* call step6, line 703 */
             if (ret < 0) return ret;
         }
-    lab31:
         z->c = z->l - m32;
     }
-    {   int m33 = z->l - z->c; (void)m33; /* do, line 706 */
-        {   int ret = r_step7(z); /* call step7, line 706 */
-            if (ret == 0) goto lab32;
+    {   int m33 = z->l - z->c; (void)m33; /* do, line 704 */
+        {   int ret = r_step7(z); /* call step7, line 704 */
             if (ret < 0) return ret;
         }
-    lab32:
         z->c = z->l - m33;
     }
     z->c = z->lb;
     return 1;
 }
 
-extern struct SN_env * greek_UTF_8_create_env(void) { return SN_create_env(1, 0, 1); }
+extern struct SN_env * greek_UTF_8_create_env(void) { return SN_create_env(0, 0, 1); }
 
-extern void greek_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 1); }
+extern void greek_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
 
diff --git a/src/backend/snowball/libstemmer/stem_UTF_8_hindi.c b/src/backend/snowball/libstemmer/stem_UTF_8_hindi.c
new file mode 100644 (file)
index 0000000..06bc674
--- /dev/null
@@ -0,0 +1,332 @@
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
+
+#include "header.h"
+
+static int r_CONSONANT(struct SN_env * z);
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern int hindi_UTF_8_stem(struct SN_env * z);
+#ifdef __cplusplus
+}
+#endif
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+extern struct SN_env * hindi_UTF_8_create_env(void);
+extern void hindi_UTF_8_close_env(struct SN_env * z);
+
+
+#ifdef __cplusplus
+}
+#endif
+static const symbol s_0_0[3] = { 0xE0, 0xA5, 0x80 };
+static const symbol s_0_1[12] = { 0xE0, 0xA5, 0x82, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_2[12] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_3[12] = { 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_4[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_5[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_6[12] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_7[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_8[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_9[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_10[9] = { 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_11[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_12[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_13[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_14[9] = { 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_15[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_16[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_17[6] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_18[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_19[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_20[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_21[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_22[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x80 };
+static const symbol s_0_23[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x81 };
+static const symbol s_0_24[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
+static const symbol s_0_25[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
+static const symbol s_0_26[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
+static const symbol s_0_27[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
+static const symbol s_0_28[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x81 };
+static const symbol s_0_29[3] = { 0xE0, 0xA5, 0x81 };
+static const symbol s_0_30[6] = { 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_31[9] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_32[12] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_33[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_34[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x80, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_35[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_36[9] = { 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_37[9] = { 0xE0, 0xA4, 0x89, 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_38[6] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_39[6] = { 0xE0, 0xA4, 0x88, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_40[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x88, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_41[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x88, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_42[6] = { 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_43[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_44[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_45[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_46[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_47[6] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_48[9] = { 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_49[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_50[9] = { 0xE0, 0xA4, 0x89, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_51[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_52[12] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_53[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_54[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_55[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_56[6] = { 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_57[9] = { 0xE0, 0xA5, 0x81, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_58[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_59[9] = { 0xE0, 0xA4, 0x89, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_60[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_61[12] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_62[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_63[12] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_64[15] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_65[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_66[12] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_67[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_68[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_69[12] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x82 };
+static const symbol s_0_70[3] = { 0xE0, 0xA5, 0x82 };
+static const symbol s_0_71[3] = { 0xE0, 0xA4, 0x85 };
+static const symbol s_0_72[3] = { 0xE0, 0xA4, 0x86 };
+static const symbol s_0_73[3] = { 0xE0, 0xA4, 0x87 };
+static const symbol s_0_74[3] = { 0xE0, 0xA5, 0x87 };
+static const symbol s_0_75[12] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_76[12] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_77[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_78[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_79[9] = { 0xE0, 0xA5, 0x8B, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_80[9] = { 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_81[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_82[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93, 0xE0, 0xA4, 0x97, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_83[6] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_84[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_85[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_86[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_87[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_88[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_89[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_90[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA8, 0xE0, 0xA5, 0x87 };
+static const symbol s_0_91[3] = { 0xE0, 0xA4, 0x88 };
+static const symbol s_0_92[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x88 };
+static const symbol s_0_93[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x88 };
+static const symbol s_0_94[3] = { 0xE0, 0xA4, 0x89 };
+static const symbol s_0_95[3] = { 0xE0, 0xA4, 0x8A };
+static const symbol s_0_96[3] = { 0xE0, 0xA5, 0x8B };
+static const symbol s_0_97[3] = { 0xE0, 0xA5, 0x8D };
+static const symbol s_0_98[3] = { 0xE0, 0xA4, 0x8F };
+static const symbol s_0_99[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F };
+static const symbol s_0_100[6] = { 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F };
+static const symbol s_0_101[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F };
+static const symbol s_0_102[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x87, 0xE0, 0xA4, 0x8F };
+static const symbol s_0_103[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F };
+static const symbol s_0_104[6] = { 0xE0, 0xA4, 0xBF, 0xE0, 0xA4, 0x8F };
+static const symbol s_0_105[3] = { 0xE0, 0xA4, 0x93 };
+static const symbol s_0_106[6] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x93 };
+static const symbol s_0_107[6] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x93 };
+static const symbol s_0_108[6] = { 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
+static const symbol s_0_109[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
+static const symbol s_0_110[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
+static const symbol s_0_111[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x95, 0xE0, 0xA4, 0xB0 };
+static const symbol s_0_112[3] = { 0xE0, 0xA4, 0xBE };
+static const symbol s_0_113[12] = { 0xE0, 0xA5, 0x82, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_114[12] = { 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_115[15] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_116[15] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8A, 0xE0, 0xA4, 0x82, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_117[9] = { 0xE0, 0xA5, 0x87, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_118[9] = { 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_119[12] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_120[12] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0x8F, 0xE0, 0xA4, 0x97, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_121[6] = { 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_122[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_123[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_124[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA4, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_125[6] = { 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_126[9] = { 0xE0, 0xA4, 0x85, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_127[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_128[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xA8, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_129[9] = { 0xE0, 0xA4, 0x86, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_130[9] = { 0xE0, 0xA4, 0xBE, 0xE0, 0xA4, 0xAF, 0xE0, 0xA4, 0xBE };
+static const symbol s_0_131[3] = { 0xE0, 0xA4, 0xBF };
+
+static const struct among a_0[132] =
+{
+/*  0 */ { 3, s_0_0, -1, -1, 0},
+/*  1 */ { 12, s_0_1, 0, -1, 0},
+/*  2 */ { 12, s_0_2, 0, -1, 0},
+/*  3 */ { 12, s_0_3, 0, -1, 0},
+/*  4 */ { 15, s_0_4, 3, -1, 0},
+/*  5 */ { 15, s_0_5, 3, -1, 0},
+/*  6 */ { 12, s_0_6, 0, -1, 0},
+/*  7 */ { 15, s_0_7, 6, -1, 0},
+/*  8 */ { 15, s_0_8, 6, -1, 0},
+/*  9 */ { 9, s_0_9, 0, -1, 0},
+/* 10 */ { 9, s_0_10, 0, -1, 0},
+/* 11 */ { 9, s_0_11, 0, -1, 0},
+/* 12 */ { 12, s_0_12, 11, -1, 0},
+/* 13 */ { 12, s_0_13, 11, -1, 0},
+/* 14 */ { 9, s_0_14, 0, -1, 0},
+/* 15 */ { 12, s_0_15, 14, -1, 0},
+/* 16 */ { 12, s_0_16, 14, -1, 0},
+/* 17 */ { 6, s_0_17, 0, -1, r_CONSONANT},
+/* 18 */ { 9, s_0_18, 17, -1, 0},
+/* 19 */ { 9, s_0_19, 17, -1, 0},
+/* 20 */ { 9, s_0_20, 17, -1, 0},
+/* 21 */ { 6, s_0_21, 0, -1, r_CONSONANT},
+/* 22 */ { 9, s_0_22, 21, -1, 0},
+/* 23 */ { 6, s_0_23, -1, -1, 0},
+/* 24 */ { 6, s_0_24, -1, -1, 0},
+/* 25 */ { 12, s_0_25, 24, -1, 0},
+/* 26 */ { 15, s_0_26, 25, -1, 0},
+/* 27 */ { 15, s_0_27, 25, -1, 0},
+/* 28 */ { 12, s_0_28, 24, -1, 0},
+/* 29 */ { 3, s_0_29, -1, -1, 0},
+/* 30 */ { 6, s_0_30, -1, -1, 0},
+/* 31 */ { 9, s_0_31, 30, -1, r_CONSONANT},
+/* 32 */ { 12, s_0_32, 31, -1, 0},
+/* 33 */ { 12, s_0_33, 31, -1, 0},
+/* 34 */ { 12, s_0_34, 31, -1, 0},
+/* 35 */ { 6, s_0_35, -1, -1, 0},
+/* 36 */ { 9, s_0_36, 35, -1, 0},
+/* 37 */ { 9, s_0_37, 35, -1, 0},
+/* 38 */ { 6, s_0_38, -1, -1, 0},
+/* 39 */ { 6, s_0_39, -1, -1, 0},
+/* 40 */ { 9, s_0_40, 39, -1, 0},
+/* 41 */ { 9, s_0_41, 39, -1, 0},
+/* 42 */ { 6, s_0_42, -1, -1, 0},
+/* 43 */ { 12, s_0_43, 42, -1, 0},
+/* 44 */ { 15, s_0_44, 43, -1, 0},
+/* 45 */ { 15, s_0_45, 43, -1, 0},
+/* 46 */ { 12, s_0_46, 42, -1, 0},
+/* 47 */ { 6, s_0_47, -1, -1, 0},
+/* 48 */ { 9, s_0_48, 47, -1, 0},
+/* 49 */ { 9, s_0_49, 47, -1, 0},
+/* 50 */ { 9, s_0_50, 47, -1, 0},
+/* 51 */ { 9, s_0_51, 47, -1, 0},
+/* 52 */ { 12, s_0_52, 51, -1, r_CONSONANT},
+/* 53 */ { 15, s_0_53, 52, -1, 0},
+/* 54 */ { 12, s_0_54, 51, -1, r_CONSONANT},
+/* 55 */ { 15, s_0_55, 54, -1, 0},
+/* 56 */ { 6, s_0_56, -1, -1, 0},
+/* 57 */ { 9, s_0_57, 56, -1, 0},
+/* 58 */ { 9, s_0_58, 56, -1, 0},
+/* 59 */ { 9, s_0_59, 56, -1, 0},
+/* 60 */ { 9, s_0_60, 56, -1, 0},
+/* 61 */ { 12, s_0_61, 60, -1, r_CONSONANT},
+/* 62 */ { 15, s_0_62, 61, -1, 0},
+/* 63 */ { 12, s_0_63, 60, -1, r_CONSONANT},
+/* 64 */ { 15, s_0_64, 63, -1, 0},
+/* 65 */ { 6, s_0_65, -1, -1, 0},
+/* 66 */ { 12, s_0_66, 65, -1, 0},
+/* 67 */ { 15, s_0_67, 66, -1, 0},
+/* 68 */ { 15, s_0_68, 66, -1, 0},
+/* 69 */ { 12, s_0_69, 65, -1, 0},
+/* 70 */ { 3, s_0_70, -1, -1, 0},
+/* 71 */ { 3, s_0_71, -1, -1, 0},
+/* 72 */ { 3, s_0_72, -1, -1, 0},
+/* 73 */ { 3, s_0_73, -1, -1, 0},
+/* 74 */ { 3, s_0_74, -1, -1, 0},
+/* 75 */ { 12, s_0_75, 74, -1, 0},
+/* 76 */ { 12, s_0_76, 74, -1, 0},
+/* 77 */ { 15, s_0_77, 76, -1, 0},
+/* 78 */ { 15, s_0_78, 76, -1, 0},
+/* 79 */ { 9, s_0_79, 74, -1, 0},
+/* 80 */ { 9, s_0_80, 74, -1, 0},
+/* 81 */ { 12, s_0_81, 80, -1, 0},
+/* 82 */ { 12, s_0_82, 80, -1, 0},
+/* 83 */ { 6, s_0_83, 74, -1, r_CONSONANT},
+/* 84 */ { 9, s_0_84, 83, -1, 0},
+/* 85 */ { 9, s_0_85, 83, -1, 0},
+/* 86 */ { 9, s_0_86, 83, -1, 0},
+/* 87 */ { 6, s_0_87, 74, -1, r_CONSONANT},
+/* 88 */ { 9, s_0_88, 87, -1, 0},
+/* 89 */ { 9, s_0_89, 87, -1, 0},
+/* 90 */ { 9, s_0_90, 87, -1, 0},
+/* 91 */ { 3, s_0_91, -1, -1, 0},
+/* 92 */ { 6, s_0_92, 91, -1, 0},
+/* 93 */ { 6, s_0_93, 91, -1, 0},
+/* 94 */ { 3, s_0_94, -1, -1, 0},
+/* 95 */ { 3, s_0_95, -1, -1, 0},
+/* 96 */ { 3, s_0_96, -1, -1, 0},
+/* 97 */ { 3, s_0_97, -1, -1, 0},
+/* 98 */ { 3, s_0_98, -1, -1, 0},
+/* 99 */ { 6, s_0_99, 98, -1, 0},
+/*100 */ { 6, s_0_100, 98, -1, 0},
+/*101 */ { 9, s_0_101, 100, -1, 0},
+/*102 */ { 9, s_0_102, 100, -1, 0},
+/*103 */ { 6, s_0_103, 98, -1, 0},
+/*104 */ { 6, s_0_104, 98, -1, 0},
+/*105 */ { 3, s_0_105, -1, -1, 0},
+/*106 */ { 6, s_0_106, 105, -1, 0},
+/*107 */ { 6, s_0_107, 105, -1, 0},
+/*108 */ { 6, s_0_108, -1, -1, r_CONSONANT},
+/*109 */ { 9, s_0_109, 108, -1, 0},
+/*110 */ { 9, s_0_110, 108, -1, 0},
+/*111 */ { 9, s_0_111, 108, -1, 0},
+/*112 */ { 3, s_0_112, -1, -1, 0},
+/*113 */ { 12, s_0_113, 112, -1, 0},
+/*114 */ { 12, s_0_114, 112, -1, 0},
+/*115 */ { 15, s_0_115, 114, -1, 0},
+/*116 */ { 15, s_0_116, 114, -1, 0},
+/*117 */ { 9, s_0_117, 112, -1, 0},
+/*118 */ { 9, s_0_118, 112, -1, 0},
+/*119 */ { 12, s_0_119, 118, -1, 0},
+/*120 */ { 12, s_0_120, 118, -1, 0},
+/*121 */ { 6, s_0_121, 112, -1, r_CONSONANT},
+/*122 */ { 9, s_0_122, 121, -1, 0},
+/*123 */ { 9, s_0_123, 121, -1, 0},
+/*124 */ { 9, s_0_124, 121, -1, 0},
+/*125 */ { 6, s_0_125, 112, -1, r_CONSONANT},
+/*126 */ { 9, s_0_126, 125, -1, 0},
+/*127 */ { 9, s_0_127, 125, -1, 0},
+/*128 */ { 9, s_0_128, 125, -1, 0},
+/*129 */ { 9, s_0_129, 112, -1, 0},
+/*130 */ { 9, s_0_130, 112, -1, 0},
+/*131 */ { 3, s_0_131, -1, -1, 0}
+};
+
+static const unsigned char g_consonant[] = { 255, 255, 255, 255, 159, 0, 0, 0, 248, 7 };
+
+
+static int r_CONSONANT(struct SN_env * z) { /* backwardmode */
+    if (in_grouping_b_U(z, g_consonant, 2325, 2399, 0)) return 0; /* grouping consonant, line 129 */
+    return 1;
+}
+
+extern int hindi_UTF_8_stem(struct SN_env * z) { /* forwardmode */
+    {   int c_test1 = z->c; /* test, line 132 */
+        {   int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
+            if (ret < 0) return 0;
+            z->c = ret; /* next, line 132 */
+        }
+        z->I[0] = z->c; /* setmark p, line 132 */
+        z->c = c_test1;
+    }
+    z->lb = z->c; z->c = z->l; /* backwards, line 133 */
+
+
+    {   int mlimit2; /* setlimit, line 139 */
+        if (z->c < z->I[0]) return 0;
+        mlimit2 = z->lb; z->lb = z->I[0];
+        z->ket = z->c; /* [, line 139 */
+        if (!(find_among_b(z, a_0, 132))) { z->lb = mlimit2; return 0; } /* substring, line 139 */
+        z->bra = z->c; /* ], line 139 */
+        z->lb = mlimit2;
+    }
+    {   int ret = slice_del(z); /* delete, line 321 */
+        if (ret < 0) return ret;
+    }
+    z->c = z->lb;
+    return 1;
+}
+
+extern struct SN_env * hindi_UTF_8_create_env(void) { return SN_create_env(0, 1, 0); }
+
+extern void hindi_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+
index d8ae15aeabdb06924eb801ede79e1aac6f7bcd09..284b3230c24237e9a00926fe37f2bee6c5b5917e 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -799,84 +798,64 @@ static int r_plur_owner(struct SN_env * z) { /* backwardmode */
 extern int hungarian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 229 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 229 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 230 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 231 */
         {   int ret = r_instrum(z); /* call instrum, line 231 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 232 */
         {   int ret = r_case(z); /* call case, line 232 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 233 */
         {   int ret = r_case_special(z); /* call case_special, line 233 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 234 */
         {   int ret = r_case_other(z); /* call case_other, line 234 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m5;
     }
     {   int m6 = z->l - z->c; (void)m6; /* do, line 235 */
         {   int ret = r_factive(z); /* call factive, line 235 */
-            if (ret == 0) goto lab5;
             if (ret < 0) return ret;
         }
-    lab5:
         z->c = z->l - m6;
     }
     {   int m7 = z->l - z->c; (void)m7; /* do, line 236 */
         {   int ret = r_owned(z); /* call owned, line 236 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m7;
     }
     {   int m8 = z->l - z->c; (void)m8; /* do, line 237 */
         {   int ret = r_sing_owner(z); /* call sing_owner, line 237 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m8;
     }
     {   int m9 = z->l - z->c; (void)m9; /* do, line 238 */
         {   int ret = r_plur_owner(z); /* call plur_owner, line 238 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = z->l - m9;
     }
     {   int m10 = z->l - z->c; (void)m10; /* do, line 239 */
         {   int ret = r_plural(z); /* call plural, line 239 */
-            if (ret == 0) goto lab9;
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = z->l - m10;
     }
     z->c = z->lb;
index 846e6e76bf7561a4b915552fc0361aa34ae96a7b..0a4d6392bff8c8fa3312cef5a9e509fa6f4ececf 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -314,8 +313,9 @@ static int r_remove_second_order_prefix(struct SN_env * z) { /* forwardmode */
 extern int indonesian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     z->I[0] = 0; /* $measure = <integer expression>, line 172 */
     {   int c1 = z->c; /* do, line 173 */
-        while(1) { /* repeat, line 173 */
-            int c2 = z->c;
+/* repeat, line 173 */
+
+        while(1) {            int c2 = z->c;
             {    /* gopast */ /* grouping vowel, line 173 */
                 int ret = out_grouping_U(z, g_vowel, 97, 117, 1);
                 if (ret < 0) goto lab1;
@@ -335,19 +335,15 @@ extern int indonesian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
 
     {   int m3 = z->l - z->c; (void)m3; /* do, line 177 */
         {   int ret = r_remove_particle(z); /* call remove_particle, line 177 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     if (!(z->I[0] > 2)) return 0; /* $(<integer expression> > <integer expression>), line 178 */
     {   int m4 = z->l - z->c; (void)m4; /* do, line 179 */
         {   int ret = r_remove_possessive_pronoun(z); /* call remove_possessive_pronoun, line 179 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     z->c = z->lb;
@@ -355,56 +351,54 @@ extern int indonesian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c5 = z->c; /* or, line 188 */
         {   int c_test6 = z->c; /* test, line 182 */
             {   int ret = r_remove_first_order_prefix(z); /* call remove_first_order_prefix, line 183 */
-                if (ret == 0) goto lab5;
+                if (ret == 0) goto lab3;
                 if (ret < 0) return ret;
             }
             {   int c7 = z->c; /* do, line 184 */
                 {   int c_test8 = z->c; /* test, line 185 */
-                    if (!(z->I[0] > 2)) goto lab6; /* $(<integer expression> > <integer expression>), line 185 */
+                    if (!(z->I[0] > 2)) goto lab4; /* $(<integer expression> > <integer expression>), line 185 */
                     z->lb = z->c; z->c = z->l; /* backwards, line 185 */
 
                     {   int ret = r_remove_suffix(z); /* call remove_suffix, line 185 */
-                        if (ret == 0) goto lab6;
+                        if (ret == 0) goto lab4;
                         if (ret < 0) return ret;
                     }
                     z->c = z->lb;
                     z->c = c_test8;
                 }
-                if (!(z->I[0] > 2)) goto lab6; /* $(<integer expression> > <integer expression>), line 186 */
+                if (!(z->I[0] > 2)) goto lab4; /* $(<integer expression> > <integer expression>), line 186 */
                 {   int ret = r_remove_second_order_prefix(z); /* call remove_second_order_prefix, line 186 */
-                    if (ret == 0) goto lab6;
+                    if (ret == 0) goto lab4;
                     if (ret < 0) return ret;
                 }
-            lab6:
+            lab4:
                 z->c = c7;
             }
             z->c = c_test6;
         }
-        goto lab4;
-    lab5:
+        goto lab2;
+    lab3:
         z->c = c5;
         {   int c9 = z->c; /* do, line 189 */
             {   int ret = r_remove_second_order_prefix(z); /* call remove_second_order_prefix, line 189 */
-                if (ret == 0) goto lab7;
                 if (ret < 0) return ret;
             }
-        lab7:
             z->c = c9;
         }
         {   int c10 = z->c; /* do, line 190 */
-            if (!(z->I[0] > 2)) goto lab8; /* $(<integer expression> > <integer expression>), line 190 */
+            if (!(z->I[0] > 2)) goto lab5; /* $(<integer expression> > <integer expression>), line 190 */
             z->lb = z->c; z->c = z->l; /* backwards, line 190 */
 
             {   int ret = r_remove_suffix(z); /* call remove_suffix, line 190 */
-                if (ret == 0) goto lab8;
+                if (ret == 0) goto lab5;
                 if (ret < 0) return ret;
             }
             z->c = z->lb;
-        lab8:
+        lab5:
             z->c = c10;
         }
     }
-lab4:
+lab2:
     return 1;
 }
 
index 239c967c2b057d3f968d5cac3e696b705b9b924d..8d1f219db0b2ed4e3707037dccedcb0b9116cfc2 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -442,42 +441,32 @@ static int r_verb_sfx(struct SN_env * z) { /* backwardmode */
 extern int irish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 144 */
         {   int ret = r_initial_morph(z); /* call initial_morph, line 144 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 145 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 145 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 146 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 147 */
         {   int ret = r_noun_sfx(z); /* call noun_sfx, line 147 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 148 */
         {   int ret = r_deriv(z); /* call deriv, line 148 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 149 */
         {   int ret = r_verb_sfx(z); /* call verb_sfx, line 149 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m4;
     }
     z->c = z->lb;
index 7546960fac94d97834f95528a7396faab6e2b988..51e47978c21afece6cf76c74e2dece810b570ecf 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -492,8 +491,9 @@ static const symbol s_17[] = { 'i', 'c' };
 static int r_prelude(struct SN_env * z) { /* forwardmode */
     int among_var;
     {   int c_test1 = z->c; /* test, line 35 */
-        while(1) { /* repeat, line 35 */
-            int c2 = z->c;
+/* repeat, line 35 */
+
+        while(1) {            int c2 = z->c;
             z->bra = z->c; /* [, line 36 */
             among_var = find_among(z, a_0, 7); /* substring, line 36 */
             if (!(among_var)) goto lab0;
@@ -543,8 +543,9 @@ static int r_prelude(struct SN_env * z) { /* forwardmode */
         }
         z->c = c_test1;
     }
-    while(1) { /* repeat, line 46 */
-        int c3 = z->c;
+/* repeat, line 46 */
+
+    while(1) {        int c3 = z->c;
         while(1) { /* goto, line 46 */
             int c4 = z->c;
             if (in_grouping_U(z, g_v, 97, 249, 0)) goto lab2; /* grouping v, line 47 */
@@ -670,8 +671,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 70 */
-        int c1 = z->c;
+/* repeat, line 70 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 72 */
         if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 85)) among_var = 3; else /* substring, line 72 */
         among_var = find_among(z, a_1, 3);
@@ -975,61 +977,51 @@ static int r_vowel_suffix(struct SN_env * z) { /* backwardmode */
 extern int italian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 182 */
         {   int ret = r_prelude(z); /* call prelude, line 182 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 183 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 183 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 184 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 185 */
         {   int ret = r_attached_pronoun(z); /* call attached_pronoun, line 185 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 186 */
         {   int m4 = z->l - z->c; (void)m4; /* or, line 186 */
             {   int ret = r_standard_suffix(z); /* call standard_suffix, line 186 */
-                if (ret == 0) goto lab5;
+                if (ret == 0) goto lab2;
                 if (ret < 0) return ret;
             }
-            goto lab4;
-        lab5:
+            goto lab1;
+        lab2:
             z->c = z->l - m4;
             {   int ret = r_verb_suffix(z); /* call verb_suffix, line 186 */
-                if (ret == 0) goto lab3;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab4:
-    lab3:
+    lab1:
+    lab0:
         z->c = z->l - m3;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 187 */
         {   int ret = r_vowel_suffix(z); /* call vowel_suffix, line 187 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m5;
     }
     z->c = z->lb;
     {   int c6 = z->c; /* do, line 189 */
         {   int ret = r_postlude(z); /* call postlude, line 189 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = c6;
     }
     return 1;
index dbf27e62ddfbca6511d451389ef27db3d48e7683..f876e8fc236bd9c4ceb9627ee9d074fe0919da38 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -652,8 +651,9 @@ static int r_step1(struct SN_env * z) { /* backwardmode */
 }
 
 static int r_step2(struct SN_env * z) { /* backwardmode */
-    while(1) { /* repeat, line 232 */
-        int m1 = z->l - z->c; (void)m1;
+/* repeat, line 232 */
+
+    while(1) {        int m1 = z->l - z->c; (void)m1;
 
         {   int mlimit2; /* setlimit, line 233 */
             if (z->c < z->I[0]) goto lab0;
@@ -794,50 +794,38 @@ extern int lithuanian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
 
     {   int m4 = z->l - z->c; (void)m4; /* do, line 365 */
         {   int ret = r_fix_conflicts(z); /* call fix_conflicts, line 365 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m4;
     }
     {   int m5 = z->l - z->c; (void)m5; /* do, line 366 */
         {   int ret = r_step1(z); /* call step1, line 366 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m5;
     }
     {   int m6 = z->l - z->c; (void)m6; /* do, line 367 */
         {   int ret = r_fix_chdz(z); /* call fix_chdz, line 367 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = z->l - m6;
     }
     {   int m7 = z->l - z->c; (void)m7; /* do, line 368 */
         {   int ret = r_step2(z); /* call step2, line 368 */
-            if (ret == 0) goto lab5;
             if (ret < 0) return ret;
         }
-    lab5:
         z->c = z->l - m7;
     }
     {   int m8 = z->l - z->c; (void)m8; /* do, line 369 */
         {   int ret = r_fix_chdz(z); /* call fix_chdz, line 369 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m8;
     }
     {   int m9 = z->l - z->c; (void)m9; /* do, line 370 */
         {   int ret = r_fix_gd(z); /* call fix_gd, line 370 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m9;
     }
     z->c = z->lb;
index d1c1be76f373394d290b45835543daee77d90925..7927e66803e5b970d4c86c2d0b4b7c7f4f7cfb2e 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -379,36 +378,35 @@ extern int nepali_UTF_8_stem(struct SN_env * z) { /* forwardmode */
 
     {   int m1 = z->l - z->c; (void)m1; /* do, line 87 */
         {   int ret = r_remove_category_1(z); /* call remove_category_1, line 87 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = z->l - m1;
     }
     {   int m2 = z->l - z->c; (void)m2; /* do, line 88 */
-        while(1) { /* repeat, line 89 */
-            int m3 = z->l - z->c; (void)m3;
+/* repeat, line 89 */
+
+        while(1) {            int m3 = z->l - z->c; (void)m3;
             {   int m4 = z->l - z->c; (void)m4; /* do, line 89 */
                 {   int m5 = z->l - z->c; (void)m5; /* and, line 89 */
                     {   int ret = r_check_category_2(z); /* call check_category_2, line 89 */
-                        if (ret == 0) goto lab3;
+                        if (ret == 0) goto lab2;
                         if (ret < 0) return ret;
                     }
                     z->c = z->l - m5;
                     {   int ret = r_remove_category_2(z); /* call remove_category_2, line 89 */
-                        if (ret == 0) goto lab3;
+                        if (ret == 0) goto lab2;
                         if (ret < 0) return ret;
                     }
                 }
-            lab3:
+            lab2:
                 z->c = z->l - m4;
             }
             {   int ret = r_remove_category_3(z); /* call remove_category_3, line 89 */
-                if (ret == 0) goto lab2;
+                if (ret == 0) goto lab1;
                 if (ret < 0) return ret;
             }
             continue;
-        lab2:
+        lab1:
             z->c = z->l - m3;
             break;
         }
index 62d221be55ad44e97bb4079c246882da7226e8e9..e333b1dfffe3b4336e33a0f576265e2221cb3e6e 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -243,36 +242,28 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
 extern int norwegian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 74 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 74 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 75 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 76 */
         {   int ret = r_main_suffix(z); /* call main_suffix, line 76 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 77 */
         {   int ret = r_consonant_pair(z); /* call consonant_pair, line 77 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 78 */
         {   int ret = r_other_suffix(z); /* call other_suffix, line 78 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     z->c = z->lb;
index bb83a7449a170936a8b76540a7da038c3a356785..961a06cbf92d6b350d97c955401f6f25c2534840 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -577,8 +576,9 @@ extern int porter_UTF_8_stem(struct SN_env * z) { /* forwardmode */
         z->c = c1;
     }
     {   int c2 = z->c; /* do, line 117 */
-        while(1) { /* repeat, line 117 */
-            int c3 = z->c;
+/* repeat, line 117 */
+
+        while(1) {            int c3 = z->c;
             while(1) { /* goto, line 117 */
                 int c4 = z->c;
                 if (in_grouping_U(z, g_v, 97, 121, 0)) goto lab3; /* grouping v, line 117 */
@@ -638,85 +638,70 @@ extern int porter_UTF_8_stem(struct SN_env * z) { /* forwardmode */
 
     {   int m6 = z->l - z->c; (void)m6; /* do, line 127 */
         {   int ret = r_Step_1a(z); /* call Step_1a, line 127 */
-            if (ret == 0) goto lab5;
             if (ret < 0) return ret;
         }
-    lab5:
         z->c = z->l - m6;
     }
     {   int m7 = z->l - z->c; (void)m7; /* do, line 128 */
         {   int ret = r_Step_1b(z); /* call Step_1b, line 128 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m7;
     }
     {   int m8 = z->l - z->c; (void)m8; /* do, line 129 */
         {   int ret = r_Step_1c(z); /* call Step_1c, line 129 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m8;
     }
     {   int m9 = z->l - z->c; (void)m9; /* do, line 130 */
         {   int ret = r_Step_2(z); /* call Step_2, line 130 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = z->l - m9;
     }
     {   int m10 = z->l - z->c; (void)m10; /* do, line 131 */
         {   int ret = r_Step_3(z); /* call Step_3, line 131 */
-            if (ret == 0) goto lab9;
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = z->l - m10;
     }
     {   int m11 = z->l - z->c; (void)m11; /* do, line 132 */
         {   int ret = r_Step_4(z); /* call Step_4, line 132 */
-            if (ret == 0) goto lab10;
             if (ret < 0) return ret;
         }
-    lab10:
         z->c = z->l - m11;
     }
     {   int m12 = z->l - z->c; (void)m12; /* do, line 133 */
         {   int ret = r_Step_5a(z); /* call Step_5a, line 133 */
-            if (ret == 0) goto lab11;
             if (ret < 0) return ret;
         }
-    lab11:
         z->c = z->l - m12;
     }
     {   int m13 = z->l - z->c; (void)m13; /* do, line 134 */
         {   int ret = r_Step_5b(z); /* call Step_5b, line 134 */
-            if (ret == 0) goto lab12;
             if (ret < 0) return ret;
         }
-    lab12:
         z->c = z->l - m13;
     }
     z->c = z->lb;
     {   int c14 = z->c; /* do, line 137 */
-        if (!(z->B[0])) goto lab13; /* Boolean test Y_found, line 137 */
-        while(1) { /* repeat, line 137 */
-            int c15 = z->c;
+        if (!(z->B[0])) goto lab5; /* Boolean test Y_found, line 137 */
+/* repeat, line 137 */
+
+        while(1) {            int c15 = z->c;
             while(1) { /* goto, line 137 */
                 int c16 = z->c;
                 z->bra = z->c; /* [, line 137 */
-                if (z->c == z->l || z->p[z->c] != 'Y') goto lab15; /* literal, line 137 */
+                if (z->c == z->l || z->p[z->c] != 'Y') goto lab7; /* literal, line 137 */
                 z->c++;
                 z->ket = z->c; /* ], line 137 */
                 z->c = c16;
                 break;
-            lab15:
+            lab7:
                 z->c = c16;
                 {   int ret = skip_utf8(z->p, z->c, 0, z->l, 1);
-                    if (ret < 0) goto lab14;
+                    if (ret < 0) goto lab6;
                     z->c = ret; /* goto, line 137 */
                 }
             }
@@ -724,11 +709,11 @@ extern int porter_UTF_8_stem(struct SN_env * z) { /* forwardmode */
                 if (ret < 0) return ret;
             }
             continue;
-        lab14:
+        lab6:
             z->c = c15;
             break;
         }
-    lab13:
+    lab5:
         z->c = c14;
     }
     return 1;
index f5f2e0fe0cf44aab7ce43764bf732dbc9d0820ed..278fdff8d9a2eff9e220e8f92fe834ff465c2371 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -475,8 +474,9 @@ static const symbol s_10[] = { 'c' };
 
 static int r_prelude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 36 */
-        int c1 = z->c;
+/* repeat, line 36 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 37 */
         if (z->c + 1 >= z->l || (z->p[z->c + 1] != 163 && z->p[z->c + 1] != 181)) among_var = 3; else /* substring, line 37 */
         among_var = find_among(z, a_0, 3);
@@ -592,8 +592,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 62 */
-        int c1 = z->c;
+/* repeat, line 62 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 63 */
         if (z->c + 1 >= z->l || z->p[z->c + 1] != 126) among_var = 3; else /* substring, line 63 */
         among_var = find_among(z, a_1, 3);
@@ -885,18 +886,14 @@ static int r_residual_form(struct SN_env * z) { /* backwardmode */
 extern int portuguese_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 202 */
         {   int ret = r_prelude(z); /* call prelude, line 202 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 203 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 203 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 204 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 205 */
@@ -904,67 +901,63 @@ lab1:
             {   int m4 = z->l - z->c; (void)m4; /* and, line 207 */
                 {   int m5 = z->l - z->c; (void)m5; /* or, line 206 */
                     {   int ret = r_standard_suffix(z); /* call standard_suffix, line 206 */
-                        if (ret == 0) goto lab6;
+                        if (ret == 0) goto lab4;
                         if (ret < 0) return ret;
                     }
-                    goto lab5;
-                lab6:
+                    goto lab3;
+                lab4:
                     z->c = z->l - m5;
                     {   int ret = r_verb_suffix(z); /* call verb_suffix, line 206 */
-                        if (ret == 0) goto lab4;
+                        if (ret == 0) goto lab2;
                         if (ret < 0) return ret;
                     }
                 }
-            lab5:
+            lab3:
                 z->c = z->l - m4;
                 {   int m6 = z->l - z->c; (void)m6; /* do, line 207 */
                     z->ket = z->c; /* [, line 207 */
-                    if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab7; /* literal, line 207 */
+                    if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab5; /* literal, line 207 */
                     z->c--;
                     z->bra = z->c; /* ], line 207 */
                     {   int m_test7 = z->l - z->c; /* test, line 207 */
-                        if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab7; /* literal, line 207 */
+                        if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab5; /* literal, line 207 */
                         z->c--;
                         z->c = z->l - m_test7;
                     }
                     {   int ret = r_RV(z); /* call RV, line 207 */
-                        if (ret == 0) goto lab7;
+                        if (ret == 0) goto lab5;
                         if (ret < 0) return ret;
                     }
                     {   int ret = slice_del(z); /* delete, line 207 */
                         if (ret < 0) return ret;
                     }
-                lab7:
+                lab5:
                     z->c = z->l - m6;
                 }
             }
-            goto lab3;
-        lab4:
+            goto lab1;
+        lab2:
             z->c = z->l - m3;
             {   int ret = r_residual_suffix(z); /* call residual_suffix, line 209 */
-                if (ret == 0) goto lab2;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab3:
-    lab2:
+    lab1:
+    lab0:
         z->c = z->l - m2;
     }
     {   int m8 = z->l - z->c; (void)m8; /* do, line 211 */
         {   int ret = r_residual_form(z); /* call residual_form, line 211 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = z->l - m8;
     }
     z->c = z->lb;
     {   int c9 = z->c; /* do, line 213 */
         {   int ret = r_postlude(z); /* call postlude, line 213 */
-            if (ret == 0) goto lab9;
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = c9;
     }
     return 1;
index 0e1e5fcd0876229845bc649f694cf54ac504cefb..d9594d5cd7c5e0de87b850117aa5d9ea2ee9cfd6 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -538,8 +537,9 @@ static const symbol s_18[] = { 't' };
 static const symbol s_19[] = { 'i', 's', 't' };
 
 static int r_prelude(struct SN_env * z) { /* forwardmode */
-    while(1) { /* repeat, line 32 */
-        int c1 = z->c;
+/* repeat, line 32 */
+
+    while(1) {        int c1 = z->c;
         while(1) { /* goto, line 32 */
             int c2 = z->c;
             if (in_grouping_U(z, g_v, 97, 259, 0)) goto lab1; /* grouping v, line 33 */
@@ -665,8 +665,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 56 */
-        int c1 = z->c;
+/* repeat, line 56 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 58 */
         if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 85)) among_var = 3; else /* substring, line 58 */
         among_var = find_among(z, a_0, 3);
@@ -820,8 +821,9 @@ static int r_combo_suffix(struct SN_env * z) { /* backwardmode */
 static int r_standard_suffix(struct SN_env * z) { /* backwardmode */
     int among_var;
     z->B[0] = 0; /* unset standard_suffix_removed, line 130 */
-    while(1) { /* repeat, line 131 */
-        int m1 = z->l - z->c; (void)m1;
+/* repeat, line 131 */
+
+    while(1) {        int m1 = z->l - z->c; (void)m1;
         {   int ret = r_combo_suffix(z); /* call combo_suffix, line 131 */
             if (ret == 0) goto lab0;
             if (ret < 0) return ret;
@@ -913,66 +915,54 @@ static int r_vowel_suffix(struct SN_env * z) { /* backwardmode */
 extern int romanian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 226 */
         {   int ret = r_prelude(z); /* call prelude, line 226 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     /* do, line 227 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 227 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     z->lb = z->c; z->c = z->l; /* backwards, line 228 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 229 */
         {   int ret = r_step_0(z); /* call step_0, line 229 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 230 */
         {   int ret = r_standard_suffix(z); /* call standard_suffix, line 230 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 231 */
         {   int m5 = z->l - z->c; (void)m5; /* or, line 231 */
-            if (!(z->B[0])) goto lab6; /* Boolean test standard_suffix_removed, line 231 */
-            goto lab5;
-        lab6:
+            if (!(z->B[0])) goto lab2; /* Boolean test standard_suffix_removed, line 231 */
+            goto lab1;
+        lab2:
             z->c = z->l - m5;
             {   int ret = r_verb_suffix(z); /* call verb_suffix, line 231 */
-                if (ret == 0) goto lab4;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab5:
-    lab4:
+    lab1:
+    lab0:
         z->c = z->l - m4;
     }
     {   int m6 = z->l - z->c; (void)m6; /* do, line 232 */
         {   int ret = r_vowel_suffix(z); /* call vowel_suffix, line 232 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = z->l - m6;
     }
     z->c = z->lb;
     {   int c7 = z->c; /* do, line 234 */
         {   int ret = r_postlude(z); /* call postlude, line 234 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = c7;
     }
     return 1;
index 5e5fd20fa3f31569c93d12c4d9d0e0f916abbc03..fb69a847cf4e546f037a458ad99a423a4ad12174 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -565,8 +564,9 @@ static int r_tidy_up(struct SN_env * z) { /* backwardmode */
 
 extern int russian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 205 */
-        while(1) { /* repeat, line 205 */
-            int c2 = z->c;
+/* repeat, line 205 */
+
+        while(1) {            int c2 = z->c;
             while(1) { /* goto, line 205 */
                 int c3 = z->c;
                 z->bra = z->c; /* [, line 205 */
@@ -593,10 +593,8 @@ extern int russian_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     }
     /* do, line 207 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 207 */
-        if (ret == 0) goto lab3;
         if (ret < 0) return ret;
     }
-lab3:
     z->lb = z->c; z->c = z->l; /* backwards, line 208 */
 
 
@@ -606,71 +604,67 @@ lab3:
         {   int m5 = z->l - z->c; (void)m5; /* do, line 209 */
             {   int m6 = z->l - z->c; (void)m6; /* or, line 210 */
                 {   int ret = r_perfective_gerund(z); /* call perfective_gerund, line 210 */
-                    if (ret == 0) goto lab6;
+                    if (ret == 0) goto lab5;
                     if (ret < 0) return ret;
                 }
-                goto lab5;
-            lab6:
+                goto lab4;
+            lab5:
                 z->c = z->l - m6;
                 {   int m7 = z->l - z->c; (void)m7; /* try, line 211 */
                     {   int ret = r_reflexive(z); /* call reflexive, line 211 */
-                        if (ret == 0) { z->c = z->l - m7; goto lab7; }
+                        if (ret == 0) { z->c = z->l - m7; goto lab6; }
                         if (ret < 0) return ret;
                     }
-                lab7:
+                lab6:
                     ;
                 }
                 {   int m8 = z->l - z->c; (void)m8; /* or, line 212 */
                     {   int ret = r_adjectival(z); /* call adjectival, line 212 */
-                        if (ret == 0) goto lab9;
+                        if (ret == 0) goto lab8;
                         if (ret < 0) return ret;
                     }
-                    goto lab8;
-                lab9:
+                    goto lab7;
+                lab8:
                     z->c = z->l - m8;
                     {   int ret = r_verb(z); /* call verb, line 212 */
-                        if (ret == 0) goto lab10;
+                        if (ret == 0) goto lab9;
                         if (ret < 0) return ret;
                     }
-                    goto lab8;
-                lab10:
+                    goto lab7;
+                lab9:
                     z->c = z->l - m8;
                     {   int ret = r_noun(z); /* call noun, line 212 */
-                        if (ret == 0) goto lab4;
+                        if (ret == 0) goto lab3;
                         if (ret < 0) return ret;
                     }
                 }
-            lab8:
+            lab7:
                 ;
             }
-        lab5:
         lab4:
+        lab3:
             z->c = z->l - m5;
         }
         {   int m9 = z->l - z->c; (void)m9; /* try, line 215 */
             z->ket = z->c; /* [, line 215 */
-            if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m9; goto lab11; } /* literal, line 215 */
+            if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m9; goto lab10; } /* literal, line 215 */
             z->bra = z->c; /* ], line 215 */
             {   int ret = slice_del(z); /* delete, line 215 */
                 if (ret < 0) return ret;
             }
-        lab11:
+        lab10:
             ;
         }
         {   int m10 = z->l - z->c; (void)m10; /* do, line 218 */
             {   int ret = r_derivational(z); /* call derivational, line 218 */
-                if (ret == 0) goto lab12;
                 if (ret < 0) return ret;
             }
-        lab12:
             z->c = z->l - m10;
         }
         {   int m11 = z->l - z->c; (void)m11; /* do, line 219 */
             {   int ret = r_tidy_up(z); /* call tidy_up, line 219 */
-                if (ret == 0) goto lab13;
                 if (ret < 0) return ret;
             }
-        lab13:
             z->c = z->l - m11;
         }
         z->lb = mlimit4;
index a3755d4d840eada74a63bb95bc34da31c0a1167c..237d743ca8a9991c765280dae4ff6d66a74fb7ed 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -588,8 +587,9 @@ static int r_mark_regions(struct SN_env * z) { /* forwardmode */
 
 static int r_postlude(struct SN_env * z) { /* forwardmode */
     int among_var;
-    while(1) { /* repeat, line 49 */
-        int c1 = z->c;
+/* repeat, line 49 */
+
+    while(1) {        int c1 = z->c;
         z->bra = z->c; /* [, line 50 */
         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 /* substring, line 50 */
         among_var = find_among(z, a_0, 6);
@@ -989,60 +989,52 @@ static int r_residual_suffix(struct SN_env * z) { /* backwardmode */
 extern int spanish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     /* do, line 216 */
     {   int ret = r_mark_regions(z); /* call mark_regions, line 216 */
-        if (ret == 0) goto lab0;
         if (ret < 0) return ret;
     }
-lab0:
     z->lb = z->c; z->c = z->l; /* backwards, line 217 */
 
     {   int m1 = z->l - z->c; (void)m1; /* do, line 218 */
         {   int ret = r_attached_pronoun(z); /* call attached_pronoun, line 218 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m1;
     }
     {   int m2 = z->l - z->c; (void)m2; /* do, line 219 */
         {   int m3 = z->l - z->c; (void)m3; /* or, line 219 */
             {   int ret = r_standard_suffix(z); /* call standard_suffix, line 219 */
-                if (ret == 0) goto lab4;
+                if (ret == 0) goto lab2;
                 if (ret < 0) return ret;
             }
-            goto lab3;
-        lab4:
+            goto lab1;
+        lab2:
             z->c = z->l - m3;
             {   int ret = r_y_verb_suffix(z); /* call y_verb_suffix, line 220 */
-                if (ret == 0) goto lab5;
+                if (ret == 0) goto lab3;
                 if (ret < 0) return ret;
             }
-            goto lab3;
-        lab5:
+            goto lab1;
+        lab3:
             z->c = z->l - m3;
             {   int ret = r_verb_suffix(z); /* call verb_suffix, line 221 */
-                if (ret == 0) goto lab2;
+                if (ret == 0) goto lab0;
                 if (ret < 0) return ret;
             }
         }
-    lab3:
-    lab2:
+    lab1:
+    lab0:
         z->c = z->l - m2;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 223 */
         {   int ret = r_residual_suffix(z); /* call residual_suffix, line 223 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = z->l - m4;
     }
     z->c = z->lb;
     {   int c5 = z->c; /* do, line 225 */
         {   int ret = r_postlude(z); /* call postlude, line 225 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = c5;
     }
     return 1;
index c47777d7c5f97b9bf99e08bc635b1c381a149084..b53fcccedea4c068d5ffa447a7b46c0c458c1c17 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -259,36 +258,28 @@ static int r_other_suffix(struct SN_env * z) { /* backwardmode */
 extern int swedish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 66 */
         {   int ret = r_mark_regions(z); /* call mark_regions, line 66 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     z->lb = z->c; z->c = z->l; /* backwards, line 67 */
 
     {   int m2 = z->l - z->c; (void)m2; /* do, line 68 */
         {   int ret = r_main_suffix(z); /* call main_suffix, line 68 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 69 */
         {   int ret = r_consonant_pair(z); /* call consonant_pair, line 69 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     {   int m4 = z->l - z->c; (void)m4; /* do, line 70 */
         {   int ret = r_other_suffix(z); /* call other_suffix, line 70 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = z->l - m4;
     }
     z->c = z->lb;
index 9bb416c9b10da125a57a70a39ff4c0076fe25c89..ac038a8e37ba6511509035b7496deb9514298a82 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -734,8 +733,9 @@ lab0:
 
 static int r_fix_endings(struct SN_env * z) { /* forwardmode */
     {   int c1 = z->c; /* do, line 111 */
-        while(1) { /* repeat, line 111 */
-            int c2 = z->c;
+/* repeat, line 111 */
+
+        while(1) {            int c2 = z->c;
             {   int ret = r_fix_ending(z); /* call fix_ending, line 111 */
                 if (ret == 0) goto lab1;
                 if (ret < 0) return ret;
@@ -761,10 +761,8 @@ static int r_remove_question_prefixes(struct SN_env * z) { /* forwardmode */
     }
     {   int c1 = z->c; /* do, line 116 */
         {   int ret = r_fix_va_start(z); /* call fix_va_start, line 116 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     return 1;
@@ -1018,10 +1016,8 @@ static int r_remove_pronoun_prefixes(struct SN_env * z) { /* forwardmode */
     z->B[0] = 1; /* set found_a_match, line 163 */
     {   int c1 = z->c; /* do, line 164 */
         {   int ret = r_fix_va_start(z); /* call fix_va_start, line 164 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     return 1;
@@ -1102,10 +1098,8 @@ static int r_remove_question_suffixes(struct SN_env * z) { /* forwardmode */
     z->c = z->lb;
     /* do, line 187 */
     {   int ret = r_fix_endings(z); /* call fix_endings, line 187 */
-        if (ret == 0) goto lab1;
         if (ret < 0) return ret;
     }
-lab1:
     return 1;
 }
 
@@ -1145,10 +1139,8 @@ static int r_remove_um(struct SN_env * z) { /* forwardmode */
     z->c = z->lb;
     {   int c1 = z->c; /* do, line 205 */
         {   int ret = r_fix_ending(z); /* call fix_ending, line 205 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     return 1;
@@ -1254,10 +1246,8 @@ lab0:
     z->c = z->lb;
     /* do, line 249 */
     {   int ret = r_fix_endings(z); /* call fix_endings, line 249 */
-        if (ret == 0) goto lab17;
         if (ret < 0) return ret;
     }
-lab17:
     return 1;
 }
 
@@ -1482,24 +1472,21 @@ lab0:
     z->c = z->lb;
     /* do, line 301 */
     {   int ret = r_fix_endings(z); /* call fix_endings, line 301 */
-        if (ret == 0) goto lab35;
         if (ret < 0) return ret;
     }
-lab35:
     return 1;
 }
 
 static int r_remove_tense_suffixes(struct SN_env * z) { /* forwardmode */
     z->B[0] = 1; /* set found_a_match, line 305 */
-    while(1) { /* repeat, line 306 */
-        int c1 = z->c;
+/* repeat, line 306 */
+
+    while(1) {        int c1 = z->c;
         if (!(z->B[0])) goto lab0; /* Boolean test found_a_match, line 306 */
         {   int c2 = z->c; /* do, line 306 */
             {   int ret = r_remove_tense_suffix(z); /* call remove_tense_suffix, line 306 */
-                if (ret == 0) goto lab1;
                 if (ret < 0) return ret;
             }
-        lab1:
             z->c = c2;
         }
         continue;
@@ -1814,10 +1801,8 @@ static int r_remove_tense_suffix(struct SN_env * z) { /* forwardmode */
     z->c = z->lb;
     /* do, line 389 */
     {   int ret = r_fix_endings(z); /* call fix_endings, line 389 */
-        if (ret == 0) goto lab58;
         if (ret < 0) return ret;
     }
-lab58:
     return 1;
 }
 
@@ -1825,10 +1810,8 @@ extern int tamil_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     z->B[1] = 0; /* unset found_vetrumai_urupu, line 393 */
     {   int c1 = z->c; /* do, line 394 */
         {   int ret = r_fix_ending(z); /* call fix_ending, line 394 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = c1;
     }
     {   int ret = r_has_min_length(z); /* call has_min_length, line 395 */
@@ -1836,74 +1819,56 @@ extern int tamil_UTF_8_stem(struct SN_env * z) { /* forwardmode */
     }
     {   int c2 = z->c; /* do, line 396 */
         {   int ret = r_remove_question_prefixes(z); /* call remove_question_prefixes, line 396 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = c2;
     }
     {   int c3 = z->c; /* do, line 397 */
         {   int ret = r_remove_pronoun_prefixes(z); /* call remove_pronoun_prefixes, line 397 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = c3;
     }
     {   int c4 = z->c; /* do, line 398 */
         {   int ret = r_remove_question_suffixes(z); /* call remove_question_suffixes, line 398 */
-            if (ret == 0) goto lab3;
             if (ret < 0) return ret;
         }
-    lab3:
         z->c = c4;
     }
     {   int c5 = z->c; /* do, line 399 */
         {   int ret = r_remove_um(z); /* call remove_um, line 399 */
-            if (ret == 0) goto lab4;
             if (ret < 0) return ret;
         }
-    lab4:
         z->c = c5;
     }
     {   int c6 = z->c; /* do, line 400 */
         {   int ret = r_remove_common_word_endings(z); /* call remove_common_word_endings, line 400 */
-            if (ret == 0) goto lab5;
             if (ret < 0) return ret;
         }
-    lab5:
         z->c = c6;
     }
     {   int c7 = z->c; /* do, line 401 */
         {   int ret = r_remove_vetrumai_urupukal(z); /* call remove_vetrumai_urupukal, line 401 */
-            if (ret == 0) goto lab6;
             if (ret < 0) return ret;
         }
-    lab6:
         z->c = c7;
     }
     {   int c8 = z->c; /* do, line 402 */
         {   int ret = r_remove_plural_suffix(z); /* call remove_plural_suffix, line 402 */
-            if (ret == 0) goto lab7;
             if (ret < 0) return ret;
         }
-    lab7:
         z->c = c8;
     }
     {   int c9 = z->c; /* do, line 403 */
         {   int ret = r_remove_command_suffixes(z); /* call remove_command_suffixes, line 403 */
-            if (ret == 0) goto lab8;
             if (ret < 0) return ret;
         }
-    lab8:
         z->c = c9;
     }
     {   int c10 = z->c; /* do, line 404 */
         {   int ret = r_remove_tense_suffixes(z); /* call remove_tense_suffixes, line 404 */
-            if (ret == 0) goto lab9;
             if (ret < 0) return ret;
         }
-    lab9:
         z->c = c10;
     }
     return 1;
index 85eee41ada9ecc9cda8d3d91d6a022def2f7ff7e..5c4b11c0ffb413e6057a524bfd16e38de2a2aff6 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #include "header.h"
 
@@ -2017,8 +2016,7 @@ static int r_is_reserved_word(struct SN_env * z) { /* backwardmode */
 static int r_more_than_one_syllable_word(struct SN_env * z) { /* forwardmode */
     {   int c_test1 = z->c; /* test, line 447 */
         {   int i = 2;
-            while(1) { /* atleast, line 447 */
-                int c2 = z->c;
+            while(1) {                int c2 = z->c;
                 {    /* gopast */ /* grouping vowel, line 447 */
                     int ret = out_grouping_U(z, g_vowel, 97, 305, 1);
                     if (ret < 0) goto lab0;
@@ -2051,18 +2049,14 @@ static int r_postlude(struct SN_env * z) { /* forwardmode */
     }
     {   int m2 = z->l - z->c; (void)m2; /* do, line 453 */
         {   int ret = r_append_U_to_stems_ending_with_d_or_g(z); /* call append_U_to_stems_ending_with_d_or_g, line 453 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     {   int m3 = z->l - z->c; (void)m3; /* do, line 454 */
         {   int ret = r_post_process_last_consonants(z); /* call post_process_last_consonants, line 454 */
-            if (ret == 0) goto lab2;
             if (ret < 0) return ret;
         }
-    lab2:
         z->c = z->l - m3;
     }
     z->c = z->lb;
@@ -2077,19 +2071,15 @@ extern int turkish_UTF_8_stem(struct SN_env * z) { /* forwardmode */
 
     {   int m1 = z->l - z->c; (void)m1; /* do, line 463 */
         {   int ret = r_stem_nominal_verb_suffixes(z); /* call stem_nominal_verb_suffixes, line 463 */
-            if (ret == 0) goto lab0;
             if (ret < 0) return ret;
         }
-    lab0:
         z->c = z->l - m1;
     }
     if (!(z->B[0])) return 0; /* Boolean test continue_stemming_noun_suffixes, line 464 */
     {   int m2 = z->l - z->c; (void)m2; /* do, line 465 */
         {   int ret = r_stem_noun_suffixes(z); /* call stem_noun_suffixes, line 465 */
-            if (ret == 0) goto lab1;
             if (ret < 0) return ret;
         }
-    lab1:
         z->c = z->l - m2;
     }
     z->c = z->lb;
index d64d92231795ae05d979c6ffde94c14adc9e19fc..681bca09c2f610f54d9e7519e234350a2e2c7624 100644 (file)
@@ -106,48 +106,48 @@ static int get_b_utf8(const symbol * p, int c, int lb, int * slot) {
 
 extern int in_grouping_U(struct SN_env * z, const unsigned char * s, int min, int max, int repeat) {
     do {
-   int ch;
-   int w = get_utf8(z->p, z->c, z->l, & ch);
-   if (!w) return -1;
-   if (ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0)
-       return w;
-   z->c += w;
+        int ch;
+        int w = get_utf8(z->p, z->c, z->l, & ch);
+        if (!w) return -1;
+        if (ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0)
+            return w;
+        z->c += w;
     } while (repeat);
     return 0;
 }
 
 extern int in_grouping_b_U(struct SN_env * z, const unsigned char * s, int min, int max, int repeat) {
     do {
-   int ch;
-   int w = get_b_utf8(z->p, z->c, z->lb, & ch);
-   if (!w) return -1;
-   if (ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0)
-       return w;
-   z->c -= w;
+        int ch;
+        int w = get_b_utf8(z->p, z->c, z->lb, & ch);
+        if (!w) return -1;
+        if (ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0)
+            return w;
+        z->c -= w;
     } while (repeat);
     return 0;
 }
 
 extern int out_grouping_U(struct SN_env * z, const unsigned char * s, int min, int max, int repeat) {
     do {
-   int ch;
-   int w = get_utf8(z->p, z->c, z->l, & ch);
-   if (!w) return -1;
-   if (!(ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0))
-       return w;
-   z->c += w;
+        int ch;
+        int w = get_utf8(z->p, z->c, z->l, & ch);
+        if (!w) return -1;
+        if (!(ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0))
+            return w;
+        z->c += w;
     } while (repeat);
     return 0;
 }
 
 extern int out_grouping_b_U(struct SN_env * z, const unsigned char * s, int min, int max, int repeat) {
     do {
-   int ch;
-   int w = get_b_utf8(z->p, z->c, z->lb, & ch);
-   if (!w) return -1;
-   if (!(ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0))
-       return w;
-   z->c -= w;
+        int ch;
+        int w = get_b_utf8(z->p, z->c, z->lb, & ch);
+        if (!w) return -1;
+        if (!(ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0))
+            return w;
+        z->c -= w;
     } while (repeat);
     return 0;
 }
@@ -156,48 +156,48 @@ extern int out_grouping_b_U(struct SN_env * z, const unsigned char * s, int min,
 
 extern int in_grouping(struct SN_env * z, const unsigned char * s, int min, int max, int repeat) {
     do {
-   int ch;
-   if (z->c >= z->l) return -1;
-   ch = z->p[z->c];
-   if (ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0)
-       return 1;
-   z->c++;
+        int ch;
+        if (z->c >= z->l) return -1;
+        ch = z->p[z->c];
+        if (ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0)
+            return 1;
+        z->c++;
     } while (repeat);
     return 0;
 }
 
 extern int in_grouping_b(struct SN_env * z, const unsigned char * s, int min, int max, int repeat) {
     do {
-   int ch;
-   if (z->c <= z->lb) return -1;
-   ch = z->p[z->c - 1];
-   if (ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0)
-       return 1;
-   z->c--;
+        int ch;
+        if (z->c <= z->lb) return -1;
+        ch = z->p[z->c - 1];
+        if (ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0)
+            return 1;
+        z->c--;
     } while (repeat);
     return 0;
 }
 
 extern int out_grouping(struct SN_env * z, const unsigned char * s, int min, int max, int repeat) {
     do {
-   int ch;
-   if (z->c >= z->l) return -1;
-   ch = z->p[z->c];
-   if (!(ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0))
-       return 1;
-   z->c++;
+        int ch;
+        if (z->c >= z->l) return -1;
+        ch = z->p[z->c];
+        if (!(ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0))
+            return 1;
+        z->c++;
     } while (repeat);
     return 0;
 }
 
 extern int out_grouping_b(struct SN_env * z, const unsigned char * s, int min, int max, int repeat) {
     do {
-   int ch;
-   if (z->c <= z->lb) return -1;
-   ch = z->p[z->c - 1];
-   if (!(ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0))
-       return 1;
-   z->c--;
+        int ch;
+        if (z->c <= z->lb) return -1;
+        ch = z->p[z->c - 1];
+        if (!(ch > max || (ch -= min) < 0 || (s[ch >> 3] & (0X1 << (ch & 0X7))) == 0))
+            return 1;
+        z->c--;
     } while (repeat);
     return 0;
 }
@@ -235,7 +235,7 @@ extern int find_among(struct SN_env * z, const struct among * v, int v_size) {
 
     int first_key_inspected = 0;
 
-    while(1) {
+    while (1) {
         int k = i + ((j - i) >> 1);
         int diff = 0;
         int common = common_i < common_j ? common_i : common_j; /* smaller */
@@ -267,7 +267,7 @@ extern int find_among(struct SN_env * z, const struct among * v, int v_size) {
             first_key_inspected = 1;
         }
     }
-    while(1) {
+    while (1) {
         w = v + i;
         if (common_i >= w->s_size) {
             z->c = c + w->s_size;
@@ -300,7 +300,7 @@ extern int find_among_b(struct SN_env * z, const struct among * v, int v_size) {
 
     int first_key_inspected = 0;
 
-    while(1) {
+    while (1) {
         int k = i + ((j - i) >> 1);
         int diff = 0;
         int common = common_i < common_j ? common_i : common_j;
@@ -322,7 +322,7 @@ extern int find_among_b(struct SN_env * z, const struct among * v, int v_size) {
             first_key_inspected = 1;
         }
     }
-    while(1) {
+    while (1) {
         w = v + i;
         if (common_i >= w->s_size) {
             z->c = c - w->s_size;
index 4ff0c6c7005250135242e539af233d8776f10b00..5a787681f9655ac82d581b68e968cc202e99a12c 100644 (file)
@@ -688,6 +688,10 @@ static const struct tsearch_config_match tsearch_config_languages[] =
 {
    {"arabic", "ar"},
    {"arabic", "Arabic"},
+   {"basque", "eu"},
+   {"basque", "Basque"},
+   {"catalan", "ca"},
+   {"catalan", "Catalan"},
    {"danish", "da"},
    {"danish", "Danish"},
    {"dutch", "nl"},
@@ -704,6 +708,8 @@ static const struct tsearch_config_match tsearch_config_languages[] =
    {"german", "German"},
    {"greek", "el"},
    {"greek", "Greek"},
+   {"hindi", "hi"},
+   {"hindi", "Hindi"},
    {"hungarian", "hu"},
    {"hungarian", "Hungarian"},
    {"indonesian", "id"},
index 6bccf0f2c787f777a87a657e8112b701c4528b29..85a42fdb8f8d505b244c334bd6a8d720dc47250b 100644 (file)
@@ -57,4 +57,3 @@ extern symbol * assign_to(struct SN_env * z, symbol * p);
 extern int len_utf8(const symbol * p);
 
 extern void debug(struct SN_env * z, int number, int line_count);
-
diff --git a/src/include/snowball/libstemmer/stem_ISO_8859_1_basque.h b/src/include/snowball/libstemmer/stem_ISO_8859_1_basque.h
new file mode 100644 (file)
index 0000000..b40fc49
--- /dev/null
@@ -0,0 +1,15 @@
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern struct SN_env * basque_ISO_8859_1_create_env(void);
+extern void basque_ISO_8859_1_close_env(struct SN_env * z);
+
+extern int basque_ISO_8859_1_stem(struct SN_env * z);
+
+#ifdef __cplusplus
+}
+#endif
+
diff --git a/src/include/snowball/libstemmer/stem_ISO_8859_1_catalan.h b/src/include/snowball/libstemmer/stem_ISO_8859_1_catalan.h
new file mode 100644 (file)
index 0000000..d68f6fa
--- /dev/null
@@ -0,0 +1,15 @@
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+extern struct SN_env * catalan_ISO_8859_1_create_env(void);
+extern void catalan_ISO_8859_1_close_env(struct SN_env * z);
+
+extern int catalan_ISO_8859_1_stem(struct SN_env * z);
+
+#ifdef __cplusplus
+}
+#endif
+
index 57f16f8960d5f8205b442ca322437321567bf260..76ed47675bd7c8500ce060780b15c7a247c0dff8 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #ifdef __cplusplus
 extern "C" {
index 5423842969f386b1d414d3e0136f937aa6c15a4e..0376706c371bc6b866c07ae6233baf80aab9944f 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #ifdef __cplusplus
 extern "C" {
index d5a56a98f0b51ccc72be8e3a9543fcd730b11674..ccd4acb27d360e668720b2683db4fc5f6e118607 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #ifdef __cplusplus
 extern "C" {
index ba197d8a705a9b9643204be5770e8e1a8cc0c58d..7f7b36ed2af83bc879bf59e91584b782d4061fd1 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #ifdef __cplusplus
 extern "C" {
index 29321023a2caac9634dc406de966579c26bf24e6..36e9074da76178d9face088a265b4e33d8cbf2cc 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #ifdef __cplusplus
 extern "C" {
index 0887ac81646ed2ff05c27c3381ec6ae1e5be8d71..c8780e179b461a247aed60b7b5eb3ff73e329fbf 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.org/ */
 
 #ifdef __cplusplus
 extern "C" {
index aac192caceabc9eaf10a0ea0e54c43cf47544870..a429ae9aa0580f8fad28085a29c04add63446368 100644 (file)
@@ -1,5 +1,4 @@
-/* This file was generated automatically by the Snowball to ISO C compiler */
-/* http://snowballstem.org/ */
+/* Generated by Snowball 2.0.0 - https://snowballstem.