<literal>stopword</literal> file name that gives a list of words to eliminate.
(<productname>PostgreSQL</productname>'s standard stopword lists are also
provided by the Snowball project.)
+ </para>
+
+ <para>
+ The available values of the <literal>language</literal> parameter are:
+
+ <literal>arabic</literal>,
+ <literal>armenian</literal>,
+ <literal>basque</literal>,
+ <literal>catalan</literal>,
+ <literal>danish</literal>,
+ <literal>dutch</literal>,
+ <literal>dutch_porter</literal>,
+ <literal>english</literal>,
+ <literal>esperanto</literal>,
+ <literal>estonian</literal>,
+ <literal>finnish</literal>,
+ <literal>french</literal>,
+ <literal>german</literal>,
+ <literal>greek</literal>,
+ <literal>hindi</literal>,
+ <literal>hungarian</literal>,
+ <literal>indonesian</literal>,
+ <literal>irish</literal>,
+ <literal>italian</literal>,
+ <literal>lithuanian</literal>,
+ <literal>nepali</literal>,
+ <literal>norwegian</literal>,
+ <literal>polish</literal>,
+ <literal>porter</literal>,
+ <literal>portuguese</literal>,
+ <literal>romanian</literal>,
+ <literal>russian</literal>,
+ <literal>serbian</literal>,
+ <literal>spanish</literal>,
+ <literal>swedish</literal>,
+ <literal>tamil</literal>,
+ <literal>turkish</literal>,
+ and
+ <literal>yiddish</literal>.
+
+ The <literal>porter</literal> algorithm is an old stemmer for English,
+ and the <literal>dutch_porter</literal> algorithm is an old stemmer
+ for Dutch (it was called <literal>dutch</literal>
+ in <productname>PostgreSQL</productname> releases before 19).
+ The rest are the currently-recommended stemmers for their
+ respective languages.
+
+ All these algorithms except <literal>porter</literal>
+ and <literal>dutch_porter</literal> have built-in dictionaries
+ provided, most with stopword lists attached.
For example, there is a built-in definition equivalent to
<programlisting>
pg_catalog | danish_stem | snowball stemmer for danish language
pg_catalog | dutch_stem | snowball stemmer for dutch language
pg_catalog | english_stem | snowball stemmer for english language
+ pg_catalog | esperanto_stem | snowball stemmer for esperanto language
pg_catalog | estonian_stem | snowball stemmer for estonian language
pg_catalog | finnish_stem | snowball stemmer for finnish language
pg_catalog | french_stem | snowball stemmer for french language
pg_catalog | lithuanian_stem | snowball stemmer for lithuanian language
pg_catalog | nepali_stem | snowball stemmer for nepali language
pg_catalog | norwegian_stem | snowball stemmer for norwegian language
+ pg_catalog | polish_stem | snowball stemmer for polish language
pg_catalog | portuguese_stem | snowball stemmer for portuguese language
pg_catalog | romanian_stem | snowball stemmer for romanian language
pg_catalog | russian_stem | snowball stemmer for russian language
stem_ISO_8859_1_catalan.o \
stem_ISO_8859_1_danish.o \
stem_ISO_8859_1_dutch.o \
+ stem_ISO_8859_1_dutch_porter.o \
stem_ISO_8859_1_english.o \
stem_ISO_8859_1_finnish.o \
stem_ISO_8859_1_french.o \
stem_ISO_8859_1_spanish.o \
stem_ISO_8859_1_swedish.o \
stem_ISO_8859_2_hungarian.o \
+ stem_ISO_8859_2_polish.o \
stem_KOI8_R_russian.o \
stem_UTF_8_arabic.o \
stem_UTF_8_armenian.o \
stem_UTF_8_catalan.o \
stem_UTF_8_danish.o \
stem_UTF_8_dutch.o \
+ stem_UTF_8_dutch_porter.o \
stem_UTF_8_english.o \
+ stem_UTF_8_esperanto.o \
stem_UTF_8_estonian.o \
stem_UTF_8_finnish.o \
stem_UTF_8_french.o \
stem_UTF_8_lithuanian.o \
stem_UTF_8_nepali.o \
stem_UTF_8_norwegian.o \
+ stem_UTF_8_polish.o \
stem_UTF_8_porter.o \
stem_UTF_8_portuguese.o \
stem_UTF_8_romanian.o \
because most installations will not have the Snowball compiler available.
We are currently synced with the Snowball git commit
-d19326ac6c1b9a417fc872f7c2f845265a5e9ece
-of 2025-02-19.
+2d2e312df56f2ede014a4ffb3e91e6dea43c24be
+of 2025-12-15.
To update the PostgreSQL sources from a new Snowball version:
0. If you didn't do it already, "make -C snowball".
1. Copy the *.c files in snowball/src_c/ to src/backend/snowball/libstemmer
-with replacement of "../runtime/header.h" by "header.h", for example
+with replacement of "../runtime/snowball_runtime.h" by "snowball_runtime.h",
+for example
for f in .../snowball/src_c/*.c
do
- sed 's|\.\./runtime/header\.h|header.h|' $f >libstemmer/`basename $f`
+ sed 's|\.\./runtime/snowball_runtime\.h|snowball_runtime.h|' $f >libstemmer/`basename $f`
done
Do not copy stemmers that are listed in their libstemmer/modules.txt as
-nonstandard, such as "kraaij_pohlmann" or "lovins".
+nonstandard, such as "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".
+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 "snowball_runtime.h".
(This removal avoids portability problems on some platforms where <stdio.h>
is sensitive to largefile compilation options.)
4. Check whether any stemmer modules have been added or removed. If so, edit
the OBJS list in Makefile, the dict_snowball_sources list in meson.build,
the list of #include's and the stemmer_modules[] table in dict_snowball.c,
+the list of valid language parameters in the documentation in textsearch.sgml,
and the sample \dFd output in the documentation in textsearch.sgml.
You might also need to change the @languages array in snowball_create.pl
-and the tsearch_config_languages[] table in initdb.c.
+and the tsearch_config_languages[] table in initdb.c. Typically, the latter
+two should be extended when a stemmer for an entirely new language is added,
+but alternative stemmers for existing languages are not represented in them.
5. The various stopword files in stopwords/ must be downloaded
individually from pages on the snowballstem.org website.
#undef MININT
#endif
-/* Now we can include the original Snowball header.h */
-#include "snowball/libstemmer/header.h"
+/* Now we can include the original Snowball snowball_runtime.h */
+#include "snowball/libstemmer/snowball_runtime.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_dutch_porter.h"
#include "snowball/libstemmer/stem_ISO_8859_1_english.h"
#include "snowball/libstemmer/stem_ISO_8859_1_finnish.h"
#include "snowball/libstemmer/stem_ISO_8859_1_french.h"
#include "snowball/libstemmer/stem_ISO_8859_1_spanish.h"
#include "snowball/libstemmer/stem_ISO_8859_1_swedish.h"
#include "snowball/libstemmer/stem_ISO_8859_2_hungarian.h"
+#include "snowball/libstemmer/stem_ISO_8859_2_polish.h"
#include "snowball/libstemmer/stem_KOI8_R_russian.h"
#include "snowball/libstemmer/stem_UTF_8_arabic.h"
#include "snowball/libstemmer/stem_UTF_8_armenian.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_dutch_porter.h"
#include "snowball/libstemmer/stem_UTF_8_english.h"
+#include "snowball/libstemmer/stem_UTF_8_esperanto.h"
#include "snowball/libstemmer/stem_UTF_8_estonian.h"
#include "snowball/libstemmer/stem_UTF_8_finnish.h"
#include "snowball/libstemmer/stem_UTF_8_french.h"
#include "snowball/libstemmer/stem_UTF_8_lithuanian.h"
#include "snowball/libstemmer/stem_UTF_8_nepali.h"
#include "snowball/libstemmer/stem_UTF_8_norwegian.h"
+#include "snowball/libstemmer/stem_UTF_8_polish.h"
#include "snowball/libstemmer/stem_UTF_8_porter.h"
#include "snowball/libstemmer/stem_UTF_8_portuguese.h"
#include "snowball/libstemmer/stem_UTF_8_romanian.h"
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(dutch_porter, PG_LATIN1, ISO_8859_1),
STEMMER_MODULE(english, PG_LATIN1, ISO_8859_1),
STEMMER_MODULE(finnish, PG_LATIN1, ISO_8859_1),
STEMMER_MODULE(french, PG_LATIN1, ISO_8859_1),
STEMMER_MODULE(spanish, PG_LATIN1, ISO_8859_1),
STEMMER_MODULE(swedish, PG_LATIN1, ISO_8859_1),
STEMMER_MODULE(hungarian, PG_LATIN2, ISO_8859_2),
+ STEMMER_MODULE(polish, PG_LATIN2, ISO_8859_2),
STEMMER_MODULE(russian, PG_KOI8R, KOI8_R),
STEMMER_MODULE(arabic, PG_UTF8, UTF_8),
STEMMER_MODULE(armenian, 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(dutch_porter, PG_UTF8, UTF_8),
STEMMER_MODULE(english, PG_UTF8, UTF_8),
+ STEMMER_MODULE(esperanto, PG_UTF8, UTF_8),
STEMMER_MODULE(estonian, PG_UTF8, UTF_8),
STEMMER_MODULE(finnish, PG_UTF8, UTF_8),
STEMMER_MODULE(french, PG_UTF8, UTF_8),
STEMMER_MODULE(nepali, PG_UTF8, UTF_8),
STEMMER_MODULE(norwegian, PG_UTF8, UTF_8),
STEMMER_MODULE(porter, PG_UTF8, UTF_8),
+ STEMMER_MODULE(polish, PG_UTF8, UTF_8),
STEMMER_MODULE(portuguese, PG_UTF8, UTF_8),
STEMMER_MODULE(romanian, PG_UTF8, UTF_8),
STEMMER_MODULE(russian, PG_UTF8, UTF_8),
-#include "header.h"
+#include "snowball_runtime.h"
-extern struct SN_env * SN_create_env(int S_size, int I_size)
+static const struct SN_env default_SN_env;
+
+extern struct SN_env * SN_new_env(int alloc_size)
{
- struct SN_env * z = (struct SN_env *) calloc(1, sizeof(struct SN_env));
+ struct SN_env * z = (struct SN_env *) malloc(alloc_size);
if (z == NULL) return NULL;
+ *z = default_SN_env;
z->p = create_s();
- if (z->p == NULL) goto error;
- if (S_size)
- {
- int i;
- z->S = (symbol * *) calloc(S_size, sizeof(symbol *));
- if (z->S == NULL) goto error;
-
- for (i = 0; i < S_size; i++)
- {
- z->S[i] = create_s();
- if (z->S[i] == NULL) goto error;
- }
- }
-
- if (I_size)
- {
- z->I = (int *) calloc(I_size, sizeof(int));
- if (z->I == NULL) goto error;
+ if (z->p == NULL) {
+ SN_delete_env(z);
+ return NULL;
}
-
return z;
-error:
- SN_close_env(z, S_size);
- return NULL;
}
-extern void SN_close_env(struct SN_env * z, int S_size)
+extern void SN_delete_env(struct SN_env * z)
{
if (z == NULL) return;
- if (z->S)
- {
- int i;
- for (i = 0; i < S_size; i++)
- {
- lose_s(z->S[i]);
- }
- free(z->S);
- }
- free(z->I);
if (z->p) lose_s(z->p);
free(z);
}
extern int SN_set_current(struct SN_env * z, int size, const symbol * s)
{
- int err = replace_s(z, 0, z->l, size, s, NULL);
+ int err = replace_s(z, 0, z->l, size, s);
z->c = 0;
return err;
}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from basque.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_basque.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ int i_pV;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#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_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);
+static const symbol s_0[] = { 'j', 'o', 'k' };
+static const symbol s_1[] = { 't', 'r', 'a' };
+static const symbol s_2[] = { 'm', 'i', 'n', 'u', 't', 'u' };
+static const symbol s_3[] = { '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_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] =
-{
-{ 4, s_0_0, -1, 1, 0},
-{ 5, s_0_1, 0, 1, 0},
-{ 5, s_0_2, 0, 1, 0},
-{ 5, s_0_3, 0, 1, 0},
-{ 6, s_0_4, -1, 1, 0},
-{ 5, s_0_5, -1, 1, 0},
-{ 6, s_0_6, -1, 1, 0},
-{ 7, s_0_7, -1, 1, 0},
-{ 5, s_0_8, -1, 1, 0},
-{ 5, s_0_9, -1, 1, 0},
-{ 5, s_0_10, -1, 1, 0},
-{ 4, s_0_11, -1, 1, 0},
-{ 5, s_0_12, -1, 1, 0},
-{ 6, s_0_13, 12, 1, 0},
-{ 5, s_0_14, -1, 1, 0},
-{ 6, s_0_15, -1, 2, 0},
-{ 6, s_0_16, -1, 1, 0},
-{ 2, s_0_17, -1, 1, 0},
-{ 5, s_0_18, 17, 1, 0},
-{ 2, s_0_19, -1, 1, 0},
-{ 4, s_0_20, -1, 1, 0},
-{ 4, s_0_21, -1, 1, 0},
-{ 4, s_0_22, -1, 1, 0},
-{ 5, s_0_23, -1, 1, 0},
-{ 6, s_0_24, 23, 1, 0},
-{ 4, s_0_25, -1, 1, 0},
-{ 4, s_0_26, -1, 1, 0},
-{ 6, s_0_27, -1, 1, 0},
-{ 3, s_0_28, -1, 1, 0},
-{ 4, s_0_29, 28, 1, 0},
-{ 7, s_0_30, 29, 4, 0},
-{ 4, s_0_31, 28, 1, 0},
-{ 4, s_0_32, 28, 1, 0},
-{ 4, s_0_33, -1, 1, 0},
-{ 5, s_0_34, 33, 1, 0},
-{ 4, s_0_35, -1, 1, 0},
-{ 4, s_0_36, -1, 1, 0},
-{ 4, s_0_37, -1, 1, 0},
-{ 4, s_0_38, -1, 1, 0},
-{ 3, s_0_39, -1, 1, 0},
-{ 4, s_0_40, 39, 1, 0},
-{ 6, s_0_41, -1, 1, 0},
-{ 3, s_0_42, -1, 1, 0},
-{ 6, s_0_43, 42, 1, 0},
-{ 3, s_0_44, -1, 2, 0},
-{ 6, s_0_45, 44, 1, 0},
-{ 6, s_0_46, 44, 1, 0},
-{ 6, s_0_47, 44, 1, 0},
-{ 3, s_0_48, -1, 1, 0},
-{ 4, s_0_49, 48, 1, 0},
-{ 4, s_0_50, 48, 1, 0},
-{ 4, s_0_51, 48, 1, 0},
-{ 5, s_0_52, -1, 1, 0},
-{ 5, s_0_53, -1, 1, 0},
-{ 5, s_0_54, -1, 1, 0},
-{ 2, s_0_55, -1, 1, 0},
-{ 4, s_0_56, 55, 1, 0},
-{ 5, s_0_57, 55, 1, 0},
-{ 6, s_0_58, 55, 1, 0},
-{ 4, s_0_59, -1, 1, 0},
-{ 4, s_0_60, -1, 1, 0},
-{ 3, s_0_61, -1, 1, 0},
-{ 4, s_0_62, 61, 1, 0},
-{ 3, s_0_63, -1, 1, 0},
-{ 4, s_0_64, -1, 1, 0},
-{ 5, s_0_65, 64, 1, 0},
-{ 2, s_0_66, -1, 1, 0},
-{ 3, s_0_67, -1, 1, 0},
-{ 4, s_0_68, 67, 1, 0},
-{ 4, s_0_69, 67, 1, 0},
-{ 4, s_0_70, 67, 1, 0},
-{ 5, s_0_71, 70, 1, 0},
-{ 5, s_0_72, -1, 2, 0},
-{ 5, s_0_73, -1, 1, 0},
-{ 5, s_0_74, -1, 1, 0},
-{ 6, s_0_75, 74, 1, 0},
-{ 2, s_0_76, -1, 1, 0},
-{ 3, s_0_77, 76, 1, 0},
-{ 4, s_0_78, 77, 1, 0},
-{ 3, s_0_79, 76, 1, 0},
-{ 4, s_0_80, 76, 1, 0},
-{ 7, s_0_81, -1, 3, 0},
-{ 3, s_0_82, -1, 1, 0},
-{ 3, s_0_83, -1, 1, 0},
-{ 3, s_0_84, -1, 1, 0},
-{ 5, s_0_85, 84, 1, 0},
-{ 4, s_0_86, -1, 1, 0},
-{ 5, s_0_87, 86, 1, 0},
-{ 3, s_0_88, -1, 1, 0},
-{ 5, s_0_89, -1, 1, 0},
-{ 2, s_0_90, -1, 1, 0},
-{ 3, s_0_91, 90, 1, 0},
-{ 3, s_0_92, -1, 1, 0},
-{ 4, s_0_93, -1, 1, 0},
-{ 2, s_0_94, -1, 1, 0},
-{ 3, s_0_95, 94, 1, 0},
-{ 4, s_0_96, -1, 1, 0},
-{ 2, s_0_97, -1, 1, 0},
-{ 5, s_0_98, -1, 1, 0},
-{ 2, s_0_99, -1, 1, 0},
-{ 3, s_0_100, 99, 1, 0},
-{ 6, s_0_101, 100, 1, 0},
-{ 4, s_0_102, 100, 1, 0},
-{ 6, s_0_103, 99, 5, 0},
-{ 2, s_0_104, -1, 1, 0},
-{ 5, s_0_105, 104, 1, 0},
-{ 4, s_0_106, 104, 1, 0},
-{ 5, s_0_107, -1, 1, 0},
-{ 5, s_0_108, -1, 1, 0}
+static const struct among a_0[109] = {
+{ 4, s_0_0, 0, 1, 0},
+{ 5, s_0_1, -1, 1, 0},
+{ 5, s_0_2, -2, 1, 0},
+{ 5, s_0_3, -3, 1, 0},
+{ 6, s_0_4, 0, 1, 0},
+{ 5, s_0_5, 0, 1, 0},
+{ 6, s_0_6, 0, 1, 0},
+{ 7, s_0_7, 0, 1, 0},
+{ 5, s_0_8, 0, 1, 0},
+{ 5, s_0_9, 0, 1, 0},
+{ 5, s_0_10, 0, 1, 0},
+{ 4, s_0_11, 0, 1, 0},
+{ 5, s_0_12, 0, 1, 0},
+{ 6, s_0_13, -1, 1, 0},
+{ 5, s_0_14, 0, 1, 0},
+{ 6, s_0_15, 0, 2, 0},
+{ 6, s_0_16, 0, 1, 0},
+{ 2, s_0_17, 0, 1, 0},
+{ 5, s_0_18, -1, 1, 0},
+{ 2, s_0_19, 0, 1, 0},
+{ 4, s_0_20, 0, 1, 0},
+{ 4, s_0_21, 0, 1, 0},
+{ 4, s_0_22, 0, 1, 0},
+{ 5, s_0_23, 0, 1, 0},
+{ 6, s_0_24, -1, 1, 0},
+{ 4, s_0_25, 0, 1, 0},
+{ 4, s_0_26, 0, 1, 0},
+{ 6, s_0_27, 0, 1, 0},
+{ 3, s_0_28, 0, 1, 0},
+{ 4, s_0_29, -1, 1, 0},
+{ 7, s_0_30, -1, -1, 0},
+{ 4, s_0_31, -3, 1, 0},
+{ 4, s_0_32, -4, 1, 0},
+{ 4, s_0_33, 0, 1, 0},
+{ 5, s_0_34, -1, 1, 0},
+{ 4, s_0_35, 0, 1, 0},
+{ 4, s_0_36, 0, 1, 0},
+{ 4, s_0_37, 0, 1, 0},
+{ 4, s_0_38, 0, 1, 0},
+{ 3, s_0_39, 0, 1, 0},
+{ 4, s_0_40, -1, 1, 0},
+{ 6, s_0_41, 0, 1, 0},
+{ 3, s_0_42, 0, 1, 0},
+{ 6, s_0_43, -1, 1, 0},
+{ 3, s_0_44, 0, 2, 0},
+{ 6, s_0_45, -1, 1, 0},
+{ 6, s_0_46, -2, 1, 0},
+{ 6, s_0_47, -3, 1, 0},
+{ 3, s_0_48, 0, 1, 0},
+{ 4, s_0_49, -1, 1, 0},
+{ 4, s_0_50, -2, 1, 0},
+{ 4, s_0_51, -3, 1, 0},
+{ 5, s_0_52, 0, 1, 0},
+{ 5, s_0_53, 0, 1, 0},
+{ 5, s_0_54, 0, 1, 0},
+{ 2, s_0_55, 0, 1, 0},
+{ 4, s_0_56, -1, 1, 0},
+{ 5, s_0_57, -2, 1, 0},
+{ 6, s_0_58, -3, 1, 0},
+{ 4, s_0_59, 0, 1, 0},
+{ 4, s_0_60, 0, 1, 0},
+{ 3, s_0_61, 0, 1, 0},
+{ 4, s_0_62, -1, 1, 0},
+{ 3, s_0_63, 0, 1, 0},
+{ 4, s_0_64, 0, 1, 0},
+{ 5, s_0_65, -1, 1, 0},
+{ 2, s_0_66, 0, 1, 0},
+{ 3, s_0_67, 0, 1, 0},
+{ 4, s_0_68, -1, 1, 0},
+{ 4, s_0_69, -2, 1, 0},
+{ 4, s_0_70, -3, 1, 0},
+{ 5, s_0_71, -1, 1, 0},
+{ 5, s_0_72, 0, 2, 0},
+{ 5, s_0_73, 0, 1, 0},
+{ 5, s_0_74, 0, 1, 0},
+{ 6, s_0_75, -1, 1, 0},
+{ 2, s_0_76, 0, 1, 0},
+{ 3, s_0_77, -1, 1, 0},
+{ 4, s_0_78, -1, 1, 0},
+{ 3, s_0_79, -3, 1, 0},
+{ 4, s_0_80, -4, 1, 0},
+{ 7, s_0_81, 0, -1, 0},
+{ 3, s_0_82, 0, 1, 0},
+{ 3, s_0_83, 0, 1, 0},
+{ 3, s_0_84, 0, 1, 0},
+{ 5, s_0_85, -1, 1, 0},
+{ 4, s_0_86, 0, 1, 0},
+{ 5, s_0_87, -1, 1, 0},
+{ 3, s_0_88, 0, 1, 0},
+{ 5, s_0_89, 0, 1, 0},
+{ 2, s_0_90, 0, 1, 0},
+{ 3, s_0_91, -1, 1, 0},
+{ 3, s_0_92, 0, 1, 0},
+{ 4, s_0_93, 0, 1, 0},
+{ 2, s_0_94, 0, 1, 0},
+{ 3, s_0_95, -1, 1, 0},
+{ 4, s_0_96, 0, 1, 0},
+{ 2, s_0_97, 0, 1, 0},
+{ 5, s_0_98, 0, 1, 0},
+{ 2, s_0_99, 0, 1, 0},
+{ 3, s_0_100, -1, 1, 0},
+{ 6, s_0_101, -1, 1, 0},
+{ 4, s_0_102, -2, 1, 0},
+{ 6, s_0_103, -4, -1, 0},
+{ 2, s_0_104, 0, 1, 0},
+{ 5, s_0_105, -1, 1, 0},
+{ 4, s_0_106, -2, 1, 0},
+{ 5, s_0_107, 0, 1, 0},
+{ 5, s_0_108, 0, 1, 0}
};
static const symbol s_1_0[3] = { 'a', 'd', 'a' };
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] =
-{
-{ 3, s_1_0, -1, 1, 0},
-{ 4, s_1_1, 0, 1, 0},
-{ 4, s_1_2, -1, 1, 0},
-{ 5, s_1_3, -1, 1, 0},
-{ 5, s_1_4, -1, 1, 0},
-{ 5, s_1_5, -1, 1, 0},
-{ 5, s_1_6, -1, 1, 0},
-{ 6, s_1_7, 6, 1, 0},
-{ 6, s_1_8, 6, 1, 0},
-{ 5, s_1_9, -1, 1, 0},
-{ 5, s_1_10, -1, 1, 0},
-{ 6, s_1_11, 10, 1, 0},
-{ 5, s_1_12, -1, 1, 0},
-{ 4, s_1_13, -1, 1, 0},
-{ 5, s_1_14, -1, 1, 0},
-{ 3, s_1_15, -1, 1, 0},
-{ 4, s_1_16, 15, 1, 0},
-{ 6, s_1_17, 15, 1, 0},
-{ 4, s_1_18, 15, 1, 0},
-{ 5, s_1_19, 18, 1, 0},
-{ 3, s_1_20, -1, 1, 0},
-{ 6, s_1_21, -1, 1, 0},
-{ 3, s_1_22, -1, 1, 0},
-{ 5, s_1_23, 22, 1, 0},
-{ 5, s_1_24, 22, 1, 0},
-{ 5, s_1_25, 22, 1, 0},
-{ 5, s_1_26, -1, 1, 0},
-{ 2, s_1_27, -1, 1, 0},
-{ 4, s_1_28, 27, 1, 0},
-{ 4, s_1_29, -1, 1, 0},
-{ 5, s_1_30, -1, 1, 0},
-{ 6, s_1_31, 30, 1, 0},
-{ 6, s_1_32, -1, 1, 0},
-{ 6, s_1_33, -1, 1, 0},
-{ 4, s_1_34, -1, 1, 0},
-{ 4, s_1_35, -1, 1, 0},
-{ 5, s_1_36, 35, 1, 0},
-{ 5, s_1_37, 35, 1, 0},
-{ 5, s_1_38, -1, 1, 0},
-{ 4, s_1_39, -1, 1, 0},
-{ 3, s_1_40, -1, 1, 0},
-{ 5, s_1_41, 40, 1, 0},
-{ 3, s_1_42, -1, 1, 0},
-{ 4, s_1_43, 42, 1, 0},
-{ 4, s_1_44, -1, 1, 0},
-{ 5, s_1_45, 44, 1, 0},
-{ 5, s_1_46, 44, 1, 0},
-{ 5, s_1_47, 44, 1, 0},
-{ 4, s_1_48, -1, 1, 0},
-{ 5, s_1_49, 48, 1, 0},
-{ 5, s_1_50, 48, 1, 0},
-{ 6, s_1_51, -1, 2, 0},
-{ 6, s_1_52, -1, 1, 0},
-{ 6, s_1_53, -1, 1, 0},
-{ 5, s_1_54, -1, 1, 0},
-{ 4, s_1_55, -1, 1, 0},
-{ 3, s_1_56, -1, 1, 0},
-{ 4, s_1_57, -1, 1, 0},
-{ 5, s_1_58, -1, 1, 0},
-{ 6, s_1_59, -1, 1, 0},
-{ 2, s_1_60, -1, 1, 0},
-{ 4, s_1_61, 60, 3, 0},
-{ 5, s_1_62, 60, 10, 0},
-{ 3, s_1_63, 60, 1, 0},
-{ 3, s_1_64, 60, 1, 0},
-{ 3, s_1_65, 60, 1, 0},
-{ 6, s_1_66, -1, 1, 0},
-{ 4, s_1_67, -1, 1, 0},
-{ 5, s_1_68, -1, 1, 0},
-{ 5, s_1_69, -1, 1, 0},
-{ 4, s_1_70, -1, 1, 0},
-{ 3, s_1_71, -1, 1, 0},
-{ 2, s_1_72, -1, 1, 0},
-{ 4, s_1_73, 72, 1, 0},
-{ 3, s_1_74, 72, 1, 0},
-{ 7, s_1_75, 74, 1, 0},
-{ 7, s_1_76, 74, 1, 0},
-{ 6, s_1_77, 74, 1, 0},
-{ 5, s_1_78, 72, 1, 0},
-{ 6, s_1_79, 78, 1, 0},
-{ 4, s_1_80, 72, 1, 0},
-{ 4, s_1_81, 72, 1, 0},
-{ 5, s_1_82, 72, 1, 0},
-{ 3, s_1_83, 72, 1, 0},
-{ 4, s_1_84, 83, 1, 0},
-{ 5, s_1_85, 83, 1, 0},
-{ 6, s_1_86, 85, 1, 0},
-{ 5, s_1_87, -1, 1, 0},
-{ 6, s_1_88, 87, 1, 0},
-{ 4, s_1_89, -1, 1, 0},
-{ 4, s_1_90, -1, 1, 0},
-{ 3, s_1_91, -1, 1, 0},
-{ 5, s_1_92, 91, 1, 0},
-{ 4, s_1_93, 91, 1, 0},
-{ 3, s_1_94, -1, 1, 0},
-{ 5, s_1_95, 94, 1, 0},
-{ 4, s_1_96, -1, 1, 0},
-{ 5, s_1_97, 96, 1, 0},
-{ 5, s_1_98, 96, 1, 0},
-{ 4, s_1_99, -1, 1, 0},
-{ 4, s_1_100, -1, 1, 0},
-{ 4, s_1_101, -1, 1, 0},
-{ 3, s_1_102, -1, 1, 0},
-{ 4, s_1_103, 102, 1, 0},
-{ 4, s_1_104, 102, 1, 0},
-{ 4, s_1_105, -1, 1, 0},
-{ 4, s_1_106, -1, 1, 0},
-{ 3, s_1_107, -1, 1, 0},
-{ 2, s_1_108, -1, 1, 0},
-{ 3, s_1_109, 108, 1, 0},
-{ 4, s_1_110, 109, 1, 0},
-{ 5, s_1_111, 109, 1, 0},
-{ 5, s_1_112, 109, 1, 0},
-{ 4, s_1_113, 109, 1, 0},
-{ 5, s_1_114, 113, 1, 0},
-{ 5, s_1_115, 109, 1, 0},
-{ 4, s_1_116, 108, 1, 0},
-{ 4, s_1_117, 108, 1, 0},
-{ 4, s_1_118, 108, 1, 0},
-{ 3, s_1_119, 108, 2, 0},
-{ 6, s_1_120, 108, 1, 0},
-{ 5, s_1_121, 108, 1, 0},
-{ 3, s_1_122, 108, 1, 0},
-{ 2, s_1_123, -1, 1, 0},
-{ 3, s_1_124, 123, 1, 0},
-{ 2, s_1_125, -1, 1, 0},
-{ 3, s_1_126, 125, 1, 0},
-{ 4, s_1_127, 126, 1, 0},
-{ 3, s_1_128, 125, 1, 0},
-{ 3, s_1_129, -1, 1, 0},
-{ 6, s_1_130, 129, 1, 0},
-{ 5, s_1_131, 129, 1, 0},
-{ 5, s_1_132, -1, 1, 0},
-{ 5, s_1_133, -1, 1, 0},
-{ 5, s_1_134, -1, 1, 0},
-{ 4, s_1_135, -1, 1, 0},
-{ 3, s_1_136, -1, 1, 0},
-{ 6, s_1_137, 136, 1, 0},
-{ 5, s_1_138, 136, 1, 0},
-{ 4, s_1_139, -1, 1, 0},
-{ 3, s_1_140, -1, 1, 0},
-{ 4, s_1_141, 140, 1, 0},
-{ 2, s_1_142, -1, 1, 0},
-{ 3, s_1_143, 142, 1, 0},
-{ 5, s_1_144, 142, 1, 0},
-{ 3, s_1_145, 142, 2, 0},
-{ 6, s_1_146, 145, 1, 0},
-{ 5, s_1_147, 145, 1, 0},
-{ 6, s_1_148, 145, 1, 0},
-{ 6, s_1_149, 145, 1, 0},
-{ 6, s_1_150, 145, 1, 0},
-{ 4, s_1_151, -1, 1, 0},
-{ 4, s_1_152, -1, 1, 0},
-{ 4, s_1_153, -1, 1, 0},
-{ 4, s_1_154, -1, 1, 0},
-{ 5, s_1_155, 154, 1, 0},
-{ 5, s_1_156, 154, 1, 0},
-{ 4, s_1_157, -1, 1, 0},
-{ 2, s_1_158, -1, 1, 0},
-{ 4, s_1_159, -1, 1, 0},
-{ 5, s_1_160, 159, 1, 0},
-{ 4, s_1_161, -1, 1, 0},
-{ 3, s_1_162, -1, 1, 0},
-{ 4, s_1_163, -1, 1, 0},
-{ 2, s_1_164, -1, 1, 0},
-{ 5, s_1_165, 164, 1, 0},
-{ 3, s_1_166, 164, 1, 0},
-{ 4, s_1_167, 166, 1, 0},
-{ 2, s_1_168, -1, 1, 0},
-{ 5, s_1_169, -1, 1, 0},
-{ 2, s_1_170, -1, 1, 0},
-{ 4, s_1_171, 170, 1, 0},
-{ 4, s_1_172, 170, 1, 0},
-{ 4, s_1_173, 170, 1, 0},
-{ 4, s_1_174, -1, 1, 0},
-{ 3, s_1_175, -1, 1, 0},
-{ 2, s_1_176, -1, 1, 0},
-{ 4, s_1_177, 176, 1, 0},
-{ 5, s_1_178, 177, 1, 0},
-{ 5, s_1_179, 176, 8, 0},
-{ 5, s_1_180, 176, 1, 0},
-{ 5, s_1_181, 176, 1, 0},
-{ 3, s_1_182, -1, 1, 0},
-{ 3, s_1_183, -1, 1, 0},
-{ 4, s_1_184, 183, 1, 0},
-{ 4, s_1_185, 183, 1, 0},
-{ 4, s_1_186, -1, 1, 0},
-{ 3, s_1_187, -1, 1, 0},
-{ 2, s_1_188, -1, 1, 0},
-{ 4, s_1_189, 188, 1, 0},
-{ 2, s_1_190, -1, 1, 0},
-{ 3, s_1_191, 190, 1, 0},
-{ 3, s_1_192, 190, 1, 0},
-{ 3, s_1_193, -1, 1, 0},
-{ 4, s_1_194, 193, 1, 0},
-{ 4, s_1_195, 193, 1, 0},
-{ 4, s_1_196, 193, 1, 0},
-{ 5, s_1_197, -1, 2, 0},
-{ 5, s_1_198, -1, 1, 0},
-{ 5, s_1_199, -1, 1, 0},
-{ 4, s_1_200, -1, 1, 0},
-{ 3, s_1_201, -1, 1, 0},
-{ 2, s_1_202, -1, 1, 0},
-{ 5, s_1_203, -1, 1, 0},
-{ 2, s_1_204, -1, 1, 0},
-{ 2, s_1_205, -1, 1, 0},
-{ 2, s_1_206, -1, 1, 0},
-{ 5, s_1_207, -1, 1, 0},
-{ 5, s_1_208, -1, 1, 0},
-{ 3, s_1_209, -1, 1, 0},
-{ 4, s_1_210, 209, 1, 0},
-{ 3, s_1_211, -1, 1, 0},
-{ 3, s_1_212, -1, 1, 0},
-{ 4, s_1_213, 212, 1, 0},
-{ 2, s_1_214, -1, 4, 0},
-{ 3, s_1_215, 214, 2, 0},
-{ 6, s_1_216, 215, 1, 0},
-{ 6, s_1_217, 215, 1, 0},
-{ 5, s_1_218, 215, 1, 0},
-{ 3, s_1_219, 214, 4, 0},
-{ 4, s_1_220, 214, 4, 0},
-{ 4, s_1_221, -1, 1, 0},
-{ 5, s_1_222, 221, 1, 0},
-{ 3, s_1_223, -1, 1, 0},
-{ 3, s_1_224, -1, 1, 0},
-{ 3, s_1_225, -1, 1, 0},
-{ 4, s_1_226, -1, 1, 0},
-{ 5, s_1_227, 226, 1, 0},
-{ 5, s_1_228, -1, 1, 0},
-{ 4, s_1_229, -1, 1, 0},
-{ 5, s_1_230, 229, 1, 0},
-{ 2, s_1_231, -1, 1, 0},
-{ 3, s_1_232, 231, 1, 0},
-{ 3, s_1_233, -1, 1, 0},
-{ 2, s_1_234, -1, 1, 0},
-{ 5, s_1_235, 234, 5, 0},
-{ 4, s_1_236, 234, 1, 0},
-{ 5, s_1_237, 236, 1, 0},
-{ 3, s_1_238, 234, 1, 0},
-{ 6, s_1_239, 234, 1, 0},
-{ 3, s_1_240, 234, 1, 0},
-{ 4, s_1_241, 234, 1, 0},
-{ 8, s_1_242, 241, 6, 0},
-{ 3, s_1_243, 234, 1, 0},
-{ 2, s_1_244, -1, 1, 0},
-{ 4, s_1_245, 244, 1, 0},
-{ 2, s_1_246, -1, 1, 0},
-{ 3, s_1_247, 246, 1, 0},
-{ 5, s_1_248, 247, 9, 0},
-{ 4, s_1_249, 247, 1, 0},
-{ 4, s_1_250, 247, 1, 0},
-{ 3, s_1_251, 246, 1, 0},
-{ 4, s_1_252, 246, 1, 0},
-{ 3, s_1_253, 246, 1, 0},
-{ 3, s_1_254, -1, 1, 0},
-{ 2, s_1_255, -1, 1, 0},
-{ 3, s_1_256, 255, 1, 0},
-{ 3, s_1_257, 255, 1, 0},
-{ 3, s_1_258, -1, 1, 0},
-{ 3, s_1_259, -1, 1, 0},
-{ 6, s_1_260, 259, 1, 0},
-{ 2, s_1_261, -1, 1, 0},
-{ 2, s_1_262, -1, 1, 0},
-{ 2, s_1_263, -1, 1, 0},
-{ 3, s_1_264, 263, 1, 0},
-{ 5, s_1_265, 263, 1, 0},
-{ 5, s_1_266, 263, 7, 0},
-{ 4, s_1_267, 263, 1, 0},
-{ 4, s_1_268, 263, 1, 0},
-{ 3, s_1_269, 263, 1, 0},
-{ 4, s_1_270, 263, 1, 0},
-{ 2, s_1_271, -1, 2, 0},
-{ 3, s_1_272, 271, 1, 0},
-{ 2, s_1_273, -1, 1, 0},
-{ 3, s_1_274, -1, 1, 0},
-{ 2, s_1_275, -1, 1, 0},
-{ 5, s_1_276, 275, 1, 0},
-{ 4, s_1_277, 275, 1, 0},
-{ 4, s_1_278, -1, 1, 0},
-{ 4, s_1_279, -1, 2, 0},
-{ 4, s_1_280, -1, 1, 0},
-{ 3, s_1_281, -1, 1, 0},
-{ 2, s_1_282, -1, 1, 0},
-{ 4, s_1_283, 282, 4, 0},
-{ 5, s_1_284, 282, 1, 0},
-{ 4, s_1_285, 282, 1, 0},
-{ 3, s_1_286, -1, 1, 0},
-{ 2, s_1_287, -1, 1, 0},
-{ 3, s_1_288, 287, 1, 0},
-{ 6, s_1_289, 288, 1, 0},
-{ 1, s_1_290, -1, 1, 0},
-{ 2, s_1_291, 290, 1, 0},
-{ 4, s_1_292, 290, 1, 0},
-{ 2, s_1_293, 290, 1, 0},
-{ 5, s_1_294, 293, 1, 0}
+static const struct among a_1[295] = {
+{ 3, s_1_0, 0, 1, 0},
+{ 4, s_1_1, -1, 1, 0},
+{ 4, s_1_2, 0, 1, 0},
+{ 5, s_1_3, 0, 1, 0},
+{ 5, s_1_4, 0, 1, 0},
+{ 5, s_1_5, 0, 1, 0},
+{ 5, s_1_6, 0, 1, 0},
+{ 6, s_1_7, -1, 1, 0},
+{ 6, s_1_8, -2, 1, 0},
+{ 5, s_1_9, 0, 1, 0},
+{ 5, s_1_10, 0, 1, 0},
+{ 6, s_1_11, -1, 1, 0},
+{ 5, s_1_12, 0, 1, 0},
+{ 4, s_1_13, 0, 1, 0},
+{ 5, s_1_14, 0, 1, 0},
+{ 3, s_1_15, 0, 1, 0},
+{ 4, s_1_16, -1, 1, 0},
+{ 6, s_1_17, -2, 1, 0},
+{ 4, s_1_18, -3, 1, 0},
+{ 5, s_1_19, -1, 1, 0},
+{ 3, s_1_20, 0, 1, 0},
+{ 6, s_1_21, 0, 1, 0},
+{ 3, s_1_22, 0, 1, 0},
+{ 5, s_1_23, -1, 1, 0},
+{ 5, s_1_24, -2, 1, 0},
+{ 5, s_1_25, -3, 1, 0},
+{ 5, s_1_26, 0, 1, 0},
+{ 2, s_1_27, 0, 1, 0},
+{ 4, s_1_28, -1, 1, 0},
+{ 4, s_1_29, 0, 1, 0},
+{ 5, s_1_30, 0, 1, 0},
+{ 6, s_1_31, -1, 1, 0},
+{ 6, s_1_32, 0, 1, 0},
+{ 6, s_1_33, 0, 1, 0},
+{ 4, s_1_34, 0, 1, 0},
+{ 4, s_1_35, 0, 1, 0},
+{ 5, s_1_36, -1, 1, 0},
+{ 5, s_1_37, -2, 1, 0},
+{ 5, s_1_38, 0, 1, 0},
+{ 4, s_1_39, 0, 1, 0},
+{ 3, s_1_40, 0, 1, 0},
+{ 5, s_1_41, -1, 1, 0},
+{ 3, s_1_42, 0, 1, 0},
+{ 4, s_1_43, -1, 1, 0},
+{ 4, s_1_44, 0, 1, 0},
+{ 5, s_1_45, -1, 1, 0},
+{ 5, s_1_46, -2, 1, 0},
+{ 5, s_1_47, -3, 1, 0},
+{ 4, s_1_48, 0, 1, 0},
+{ 5, s_1_49, -1, 1, 0},
+{ 5, s_1_50, -2, 1, 0},
+{ 6, s_1_51, 0, 2, 0},
+{ 6, s_1_52, 0, 1, 0},
+{ 6, s_1_53, 0, 1, 0},
+{ 5, s_1_54, 0, 1, 0},
+{ 4, s_1_55, 0, 1, 0},
+{ 3, s_1_56, 0, 1, 0},
+{ 4, s_1_57, 0, 1, 0},
+{ 5, s_1_58, 0, 1, 0},
+{ 6, s_1_59, 0, 1, 0},
+{ 2, s_1_60, 0, 1, 0},
+{ 4, s_1_61, -1, 3, 0},
+{ 5, s_1_62, -2, -1, 0},
+{ 3, s_1_63, -3, 1, 0},
+{ 3, s_1_64, -4, 1, 0},
+{ 3, s_1_65, -5, 1, 0},
+{ 6, s_1_66, 0, 1, 0},
+{ 4, s_1_67, 0, 1, 0},
+{ 5, s_1_68, 0, 1, 0},
+{ 5, s_1_69, 0, 1, 0},
+{ 4, s_1_70, 0, 1, 0},
+{ 3, s_1_71, 0, 1, 0},
+{ 2, s_1_72, 0, 1, 0},
+{ 4, s_1_73, -1, 1, 0},
+{ 3, s_1_74, -2, 1, 0},
+{ 7, s_1_75, -1, 1, 0},
+{ 7, s_1_76, -2, 1, 0},
+{ 6, s_1_77, -3, 1, 0},
+{ 5, s_1_78, -6, 1, 0},
+{ 6, s_1_79, -1, 1, 0},
+{ 4, s_1_80, -8, 1, 0},
+{ 4, s_1_81, -9, 1, 0},
+{ 5, s_1_82, -10, 1, 0},
+{ 3, s_1_83, -11, 1, 0},
+{ 4, s_1_84, -1, 1, 0},
+{ 5, s_1_85, -2, 1, 0},
+{ 6, s_1_86, -1, 1, 0},
+{ 5, s_1_87, 0, 1, 0},
+{ 6, s_1_88, -1, 1, 0},
+{ 4, s_1_89, 0, 1, 0},
+{ 4, s_1_90, 0, 1, 0},
+{ 3, s_1_91, 0, 1, 0},
+{ 5, s_1_92, -1, 1, 0},
+{ 4, s_1_93, -2, 1, 0},
+{ 3, s_1_94, 0, 1, 0},
+{ 5, s_1_95, -1, 1, 0},
+{ 4, s_1_96, 0, 1, 0},
+{ 5, s_1_97, -1, 1, 0},
+{ 5, s_1_98, -2, 1, 0},
+{ 4, s_1_99, 0, 1, 0},
+{ 4, s_1_100, 0, 1, 0},
+{ 4, s_1_101, 0, 1, 0},
+{ 3, s_1_102, 0, 1, 0},
+{ 4, s_1_103, -1, 1, 0},
+{ 4, s_1_104, -2, 1, 0},
+{ 4, s_1_105, 0, 1, 0},
+{ 4, s_1_106, 0, 1, 0},
+{ 3, s_1_107, 0, 1, 0},
+{ 2, s_1_108, 0, 1, 0},
+{ 3, s_1_109, -1, 1, 0},
+{ 4, s_1_110, -1, 1, 0},
+{ 5, s_1_111, -2, 1, 0},
+{ 5, s_1_112, -3, 1, 0},
+{ 4, s_1_113, -4, 1, 0},
+{ 5, s_1_114, -1, 1, 0},
+{ 5, s_1_115, -6, 1, 0},
+{ 4, s_1_116, -8, 1, 0},
+{ 4, s_1_117, -9, 1, 0},
+{ 4, s_1_118, -10, 1, 0},
+{ 3, s_1_119, -11, 2, 0},
+{ 6, s_1_120, -12, 1, 0},
+{ 5, s_1_121, -13, 1, 0},
+{ 3, s_1_122, -14, 1, 0},
+{ 2, s_1_123, 0, 1, 0},
+{ 3, s_1_124, -1, 1, 0},
+{ 2, s_1_125, 0, 1, 0},
+{ 3, s_1_126, -1, 1, 0},
+{ 4, s_1_127, -1, 1, 0},
+{ 3, s_1_128, -3, 1, 0},
+{ 3, s_1_129, 0, 1, 0},
+{ 6, s_1_130, -1, 1, 0},
+{ 5, s_1_131, -2, 1, 0},
+{ 5, s_1_132, 0, 1, 0},
+{ 5, s_1_133, 0, 1, 0},
+{ 5, s_1_134, 0, 1, 0},
+{ 4, s_1_135, 0, 1, 0},
+{ 3, s_1_136, 0, 1, 0},
+{ 6, s_1_137, -1, 1, 0},
+{ 5, s_1_138, -2, 1, 0},
+{ 4, s_1_139, 0, 1, 0},
+{ 3, s_1_140, 0, 1, 0},
+{ 4, s_1_141, -1, 1, 0},
+{ 2, s_1_142, 0, 1, 0},
+{ 3, s_1_143, -1, 1, 0},
+{ 5, s_1_144, -2, 1, 0},
+{ 3, s_1_145, -3, 2, 0},
+{ 6, s_1_146, -1, 1, 0},
+{ 5, s_1_147, -2, 1, 0},
+{ 6, s_1_148, -3, 1, 0},
+{ 6, s_1_149, -4, 1, 0},
+{ 6, s_1_150, -5, 1, 0},
+{ 4, s_1_151, 0, 1, 0},
+{ 4, s_1_152, 0, 1, 0},
+{ 4, s_1_153, 0, 1, 0},
+{ 4, s_1_154, 0, 1, 0},
+{ 5, s_1_155, -1, 1, 0},
+{ 5, s_1_156, -2, 1, 0},
+{ 4, s_1_157, 0, 1, 0},
+{ 2, s_1_158, 0, 1, 0},
+{ 4, s_1_159, 0, 1, 0},
+{ 5, s_1_160, -1, 1, 0},
+{ 4, s_1_161, 0, 1, 0},
+{ 3, s_1_162, 0, 1, 0},
+{ 4, s_1_163, 0, 1, 0},
+{ 2, s_1_164, 0, 1, 0},
+{ 5, s_1_165, -1, 1, 0},
+{ 3, s_1_166, -2, 1, 0},
+{ 4, s_1_167, -1, 1, 0},
+{ 2, s_1_168, 0, 1, 0},
+{ 5, s_1_169, 0, 1, 0},
+{ 2, s_1_170, 0, 1, 0},
+{ 4, s_1_171, -1, 1, 0},
+{ 4, s_1_172, -2, 1, 0},
+{ 4, s_1_173, -3, 1, 0},
+{ 4, s_1_174, 0, 1, 0},
+{ 3, s_1_175, 0, 1, 0},
+{ 2, s_1_176, 0, 1, 0},
+{ 4, s_1_177, -1, 1, 0},
+{ 5, s_1_178, -1, 1, 0},
+{ 5, s_1_179, -3, -1, 0},
+{ 5, s_1_180, -4, 1, 0},
+{ 5, s_1_181, -5, 1, 0},
+{ 3, s_1_182, 0, 1, 0},
+{ 3, s_1_183, 0, 1, 0},
+{ 4, s_1_184, -1, 1, 0},
+{ 4, s_1_185, -2, 1, 0},
+{ 4, s_1_186, 0, 1, 0},
+{ 3, s_1_187, 0, 1, 0},
+{ 2, s_1_188, 0, 1, 0},
+{ 4, s_1_189, -1, 1, 0},
+{ 2, s_1_190, 0, 1, 0},
+{ 3, s_1_191, -1, 1, 0},
+{ 3, s_1_192, -2, 1, 0},
+{ 3, s_1_193, 0, 1, 0},
+{ 4, s_1_194, -1, 1, 0},
+{ 4, s_1_195, -2, 1, 0},
+{ 4, s_1_196, -3, 1, 0},
+{ 5, s_1_197, 0, 2, 0},
+{ 5, s_1_198, 0, 1, 0},
+{ 5, s_1_199, 0, 1, 0},
+{ 4, s_1_200, 0, 1, 0},
+{ 3, s_1_201, 0, 1, 0},
+{ 2, s_1_202, 0, 1, 0},
+{ 5, s_1_203, 0, 1, 0},
+{ 2, s_1_204, 0, 1, 0},
+{ 2, s_1_205, 0, 1, 0},
+{ 2, s_1_206, 0, 1, 0},
+{ 5, s_1_207, 0, 1, 0},
+{ 5, s_1_208, 0, 1, 0},
+{ 3, s_1_209, 0, 1, 0},
+{ 4, s_1_210, -1, 1, 0},
+{ 3, s_1_211, 0, 1, 0},
+{ 3, s_1_212, 0, 1, 0},
+{ 4, s_1_213, -1, 1, 0},
+{ 2, s_1_214, 0, 4, 0},
+{ 3, s_1_215, -1, 2, 0},
+{ 6, s_1_216, -1, 1, 0},
+{ 6, s_1_217, -2, 1, 0},
+{ 5, s_1_218, -3, 1, 0},
+{ 3, s_1_219, -5, 4, 0},
+{ 4, s_1_220, -6, 4, 0},
+{ 4, s_1_221, 0, 1, 0},
+{ 5, s_1_222, -1, 1, 0},
+{ 3, s_1_223, 0, 1, 0},
+{ 3, s_1_224, 0, 1, 0},
+{ 3, s_1_225, 0, 1, 0},
+{ 4, s_1_226, 0, 1, 0},
+{ 5, s_1_227, -1, 1, 0},
+{ 5, s_1_228, 0, 1, 0},
+{ 4, s_1_229, 0, 1, 0},
+{ 5, s_1_230, -1, 1, 0},
+{ 2, s_1_231, 0, 1, 0},
+{ 3, s_1_232, -1, 1, 0},
+{ 3, s_1_233, 0, 1, 0},
+{ 2, s_1_234, 0, 1, 0},
+{ 5, s_1_235, -1, 5, 0},
+{ 4, s_1_236, -2, 1, 0},
+{ 5, s_1_237, -1, 1, 0},
+{ 3, s_1_238, -4, 1, 0},
+{ 6, s_1_239, -5, 1, 0},
+{ 3, s_1_240, -6, 1, 0},
+{ 4, s_1_241, -7, 1, 0},
+{ 8, s_1_242, -1, 6, 0},
+{ 3, s_1_243, -9, 1, 0},
+{ 2, s_1_244, 0, 1, 0},
+{ 4, s_1_245, -1, 1, 0},
+{ 2, s_1_246, 0, 1, 0},
+{ 3, s_1_247, -1, 1, 0},
+{ 5, s_1_248, -1, -1, 0},
+{ 4, s_1_249, -2, 1, 0},
+{ 4, s_1_250, -3, 1, 0},
+{ 3, s_1_251, -5, 1, 0},
+{ 4, s_1_252, -6, 1, 0},
+{ 3, s_1_253, -7, 1, 0},
+{ 3, s_1_254, 0, 1, 0},
+{ 2, s_1_255, 0, 1, 0},
+{ 3, s_1_256, -1, 1, 0},
+{ 3, s_1_257, -2, 1, 0},
+{ 3, s_1_258, 0, 1, 0},
+{ 3, s_1_259, 0, 1, 0},
+{ 6, s_1_260, -1, 1, 0},
+{ 2, s_1_261, 0, 1, 0},
+{ 2, s_1_262, 0, 1, 0},
+{ 2, s_1_263, 0, 1, 0},
+{ 3, s_1_264, -1, 1, 0},
+{ 5, s_1_265, -2, 1, 0},
+{ 5, s_1_266, -3, -1, 0},
+{ 4, s_1_267, -4, 1, 0},
+{ 4, s_1_268, -5, 1, 0},
+{ 3, s_1_269, -6, 1, 0},
+{ 4, s_1_270, -7, 1, 0},
+{ 2, s_1_271, 0, 2, 0},
+{ 3, s_1_272, -1, 1, 0},
+{ 2, s_1_273, 0, 1, 0},
+{ 3, s_1_274, 0, 1, 0},
+{ 2, s_1_275, 0, 1, 0},
+{ 5, s_1_276, -1, 1, 0},
+{ 4, s_1_277, -2, 1, 0},
+{ 4, s_1_278, 0, 1, 0},
+{ 4, s_1_279, 0, 2, 0},
+{ 4, s_1_280, 0, 1, 0},
+{ 3, s_1_281, 0, 1, 0},
+{ 2, s_1_282, 0, 1, 0},
+{ 4, s_1_283, -1, 4, 0},
+{ 5, s_1_284, -2, 1, 0},
+{ 4, s_1_285, -3, 1, 0},
+{ 3, s_1_286, 0, 1, 0},
+{ 2, s_1_287, 0, 1, 0},
+{ 3, s_1_288, -1, 1, 0},
+{ 6, s_1_289, -1, 1, 0},
+{ 1, s_1_290, 0, 1, 0},
+{ 2, s_1_291, -1, 1, 0},
+{ 4, s_1_292, -2, 1, 0},
+{ 2, s_1_293, -3, 1, 0},
+{ 5, s_1_294, -1, 1, 0}
};
static const symbol s_2_0[4] = { 'z', 'l', 'e', 'a' };
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] =
-{
-{ 4, s_2_0, -1, 2, 0},
-{ 5, s_2_1, -1, 1, 0},
-{ 2, s_2_2, -1, 1, 0},
-{ 3, s_2_3, -1, 1, 0},
-{ 4, s_2_4, -1, 1, 0},
-{ 4, s_2_5, -1, 1, 0},
-{ 4, s_2_6, -1, 1, 0},
-{ 4, s_2_7, -1, 1, 0},
-{ 2, s_2_8, -1, 1, 0},
-{ 2, s_2_9, -1, 1, 0},
-{ 2, s_2_10, -1, 1, 0},
-{ 5, s_2_11, 10, 1, 0},
-{ 3, s_2_12, 10, 1, 0},
-{ 5, s_2_13, 12, 1, 0},
-{ 4, s_2_14, 10, 1, 0},
-{ 2, s_2_15, -1, 1, 0},
-{ 2, s_2_16, -1, 1, 0},
-{ 3, s_2_17, 16, 1, 0},
-{ 2, s_2_18, -1, 1, 0}
+static const struct among a_2[19] = {
+{ 4, s_2_0, 0, 2, 0},
+{ 5, s_2_1, 0, 1, 0},
+{ 2, s_2_2, 0, 1, 0},
+{ 3, s_2_3, 0, 1, 0},
+{ 4, s_2_4, 0, 1, 0},
+{ 4, s_2_5, 0, 1, 0},
+{ 4, s_2_6, 0, 1, 0},
+{ 4, s_2_7, 0, 1, 0},
+{ 2, s_2_8, 0, 1, 0},
+{ 2, s_2_9, 0, 1, 0},
+{ 2, s_2_10, 0, 1, 0},
+{ 5, s_2_11, -1, 1, 0},
+{ 3, s_2_12, -2, 1, 0},
+{ 5, s_2_13, -1, 1, 0},
+{ 4, s_2_14, -4, 1, 0},
+{ 2, s_2_15, 0, 1, 0},
+{ 2, s_2_16, 0, 1, 0},
+{ 3, s_2_17, -1, 1, 0},
+{ 2, s_2_18, 0, 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) {
- z->I[2] = z->l;
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
- { int c2 = z->c;
- if (in_grouping(z, g_v, 97, 117, 0)) goto lab2;
- { int c3 = z->c;
- if (out_grouping(z, g_v, 97, 117, 0)) goto lab4;
-
+ ((SN_local *)z)->i_pV = z->l;
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ do {
+ int v_2 = z->c;
+ if (in_grouping(z, g_v, 97, 117, 0)) goto lab1;
+ do {
+ int v_3 = z->c;
+ if (out_grouping(z, g_v, 97, 117, 0)) goto lab2;
{
int ret = out_grouping(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab4;
+ if (ret < 0) goto lab2;
z->c += ret;
}
- goto lab3;
- lab4:
- z->c = c3;
- if (in_grouping(z, g_v, 97, 117, 0)) goto lab2;
-
+ break;
+ lab2:
+ z->c = v_3;
+ if (in_grouping(z, g_v, 97, 117, 0)) goto lab1;
{
int ret = in_grouping(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab2;
+ if (ret < 0) goto lab1;
z->c += ret;
}
- }
- lab3:
- goto lab1;
- lab2:
- z->c = c2;
+ } while (0);
+ break;
+ lab1:
+ z->c = v_2;
if (out_grouping(z, g_v, 97, 117, 0)) goto lab0;
- { int c4 = z->c;
- if (out_grouping(z, g_v, 97, 117, 0)) goto lab6;
-
+ do {
+ int v_4 = z->c;
+ if (out_grouping(z, g_v, 97, 117, 0)) goto lab3;
{
int ret = out_grouping(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab6;
+ if (ret < 0) goto lab3;
z->c += ret;
}
- goto lab5;
- lab6:
- z->c = c4;
+ break;
+ lab3:
+ z->c = v_4;
if (in_grouping(z, g_v, 97, 117, 0)) goto lab0;
if (z->c >= z->l) goto lab0;
z->c++;
- }
- lab5:
- ;
- }
- lab1:
- z->I[2] = z->c;
+ } while (0);
+ } while (0);
+ ((SN_local *)z)->i_pV = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int c5 = z->c;
-
+ {
+ int v_5 = z->c;
{
int ret = out_grouping(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[0] = z->c;
- lab7:
- z->c = c5;
+ ((SN_local *)z)->i_p2 = z->c;
+ lab4:
+ z->c = v_5;
}
return 1;
}
static int r_RV(struct SN_env * z) {
- return z->I[2] <= z->c;
+ return ((SN_local *)z)->i_pV <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_aditzak(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((70566434 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_0, 109);
+ among_var = find_among_b(z, a_0, 109, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- break;
- case 3:
- { int ret = slice_from_s(z, 7, s_0);
- if (ret < 0) return ret;
- }
- break;
- case 4:
- { int ret = slice_from_s(z, 7, s_1);
- if (ret < 0) return ret;
- }
- break;
- case 5:
- { int ret = slice_from_s(z, 6, s_2);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((71162402 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_1, 295);
+ among_var = find_among_b(z, a_1, 295, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 3, s_3);
+ {
+ int ret = slice_from_s(z, 3, s_0);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 3, s_4);
+ {
+ int ret = slice_from_s(z, 3, s_1);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 6, s_5);
- if (ret < 0) return ret;
- }
- break;
- case 7:
- { int ret = slice_from_s(z, 5, s_6);
- if (ret < 0) return ret;
- }
- break;
- case 8:
- { int ret = slice_from_s(z, 5, s_7);
- if (ret < 0) return ret;
- }
- break;
- case 9:
- { int ret = slice_from_s(z, 5, s_8);
- if (ret < 0) return ret;
- }
- break;
- case 10:
- { int ret = slice_from_s(z, 5, s_9);
+ {
+ int ret = slice_from_s(z, 6, s_2);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((35362 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_2, 19);
+ among_var = find_among_b(z, a_2, 19, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_10);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
}
extern int basque_ISO_8859_1_stem(struct SN_env * z) {
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
- while(1) {
- int m1 = z->l - z->c; (void)m1;
- { int ret = r_aditzak(z);
+ while (1) {
+ int v_1 = z->l - z->c;
+ {
+ int ret = r_aditzak(z);
if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
continue;
lab0:
- z->c = z->l - m1;
+ z->c = z->l - v_1;
break;
}
- while(1) {
- int m2 = z->l - z->c; (void)m2;
- { int ret = r_izenak(z);
+ while (1) {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_izenak(z);
if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
continue;
lab1:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
break;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_adjetiboak(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_adjetiboak(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * basque_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * basque_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->i_pV = 0;
+ }
+ return z;
+}
-extern void basque_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void basque_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from catalan.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_catalan.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#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_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);
+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' };
-#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_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, -1, 7, 0},
-{ 1, s_0_1, 0, 6, 0},
-{ 1, s_0_2, 0, 1, 0},
-{ 1, s_0_3, 0, 1, 0},
-{ 1, s_0_4, 0, 2, 0},
-{ 1, s_0_5, 0, 2, 0},
-{ 1, s_0_6, 0, 3, 0},
-{ 1, s_0_7, 0, 3, 0},
-{ 1, s_0_8, 0, 3, 0},
-{ 1, s_0_9, 0, 4, 0},
-{ 1, s_0_10, 0, 4, 0},
-{ 1, s_0_11, 0, 5, 0},
-{ 1, s_0_12, 0, 5, 0}
+static const struct among a_0[13] = {
+{ 0, 0, 0, 7, 0},
+{ 1, s_0_1, -1, 6, 0},
+{ 1, s_0_2, -2, 1, 0},
+{ 1, s_0_3, -3, 1, 0},
+{ 1, s_0_4, -4, 2, 0},
+{ 1, s_0_5, -5, 2, 0},
+{ 1, s_0_6, -6, 3, 0},
+{ 1, s_0_7, -7, 3, 0},
+{ 1, s_0_8, -8, 3, 0},
+{ 1, s_0_9, -9, 4, 0},
+{ 1, s_0_10, -10, 4, 0},
+{ 1, s_0_11, -11, 5, 0},
+{ 1, s_0_12, -12, 5, 0}
};
static const symbol s_1_0[2] = { 'l', 'a' };
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] =
-{
-{ 2, s_1_0, -1, 1, 0},
-{ 3, s_1_1, 0, 1, 0},
-{ 4, s_1_2, 0, 1, 0},
-{ 2, s_1_3, -1, 1, 0},
-{ 2, s_1_4, -1, 1, 0},
-{ 3, s_1_5, 4, 1, 0},
-{ 2, s_1_6, -1, 1, 0},
-{ 3, s_1_7, -1, 1, 0},
-{ 2, s_1_8, -1, 1, 0},
-{ 3, s_1_9, 8, 1, 0},
-{ 2, s_1_10, -1, 1, 0},
-{ 3, s_1_11, 10, 1, 0},
-{ 2, s_1_12, -1, 1, 0},
-{ 2, s_1_13, -1, 1, 0},
-{ 2, s_1_14, -1, 1, 0},
-{ 2, s_1_15, -1, 1, 0},
-{ 2, s_1_16, -1, 1, 0},
-{ 2, s_1_17, -1, 1, 0},
-{ 3, s_1_18, 17, 1, 0},
-{ 2, s_1_19, -1, 1, 0},
-{ 4, s_1_20, 19, 1, 0},
-{ 2, s_1_21, -1, 1, 0},
-{ 3, s_1_22, -1, 1, 0},
-{ 5, s_1_23, 22, 1, 0},
-{ 3, s_1_24, -1, 1, 0},
-{ 4, s_1_25, 24, 1, 0},
-{ 3, s_1_26, -1, 1, 0},
-{ 3, s_1_27, -1, 1, 0},
-{ 3, s_1_28, -1, 1, 0},
-{ 3, s_1_29, -1, 1, 0},
-{ 3, s_1_30, -1, 1, 0},
-{ 3, s_1_31, -1, 1, 0},
-{ 5, s_1_32, 31, 1, 0},
-{ 3, s_1_33, -1, 1, 0},
-{ 4, s_1_34, 33, 1, 0},
-{ 3, s_1_35, -1, 1, 0},
-{ 2, s_1_36, -1, 1, 0},
-{ 3, s_1_37, 36, 1, 0},
-{ 2, s_1_38, -1, 1, 0}
+static const struct among a_1[39] = {
+{ 2, s_1_0, 0, 1, 0},
+{ 3, s_1_1, -1, 1, 0},
+{ 4, s_1_2, -2, 1, 0},
+{ 2, s_1_3, 0, 1, 0},
+{ 2, s_1_4, 0, 1, 0},
+{ 3, s_1_5, -1, 1, 0},
+{ 2, s_1_6, 0, 1, 0},
+{ 3, s_1_7, 0, 1, 0},
+{ 2, s_1_8, 0, 1, 0},
+{ 3, s_1_9, -1, 1, 0},
+{ 2, s_1_10, 0, 1, 0},
+{ 3, s_1_11, -1, 1, 0},
+{ 2, s_1_12, 0, 1, 0},
+{ 2, s_1_13, 0, 1, 0},
+{ 2, s_1_14, 0, 1, 0},
+{ 2, s_1_15, 0, 1, 0},
+{ 2, s_1_16, 0, 1, 0},
+{ 2, s_1_17, 0, 1, 0},
+{ 3, s_1_18, -1, 1, 0},
+{ 2, s_1_19, 0, 1, 0},
+{ 4, s_1_20, -1, 1, 0},
+{ 2, s_1_21, 0, 1, 0},
+{ 3, s_1_22, 0, 1, 0},
+{ 5, s_1_23, -1, 1, 0},
+{ 3, s_1_24, 0, 1, 0},
+{ 4, s_1_25, -1, 1, 0},
+{ 3, s_1_26, 0, 1, 0},
+{ 3, s_1_27, 0, 1, 0},
+{ 3, s_1_28, 0, 1, 0},
+{ 3, s_1_29, 0, 1, 0},
+{ 3, s_1_30, 0, 1, 0},
+{ 3, s_1_31, 0, 1, 0},
+{ 5, s_1_32, -1, 1, 0},
+{ 3, s_1_33, 0, 1, 0},
+{ 4, s_1_34, -1, 1, 0},
+{ 3, s_1_35, 0, 1, 0},
+{ 2, s_1_36, 0, 1, 0},
+{ 3, s_1_37, -1, 1, 0},
+{ 2, s_1_38, 0, 1, 0}
};
static const symbol s_2_0[3] = { 'i', 'c', 'a' };
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] =
-{
-{ 3, s_2_0, -1, 4, 0},
-{ 6, s_2_1, 0, 3, 0},
-{ 4, s_2_2, -1, 1, 0},
-{ 3, s_2_3, -1, 2, 0},
-{ 5, s_2_4, -1, 1, 0},
-{ 5, s_2_5, -1, 1, 0},
-{ 5, s_2_6, -1, 1, 0},
-{ 4, s_2_7, -1, 1, 0},
-{ 5, s_2_8, -1, 3, 0},
-{ 4, s_2_9, -1, 1, 0},
-{ 5, s_2_10, 9, 1, 0},
-{ 4, s_2_11, -1, 1, 0},
-{ 4, s_2_12, -1, 1, 0},
-{ 6, s_2_13, -1, 1, 0},
-{ 4, s_2_14, -1, 1, 0},
-{ 4, s_2_15, -1, 1, 0},
-{ 5, s_2_16, -1, 1, 0},
-{ 3, s_2_17, -1, 1, 0},
-{ 6, s_2_18, 17, 1, 0},
-{ 8, s_2_19, 18, 5, 0},
-{ 3, s_2_20, -1, 1, 0},
-{ 3, s_2_21, -1, 1, 0},
-{ 3, s_2_22, -1, 1, 0},
-{ 5, s_2_23, 22, 1, 0},
-{ 3, s_2_24, -1, 1, 0},
-{ 4, s_2_25, 24, 1, 0},
-{ 5, s_2_26, 25, 1, 0},
-{ 5, s_2_27, -1, 1, 0},
-{ 3, s_2_28, -1, 1, 0},
-{ 3, s_2_29, -1, 1, 0},
-{ 4, s_2_30, -1, 1, 0},
-{ 4, s_2_31, -1, 1, 0},
-{ 4, s_2_32, -1, 1, 0},
-{ 3, s_2_33, -1, 1, 0},
-{ 3, s_2_34, -1, 1, 0},
-{ 3, s_2_35, -1, 1, 0},
-{ 4, s_2_36, -1, 1, 0},
-{ 7, s_2_37, 36, 1, 0},
-{ 7, s_2_38, 36, 1, 0},
-{ 3, s_2_39, -1, 1, 0},
-{ 5, s_2_40, 39, 1, 0},
-{ 3, s_2_41, -1, 1, 0},
-{ 5, s_2_42, -1, 3, 0},
-{ 2, s_2_43, -1, 4, 0},
-{ 5, s_2_44, 43, 1, 0},
-{ 3, s_2_45, -1, 1, 0},
-{ 3, s_2_46, -1, 1, 0},
-{ 2, s_2_47, -1, 1, 0},
-{ 4, s_2_48, -1, 1, 0},
-{ 3, s_2_49, -1, 1, 0},
-{ 4, s_2_50, 49, 1, 0},
-{ 4, s_2_51, 49, 1, 0},
-{ 4, s_2_52, -1, 1, 0},
-{ 7, s_2_53, 52, 1, 0},
-{ 7, s_2_54, 52, 1, 0},
-{ 6, s_2_55, 52, 1, 0},
-{ 4, s_2_56, -1, 1, 0},
-{ 4, s_2_57, -1, 1, 0},
-{ 4, s_2_58, -1, 1, 0},
-{ 3, s_2_59, -1, 1, 0},
-{ 3, s_2_60, -1, 1, 0},
-{ 4, s_2_61, -1, 3, 0},
-{ 3, s_2_62, -1, 1, 0},
-{ 4, s_2_63, -1, 1, 0},
-{ 2, s_2_64, -1, 1, 0},
-{ 2, s_2_65, -1, 1, 0},
-{ 3, s_2_66, -1, 1, 0},
-{ 3, s_2_67, -1, 1, 0},
-{ 4, s_2_68, -1, 1, 0},
-{ 4, s_2_69, -1, 1, 0},
-{ 5, s_2_70, -1, 1, 0},
-{ 5, s_2_71, -1, 1, 0},
-{ 5, s_2_72, -1, 1, 0},
-{ 5, s_2_73, -1, 1, 0},
-{ 7, s_2_74, 73, 5, 0},
-{ 4, s_2_75, -1, 1, 0},
-{ 5, s_2_76, -1, 1, 0},
-{ 2, s_2_77, -1, 1, 0},
-{ 6, s_2_78, 77, 1, 0},
-{ 4, s_2_79, 77, 1, 0},
-{ 4, s_2_80, 77, 1, 0},
-{ 4, s_2_81, 77, 1, 0},
-{ 5, s_2_82, 77, 1, 0},
-{ 3, s_2_83, -1, 1, 0},
-{ 2, s_2_84, -1, 1, 0},
-{ 3, s_2_85, 84, 1, 0},
-{ 3, s_2_86, -1, 1, 0},
-{ 5, s_2_87, -1, 1, 0},
-{ 3, s_2_88, -1, 4, 0},
-{ 6, s_2_89, 88, 3, 0},
-{ 3, s_2_90, -1, 1, 0},
-{ 4, s_2_91, -1, 1, 0},
-{ 4, s_2_92, -1, 2, 0},
-{ 6, s_2_93, -1, 1, 0},
-{ 6, s_2_94, -1, 1, 0},
-{ 6, s_2_95, -1, 1, 0},
-{ 5, s_2_96, -1, 1, 0},
-{ 6, s_2_97, -1, 3, 0},
-{ 5, s_2_98, -1, 1, 0},
-{ 5, s_2_99, -1, 1, 0},
-{ 5, s_2_100, -1, 1, 0},
-{ 5, s_2_101, -1, 1, 0},
-{ 7, s_2_102, -1, 1, 0},
-{ 4, s_2_103, -1, 1, 0},
-{ 5, s_2_104, 103, 1, 0},
-{ 5, s_2_105, 103, 1, 0},
-{ 4, s_2_106, -1, 1, 0},
-{ 7, s_2_107, 106, 1, 0},
-{ 9, s_2_108, 107, 5, 0},
-{ 6, s_2_109, -1, 1, 0},
-{ 5, s_2_110, -1, 1, 0},
-{ 8, s_2_111, 110, 1, 0},
-{ 4, s_2_112, -1, 1, 0},
-{ 4, s_2_113, -1, 1, 0},
-{ 4, s_2_114, -1, 1, 0},
-{ 5, s_2_115, 114, 1, 0},
-{ 6, s_2_116, 115, 1, 0},
-{ 5, s_2_117, -1, 1, 0},
-{ 4, s_2_118, -1, 1, 0},
-{ 4, s_2_119, -1, 1, 0},
-{ 5, s_2_120, -1, 1, 0},
-{ 5, s_2_121, -1, 1, 0},
-{ 4, s_2_122, -1, 1, 0},
-{ 4, s_2_123, -1, 1, 0},
-{ 5, s_2_124, -1, 1, 0},
-{ 8, s_2_125, 124, 1, 0},
-{ 8, s_2_126, 124, 1, 0},
-{ 5, s_2_127, -1, 4, 0},
-{ 8, s_2_128, 127, 3, 0},
-{ 4, s_2_129, -1, 1, 0},
-{ 6, s_2_130, 129, 1, 0},
-{ 6, s_2_131, -1, 3, 0},
-{ 9, s_2_132, -1, 1, 0},
-{ 4, s_2_133, -1, 1, 0},
-{ 4, s_2_134, -1, 1, 0},
-{ 5, s_2_135, -1, 3, 0},
-{ 4, s_2_136, -1, 1, 0},
-{ 5, s_2_137, -1, 1, 0},
-{ 2, s_2_138, -1, 1, 0},
-{ 3, s_2_139, 138, 1, 0},
-{ 4, s_2_140, 138, 1, 0},
-{ 3, s_2_141, -1, 1, 0},
-{ 6, s_2_142, 141, 1, 0},
-{ 8, s_2_143, 142, 5, 0},
-{ 4, s_2_144, -1, 1, 0},
-{ 5, s_2_145, 144, 1, 0},
-{ 6, s_2_146, 145, 2, 0},
-{ 4, s_2_147, -1, 1, 0},
-{ 4, s_2_148, -1, 1, 0},
-{ 5, s_2_149, -1, 1, 0},
-{ 5, s_2_150, -1, 1, 0},
-{ 3, s_2_151, -1, 1, 0},
-{ 3, s_2_152, -1, 1, 0},
-{ 4, s_2_153, 152, 1, 0},
-{ 5, s_2_154, 153, 1, 0},
-{ 5, s_2_155, 153, 1, 0},
-{ 3, s_2_156, -1, 1, 0},
-{ 5, s_2_157, 156, 1, 0},
-{ 8, s_2_158, 157, 1, 0},
-{ 7, s_2_159, 157, 1, 0},
-{ 9, s_2_160, 159, 1, 0},
-{ 5, s_2_161, 156, 1, 0},
-{ 3, s_2_162, -1, 1, 0},
-{ 4, s_2_163, -1, 1, 0},
-{ 4, s_2_164, -1, 1, 0},
-{ 5, s_2_165, 164, 1, 0},
-{ 6, s_2_166, 165, 1, 0},
-{ 3, s_2_167, -1, 1, 0},
-{ 3, s_2_168, -1, 1, 0},
-{ 3, s_2_169, -1, 1, 0},
-{ 5, s_2_170, 169, 1, 0},
-{ 5, s_2_171, 169, 1, 0},
-{ 2, s_2_172, -1, 1, 0},
-{ 2, s_2_173, -1, 1, 0},
-{ 2, s_2_174, -1, 1, 0},
-{ 3, s_2_175, 174, 1, 0},
-{ 2, s_2_176, -1, 1, 0},
-{ 4, s_2_177, -1, 1, 0},
-{ 7, s_2_178, 177, 1, 0},
-{ 6, s_2_179, 177, 1, 0},
-{ 8, s_2_180, 179, 1, 0},
-{ 4, s_2_181, -1, 1, 0},
-{ 2, s_2_182, -1, 1, 0},
-{ 3, s_2_183, -1, 1, 0},
-{ 3, s_2_184, -1, 1, 0},
-{ 4, s_2_185, 184, 1, 0},
-{ 4, s_2_186, 184, 1, 0},
-{ 5, s_2_187, 186, 1, 0},
-{ 7, s_2_188, 187, 1, 0},
-{ 2, s_2_189, -1, 1, 0},
-{ 5, s_2_190, -1, 1, 0},
-{ 5, s_2_191, -1, 1, 0},
-{ 5, s_2_192, -1, 1, 0},
-{ 4, s_2_193, -1, 1, 0},
-{ 5, s_2_194, -1, 1, 0},
-{ 4, s_2_195, -1, 1, 0},
-{ 1, s_2_196, -1, 1, 0},
-{ 2, s_2_197, 196, 1, 0},
-{ 3, s_2_198, 197, 1, 0},
-{ 4, s_2_199, 198, 1, 0}
+static const struct among a_2[200] = {
+{ 3, s_2_0, 0, 4, 0},
+{ 6, s_2_1, -1, 3, 0},
+{ 4, s_2_2, 0, 1, 0},
+{ 3, s_2_3, 0, 2, 0},
+{ 5, s_2_4, 0, 1, 0},
+{ 5, s_2_5, 0, 1, 0},
+{ 5, s_2_6, 0, 1, 0},
+{ 4, s_2_7, 0, 1, 0},
+{ 5, s_2_8, 0, 3, 0},
+{ 4, s_2_9, 0, 1, 0},
+{ 5, s_2_10, -1, 1, 0},
+{ 4, s_2_11, 0, 1, 0},
+{ 4, s_2_12, 0, 1, 0},
+{ 6, s_2_13, 0, 1, 0},
+{ 4, s_2_14, 0, 1, 0},
+{ 4, s_2_15, 0, 1, 0},
+{ 5, s_2_16, 0, 1, 0},
+{ 3, s_2_17, 0, 1, 0},
+{ 6, s_2_18, -1, 1, 0},
+{ 8, s_2_19, -1, 5, 0},
+{ 3, s_2_20, 0, 1, 0},
+{ 3, s_2_21, 0, 1, 0},
+{ 3, s_2_22, 0, 1, 0},
+{ 5, s_2_23, -1, 1, 0},
+{ 3, s_2_24, 0, 1, 0},
+{ 4, s_2_25, -1, 1, 0},
+{ 5, s_2_26, -1, 1, 0},
+{ 5, s_2_27, 0, 1, 0},
+{ 3, s_2_28, 0, 1, 0},
+{ 3, s_2_29, 0, 1, 0},
+{ 4, s_2_30, 0, 1, 0},
+{ 4, s_2_31, 0, 1, 0},
+{ 4, s_2_32, 0, 1, 0},
+{ 3, s_2_33, 0, 1, 0},
+{ 3, s_2_34, 0, 1, 0},
+{ 3, s_2_35, 0, 1, 0},
+{ 4, s_2_36, 0, 1, 0},
+{ 7, s_2_37, -1, 1, 0},
+{ 7, s_2_38, -2, 1, 0},
+{ 3, s_2_39, 0, 1, 0},
+{ 5, s_2_40, -1, 1, 0},
+{ 3, s_2_41, 0, 1, 0},
+{ 5, s_2_42, 0, 3, 0},
+{ 2, s_2_43, 0, 4, 0},
+{ 5, s_2_44, -1, 1, 0},
+{ 3, s_2_45, 0, 1, 0},
+{ 3, s_2_46, 0, 1, 0},
+{ 2, s_2_47, 0, 1, 0},
+{ 4, s_2_48, 0, 1, 0},
+{ 3, s_2_49, 0, 1, 0},
+{ 4, s_2_50, -1, 1, 0},
+{ 4, s_2_51, -2, 1, 0},
+{ 4, s_2_52, 0, 1, 0},
+{ 7, s_2_53, -1, 1, 0},
+{ 7, s_2_54, -2, 1, 0},
+{ 6, s_2_55, -3, 1, 0},
+{ 4, s_2_56, 0, 1, 0},
+{ 4, s_2_57, 0, 1, 0},
+{ 4, s_2_58, 0, 1, 0},
+{ 3, s_2_59, 0, 1, 0},
+{ 3, s_2_60, 0, 1, 0},
+{ 4, s_2_61, 0, 3, 0},
+{ 3, s_2_62, 0, 1, 0},
+{ 4, s_2_63, 0, 1, 0},
+{ 2, s_2_64, 0, 1, 0},
+{ 2, s_2_65, 0, 1, 0},
+{ 3, s_2_66, 0, 1, 0},
+{ 3, s_2_67, 0, 1, 0},
+{ 4, s_2_68, 0, 1, 0},
+{ 4, s_2_69, 0, 1, 0},
+{ 5, s_2_70, 0, 1, 0},
+{ 5, s_2_71, 0, 1, 0},
+{ 5, s_2_72, 0, 1, 0},
+{ 5, s_2_73, 0, 1, 0},
+{ 7, s_2_74, -1, 5, 0},
+{ 4, s_2_75, 0, 1, 0},
+{ 5, s_2_76, 0, 1, 0},
+{ 2, s_2_77, 0, 1, 0},
+{ 6, s_2_78, -1, 1, 0},
+{ 4, s_2_79, -2, 1, 0},
+{ 4, s_2_80, -3, 1, 0},
+{ 4, s_2_81, -4, 1, 0},
+{ 5, s_2_82, -5, 1, 0},
+{ 3, s_2_83, 0, 1, 0},
+{ 2, s_2_84, 0, 1, 0},
+{ 3, s_2_85, -1, 1, 0},
+{ 3, s_2_86, 0, 1, 0},
+{ 5, s_2_87, 0, 1, 0},
+{ 3, s_2_88, 0, 4, 0},
+{ 6, s_2_89, -1, 3, 0},
+{ 3, s_2_90, 0, 1, 0},
+{ 4, s_2_91, 0, 1, 0},
+{ 4, s_2_92, 0, 2, 0},
+{ 6, s_2_93, 0, 1, 0},
+{ 6, s_2_94, 0, 1, 0},
+{ 6, s_2_95, 0, 1, 0},
+{ 5, s_2_96, 0, 1, 0},
+{ 6, s_2_97, 0, 3, 0},
+{ 5, s_2_98, 0, 1, 0},
+{ 5, s_2_99, 0, 1, 0},
+{ 5, s_2_100, 0, 1, 0},
+{ 5, s_2_101, 0, 1, 0},
+{ 7, s_2_102, 0, 1, 0},
+{ 4, s_2_103, 0, 1, 0},
+{ 5, s_2_104, -1, 1, 0},
+{ 5, s_2_105, -2, 1, 0},
+{ 4, s_2_106, 0, 1, 0},
+{ 7, s_2_107, -1, 1, 0},
+{ 9, s_2_108, -1, 5, 0},
+{ 6, s_2_109, 0, 1, 0},
+{ 5, s_2_110, 0, 1, 0},
+{ 8, s_2_111, -1, 1, 0},
+{ 4, s_2_112, 0, 1, 0},
+{ 4, s_2_113, 0, 1, 0},
+{ 4, s_2_114, 0, 1, 0},
+{ 5, s_2_115, -1, 1, 0},
+{ 6, s_2_116, -1, 1, 0},
+{ 5, s_2_117, 0, 1, 0},
+{ 4, s_2_118, 0, 1, 0},
+{ 4, s_2_119, 0, 1, 0},
+{ 5, s_2_120, 0, 1, 0},
+{ 5, s_2_121, 0, 1, 0},
+{ 4, s_2_122, 0, 1, 0},
+{ 4, s_2_123, 0, 1, 0},
+{ 5, s_2_124, 0, 1, 0},
+{ 8, s_2_125, -1, 1, 0},
+{ 8, s_2_126, -2, 1, 0},
+{ 5, s_2_127, 0, 4, 0},
+{ 8, s_2_128, -1, 3, 0},
+{ 4, s_2_129, 0, 1, 0},
+{ 6, s_2_130, -1, 1, 0},
+{ 6, s_2_131, 0, 3, 0},
+{ 9, s_2_132, 0, 1, 0},
+{ 4, s_2_133, 0, 1, 0},
+{ 4, s_2_134, 0, 1, 0},
+{ 5, s_2_135, 0, 3, 0},
+{ 4, s_2_136, 0, 1, 0},
+{ 5, s_2_137, 0, 1, 0},
+{ 2, s_2_138, 0, 1, 0},
+{ 3, s_2_139, -1, 1, 0},
+{ 4, s_2_140, -2, 1, 0},
+{ 3, s_2_141, 0, 1, 0},
+{ 6, s_2_142, -1, 1, 0},
+{ 8, s_2_143, -1, 5, 0},
+{ 4, s_2_144, 0, 1, 0},
+{ 5, s_2_145, -1, 1, 0},
+{ 6, s_2_146, -1, 2, 0},
+{ 4, s_2_147, 0, 1, 0},
+{ 4, s_2_148, 0, 1, 0},
+{ 5, s_2_149, 0, 1, 0},
+{ 5, s_2_150, 0, 1, 0},
+{ 3, s_2_151, 0, 1, 0},
+{ 3, s_2_152, 0, 1, 0},
+{ 4, s_2_153, -1, 1, 0},
+{ 5, s_2_154, -1, 1, 0},
+{ 5, s_2_155, -2, 1, 0},
+{ 3, s_2_156, 0, 1, 0},
+{ 5, s_2_157, -1, 1, 0},
+{ 8, s_2_158, -1, 1, 0},
+{ 7, s_2_159, -2, 1, 0},
+{ 9, s_2_160, -1, 1, 0},
+{ 5, s_2_161, -5, 1, 0},
+{ 3, s_2_162, 0, 1, 0},
+{ 4, s_2_163, 0, 1, 0},
+{ 4, s_2_164, 0, 1, 0},
+{ 5, s_2_165, -1, 1, 0},
+{ 6, s_2_166, -1, 1, 0},
+{ 3, s_2_167, 0, 1, 0},
+{ 3, s_2_168, 0, 1, 0},
+{ 3, s_2_169, 0, 1, 0},
+{ 5, s_2_170, -1, 1, 0},
+{ 5, s_2_171, -2, 1, 0},
+{ 2, s_2_172, 0, 1, 0},
+{ 2, s_2_173, 0, 1, 0},
+{ 2, s_2_174, 0, 1, 0},
+{ 3, s_2_175, -1, 1, 0},
+{ 2, s_2_176, 0, 1, 0},
+{ 4, s_2_177, 0, 1, 0},
+{ 7, s_2_178, -1, 1, 0},
+{ 6, s_2_179, -2, 1, 0},
+{ 8, s_2_180, -1, 1, 0},
+{ 4, s_2_181, 0, 1, 0},
+{ 2, s_2_182, 0, 1, 0},
+{ 3, s_2_183, 0, 1, 0},
+{ 3, s_2_184, 0, 1, 0},
+{ 4, s_2_185, -1, 1, 0},
+{ 4, s_2_186, -2, 1, 0},
+{ 5, s_2_187, -1, 1, 0},
+{ 7, s_2_188, -1, 1, 0},
+{ 2, s_2_189, 0, 1, 0},
+{ 5, s_2_190, 0, 1, 0},
+{ 5, s_2_191, 0, 1, 0},
+{ 5, s_2_192, 0, 1, 0},
+{ 4, s_2_193, 0, 1, 0},
+{ 5, s_2_194, 0, 1, 0},
+{ 4, s_2_195, 0, 1, 0},
+{ 1, s_2_196, 0, 1, 0},
+{ 2, s_2_197, -1, 1, 0},
+{ 3, s_2_198, -1, 1, 0},
+{ 4, s_2_199, -1, 1, 0}
};
static const symbol s_3_0[3] = { 'a', 'b', 'a' };
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] =
-{
-{ 3, s_3_0, -1, 1, 0},
-{ 4, s_3_1, -1, 1, 0},
-{ 4, s_3_2, -1, 1, 0},
-{ 4, s_3_3, -1, 1, 0},
-{ 3, s_3_4, -1, 1, 0},
-{ 3, s_3_5, -1, 1, 0},
-{ 3, s_3_6, -1, 1, 0},
-{ 3, s_3_7, -1, 1, 0},
-{ 2, s_3_8, -1, 1, 0},
-{ 4, s_3_9, 8, 1, 0},
-{ 4, s_3_10, 8, 1, 0},
-{ 3, s_3_11, -1, 1, 0},
-{ 4, s_3_12, -1, 1, 0},
-{ 3, s_3_13, -1, 1, 0},
-{ 5, s_3_14, -1, 1, 0},
-{ 3, s_3_15, -1, 1, 0},
-{ 3, s_3_16, -1, 1, 0},
-{ 3, s_3_17, -1, 1, 0},
-{ 4, s_3_18, -1, 1, 0},
-{ 2, s_3_19, -1, 1, 0},
-{ 4, s_3_20, 19, 1, 0},
-{ 4, s_3_21, 19, 1, 0},
-{ 4, s_3_22, 19, 1, 0},
-{ 2, s_3_23, -1, 1, 0},
-{ 3, s_3_24, -1, 1, 0},
-{ 3, s_3_25, -1, 1, 0},
-{ 2, s_3_26, -1, 1, 0},
-{ 2, s_3_27, -1, 1, 0},
-{ 2, s_3_28, -1, 1, 0},
-{ 2, s_3_29, -1, 1, 0},
-{ 2, s_3_30, -1, 1, 0},
-{ 3, s_3_31, 30, 1, 0},
-{ 3, s_3_32, -1, 1, 0},
-{ 4, s_3_33, -1, 1, 0},
-{ 4, s_3_34, -1, 1, 0},
-{ 4, s_3_35, -1, 1, 0},
-{ 2, s_3_36, -1, 1, 0},
-{ 3, s_3_37, -1, 1, 0},
-{ 5, s_3_38, -1, 1, 0},
-{ 4, s_3_39, -1, 1, 0},
-{ 4, s_3_40, -1, 1, 0},
-{ 2, s_3_41, -1, 1, 0},
-{ 2, s_3_42, -1, 1, 0},
-{ 4, s_3_43, 42, 1, 0},
-{ 4, s_3_44, 42, 1, 0},
-{ 4, s_3_45, 42, 1, 0},
-{ 4, s_3_46, 42, 1, 0},
-{ 5, s_3_47, 42, 1, 0},
-{ 5, s_3_48, 42, 1, 0},
-{ 5, s_3_49, 42, 1, 0},
-{ 5, s_3_50, 42, 1, 0},
-{ 4, s_3_51, 42, 1, 0},
-{ 4, s_3_52, 42, 1, 0},
-{ 4, s_3_53, 42, 1, 0},
-{ 5, s_3_54, 42, 1, 0},
-{ 3, s_3_55, 42, 1, 0},
-{ 5, s_3_56, 55, 1, 0},
-{ 5, s_3_57, 55, 1, 0},
-{ 5, s_3_58, -1, 1, 0},
-{ 5, s_3_59, -1, 1, 0},
-{ 5, s_3_60, -1, 1, 0},
-{ 5, s_3_61, -1, 1, 0},
-{ 5, s_3_62, -1, 1, 0},
-{ 5, s_3_63, -1, 1, 0},
-{ 5, s_3_64, -1, 1, 0},
-{ 2, s_3_65, -1, 1, 0},
-{ 2, s_3_66, -1, 1, 0},
-{ 4, s_3_67, 66, 1, 0},
-{ 5, s_3_68, 66, 1, 0},
-{ 4, s_3_69, 66, 1, 0},
-{ 5, s_3_70, 66, 1, 0},
-{ 4, s_3_71, 66, 1, 0},
-{ 3, s_3_72, 66, 1, 0},
-{ 5, s_3_73, 72, 1, 0},
-{ 5, s_3_74, 72, 1, 0},
-{ 5, s_3_75, 72, 1, 0},
-{ 2, s_3_76, -1, 1, 0},
-{ 3, s_3_77, 76, 1, 0},
-{ 5, s_3_78, 77, 1, 0},
-{ 5, s_3_79, 77, 1, 0},
-{ 4, s_3_80, 76, 1, 0},
-{ 4, s_3_81, 76, 1, 0},
-{ 4, s_3_82, 76, 1, 0},
-{ 4, s_3_83, 76, 1, 0},
-{ 4, s_3_84, 76, 1, 0},
-{ 4, s_3_85, 76, 1, 0},
-{ 5, s_3_86, 76, 1, 0},
-{ 5, s_3_87, 76, 1, 0},
-{ 5, s_3_88, 76, 1, 0},
-{ 5, s_3_89, 76, 1, 0},
-{ 5, s_3_90, 76, 1, 0},
-{ 5, s_3_91, 76, 1, 0},
-{ 6, s_3_92, 76, 1, 0},
-{ 6, s_3_93, 76, 1, 0},
-{ 6, s_3_94, 76, 1, 0},
-{ 4, s_3_95, 76, 1, 0},
-{ 4, s_3_96, 76, 1, 0},
-{ 5, s_3_97, 96, 1, 0},
-{ 4, s_3_98, 76, 1, 0},
-{ 3, s_3_99, 76, 1, 0},
-{ 2, s_3_100, -1, 1, 0},
-{ 4, s_3_101, 100, 1, 0},
-{ 3, s_3_102, 100, 1, 0},
-{ 4, s_3_103, 102, 1, 0},
-{ 5, s_3_104, 102, 1, 0},
-{ 5, s_3_105, 102, 1, 0},
-{ 5, s_3_106, 102, 1, 0},
-{ 5, s_3_107, 102, 1, 0},
-{ 6, s_3_108, 100, 1, 0},
-{ 5, s_3_109, 100, 1, 0},
-{ 4, s_3_110, -1, 1, 0},
-{ 5, s_3_111, -1, 1, 0},
-{ 4, s_3_112, -1, 1, 0},
-{ 4, s_3_113, -1, 1, 0},
-{ 4, s_3_114, -1, 1, 0},
-{ 3, s_3_115, -1, 1, 0},
-{ 3, s_3_116, -1, 1, 0},
-{ 3, s_3_117, -1, 1, 0},
-{ 4, s_3_118, -1, 2, 0},
-{ 5, s_3_119, -1, 1, 0},
-{ 2, s_3_120, -1, 1, 0},
-{ 3, s_3_121, -1, 1, 0},
-{ 4, s_3_122, 121, 1, 0},
-{ 3, s_3_123, -1, 1, 0},
-{ 4, s_3_124, -1, 1, 0},
-{ 2, s_3_125, -1, 1, 0},
-{ 4, s_3_126, 125, 1, 0},
-{ 2, s_3_127, -1, 1, 0},
-{ 5, s_3_128, 127, 1, 0},
-{ 2, s_3_129, -1, 1, 0},
-{ 4, s_3_130, -1, 1, 0},
-{ 2, s_3_131, -1, 1, 0},
-{ 4, s_3_132, 131, 1, 0},
-{ 4, s_3_133, 131, 1, 0},
-{ 4, s_3_134, 131, 1, 0},
-{ 4, s_3_135, 131, 1, 0},
-{ 5, s_3_136, 131, 1, 0},
-{ 3, s_3_137, 131, 1, 0},
-{ 5, s_3_138, 137, 1, 0},
-{ 5, s_3_139, 137, 1, 0},
-{ 5, s_3_140, 137, 1, 0},
-{ 3, s_3_141, -1, 1, 0},
-{ 2, s_3_142, -1, 1, 0},
-{ 4, s_3_143, 142, 1, 0},
-{ 4, s_3_144, 142, 1, 0},
-{ 4, s_3_145, 142, 1, 0},
-{ 4, s_3_146, 142, 1, 0},
-{ 5, s_3_147, 142, 1, 0},
-{ 3, s_3_148, 142, 1, 0},
-{ 5, s_3_149, 148, 1, 0},
-{ 5, s_3_150, 148, 1, 0},
-{ 4, s_3_151, 142, 1, 0},
-{ 4, s_3_152, 142, 1, 0},
-{ 6, s_3_153, 142, 1, 0},
-{ 4, s_3_154, 142, 1, 0},
-{ 4, s_3_155, 142, 1, 0},
-{ 5, s_3_156, 142, 1, 0},
-{ 5, s_3_157, 142, 1, 0},
-{ 5, s_3_158, 142, 1, 0},
-{ 5, s_3_159, 142, 1, 0},
-{ 5, s_3_160, 142, 1, 0},
-{ 4, s_3_161, 142, 1, 0},
-{ 6, s_3_162, 161, 1, 0},
-{ 6, s_3_163, 161, 1, 0},
-{ 4, s_3_164, 142, 1, 0},
-{ 4, s_3_165, 142, 1, 0},
-{ 5, s_3_166, 165, 1, 0},
-{ 4, s_3_167, 142, 1, 0},
-{ 3, s_3_168, 142, 1, 0},
-{ 5, s_3_169, -1, 1, 0},
-{ 5, s_3_170, -1, 1, 0},
-{ 6, s_3_171, -1, 1, 0},
-{ 4, s_3_172, -1, 1, 0},
-{ 6, s_3_173, 172, 1, 0},
-{ 6, s_3_174, 172, 1, 0},
-{ 6, s_3_175, 172, 1, 0},
-{ 5, s_3_176, -1, 1, 0},
-{ 6, s_3_177, -1, 1, 0},
-{ 6, s_3_178, -1, 1, 0},
-{ 6, s_3_179, -1, 1, 0},
-{ 4, s_3_180, -1, 1, 0},
-{ 3, s_3_181, -1, 1, 0},
-{ 4, s_3_182, 181, 1, 0},
-{ 5, s_3_183, 181, 1, 0},
-{ 5, s_3_184, 181, 1, 0},
-{ 5, s_3_185, 181, 1, 0},
-{ 5, s_3_186, 181, 1, 0},
-{ 6, s_3_187, -1, 1, 0},
-{ 5, s_3_188, -1, 1, 0},
-{ 5, s_3_189, -1, 1, 0},
-{ 3, s_3_190, -1, 1, 0},
-{ 5, s_3_191, -1, 1, 0},
-{ 5, s_3_192, -1, 1, 0},
-{ 5, s_3_193, -1, 1, 0},
-{ 3, s_3_194, -1, 1, 0},
-{ 4, s_3_195, -1, 1, 0},
-{ 4, s_3_196, -1, 1, 0},
-{ 4, s_3_197, -1, 1, 0},
-{ 6, s_3_198, 197, 1, 0},
-{ 6, s_3_199, 197, 1, 0},
-{ 7, s_3_200, 197, 1, 0},
-{ 5, s_3_201, 197, 1, 0},
-{ 7, s_3_202, 201, 1, 0},
-{ 7, s_3_203, 201, 1, 0},
-{ 7, s_3_204, 201, 1, 0},
-{ 6, s_3_205, -1, 1, 0},
-{ 6, s_3_206, -1, 1, 0},
-{ 6, s_3_207, -1, 1, 0},
-{ 6, s_3_208, -1, 1, 0},
-{ 7, s_3_209, -1, 1, 0},
-{ 4, s_3_210, -1, 1, 0},
-{ 5, s_3_211, -1, 1, 0},
-{ 3, s_3_212, -1, 1, 0},
-{ 5, s_3_213, 212, 1, 0},
-{ 3, s_3_214, -1, 1, 0},
-{ 3, s_3_215, -1, 1, 0},
-{ 3, s_3_216, -1, 1, 0},
-{ 4, s_3_217, -1, 1, 0},
-{ 2, s_3_218, -1, 1, 0},
-{ 4, s_3_219, 218, 1, 0},
-{ 4, s_3_220, 218, 1, 0},
-{ 4, s_3_221, -1, 1, 0},
-{ 4, s_3_222, -1, 1, 0},
-{ 4, s_3_223, -1, 1, 0},
-{ 2, s_3_224, -1, 1, 0},
-{ 4, s_3_225, 224, 1, 0},
-{ 2, s_3_226, -1, 1, 0},
-{ 3, s_3_227, -1, 1, 0},
-{ 2, s_3_228, -1, 1, 0},
-{ 2, s_3_229, -1, 1, 0},
-{ 3, s_3_230, -1, 1, 0},
-{ 3, s_3_231, -1, 1, 0},
-{ 3, s_3_232, -1, 1, 0},
-{ 2, s_3_233, -1, 1, 0},
-{ 2, s_3_234, -1, 1, 0},
-{ 2, s_3_235, -1, 1, 0},
-{ 4, s_3_236, 235, 1, 0},
-{ 3, s_3_237, -1, 1, 0},
-{ 4, s_3_238, -1, 1, 0},
-{ 4, s_3_239, -1, 1, 0},
-{ 4, s_3_240, -1, 1, 0},
-{ 4, s_3_241, -1, 1, 0},
-{ 4, s_3_242, -1, 1, 0},
-{ 5, s_3_243, -1, 1, 0},
-{ 5, s_3_244, -1, 1, 0},
-{ 7, s_3_245, 244, 1, 0},
-{ 5, s_3_246, -1, 1, 0},
-{ 5, s_3_247, -1, 1, 0},
-{ 5, s_3_248, -1, 1, 0},
-{ 5, s_3_249, -1, 1, 0},
-{ 4, s_3_250, -1, 1, 0},
-{ 4, s_3_251, -1, 1, 0},
-{ 5, s_3_252, -1, 1, 0},
-{ 3, s_3_253, -1, 1, 0},
-{ 5, s_3_254, 253, 1, 0},
-{ 3, s_3_255, -1, 1, 0},
-{ 5, s_3_256, 255, 1, 0},
-{ 5, s_3_257, 255, 1, 0},
-{ 5, s_3_258, -1, 1, 0},
-{ 5, s_3_259, -1, 1, 0},
-{ 5, s_3_260, -1, 1, 0},
-{ 5, s_3_261, -1, 1, 0},
-{ 5, s_3_262, -1, 1, 0},
-{ 5, s_3_263, -1, 1, 0},
-{ 2, s_3_264, -1, 1, 0},
-{ 2, s_3_265, -1, 1, 0},
-{ 3, s_3_266, 265, 1, 0},
-{ 2, s_3_267, -1, 1, 0},
-{ 3, s_3_268, -1, 1, 0},
-{ 2, s_3_269, -1, 1, 0},
-{ 3, s_3_270, -1, 1, 0},
-{ 3, s_3_271, -1, 1, 0},
-{ 4, s_3_272, -1, 1, 0},
-{ 3, s_3_273, -1, 1, 0},
-{ 3, s_3_274, -1, 1, 0},
-{ 3, s_3_275, -1, 1, 0},
-{ 3, s_3_276, -1, 1, 0},
-{ 3, s_3_277, -1, 1, 0},
-{ 3, s_3_278, -1, 1, 0},
-{ 3, s_3_279, -1, 1, 0},
-{ 1, s_3_280, -1, 1, 0},
-{ 2, s_3_281, -1, 1, 0},
-{ 2, s_3_282, -1, 1, 0}
+static const struct among a_3[283] = {
+{ 3, s_3_0, 0, 1, 0},
+{ 4, s_3_1, 0, 1, 0},
+{ 4, s_3_2, 0, 1, 0},
+{ 4, s_3_3, 0, 1, 0},
+{ 3, s_3_4, 0, 1, 0},
+{ 3, s_3_5, 0, 1, 0},
+{ 3, s_3_6, 0, 1, 0},
+{ 3, s_3_7, 0, 1, 0},
+{ 2, s_3_8, 0, 1, 0},
+{ 4, s_3_9, -1, 1, 0},
+{ 4, s_3_10, -2, 1, 0},
+{ 3, s_3_11, 0, 1, 0},
+{ 4, s_3_12, 0, 1, 0},
+{ 3, s_3_13, 0, 1, 0},
+{ 5, s_3_14, 0, 1, 0},
+{ 3, s_3_15, 0, 1, 0},
+{ 3, s_3_16, 0, 1, 0},
+{ 3, s_3_17, 0, 1, 0},
+{ 4, s_3_18, 0, 1, 0},
+{ 2, s_3_19, 0, 1, 0},
+{ 4, s_3_20, -1, 1, 0},
+{ 4, s_3_21, -2, 1, 0},
+{ 4, s_3_22, -3, 1, 0},
+{ 2, s_3_23, 0, 1, 0},
+{ 3, s_3_24, 0, 1, 0},
+{ 3, s_3_25, 0, 1, 0},
+{ 2, s_3_26, 0, 1, 0},
+{ 2, s_3_27, 0, 1, 0},
+{ 2, s_3_28, 0, 1, 0},
+{ 2, s_3_29, 0, 1, 0},
+{ 2, s_3_30, 0, 1, 0},
+{ 3, s_3_31, -1, 1, 0},
+{ 3, s_3_32, 0, 1, 0},
+{ 4, s_3_33, 0, 1, 0},
+{ 4, s_3_34, 0, 1, 0},
+{ 4, s_3_35, 0, 1, 0},
+{ 2, s_3_36, 0, 1, 0},
+{ 3, s_3_37, 0, 1, 0},
+{ 5, s_3_38, 0, 1, 0},
+{ 4, s_3_39, 0, 1, 0},
+{ 4, s_3_40, 0, 1, 0},
+{ 2, s_3_41, 0, 1, 0},
+{ 2, s_3_42, 0, 1, 0},
+{ 4, s_3_43, -1, 1, 0},
+{ 4, s_3_44, -2, 1, 0},
+{ 4, s_3_45, -3, 1, 0},
+{ 4, s_3_46, -4, 1, 0},
+{ 5, s_3_47, -5, 1, 0},
+{ 5, s_3_48, -6, 1, 0},
+{ 5, s_3_49, -7, 1, 0},
+{ 5, s_3_50, -8, 1, 0},
+{ 4, s_3_51, -9, 1, 0},
+{ 4, s_3_52, -10, 1, 0},
+{ 4, s_3_53, -11, 1, 0},
+{ 5, s_3_54, -12, 1, 0},
+{ 3, s_3_55, -13, 1, 0},
+{ 5, s_3_56, -1, 1, 0},
+{ 5, s_3_57, -2, 1, 0},
+{ 5, s_3_58, 0, 1, 0},
+{ 5, s_3_59, 0, 1, 0},
+{ 5, s_3_60, 0, 1, 0},
+{ 5, s_3_61, 0, 1, 0},
+{ 5, s_3_62, 0, 1, 0},
+{ 5, s_3_63, 0, 1, 0},
+{ 5, s_3_64, 0, 1, 0},
+{ 2, s_3_65, 0, 1, 0},
+{ 2, s_3_66, 0, 1, 0},
+{ 4, s_3_67, -1, 1, 0},
+{ 5, s_3_68, -2, 1, 0},
+{ 4, s_3_69, -3, 1, 0},
+{ 5, s_3_70, -4, 1, 0},
+{ 4, s_3_71, -5, 1, 0},
+{ 3, s_3_72, -6, 1, 0},
+{ 5, s_3_73, -1, 1, 0},
+{ 5, s_3_74, -2, 1, 0},
+{ 5, s_3_75, -3, 1, 0},
+{ 2, s_3_76, 0, 1, 0},
+{ 3, s_3_77, -1, 1, 0},
+{ 5, s_3_78, -1, 1, 0},
+{ 5, s_3_79, -2, 1, 0},
+{ 4, s_3_80, -4, 1, 0},
+{ 4, s_3_81, -5, 1, 0},
+{ 4, s_3_82, -6, 1, 0},
+{ 4, s_3_83, -7, 1, 0},
+{ 4, s_3_84, -8, 1, 0},
+{ 4, s_3_85, -9, 1, 0},
+{ 5, s_3_86, -10, 1, 0},
+{ 5, s_3_87, -11, 1, 0},
+{ 5, s_3_88, -12, 1, 0},
+{ 5, s_3_89, -13, 1, 0},
+{ 5, s_3_90, -14, 1, 0},
+{ 5, s_3_91, -15, 1, 0},
+{ 6, s_3_92, -16, 1, 0},
+{ 6, s_3_93, -17, 1, 0},
+{ 6, s_3_94, -18, 1, 0},
+{ 4, s_3_95, -19, 1, 0},
+{ 4, s_3_96, -20, 1, 0},
+{ 5, s_3_97, -1, 1, 0},
+{ 4, s_3_98, -22, 1, 0},
+{ 3, s_3_99, -23, 1, 0},
+{ 2, s_3_100, 0, 1, 0},
+{ 4, s_3_101, -1, 1, 0},
+{ 3, s_3_102, -2, 1, 0},
+{ 4, s_3_103, -1, 1, 0},
+{ 5, s_3_104, -2, 1, 0},
+{ 5, s_3_105, -3, 1, 0},
+{ 5, s_3_106, -4, 1, 0},
+{ 5, s_3_107, -5, 1, 0},
+{ 6, s_3_108, -8, 1, 0},
+{ 5, s_3_109, -9, 1, 0},
+{ 4, s_3_110, 0, 1, 0},
+{ 5, s_3_111, 0, 1, 0},
+{ 4, s_3_112, 0, 1, 0},
+{ 4, s_3_113, 0, 1, 0},
+{ 4, s_3_114, 0, 1, 0},
+{ 3, s_3_115, 0, 1, 0},
+{ 3, s_3_116, 0, 1, 0},
+{ 3, s_3_117, 0, 1, 0},
+{ 4, s_3_118, 0, 2, 0},
+{ 5, s_3_119, 0, 1, 0},
+{ 2, s_3_120, 0, 1, 0},
+{ 3, s_3_121, 0, 1, 0},
+{ 4, s_3_122, -1, 1, 0},
+{ 3, s_3_123, 0, 1, 0},
+{ 4, s_3_124, 0, 1, 0},
+{ 2, s_3_125, 0, 1, 0},
+{ 4, s_3_126, -1, 1, 0},
+{ 2, s_3_127, 0, 1, 0},
+{ 5, s_3_128, -1, 1, 0},
+{ 2, s_3_129, 0, 1, 0},
+{ 4, s_3_130, 0, 1, 0},
+{ 2, s_3_131, 0, 1, 0},
+{ 4, s_3_132, -1, 1, 0},
+{ 4, s_3_133, -2, 1, 0},
+{ 4, s_3_134, -3, 1, 0},
+{ 4, s_3_135, -4, 1, 0},
+{ 5, s_3_136, -5, 1, 0},
+{ 3, s_3_137, -6, 1, 0},
+{ 5, s_3_138, -1, 1, 0},
+{ 5, s_3_139, -2, 1, 0},
+{ 5, s_3_140, -3, 1, 0},
+{ 3, s_3_141, 0, 1, 0},
+{ 2, s_3_142, 0, 1, 0},
+{ 4, s_3_143, -1, 1, 0},
+{ 4, s_3_144, -2, 1, 0},
+{ 4, s_3_145, -3, 1, 0},
+{ 4, s_3_146, -4, 1, 0},
+{ 5, s_3_147, -5, 1, 0},
+{ 3, s_3_148, -6, 1, 0},
+{ 5, s_3_149, -1, 1, 0},
+{ 5, s_3_150, -2, 1, 0},
+{ 4, s_3_151, -9, 1, 0},
+{ 4, s_3_152, -10, 1, 0},
+{ 6, s_3_153, -11, 1, 0},
+{ 4, s_3_154, -12, 1, 0},
+{ 4, s_3_155, -13, 1, 0},
+{ 5, s_3_156, -14, 1, 0},
+{ 5, s_3_157, -15, 1, 0},
+{ 5, s_3_158, -16, 1, 0},
+{ 5, s_3_159, -17, 1, 0},
+{ 5, s_3_160, -18, 1, 0},
+{ 4, s_3_161, -19, 1, 0},
+{ 6, s_3_162, -1, 1, 0},
+{ 6, s_3_163, -2, 1, 0},
+{ 4, s_3_164, -22, 1, 0},
+{ 4, s_3_165, -23, 1, 0},
+{ 5, s_3_166, -1, 1, 0},
+{ 4, s_3_167, -25, 1, 0},
+{ 3, s_3_168, -26, 1, 0},
+{ 5, s_3_169, 0, 1, 0},
+{ 5, s_3_170, 0, 1, 0},
+{ 6, s_3_171, 0, 1, 0},
+{ 4, s_3_172, 0, 1, 0},
+{ 6, s_3_173, -1, 1, 0},
+{ 6, s_3_174, -2, 1, 0},
+{ 6, s_3_175, -3, 1, 0},
+{ 5, s_3_176, 0, 1, 0},
+{ 6, s_3_177, 0, 1, 0},
+{ 6, s_3_178, 0, 1, 0},
+{ 6, s_3_179, 0, 1, 0},
+{ 4, s_3_180, 0, 1, 0},
+{ 3, s_3_181, 0, 1, 0},
+{ 4, s_3_182, -1, 1, 0},
+{ 5, s_3_183, -2, 1, 0},
+{ 5, s_3_184, -3, 1, 0},
+{ 5, s_3_185, -4, 1, 0},
+{ 5, s_3_186, -5, 1, 0},
+{ 6, s_3_187, 0, 1, 0},
+{ 5, s_3_188, 0, 1, 0},
+{ 5, s_3_189, 0, 1, 0},
+{ 3, s_3_190, 0, 1, 0},
+{ 5, s_3_191, 0, 1, 0},
+{ 5, s_3_192, 0, 1, 0},
+{ 5, s_3_193, 0, 1, 0},
+{ 3, s_3_194, 0, 1, 0},
+{ 4, s_3_195, 0, 1, 0},
+{ 4, s_3_196, 0, 1, 0},
+{ 4, s_3_197, 0, 1, 0},
+{ 6, s_3_198, -1, 1, 0},
+{ 6, s_3_199, -2, 1, 0},
+{ 7, s_3_200, -3, 1, 0},
+{ 5, s_3_201, -4, 1, 0},
+{ 7, s_3_202, -1, 1, 0},
+{ 7, s_3_203, -2, 1, 0},
+{ 7, s_3_204, -3, 1, 0},
+{ 6, s_3_205, 0, 1, 0},
+{ 6, s_3_206, 0, 1, 0},
+{ 6, s_3_207, 0, 1, 0},
+{ 6, s_3_208, 0, 1, 0},
+{ 7, s_3_209, 0, 1, 0},
+{ 4, s_3_210, 0, 1, 0},
+{ 5, s_3_211, 0, 1, 0},
+{ 3, s_3_212, 0, 1, 0},
+{ 5, s_3_213, -1, 1, 0},
+{ 3, s_3_214, 0, 1, 0},
+{ 3, s_3_215, 0, 1, 0},
+{ 3, s_3_216, 0, 1, 0},
+{ 4, s_3_217, 0, 1, 0},
+{ 2, s_3_218, 0, 1, 0},
+{ 4, s_3_219, -1, 1, 0},
+{ 4, s_3_220, -2, 1, 0},
+{ 4, s_3_221, 0, 1, 0},
+{ 4, s_3_222, 0, 1, 0},
+{ 4, s_3_223, 0, 1, 0},
+{ 2, s_3_224, 0, 1, 0},
+{ 4, s_3_225, -1, 1, 0},
+{ 2, s_3_226, 0, 1, 0},
+{ 3, s_3_227, 0, 1, 0},
+{ 2, s_3_228, 0, 1, 0},
+{ 2, s_3_229, 0, 1, 0},
+{ 3, s_3_230, 0, 1, 0},
+{ 3, s_3_231, 0, 1, 0},
+{ 3, s_3_232, 0, 1, 0},
+{ 2, s_3_233, 0, 1, 0},
+{ 2, s_3_234, 0, 1, 0},
+{ 2, s_3_235, 0, 1, 0},
+{ 4, s_3_236, -1, 1, 0},
+{ 3, s_3_237, 0, 1, 0},
+{ 4, s_3_238, 0, 1, 0},
+{ 4, s_3_239, 0, 1, 0},
+{ 4, s_3_240, 0, 1, 0},
+{ 4, s_3_241, 0, 1, 0},
+{ 4, s_3_242, 0, 1, 0},
+{ 5, s_3_243, 0, 1, 0},
+{ 5, s_3_244, 0, 1, 0},
+{ 7, s_3_245, -1, 1, 0},
+{ 5, s_3_246, 0, 1, 0},
+{ 5, s_3_247, 0, 1, 0},
+{ 5, s_3_248, 0, 1, 0},
+{ 5, s_3_249, 0, 1, 0},
+{ 4, s_3_250, 0, 1, 0},
+{ 4, s_3_251, 0, 1, 0},
+{ 5, s_3_252, 0, 1, 0},
+{ 3, s_3_253, 0, 1, 0},
+{ 5, s_3_254, -1, 1, 0},
+{ 3, s_3_255, 0, 1, 0},
+{ 5, s_3_256, -1, 1, 0},
+{ 5, s_3_257, -2, 1, 0},
+{ 5, s_3_258, 0, 1, 0},
+{ 5, s_3_259, 0, 1, 0},
+{ 5, s_3_260, 0, 1, 0},
+{ 5, s_3_261, 0, 1, 0},
+{ 5, s_3_262, 0, 1, 0},
+{ 5, s_3_263, 0, 1, 0},
+{ 2, s_3_264, 0, 1, 0},
+{ 2, s_3_265, 0, 1, 0},
+{ 3, s_3_266, -1, 1, 0},
+{ 2, s_3_267, 0, 1, 0},
+{ 3, s_3_268, 0, 1, 0},
+{ 2, s_3_269, 0, 1, 0},
+{ 3, s_3_270, 0, 1, 0},
+{ 3, s_3_271, 0, 1, 0},
+{ 4, s_3_272, 0, 1, 0},
+{ 3, s_3_273, 0, 1, 0},
+{ 3, s_3_274, 0, 1, 0},
+{ 3, s_3_275, 0, 1, 0},
+{ 3, s_3_276, 0, 1, 0},
+{ 3, s_3_277, 0, 1, 0},
+{ 3, s_3_278, 0, 1, 0},
+{ 3, s_3_279, 0, 1, 0},
+{ 1, s_3_280, 0, 1, 0},
+{ 2, s_3_281, 0, 1, 0},
+{ 2, s_3_282, 0, 1, 0}
};
static const symbol s_4_0[1] = { 'a' };
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] =
-{
-{ 1, s_4_0, -1, 1, 0},
-{ 1, s_4_1, -1, 1, 0},
-{ 1, s_4_2, -1, 1, 0},
-{ 2, s_4_3, -1, 1, 0},
-{ 1, s_4_4, -1, 1, 0},
-{ 2, s_4_5, -1, 1, 0},
-{ 1, s_4_6, -1, 1, 0},
-{ 2, s_4_7, 6, 1, 0},
-{ 2, s_4_8, 6, 1, 0},
-{ 2, s_4_9, 6, 1, 0},
-{ 2, s_4_10, -1, 1, 0},
-{ 2, s_4_11, -1, 1, 0},
-{ 2, s_4_12, -1, 1, 0},
-{ 3, s_4_13, -1, 2, 0},
-{ 3, s_4_14, -1, 1, 0},
-{ 1, s_4_15, -1, 1, 0},
-{ 1, s_4_16, -1, 1, 0},
-{ 1, s_4_17, -1, 1, 0},
-{ 1, s_4_18, -1, 1, 0},
-{ 1, s_4_19, -1, 1, 0},
-{ 1, s_4_20, -1, 1, 0},
-{ 1, s_4_21, -1, 1, 0}
+static const struct among a_4[22] = {
+{ 1, s_4_0, 0, 1, 0},
+{ 1, s_4_1, 0, 1, 0},
+{ 1, s_4_2, 0, 1, 0},
+{ 2, s_4_3, 0, 1, 0},
+{ 1, s_4_4, 0, 1, 0},
+{ 2, s_4_5, 0, 1, 0},
+{ 1, s_4_6, 0, 1, 0},
+{ 2, s_4_7, -1, 1, 0},
+{ 2, s_4_8, -2, 1, 0},
+{ 2, s_4_9, -3, 1, 0},
+{ 2, s_4_10, 0, 1, 0},
+{ 2, s_4_11, 0, 1, 0},
+{ 2, s_4_12, 0, 1, 0},
+{ 3, s_4_13, 0, 2, 0},
+{ 3, s_4_14, 0, 1, 0},
+{ 1, s_4_15, 0, 1, 0},
+{ 1, s_4_16, 0, 1, 0},
+{ 1, s_4_17, 0, 1, 0},
+{ 1, s_4_18, 0, 1, 0},
+{ 1, s_4_19, 0, 1, 0},
+{ 1, s_4_20, 0, 1, 0},
+{ 1, s_4_21, 0, 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) {
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
-
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 252, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 252, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 252, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 252, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[0] = z->c;
+ ((SN_local *)z)->i_p2 = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
return 1;
}
static int r_cleaning(struct SN_env * z) {
int among_var;
- while(1) {
- int c1 = z->c;
+ while (1) {
+ int v_1 = z->c;
z->bra = z->c;
- among_var = find_among(z, a_0, 13);
+ among_var = find_among(z, a_0, 13, 0);
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_0);
+ {
+ int ret = slice_from_s(z, 1, s_0);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_2);
+ {
+ int ret = slice_from_s(z, 1, s_2);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 1, s_3);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 1, s_4);
+ {
+ int ret = slice_from_s(z, 1, s_4);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 1, s_5);
+ {
+ int ret = slice_from_s(z, 1, s_5);
if (ret < 0) return ret;
}
break;
}
continue;
lab0:
- z->c = c1;
+ z->c = v_1;
break;
}
return 1;
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_attached_pronoun(struct SN_env * z) {
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1634850 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- if (!find_among_b(z, a_1, 39)) return 0;
+ if (!find_among_b(z, a_1, 39, 0)) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_standard_suffix(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_2, 200);
+ among_var = find_among_b(z, a_2, 200, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_6);
+ {
+ int ret = slice_from_s(z, 3, s_6);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 2, s_7);
+ {
+ int ret = slice_from_s(z, 2, s_7);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 1, s_8);
+ {
+ int ret = slice_from_s(z, 1, s_8);
if (ret < 0) return ret;
}
break;
static int r_verb_suffix(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_3, 283);
+ among_var = find_among_b(z, a_3, 283, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_residual_suffix(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_4, 22);
+ among_var = find_among_b(z, a_4, 22, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 2, s_9);
+ {
+ int ret = slice_from_s(z, 2, s_9);
if (ret < 0) return ret;
}
break;
}
extern int catalan_ISO_8859_1_stem(struct SN_env * z) {
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
- { int m1 = z->l - z->c; (void)m1;
- { int ret = r_attached_pronoun(z);
+ {
+ int v_1 = z->l - z->c;
+ {
+ int ret = r_attached_pronoun(z);
if (ret < 0) return ret;
}
- z->c = z->l - m1;
+ z->c = z->l - v_1;
}
- { int m2 = z->l - z->c; (void)m2;
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_standard_suffix(z);
- if (ret == 0) goto lab2;
+ {
+ int v_2 = z->l - z->c;
+ do {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_standard_suffix(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- goto lab1;
- lab2:
- z->c = z->l - m3;
- { int ret = r_verb_suffix(z);
+ break;
+ lab1:
+ z->c = z->l - v_3;
+ {
+ int ret = r_verb_suffix(z);
if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- }
- lab1:
+ } while (0);
lab0:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_residual_suffix(z);
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_residual_suffix(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
z->c = z->lb;
- { int c5 = z->c;
- { int ret = r_cleaning(z);
+ {
+ int v_5 = z->c;
+ {
+ int ret = r_cleaning(z);
if (ret < 0) return ret;
}
- z->c = c5;
+ z->c = v_5;
}
return 1;
}
-extern struct SN_env * catalan_ISO_8859_1_create_env(void) { return SN_create_env(0, 2); }
+extern struct SN_env * catalan_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ }
+ return z;
+}
-extern void catalan_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void catalan_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from danish.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_danish.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p1;
+ symbol * s_ch;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_undouble(struct SN_env * z);
static int r_other_suffix(struct SN_env * z);
static int r_consonant_pair(struct SN_env * z);
static int r_main_suffix(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * danish_ISO_8859_1_create_env(void);
-extern void danish_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 's', 't' };
+static const symbol s_1[] = { 'i', 'g' };
+static const symbol s_2[] = { 'l', 0xF8, 's' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[3] = { 'h', 'e', 'd' };
static const symbol s_0_1[5] = { 'e', 't', 'h', 'e', 'd' };
static const symbol s_0_2[4] = { 'e', 'r', 'e', 'd' };
static const symbol s_0_29[5] = { 'e', 'r', 'e', 't', 's' };
static const symbol s_0_30[2] = { 'e', 't' };
static const symbol s_0_31[4] = { 'e', 'r', 'e', 't' };
-
-static const struct among a_0[32] =
-{
-{ 3, s_0_0, -1, 1, 0},
-{ 5, s_0_1, 0, 1, 0},
-{ 4, s_0_2, -1, 1, 0},
-{ 1, s_0_3, -1, 1, 0},
-{ 5, s_0_4, 3, 1, 0},
-{ 4, s_0_5, 3, 1, 0},
-{ 6, s_0_6, 5, 1, 0},
-{ 3, s_0_7, 3, 1, 0},
-{ 4, s_0_8, 3, 1, 0},
-{ 3, s_0_9, 3, 1, 0},
-{ 2, s_0_10, -1, 1, 0},
-{ 5, s_0_11, 10, 1, 0},
-{ 4, s_0_12, 10, 1, 0},
-{ 2, s_0_13, -1, 1, 0},
-{ 5, s_0_14, 13, 1, 0},
-{ 4, s_0_15, 13, 1, 0},
-{ 1, s_0_16, -1, 2, 0},
-{ 4, s_0_17, 16, 1, 0},
-{ 2, s_0_18, 16, 1, 0},
-{ 5, s_0_19, 18, 1, 0},
-{ 7, s_0_20, 19, 1, 0},
-{ 4, s_0_21, 18, 1, 0},
-{ 5, s_0_22, 18, 1, 0},
-{ 4, s_0_23, 18, 1, 0},
-{ 3, s_0_24, 16, 1, 0},
-{ 6, s_0_25, 24, 1, 0},
-{ 5, s_0_26, 24, 1, 0},
-{ 3, s_0_27, 16, 1, 0},
-{ 3, s_0_28, 16, 1, 0},
-{ 5, s_0_29, 28, 1, 0},
-{ 2, s_0_30, -1, 1, 0},
-{ 4, s_0_31, 30, 1, 0}
+static const struct among a_0[32] = {
+{ 3, s_0_0, 0, 1, 0},
+{ 5, s_0_1, -1, 1, 0},
+{ 4, s_0_2, 0, 1, 0},
+{ 1, s_0_3, 0, 1, 0},
+{ 5, s_0_4, -1, 1, 0},
+{ 4, s_0_5, -2, 1, 0},
+{ 6, s_0_6, -1, 1, 0},
+{ 3, s_0_7, -4, 1, 0},
+{ 4, s_0_8, -5, 1, 0},
+{ 3, s_0_9, -6, 1, 0},
+{ 2, s_0_10, 0, 1, 0},
+{ 5, s_0_11, -1, 1, 0},
+{ 4, s_0_12, -2, 1, 0},
+{ 2, s_0_13, 0, 1, 0},
+{ 5, s_0_14, -1, 1, 0},
+{ 4, s_0_15, -2, 1, 0},
+{ 1, s_0_16, 0, 2, 0},
+{ 4, s_0_17, -1, 1, 0},
+{ 2, s_0_18, -2, 1, 0},
+{ 5, s_0_19, -1, 1, 0},
+{ 7, s_0_20, -1, 1, 0},
+{ 4, s_0_21, -3, 1, 0},
+{ 5, s_0_22, -4, 1, 0},
+{ 4, s_0_23, -5, 1, 0},
+{ 3, s_0_24, -8, 1, 0},
+{ 6, s_0_25, -1, 1, 0},
+{ 5, s_0_26, -2, 1, 0},
+{ 3, s_0_27, -11, 1, 0},
+{ 3, s_0_28, -12, 1, 0},
+{ 5, s_0_29, -1, 1, 0},
+{ 2, s_0_30, 0, 1, 0},
+{ 4, s_0_31, -1, 1, 0}
};
static const symbol s_1_0[2] = { 'g', 'd' };
static const symbol s_1_1[2] = { 'd', 't' };
static const symbol s_1_2[2] = { 'g', 't' };
static const symbol s_1_3[2] = { 'k', 't' };
-
-static const struct among a_1[4] =
-{
-{ 2, s_1_0, -1, -1, 0},
-{ 2, s_1_1, -1, -1, 0},
-{ 2, s_1_2, -1, -1, 0},
-{ 2, s_1_3, -1, -1, 0}
+static const struct among a_1[4] = {
+{ 2, s_1_0, 0, -1, 0},
+{ 2, s_1_1, 0, -1, 0},
+{ 2, s_1_2, 0, -1, 0},
+{ 2, s_1_3, 0, -1, 0}
};
static const symbol s_2_0[2] = { 'i', 'g' };
static const symbol s_2_2[4] = { 'e', 'l', 'i', 'g' };
static const symbol s_2_3[3] = { 'e', 'l', 's' };
static const symbol s_2_4[4] = { 'l', 0xF8, 's', 't' };
-
-static const struct among a_2[5] =
-{
-{ 2, s_2_0, -1, 1, 0},
-{ 3, s_2_1, 0, 1, 0},
-{ 4, s_2_2, 1, 1, 0},
-{ 3, s_2_3, -1, 1, 0},
-{ 4, s_2_4, -1, 2, 0}
+static const struct among a_2[5] = {
+{ 2, s_2_0, 0, 1, 0},
+{ 3, s_2_1, -1, 1, 0},
+{ 4, s_2_2, -1, 1, 0},
+{ 3, s_2_3, 0, 1, 0},
+{ 4, s_2_4, 0, 2, 0}
};
static const unsigned char g_c[] = { 119, 223, 119, 1 };
static const unsigned char g_s_ending[] = { 239, 254, 42, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16 };
-static const symbol s_0[] = { 's', 't' };
-static const symbol s_1[] = { 'i', 'g' };
-static const symbol s_2[] = { 'l', 0xF8, 's' };
-
static int r_mark_regions(struct SN_env * z) {
- z->I[1] = z->l;
- { int c_test1 = z->c;
-z->c = z->c + 3;
- if (z->c > z->l) return 0;
- z->I[0] = z->c;
- z->c = c_test1;
+ int i_x;
+ ((SN_local *)z)->i_p1 = z->l;
+ {
+ int v_1 = z->c;
+ if (z->c + 3 > z->l) return 0;
+ z->c += 3;
+ i_x = z->c;
+ z->c = v_1;
+ }
+ {
+ int ret = out_grouping(z, g_v, 97, 248, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
}
-
- if (out_grouping(z, g_v, 97, 248, 1) < 0) return 0;
-
{
int ret = in_grouping(z, g_v, 97, 248, 1);
if (ret < 0) return 0;
z->c += ret;
}
- z->I[1] = z->c;
-
- if (z->I[1] >= z->I[0]) goto lab0;
- z->I[1] = z->I[0];
+ ((SN_local *)z)->i_p1 = z->c;
+ if (((SN_local *)z)->i_p1 >= i_x) goto lab0;
+ ((SN_local *)z)->i_p1 = i_x;
lab0:
return 1;
}
static int r_main_suffix(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851440 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
- among_var = find_among_b(z, a_0, 32);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851440 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_1; return 0; }
+ among_var = find_among_b(z, a_0, 32, 0);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (in_grouping_b(z, g_s_ending, 97, 229, 0)) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
static int r_consonant_pair(struct SN_env * z) {
- { int m_test1 = z->l - z->c;
-
- { int mlimit2;
- if (z->c < z->I[1]) return 0;
- mlimit2 = z->lb; z->lb = z->I[1];
+ {
+ int v_1 = z->l - z->c;
+ {
+ int v_2;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_2 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 116)) { z->lb = mlimit2; return 0; }
- if (!find_among_b(z, a_1, 4)) { z->lb = mlimit2; return 0; }
+ if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 116)) { z->lb = v_2; return 0; }
+ if (!find_among_b(z, a_1, 4, 0)) { z->lb = v_2; return 0; }
z->bra = z->c;
- z->lb = mlimit2;
+ z->lb = v_2;
}
- z->c = z->l - m_test1;
+ z->c = z->l - v_1;
}
if (z->c <= z->lb) return 0;
z->c--;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_other_suffix(struct SN_env * z) {
int among_var;
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
if (!(eq_s_b(z, 2, s_0))) goto lab0;
z->bra = z->c;
if (!(eq_s_b(z, 2, s_1))) goto lab0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab0:
- z->c = z->l - m1;
+ z->c = z->l - v_1;
}
-
- { int mlimit2;
- if (z->c < z->I[1]) return 0;
- mlimit2 = z->lb; z->lb = z->I[1];
+ {
+ int v_2;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_2 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit2; return 0; }
- among_var = find_among_b(z, a_2, 5);
- if (!among_var) { z->lb = mlimit2; return 0; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_2; return 0; }
+ among_var = find_among_b(z, a_2, 5, 0);
+ if (!among_var) { z->lb = v_2; return 0; }
z->bra = z->c;
- z->lb = mlimit2;
+ z->lb = v_2;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_consonant_pair(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_consonant_pair(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
break;
case 2:
- { int ret = slice_from_s(z, 3, s_2);
+ {
+ int ret = slice_from_s(z, 3, s_2);
if (ret < 0) return ret;
}
break;
}
static int r_undouble(struct SN_env * z) {
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (in_grouping_b(z, g_c, 98, 122, 0)) { z->lb = mlimit1; return 0; }
+ if (in_grouping_b(z, g_c, 98, 122, 0)) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->S[0] = slice_to(z, z->S[0]);
- if (z->S[0] == 0) return -1;
- z->lb = mlimit1;
+ {
+ int ret = slice_to(z, &((SN_local *)z)->s_ch);
+ if (ret < 0) return ret;
+ }
+ z->lb = v_1;
}
- if (!(eq_v_b(z, z->S[0]))) return 0;
- { int ret = slice_del(z);
+ if (!(eq_v_b(z, ((SN_local *)z)->s_ch))) return 0;
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
extern int danish_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_mark_regions(z);
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
z->lb = z->c; z->c = z->l;
-
- { int m2 = z->l - z->c; (void)m2;
- { int ret = r_main_suffix(z);
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_main_suffix(z);
if (ret < 0) return ret;
}
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_consonant_pair(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_consonant_pair(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_other_suffix(z);
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_other_suffix(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
- { int m5 = z->l - z->c; (void)m5;
- { int ret = r_undouble(z);
+ {
+ int v_5 = z->l - z->c;
+ {
+ int ret = r_undouble(z);
if (ret < 0) return ret;
}
- z->c = z->l - m5;
+ z->c = z->l - v_5;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * danish_ISO_8859_1_create_env(void) { return SN_create_env(1, 2); }
+extern struct SN_env * danish_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->s_ch = NULL;
-extern void danish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 1); }
+ if ((((SN_local *)z)->s_ch = create_s()) == NULL) {
+ danish_ISO_8859_1_close_env(z);
+ return NULL;
+ }
+ }
+ return z;
+}
+
+extern void danish_ISO_8859_1_close_env(struct SN_env * z) {
+ if (z) {
+ lose_s(((SN_local *)z)->s_ch);
+ }
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from dutch.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_dutch.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ unsigned char b_GE_removed;
+ symbol * s_ch;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
-static int r_standard_suffix(struct SN_env * z);
-static int r_undouble(struct SN_env * z);
+
+static int r_measure(struct SN_env * z);
+static int r_Lose_infix(struct SN_env * z);
+static int r_Lose_prefix(struct SN_env * z);
+static int r_Step_1c(struct SN_env * z);
+static int r_Step_6(struct SN_env * z);
+static int r_Step_7(struct SN_env * z);
+static int r_Step_4(struct SN_env * z);
+static int r_Step_3(struct SN_env * z);
+static int r_Step_2(struct SN_env * z);
+static int r_Step_1(struct SN_env * z);
+static int r_lengthen_V(struct SN_env * z);
+static int r_VX(struct SN_env * z);
+static int r_V(struct SN_env * z);
+static int r_C(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_en_ending(struct SN_env * z);
-static int r_e_ending(struct SN_env * z);
-static int r_postlude(struct SN_env * z);
-static int r_prelude(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * dutch_ISO_8859_1_create_env(void);
-extern void dutch_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 'i', 'j' };
+static const symbol s_1[] = { 'i', 'j' };
+static const symbol s_2[] = { 'i', 'j' };
+static const symbol s_3[] = { 'e', 0xEB, 'e' };
+static const symbol s_4[] = { 'i', 'e', 'e' };
+static const symbol s_5[] = { 'i', 'e' };
+static const symbol s_6[] = { 'a', 'r' };
+static const symbol s_7[] = { 'e', 'r' };
+static const symbol s_8[] = { 'e' };
+static const symbol s_9[] = { 0xE9 };
+static const symbol s_10[] = { 'a', 'u' };
+static const symbol s_11[] = { 'h', 'e', 'd' };
+static const symbol s_12[] = { 'h', 'e', 'i', 'd' };
+static const symbol s_13[] = { 'n', 'd' };
+static const symbol s_14[] = { 'n', 'd' };
+static const symbol s_15[] = { '\'', 't' };
+static const symbol s_16[] = { 'e', 't' };
+static const symbol s_17[] = { 'r', 'n', 't' };
+static const symbol s_18[] = { 'r', 'n' };
+static const symbol s_19[] = { 'i', 'n', 'k' };
+static const symbol s_20[] = { 'i', 'n', 'g' };
+static const symbol s_21[] = { 'm', 'p' };
+static const symbol s_22[] = { 'm' };
+static const symbol s_23[] = { 'g' };
+static const symbol s_24[] = { 'l', 'i', 'j', 'k' };
+static const symbol s_25[] = { 'i', 's', 'c', 'h' };
+static const symbol s_26[] = { 't' };
+static const symbol s_27[] = { 's' };
+static const symbol s_28[] = { 'r' };
+static const symbol s_29[] = { 'l' };
+static const symbol s_30[] = { 'e', 'n' };
+static const symbol s_31[] = { 'i', 'e', 'f' };
+static const symbol s_32[] = { 'e', 'e', 'r' };
+static const symbol s_33[] = { 'r' };
+static const symbol s_34[] = { 'i', 'l', 'd' };
+static const symbol s_35[] = { 'e', 'r' };
+static const symbol s_36[] = { 'a', 'a', 'r' };
+static const symbol s_37[] = { 'f' };
+static const symbol s_38[] = { 'g' };
+static const symbol s_39[] = { 't' };
+static const symbol s_40[] = { 'd' };
+static const symbol s_41[] = { 'i', 'e' };
+static const symbol s_42[] = { 'e', 'e', 'r' };
+static const symbol s_43[] = { 'n' };
+static const symbol s_44[] = { 'l' };
+static const symbol s_45[] = { 'r' };
+static const symbol s_46[] = { 't', 'e', 'e', 'r' };
+static const symbol s_47[] = { 'l', 'i', 'j', 'k' };
+static const symbol s_48[] = { 'i', 'n', 'n' };
+static const symbol s_49[] = { 'k' };
+static const symbol s_50[] = { 'f' };
+static const symbol s_51[] = { 'p' };
+static const symbol s_52[] = { 'b' };
+static const symbol s_53[] = { 'c' };
+static const symbol s_54[] = { 'd' };
+static const symbol s_55[] = { 'f' };
+static const symbol s_56[] = { 'g' };
+static const symbol s_57[] = { 'h' };
+static const symbol s_58[] = { 'j' };
+static const symbol s_59[] = { 'k' };
+static const symbol s_60[] = { 'l' };
+static const symbol s_61[] = { 'm' };
+static const symbol s_62[] = { 'n' };
+static const symbol s_63[] = { 'p' };
+static const symbol s_64[] = { 'q' };
+static const symbol s_65[] = { 'r' };
+static const symbol s_66[] = { 's' };
+static const symbol s_67[] = { 't' };
+static const symbol s_68[] = { 'v' };
+static const symbol s_69[] = { 'w' };
+static const symbol s_70[] = { 'x' };
+static const symbol s_71[] = { 'z' };
+static const symbol s_72[] = { 'i', 'n' };
+static const symbol s_73[] = { 'n' };
+static const symbol s_74[] = { 'e', 'n' };
+static const symbol s_75[] = { 'g', 'e' };
+static const symbol s_76[] = { 'i', 'j' };
+static const symbol s_77[] = { 'i', 'j' };
+static const symbol s_78[] = { 'e' };
+static const symbol s_79[] = { 'i' };
+static const symbol s_80[] = { 'g', 'e' };
+static const symbol s_81[] = { 'i', 'j' };
+static const symbol s_82[] = { 'i', 'j' };
+static const symbol s_83[] = { 'e' };
+static const symbol s_84[] = { 'i' };
+static const symbol s_85[] = { 'i', 'j' };
+static const symbol s_86[] = { 'i', 'j' };
-#ifdef __cplusplus
-}
-#endif
-static const symbol s_0_1[1] = { 0xE1 };
-static const symbol s_0_2[1] = { 0xE4 };
-static const symbol s_0_3[1] = { 0xE9 };
-static const symbol s_0_4[1] = { 0xEB };
-static const symbol s_0_5[1] = { 0xED };
-static const symbol s_0_6[1] = { 0xEF };
-static const symbol s_0_7[1] = { 0xF3 };
-static const symbol s_0_8[1] = { 0xF6 };
-static const symbol s_0_9[1] = { 0xFA };
-static const symbol s_0_10[1] = { 0xFC };
-
-static const struct among a_0[11] =
-{
-{ 0, 0, -1, 6, 0},
-{ 1, s_0_1, 0, 1, 0},
+static const symbol s_0_0[1] = { 'a' };
+static const symbol s_0_1[1] = { 'e' };
+static const symbol s_0_2[1] = { 'o' };
+static const symbol s_0_3[1] = { 'u' };
+static const symbol s_0_4[1] = { 0xE0 };
+static const symbol s_0_5[1] = { 0xE1 };
+static const symbol s_0_6[1] = { 0xE2 };
+static const symbol s_0_7[1] = { 0xE4 };
+static const symbol s_0_8[1] = { 0xE8 };
+static const symbol s_0_9[1] = { 0xE9 };
+static const symbol s_0_10[1] = { 0xEA };
+static const symbol s_0_11[2] = { 'e', 0xEB };
+static const symbol s_0_12[2] = { 'i', 0xEB };
+static const symbol s_0_13[1] = { 0xF2 };
+static const symbol s_0_14[1] = { 0xF3 };
+static const symbol s_0_15[1] = { 0xF4 };
+static const symbol s_0_16[1] = { 0xF6 };
+static const symbol s_0_17[1] = { 0xF9 };
+static const symbol s_0_18[1] = { 0xFA };
+static const symbol s_0_19[1] = { 0xFB };
+static const symbol s_0_20[1] = { 0xFC };
+static const struct among a_0[21] = {
+{ 1, s_0_0, 0, 1, 0},
+{ 1, s_0_1, 0, 2, 0},
{ 1, s_0_2, 0, 1, 0},
-{ 1, s_0_3, 0, 2, 0},
-{ 1, s_0_4, 0, 2, 0},
-{ 1, s_0_5, 0, 3, 0},
-{ 1, s_0_6, 0, 3, 0},
-{ 1, s_0_7, 0, 4, 0},
-{ 1, s_0_8, 0, 4, 0},
-{ 1, s_0_9, 0, 5, 0},
-{ 1, s_0_10, 0, 5, 0}
+{ 1, s_0_3, 0, 1, 0},
+{ 1, s_0_4, 0, 1, 0},
+{ 1, s_0_5, 0, 1, 0},
+{ 1, s_0_6, 0, 1, 0},
+{ 1, s_0_7, 0, 1, 0},
+{ 1, s_0_8, 0, 2, 0},
+{ 1, s_0_9, 0, 2, 0},
+{ 1, s_0_10, 0, 2, 0},
+{ 2, s_0_11, 0, 3, 0},
+{ 2, s_0_12, 0, 4, 0},
+{ 1, s_0_13, 0, 1, 0},
+{ 1, s_0_14, 0, 1, 0},
+{ 1, s_0_15, 0, 1, 0},
+{ 1, s_0_16, 0, 1, 0},
+{ 1, s_0_17, 0, 1, 0},
+{ 1, s_0_18, 0, 1, 0},
+{ 1, s_0_19, 0, 1, 0},
+{ 1, s_0_20, 0, 1, 0}
};
-static const symbol s_1_1[1] = { 'I' };
-static const symbol s_1_2[1] = { 'Y' };
-
-static const struct among a_1[3] =
-{
-{ 0, 0, -1, 3, 0},
-{ 1, s_1_1, 0, 2, 0},
-{ 1, s_1_2, 0, 1, 0}
+static const symbol s_1_0[3] = { 'n', 'd', 'e' };
+static const symbol s_1_1[2] = { 'e', 'n' };
+static const symbol s_1_2[1] = { 's' };
+static const symbol s_1_3[2] = { '\'', 's' };
+static const symbol s_1_4[2] = { 'e', 's' };
+static const symbol s_1_5[3] = { 'i', 'e', 's' };
+static const symbol s_1_6[3] = { 'a', 'u', 's' };
+static const symbol s_1_7[2] = { 0xE9, 's' };
+static const struct among a_1[8] = {
+{ 3, s_1_0, 0, 8, 0},
+{ 2, s_1_1, 0, 7, 0},
+{ 1, s_1_2, 0, 2, 0},
+{ 2, s_1_3, -1, 1, 0},
+{ 2, s_1_4, -2, 4, 0},
+{ 3, s_1_5, -1, 3, 0},
+{ 3, s_1_6, -4, 6, 0},
+{ 2, s_1_7, -5, 5, 0}
};
-static const symbol s_2_0[2] = { 'd', 'd' };
-static const symbol s_2_1[2] = { 'k', 'k' };
-static const symbol s_2_2[2] = { 't', 't' };
-
-static const struct among a_2[3] =
-{
-{ 2, s_2_0, -1, -1, 0},
-{ 2, s_2_1, -1, -1, 0},
-{ 2, s_2_2, -1, -1, 0}
+static const symbol s_2_0[2] = { 'd', 'e' };
+static const symbol s_2_1[2] = { 'g', 'e' };
+static const symbol s_2_2[5] = { 'i', 's', 'c', 'h', 'e' };
+static const symbol s_2_3[2] = { 'j', 'e' };
+static const symbol s_2_4[5] = { 'l', 'i', 'j', 'k', 'e' };
+static const symbol s_2_5[2] = { 'l', 'e' };
+static const symbol s_2_6[3] = { 'e', 'n', 'e' };
+static const symbol s_2_7[2] = { 'r', 'e' };
+static const symbol s_2_8[2] = { 's', 'e' };
+static const symbol s_2_9[2] = { 't', 'e' };
+static const symbol s_2_10[4] = { 'i', 'e', 'v', 'e' };
+static const struct among a_2[11] = {
+{ 2, s_2_0, 0, 5, 0},
+{ 2, s_2_1, 0, 2, 0},
+{ 5, s_2_2, 0, 4, 0},
+{ 2, s_2_3, 0, 1, 0},
+{ 5, s_2_4, 0, 3, 0},
+{ 2, s_2_5, 0, 9, 0},
+{ 3, s_2_6, 0, 10, 0},
+{ 2, s_2_7, 0, 8, 0},
+{ 2, s_2_8, 0, 7, 0},
+{ 2, s_2_9, 0, 6, 0},
+{ 4, s_2_10, 0, 11, 0}
};
-static const symbol s_3_0[3] = { 'e', 'n', 'e' };
-static const symbol s_3_1[2] = { 's', 'e' };
-static const symbol s_3_2[2] = { 'e', 'n' };
-static const symbol s_3_3[5] = { 'h', 'e', 'd', 'e', 'n' };
-static const symbol s_3_4[1] = { 's' };
-
-static const struct among a_3[5] =
-{
-{ 3, s_3_0, -1, 2, 0},
-{ 2, s_3_1, -1, 3, 0},
-{ 2, s_3_2, -1, 2, 0},
-{ 5, s_3_3, 2, 1, 0},
-{ 1, s_3_4, -1, 3, 0}
+static const symbol s_3_0[4] = { 'h', 'e', 'i', 'd' };
+static const symbol s_3_1[3] = { 'f', 'i', 'e' };
+static const symbol s_3_2[3] = { 'g', 'i', 'e' };
+static const symbol s_3_3[4] = { 'a', 't', 'i', 'e' };
+static const symbol s_3_4[4] = { 'i', 's', 'm', 'e' };
+static const symbol s_3_5[3] = { 'i', 'n', 'g' };
+static const symbol s_3_6[4] = { 'a', 'r', 'i', 'j' };
+static const symbol s_3_7[4] = { 'e', 'r', 'i', 'j' };
+static const symbol s_3_8[3] = { 's', 'e', 'l' };
+static const symbol s_3_9[4] = { 'r', 'd', 'e', 'r' };
+static const symbol s_3_10[4] = { 's', 't', 'e', 'r' };
+static const symbol s_3_11[5] = { 'i', 't', 'e', 'i', 't' };
+static const symbol s_3_12[3] = { 'd', 's', 't' };
+static const symbol s_3_13[3] = { 't', 's', 't' };
+static const struct among a_3[14] = {
+{ 4, s_3_0, 0, 3, 0},
+{ 3, s_3_1, 0, 7, 0},
+{ 3, s_3_2, 0, 8, 0},
+{ 4, s_3_3, 0, 1, 0},
+{ 4, s_3_4, 0, 5, 0},
+{ 3, s_3_5, 0, 5, 0},
+{ 4, s_3_6, 0, 6, 0},
+{ 4, s_3_7, 0, 5, 0},
+{ 3, s_3_8, 0, 3, 0},
+{ 4, s_3_9, 0, 4, 0},
+{ 4, s_3_10, 0, 3, 0},
+{ 5, s_3_11, 0, 2, 0},
+{ 3, s_3_12, 0, 10, 0},
+{ 3, s_3_13, 0, 9, 0}
};
static const symbol s_4_0[3] = { 'e', 'n', 'd' };
-static const symbol s_4_1[2] = { 'i', 'g' };
-static const symbol s_4_2[3] = { 'i', 'n', 'g' };
-static const symbol s_4_3[4] = { 'l', 'i', 'j', 'k' };
-static const symbol s_4_4[4] = { 'b', 'a', 'a', 'r' };
-static const symbol s_4_5[3] = { 'b', 'a', 'r' };
-
-static const struct among a_4[6] =
-{
-{ 3, s_4_0, -1, 1, 0},
-{ 2, s_4_1, -1, 2, 0},
-{ 3, s_4_2, -1, 1, 0},
-{ 4, s_4_3, -1, 3, 0},
-{ 4, s_4_4, -1, 4, 0},
-{ 3, s_4_5, -1, 5, 0}
+static const symbol s_4_1[5] = { 'a', 't', 'i', 'e', 'f' };
+static const symbol s_4_2[4] = { 'e', 'r', 'i', 'g' };
+static const symbol s_4_3[6] = { 'a', 'c', 'h', 't', 'i', 'g' };
+static const symbol s_4_4[6] = { 'i', 'o', 'n', 'e', 'e', 'l' };
+static const symbol s_4_5[4] = { 'b', 'a', 'a', 'r' };
+static const symbol s_4_6[4] = { 'l', 'a', 'a', 'r' };
+static const symbol s_4_7[4] = { 'n', 'a', 'a', 'r' };
+static const symbol s_4_8[4] = { 'r', 'a', 'a', 'r' };
+static const symbol s_4_9[6] = { 'e', 'r', 'i', 'g', 'e', 'r' };
+static const symbol s_4_10[8] = { 'a', 'c', 'h', 't', 'i', 'g', 'e', 'r' };
+static const symbol s_4_11[6] = { 'l', 'i', 'j', 'k', 'e', 'r' };
+static const symbol s_4_12[4] = { 't', 'a', 'n', 't' };
+static const symbol s_4_13[6] = { 'e', 'r', 'i', 'g', 's', 't' };
+static const symbol s_4_14[8] = { 'a', 'c', 'h', 't', 'i', 'g', 's', 't' };
+static const symbol s_4_15[6] = { 'l', 'i', 'j', 'k', 's', 't' };
+static const struct among a_4[16] = {
+{ 3, s_4_0, 0, 9, 0},
+{ 5, s_4_1, 0, 2, 0},
+{ 4, s_4_2, 0, 9, 0},
+{ 6, s_4_3, 0, 3, 0},
+{ 6, s_4_4, 0, 1, 0},
+{ 4, s_4_5, 0, 3, 0},
+{ 4, s_4_6, 0, 5, 0},
+{ 4, s_4_7, 0, 4, 0},
+{ 4, s_4_8, 0, 6, 0},
+{ 6, s_4_9, 0, 9, 0},
+{ 8, s_4_10, 0, 3, 0},
+{ 6, s_4_11, 0, 8, 0},
+{ 4, s_4_12, 0, 7, 0},
+{ 6, s_4_13, 0, 9, 0},
+{ 8, s_4_14, 0, 3, 0},
+{ 6, s_4_15, 0, 8, 0}
};
-static const symbol s_5_0[2] = { 'a', 'a' };
-static const symbol s_5_1[2] = { 'e', 'e' };
-static const symbol s_5_2[2] = { 'o', 'o' };
-static const symbol s_5_3[2] = { 'u', 'u' };
-
-static const struct among a_5[4] =
-{
-{ 2, s_5_0, -1, -1, 0},
-{ 2, s_5_1, -1, -1, 0},
-{ 2, s_5_2, -1, -1, 0},
-{ 2, s_5_3, -1, -1, 0}
+static const symbol s_5_0[2] = { 'i', 'g' };
+static const symbol s_5_1[4] = { 'i', 'g', 'e', 'r' };
+static const symbol s_5_2[4] = { 'i', 'g', 's', 't' };
+static const struct among a_5[3] = {
+{ 2, s_5_0, 0, 1, 0},
+{ 4, s_5_1, 0, 1, 0},
+{ 4, s_5_2, 0, 1, 0}
};
-static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
-
-static const unsigned char g_v_I[] = { 1, 0, 0, 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
+static const symbol s_6_0[2] = { 'f', 't' };
+static const symbol s_6_1[2] = { 'k', 't' };
+static const symbol s_6_2[2] = { 'p', 't' };
+static const struct among a_6[3] = {
+{ 2, s_6_0, 0, 2, 0},
+{ 2, s_6_1, 0, 1, 0},
+{ 2, s_6_2, 0, 3, 0}
+};
-static const unsigned char g_v_j[] = { 17, 67, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
+static const symbol s_7_0[2] = { 'b', 'b' };
+static const symbol s_7_1[2] = { 'c', 'c' };
+static const symbol s_7_2[2] = { 'd', 'd' };
+static const symbol s_7_3[2] = { 'f', 'f' };
+static const symbol s_7_4[2] = { 'g', 'g' };
+static const symbol s_7_5[2] = { 'h', 'h' };
+static const symbol s_7_6[2] = { 'j', 'j' };
+static const symbol s_7_7[2] = { 'k', 'k' };
+static const symbol s_7_8[2] = { 'l', 'l' };
+static const symbol s_7_9[2] = { 'm', 'm' };
+static const symbol s_7_10[2] = { 'n', 'n' };
+static const symbol s_7_11[2] = { 'p', 'p' };
+static const symbol s_7_12[2] = { 'q', 'q' };
+static const symbol s_7_13[2] = { 'r', 'r' };
+static const symbol s_7_14[2] = { 's', 's' };
+static const symbol s_7_15[2] = { 't', 't' };
+static const symbol s_7_16[1] = { 'v' };
+static const symbol s_7_17[2] = { 'v', 'v' };
+static const symbol s_7_18[2] = { 'w', 'w' };
+static const symbol s_7_19[2] = { 'x', 'x' };
+static const symbol s_7_20[1] = { 'z' };
+static const symbol s_7_21[2] = { 'z', 'z' };
+static const struct among a_7[22] = {
+{ 2, s_7_0, 0, 1, 0},
+{ 2, s_7_1, 0, 2, 0},
+{ 2, s_7_2, 0, 3, 0},
+{ 2, s_7_3, 0, 4, 0},
+{ 2, s_7_4, 0, 5, 0},
+{ 2, s_7_5, 0, 6, 0},
+{ 2, s_7_6, 0, 7, 0},
+{ 2, s_7_7, 0, 8, 0},
+{ 2, s_7_8, 0, 9, 0},
+{ 2, s_7_9, 0, 10, 0},
+{ 2, s_7_10, 0, 11, 0},
+{ 2, s_7_11, 0, 12, 0},
+{ 2, s_7_12, 0, 13, 0},
+{ 2, s_7_13, 0, 14, 0},
+{ 2, s_7_14, 0, 15, 0},
+{ 2, s_7_15, 0, 16, 0},
+{ 1, s_7_16, 0, 4, 0},
+{ 2, s_7_17, -1, 17, 0},
+{ 2, s_7_18, 0, 18, 0},
+{ 2, s_7_19, 0, 19, 0},
+{ 1, s_7_20, 0, 15, 0},
+{ 2, s_7_21, -1, 20, 0}
+};
-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[] = { 'Y' };
-static const symbol s_6[] = { 'I' };
-static const symbol s_7[] = { 'Y' };
-static const symbol s_8[] = { 'y' };
-static const symbol s_9[] = { 'i' };
-static const symbol s_10[] = { 'g', 'e', 'm' };
-static const symbol s_11[] = { 'h', 'e', 'i', 'd' };
-static const symbol s_12[] = { 'h', 'e', 'i', 'd' };
-static const symbol s_13[] = { 'e', 'n' };
-static const symbol s_14[] = { 'i', 'g' };
+static const symbol s_8_0[1] = { 'd' };
+static const symbol s_8_1[1] = { 't' };
+static const struct among a_8[2] = {
+{ 1, s_8_0, 0, 1, 0},
+{ 1, s_8_1, 0, 2, 0}
+};
-static int r_prelude(struct SN_env * z) {
- int among_var;
- { int c_test1 = z->c;
- while(1) {
- int c2 = z->c;
- z->bra = z->c;
- if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((340306450 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else
- among_var = find_among(z, a_0, 11);
- z->ket = z->c;
- switch (among_var) {
- case 1:
- { int ret = slice_from_s(z, 1, s_0);
- if (ret < 0) return ret;
- }
- break;
- case 2:
- { int ret = slice_from_s(z, 1, s_1);
- if (ret < 0) return ret;
- }
- break;
- case 3:
- { int ret = slice_from_s(z, 1, s_2);
- if (ret < 0) return ret;
- }
- break;
- case 4:
- { int ret = slice_from_s(z, 1, s_3);
- if (ret < 0) return ret;
- }
- break;
- case 5:
- { int ret = slice_from_s(z, 1, s_4);
- if (ret < 0) return ret;
- }
- break;
- case 6:
- if (z->c >= z->l) goto lab0;
- z->c++;
- break;
- }
- continue;
- lab0:
- z->c = c2;
- break;
- }
- z->c = c_test1;
- }
- { int c3 = z->c;
- z->bra = z->c;
- if (z->c == z->l || z->p[z->c] != 'y') { z->c = c3; goto lab1; }
- z->c++;
- z->ket = z->c;
- { int ret = slice_from_s(z, 1, s_5);
- if (ret < 0) return ret;
- }
- lab1:
- ;
- }
- while(1) {
- int c4 = z->c;
- while(1) {
- int c5 = z->c;
- if (in_grouping(z, g_v, 97, 232, 0)) goto lab3;
- z->bra = z->c;
- { int c6 = z->c;
- if (z->c == z->l || z->p[z->c] != 'i') goto lab5;
- z->c++;
- z->ket = z->c;
- if (in_grouping(z, g_v, 97, 232, 0)) goto lab5;
- { int ret = slice_from_s(z, 1, s_6);
- if (ret < 0) return ret;
- }
- goto lab4;
- lab5:
- z->c = c6;
- if (z->c == z->l || z->p[z->c] != 'y') goto lab3;
- z->c++;
- z->ket = z->c;
- { int ret = slice_from_s(z, 1, s_7);
- if (ret < 0) return ret;
- }
- }
- lab4:
- z->c = c5;
- break;
- lab3:
- z->c = c5;
- if (z->c >= z->l) goto lab2;
- z->c++;
- }
- continue;
- lab2:
- z->c = c4;
- break;
- }
- return 1;
-}
+static const symbol s_9_1[3] = { 'e', 'f', 't' };
+static const symbol s_9_2[3] = { 'v', 'a', 'a' };
+static const symbol s_9_3[3] = { 'v', 'a', 'l' };
+static const symbol s_9_4[4] = { 'v', 'a', 'l', 'i' };
+static const symbol s_9_5[4] = { 'v', 'a', 'r', 'e' };
+static const struct among a_9[6] = {
+{ 0, 0, 0, -1, 0},
+{ 3, s_9_1, -1, 1, 0},
+{ 3, s_9_2, -2, 1, 0},
+{ 3, s_9_3, -3, 1, 0},
+{ 4, s_9_4, -1, -1, 0},
+{ 4, s_9_5, -5, 1, 0}
+};
-static int r_mark_regions(struct SN_env * z) {
- z->I[2] = z->l;
- z->I[1] = z->l;
- { int c_test1 = z->c;
-z->c = z->c + 3;
- if (z->c > z->l) return 0;
- z->I[0] = z->c;
- z->c = c_test1;
- }
+static const symbol s_10_0[1] = { 0xEB };
+static const symbol s_10_1[1] = { 0xEF };
+static const struct among a_10[2] = {
+{ 1, s_10_0, 0, 1, 0},
+{ 1, s_10_1, 0, 2, 0}
+};
- {
- int ret = out_grouping(z, g_v, 97, 232, 1);
- if (ret < 0) return 0;
- z->c += ret;
- }
+static const symbol s_11_0[1] = { 0xEB };
+static const symbol s_11_1[1] = { 0xEF };
+static const struct among a_11[2] = {
+{ 1, s_11_0, 0, 1, 0},
+{ 1, s_11_1, 0, 2, 0}
+};
- {
- int ret = in_grouping(z, g_v, 97, 232, 1);
- if (ret < 0) return 0;
- z->c += ret;
- }
- z->I[2] = z->c;
+static const unsigned char g_E[] = { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120 };
- if (z->I[2] >= z->I[0]) goto lab0;
- z->I[2] = z->I[0];
-lab0:
+static const unsigned char g_AIOU[] = { 1, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 11, 120, 46, 15 };
- {
- int ret = out_grouping(z, g_v, 97, 232, 1);
- if (ret < 0) return 0;
- z->c += ret;
- }
+static const unsigned char g_AEIOU[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15 };
- {
- int ret = in_grouping(z, g_v, 97, 232, 1);
- if (ret < 0) return 0;
- z->c += ret;
- }
- z->I[1] = z->c;
- return 1;
-}
+static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15 };
-static int r_postlude(struct SN_env * z) {
- int among_var;
- while(1) {
- int c1 = z->c;
- z->bra = z->c;
- if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else
- among_var = find_among(z, a_1, 3);
- z->ket = z->c;
- switch (among_var) {
- case 1:
- { int ret = slice_from_s(z, 1, s_8);
- if (ret < 0) return ret;
- }
- break;
- case 2:
- { int ret = slice_from_s(z, 1, s_9);
- if (ret < 0) return ret;
- }
- break;
- case 3:
- if (z->c >= z->l) goto lab0;
- z->c++;
- break;
- }
- continue;
- lab0:
- z->c = c1;
- break;
- }
- return 1;
-}
+static const unsigned char g_v_WX[] = { 17, 65, 208, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 139, 127, 46, 15 };
static int r_R1(struct SN_env * z) {
- return z->I[2] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
-static int r_undouble(struct SN_env * z) {
- { int m_test1 = z->l - z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1050640 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- if (!find_among_b(z, a_2, 3)) return 0;
- z->c = z->l - m_test1;
- }
- z->ket = z->c;
- if (z->c <= z->lb) return 0;
- z->c--;
- z->bra = z->c;
- { int ret = slice_del(z);
- if (ret < 0) return ret;
+static int r_V(struct SN_env * z) {
+ {
+ int v_1 = z->l - z->c;
+ do {
+ int v_2 = z->l - z->c;
+ if (in_grouping_b(z, g_v, 97, 252, 0)) goto lab0;
+ break;
+ lab0:
+ z->c = z->l - v_2;
+ if (!(eq_s_b(z, 2, s_0))) return 0;
+ } while (0);
+ z->c = z->l - v_1;
}
return 1;
}
-static int r_e_ending(struct SN_env * z) {
- z->I[3] = 0;
- z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
- z->c--;
- z->bra = z->c;
- { int ret = r_R1(z);
- if (ret <= 0) return ret;
- }
- { int m_test1 = z->l - z->c;
- if (out_grouping_b(z, g_v, 97, 232, 0)) return 0;
- z->c = z->l - m_test1;
- }
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- z->I[3] = 1;
- { int ret = r_undouble(z);
- if (ret <= 0) return ret;
+static int r_VX(struct SN_env * z) {
+ {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb) return 0;
+ z->c--;
+ do {
+ int v_2 = z->l - z->c;
+ if (in_grouping_b(z, g_v, 97, 252, 0)) goto lab0;
+ break;
+ lab0:
+ z->c = z->l - v_2;
+ if (!(eq_s_b(z, 2, s_1))) return 0;
+ } while (0);
+ z->c = z->l - v_1;
}
return 1;
}
-static int r_en_ending(struct SN_env * z) {
- { int ret = r_R1(z);
- if (ret <= 0) return ret;
- }
- { int m1 = z->l - z->c; (void)m1;
- if (out_grouping_b(z, g_v, 97, 232, 0)) return 0;
- z->c = z->l - m1;
- { int m2 = z->l - z->c; (void)m2;
- if (!(eq_s_b(z, 3, s_10))) goto lab0;
+static int r_C(struct SN_env * z) {
+ {
+ int v_1 = z->l - z->c;
+ {
+ int v_2 = z->l - z->c;
+ if (!(eq_s_b(z, 2, s_2))) goto lab0;
return 0;
lab0:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- }
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- { int ret = r_undouble(z);
- if (ret <= 0) return ret;
+ if (out_grouping_b(z, g_v, 97, 252, 0)) return 0;
+ z->c = z->l - v_1;
}
return 1;
}
-static int r_standard_suffix(struct SN_env * z) {
+static int r_lengthen_V(struct SN_env * z) {
int among_var;
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
+ if (out_grouping_b(z, g_v_WX, 97, 252, 0)) goto lab0;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
- among_var = find_among_b(z, a_3, 5);
+ among_var = find_among_b(z, a_0, 21, 0);
if (!among_var) goto lab0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R1(z);
- if (ret == 0) goto lab0;
+ {
+ int v_2 = z->l - z->c;
+ do {
+ int v_3 = z->l - z->c;
+ if (out_grouping_b(z, g_AEIOU, 97, 252, 0)) goto lab1;
+ break;
+ lab1:
+ z->c = z->l - v_3;
+ if (z->c > z->lb) goto lab0;
+ } while (0);
+ z->c = z->l - v_2;
+ }
+ {
+ int ret = slice_to(z, &((SN_local *)z)->s_ch);
if (ret < 0) return ret;
}
- { int ret = slice_from_s(z, 4, s_11);
+ {
+ int saved_c = z->c;
+ int ret = insert_v(z, z->c, z->c, ((SN_local *)z)->s_ch);
+ z->c = saved_c;
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_en_ending(z);
- if (ret == 0) goto lab0;
+ {
+ int v_4 = z->l - z->c;
+ do {
+ int v_5 = z->l - z->c;
+ if (out_grouping_b(z, g_AEIOU, 97, 252, 0)) goto lab2;
+ break;
+ lab2:
+ z->c = z->l - v_5;
+ if (z->c > z->lb) goto lab0;
+ } while (0);
+ {
+ int v_6 = z->l - z->c;
+ do {
+ int v_7 = z->l - z->c;
+ if (in_grouping_b(z, g_AIOU, 97, 252, 0)) goto lab4;
+ break;
+ lab4:
+ z->c = z->l - v_7;
+ if (in_grouping_b(z, g_E, 101, 235, 0)) goto lab3;
+ if (z->c > z->lb) goto lab3;
+ } while (0);
+ goto lab0;
+ lab3:
+ z->c = z->l - v_6;
+ }
+ {
+ int v_8 = z->l - z->c;
+ if (z->c <= z->lb) goto lab5;
+ z->c--;
+ if (in_grouping_b(z, g_AIOU, 97, 252, 0)) goto lab5;
+ if (out_grouping_b(z, g_AEIOU, 97, 252, 0)) goto lab5;
+ goto lab0;
+ lab5:
+ z->c = z->l - v_8;
+ }
+ z->c = z->l - v_4;
+ }
+ {
+ int ret = slice_to(z, &((SN_local *)z)->s_ch);
+ if (ret < 0) return ret;
+ }
+ {
+ int saved_c = z->c;
+ int ret = insert_v(z, z->c, z->c, ((SN_local *)z)->s_ch);
+ z->c = saved_c;
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = r_R1(z);
- if (ret == 0) goto lab0;
+ {
+ int ret = slice_from_s(z, 3, s_3);
if (ret < 0) return ret;
}
- if (out_grouping_b(z, g_v_j, 97, 232, 0)) goto lab0;
- { int ret = slice_del(z);
+ break;
+ case 4:
+ {
+ int ret = slice_from_s(z, 3, s_4);
if (ret < 0) return ret;
}
break;
}
lab0:
- z->c = z->l - m1;
- }
- { int m2 = z->l - z->c; (void)m2;
- { int ret = r_e_ending(z);
- if (ret < 0) return ret;
- }
- z->c = z->l - m2;
- }
- { int m3 = z->l - z->c; (void)m3;
- z->ket = z->c;
- if (!(eq_s_b(z, 4, s_12))) goto lab1;
- z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) goto lab1;
- if (ret < 0) return ret;
- }
- { int m4 = z->l - z->c; (void)m4;
- if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2;
- z->c--;
- goto lab1;
- lab2:
- z->c = z->l - m4;
- }
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- z->ket = z->c;
- if (!(eq_s_b(z, 2, s_13))) goto lab1;
- z->bra = z->c;
- { int ret = r_en_ending(z);
- if (ret == 0) goto lab1;
- if (ret < 0) return ret;
- }
- lab1:
- z->c = z->l - m3;
+ z->c = z->l - v_1;
}
- { int m5 = z->l - z->c; (void)m5;
- z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3;
- among_var = find_among_b(z, a_4, 6);
- if (!among_var) goto lab3;
- z->bra = z->c;
- switch (among_var) {
- case 1:
- { int ret = r_R2(z);
- if (ret == 0) goto lab3;
- if (ret < 0) return ret;
- }
- { int ret = slice_del(z);
+ return 1;
+}
+
+static int r_Step_1(struct SN_env * z) {
+ int among_var;
+ z->ket = z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
+ among_var = find_among_b(z, a_1, 8, 0);
+ if (!among_var) return 0;
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 't') goto lab0;
+ z->c--;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- { int m6 = z->l - z->c; (void)m6;
- z->ket = z->c;
- if (!(eq_s_b(z, 2, s_14))) goto lab5;
- z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) goto lab5;
+ return 0;
+ lab0:
+ z->c = z->l - v_1;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 2, s_5);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 4:
+ do {
+ int v_2 = z->l - z->c;
+ {
+ int v_3 = z->l - z->c;
+ if (!(eq_s_b(z, 2, s_6))) goto lab1;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- { int m7 = z->l - z->c; (void)m7;
- if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6;
- z->c--;
- goto lab5;
- lab6:
- z->c = z->l - m7;
+ {
+ int ret = r_C(z);
+ if (ret == 0) goto lab1;
+ if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ z->c = z->l - v_3;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_lengthen_V(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab1:
+ z->c = z->l - v_2;
+ {
+ int v_4 = z->l - z->c;
+ if (!(eq_s_b(z, 2, s_7))) goto lab2;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab2;
if (ret < 0) return ret;
}
- goto lab4;
- lab5:
- z->c = z->l - m6;
- { int ret = r_undouble(z);
- if (ret == 0) goto lab3;
+ {
+ int ret = r_C(z);
+ if (ret == 0) goto lab2;
if (ret < 0) return ret;
}
+ z->c = z->l - v_4;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
}
- lab4:
break;
- case 2:
- { int ret = r_R2(z);
+ lab2:
+ z->c = z->l - v_2;
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_8);
+ if (ret < 0) return ret;
+ }
+ } while (0);
+ break;
+ case 5:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_9);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 6:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_V(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 2, s_10);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 7:
+ do {
+ int v_5 = z->l - z->c;
+ if (!(eq_s_b(z, 3, s_11))) goto lab3;
+ {
+ int ret = r_R1(z);
if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
- { int m8 = z->l - z->c; (void)m8;
- if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7;
+ z->bra = z->c;
+ {
+ int ret = slice_from_s(z, 4, s_12);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab3:
+ z->c = z->l - v_5;
+ if (!(eq_s_b(z, 2, s_13))) goto lab4;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab4:
+ z->c = z->l - v_5;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'd') goto lab5;
+ z->c--;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab5;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret == 0) goto lab5;
+ if (ret < 0) return ret;
+ }
+ z->bra = z->c;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab5:
+ z->c = z->l - v_5;
+ do {
+ int v_6 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab7;
z->c--;
- goto lab3;
+ break;
lab7:
- z->c = z->l - m8;
+ z->c = z->l - v_6;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab6;
+ z->c--;
+ } while (0);
+ {
+ int ret = r_V(z);
+ if (ret == 0) goto lab6;
+ if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
- case 3:
- { int ret = r_R2(z);
- if (ret == 0) goto lab3;
+ lab6:
+ z->c = z->l - v_5;
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = r_lengthen_V(z);
+ if (ret <= 0) return ret;
+ }
+ } while (0);
+ break;
+ case 8:
+ {
+ int ret = slice_from_s(z, 2, s_14);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ return 1;
+}
+
+static int r_Step_2(struct SN_env * z) {
+ int among_var;
+ z->ket = z->c;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] != 101) return 0;
+ among_var = find_among_b(z, a_2, 11, 0);
+ if (!among_var) return 0;
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ do {
+ int v_1 = z->l - z->c;
+ if (!(eq_s_b(z, 2, s_15))) goto lab0;
+ z->bra = z->c;
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int ret = r_e_ending(z);
- if (ret == 0) goto lab3;
+ break;
+ lab0:
+ z->c = z->l - v_1;
+ if (!(eq_s_b(z, 2, s_16))) goto lab1;
+ z->bra = z->c;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab1;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret == 0) goto lab1;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
- case 4:
- { int ret = r_R2(z);
+ lab1:
+ z->c = z->l - v_1;
+ if (!(eq_s_b(z, 3, s_17))) goto lab2;
+ z->bra = z->c;
+ {
+ int ret = slice_from_s(z, 2, s_18);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab2:
+ z->c = z->l - v_1;
+ if (z->c <= z->lb || z->p[z->c - 1] != 't') goto lab3;
+ z->c--;
+ z->bra = z->c;
+ {
+ int ret = r_R1(z);
if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = r_VX(z);
+ if (ret == 0) goto lab3;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
- case 5:
- { int ret = r_R2(z);
- if (ret == 0) goto lab3;
+ lab3:
+ z->c = z->l - v_1;
+ if (!(eq_s_b(z, 3, s_19))) goto lab4;
+ z->bra = z->c;
+ {
+ int ret = slice_from_s(z, 3, s_20);
if (ret < 0) return ret;
}
- if (!(z->I[3])) goto lab3;
- { int ret = slice_del(z);
+ break;
+ lab4:
+ z->c = z->l - v_1;
+ if (!(eq_s_b(z, 2, s_21))) goto lab5;
+ z->bra = z->c;
+ {
+ int ret = slice_from_s(z, 1, s_22);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab5:
+ z->c = z->l - v_1;
+ if (z->c <= z->lb || z->p[z->c - 1] != '\'') goto lab6;
+ z->c--;
+ z->bra = z->c;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab6;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab6:
+ z->c = z->l - v_1;
+ z->bra = z->c;
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ } while (0);
+ break;
+ case 2:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_23);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 4, s_24);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 4:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 4, s_25);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 5:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 6:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_26);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 7:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_27);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 8:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_28);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 9:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = insert_s(z, z->c, z->c, 1, s_29);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_lengthen_V(z);
+ if (ret <= 0) return ret;
+ }
+ break;
+ case 10:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = insert_s(z, z->c, z->c, 2, s_30);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_lengthen_V(z);
+ if (ret <= 0) return ret;
+ }
+ break;
+ case 11:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 3, s_31);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ return 1;
+}
+
+static int r_Step_3(struct SN_env * z) {
+ int among_var;
+ z->ket = z->c;
+ if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1316016 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
+ among_var = find_among_b(z, a_3, 14, 0);
+ if (!among_var) return 0;
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 3, s_32);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_lengthen_V(z);
+ if (ret <= 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 4:
+ {
+ int ret = slice_from_s(z, 1, s_33);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 5:
+ do {
+ int v_1 = z->l - z->c;
+ if (!(eq_s_b(z, 3, s_34))) goto lab0;
+ {
+ int ret = slice_from_s(z, 2, s_35);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab0:
+ z->c = z->l - v_1;
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_lengthen_V(z);
+ if (ret <= 0) return ret;
+ }
+ } while (0);
+ break;
+ case 6:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 3, s_36);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 7:
+ {
+ int ret = r_R2(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = insert_s(z, z->c, z->c, 1, s_37);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_lengthen_V(z);
+ if (ret <= 0) return ret;
+ }
+ break;
+ case 8:
+ {
+ int ret = r_R2(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = insert_s(z, z->c, z->c, 1, s_38);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_lengthen_V(z);
+ if (ret <= 0) return ret;
+ }
+ break;
+ case 9:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_39);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 10:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_40);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ return 1;
+}
+
+static int r_Step_4(struct SN_env * z) {
+ int among_var;
+ do {
+ int v_1 = z->l - z->c;
+ z->ket = z->c;
+ if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1315024 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
+ among_var = find_among_b(z, a_4, 16, 0);
+ if (!among_var) goto lab0;
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 2, s_41);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 3, s_42);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 4:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_V(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_43);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 5:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_V(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_44);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 6:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_V(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_45);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 7:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 4, s_46);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 8:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 4, s_47);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 9:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_lengthen_V(z);
if (ret < 0) return ret;
}
break;
}
- lab3:
- z->c = z->l - m5;
- }
- { int m9 = z->l - z->c; (void)m9;
- if (out_grouping_b(z, g_v_I, 73, 232, 0)) goto lab8;
- { int m_test10 = z->l - z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab8;
- if (!find_among_b(z, a_5, 4)) goto lab8;
- if (out_grouping_b(z, g_v, 97, 232, 0)) goto lab8;
- z->c = z->l - m_test10;
- }
+ break;
+ lab0:
+ z->c = z->l - v_1;
z->ket = z->c;
- if (z->c <= z->lb) goto lab8;
- z->c--;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1310848 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
+ if (!find_among_b(z, a_5, 3, 0)) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int v_2 = z->l - z->c;
+ if (!(eq_s_b(z, 3, s_48))) goto lab1;
+ if (z->c > z->lb) goto lab1;
+ return 0;
+ lab1:
+ z->c = z->l - v_2;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- lab8:
- z->c = z->l - m9;
+ {
+ int ret = r_lengthen_V(z);
+ if (ret <= 0) return ret;
+ }
+ } while (0);
+ return 1;
+}
+
+static int r_Step_7(struct SN_env * z) {
+ int among_var;
+ z->ket = z->c;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] != 116) return 0;
+ among_var = find_among_b(z, a_6, 3, 0);
+ if (!among_var) return 0;
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_from_s(z, 1, s_49);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_from_s(z, 1, s_50);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = slice_from_s(z, 1, s_51);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ return 1;
+}
+
+static int r_Step_6(struct SN_env * z) {
+ int among_var;
+ z->ket = z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((98532828 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
+ among_var = find_among_b(z, a_7, 22, 0);
+ if (!among_var) return 0;
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_from_s(z, 1, s_52);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_from_s(z, 1, s_53);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = slice_from_s(z, 1, s_54);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 4:
+ {
+ int ret = slice_from_s(z, 1, s_55);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 5:
+ {
+ int ret = slice_from_s(z, 1, s_56);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 6:
+ {
+ int ret = slice_from_s(z, 1, s_57);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 7:
+ {
+ int ret = slice_from_s(z, 1, s_58);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 8:
+ {
+ int ret = slice_from_s(z, 1, s_59);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 9:
+ {
+ int ret = slice_from_s(z, 1, s_60);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 10:
+ {
+ int ret = slice_from_s(z, 1, s_61);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 11:
+ {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab0;
+ z->c--;
+ if (z->c > z->lb) goto lab0;
+ return 0;
+ lab0:
+ z->c = z->l - v_1;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_62);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 12:
+ {
+ int ret = slice_from_s(z, 1, s_63);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 13:
+ {
+ int ret = slice_from_s(z, 1, s_64);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 14:
+ {
+ int ret = slice_from_s(z, 1, s_65);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 15:
+ {
+ int ret = slice_from_s(z, 1, s_66);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 16:
+ {
+ int ret = slice_from_s(z, 1, s_67);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 17:
+ {
+ int ret = slice_from_s(z, 1, s_68);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 18:
+ {
+ int ret = slice_from_s(z, 1, s_69);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 19:
+ {
+ int ret = slice_from_s(z, 1, s_70);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 20:
+ {
+ int ret = slice_from_s(z, 1, s_71);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ return 1;
+}
+
+static int r_Step_1c(struct SN_env * z) {
+ int among_var;
+ z->ket = z->c;
+ if (z->c <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 116)) return 0;
+ among_var = find_among_b(z, a_8, 2, 0);
+ if (!among_var) return 0;
+ z->bra = z->c;
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = r_C(z);
+ if (ret <= 0) return ret;
+ }
+ switch (among_var) {
+ case 1:
+ {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'n') goto lab0;
+ z->c--;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ return 0;
+ lab0:
+ z->c = z->l - v_1;
+ }
+ do {
+ int v_2 = z->l - z->c;
+ if (!(eq_s_b(z, 2, s_72))) goto lab1;
+ if (z->c > z->lb) goto lab1;
+ {
+ int ret = slice_from_s(z, 1, s_73);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab1:
+ z->c = z->l - v_2;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ } while (0);
+ break;
+ case 2:
+ {
+ int v_3 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'h') goto lab2;
+ z->c--;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab2;
+ if (ret < 0) return ret;
+ }
+ return 0;
+ lab2:
+ z->c = z->l - v_3;
+ }
+ {
+ int v_4 = z->l - z->c;
+ if (!(eq_s_b(z, 2, s_74))) goto lab3;
+ if (z->c > z->lb) goto lab3;
+ return 0;
+ lab3:
+ z->c = z->l - v_4;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ return 1;
+}
+
+static int r_Lose_prefix(struct SN_env * z) {
+ int among_var;
+ z->bra = z->c;
+ if (!(eq_s(z, 2, s_75))) return 0;
+ z->ket = z->c;
+ {
+ int v_1 = z->c;
+ if (z->c + 3 > z->l) return 0;
+ z->c += 3;
+ z->c = v_1;
+ }
+ {
+ int v_2 = z->c;
+ while (1) {
+ int v_3 = z->c;
+ do {
+ int v_4 = z->c;
+ if (!(eq_s(z, 2, s_76))) goto lab1;
+ break;
+ lab1:
+ z->c = v_4;
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab0;
+ } while (0);
+ break;
+ lab0:
+ z->c = v_3;
+ if (z->c >= z->l) return 0;
+ z->c++;
+ }
+ while (1) {
+ int v_5 = z->c;
+ do {
+ int v_6 = z->c;
+ if (!(eq_s(z, 2, s_77))) goto lab3;
+ break;
+ lab3:
+ z->c = v_6;
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
+ } while (0);
+ continue;
+ lab2:
+ z->c = v_5;
+ break;
+ }
+ if (z->c < z->l) goto lab4;
+ return 0;
+ lab4:
+ z->c = v_2;
+ }
+ if (z->c + 2 >= z->l || z->p[z->c + 2] >> 5 != 3 || !((1314818 >> (z->p[z->c + 2] & 0x1f)) & 1)) among_var = -1; else
+ among_var = find_among(z, a_9, 6, 0);
+ switch (among_var) {
+ case 1:
+ return 0;
+ break;
+ }
+ ((SN_local *)z)->b_GE_removed = 1;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int v_7 = z->c;
+ z->bra = z->c;
+ if (z->c >= z->l || (z->p[z->c + 0] != 235 && z->p[z->c + 0] != 239)) goto lab5;
+ among_var = find_among(z, a_10, 2, 0);
+ if (!among_var) goto lab5;
+ z->ket = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_from_s(z, 1, s_78);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_from_s(z, 1, s_79);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ lab5:
+ z->c = v_7;
+ }
+ return 1;
+}
+
+static int r_Lose_infix(struct SN_env * z) {
+ int among_var;
+ if (z->c >= z->l) return 0;
+ z->c++;
+ while (1) {
+ z->bra = z->c;
+ if (!(eq_s(z, 2, s_80))) goto lab0;
+ z->ket = z->c;
+ break;
+ lab0:
+ if (z->c >= z->l) return 0;
+ z->c++;
+ }
+ {
+ int v_1 = z->c;
+ if (z->c + 3 > z->l) return 0;
+ z->c += 3;
+ z->c = v_1;
+ }
+ {
+ int v_2 = z->c;
+ while (1) {
+ int v_3 = z->c;
+ do {
+ int v_4 = z->c;
+ if (!(eq_s(z, 2, s_81))) goto lab2;
+ break;
+ lab2:
+ z->c = v_4;
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab1;
+ } while (0);
+ break;
+ lab1:
+ z->c = v_3;
+ if (z->c >= z->l) return 0;
+ z->c++;
+ }
+ while (1) {
+ int v_5 = z->c;
+ do {
+ int v_6 = z->c;
+ if (!(eq_s(z, 2, s_82))) goto lab4;
+ break;
+ lab4:
+ z->c = v_6;
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab3;
+ } while (0);
+ continue;
+ lab3:
+ z->c = v_5;
+ break;
+ }
+ if (z->c < z->l) goto lab5;
+ return 0;
+ lab5:
+ z->c = v_2;
+ }
+ ((SN_local *)z)->b_GE_removed = 1;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int v_7 = z->c;
+ z->bra = z->c;
+ if (z->c >= z->l || (z->p[z->c + 0] != 235 && z->p[z->c + 0] != 239)) goto lab6;
+ among_var = find_among(z, a_11, 2, 0);
+ if (!among_var) goto lab6;
+ z->ket = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_from_s(z, 1, s_83);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_from_s(z, 1, s_84);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ lab6:
+ z->c = v_7;
+ }
+ return 1;
+}
+
+static int r_measure(struct SN_env * z) {
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ while (1) {
+ if (out_grouping(z, g_v, 97, 252, 0)) goto lab1;
+ continue;
+ lab1:
+ break;
+ }
+ {
+ int v_2 = 1;
+ while (1) {
+ int v_3 = z->c;
+ do {
+ int v_4 = z->c;
+ if (!(eq_s(z, 2, s_85))) goto lab3;
+ break;
+ lab3:
+ z->c = v_4;
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
+ } while (0);
+ v_2--;
+ continue;
+ lab2:
+ z->c = v_3;
+ break;
+ }
+ if (v_2 > 0) goto lab0;
+ }
+ if (out_grouping(z, g_v, 97, 252, 0)) goto lab0;
+ ((SN_local *)z)->i_p1 = z->c;
+ while (1) {
+ if (out_grouping(z, g_v, 97, 252, 0)) goto lab4;
+ continue;
+ lab4:
+ break;
+ }
+ {
+ int v_5 = 1;
+ while (1) {
+ int v_6 = z->c;
+ do {
+ int v_7 = z->c;
+ if (!(eq_s(z, 2, s_86))) goto lab6;
+ break;
+ lab6:
+ z->c = v_7;
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab5;
+ } while (0);
+ v_5--;
+ continue;
+ lab5:
+ z->c = v_6;
+ break;
+ }
+ if (v_5 > 0) goto lab0;
+ }
+ if (out_grouping(z, g_v, 97, 252, 0)) goto lab0;
+ ((SN_local *)z)->i_p2 = z->c;
+ lab0:
+ z->c = v_1;
}
return 1;
}
extern int dutch_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_prelude(z);
+ int b_stemmed;
+ b_stemmed = 0;
+ {
+ int ret = r_measure(z);
+ if (ret <= 0) return ret;
+ }
+ z->lb = z->c; z->c = z->l;
+ {
+ int v_1 = z->l - z->c;
+ {
+ int ret = r_Step_1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ b_stemmed = 1;
+ lab0:
+ z->c = z->l - v_1;
+ }
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_Step_2(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- z->c = c1;
+ b_stemmed = 1;
+ lab1:
+ z->c = z->l - v_2;
}
- { int c2 = z->c;
- { int ret = r_mark_regions(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_Step_3(z);
+ if (ret == 0) goto lab2;
if (ret < 0) return ret;
}
- z->c = c2;
+ b_stemmed = 1;
+ lab2:
+ z->c = z->l - v_3;
+ }
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_Step_4(z);
+ if (ret == 0) goto lab3;
+ if (ret < 0) return ret;
+ }
+ b_stemmed = 1;
+ lab3:
+ z->c = z->l - v_4;
+ }
+ z->c = z->lb;
+ ((SN_local *)z)->b_GE_removed = 0;
+ {
+ int v_5 = z->c;
+ {
+ int v_6 = z->c;
+ {
+ int ret = r_Lose_prefix(z);
+ if (ret == 0) goto lab4;
+ if (ret < 0) return ret;
+ }
+ z->c = v_6;
+ {
+ int ret = r_measure(z);
+ if (ret < 0) return ret;
+ }
+ }
+ lab4:
+ z->c = v_5;
}
z->lb = z->c; z->c = z->l;
-
-
- { int ret = r_standard_suffix(z);
- if (ret < 0) return ret;
+ {
+ int v_7 = z->l - z->c;
+ if (!((SN_local *)z)->b_GE_removed) goto lab5;
+ b_stemmed = 1;
+ {
+ int ret = r_Step_1c(z);
+ if (ret == 0) goto lab5;
+ if (ret < 0) return ret;
+ }
+ lab5:
+ z->c = z->l - v_7;
}
z->c = z->lb;
- { int c3 = z->c;
- { int ret = r_postlude(z);
+ ((SN_local *)z)->b_GE_removed = 0;
+ {
+ int v_8 = z->c;
+ {
+ int v_9 = z->c;
+ {
+ int ret = r_Lose_infix(z);
+ if (ret == 0) goto lab6;
+ if (ret < 0) return ret;
+ }
+ z->c = v_9;
+ {
+ int ret = r_measure(z);
+ if (ret < 0) return ret;
+ }
+ }
+ lab6:
+ z->c = v_8;
+ }
+ z->lb = z->c; z->c = z->l;
+ {
+ int v_10 = z->l - z->c;
+ if (!((SN_local *)z)->b_GE_removed) goto lab7;
+ b_stemmed = 1;
+ {
+ int ret = r_Step_1c(z);
+ if (ret == 0) goto lab7;
if (ret < 0) return ret;
}
- z->c = c3;
+ lab7:
+ z->c = z->l - v_10;
}
+ z->c = z->lb;
+ z->lb = z->c; z->c = z->l;
+ {
+ int v_11 = z->l - z->c;
+ {
+ int ret = r_Step_7(z);
+ if (ret == 0) goto lab8;
+ if (ret < 0) return ret;
+ }
+ b_stemmed = 1;
+ lab8:
+ z->c = z->l - v_11;
+ }
+ {
+ int v_12 = z->l - z->c;
+ if (!b_stemmed) goto lab9;
+ {
+ int ret = r_Step_6(z);
+ if (ret == 0) goto lab9;
+ if (ret < 0) return ret;
+ }
+ lab9:
+ z->c = z->l - v_12;
+ }
+ z->c = z->lb;
return 1;
}
-extern struct SN_env * dutch_ISO_8859_1_create_env(void) { return SN_create_env(0, 4); }
+extern struct SN_env * dutch_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->b_GE_removed = 0;
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->s_ch = NULL;
-extern void dutch_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+ if ((((SN_local *)z)->s_ch = create_s()) == NULL) {
+ dutch_ISO_8859_1_close_env(z);
+ return NULL;
+ }
+ }
+ return z;
+}
+
+extern void dutch_ISO_8859_1_close_env(struct SN_env * z) {
+ if (z) {
+ lose_s(((SN_local *)z)->s_ch);
+ }
+ SN_delete_env(z);
+}
--- /dev/null
+/* Generated from dutch_porter.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
+
+#include "stem_ISO_8859_1_dutch_porter.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ unsigned char b_e_found;
+};
+
+typedef struct SN_local SN_local;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern int dutch_porter_ISO_8859_1_stem(struct SN_env * z);
+#ifdef __cplusplus
+}
+#endif
+
+static int r_standard_suffix(struct SN_env * z);
+static int r_undouble(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_en_ending(struct SN_env * z);
+static int r_e_ending(struct SN_env * z);
+static int r_postlude(struct SN_env * z);
+static int r_prelude(struct SN_env * z);
+
+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[] = { 'Y' };
+static const symbol s_6[] = { 'I' };
+static const symbol s_7[] = { 'Y' };
+static const symbol s_8[] = { 'y' };
+static const symbol s_9[] = { 'i' };
+static const symbol s_10[] = { 'g', 'e', 'm' };
+static const symbol s_11[] = { 'h', 'e', 'i', 'd' };
+static const symbol s_12[] = { 'h', 'e', 'i', 'd' };
+static const symbol s_13[] = { 'e', 'n' };
+static const symbol s_14[] = { 'i', 'g' };
+
+static const symbol s_0_1[1] = { 0xE1 };
+static const symbol s_0_2[1] = { 0xE4 };
+static const symbol s_0_3[1] = { 0xE9 };
+static const symbol s_0_4[1] = { 0xEB };
+static const symbol s_0_5[1] = { 0xED };
+static const symbol s_0_6[1] = { 0xEF };
+static const symbol s_0_7[1] = { 0xF3 };
+static const symbol s_0_8[1] = { 0xF6 };
+static const symbol s_0_9[1] = { 0xFA };
+static const symbol s_0_10[1] = { 0xFC };
+static const struct among a_0[11] = {
+{ 0, 0, 0, 6, 0},
+{ 1, s_0_1, -1, 1, 0},
+{ 1, s_0_2, -2, 1, 0},
+{ 1, s_0_3, -3, 2, 0},
+{ 1, s_0_4, -4, 2, 0},
+{ 1, s_0_5, -5, 3, 0},
+{ 1, s_0_6, -6, 3, 0},
+{ 1, s_0_7, -7, 4, 0},
+{ 1, s_0_8, -8, 4, 0},
+{ 1, s_0_9, -9, 5, 0},
+{ 1, s_0_10, -10, 5, 0}
+};
+
+static const symbol s_1_1[1] = { 'I' };
+static const symbol s_1_2[1] = { 'Y' };
+static const struct among a_1[3] = {
+{ 0, 0, 0, 3, 0},
+{ 1, s_1_1, -1, 2, 0},
+{ 1, s_1_2, -2, 1, 0}
+};
+
+static const symbol s_2_0[2] = { 'd', 'd' };
+static const symbol s_2_1[2] = { 'k', 'k' };
+static const symbol s_2_2[2] = { 't', 't' };
+static const struct among a_2[3] = {
+{ 2, s_2_0, 0, -1, 0},
+{ 2, s_2_1, 0, -1, 0},
+{ 2, s_2_2, 0, -1, 0}
+};
+
+static const symbol s_3_0[3] = { 'e', 'n', 'e' };
+static const symbol s_3_1[2] = { 's', 'e' };
+static const symbol s_3_2[2] = { 'e', 'n' };
+static const symbol s_3_3[5] = { 'h', 'e', 'd', 'e', 'n' };
+static const symbol s_3_4[1] = { 's' };
+static const struct among a_3[5] = {
+{ 3, s_3_0, 0, 2, 0},
+{ 2, s_3_1, 0, 3, 0},
+{ 2, s_3_2, 0, 2, 0},
+{ 5, s_3_3, -1, 1, 0},
+{ 1, s_3_4, 0, 3, 0}
+};
+
+static const symbol s_4_0[3] = { 'e', 'n', 'd' };
+static const symbol s_4_1[2] = { 'i', 'g' };
+static const symbol s_4_2[3] = { 'i', 'n', 'g' };
+static const symbol s_4_3[4] = { 'l', 'i', 'j', 'k' };
+static const symbol s_4_4[4] = { 'b', 'a', 'a', 'r' };
+static const symbol s_4_5[3] = { 'b', 'a', 'r' };
+static const struct among a_4[6] = {
+{ 3, s_4_0, 0, 1, 0},
+{ 2, s_4_1, 0, 2, 0},
+{ 3, s_4_2, 0, 1, 0},
+{ 4, s_4_3, 0, 3, 0},
+{ 4, s_4_4, 0, 4, 0},
+{ 3, s_4_5, 0, 5, 0}
+};
+
+static const symbol s_5_0[2] = { 'a', 'a' };
+static const symbol s_5_1[2] = { 'e', 'e' };
+static const symbol s_5_2[2] = { 'o', 'o' };
+static const symbol s_5_3[2] = { 'u', 'u' };
+static const struct among a_5[4] = {
+{ 2, s_5_0, 0, -1, 0},
+{ 2, s_5_1, 0, -1, 0},
+{ 2, s_5_2, 0, -1, 0},
+{ 2, s_5_3, 0, -1, 0}
+};
+
+static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
+
+static const unsigned char g_v_I[] = { 1, 0, 0, 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
+
+static const unsigned char g_v_j[] = { 17, 67, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
+
+static int r_prelude(struct SN_env * z) {
+ int among_var;
+ {
+ int v_1 = z->c;
+ while (1) {
+ int v_2 = z->c;
+ z->bra = z->c;
+ if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((340306450 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else
+ among_var = find_among(z, a_0, 11, 0);
+ z->ket = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_from_s(z, 1, s_0);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_from_s(z, 1, s_1);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = slice_from_s(z, 1, s_2);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 4:
+ {
+ int ret = slice_from_s(z, 1, s_3);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 5:
+ {
+ int ret = slice_from_s(z, 1, s_4);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 6:
+ if (z->c >= z->l) goto lab0;
+ z->c++;
+ break;
+ }
+ continue;
+ lab0:
+ z->c = v_2;
+ break;
+ }
+ z->c = v_1;
+ }
+ {
+ int v_3 = z->c;
+ z->bra = z->c;
+ if (z->c == z->l || z->p[z->c] != 'y') { z->c = v_3; goto lab1; }
+ z->c++;
+ z->ket = z->c;
+ {
+ int ret = slice_from_s(z, 1, s_5);
+ if (ret < 0) return ret;
+ }
+ lab1:
+ ;
+ }
+ while (1) {
+ int v_4 = z->c;
+ {
+ int ret = out_grouping(z, g_v, 97, 232, 1);
+ if (ret < 0) goto lab2;
+ z->c += ret;
+ }
+ {
+ int v_5 = z->c;
+ z->bra = z->c;
+ do {
+ int v_6 = z->c;
+ if (z->c == z->l || z->p[z->c] != 'i') goto lab4;
+ z->c++;
+ z->ket = z->c;
+ {
+ int v_7 = z->c;
+ if (in_grouping(z, g_v, 97, 232, 0)) goto lab5;
+ {
+ int ret = slice_from_s(z, 1, s_6);
+ if (ret < 0) return ret;
+ }
+ lab5:
+ z->c = v_7;
+ }
+ break;
+ lab4:
+ z->c = v_6;
+ if (z->c == z->l || z->p[z->c] != 'y') { z->c = v_5; goto lab3; }
+ z->c++;
+ z->ket = z->c;
+ {
+ int ret = slice_from_s(z, 1, s_7);
+ if (ret < 0) return ret;
+ }
+ } while (0);
+ lab3:
+ ;
+ }
+ continue;
+ lab2:
+ z->c = v_4;
+ break;
+ }
+ return 1;
+}
+
+static int r_mark_regions(struct SN_env * z) {
+ int i_x;
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ if (z->c + 3 > z->l) return 0;
+ z->c += 3;
+ i_x = z->c;
+ z->c = v_1;
+ }
+ {
+ int ret = out_grouping(z, g_v, 97, 232, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
+ }
+ {
+ int ret = in_grouping(z, g_v, 97, 232, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
+ }
+ ((SN_local *)z)->i_p1 = z->c;
+ if (((SN_local *)z)->i_p1 >= i_x) goto lab0;
+ ((SN_local *)z)->i_p1 = i_x;
+lab0:
+ {
+ int ret = out_grouping(z, g_v, 97, 232, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
+ }
+ {
+ int ret = in_grouping(z, g_v, 97, 232, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
+ }
+ ((SN_local *)z)->i_p2 = z->c;
+ return 1;
+}
+
+static int r_postlude(struct SN_env * z) {
+ int among_var;
+ while (1) {
+ int v_1 = z->c;
+ z->bra = z->c;
+ if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 89)) among_var = 3; else
+ among_var = find_among(z, a_1, 3, 0);
+ z->ket = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_from_s(z, 1, s_8);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_from_s(z, 1, s_9);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ if (z->c >= z->l) goto lab0;
+ z->c++;
+ break;
+ }
+ continue;
+ lab0:
+ z->c = v_1;
+ break;
+ }
+ return 1;
+}
+
+static int r_R1(struct SN_env * z) {
+ return ((SN_local *)z)->i_p1 <= z->c;
+}
+
+static int r_R2(struct SN_env * z) {
+ return ((SN_local *)z)->i_p2 <= z->c;
+}
+
+static int r_undouble(struct SN_env * z) {
+ {
+ int v_1 = z->l - z->c;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1050640 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
+ if (!find_among_b(z, a_2, 3, 0)) return 0;
+ z->c = z->l - v_1;
+ }
+ z->ket = z->c;
+ if (z->c <= z->lb) return 0;
+ z->c--;
+ z->bra = z->c;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ return 1;
+}
+
+static int r_e_ending(struct SN_env * z) {
+ ((SN_local *)z)->b_e_found = 0;
+ z->ket = z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
+ z->c--;
+ z->bra = z->c;
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int v_1 = z->l - z->c;
+ if (out_grouping_b(z, g_v, 97, 232, 0)) return 0;
+ z->c = z->l - v_1;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ ((SN_local *)z)->b_e_found = 1;
+ return r_undouble(z);
+}
+
+static int r_en_ending(struct SN_env * z) {
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int v_1 = z->l - z->c;
+ if (out_grouping_b(z, g_v, 97, 232, 0)) return 0;
+ z->c = z->l - v_1;
+ {
+ int v_2 = z->l - z->c;
+ if (!(eq_s_b(z, 3, s_10))) goto lab0;
+ return 0;
+ lab0:
+ z->c = z->l - v_2;
+ }
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ return r_undouble(z);
+}
+
+static int r_standard_suffix(struct SN_env * z) {
+ int among_var;
+ {
+ int v_1 = z->l - z->c;
+ z->ket = z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((540704 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
+ among_var = find_among_b(z, a_3, 5, 0);
+ if (!among_var) goto lab0;
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_from_s(z, 4, s_11);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = r_en_ending(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ if (out_grouping_b(z, g_v_j, 97, 232, 0)) goto lab0;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ lab0:
+ z->c = z->l - v_1;
+ }
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_e_ending(z);
+ if (ret < 0) return ret;
+ }
+ z->c = z->l - v_2;
+ }
+ {
+ int v_3 = z->l - z->c;
+ z->ket = z->c;
+ if (!(eq_s_b(z, 4, s_12))) goto lab1;
+ z->bra = z->c;
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab1;
+ if (ret < 0) return ret;
+ }
+ {
+ int v_4 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab2;
+ z->c--;
+ goto lab1;
+ lab2:
+ z->c = z->l - v_4;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ z->ket = z->c;
+ if (!(eq_s_b(z, 2, s_13))) goto lab1;
+ z->bra = z->c;
+ {
+ int ret = r_en_ending(z);
+ if (ret == 0) goto lab1;
+ if (ret < 0) return ret;
+ }
+ lab1:
+ z->c = z->l - v_3;
+ }
+ {
+ int v_5 = z->l - z->c;
+ z->ket = z->c;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((264336 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3;
+ among_var = find_among_b(z, a_4, 6, 0);
+ if (!among_var) goto lab3;
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab3;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ do {
+ int v_6 = z->l - z->c;
+ z->ket = z->c;
+ if (!(eq_s_b(z, 2, s_14))) goto lab4;
+ z->bra = z->c;
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab4;
+ if (ret < 0) return ret;
+ }
+ {
+ int v_7 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab5;
+ z->c--;
+ goto lab4;
+ lab5:
+ z->c = z->l - v_7;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ lab4:
+ z->c = z->l - v_6;
+ {
+ int ret = r_undouble(z);
+ if (ret == 0) goto lab3;
+ if (ret < 0) return ret;
+ }
+ } while (0);
+ break;
+ case 2:
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab3;
+ if (ret < 0) return ret;
+ }
+ {
+ int v_8 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6;
+ z->c--;
+ goto lab3;
+ lab6:
+ z->c = z->l - v_8;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab3;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = r_e_ending(z);
+ if (ret == 0) goto lab3;
+ if (ret < 0) return ret;
+ }
+ break;
+ case 4:
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab3;
+ if (ret < 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 5:
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab3;
+ if (ret < 0) return ret;
+ }
+ if (!((SN_local *)z)->b_e_found) goto lab3;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ lab3:
+ z->c = z->l - v_5;
+ }
+ {
+ int v_9 = z->l - z->c;
+ if (out_grouping_b(z, g_v_I, 73, 232, 0)) goto lab7;
+ {
+ int v_10 = z->l - z->c;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((2129954 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab7;
+ if (!find_among_b(z, a_5, 4, 0)) goto lab7;
+ if (out_grouping_b(z, g_v, 97, 232, 0)) goto lab7;
+ z->c = z->l - v_10;
+ }
+ z->ket = z->c;
+ if (z->c <= z->lb) goto lab7;
+ z->c--;
+ z->bra = z->c;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ lab7:
+ z->c = z->l - v_9;
+ }
+ return 1;
+}
+
+extern int dutch_porter_ISO_8859_1_stem(struct SN_env * z) {
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_prelude(z);
+ if (ret < 0) return ret;
+ }
+ z->c = v_1;
+ }
+ {
+ int v_2 = z->c;
+ {
+ int ret = r_mark_regions(z);
+ if (ret < 0) return ret;
+ }
+ z->c = v_2;
+ }
+ z->lb = z->c; z->c = z->l;
+ {
+ int ret = r_standard_suffix(z);
+ if (ret < 0) return ret;
+ }
+ z->c = z->lb;
+ {
+ int v_3 = z->c;
+ {
+ int ret = r_postlude(z);
+ if (ret < 0) return ret;
+ }
+ z->c = v_3;
+ }
+ return 1;
+}
+
+extern struct SN_env * dutch_porter_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->b_e_found = 0;
+ }
+ return z;
+}
+
+extern void dutch_porter_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
+
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from english.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_english.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ unsigned char b_Y_found;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
-static int r_exception2(struct SN_env * z);
+
static int r_exception1(struct SN_env * z);
static int r_Step_5(struct SN_env * z);
static int r_Step_4(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
static int r_postlude(struct SN_env * z);
static int r_prelude(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * english_ISO_8859_1_create_env(void);
-extern void english_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 'Y' };
+static const symbol s_1[] = { 'Y' };
+static const symbol s_2[] = { 'p', 'a', 's', 't' };
+static const symbol s_3[] = { 's', 's' };
+static const symbol s_4[] = { 'i' };
+static const symbol s_5[] = { 'i', 'e' };
+static const symbol s_6[] = { 'e', 'e' };
+static const symbol s_7[] = { 'i', 'e' };
+static const symbol s_8[] = { 'e' };
+static const symbol s_9[] = { 'e' };
+static const symbol s_10[] = { 'i' };
+static const symbol s_11[] = { 't', 'i', 'o', 'n' };
+static const symbol s_12[] = { 'e', 'n', 'c', 'e' };
+static const symbol s_13[] = { 'a', 'n', 'c', 'e' };
+static const symbol s_14[] = { 'a', 'b', 'l', 'e' };
+static const symbol s_15[] = { 'e', 'n', 't' };
+static const symbol s_16[] = { 'i', 'z', 'e' };
+static const symbol s_17[] = { 'a', 't', 'e' };
+static const symbol s_18[] = { 'a', 'l' };
+static const symbol s_19[] = { 'f', 'u', 'l' };
+static const symbol s_20[] = { 'o', 'u', 's' };
+static const symbol s_21[] = { 'i', 'v', 'e' };
+static const symbol s_22[] = { 'b', 'l', 'e' };
+static const symbol s_23[] = { 'o', 'g' };
+static const symbol s_24[] = { 'o', 'g' };
+static const symbol s_25[] = { 'l', 'e', 's', 's' };
+static const symbol s_26[] = { 't', 'i', 'o', 'n' };
+static const symbol s_27[] = { 'a', 't', 'e' };
+static const symbol s_28[] = { 'a', 'l' };
+static const symbol s_29[] = { 'i', 'c' };
+static const symbol s_30[] = { 's', 'k', 'i' };
+static const symbol s_31[] = { 's', 'k', 'y' };
+static const symbol s_32[] = { 'i', 'd', 'l' };
+static const symbol s_33[] = { 'g', 'e', 'n', 't', 'l' };
+static const symbol s_34[] = { 'u', 'g', 'l', 'i' };
+static const symbol s_35[] = { 'e', 'a', 'r', 'l', 'i' };
+static const symbol s_36[] = { 'o', 'n', 'l', 'i' };
+static const symbol s_37[] = { 's', 'i', 'n', 'g', 'l' };
+static const symbol s_38[] = { 'y' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[5] = { 'a', 'r', 's', 'e', 'n' };
static const symbol s_0_1[6] = { 'c', 'o', 'm', 'm', 'u', 'n' };
-static const symbol s_0_2[5] = { 'g', 'e', 'n', 'e', 'r' };
-
-static const struct among a_0[3] =
-{
-{ 5, s_0_0, -1, -1, 0},
-{ 6, s_0_1, -1, -1, 0},
-{ 5, s_0_2, -1, -1, 0}
+static const symbol s_0_2[5] = { 'e', 'm', 'e', 'r', 'g' };
+static const symbol s_0_3[5] = { 'g', 'e', 'n', 'e', 'r' };
+static const symbol s_0_4[5] = { 'i', 'n', 't', 'e', 'r' };
+static const symbol s_0_5[5] = { 'l', 'a', 't', 'e', 'r' };
+static const symbol s_0_6[5] = { 'o', 'r', 'g', 'a', 'n' };
+static const symbol s_0_7[4] = { 'p', 'a', 's', 't' };
+static const symbol s_0_8[7] = { 'u', 'n', 'i', 'v', 'e', 'r', 's' };
+static const struct among a_0[9] = {
+{ 5, s_0_0, 0, -1, 0},
+{ 6, s_0_1, 0, -1, 0},
+{ 5, s_0_2, 0, -1, 0},
+{ 5, s_0_3, 0, -1, 0},
+{ 5, s_0_4, 0, -1, 0},
+{ 5, s_0_5, 0, -1, 0},
+{ 5, s_0_6, 0, -1, 0},
+{ 4, s_0_7, 0, -1, 0},
+{ 7, s_0_8, 0, -1, 0}
};
static const symbol s_1_0[1] = { '\'' };
static const symbol s_1_1[3] = { '\'', 's', '\'' };
static const symbol s_1_2[2] = { '\'', 's' };
-
-static const struct among a_1[3] =
-{
-{ 1, s_1_0, -1, 1, 0},
-{ 3, s_1_1, 0, 1, 0},
-{ 2, s_1_2, -1, 1, 0}
+static const struct among a_1[3] = {
+{ 1, s_1_0, 0, 1, 0},
+{ 3, s_1_1, -1, 1, 0},
+{ 2, s_1_2, 0, 1, 0}
};
static const symbol s_2_0[3] = { 'i', 'e', 'd' };
static const symbol s_2_3[4] = { 's', 's', 'e', 's' };
static const symbol s_2_4[2] = { 's', 's' };
static const symbol s_2_5[2] = { 'u', 's' };
-
-static const struct among a_2[6] =
-{
-{ 3, s_2_0, -1, 2, 0},
-{ 1, s_2_1, -1, 3, 0},
-{ 3, s_2_2, 1, 2, 0},
-{ 4, s_2_3, 1, 1, 0},
-{ 2, s_2_4, 1, -1, 0},
-{ 2, s_2_5, 1, -1, 0}
+static const struct among a_2[6] = {
+{ 3, s_2_0, 0, 2, 0},
+{ 1, s_2_1, 0, 3, 0},
+{ 3, s_2_2, -1, 2, 0},
+{ 4, s_2_3, -2, 1, 0},
+{ 2, s_2_4, -3, -1, 0},
+{ 2, s_2_5, -4, -1, 0}
};
-static const symbol s_3_1[2] = { 'b', 'b' };
-static const symbol s_3_2[2] = { 'd', 'd' };
-static const symbol s_3_3[2] = { 'f', 'f' };
-static const symbol s_3_4[2] = { 'g', 'g' };
-static const symbol s_3_5[2] = { 'b', 'l' };
-static const symbol s_3_6[2] = { 'm', 'm' };
-static const symbol s_3_7[2] = { 'n', 'n' };
-static const symbol s_3_8[2] = { 'p', 'p' };
-static const symbol s_3_9[2] = { 'r', 'r' };
-static const symbol s_3_10[2] = { 'a', 't' };
-static const symbol s_3_11[2] = { 't', 't' };
-static const symbol s_3_12[2] = { 'i', 'z' };
-
-static const struct among a_3[13] =
-{
-{ 0, 0, -1, 3, 0},
-{ 2, s_3_1, 0, 2, 0},
-{ 2, s_3_2, 0, 2, 0},
-{ 2, s_3_3, 0, 2, 0},
-{ 2, s_3_4, 0, 2, 0},
-{ 2, s_3_5, 0, 1, 0},
-{ 2, s_3_6, 0, 2, 0},
-{ 2, s_3_7, 0, 2, 0},
-{ 2, s_3_8, 0, 2, 0},
-{ 2, s_3_9, 0, 2, 0},
-{ 2, s_3_10, 0, 1, 0},
-{ 2, s_3_11, 0, 2, 0},
-{ 2, s_3_12, 0, 1, 0}
+static const symbol s_3_0[4] = { 's', 'u', 'c', 'c' };
+static const symbol s_3_1[4] = { 'p', 'r', 'o', 'c' };
+static const symbol s_3_2[3] = { 'e', 'x', 'c' };
+static const struct among a_3[3] = {
+{ 4, s_3_0, 0, 1, 0},
+{ 4, s_3_1, 0, 1, 0},
+{ 3, s_3_2, 0, 1, 0}
};
-static const symbol s_4_0[2] = { 'e', 'd' };
-static const symbol s_4_1[3] = { 'e', 'e', 'd' };
-static const symbol s_4_2[3] = { 'i', 'n', 'g' };
-static const symbol s_4_3[4] = { 'e', 'd', 'l', 'y' };
-static const symbol s_4_4[5] = { 'e', 'e', 'd', 'l', 'y' };
-static const symbol s_4_5[5] = { 'i', 'n', 'g', 'l', 'y' };
-
-static const struct among a_4[6] =
-{
-{ 2, s_4_0, -1, 2, 0},
-{ 3, s_4_1, 0, 1, 0},
-{ 3, s_4_2, -1, 2, 0},
-{ 4, s_4_3, -1, 2, 0},
-{ 5, s_4_4, 3, 1, 0},
-{ 5, s_4_5, -1, 2, 0}
+static const symbol s_4_0[4] = { 'e', 'v', 'e', 'n' };
+static const symbol s_4_1[4] = { 'c', 'a', 'n', 'n' };
+static const symbol s_4_2[3] = { 'i', 'n', 'n' };
+static const symbol s_4_3[4] = { 'e', 'a', 'r', 'r' };
+static const symbol s_4_4[4] = { 'h', 'e', 'r', 'r' };
+static const symbol s_4_5[3] = { 'o', 'u', 't' };
+static const symbol s_4_6[1] = { 'y' };
+static const struct among a_4[7] = {
+{ 4, s_4_0, 0, 2, 0},
+{ 4, s_4_1, 0, 2, 0},
+{ 3, s_4_2, 0, 2, 0},
+{ 4, s_4_3, 0, 2, 0},
+{ 4, s_4_4, 0, 2, 0},
+{ 3, s_4_5, 0, 2, 0},
+{ 1, s_4_6, 0, 1, 0}
};
-static const symbol s_5_0[4] = { 'a', 'n', 'c', 'i' };
-static const symbol s_5_1[4] = { 'e', 'n', 'c', 'i' };
-static const symbol s_5_2[3] = { 'o', 'g', 'i' };
-static const symbol s_5_3[2] = { 'l', 'i' };
-static const symbol s_5_4[3] = { 'b', 'l', 'i' };
-static const symbol s_5_5[4] = { 'a', 'b', 'l', 'i' };
-static const symbol s_5_6[4] = { 'a', 'l', 'l', 'i' };
-static const symbol s_5_7[5] = { 'f', 'u', 'l', 'l', 'i' };
-static const symbol s_5_8[6] = { 'l', 'e', 's', 's', 'l', 'i' };
-static const symbol s_5_9[5] = { 'o', 'u', 's', 'l', 'i' };
-static const symbol s_5_10[5] = { 'e', 'n', 't', 'l', 'i' };
-static const symbol s_5_11[5] = { 'a', 'l', 'i', 't', 'i' };
-static const symbol s_5_12[6] = { 'b', 'i', 'l', 'i', 't', 'i' };
-static const symbol s_5_13[5] = { 'i', 'v', 'i', 't', 'i' };
-static const symbol s_5_14[6] = { 't', 'i', 'o', 'n', 'a', 'l' };
-static const symbol s_5_15[7] = { 'a', 't', 'i', 'o', 'n', 'a', 'l' };
-static const symbol s_5_16[5] = { 'a', 'l', 'i', 's', 'm' };
-static const symbol s_5_17[5] = { 'a', 't', 'i', 'o', 'n' };
-static const symbol s_5_18[7] = { 'i', 'z', 'a', 't', 'i', 'o', 'n' };
-static const symbol s_5_19[4] = { 'i', 'z', 'e', 'r' };
-static const symbol s_5_20[4] = { 'a', 't', 'o', 'r' };
-static const symbol s_5_21[7] = { 'i', 'v', 'e', 'n', 'e', 's', 's' };
-static const symbol s_5_22[7] = { 'f', 'u', 'l', 'n', 'e', 's', 's' };
-static const symbol s_5_23[7] = { 'o', 'u', 's', 'n', 'e', 's', 's' };
-
-static const struct among a_5[24] =
-{
-{ 4, s_5_0, -1, 3, 0},
-{ 4, s_5_1, -1, 2, 0},
-{ 3, s_5_2, -1, 13, 0},
-{ 2, s_5_3, -1, 15, 0},
-{ 3, s_5_4, 3, 12, 0},
-{ 4, s_5_5, 4, 4, 0},
-{ 4, s_5_6, 3, 8, 0},
-{ 5, s_5_7, 3, 9, 0},
-{ 6, s_5_8, 3, 14, 0},
-{ 5, s_5_9, 3, 10, 0},
-{ 5, s_5_10, 3, 5, 0},
-{ 5, s_5_11, -1, 8, 0},
-{ 6, s_5_12, -1, 12, 0},
-{ 5, s_5_13, -1, 11, 0},
-{ 6, s_5_14, -1, 1, 0},
-{ 7, s_5_15, 14, 7, 0},
-{ 5, s_5_16, -1, 8, 0},
-{ 5, s_5_17, -1, 7, 0},
-{ 7, s_5_18, 17, 6, 0},
-{ 4, s_5_19, -1, 6, 0},
-{ 4, s_5_20, -1, 7, 0},
-{ 7, s_5_21, -1, 11, 0},
-{ 7, s_5_22, -1, 9, 0},
-{ 7, s_5_23, -1, 10, 0}
+static const symbol s_5_1[2] = { 'e', 'd' };
+static const symbol s_5_2[3] = { 'e', 'e', 'd' };
+static const symbol s_5_3[3] = { 'i', 'n', 'g' };
+static const symbol s_5_4[4] = { 'e', 'd', 'l', 'y' };
+static const symbol s_5_5[5] = { 'e', 'e', 'd', 'l', 'y' };
+static const symbol s_5_6[5] = { 'i', 'n', 'g', 'l', 'y' };
+static const struct among a_5[7] = {
+{ 0, 0, 0, -1, 0},
+{ 2, s_5_1, -1, 2, 0},
+{ 3, s_5_2, -1, 1, 0},
+{ 3, s_5_3, -3, 3, 0},
+{ 4, s_5_4, -4, 2, 0},
+{ 5, s_5_5, -1, 1, 0},
+{ 5, s_5_6, -6, 2, 0}
};
-static const symbol s_6_0[5] = { 'i', 'c', 'a', 't', 'e' };
-static const symbol s_6_1[5] = { 'a', 't', 'i', 'v', 'e' };
-static const symbol s_6_2[5] = { 'a', 'l', 'i', 'z', 'e' };
-static const symbol s_6_3[5] = { 'i', 'c', 'i', 't', 'i' };
-static const symbol s_6_4[4] = { 'i', 'c', 'a', 'l' };
-static const symbol s_6_5[6] = { 't', 'i', 'o', 'n', 'a', 'l' };
-static const symbol s_6_6[7] = { 'a', 't', 'i', 'o', 'n', 'a', 'l' };
-static const symbol s_6_7[3] = { 'f', 'u', 'l' };
-static const symbol s_6_8[4] = { 'n', 'e', 's', 's' };
-
-static const struct among a_6[9] =
-{
-{ 5, s_6_0, -1, 4, 0},
-{ 5, s_6_1, -1, 6, 0},
-{ 5, s_6_2, -1, 3, 0},
-{ 5, s_6_3, -1, 4, 0},
-{ 4, s_6_4, -1, 4, 0},
-{ 6, s_6_5, -1, 1, 0},
-{ 7, s_6_6, 5, 2, 0},
-{ 3, s_6_7, -1, 5, 0},
-{ 4, s_6_8, -1, 5, 0}
+static const symbol s_6_1[2] = { 'b', 'b' };
+static const symbol s_6_2[2] = { 'd', 'd' };
+static const symbol s_6_3[2] = { 'f', 'f' };
+static const symbol s_6_4[2] = { 'g', 'g' };
+static const symbol s_6_5[2] = { 'b', 'l' };
+static const symbol s_6_6[2] = { 'm', 'm' };
+static const symbol s_6_7[2] = { 'n', 'n' };
+static const symbol s_6_8[2] = { 'p', 'p' };
+static const symbol s_6_9[2] = { 'r', 'r' };
+static const symbol s_6_10[2] = { 'a', 't' };
+static const symbol s_6_11[2] = { 't', 't' };
+static const symbol s_6_12[2] = { 'i', 'z' };
+static const struct among a_6[13] = {
+{ 0, 0, 0, 3, 0},
+{ 2, s_6_1, -1, 2, 0},
+{ 2, s_6_2, -2, 2, 0},
+{ 2, s_6_3, -3, 2, 0},
+{ 2, s_6_4, -4, 2, 0},
+{ 2, s_6_5, -5, 1, 0},
+{ 2, s_6_6, -6, 2, 0},
+{ 2, s_6_7, -7, 2, 0},
+{ 2, s_6_8, -8, 2, 0},
+{ 2, s_6_9, -9, 2, 0},
+{ 2, s_6_10, -10, 1, 0},
+{ 2, s_6_11, -11, 2, 0},
+{ 2, s_6_12, -12, 1, 0}
};
-static const symbol s_7_0[2] = { 'i', 'c' };
-static const symbol s_7_1[4] = { 'a', 'n', 'c', 'e' };
-static const symbol s_7_2[4] = { 'e', 'n', 'c', 'e' };
-static const symbol s_7_3[4] = { 'a', 'b', 'l', 'e' };
-static const symbol s_7_4[4] = { 'i', 'b', 'l', 'e' };
-static const symbol s_7_5[3] = { 'a', 't', 'e' };
-static const symbol s_7_6[3] = { 'i', 'v', 'e' };
-static const symbol s_7_7[3] = { 'i', 'z', 'e' };
-static const symbol s_7_8[3] = { 'i', 't', 'i' };
-static const symbol s_7_9[2] = { 'a', 'l' };
-static const symbol s_7_10[3] = { 'i', 's', 'm' };
-static const symbol s_7_11[3] = { 'i', 'o', 'n' };
-static const symbol s_7_12[2] = { 'e', 'r' };
-static const symbol s_7_13[3] = { 'o', 'u', 's' };
-static const symbol s_7_14[3] = { 'a', 'n', 't' };
-static const symbol s_7_15[3] = { 'e', 'n', 't' };
-static const symbol s_7_16[4] = { 'm', 'e', 'n', 't' };
-static const symbol s_7_17[5] = { 'e', 'm', 'e', 'n', 't' };
-
-static const struct among a_7[18] =
-{
-{ 2, s_7_0, -1, 1, 0},
-{ 4, s_7_1, -1, 1, 0},
-{ 4, s_7_2, -1, 1, 0},
-{ 4, s_7_3, -1, 1, 0},
-{ 4, s_7_4, -1, 1, 0},
-{ 3, s_7_5, -1, 1, 0},
-{ 3, s_7_6, -1, 1, 0},
-{ 3, s_7_7, -1, 1, 0},
-{ 3, s_7_8, -1, 1, 0},
-{ 2, s_7_9, -1, 1, 0},
-{ 3, s_7_10, -1, 1, 0},
-{ 3, s_7_11, -1, 2, 0},
-{ 2, s_7_12, -1, 1, 0},
-{ 3, s_7_13, -1, 1, 0},
-{ 3, s_7_14, -1, 1, 0},
-{ 3, s_7_15, -1, 1, 0},
-{ 4, s_7_16, 15, 1, 0},
-{ 5, s_7_17, 16, 1, 0}
+static const symbol s_7_0[4] = { 'a', 'n', 'c', 'i' };
+static const symbol s_7_1[4] = { 'e', 'n', 'c', 'i' };
+static const symbol s_7_2[3] = { 'o', 'g', 'i' };
+static const symbol s_7_3[2] = { 'l', 'i' };
+static const symbol s_7_4[3] = { 'b', 'l', 'i' };
+static const symbol s_7_5[4] = { 'a', 'b', 'l', 'i' };
+static const symbol s_7_6[4] = { 'a', 'l', 'l', 'i' };
+static const symbol s_7_7[5] = { 'f', 'u', 'l', 'l', 'i' };
+static const symbol s_7_8[6] = { 'l', 'e', 's', 's', 'l', 'i' };
+static const symbol s_7_9[5] = { 'o', 'u', 's', 'l', 'i' };
+static const symbol s_7_10[5] = { 'e', 'n', 't', 'l', 'i' };
+static const symbol s_7_11[5] = { 'a', 'l', 'i', 't', 'i' };
+static const symbol s_7_12[6] = { 'b', 'i', 'l', 'i', 't', 'i' };
+static const symbol s_7_13[5] = { 'i', 'v', 'i', 't', 'i' };
+static const symbol s_7_14[6] = { 't', 'i', 'o', 'n', 'a', 'l' };
+static const symbol s_7_15[7] = { 'a', 't', 'i', 'o', 'n', 'a', 'l' };
+static const symbol s_7_16[5] = { 'a', 'l', 'i', 's', 'm' };
+static const symbol s_7_17[5] = { 'a', 't', 'i', 'o', 'n' };
+static const symbol s_7_18[7] = { 'i', 'z', 'a', 't', 'i', 'o', 'n' };
+static const symbol s_7_19[4] = { 'i', 'z', 'e', 'r' };
+static const symbol s_7_20[4] = { 'a', 't', 'o', 'r' };
+static const symbol s_7_21[7] = { 'i', 'v', 'e', 'n', 'e', 's', 's' };
+static const symbol s_7_22[7] = { 'f', 'u', 'l', 'n', 'e', 's', 's' };
+static const symbol s_7_23[7] = { 'o', 'u', 's', 'n', 'e', 's', 's' };
+static const symbol s_7_24[5] = { 'o', 'g', 'i', 's', 't' };
+static const struct among a_7[25] = {
+{ 4, s_7_0, 0, 3, 0},
+{ 4, s_7_1, 0, 2, 0},
+{ 3, s_7_2, 0, 14, 0},
+{ 2, s_7_3, 0, 16, 0},
+{ 3, s_7_4, -1, 12, 0},
+{ 4, s_7_5, -1, 4, 0},
+{ 4, s_7_6, -3, 8, 0},
+{ 5, s_7_7, -4, 9, 0},
+{ 6, s_7_8, -5, 15, 0},
+{ 5, s_7_9, -6, 10, 0},
+{ 5, s_7_10, -7, 5, 0},
+{ 5, s_7_11, 0, 8, 0},
+{ 6, s_7_12, 0, 12, 0},
+{ 5, s_7_13, 0, 11, 0},
+{ 6, s_7_14, 0, 1, 0},
+{ 7, s_7_15, -1, 7, 0},
+{ 5, s_7_16, 0, 8, 0},
+{ 5, s_7_17, 0, 7, 0},
+{ 7, s_7_18, -1, 6, 0},
+{ 4, s_7_19, 0, 6, 0},
+{ 4, s_7_20, 0, 7, 0},
+{ 7, s_7_21, 0, 11, 0},
+{ 7, s_7_22, 0, 9, 0},
+{ 7, s_7_23, 0, 10, 0},
+{ 5, s_7_24, 0, 13, 0}
};
-static const symbol s_8_0[1] = { 'e' };
-static const symbol s_8_1[1] = { 'l' };
-
-static const struct among a_8[2] =
-{
-{ 1, s_8_0, -1, 1, 0},
-{ 1, s_8_1, -1, 2, 0}
+static const symbol s_8_0[5] = { 'i', 'c', 'a', 't', 'e' };
+static const symbol s_8_1[5] = { 'a', 't', 'i', 'v', 'e' };
+static const symbol s_8_2[5] = { 'a', 'l', 'i', 'z', 'e' };
+static const symbol s_8_3[5] = { 'i', 'c', 'i', 't', 'i' };
+static const symbol s_8_4[4] = { 'i', 'c', 'a', 'l' };
+static const symbol s_8_5[6] = { 't', 'i', 'o', 'n', 'a', 'l' };
+static const symbol s_8_6[7] = { 'a', 't', 'i', 'o', 'n', 'a', 'l' };
+static const symbol s_8_7[3] = { 'f', 'u', 'l' };
+static const symbol s_8_8[4] = { 'n', 'e', 's', 's' };
+static const struct among a_8[9] = {
+{ 5, s_8_0, 0, 4, 0},
+{ 5, s_8_1, 0, 6, 0},
+{ 5, s_8_2, 0, 3, 0},
+{ 5, s_8_3, 0, 4, 0},
+{ 4, s_8_4, 0, 4, 0},
+{ 6, s_8_5, 0, 1, 0},
+{ 7, s_8_6, -1, 2, 0},
+{ 3, s_8_7, 0, 5, 0},
+{ 4, s_8_8, 0, 5, 0}
};
-static const symbol s_9_0[7] = { 's', 'u', 'c', 'c', 'e', 'e', 'd' };
-static const symbol s_9_1[7] = { 'p', 'r', 'o', 'c', 'e', 'e', 'd' };
-static const symbol s_9_2[6] = { 'e', 'x', 'c', 'e', 'e', 'd' };
-static const symbol s_9_3[7] = { 'c', 'a', 'n', 'n', 'i', 'n', 'g' };
-static const symbol s_9_4[6] = { 'i', 'n', 'n', 'i', 'n', 'g' };
-static const symbol s_9_5[7] = { 'e', 'a', 'r', 'r', 'i', 'n', 'g' };
-static const symbol s_9_6[7] = { 'h', 'e', 'r', 'r', 'i', 'n', 'g' };
-static const symbol s_9_7[6] = { 'o', 'u', 't', 'i', 'n', 'g' };
-
-static const struct among a_9[8] =
-{
-{ 7, s_9_0, -1, -1, 0},
-{ 7, s_9_1, -1, -1, 0},
-{ 6, s_9_2, -1, -1, 0},
-{ 7, s_9_3, -1, -1, 0},
-{ 6, s_9_4, -1, -1, 0},
-{ 7, s_9_5, -1, -1, 0},
-{ 7, s_9_6, -1, -1, 0},
-{ 6, s_9_7, -1, -1, 0}
+static const symbol s_9_0[2] = { 'i', 'c' };
+static const symbol s_9_1[4] = { 'a', 'n', 'c', 'e' };
+static const symbol s_9_2[4] = { 'e', 'n', 'c', 'e' };
+static const symbol s_9_3[4] = { 'a', 'b', 'l', 'e' };
+static const symbol s_9_4[4] = { 'i', 'b', 'l', 'e' };
+static const symbol s_9_5[3] = { 'a', 't', 'e' };
+static const symbol s_9_6[3] = { 'i', 'v', 'e' };
+static const symbol s_9_7[3] = { 'i', 'z', 'e' };
+static const symbol s_9_8[3] = { 'i', 't', 'i' };
+static const symbol s_9_9[2] = { 'a', 'l' };
+static const symbol s_9_10[3] = { 'i', 's', 'm' };
+static const symbol s_9_11[3] = { 'i', 'o', 'n' };
+static const symbol s_9_12[2] = { 'e', 'r' };
+static const symbol s_9_13[3] = { 'o', 'u', 's' };
+static const symbol s_9_14[3] = { 'a', 'n', 't' };
+static const symbol s_9_15[3] = { 'e', 'n', 't' };
+static const symbol s_9_16[4] = { 'm', 'e', 'n', 't' };
+static const symbol s_9_17[5] = { 'e', 'm', 'e', 'n', 't' };
+static const struct among a_9[18] = {
+{ 2, s_9_0, 0, 1, 0},
+{ 4, s_9_1, 0, 1, 0},
+{ 4, s_9_2, 0, 1, 0},
+{ 4, s_9_3, 0, 1, 0},
+{ 4, s_9_4, 0, 1, 0},
+{ 3, s_9_5, 0, 1, 0},
+{ 3, s_9_6, 0, 1, 0},
+{ 3, s_9_7, 0, 1, 0},
+{ 3, s_9_8, 0, 1, 0},
+{ 2, s_9_9, 0, 1, 0},
+{ 3, s_9_10, 0, 1, 0},
+{ 3, s_9_11, 0, 2, 0},
+{ 2, s_9_12, 0, 1, 0},
+{ 3, s_9_13, 0, 1, 0},
+{ 3, s_9_14, 0, 1, 0},
+{ 3, s_9_15, 0, 1, 0},
+{ 4, s_9_16, -1, 1, 0},
+{ 5, s_9_17, -1, 1, 0}
};
-static const symbol s_10_0[5] = { 'a', 'n', 'd', 'e', 's' };
-static const symbol s_10_1[5] = { 'a', 't', 'l', 'a', 's' };
-static const symbol s_10_2[4] = { 'b', 'i', 'a', 's' };
-static const symbol s_10_3[6] = { 'c', 'o', 's', 'm', 'o', 's' };
-static const symbol s_10_4[5] = { 'd', 'y', 'i', 'n', 'g' };
-static const symbol s_10_5[5] = { 'e', 'a', 'r', 'l', 'y' };
-static const symbol s_10_6[6] = { 'g', 'e', 'n', 't', 'l', 'y' };
-static const symbol s_10_7[4] = { 'h', 'o', 'w', 'e' };
-static const symbol s_10_8[4] = { 'i', 'd', 'l', 'y' };
-static const symbol s_10_9[5] = { 'l', 'y', 'i', 'n', 'g' };
-static const symbol s_10_10[4] = { 'n', 'e', 'w', 's' };
-static const symbol s_10_11[4] = { 'o', 'n', 'l', 'y' };
-static const symbol s_10_12[6] = { 's', 'i', 'n', 'g', 'l', 'y' };
-static const symbol s_10_13[5] = { 's', 'k', 'i', 'e', 's' };
-static const symbol s_10_14[4] = { 's', 'k', 'i', 's' };
-static const symbol s_10_15[3] = { 's', 'k', 'y' };
-static const symbol s_10_16[5] = { 't', 'y', 'i', 'n', 'g' };
-static const symbol s_10_17[4] = { 'u', 'g', 'l', 'y' };
+static const symbol s_10_0[1] = { 'e' };
+static const symbol s_10_1[1] = { 'l' };
+static const struct among a_10[2] = {
+{ 1, s_10_0, 0, 1, 0},
+{ 1, s_10_1, 0, 2, 0}
+};
-static const struct among a_10[18] =
-{
-{ 5, s_10_0, -1, -1, 0},
-{ 5, s_10_1, -1, -1, 0},
-{ 4, s_10_2, -1, -1, 0},
-{ 6, s_10_3, -1, -1, 0},
-{ 5, s_10_4, -1, 3, 0},
-{ 5, s_10_5, -1, 9, 0},
-{ 6, s_10_6, -1, 7, 0},
-{ 4, s_10_7, -1, -1, 0},
-{ 4, s_10_8, -1, 6, 0},
-{ 5, s_10_9, -1, 4, 0},
-{ 4, s_10_10, -1, -1, 0},
-{ 4, s_10_11, -1, 10, 0},
-{ 6, s_10_12, -1, 11, 0},
-{ 5, s_10_13, -1, 2, 0},
-{ 4, s_10_14, -1, 1, 0},
-{ 3, s_10_15, -1, -1, 0},
-{ 5, s_10_16, -1, 5, 0},
-{ 4, s_10_17, -1, 8, 0}
+static const symbol s_11_0[5] = { 'a', 'n', 'd', 'e', 's' };
+static const symbol s_11_1[5] = { 'a', 't', 'l', 'a', 's' };
+static const symbol s_11_2[4] = { 'b', 'i', 'a', 's' };
+static const symbol s_11_3[6] = { 'c', 'o', 's', 'm', 'o', 's' };
+static const symbol s_11_4[5] = { 'e', 'a', 'r', 'l', 'y' };
+static const symbol s_11_5[6] = { 'g', 'e', 'n', 't', 'l', 'y' };
+static const symbol s_11_6[4] = { 'h', 'o', 'w', 'e' };
+static const symbol s_11_7[4] = { 'i', 'd', 'l', 'y' };
+static const symbol s_11_8[4] = { 'n', 'e', 'w', 's' };
+static const symbol s_11_9[4] = { 'o', 'n', 'l', 'y' };
+static const symbol s_11_10[6] = { 's', 'i', 'n', 'g', 'l', 'y' };
+static const symbol s_11_11[5] = { 's', 'k', 'i', 'e', 's' };
+static const symbol s_11_12[4] = { 's', 'k', 'i', 's' };
+static const symbol s_11_13[3] = { 's', 'k', 'y' };
+static const symbol s_11_14[4] = { 'u', 'g', 'l', 'y' };
+static const struct among a_11[15] = {
+{ 5, s_11_0, 0, -1, 0},
+{ 5, s_11_1, 0, -1, 0},
+{ 4, s_11_2, 0, -1, 0},
+{ 6, s_11_3, 0, -1, 0},
+{ 5, s_11_4, 0, 6, 0},
+{ 6, s_11_5, 0, 4, 0},
+{ 4, s_11_6, 0, -1, 0},
+{ 4, s_11_7, 0, 3, 0},
+{ 4, s_11_8, 0, -1, 0},
+{ 4, s_11_9, 0, 7, 0},
+{ 6, s_11_10, 0, 8, 0},
+{ 5, s_11_11, 0, 2, 0},
+{ 4, s_11_12, 0, 1, 0},
+{ 3, s_11_13, 0, -1, 0},
+{ 4, s_11_14, 0, 5, 0}
};
static const unsigned char g_aeo[] = { 17, 64 };
static const unsigned char g_valid_LI[] = { 55, 141, 2 };
-static const symbol s_0[] = { 'Y' };
-static const symbol s_1[] = { 'Y' };
-static const symbol s_2[] = { 's', 's' };
-static const symbol s_3[] = { 'i' };
-static const symbol s_4[] = { 'i', 'e' };
-static const symbol s_5[] = { 'e', 'e' };
-static const symbol s_6[] = { 'e' };
-static const symbol s_7[] = { 'e' };
-static const symbol s_8[] = { 'i' };
-static const symbol s_9[] = { 't', 'i', 'o', 'n' };
-static const symbol s_10[] = { 'e', 'n', 'c', 'e' };
-static const symbol s_11[] = { 'a', 'n', 'c', 'e' };
-static const symbol s_12[] = { 'a', 'b', 'l', 'e' };
-static const symbol s_13[] = { 'e', 'n', 't' };
-static const symbol s_14[] = { 'i', 'z', 'e' };
-static const symbol s_15[] = { 'a', 't', 'e' };
-static const symbol s_16[] = { 'a', 'l' };
-static const symbol s_17[] = { 'f', 'u', 'l' };
-static const symbol s_18[] = { 'o', 'u', 's' };
-static const symbol s_19[] = { 'i', 'v', 'e' };
-static const symbol s_20[] = { 'b', 'l', 'e' };
-static const symbol s_21[] = { 'o', 'g' };
-static const symbol s_22[] = { 'l', 'e', 's', 's' };
-static const symbol s_23[] = { 't', 'i', 'o', 'n' };
-static const symbol s_24[] = { 'a', 't', 'e' };
-static const symbol s_25[] = { 'a', 'l' };
-static const symbol s_26[] = { 'i', 'c' };
-static const symbol s_27[] = { 's', 'k', 'i' };
-static const symbol s_28[] = { 's', 'k', 'y' };
-static const symbol s_29[] = { 'd', 'i', 'e' };
-static const symbol s_30[] = { 'l', 'i', 'e' };
-static const symbol s_31[] = { 't', 'i', 'e' };
-static const symbol s_32[] = { 'i', 'd', 'l' };
-static const symbol s_33[] = { 'g', 'e', 'n', 't', 'l' };
-static const symbol s_34[] = { 'u', 'g', 'l', 'i' };
-static const symbol s_35[] = { 'e', 'a', 'r', 'l', 'i' };
-static const symbol s_36[] = { 'o', 'n', 'l', 'i' };
-static const symbol s_37[] = { 's', 'i', 'n', 'g', 'l' };
-static const symbol s_38[] = { 'y' };
-
static int r_prelude(struct SN_env * z) {
- z->I[2] = 0;
- { int c1 = z->c;
+ ((SN_local *)z)->b_Y_found = 0;
+ {
+ int v_1 = z->c;
z->bra = z->c;
if (z->c == z->l || z->p[z->c] != '\'') goto lab0;
z->c++;
z->ket = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int c2 = z->c;
+ {
+ int v_2 = z->c;
z->bra = z->c;
if (z->c == z->l || z->p[z->c] != 'y') goto lab1;
z->c++;
z->ket = z->c;
- { int ret = slice_from_s(z, 1, s_0);
+ {
+ int ret = slice_from_s(z, 1, s_0);
if (ret < 0) return ret;
}
- z->I[2] = 1;
+ ((SN_local *)z)->b_Y_found = 1;
lab1:
- z->c = c2;
+ z->c = v_2;
}
- { int c3 = z->c;
- while(1) {
- int c4 = z->c;
- while(1) {
- int c5 = z->c;
+ {
+ int v_3 = z->c;
+ while (1) {
+ int v_4 = z->c;
+ while (1) {
+ int v_5 = z->c;
if (in_grouping(z, g_v, 97, 121, 0)) goto lab4;
z->bra = z->c;
if (z->c == z->l || z->p[z->c] != 'y') goto lab4;
z->c++;
z->ket = z->c;
- z->c = c5;
+ z->c = v_5;
break;
lab4:
- z->c = c5;
+ z->c = v_5;
if (z->c >= z->l) goto lab3;
z->c++;
}
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
- z->I[2] = 1;
+ ((SN_local *)z)->b_Y_found = 1;
continue;
lab3:
- z->c = c4;
+ z->c = v_4;
break;
}
- z->c = c3;
+ z->c = v_3;
}
return 1;
}
static int r_mark_regions(struct SN_env * z) {
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
- { int c2 = z->c;
- if (z->c + 4 >= z->l || z->p[z->c + 4] >> 5 != 3 || !((2375680 >> (z->p[z->c + 4] & 0x1f)) & 1)) goto lab2;
- if (!find_among(z, a_0, 3)) goto lab2;
- goto lab1;
- lab2:
- z->c = c2;
-
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ do {
+ int v_2 = z->c;
+ if (z->c + 3 >= z->l || z->p[z->c + 3] >> 5 != 3 || !((5513250 >> (z->p[z->c + 3] & 0x1f)) & 1)) goto lab1;
+ if (!find_among(z, a_0, 9, 0)) goto lab1;
+ break;
+ lab1:
+ z->c = v_2;
{
int ret = out_grouping(z, g_v, 97, 121, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 121, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- }
- lab1:
- z->I[1] = z->c;
-
+ } while (0);
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 121, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 121, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[0] = z->c;
+ ((SN_local *)z)->i_p2 = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
return 1;
}
static int r_shortv(struct SN_env * z) {
- { int m1 = z->l - z->c; (void)m1;
- if (out_grouping_b(z, g_v_WXY, 89, 121, 0)) goto lab1;
- if (in_grouping_b(z, g_v, 97, 121, 0)) goto lab1;
+ do {
+ int v_1 = z->l - z->c;
+ if (out_grouping_b(z, g_v_WXY, 89, 121, 0)) goto lab0;
+ if (in_grouping_b(z, g_v, 97, 121, 0)) goto lab0;
+ if (out_grouping_b(z, g_v, 97, 121, 0)) goto lab0;
+ break;
+ lab0:
+ z->c = z->l - v_1;
if (out_grouping_b(z, g_v, 97, 121, 0)) goto lab1;
- goto lab0;
+ if (in_grouping_b(z, g_v, 97, 121, 0)) goto lab1;
+ if (z->c > z->lb) goto lab1;
+ break;
lab1:
- z->c = z->l - m1;
- if (out_grouping_b(z, g_v, 97, 121, 0)) return 0;
- if (in_grouping_b(z, g_v, 97, 121, 0)) return 0;
- if (z->c > z->lb) return 0;
- }
-lab0:
+ z->c = z->l - v_1;
+ if (!(eq_s_b(z, 4, s_2))) return 0;
+ } while (0);
return 1;
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_Step_1a(struct SN_env * z) {
int among_var;
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
- if (z->c <= z->lb || (z->p[z->c - 1] != 39 && z->p[z->c - 1] != 115)) { z->c = z->l - m1; goto lab0; }
- if (!find_among_b(z, a_1, 3)) { z->c = z->l - m1; goto lab0; }
+ if (z->c <= z->lb || (z->p[z->c - 1] != 39 && z->p[z->c - 1] != 115)) { z->c = z->l - v_1; goto lab0; }
+ if (!find_among_b(z, a_1, 3, 0)) { z->c = z->l - v_1; goto lab0; }
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab0:
}
z->ket = z->c;
if (z->c <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 115)) return 0;
- among_var = find_among_b(z, a_2, 6);
+ among_var = find_among_b(z, a_2, 6, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 2, s_2);
+ {
+ int ret = slice_from_s(z, 2, s_3);
if (ret < 0) return ret;
}
break;
case 2:
- { int m2 = z->l - z->c; (void)m2;
-z->c = z->c - 2;
- if (z->c < z->lb) goto lab2;
- { int ret = slice_from_s(z, 1, s_3);
+ do {
+ int v_2 = z->l - z->c;
+ if (z->c - 2 < z->lb) goto lab1;
+ z->c -= 2;
+ {
+ int ret = slice_from_s(z, 1, s_4);
if (ret < 0) return ret;
}
- goto lab1;
- lab2:
- z->c = z->l - m2;
- { int ret = slice_from_s(z, 2, s_4);
+ break;
+ lab1:
+ z->c = z->l - v_2;
+ {
+ int ret = slice_from_s(z, 2, s_5);
if (ret < 0) return ret;
}
- }
- lab1:
+ } while (0);
break;
case 3:
if (z->c <= z->lb) return 0;
z->c--;
-
{
int ret = out_grouping_b(z, g_v, 97, 121, 1);
if (ret < 0) return 0;
z->c -= ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_Step_1b(struct SN_env * z) {
int among_var;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((33554576 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_4, 6);
- if (!among_var) return 0;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((33554576 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = -1; else
+ among_var = find_among_b(z, a_5, 7, 0);
z->bra = z->c;
- switch (among_var) {
- case 1:
- { int ret = r_R1(z);
- if (ret <= 0) return ret;
- }
- { int ret = slice_from_s(z, 2, s_5);
- if (ret < 0) return ret;
- }
- break;
- case 2:
- { int m_test1 = z->l - z->c;
-
+ do {
+ int v_1 = z->l - z->c;
+ switch (among_var) {
+ case 1:
{
- int ret = out_grouping_b(z, g_v, 97, 121, 1);
- if (ret < 0) return 0;
- z->c -= ret;
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab1;
+ if (ret < 0) return ret;
+ }
+ do {
+ int v_3 = z->l - z->c;
+ if (z->c - 2 <= z->lb || z->p[z->c - 1] != 99) goto lab2;
+ if (!find_among_b(z, a_3, 3, 0)) goto lab2;
+ if (z->c > z->lb) goto lab2;
+ break;
+ lab2:
+ z->c = z->l - v_3;
+ {
+ int ret = slice_from_s(z, 2, s_6);
+ if (ret < 0) return ret;
+ }
+ } while (0);
+ lab1:
+ z->c = z->l - v_2;
}
- z->c = z->l - m_test1;
- }
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- z->ket = z->c;
- z->bra = z->c;
- { int m_test2 = z->l - z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else
- among_var = find_among_b(z, a_3, 13);
+ break;
+ case 2:
+ goto lab0;
+ break;
+ case 3:
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((34881536 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
+ among_var = find_among_b(z, a_4, 7, 0);
+ if (!among_var) goto lab0;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_6);
- if (ret < 0) return ret;
- }
- return 0;
- break;
- case 2:
- { int m3 = z->l - z->c; (void)m3;
- if (in_grouping_b(z, g_aeo, 97, 111, 0)) goto lab0;
+ {
+ int v_4 = z->l - z->c;
+ if (out_grouping_b(z, g_v, 97, 121, 0)) goto lab0;
if (z->c > z->lb) goto lab0;
- return 0;
- lab0:
- z->c = z->l - m3;
- }
- break;
- case 3:
- if (z->c != z->I[1]) return 0;
- { int m_test4 = z->l - z->c;
- { int ret = r_shortv(z);
- if (ret <= 0) return ret;
- }
- z->c = z->l - m_test4;
+ z->c = z->l - v_4;
}
- { int ret = slice_from_s(z, 1, s_7);
+ z->bra = z->c;
+ {
+ int ret = slice_from_s(z, 2, s_7);
if (ret < 0) return ret;
}
- return 0;
+ break;
+ case 2:
+ if (z->c > z->lb) goto lab0;
break;
}
- z->c = z->l - m_test2;
- }
- z->ket = z->c;
- if (z->c <= z->lb) return 0;
- z->c--;
- z->bra = z->c;
- { int ret = slice_del(z);
- if (ret < 0) return ret;
+ break;
+ }
+ break;
+ lab0:
+ z->c = z->l - v_1;
+ {
+ int v_5 = z->l - z->c;
+ {
+ int ret = out_grouping_b(z, g_v, 97, 121, 1);
+ if (ret < 0) return 0;
+ z->c -= ret;
}
- break;
- }
+ z->c = z->l - v_5;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ z->ket = z->c;
+ z->bra = z->c;
+ {
+ int v_6 = z->l - z->c;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else
+ among_var = find_among_b(z, a_6, 13, 0);
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_from_s(z, 1, s_8);
+ if (ret < 0) return ret;
+ }
+ return 0;
+ break;
+ case 2:
+ {
+ int v_7 = z->l - z->c;
+ if (in_grouping_b(z, g_aeo, 97, 111, 0)) goto lab3;
+ if (z->c > z->lb) goto lab3;
+ return 0;
+ lab3:
+ z->c = z->l - v_7;
+ }
+ break;
+ case 3:
+ if (z->c != ((SN_local *)z)->i_p1) return 0;
+ {
+ int v_8 = z->l - z->c;
+ {
+ int ret = r_shortv(z);
+ if (ret <= 0) return ret;
+ }
+ z->c = z->l - v_8;
+ }
+ {
+ int ret = slice_from_s(z, 1, s_9);
+ if (ret < 0) return ret;
+ }
+ return 0;
+ break;
+ }
+ z->c = z->l - v_6;
+ }
+ z->ket = z->c;
+ if (z->c <= z->lb) return 0;
+ z->c--;
+ z->bra = z->c;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ } while (0);
return 1;
}
static int r_Step_1c(struct SN_env * z) {
z->ket = z->c;
- { int m1 = z->l - z->c; (void)m1;
- if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1;
+ do {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab0;
z->c--;
- goto lab0;
- lab1:
- z->c = z->l - m1;
+ break;
+ lab0:
+ z->c = z->l - v_1;
if (z->c <= z->lb || z->p[z->c - 1] != 'Y') return 0;
z->c--;
- }
-lab0:
+ } while (0);
z->bra = z->c;
if (out_grouping_b(z, g_v, 97, 121, 0)) return 0;
-
- if (z->c > z->lb) goto lab2;
+ if (z->c > z->lb) goto lab1;
return 0;
-lab2:
- { int ret = slice_from_s(z, 1, s_8);
+lab1:
+ {
+ int ret = slice_from_s(z, 1, s_10);
if (ret < 0) return ret;
}
return 1;
static int r_Step_2(struct SN_env * z) {
int among_var;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((815616 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_5, 24);
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1864192 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
+ among_var = find_among_b(z, a_7, 25, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 4, s_9);
+ {
+ int ret = slice_from_s(z, 4, s_11);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 4, s_10);
+ {
+ int ret = slice_from_s(z, 4, s_12);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 4, s_11);
+ {
+ int ret = slice_from_s(z, 4, s_13);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 4, s_12);
+ {
+ int ret = slice_from_s(z, 4, s_14);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 3, s_13);
+ {
+ int ret = slice_from_s(z, 3, s_15);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 3, s_14);
+ {
+ int ret = slice_from_s(z, 3, s_16);
if (ret < 0) return ret;
}
break;
case 7:
- { int ret = slice_from_s(z, 3, s_15);
+ {
+ int ret = slice_from_s(z, 3, s_17);
if (ret < 0) return ret;
}
break;
case 8:
- { int ret = slice_from_s(z, 2, s_16);
+ {
+ int ret = slice_from_s(z, 2, s_18);
if (ret < 0) return ret;
}
break;
case 9:
- { int ret = slice_from_s(z, 3, s_17);
+ {
+ int ret = slice_from_s(z, 3, s_19);
if (ret < 0) return ret;
}
break;
case 10:
- { int ret = slice_from_s(z, 3, s_18);
+ {
+ int ret = slice_from_s(z, 3, s_20);
if (ret < 0) return ret;
}
break;
case 11:
- { int ret = slice_from_s(z, 3, s_19);
+ {
+ int ret = slice_from_s(z, 3, s_21);
if (ret < 0) return ret;
}
break;
case 12:
- { int ret = slice_from_s(z, 3, s_20);
+ {
+ int ret = slice_from_s(z, 3, s_22);
if (ret < 0) return ret;
}
break;
case 13:
- if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
- z->c--;
- { int ret = slice_from_s(z, 2, s_21);
+ {
+ int ret = slice_from_s(z, 2, s_23);
if (ret < 0) return ret;
}
break;
case 14:
- { int ret = slice_from_s(z, 4, s_22);
+ if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
+ z->c--;
+ {
+ int ret = slice_from_s(z, 2, s_24);
if (ret < 0) return ret;
}
break;
case 15:
+ {
+ int ret = slice_from_s(z, 4, s_25);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 16:
if (in_grouping_b(z, g_valid_LI, 99, 116, 0)) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((528928 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_6, 9);
+ among_var = find_among_b(z, a_8, 9, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 4, s_23);
+ {
+ int ret = slice_from_s(z, 4, s_26);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 3, s_24);
+ {
+ int ret = slice_from_s(z, 3, s_27);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 2, s_25);
+ {
+ int ret = slice_from_s(z, 2, s_28);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 2, s_26);
+ {
+ int ret = slice_from_s(z, 2, s_29);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1864232 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_7, 18);
+ among_var = find_among_b(z, a_9, 18, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int m1 = z->l - z->c; (void)m1;
- if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1;
+ do {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab0;
z->c--;
- goto lab0;
- lab1:
- z->c = z->l - m1;
+ break;
+ lab0:
+ z->c = z->l - v_1;
if (z->c <= z->lb || z->p[z->c - 1] != 't') return 0;
z->c--;
- }
- lab0:
- { int ret = slice_del(z);
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c <= z->lb || (z->p[z->c - 1] != 101 && z->p[z->c - 1] != 108)) return 0;
- among_var = find_among_b(z, a_8, 2);
+ among_var = find_among_b(z, a_10, 2, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
-
- { int ret = r_R2(z);
- if (ret == 0) goto lab1;
- if (ret < 0) return ret;
- }
- goto lab0;
- lab1:
- { int ret = r_R1(z);
- if (ret <= 0) return ret;
- }
- { int m1 = z->l - z->c; (void)m1;
- { int ret = r_shortv(z);
- if (ret == 0) goto lab2;
+ do {
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- return 0;
- lab2:
- z->c = z->l - m1;
- }
- lab0:
- { int ret = slice_del(z);
+ break;
+ lab0:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int v_1 = z->l - z->c;
+ {
+ int ret = r_shortv(z);
+ if (ret == 0) goto lab1;
+ if (ret < 0) return ret;
+ }
+ return 0;
+ lab1:
+ z->c = z->l - v_1;
+ }
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
z->c--;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
return 1;
}
-static int r_exception2(struct SN_env * z) {
- z->ket = z->c;
- if (z->c - 5 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 103)) return 0;
- if (!find_among_b(z, a_9, 8)) return 0;
- z->bra = z->c;
- if (z->c > z->lb) return 0;
- return 1;
-}
-
static int r_exception1(struct SN_env * z) {
int among_var;
z->bra = z->c;
if (z->c + 2 >= z->l || z->p[z->c + 2] >> 5 != 3 || !((42750482 >> (z->p[z->c + 2] & 0x1f)) & 1)) return 0;
- among_var = find_among(z, a_10, 18);
+ among_var = find_among(z, a_11, 15, 0);
if (!among_var) return 0;
z->ket = z->c;
if (z->c < z->l) return 0;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 3, s_27);
+ {
+ int ret = slice_from_s(z, 3, s_30);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 3, s_28);
+ {
+ int ret = slice_from_s(z, 3, s_31);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 3, s_29);
+ {
+ int ret = slice_from_s(z, 3, s_32);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 3, s_30);
+ {
+ int ret = slice_from_s(z, 5, s_33);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 3, s_31);
+ {
+ int ret = slice_from_s(z, 4, s_34);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 3, s_32);
+ {
+ int ret = slice_from_s(z, 5, s_35);
if (ret < 0) return ret;
}
break;
case 7:
- { int ret = slice_from_s(z, 5, s_33);
+ {
+ int ret = slice_from_s(z, 4, s_36);
if (ret < 0) return ret;
}
break;
case 8:
- { int ret = slice_from_s(z, 4, s_34);
- if (ret < 0) return ret;
- }
- break;
- case 9:
- { int ret = slice_from_s(z, 5, s_35);
- if (ret < 0) return ret;
- }
- break;
- case 10:
- { int ret = slice_from_s(z, 4, s_36);
- if (ret < 0) return ret;
- }
- break;
- case 11:
- { int ret = slice_from_s(z, 5, s_37);
+ {
+ int ret = slice_from_s(z, 5, s_37);
if (ret < 0) return ret;
}
break;
}
static int r_postlude(struct SN_env * z) {
- if (!(z->I[2])) return 0;
- while(1) {
- int c1 = z->c;
- while(1) {
- int c2 = z->c;
+ if (!((SN_local *)z)->b_Y_found) return 0;
+ while (1) {
+ int v_1 = z->c;
+ while (1) {
+ int v_2 = z->c;
z->bra = z->c;
if (z->c == z->l || z->p[z->c] != 'Y') goto lab1;
z->c++;
z->ket = z->c;
- z->c = c2;
+ z->c = v_2;
break;
lab1:
- z->c = c2;
+ z->c = v_2;
if (z->c >= z->l) goto lab0;
z->c++;
}
- { int ret = slice_from_s(z, 1, s_38);
+ {
+ int ret = slice_from_s(z, 1, s_38);
if (ret < 0) return ret;
}
continue;
lab0:
- z->c = c1;
+ z->c = v_1;
break;
}
return 1;
}
extern int english_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_exception1(z);
- if (ret == 0) goto lab1;
+ do {
+ int v_1 = z->c;
+ {
+ int ret = r_exception1(z);
+ if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- goto lab0;
- lab1:
- z->c = c1;
- { int c2 = z->c;
-z->c = z->c + 3;
- if (z->c > z->l) goto lab3;
- goto lab2;
- lab3:
- z->c = c2;
+ break;
+ lab0:
+ z->c = v_1;
+ {
+ int v_2 = z->c;
+ if (z->c + 3 > z->l) goto lab2;
+ z->c += 3;
+ goto lab1;
+ lab2:
+ z->c = v_2;
}
- goto lab0;
- lab2:
- z->c = c1;
-
- { int ret = r_prelude(z);
+ break;
+ lab1:
+ z->c = v_1;
+ {
+ int ret = r_prelude(z);
if (ret < 0) return ret;
}
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_Step_1a(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_Step_1a(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_exception2(z);
- if (ret == 0) goto lab5;
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_Step_1b(z);
if (ret < 0) return ret;
}
- goto lab4;
- lab5:
- z->c = z->l - m4;
- { int m5 = z->l - z->c; (void)m5;
- { int ret = r_Step_1b(z);
- if (ret < 0) return ret;
- }
- z->c = z->l - m5;
- }
- { int m6 = z->l - z->c; (void)m6;
- { int ret = r_Step_1c(z);
- if (ret < 0) return ret;
- }
- z->c = z->l - m6;
+ z->c = z->l - v_4;
+ }
+ {
+ int v_5 = z->l - z->c;
+ {
+ int ret = r_Step_1c(z);
+ if (ret < 0) return ret;
}
- { int m7 = z->l - z->c; (void)m7;
- { int ret = r_Step_2(z);
- if (ret < 0) return ret;
- }
- z->c = z->l - m7;
+ z->c = z->l - v_5;
+ }
+ {
+ int v_6 = z->l - z->c;
+ {
+ int ret = r_Step_2(z);
+ if (ret < 0) return ret;
}
- { int m8 = z->l - z->c; (void)m8;
- { int ret = r_Step_3(z);
- if (ret < 0) return ret;
- }
- z->c = z->l - m8;
+ z->c = z->l - v_6;
+ }
+ {
+ int v_7 = z->l - z->c;
+ {
+ int ret = r_Step_3(z);
+ if (ret < 0) return ret;
}
- { int m9 = z->l - z->c; (void)m9;
- { int ret = r_Step_4(z);
- if (ret < 0) return ret;
- }
- z->c = z->l - m9;
+ z->c = z->l - v_7;
+ }
+ {
+ int v_8 = z->l - z->c;
+ {
+ int ret = r_Step_4(z);
+ if (ret < 0) return ret;
}
- { int m10 = z->l - z->c; (void)m10;
- { int ret = r_Step_5(z);
- if (ret < 0) return ret;
- }
- z->c = z->l - m10;
+ z->c = z->l - v_8;
+ }
+ {
+ int v_9 = z->l - z->c;
+ {
+ int ret = r_Step_5(z);
+ if (ret < 0) return ret;
}
+ z->c = z->l - v_9;
}
- lab4:
z->c = z->lb;
- { int c11 = z->c;
- { int ret = r_postlude(z);
+ {
+ int v_10 = z->c;
+ {
+ int ret = r_postlude(z);
if (ret < 0) return ret;
}
- z->c = c11;
+ z->c = v_10;
}
- }
-lab0:
+ } while (0);
return 1;
}
-extern struct SN_env * english_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * english_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->b_Y_found = 0;
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ }
+ return z;
+}
-extern void english_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void english_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from finnish.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_finnish.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ unsigned char b_ending_removed;
+ symbol * s_x;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_tidy(struct SN_env * z);
static int r_other_endings(struct SN_env * z);
static int r_t_plural(struct SN_env * z);
static int r_particle_etc(struct SN_env * z);
static int r_R2(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * finnish_ISO_8859_1_create_env(void);
-extern void finnish_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 'k', 's', 'e' };
+static const symbol s_1[] = { 'k', 's', 'i' };
+static const symbol s_2[] = { 'i', 'e' };
+static const symbol s_3[] = { 'p', 'o' };
+static const symbol s_4[] = { 'p', 'o' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[2] = { 'p', 'a' };
static const symbol s_0_1[3] = { 's', 't', 'i' };
static const symbol s_0_2[4] = { 'k', 'a', 'a', 'n' };
static const symbol s_0_7[2] = { 'k', 'o' };
static const symbol s_0_8[2] = { 'p', 0xE4 };
static const symbol s_0_9[2] = { 'k', 0xF6 };
-
-static const struct among a_0[10] =
-{
-{ 2, s_0_0, -1, 1, 0},
-{ 3, s_0_1, -1, 2, 0},
-{ 4, s_0_2, -1, 1, 0},
-{ 3, s_0_3, -1, 1, 0},
-{ 3, s_0_4, -1, 1, 0},
-{ 3, s_0_5, -1, 1, 0},
-{ 4, s_0_6, -1, 1, 0},
-{ 2, s_0_7, -1, 1, 0},
-{ 2, s_0_8, -1, 1, 0},
-{ 2, s_0_9, -1, 1, 0}
+static const struct among a_0[10] = {
+{ 2, s_0_0, 0, 1, 0},
+{ 3, s_0_1, 0, 2, 0},
+{ 4, s_0_2, 0, 1, 0},
+{ 3, s_0_3, 0, 1, 0},
+{ 3, s_0_4, 0, 1, 0},
+{ 3, s_0_5, 0, 1, 0},
+{ 4, s_0_6, 0, 1, 0},
+{ 2, s_0_7, 0, 1, 0},
+{ 2, s_0_8, 0, 1, 0},
+{ 2, s_0_9, 0, 1, 0}
};
static const symbol s_1_0[3] = { 'l', 'l', 'a' };
static const symbol s_1_3[2] = { 't', 'a' };
static const symbol s_1_4[3] = { 'l', 't', 'a' };
static const symbol s_1_5[3] = { 's', 't', 'a' };
-
-static const struct among a_1[6] =
-{
-{ 3, s_1_0, -1, -1, 0},
-{ 2, s_1_1, -1, -1, 0},
-{ 3, s_1_2, -1, -1, 0},
-{ 2, s_1_3, -1, -1, 0},
-{ 3, s_1_4, 3, -1, 0},
-{ 3, s_1_5, 3, -1, 0}
+static const struct among a_1[6] = {
+{ 3, s_1_0, 0, -1, 0},
+{ 2, s_1_1, 0, -1, 0},
+{ 3, s_1_2, 0, -1, 0},
+{ 2, s_1_3, 0, -1, 0},
+{ 3, s_1_4, -1, -1, 0},
+{ 3, s_1_5, -2, -1, 0}
};
static const symbol s_2_0[3] = { 'l', 'l', 0xE4 };
static const symbol s_2_3[2] = { 't', 0xE4 };
static const symbol s_2_4[3] = { 'l', 't', 0xE4 };
static const symbol s_2_5[3] = { 's', 't', 0xE4 };
-
-static const struct among a_2[6] =
-{
-{ 3, s_2_0, -1, -1, 0},
-{ 2, s_2_1, -1, -1, 0},
-{ 3, s_2_2, -1, -1, 0},
-{ 2, s_2_3, -1, -1, 0},
-{ 3, s_2_4, 3, -1, 0},
-{ 3, s_2_5, 3, -1, 0}
+static const struct among a_2[6] = {
+{ 3, s_2_0, 0, -1, 0},
+{ 2, s_2_1, 0, -1, 0},
+{ 3, s_2_2, 0, -1, 0},
+{ 2, s_2_3, 0, -1, 0},
+{ 3, s_2_4, -1, -1, 0},
+{ 3, s_2_5, -2, -1, 0}
};
static const symbol s_3_0[3] = { 'l', 'l', 'e' };
static const symbol s_3_1[3] = { 'i', 'n', 'e' };
-
-static const struct among a_3[2] =
-{
-{ 3, s_3_0, -1, -1, 0},
-{ 3, s_3_1, -1, -1, 0}
+static const struct among a_3[2] = {
+{ 3, s_3_0, 0, -1, 0},
+{ 3, s_3_1, 0, -1, 0}
};
static const symbol s_4_0[3] = { 'n', 's', 'a' };
static const symbol s_4_6[2] = { 'e', 'n' };
static const symbol s_4_7[2] = { 0xE4, 'n' };
static const symbol s_4_8[3] = { 'n', 's', 0xE4 };
-
-static const struct among a_4[9] =
-{
-{ 3, s_4_0, -1, 3, 0},
-{ 3, s_4_1, -1, 3, 0},
-{ 3, s_4_2, -1, 3, 0},
-{ 2, s_4_3, -1, 2, 0},
-{ 2, s_4_4, -1, 1, 0},
-{ 2, s_4_5, -1, 4, 0},
-{ 2, s_4_6, -1, 6, 0},
-{ 2, s_4_7, -1, 5, 0},
-{ 3, s_4_8, -1, 3, 0}
+static const struct among a_4[9] = {
+{ 3, s_4_0, 0, 3, 0},
+{ 3, s_4_1, 0, 3, 0},
+{ 3, s_4_2, 0, 3, 0},
+{ 2, s_4_3, 0, 2, 0},
+{ 2, s_4_4, 0, 1, 0},
+{ 2, s_4_5, 0, 4, 0},
+{ 2, s_4_6, 0, 6, 0},
+{ 2, s_4_7, 0, 5, 0},
+{ 3, s_4_8, 0, 3, 0}
};
static const symbol s_5_0[2] = { 'a', 'a' };
static const symbol s_5_4[2] = { 'u', 'u' };
static const symbol s_5_5[2] = { 0xE4, 0xE4 };
static const symbol s_5_6[2] = { 0xF6, 0xF6 };
-
-static const struct among a_5[7] =
-{
-{ 2, s_5_0, -1, -1, 0},
-{ 2, s_5_1, -1, -1, 0},
-{ 2, s_5_2, -1, -1, 0},
-{ 2, s_5_3, -1, -1, 0},
-{ 2, s_5_4, -1, -1, 0},
-{ 2, s_5_5, -1, -1, 0},
-{ 2, s_5_6, -1, -1, 0}
+static const struct among a_5[7] = {
+{ 2, s_5_0, 0, -1, 0},
+{ 2, s_5_1, 0, -1, 0},
+{ 2, s_5_2, 0, -1, 0},
+{ 2, s_5_3, 0, -1, 0},
+{ 2, s_5_4, 0, -1, 0},
+{ 2, s_5_5, 0, -1, 0},
+{ 2, s_5_6, 0, -1, 0}
};
static const symbol s_6_0[1] = { 'a' };
static const symbol s_6_27[3] = { 'l', 't', 0xE4 };
static const symbol s_6_28[3] = { 's', 't', 0xE4 };
static const symbol s_6_29[3] = { 't', 't', 0xE4 };
-
-static const struct among a_6[30] =
-{
-{ 1, s_6_0, -1, 8, 0},
-{ 3, s_6_1, 0, -1, 0},
-{ 2, s_6_2, 0, -1, 0},
-{ 3, s_6_3, 0, -1, 0},
-{ 2, s_6_4, 0, -1, 0},
-{ 3, s_6_5, 4, -1, 0},
-{ 3, s_6_6, 4, -1, 0},
-{ 3, s_6_7, 4, 2, 0},
-{ 3, s_6_8, -1, -1, 0},
-{ 3, s_6_9, -1, -1, 0},
-{ 3, s_6_10, -1, -1, 0},
-{ 1, s_6_11, -1, 7, 0},
-{ 3, s_6_12, 11, 1, 0},
-{ 3, s_6_13, 11, -1, r_VI},
-{ 4, s_6_14, 11, -1, r_LONG},
-{ 3, s_6_15, 11, 2, 0},
-{ 4, s_6_16, 11, -1, r_VI},
-{ 3, s_6_17, 11, 3, 0},
-{ 4, s_6_18, 11, -1, r_VI},
-{ 3, s_6_19, 11, 4, 0},
-{ 3, s_6_20, 11, 5, 0},
-{ 3, s_6_21, 11, 6, 0},
-{ 1, s_6_22, -1, 8, 0},
-{ 3, s_6_23, 22, -1, 0},
-{ 2, s_6_24, 22, -1, 0},
-{ 3, s_6_25, 22, -1, 0},
-{ 2, s_6_26, 22, -1, 0},
-{ 3, s_6_27, 26, -1, 0},
-{ 3, s_6_28, 26, -1, 0},
-{ 3, s_6_29, 26, 2, 0}
+static const struct among a_6[30] = {
+{ 1, s_6_0, 0, 8, 0},
+{ 3, s_6_1, -1, -1, 0},
+{ 2, s_6_2, -2, -1, 0},
+{ 3, s_6_3, -3, -1, 0},
+{ 2, s_6_4, -4, -1, 0},
+{ 3, s_6_5, -1, -1, 0},
+{ 3, s_6_6, -2, -1, 0},
+{ 3, s_6_7, -3, 2, 0},
+{ 3, s_6_8, 0, -1, 0},
+{ 3, s_6_9, 0, -1, 0},
+{ 3, s_6_10, 0, -1, 0},
+{ 1, s_6_11, 0, 7, 0},
+{ 3, s_6_12, -1, 1, 0},
+{ 3, s_6_13, -2, -1, 1},
+{ 4, s_6_14, -3, -1, 2},
+{ 3, s_6_15, -4, 2, 0},
+{ 4, s_6_16, -5, -1, 1},
+{ 3, s_6_17, -6, 3, 0},
+{ 4, s_6_18, -7, -1, 1},
+{ 3, s_6_19, -8, 4, 0},
+{ 3, s_6_20, -9, 5, 0},
+{ 3, s_6_21, -10, 6, 0},
+{ 1, s_6_22, 0, 8, 0},
+{ 3, s_6_23, -1, -1, 0},
+{ 2, s_6_24, -2, -1, 0},
+{ 3, s_6_25, -3, -1, 0},
+{ 2, s_6_26, -4, -1, 0},
+{ 3, s_6_27, -1, -1, 0},
+{ 3, s_6_28, -2, -1, 0},
+{ 3, s_6_29, -3, 2, 0}
};
+static int af_6(struct SN_env * z) {
+ switch (z->af) {
+ case 1: return r_VI(z);
+ case 2: return r_LONG(z);
+ }
+ return -1;
+}
+
static const symbol s_7_0[3] = { 'e', 'j', 'a' };
static const symbol s_7_1[3] = { 'm', 'm', 'a' };
static const symbol s_7_2[4] = { 'i', 'm', 'm', 'a' };
static const symbol s_7_11[4] = { 'i', 'm', 'm', 0xE4 };
static const symbol s_7_12[3] = { 'm', 'p', 0xE4 };
static const symbol s_7_13[4] = { 'i', 'm', 'p', 0xE4 };
-
-static const struct among a_7[14] =
-{
-{ 3, s_7_0, -1, -1, 0},
-{ 3, s_7_1, -1, 1, 0},
-{ 4, s_7_2, 1, -1, 0},
-{ 3, s_7_3, -1, 1, 0},
-{ 4, s_7_4, 3, -1, 0},
-{ 3, s_7_5, -1, 1, 0},
-{ 4, s_7_6, 5, -1, 0},
-{ 3, s_7_7, -1, 1, 0},
-{ 4, s_7_8, 7, -1, 0},
-{ 3, s_7_9, -1, -1, 0},
-{ 3, s_7_10, -1, 1, 0},
-{ 4, s_7_11, 10, -1, 0},
-{ 3, s_7_12, -1, 1, 0},
-{ 4, s_7_13, 12, -1, 0}
-};
-
-static const symbol s_8_0[1] = { 'i' };
-static const symbol s_8_1[1] = { 'j' };
-
-static const struct among a_8[2] =
-{
-{ 1, s_8_0, -1, -1, 0},
-{ 1, s_8_1, -1, -1, 0}
+static const struct among a_7[14] = {
+{ 3, s_7_0, 0, -1, 0},
+{ 3, s_7_1, 0, 1, 0},
+{ 4, s_7_2, -1, -1, 0},
+{ 3, s_7_3, 0, 1, 0},
+{ 4, s_7_4, -1, -1, 0},
+{ 3, s_7_5, 0, 1, 0},
+{ 4, s_7_6, -1, -1, 0},
+{ 3, s_7_7, 0, 1, 0},
+{ 4, s_7_8, -1, -1, 0},
+{ 3, s_7_9, 0, -1, 0},
+{ 3, s_7_10, 0, 1, 0},
+{ 4, s_7_11, -1, -1, 0},
+{ 3, s_7_12, 0, 1, 0},
+{ 4, s_7_13, -1, -1, 0}
};
static const symbol s_9_0[3] = { 'm', 'm', 'a' };
static const symbol s_9_1[4] = { 'i', 'm', 'm', 'a' };
-
-static const struct among a_9[2] =
-{
-{ 3, s_9_0, -1, 1, 0},
-{ 4, s_9_1, 0, -1, 0}
+static const struct among a_9[2] = {
+{ 3, s_9_0, 0, 1, 0},
+{ 4, s_9_1, -1, -1, 0}
};
static const unsigned char g_AEI[] = { 17, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8 };
static const unsigned char g_particle_end[] = { 17, 97, 24, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32 };
-static const symbol s_0[] = { 'k', 's', 'e' };
-static const symbol s_1[] = { 'k', 's', 'i' };
-static const symbol s_2[] = { 'i', 'e' };
-static const symbol s_3[] = { 'p', 'o' };
-static const symbol s_4[] = { 'p', 'o' };
-
static int r_mark_regions(struct SN_env * z) {
- z->I[1] = z->l;
- z->I[0] = z->l;
-
- if (out_grouping(z, g_V1, 97, 246, 1) < 0) return 0;
-
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int ret = out_grouping(z, g_V1, 97, 246, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
+ }
{
int ret = in_grouping(z, g_V1, 97, 246, 1);
if (ret < 0) return 0;
z->c += ret;
}
- z->I[1] = z->c;
-
- if (out_grouping(z, g_V1, 97, 246, 1) < 0) return 0;
-
+ ((SN_local *)z)->i_p1 = z->c;
+ {
+ int ret = out_grouping(z, g_V1, 97, 246, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
+ }
{
int ret = in_grouping(z, g_V1, 97, 246, 1);
if (ret < 0) return 0;
z->c += ret;
}
- z->I[0] = z->c;
+ ((SN_local *)z)->i_p2 = z->c;
return 1;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_particle_etc(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- among_var = find_among_b(z, a_0, 10);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ among_var = find_among_b(z, a_0, 10, 0);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
switch (among_var) {
case 1:
if (in_grouping_b(z, g_particle_end, 97, 246, 0)) return 0;
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
break;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_possessive(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- among_var = find_among_b(z, a_4, 9);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ among_var = find_among_b(z, a_4, 9, 0);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
switch (among_var) {
case 1:
- { int m2 = z->l - z->c; (void)m2;
+ {
+ int v_2 = z->l - z->c;
if (z->c <= z->lb || z->p[z->c - 1] != 'k') goto lab0;
z->c--;
return 0;
lab0:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
z->ket = z->c;
if (!(eq_s_b(z, 3, s_0))) return 0;
z->bra = z->c;
- { int ret = slice_from_s(z, 3, s_1);
+ {
+ int ret = slice_from_s(z, 3, s_1);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 4:
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 97) return 0;
- if (!find_among_b(z, a_1, 6)) return 0;
- { int ret = slice_del(z);
+ if (!find_among_b(z, a_1, 6, 0)) return 0;
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 5:
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 228) return 0;
- if (!find_among_b(z, a_2, 6)) return 0;
- { int ret = slice_del(z);
+ if (!find_among_b(z, a_2, 6, 0)) return 0;
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 6:
if (z->c - 2 <= z->lb || z->p[z->c - 1] != 101) return 0;
- if (!find_among_b(z, a_3, 2)) return 0;
- { int ret = slice_del(z);
+ if (!find_among_b(z, a_3, 2, 0)) return 0;
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
static int r_LONG(struct SN_env * z) {
- if (!find_among_b(z, a_5, 7)) return 0;
- return 1;
+ return find_among_b(z, a_5, 7, 0) != 0;
}
static int r_VI(struct SN_env * z) {
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0;
z->c--;
- if (in_grouping_b(z, g_V2, 97, 246, 0)) return 0;
- return 1;
+ return !in_grouping_b(z, g_V2, 97, 246, 0);
}
static int r_case_ending(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- among_var = find_among_b(z, a_6, 30);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ among_var = find_among_b(z, a_6, 30, af_6);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
switch (among_var) {
case 1:
z->c--;
break;
case 7:
- { int m2 = z->l - z->c; (void)m2;
- { int m3 = z->l - z->c; (void)m3;
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_LONG(z);
- if (ret == 0) goto lab2;
+ {
+ int v_2 = z->l - z->c;
+ {
+ int v_3 = z->l - z->c;
+ do {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_LONG(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- goto lab1;
- lab2:
- z->c = z->l - m4;
- if (!(eq_s_b(z, 2, s_2))) { z->c = z->l - m2; goto lab0; }
- }
- lab1:
- z->c = z->l - m3;
- if (z->c <= z->lb) { z->c = z->l - m2; goto lab0; }
+ break;
+ lab1:
+ z->c = z->l - v_4;
+ if (!(eq_s_b(z, 2, s_2))) { z->c = z->l - v_2; goto lab0; }
+ } while (0);
+ z->c = z->l - v_3;
+ if (z->c <= z->lb) { z->c = z->l - v_2; goto lab0; }
z->c--;
}
z->bra = z->c;
if (in_grouping_b(z, g_C, 98, 122, 0)) return 0;
break;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->I[2] = 1;
+ ((SN_local *)z)->b_ending_removed = 1;
return 1;
}
static int r_other_endings(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[0]) return 0;
- mlimit1 = z->lb; z->lb = z->I[0];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p2) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p2;
z->ket = z->c;
- among_var = find_among_b(z, a_7, 14);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ among_var = find_among_b(z, a_7, 14, 0);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
switch (among_var) {
case 1:
- { int m2 = z->l - z->c; (void)m2;
+ {
+ int v_2 = z->l - z->c;
if (!(eq_s_b(z, 2, s_3))) goto lab0;
return 0;
lab0:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
break;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
static int r_i_plural(struct SN_env * z) {
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 106)) { z->lb = mlimit1; return 0; }
- if (!find_among_b(z, a_8, 2)) { z->lb = mlimit1; return 0; }
+ if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 106)) { z->lb = v_1; return 0; }
+ z->c--;
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_t_plural(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 't') { z->lb = mlimit1; return 0; }
+ if (z->c <= z->lb || z->p[z->c - 1] != 't') { z->lb = v_1; return 0; }
z->c--;
z->bra = z->c;
- { int m_test2 = z->l - z->c;
- if (in_grouping_b(z, g_V1, 97, 246, 0)) { z->lb = mlimit1; return 0; }
- z->c = z->l - m_test2;
+ {
+ int v_2 = z->l - z->c;
+ if (in_grouping_b(z, g_V1, 97, 246, 0)) { z->lb = v_1; return 0; }
+ z->c = z->l - v_2;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->lb = mlimit1;
+ z->lb = v_1;
}
-
- { int mlimit3;
- if (z->c < z->I[0]) return 0;
- mlimit3 = z->lb; z->lb = z->I[0];
+ {
+ int v_3;
+ if (z->c < ((SN_local *)z)->i_p2) return 0;
+ v_3 = z->lb; z->lb = ((SN_local *)z)->i_p2;
z->ket = z->c;
- if (z->c - 2 <= z->lb || z->p[z->c - 1] != 97) { z->lb = mlimit3; return 0; }
- among_var = find_among_b(z, a_9, 2);
- if (!among_var) { z->lb = mlimit3; return 0; }
+ if (z->c - 2 <= z->lb || z->p[z->c - 1] != 97) { z->lb = v_3; return 0; }
+ among_var = find_among_b(z, a_9, 2, 0);
+ if (!among_var) { z->lb = v_3; return 0; }
z->bra = z->c;
- z->lb = mlimit3;
+ z->lb = v_3;
}
switch (among_var) {
case 1:
- { int m4 = z->l - z->c; (void)m4;
+ {
+ int v_4 = z->l - z->c;
if (!(eq_s_b(z, 2, s_4))) goto lab0;
return 0;
lab0:
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
break;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
static int r_tidy(struct SN_env * z) {
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
- { int m2 = z->l - z->c; (void)m2;
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_LONG(z);
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
+ {
+ int v_2 = z->l - z->c;
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_LONG(z);
if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
z->ket = z->c;
if (z->c <= z->lb) goto lab0;
z->c--;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
}
lab0:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m4 = z->l - z->c; (void)m4;
+ {
+ int v_4 = z->l - z->c;
z->ket = z->c;
if (in_grouping_b(z, g_AEI, 97, 228, 0)) goto lab1;
z->bra = z->c;
if (in_grouping_b(z, g_C, 98, 122, 0)) goto lab1;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab1:
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
- { int m5 = z->l - z->c; (void)m5;
+ {
+ int v_5 = z->l - z->c;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab2;
z->c--;
z->bra = z->c;
- { int m6 = z->l - z->c; (void)m6;
- if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab4;
+ do {
+ int v_6 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab3;
z->c--;
- goto lab3;
- lab4:
- z->c = z->l - m6;
+ break;
+ lab3:
+ z->c = z->l - v_6;
if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab2;
z->c--;
- }
- lab3:
- { int ret = slice_del(z);
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab2:
- z->c = z->l - m5;
+ z->c = z->l - v_5;
}
- { int m7 = z->l - z->c; (void)m7;
+ {
+ int v_7 = z->l - z->c;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab5;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'o') goto lab4;
z->c--;
z->bra = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab5;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'j') goto lab4;
z->c--;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- lab5:
- z->c = z->l - m7;
+ lab4:
+ z->c = z->l - v_7;
}
- z->lb = mlimit1;
+ z->lb = v_1;
}
-
if (in_grouping_b(z, g_V1, 97, 246, 1) < 0) return 0;
z->ket = z->c;
if (in_grouping_b(z, g_C, 98, 122, 0)) return 0;
z->bra = z->c;
- z->S[0] = slice_to(z, z->S[0]);
- if (z->S[0] == 0) return -1;
- if (!(eq_v_b(z, z->S[0]))) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_to(z, &((SN_local *)z)->s_x);
+ if (ret < 0) return ret;
+ }
+ if (!(eq_v_b(z, ((SN_local *)z)->s_x))) return 0;
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
extern int finnish_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_mark_regions(z);
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
- z->I[2] = 0;
+ ((SN_local *)z)->b_ending_removed = 0;
z->lb = z->c; z->c = z->l;
-
- { int m2 = z->l - z->c; (void)m2;
- { int ret = r_particle_etc(z);
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_particle_etc(z);
if (ret < 0) return ret;
}
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_possessive(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_possessive(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_case_ending(z);
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_case_ending(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
- { int m5 = z->l - z->c; (void)m5;
- { int ret = r_other_endings(z);
+ {
+ int v_5 = z->l - z->c;
+ {
+ int ret = r_other_endings(z);
if (ret < 0) return ret;
}
- z->c = z->l - m5;
+ z->c = z->l - v_5;
}
-
- if (!(z->I[2])) goto lab1;
- { int m6 = z->l - z->c; (void)m6;
- { int ret = r_i_plural(z);
- if (ret < 0) return ret;
+ do {
+ if (!((SN_local *)z)->b_ending_removed) goto lab0;
+ {
+ int v_6 = z->l - z->c;
+ {
+ int ret = r_i_plural(z);
+ if (ret < 0) return ret;
+ }
+ z->c = z->l - v_6;
}
- z->c = z->l - m6;
- }
- goto lab0;
-lab1:
- { int m7 = z->l - z->c; (void)m7;
- { int ret = r_t_plural(z);
- if (ret < 0) return ret;
+ break;
+ lab0:
+ {
+ int v_7 = z->l - z->c;
+ {
+ int ret = r_t_plural(z);
+ if (ret < 0) return ret;
+ }
+ z->c = z->l - v_7;
}
- z->c = z->l - m7;
- }
-lab0:
- { int m8 = z->l - z->c; (void)m8;
- { int ret = r_tidy(z);
+ } while (0);
+ {
+ int v_8 = z->l - z->c;
+ {
+ int ret = r_tidy(z);
if (ret < 0) return ret;
}
- z->c = z->l - m8;
+ z->c = z->l - v_8;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * finnish_ISO_8859_1_create_env(void) { return SN_create_env(1, 3); }
+extern struct SN_env * finnish_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->b_ending_removed = 0;
+ ((SN_local *)z)->s_x = NULL;
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+
+ if ((((SN_local *)z)->s_x = create_s()) == NULL) {
+ finnish_ISO_8859_1_close_env(z);
+ return NULL;
+ }
+ }
+ return z;
+}
-extern void finnish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 1); }
+extern void finnish_ISO_8859_1_close_env(struct SN_env * z) {
+ if (z) {
+ lose_s(((SN_local *)z)->s_x);
+ }
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from french.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_french.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ int i_pV;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_un_accent(struct SN_env * z);
static int r_un_double(struct SN_env * z);
static int r_residual_suffix(struct SN_env * z);
static int r_postlude(struct SN_env * z);
static int r_prelude(struct SN_env * z);
static int r_elisions(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * french_ISO_8859_1_create_env(void);
-extern void french_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 'q', 'u' };
+static const symbol s_1[] = { 'U' };
+static const symbol s_2[] = { 'I' };
+static const symbol s_3[] = { 'Y' };
+static const symbol s_4[] = { 'H', 'e' };
+static const symbol s_5[] = { 'H', 'i' };
+static const symbol s_6[] = { 'Y' };
+static const symbol s_7[] = { 'U' };
+static const symbol s_8[] = { 'i' };
+static const symbol s_9[] = { 'u' };
+static const symbol s_10[] = { 'y' };
+static const symbol s_11[] = { 0xEB };
+static const symbol s_12[] = { 0xEF };
+static const symbol s_13[] = { 'i', 'c' };
+static const symbol s_14[] = { 'i', 'q', 'U' };
+static const symbol s_15[] = { 'l', 'o', 'g' };
+static const symbol s_16[] = { 'u' };
+static const symbol s_17[] = { 'e', 'n', 't' };
+static const symbol s_18[] = { 'a', 't' };
+static const symbol s_19[] = { 'e', 'u', 'x' };
+static const symbol s_20[] = { 'i' };
+static const symbol s_21[] = { 'a', 'b', 'l' };
+static const symbol s_22[] = { 'i', 'q', 'U' };
+static const symbol s_23[] = { 'a', 't' };
+static const symbol s_24[] = { 'i', 'c' };
+static const symbol s_25[] = { 'i', 'q', 'U' };
+static const symbol s_26[] = { 'e', 'a', 'u' };
+static const symbol s_27[] = { 'a', 'l' };
+static const symbol s_28[] = { 'o', 'u' };
+static const symbol s_29[] = { 'e', 'u', 'x' };
+static const symbol s_30[] = { 'a', 'n', 't' };
+static const symbol s_31[] = { 'e', 'n', 't' };
+static const symbol s_32[] = { 'H', 'i' };
+static const symbol s_33[] = { 'i' };
+static const symbol s_34[] = { 'e' };
+static const symbol s_35[] = { 'i' };
+static const symbol s_36[] = { 'c' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[3] = { 'c', 'o', 'l' };
-static const symbol s_0_1[3] = { 'p', 'a', 'r' };
-static const symbol s_0_2[3] = { 't', 'a', 'p' };
-
-static const struct among a_0[3] =
-{
-{ 3, s_0_0, -1, -1, 0},
-{ 3, s_0_1, -1, -1, 0},
-{ 3, s_0_2, -1, -1, 0}
+static const symbol s_0_1[2] = { 'n', 'i' };
+static const symbol s_0_2[3] = { 'p', 'a', 'r' };
+static const symbol s_0_3[3] = { 't', 'a', 'p' };
+static const struct among a_0[4] = {
+{ 3, s_0_0, 0, -1, 0},
+{ 2, s_0_1, 0, 1, 0},
+{ 3, s_0_2, 0, -1, 0},
+{ 3, s_0_3, 0, -1, 0}
};
static const symbol s_1_1[1] = { 'H' };
static const symbol s_1_4[1] = { 'I' };
static const symbol s_1_5[1] = { 'U' };
static const symbol s_1_6[1] = { 'Y' };
-
-static const struct among a_1[7] =
-{
-{ 0, 0, -1, 7, 0},
-{ 1, s_1_1, 0, 6, 0},
-{ 2, s_1_2, 1, 4, 0},
-{ 2, s_1_3, 1, 5, 0},
-{ 1, s_1_4, 0, 1, 0},
-{ 1, s_1_5, 0, 2, 0},
-{ 1, s_1_6, 0, 3, 0}
+static const struct among a_1[7] = {
+{ 0, 0, 0, 7, 0},
+{ 1, s_1_1, -1, 6, 0},
+{ 2, s_1_2, -1, 4, 0},
+{ 2, s_1_3, -2, 5, 0},
+{ 1, s_1_4, -4, 1, 0},
+{ 1, s_1_5, -5, 2, 0},
+{ 1, s_1_6, -6, 3, 0}
};
static const symbol s_2_0[3] = { 'i', 'q', 'U' };
static const symbol s_2_3[3] = { 'i', 0xE8, 'r' };
static const symbol s_2_4[3] = { 'e', 'u', 's' };
static const symbol s_2_5[2] = { 'i', 'v' };
-
-static const struct among a_2[6] =
-{
-{ 3, s_2_0, -1, 3, 0},
-{ 3, s_2_1, -1, 3, 0},
-{ 3, s_2_2, -1, 4, 0},
-{ 3, s_2_3, -1, 4, 0},
-{ 3, s_2_4, -1, 2, 0},
-{ 2, s_2_5, -1, 1, 0}
+static const struct among a_2[6] = {
+{ 3, s_2_0, 0, 3, 0},
+{ 3, s_2_1, 0, 3, 0},
+{ 3, s_2_2, 0, 4, 0},
+{ 3, s_2_3, 0, 4, 0},
+{ 3, s_2_4, 0, 2, 0},
+{ 2, s_2_5, 0, 1, 0}
};
static const symbol s_3_0[2] = { 'i', 'c' };
static const symbol s_3_1[4] = { 'a', 'b', 'i', 'l' };
static const symbol s_3_2[2] = { 'i', 'v' };
-
-static const struct among a_3[3] =
-{
-{ 2, s_3_0, -1, 2, 0},
-{ 4, s_3_1, -1, 1, 0},
-{ 2, s_3_2, -1, 3, 0}
+static const struct among a_3[3] = {
+{ 2, s_3_0, 0, 2, 0},
+{ 4, s_3_1, 0, 1, 0},
+{ 2, s_3_2, 0, 3, 0}
};
static const symbol s_4_0[4] = { 'i', 'q', 'U', 'e' };
static const symbol s_4_39[3] = { 'a', 'u', 'x' };
static const symbol s_4_40[4] = { 'e', 'a', 'u', 'x' };
static const symbol s_4_41[3] = { 'e', 'u', 'x' };
-static const symbol s_4_42[3] = { 'i', 't', 0xE9 };
-
-static const struct among a_4[43] =
-{
-{ 4, s_4_0, -1, 1, 0},
-{ 6, s_4_1, -1, 2, 0},
-{ 4, s_4_2, -1, 1, 0},
-{ 4, s_4_3, -1, 5, 0},
-{ 5, s_4_4, -1, 3, 0},
-{ 4, s_4_5, -1, 1, 0},
-{ 4, s_4_6, -1, 1, 0},
-{ 4, s_4_7, -1, 11, 0},
-{ 4, s_4_8, -1, 1, 0},
-{ 3, s_4_9, -1, 8, 0},
-{ 2, s_4_10, -1, 8, 0},
-{ 5, s_4_11, -1, 4, 0},
-{ 5, s_4_12, -1, 2, 0},
-{ 5, s_4_13, -1, 4, 0},
-{ 5, s_4_14, -1, 2, 0},
-{ 5, s_4_15, -1, 1, 0},
-{ 7, s_4_16, -1, 2, 0},
-{ 5, s_4_17, -1, 1, 0},
-{ 5, s_4_18, -1, 5, 0},
-{ 6, s_4_19, -1, 3, 0},
-{ 5, s_4_20, -1, 1, 0},
-{ 5, s_4_21, -1, 1, 0},
-{ 5, s_4_22, -1, 11, 0},
-{ 5, s_4_23, -1, 1, 0},
-{ 4, s_4_24, -1, 8, 0},
-{ 3, s_4_25, -1, 8, 0},
-{ 6, s_4_26, -1, 4, 0},
-{ 6, s_4_27, -1, 2, 0},
-{ 6, s_4_28, -1, 4, 0},
-{ 6, s_4_29, -1, 2, 0},
-{ 5, s_4_30, -1, 15, 0},
-{ 6, s_4_31, 30, 6, 0},
-{ 9, s_4_32, 31, 12, 0},
-{ 4, s_4_33, -1, 7, 0},
-{ 4, s_4_34, -1, 15, 0},
-{ 5, s_4_35, 34, 6, 0},
-{ 8, s_4_36, 35, 12, 0},
-{ 6, s_4_37, 34, 13, 0},
-{ 6, s_4_38, 34, 14, 0},
-{ 3, s_4_39, -1, 10, 0},
-{ 4, s_4_40, 39, 9, 0},
-{ 3, s_4_41, -1, 1, 0},
-{ 3, s_4_42, -1, 7, 0}
+static const symbol s_4_42[3] = { 'o', 'u', 'x' };
+static const symbol s_4_43[3] = { 'i', 't', 0xE9 };
+static const struct among a_4[44] = {
+{ 4, s_4_0, 0, 1, 0},
+{ 6, s_4_1, 0, 2, 0},
+{ 4, s_4_2, 0, 1, 0},
+{ 4, s_4_3, 0, 5, 0},
+{ 5, s_4_4, 0, 3, 0},
+{ 4, s_4_5, 0, 1, 0},
+{ 4, s_4_6, 0, 1, 0},
+{ 4, s_4_7, 0, 12, 0},
+{ 4, s_4_8, 0, 1, 0},
+{ 3, s_4_9, 0, 8, 0},
+{ 2, s_4_10, 0, 8, 0},
+{ 5, s_4_11, 0, 4, 0},
+{ 5, s_4_12, 0, 2, 0},
+{ 5, s_4_13, 0, 4, 0},
+{ 5, s_4_14, 0, 2, 0},
+{ 5, s_4_15, 0, 1, 0},
+{ 7, s_4_16, 0, 2, 0},
+{ 5, s_4_17, 0, 1, 0},
+{ 5, s_4_18, 0, 5, 0},
+{ 6, s_4_19, 0, 3, 0},
+{ 5, s_4_20, 0, 1, 0},
+{ 5, s_4_21, 0, 1, 0},
+{ 5, s_4_22, 0, 12, 0},
+{ 5, s_4_23, 0, 1, 0},
+{ 4, s_4_24, 0, 8, 0},
+{ 3, s_4_25, 0, 8, 0},
+{ 6, s_4_26, 0, 4, 0},
+{ 6, s_4_27, 0, 2, 0},
+{ 6, s_4_28, 0, 4, 0},
+{ 6, s_4_29, 0, 2, 0},
+{ 5, s_4_30, 0, 16, 0},
+{ 6, s_4_31, -1, 6, 0},
+{ 9, s_4_32, -1, 13, 0},
+{ 4, s_4_33, 0, 7, 0},
+{ 4, s_4_34, 0, 16, 0},
+{ 5, s_4_35, -1, 6, 0},
+{ 8, s_4_36, -1, 13, 0},
+{ 6, s_4_37, -3, 14, 0},
+{ 6, s_4_38, -4, 15, 0},
+{ 3, s_4_39, 0, 10, 0},
+{ 4, s_4_40, -1, 9, 0},
+{ 3, s_4_41, 0, 1, 0},
+{ 3, s_4_42, 0, 11, 0},
+{ 3, s_4_43, 0, 7, 0}
};
static const symbol s_5_0[3] = { 'i', 'r', 'a' };
static const symbol s_5_32[6] = { 'i', 's', 's', 'i', 'e', 'z' };
static const symbol s_5_33[4] = { 'i', 'r', 'e', 'z' };
static const symbol s_5_34[5] = { 'i', 's', 's', 'e', 'z' };
-
-static const struct among a_5[35] =
-{
-{ 3, s_5_0, -1, 1, 0},
-{ 2, s_5_1, -1, 1, 0},
-{ 4, s_5_2, -1, 1, 0},
-{ 7, s_5_3, -1, 1, 0},
-{ 1, s_5_4, -1, 1, 0},
-{ 4, s_5_5, 4, 1, 0},
-{ 2, s_5_6, -1, 1, 0},
-{ 4, s_5_7, -1, 1, 0},
-{ 3, s_5_8, -1, 1, 0},
-{ 4, s_5_9, -1, 1, 0},
-{ 5, s_5_10, -1, 1, 0},
-{ 8, s_5_11, -1, 1, 0},
-{ 4, s_5_12, -1, 1, 0},
-{ 2, s_5_13, -1, 1, 0},
-{ 5, s_5_14, 13, 1, 0},
-{ 6, s_5_15, 13, 1, 0},
-{ 6, s_5_16, -1, 1, 0},
-{ 7, s_5_17, -1, 1, 0},
-{ 5, s_5_18, -1, 1, 0},
-{ 6, s_5_19, -1, 1, 0},
-{ 7, s_5_20, -1, 1, 0},
-{ 2, s_5_21, -1, 1, 0},
-{ 5, s_5_22, 21, 1, 0},
-{ 6, s_5_23, 21, 1, 0},
-{ 6, s_5_24, -1, 1, 0},
-{ 7, s_5_25, -1, 1, 0},
-{ 8, s_5_26, -1, 1, 0},
-{ 5, s_5_27, -1, 1, 0},
-{ 6, s_5_28, -1, 1, 0},
-{ 5, s_5_29, -1, 1, 0},
-{ 2, s_5_30, -1, 1, 0},
-{ 5, s_5_31, -1, 1, 0},
-{ 6, s_5_32, -1, 1, 0},
-{ 4, s_5_33, -1, 1, 0},
-{ 5, s_5_34, -1, 1, 0}
+static const struct among a_5[35] = {
+{ 3, s_5_0, 0, 1, 0},
+{ 2, s_5_1, 0, 1, 0},
+{ 4, s_5_2, 0, 1, 0},
+{ 7, s_5_3, 0, 1, 0},
+{ 1, s_5_4, 0, 1, 0},
+{ 4, s_5_5, -1, 1, 0},
+{ 2, s_5_6, 0, 1, 0},
+{ 4, s_5_7, 0, 1, 0},
+{ 3, s_5_8, 0, 1, 0},
+{ 4, s_5_9, 0, 1, 0},
+{ 5, s_5_10, 0, 1, 0},
+{ 8, s_5_11, 0, 1, 0},
+{ 4, s_5_12, 0, 1, 0},
+{ 2, s_5_13, 0, 1, 0},
+{ 5, s_5_14, -1, 1, 0},
+{ 6, s_5_15, -2, 1, 0},
+{ 6, s_5_16, 0, 1, 0},
+{ 7, s_5_17, 0, 1, 0},
+{ 5, s_5_18, 0, 1, 0},
+{ 6, s_5_19, 0, 1, 0},
+{ 7, s_5_20, 0, 1, 0},
+{ 2, s_5_21, 0, 1, 0},
+{ 5, s_5_22, -1, 1, 0},
+{ 6, s_5_23, -2, 1, 0},
+{ 6, s_5_24, 0, 1, 0},
+{ 7, s_5_25, 0, 1, 0},
+{ 8, s_5_26, 0, 1, 0},
+{ 5, s_5_27, 0, 1, 0},
+{ 6, s_5_28, 0, 1, 0},
+{ 5, s_5_29, 0, 1, 0},
+{ 2, s_5_30, 0, 1, 0},
+{ 5, s_5_31, 0, 1, 0},
+{ 6, s_5_32, 0, 1, 0},
+{ 4, s_5_33, 0, 1, 0},
+{ 5, s_5_34, 0, 1, 0}
};
-static const symbol s_6_0[1] = { 'a' };
-static const symbol s_6_1[3] = { 'e', 'r', 'a' };
-static const symbol s_6_2[4] = { 'a', 's', 's', 'e' };
-static const symbol s_6_3[4] = { 'a', 'n', 't', 'e' };
-static const symbol s_6_4[2] = { 0xE9, 'e' };
-static const symbol s_6_5[2] = { 'a', 'i' };
-static const symbol s_6_6[4] = { 'e', 'r', 'a', 'i' };
-static const symbol s_6_7[2] = { 'e', 'r' };
-static const symbol s_6_8[2] = { 'a', 's' };
-static const symbol s_6_9[4] = { 'e', 'r', 'a', 's' };
-static const symbol s_6_10[4] = { 0xE2, 'm', 'e', 's' };
-static const symbol s_6_11[5] = { 'a', 's', 's', 'e', 's' };
-static const symbol s_6_12[5] = { 'a', 'n', 't', 'e', 's' };
-static const symbol s_6_13[4] = { 0xE2, 't', 'e', 's' };
-static const symbol s_6_14[3] = { 0xE9, 'e', 's' };
-static const symbol s_6_15[3] = { 'a', 'i', 's' };
-static const symbol s_6_16[5] = { 'e', 'r', 'a', 'i', 's' };
-static const symbol s_6_17[4] = { 'i', 'o', 'n', 's' };
-static const symbol s_6_18[6] = { 'e', 'r', 'i', 'o', 'n', 's' };
-static const symbol s_6_19[7] = { 'a', 's', 's', 'i', 'o', 'n', 's' };
-static const symbol s_6_20[5] = { 'e', 'r', 'o', 'n', 's' };
-static const symbol s_6_21[4] = { 'a', 'n', 't', 's' };
-static const symbol s_6_22[2] = { 0xE9, 's' };
-static const symbol s_6_23[3] = { 'a', 'i', 't' };
-static const symbol s_6_24[5] = { 'e', 'r', 'a', 'i', 't' };
-static const symbol s_6_25[3] = { 'a', 'n', 't' };
-static const symbol s_6_26[5] = { 'a', 'I', 'e', 'n', 't' };
-static const symbol s_6_27[7] = { 'e', 'r', 'a', 'I', 'e', 'n', 't' };
-static const symbol s_6_28[5] = { 0xE8, 'r', 'e', 'n', 't' };
-static const symbol s_6_29[6] = { 'a', 's', 's', 'e', 'n', 't' };
-static const symbol s_6_30[5] = { 'e', 'r', 'o', 'n', 't' };
-static const symbol s_6_31[2] = { 0xE2, 't' };
-static const symbol s_6_32[2] = { 'e', 'z' };
-static const symbol s_6_33[3] = { 'i', 'e', 'z' };
-static const symbol s_6_34[5] = { 'e', 'r', 'i', 'e', 'z' };
-static const symbol s_6_35[6] = { 'a', 's', 's', 'i', 'e', 'z' };
-static const symbol s_6_36[4] = { 'e', 'r', 'e', 'z' };
-static const symbol s_6_37[1] = { 0xE9 };
-
-static const struct among a_6[38] =
-{
-{ 1, s_6_0, -1, 3, 0},
-{ 3, s_6_1, 0, 2, 0},
-{ 4, s_6_2, -1, 3, 0},
-{ 4, s_6_3, -1, 3, 0},
-{ 2, s_6_4, -1, 2, 0},
-{ 2, s_6_5, -1, 3, 0},
-{ 4, s_6_6, 5, 2, 0},
-{ 2, s_6_7, -1, 2, 0},
-{ 2, s_6_8, -1, 3, 0},
-{ 4, s_6_9, 8, 2, 0},
-{ 4, s_6_10, -1, 3, 0},
-{ 5, s_6_11, -1, 3, 0},
-{ 5, s_6_12, -1, 3, 0},
-{ 4, s_6_13, -1, 3, 0},
-{ 3, s_6_14, -1, 2, 0},
-{ 3, s_6_15, -1, 3, 0},
-{ 5, s_6_16, 15, 2, 0},
-{ 4, s_6_17, -1, 1, 0},
-{ 6, s_6_18, 17, 2, 0},
-{ 7, s_6_19, 17, 3, 0},
-{ 5, s_6_20, -1, 2, 0},
-{ 4, s_6_21, -1, 3, 0},
-{ 2, s_6_22, -1, 2, 0},
-{ 3, s_6_23, -1, 3, 0},
-{ 5, s_6_24, 23, 2, 0},
-{ 3, s_6_25, -1, 3, 0},
-{ 5, s_6_26, -1, 3, 0},
-{ 7, s_6_27, 26, 2, 0},
-{ 5, s_6_28, -1, 2, 0},
-{ 6, s_6_29, -1, 3, 0},
-{ 5, s_6_30, -1, 2, 0},
-{ 2, s_6_31, -1, 3, 0},
-{ 2, s_6_32, -1, 2, 0},
-{ 3, s_6_33, 32, 2, 0},
-{ 5, s_6_34, 33, 2, 0},
-{ 6, s_6_35, 33, 3, 0},
-{ 4, s_6_36, 32, 2, 0},
-{ 1, s_6_37, -1, 2, 0}
+static const symbol s_6_0[2] = { 'a', 'l' };
+static const symbol s_6_1[3] = { 0xE9, 'p', 'l' };
+static const symbol s_6_2[3] = { 'a', 'u', 'v' };
+static const struct among a_6[3] = {
+{ 2, s_6_0, 0, 1, 0},
+{ 3, s_6_1, 0, -1, 0},
+{ 3, s_6_2, 0, -1, 0}
};
-static const symbol s_7_0[1] = { 'e' };
-static const symbol s_7_1[4] = { 'I', 0xE8, 'r', 'e' };
-static const symbol s_7_2[4] = { 'i', 0xE8, 'r', 'e' };
-static const symbol s_7_3[3] = { 'i', 'o', 'n' };
-static const symbol s_7_4[3] = { 'I', 'e', 'r' };
-static const symbol s_7_5[3] = { 'i', 'e', 'r' };
-
-static const struct among a_7[6] =
-{
-{ 1, s_7_0, -1, 3, 0},
-{ 4, s_7_1, 0, 2, 0},
-{ 4, s_7_2, 0, 2, 0},
-{ 3, s_7_3, -1, 1, 0},
-{ 3, s_7_4, -1, 2, 0},
-{ 3, s_7_5, -1, 2, 0}
+static const symbol s_7_0[1] = { 'a' };
+static const symbol s_7_1[3] = { 'e', 'r', 'a' };
+static const symbol s_7_2[4] = { 'a', 'i', 's', 'e' };
+static const symbol s_7_3[4] = { 'a', 's', 's', 'e' };
+static const symbol s_7_4[4] = { 'a', 'n', 't', 'e' };
+static const symbol s_7_5[2] = { 0xE9, 'e' };
+static const symbol s_7_6[2] = { 'a', 'i' };
+static const symbol s_7_7[4] = { 'e', 'r', 'a', 'i' };
+static const symbol s_7_8[2] = { 'e', 'r' };
+static const symbol s_7_9[2] = { 'a', 's' };
+static const symbol s_7_10[4] = { 'e', 'r', 'a', 's' };
+static const symbol s_7_11[4] = { 0xE2, 'm', 'e', 's' };
+static const symbol s_7_12[5] = { 'a', 'i', 's', 'e', 's' };
+static const symbol s_7_13[5] = { 'a', 's', 's', 'e', 's' };
+static const symbol s_7_14[5] = { 'a', 'n', 't', 'e', 's' };
+static const symbol s_7_15[4] = { 0xE2, 't', 'e', 's' };
+static const symbol s_7_16[3] = { 0xE9, 'e', 's' };
+static const symbol s_7_17[3] = { 'a', 'i', 's' };
+static const symbol s_7_18[4] = { 'e', 'a', 'i', 's' };
+static const symbol s_7_19[5] = { 'e', 'r', 'a', 'i', 's' };
+static const symbol s_7_20[4] = { 'i', 'o', 'n', 's' };
+static const symbol s_7_21[6] = { 'e', 'r', 'i', 'o', 'n', 's' };
+static const symbol s_7_22[7] = { 'a', 's', 's', 'i', 'o', 'n', 's' };
+static const symbol s_7_23[5] = { 'e', 'r', 'o', 'n', 's' };
+static const symbol s_7_24[4] = { 'a', 'n', 't', 's' };
+static const symbol s_7_25[2] = { 0xE9, 's' };
+static const symbol s_7_26[3] = { 'a', 'i', 't' };
+static const symbol s_7_27[5] = { 'e', 'r', 'a', 'i', 't' };
+static const symbol s_7_28[3] = { 'a', 'n', 't' };
+static const symbol s_7_29[5] = { 'a', 'I', 'e', 'n', 't' };
+static const symbol s_7_30[7] = { 'e', 'r', 'a', 'I', 'e', 'n', 't' };
+static const symbol s_7_31[5] = { 0xE8, 'r', 'e', 'n', 't' };
+static const symbol s_7_32[6] = { 'a', 's', 's', 'e', 'n', 't' };
+static const symbol s_7_33[5] = { 'e', 'r', 'o', 'n', 't' };
+static const symbol s_7_34[2] = { 0xE2, 't' };
+static const symbol s_7_35[2] = { 'e', 'z' };
+static const symbol s_7_36[3] = { 'i', 'e', 'z' };
+static const symbol s_7_37[5] = { 'e', 'r', 'i', 'e', 'z' };
+static const symbol s_7_38[6] = { 'a', 's', 's', 'i', 'e', 'z' };
+static const symbol s_7_39[4] = { 'e', 'r', 'e', 'z' };
+static const symbol s_7_40[1] = { 0xE9 };
+static const struct among a_7[41] = {
+{ 1, s_7_0, 0, 3, 0},
+{ 3, s_7_1, -1, 2, 0},
+{ 4, s_7_2, 0, 4, 0},
+{ 4, s_7_3, 0, 3, 0},
+{ 4, s_7_4, 0, 3, 0},
+{ 2, s_7_5, 0, 2, 0},
+{ 2, s_7_6, 0, 3, 0},
+{ 4, s_7_7, -1, 2, 0},
+{ 2, s_7_8, 0, 2, 0},
+{ 2, s_7_9, 0, 3, 0},
+{ 4, s_7_10, -1, 2, 0},
+{ 4, s_7_11, 0, 3, 0},
+{ 5, s_7_12, 0, 4, 0},
+{ 5, s_7_13, 0, 3, 0},
+{ 5, s_7_14, 0, 3, 0},
+{ 4, s_7_15, 0, 3, 0},
+{ 3, s_7_16, 0, 2, 0},
+{ 3, s_7_17, 0, 4, 0},
+{ 4, s_7_18, -1, 2, 0},
+{ 5, s_7_19, -2, 2, 0},
+{ 4, s_7_20, 0, 1, 0},
+{ 6, s_7_21, -1, 2, 0},
+{ 7, s_7_22, -2, 3, 0},
+{ 5, s_7_23, 0, 2, 0},
+{ 4, s_7_24, 0, 3, 0},
+{ 2, s_7_25, 0, 2, 0},
+{ 3, s_7_26, 0, 3, 0},
+{ 5, s_7_27, -1, 2, 0},
+{ 3, s_7_28, 0, 3, 0},
+{ 5, s_7_29, 0, 3, 0},
+{ 7, s_7_30, -1, 2, 0},
+{ 5, s_7_31, 0, 2, 0},
+{ 6, s_7_32, 0, 3, 0},
+{ 5, s_7_33, 0, 2, 0},
+{ 2, s_7_34, 0, 3, 0},
+{ 2, s_7_35, 0, 2, 0},
+{ 3, s_7_36, -1, 2, 0},
+{ 5, s_7_37, -1, 2, 0},
+{ 6, s_7_38, -2, 3, 0},
+{ 4, s_7_39, -4, 2, 0},
+{ 1, s_7_40, 0, 2, 0}
};
-static const symbol s_8_0[3] = { 'e', 'l', 'l' };
-static const symbol s_8_1[4] = { 'e', 'i', 'l', 'l' };
-static const symbol s_8_2[3] = { 'e', 'n', 'n' };
-static const symbol s_8_3[3] = { 'o', 'n', 'n' };
-static const symbol s_8_4[3] = { 'e', 't', 't' };
+static const symbol s_8_0[1] = { 'e' };
+static const symbol s_8_1[4] = { 'I', 0xE8, 'r', 'e' };
+static const symbol s_8_2[4] = { 'i', 0xE8, 'r', 'e' };
+static const symbol s_8_3[3] = { 'i', 'o', 'n' };
+static const symbol s_8_4[3] = { 'I', 'e', 'r' };
+static const symbol s_8_5[3] = { 'i', 'e', 'r' };
+static const struct among a_8[6] = {
+{ 1, s_8_0, 0, 3, 0},
+{ 4, s_8_1, -1, 2, 0},
+{ 4, s_8_2, -2, 2, 0},
+{ 3, s_8_3, 0, 1, 0},
+{ 3, s_8_4, 0, 2, 0},
+{ 3, s_8_5, 0, 2, 0}
+};
-static const struct among a_8[5] =
-{
-{ 3, s_8_0, -1, -1, 0},
-{ 4, s_8_1, -1, -1, 0},
-{ 3, s_8_2, -1, -1, 0},
-{ 3, s_8_3, -1, -1, 0},
-{ 3, s_8_4, -1, -1, 0}
+static const symbol s_9_0[3] = { 'e', 'l', 'l' };
+static const symbol s_9_1[4] = { 'e', 'i', 'l', 'l' };
+static const symbol s_9_2[3] = { 'e', 'n', 'n' };
+static const symbol s_9_3[3] = { 'o', 'n', 'n' };
+static const symbol s_9_4[3] = { 'e', 't', 't' };
+static const struct among a_9[5] = {
+{ 3, s_9_0, 0, -1, 0},
+{ 4, s_9_1, 0, -1, 0},
+{ 3, s_9_2, 0, -1, 0},
+{ 3, s_9_3, 0, -1, 0},
+{ 3, s_9_4, 0, -1, 0}
};
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 130, 103, 8, 5 };
+static const unsigned char g_oux_ending[] = { 65, 85 };
+
static const unsigned char g_elision_char[] = { 131, 14, 3 };
static const unsigned char g_keep_with_s[] = { 1, 65, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
-static const symbol s_0[] = { 'q', 'u' };
-static const symbol s_1[] = { 'U' };
-static const symbol s_2[] = { 'I' };
-static const symbol s_3[] = { 'Y' };
-static const symbol s_4[] = { 'H', 'e' };
-static const symbol s_5[] = { 'H', 'i' };
-static const symbol s_6[] = { 'Y' };
-static const symbol s_7[] = { 'U' };
-static const symbol s_8[] = { 'i' };
-static const symbol s_9[] = { 'u' };
-static const symbol s_10[] = { 'y' };
-static const symbol s_11[] = { 0xEB };
-static const symbol s_12[] = { 0xEF };
-static const symbol s_13[] = { 'i', 'c' };
-static const symbol s_14[] = { 'i', 'q', 'U' };
-static const symbol s_15[] = { 'l', 'o', 'g' };
-static const symbol s_16[] = { 'u' };
-static const symbol s_17[] = { 'e', 'n', 't' };
-static const symbol s_18[] = { 'a', 't' };
-static const symbol s_19[] = { 'e', 'u', 'x' };
-static const symbol s_20[] = { 'i' };
-static const symbol s_21[] = { 'a', 'b', 'l' };
-static const symbol s_22[] = { 'i', 'q', 'U' };
-static const symbol s_23[] = { 'a', 't' };
-static const symbol s_24[] = { 'i', 'c' };
-static const symbol s_25[] = { 'i', 'q', 'U' };
-static const symbol s_26[] = { 'e', 'a', 'u' };
-static const symbol s_27[] = { 'a', 'l' };
-static const symbol s_28[] = { 'e', 'u', 'x' };
-static const symbol s_29[] = { 'a', 'n', 't' };
-static const symbol s_30[] = { 'e', 'n', 't' };
-static const symbol s_31[] = { 'H', 'i' };
-static const symbol s_32[] = { 'i' };
-static const symbol s_33[] = { 'e' };
-static const symbol s_34[] = { 'i' };
-static const symbol s_35[] = { 'c' };
-
static int r_elisions(struct SN_env * z) {
z->bra = z->c;
- { int c1 = z->c;
- if (in_grouping(z, g_elision_char, 99, 116, 0)) goto lab1;
- goto lab0;
- lab1:
- z->c = c1;
+ do {
+ int v_1 = z->c;
+ if (in_grouping(z, g_elision_char, 99, 116, 0)) goto lab0;
+ break;
+ lab0:
+ z->c = v_1;
if (!(eq_s(z, 2, s_0))) return 0;
- }
-lab0:
+ } while (0);
if (z->c == z->l || z->p[z->c] != '\'') return 0;
z->c++;
z->ket = z->c;
-
- if (z->c < z->l) goto lab2;
+ if (z->c < z->l) goto lab1;
return 0;
-lab2:
- { int ret = slice_del(z);
+lab1:
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
static int r_prelude(struct SN_env * z) {
- while(1) {
- int c1 = z->c;
- while(1) {
- int c2 = z->c;
- { int c3 = z->c;
- if (in_grouping(z, g_v, 97, 251, 0)) goto lab3;
+ while (1) {
+ int v_1 = z->c;
+ while (1) {
+ int v_2 = z->c;
+ do {
+ int v_3 = z->c;
+ if (in_grouping(z, g_v, 97, 251, 0)) goto lab2;
z->bra = z->c;
- { int c4 = z->c;
- if (z->c == z->l || z->p[z->c] != 'u') goto lab5;
+ do {
+ int v_4 = z->c;
+ if (z->c == z->l || z->p[z->c] != 'u') goto lab3;
z->c++;
z->ket = z->c;
- if (in_grouping(z, g_v, 97, 251, 0)) goto lab5;
- { int ret = slice_from_s(z, 1, s_1);
+ if (in_grouping(z, g_v, 97, 251, 0)) goto lab3;
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
- goto lab4;
- lab5:
- z->c = c4;
- if (z->c == z->l || z->p[z->c] != 'i') goto lab6;
+ break;
+ lab3:
+ z->c = v_4;
+ if (z->c == z->l || z->p[z->c] != 'i') goto lab4;
z->c++;
z->ket = z->c;
- if (in_grouping(z, g_v, 97, 251, 0)) goto lab6;
- { int ret = slice_from_s(z, 1, s_2);
+ if (in_grouping(z, g_v, 97, 251, 0)) goto lab4;
+ {
+ int ret = slice_from_s(z, 1, s_2);
if (ret < 0) return ret;
}
- goto lab4;
- lab6:
- z->c = c4;
- if (z->c == z->l || z->p[z->c] != 'y') goto lab3;
+ break;
+ lab4:
+ z->c = v_4;
+ if (z->c == z->l || z->p[z->c] != 'y') goto lab2;
z->c++;
z->ket = z->c;
- { int ret = slice_from_s(z, 1, s_3);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
- }
- lab4:
- goto lab2;
- lab3:
- z->c = c3;
+ } while (0);
+ break;
+ lab2:
+ z->c = v_3;
z->bra = z->c;
- if (z->c == z->l || z->p[z->c] != 0xEB) goto lab7;
+ if (z->c == z->l || z->p[z->c] != 0xEB) goto lab5;
z->c++;
z->ket = z->c;
- { int ret = slice_from_s(z, 2, s_4);
+ {
+ int ret = slice_from_s(z, 2, s_4);
if (ret < 0) return ret;
}
- goto lab2;
- lab7:
- z->c = c3;
+ break;
+ lab5:
+ z->c = v_3;
z->bra = z->c;
- if (z->c == z->l || z->p[z->c] != 0xEF) goto lab8;
+ if (z->c == z->l || z->p[z->c] != 0xEF) goto lab6;
z->c++;
z->ket = z->c;
- { int ret = slice_from_s(z, 2, s_5);
+ {
+ int ret = slice_from_s(z, 2, s_5);
if (ret < 0) return ret;
}
- goto lab2;
- lab8:
- z->c = c3;
+ break;
+ lab6:
+ z->c = v_3;
z->bra = z->c;
- if (z->c == z->l || z->p[z->c] != 'y') goto lab9;
+ if (z->c == z->l || z->p[z->c] != 'y') goto lab7;
z->c++;
z->ket = z->c;
- if (in_grouping(z, g_v, 97, 251, 0)) goto lab9;
- { int ret = slice_from_s(z, 1, s_6);
+ if (in_grouping(z, g_v, 97, 251, 0)) goto lab7;
+ {
+ int ret = slice_from_s(z, 1, s_6);
if (ret < 0) return ret;
}
- goto lab2;
- lab9:
- z->c = c3;
+ break;
+ lab7:
+ z->c = v_3;
if (z->c == z->l || z->p[z->c] != 'q') goto lab1;
z->c++;
z->bra = z->c;
if (z->c == z->l || z->p[z->c] != 'u') goto lab1;
z->c++;
z->ket = z->c;
- { int ret = slice_from_s(z, 1, s_7);
+ {
+ int ret = slice_from_s(z, 1, s_7);
if (ret < 0) return ret;
}
- }
- lab2:
- z->c = c2;
+ } while (0);
+ z->c = v_2;
break;
lab1:
- z->c = c2;
+ z->c = v_2;
if (z->c >= z->l) goto lab0;
z->c++;
}
continue;
lab0:
- z->c = c1;
+ z->c = v_1;
break;
}
return 1;
}
static int r_mark_regions(struct SN_env * z) {
- z->I[2] = z->l;
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
- { int c2 = z->c;
- if (in_grouping(z, g_v, 97, 251, 0)) goto lab2;
- if (in_grouping(z, g_v, 97, 251, 0)) goto lab2;
- if (z->c >= z->l) goto lab2;
+ int among_var;
+ ((SN_local *)z)->i_pV = z->l;
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ do {
+ int v_2 = z->c;
+ if (in_grouping(z, g_v, 97, 251, 0)) goto lab1;
+ if (in_grouping(z, g_v, 97, 251, 0)) goto lab1;
+ if (z->c >= z->l) goto lab1;
z->c++;
- goto lab1;
+ break;
+ lab1:
+ z->c = v_2;
+ if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 3 || !((33282 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab2;
+ among_var = find_among(z, a_0, 4, 0);
+ if (!among_var) goto lab2;
+ switch (among_var) {
+ case 1:
+ if (in_grouping(z, g_v, 97, 251, 0)) goto lab2;
+ break;
+ }
+ break;
lab2:
- z->c = c2;
- if (z->c + 2 >= z->l || z->p[z->c + 2] >> 5 != 3 || !((331776 >> (z->p[z->c + 2] & 0x1f)) & 1)) goto lab3;
- if (!find_among(z, a_0, 3)) goto lab3;
- goto lab1;
- lab3:
- z->c = c2;
+ z->c = v_2;
if (z->c >= z->l) goto lab0;
z->c++;
-
{
int ret = out_grouping(z, g_v, 97, 251, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- }
- lab1:
- z->I[2] = z->c;
+ } while (0);
+ ((SN_local *)z)->i_pV = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int c3 = z->c;
-
+ {
+ int v_3 = z->c;
{
int ret = out_grouping(z, g_v, 97, 251, 1);
- if (ret < 0) goto lab4;
+ if (ret < 0) goto lab3;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 251, 1);
- if (ret < 0) goto lab4;
+ if (ret < 0) goto lab3;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 251, 1);
- if (ret < 0) goto lab4;
+ if (ret < 0) goto lab3;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 251, 1);
- if (ret < 0) goto lab4;
+ if (ret < 0) goto lab3;
z->c += ret;
}
- z->I[0] = z->c;
- lab4:
- z->c = c3;
+ ((SN_local *)z)->i_p2 = z->c;
+ lab3:
+ z->c = v_3;
}
return 1;
}
static int r_postlude(struct SN_env * z) {
int among_var;
- while(1) {
- int c1 = z->c;
+ while (1) {
+ int v_1 = z->c;
z->bra = z->c;
if (z->c >= z->l || z->p[z->c + 0] >> 5 != 2 || !((35652352 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 7; else
- among_var = find_among(z, a_1, 7);
+ among_var = find_among(z, a_1, 7, 0);
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_8);
+ {
+ int ret = slice_from_s(z, 1, s_8);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_9);
+ {
+ int ret = slice_from_s(z, 1, s_9);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_10);
+ {
+ int ret = slice_from_s(z, 1, s_10);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 1, s_11);
+ {
+ int ret = slice_from_s(z, 1, s_11);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 1, s_12);
+ {
+ int ret = slice_from_s(z, 1, s_12);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
continue;
lab0:
- z->c = c1;
+ z->c = v_1;
break;
}
return 1;
}
static int r_RV(struct SN_env * z) {
- return z->I[2] <= z->c;
+ return ((SN_local *)z)->i_pV <= z->c;
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_standard_suffix(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_4, 43);
+ among_var = find_among_b(z, a_4, 44, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_13))) { z->c = z->l - m1; goto lab0; }
+ if (!(eq_s_b(z, 2, s_13))) { z->c = z->l - v_1; goto lab0; }
z->bra = z->c;
- { int m2 = z->l - z->c; (void)m2;
- { int ret = r_R2(z);
- if (ret == 0) goto lab2;
+ do {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- goto lab1;
- lab2:
- z->c = z->l - m2;
- { int ret = slice_from_s(z, 3, s_14);
+ break;
+ lab1:
+ z->c = z->l - v_2;
+ {
+ int ret = slice_from_s(z, 3, s_14);
if (ret < 0) return ret;
}
- }
- lab1:
+ } while (0);
lab0:
;
}
break;
case 3:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_15);
+ {
+ int ret = slice_from_s(z, 3, s_15);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 1, s_16);
+ {
+ int ret = slice_from_s(z, 1, s_16);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_17);
+ {
+ int ret = slice_from_s(z, 3, s_17);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m3 = z->l - z->c; (void)m3;
+ {
+ int v_3 = z->l - z->c;
z->ket = z->c;
- among_var = find_among_b(z, a_2, 6);
- if (!among_var) { z->c = z->l - m3; goto lab3; }
+ among_var = find_among_b(z, a_2, 6, 0);
+ if (!among_var) { z->c = z->l - v_3; goto lab2; }
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m3; goto lab3; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_3; goto lab2; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_18))) { z->c = z->l - m3; goto lab3; }
+ if (!(eq_s_b(z, 2, s_18))) { z->c = z->l - v_3; goto lab2; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m3; goto lab3; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_3; goto lab2; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_R2(z);
- if (ret == 0) goto lab5;
+ do {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- goto lab4;
- lab5:
- z->c = z->l - m4;
- { int ret = r_R1(z);
- if (ret == 0) { z->c = z->l - m3; goto lab3; }
+ break;
+ lab3:
+ z->c = z->l - v_4;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) { z->c = z->l - v_3; goto lab2; }
if (ret < 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_19);
+ {
+ int ret = slice_from_s(z, 3, s_19);
if (ret < 0) return ret;
}
- }
- lab4:
+ } while (0);
break;
case 3:
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m3; goto lab3; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_3; goto lab2; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = r_RV(z);
- if (ret == 0) { z->c = z->l - m3; goto lab3; }
+ {
+ int ret = r_RV(z);
+ if (ret == 0) { z->c = z->l - v_3; goto lab2; }
if (ret < 0) return ret;
}
- { int ret = slice_from_s(z, 1, s_20);
+ {
+ int ret = slice_from_s(z, 1, s_20);
if (ret < 0) return ret;
}
break;
}
- lab3:
+ lab2:
;
}
break;
case 7:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m5 = z->l - z->c; (void)m5;
+ {
+ int v_5 = z->l - z->c;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m5; goto lab6; }
- among_var = find_among_b(z, a_3, 3);
- if (!among_var) { z->c = z->l - m5; goto lab6; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_5; goto lab4; }
+ among_var = find_among_b(z, a_3, 3, 0);
+ if (!among_var) { z->c = z->l - v_5; goto lab4; }
z->bra = z->c;
switch (among_var) {
case 1:
- { int m6 = z->l - z->c; (void)m6;
- { int ret = r_R2(z);
- if (ret == 0) goto lab8;
+ do {
+ int v_6 = z->l - z->c;
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab5;
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- goto lab7;
- lab8:
- z->c = z->l - m6;
- { int ret = slice_from_s(z, 3, s_21);
+ break;
+ lab5:
+ z->c = z->l - v_6;
+ {
+ int ret = slice_from_s(z, 3, s_21);
if (ret < 0) return ret;
}
- }
- lab7:
+ } while (0);
break;
case 2:
- { int m7 = z->l - z->c; (void)m7;
- { int ret = r_R2(z);
- if (ret == 0) goto lab10;
+ do {
+ int v_7 = z->l - z->c;
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab6;
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- goto lab9;
- lab10:
- z->c = z->l - m7;
- { int ret = slice_from_s(z, 3, s_22);
+ break;
+ lab6:
+ z->c = z->l - v_7;
+ {
+ int ret = slice_from_s(z, 3, s_22);
if (ret < 0) return ret;
}
- }
- lab9:
+ } while (0);
break;
case 3:
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m5; goto lab6; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_5; goto lab4; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
- lab6:
+ lab4:
;
}
break;
case 8:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m8 = z->l - z->c; (void)m8;
+ {
+ int v_8 = z->l - z->c;
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_23))) { z->c = z->l - m8; goto lab11; }
+ if (!(eq_s_b(z, 2, s_23))) { z->c = z->l - v_8; goto lab7; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m8; goto lab11; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_8; goto lab7; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_24))) { z->c = z->l - m8; goto lab11; }
+ if (!(eq_s_b(z, 2, s_24))) { z->c = z->l - v_8; goto lab7; }
z->bra = z->c;
- { int m9 = z->l - z->c; (void)m9;
- { int ret = r_R2(z);
- if (ret == 0) goto lab13;
+ do {
+ int v_9 = z->l - z->c;
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab8;
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- goto lab12;
- lab13:
- z->c = z->l - m9;
- { int ret = slice_from_s(z, 3, s_25);
+ break;
+ lab8:
+ z->c = z->l - v_9;
+ {
+ int ret = slice_from_s(z, 3, s_25);
if (ret < 0) return ret;
}
- }
- lab12:
- lab11:
+ } while (0);
+ lab7:
;
}
break;
case 9:
- { int ret = slice_from_s(z, 3, s_26);
+ {
+ int ret = slice_from_s(z, 3, s_26);
if (ret < 0) return ret;
}
break;
case 10:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 2, s_27);
+ {
+ int ret = slice_from_s(z, 2, s_27);
if (ret < 0) return ret;
}
break;
case 11:
- { int m10 = z->l - z->c; (void)m10;
- { int ret = r_R2(z);
- if (ret == 0) goto lab15;
+ if (in_grouping_b(z, g_oux_ending, 98, 112, 0)) return 0;
+ {
+ int ret = slice_from_s(z, 2, s_28);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 12:
+ do {
+ int v_10 = z->l - z->c;
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab9;
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- goto lab14;
- lab15:
- z->c = z->l - m10;
- { int ret = r_R1(z);
+ break;
+ lab9:
+ z->c = z->l - v_10;
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_28);
+ {
+ int ret = slice_from_s(z, 3, s_29);
if (ret < 0) return ret;
}
- }
- lab14:
+ } while (0);
break;
- case 12:
- { int ret = r_R1(z);
+ case 13:
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
if (out_grouping_b(z, g_v, 97, 251, 0)) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
- case 13:
- { int ret = r_RV(z);
+ case 14:
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_29);
+ {
+ int ret = slice_from_s(z, 3, s_30);
if (ret < 0) return ret;
}
return 0;
break;
- case 14:
- { int ret = r_RV(z);
+ case 15:
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_30);
+ {
+ int ret = slice_from_s(z, 3, s_31);
if (ret < 0) return ret;
}
return 0;
break;
- case 15:
- { int m_test11 = z->l - z->c;
+ case 16:
+ {
+ int v_11 = z->l - z->c;
if (in_grouping_b(z, g_v, 97, 251, 0)) return 0;
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- z->c = z->l - m_test11;
+ z->c = z->l - v_11;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 0;
}
static int r_i_verb_suffix(struct SN_env * z) {
-
- { int mlimit1;
- if (z->c < z->I[2]) return 0;
- mlimit1 = z->lb; z->lb = z->I[2];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_pV) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68944418 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
- if (!find_among_b(z, a_5, 35)) { z->lb = mlimit1; return 0; }
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68944418 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_1; return 0; }
+ if (!find_among_b(z, a_5, 35, 0)) { z->lb = v_1; return 0; }
z->bra = z->c;
- { int m2 = z->l - z->c; (void)m2;
+ {
+ int v_2 = z->l - z->c;
if (z->c <= z->lb || z->p[z->c - 1] != 'H') goto lab0;
z->c--;
- { z->lb = mlimit1; return 0; }
+ { z->lb = v_1; return 0; }
lab0:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- if (out_grouping_b(z, g_v, 97, 251, 0)) { z->lb = mlimit1; return 0; }
- { int ret = slice_del(z);
+ if (out_grouping_b(z, g_v, 97, 251, 0)) { z->lb = v_1; return 0; }
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->lb = mlimit1;
+ z->lb = v_1;
}
return 1;
}
static int r_verb_suffix(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[2]) return 0;
- mlimit1 = z->lb; z->lb = z->I[2];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_pV) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
z->ket = z->c;
- among_var = find_among_b(z, a_6, 38);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ among_var = find_among_b(z, a_7, 41, 0);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- switch (among_var) {
- case 1:
- { int ret = r_R2(z);
- if (ret == 0) { z->lb = mlimit1; return 0; }
- if (ret < 0) return ret;
- }
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- break;
- case 2:
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- break;
- case 3:
- { int ret = slice_del(z);
+ z->lb = v_1;
+ }
+ switch (among_var) {
+ case 1:
+ {
+ int ret = r_R2(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int v_2 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'e') { z->c = z->l - v_2; goto lab0; }
+ z->c--;
+ {
+ int ret = r_RV(z);
+ if (ret == 0) { z->c = z->l - v_2; goto lab0; }
if (ret < 0) return ret;
}
- { int m2 = z->l - z->c; (void)m2;
- z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'e') { z->c = z->l - m2; goto lab0; }
- z->c--;
- z->bra = z->c;
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- lab0:
- ;
+ z->bra = z->c;
+ lab0:
+ ;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 4:
+ {
+ int v_3 = z->l - z->c;
+ if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 108 && z->p[z->c - 1] != 118)) goto lab1;
+ among_var = find_among_b(z, a_6, 3, 0);
+ if (!among_var) goto lab1;
+ switch (among_var) {
+ case 1:
+ if (z->c <= z->lb) goto lab1;
+ z->c--;
+ if (z->c > z->lb) goto lab1;
+ break;
}
- break;
- }
- z->lb = mlimit1;
+ return 0;
+ lab1:
+ z->c = z->l - v_3;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
}
return 1;
}
static int r_residual_suffix(struct SN_env * z) {
int among_var;
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 's') { z->c = z->l - m1; goto lab0; }
+ if (z->c <= z->lb || z->p[z->c - 1] != 's') { z->c = z->l - v_1; goto lab0; }
z->c--;
z->bra = z->c;
- { int m_test2 = z->l - z->c;
- { int m3 = z->l - z->c; (void)m3;
- if (!(eq_s_b(z, 2, s_31))) goto lab2;
- goto lab1;
- lab2:
- z->c = z->l - m3;
- if (out_grouping_b(z, g_keep_with_s, 97, 232, 0)) { z->c = z->l - m1; goto lab0; }
- }
- lab1:
- z->c = z->l - m_test2;
+ {
+ int v_2 = z->l - z->c;
+ do {
+ int v_3 = z->l - z->c;
+ if (!(eq_s_b(z, 2, s_32))) goto lab1;
+ break;
+ lab1:
+ z->c = z->l - v_3;
+ if (out_grouping_b(z, g_keep_with_s, 97, 232, 0)) { z->c = z->l - v_1; goto lab0; }
+ } while (0);
+ z->c = z->l - v_2;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab0:
;
}
-
- { int mlimit4;
- if (z->c < z->I[2]) return 0;
- mlimit4 = z->lb; z->lb = z->I[2];
+ {
+ int v_4;
+ if (z->c < ((SN_local *)z)->i_pV) return 0;
+ v_4 = z->lb; z->lb = ((SN_local *)z)->i_pV;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((278560 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit4; return 0; }
- among_var = find_among_b(z, a_7, 6);
- if (!among_var) { z->lb = mlimit4; return 0; }
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((278560 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_4; return 0; }
+ among_var = find_among_b(z, a_8, 6, 0);
+ if (!among_var) { z->lb = v_4; return 0; }
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R2(z);
- if (ret == 0) { z->lb = mlimit4; return 0; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->lb = v_4; return 0; }
if (ret < 0) return ret;
}
- { int m5 = z->l - z->c; (void)m5;
- if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab4;
+ do {
+ int v_5 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab2;
z->c--;
- goto lab3;
- lab4:
- z->c = z->l - m5;
- if (z->c <= z->lb || z->p[z->c - 1] != 't') { z->lb = mlimit4; return 0; }
+ break;
+ lab2:
+ z->c = z->l - v_5;
+ if (z->c <= z->lb || z->p[z->c - 1] != 't') { z->lb = v_4; return 0; }
z->c--;
- }
- lab3:
- { int ret = slice_del(z);
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_32);
+ {
+ int ret = slice_from_s(z, 1, s_33);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
- z->lb = mlimit4;
+ z->lb = v_4;
}
return 1;
}
static int r_un_double(struct SN_env * z) {
- { int m_test1 = z->l - z->c;
+ {
+ int v_1 = z->l - z->c;
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1069056 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- if (!find_among_b(z, a_8, 5)) return 0;
- z->c = z->l - m_test1;
+ if (!find_among_b(z, a_9, 5, 0)) return 0;
+ z->c = z->l - v_1;
}
z->ket = z->c;
if (z->c <= z->lb) return 0;
z->c--;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
static int r_un_accent(struct SN_env * z) {
- { int i = 1;
- while(1) {
+ {
+ int v_1 = 1;
+ while (1) {
if (out_grouping_b(z, g_v, 97, 251, 0)) goto lab0;
- i--;
+ v_1--;
continue;
lab0:
break;
}
- if (i > 0) return 0;
+ if (v_1 > 0) return 0;
}
z->ket = z->c;
- { int m1 = z->l - z->c; (void)m1;
- if (z->c <= z->lb || z->p[z->c - 1] != 0xE9) goto lab2;
+ do {
+ int v_2 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 0xE9) goto lab1;
z->c--;
- goto lab1;
- lab2:
- z->c = z->l - m1;
+ break;
+ lab1:
+ z->c = z->l - v_2;
if (z->c <= z->lb || z->p[z->c - 1] != 0xE8) return 0;
z->c--;
- }
-lab1:
+ } while (0);
z->bra = z->c;
- { int ret = slice_from_s(z, 1, s_33);
+ {
+ int ret = slice_from_s(z, 1, s_34);
if (ret < 0) return ret;
}
return 1;
}
extern int french_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_elisions(z);
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_elisions(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
- { int c2 = z->c;
- { int ret = r_prelude(z);
+ {
+ int v_2 = z->c;
+ {
+ int ret = r_prelude(z);
if (ret < 0) return ret;
}
- z->c = c2;
+ z->c = v_2;
}
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
- { int m3 = z->l - z->c; (void)m3;
- { int m4 = z->l - z->c; (void)m4;
- { int m5 = z->l - z->c; (void)m5;
- { int m6 = z->l - z->c; (void)m6;
- { int ret = r_standard_suffix(z);
- if (ret == 0) goto lab4;
+ {
+ int v_3 = z->l - z->c;
+ do {
+ int v_4 = z->l - z->c;
+ {
+ int v_5 = z->l - z->c;
+ do {
+ int v_6 = z->l - z->c;
+ {
+ int ret = r_standard_suffix(z);
+ if (ret == 0) goto lab2;
if (ret < 0) return ret;
}
- goto lab3;
- lab4:
- z->c = z->l - m6;
- { int ret = r_i_verb_suffix(z);
- if (ret == 0) goto lab5;
+ break;
+ lab2:
+ z->c = z->l - v_6;
+ {
+ int ret = r_i_verb_suffix(z);
+ if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
- goto lab3;
- lab5:
- z->c = z->l - m6;
- { int ret = r_verb_suffix(z);
- if (ret == 0) goto lab2;
+ break;
+ lab3:
+ z->c = z->l - v_6;
+ {
+ int ret = r_verb_suffix(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- }
- lab3:
- z->c = z->l - m5;
- { int m7 = z->l - z->c; (void)m7;
+ } while (0);
+ z->c = z->l - v_5;
+ {
+ int v_7 = z->l - z->c;
z->ket = z->c;
- { int m8 = z->l - z->c; (void)m8;
- if (z->c <= z->lb || z->p[z->c - 1] != 'Y') goto lab8;
+ do {
+ int v_8 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'Y') goto lab5;
z->c--;
z->bra = z->c;
- { int ret = slice_from_s(z, 1, s_34);
+ {
+ int ret = slice_from_s(z, 1, s_35);
if (ret < 0) return ret;
}
- goto lab7;
- lab8:
- z->c = z->l - m8;
- if (z->c <= z->lb || z->p[z->c - 1] != 0xE7) { z->c = z->l - m7; goto lab6; }
+ break;
+ lab5:
+ z->c = z->l - v_8;
+ if (z->c <= z->lb || z->p[z->c - 1] != 0xE7) { z->c = z->l - v_7; goto lab4; }
z->c--;
z->bra = z->c;
- { int ret = slice_from_s(z, 1, s_35);
+ {
+ int ret = slice_from_s(z, 1, s_36);
if (ret < 0) return ret;
}
- }
- lab7:
- lab6:
+ } while (0);
+ lab4:
;
}
}
- goto lab1;
- lab2:
- z->c = z->l - m4;
- { int ret = r_residual_suffix(z);
+ break;
+ lab1:
+ z->c = z->l - v_4;
+ {
+ int ret = r_residual_suffix(z);
if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- }
- lab1:
+ } while (0);
lab0:
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- { int m9 = z->l - z->c; (void)m9;
- { int ret = r_un_double(z);
+ {
+ int v_9 = z->l - z->c;
+ {
+ int ret = r_un_double(z);
if (ret < 0) return ret;
}
- z->c = z->l - m9;
+ z->c = z->l - v_9;
}
- { int m10 = z->l - z->c; (void)m10;
- { int ret = r_un_accent(z);
+ {
+ int v_10 = z->l - z->c;
+ {
+ int ret = r_un_accent(z);
if (ret < 0) return ret;
}
- z->c = z->l - m10;
+ z->c = z->l - v_10;
}
z->c = z->lb;
- { int c11 = z->c;
- { int ret = r_postlude(z);
+ {
+ int v_11 = z->c;
+ {
+ int ret = r_postlude(z);
if (ret < 0) return ret;
}
- z->c = c11;
+ z->c = v_11;
}
return 1;
}
-extern struct SN_env * french_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * french_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->i_pV = 0;
+ }
+ return z;
+}
-extern void french_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void french_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from german.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_german.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_standard_suffix(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_postlude(struct SN_env * z);
static int r_prelude(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * german_ISO_8859_1_create_env(void);
-extern void german_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 'U' };
+static const symbol s_1[] = { 'Y' };
+static const symbol s_2[] = { 's', 's' };
+static const symbol s_3[] = { 0xE4 };
+static const symbol s_4[] = { 0xF6 };
+static const symbol s_5[] = { 0xFC };
+static const symbol s_6[] = { 'y' };
+static const symbol s_7[] = { 'u' };
+static const symbol s_8[] = { 'a' };
+static const symbol s_9[] = { 'o' };
+static const symbol s_10[] = { 's', 'y', 's', 't' };
+static const symbol s_11[] = { 'n', 'i', 's' };
+static const symbol s_12[] = { 'l' };
+static const symbol s_13[] = { 'i', 'g' };
+static const symbol s_14[] = { 'e', 'r' };
+static const symbol s_15[] = { 'e', 'n' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_1[2] = { 'a', 'e' };
static const symbol s_0_2[2] = { 'o', 'e' };
static const symbol s_0_3[2] = { 'q', 'u' };
static const symbol s_0_4[2] = { 'u', 'e' };
static const symbol s_0_5[1] = { 0xDF };
-
-static const struct among a_0[6] =
-{
-{ 0, 0, -1, 5, 0},
-{ 2, s_0_1, 0, 2, 0},
-{ 2, s_0_2, 0, 3, 0},
-{ 2, s_0_3, 0, -1, 0},
-{ 2, s_0_4, 0, 4, 0},
-{ 1, s_0_5, 0, 1, 0}
+static const struct among a_0[6] = {
+{ 0, 0, 0, 5, 0},
+{ 2, s_0_1, -1, 2, 0},
+{ 2, s_0_2, -2, 3, 0},
+{ 2, s_0_3, -3, -1, 0},
+{ 2, s_0_4, -4, 4, 0},
+{ 1, s_0_5, -5, 1, 0}
};
static const symbol s_1_1[1] = { 'U' };
static const symbol s_1_3[1] = { 0xE4 };
static const symbol s_1_4[1] = { 0xF6 };
static const symbol s_1_5[1] = { 0xFC };
-
-static const struct among a_1[6] =
-{
-{ 0, 0, -1, 5, 0},
-{ 1, s_1_1, 0, 2, 0},
-{ 1, s_1_2, 0, 1, 0},
-{ 1, s_1_3, 0, 3, 0},
-{ 1, s_1_4, 0, 4, 0},
-{ 1, s_1_5, 0, 2, 0}
+static const struct among a_1[6] = {
+{ 0, 0, 0, 5, 0},
+{ 1, s_1_1, -1, 2, 0},
+{ 1, s_1_2, -2, 1, 0},
+{ 1, s_1_3, -3, 3, 0},
+{ 1, s_1_4, -4, 4, 0},
+{ 1, s_1_5, -5, 2, 0}
};
static const symbol s_2_0[1] = { 'e' };
static const symbol s_2_8[1] = { 's' };
static const symbol s_2_9[2] = { 'e', 's' };
static const symbol s_2_10[3] = { 'l', 'n', 's' };
-
-static const struct among a_2[11] =
-{
-{ 1, s_2_0, -1, 3, 0},
-{ 2, s_2_1, -1, 1, 0},
-{ 2, s_2_2, -1, 3, 0},
-{ 7, s_2_3, 2, 2, 0},
-{ 4, s_2_4, -1, 2, 0},
-{ 2, s_2_5, -1, 5, 0},
-{ 3, s_2_6, -1, 2, 0},
-{ 2, s_2_7, -1, 2, 0},
-{ 1, s_2_8, -1, 4, 0},
-{ 2, s_2_9, 8, 3, 0},
-{ 3, s_2_10, 8, 5, 0}
+static const struct among a_2[11] = {
+{ 1, s_2_0, 0, 3, 0},
+{ 2, s_2_1, 0, 1, 0},
+{ 2, s_2_2, 0, 3, 0},
+{ 7, s_2_3, -1, 2, 0},
+{ 4, s_2_4, 0, 2, 0},
+{ 2, s_2_5, 0, 5, 0},
+{ 3, s_2_6, 0, 2, 0},
+{ 2, s_2_7, 0, 2, 0},
+{ 1, s_2_8, 0, 4, 0},
+{ 2, s_2_9, -1, 3, 0},
+{ 3, s_2_10, -2, 5, 0}
};
-static const symbol s_3_0[2] = { 'e', 'n' };
-static const symbol s_3_1[2] = { 'e', 'r' };
-static const symbol s_3_2[2] = { 's', 't' };
-static const symbol s_3_3[3] = { 'e', 's', 't' };
-
-static const struct among a_3[4] =
-{
-{ 2, s_3_0, -1, 1, 0},
-{ 2, s_3_1, -1, 1, 0},
-{ 2, s_3_2, -1, 2, 0},
-{ 3, s_3_3, 2, 1, 0}
+static const symbol s_3_0[4] = { 't', 'i', 'c', 'k' };
+static const symbol s_3_1[4] = { 'p', 'l', 'a', 'n' };
+static const symbol s_3_2[6] = { 'g', 'e', 'o', 'r', 'd', 'n' };
+static const symbol s_3_3[6] = { 'i', 'n', 't', 'e', 'r', 'n' };
+static const symbol s_3_4[2] = { 't', 'r' };
+static const struct among a_3[5] = {
+{ 4, s_3_0, 0, -1, 0},
+{ 4, s_3_1, 0, -1, 0},
+{ 6, s_3_2, 0, -1, 0},
+{ 6, s_3_3, 0, -1, 0},
+{ 2, s_3_4, 0, -1, 0}
};
-static const symbol s_4_0[2] = { 'i', 'g' };
-static const symbol s_4_1[4] = { 'l', 'i', 'c', 'h' };
-
-static const struct among a_4[2] =
-{
-{ 2, s_4_0, -1, 1, 0},
-{ 4, s_4_1, -1, 1, 0}
+static const symbol s_4_0[2] = { 'e', 'n' };
+static const symbol s_4_1[2] = { 'e', 'r' };
+static const symbol s_4_2[2] = { 'e', 't' };
+static const symbol s_4_3[2] = { 's', 't' };
+static const symbol s_4_4[3] = { 'e', 's', 't' };
+static const struct among a_4[5] = {
+{ 2, s_4_0, 0, 1, 0},
+{ 2, s_4_1, 0, 1, 0},
+{ 2, s_4_2, 0, 3, 0},
+{ 2, s_4_3, 0, 2, 0},
+{ 3, s_4_4, -1, 1, 0}
};
-static const symbol s_5_0[3] = { 'e', 'n', 'd' };
-static const symbol s_5_1[2] = { 'i', 'g' };
-static const symbol s_5_2[3] = { 'u', 'n', 'g' };
-static const symbol s_5_3[4] = { 'l', 'i', 'c', 'h' };
-static const symbol s_5_4[4] = { 'i', 's', 'c', 'h' };
-static const symbol s_5_5[2] = { 'i', 'k' };
-static const symbol s_5_6[4] = { 'h', 'e', 'i', 't' };
-static const symbol s_5_7[4] = { 'k', 'e', 'i', 't' };
+static const symbol s_5_0[2] = { 'i', 'g' };
+static const symbol s_5_1[4] = { 'l', 'i', 'c', 'h' };
+static const struct among a_5[2] = {
+{ 2, s_5_0, 0, 1, 0},
+{ 4, s_5_1, 0, 1, 0}
+};
-static const struct among a_5[8] =
-{
-{ 3, s_5_0, -1, 1, 0},
-{ 2, s_5_1, -1, 2, 0},
-{ 3, s_5_2, -1, 1, 0},
-{ 4, s_5_3, -1, 3, 0},
-{ 4, s_5_4, -1, 2, 0},
-{ 2, s_5_5, -1, 2, 0},
-{ 4, s_5_6, -1, 3, 0},
-{ 4, s_5_7, -1, 4, 0}
+static const symbol s_6_0[3] = { 'e', 'n', 'd' };
+static const symbol s_6_1[2] = { 'i', 'g' };
+static const symbol s_6_2[3] = { 'u', 'n', 'g' };
+static const symbol s_6_3[4] = { 'l', 'i', 'c', 'h' };
+static const symbol s_6_4[4] = { 'i', 's', 'c', 'h' };
+static const symbol s_6_5[2] = { 'i', 'k' };
+static const symbol s_6_6[4] = { 'h', 'e', 'i', 't' };
+static const symbol s_6_7[4] = { 'k', 'e', 'i', 't' };
+static const struct among a_6[8] = {
+{ 3, s_6_0, 0, 1, 0},
+{ 2, s_6_1, 0, 2, 0},
+{ 3, s_6_2, 0, 1, 0},
+{ 4, s_6_3, 0, 3, 0},
+{ 4, s_6_4, 0, 2, 0},
+{ 2, s_6_5, 0, 2, 0},
+{ 4, s_6_6, 0, 3, 0},
+{ 4, s_6_7, 0, 4, 0}
};
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 32, 8 };
+static const unsigned char g_et_ending[] = { 1, 128, 198, 227, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
+
static const unsigned char g_s_ending[] = { 117, 30, 5 };
static const unsigned char g_st_ending[] = { 117, 30, 4 };
-static const symbol s_0[] = { 'U' };
-static const symbol s_1[] = { 'Y' };
-static const symbol s_2[] = { 's', 's' };
-static const symbol s_3[] = { 0xE4 };
-static const symbol s_4[] = { 0xF6 };
-static const symbol s_5[] = { 0xFC };
-static const symbol s_6[] = { 'y' };
-static const symbol s_7[] = { 'u' };
-static const symbol s_8[] = { 'a' };
-static const symbol s_9[] = { 'o' };
-static const symbol s_10[] = { 's', 'y', 's', 't' };
-static const symbol s_11[] = { 'n', 'i', 's' };
-static const symbol s_12[] = { 'l' };
-static const symbol s_13[] = { 'i', 'g' };
-static const symbol s_14[] = { 'e', 'r' };
-static const symbol s_15[] = { 'e', 'n' };
-
static int r_prelude(struct SN_env * z) {
int among_var;
- { int c_test1 = z->c;
- while(1) {
- int c2 = z->c;
- while(1) {
- int c3 = z->c;
+ {
+ int v_1 = z->c;
+ while (1) {
+ int v_2 = z->c;
+ while (1) {
+ int v_3 = z->c;
if (in_grouping(z, g_v, 97, 252, 0)) goto lab1;
z->bra = z->c;
- { int c4 = z->c;
- if (z->c == z->l || z->p[z->c] != 'u') goto lab3;
+ do {
+ int v_4 = z->c;
+ if (z->c == z->l || z->p[z->c] != 'u') goto lab2;
z->c++;
z->ket = z->c;
- if (in_grouping(z, g_v, 97, 252, 0)) goto lab3;
- { int ret = slice_from_s(z, 1, s_0);
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
+ {
+ int ret = slice_from_s(z, 1, s_0);
if (ret < 0) return ret;
}
- goto lab2;
- lab3:
- z->c = c4;
+ break;
+ lab2:
+ z->c = v_4;
if (z->c == z->l || z->p[z->c] != 'y') goto lab1;
z->c++;
z->ket = z->c;
if (in_grouping(z, g_v, 97, 252, 0)) goto lab1;
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
- }
- lab2:
- z->c = c3;
+ } while (0);
+ z->c = v_3;
break;
lab1:
- z->c = c3;
+ z->c = v_3;
if (z->c >= z->l) goto lab0;
z->c++;
}
continue;
lab0:
- z->c = c2;
+ z->c = v_2;
break;
}
- z->c = c_test1;
+ z->c = v_1;
}
- while(1) {
- int c5 = z->c;
+ while (1) {
+ int v_5 = z->c;
z->bra = z->c;
- among_var = find_among(z, a_0, 6);
+ among_var = find_among(z, a_0, 6, 0);
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 2, s_2);
+ {
+ int ret = slice_from_s(z, 2, s_2);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_3);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_4);
+ {
+ int ret = slice_from_s(z, 1, s_4);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 1, s_5);
+ {
+ int ret = slice_from_s(z, 1, s_5);
if (ret < 0) return ret;
}
break;
case 5:
- if (z->c >= z->l) goto lab4;
+ if (z->c >= z->l) goto lab3;
z->c++;
break;
}
continue;
- lab4:
- z->c = c5;
+ lab3:
+ z->c = v_5;
break;
}
return 1;
}
static int r_mark_regions(struct SN_env * z) {
- z->I[2] = z->l;
- z->I[1] = z->l;
- { int c_test1 = z->c;
-z->c = z->c + 3;
- if (z->c > z->l) return 0;
- z->I[0] = z->c;
- z->c = c_test1;
+ int i_x;
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ if (z->c + 3 > z->l) return 0;
+ z->c += 3;
+ i_x = z->c;
+ z->c = v_1;
}
-
{
int ret = out_grouping(z, g_v, 97, 252, 1);
if (ret < 0) return 0;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 252, 1);
if (ret < 0) return 0;
z->c += ret;
}
- z->I[2] = z->c;
-
- if (z->I[2] >= z->I[0]) goto lab0;
- z->I[2] = z->I[0];
+ ((SN_local *)z)->i_p1 = z->c;
+ if (((SN_local *)z)->i_p1 >= i_x) goto lab0;
+ ((SN_local *)z)->i_p1 = i_x;
lab0:
-
{
int ret = out_grouping(z, g_v, 97, 252, 1);
if (ret < 0) return 0;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 252, 1);
if (ret < 0) return 0;
z->c += ret;
}
- z->I[1] = z->c;
+ ((SN_local *)z)->i_p2 = z->c;
return 1;
}
static int r_postlude(struct SN_env * z) {
int among_var;
- while(1) {
- int c1 = z->c;
+ while (1) {
+ int v_1 = z->c;
z->bra = z->c;
- among_var = find_among(z, a_1, 6);
+ among_var = find_among(z, a_1, 6, 0);
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_6);
+ {
+ int ret = slice_from_s(z, 1, s_6);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_7);
+ {
+ int ret = slice_from_s(z, 1, s_7);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_8);
+ {
+ int ret = slice_from_s(z, 1, s_8);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 1, s_9);
+ {
+ int ret = slice_from_s(z, 1, s_9);
if (ret < 0) return ret;
}
break;
}
continue;
lab0:
- z->c = c1;
+ z->c = v_1;
break;
}
return 1;
}
static int r_R1(struct SN_env * z) {
- return z->I[2] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_standard_suffix(struct SN_env * z) {
int among_var;
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((811040 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
- among_var = find_among_b(z, a_2, 11);
+ among_var = find_among_b(z, a_2, 11, 0);
if (!among_var) goto lab0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
switch (among_var) {
case 1:
- { int m2 = z->l - z->c; (void)m2;
+ {
+ int v_2 = z->l - z->c;
if (!(eq_s_b(z, 4, s_10))) goto lab1;
goto lab0;
lab1:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m3 = z->l - z->c; (void)m3;
+ {
+ int v_3 = z->l - z->c;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 's') { z->c = z->l - m3; goto lab2; }
+ if (z->c <= z->lb || z->p[z->c - 1] != 's') { z->c = z->l - v_3; goto lab2; }
z->c--;
z->bra = z->c;
- if (!(eq_s_b(z, 3, s_11))) { z->c = z->l - m3; goto lab2; }
- { int ret = slice_del(z);
+ if (!(eq_s_b(z, 3, s_11))) { z->c = z->l - v_3; goto lab2; }
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab2:
break;
case 4:
if (in_grouping_b(z, g_s_ending, 98, 116, 0)) goto lab0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 1, s_12);
+ {
+ int ret = slice_from_s(z, 1, s_12);
if (ret < 0) return ret;
}
break;
}
lab0:
- z->c = z->l - m1;
+ z->c = z->l - v_1;
}
- { int m4 = z->l - z->c; (void)m4;
+ {
+ int v_4 = z->l - z->c;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1327104 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab3;
- among_var = find_among_b(z, a_3, 4);
+ among_var = find_among_b(z, a_4, 5, 0);
if (!among_var) goto lab3;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (in_grouping_b(z, g_st_ending, 98, 116, 0)) goto lab3;
-z->c = z->c - 3;
- if (z->c < z->lb) goto lab3;
- { int ret = slice_del(z);
+ if (z->c - 3 < z->lb) goto lab3;
+ z->c -= 3;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int v_5 = z->l - z->c;
+ if (in_grouping_b(z, g_et_ending, 85, 228, 0)) goto lab3;
+ z->c = z->l - v_5;
+ }
+ {
+ int v_6 = z->l - z->c;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((280576 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab4;
+ if (!find_among_b(z, a_3, 5, 0)) goto lab4;
+ goto lab3;
+ lab4:
+ z->c = z->l - v_6;
+ }
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
lab3:
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
- { int m5 = z->l - z->c; (void)m5;
+ {
+ int v_7 = z->l - z->c;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1051024 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab4;
- among_var = find_among_b(z, a_5, 8);
- if (!among_var) goto lab4;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1051024 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab5;
+ among_var = find_among_b(z, a_6, 8, 0);
+ if (!among_var) goto lab5;
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) goto lab4;
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab5;
if (ret < 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m6 = z->l - z->c; (void)m6;
+ {
+ int v_8 = z->l - z->c;
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_13))) { z->c = z->l - m6; goto lab5; }
+ if (!(eq_s_b(z, 2, s_13))) { z->c = z->l - v_8; goto lab6; }
z->bra = z->c;
- { int m7 = z->l - z->c; (void)m7;
- if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab6;
+ {
+ int v_9 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7;
z->c--;
- { z->c = z->l - m6; goto lab5; }
- lab6:
- z->c = z->l - m7;
+ { z->c = z->l - v_8; goto lab6; }
+ lab7:
+ z->c = z->l - v_9;
}
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m6; goto lab5; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_8; goto lab6; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- lab5:
+ lab6:
;
}
break;
case 2:
- { int m8 = z->l - z->c; (void)m8;
- if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab7;
+ {
+ int v_10 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab8;
z->c--;
- goto lab4;
- lab7:
- z->c = z->l - m8;
+ goto lab5;
+ lab8:
+ z->c = z->l - v_10;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m9 = z->l - z->c; (void)m9;
+ {
+ int v_11 = z->l - z->c;
z->ket = z->c;
- { int m10 = z->l - z->c; (void)m10;
+ do {
+ int v_12 = z->l - z->c;
if (!(eq_s_b(z, 2, s_14))) goto lab10;
- goto lab9;
+ break;
lab10:
- z->c = z->l - m10;
- if (!(eq_s_b(z, 2, s_15))) { z->c = z->l - m9; goto lab8; }
- }
- lab9:
+ z->c = z->l - v_12;
+ if (!(eq_s_b(z, 2, s_15))) { z->c = z->l - v_11; goto lab9; }
+ } while (0);
z->bra = z->c;
- { int ret = r_R1(z);
- if (ret == 0) { z->c = z->l - m9; goto lab8; }
+ {
+ int ret = r_R1(z);
+ if (ret == 0) { z->c = z->l - v_11; goto lab9; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- lab8:
+ lab9:
;
}
break;
case 4:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m11 = z->l - z->c; (void)m11;
+ {
+ int v_13 = z->l - z->c;
z->ket = z->c;
- if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 103 && z->p[z->c - 1] != 104)) { z->c = z->l - m11; goto lab11; }
- if (!find_among_b(z, a_4, 2)) { z->c = z->l - m11; goto lab11; }
+ if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 103 && z->p[z->c - 1] != 104)) { z->c = z->l - v_13; goto lab11; }
+ if (!find_among_b(z, a_5, 2, 0)) { z->c = z->l - v_13; goto lab11; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m11; goto lab11; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_13; goto lab11; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab11:
}
break;
}
- lab4:
- z->c = z->l - m5;
+ lab5:
+ z->c = z->l - v_7;
}
return 1;
}
extern int german_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_prelude(z);
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_prelude(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
- { int c2 = z->c;
- { int ret = r_mark_regions(z);
+ {
+ int v_2 = z->c;
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
- z->c = c2;
+ z->c = v_2;
}
z->lb = z->c; z->c = z->l;
-
-
- { int ret = r_standard_suffix(z);
+ {
+ int ret = r_standard_suffix(z);
if (ret < 0) return ret;
}
z->c = z->lb;
- { int c3 = z->c;
- { int ret = r_postlude(z);
+ {
+ int v_3 = z->c;
+ {
+ int ret = r_postlude(z);
if (ret < 0) return ret;
}
- z->c = c3;
+ z->c = v_3;
}
return 1;
}
-extern struct SN_env * german_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * german_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ }
+ return z;
+}
-extern void german_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void german_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from indonesian.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_indonesian.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_prefix;
+ int i_measure;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
-static int r_VOWEL(struct SN_env * z);
-static int r_SUFFIX_I_OK(struct SN_env * z);
-static int r_SUFFIX_AN_OK(struct SN_env * z);
-static int r_SUFFIX_KAN_OK(struct SN_env * z);
-static int r_KER(struct SN_env * z);
+
static int r_remove_suffix(struct SN_env * z);
static int r_remove_second_order_prefix(struct SN_env * z);
static int r_remove_first_order_prefix(struct SN_env * z);
static int r_remove_possessive_pronoun(struct SN_env * z);
static int r_remove_particle(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * indonesian_ISO_8859_1_create_env(void);
-extern void indonesian_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 's' };
+static const symbol s_1[] = { 's' };
+static const symbol s_2[] = { 'p' };
+static const symbol s_3[] = { 'p' };
+static const symbol s_4[] = { 'a', 'j', 'a', 'r' };
+static const symbol s_5[] = { 'a', 'j', 'a', 'r' };
+static const symbol s_6[] = { 'e', 'r' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[3] = { 'k', 'a', 'h' };
static const symbol s_0_1[3] = { 'l', 'a', 'h' };
static const symbol s_0_2[3] = { 'p', 'u', 'n' };
-
-static const struct among a_0[3] =
-{
-{ 3, s_0_0, -1, 1, 0},
-{ 3, s_0_1, -1, 1, 0},
-{ 3, s_0_2, -1, 1, 0}
+static const struct among a_0[3] = {
+{ 3, s_0_0, 0, 1, 0},
+{ 3, s_0_1, 0, 1, 0},
+{ 3, s_0_2, 0, 1, 0}
};
static const symbol s_1_0[3] = { 'n', 'y', 'a' };
static const symbol s_1_1[2] = { 'k', 'u' };
static const symbol s_1_2[2] = { 'm', 'u' };
-
-static const struct among a_1[3] =
-{
-{ 3, s_1_0, -1, 1, 0},
-{ 2, s_1_1, -1, 1, 0},
-{ 2, s_1_2, -1, 1, 0}
+static const struct among a_1[3] = {
+{ 3, s_1_0, 0, 1, 0},
+{ 2, s_1_1, 0, 1, 0},
+{ 2, s_1_2, 0, 1, 0}
};
static const symbol s_2_0[1] = { 'i' };
static const symbol s_2_1[2] = { 'a', 'n' };
-static const symbol s_2_2[3] = { 'k', 'a', 'n' };
-
-static const struct among a_2[3] =
-{
-{ 1, s_2_0, -1, 1, r_SUFFIX_I_OK},
-{ 2, s_2_1, -1, 1, r_SUFFIX_AN_OK},
-{ 3, s_2_2, 1, 1, r_SUFFIX_KAN_OK}
+static const struct among a_2[2] = {
+{ 1, s_2_0, 0, 2, 0},
+{ 2, s_2_1, 0, 1, 0}
};
static const symbol s_3_0[2] = { 'd', 'i' };
static const symbol s_3_3[3] = { 'm', 'e', 'm' };
static const symbol s_3_4[3] = { 'm', 'e', 'n' };
static const symbol s_3_5[4] = { 'm', 'e', 'n', 'g' };
-static const symbol s_3_6[4] = { 'm', 'e', 'n', 'y' };
-static const symbol s_3_7[3] = { 'p', 'e', 'm' };
-static const symbol s_3_8[3] = { 'p', 'e', 'n' };
-static const symbol s_3_9[4] = { 'p', 'e', 'n', 'g' };
-static const symbol s_3_10[4] = { 'p', 'e', 'n', 'y' };
-static const symbol s_3_11[3] = { 't', 'e', 'r' };
-
-static const struct among a_3[12] =
-{
-{ 2, s_3_0, -1, 1, 0},
-{ 2, s_3_1, -1, 2, 0},
-{ 2, s_3_2, -1, 1, 0},
-{ 3, s_3_3, 2, 5, 0},
-{ 3, s_3_4, 2, 1, 0},
-{ 4, s_3_5, 4, 1, 0},
-{ 4, s_3_6, 4, 3, r_VOWEL},
-{ 3, s_3_7, -1, 6, 0},
-{ 3, s_3_8, -1, 2, 0},
-{ 4, s_3_9, 8, 2, 0},
-{ 4, s_3_10, 8, 4, r_VOWEL},
-{ 3, s_3_11, -1, 1, 0}
+static const symbol s_3_6[3] = { 'p', 'e', 'm' };
+static const symbol s_3_7[3] = { 'p', 'e', 'n' };
+static const symbol s_3_8[4] = { 'p', 'e', 'n', 'g' };
+static const symbol s_3_9[3] = { 't', 'e', 'r' };
+static const struct among a_3[10] = {
+{ 2, s_3_0, 0, 1, 0},
+{ 2, s_3_1, 0, 3, 0},
+{ 2, s_3_2, 0, 1, 0},
+{ 3, s_3_3, -1, 5, 0},
+{ 3, s_3_4, -2, 2, 0},
+{ 4, s_3_5, -1, 1, 0},
+{ 3, s_3_6, 0, 6, 0},
+{ 3, s_3_7, 0, 4, 0},
+{ 4, s_3_8, -1, 3, 0},
+{ 3, s_3_9, 0, 1, 0}
};
static const symbol s_4_0[2] = { 'b', 'e' };
-static const symbol s_4_1[7] = { 'b', 'e', 'l', 'a', 'j', 'a', 'r' };
-static const symbol s_4_2[3] = { 'b', 'e', 'r' };
-static const symbol s_4_3[2] = { 'p', 'e' };
-static const symbol s_4_4[7] = { 'p', 'e', 'l', 'a', 'j', 'a', 'r' };
-static const symbol s_4_5[3] = { 'p', 'e', 'r' };
-
-static const struct among a_4[6] =
-{
-{ 2, s_4_0, -1, 3, r_KER},
-{ 7, s_4_1, 0, 4, 0},
-{ 3, s_4_2, 0, 3, 0},
-{ 2, s_4_3, -1, 1, 0},
-{ 7, s_4_4, 3, 2, 0},
-{ 3, s_4_5, 3, 1, 0}
+static const symbol s_4_1[2] = { 'p', 'e' };
+static const struct among a_4[2] = {
+{ 2, s_4_0, 0, 2, 0},
+{ 2, s_4_1, 0, 1, 0}
};
static const unsigned char g_vowel[] = { 17, 65, 16 };
-static const symbol s_0[] = { 'e', 'r' };
-static const symbol s_1[] = { 's' };
-static const symbol s_2[] = { 's' };
-static const symbol s_3[] = { 'p' };
-static const symbol s_4[] = { 'p' };
-static const symbol s_5[] = { 'a', 'j', 'a', 'r' };
-static const symbol s_6[] = { 'a', 'j', 'a', 'r' };
-
static int r_remove_particle(struct SN_env * z) {
z->ket = z->c;
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 104 && z->p[z->c - 1] != 110)) return 0;
- if (!find_among_b(z, a_0, 3)) return 0;
+ if (!find_among_b(z, a_0, 3, 0)) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->I[1] -= 1;
+ ((SN_local *)z)->i_measure -= 1;
return 1;
}
static int r_remove_possessive_pronoun(struct SN_env * z) {
z->ket = z->c;
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 97 && z->p[z->c - 1] != 117)) return 0;
- if (!find_among_b(z, a_1, 3)) return 0;
+ if (!find_among_b(z, a_1, 3, 0)) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->I[1] -= 1;
- return 1;
-}
-
-static int r_SUFFIX_KAN_OK(struct SN_env * z) {
-
- if (z->I[0] == 3) return 0;
- if (z->I[0] == 2) return 0;
- return 1;
-}
-
-static int r_SUFFIX_AN_OK(struct SN_env * z) {
- return z->I[0] != 1;
-}
-
-static int r_SUFFIX_I_OK(struct SN_env * z) {
- if (z->I[0] > 2) return 0;
- { int m1 = z->l - z->c; (void)m1;
- if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab0;
- z->c--;
- return 0;
- lab0:
- z->c = z->l - m1;
- }
+ ((SN_local *)z)->i_measure -= 1;
return 1;
}
static int r_remove_suffix(struct SN_env * z) {
+ int among_var;
z->ket = z->c;
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 110)) return 0;
- if (!find_among_b(z, a_2, 3)) return 0;
+ among_var = find_among_b(z, a_2, 2, 0);
+ if (!among_var) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ switch (among_var) {
+ case 1:
+ do {
+ int v_1 = z->l - z->c;
+ if (((SN_local *)z)->i_prefix == 3) goto lab0;
+ if (((SN_local *)z)->i_prefix == 2) goto lab0;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'k') goto lab0;
+ z->c--;
+ z->bra = z->c;
+ break;
+ lab0:
+ z->c = z->l - v_1;
+ if (((SN_local *)z)->i_prefix == 1) return 0;
+ } while (0);
+ break;
+ case 2:
+ if (((SN_local *)z)->i_prefix > 2) return 0;
+ {
+ int v_2 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1;
+ z->c--;
+ return 0;
+ lab1:
+ z->c = z->l - v_2;
+ }
+ break;
+ }
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->I[1] -= 1;
- return 1;
-}
-
-static int r_VOWEL(struct SN_env * z) {
- if (in_grouping(z, g_vowel, 97, 117, 0)) return 0;
- return 1;
-}
-
-static int r_KER(struct SN_env * z) {
- if (out_grouping(z, g_vowel, 97, 117, 0)) return 0;
- if (!(eq_s(z, 2, s_0))) return 0;
+ ((SN_local *)z)->i_measure -= 1;
return 1;
}
int among_var;
z->bra = z->c;
if (z->c + 1 >= z->l || (z->p[z->c + 1] != 105 && z->p[z->c + 1] != 101)) return 0;
- among_var = find_among(z, a_3, 12);
+ among_var = find_among(z, a_3, 10, 0);
if (!among_var) return 0;
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->I[0] = 1;
- z->I[1] -= 1;
+ ((SN_local *)z)->i_prefix = 1;
+ ((SN_local *)z)->i_measure -= 1;
break;
case 2:
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- z->I[0] = 3;
- z->I[1] -= 1;
+ do {
+ int v_1 = z->c;
+ if (z->c == z->l || z->p[z->c] != 'y') goto lab0;
+ z->c++;
+ {
+ int v_2 = z->c;
+ if (in_grouping(z, g_vowel, 97, 117, 0)) goto lab0;
+ z->c = v_2;
+ }
+ z->ket = z->c;
+ {
+ int ret = slice_from_s(z, 1, s_0);
+ if (ret < 0) return ret;
+ }
+ ((SN_local *)z)->i_prefix = 1;
+ ((SN_local *)z)->i_measure -= 1;
+ break;
+ lab0:
+ z->c = v_1;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ ((SN_local *)z)->i_prefix = 1;
+ ((SN_local *)z)->i_measure -= 1;
+ } while (0);
break;
case 3:
- z->I[0] = 1;
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->I[1] -= 1;
+ ((SN_local *)z)->i_prefix = 3;
+ ((SN_local *)z)->i_measure -= 1;
break;
case 4:
- z->I[0] = 3;
- { int ret = slice_from_s(z, 1, s_2);
- if (ret < 0) return ret;
- }
- z->I[1] -= 1;
+ do {
+ int v_3 = z->c;
+ if (z->c == z->l || z->p[z->c] != 'y') goto lab1;
+ z->c++;
+ {
+ int v_4 = z->c;
+ if (in_grouping(z, g_vowel, 97, 117, 0)) goto lab1;
+ z->c = v_4;
+ }
+ z->ket = z->c;
+ {
+ int ret = slice_from_s(z, 1, s_1);
+ if (ret < 0) return ret;
+ }
+ ((SN_local *)z)->i_prefix = 3;
+ ((SN_local *)z)->i_measure -= 1;
+ break;
+ lab1:
+ z->c = v_3;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ ((SN_local *)z)->i_prefix = 3;
+ ((SN_local *)z)->i_measure -= 1;
+ } while (0);
break;
case 5:
- z->I[0] = 1;
- z->I[1] -= 1;
- { int c1 = z->c;
- { int c2 = z->c;
- if (in_grouping(z, g_vowel, 97, 117, 0)) goto lab1;
- z->c = c2;
- { int ret = slice_from_s(z, 1, s_3);
+ ((SN_local *)z)->i_prefix = 1;
+ ((SN_local *)z)->i_measure -= 1;
+ do {
+ int v_5 = z->c;
+ {
+ int v_6 = z->c;
+ if (in_grouping(z, g_vowel, 97, 117, 0)) goto lab2;
+ z->c = v_6;
+ {
+ int ret = slice_from_s(z, 1, s_2);
if (ret < 0) return ret;
}
}
- goto lab0;
- lab1:
- z->c = c1;
- { int ret = slice_del(z);
+ break;
+ lab2:
+ z->c = v_5;
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- }
- lab0:
+ } while (0);
break;
case 6:
- z->I[0] = 3;
- z->I[1] -= 1;
- { int c3 = z->c;
- { int c4 = z->c;
+ ((SN_local *)z)->i_prefix = 3;
+ ((SN_local *)z)->i_measure -= 1;
+ do {
+ int v_7 = z->c;
+ {
+ int v_8 = z->c;
if (in_grouping(z, g_vowel, 97, 117, 0)) goto lab3;
- z->c = c4;
- { int ret = slice_from_s(z, 1, s_4);
+ z->c = v_8;
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
}
- goto lab2;
+ break;
lab3:
- z->c = c3;
- { int ret = slice_del(z);
+ z->c = v_7;
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- }
- lab2:
+ } while (0);
break;
}
return 1;
int among_var;
z->bra = z->c;
if (z->c + 1 >= z->l || z->p[z->c + 1] != 101) return 0;
- among_var = find_among(z, a_4, 6);
+ among_var = find_among(z, a_4, 2, 0);
if (!among_var) return 0;
- z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- z->I[0] = 2;
- z->I[1] -= 1;
+ do {
+ int v_1 = z->c;
+ if (z->c == z->l || z->p[z->c] != 'r') goto lab0;
+ z->c++;
+ z->ket = z->c;
+ ((SN_local *)z)->i_prefix = 2;
+ break;
+ lab0:
+ z->c = v_1;
+ if (z->c == z->l || z->p[z->c] != 'l') goto lab1;
+ z->c++;
+ z->ket = z->c;
+ if (!(eq_s(z, 4, s_4))) goto lab1;
+ break;
+ lab1:
+ z->c = v_1;
+ z->ket = z->c;
+ ((SN_local *)z)->i_prefix = 2;
+ } while (0);
break;
case 2:
- { int ret = slice_from_s(z, 4, s_5);
- if (ret < 0) return ret;
- }
- z->I[1] -= 1;
- break;
- case 3:
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- z->I[0] = 4;
- z->I[1] -= 1;
- break;
- case 4:
- { int ret = slice_from_s(z, 4, s_6);
- if (ret < 0) return ret;
- }
- z->I[0] = 4;
- z->I[1] -= 1;
+ do {
+ int v_2 = z->c;
+ if (z->c == z->l || z->p[z->c] != 'r') goto lab2;
+ z->c++;
+ z->ket = z->c;
+ break;
+ lab2:
+ z->c = v_2;
+ if (z->c == z->l || z->p[z->c] != 'l') goto lab3;
+ z->c++;
+ z->ket = z->c;
+ if (!(eq_s(z, 4, s_5))) goto lab3;
+ break;
+ lab3:
+ z->c = v_2;
+ z->ket = z->c;
+ if (out_grouping(z, g_vowel, 97, 117, 0)) return 0;
+ if (!(eq_s(z, 2, s_6))) return 0;
+ } while (0);
+ ((SN_local *)z)->i_prefix = 4;
break;
}
+ ((SN_local *)z)->i_measure -= 1;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
return 1;
}
extern int indonesian_ISO_8859_1_stem(struct SN_env * z) {
- z->I[1] = 0;
- { int c1 = z->c;
- while(1) {
- int c2 = z->c;
-
+ ((SN_local *)z)->i_measure = 0;
+ {
+ int v_1 = z->c;
+ while (1) {
+ int v_2 = z->c;
{
int ret = out_grouping(z, g_vowel, 97, 117, 1);
if (ret < 0) goto lab1;
z->c += ret;
}
- z->I[1] += 1;
+ ((SN_local *)z)->i_measure += 1;
continue;
lab1:
- z->c = c2;
+ z->c = v_2;
break;
}
- z->c = c1;
+ z->c = v_1;
}
- if (z->I[1] <= 2) return 0;
- z->I[0] = 0;
+ if (((SN_local *)z)->i_measure <= 2) return 0;
+ ((SN_local *)z)->i_prefix = 0;
z->lb = z->c; z->c = z->l;
-
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_remove_particle(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_remove_particle(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- if (z->I[1] <= 2) return 0;
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_remove_possessive_pronoun(z);
+ if (((SN_local *)z)->i_measure <= 2) return 0;
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_remove_possessive_pronoun(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
z->c = z->lb;
- if (z->I[1] <= 2) return 0;
- { int c5 = z->c;
- { int c_test6 = z->c;
- { int ret = r_remove_first_order_prefix(z);
- if (ret == 0) goto lab3;
+ if (((SN_local *)z)->i_measure <= 2) return 0;
+ do {
+ int v_5 = z->c;
+ {
+ int v_6 = z->c;
+ {
+ int ret = r_remove_first_order_prefix(z);
+ if (ret == 0) goto lab2;
if (ret < 0) return ret;
}
- { int c7 = z->c;
- { int c_test8 = z->c;
- if (z->I[1] <= 2) goto lab4;
+ {
+ int v_7 = z->c;
+ {
+ int v_8 = z->c;
+ if (((SN_local *)z)->i_measure <= 2) goto lab3;
z->lb = z->c; z->c = z->l;
-
- { int ret = r_remove_suffix(z);
- if (ret == 0) goto lab4;
+ {
+ int ret = r_remove_suffix(z);
+ if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
z->c = z->lb;
- z->c = c_test8;
+ z->c = v_8;
}
- if (z->I[1] <= 2) goto lab4;
- { int ret = r_remove_second_order_prefix(z);
- if (ret == 0) goto lab4;
+ if (((SN_local *)z)->i_measure <= 2) goto lab3;
+ {
+ int ret = r_remove_second_order_prefix(z);
+ if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
- lab4:
- z->c = c7;
+ lab3:
+ z->c = v_7;
}
- z->c = c_test6;
+ z->c = v_6;
}
- goto lab2;
- lab3:
- z->c = c5;
- { int c9 = z->c;
- { int ret = r_remove_second_order_prefix(z);
+ break;
+ lab2:
+ z->c = v_5;
+ {
+ int v_9 = z->c;
+ {
+ int ret = r_remove_second_order_prefix(z);
if (ret < 0) return ret;
}
- z->c = c9;
+ z->c = v_9;
}
- { int c10 = z->c;
- if (z->I[1] <= 2) goto lab5;
+ {
+ int v_10 = z->c;
+ if (((SN_local *)z)->i_measure <= 2) goto lab4;
z->lb = z->c; z->c = z->l;
-
- { int ret = r_remove_suffix(z);
- if (ret == 0) goto lab5;
+ {
+ int ret = r_remove_suffix(z);
+ if (ret == 0) goto lab4;
if (ret < 0) return ret;
}
z->c = z->lb;
- lab5:
- z->c = c10;
+ lab4:
+ z->c = v_10;
}
- }
-lab2:
+ } while (0);
return 1;
}
-extern struct SN_env * indonesian_ISO_8859_1_create_env(void) { return SN_create_env(0, 2); }
+extern struct SN_env * indonesian_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_prefix = 0;
+ ((SN_local *)z)->i_measure = 0;
+ }
+ return z;
+}
-extern void indonesian_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void indonesian_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from irish.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_irish.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ int i_pV;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_verb_sfx(struct SN_env * z);
static int r_deriv(struct SN_env * z);
static int r_noun_sfx(struct SN_env * z);
static int r_RV(struct SN_env * z);
static int r_R2(struct SN_env * z);
static int r_R1(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * irish_ISO_8859_1_create_env(void);
-extern void irish_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 'f' };
+static const symbol s_1[] = { 's' };
+static const symbol s_2[] = { 'b' };
+static const symbol s_3[] = { 'c' };
+static const symbol s_4[] = { 'd' };
+static const symbol s_5[] = { 'g' };
+static const symbol s_6[] = { 'p' };
+static const symbol s_7[] = { 't' };
+static const symbol s_8[] = { 'm' };
+static const symbol s_9[] = { 'a', 'r', 'c' };
+static const symbol s_10[] = { 'g', 'i', 'n' };
+static const symbol s_11[] = { 'g', 'r', 'a', 'f' };
+static const symbol s_12[] = { 'p', 'a', 'i', 't', 'e' };
+static const symbol s_13[] = { 0xF3, 'i', 'd' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[2] = { 'b', '\'' };
static const symbol s_0_1[2] = { 'b', 'h' };
static const symbol s_0_2[3] = { 'b', 'h', 'f' };
static const symbol s_0_21[2] = { 't', '-' };
static const symbol s_0_22[2] = { 't', 'h' };
static const symbol s_0_23[2] = { 't', 's' };
-
-static const struct among a_0[24] =
-{
-{ 2, s_0_0, -1, 1, 0},
-{ 2, s_0_1, -1, 4, 0},
-{ 3, s_0_2, 1, 2, 0},
-{ 2, s_0_3, -1, 8, 0},
-{ 2, s_0_4, -1, 5, 0},
-{ 2, s_0_5, -1, 1, 0},
-{ 4, s_0_6, 5, 2, 0},
-{ 2, s_0_7, -1, 6, 0},
-{ 2, s_0_8, -1, 9, 0},
-{ 2, s_0_9, -1, 2, 0},
-{ 2, s_0_10, -1, 5, 0},
-{ 2, s_0_11, -1, 7, 0},
-{ 2, s_0_12, -1, 1, 0},
-{ 2, s_0_13, -1, 1, 0},
-{ 2, s_0_14, -1, 4, 0},
-{ 2, s_0_15, -1, 10, 0},
-{ 2, s_0_16, -1, 1, 0},
-{ 2, s_0_17, -1, 6, 0},
-{ 2, s_0_18, -1, 7, 0},
-{ 2, s_0_19, -1, 8, 0},
-{ 2, s_0_20, -1, 3, 0},
-{ 2, s_0_21, -1, 1, 0},
-{ 2, s_0_22, -1, 9, 0},
-{ 2, s_0_23, -1, 3, 0}
+static const struct among a_0[24] = {
+{ 2, s_0_0, 0, 1, 0},
+{ 2, s_0_1, 0, 4, 0},
+{ 3, s_0_2, -1, 2, 0},
+{ 2, s_0_3, 0, 8, 0},
+{ 2, s_0_4, 0, 5, 0},
+{ 2, s_0_5, 0, 1, 0},
+{ 4, s_0_6, -1, 2, 0},
+{ 2, s_0_7, 0, 6, 0},
+{ 2, s_0_8, 0, 9, 0},
+{ 2, s_0_9, 0, 2, 0},
+{ 2, s_0_10, 0, 5, 0},
+{ 2, s_0_11, 0, 7, 0},
+{ 2, s_0_12, 0, 1, 0},
+{ 2, s_0_13, 0, 1, 0},
+{ 2, s_0_14, 0, 4, 0},
+{ 2, s_0_15, 0, 10, 0},
+{ 2, s_0_16, 0, 1, 0},
+{ 2, s_0_17, 0, 6, 0},
+{ 2, s_0_18, 0, 7, 0},
+{ 2, s_0_19, 0, 8, 0},
+{ 2, s_0_20, 0, 3, 0},
+{ 2, s_0_21, 0, 1, 0},
+{ 2, s_0_22, 0, 9, 0},
+{ 2, s_0_23, 0, 3, 0}
};
static const symbol s_1_0[6] = { 0xED, 'o', 'c', 'h', 't', 'a' };
static const symbol s_1_13[6] = { 'a', 0xED, 'o', 'c', 'h', 't' };
static const symbol s_1_14[3] = { 'i', 'r', 0xED };
static const symbol s_1_15[4] = { 'a', 'i', 'r', 0xED };
-
-static const struct among a_1[16] =
-{
-{ 6, s_1_0, -1, 1, 0},
-{ 7, s_1_1, 0, 1, 0},
-{ 3, s_1_2, -1, 2, 0},
-{ 4, s_1_3, 2, 2, 0},
-{ 3, s_1_4, -1, 1, 0},
-{ 4, s_1_5, 4, 1, 0},
-{ 3, s_1_6, -1, 1, 0},
-{ 4, s_1_7, 6, 1, 0},
-{ 3, s_1_8, -1, 1, 0},
-{ 4, s_1_9, 8, 1, 0},
-{ 3, s_1_10, -1, 1, 0},
-{ 4, s_1_11, 10, 1, 0},
-{ 5, s_1_12, -1, 1, 0},
-{ 6, s_1_13, 12, 1, 0},
-{ 3, s_1_14, -1, 2, 0},
-{ 4, s_1_15, 14, 2, 0}
+static const struct among a_1[16] = {
+{ 6, s_1_0, 0, 1, 0},
+{ 7, s_1_1, -1, 1, 0},
+{ 3, s_1_2, 0, 2, 0},
+{ 4, s_1_3, -1, 2, 0},
+{ 3, s_1_4, 0, 1, 0},
+{ 4, s_1_5, -1, 1, 0},
+{ 3, s_1_6, 0, 1, 0},
+{ 4, s_1_7, -1, 1, 0},
+{ 3, s_1_8, 0, 1, 0},
+{ 4, s_1_9, -1, 1, 0},
+{ 3, s_1_10, 0, 1, 0},
+{ 4, s_1_11, -1, 1, 0},
+{ 5, s_1_12, 0, 1, 0},
+{ 6, s_1_13, -1, 1, 0},
+{ 3, s_1_14, 0, 2, 0},
+{ 4, s_1_15, -1, 2, 0}
};
static const symbol s_2_0[8] = { 0xF3, 'i', 'd', 'e', 'a', 'c', 'h', 'a' };
static const symbol s_2_22[10] = { 'g', 'r', 'a', 'f', 'a', 0xED, 'o', 'c', 'h', 't' };
static const symbol s_2_23[9] = { 'a', 'r', 'c', 'a', 'c', 'h', 't', 'a', 0xED };
static const symbol s_2_24[12] = { 'g', 'r', 'a', 'f', 'a', 0xED, 'o', 'c', 'h', 't', 'a', 0xED };
-
-static const struct among a_2[25] =
-{
-{ 8, s_2_0, -1, 6, 0},
-{ 7, s_2_1, -1, 5, 0},
-{ 5, s_2_2, -1, 1, 0},
-{ 8, s_2_3, 2, 2, 0},
-{ 6, s_2_4, 2, 1, 0},
-{ 11, s_2_5, -1, 4, 0},
-{ 5, s_2_6, -1, 5, 0},
-{ 3, s_2_7, -1, 1, 0},
-{ 4, s_2_8, 7, 1, 0},
-{ 7, s_2_9, 8, 6, 0},
-{ 7, s_2_10, 8, 3, 0},
-{ 6, s_2_11, 7, 5, 0},
-{ 9, s_2_12, -1, 4, 0},
-{ 7, s_2_13, -1, 5, 0},
-{ 6, s_2_14, -1, 6, 0},
-{ 7, s_2_15, -1, 1, 0},
-{ 8, s_2_16, 15, 1, 0},
-{ 6, s_2_17, -1, 3, 0},
-{ 5, s_2_18, -1, 3, 0},
-{ 4, s_2_19, -1, 1, 0},
-{ 7, s_2_20, 19, 2, 0},
-{ 5, s_2_21, 19, 1, 0},
-{ 10, s_2_22, -1, 4, 0},
-{ 9, s_2_23, -1, 2, 0},
-{ 12, s_2_24, -1, 4, 0}
+static const struct among a_2[25] = {
+{ 8, s_2_0, 0, 6, 0},
+{ 7, s_2_1, 0, 5, 0},
+{ 5, s_2_2, 0, 1, 0},
+{ 8, s_2_3, -1, 2, 0},
+{ 6, s_2_4, -2, 1, 0},
+{ 11, s_2_5, 0, 4, 0},
+{ 5, s_2_6, 0, 5, 0},
+{ 3, s_2_7, 0, 1, 0},
+{ 4, s_2_8, -1, 1, 0},
+{ 7, s_2_9, -1, 6, 0},
+{ 7, s_2_10, -2, 3, 0},
+{ 6, s_2_11, -4, 5, 0},
+{ 9, s_2_12, 0, 4, 0},
+{ 7, s_2_13, 0, 5, 0},
+{ 6, s_2_14, 0, 6, 0},
+{ 7, s_2_15, 0, 1, 0},
+{ 8, s_2_16, -1, 1, 0},
+{ 6, s_2_17, 0, 3, 0},
+{ 5, s_2_18, 0, 3, 0},
+{ 4, s_2_19, 0, 1, 0},
+{ 7, s_2_20, -1, 2, 0},
+{ 5, s_2_21, -2, 1, 0},
+{ 10, s_2_22, 0, 4, 0},
+{ 9, s_2_23, 0, 2, 0},
+{ 12, s_2_24, 0, 4, 0}
};
static const symbol s_3_0[4] = { 'i', 'm', 'i', 'd' };
static const symbol s_3_9[3] = { 'a', 'i', 'n' };
static const symbol s_3_10[4] = { 't', 'e', 'a', 'r' };
static const symbol s_3_11[3] = { 't', 'a', 'r' };
-
-static const struct among a_3[12] =
-{
-{ 4, s_3_0, -1, 1, 0},
-{ 5, s_3_1, 0, 1, 0},
-{ 4, s_3_2, -1, 1, 0},
-{ 5, s_3_3, 2, 1, 0},
-{ 3, s_3_4, -1, 2, 0},
-{ 4, s_3_5, 4, 2, 0},
-{ 5, s_3_6, -1, 1, 0},
-{ 4, s_3_7, -1, 1, 0},
-{ 3, s_3_8, -1, 2, 0},
-{ 3, s_3_9, -1, 2, 0},
-{ 4, s_3_10, -1, 2, 0},
-{ 3, s_3_11, -1, 2, 0}
+static const struct among a_3[12] = {
+{ 4, s_3_0, 0, 1, 0},
+{ 5, s_3_1, -1, 1, 0},
+{ 4, s_3_2, 0, 1, 0},
+{ 5, s_3_3, -1, 1, 0},
+{ 3, s_3_4, 0, 2, 0},
+{ 4, s_3_5, -1, 2, 0},
+{ 5, s_3_6, 0, 1, 0},
+{ 4, s_3_7, 0, 1, 0},
+{ 3, s_3_8, 0, 2, 0},
+{ 3, s_3_9, 0, 2, 0},
+{ 4, s_3_10, 0, 2, 0},
+{ 3, s_3_11, 0, 2, 0}
};
static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 2 };
-static const symbol s_0[] = { 'f' };
-static const symbol s_1[] = { 's' };
-static const symbol s_2[] = { 'b' };
-static const symbol s_3[] = { 'c' };
-static const symbol s_4[] = { 'd' };
-static const symbol s_5[] = { 'g' };
-static const symbol s_6[] = { 'p' };
-static const symbol s_7[] = { 't' };
-static const symbol s_8[] = { 'm' };
-static const symbol s_9[] = { 'a', 'r', 'c' };
-static const symbol s_10[] = { 'g', 'i', 'n' };
-static const symbol s_11[] = { 'g', 'r', 'a', 'f' };
-static const symbol s_12[] = { 'p', 'a', 'i', 't', 'e' };
-static const symbol s_13[] = { 0xF3, 'i', 'd' };
-
static int r_mark_regions(struct SN_env * z) {
- z->I[2] = z->l;
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
-
+ ((SN_local *)z)->i_pV = z->l;
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 250, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[2] = z->c;
-
+ ((SN_local *)z)->i_pV = z->c;
{
int ret = in_grouping(z, g_v, 97, 250, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 250, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 250, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[0] = z->c;
+ ((SN_local *)z)->i_p2 = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
return 1;
}
static int r_initial_morph(struct SN_env * z) {
int among_var;
z->bra = z->c;
- among_var = find_among(z, a_0, 24);
+ among_var = find_among(z, a_0, 24, 0);
if (!among_var) return 0;
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_0);
+ {
+ int ret = slice_from_s(z, 1, s_0);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 1, s_2);
+ {
+ int ret = slice_from_s(z, 1, s_2);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 1, s_3);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 1, s_4);
+ {
+ int ret = slice_from_s(z, 1, s_4);
if (ret < 0) return ret;
}
break;
case 7:
- { int ret = slice_from_s(z, 1, s_5);
+ {
+ int ret = slice_from_s(z, 1, s_5);
if (ret < 0) return ret;
}
break;
case 8:
- { int ret = slice_from_s(z, 1, s_6);
+ {
+ int ret = slice_from_s(z, 1, s_6);
if (ret < 0) return ret;
}
break;
case 9:
- { int ret = slice_from_s(z, 1, s_7);
+ {
+ int ret = slice_from_s(z, 1, s_7);
if (ret < 0) return ret;
}
break;
case 10:
- { int ret = slice_from_s(z, 1, s_8);
+ {
+ int ret = slice_from_s(z, 1, s_8);
if (ret < 0) return ret;
}
break;
}
static int r_RV(struct SN_env * z) {
- return z->I[2] <= z->c;
+ return ((SN_local *)z)->i_pV <= z->c;
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_noun_sfx(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_1, 16);
+ among_var = find_among_b(z, a_1, 16, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_deriv(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_2, 25);
+ among_var = find_among_b(z, a_2, 25, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 3, s_9);
+ {
+ int ret = slice_from_s(z, 3, s_9);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 3, s_10);
+ {
+ int ret = slice_from_s(z, 3, s_10);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 4, s_11);
+ {
+ int ret = slice_from_s(z, 4, s_11);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 5, s_12);
+ {
+ int ret = slice_from_s(z, 5, s_12);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 3, s_13);
+ {
+ int ret = slice_from_s(z, 3, s_13);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((282896 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_3, 12);
+ among_var = find_among_b(z, a_3, 12, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
extern int irish_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_initial_morph(z);
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_initial_morph(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
- { int m2 = z->l - z->c; (void)m2;
- { int ret = r_noun_sfx(z);
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_noun_sfx(z);
if (ret < 0) return ret;
}
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_deriv(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_deriv(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_verb_sfx(z);
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_verb_sfx(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * irish_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * irish_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->i_pV = 0;
+ }
+ return z;
+}
-extern void irish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void irish_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from italian.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_italian.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ int i_pV;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_vowel_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_mark_regions(struct SN_env * z);
static int r_postlude(struct SN_env * z);
static int r_prelude(struct SN_env * z);
-static int r_exceptions(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * italian_ISO_8859_1_create_env(void);
-extern void italian_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 0xE0 };
+static const symbol s_1[] = { 0xE8 };
+static const symbol s_2[] = { 0xEC };
+static const symbol s_3[] = { 0xF2 };
+static const symbol s_4[] = { 0xF9 };
+static const symbol s_5[] = { 'q', 'U' };
+static const symbol s_6[] = { 'U' };
+static const symbol s_7[] = { 'I' };
+static const symbol s_8[] = { 'd', 'i', 'v', 'a', 'n' };
+static const symbol s_9[] = { 'i' };
+static const symbol s_10[] = { 'u' };
+static const symbol s_11[] = { 'e' };
+static const symbol s_12[] = { 'i', 'c' };
+static const symbol s_13[] = { 'l', 'o', 'g' };
+static const symbol s_14[] = { 'u' };
+static const symbol s_15[] = { 'e', 'n', 't', 'e' };
+static const symbol s_16[] = { 'a', 't' };
+static const symbol s_17[] = { 'a', 't' };
+static const symbol s_18[] = { 'i', 'c' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_1[2] = { 'q', 'u' };
static const symbol s_0_2[1] = { 0xE1 };
static const symbol s_0_3[1] = { 0xE9 };
static const symbol s_0_4[1] = { 0xED };
static const symbol s_0_5[1] = { 0xF3 };
static const symbol s_0_6[1] = { 0xFA };
-
-static const struct among a_0[7] =
-{
-{ 0, 0, -1, 7, 0},
-{ 2, s_0_1, 0, 6, 0},
-{ 1, s_0_2, 0, 1, 0},
-{ 1, s_0_3, 0, 2, 0},
-{ 1, s_0_4, 0, 3, 0},
-{ 1, s_0_5, 0, 4, 0},
-{ 1, s_0_6, 0, 5, 0}
+static const struct among a_0[7] = {
+{ 0, 0, 0, 7, 0},
+{ 2, s_0_1, -1, 6, 0},
+{ 1, s_0_2, -2, 1, 0},
+{ 1, s_0_3, -3, 2, 0},
+{ 1, s_0_4, -4, 3, 0},
+{ 1, s_0_5, -5, 4, 0},
+{ 1, s_0_6, -6, 5, 0}
};
static const symbol s_1_1[1] = { 'I' };
static const symbol s_1_2[1] = { 'U' };
-
-static const struct among a_1[3] =
-{
-{ 0, 0, -1, 3, 0},
-{ 1, s_1_1, 0, 1, 0},
-{ 1, s_1_2, 0, 2, 0}
+static const struct among a_1[3] = {
+{ 0, 0, 0, 3, 0},
+{ 1, s_1_1, -1, 1, 0},
+{ 1, s_1_2, -2, 2, 0}
};
static const symbol s_2_0[2] = { 'l', 'a' };
static const symbol s_2_34[4] = { 'm', 'e', 'l', 'o' };
static const symbol s_2_35[4] = { 't', 'e', 'l', 'o' };
static const symbol s_2_36[4] = { 'v', 'e', 'l', 'o' };
-
-static const struct among a_2[37] =
-{
-{ 2, s_2_0, -1, -1, 0},
-{ 4, s_2_1, 0, -1, 0},
-{ 6, s_2_2, 0, -1, 0},
-{ 4, s_2_3, 0, -1, 0},
-{ 4, s_2_4, 0, -1, 0},
-{ 4, s_2_5, 0, -1, 0},
-{ 2, s_2_6, -1, -1, 0},
-{ 4, s_2_7, 6, -1, 0},
-{ 6, s_2_8, 6, -1, 0},
-{ 4, s_2_9, 6, -1, 0},
-{ 4, s_2_10, 6, -1, 0},
-{ 4, s_2_11, 6, -1, 0},
-{ 2, s_2_12, -1, -1, 0},
-{ 4, s_2_13, 12, -1, 0},
-{ 6, s_2_14, 12, -1, 0},
-{ 4, s_2_15, 12, -1, 0},
-{ 4, s_2_16, 12, -1, 0},
-{ 4, s_2_17, 12, -1, 0},
-{ 4, s_2_18, 12, -1, 0},
-{ 2, s_2_19, -1, -1, 0},
-{ 2, s_2_20, -1, -1, 0},
-{ 4, s_2_21, 20, -1, 0},
-{ 6, s_2_22, 20, -1, 0},
-{ 4, s_2_23, 20, -1, 0},
-{ 4, s_2_24, 20, -1, 0},
-{ 4, s_2_25, 20, -1, 0},
-{ 3, s_2_26, 20, -1, 0},
-{ 2, s_2_27, -1, -1, 0},
-{ 2, s_2_28, -1, -1, 0},
-{ 2, s_2_29, -1, -1, 0},
-{ 2, s_2_30, -1, -1, 0},
-{ 2, s_2_31, -1, -1, 0},
-{ 4, s_2_32, 31, -1, 0},
-{ 6, s_2_33, 31, -1, 0},
-{ 4, s_2_34, 31, -1, 0},
-{ 4, s_2_35, 31, -1, 0},
-{ 4, s_2_36, 31, -1, 0}
+static const struct among a_2[37] = {
+{ 2, s_2_0, 0, -1, 0},
+{ 4, s_2_1, -1, -1, 0},
+{ 6, s_2_2, -2, -1, 0},
+{ 4, s_2_3, -3, -1, 0},
+{ 4, s_2_4, -4, -1, 0},
+{ 4, s_2_5, -5, -1, 0},
+{ 2, s_2_6, 0, -1, 0},
+{ 4, s_2_7, -1, -1, 0},
+{ 6, s_2_8, -2, -1, 0},
+{ 4, s_2_9, -3, -1, 0},
+{ 4, s_2_10, -4, -1, 0},
+{ 4, s_2_11, -5, -1, 0},
+{ 2, s_2_12, 0, -1, 0},
+{ 4, s_2_13, -1, -1, 0},
+{ 6, s_2_14, -2, -1, 0},
+{ 4, s_2_15, -3, -1, 0},
+{ 4, s_2_16, -4, -1, 0},
+{ 4, s_2_17, -5, -1, 0},
+{ 4, s_2_18, -6, -1, 0},
+{ 2, s_2_19, 0, -1, 0},
+{ 2, s_2_20, 0, -1, 0},
+{ 4, s_2_21, -1, -1, 0},
+{ 6, s_2_22, -2, -1, 0},
+{ 4, s_2_23, -3, -1, 0},
+{ 4, s_2_24, -4, -1, 0},
+{ 4, s_2_25, -5, -1, 0},
+{ 3, s_2_26, -6, -1, 0},
+{ 2, s_2_27, 0, -1, 0},
+{ 2, s_2_28, 0, -1, 0},
+{ 2, s_2_29, 0, -1, 0},
+{ 2, s_2_30, 0, -1, 0},
+{ 2, s_2_31, 0, -1, 0},
+{ 4, s_2_32, -1, -1, 0},
+{ 6, s_2_33, -2, -1, 0},
+{ 4, s_2_34, -3, -1, 0},
+{ 4, s_2_35, -4, -1, 0},
+{ 4, s_2_36, -5, -1, 0}
};
static const symbol s_3_0[4] = { 'a', 'n', 'd', 'o' };
static const symbol s_3_2[2] = { 'a', 'r' };
static const symbol s_3_3[2] = { 'e', 'r' };
static const symbol s_3_4[2] = { 'i', 'r' };
-
-static const struct among a_3[5] =
-{
-{ 4, s_3_0, -1, 1, 0},
-{ 4, s_3_1, -1, 1, 0},
-{ 2, s_3_2, -1, 2, 0},
-{ 2, s_3_3, -1, 2, 0},
-{ 2, s_3_4, -1, 2, 0}
+static const struct among a_3[5] = {
+{ 4, s_3_0, 0, 1, 0},
+{ 4, s_3_1, 0, 1, 0},
+{ 2, s_3_2, 0, 2, 0},
+{ 2, s_3_3, 0, 2, 0},
+{ 2, s_3_4, 0, 2, 0}
};
static const symbol s_4_0[2] = { 'i', 'c' };
static const symbol s_4_1[4] = { 'a', 'b', 'i', 'l' };
static const symbol s_4_2[2] = { 'o', 's' };
static const symbol s_4_3[2] = { 'i', 'v' };
-
-static const struct among a_4[4] =
-{
-{ 2, s_4_0, -1, -1, 0},
-{ 4, s_4_1, -1, -1, 0},
-{ 2, s_4_2, -1, -1, 0},
-{ 2, s_4_3, -1, 1, 0}
+static const struct among a_4[4] = {
+{ 2, s_4_0, 0, -1, 0},
+{ 4, s_4_1, 0, -1, 0},
+{ 2, s_4_2, 0, -1, 0},
+{ 2, s_4_3, 0, 1, 0}
};
static const symbol s_5_0[2] = { 'i', 'c' };
static const symbol s_5_1[4] = { 'a', 'b', 'i', 'l' };
static const symbol s_5_2[2] = { 'i', 'v' };
-
-static const struct among a_5[3] =
-{
-{ 2, s_5_0, -1, 1, 0},
-{ 4, s_5_1, -1, 1, 0},
-{ 2, s_5_2, -1, 1, 0}
+static const struct among a_5[3] = {
+{ 2, s_5_0, 0, 1, 0},
+{ 4, s_5_1, 0, 1, 0},
+{ 2, s_5_2, 0, 1, 0}
};
static const symbol s_6_0[3] = { 'i', 'c', 'a' };
static const symbol s_6_48[4] = { 'i', 's', 't', 0xE0 };
static const symbol s_6_49[4] = { 'i', 's', 't', 0xE8 };
static const symbol s_6_50[4] = { 'i', 's', 't', 0xEC };
-
-static const struct among a_6[51] =
-{
-{ 3, s_6_0, -1, 1, 0},
-{ 5, s_6_1, -1, 3, 0},
-{ 3, s_6_2, -1, 1, 0},
-{ 4, s_6_3, -1, 1, 0},
-{ 3, s_6_4, -1, 9, 0},
-{ 4, s_6_5, -1, 1, 0},
-{ 4, s_6_6, -1, 5, 0},
-{ 3, s_6_7, -1, 1, 0},
-{ 6, s_6_8, 7, 1, 0},
-{ 4, s_6_9, -1, 1, 0},
-{ 5, s_6_10, -1, 3, 0},
-{ 5, s_6_11, -1, 1, 0},
-{ 5, s_6_12, -1, 1, 0},
-{ 6, s_6_13, -1, 4, 0},
-{ 6, s_6_14, -1, 2, 0},
-{ 6, s_6_15, -1, 4, 0},
-{ 5, s_6_16, -1, 2, 0},
-{ 3, s_6_17, -1, 1, 0},
-{ 4, s_6_18, -1, 1, 0},
-{ 5, s_6_19, -1, 1, 0},
-{ 6, s_6_20, 19, 7, 0},
-{ 4, s_6_21, -1, 1, 0},
-{ 3, s_6_22, -1, 9, 0},
-{ 4, s_6_23, -1, 1, 0},
-{ 4, s_6_24, -1, 5, 0},
-{ 3, s_6_25, -1, 1, 0},
-{ 6, s_6_26, 25, 1, 0},
-{ 4, s_6_27, -1, 1, 0},
-{ 5, s_6_28, -1, 1, 0},
-{ 5, s_6_29, -1, 1, 0},
-{ 4, s_6_30, -1, 1, 0},
-{ 6, s_6_31, -1, 4, 0},
-{ 6, s_6_32, -1, 2, 0},
-{ 6, s_6_33, -1, 4, 0},
-{ 5, s_6_34, -1, 2, 0},
-{ 3, s_6_35, -1, 1, 0},
-{ 4, s_6_36, -1, 1, 0},
-{ 6, s_6_37, -1, 6, 0},
-{ 6, s_6_38, -1, 6, 0},
-{ 4, s_6_39, -1, 1, 0},
-{ 3, s_6_40, -1, 9, 0},
-{ 3, s_6_41, -1, 1, 0},
-{ 4, s_6_42, -1, 1, 0},
-{ 3, s_6_43, -1, 1, 0},
-{ 6, s_6_44, -1, 6, 0},
-{ 6, s_6_45, -1, 6, 0},
-{ 3, s_6_46, -1, 9, 0},
-{ 3, s_6_47, -1, 8, 0},
-{ 4, s_6_48, -1, 1, 0},
-{ 4, s_6_49, -1, 1, 0},
-{ 4, s_6_50, -1, 1, 0}
+static const struct among a_6[51] = {
+{ 3, s_6_0, 0, 1, 0},
+{ 5, s_6_1, 0, 3, 0},
+{ 3, s_6_2, 0, 1, 0},
+{ 4, s_6_3, 0, 1, 0},
+{ 3, s_6_4, 0, 9, 0},
+{ 4, s_6_5, 0, 1, 0},
+{ 4, s_6_6, 0, 5, 0},
+{ 3, s_6_7, 0, 1, 0},
+{ 6, s_6_8, -1, 1, 0},
+{ 4, s_6_9, 0, 1, 0},
+{ 5, s_6_10, 0, 3, 0},
+{ 5, s_6_11, 0, 1, 0},
+{ 5, s_6_12, 0, 1, 0},
+{ 6, s_6_13, 0, 4, 0},
+{ 6, s_6_14, 0, 2, 0},
+{ 6, s_6_15, 0, 4, 0},
+{ 5, s_6_16, 0, 2, 0},
+{ 3, s_6_17, 0, 1, 0},
+{ 4, s_6_18, 0, 1, 0},
+{ 5, s_6_19, 0, 1, 0},
+{ 6, s_6_20, -1, 7, 0},
+{ 4, s_6_21, 0, 1, 0},
+{ 3, s_6_22, 0, 9, 0},
+{ 4, s_6_23, 0, 1, 0},
+{ 4, s_6_24, 0, 5, 0},
+{ 3, s_6_25, 0, 1, 0},
+{ 6, s_6_26, -1, 1, 0},
+{ 4, s_6_27, 0, 1, 0},
+{ 5, s_6_28, 0, 1, 0},
+{ 5, s_6_29, 0, 1, 0},
+{ 4, s_6_30, 0, 1, 0},
+{ 6, s_6_31, 0, 4, 0},
+{ 6, s_6_32, 0, 2, 0},
+{ 6, s_6_33, 0, 4, 0},
+{ 5, s_6_34, 0, 2, 0},
+{ 3, s_6_35, 0, 1, 0},
+{ 4, s_6_36, 0, 1, 0},
+{ 6, s_6_37, 0, 6, 0},
+{ 6, s_6_38, 0, 6, 0},
+{ 4, s_6_39, 0, 1, 0},
+{ 3, s_6_40, 0, 9, 0},
+{ 3, s_6_41, 0, 1, 0},
+{ 4, s_6_42, 0, 1, 0},
+{ 3, s_6_43, 0, 1, 0},
+{ 6, s_6_44, 0, 6, 0},
+{ 6, s_6_45, 0, 6, 0},
+{ 3, s_6_46, 0, 9, 0},
+{ 3, s_6_47, 0, 8, 0},
+{ 4, s_6_48, 0, 1, 0},
+{ 4, s_6_49, 0, 1, 0},
+{ 4, s_6_50, 0, 1, 0}
};
static const symbol s_7_0[4] = { 'i', 's', 'c', 'a' };
static const symbol s_7_84[3] = { 'i', 'r', 0xE0 };
static const symbol s_7_85[3] = { 'e', 'r', 0xF2 };
static const symbol s_7_86[3] = { 'i', 'r', 0xF2 };
-
-static const struct among a_7[87] =
-{
-{ 4, s_7_0, -1, 1, 0},
-{ 4, s_7_1, -1, 1, 0},
-{ 3, s_7_2, -1, 1, 0},
-{ 3, s_7_3, -1, 1, 0},
-{ 3, s_7_4, -1, 1, 0},
-{ 3, s_7_5, -1, 1, 0},
-{ 3, s_7_6, -1, 1, 0},
-{ 3, s_7_7, -1, 1, 0},
-{ 6, s_7_8, -1, 1, 0},
-{ 6, s_7_9, -1, 1, 0},
-{ 4, s_7_10, -1, 1, 0},
-{ 4, s_7_11, -1, 1, 0},
-{ 3, s_7_12, -1, 1, 0},
-{ 3, s_7_13, -1, 1, 0},
-{ 3, s_7_14, -1, 1, 0},
-{ 4, s_7_15, -1, 1, 0},
-{ 3, s_7_16, -1, 1, 0},
-{ 5, s_7_17, 16, 1, 0},
-{ 5, s_7_18, 16, 1, 0},
-{ 5, s_7_19, 16, 1, 0},
-{ 3, s_7_20, -1, 1, 0},
-{ 5, s_7_21, 20, 1, 0},
-{ 5, s_7_22, 20, 1, 0},
-{ 3, s_7_23, -1, 1, 0},
-{ 6, s_7_24, -1, 1, 0},
-{ 6, s_7_25, -1, 1, 0},
-{ 3, s_7_26, -1, 1, 0},
-{ 4, s_7_27, -1, 1, 0},
-{ 4, s_7_28, -1, 1, 0},
-{ 4, s_7_29, -1, 1, 0},
-{ 4, s_7_30, -1, 1, 0},
-{ 4, s_7_31, -1, 1, 0},
-{ 4, s_7_32, -1, 1, 0},
-{ 4, s_7_33, -1, 1, 0},
-{ 3, s_7_34, -1, 1, 0},
-{ 3, s_7_35, -1, 1, 0},
-{ 6, s_7_36, -1, 1, 0},
-{ 6, s_7_37, -1, 1, 0},
-{ 3, s_7_38, -1, 1, 0},
-{ 3, s_7_39, -1, 1, 0},
-{ 3, s_7_40, -1, 1, 0},
-{ 3, s_7_41, -1, 1, 0},
-{ 4, s_7_42, -1, 1, 0},
-{ 4, s_7_43, -1, 1, 0},
-{ 4, s_7_44, -1, 1, 0},
-{ 4, s_7_45, -1, 1, 0},
-{ 4, s_7_46, -1, 1, 0},
-{ 5, s_7_47, -1, 1, 0},
-{ 5, s_7_48, -1, 1, 0},
-{ 5, s_7_49, -1, 1, 0},
-{ 5, s_7_50, -1, 1, 0},
-{ 5, s_7_51, -1, 1, 0},
-{ 6, s_7_52, -1, 1, 0},
-{ 4, s_7_53, -1, 1, 0},
-{ 4, s_7_54, -1, 1, 0},
-{ 6, s_7_55, 54, 1, 0},
-{ 6, s_7_56, 54, 1, 0},
-{ 4, s_7_57, -1, 1, 0},
-{ 3, s_7_58, -1, 1, 0},
-{ 6, s_7_59, 58, 1, 0},
-{ 5, s_7_60, 58, 1, 0},
-{ 5, s_7_61, 58, 1, 0},
-{ 5, s_7_62, 58, 1, 0},
-{ 6, s_7_63, -1, 1, 0},
-{ 6, s_7_64, -1, 1, 0},
-{ 3, s_7_65, -1, 1, 0},
-{ 6, s_7_66, 65, 1, 0},
-{ 5, s_7_67, 65, 1, 0},
-{ 5, s_7_68, 65, 1, 0},
-{ 5, s_7_69, 65, 1, 0},
-{ 8, s_7_70, -1, 1, 0},
-{ 8, s_7_71, -1, 1, 0},
-{ 6, s_7_72, -1, 1, 0},
-{ 6, s_7_73, -1, 1, 0},
-{ 6, s_7_74, -1, 1, 0},
-{ 3, s_7_75, -1, 1, 0},
-{ 3, s_7_76, -1, 1, 0},
-{ 3, s_7_77, -1, 1, 0},
-{ 3, s_7_78, -1, 1, 0},
-{ 3, s_7_79, -1, 1, 0},
-{ 3, s_7_80, -1, 1, 0},
-{ 2, s_7_81, -1, 1, 0},
-{ 2, s_7_82, -1, 1, 0},
-{ 3, s_7_83, -1, 1, 0},
-{ 3, s_7_84, -1, 1, 0},
-{ 3, s_7_85, -1, 1, 0},
-{ 3, s_7_86, -1, 1, 0}
+static const struct among a_7[87] = {
+{ 4, s_7_0, 0, 1, 0},
+{ 4, s_7_1, 0, 1, 0},
+{ 3, s_7_2, 0, 1, 0},
+{ 3, s_7_3, 0, 1, 0},
+{ 3, s_7_4, 0, 1, 0},
+{ 3, s_7_5, 0, 1, 0},
+{ 3, s_7_6, 0, 1, 0},
+{ 3, s_7_7, 0, 1, 0},
+{ 6, s_7_8, 0, 1, 0},
+{ 6, s_7_9, 0, 1, 0},
+{ 4, s_7_10, 0, 1, 0},
+{ 4, s_7_11, 0, 1, 0},
+{ 3, s_7_12, 0, 1, 0},
+{ 3, s_7_13, 0, 1, 0},
+{ 3, s_7_14, 0, 1, 0},
+{ 4, s_7_15, 0, 1, 0},
+{ 3, s_7_16, 0, 1, 0},
+{ 5, s_7_17, -1, 1, 0},
+{ 5, s_7_18, -2, 1, 0},
+{ 5, s_7_19, -3, 1, 0},
+{ 3, s_7_20, 0, 1, 0},
+{ 5, s_7_21, -1, 1, 0},
+{ 5, s_7_22, -2, 1, 0},
+{ 3, s_7_23, 0, 1, 0},
+{ 6, s_7_24, 0, 1, 0},
+{ 6, s_7_25, 0, 1, 0},
+{ 3, s_7_26, 0, 1, 0},
+{ 4, s_7_27, 0, 1, 0},
+{ 4, s_7_28, 0, 1, 0},
+{ 4, s_7_29, 0, 1, 0},
+{ 4, s_7_30, 0, 1, 0},
+{ 4, s_7_31, 0, 1, 0},
+{ 4, s_7_32, 0, 1, 0},
+{ 4, s_7_33, 0, 1, 0},
+{ 3, s_7_34, 0, 1, 0},
+{ 3, s_7_35, 0, 1, 0},
+{ 6, s_7_36, 0, 1, 0},
+{ 6, s_7_37, 0, 1, 0},
+{ 3, s_7_38, 0, 1, 0},
+{ 3, s_7_39, 0, 1, 0},
+{ 3, s_7_40, 0, 1, 0},
+{ 3, s_7_41, 0, 1, 0},
+{ 4, s_7_42, 0, 1, 0},
+{ 4, s_7_43, 0, 1, 0},
+{ 4, s_7_44, 0, 1, 0},
+{ 4, s_7_45, 0, 1, 0},
+{ 4, s_7_46, 0, 1, 0},
+{ 5, s_7_47, 0, 1, 0},
+{ 5, s_7_48, 0, 1, 0},
+{ 5, s_7_49, 0, 1, 0},
+{ 5, s_7_50, 0, 1, 0},
+{ 5, s_7_51, 0, 1, 0},
+{ 6, s_7_52, 0, 1, 0},
+{ 4, s_7_53, 0, 1, 0},
+{ 4, s_7_54, 0, 1, 0},
+{ 6, s_7_55, -1, 1, 0},
+{ 6, s_7_56, -2, 1, 0},
+{ 4, s_7_57, 0, 1, 0},
+{ 3, s_7_58, 0, 1, 0},
+{ 6, s_7_59, -1, 1, 0},
+{ 5, s_7_60, -2, 1, 0},
+{ 5, s_7_61, -3, 1, 0},
+{ 5, s_7_62, -4, 1, 0},
+{ 6, s_7_63, 0, 1, 0},
+{ 6, s_7_64, 0, 1, 0},
+{ 3, s_7_65, 0, 1, 0},
+{ 6, s_7_66, -1, 1, 0},
+{ 5, s_7_67, -2, 1, 0},
+{ 5, s_7_68, -3, 1, 0},
+{ 5, s_7_69, -4, 1, 0},
+{ 8, s_7_70, 0, 1, 0},
+{ 8, s_7_71, 0, 1, 0},
+{ 6, s_7_72, 0, 1, 0},
+{ 6, s_7_73, 0, 1, 0},
+{ 6, s_7_74, 0, 1, 0},
+{ 3, s_7_75, 0, 1, 0},
+{ 3, s_7_76, 0, 1, 0},
+{ 3, s_7_77, 0, 1, 0},
+{ 3, s_7_78, 0, 1, 0},
+{ 3, s_7_79, 0, 1, 0},
+{ 3, s_7_80, 0, 1, 0},
+{ 2, s_7_81, 0, 1, 0},
+{ 2, s_7_82, 0, 1, 0},
+{ 3, s_7_83, 0, 1, 0},
+{ 3, s_7_84, 0, 1, 0},
+{ 3, s_7_85, 0, 1, 0},
+{ 3, s_7_86, 0, 1, 0}
};
static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 8, 2, 1 };
static const unsigned char g_CG[] = { 17 };
-static const symbol s_0[] = { 0xE0 };
-static const symbol s_1[] = { 0xE8 };
-static const symbol s_2[] = { 0xEC };
-static const symbol s_3[] = { 0xF2 };
-static const symbol s_4[] = { 0xF9 };
-static const symbol s_5[] = { 'q', 'U' };
-static const symbol s_6[] = { 'U' };
-static const symbol s_7[] = { 'I' };
-static const symbol s_8[] = { 'i' };
-static const symbol s_9[] = { 'u' };
-static const symbol s_10[] = { 'e' };
-static const symbol s_11[] = { 'i', 'c' };
-static const symbol s_12[] = { 'l', 'o', 'g' };
-static const symbol s_13[] = { 'u' };
-static const symbol s_14[] = { 'e', 'n', 't', 'e' };
-static const symbol s_15[] = { 'a', 't' };
-static const symbol s_16[] = { 'a', 't' };
-static const symbol s_17[] = { 'i', 'c' };
-static const symbol s_18[] = { 'd', 'i', 'v', 'a', 'n', 'o' };
-static const symbol s_19[] = { 'd', 'i', 'v', 'a', 'n' };
-
static int r_prelude(struct SN_env * z) {
int among_var;
- { int c_test1 = z->c;
- while(1) {
- int c2 = z->c;
+ {
+ int v_1 = z->c;
+ while (1) {
+ int v_2 = z->c;
z->bra = z->c;
- among_var = find_among(z, a_0, 7);
+ among_var = find_among(z, a_0, 7, 0);
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_0);
+ {
+ int ret = slice_from_s(z, 1, s_0);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_2);
+ {
+ int ret = slice_from_s(z, 1, s_2);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 1, s_3);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 1, s_4);
+ {
+ int ret = slice_from_s(z, 1, s_4);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 2, s_5);
+ {
+ int ret = slice_from_s(z, 2, s_5);
if (ret < 0) return ret;
}
break;
}
continue;
lab0:
- z->c = c2;
+ z->c = v_2;
break;
}
- z->c = c_test1;
+ z->c = v_1;
}
- while(1) {
- int c3 = z->c;
- while(1) {
- int c4 = z->c;
+ while (1) {
+ int v_3 = z->c;
+ while (1) {
+ int v_4 = z->c;
if (in_grouping(z, g_v, 97, 249, 0)) goto lab2;
z->bra = z->c;
- { int c5 = z->c;
- if (z->c == z->l || z->p[z->c] != 'u') goto lab4;
+ do {
+ int v_5 = z->c;
+ if (z->c == z->l || z->p[z->c] != 'u') goto lab3;
z->c++;
z->ket = z->c;
- if (in_grouping(z, g_v, 97, 249, 0)) goto lab4;
- { int ret = slice_from_s(z, 1, s_6);
+ if (in_grouping(z, g_v, 97, 249, 0)) goto lab3;
+ {
+ int ret = slice_from_s(z, 1, s_6);
if (ret < 0) return ret;
}
- goto lab3;
- lab4:
- z->c = c5;
+ break;
+ lab3:
+ z->c = v_5;
if (z->c == z->l || z->p[z->c] != 'i') goto lab2;
z->c++;
z->ket = z->c;
if (in_grouping(z, g_v, 97, 249, 0)) goto lab2;
- { int ret = slice_from_s(z, 1, s_7);
+ {
+ int ret = slice_from_s(z, 1, s_7);
if (ret < 0) return ret;
}
- }
- lab3:
- z->c = c4;
+ } while (0);
+ z->c = v_4;
break;
lab2:
- z->c = c4;
+ z->c = v_4;
if (z->c >= z->l) goto lab1;
z->c++;
}
continue;
lab1:
- z->c = c3;
+ z->c = v_3;
break;
}
return 1;
}
static int r_mark_regions(struct SN_env * z) {
- z->I[2] = z->l;
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
- { int c2 = z->c;
- if (in_grouping(z, g_v, 97, 249, 0)) goto lab2;
- { int c3 = z->c;
- if (out_grouping(z, g_v, 97, 249, 0)) goto lab4;
-
+ ((SN_local *)z)->i_pV = z->l;
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ do {
+ int v_2 = z->c;
+ if (in_grouping(z, g_v, 97, 249, 0)) goto lab1;
+ do {
+ int v_3 = z->c;
+ if (out_grouping(z, g_v, 97, 249, 0)) goto lab2;
{
int ret = out_grouping(z, g_v, 97, 249, 1);
- if (ret < 0) goto lab4;
+ if (ret < 0) goto lab2;
z->c += ret;
}
- goto lab3;
- lab4:
- z->c = c3;
- if (in_grouping(z, g_v, 97, 249, 0)) goto lab2;
-
+ break;
+ lab2:
+ z->c = v_3;
+ if (in_grouping(z, g_v, 97, 249, 0)) goto lab1;
{
int ret = in_grouping(z, g_v, 97, 249, 1);
- if (ret < 0) goto lab2;
+ if (ret < 0) goto lab1;
z->c += ret;
}
- }
+ } while (0);
+ break;
+ lab1:
+ z->c = v_2;
+ if (!(eq_s(z, 5, s_8))) goto lab3;
+ break;
lab3:
- goto lab1;
- lab2:
- z->c = c2;
+ z->c = v_2;
if (out_grouping(z, g_v, 97, 249, 0)) goto lab0;
- { int c4 = z->c;
- if (out_grouping(z, g_v, 97, 249, 0)) goto lab6;
-
+ do {
+ int v_4 = z->c;
+ if (out_grouping(z, g_v, 97, 249, 0)) goto lab4;
{
int ret = out_grouping(z, g_v, 97, 249, 1);
- if (ret < 0) goto lab6;
+ if (ret < 0) goto lab4;
z->c += ret;
}
- goto lab5;
- lab6:
- z->c = c4;
+ break;
+ lab4:
+ z->c = v_4;
if (in_grouping(z, g_v, 97, 249, 0)) goto lab0;
if (z->c >= z->l) goto lab0;
z->c++;
- }
- lab5:
- ;
- }
- lab1:
- z->I[2] = z->c;
+ } while (0);
+ } while (0);
+ ((SN_local *)z)->i_pV = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int c5 = z->c;
-
+ {
+ int v_5 = z->c;
{
int ret = out_grouping(z, g_v, 97, 249, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab5;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 249, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab5;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 249, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab5;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 249, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab5;
z->c += ret;
}
- z->I[0] = z->c;
- lab7:
- z->c = c5;
+ ((SN_local *)z)->i_p2 = z->c;
+ lab5:
+ z->c = v_5;
}
return 1;
}
static int r_postlude(struct SN_env * z) {
int among_var;
- while(1) {
- int c1 = z->c;
+ while (1) {
+ int v_1 = z->c;
z->bra = z->c;
if (z->c >= z->l || (z->p[z->c + 0] != 73 && z->p[z->c + 0] != 85)) among_var = 3; else
- among_var = find_among(z, a_1, 3);
+ among_var = find_among(z, a_1, 3, 0);
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_8);
+ {
+ int ret = slice_from_s(z, 1, s_9);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_9);
+ {
+ int ret = slice_from_s(z, 1, s_10);
if (ret < 0) return ret;
}
break;
}
continue;
lab0:
- z->c = c1;
+ z->c = v_1;
break;
}
return 1;
}
static int r_RV(struct SN_env * z) {
- return z->I[2] <= z->c;
+ return ((SN_local *)z)->i_pV <= z->c;
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_attached_pronoun(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((33314 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- if (!find_among_b(z, a_2, 37)) return 0;
+ if (!find_among_b(z, a_2, 37, 0)) return 0;
z->bra = z->c;
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 111 && z->p[z->c - 1] != 114)) return 0;
- among_var = find_among_b(z, a_3, 5);
+ among_var = find_among_b(z, a_3, 5, 0);
if (!among_var) return 0;
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_10);
+ {
+ int ret = slice_from_s(z, 1, s_11);
if (ret < 0) return ret;
}
break;
static int r_standard_suffix(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_6, 51);
+ among_var = find_among_b(z, a_6, 51, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_11))) { z->c = z->l - m1; goto lab0; }
+ if (!(eq_s_b(z, 2, s_12))) { z->c = z->l - v_1; goto lab0; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m1; goto lab0; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_1; goto lab0; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab0:
}
break;
case 3:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_12);
+ {
+ int ret = slice_from_s(z, 3, s_13);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 1, s_13);
+ {
+ int ret = slice_from_s(z, 1, s_14);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 4, s_14);
+ {
+ int ret = slice_from_s(z, 4, s_15);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 7:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m2 = z->l - z->c; (void)m2;
+ {
+ int v_2 = z->l - z->c;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4722696 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m2; goto lab1; }
- among_var = find_among_b(z, a_4, 4);
- if (!among_var) { z->c = z->l - m2; goto lab1; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4722696 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_2; goto lab1; }
+ among_var = find_among_b(z, a_4, 4, 0);
+ if (!among_var) { z->c = z->l - v_2; goto lab1; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m2; goto lab1; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_2; goto lab1; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
switch (among_var) {
case 1:
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_15))) { z->c = z->l - m2; goto lab1; }
+ if (!(eq_s_b(z, 2, s_16))) { z->c = z->l - v_2; goto lab1; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m2; goto lab1; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_2; goto lab1; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
break;
case 8:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m3 = z->l - z->c; (void)m3;
+ {
+ int v_3 = z->l - z->c;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m3; goto lab2; }
- if (!find_among_b(z, a_5, 3)) { z->c = z->l - m3; goto lab2; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_3; goto lab2; }
+ if (!find_among_b(z, a_5, 3, 0)) { z->c = z->l - v_3; goto lab2; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m3; goto lab2; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_3; goto lab2; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab2:
}
break;
case 9:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m4 = z->l - z->c; (void)m4;
+ {
+ int v_4 = z->l - z->c;
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_16))) { z->c = z->l - m4; goto lab3; }
+ if (!(eq_s_b(z, 2, s_17))) { z->c = z->l - v_4; goto lab3; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m4; goto lab3; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_4; goto lab3; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_17))) { z->c = z->l - m4; goto lab3; }
+ if (!(eq_s_b(z, 2, s_18))) { z->c = z->l - v_4; goto lab3; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m4; goto lab3; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_4; goto lab3; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab3:
}
static int r_verb_suffix(struct SN_env * z) {
-
- { int mlimit1;
- if (z->c < z->I[2]) return 0;
- mlimit1 = z->lb; z->lb = z->I[2];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_pV) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
z->ket = z->c;
- if (!find_among_b(z, a_7, 87)) { z->lb = mlimit1; return 0; }
+ if (!find_among_b(z, a_7, 87, 0)) { z->lb = v_1; return 0; }
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->lb = mlimit1;
+ z->lb = v_1;
}
return 1;
}
static int r_vowel_suffix(struct SN_env * z) {
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
- if (in_grouping_b(z, g_AEIO, 97, 242, 0)) { z->c = z->l - m1; goto lab0; }
+ if (in_grouping_b(z, g_AEIO, 97, 242, 0)) { z->c = z->l - v_1; goto lab0; }
z->bra = z->c;
- { int ret = r_RV(z);
- if (ret == 0) { z->c = z->l - m1; goto lab0; }
+ {
+ int ret = r_RV(z);
+ if (ret == 0) { z->c = z->l - v_1; goto lab0; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'i') { z->c = z->l - m1; goto lab0; }
+ if (z->c <= z->lb || z->p[z->c - 1] != 'i') { z->c = z->l - v_1; goto lab0; }
z->c--;
z->bra = z->c;
- { int ret = r_RV(z);
- if (ret == 0) { z->c = z->l - m1; goto lab0; }
+ {
+ int ret = r_RV(z);
+ if (ret == 0) { z->c = z->l - v_1; goto lab0; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab0:
;
}
- { int m2 = z->l - z->c; (void)m2;
+ {
+ int v_2 = z->l - z->c;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'h') { z->c = z->l - m2; goto lab1; }
+ if (z->c <= z->lb || z->p[z->c - 1] != 'h') { z->c = z->l - v_2; goto lab1; }
z->c--;
z->bra = z->c;
- if (in_grouping_b(z, g_CG, 99, 103, 0)) { z->c = z->l - m2; goto lab1; }
- { int ret = r_RV(z);
- if (ret == 0) { z->c = z->l - m2; goto lab1; }
+ if (in_grouping_b(z, g_CG, 99, 103, 0)) { z->c = z->l - v_2; goto lab1; }
+ {
+ int ret = r_RV(z);
+ if (ret == 0) { z->c = z->l - v_2; goto lab1; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab1:
return 1;
}
-static int r_exceptions(struct SN_env * z) {
- z->bra = z->c;
- if (!(eq_s(z, 6, s_18))) return 0;
- if (z->c < z->l) return 0;
- z->ket = z->c;
- { int ret = slice_from_s(z, 5, s_19);
- if (ret < 0) return ret;
- }
- return 1;
-}
-
extern int italian_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_exceptions(z);
- if (ret == 0) goto lab1;
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_prelude(z);
if (ret < 0) return ret;
}
- goto lab0;
- lab1:
- z->c = c1;
- { int c2 = z->c;
- { int ret = r_prelude(z);
- if (ret < 0) return ret;
- }
- z->c = c2;
- }
-
- { int ret = r_mark_regions(z);
+ z->c = v_1;
+ }
+ {
+ int ret = r_mark_regions(z);
+ if (ret < 0) return ret;
+ }
+ z->lb = z->c; z->c = z->l;
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_attached_pronoun(z);
if (ret < 0) return ret;
}
- z->lb = z->c; z->c = z->l;
-
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_attached_pronoun(z);
+ z->c = z->l - v_2;
+ }
+ {
+ int v_3 = z->l - z->c;
+ do {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_standard_suffix(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- z->c = z->l - m3;
- }
- { int m4 = z->l - z->c; (void)m4;
- { int m5 = z->l - z->c; (void)m5;
- { int ret = r_standard_suffix(z);
- if (ret == 0) goto lab4;
- if (ret < 0) return ret;
- }
- goto lab3;
- lab4:
- z->c = z->l - m5;
- { int ret = r_verb_suffix(z);
- if (ret == 0) goto lab2;
- if (ret < 0) return ret;
- }
- }
- lab3:
- lab2:
- z->c = z->l - m4;
- }
- { int m6 = z->l - z->c; (void)m6;
- { int ret = r_vowel_suffix(z);
+ break;
+ lab1:
+ z->c = z->l - v_4;
+ {
+ int ret = r_verb_suffix(z);
+ if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- z->c = z->l - m6;
+ } while (0);
+ lab0:
+ z->c = z->l - v_3;
+ }
+ {
+ int v_5 = z->l - z->c;
+ {
+ int ret = r_vowel_suffix(z);
+ if (ret < 0) return ret;
}
- z->c = z->lb;
- { int c7 = z->c;
- { int ret = r_postlude(z);
- if (ret < 0) return ret;
- }
- z->c = c7;
+ z->c = z->l - v_5;
+ }
+ z->c = z->lb;
+ {
+ int v_6 = z->c;
+ {
+ int ret = r_postlude(z);
+ if (ret < 0) return ret;
}
+ z->c = v_6;
}
-lab0:
return 1;
}
-extern struct SN_env * italian_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * italian_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->i_pV = 0;
+ }
+ return z;
+}
-extern void italian_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void italian_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from norwegian.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_norwegian.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p1;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_other_suffix(struct SN_env * z);
static int r_consonant_pair(struct SN_env * z);
static int r_main_suffix(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-extern struct SN_env * norwegian_ISO_8859_1_create_env(void);
-extern void norwegian_ISO_8859_1_close_env(struct SN_env * z);
-
-
-#ifdef __cplusplus
-}
-#endif
-static const symbol s_0_0[1] = { 'a' };
-static const symbol s_0_1[1] = { 'e' };
-static const symbol s_0_2[3] = { 'e', 'd', 'e' };
-static const symbol s_0_3[4] = { 'a', 'n', 'd', 'e' };
-static const symbol s_0_4[4] = { 'e', 'n', 'd', 'e' };
-static const symbol s_0_5[3] = { 'a', 'n', 'e' };
-static const symbol s_0_6[3] = { 'e', 'n', 'e' };
-static const symbol s_0_7[6] = { 'h', 'e', 't', 'e', 'n', 'e' };
-static const symbol s_0_8[4] = { 'e', 'r', 't', 'e' };
-static const symbol s_0_9[2] = { 'e', 'n' };
-static const symbol s_0_10[5] = { 'h', 'e', 't', 'e', 'n' };
-static const symbol s_0_11[2] = { 'a', 'r' };
-static const symbol s_0_12[2] = { 'e', 'r' };
-static const symbol s_0_13[5] = { 'h', 'e', 't', 'e', 'r' };
-static const symbol s_0_14[1] = { 's' };
-static const symbol s_0_15[2] = { 'a', 's' };
-static const symbol s_0_16[2] = { 'e', 's' };
-static const symbol s_0_17[4] = { 'e', 'd', 'e', 's' };
-static const symbol s_0_18[5] = { 'e', 'n', 'd', 'e', 's' };
-static const symbol s_0_19[4] = { 'e', 'n', 'e', 's' };
-static const symbol s_0_20[7] = { 'h', 'e', 't', 'e', 'n', 'e', 's' };
-static const symbol s_0_21[3] = { 'e', 'n', 's' };
-static const symbol s_0_22[6] = { 'h', 'e', 't', 'e', 'n', 's' };
-static const symbol s_0_23[3] = { 'e', 'r', 's' };
-static const symbol s_0_24[3] = { 'e', 't', 's' };
-static const symbol s_0_25[2] = { 'e', 't' };
-static const symbol s_0_26[3] = { 'h', 'e', 't' };
-static const symbol s_0_27[3] = { 'e', 'r', 't' };
-static const symbol s_0_28[3] = { 'a', 's', 't' };
+static const symbol s_0[] = { 'e', 'r' };
-static const struct among a_0[29] =
-{
-{ 1, s_0_0, -1, 1, 0},
-{ 1, s_0_1, -1, 1, 0},
-{ 3, s_0_2, 1, 1, 0},
-{ 4, s_0_3, 1, 1, 0},
-{ 4, s_0_4, 1, 1, 0},
-{ 3, s_0_5, 1, 1, 0},
-{ 3, s_0_6, 1, 1, 0},
-{ 6, s_0_7, 6, 1, 0},
-{ 4, s_0_8, 1, 3, 0},
-{ 2, s_0_9, -1, 1, 0},
-{ 5, s_0_10, 9, 1, 0},
-{ 2, s_0_11, -1, 1, 0},
-{ 2, s_0_12, -1, 1, 0},
-{ 5, s_0_13, 12, 1, 0},
-{ 1, s_0_14, -1, 2, 0},
-{ 2, s_0_15, 14, 1, 0},
-{ 2, s_0_16, 14, 1, 0},
-{ 4, s_0_17, 16, 1, 0},
-{ 5, s_0_18, 16, 1, 0},
-{ 4, s_0_19, 16, 1, 0},
-{ 7, s_0_20, 19, 1, 0},
-{ 3, s_0_21, 14, 1, 0},
-{ 6, s_0_22, 21, 1, 0},
-{ 3, s_0_23, 14, 1, 0},
-{ 3, s_0_24, 14, 1, 0},
-{ 2, s_0_25, -1, 1, 0},
-{ 3, s_0_26, 25, 1, 0},
-{ 3, s_0_27, -1, 3, 0},
-{ 3, s_0_28, -1, 1, 0}
+static const symbol s_0_1[3] = { 'i', 'n', 'd' };
+static const symbol s_0_2[2] = { 'k', 'k' };
+static const symbol s_0_3[2] = { 'n', 'k' };
+static const symbol s_0_4[3] = { 'a', 'm', 'm' };
+static const symbol s_0_5[3] = { 'o', 'm', 'm' };
+static const symbol s_0_6[3] = { 'k', 'a', 'p' };
+static const symbol s_0_7[4] = { 's', 'k', 'a', 'p' };
+static const symbol s_0_8[2] = { 'p', 'p' };
+static const symbol s_0_9[2] = { 'l', 't' };
+static const symbol s_0_10[3] = { 'a', 's', 't' };
+static const symbol s_0_11[3] = { 0xF8, 's', 't' };
+static const symbol s_0_12[1] = { 'v' };
+static const symbol s_0_13[3] = { 'h', 'a', 'v' };
+static const symbol s_0_14[3] = { 'g', 'i', 'v' };
+static const struct among a_0[15] = {
+{ 0, 0, 0, 1, 0},
+{ 3, s_0_1, -1, -1, 0},
+{ 2, s_0_2, -2, -1, 0},
+{ 2, s_0_3, -3, -1, 0},
+{ 3, s_0_4, -4, -1, 0},
+{ 3, s_0_5, -5, -1, 0},
+{ 3, s_0_6, -6, -1, 0},
+{ 4, s_0_7, -1, 1, 0},
+{ 2, s_0_8, -8, -1, 0},
+{ 2, s_0_9, -9, -1, 0},
+{ 3, s_0_10, -10, -1, 0},
+{ 3, s_0_11, -11, -1, 0},
+{ 1, s_0_12, -12, -1, 0},
+{ 3, s_0_13, -1, 1, 0},
+{ 3, s_0_14, -2, 1, 0}
};
-static const symbol s_1_0[2] = { 'd', 't' };
-static const symbol s_1_1[2] = { 'v', 't' };
-
-static const struct among a_1[2] =
-{
-{ 2, s_1_0, -1, -1, 0},
-{ 2, s_1_1, -1, -1, 0}
+static const symbol s_1_0[1] = { 'a' };
+static const symbol s_1_1[1] = { 'e' };
+static const symbol s_1_2[3] = { 'e', 'd', 'e' };
+static const symbol s_1_3[4] = { 'a', 'n', 'd', 'e' };
+static const symbol s_1_4[4] = { 'e', 'n', 'd', 'e' };
+static const symbol s_1_5[3] = { 'a', 'n', 'e' };
+static const symbol s_1_6[3] = { 'e', 'n', 'e' };
+static const symbol s_1_7[6] = { 'h', 'e', 't', 'e', 'n', 'e' };
+static const symbol s_1_8[4] = { 'e', 'r', 't', 'e' };
+static const symbol s_1_9[2] = { 'e', 'n' };
+static const symbol s_1_10[5] = { 'h', 'e', 't', 'e', 'n' };
+static const symbol s_1_11[2] = { 'a', 'r' };
+static const symbol s_1_12[2] = { 'e', 'r' };
+static const symbol s_1_13[5] = { 'h', 'e', 't', 'e', 'r' };
+static const symbol s_1_14[1] = { 's' };
+static const symbol s_1_15[2] = { 'a', 's' };
+static const symbol s_1_16[2] = { 'e', 's' };
+static const symbol s_1_17[4] = { 'e', 'd', 'e', 's' };
+static const symbol s_1_18[5] = { 'e', 'n', 'd', 'e', 's' };
+static const symbol s_1_19[4] = { 'e', 'n', 'e', 's' };
+static const symbol s_1_20[7] = { 'h', 'e', 't', 'e', 'n', 'e', 's' };
+static const symbol s_1_21[3] = { 'e', 'n', 's' };
+static const symbol s_1_22[6] = { 'h', 'e', 't', 'e', 'n', 's' };
+static const symbol s_1_23[3] = { 'e', 'r', 's' };
+static const symbol s_1_24[3] = { 'e', 't', 's' };
+static const symbol s_1_25[2] = { 'e', 't' };
+static const symbol s_1_26[3] = { 'h', 'e', 't' };
+static const symbol s_1_27[3] = { 'e', 'r', 't' };
+static const symbol s_1_28[3] = { 'a', 's', 't' };
+static const struct among a_1[29] = {
+{ 1, s_1_0, 0, 1, 0},
+{ 1, s_1_1, 0, 1, 0},
+{ 3, s_1_2, -1, 1, 0},
+{ 4, s_1_3, -2, 1, 0},
+{ 4, s_1_4, -3, 1, 0},
+{ 3, s_1_5, -4, 1, 0},
+{ 3, s_1_6, -5, 1, 0},
+{ 6, s_1_7, -1, 1, 0},
+{ 4, s_1_8, -7, 4, 0},
+{ 2, s_1_9, 0, 1, 0},
+{ 5, s_1_10, -1, 1, 0},
+{ 2, s_1_11, 0, 1, 0},
+{ 2, s_1_12, 0, 1, 0},
+{ 5, s_1_13, -1, 1, 0},
+{ 1, s_1_14, 0, 3, 0},
+{ 2, s_1_15, -1, 1, 0},
+{ 2, s_1_16, -2, 1, 0},
+{ 4, s_1_17, -1, 1, 0},
+{ 5, s_1_18, -2, 1, 0},
+{ 4, s_1_19, -3, 1, 0},
+{ 7, s_1_20, -1, 1, 0},
+{ 3, s_1_21, -7, 1, 0},
+{ 6, s_1_22, -1, 1, 0},
+{ 3, s_1_23, -9, 2, 0},
+{ 3, s_1_24, -10, 1, 0},
+{ 2, s_1_25, 0, 1, 0},
+{ 3, s_1_26, -1, 1, 0},
+{ 3, s_1_27, 0, 4, 0},
+{ 3, s_1_28, 0, 1, 0}
};
-static const symbol s_2_0[3] = { 'l', 'e', 'g' };
-static const symbol s_2_1[4] = { 'e', 'l', 'e', 'g' };
-static const symbol s_2_2[2] = { 'i', 'g' };
-static const symbol s_2_3[3] = { 'e', 'i', 'g' };
-static const symbol s_2_4[3] = { 'l', 'i', 'g' };
-static const symbol s_2_5[4] = { 'e', 'l', 'i', 'g' };
-static const symbol s_2_6[3] = { 'e', 'l', 's' };
-static const symbol s_2_7[3] = { 'l', 'o', 'v' };
-static const symbol s_2_8[4] = { 'e', 'l', 'o', 'v' };
-static const symbol s_2_9[4] = { 's', 'l', 'o', 'v' };
-static const symbol s_2_10[7] = { 'h', 'e', 't', 's', 'l', 'o', 'v' };
-
-static const struct among a_2[11] =
-{
-{ 3, s_2_0, -1, 1, 0},
-{ 4, s_2_1, 0, 1, 0},
-{ 2, s_2_2, -1, 1, 0},
-{ 3, s_2_3, 2, 1, 0},
-{ 3, s_2_4, 2, 1, 0},
-{ 4, s_2_5, 4, 1, 0},
-{ 3, s_2_6, -1, 1, 0},
-{ 3, s_2_7, -1, 1, 0},
-{ 4, s_2_8, 7, 1, 0},
-{ 4, s_2_9, 7, 1, 0},
-{ 7, s_2_10, 9, 1, 0}
+static const symbol s_2_0[2] = { 'd', 't' };
+static const symbol s_2_1[2] = { 'v', 't' };
+static const struct among a_2[2] = {
+{ 2, s_2_0, 0, -1, 0},
+{ 2, s_2_1, 0, -1, 0}
};
-static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 128 };
+static const symbol s_3_0[3] = { 'l', 'e', 'g' };
+static const symbol s_3_1[4] = { 'e', 'l', 'e', 'g' };
+static const symbol s_3_2[2] = { 'i', 'g' };
+static const symbol s_3_3[3] = { 'e', 'i', 'g' };
+static const symbol s_3_4[3] = { 'l', 'i', 'g' };
+static const symbol s_3_5[4] = { 'e', 'l', 'i', 'g' };
+static const symbol s_3_6[3] = { 'e', 'l', 's' };
+static const symbol s_3_7[3] = { 'l', 'o', 'v' };
+static const symbol s_3_8[4] = { 'e', 'l', 'o', 'v' };
+static const symbol s_3_9[4] = { 's', 'l', 'o', 'v' };
+static const symbol s_3_10[7] = { 'h', 'e', 't', 's', 'l', 'o', 'v' };
+static const struct among a_3[11] = {
+{ 3, s_3_0, 0, 1, 0},
+{ 4, s_3_1, -1, 1, 0},
+{ 2, s_3_2, 0, 1, 0},
+{ 3, s_3_3, -1, 1, 0},
+{ 3, s_3_4, -2, 1, 0},
+{ 4, s_3_5, -1, 1, 0},
+{ 3, s_3_6, 0, 1, 0},
+{ 3, s_3_7, 0, 1, 0},
+{ 4, s_3_8, -1, 1, 0},
+{ 4, s_3_9, -2, 1, 0},
+{ 7, s_3_10, -1, 1, 0}
+};
-static const unsigned char g_s_ending[] = { 119, 125, 149, 1 };
+static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 2, 142 };
-static const symbol s_0[] = { 'e', 'r' };
+static const unsigned char g_s_ending[] = { 119, 125, 148, 1 };
static int r_mark_regions(struct SN_env * z) {
- z->I[1] = z->l;
- { int c_test1 = z->c;
-z->c = z->c + 3;
- if (z->c > z->l) return 0;
- z->I[0] = z->c;
- z->c = c_test1;
+ int i_x;
+ ((SN_local *)z)->i_p1 = z->l;
+ {
+ int v_1 = z->c;
+ if (z->c + 3 > z->l) return 0;
+ z->c += 3;
+ i_x = z->c;
+ z->c = v_1;
+ }
+ {
+ int ret = out_grouping(z, g_v, 97, 248, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
}
-
- if (out_grouping(z, g_v, 97, 248, 1) < 0) return 0;
-
{
int ret = in_grouping(z, g_v, 97, 248, 1);
if (ret < 0) return 0;
z->c += ret;
}
- z->I[1] = z->c;
-
- if (z->I[1] >= z->I[0]) goto lab0;
- z->I[1] = z->I[0];
+ ((SN_local *)z)->i_p1 = z->c;
+ if (((SN_local *)z)->i_p1 >= i_x) goto lab0;
+ ((SN_local *)z)->i_p1 = i_x;
lab0:
return 1;
}
static int r_main_suffix(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851426 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
- among_var = find_among_b(z, a_0, 29);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851426 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_1; return 0; }
+ among_var = find_among_b(z, a_1, 29, 0);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int m2 = z->l - z->c; (void)m2;
- if (in_grouping_b(z, g_s_ending, 98, 122, 0)) goto lab1;
- goto lab0;
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((5318672 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 1; else
+ among_var = find_among_b(z, a_0, 15, 0);
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ break;
+ case 3:
+ do {
+ int v_2 = z->l - z->c;
+ if (in_grouping_b(z, g_s_ending, 98, 122, 0)) goto lab0;
+ break;
+ lab0:
+ z->c = z->l - v_2;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'r') goto lab1;
+ z->c--;
+ {
+ int v_3 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'e') goto lab2;
+ z->c--;
+ goto lab1;
+ lab2:
+ z->c = z->l - v_3;
+ }
+ break;
lab1:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
if (z->c <= z->lb || z->p[z->c - 1] != 'k') return 0;
z->c--;
if (out_grouping_b(z, g_v, 97, 248, 0)) return 0;
- }
- lab0:
- { int ret = slice_del(z);
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
- case 3:
- { int ret = slice_from_s(z, 2, s_0);
+ case 4:
+ {
+ int ret = slice_from_s(z, 2, s_0);
if (ret < 0) return ret;
}
break;
}
static int r_consonant_pair(struct SN_env * z) {
- { int m_test1 = z->l - z->c;
-
- { int mlimit2;
- if (z->c < z->I[1]) return 0;
- mlimit2 = z->lb; z->lb = z->I[1];
+ {
+ int v_1 = z->l - z->c;
+ {
+ int v_2;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_2 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] != 116) { z->lb = mlimit2; return 0; }
- if (!find_among_b(z, a_1, 2)) { z->lb = mlimit2; return 0; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] != 116) { z->lb = v_2; return 0; }
+ if (!find_among_b(z, a_2, 2, 0)) { z->lb = v_2; return 0; }
z->bra = z->c;
- z->lb = mlimit2;
+ z->lb = v_2;
}
- z->c = z->l - m_test1;
+ z->c = z->l - v_1;
}
if (z->c <= z->lb) return 0;
z->c--;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
static int r_other_suffix(struct SN_env * z) {
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718720 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
- if (!find_among_b(z, a_2, 11)) { z->lb = mlimit1; return 0; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718720 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_1; return 0; }
+ if (!find_among_b(z, a_3, 11, 0)) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
extern int norwegian_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_mark_regions(z);
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
z->lb = z->c; z->c = z->l;
-
- { int m2 = z->l - z->c; (void)m2;
- { int ret = r_main_suffix(z);
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_main_suffix(z);
if (ret < 0) return ret;
}
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_consonant_pair(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_consonant_pair(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_other_suffix(z);
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_other_suffix(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * norwegian_ISO_8859_1_create_env(void) { return SN_create_env(0, 2); }
+extern struct SN_env * norwegian_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p1 = 0;
+ }
+ return z;
+}
-extern void norwegian_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void norwegian_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from porter.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_porter.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_Step_5b(struct SN_env * z);
static int r_Step_5a(struct SN_env * z);
static int r_Step_4(struct SN_env * z);
static int r_R2(struct SN_env * z);
static int r_R1(struct SN_env * z);
static int r_shortv(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * porter_ISO_8859_1_create_env(void);
-extern void porter_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 's', 's' };
+static const symbol s_1[] = { 'i' };
+static const symbol s_2[] = { 'e', 'e' };
+static const symbol s_3[] = { 'e' };
+static const symbol s_4[] = { 'e' };
+static const symbol s_5[] = { 'i' };
+static const symbol s_6[] = { 't', 'i', 'o', 'n' };
+static const symbol s_7[] = { 'e', 'n', 'c', 'e' };
+static const symbol s_8[] = { 'a', 'n', 'c', 'e' };
+static const symbol s_9[] = { 'a', 'b', 'l', 'e' };
+static const symbol s_10[] = { 'e', 'n', 't' };
+static const symbol s_11[] = { 'e' };
+static const symbol s_12[] = { 'i', 'z', 'e' };
+static const symbol s_13[] = { 'a', 't', 'e' };
+static const symbol s_14[] = { 'a', 'l' };
+static const symbol s_15[] = { 'f', 'u', 'l' };
+static const symbol s_16[] = { 'o', 'u', 's' };
+static const symbol s_17[] = { 'i', 'v', 'e' };
+static const symbol s_18[] = { 'b', 'l', 'e' };
+static const symbol s_19[] = { 'a', 'l' };
+static const symbol s_20[] = { 'i', 'c' };
+static const symbol s_21[] = { 'Y' };
+static const symbol s_22[] = { 'Y' };
+static const symbol s_23[] = { 'y' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[1] = { 's' };
static const symbol s_0_1[3] = { 'i', 'e', 's' };
static const symbol s_0_2[4] = { 's', 's', 'e', 's' };
static const symbol s_0_3[2] = { 's', 's' };
-
-static const struct among a_0[4] =
-{
-{ 1, s_0_0, -1, 3, 0},
-{ 3, s_0_1, 0, 2, 0},
-{ 4, s_0_2, 0, 1, 0},
-{ 2, s_0_3, 0, -1, 0}
+static const struct among a_0[4] = {
+{ 1, s_0_0, 0, 3, 0},
+{ 3, s_0_1, -1, 2, 0},
+{ 4, s_0_2, -2, 1, 0},
+{ 2, s_0_3, -3, -1, 0}
};
static const symbol s_1_1[2] = { 'b', 'b' };
static const symbol s_1_10[2] = { 'a', 't' };
static const symbol s_1_11[2] = { 't', 't' };
static const symbol s_1_12[2] = { 'i', 'z' };
-
-static const struct among a_1[13] =
-{
-{ 0, 0, -1, 3, 0},
-{ 2, s_1_1, 0, 2, 0},
-{ 2, s_1_2, 0, 2, 0},
-{ 2, s_1_3, 0, 2, 0},
-{ 2, s_1_4, 0, 2, 0},
-{ 2, s_1_5, 0, 1, 0},
-{ 2, s_1_6, 0, 2, 0},
-{ 2, s_1_7, 0, 2, 0},
-{ 2, s_1_8, 0, 2, 0},
-{ 2, s_1_9, 0, 2, 0},
-{ 2, s_1_10, 0, 1, 0},
-{ 2, s_1_11, 0, 2, 0},
-{ 2, s_1_12, 0, 1, 0}
+static const struct among a_1[13] = {
+{ 0, 0, 0, 3, 0},
+{ 2, s_1_1, -1, 2, 0},
+{ 2, s_1_2, -2, 2, 0},
+{ 2, s_1_3, -3, 2, 0},
+{ 2, s_1_4, -4, 2, 0},
+{ 2, s_1_5, -5, 1, 0},
+{ 2, s_1_6, -6, 2, 0},
+{ 2, s_1_7, -7, 2, 0},
+{ 2, s_1_8, -8, 2, 0},
+{ 2, s_1_9, -9, 2, 0},
+{ 2, s_1_10, -10, 1, 0},
+{ 2, s_1_11, -11, 2, 0},
+{ 2, s_1_12, -12, 1, 0}
};
static const symbol s_2_0[2] = { 'e', 'd' };
static const symbol s_2_1[3] = { 'e', 'e', 'd' };
static const symbol s_2_2[3] = { 'i', 'n', 'g' };
-
-static const struct among a_2[3] =
-{
-{ 2, s_2_0, -1, 2, 0},
-{ 3, s_2_1, 0, 1, 0},
-{ 3, s_2_2, -1, 2, 0}
+static const struct among a_2[3] = {
+{ 2, s_2_0, 0, 2, 0},
+{ 3, s_2_1, -1, 1, 0},
+{ 3, s_2_2, 0, 2, 0}
};
static const symbol s_3_0[4] = { 'a', 'n', 'c', 'i' };
static const symbol s_3_17[7] = { 'i', 'v', 'e', 'n', 'e', 's', 's' };
static const symbol s_3_18[7] = { 'f', 'u', 'l', 'n', 'e', 's', 's' };
static const symbol s_3_19[7] = { 'o', 'u', 's', 'n', 'e', 's', 's' };
-
-static const struct among a_3[20] =
-{
-{ 4, s_3_0, -1, 3, 0},
-{ 4, s_3_1, -1, 2, 0},
-{ 4, s_3_2, -1, 4, 0},
-{ 3, s_3_3, -1, 6, 0},
-{ 4, s_3_4, -1, 9, 0},
-{ 5, s_3_5, -1, 11, 0},
-{ 5, s_3_6, -1, 5, 0},
-{ 5, s_3_7, -1, 9, 0},
-{ 6, s_3_8, -1, 13, 0},
-{ 5, s_3_9, -1, 12, 0},
-{ 6, s_3_10, -1, 1, 0},
-{ 7, s_3_11, 10, 8, 0},
-{ 5, s_3_12, -1, 9, 0},
-{ 5, s_3_13, -1, 8, 0},
-{ 7, s_3_14, 13, 7, 0},
-{ 4, s_3_15, -1, 7, 0},
-{ 4, s_3_16, -1, 8, 0},
-{ 7, s_3_17, -1, 12, 0},
-{ 7, s_3_18, -1, 10, 0},
-{ 7, s_3_19, -1, 11, 0}
+static const struct among a_3[20] = {
+{ 4, s_3_0, 0, 3, 0},
+{ 4, s_3_1, 0, 2, 0},
+{ 4, s_3_2, 0, 4, 0},
+{ 3, s_3_3, 0, 6, 0},
+{ 4, s_3_4, 0, 9, 0},
+{ 5, s_3_5, 0, 11, 0},
+{ 5, s_3_6, 0, 5, 0},
+{ 5, s_3_7, 0, 9, 0},
+{ 6, s_3_8, 0, 13, 0},
+{ 5, s_3_9, 0, 12, 0},
+{ 6, s_3_10, 0, 1, 0},
+{ 7, s_3_11, -1, 8, 0},
+{ 5, s_3_12, 0, 9, 0},
+{ 5, s_3_13, 0, 8, 0},
+{ 7, s_3_14, -1, 7, 0},
+{ 4, s_3_15, 0, 7, 0},
+{ 4, s_3_16, 0, 8, 0},
+{ 7, s_3_17, 0, 12, 0},
+{ 7, s_3_18, 0, 10, 0},
+{ 7, s_3_19, 0, 11, 0}
};
static const symbol s_4_0[5] = { 'i', 'c', 'a', 't', 'e' };
static const symbol s_4_4[4] = { 'i', 'c', 'a', 'l' };
static const symbol s_4_5[3] = { 'f', 'u', 'l' };
static const symbol s_4_6[4] = { 'n', 'e', 's', 's' };
-
-static const struct among a_4[7] =
-{
-{ 5, s_4_0, -1, 2, 0},
-{ 5, s_4_1, -1, 3, 0},
-{ 5, s_4_2, -1, 1, 0},
-{ 5, s_4_3, -1, 2, 0},
-{ 4, s_4_4, -1, 2, 0},
-{ 3, s_4_5, -1, 3, 0},
-{ 4, s_4_6, -1, 3, 0}
+static const struct among a_4[7] = {
+{ 5, s_4_0, 0, 2, 0},
+{ 5, s_4_1, 0, 3, 0},
+{ 5, s_4_2, 0, 1, 0},
+{ 5, s_4_3, 0, 2, 0},
+{ 4, s_4_4, 0, 2, 0},
+{ 3, s_4_5, 0, 3, 0},
+{ 4, s_4_6, 0, 3, 0}
};
static const symbol s_5_0[2] = { 'i', 'c' };
static const symbol s_5_16[4] = { 'm', 'e', 'n', 't' };
static const symbol s_5_17[5] = { 'e', 'm', 'e', 'n', 't' };
static const symbol s_5_18[2] = { 'o', 'u' };
-
-static const struct among a_5[19] =
-{
-{ 2, s_5_0, -1, 1, 0},
-{ 4, s_5_1, -1, 1, 0},
-{ 4, s_5_2, -1, 1, 0},
-{ 4, s_5_3, -1, 1, 0},
-{ 4, s_5_4, -1, 1, 0},
-{ 3, s_5_5, -1, 1, 0},
-{ 3, s_5_6, -1, 1, 0},
-{ 3, s_5_7, -1, 1, 0},
-{ 3, s_5_8, -1, 1, 0},
-{ 2, s_5_9, -1, 1, 0},
-{ 3, s_5_10, -1, 1, 0},
-{ 3, s_5_11, -1, 2, 0},
-{ 2, s_5_12, -1, 1, 0},
-{ 3, s_5_13, -1, 1, 0},
-{ 3, s_5_14, -1, 1, 0},
-{ 3, s_5_15, -1, 1, 0},
-{ 4, s_5_16, 15, 1, 0},
-{ 5, s_5_17, 16, 1, 0},
-{ 2, s_5_18, -1, 1, 0}
+static const struct among a_5[19] = {
+{ 2, s_5_0, 0, 1, 0},
+{ 4, s_5_1, 0, 1, 0},
+{ 4, s_5_2, 0, 1, 0},
+{ 4, s_5_3, 0, 1, 0},
+{ 4, s_5_4, 0, 1, 0},
+{ 3, s_5_5, 0, 1, 0},
+{ 3, s_5_6, 0, 1, 0},
+{ 3, s_5_7, 0, 1, 0},
+{ 3, s_5_8, 0, 1, 0},
+{ 2, s_5_9, 0, 1, 0},
+{ 3, s_5_10, 0, 1, 0},
+{ 3, s_5_11, 0, 2, 0},
+{ 2, s_5_12, 0, 1, 0},
+{ 3, s_5_13, 0, 1, 0},
+{ 3, s_5_14, 0, 1, 0},
+{ 3, s_5_15, 0, 1, 0},
+{ 4, s_5_16, -1, 1, 0},
+{ 5, s_5_17, -1, 1, 0},
+{ 2, s_5_18, 0, 1, 0}
};
static const unsigned char g_v[] = { 17, 65, 16, 1 };
static const unsigned char g_v_WXY[] = { 1, 17, 65, 208, 1 };
-static const symbol s_0[] = { 's', 's' };
-static const symbol s_1[] = { 'i' };
-static const symbol s_2[] = { 'e', 'e' };
-static const symbol s_3[] = { 'e' };
-static const symbol s_4[] = { 'e' };
-static const symbol s_5[] = { 'i' };
-static const symbol s_6[] = { 't', 'i', 'o', 'n' };
-static const symbol s_7[] = { 'e', 'n', 'c', 'e' };
-static const symbol s_8[] = { 'a', 'n', 'c', 'e' };
-static const symbol s_9[] = { 'a', 'b', 'l', 'e' };
-static const symbol s_10[] = { 'e', 'n', 't' };
-static const symbol s_11[] = { 'e' };
-static const symbol s_12[] = { 'i', 'z', 'e' };
-static const symbol s_13[] = { 'a', 't', 'e' };
-static const symbol s_14[] = { 'a', 'l' };
-static const symbol s_15[] = { 'f', 'u', 'l' };
-static const symbol s_16[] = { 'o', 'u', 's' };
-static const symbol s_17[] = { 'i', 'v', 'e' };
-static const symbol s_18[] = { 'b', 'l', 'e' };
-static const symbol s_19[] = { 'a', 'l' };
-static const symbol s_20[] = { 'i', 'c' };
-static const symbol s_21[] = { 'Y' };
-static const symbol s_22[] = { 'Y' };
-static const symbol s_23[] = { 'y' };
-
static int r_shortv(struct SN_env * z) {
if (out_grouping_b(z, g_v_WXY, 89, 121, 0)) return 0;
if (in_grouping_b(z, g_v, 97, 121, 0)) return 0;
- if (out_grouping_b(z, g_v, 97, 121, 0)) return 0;
- return 1;
+ return !out_grouping_b(z, g_v, 97, 121, 0);
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_Step_1a(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] != 115) return 0;
- among_var = find_among_b(z, a_0, 4);
+ among_var = find_among_b(z, a_0, 4, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 2, s_0);
+ {
+ int ret = slice_from_s(z, 2, s_0);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 100 && z->p[z->c - 1] != 103)) return 0;
- among_var = find_among_b(z, a_2, 3);
+ among_var = find_among_b(z, a_2, 3, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 2, s_2);
+ {
+ int ret = slice_from_s(z, 2, s_2);
if (ret < 0) return ret;
}
break;
case 2:
- { int m_test1 = z->l - z->c;
-
+ {
+ int v_1 = z->l - z->c;
{
int ret = out_grouping_b(z, g_v, 97, 121, 1);
if (ret < 0) return 0;
z->c -= ret;
}
- z->c = z->l - m_test1;
+ z->c = z->l - v_1;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m_test2 = z->l - z->c;
+ {
+ int v_2 = z->l - z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((68514004 >> (z->p[z->c - 1] & 0x1f)) & 1)) among_var = 3; else
- among_var = find_among_b(z, a_1, 13);
- z->c = z->l - m_test2;
+ among_var = find_among_b(z, a_1, 13, 0);
+ z->c = z->l - v_2;
}
switch (among_var) {
case 1:
- { int ret;
- { int saved_c = z->c;
- ret = insert_s(z, z->c, z->c, 1, s_3);
- z->c = saved_c;
- }
+ {
+ int saved_c = z->c;
+ int ret = insert_s(z, z->c, z->c, 1, s_3);
+ z->c = saved_c;
if (ret < 0) return ret;
}
break;
if (z->c <= z->lb) return 0;
z->c--;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
- if (z->c != z->I[1]) return 0;
- { int m_test3 = z->l - z->c;
- { int ret = r_shortv(z);
+ if (z->c != ((SN_local *)z)->i_p1) return 0;
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_shortv(z);
if (ret <= 0) return ret;
}
- z->c = z->l - m_test3;
+ z->c = z->l - v_3;
}
- { int ret;
- { int saved_c = z->c;
- ret = insert_s(z, z->c, z->c, 1, s_4);
- z->c = saved_c;
- }
+ {
+ int saved_c = z->c;
+ int ret = insert_s(z, z->c, z->c, 1, s_4);
+ z->c = saved_c;
if (ret < 0) return ret;
}
break;
static int r_Step_1c(struct SN_env * z) {
z->ket = z->c;
- { int m1 = z->l - z->c; (void)m1;
- if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab1;
+ do {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'y') goto lab0;
z->c--;
- goto lab0;
- lab1:
- z->c = z->l - m1;
+ break;
+ lab0:
+ z->c = z->l - v_1;
if (z->c <= z->lb || z->p[z->c - 1] != 'Y') return 0;
z->c--;
- }
-lab0:
+ } while (0);
z->bra = z->c;
-
{
int ret = out_grouping_b(z, g_v, 97, 121, 1);
if (ret < 0) return 0;
z->c -= ret;
}
- { int ret = slice_from_s(z, 1, s_5);
+ {
+ int ret = slice_from_s(z, 1, s_5);
if (ret < 0) return ret;
}
return 1;
int among_var;
z->ket = z->c;
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((815616 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_3, 20);
+ among_var = find_among_b(z, a_3, 20, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 4, s_6);
+ {
+ int ret = slice_from_s(z, 4, s_6);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 4, s_7);
+ {
+ int ret = slice_from_s(z, 4, s_7);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 4, s_8);
+ {
+ int ret = slice_from_s(z, 4, s_8);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 4, s_9);
+ {
+ int ret = slice_from_s(z, 4, s_9);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 3, s_10);
+ {
+ int ret = slice_from_s(z, 3, s_10);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 1, s_11);
+ {
+ int ret = slice_from_s(z, 1, s_11);
if (ret < 0) return ret;
}
break;
case 7:
- { int ret = slice_from_s(z, 3, s_12);
+ {
+ int ret = slice_from_s(z, 3, s_12);
if (ret < 0) return ret;
}
break;
case 8:
- { int ret = slice_from_s(z, 3, s_13);
+ {
+ int ret = slice_from_s(z, 3, s_13);
if (ret < 0) return ret;
}
break;
case 9:
- { int ret = slice_from_s(z, 2, s_14);
+ {
+ int ret = slice_from_s(z, 2, s_14);
if (ret < 0) return ret;
}
break;
case 10:
- { int ret = slice_from_s(z, 3, s_15);
+ {
+ int ret = slice_from_s(z, 3, s_15);
if (ret < 0) return ret;
}
break;
case 11:
- { int ret = slice_from_s(z, 3, s_16);
+ {
+ int ret = slice_from_s(z, 3, s_16);
if (ret < 0) return ret;
}
break;
case 12:
- { int ret = slice_from_s(z, 3, s_17);
+ {
+ int ret = slice_from_s(z, 3, s_17);
if (ret < 0) return ret;
}
break;
case 13:
- { int ret = slice_from_s(z, 3, s_18);
+ {
+ int ret = slice_from_s(z, 3, s_18);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((528928 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_4, 7);
+ among_var = find_among_b(z, a_4, 7, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 2, s_19);
+ {
+ int ret = slice_from_s(z, 2, s_19);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 2, s_20);
+ {
+ int ret = slice_from_s(z, 2, s_20);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((3961384 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_5, 19);
+ among_var = find_among_b(z, a_5, 19, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int m1 = z->l - z->c; (void)m1;
- if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab1;
+ do {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 's') goto lab0;
z->c--;
- goto lab0;
- lab1:
- z->c = z->l - m1;
+ break;
+ lab0:
+ z->c = z->l - v_1;
if (z->c <= z->lb || z->p[z->c - 1] != 't') return 0;
z->c--;
- }
- lab0:
- { int ret = slice_del(z);
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
z->c--;
z->bra = z->c;
-
- { int ret = r_R2(z);
- if (ret == 0) goto lab1;
- if (ret < 0) return ret;
- }
- goto lab0;
-lab1:
- { int ret = r_R1(z);
- if (ret <= 0) return ret;
- }
- { int m1 = z->l - z->c; (void)m1;
- { int ret = r_shortv(z);
- if (ret == 0) goto lab2;
+ do {
+ {
+ int ret = r_R2(z);
+ if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- return 0;
- lab2:
- z->c = z->l - m1;
- }
-lab0:
- { int ret = slice_del(z);
+ break;
+ lab0:
+ {
+ int ret = r_R1(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int v_1 = z->l - z->c;
+ {
+ int ret = r_shortv(z);
+ if (ret == 0) goto lab1;
+ if (ret < 0) return ret;
+ }
+ return 0;
+ lab1:
+ z->c = z->l - v_1;
+ }
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
z->c--;
z->bra = z->c;
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
if (z->c <= z->lb || z->p[z->c - 1] != 'l') return 0;
z->c--;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
extern int porter_ISO_8859_1_stem(struct SN_env * z) {
- z->I[2] = 0;
- { int c1 = z->c;
+ int b_Y_found;
+ b_Y_found = 0;
+ {
+ int v_1 = z->c;
z->bra = z->c;
if (z->c == z->l || z->p[z->c] != 'y') goto lab0;
z->c++;
z->ket = z->c;
- { int ret = slice_from_s(z, 1, s_21);
+ {
+ int ret = slice_from_s(z, 1, s_21);
if (ret < 0) return ret;
}
- z->I[2] = 1;
+ b_Y_found = 1;
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int c2 = z->c;
- while(1) {
- int c3 = z->c;
- while(1) {
- int c4 = z->c;
+ {
+ int v_2 = z->c;
+ while (1) {
+ int v_3 = z->c;
+ while (1) {
+ int v_4 = z->c;
if (in_grouping(z, g_v, 97, 121, 0)) goto lab3;
z->bra = z->c;
if (z->c == z->l || z->p[z->c] != 'y') goto lab3;
z->c++;
z->ket = z->c;
- z->c = c4;
+ z->c = v_4;
break;
lab3:
- z->c = c4;
+ z->c = v_4;
if (z->c >= z->l) goto lab2;
z->c++;
}
- { int ret = slice_from_s(z, 1, s_22);
+ {
+ int ret = slice_from_s(z, 1, s_22);
if (ret < 0) return ret;
}
- z->I[2] = 1;
+ b_Y_found = 1;
continue;
lab2:
- z->c = c3;
+ z->c = v_3;
break;
}
- z->c = c2;
+ z->c = v_2;
}
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c5 = z->c;
-
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_5 = z->c;
{
int ret = out_grouping(z, g_v, 97, 121, 1);
if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 121, 1);
if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 121, 1);
if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 121, 1);
if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[0] = z->c;
+ ((SN_local *)z)->i_p2 = z->c;
lab4:
- z->c = c5;
+ z->c = v_5;
}
z->lb = z->c; z->c = z->l;
-
- { int m6 = z->l - z->c; (void)m6;
- { int ret = r_Step_1a(z);
+ {
+ int v_6 = z->l - z->c;
+ {
+ int ret = r_Step_1a(z);
if (ret < 0) return ret;
}
- z->c = z->l - m6;
+ z->c = z->l - v_6;
}
- { int m7 = z->l - z->c; (void)m7;
- { int ret = r_Step_1b(z);
+ {
+ int v_7 = z->l - z->c;
+ {
+ int ret = r_Step_1b(z);
if (ret < 0) return ret;
}
- z->c = z->l - m7;
+ z->c = z->l - v_7;
}
- { int m8 = z->l - z->c; (void)m8;
- { int ret = r_Step_1c(z);
+ {
+ int v_8 = z->l - z->c;
+ {
+ int ret = r_Step_1c(z);
if (ret < 0) return ret;
}
- z->c = z->l - m8;
+ z->c = z->l - v_8;
}
- { int m9 = z->l - z->c; (void)m9;
- { int ret = r_Step_2(z);
+ {
+ int v_9 = z->l - z->c;
+ {
+ int ret = r_Step_2(z);
if (ret < 0) return ret;
}
- z->c = z->l - m9;
+ z->c = z->l - v_9;
}
- { int m10 = z->l - z->c; (void)m10;
- { int ret = r_Step_3(z);
+ {
+ int v_10 = z->l - z->c;
+ {
+ int ret = r_Step_3(z);
if (ret < 0) return ret;
}
- z->c = z->l - m10;
+ z->c = z->l - v_10;
}
- { int m11 = z->l - z->c; (void)m11;
- { int ret = r_Step_4(z);
+ {
+ int v_11 = z->l - z->c;
+ {
+ int ret = r_Step_4(z);
if (ret < 0) return ret;
}
- z->c = z->l - m11;
+ z->c = z->l - v_11;
}
- { int m12 = z->l - z->c; (void)m12;
- { int ret = r_Step_5a(z);
+ {
+ int v_12 = z->l - z->c;
+ {
+ int ret = r_Step_5a(z);
if (ret < 0) return ret;
}
- z->c = z->l - m12;
+ z->c = z->l - v_12;
}
- { int m13 = z->l - z->c; (void)m13;
- { int ret = r_Step_5b(z);
+ {
+ int v_13 = z->l - z->c;
+ {
+ int ret = r_Step_5b(z);
if (ret < 0) return ret;
}
- z->c = z->l - m13;
+ z->c = z->l - v_13;
}
z->c = z->lb;
- { int c14 = z->c;
- if (!(z->I[2])) goto lab5;
- while(1) {
- int c15 = z->c;
- while(1) {
- int c16 = z->c;
+ {
+ int v_14 = z->c;
+ if (!b_Y_found) goto lab5;
+ while (1) {
+ int v_15 = z->c;
+ while (1) {
+ int v_16 = z->c;
z->bra = z->c;
if (z->c == z->l || z->p[z->c] != 'Y') goto lab7;
z->c++;
z->ket = z->c;
- z->c = c16;
+ z->c = v_16;
break;
lab7:
- z->c = c16;
+ z->c = v_16;
if (z->c >= z->l) goto lab6;
z->c++;
}
- { int ret = slice_from_s(z, 1, s_23);
+ {
+ int ret = slice_from_s(z, 1, s_23);
if (ret < 0) return ret;
}
continue;
lab6:
- z->c = c15;
+ z->c = v_15;
break;
}
lab5:
- z->c = c14;
+ z->c = v_14;
}
return 1;
}
-extern struct SN_env * porter_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * porter_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ }
+ return z;
+}
-extern void porter_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void porter_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from portuguese.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_portuguese.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ int i_pV;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_residual_form(struct SN_env * z);
static int r_residual_suffix(struct SN_env * z);
static int r_verb_suffix(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
static int r_postlude(struct SN_env * z);
static int r_prelude(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * portuguese_ISO_8859_1_create_env(void);
-extern void portuguese_ISO_8859_1_close_env(struct SN_env * z);
+static const symbol s_0[] = { 'a', '~' };
+static const symbol s_1[] = { 'o', '~' };
+static const symbol s_2[] = { 0xE3 };
+static const symbol s_3[] = { 0xF5 };
+static const symbol s_4[] = { 'l', 'o', 'g' };
+static const symbol s_5[] = { 'u' };
+static const symbol s_6[] = { 'e', 'n', 't', 'e' };
+static const symbol s_7[] = { 'a', 't' };
+static const symbol s_8[] = { 'a', 't' };
+static const symbol s_9[] = { 'i', 'r' };
+static const symbol s_10[] = { 'c' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_1[1] = { 0xE3 };
static const symbol s_0_2[1] = { 0xF5 };
-
-static const struct among a_0[3] =
-{
-{ 0, 0, -1, 3, 0},
-{ 1, s_0_1, 0, 1, 0},
-{ 1, s_0_2, 0, 2, 0}
+static const struct among a_0[3] = {
+{ 0, 0, 0, 3, 0},
+{ 1, s_0_1, -1, 1, 0},
+{ 1, s_0_2, -2, 2, 0}
};
static const symbol s_1_1[2] = { 'a', '~' };
static const symbol s_1_2[2] = { 'o', '~' };
-
-static const struct among a_1[3] =
-{
-{ 0, 0, -1, 3, 0},
-{ 2, s_1_1, 0, 1, 0},
-{ 2, s_1_2, 0, 2, 0}
+static const struct among a_1[3] = {
+{ 0, 0, 0, 3, 0},
+{ 2, s_1_1, -1, 1, 0},
+{ 2, s_1_2, -2, 2, 0}
};
static const symbol s_2_0[2] = { 'i', 'c' };
static const symbol s_2_1[2] = { 'a', 'd' };
static const symbol s_2_2[2] = { 'o', 's' };
static const symbol s_2_3[2] = { 'i', 'v' };
-
-static const struct among a_2[4] =
-{
-{ 2, s_2_0, -1, -1, 0},
-{ 2, s_2_1, -1, -1, 0},
-{ 2, s_2_2, -1, -1, 0},
-{ 2, s_2_3, -1, 1, 0}
+static const struct among a_2[4] = {
+{ 2, s_2_0, 0, -1, 0},
+{ 2, s_2_1, 0, -1, 0},
+{ 2, s_2_2, 0, -1, 0},
+{ 2, s_2_3, 0, 1, 0}
};
static const symbol s_3_0[4] = { 'a', 'n', 't', 'e' };
static const symbol s_3_1[4] = { 'a', 'v', 'e', 'l' };
static const symbol s_3_2[4] = { 0xED, 'v', 'e', 'l' };
-
-static const struct among a_3[3] =
-{
-{ 4, s_3_0, -1, 1, 0},
-{ 4, s_3_1, -1, 1, 0},
-{ 4, s_3_2, -1, 1, 0}
+static const struct among a_3[3] = {
+{ 4, s_3_0, 0, 1, 0},
+{ 4, s_3_1, 0, 1, 0},
+{ 4, s_3_2, 0, 1, 0}
};
static const symbol s_4_0[2] = { 'i', 'c' };
static const symbol s_4_1[4] = { 'a', 'b', 'i', 'l' };
static const symbol s_4_2[2] = { 'i', 'v' };
-
-static const struct among a_4[3] =
-{
-{ 2, s_4_0, -1, 1, 0},
-{ 4, s_4_1, -1, 1, 0},
-{ 2, s_4_2, -1, 1, 0}
+static const struct among a_4[3] = {
+{ 2, s_4_0, 0, 1, 0},
+{ 4, s_4_1, 0, 1, 0},
+{ 2, s_4_2, 0, 1, 0}
};
static const symbol s_5_0[3] = { 'i', 'c', 'a' };
static const symbol s_5_42[7] = { 'a', 'm', 'e', 'n', 't', 'o', 's' };
static const symbol s_5_43[7] = { 'i', 'm', 'e', 'n', 't', 'o', 's' };
static const symbol s_5_44[4] = { 'i', 'v', 'o', 's' };
-
-static const struct among a_5[45] =
-{
-{ 3, s_5_0, -1, 1, 0},
-{ 5, s_5_1, -1, 1, 0},
-{ 5, s_5_2, -1, 4, 0},
-{ 5, s_5_3, -1, 2, 0},
-{ 3, s_5_4, -1, 9, 0},
-{ 5, s_5_5, -1, 1, 0},
-{ 3, s_5_6, -1, 1, 0},
-{ 4, s_5_7, -1, 1, 0},
-{ 3, s_5_8, -1, 8, 0},
-{ 3, s_5_9, -1, 1, 0},
-{ 5, s_5_10, -1, 7, 0},
-{ 4, s_5_11, -1, 1, 0},
-{ 5, s_5_12, -1, 6, 0},
-{ 6, s_5_13, 12, 5, 0},
-{ 4, s_5_14, -1, 1, 0},
-{ 4, s_5_15, -1, 1, 0},
-{ 3, s_5_16, -1, 1, 0},
-{ 4, s_5_17, -1, 1, 0},
-{ 3, s_5_18, -1, 1, 0},
-{ 6, s_5_19, -1, 1, 0},
-{ 6, s_5_20, -1, 1, 0},
-{ 3, s_5_21, -1, 8, 0},
-{ 5, s_5_22, -1, 1, 0},
-{ 5, s_5_23, -1, 3, 0},
-{ 4, s_5_24, -1, 1, 0},
-{ 4, s_5_25, -1, 1, 0},
-{ 6, s_5_26, -1, 4, 0},
-{ 6, s_5_27, -1, 2, 0},
-{ 4, s_5_28, -1, 9, 0},
-{ 6, s_5_29, -1, 1, 0},
-{ 4, s_5_30, -1, 1, 0},
-{ 5, s_5_31, -1, 1, 0},
-{ 4, s_5_32, -1, 8, 0},
-{ 4, s_5_33, -1, 1, 0},
-{ 6, s_5_34, -1, 7, 0},
-{ 6, s_5_35, -1, 1, 0},
-{ 5, s_5_36, -1, 1, 0},
-{ 6, s_5_37, -1, 1, 0},
-{ 6, s_5_38, -1, 3, 0},
-{ 4, s_5_39, -1, 1, 0},
-{ 5, s_5_40, -1, 1, 0},
-{ 4, s_5_41, -1, 1, 0},
-{ 7, s_5_42, -1, 1, 0},
-{ 7, s_5_43, -1, 1, 0},
-{ 4, s_5_44, -1, 8, 0}
+static const struct among a_5[45] = {
+{ 3, s_5_0, 0, 1, 0},
+{ 5, s_5_1, 0, 1, 0},
+{ 5, s_5_2, 0, 4, 0},
+{ 5, s_5_3, 0, 2, 0},
+{ 3, s_5_4, 0, 9, 0},
+{ 5, s_5_5, 0, 1, 0},
+{ 3, s_5_6, 0, 1, 0},
+{ 4, s_5_7, 0, 1, 0},
+{ 3, s_5_8, 0, 8, 0},
+{ 3, s_5_9, 0, 1, 0},
+{ 5, s_5_10, 0, 7, 0},
+{ 4, s_5_11, 0, 1, 0},
+{ 5, s_5_12, 0, 6, 0},
+{ 6, s_5_13, -1, 5, 0},
+{ 4, s_5_14, 0, 1, 0},
+{ 4, s_5_15, 0, 1, 0},
+{ 3, s_5_16, 0, 1, 0},
+{ 4, s_5_17, 0, 1, 0},
+{ 3, s_5_18, 0, 1, 0},
+{ 6, s_5_19, 0, 1, 0},
+{ 6, s_5_20, 0, 1, 0},
+{ 3, s_5_21, 0, 8, 0},
+{ 5, s_5_22, 0, 1, 0},
+{ 5, s_5_23, 0, 3, 0},
+{ 4, s_5_24, 0, 1, 0},
+{ 4, s_5_25, 0, 1, 0},
+{ 6, s_5_26, 0, 4, 0},
+{ 6, s_5_27, 0, 2, 0},
+{ 4, s_5_28, 0, 9, 0},
+{ 6, s_5_29, 0, 1, 0},
+{ 4, s_5_30, 0, 1, 0},
+{ 5, s_5_31, 0, 1, 0},
+{ 4, s_5_32, 0, 8, 0},
+{ 4, s_5_33, 0, 1, 0},
+{ 6, s_5_34, 0, 7, 0},
+{ 6, s_5_35, 0, 1, 0},
+{ 5, s_5_36, 0, 1, 0},
+{ 6, s_5_37, 0, 1, 0},
+{ 6, s_5_38, 0, 3, 0},
+{ 4, s_5_39, 0, 1, 0},
+{ 5, s_5_40, 0, 1, 0},
+{ 4, s_5_41, 0, 1, 0},
+{ 7, s_5_42, 0, 1, 0},
+{ 7, s_5_43, 0, 1, 0},
+{ 4, s_5_44, 0, 8, 0}
};
static const symbol s_6_0[3] = { 'a', 'd', 'a' };
static const symbol s_6_117[3] = { 'a', 'r', 0xE1 };
static const symbol s_6_118[3] = { 'e', 'r', 0xE1 };
static const symbol s_6_119[3] = { 'i', 'r', 0xE1 };
-
-static const struct among a_6[120] =
-{
-{ 3, s_6_0, -1, 1, 0},
-{ 3, s_6_1, -1, 1, 0},
-{ 2, s_6_2, -1, 1, 0},
-{ 4, s_6_3, 2, 1, 0},
-{ 4, s_6_4, 2, 1, 0},
-{ 4, s_6_5, 2, 1, 0},
-{ 3, s_6_6, -1, 1, 0},
-{ 3, s_6_7, -1, 1, 0},
-{ 3, s_6_8, -1, 1, 0},
-{ 3, s_6_9, -1, 1, 0},
-{ 4, s_6_10, -1, 1, 0},
-{ 4, s_6_11, -1, 1, 0},
-{ 4, s_6_12, -1, 1, 0},
-{ 4, s_6_13, -1, 1, 0},
-{ 4, s_6_14, -1, 1, 0},
-{ 4, s_6_15, -1, 1, 0},
-{ 2, s_6_16, -1, 1, 0},
-{ 4, s_6_17, 16, 1, 0},
-{ 4, s_6_18, 16, 1, 0},
-{ 4, s_6_19, 16, 1, 0},
-{ 2, s_6_20, -1, 1, 0},
-{ 3, s_6_21, 20, 1, 0},
-{ 5, s_6_22, 21, 1, 0},
-{ 5, s_6_23, 21, 1, 0},
-{ 5, s_6_24, 21, 1, 0},
-{ 4, s_6_25, 20, 1, 0},
-{ 4, s_6_26, 20, 1, 0},
-{ 4, s_6_27, 20, 1, 0},
-{ 4, s_6_28, 20, 1, 0},
-{ 2, s_6_29, -1, 1, 0},
-{ 4, s_6_30, 29, 1, 0},
-{ 4, s_6_31, 29, 1, 0},
-{ 4, s_6_32, 29, 1, 0},
-{ 5, s_6_33, 29, 1, 0},
-{ 5, s_6_34, 29, 1, 0},
-{ 5, s_6_35, 29, 1, 0},
-{ 3, s_6_36, -1, 1, 0},
-{ 3, s_6_37, -1, 1, 0},
-{ 4, s_6_38, -1, 1, 0},
-{ 4, s_6_39, -1, 1, 0},
-{ 4, s_6_40, -1, 1, 0},
-{ 5, s_6_41, -1, 1, 0},
-{ 5, s_6_42, -1, 1, 0},
-{ 5, s_6_43, -1, 1, 0},
-{ 2, s_6_44, -1, 1, 0},
-{ 2, s_6_45, -1, 1, 0},
-{ 2, s_6_46, -1, 1, 0},
-{ 2, s_6_47, -1, 1, 0},
-{ 4, s_6_48, 47, 1, 0},
-{ 4, s_6_49, 47, 1, 0},
-{ 3, s_6_50, 47, 1, 0},
-{ 5, s_6_51, 50, 1, 0},
-{ 5, s_6_52, 50, 1, 0},
-{ 5, s_6_53, 50, 1, 0},
-{ 4, s_6_54, 47, 1, 0},
-{ 4, s_6_55, 47, 1, 0},
-{ 4, s_6_56, 47, 1, 0},
-{ 4, s_6_57, 47, 1, 0},
-{ 2, s_6_58, -1, 1, 0},
-{ 5, s_6_59, 58, 1, 0},
-{ 5, s_6_60, 58, 1, 0},
-{ 5, s_6_61, 58, 1, 0},
-{ 4, s_6_62, 58, 1, 0},
-{ 4, s_6_63, 58, 1, 0},
-{ 4, s_6_64, 58, 1, 0},
-{ 5, s_6_65, 58, 1, 0},
-{ 5, s_6_66, 58, 1, 0},
-{ 5, s_6_67, 58, 1, 0},
-{ 5, s_6_68, 58, 1, 0},
-{ 5, s_6_69, 58, 1, 0},
-{ 5, s_6_70, 58, 1, 0},
-{ 2, s_6_71, -1, 1, 0},
-{ 3, s_6_72, 71, 1, 0},
-{ 3, s_6_73, 71, 1, 0},
-{ 5, s_6_74, 73, 1, 0},
-{ 5, s_6_75, 73, 1, 0},
-{ 5, s_6_76, 73, 1, 0},
-{ 5, s_6_77, 73, 1, 0},
-{ 5, s_6_78, 73, 1, 0},
-{ 5, s_6_79, 73, 1, 0},
-{ 6, s_6_80, 73, 1, 0},
-{ 6, s_6_81, 73, 1, 0},
-{ 6, s_6_82, 73, 1, 0},
-{ 5, s_6_83, 73, 1, 0},
-{ 4, s_6_84, 73, 1, 0},
-{ 6, s_6_85, 84, 1, 0},
-{ 6, s_6_86, 84, 1, 0},
-{ 6, s_6_87, 84, 1, 0},
-{ 4, s_6_88, -1, 1, 0},
-{ 4, s_6_89, -1, 1, 0},
-{ 4, s_6_90, -1, 1, 0},
-{ 6, s_6_91, 90, 1, 0},
-{ 6, s_6_92, 90, 1, 0},
-{ 6, s_6_93, 90, 1, 0},
-{ 6, s_6_94, 90, 1, 0},
-{ 5, s_6_95, 90, 1, 0},
-{ 7, s_6_96, 95, 1, 0},
-{ 7, s_6_97, 95, 1, 0},
-{ 7, s_6_98, 95, 1, 0},
-{ 4, s_6_99, -1, 1, 0},
-{ 6, s_6_100, 99, 1, 0},
-{ 6, s_6_101, 99, 1, 0},
-{ 6, s_6_102, 99, 1, 0},
-{ 7, s_6_103, 99, 1, 0},
-{ 7, s_6_104, 99, 1, 0},
-{ 7, s_6_105, 99, 1, 0},
-{ 4, s_6_106, -1, 1, 0},
-{ 5, s_6_107, -1, 1, 0},
-{ 5, s_6_108, -1, 1, 0},
-{ 5, s_6_109, -1, 1, 0},
-{ 4, s_6_110, -1, 1, 0},
-{ 4, s_6_111, -1, 1, 0},
-{ 4, s_6_112, -1, 1, 0},
-{ 4, s_6_113, -1, 1, 0},
-{ 2, s_6_114, -1, 1, 0},
-{ 2, s_6_115, -1, 1, 0},
-{ 2, s_6_116, -1, 1, 0},
-{ 3, s_6_117, -1, 1, 0},
-{ 3, s_6_118, -1, 1, 0},
-{ 3, s_6_119, -1, 1, 0}
+static const struct among a_6[120] = {
+{ 3, s_6_0, 0, 1, 0},
+{ 3, s_6_1, 0, 1, 0},
+{ 2, s_6_2, 0, 1, 0},
+{ 4, s_6_3, -1, 1, 0},
+{ 4, s_6_4, -2, 1, 0},
+{ 4, s_6_5, -3, 1, 0},
+{ 3, s_6_6, 0, 1, 0},
+{ 3, s_6_7, 0, 1, 0},
+{ 3, s_6_8, 0, 1, 0},
+{ 3, s_6_9, 0, 1, 0},
+{ 4, s_6_10, 0, 1, 0},
+{ 4, s_6_11, 0, 1, 0},
+{ 4, s_6_12, 0, 1, 0},
+{ 4, s_6_13, 0, 1, 0},
+{ 4, s_6_14, 0, 1, 0},
+{ 4, s_6_15, 0, 1, 0},
+{ 2, s_6_16, 0, 1, 0},
+{ 4, s_6_17, -1, 1, 0},
+{ 4, s_6_18, -2, 1, 0},
+{ 4, s_6_19, -3, 1, 0},
+{ 2, s_6_20, 0, 1, 0},
+{ 3, s_6_21, -1, 1, 0},
+{ 5, s_6_22, -1, 1, 0},
+{ 5, s_6_23, -2, 1, 0},
+{ 5, s_6_24, -3, 1, 0},
+{ 4, s_6_25, -5, 1, 0},
+{ 4, s_6_26, -6, 1, 0},
+{ 4, s_6_27, -7, 1, 0},
+{ 4, s_6_28, -8, 1, 0},
+{ 2, s_6_29, 0, 1, 0},
+{ 4, s_6_30, -1, 1, 0},
+{ 4, s_6_31, -2, 1, 0},
+{ 4, s_6_32, -3, 1, 0},
+{ 5, s_6_33, -4, 1, 0},
+{ 5, s_6_34, -5, 1, 0},
+{ 5, s_6_35, -6, 1, 0},
+{ 3, s_6_36, 0, 1, 0},
+{ 3, s_6_37, 0, 1, 0},
+{ 4, s_6_38, 0, 1, 0},
+{ 4, s_6_39, 0, 1, 0},
+{ 4, s_6_40, 0, 1, 0},
+{ 5, s_6_41, 0, 1, 0},
+{ 5, s_6_42, 0, 1, 0},
+{ 5, s_6_43, 0, 1, 0},
+{ 2, s_6_44, 0, 1, 0},
+{ 2, s_6_45, 0, 1, 0},
+{ 2, s_6_46, 0, 1, 0},
+{ 2, s_6_47, 0, 1, 0},
+{ 4, s_6_48, -1, 1, 0},
+{ 4, s_6_49, -2, 1, 0},
+{ 3, s_6_50, -3, 1, 0},
+{ 5, s_6_51, -1, 1, 0},
+{ 5, s_6_52, -2, 1, 0},
+{ 5, s_6_53, -3, 1, 0},
+{ 4, s_6_54, -7, 1, 0},
+{ 4, s_6_55, -8, 1, 0},
+{ 4, s_6_56, -9, 1, 0},
+{ 4, s_6_57, -10, 1, 0},
+{ 2, s_6_58, 0, 1, 0},
+{ 5, s_6_59, -1, 1, 0},
+{ 5, s_6_60, -2, 1, 0},
+{ 5, s_6_61, -3, 1, 0},
+{ 4, s_6_62, -4, 1, 0},
+{ 4, s_6_63, -5, 1, 0},
+{ 4, s_6_64, -6, 1, 0},
+{ 5, s_6_65, -7, 1, 0},
+{ 5, s_6_66, -8, 1, 0},
+{ 5, s_6_67, -9, 1, 0},
+{ 5, s_6_68, -10, 1, 0},
+{ 5, s_6_69, -11, 1, 0},
+{ 5, s_6_70, -12, 1, 0},
+{ 2, s_6_71, 0, 1, 0},
+{ 3, s_6_72, -1, 1, 0},
+{ 3, s_6_73, -2, 1, 0},
+{ 5, s_6_74, -1, 1, 0},
+{ 5, s_6_75, -2, 1, 0},
+{ 5, s_6_76, -3, 1, 0},
+{ 5, s_6_77, -4, 1, 0},
+{ 5, s_6_78, -5, 1, 0},
+{ 5, s_6_79, -6, 1, 0},
+{ 6, s_6_80, -7, 1, 0},
+{ 6, s_6_81, -8, 1, 0},
+{ 6, s_6_82, -9, 1, 0},
+{ 5, s_6_83, -10, 1, 0},
+{ 4, s_6_84, -11, 1, 0},
+{ 6, s_6_85, -1, 1, 0},
+{ 6, s_6_86, -2, 1, 0},
+{ 6, s_6_87, -3, 1, 0},
+{ 4, s_6_88, 0, 1, 0},
+{ 4, s_6_89, 0, 1, 0},
+{ 4, s_6_90, 0, 1, 0},
+{ 6, s_6_91, -1, 1, 0},
+{ 6, s_6_92, -2, 1, 0},
+{ 6, s_6_93, -3, 1, 0},
+{ 6, s_6_94, -4, 1, 0},
+{ 5, s_6_95, -5, 1, 0},
+{ 7, s_6_96, -1, 1, 0},
+{ 7, s_6_97, -2, 1, 0},
+{ 7, s_6_98, -3, 1, 0},
+{ 4, s_6_99, 0, 1, 0},
+{ 6, s_6_100, -1, 1, 0},
+{ 6, s_6_101, -2, 1, 0},
+{ 6, s_6_102, -3, 1, 0},
+{ 7, s_6_103, -4, 1, 0},
+{ 7, s_6_104, -5, 1, 0},
+{ 7, s_6_105, -6, 1, 0},
+{ 4, s_6_106, 0, 1, 0},
+{ 5, s_6_107, 0, 1, 0},
+{ 5, s_6_108, 0, 1, 0},
+{ 5, s_6_109, 0, 1, 0},
+{ 4, s_6_110, 0, 1, 0},
+{ 4, s_6_111, 0, 1, 0},
+{ 4, s_6_112, 0, 1, 0},
+{ 4, s_6_113, 0, 1, 0},
+{ 2, s_6_114, 0, 1, 0},
+{ 2, s_6_115, 0, 1, 0},
+{ 2, s_6_116, 0, 1, 0},
+{ 3, s_6_117, 0, 1, 0},
+{ 3, s_6_118, 0, 1, 0},
+{ 3, s_6_119, 0, 1, 0}
};
static const symbol s_7_0[1] = { 'a' };
static const symbol s_7_4[1] = { 0xE1 };
static const symbol s_7_5[1] = { 0xED };
static const symbol s_7_6[1] = { 0xF3 };
-
-static const struct among a_7[7] =
-{
-{ 1, s_7_0, -1, 1, 0},
-{ 1, s_7_1, -1, 1, 0},
-{ 1, s_7_2, -1, 1, 0},
-{ 2, s_7_3, -1, 1, 0},
-{ 1, s_7_4, -1, 1, 0},
-{ 1, s_7_5, -1, 1, 0},
-{ 1, s_7_6, -1, 1, 0}
+static const struct among a_7[7] = {
+{ 1, s_7_0, 0, 1, 0},
+{ 1, s_7_1, 0, 1, 0},
+{ 1, s_7_2, 0, 1, 0},
+{ 2, s_7_3, 0, 1, 0},
+{ 1, s_7_4, 0, 1, 0},
+{ 1, s_7_5, 0, 1, 0},
+{ 1, s_7_6, 0, 1, 0}
};
static const symbol s_8_0[1] = { 'e' };
static const symbol s_8_1[1] = { 0xE7 };
static const symbol s_8_2[1] = { 0xE9 };
static const symbol s_8_3[1] = { 0xEA };
-
-static const struct among a_8[4] =
-{
-{ 1, s_8_0, -1, 1, 0},
-{ 1, s_8_1, -1, 2, 0},
-{ 1, s_8_2, -1, 1, 0},
-{ 1, s_8_3, -1, 1, 0}
+static const struct among a_8[4] = {
+{ 1, s_8_0, 0, 1, 0},
+{ 1, s_8_1, 0, 2, 0},
+{ 1, s_8_2, 0, 1, 0},
+{ 1, s_8_3, 0, 1, 0}
};
static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 19, 12, 2 };
-static const symbol s_0[] = { 'a', '~' };
-static const symbol s_1[] = { 'o', '~' };
-static const symbol s_2[] = { 0xE3 };
-static const symbol s_3[] = { 0xF5 };
-static const symbol s_4[] = { 'l', 'o', 'g' };
-static const symbol s_5[] = { 'u' };
-static const symbol s_6[] = { 'e', 'n', 't', 'e' };
-static const symbol s_7[] = { 'a', 't' };
-static const symbol s_8[] = { 'a', 't' };
-static const symbol s_9[] = { 'i', 'r' };
-static const symbol s_10[] = { 'c' };
-
static int r_prelude(struct SN_env * z) {
int among_var;
- while(1) {
- int c1 = z->c;
+ while (1) {
+ int v_1 = z->c;
z->bra = z->c;
if (z->c >= z->l || (z->p[z->c + 0] != 227 && z->p[z->c + 0] != 245)) among_var = 3; else
- among_var = find_among(z, a_0, 3);
+ among_var = find_among(z, a_0, 3, 0);
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 2, s_0);
+ {
+ int ret = slice_from_s(z, 2, s_0);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 2, s_1);
+ {
+ int ret = slice_from_s(z, 2, s_1);
if (ret < 0) return ret;
}
break;
}
continue;
lab0:
- z->c = c1;
+ z->c = v_1;
break;
}
return 1;
}
static int r_mark_regions(struct SN_env * z) {
- z->I[2] = z->l;
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
- { int c2 = z->c;
- if (in_grouping(z, g_v, 97, 250, 0)) goto lab2;
- { int c3 = z->c;
- if (out_grouping(z, g_v, 97, 250, 0)) goto lab4;
-
+ ((SN_local *)z)->i_pV = z->l;
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ do {
+ int v_2 = z->c;
+ if (in_grouping(z, g_v, 97, 250, 0)) goto lab1;
+ do {
+ int v_3 = z->c;
+ if (out_grouping(z, g_v, 97, 250, 0)) goto lab2;
{
int ret = out_grouping(z, g_v, 97, 250, 1);
- if (ret < 0) goto lab4;
+ if (ret < 0) goto lab2;
z->c += ret;
}
- goto lab3;
- lab4:
- z->c = c3;
- if (in_grouping(z, g_v, 97, 250, 0)) goto lab2;
-
+ break;
+ lab2:
+ z->c = v_3;
+ if (in_grouping(z, g_v, 97, 250, 0)) goto lab1;
{
int ret = in_grouping(z, g_v, 97, 250, 1);
- if (ret < 0) goto lab2;
+ if (ret < 0) goto lab1;
z->c += ret;
}
- }
- lab3:
- goto lab1;
- lab2:
- z->c = c2;
+ } while (0);
+ break;
+ lab1:
+ z->c = v_2;
if (out_grouping(z, g_v, 97, 250, 0)) goto lab0;
- { int c4 = z->c;
- if (out_grouping(z, g_v, 97, 250, 0)) goto lab6;
-
+ do {
+ int v_4 = z->c;
+ if (out_grouping(z, g_v, 97, 250, 0)) goto lab3;
{
int ret = out_grouping(z, g_v, 97, 250, 1);
- if (ret < 0) goto lab6;
+ if (ret < 0) goto lab3;
z->c += ret;
}
- goto lab5;
- lab6:
- z->c = c4;
+ break;
+ lab3:
+ z->c = v_4;
if (in_grouping(z, g_v, 97, 250, 0)) goto lab0;
if (z->c >= z->l) goto lab0;
z->c++;
- }
- lab5:
- ;
- }
- lab1:
- z->I[2] = z->c;
+ } while (0);
+ } while (0);
+ ((SN_local *)z)->i_pV = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int c5 = z->c;
-
+ {
+ int v_5 = z->c;
{
int ret = out_grouping(z, g_v, 97, 250, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 250, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 250, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 250, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[0] = z->c;
- lab7:
- z->c = c5;
+ ((SN_local *)z)->i_p2 = z->c;
+ lab4:
+ z->c = v_5;
}
return 1;
}
static int r_postlude(struct SN_env * z) {
int among_var;
- while(1) {
- int c1 = z->c;
+ while (1) {
+ int v_1 = z->c;
z->bra = z->c;
if (z->c + 1 >= z->l || z->p[z->c + 1] != 126) among_var = 3; else
- among_var = find_among(z, a_1, 3);
+ among_var = find_among(z, a_1, 3, 0);
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_2);
+ {
+ int ret = slice_from_s(z, 1, s_2);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_3);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
}
continue;
lab0:
- z->c = c1;
+ z->c = v_1;
break;
}
return 1;
}
static int r_RV(struct SN_env * z) {
- return z->I[2] <= z->c;
+ return ((SN_local *)z)->i_pV <= z->c;
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_standard_suffix(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((823330 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_5, 45);
+ among_var = find_among_b(z, a_5, 45, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_4);
+ {
+ int ret = slice_from_s(z, 3, s_4);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 1, s_5);
+ {
+ int ret = slice_from_s(z, 1, s_5);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 4, s_6);
+ {
+ int ret = slice_from_s(z, 4, s_6);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718616 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m1; goto lab0; }
- among_var = find_among_b(z, a_2, 4);
- if (!among_var) { z->c = z->l - m1; goto lab0; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718616 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_1; goto lab0; }
+ among_var = find_among_b(z, a_2, 4, 0);
+ if (!among_var) { z->c = z->l - v_1; goto lab0; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m1; goto lab0; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_1; goto lab0; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
switch (among_var) {
case 1:
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_7))) { z->c = z->l - m1; goto lab0; }
+ if (!(eq_s_b(z, 2, s_7))) { z->c = z->l - v_1; goto lab0; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m1; goto lab0; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_1; goto lab0; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
break;
case 6:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m2 = z->l - z->c; (void)m2;
+ {
+ int v_2 = z->l - z->c;
z->ket = z->c;
- if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 101 && z->p[z->c - 1] != 108)) { z->c = z->l - m2; goto lab1; }
- if (!find_among_b(z, a_3, 3)) { z->c = z->l - m2; goto lab1; }
+ if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 101 && z->p[z->c - 1] != 108)) { z->c = z->l - v_2; goto lab1; }
+ if (!find_among_b(z, a_3, 3, 0)) { z->c = z->l - v_2; goto lab1; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m2; goto lab1; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_2; goto lab1; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab1:
}
break;
case 7:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m3 = z->l - z->c; (void)m3;
+ {
+ int v_3 = z->l - z->c;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m3; goto lab2; }
- if (!find_among_b(z, a_4, 3)) { z->c = z->l - m3; goto lab2; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_3; goto lab2; }
+ if (!find_among_b(z, a_4, 3, 0)) { z->c = z->l - v_3; goto lab2; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m3; goto lab2; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_3; goto lab2; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab2:
}
break;
case 8:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m4 = z->l - z->c; (void)m4;
+ {
+ int v_4 = z->l - z->c;
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_8))) { z->c = z->l - m4; goto lab3; }
+ if (!(eq_s_b(z, 2, s_8))) { z->c = z->l - v_4; goto lab3; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m4; goto lab3; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_4; goto lab3; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab3:
}
break;
case 9:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
if (z->c <= z->lb || z->p[z->c - 1] != 'e') return 0;
z->c--;
- { int ret = slice_from_s(z, 2, s_9);
+ {
+ int ret = slice_from_s(z, 2, s_9);
if (ret < 0) return ret;
}
break;
}
static int r_verb_suffix(struct SN_env * z) {
-
- { int mlimit1;
- if (z->c < z->I[2]) return 0;
- mlimit1 = z->lb; z->lb = z->I[2];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_pV) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
z->ket = z->c;
- if (!find_among_b(z, a_6, 120)) { z->lb = mlimit1; return 0; }
+ if (!find_among_b(z, a_6, 120, 0)) { z->lb = v_1; return 0; }
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- z->lb = mlimit1;
+ z->lb = v_1;
}
return 1;
}
static int r_residual_suffix(struct SN_env * z) {
z->ket = z->c;
- if (!find_among_b(z, a_7, 7)) return 0;
+ if (!find_among_b(z, a_7, 7, 0)) return 0;
z->bra = z->c;
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_residual_form(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_8, 4);
+ among_var = find_among_b(z, a_8, 4, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
z->ket = z->c;
- { int m1 = z->l - z->c; (void)m1;
- if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab1;
+ do {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'u') goto lab0;
z->c--;
z->bra = z->c;
- { int m_test2 = z->l - z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'g') goto lab1;
+ {
+ int v_2 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'g') goto lab0;
z->c--;
- z->c = z->l - m_test2;
+ z->c = z->l - v_2;
}
- goto lab0;
- lab1:
- z->c = z->l - m1;
+ break;
+ lab0:
+ z->c = z->l - v_1;
if (z->c <= z->lb || z->p[z->c - 1] != 'i') return 0;
z->c--;
z->bra = z->c;
- { int m_test3 = z->l - z->c;
+ {
+ int v_3 = z->l - z->c;
if (z->c <= z->lb || z->p[z->c - 1] != 'c') return 0;
z->c--;
- z->c = z->l - m_test3;
+ z->c = z->l - v_3;
}
- }
- lab0:
- { int ret = r_RV(z);
+ } while (0);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_10);
+ {
+ int ret = slice_from_s(z, 1, s_10);
if (ret < 0) return ret;
}
break;
}
extern int portuguese_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_prelude(z);
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_prelude(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
- { int m2 = z->l - z->c; (void)m2;
- { int m3 = z->l - z->c; (void)m3;
- { int m4 = z->l - z->c; (void)m4;
- { int m5 = z->l - z->c; (void)m5;
- { int ret = r_standard_suffix(z);
- if (ret == 0) goto lab4;
+ {
+ int v_2 = z->l - z->c;
+ do {
+ int v_3 = z->l - z->c;
+ {
+ int v_4 = z->l - z->c;
+ do {
+ int v_5 = z->l - z->c;
+ {
+ int ret = r_standard_suffix(z);
+ if (ret == 0) goto lab2;
if (ret < 0) return ret;
}
- goto lab3;
- lab4:
- z->c = z->l - m5;
- { int ret = r_verb_suffix(z);
- if (ret == 0) goto lab2;
+ break;
+ lab2:
+ z->c = z->l - v_5;
+ {
+ int ret = r_verb_suffix(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- }
- lab3:
- z->c = z->l - m4;
- { int m6 = z->l - z->c; (void)m6;
+ } while (0);
+ z->c = z->l - v_4;
+ {
+ int v_6 = z->l - z->c;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab5;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'i') goto lab3;
z->c--;
z->bra = z->c;
- { int m_test7 = z->l - z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab5;
+ {
+ int v_7 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'c') goto lab3;
z->c--;
- z->c = z->l - m_test7;
+ z->c = z->l - v_7;
}
- { int ret = r_RV(z);
- if (ret == 0) goto lab5;
+ {
+ int ret = r_RV(z);
+ if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- lab5:
- z->c = z->l - m6;
+ lab3:
+ z->c = z->l - v_6;
}
}
- goto lab1;
- lab2:
- z->c = z->l - m3;
- { int ret = r_residual_suffix(z);
+ break;
+ lab1:
+ z->c = z->l - v_3;
+ {
+ int ret = r_residual_suffix(z);
if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- }
- lab1:
+ } while (0);
lab0:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m8 = z->l - z->c; (void)m8;
- { int ret = r_residual_form(z);
+ {
+ int v_8 = z->l - z->c;
+ {
+ int ret = r_residual_form(z);
if (ret < 0) return ret;
}
- z->c = z->l - m8;
+ z->c = z->l - v_8;
}
z->c = z->lb;
- { int c9 = z->c;
- { int ret = r_postlude(z);
+ {
+ int v_9 = z->c;
+ {
+ int ret = r_postlude(z);
if (ret < 0) return ret;
}
- z->c = c9;
+ z->c = v_9;
}
return 1;
}
-extern struct SN_env * portuguese_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * portuguese_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->i_pV = 0;
+ }
+ return z;
+}
-extern void portuguese_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void portuguese_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from spanish.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_spanish.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ int i_pV;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_residual_suffix(struct SN_env * z);
static int r_verb_suffix(struct SN_env * z);
static int r_y_verb_suffix(struct SN_env * z);
static int r_RV(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
static int r_postlude(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * spanish_ISO_8859_1_create_env(void);
-extern void spanish_ISO_8859_1_close_env(struct SN_env * z);
+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[] = { 'i', 'e', 'n', 'd', 'o' };
+static const symbol s_6[] = { 'a', 'n', 'd', 'o' };
+static const symbol s_7[] = { 'a', 'r' };
+static const symbol s_8[] = { 'e', 'r' };
+static const symbol s_9[] = { 'i', 'r' };
+static const symbol s_10[] = { 'i', 'c' };
+static const symbol s_11[] = { 'l', 'o', 'g' };
+static const symbol s_12[] = { 'u' };
+static const symbol s_13[] = { 'e', 'n', 't', 'e' };
+static const symbol s_14[] = { 'a', 't' };
+static const symbol s_15[] = { 'a', 't' };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_1[1] = { 0xE1 };
static const symbol s_0_2[1] = { 0xE9 };
static const symbol s_0_3[1] = { 0xED };
static const symbol s_0_4[1] = { 0xF3 };
static const symbol s_0_5[1] = { 0xFA };
-
-static const struct among a_0[6] =
-{
-{ 0, 0, -1, 6, 0},
-{ 1, s_0_1, 0, 1, 0},
-{ 1, s_0_2, 0, 2, 0},
-{ 1, s_0_3, 0, 3, 0},
-{ 1, s_0_4, 0, 4, 0},
-{ 1, s_0_5, 0, 5, 0}
+static const struct among a_0[6] = {
+{ 0, 0, 0, 6, 0},
+{ 1, s_0_1, -1, 1, 0},
+{ 1, s_0_2, -2, 2, 0},
+{ 1, s_0_3, -3, 3, 0},
+{ 1, s_0_4, -4, 4, 0},
+{ 1, s_0_5, -5, 5, 0}
};
static const symbol s_1_0[2] = { 'l', 'a' };
static const symbol s_1_10[3] = { 'l', 'o', 's' };
static const symbol s_1_11[5] = { 's', 'e', 'l', 'o', 's' };
static const symbol s_1_12[3] = { 'n', 'o', 's' };
-
-static const struct among a_1[13] =
-{
-{ 2, s_1_0, -1, -1, 0},
-{ 4, s_1_1, 0, -1, 0},
-{ 2, s_1_2, -1, -1, 0},
-{ 2, s_1_3, -1, -1, 0},
-{ 2, s_1_4, -1, -1, 0},
-{ 2, s_1_5, -1, -1, 0},
-{ 4, s_1_6, 5, -1, 0},
-{ 3, s_1_7, -1, -1, 0},
-{ 5, s_1_8, 7, -1, 0},
-{ 3, s_1_9, -1, -1, 0},
-{ 3, s_1_10, -1, -1, 0},
-{ 5, s_1_11, 10, -1, 0},
-{ 3, s_1_12, -1, -1, 0}
+static const struct among a_1[13] = {
+{ 2, s_1_0, 0, -1, 0},
+{ 4, s_1_1, -1, -1, 0},
+{ 2, s_1_2, 0, -1, 0},
+{ 2, s_1_3, 0, -1, 0},
+{ 2, s_1_4, 0, -1, 0},
+{ 2, s_1_5, 0, -1, 0},
+{ 4, s_1_6, -1, -1, 0},
+{ 3, s_1_7, 0, -1, 0},
+{ 5, s_1_8, -1, -1, 0},
+{ 3, s_1_9, 0, -1, 0},
+{ 3, s_1_10, 0, -1, 0},
+{ 5, s_1_11, -1, -1, 0},
+{ 3, s_1_12, 0, -1, 0}
};
static const symbol s_2_0[4] = { 'a', 'n', 'd', 'o' };
static const symbol s_2_8[2] = { 0xE1, 'r' };
static const symbol s_2_9[2] = { 0xE9, 'r' };
static const symbol s_2_10[2] = { 0xED, 'r' };
-
-static const struct among a_2[11] =
-{
-{ 4, s_2_0, -1, 6, 0},
-{ 5, s_2_1, -1, 6, 0},
-{ 5, s_2_2, -1, 7, 0},
-{ 4, s_2_3, -1, 2, 0},
-{ 5, s_2_4, -1, 1, 0},
-{ 2, s_2_5, -1, 6, 0},
-{ 2, s_2_6, -1, 6, 0},
-{ 2, s_2_7, -1, 6, 0},
-{ 2, s_2_8, -1, 3, 0},
-{ 2, s_2_9, -1, 4, 0},
-{ 2, s_2_10, -1, 5, 0}
+static const struct among a_2[11] = {
+{ 4, s_2_0, 0, 6, 0},
+{ 5, s_2_1, 0, 6, 0},
+{ 5, s_2_2, 0, 7, 0},
+{ 4, s_2_3, 0, 2, 0},
+{ 5, s_2_4, 0, 1, 0},
+{ 2, s_2_5, 0, 6, 0},
+{ 2, s_2_6, 0, 6, 0},
+{ 2, s_2_7, 0, 6, 0},
+{ 2, s_2_8, 0, 3, 0},
+{ 2, s_2_9, 0, 4, 0},
+{ 2, s_2_10, 0, 5, 0}
};
static const symbol s_3_0[2] = { 'i', 'c' };
static const symbol s_3_1[2] = { 'a', 'd' };
static const symbol s_3_2[2] = { 'o', 's' };
static const symbol s_3_3[2] = { 'i', 'v' };
-
-static const struct among a_3[4] =
-{
-{ 2, s_3_0, -1, -1, 0},
-{ 2, s_3_1, -1, -1, 0},
-{ 2, s_3_2, -1, -1, 0},
-{ 2, s_3_3, -1, 1, 0}
+static const struct among a_3[4] = {
+{ 2, s_3_0, 0, -1, 0},
+{ 2, s_3_1, 0, -1, 0},
+{ 2, s_3_2, 0, -1, 0},
+{ 2, s_3_3, 0, 1, 0}
};
static const symbol s_4_0[4] = { 'a', 'b', 'l', 'e' };
static const symbol s_4_1[4] = { 'i', 'b', 'l', 'e' };
static const symbol s_4_2[4] = { 'a', 'n', 't', 'e' };
-
-static const struct among a_4[3] =
-{
-{ 4, s_4_0, -1, 1, 0},
-{ 4, s_4_1, -1, 1, 0},
-{ 4, s_4_2, -1, 1, 0}
+static const struct among a_4[3] = {
+{ 4, s_4_0, 0, 1, 0},
+{ 4, s_4_1, 0, 1, 0},
+{ 4, s_4_2, 0, 1, 0}
};
static const symbol s_5_0[2] = { 'i', 'c' };
static const symbol s_5_1[4] = { 'a', 'b', 'i', 'l' };
static const symbol s_5_2[2] = { 'i', 'v' };
-
-static const struct among a_5[3] =
-{
-{ 2, s_5_0, -1, 1, 0},
-{ 4, s_5_1, -1, 1, 0},
-{ 2, s_5_2, -1, 1, 0}
+static const struct among a_5[3] = {
+{ 2, s_5_0, 0, 1, 0},
+{ 4, s_5_1, 0, 1, 0},
+{ 2, s_5_2, 0, 1, 0}
};
static const symbol s_6_0[3] = { 'i', 'c', 'a' };
static const symbol s_6_12[4] = { 'a', 'n', 't', 'e' };
static const symbol s_6_13[5] = { 'm', 'e', 'n', 't', 'e' };
static const symbol s_6_14[6] = { 'a', 'm', 'e', 'n', 't', 'e' };
-static const symbol s_6_15[5] = { 'a', 'c', 'i', 0xF3, 'n' };
-static const symbol s_6_16[5] = { 'u', 'c', 'i', 0xF3, 'n' };
-static const symbol s_6_17[3] = { 'i', 'c', 'o' };
-static const symbol s_6_18[4] = { 'i', 's', 'm', 'o' };
-static const symbol s_6_19[3] = { 'o', 's', 'o' };
-static const symbol s_6_20[7] = { 'a', 'm', 'i', 'e', 'n', 't', 'o' };
-static const symbol s_6_21[7] = { 'i', 'm', 'i', 'e', 'n', 't', 'o' };
-static const symbol s_6_22[3] = { 'i', 'v', 'o' };
-static const symbol s_6_23[4] = { 'a', 'd', 'o', 'r' };
-static const symbol s_6_24[4] = { 'i', 'c', 'a', 's' };
-static const symbol s_6_25[6] = { 'a', 'n', 'c', 'i', 'a', 's' };
-static const symbol s_6_26[6] = { 'e', 'n', 'c', 'i', 'a', 's' };
-static const symbol s_6_27[6] = { 'a', 'd', 'o', 'r', 'a', 's' };
-static const symbol s_6_28[4] = { 'o', 's', 'a', 's' };
-static const symbol s_6_29[5] = { 'i', 's', 't', 'a', 's' };
-static const symbol s_6_30[4] = { 'i', 'v', 'a', 's' };
-static const symbol s_6_31[5] = { 'a', 'n', 'z', 'a', 's' };
-static const symbol s_6_32[6] = { 'l', 'o', 'g', 0xED, 'a', 's' };
-static const symbol s_6_33[6] = { 'i', 'd', 'a', 'd', 'e', 's' };
-static const symbol s_6_34[5] = { 'a', 'b', 'l', 'e', 's' };
-static const symbol s_6_35[5] = { 'i', 'b', 'l', 'e', 's' };
-static const symbol s_6_36[7] = { 'a', 'c', 'i', 'o', 'n', 'e', 's' };
-static const symbol s_6_37[7] = { 'u', 'c', 'i', 'o', 'n', 'e', 's' };
-static const symbol s_6_38[6] = { 'a', 'd', 'o', 'r', 'e', 's' };
-static const symbol s_6_39[5] = { 'a', 'n', 't', 'e', 's' };
-static const symbol s_6_40[4] = { 'i', 'c', 'o', 's' };
-static const symbol s_6_41[5] = { 'i', 's', 'm', 'o', 's' };
-static const symbol s_6_42[4] = { 'o', 's', 'o', 's' };
-static const symbol s_6_43[8] = { 'a', 'm', 'i', 'e', 'n', 't', 'o', 's' };
-static const symbol s_6_44[8] = { 'i', 'm', 'i', 'e', 'n', 't', 'o', 's' };
-static const symbol s_6_45[4] = { 'i', 'v', 'o', 's' };
-
-static const struct among a_6[46] =
-{
-{ 3, s_6_0, -1, 1, 0},
-{ 5, s_6_1, -1, 2, 0},
-{ 5, s_6_2, -1, 5, 0},
-{ 5, s_6_3, -1, 2, 0},
-{ 3, s_6_4, -1, 1, 0},
-{ 4, s_6_5, -1, 1, 0},
-{ 3, s_6_6, -1, 9, 0},
-{ 4, s_6_7, -1, 1, 0},
-{ 5, s_6_8, -1, 3, 0},
-{ 4, s_6_9, -1, 8, 0},
-{ 4, s_6_10, -1, 1, 0},
-{ 4, s_6_11, -1, 1, 0},
-{ 4, s_6_12, -1, 2, 0},
-{ 5, s_6_13, -1, 7, 0},
-{ 6, s_6_14, 13, 6, 0},
-{ 5, s_6_15, -1, 2, 0},
-{ 5, s_6_16, -1, 4, 0},
-{ 3, s_6_17, -1, 1, 0},
-{ 4, s_6_18, -1, 1, 0},
-{ 3, s_6_19, -1, 1, 0},
-{ 7, s_6_20, -1, 1, 0},
-{ 7, s_6_21, -1, 1, 0},
-{ 3, s_6_22, -1, 9, 0},
-{ 4, s_6_23, -1, 2, 0},
-{ 4, s_6_24, -1, 1, 0},
-{ 6, s_6_25, -1, 2, 0},
-{ 6, s_6_26, -1, 5, 0},
-{ 6, s_6_27, -1, 2, 0},
-{ 4, s_6_28, -1, 1, 0},
-{ 5, s_6_29, -1, 1, 0},
-{ 4, s_6_30, -1, 9, 0},
-{ 5, s_6_31, -1, 1, 0},
-{ 6, s_6_32, -1, 3, 0},
-{ 6, s_6_33, -1, 8, 0},
-{ 5, s_6_34, -1, 1, 0},
-{ 5, s_6_35, -1, 1, 0},
-{ 7, s_6_36, -1, 2, 0},
-{ 7, s_6_37, -1, 4, 0},
-{ 6, s_6_38, -1, 2, 0},
-{ 5, s_6_39, -1, 2, 0},
-{ 4, s_6_40, -1, 1, 0},
-{ 5, s_6_41, -1, 1, 0},
-{ 4, s_6_42, -1, 1, 0},
-{ 8, s_6_43, -1, 1, 0},
-{ 8, s_6_44, -1, 1, 0},
-{ 4, s_6_45, -1, 9, 0}
+static const symbol s_6_15[5] = { 'a', 'c', 'i', 'o', 'n' };
+static const symbol s_6_16[5] = { 'u', 'c', 'i', 'o', 'n' };
+static const symbol s_6_17[5] = { 'a', 'c', 'i', 0xF3, 'n' };
+static const symbol s_6_18[5] = { 'u', 'c', 'i', 0xF3, 'n' };
+static const symbol s_6_19[3] = { 'i', 'c', 'o' };
+static const symbol s_6_20[4] = { 'i', 's', 'm', 'o' };
+static const symbol s_6_21[3] = { 'o', 's', 'o' };
+static const symbol s_6_22[7] = { 'a', 'm', 'i', 'e', 'n', 't', 'o' };
+static const symbol s_6_23[7] = { 'i', 'm', 'i', 'e', 'n', 't', 'o' };
+static const symbol s_6_24[3] = { 'i', 'v', 'o' };
+static const symbol s_6_25[4] = { 'a', 'd', 'o', 'r' };
+static const symbol s_6_26[4] = { 'i', 'c', 'a', 's' };
+static const symbol s_6_27[6] = { 'a', 'n', 'c', 'i', 'a', 's' };
+static const symbol s_6_28[6] = { 'e', 'n', 'c', 'i', 'a', 's' };
+static const symbol s_6_29[6] = { 'a', 'd', 'o', 'r', 'a', 's' };
+static const symbol s_6_30[4] = { 'o', 's', 'a', 's' };
+static const symbol s_6_31[5] = { 'i', 's', 't', 'a', 's' };
+static const symbol s_6_32[4] = { 'i', 'v', 'a', 's' };
+static const symbol s_6_33[5] = { 'a', 'n', 'z', 'a', 's' };
+static const symbol s_6_34[6] = { 'l', 'o', 'g', 0xED, 'a', 's' };
+static const symbol s_6_35[6] = { 'i', 'd', 'a', 'd', 'e', 's' };
+static const symbol s_6_36[5] = { 'a', 'b', 'l', 'e', 's' };
+static const symbol s_6_37[5] = { 'i', 'b', 'l', 'e', 's' };
+static const symbol s_6_38[7] = { 'a', 'c', 'i', 'o', 'n', 'e', 's' };
+static const symbol s_6_39[7] = { 'u', 'c', 'i', 'o', 'n', 'e', 's' };
+static const symbol s_6_40[6] = { 'a', 'd', 'o', 'r', 'e', 's' };
+static const symbol s_6_41[5] = { 'a', 'n', 't', 'e', 's' };
+static const symbol s_6_42[4] = { 'i', 'c', 'o', 's' };
+static const symbol s_6_43[5] = { 'i', 's', 'm', 'o', 's' };
+static const symbol s_6_44[4] = { 'o', 's', 'o', 's' };
+static const symbol s_6_45[8] = { 'a', 'm', 'i', 'e', 'n', 't', 'o', 's' };
+static const symbol s_6_46[8] = { 'i', 'm', 'i', 'e', 'n', 't', 'o', 's' };
+static const symbol s_6_47[4] = { 'i', 'v', 'o', 's' };
+static const struct among a_6[48] = {
+{ 3, s_6_0, 0, 1, 0},
+{ 5, s_6_1, 0, 2, 0},
+{ 5, s_6_2, 0, 5, 0},
+{ 5, s_6_3, 0, 2, 0},
+{ 3, s_6_4, 0, 1, 0},
+{ 4, s_6_5, 0, 1, 0},
+{ 3, s_6_6, 0, 9, 0},
+{ 4, s_6_7, 0, 1, 0},
+{ 5, s_6_8, 0, 3, 0},
+{ 4, s_6_9, 0, 8, 0},
+{ 4, s_6_10, 0, 1, 0},
+{ 4, s_6_11, 0, 1, 0},
+{ 4, s_6_12, 0, 2, 0},
+{ 5, s_6_13, 0, 7, 0},
+{ 6, s_6_14, -1, 6, 0},
+{ 5, s_6_15, 0, 2, 0},
+{ 5, s_6_16, 0, 4, 0},
+{ 5, s_6_17, 0, 2, 0},
+{ 5, s_6_18, 0, 4, 0},
+{ 3, s_6_19, 0, 1, 0},
+{ 4, s_6_20, 0, 1, 0},
+{ 3, s_6_21, 0, 1, 0},
+{ 7, s_6_22, 0, 1, 0},
+{ 7, s_6_23, 0, 1, 0},
+{ 3, s_6_24, 0, 9, 0},
+{ 4, s_6_25, 0, 2, 0},
+{ 4, s_6_26, 0, 1, 0},
+{ 6, s_6_27, 0, 2, 0},
+{ 6, s_6_28, 0, 5, 0},
+{ 6, s_6_29, 0, 2, 0},
+{ 4, s_6_30, 0, 1, 0},
+{ 5, s_6_31, 0, 1, 0},
+{ 4, s_6_32, 0, 9, 0},
+{ 5, s_6_33, 0, 1, 0},
+{ 6, s_6_34, 0, 3, 0},
+{ 6, s_6_35, 0, 8, 0},
+{ 5, s_6_36, 0, 1, 0},
+{ 5, s_6_37, 0, 1, 0},
+{ 7, s_6_38, 0, 2, 0},
+{ 7, s_6_39, 0, 4, 0},
+{ 6, s_6_40, 0, 2, 0},
+{ 5, s_6_41, 0, 2, 0},
+{ 4, s_6_42, 0, 1, 0},
+{ 5, s_6_43, 0, 1, 0},
+{ 4, s_6_44, 0, 1, 0},
+{ 8, s_6_45, 0, 1, 0},
+{ 8, s_6_46, 0, 1, 0},
+{ 4, s_6_47, 0, 9, 0}
};
static const symbol s_7_0[2] = { 'y', 'a' };
static const symbol s_7_9[4] = { 'y', 'a', 'i', 's' };
static const symbol s_7_10[5] = { 'y', 'a', 'm', 'o', 's' };
static const symbol s_7_11[2] = { 'y', 0xF3 };
-
-static const struct among a_7[12] =
-{
-{ 2, s_7_0, -1, 1, 0},
-{ 2, s_7_1, -1, 1, 0},
-{ 3, s_7_2, -1, 1, 0},
-{ 3, s_7_3, -1, 1, 0},
-{ 5, s_7_4, -1, 1, 0},
-{ 5, s_7_5, -1, 1, 0},
-{ 2, s_7_6, -1, 1, 0},
-{ 3, s_7_7, -1, 1, 0},
-{ 3, s_7_8, -1, 1, 0},
-{ 4, s_7_9, -1, 1, 0},
-{ 5, s_7_10, -1, 1, 0},
-{ 2, s_7_11, -1, 1, 0}
+static const struct among a_7[12] = {
+{ 2, s_7_0, 0, 1, 0},
+{ 2, s_7_1, 0, 1, 0},
+{ 3, s_7_2, 0, 1, 0},
+{ 3, s_7_3, 0, 1, 0},
+{ 5, s_7_4, 0, 1, 0},
+{ 5, s_7_5, 0, 1, 0},
+{ 2, s_7_6, 0, 1, 0},
+{ 3, s_7_7, 0, 1, 0},
+{ 3, s_7_8, 0, 1, 0},
+{ 4, s_7_9, 0, 1, 0},
+{ 5, s_7_10, 0, 1, 0},
+{ 2, s_7_11, 0, 1, 0}
};
static const symbol s_8_0[3] = { 'a', 'b', 'a' };
static const symbol s_8_93[3] = { 'e', 'r', 0xE9 };
static const symbol s_8_94[3] = { 'i', 'r', 0xE9 };
static const symbol s_8_95[2] = { 'i', 0xF3 };
-
-static const struct among a_8[96] =
-{
-{ 3, s_8_0, -1, 2, 0},
-{ 3, s_8_1, -1, 2, 0},
-{ 3, s_8_2, -1, 2, 0},
-{ 3, s_8_3, -1, 2, 0},
-{ 4, s_8_4, -1, 2, 0},
-{ 2, s_8_5, -1, 2, 0},
-{ 4, s_8_6, 5, 2, 0},
-{ 4, s_8_7, 5, 2, 0},
-{ 4, s_8_8, 5, 2, 0},
-{ 2, s_8_9, -1, 2, 0},
-{ 2, s_8_10, -1, 2, 0},
-{ 2, s_8_11, -1, 2, 0},
-{ 3, s_8_12, -1, 2, 0},
-{ 4, s_8_13, -1, 2, 0},
-{ 4, s_8_14, -1, 2, 0},
-{ 4, s_8_15, -1, 2, 0},
-{ 2, s_8_16, -1, 2, 0},
-{ 4, s_8_17, 16, 2, 0},
-{ 4, s_8_18, 16, 2, 0},
-{ 5, s_8_19, 16, 2, 0},
-{ 3, s_8_20, 16, 2, 0},
-{ 5, s_8_21, 20, 2, 0},
-{ 5, s_8_22, 20, 2, 0},
-{ 5, s_8_23, 20, 2, 0},
-{ 2, s_8_24, -1, 1, 0},
-{ 4, s_8_25, 24, 2, 0},
-{ 5, s_8_26, 24, 2, 0},
-{ 4, s_8_27, -1, 2, 0},
-{ 5, s_8_28, -1, 2, 0},
-{ 4, s_8_29, -1, 2, 0},
-{ 4, s_8_30, -1, 2, 0},
-{ 4, s_8_31, -1, 2, 0},
-{ 3, s_8_32, -1, 2, 0},
-{ 3, s_8_33, -1, 2, 0},
-{ 4, s_8_34, -1, 2, 0},
-{ 5, s_8_35, -1, 2, 0},
-{ 2, s_8_36, -1, 2, 0},
-{ 2, s_8_37, -1, 2, 0},
-{ 2, s_8_38, -1, 2, 0},
-{ 2, s_8_39, -1, 2, 0},
-{ 4, s_8_40, 39, 2, 0},
-{ 4, s_8_41, 39, 2, 0},
-{ 4, s_8_42, 39, 2, 0},
-{ 4, s_8_43, 39, 2, 0},
-{ 5, s_8_44, 39, 2, 0},
-{ 3, s_8_45, 39, 2, 0},
-{ 5, s_8_46, 45, 2, 0},
-{ 5, s_8_47, 45, 2, 0},
-{ 5, s_8_48, 45, 2, 0},
-{ 2, s_8_49, -1, 1, 0},
-{ 4, s_8_50, 49, 2, 0},
-{ 5, s_8_51, 49, 2, 0},
-{ 5, s_8_52, -1, 2, 0},
-{ 5, s_8_53, -1, 2, 0},
-{ 6, s_8_54, -1, 2, 0},
-{ 4, s_8_55, -1, 2, 0},
-{ 6, s_8_56, 55, 2, 0},
-{ 6, s_8_57, 55, 2, 0},
-{ 6, s_8_58, 55, 2, 0},
-{ 5, s_8_59, -1, 2, 0},
-{ 6, s_8_60, -1, 2, 0},
-{ 6, s_8_61, -1, 2, 0},
-{ 6, s_8_62, -1, 2, 0},
-{ 3, s_8_63, -1, 2, 0},
-{ 3, s_8_64, -1, 1, 0},
-{ 5, s_8_65, 64, 2, 0},
-{ 5, s_8_66, 64, 2, 0},
-{ 5, s_8_67, 64, 2, 0},
-{ 4, s_8_68, -1, 2, 0},
-{ 4, s_8_69, -1, 2, 0},
-{ 4, s_8_70, -1, 2, 0},
-{ 6, s_8_71, 70, 2, 0},
-{ 6, s_8_72, 70, 2, 0},
-{ 7, s_8_73, 70, 2, 0},
-{ 5, s_8_74, 70, 2, 0},
-{ 7, s_8_75, 74, 2, 0},
-{ 7, s_8_76, 74, 2, 0},
-{ 7, s_8_77, 74, 2, 0},
-{ 4, s_8_78, -1, 1, 0},
-{ 6, s_8_79, 78, 2, 0},
-{ 6, s_8_80, 78, 2, 0},
-{ 6, s_8_81, 78, 2, 0},
-{ 6, s_8_82, 78, 2, 0},
-{ 7, s_8_83, 78, 2, 0},
-{ 4, s_8_84, -1, 2, 0},
-{ 4, s_8_85, -1, 2, 0},
-{ 4, s_8_86, -1, 2, 0},
-{ 4, s_8_87, -1, 2, 0},
-{ 2, s_8_88, -1, 2, 0},
-{ 3, s_8_89, -1, 2, 0},
-{ 3, s_8_90, -1, 2, 0},
-{ 3, s_8_91, -1, 2, 0},
-{ 3, s_8_92, -1, 2, 0},
-{ 3, s_8_93, -1, 2, 0},
-{ 3, s_8_94, -1, 2, 0},
-{ 2, s_8_95, -1, 2, 0}
+static const struct among a_8[96] = {
+{ 3, s_8_0, 0, 2, 0},
+{ 3, s_8_1, 0, 2, 0},
+{ 3, s_8_2, 0, 2, 0},
+{ 3, s_8_3, 0, 2, 0},
+{ 4, s_8_4, 0, 2, 0},
+{ 2, s_8_5, 0, 2, 0},
+{ 4, s_8_6, -1, 2, 0},
+{ 4, s_8_7, -2, 2, 0},
+{ 4, s_8_8, -3, 2, 0},
+{ 2, s_8_9, 0, 2, 0},
+{ 2, s_8_10, 0, 2, 0},
+{ 2, s_8_11, 0, 2, 0},
+{ 3, s_8_12, 0, 2, 0},
+{ 4, s_8_13, 0, 2, 0},
+{ 4, s_8_14, 0, 2, 0},
+{ 4, s_8_15, 0, 2, 0},
+{ 2, s_8_16, 0, 2, 0},
+{ 4, s_8_17, -1, 2, 0},
+{ 4, s_8_18, -2, 2, 0},
+{ 5, s_8_19, -3, 2, 0},
+{ 3, s_8_20, -4, 2, 0},
+{ 5, s_8_21, -1, 2, 0},
+{ 5, s_8_22, -2, 2, 0},
+{ 5, s_8_23, -3, 2, 0},
+{ 2, s_8_24, 0, 1, 0},
+{ 4, s_8_25, -1, 2, 0},
+{ 5, s_8_26, -2, 2, 0},
+{ 4, s_8_27, 0, 2, 0},
+{ 5, s_8_28, 0, 2, 0},
+{ 4, s_8_29, 0, 2, 0},
+{ 4, s_8_30, 0, 2, 0},
+{ 4, s_8_31, 0, 2, 0},
+{ 3, s_8_32, 0, 2, 0},
+{ 3, s_8_33, 0, 2, 0},
+{ 4, s_8_34, 0, 2, 0},
+{ 5, s_8_35, 0, 2, 0},
+{ 2, s_8_36, 0, 2, 0},
+{ 2, s_8_37, 0, 2, 0},
+{ 2, s_8_38, 0, 2, 0},
+{ 2, s_8_39, 0, 2, 0},
+{ 4, s_8_40, -1, 2, 0},
+{ 4, s_8_41, -2, 2, 0},
+{ 4, s_8_42, -3, 2, 0},
+{ 4, s_8_43, -4, 2, 0},
+{ 5, s_8_44, -5, 2, 0},
+{ 3, s_8_45, -6, 2, 0},
+{ 5, s_8_46, -1, 2, 0},
+{ 5, s_8_47, -2, 2, 0},
+{ 5, s_8_48, -3, 2, 0},
+{ 2, s_8_49, 0, 1, 0},
+{ 4, s_8_50, -1, 2, 0},
+{ 5, s_8_51, -2, 2, 0},
+{ 5, s_8_52, 0, 2, 0},
+{ 5, s_8_53, 0, 2, 0},
+{ 6, s_8_54, 0, 2, 0},
+{ 4, s_8_55, 0, 2, 0},
+{ 6, s_8_56, -1, 2, 0},
+{ 6, s_8_57, -2, 2, 0},
+{ 6, s_8_58, -3, 2, 0},
+{ 5, s_8_59, 0, 2, 0},
+{ 6, s_8_60, 0, 2, 0},
+{ 6, s_8_61, 0, 2, 0},
+{ 6, s_8_62, 0, 2, 0},
+{ 3, s_8_63, 0, 2, 0},
+{ 3, s_8_64, 0, 1, 0},
+{ 5, s_8_65, -1, 2, 0},
+{ 5, s_8_66, -2, 2, 0},
+{ 5, s_8_67, -3, 2, 0},
+{ 4, s_8_68, 0, 2, 0},
+{ 4, s_8_69, 0, 2, 0},
+{ 4, s_8_70, 0, 2, 0},
+{ 6, s_8_71, -1, 2, 0},
+{ 6, s_8_72, -2, 2, 0},
+{ 7, s_8_73, -3, 2, 0},
+{ 5, s_8_74, -4, 2, 0},
+{ 7, s_8_75, -1, 2, 0},
+{ 7, s_8_76, -2, 2, 0},
+{ 7, s_8_77, -3, 2, 0},
+{ 4, s_8_78, 0, 1, 0},
+{ 6, s_8_79, -1, 2, 0},
+{ 6, s_8_80, -2, 2, 0},
+{ 6, s_8_81, -3, 2, 0},
+{ 6, s_8_82, -4, 2, 0},
+{ 7, s_8_83, -5, 2, 0},
+{ 4, s_8_84, 0, 2, 0},
+{ 4, s_8_85, 0, 2, 0},
+{ 4, s_8_86, 0, 2, 0},
+{ 4, s_8_87, 0, 2, 0},
+{ 2, s_8_88, 0, 2, 0},
+{ 3, s_8_89, 0, 2, 0},
+{ 3, s_8_90, 0, 2, 0},
+{ 3, s_8_91, 0, 2, 0},
+{ 3, s_8_92, 0, 2, 0},
+{ 3, s_8_93, 0, 2, 0},
+{ 3, s_8_94, 0, 2, 0},
+{ 2, s_8_95, 0, 2, 0}
};
static const symbol s_9_0[1] = { 'a' };
static const symbol s_9_5[1] = { 0xE9 };
static const symbol s_9_6[1] = { 0xED };
static const symbol s_9_7[1] = { 0xF3 };
-
-static const struct among a_9[8] =
-{
-{ 1, s_9_0, -1, 1, 0},
-{ 1, s_9_1, -1, 2, 0},
-{ 1, s_9_2, -1, 1, 0},
-{ 2, s_9_3, -1, 1, 0},
-{ 1, s_9_4, -1, 1, 0},
-{ 1, s_9_5, -1, 2, 0},
-{ 1, s_9_6, -1, 1, 0},
-{ 1, s_9_7, -1, 1, 0}
+static const struct among a_9[8] = {
+{ 1, s_9_0, 0, 1, 0},
+{ 1, s_9_1, 0, 2, 0},
+{ 1, s_9_2, 0, 1, 0},
+{ 2, s_9_3, 0, 1, 0},
+{ 1, s_9_4, 0, 1, 0},
+{ 1, s_9_5, 0, 2, 0},
+{ 1, s_9_6, 0, 1, 0},
+{ 1, s_9_7, 0, 1, 0}
};
static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 10 };
-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[] = { 'i', 'e', 'n', 'd', 'o' };
-static const symbol s_6[] = { 'a', 'n', 'd', 'o' };
-static const symbol s_7[] = { 'a', 'r' };
-static const symbol s_8[] = { 'e', 'r' };
-static const symbol s_9[] = { 'i', 'r' };
-static const symbol s_10[] = { 'i', 'c' };
-static const symbol s_11[] = { 'l', 'o', 'g' };
-static const symbol s_12[] = { 'u' };
-static const symbol s_13[] = { 'e', 'n', 't', 'e' };
-static const symbol s_14[] = { 'a', 't' };
-static const symbol s_15[] = { 'a', 't' };
-
static int r_mark_regions(struct SN_env * z) {
- z->I[2] = z->l;
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
- { int c2 = z->c;
- if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
- { int c3 = z->c;
- if (out_grouping(z, g_v, 97, 252, 0)) goto lab4;
-
+ ((SN_local *)z)->i_pV = z->l;
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ do {
+ int v_2 = z->c;
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab1;
+ do {
+ int v_3 = z->c;
+ if (out_grouping(z, g_v, 97, 252, 0)) goto lab2;
{
int ret = out_grouping(z, g_v, 97, 252, 1);
- if (ret < 0) goto lab4;
+ if (ret < 0) goto lab2;
z->c += ret;
}
- goto lab3;
- lab4:
- z->c = c3;
- if (in_grouping(z, g_v, 97, 252, 0)) goto lab2;
-
+ break;
+ lab2:
+ z->c = v_3;
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab1;
{
int ret = in_grouping(z, g_v, 97, 252, 1);
- if (ret < 0) goto lab2;
+ if (ret < 0) goto lab1;
z->c += ret;
}
- }
- lab3:
- goto lab1;
- lab2:
- z->c = c2;
+ } while (0);
+ break;
+ lab1:
+ z->c = v_2;
if (out_grouping(z, g_v, 97, 252, 0)) goto lab0;
- { int c4 = z->c;
- if (out_grouping(z, g_v, 97, 252, 0)) goto lab6;
-
+ do {
+ int v_4 = z->c;
+ if (out_grouping(z, g_v, 97, 252, 0)) goto lab3;
{
int ret = out_grouping(z, g_v, 97, 252, 1);
- if (ret < 0) goto lab6;
+ if (ret < 0) goto lab3;
z->c += ret;
}
- goto lab5;
- lab6:
- z->c = c4;
+ break;
+ lab3:
+ z->c = v_4;
if (in_grouping(z, g_v, 97, 252, 0)) goto lab0;
if (z->c >= z->l) goto lab0;
z->c++;
- }
- lab5:
- ;
- }
- lab1:
- z->I[2] = z->c;
+ } while (0);
+ } while (0);
+ ((SN_local *)z)->i_pV = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int c5 = z->c;
-
+ {
+ int v_5 = z->c;
{
int ret = out_grouping(z, g_v, 97, 252, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 252, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping(z, g_v, 97, 252, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 97, 252, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[0] = z->c;
- lab7:
- z->c = c5;
+ ((SN_local *)z)->i_p2 = z->c;
+ lab4:
+ z->c = v_5;
}
return 1;
}
static int r_postlude(struct SN_env * z) {
int among_var;
- while(1) {
- int c1 = z->c;
+ while (1) {
+ int v_1 = z->c;
z->bra = z->c;
if (z->c >= z->l || z->p[z->c + 0] >> 5 != 7 || !((67641858 >> (z->p[z->c + 0] & 0x1f)) & 1)) among_var = 6; else
- among_var = find_among(z, a_0, 6);
+ among_var = find_among(z, a_0, 6, 0);
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_0);
+ {
+ int ret = slice_from_s(z, 1, s_0);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_2);
+ {
+ int ret = slice_from_s(z, 1, s_2);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 1, s_3);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 1, s_4);
+ {
+ int ret = slice_from_s(z, 1, s_4);
if (ret < 0) return ret;
}
break;
}
continue;
lab0:
- z->c = c1;
+ z->c = v_1;
break;
}
return 1;
}
static int r_RV(struct SN_env * z) {
- return z->I[2] <= z->c;
+ return ((SN_local *)z)->i_pV <= z->c;
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_attached_pronoun(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((557090 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- if (!find_among_b(z, a_1, 13)) return 0;
+ if (!find_among_b(z, a_1, 13, 0)) return 0;
z->bra = z->c;
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 111 && z->p[z->c - 1] != 114)) return 0;
- among_var = find_among_b(z, a_2, 11);
+ among_var = find_among_b(z, a_2, 11, 0);
if (!among_var) return 0;
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
z->bra = z->c;
- { int ret = slice_from_s(z, 5, s_5);
+ {
+ int ret = slice_from_s(z, 5, s_5);
if (ret < 0) return ret;
}
break;
case 2:
z->bra = z->c;
- { int ret = slice_from_s(z, 4, s_6);
+ {
+ int ret = slice_from_s(z, 4, s_6);
if (ret < 0) return ret;
}
break;
case 3:
z->bra = z->c;
- { int ret = slice_from_s(z, 2, s_7);
+ {
+ int ret = slice_from_s(z, 2, s_7);
if (ret < 0) return ret;
}
break;
case 4:
z->bra = z->c;
- { int ret = slice_from_s(z, 2, s_8);
+ {
+ int ret = slice_from_s(z, 2, s_8);
if (ret < 0) return ret;
}
break;
case 5:
z->bra = z->c;
- { int ret = slice_from_s(z, 2, s_9);
+ {
+ int ret = slice_from_s(z, 2, s_9);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 7:
if (z->c <= z->lb || z->p[z->c - 1] != 'u') return 0;
z->c--;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 2 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((835634 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_6, 46);
+ among_var = find_among_b(z, a_6, 48, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_10))) { z->c = z->l - m1; goto lab0; }
+ if (!(eq_s_b(z, 2, s_10))) { z->c = z->l - v_1; goto lab0; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m1; goto lab0; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_1; goto lab0; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab0:
}
break;
case 3:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 3, s_11);
+ {
+ int ret = slice_from_s(z, 3, s_11);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 1, s_12);
+ {
+ int ret = slice_from_s(z, 1, s_12);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_from_s(z, 4, s_13);
+ {
+ int ret = slice_from_s(z, 4, s_13);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m2 = z->l - z->c; (void)m2;
+ {
+ int v_2 = z->l - z->c;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718616 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m2; goto lab1; }
- among_var = find_among_b(z, a_3, 4);
- if (!among_var) { z->c = z->l - m2; goto lab1; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4718616 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_2; goto lab1; }
+ among_var = find_among_b(z, a_3, 4, 0);
+ if (!among_var) { z->c = z->l - v_2; goto lab1; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m2; goto lab1; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_2; goto lab1; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
switch (among_var) {
case 1:
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_14))) { z->c = z->l - m2; goto lab1; }
+ if (!(eq_s_b(z, 2, s_14))) { z->c = z->l - v_2; goto lab1; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m2; goto lab1; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_2; goto lab1; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
break;
case 7:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m3 = z->l - z->c; (void)m3;
+ {
+ int v_3 = z->l - z->c;
z->ket = z->c;
- if (z->c - 3 <= z->lb || z->p[z->c - 1] != 101) { z->c = z->l - m3; goto lab2; }
- if (!find_among_b(z, a_4, 3)) { z->c = z->l - m3; goto lab2; }
+ if (z->c - 3 <= z->lb || z->p[z->c - 1] != 101) { z->c = z->l - v_3; goto lab2; }
+ if (!find_among_b(z, a_4, 3, 0)) { z->c = z->l - v_3; goto lab2; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m3; goto lab2; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_3; goto lab2; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab2:
}
break;
case 8:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m4 = z->l - z->c; (void)m4;
+ {
+ int v_4 = z->l - z->c;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m4; goto lab3; }
- if (!find_among_b(z, a_5, 3)) { z->c = z->l - m4; goto lab3; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((4198408 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_4; goto lab3; }
+ if (!find_among_b(z, a_5, 3, 0)) { z->c = z->l - v_4; goto lab3; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m4; goto lab3; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_4; goto lab3; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab3:
}
break;
case 9:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m5 = z->l - z->c; (void)m5;
+ {
+ int v_5 = z->l - z->c;
z->ket = z->c;
- if (!(eq_s_b(z, 2, s_15))) { z->c = z->l - m5; goto lab4; }
+ if (!(eq_s_b(z, 2, s_15))) { z->c = z->l - v_5; goto lab4; }
z->bra = z->c;
- { int ret = r_R2(z);
- if (ret == 0) { z->c = z->l - m5; goto lab4; }
+ {
+ int ret = r_R2(z);
+ if (ret == 0) { z->c = z->l - v_5; goto lab4; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab4:
}
static int r_y_verb_suffix(struct SN_env * z) {
-
- { int mlimit1;
- if (z->c < z->I[2]) return 0;
- mlimit1 = z->lb; z->lb = z->I[2];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_pV) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
z->ket = z->c;
- if (!find_among_b(z, a_7, 12)) { z->lb = mlimit1; return 0; }
+ if (!find_among_b(z, a_7, 12, 0)) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
if (z->c <= z->lb || z->p[z->c - 1] != 'u') return 0;
z->c--;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_verb_suffix(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[2]) return 0;
- mlimit1 = z->lb; z->lb = z->I[2];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_pV) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
z->ket = z->c;
- among_var = find_among_b(z, a_8, 96);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ among_var = find_among_b(z, a_8, 96, 0);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
switch (among_var) {
case 1:
- { int m2 = z->l - z->c; (void)m2;
- if (z->c <= z->lb || z->p[z->c - 1] != 'u') { z->c = z->l - m2; goto lab0; }
+ {
+ int v_2 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'u') { z->c = z->l - v_2; goto lab0; }
z->c--;
- { int m_test3 = z->l - z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'g') { z->c = z->l - m2; goto lab0; }
+ {
+ int v_3 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'g') { z->c = z->l - v_2; goto lab0; }
z->c--;
- z->c = z->l - m_test3;
+ z->c = z->l - v_3;
}
lab0:
;
}
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_residual_suffix(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_9, 8);
+ among_var = find_among_b(z, a_9, 8, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'u') { z->c = z->l - m1; goto lab0; }
+ if (z->c <= z->lb || z->p[z->c - 1] != 'u') { z->c = z->l - v_1; goto lab0; }
z->c--;
z->bra = z->c;
- { int m_test2 = z->l - z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 'g') { z->c = z->l - m1; goto lab0; }
+ {
+ int v_2 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 'g') { z->c = z->l - v_1; goto lab0; }
z->c--;
- z->c = z->l - m_test2;
+ z->c = z->l - v_2;
}
- { int ret = r_RV(z);
- if (ret == 0) { z->c = z->l - m1; goto lab0; }
+ {
+ int ret = r_RV(z);
+ if (ret == 0) { z->c = z->l - v_1; goto lab0; }
if (ret < 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
lab0:
}
extern int spanish_ISO_8859_1_stem(struct SN_env * z) {
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
- { int m1 = z->l - z->c; (void)m1;
- { int ret = r_attached_pronoun(z);
+ {
+ int v_1 = z->l - z->c;
+ {
+ int ret = r_attached_pronoun(z);
if (ret < 0) return ret;
}
- z->c = z->l - m1;
+ z->c = z->l - v_1;
}
- { int m2 = z->l - z->c; (void)m2;
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_standard_suffix(z);
- if (ret == 0) goto lab2;
+ {
+ int v_2 = z->l - z->c;
+ do {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_standard_suffix(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- goto lab1;
- lab2:
- z->c = z->l - m3;
- { int ret = r_y_verb_suffix(z);
- if (ret == 0) goto lab3;
+ break;
+ lab1:
+ z->c = z->l - v_3;
+ {
+ int ret = r_y_verb_suffix(z);
+ if (ret == 0) goto lab2;
if (ret < 0) return ret;
}
- goto lab1;
- lab3:
- z->c = z->l - m3;
- { int ret = r_verb_suffix(z);
+ break;
+ lab2:
+ z->c = z->l - v_3;
+ {
+ int ret = r_verb_suffix(z);
if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- }
- lab1:
+ } while (0);
lab0:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_residual_suffix(z);
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_residual_suffix(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
z->c = z->lb;
- { int c5 = z->c;
- { int ret = r_postlude(z);
+ {
+ int v_5 = z->c;
+ {
+ int ret = r_postlude(z);
if (ret < 0) return ret;
}
- z->c = c5;
+ z->c = v_5;
}
return 1;
}
-extern struct SN_env * spanish_ISO_8859_1_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * spanish_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->i_pV = 0;
+ }
+ return z;
+}
-extern void spanish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void spanish_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from swedish.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_1_swedish.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p1;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_other_suffix(struct SN_env * z);
static int r_consonant_pair(struct SN_env * z);
static int r_main_suffix(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
+static int r_et_condition(struct SN_env * z);
-extern struct SN_env * swedish_ISO_8859_1_create_env(void);
-extern void swedish_ISO_8859_1_close_env(struct SN_env * z);
-
-
-#ifdef __cplusplus
-}
-#endif
-static const symbol s_0_0[1] = { 'a' };
-static const symbol s_0_1[4] = { 'a', 'r', 'n', 'a' };
-static const symbol s_0_2[4] = { 'e', 'r', 'n', 'a' };
-static const symbol s_0_3[7] = { 'h', 'e', 't', 'e', 'r', 'n', 'a' };
-static const symbol s_0_4[4] = { 'o', 'r', 'n', 'a' };
-static const symbol s_0_5[2] = { 'a', 'd' };
-static const symbol s_0_6[1] = { 'e' };
-static const symbol s_0_7[3] = { 'a', 'd', 'e' };
-static const symbol s_0_8[4] = { 'a', 'n', 'd', 'e' };
-static const symbol s_0_9[4] = { 'a', 'r', 'n', 'e' };
-static const symbol s_0_10[3] = { 'a', 'r', 'e' };
-static const symbol s_0_11[4] = { 'a', 's', 't', 'e' };
-static const symbol s_0_12[2] = { 'e', 'n' };
-static const symbol s_0_13[5] = { 'a', 'n', 'd', 'e', 'n' };
-static const symbol s_0_14[4] = { 'a', 'r', 'e', 'n' };
-static const symbol s_0_15[5] = { 'h', 'e', 't', 'e', 'n' };
-static const symbol s_0_16[3] = { 'e', 'r', 'n' };
-static const symbol s_0_17[2] = { 'a', 'r' };
-static const symbol s_0_18[2] = { 'e', 'r' };
-static const symbol s_0_19[5] = { 'h', 'e', 't', 'e', 'r' };
-static const symbol s_0_20[2] = { 'o', 'r' };
-static const symbol s_0_21[1] = { 's' };
-static const symbol s_0_22[2] = { 'a', 's' };
-static const symbol s_0_23[5] = { 'a', 'r', 'n', 'a', 's' };
-static const symbol s_0_24[5] = { 'e', 'r', 'n', 'a', 's' };
-static const symbol s_0_25[5] = { 'o', 'r', 'n', 'a', 's' };
-static const symbol s_0_26[2] = { 'e', 's' };
-static const symbol s_0_27[4] = { 'a', 'd', 'e', 's' };
-static const symbol s_0_28[5] = { 'a', 'n', 'd', 'e', 's' };
-static const symbol s_0_29[3] = { 'e', 'n', 's' };
-static const symbol s_0_30[5] = { 'a', 'r', 'e', 'n', 's' };
-static const symbol s_0_31[6] = { 'h', 'e', 't', 'e', 'n', 's' };
-static const symbol s_0_32[4] = { 'e', 'r', 'n', 's' };
-static const symbol s_0_33[2] = { 'a', 't' };
-static const symbol s_0_34[5] = { 'a', 'n', 'd', 'e', 't' };
-static const symbol s_0_35[3] = { 'h', 'e', 't' };
-static const symbol s_0_36[3] = { 'a', 's', 't' };
+static const symbol s_0[] = { 'e', 't' };
+static const symbol s_1[] = { 0xF6, 's' };
+static const symbol s_2[] = { 'f', 'u', 'l', 'l' };
-static const struct among a_0[37] =
-{
-{ 1, s_0_0, -1, 1, 0},
-{ 4, s_0_1, 0, 1, 0},
-{ 4, s_0_2, 0, 1, 0},
-{ 7, s_0_3, 2, 1, 0},
-{ 4, s_0_4, 0, 1, 0},
-{ 2, s_0_5, -1, 1, 0},
-{ 1, s_0_6, -1, 1, 0},
-{ 3, s_0_7, 6, 1, 0},
-{ 4, s_0_8, 6, 1, 0},
-{ 4, s_0_9, 6, 1, 0},
-{ 3, s_0_10, 6, 1, 0},
-{ 4, s_0_11, 6, 1, 0},
-{ 2, s_0_12, -1, 1, 0},
-{ 5, s_0_13, 12, 1, 0},
-{ 4, s_0_14, 12, 1, 0},
-{ 5, s_0_15, 12, 1, 0},
-{ 3, s_0_16, -1, 1, 0},
-{ 2, s_0_17, -1, 1, 0},
-{ 2, s_0_18, -1, 1, 0},
-{ 5, s_0_19, 18, 1, 0},
-{ 2, s_0_20, -1, 1, 0},
-{ 1, s_0_21, -1, 2, 0},
-{ 2, s_0_22, 21, 1, 0},
-{ 5, s_0_23, 22, 1, 0},
-{ 5, s_0_24, 22, 1, 0},
-{ 5, s_0_25, 22, 1, 0},
-{ 2, s_0_26, 21, 1, 0},
-{ 4, s_0_27, 26, 1, 0},
-{ 5, s_0_28, 26, 1, 0},
-{ 3, s_0_29, 21, 1, 0},
-{ 5, s_0_30, 29, 1, 0},
-{ 6, s_0_31, 29, 1, 0},
-{ 4, s_0_32, 21, 1, 0},
-{ 2, s_0_33, -1, 1, 0},
-{ 5, s_0_34, -1, 1, 0},
-{ 3, s_0_35, -1, 1, 0},
-{ 3, s_0_36, -1, 1, 0}
+static const symbol s_0_0[3] = { 'f', 'a', 'b' };
+static const symbol s_0_1[1] = { 'h' };
+static const symbol s_0_2[3] = { 'p', 'a', 'k' };
+static const symbol s_0_3[3] = { 'r', 'a', 'k' };
+static const symbol s_0_4[4] = { 's', 't', 'a', 'k' };
+static const symbol s_0_5[3] = { 'k', 'o', 'm' };
+static const symbol s_0_6[3] = { 'i', 'e', 't' };
+static const symbol s_0_7[3] = { 'c', 'i', 't' };
+static const symbol s_0_8[3] = { 'd', 'i', 't' };
+static const symbol s_0_9[4] = { 'a', 'l', 'i', 't' };
+static const symbol s_0_10[4] = { 'i', 'l', 'i', 't' };
+static const symbol s_0_11[3] = { 'm', 'i', 't' };
+static const symbol s_0_12[3] = { 'n', 'i', 't' };
+static const symbol s_0_13[3] = { 'p', 'i', 't' };
+static const symbol s_0_14[3] = { 'r', 'i', 't' };
+static const symbol s_0_15[3] = { 's', 'i', 't' };
+static const symbol s_0_16[3] = { 't', 'i', 't' };
+static const symbol s_0_17[3] = { 'u', 'i', 't' };
+static const symbol s_0_18[4] = { 'i', 'v', 'i', 't' };
+static const symbol s_0_19[4] = { 'k', 'v', 'i', 't' };
+static const symbol s_0_20[3] = { 'x', 'i', 't' };
+static const struct among a_0[21] = {
+{ 3, s_0_0, 0, -1, 0},
+{ 1, s_0_1, 0, -1, 0},
+{ 3, s_0_2, 0, -1, 0},
+{ 3, s_0_3, 0, -1, 0},
+{ 4, s_0_4, 0, -1, 0},
+{ 3, s_0_5, 0, -1, 0},
+{ 3, s_0_6, 0, -1, 0},
+{ 3, s_0_7, 0, -1, 0},
+{ 3, s_0_8, 0, -1, 0},
+{ 4, s_0_9, 0, -1, 0},
+{ 4, s_0_10, 0, -1, 0},
+{ 3, s_0_11, 0, -1, 0},
+{ 3, s_0_12, 0, -1, 0},
+{ 3, s_0_13, 0, -1, 0},
+{ 3, s_0_14, 0, -1, 0},
+{ 3, s_0_15, 0, -1, 0},
+{ 3, s_0_16, 0, -1, 0},
+{ 3, s_0_17, 0, -1, 0},
+{ 4, s_0_18, 0, -1, 0},
+{ 4, s_0_19, 0, -1, 0},
+{ 3, s_0_20, 0, -1, 0}
};
-static const symbol s_1_0[2] = { 'd', 'd' };
-static const symbol s_1_1[2] = { 'g', 'd' };
-static const symbol s_1_2[2] = { 'n', 'n' };
-static const symbol s_1_3[2] = { 'd', 't' };
-static const symbol s_1_4[2] = { 'g', 't' };
-static const symbol s_1_5[2] = { 'k', 't' };
-static const symbol s_1_6[2] = { 't', 't' };
-
-static const struct among a_1[7] =
-{
-{ 2, s_1_0, -1, -1, 0},
-{ 2, s_1_1, -1, -1, 0},
-{ 2, s_1_2, -1, -1, 0},
-{ 2, s_1_3, -1, -1, 0},
-{ 2, s_1_4, -1, -1, 0},
-{ 2, s_1_5, -1, -1, 0},
-{ 2, s_1_6, -1, -1, 0}
+static const symbol s_1_0[1] = { 'a' };
+static const symbol s_1_1[4] = { 'a', 'r', 'n', 'a' };
+static const symbol s_1_2[4] = { 'e', 'r', 'n', 'a' };
+static const symbol s_1_3[7] = { 'h', 'e', 't', 'e', 'r', 'n', 'a' };
+static const symbol s_1_4[4] = { 'o', 'r', 'n', 'a' };
+static const symbol s_1_5[2] = { 'a', 'd' };
+static const symbol s_1_6[1] = { 'e' };
+static const symbol s_1_7[3] = { 'a', 'd', 'e' };
+static const symbol s_1_8[4] = { 'a', 'n', 'd', 'e' };
+static const symbol s_1_9[4] = { 'a', 'r', 'n', 'e' };
+static const symbol s_1_10[3] = { 'a', 'r', 'e' };
+static const symbol s_1_11[4] = { 'a', 's', 't', 'e' };
+static const symbol s_1_12[2] = { 'e', 'n' };
+static const symbol s_1_13[5] = { 'a', 'n', 'd', 'e', 'n' };
+static const symbol s_1_14[4] = { 'a', 'r', 'e', 'n' };
+static const symbol s_1_15[5] = { 'h', 'e', 't', 'e', 'n' };
+static const symbol s_1_16[3] = { 'e', 'r', 'n' };
+static const symbol s_1_17[2] = { 'a', 'r' };
+static const symbol s_1_18[2] = { 'e', 'r' };
+static const symbol s_1_19[5] = { 'h', 'e', 't', 'e', 'r' };
+static const symbol s_1_20[2] = { 'o', 'r' };
+static const symbol s_1_21[1] = { 's' };
+static const symbol s_1_22[2] = { 'a', 's' };
+static const symbol s_1_23[5] = { 'a', 'r', 'n', 'a', 's' };
+static const symbol s_1_24[5] = { 'e', 'r', 'n', 'a', 's' };
+static const symbol s_1_25[5] = { 'o', 'r', 'n', 'a', 's' };
+static const symbol s_1_26[2] = { 'e', 's' };
+static const symbol s_1_27[4] = { 'a', 'd', 'e', 's' };
+static const symbol s_1_28[5] = { 'a', 'n', 'd', 'e', 's' };
+static const symbol s_1_29[3] = { 'e', 'n', 's' };
+static const symbol s_1_30[5] = { 'a', 'r', 'e', 'n', 's' };
+static const symbol s_1_31[6] = { 'h', 'e', 't', 'e', 'n', 's' };
+static const symbol s_1_32[4] = { 'e', 'r', 'n', 's' };
+static const symbol s_1_33[2] = { 'a', 't' };
+static const symbol s_1_34[2] = { 'e', 't' };
+static const symbol s_1_35[5] = { 'a', 'n', 'd', 'e', 't' };
+static const symbol s_1_36[3] = { 'h', 'e', 't' };
+static const symbol s_1_37[3] = { 'a', 's', 't' };
+static const struct among a_1[38] = {
+{ 1, s_1_0, 0, 1, 0},
+{ 4, s_1_1, -1, 1, 0},
+{ 4, s_1_2, -2, 1, 0},
+{ 7, s_1_3, -1, 1, 0},
+{ 4, s_1_4, -4, 1, 0},
+{ 2, s_1_5, 0, 1, 0},
+{ 1, s_1_6, 0, 1, 0},
+{ 3, s_1_7, -1, 1, 0},
+{ 4, s_1_8, -2, 1, 0},
+{ 4, s_1_9, -3, 1, 0},
+{ 3, s_1_10, -4, 1, 0},
+{ 4, s_1_11, -5, 1, 0},
+{ 2, s_1_12, 0, 1, 0},
+{ 5, s_1_13, -1, 1, 0},
+{ 4, s_1_14, -2, 1, 0},
+{ 5, s_1_15, -3, 1, 0},
+{ 3, s_1_16, 0, 1, 0},
+{ 2, s_1_17, 0, 1, 0},
+{ 2, s_1_18, 0, 1, 0},
+{ 5, s_1_19, -1, 1, 0},
+{ 2, s_1_20, 0, 1, 0},
+{ 1, s_1_21, 0, 2, 0},
+{ 2, s_1_22, -1, 1, 0},
+{ 5, s_1_23, -1, 1, 0},
+{ 5, s_1_24, -2, 1, 0},
+{ 5, s_1_25, -3, 1, 0},
+{ 2, s_1_26, -5, 1, 0},
+{ 4, s_1_27, -1, 1, 0},
+{ 5, s_1_28, -2, 1, 0},
+{ 3, s_1_29, -8, 1, 0},
+{ 5, s_1_30, -1, 1, 0},
+{ 6, s_1_31, -2, 1, 0},
+{ 4, s_1_32, -11, 1, 0},
+{ 2, s_1_33, 0, 1, 0},
+{ 2, s_1_34, 0, 3, 0},
+{ 5, s_1_35, -1, 1, 0},
+{ 3, s_1_36, -2, 1, 0},
+{ 3, s_1_37, 0, 1, 0}
};
-static const symbol s_2_0[2] = { 'i', 'g' };
-static const symbol s_2_1[3] = { 'l', 'i', 'g' };
-static const symbol s_2_2[3] = { 'e', 'l', 's' };
-static const symbol s_2_3[5] = { 'f', 'u', 'l', 'l', 't' };
-static const symbol s_2_4[3] = { 0xF6, 's', 't' };
+static const symbol s_2_0[2] = { 'd', 'd' };
+static const symbol s_2_1[2] = { 'g', 'd' };
+static const symbol s_2_2[2] = { 'n', 'n' };
+static const symbol s_2_3[2] = { 'd', 't' };
+static const symbol s_2_4[2] = { 'g', 't' };
+static const symbol s_2_5[2] = { 'k', 't' };
+static const symbol s_2_6[2] = { 't', 't' };
+static const struct among a_2[7] = {
+{ 2, s_2_0, 0, -1, 0},
+{ 2, s_2_1, 0, -1, 0},
+{ 2, s_2_2, 0, -1, 0},
+{ 2, s_2_3, 0, -1, 0},
+{ 2, s_2_4, 0, -1, 0},
+{ 2, s_2_5, 0, -1, 0},
+{ 2, s_2_6, 0, -1, 0}
+};
-static const struct among a_2[5] =
-{
-{ 2, s_2_0, -1, 1, 0},
-{ 3, s_2_1, 0, 1, 0},
-{ 3, s_2_2, -1, 1, 0},
-{ 5, s_2_3, -1, 3, 0},
-{ 3, s_2_4, -1, 2, 0}
+static const symbol s_3_0[2] = { 'i', 'g' };
+static const symbol s_3_1[3] = { 'l', 'i', 'g' };
+static const symbol s_3_2[3] = { 'e', 'l', 's' };
+static const symbol s_3_3[5] = { 'f', 'u', 'l', 'l', 't' };
+static const symbol s_3_4[3] = { 0xF6, 's', 't' };
+static const struct among a_3[5] = {
+{ 2, s_3_0, 0, 1, 0},
+{ 3, s_3_1, -1, 1, 0},
+{ 3, s_3_2, 0, 1, 0},
+{ 5, s_3_3, 0, 3, 0},
+{ 3, s_3_4, 0, 2, 0}
};
static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 0, 32 };
static const unsigned char g_ost_ending[] = { 173, 58 };
-static const symbol s_0[] = { 0xF6, 's' };
-static const symbol s_1[] = { 'f', 'u', 'l', 'l' };
-
static int r_mark_regions(struct SN_env * z) {
- z->I[1] = z->l;
- { int c_test1 = z->c;
-z->c = z->c + 3;
- if (z->c > z->l) return 0;
- z->I[0] = z->c;
- z->c = c_test1;
+ int i_x;
+ ((SN_local *)z)->i_p1 = z->l;
+ {
+ int v_1 = z->c;
+ if (z->c + 3 > z->l) return 0;
+ z->c += 3;
+ i_x = z->c;
+ z->c = v_1;
+ }
+ {
+ int ret = out_grouping(z, g_v, 97, 246, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
}
-
- if (out_grouping(z, g_v, 97, 246, 1) < 0) return 0;
-
{
int ret = in_grouping(z, g_v, 97, 246, 1);
if (ret < 0) return 0;
z->c += ret;
}
- z->I[1] = z->c;
-
- if (z->I[1] >= z->I[0]) goto lab0;
- z->I[1] = z->I[0];
+ ((SN_local *)z)->i_p1 = z->c;
+ if (((SN_local *)z)->i_p1 >= i_x) goto lab0;
+ ((SN_local *)z)->i_p1 = i_x;
lab0:
return 1;
}
+static int r_et_condition(struct SN_env * z) {
+ {
+ int v_1 = z->l - z->c;
+ if (out_grouping_b(z, g_v, 97, 246, 0)) return 0;
+ if (in_grouping_b(z, g_v, 97, 246, 0)) return 0;
+ if (z->c > z->lb) goto lab0;
+ return 0;
+ lab0:
+ z->c = z->l - v_1;
+ {
+ int v_2 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1059076 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab1;
+ if (!find_among_b(z, a_0, 21, 0)) goto lab1;
+ return 0;
+ lab1:
+ z->c = z->l - v_2;
+ }
+ }
+ return 1;
+}
+
static int r_main_suffix(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851442 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
- among_var = find_among_b(z, a_0, 37);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1851442 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_1; return 0; }
+ among_var = find_among_b(z, a_1, 38, 0);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- if (in_grouping_b(z, g_s_ending, 98, 121, 0)) return 0;
- { int ret = slice_del(z);
+ do {
+ int v_2 = z->l - z->c;
+ if (!(eq_s_b(z, 2, s_0))) goto lab0;
+ {
+ int ret = r_et_condition(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ z->bra = z->c;
+ break;
+ lab0:
+ z->c = z->l - v_2;
+ if (in_grouping_b(z, g_s_ending, 98, 121, 0)) return 0;
+ } while (0);
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = r_et_condition(z);
+ if (ret <= 0) return ret;
+ }
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
static int r_consonant_pair(struct SN_env * z) {
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
- { int m2 = z->l - z->c; (void)m2;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1064976 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
- if (!find_among_b(z, a_1, 7)) { z->lb = mlimit1; return 0; }
- z->c = z->l - m2;
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
+ {
+ int v_2 = z->l - z->c;
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1064976 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_1; return 0; }
+ if (!find_among_b(z, a_2, 7, 0)) { z->lb = v_1; return 0; }
+ z->c = z->l - v_2;
z->ket = z->c;
- if (z->c <= z->lb) { z->lb = mlimit1; return 0; }
+ if (z->c <= z->lb) { z->lb = v_1; return 0; }
z->c--;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
}
- z->lb = mlimit1;
+ z->lb = v_1;
}
return 1;
}
static int r_other_suffix(struct SN_env * z) {
int among_var;
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_p1) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_p1;
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = mlimit1; return 0; }
- among_var = find_among_b(z, a_2, 5);
- if (!among_var) { z->lb = mlimit1; return 0; }
+ if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((1572992 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->lb = v_1; return 0; }
+ among_var = find_among_b(z, a_3, 5, 0);
+ if (!among_var) { z->lb = v_1; return 0; }
z->bra = z->c;
- z->lb = mlimit1;
+ z->lb = v_1;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (in_grouping_b(z, g_ost_ending, 105, 118, 0)) return 0;
- { int ret = slice_from_s(z, 2, s_0);
+ {
+ int ret = slice_from_s(z, 2, s_1);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 4, s_1);
+ {
+ int ret = slice_from_s(z, 4, s_2);
if (ret < 0) return ret;
}
break;
}
extern int swedish_ISO_8859_1_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_mark_regions(z);
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
z->lb = z->c; z->c = z->l;
-
- { int m2 = z->l - z->c; (void)m2;
- { int ret = r_main_suffix(z);
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_main_suffix(z);
if (ret < 0) return ret;
}
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_consonant_pair(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_consonant_pair(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_other_suffix(z);
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_other_suffix(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * swedish_ISO_8859_1_create_env(void) { return SN_create_env(0, 2); }
+extern struct SN_env * swedish_ISO_8859_1_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p1 = 0;
+ }
+ return z;
+}
-extern void swedish_ISO_8859_1_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void swedish_ISO_8859_1_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from hungarian.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_ISO_8859_2_hungarian.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p1;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_double(struct SN_env * z);
static int r_undouble(struct SN_env * z);
static int r_factive(struct SN_env * z);
static int r_v_ending(struct SN_env * z);
static int r_R1(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * hungarian_ISO_8859_2_create_env(void);
-extern void hungarian_ISO_8859_2_close_env(struct SN_env * z);
+static const symbol s_0[] = { 'a' };
+static const symbol s_1[] = { 'e' };
+static const symbol s_2[] = { 'e' };
+static const symbol s_3[] = { 'a' };
+static const symbol s_4[] = { 'a' };
+static const symbol s_5[] = { 'e' };
+static const symbol s_6[] = { 'a' };
+static const symbol s_7[] = { 'e' };
+static const symbol s_8[] = { 'e' };
+static const symbol s_9[] = { 'a' };
+static const symbol s_10[] = { 'a' };
+static const symbol s_11[] = { 'e' };
+static const symbol s_12[] = { 'a' };
+static const symbol s_13[] = { 'e' };
-#ifdef __cplusplus
-}
-#endif
-static const symbol s_0_0[2] = { 'c', 's' };
-static const symbol s_0_1[3] = { 'd', 'z', 's' };
-static const symbol s_0_2[2] = { 'g', 'y' };
-static const symbol s_0_3[2] = { 'l', 'y' };
-static const symbol s_0_4[2] = { 'n', 'y' };
-static const symbol s_0_5[2] = { 's', 'z' };
-static const symbol s_0_6[2] = { 't', 'y' };
-static const symbol s_0_7[2] = { 'z', 's' };
-
-static const struct among a_0[8] =
-{
-{ 2, s_0_0, -1, -1, 0},
-{ 3, s_0_1, -1, -1, 0},
-{ 2, s_0_2, -1, -1, 0},
-{ 2, s_0_3, -1, -1, 0},
-{ 2, s_0_4, -1, -1, 0},
-{ 2, s_0_5, -1, -1, 0},
-{ 2, s_0_6, -1, -1, 0},
-{ 2, s_0_7, -1, -1, 0}
-};
-
-static const symbol s_1_0[1] = { 0xE1 };
-static const symbol s_1_1[1] = { 0xE9 };
-
-static const struct among a_1[2] =
-{
-{ 1, s_1_0, -1, 1, 0},
-{ 1, s_1_1, -1, 2, 0}
-};
-
-static const symbol s_2_0[2] = { 'b', 'b' };
-static const symbol s_2_1[2] = { 'c', 'c' };
-static const symbol s_2_2[2] = { 'd', 'd' };
-static const symbol s_2_3[2] = { 'f', 'f' };
-static const symbol s_2_4[2] = { 'g', 'g' };
-static const symbol s_2_5[2] = { 'j', 'j' };
-static const symbol s_2_6[2] = { 'k', 'k' };
-static const symbol s_2_7[2] = { 'l', 'l' };
-static const symbol s_2_8[2] = { 'm', 'm' };
-static const symbol s_2_9[2] = { 'n', 'n' };
-static const symbol s_2_10[2] = { 'p', 'p' };
-static const symbol s_2_11[2] = { 'r', 'r' };
-static const symbol s_2_12[3] = { 'c', 'c', 's' };
-static const symbol s_2_13[2] = { 's', 's' };
-static const symbol s_2_14[3] = { 'z', 'z', 's' };
-static const symbol s_2_15[2] = { 't', 't' };
-static const symbol s_2_16[2] = { 'v', 'v' };
-static const symbol s_2_17[3] = { 'g', 'g', 'y' };
-static const symbol s_2_18[3] = { 'l', 'l', 'y' };
-static const symbol s_2_19[3] = { 'n', 'n', 'y' };
-static const symbol s_2_20[3] = { 't', 't', 'y' };
-static const symbol s_2_21[3] = { 's', 's', 'z' };
-static const symbol s_2_22[2] = { 'z', 'z' };
-
-static const struct among a_2[23] =
-{
-{ 2, s_2_0, -1, -1, 0},
-{ 2, s_2_1, -1, -1, 0},
-{ 2, s_2_2, -1, -1, 0},
-{ 2, s_2_3, -1, -1, 0},
-{ 2, s_2_4, -1, -1, 0},
-{ 2, s_2_5, -1, -1, 0},
-{ 2, s_2_6, -1, -1, 0},
-{ 2, s_2_7, -1, -1, 0},
-{ 2, s_2_8, -1, -1, 0},
-{ 2, s_2_9, -1, -1, 0},
-{ 2, s_2_10, -1, -1, 0},
-{ 2, s_2_11, -1, -1, 0},
-{ 3, s_2_12, -1, -1, 0},
-{ 2, s_2_13, -1, -1, 0},
-{ 3, s_2_14, -1, -1, 0},
-{ 2, s_2_15, -1, -1, 0},
-{ 2, s_2_16, -1, -1, 0},
-{ 3, s_2_17, -1, -1, 0},
-{ 3, s_2_18, -1, -1, 0},
-{ 3, s_2_19, -1, -1, 0},
-{ 3, s_2_20, -1, -1, 0},
-{ 3, s_2_21, -1, -1, 0},
-{ 2, s_2_22, -1, -1, 0}
+static const symbol s_0_0[1] = { 0xE1 };
+static const symbol s_0_1[1] = { 0xE9 };
+static const struct among a_0[2] = {
+{ 1, s_0_0, 0, 1, 0},
+{ 1, s_0_1, 0, 2, 0}
};
-static const symbol s_3_0[2] = { 'a', 'l' };
-static const symbol s_3_1[2] = { 'e', 'l' };
-
-static const struct among a_3[2] =
-{
-{ 2, s_3_0, -1, 1, 0},
-{ 2, s_3_1, -1, 1, 0}
+static const symbol s_1_0[2] = { 'b', 'b' };
+static const symbol s_1_1[2] = { 'c', 'c' };
+static const symbol s_1_2[2] = { 'd', 'd' };
+static const symbol s_1_3[2] = { 'f', 'f' };
+static const symbol s_1_4[2] = { 'g', 'g' };
+static const symbol s_1_5[2] = { 'j', 'j' };
+static const symbol s_1_6[2] = { 'k', 'k' };
+static const symbol s_1_7[2] = { 'l', 'l' };
+static const symbol s_1_8[2] = { 'm', 'm' };
+static const symbol s_1_9[2] = { 'n', 'n' };
+static const symbol s_1_10[2] = { 'p', 'p' };
+static const symbol s_1_11[2] = { 'r', 'r' };
+static const symbol s_1_12[3] = { 'c', 'c', 's' };
+static const symbol s_1_13[2] = { 's', 's' };
+static const symbol s_1_14[3] = { 'z', 'z', 's' };
+static const symbol s_1_15[2] = { 't', 't' };
+static const symbol s_1_16[2] = { 'v', 'v' };
+static const symbol s_1_17[3] = { 'g', 'g', 'y' };
+static const symbol s_1_18[3] = { 'l', 'l', 'y' };
+static const symbol s_1_19[3] = { 'n', 'n', 'y' };
+static const symbol s_1_20[3] = { 't', 't', 'y' };
+static const symbol s_1_21[3] = { 's', 's', 'z' };
+static const symbol s_1_22[2] = { 'z', 'z' };
+static const struct among a_1[23] = {
+{ 2, s_1_0, 0, -1, 0},
+{ 2, s_1_1, 0, -1, 0},
+{ 2, s_1_2, 0, -1, 0},
+{ 2, s_1_3, 0, -1, 0},
+{ 2, s_1_4, 0, -1, 0},
+{ 2, s_1_5, 0, -1, 0},
+{ 2, s_1_6, 0, -1, 0},
+{ 2, s_1_7, 0, -1, 0},
+{ 2, s_1_8, 0, -1, 0},
+{ 2, s_1_9, 0, -1, 0},
+{ 2, s_1_10, 0, -1, 0},
+{ 2, s_1_11, 0, -1, 0},
+{ 3, s_1_12, 0, -1, 0},
+{ 2, s_1_13, 0, -1, 0},
+{ 3, s_1_14, 0, -1, 0},
+{ 2, s_1_15, 0, -1, 0},
+{ 2, s_1_16, 0, -1, 0},
+{ 3, s_1_17, 0, -1, 0},
+{ 3, s_1_18, 0, -1, 0},
+{ 3, s_1_19, 0, -1, 0},
+{ 3, s_1_20, 0, -1, 0},
+{ 3, s_1_21, 0, -1, 0},
+{ 2, s_1_22, 0, -1, 0}
};
-static const symbol s_4_0[2] = { 'b', 'a' };
-static const symbol s_4_1[2] = { 'r', 'a' };
-static const symbol s_4_2[2] = { 'b', 'e' };
-static const symbol s_4_3[2] = { 'r', 'e' };
-static const symbol s_4_4[2] = { 'i', 'g' };
-static const symbol s_4_5[3] = { 'n', 'a', 'k' };
-static const symbol s_4_6[3] = { 'n', 'e', 'k' };
-static const symbol s_4_7[3] = { 'v', 'a', 'l' };
-static const symbol s_4_8[3] = { 'v', 'e', 'l' };
-static const symbol s_4_9[2] = { 'u', 'l' };
-static const symbol s_4_10[3] = { 'n', 0xE1, 'l' };
-static const symbol s_4_11[3] = { 'n', 0xE9, 'l' };
-static const symbol s_4_12[3] = { 'b', 0xF3, 'l' };
-static const symbol s_4_13[3] = { 'r', 0xF3, 'l' };
-static const symbol s_4_14[3] = { 't', 0xF3, 'l' };
-static const symbol s_4_15[3] = { 'b', 0xF5, 'l' };
-static const symbol s_4_16[3] = { 'r', 0xF5, 'l' };
-static const symbol s_4_17[3] = { 't', 0xF5, 'l' };
-static const symbol s_4_18[2] = { 0xFC, 'l' };
-static const symbol s_4_19[1] = { 'n' };
-static const symbol s_4_20[2] = { 'a', 'n' };
-static const symbol s_4_21[3] = { 'b', 'a', 'n' };
-static const symbol s_4_22[2] = { 'e', 'n' };
-static const symbol s_4_23[3] = { 'b', 'e', 'n' };
-static const symbol s_4_24[6] = { 'k', 0xE9, 'p', 'p', 'e', 'n' };
-static const symbol s_4_25[2] = { 'o', 'n' };
-static const symbol s_4_26[2] = { 0xF6, 'n' };
-static const symbol s_4_27[4] = { 'k', 0xE9, 'p', 'p' };
-static const symbol s_4_28[3] = { 'k', 'o', 'r' };
-static const symbol s_4_29[1] = { 't' };
-static const symbol s_4_30[2] = { 'a', 't' };
-static const symbol s_4_31[2] = { 'e', 't' };
-static const symbol s_4_32[4] = { 'k', 0xE9, 'n', 't' };
-static const symbol s_4_33[6] = { 'a', 'n', 'k', 0xE9, 'n', 't' };
-static const symbol s_4_34[6] = { 'e', 'n', 'k', 0xE9, 'n', 't' };
-static const symbol s_4_35[6] = { 'o', 'n', 'k', 0xE9, 'n', 't' };
-static const symbol s_4_36[2] = { 'o', 't' };
-static const symbol s_4_37[3] = { 0xE9, 'r', 't' };
-static const symbol s_4_38[2] = { 0xF6, 't' };
-static const symbol s_4_39[3] = { 'h', 'e', 'z' };
-static const symbol s_4_40[3] = { 'h', 'o', 'z' };
-static const symbol s_4_41[3] = { 'h', 0xF6, 'z' };
-static const symbol s_4_42[2] = { 'v', 0xE1 };
-static const symbol s_4_43[2] = { 'v', 0xE9 };
-
-static const struct among a_4[44] =
-{
-{ 2, s_4_0, -1, -1, 0},
-{ 2, s_4_1, -1, -1, 0},
-{ 2, s_4_2, -1, -1, 0},
-{ 2, s_4_3, -1, -1, 0},
-{ 2, s_4_4, -1, -1, 0},
-{ 3, s_4_5, -1, -1, 0},
-{ 3, s_4_6, -1, -1, 0},
-{ 3, s_4_7, -1, -1, 0},
-{ 3, s_4_8, -1, -1, 0},
-{ 2, s_4_9, -1, -1, 0},
-{ 3, s_4_10, -1, -1, 0},
-{ 3, s_4_11, -1, -1, 0},
-{ 3, s_4_12, -1, -1, 0},
-{ 3, s_4_13, -1, -1, 0},
-{ 3, s_4_14, -1, -1, 0},
-{ 3, s_4_15, -1, -1, 0},
-{ 3, s_4_16, -1, -1, 0},
-{ 3, s_4_17, -1, -1, 0},
-{ 2, s_4_18, -1, -1, 0},
-{ 1, s_4_19, -1, -1, 0},
-{ 2, s_4_20, 19, -1, 0},
-{ 3, s_4_21, 20, -1, 0},
-{ 2, s_4_22, 19, -1, 0},
-{ 3, s_4_23, 22, -1, 0},
-{ 6, s_4_24, 22, -1, 0},
-{ 2, s_4_25, 19, -1, 0},
-{ 2, s_4_26, 19, -1, 0},
-{ 4, s_4_27, -1, -1, 0},
-{ 3, s_4_28, -1, -1, 0},
-{ 1, s_4_29, -1, -1, 0},
-{ 2, s_4_30, 29, -1, 0},
-{ 2, s_4_31, 29, -1, 0},
-{ 4, s_4_32, 29, -1, 0},
-{ 6, s_4_33, 32, -1, 0},
-{ 6, s_4_34, 32, -1, 0},
-{ 6, s_4_35, 32, -1, 0},
-{ 2, s_4_36, 29, -1, 0},
-{ 3, s_4_37, 29, -1, 0},
-{ 2, s_4_38, 29, -1, 0},
-{ 3, s_4_39, -1, -1, 0},
-{ 3, s_4_40, -1, -1, 0},
-{ 3, s_4_41, -1, -1, 0},
-{ 2, s_4_42, -1, -1, 0},
-{ 2, s_4_43, -1, -1, 0}
+static const symbol s_2_0[2] = { 'a', 'l' };
+static const symbol s_2_1[2] = { 'e', 'l' };
+static const struct among a_2[2] = {
+{ 2, s_2_0, 0, 1, 0},
+{ 2, s_2_1, 0, 1, 0}
};
-static const symbol s_5_0[2] = { 0xE1, 'n' };
-static const symbol s_5_1[2] = { 0xE9, 'n' };
-static const symbol s_5_2[6] = { 0xE1, 'n', 'k', 0xE9, 'n', 't' };
-
-static const struct among a_5[3] =
-{
-{ 2, s_5_0, -1, 2, 0},
-{ 2, s_5_1, -1, 1, 0},
-{ 6, s_5_2, -1, 2, 0}
+static const symbol s_3_0[2] = { 'b', 'a' };
+static const symbol s_3_1[2] = { 'r', 'a' };
+static const symbol s_3_2[2] = { 'b', 'e' };
+static const symbol s_3_3[2] = { 'r', 'e' };
+static const symbol s_3_4[2] = { 'i', 'g' };
+static const symbol s_3_5[3] = { 'n', 'a', 'k' };
+static const symbol s_3_6[3] = { 'n', 'e', 'k' };
+static const symbol s_3_7[3] = { 'v', 'a', 'l' };
+static const symbol s_3_8[3] = { 'v', 'e', 'l' };
+static const symbol s_3_9[2] = { 'u', 'l' };
+static const symbol s_3_10[3] = { 'n', 0xE1, 'l' };
+static const symbol s_3_11[3] = { 'n', 0xE9, 'l' };
+static const symbol s_3_12[3] = { 'b', 0xF3, 'l' };
+static const symbol s_3_13[3] = { 'r', 0xF3, 'l' };
+static const symbol s_3_14[3] = { 't', 0xF3, 'l' };
+static const symbol s_3_15[3] = { 'b', 0xF5, 'l' };
+static const symbol s_3_16[3] = { 'r', 0xF5, 'l' };
+static const symbol s_3_17[3] = { 't', 0xF5, 'l' };
+static const symbol s_3_18[2] = { 0xFC, 'l' };
+static const symbol s_3_19[1] = { 'n' };
+static const symbol s_3_20[2] = { 'a', 'n' };
+static const symbol s_3_21[3] = { 'b', 'a', 'n' };
+static const symbol s_3_22[2] = { 'e', 'n' };
+static const symbol s_3_23[3] = { 'b', 'e', 'n' };
+static const symbol s_3_24[6] = { 'k', 0xE9, 'p', 'p', 'e', 'n' };
+static const symbol s_3_25[2] = { 'o', 'n' };
+static const symbol s_3_26[2] = { 0xF6, 'n' };
+static const symbol s_3_27[4] = { 'k', 0xE9, 'p', 'p' };
+static const symbol s_3_28[3] = { 'k', 'o', 'r' };
+static const symbol s_3_29[1] = { 't' };
+static const symbol s_3_30[2] = { 'a', 't' };
+static const symbol s_3_31[2] = { 'e', 't' };
+static const symbol s_3_32[4] = { 'k', 0xE9, 'n', 't' };
+static const symbol s_3_33[6] = { 'a', 'n', 'k', 0xE9, 'n', 't' };
+static const symbol s_3_34[6] = { 'e', 'n', 'k', 0xE9, 'n', 't' };
+static const symbol s_3_35[6] = { 'o', 'n', 'k', 0xE9, 'n', 't' };
+static const symbol s_3_36[2] = { 'o', 't' };
+static const symbol s_3_37[3] = { 0xE9, 'r', 't' };
+static const symbol s_3_38[2] = { 0xF6, 't' };
+static const symbol s_3_39[3] = { 'h', 'e', 'z' };
+static const symbol s_3_40[3] = { 'h', 'o', 'z' };
+static const symbol s_3_41[3] = { 'h', 0xF6, 'z' };
+static const symbol s_3_42[2] = { 'v', 0xE1 };
+static const symbol s_3_43[2] = { 'v', 0xE9 };
+static const struct among a_3[44] = {
+{ 2, s_3_0, 0, -1, 0},
+{ 2, s_3_1, 0, -1, 0},
+{ 2, s_3_2, 0, -1, 0},
+{ 2, s_3_3, 0, -1, 0},
+{ 2, s_3_4, 0, -1, 0},
+{ 3, s_3_5, 0, -1, 0},
+{ 3, s_3_6, 0, -1, 0},
+{ 3, s_3_7, 0, -1, 0},
+{ 3, s_3_8, 0, -1, 0},
+{ 2, s_3_9, 0, -1, 0},
+{ 3, s_3_10, 0, -1, 0},
+{ 3, s_3_11, 0, -1, 0},
+{ 3, s_3_12, 0, -1, 0},
+{ 3, s_3_13, 0, -1, 0},
+{ 3, s_3_14, 0, -1, 0},
+{ 3, s_3_15, 0, -1, 0},
+{ 3, s_3_16, 0, -1, 0},
+{ 3, s_3_17, 0, -1, 0},
+{ 2, s_3_18, 0, -1, 0},
+{ 1, s_3_19, 0, -1, 0},
+{ 2, s_3_20, -1, -1, 0},
+{ 3, s_3_21, -1, -1, 0},
+{ 2, s_3_22, -3, -1, 0},
+{ 3, s_3_23, -1, -1, 0},
+{ 6, s_3_24, -2, -1, 0},
+{ 2, s_3_25, -6, -1, 0},
+{ 2, s_3_26, -7, -1, 0},
+{ 4, s_3_27, 0, -1, 0},
+{ 3, s_3_28, 0, -1, 0},
+{ 1, s_3_29, 0, -1, 0},
+{ 2, s_3_30, -1, -1, 0},
+{ 2, s_3_31, -2, -1, 0},
+{ 4, s_3_32, -3, -1, 0},
+{ 6, s_3_33, -1, -1, 0},
+{ 6, s_3_34, -2, -1, 0},
+{ 6, s_3_35, -3, -1, 0},
+{ 2, s_3_36, -7, -1, 0},
+{ 3, s_3_37, -8, -1, 0},
+{ 2, s_3_38, -9, -1, 0},
+{ 3, s_3_39, 0, -1, 0},
+{ 3, s_3_40, 0, -1, 0},
+{ 3, s_3_41, 0, -1, 0},
+{ 2, s_3_42, 0, -1, 0},
+{ 2, s_3_43, 0, -1, 0}
};
-static const symbol s_6_0[4] = { 's', 't', 'u', 'l' };
-static const symbol s_6_1[5] = { 'a', 's', 't', 'u', 'l' };
-static const symbol s_6_2[5] = { 0xE1, 's', 't', 'u', 'l' };
-static const symbol s_6_3[4] = { 's', 't', 0xFC, 'l' };
-static const symbol s_6_4[5] = { 'e', 's', 't', 0xFC, 'l' };
-static const symbol s_6_5[5] = { 0xE9, 's', 't', 0xFC, 'l' };
-
-static const struct among a_6[6] =
-{
-{ 4, s_6_0, -1, 1, 0},
-{ 5, s_6_1, 0, 1, 0},
-{ 5, s_6_2, 0, 2, 0},
-{ 4, s_6_3, -1, 1, 0},
-{ 5, s_6_4, 3, 1, 0},
-{ 5, s_6_5, 3, 3, 0}
+static const symbol s_4_0[2] = { 0xE1, 'n' };
+static const symbol s_4_1[2] = { 0xE9, 'n' };
+static const symbol s_4_2[6] = { 0xE1, 'n', 'k', 0xE9, 'n', 't' };
+static const struct among a_4[3] = {
+{ 2, s_4_0, 0, 2, 0},
+{ 2, s_4_1, 0, 1, 0},
+{ 6, s_4_2, 0, 2, 0}
};
-static const symbol s_7_0[1] = { 0xE1 };
-static const symbol s_7_1[1] = { 0xE9 };
-
-static const struct among a_7[2] =
-{
-{ 1, s_7_0, -1, 1, 0},
-{ 1, s_7_1, -1, 1, 0}
+static const symbol s_5_0[4] = { 's', 't', 'u', 'l' };
+static const symbol s_5_1[5] = { 'a', 's', 't', 'u', 'l' };
+static const symbol s_5_2[5] = { 0xE1, 's', 't', 'u', 'l' };
+static const symbol s_5_3[4] = { 's', 't', 0xFC, 'l' };
+static const symbol s_5_4[5] = { 'e', 's', 't', 0xFC, 'l' };
+static const symbol s_5_5[5] = { 0xE9, 's', 't', 0xFC, 'l' };
+static const struct among a_5[6] = {
+{ 4, s_5_0, 0, 1, 0},
+{ 5, s_5_1, -1, 1, 0},
+{ 5, s_5_2, -2, 2, 0},
+{ 4, s_5_3, 0, 1, 0},
+{ 5, s_5_4, -1, 1, 0},
+{ 5, s_5_5, -2, 3, 0}
};
-static const symbol s_8_0[1] = { 'k' };
-static const symbol s_8_1[2] = { 'a', 'k' };
-static const symbol s_8_2[2] = { 'e', 'k' };
-static const symbol s_8_3[2] = { 'o', 'k' };
-static const symbol s_8_4[2] = { 0xE1, 'k' };
-static const symbol s_8_5[2] = { 0xE9, 'k' };
-static const symbol s_8_6[2] = { 0xF6, 'k' };
-
-static const struct among a_8[7] =
-{
-{ 1, s_8_0, -1, 3, 0},
-{ 2, s_8_1, 0, 3, 0},
-{ 2, s_8_2, 0, 3, 0},
-{ 2, s_8_3, 0, 3, 0},
-{ 2, s_8_4, 0, 1, 0},
-{ 2, s_8_5, 0, 2, 0},
-{ 2, s_8_6, 0, 3, 0}
+static const symbol s_7_0[1] = { 'k' };
+static const symbol s_7_1[2] = { 'a', 'k' };
+static const symbol s_7_2[2] = { 'e', 'k' };
+static const symbol s_7_3[2] = { 'o', 'k' };
+static const symbol s_7_4[2] = { 0xE1, 'k' };
+static const symbol s_7_5[2] = { 0xE9, 'k' };
+static const symbol s_7_6[2] = { 0xF6, 'k' };
+static const struct among a_7[7] = {
+{ 1, s_7_0, 0, 3, 0},
+{ 2, s_7_1, -1, 3, 0},
+{ 2, s_7_2, -2, 3, 0},
+{ 2, s_7_3, -3, 3, 0},
+{ 2, s_7_4, -4, 1, 0},
+{ 2, s_7_5, -5, 2, 0},
+{ 2, s_7_6, -6, 3, 0}
};
-static const symbol s_9_0[2] = { 0xE9, 'i' };
-static const symbol s_9_1[3] = { 0xE1, 0xE9, 'i' };
-static const symbol s_9_2[3] = { 0xE9, 0xE9, 'i' };
-static const symbol s_9_3[1] = { 0xE9 };
-static const symbol s_9_4[2] = { 'k', 0xE9 };
-static const symbol s_9_5[3] = { 'a', 'k', 0xE9 };
-static const symbol s_9_6[3] = { 'e', 'k', 0xE9 };
-static const symbol s_9_7[3] = { 'o', 'k', 0xE9 };
-static const symbol s_9_8[3] = { 0xE1, 'k', 0xE9 };
-static const symbol s_9_9[3] = { 0xE9, 'k', 0xE9 };
-static const symbol s_9_10[3] = { 0xF6, 'k', 0xE9 };
-static const symbol s_9_11[2] = { 0xE9, 0xE9 };
-
-static const struct among a_9[12] =
-{
-{ 2, s_9_0, -1, 1, 0},
-{ 3, s_9_1, 0, 3, 0},
-{ 3, s_9_2, 0, 2, 0},
-{ 1, s_9_3, -1, 1, 0},
-{ 2, s_9_4, 3, 1, 0},
-{ 3, s_9_5, 4, 1, 0},
-{ 3, s_9_6, 4, 1, 0},
-{ 3, s_9_7, 4, 1, 0},
-{ 3, s_9_8, 4, 3, 0},
-{ 3, s_9_9, 4, 2, 0},
-{ 3, s_9_10, 4, 1, 0},
-{ 2, s_9_11, 3, 2, 0}
+static const symbol s_8_0[2] = { 0xE9, 'i' };
+static const symbol s_8_1[3] = { 0xE1, 0xE9, 'i' };
+static const symbol s_8_2[3] = { 0xE9, 0xE9, 'i' };
+static const symbol s_8_3[1] = { 0xE9 };
+static const symbol s_8_4[2] = { 'k', 0xE9 };
+static const symbol s_8_5[3] = { 'a', 'k', 0xE9 };
+static const symbol s_8_6[3] = { 'e', 'k', 0xE9 };
+static const symbol s_8_7[3] = { 'o', 'k', 0xE9 };
+static const symbol s_8_8[3] = { 0xE1, 'k', 0xE9 };
+static const symbol s_8_9[3] = { 0xE9, 'k', 0xE9 };
+static const symbol s_8_10[3] = { 0xF6, 'k', 0xE9 };
+static const symbol s_8_11[2] = { 0xE9, 0xE9 };
+static const struct among a_8[12] = {
+{ 2, s_8_0, 0, 1, 0},
+{ 3, s_8_1, -1, 3, 0},
+{ 3, s_8_2, -2, 2, 0},
+{ 1, s_8_3, 0, 1, 0},
+{ 2, s_8_4, -1, 1, 0},
+{ 3, s_8_5, -1, 1, 0},
+{ 3, s_8_6, -2, 1, 0},
+{ 3, s_8_7, -3, 1, 0},
+{ 3, s_8_8, -4, 3, 0},
+{ 3, s_8_9, -5, 2, 0},
+{ 3, s_8_10, -6, 1, 0},
+{ 2, s_8_11, -8, 2, 0}
};
-static const symbol s_10_0[1] = { 'a' };
-static const symbol s_10_1[2] = { 'j', 'a' };
-static const symbol s_10_2[1] = { 'd' };
-static const symbol s_10_3[2] = { 'a', 'd' };
-static const symbol s_10_4[2] = { 'e', 'd' };
-static const symbol s_10_5[2] = { 'o', 'd' };
-static const symbol s_10_6[2] = { 0xE1, 'd' };
-static const symbol s_10_7[2] = { 0xE9, 'd' };
-static const symbol s_10_8[2] = { 0xF6, 'd' };
-static const symbol s_10_9[1] = { 'e' };
-static const symbol s_10_10[2] = { 'j', 'e' };
-static const symbol s_10_11[2] = { 'n', 'k' };
-static const symbol s_10_12[3] = { 'u', 'n', 'k' };
-static const symbol s_10_13[3] = { 0xE1, 'n', 'k' };
-static const symbol s_10_14[3] = { 0xE9, 'n', 'k' };
-static const symbol s_10_15[3] = { 0xFC, 'n', 'k' };
-static const symbol s_10_16[2] = { 'u', 'k' };
-static const symbol s_10_17[3] = { 'j', 'u', 'k' };
-static const symbol s_10_18[4] = { 0xE1, 'j', 'u', 'k' };
-static const symbol s_10_19[2] = { 0xFC, 'k' };
-static const symbol s_10_20[3] = { 'j', 0xFC, 'k' };
-static const symbol s_10_21[4] = { 0xE9, 'j', 0xFC, 'k' };
-static const symbol s_10_22[1] = { 'm' };
-static const symbol s_10_23[2] = { 'a', 'm' };
-static const symbol s_10_24[2] = { 'e', 'm' };
-static const symbol s_10_25[2] = { 'o', 'm' };
-static const symbol s_10_26[2] = { 0xE1, 'm' };
-static const symbol s_10_27[2] = { 0xE9, 'm' };
-static const symbol s_10_28[1] = { 'o' };
-static const symbol s_10_29[1] = { 0xE1 };
-static const symbol s_10_30[1] = { 0xE9 };
-
-static const struct among a_10[31] =
-{
-{ 1, s_10_0, -1, 1, 0},
-{ 2, s_10_1, 0, 1, 0},
-{ 1, s_10_2, -1, 1, 0},
-{ 2, s_10_3, 2, 1, 0},
-{ 2, s_10_4, 2, 1, 0},
-{ 2, s_10_5, 2, 1, 0},
-{ 2, s_10_6, 2, 2, 0},
-{ 2, s_10_7, 2, 3, 0},
-{ 2, s_10_8, 2, 1, 0},
-{ 1, s_10_9, -1, 1, 0},
-{ 2, s_10_10, 9, 1, 0},
-{ 2, s_10_11, -1, 1, 0},
-{ 3, s_10_12, 11, 1, 0},
-{ 3, s_10_13, 11, 2, 0},
-{ 3, s_10_14, 11, 3, 0},
-{ 3, s_10_15, 11, 1, 0},
-{ 2, s_10_16, -1, 1, 0},
-{ 3, s_10_17, 16, 1, 0},
-{ 4, s_10_18, 17, 2, 0},
-{ 2, s_10_19, -1, 1, 0},
-{ 3, s_10_20, 19, 1, 0},
-{ 4, s_10_21, 20, 3, 0},
-{ 1, s_10_22, -1, 1, 0},
-{ 2, s_10_23, 22, 1, 0},
-{ 2, s_10_24, 22, 1, 0},
-{ 2, s_10_25, 22, 1, 0},
-{ 2, s_10_26, 22, 2, 0},
-{ 2, s_10_27, 22, 3, 0},
-{ 1, s_10_28, -1, 1, 0},
-{ 1, s_10_29, -1, 2, 0},
-{ 1, s_10_30, -1, 3, 0}
+static const symbol s_9_0[1] = { 'a' };
+static const symbol s_9_1[2] = { 'j', 'a' };
+static const symbol s_9_2[1] = { 'd' };
+static const symbol s_9_3[2] = { 'a', 'd' };
+static const symbol s_9_4[2] = { 'e', 'd' };
+static const symbol s_9_5[2] = { 'o', 'd' };
+static const symbol s_9_6[2] = { 0xE1, 'd' };
+static const symbol s_9_7[2] = { 0xE9, 'd' };
+static const symbol s_9_8[2] = { 0xF6, 'd' };
+static const symbol s_9_9[1] = { 'e' };
+static const symbol s_9_10[2] = { 'j', 'e' };
+static const symbol s_9_11[2] = { 'n', 'k' };
+static const symbol s_9_12[3] = { 'u', 'n', 'k' };
+static const symbol s_9_13[3] = { 0xE1, 'n', 'k' };
+static const symbol s_9_14[3] = { 0xE9, 'n', 'k' };
+static const symbol s_9_15[3] = { 0xFC, 'n', 'k' };
+static const symbol s_9_16[2] = { 'u', 'k' };
+static const symbol s_9_17[3] = { 'j', 'u', 'k' };
+static const symbol s_9_18[4] = { 0xE1, 'j', 'u', 'k' };
+static const symbol s_9_19[2] = { 0xFC, 'k' };
+static const symbol s_9_20[3] = { 'j', 0xFC, 'k' };
+static const symbol s_9_21[4] = { 0xE9, 'j', 0xFC, 'k' };
+static const symbol s_9_22[1] = { 'm' };
+static const symbol s_9_23[2] = { 'a', 'm' };
+static const symbol s_9_24[2] = { 'e', 'm' };
+static const symbol s_9_25[2] = { 'o', 'm' };
+static const symbol s_9_26[2] = { 0xE1, 'm' };
+static const symbol s_9_27[2] = { 0xE9, 'm' };
+static const symbol s_9_28[1] = { 'o' };
+static const symbol s_9_29[1] = { 0xE1 };
+static const symbol s_9_30[1] = { 0xE9 };
+static const struct among a_9[31] = {
+{ 1, s_9_0, 0, 1, 0},
+{ 2, s_9_1, -1, 1, 0},
+{ 1, s_9_2, 0, 1, 0},
+{ 2, s_9_3, -1, 1, 0},
+{ 2, s_9_4, -2, 1, 0},
+{ 2, s_9_5, -3, 1, 0},
+{ 2, s_9_6, -4, 2, 0},
+{ 2, s_9_7, -5, 3, 0},
+{ 2, s_9_8, -6, 1, 0},
+{ 1, s_9_9, 0, 1, 0},
+{ 2, s_9_10, -1, 1, 0},
+{ 2, s_9_11, 0, 1, 0},
+{ 3, s_9_12, -1, 1, 0},
+{ 3, s_9_13, -2, 2, 0},
+{ 3, s_9_14, -3, 3, 0},
+{ 3, s_9_15, -4, 1, 0},
+{ 2, s_9_16, 0, 1, 0},
+{ 3, s_9_17, -1, 1, 0},
+{ 4, s_9_18, -1, 2, 0},
+{ 2, s_9_19, 0, 1, 0},
+{ 3, s_9_20, -1, 1, 0},
+{ 4, s_9_21, -1, 3, 0},
+{ 1, s_9_22, 0, 1, 0},
+{ 2, s_9_23, -1, 1, 0},
+{ 2, s_9_24, -2, 1, 0},
+{ 2, s_9_25, -3, 1, 0},
+{ 2, s_9_26, -4, 2, 0},
+{ 2, s_9_27, -5, 3, 0},
+{ 1, s_9_28, 0, 1, 0},
+{ 1, s_9_29, 0, 2, 0},
+{ 1, s_9_30, 0, 3, 0}
};
-static const symbol s_11_0[2] = { 'i', 'd' };
-static const symbol s_11_1[3] = { 'a', 'i', 'd' };
-static const symbol s_11_2[4] = { 'j', 'a', 'i', 'd' };
-static const symbol s_11_3[3] = { 'e', 'i', 'd' };
-static const symbol s_11_4[4] = { 'j', 'e', 'i', 'd' };
-static const symbol s_11_5[3] = { 0xE1, 'i', 'd' };
-static const symbol s_11_6[3] = { 0xE9, 'i', 'd' };
-static const symbol s_11_7[1] = { 'i' };
-static const symbol s_11_8[2] = { 'a', 'i' };
-static const symbol s_11_9[3] = { 'j', 'a', 'i' };
-static const symbol s_11_10[2] = { 'e', 'i' };
-static const symbol s_11_11[3] = { 'j', 'e', 'i' };
-static const symbol s_11_12[2] = { 0xE1, 'i' };
-static const symbol s_11_13[2] = { 0xE9, 'i' };
-static const symbol s_11_14[4] = { 'i', 't', 'e', 'k' };
-static const symbol s_11_15[5] = { 'e', 'i', 't', 'e', 'k' };
-static const symbol s_11_16[6] = { 'j', 'e', 'i', 't', 'e', 'k' };
-static const symbol s_11_17[5] = { 0xE9, 'i', 't', 'e', 'k' };
-static const symbol s_11_18[2] = { 'i', 'k' };
-static const symbol s_11_19[3] = { 'a', 'i', 'k' };
-static const symbol s_11_20[4] = { 'j', 'a', 'i', 'k' };
-static const symbol s_11_21[3] = { 'e', 'i', 'k' };
-static const symbol s_11_22[4] = { 'j', 'e', 'i', 'k' };
-static const symbol s_11_23[3] = { 0xE1, 'i', 'k' };
-static const symbol s_11_24[3] = { 0xE9, 'i', 'k' };
-static const symbol s_11_25[3] = { 'i', 'n', 'k' };
-static const symbol s_11_26[4] = { 'a', 'i', 'n', 'k' };
-static const symbol s_11_27[5] = { 'j', 'a', 'i', 'n', 'k' };
-static const symbol s_11_28[4] = { 'e', 'i', 'n', 'k' };
-static const symbol s_11_29[5] = { 'j', 'e', 'i', 'n', 'k' };
-static const symbol s_11_30[4] = { 0xE1, 'i', 'n', 'k' };
-static const symbol s_11_31[4] = { 0xE9, 'i', 'n', 'k' };
-static const symbol s_11_32[5] = { 'a', 'i', 't', 'o', 'k' };
-static const symbol s_11_33[6] = { 'j', 'a', 'i', 't', 'o', 'k' };
-static const symbol s_11_34[5] = { 0xE1, 'i', 't', 'o', 'k' };
-static const symbol s_11_35[2] = { 'i', 'm' };
-static const symbol s_11_36[3] = { 'a', 'i', 'm' };
-static const symbol s_11_37[4] = { 'j', 'a', 'i', 'm' };
-static const symbol s_11_38[3] = { 'e', 'i', 'm' };
-static const symbol s_11_39[4] = { 'j', 'e', 'i', 'm' };
-static const symbol s_11_40[3] = { 0xE1, 'i', 'm' };
-static const symbol s_11_41[3] = { 0xE9, 'i', 'm' };
-
-static const struct among a_11[42] =
-{
-{ 2, s_11_0, -1, 1, 0},
-{ 3, s_11_1, 0, 1, 0},
-{ 4, s_11_2, 1, 1, 0},
-{ 3, s_11_3, 0, 1, 0},
-{ 4, s_11_4, 3, 1, 0},
-{ 3, s_11_5, 0, 2, 0},
-{ 3, s_11_6, 0, 3, 0},
-{ 1, s_11_7, -1, 1, 0},
-{ 2, s_11_8, 7, 1, 0},
-{ 3, s_11_9, 8, 1, 0},
-{ 2, s_11_10, 7, 1, 0},
-{ 3, s_11_11, 10, 1, 0},
-{ 2, s_11_12, 7, 2, 0},
-{ 2, s_11_13, 7, 3, 0},
-{ 4, s_11_14, -1, 1, 0},
-{ 5, s_11_15, 14, 1, 0},
-{ 6, s_11_16, 15, 1, 0},
-{ 5, s_11_17, 14, 3, 0},
-{ 2, s_11_18, -1, 1, 0},
-{ 3, s_11_19, 18, 1, 0},
-{ 4, s_11_20, 19, 1, 0},
-{ 3, s_11_21, 18, 1, 0},
-{ 4, s_11_22, 21, 1, 0},
-{ 3, s_11_23, 18, 2, 0},
-{ 3, s_11_24, 18, 3, 0},
-{ 3, s_11_25, -1, 1, 0},
-{ 4, s_11_26, 25, 1, 0},
-{ 5, s_11_27, 26, 1, 0},
-{ 4, s_11_28, 25, 1, 0},
-{ 5, s_11_29, 28, 1, 0},
-{ 4, s_11_30, 25, 2, 0},
-{ 4, s_11_31, 25, 3, 0},
-{ 5, s_11_32, -1, 1, 0},
-{ 6, s_11_33, 32, 1, 0},
-{ 5, s_11_34, -1, 2, 0},
-{ 2, s_11_35, -1, 1, 0},
-{ 3, s_11_36, 35, 1, 0},
-{ 4, s_11_37, 36, 1, 0},
-{ 3, s_11_38, 35, 1, 0},
-{ 4, s_11_39, 38, 1, 0},
-{ 3, s_11_40, 35, 2, 0},
-{ 3, s_11_41, 35, 3, 0}
+static const symbol s_10_0[2] = { 'i', 'd' };
+static const symbol s_10_1[3] = { 'a', 'i', 'd' };
+static const symbol s_10_2[4] = { 'j', 'a', 'i', 'd' };
+static const symbol s_10_3[3] = { 'e', 'i', 'd' };
+static const symbol s_10_4[4] = { 'j', 'e', 'i', 'd' };
+static const symbol s_10_5[3] = { 0xE1, 'i', 'd' };
+static const symbol s_10_6[3] = { 0xE9, 'i', 'd' };
+static const symbol s_10_7[1] = { 'i' };
+static const symbol s_10_8[2] = { 'a', 'i' };
+static const symbol s_10_9[3] = { 'j', 'a', 'i' };
+static const symbol s_10_10[2] = { 'e', 'i' };
+static const symbol s_10_11[3] = { 'j', 'e', 'i' };
+static const symbol s_10_12[2] = { 0xE1, 'i' };
+static const symbol s_10_13[2] = { 0xE9, 'i' };
+static const symbol s_10_14[4] = { 'i', 't', 'e', 'k' };
+static const symbol s_10_15[5] = { 'e', 'i', 't', 'e', 'k' };
+static const symbol s_10_16[6] = { 'j', 'e', 'i', 't', 'e', 'k' };
+static const symbol s_10_17[5] = { 0xE9, 'i', 't', 'e', 'k' };
+static const symbol s_10_18[2] = { 'i', 'k' };
+static const symbol s_10_19[3] = { 'a', 'i', 'k' };
+static const symbol s_10_20[4] = { 'j', 'a', 'i', 'k' };
+static const symbol s_10_21[3] = { 'e', 'i', 'k' };
+static const symbol s_10_22[4] = { 'j', 'e', 'i', 'k' };
+static const symbol s_10_23[3] = { 0xE1, 'i', 'k' };
+static const symbol s_10_24[3] = { 0xE9, 'i', 'k' };
+static const symbol s_10_25[3] = { 'i', 'n', 'k' };
+static const symbol s_10_26[4] = { 'a', 'i', 'n', 'k' };
+static const symbol s_10_27[5] = { 'j', 'a', 'i', 'n', 'k' };
+static const symbol s_10_28[4] = { 'e', 'i', 'n', 'k' };
+static const symbol s_10_29[5] = { 'j', 'e', 'i', 'n', 'k' };
+static const symbol s_10_30[4] = { 0xE1, 'i', 'n', 'k' };
+static const symbol s_10_31[4] = { 0xE9, 'i', 'n', 'k' };
+static const symbol s_10_32[5] = { 'a', 'i', 't', 'o', 'k' };
+static const symbol s_10_33[6] = { 'j', 'a', 'i', 't', 'o', 'k' };
+static const symbol s_10_34[5] = { 0xE1, 'i', 't', 'o', 'k' };
+static const symbol s_10_35[2] = { 'i', 'm' };
+static const symbol s_10_36[3] = { 'a', 'i', 'm' };
+static const symbol s_10_37[4] = { 'j', 'a', 'i', 'm' };
+static const symbol s_10_38[3] = { 'e', 'i', 'm' };
+static const symbol s_10_39[4] = { 'j', 'e', 'i', 'm' };
+static const symbol s_10_40[3] = { 0xE1, 'i', 'm' };
+static const symbol s_10_41[3] = { 0xE9, 'i', 'm' };
+static const struct among a_10[42] = {
+{ 2, s_10_0, 0, 1, 0},
+{ 3, s_10_1, -1, 1, 0},
+{ 4, s_10_2, -1, 1, 0},
+{ 3, s_10_3, -3, 1, 0},
+{ 4, s_10_4, -1, 1, 0},
+{ 3, s_10_5, -5, 2, 0},
+{ 3, s_10_6, -6, 3, 0},
+{ 1, s_10_7, 0, 1, 0},
+{ 2, s_10_8, -1, 1, 0},
+{ 3, s_10_9, -1, 1, 0},
+{ 2, s_10_10, -3, 1, 0},
+{ 3, s_10_11, -1, 1, 0},
+{ 2, s_10_12, -5, 2, 0},
+{ 2, s_10_13, -6, 3, 0},
+{ 4, s_10_14, 0, 1, 0},
+{ 5, s_10_15, -1, 1, 0},
+{ 6, s_10_16, -1, 1, 0},
+{ 5, s_10_17, -3, 3, 0},
+{ 2, s_10_18, 0, 1, 0},
+{ 3, s_10_19, -1, 1, 0},
+{ 4, s_10_20, -1, 1, 0},
+{ 3, s_10_21, -3, 1, 0},
+{ 4, s_10_22, -1, 1, 0},
+{ 3, s_10_23, -5, 2, 0},
+{ 3, s_10_24, -6, 3, 0},
+{ 3, s_10_25, 0, 1, 0},
+{ 4, s_10_26, -1, 1, 0},
+{ 5, s_10_27, -1, 1, 0},
+{ 4, s_10_28, -3, 1, 0},
+{ 5, s_10_29, -1, 1, 0},
+{ 4, s_10_30, -5, 2, 0},
+{ 4, s_10_31, -6, 3, 0},
+{ 5, s_10_32, 0, 1, 0},
+{ 6, s_10_33, -1, 1, 0},
+{ 5, s_10_34, 0, 2, 0},
+{ 2, s_10_35, 0, 1, 0},
+{ 3, s_10_36, -1, 1, 0},
+{ 4, s_10_37, -1, 1, 0},
+{ 3, s_10_38, -3, 1, 0},
+{ 4, s_10_39, -1, 1, 0},
+{ 3, s_10_40, -5, 2, 0},
+{ 3, s_10_41, -6, 3, 0}
};
static const unsigned char g_v[] = { 17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 52, 14 };
-static const symbol s_0[] = { 'a' };
-static const symbol s_1[] = { 'e' };
-static const symbol s_2[] = { 'e' };
-static const symbol s_3[] = { 'a' };
-static const symbol s_4[] = { 'a' };
-static const symbol s_5[] = { 'e' };
-static const symbol s_6[] = { 'a' };
-static const symbol s_7[] = { 'e' };
-static const symbol s_8[] = { 'e' };
-static const symbol s_9[] = { 'a' };
-static const symbol s_10[] = { 'a' };
-static const symbol s_11[] = { 'e' };
-static const symbol s_12[] = { 'a' };
-static const symbol s_13[] = { 'e' };
-
static int r_mark_regions(struct SN_env * z) {
- z->I[0] = z->l;
- { int c1 = z->c;
- if (in_grouping(z, g_v, 97, 252, 0)) goto lab1;
-
- if (in_grouping(z, g_v, 97, 252, 1) < 0) goto lab1;
- { int c2 = z->c;
- if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 3 || !((101187584 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab3;
- if (!find_among(z, a_0, 8)) goto lab3;
- goto lab2;
- lab3:
- z->c = c2;
- if (z->c >= z->l) goto lab1;
- z->c++;
+ ((SN_local *)z)->i_p1 = z->l;
+ do {
+ int v_1 = z->c;
+ if (in_grouping(z, g_v, 97, 252, 0)) goto lab0;
+ {
+ int v_2 = z->c;
+ {
+ int ret = in_grouping(z, g_v, 97, 252, 1);
+ if (ret < 0) goto lab1;
+ z->c += ret;
+ }
+ ((SN_local *)z)->i_p1 = z->c;
+ lab1:
+ z->c = v_2;
}
- lab2:
- z->I[0] = z->c;
- goto lab0;
- lab1:
- z->c = c1;
- if (out_grouping(z, g_v, 97, 252, 0)) return 0;
-
+ break;
+ lab0:
+ z->c = v_1;
{
int ret = out_grouping(z, g_v, 97, 252, 1);
if (ret < 0) return 0;
z->c += ret;
}
- z->I[0] = z->c;
- }
-lab0:
+ ((SN_local *)z)->i_p1 = z->c;
+ } while (0);
return 1;
}
static int r_R1(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_v_ending(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c <= z->lb || (z->p[z->c - 1] != 225 && z->p[z->c - 1] != 233)) return 0;
- among_var = find_among_b(z, a_1, 2);
+ among_var = find_among_b(z, a_0, 2, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_0);
+ {
+ int ret = slice_from_s(z, 1, s_0);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
break;
}
static int r_double(struct SN_env * z) {
- { int m_test1 = z->l - z->c;
+ {
+ int v_1 = z->l - z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((106790108 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- if (!find_among_b(z, a_2, 23)) return 0;
- z->c = z->l - m_test1;
+ if (!find_among_b(z, a_1, 23, 0)) return 0;
+ z->c = z->l - v_1;
}
return 1;
}
if (z->c <= z->lb) return 0;
z->c--;
z->ket = z->c;
-z->c = z->c - 1;
- if (z->c < z->lb) return 0;
+ if (z->c <= z->lb) return 0;
+ z->c--;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_instrum(struct SN_env * z) {
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 108) return 0;
- if (!find_among_b(z, a_3, 2)) return 0;
+ if (!find_among_b(z, a_2, 2, 0)) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = r_double(z);
+ {
+ int ret = r_double(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int ret = r_undouble(z);
- if (ret <= 0) return ret;
- }
- return 1;
+ return r_undouble(z);
}
static int r_case(struct SN_env * z) {
z->ket = z->c;
- if (!find_among_b(z, a_4, 44)) return 0;
+ if (!find_among_b(z, a_3, 44, 0)) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int ret = r_v_ending(z);
- if (ret <= 0) return ret;
- }
- return 1;
+ return r_v_ending(z);
}
static int r_case_special(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 110 && z->p[z->c - 1] != 116)) return 0;
- among_var = find_among_b(z, a_5, 3);
+ among_var = find_among_b(z, a_4, 3, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_2);
+ {
+ int ret = slice_from_s(z, 1, s_2);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_3);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 3 <= z->lb || z->p[z->c - 1] != 108) return 0;
- among_var = find_among_b(z, a_6, 6);
+ among_var = find_among_b(z, a_5, 6, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_4);
+ {
+ int ret = slice_from_s(z, 1, s_4);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_5);
+ {
+ int ret = slice_from_s(z, 1, s_5);
if (ret < 0) return ret;
}
break;
static int r_factive(struct SN_env * z) {
z->ket = z->c;
if (z->c <= z->lb || (z->p[z->c - 1] != 225 && z->p[z->c - 1] != 233)) return 0;
- if (!find_among_b(z, a_7, 2)) return 0;
+ z->c--;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = r_double(z);
+ {
+ int ret = r_double(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- { int ret = r_undouble(z);
- if (ret <= 0) return ret;
- }
- return 1;
+ return r_undouble(z);
}
static int r_plural(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] != 107) return 0;
- among_var = find_among_b(z, a_8, 7);
+ among_var = find_among_b(z, a_7, 7, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 1, s_6);
+ {
+ int ret = slice_from_s(z, 1, s_6);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_7);
+ {
+ int ret = slice_from_s(z, 1, s_7);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c <= z->lb || (z->p[z->c - 1] != 105 && z->p[z->c - 1] != 233)) return 0;
- among_var = find_among_b(z, a_9, 12);
+ among_var = find_among_b(z, a_8, 12, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_8);
+ {
+ int ret = slice_from_s(z, 1, s_8);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_9);
+ {
+ int ret = slice_from_s(z, 1, s_9);
if (ret < 0) return ret;
}
break;
static int r_sing_owner(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_10, 31);
+ among_var = find_among_b(z, a_9, 31, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_10);
+ {
+ int ret = slice_from_s(z, 1, s_10);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_11);
+ {
+ int ret = slice_from_s(z, 1, s_11);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((10768 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_11, 42);
+ among_var = find_among_b(z, a_10, 42, 0);
if (!among_var) return 0;
z->bra = z->c;
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_12);
+ {
+ int ret = slice_from_s(z, 1, s_12);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_13);
+ {
+ int ret = slice_from_s(z, 1, s_13);
if (ret < 0) return ret;
}
break;
}
extern int hungarian_ISO_8859_2_stem(struct SN_env * z) {
- { int c1 = z->c;
- { int ret = r_mark_regions(z);
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
z->lb = z->c; z->c = z->l;
-
- { int m2 = z->l - z->c; (void)m2;
- { int ret = r_instrum(z);
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_instrum(z);
if (ret < 0) return ret;
}
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_case(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_case(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_case_special(z);
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_case_special(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
- { int m5 = z->l - z->c; (void)m5;
- { int ret = r_case_other(z);
+ {
+ int v_5 = z->l - z->c;
+ {
+ int ret = r_case_other(z);
if (ret < 0) return ret;
}
- z->c = z->l - m5;
+ z->c = z->l - v_5;
}
- { int m6 = z->l - z->c; (void)m6;
- { int ret = r_factive(z);
+ {
+ int v_6 = z->l - z->c;
+ {
+ int ret = r_factive(z);
if (ret < 0) return ret;
}
- z->c = z->l - m6;
+ z->c = z->l - v_6;
}
- { int m7 = z->l - z->c; (void)m7;
- { int ret = r_owned(z);
+ {
+ int v_7 = z->l - z->c;
+ {
+ int ret = r_owned(z);
if (ret < 0) return ret;
}
- z->c = z->l - m7;
+ z->c = z->l - v_7;
}
- { int m8 = z->l - z->c; (void)m8;
- { int ret = r_sing_owner(z);
+ {
+ int v_8 = z->l - z->c;
+ {
+ int ret = r_sing_owner(z);
if (ret < 0) return ret;
}
- z->c = z->l - m8;
+ z->c = z->l - v_8;
}
- { int m9 = z->l - z->c; (void)m9;
- { int ret = r_plur_owner(z);
+ {
+ int v_9 = z->l - z->c;
+ {
+ int ret = r_plur_owner(z);
if (ret < 0) return ret;
}
- z->c = z->l - m9;
+ z->c = z->l - v_9;
}
- { int m10 = z->l - z->c; (void)m10;
- { int ret = r_plural(z);
+ {
+ int v_10 = z->l - z->c;
+ {
+ int ret = r_plural(z);
if (ret < 0) return ret;
}
- z->c = z->l - m10;
+ z->c = z->l - v_10;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * hungarian_ISO_8859_2_create_env(void) { return SN_create_env(0, 1); }
+extern struct SN_env * hungarian_ISO_8859_2_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p1 = 0;
+ }
+ return z;
+}
-extern void hungarian_ISO_8859_2_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void hungarian_ISO_8859_2_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
--- /dev/null
+/* Generated from polish.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
+
+#include "stem_ISO_8859_2_polish.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p1;
+};
+
+typedef struct SN_local SN_local;
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+extern int polish_ISO_8859_2_stem(struct SN_env * z);
+#ifdef __cplusplus
+}
+#endif
+
+static int r_R1(struct SN_env * z);
+static int r_normalize_consonant(struct SN_env * z);
+static int r_remove_endings(struct SN_env * z);
+static int r_mark_regions(struct SN_env * z);
+
+static const symbol s_0[] = { 's' };
+static const symbol s_1[] = { 's' };
+static const symbol s_2[] = { 0xB3 };
+static const symbol s_3[] = { 's' };
+static const symbol s_4[] = { 'c' };
+static const symbol s_5[] = { 'n' };
+static const symbol s_6[] = { 's' };
+static const symbol s_7[] = { 'z' };
+
+static const symbol s_0_0[6] = { 'b', 'y', 0xB6, 'c', 'i', 'e' };
+static const symbol s_0_1[3] = { 'b', 'y', 'm' };
+static const symbol s_0_2[2] = { 'b', 'y' };
+static const symbol s_0_3[5] = { 'b', 'y', 0xB6, 'm', 'y' };
+static const symbol s_0_4[3] = { 'b', 'y', 0xB6 };
+static const struct among a_0[5] = {
+{ 6, s_0_0, 0, 1, 0},
+{ 3, s_0_1, 0, 1, 0},
+{ 2, s_0_2, 0, 1, 0},
+{ 5, s_0_3, 0, 1, 0},
+{ 3, s_0_4, 0, 1, 0}
+};
+
+static const symbol s_1_0[2] = { 0xB1, 'c' };
+static const symbol s_1_1[4] = { 'a', 'j', 0xB1, 'c' };
+static const symbol s_1_2[4] = { 's', 'z', 0xB1, 'c' };
+static const symbol s_1_3[2] = { 's', 'z' };
+static const symbol s_1_4[5] = { 'i', 'e', 'j', 's', 'z' };
+static const struct among a_1[5] = {
+{ 2, s_1_0, 0, 1, 0},
+{ 4, s_1_1, -1, 1, 0},
+{ 4, s_1_2, -2, 2, 0},
+{ 2, s_1_3, 0, 1, 0},
+{ 5, s_1_4, -1, 1, 0}
+};
+
+static const symbol s_2_0[1] = { 'a' };
+static const symbol s_2_1[3] = { 0xB1, 'c', 'a' };
+static const symbol s_2_2[5] = { 'a', 'j', 0xB1, 'c', 'a' };
+static const symbol s_2_3[5] = { 's', 'z', 0xB1, 'c', 'a' };
+static const symbol s_2_4[2] = { 'i', 'a' };
+static const symbol s_2_5[3] = { 's', 'z', 'a' };
+static const symbol s_2_6[6] = { 'i', 'e', 'j', 's', 'z', 'a' };
+static const symbol s_2_7[3] = { 'a', 0xB3, 'a' };
+static const symbol s_2_8[4] = { 'i', 'a', 0xB3, 'a' };
+static const symbol s_2_9[3] = { 'i', 0xB3, 'a' };
+static const symbol s_2_10[2] = { 0xB1, 'c' };
+static const symbol s_2_11[4] = { 'a', 'j', 0xB1, 'c' };
+static const symbol s_2_12[1] = { 'e' };
+static const symbol s_2_13[3] = { 0xB1, 'c', 'e' };
+static const symbol s_2_14[5] = { 'a', 'j', 0xB1, 'c', 'e' };
+static const symbol s_2_15[5] = { 's', 'z', 0xB1, 'c', 'e' };
+static const symbol s_2_16[2] = { 'i', 'e' };
+static const symbol s_2_17[3] = { 'c', 'i', 'e' };
+static const symbol s_2_18[4] = { 'a', 'c', 'i', 'e' };
+static const symbol s_2_19[4] = { 'e', 'c', 'i', 'e' };
+static const symbol s_2_20[4] = { 'i', 'c', 'i', 'e' };
+static const symbol s_2_21[5] = { 'a', 'j', 'c', 'i', 'e' };
+static const symbol s_2_22[6] = { 'l', 'i', 0xB6, 'c', 'i', 'e' };
+static const symbol s_2_23[7] = { 'a', 'l', 'i', 0xB6, 'c', 'i', 'e' };
+static const symbol s_2_24[8] = { 'i', 'e', 'l', 'i', 0xB6, 'c', 'i', 'e' };
+static const symbol s_2_25[7] = { 'i', 'l', 'i', 0xB6, 'c', 'i', 'e' };
+static const symbol s_2_26[6] = { 0xB3, 'y', 0xB6, 'c', 'i', 'e' };
+static const symbol s_2_27[7] = { 'a', 0xB3, 'y', 0xB6, 'c', 'i', 'e' };
+static const symbol s_2_28[8] = { 'i', 'a', 0xB3, 'y', 0xB6, 'c', 'i', 'e' };
+static const symbol s_2_29[7] = { 'i', 0xB3, 'y', 0xB6, 'c', 'i', 'e' };
+static const symbol s_2_30[3] = { 's', 'z', 'e' };
+static const symbol s_2_31[6] = { 'i', 'e', 'j', 's', 'z', 'e' };
+static const symbol s_2_32[3] = { 'a', 'c', 'h' };
+static const symbol s_2_33[4] = { 'i', 'a', 'c', 'h' };
+static const symbol s_2_34[3] = { 'i', 'c', 'h' };
+static const symbol s_2_35[3] = { 'y', 'c', 'h' };
+static const symbol s_2_36[1] = { 'i' };
+static const symbol s_2_37[3] = { 'a', 'l', 'i' };
+static const symbol s_2_38[4] = { 'i', 'e', 'l', 'i' };
+static const symbol s_2_39[3] = { 'i', 'l', 'i' };
+static const symbol s_2_40[3] = { 'a', 'm', 'i' };
+static const symbol s_2_41[4] = { 'i', 'a', 'm', 'i' };
+static const symbol s_2_42[3] = { 'i', 'm', 'i' };
+static const symbol s_2_43[3] = { 'y', 'm', 'i' };
+static const symbol s_2_44[3] = { 'o', 'w', 'i' };
+static const symbol s_2_45[4] = { 'i', 'o', 'w', 'i' };
+static const symbol s_2_46[2] = { 'a', 'j' };
+static const symbol s_2_47[2] = { 'e', 'j' };
+static const symbol s_2_48[3] = { 'i', 'e', 'j' };
+static const symbol s_2_49[2] = { 'a', 'm' };
+static const symbol s_2_50[4] = { 'a', 0xB3, 'a', 'm' };
+static const symbol s_2_51[5] = { 'i', 'a', 0xB3, 'a', 'm' };
+static const symbol s_2_52[4] = { 'i', 0xB3, 'a', 'm' };
+static const symbol s_2_53[2] = { 'e', 'm' };
+static const symbol s_2_54[3] = { 'i', 'e', 'm' };
+static const symbol s_2_55[4] = { 'a', 0xB3, 'e', 'm' };
+static const symbol s_2_56[5] = { 'i', 'a', 0xB3, 'e', 'm' };
+static const symbol s_2_57[4] = { 'i', 0xB3, 'e', 'm' };
+static const symbol s_2_58[2] = { 'i', 'm' };
+static const symbol s_2_59[2] = { 'o', 'm' };
+static const symbol s_2_60[3] = { 'i', 'o', 'm' };
+static const symbol s_2_61[2] = { 'y', 'm' };
+static const symbol s_2_62[1] = { 'o' };
+static const symbol s_2_63[3] = { 'e', 'g', 'o' };
+static const symbol s_2_64[4] = { 'i', 'e', 'g', 'o' };
+static const symbol s_2_65[3] = { 'a', 0xB3, 'o' };
+static const symbol s_2_66[4] = { 'i', 'a', 0xB3, 'o' };
+static const symbol s_2_67[3] = { 'i', 0xB3, 'o' };
+static const symbol s_2_68[1] = { 'u' };
+static const symbol s_2_69[2] = { 'i', 'u' };
+static const symbol s_2_70[3] = { 'e', 'm', 'u' };
+static const symbol s_2_71[4] = { 'i', 'e', 'm', 'u' };
+static const symbol s_2_72[2] = { 0xF3, 'w' };
+static const symbol s_2_73[1] = { 'y' };
+static const symbol s_2_74[3] = { 'a', 'm', 'y' };
+static const symbol s_2_75[3] = { 'e', 'm', 'y' };
+static const symbol s_2_76[3] = { 'i', 'm', 'y' };
+static const symbol s_2_77[5] = { 'l', 'i', 0xB6, 'm', 'y' };
+static const symbol s_2_78[6] = { 'a', 'l', 'i', 0xB6, 'm', 'y' };
+static const symbol s_2_79[7] = { 'i', 'e', 'l', 'i', 0xB6, 'm', 'y' };
+static const symbol s_2_80[6] = { 'i', 'l', 'i', 0xB6, 'm', 'y' };
+static const symbol s_2_81[5] = { 0xB3, 'y', 0xB6, 'm', 'y' };
+static const symbol s_2_82[6] = { 'a', 0xB3, 'y', 0xB6, 'm', 'y' };
+static const symbol s_2_83[7] = { 'i', 'a', 0xB3, 'y', 0xB6, 'm', 'y' };
+static const symbol s_2_84[6] = { 'i', 0xB3, 'y', 0xB6, 'm', 'y' };
+static const symbol s_2_85[3] = { 'a', 0xB3, 'y' };
+static const symbol s_2_86[4] = { 'i', 'a', 0xB3, 'y' };
+static const symbol s_2_87[3] = { 'i', 0xB3, 'y' };
+static const symbol s_2_88[3] = { 'a', 's', 'z' };
+static const symbol s_2_89[3] = { 'e', 's', 'z' };
+static const symbol s_2_90[3] = { 'i', 's', 'z' };
+static const symbol s_2_91[1] = { 0xB1 };
+static const symbol s_2_92[3] = { 0xB1, 'c', 0xB1 };
+static const symbol s_2_93[5] = { 'a', 'j', 0xB1, 'c', 0xB1 };
+static const symbol s_2_94[5] = { 's', 'z', 0xB1, 'c', 0xB1 };
+static const symbol s_2_95[2] = { 'i', 0xB1 };
+static const symbol s_2_96[3] = { 'a', 'j', 0xB1 };
+static const symbol s_2_97[3] = { 's', 'z', 0xB1 };
+static const symbol s_2_98[6] = { 'i', 'e', 'j', 's', 'z', 0xB1 };
+static const symbol s_2_99[2] = { 'a', 0xB3 };
+static const symbol s_2_100[3] = { 'i', 'a', 0xB3 };
+static const symbol s_2_101[2] = { 'i', 0xB3 };
+static const symbol s_2_102[3] = { 0xB3, 'a', 0xB6 };
+static const symbol s_2_103[4] = { 'a', 0xB3, 'a', 0xB6 };
+static const symbol s_2_104[5] = { 'i', 'a', 0xB3, 'a', 0xB6 };
+static const symbol s_2_105[4] = { 'i', 0xB3, 'a', 0xB6 };
+static const symbol s_2_106[3] = { 0xB3, 'e', 0xB6 };
+static const symbol s_2_107[4] = { 'a', 0xB3, 'e', 0xB6 };
+static const symbol s_2_108[5] = { 'i', 'a', 0xB3, 'e', 0xB6 };
+static const symbol s_2_109[4] = { 'i', 0xB3, 'e', 0xB6 };
+static const symbol s_2_110[2] = { 'a', 0xE6 };
+static const symbol s_2_111[3] = { 'i', 'e', 0xE6 };
+static const symbol s_2_112[2] = { 'i', 0xE6 };
+static const symbol s_2_113[2] = { 0xB1, 0xE6 };
+static const symbol s_2_114[3] = { 'a', 0xB6, 0xE6 };
+static const symbol s_2_115[3] = { 'e', 0xB6, 0xE6 };
+static const symbol s_2_116[1] = { 0xEA };
+static const symbol s_2_117[3] = { 's', 'z', 0xEA };
+static const struct among a_2[118] = {
+{ 1, s_2_0, 0, 1, 1},
+{ 3, s_2_1, -1, 1, 0},
+{ 5, s_2_2, -1, 1, 0},
+{ 5, s_2_3, -2, 2, 0},
+{ 2, s_2_4, -4, 1, 1},
+{ 3, s_2_5, -5, 1, 0},
+{ 6, s_2_6, -1, 1, 0},
+{ 3, s_2_7, -7, 1, 0},
+{ 4, s_2_8, -1, 1, 0},
+{ 3, s_2_9, -9, 1, 0},
+{ 2, s_2_10, 0, 1, 0},
+{ 4, s_2_11, -1, 1, 0},
+{ 1, s_2_12, 0, 1, 1},
+{ 3, s_2_13, -1, 1, 0},
+{ 5, s_2_14, -1, 1, 0},
+{ 5, s_2_15, -2, 2, 0},
+{ 2, s_2_16, -4, 1, 1},
+{ 3, s_2_17, -1, 1, 0},
+{ 4, s_2_18, -1, 1, 0},
+{ 4, s_2_19, -2, 1, 0},
+{ 4, s_2_20, -3, 1, 0},
+{ 5, s_2_21, -4, 1, 0},
+{ 6, s_2_22, -5, 4, 0},
+{ 7, s_2_23, -1, 1, 0},
+{ 8, s_2_24, -2, 1, 0},
+{ 7, s_2_25, -3, 1, 0},
+{ 6, s_2_26, -9, 4, 0},
+{ 7, s_2_27, -1, 1, 0},
+{ 8, s_2_28, -1, 1, 0},
+{ 7, s_2_29, -3, 1, 0},
+{ 3, s_2_30, -18, 1, 0},
+{ 6, s_2_31, -1, 1, 0},
+{ 3, s_2_32, 0, 1, 1},
+{ 4, s_2_33, -1, 1, 1},
+{ 3, s_2_34, 0, 5, 0},
+{ 3, s_2_35, 0, 5, 0},
+{ 1, s_2_36, 0, 1, 1},
+{ 3, s_2_37, -1, 1, 0},
+{ 4, s_2_38, -2, 1, 0},
+{ 3, s_2_39, -3, 1, 0},
+{ 3, s_2_40, -4, 1, 1},
+{ 4, s_2_41, -1, 1, 1},
+{ 3, s_2_42, -6, 5, 0},
+{ 3, s_2_43, -7, 5, 0},
+{ 3, s_2_44, -8, 1, 1},
+{ 4, s_2_45, -1, 1, 1},
+{ 2, s_2_46, 0, 1, 0},
+{ 2, s_2_47, 0, 5, 0},
+{ 3, s_2_48, -1, 5, 0},
+{ 2, s_2_49, 0, 1, 0},
+{ 4, s_2_50, -1, 1, 0},
+{ 5, s_2_51, -1, 1, 0},
+{ 4, s_2_52, -3, 1, 0},
+{ 2, s_2_53, 0, 1, 1},
+{ 3, s_2_54, -1, 1, 1},
+{ 4, s_2_55, -2, 1, 0},
+{ 5, s_2_56, -1, 1, 0},
+{ 4, s_2_57, -4, 1, 0},
+{ 2, s_2_58, 0, 5, 0},
+{ 2, s_2_59, 0, 1, 1},
+{ 3, s_2_60, -1, 1, 1},
+{ 2, s_2_61, 0, 5, 0},
+{ 1, s_2_62, 0, 1, 1},
+{ 3, s_2_63, -1, 5, 0},
+{ 4, s_2_64, -1, 5, 0},
+{ 3, s_2_65, -3, 1, 0},
+{ 4, s_2_66, -1, 1, 0},
+{ 3, s_2_67, -5, 1, 0},
+{ 1, s_2_68, 0, 1, 1},
+{ 2, s_2_69, -1, 1, 1},
+{ 3, s_2_70, -2, 5, 0},
+{ 4, s_2_71, -1, 5, 0},
+{ 2, s_2_72, 0, 1, 1},
+{ 1, s_2_73, 0, 5, 0},
+{ 3, s_2_74, -1, 1, 0},
+{ 3, s_2_75, -2, 1, 0},
+{ 3, s_2_76, -3, 1, 0},
+{ 5, s_2_77, -4, 4, 0},
+{ 6, s_2_78, -1, 1, 0},
+{ 7, s_2_79, -2, 1, 0},
+{ 6, s_2_80, -3, 1, 0},
+{ 5, s_2_81, -8, 4, 0},
+{ 6, s_2_82, -1, 1, 0},
+{ 7, s_2_83, -1, 1, 0},
+{ 6, s_2_84, -3, 1, 0},
+{ 3, s_2_85, -12, 1, 0},
+{ 4, s_2_86, -1, 1, 0},
+{ 3, s_2_87, -14, 1, 0},
+{ 3, s_2_88, 0, 1, 0},
+{ 3, s_2_89, 0, 1, 0},
+{ 3, s_2_90, 0, 1, 0},
+{ 1, s_2_91, 0, 1, 1},
+{ 3, s_2_92, -1, 1, 0},
+{ 5, s_2_93, -1, 1, 0},
+{ 5, s_2_94, -2, 2, 0},
+{ 2, s_2_95, -4, 1, 1},
+{ 3, s_2_96, -5, 1, 0},
+{ 3, s_2_97, -6, 3, 0},
+{ 6, s_2_98, -1, 1, 0},
+{ 2, s_2_99, 0, 1, 0},
+{ 3, s_2_100, -1, 1, 0},
+{ 2, s_2_101, 0, 1, 0},
+{ 3, s_2_102, 0, 4, 0},
+{ 4, s_2_103, -1, 1, 0},
+{ 5, s_2_104, -1, 1, 0},
+{ 4, s_2_105, -3, 1, 0},
+{ 3, s_2_106, 0, 4, 0},
+{ 4, s_2_107, -1, 1, 0},
+{ 5, s_2_108, -1, 1, 0},
+{ 4, s_2_109, -3, 1, 0},
+{ 2, s_2_110, 0, 1, 0},
+{ 3, s_2_111, 0, 1, 0},
+{ 2, s_2_112, 0, 1, 0},
+{ 2, s_2_113, 0, 1, 0},
+{ 3, s_2_114, 0, 1, 0},
+{ 3, s_2_115, 0, 1, 0},
+{ 1, s_2_116, 0, 1, 0},
+{ 3, s_2_117, -1, 2, 0}
+};
+
+static const symbol s_3_0[1] = { 0xB6 };
+static const symbol s_3_1[1] = { 0xBC };
+static const symbol s_3_2[1] = { 0xE6 };
+static const symbol s_3_3[1] = { 0xF1 };
+static const struct among a_3[4] = {
+{ 1, s_3_0, 0, 3, 0},
+{ 1, s_3_1, 0, 4, 0},
+{ 1, s_3_2, 0, 1, 0},
+{ 1, s_3_3, 0, 2, 0}
+};
+
+static const unsigned char g_v[] = { 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 2, 4 };
+
+static int r_mark_regions(struct SN_env * z) {
+ ((SN_local *)z)->i_p1 = z->l;
+ {
+ int ret = out_grouping(z, g_v, 97, 243, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
+ }
+ {
+ int ret = in_grouping(z, g_v, 97, 243, 1);
+ if (ret < 0) return 0;
+ z->c += ret;
+ }
+ ((SN_local *)z)->i_p1 = z->c;
+ return 1;
+}
+
+static int r_R1(struct SN_env * z) {
+ return ((SN_local *)z)->i_p1 <= z->c;
+}
+
+static int r_remove_endings(struct SN_env * z) {
+ int among_var;
+ {
+ int v_1 = z->l - z->c;
+ {
+ int v_2;
+ if (z->c < ((SN_local *)z)->i_p1) goto lab0;
+ v_2 = z->lb; z->lb = ((SN_local *)z)->i_p1;
+ z->ket = z->c;
+ if (!find_among_b(z, a_0, 5, 0)) { z->lb = v_2; goto lab0; }
+ z->bra = z->c;
+ z->lb = v_2;
+ }
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ lab0:
+ z->c = z->l - v_1;
+ }
+ z->ket = z->c;
+ among_var = find_among_b(z, a_2, 118, r_R1);
+ if (!among_var) return 0;
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_from_s(z, 1, s_0);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ do {
+ int v_3 = z->l - z->c;
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_R1(z);
+ if (ret == 0) goto lab1;
+ if (ret < 0) return ret;
+ }
+ z->c = z->l - v_4;
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ }
+ break;
+ lab1:
+ z->c = z->l - v_3;
+ {
+ int ret = slice_from_s(z, 1, s_1);
+ if (ret < 0) return ret;
+ }
+ } while (0);
+ break;
+ case 4:
+ {
+ int ret = slice_from_s(z, 1, s_2);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 5:
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ {
+ int v_5 = z->l - z->c;
+ z->ket = z->c;
+ if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 99 && z->p[z->c - 1] != 122)) { z->c = z->l - v_5; goto lab2; }
+ among_var = find_among_b(z, a_1, 5, 0);
+ if (!among_var) { z->c = z->l - v_5; goto lab2; }
+ z->bra = z->c;
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_del(z);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_from_s(z, 1, s_3);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ lab2:
+ ;
+ }
+ break;
+ }
+ return 1;
+}
+
+static int r_normalize_consonant(struct SN_env * z) {
+ int among_var;
+ z->ket = z->c;
+ among_var = find_among_b(z, a_3, 4, 0);
+ if (!among_var) return 0;
+ z->bra = z->c;
+ if (z->c > z->lb) goto lab0;
+ return 0;
+lab0:
+ switch (among_var) {
+ case 1:
+ {
+ int ret = slice_from_s(z, 1, s_4);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 2:
+ {
+ int ret = slice_from_s(z, 1, s_5);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 3:
+ {
+ int ret = slice_from_s(z, 1, s_6);
+ if (ret < 0) return ret;
+ }
+ break;
+ case 4:
+ {
+ int ret = slice_from_s(z, 1, s_7);
+ if (ret < 0) return ret;
+ }
+ break;
+ }
+ return 1;
+}
+
+extern int polish_ISO_8859_2_stem(struct SN_env * z) {
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_mark_regions(z);
+ if (ret < 0) return ret;
+ }
+ z->c = v_1;
+ }
+ do {
+ int v_2 = z->c;
+ if (z->c + 2 > z->l) goto lab0;
+ z->c += 2;
+ z->lb = z->c; z->c = z->l;
+ {
+ int ret = r_remove_endings(z);
+ if (ret == 0) goto lab0;
+ if (ret < 0) return ret;
+ }
+ z->c = z->lb;
+ break;
+ lab0:
+ z->c = v_2;
+ z->lb = z->c; z->c = z->l;
+ {
+ int ret = r_normalize_consonant(z);
+ if (ret <= 0) return ret;
+ }
+ z->c = z->lb;
+ } while (0);
+ return 1;
+}
+
+extern struct SN_env * polish_ISO_8859_2_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p1 = 0;
+ }
+ return z;
+}
+
+extern void polish_ISO_8859_2_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
+
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from russian.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_KOI8_R_russian.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_pV;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_tidy_up(struct SN_env * z);
static int r_derivational(struct SN_env * z);
static int r_noun(struct SN_env * z);
static int r_perfective_gerund(struct SN_env * z);
static int r_R2(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * russian_KOI8_R_create_env(void);
-extern void russian_KOI8_R_close_env(struct SN_env * z);
+static const symbol s_0[] = { 0xC5 };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[3] = { 0xD7, 0xDB, 0xC9 };
static const symbol s_0_1[4] = { 0xC9, 0xD7, 0xDB, 0xC9 };
static const symbol s_0_2[4] = { 0xD9, 0xD7, 0xDB, 0xC9 };
static const symbol s_0_6[5] = { 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 };
static const symbol s_0_7[6] = { 0xC9, 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 };
static const symbol s_0_8[6] = { 0xD9, 0xD7, 0xDB, 0xC9, 0xD3, 0xD8 };
-
-static const struct among a_0[9] =
-{
-{ 3, s_0_0, -1, 1, 0},
-{ 4, s_0_1, 0, 2, 0},
-{ 4, s_0_2, 0, 2, 0},
-{ 1, s_0_3, -1, 1, 0},
-{ 2, s_0_4, 3, 2, 0},
-{ 2, s_0_5, 3, 2, 0},
-{ 5, s_0_6, -1, 1, 0},
-{ 6, s_0_7, 6, 2, 0},
-{ 6, s_0_8, 6, 2, 0}
+static const struct among a_0[9] = {
+{ 3, s_0_0, 0, 1, 0},
+{ 4, s_0_1, -1, 2, 0},
+{ 4, s_0_2, -2, 2, 0},
+{ 1, s_0_3, 0, 1, 0},
+{ 2, s_0_4, -1, 2, 0},
+{ 2, s_0_5, -2, 2, 0},
+{ 5, s_0_6, 0, 1, 0},
+{ 6, s_0_7, -1, 2, 0},
+{ 6, s_0_8, -2, 2, 0}
};
static const symbol s_1_0[2] = { 0xC0, 0xC0 };
static const symbol s_1_23[2] = { 0xD1, 0xD1 };
static const symbol s_1_24[3] = { 0xC5, 0xCD, 0xD5 };
static const symbol s_1_25[3] = { 0xCF, 0xCD, 0xD5 };
-
-static const struct among a_1[26] =
-{
-{ 2, s_1_0, -1, 1, 0},
-{ 2, s_1_1, -1, 1, 0},
-{ 2, s_1_2, -1, 1, 0},
-{ 2, s_1_3, -1, 1, 0},
-{ 2, s_1_4, -1, 1, 0},
-{ 2, s_1_5, -1, 1, 0},
-{ 2, s_1_6, -1, 1, 0},
-{ 2, s_1_7, -1, 1, 0},
-{ 2, s_1_8, -1, 1, 0},
-{ 2, s_1_9, -1, 1, 0},
-{ 3, s_1_10, -1, 1, 0},
-{ 3, s_1_11, -1, 1, 0},
-{ 2, s_1_12, -1, 1, 0},
-{ 2, s_1_13, -1, 1, 0},
-{ 2, s_1_14, -1, 1, 0},
-{ 2, s_1_15, -1, 1, 0},
-{ 2, s_1_16, -1, 1, 0},
-{ 2, s_1_17, -1, 1, 0},
-{ 2, s_1_18, -1, 1, 0},
-{ 2, s_1_19, -1, 1, 0},
-{ 3, s_1_20, -1, 1, 0},
-{ 3, s_1_21, -1, 1, 0},
-{ 2, s_1_22, -1, 1, 0},
-{ 2, s_1_23, -1, 1, 0},
-{ 3, s_1_24, -1, 1, 0},
-{ 3, s_1_25, -1, 1, 0}
+static const struct among a_1[26] = {
+{ 2, s_1_0, 0, 1, 0},
+{ 2, s_1_1, 0, 1, 0},
+{ 2, s_1_2, 0, 1, 0},
+{ 2, s_1_3, 0, 1, 0},
+{ 2, s_1_4, 0, 1, 0},
+{ 2, s_1_5, 0, 1, 0},
+{ 2, s_1_6, 0, 1, 0},
+{ 2, s_1_7, 0, 1, 0},
+{ 2, s_1_8, 0, 1, 0},
+{ 2, s_1_9, 0, 1, 0},
+{ 3, s_1_10, 0, 1, 0},
+{ 3, s_1_11, 0, 1, 0},
+{ 2, s_1_12, 0, 1, 0},
+{ 2, s_1_13, 0, 1, 0},
+{ 2, s_1_14, 0, 1, 0},
+{ 2, s_1_15, 0, 1, 0},
+{ 2, s_1_16, 0, 1, 0},
+{ 2, s_1_17, 0, 1, 0},
+{ 2, s_1_18, 0, 1, 0},
+{ 2, s_1_19, 0, 1, 0},
+{ 3, s_1_20, 0, 1, 0},
+{ 3, s_1_21, 0, 1, 0},
+{ 2, s_1_22, 0, 1, 0},
+{ 2, s_1_23, 0, 1, 0},
+{ 3, s_1_24, 0, 1, 0},
+{ 3, s_1_25, 0, 1, 0}
};
static const symbol s_2_0[2] = { 0xC5, 0xCD };
static const symbol s_2_5[1] = { 0xDD };
static const symbol s_2_6[2] = { 0xC0, 0xDD };
static const symbol s_2_7[3] = { 0xD5, 0xC0, 0xDD };
-
-static const struct among a_2[8] =
-{
-{ 2, s_2_0, -1, 1, 0},
-{ 2, s_2_1, -1, 1, 0},
-{ 2, s_2_2, -1, 1, 0},
-{ 3, s_2_3, 2, 2, 0},
-{ 3, s_2_4, 2, 2, 0},
-{ 1, s_2_5, -1, 1, 0},
-{ 2, s_2_6, 5, 1, 0},
-{ 3, s_2_7, 6, 2, 0}
+static const struct among a_2[8] = {
+{ 2, s_2_0, 0, 1, 0},
+{ 2, s_2_1, 0, 1, 0},
+{ 2, s_2_2, 0, 1, 0},
+{ 3, s_2_3, -1, 2, 0},
+{ 3, s_2_4, -2, 2, 0},
+{ 1, s_2_5, 0, 1, 0},
+{ 2, s_2_6, -1, 1, 0},
+{ 3, s_2_7, -1, 2, 0}
};
static const symbol s_3_0[2] = { 0xD3, 0xD1 };
static const symbol s_3_1[2] = { 0xD3, 0xD8 };
-
-static const struct among a_3[2] =
-{
-{ 2, s_3_0, -1, 1, 0},
-{ 2, s_3_1, -1, 1, 0}
+static const struct among a_3[2] = {
+{ 2, s_3_0, 0, 1, 0},
+{ 2, s_3_1, 0, 1, 0}
};
static const symbol s_4_0[1] = { 0xC0 };
static const symbol s_4_43[3] = { 0xC9, 0xDB, 0xD8 };
static const symbol s_4_44[2] = { 0xCE, 0xD9 };
static const symbol s_4_45[3] = { 0xC5, 0xCE, 0xD9 };
-
-static const struct among a_4[46] =
-{
-{ 1, s_4_0, -1, 2, 0},
-{ 2, s_4_1, 0, 2, 0},
-{ 2, s_4_2, -1, 1, 0},
-{ 3, s_4_3, 2, 2, 0},
-{ 3, s_4_4, 2, 2, 0},
-{ 2, s_4_5, -1, 1, 0},
-{ 3, s_4_6, 5, 2, 0},
-{ 3, s_4_7, -1, 1, 0},
-{ 3, s_4_8, -1, 2, 0},
-{ 3, s_4_9, -1, 1, 0},
-{ 4, s_4_10, 9, 2, 0},
-{ 4, s_4_11, 9, 2, 0},
-{ 2, s_4_12, -1, 1, 0},
-{ 3, s_4_13, 12, 2, 0},
-{ 3, s_4_14, 12, 2, 0},
-{ 1, s_4_15, -1, 1, 0},
-{ 2, s_4_16, 15, 2, 0},
-{ 2, s_4_17, 15, 2, 0},
-{ 1, s_4_18, -1, 1, 0},
-{ 2, s_4_19, 18, 2, 0},
-{ 2, s_4_20, 18, 2, 0},
-{ 2, s_4_21, -1, 1, 0},
-{ 2, s_4_22, -1, 2, 0},
-{ 2, s_4_23, -1, 2, 0},
-{ 1, s_4_24, -1, 1, 0},
-{ 2, s_4_25, 24, 2, 0},
-{ 2, s_4_26, -1, 1, 0},
-{ 3, s_4_27, 26, 2, 0},
-{ 3, s_4_28, 26, 2, 0},
-{ 2, s_4_29, -1, 1, 0},
-{ 3, s_4_30, 29, 2, 0},
-{ 3, s_4_31, 29, 1, 0},
-{ 2, s_4_32, -1, 1, 0},
-{ 3, s_4_33, 32, 2, 0},
-{ 2, s_4_34, -1, 1, 0},
-{ 3, s_4_35, 34, 2, 0},
-{ 2, s_4_36, -1, 2, 0},
-{ 2, s_4_37, -1, 2, 0},
-{ 2, s_4_38, -1, 2, 0},
-{ 2, s_4_39, -1, 1, 0},
-{ 3, s_4_40, 39, 2, 0},
-{ 3, s_4_41, 39, 2, 0},
-{ 3, s_4_42, -1, 1, 0},
-{ 3, s_4_43, -1, 2, 0},
-{ 2, s_4_44, -1, 1, 0},
-{ 3, s_4_45, 44, 2, 0}
+static const struct among a_4[46] = {
+{ 1, s_4_0, 0, 2, 0},
+{ 2, s_4_1, -1, 2, 0},
+{ 2, s_4_2, 0, 1, 0},
+{ 3, s_4_3, -1, 2, 0},
+{ 3, s_4_4, -2, 2, 0},
+{ 2, s_4_5, 0, 1, 0},
+{ 3, s_4_6, -1, 2, 0},
+{ 3, s_4_7, 0, 1, 0},
+{ 3, s_4_8, 0, 2, 0},
+{ 3, s_4_9, 0, 1, 0},
+{ 4, s_4_10, -1, 2, 0},
+{ 4, s_4_11, -2, 2, 0},
+{ 2, s_4_12, 0, 1, 0},
+{ 3, s_4_13, -1, 2, 0},
+{ 3, s_4_14, -2, 2, 0},
+{ 1, s_4_15, 0, 1, 0},
+{ 2, s_4_16, -1, 2, 0},
+{ 2, s_4_17, -2, 2, 0},
+{ 1, s_4_18, 0, 1, 0},
+{ 2, s_4_19, -1, 2, 0},
+{ 2, s_4_20, -2, 2, 0},
+{ 2, s_4_21, 0, 1, 0},
+{ 2, s_4_22, 0, 2, 0},
+{ 2, s_4_23, 0, 2, 0},
+{ 1, s_4_24, 0, 1, 0},
+{ 2, s_4_25, -1, 2, 0},
+{ 2, s_4_26, 0, 1, 0},
+{ 3, s_4_27, -1, 2, 0},
+{ 3, s_4_28, -2, 2, 0},
+{ 2, s_4_29, 0, 1, 0},
+{ 3, s_4_30, -1, 2, 0},
+{ 3, s_4_31, -2, 1, 0},
+{ 2, s_4_32, 0, 1, 0},
+{ 3, s_4_33, -1, 2, 0},
+{ 2, s_4_34, 0, 1, 0},
+{ 3, s_4_35, -1, 2, 0},
+{ 2, s_4_36, 0, 2, 0},
+{ 2, s_4_37, 0, 2, 0},
+{ 2, s_4_38, 0, 2, 0},
+{ 2, s_4_39, 0, 1, 0},
+{ 3, s_4_40, -1, 2, 0},
+{ 3, s_4_41, -2, 2, 0},
+{ 3, s_4_42, 0, 1, 0},
+{ 3, s_4_43, 0, 2, 0},
+{ 2, s_4_44, 0, 1, 0},
+{ 3, s_4_45, -1, 2, 0}
};
static const symbol s_5_0[1] = { 0xC0 };
static const symbol s_5_33[2] = { 0xCF, 0xD7 };
static const symbol s_5_34[1] = { 0xD8 };
static const symbol s_5_35[1] = { 0xD9 };
-
-static const struct among a_5[36] =
-{
-{ 1, s_5_0, -1, 1, 0},
-{ 2, s_5_1, 0, 1, 0},
-{ 2, s_5_2, 0, 1, 0},
-{ 1, s_5_3, -1, 1, 0},
-{ 1, s_5_4, -1, 1, 0},
-{ 2, s_5_5, 4, 1, 0},
-{ 2, s_5_6, 4, 1, 0},
-{ 2, s_5_7, -1, 1, 0},
-{ 2, s_5_8, -1, 1, 0},
-{ 3, s_5_9, 8, 1, 0},
-{ 1, s_5_10, -1, 1, 0},
-{ 2, s_5_11, 10, 1, 0},
-{ 2, s_5_12, 10, 1, 0},
-{ 3, s_5_13, 10, 1, 0},
-{ 3, s_5_14, 10, 1, 0},
-{ 4, s_5_15, 14, 1, 0},
-{ 1, s_5_16, -1, 1, 0},
-{ 2, s_5_17, 16, 1, 0},
-{ 3, s_5_18, 17, 1, 0},
-{ 2, s_5_19, 16, 1, 0},
-{ 2, s_5_20, 16, 1, 0},
-{ 2, s_5_21, -1, 1, 0},
-{ 2, s_5_22, -1, 1, 0},
-{ 3, s_5_23, 22, 1, 0},
-{ 2, s_5_24, -1, 1, 0},
-{ 2, s_5_25, -1, 1, 0},
-{ 3, s_5_26, 25, 1, 0},
-{ 1, s_5_27, -1, 1, 0},
-{ 1, s_5_28, -1, 1, 0},
-{ 2, s_5_29, 28, 1, 0},
-{ 2, s_5_30, 28, 1, 0},
-{ 1, s_5_31, -1, 1, 0},
-{ 2, s_5_32, -1, 1, 0},
-{ 2, s_5_33, -1, 1, 0},
-{ 1, s_5_34, -1, 1, 0},
-{ 1, s_5_35, -1, 1, 0}
+static const struct among a_5[36] = {
+{ 1, s_5_0, 0, 1, 0},
+{ 2, s_5_1, -1, 1, 0},
+{ 2, s_5_2, -2, 1, 0},
+{ 1, s_5_3, 0, 1, 0},
+{ 1, s_5_4, 0, 1, 0},
+{ 2, s_5_5, -1, 1, 0},
+{ 2, s_5_6, -2, 1, 0},
+{ 2, s_5_7, 0, 1, 0},
+{ 2, s_5_8, 0, 1, 0},
+{ 3, s_5_9, -1, 1, 0},
+{ 1, s_5_10, 0, 1, 0},
+{ 2, s_5_11, -1, 1, 0},
+{ 2, s_5_12, -2, 1, 0},
+{ 3, s_5_13, -3, 1, 0},
+{ 3, s_5_14, -4, 1, 0},
+{ 4, s_5_15, -1, 1, 0},
+{ 1, s_5_16, 0, 1, 0},
+{ 2, s_5_17, -1, 1, 0},
+{ 3, s_5_18, -1, 1, 0},
+{ 2, s_5_19, -3, 1, 0},
+{ 2, s_5_20, -4, 1, 0},
+{ 2, s_5_21, 0, 1, 0},
+{ 2, s_5_22, 0, 1, 0},
+{ 3, s_5_23, -1, 1, 0},
+{ 2, s_5_24, 0, 1, 0},
+{ 2, s_5_25, 0, 1, 0},
+{ 3, s_5_26, -1, 1, 0},
+{ 1, s_5_27, 0, 1, 0},
+{ 1, s_5_28, 0, 1, 0},
+{ 2, s_5_29, -1, 1, 0},
+{ 2, s_5_30, -2, 1, 0},
+{ 1, s_5_31, 0, 1, 0},
+{ 2, s_5_32, 0, 1, 0},
+{ 2, s_5_33, 0, 1, 0},
+{ 1, s_5_34, 0, 1, 0},
+{ 1, s_5_35, 0, 1, 0}
};
static const symbol s_6_0[3] = { 0xCF, 0xD3, 0xD4 };
static const symbol s_6_1[4] = { 0xCF, 0xD3, 0xD4, 0xD8 };
-
-static const struct among a_6[2] =
-{
-{ 3, s_6_0, -1, 1, 0},
-{ 4, s_6_1, -1, 1, 0}
+static const struct among a_6[2] = {
+{ 3, s_6_0, 0, 1, 0},
+{ 4, s_6_1, 0, 1, 0}
};
static const symbol s_7_0[4] = { 0xC5, 0xCA, 0xDB, 0xC5 };
static const symbol s_7_1[1] = { 0xCE };
static const symbol s_7_2[1] = { 0xD8 };
static const symbol s_7_3[3] = { 0xC5, 0xCA, 0xDB };
-
-static const struct among a_7[4] =
-{
-{ 4, s_7_0, -1, 1, 0},
-{ 1, s_7_1, -1, 2, 0},
-{ 1, s_7_2, -1, 3, 0},
-{ 3, s_7_3, -1, 1, 0}
+static const struct among a_7[4] = {
+{ 4, s_7_0, 0, 1, 0},
+{ 1, s_7_1, 0, 2, 0},
+{ 1, s_7_2, 0, 3, 0},
+{ 3, s_7_3, 0, 1, 0}
};
static const unsigned char g_v[] = { 35, 130, 34, 18 };
-static const symbol s_0[] = { 0xC5 };
-
static int r_mark_regions(struct SN_env * z) {
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
-
+ ((SN_local *)z)->i_pV = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
{
int ret = out_grouping(z, g_v, 192, 220, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_pV = z->c;
{
int ret = in_grouping(z, g_v, 192, 220, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
-
{
int ret = out_grouping(z, g_v, 192, 220, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
-
{
int ret = in_grouping(z, g_v, 192, 220, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[0] = z->c;
+ ((SN_local *)z)->i_p2 = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
return 1;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_perfective_gerund(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((25166336 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_0, 9);
+ among_var = find_among_b(z, a_0, 9, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int m1 = z->l - z->c; (void)m1;
- if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab1;
+ do {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab0;
z->c--;
- goto lab0;
- lab1:
- z->c = z->l - m1;
+ break;
+ lab0:
+ z->c = z->l - v_1;
if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) return 0;
z->c--;
- }
- lab0:
- { int ret = slice_del(z);
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_adjective(struct SN_env * z) {
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((2271009 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- if (!find_among_b(z, a_1, 26)) return 0;
+ if (!find_among_b(z, a_1, 26, 0)) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_adjectival(struct SN_env * z) {
int among_var;
- { int ret = r_adjective(z);
+ {
+ int ret = r_adjective(z);
if (ret <= 0) return ret;
}
- { int m1 = z->l - z->c; (void)m1;
+ {
+ int v_1 = z->l - z->c;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((671113216 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - m1; goto lab0; }
- among_var = find_among_b(z, a_2, 8);
- if (!among_var) { z->c = z->l - m1; goto lab0; }
+ if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((671113216 >> (z->p[z->c - 1] & 0x1f)) & 1)) { z->c = z->l - v_1; goto lab0; }
+ among_var = find_among_b(z, a_2, 8, 0);
+ if (!among_var) { z->c = z->l - v_1; goto lab0; }
z->bra = z->c;
switch (among_var) {
case 1:
- { int m2 = z->l - z->c; (void)m2;
- if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab2;
+ do {
+ int v_2 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab1;
z->c--;
- goto lab1;
- lab2:
- z->c = z->l - m2;
- if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) { z->c = z->l - m1; goto lab0; }
+ break;
+ lab1:
+ z->c = z->l - v_2;
+ if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) { z->c = z->l - v_1; goto lab0; }
z->c--;
- }
- lab1:
- { int ret = slice_del(z);
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_reflexive(struct SN_env * z) {
z->ket = z->c;
if (z->c - 1 <= z->lb || (z->p[z->c - 1] != 209 && z->p[z->c - 1] != 216)) return 0;
- if (!find_among_b(z, a_3, 2)) return 0;
+ if (!find_among_b(z, a_3, 2, 0)) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
int among_var;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((51443235 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_4, 46);
+ among_var = find_among_b(z, a_4, 46, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int m1 = z->l - z->c; (void)m1;
- if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab1;
+ do {
+ int v_1 = z->l - z->c;
+ if (z->c <= z->lb || z->p[z->c - 1] != 0xC1) goto lab0;
z->c--;
- goto lab0;
- lab1:
- z->c = z->l - m1;
+ break;
+ lab0:
+ z->c = z->l - v_1;
if (z->c <= z->lb || z->p[z->c - 1] != 0xD1) return 0;
z->c--;
- }
- lab0:
- { int ret = slice_del(z);
+ } while (0);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_noun(struct SN_env * z) {
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((60991267 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- if (!find_among_b(z, a_5, 36)) return 0;
+ if (!find_among_b(z, a_5, 36, 0)) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_derivational(struct SN_env * z) {
z->ket = z->c;
if (z->c - 2 <= z->lb || (z->p[z->c - 1] != 212 && z->p[z->c - 1] != 216)) return 0;
- if (!find_among_b(z, a_6, 2)) return 0;
+ if (!find_among_b(z, a_6, 2, 0)) return 0;
z->bra = z->c;
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
int among_var;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 6 || !((151011360 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_7, 4);
+ among_var = find_among_b(z, a_7, 4, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
z->ket = z->c;
z->bra = z->c;
if (z->c <= z->lb || z->p[z->c - 1] != 0xCE) return 0;
z->c--;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (z->c <= z->lb || z->p[z->c - 1] != 0xCE) return 0;
z->c--;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
}
extern int russian_KOI8_R_stem(struct SN_env * z) {
- { int c1 = z->c;
- while(1) {
- int c2 = z->c;
- while(1) {
- int c3 = z->c;
+ {
+ int v_1 = z->c;
+ while (1) {
+ int v_2 = z->c;
+ while (1) {
+ int v_3 = z->c;
z->bra = z->c;
if (z->c == z->l || z->p[z->c] != 0xA3) goto lab2;
z->c++;
z->ket = z->c;
- z->c = c3;
+ z->c = v_3;
break;
lab2:
- z->c = c3;
+ z->c = v_3;
if (z->c >= z->l) goto lab1;
z->c++;
}
- { int ret = slice_from_s(z, 1, s_0);
+ {
+ int ret = slice_from_s(z, 1, s_0);
if (ret < 0) return ret;
}
continue;
lab1:
- z->c = c2;
+ z->c = v_2;
break;
}
- z->c = c1;
+ z->c = v_1;
}
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
-
- { int mlimit4;
- if (z->c < z->I[1]) return 0;
- mlimit4 = z->lb; z->lb = z->I[1];
- { int m5 = z->l - z->c; (void)m5;
- { int m6 = z->l - z->c; (void)m6;
- { int ret = r_perfective_gerund(z);
- if (ret == 0) goto lab5;
+ {
+ int v_4;
+ if (z->c < ((SN_local *)z)->i_pV) return 0;
+ v_4 = z->lb; z->lb = ((SN_local *)z)->i_pV;
+ {
+ int v_5 = z->l - z->c;
+ do {
+ int v_6 = z->l - z->c;
+ {
+ int ret = r_perfective_gerund(z);
+ if (ret == 0) goto lab4;
if (ret < 0) return ret;
}
- goto lab4;
- lab5:
- z->c = z->l - m6;
- { int m7 = z->l - z->c; (void)m7;
- { int ret = r_reflexive(z);
- if (ret == 0) { z->c = z->l - m7; goto lab6; }
+ break;
+ lab4:
+ z->c = z->l - v_6;
+ {
+ int v_7 = z->l - z->c;
+ {
+ int ret = r_reflexive(z);
+ if (ret == 0) { z->c = z->l - v_7; goto lab5; }
if (ret < 0) return ret;
}
- lab6:
+ lab5:
;
}
- { int m8 = z->l - z->c; (void)m8;
- { int ret = r_adjectival(z);
- if (ret == 0) goto lab8;
+ do {
+ int v_8 = z->l - z->c;
+ {
+ int ret = r_adjectival(z);
+ if (ret == 0) goto lab6;
if (ret < 0) return ret;
}
- goto lab7;
- lab8:
- z->c = z->l - m8;
- { int ret = r_verb(z);
- if (ret == 0) goto lab9;
+ break;
+ lab6:
+ z->c = z->l - v_8;
+ {
+ int ret = r_verb(z);
+ if (ret == 0) goto lab7;
if (ret < 0) return ret;
}
- goto lab7;
- lab9:
- z->c = z->l - m8;
- { int ret = r_noun(z);
+ break;
+ lab7:
+ z->c = z->l - v_8;
+ {
+ int ret = r_noun(z);
if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
- }
- lab7:
- ;
- }
- lab4:
+ } while (0);
+ } while (0);
lab3:
- z->c = z->l - m5;
+ z->c = z->l - v_5;
}
- { int m9 = z->l - z->c; (void)m9;
+ {
+ int v_9 = z->l - z->c;
z->ket = z->c;
- if (z->c <= z->lb || z->p[z->c - 1] != 0xC9) { z->c = z->l - m9; goto lab10; }
+ if (z->c <= z->lb || z->p[z->c - 1] != 0xC9) { z->c = z->l - v_9; goto lab8; }
z->c--;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
- lab10:
+ lab8:
;
}
- { int m10 = z->l - z->c; (void)m10;
- { int ret = r_derivational(z);
+ {
+ int v_10 = z->l - z->c;
+ {
+ int ret = r_derivational(z);
if (ret < 0) return ret;
}
- z->c = z->l - m10;
+ z->c = z->l - v_10;
}
- { int m11 = z->l - z->c; (void)m11;
- { int ret = r_tidy_up(z);
+ {
+ int v_11 = z->l - z->c;
+ {
+ int ret = r_tidy_up(z);
if (ret < 0) return ret;
}
- z->c = z->l - m11;
+ z->c = z->l - v_11;
}
- z->lb = mlimit4;
+ z->lb = v_4;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * russian_KOI8_R_create_env(void) { return SN_create_env(0, 2); }
+extern struct SN_env * russian_KOI8_R_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_pV = 0;
+ }
+ return z;
+}
-extern void russian_KOI8_R_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void russian_KOI8_R_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from arabic.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_UTF_8_arabic.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ unsigned char b_is_defined;
+ unsigned char b_is_verb;
+ unsigned char b_is_noun;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_Checks1(struct SN_env * z);
static int r_Normalize_pre(struct SN_env * z);
static int r_Normalize_post(struct SN_env * z);
static int r_Prefix_Step3a_Noun(struct SN_env * z);
static int r_Prefix_Step2(struct SN_env * z);
static int r_Prefix_Step1(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-extern struct SN_env * arabic_UTF_8_create_env(void);
-extern void arabic_UTF_8_close_env(struct SN_env * z);
+static const symbol s_0[] = { '0' };
+static const symbol s_1[] = { '1' };
+static const symbol s_2[] = { '2' };
+static const symbol s_3[] = { '3' };
+static const symbol s_4[] = { '4' };
+static const symbol s_5[] = { '5' };
+static const symbol s_6[] = { '6' };
+static const symbol s_7[] = { '7' };
+static const symbol s_8[] = { '8' };
+static const symbol s_9[] = { '9' };
+static const symbol s_10[] = { 0xD8, 0xA1 };
+static const symbol s_11[] = { 0xD8, 0xA3 };
+static const symbol s_12[] = { 0xD8, 0xA5 };
+static const symbol s_13[] = { 0xD8, 0xA6 };
+static const symbol s_14[] = { 0xD8, 0xA2 };
+static const symbol s_15[] = { 0xD8, 0xA4 };
+static const symbol s_16[] = { 0xD8, 0xA7 };
+static const symbol s_17[] = { 0xD8, 0xA8 };
+static const symbol s_18[] = { 0xD8, 0xA9 };
+static const symbol s_19[] = { 0xD8, 0xAA };
+static const symbol s_20[] = { 0xD8, 0xAB };
+static const symbol s_21[] = { 0xD8, 0xAC };
+static const symbol s_22[] = { 0xD8, 0xAD };
+static const symbol s_23[] = { 0xD8, 0xAE };
+static const symbol s_24[] = { 0xD8, 0xAF };
+static const symbol s_25[] = { 0xD8, 0xB0 };
+static const symbol s_26[] = { 0xD8, 0xB1 };
+static const symbol s_27[] = { 0xD8, 0xB2 };
+static const symbol s_28[] = { 0xD8, 0xB3 };
+static const symbol s_29[] = { 0xD8, 0xB4 };
+static const symbol s_30[] = { 0xD8, 0xB5 };
+static const symbol s_31[] = { 0xD8, 0xB6 };
+static const symbol s_32[] = { 0xD8, 0xB7 };
+static const symbol s_33[] = { 0xD8, 0xB8 };
+static const symbol s_34[] = { 0xD8, 0xB9 };
+static const symbol s_35[] = { 0xD8, 0xBA };
+static const symbol s_36[] = { 0xD9, 0x81 };
+static const symbol s_37[] = { 0xD9, 0x82 };
+static const symbol s_38[] = { 0xD9, 0x83 };
+static const symbol s_39[] = { 0xD9, 0x84 };
+static const symbol s_40[] = { 0xD9, 0x85 };
+static const symbol s_41[] = { 0xD9, 0x86 };
+static const symbol s_42[] = { 0xD9, 0x87 };
+static const symbol s_43[] = { 0xD9, 0x88 };
+static const symbol s_44[] = { 0xD9, 0x89 };
+static const symbol s_45[] = { 0xD9, 0x8A };
+static const symbol s_46[] = { 0xD9, 0x84, 0xD8, 0xA7 };
+static const symbol s_47[] = { 0xD9, 0x84, 0xD8, 0xA3 };
+static const symbol s_48[] = { 0xD9, 0x84, 0xD8, 0xA5 };
+static const symbol s_49[] = { 0xD9, 0x84, 0xD8, 0xA2 };
+static const symbol s_50[] = { 0xD8, 0xA1 };
+static const symbol s_51[] = { 0xD8, 0xA7 };
+static const symbol s_52[] = { 0xD9, 0x88 };
+static const symbol s_53[] = { 0xD9, 0x8A };
+static const symbol s_54[] = { 0xD8, 0xA3 };
+static const symbol s_55[] = { 0xD8, 0xA2 };
+static const symbol s_56[] = { 0xD8, 0xA7 };
+static const symbol s_57[] = { 0xD8, 0xA5 };
+static const symbol s_58[] = { 0xD8, 0xA7 };
+static const symbol s_59[] = { 0xD8, 0xA8 };
+static const symbol s_60[] = { 0xD9, 0x83 };
+static const symbol s_61[] = { 0xD9, 0x8A };
+static const symbol s_62[] = { 0xD8, 0xAA };
+static const symbol s_63[] = { 0xD9, 0x86 };
+static const symbol s_64[] = { 0xD8, 0xA3 };
+static const symbol s_65[] = { 0xD8, 0xA7, 0xD8, 0xB3, 0xD8, 0xAA };
+static const symbol s_66[] = { 0xD9, 0x86 };
+static const symbol s_67[] = { 0xD8, 0xA7, 0xD8, 0xAA };
+static const symbol s_68[] = { 0xD8, 0xAA };
+static const symbol s_69[] = { 0xD8, 0xA9 };
+static const symbol s_70[] = { 0xD9, 0x8A };
+static const symbol s_71[] = { 0xD9, 0x89 };
+static const symbol s_72[] = { 0xD9, 0x8A };
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[2] = { 0xD9, 0x80 };
static const symbol s_0_1[2] = { 0xD9, 0x8B };
static const symbol s_0_2[2] = { 0xD9, 0x8C };
static const symbol s_0_141[3] = { 0xEF, 0xBB, 0xBA };
static const symbol s_0_142[3] = { 0xEF, 0xBB, 0xBB };
static const symbol s_0_143[3] = { 0xEF, 0xBB, 0xBC };
-
-static const struct among a_0[144] =
-{
-{ 2, s_0_0, -1, 1, 0},
-{ 2, s_0_1, -1, 1, 0},
-{ 2, s_0_2, -1, 1, 0},
-{ 2, s_0_3, -1, 1, 0},
-{ 2, s_0_4, -1, 1, 0},
-{ 2, s_0_5, -1, 1, 0},
-{ 2, s_0_6, -1, 1, 0},
-{ 2, s_0_7, -1, 1, 0},
-{ 2, s_0_8, -1, 1, 0},
-{ 2, s_0_9, -1, 2, 0},
-{ 2, s_0_10, -1, 3, 0},
-{ 2, s_0_11, -1, 4, 0},
-{ 2, s_0_12, -1, 5, 0},
-{ 2, s_0_13, -1, 6, 0},
-{ 2, s_0_14, -1, 7, 0},
-{ 2, s_0_15, -1, 8, 0},
-{ 2, s_0_16, -1, 9, 0},
-{ 2, s_0_17, -1, 10, 0},
-{ 2, s_0_18, -1, 11, 0},
-{ 3, s_0_19, -1, 12, 0},
-{ 3, s_0_20, -1, 16, 0},
-{ 3, s_0_21, -1, 16, 0},
-{ 3, s_0_22, -1, 13, 0},
-{ 3, s_0_23, -1, 13, 0},
-{ 3, s_0_24, -1, 17, 0},
-{ 3, s_0_25, -1, 17, 0},
-{ 3, s_0_26, -1, 14, 0},
-{ 3, s_0_27, -1, 14, 0},
-{ 3, s_0_28, -1, 15, 0},
-{ 3, s_0_29, -1, 15, 0},
-{ 3, s_0_30, -1, 15, 0},
-{ 3, s_0_31, -1, 15, 0},
-{ 3, s_0_32, -1, 18, 0},
-{ 3, s_0_33, -1, 18, 0},
-{ 3, s_0_34, -1, 19, 0},
-{ 3, s_0_35, -1, 19, 0},
-{ 3, s_0_36, -1, 19, 0},
-{ 3, s_0_37, -1, 19, 0},
-{ 3, s_0_38, -1, 20, 0},
-{ 3, s_0_39, -1, 20, 0},
-{ 3, s_0_40, -1, 21, 0},
-{ 3, s_0_41, -1, 21, 0},
-{ 3, s_0_42, -1, 21, 0},
-{ 3, s_0_43, -1, 21, 0},
-{ 3, s_0_44, -1, 22, 0},
-{ 3, s_0_45, -1, 22, 0},
-{ 3, s_0_46, -1, 22, 0},
-{ 3, s_0_47, -1, 22, 0},
-{ 3, s_0_48, -1, 23, 0},
-{ 3, s_0_49, -1, 23, 0},
-{ 3, s_0_50, -1, 23, 0},
-{ 3, s_0_51, -1, 23, 0},
-{ 3, s_0_52, -1, 24, 0},
-{ 3, s_0_53, -1, 24, 0},
-{ 3, s_0_54, -1, 24, 0},
-{ 3, s_0_55, -1, 24, 0},
-{ 3, s_0_56, -1, 25, 0},
-{ 3, s_0_57, -1, 25, 0},
-{ 3, s_0_58, -1, 25, 0},
-{ 3, s_0_59, -1, 25, 0},
-{ 3, s_0_60, -1, 26, 0},
-{ 3, s_0_61, -1, 26, 0},
-{ 3, s_0_62, -1, 27, 0},
-{ 3, s_0_63, -1, 27, 0},
-{ 3, s_0_64, -1, 28, 0},
-{ 3, s_0_65, -1, 28, 0},
-{ 3, s_0_66, -1, 29, 0},
-{ 3, s_0_67, -1, 29, 0},
-{ 3, s_0_68, -1, 30, 0},
-{ 3, s_0_69, -1, 30, 0},
-{ 3, s_0_70, -1, 30, 0},
-{ 3, s_0_71, -1, 30, 0},
-{ 3, s_0_72, -1, 31, 0},
-{ 3, s_0_73, -1, 31, 0},
-{ 3, s_0_74, -1, 31, 0},
-{ 3, s_0_75, -1, 31, 0},
-{ 3, s_0_76, -1, 32, 0},
-{ 3, s_0_77, -1, 32, 0},
-{ 3, s_0_78, -1, 32, 0},
-{ 3, s_0_79, -1, 32, 0},
-{ 3, s_0_80, -1, 33, 0},
-{ 3, s_0_81, -1, 33, 0},
-{ 3, s_0_82, -1, 33, 0},
-{ 3, s_0_83, -1, 33, 0},
-{ 3, s_0_84, -1, 34, 0},
-{ 3, s_0_85, -1, 34, 0},
-{ 3, s_0_86, -1, 34, 0},
-{ 3, s_0_87, -1, 34, 0},
-{ 3, s_0_88, -1, 35, 0},
-{ 3, s_0_89, -1, 35, 0},
-{ 3, s_0_90, -1, 35, 0},
-{ 3, s_0_91, -1, 35, 0},
-{ 3, s_0_92, -1, 36, 0},
-{ 3, s_0_93, -1, 36, 0},
-{ 3, s_0_94, -1, 36, 0},
-{ 3, s_0_95, -1, 36, 0},
-{ 3, s_0_96, -1, 37, 0},
-{ 3, s_0_97, -1, 37, 0},
-{ 3, s_0_98, -1, 37, 0},
-{ 3, s_0_99, -1, 37, 0},
-{ 3, s_0_100, -1, 38, 0},
-{ 3, s_0_101, -1, 38, 0},
-{ 3, s_0_102, -1, 38, 0},
-{ 3, s_0_103, -1, 38, 0},
-{ 3, s_0_104, -1, 39, 0},
-{ 3, s_0_105, -1, 39, 0},
-{ 3, s_0_106, -1, 39, 0},
-{ 3, s_0_107, -1, 39, 0},
-{ 3, s_0_108, -1, 40, 0},
-{ 3, s_0_109, -1, 40, 0},
-{ 3, s_0_110, -1, 40, 0},
-{ 3, s_0_111, -1, 40, 0},
-{ 3, s_0_112, -1, 41, 0},
-{ 3, s_0_113, -1, 41, 0},
-{ 3, s_0_114, -1, 41, 0},
-{ 3, s_0_115, -1, 41, 0},
-{ 3, s_0_116, -1, 42, 0},
-{ 3, s_0_117, -1, 42, 0},
-{ 3, s_0_118, -1, 42, 0},
-{ 3, s_0_119, -1, 42, 0},
-{ 3, s_0_120, -1, 43, 0},
-{ 3, s_0_121, -1, 43, 0},
-{ 3, s_0_122, -1, 43, 0},
-{ 3, s_0_123, -1, 43, 0},
-{ 3, s_0_124, -1, 44, 0},
-{ 3, s_0_125, -1, 44, 0},
-{ 3, s_0_126, -1, 44, 0},
-{ 3, s_0_127, -1, 44, 0},
-{ 3, s_0_128, -1, 45, 0},
-{ 3, s_0_129, -1, 45, 0},
-{ 3, s_0_130, -1, 46, 0},
-{ 3, s_0_131, -1, 46, 0},
-{ 3, s_0_132, -1, 47, 0},
-{ 3, s_0_133, -1, 47, 0},
-{ 3, s_0_134, -1, 47, 0},
-{ 3, s_0_135, -1, 47, 0},
-{ 3, s_0_136, -1, 51, 0},
-{ 3, s_0_137, -1, 51, 0},
-{ 3, s_0_138, -1, 49, 0},
-{ 3, s_0_139, -1, 49, 0},
-{ 3, s_0_140, -1, 50, 0},
-{ 3, s_0_141, -1, 50, 0},
-{ 3, s_0_142, -1, 48, 0},
-{ 3, s_0_143, -1, 48, 0}
+static const struct among a_0[144] = {
+{ 2, s_0_0, 0, 1, 0},
+{ 2, s_0_1, 0, 1, 0},
+{ 2, s_0_2, 0, 1, 0},
+{ 2, s_0_3, 0, 1, 0},
+{ 2, s_0_4, 0, 1, 0},
+{ 2, s_0_5, 0, 1, 0},
+{ 2, s_0_6, 0, 1, 0},
+{ 2, s_0_7, 0, 1, 0},
+{ 2, s_0_8, 0, 1, 0},
+{ 2, s_0_9, 0, 2, 0},
+{ 2, s_0_10, 0, 3, 0},
+{ 2, s_0_11, 0, 4, 0},
+{ 2, s_0_12, 0, 5, 0},
+{ 2, s_0_13, 0, 6, 0},
+{ 2, s_0_14, 0, 7, 0},
+{ 2, s_0_15, 0, 8, 0},
+{ 2, s_0_16, 0, 9, 0},
+{ 2, s_0_17, 0, 10, 0},
+{ 2, s_0_18, 0, 11, 0},
+{ 3, s_0_19, 0, 12, 0},
+{ 3, s_0_20, 0, 16, 0},
+{ 3, s_0_21, 0, 16, 0},
+{ 3, s_0_22, 0, 13, 0},
+{ 3, s_0_23, 0, 13, 0},
+{ 3, s_0_24, 0, 17, 0},
+{ 3, s_0_25, 0, 17, 0},
+{ 3, s_0_26, 0, 14, 0},
+{ 3, s_0_27, 0, 14, 0},
+{ 3, s_0_28, 0, 15, 0},
+{ 3, s_0_29, 0, 15, 0},
+{ 3, s_0_30, 0, 15, 0},
+{ 3, s_0_31, 0, 15, 0},
+{ 3, s_0_32, 0, 18, 0},
+{ 3, s_0_33, 0, 18, 0},
+{ 3, s_0_34, 0, 19, 0},
+{ 3, s_0_35, 0, 19, 0},
+{ 3, s_0_36, 0, 19, 0},
+{ 3, s_0_37, 0, 19, 0},
+{ 3, s_0_38, 0, 20, 0},
+{ 3, s_0_39, 0, 20, 0},
+{ 3, s_0_40, 0, 21, 0},
+{ 3, s_0_41, 0, 21, 0},
+{ 3, s_0_42, 0, 21, 0},
+{ 3, s_0_43, 0, 21, 0},
+{ 3, s_0_44, 0, 22, 0},
+{ 3, s_0_45, 0, 22, 0},
+{ 3, s_0_46, 0, 22, 0},
+{ 3, s_0_47, 0, 22, 0},
+{ 3, s_0_48, 0, 23, 0},
+{ 3, s_0_49, 0, 23, 0},
+{ 3, s_0_50, 0, 23, 0},
+{ 3, s_0_51, 0, 23, 0},
+{ 3, s_0_52, 0, 24, 0},
+{ 3, s_0_53, 0, 24, 0},
+{ 3, s_0_54, 0, 24, 0},
+{ 3, s_0_55, 0, 24, 0},
+{ 3, s_0_56, 0, 25, 0},
+{ 3, s_0_57, 0, 25, 0},
+{ 3, s_0_58, 0, 25, 0},
+{ 3, s_0_59, 0, 25, 0},
+{ 3, s_0_60, 0, 26, 0},
+{ 3, s_0_61, 0, 26, 0},
+{ 3, s_0_62, 0, 27, 0},
+{ 3, s_0_63, 0, 27, 0},
+{ 3, s_0_64, 0, 28, 0},
+{ 3, s_0_65, 0, 28, 0},
+{ 3, s_0_66, 0, 29, 0},
+{ 3, s_0_67, 0, 29, 0},
+{ 3, s_0_68, 0, 30, 0},
+{ 3, s_0_69, 0, 30, 0},
+{ 3, s_0_70, 0, 30, 0},
+{ 3, s_0_71, 0, 30, 0},
+{ 3, s_0_72, 0, 31, 0},
+{ 3, s_0_73, 0, 31, 0},
+{ 3, s_0_74, 0, 31, 0},
+{ 3, s_0_75, 0, 31, 0},
+{ 3, s_0_76, 0, 32, 0},
+{ 3, s_0_77, 0, 32, 0},
+{ 3, s_0_78, 0, 32, 0},
+{ 3, s_0_79, 0, 32, 0},
+{ 3, s_0_80, 0, 33, 0},
+{ 3, s_0_81, 0, 33, 0},
+{ 3, s_0_82, 0, 33, 0},
+{ 3, s_0_83, 0, 33, 0},
+{ 3, s_0_84, 0, 34, 0},
+{ 3, s_0_85, 0, 34, 0},
+{ 3, s_0_86, 0, 34, 0},
+{ 3, s_0_87, 0, 34, 0},
+{ 3, s_0_88, 0, 35, 0},
+{ 3, s_0_89, 0, 35, 0},
+{ 3, s_0_90, 0, 35, 0},
+{ 3, s_0_91, 0, 35, 0},
+{ 3, s_0_92, 0, 36, 0},
+{ 3, s_0_93, 0, 36, 0},
+{ 3, s_0_94, 0, 36, 0},
+{ 3, s_0_95, 0, 36, 0},
+{ 3, s_0_96, 0, 37, 0},
+{ 3, s_0_97, 0, 37, 0},
+{ 3, s_0_98, 0, 37, 0},
+{ 3, s_0_99, 0, 37, 0},
+{ 3, s_0_100, 0, 38, 0},
+{ 3, s_0_101, 0, 38, 0},
+{ 3, s_0_102, 0, 38, 0},
+{ 3, s_0_103, 0, 38, 0},
+{ 3, s_0_104, 0, 39, 0},
+{ 3, s_0_105, 0, 39, 0},
+{ 3, s_0_106, 0, 39, 0},
+{ 3, s_0_107, 0, 39, 0},
+{ 3, s_0_108, 0, 40, 0},
+{ 3, s_0_109, 0, 40, 0},
+{ 3, s_0_110, 0, 40, 0},
+{ 3, s_0_111, 0, 40, 0},
+{ 3, s_0_112, 0, 41, 0},
+{ 3, s_0_113, 0, 41, 0},
+{ 3, s_0_114, 0, 41, 0},
+{ 3, s_0_115, 0, 41, 0},
+{ 3, s_0_116, 0, 42, 0},
+{ 3, s_0_117, 0, 42, 0},
+{ 3, s_0_118, 0, 42, 0},
+{ 3, s_0_119, 0, 42, 0},
+{ 3, s_0_120, 0, 43, 0},
+{ 3, s_0_121, 0, 43, 0},
+{ 3, s_0_122, 0, 43, 0},
+{ 3, s_0_123, 0, 43, 0},
+{ 3, s_0_124, 0, 44, 0},
+{ 3, s_0_125, 0, 44, 0},
+{ 3, s_0_126, 0, 44, 0},
+{ 3, s_0_127, 0, 44, 0},
+{ 3, s_0_128, 0, 45, 0},
+{ 3, s_0_129, 0, 45, 0},
+{ 3, s_0_130, 0, 46, 0},
+{ 3, s_0_131, 0, 46, 0},
+{ 3, s_0_132, 0, 47, 0},
+{ 3, s_0_133, 0, 47, 0},
+{ 3, s_0_134, 0, 47, 0},
+{ 3, s_0_135, 0, 47, 0},
+{ 3, s_0_136, 0, 51, 0},
+{ 3, s_0_137, 0, 51, 0},
+{ 3, s_0_138, 0, 49, 0},
+{ 3, s_0_139, 0, 49, 0},
+{ 3, s_0_140, 0, 50, 0},
+{ 3, s_0_141, 0, 50, 0},
+{ 3, s_0_142, 0, 48, 0},
+{ 3, s_0_143, 0, 48, 0}
};
static const symbol s_1_0[2] = { 0xD8, 0xA2 };
static const symbol s_1_2[2] = { 0xD8, 0xA4 };
static const symbol s_1_3[2] = { 0xD8, 0xA5 };
static const symbol s_1_4[2] = { 0xD8, 0xA6 };
-
-static const struct among a_1[5] =
-{
-{ 2, s_1_0, -1, 1, 0},
-{ 2, s_1_1, -1, 1, 0},
-{ 2, s_1_2, -1, 1, 0},
-{ 2, s_1_3, -1, 1, 0},
-{ 2, s_1_4, -1, 1, 0}
+static const struct among a_1[5] = {
+{ 2, s_1_0, 0, 1, 0},
+{ 2, s_1_1, 0, 1, 0},
+{ 2, s_1_2, 0, 1, 0},
+{ 2, s_1_3, 0, 1, 0},
+{ 2, s_1_4, 0, 1, 0}
};
static const symbol s_2_0[2] = { 0xD8, 0xA2 };
static const symbol s_2_2[2] = { 0xD8, 0xA4 };
static const symbol s_2_3[2] = { 0xD8, 0xA5 };
static const symbol s_2_4[2] = { 0xD8, 0xA6 };
-
-static const struct among a_2[5] =
-{
-{ 2, s_2_0, -1, 1, 0},
-{ 2, s_2_1, -1, 1, 0},
-{ 2, s_2_2, -1, 2, 0},
-{ 2, s_2_3, -1, 1, 0},
-{ 2, s_2_4, -1, 3, 0}
+static const struct among a_2[5] = {
+{ 2, s_2_0, 0, 1, 0},
+{ 2, s_2_1, 0, 1, 0},
+{ 2, s_2_2, 0, 2, 0},
+{ 2, s_2_3, 0, 1, 0},
+{ 2, s_2_4, 0, 3, 0}
};
static const symbol s_3_0[4] = { 0xD8, 0xA7, 0xD9, 0x84 };
static const symbol s_3_1[6] = { 0xD8, 0xA8, 0xD8, 0xA7, 0xD9, 0x84 };
static const symbol s_3_2[6] = { 0xD9, 0x83, 0xD8, 0xA7, 0xD9, 0x84 };
static const symbol s_3_3[4] = { 0xD9, 0x84, 0xD9, 0x84 };
-
-static const struct among a_3[4] =
-{
-{ 4, s_3_0, -1, 2, 0},
-{ 6, s_3_1, -1, 1, 0},
-{ 6, s_3_2, -1, 1, 0},
-{ 4, s_3_3, -1, 2, 0}
+static const struct among a_3[4] = {
+{ 4, s_3_0, 0, 2, 0},
+{ 6, s_3_1, 0, 1, 0},
+{ 6, s_3_2, 0, 1, 0},
+{ 4, s_3_3, 0, 2, 0}
};
static const symbol s_4_0[4] = { 0xD8, 0xA3, 0xD8, 0xA2 };
static const symbol s_4_2[4] = { 0xD8, 0xA3, 0xD8, 0xA4 };
static const symbol s_4_3[4] = { 0xD8, 0xA3, 0xD8, 0xA5 };
static const symbol s_4_4[4] = { 0xD8, 0xA3, 0xD8, 0xA7 };
-
-static const struct among a_4[5] =
-{
-{ 4, s_4_0, -1, 2, 0},
-{ 4, s_4_1, -1, 1, 0},
-{ 4, s_4_2, -1, 1, 0},
-{ 4, s_4_3, -1, 4, 0},
-{ 4, s_4_4, -1, 3, 0}
+static const struct among a_4[5] = {
+{ 4, s_4_0, 0, 2, 0},
+{ 4, s_4_1, 0, 1, 0},
+{ 4, s_4_2, 0, 1, 0},
+{ 4, s_4_3, 0, 4, 0},
+{ 4, s_4_4, 0, 3, 0}
};
static const symbol s_5_0[2] = { 0xD9, 0x81 };
static const symbol s_5_1[2] = { 0xD9, 0x88 };
-
-static const struct among a_5[2] =
-{
-{ 2, s_5_0, -1, 1, 0},
-{ 2, s_5_1, -1, 1, 0}
+static const struct among a_5[2] = {
+{ 2, s_5_0, 0, 1, 0},
+{ 2, s_5_1, 0, 1, 0}
};
static const symbol s_6_0[4] = { 0xD8, 0xA7, 0xD9, 0x84 };
static const symbol s_6_1[6] = { 0xD8, 0xA8, 0xD8, 0xA7, 0xD9, 0x84 };
static const symbol s_6_2[6] = { 0xD9, 0x83, 0xD8, 0xA7, 0xD9, 0x84 };
static const symbol s_6_3[4] = { 0xD9, 0x84, 0xD9, 0x84 };
-
-static const struct among a_6[4] =
-{
-{ 4, s_6_0, -1, 2, 0},
-{ 6, s_6_1, -1, 1, 0},
-{ 6, s_6_2, -1, 1, 0},
-{ 4, s_6_3, -1, 2, 0}
+static const struct among a_6[4] = {
+{ 4, s_6_0, 0, 2, 0},
+{ 6, s_6_1, 0, 1, 0},
+{ 6, s_6_2, 0, 1, 0},
+{ 4, s_6_3, 0, 2, 0}
};
static const symbol s_7_0[2] = { 0xD8, 0xA8 };
static const symbol s_7_1[4] = { 0xD8, 0xA8, 0xD8, 0xA7 };
static const symbol s_7_2[4] = { 0xD8, 0xA8, 0xD8, 0xA8 };
static const symbol s_7_3[4] = { 0xD9, 0x83, 0xD9, 0x83 };
-
-static const struct among a_7[4] =
-{
-{ 2, s_7_0, -1, 1, 0},
-{ 4, s_7_1, 0, -1, 0},
-{ 4, s_7_2, 0, 2, 0},
-{ 4, s_7_3, -1, 3, 0}
+static const struct among a_7[4] = {
+{ 2, s_7_0, 0, 1, 0},
+{ 4, s_7_1, -1, -1, 0},
+{ 4, s_7_2, -2, 2, 0},
+{ 4, s_7_3, 0, 3, 0}
};
static const symbol s_8_0[4] = { 0xD8, 0xB3, 0xD8, 0xA3 };
static const symbol s_8_1[4] = { 0xD8, 0xB3, 0xD8, 0xAA };
static const symbol s_8_2[4] = { 0xD8, 0xB3, 0xD9, 0x86 };
static const symbol s_8_3[4] = { 0xD8, 0xB3, 0xD9, 0x8A };
-
-static const struct among a_8[4] =
-{
-{ 4, s_8_0, -1, 4, 0},
-{ 4, s_8_1, -1, 2, 0},
-{ 4, s_8_2, -1, 3, 0},
-{ 4, s_8_3, -1, 1, 0}
+static const struct among a_8[4] = {
+{ 4, s_8_0, 0, 4, 0},
+{ 4, s_8_1, 0, 2, 0},
+{ 4, s_8_2, 0, 3, 0},
+{ 4, s_8_3, 0, 1, 0}
};
static const symbol s_9_0[6] = { 0xD8, 0xAA, 0xD8, 0xB3, 0xD8, 0xAA };
static const symbol s_9_1[6] = { 0xD9, 0x86, 0xD8, 0xB3, 0xD8, 0xAA };
static const symbol s_9_2[6] = { 0xD9, 0x8A, 0xD8, 0xB3, 0xD8, 0xAA };
-
-static const struct among a_9[3] =
-{
-{ 6, s_9_0, -1, 1, 0},
-{ 6, s_9_1, -1, 1, 0},
-{ 6, s_9_2, -1, 1, 0}
+static const struct among a_9[3] = {
+{ 6, s_9_0, 0, 1, 0},
+{ 6, s_9_1, 0, 1, 0},
+{ 6, s_9_2, 0, 1, 0}
};
static const symbol s_10_0[2] = { 0xD9, 0x83 };
static const symbol s_10_7[6] = { 0xD9, 0x87, 0xD9, 0x85, 0xD8, 0xA7 };
static const symbol s_10_8[4] = { 0xD9, 0x86, 0xD8, 0xA7 };
static const symbol s_10_9[4] = { 0xD9, 0x87, 0xD8, 0xA7 };
-
-static const struct among a_10[10] =
-{
-{ 2, s_10_0, -1, 1, 0},
-{ 4, s_10_1, -1, 2, 0},
-{ 4, s_10_2, -1, 2, 0},
-{ 4, s_10_3, -1, 2, 0},
-{ 2, s_10_4, -1, 1, 0},
-{ 2, s_10_5, -1, 1, 0},
-{ 6, s_10_6, -1, 3, 0},
-{ 6, s_10_7, -1, 3, 0},
-{ 4, s_10_8, -1, 2, 0},
-{ 4, s_10_9, -1, 2, 0}
+static const struct among a_10[10] = {
+{ 2, s_10_0, 0, 1, 0},
+{ 4, s_10_1, 0, 2, 0},
+{ 4, s_10_2, 0, 2, 0},
+{ 4, s_10_3, 0, 2, 0},
+{ 2, s_10_4, 0, 1, 0},
+{ 2, s_10_5, 0, 1, 0},
+{ 6, s_10_6, 0, 3, 0},
+{ 6, s_10_7, 0, 3, 0},
+{ 4, s_10_8, 0, 2, 0},
+{ 4, s_10_9, 0, 2, 0}
};
-static const symbol s_11_0[2] = { 0xD9, 0x86 };
-
-static const struct among a_11[1] =
-{
-{ 2, s_11_0, -1, 1, 0}
+static const symbol s_11_0[2] = { 0xD9, 0x88 };
+static const symbol s_11_1[2] = { 0xD9, 0x8A };
+static const symbol s_11_2[2] = { 0xD8, 0xA7 };
+static const struct among a_11[3] = {
+{ 2, s_11_0, 0, 1, 0},
+{ 2, s_11_1, 0, 1, 0},
+{ 2, s_11_2, 0, 1, 0}
};
-static const symbol s_12_0[2] = { 0xD9, 0x88 };
-static const symbol s_12_1[2] = { 0xD9, 0x8A };
-static const symbol s_12_2[2] = { 0xD8, 0xA7 };
-
-static const struct among a_12[3] =
-{
-{ 2, s_12_0, -1, 1, 0},
-{ 2, s_12_1, -1, 1, 0},
-{ 2, s_12_2, -1, 1, 0}
+static const symbol s_12_0[2] = { 0xD9, 0x83 };
+static const symbol s_12_1[4] = { 0xD9, 0x83, 0xD9, 0x85 };
+static const symbol s_12_2[4] = { 0xD9, 0x87, 0xD9, 0x85 };
+static const symbol s_12_3[4] = { 0xD9, 0x83, 0xD9, 0x86 };
+static const symbol s_12_4[4] = { 0xD9, 0x87, 0xD9, 0x86 };
+static const symbol s_12_5[2] = { 0xD9, 0x87 };
+static const symbol s_12_6[6] = { 0xD9, 0x83, 0xD9, 0x85, 0xD9, 0x88 };
+static const symbol s_12_7[4] = { 0xD9, 0x86, 0xD9, 0x8A };
+static const symbol s_12_8[6] = { 0xD9, 0x83, 0xD9, 0x85, 0xD8, 0xA7 };
+static const symbol s_12_9[6] = { 0xD9, 0x87, 0xD9, 0x85, 0xD8, 0xA7 };
+static const symbol s_12_10[4] = { 0xD9, 0x86, 0xD8, 0xA7 };
+static const symbol s_12_11[4] = { 0xD9, 0x87, 0xD8, 0xA7 };
+static const struct among a_12[12] = {
+{ 2, s_12_0, 0, 1, 0},
+{ 4, s_12_1, 0, 2, 0},
+{ 4, s_12_2, 0, 2, 0},
+{ 4, s_12_3, 0, 2, 0},
+{ 4, s_12_4, 0, 2, 0},
+{ 2, s_12_5, 0, 1, 0},
+{ 6, s_12_6, 0, 3, 0},
+{ 4, s_12_7, 0, 2, 0},
+{ 6, s_12_8, 0, 3, 0},
+{ 6, s_12_9, 0, 3, 0},
+{ 4, s_12_10, 0, 2, 0},
+{ 4, s_12_11, 0, 2, 0}
};
-static const symbol s_13_0[4] = { 0xD8, 0xA7, 0xD8, 0xAA };
-
-static const struct among a_13[1] =
-{
-{ 4, s_13_0, -1, 1, 0}
+static const symbol s_13_0[2] = { 0xD9, 0x86 };
+static const symbol s_13_1[4] = { 0xD9, 0x88, 0xD9, 0x86 };
+static const symbol s_13_2[4] = { 0xD9, 0x8A, 0xD9, 0x86 };
+static const symbol s_13_3[4] = { 0xD8, 0xA7, 0xD9, 0x86 };
+static const symbol s_13_4[4] = { 0xD8, 0xAA, 0xD9, 0x86 };
+static const symbol s_13_5[2] = { 0xD9, 0x8A };
+static const symbol s_13_6[2] = { 0xD8, 0xA7 };
+static const symbol s_13_7[6] = { 0xD8, 0xAA, 0xD9, 0x85, 0xD8, 0xA7 };
+static const symbol s_13_8[4] = { 0xD9, 0x86, 0xD8, 0xA7 };
+static const symbol s_13_9[4] = { 0xD8, 0xAA, 0xD8, 0xA7 };
+static const symbol s_13_10[2] = { 0xD8, 0xAA };
+static const struct among a_13[11] = {
+{ 2, s_13_0, 0, 1, 0},
+{ 4, s_13_1, -1, 3, 0},
+{ 4, s_13_2, -2, 3, 0},
+{ 4, s_13_3, -3, 3, 0},
+{ 4, s_13_4, -4, 2, 0},
+{ 2, s_13_5, 0, 1, 0},
+{ 2, s_13_6, 0, 1, 0},
+{ 6, s_13_7, -1, 4, 0},
+{ 4, s_13_8, -2, 2, 0},
+{ 4, s_13_9, -3, 2, 0},
+{ 2, s_13_10, 0, 1, 0}
};
-static const symbol s_14_0[2] = { 0xD8, 0xAA };
-
-static const struct among a_14[1] =
-{
-{ 2, s_14_0, -1, 1, 0}
-};
-
-static const symbol s_15_0[2] = { 0xD8, 0xA9 };
-
-static const struct among a_15[1] =
-{
-{ 2, s_15_0, -1, 1, 0}
+static const symbol s_14_0[4] = { 0xD8, 0xAA, 0xD9, 0x85 };
+static const symbol s_14_1[4] = { 0xD9, 0x88, 0xD8, 0xA7 };
+static const struct among a_14[2] = {
+{ 4, s_14_0, 0, 1, 0},
+{ 4, s_14_1, 0, 1, 0}
};
-static const symbol s_16_0[2] = { 0xD9, 0x8A };
-
-static const struct among a_16[1] =
-{
-{ 2, s_16_0, -1, 1, 0}
-};
-
-static const symbol s_17_0[2] = { 0xD9, 0x83 };
-static const symbol s_17_1[4] = { 0xD9, 0x83, 0xD9, 0x85 };
-static const symbol s_17_2[4] = { 0xD9, 0x87, 0xD9, 0x85 };
-static const symbol s_17_3[4] = { 0xD9, 0x83, 0xD9, 0x86 };
-static const symbol s_17_4[4] = { 0xD9, 0x87, 0xD9, 0x86 };
-static const symbol s_17_5[2] = { 0xD9, 0x87 };
-static const symbol s_17_6[6] = { 0xD9, 0x83, 0xD9, 0x85, 0xD9, 0x88 };
-static const symbol s_17_7[4] = { 0xD9, 0x86, 0xD9, 0x8A };
-static const symbol s_17_8[6] = { 0xD9, 0x83, 0xD9, 0x85, 0xD8, 0xA7 };
-static const symbol s_17_9[6] = { 0xD9, 0x87, 0xD9, 0x85, 0xD8, 0xA7 };
-static const symbol s_17_10[4] = { 0xD9, 0x86, 0xD8, 0xA7 };
-static const symbol s_17_11[4] = { 0xD9, 0x87, 0xD8, 0xA7 };
-
-static const struct among a_17[12] =
-{
-{ 2, s_17_0, -1, 1, 0},
-{ 4, s_17_1, -1, 2, 0},
-{ 4, s_17_2, -1, 2, 0},
-{ 4, s_17_3, -1, 2, 0},
-{ 4, s_17_4, -1, 2, 0},
-{ 2, s_17_5, -1, 1, 0},
-{ 6, s_17_6, -1, 3, 0},
-{ 4, s_17_7, -1, 2, 0},
-{ 6, s_17_8, -1, 3, 0},
-{ 6, s_17_9, -1, 3, 0},
-{ 4, s_17_10, -1, 2, 0},
-{ 4, s_17_11, -1, 2, 0}
-};
-
-static const symbol s_18_0[2] = { 0xD9, 0x86 };
-static const symbol s_18_1[4] = { 0xD9, 0x88, 0xD9, 0x86 };
-static const symbol s_18_2[4] = { 0xD9, 0x8A, 0xD9, 0x86 };
-static const symbol s_18_3[4] = { 0xD8, 0xA7, 0xD9, 0x86 };
-static const symbol s_18_4[4] = { 0xD8, 0xAA, 0xD9, 0x86 };
-static const symbol s_18_5[2] = { 0xD9, 0x8A };
-static const symbol s_18_6[2] = { 0xD8, 0xA7 };
-static const symbol s_18_7[6] = { 0xD8, 0xAA, 0xD9, 0x85, 0xD8, 0xA7 };
-static const symbol s_18_8[4] = { 0xD9, 0x86, 0xD8, 0xA7 };
-static const symbol s_18_9[4] = { 0xD8, 0xAA, 0xD8, 0xA7 };
-static const symbol s_18_10[2] = { 0xD8, 0xAA };
-
-static const struct among a_18[11] =
-{
-{ 2, s_18_0, -1, 1, 0},
-{ 4, s_18_1, 0, 3, 0},
-{ 4, s_18_2, 0, 3, 0},
-{ 4, s_18_3, 0, 3, 0},
-{ 4, s_18_4, 0, 2, 0},
-{ 2, s_18_5, -1, 1, 0},
-{ 2, s_18_6, -1, 1, 0},
-{ 6, s_18_7, 6, 4, 0},
-{ 4, s_18_8, 6, 2, 0},
-{ 4, s_18_9, 6, 2, 0},
-{ 2, s_18_10, -1, 1, 0}
-};
-
-static const symbol s_19_0[4] = { 0xD8, 0xAA, 0xD9, 0x85 };
-static const symbol s_19_1[4] = { 0xD9, 0x88, 0xD8, 0xA7 };
-
-static const struct among a_19[2] =
-{
-{ 4, s_19_0, -1, 1, 0},
-{ 4, s_19_1, -1, 1, 0}
-};
-
-static const symbol s_20_0[2] = { 0xD9, 0x88 };
-static const symbol s_20_1[6] = { 0xD8, 0xAA, 0xD9, 0x85, 0xD9, 0x88 };
-
-static const struct among a_20[2] =
-{
-{ 2, s_20_0, -1, 1, 0},
-{ 6, s_20_1, 0, 2, 0}
+static const symbol s_15_0[2] = { 0xD9, 0x88 };
+static const symbol s_15_1[6] = { 0xD8, 0xAA, 0xD9, 0x85, 0xD9, 0x88 };
+static const struct among a_15[2] = {
+{ 2, s_15_0, 0, 1, 0},
+{ 6, s_15_1, -1, 2, 0}
};
-static const symbol s_21_0[2] = { 0xD9, 0x89 };
-
-static const struct among a_21[1] =
-{
-{ 2, s_21_0, -1, 1, 0}
-};
-
-static const symbol s_0[] = { '0' };
-static const symbol s_1[] = { '1' };
-static const symbol s_2[] = { '2' };
-static const symbol s_3[] = { '3' };
-static const symbol s_4[] = { '4' };
-static const symbol s_5[] = { '5' };
-static const symbol s_6[] = { '6' };
-static const symbol s_7[] = { '7' };
-static const symbol s_8[] = { '8' };
-static const symbol s_9[] = { '9' };
-static const symbol s_10[] = { 0xD8, 0xA1 };
-static const symbol s_11[] = { 0xD8, 0xA3 };
-static const symbol s_12[] = { 0xD8, 0xA5 };
-static const symbol s_13[] = { 0xD8, 0xA6 };
-static const symbol s_14[] = { 0xD8, 0xA2 };
-static const symbol s_15[] = { 0xD8, 0xA4 };
-static const symbol s_16[] = { 0xD8, 0xA7 };
-static const symbol s_17[] = { 0xD8, 0xA8 };
-static const symbol s_18[] = { 0xD8, 0xA9 };
-static const symbol s_19[] = { 0xD8, 0xAA };
-static const symbol s_20[] = { 0xD8, 0xAB };
-static const symbol s_21[] = { 0xD8, 0xAC };
-static const symbol s_22[] = { 0xD8, 0xAD };
-static const symbol s_23[] = { 0xD8, 0xAE };
-static const symbol s_24[] = { 0xD8, 0xAF };
-static const symbol s_25[] = { 0xD8, 0xB0 };
-static const symbol s_26[] = { 0xD8, 0xB1 };
-static const symbol s_27[] = { 0xD8, 0xB2 };
-static const symbol s_28[] = { 0xD8, 0xB3 };
-static const symbol s_29[] = { 0xD8, 0xB4 };
-static const symbol s_30[] = { 0xD8, 0xB5 };
-static const symbol s_31[] = { 0xD8, 0xB6 };
-static const symbol s_32[] = { 0xD8, 0xB7 };
-static const symbol s_33[] = { 0xD8, 0xB8 };
-static const symbol s_34[] = { 0xD8, 0xB9 };
-static const symbol s_35[] = { 0xD8, 0xBA };
-static const symbol s_36[] = { 0xD9, 0x81 };
-static const symbol s_37[] = { 0xD9, 0x82 };
-static const symbol s_38[] = { 0xD9, 0x83 };
-static const symbol s_39[] = { 0xD9, 0x84 };
-static const symbol s_40[] = { 0xD9, 0x85 };
-static const symbol s_41[] = { 0xD9, 0x86 };
-static const symbol s_42[] = { 0xD9, 0x87 };
-static const symbol s_43[] = { 0xD9, 0x88 };
-static const symbol s_44[] = { 0xD9, 0x89 };
-static const symbol s_45[] = { 0xD9, 0x8A };
-static const symbol s_46[] = { 0xD9, 0x84, 0xD8, 0xA7 };
-static const symbol s_47[] = { 0xD9, 0x84, 0xD8, 0xA3 };
-static const symbol s_48[] = { 0xD9, 0x84, 0xD8, 0xA5 };
-static const symbol s_49[] = { 0xD9, 0x84, 0xD8, 0xA2 };
-static const symbol s_50[] = { 0xD8, 0xA1 };
-static const symbol s_51[] = { 0xD8, 0xA7 };
-static const symbol s_52[] = { 0xD9, 0x88 };
-static const symbol s_53[] = { 0xD9, 0x8A };
-static const symbol s_54[] = { 0xD8, 0xA3 };
-static const symbol s_55[] = { 0xD8, 0xA2 };
-static const symbol s_56[] = { 0xD8, 0xA7 };
-static const symbol s_57[] = { 0xD8, 0xA5 };
-static const symbol s_58[] = { 0xD8, 0xA7 };
-static const symbol s_59[] = { 0xD8, 0xA8 };
-static const symbol s_60[] = { 0xD9, 0x83 };
-static const symbol s_61[] = { 0xD9, 0x8A };
-static const symbol s_62[] = { 0xD8, 0xAA };
-static const symbol s_63[] = { 0xD9, 0x86 };
-static const symbol s_64[] = { 0xD8, 0xA3 };
-static const symbol s_65[] = { 0xD8, 0xA7, 0xD8, 0xB3, 0xD8, 0xAA };
-static const symbol s_66[] = { 0xD9, 0x8A };
-
static int r_Normalize_pre(struct SN_env * z) {
int among_var;
- { int c1 = z->c;
- while(1) {
- int c2 = z->c;
- { int c3 = z->c;
+ {
+ int v_1 = z->c;
+ while (1) {
+ int v_2 = z->c;
+ do {
+ int v_3 = z->c;
z->bra = z->c;
- among_var = find_among(z, a_0, 144);
- if (!among_var) goto lab3;
+ among_var = find_among(z, a_0, 144, 0);
+ if (!among_var) goto lab2;
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_0);
+ {
+ int ret = slice_from_s(z, 1, s_0);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 1, s_1);
+ {
+ int ret = slice_from_s(z, 1, s_1);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = slice_from_s(z, 1, s_2);
+ {
+ int ret = slice_from_s(z, 1, s_2);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 1, s_3);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 1, s_4);
+ {
+ int ret = slice_from_s(z, 1, s_4);
if (ret < 0) return ret;
}
break;
case 7:
- { int ret = slice_from_s(z, 1, s_5);
+ {
+ int ret = slice_from_s(z, 1, s_5);
if (ret < 0) return ret;
}
break;
case 8:
- { int ret = slice_from_s(z, 1, s_6);
+ {
+ int ret = slice_from_s(z, 1, s_6);
if (ret < 0) return ret;
}
break;
case 9:
- { int ret = slice_from_s(z, 1, s_7);
+ {
+ int ret = slice_from_s(z, 1, s_7);
if (ret < 0) return ret;
}
break;
case 10:
- { int ret = slice_from_s(z, 1, s_8);
+ {
+ int ret = slice_from_s(z, 1, s_8);
if (ret < 0) return ret;
}
break;
case 11:
- { int ret = slice_from_s(z, 1, s_9);
+ {
+ int ret = slice_from_s(z, 1, s_9);
if (ret < 0) return ret;
}
break;
case 12:
- { int ret = slice_from_s(z, 2, s_10);
+ {
+ int ret = slice_from_s(z, 2, s_10);
if (ret < 0) return ret;
}
break;
case 13:
- { int ret = slice_from_s(z, 2, s_11);
+ {
+ int ret = slice_from_s(z, 2, s_11);
if (ret < 0) return ret;
}
break;
case 14:
- { int ret = slice_from_s(z, 2, s_12);
+ {
+ int ret = slice_from_s(z, 2, s_12);
if (ret < 0) return ret;
}
break;
case 15:
- { int ret = slice_from_s(z, 2, s_13);
+ {
+ int ret = slice_from_s(z, 2, s_13);
if (ret < 0) return ret;
}
break;
case 16:
- { int ret = slice_from_s(z, 2, s_14);
+ {
+ int ret = slice_from_s(z, 2, s_14);
if (ret < 0) return ret;
}
break;
case 17:
- { int ret = slice_from_s(z, 2, s_15);
+ {
+ int ret = slice_from_s(z, 2, s_15);
if (ret < 0) return ret;
}
break;
case 18:
- { int ret = slice_from_s(z, 2, s_16);
+ {
+ int ret = slice_from_s(z, 2, s_16);
if (ret < 0) return ret;
}
break;
case 19:
- { int ret = slice_from_s(z, 2, s_17);
+ {
+ int ret = slice_from_s(z, 2, s_17);
if (ret < 0) return ret;
}
break;
case 20:
- { int ret = slice_from_s(z, 2, s_18);
+ {
+ int ret = slice_from_s(z, 2, s_18);
if (ret < 0) return ret;
}
break;
case 21:
- { int ret = slice_from_s(z, 2, s_19);
+ {
+ int ret = slice_from_s(z, 2, s_19);
if (ret < 0) return ret;
}
break;
case 22:
- { int ret = slice_from_s(z, 2, s_20);
+ {
+ int ret = slice_from_s(z, 2, s_20);
if (ret < 0) return ret;
}
break;
case 23:
- { int ret = slice_from_s(z, 2, s_21);
+ {
+ int ret = slice_from_s(z, 2, s_21);
if (ret < 0) return ret;
}
break;
case 24:
- { int ret = slice_from_s(z, 2, s_22);
+ {
+ int ret = slice_from_s(z, 2, s_22);
if (ret < 0) return ret;
}
break;
case 25:
- { int ret = slice_from_s(z, 2, s_23);
+ {
+ int ret = slice_from_s(z, 2, s_23);
if (ret < 0) return ret;
}
break;
case 26:
- { int ret = slice_from_s(z, 2, s_24);
+ {
+ int ret = slice_from_s(z, 2, s_24);
if (ret < 0) return ret;
}
break;
case 27:
- { int ret = slice_from_s(z, 2, s_25);
+ {
+ int ret = slice_from_s(z, 2, s_25);
if (ret < 0) return ret;
}
break;
case 28:
- { int ret = slice_from_s(z, 2, s_26);
+ {
+ int ret = slice_from_s(z, 2, s_26);
if (ret < 0) return ret;
}
break;
case 29:
- { int ret = slice_from_s(z, 2, s_27);
+ {
+ int ret = slice_from_s(z, 2, s_27);
if (ret < 0) return ret;
}
break;
case 30:
- { int ret = slice_from_s(z, 2, s_28);
+ {
+ int ret = slice_from_s(z, 2, s_28);
if (ret < 0) return ret;
}
break;
case 31:
- { int ret = slice_from_s(z, 2, s_29);
+ {
+ int ret = slice_from_s(z, 2, s_29);
if (ret < 0) return ret;
}
break;
case 32:
- { int ret = slice_from_s(z, 2, s_30);
+ {
+ int ret = slice_from_s(z, 2, s_30);
if (ret < 0) return ret;
}
break;
case 33:
- { int ret = slice_from_s(z, 2, s_31);
+ {
+ int ret = slice_from_s(z, 2, s_31);
if (ret < 0) return ret;
}
break;
case 34:
- { int ret = slice_from_s(z, 2, s_32);
+ {
+ int ret = slice_from_s(z, 2, s_32);
if (ret < 0) return ret;
}
break;
case 35:
- { int ret = slice_from_s(z, 2, s_33);
+ {
+ int ret = slice_from_s(z, 2, s_33);
if (ret < 0) return ret;
}
break;
case 36:
- { int ret = slice_from_s(z, 2, s_34);
+ {
+ int ret = slice_from_s(z, 2, s_34);
if (ret < 0) return ret;
}
break;
case 37:
- { int ret = slice_from_s(z, 2, s_35);
+ {
+ int ret = slice_from_s(z, 2, s_35);
if (ret < 0) return ret;
}
break;
case 38:
- { int ret = slice_from_s(z, 2, s_36);
+ {
+ int ret = slice_from_s(z, 2, s_36);
if (ret < 0) return ret;
}
break;
case 39:
- { int ret = slice_from_s(z, 2, s_37);
+ {
+ int ret = slice_from_s(z, 2, s_37);
if (ret < 0) return ret;
}
break;
case 40:
- { int ret = slice_from_s(z, 2, s_38);
+ {
+ int ret = slice_from_s(z, 2, s_38);
if (ret < 0) return ret;
}
break;
case 41:
- { int ret = slice_from_s(z, 2, s_39);
+ {
+ int ret = slice_from_s(z, 2, s_39);
if (ret < 0) return ret;
}
break;
case 42:
- { int ret = slice_from_s(z, 2, s_40);
+ {
+ int ret = slice_from_s(z, 2, s_40);
if (ret < 0) return ret;
}
break;
case 43:
- { int ret = slice_from_s(z, 2, s_41);
+ {
+ int ret = slice_from_s(z, 2, s_41);
if (ret < 0) return ret;
}
break;
case 44:
- { int ret = slice_from_s(z, 2, s_42);
+ {
+ int ret = slice_from_s(z, 2, s_42);
if (ret < 0) return ret;
}
break;
case 45:
- { int ret = slice_from_s(z, 2, s_43);
+ {
+ int ret = slice_from_s(z, 2, s_43);
if (ret < 0) return ret;
}
break;
case 46:
- { int ret = slice_from_s(z, 2, s_44);
+ {
+ int ret = slice_from_s(z, 2, s_44);
if (ret < 0) return ret;
}
break;
case 47:
- { int ret = slice_from_s(z, 2, s_45);
+ {
+ int ret = slice_from_s(z, 2, s_45);
if (ret < 0) return ret;
}
break;
case 48:
- { int ret = slice_from_s(z, 4, s_46);
+ {
+ int ret = slice_from_s(z, 4, s_46);
if (ret < 0) return ret;
}
break;
case 49:
- { int ret = slice_from_s(z, 4, s_47);
+ {
+ int ret = slice_from_s(z, 4, s_47);
if (ret < 0) return ret;
}
break;
case 50:
- { int ret = slice_from_s(z, 4, s_48);
+ {
+ int ret = slice_from_s(z, 4, s_48);
if (ret < 0) return ret;
}
break;
case 51:
- { int ret = slice_from_s(z, 4, s_49);
+ {
+ int ret = slice_from_s(z, 4, s_49);
if (ret < 0) return ret;
}
break;
}
- goto lab2;
- lab3:
- z->c = c3;
- { int ret = skip_utf8(z->p, z->c, z->l, 1);
+ break;
+ lab2:
+ z->c = v_3;
+ {
+ int ret = skip_utf8(z->p, z->c, z->l, 1);
if (ret < 0) goto lab1;
z->c = ret;
}
- }
- lab2:
+ } while (0);
continue;
lab1:
- z->c = c2;
+ z->c = v_2;
break;
}
- z->c = c1;
+ z->c = v_1;
}
return 1;
}
static int r_Normalize_post(struct SN_env * z) {
int among_var;
- { int c1 = z->c;
+ {
+ int v_1 = z->c;
z->lb = z->c; z->c = z->l;
-
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 5 || !((124 >> (z->p[z->c - 1] & 0x1f)) & 1)) goto lab0;
- if (!find_among_b(z, a_1, 5)) goto lab0;
+ if (!find_among_b(z, a_1, 5, 0)) goto lab0;
z->bra = z->c;
- { int ret = slice_from_s(z, 2, s_50);
+ {
+ int ret = slice_from_s(z, 2, s_50);
if (ret < 0) return ret;
}
z->c = z->lb;
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int c2 = z->c;
- while(1) {
- int c3 = z->c;
- { int c4 = z->c;
+ {
+ int v_2 = z->c;
+ while (1) {
+ int v_3 = z->c;
+ do {
+ int v_4 = z->c;
z->bra = z->c;
- if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 5 || !((124 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab4;
- among_var = find_among(z, a_2, 5);
- if (!among_var) goto lab4;
+ if (z->c + 1 >= z->l || z->p[z->c + 1] >> 5 != 5 || !((124 >> (z->p[z->c + 1] & 0x1f)) & 1)) goto lab3;
+ among_var = find_among(z, a_2, 5, 0);
+ if (!among_var) goto lab3;
z->ket = z->c;
switch (among_var) {
case 1:
- { int ret = slice_from_s(z, 2, s_51);
+ {
+ int ret = slice_from_s(z, 2, s_51);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 2, s_52);
+ {
+ int ret = slice_from_s(z, 2, s_52);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 2, s_53);
+ {
+ int ret = slice_from_s(z, 2, s_53);
if (ret < 0) return ret;
}
break;
}
- goto lab3;
- lab4:
- z->c = c4;
- { int ret = skip_utf8(z->p, z->c, z->l, 1);
+ break;
+ lab3:
+ z->c = v_4;
+ {
+ int ret = skip_utf8(z->p, z->c, z->l, 1);
if (ret < 0) goto lab2;
z->c = ret;
}
- }
- lab3:
+ } while (0);
continue;
lab2:
- z->c = c3;
+ z->c = v_3;
break;
}
- z->c = c2;
+ z->c = v_2;
}
return 1;
}
int among_var;
z->bra = z->c;
if (z->c + 3 >= z->l || (z->p[z->c + 3] != 132 && z->p[z->c + 3] != 167)) return 0;
- among_var = find_among(z, a_3, 4);
+ among_var = find_among(z, a_3, 4, 0);
if (!among_var) return 0;
z->ket = z->c;
switch (among_var) {
case 1:
if (len_utf8(z->p) <= 4) return 0;
- z->I[2] = 1;
- z->I[1] = 0;
- z->I[0] = 1;
+ ((SN_local *)z)->b_is_noun = 1;
+ ((SN_local *)z)->b_is_verb = 0;
+ ((SN_local *)z)->b_is_defined = 1;
break;
case 2:
if (len_utf8(z->p) <= 3) return 0;
- z->I[2] = 1;
- z->I[1] = 0;
- z->I[0] = 1;
+ ((SN_local *)z)->b_is_noun = 1;
+ ((SN_local *)z)->b_is_verb = 0;
+ ((SN_local *)z)->b_is_defined = 1;
break;
}
return 1;
int among_var;
z->bra = z->c;
if (z->c + 3 >= z->l || z->p[z->c + 3] >> 5 != 5 || !((188 >> (z->p[z->c + 3] & 0x1f)) & 1)) return 0;
- among_var = find_among(z, a_4, 5);
+ among_var = find_among(z, a_4, 5, 0);
if (!among_var) return 0;
z->ket = z->c;
switch (among_var) {
case 1:
if (len_utf8(z->p) <= 3) return 0;
- { int ret = slice_from_s(z, 2, s_54);
+ {
+ int ret = slice_from_s(z, 2, s_54);
if (ret < 0) return ret;
}
break;
case 2:
if (len_utf8(z->p) <= 3) return 0;
- { int ret = slice_from_s(z, 2, s_55);
+ {
+ int ret = slice_from_s(z, 2, s_55);
if (ret < 0) return ret;
}
break;
case 3:
if (len_utf8(z->p) <= 3) return 0;
- { int ret = slice_from_s(z, 2, s_56);
+ {
+ int ret = slice_from_s(z, 2, s_56);
if (ret < 0) return ret;
}
break;
case 4:
if (len_utf8(z->p) <= 3) return 0;
- { int ret = slice_from_s(z, 2, s_57);
+ {
+ int ret = slice_from_s(z, 2, s_57);
if (ret < 0) return ret;
}
break;
static int r_Prefix_Step2(struct SN_env * z) {
z->bra = z->c;
if (z->c + 1 >= z->l || (z->p[z->c + 1] != 129 && z->p[z->c + 1] != 136)) return 0;
- if (!find_among(z, a_5, 2)) return 0;
+ if (!find_among(z, a_5, 2, 0)) return 0;
z->ket = z->c;
if (len_utf8(z->p) <= 3) return 0;
- { int c1 = z->c;
+ {
+ int v_1 = z->c;
if (!(eq_s(z, 2, s_58))) goto lab0;
return 0;
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
int among_var;
z->bra = z->c;
if (z->c + 3 >= z->l || (z->p[z->c + 3] != 132 && z->p[z->c + 3] != 167)) return 0;
- among_var = find_among(z, a_6, 4);
+ among_var = find_among(z, a_6, 4, 0);
if (!among_var) return 0;
z->ket = z->c;
switch (among_var) {
case 1:
if (len_utf8(z->p) <= 5) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (len_utf8(z->p) <= 4) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->bra = z->c;
if (z->c + 1 >= z->l || (z->p[z->c + 1] != 168 && z->p[z->c + 1] != 131)) return 0;
- among_var = find_among(z, a_7, 4);
+ among_var = find_among(z, a_7, 4, 0);
if (!among_var) return 0;
z->ket = z->c;
switch (among_var) {
case 1:
if (len_utf8(z->p) <= 3) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (len_utf8(z->p) <= 3) return 0;
- { int ret = slice_from_s(z, 2, s_59);
+ {
+ int ret = slice_from_s(z, 2, s_59);
if (ret < 0) return ret;
}
break;
case 3:
if (len_utf8(z->p) <= 3) return 0;
- { int ret = slice_from_s(z, 2, s_60);
+ {
+ int ret = slice_from_s(z, 2, s_60);
if (ret < 0) return ret;
}
break;
static int r_Prefix_Step3_Verb(struct SN_env * z) {
int among_var;
z->bra = z->c;
- among_var = find_among(z, a_8, 4);
+ among_var = find_among(z, a_8, 4, 0);
if (!among_var) return 0;
z->ket = z->c;
switch (among_var) {
case 1:
if (len_utf8(z->p) <= 4) return 0;
- { int ret = slice_from_s(z, 2, s_61);
+ {
+ int ret = slice_from_s(z, 2, s_61);
if (ret < 0) return ret;
}
break;
case 2:
if (len_utf8(z->p) <= 4) return 0;
- { int ret = slice_from_s(z, 2, s_62);
+ {
+ int ret = slice_from_s(z, 2, s_62);
if (ret < 0) return ret;
}
break;
case 3:
if (len_utf8(z->p) <= 4) return 0;
- { int ret = slice_from_s(z, 2, s_63);
+ {
+ int ret = slice_from_s(z, 2, s_63);
if (ret < 0) return ret;
}
break;
case 4:
if (len_utf8(z->p) <= 4) return 0;
- { int ret = slice_from_s(z, 2, s_64);
+ {
+ int ret = slice_from_s(z, 2, s_64);
if (ret < 0) return ret;
}
break;
static int r_Prefix_Step4_Verb(struct SN_env * z) {
z->bra = z->c;
if (z->c + 5 >= z->l || z->p[z->c + 5] != 170) return 0;
- if (!find_among(z, a_9, 3)) return 0;
+ if (!find_among(z, a_9, 3, 0)) return 0;
z->ket = z->c;
if (len_utf8(z->p) <= 4) return 0;
- z->I[1] = 1;
- z->I[2] = 0;
- { int ret = slice_from_s(z, 6, s_65);
+ ((SN_local *)z)->b_is_verb = 1;
+ ((SN_local *)z)->b_is_noun = 0;
+ {
+ int ret = slice_from_s(z, 6, s_65);
if (ret < 0) return ret;
}
return 1;
static int r_Suffix_Noun_Step1a(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_10, 10);
+ among_var = find_among_b(z, a_10, 10, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
if (len_utf8(z->p) < 4) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (len_utf8(z->p) < 5) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
if (len_utf8(z->p) < 6) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_Suffix_Noun_Step1b(struct SN_env * z) {
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] != 134) return 0;
- if (!find_among_b(z, a_11, 1)) return 0;
+ if (!(eq_s_b(z, 2, s_66))) return 0;
z->bra = z->c;
if (len_utf8(z->p) <= 5) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_Suffix_Noun_Step2a(struct SN_env * z) {
z->ket = z->c;
- if (!find_among_b(z, a_12, 3)) return 0;
+ if (!find_among_b(z, a_11, 3, 0)) return 0;
z->bra = z->c;
if (len_utf8(z->p) <= 4) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_Suffix_Noun_Step2b(struct SN_env * z) {
z->ket = z->c;
- if (z->c - 3 <= z->lb || z->p[z->c - 1] != 170) return 0;
- if (!find_among_b(z, a_13, 1)) return 0;
+ if (!(eq_s_b(z, 4, s_67))) return 0;
z->bra = z->c;
if (len_utf8(z->p) < 5) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_Suffix_Noun_Step2c1(struct SN_env * z) {
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] != 170) return 0;
- if (!find_among_b(z, a_14, 1)) return 0;
+ if (!(eq_s_b(z, 2, s_68))) return 0;
z->bra = z->c;
if (len_utf8(z->p) < 4) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_Suffix_Noun_Step2c2(struct SN_env * z) {
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] != 169) return 0;
- if (!find_among_b(z, a_15, 1)) return 0;
+ if (!(eq_s_b(z, 2, s_69))) return 0;
z->bra = z->c;
if (len_utf8(z->p) < 4) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_Suffix_Noun_Step3(struct SN_env * z) {
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] != 138) return 0;
- if (!find_among_b(z, a_16, 1)) return 0;
+ if (!(eq_s_b(z, 2, s_70))) return 0;
z->bra = z->c;
if (len_utf8(z->p) < 3) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_Suffix_Verb_Step1(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_17, 12);
+ among_var = find_among_b(z, a_12, 12, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
if (len_utf8(z->p) < 4) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (len_utf8(z->p) < 5) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
if (len_utf8(z->p) < 6) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_Suffix_Verb_Step2a(struct SN_env * z) {
int among_var;
z->ket = z->c;
- among_var = find_among_b(z, a_18, 11);
+ among_var = find_among_b(z, a_13, 11, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
if (len_utf8(z->p) < 4) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (len_utf8(z->p) < 5) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
if (len_utf8(z->p) <= 5) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 4:
if (len_utf8(z->p) < 6) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_Suffix_Verb_Step2b(struct SN_env * z) {
z->ket = z->c;
if (z->c - 3 <= z->lb || (z->p[z->c - 1] != 133 && z->p[z->c - 1] != 167)) return 0;
- if (!find_among_b(z, a_19, 2)) return 0;
+ if (!find_among_b(z, a_14, 2, 0)) return 0;
z->bra = z->c;
if (len_utf8(z->p) < 5) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] != 136) return 0;
- among_var = find_among_b(z, a_20, 2);
+ among_var = find_among_b(z, a_15, 2, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
if (len_utf8(z->p) < 4) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
if (len_utf8(z->p) < 6) return 0;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
static int r_Suffix_All_alef_maqsura(struct SN_env * z) {
z->ket = z->c;
- if (z->c - 1 <= z->lb || z->p[z->c - 1] != 137) return 0;
- if (!find_among_b(z, a_21, 1)) return 0;
+ if (!(eq_s_b(z, 2, s_71))) return 0;
z->bra = z->c;
- { int ret = slice_from_s(z, 2, s_66);
+ {
+ int ret = slice_from_s(z, 2, s_72);
if (ret < 0) return ret;
}
return 1;
}
extern int arabic_UTF_8_stem(struct SN_env * z) {
- z->I[2] = 1;
- z->I[1] = 1;
- z->I[0] = 0;
- { int c1 = z->c;
- { int ret = r_Checks1(z);
+ ((SN_local *)z)->b_is_noun = 1;
+ ((SN_local *)z)->b_is_verb = 1;
+ ((SN_local *)z)->b_is_defined = 0;
+ {
+ int v_1 = z->c;
+ {
+ int ret = r_Checks1(z);
if (ret < 0) return ret;
}
- z->c = c1;
+ z->c = v_1;
}
-
- { int ret = r_Normalize_pre(z);
+ {
+ int ret = r_Normalize_pre(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
- { int m2 = z->l - z->c; (void)m2;
- { int m3 = z->l - z->c; (void)m3;
- if (!(z->I[1])) goto lab2;
- { int m4 = z->l - z->c; (void)m4;
- { int i = 1;
- while(1) {
- int m5 = z->l - z->c; (void)m5;
- { int ret = r_Suffix_Verb_Step1(z);
- if (ret == 0) goto lab5;
+ {
+ int v_2 = z->l - z->c;
+ do {
+ int v_3 = z->l - z->c;
+ if (!((SN_local *)z)->b_is_verb) goto lab1;
+ do {
+ int v_4 = z->l - z->c;
+ {
+ int v_5 = 1;
+ while (1) {
+ int v_6 = z->l - z->c;
+ {
+ int ret = r_Suffix_Verb_Step1(z);
+ if (ret == 0) goto lab3;
if (ret < 0) return ret;
}
- i--;
+ v_5--;
continue;
- lab5:
- z->c = z->l - m5;
+ lab3:
+ z->c = z->l - v_6;
break;
}
- if (i > 0) goto lab4;
+ if (v_5 > 0) goto lab2;
}
- { int m6 = z->l - z->c; (void)m6;
- { int ret = r_Suffix_Verb_Step2a(z);
- if (ret == 0) goto lab7;
+ do {
+ int v_7 = z->l - z->c;
+ {
+ int ret = r_Suffix_Verb_Step2a(z);
+ if (ret == 0) goto lab4;
if (ret < 0) return ret;
}
- goto lab6;
- lab7:
- z->c = z->l - m6;
- { int ret = r_Suffix_Verb_Step2c(z);
- if (ret == 0) goto lab8;
+ break;
+ lab4:
+ z->c = z->l - v_7;
+ {
+ int ret = r_Suffix_Verb_Step2c(z);
+ if (ret == 0) goto lab5;
if (ret < 0) return ret;
}
- goto lab6;
- lab8:
- z->c = z->l - m6;
- { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
- if (ret < 0) goto lab4;
+ break;
+ lab5:
+ z->c = z->l - v_7;
+ {
+ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
+ if (ret < 0) goto lab2;
z->c = ret;
}
- }
- lab6:
- goto lab3;
- lab4:
- z->c = z->l - m4;
- { int ret = r_Suffix_Verb_Step2b(z);
- if (ret == 0) goto lab9;
+ } while (0);
+ break;
+ lab2:
+ z->c = z->l - v_4;
+ {
+ int ret = r_Suffix_Verb_Step2b(z);
+ if (ret == 0) goto lab6;
if (ret < 0) return ret;
}
- goto lab3;
- lab9:
- z->c = z->l - m4;
- { int ret = r_Suffix_Verb_Step2a(z);
- if (ret == 0) goto lab2;
+ break;
+ lab6:
+ z->c = z->l - v_4;
+ {
+ int ret = r_Suffix_Verb_Step2a(z);
+ if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
- }
- lab3:
- goto lab1;
- lab2:
- z->c = z->l - m3;
- if (!(z->I[2])) goto lab10;
- { int m7 = z->l - z->c; (void)m7;
- { int m8 = z->l - z->c; (void)m8;
- { int ret = r_Suffix_Noun_Step2c2(z);
- if (ret == 0) goto lab13;
+ } while (0);
+ break;
+ lab1:
+ z->c = z->l - v_3;
+ if (!((SN_local *)z)->b_is_noun) goto lab7;
+ {
+ int v_8 = z->l - z->c;
+ do {
+ int v_9 = z->l - z->c;
+ {
+ int ret = r_Suffix_Noun_Step2c2(z);
+ if (ret == 0) goto lab9;
if (ret < 0) return ret;
}
- goto lab12;
- lab13:
- z->c = z->l - m8;
-
- if (!(z->I[0])) goto lab15;
- goto lab14;
- lab15:
- { int ret = r_Suffix_Noun_Step1a(z);
- if (ret == 0) goto lab14;
+ break;
+ lab9:
+ z->c = z->l - v_9;
+ if (((SN_local *)z)->b_is_defined) goto lab10;
+ {
+ int ret = r_Suffix_Noun_Step1a(z);
+ if (ret == 0) goto lab10;
if (ret < 0) return ret;
}
- { int m9 = z->l - z->c; (void)m9;
- { int ret = r_Suffix_Noun_Step2a(z);
- if (ret == 0) goto lab17;
+ do {
+ int v_10 = z->l - z->c;
+ {
+ int ret = r_Suffix_Noun_Step2a(z);
+ if (ret == 0) goto lab11;
if (ret < 0) return ret;
}
- goto lab16;
- lab17:
- z->c = z->l - m9;
- { int ret = r_Suffix_Noun_Step2b(z);
- if (ret == 0) goto lab18;
+ break;
+ lab11:
+ z->c = z->l - v_10;
+ {
+ int ret = r_Suffix_Noun_Step2b(z);
+ if (ret == 0) goto lab12;
if (ret < 0) return ret;
}
- goto lab16;
- lab18:
- z->c = z->l - m9;
- { int ret = r_Suffix_Noun_Step2c1(z);
- if (ret == 0) goto lab19;
+ break;
+ lab12:
+ z->c = z->l - v_10;
+ {
+ int ret = r_Suffix_Noun_Step2c1(z);
+ if (ret == 0) goto lab13;
if (ret < 0) return ret;
}
- goto lab16;
- lab19:
- z->c = z->l - m9;
- { int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
- if (ret < 0) goto lab14;
+ break;
+ lab13:
+ z->c = z->l - v_10;
+ {
+ int ret = skip_b_utf8(z->p, z->c, z->lb, 1);
+ if (ret < 0) goto lab10;
z->c = ret;
}
- }
- lab16:
- goto lab12;
- lab14:
- z->c = z->l - m8;
- { int ret = r_Suffix_Noun_Step1b(z);
- if (ret == 0) goto lab20;
+ } while (0);
+ break;
+ lab10:
+ z->c = z->l - v_9;
+ {
+ int ret = r_Suffix_Noun_Step1b(z);
+ if (ret == 0) goto lab14;
if (ret < 0) return ret;
}
- { int m10 = z->l - z->c; (void)m10;
- { int ret = r_Suffix_Noun_Step2a(z);
- if (ret == 0) goto lab22;
+ do {
+ int v_11 = z->l - z->c;
+ {
+ int ret = r_Suffix_Noun_Step2a(z);
+ if (ret == 0) goto lab15;
if (ret < 0) return ret;
}
- goto lab21;
- lab22:
- z->c = z->l - m10;
- { int ret = r_Suffix_Noun_Step2b(z);
- if (ret == 0) goto lab23;
+ break;
+ lab15:
+ z->c = z->l - v_11;
+ {
+ int ret = r_Suffix_Noun_Step2b(z);
+ if (ret == 0) goto lab16;
if (ret < 0) return ret;
}
- goto lab21;
- lab23:
- z->c = z->l - m10;
- { int ret = r_Suffix_Noun_Step2c1(z);
- if (ret == 0) goto lab20;
+ break;
+ lab16:
+ z->c = z->l - v_11;
+ {
+ int ret = r_Suffix_Noun_Step2c1(z);
+ if (ret == 0) goto lab14;
if (ret < 0) return ret;
}
- }
- lab21:
- goto lab12;
- lab20:
- z->c = z->l - m8;
-
- if (!(z->I[0])) goto lab25;
- goto lab24;
- lab25:
- { int ret = r_Suffix_Noun_Step2a(z);
- if (ret == 0) goto lab24;
+ } while (0);
+ break;
+ lab14:
+ z->c = z->l - v_9;
+ if (((SN_local *)z)->b_is_defined) goto lab17;
+ {
+ int ret = r_Suffix_Noun_Step2a(z);
+ if (ret == 0) goto lab17;
if (ret < 0) return ret;
}
- goto lab12;
- lab24:
- z->c = z->l - m8;
- { int ret = r_Suffix_Noun_Step2b(z);
- if (ret == 0) { z->c = z->l - m7; goto lab11; }
+ break;
+ lab17:
+ z->c = z->l - v_9;
+ {
+ int ret = r_Suffix_Noun_Step2b(z);
+ if (ret == 0) { z->c = z->l - v_8; goto lab8; }
if (ret < 0) return ret;
}
- }
- lab12:
- lab11:
+ } while (0);
+ lab8:
;
}
- { int ret = r_Suffix_Noun_Step3(z);
- if (ret == 0) goto lab10;
+ {
+ int ret = r_Suffix_Noun_Step3(z);
+ if (ret == 0) goto lab7;
if (ret < 0) return ret;
}
- goto lab1;
- lab10:
- z->c = z->l - m3;
- { int ret = r_Suffix_All_alef_maqsura(z);
+ break;
+ lab7:
+ z->c = z->l - v_3;
+ {
+ int ret = r_Suffix_All_alef_maqsura(z);
if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
- }
- lab1:
+ } while (0);
lab0:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
z->c = z->lb;
- { int c11 = z->c;
- { int c12 = z->c;
- { int ret = r_Prefix_Step1(z);
- if (ret == 0) { z->c = c12; goto lab27; }
+ {
+ int v_12 = z->c;
+ {
+ int v_13 = z->c;
+ {
+ int ret = r_Prefix_Step1(z);
+ if (ret == 0) { z->c = v_13; goto lab19; }
if (ret < 0) return ret;
}
- lab27:
+ lab19:
;
}
- { int c13 = z->c;
- { int ret = r_Prefix_Step2(z);
- if (ret == 0) { z->c = c13; goto lab28; }
+ {
+ int v_14 = z->c;
+ {
+ int ret = r_Prefix_Step2(z);
+ if (ret == 0) { z->c = v_14; goto lab20; }
if (ret < 0) return ret;
}
- lab28:
+ lab20:
;
}
- { int c14 = z->c;
- { int ret = r_Prefix_Step3a_Noun(z);
- if (ret == 0) goto lab30;
+ do {
+ int v_15 = z->c;
+ {
+ int ret = r_Prefix_Step3a_Noun(z);
+ if (ret == 0) goto lab21;
if (ret < 0) return ret;
}
- goto lab29;
- lab30:
- z->c = c14;
- if (!(z->I[2])) goto lab31;
- { int ret = r_Prefix_Step3b_Noun(z);
- if (ret == 0) goto lab31;
+ break;
+ lab21:
+ z->c = v_15;
+ if (!((SN_local *)z)->b_is_noun) goto lab22;
+ {
+ int ret = r_Prefix_Step3b_Noun(z);
+ if (ret == 0) goto lab22;
if (ret < 0) return ret;
}
- goto lab29;
- lab31:
- z->c = c14;
- if (!(z->I[1])) goto lab26;
- { int c15 = z->c;
- { int ret = r_Prefix_Step3_Verb(z);
- if (ret == 0) { z->c = c15; goto lab32; }
+ break;
+ lab22:
+ z->c = v_15;
+ if (!((SN_local *)z)->b_is_verb) goto lab18;
+ {
+ int v_16 = z->c;
+ {
+ int ret = r_Prefix_Step3_Verb(z);
+ if (ret == 0) { z->c = v_16; goto lab23; }
if (ret < 0) return ret;
}
- lab32:
+ lab23:
;
}
- { int ret = r_Prefix_Step4_Verb(z);
- if (ret == 0) goto lab26;
+ {
+ int ret = r_Prefix_Step4_Verb(z);
+ if (ret == 0) goto lab18;
if (ret < 0) return ret;
}
- }
- lab29:
- lab26:
- z->c = c11;
+ } while (0);
+ lab18:
+ z->c = v_12;
}
-
- { int ret = r_Normalize_post(z);
+ {
+ int ret = r_Normalize_post(z);
if (ret < 0) return ret;
}
return 1;
}
-extern struct SN_env * arabic_UTF_8_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * arabic_UTF_8_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->b_is_defined = 0;
+ ((SN_local *)z)->b_is_verb = 0;
+ ((SN_local *)z)->b_is_noun = 0;
+ }
+ return z;
+}
-extern void arabic_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void arabic_UTF_8_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from armenian.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_UTF_8_armenian.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_pV;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#ifdef __cplusplus
}
#endif
+
static int r_ending(struct SN_env * z);
static int r_noun(struct SN_env * z);
static int r_verb(struct SN_env * z);
static int r_adjective(struct SN_env * z);
static int r_R2(struct SN_env * z);
static int r_mark_regions(struct SN_env * z);
-#ifdef __cplusplus
-extern "C" {
-#endif
-extern struct SN_env * armenian_UTF_8_create_env(void);
-extern void armenian_UTF_8_close_env(struct SN_env * z);
-
-
-#ifdef __cplusplus
-}
-#endif
static const symbol s_0_0[6] = { 0xD5, 0xA2, 0xD5, 0xA1, 0xD6, 0x80 };
static const symbol s_0_1[8] = { 0xD6, 0x80, 0xD5, 0xB8, 0xD6, 0x80, 0xD5, 0xA4 };
static const symbol s_0_2[10] = { 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xB8, 0xD6, 0x80, 0xD5, 0xA4 };
static const symbol s_0_20[4] = { 0xD5, 0xA1, 0xD5, 0xBF };
static const symbol s_0_21[8] = { 0xD5, 0xA1, 0xD5, 0xBE, 0xD5, 0xA5, 0xD5, 0xBF };
static const symbol s_0_22[6] = { 0xD5, 0xAF, 0xD5, 0xB8, 0xD5, 0xBF };
-
-static const struct among a_0[23] =
-{
-{ 6, s_0_0, -1, 1, 0},
-{ 8, s_0_1, -1, 1, 0},
-{ 10, s_0_2, 1, 1, 0},
-{ 6, s_0_3, -1, 1, 0},
-{ 6, s_0_4, -1, 1, 0},
-{ 8, s_0_5, -1, 1, 0},
-{ 4, s_0_6, -1, 1, 0},
-{ 8, s_0_7, -1, 1, 0},
-{ 8, s_0_8, -1, 1, 0},
-{ 8, s_0_9, -1, 1, 0},
-{ 4, s_0_10, -1, 1, 0},
-{ 8, s_0_11, 10, 1, 0},
-{ 8, s_0_12, 10, 1, 0},
-{ 8, s_0_13, -1, 1, 0},
-{ 4, s_0_14, -1, 1, 0},
-{ 6, s_0_15, 14, 1, 0},
-{ 8, s_0_16, 14, 1, 0},
-{ 8, s_0_17, -1, 1, 0},
-{ 6, s_0_18, -1, 1, 0},
-{ 4, s_0_19, -1, 1, 0},
-{ 4, s_0_20, -1, 1, 0},
-{ 8, s_0_21, -1, 1, 0},
-{ 6, s_0_22, -1, 1, 0}
+static const struct among a_0[23] = {
+{ 6, s_0_0, 0, 1, 0},
+{ 8, s_0_1, 0, 1, 0},
+{ 10, s_0_2, -1, 1, 0},
+{ 6, s_0_3, 0, 1, 0},
+{ 6, s_0_4, 0, 1, 0},
+{ 8, s_0_5, 0, 1, 0},
+{ 4, s_0_6, 0, 1, 0},
+{ 8, s_0_7, 0, 1, 0},
+{ 8, s_0_8, 0, 1, 0},
+{ 8, s_0_9, 0, 1, 0},
+{ 4, s_0_10, 0, 1, 0},
+{ 8, s_0_11, -1, 1, 0},
+{ 8, s_0_12, -2, 1, 0},
+{ 8, s_0_13, 0, 1, 0},
+{ 4, s_0_14, 0, 1, 0},
+{ 6, s_0_15, -1, 1, 0},
+{ 8, s_0_16, -2, 1, 0},
+{ 8, s_0_17, 0, 1, 0},
+{ 6, s_0_18, 0, 1, 0},
+{ 4, s_0_19, 0, 1, 0},
+{ 4, s_0_20, 0, 1, 0},
+{ 8, s_0_21, 0, 1, 0},
+{ 6, s_0_22, 0, 1, 0}
};
static const symbol s_1_0[4] = { 0xD5, 0xA1, 0xD6, 0x80 };
static const symbol s_1_68[8] = { 0xD5, 0xA5, 0xD6, 0x81, 0xD5, 0xA1, 0xD5, 0xBE };
static const symbol s_1_69[8] = { 0xD5, 0xA1, 0xD5, 0xAC, 0xD5, 0xB8, 0xD5, 0xBE };
static const symbol s_1_70[8] = { 0xD5, 0xA5, 0xD5, 0xAC, 0xD5, 0xB8, 0xD5, 0xBE };
-
-static const struct among a_1[71] =
-{
-{ 4, s_1_0, -1, 1, 0},
-{ 8, s_1_1, 0, 1, 0},
-{ 8, s_1_2, 0, 1, 0},
-{ 10, s_1_3, -1, 1, 0},
-{ 8, s_1_4, -1, 1, 0},
-{ 8, s_1_5, -1, 1, 0},
-{ 10, s_1_6, 5, 1, 0},
-{ 10, s_1_7, -1, 1, 0},
-{ 10, s_1_8, -1, 1, 0},
-{ 4, s_1_9, -1, 1, 0},
-{ 4, s_1_10, -1, 1, 0},
-{ 10, s_1_11, 10, 1, 0},
-{ 8, s_1_12, -1, 1, 0},
-{ 8, s_1_13, -1, 1, 0},
-{ 4, s_1_14, -1, 1, 0},
-{ 6, s_1_15, 14, 1, 0},
-{ 8, s_1_16, 15, 1, 0},
-{ 10, s_1_17, -1, 1, 0},
-{ 8, s_1_18, -1, 1, 0},
-{ 8, s_1_19, -1, 1, 0},
-{ 10, s_1_20, 19, 1, 0},
-{ 6, s_1_21, -1, 1, 0},
-{ 8, s_1_22, 21, 1, 0},
-{ 10, s_1_23, 22, 1, 0},
-{ 12, s_1_24, -1, 1, 0},
-{ 10, s_1_25, -1, 1, 0},
-{ 10, s_1_26, -1, 1, 0},
-{ 12, s_1_27, 26, 1, 0},
-{ 2, s_1_28, -1, 1, 0},
-{ 6, s_1_29, 28, 1, 0},
-{ 6, s_1_30, 28, 1, 0},
-{ 4, s_1_31, -1, 1, 0},
-{ 8, s_1_32, -1, 1, 0},
-{ 6, s_1_33, -1, 1, 0},
-{ 6, s_1_34, -1, 1, 0},
-{ 8, s_1_35, 34, 1, 0},
-{ 4, s_1_36, -1, 1, 0},
-{ 6, s_1_37, 36, 1, 0},
-{ 10, s_1_38, 36, 1, 0},
-{ 8, s_1_39, 36, 1, 0},
-{ 8, s_1_40, 36, 1, 0},
-{ 4, s_1_41, -1, 1, 0},
-{ 6, s_1_42, 41, 1, 0},
-{ 6, s_1_43, 41, 1, 0},
-{ 8, s_1_44, 43, 1, 0},
-{ 10, s_1_45, 44, 1, 0},
-{ 6, s_1_46, 41, 1, 0},
-{ 6, s_1_47, 41, 1, 0},
-{ 10, s_1_48, 47, 1, 0},
-{ 10, s_1_49, 47, 1, 0},
-{ 6, s_1_50, 41, 1, 0},
-{ 8, s_1_51, 50, 1, 0},
-{ 8, s_1_52, 50, 1, 0},
-{ 10, s_1_53, 52, 1, 0},
-{ 6, s_1_54, -1, 1, 0},
-{ 6, s_1_55, -1, 1, 0},
-{ 8, s_1_56, 55, 1, 0},
-{ 4, s_1_57, -1, 1, 0},
-{ 6, s_1_58, 57, 1, 0},
-{ 8, s_1_59, 58, 1, 0},
-{ 10, s_1_60, -1, 1, 0},
-{ 8, s_1_61, -1, 1, 0},
-{ 8, s_1_62, -1, 1, 0},
-{ 10, s_1_63, 62, 1, 0},
-{ 8, s_1_64, -1, 1, 0},
-{ 8, s_1_65, -1, 1, 0},
-{ 4, s_1_66, -1, 1, 0},
-{ 8, s_1_67, 66, 1, 0},
-{ 8, s_1_68, 66, 1, 0},
-{ 8, s_1_69, -1, 1, 0},
-{ 8, s_1_70, -1, 1, 0}
+static const struct among a_1[71] = {
+{ 4, s_1_0, 0, 1, 0},
+{ 8, s_1_1, -1, 1, 0},
+{ 8, s_1_2, -2, 1, 0},
+{ 10, s_1_3, 0, 1, 0},
+{ 8, s_1_4, 0, 1, 0},
+{ 8, s_1_5, 0, 1, 0},
+{ 10, s_1_6, -1, 1, 0},
+{ 10, s_1_7, 0, 1, 0},
+{ 10, s_1_8, 0, 1, 0},
+{ 4, s_1_9, 0, 1, 0},
+{ 4, s_1_10, 0, 1, 0},
+{ 10, s_1_11, -1, 1, 0},
+{ 8, s_1_12, 0, 1, 0},
+{ 8, s_1_13, 0, 1, 0},
+{ 4, s_1_14, 0, 1, 0},
+{ 6, s_1_15, -1, 1, 0},
+{ 8, s_1_16, -1, 1, 0},
+{ 10, s_1_17, 0, 1, 0},
+{ 8, s_1_18, 0, 1, 0},
+{ 8, s_1_19, 0, 1, 0},
+{ 10, s_1_20, -1, 1, 0},
+{ 6, s_1_21, 0, 1, 0},
+{ 8, s_1_22, -1, 1, 0},
+{ 10, s_1_23, -1, 1, 0},
+{ 12, s_1_24, 0, 1, 0},
+{ 10, s_1_25, 0, 1, 0},
+{ 10, s_1_26, 0, 1, 0},
+{ 12, s_1_27, -1, 1, 0},
+{ 2, s_1_28, 0, 1, 0},
+{ 6, s_1_29, -1, 1, 0},
+{ 6, s_1_30, -2, 1, 0},
+{ 4, s_1_31, 0, 1, 0},
+{ 8, s_1_32, 0, 1, 0},
+{ 6, s_1_33, 0, 1, 0},
+{ 6, s_1_34, 0, 1, 0},
+{ 8, s_1_35, -1, 1, 0},
+{ 4, s_1_36, 0, 1, 0},
+{ 6, s_1_37, -1, 1, 0},
+{ 10, s_1_38, -2, 1, 0},
+{ 8, s_1_39, -3, 1, 0},
+{ 8, s_1_40, -4, 1, 0},
+{ 4, s_1_41, 0, 1, 0},
+{ 6, s_1_42, -1, 1, 0},
+{ 6, s_1_43, -2, 1, 0},
+{ 8, s_1_44, -1, 1, 0},
+{ 10, s_1_45, -1, 1, 0},
+{ 6, s_1_46, -5, 1, 0},
+{ 6, s_1_47, -6, 1, 0},
+{ 10, s_1_48, -1, 1, 0},
+{ 10, s_1_49, -2, 1, 0},
+{ 6, s_1_50, -9, 1, 0},
+{ 8, s_1_51, -1, 1, 0},
+{ 8, s_1_52, -2, 1, 0},
+{ 10, s_1_53, -1, 1, 0},
+{ 6, s_1_54, 0, 1, 0},
+{ 6, s_1_55, 0, 1, 0},
+{ 8, s_1_56, -1, 1, 0},
+{ 4, s_1_57, 0, 1, 0},
+{ 6, s_1_58, -1, 1, 0},
+{ 8, s_1_59, -1, 1, 0},
+{ 10, s_1_60, 0, 1, 0},
+{ 8, s_1_61, 0, 1, 0},
+{ 8, s_1_62, 0, 1, 0},
+{ 10, s_1_63, -1, 1, 0},
+{ 8, s_1_64, 0, 1, 0},
+{ 8, s_1_65, 0, 1, 0},
+{ 4, s_1_66, 0, 1, 0},
+{ 8, s_1_67, -1, 1, 0},
+{ 8, s_1_68, -2, 1, 0},
+{ 8, s_1_69, 0, 1, 0},
+{ 8, s_1_70, 0, 1, 0}
};
static const symbol s_2_0[6] = { 0xD5, 0xA3, 0xD5, 0xA1, 0xD6, 0x80 };
static const symbol s_2_37[4] = { 0xD5, 0xAB, 0xD5, 0xB9 };
static const symbol s_2_38[6] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xBD };
static const symbol s_2_39[8] = { 0xD5, 0xB8, 0xD6, 0x82, 0xD5, 0xBD, 0xD5, 0xBF };
-
-static const struct among a_2[40] =
-{
-{ 6, s_2_0, -1, 1, 0},
-{ 6, s_2_1, -1, 1, 0},
-{ 8, s_2_2, 1, 1, 0},
-{ 8, s_2_3, -1, 1, 0},
-{ 4, s_2_4, -1, 1, 0},
-{ 4, s_2_5, -1, 1, 0},
-{ 2, s_2_6, -1, 1, 0},
-{ 6, s_2_7, 6, 1, 0},
-{ 6, s_2_8, 6, 1, 0},
-{ 4, s_2_9, 6, 1, 0},
-{ 8, s_2_10, 9, 1, 0},
-{ 8, s_2_11, 9, 1, 0},
-{ 8, s_2_12, 6, 1, 0},
-{ 8, s_2_13, 6, 1, 0},
-{ 8, s_2_14, 6, 1, 0},
-{ 10, s_2_15, 14, 1, 0},
-{ 6, s_2_16, 6, 1, 0},
-{ 6, s_2_17, 6, 1, 0},
-{ 6, s_2_18, 6, 1, 0},
-{ 6, s_2_19, -1, 1, 0},
-{ 8, s_2_20, -1, 1, 0},
-{ 4, s_2_21, -1, 1, 0},
-{ 8, s_2_22, -1, 1, 0},
-{ 4, s_2_23, -1, 1, 0},
-{ 6, s_2_24, -1, 1, 0},
-{ 4, s_2_25, -1, 1, 0},
-{ 6, s_2_26, 25, 1, 0},
-{ 8, s_2_27, 25, 1, 0},
-{ 4, s_2_28, -1, 1, 0},
-{ 8, s_2_29, -1, 1, 0},
-{ 14, s_2_30, 29, 1, 0},
-{ 4, s_2_31, -1, 1, 0},
-{ 8, s_2_32, 31, 1, 0},
-{ 6, s_2_33, 31, 1, 0},
-{ 8, s_2_34, 31, 1, 0},
-{ 8, s_2_35, -1, 1, 0},
-{ 6, s_2_36, -1, 1, 0},
-{ 4, s_2_37, -1, 1, 0},
-{ 6, s_2_38, -1, 1, 0},
-{ 8, s_2_39, -1, 1, 0}
+static const struct among a_2[40] = {
+{ 6, s_2_0, 0, 1, 0},
+{ 6, s_2_1, 0, 1, 0},
+{ 8, s_2_2, -1, 1, 0},
+{ 8, s_2_3, 0, 1, 0},
+{ 4, s_2_4, 0, 1, 0},
+{ 4, s_2_5, 0, 1, 0},
+{ 2, s_2_6, 0, 1, 0},
+{ 6, s_2_7, -1, 1, 0},
+{ 6, s_2_8, -2, 1, 0},
+{ 4, s_2_9, -3, 1, 0},
+{ 8, s_2_10, -1, 1, 0},
+{ 8, s_2_11, -2, 1, 0},
+{ 8, s_2_12, -6, 1, 0},
+{ 8, s_2_13, -7, 1, 0},
+{ 8, s_2_14, -8, 1, 0},
+{ 10, s_2_15, -1, 1, 0},
+{ 6, s_2_16, -10, 1, 0},
+{ 6, s_2_17, -11, 1, 0},
+{ 6, s_2_18, -12, 1, 0},
+{ 6, s_2_19, 0, 1, 0},
+{ 8, s_2_20, 0, 1, 0},
+{ 4, s_2_21, 0, 1, 0},
+{ 8, s_2_22, 0, 1, 0},
+{ 4, s_2_23, 0, 1, 0},
+{ 6, s_2_24, 0, 1, 0},
+{ 4, s_2_25, 0, 1, 0},
+{ 6, s_2_26, -1, 1, 0},
+{ 8, s_2_27, -2, 1, 0},
+{ 4, s_2_28, 0, 1, 0},
+{ 8, s_2_29, 0, 1, 0},
+{ 14, s_2_30, -1, 1, 0},
+{ 4, s_2_31, 0, 1, 0},
+{ 8, s_2_32, -1, 1, 0},
+{ 6, s_2_33, -2, 1, 0},
+{ 8, s_2_34, -3, 1, 0},
+{ 8, s_2_35, 0, 1, 0},
+{ 6, s_2_36, 0, 1, 0},
+{ 4, s_2_37, 0, 1, 0},
+{ 6, s_2_38, 0, 1, 0},
+{ 8, s_2_39, 0, 1, 0}
};
static const symbol s_3_0[4] = { 0xD5, 0xA5, 0xD6, 0x80 };
static const symbol s_3_54[10] = { 0xD5, 0xB6, 0xD5, 0xA5, 0xD6, 0x80, 0xD5, 0xB8, 0xD5, 0xBE };
static const symbol s_3_55[8] = { 0xD5, 0xA1, 0xD5, 0xB6, 0xD5, 0xB8, 0xD5, 0xBE };
static const symbol s_3_56[6] = { 0xD5, 0xBE, 0xD5, 0xB8, 0xD5, 0xBE };
-
-static const struct among a_3[57] =
-{
-{ 4, s_3_0, -1, 1, 0},
-{ 6, s_3_1, 0, 1, 0},
-{ 2, s_3_2, -1, 1, 0},
-{ 6, s_3_3, 2, 1, 0},
-{ 4, s_3_4, 2, 1, 0},
-{ 8, s_3_5, 4, 1, 0},
-{ 10, s_3_6, 5, 1, 0},
-{ 6, s_3_7, 4, 1, 0},
-{ 10, s_3_8, 4, 1, 0},
-{ 8, s_3_9, 4, 1, 0},
-{ 6, s_3_10, 4, 1, 0},
-{ 4, s_3_11, 2, 1, 0},
-{ 4, s_3_12, -1, 1, 0},
-{ 4, s_3_13, -1, 1, 0},
-{ 6, s_3_14, -1, 1, 0},
-{ 2, s_3_15, -1, 1, 0},
-{ 6, s_3_16, 15, 1, 0},
-{ 8, s_3_17, 16, 1, 0},
-{ 6, s_3_18, 15, 1, 0},
-{ 6, s_3_19, 15, 1, 0},
-{ 14, s_3_20, 19, 1, 0},
-{ 8, s_3_21, 19, 1, 0},
-{ 6, s_3_22, 15, 1, 0},
-{ 2, s_3_23, -1, 1, 0},
-{ 6, s_3_24, 23, 1, 0},
-{ 8, s_3_25, 24, 1, 0},
-{ 6, s_3_26, 23, 1, 0},
-{ 14, s_3_27, 26, 1, 0},
-{ 8, s_3_28, 26, 1, 0},
-{ 6, s_3_29, 23, 1, 0},
-{ 2, s_3_30, -1, 1, 0},
-{ 6, s_3_31, 30, 1, 0},
-{ 8, s_3_32, 31, 1, 0},
-{ 4, s_3_33, 30, 1, 0},
-{ 10, s_3_34, -1, 1, 0},
-{ 12, s_3_35, 34, 1, 0},
-{ 10, s_3_36, -1, 1, 0},
-{ 2, s_3_37, -1, 1, 0},
-{ 6, s_3_38, 37, 1, 0},
-{ 8, s_3_39, 38, 1, 0},
-{ 6, s_3_40, 37, 1, 0},
-{ 4, s_3_41, 37, 1, 0},
-{ 12, s_3_42, 41, 1, 0},
-{ 6, s_3_43, 41, 1, 0},
-{ 4, s_3_44, 37, 1, 0},
-{ 8, s_3_45, 44, 1, 0},
-{ 10, s_3_46, 45, 1, 0},
-{ 14, s_3_47, 37, 1, 0},
-{ 4, s_3_48, -1, 1, 0},
-{ 14, s_3_49, -1, 1, 0},
-{ 8, s_3_50, -1, 1, 0},
-{ 6, s_3_51, -1, 1, 0},
-{ 4, s_3_52, -1, 1, 0},
-{ 8, s_3_53, 52, 1, 0},
-{ 10, s_3_54, 53, 1, 0},
-{ 8, s_3_55, 52, 1, 0},
-{ 6, s_3_56, 52, 1, 0}
+static const struct among a_3[57] = {
+{ 4, s_3_0, 0, 1, 0},
+{ 6, s_3_1, -1, 1, 0},
+{ 2, s_3_2, 0, 1, 0},
+{ 6, s_3_3, -1, 1, 0},
+{ 4, s_3_4, -2, 1, 0},
+{ 8, s_3_5, -1, 1, 0},
+{ 10, s_3_6, -1, 1, 0},
+{ 6, s_3_7, -3, 1, 0},
+{ 10, s_3_8, -4, 1, 0},
+{ 8, s_3_9, -5, 1, 0},
+{ 6, s_3_10, -6, 1, 0},
+{ 4, s_3_11, -9, 1, 0},
+{ 4, s_3_12, 0, 1, 0},
+{ 4, s_3_13, 0, 1, 0},
+{ 6, s_3_14, 0, 1, 0},
+{ 2, s_3_15, 0, 1, 0},
+{ 6, s_3_16, -1, 1, 0},
+{ 8, s_3_17, -1, 1, 0},
+{ 6, s_3_18, -3, 1, 0},
+{ 6, s_3_19, -4, 1, 0},
+{ 14, s_3_20, -1, 1, 0},
+{ 8, s_3_21, -2, 1, 0},
+{ 6, s_3_22, -7, 1, 0},
+{ 2, s_3_23, 0, 1, 0},
+{ 6, s_3_24, -1, 1, 0},
+{ 8, s_3_25, -1, 1, 0},
+{ 6, s_3_26, -3, 1, 0},
+{ 14, s_3_27, -1, 1, 0},
+{ 8, s_3_28, -2, 1, 0},
+{ 6, s_3_29, -6, 1, 0},
+{ 2, s_3_30, 0, 1, 0},
+{ 6, s_3_31, -1, 1, 0},
+{ 8, s_3_32, -1, 1, 0},
+{ 4, s_3_33, -3, 1, 0},
+{ 10, s_3_34, 0, 1, 0},
+{ 12, s_3_35, -1, 1, 0},
+{ 10, s_3_36, 0, 1, 0},
+{ 2, s_3_37, 0, 1, 0},
+{ 6, s_3_38, -1, 1, 0},
+{ 8, s_3_39, -1, 1, 0},
+{ 6, s_3_40, -3, 1, 0},
+{ 4, s_3_41, -4, 1, 0},
+{ 12, s_3_42, -1, 1, 0},
+{ 6, s_3_43, -2, 1, 0},
+{ 4, s_3_44, -7, 1, 0},
+{ 8, s_3_45, -1, 1, 0},
+{ 10, s_3_46, -1, 1, 0},
+{ 14, s_3_47, -10, 1, 0},
+{ 4, s_3_48, 0, 1, 0},
+{ 14, s_3_49, 0, 1, 0},
+{ 8, s_3_50, 0, 1, 0},
+{ 6, s_3_51, 0, 1, 0},
+{ 4, s_3_52, 0, 1, 0},
+{ 8, s_3_53, -1, 1, 0},
+{ 10, s_3_54, -1, 1, 0},
+{ 8, s_3_55, -3, 1, 0},
+{ 6, s_3_56, -4, 1, 0}
};
static const unsigned char g_v[] = { 209, 4, 128, 0, 18 };
-
static int r_mark_regions(struct SN_env * z) {
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
-
+ ((SN_local *)z)->i_pV = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
{
int ret = out_grouping_U(z, g_v, 1377, 1413, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_pV = z->c;
{
int ret = in_grouping_U(z, g_v, 1377, 1413, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
-
{
int ret = out_grouping_U(z, g_v, 1377, 1413, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
-
{
int ret = in_grouping_U(z, g_v, 1377, 1413, 1);
if (ret < 0) goto lab0;
z->c += ret;
}
- z->I[0] = z->c;
+ ((SN_local *)z)->i_p2 = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
return 1;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_adjective(struct SN_env * z) {
z->ket = z->c;
- if (!find_among_b(z, a_0, 23)) return 0;
+ if (!find_among_b(z, a_0, 23, 0)) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_verb(struct SN_env * z) {
z->ket = z->c;
- if (!find_among_b(z, a_1, 71)) return 0;
+ if (!find_among_b(z, a_1, 71, 0)) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_noun(struct SN_env * z) {
z->ket = z->c;
- if (!find_among_b(z, a_2, 40)) return 0;
+ if (!find_among_b(z, a_2, 40, 0)) return 0;
z->bra = z->c;
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
static int r_ending(struct SN_env * z) {
z->ket = z->c;
- if (!find_among_b(z, a_3, 57)) return 0;
+ if (!find_among_b(z, a_3, 57, 0)) return 0;
z->bra = z->c;
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
return 1;
}
extern int armenian_UTF_8_stem(struct SN_env * z) {
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
-
- { int mlimit1;
- if (z->c < z->I[1]) return 0;
- mlimit1 = z->lb; z->lb = z->I[1];
- { int m2 = z->l - z->c; (void)m2;
- { int ret = r_ending(z);
+ {
+ int v_1;
+ if (z->c < ((SN_local *)z)->i_pV) return 0;
+ v_1 = z->lb; z->lb = ((SN_local *)z)->i_pV;
+ {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_ending(z);
if (ret < 0) return ret;
}
- z->c = z->l - m2;
+ z->c = z->l - v_2;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_verb(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_verb(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
- { int m4 = z->l - z->c; (void)m4;
- { int ret = r_adjective(z);
+ {
+ int v_4 = z->l - z->c;
+ {
+ int ret = r_adjective(z);
if (ret < 0) return ret;
}
- z->c = z->l - m4;
+ z->c = z->l - v_4;
}
- { int m5 = z->l - z->c; (void)m5;
- { int ret = r_noun(z);
+ {
+ int v_5 = z->l - z->c;
+ {
+ int ret = r_noun(z);
if (ret < 0) return ret;
}
- z->c = z->l - m5;
+ z->c = z->l - v_5;
}
- z->lb = mlimit1;
+ z->lb = v_1;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * armenian_UTF_8_create_env(void) { return SN_create_env(0, 2); }
+extern struct SN_env * armenian_UTF_8_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_pV = 0;
+ }
+ return z;
+}
-extern void armenian_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void armenian_UTF_8_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from basque.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_UTF_8_basque.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+ int i_pV;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#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_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
+static const symbol s_0[] = { 'j', 'o', 'k' };
+static const symbol s_1[] = { 't', 'r', 'a' };
+static const symbol s_2[] = { 'm', 'i', 'n', 'u', 't', 'u' };
+static const symbol s_3[] = { 'z' };
-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_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] =
-{
-{ 4, s_0_0, -1, 1, 0},
-{ 5, s_0_1, 0, 1, 0},
-{ 5, s_0_2, 0, 1, 0},
-{ 5, s_0_3, 0, 1, 0},
-{ 6, s_0_4, -1, 1, 0},
-{ 5, s_0_5, -1, 1, 0},
-{ 6, s_0_6, -1, 1, 0},
-{ 7, s_0_7, -1, 1, 0},
-{ 5, s_0_8, -1, 1, 0},
-{ 5, s_0_9, -1, 1, 0},
-{ 5, s_0_10, -1, 1, 0},
-{ 4, s_0_11, -1, 1, 0},
-{ 5, s_0_12, -1, 1, 0},
-{ 6, s_0_13, 12, 1, 0},
-{ 5, s_0_14, -1, 1, 0},
-{ 6, s_0_15, -1, 2, 0},
-{ 6, s_0_16, -1, 1, 0},
-{ 2, s_0_17, -1, 1, 0},
-{ 5, s_0_18, 17, 1, 0},
-{ 2, s_0_19, -1, 1, 0},
-{ 4, s_0_20, -1, 1, 0},
-{ 4, s_0_21, -1, 1, 0},
-{ 4, s_0_22, -1, 1, 0},
-{ 5, s_0_23, -1, 1, 0},
-{ 6, s_0_24, 23, 1, 0},
-{ 4, s_0_25, -1, 1, 0},
-{ 4, s_0_26, -1, 1, 0},
-{ 6, s_0_27, -1, 1, 0},
-{ 3, s_0_28, -1, 1, 0},
-{ 4, s_0_29, 28, 1, 0},
-{ 7, s_0_30, 29, 4, 0},
-{ 4, s_0_31, 28, 1, 0},
-{ 4, s_0_32, 28, 1, 0},
-{ 4, s_0_33, -1, 1, 0},
-{ 5, s_0_34, 33, 1, 0},
-{ 4, s_0_35, -1, 1, 0},
-{ 4, s_0_36, -1, 1, 0},
-{ 4, s_0_37, -1, 1, 0},
-{ 4, s_0_38, -1, 1, 0},
-{ 3, s_0_39, -1, 1, 0},
-{ 4, s_0_40, 39, 1, 0},
-{ 6, s_0_41, -1, 1, 0},
-{ 3, s_0_42, -1, 1, 0},
-{ 6, s_0_43, 42, 1, 0},
-{ 3, s_0_44, -1, 2, 0},
-{ 6, s_0_45, 44, 1, 0},
-{ 6, s_0_46, 44, 1, 0},
-{ 6, s_0_47, 44, 1, 0},
-{ 3, s_0_48, -1, 1, 0},
-{ 4, s_0_49, 48, 1, 0},
-{ 4, s_0_50, 48, 1, 0},
-{ 4, s_0_51, 48, 1, 0},
-{ 5, s_0_52, -1, 1, 0},
-{ 5, s_0_53, -1, 1, 0},
-{ 5, s_0_54, -1, 1, 0},
-{ 2, s_0_55, -1, 1, 0},
-{ 4, s_0_56, 55, 1, 0},
-{ 5, s_0_57, 55, 1, 0},
-{ 6, s_0_58, 55, 1, 0},
-{ 4, s_0_59, -1, 1, 0},
-{ 4, s_0_60, -1, 1, 0},
-{ 3, s_0_61, -1, 1, 0},
-{ 4, s_0_62, 61, 1, 0},
-{ 3, s_0_63, -1, 1, 0},
-{ 4, s_0_64, -1, 1, 0},
-{ 5, s_0_65, 64, 1, 0},
-{ 2, s_0_66, -1, 1, 0},
-{ 3, s_0_67, -1, 1, 0},
-{ 4, s_0_68, 67, 1, 0},
-{ 4, s_0_69, 67, 1, 0},
-{ 4, s_0_70, 67, 1, 0},
-{ 5, s_0_71, 70, 1, 0},
-{ 5, s_0_72, -1, 2, 0},
-{ 5, s_0_73, -1, 1, 0},
-{ 5, s_0_74, -1, 1, 0},
-{ 6, s_0_75, 74, 1, 0},
-{ 2, s_0_76, -1, 1, 0},
-{ 3, s_0_77, 76, 1, 0},
-{ 4, s_0_78, 77, 1, 0},
-{ 3, s_0_79, 76, 1, 0},
-{ 4, s_0_80, 76, 1, 0},
-{ 7, s_0_81, -1, 3, 0},
-{ 3, s_0_82, -1, 1, 0},
-{ 3, s_0_83, -1, 1, 0},
-{ 3, s_0_84, -1, 1, 0},
-{ 5, s_0_85, 84, 1, 0},
-{ 4, s_0_86, -1, 1, 0},
-{ 5, s_0_87, 86, 1, 0},
-{ 3, s_0_88, -1, 1, 0},
-{ 5, s_0_89, -1, 1, 0},
-{ 2, s_0_90, -1, 1, 0},
-{ 3, s_0_91, 90, 1, 0},
-{ 3, s_0_92, -1, 1, 0},
-{ 4, s_0_93, -1, 1, 0},
-{ 2, s_0_94, -1, 1, 0},
-{ 3, s_0_95, 94, 1, 0},
-{ 4, s_0_96, -1, 1, 0},
-{ 2, s_0_97, -1, 1, 0},
-{ 5, s_0_98, -1, 1, 0},
-{ 2, s_0_99, -1, 1, 0},
-{ 3, s_0_100, 99, 1, 0},
-{ 6, s_0_101, 100, 1, 0},
-{ 4, s_0_102, 100, 1, 0},
-{ 6, s_0_103, 99, 5, 0},
-{ 2, s_0_104, -1, 1, 0},
-{ 5, s_0_105, 104, 1, 0},
-{ 4, s_0_106, 104, 1, 0},
-{ 5, s_0_107, -1, 1, 0},
-{ 5, s_0_108, -1, 1, 0}
+static const struct among a_0[109] = {
+{ 4, s_0_0, 0, 1, 0},
+{ 5, s_0_1, -1, 1, 0},
+{ 5, s_0_2, -2, 1, 0},
+{ 5, s_0_3, -3, 1, 0},
+{ 6, s_0_4, 0, 1, 0},
+{ 5, s_0_5, 0, 1, 0},
+{ 6, s_0_6, 0, 1, 0},
+{ 7, s_0_7, 0, 1, 0},
+{ 5, s_0_8, 0, 1, 0},
+{ 5, s_0_9, 0, 1, 0},
+{ 5, s_0_10, 0, 1, 0},
+{ 4, s_0_11, 0, 1, 0},
+{ 5, s_0_12, 0, 1, 0},
+{ 6, s_0_13, -1, 1, 0},
+{ 5, s_0_14, 0, 1, 0},
+{ 6, s_0_15, 0, 2, 0},
+{ 6, s_0_16, 0, 1, 0},
+{ 2, s_0_17, 0, 1, 0},
+{ 5, s_0_18, -1, 1, 0},
+{ 2, s_0_19, 0, 1, 0},
+{ 4, s_0_20, 0, 1, 0},
+{ 4, s_0_21, 0, 1, 0},
+{ 4, s_0_22, 0, 1, 0},
+{ 5, s_0_23, 0, 1, 0},
+{ 6, s_0_24, -1, 1, 0},
+{ 4, s_0_25, 0, 1, 0},
+{ 4, s_0_26, 0, 1, 0},
+{ 6, s_0_27, 0, 1, 0},
+{ 3, s_0_28, 0, 1, 0},
+{ 4, s_0_29, -1, 1, 0},
+{ 7, s_0_30, -1, -1, 0},
+{ 4, s_0_31, -3, 1, 0},
+{ 4, s_0_32, -4, 1, 0},
+{ 4, s_0_33, 0, 1, 0},
+{ 5, s_0_34, -1, 1, 0},
+{ 4, s_0_35, 0, 1, 0},
+{ 4, s_0_36, 0, 1, 0},
+{ 4, s_0_37, 0, 1, 0},
+{ 4, s_0_38, 0, 1, 0},
+{ 3, s_0_39, 0, 1, 0},
+{ 4, s_0_40, -1, 1, 0},
+{ 6, s_0_41, 0, 1, 0},
+{ 3, s_0_42, 0, 1, 0},
+{ 6, s_0_43, -1, 1, 0},
+{ 3, s_0_44, 0, 2, 0},
+{ 6, s_0_45, -1, 1, 0},
+{ 6, s_0_46, -2, 1, 0},
+{ 6, s_0_47, -3, 1, 0},
+{ 3, s_0_48, 0, 1, 0},
+{ 4, s_0_49, -1, 1, 0},
+{ 4, s_0_50, -2, 1, 0},
+{ 4, s_0_51, -3, 1, 0},
+{ 5, s_0_52, 0, 1, 0},
+{ 5, s_0_53, 0, 1, 0},
+{ 5, s_0_54, 0, 1, 0},
+{ 2, s_0_55, 0, 1, 0},
+{ 4, s_0_56, -1, 1, 0},
+{ 5, s_0_57, -2, 1, 0},
+{ 6, s_0_58, -3, 1, 0},
+{ 4, s_0_59, 0, 1, 0},
+{ 4, s_0_60, 0, 1, 0},
+{ 3, s_0_61, 0, 1, 0},
+{ 4, s_0_62, -1, 1, 0},
+{ 3, s_0_63, 0, 1, 0},
+{ 4, s_0_64, 0, 1, 0},
+{ 5, s_0_65, -1, 1, 0},
+{ 2, s_0_66, 0, 1, 0},
+{ 3, s_0_67, 0, 1, 0},
+{ 4, s_0_68, -1, 1, 0},
+{ 4, s_0_69, -2, 1, 0},
+{ 4, s_0_70, -3, 1, 0},
+{ 5, s_0_71, -1, 1, 0},
+{ 5, s_0_72, 0, 2, 0},
+{ 5, s_0_73, 0, 1, 0},
+{ 5, s_0_74, 0, 1, 0},
+{ 6, s_0_75, -1, 1, 0},
+{ 2, s_0_76, 0, 1, 0},
+{ 3, s_0_77, -1, 1, 0},
+{ 4, s_0_78, -1, 1, 0},
+{ 3, s_0_79, -3, 1, 0},
+{ 4, s_0_80, -4, 1, 0},
+{ 7, s_0_81, 0, -1, 0},
+{ 3, s_0_82, 0, 1, 0},
+{ 3, s_0_83, 0, 1, 0},
+{ 3, s_0_84, 0, 1, 0},
+{ 5, s_0_85, -1, 1, 0},
+{ 4, s_0_86, 0, 1, 0},
+{ 5, s_0_87, -1, 1, 0},
+{ 3, s_0_88, 0, 1, 0},
+{ 5, s_0_89, 0, 1, 0},
+{ 2, s_0_90, 0, 1, 0},
+{ 3, s_0_91, -1, 1, 0},
+{ 3, s_0_92, 0, 1, 0},
+{ 4, s_0_93, 0, 1, 0},
+{ 2, s_0_94, 0, 1, 0},
+{ 3, s_0_95, -1, 1, 0},
+{ 4, s_0_96, 0, 1, 0},
+{ 2, s_0_97, 0, 1, 0},
+{ 5, s_0_98, 0, 1, 0},
+{ 2, s_0_99, 0, 1, 0},
+{ 3, s_0_100, -1, 1, 0},
+{ 6, s_0_101, -1, 1, 0},
+{ 4, s_0_102, -2, 1, 0},
+{ 6, s_0_103, -4, -1, 0},
+{ 2, s_0_104, 0, 1, 0},
+{ 5, s_0_105, -1, 1, 0},
+{ 4, s_0_106, -2, 1, 0},
+{ 5, s_0_107, 0, 1, 0},
+{ 5, s_0_108, 0, 1, 0}
};
static const symbol s_1_0[3] = { 'a', 'd', 'a' };
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] =
-{
-{ 3, s_1_0, -1, 1, 0},
-{ 4, s_1_1, 0, 1, 0},
-{ 4, s_1_2, -1, 1, 0},
-{ 5, s_1_3, -1, 1, 0},
-{ 5, s_1_4, -1, 1, 0},
-{ 5, s_1_5, -1, 1, 0},
-{ 5, s_1_6, -1, 1, 0},
-{ 6, s_1_7, 6, 1, 0},
-{ 6, s_1_8, 6, 1, 0},
-{ 5, s_1_9, -1, 1, 0},
-{ 5, s_1_10, -1, 1, 0},
-{ 6, s_1_11, 10, 1, 0},
-{ 5, s_1_12, -1, 1, 0},
-{ 4, s_1_13, -1, 1, 0},
-{ 5, s_1_14, -1, 1, 0},
-{ 3, s_1_15, -1, 1, 0},
-{ 4, s_1_16, 15, 1, 0},
-{ 6, s_1_17, 15, 1, 0},
-{ 4, s_1_18, 15, 1, 0},
-{ 5, s_1_19, 18, 1, 0},
-{ 3, s_1_20, -1, 1, 0},
-{ 6, s_1_21, -1, 1, 0},
-{ 3, s_1_22, -1, 1, 0},
-{ 5, s_1_23, 22, 1, 0},
-{ 5, s_1_24, 22, 1, 0},
-{ 5, s_1_25, 22, 1, 0},
-{ 5, s_1_26, -1, 1, 0},
-{ 2, s_1_27, -1, 1, 0},
-{ 4, s_1_28, 27, 1, 0},
-{ 4, s_1_29, -1, 1, 0},
-{ 5, s_1_30, -1, 1, 0},
-{ 6, s_1_31, 30, 1, 0},
-{ 6, s_1_32, -1, 1, 0},
-{ 6, s_1_33, -1, 1, 0},
-{ 4, s_1_34, -1, 1, 0},
-{ 4, s_1_35, -1, 1, 0},
-{ 5, s_1_36, 35, 1, 0},
-{ 5, s_1_37, 35, 1, 0},
-{ 5, s_1_38, -1, 1, 0},
-{ 4, s_1_39, -1, 1, 0},
-{ 3, s_1_40, -1, 1, 0},
-{ 5, s_1_41, 40, 1, 0},
-{ 3, s_1_42, -1, 1, 0},
-{ 4, s_1_43, 42, 1, 0},
-{ 4, s_1_44, -1, 1, 0},
-{ 5, s_1_45, 44, 1, 0},
-{ 5, s_1_46, 44, 1, 0},
-{ 5, s_1_47, 44, 1, 0},
-{ 4, s_1_48, -1, 1, 0},
-{ 5, s_1_49, 48, 1, 0},
-{ 5, s_1_50, 48, 1, 0},
-{ 6, s_1_51, -1, 2, 0},
-{ 6, s_1_52, -1, 1, 0},
-{ 6, s_1_53, -1, 1, 0},
-{ 5, s_1_54, -1, 1, 0},
-{ 4, s_1_55, -1, 1, 0},
-{ 3, s_1_56, -1, 1, 0},
-{ 4, s_1_57, -1, 1, 0},
-{ 5, s_1_58, -1, 1, 0},
-{ 6, s_1_59, -1, 1, 0},
-{ 2, s_1_60, -1, 1, 0},
-{ 4, s_1_61, 60, 3, 0},
-{ 5, s_1_62, 60, 10, 0},
-{ 3, s_1_63, 60, 1, 0},
-{ 3, s_1_64, 60, 1, 0},
-{ 3, s_1_65, 60, 1, 0},
-{ 6, s_1_66, -1, 1, 0},
-{ 4, s_1_67, -1, 1, 0},
-{ 5, s_1_68, -1, 1, 0},
-{ 5, s_1_69, -1, 1, 0},
-{ 4, s_1_70, -1, 1, 0},
-{ 3, s_1_71, -1, 1, 0},
-{ 2, s_1_72, -1, 1, 0},
-{ 4, s_1_73, 72, 1, 0},
-{ 3, s_1_74, 72, 1, 0},
-{ 7, s_1_75, 74, 1, 0},
-{ 7, s_1_76, 74, 1, 0},
-{ 6, s_1_77, 74, 1, 0},
-{ 5, s_1_78, 72, 1, 0},
-{ 6, s_1_79, 78, 1, 0},
-{ 4, s_1_80, 72, 1, 0},
-{ 4, s_1_81, 72, 1, 0},
-{ 5, s_1_82, 72, 1, 0},
-{ 3, s_1_83, 72, 1, 0},
-{ 4, s_1_84, 83, 1, 0},
-{ 5, s_1_85, 83, 1, 0},
-{ 6, s_1_86, 85, 1, 0},
-{ 5, s_1_87, -1, 1, 0},
-{ 6, s_1_88, 87, 1, 0},
-{ 4, s_1_89, -1, 1, 0},
-{ 4, s_1_90, -1, 1, 0},
-{ 3, s_1_91, -1, 1, 0},
-{ 5, s_1_92, 91, 1, 0},
-{ 4, s_1_93, 91, 1, 0},
-{ 3, s_1_94, -1, 1, 0},
-{ 5, s_1_95, 94, 1, 0},
-{ 4, s_1_96, -1, 1, 0},
-{ 5, s_1_97, 96, 1, 0},
-{ 5, s_1_98, 96, 1, 0},
-{ 4, s_1_99, -1, 1, 0},
-{ 4, s_1_100, -1, 1, 0},
-{ 4, s_1_101, -1, 1, 0},
-{ 3, s_1_102, -1, 1, 0},
-{ 4, s_1_103, 102, 1, 0},
-{ 4, s_1_104, 102, 1, 0},
-{ 4, s_1_105, -1, 1, 0},
-{ 4, s_1_106, -1, 1, 0},
-{ 4, s_1_107, -1, 1, 0},
-{ 2, s_1_108, -1, 1, 0},
-{ 3, s_1_109, 108, 1, 0},
-{ 4, s_1_110, 109, 1, 0},
-{ 5, s_1_111, 109, 1, 0},
-{ 5, s_1_112, 109, 1, 0},
-{ 4, s_1_113, 109, 1, 0},
-{ 5, s_1_114, 113, 1, 0},
-{ 5, s_1_115, 109, 1, 0},
-{ 4, s_1_116, 108, 1, 0},
-{ 4, s_1_117, 108, 1, 0},
-{ 4, s_1_118, 108, 1, 0},
-{ 3, s_1_119, 108, 2, 0},
-{ 6, s_1_120, 108, 1, 0},
-{ 5, s_1_121, 108, 1, 0},
-{ 3, s_1_122, 108, 1, 0},
-{ 2, s_1_123, -1, 1, 0},
-{ 3, s_1_124, 123, 1, 0},
-{ 2, s_1_125, -1, 1, 0},
-{ 3, s_1_126, 125, 1, 0},
-{ 4, s_1_127, 126, 1, 0},
-{ 3, s_1_128, 125, 1, 0},
-{ 3, s_1_129, -1, 1, 0},
-{ 6, s_1_130, 129, 1, 0},
-{ 5, s_1_131, 129, 1, 0},
-{ 5, s_1_132, -1, 1, 0},
-{ 5, s_1_133, -1, 1, 0},
-{ 5, s_1_134, -1, 1, 0},
-{ 4, s_1_135, -1, 1, 0},
-{ 3, s_1_136, -1, 1, 0},
-{ 6, s_1_137, 136, 1, 0},
-{ 5, s_1_138, 136, 1, 0},
-{ 4, s_1_139, -1, 1, 0},
-{ 3, s_1_140, -1, 1, 0},
-{ 4, s_1_141, 140, 1, 0},
-{ 2, s_1_142, -1, 1, 0},
-{ 3, s_1_143, 142, 1, 0},
-{ 5, s_1_144, 142, 1, 0},
-{ 3, s_1_145, 142, 2, 0},
-{ 6, s_1_146, 145, 1, 0},
-{ 5, s_1_147, 145, 1, 0},
-{ 6, s_1_148, 145, 1, 0},
-{ 6, s_1_149, 145, 1, 0},
-{ 6, s_1_150, 145, 1, 0},
-{ 4, s_1_151, -1, 1, 0},
-{ 4, s_1_152, -1, 1, 0},
-{ 4, s_1_153, -1, 1, 0},
-{ 4, s_1_154, -1, 1, 0},
-{ 5, s_1_155, 154, 1, 0},
-{ 5, s_1_156, 154, 1, 0},
-{ 4, s_1_157, -1, 1, 0},
-{ 2, s_1_158, -1, 1, 0},
-{ 4, s_1_159, -1, 1, 0},
-{ 5, s_1_160, 159, 1, 0},
-{ 4, s_1_161, -1, 1, 0},
-{ 3, s_1_162, -1, 1, 0},
-{ 4, s_1_163, -1, 1, 0},
-{ 2, s_1_164, -1, 1, 0},
-{ 5, s_1_165, 164, 1, 0},
-{ 3, s_1_166, 164, 1, 0},
-{ 4, s_1_167, 166, 1, 0},
-{ 2, s_1_168, -1, 1, 0},
-{ 5, s_1_169, -1, 1, 0},
-{ 2, s_1_170, -1, 1, 0},
-{ 4, s_1_171, 170, 1, 0},
-{ 4, s_1_172, 170, 1, 0},
-{ 4, s_1_173, 170, 1, 0},
-{ 4, s_1_174, -1, 1, 0},
-{ 3, s_1_175, -1, 1, 0},
-{ 2, s_1_176, -1, 1, 0},
-{ 4, s_1_177, 176, 1, 0},
-{ 5, s_1_178, 177, 1, 0},
-{ 5, s_1_179, 176, 8, 0},
-{ 5, s_1_180, 176, 1, 0},
-{ 5, s_1_181, 176, 1, 0},
-{ 3, s_1_182, -1, 1, 0},
-{ 3, s_1_183, -1, 1, 0},
-{ 4, s_1_184, 183, 1, 0},
-{ 4, s_1_185, 183, 1, 0},
-{ 4, s_1_186, -1, 1, 0},
-{ 3, s_1_187, -1, 1, 0},
-{ 2, s_1_188, -1, 1, 0},
-{ 4, s_1_189, 188, 1, 0},
-{ 2, s_1_190, -1, 1, 0},
-{ 3, s_1_191, 190, 1, 0},
-{ 3, s_1_192, 190, 1, 0},
-{ 3, s_1_193, -1, 1, 0},
-{ 4, s_1_194, 193, 1, 0},
-{ 4, s_1_195, 193, 1, 0},
-{ 4, s_1_196, 193, 1, 0},
-{ 5, s_1_197, -1, 2, 0},
-{ 5, s_1_198, -1, 1, 0},
-{ 5, s_1_199, -1, 1, 0},
-{ 4, s_1_200, -1, 1, 0},
-{ 3, s_1_201, -1, 1, 0},
-{ 2, s_1_202, -1, 1, 0},
-{ 5, s_1_203, -1, 1, 0},
-{ 3, s_1_204, -1, 1, 0},
-{ 2, s_1_205, -1, 1, 0},
-{ 2, s_1_206, -1, 1, 0},
-{ 5, s_1_207, -1, 1, 0},
-{ 5, s_1_208, -1, 1, 0},
-{ 3, s_1_209, -1, 1, 0},
-{ 4, s_1_210, 209, 1, 0},
-{ 3, s_1_211, -1, 1, 0},
-{ 3, s_1_212, -1, 1, 0},
-{ 4, s_1_213, 212, 1, 0},
-{ 2, s_1_214, -1, 4, 0},
-{ 3, s_1_215, 214, 2, 0},
-{ 6, s_1_216, 215, 1, 0},
-{ 6, s_1_217, 215, 1, 0},
-{ 5, s_1_218, 215, 1, 0},
-{ 3, s_1_219, 214, 4, 0},
-{ 4, s_1_220, 214, 4, 0},
-{ 4, s_1_221, -1, 1, 0},
-{ 5, s_1_222, 221, 1, 0},
-{ 3, s_1_223, -1, 1, 0},
-{ 3, s_1_224, -1, 1, 0},
-{ 3, s_1_225, -1, 1, 0},
-{ 4, s_1_226, -1, 1, 0},
-{ 5, s_1_227, 226, 1, 0},
-{ 5, s_1_228, -1, 1, 0},
-{ 4, s_1_229, -1, 1, 0},
-{ 5, s_1_230, 229, 1, 0},
-{ 2, s_1_231, -1, 1, 0},
-{ 3, s_1_232, 231, 1, 0},
-{ 3, s_1_233, -1, 1, 0},
-{ 2, s_1_234, -1, 1, 0},
-{ 5, s_1_235, 234, 5, 0},
-{ 4, s_1_236, 234, 1, 0},
-{ 5, s_1_237, 236, 1, 0},
-{ 3, s_1_238, 234, 1, 0},
-{ 6, s_1_239, 234, 1, 0},
-{ 3, s_1_240, 234, 1, 0},
-{ 4, s_1_241, 234, 1, 0},
-{ 8, s_1_242, 241, 6, 0},
-{ 3, s_1_243, 234, 1, 0},
-{ 2, s_1_244, -1, 1, 0},
-{ 4, s_1_245, 244, 1, 0},
-{ 2, s_1_246, -1, 1, 0},
-{ 3, s_1_247, 246, 1, 0},
-{ 5, s_1_248, 247, 9, 0},
-{ 4, s_1_249, 247, 1, 0},
-{ 4, s_1_250, 247, 1, 0},
-{ 3, s_1_251, 246, 1, 0},
-{ 4, s_1_252, 246, 1, 0},
-{ 3, s_1_253, 246, 1, 0},
-{ 3, s_1_254, -1, 1, 0},
-{ 2, s_1_255, -1, 1, 0},
-{ 3, s_1_256, 255, 1, 0},
-{ 3, s_1_257, 255, 1, 0},
-{ 3, s_1_258, -1, 1, 0},
-{ 3, s_1_259, -1, 1, 0},
-{ 6, s_1_260, 259, 1, 0},
-{ 3, s_1_261, -1, 1, 0},
-{ 2, s_1_262, -1, 1, 0},
-{ 2, s_1_263, -1, 1, 0},
-{ 3, s_1_264, 263, 1, 0},
-{ 5, s_1_265, 263, 1, 0},
-{ 5, s_1_266, 263, 7, 0},
-{ 4, s_1_267, 263, 1, 0},
-{ 4, s_1_268, 263, 1, 0},
-{ 3, s_1_269, 263, 1, 0},
-{ 4, s_1_270, 263, 1, 0},
-{ 2, s_1_271, -1, 2, 0},
-{ 3, s_1_272, 271, 1, 0},
-{ 2, s_1_273, -1, 1, 0},
-{ 3, s_1_274, -1, 1, 0},
-{ 2, s_1_275, -1, 1, 0},
-{ 5, s_1_276, 275, 1, 0},
-{ 4, s_1_277, 275, 1, 0},
-{ 4, s_1_278, -1, 1, 0},
-{ 4, s_1_279, -1, 2, 0},
-{ 4, s_1_280, -1, 1, 0},
-{ 3, s_1_281, -1, 1, 0},
-{ 2, s_1_282, -1, 1, 0},
-{ 4, s_1_283, 282, 4, 0},
-{ 5, s_1_284, 282, 1, 0},
-{ 4, s_1_285, 282, 1, 0},
-{ 3, s_1_286, -1, 1, 0},
-{ 2, s_1_287, -1, 1, 0},
-{ 3, s_1_288, 287, 1, 0},
-{ 6, s_1_289, 288, 1, 0},
-{ 1, s_1_290, -1, 1, 0},
-{ 2, s_1_291, 290, 1, 0},
-{ 4, s_1_292, 290, 1, 0},
-{ 2, s_1_293, 290, 1, 0},
-{ 5, s_1_294, 293, 1, 0}
+static const struct among a_1[295] = {
+{ 3, s_1_0, 0, 1, 0},
+{ 4, s_1_1, -1, 1, 0},
+{ 4, s_1_2, 0, 1, 0},
+{ 5, s_1_3, 0, 1, 0},
+{ 5, s_1_4, 0, 1, 0},
+{ 5, s_1_5, 0, 1, 0},
+{ 5, s_1_6, 0, 1, 0},
+{ 6, s_1_7, -1, 1, 0},
+{ 6, s_1_8, -2, 1, 0},
+{ 5, s_1_9, 0, 1, 0},
+{ 5, s_1_10, 0, 1, 0},
+{ 6, s_1_11, -1, 1, 0},
+{ 5, s_1_12, 0, 1, 0},
+{ 4, s_1_13, 0, 1, 0},
+{ 5, s_1_14, 0, 1, 0},
+{ 3, s_1_15, 0, 1, 0},
+{ 4, s_1_16, -1, 1, 0},
+{ 6, s_1_17, -2, 1, 0},
+{ 4, s_1_18, -3, 1, 0},
+{ 5, s_1_19, -1, 1, 0},
+{ 3, s_1_20, 0, 1, 0},
+{ 6, s_1_21, 0, 1, 0},
+{ 3, s_1_22, 0, 1, 0},
+{ 5, s_1_23, -1, 1, 0},
+{ 5, s_1_24, -2, 1, 0},
+{ 5, s_1_25, -3, 1, 0},
+{ 5, s_1_26, 0, 1, 0},
+{ 2, s_1_27, 0, 1, 0},
+{ 4, s_1_28, -1, 1, 0},
+{ 4, s_1_29, 0, 1, 0},
+{ 5, s_1_30, 0, 1, 0},
+{ 6, s_1_31, -1, 1, 0},
+{ 6, s_1_32, 0, 1, 0},
+{ 6, s_1_33, 0, 1, 0},
+{ 4, s_1_34, 0, 1, 0},
+{ 4, s_1_35, 0, 1, 0},
+{ 5, s_1_36, -1, 1, 0},
+{ 5, s_1_37, -2, 1, 0},
+{ 5, s_1_38, 0, 1, 0},
+{ 4, s_1_39, 0, 1, 0},
+{ 3, s_1_40, 0, 1, 0},
+{ 5, s_1_41, -1, 1, 0},
+{ 3, s_1_42, 0, 1, 0},
+{ 4, s_1_43, -1, 1, 0},
+{ 4, s_1_44, 0, 1, 0},
+{ 5, s_1_45, -1, 1, 0},
+{ 5, s_1_46, -2, 1, 0},
+{ 5, s_1_47, -3, 1, 0},
+{ 4, s_1_48, 0, 1, 0},
+{ 5, s_1_49, -1, 1, 0},
+{ 5, s_1_50, -2, 1, 0},
+{ 6, s_1_51, 0, 2, 0},
+{ 6, s_1_52, 0, 1, 0},
+{ 6, s_1_53, 0, 1, 0},
+{ 5, s_1_54, 0, 1, 0},
+{ 4, s_1_55, 0, 1, 0},
+{ 3, s_1_56, 0, 1, 0},
+{ 4, s_1_57, 0, 1, 0},
+{ 5, s_1_58, 0, 1, 0},
+{ 6, s_1_59, 0, 1, 0},
+{ 2, s_1_60, 0, 1, 0},
+{ 4, s_1_61, -1, 3, 0},
+{ 5, s_1_62, -2, -1, 0},
+{ 3, s_1_63, -3, 1, 0},
+{ 3, s_1_64, -4, 1, 0},
+{ 3, s_1_65, -5, 1, 0},
+{ 6, s_1_66, 0, 1, 0},
+{ 4, s_1_67, 0, 1, 0},
+{ 5, s_1_68, 0, 1, 0},
+{ 5, s_1_69, 0, 1, 0},
+{ 4, s_1_70, 0, 1, 0},
+{ 3, s_1_71, 0, 1, 0},
+{ 2, s_1_72, 0, 1, 0},
+{ 4, s_1_73, -1, 1, 0},
+{ 3, s_1_74, -2, 1, 0},
+{ 7, s_1_75, -1, 1, 0},
+{ 7, s_1_76, -2, 1, 0},
+{ 6, s_1_77, -3, 1, 0},
+{ 5, s_1_78, -6, 1, 0},
+{ 6, s_1_79, -1, 1, 0},
+{ 4, s_1_80, -8, 1, 0},
+{ 4, s_1_81, -9, 1, 0},
+{ 5, s_1_82, -10, 1, 0},
+{ 3, s_1_83, -11, 1, 0},
+{ 4, s_1_84, -1, 1, 0},
+{ 5, s_1_85, -2, 1, 0},
+{ 6, s_1_86, -1, 1, 0},
+{ 5, s_1_87, 0, 1, 0},
+{ 6, s_1_88, -1, 1, 0},
+{ 4, s_1_89, 0, 1, 0},
+{ 4, s_1_90, 0, 1, 0},
+{ 3, s_1_91, 0, 1, 0},
+{ 5, s_1_92, -1, 1, 0},
+{ 4, s_1_93, -2, 1, 0},
+{ 3, s_1_94, 0, 1, 0},
+{ 5, s_1_95, -1, 1, 0},
+{ 4, s_1_96, 0, 1, 0},
+{ 5, s_1_97, -1, 1, 0},
+{ 5, s_1_98, -2, 1, 0},
+{ 4, s_1_99, 0, 1, 0},
+{ 4, s_1_100, 0, 1, 0},
+{ 4, s_1_101, 0, 1, 0},
+{ 3, s_1_102, 0, 1, 0},
+{ 4, s_1_103, -1, 1, 0},
+{ 4, s_1_104, -2, 1, 0},
+{ 4, s_1_105, 0, 1, 0},
+{ 4, s_1_106, 0, 1, 0},
+{ 4, s_1_107, 0, 1, 0},
+{ 2, s_1_108, 0, 1, 0},
+{ 3, s_1_109, -1, 1, 0},
+{ 4, s_1_110, -1, 1, 0},
+{ 5, s_1_111, -2, 1, 0},
+{ 5, s_1_112, -3, 1, 0},
+{ 4, s_1_113, -4, 1, 0},
+{ 5, s_1_114, -1, 1, 0},
+{ 5, s_1_115, -6, 1, 0},
+{ 4, s_1_116, -8, 1, 0},
+{ 4, s_1_117, -9, 1, 0},
+{ 4, s_1_118, -10, 1, 0},
+{ 3, s_1_119, -11, 2, 0},
+{ 6, s_1_120, -12, 1, 0},
+{ 5, s_1_121, -13, 1, 0},
+{ 3, s_1_122, -14, 1, 0},
+{ 2, s_1_123, 0, 1, 0},
+{ 3, s_1_124, -1, 1, 0},
+{ 2, s_1_125, 0, 1, 0},
+{ 3, s_1_126, -1, 1, 0},
+{ 4, s_1_127, -1, 1, 0},
+{ 3, s_1_128, -3, 1, 0},
+{ 3, s_1_129, 0, 1, 0},
+{ 6, s_1_130, -1, 1, 0},
+{ 5, s_1_131, -2, 1, 0},
+{ 5, s_1_132, 0, 1, 0},
+{ 5, s_1_133, 0, 1, 0},
+{ 5, s_1_134, 0, 1, 0},
+{ 4, s_1_135, 0, 1, 0},
+{ 3, s_1_136, 0, 1, 0},
+{ 6, s_1_137, -1, 1, 0},
+{ 5, s_1_138, -2, 1, 0},
+{ 4, s_1_139, 0, 1, 0},
+{ 3, s_1_140, 0, 1, 0},
+{ 4, s_1_141, -1, 1, 0},
+{ 2, s_1_142, 0, 1, 0},
+{ 3, s_1_143, -1, 1, 0},
+{ 5, s_1_144, -2, 1, 0},
+{ 3, s_1_145, -3, 2, 0},
+{ 6, s_1_146, -1, 1, 0},
+{ 5, s_1_147, -2, 1, 0},
+{ 6, s_1_148, -3, 1, 0},
+{ 6, s_1_149, -4, 1, 0},
+{ 6, s_1_150, -5, 1, 0},
+{ 4, s_1_151, 0, 1, 0},
+{ 4, s_1_152, 0, 1, 0},
+{ 4, s_1_153, 0, 1, 0},
+{ 4, s_1_154, 0, 1, 0},
+{ 5, s_1_155, -1, 1, 0},
+{ 5, s_1_156, -2, 1, 0},
+{ 4, s_1_157, 0, 1, 0},
+{ 2, s_1_158, 0, 1, 0},
+{ 4, s_1_159, 0, 1, 0},
+{ 5, s_1_160, -1, 1, 0},
+{ 4, s_1_161, 0, 1, 0},
+{ 3, s_1_162, 0, 1, 0},
+{ 4, s_1_163, 0, 1, 0},
+{ 2, s_1_164, 0, 1, 0},
+{ 5, s_1_165, -1, 1, 0},
+{ 3, s_1_166, -2, 1, 0},
+{ 4, s_1_167, -1, 1, 0},
+{ 2, s_1_168, 0, 1, 0},
+{ 5, s_1_169, 0, 1, 0},
+{ 2, s_1_170, 0, 1, 0},
+{ 4, s_1_171, -1, 1, 0},
+{ 4, s_1_172, -2, 1, 0},
+{ 4, s_1_173, -3, 1, 0},
+{ 4, s_1_174, 0, 1, 0},
+{ 3, s_1_175, 0, 1, 0},
+{ 2, s_1_176, 0, 1, 0},
+{ 4, s_1_177, -1, 1, 0},
+{ 5, s_1_178, -1, 1, 0},
+{ 5, s_1_179, -3, -1, 0},
+{ 5, s_1_180, -4, 1, 0},
+{ 5, s_1_181, -5, 1, 0},
+{ 3, s_1_182, 0, 1, 0},
+{ 3, s_1_183, 0, 1, 0},
+{ 4, s_1_184, -1, 1, 0},
+{ 4, s_1_185, -2, 1, 0},
+{ 4, s_1_186, 0, 1, 0},
+{ 3, s_1_187, 0, 1, 0},
+{ 2, s_1_188, 0, 1, 0},
+{ 4, s_1_189, -1, 1, 0},
+{ 2, s_1_190, 0, 1, 0},
+{ 3, s_1_191, -1, 1, 0},
+{ 3, s_1_192, -2, 1, 0},
+{ 3, s_1_193, 0, 1, 0},
+{ 4, s_1_194, -1, 1, 0},
+{ 4, s_1_195, -2, 1, 0},
+{ 4, s_1_196, -3, 1, 0},
+{ 5, s_1_197, 0, 2, 0},
+{ 5, s_1_198, 0, 1, 0},
+{ 5, s_1_199, 0, 1, 0},
+{ 4, s_1_200, 0, 1, 0},
+{ 3, s_1_201, 0, 1, 0},
+{ 2, s_1_202, 0, 1, 0},
+{ 5, s_1_203, 0, 1, 0},
+{ 3, s_1_204, 0, 1, 0},
+{ 2, s_1_205, 0, 1, 0},
+{ 2, s_1_206, 0, 1, 0},
+{ 5, s_1_207, 0, 1, 0},
+{ 5, s_1_208, 0, 1, 0},
+{ 3, s_1_209, 0, 1, 0},
+{ 4, s_1_210, -1, 1, 0},
+{ 3, s_1_211, 0, 1, 0},
+{ 3, s_1_212, 0, 1, 0},
+{ 4, s_1_213, -1, 1, 0},
+{ 2, s_1_214, 0, 4, 0},
+{ 3, s_1_215, -1, 2, 0},
+{ 6, s_1_216, -1, 1, 0},
+{ 6, s_1_217, -2, 1, 0},
+{ 5, s_1_218, -3, 1, 0},
+{ 3, s_1_219, -5, 4, 0},
+{ 4, s_1_220, -6, 4, 0},
+{ 4, s_1_221, 0, 1, 0},
+{ 5, s_1_222, -1, 1, 0},
+{ 3, s_1_223, 0, 1, 0},
+{ 3, s_1_224, 0, 1, 0},
+{ 3, s_1_225, 0, 1, 0},
+{ 4, s_1_226, 0, 1, 0},
+{ 5, s_1_227, -1, 1, 0},
+{ 5, s_1_228, 0, 1, 0},
+{ 4, s_1_229, 0, 1, 0},
+{ 5, s_1_230, -1, 1, 0},
+{ 2, s_1_231, 0, 1, 0},
+{ 3, s_1_232, -1, 1, 0},
+{ 3, s_1_233, 0, 1, 0},
+{ 2, s_1_234, 0, 1, 0},
+{ 5, s_1_235, -1, 5, 0},
+{ 4, s_1_236, -2, 1, 0},
+{ 5, s_1_237, -1, 1, 0},
+{ 3, s_1_238, -4, 1, 0},
+{ 6, s_1_239, -5, 1, 0},
+{ 3, s_1_240, -6, 1, 0},
+{ 4, s_1_241, -7, 1, 0},
+{ 8, s_1_242, -1, 6, 0},
+{ 3, s_1_243, -9, 1, 0},
+{ 2, s_1_244, 0, 1, 0},
+{ 4, s_1_245, -1, 1, 0},
+{ 2, s_1_246, 0, 1, 0},
+{ 3, s_1_247, -1, 1, 0},
+{ 5, s_1_248, -1, -1, 0},
+{ 4, s_1_249, -2, 1, 0},
+{ 4, s_1_250, -3, 1, 0},
+{ 3, s_1_251, -5, 1, 0},
+{ 4, s_1_252, -6, 1, 0},
+{ 3, s_1_253, -7, 1, 0},
+{ 3, s_1_254, 0, 1, 0},
+{ 2, s_1_255, 0, 1, 0},
+{ 3, s_1_256, -1, 1, 0},
+{ 3, s_1_257, -2, 1, 0},
+{ 3, s_1_258, 0, 1, 0},
+{ 3, s_1_259, 0, 1, 0},
+{ 6, s_1_260, -1, 1, 0},
+{ 3, s_1_261, 0, 1, 0},
+{ 2, s_1_262, 0, 1, 0},
+{ 2, s_1_263, 0, 1, 0},
+{ 3, s_1_264, -1, 1, 0},
+{ 5, s_1_265, -2, 1, 0},
+{ 5, s_1_266, -3, -1, 0},
+{ 4, s_1_267, -4, 1, 0},
+{ 4, s_1_268, -5, 1, 0},
+{ 3, s_1_269, -6, 1, 0},
+{ 4, s_1_270, -7, 1, 0},
+{ 2, s_1_271, 0, 2, 0},
+{ 3, s_1_272, -1, 1, 0},
+{ 2, s_1_273, 0, 1, 0},
+{ 3, s_1_274, 0, 1, 0},
+{ 2, s_1_275, 0, 1, 0},
+{ 5, s_1_276, -1, 1, 0},
+{ 4, s_1_277, -2, 1, 0},
+{ 4, s_1_278, 0, 1, 0},
+{ 4, s_1_279, 0, 2, 0},
+{ 4, s_1_280, 0, 1, 0},
+{ 3, s_1_281, 0, 1, 0},
+{ 2, s_1_282, 0, 1, 0},
+{ 4, s_1_283, -1, 4, 0},
+{ 5, s_1_284, -2, 1, 0},
+{ 4, s_1_285, -3, 1, 0},
+{ 3, s_1_286, 0, 1, 0},
+{ 2, s_1_287, 0, 1, 0},
+{ 3, s_1_288, -1, 1, 0},
+{ 6, s_1_289, -1, 1, 0},
+{ 1, s_1_290, 0, 1, 0},
+{ 2, s_1_291, -1, 1, 0},
+{ 4, s_1_292, -2, 1, 0},
+{ 2, s_1_293, -3, 1, 0},
+{ 5, s_1_294, -1, 1, 0}
};
static const symbol s_2_0[4] = { 'z', 'l', 'e', 'a' };
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] =
-{
-{ 4, s_2_0, -1, 2, 0},
-{ 5, s_2_1, -1, 1, 0},
-{ 2, s_2_2, -1, 1, 0},
-{ 3, s_2_3, -1, 1, 0},
-{ 4, s_2_4, -1, 1, 0},
-{ 4, s_2_5, -1, 1, 0},
-{ 4, s_2_6, -1, 1, 0},
-{ 4, s_2_7, -1, 1, 0},
-{ 2, s_2_8, -1, 1, 0},
-{ 2, s_2_9, -1, 1, 0},
-{ 2, s_2_10, -1, 1, 0},
-{ 5, s_2_11, 10, 1, 0},
-{ 3, s_2_12, 10, 1, 0},
-{ 5, s_2_13, 12, 1, 0},
-{ 4, s_2_14, 10, 1, 0},
-{ 2, s_2_15, -1, 1, 0},
-{ 2, s_2_16, -1, 1, 0},
-{ 3, s_2_17, 16, 1, 0},
-{ 2, s_2_18, -1, 1, 0}
+static const struct among a_2[19] = {
+{ 4, s_2_0, 0, 2, 0},
+{ 5, s_2_1, 0, 1, 0},
+{ 2, s_2_2, 0, 1, 0},
+{ 3, s_2_3, 0, 1, 0},
+{ 4, s_2_4, 0, 1, 0},
+{ 4, s_2_5, 0, 1, 0},
+{ 4, s_2_6, 0, 1, 0},
+{ 4, s_2_7, 0, 1, 0},
+{ 2, s_2_8, 0, 1, 0},
+{ 2, s_2_9, 0, 1, 0},
+{ 2, s_2_10, 0, 1, 0},
+{ 5, s_2_11, -1, 1, 0},
+{ 3, s_2_12, -2, 1, 0},
+{ 5, s_2_13, -1, 1, 0},
+{ 4, s_2_14, -4, 1, 0},
+{ 2, s_2_15, 0, 1, 0},
+{ 2, s_2_16, 0, 1, 0},
+{ 3, s_2_17, -1, 1, 0},
+{ 2, s_2_18, 0, 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) {
- z->I[2] = z->l;
- z->I[1] = z->l;
- z->I[0] = z->l;
- { int c1 = z->c;
- { int c2 = z->c;
- if (in_grouping_U(z, g_v, 97, 117, 0)) goto lab2;
- { int c3 = z->c;
- if (out_grouping_U(z, g_v, 97, 117, 0)) goto lab4;
-
+ ((SN_local *)z)->i_pV = z->l;
+ ((SN_local *)z)->i_p1 = z->l;
+ ((SN_local *)z)->i_p2 = z->l;
+ {
+ int v_1 = z->c;
+ do {
+ int v_2 = z->c;
+ if (in_grouping_U(z, g_v, 97, 117, 0)) goto lab1;
+ do {
+ int v_3 = z->c;
+ if (out_grouping_U(z, g_v, 97, 117, 0)) goto lab2;
{
int ret = out_grouping_U(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab4;
+ if (ret < 0) goto lab2;
z->c += ret;
}
- goto lab3;
- lab4:
- z->c = c3;
- if (in_grouping_U(z, g_v, 97, 117, 0)) goto lab2;
-
+ break;
+ lab2:
+ z->c = v_3;
+ if (in_grouping_U(z, g_v, 97, 117, 0)) goto lab1;
{
int ret = in_grouping_U(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab2;
+ if (ret < 0) goto lab1;
z->c += ret;
}
- }
- lab3:
- goto lab1;
- lab2:
- z->c = c2;
+ } while (0);
+ break;
+ lab1:
+ z->c = v_2;
if (out_grouping_U(z, g_v, 97, 117, 0)) goto lab0;
- { int c4 = z->c;
- if (out_grouping_U(z, g_v, 97, 117, 0)) goto lab6;
-
+ do {
+ int v_4 = z->c;
+ if (out_grouping_U(z, g_v, 97, 117, 0)) goto lab3;
{
int ret = out_grouping_U(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab6;
+ if (ret < 0) goto lab3;
z->c += ret;
}
- goto lab5;
- lab6:
- z->c = c4;
+ break;
+ lab3:
+ z->c = v_4;
if (in_grouping_U(z, g_v, 97, 117, 0)) goto lab0;
- { int ret = skip_utf8(z->p, z->c, z->l, 1);
+ {
+ int ret = skip_utf8(z->p, z->c, z->l, 1);
if (ret < 0) goto lab0;
z->c = ret;
}
- }
- lab5:
- ;
- }
- lab1:
- z->I[2] = z->c;
+ } while (0);
+ } while (0);
+ ((SN_local *)z)->i_pV = z->c;
lab0:
- z->c = c1;
+ z->c = v_1;
}
- { int c5 = z->c;
-
+ {
+ int v_5 = z->c;
{
int ret = out_grouping_U(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping_U(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[1] = z->c;
-
+ ((SN_local *)z)->i_p1 = z->c;
{
int ret = out_grouping_U(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
-
{
int ret = in_grouping_U(z, g_v, 97, 117, 1);
- if (ret < 0) goto lab7;
+ if (ret < 0) goto lab4;
z->c += ret;
}
- z->I[0] = z->c;
- lab7:
- z->c = c5;
+ ((SN_local *)z)->i_p2 = z->c;
+ lab4:
+ z->c = v_5;
}
return 1;
}
static int r_RV(struct SN_env * z) {
- return z->I[2] <= z->c;
+ return ((SN_local *)z)->i_pV <= z->c;
}
static int r_R2(struct SN_env * z) {
- return z->I[0] <= z->c;
+ return ((SN_local *)z)->i_p2 <= z->c;
}
static int r_R1(struct SN_env * z) {
- return z->I[1] <= z->c;
+ return ((SN_local *)z)->i_p1 <= z->c;
}
static int r_aditzak(struct SN_env * z) {
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((70566434 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_0, 109);
+ among_var = find_among_b(z, a_0, 109, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
- if (ret < 0) return ret;
- }
- break;
- case 3:
- { int ret = slice_from_s(z, 7, s_0);
- if (ret < 0) return ret;
- }
- break;
- case 4:
- { int ret = slice_from_s(z, 7, s_1);
- if (ret < 0) return ret;
- }
- break;
- case 5:
- { int ret = slice_from_s(z, 6, s_2);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((71162402 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_1, 295);
+ among_var = find_among_b(z, a_1, 295, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = r_R2(z);
+ {
+ int ret = r_R2(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 3:
- { int ret = slice_from_s(z, 3, s_3);
+ {
+ int ret = slice_from_s(z, 3, s_0);
if (ret < 0) return ret;
}
break;
case 4:
- { int ret = r_R1(z);
+ {
+ int ret = r_R1(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 5:
- { int ret = slice_from_s(z, 3, s_4);
+ {
+ int ret = slice_from_s(z, 3, s_1);
if (ret < 0) return ret;
}
break;
case 6:
- { int ret = slice_from_s(z, 6, s_5);
- if (ret < 0) return ret;
- }
- break;
- case 7:
- { int ret = slice_from_s(z, 5, s_6);
- if (ret < 0) return ret;
- }
- break;
- case 8:
- { int ret = slice_from_s(z, 5, s_7);
- if (ret < 0) return ret;
- }
- break;
- case 9:
- { int ret = slice_from_s(z, 5, s_8);
- if (ret < 0) return ret;
- }
- break;
- case 10:
- { int ret = slice_from_s(z, 5, s_9);
+ {
+ int ret = slice_from_s(z, 6, s_2);
if (ret < 0) return ret;
}
break;
int among_var;
z->ket = z->c;
if (z->c - 1 <= z->lb || z->p[z->c - 1] >> 5 != 3 || !((35362 >> (z->p[z->c - 1] & 0x1f)) & 1)) return 0;
- among_var = find_among_b(z, a_2, 19);
+ among_var = find_among_b(z, a_2, 19, 0);
if (!among_var) return 0;
z->bra = z->c;
switch (among_var) {
case 1:
- { int ret = r_RV(z);
+ {
+ int ret = r_RV(z);
if (ret <= 0) return ret;
}
- { int ret = slice_del(z);
+ {
+ int ret = slice_del(z);
if (ret < 0) return ret;
}
break;
case 2:
- { int ret = slice_from_s(z, 1, s_10);
+ {
+ int ret = slice_from_s(z, 1, s_3);
if (ret < 0) return ret;
}
break;
}
extern int basque_UTF_8_stem(struct SN_env * z) {
-
- { int ret = r_mark_regions(z);
+ {
+ int ret = r_mark_regions(z);
if (ret < 0) return ret;
}
z->lb = z->c; z->c = z->l;
-
- while(1) {
- int m1 = z->l - z->c; (void)m1;
- { int ret = r_aditzak(z);
+ while (1) {
+ int v_1 = z->l - z->c;
+ {
+ int ret = r_aditzak(z);
if (ret == 0) goto lab0;
if (ret < 0) return ret;
}
continue;
lab0:
- z->c = z->l - m1;
+ z->c = z->l - v_1;
break;
}
- while(1) {
- int m2 = z->l - z->c; (void)m2;
- { int ret = r_izenak(z);
+ while (1) {
+ int v_2 = z->l - z->c;
+ {
+ int ret = r_izenak(z);
if (ret == 0) goto lab1;
if (ret < 0) return ret;
}
continue;
lab1:
- z->c = z->l - m2;
+ z->c = z->l - v_2;
break;
}
- { int m3 = z->l - z->c; (void)m3;
- { int ret = r_adjetiboak(z);
+ {
+ int v_3 = z->l - z->c;
+ {
+ int ret = r_adjetiboak(z);
if (ret < 0) return ret;
}
- z->c = z->l - m3;
+ z->c = z->l - v_3;
}
z->c = z->lb;
return 1;
}
-extern struct SN_env * basque_UTF_8_create_env(void) { return SN_create_env(0, 3); }
+extern struct SN_env * basque_UTF_8_create_env(void) {
+ struct SN_env * z = SN_new_env(sizeof(SN_local));
+ if (z) {
+ ((SN_local *)z)->i_p2 = 0;
+ ((SN_local *)z)->i_p1 = 0;
+ ((SN_local *)z)->i_pV = 0;
+ }
+ return z;
+}
-extern void basque_UTF_8_close_env(struct SN_env * z) { SN_close_env(z, 0); }
+extern void basque_UTF_8_close_env(struct SN_env * z) {
+ SN_delete_env(z);
+}
-/* Generated by Snowball 2.2.0 - https://snowballstem.org/ */
+/* Generated from catalan.sbl by Snowball 3.0.0 - https://snowballstem.org/ */
-#include "header.h"
+#include "stem_UTF_8_catalan.h"
+
+#include <stddef.h>
+
+#include "snowball_runtime.h"
+
+struct SN_local {
+ struct SN_env z;
+ int i_p2;
+ int i_p1;
+};
+
+typedef struct SN_local SN_local;
#ifdef __cplusplus
extern "C" {
#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_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);
+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' };
-#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_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, -1, 7, 0},
-{ 2, s_0_1, 0, 6, 0},
-{ 2, s_0_2, 0, 1, 0},
-{ 2, s_0_3, 0, 1, 0},
-{ 2, s_0_4, 0, 2, 0},
-{ 2, s_0_5, 0, 2, 0},
-{ 2, s_0_6, 0, 3, 0},
-{ 2, s_0_7, 0, 3, 0},
-{ 2, s_0_8, 0, 3, 0},
-{ 2, s_0_9, 0, 4, 0},
-{ 2, s_0_10, 0, 4, 0},
-{ 2, s_0_11, 0, 5, 0},
-{ 2, s_0_12, 0, 5, 0}
+static const struct among a_0[13] = {
+{ 0, 0, 0, 7, 0},
+{ 2, s_0_1, -1, 6, 0},
+{ 2, s_0_2, -2, 1, 0},
+{ 2, s_0_3, -3, 1, 0},
+{ 2, s_0_4, -4, 2, 0},
+{ 2, s_0_5, -5, 2, 0},
+{ 2, s_0_6, -6, 3, 0},
+{ 2, s_0_7, -7, 3, 0},
+{ 2, s_0_8, -8, 3, 0},
+{ 2, s_0_9, -9, 4, 0},
+{ 2, s_0_10, -10, 4, 0},
+{ 2, s_0_11, -11, 5, 0},
+{ 2, s_0_12, -12, 5, 0}
};
static const symbol s_1_0[2] = { 'l', 'a' };
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] =
-{
-{ 2, s_1_0, -1, 1, 0},
-{ 3, s_1_1, 0, 1, 0},
-{ 4, s_1_2, 0, 1, 0},
-{ 2, s_1_3, -1, 1, 0},
-{ 2, s_1_4, -1, 1, 0},
-{ 3, s_1_5, 4, 1, 0},
-{ 2, s_1_6, -1, 1, 0},
-{ 3, s_1_7, -1, 1, 0},
-{ 2, s_1_8, -1, 1, 0},
-{ 3, s_1_9, 8, 1, 0},
-{ 2, s_1_10, -1, 1, 0},
-{ 3, s_1_11, 10, 1, 0},
-{ 2, s_1_12, -1, 1, 0},
-{ 2, s_1_13, -1, 1, 0},
-{ 2, s_1_14, -1, 1, 0},
-{ 2, s_1_15, -1, 1, 0},
-{ 2, s_1_16, -1, 1, 0},
-{ 2, s_1_17, -1, 1, 0},
-{ 3, s_1_18, 17, 1, 0},
-{ 2, s_1_19, -1, 1, 0},
-{ 4, s_1_20, 19, 1, 0},
-{ 2, s_1_21, -1, 1, 0},
-{ 3, s_1_22, -1, 1, 0},
-{ 5, s_1_23, 22, 1, 0},
-{ 3, s_1_24, -1, 1, 0},
-{ 4, s_1_25, 24, 1, 0},
-{ 3, s_1_26, -1, 1, 0},
-{ 3, s_1_27, -1, 1, 0},
-{ 3, s_1_28, -1, 1, 0},
-{ 3, s_1_29, -1, 1, 0},
-{ 3, s_1_30, -1, 1, 0},
-{ 3, s_1_31, -1, 1, 0},
-{ 5, s_1_32, 31, 1, 0},
-{ 3, s_1_33, -1, 1, 0},
-{ 4, s_1_34, 33, 1, 0},
-{ 3, s_1_35, -1, 1, 0},
-{ 2, s_1_36, -1, 1, 0},
-{ 3, s_1_37, 36, 1, 0},
-{ 2, s_1_38, -1, 1, 0}
+static const struct among a_1[39] = {
+{ 2, s_1_0, 0, 1, 0},
+{ 3, s_1_1, -1, 1, 0},
+{ 4, s_1_2, -2, 1, 0},
+{ 2, s_1_3, 0, 1, 0},
+{ 2, s_1_4, 0, 1, 0},
+{ 3, s_1_5, -1, 1, 0},
+{ 2, s_1_6, 0, 1, 0},
+{ 3, s_1_7, 0, 1, 0},
+{ 2, s_1_8, 0, 1, 0},
+{ 3, s_1_9, -1, 1, 0},
+{ 2, s_1_10, 0, 1, 0},
+{ 3, s_1_11, -1, 1, 0},
+{ 2, s_1_12, 0, 1, 0},
+{ 2, s_1_13, 0, 1, 0},
+{ 2, s_1_14, 0, 1, 0},
+{ 2, s_1_15, 0, 1, 0},
+{ 2, s_1_16, 0, 1, 0},
+{ 2, s_1_17, 0, 1, 0},
+{ 3, s_1_18, -1, 1, 0},
+{ 2, s_1_19, 0, 1, 0},
+{ 4, s_1_20, -1, 1, 0},
+{ 2, s_1_21, 0, 1, 0},
+{ 3, s_1_22, 0, 1, 0},
+{ 5, s_1_23, -1, 1, 0},
+{ 3, s_1_24, 0, 1, 0},
+{ 4, s_1_25, -1, 1, 0},
+{ 3, s_1_26, 0, 1, 0},
+{ 3, s_1_27, 0, 1, 0},
+{ 3, s_1_28, 0, 1, 0},
+{ 3, s_1_29, 0, 1, 0},
+{ 3, s_1_30, 0, 1, 0},
+{ 3, s_1_31, 0, 1, 0},
+{ 5, s_1_32, -1, 1, 0},
+{ 3, s_1_33, 0, 1, 0},
+{ 4, s_1_34, -1, 1, 0},
+{ 3, s_1_35, 0, 1, 0},
+{ 2, s_1_36, 0, 1, 0},
+{ 3, s_1_37, -1, 1, 0},
+{ 2, s_1_38, 0, 1, 0}
};
static const symbol s_2_0[3] = { 'i', 'c', 'a' };
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] =
-{
-{ 3, s_2_0, -1, 4, 0},
-{ 7, s_2_1, 0, 3, 0},
-{ 4, s_2_2, -1, 1, 0},
-{ 3, s_2_3, -1, 2, 0},
-{ 5, s_2_4, -1, 1, 0},
-{ 5, s_2_5, -1, 1, 0},
-{ 6, s_2_6, -1, 1, 0},
-{ 5, s_2_7, -1, 1, 0},
-{ 5, s_2_8, -1, 3, 0},
-{ 4, s_2_9, -1, 1, 0},
-{ 6, s_2_10, 9, 1, 0},
-{ 4, s_2_11, -1, 1, 0},
-{ 5, s_2_12, -1, 1, 0},
-{ 7, s_2_13, -1, 1, 0},
-{ 4, s_2_14, -1, 1, 0},
-{ 4, s_2_15, -1, 1, 0},
-{ 6, s_2_16, -1, 1, 0},
-{ 3, s_2_17, -1, 1, 0},
-{ 7, s_2_18, 17, 1, 0},
-{ 9, s_2_19, 18, 5, 0},
-{ 3, s_2_20, -1, 1, 0},
-{ 3, s_2_21, -1, 1, 0},
-{ 3, s_2_22, -1, 1, 0},
-{ 5, s_2_23, 22, 1, 0},
-{ 3, s_2_24, -1, 1, 0},
-{ 4, s_2_25, 24, 1, 0},
-{ 5, s_2_26, 25, 1, 0},
-{ 5, s_2_27, -1, 1, 0},
-{ 3, s_2_28, -1, 1, 0},
-{ 3, s_2_29, -1, 1, 0},
-{ 4, s_2_30, -1, 1, 0},
-{ 4, s_2_31, -1, 1, 0},
-{ 4, s_2_32, -1, 1, 0},
-{ 3, s_2_33, -1, 1, 0},
-{ 3, s_2_34, -1, 1, 0},
-{ 3, s_2_35, -1, 1, 0},
-{ 4, s_2_36, -1, 1, 0},
-{ 7, s_2_37, 36, 1, 0},
-{ 7, s_2_38, 36, 1, 0},
-{ 3, s_2_39, -1, 1, 0},
-{ 5, s_2_40, 39, 1, 0},
-{ 4, s_2_41, -1, 1, 0},
-{ 6, s_2_42, -1, 3, 0},
-{ 2, s_2_43, -1, 4, 0},
-{ 6, s_2_44, 43, 1, 0},
-{ 3, s_2_45, -1, 1, 0},
-{ 3, s_2_46, -1, 1, 0},
-{ 2, s_2_47, -1, 1, 0},
-{ 4, s_2_48, -1, 1, 0},
-{ 3, s_2_49, -1, 1, 0},
-{ 4, s_2_50, 49, 1, 0},
-{ 4, s_2_51, 49, 1, 0},
-{ 4, s_2_52, -1, 1, 0},
-{ 7, s_2_53, 52, 1, 0},
-{ 7, s_2_54, 52, 1, 0},
-{ 6, s_2_55, 52, 1, 0},
-{ 4, s_2_56, -1, 1, 0},
-{ 4, s_2_57, -1, 1, 0},
-{ 4, s_2_58, -1, 1, 0},
-{ 3, s_2_59, -1, 1, 0},
-{ 4, s_2_60, -1, 1, 0},
-{ 4, s_2_61, -1, 3, 0},
-{ 3, s_2_62, -1, 1, 0},
-{ 4, s_2_63, -1, 1, 0},
-{ 2, s_2_64, -1, 1, 0},
-{ 2, s_2_65, -1, 1, 0},
-{ 3, s_2_66, -1, 1, 0},
-{ 3, s_2_67, -1, 1, 0},
-{ 5, s_2_68, -1, 1, 0},
-{ 4, s_2_69, -1, 1, 0},
-{ 5, s_2_70, -1, 1, 0},
-{ 6, s_2_71, -1, 1, 0},
-{ 6, s_2_72, -1, 1, 0},
-{ 6, s_2_73, -1, 1, 0},
-{ 8, s_2_74, 73, 5, 0},
-{ 4, s_2_75, -1, 1, 0},
-{ 6, s_2_76, -1, 1, 0},
-{ 2, s_2_77, -1, 1, 0},
-{ 6, s_2_78, 77, 1, 0},
-{ 4, s_2_79, 77, 1, 0},
-{ 4, s_2_80, 77, 1, 0},
-{ 4, s_2_81, 77, 1, 0},
-{ 5, s_2_82, 77, 1, 0},
-{ 3, s_2_83, -1, 1, 0},
-{ 2, s_2_84, -1, 1, 0},
-{ 3, s_2_85, 84, 1, 0},
-{ 3, s_2_86, -1, 1, 0},
-{ 5, s_2_87, -1, 1, 0},
-{ 3, s_2_88, -1, 4, 0},
-{ 7, s_2_89, 88, 3, 0},
-{ 3, s_2_90, -1, 1, 0},
-{ 4, s_2_91, -1, 1, 0},
-{ 4, s_2_92, -1, 2, 0},
-{ 6, s_2_93, -1, 1, 0},
-{ 6, s_2_94, -1, 1, 0},
-{ 7, s_2_95, -1, 1, 0},
-{ 6, s_2_96, -1, 1, 0},
-{ 6, s_2_97, -1, 3, 0},
-{ 5, s_2_98, -1, 1, 0},
-{ 6, s_2_99, -1, 1, 0},
-{ 5, s_2_100, -1, 1, 0},
-{ 6, s_2_101, -1, 1, 0},
-{ 8, s_2_102, -1, 1, 0},
-{ 4, s_2_103, -1, 1, 0},
-{ 5, s_2_104, 103, 1, 0},
-{ 5, s_2_105, 103, 1, 0},
-{ 4, s_2_106, -1, 1, 0},
-{ 8, s_2_107, 106, 1, 0},
-{ 10, s_2_108, 107, 5, 0},
-{ 6, s_2_109, -1, 1, 0},
-{ 5, s_2_110, -1, 1, 0},
-{ 8, s_2_111, 110, 1, 0},
-{ 4, s_2_112, -1, 1, 0},
-{ 4, s_2_113, -1, 1, 0},
-{ 4, s_2_114, -1, 1, 0},
-{ 5, s_2_115, 114, 1, 0},
-{ 6, s_2_116, 115, 1, 0},
-{ 5, s_2_117, -1, 1, 0},
-{ 4, s_2_118, -1, 1, 0},
-{ 4, s_2_119, -1, 1, 0},
-{ 5, s_2_120, -1, 1, 0},
-{ 5, s_2_121, -1, 1, 0},
-{ 4, s_2_122, -1, 1, 0},
-{ 4, s_2_123, -1, 1, 0},
-{ 5, s_2_124, -1, 1, 0},
-{ 8, s_2_125, 124, 1, 0},
-{ 8, s_2_126, 124, 1, 0},
-{ 5, s_2_127, -1, 4, 0},
-{ 9, s_2_128, 127, 3, 0},
-{ 4, s_2_129, -1, 1, 0},
-{ 6, s_2_130, 129, 1, 0},
-{ 7, s_2_131, -1, 3, 0},
-{ 10, s_2_132, -1, 1, 0},
-{ 4, s_2_133, -1, 1, 0},
-{ 5, s_2_134, -1, 1, 0},
-{ 5, s_2_135, -1, 3, 0},
-{ 4, s_2_136, -1, 1, 0},
-{ 5, s_2_137, -1, 1, 0},
-{ 2, s_2_138, -1, 1, 0},
-{ 3, s_2_139, 138, 1, 0},
-{ 4, s_2_140, 138, 1, 0},
-{ 3, s_2_141, -1, 1, 0},
-{ 7, s_2_142, 141, 1, 0},
-{ 9, s_2_143, 142, 5, 0},
-{ 4, s_2_144, -1, 1, 0},
-{ 5, s_2_145, 144, 1, 0},
-{ 6, s_2_146, 145, 2, 0},
-{ 4, s_2_147, -1, 1, 0},
-{ 4, s_2_148, -1, 1, 0},
-{ 5, s_2_149, -1, 1, 0},
-{ 5, s_2_150, -1, 1, 0},
-{ 3, s_2_151, -1, 1, 0},
-{ 3, s_2_152, -1, 1, 0},
-{ 4, s_2_153, 152, 1, 0},
-{ 5, s_2_154, 153, 1, 0},
-{ 5, s_2_155, 153, 1, 0},
-{ 3, s_2_156, -1, 1, 0},
-{ 5, s_2_157, 156, 1, 0},
-{ 8, s_2_158, 157, 1, 0},
-{ 7, s_2_159, 157, 1, 0},
-{ 9, s_2_160, 159, 1, 0},
-{ 6, s_2_161, 156, 1, 0},
-{ 3, s_2_162, -1, 1, 0},
-{ 4, s_2_163, -1, 1, 0},
-{ 4, s_2_164, -1, 1, 0},
-{ 5, s_2_165, 164, 1, 0},
-{ 6, s_2_166, 165, 1, 0},
-{ 3, s_2_167, -1, 1, 0},
-{ 3, s_2_168, -1, 1, 0},
-{ 3, s_2_169, -1, 1, 0},
-{ 5, s_2_170, 169, 1, 0},
-{ 5, s_2_171, 169, 1, 0},
-{ 3, s_2_172, -1, 1, 0},
-{ 3, s_2_173, -1, 1, 0},
-{ 3, s_2_174, -1, 1, 0},
-{ 4, s_2_175, 174, 1, 0},
-{ 3, s_2_176, -1, 1, 0},
-{ 4, s_2_177, -1, 1, 0},
-{ 7, s_2_178, 177, 1, 0},
-{ 6, s_2_179, 177, 1, 0},
-{ 8, s_2_180, 179, 1, 0},
-{ 5, s_2_181, -1, 1, 0},
-{ 2, s_2_182, -1, 1, 0},
-{ 3, s_2_183, -1, 1, 0},
-{ 3, s_2_184, -1, 1, 0},
-{ 4, s_2_185, 184, 1, 0},
-{ 4, s_2_186, 184, 1, 0},
-{ 5, s_2_187, 186, 1, 0},
-{ 7, s_2_188, 187, 1, 0},
-{ 2, s_2_189, -1, 1, 0},
-{ 5, s_2_190, -1, 1, 0},
-{ 6, s_2_191, -1, 1, 0},
-{ 6, s_2_192, -1, 1, 0},
-{ 4, s_2_193, -1, 1, 0},
-{ 6, s_2_194, -1, 1, 0},
-{ 4, s_2_195, -1, 1, 0},
-{ 2, s_2_196, -1, 1, 0},
-{ 3, s_2_197, 196, 1, 0},
-{ 4, s_2_198, 197, 1, 0},
-{ 5, s_2_199, 198, 1, 0}
+static const struct among a_2[200] = {
+{ 3, s_2_0, 0, 4, 0},
+{ 7, s_2_1, -1, 3, 0},
+{ 4, s_2_2, 0, 1, 0},
+{ 3, s_2_3, 0, 2, 0},
+{ 5, s_2_4, 0, 1, 0},
+{ 5, s_2_5, 0, 1, 0},
+{ 6, s_2_6, 0, 1, 0},
+{ 5, s_2_7, 0, 1, 0},
+{ 5, s_2_8, 0, 3, 0},
+{ 4, s_2_9, 0, 1, 0},
+{ 6, s_2_10, -1, 1, 0},
+{ 4, s_2_11, 0, 1, 0},
+{ 5, s_2_12, 0, 1, 0},
+{ 7, s_2_13, 0, 1, 0},
+{ 4, s_2_14, 0, 1, 0},
+{ 4, s_2_15, 0, 1, 0},
+{ 6, s_2_16, 0, 1, 0},
+{ 3, s_2_17, 0, 1, 0},
+{ 7, s_2_18, -1, 1, 0},
+{ 9, s_2_19, -1, 5, 0},
+{ 3, s_2_20, 0, 1, 0},
+{ 3, s_2_21, 0, 1, 0},
+{ 3, s_2_22, 0, 1, 0},
+{ 5, s_2_23, -1, 1, 0},
+{ 3, s_2_24, 0, 1, 0},
+{ 4, s_2_25, -1, 1, 0},
+{ 5, s_2_26, -1, 1, 0},
+{ 5, s_2_27, 0, 1, 0},
+{ 3, s_2_28, 0, 1, 0},
+{ 3, s_2_29, 0, 1, 0},
+{ 4, s_2_30, 0, 1, 0},
+{ 4, s_2_31, 0, 1, 0},
+{ 4, s_2_32, 0, 1, 0},
+{ 3, s_2_33, 0, 1, 0},
+{ 3, s_2_34, 0, 1, 0},
+{ 3, s_2_35, 0, 1, 0},
+{ 4, s_2_36, 0, 1, 0},
+{ 7, s_2_37, -1, 1, 0},
+{ 7, s_2_38, -2, 1, 0},
+{ 3, s_2_39, 0, 1, 0},
+{ 5, s_2_40, -1, 1, 0},
+{ 4, s_2_41, 0, 1, 0},
+{ 6, s_2_42, 0, 3, 0},
+{ 2, s_2_43, 0, 4, 0},
+{ 6, s_2_44, -1, 1, 0},
+{ 3, s_2_45, 0, 1, 0},
+{ 3, s_2_46, 0, 1, 0},
+{ 2, s_2_47, 0, 1, 0},
+{ 4, s_2_48, 0, 1, 0},
+{ 3, s_2_49, 0, 1, 0},
+{ 4, s_2_50, -1, 1, 0},
+{ 4, s_2_51, -2, 1, 0},
+{ 4, s_2_52, 0, 1, 0},
+{ 7, s_2_53, -1, 1, 0},
+{ 7, s_2_54, -2, 1, 0},
+{ 6, s_2_55, -3, 1, 0},
+{ 4, s_2_56, 0, 1, 0},
+{ 4, s_2_57, 0, 1, 0},
+{ 4, s_2_58, 0, 1, 0},
+{ 3, s_2_59, 0, 1, 0},
+{ 4, s_2_60, 0, 1, 0},
+{ 4, s_2_61, 0, 3, 0},
+{ 3, s_2_62, 0, 1, 0},
+{ 4, s_2_63, 0, 1, 0},
+{ 2, s_2_64, 0, 1, 0},
+{ 2, s_2_65, 0, 1, 0},
+{ 3, s_2_66, 0, 1, 0},
+{ 3, s_2_67, 0, 1, 0},
+{ 5, s_2_68, 0, 1, 0},
+{ 4, s_2_69, 0, 1, 0},
+{ 5, s_2_70, 0, 1, 0},
+{ 6, s_2_71, 0, 1, 0},
+{ 6, s_2_72, 0, 1, 0},
+{ 6, s_2_73, 0, 1, 0},
+{ 8, s_2_74, -1, 5, 0},
+{ 4, s_2_75, 0, 1, 0},
+{ 6, s_2_76, 0, 1, 0},
+{ 2, s_2_77, 0, 1, 0},
+{ 6, s_2_78, -1, 1, 0},
+{ 4, s_2_79, -2, 1, 0},
+{ 4, s_2_80, -3, 1, 0},
+{ 4, s_2_81, -4, 1, 0},