X-Git-Url: https://git.mdrn.pl/pylucene.git/blobdiff_plain/a2e61f0c04805cfcb8706176758d1283c7e3a55c..aaeed5504b982cf3545252ab528713250aa33eed:/lucene-java-3.5.0/lucene/contrib/analyzers/common/src/java/org/tartarus/snowball/ext/ItalianStemmer.java diff --git a/lucene-java-3.5.0/lucene/contrib/analyzers/common/src/java/org/tartarus/snowball/ext/ItalianStemmer.java b/lucene-java-3.5.0/lucene/contrib/analyzers/common/src/java/org/tartarus/snowball/ext/ItalianStemmer.java new file mode 100644 index 0000000..d352b86 --- /dev/null +++ b/lucene-java-3.5.0/lucene/contrib/analyzers/common/src/java/org/tartarus/snowball/ext/ItalianStemmer.java @@ -0,0 +1,1180 @@ +// This file was generated automatically by the Snowball to Java compiler + +package org.tartarus.snowball.ext; +import org.tartarus.snowball.SnowballProgram; +import org.tartarus.snowball.Among; + +/** + * Generated class implementing code defined by a snowball script. + */ +public class ItalianStemmer extends SnowballProgram { + + private Among a_0[] = { + new Among ( "", -1, 7, "", this), + new Among ( "qu", 0, 6, "", this), + new Among ( "\u00E1", 0, 1, "", this), + new Among ( "\u00E9", 0, 2, "", this), + new Among ( "\u00ED", 0, 3, "", this), + new Among ( "\u00F3", 0, 4, "", this), + new Among ( "\u00FA", 0, 5, "", this) + }; + + private Among a_1[] = { + new Among ( "", -1, 3, "", this), + new Among ( "I", 0, 1, "", this), + new Among ( "U", 0, 2, "", this) + }; + + private Among a_2[] = { + new Among ( "la", -1, -1, "", this), + new Among ( "cela", 0, -1, "", this), + new Among ( "gliela", 0, -1, "", this), + new Among ( "mela", 0, -1, "", this), + new Among ( "tela", 0, -1, "", this), + new Among ( "vela", 0, -1, "", this), + new Among ( "le", -1, -1, "", this), + new Among ( "cele", 6, -1, "", this), + new Among ( "gliele", 6, -1, "", this), + new Among ( "mele", 6, -1, "", this), + new Among ( "tele", 6, -1, "", this), + new Among ( "vele", 6, -1, "", this), + new Among ( "ne", -1, -1, "", this), + new Among ( "cene", 12, -1, "", this), + new Among ( "gliene", 12, -1, "", this), + new Among ( "mene", 12, -1, "", this), + new Among ( "sene", 12, -1, "", this), + new Among ( "tene", 12, -1, "", this), + new Among ( "vene", 12, -1, "", this), + new Among ( "ci", -1, -1, "", this), + new Among ( "li", -1, -1, "", this), + new Among ( "celi", 20, -1, "", this), + new Among ( "glieli", 20, -1, "", this), + new Among ( "meli", 20, -1, "", this), + new Among ( "teli", 20, -1, "", this), + new Among ( "veli", 20, -1, "", this), + new Among ( "gli", 20, -1, "", this), + new Among ( "mi", -1, -1, "", this), + new Among ( "si", -1, -1, "", this), + new Among ( "ti", -1, -1, "", this), + new Among ( "vi", -1, -1, "", this), + new Among ( "lo", -1, -1, "", this), + new Among ( "celo", 31, -1, "", this), + new Among ( "glielo", 31, -1, "", this), + new Among ( "melo", 31, -1, "", this), + new Among ( "telo", 31, -1, "", this), + new Among ( "velo", 31, -1, "", this) + }; + + private Among a_3[] = { + new Among ( "ando", -1, 1, "", this), + new Among ( "endo", -1, 1, "", this), + new Among ( "ar", -1, 2, "", this), + new Among ( "er", -1, 2, "", this), + new Among ( "ir", -1, 2, "", this) + }; + + private Among a_4[] = { + new Among ( "ic", -1, -1, "", this), + new Among ( "abil", -1, -1, "", this), + new Among ( "os", -1, -1, "", this), + new Among ( "iv", -1, 1, "", this) + }; + + private Among a_5[] = { + new Among ( "ic", -1, 1, "", this), + new Among ( "abil", -1, 1, "", this), + new Among ( "iv", -1, 1, "", this) + }; + + private Among a_6[] = { + new Among ( "ica", -1, 1, "", this), + new Among ( "logia", -1, 3, "", this), + new Among ( "osa", -1, 1, "", this), + new Among ( "ista", -1, 1, "", this), + new Among ( "iva", -1, 9, "", this), + new Among ( "anza", -1, 1, "", this), + new Among ( "enza", -1, 5, "", this), + new Among ( "ice", -1, 1, "", this), + new Among ( "atrice", 7, 1, "", this), + new Among ( "iche", -1, 1, "", this), + new Among ( "logie", -1, 3, "", this), + new Among ( "abile", -1, 1, "", this), + new Among ( "ibile", -1, 1, "", this), + new Among ( "usione", -1, 4, "", this), + new Among ( "azione", -1, 2, "", this), + new Among ( "uzione", -1, 4, "", this), + new Among ( "atore", -1, 2, "", this), + new Among ( "ose", -1, 1, "", this), + new Among ( "ante", -1, 1, "", this), + new Among ( "mente", -1, 1, "", this), + new Among ( "amente", 19, 7, "", this), + new Among ( "iste", -1, 1, "", this), + new Among ( "ive", -1, 9, "", this), + new Among ( "anze", -1, 1, "", this), + new Among ( "enze", -1, 5, "", this), + new Among ( "ici", -1, 1, "", this), + new Among ( "atrici", 25, 1, "", this), + new Among ( "ichi", -1, 1, "", this), + new Among ( "abili", -1, 1, "", this), + new Among ( "ibili", -1, 1, "", this), + new Among ( "ismi", -1, 1, "", this), + new Among ( "usioni", -1, 4, "", this), + new Among ( "azioni", -1, 2, "", this), + new Among ( "uzioni", -1, 4, "", this), + new Among ( "atori", -1, 2, "", this), + new Among ( "osi", -1, 1, "", this), + new Among ( "anti", -1, 1, "", this), + new Among ( "amenti", -1, 6, "", this), + new Among ( "imenti", -1, 6, "", this), + new Among ( "isti", -1, 1, "", this), + new Among ( "ivi", -1, 9, "", this), + new Among ( "ico", -1, 1, "", this), + new Among ( "ismo", -1, 1, "", this), + new Among ( "oso", -1, 1, "", this), + new Among ( "amento", -1, 6, "", this), + new Among ( "imento", -1, 6, "", this), + new Among ( "ivo", -1, 9, "", this), + new Among ( "it\u00E0", -1, 8, "", this), + new Among ( "ist\u00E0", -1, 1, "", this), + new Among ( "ist\u00E8", -1, 1, "", this), + new Among ( "ist\u00EC", -1, 1, "", this) + }; + + private Among a_7[] = { + new Among ( "isca", -1, 1, "", this), + new Among ( "enda", -1, 1, "", this), + new Among ( "ata", -1, 1, "", this), + new Among ( "ita", -1, 1, "", this), + new Among ( "uta", -1, 1, "", this), + new Among ( "ava", -1, 1, "", this), + new Among ( "eva", -1, 1, "", this), + new Among ( "iva", -1, 1, "", this), + new Among ( "erebbe", -1, 1, "", this), + new Among ( "irebbe", -1, 1, "", this), + new Among ( "isce", -1, 1, "", this), + new Among ( "ende", -1, 1, "", this), + new Among ( "are", -1, 1, "", this), + new Among ( "ere", -1, 1, "", this), + new Among ( "ire", -1, 1, "", this), + new Among ( "asse", -1, 1, "", this), + new Among ( "ate", -1, 1, "", this), + new Among ( "avate", 16, 1, "", this), + new Among ( "evate", 16, 1, "", this), + new Among ( "ivate", 16, 1, "", this), + new Among ( "ete", -1, 1, "", this), + new Among ( "erete", 20, 1, "", this), + new Among ( "irete", 20, 1, "", this), + new Among ( "ite", -1, 1, "", this), + new Among ( "ereste", -1, 1, "", this), + new Among ( "ireste", -1, 1, "", this), + new Among ( "ute", -1, 1, "", this), + new Among ( "erai", -1, 1, "", this), + new Among ( "irai", -1, 1, "", this), + new Among ( "isci", -1, 1, "", this), + new Among ( "endi", -1, 1, "", this), + new Among ( "erei", -1, 1, "", this), + new Among ( "irei", -1, 1, "", this), + new Among ( "assi", -1, 1, "", this), + new Among ( "ati", -1, 1, "", this), + new Among ( "iti", -1, 1, "", this), + new Among ( "eresti", -1, 1, "", this), + new Among ( "iresti", -1, 1, "", this), + new Among ( "uti", -1, 1, "", this), + new Among ( "avi", -1, 1, "", this), + new Among ( "evi", -1, 1, "", this), + new Among ( "ivi", -1, 1, "", this), + new Among ( "isco", -1, 1, "", this), + new Among ( "ando", -1, 1, "", this), + new Among ( "endo", -1, 1, "", this), + new Among ( "Yamo", -1, 1, "", this), + new Among ( "iamo", -1, 1, "", this), + new Among ( "avamo", -1, 1, "", this), + new Among ( "evamo", -1, 1, "", this), + new Among ( "ivamo", -1, 1, "", this), + new Among ( "eremo", -1, 1, "", this), + new Among ( "iremo", -1, 1, "", this), + new Among ( "assimo", -1, 1, "", this), + new Among ( "ammo", -1, 1, "", this), + new Among ( "emmo", -1, 1, "", this), + new Among ( "eremmo", 54, 1, "", this), + new Among ( "iremmo", 54, 1, "", this), + new Among ( "immo", -1, 1, "", this), + new Among ( "ano", -1, 1, "", this), + new Among ( "iscano", 58, 1, "", this), + new Among ( "avano", 58, 1, "", this), + new Among ( "evano", 58, 1, "", this), + new Among ( "ivano", 58, 1, "", this), + new Among ( "eranno", -1, 1, "", this), + new Among ( "iranno", -1, 1, "", this), + new Among ( "ono", -1, 1, "", this), + new Among ( "iscono", 65, 1, "", this), + new Among ( "arono", 65, 1, "", this), + new Among ( "erono", 65, 1, "", this), + new Among ( "irono", 65, 1, "", this), + new Among ( "erebbero", -1, 1, "", this), + new Among ( "irebbero", -1, 1, "", this), + new Among ( "assero", -1, 1, "", this), + new Among ( "essero", -1, 1, "", this), + new Among ( "issero", -1, 1, "", this), + new Among ( "ato", -1, 1, "", this), + new Among ( "ito", -1, 1, "", this), + new Among ( "uto", -1, 1, "", this), + new Among ( "avo", -1, 1, "", this), + new Among ( "evo", -1, 1, "", this), + new Among ( "ivo", -1, 1, "", this), + new Among ( "ar", -1, 1, "", this), + new Among ( "ir", -1, 1, "", this), + new Among ( "er\u00E0", -1, 1, "", this), + new Among ( "ir\u00E0", -1, 1, "", this), + new Among ( "er\u00F2", -1, 1, "", this), + new Among ( "ir\u00F2", -1, 1, "", this) + }; + + private static final char g_v[] = {17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 8, 2, 1 }; + + private static final char g_AEIO[] = {17, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128, 128, 8, 2 }; + + private static final char g_CG[] = {17 }; + + private int I_p2; + private int I_p1; + private int I_pV; + + private void copy_from(ItalianStemmer other) { + I_p2 = other.I_p2; + I_p1 = other.I_p1; + I_pV = other.I_pV; + 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; + // (, line 34 + // test, line 35 + v_1 = cursor; + // repeat, line 35 + replab0: while(true) + { + v_2 = cursor; + lab1: do { + // (, line 35 + // [, line 36 + bra = cursor; + // substring, line 36 + among_var = find_among(a_0, 7); + if (among_var == 0) + { + break lab1; + } + // ], line 36 + ket = cursor; + switch(among_var) { + case 0: + break lab1; + case 1: + // (, line 37 + // <-, line 37 + slice_from("\u00E0"); + break; + case 2: + // (, line 38 + // <-, line 38 + slice_from("\u00E8"); + break; + case 3: + // (, line 39 + // <-, line 39 + slice_from("\u00EC"); + break; + case 4: + // (, line 40 + // <-, line 40 + slice_from("\u00F2"); + break; + case 5: + // (, line 41 + // <-, line 41 + slice_from("\u00F9"); + break; + case 6: + // (, line 42 + // <-, line 42 + slice_from("qU"); + break; + case 7: + // (, line 43 + // next, line 43 + if (cursor >= limit) + { + break lab1; + } + cursor++; + break; + } + continue replab0; + } while (false); + cursor = v_2; + break replab0; + } + cursor = v_1; + // repeat, line 46 + replab2: while(true) + { + v_3 = cursor; + lab3: do { + // goto, line 46 + golab4: while(true) + { + v_4 = cursor; + lab5: do { + // (, line 46 + if (!(in_grouping(g_v, 97, 249))) + { + break lab5; + } + // [, line 47 + bra = cursor; + // or, line 47 + lab6: do { + v_5 = cursor; + lab7: do { + // (, line 47 + // literal, line 47 + if (!(eq_s(1, "u"))) + { + break lab7; + } + // ], line 47 + ket = cursor; + if (!(in_grouping(g_v, 97, 249))) + { + break lab7; + } + // <-, line 47 + slice_from("U"); + break lab6; + } while (false); + cursor = v_5; + // (, line 48 + // literal, line 48 + if (!(eq_s(1, "i"))) + { + break lab5; + } + // ], line 48 + ket = cursor; + if (!(in_grouping(g_v, 97, 249))) + { + break lab5; + } + // <-, line 48 + slice_from("I"); + } while (false); + cursor = v_4; + break golab4; + } while (false); + cursor = v_4; + if (cursor >= limit) + { + break lab3; + } + cursor++; + } + continue replab2; + } while (false); + cursor = v_3; + break replab2; + } + return true; + } + + private boolean r_mark_regions() { + int v_1; + int v_2; + int v_3; + int v_6; + int v_8; + // (, line 52 + I_pV = limit; + I_p1 = limit; + I_p2 = limit; + // do, line 58 + v_1 = cursor; + lab0: do { + // (, line 58 + // or, line 60 + lab1: do { + v_2 = cursor; + lab2: do { + // (, line 59 + if (!(in_grouping(g_v, 97, 249))) + { + break lab2; + } + // or, line 59 + lab3: do { + v_3 = cursor; + lab4: do { + // (, line 59 + if (!(out_grouping(g_v, 97, 249))) + { + break lab4; + } + // gopast, line 59 + golab5: while(true) + { + lab6: do { + if (!(in_grouping(g_v, 97, 249))) + { + break lab6; + } + break golab5; + } while (false); + if (cursor >= limit) + { + break lab4; + } + cursor++; + } + break lab3; + } while (false); + cursor = v_3; + // (, line 59 + if (!(in_grouping(g_v, 97, 249))) + { + break lab2; + } + // gopast, line 59 + golab7: while(true) + { + lab8: do { + if (!(out_grouping(g_v, 97, 249))) + { + break lab8; + } + break golab7; + } while (false); + if (cursor >= limit) + { + break lab2; + } + cursor++; + } + } while (false); + break lab1; + } while (false); + cursor = v_2; + // (, line 61 + if (!(out_grouping(g_v, 97, 249))) + { + break lab0; + } + // or, line 61 + lab9: do { + v_6 = cursor; + lab10: do { + // (, line 61 + if (!(out_grouping(g_v, 97, 249))) + { + break lab10; + } + // gopast, line 61 + golab11: while(true) + { + lab12: do { + if (!(in_grouping(g_v, 97, 249))) + { + break lab12; + } + break golab11; + } while (false); + if (cursor >= limit) + { + break lab10; + } + cursor++; + } + break lab9; + } while (false); + cursor = v_6; + // (, line 61 + if (!(in_grouping(g_v, 97, 249))) + { + break lab0; + } + // next, line 61 + if (cursor >= limit) + { + break lab0; + } + cursor++; + } while (false); + } while (false); + // setmark pV, line 62 + I_pV = cursor; + } while (false); + cursor = v_1; + // do, line 64 + v_8 = cursor; + lab13: do { + // (, line 64 + // gopast, line 65 + golab14: while(true) + { + lab15: do { + if (!(in_grouping(g_v, 97, 249))) + { + break lab15; + } + break golab14; + } while (false); + if (cursor >= limit) + { + break lab13; + } + cursor++; + } + // gopast, line 65 + golab16: while(true) + { + lab17: do { + if (!(out_grouping(g_v, 97, 249))) + { + break lab17; + } + break golab16; + } while (false); + if (cursor >= limit) + { + break lab13; + } + cursor++; + } + // setmark p1, line 65 + I_p1 = cursor; + // gopast, line 66 + golab18: while(true) + { + lab19: do { + if (!(in_grouping(g_v, 97, 249))) + { + break lab19; + } + break golab18; + } while (false); + if (cursor >= limit) + { + break lab13; + } + cursor++; + } + // gopast, line 66 + golab20: while(true) + { + lab21: do { + if (!(out_grouping(g_v, 97, 249))) + { + break lab21; + } + break golab20; + } while (false); + if (cursor >= limit) + { + break lab13; + } + cursor++; + } + // setmark p2, line 66 + I_p2 = cursor; + } while (false); + cursor = v_8; + return true; + } + + private boolean r_postlude() { + int among_var; + int v_1; + // repeat, line 70 + replab0: while(true) + { + v_1 = cursor; + lab1: do { + // (, line 70 + // [, line 72 + bra = cursor; + // substring, line 72 + among_var = find_among(a_1, 3); + if (among_var == 0) + { + break lab1; + } + // ], line 72 + ket = cursor; + switch(among_var) { + case 0: + break lab1; + case 1: + // (, line 73 + // <-, line 73 + slice_from("i"); + break; + case 2: + // (, line 74 + // <-, line 74 + slice_from("u"); + break; + case 3: + // (, line 75 + // next, line 75 + if (cursor >= limit) + { + break lab1; + } + cursor++; + break; + } + continue replab0; + } while (false); + cursor = v_1; + break replab0; + } + 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_attached_pronoun() { + int among_var; + // (, line 86 + // [, line 87 + ket = cursor; + // substring, line 87 + if (find_among_b(a_2, 37) == 0) + { + return false; + } + // ], line 87 + bra = cursor; + // among, line 97 + among_var = find_among_b(a_3, 5); + if (among_var == 0) + { + return false; + } + // (, line 97 + // call RV, line 97 + if (!r_RV()) + { + return false; + } + switch(among_var) { + case 0: + return false; + case 1: + // (, line 98 + // delete, line 98 + slice_del(); + break; + case 2: + // (, line 99 + // <-, line 99 + slice_from("e"); + break; + } + return true; + } + + private boolean r_standard_suffix() { + int among_var; + int v_1; + int v_2; + int v_3; + int v_4; + // (, line 103 + // [, line 104 + ket = cursor; + // substring, line 104 + among_var = find_among_b(a_6, 51); + if (among_var == 0) + { + return false; + } + // ], line 104 + bra = cursor; + switch(among_var) { + case 0: + return false; + case 1: + // (, line 111 + // call R2, line 111 + if (!r_R2()) + { + return false; + } + // delete, line 111 + slice_del(); + break; + case 2: + // (, line 113 + // call R2, line 113 + if (!r_R2()) + { + return false; + } + // delete, line 113 + slice_del(); + // try, line 114 + v_1 = limit - cursor; + lab0: do { + // (, line 114 + // [, line 114 + ket = cursor; + // literal, line 114 + if (!(eq_s_b(2, "ic"))) + { + cursor = limit - v_1; + break lab0; + } + // ], line 114 + bra = cursor; + // call R2, line 114 + if (!r_R2()) + { + cursor = limit - v_1; + break lab0; + } + // delete, line 114 + slice_del(); + } while (false); + break; + case 3: + // (, line 117 + // call R2, line 117 + if (!r_R2()) + { + return false; + } + // <-, line 117 + slice_from("log"); + break; + case 4: + // (, line 119 + // call R2, line 119 + if (!r_R2()) + { + return false; + } + // <-, line 119 + slice_from("u"); + break; + case 5: + // (, line 121 + // call R2, line 121 + if (!r_R2()) + { + return false; + } + // <-, line 121 + slice_from("ente"); + break; + case 6: + // (, line 123 + // call RV, line 123 + if (!r_RV()) + { + return false; + } + // delete, line 123 + slice_del(); + break; + case 7: + // (, line 124 + // call R1, line 125 + if (!r_R1()) + { + return false; + } + // delete, line 125 + slice_del(); + // try, line 126 + v_2 = limit - cursor; + lab1: do { + // (, line 126 + // [, line 127 + ket = cursor; + // substring, line 127 + among_var = find_among_b(a_4, 4); + if (among_var == 0) + { + cursor = limit - v_2; + break lab1; + } + // ], line 127 + bra = cursor; + // call R2, line 127 + if (!r_R2()) + { + cursor = limit - v_2; + break lab1; + } + // delete, line 127 + slice_del(); + switch(among_var) { + case 0: + cursor = limit - v_2; + break lab1; + case 1: + // (, line 128 + // [, line 128 + ket = cursor; + // literal, line 128 + if (!(eq_s_b(2, "at"))) + { + cursor = limit - v_2; + break lab1; + } + // ], line 128 + bra = cursor; + // call R2, line 128 + if (!r_R2()) + { + cursor = limit - v_2; + break lab1; + } + // delete, line 128 + slice_del(); + break; + } + } while (false); + break; + case 8: + // (, line 133 + // call R2, line 134 + if (!r_R2()) + { + return false; + } + // delete, line 134 + slice_del(); + // try, line 135 + v_3 = limit - cursor; + lab2: do { + // (, line 135 + // [, line 136 + ket = cursor; + // substring, line 136 + among_var = find_among_b(a_5, 3); + if (among_var == 0) + { + cursor = limit - v_3; + break lab2; + } + // ], line 136 + bra = cursor; + switch(among_var) { + case 0: + cursor = limit - v_3; + break lab2; + case 1: + // (, line 137 + // call R2, line 137 + if (!r_R2()) + { + cursor = limit - v_3; + break lab2; + } + // delete, line 137 + slice_del(); + break; + } + } while (false); + break; + case 9: + // (, line 141 + // call R2, line 142 + if (!r_R2()) + { + return false; + } + // delete, line 142 + slice_del(); + // try, line 143 + v_4 = limit - cursor; + lab3: do { + // (, line 143 + // [, line 143 + ket = cursor; + // literal, line 143 + if (!(eq_s_b(2, "at"))) + { + cursor = limit - v_4; + break lab3; + } + // ], line 143 + bra = cursor; + // call R2, line 143 + if (!r_R2()) + { + cursor = limit - v_4; + break lab3; + } + // delete, line 143 + slice_del(); + // [, line 143 + ket = cursor; + // literal, line 143 + if (!(eq_s_b(2, "ic"))) + { + cursor = limit - v_4; + break lab3; + } + // ], line 143 + bra = cursor; + // call R2, line 143 + if (!r_R2()) + { + cursor = limit - v_4; + break lab3; + } + // delete, line 143 + slice_del(); + } while (false); + break; + } + return true; + } + + private boolean r_verb_suffix() { + int among_var; + int v_1; + int v_2; + // setlimit, line 148 + v_1 = limit - cursor; + // tomark, line 148 + if (cursor < I_pV) + { + return false; + } + cursor = I_pV; + v_2 = limit_backward; + limit_backward = cursor; + cursor = limit - v_1; + // (, line 148 + // [, line 149 + ket = cursor; + // substring, line 149 + among_var = find_among_b(a_7, 87); + if (among_var == 0) + { + limit_backward = v_2; + return false; + } + // ], line 149 + bra = cursor; + switch(among_var) { + case 0: + limit_backward = v_2; + return false; + case 1: + // (, line 163 + // delete, line 163 + slice_del(); + break; + } + limit_backward = v_2; + return true; + } + + private boolean r_vowel_suffix() { + int v_1; + int v_2; + // (, line 170 + // try, line 171 + v_1 = limit - cursor; + lab0: do { + // (, line 171 + // [, line 172 + ket = cursor; + if (!(in_grouping_b(g_AEIO, 97, 242))) + { + cursor = limit - v_1; + break lab0; + } + // ], line 172 + bra = cursor; + // call RV, line 172 + if (!r_RV()) + { + cursor = limit - v_1; + break lab0; + } + // delete, line 172 + slice_del(); + // [, line 173 + ket = cursor; + // literal, line 173 + if (!(eq_s_b(1, "i"))) + { + cursor = limit - v_1; + break lab0; + } + // ], line 173 + bra = cursor; + // call RV, line 173 + if (!r_RV()) + { + cursor = limit - v_1; + break lab0; + } + // delete, line 173 + slice_del(); + } while (false); + // try, line 175 + v_2 = limit - cursor; + lab1: do { + // (, line 175 + // [, line 176 + ket = cursor; + // literal, line 176 + if (!(eq_s_b(1, "h"))) + { + cursor = limit - v_2; + break lab1; + } + // ], line 176 + bra = cursor; + if (!(in_grouping_b(g_CG, 99, 103))) + { + cursor = limit - v_2; + break lab1; + } + // call RV, line 176 + if (!r_RV()) + { + cursor = limit - v_2; + break lab1; + } + // delete, line 176 + slice_del(); + } while (false); + 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 181 + // do, line 182 + v_1 = cursor; + lab0: do { + // call prelude, line 182 + if (!r_prelude()) + { + break lab0; + } + } while (false); + cursor = v_1; + // do, line 183 + v_2 = cursor; + lab1: do { + // call mark_regions, line 183 + if (!r_mark_regions()) + { + break lab1; + } + } while (false); + cursor = v_2; + // backwards, line 184 + limit_backward = cursor; cursor = limit; + // (, line 184 + // do, line 185 + v_3 = limit - cursor; + lab2: do { + // call attached_pronoun, line 185 + if (!r_attached_pronoun()) + { + break lab2; + } + } while (false); + cursor = limit - v_3; + // do, line 186 + v_4 = limit - cursor; + lab3: do { + // (, line 186 + // or, line 186 + lab4: do { + v_5 = limit - cursor; + lab5: do { + // call standard_suffix, line 186 + if (!r_standard_suffix()) + { + break lab5; + } + break lab4; + } while (false); + cursor = limit - v_5; + // call verb_suffix, line 186 + if (!r_verb_suffix()) + { + break lab3; + } + } while (false); + } while (false); + cursor = limit - v_4; + // do, line 187 + v_6 = limit - cursor; + lab6: do { + // call vowel_suffix, line 187 + if (!r_vowel_suffix()) + { + break lab6; + } + } while (false); + cursor = limit - v_6; + cursor = limit_backward; // do, line 189 + v_7 = cursor; + lab7: do { + // call postlude, line 189 + if (!r_postlude()) + { + break lab7; + } + } while (false); + cursor = v_7; + return true; + } + +} +