Coverage Report - org.tartarus.snowball.ext.italianStemmer
 
Classes in this File Line Coverage Branch Coverage Complexity
italianStemmer
0%
0/365
0%
0/188
13.357
 
 1  
 // This file was generated automatically by the Snowball to Java compiler
 2  
 
 3  
 package org.tartarus.snowball.ext;
 4  
 
 5  
 import org.tartarus.snowball.Among;
 6  
 
 7  
  /**
 8  
   * This class was automatically generated by a Snowball to Java compiler 
 9  
   * It implements the stemming algorithm defined by a snowball script.
 10  
   */
 11  
 
 12  0
 public class italianStemmer extends org.tartarus.snowball.SnowballStemmer {
 13  
 
 14  
 private static final long serialVersionUID = 1L;
 15  
 
 16  0
         private final static italianStemmer methodObject = new italianStemmer ();
 17  
 
 18  0
                 private final static Among a_0[] = {
 19  
                     new Among ( "", -1, 7, "", methodObject ),
 20  
                     new Among ( "qu", 0, 6, "", methodObject ),
 21  
                     new Among ( "\u00E1", 0, 1, "", methodObject ),
 22  
                     new Among ( "\u00E9", 0, 2, "", methodObject ),
 23  
                     new Among ( "\u00ED", 0, 3, "", methodObject ),
 24  
                     new Among ( "\u00F3", 0, 4, "", methodObject ),
 25  
                     new Among ( "\u00FA", 0, 5, "", methodObject )
 26  
                 };
 27  
 
 28  0
                 private final static Among a_1[] = {
 29  
                     new Among ( "", -1, 3, "", methodObject ),
 30  
                     new Among ( "I", 0, 1, "", methodObject ),
 31  
                     new Among ( "U", 0, 2, "", methodObject )
 32  
                 };
 33  
 
 34  0
                 private final static Among a_2[] = {
 35  
                     new Among ( "la", -1, -1, "", methodObject ),
 36  
                     new Among ( "cela", 0, -1, "", methodObject ),
 37  
                     new Among ( "gliela", 0, -1, "", methodObject ),
 38  
                     new Among ( "mela", 0, -1, "", methodObject ),
 39  
                     new Among ( "tela", 0, -1, "", methodObject ),
 40  
                     new Among ( "vela", 0, -1, "", methodObject ),
 41  
                     new Among ( "le", -1, -1, "", methodObject ),
 42  
                     new Among ( "cele", 6, -1, "", methodObject ),
 43  
                     new Among ( "gliele", 6, -1, "", methodObject ),
 44  
                     new Among ( "mele", 6, -1, "", methodObject ),
 45  
                     new Among ( "tele", 6, -1, "", methodObject ),
 46  
                     new Among ( "vele", 6, -1, "", methodObject ),
 47  
                     new Among ( "ne", -1, -1, "", methodObject ),
 48  
                     new Among ( "cene", 12, -1, "", methodObject ),
 49  
                     new Among ( "gliene", 12, -1, "", methodObject ),
 50  
                     new Among ( "mene", 12, -1, "", methodObject ),
 51  
                     new Among ( "sene", 12, -1, "", methodObject ),
 52  
                     new Among ( "tene", 12, -1, "", methodObject ),
 53  
                     new Among ( "vene", 12, -1, "", methodObject ),
 54  
                     new Among ( "ci", -1, -1, "", methodObject ),
 55  
                     new Among ( "li", -1, -1, "", methodObject ),
 56  
                     new Among ( "celi", 20, -1, "", methodObject ),
 57  
                     new Among ( "glieli", 20, -1, "", methodObject ),
 58  
                     new Among ( "meli", 20, -1, "", methodObject ),
 59  
                     new Among ( "teli", 20, -1, "", methodObject ),
 60  
                     new Among ( "veli", 20, -1, "", methodObject ),
 61  
                     new Among ( "gli", 20, -1, "", methodObject ),
 62  
                     new Among ( "mi", -1, -1, "", methodObject ),
 63  
                     new Among ( "si", -1, -1, "", methodObject ),
 64  
                     new Among ( "ti", -1, -1, "", methodObject ),
 65  
                     new Among ( "vi", -1, -1, "", methodObject ),
 66  
                     new Among ( "lo", -1, -1, "", methodObject ),
 67  
                     new Among ( "celo", 31, -1, "", methodObject ),
 68  
                     new Among ( "glielo", 31, -1, "", methodObject ),
 69  
                     new Among ( "melo", 31, -1, "", methodObject ),
 70  
                     new Among ( "telo", 31, -1, "", methodObject ),
 71  
                     new Among ( "velo", 31, -1, "", methodObject )
 72  
                 };
 73  
 
 74  0
                 private final static Among a_3[] = {
 75  
                     new Among ( "ando", -1, 1, "", methodObject ),
 76  
                     new Among ( "endo", -1, 1, "", methodObject ),
 77  
                     new Among ( "ar", -1, 2, "", methodObject ),
 78  
                     new Among ( "er", -1, 2, "", methodObject ),
 79  
                     new Among ( "ir", -1, 2, "", methodObject )
 80  
                 };
 81  
 
 82  0
                 private final static Among a_4[] = {
 83  
                     new Among ( "ic", -1, -1, "", methodObject ),
 84  
                     new Among ( "abil", -1, -1, "", methodObject ),
 85  
                     new Among ( "os", -1, -1, "", methodObject ),
 86  
                     new Among ( "iv", -1, 1, "", methodObject )
 87  
                 };
 88  
 
 89  0
                 private final static Among a_5[] = {
 90  
                     new Among ( "ic", -1, 1, "", methodObject ),
 91  
                     new Among ( "abil", -1, 1, "", methodObject ),
 92  
                     new Among ( "iv", -1, 1, "", methodObject )
 93  
                 };
 94  
 
 95  0
                 private final static Among a_6[] = {
 96  
                     new Among ( "ica", -1, 1, "", methodObject ),
 97  
                     new Among ( "logia", -1, 3, "", methodObject ),
 98  
                     new Among ( "osa", -1, 1, "", methodObject ),
 99  
                     new Among ( "ista", -1, 1, "", methodObject ),
 100  
                     new Among ( "iva", -1, 9, "", methodObject ),
 101  
                     new Among ( "anza", -1, 1, "", methodObject ),
 102  
                     new Among ( "enza", -1, 5, "", methodObject ),
 103  
                     new Among ( "ice", -1, 1, "", methodObject ),
 104  
                     new Among ( "atrice", 7, 1, "", methodObject ),
 105  
                     new Among ( "iche", -1, 1, "", methodObject ),
 106  
                     new Among ( "logie", -1, 3, "", methodObject ),
 107  
                     new Among ( "abile", -1, 1, "", methodObject ),
 108  
                     new Among ( "ibile", -1, 1, "", methodObject ),
 109  
                     new Among ( "usione", -1, 4, "", methodObject ),
 110  
                     new Among ( "azione", -1, 2, "", methodObject ),
 111  
                     new Among ( "uzione", -1, 4, "", methodObject ),
 112  
                     new Among ( "atore", -1, 2, "", methodObject ),
 113  
                     new Among ( "ose", -1, 1, "", methodObject ),
 114  
                     new Among ( "ante", -1, 1, "", methodObject ),
 115  
                     new Among ( "mente", -1, 1, "", methodObject ),
 116  
                     new Among ( "amente", 19, 7, "", methodObject ),
 117  
                     new Among ( "iste", -1, 1, "", methodObject ),
 118  
                     new Among ( "ive", -1, 9, "", methodObject ),
 119  
                     new Among ( "anze", -1, 1, "", methodObject ),
 120  
                     new Among ( "enze", -1, 5, "", methodObject ),
 121  
                     new Among ( "ici", -1, 1, "", methodObject ),
 122  
                     new Among ( "atrici", 25, 1, "", methodObject ),
 123  
                     new Among ( "ichi", -1, 1, "", methodObject ),
 124  
                     new Among ( "abili", -1, 1, "", methodObject ),
 125  
                     new Among ( "ibili", -1, 1, "", methodObject ),
 126  
                     new Among ( "ismi", -1, 1, "", methodObject ),
 127  
                     new Among ( "usioni", -1, 4, "", methodObject ),
 128  
                     new Among ( "azioni", -1, 2, "", methodObject ),
 129  
                     new Among ( "uzioni", -1, 4, "", methodObject ),
 130  
                     new Among ( "atori", -1, 2, "", methodObject ),
 131  
                     new Among ( "osi", -1, 1, "", methodObject ),
 132  
                     new Among ( "anti", -1, 1, "", methodObject ),
 133  
                     new Among ( "amenti", -1, 6, "", methodObject ),
 134  
                     new Among ( "imenti", -1, 6, "", methodObject ),
 135  
                     new Among ( "isti", -1, 1, "", methodObject ),
 136  
                     new Among ( "ivi", -1, 9, "", methodObject ),
 137  
                     new Among ( "ico", -1, 1, "", methodObject ),
 138  
                     new Among ( "ismo", -1, 1, "", methodObject ),
 139  
                     new Among ( "oso", -1, 1, "", methodObject ),
 140  
                     new Among ( "amento", -1, 6, "", methodObject ),
 141  
                     new Among ( "imento", -1, 6, "", methodObject ),
 142  
                     new Among ( "ivo", -1, 9, "", methodObject ),
 143  
                     new Among ( "it\u00E0", -1, 8, "", methodObject ),
 144  
                     new Among ( "ist\u00E0", -1, 1, "", methodObject ),
 145  
                     new Among ( "ist\u00E8", -1, 1, "", methodObject ),
 146  
                     new Among ( "ist\u00EC", -1, 1, "", methodObject )
 147  
                 };
 148  
 
 149  0
                 private final static Among a_7[] = {
 150  
                     new Among ( "isca", -1, 1, "", methodObject ),
 151  
                     new Among ( "enda", -1, 1, "", methodObject ),
 152  
                     new Among ( "ata", -1, 1, "", methodObject ),
 153  
                     new Among ( "ita", -1, 1, "", methodObject ),
 154  
                     new Among ( "uta", -1, 1, "", methodObject ),
 155  
                     new Among ( "ava", -1, 1, "", methodObject ),
 156  
                     new Among ( "eva", -1, 1, "", methodObject ),
 157  
                     new Among ( "iva", -1, 1, "", methodObject ),
 158  
                     new Among ( "erebbe", -1, 1, "", methodObject ),
 159  
                     new Among ( "irebbe", -1, 1, "", methodObject ),
 160  
                     new Among ( "isce", -1, 1, "", methodObject ),
 161  
                     new Among ( "ende", -1, 1, "", methodObject ),
 162  
                     new Among ( "are", -1, 1, "", methodObject ),
 163  
                     new Among ( "ere", -1, 1, "", methodObject ),
 164  
                     new Among ( "ire", -1, 1, "", methodObject ),
 165  
                     new Among ( "asse", -1, 1, "", methodObject ),
 166  
                     new Among ( "ate", -1, 1, "", methodObject ),
 167  
                     new Among ( "avate", 16, 1, "", methodObject ),
 168  
                     new Among ( "evate", 16, 1, "", methodObject ),
 169  
                     new Among ( "ivate", 16, 1, "", methodObject ),
 170  
                     new Among ( "ete", -1, 1, "", methodObject ),
 171  
                     new Among ( "erete", 20, 1, "", methodObject ),
 172  
                     new Among ( "irete", 20, 1, "", methodObject ),
 173  
                     new Among ( "ite", -1, 1, "", methodObject ),
 174  
                     new Among ( "ereste", -1, 1, "", methodObject ),
 175  
                     new Among ( "ireste", -1, 1, "", methodObject ),
 176  
                     new Among ( "ute", -1, 1, "", methodObject ),
 177  
                     new Among ( "erai", -1, 1, "", methodObject ),
 178  
                     new Among ( "irai", -1, 1, "", methodObject ),
 179  
                     new Among ( "isci", -1, 1, "", methodObject ),
 180  
                     new Among ( "endi", -1, 1, "", methodObject ),
 181  
                     new Among ( "erei", -1, 1, "", methodObject ),
 182  
                     new Among ( "irei", -1, 1, "", methodObject ),
 183  
                     new Among ( "assi", -1, 1, "", methodObject ),
 184  
                     new Among ( "ati", -1, 1, "", methodObject ),
 185  
                     new Among ( "iti", -1, 1, "", methodObject ),
 186  
                     new Among ( "eresti", -1, 1, "", methodObject ),
 187  
                     new Among ( "iresti", -1, 1, "", methodObject ),
 188  
                     new Among ( "uti", -1, 1, "", methodObject ),
 189  
                     new Among ( "avi", -1, 1, "", methodObject ),
 190  
                     new Among ( "evi", -1, 1, "", methodObject ),
 191  
                     new Among ( "ivi", -1, 1, "", methodObject ),
 192  
                     new Among ( "isco", -1, 1, "", methodObject ),
 193  
                     new Among ( "ando", -1, 1, "", methodObject ),
 194  
                     new Among ( "endo", -1, 1, "", methodObject ),
 195  
                     new Among ( "Yamo", -1, 1, "", methodObject ),
 196  
                     new Among ( "iamo", -1, 1, "", methodObject ),
 197  
                     new Among ( "avamo", -1, 1, "", methodObject ),
 198  
                     new Among ( "evamo", -1, 1, "", methodObject ),
 199  
                     new Among ( "ivamo", -1, 1, "", methodObject ),
 200  
                     new Among ( "eremo", -1, 1, "", methodObject ),
 201  
                     new Among ( "iremo", -1, 1, "", methodObject ),
 202  
                     new Among ( "assimo", -1, 1, "", methodObject ),
 203  
                     new Among ( "ammo", -1, 1, "", methodObject ),
 204  
                     new Among ( "emmo", -1, 1, "", methodObject ),
 205  
                     new Among ( "eremmo", 54, 1, "", methodObject ),
 206  
                     new Among ( "iremmo", 54, 1, "", methodObject ),
 207  
                     new Among ( "immo", -1, 1, "", methodObject ),
 208  
                     new Among ( "ano", -1, 1, "", methodObject ),
 209  
                     new Among ( "iscano", 58, 1, "", methodObject ),
 210  
                     new Among ( "avano", 58, 1, "", methodObject ),
 211  
                     new Among ( "evano", 58, 1, "", methodObject ),
 212  
                     new Among ( "ivano", 58, 1, "", methodObject ),
 213  
                     new Among ( "eranno", -1, 1, "", methodObject ),
 214  
                     new Among ( "iranno", -1, 1, "", methodObject ),
 215  
                     new Among ( "ono", -1, 1, "", methodObject ),
 216  
                     new Among ( "iscono", 65, 1, "", methodObject ),
 217  
                     new Among ( "arono", 65, 1, "", methodObject ),
 218  
                     new Among ( "erono", 65, 1, "", methodObject ),
 219  
                     new Among ( "irono", 65, 1, "", methodObject ),
 220  
                     new Among ( "erebbero", -1, 1, "", methodObject ),
 221  
                     new Among ( "irebbero", -1, 1, "", methodObject ),
 222  
                     new Among ( "assero", -1, 1, "", methodObject ),
 223  
                     new Among ( "essero", -1, 1, "", methodObject ),
 224  
                     new Among ( "issero", -1, 1, "", methodObject ),
 225  
                     new Among ( "ato", -1, 1, "", methodObject ),
 226  
                     new Among ( "ito", -1, 1, "", methodObject ),
 227  
                     new Among ( "uto", -1, 1, "", methodObject ),
 228  
                     new Among ( "avo", -1, 1, "", methodObject ),
 229  
                     new Among ( "evo", -1, 1, "", methodObject ),
 230  
                     new Among ( "ivo", -1, 1, "", methodObject ),
 231  
                     new Among ( "ar", -1, 1, "", methodObject ),
 232  
                     new Among ( "ir", -1, 1, "", methodObject ),
 233  
                     new Among ( "er\u00E0", -1, 1, "", methodObject ),
 234  
                     new Among ( "ir\u00E0", -1, 1, "", methodObject ),
 235  
                     new Among ( "er\u00F2", -1, 1, "", methodObject ),
 236  
                     new Among ( "ir\u00F2", -1, 1, "", methodObject )
 237  
                 };
 238  
 
 239  0
                 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 };
 240  
 
 241  0
                 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 };
 242  
 
 243  0
                 private static final char g_CG[] = {17 };
 244  
 
 245  
         private int I_p2;
 246  
         private int I_p1;
 247  
         private int I_pV;
 248  
 
 249  
                 private void copy_from(italianStemmer other) {
 250  0
                     I_p2 = other.I_p2;
 251  0
                     I_p1 = other.I_p1;
 252  0
                     I_pV = other.I_pV;
 253  0
                     super.copy_from(other);
 254  0
                 }
 255  
 
 256  
                 private boolean r_prelude() {
 257  
             int among_var;
 258  
             int v_1;
 259  
             int v_2;
 260  
             int v_3;
 261  
             int v_4;
 262  
             int v_5;
 263  
                     // (, line 34
 264  
                     // test, line 35
 265  0
                     v_1 = cursor;
 266  
                     // repeat, line 35
 267  
                     replab0: while(true)
 268  
                     {
 269  0
                         v_2 = cursor;
 270  
                         lab1: do {
 271  
                             // (, line 35
 272  
                             // [, line 36
 273  0
                             bra = cursor;
 274  
                             // substring, line 36
 275  0
                             among_var = find_among(a_0, 7);
 276  0
                             if (among_var == 0)
 277  
                             {
 278  0
                                 break lab1;
 279  
                             }
 280  
                             // ], line 36
 281  0
                             ket = cursor;
 282  0
                             switch(among_var) {
 283  
                                 case 0:
 284  0
                                     break lab1;
 285  
                                 case 1:
 286  
                                     // (, line 37
 287  
                                     // <-, line 37
 288  0
                                     slice_from("\u00E0");
 289  0
                                     break;
 290  
                                 case 2:
 291  
                                     // (, line 38
 292  
                                     // <-, line 38
 293  0
                                     slice_from("\u00E8");
 294  0
                                     break;
 295  
                                 case 3:
 296  
                                     // (, line 39
 297  
                                     // <-, line 39
 298  0
                                     slice_from("\u00EC");
 299  0
                                     break;
 300  
                                 case 4:
 301  
                                     // (, line 40
 302  
                                     // <-, line 40
 303  0
                                     slice_from("\u00F2");
 304  0
                                     break;
 305  
                                 case 5:
 306  
                                     // (, line 41
 307  
                                     // <-, line 41
 308  0
                                     slice_from("\u00F9");
 309  0
                                     break;
 310  
                                 case 6:
 311  
                                     // (, line 42
 312  
                                     // <-, line 42
 313  0
                                     slice_from("qU");
 314  0
                                     break;
 315  
                                 case 7:
 316  
                                     // (, line 43
 317  
                                     // next, line 43
 318  0
                                     if (cursor >= limit)
 319  
                                     {
 320  0
                                         break lab1;
 321  
                                     }
 322  0
                                     cursor++;
 323  
                                     break;
 324  
                             }
 325  0
                             continue replab0;
 326  
                         } while (false);
 327  0
                         cursor = v_2;
 328  0
                         break replab0;
 329  
                     }
 330  0
                     cursor = v_1;
 331  
                     // repeat, line 46
 332  
                     replab2: while(true)
 333  
                     {
 334  0
                         v_3 = cursor;
 335  
                         lab3: do {
 336  
                             // goto, line 46
 337  
                             golab4: while(true)
 338  
                             {
 339  0
                                 v_4 = cursor;
 340  
                                 lab5: do {
 341  
                                     // (, line 46
 342  0
                                     if (!(in_grouping(g_v, 97, 249)))
 343  
                                     {
 344  0
                                         break lab5;
 345  
                                     }
 346  
                                     // [, line 47
 347  0
                                     bra = cursor;
 348  
                                     // or, line 47
 349  
                                     lab6: do {
 350  0
                                         v_5 = cursor;
 351  
                                         lab7: do {
 352  
                                             // (, line 47
 353  
                                             // literal, line 47
 354  0
                                             if (!(eq_s(1, "u")))
 355  
                                             {
 356  0
                                                 break lab7;
 357  
                                             }
 358  
                                             // ], line 47
 359  0
                                             ket = cursor;
 360  0
                                             if (!(in_grouping(g_v, 97, 249)))
 361  
                                             {
 362  0
                                                 break lab7;
 363  
                                             }
 364  
                                             // <-, line 47
 365  0
                                             slice_from("U");
 366  0
                                             break lab6;
 367  
                                         } while (false);
 368  0
                                         cursor = v_5;
 369  
                                         // (, line 48
 370  
                                         // literal, line 48
 371  0
                                         if (!(eq_s(1, "i")))
 372  
                                         {
 373  0
                                             break lab5;
 374  
                                         }
 375  
                                         // ], line 48
 376  0
                                         ket = cursor;
 377  0
                                         if (!(in_grouping(g_v, 97, 249)))
 378  
                                         {
 379  0
                                             break lab5;
 380  
                                         }
 381  
                                         // <-, line 48
 382  0
                                         slice_from("I");
 383  
                                     } while (false);
 384  0
                                     cursor = v_4;
 385  0
                                     break golab4;
 386  
                                 } while (false);
 387  0
                                 cursor = v_4;
 388  0
                                 if (cursor >= limit)
 389  
                                 {
 390  0
                                     break lab3;
 391  
                                 }
 392  0
                                 cursor++;
 393  
                             }
 394  
                             continue replab2;
 395  
                         } while (false);
 396  0
                         cursor = v_3;
 397  0
                         break replab2;
 398  
                     }
 399  0
                     return true;
 400  
                 }
 401  
 
 402  
                 private boolean r_mark_regions() {
 403  
             int v_1;
 404  
             int v_2;
 405  
             int v_3;
 406  
             int v_6;
 407  
             int v_8;
 408  
                     // (, line 52
 409  0
                     I_pV = limit;
 410  0
                     I_p1 = limit;
 411  0
                     I_p2 = limit;
 412  
                     // do, line 58
 413  0
                     v_1 = cursor;
 414  
                     lab0: do {
 415  
                         // (, line 58
 416  
                         // or, line 60
 417  
                         lab1: do {
 418  0
                             v_2 = cursor;
 419  
                             lab2: do {
 420  
                                 // (, line 59
 421  0
                                 if (!(in_grouping(g_v, 97, 249)))
 422  
                                 {
 423  0
                                     break lab2;
 424  
                                 }
 425  
                                 // or, line 59
 426  
                                 lab3: do {
 427  0
                                     v_3 = cursor;
 428  
                                     lab4: do {
 429  
                                         // (, line 59
 430  0
                                         if (!(out_grouping(g_v, 97, 249)))
 431  
                                         {
 432  0
                                             break lab4;
 433  
                                         }
 434  
                                         // gopast, line 59
 435  
                                         golab5: while(true)
 436  
                                         {
 437  
                                             lab6: do {
 438  0
                                                 if (!(in_grouping(g_v, 97, 249)))
 439  
                                                 {
 440  
                                                     break lab6;
 441  
                                                 }
 442  
                                                 break golab5;
 443  
                                             } while (false);
 444  0
                                             if (cursor >= limit)
 445  
                                             {
 446  0
                                                 break lab4;
 447  
                                             }
 448  0
                                             cursor++;
 449  
                                         }
 450  
                                         break lab3;
 451  
                                     } while (false);
 452  0
                                     cursor = v_3;
 453  
                                     // (, line 59
 454  0
                                     if (!(in_grouping(g_v, 97, 249)))
 455  
                                     {
 456  0
                                         break lab2;
 457  
                                     }
 458  
                                     // gopast, line 59
 459  
                                     golab7: while(true)
 460  
                                     {
 461  
                                         lab8: do {
 462  0
                                             if (!(out_grouping(g_v, 97, 249)))
 463  
                                             {
 464  
                                                 break lab8;
 465  
                                             }
 466  
                                             break golab7;
 467  
                                         } while (false);
 468  0
                                         if (cursor >= limit)
 469  
                                         {
 470  0
                                             break lab2;
 471  
                                         }
 472  0
                                         cursor++;
 473  
                                     }
 474  
                                 } while (false);
 475  
                                 break lab1;
 476  
                             } while (false);
 477  0
                             cursor = v_2;
 478  
                             // (, line 61
 479  0
                             if (!(out_grouping(g_v, 97, 249)))
 480  
                             {
 481  0
                                 break lab0;
 482  
                             }
 483  
                             // or, line 61
 484  
                             lab9: do {
 485  0
                                 v_6 = cursor;
 486  
                                 lab10: do {
 487  
                                     // (, line 61
 488  0
                                     if (!(out_grouping(g_v, 97, 249)))
 489  
                                     {
 490  0
                                         break lab10;
 491  
                                     }
 492  
                                     // gopast, line 61
 493  
                                     golab11: while(true)
 494  
                                     {
 495  
                                         lab12: do {
 496  0
                                             if (!(in_grouping(g_v, 97, 249)))
 497  
                                             {
 498  
                                                 break lab12;
 499  
                                             }
 500  
                                             break golab11;
 501  
                                         } while (false);
 502  0
                                         if (cursor >= limit)
 503  
                                         {
 504  0
                                             break lab10;
 505  
                                         }
 506  0
                                         cursor++;
 507  
                                     }
 508  
                                     break lab9;
 509  
                                 } while (false);
 510  0
                                 cursor = v_6;
 511  
                                 // (, line 61
 512  0
                                 if (!(in_grouping(g_v, 97, 249)))
 513  
                                 {
 514  0
                                     break lab0;
 515  
                                 }
 516  
                                 // next, line 61
 517  0
                                 if (cursor >= limit)
 518  
                                 {
 519  0
                                     break lab0;
 520  
                                 }
 521  0
                                 cursor++;
 522  
                             } while (false);
 523  
                         } while (false);
 524  
                         // setmark pV, line 62
 525  0
                         I_pV = cursor;
 526  
                     } while (false);
 527  0
                     cursor = v_1;
 528  
                     // do, line 64
 529  0
                     v_8 = cursor;
 530  
                     lab13: do {
 531  
                         // (, line 64
 532  
                         // gopast, line 65
 533  
                         golab14: while(true)
 534  
                         {
 535  
                             lab15: do {
 536  0
                                 if (!(in_grouping(g_v, 97, 249)))
 537  
                                 {
 538  
                                     break lab15;
 539  
                                 }
 540  
                                 break golab14;
 541  
                             } while (false);
 542  0
                             if (cursor >= limit)
 543  
                             {
 544  0
                                 break lab13;
 545  
                             }
 546  0
                             cursor++;
 547  
                         }
 548  
                         // gopast, line 65
 549  
                         golab16: while(true)
 550  
                         {
 551  
                             lab17: do {
 552  0
                                 if (!(out_grouping(g_v, 97, 249)))
 553  
                                 {
 554  
                                     break lab17;
 555  
                                 }
 556  
                                 break golab16;
 557  
                             } while (false);
 558  0
                             if (cursor >= limit)
 559  
                             {
 560  0
                                 break lab13;
 561  
                             }
 562  0
                             cursor++;
 563  
                         }
 564  
                         // setmark p1, line 65
 565  0
                         I_p1 = cursor;
 566  
                         // gopast, line 66
 567  
                         golab18: while(true)
 568  
                         {
 569  
                             lab19: do {
 570  0
                                 if (!(in_grouping(g_v, 97, 249)))
 571  
                                 {
 572  
                                     break lab19;
 573  
                                 }
 574  
                                 break golab18;
 575  
                             } while (false);
 576  0
                             if (cursor >= limit)
 577  
                             {
 578  0
                                 break lab13;
 579  
                             }
 580  0
                             cursor++;
 581  
                         }
 582  
                         // gopast, line 66
 583  
                         golab20: while(true)
 584  
                         {
 585  
                             lab21: do {
 586  0
                                 if (!(out_grouping(g_v, 97, 249)))
 587  
                                 {
 588  
                                     break lab21;
 589  
                                 }
 590  
                                 break golab20;
 591  
                             } while (false);
 592  0
                             if (cursor >= limit)
 593  
                             {
 594  0
                                 break lab13;
 595  
                             }
 596  0
                             cursor++;
 597  
                         }
 598  
                         // setmark p2, line 66
 599  0
                         I_p2 = cursor;
 600  
                     } while (false);
 601  0
                     cursor = v_8;
 602  0
                     return true;
 603  
                 }
 604  
 
 605  
                 private boolean r_postlude() {
 606  
             int among_var;
 607  
             int v_1;
 608  
                     // repeat, line 70
 609  
                     replab0: while(true)
 610  
                     {
 611  0
                         v_1 = cursor;
 612  
                         lab1: do {
 613  
                             // (, line 70
 614  
                             // [, line 72
 615  0
                             bra = cursor;
 616  
                             // substring, line 72
 617  0
                             among_var = find_among(a_1, 3);
 618  0
                             if (among_var == 0)
 619  
                             {
 620  0
                                 break lab1;
 621  
                             }
 622  
                             // ], line 72
 623  0
                             ket = cursor;
 624  0
                             switch(among_var) {
 625  
                                 case 0:
 626  0
                                     break lab1;
 627  
                                 case 1:
 628  
                                     // (, line 73
 629  
                                     // <-, line 73
 630  0
                                     slice_from("i");
 631  0
                                     break;
 632  
                                 case 2:
 633  
                                     // (, line 74
 634  
                                     // <-, line 74
 635  0
                                     slice_from("u");
 636  0
                                     break;
 637  
                                 case 3:
 638  
                                     // (, line 75
 639  
                                     // next, line 75
 640  0
                                     if (cursor >= limit)
 641  
                                     {
 642  0
                                         break lab1;
 643  
                                     }
 644  0
                                     cursor++;
 645  
                                     break;
 646  
                             }
 647  0
                             continue replab0;
 648  
                         } while (false);
 649  0
                         cursor = v_1;
 650  0
                         break replab0;
 651  
                     }
 652  0
                     return true;
 653  
                 }
 654  
 
 655  
                 private boolean r_RV() {
 656  0
                     if (!(I_pV <= cursor))
 657  
                     {
 658  0
                         return false;
 659  
                     }
 660  0
                     return true;
 661  
                 }
 662  
 
 663  
                 private boolean r_R1() {
 664  0
                     if (!(I_p1 <= cursor))
 665  
                     {
 666  0
                         return false;
 667  
                     }
 668  0
                     return true;
 669  
                 }
 670  
 
 671  
                 private boolean r_R2() {
 672  0
                     if (!(I_p2 <= cursor))
 673  
                     {
 674  0
                         return false;
 675  
                     }
 676  0
                     return true;
 677  
                 }
 678  
 
 679  
                 private boolean r_attached_pronoun() {
 680  
             int among_var;
 681  
                     // (, line 86
 682  
                     // [, line 87
 683  0
                     ket = cursor;
 684  
                     // substring, line 87
 685  0
                     if (find_among_b(a_2, 37) == 0)
 686  
                     {
 687  0
                         return false;
 688  
                     }
 689  
                     // ], line 87
 690  0
                     bra = cursor;
 691  
                     // among, line 97
 692  0
                     among_var = find_among_b(a_3, 5);
 693  0
                     if (among_var == 0)
 694  
                     {
 695  0
                         return false;
 696  
                     }
 697  
                     // (, line 97
 698  
                     // call RV, line 97
 699  0
                     if (!r_RV())
 700  
                     {
 701  0
                         return false;
 702  
                     }
 703  0
                     switch(among_var) {
 704  
                         case 0:
 705  0
                             return false;
 706  
                         case 1:
 707  
                             // (, line 98
 708  
                             // delete, line 98
 709  0
                             slice_del();
 710  0
                             break;
 711  
                         case 2:
 712  
                             // (, line 99
 713  
                             // <-, line 99
 714  0
                             slice_from("e");
 715  
                             break;
 716  
                     }
 717  0
                     return true;
 718  
                 }
 719  
 
 720  
                 private boolean r_standard_suffix() {
 721  
             int among_var;
 722  
             int v_1;
 723  
             int v_2;
 724  
             int v_3;
 725  
             int v_4;
 726  
                     // (, line 103
 727  
                     // [, line 104
 728  0
                     ket = cursor;
 729  
                     // substring, line 104
 730  0
                     among_var = find_among_b(a_6, 51);
 731  0
                     if (among_var == 0)
 732  
                     {
 733  0
                         return false;
 734  
                     }
 735  
                     // ], line 104
 736  0
                     bra = cursor;
 737  0
                     switch(among_var) {
 738  
                         case 0:
 739  0
                             return false;
 740  
                         case 1:
 741  
                             // (, line 111
 742  
                             // call R2, line 111
 743  0
                             if (!r_R2())
 744  
                             {
 745  0
                                 return false;
 746  
                             }
 747  
                             // delete, line 111
 748  0
                             slice_del();
 749  0
                             break;
 750  
                         case 2:
 751  
                             // (, line 113
 752  
                             // call R2, line 113
 753  0
                             if (!r_R2())
 754  
                             {
 755  0
                                 return false;
 756  
                             }
 757  
                             // delete, line 113
 758  0
                             slice_del();
 759  
                             // try, line 114
 760  0
                             v_1 = limit - cursor;
 761  
                             lab0: do {
 762  
                                 // (, line 114
 763  
                                 // [, line 114
 764  0
                                 ket = cursor;
 765  
                                 // literal, line 114
 766  0
                                 if (!(eq_s_b(2, "ic")))
 767  
                                 {
 768  0
                                     cursor = limit - v_1;
 769  0
                                     break lab0;
 770  
                                 }
 771  
                                 // ], line 114
 772  0
                                 bra = cursor;
 773  
                                 // call R2, line 114
 774  0
                                 if (!r_R2())
 775  
                                 {
 776  0
                                     cursor = limit - v_1;
 777  0
                                     break lab0;
 778  
                                 }
 779  
                                 // delete, line 114
 780  0
                                 slice_del();
 781  
                             } while (false);
 782  0
                             break;
 783  
                         case 3:
 784  
                             // (, line 117
 785  
                             // call R2, line 117
 786  0
                             if (!r_R2())
 787  
                             {
 788  0
                                 return false;
 789  
                             }
 790  
                             // <-, line 117
 791  0
                             slice_from("log");
 792  0
                             break;
 793  
                         case 4:
 794  
                             // (, line 119
 795  
                             // call R2, line 119
 796  0
                             if (!r_R2())
 797  
                             {
 798  0
                                 return false;
 799  
                             }
 800  
                             // <-, line 119
 801  0
                             slice_from("u");
 802  0
                             break;
 803  
                         case 5:
 804  
                             // (, line 121
 805  
                             // call R2, line 121
 806  0
                             if (!r_R2())
 807  
                             {
 808  0
                                 return false;
 809  
                             }
 810  
                             // <-, line 121
 811  0
                             slice_from("ente");
 812  0
                             break;
 813  
                         case 6:
 814  
                             // (, line 123
 815  
                             // call RV, line 123
 816  0
                             if (!r_RV())
 817  
                             {
 818  0
                                 return false;
 819  
                             }
 820  
                             // delete, line 123
 821  0
                             slice_del();
 822  0
                             break;
 823  
                         case 7:
 824  
                             // (, line 124
 825  
                             // call R1, line 125
 826  0
                             if (!r_R1())
 827  
                             {
 828  0
                                 return false;
 829  
                             }
 830  
                             // delete, line 125
 831  0
                             slice_del();
 832  
                             // try, line 126
 833  0
                             v_2 = limit - cursor;
 834  
                             lab1: do {
 835  
                                 // (, line 126
 836  
                                 // [, line 127
 837  0
                                 ket = cursor;
 838  
                                 // substring, line 127
 839  0
                                 among_var = find_among_b(a_4, 4);
 840  0
                                 if (among_var == 0)
 841  
                                 {
 842  0
                                     cursor = limit - v_2;
 843  0
                                     break lab1;
 844  
                                 }
 845  
                                 // ], line 127
 846  0
                                 bra = cursor;
 847  
                                 // call R2, line 127
 848  0
                                 if (!r_R2())
 849  
                                 {
 850  0
                                     cursor = limit - v_2;
 851  0
                                     break lab1;
 852  
                                 }
 853  
                                 // delete, line 127
 854  0
                                 slice_del();
 855  0
                                 switch(among_var) {
 856  
                                     case 0:
 857  0
                                         cursor = limit - v_2;
 858  0
                                         break lab1;
 859  
                                     case 1:
 860  
                                         // (, line 128
 861  
                                         // [, line 128
 862  0
                                         ket = cursor;
 863  
                                         // literal, line 128
 864  0
                                         if (!(eq_s_b(2, "at")))
 865  
                                         {
 866  0
                                             cursor = limit - v_2;
 867  0
                                             break lab1;
 868  
                                         }
 869  
                                         // ], line 128
 870  0
                                         bra = cursor;
 871  
                                         // call R2, line 128
 872  0
                                         if (!r_R2())
 873  
                                         {
 874  0
                                             cursor = limit - v_2;
 875  0
                                             break lab1;
 876  
                                         }
 877  
                                         // delete, line 128
 878  0
                                         slice_del();
 879  
                                         break;
 880  
                                 }
 881  
                             } while (false);
 882  0
                             break;
 883  
                         case 8:
 884  
                             // (, line 133
 885  
                             // call R2, line 134
 886  0
                             if (!r_R2())
 887  
                             {
 888  0
                                 return false;
 889  
                             }
 890  
                             // delete, line 134
 891  0
                             slice_del();
 892  
                             // try, line 135
 893  0
                             v_3 = limit - cursor;
 894  
                             lab2: do {
 895  
                                 // (, line 135
 896  
                                 // [, line 136
 897  0
                                 ket = cursor;
 898  
                                 // substring, line 136
 899  0
                                 among_var = find_among_b(a_5, 3);
 900  0
                                 if (among_var == 0)
 901  
                                 {
 902  0
                                     cursor = limit - v_3;
 903  0
                                     break lab2;
 904  
                                 }
 905  
                                 // ], line 136
 906  0
                                 bra = cursor;
 907  0
                                 switch(among_var) {
 908  
                                     case 0:
 909  0
                                         cursor = limit - v_3;
 910  0
                                         break lab2;
 911  
                                     case 1:
 912  
                                         // (, line 137
 913  
                                         // call R2, line 137
 914  0
                                         if (!r_R2())
 915  
                                         {
 916  0
                                             cursor = limit - v_3;
 917  0
                                             break lab2;
 918  
                                         }
 919  
                                         // delete, line 137
 920  0
                                         slice_del();
 921  
                                         break;
 922  
                                 }
 923  
                             } while (false);
 924  0
                             break;
 925  
                         case 9:
 926  
                             // (, line 141
 927  
                             // call R2, line 142
 928  0
                             if (!r_R2())
 929  
                             {
 930  0
                                 return false;
 931  
                             }
 932  
                             // delete, line 142
 933  0
                             slice_del();
 934  
                             // try, line 143
 935  0
                             v_4 = limit - cursor;
 936  
                             lab3: do {
 937  
                                 // (, line 143
 938  
                                 // [, line 143
 939  0
                                 ket = cursor;
 940  
                                 // literal, line 143
 941  0
                                 if (!(eq_s_b(2, "at")))
 942  
                                 {
 943  0
                                     cursor = limit - v_4;
 944  0
                                     break lab3;
 945  
                                 }
 946  
                                 // ], line 143
 947  0
                                 bra = cursor;
 948  
                                 // call R2, line 143
 949  0
                                 if (!r_R2())
 950  
                                 {
 951  0
                                     cursor = limit - v_4;
 952  0
                                     break lab3;
 953  
                                 }
 954  
                                 // delete, line 143
 955  0
                                 slice_del();
 956  
                                 // [, line 143
 957  0
                                 ket = cursor;
 958  
                                 // literal, line 143
 959  0
                                 if (!(eq_s_b(2, "ic")))
 960  
                                 {
 961  0
                                     cursor = limit - v_4;
 962  0
                                     break lab3;
 963  
                                 }
 964  
                                 // ], line 143
 965  0
                                 bra = cursor;
 966  
                                 // call R2, line 143
 967  0
                                 if (!r_R2())
 968  
                                 {
 969  0
                                     cursor = limit - v_4;
 970  0
                                     break lab3;
 971  
                                 }
 972  
                                 // delete, line 143
 973  0
                                 slice_del();
 974  
                             } while (false);
 975  
                             break;
 976  
                     }
 977  0
                     return true;
 978  
                 }
 979  
 
 980  
                 private boolean r_verb_suffix() {
 981  
             int among_var;
 982  
             int v_1;
 983  
             int v_2;
 984  
                     // setlimit, line 148
 985  0
                     v_1 = limit - cursor;
 986  
                     // tomark, line 148
 987  0
                     if (cursor < I_pV)
 988  
                     {
 989  0
                         return false;
 990  
                     }
 991  0
                     cursor = I_pV;
 992  0
                     v_2 = limit_backward;
 993  0
                     limit_backward = cursor;
 994  0
                     cursor = limit - v_1;
 995  
                     // (, line 148
 996  
                     // [, line 149
 997  0
                     ket = cursor;
 998  
                     // substring, line 149
 999  0
                     among_var = find_among_b(a_7, 87);
 1000  0
                     if (among_var == 0)
 1001  
                     {
 1002  0
                         limit_backward = v_2;
 1003  0
                         return false;
 1004  
                     }
 1005  
                     // ], line 149
 1006  0
                     bra = cursor;
 1007  0
                     switch(among_var) {
 1008  
                         case 0:
 1009  0
                             limit_backward = v_2;
 1010  0
                             return false;
 1011  
                         case 1:
 1012  
                             // (, line 163
 1013  
                             // delete, line 163
 1014  0
                             slice_del();
 1015  
                             break;
 1016  
                     }
 1017  0
                     limit_backward = v_2;
 1018  0
                     return true;
 1019  
                 }
 1020  
 
 1021  
                 private boolean r_vowel_suffix() {
 1022  
             int v_1;
 1023  
             int v_2;
 1024  
                     // (, line 170
 1025  
                     // try, line 171
 1026  0
                     v_1 = limit - cursor;
 1027  
                     lab0: do {
 1028  
                         // (, line 171
 1029  
                         // [, line 172
 1030  0
                         ket = cursor;
 1031  0
                         if (!(in_grouping_b(g_AEIO, 97, 242)))
 1032  
                         {
 1033  0
                             cursor = limit - v_1;
 1034  0
                             break lab0;
 1035  
                         }
 1036  
                         // ], line 172
 1037  0
                         bra = cursor;
 1038  
                         // call RV, line 172
 1039  0
                         if (!r_RV())
 1040  
                         {
 1041  0
                             cursor = limit - v_1;
 1042  0
                             break lab0;
 1043  
                         }
 1044  
                         // delete, line 172
 1045  0
                         slice_del();
 1046  
                         // [, line 173
 1047  0
                         ket = cursor;
 1048  
                         // literal, line 173
 1049  0
                         if (!(eq_s_b(1, "i")))
 1050  
                         {
 1051  0
                             cursor = limit - v_1;
 1052  0
                             break lab0;
 1053  
                         }
 1054  
                         // ], line 173
 1055  0
                         bra = cursor;
 1056  
                         // call RV, line 173
 1057  0
                         if (!r_RV())
 1058  
                         {
 1059  0
                             cursor = limit - v_1;
 1060  0
                             break lab0;
 1061  
                         }
 1062  
                         // delete, line 173
 1063  0
                         slice_del();
 1064  
                     } while (false);
 1065  
                     // try, line 175
 1066  0
                     v_2 = limit - cursor;
 1067  
                     lab1: do {
 1068  
                         // (, line 175
 1069  
                         // [, line 176
 1070  0
                         ket = cursor;
 1071  
                         // literal, line 176
 1072  0
                         if (!(eq_s_b(1, "h")))
 1073  
                         {
 1074  0
                             cursor = limit - v_2;
 1075  0
                             break lab1;
 1076  
                         }
 1077  
                         // ], line 176
 1078  0
                         bra = cursor;
 1079  0
                         if (!(in_grouping_b(g_CG, 99, 103)))
 1080  
                         {
 1081  0
                             cursor = limit - v_2;
 1082  0
                             break lab1;
 1083  
                         }
 1084  
                         // call RV, line 176
 1085  0
                         if (!r_RV())
 1086  
                         {
 1087  0
                             cursor = limit - v_2;
 1088  0
                             break lab1;
 1089  
                         }
 1090  
                         // delete, line 176
 1091  0
                         slice_del();
 1092  
                     } while (false);
 1093  0
                     return true;
 1094  
                 }
 1095  
 
 1096  
                 public boolean stem() {
 1097  
             int v_1;
 1098  
             int v_2;
 1099  
             int v_3;
 1100  
             int v_4;
 1101  
             int v_5;
 1102  
             int v_6;
 1103  
             int v_7;
 1104  
                     // (, line 181
 1105  
                     // do, line 182
 1106  0
                     v_1 = cursor;
 1107  
                     lab0: do {
 1108  
                         // call prelude, line 182
 1109  0
                         if (!r_prelude())
 1110  
                         {
 1111  
                             break lab0;
 1112  
                         }
 1113  
                     } while (false);
 1114  0
                     cursor = v_1;
 1115  
                     // do, line 183
 1116  0
                     v_2 = cursor;
 1117  
                     lab1: do {
 1118  
                         // call mark_regions, line 183
 1119  0
                         if (!r_mark_regions())
 1120  
                         {
 1121  
                             break lab1;
 1122  
                         }
 1123  
                     } while (false);
 1124  0
                     cursor = v_2;
 1125  
                     // backwards, line 184
 1126  0
                     limit_backward = cursor; cursor = limit;
 1127  
                     // (, line 184
 1128  
                     // do, line 185
 1129  0
                     v_3 = limit - cursor;
 1130  
                     lab2: do {
 1131  
                         // call attached_pronoun, line 185
 1132  0
                         if (!r_attached_pronoun())
 1133  
                         {
 1134  
                             break lab2;
 1135  
                         }
 1136  
                     } while (false);
 1137  0
                     cursor = limit - v_3;
 1138  
                     // do, line 186
 1139  0
                     v_4 = limit - cursor;
 1140  
                     lab3: do {
 1141  
                         // (, line 186
 1142  
                         // or, line 186
 1143  
                         lab4: do {
 1144  0
                             v_5 = limit - cursor;
 1145  
                             lab5: do {
 1146  
                                 // call standard_suffix, line 186
 1147  0
                                 if (!r_standard_suffix())
 1148  
                                 {
 1149  
                                     break lab5;
 1150  
                                 }
 1151  
                                 break lab4;
 1152  
                             } while (false);
 1153  0
                             cursor = limit - v_5;
 1154  
                             // call verb_suffix, line 186
 1155  0
                             if (!r_verb_suffix())
 1156  
                             {
 1157  
                                 break lab3;
 1158  
                             }
 1159  
                         } while (false);
 1160  
                     } while (false);
 1161  0
                     cursor = limit - v_4;
 1162  
                     // do, line 187
 1163  0
                     v_6 = limit - cursor;
 1164  
                     lab6: do {
 1165  
                         // call vowel_suffix, line 187
 1166  0
                         if (!r_vowel_suffix())
 1167  
                         {
 1168  
                             break lab6;
 1169  
                         }
 1170  
                     } while (false);
 1171  0
                     cursor = limit - v_6;
 1172  0
                     cursor = limit_backward;                    // do, line 189
 1173  0
                     v_7 = cursor;
 1174  
                     lab7: do {
 1175  
                         // call postlude, line 189
 1176  0
                         if (!r_postlude())
 1177  
                         {
 1178  
                             break lab7;
 1179  
                         }
 1180  
                     } while (false);
 1181  0
                     cursor = v_7;
 1182  0
                     return true;
 1183  
                 }
 1184  
 
 1185  
         public boolean equals( Object o ) {
 1186  0
             return o instanceof italianStemmer;
 1187  
         }
 1188  
 
 1189  
         public int hashCode() {
 1190  0
             return italianStemmer.class.getName().hashCode();
 1191  
         }
 1192  
 
 1193  
 
 1194  
 
 1195  
 }
 1196