--- /dev/null
+// This file was generated automatically by the Snowball to Java compiler
+
+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.
+ */
+
+public class ArmenianStemmer extends SnowballProgram {
+
+private static final long serialVersionUID = 1L;
+
+ private final static ArmenianStemmer methodObject = new ArmenianStemmer ();
+
+ 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_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_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 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 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_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_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_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_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;
+ }
+
+ 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 equals( Object o ) {
+ return o instanceof ArmenianStemmer;
+ }
+
+ public int hashCode() {
+ return ArmenianStemmer.class.getName().hashCode();
+ }
+
+
+
+}
+