Initial import into git.
[galago.git] / java / galago / src / org / tartarus / snowball / ext / spanishStemmer.java
blobec8123e08f46d1ae3af5c0b2d13a555e5a8f8c26
1 // This file was generated automatically by the Snowball to Java compiler
3 package org.tartarus.snowball.ext;
4 import org.tartarus.snowball.SnowballProgram;
5 import org.tartarus.snowball.Among;
7 /**
8 * Generated class implementing code defined by a snowball script.
9 */
10 public class spanishStemmer extends SnowballProgram {
12 private Among a_0[] = {
13 new Among ( "", -1, 6, "", this),
14 new Among ( "\u00E1", 0, 1, "", this),
15 new Among ( "\u00E9", 0, 2, "", this),
16 new Among ( "\u00ED", 0, 3, "", this),
17 new Among ( "\u00F3", 0, 4, "", this),
18 new Among ( "\u00FA", 0, 5, "", this)
21 private Among a_1[] = {
22 new Among ( "la", -1, -1, "", this),
23 new Among ( "sela", 0, -1, "", this),
24 new Among ( "le", -1, -1, "", this),
25 new Among ( "me", -1, -1, "", this),
26 new Among ( "se", -1, -1, "", this),
27 new Among ( "lo", -1, -1, "", this),
28 new Among ( "selo", 5, -1, "", this),
29 new Among ( "las", -1, -1, "", this),
30 new Among ( "selas", 7, -1, "", this),
31 new Among ( "les", -1, -1, "", this),
32 new Among ( "los", -1, -1, "", this),
33 new Among ( "selos", 10, -1, "", this),
34 new Among ( "nos", -1, -1, "", this)
37 private Among a_2[] = {
38 new Among ( "ando", -1, 6, "", this),
39 new Among ( "iendo", -1, 6, "", this),
40 new Among ( "yendo", -1, 7, "", this),
41 new Among ( "\u00E1ndo", -1, 2, "", this),
42 new Among ( "i\u00E9ndo", -1, 1, "", this),
43 new Among ( "ar", -1, 6, "", this),
44 new Among ( "er", -1, 6, "", this),
45 new Among ( "ir", -1, 6, "", this),
46 new Among ( "\u00E1r", -1, 3, "", this),
47 new Among ( "\u00E9r", -1, 4, "", this),
48 new Among ( "\u00EDr", -1, 5, "", this)
51 private Among a_3[] = {
52 new Among ( "ic", -1, -1, "", this),
53 new Among ( "ad", -1, -1, "", this),
54 new Among ( "os", -1, -1, "", this),
55 new Among ( "iv", -1, 1, "", this)
58 private Among a_4[] = {
59 new Among ( "able", -1, 1, "", this),
60 new Among ( "ible", -1, 1, "", this),
61 new Among ( "ante", -1, 1, "", this)
64 private Among a_5[] = {
65 new Among ( "ic", -1, 1, "", this),
66 new Among ( "abil", -1, 1, "", this),
67 new Among ( "iv", -1, 1, "", this)
70 private Among a_6[] = {
71 new Among ( "ica", -1, 1, "", this),
72 new Among ( "ancia", -1, 2, "", this),
73 new Among ( "encia", -1, 5, "", this),
74 new Among ( "adora", -1, 2, "", this),
75 new Among ( "osa", -1, 1, "", this),
76 new Among ( "ista", -1, 1, "", this),
77 new Among ( "iva", -1, 9, "", this),
78 new Among ( "anza", -1, 1, "", this),
79 new Among ( "log\u00EDa", -1, 3, "", this),
80 new Among ( "idad", -1, 8, "", this),
81 new Among ( "able", -1, 1, "", this),
82 new Among ( "ible", -1, 1, "", this),
83 new Among ( "ante", -1, 2, "", this),
84 new Among ( "mente", -1, 7, "", this),
85 new Among ( "amente", 13, 6, "", this),
86 new Among ( "aci\u00F3n", -1, 2, "", this),
87 new Among ( "uci\u00F3n", -1, 4, "", this),
88 new Among ( "ico", -1, 1, "", this),
89 new Among ( "ismo", -1, 1, "", this),
90 new Among ( "oso", -1, 1, "", this),
91 new Among ( "amiento", -1, 1, "", this),
92 new Among ( "imiento", -1, 1, "", this),
93 new Among ( "ivo", -1, 9, "", this),
94 new Among ( "ador", -1, 2, "", this),
95 new Among ( "icas", -1, 1, "", this),
96 new Among ( "ancias", -1, 2, "", this),
97 new Among ( "encias", -1, 5, "", this),
98 new Among ( "adoras", -1, 2, "", this),
99 new Among ( "osas", -1, 1, "", this),
100 new Among ( "istas", -1, 1, "", this),
101 new Among ( "ivas", -1, 9, "", this),
102 new Among ( "anzas", -1, 1, "", this),
103 new Among ( "log\u00EDas", -1, 3, "", this),
104 new Among ( "idades", -1, 8, "", this),
105 new Among ( "ables", -1, 1, "", this),
106 new Among ( "ibles", -1, 1, "", this),
107 new Among ( "aciones", -1, 2, "", this),
108 new Among ( "uciones", -1, 4, "", this),
109 new Among ( "adores", -1, 2, "", this),
110 new Among ( "antes", -1, 2, "", this),
111 new Among ( "icos", -1, 1, "", this),
112 new Among ( "ismos", -1, 1, "", this),
113 new Among ( "osos", -1, 1, "", this),
114 new Among ( "amientos", -1, 1, "", this),
115 new Among ( "imientos", -1, 1, "", this),
116 new Among ( "ivos", -1, 9, "", this)
119 private Among a_7[] = {
120 new Among ( "ya", -1, 1, "", this),
121 new Among ( "ye", -1, 1, "", this),
122 new Among ( "yan", -1, 1, "", this),
123 new Among ( "yen", -1, 1, "", this),
124 new Among ( "yeron", -1, 1, "", this),
125 new Among ( "yendo", -1, 1, "", this),
126 new Among ( "yo", -1, 1, "", this),
127 new Among ( "yas", -1, 1, "", this),
128 new Among ( "yes", -1, 1, "", this),
129 new Among ( "yais", -1, 1, "", this),
130 new Among ( "yamos", -1, 1, "", this),
131 new Among ( "y\u00F3", -1, 1, "", this)
134 private Among a_8[] = {
135 new Among ( "aba", -1, 2, "", this),
136 new Among ( "ada", -1, 2, "", this),
137 new Among ( "ida", -1, 2, "", this),
138 new Among ( "ara", -1, 2, "", this),
139 new Among ( "iera", -1, 2, "", this),
140 new Among ( "\u00EDa", -1, 2, "", this),
141 new Among ( "ar\u00EDa", 5, 2, "", this),
142 new Among ( "er\u00EDa", 5, 2, "", this),
143 new Among ( "ir\u00EDa", 5, 2, "", this),
144 new Among ( "ad", -1, 2, "", this),
145 new Among ( "ed", -1, 2, "", this),
146 new Among ( "id", -1, 2, "", this),
147 new Among ( "ase", -1, 2, "", this),
148 new Among ( "iese", -1, 2, "", this),
149 new Among ( "aste", -1, 2, "", this),
150 new Among ( "iste", -1, 2, "", this),
151 new Among ( "an", -1, 2, "", this),
152 new Among ( "aban", 16, 2, "", this),
153 new Among ( "aran", 16, 2, "", this),
154 new Among ( "ieran", 16, 2, "", this),
155 new Among ( "\u00EDan", 16, 2, "", this),
156 new Among ( "ar\u00EDan", 20, 2, "", this),
157 new Among ( "er\u00EDan", 20, 2, "", this),
158 new Among ( "ir\u00EDan", 20, 2, "", this),
159 new Among ( "en", -1, 1, "", this),
160 new Among ( "asen", 24, 2, "", this),
161 new Among ( "iesen", 24, 2, "", this),
162 new Among ( "aron", -1, 2, "", this),
163 new Among ( "ieron", -1, 2, "", this),
164 new Among ( "ar\u00E1n", -1, 2, "", this),
165 new Among ( "er\u00E1n", -1, 2, "", this),
166 new Among ( "ir\u00E1n", -1, 2, "", this),
167 new Among ( "ado", -1, 2, "", this),
168 new Among ( "ido", -1, 2, "", this),
169 new Among ( "ando", -1, 2, "", this),
170 new Among ( "iendo", -1, 2, "", this),
171 new Among ( "ar", -1, 2, "", this),
172 new Among ( "er", -1, 2, "", this),
173 new Among ( "ir", -1, 2, "", this),
174 new Among ( "as", -1, 2, "", this),
175 new Among ( "abas", 39, 2, "", this),
176 new Among ( "adas", 39, 2, "", this),
177 new Among ( "idas", 39, 2, "", this),
178 new Among ( "aras", 39, 2, "", this),
179 new Among ( "ieras", 39, 2, "", this),
180 new Among ( "\u00EDas", 39, 2, "", this),
181 new Among ( "ar\u00EDas", 45, 2, "", this),
182 new Among ( "er\u00EDas", 45, 2, "", this),
183 new Among ( "ir\u00EDas", 45, 2, "", this),
184 new Among ( "es", -1, 1, "", this),
185 new Among ( "ases", 49, 2, "", this),
186 new Among ( "ieses", 49, 2, "", this),
187 new Among ( "abais", -1, 2, "", this),
188 new Among ( "arais", -1, 2, "", this),
189 new Among ( "ierais", -1, 2, "", this),
190 new Among ( "\u00EDais", -1, 2, "", this),
191 new Among ( "ar\u00EDais", 55, 2, "", this),
192 new Among ( "er\u00EDais", 55, 2, "", this),
193 new Among ( "ir\u00EDais", 55, 2, "", this),
194 new Among ( "aseis", -1, 2, "", this),
195 new Among ( "ieseis", -1, 2, "", this),
196 new Among ( "asteis", -1, 2, "", this),
197 new Among ( "isteis", -1, 2, "", this),
198 new Among ( "\u00E1is", -1, 2, "", this),
199 new Among ( "\u00E9is", -1, 1, "", this),
200 new Among ( "ar\u00E9is", 64, 2, "", this),
201 new Among ( "er\u00E9is", 64, 2, "", this),
202 new Among ( "ir\u00E9is", 64, 2, "", this),
203 new Among ( "ados", -1, 2, "", this),
204 new Among ( "idos", -1, 2, "", this),
205 new Among ( "amos", -1, 2, "", this),
206 new Among ( "\u00E1bamos", 70, 2, "", this),
207 new Among ( "\u00E1ramos", 70, 2, "", this),
208 new Among ( "i\u00E9ramos", 70, 2, "", this),
209 new Among ( "\u00EDamos", 70, 2, "", this),
210 new Among ( "ar\u00EDamos", 74, 2, "", this),
211 new Among ( "er\u00EDamos", 74, 2, "", this),
212 new Among ( "ir\u00EDamos", 74, 2, "", this),
213 new Among ( "emos", -1, 1, "", this),
214 new Among ( "aremos", 78, 2, "", this),
215 new Among ( "eremos", 78, 2, "", this),
216 new Among ( "iremos", 78, 2, "", this),
217 new Among ( "\u00E1semos", 78, 2, "", this),
218 new Among ( "i\u00E9semos", 78, 2, "", this),
219 new Among ( "imos", -1, 2, "", this),
220 new Among ( "ar\u00E1s", -1, 2, "", this),
221 new Among ( "er\u00E1s", -1, 2, "", this),
222 new Among ( "ir\u00E1s", -1, 2, "", this),
223 new Among ( "\u00EDs", -1, 2, "", this),
224 new Among ( "ar\u00E1", -1, 2, "", this),
225 new Among ( "er\u00E1", -1, 2, "", this),
226 new Among ( "ir\u00E1", -1, 2, "", this),
227 new Among ( "ar\u00E9", -1, 2, "", this),
228 new Among ( "er\u00E9", -1, 2, "", this),
229 new Among ( "ir\u00E9", -1, 2, "", this),
230 new Among ( "i\u00F3", -1, 2, "", this)
233 private Among a_9[] = {
234 new Among ( "a", -1, 1, "", this),
235 new Among ( "e", -1, 2, "", this),
236 new Among ( "o", -1, 1, "", this),
237 new Among ( "os", -1, 1, "", this),
238 new Among ( "\u00E1", -1, 1, "", this),
239 new Among ( "\u00E9", -1, 2, "", this),
240 new Among ( "\u00ED", -1, 1, "", this),
241 new Among ( "\u00F3", -1, 1, "", this)
244 private static final char g_v[] = {17, 65, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 17, 4, 10 };
246 private int I_p2;
247 private int I_p1;
248 private int I_pV;
250 private void copy_from(spanishStemmer other) {
251 I_p2 = other.I_p2;
252 I_p1 = other.I_p1;
253 I_pV = other.I_pV;
254 super.copy_from(other);
257 private boolean r_mark_regions() {
258 int v_1;
259 int v_2;
260 int v_3;
261 int v_6;
262 int v_8;
263 // (, line 31
264 I_pV = limit;
265 I_p1 = limit;
266 I_p2 = limit;
267 // do, line 37
268 v_1 = cursor;
269 lab0: do {
270 // (, line 37
271 // or, line 39
272 lab1: do {
273 v_2 = cursor;
274 lab2: do {
275 // (, line 38
276 if (!(in_grouping(g_v, 97, 252)))
278 break lab2;
280 // or, line 38
281 lab3: do {
282 v_3 = cursor;
283 lab4: do {
284 // (, line 38
285 if (!(out_grouping(g_v, 97, 252)))
287 break lab4;
289 // gopast, line 38
290 golab5: while(true)
292 lab6: do {
293 if (!(in_grouping(g_v, 97, 252)))
295 break lab6;
297 break golab5;
298 } while (false);
299 if (cursor >= limit)
301 break lab4;
303 cursor++;
305 break lab3;
306 } while (false);
307 cursor = v_3;
308 // (, line 38
309 if (!(in_grouping(g_v, 97, 252)))
311 break lab2;
313 // gopast, line 38
314 golab7: while(true)
316 lab8: do {
317 if (!(out_grouping(g_v, 97, 252)))
319 break lab8;
321 break golab7;
322 } while (false);
323 if (cursor >= limit)
325 break lab2;
327 cursor++;
329 } while (false);
330 break lab1;
331 } while (false);
332 cursor = v_2;
333 // (, line 40
334 if (!(out_grouping(g_v, 97, 252)))
336 break lab0;
338 // or, line 40
339 lab9: do {
340 v_6 = cursor;
341 lab10: do {
342 // (, line 40
343 if (!(out_grouping(g_v, 97, 252)))
345 break lab10;
347 // gopast, line 40
348 golab11: while(true)
350 lab12: do {
351 if (!(in_grouping(g_v, 97, 252)))
353 break lab12;
355 break golab11;
356 } while (false);
357 if (cursor >= limit)
359 break lab10;
361 cursor++;
363 break lab9;
364 } while (false);
365 cursor = v_6;
366 // (, line 40
367 if (!(in_grouping(g_v, 97, 252)))
369 break lab0;
371 // next, line 40
372 if (cursor >= limit)
374 break lab0;
376 cursor++;
377 } while (false);
378 } while (false);
379 // setmark pV, line 41
380 I_pV = cursor;
381 } while (false);
382 cursor = v_1;
383 // do, line 43
384 v_8 = cursor;
385 lab13: do {
386 // (, line 43
387 // gopast, line 44
388 golab14: while(true)
390 lab15: do {
391 if (!(in_grouping(g_v, 97, 252)))
393 break lab15;
395 break golab14;
396 } while (false);
397 if (cursor >= limit)
399 break lab13;
401 cursor++;
403 // gopast, line 44
404 golab16: while(true)
406 lab17: do {
407 if (!(out_grouping(g_v, 97, 252)))
409 break lab17;
411 break golab16;
412 } while (false);
413 if (cursor >= limit)
415 break lab13;
417 cursor++;
419 // setmark p1, line 44
420 I_p1 = cursor;
421 // gopast, line 45
422 golab18: while(true)
424 lab19: do {
425 if (!(in_grouping(g_v, 97, 252)))
427 break lab19;
429 break golab18;
430 } while (false);
431 if (cursor >= limit)
433 break lab13;
435 cursor++;
437 // gopast, line 45
438 golab20: while(true)
440 lab21: do {
441 if (!(out_grouping(g_v, 97, 252)))
443 break lab21;
445 break golab20;
446 } while (false);
447 if (cursor >= limit)
449 break lab13;
451 cursor++;
453 // setmark p2, line 45
454 I_p2 = cursor;
455 } while (false);
456 cursor = v_8;
457 return true;
460 private boolean r_postlude() {
461 int among_var;
462 int v_1;
463 // repeat, line 49
464 replab0: while(true)
466 v_1 = cursor;
467 lab1: do {
468 // (, line 49
469 // [, line 50
470 bra = cursor;
471 // substring, line 50
472 among_var = find_among(a_0, 6);
473 if (among_var == 0)
475 break lab1;
477 // ], line 50
478 ket = cursor;
479 switch(among_var) {
480 case 0:
481 break lab1;
482 case 1:
483 // (, line 51
484 // <-, line 51
485 slice_from("a");
486 break;
487 case 2:
488 // (, line 52
489 // <-, line 52
490 slice_from("e");
491 break;
492 case 3:
493 // (, line 53
494 // <-, line 53
495 slice_from("i");
496 break;
497 case 4:
498 // (, line 54
499 // <-, line 54
500 slice_from("o");
501 break;
502 case 5:
503 // (, line 55
504 // <-, line 55
505 slice_from("u");
506 break;
507 case 6:
508 // (, line 57
509 // next, line 57
510 if (cursor >= limit)
512 break lab1;
514 cursor++;
515 break;
517 continue replab0;
518 } while (false);
519 cursor = v_1;
520 break replab0;
522 return true;
525 private boolean r_RV() {
526 if (!(I_pV <= cursor))
528 return false;
530 return true;
533 private boolean r_R1() {
534 if (!(I_p1 <= cursor))
536 return false;
538 return true;
541 private boolean r_R2() {
542 if (!(I_p2 <= cursor))
544 return false;
546 return true;
549 private boolean r_attached_pronoun() {
550 int among_var;
551 // (, line 67
552 // [, line 68
553 ket = cursor;
554 // substring, line 68
555 if (find_among_b(a_1, 13) == 0)
557 return false;
559 // ], line 68
560 bra = cursor;
561 // substring, line 72
562 among_var = find_among_b(a_2, 11);
563 if (among_var == 0)
565 return false;
567 // call RV, line 72
568 if (!r_RV())
570 return false;
572 switch(among_var) {
573 case 0:
574 return false;
575 case 1:
576 // (, line 73
577 // ], line 73
578 bra = cursor;
579 // <-, line 73
580 slice_from("iendo");
581 break;
582 case 2:
583 // (, line 74
584 // ], line 74
585 bra = cursor;
586 // <-, line 74
587 slice_from("ando");
588 break;
589 case 3:
590 // (, line 75
591 // ], line 75
592 bra = cursor;
593 // <-, line 75
594 slice_from("ar");
595 break;
596 case 4:
597 // (, line 76
598 // ], line 76
599 bra = cursor;
600 // <-, line 76
601 slice_from("er");
602 break;
603 case 5:
604 // (, line 77
605 // ], line 77
606 bra = cursor;
607 // <-, line 77
608 slice_from("ir");
609 break;
610 case 6:
611 // (, line 81
612 // delete, line 81
613 slice_del();
614 break;
615 case 7:
616 // (, line 82
617 // literal, line 82
618 if (!(eq_s_b(1, "u")))
620 return false;
622 // delete, line 82
623 slice_del();
624 break;
626 return true;
629 private boolean r_standard_suffix() {
630 int among_var;
631 int v_1;
632 int v_2;
633 int v_3;
634 int v_4;
635 int v_5;
636 // (, line 86
637 // [, line 87
638 ket = cursor;
639 // substring, line 87
640 among_var = find_among_b(a_6, 46);
641 if (among_var == 0)
643 return false;
645 // ], line 87
646 bra = cursor;
647 switch(among_var) {
648 case 0:
649 return false;
650 case 1:
651 // (, line 98
652 // call R2, line 99
653 if (!r_R2())
655 return false;
657 // delete, line 99
658 slice_del();
659 break;
660 case 2:
661 // (, line 104
662 // call R2, line 105
663 if (!r_R2())
665 return false;
667 // delete, line 105
668 slice_del();
669 // try, line 106
670 v_1 = limit - cursor;
671 lab0: do {
672 // (, line 106
673 // [, line 106
674 ket = cursor;
675 // literal, line 106
676 if (!(eq_s_b(2, "ic")))
678 cursor = limit - v_1;
679 break lab0;
681 // ], line 106
682 bra = cursor;
683 // call R2, line 106
684 if (!r_R2())
686 cursor = limit - v_1;
687 break lab0;
689 // delete, line 106
690 slice_del();
691 } while (false);
692 break;
693 case 3:
694 // (, line 110
695 // call R2, line 111
696 if (!r_R2())
698 return false;
700 // <-, line 111
701 slice_from("log");
702 break;
703 case 4:
704 // (, line 114
705 // call R2, line 115
706 if (!r_R2())
708 return false;
710 // <-, line 115
711 slice_from("u");
712 break;
713 case 5:
714 // (, line 118
715 // call R2, line 119
716 if (!r_R2())
718 return false;
720 // <-, line 119
721 slice_from("ente");
722 break;
723 case 6:
724 // (, line 122
725 // call R1, line 123
726 if (!r_R1())
728 return false;
730 // delete, line 123
731 slice_del();
732 // try, line 124
733 v_2 = limit - cursor;
734 lab1: do {
735 // (, line 124
736 // [, line 125
737 ket = cursor;
738 // substring, line 125
739 among_var = find_among_b(a_3, 4);
740 if (among_var == 0)
742 cursor = limit - v_2;
743 break lab1;
745 // ], line 125
746 bra = cursor;
747 // call R2, line 125
748 if (!r_R2())
750 cursor = limit - v_2;
751 break lab1;
753 // delete, line 125
754 slice_del();
755 switch(among_var) {
756 case 0:
757 cursor = limit - v_2;
758 break lab1;
759 case 1:
760 // (, line 126
761 // [, line 126
762 ket = cursor;
763 // literal, line 126
764 if (!(eq_s_b(2, "at")))
766 cursor = limit - v_2;
767 break lab1;
769 // ], line 126
770 bra = cursor;
771 // call R2, line 126
772 if (!r_R2())
774 cursor = limit - v_2;
775 break lab1;
777 // delete, line 126
778 slice_del();
779 break;
781 } while (false);
782 break;
783 case 7:
784 // (, line 134
785 // call R2, line 135
786 if (!r_R2())
788 return false;
790 // delete, line 135
791 slice_del();
792 // try, line 136
793 v_3 = limit - cursor;
794 lab2: do {
795 // (, line 136
796 // [, line 137
797 ket = cursor;
798 // substring, line 137
799 among_var = find_among_b(a_4, 3);
800 if (among_var == 0)
802 cursor = limit - v_3;
803 break lab2;
805 // ], line 137
806 bra = cursor;
807 switch(among_var) {
808 case 0:
809 cursor = limit - v_3;
810 break lab2;
811 case 1:
812 // (, line 140
813 // call R2, line 140
814 if (!r_R2())
816 cursor = limit - v_3;
817 break lab2;
819 // delete, line 140
820 slice_del();
821 break;
823 } while (false);
824 break;
825 case 8:
826 // (, line 146
827 // call R2, line 147
828 if (!r_R2())
830 return false;
832 // delete, line 147
833 slice_del();
834 // try, line 148
835 v_4 = limit - cursor;
836 lab3: do {
837 // (, line 148
838 // [, line 149
839 ket = cursor;
840 // substring, line 149
841 among_var = find_among_b(a_5, 3);
842 if (among_var == 0)
844 cursor = limit - v_4;
845 break lab3;
847 // ], line 149
848 bra = cursor;
849 switch(among_var) {
850 case 0:
851 cursor = limit - v_4;
852 break lab3;
853 case 1:
854 // (, line 152
855 // call R2, line 152
856 if (!r_R2())
858 cursor = limit - v_4;
859 break lab3;
861 // delete, line 152
862 slice_del();
863 break;
865 } while (false);
866 break;
867 case 9:
868 // (, line 158
869 // call R2, line 159
870 if (!r_R2())
872 return false;
874 // delete, line 159
875 slice_del();
876 // try, line 160
877 v_5 = limit - cursor;
878 lab4: do {
879 // (, line 160
880 // [, line 161
881 ket = cursor;
882 // literal, line 161
883 if (!(eq_s_b(2, "at")))
885 cursor = limit - v_5;
886 break lab4;
888 // ], line 161
889 bra = cursor;
890 // call R2, line 161
891 if (!r_R2())
893 cursor = limit - v_5;
894 break lab4;
896 // delete, line 161
897 slice_del();
898 } while (false);
899 break;
901 return true;
904 private boolean r_y_verb_suffix() {
905 int among_var;
906 int v_1;
907 int v_2;
908 // (, line 167
909 // setlimit, line 168
910 v_1 = limit - cursor;
911 // tomark, line 168
912 if (cursor < I_pV)
914 return false;
916 cursor = I_pV;
917 v_2 = limit_backward;
918 limit_backward = cursor;
919 cursor = limit - v_1;
920 // (, line 168
921 // [, line 168
922 ket = cursor;
923 // substring, line 168
924 among_var = find_among_b(a_7, 12);
925 if (among_var == 0)
927 limit_backward = v_2;
928 return false;
930 // ], line 168
931 bra = cursor;
932 limit_backward = v_2;
933 switch(among_var) {
934 case 0:
935 return false;
936 case 1:
937 // (, line 171
938 // literal, line 171
939 if (!(eq_s_b(1, "u")))
941 return false;
943 // delete, line 171
944 slice_del();
945 break;
947 return true;
950 private boolean r_verb_suffix() {
951 int among_var;
952 int v_1;
953 int v_2;
954 int v_3;
955 int v_4;
956 // (, line 175
957 // setlimit, line 176
958 v_1 = limit - cursor;
959 // tomark, line 176
960 if (cursor < I_pV)
962 return false;
964 cursor = I_pV;
965 v_2 = limit_backward;
966 limit_backward = cursor;
967 cursor = limit - v_1;
968 // (, line 176
969 // [, line 176
970 ket = cursor;
971 // substring, line 176
972 among_var = find_among_b(a_8, 96);
973 if (among_var == 0)
975 limit_backward = v_2;
976 return false;
978 // ], line 176
979 bra = cursor;
980 limit_backward = v_2;
981 switch(among_var) {
982 case 0:
983 return false;
984 case 1:
985 // (, line 179
986 // try, line 179
987 v_3 = limit - cursor;
988 lab0: do {
989 // (, line 179
990 // literal, line 179
991 if (!(eq_s_b(1, "u")))
993 cursor = limit - v_3;
994 break lab0;
996 // test, line 179
997 v_4 = limit - cursor;
998 // literal, line 179
999 if (!(eq_s_b(1, "g")))
1001 cursor = limit - v_3;
1002 break lab0;
1004 cursor = limit - v_4;
1005 } while (false);
1006 // ], line 179
1007 bra = cursor;
1008 // delete, line 179
1009 slice_del();
1010 break;
1011 case 2:
1012 // (, line 200
1013 // delete, line 200
1014 slice_del();
1015 break;
1017 return true;
1020 private boolean r_residual_suffix() {
1021 int among_var;
1022 int v_1;
1023 int v_2;
1024 // (, line 204
1025 // [, line 205
1026 ket = cursor;
1027 // substring, line 205
1028 among_var = find_among_b(a_9, 8);
1029 if (among_var == 0)
1031 return false;
1033 // ], line 205
1034 bra = cursor;
1035 switch(among_var) {
1036 case 0:
1037 return false;
1038 case 1:
1039 // (, line 208
1040 // call RV, line 208
1041 if (!r_RV())
1043 return false;
1045 // delete, line 208
1046 slice_del();
1047 break;
1048 case 2:
1049 // (, line 210
1050 // call RV, line 210
1051 if (!r_RV())
1053 return false;
1055 // delete, line 210
1056 slice_del();
1057 // try, line 210
1058 v_1 = limit - cursor;
1059 lab0: do {
1060 // (, line 210
1061 // [, line 210
1062 ket = cursor;
1063 // literal, line 210
1064 if (!(eq_s_b(1, "u")))
1066 cursor = limit - v_1;
1067 break lab0;
1069 // ], line 210
1070 bra = cursor;
1071 // test, line 210
1072 v_2 = limit - cursor;
1073 // literal, line 210
1074 if (!(eq_s_b(1, "g")))
1076 cursor = limit - v_1;
1077 break lab0;
1079 cursor = limit - v_2;
1080 // call RV, line 210
1081 if (!r_RV())
1083 cursor = limit - v_1;
1084 break lab0;
1086 // delete, line 210
1087 slice_del();
1088 } while (false);
1089 break;
1091 return true;
1094 public boolean stem() {
1095 int v_1;
1096 int v_2;
1097 int v_3;
1098 int v_4;
1099 int v_5;
1100 int v_6;
1101 // (, line 215
1102 // do, line 216
1103 v_1 = cursor;
1104 lab0: do {
1105 // call mark_regions, line 216
1106 if (!r_mark_regions())
1108 break lab0;
1110 } while (false);
1111 cursor = v_1;
1112 // backwards, line 217
1113 limit_backward = cursor; cursor = limit;
1114 // (, line 217
1115 // do, line 218
1116 v_2 = limit - cursor;
1117 lab1: do {
1118 // call attached_pronoun, line 218
1119 if (!r_attached_pronoun())
1121 break lab1;
1123 } while (false);
1124 cursor = limit - v_2;
1125 // do, line 219
1126 v_3 = limit - cursor;
1127 lab2: do {
1128 // (, line 219
1129 // or, line 219
1130 lab3: do {
1131 v_4 = limit - cursor;
1132 lab4: do {
1133 // call standard_suffix, line 219
1134 if (!r_standard_suffix())
1136 break lab4;
1138 break lab3;
1139 } while (false);
1140 cursor = limit - v_4;
1141 lab5: do {
1142 // call y_verb_suffix, line 220
1143 if (!r_y_verb_suffix())
1145 break lab5;
1147 break lab3;
1148 } while (false);
1149 cursor = limit - v_4;
1150 // call verb_suffix, line 221
1151 if (!r_verb_suffix())
1153 break lab2;
1155 } while (false);
1156 } while (false);
1157 cursor = limit - v_3;
1158 // do, line 223
1159 v_5 = limit - cursor;
1160 lab6: do {
1161 // call residual_suffix, line 223
1162 if (!r_residual_suffix())
1164 break lab6;
1166 } while (false);
1167 cursor = limit - v_5;
1168 cursor = limit_backward; // do, line 225
1169 v_6 = cursor;
1170 lab7: do {
1171 // call postlude, line 225
1172 if (!r_postlude())
1174 break lab7;
1176 } while (false);
1177 cursor = v_6;
1178 return true;