You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2020/02/16 00:00:08 UTC
[lucene-solr] 01/01: LUCENE-9220 regenerate all stemmers from
snowball 2.0
This is an automated email from the ASF dual-hosted git repository.
rmuir pushed a commit to branch jira/LUCENE-9220
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git
commit fc229b170197e37ffcbdb330e7657939979a7def
Author: Robert Muir <rm...@apache.org>
AuthorDate: Sat Feb 15 18:58:45 2020 -0500
LUCENE-9220 regenerate all stemmers from snowball 2.0
Instead of patching them after-the-fact (both manually and
automatically over the years) we patch the generator.
This is easier to maintain than patches/changes against generated code.
See LUCENE-9220 for more information.
There is a remaining nocommit, test data. Also need to hook in and test
the new languages that are added here.
---
lucene/analysis/common/README.txt | 19 +-
lucene/analysis/common/build.xml | 12 -
.../lucene/analysis/snowball/SnowballFilter.java | 10 +-
.../snowball/SnowballPorterFilterFactory.java | 8 +-
.../src/java/org/tartarus/snowball/Among.java | 104 +-
.../org/tartarus/snowball/SnowballProgram.java | 765 ++-
.../org/tartarus/snowball/SnowballStemmer.java | 42 +
.../org/tartarus/snowball/ext/ArabicStemmer.java | 3097 +++++------
.../org/tartarus/snowball/ext/ArmenianStemmer.java | 861 ++--
.../org/tartarus/snowball/ext/BasqueStemmer.java | 1710 +++----
.../org/tartarus/snowball/ext/CatalanStemmer.java | 1914 ++++---
.../org/tartarus/snowball/ext/DanishStemmer.java | 691 +--
.../org/tartarus/snowball/ext/DutchStemmer.java | 1445 +++---
.../org/tartarus/snowball/ext/EnglishStemmer.java | 2237 ++++----
.../org/tartarus/snowball/ext/EstonianStemmer.java | 2793 ++++------
.../org/tartarus/snowball/ext/FinnishStemmer.java | 1752 +++----
.../org/tartarus/snowball/ext/FrenchStemmer.java | 2603 ++++------
.../org/tartarus/snowball/ext/German2Stemmer.java | 1245 ++---
.../org/tartarus/snowball/ext/GermanStemmer.java | 1180 ++---
.../org/tartarus/snowball/ext/GreekStemmer.java | 2539 +++++++++
.../org/tartarus/snowball/ext/HindiStemmer.java | 210 +
.../tartarus/snowball/ext/HungarianStemmer.java | 1777 +++----
.../tartarus/snowball/ext/IndonesianStemmer.java | 392 ++
.../org/tartarus/snowball/ext/IrishStemmer.java | 933 ++--
.../org/tartarus/snowball/ext/ItalianStemmer.java | 2072 ++++----
.../java/org/tartarus/snowball/ext/KpStemmer.java | 3706 ++++++--------
.../tartarus/snowball/ext/LithuanianStemmer.java | 1222 ++---
.../org/tartarus/snowball/ext/LovinsStemmer.java | 3359 ++++++------
.../org/tartarus/snowball/ext/NepaliStemmer.java | 319 ++
.../tartarus/snowball/ext/NorwegianStemmer.java | 591 +--
.../org/tartarus/snowball/ext/PorterStemmer.java | 1571 +++---
.../tartarus/snowball/ext/PortugueseStemmer.java | 1947 +++----
.../org/tartarus/snowball/ext/RomanianStemmer.java | 1813 +++----
.../org/tartarus/snowball/ext/RussianStemmer.java | 1310 +++--
.../org/tartarus/snowball/ext/SerbianStemmer.java | 3753 ++++++++++++++
.../org/tartarus/snowball/ext/SpanishStemmer.java | 2062 ++++----
.../org/tartarus/snowball/ext/SwedishStemmer.java | 583 +--
.../org/tartarus/snowball/ext/TamilStemmer.java | 1959 +++++++
.../org/tartarus/snowball/ext/TurkishStemmer.java | 5415 ++++++++------------
.../lucene/analysis/core/TestRandomChains.java | 6 +-
.../analysis/snowball/TestSnowballVocab.java | 11 +-
lucene/common-build.xml | 2 +-
.../carrot2/LuceneCarrot2StemmerFactory.java | 12 +-
43 files changed, 30521 insertions(+), 29531 deletions(-)
diff --git a/lucene/analysis/common/README.txt b/lucene/analysis/common/README.txt
index f3382f8..e98799d 100644
--- a/lucene/analysis/common/README.txt
+++ b/lucene/analysis/common/README.txt
@@ -1,22 +1,11 @@
Lucene Analyzers README file
-This project provides pre-compiled version of the Snowball stemmers
-based on revision 502 of the Tartarus Snowball repository,
-now located at https://github.com/snowballstem/snowball/tree/e103b5c257383ee94a96e7fc58cab3c567bf079b (GitHub),
+This project provides pre-compiled version of the Snowball stemmers,
+now located at https://github.com/snowballstem/snowball/tree/53739a805cfa6c77ff8496dc711dc1c106d987c1 (GitHub),
together with classes integrating them with the Lucene search engine.
-A few changes has been made to the static Snowball code and compiled stemmers:
-
- * Class SnowballProgram is made abstract and contains new abstract method stem() to avoid reflection in Lucene filter class SnowballFilter.
- * All use of StringBuffers has been refactored to StringBuilder for speed.
- * Snowball BSD license header has been added to the Java classes to avoid having RAT adding new ASL headers.
- * Uses Java 7 MethodHandles and fixes method visibility bug: http://article.gmane.org/gmane.comp.search.snowball/1139
-
-If you want to add new stemmers, use the exact revision / Git commit above to generate the Java class, place it
-in src/java/org/tartarus/snowball/ext, and finally execute "ant patch-snowball". The latter will change the APIs
-of the generated class to make it compatible. Already patched classes are not modified.
-The Arabic stemmer has been generated from https://github.com/snowballstem/snowball/blob/master/algorithms/arabic.sbl
-using the latest version of snowball and patched manually.
+The snowball tree needs patches applied to properly generate efficient code for lucene.
+You can find the most recent patch on https://issues.apache.org/jira/browse/LUCENE-9220
IMPORTANT NOTICE ON BACKWARDS COMPATIBILITY!
diff --git a/lucene/analysis/common/build.xml b/lucene/analysis/common/build.xml
index ed9f029..c3d4fcc 100644
--- a/lucene/analysis/common/build.xml
+++ b/lucene/analysis/common/build.xml
@@ -29,8 +29,6 @@
<import file="../analysis-module-build.xml"/>
- <property name="snowball.programs.dir" location="src/java/org/tartarus/snowball/ext"/>
-
<property name="unicode-props-file" location="src/java/org/apache/lucene/analysis/util/UnicodeProps.java"/>
<!-- Because of a bug in JFlex's ant task, HTMLStripCharFilter has to be generated last. -->
@@ -124,14 +122,4 @@
<target name="regenerate" depends="jflex,unicode-data"/>
- <target name="patch-snowball" description="Patches all snowball programs in '${snowball.programs.dir}' to make them work with MethodHandles">
- <fileset id="snowball.programs" dir="${snowball.programs.dir}" includes="*Stemmer.java"/>
- <replaceregexp match="^public class \w+Stemmer\b" replace="@SuppressWarnings("unused") \0" flags="m" encoding="UTF-8">
- <fileset refid="snowball.programs"/>
- </replaceregexp>
- <replaceregexp match="private final static \w+Stemmer methodObject\b.*$" replace="/* patched */ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();" flags="m" encoding="UTF-8">
- <fileset refid="snowball.programs"/>
- </replaceregexp>
- <fixcrlf srcdir="${snowball.programs.dir}" includes="*Stemmer.java" tab="remove" tablength="2" encoding="UTF-8" javafiles="yes" fixlast="yes"/>
- </target>
</project>
diff --git a/lucene/analysis/common/src/java/org/apache/lucene/analysis/snowball/SnowballFilter.java b/lucene/analysis/common/src/java/org/apache/lucene/analysis/snowball/SnowballFilter.java
index ceec615..2749879 100644
--- a/lucene/analysis/common/src/java/org/apache/lucene/analysis/snowball/SnowballFilter.java
+++ b/lucene/analysis/common/src/java/org/apache/lucene/analysis/snowball/SnowballFilter.java
@@ -25,7 +25,7 @@ import org.apache.lucene.analysis.TokenStream;
import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
import org.apache.lucene.analysis.tokenattributes.KeywordAttribute;
import org.apache.lucene.analysis.tr.TurkishLowerCaseFilter; // javadoc @link
-import org.tartarus.snowball.SnowballProgram;
+import org.tartarus.snowball.SnowballStemmer;
/**
* A filter that stems words using a Snowball-generated stemmer.
@@ -51,12 +51,12 @@ import org.tartarus.snowball.SnowballProgram;
*/
public final class SnowballFilter extends TokenFilter {
- private final SnowballProgram stemmer;
+ private final SnowballStemmer stemmer;
private final CharTermAttribute termAtt = addAttribute(CharTermAttribute.class);
private final KeywordAttribute keywordAttr = addAttribute(KeywordAttribute.class);
- public SnowballFilter(TokenStream input, SnowballProgram stemmer) {
+ public SnowballFilter(TokenStream input, SnowballStemmer stemmer) {
super(input);
this.stemmer = stemmer;
}
@@ -76,8 +76,8 @@ public final class SnowballFilter extends TokenFilter {
//Class.forName is frowned upon in place of the ResourceLoader but in this case,
// the factory will use the other constructor so that the program is already loaded.
try {
- Class<? extends SnowballProgram> stemClass =
- Class.forName("org.tartarus.snowball.ext." + name + "Stemmer").asSubclass(SnowballProgram.class);
+ Class<? extends SnowballStemmer> stemClass =
+ Class.forName("org.tartarus.snowball.ext." + name + "Stemmer").asSubclass(SnowballStemmer.class);
stemmer = stemClass.getConstructor().newInstance();
} catch (Exception e) {
throw new IllegalArgumentException("Invalid stemmer class specified: " + name, e);
diff --git a/lucene/analysis/common/src/java/org/apache/lucene/analysis/snowball/SnowballPorterFilterFactory.java b/lucene/analysis/common/src/java/org/apache/lucene/analysis/snowball/SnowballPorterFilterFactory.java
index f61d732..633ebc5 100644
--- a/lucene/analysis/common/src/java/org/apache/lucene/analysis/snowball/SnowballPorterFilterFactory.java
+++ b/lucene/analysis/common/src/java/org/apache/lucene/analysis/snowball/SnowballPorterFilterFactory.java
@@ -27,7 +27,7 @@ import org.apache.lucene.analysis.miscellaneous.SetKeywordMarkerFilter;
import org.apache.lucene.analysis.util.ResourceLoader;
import org.apache.lucene.analysis.util.ResourceLoaderAware;
import org.apache.lucene.analysis.util.TokenFilterFactory;
-import org.tartarus.snowball.SnowballProgram;
+import org.tartarus.snowball.SnowballStemmer;
/**
* Factory for {@link SnowballFilter}, with configurable language
@@ -54,7 +54,7 @@ public class SnowballPorterFilterFactory extends TokenFilterFactory implements R
private final String language;
private final String wordFiles;
- private Class<? extends SnowballProgram> stemClass;
+ private Class<? extends SnowballStemmer> stemClass;
private CharArraySet protectedWords = null;
/** Creates a new SnowballPorterFilterFactory */
@@ -70,7 +70,7 @@ public class SnowballPorterFilterFactory extends TokenFilterFactory implements R
@Override
public void inform(ResourceLoader loader) throws IOException {
String className = "org.tartarus.snowball.ext." + language + "Stemmer";
- stemClass = loader.newInstance(className, SnowballProgram.class).getClass();
+ stemClass = loader.newInstance(className, SnowballStemmer.class).getClass();
if (wordFiles != null) {
protectedWords = getWordSet(loader, wordFiles, false);
@@ -79,7 +79,7 @@ public class SnowballPorterFilterFactory extends TokenFilterFactory implements R
@Override
public TokenFilter create(TokenStream input) {
- SnowballProgram program;
+ SnowballStemmer program;
try {
program = stemClass.getConstructor().newInstance();
} catch (Exception e) {
diff --git a/lucene/analysis/common/src/java/org/tartarus/snowball/Among.java b/lucene/analysis/common/src/java/org/tartarus/snowball/Among.java
index 964e0c8..0596d05 100644
--- a/lucene/analysis/common/src/java/org/tartarus/snowball/Among.java
+++ b/lucene/analysis/common/src/java/org/tartarus/snowball/Among.java
@@ -1,34 +1,34 @@
/*
+ Copyright (c) 2001, Dr Martin Porter
+ Copyright (c) 2004,2005, Richard Boulton
+ Copyright (c) 2013, Yoshiki Shibukawa
+ Copyright (c) 2006,2007,2009,2010,2011,2014-2019, Olly Betts
+ All rights reserved.
-Copyright (c) 2001, Dr Martin Porter
-Copyright (c) 2002, Richard Boulton
-All rights reserved.
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * Neither the name of the copyright holders nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
- */
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ 3. Neither the name of the Snowball project nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
package org.tartarus.snowball;
import java.lang.invoke.MethodHandle;
@@ -37,47 +37,41 @@ import java.lang.invoke.MethodType;
import java.util.Locale;
/**
- * This is the rev 502 of the Snowball SVN trunk,
- * now located at <a target="_blank" href="https://github.com/snowballstem/snowball/tree/e103b5c257383ee94a96e7fc58cab3c567bf079b">GitHub</a>,
- * but modified:
- * <ul>
- * <li>made abstract and introduced abstract method stem to avoid expensive reflection in filter class.
- * <li>refactored StringBuffers to StringBuilder
- * <li>uses char[] as buffer instead of StringBuffer/StringBuilder
- * <li>eq_s,eq_s_b,insert,replace_s take CharSequence like eq_v and eq_v_b
- * <li>use MethodHandles and fix <a target="_blank" href="http://article.gmane.org/gmane.comp.search.snowball/1139">method visibility bug</a>.
- * </ul>
+ * Internal class used by Snowball stemmers
*/
-public final class Among {
-
- public Among(String s, int substring_i, int result,
- String methodname, MethodHandles.Lookup methodobject) {
- this.s_size = s.length();
+public class Among {
+ public Among (String s, int substring_i, int result) {
this.s = s.toCharArray();
this.substring_i = substring_i;
this.result = result;
- if (methodname.isEmpty()) {
- this.method = null;
- } else {
- final Class<? extends SnowballProgram> clazz = methodobject.lookupClass().asSubclass(SnowballProgram.class);
+ this.method = null;
+ }
+
+ public Among (String s, int substring_i, int result, String methodname,
+ MethodHandles.Lookup methodobject) {
+ this.s = s.toCharArray();
+ this.substring_i = substring_i;
+ this.result = result;
+ final Class<? extends SnowballProgram> clazz = methodobject.lookupClass().asSubclass(SnowballProgram.class);
+ if (methodname.length() > 0) {
try {
this.method = methodobject.findVirtual(clazz, methodname, MethodType.methodType(boolean.class))
- .asType(MethodType.methodType(boolean.class, SnowballProgram.class));
+ .asType(MethodType.methodType(boolean.class, SnowballProgram.class));
} catch (NoSuchMethodException | IllegalAccessException e) {
throw new RuntimeException(String.format(Locale.ENGLISH,
- "Snowball program '%s' is broken, cannot access method: boolean %s()",
- clazz.getSimpleName(), methodname
- ), e);
+ "Snowball program '%s' is broken, cannot access method: boolean %s()",
+ clazz.getSimpleName(), methodname
+ ), e);
}
+ } else {
+ this.method = null;
}
}
- final int s_size; /* search string */
final char[] s; /* search string */
final int substring_i; /* index to longest matching substring */
- final int result; /* result of the lookup */
-
+ final int result; /* result of the lookup */
+
// Make sure this is not accessible outside package for Java security reasons!
final MethodHandle method; /* method to use if substring matches */
-
-}
\ No newline at end of file
+};
diff --git a/lucene/analysis/common/src/java/org/tartarus/snowball/SnowballProgram.java b/lucene/analysis/common/src/java/org/tartarus/snowball/SnowballProgram.java
index c31065f..a532b4e 100644
--- a/lucene/analysis/common/src/java/org/tartarus/snowball/SnowballProgram.java
+++ b/lucene/analysis/common/src/java/org/tartarus/snowball/SnowballProgram.java
@@ -1,407 +1,370 @@
/*
-
-Copyright (c) 2001, Dr Martin Porter
-Copyright (c) 2002, Richard Boulton
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * Neither the name of the copyright holders nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
-FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
-OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
- */
+ Copyright (c) 2001, Dr Martin Porter
+ Copyright (c) 2004,2005, Richard Boulton
+ Copyright (c) 2013, Yoshiki Shibukawa
+ Copyright (c) 2006,2007,2009,2010,2011,2014-2019, Olly Betts
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ 3. Neither the name of the Snowball project nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
package org.tartarus.snowball;
-
import java.lang.reflect.UndeclaredThrowableException;
-
-import org.apache.lucene.util.ArrayUtil;
+import java.io.Serializable;
/**
- * This is the rev 502 of the Snowball SVN trunk,
- * now located at <a target="_blank" href="https://github.com/snowballstem/snowball/tree/e103b5c257383ee94a96e7fc58cab3c567bf079b">GitHub</a>,
- * but modified:
- * <ul>
- * <li>made abstract and introduced abstract method stem to avoid expensive reflection in filter class.
- * <li>refactored StringBuffers to StringBuilder
- * <li>uses char[] as buffer instead of StringBuffer/StringBuilder
- * <li>eq_s,eq_s_b,insert,replace_s take CharSequence like eq_v and eq_v_b
- * <li>use MethodHandles and fix <a target="_blank" href="http://article.gmane.org/gmane.comp.search.snowball/1139">method visibility bug</a>.
- * </ul>
+ * Base class for a snowball stemmer
*/
-public abstract class SnowballProgram {
-
- protected SnowballProgram()
- {
- current = new char[8];
- setCurrent("");
- }
-
- public abstract boolean stem();
-
- /**
- * Set the current string.
- */
- public void setCurrent(String value)
- {
- current = value.toCharArray();
- cursor = 0;
- limit = value.length();
- limit_backward = 0;
- bra = cursor;
- ket = limit;
- }
+public class SnowballProgram implements Serializable {
+ protected SnowballProgram()
+ {
+ current = new char[8];
+ setCurrent("");
+ }
- /**
- * Get the current string.
- */
- public String getCurrent()
- {
- return new String(current, 0, limit);
- }
-
- /**
- * Set the current string.
- * @param text character array containing input
- * @param length valid length of text.
- */
- public void setCurrent(char text[], int length) {
- current = text;
- cursor = 0;
- limit = length;
- limit_backward = 0;
- bra = cursor;
- ket = limit;
- }
+ static final long serialVersionUID = 2016072500L;
+
+ /**
+ * Set the current string.
+ */
+ public void setCurrent(String value)
+ {
+ current = value.toCharArray();
+ cursor = 0;
+ limit = value.length();
+ limit_backward = 0;
+ bra = cursor;
+ ket = limit;
+ }
- /**
- * Get the current buffer containing the stem.
- * <p>
- * NOTE: this may be a reference to a different character array than the
- * one originally provided with setCurrent, in the exceptional case that
- * stemming produced a longer intermediate or result string.
- * </p>
- * <p>
- * It is necessary to use {@link #getCurrentBufferLength()} to determine
- * the valid length of the returned buffer. For example, many words are
- * stemmed simply by subtracting from the length to remove suffixes.
- * </p>
- * @see #getCurrentBufferLength()
- */
- public char[] getCurrentBuffer() {
- return current;
- }
-
- /**
- * Get the valid length of the character array in
- * {@link #getCurrentBuffer()}.
- * @return valid length of the array.
- */
- public int getCurrentBufferLength() {
- return limit;
- }
+ /**
+ * Get the current string.
+ */
+ public String getCurrent()
+ {
+ return new String(current, 0, limit);
+ }
- // current string
- private char current[];
+ /**
+ * Set the current string.
+ * @param text character array containing input
+ * @param length valid length of text.
+ */
+ public void setCurrent(char text[], int length) {
+ current = text;
+ cursor = 0;
+ limit = length;
+ limit_backward = 0;
+ bra = cursor;
+ ket = limit;
+ }
- protected int cursor;
- protected int limit;
- protected int limit_backward;
- protected int bra;
- protected int ket;
+ /**
+ * Get the current buffer containing the stem.
+ * <p>
+ * NOTE: this may be a reference to a different character array than the
+ * one originally provided with setCurrent, in the exceptional case that
+ * stemming produced a longer intermediate or result string.
+ * </p>
+ * <p>
+ * It is necessary to use {@link #getCurrentBufferLength()} to determine
+ * the valid length of the returned buffer. For example, many words are
+ * stemmed simply by subtracting from the length to remove suffixes.
+ * </p>
+ * @see #getCurrentBufferLength()
+ */
+ public char[] getCurrentBuffer() {
+ return current;
+ }
- protected void copy_from(SnowballProgram other)
- {
- current = other.current;
- cursor = other.cursor;
- limit = other.limit;
- limit_backward = other.limit_backward;
- bra = other.bra;
- ket = other.ket;
- }
+ /**
+ * Get the valid length of the character array in
+ * {@link #getCurrentBuffer()}.
+ * @return valid length of the array.
+ */
+ public int getCurrentBufferLength() {
+ return limit;
+ }
- protected boolean in_grouping(char [] s, int min, int max)
- {
- if (cursor >= limit) return false;
- char ch = current[cursor];
- if (ch > max || ch < min) return false;
- ch -= min;
- if ((s[ch >> 3] & (0X1 << (ch & 0X7))) == 0) return false;
- cursor++;
- return true;
- }
+ // current string
+ private char current[];
+
+ protected int cursor;
+ protected int limit;
+ protected int limit_backward;
+ protected int bra;
+ protected int ket;
+
+ public SnowballProgram(SnowballProgram other) {
+ current = other.current;
+ cursor = other.cursor;
+ limit = other.limit;
+ limit_backward = other.limit_backward;
+ bra = other.bra;
+ ket = other.ket;
+ }
- protected boolean in_grouping_b(char [] s, int min, int max)
- {
- if (cursor <= limit_backward) return false;
- char ch = current[cursor - 1];
- if (ch > max || ch < min) return false;
- ch -= min;
- if ((s[ch >> 3] & (0X1 << (ch & 0X7))) == 0) return false;
- cursor--;
- return true;
- }
+ protected void copy_from(SnowballProgram other)
+ {
+ current = other.current;
+ cursor = other.cursor;
+ limit = other.limit;
+ limit_backward = other.limit_backward;
+ bra = other.bra;
+ ket = other.ket;
+ }
- protected boolean out_grouping(char [] s, int min, int max)
- {
- if (cursor >= limit) return false;
- char ch = current[cursor];
- if (ch > max || ch < min) {
- cursor++;
- return true;
- }
- ch -= min;
- if ((s[ch >> 3] & (0X1 << (ch & 0X7))) == 0) {
- cursor ++;
- return true;
- }
- return false;
- }
+ protected boolean in_grouping(char [] s, int min, int max)
+ {
+ if (cursor >= limit) return false;
+ char ch = current[cursor];
+ if (ch > max || ch < min) return false;
+ ch -= min;
+ if ((s[ch >> 3] & (0X1 << (ch & 0X7))) == 0) return false;
+ cursor++;
+ return true;
+ }
- protected boolean out_grouping_b(char [] s, int min, int max)
- {
- if (cursor <= limit_backward) return false;
- char ch = current[cursor - 1];
- if (ch > max || ch < min) {
- cursor--;
- return true;
- }
- ch -= min;
- if ((s[ch >> 3] & (0X1 << (ch & 0X7))) == 0) {
- cursor--;
- return true;
- }
- return false;
- }
+ protected boolean in_grouping_b(char [] s, int min, int max)
+ {
+ if (cursor <= limit_backward) return false;
+ char ch = current[cursor - 1];
+ if (ch > max || ch < min) return false;
+ ch -= min;
+ if ((s[ch >> 3] & (0X1 << (ch & 0X7))) == 0) return false;
+ cursor--;
+ return true;
+ }
- protected boolean in_range(int min, int max)
- {
- if (cursor >= limit) return false;
- char ch = current[cursor];
- if (ch > max || ch < min) return false;
+ protected boolean out_grouping(char [] s, int min, int max)
+ {
+ if (cursor >= limit) return false;
+ char ch = current[cursor];
+ if (ch > max || ch < min) {
cursor++;
return true;
}
-
- protected boolean in_range_b(int min, int max)
- {
- if (cursor <= limit_backward) return false;
- char ch = current[cursor - 1];
- if (ch > max || ch < min) return false;
- cursor--;
- return true;
- }
-
- protected boolean out_range(int min, int max)
- {
- if (cursor >= limit) return false;
- char ch = current[cursor];
- if (!(ch > max || ch < min)) return false;
+ ch -= min;
+ if ((s[ch >> 3] & (0X1 << (ch & 0X7))) == 0) {
cursor++;
return true;
}
+ return false;
+ }
- protected boolean out_range_b(int min, int max)
- {
- if (cursor <= limit_backward) return false;
- char ch = current[cursor - 1];
- if(!(ch > max || ch < min)) return false;
+ protected boolean out_grouping_b(char [] s, int min, int max)
+ {
+ if (cursor <= limit_backward) return false;
+ char ch = current[cursor - 1];
+ if (ch > max || ch < min) {
cursor--;
return true;
}
-
- protected boolean eq_s(int s_size, CharSequence s)
- {
- if (limit - cursor < s_size) return false;
- int i;
- for (i = 0; i != s_size; i++) {
- if (current[cursor + i] != s.charAt(i)) return false;
- }
- cursor += s_size;
- return true;
- }
-
- protected boolean eq_s_b(int s_size, CharSequence s)
- {
- if (cursor - limit_backward < s_size) return false;
- int i;
- for (i = 0; i != s_size; i++) {
- if (current[cursor - s_size + i] != s.charAt(i)) return false;
- }
- cursor -= s_size;
+ ch -= min;
+ if ((s[ch >> 3] & (0X1 << (ch & 0X7))) == 0) {
+ cursor--;
return true;
}
+ return false;
+ }
- protected boolean eq_v(CharSequence s)
- {
- return eq_s(s.length(), s);
+ protected boolean eq_s(CharSequence s)
+ {
+ if (limit - cursor < s.length()) return false;
+ int i;
+ for (i = 0; i != s.length(); i++) {
+ if (current[cursor + i] != s.charAt(i)) return false;
}
+ cursor += s.length();
+ return true;
+ }
- protected boolean eq_v_b(CharSequence s)
- {
- return eq_s_b(s.length(), s);
+ protected boolean eq_s_b(CharSequence s)
+ {
+ if (cursor - limit_backward < s.length()) return false;
+ int i;
+ for (i = 0; i != s.length(); i++) {
+ if (current[cursor - s.length() + i] != s.charAt(i)) return false;
}
+ cursor -= s.length();
+ return true;
+ }
- protected int find_among(Among v[], int v_size)
- {
- int i = 0;
- int j = v_size;
-
- int c = cursor;
- int l = limit;
-
- int common_i = 0;
- int common_j = 0;
-
- boolean first_key_inspected = false;
-
- while (true) {
- int k = i + ((j - i) >> 1);
- int diff = 0;
- int common = common_i < common_j ? common_i : common_j; // smaller
- Among w = v[k];
- int i2;
- for (i2 = common; i2 < w.s_size; i2++) {
- if (c + common == l) {
- diff = -1;
- break;
- }
- diff = current[c + common] - w.s[i2];
- if (diff != 0) break;
- common++;
- }
- if (diff < 0) {
- j = k;
- common_j = common;
- } else {
- i = k;
- common_i = common;
+ protected int find_among(Among v[])
+ {
+ int i = 0;
+ int j = v.length;
+
+ int c = cursor;
+ int l = limit;
+
+ int common_i = 0;
+ int common_j = 0;
+
+ boolean first_key_inspected = false;
+
+ while (true) {
+ int k = i + ((j - i) >> 1);
+ int diff = 0;
+ int common = common_i < common_j ? common_i : common_j; // smaller
+ Among w = v[k];
+ int i2;
+ for (i2 = common; i2 < w.s.length; i2++) {
+ if (c + common == l) {
+ diff = -1;
+ break;
}
- if (j - i <= 1) {
- if (i > 0) break; // v->s has been inspected
- if (j == i) break; // only one item in v
+ diff = current[c + common] - w.s[i2];
+ if (diff != 0) break;
+ common++;
+ }
+ if (diff < 0) {
+ j = k;
+ common_j = common;
+ } else {
+ i = k;
+ common_i = common;
+ }
+ if (j - i <= 1) {
+ if (i > 0) break; // v->s has been inspected
+ if (j == i) break; // only one item in v
- // - but now we need to go round once more to get
- // v->s inspected. This looks messy, but is actually
- // the optimal approach.
+ // - but now we need to go round once more to get
+ // v->s inspected. This looks messy, but is actually
+ // the optimal approach.
- if (first_key_inspected) break;
- first_key_inspected = true;
- }
+ if (first_key_inspected) break;
+ first_key_inspected = true;
}
- while (true) {
- Among w = v[i];
- if (common_i >= w.s_size) {
- cursor = c + w.s_size;
- if (w.method == null) return w.result;
- boolean res = false;
- try {
- res = (boolean) w.method.invokeExact(this);
- } catch (Error | RuntimeException e) {
- throw e;
- } catch (Throwable e) {
- throw new UndeclaredThrowableException(e);
- }
- cursor = c + w.s_size;
- if (res) return w.result;
+ }
+ while (true) {
+ Among w = v[i];
+ if (common_i >= w.s.length) {
+ cursor = c + w.s.length;
+ if (w.method == null) return w.result;
+ boolean res = false;
+ try {
+ res = (boolean) w.method.invokeExact(this);
+ } catch (Error | RuntimeException e) {
+ throw e;
+ } catch (Throwable e) {
+ throw new UndeclaredThrowableException(e);
}
- i = w.substring_i;
- if (i < 0) return 0;
+ cursor = c + w.s.length;
+ if (res) return w.result;
}
+ i = w.substring_i;
+ if (i < 0) return 0;
}
+ }
// find_among_b is for backwards processing. Same comments apply
- protected int find_among_b(Among v[], int v_size)
- {
- int i = 0;
- int j = v_size;
-
- int c = cursor;
- int lb = limit_backward;
-
- int common_i = 0;
- int common_j = 0;
-
- boolean first_key_inspected = false;
-
- while (true) {
- int k = i + ((j - i) >> 1);
- int diff = 0;
- int common = common_i < common_j ? common_i : common_j;
- Among w = v[k];
- int i2;
- for (i2 = w.s_size - 1 - common; i2 >= 0; i2--) {
- if (c - common == lb) {
- diff = -1;
- break;
- }
- diff = current[c - 1 - common] - w.s[i2];
- if (diff != 0) break;
- common++;
- }
- if (diff < 0) {
- j = k;
- common_j = common;
- } else {
- i = k;
- common_i = common;
- }
- if (j - i <= 1) {
- if (i > 0) break;
- if (j == i) break;
- if (first_key_inspected) break;
- first_key_inspected = true;
+ protected int find_among_b(Among v[])
+ {
+ int i = 0;
+ int j = v.length;
+
+ int c = cursor;
+ int lb = limit_backward;
+
+ int common_i = 0;
+ int common_j = 0;
+
+ boolean first_key_inspected = false;
+
+ while (true) {
+ int k = i + ((j - i) >> 1);
+ int diff = 0;
+ int common = common_i < common_j ? common_i : common_j;
+ Among w = v[k];
+ int i2;
+ for (i2 = w.s.length - 1 - common; i2 >= 0; i2--) {
+ if (c - common == lb) {
+ diff = -1;
+ break;
}
+ diff = current[c - 1 - common] - w.s[i2];
+ if (diff != 0) break;
+ common++;
}
- while (true) {
- Among w = v[i];
- if (common_i >= w.s_size) {
- cursor = c - w.s_size;
- if (w.method == null) return w.result;
-
- boolean res = false;
- try {
- res = (boolean) w.method.invokeExact(this);
- } catch (Error | RuntimeException e) {
- throw e;
- } catch (Throwable e) {
- throw new UndeclaredThrowableException(e);
- }
- cursor = c - w.s_size;
- if (res) return w.result;
+ if (diff < 0) {
+ j = k;
+ common_j = common;
+ } else {
+ i = k;
+ common_i = common;
+ }
+ if (j - i <= 1) {
+ if (i > 0) break;
+ if (j == i) break;
+ if (first_key_inspected) break;
+ first_key_inspected = true;
+ }
+ }
+ while (true) {
+ Among w = v[i];
+ if (common_i >= w.s.length) {
+ cursor = c - w.s.length;
+ if (w.method == null) return w.result;
+
+ boolean res = false;
+ try {
+ res = (boolean) w.method.invokeExact(this);
+ } catch (Error | RuntimeException e) {
+ throw e;
+ } catch (Throwable e) {
+ throw new UndeclaredThrowableException(e);
}
- i = w.substring_i;
- if (i < 0) return 0;
+ cursor = c - w.s.length;
+ if (res) return w.result;
}
+ i = w.substring_i;
+ if (i < 0) return 0;
}
+ }
+
+ // mini version of ArrayUtil.oversize from lucene, specialized to chars
+ static int oversize(int minTargetSize) {
+ int extra = minTargetSize >> 3;
+ if (extra < 3) {
+ extra = 3;
+ }
+ int newSize = minTargetSize + extra;
+ return (newSize + 3) & 0x7ffffffc;
+ }
/* to replace chars between c_bra and c_ket in current by the
- * chars in s.
- */
- protected int replace_s(int c_bra, int c_ket, CharSequence s) {
+ * chars in s.
+ */
+ protected int replace_s(int c_bra, int c_ket, CharSequence s)
+ {
final int adjustment = s.length() - (c_ket - c_bra);
final int newLength = limit + adjustment;
//resize if necessary
if (newLength > current.length) {
- char newBuffer[] = new char[ArrayUtil.oversize(newLength, Character.BYTES)];
+ char newBuffer[] = new char[oversize(newLength)];
System.arraycopy(current, 0, newBuffer, 0, limit);
current = newBuffer;
}
@@ -423,73 +386,69 @@ public abstract class SnowballProgram {
return adjustment;
}
- protected void slice_check() {
+ protected void slice_check()
+ {
if (bra < 0 ||
bra > ket ||
- ket > limit) {
+ ket > limit)
+ {
throw new IllegalArgumentException("faulty slice operation: bra=" + bra + ",ket=" + ket + ",limit=" + limit);
- // FIXME: report error somehow.
- /*
- fprintf(stderr, "faulty slice operation:\n");
- debug(z, -1, 0);
- exit(1);
- */
}
}
- protected void slice_from(CharSequence s) {
+ protected void slice_from(CharSequence s)
+ {
slice_check();
replace_s(bra, ket, s);
}
- protected void slice_del() {
- slice_from((CharSequence) "");
+ protected void slice_del()
+ {
+ slice_from("");
}
protected void insert(int c_bra, int c_ket, CharSequence s)
- {
- int adjustment = replace_s(c_bra, c_ket, s);
- if (c_bra <= bra) bra += adjustment;
- if (c_bra <= ket) ket += adjustment;
- }
+ {
+ int adjustment = replace_s(c_bra, c_ket, s);
+ if (c_bra <= bra) bra += adjustment;
+ if (c_bra <= ket) ket += adjustment;
+ }
- /* Copy the slice into the supplied StringBuffer */
- protected StringBuilder slice_to(StringBuilder s)
- {
- slice_check();
- int len = ket - bra;
- s.setLength(0);
- s.append(current, bra, len);
- return s;
- }
+ /* Copy the slice into the supplied StringBuilder */
+ protected void slice_to(StringBuilder s)
+ {
+ slice_check();
+ int len = ket - bra;
+ s.setLength(0);
+ s.append(current, bra, len);
+ }
- protected StringBuilder assign_to(StringBuilder s)
- {
- s.setLength(0);
- s.append(current, 0, limit);
- return s;
- }
+ protected void assign_to(StringBuilder s)
+ {
+ s.setLength(0);
+ s.append(current, 0, limit);
+ }
-/*
-extern void debug(struct SN_env * z, int number, int line_count)
-{ int i;
- int limit = SIZE(z->p);
- //if (number >= 0) printf("%3d (line %4d): '", number, line_count);
- if (number >= 0) printf("%3d (line %4d): [%d]'", number, line_count,limit);
- for (i = 0; i <= limit; i++)
- { if (z->lb == i) printf("{");
- if (z->bra == i) printf("[");
- if (z->c == i) printf("|");
- if (z->ket == i) printf("]");
- if (z->l == i) printf("}");
- if (i < limit)
- { int ch = z->p[i];
- if (ch == 0) ch = '#';
- printf("%c", ch);
- }
- }
- printf("'\n");
-}
-*/
-};
+ /*
+ extern void debug(struct SN_env * z, int number, int line_count)
+ { int i;
+ int limit = SIZE(z->p);
+ //if (number >= 0) printf("%3d (line %4d): '", number, line_count);
+ if (number >= 0) printf("%3d (line %4d): [%d]'", number, line_count,limit);
+ for (i = 0; i <= limit; i++)
+ { if (z->lb == i) printf("{");
+ if (z->bra == i) printf("[");
+ if (z->c == i) printf("|");
+ if (z->ket == i) printf("]");
+ if (z->l == i) printf("}");
+ if (i < limit)
+ { int ch = z->p[i];
+ if (ch == 0) ch = '#';
+ printf("%c", ch);
+ }
+ }
+ printf("'\n");
+ }
+ */
+};
diff --git a/lucene/analysis/common/src/java/org/tartarus/snowball/SnowballStemmer.java b/lucene/analysis/common/src/java/org/tartarus/snowball/SnowballStemmer.java
new file mode 100644
index 0000000..9c91b1d
--- /dev/null
+++ b/lucene/analysis/common/src/java/org/tartarus/snowball/SnowballStemmer.java
@@ -0,0 +1,42 @@
+/*
+ Copyright (c) 2001, Dr Martin Porter
+ Copyright (c) 2004,2005, Richard Boulton
+ Copyright (c) 2013, Yoshiki Shibukawa
+ Copyright (c) 2006,2007,2009,2010,2011,2014-2019, Olly Betts
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ 2. Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ 3. Neither the name of the Snowball project nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+ WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
+ ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+ LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+package org.tartarus.snowball;
+
+/**
+ * Parent class of all snowball stemmers, which must implement <code>stem</code>
+ */
+public abstract class SnowballStemmer extends SnowballProgram {
+ public abstract boolean stem();
+
+ static final long serialVersionUID = 2016072500L;
+};
diff --git a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/ArabicStemmer.java b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/ArabicStemmer.java
index 2b907b2..03be077 100644
--- a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/ArabicStemmer.java
+++ b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/ArabicStemmer.java
@@ -1,1912 +1,1363 @@
-// This file was generated automatically by the Snowball to Java compiler
-// http://snowballstem.org/
+// Generated by Snowball 2.0.0 - https://snowballstem.org/
package org.tartarus.snowball.ext;
import org.tartarus.snowball.Among;
/**
- * This class was automatically generated by a Snowball to Java compiler
- * It implements the stemming algorithm defined by a snowball script.
+ * This class implements the stemming algorithm defined by a snowball script.
+ * <p>
+ * Generated by Snowball 2.0.0 - https://snowballstem.org/
+ * </p>
*/
+@SuppressWarnings("unused")
+public class ArabicStemmer extends org.tartarus.snowball.SnowballStemmer {
-@SuppressWarnings("unused") public class ArabicStemmer extends org.tartarus.snowball.SnowballProgram {
+ private static final long serialVersionUID = 1L;
+ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
- private static final long serialVersionUID = 1L;
+ private final static Among a_0[] = {
+ new Among("\u0640", -1, 1),
+ new Among("\u064B", -1, 1),
+ new Among("\u064C", -1, 1),
+ new Among("\u064D", -1, 1),
+ new Among("\u064E", -1, 1),
+ new Among("\u064F", -1, 1),
+ new Among("\u0650", -1, 1),
+ new Among("\u0651", -1, 1),
+ new Among("\u0652", -1, 1),
+ new Among("\u0660", -1, 2),
+ new Among("\u0661", -1, 3),
+ new Among("\u0662", -1, 4),
+ new Among("\u0663", -1, 5),
+ new Among("\u0664", -1, 6),
+ new Among("\u0665", -1, 7),
+ new Among("\u0666", -1, 8),
+ new Among("\u0667", -1, 9),
+ new Among("\u0668", -1, 10),
+ new Among("\u0669", -1, 11),
+ new Among("\uFE80", -1, 12),
+ new Among("\uFE81", -1, 16),
+ new Among("\uFE82", -1, 16),
+ new Among("\uFE83", -1, 13),
+ new Among("\uFE84", -1, 13),
+ new Among("\uFE85", -1, 17),
+ new Among("\uFE86", -1, 17),
+ new Among("\uFE87", -1, 14),
+ new Among("\uFE88", -1, 14),
+ new Among("\uFE89", -1, 15),
+ new Among("\uFE8A", -1, 15),
+ new Among("\uFE8B", -1, 15),
+ new Among("\uFE8C", -1, 15),
+ new Among("\uFE8D", -1, 18),
+ new Among("\uFE8E", -1, 18),
+ new Among("\uFE8F", -1, 19),
+ new Among("\uFE90", -1, 19),
+ new Among("\uFE91", -1, 19),
+ new Among("\uFE92", -1, 19),
+ new Among("\uFE93", -1, 20),
+ new Among("\uFE94", -1, 20),
+ new Among("\uFE95", -1, 21),
+ new Among("\uFE96", -1, 21),
+ new Among("\uFE97", -1, 21),
+ new Among("\uFE98", -1, 21),
+ new Among("\uFE99", -1, 22),
+ new Among("\uFE9A", -1, 22),
+ new Among("\uFE9B", -1, 22),
+ new Among("\uFE9C", -1, 22),
+ new Among("\uFE9D", -1, 23),
+ new Among("\uFE9E", -1, 23),
+ new Among("\uFE9F", -1, 23),
+ new Among("\uFEA0", -1, 23),
+ new Among("\uFEA1", -1, 24),
+ new Among("\uFEA2", -1, 24),
+ new Among("\uFEA3", -1, 24),
+ new Among("\uFEA4", -1, 24),
+ new Among("\uFEA5", -1, 25),
+ new Among("\uFEA6", -1, 25),
+ new Among("\uFEA7", -1, 25),
+ new Among("\uFEA8", -1, 25),
+ new Among("\uFEA9", -1, 26),
+ new Among("\uFEAA", -1, 26),
+ new Among("\uFEAB", -1, 27),
+ new Among("\uFEAC", -1, 27),
+ new Among("\uFEAD", -1, 28),
+ new Among("\uFEAE", -1, 28),
+ new Among("\uFEAF", -1, 29),
+ new Among("\uFEB0", -1, 29),
+ new Among("\uFEB1", -1, 30),
+ new Among("\uFEB2", -1, 30),
+ new Among("\uFEB3", -1, 30),
+ new Among("\uFEB4", -1, 30),
+ new Among("\uFEB5", -1, 31),
+ new Among("\uFEB6", -1, 31),
+ new Among("\uFEB7", -1, 31),
+ new Among("\uFEB8", -1, 31),
+ new Among("\uFEB9", -1, 32),
+ new Among("\uFEBA", -1, 32),
+ new Among("\uFEBB", -1, 32),
+ new Among("\uFEBC", -1, 32),
+ new Among("\uFEBD", -1, 33),
+ new Among("\uFEBE", -1, 33),
+ new Among("\uFEBF", -1, 33),
+ new Among("\uFEC0", -1, 33),
+ new Among("\uFEC1", -1, 34),
+ new Among("\uFEC2", -1, 34),
+ new Among("\uFEC3", -1, 34),
+ new Among("\uFEC4", -1, 34),
+ new Among("\uFEC5", -1, 35),
+ new Among("\uFEC6", -1, 35),
+ new Among("\uFEC7", -1, 35),
+ new Among("\uFEC8", -1, 35),
+ new Among("\uFEC9", -1, 36),
+ new Among("\uFECA", -1, 36),
+ new Among("\uFECB", -1, 36),
+ new Among("\uFECC", -1, 36),
+ new Among("\uFECD", -1, 37),
+ new Among("\uFECE", -1, 37),
+ new Among("\uFECF", -1, 37),
+ new Among("\uFED0", -1, 37),
+ new Among("\uFED1", -1, 38),
+ new Among("\uFED2", -1, 38),
+ new Among("\uFED3", -1, 38),
+ new Among("\uFED4", -1, 38),
+ new Among("\uFED5", -1, 39),
+ new Among("\uFED6", -1, 39),
+ new Among("\uFED7", -1, 39),
+ new Among("\uFED8", -1, 39),
+ new Among("\uFED9", -1, 40),
+ new Among("\uFEDA", -1, 40),
+ new Among("\uFEDB", -1, 40),
+ new Among("\uFEDC", -1, 40),
+ new Among("\uFEDD", -1, 41),
+ new Among("\uFEDE", -1, 41),
+ new Among("\uFEDF", -1, 41),
+ new Among("\uFEE0", -1, 41),
+ new Among("\uFEE1", -1, 42),
+ new Among("\uFEE2", -1, 42),
+ new Among("\uFEE3", -1, 42),
+ new Among("\uFEE4", -1, 42),
+ new Among("\uFEE5", -1, 43),
+ new Among("\uFEE6", -1, 43),
+ new Among("\uFEE7", -1, 43),
+ new Among("\uFEE8", -1, 43),
+ new Among("\uFEE9", -1, 44),
+ new Among("\uFEEA", -1, 44),
+ new Among("\uFEEB", -1, 44),
+ new Among("\uFEEC", -1, 44),
+ new Among("\uFEED", -1, 45),
+ new Among("\uFEEE", -1, 45),
+ new Among("\uFEEF", -1, 46),
+ new Among("\uFEF0", -1, 46),
+ new Among("\uFEF1", -1, 47),
+ new Among("\uFEF2", -1, 47),
+ new Among("\uFEF3", -1, 47),
+ new Among("\uFEF4", -1, 47),
+ new Among("\uFEF5", -1, 51),
+ new Among("\uFEF6", -1, 51),
+ new Among("\uFEF7", -1, 49),
+ new Among("\uFEF8", -1, 49),
+ new Among("\uFEF9", -1, 50),
+ new Among("\uFEFA", -1, 50),
+ new Among("\uFEFB", -1, 48),
+ new Among("\uFEFC", -1, 48)
+ };
- /* patched */ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
+ private final static Among a_1[] = {
+ new Among("\u0622", -1, 1),
+ new Among("\u0623", -1, 1),
+ new Among("\u0624", -1, 1),
+ new Among("\u0625", -1, 1),
+ new Among("\u0626", -1, 1)
+ };
- private final static Among a_0[] = {
- new Among("\u0640", -1, 2, "", methodObject),
- new Among("\u064B", -1, 1, "", methodObject),
- new Among("\u064C", -1, 1, "", methodObject),
- new Among("\u064D", -1, 1, "", methodObject),
- new Among("\u064E", -1, 1, "", methodObject),
- new Among("\u064F", -1, 1, "", methodObject),
- new Among("\u0650", -1, 1, "", methodObject),
- new Among("\u0651", -1, 1, "", methodObject),
- new Among("\u0652", -1, 1, "", methodObject),
- new Among("\u0660", -1, 3, "", methodObject),
- new Among("\u0661", -1, 4, "", methodObject),
- new Among("\u0662", -1, 5, "", methodObject),
- new Among("\u0663", -1, 6, "", methodObject),
- new Among("\u0664", -1, 7, "", methodObject),
- new Among("\u0665", -1, 8, "", methodObject),
- new Among("\u0666", -1, 9, "", methodObject),
- new Among("\u0667", -1, 10, "", methodObject),
- new Among("\u0668", -1, 11, "", methodObject),
- new Among("\u0669", -1, 12, "", methodObject),
- new Among("\uFE80", -1, 13, "", methodObject),
- new Among("\uFE81", -1, 17, "", methodObject),
- new Among("\uFE82", -1, 17, "", methodObject),
- new Among("\uFE83", -1, 14, "", methodObject),
- new Among("\uFE84", -1, 14, "", methodObject),
- new Among("\uFE85", -1, 18, "", methodObject),
- new Among("\uFE86", -1, 18, "", methodObject),
- new Among("\uFE87", -1, 15, "", methodObject),
- new Among("\uFE88", -1, 15, "", methodObject),
- new Among("\uFE89", -1, 16, "", methodObject),
- new Among("\uFE8A", -1, 16, "", methodObject),
- new Among("\uFE8B", -1, 16, "", methodObject),
- new Among("\uFE8C", -1, 16, "", methodObject),
- new Among("\uFE8D", -1, 19, "", methodObject),
- new Among("\uFE8E", -1, 19, "", methodObject),
- new Among("\uFE8F", -1, 20, "", methodObject),
- new Among("\uFE90", -1, 20, "", methodObject),
- new Among("\uFE91", -1, 20, "", methodObject),
- new Among("\uFE92", -1, 20, "", methodObject),
- new Among("\uFE93", -1, 21, "", methodObject),
- new Among("\uFE94", -1, 21, "", methodObject),
- new Among("\uFE95", -1, 22, "", methodObject),
- new Among("\uFE96", -1, 22, "", methodObject),
- new Among("\uFE97", -1, 22, "", methodObject),
- new Among("\uFE98", -1, 22, "", methodObject),
- new Among("\uFE99", -1, 23, "", methodObject),
- new Among("\uFE9A", -1, 23, "", methodObject),
- new Among("\uFE9B", -1, 23, "", methodObject),
- new Among("\uFE9C", -1, 23, "", methodObject),
- new Among("\uFE9D", -1, 24, "", methodObject),
- new Among("\uFE9E", -1, 24, "", methodObject),
- new Among("\uFE9F", -1, 24, "", methodObject),
- new Among("\uFEA0", -1, 24, "", methodObject),
- new Among("\uFEA1", -1, 25, "", methodObject),
- new Among("\uFEA2", -1, 25, "", methodObject),
- new Among("\uFEA3", -1, 25, "", methodObject),
- new Among("\uFEA4", -1, 25, "", methodObject),
- new Among("\uFEA5", -1, 26, "", methodObject),
- new Among("\uFEA6", -1, 26, "", methodObject),
- new Among("\uFEA7", -1, 26, "", methodObject),
- new Among("\uFEA8", -1, 26, "", methodObject),
- new Among("\uFEA9", -1, 27, "", methodObject),
- new Among("\uFEAA", -1, 27, "", methodObject),
- new Among("\uFEAB", -1, 28, "", methodObject),
- new Among("\uFEAC", -1, 28, "", methodObject),
- new Among("\uFEAD", -1, 29, "", methodObject),
- new Among("\uFEAE", -1, 29, "", methodObject),
- new Among("\uFEAF", -1, 30, "", methodObject),
- new Among("\uFEB0", -1, 30, "", methodObject),
- new Among("\uFEB1", -1, 31, "", methodObject),
- new Among("\uFEB2", -1, 31, "", methodObject),
- new Among("\uFEB3", -1, 31, "", methodObject),
- new Among("\uFEB4", -1, 31, "", methodObject),
- new Among("\uFEB5", -1, 32, "", methodObject),
- new Among("\uFEB6", -1, 32, "", methodObject),
- new Among("\uFEB7", -1, 32, "", methodObject),
- new Among("\uFEB8", -1, 32, "", methodObject),
- new Among("\uFEB9", -1, 33, "", methodObject),
- new Among("\uFEBA", -1, 33, "", methodObject),
- new Among("\uFEBB", -1, 33, "", methodObject),
- new Among("\uFEBC", -1, 33, "", methodObject),
- new Among("\uFEBD", -1, 34, "", methodObject),
- new Among("\uFEBE", -1, 34, "", methodObject),
- new Among("\uFEBF", -1, 34, "", methodObject),
- new Among("\uFEC0", -1, 34, "", methodObject),
- new Among("\uFEC1", -1, 35, "", methodObject),
- new Among("\uFEC2", -1, 35, "", methodObject),
- new Among("\uFEC3", -1, 35, "", methodObject),
- new Among("\uFEC4", -1, 35, "", methodObject),
- new Among("\uFEC5", -1, 36, "", methodObject),
- new Among("\uFEC6", -1, 36, "", methodObject),
- new Among("\uFEC7", -1, 36, "", methodObject),
- new Among("\uFEC8", -1, 36, "", methodObject),
- new Among("\uFEC9", -1, 37, "", methodObject),
- new Among("\uFECA", -1, 37, "", methodObject),
- new Among("\uFECB", -1, 37, "", methodObject),
- new Among("\uFECC", -1, 37, "", methodObject),
- new Among("\uFECD", -1, 38, "", methodObject),
- new Among("\uFECE", -1, 38, "", methodObject),
- new Among("\uFECF", -1, 38, "", methodObject),
- new Among("\uFED0", -1, 38, "", methodObject),
- new Among("\uFED1", -1, 39, "", methodObject),
- new Among("\uFED2", -1, 39, "", methodObject),
- new Among("\uFED3", -1, 39, "", methodObject),
- new Among("\uFED4", -1, 39, "", methodObject),
- new Among("\uFED5", -1, 40, "", methodObject),
- new Among("\uFED6", -1, 40, "", methodObject),
- new Among("\uFED7", -1, 40, "", methodObject),
- new Among("\uFED8", -1, 40, "", methodObject),
- new Among("\uFED9", -1, 41, "", methodObject),
- new Among("\uFEDA", -1, 41, "", methodObject),
- new Among("\uFEDB", -1, 41, "", methodObject),
- new Among("\uFEDC", -1, 41, "", methodObject),
- new Among("\uFEDD", -1, 42, "", methodObject),
- new Among("\uFEDE", -1, 42, "", methodObject),
- new Among("\uFEDF", -1, 42, "", methodObject),
- new Among("\uFEE0", -1, 42, "", methodObject),
- new Among("\uFEE1", -1, 43, "", methodObject),
- new Among("\uFEE2", -1, 43, "", methodObject),
- new Among("\uFEE3", -1, 43, "", methodObject),
- new Among("\uFEE4", -1, 43, "", methodObject),
- new Among("\uFEE5", -1, 44, "", methodObject),
- new Among("\uFEE6", -1, 44, "", methodObject),
- new Among("\uFEE7", -1, 44, "", methodObject),
- new Among("\uFEE8", -1, 44, "", methodObject),
- new Among("\uFEE9", -1, 45, "", methodObject),
- new Among("\uFEEA", -1, 45, "", methodObject),
- new Among("\uFEEB", -1, 45, "", methodObject),
- new Among("\uFEEC", -1, 45, "", methodObject),
- new Among("\uFEED", -1, 46, "", methodObject),
- new Among("\uFEEE", -1, 46, "", methodObject),
- new Among("\uFEEF", -1, 47, "", methodObject),
- new Among("\uFEF0", -1, 47, "", methodObject),
- new Among("\uFEF1", -1, 48, "", methodObject),
- new Among("\uFEF2", -1, 48, "", methodObject),
- new Among("\uFEF3", -1, 48, "", methodObject),
- new Among("\uFEF4", -1, 48, "", methodObject),
- new Among("\uFEF5", -1, 52, "", methodObject),
- new Among("\uFEF6", -1, 52, "", methodObject),
- new Among("\uFEF7", -1, 50, "", methodObject),
- new Among("\uFEF8", -1, 50, "", methodObject),
- new Among("\uFEF9", -1, 51, "", methodObject),
- new Among("\uFEFA", -1, 51, "", methodObject),
- new Among("\uFEFB", -1, 49, "", methodObject),
- new Among("\uFEFC", -1, 49, "", methodObject)
- };
+ private final static Among a_2[] = {
+ new Among("\u0622", -1, 1),
+ new Among("\u0623", -1, 1),
+ new Among("\u0624", -1, 2),
+ new Among("\u0625", -1, 1),
+ new Among("\u0626", -1, 3)
+ };
- private final static Among a_1[] = {
- new Among("\u0622", -1, 1, "", methodObject),
- new Among("\u0623", -1, 1, "", methodObject),
- new Among("\u0624", -1, 2, "", methodObject),
- new Among("\u0625", -1, 1, "", methodObject),
- new Among("\u0626", -1, 3, "", methodObject)
- };
+ private final static Among a_3[] = {
+ new Among("\u0627\u0644", -1, 2),
+ new Among("\u0628\u0627\u0644", -1, 1),
+ new Among("\u0643\u0627\u0644", -1, 1),
+ new Among("\u0644\u0644", -1, 2)
+ };
- private final static Among a_2[] = {
- new Among("\u0622", -1, 1, "", methodObject),
- new Among("\u0623", -1, 1, "", methodObject),
- new Among("\u0624", -1, 2, "", methodObject),
- new Among("\u0625", -1, 1, "", methodObject),
- new Among("\u0626", -1, 3, "", methodObject)
- };
+ private final static Among a_4[] = {
+ new Among("\u0623\u0622", -1, 2),
+ new Among("\u0623\u0623", -1, 1),
+ new Among("\u0623\u0624", -1, 1),
+ new Among("\u0623\u0625", -1, 4),
+ new Among("\u0623\u0627", -1, 3)
+ };
- private final static Among a_3[] = {
- new Among("\u0627\u0644", -1, 2, "", methodObject),
- new Among("\u0628\u0627\u0644", -1, 1, "", methodObject),
- new Among("\u0643\u0627\u0644", -1, 1, "", methodObject),
- new Among("\u0644\u0644", -1, 2, "", methodObject)
- };
+ private final static Among a_5[] = {
+ new Among("\u0641", -1, 1),
+ new Among("\u0648", -1, 1)
+ };
- private final static Among a_4[] = {
- new Among("\u0623\u0622", -1, 2, "", methodObject),
- new Among("\u0623\u0623", -1, 1, "", methodObject),
- new Among("\u0623\u0624", -1, 3, "", methodObject),
- new Among("\u0623\u0625", -1, 5, "", methodObject),
- new Among("\u0623\u0627", -1, 4, "", methodObject)
- };
+ private final static Among a_6[] = {
+ new Among("\u0627\u0644", -1, 2),
+ new Among("\u0628\u0627\u0644", -1, 1),
+ new Among("\u0643\u0627\u0644", -1, 1),
+ new Among("\u0644\u0644", -1, 2)
+ };
- private final static Among a_5[] = {
- new Among("\u0641", -1, 1, "", methodObject),
- new Among("\u0648", -1, 2, "", methodObject)
- };
+ private final static Among a_7[] = {
+ new Among("\u0628", -1, 1),
+ new Among("\u0628\u0628", 0, 2),
+ new Among("\u0643\u0643", -1, 3)
+ };
- private final static Among a_6[] = {
- new Among("\u0627\u0644", -1, 2, "", methodObject),
- new Among("\u0628\u0627\u0644", -1, 1, "", methodObject),
- new Among("\u0643\u0627\u0644", -1, 1, "", methodObject),
- new Among("\u0644\u0644", -1, 2, "", methodObject)
- };
+ private final static Among a_8[] = {
+ new Among("\u0633\u0623", -1, 4),
+ new Among("\u0633\u062A", -1, 2),
+ new Among("\u0633\u0646", -1, 3),
+ new Among("\u0633\u064A", -1, 1)
+ };
- private final static Among a_7[] = {
- new Among("\u0628", -1, 1, "", methodObject),
- new Among("\u0628\u0628", 0, 2, "", methodObject),
- new Among("\u0643\u0643", -1, 3, "", methodObject)
- };
+ private final static Among a_9[] = {
+ new Among("\u062A\u0633\u062A", -1, 1),
+ new Among("\u0646\u0633\u062A", -1, 1),
+ new Among("\u064A\u0633\u062A", -1, 1)
+ };
- private final static Among a_8[] = {
- new Among("\u0633\u0623", -1, 4, "", methodObject),
- new Among("\u0633\u062A", -1, 2, "", methodObject),
- new Among("\u0633\u0646", -1, 3, "", methodObject),
- new Among("\u0633\u064A", -1, 1, "", methodObject)
- };
+ private final static Among a_10[] = {
+ new Among("\u0643\u0645\u0627", -1, 3),
+ new Among("\u0647\u0645\u0627", -1, 3),
+ new Among("\u0646\u0627", -1, 2),
+ new Among("\u0647\u0627", -1, 2),
+ new Among("\u0643", -1, 1),
+ new Among("\u0643\u0645", -1, 2),
+ new Among("\u0647\u0645", -1, 2),
+ new Among("\u0647\u0646", -1, 2),
+ new Among("\u0647", -1, 1),
+ new Among("\u064A", -1, 1)
+ };
- private final static Among a_9[] = {
- new Among("\u062A\u0633\u062A", -1, 1, "", methodObject),
- new Among("\u0646\u0633\u062A", -1, 1, "", methodObject),
- new Among("\u064A\u0633\u062A", -1, 1, "", methodObject)
- };
+ private final static Among a_11[] = {
+ new Among("\u0646", -1, 1)
+ };
- private final static Among a_10[] = {
- new Among("\u0643\u0645\u0627", -1, 3, "", methodObject),
- new Among("\u0647\u0645\u0627", -1, 3, "", methodObject),
- new Among("\u0646\u0627", -1, 2, "", methodObject),
- new Among("\u0647\u0627", -1, 2, "", methodObject),
- new Among("\u0643", -1, 1, "", methodObject),
- new Among("\u0643\u0645", -1, 2, "", methodObject),
- new Among("\u0647\u0645", -1, 2, "", methodObject),
- new Among("\u0647\u0646", -1, 2, "", methodObject),
- new Among("\u0647", -1, 1, "", methodObject),
- new Among("\u064A", -1, 1, "", methodObject)
- };
+ private final static Among a_12[] = {
+ new Among("\u0627", -1, 1),
+ new Among("\u0648", -1, 1),
+ new Among("\u064A", -1, 1)
+ };
- private final static Among a_11[] = {
- new Among("\u0646", -1, 1, "", methodObject)
- };
+ private final static Among a_13[] = {
+ new Among("\u0627\u062A", -1, 1)
+ };
- private final static Among a_12[] = {
- new Among("\u0627", -1, 1, "", methodObject),
- new Among("\u0648", -1, 1, "", methodObject),
- new Among("\u064A", -1, 1, "", methodObject)
- };
+ private final static Among a_14[] = {
+ new Among("\u062A", -1, 1)
+ };
- private final static Among a_13[] = {
- new Among("\u0627\u062A", -1, 1, "", methodObject)
- };
+ private final static Among a_15[] = {
+ new Among("\u0629", -1, 1)
+ };
- private final static Among a_14[] = {
- new Among("\u062A", -1, 1, "", methodObject)
- };
+ private final static Among a_16[] = {
+ new Among("\u064A", -1, 1)
+ };
- private final static Among a_15[] = {
- new Among("\u0629", -1, 1, "", methodObject)
- };
+ private final static Among a_17[] = {
+ new Among("\u0643\u0645\u0627", -1, 3),
+ new Among("\u0647\u0645\u0627", -1, 3),
+ new Among("\u0646\u0627", -1, 2),
+ new Among("\u0647\u0627", -1, 2),
+ new Among("\u0643", -1, 1),
+ new Among("\u0643\u0645", -1, 2),
+ new Among("\u0647\u0645", -1, 2),
+ new Among("\u0643\u0646", -1, 2),
+ new Among("\u0647\u0646", -1, 2),
+ new Among("\u0647", -1, 1),
+ new Among("\u0643\u0645\u0648", -1, 3),
+ new Among("\u0646\u064A", -1, 2)
+ };
- private final static Among a_16[] = {
- new Among("\u064A", -1, 1, "", methodObject)
- };
+ private final static Among a_18[] = {
+ new Among("\u0627", -1, 1),
+ new Among("\u062A\u0627", 0, 2),
+ new Among("\u062A\u0645\u0627", 0, 4),
+ new Among("\u0646\u0627", 0, 2),
+ new Among("\u062A", -1, 1),
+ new Among("\u0646", -1, 1),
+ new Among("\u0627\u0646", 5, 3),
+ new Among("\u062A\u0646", 5, 2),
+ new Among("\u0648\u0646", 5, 3),
+ new Among("\u064A\u0646", 5, 3),
+ new Among("\u064A", -1, 1)
+ };
- private final static Among a_17[] = {
- new Among("\u0643\u0645\u0627", -1, 3, "", methodObject),
- new Among("\u0647\u0645\u0627", -1, 3, "", methodObject),
- new Among("\u0646\u0627", -1, 2, "", methodObject),
- new Among("\u0647\u0627", -1, 2, "", methodObject),
- new Among("\u0643", -1, 1, "", methodObject),
- new Among("\u0643\u0645", -1, 2, "", methodObject),
- new Among("\u0647\u0645", -1, 2, "", methodObject),
- new Among("\u0643\u0646", -1, 2, "", methodObject),
- new Among("\u0647\u0646", -1, 2, "", methodObject),
- new Among("\u0647", -1, 1, "", methodObject),
- new Among("\u0643\u0645\u0648", -1, 3, "", methodObject),
- new Among("\u0646\u064A", -1, 2, "", methodObject)
- };
+ private final static Among a_19[] = {
+ new Among("\u0648\u0627", -1, 1),
+ new Among("\u062A\u0645", -1, 1)
+ };
- private final static Among a_18[] = {
- new Among("\u0627", -1, 2, "", methodObject),
- new Among("\u062A\u0627", 0, 3, "", methodObject),
- new Among("\u062A\u0645\u0627", 0, 5, "", methodObject),
- new Among("\u0646\u0627", 0, 3, "", methodObject),
- new Among("\u062A", -1, 1, "", methodObject),
- new Among("\u0646", -1, 2, "", methodObject),
- new Among("\u0627\u0646", 5, 4, "", methodObject),
- new Among("\u062A\u0646", 5, 3, "", methodObject),
- new Among("\u0648\u0646", 5, 4, "", methodObject),
- new Among("\u064A\u0646", 5, 4, "", methodObject),
- new Among("\u064A", -1, 2, "", methodObject)
- };
+ private final static Among a_20[] = {
+ new Among("\u0648", -1, 1),
+ new Among("\u062A\u0645\u0648", 0, 2)
+ };
- private final static Among a_19[] = {
- new Among("\u0648\u0627", -1, 1, "", methodObject),
- new Among("\u062A\u0645", -1, 1, "", methodObject)
- };
+ private final static Among a_21[] = {
+ new Among("\u0649", -1, 1)
+ };
- private final static Among a_20[] = {
- new Among("\u0648", -1, 1, "", methodObject),
- new Among("\u062A\u0645\u0648", 0, 2, "", methodObject)
- };
+ private boolean B_is_defined;
+ private boolean B_is_verb;
+ private boolean B_is_noun;
- private final static Among a_21[] = {
- new Among("\u0649", -1, 1, "", methodObject)
- };
- private boolean B_is_defined;
- private boolean B_is_verb;
- private boolean B_is_noun;
- private int I_word_len;
-
-
- private boolean r_Normalize_pre() {
- int among_var;
- // (, line 251
- // loop, line 252
- for (int v_1 = getCurrent().length(); v_1 > 0; v_1--)
+ private boolean r_Normalize_pre() {
+ int among_var;
+ int v_1 = cursor;
+lab0: {
+ while(true)
{
- // (, line 252
- // or, line 316
- lab0: do {
- int v_2 = cursor;
- lab1: do {
- // (, line 253
- // [, line 254
- bra = cursor;
- // substring, line 254
- among_var = find_among(a_0, a_0.length);
- if (among_var == 0)
- {
- break lab1;
- }
- // ], line 254
- ket = cursor;
- switch (among_var) {
- case 0:
- break lab1;
- case 1:
- // (, line 255
- // delete, line 255
- slice_del();
- break;
- case 2:
- // (, line 256
- // delete, line 256
- slice_del();
- break;
- case 3:
- // (, line 259
- // <-, line 259
- slice_from("0");
- break;
- case 4:
- // (, line 260
- // <-, line 260
- slice_from("1");
- break;
- case 5:
- // (, line 261
- // <-, line 261
- slice_from("2");
- break;
- case 6:
- // (, line 262
- // <-, line 262
- slice_from("3");
- break;
- case 7:
- // (, line 263
- // <-, line 263
- slice_from("4");
- break;
- case 8:
- // (, line 264
- // <-, line 264
- slice_from("5");
- break;
- case 9:
- // (, line 265
- // <-, line 265
- slice_from("6");
- break;
- case 10:
- // (, line 266
- // <-, line 266
- slice_from("7");
- break;
- case 11:
- // (, line 267
- // <-, line 267
- slice_from("8");
- break;
- case 12:
- // (, line 268
- // <-, line 268
- slice_from("9");
- break;
- case 13:
- // (, line 271
- // <-, line 271
- slice_from("\u0621");
- break;
- case 14:
- // (, line 272
- // <-, line 272
- slice_from("\u0623");
- break;
- case 15:
- // (, line 273
- // <-, line 273
- slice_from("\u0625");
- break;
- case 16:
- // (, line 274
- // <-, line 274
- slice_from("\u0626");
- break;
- case 17:
- // (, line 275
- // <-, line 275
- slice_from("\u0622");
- break;
- case 18:
- // (, line 276
- // <-, line 276
- slice_from("\u0624");
- break;
- case 19:
- // (, line 277
- // <-, line 277
- slice_from("\u0627");
- break;
- case 20:
- // (, line 278
- // <-, line 278
- slice_from("\u0628");
- break;
- case 21:
- // (, line 279
- // <-, line 279
- slice_from("\u0629");
- break;
- case 22:
- // (, line 280
- // <-, line 280
- slice_from("\u062A");
- break;
- case 23:
- // (, line 281
- // <-, line 281
- slice_from("\u062B");
- break;
- case 24:
- // (, line 282
- // <-, line 282
- slice_from("\u062C");
- break;
- case 25:
- // (, line 283
- // <-, line 283
- slice_from("\u062D");
- break;
- case 26:
- // (, line 284
- // <-, line 284
- slice_from("\u062E");
- break;
- case 27:
- // (, line 285
- // <-, line 285
- slice_from("\u062F");
- break;
- case 28:
- // (, line 286
- // <-, line 286
- slice_from("\u0630");
- break;
- case 29:
- // (, line 287
- // <-, line 287
- slice_from("\u0631");
- break;
- case 30:
- // (, line 288
- // <-, line 288
- slice_from("\u0632");
- break;
- case 31:
- // (, line 289
- // <-, line 289
- slice_from("\u0633");
- break;
- case 32:
- // (, line 290
- // <-, line 290
- slice_from("\u0634");
- break;
- case 33:
- // (, line 291
- // <-, line 291
- slice_from("\u0635");
- break;
- case 34:
- // (, line 292
- // <-, line 292
- slice_from("\u0636");
- break;
- case 35:
- // (, line 293
- // <-, line 293
- slice_from("\u0637");
- break;
- case 36:
- // (, line 294
- // <-, line 294
- slice_from("\u0638");
- break;
- case 37:
- // (, line 295
- // <-, line 295
- slice_from("\u0639");
- break;
- case 38:
- // (, line 296
- // <-, line 296
- slice_from("\u063A");
- break;
- case 39:
- // (, line 297
- // <-, line 297
- slice_from("\u0641");
- break;
- case 40:
- // (, line 298
- // <-, line 298
- slice_from("\u0642");
- break;
- case 41:
- // (, line 299
- // <-, line 299
- slice_from("\u0643");
- break;
- case 42:
- // (, line 300
- // <-, line 300
- slice_from("\u0644");
- break;
- case 43:
- // (, line 301
- // <-, line 301
- slice_from("\u0645");
- break;
- case 44:
- // (, line 302
- // <-, line 302
- slice_from("\u0646");
- break;
- case 45:
- // (, line 303
- // <-, line 303
- slice_from("\u0647");
- break;
- case 46:
- // (, line 304
- // <-, line 304
- slice_from("\u0648");
- break;
- case 47:
- // (, line 305
- // <-, line 305
- slice_from("\u0649");
- break;
- case 48:
- // (, line 306
- // <-, line 306
- slice_from("\u064A");
- break;
- case 49:
- // (, line 309
- // <-, line 309
- slice_from("\u0644\u0627");
- break;
- case 50:
- // (, line 310
- // <-, line 310
- slice_from("\u0644\u0623");
- break;
- case 51:
- // (, line 311
- // <-, line 311
- slice_from("\u0644\u0625");
- break;
- case 52:
- // (, line 312
- // <-, line 312
- slice_from("\u0644\u0622");
- break;
- }
- break lab0;
- } while (false);
- cursor = v_2;
- // next, line 317
- if (cursor >= limit)
- {
- return false;
- }
- cursor++;
- } while (false);
- }
- return true;
- }
-
- private boolean r_Normalize_post() {
- int among_var;
- // (, line 321
- // do, line 323
- int v_1 = cursor;
- lab0: do {
- // (, line 323
- // backwards, line 325
- limit_backward = cursor;
- cursor = limit;
- // (, line 325
- // [, line 326
- ket = cursor;
- // substring, line 326
- among_var = find_among_b(a_1, a_1.length);
- if (among_var == 0)
- {
- break lab0;
- }
- // ], line 326
- bra = cursor;
- switch (among_var) {
- case 0:
- break lab0;
- case 1:
- // (, line 327
- // <-, line 327
- slice_from("\u0621");
- break;
- case 2:
- // (, line 328
- // <-, line 328
- slice_from("\u0621");
- break;
- case 3:
- // (, line 329
- // <-, line 329
- slice_from("\u0621");
- break;
- }
- cursor = limit_backward;
- } while (false);
- cursor = v_1;
- // do, line 334
- int v_2 = cursor;
- lab1: do {
- // loop, line 334
- for (int v_3 = I_word_len; v_3 > 0; v_3--)
- {
- // (, line 334
- // or, line 343
- lab2: do {
- int v_4 = cursor;
- lab3: do {
- // (, line 335
- // [, line 337
- bra = cursor;
- // substring, line 337
- among_var = find_among(a_2, a_2.length);
- if (among_var == 0)
- {
- break lab3;
- }
- // ], line 337
- ket = cursor;
- switch (among_var) {
- case 0:
- break lab3;
- case 1:
- // (, line 338
- // <-, line 338
- slice_from("\u0627");
- break;
- case 2:
- // (, line 339
- // <-, line 339
- slice_from("\u0648");
- break;
- case 3:
- // (, line 340
- // <-, line 340
- slice_from("\u064A");
- break;
- }
- break lab2;
- } while (false);
- cursor = v_4;
- // next, line 344
- if (cursor >= limit)
- {
- break lab1;
- }
- cursor++;
- } while (false);
- }
- } while (false);
- cursor = v_2;
- return true;
- }
-
- private boolean r_Checks1() {
- int among_var;
- // (, line 349
- I_word_len = getCurrent().length();
- // [, line 351
+ int v_2 = cursor;
+lab1: {
+lab2: {
+ int v_3 = cursor;
+lab3: {
bra = cursor;
- // substring, line 351
- among_var = find_among(a_3, a_3.length);
+ among_var = find_among(a_0);
if (among_var == 0)
{
- return false;
+ break lab3;
}
- // ], line 351
ket = cursor;
switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 352
- if (!(I_word_len > 4))
- {
- return false;
- }
- // set is_noun, line 352
- B_is_noun = true;
- // unset is_verb, line 352
- B_is_verb = false;
- // set is_defined, line 352
- B_is_defined = true;
- break;
- case 2:
- // (, line 353
- if (!(I_word_len > 3))
- {
- return false;
- }
- // set is_noun, line 353
- B_is_noun = true;
- // unset is_verb, line 353
- B_is_verb = false;
- // set is_defined, line 353
- B_is_defined = true;
- break;
- }
- return true;
- }
-
- private boolean r_Prefix_Step1() {
- int among_var;
- // (, line 359
- I_word_len = getCurrent().length();
- // [, line 361
- bra = cursor;
- // substring, line 361
- among_var = find_among(a_4, a_4.length);
- if (among_var == 0)
- {
- return false;
+ case 1:
+ slice_del();
+ break;
+ case 2:
+ slice_from("0");
+ break;
+ case 3:
+ slice_from("1");
+ break;
+ case 4:
+ slice_from("2");
+ break;
+ case 5:
+ slice_from("3");
+ break;
+ case 6:
+ slice_from("4");
+ break;
+ case 7:
+ slice_from("5");
+ break;
+ case 8:
+ slice_from("6");
+ break;
+ case 9:
+ slice_from("7");
+ break;
+ case 10:
+ slice_from("8");
+ break;
+ case 11:
+ slice_from("9");
+ break;
+ case 12:
+ slice_from("\u0621");
+ break;
+ case 13:
+ slice_from("\u0623");
+ break;
+ case 14:
+ slice_from("\u0625");
+ break;
+ case 15:
+ slice_from("\u0626");
+ break;
+ case 16:
+ slice_from("\u0622");
+ break;
+ case 17:
+ slice_from("\u0624");
+ break;
+ case 18:
+ slice_from("\u0627");
+ break;
+ case 19:
+ slice_from("\u0628");
+ break;
+ case 20:
+ slice_from("\u0629");
+ break;
+ case 21:
+ slice_from("\u062A");
+ break;
+ case 22:
+ slice_from("\u062B");
+ break;
+ case 23:
+ slice_from("\u062C");
+ break;
+ case 24:
+ slice_from("\u062D");
+ break;
+ case 25:
+ slice_from("\u062E");
+ break;
+ case 26:
+ slice_from("\u062F");
+ break;
+ case 27:
+ slice_from("\u0630");
+ break;
+ case 28:
+ slice_from("\u0631");
+ break;
+ case 29:
+ slice_from("\u0632");
+ break;
+ case 30:
+ slice_from("\u0633");
+ break;
+ case 31:
+ slice_from("\u0634");
+ break;
+ case 32:
+ slice_from("\u0635");
+ break;
+ case 33:
+ slice_from("\u0636");
+ break;
+ case 34:
+ slice_from("\u0637");
+ break;
+ case 35:
+ slice_from("\u0638");
+ break;
+ case 36:
+ slice_from("\u0639");
+ break;
+ case 37:
+ slice_from("\u063A");
+ break;
+ case 38:
+ slice_from("\u0641");
+ break;
+ case 39:
+ slice_from("\u0642");
+ break;
+ case 40:
+ slice_from("\u0643");
+ break;
+ case 41:
+ slice_from("\u0644");
+ break;
+ case 42:
+ slice_from("\u0645");
+ break;
+ case 43:
+ slice_from("\u0646");
+ break;
+ case 44:
+ slice_from("\u0647");
+ break;
+ case 45:
+ slice_from("\u0648");
+ break;
+ case 46:
+ slice_from("\u0649");
+ break;
+ case 47:
+ slice_from("\u064A");
+ break;
+ case 48:
+ slice_from("\u0644\u0627");
+ break;
+ case 49:
+ slice_from("\u0644\u0623");
+ break;
+ case 50:
+ slice_from("\u0644\u0625");
+ break;
+ case 51:
+ slice_from("\u0644\u0622");
+ break;
}
- // ], line 361
- ket = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 362
- if (!(I_word_len > 3))
- {
- return false;
- }
- // <-, line 362
- slice_from("\u0623");
- break;
- case 2:
- // (, line 363
- if (!(I_word_len > 3))
- {
- return false;
- }
- // <-, line 363
- slice_from("\u0622");
- break;
- case 3:
- // (, line 364
- if (!(I_word_len > 3))
- {
- return false;
- }
- // <-, line 364
- slice_from("\u0623");
- break;
- case 4:
- // (, line 365
- if (!(I_word_len > 3))
- {
- return false;
- }
- // <-, line 365
- slice_from("\u0627");
- break;
- case 5:
- // (, line 366
- if (!(I_word_len > 3))
- {
- return false;
- }
- // <-, line 366
- slice_from("\u0625");
- break;
+ break lab2;
+}
+cursor = v_3;
+if (cursor >= limit)
+{
+ break lab1;
+}
+cursor++;
+}
+continue;
+}
+cursor = v_2;
+break;
}
- return true;
- }
+}
+cursor = v_1;
+return true;
+ }
- private boolean r_Prefix_Step2() {
- int among_var;
- // (, line 371
- I_word_len = getCurrent().length();
- // not, line 373
- {
- int v_1 = cursor;
- lab0: do {
- // literal, line 373
- if (!(eq_s("\u0641\u0627".length(),"\u0641\u0627")))
- {
- break lab0;
- }
- return false;
- } while (false);
- cursor = v_1;
- }
- // not, line 374
+private boolean r_Normalize_post() {
+ int among_var;
+ int v_1 = cursor;
+lab0: {
+ limit_backward = cursor;
+ cursor = limit;
+ ket = cursor;
+ if (find_among_b(a_1) == 0)
{
- int v_2 = cursor;
- lab1: do {
- // literal, line 374
- if (!(eq_s("\u0648\u0627".length(),"\u0648\u0627")))
- {
- break lab1;
- }
- return false;
- } while (false);
- cursor = v_2;
+ break lab0;
}
- // [, line 375
bra = cursor;
- // substring, line 375
- among_var = find_among(a_5, a_5.length);
- if (among_var == 0)
+ slice_from("\u0621");
+ cursor = limit_backward;
+}
+cursor = v_1;
+int v_2 = cursor;
+lab1: {
+ while(true)
{
- return false;
- }
- // ], line 375
- ket = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 376
- if (!(I_word_len > 3))
- {
- return false;
- }
- // delete, line 376
- slice_del();
- break;
- case 2:
- // (, line 377
- if (!(I_word_len > 3))
- {
- return false;
- }
- // delete, line 377
- slice_del();
- break;
- }
- return true;
- }
-
- private boolean r_Prefix_Step3a_Noun() {
- int among_var;
- // (, line 381
- I_word_len = getCurrent().length();
- // [, line 383
+ int v_3 = cursor;
+lab2: {
+lab3: {
+ int v_4 = cursor;
+lab4: {
bra = cursor;
- // substring, line 383
- among_var = find_among(a_6, a_6.length);
+ among_var = find_among(a_2);
if (among_var == 0)
{
- return false;
+ break lab4;
}
- // ], line 383
ket = cursor;
switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 384
- if (!(I_word_len > 5))
- {
- return false;
- }
- // delete, line 384
- slice_del();
- break;
- case 2:
- // (, line 385
- if (!(I_word_len > 4))
- {
- return false;
- }
- // delete, line 385
- slice_del();
- break;
+ case 1:
+ slice_from("\u0627");
+ break;
+ case 2:
+ slice_from("\u0648");
+ break;
+ case 3:
+ slice_from("\u064A");
+ break;
}
- return true;
- }
+ break lab3;
+}
+cursor = v_4;
+if (cursor >= limit)
+{
+ break lab2;
+}
+cursor++;
+}
+continue;
+}
+cursor = v_3;
+break;
+ }
+}
+cursor = v_2;
+return true;
+}
+
+private boolean r_Checks1() {
+ int among_var;
+ bra = cursor;
+ among_var = find_among(a_3);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ ket = cursor;
+ switch (among_var) {
+ case 1:
+ if (!(limit > 4))
+ {
+ return false;
+ }
+ B_is_noun = true;
+ B_is_verb = false;
+ B_is_defined = true;
+ break;
+ case 2:
+ if (!(limit > 3))
+ {
+ return false;
+ }
+ B_is_noun = true;
+ B_is_verb = false;
+ B_is_defined = true;
+ break;
+ }
+ return true;
+}
+
+private boolean r_Prefix_Step1() {
+ int among_var;
+ bra = cursor;
+ among_var = find_among(a_4);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ ket = cursor;
+ switch (among_var) {
+ case 1:
+ if (!(limit > 3))
+ {
+ return false;
+ }
+ slice_from("\u0623");
+ break;
+ case 2:
+ if (!(limit > 3))
+ {
+ return false;
+ }
+ slice_from("\u0622");
+ break;
+ case 3:
+ if (!(limit > 3))
+ {
+ return false;
+ }
+ slice_from("\u0627");
+ break;
+ case 4:
+ if (!(limit > 3))
+ {
+ return false;
+ }
+ slice_from("\u0625");
+ break;
+ }
+ return true;
+}
- private boolean r_Prefix_Step3b_Noun() {
- int among_var;
- // (, line 389
- I_word_len = getCurrent().length();
- // not, line 391
+private boolean r_Prefix_Step2() {
+ {
+ int v_1 = cursor;
+lab0: {
+ if (!(eq_s("\u0641\u0627")))
{
- int v_1 = cursor;
- lab0: do {
- // literal, line 391
- if (!(eq_s("\u0628\u0627".length(),"\u0628\u0627")))
- {
- break lab0;
- }
- return false;
- } while (false);
- cursor = v_1;
+ break lab0;
}
- // [, line 392
- bra = cursor;
- // substring, line 392
- among_var = find_among(a_7, a_7.length);
- if (among_var == 0)
+ return false;
+}
+cursor = v_1;
+ }
+{
+ int v_2 = cursor;
+lab1: {
+ if (!(eq_s("\u0648\u0627")))
{
- return false;
- }
- // ], line 392
- ket = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 393
- if (!(I_word_len > 3))
- {
- return false;
- }
- // delete, line 393
- slice_del();
- break;
- case 2:
- // (, line 395
- if (!(I_word_len > 3))
- {
- return false;
- }
- // <-, line 395
- slice_from("\u0628");
- break;
- case 3:
- // (, line 396
- if (!(I_word_len > 3))
- {
- return false;
- }
- // <-, line 396
- slice_from("\u0643");
- break;
+ break lab1;
}
- return true;
- }
+ return false;
+}
+cursor = v_2;
+}
+bra = cursor;
+if (find_among(a_5) == 0)
+{
+ return false;
+}
+ket = cursor;
+if (!(limit > 3))
+{
+ return false;
+}
+slice_del();
+return true;
+}
- private boolean r_Prefix_Step3_Verb() {
- int among_var;
- // (, line 401
- I_word_len = getCurrent().length();
- // [, line 403
- bra = cursor;
- // substring, line 403
- among_var = find_among(a_8, a_8.length);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 403
- ket = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 405
- if (!(I_word_len > 4))
- {
- return false;
- }
- // <-, line 405
- slice_from("\u064A");
- break;
- case 2:
- // (, line 406
- if (!(I_word_len > 4))
- {
- return false;
- }
- // <-, line 406
- slice_from("\u062A");
- break;
- case 3:
- // (, line 407
- if (!(I_word_len > 4))
- {
- return false;
- }
- // <-, line 407
- slice_from("\u0646");
- break;
- case 4:
- // (, line 408
- if (!(I_word_len > 4))
- {
- return false;
- }
- // <-, line 408
- slice_from("\u0623");
- break;
- }
- return true;
- }
+private boolean r_Prefix_Step3a_Noun() {
+ int among_var;
+ bra = cursor;
+ among_var = find_among(a_6);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ ket = cursor;
+ switch (among_var) {
+ case 1:
+ if (!(limit > 5))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!(limit > 4))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ }
+ return true;
+}
- private boolean r_Prefix_Step4_Verb() {
- int among_var;
- // (, line 412
- I_word_len = getCurrent().length();
- // [, line 414
- bra = cursor;
- // substring, line 414
- among_var = find_among(a_9, a_9.length);
- if (among_var == 0)
+private boolean r_Prefix_Step3b_Noun() {
+ int among_var;
+ {
+ int v_1 = cursor;
+lab0: {
+ if (!(eq_s("\u0628\u0627")))
{
- return false;
+ break lab0;
}
- // ], line 414
- ket = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 415
- if (!(I_word_len > 4))
- {
- return false;
- }
- // set is_verb, line 415
- B_is_verb = true;
- // unset is_noun, line 415
- B_is_noun = false;
- // <-, line 415
- slice_from("\u0627\u0633\u062A");
- break;
- }
- return true;
+ return false;
+}
+cursor = v_1;
+ }
+bra = cursor;
+among_var = find_among(a_7);
+if (among_var == 0)
+{
+ return false;
+}
+ket = cursor;
+switch (among_var) {
+ case 1:
+ if (!(limit > 3))
+ {
+ return false;
}
-
- private boolean r_Suffix_Noun_Step1a() {
- int among_var;
- // (, line 422
- I_word_len = getCurrent().length();
- // [, line 424
- ket = cursor;
- // substring, line 424
- among_var = find_among_b(a_10, a_10.length);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 424
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 425
- if (!(I_word_len >= 4))
- {
- return false;
- }
- // delete, line 425
- slice_del();
- break;
- case 2:
- // (, line 426
- if (!(I_word_len >= 5))
- {
- return false;
- }
- // delete, line 426
- slice_del();
- break;
- case 3:
- // (, line 427
- if (!(I_word_len >= 6))
- {
- return false;
- }
- // delete, line 427
- slice_del();
- break;
- }
- return true;
+ slice_del();
+ break;
+ case 2:
+ if (!(limit > 3))
+ {
+ return false;
}
-
- private boolean r_Suffix_Noun_Step1b() {
- int among_var;
- // (, line 430
- I_word_len = getCurrent().length();
- // [, line 432
- ket = cursor;
- // substring, line 432
- among_var = find_among_b(a_11, a_11.length);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 432
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 433
- if (!(I_word_len > 5))
- {
- return false;
- }
- // delete, line 433
- slice_del();
- break;
- }
- return true;
+ slice_from("\u0628");
+ break;
+ case 3:
+ if (!(limit > 3))
+ {
+ return false;
}
+ slice_from("\u0643");
+ break;
+}
+return true;
+}
- private boolean r_Suffix_Noun_Step2a() {
- int among_var;
- // (, line 437
- I_word_len = getCurrent().length();
- // [, line 439
- ket = cursor;
- // substring, line 439
- among_var = find_among_b(a_12, a_12.length);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 439
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 440
- if (!(I_word_len > 4))
- {
- return false;
- }
- // delete, line 440
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_Prefix_Step3_Verb() {
+ int among_var;
+ bra = cursor;
+ among_var = find_among(a_8);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ ket = cursor;
+ switch (among_var) {
+ case 1:
+ if (!(limit > 4))
+ {
+ return false;
+ }
+ slice_from("\u064A");
+ break;
+ case 2:
+ if (!(limit > 4))
+ {
+ return false;
+ }
+ slice_from("\u062A");
+ break;
+ case 3:
+ if (!(limit > 4))
+ {
+ return false;
+ }
+ slice_from("\u0646");
+ break;
+ case 4:
+ if (!(limit > 4))
+ {
+ return false;
+ }
+ slice_from("\u0623");
+ break;
+ }
+ return true;
+}
- private boolean r_Suffix_Noun_Step2b() {
- int among_var;
- // (, line 444
- I_word_len = getCurrent().length();
- // [, line 446
- ket = cursor;
- // substring, line 446
- among_var = find_among_b(a_13, a_13.length);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 446
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 447
- if (!(I_word_len >= 5))
- {
- return false;
- }
- // delete, line 447
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_Prefix_Step4_Verb() {
+ bra = cursor;
+ if (find_among(a_9) == 0)
+ {
+ return false;
+ }
+ ket = cursor;
+ if (!(limit > 4))
+ {
+ return false;
+ }
+ B_is_verb = true;
+ B_is_noun = false;
+ slice_from("\u0627\u0633\u062A");
+ return true;
+}
- private boolean r_Suffix_Noun_Step2c1() {
- int among_var;
- // (, line 451
- I_word_len = getCurrent().length();
- // [, line 453
- ket = cursor;
- // substring, line 453
- among_var = find_among_b(a_14, a_14.length);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 453
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 454
- if (!(I_word_len >= 4))
- {
- return false;
- }
- // delete, line 454
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_Suffix_Noun_Step1a() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_10);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!(limit >= 4))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!(limit >= 5))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 3:
+ if (!(limit >= 6))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ }
+ return true;
+}
- private boolean r_Suffix_Noun_Step2c2() {
- int among_var;
- // (, line 457
- I_word_len = getCurrent().length();
- // [, line 459
- ket = cursor;
- // substring, line 459
- among_var = find_among_b(a_15, a_15.length);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 459
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 460
- if (!(I_word_len >= 4))
- {
- return false;
- }
- // delete, line 460
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_Suffix_Noun_Step1b() {
+ ket = cursor;
+ if (find_among_b(a_11) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ if (!(limit > 5))
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
- private boolean r_Suffix_Noun_Step3() {
- int among_var;
- // (, line 463
- I_word_len = getCurrent().length();
- // [, line 465
- ket = cursor;
- // substring, line 465
- among_var = find_among_b(a_16, a_16.length);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 465
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 466
- if (!(I_word_len >= 3))
- {
- return false;
- }
- // delete, line 466
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_Suffix_Noun_Step2a() {
+ ket = cursor;
+ if (find_among_b(a_12) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ if (!(limit > 4))
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
- private boolean r_Suffix_Verb_Step1() {
- int among_var;
- // (, line 470
- I_word_len = getCurrent().length();
- // [, line 472
- ket = cursor;
- // substring, line 472
- among_var = find_among_b(a_17, a_17.length);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 472
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 473
- if (!(I_word_len >= 4))
- {
- return false;
- }
- // delete, line 473
- slice_del();
- break;
- case 2:
- // (, line 474
- if (!(I_word_len >= 5))
- {
- return false;
- }
- // delete, line 474
- slice_del();
- break;
- case 3:
- // (, line 475
- if (!(I_word_len >= 6))
- {
- return false;
- }
- // delete, line 475
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_Suffix_Noun_Step2b() {
+ ket = cursor;
+ if (find_among_b(a_13) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ if (!(limit >= 5))
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
- private boolean r_Suffix_Verb_Step2a() {
- int among_var;
- // (, line 478
- I_word_len = getCurrent().length();
- // [, line 480
- ket = cursor;
- // substring, line 480
- among_var = find_among_b(a_18, a_18.length);
- if (among_var == 0)
+private boolean r_Suffix_Noun_Step2c1() {
+ ket = cursor;
+ if (find_among_b(a_14) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ if (!(limit >= 4))
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
+
+private boolean r_Suffix_Noun_Step2c2() {
+ ket = cursor;
+ if (find_among_b(a_15) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ if (!(limit >= 4))
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
+
+private boolean r_Suffix_Noun_Step3() {
+ ket = cursor;
+ if (find_among_b(a_16) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ if (!(limit >= 3))
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
+
+private boolean r_Suffix_Verb_Step1() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_17);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!(limit >= 4))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!(limit >= 5))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 3:
+ if (!(limit >= 6))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ }
+ return true;
+}
+
+private boolean r_Suffix_Verb_Step2a() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_18);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!(limit >= 4))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!(limit >= 5))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 3:
+ if (!(limit > 5))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 4:
+ if (!(limit >= 6))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ }
+ return true;
+}
+
+private boolean r_Suffix_Verb_Step2b() {
+ ket = cursor;
+ if (find_among_b(a_19) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ if (!(limit >= 5))
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
+
+private boolean r_Suffix_Verb_Step2c() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_20);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!(limit >= 4))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!(limit >= 6))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ }
+ return true;
+}
+
+private boolean r_Suffix_All_alef_maqsura() {
+ ket = cursor;
+ if (find_among_b(a_21) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ slice_from("\u064A");
+ return true;
+}
+
+public boolean stem() {
+ B_is_noun = true;
+ B_is_verb = true;
+ B_is_defined = false;
+ int v_1 = cursor;
+ r_Checks1();
+ cursor = v_1;
+ r_Normalize_pre();
+ limit_backward = cursor;
+ cursor = limit;
+ int v_3 = limit - cursor;
+lab0: {
+lab1: {
+ int v_4 = limit - cursor;
+lab2: {
+ if (!(B_is_verb))
{
- return false;
- }
- // ], line 480
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 481
- if (!(I_word_len >= 4))
- {
- return false;
- }
- // delete, line 481
- slice_del();
- break;
- case 2:
- // (, line 482
- if (!(I_word_len >= 4))
- {
- return false;
- }
- // delete, line 482
- slice_del();
- break;
- case 3:
- // (, line 483
- if (!(I_word_len >= 5))
- {
- return false;
- }
- // delete, line 483
- slice_del();
- break;
- case 4:
- // (, line 484
- if (!(I_word_len > 5))
- {
- return false;
- }
- // delete, line 484
- slice_del();
- break;
- case 5:
- // (, line 485
- if (!(I_word_len >= 6))
- {
- return false;
- }
- // delete, line 485
- slice_del();
- break;
+ break lab2;
}
- return true;
- }
-
- private boolean r_Suffix_Verb_Step2b() {
- int among_var;
- // (, line 489
- I_word_len = getCurrent().length();
- // [, line 491
- ket = cursor;
- // substring, line 491
- among_var = find_among_b(a_19, a_19.length);
- if (among_var == 0)
+lab3: {
+ int v_5 = limit - cursor;
+lab4: {
{
- return false;
+ int v_6 = 1;
+ while(true)
+ {
+ int v_7 = limit - cursor;
+lab5: {
+ if (!r_Suffix_Verb_Step1())
+ {
+ break lab5;
}
- // ], line 491
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 492
- if (!(I_word_len >= 5))
- {
- return false;
- }
- // delete, line 492
- slice_del();
- break;
+ v_6--;
+ continue;
+}
+cursor = limit - v_7;
+break;
+ }
+if (v_6 > 0)
+{
+ break lab4;
+}
}
- return true;
- }
-
- private boolean r_Suffix_Verb_Step2c() {
- int among_var;
- // (, line 497
- I_word_len = getCurrent().length();
- // [, line 499
- ket = cursor;
- // substring, line 499
- among_var = find_among_b(a_20, a_20.length);
- if (among_var == 0)
+lab6: {
+ int v_8 = limit - cursor;
+lab7: {
+ if (!r_Suffix_Verb_Step2a())
{
- return false;
+ break lab7;
}
- // ], line 499
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 500
- if (!(I_word_len >= 4))
- {
- return false;
- }
- // delete, line 500
- slice_del();
- break;
- case 2:
- // (, line 501
- if (!(I_word_len >= 6))
- {
- return false;
- }
- // delete, line 501
- slice_del();
- break;
- }
- return true;
- }
-
- private boolean r_Suffix_All_alef_maqsura() {
- int among_var;
- // (, line 505
- I_word_len = getCurrent().length();
- // [, line 507
- ket = cursor;
- // substring, line 507
- among_var = find_among_b(a_21, a_21.length);
- if (among_var == 0)
+ break lab6;
+}
+cursor = limit - v_8;
+lab8: {
+ if (!r_Suffix_Verb_Step2c())
{
- return false;
+ break lab8;
}
- // ], line 507
- bra = cursor;
- switch (among_var) {
- case 0:
- return false;
- case 1:
- // (, line 508
- // <-, line 508
- slice_from("\u064A");
- break;
+ break lab6;
+}
+cursor = limit - v_8;
+if (cursor <= limit_backward)
+{
+ break lab4;
+}
+cursor--;
+}
+break lab3;
+}
+cursor = limit - v_5;
+lab9: {
+ if (!r_Suffix_Verb_Step2b())
+ {
+ break lab9;
}
- return true;
- }
-
- public boolean stem() {
- // (, line 515
- // set is_noun, line 517
- B_is_noun = true;
- // set is_verb, line 518
- B_is_verb = true;
- // unset is_defined, line 519
- B_is_defined = false;
- // do, line 522
- int v_1 = cursor;
- lab0: do {
- // call Checks1, line 522
- if (!r_Checks1())
- {
- break lab0;
- }
- } while (false);
- cursor = v_1;
- // do, line 525
- int v_2 = cursor;
- lab1: do {
- // call Normalize_pre, line 525
- if (!r_Normalize_pre())
- {
- break lab1;
- }
- } while (false);
- cursor = v_2;
- // backwards, line 528
- limit_backward = cursor;
- cursor = limit;
- // (, line 528
- // do, line 530
- int v_3 = limit - cursor;
- lab2: do {
- // (, line 530
- // or, line 544
- lab3: do {
- int v_4 = limit - cursor;
- lab4: do {
- // (, line 532
- // Boolean test is_verb, line 533
- if (!(B_is_verb))
- {
- break lab4;
- }
- // (, line 534
- // or, line 539
- lab5: do {
- int v_5 = limit - cursor;
- lab6: do {
- // (, line 535
- // (, line 536
- // atleast, line 536
- {
- int v_6 = 1;
- // atleast, line 536
- replab7: while(true)
- {
- int v_7 = limit - cursor;
- lab8: do {
- // call Suffix_Verb_Step1, line 536
- if (!r_Suffix_Verb_Step1())
- {
- break lab8;
- }
- v_6--;
- continue replab7;
- } while (false);
- cursor = limit - v_7;
- break replab7;
- }
- if (v_6 > 0)
- {
- break lab6;
- }
- }
- // (, line 537
- // or, line 537
- lab9: do {
- int v_8 = limit - cursor;
- lab10: do {
- // call Suffix_Verb_Step2a, line 537
- if (!r_Suffix_Verb_Step2a())
- {
- break lab10;
- }
- break lab9;
- } while (false);
- cursor = limit - v_8;
- lab11: do {
- // call Suffix_Verb_Step2c, line 537
- if (!r_Suffix_Verb_Step2c())
- {
- break lab11;
- }
- break lab9;
- } while (false);
- cursor = limit - v_8;
- // next, line 537
- if (cursor <= limit_backward)
- {
- break lab6;
- }
- cursor--;
- } while (false);
- break lab5;
- } while (false);
- cursor = limit - v_5;
- lab12: do {
- // call Suffix_Verb_Step2b, line 539
- if (!r_Suffix_Verb_Step2b())
- {
- break lab12;
- }
- break lab5;
- } while (false);
- cursor = limit - v_5;
- // call Suffix_Verb_Step2a, line 540
- if (!r_Suffix_Verb_Step2a())
- {
- break lab4;
- }
- } while (false);
- break lab3;
- } while (false);
- cursor = limit - v_4;
- lab13: do {
- // (, line 544
- // Boolean test is_noun, line 545
- if (!(B_is_noun))
- {
- break lab13;
- }
- // (, line 546
- // try, line 548
- int v_9 = limit - cursor;
- lab14: do {
- // (, line 548
- // or, line 550
- lab15: do {
- int v_10 = limit - cursor;
- lab16: do {
- // call Suffix_Noun_Step2c2, line 549
- if (!r_Suffix_Noun_Step2c2())
- {
- break lab16;
- }
- break lab15;
- } while (false);
- cursor = limit - v_10;
- lab17: do {
- // (, line 550
- // not, line 550
- lab18: do {
- // Boolean test is_defined, line 550
- if (!(B_is_defined))
- {
- break lab18;
- }
- break lab17;
- } while (false);
- // call Suffix_Noun_Step1a, line 550
- if (!r_Suffix_Noun_Step1a())
- {
- break lab17;
- }
- // (, line 550
- // or, line 552
- lab19: do {
- int v_12 = limit - cursor;
- lab20: do {
- // call Suffix_Noun_Step2a, line 551
- if (!r_Suffix_Noun_Step2a())
- {
- break lab20;
- }
- break lab19;
- } while (false);
- cursor = limit - v_12;
- lab21: do {
- // call Suffix_Noun_Step2b, line 552
- if (!r_Suffix_Noun_Step2b())
- {
- break lab21;
- }
- break lab19;
- } while (false);
- cursor = limit - v_12;
- lab22: do {
- // call Suffix_Noun_Step2c1, line 553
- if (!r_Suffix_Noun_Step2c1())
- {
- break lab22;
- }
- break lab19;
- } while (false);
- cursor = limit - v_12;
- // next, line 554
- if (cursor <= limit_backward)
- {
- break lab17;
- }
- cursor--;
- } while (false);
- break lab15;
- } while (false);
- cursor = limit - v_10;
- lab23: do {
- // (, line 555
- // call Suffix_Noun_Step1b, line 555
- if (!r_Suffix_Noun_Step1b())
- {
- break lab23;
- }
- // (, line 555
- // or, line 557
- lab24: do {
- int v_13 = limit - cursor;
- lab25: do {
- // call Suffix_Noun_Step2a, line 556
- if (!r_Suffix_Noun_Step2a())
- {
- break lab25;
- }
- break lab24;
- } while (false);
- cursor = limit - v_13;
- lab26: do {
- // call Suffix_Noun_Step2b, line 557
- if (!r_Suffix_Noun_Step2b())
- {
- break lab26;
- }
- break lab24;
- } while (false);
- cursor = limit - v_13;
- // call Suffix_Noun_Step2c1, line 558
- if (!r_Suffix_Noun_Step2c1())
- {
- break lab23;
- }
- } while (false);
- break lab15;
- } while (false);
- cursor = limit - v_10;
- lab27: do {
- // (, line 559
- // not, line 559
- lab28: do {
- // Boolean test is_defined, line 559
- if (!(B_is_defined))
- {
- break lab28;
- }
- break lab27;
- } while (false);
- // call Suffix_Noun_Step2a, line 559
- if (!r_Suffix_Noun_Step2a())
- {
- break lab27;
- }
- break lab15;
- } while (false);
- cursor = limit - v_10;
- // (, line 560
- // call Suffix_Noun_Step2b, line 560
- if (!r_Suffix_Noun_Step2b())
- {
- cursor = limit - v_9;
- break lab14;
- }
- } while (false);
- } while (false);
- // call Suffix_Noun_Step3, line 562
- if (!r_Suffix_Noun_Step3())
- {
- break lab13;
- }
- break lab3;
- } while (false);
- cursor = limit - v_4;
- // call Suffix_All_alef_maqsura, line 568
- if (!r_Suffix_All_alef_maqsura())
- {
- break lab2;
- }
- } while (false);
- } while (false);
- cursor = limit - v_3;
- cursor = limit_backward;
- // do, line 573
- int v_15 = cursor;
- lab29: do {
- // (, line 573
- // try, line 574
- int v_16 = cursor;
- lab30: do {
- // call Prefix_Step1, line 574
- if (!r_Prefix_Step1())
- {
- cursor = v_16;
- break lab30;
- }
- } while (false);
- // try, line 575
- int v_17 = cursor;
- lab31: do {
- // call Prefix_Step2, line 575
- if (!r_Prefix_Step2())
- {
- cursor = v_17;
- break lab31;
- }
- } while (false);
- // (, line 576
- // or, line 577
- lab32: do {
- int v_18 = cursor;
- lab33: do {
- // call Prefix_Step3a_Noun, line 576
- if (!r_Prefix_Step3a_Noun())
- {
- break lab33;
- }
- break lab32;
- } while (false);
- cursor = v_18;
- lab34: do {
- // (, line 577
- // Boolean test is_noun, line 577
- if (!(B_is_noun))
- {
- break lab34;
- }
- // call Prefix_Step3b_Noun, line 577
- if (!r_Prefix_Step3b_Noun())
- {
- break lab34;
- }
- break lab32;
- } while (false);
- cursor = v_18;
- // (, line 578
- // Boolean test is_verb, line 578
- if (!(B_is_verb))
- {
- break lab29;
- }
- // try, line 578
- int v_19 = cursor;
- lab35: do {
- // call Prefix_Step3_Verb, line 578
- if (!r_Prefix_Step3_Verb())
- {
- cursor = v_19;
- break lab35;
- }
- } while (false);
- // call Prefix_Step4_Verb, line 578
- if (!r_Prefix_Step4_Verb())
- {
- break lab29;
- }
- } while (false);
- } while (false);
- cursor = v_15;
- // do, line 583
- int v_20 = cursor;
- lab36: do {
- // call Normalize_post, line 583
- if (!r_Normalize_post())
- {
- break lab36;
- }
- } while (false);
- cursor = v_20;
- return true;
- }
+ break lab3;
+}
+cursor = limit - v_5;
+if (!r_Suffix_Verb_Step2a())
+{
+ break lab2;
+}
+}
+break lab1;
+}
+cursor = limit - v_4;
+lab10: {
+ if (!(B_is_noun))
+ {
+ break lab10;
+ }
+ int v_9 = limit - cursor;
+lab11: {
+lab12: {
+ int v_10 = limit - cursor;
+lab13: {
+ if (!r_Suffix_Noun_Step2c2())
+ {
+ break lab13;
+ }
+ break lab12;
+}
+cursor = limit - v_10;
+lab14: {
+lab15: {
+ if (!(B_is_defined))
+ {
+ break lab15;
+ }
+ break lab14;
+}
+if (!r_Suffix_Noun_Step1a())
+{
+ break lab14;
+}
+lab16: {
+ int v_12 = limit - cursor;
+lab17: {
+ if (!r_Suffix_Noun_Step2a())
+ {
+ break lab17;
+ }
+ break lab16;
+}
+cursor = limit - v_12;
+lab18: {
+ if (!r_Suffix_Noun_Step2b())
+ {
+ break lab18;
+ }
+ break lab16;
+}
+cursor = limit - v_12;
+lab19: {
+ if (!r_Suffix_Noun_Step2c1())
+ {
+ break lab19;
+ }
+ break lab16;
+}
+cursor = limit - v_12;
+if (cursor <= limit_backward)
+{
+ break lab14;
+}
+cursor--;
+}
+break lab12;
+}
+cursor = limit - v_10;
+lab20: {
+ if (!r_Suffix_Noun_Step1b())
+ {
+ break lab20;
+ }
+lab21: {
+ int v_13 = limit - cursor;
+lab22: {
+ if (!r_Suffix_Noun_Step2a())
+ {
+ break lab22;
+ }
+ break lab21;
+}
+cursor = limit - v_13;
+lab23: {
+ if (!r_Suffix_Noun_Step2b())
+ {
+ break lab23;
+ }
+ break lab21;
+}
+cursor = limit - v_13;
+if (!r_Suffix_Noun_Step2c1())
+{
+ break lab20;
+}
+}
+break lab12;
+}
+cursor = limit - v_10;
+lab24: {
+lab25: {
+ if (!(B_is_defined))
+ {
+ break lab25;
+ }
+ break lab24;
+}
+if (!r_Suffix_Noun_Step2a())
+{
+ break lab24;
+}
+break lab12;
+}
+cursor = limit - v_10;
+if (!r_Suffix_Noun_Step2b())
+{
+ cursor = limit - v_9;
+ break lab11;
+}
+}
+}
+if (!r_Suffix_Noun_Step3())
+{
+ break lab10;
+}
+break lab1;
+}
+cursor = limit - v_4;
+if (!r_Suffix_All_alef_maqsura())
+{
+ break lab0;
+}
+}
+}
+cursor = limit - v_3;
+cursor = limit_backward;
+int v_15 = cursor;
+lab26: {
+ int v_16 = cursor;
+lab27: {
+ if (!r_Prefix_Step1())
+ {
+ cursor = v_16;
+ break lab27;
+ }
+}
+int v_17 = cursor;
+lab28: {
+ if (!r_Prefix_Step2())
+ {
+ cursor = v_17;
+ break lab28;
+ }
+}
+lab29: {
+ int v_18 = cursor;
+lab30: {
+ if (!r_Prefix_Step3a_Noun())
+ {
+ break lab30;
+ }
+ break lab29;
+}
+cursor = v_18;
+lab31: {
+ if (!(B_is_noun))
+ {
+ break lab31;
+ }
+ if (!r_Prefix_Step3b_Noun())
+ {
+ break lab31;
+ }
+ break lab29;
+}
+cursor = v_18;
+if (!(B_is_verb))
+{
+ break lab26;
+}
+int v_19 = cursor;
+lab32: {
+ if (!r_Prefix_Step3_Verb())
+ {
+ cursor = v_19;
+ break lab32;
+ }
+}
+if (!r_Prefix_Step4_Verb())
+{
+ break lab26;
+}
+}
+}
+cursor = v_15;
+r_Normalize_post();
+return true;
+}
- public boolean equals( Object o ) {
- return o instanceof ArabicStemmer;
- }
+@Override
+public boolean equals( Object o ) {
+ return o instanceof ArabicStemmer;
+}
- public int hashCode() {
- return ArabicStemmer.class.getName().hashCode();
- }
+@Override
+public int hashCode() {
+ return ArabicStemmer.class.getName().hashCode();
+}
}
+
diff --git a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/ArmenianStemmer.java b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/ArmenianStemmer.java
index d11d859..552a980 100644
--- a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/ArmenianStemmer.java
+++ b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/ArmenianStemmer.java
@@ -1,517 +1,394 @@
-// This file was generated automatically by the Snowball to Java compiler
+// Generated by Snowball 2.0.0 - https://snowballstem.org/
package org.tartarus.snowball.ext;
import org.tartarus.snowball.Among;
-import org.tartarus.snowball.SnowballProgram;
- /**
- * This class was automatically generated by a Snowball to Java compiler
- * It implements the stemming algorithm defined by a snowball script.
- */
+/**
+ * This class implements the stemming algorithm defined by a snowball script.
+ * <p>
+ * Generated by Snowball 2.0.0 - https://snowballstem.org/
+ * </p>
+ */
+@SuppressWarnings("unused")
+public class ArmenianStemmer extends org.tartarus.snowball.SnowballStemmer {
-@SuppressWarnings("unused") public class ArmenianStemmer extends SnowballProgram {
+ private static final long serialVersionUID = 1L;
+ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
-private static final long serialVersionUID = 1L;
+ private final static Among a_0[] = {
+ new Among("\u0580\u0578\u0580\u0564", -1, 1),
+ new Among("\u0565\u0580\u0578\u0580\u0564", 0, 1),
+ new Among("\u0561\u056C\u056B", -1, 1),
+ new Among("\u0561\u056F\u056B", -1, 1),
+ new Among("\u0578\u0580\u0561\u056F", -1, 1),
+ new Among("\u0565\u0572", -1, 1),
+ new Among("\u0561\u056F\u0561\u0576", -1, 1),
+ new Among("\u0561\u0580\u0561\u0576", -1, 1),
+ new Among("\u0565\u0576", -1, 1),
+ new Among("\u0565\u056F\u0565\u0576", 8, 1),
+ new Among("\u0565\u0580\u0565\u0576", 8, 1),
+ new Among("\u0578\u0580\u0567\u0576", -1, 1),
+ new Among("\u056B\u0576", -1, 1),
+ new Among("\u0563\u056B\u0576", 12, 1),
+ new Among("\u0578\u057E\u056B\u0576", 12, 1),
+ new Among("\u056C\u0561\u0575\u0576", -1, 1),
+ new Among("\u057E\u0578\u0582\u0576", -1, 1),
+ new Among("\u057A\u0565\u057D", -1, 1),
+ new Among("\u056B\u057E", -1, 1),
+ new Among("\u0561\u057F", -1, 1),
+ new Among("\u0561\u057E\u0565\u057F", -1, 1),
+ new Among("\u056F\u0578\u057F", -1, 1),
+ new Among("\u0562\u0561\u0580", -1, 1)
+ };
- /* patched */ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
+ private final static Among a_1[] = {
+ new Among("\u0561", -1, 1),
+ new Among("\u0561\u0581\u0561", 0, 1),
+ new Among("\u0565\u0581\u0561", 0, 1),
+ new Among("\u057E\u0565", -1, 1),
+ new Among("\u0561\u0581\u0580\u056B", -1, 1),
+ new Among("\u0561\u0581\u056B", -1, 1),
+ new Among("\u0565\u0581\u056B", -1, 1),
+ new Among("\u057E\u0565\u0581\u056B", 6, 1),
+ new Among("\u0561\u056C", -1, 1),
+ new Among("\u0568\u0561\u056C", 8, 1),
+ new Among("\u0561\u0576\u0561\u056C", 8, 1),
+ new Among("\u0565\u0576\u0561\u056C", 8, 1),
+ new Among("\u0561\u0581\u0576\u0561\u056C", 8, 1),
+ new Among("\u0565\u056C", -1, 1),
+ new Among("\u0568\u0565\u056C", 13, 1),
+ new Among("\u0576\u0565\u056C", 13, 1),
+ new Among("\u0581\u0576\u0565\u056C", 15, 1),
+ new Among("\u0565\u0581\u0576\u0565\u056C", 16, 1),
+ new Among("\u0579\u0565\u056C", 13, 1),
+ new Among("\u057E\u0565\u056C", 13, 1),
+ new Among("\u0561\u0581\u057E\u0565\u056C", 19, 1),
+ new Among("\u0565\u0581\u057E\u0565\u056C", 19, 1),
+ new Among("\u057F\u0565\u056C", 13, 1),
+ new Among("\u0561\u057F\u0565\u056C", 22, 1),
+ new Among("\u0578\u057F\u0565\u056C", 22, 1),
+ new Among("\u056F\u0578\u057F\u0565\u056C", 24, 1),
+ new Among("\u057E\u0561\u056E", -1, 1),
+ new Among("\u0578\u0582\u0574", -1, 1),
+ new Among("\u057E\u0578\u0582\u0574", 27, 1),
+ new Among("\u0561\u0576", -1, 1),
+ new Among("\u0581\u0561\u0576", 29, 1),
+ new Among("\u0561\u0581\u0561\u0576", 30, 1),
+ new Among("\u0561\u0581\u0580\u056B\u0576", -1, 1),
+ new Among("\u0561\u0581\u056B\u0576", -1, 1),
+ new Among("\u0565\u0581\u056B\u0576", -1, 1),
+ new Among("\u057E\u0565\u0581\u056B\u0576", 34, 1),
+ new Among("\u0561\u056C\u056B\u057D", -1, 1),
+ new Among("\u0565\u056C\u056B\u057D", -1, 1),
+ new Among("\u0561\u057E", -1, 1),
+ new Among("\u0561\u0581\u0561\u057E", 38, 1),
+ new Among("\u0565\u0581\u0561\u057E", 38, 1),
+ new Among("\u0561\u056C\u0578\u057E", -1, 1),
+ new Among("\u0565\u056C\u0578\u057E", -1, 1),
+ new Among("\u0561\u0580", -1, 1),
+ new Among("\u0561\u0581\u0561\u0580", 43, 1),
+ new Among("\u0565\u0581\u0561\u0580", 43, 1),
+ new Among("\u0561\u0581\u0580\u056B\u0580", -1, 1),
+ new Among("\u0561\u0581\u056B\u0580", -1, 1),
+ new Among("\u0565\u0581\u056B\u0580", -1, 1),
+ new Among("\u057E\u0565\u0581\u056B\u0580", 48, 1),
+ new Among("\u0561\u0581", -1, 1),
+ new Among("\u0565\u0581", -1, 1),
+ new Among("\u0561\u0581\u0580\u0565\u0581", 51, 1),
+ new Among("\u0561\u056C\u0578\u0582\u0581", -1, 1),
+ new Among("\u0565\u056C\u0578\u0582\u0581", -1, 1),
+ new Among("\u0561\u056C\u0578\u0582", -1, 1),
+ new Among("\u0565\u056C\u0578\u0582", -1, 1),
+ new Among("\u0561\u0584", -1, 1),
+ new Among("\u0581\u0561\u0584", 57, 1),
+ new Among("\u0561\u0581\u0561\u0584", 58, 1),
+ new Among("\u0561\u0581\u0580\u056B\u0584", -1, 1),
+ new Among("\u0561\u0581\u056B\u0584", -1, 1),
+ new Among("\u0565\u0581\u056B\u0584", -1, 1),
+ new Among("\u057E\u0565\u0581\u056B\u0584", 62, 1),
+ new Among("\u0561\u0576\u0584", -1, 1),
+ new Among("\u0581\u0561\u0576\u0584", 64, 1),
+ new Among("\u0561\u0581\u0561\u0576\u0584", 65, 1),
+ new Among("\u0561\u0581\u0580\u056B\u0576\u0584", -1, 1),
+ new Among("\u0561\u0581\u056B\u0576\u0584", -1, 1),
+ new Among("\u0565\u0581\u056B\u0576\u0584", -1, 1),
+ new Among("\u057E\u0565\u0581\u056B\u0576\u0584", 69, 1)
+ };
- private final static Among a_0[] = {
- new Among ( "\u0580\u0578\u0580\u0564", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u0578\u0580\u0564", 0, 1, "", methodObject ),
- new Among ( "\u0561\u056C\u056B", -1, 1, "", methodObject ),
- new Among ( "\u0561\u056F\u056B", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0580\u0561\u056F", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0572", -1, 1, "", methodObject ),
- new Among ( "\u0561\u056F\u0561\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0580\u0561\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0565\u056F\u0565\u0576", 8, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u0565\u0576", 8, 1, "", methodObject ),
- new Among ( "\u0578\u0580\u0567\u0576", -1, 1, "", methodObject ),
- new Among ( "\u056B\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0563\u056B\u0576", 12, 1, "", methodObject ),
- new Among ( "\u0578\u057E\u056B\u0576", 12, 1, "", methodObject ),
- new Among ( "\u056C\u0561\u0575\u0576", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0578\u0582\u0576", -1, 1, "", methodObject ),
- new Among ( "\u057A\u0565\u057D", -1, 1, "", methodObject ),
- new Among ( "\u056B\u057E", -1, 1, "", methodObject ),
- new Among ( "\u0561\u057F", -1, 1, "", methodObject ),
- new Among ( "\u0561\u057E\u0565\u057F", -1, 1, "", methodObject ),
- new Among ( "\u056F\u0578\u057F", -1, 1, "", methodObject ),
- new Among ( "\u0562\u0561\u0580", -1, 1, "", methodObject )
- };
+ private final static Among a_2[] = {
+ new Among("\u0578\u0580\u0564", -1, 1),
+ new Among("\u0578\u0582\u0575\u0569", -1, 1),
+ new Among("\u0578\u0582\u0570\u056B", -1, 1),
+ new Among("\u0581\u056B", -1, 1),
+ new Among("\u056B\u056C", -1, 1),
+ new Among("\u0561\u056F", -1, 1),
+ new Among("\u0575\u0561\u056F", 5, 1),
+ new Among("\u0561\u0576\u0561\u056F", 5, 1),
+ new Among("\u056B\u056F", -1, 1),
+ new Among("\u0578\u0582\u056F", -1, 1),
+ new Among("\u0561\u0576", -1, 1),
+ new Among("\u057A\u0561\u0576", 10, 1),
+ new Among("\u057D\u057F\u0561\u0576", 10, 1),
+ new Among("\u0561\u0580\u0561\u0576", 10, 1),
+ new Among("\u0565\u0572\u0567\u0576", -1, 1),
+ new Among("\u0575\u0578\u0582\u0576", -1, 1),
+ new Among("\u0578\u0582\u0569\u0575\u0578\u0582\u0576", 15, 1),
+ new Among("\u0561\u056E\u0578", -1, 1),
+ new Among("\u056B\u0579", -1, 1),
+ new Among("\u0578\u0582\u057D", -1, 1),
+ new Among("\u0578\u0582\u057D\u057F", -1, 1),
+ new Among("\u0563\u0561\u0580", -1, 1),
+ new Among("\u057E\u0578\u0580", -1, 1),
+ new Among("\u0561\u057E\u0578\u0580", 22, 1),
+ new Among("\u0578\u0581", -1, 1),
+ new Among("\u0561\u0576\u0585\u0581", -1, 1),
+ new Among("\u0578\u0582", -1, 1),
+ new Among("\u0584", -1, 1),
+ new Among("\u0579\u0565\u0584", 27, 1),
+ new Among("\u056B\u0584", 27, 1),
+ new Among("\u0561\u056C\u056B\u0584", 29, 1),
+ new Among("\u0561\u0576\u056B\u0584", 29, 1),
+ new Among("\u057E\u0561\u056E\u0584", 27, 1),
+ new Among("\u0578\u0582\u0575\u0584", 27, 1),
+ new Among("\u0565\u0576\u0584", 27, 1),
+ new Among("\u0578\u0576\u0584", 27, 1),
+ new Among("\u0578\u0582\u0576\u0584", 27, 1),
+ new Among("\u0574\u0578\u0582\u0576\u0584", 36, 1),
+ new Among("\u056B\u0579\u0584", 27, 1),
+ new Among("\u0561\u0580\u0584", 27, 1)
+ };
- private final static Among a_1[] = {
- new Among ( "\u0561", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0561", 0, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u0561", 0, 1, "", methodObject ),
- new Among ( "\u057E\u0565", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0580\u056B", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u056B", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u056B", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0565\u0581\u056B", 6, 1, "", methodObject ),
- new Among ( "\u0561\u056C", -1, 1, "", methodObject ),
- new Among ( "\u0568\u0561\u056C", 8, 1, "", methodObject ),
- new Among ( "\u0561\u0576\u0561\u056C", 8, 1, "", methodObject ),
- new Among ( "\u0565\u0576\u0561\u056C", 8, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0576\u0561\u056C", 8, 1, "", methodObject ),
- new Among ( "\u0565\u056C", -1, 1, "", methodObject ),
- new Among ( "\u0568\u0565\u056C", 13, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u056C", 13, 1, "", methodObject ),
- new Among ( "\u0581\u0576\u0565\u056C", 15, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u0576\u0565\u056C", 16, 1, "", methodObject ),
- new Among ( "\u0579\u0565\u056C", 13, 1, "", methodObject ),
- new Among ( "\u057E\u0565\u056C", 13, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u057E\u0565\u056C", 19, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u057E\u0565\u056C", 19, 1, "", methodObject ),
- new Among ( "\u057F\u0565\u056C", 13, 1, "", methodObject ),
- new Among ( "\u0561\u057F\u0565\u056C", 22, 1, "", methodObject ),
- new Among ( "\u0578\u057F\u0565\u056C", 22, 1, "", methodObject ),
- new Among ( "\u056F\u0578\u057F\u0565\u056C", 24, 1, "", methodObject ),
- new Among ( "\u057E\u0561\u056E", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0574", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0578\u0582\u0574", 27, 1, "", methodObject ),
- new Among ( "\u0561\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0581\u0561\u0576", 29, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0561\u0576", 30, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0580\u056B\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u056B\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u056B\u0576", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0565\u0581\u056B\u0576", 34, 1, "", methodObject ),
- new Among ( "\u0561\u056C\u056B\u057D", -1, 1, "", methodObject ),
- new Among ( "\u0565\u056C\u056B\u057D", -1, 1, "", methodObject ),
- new Among ( "\u0561\u057E", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0561\u057E", 38, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u0561\u057E", 38, 1, "", methodObject ),
- new Among ( "\u0561\u056C\u0578\u057E", -1, 1, "", methodObject ),
- new Among ( "\u0565\u056C\u0578\u057E", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0580", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0561\u0580", 43, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u0561\u0580", 43, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0580\u056B\u0580", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u056B\u0580", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u056B\u0580", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0565\u0581\u056B\u0580", 48, 1, "", methodObject ),
- new Among ( "\u0561\u0581", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0581", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0580\u0565\u0581", 51, 1, "", methodObject ),
- new Among ( "\u0561\u056C\u0578\u0582\u0581", -1, 1, "", methodObject ),
- new Among ( "\u0565\u056C\u0578\u0582\u0581", -1, 1, "", methodObject ),
- new Among ( "\u0561\u056C\u0578\u0582", -1, 1, "", methodObject ),
- new Among ( "\u0565\u056C\u0578\u0582", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0584", -1, 1, "", methodObject ),
- new Among ( "\u0581\u0561\u0584", 57, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0561\u0584", 58, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0580\u056B\u0584", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u056B\u0584", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u056B\u0584", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0565\u0581\u056B\u0584", 62, 1, "", methodObject ),
- new Among ( "\u0561\u0576\u0584", -1, 1, "", methodObject ),
- new Among ( "\u0581\u0561\u0576\u0584", 64, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0561\u0576\u0584", 65, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u0580\u056B\u0576\u0584", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0581\u056B\u0576\u0584", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0581\u056B\u0576\u0584", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0565\u0581\u056B\u0576\u0584", 69, 1, "", methodObject )
- };
+ private final static Among a_3[] = {
+ new Among("\u057D\u0561", -1, 1),
+ new Among("\u057E\u0561", -1, 1),
+ new Among("\u0561\u0574\u0562", -1, 1),
+ new Among("\u0564", -1, 1),
+ new Among("\u0561\u0576\u0564", 3, 1),
+ new Among("\u0578\u0582\u0569\u0575\u0561\u0576\u0564", 4, 1),
+ new Among("\u057E\u0561\u0576\u0564", 4, 1),
+ new Among("\u0578\u057B\u0564", 3, 1),
+ new Among("\u0565\u0580\u0564", 3, 1),
+ new Among("\u0576\u0565\u0580\u0564", 8, 1),
+ new Among("\u0578\u0582\u0564", 3, 1),
+ new Among("\u0568", -1, 1),
+ new Among("\u0561\u0576\u0568", 11, 1),
+ new Among("\u0578\u0582\u0569\u0575\u0561\u0576\u0568", 12, 1),
+ new Among("\u057E\u0561\u0576\u0568", 12, 1),
+ new Among("\u0578\u057B\u0568", 11, 1),
+ new Among("\u0565\u0580\u0568", 11, 1),
+ new Among("\u0576\u0565\u0580\u0568", 16, 1),
+ new Among("\u056B", -1, 1),
+ new Among("\u057E\u056B", 18, 1),
+ new Among("\u0565\u0580\u056B", 18, 1),
+ new Among("\u0576\u0565\u0580\u056B", 20, 1),
+ new Among("\u0561\u0576\u0578\u0582\u0574", -1, 1),
+ new Among("\u0565\u0580\u0578\u0582\u0574", -1, 1),
+ new Among("\u0576\u0565\u0580\u0578\u0582\u0574", 23, 1),
+ new Among("\u0576", -1, 1),
+ new Among("\u0561\u0576", 25, 1),
+ new Among("\u0578\u0582\u0569\u0575\u0561\u0576", 26, 1),
+ new Among("\u057E\u0561\u0576", 26, 1),
+ new Among("\u056B\u0576", 25, 1),
+ new Among("\u0565\u0580\u056B\u0576", 29, 1),
+ new Among("\u0576\u0565\u0580\u056B\u0576", 30, 1),
+ new Among("\u0578\u0582\u0569\u0575\u0561\u0576\u0576", 25, 1),
+ new Among("\u0565\u0580\u0576", 25, 1),
+ new Among("\u0576\u0565\u0580\u0576", 33, 1),
+ new Among("\u0578\u0582\u0576", 25, 1),
+ new Among("\u0578\u057B", -1, 1),
+ new Among("\u0578\u0582\u0569\u0575\u0561\u0576\u057D", -1, 1),
+ new Among("\u057E\u0561\u0576\u057D", -1, 1),
+ new Among("\u0578\u057B\u057D", -1, 1),
+ new Among("\u0578\u057E", -1, 1),
+ new Among("\u0561\u0576\u0578\u057E", 40, 1),
+ new Among("\u057E\u0578\u057E", 40, 1),
+ new Among("\u0565\u0580\u0578\u057E", 40, 1),
+ new Among("\u0576\u0565\u0580\u0578\u057E", 43, 1),
+ new Among("\u0565\u0580", -1, 1),
+ new Among("\u0576\u0565\u0580", 45, 1),
+ new Among("\u0581", -1, 1),
+ new Among("\u056B\u0581", 47, 1),
+ new Among("\u057E\u0561\u0576\u056B\u0581", 48, 1),
+ new Among("\u0578\u057B\u056B\u0581", 48, 1),
+ new Among("\u057E\u056B\u0581", 48, 1),
+ new Among("\u0565\u0580\u056B\u0581", 48, 1),
+ new Among("\u0576\u0565\u0580\u056B\u0581", 52, 1),
+ new Among("\u0581\u056B\u0581", 48, 1),
+ new Among("\u0578\u0581", 47, 1),
+ new Among("\u0578\u0582\u0581", 47, 1)
+ };
- private final static Among a_2[] = {
- new Among ( "\u0578\u0580\u0564", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0575\u0569", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0570\u056B", -1, 1, "", methodObject ),
- new Among ( "\u0581\u056B", -1, 1, "", methodObject ),
- new Among ( "\u056B\u056C", -1, 1, "", methodObject ),
- new Among ( "\u0561\u056F", -1, 1, "", methodObject ),
- new Among ( "\u0575\u0561\u056F", 5, 1, "", methodObject ),
- new Among ( "\u0561\u0576\u0561\u056F", 5, 1, "", methodObject ),
- new Among ( "\u056B\u056F", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u056F", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0576", -1, 1, "", methodObject ),
- new Among ( "\u057A\u0561\u0576", 10, 1, "", methodObject ),
- new Among ( "\u057D\u057F\u0561\u0576", 10, 1, "", methodObject ),
- new Among ( "\u0561\u0580\u0561\u0576", 10, 1, "", methodObject ),
- new Among ( "\u0565\u0572\u0567\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0575\u0578\u0582\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0569\u0575\u0578\u0582\u0576", 15, 1, "", methodObject ),
- new Among ( "\u0561\u056E\u0578", -1, 1, "", methodObject ),
- new Among ( "\u056B\u0579", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u057D", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u057D\u057F", -1, 1, "", methodObject ),
- new Among ( "\u0563\u0561\u0580", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0578\u0580", -1, 1, "", methodObject ),
- new Among ( "\u0561\u057E\u0578\u0580", 22, 1, "", methodObject ),
- new Among ( "\u0578\u0581", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0576\u0585\u0581", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0582", -1, 1, "", methodObject ),
- new Among ( "\u0584", -1, 1, "", methodObject ),
- new Among ( "\u0579\u0565\u0584", 27, 1, "", methodObject ),
- new Among ( "\u056B\u0584", 27, 1, "", methodObject ),
- new Among ( "\u0561\u056C\u056B\u0584", 29, 1, "", methodObject ),
- new Among ( "\u0561\u0576\u056B\u0584", 29, 1, "", methodObject ),
- new Among ( "\u057E\u0561\u056E\u0584", 27, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0575\u0584", 27, 1, "", methodObject ),
- new Among ( "\u0565\u0576\u0584", 27, 1, "", methodObject ),
- new Among ( "\u0578\u0576\u0584", 27, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0576\u0584", 27, 1, "", methodObject ),
- new Among ( "\u0574\u0578\u0582\u0576\u0584", 36, 1, "", methodObject ),
- new Among ( "\u056B\u0579\u0584", 27, 1, "", methodObject ),
- new Among ( "\u0561\u0580\u0584", 27, 1, "", methodObject )
- };
+ private static final char g_v[] = {209, 4, 128, 0, 18 };
- private final static Among a_3[] = {
- new Among ( "\u057D\u0561", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0561", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0574\u0562", -1, 1, "", methodObject ),
- new Among ( "\u0564", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0576\u0564", 3, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0569\u0575\u0561\u0576\u0564", 4, 1, "", methodObject ),
- new Among ( "\u057E\u0561\u0576\u0564", 4, 1, "", methodObject ),
- new Among ( "\u0578\u057B\u0564", 3, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u0564", 3, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u0580\u0564", 8, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0564", 3, 1, "", methodObject ),
- new Among ( "\u0568", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0576\u0568", 11, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0569\u0575\u0561\u0576\u0568", 12, 1, "", methodObject ),
- new Among ( "\u057E\u0561\u0576\u0568", 12, 1, "", methodObject ),
- new Among ( "\u0578\u057B\u0568", 11, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u0568", 11, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u0580\u0568", 16, 1, "", methodObject ),
- new Among ( "\u056B", -1, 1, "", methodObject ),
- new Among ( "\u057E\u056B", 18, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u056B", 18, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u0580\u056B", 20, 1, "", methodObject ),
- new Among ( "\u0561\u0576\u0578\u0582\u0574", -1, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u0578\u0582\u0574", -1, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u0580\u0578\u0582\u0574", 23, 1, "", methodObject ),
- new Among ( "\u0576", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0576", 25, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0569\u0575\u0561\u0576", 26, 1, "", methodObject ),
- new Among ( "\u057E\u0561\u0576", 26, 1, "", methodObject ),
- new Among ( "\u056B\u0576", 25, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u056B\u0576", 29, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u0580\u056B\u0576", 30, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0569\u0575\u0561\u0576\u0576", 25, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u0576", 25, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u0580\u0576", 33, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0576", 25, 1, "", methodObject ),
- new Among ( "\u0578\u057B", -1, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0569\u0575\u0561\u0576\u057D", -1, 1, "", methodObject ),
- new Among ( "\u057E\u0561\u0576\u057D", -1, 1, "", methodObject ),
- new Among ( "\u0578\u057B\u057D", -1, 1, "", methodObject ),
- new Among ( "\u0578\u057E", -1, 1, "", methodObject ),
- new Among ( "\u0561\u0576\u0578\u057E", 40, 1, "", methodObject ),
- new Among ( "\u057E\u0578\u057E", 40, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u0578\u057E", 40, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u0580\u0578\u057E", 43, 1, "", methodObject ),
- new Among ( "\u0565\u0580", -1, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u0580", 45, 1, "", methodObject ),
- new Among ( "\u0581", -1, 1, "", methodObject ),
- new Among ( "\u056B\u0581", 47, 1, "", methodObject ),
- new Among ( "\u057E\u0561\u0576\u056B\u0581", 48, 1, "", methodObject ),
- new Among ( "\u0578\u057B\u056B\u0581", 48, 1, "", methodObject ),
- new Among ( "\u057E\u056B\u0581", 48, 1, "", methodObject ),
- new Among ( "\u0565\u0580\u056B\u0581", 48, 1, "", methodObject ),
- new Among ( "\u0576\u0565\u0580\u056B\u0581", 52, 1, "", methodObject ),
- new Among ( "\u0581\u056B\u0581", 48, 1, "", methodObject ),
- new Among ( "\u0578\u0581", 47, 1, "", methodObject ),
- new Among ( "\u0578\u0582\u0581", 47, 1, "", methodObject )
- };
+ private int I_p2;
+ private int I_pV;
- private static final char g_v[] = {209, 4, 128, 0, 18 };
- private int I_p2;
- private int I_pV;
-
- private void copy_from(ArmenianStemmer other) {
- I_p2 = other.I_p2;
- I_pV = other.I_pV;
- super.copy_from(other);
- }
-
- private boolean r_mark_regions() {
- int v_1;
- // (, line 58
- I_pV = limit;
- I_p2 = limit;
- // do, line 62
- v_1 = cursor;
- lab0: do {
- // (, line 62
- // gopast, line 63
- golab1: while(true)
- {
- lab2: do {
- if (!(in_grouping(g_v, 1377, 1413)))
- {
- break lab2;
- }
- break golab1;
- } while (false);
- if (cursor >= limit)
- {
- break lab0;
- }
- cursor++;
- }
- // setmark pV, line 63
- I_pV = cursor;
- // gopast, line 63
- golab3: while(true)
- {
- lab4: do {
- if (!(out_grouping(g_v, 1377, 1413)))
- {
- break lab4;
- }
- break golab3;
- } while (false);
- if (cursor >= limit)
- {
- break lab0;
- }
- cursor++;
- }
- // gopast, line 64
- golab5: while(true)
- {
- lab6: do {
- if (!(in_grouping(g_v, 1377, 1413)))
- {
- break lab6;
- }
- break golab5;
- } while (false);
- if (cursor >= limit)
- {
- break lab0;
- }
- cursor++;
- }
- // gopast, line 64
- golab7: while(true)
- {
- lab8: do {
- if (!(out_grouping(g_v, 1377, 1413)))
- {
- break lab8;
- }
- break golab7;
- } while (false);
- if (cursor >= limit)
- {
- break lab0;
- }
- cursor++;
- }
- // setmark p2, line 64
- I_p2 = cursor;
- } while (false);
- cursor = v_1;
- return true;
- }
+ private boolean r_mark_regions() {
+ I_pV = limit;
+ I_p2 = limit;
+ int v_1 = cursor;
+lab0: {
+golab1: while(true)
+ {
+lab2: {
+ if (!(in_grouping(g_v, 1377, 1413)))
+ {
+ break lab2;
+ }
+ break golab1;
+}
+if (cursor >= limit)
+{
+ break lab0;
+}
+cursor++;
+ }
+I_pV = cursor;
+golab3: while(true)
+{
+lab4: {
+ if (!(out_grouping(g_v, 1377, 1413)))
+ {
+ break lab4;
+ }
+ break golab3;
+}
+if (cursor >= limit)
+{
+ break lab0;
+}
+cursor++;
+}
+golab5: while(true)
+{
+lab6: {
+ if (!(in_grouping(g_v, 1377, 1413)))
+ {
+ break lab6;
+ }
+ break golab5;
+}
+if (cursor >= limit)
+{
+ break lab0;
+}
+cursor++;
+}
+golab7: while(true)
+{
+lab8: {
+ if (!(out_grouping(g_v, 1377, 1413)))
+ {
+ break lab8;
+ }
+ break golab7;
+}
+if (cursor >= limit)
+{
+ break lab0;
+}
+cursor++;
+}
+I_p2 = cursor;
+}
+cursor = v_1;
+return true;
+ }
- private boolean r_R2() {
- if (!(I_p2 <= cursor))
- {
- return false;
- }
- return true;
- }
+private boolean r_R2() {
+ if (!(I_p2 <= cursor))
+ {
+ return false;
+ }
+ return true;
+}
- private boolean r_adjective() {
- int among_var;
- // (, line 72
- // [, line 73
- ket = cursor;
- // substring, line 73
- among_var = find_among_b(a_0, 23);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 73
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 98
- // delete, line 98
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_adjective() {
+ ket = cursor;
+ if (find_among_b(a_0) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ slice_del();
+ return true;
+}
- private boolean r_verb() {
- int among_var;
- // (, line 102
- // [, line 103
- ket = cursor;
- // substring, line 103
- among_var = find_among_b(a_1, 71);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 103
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 176
- // delete, line 176
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_verb() {
+ ket = cursor;
+ if (find_among_b(a_1) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ slice_del();
+ return true;
+}
- private boolean r_noun() {
- int among_var;
- // (, line 180
- // [, line 181
- ket = cursor;
- // substring, line 181
- among_var = find_among_b(a_2, 40);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 181
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 223
- // delete, line 223
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_noun() {
+ ket = cursor;
+ if (find_among_b(a_2) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ slice_del();
+ return true;
+}
- private boolean r_ending() {
- int among_var;
- // (, line 227
- // [, line 228
- ket = cursor;
- // substring, line 228
- among_var = find_among_b(a_3, 57);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 228
- bra = cursor;
- // call R2, line 228
- if (!r_R2())
- {
- return false;
- }
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 287
- // delete, line 287
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_ending() {
+ ket = cursor;
+ if (find_among_b(a_3) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ if (!r_R2())
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
- @Override
- public boolean stem() {
- int v_1;
- int v_2;
- int v_3;
- int v_4;
- int v_5;
- int v_6;
- int v_7;
- // (, line 292
- // do, line 294
- v_1 = cursor;
- lab0: do {
- // call mark_regions, line 294
- if (!r_mark_regions())
- {
- break lab0;
- }
- } while (false);
- cursor = v_1;
- // backwards, line 295
- limit_backward = cursor; cursor = limit;
- // setlimit, line 295
- v_2 = limit - cursor;
- // tomark, line 295
- if (cursor < I_pV)
- {
- return false;
- }
- cursor = I_pV;
- v_3 = limit_backward;
- limit_backward = cursor;
- cursor = limit - v_2;
- // (, line 295
- // do, line 296
- v_4 = limit - cursor;
- lab1: do {
- // call ending, line 296
- if (!r_ending())
- {
- break lab1;
- }
- } while (false);
- cursor = limit - v_4;
- // do, line 297
- v_5 = limit - cursor;
- lab2: do {
- // call verb, line 297
- if (!r_verb())
- {
- break lab2;
- }
- } while (false);
- cursor = limit - v_5;
- // do, line 298
- v_6 = limit - cursor;
- lab3: do {
- // call adjective, line 298
- if (!r_adjective())
- {
- break lab3;
- }
- } while (false);
- cursor = limit - v_6;
- // do, line 299
- v_7 = limit - cursor;
- lab4: do {
- // call noun, line 299
- if (!r_noun())
- {
- break lab4;
- }
- } while (false);
- cursor = limit - v_7;
- limit_backward = v_3;
- cursor = limit_backward; return true;
- }
+public boolean stem() {
+ r_mark_regions();
+ limit_backward = cursor;
+ cursor = limit;
+ if (cursor < I_pV)
+ {
+ return false;
+ }
+ int v_3 = limit_backward;
+ limit_backward = I_pV;
+ int v_4 = limit - cursor;
+ r_ending();
+ cursor = limit - v_4;
+ int v_5 = limit - cursor;
+ r_verb();
+ cursor = limit - v_5;
+ int v_6 = limit - cursor;
+ r_adjective();
+ cursor = limit - v_6;
+ int v_7 = limit - cursor;
+ r_noun();
+ cursor = limit - v_7;
+ limit_backward = v_3;
+ cursor = limit_backward;
+ return true;
+}
- @Override
- public boolean equals( Object o ) {
- return o instanceof ArmenianStemmer;
- }
+@Override
+public boolean equals( Object o ) {
+ return o instanceof ArmenianStemmer;
+}
- @Override
- public int hashCode() {
- return ArmenianStemmer.class.getName().hashCode();
- }
+@Override
+public int hashCode() {
+ return ArmenianStemmer.class.getName().hashCode();
+}
diff --git a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/BasqueStemmer.java b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/BasqueStemmer.java
index ce6927d..2152128 100644
--- a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/BasqueStemmer.java
+++ b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/BasqueStemmer.java
@@ -1,940 +1,820 @@
-// This file was generated automatically by the Snowball to Java compiler
+// Generated by Snowball 2.0.0 - https://snowballstem.org/
package org.tartarus.snowball.ext;
import org.tartarus.snowball.Among;
-import org.tartarus.snowball.SnowballProgram;
- /**
- * This class was automatically generated by a Snowball to Java compiler
- * It implements the stemming algorithm defined by a snowball script.
- */
+/**
+ * This class implements the stemming algorithm defined by a snowball script.
+ * <p>
+ * Generated by Snowball 2.0.0 - https://snowballstem.org/
+ * </p>
+ */
+@SuppressWarnings("unused")
+public class BasqueStemmer extends org.tartarus.snowball.SnowballStemmer {
-@SuppressWarnings("unused") public class BasqueStemmer extends SnowballProgram {
+ private static final long serialVersionUID = 1L;
+ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
-private static final long serialVersionUID = 1L;
+ private final static Among a_0[] = {
+ new Among("idea", -1, 1),
+ new Among("bidea", 0, 1),
+ new Among("kidea", 0, 1),
+ new Among("pidea", 0, 1),
+ new Among("kundea", -1, 1),
+ new Among("galea", -1, 1),
+ new Among("tailea", -1, 1),
+ new Among("tzailea", -1, 1),
+ new Among("gunea", -1, 1),
+ new Among("kunea", -1, 1),
+ new Among("tzaga", -1, 1),
+ new Among("gaia", -1, 1),
+ new Among("aldia", -1, 1),
+ new Among("taldia", 12, 1),
+ new Among("karia", -1, 1),
+ new Among("garria", -1, 2),
+ new Among("karria", -1, 1),
+ new Among("ka", -1, 1),
+ new Among("tzaka", 17, 1),
+ new Among("la", -1, 1),
+ new Among("mena", -1, 1),
+ new Among("pena", -1, 1),
+ new Among("kina", -1, 1),
+ new Among("ezina", -1, 1),
+ new Among("tezina", 23, 1),
+ new Among("kuna", -1, 1),
+ new Among("tuna", -1, 1),
+ new Among("kizuna", -1, 1),
+ new Among("era", -1, 1),
+ new Among("bera", 28, 1),
+ new Among("arabera", 29, 4),
+ new Among("kera", 28, 1),
+ new Among("pera", 28, 1),
+ new Among("orra", -1, 1),
+ new Among("korra", 33, 1),
+ new Among("dura", -1, 1),
+ new Among("gura", -1, 1),
+ new Among("kura", -1, 1),
+ new Among("tura", -1, 1),
+ new Among("eta", -1, 1),
+ new Among("keta", 39, 1),
+ new Among("gailua", -1, 1),
+ new Among("eza", -1, 1),
+ new Among("erreza", 42, 1),
+ new Among("tza", -1, 2),
+ new Among("gaitza", 44, 1),
+ new Among("kaitza", 44, 1),
+ new Among("kuntza", 44, 1),
+ new Among("ide", -1, 1),
+ new Among("bide", 48, 1),
+ new Among("kide", 48, 1),
+ new Among("pide", 48, 1),
+ new Among("kunde", -1, 1),
+ new Among("tzake", -1, 1),
+ new Among("tzeke", -1, 1),
+ new Among("le", -1, 1),
+ new Among("gale", 55, 1),
+ new Among("taile", 55, 1),
+ new Among("tzaile", 55, 1),
+ new Among("gune", -1, 1),
+ new Among("kune", -1, 1),
+ new Among("tze", -1, 1),
+ new Among("atze", 61, 1),
+ new Among("gai", -1, 1),
+ new Among("aldi", -1, 1),
+ new Among("taldi", 64, 1),
+ new Among("ki", -1, 1),
+ new Among("ari", -1, 1),
+ new Among("kari", 67, 1),
+ new Among("lari", 67, 1),
+ new Among("tari", 67, 1),
+ new Among("etari", 70, 1),
+ new Among("garri", -1, 2),
+ new Among("karri", -1, 1),
+ new Among("arazi", -1, 1),
+ new Among("tarazi", 74, 1),
+ new Among("an", -1, 1),
+ new Among("ean", 76, 1),
+ new Among("rean", 77, 1),
+ new Among("kan", 76, 1),
+ new Among("etan", 76, 1),
+ new Among("atseden", -1, 3),
+ new Among("men", -1, 1),
+ new Among("pen", -1, 1),
+ new Among("kin", -1, 1),
+ new Among("rekin", 84, 1),
+ new Among("ezin", -1, 1),
+ new Among("tezin", 86, 1),
+ new Among("tun", -1, 1),
+ new Among("kizun", -1, 1),
+ new Among("go", -1, 1),
+ new Among("ago", 90, 1),
+ new Among("tio", -1, 1),
+ new Among("dako", -1, 1),
+ new Among("or", -1, 1),
+ new Among("kor", 94, 1),
+ new Among("tzat", -1, 1),
+ new Among("du", -1, 1),
+ new Among("gailu", -1, 1),
+ new Among("tu", -1, 1),
+ new Among("atu", 99, 1),
+ new Among("aldatu", 100, 1),
+ new Among("tatu", 100, 1),
+ new Among("baditu", 99, 5),
+ new Among("ez", -1, 1),
+ new Among("errez", 104, 1),
+ new Among("tzez", 104, 1),
+ new Among("gaitz", -1, 1),
+ new Among("kaitz", -1, 1)
+ };
- /* patched */ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
+ private final static Among a_1[] = {
+ new Among("ada", -1, 1),
+ new Among("kada", 0, 1),
+ new Among("anda", -1, 1),
+ new Among("denda", -1, 1),
+ new Among("gabea", -1, 1),
+ new Among("kabea", -1, 1),
+ new Among("aldea", -1, 1),
+ new Among("kaldea", 6, 1),
+ new Among("taldea", 6, 1),
+ new Among("ordea", -1, 1),
+ new Among("zalea", -1, 1),
+ new Among("tzalea", 10, 1),
+ new Among("gilea", -1, 1),
+ new Among("emea", -1, 1),
+ new Among("kumea", -1, 1),
+ new Among("nea", -1, 1),
+ new Among("enea", 15, 1),
+ new Among("zionea", 15, 1),
+ new Among("unea", 15, 1),
+ new Among("gunea", 18, 1),
+ new Among("pea", -1, 1),
+ new Among("aurrea", -1, 1),
+ new Among("tea", -1, 1),
+ new Among("kotea", 22, 1),
+ new Among("artea", 22, 1),
+ new Among("ostea", 22, 1),
+ new Among("etxea", -1, 1),
+ new Among("ga", -1, 1),
+ new Among("anga", 27, 1),
+ new Among("gaia", -1, 1),
+ new Among("aldia", -1, 1),
+ new Among("taldia", 30, 1),
+ new Among("handia", -1, 1),
+ new Among("mendia", -1, 1),
+ new Among("geia", -1, 1),
+ new Among("egia", -1, 1),
+ new Among("degia", 35, 1),
+ new Among("tegia", 35, 1),
+ new Among("nahia", -1, 1),
+ new Among("ohia", -1, 1),
+ new Among("kia", -1, 1),
+ new Among("tokia", 40, 1),
+ new Among("oia", -1, 1),
+ new Among("koia", 42, 1),
+ new Among("aria", -1, 1),
+ new Among("karia", 44, 1),
+ new Among("laria", 44, 1),
+ new Among("taria", 44, 1),
+ new Among("eria", -1, 1),
+ new Among("keria", 48, 1),
+ new Among("teria", 48, 1),
+ new Among("garria", -1, 2),
+ new Among("larria", -1, 1),
+ new Among("kirria", -1, 1),
+ new Among("duria", -1, 1),
+ new Among("asia", -1, 1),
+ new Among("tia", -1, 1),
+ new Among("ezia", -1, 1),
+ new Among("bizia", -1, 1),
+ new Among("ontzia", -1, 1),
+ new Among("ka", -1, 1),
+ new Among("joka", 60, 3),
+ new Among("aurka", 60, 10),
+ new Among("ska", 60, 1),
+ new Among("xka", 60, 1),
+ new Among("zka", 60, 1),
+ new Among("gibela", -1, 1),
+ new Among("gela", -1, 1),
+ new Among("kaila", -1, 1),
+ new Among("skila", -1, 1),
+ new Among("tila", -1, 1),
+ new Among("ola", -1, 1),
+ new Among("na", -1, 1),
+ new Among("kana", 72, 1),
+ new Among("ena", 72, 1),
+ new Among("garrena", 74, 1),
+ new Among("gerrena", 74, 1),
+ new Among("urrena", 74, 1),
+ new Among("zaina", 72, 1),
+ new Among("tzaina", 78, 1),
+ new Among("kina", 72, 1),
+ new Among("mina", 72, 1),
+ new Among("garna", 72, 1),
+ new Among("una", 72, 1),
+ new Among("duna", 83, 1),
+ new Among("asuna", 83, 1),
+ new Among("tasuna", 85, 1),
+ new Among("ondoa", -1, 1),
+ new Among("kondoa", 87, 1),
+ new Among("ngoa", -1, 1),
+ new Among("zioa", -1, 1),
+ new Among("koa", -1, 1),
+ new Among("takoa", 91, 1),
+ new Among("zkoa", 91, 1),
+ new Among("noa", -1, 1),
+ new Among("zinoa", 94, 1),
+ new Among("aroa", -1, 1),
+ new Among("taroa", 96, 1),
+ new Among("zaroa", 96, 1),
+ new Among("eroa", -1, 1),
+ new Among("oroa", -1, 1),
+ new Among("osoa", -1, 1),
+ new Among("toa", -1, 1),
+ new Among("ttoa", 102, 1),
+ new Among("ztoa", 102, 1),
+ new Among("txoa", -1, 1),
+ new Among("tzoa", -1, 1),
+ new Among("\u00F1oa", -1, 1),
+ new Among("ra", -1, 1),
+ new Among("ara", 108, 1),
+ new Among("dara", 109, 1),
+ new Among("liara", 109, 1),
+ new Among("tiara", 109, 1),
+ new Among("tara", 109, 1),
+ new Among("etara", 113, 1),
+ new Among("tzara", 109, 1),
+ new Among("bera", 108, 1),
+ new Among("kera", 108, 1),
+ new Among("pera", 108, 1),
+ new Among("ora", 108, 2),
+ new Among("tzarra", 108, 1),
+ new Among("korra", 108, 1),
+ new Among("tra", 108, 1),
+ new Among("sa", -1, 1),
+ new Among("osa", 123, 1),
+ new Among("ta", -1, 1),
+ new Among("eta", 125, 1),
+ new Among("keta", 126, 1),
+ new Among("sta", 125, 1),
+ new Among("dua", -1, 1),
+ new Among("mendua", 129, 1),
+ new Among("ordua", 129, 1),
+ new Among("lekua", -1, 1),
+ new Among("burua", -1, 1),
+ new Among("durua", -1, 1),
+ new Among("tsua", -1, 1),
+ new Among("tua", -1, 1),
+ new Among("mentua", 136, 1),
+ new Among("estua", 136, 1),
+ new Among("txua", -1, 1),
+ new Among("zua", -1, 1),
+ new Among("tzua", 140, 1),
+ new Among("za", -1, 1),
+ new Among("eza", 142, 1),
+ new Among("eroza", 142, 1),
+ new Among("tza", 142, 2),
+ new Among("koitza", 145, 1),
+ new Among("antza", 145, 1),
+ new Among("gintza", 145, 1),
+ new Among("kintza", 145, 1),
+ new Among("kuntza", 145, 1),
+ new Among("gabe", -1, 1),
+ new Among("kabe", -1, 1),
+ new Among("kide", -1, 1),
+ new Among("alde", -1, 1),
+ new Among("kalde", 154, 1),
+ new Among("talde", 154, 1),
+ new Among("orde", -1, 1),
+ new Among("ge", -1, 1),
+ new Among("zale", -1, 1),
+ new Among("tzale", 159, 1),
+ new Among("gile", -1, 1),
+ new Among("eme", -1, 1),
+ new Among("kume", -1, 1),
+ new Among("ne", -1, 1),
+ new Among("zione", 164, 1),
+ new Among("une", 164, 1),
+ new Among("gune", 166, 1),
+ new Among("pe", -1, 1),
+ new Among("aurre", -1, 1),
+ new Among("te", -1, 1),
+ new Among("kote", 170, 1),
+ new Among("arte", 170, 1),
+ new Among("oste", 170, 1),
+ new Among("etxe", -1, 1),
+ new Among("gai", -1, 1),
+ new Among("di", -1, 1),
+ new Among("aldi", 176, 1),
+ new Among("taldi", 177, 1),
+ new Among("geldi", 176, 8),
+ new Among("handi", 176, 1),
+ new Among("mendi", 176, 1),
+ new Among("gei", -1, 1),
+ new Among("egi", -1, 1),
+ new Among("degi", 183, 1),
+ new Among("tegi", 183, 1),
+ new Among("nahi", -1, 1),
+ new Among("ohi", -1, 1),
+ new Among("ki", -1, 1),
+ new Among("toki", 188, 1),
+ new Among("oi", -1, 1),
+ new Among("goi", 190, 1),
+ new Among("koi", 190, 1),
+ new Among("ari", -1, 1),
+ new Among("kari", 193, 1),
+ new Among("lari", 193, 1),
+ new Among("tari", 193, 1),
+ new Among("garri", -1, 2),
+ new Among("larri", -1, 1),
+ new Among("kirri", -1, 1),
+ new Among("duri", -1, 1),
+ new Among("asi", -1, 1),
+ new Among("ti", -1, 1),
+ new Among("ontzi", -1, 1),
+ new Among("\u00F1i", -1, 1),
+ new Among("ak", -1, 1),
+ new Among("ek", -1, 1),
+ new Among("tarik", -1, 1),
+ new Among("gibel", -1, 1),
+ new Among("ail", -1, 1),
+ new Among("kail", 209, 1),
+ new Among("kan", -1, 1),
+ new Among("tan", -1, 1),
+ new Among("etan", 212, 1),
+ new Among("en", -1, 4),
+ new Among("ren", 214, 2),
+ new Among("garren", 215, 1),
+ new Among("gerren", 215, 1),
+ new Among("urren", 215, 1),
+ new Among("ten", 214, 4),
+ new Among("tzen", 214, 4),
+ new Among("zain", -1, 1),
+ new Among("tzain", 221, 1),
+ new Among("kin", -1, 1),
+ new Among("min", -1, 1),
+ new Among("dun", -1, 1),
+ new Among("asun", -1, 1),
+ new Among("tasun", 226, 1),
+ new Among("aizun", -1, 1),
+ new Among("ondo", -1, 1),
+ new Among("kondo", 229, 1),
+ new Among("go", -1, 1),
+ new Among("ngo", 231, 1),
+ new Among("zio", -1, 1),
+ new Among("ko", -1, 1),
+ new Among("trako", 234, 5),
+ new Among("tako", 234, 1),
+ new Among("etako", 236, 1),
+ new Among("eko", 234, 1),
+ new Among("tariko", 234, 1),
+ new Among("sko", 234, 1),
+ new Among("tuko", 234, 1),
+ new Among("minutuko", 241, 6),
+ new Among("zko", 234, 1),
+ new Among("no", -1, 1),
+ new Among("zino", 244, 1),
+ new Among("ro", -1, 1),
+ new Among("aro", 246, 1),
+ new Among("igaro", 247, 9),
+ new Among("taro", 247, 1),
+ new Among("zaro", 247, 1),
+ new Among("ero", 246, 1),
+ new Among("giro", 246, 1),
+ new Among("oro", 246, 1),
+ new Among("oso", -1, 1),
+ new Among("to", -1, 1),
+ new Among("tto", 255, 1),
+ new Among("zto", 255, 1),
+ new Among("txo", -1, 1),
+ new Among("tzo", -1, 1),
+ new Among("gintzo", 259, 1),
+ new Among("\u00F1o", -1, 1),
+ new Among("zp", -1, 1),
+ new Among("ar", -1, 1),
+ new Among("dar", 263, 1),
+ new Among("behar", 263, 1),
+ new Among("zehar", 263, 7),
+ new Among("liar", 263, 1),
+ new Among("tiar", 263, 1),
+ new Among("tar", 263, 1),
+ new Among("tzar", 263, 1),
+ new Among("or", -1, 2),
+ new Among("kor", 271, 1),
+ new Among("os", -1, 1),
+ new Among("ket", -1, 1),
+ new Among("du", -1, 1),
+ new Among("mendu", 275, 1),
+ new Among("ordu", 275, 1),
+ new Among("leku", -1, 1),
+ new Among("buru", -1, 2),
+ new Among("duru", -1, 1),
+ new Among("tsu", -1, 1),
+ new Among("tu", -1, 1),
+ new Among("tatu", 282, 4),
+ new Among("mentu", 282, 1),
+ new Among("estu", 282, 1),
+ new Among("txu", -1, 1),
+ new Among("zu", -1, 1),
+ new Among("tzu", 287, 1),
+ new Among("gintzu", 288, 1),
+ new Among("z", -1, 1),
+ new Among("ez", 290, 1),
+ new Among("eroz", 290, 1),
+ new Among("tz", 290, 1),
+ new Among("koitz", 293, 1)
+ };
- private final static Among a_0[] = {
- new Among ( "idea", -1, 1, "", methodObject ),
- new Among ( "bidea", 0, 1, "", methodObject ),
- new Among ( "kidea", 0, 1, "", methodObject ),
- new Among ( "pidea", 0, 1, "", methodObject ),
- new Among ( "kundea", -1, 1, "", methodObject ),
- new Among ( "galea", -1, 1, "", methodObject ),
- new Among ( "tailea", -1, 1, "", methodObject ),
- new Among ( "tzailea", -1, 1, "", methodObject ),
- new Among ( "gunea", -1, 1, "", methodObject ),
- new Among ( "kunea", -1, 1, "", methodObject ),
- new Among ( "tzaga", -1, 1, "", methodObject ),
- new Among ( "gaia", -1, 1, "", methodObject ),
- new Among ( "aldia", -1, 1, "", methodObject ),
- new Among ( "taldia", 12, 1, "", methodObject ),
- new Among ( "karia", -1, 1, "", methodObject ),
- new Among ( "garria", -1, 2, "", methodObject ),
- new Among ( "karria", -1, 1, "", methodObject ),
- new Among ( "ka", -1, 1, "", methodObject ),
- new Among ( "tzaka", 17, 1, "", methodObject ),
- new Among ( "la", -1, 1, "", methodObject ),
- new Among ( "mena", -1, 1, "", methodObject ),
- new Among ( "pena", -1, 1, "", methodObject ),
- new Among ( "kina", -1, 1, "", methodObject ),
- new Among ( "ezina", -1, 1, "", methodObject ),
- new Among ( "tezina", 23, 1, "", methodObject ),
- new Among ( "kuna", -1, 1, "", methodObject ),
- new Among ( "tuna", -1, 1, "", methodObject ),
- new Among ( "kizuna", -1, 1, "", methodObject ),
- new Among ( "era", -1, 1, "", methodObject ),
- new Among ( "bera", 28, 1, "", methodObject ),
- new Among ( "arabera", 29, 4, "", methodObject ),
- new Among ( "kera", 28, 1, "", methodObject ),
- new Among ( "pera", 28, 1, "", methodObject ),
- new Among ( "orra", -1, 1, "", methodObject ),
- new Among ( "korra", 33, 1, "", methodObject ),
- new Among ( "dura", -1, 1, "", methodObject ),
- new Among ( "gura", -1, 1, "", methodObject ),
- new Among ( "kura", -1, 1, "", methodObject ),
- new Among ( "tura", -1, 1, "", methodObject ),
- new Among ( "eta", -1, 1, "", methodObject ),
- new Among ( "keta", 39, 1, "", methodObject ),
- new Among ( "gailua", -1, 1, "", methodObject ),
- new Among ( "eza", -1, 1, "", methodObject ),
- new Among ( "erreza", 42, 1, "", methodObject ),
- new Among ( "tza", -1, 2, "", methodObject ),
- new Among ( "gaitza", 44, 1, "", methodObject ),
- new Among ( "kaitza", 44, 1, "", methodObject ),
- new Among ( "kuntza", 44, 1, "", methodObject ),
- new Among ( "ide", -1, 1, "", methodObject ),
- new Among ( "bide", 48, 1, "", methodObject ),
- new Among ( "kide", 48, 1, "", methodObject ),
- new Among ( "pide", 48, 1, "", methodObject ),
- new Among ( "kunde", -1, 1, "", methodObject ),
- new Among ( "tzake", -1, 1, "", methodObject ),
- new Among ( "tzeke", -1, 1, "", methodObject ),
- new Among ( "le", -1, 1, "", methodObject ),
- new Among ( "gale", 55, 1, "", methodObject ),
- new Among ( "taile", 55, 1, "", methodObject ),
- new Among ( "tzaile", 55, 1, "", methodObject ),
- new Among ( "gune", -1, 1, "", methodObject ),
- new Among ( "kune", -1, 1, "", methodObject ),
- new Among ( "tze", -1, 1, "", methodObject ),
- new Among ( "atze", 61, 1, "", methodObject ),
- new Among ( "gai", -1, 1, "", methodObject ),
- new Among ( "aldi", -1, 1, "", methodObject ),
- new Among ( "taldi", 64, 1, "", methodObject ),
- new Among ( "ki", -1, 1, "", methodObject ),
- new Among ( "ari", -1, 1, "", methodObject ),
- new Among ( "kari", 67, 1, "", methodObject ),
- new Among ( "lari", 67, 1, "", methodObject ),
- new Among ( "tari", 67, 1, "", methodObject ),
- new Among ( "etari", 70, 1, "", methodObject ),
- new Among ( "garri", -1, 2, "", methodObject ),
- new Among ( "karri", -1, 1, "", methodObject ),
- new Among ( "arazi", -1, 1, "", methodObject ),
- new Among ( "tarazi", 74, 1, "", methodObject ),
- new Among ( "an", -1, 1, "", methodObject ),
- new Among ( "ean", 76, 1, "", methodObject ),
- new Among ( "rean", 77, 1, "", methodObject ),
- new Among ( "kan", 76, 1, "", methodObject ),
- new Among ( "etan", 76, 1, "", methodObject ),
- new Among ( "atseden", -1, 3, "", methodObject ),
- new Among ( "men", -1, 1, "", methodObject ),
- new Among ( "pen", -1, 1, "", methodObject ),
- new Among ( "kin", -1, 1, "", methodObject ),
- new Among ( "rekin", 84, 1, "", methodObject ),
- new Among ( "ezin", -1, 1, "", methodObject ),
- new Among ( "tezin", 86, 1, "", methodObject ),
- new Among ( "tun", -1, 1, "", methodObject ),
- new Among ( "kizun", -1, 1, "", methodObject ),
- new Among ( "go", -1, 1, "", methodObject ),
- new Among ( "ago", 90, 1, "", methodObject ),
- new Among ( "tio", -1, 1, "", methodObject ),
- new Among ( "dako", -1, 1, "", methodObject ),
- new Among ( "or", -1, 1, "", methodObject ),
- new Among ( "kor", 94, 1, "", methodObject ),
- new Among ( "tzat", -1, 1, "", methodObject ),
- new Among ( "du", -1, 1, "", methodObject ),
- new Among ( "gailu", -1, 1, "", methodObject ),
- new Among ( "tu", -1, 1, "", methodObject ),
- new Among ( "atu", 99, 1, "", methodObject ),
- new Among ( "aldatu", 100, 1, "", methodObject ),
- new Among ( "tatu", 100, 1, "", methodObject ),
- new Among ( "baditu", 99, 5, "", methodObject ),
- new Among ( "ez", -1, 1, "", methodObject ),
- new Among ( "errez", 104, 1, "", methodObject ),
- new Among ( "tzez", 104, 1, "", methodObject ),
- new Among ( "gaitz", -1, 1, "", methodObject ),
- new Among ( "kaitz", -1, 1, "", methodObject )
- };
+ private final static Among a_2[] = {
+ new Among("zlea", -1, 2),
+ new Among("keria", -1, 1),
+ new Among("la", -1, 1),
+ new Among("era", -1, 1),
+ new Among("dade", -1, 1),
+ new Among("tade", -1, 1),
+ new Among("date", -1, 1),
+ new Among("tate", -1, 1),
+ new Among("gi", -1, 1),
+ new Among("ki", -1, 1),
+ new Among("ik", -1, 1),
+ new Among("lanik", 10, 1),
+ new Among("rik", 10, 1),
+ new Among("larik", 12, 1),
+ new Among("ztik", 10, 1),
+ new Among("go", -1, 1),
+ new Among("ro", -1, 1),
+ new Among("ero", 16, 1),
+ new Among("to", -1, 1)
+ };
- private final static Among a_1[] = {
- new Among ( "ada", -1, 1, "", methodObject ),
- new Among ( "kada", 0, 1, "", methodObject ),
- new Among ( "anda", -1, 1, "", methodObject ),
- new Among ( "denda", -1, 1, "", methodObject ),
- new Among ( "gabea", -1, 1, "", methodObject ),
- new Among ( "kabea", -1, 1, "", methodObject ),
- new Among ( "aldea", -1, 1, "", methodObject ),
- new Among ( "kaldea", 6, 1, "", methodObject ),
- new Among ( "taldea", 6, 1, "", methodObject ),
- new Among ( "ordea", -1, 1, "", methodObject ),
- new Among ( "zalea", -1, 1, "", methodObject ),
- new Among ( "tzalea", 10, 1, "", methodObject ),
- new Among ( "gilea", -1, 1, "", methodObject ),
- new Among ( "emea", -1, 1, "", methodObject ),
- new Among ( "kumea", -1, 1, "", methodObject ),
- new Among ( "nea", -1, 1, "", methodObject ),
- new Among ( "enea", 15, 1, "", methodObject ),
- new Among ( "zionea", 15, 1, "", methodObject ),
- new Among ( "unea", 15, 1, "", methodObject ),
- new Among ( "gunea", 18, 1, "", methodObject ),
- new Among ( "pea", -1, 1, "", methodObject ),
- new Among ( "aurrea", -1, 1, "", methodObject ),
- new Among ( "tea", -1, 1, "", methodObject ),
- new Among ( "kotea", 22, 1, "", methodObject ),
- new Among ( "artea", 22, 1, "", methodObject ),
- new Among ( "ostea", 22, 1, "", methodObject ),
- new Among ( "etxea", -1, 1, "", methodObject ),
- new Among ( "ga", -1, 1, "", methodObject ),
- new Among ( "anga", 27, 1, "", methodObject ),
- new Among ( "gaia", -1, 1, "", methodObject ),
- new Among ( "aldia", -1, 1, "", methodObject ),
- new Among ( "taldia", 30, 1, "", methodObject ),
- new Among ( "handia", -1, 1, "", methodObject ),
- new Among ( "mendia", -1, 1, "", methodObject ),
- new Among ( "geia", -1, 1, "", methodObject ),
- new Among ( "egia", -1, 1, "", methodObject ),
- new Among ( "degia", 35, 1, "", methodObject ),
- new Among ( "tegia", 35, 1, "", methodObject ),
- new Among ( "nahia", -1, 1, "", methodObject ),
- new Among ( "ohia", -1, 1, "", methodObject ),
- new Among ( "kia", -1, 1, "", methodObject ),
- new Among ( "tokia", 40, 1, "", methodObject ),
- new Among ( "oia", -1, 1, "", methodObject ),
- new Among ( "koia", 42, 1, "", methodObject ),
- new Among ( "aria", -1, 1, "", methodObject ),
- new Among ( "karia", 44, 1, "", methodObject ),
- new Among ( "laria", 44, 1, "", methodObject ),
- new Among ( "taria", 44, 1, "", methodObject ),
- new Among ( "eria", -1, 1, "", methodObject ),
- new Among ( "keria", 48, 1, "", methodObject ),
- new Among ( "teria", 48, 1, "", methodObject ),
- new Among ( "garria", -1, 2, "", methodObject ),
- new Among ( "larria", -1, 1, "", methodObject ),
- new Among ( "kirria", -1, 1, "", methodObject ),
- new Among ( "duria", -1, 1, "", methodObject ),
- new Among ( "asia", -1, 1, "", methodObject ),
- new Among ( "tia", -1, 1, "", methodObject ),
- new Among ( "ezia", -1, 1, "", methodObject ),
- new Among ( "bizia", -1, 1, "", methodObject ),
- new Among ( "ontzia", -1, 1, "", methodObject ),
- new Among ( "ka", -1, 1, "", methodObject ),
- new Among ( "joka", 60, 3, "", methodObject ),
- new Among ( "aurka", 60, 10, "", methodObject ),
- new Among ( "ska", 60, 1, "", methodObject ),
- new Among ( "xka", 60, 1, "", methodObject ),
- new Among ( "zka", 60, 1, "", methodObject ),
- new Among ( "gibela", -1, 1, "", methodObject ),
- new Among ( "gela", -1, 1, "", methodObject ),
- new Among ( "kaila", -1, 1, "", methodObject ),
- new Among ( "skila", -1, 1, "", methodObject ),
- new Among ( "tila", -1, 1, "", methodObject ),
- new Among ( "ola", -1, 1, "", methodObject ),
- new Among ( "na", -1, 1, "", methodObject ),
- new Among ( "kana", 72, 1, "", methodObject ),
- new Among ( "ena", 72, 1, "", methodObject ),
- new Among ( "garrena", 74, 1, "", methodObject ),
- new Among ( "gerrena", 74, 1, "", methodObject ),
- new Among ( "urrena", 74, 1, "", methodObject ),
- new Among ( "zaina", 72, 1, "", methodObject ),
- new Among ( "tzaina", 78, 1, "", methodObject ),
- new Among ( "kina", 72, 1, "", methodObject ),
- new Among ( "mina", 72, 1, "", methodObject ),
- new Among ( "garna", 72, 1, "", methodObject ),
- new Among ( "una", 72, 1, "", methodObject ),
- new Among ( "duna", 83, 1, "", methodObject ),
- new Among ( "asuna", 83, 1, "", methodObject ),
- new Among ( "tasuna", 85, 1, "", methodObject ),
- new Among ( "ondoa", -1, 1, "", methodObject ),
- new Among ( "kondoa", 87, 1, "", methodObject ),
- new Among ( "ngoa", -1, 1, "", methodObject ),
- new Among ( "zioa", -1, 1, "", methodObject ),
- new Among ( "koa", -1, 1, "", methodObject ),
- new Among ( "takoa", 91, 1, "", methodObject ),
- new Among ( "zkoa", 91, 1, "", methodObject ),
- new Among ( "noa", -1, 1, "", methodObject ),
- new Among ( "zinoa", 94, 1, "", methodObject ),
- new Among ( "aroa", -1, 1, "", methodObject ),
- new Among ( "taroa", 96, 1, "", methodObject ),
- new Among ( "zaroa", 96, 1, "", methodObject ),
- new Among ( "eroa", -1, 1, "", methodObject ),
- new Among ( "oroa", -1, 1, "", methodObject ),
- new Among ( "osoa", -1, 1, "", methodObject ),
- new Among ( "toa", -1, 1, "", methodObject ),
- new Among ( "ttoa", 102, 1, "", methodObject ),
- new Among ( "ztoa", 102, 1, "", methodObject ),
- new Among ( "txoa", -1, 1, "", methodObject ),
- new Among ( "tzoa", -1, 1, "", methodObject ),
- new Among ( "\u00F1oa", -1, 1, "", methodObject ),
- new Among ( "ra", -1, 1, "", methodObject ),
- new Among ( "ara", 108, 1, "", methodObject ),
- new Among ( "dara", 109, 1, "", methodObject ),
- new Among ( "liara", 109, 1, "", methodObject ),
- new Among ( "tiara", 109, 1, "", methodObject ),
- new Among ( "tara", 109, 1, "", methodObject ),
- new Among ( "etara", 113, 1, "", methodObject ),
- new Among ( "tzara", 109, 1, "", methodObject ),
- new Among ( "bera", 108, 1, "", methodObject ),
- new Among ( "kera", 108, 1, "", methodObject ),
- new Among ( "pera", 108, 1, "", methodObject ),
- new Among ( "ora", 108, 2, "", methodObject ),
- new Among ( "tzarra", 108, 1, "", methodObject ),
- new Among ( "korra", 108, 1, "", methodObject ),
- new Among ( "tra", 108, 1, "", methodObject ),
- new Among ( "sa", -1, 1, "", methodObject ),
- new Among ( "osa", 123, 1, "", methodObject ),
- new Among ( "ta", -1, 1, "", methodObject ),
- new Among ( "eta", 125, 1, "", methodObject ),
- new Among ( "keta", 126, 1, "", methodObject ),
- new Among ( "sta", 125, 1, "", methodObject ),
- new Among ( "dua", -1, 1, "", methodObject ),
- new Among ( "mendua", 129, 1, "", methodObject ),
- new Among ( "ordua", 129, 1, "", methodObject ),
- new Among ( "lekua", -1, 1, "", methodObject ),
- new Among ( "burua", -1, 1, "", methodObject ),
- new Among ( "durua", -1, 1, "", methodObject ),
- new Among ( "tsua", -1, 1, "", methodObject ),
- new Among ( "tua", -1, 1, "", methodObject ),
- new Among ( "mentua", 136, 1, "", methodObject ),
- new Among ( "estua", 136, 1, "", methodObject ),
- new Among ( "txua", -1, 1, "", methodObject ),
- new Among ( "zua", -1, 1, "", methodObject ),
- new Among ( "tzua", 140, 1, "", methodObject ),
- new Among ( "za", -1, 1, "", methodObject ),
- new Among ( "eza", 142, 1, "", methodObject ),
- new Among ( "eroza", 142, 1, "", methodObject ),
- new Among ( "tza", 142, 2, "", methodObject ),
- new Among ( "koitza", 145, 1, "", methodObject ),
- new Among ( "antza", 145, 1, "", methodObject ),
- new Among ( "gintza", 145, 1, "", methodObject ),
- new Among ( "kintza", 145, 1, "", methodObject ),
- new Among ( "kuntza", 145, 1, "", methodObject ),
- new Among ( "gabe", -1, 1, "", methodObject ),
- new Among ( "kabe", -1, 1, "", methodObject ),
- new Among ( "kide", -1, 1, "", methodObject ),
- new Among ( "alde", -1, 1, "", methodObject ),
- new Among ( "kalde", 154, 1, "", methodObject ),
- new Among ( "talde", 154, 1, "", methodObject ),
- new Among ( "orde", -1, 1, "", methodObject ),
- new Among ( "ge", -1, 1, "", methodObject ),
- new Among ( "zale", -1, 1, "", methodObject ),
- new Among ( "tzale", 159, 1, "", methodObject ),
- new Among ( "gile", -1, 1, "", methodObject ),
- new Among ( "eme", -1, 1, "", methodObject ),
- new Among ( "kume", -1, 1, "", methodObject ),
- new Among ( "ne", -1, 1, "", methodObject ),
- new Among ( "zione", 164, 1, "", methodObject ),
- new Among ( "une", 164, 1, "", methodObject ),
- new Among ( "gune", 166, 1, "", methodObject ),
- new Among ( "pe", -1, 1, "", methodObject ),
- new Among ( "aurre", -1, 1, "", methodObject ),
- new Among ( "te", -1, 1, "", methodObject ),
- new Among ( "kote", 170, 1, "", methodObject ),
- new Among ( "arte", 170, 1, "", methodObject ),
- new Among ( "oste", 170, 1, "", methodObject ),
- new Among ( "etxe", -1, 1, "", methodObject ),
- new Among ( "gai", -1, 1, "", methodObject ),
- new Among ( "di", -1, 1, "", methodObject ),
- new Among ( "aldi", 176, 1, "", methodObject ),
- new Among ( "taldi", 177, 1, "", methodObject ),
- new Among ( "geldi", 176, 8, "", methodObject ),
- new Among ( "handi", 176, 1, "", methodObject ),
- new Among ( "mendi", 176, 1, "", methodObject ),
- new Among ( "gei", -1, 1, "", methodObject ),
- new Among ( "egi", -1, 1, "", methodObject ),
- new Among ( "degi", 183, 1, "", methodObject ),
- new Among ( "tegi", 183, 1, "", methodObject ),
- new Among ( "nahi", -1, 1, "", methodObject ),
- new Among ( "ohi", -1, 1, "", methodObject ),
- new Among ( "ki", -1, 1, "", methodObject ),
- new Among ( "toki", 188, 1, "", methodObject ),
- new Among ( "oi", -1, 1, "", methodObject ),
- new Among ( "goi", 190, 1, "", methodObject ),
- new Among ( "koi", 190, 1, "", methodObject ),
- new Among ( "ari", -1, 1, "", methodObject ),
- new Among ( "kari", 193, 1, "", methodObject ),
- new Among ( "lari", 193, 1, "", methodObject ),
- new Among ( "tari", 193, 1, "", methodObject ),
- new Among ( "garri", -1, 2, "", methodObject ),
- new Among ( "larri", -1, 1, "", methodObject ),
- new Among ( "kirri", -1, 1, "", methodObject ),
- new Among ( "duri", -1, 1, "", methodObject ),
- new Among ( "asi", -1, 1, "", methodObject ),
- new Among ( "ti", -1, 1, "", methodObject ),
- new Among ( "ontzi", -1, 1, "", methodObject ),
- new Among ( "\u00F1i", -1, 1, "", methodObject ),
- new Among ( "ak", -1, 1, "", methodObject ),
- new Among ( "ek", -1, 1, "", methodObject ),
- new Among ( "tarik", -1, 1, "", methodObject ),
- new Among ( "gibel", -1, 1, "", methodObject ),
- new Among ( "ail", -1, 1, "", methodObject ),
- new Among ( "kail", 209, 1, "", methodObject ),
- new Among ( "kan", -1, 1, "", methodObject ),
- new Among ( "tan", -1, 1, "", methodObject ),
- new Among ( "etan", 212, 1, "", methodObject ),
- new Among ( "en", -1, 4, "", methodObject ),
- new Among ( "ren", 214, 2, "", methodObject ),
- new Among ( "garren", 215, 1, "", methodObject ),
- new Among ( "gerren", 215, 1, "", methodObject ),
- new Among ( "urren", 215, 1, "", methodObject ),
- new Among ( "ten", 214, 4, "", methodObject ),
- new Among ( "tzen", 214, 4, "", methodObject ),
- new Among ( "zain", -1, 1, "", methodObject ),
- new Among ( "tzain", 221, 1, "", methodObject ),
- new Among ( "kin", -1, 1, "", methodObject ),
- new Among ( "min", -1, 1, "", methodObject ),
- new Among ( "dun", -1, 1, "", methodObject ),
- new Among ( "asun", -1, 1, "", methodObject ),
- new Among ( "tasun", 226, 1, "", methodObject ),
- new Among ( "aizun", -1, 1, "", methodObject ),
- new Among ( "ondo", -1, 1, "", methodObject ),
- new Among ( "kondo", 229, 1, "", methodObject ),
- new Among ( "go", -1, 1, "", methodObject ),
- new Among ( "ngo", 231, 1, "", methodObject ),
- new Among ( "zio", -1, 1, "", methodObject ),
- new Among ( "ko", -1, 1, "", methodObject ),
- new Among ( "trako", 234, 5, "", methodObject ),
- new Among ( "tako", 234, 1, "", methodObject ),
- new Among ( "etako", 236, 1, "", methodObject ),
- new Among ( "eko", 234, 1, "", methodObject ),
- new Among ( "tariko", 234, 1, "", methodObject ),
- new Among ( "sko", 234, 1, "", methodObject ),
- new Among ( "tuko", 234, 1, "", methodObject ),
- new Among ( "minutuko", 241, 6, "", methodObject ),
- new Among ( "zko", 234, 1, "", methodObject ),
- new Among ( "no", -1, 1, "", methodObject ),
- new Among ( "zino", 244, 1, "", methodObject ),
- new Among ( "ro", -1, 1, "", methodObject ),
- new Among ( "aro", 246, 1, "", methodObject ),
- new Among ( "igaro", 247, 9, "", methodObject ),
- new Among ( "taro", 247, 1, "", methodObject ),
- new Among ( "zaro", 247, 1, "", methodObject ),
- new Among ( "ero", 246, 1, "", methodObject ),
- new Among ( "giro", 246, 1, "", methodObject ),
- new Among ( "oro", 246, 1, "", methodObject ),
- new Among ( "oso", -1, 1, "", methodObject ),
- new Among ( "to", -1, 1, "", methodObject ),
- new Among ( "tto", 255, 1, "", methodObject ),
- new Among ( "zto", 255, 1, "", methodObject ),
- new Among ( "txo", -1, 1, "", methodObject ),
- new Among ( "tzo", -1, 1, "", methodObject ),
- new Among ( "gintzo", 259, 1, "", methodObject ),
- new Among ( "\u00F1o", -1, 1, "", methodObject ),
- new Among ( "zp", -1, 1, "", methodObject ),
- new Among ( "ar", -1, 1, "", methodObject ),
- new Among ( "dar", 263, 1, "", methodObject ),
- new Among ( "behar", 263, 1, "", methodObject ),
- new Among ( "zehar", 263, 7, "", methodObject ),
- new Among ( "liar", 263, 1, "", methodObject ),
- new Among ( "tiar", 263, 1, "", methodObject ),
- new Among ( "tar", 263, 1, "", methodObject ),
- new Among ( "tzar", 263, 1, "", methodObject ),
- new Among ( "or", -1, 2, "", methodObject ),
- new Among ( "kor", 271, 1, "", methodObject ),
- new Among ( "os", -1, 1, "", methodObject ),
- new Among ( "ket", -1, 1, "", methodObject ),
- new Among ( "du", -1, 1, "", methodObject ),
- new Among ( "mendu", 275, 1, "", methodObject ),
- new Among ( "ordu", 275, 1, "", methodObject ),
- new Among ( "leku", -1, 1, "", methodObject ),
- new Among ( "buru", -1, 2, "", methodObject ),
- new Among ( "duru", -1, 1, "", methodObject ),
- new Among ( "tsu", -1, 1, "", methodObject ),
- new Among ( "tu", -1, 1, "", methodObject ),
- new Among ( "tatu", 282, 4, "", methodObject ),
- new Among ( "mentu", 282, 1, "", methodObject ),
- new Among ( "estu", 282, 1, "", methodObject ),
- new Among ( "txu", -1, 1, "", methodObject ),
- new Among ( "zu", -1, 1, "", methodObject ),
- new Among ( "tzu", 287, 1, "", methodObject ),
- new Among ( "gintzu", 288, 1, "", methodObject ),
- new Among ( "z", -1, 1, "", methodObject ),
- new Among ( "ez", 290, 1, "", methodObject ),
- new Among ( "eroz", 290, 1, "", methodObject ),
- new Among ( "tz", 290, 1, "", methodObject ),
- new Among ( "koitz", 293, 1, "", methodObject )
- };
+ private static final char g_v[] = {17, 65, 16 };
- private final static Among a_2[] = {
- new Among ( "zlea", -1, 2, "", methodObject ),
- new Among ( "keria", -1, 1, "", methodObject ),
- new Among ( "la", -1, 1, "", methodObject ),
- new Among ( "era", -1, 1, "", methodObject ),
- new Among ( "dade", -1, 1, "", methodObject ),
- new Among ( "tade", -1, 1, "", methodObject ),
- new Among ( "date", -1, 1, "", methodObject ),
- new Among ( "tate", -1, 1, "", methodObject ),
- new Among ( "gi", -1, 1, "", methodObject ),
- new Among ( "ki", -1, 1, "", methodObject ),
- new Among ( "ik", -1, 1, "", methodObject ),
- new Among ( "lanik", 10, 1, "", methodObject ),
- new Among ( "rik", 10, 1, "", methodObject ),
- new Among ( "larik", 12, 1, "", methodObject ),
- new Among ( "ztik", 10, 1, "", methodObject ),
- new Among ( "go", -1, 1, "", methodObject ),
- new Among ( "ro", -1, 1, "", methodObject ),
- new Among ( "ero", 16, 1, "", methodObject ),
- new Among ( "to", -1, 1, "", methodObject )
- };
+ private int I_p2;
+ private int I_p1;
+ private int I_pV;
- private static final char g_v[] = {17, 65, 16 };
- private int I_p2;
- private int I_p1;
- private int I_pV;
-
- private void copy_from(BasqueStemmer other) {
- I_p2 = other.I_p2;
- I_p1 = other.I_p1;
- I_pV = other.I_pV;
- super.copy_from(other);
- }
-
- private boolean r_mark_regions() {
- int v_1;
- int v_2;
- int v_3;
- int v_6;
- int v_8;
- // (, line 25
- I_pV = limit;
- I_p1 = limit;
- I_p2 = limit;
- // do, line 31
- v_1 = cursor;
- lab0: do {
- // (, line 31
- // or, line 33
- lab1: do {
- v_2 = cursor;
- lab2: do {
- // (, line 32
- if (!(in_grouping(g_v, 97, 117)))
- {
- break lab2;
- }
- // or, line 32
- lab3: do {
- v_3 = cursor;
- lab4: do {
- // (, line 32
- if (!(out_grouping(g_v, 97, 117)))
- {
- break lab4;
- }
- // gopast, line 32
- golab5: while(true)
- {
- lab6: do {
- if (!(in_grouping(g_v, 97, 117)))
- {
- break lab6;
- }
- break golab5;
- } while (false);
- if (cursor >= limit)
- {
- break lab4;
- }
- cursor++;
- }
- break lab3;
- } while (false);
- cursor = v_3;
- // (, line 32
- if (!(in_grouping(g_v, 97, 117)))
- {
- break lab2;
- }
- // gopast, line 32
- golab7: while(true)
- {
- lab8: do {
- if (!(out_grouping(g_v, 97, 117)))
- {
- break lab8;
- }
- break golab7;
- } while (false);
- if (cursor >= limit)
- {
- break lab2;
- }
- cursor++;
- }
- } while (false);
- break lab1;
- } while (false);
- cursor = v_2;
- // (, line 34
- if (!(out_grouping(g_v, 97, 117)))
- {
- break lab0;
- }
- // or, line 34
- lab9: do {
- v_6 = cursor;
- lab10: do {
- // (, line 34
- if (!(out_grouping(g_v, 97, 117)))
- {
- break lab10;
- }
- // gopast, line 34
- golab11: while(true)
- {
- lab12: do {
- if (!(in_grouping(g_v, 97, 117)))
- {
- break lab12;
- }
- break golab11;
- } while (false);
- if (cursor >= limit)
- {
- break lab10;
- }
- cursor++;
- }
- break lab9;
- } while (false);
- cursor = v_6;
- // (, line 34
- if (!(in_grouping(g_v, 97, 117)))
- {
- break lab0;
- }
- // next, line 34
- if (cursor >= limit)
- {
- break lab0;
- }
- cursor++;
- } while (false);
- } while (false);
- // setmark pV, line 35
- I_pV = cursor;
- } while (false);
- cursor = v_1;
- // do, line 37
- v_8 = cursor;
- lab13: do {
- // (, line 37
- // gopast, line 38
- golab14: while(true)
- {
- lab15: do {
- if (!(in_grouping(g_v, 97, 117)))
- {
- break lab15;
- }
- break golab14;
- } while (false);
- if (cursor >= limit)
- {
- break lab13;
- }
- cursor++;
- }
- // gopast, line 38
- golab16: while(true)
- {
- lab17: do {
- if (!(out_grouping(g_v, 97, 117)))
- {
- break lab17;
- }
- break golab16;
- } while (false);
- if (cursor >= limit)
- {
- break lab13;
- }
- cursor++;
- }
- // setmark p1, line 38
- I_p1 = cursor;
- // gopast, line 39
- golab18: while(true)
- {
- lab19: do {
- if (!(in_grouping(g_v, 97, 117)))
- {
- break lab19;
- }
- break golab18;
- } while (false);
- if (cursor >= limit)
- {
- break lab13;
- }
- cursor++;
- }
- // gopast, line 39
- golab20: while(true)
- {
- lab21: do {
- if (!(out_grouping(g_v, 97, 117)))
- {
- break lab21;
- }
- break golab20;
- } while (false);
- if (cursor >= limit)
- {
- break lab13;
- }
- cursor++;
- }
- // setmark p2, line 39
- I_p2 = cursor;
- } while (false);
- cursor = v_8;
- return true;
- }
-
- private boolean r_RV() {
- if (!(I_pV <= cursor))
- {
- return false;
- }
- return true;
- }
+ private boolean r_mark_regions() {
+ I_pV = limit;
+ I_p1 = limit;
+ I_p2 = limit;
+ int v_1 = cursor;
+lab0: {
+lab1: {
+ int v_2 = cursor;
+lab2: {
+ if (!(in_grouping(g_v, 97, 117)))
+ {
+ break lab2;
+ }
+lab3: {
+ int v_3 = cursor;
+lab4: {
+ if (!(out_grouping(g_v, 97, 117)))
+ {
+ break lab4;
+ }
+golab5: while(true)
+ {
+lab6: {
+ if (!(in_grouping(g_v, 97, 117)))
+ {
+ break lab6;
+ }
+ break golab5;
+}
+if (cursor >= limit)
+{
+ break lab4;
+}
+cursor++;
+ }
+break lab3;
+}
+cursor = v_3;
+if (!(in_grouping(g_v, 97, 117)))
+{
+ break lab2;
+}
+golab7: while(true)
+{
+lab8: {
+ if (!(out_grouping(g_v, 97, 117)))
+ {
+ break lab8;
+ }
+ break golab7;
+}
+if (cursor >= limit)
+{
+ break lab2;
+}
+cursor++;
+}
+}
+break lab1;
+}
+cursor = v_2;
+if (!(out_grouping(g_v, 97, 117)))
+{
+ break lab0;
+}
+lab9: {
+ int v_6 = cursor;
+lab10: {
+ if (!(out_grouping(g_v, 97, 117)))
+ {
+ break lab10;
+ }
+golab11: while(true)
+ {
+lab12: {
+ if (!(in_grouping(g_v, 97, 117)))
+ {
+ break lab12;
+ }
+ break golab11;
+}
+if (cursor >= limit)
+{
+ break lab10;
+}
+cursor++;
+ }
+break lab9;
+}
+cursor = v_6;
+if (!(in_grouping(g_v, 97, 117)))
+{
+ break lab0;
+}
+if (cursor >= limit)
+{
+ break lab0;
+}
+cursor++;
+}
+}
+I_pV = cursor;
+}
+cursor = v_1;
+int v_8 = cursor;
+lab13: {
+golab14: while(true)
+ {
+lab15: {
+ if (!(in_grouping(g_v, 97, 117)))
+ {
+ break lab15;
+ }
+ break golab14;
+}
+if (cursor >= limit)
+{
+ break lab13;
+}
+cursor++;
+ }
+golab16: while(true)
+{
+lab17: {
+ if (!(out_grouping(g_v, 97, 117)))
+ {
+ break lab17;
+ }
+ break golab16;
+}
+if (cursor >= limit)
+{
+ break lab13;
+}
+cursor++;
+}
+I_p1 = cursor;
+golab18: while(true)
+{
+lab19: {
+ if (!(in_grouping(g_v, 97, 117)))
+ {
+ break lab19;
+ }
+ break golab18;
+}
+if (cursor >= limit)
+{
+ break lab13;
+}
+cursor++;
+}
+golab20: while(true)
+{
+lab21: {
+ if (!(out_grouping(g_v, 97, 117)))
+ {
+ break lab21;
+ }
+ break golab20;
+}
+if (cursor >= limit)
+{
+ break lab13;
+}
+cursor++;
+}
+I_p2 = cursor;
+}
+cursor = v_8;
+return true;
+ }
- private boolean r_R2() {
- if (!(I_p2 <= cursor))
- {
- return false;
- }
- return true;
- }
+private boolean r_RV() {
+ if (!(I_pV <= cursor))
+ {
+ return false;
+ }
+ return true;
+}
- private boolean r_R1() {
- if (!(I_p1 <= cursor))
- {
- return false;
- }
- return true;
- }
+private boolean r_R2() {
+ if (!(I_p2 <= cursor))
+ {
+ return false;
+ }
+ return true;
+}
- private boolean r_aditzak() {
- int among_var;
- // (, line 49
- // [, line 50
- ket = cursor;
- // substring, line 50
- among_var = find_among_b(a_0, 109);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 50
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 61
- // call RV, line 61
- if (!r_RV())
- {
- return false;
- }
- // delete, line 61
- slice_del();
- break;
- case 2:
- // (, line 63
- // call R2, line 63
- if (!r_R2())
- {
- return false;
- }
- // delete, line 63
- slice_del();
- break;
- case 3:
- // (, line 65
- // <-, line 65
- slice_from("atseden");
- break;
- case 4:
- // (, line 67
- // <-, line 67
- slice_from("arabera");
- break;
- case 5:
- // (, line 69
- // <-, line 69
- slice_from("baditu");
- break;
- }
- return true;
- }
+private boolean r_R1() {
+ if (!(I_p1 <= cursor))
+ {
+ return false;
+ }
+ return true;
+}
- private boolean r_izenak() {
- int among_var;
- // (, line 74
- // [, line 75
- ket = cursor;
- // substring, line 75
- among_var = find_among_b(a_1, 295);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 75
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 105
- // call RV, line 105
- if (!r_RV())
- {
- return false;
- }
- // delete, line 105
- slice_del();
- break;
- case 2:
- // (, line 107
- // call R2, line 107
- if (!r_R2())
- {
- return false;
- }
- // delete, line 107
- slice_del();
- break;
- case 3:
- // (, line 109
- // <-, line 109
- slice_from("jok");
- break;
- case 4:
- // (, line 111
- // call R1, line 111
- if (!r_R1())
- {
- return false;
- }
- // delete, line 111
- slice_del();
- break;
- case 5:
- // (, line 113
- // <-, line 113
- slice_from("tra");
- break;
- case 6:
- // (, line 115
- // <-, line 115
- slice_from("minutu");
- break;
- case 7:
- // (, line 117
- // <-, line 117
- slice_from("zehar");
- break;
- case 8:
- // (, line 119
- // <-, line 119
- slice_from("geldi");
- break;
- case 9:
- // (, line 121
- // <-, line 121
- slice_from("igaro");
- break;
- case 10:
- // (, line 123
- // <-, line 123
- slice_from("aurka");
- break;
- }
- return true;
- }
+private boolean r_aditzak() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_0);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!r_RV())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!r_R2())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 3:
+ slice_from("atseden");
+ break;
+ case 4:
+ slice_from("arabera");
+ break;
+ case 5:
+ slice_from("baditu");
+ break;
+ }
+ return true;
+}
- private boolean r_adjetiboak() {
- int among_var;
- // (, line 127
- // [, line 128
- ket = cursor;
- // substring, line 128
- among_var = find_among_b(a_2, 19);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 128
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 131
- // call RV, line 131
- if (!r_RV())
- {
- return false;
- }
- // delete, line 131
- slice_del();
- break;
- case 2:
- // (, line 133
- // <-, line 133
- slice_from("z");
- break;
- }
- return true;
- }
+private boolean r_izenak() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_1);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!r_RV())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!r_R2())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 3:
+ slice_from("jok");
+ break;
+ case 4:
+ if (!r_R1())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 5:
+ slice_from("tra");
+ break;
+ case 6:
+ slice_from("minutu");
+ break;
+ case 7:
+ slice_from("zehar");
+ break;
+ case 8:
+ slice_from("geldi");
+ break;
+ case 9:
+ slice_from("igaro");
+ break;
+ case 10:
+ slice_from("aurka");
+ break;
+ }
+ return true;
+}
- @Override
- public boolean stem() {
- int v_1;
- int v_2;
- int v_3;
- int v_4;
- // (, line 139
- // do, line 140
- v_1 = cursor;
- lab0: do {
- // call mark_regions, line 140
- if (!r_mark_regions())
- {
- break lab0;
- }
- } while (false);
- cursor = v_1;
- // backwards, line 141
- limit_backward = cursor; cursor = limit;
- // (, line 141
- // repeat, line 142
- replab1: while(true)
- {
- v_2 = limit - cursor;
- lab2: do {
- // call aditzak, line 142
- if (!r_aditzak())
- {
- break lab2;
- }
- continue replab1;
- } while (false);
- cursor = limit - v_2;
- break replab1;
- }
- // repeat, line 143
- replab3: while(true)
- {
- v_3 = limit - cursor;
- lab4: do {
- // call izenak, line 143
- if (!r_izenak())
- {
- break lab4;
- }
- continue replab3;
- } while (false);
- cursor = limit - v_3;
- break replab3;
- }
- // do, line 144
- v_4 = limit - cursor;
- lab5: do {
- // call adjetiboak, line 144
- if (!r_adjetiboak())
- {
- break lab5;
- }
- } while (false);
- cursor = limit - v_4;
- cursor = limit_backward; return true;
- }
+private boolean r_adjetiboak() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_2);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!r_RV())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ slice_from("z");
+ break;
+ }
+ return true;
+}
- @Override
- public boolean equals( Object o ) {
- return o instanceof BasqueStemmer;
+public boolean stem() {
+ r_mark_regions();
+ limit_backward = cursor;
+ cursor = limit;
+ while(true)
+ {
+ int v_2 = limit - cursor;
+lab0: {
+ if (!r_aditzak())
+ {
+ break lab0;
}
-
- @Override
- public int hashCode() {
- return BasqueStemmer.class.getName().hashCode();
+ continue;
+}
+cursor = limit - v_2;
+break;
+ }
+while(true)
+{
+ int v_3 = limit - cursor;
+lab1: {
+ if (!r_izenak())
+ {
+ break lab1;
}
+ continue;
+}
+cursor = limit - v_3;
+break;
+}
+int v_4 = limit - cursor;
+r_adjetiboak();
+cursor = limit - v_4;
+cursor = limit_backward;
+return true;
+}
+
+@Override
+public boolean equals( Object o ) {
+ return o instanceof BasqueStemmer;
+}
+
+@Override
+public int hashCode() {
+ return BasqueStemmer.class.getName().hashCode();
+}
diff --git a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/CatalanStemmer.java b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/CatalanStemmer.java
index d812ea9..19da21e 100644
--- a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/CatalanStemmer.java
+++ b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/CatalanStemmer.java
@@ -1,1070 +1,900 @@
-// This file was generated automatically by the Snowball to Java compiler
+// Generated by Snowball 2.0.0 - https://snowballstem.org/
package org.tartarus.snowball.ext;
import org.tartarus.snowball.Among;
-import org.tartarus.snowball.SnowballProgram;
- /**
- * This class was automatically generated by a Snowball to Java compiler
- * It implements the stemming algorithm defined by a snowball script.
- */
+/**
+ * This class implements the stemming algorithm defined by a snowball script.
+ * <p>
+ * Generated by Snowball 2.0.0 - https://snowballstem.org/
+ * </p>
+ */
+@SuppressWarnings("unused")
+public class CatalanStemmer extends org.tartarus.snowball.SnowballStemmer {
-@SuppressWarnings("unused") public class CatalanStemmer extends SnowballProgram {
+ private static final long serialVersionUID = 1L;
+ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
-private static final long serialVersionUID = 1L;
+ private final static Among a_0[] = {
+ new Among("", -1, 7),
+ new Among("\u00B7", 0, 6),
+ new Among("\u00E0", 0, 1),
+ new Among("\u00E1", 0, 1),
+ new Among("\u00E8", 0, 2),
+ new Among("\u00E9", 0, 2),
+ new Among("\u00EC", 0, 3),
+ new Among("\u00ED", 0, 3),
+ new Among("\u00EF", 0, 3),
+ new Among("\u00F2", 0, 4),
+ new Among("\u00F3", 0, 4),
+ new Among("\u00FA", 0, 5),
+ new Among("\u00FC", 0, 5)
+ };
- /* patched */ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
+ private final static Among a_1[] = {
+ new Among("la", -1, 1),
+ new Among("-la", 0, 1),
+ new Among("sela", 0, 1),
+ new Among("le", -1, 1),
+ new Among("me", -1, 1),
+ new Among("-me", 4, 1),
+ new Among("se", -1, 1),
+ new Among("-te", -1, 1),
+ new Among("hi", -1, 1),
+ new Among("'hi", 8, 1),
+ new Among("li", -1, 1),
+ new Among("-li", 10, 1),
+ new Among("'l", -1, 1),
+ new Among("'m", -1, 1),
+ new Among("-m", -1, 1),
+ new Among("'n", -1, 1),
+ new Among("-n", -1, 1),
+ new Among("ho", -1, 1),
+ new Among("'ho", 17, 1),
+ new Among("lo", -1, 1),
+ new Among("selo", 19, 1),
+ new Among("'s", -1, 1),
+ new Among("las", -1, 1),
+ new Among("selas", 22, 1),
+ new Among("les", -1, 1),
+ new Among("-les", 24, 1),
+ new Among("'ls", -1, 1),
+ new Among("-ls", -1, 1),
+ new Among("'ns", -1, 1),
+ new Among("-ns", -1, 1),
+ new Among("ens", -1, 1),
+ new Among("los", -1, 1),
+ new Among("selos", 31, 1),
+ new Among("nos", -1, 1),
+ new Among("-nos", 33, 1),
+ new Among("vos", -1, 1),
+ new Among("us", -1, 1),
+ new Among("-us", 36, 1),
+ new Among("'t", -1, 1)
+ };
- private final static Among a_0[] = {
- new Among ( "", -1, 13, "", methodObject ),
- new Among ( "\u00B7", 0, 12, "", methodObject ),
- new Among ( "\u00E0", 0, 2, "", methodObject ),
- new Among ( "\u00E1", 0, 1, "", methodObject ),
- new Among ( "\u00E8", 0, 4, "", methodObject ),
- new Among ( "\u00E9", 0, 3, "", methodObject ),
- new Among ( "\u00EC", 0, 6, "", methodObject ),
- new Among ( "\u00ED", 0, 5, "", methodObject ),
- new Among ( "\u00EF", 0, 11, "", methodObject ),
- new Among ( "\u00F2", 0, 8, "", methodObject ),
- new Among ( "\u00F3", 0, 7, "", methodObject ),
- new Among ( "\u00FA", 0, 9, "", methodObject ),
- new Among ( "\u00FC", 0, 10, "", methodObject )
- };
+ private final static Among a_2[] = {
+ new Among("ica", -1, 4),
+ new Among("l\u00F3gica", 0, 3),
+ new Among("enca", -1, 1),
+ new Among("ada", -1, 2),
+ new Among("ancia", -1, 1),
+ new Among("encia", -1, 1),
+ new Among("\u00E8ncia", -1, 1),
+ new Among("\u00EDcia", -1, 1),
+ new Among("logia", -1, 3),
+ new Among("inia", -1, 1),
+ new Among("\u00EDinia", 9, 1),
+ new Among("eria", -1, 1),
+ new Among("\u00E0ria", -1, 1),
+ new Among("at\u00F2ria", -1, 1),
+ new Among("alla", -1, 1),
+ new Among("ella", -1, 1),
+ new Among("\u00EDvola", -1, 1),
+ new Among("ima", -1, 1),
+ new Among("\u00EDssima", 17, 1),
+ new Among("qu\u00EDssima", 18, 5),
+ new Among("ana", -1, 1),
+ new Among("ina", -1, 1),
+ new Among("era", -1, 1),
+ new Among("sfera", 22, 1),
+ new Among("ora", -1, 1),
+ new Among("dora", 24, 1),
+ new Among("adora", 25, 1),
+ new Among("adura", -1, 1),
+ new Among("esa", -1, 1),
+ new Among("osa", -1, 1),
+ new Among("assa", -1, 1),
+ new Among("essa", -1, 1),
+ new Among("issa", -1, 1),
+ new Among("eta", -1, 1),
+ new Among("ita", -1, 1),
+ new Among("ota", -1, 1),
+ new Among("ista", -1, 1),
+ new Among("ialista", 36, 1),
+ new Among("ionista", 36, 1),
+ new Among("iva", -1, 1),
+ new Among("ativa", 39, 1),
+ new Among("n\u00E7a", -1, 1),
+ new Among("log\u00EDa", -1, 3),
+ new Among("ic", -1, 4),
+ new Among("\u00EDstic", 43, 1),
+ new Among("enc", -1, 1),
+ new Among("esc", -1, 1),
+ new Among("ud", -1, 1),
+ new Among("atge", -1, 1),
+ new Among("ble", -1, 1),
+ new Among("able", 49, 1),
+ new Among("ible", 49, 1),
+ new Among("isme", -1, 1),
+ new Among("ialisme", 52, 1),
+ new Among("ionisme", 52, 1),
+ new Among("ivisme", 52, 1),
+ new Among("aire", -1, 1),
+ new Among("icte", -1, 1),
+ new Among("iste", -1, 1),
+ new Among("ici", -1, 1),
+ new Among("\u00EDci", -1, 1),
+ new Among("logi", -1, 3),
+ new Among("ari", -1, 1),
+ new Among("tori", -1, 1),
+ new Among("al", -1, 1),
+ new Among("il", -1, 1),
+ new Among("all", -1, 1),
+ new Among("ell", -1, 1),
+ new Among("\u00EDvol", -1, 1),
+ new Among("isam", -1, 1),
+ new Among("issem", -1, 1),
+ new Among("\u00ECssem", -1, 1),
+ new Among("\u00EDssem", -1, 1),
+ new Among("\u00EDssim", -1, 1),
+ new Among("qu\u00EDssim", 73, 5),
+ new Among("amen", -1, 1),
+ new Among("\u00ECssin", -1, 1),
+ new Among("ar", -1, 1),
+ new Among("ificar", 77, 1),
+ new Among("egar", 77, 1),
+ new Among("ejar", 77, 1),
+ new Among("itar", 77, 1),
+ new Among("itzar", 77, 1),
+ new Among("fer", -1, 1),
+ new Among("or", -1, 1),
+ new Among("dor", 84, 1),
+ new Among("dur", -1, 1),
+ new Among("doras", -1, 1),
+ new Among("ics", -1, 4),
+ new Among("l\u00F3gics", 88, 3),
+ new Among("uds", -1, 1),
+ new Among("nces", -1, 1),
+ new Among("ades", -1, 2),
+ new Among("ancies", -1, 1),
+ new Among("encies", -1, 1),
+ new Among("\u00E8ncies", -1, 1),
+ new Among("\u00EDcies", -1, 1),
+ new Among("logies", -1, 3),
+ new Among("inies", -1, 1),
+ new Among("\u00EDnies", -1, 1),
+ new Among("eries", -1, 1),
+ new Among("\u00E0ries", -1, 1),
+ new Among("at\u00F2ries", -1, 1),
+ new Among("bles", -1, 1),
+ new Among("ables", 103, 1),
+ new Among("ibles", 103, 1),
+ new Among("imes", -1, 1),
+ new Among("\u00EDssimes", 106, 1),
+ new Among("qu\u00EDssimes", 107, 5),
+ new Among("formes", -1, 1),
+ new Among("ismes", -1, 1),
+ new Among("ialismes", 110, 1),
+ new Among("ines", -1, 1),
+ new Among("eres", -1, 1),
+ new Among("ores", -1, 1),
+ new Among("dores", 114, 1),
+ new Among("idores", 115, 1),
+ new Among("dures", -1, 1),
+ new Among("eses", -1, 1),
+ new Among("oses", -1, 1),
+ new Among("asses", -1, 1),
+ new Among("ictes", -1, 1),
+ new Among("ites", -1, 1),
+ new Among("otes", -1, 1),
+ new Among("istes", -1, 1),
+ new Among("ialistes", 124, 1),
+ new Among("ionistes", 124, 1),
+ new Among("iques", -1, 4),
+ new Among("l\u00F3giques", 127, 3),
+ new Among("ives", -1, 1),
+ new Among("atives", 129, 1),
+ new Among("log\u00EDes", -1, 3),
+ new Among("alleng\u00FCes", -1, 1),
+ new Among("icis", -1, 1),
+ new Among("\u00EDcis", -1, 1),
+ new Among("logis", -1, 3),
+ new Among("aris", -1, 1),
+ new Among("toris", -1, 1),
+ new Among("ls", -1, 1),
+ new Among("als", 138, 1),
+ new Among("ells", 138, 1),
+ new Among("ims", -1, 1),
+ new Among("\u00EDssims", 141, 1),
+ new Among("qu\u00EDssims", 142, 5),
+ new Among("ions", -1, 1),
+ new Among("cions", 144, 1),
+ new Among("acions", 145, 2),
+ new Among("esos", -1, 1),
+ new Among("osos", -1, 1),
+ new Among("assos", -1, 1),
+ new Among("issos", -1, 1),
+ new Among("ers", -1, 1),
+ new Among("ors", -1, 1),
+ new Among("dors", 152, 1),
+ new Among("adors", 153, 1),
+ new Among("idors", 153, 1),
+ new Among("ats", -1, 1),
+ new Among("itats", 156, 1),
+ new Among("bilitats", 157, 1),
+ new Among("ivitats", 157, 1),
+ new Among("ativitats", 159, 1),
+ new Among("\u00EFtats", 156, 1),
+ new Among("ets", -1, 1),
+ new Among("ants", -1, 1),
+ new Among("ents", -1, 1),
+ new Among("ments", 164, 1),
+ new Among("aments", 165, 1),
+ new Among("ots", -1, 1),
+ new Among("uts", -1, 1),
+ new Among("ius", -1, 1),
+ new Among("trius", 169, 1),
+ new Among("atius", 169, 1),
+ new Among("\u00E8s", -1, 1),
+ new Among("\u00E9s", -1, 1),
+ new Among("\u00EDs", -1, 1),
+ new Among("d\u00EDs", 174, 1),
+ new Among("\u00F3s", -1, 1),
+ new Among("itat", -1, 1),
+ new Among("bilitat", 177, 1),
+ new Among("ivitat", 177, 1),
+ new Among("ativitat", 179, 1),
+ new Among("\u00EFtat", -1, 1),
+ new Among("et", -1, 1),
+ new Among("ant", -1, 1),
+ new Among("ent", -1, 1),
+ new Among("ient", 184, 1),
+ new Among("ment", 184, 1),
+ new Among("ament", 186, 1),
+ new Among("isament", 187, 1),
+ new Among("ot", -1, 1),
+ new Among("isseu", -1, 1),
+ new Among("\u00ECsseu", -1, 1),
+ new Among("\u00EDsseu", -1, 1),
+ new Among("triu", -1, 1),
+ new Among("\u00EDssiu", -1, 1),
+ new Among("atiu", -1, 1),
+ new Among("\u00F3", -1, 1),
+ new Among("i\u00F3", 196, 1),
+ new Among("ci\u00F3", 197, 1),
+ new Among("aci\u00F3", 198, 1)
+ };
- private final static Among a_1[] = {
- new Among ( "la", -1, 1, "", methodObject ),
- new Among ( "-la", 0, 1, "", methodObject ),
- new Among ( "sela", 0, 1, "", methodObject ),
- new Among ( "le", -1, 1, "", methodObject ),
- new Among ( "me", -1, 1, "", methodObject ),
- new Among ( "-me", 4, 1, "", methodObject ),
- new Among ( "se", -1, 1, "", methodObject ),
- new Among ( "-te", -1, 1, "", methodObject ),
- new Among ( "hi", -1, 1, "", methodObject ),
- new Among ( "'hi", 8, 1, "", methodObject ),
- new Among ( "li", -1, 1, "", methodObject ),
- new Among ( "-li", 10, 1, "", methodObject ),
- new Among ( "'l", -1, 1, "", methodObject ),
- new Among ( "'m", -1, 1, "", methodObject ),
- new Among ( "-m", -1, 1, "", methodObject ),
- new Among ( "'n", -1, 1, "", methodObject ),
- new Among ( "-n", -1, 1, "", methodObject ),
- new Among ( "ho", -1, 1, "", methodObject ),
- new Among ( "'ho", 17, 1, "", methodObject ),
- new Among ( "lo", -1, 1, "", methodObject ),
- new Among ( "selo", 19, 1, "", methodObject ),
- new Among ( "'s", -1, 1, "", methodObject ),
- new Among ( "las", -1, 1, "", methodObject ),
- new Among ( "selas", 22, 1, "", methodObject ),
- new Among ( "les", -1, 1, "", methodObject ),
- new Among ( "-les", 24, 1, "", methodObject ),
- new Among ( "'ls", -1, 1, "", methodObject ),
- new Among ( "-ls", -1, 1, "", methodObject ),
- new Among ( "'ns", -1, 1, "", methodObject ),
- new Among ( "-ns", -1, 1, "", methodObject ),
- new Among ( "ens", -1, 1, "", methodObject ),
- new Among ( "los", -1, 1, "", methodObject ),
- new Among ( "selos", 31, 1, "", methodObject ),
- new Among ( "nos", -1, 1, "", methodObject ),
- new Among ( "-nos", 33, 1, "", methodObject ),
- new Among ( "vos", -1, 1, "", methodObject ),
- new Among ( "us", -1, 1, "", methodObject ),
- new Among ( "-us", 36, 1, "", methodObject ),
- new Among ( "'t", -1, 1, "", methodObject )
- };
+ private final static Among a_3[] = {
+ new Among("aba", -1, 1),
+ new Among("esca", -1, 1),
+ new Among("isca", -1, 1),
+ new Among("\u00EFsca", -1, 1),
+ new Among("ada", -1, 1),
+ new Among("ida", -1, 1),
+ new Among("uda", -1, 1),
+ new Among("\u00EFda", -1, 1),
+ new Among("ia", -1, 1),
+ new Among("aria", 8, 1),
+ new Among("iria", 8, 1),
+ new Among("ara", -1, 1),
+ new Among("iera", -1, 1),
+ new Among("ira", -1, 1),
+ new Among("adora", -1, 1),
+ new Among("\u00EFra", -1, 1),
+ new Among("ava", -1, 1),
+ new Among("ixa", -1, 1),
+ new Among("itza", -1, 1),
+ new Among("\u00EDa", -1, 1),
+ new Among("ar\u00EDa", 19, 1),
+ new Among("er\u00EDa", 19, 1),
+ new Among("ir\u00EDa", 19, 1),
+ new Among("\u00EFa", -1, 1),
+ new Among("isc", -1, 1),
+ new Among("\u00EFsc", -1, 1),
+ new Among("ad", -1, 1),
+ new Among("ed", -1, 1),
+ new Among("id", -1, 1),
+ new Among("ie", -1, 1),
+ new Among("re", -1, 1),
+ new Among("dre", 30, 1),
+ new Among("ase", -1, 1),
+ new Among("iese", -1, 1),
+ new Among("aste", -1, 1),
+ new Among("iste", -1, 1),
+ new Among("ii", -1, 1),
+ new Among("ini", -1, 1),
+ new Among("esqui", -1, 1),
+ new Among("eixi", -1, 1),
+ new Among("itzi", -1, 1),
+ new Among("am", -1, 1),
+ new Among("em", -1, 1),
+ new Among("arem", 42, 1),
+ new Among("irem", 42, 1),
+ new Among("\u00E0rem", 42, 1),
+ new Among("\u00EDrem", 42, 1),
+ new Among("\u00E0ssem", 42, 1),
+ new Among("\u00E9ssem", 42, 1),
+ new Among("iguem", 42, 1),
+ new Among("\u00EFguem", 42, 1),
+ new Among("avem", 42, 1),
+ new Among("\u00E0vem", 42, 1),
+ new Among("\u00E1vem", 42, 1),
+ new Among("ir\u00ECem", 42, 1),
+ new Among("\u00EDem", 42, 1),
+ new Among("ar\u00EDem", 55, 1),
+ new Among("ir\u00EDem", 55, 1),
+ new Among("assim", -1, 1),
+ new Among("essim", -1, 1),
+ new Among("issim", -1, 1),
+ new Among("\u00E0ssim", -1, 1),
+ new Among("\u00E8ssim", -1, 1),
+ new Among("\u00E9ssim", -1, 1),
+ new Among("\u00EDssim", -1, 1),
+ new Among("\u00EFm", -1, 1),
+ new Among("an", -1, 1),
+ new Among("aban", 66, 1),
+ new Among("arian", 66, 1),
+ new Among("aran", 66, 1),
+ new Among("ieran", 66, 1),
+ new Among("iran", 66, 1),
+ new Among("\u00EDan", 66, 1),
+ new Among("ar\u00EDan", 72, 1),
+ new Among("er\u00EDan", 72, 1),
+ new Among("ir\u00EDan", 72, 1),
+ new Among("en", -1, 1),
+ new Among("ien", 76, 1),
+ new Among("arien", 77, 1),
+ new Among("irien", 77, 1),
+ new Among("aren", 76, 1),
+ new Among("eren", 76, 1),
+ new Among("iren", 76, 1),
+ new Among("\u00E0ren", 76, 1),
+ new Among("\u00EFren", 76, 1),
+ new Among("asen", 76, 1),
+ new Among("iesen", 76, 1),
+ new Among("assen", 76, 1),
+ new Among("essen", 76, 1),
+ new Among("issen", 76, 1),
+ new Among("\u00E9ssen", 76, 1),
+ new Among("\u00EFssen", 76, 1),
+ new Among("esquen", 76, 1),
+ new Among("isquen", 76, 1),
+ new Among("\u00EFsquen", 76, 1),
+ new Among("aven", 76, 1),
+ new Among("ixen", 76, 1),
+ new Among("eixen", 96, 1),
+ new Among("\u00EFxen", 76, 1),
+ new Among("\u00EFen", 76, 1),
+ new Among("in", -1, 1),
+ new Among("inin", 100, 1),
+ new Among("sin", 100, 1),
+ new Among("isin", 102, 1),
+ new Among("assin", 102, 1),
+ new Among("essin", 102, 1),
+ new Among("issin", 102, 1),
+ new Among("\u00EFssin", 102, 1),
+ new Among("esquin", 100, 1),
+ new Among("eixin", 100, 1),
+ new Among("aron", -1, 1),
+ new Among("ieron", -1, 1),
+ new Among("ar\u00E1n", -1, 1),
+ new Among("er\u00E1n", -1, 1),
+ new Among("ir\u00E1n", -1, 1),
+ new Among("i\u00EFn", -1, 1),
+ new Among("ado", -1, 1),
+ new Among("ido", -1, 1),
+ new Among("ando", -1, 2),
+ new Among("iendo", -1, 1),
+ new Among("io", -1, 1),
+ new Among("ixo", -1, 1),
+ new Among("eixo", 121, 1),
+ new Among("\u00EFxo", -1, 1),
+ new Among("itzo", -1, 1),
+ new Among("ar", -1, 1),
+ new Among("tzar", 125, 1),
+ new Among("er", -1, 1),
+ new Among("eixer", 127, 1),
+ new Among("ir", -1, 1),
+ new Among("ador", -1, 1),
+ new Among("as", -1, 1),
+ new Among("abas", 131, 1),
+ new Among("adas", 131, 1),
+ new Among("idas", 131, 1),
+ new Among("aras", 131, 1),
+ new Among("ieras", 131, 1),
+ new Among("\u00EDas", 131, 1),
+ new Among("ar\u00EDas", 137, 1),
+ new Among("er\u00EDas", 137, 1),
+ new Among("ir\u00EDas", 137, 1),
+ new Among("ids", -1, 1),
+ new Among("es", -1, 1),
+ new Among("ades", 142, 1),
+ new Among("ides", 142, 1),
+ new Among("udes", 142, 1),
+ new Among("\u00EFdes", 142, 1),
+ new Among("atges", 142, 1),
+ new Among("ies", 142, 1),
+ new Among("aries", 148, 1),
+ new Among("iries", 148, 1),
+ new Among("ares", 142, 1),
+ new Among("ires", 142, 1),
+ new Among("adores", 142, 1),
+ new Among("\u00EFres", 142, 1),
+ new Among("ases", 142, 1),
+ new Among("ieses", 142, 1),
+ new Among("asses", 142, 1),
+ new Among("esses", 142, 1),
+ new Among("isses", 142, 1),
+ new Among("\u00EFsses", 142, 1),
+ new Among("ques", 142, 1),
+ new Among("esques", 161, 1),
+ new Among("\u00EFsques", 161, 1),
+ new Among("aves", 142, 1),
+ new Among("ixes", 142, 1),
+ new Among("eixes", 165, 1),
+ new Among("\u00EFxes", 142, 1),
+ new Among("\u00EFes", 142, 1),
+ new Among("abais", -1, 1),
+ new Among("arais", -1, 1),
+ new Among("ierais", -1, 1),
+ new Among("\u00EDais", -1, 1),
+ new Among("ar\u00EDais", 172, 1),
+ new Among("er\u00EDais", 172, 1),
+ new Among("ir\u00EDais", 172, 1),
+ new Among("aseis", -1, 1),
+ new Among("ieseis", -1, 1),
+ new Among("asteis", -1, 1),
+ new Among("isteis", -1, 1),
+ new Among("inis", -1, 1),
+ new Among("sis", -1, 1),
+ new Among("isis", 181, 1),
+ new Among("assis", 181, 1),
+ new Among("essis", 181, 1),
+ new Among("issis", 181, 1),
+ new Among("\u00EFssis", 181, 1),
+ new Among("esquis", -1, 1),
+ new Among("eixis", -1, 1),
+ new Among("itzis", -1, 1),
+ new Among("\u00E1is", -1, 1),
+ new Among("ar\u00E9is", -1, 1),
+ new Among("er\u00E9is", -1, 1),
+ new Among("ir\u00E9is", -1, 1),
+ new Among("ams", -1, 1),
+ new Among("ados", -1, 1),
+ new Among("idos", -1, 1),
+ new Among("amos", -1, 1),
+ new Among("\u00E1bamos", 197, 1),
+ new Among("\u00E1ramos", 197, 1),
+ new Among("i\u00E9ramos", 197, 1),
+ new Among("\u00EDamos", 197, 1),
+ new Among("ar\u00EDamos", 201, 1),
+ new Among("er\u00EDamos", 201, 1),
+ new Among("ir\u00EDamos", 201, 1),
+ new Among("aremos", -1, 1),
+ new Among("eremos", -1, 1),
+ new Among("iremos", -1, 1),
+ new Among("\u00E1semos", -1, 1),
+ new Among("i\u00E9semos", -1, 1),
+ new Among("imos", -1, 1),
+ new Among("adors", -1, 1),
+ new Among("ass", -1, 1),
+ new Among("erass", 212, 1),
+ new Among("ess", -1, 1),
+ new Among("ats", -1, 1),
+ new Among("its", -1, 1),
+ new Among("ents", -1, 1),
+ new Among("\u00E0s", -1, 1),
+ new Among("ar\u00E0s", 218, 1),
+ new Among("ir\u00E0s", 218, 1),
+ new Among("ar\u00E1s", -1, 1),
+ new Among("er\u00E1s", -1, 1),
+ new Among("ir\u00E1s", -1, 1),
+ new Among("\u00E9s", -1, 1),
+ new Among("ar\u00E9s", 224, 1),
+ new Among("\u00EDs", -1, 1),
+ new Among("i\u00EFs", -1, 1),
+ new Among("at", -1, 1),
+ new Among("it", -1, 1),
+ new Among("ant", -1, 1),
+ new Among("ent", -1, 1),
+ new Among("int", -1, 1),
+ new Among("ut", -1, 1),
+ new Among("\u00EFt", -1, 1),
+ new Among("au", -1, 1),
+ new Among("erau", 235, 1),
+ new Among("ieu", -1, 1),
+ new Among("ineu", -1, 1),
+ new Among("areu", -1, 1),
+ new Among("ireu", -1, 1),
+ new Among("\u00E0reu", -1, 1),
+ new Among("\u00EDreu", -1, 1),
+ new Among("asseu", -1, 1),
+ new Among("esseu", -1, 1),
+ new Among("eresseu", 244, 1),
+ new Among("\u00E0sseu", -1, 1),
+ new Among("\u00E9sseu", -1, 1),
+ new Among("igueu", -1, 1),
+ new Among("\u00EFgueu", -1, 1),
+ new Among("\u00E0veu", -1, 1),
+ new Among("\u00E1veu", -1, 1),
+ new Among("itzeu", -1, 1),
+ new Among("\u00ECeu", -1, 1),
+ new Among("ir\u00ECeu", 253, 1),
+ new Among("\u00EDeu", -1, 1),
+ new Among("ar\u00EDeu", 255, 1),
+ new Among("ir\u00EDeu", 255, 1),
+ new Among("assiu", -1, 1),
+ new Among("issiu", -1, 1),
+ new Among("\u00E0ssiu", -1, 1),
+ new Among("\u00E8ssiu", -1, 1),
+ new Among("\u00E9ssiu", -1, 1),
+ new Among("\u00EDssiu", -1, 1),
+ new Among("\u00EFu", -1, 1),
+ new Among("ix", -1, 1),
+ new Among("eix", 265, 1),
+ new Among("\u00EFx", -1, 1),
+ new Among("itz", -1, 1),
+ new Among("i\u00E0", -1, 1),
+ new Among("ar\u00E0", -1, 1),
+ new Among("ir\u00E0", -1, 1),
+ new Among("itz\u00E0", -1, 1),
+ new Among("ar\u00E1", -1, 1),
+ new Among("er\u00E1", -1, 1),
+ new Among("ir\u00E1", -1, 1),
+ new Among("ir\u00E8", -1, 1),
+ new Among("ar\u00E9", -1, 1),
+ new Among("er\u00E9", -1, 1),
+ new Among("ir\u00E9", -1, 1),
+ new Among("\u00ED", -1, 1),
+ new Among("i\u00EF", -1, 1),
+ new Among("i\u00F3", -1, 1)
+ };
- private final static Among a_2[] = {
- new Among ( "ica", -1, 4, "", methodObject ),
- new Among ( "l\u00F3gica", 0, 3, "", methodObject ),
- new Among ( "enca", -1, 1, "", methodObject ),
- new Among ( "ada", -1, 2, "", methodObject ),
- new Among ( "ancia", -1, 1, "", methodObject ),
- new Among ( "encia", -1, 1, "", methodObject ),
- new Among ( "\u00E8ncia", -1, 1, "", methodObject ),
- new Among ( "\u00EDcia", -1, 1, "", methodObject ),
- new Among ( "logia", -1, 3, "", methodObject ),
- new Among ( "inia", -1, 1, "", methodObject ),
- new Among ( "\u00EDinia", 9, 1, "", methodObject ),
- new Among ( "eria", -1, 1, "", methodObject ),
- new Among ( "\u00E0ria", -1, 1, "", methodObject ),
- new Among ( "at\u00F2ria", -1, 1, "", methodObject ),
- new Among ( "alla", -1, 1, "", methodObject ),
- new Among ( "ella", -1, 1, "", methodObject ),
- new Among ( "\u00EDvola", -1, 1, "", methodObject ),
- new Among ( "ima", -1, 1, "", methodObject ),
- new Among ( "\u00EDssima", 17, 1, "", methodObject ),
- new Among ( "qu\u00EDssima", 18, 5, "", methodObject ),
- new Among ( "ana", -1, 1, "", methodObject ),
- new Among ( "ina", -1, 1, "", methodObject ),
- new Among ( "era", -1, 1, "", methodObject ),
- new Among ( "sfera", 22, 1, "", methodObject ),
- new Among ( "ora", -1, 1, "", methodObject ),
- new Among ( "dora", 24, 1, "", methodObject ),
- new Among ( "adora", 25, 1, "", methodObject ),
- new Among ( "adura", -1, 1, "", methodObject ),
- new Among ( "esa", -1, 1, "", methodObject ),
- new Among ( "osa", -1, 1, "", methodObject ),
- new Among ( "assa", -1, 1, "", methodObject ),
- new Among ( "essa", -1, 1, "", methodObject ),
- new Among ( "issa", -1, 1, "", methodObject ),
- new Among ( "eta", -1, 1, "", methodObject ),
- new Among ( "ita", -1, 1, "", methodObject ),
- new Among ( "ota", -1, 1, "", methodObject ),
- new Among ( "ista", -1, 1, "", methodObject ),
- new Among ( "ialista", 36, 1, "", methodObject ),
- new Among ( "ionista", 36, 1, "", methodObject ),
- new Among ( "iva", -1, 1, "", methodObject ),
- new Among ( "ativa", 39, 1, "", methodObject ),
- new Among ( "n\u00E7a", -1, 1, "", methodObject ),
- new Among ( "log\u00EDa", -1, 3, "", methodObject ),
- new Among ( "ic", -1, 4, "", methodObject ),
- new Among ( "\u00EDstic", 43, 1, "", methodObject ),
- new Among ( "enc", -1, 1, "", methodObject ),
- new Among ( "esc", -1, 1, "", methodObject ),
- new Among ( "ud", -1, 1, "", methodObject ),
- new Among ( "atge", -1, 1, "", methodObject ),
- new Among ( "ble", -1, 1, "", methodObject ),
- new Among ( "able", 49, 1, "", methodObject ),
- new Among ( "ible", 49, 1, "", methodObject ),
- new Among ( "isme", -1, 1, "", methodObject ),
- new Among ( "ialisme", 52, 1, "", methodObject ),
- new Among ( "ionisme", 52, 1, "", methodObject ),
- new Among ( "ivisme", 52, 1, "", methodObject ),
- new Among ( "aire", -1, 1, "", methodObject ),
- new Among ( "icte", -1, 1, "", methodObject ),
- new Among ( "iste", -1, 1, "", methodObject ),
- new Among ( "ici", -1, 1, "", methodObject ),
- new Among ( "\u00EDci", -1, 1, "", methodObject ),
- new Among ( "logi", -1, 3, "", methodObject ),
- new Among ( "ari", -1, 1, "", methodObject ),
- new Among ( "tori", -1, 1, "", methodObject ),
- new Among ( "al", -1, 1, "", methodObject ),
- new Among ( "il", -1, 1, "", methodObject ),
- new Among ( "all", -1, 1, "", methodObject ),
- new Among ( "ell", -1, 1, "", methodObject ),
- new Among ( "\u00EDvol", -1, 1, "", methodObject ),
- new Among ( "isam", -1, 1, "", methodObject ),
- new Among ( "issem", -1, 1, "", methodObject ),
- new Among ( "\u00ECssem", -1, 1, "", methodObject ),
- new Among ( "\u00EDssem", -1, 1, "", methodObject ),
- new Among ( "\u00EDssim", -1, 1, "", methodObject ),
- new Among ( "qu\u00EDssim", 73, 5, "", methodObject ),
- new Among ( "amen", -1, 1, "", methodObject ),
- new Among ( "\u00ECssin", -1, 1, "", methodObject ),
- new Among ( "ar", -1, 1, "", methodObject ),
- new Among ( "ificar", 77, 1, "", methodObject ),
- new Among ( "egar", 77, 1, "", methodObject ),
- new Among ( "ejar", 77, 1, "", methodObject ),
- new Among ( "itar", 77, 1, "", methodObject ),
- new Among ( "itzar", 77, 1, "", methodObject ),
- new Among ( "fer", -1, 1, "", methodObject ),
- new Among ( "or", -1, 1, "", methodObject ),
- new Among ( "dor", 84, 1, "", methodObject ),
- new Among ( "dur", -1, 1, "", methodObject ),
- new Among ( "doras", -1, 1, "", methodObject ),
- new Among ( "ics", -1, 4, "", methodObject ),
- new Among ( "l\u00F3gics", 88, 3, "", methodObject ),
- new Among ( "uds", -1, 1, "", methodObject ),
- new Among ( "nces", -1, 1, "", methodObject ),
- new Among ( "ades", -1, 2, "", methodObject ),
- new Among ( "ancies", -1, 1, "", methodObject ),
- new Among ( "encies", -1, 1, "", methodObject ),
- new Among ( "\u00E8ncies", -1, 1, "", methodObject ),
- new Among ( "\u00EDcies", -1, 1, "", methodObject ),
- new Among ( "logies", -1, 3, "", methodObject ),
- new Among ( "inies", -1, 1, "", methodObject ),
- new Among ( "\u00EDnies", -1, 1, "", methodObject ),
- new Among ( "eries", -1, 1, "", methodObject ),
- new Among ( "\u00E0ries", -1, 1, "", methodObject ),
- new Among ( "at\u00F2ries", -1, 1, "", methodObject ),
- new Among ( "bles", -1, 1, "", methodObject ),
- new Among ( "ables", 103, 1, "", methodObject ),
- new Among ( "ibles", 103, 1, "", methodObject ),
- new Among ( "imes", -1, 1, "", methodObject ),
- new Among ( "\u00EDssimes", 106, 1, "", methodObject ),
- new Among ( "qu\u00EDssimes", 107, 5, "", methodObject ),
- new Among ( "formes", -1, 1, "", methodObject ),
- new Among ( "ismes", -1, 1, "", methodObject ),
- new Among ( "ialismes", 110, 1, "", methodObject ),
- new Among ( "ines", -1, 1, "", methodObject ),
- new Among ( "eres", -1, 1, "", methodObject ),
- new Among ( "ores", -1, 1, "", methodObject ),
- new Among ( "dores", 114, 1, "", methodObject ),
- new Among ( "idores", 115, 1, "", methodObject ),
- new Among ( "dures", -1, 1, "", methodObject ),
- new Among ( "eses", -1, 1, "", methodObject ),
- new Among ( "oses", -1, 1, "", methodObject ),
- new Among ( "asses", -1, 1, "", methodObject ),
- new Among ( "ictes", -1, 1, "", methodObject ),
- new Among ( "ites", -1, 1, "", methodObject ),
- new Among ( "otes", -1, 1, "", methodObject ),
- new Among ( "istes", -1, 1, "", methodObject ),
- new Among ( "ialistes", 124, 1, "", methodObject ),
- new Among ( "ionistes", 124, 1, "", methodObject ),
- new Among ( "iques", -1, 4, "", methodObject ),
- new Among ( "l\u00F3giques", 127, 3, "", methodObject ),
- new Among ( "ives", -1, 1, "", methodObject ),
- new Among ( "atives", 129, 1, "", methodObject ),
- new Among ( "log\u00EDes", -1, 3, "", methodObject ),
- new Among ( "alleng\u00FCes", -1, 1, "", methodObject ),
- new Among ( "icis", -1, 1, "", methodObject ),
- new Among ( "\u00EDcis", -1, 1, "", methodObject ),
- new Among ( "logis", -1, 3, "", methodObject ),
- new Among ( "aris", -1, 1, "", methodObject ),
- new Among ( "toris", -1, 1, "", methodObject ),
- new Among ( "ls", -1, 1, "", methodObject ),
- new Among ( "als", 138, 1, "", methodObject ),
- new Among ( "ells", 138, 1, "", methodObject ),
- new Among ( "ims", -1, 1, "", methodObject ),
- new Among ( "\u00EDssims", 141, 1, "", methodObject ),
- new Among ( "qu\u00EDssims", 142, 5, "", methodObject ),
- new Among ( "ions", -1, 1, "", methodObject ),
- new Among ( "cions", 144, 1, "", methodObject ),
- new Among ( "acions", 145, 2, "", methodObject ),
- new Among ( "esos", -1, 1, "", methodObject ),
- new Among ( "osos", -1, 1, "", methodObject ),
- new Among ( "assos", -1, 1, "", methodObject ),
- new Among ( "issos", -1, 1, "", methodObject ),
- new Among ( "ers", -1, 1, "", methodObject ),
- new Among ( "ors", -1, 1, "", methodObject ),
- new Among ( "dors", 152, 1, "", methodObject ),
- new Among ( "adors", 153, 1, "", methodObject ),
- new Among ( "idors", 153, 1, "", methodObject ),
- new Among ( "ats", -1, 1, "", methodObject ),
- new Among ( "itats", 156, 1, "", methodObject ),
- new Among ( "bilitats", 157, 1, "", methodObject ),
- new Among ( "ivitats", 157, 1, "", methodObject ),
- new Among ( "ativitats", 159, 1, "", methodObject ),
- new Among ( "\u00EFtats", 156, 1, "", methodObject ),
- new Among ( "ets", -1, 1, "", methodObject ),
- new Among ( "ants", -1, 1, "", methodObject ),
- new Among ( "ents", -1, 1, "", methodObject ),
- new Among ( "ments", 164, 1, "", methodObject ),
- new Among ( "aments", 165, 1, "", methodObject ),
- new Among ( "ots", -1, 1, "", methodObject ),
- new Among ( "uts", -1, 1, "", methodObject ),
- new Among ( "ius", -1, 1, "", methodObject ),
- new Among ( "trius", 169, 1, "", methodObject ),
- new Among ( "atius", 169, 1, "", methodObject ),
- new Among ( "\u00E8s", -1, 1, "", methodObject ),
- new Among ( "\u00E9s", -1, 1, "", methodObject ),
- new Among ( "\u00EDs", -1, 1, "", methodObject ),
- new Among ( "d\u00EDs", 174, 1, "", methodObject ),
- new Among ( "\u00F3s", -1, 1, "", methodObject ),
- new Among ( "itat", -1, 1, "", methodObject ),
- new Among ( "bilitat", 177, 1, "", methodObject ),
- new Among ( "ivitat", 177, 1, "", methodObject ),
- new Among ( "ativitat", 179, 1, "", methodObject ),
- new Among ( "\u00EFtat", -1, 1, "", methodObject ),
- new Among ( "et", -1, 1, "", methodObject ),
- new Among ( "ant", -1, 1, "", methodObject ),
- new Among ( "ent", -1, 1, "", methodObject ),
- new Among ( "ient", 184, 1, "", methodObject ),
- new Among ( "ment", 184, 1, "", methodObject ),
- new Among ( "ament", 186, 1, "", methodObject ),
- new Among ( "isament", 187, 1, "", methodObject ),
- new Among ( "ot", -1, 1, "", methodObject ),
- new Among ( "isseu", -1, 1, "", methodObject ),
- new Among ( "\u00ECsseu", -1, 1, "", methodObject ),
- new Among ( "\u00EDsseu", -1, 1, "", methodObject ),
- new Among ( "triu", -1, 1, "", methodObject ),
- new Among ( "\u00EDssiu", -1, 1, "", methodObject ),
- new Among ( "atiu", -1, 1, "", methodObject ),
- new Among ( "\u00F3", -1, 1, "", methodObject ),
- new Among ( "i\u00F3", 196, 1, "", methodObject ),
- new Among ( "ci\u00F3", 197, 1, "", methodObject ),
- new Among ( "aci\u00F3", 198, 1, "", methodObject )
- };
+ private final static Among a_4[] = {
+ new Among("a", -1, 1),
+ new Among("e", -1, 1),
+ new Among("i", -1, 1),
+ new Among("\u00EFn", -1, 1),
+ new Among("o", -1, 1),
+ new Among("ir", -1, 1),
+ new Among("s", -1, 1),
+ new Among("is", 6, 1),
+ new Among("os", 6, 1),
+ new Among("\u00EFs", 6, 1),
+ new Among("it", -1, 1),
+ new Among("eu", -1, 1),
+ new Among("iu", -1, 1),
+ new Among("iqu", -1, 2),
+ new Among("itz", -1, 1),
+ new Among("\u00E0", -1, 1),
+ new Among("\u00E1", -1, 1),
+ new Among("\u00E9", -1, 1),
+ new Among("\u00EC", -1, 1),
+ new Among("\u00ED", -1, 1),
+ new Among("\u00EF", -1, 1),
+ new Among("\u00F3", -1, 1)
+ };
- private final static Among a_3[] = {
- new Among ( "aba", -1, 1, "", methodObject ),
- new Among ( "esca", -1, 1, "", methodObject ),
- new Among ( "isca", -1, 1, "", methodObject ),
- new Among ( "\u00EFsca", -1, 1, "", methodObject ),
- new Among ( "ada", -1, 1, "", methodObject ),
- new Among ( "ida", -1, 1, "", methodObject ),
- new Among ( "uda", -1, 1, "", methodObject ),
- new Among ( "\u00EFda", -1, 1, "", methodObject ),
- new Among ( "ia", -1, 1, "", methodObject ),
- new Among ( "aria", 8, 1, "", methodObject ),
- new Among ( "iria", 8, 1, "", methodObject ),
- new Among ( "ara", -1, 1, "", methodObject ),
- new Among ( "iera", -1, 1, "", methodObject ),
- new Among ( "ira", -1, 1, "", methodObject ),
- new Among ( "adora", -1, 1, "", methodObject ),
- new Among ( "\u00EFra", -1, 1, "", methodObject ),
- new Among ( "ava", -1, 1, "", methodObject ),
- new Among ( "ixa", -1, 1, "", methodObject ),
- new Among ( "itza", -1, 1, "", methodObject ),
- new Among ( "\u00EDa", -1, 1, "", methodObject ),
- new Among ( "ar\u00EDa", 19, 1, "", methodObject ),
- new Among ( "er\u00EDa", 19, 1, "", methodObject ),
- new Among ( "ir\u00EDa", 19, 1, "", methodObject ),
- new Among ( "\u00EFa", -1, 1, "", methodObject ),
- new Among ( "isc", -1, 1, "", methodObject ),
- new Among ( "\u00EFsc", -1, 1, "", methodObject ),
- new Among ( "ad", -1, 1, "", methodObject ),
- new Among ( "ed", -1, 1, "", methodObject ),
- new Among ( "id", -1, 1, "", methodObject ),
- new Among ( "ie", -1, 1, "", methodObject ),
- new Among ( "re", -1, 1, "", methodObject ),
- new Among ( "dre", 30, 1, "", methodObject ),
- new Among ( "ase", -1, 1, "", methodObject ),
- new Among ( "iese", -1, 1, "", methodObject ),
- new Among ( "aste", -1, 1, "", methodObject ),
- new Among ( "iste", -1, 1, "", methodObject ),
- new Among ( "ii", -1, 1, "", methodObject ),
- new Among ( "ini", -1, 1, "", methodObject ),
- new Among ( "esqui", -1, 1, "", methodObject ),
- new Among ( "eixi", -1, 1, "", methodObject ),
- new Among ( "itzi", -1, 1, "", methodObject ),
- new Among ( "am", -1, 1, "", methodObject ),
- new Among ( "em", -1, 1, "", methodObject ),
- new Among ( "arem", 42, 1, "", methodObject ),
- new Among ( "irem", 42, 1, "", methodObject ),
- new Among ( "\u00E0rem", 42, 1, "", methodObject ),
- new Among ( "\u00EDrem", 42, 1, "", methodObject ),
- new Among ( "\u00E0ssem", 42, 1, "", methodObject ),
- new Among ( "\u00E9ssem", 42, 1, "", methodObject ),
- new Among ( "iguem", 42, 1, "", methodObject ),
- new Among ( "\u00EFguem", 42, 1, "", methodObject ),
- new Among ( "avem", 42, 1, "", methodObject ),
- new Among ( "\u00E0vem", 42, 1, "", methodObject ),
- new Among ( "\u00E1vem", 42, 1, "", methodObject ),
- new Among ( "ir\u00ECem", 42, 1, "", methodObject ),
- new Among ( "\u00EDem", 42, 1, "", methodObject ),
- new Among ( "ar\u00EDem", 55, 1, "", methodObject ),
- new Among ( "ir\u00EDem", 55, 1, "", methodObject ),
- new Among ( "assim", -1, 1, "", methodObject ),
- new Among ( "essim", -1, 1, "", methodObject ),
- new Among ( "issim", -1, 1, "", methodObject ),
- new Among ( "\u00E0ssim", -1, 1, "", methodObject ),
- new Among ( "\u00E8ssim", -1, 1, "", methodObject ),
- new Among ( "\u00E9ssim", -1, 1, "", methodObject ),
- new Among ( "\u00EDssim", -1, 1, "", methodObject ),
- new Among ( "\u00EFm", -1, 1, "", methodObject ),
- new Among ( "an", -1, 1, "", methodObject ),
- new Among ( "aban", 66, 1, "", methodObject ),
- new Among ( "arian", 66, 1, "", methodObject ),
- new Among ( "aran", 66, 1, "", methodObject ),
- new Among ( "ieran", 66, 1, "", methodObject ),
- new Among ( "iran", 66, 1, "", methodObject ),
- new Among ( "\u00EDan", 66, 1, "", methodObject ),
- new Among ( "ar\u00EDan", 72, 1, "", methodObject ),
- new Among ( "er\u00EDan", 72, 1, "", methodObject ),
- new Among ( "ir\u00EDan", 72, 1, "", methodObject ),
- new Among ( "en", -1, 1, "", methodObject ),
- new Among ( "ien", 76, 1, "", methodObject ),
- new Among ( "arien", 77, 1, "", methodObject ),
- new Among ( "irien", 77, 1, "", methodObject ),
- new Among ( "aren", 76, 1, "", methodObject ),
- new Among ( "eren", 76, 1, "", methodObject ),
- new Among ( "iren", 76, 1, "", methodObject ),
- new Among ( "\u00E0ren", 76, 1, "", methodObject ),
- new Among ( "\u00EFren", 76, 1, "", methodObject ),
- new Among ( "asen", 76, 1, "", methodObject ),
- new Among ( "iesen", 76, 1, "", methodObject ),
- new Among ( "assen", 76, 1, "", methodObject ),
- new Among ( "essen", 76, 1, "", methodObject ),
- new Among ( "issen", 76, 1, "", methodObject ),
- new Among ( "\u00E9ssen", 76, 1, "", methodObject ),
- new Among ( "\u00EFssen", 76, 1, "", methodObject ),
- new Among ( "esquen", 76, 1, "", methodObject ),
- new Among ( "isquen", 76, 1, "", methodObject ),
- new Among ( "\u00EFsquen", 76, 1, "", methodObject ),
- new Among ( "aven", 76, 1, "", methodObject ),
- new Among ( "ixen", 76, 1, "", methodObject ),
- new Among ( "eixen", 96, 1, "", methodObject ),
- new Among ( "\u00EFxen", 76, 1, "", methodObject ),
- new Among ( "\u00EFen", 76, 1, "", methodObject ),
- new Among ( "in", -1, 1, "", methodObject ),
- new Among ( "inin", 100, 1, "", methodObject ),
- new Among ( "sin", 100, 1, "", methodObject ),
- new Among ( "isin", 102, 1, "", methodObject ),
- new Among ( "assin", 102, 1, "", methodObject ),
- new Among ( "essin", 102, 1, "", methodObject ),
- new Among ( "issin", 102, 1, "", methodObject ),
- new Among ( "\u00EFssin", 102, 1, "", methodObject ),
- new Among ( "esquin", 100, 1, "", methodObject ),
- new Among ( "eixin", 100, 1, "", methodObject ),
- new Among ( "aron", -1, 1, "", methodObject ),
- new Among ( "ieron", -1, 1, "", methodObject ),
- new Among ( "ar\u00E1n", -1, 1, "", methodObject ),
- new Among ( "er\u00E1n", -1, 1, "", methodObject ),
- new Among ( "ir\u00E1n", -1, 1, "", methodObject ),
- new Among ( "i\u00EFn", -1, 1, "", methodObject ),
- new Among ( "ado", -1, 1, "", methodObject ),
- new Among ( "ido", -1, 1, "", methodObject ),
- new Among ( "ando", -1, 2, "", methodObject ),
- new Among ( "iendo", -1, 1, "", methodObject ),
- new Among ( "io", -1, 1, "", methodObject ),
- new Among ( "ixo", -1, 1, "", methodObject ),
- new Among ( "eixo", 121, 1, "", methodObject ),
- new Among ( "\u00EFxo", -1, 1, "", methodObject ),
- new Among ( "itzo", -1, 1, "", methodObject ),
- new Among ( "ar", -1, 1, "", methodObject ),
- new Among ( "tzar", 125, 1, "", methodObject ),
- new Among ( "er", -1, 1, "", methodObject ),
- new Among ( "eixer", 127, 1, "", methodObject ),
- new Among ( "ir", -1, 1, "", methodObject ),
- new Among ( "ador", -1, 1, "", methodObject ),
- new Among ( "as", -1, 1, "", methodObject ),
- new Among ( "abas", 131, 1, "", methodObject ),
- new Among ( "adas", 131, 1, "", methodObject ),
- new Among ( "idas", 131, 1, "", methodObject ),
- new Among ( "aras", 131, 1, "", methodObject ),
- new Among ( "ieras", 131, 1, "", methodObject ),
- new Among ( "\u00EDas", 131, 1, "", methodObject ),
- new Among ( "ar\u00EDas", 137, 1, "", methodObject ),
- new Among ( "er\u00EDas", 137, 1, "", methodObject ),
- new Among ( "ir\u00EDas", 137, 1, "", methodObject ),
- new Among ( "ids", -1, 1, "", methodObject ),
- new Among ( "es", -1, 1, "", methodObject ),
- new Among ( "ades", 142, 1, "", methodObject ),
- new Among ( "ides", 142, 1, "", methodObject ),
- new Among ( "udes", 142, 1, "", methodObject ),
- new Among ( "\u00EFdes", 142, 1, "", methodObject ),
- new Among ( "atges", 142, 1, "", methodObject ),
- new Among ( "ies", 142, 1, "", methodObject ),
- new Among ( "aries", 148, 1, "", methodObject ),
- new Among ( "iries", 148, 1, "", methodObject ),
- new Among ( "ares", 142, 1, "", methodObject ),
- new Among ( "ires", 142, 1, "", methodObject ),
- new Among ( "adores", 142, 1, "", methodObject ),
- new Among ( "\u00EFres", 142, 1, "", methodObject ),
- new Among ( "ases", 142, 1, "", methodObject ),
- new Among ( "ieses", 142, 1, "", methodObject ),
- new Among ( "asses", 142, 1, "", methodObject ),
- new Among ( "esses", 142, 1, "", methodObject ),
- new Among ( "isses", 142, 1, "", methodObject ),
- new Among ( "\u00EFsses", 142, 1, "", methodObject ),
- new Among ( "ques", 142, 1, "", methodObject ),
- new Among ( "esques", 161, 1, "", methodObject ),
- new Among ( "\u00EFsques", 161, 1, "", methodObject ),
- new Among ( "aves", 142, 1, "", methodObject ),
- new Among ( "ixes", 142, 1, "", methodObject ),
- new Among ( "eixes", 165, 1, "", methodObject ),
- new Among ( "\u00EFxes", 142, 1, "", methodObject ),
- new Among ( "\u00EFes", 142, 1, "", methodObject ),
- new Among ( "abais", -1, 1, "", methodObject ),
- new Among ( "arais", -1, 1, "", methodObject ),
- new Among ( "ierais", -1, 1, "", methodObject ),
- new Among ( "\u00EDais", -1, 1, "", methodObject ),
- new Among ( "ar\u00EDais", 172, 1, "", methodObject ),
- new Among ( "er\u00EDais", 172, 1, "", methodObject ),
- new Among ( "ir\u00EDais", 172, 1, "", methodObject ),
- new Among ( "aseis", -1, 1, "", methodObject ),
- new Among ( "ieseis", -1, 1, "", methodObject ),
- new Among ( "asteis", -1, 1, "", methodObject ),
- new Among ( "isteis", -1, 1, "", methodObject ),
- new Among ( "inis", -1, 1, "", methodObject ),
- new Among ( "sis", -1, 1, "", methodObject ),
- new Among ( "isis", 181, 1, "", methodObject ),
- new Among ( "assis", 181, 1, "", methodObject ),
- new Among ( "essis", 181, 1, "", methodObject ),
- new Among ( "issis", 181, 1, "", methodObject ),
- new Among ( "\u00EFssis", 181, 1, "", methodObject ),
- new Among ( "esquis", -1, 1, "", methodObject ),
- new Among ( "eixis", -1, 1, "", methodObject ),
- new Among ( "itzis", -1, 1, "", methodObject ),
- new Among ( "\u00E1is", -1, 1, "", methodObject ),
- new Among ( "ar\u00E9is", -1, 1, "", methodObject ),
- new Among ( "er\u00E9is", -1, 1, "", methodObject ),
- new Among ( "ir\u00E9is", -1, 1, "", methodObject ),
- new Among ( "ams", -1, 1, "", methodObject ),
- new Among ( "ados", -1, 1, "", methodObject ),
- new Among ( "idos", -1, 1, "", methodObject ),
- new Among ( "amos", -1, 1, "", methodObject ),
- new Among ( "\u00E1bamos", 197, 1, "", methodObject ),
- new Among ( "\u00E1ramos", 197, 1, "", methodObject ),
- new Among ( "i\u00E9ramos", 197, 1, "", methodObject ),
- new Among ( "\u00EDamos", 197, 1, "", methodObject ),
- new Among ( "ar\u00EDamos", 201, 1, "", methodObject ),
- new Among ( "er\u00EDamos", 201, 1, "", methodObject ),
- new Among ( "ir\u00EDamos", 201, 1, "", methodObject ),
- new Among ( "aremos", -1, 1, "", methodObject ),
- new Among ( "eremos", -1, 1, "", methodObject ),
- new Among ( "iremos", -1, 1, "", methodObject ),
- new Among ( "\u00E1semos", -1, 1, "", methodObject ),
- new Among ( "i\u00E9semos", -1, 1, "", methodObject ),
- new Among ( "imos", -1, 1, "", methodObject ),
- new Among ( "adors", -1, 1, "", methodObject ),
- new Among ( "ass", -1, 1, "", methodObject ),
- new Among ( "erass", 212, 1, "", methodObject ),
- new Among ( "ess", -1, 1, "", methodObject ),
- new Among ( "ats", -1, 1, "", methodObject ),
- new Among ( "its", -1, 1, "", methodObject ),
- new Among ( "ents", -1, 1, "", methodObject ),
- new Among ( "\u00E0s", -1, 1, "", methodObject ),
- new Among ( "ar\u00E0s", 218, 1, "", methodObject ),
- new Among ( "ir\u00E0s", 218, 1, "", methodObject ),
- new Among ( "ar\u00E1s", -1, 1, "", methodObject ),
- new Among ( "er\u00E1s", -1, 1, "", methodObject ),
- new Among ( "ir\u00E1s", -1, 1, "", methodObject ),
- new Among ( "\u00E9s", -1, 1, "", methodObject ),
- new Among ( "ar\u00E9s", 224, 1, "", methodObject ),
- new Among ( "\u00EDs", -1, 1, "", methodObject ),
- new Among ( "i\u00EFs", -1, 1, "", methodObject ),
- new Among ( "at", -1, 1, "", methodObject ),
- new Among ( "it", -1, 1, "", methodObject ),
- new Among ( "ant", -1, 1, "", methodObject ),
- new Among ( "ent", -1, 1, "", methodObject ),
- new Among ( "int", -1, 1, "", methodObject ),
- new Among ( "ut", -1, 1, "", methodObject ),
- new Among ( "\u00EFt", -1, 1, "", methodObject ),
- new Among ( "au", -1, 1, "", methodObject ),
- new Among ( "erau", 235, 1, "", methodObject ),
- new Among ( "ieu", -1, 1, "", methodObject ),
- new Among ( "ineu", -1, 1, "", methodObject ),
- new Among ( "areu", -1, 1, "", methodObject ),
- new Among ( "ireu", -1, 1, "", methodObject ),
- new Among ( "\u00E0reu", -1, 1, "", methodObject ),
- new Among ( "\u00EDreu", -1, 1, "", methodObject ),
- new Among ( "asseu", -1, 1, "", methodObject ),
- new Among ( "esseu", -1, 1, "", methodObject ),
- new Among ( "eresseu", 244, 1, "", methodObject ),
- new Among ( "\u00E0sseu", -1, 1, "", methodObject ),
- new Among ( "\u00E9sseu", -1, 1, "", methodObject ),
- new Among ( "igueu", -1, 1, "", methodObject ),
- new Among ( "\u00EFgueu", -1, 1, "", methodObject ),
- new Among ( "\u00E0veu", -1, 1, "", methodObject ),
- new Among ( "\u00E1veu", -1, 1, "", methodObject ),
- new Among ( "itzeu", -1, 1, "", methodObject ),
- new Among ( "\u00ECeu", -1, 1, "", methodObject ),
- new Among ( "ir\u00ECeu", 253, 1, "", methodObject ),
- new Among ( "\u00EDeu", -1, 1, "", methodObject ),
- new Among ( "ar\u00EDeu", 255, 1, "", methodObject ),
- new Among ( "ir\u00EDeu", 255, 1, "", methodObject ),
- new Among ( "assiu", -1, 1, "", methodObject ),
- new Among ( "issiu", -1, 1, "", methodObject ),
- new Among ( "\u00E0ssiu", -1, 1, "", methodObject ),
- new Among ( "\u00E8ssiu", -1, 1, "", methodObject ),
- new Among ( "\u00E9ssiu", -1, 1, "", methodObject ),
- new Among ( "\u00EDssiu", -1, 1, "", methodObject ),
- new Among ( "\u00EFu", -1, 1, "", methodObject ),
- new Among ( "ix", -1, 1, "", methodObject ),
- new Among ( "eix", 265, 1, "", methodObject ),
- new Among ( "\u00EFx", -1, 1, "", methodObject ),
- new Among ( "itz", -1, 1, "", methodObject ),
- new Among ( "i\u00E0", -1, 1, "", methodObject ),
- new Among ( "ar\u00E0", -1, 1, "", methodObject ),
- new Among ( "ir\u00E0", -1, 1, "", methodObject ),
- new Among ( "itz\u00E0", -1, 1, "", methodObject ),
- new Among ( "ar\u00E1", -1, 1, "", methodObject ),
- new Among ( "er\u00E1", -1, 1, "", methodObject ),
- new Among ( "ir\u00E1", -1, 1, "", methodObject ),
- new Among ( "ir\u00E8", -1, 1, "", methodObject ),
- new Among ( "ar\u00E9", -1, 1, "", methodObject ),
- new Among ( "er\u00E9", -1, 1, "", methodObject ),
- new Among ( "ir\u00E9", -1, 1, "", methodObject ),
- new Among ( "\u00ED", -1, 1, "", methodObject ),
- new Among ( "i\u00EF", -1, 1, "", methodObject ),
- new Among ( "i\u00F3", -1, 1, "", methodObject )
- };
+ private static final char g_v[] = {17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 129, 81, 6, 10 };
- private final static Among a_4[] = {
- new Among ( "a", -1, 1, "", methodObject ),
- new Among ( "e", -1, 1, "", methodObject ),
- new Among ( "i", -1, 1, "", methodObject ),
- new Among ( "\u00EFn", -1, 1, "", methodObject ),
- new Among ( "o", -1, 1, "", methodObject ),
- new Among ( "ir", -1, 1, "", methodObject ),
- new Among ( "s", -1, 1, "", methodObject ),
- new Among ( "is", 6, 1, "", methodObject ),
- new Among ( "os", 6, 1, "", methodObject ),
- new Among ( "\u00EFs", 6, 1, "", methodObject ),
- new Among ( "it", -1, 1, "", methodObject ),
- new Among ( "eu", -1, 1, "", methodObject ),
- new Among ( "iu", -1, 1, "", methodObject ),
- new Among ( "iqu", -1, 2, "", methodObject ),
- new Among ( "itz", -1, 1, "", methodObject ),
- new Among ( "\u00E0", -1, 1, "", methodObject ),
- new Among ( "\u00E1", -1, 1, "", methodObject ),
- new Among ( "\u00E9", -1, 1, "", methodObject ),
- new Among ( "\u00EC", -1, 1, "", methodObject ),
- new Among ( "\u00ED", -1, 1, "", methodObject ),
- new Among ( "\u00EF", -1, 1, "", methodObject ),
- new Among ( "\u00F3", -1, 1, "", methodObject )
- };
+ private int I_p2;
+ private int I_p1;
- private static final char g_v[] = {17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 129, 81, 6, 10 };
- private int I_p2;
- private int I_p1;
-
- private void copy_from(CatalanStemmer other) {
- I_p2 = other.I_p2;
- I_p1 = other.I_p1;
- super.copy_from(other);
- }
-
- private boolean r_mark_regions() {
- int v_1;
- // (, line 41
- I_p1 = limit;
- I_p2 = limit;
- // do, line 46
- v_1 = cursor;
- lab0: do {
- // (, line 46
- // gopast, line 47
- golab1: while(true)
- {
- lab2: do {
- if (!(in_grouping(g_v, 97, 252)))
- {
- break lab2;
- }
- break golab1;
- } while (false);
- if (cursor >= limit)
- {
- break lab0;
- }
- cursor++;
- }
- // gopast, line 47
- golab3: while(true)
- {
- lab4: do {
- if (!(out_grouping(g_v, 97, 252)))
- {
- break lab4;
- }
- break golab3;
- } while (false);
- if (cursor >= limit)
- {
- break lab0;
- }
- cursor++;
- }
- // setmark p1, line 47
- I_p1 = cursor;
- // gopast, line 48
- golab5: while(true)
- {
- lab6: do {
- if (!(in_grouping(g_v, 97, 252)))
- {
- break lab6;
- }
- break golab5;
- } while (false);
- if (cursor >= limit)
- {
- break lab0;
- }
- cursor++;
- }
- // gopast, line 48
- golab7: while(true)
- {
- lab8: do {
- if (!(out_grouping(g_v, 97, 252)))
- {
- break lab8;
- }
- break golab7;
- } while (false);
- if (cursor >= limit)
- {
- break lab0;
- }
- cursor++;
- }
- // setmark p2, line 48
- I_p2 = cursor;
- } while (false);
- cursor = v_1;
- return true;
- }
-
- private boolean r_cleaning() {
- int among_var;
- int v_1;
- // repeat, line 52
- replab0: while(true)
- {
- v_1 = cursor;
- lab1: do {
- // (, line 52
- // [, line 53
- bra = cursor;
- // substring, line 53
- among_var = find_among(a_0, 13);
- if (among_var == 0)
- {
- break lab1;
- }
- // ], line 53
- ket = cursor;
- switch(among_var) {
- case 0:
- break lab1;
- case 1:
- // (, line 54
- // <-, line 54
- slice_from("a");
- break;
- case 2:
- // (, line 55
- // <-, line 55
- slice_from("a");
- break;
- case 3:
- // (, line 56
- // <-, line 56
- slice_from("e");
- break;
- case 4:
- // (, line 57
- // <-, line 57
- slice_from("e");
- break;
- case 5:
- // (, line 58
- // <-, line 58
- slice_from("i");
- break;
- case 6:
- // (, line 59
- // <-, line 59
- slice_from("i");
- break;
- case 7:
- // (, line 60
- // <-, line 60
- slice_from("o");
- break;
- case 8:
- // (, line 61
- // <-, line 61
- slice_from("o");
- break;
- case 9:
- // (, line 62
- // <-, line 62
- slice_from("u");
- break;
- case 10:
- // (, line 63
- // <-, line 63
- slice_from("u");
- break;
- case 11:
- // (, line 64
- // <-, line 64
- slice_from("i");
- break;
- case 12:
- // (, line 65
- // <-, line 65
- slice_from(".");
- break;
- case 13:
- // (, line 66
- // next, line 66
- if (cursor >= limit)
- {
- break lab1;
- }
- cursor++;
- break;
- }
- continue replab0;
- } while (false);
- cursor = v_1;
- break replab0;
- }
- return true;
- }
+ private boolean r_mark_regions() {
+ I_p1 = limit;
+ I_p2 = limit;
+ int v_1 = cursor;
+lab0: {
+golab1: while(true)
+ {
+lab2: {
+ if (!(in_grouping(g_v, 97, 252)))
+ {
+ break lab2;
+ }
+ break golab1;
+}
+if (cursor >= limit)
+{
+ break lab0;
+}
+cursor++;
+ }
+golab3: while(true)
+{
+lab4: {
+ if (!(out_grouping(g_v, 97, 252)))
+ {
+ break lab4;
+ }
+ break golab3;
+}
+if (cursor >= limit)
+{
+ break lab0;
+}
+cursor++;
+}
+I_p1 = cursor;
+golab5: while(true)
+{
+lab6: {
+ if (!(in_grouping(g_v, 97, 252)))
+ {
+ break lab6;
+ }
+ break golab5;
+}
+if (cursor >= limit)
+{
+ break lab0;
+}
+cursor++;
+}
+golab7: while(true)
+{
+lab8: {
+ if (!(out_grouping(g_v, 97, 252)))
+ {
+ break lab8;
+ }
+ break golab7;
+}
+if (cursor >= limit)
+{
+ break lab0;
+}
+cursor++;
+}
+I_p2 = cursor;
+}
+cursor = v_1;
+return true;
+ }
- private boolean r_R1() {
- if (!(I_p1 <= cursor))
- {
- return false;
- }
- return true;
- }
+private boolean r_cleaning() {
+ int among_var;
+ while(true)
+ {
+ int v_1 = cursor;
+lab0: {
+ bra = cursor;
+ among_var = find_among(a_0);
+ if (among_var == 0)
+ {
+ break lab0;
+ }
+ ket = cursor;
+ switch (among_var) {
+ case 1:
+ slice_from("a");
+ break;
+ case 2:
+ slice_from("e");
+ break;
+ case 3:
+ slice_from("i");
+ break;
+ case 4:
+ slice_from("o");
+ break;
+ case 5:
+ slice_from("u");
+ break;
+ case 6:
+ slice_from(".");
+ break;
+ case 7:
+ if (cursor >= limit)
+ {
+ break lab0;
+ }
+ cursor++;
+ break;
+ }
+ continue;
+}
+cursor = v_1;
+break;
+ }
+return true;
+}
- private boolean r_R2() {
- if (!(I_p2 <= cursor))
- {
- return false;
- }
- return true;
- }
+private boolean r_R1() {
+ if (!(I_p1 <= cursor))
+ {
+ return false;
+ }
+ return true;
+}
- private boolean r_attached_pronoun() {
- int among_var;
- // (, line 75
- // [, line 76
- ket = cursor;
- // substring, line 76
- among_var = find_among_b(a_1, 39);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 76
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 86
- // call R1, line 86
- if (!r_R1())
- {
- return false;
- }
- // delete, line 86
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_R2() {
+ if (!(I_p2 <= cursor))
+ {
+ return false;
+ }
+ return true;
+}
- private boolean r_standard_suffix() {
- int among_var;
- // (, line 90
- // [, line 91
- ket = cursor;
- // substring, line 91
- among_var = find_among_b(a_2, 200);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 91
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 115
- // call R1, line 115
- if (!r_R1())
- {
- return false;
- }
- // delete, line 115
- slice_del();
- break;
- case 2:
- // (, line 117
- // call R2, line 117
- if (!r_R2())
- {
- return false;
- }
- // delete, line 117
- slice_del();
- break;
- case 3:
- // (, line 119
- // call R2, line 119
- if (!r_R2())
- {
- return false;
- }
- // <-, line 119
- slice_from("log");
- break;
- case 4:
- // (, line 121
- // call R2, line 121
- if (!r_R2())
- {
- return false;
- }
- // <-, line 121
- slice_from("ic");
- break;
- case 5:
- // (, line 123
- // call R1, line 123
- if (!r_R1())
- {
- return false;
- }
- // <-, line 123
- slice_from("c");
- break;
- }
- return true;
- }
+private boolean r_attached_pronoun() {
+ ket = cursor;
+ if (find_among_b(a_1) == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ if (!r_R1())
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
- private boolean r_verb_suffix() {
- int among_var;
- // (, line 127
- // [, line 128
- ket = cursor;
- // substring, line 128
- among_var = find_among_b(a_3, 283);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 128
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 173
- // call R1, line 173
- if (!r_R1())
- {
- return false;
- }
- // delete, line 173
- slice_del();
- break;
- case 2:
- // (, line 175
- // call R2, line 175
- if (!r_R2())
- {
- return false;
- }
- // delete, line 175
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_standard_suffix() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_2);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!r_R1())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!r_R2())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 3:
+ if (!r_R2())
+ {
+ return false;
+ }
+ slice_from("log");
+ break;
+ case 4:
+ if (!r_R2())
+ {
+ return false;
+ }
+ slice_from("ic");
+ break;
+ case 5:
+ if (!r_R1())
+ {
+ return false;
+ }
+ slice_from("c");
+ break;
+ }
+ return true;
+}
- private boolean r_residual_suffix() {
- int among_var;
- // (, line 179
- // [, line 180
- ket = cursor;
- // substring, line 180
- among_var = find_among_b(a_4, 22);
- if (among_var == 0)
- {
- return false;
- }
- // ], line 180
- bra = cursor;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 183
- // call R1, line 183
- if (!r_R1())
- {
- return false;
- }
- // delete, line 183
- slice_del();
- break;
- case 2:
- // (, line 185
- // call R1, line 185
- if (!r_R1())
- {
- return false;
- }
- // <-, line 185
- slice_from("ic");
- break;
- }
- return true;
- }
+private boolean r_verb_suffix() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_3);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!r_R1())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!r_R2())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ }
+ return true;
+}
- @Override
- public boolean stem() {
- int v_1;
- int v_2;
- int v_3;
- int v_4;
- int v_5;
- int v_6;
- // (, line 190
- // do, line 191
- v_1 = cursor;
- lab0: do {
- // call mark_regions, line 191
- if (!r_mark_regions())
- {
- break lab0;
- }
- } while (false);
- cursor = v_1;
- // backwards, line 192
- limit_backward = cursor; cursor = limit;
- // (, line 192
- // do, line 193
- v_2 = limit - cursor;
- lab1: do {
- // call attached_pronoun, line 193
- if (!r_attached_pronoun())
- {
- break lab1;
- }
- } while (false);
- cursor = limit - v_2;
- // do, line 194
- v_3 = limit - cursor;
- lab2: do {
- // (, line 194
- // or, line 194
- lab3: do {
- v_4 = limit - cursor;
- lab4: do {
- // call standard_suffix, line 194
- if (!r_standard_suffix())
- {
- break lab4;
- }
- break lab3;
- } while (false);
- cursor = limit - v_4;
- // call verb_suffix, line 195
- if (!r_verb_suffix())
- {
- break lab2;
- }
- } while (false);
- } while (false);
- cursor = limit - v_3;
- // do, line 197
- v_5 = limit - cursor;
- lab5: do {
- // call residual_suffix, line 197
- if (!r_residual_suffix())
- {
- break lab5;
- }
- } while (false);
- cursor = limit - v_5;
- cursor = limit_backward; // do, line 199
- v_6 = cursor;
- lab6: do {
- // call cleaning, line 199
- if (!r_cleaning())
- {
- break lab6;
- }
- } while (false);
- cursor = v_6;
- return true;
- }
+private boolean r_residual_suffix() {
+ int among_var;
+ ket = cursor;
+ among_var = find_among_b(a_4);
+ if (among_var == 0)
+ {
+ return false;
+ }
+ bra = cursor;
+ switch (among_var) {
+ case 1:
+ if (!r_R1())
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ case 2:
+ if (!r_R1())
+ {
+ return false;
+ }
+ slice_from("ic");
+ break;
+ }
+ return true;
+}
- @Override
- public boolean equals( Object o ) {
- return o instanceof CatalanStemmer;
+public boolean stem() {
+ r_mark_regions();
+ limit_backward = cursor;
+ cursor = limit;
+ int v_2 = limit - cursor;
+ r_attached_pronoun();
+ cursor = limit - v_2;
+ int v_3 = limit - cursor;
+lab0: {
+lab1: {
+ int v_4 = limit - cursor;
+lab2: {
+ if (!r_standard_suffix())
+ {
+ break lab2;
}
+ break lab1;
+}
+cursor = limit - v_4;
+if (!r_verb_suffix())
+{
+ break lab0;
+}
+}
+}
+cursor = limit - v_3;
+int v_5 = limit - cursor;
+r_residual_suffix();
+cursor = limit - v_5;
+cursor = limit_backward;
+int v_6 = cursor;
+r_cleaning();
+cursor = v_6;
+return true;
+}
- @Override
- public int hashCode() {
- return CatalanStemmer.class.getName().hashCode();
- }
+@Override
+public boolean equals( Object o ) {
+ return o instanceof CatalanStemmer;
+}
+
+@Override
+public int hashCode() {
+ return CatalanStemmer.class.getName().hashCode();
+}
diff --git a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/DanishStemmer.java b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/DanishStemmer.java
index 8917b5e..b8679b3 100644
--- a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/DanishStemmer.java
+++ b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/DanishStemmer.java
@@ -1,442 +1,301 @@
-// This file was generated automatically by the Snowball to Java compiler
+// Generated by Snowball 2.0.0 - https://snowballstem.org/
package org.tartarus.snowball.ext;
import org.tartarus.snowball.Among;
-import org.tartarus.snowball.SnowballProgram;
- /**
- * This class was automatically generated by a Snowball to Java compiler
- * It implements the stemming algorithm defined by a snowball script.
- */
+/**
+ * This class implements the stemming algorithm defined by a snowball script.
+ * <p>
+ * Generated by Snowball 2.0.0 - https://snowballstem.org/
+ * </p>
+ */
+@SuppressWarnings("unused")
+public class DanishStemmer extends org.tartarus.snowball.SnowballStemmer {
-@SuppressWarnings("unused") public class DanishStemmer extends SnowballProgram {
+ private static final long serialVersionUID = 1L;
+ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
-private static final long serialVersionUID = 1L;
+ private final static Among a_0[] = {
+ new Among("hed", -1, 1),
+ new Among("ethed", 0, 1),
+ new Among("ered", -1, 1),
+ new Among("e", -1, 1),
+ new Among("erede", 3, 1),
+ new Among("ende", 3, 1),
+ new Among("erende", 5, 1),
+ new Among("ene", 3, 1),
+ new Among("erne", 3, 1),
+ new Among("ere", 3, 1),
+ new Among("en", -1, 1),
+ new Among("heden", 10, 1),
+ new Among("eren", 10, 1),
+ new Among("er", -1, 1),
+ new Among("heder", 13, 1),
+ new Among("erer", 13, 1),
+ new Among("s", -1, 2),
+ new Among("heds", 16, 1),
+ new Among("es", 16, 1),
+ new Among("endes", 18, 1),
+ new Among("erendes", 19, 1),
+ new Among("enes", 18, 1),
+ new Among("ernes", 18, 1),
+ new Among("eres", 18, 1),
+ new Among("ens", 16, 1),
+ new Among("hedens", 24, 1),
+ new Among("erens", 24, 1),
+ new Among("ers", 16, 1),
+ new Among("ets", 16, 1),
+ new Among("erets", 28, 1),
+ new Among("et", -1, 1),
+ new Among("eret", 30, 1)
+ };
- /* patched */ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
+ private final static Among a_1[] = {
+ new Among("gd", -1, -1),
+ new Among("dt", -1, -1),
+ new Among("gt", -1, -1),
+ new Among("kt", -1, -1)
+ };
- private final static Among a_0[] = {
- new Among ( "hed", -1, 1, "", methodObject ),
- new Among ( "ethed", 0, 1, "", methodObject ),
- new Among ( "ered", -1, 1, "", methodObject ),
- new Among ( "e", -1, 1, "", methodObject ),
- new Among ( "erede", 3, 1, "", methodObject ),
- new Among ( "ende", 3, 1, "", methodObject ),
- new Among ( "erende", 5, 1, "", methodObject ),
- new Among ( "ene", 3, 1, "", methodObject ),
- new Among ( "erne", 3, 1, "", methodObject ),
- new Among ( "ere", 3, 1, "", methodObject ),
- new Among ( "en", -1, 1, "", methodObject ),
- new Among ( "heden", 10, 1, "", methodObject ),
- new Among ( "eren", 10, 1, "", methodObject ),
- new Among ( "er", -1, 1, "", methodObject ),
- new Among ( "heder", 13, 1, "", methodObject ),
- new Among ( "erer", 13, 1, "", methodObject ),
- new Among ( "s", -1, 2, "", methodObject ),
- new Among ( "heds", 16, 1, "", methodObject ),
- new Among ( "es", 16, 1, "", methodObject ),
- new Among ( "endes", 18, 1, "", methodObject ),
- new Among ( "erendes", 19, 1, "", methodObject ),
- new Among ( "enes", 18, 1, "", methodObject ),
- new Among ( "ernes", 18, 1, "", methodObject ),
- new Among ( "eres", 18, 1, "", methodObject ),
- new Among ( "ens", 16, 1, "", methodObject ),
- new Among ( "hedens", 24, 1, "", methodObject ),
- new Among ( "erens", 24, 1, "", methodObject ),
- new Among ( "ers", 16, 1, "", methodObject ),
- new Among ( "ets", 16, 1, "", methodObject ),
- new Among ( "erets", 28, 1, "", methodObject ),
- new Among ( "et", -1, 1, "", methodObject ),
- new Among ( "eret", 30, 1, "", methodObject )
- };
+ private final static Among a_2[] = {
+ new Among("ig", -1, 1),
+ new Among("lig", 0, 1),
+ new Among("elig", 1, 1),
+ new Among("els", -1, 1),
+ new Among("l\u00F8st", -1, 2)
+ };
- private final static Among a_1[] = {
- new Among ( "gd", -1, -1, "", methodObject ),
- new Among ( "dt", -1, -1, "", methodObject ),
- new Among ( "gt", -1, -1, "", methodObject ),
- new Among ( "kt", -1, -1, "", methodObject )
- };
+ private static final char g_c[] = {119, 223, 119, 1 };
- private final static Among a_2[] = {
- new Among ( "ig", -1, 1, "", methodObject ),
- new Among ( "lig", 0, 1, "", methodObject ),
- new Among ( "elig", 1, 1, "", methodObject ),
- new Among ( "els", -1, 1, "", methodObject ),
- new Among ( "l\u00F8st", -1, 2, "", methodObject )
- };
+ private static final char g_v[] = {17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 128 };
- private static final char g_v[] = {17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 128 };
+ private static final char g_s_ending[] = {239, 254, 42, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16 };
- private static final char g_s_ending[] = {239, 254, 42, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16 };
+ private int I_x;
+ private int I_p1;
+ private java.lang.StringBuilder S_ch = new java.lang.StringBuilder();
- private int I_x;
- private int I_p1;
- private java.lang.StringBuilder S_ch = new java.lang.StringBuilder();
- private void copy_from(DanishStemmer other) {
- I_x = other.I_x;
- I_p1 = other.I_p1;
- S_ch = other.S_ch;
- super.copy_from(other);
- }
-
- private boolean r_mark_regions() {
- int v_1;
- int v_2;
- // (, line 29
- I_p1 = limit;
- // test, line 33
- v_1 = cursor;
- // (, line 33
- // hop, line 33
- {
- int c = cursor + 3;
- if (0 > c || c > limit)
- {
- return false;
- }
- cursor = c;
- }
- // setmark x, line 33
- I_x = cursor;
- cursor = v_1;
- // goto, line 34
- golab0: while(true)
- {
- v_2 = cursor;
- lab1: do {
- if (!(in_grouping(g_v, 97, 248)))
- {
- break lab1;
- }
- cursor = v_2;
- break golab0;
- } while (false);
- cursor = v_2;
- if (cursor >= limit)
- {
- return false;
- }
- cursor++;
- }
- // gopast, line 34
- golab2: while(true)
- {
- lab3: do {
- if (!(out_grouping(g_v, 97, 248)))
- {
- break lab3;
- }
- break golab2;
- } while (false);
- if (cursor >= limit)
- {
- return false;
- }
- cursor++;
- }
- // setmark p1, line 34
- I_p1 = cursor;
- // try, line 35
- lab4: do {
- // (, line 35
- if (!(I_p1 < I_x))
- {
- break lab4;
- }
- I_p1 = I_x;
- } while (false);
- return true;
- }
+ private boolean r_mark_regions() {
+ I_p1 = limit;
+ int v_1 = cursor;
+ {
+ int c = cursor + 3;
+ if (0 > c || c > limit)
+ {
+ return false;
+ }
+ cursor = c;
+ }
+ I_x = cursor;
+ cursor = v_1;
+golab0: while(true)
+ {
+ int v_2 = cursor;
+lab1: {
+ if (!(in_grouping(g_v, 97, 248)))
+ {
+ break lab1;
+ }
+ cursor = v_2;
+ break golab0;
+}
+cursor = v_2;
+if (cursor >= limit)
+{
+ return false;
+}
+cursor++;
+ }
+golab2: while(true)
+{
+lab3: {
+ if (!(out_grouping(g_v, 97, 248)))
+ {
+ break lab3;
+ }
+ break golab2;
+}
+if (cursor >= limit)
+{
+ return false;
+}
+cursor++;
+}
+I_p1 = cursor;
+lab4: {
+ if (!(I_p1 < I_x))
+ {
+ break lab4;
+ }
+ I_p1 = I_x;
+}
+return true;
+ }
- private boolean r_main_suffix() {
- int among_var;
- int v_1;
- int v_2;
- // (, line 40
- // setlimit, line 41
- v_1 = limit - cursor;
- // tomark, line 41
- if (cursor < I_p1)
- {
- return false;
- }
- cursor = I_p1;
- v_2 = limit_backward;
- limit_backward = cursor;
- cursor = limit - v_1;
- // (, line 41
- // [, line 41
- ket = cursor;
- // substring, line 41
- among_var = find_among_b(a_0, 32);
- if (among_var == 0)
- {
- limit_backward = v_2;
- return false;
- }
- // ], line 41
- bra = cursor;
- limit_backward = v_2;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 48
- // delete, line 48
- slice_del();
- break;
- case 2:
- // (, line 50
- if (!(in_grouping_b(g_s_ending, 97, 229)))
- {
- return false;
- }
- // delete, line 50
- slice_del();
- break;
- }
- return true;
- }
+private boolean r_main_suffix() {
+ int among_var;
+ if (cursor < I_p1)
+ {
+ return false;
+ }
+ int v_2 = limit_backward;
+ limit_backward = I_p1;
+ ket = cursor;
+ among_var = find_among_b(a_0);
+ if (among_var == 0)
+ {
+ limit_backward = v_2;
+ return false;
+ }
+ bra = cursor;
+ limit_backward = v_2;
+ switch (among_var) {
+ case 1:
+ slice_del();
+ break;
+ case 2:
+ if (!(in_grouping_b(g_s_ending, 97, 229)))
+ {
+ return false;
+ }
+ slice_del();
+ break;
+ }
+ return true;
+}
- private boolean r_consonant_pair() {
- int v_1;
- int v_2;
- int v_3;
- // (, line 54
- // test, line 55
- v_1 = limit - cursor;
- // (, line 55
- // setlimit, line 56
- v_2 = limit - cursor;
- // tomark, line 56
- if (cursor < I_p1)
- {
- return false;
- }
- cursor = I_p1;
- v_3 = limit_backward;
- limit_backward = cursor;
- cursor = limit - v_2;
- // (, line 56
- // [, line 56
- ket = cursor;
- // substring, line 56
- if (find_among_b(a_1, 4) == 0)
- {
- limit_backward = v_3;
- return false;
- }
- // ], line 56
- bra = cursor;
- limit_backward = v_3;
- cursor = limit - v_1;
- // next, line 62
- if (cursor <= limit_backward)
- {
- return false;
- }
- cursor--;
- // ], line 62
- bra = cursor;
- // delete, line 62
- slice_del();
- return true;
- }
+private boolean r_consonant_pair() {
+ int v_1 = limit - cursor;
+ if (cursor < I_p1)
+ {
+ return false;
+ }
+ int v_3 = limit_backward;
+ limit_backward = I_p1;
+ ket = cursor;
+ if (find_among_b(a_1) == 0)
+ {
+ limit_backward = v_3;
+ return false;
+ }
+ bra = cursor;
+ limit_backward = v_3;
+ cursor = limit - v_1;
+ if (cursor <= limit_backward)
+ {
+ return false;
+ }
+ cursor--;
+ bra = cursor;
+ slice_del();
+ return true;
+}
- private boolean r_other_suffix() {
- int among_var;
- int v_1;
- int v_2;
- int v_3;
- int v_4;
- // (, line 65
- // do, line 66
- v_1 = limit - cursor;
- lab0: do {
- // (, line 66
- // [, line 66
- ket = cursor;
- // literal, line 66
- if (!(eq_s_b(2, "st")))
- {
- break lab0;
- }
- // ], line 66
- bra = cursor;
- // literal, line 66
- if (!(eq_s_b(2, "ig")))
- {
- break lab0;
- }
- // delete, line 66
- slice_del();
- } while (false);
- cursor = limit - v_1;
- // setlimit, line 67
- v_2 = limit - cursor;
- // tomark, line 67
- if (cursor < I_p1)
- {
- return false;
- }
- cursor = I_p1;
- v_3 = limit_backward;
- limit_backward = cursor;
- cursor = limit - v_2;
- // (, line 67
- // [, line 67
- ket = cursor;
- // substring, line 67
- among_var = find_among_b(a_2, 5);
- if (among_var == 0)
- {
- limit_backward = v_3;
- return false;
- }
- // ], line 67
- bra = cursor;
- limit_backward = v_3;
- switch(among_var) {
- case 0:
- return false;
- case 1:
- // (, line 70
- // delete, line 70
- slice_del();
- // do, line 70
- v_4 = limit - cursor;
- lab1: do {
- // call consonant_pair, line 70
- if (!r_consonant_pair())
- {
- break lab1;
- }
- } while (false);
- cursor = limit - v_4;
- break;
- case 2:
- // (, line 72
- // <-, line 72
- slice_from("l\u00F8s");
- break;
- }
- return true;
- }
+private boolean r_other_suffix() {
+ int among_var;
+ int v_1 = limit - cursor;
+lab0: {
+ ket = cursor;
+ if (!(eq_s_b("st")))
+ {
+ break lab0;
+ }
+ bra = cursor;
+ if (!(eq_s_b("ig")))
+ {
+ break lab0;
+ }
+ slice_del();
+}
+cursor = limit - v_1;
+if (cursor < I_p1)
+{
+ return false;
+}
+int v_3 = limit_backward;
+limit_backward = I_p1;
+ket = cursor;
+among_var = find_among_b(a_2);
+if (among_var == 0)
+{
+ limit_backward = v_3;
+ return false;
+}
+bra = cursor;
+limit_backward = v_3;
+switch (among_var) {
+ case 1:
+ slice_del();
+ int v_4 = limit - cursor;
+ r_consonant_pair();
+ cursor = limit - v_4;
+ break;
+ case 2:
+ slice_from("l\u00F8s");
+ break;
+}
+return true;
+}
- private boolean r_undouble() {
- int v_1;
- int v_2;
- // (, line 75
- // setlimit, line 76
- v_1 = limit - cursor;
- // tomark, line 76
- if (cursor < I_p1)
- {
- return false;
- }
- cursor = I_p1;
- v_2 = limit_backward;
- limit_backward = cursor;
- cursor = limit - v_1;
- // (, line 76
- // [, line 76
- ket = cursor;
- if (!(out_grouping_b(g_v, 97, 248)))
- {
- limit_backward = v_2;
- return false;
- }
- // ], line 76
- bra = cursor;
- // -> ch, line 76
- S_ch = slice_to(S_ch);
- limit_backward = v_2;
- // name ch, line 77
- if (!(eq_v_b(S_ch)))
- {
- return false;
- }
- // delete, line 78
- slice_del();
- return true;
- }
+private boolean r_undouble() {
+ if (cursor < I_p1)
+ {
+ return false;
+ }
+ int v_2 = limit_backward;
+ limit_backward = I_p1;
+ ket = cursor;
+ if (!(in_grouping_b(g_c, 98, 122)))
+ {
+ limit_backward = v_2;
+ return false;
+ }
+ bra = cursor;
+ slice_to(S_ch);
+ limit_backward = v_2;
+ if (!(eq_s_b(S_ch)))
+ {
+ return false;
+ }
+ slice_del();
+ return true;
+}
- @Override
- public boolean stem() {
- int v_1;
- int v_2;
- int v_3;
- int v_4;
- int v_5;
- // (, line 82
- // do, line 84
- v_1 = cursor;
- lab0: do {
- // call mark_regions, line 84
- if (!r_mark_regions())
- {
- break lab0;
- }
- } while (false);
- cursor = v_1;
- // backwards, line 85
- limit_backward = cursor; cursor = limit;
- // (, line 85
- // do, line 86
- v_2 = limit - cursor;
- lab1: do {
- // call main_suffix, line 86
- if (!r_main_suffix())
- {
- break lab1;
- }
- } while (false);
- cursor = limit - v_2;
- // do, line 87
- v_3 = limit - cursor;
- lab2: do {
- // call consonant_pair, line 87
- if (!r_consonant_pair())
- {
- break lab2;
- }
- } while (false);
- cursor = limit - v_3;
- // do, line 88
- v_4 = limit - cursor;
- lab3: do {
- // call other_suffix, line 88
- if (!r_other_suffix())
- {
- break lab3;
- }
- } while (false);
- cursor = limit - v_4;
- // do, line 89
- v_5 = limit - cursor;
- lab4: do {
- // call undouble, line 89
- if (!r_undouble())
- {
- break lab4;
- }
- } while (false);
- cursor = limit - v_5;
- cursor = limit_backward; return true;
- }
+public boolean stem() {
+ int v_1 = cursor;
+ r_mark_regions();
+ cursor = v_1;
+ limit_backward = cursor;
+ cursor = limit;
+ int v_2 = limit - cursor;
+ r_main_suffix();
+ cursor = limit - v_2;
+ int v_3 = limit - cursor;
+ r_consonant_pair();
+ cursor = limit - v_3;
+ int v_4 = limit - cursor;
+ r_other_suffix();
+ cursor = limit - v_4;
+ int v_5 = limit - cursor;
+ r_undouble();
+ cursor = limit - v_5;
+ cursor = limit_backward;
+ return true;
+}
- @Override
- public boolean equals( Object o ) {
- return o instanceof DanishStemmer;
- }
+@Override
+public boolean equals( Object o ) {
+ return o instanceof DanishStemmer;
+}
- @Override
- public int hashCode() {
- return DanishStemmer.class.getName().hashCode();
- }
+@Override
+public int hashCode() {
+ return DanishStemmer.class.getName().hashCode();
+}
}
+
diff --git a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/DutchStemmer.java b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/DutchStemmer.java
index 6f89850..9e7eded 100644
--- a/lucene/analysis/common/src/java/org/tartarus/snowball/ext/DutchStemmer.java
+++ b/lucene/analysis/common/src/java/org/tartarus/snowball/ext/DutchStemmer.java
@@ -1,855 +1,626 @@
-// This file was generated automatically by the Snowball to Java compiler
+// Generated by Snowball 2.0.0 - https://snowballstem.org/
package org.tartarus.snowball.ext;
import org.tartarus.snowball.Among;
-import org.tartarus.snowball.SnowballProgram;
- /**
- * This class was automatically generated by a Snowball to Java compiler
- * It implements the stemming algorithm defined by a snowball script.
- */
-
-@SuppressWarnings("unused") public class DutchStemmer extends SnowballProgram {
-
-private static final long serialVersionUID = 1L;
-
- /* patched */ private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup();
-
- private final static Among a_0[] = {
- new Among ( "", -1, 6, "", methodObject ),
- new Among ( "\u00E1", 0, 1, "", methodObject ),
- new Among ( "\u00E4", 0, 1, "", methodObject ),
- new Among ( "\u00E9", 0, 2, "", methodObject ),
- new Among ( "\u00EB", 0, 2, "", methodObject ),
- new Among ( "\u00ED", 0, 3, "", methodObject ),
- new Among ( "\u00EF", 0, 3, "", methodObject ),
- new Among ( "\u00F3", 0, 4, "", methodObject ),
- new Among ( "\u00F6", 0, 4, "", methodObject ),
- new Among ( "\u00FA", 0, 5, "", methodObject ),
- new Among ( "\u00FC", 0, 5, "", methodObject )
- };
-
- private final static Among a_1[] = {
- new Among ( "", -1, 3, "", methodObject ),
- new Among ( "I", 0, 2, "", methodObject ),
- new Among ( "Y", 0, 1, "", methodObject )
- };
-
- private final static Among a_2[] = {
- new Among ( "dd", -1, -1, "", methodObject ),
- new Among ( "kk", -1, -1, "", methodObject ),
- new Among ( "tt", -1, -1, "", methodObject )
- };
-
- private final static Among a_3[] = {
- new Among ( "ene", -1, 2, "", methodObject ),
- new Among ( "se", -1, 3, "", methodObject ),
- new Among ( "en", -1, 2, "", methodObject ),
- new Among ( "heden", 2, 1, "", methodObject ),
- new Among ( "s", -1, 3, "", methodObject )
- };
-
- private final static Among a_4[] = {
- new Among ( "end", -1, 1, "", methodObject ),
- new Among ( "ig", -1, 2, "", methodObject ),
- new Among ( "ing", -1, 1, "", methodObject ),
- new Among ( "lijk", -1, 3, "", methodObject ),
- new Among ( "baar", -1, 4, "", methodObject ),
- new Among ( "bar", -1, 5, "", methodObject )
- };
-
- private final static Among a_5[] = {
- new Among ( "aa", -1, -1, "", methodObject ),
- new Among ( "ee", -1, -1, "", methodObject ),
- new Among ( "oo", -1, -1, "", methodObject ),
- new Among ( "uu", -1, -1, "", methodObject )
- };
-
- private static final char g_v[] = {17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
-
- private static final char g_v_I[] = {1, 0, 0, 17, 65, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
-
- private static final char g_v_j[] = {17, 67, 16, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128 };
-
- private int I_p2;
- private int I_p1;
- private boolean B_e_found;
-
- private void copy_from(DutchStemmer other) {
- I_p2 = other.I_p2;
- I_p1 = other.I_p1;
- B_e_found = other.B_e_found;
- super.copy_from(other);
- }
-
- private boolean r_prelude() {
- int among_var;
- int v_1;
- int v_2;
- int v_3;
- int v_4;
- int v_5;
- int v_6;
- // (, line 41
- // test, line 42
- v_1 = cursor;
- // repeat, line 42
- replab0: while(true)
- {
- v_2 = cursor;
- lab1: do {
- // (, line 42
- // [, line 43
- bra = cursor;
- // substring, line 43
- among_var = find_among(a_0, 11);
- if (among_var == 0)
- {
- break lab1;
- }
- // ], line 43
- ket = cursor;
- switch(among_var) {
- case 0:
- break lab1;
- case 1:
- // (, line 45
- // <-, line 45
- slice_from("a");
- break;
- case 2:
- // (, line 47
- // <-, line 47
- slice_from("e");
- break;
- case 3:
- // (, line 49
- // <-, line 49
- slice_from("i");
- break;
- case 4:
- // (, line 51
- // <-, line 51
- slice_from("o");
- break;
- case 5:
- // (, line 53
- // <-, line 53
- slice_from("u");
- break;
- case 6:
- // (, line 54
- // next, line 54
- if (cursor >= limit)
- {
- break lab1;
- }
- cursor++;
- break;
- }
- continue replab0;
- } while (false);
- cursor = v_2;
- break replab0;
- }
- cursor = v_1;
- // try, line 57
- v_3 = cursor;
- lab2: do {
- // (, line 57
- // [, line 57
- bra = cursor;
- // literal, line 57
- if (!(eq_s(1, "y")))
- {
- cursor = v_3;
- break lab2;
- }
- // ], line 57
- ket = cursor;
- // <-, line 57
- slice_from("Y");
- } while (false);
- // repeat, line 58
- replab3: while(true)
- {
- v_4 = cursor;
- lab4: do {
- // goto, line 58
- golab5: while(true)
- {
- v_5 = cursor;
- lab6: do {
- // (, line 58
- if (!(in_grouping(g_v, 97, 232)))
- {
- break lab6;
- }
- // [, line 59
- bra = cursor;
- // or, line 59
- lab7: do {
- v_6 = cursor;
- lab8: do {
- // (, line 59
- // literal, line 59
- if (!(eq_s(1, "i")))
- {
- break lab8;
- }
- // ], line 59
- ket = cursor;
- if (!(in_grouping(g_v, 97, 232)))
- {
- break lab8;
- }
- // <-, line 59
- slice_from("I");
- break lab7;
- } while (false);
- cursor = v_6;
- // (, line 60
- // literal, line 60
- if (!(eq_s(1, "y")))
- {
- break lab6;
- }
- // ], line 60
- ket = cursor;
- // <-, line 60
- slice_from("Y");
- } while (false);
- cursor = v_5;
- break golab5;
- } while (false);
- cursor = v_5;
- if (cursor >= limit)
- {
- break lab4;
- }
- cursor++;
- }
- continue replab3;
- } while (false);
- cursor = v_4;
- break replab3;
- }
- return true;
- }
-
- private boolean r_mark_regions() {
- // (, line 64
- I_p1 = limit;
- I_p2 = limit;
- // gopast, line 69
- golab0: while(true)
- {
- lab1: do {
- if (!(in_grouping(g_v, 97, 232)))
- {
- break lab1;
- }
- break golab0;
- } while (false);
- if (cursor >= limit)
- {
- return false;
- }
- cursor++;
- }
- // gopast, line 69
- golab2: while(true)
- {
- lab3: do {
- if (!(out_grouping(g_v, 97, 232)))
- {
- break lab3;
- }
- break golab2;
- } while (false);
- if (cursor >= limit)
- {
... 51338 lines suppressed ...