| // Generated by Snowball 2.0.0 - https://snowballstem.org/ |
| |
| package org.tartarus.snowball.ext; |
| |
| import org.tartarus.snowball.Among; |
| |
| /** |
| * This class implements the stemming algorithm defined by a snowball script. |
| * <p> |
| * Generated by Snowball 2.0.0 - https://snowballstem.org/ |
| * </p> |
| */ |
| @SuppressWarnings("unused") |
| public class TamilStemmer extends org.tartarus.snowball.SnowballStemmer { |
| |
| private static final long serialVersionUID = 1L; |
| private static final java.lang.invoke.MethodHandles.Lookup methodObject = java.lang.invoke.MethodHandles.lookup(); |
| |
| private final static Among a_0[] = { |
| new Among("\u0B95", -1, -1), |
| new Among("\u0B99", -1, -1), |
| new Among("\u0B9A", -1, -1), |
| new Among("\u0B9E", -1, -1), |
| new Among("\u0BA4", -1, -1), |
| new Among("\u0BA8", -1, -1), |
| new Among("\u0BAA", -1, -1), |
| new Among("\u0BAE", -1, -1), |
| new Among("\u0BAF", -1, -1), |
| new Among("\u0BB5", -1, -1) |
| }; |
| |
| private final static Among a_1[] = { |
| new Among("\u0BA8\u0BCD\u0BA4", -1, -1), |
| new Among("\u0BA8\u0BCD\u0BA4\u0BCD", -1, -1), |
| new Among("\u0BA8\u0BCD", -1, -1) |
| }; |
| |
| private final static Among a_2[] = { |
| new Among("\u0BBF", -1, -1), |
| new Among("\u0BC0", -1, -1), |
| new Among("\u0BC8", -1, -1) |
| }; |
| |
| private final static Among a_3[] = { |
| new Among("\u0B95", -1, -1), |
| new Among("\u0B9A", -1, -1), |
| new Among("\u0B9F", -1, -1), |
| new Among("\u0BA4", -1, -1), |
| new Among("\u0BAA", -1, -1), |
| new Among("\u0BB1", -1, -1) |
| }; |
| |
| private final static Among a_4[] = { |
| new Among("\u0B95", -1, -1), |
| new Among("\u0B9A", -1, -1), |
| new Among("\u0B9F", -1, -1), |
| new Among("\u0BA4", -1, -1), |
| new Among("\u0BAA", -1, -1), |
| new Among("\u0BB1", -1, -1) |
| }; |
| |
| private final static Among a_5[] = { |
| new Among("\u0B95", -1, -1), |
| new Among("\u0B9A", -1, -1), |
| new Among("\u0B9F", -1, -1), |
| new Among("\u0BA4", -1, -1), |
| new Among("\u0BAA", -1, -1), |
| new Among("\u0BB1", -1, -1) |
| }; |
| |
| private final static Among a_6[] = { |
| new Among("\u0BAF", -1, -1), |
| new Among("\u0BB0", -1, -1), |
| new Among("\u0BB2", -1, -1), |
| new Among("\u0BB3", -1, -1), |
| new Among("\u0BB4", -1, -1), |
| new Among("\u0BB5", -1, -1) |
| }; |
| |
| private final static Among a_7[] = { |
| new Among("\u0B99", -1, -1), |
| new Among("\u0B9E", -1, -1), |
| new Among("\u0BA3", -1, -1), |
| new Among("\u0BA8", -1, -1), |
| new Among("\u0BA9", -1, -1), |
| new Among("\u0BAE", -1, -1) |
| }; |
| |
| private final static Among a_8[] = { |
| new Among("\u0BAF", -1, -1), |
| new Among("\u0BB5", -1, -1), |
| new Among("\u0BB5\u0BCD", -1, -1) |
| }; |
| |
| private final static Among a_9[] = { |
| new Among("\u0BBE", -1, -1), |
| new Among("\u0BBF", -1, -1), |
| new Among("\u0BC0", -1, -1), |
| new Among("\u0BC1", -1, -1), |
| new Among("\u0BC2", -1, -1), |
| new Among("\u0BC6", -1, -1), |
| new Among("\u0BC7", -1, -1), |
| new Among("\u0BC8", -1, -1) |
| }; |
| |
| private final static Among a_10[] = { |
| new Among("\u0BBE", -1, -1), |
| new Among("\u0BBF", -1, -1), |
| new Among("\u0BC0", -1, -1), |
| new Among("\u0BC1", -1, -1), |
| new Among("\u0BC2", -1, -1), |
| new Among("\u0BC6", -1, -1), |
| new Among("\u0BC7", -1, -1), |
| new Among("\u0BC8", -1, -1) |
| }; |
| |
| private final static Among a_11[] = { |
| new Among("\u0B85", -1, -1), |
| new Among("\u0B87", -1, -1), |
| new Among("\u0B89", -1, -1) |
| }; |
| |
| private final static Among a_12[] = { |
| new Among("\u0B95", -1, -1), |
| new Among("\u0B99", -1, -1), |
| new Among("\u0B9A", -1, -1), |
| new Among("\u0B9E", -1, -1), |
| new Among("\u0BA4", -1, -1), |
| new Among("\u0BA8", -1, -1), |
| new Among("\u0BAA", -1, -1), |
| new Among("\u0BAE", -1, -1), |
| new Among("\u0BAF", -1, -1), |
| new Among("\u0BB5", -1, -1) |
| }; |
| |
| private final static Among a_13[] = { |
| new Among("\u0B95", -1, -1), |
| new Among("\u0B9A", -1, -1), |
| new Among("\u0B9F", -1, -1), |
| new Among("\u0BA4", -1, -1), |
| new Among("\u0BAA", -1, -1), |
| new Among("\u0BB1", -1, -1) |
| }; |
| |
| private final static Among a_14[] = { |
| new Among("\u0BBE", -1, -1), |
| new Among("\u0BC7", -1, -1), |
| new Among("\u0BCB", -1, -1) |
| }; |
| |
| private final static Among a_15[] = { |
| new Among("\u0BAA\u0BBF", -1, -1), |
| new Among("\u0BB5\u0BBF", -1, -1) |
| }; |
| |
| private final static Among a_16[] = { |
| new Among("\u0BBE", -1, -1), |
| new Among("\u0BBF", -1, -1), |
| new Among("\u0BC0", -1, -1), |
| new Among("\u0BC1", -1, -1), |
| new Among("\u0BC2", -1, -1), |
| new Among("\u0BC6", -1, -1), |
| new Among("\u0BC7", -1, -1), |
| new Among("\u0BC8", -1, -1) |
| }; |
| |
| private final static Among a_17[] = { |
| new Among("\u0BAA\u0B9F\u0BCD\u0B9F", -1, -1), |
| new Among("\u0BAA\u0B9F\u0BCD\u0B9F\u0BA3", -1, -1), |
| new Among("\u0BA4\u0BBE\u0BA9", -1, -1), |
| new Among("\u0BAA\u0B9F\u0BBF\u0BA4\u0BBE\u0BA9", 2, -1), |
| new Among("\u0B95\u0BC1\u0BB0\u0BBF\u0BAF", -1, -1), |
| new Among("\u0BAA\u0B9F\u0BBF", -1, -1), |
| new Among("\u0BAA\u0BB1\u0BCD\u0BB1\u0BBF", -1, -1), |
| new Among("\u0BAA\u0B9F\u0BC1", -1, -1), |
| new Among("\u0BB5\u0BBF\u0B9F\u0BC1", -1, -1), |
| new Among("\u0BAA\u0B9F\u0BCD\u0B9F\u0BC1", -1, -1), |
| new Among("\u0BB5\u0BBF\u0B9F\u0BCD\u0B9F\u0BC1", -1, -1), |
| new Among("\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1", -1, -1), |
| new Among("\u0BC6\u0BB2\u0BCD\u0BB2\u0BBE\u0BAE\u0BCD", -1, -1) |
| }; |
| |
| private final static Among a_18[] = { |
| new Among("\u0B95", -1, -1), |
| new Among("\u0B9A", -1, -1), |
| new Among("\u0B9F", -1, -1), |
| new Among("\u0BA4", -1, -1), |
| new Among("\u0BAA", -1, -1), |
| new Among("\u0BB1", -1, -1) |
| }; |
| |
| private final static Among a_19[] = { |
| new Among("\u0B95", -1, -1), |
| new Among("\u0B9A", -1, -1), |
| new Among("\u0B9F", -1, -1), |
| new Among("\u0BA4", -1, -1), |
| new Among("\u0BAA", -1, -1), |
| new Among("\u0BB1", -1, -1) |
| }; |
| |
| private final static Among a_20[] = { |
| new Among("\u0BBE", -1, -1), |
| new Among("\u0BBF", -1, -1), |
| new Among("\u0BC0", -1, -1), |
| new Among("\u0BC1", -1, -1), |
| new Among("\u0BC2", -1, -1), |
| new Among("\u0BC6", -1, -1), |
| new Among("\u0BC7", -1, -1), |
| new Among("\u0BC8", -1, -1) |
| }; |
| |
| private final static Among a_21[] = { |
| new Among("\u0BBE", -1, -1), |
| new Among("\u0BBF", -1, -1), |
| new Among("\u0BC0", -1, -1), |
| new Among("\u0BC1", -1, -1), |
| new Among("\u0BC2", -1, -1), |
| new Among("\u0BC6", -1, -1), |
| new Among("\u0BC7", -1, -1), |
| new Among("\u0BC8", -1, -1) |
| }; |
| |
| private final static Among a_22[] = { |
| new Among("\u0BAA\u0B9F\u0BC1", -1, -1), |
| new Among("\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BCD", -1, -1) |
| }; |
| |
| private final static Among a_23[] = { |
| new Among("\u0B85", -1, -1), |
| new Among("\u0B86", -1, -1), |
| new Among("\u0B87", -1, -1), |
| new Among("\u0B88", -1, -1), |
| new Among("\u0B89", -1, -1), |
| new Among("\u0B8A", -1, -1), |
| new Among("\u0B8E", -1, -1), |
| new Among("\u0B8F", -1, -1), |
| new Among("\u0B90", -1, -1), |
| new Among("\u0B92", -1, -1), |
| new Among("\u0B93", -1, -1), |
| new Among("\u0B94", -1, -1) |
| }; |
| |
| private final static Among a_24[] = { |
| new Among("\u0BBE", -1, -1), |
| new Among("\u0BBF", -1, -1), |
| new Among("\u0BC0", -1, -1), |
| new Among("\u0BC1", -1, -1), |
| new Among("\u0BC2", -1, -1), |
| new Among("\u0BC6", -1, -1), |
| new Among("\u0BC7", -1, -1), |
| new Among("\u0BC8", -1, -1) |
| }; |
| |
| private final static Among a_25[] = { |
| new Among("\u0B95\u0BBF\u0BB1", -1, -1), |
| new Among("\u0B95\u0BBF\u0BA9\u0BCD\u0BB1", -1, -1), |
| new Among("\u0BBE\u0BA8\u0BBF\u0BA9\u0BCD\u0BB1", -1, -1), |
| new Among("\u0B95\u0BBF\u0BB1\u0BCD", -1, -1), |
| new Among("\u0B95\u0BBF\u0BA9\u0BCD\u0BB1\u0BCD", -1, -1), |
| new Among("\u0BBE\u0BA8\u0BBF\u0BA9\u0BCD\u0BB1\u0BCD", -1, -1) |
| }; |
| |
| private boolean B_found_vetrumai_urupu; |
| private boolean B_found_a_match; |
| |
| |
| private boolean r_has_min_length() { |
| if (!(limit > 4)) |
| { |
| return false; |
| } |
| return true; |
| } |
| |
| private boolean r_fix_va_start() { |
| lab0: { |
| int v_1 = cursor; |
| lab1: { |
| int v_2 = cursor; |
| int v_3 = cursor; |
| lab2: { |
| if (!(eq_s("\u0BB5\u0BCB"))) |
| { |
| cursor = v_3; |
| break lab2; |
| } |
| } |
| cursor = v_2; |
| bra = cursor; |
| if (!(eq_s("\u0BB5\u0BCB"))) |
| { |
| break lab1; |
| } |
| ket = cursor; |
| slice_from("\u0B93"); |
| break lab0; |
| } |
| cursor = v_1; |
| lab3: { |
| int v_4 = cursor; |
| int v_5 = cursor; |
| lab4: { |
| if (!(eq_s("\u0BB5\u0BCA"))) |
| { |
| cursor = v_5; |
| break lab4; |
| } |
| } |
| cursor = v_4; |
| bra = cursor; |
| if (!(eq_s("\u0BB5\u0BCA"))) |
| { |
| break lab3; |
| } |
| ket = cursor; |
| slice_from("\u0B92"); |
| break lab0; |
| } |
| cursor = v_1; |
| lab5: { |
| int v_6 = cursor; |
| int v_7 = cursor; |
| lab6: { |
| if (!(eq_s("\u0BB5\u0BC1"))) |
| { |
| cursor = v_7; |
| break lab6; |
| } |
| } |
| cursor = v_6; |
| bra = cursor; |
| if (!(eq_s("\u0BB5\u0BC1"))) |
| { |
| break lab5; |
| } |
| ket = cursor; |
| slice_from("\u0B89"); |
| break lab0; |
| } |
| cursor = v_1; |
| int v_8 = cursor; |
| int v_9 = cursor; |
| lab7: { |
| if (!(eq_s("\u0BB5\u0BC2"))) |
| { |
| cursor = v_9; |
| break lab7; |
| } |
| } |
| cursor = v_8; |
| bra = cursor; |
| if (!(eq_s("\u0BB5\u0BC2"))) |
| { |
| return false; |
| } |
| ket = cursor; |
| slice_from("\u0B8A"); |
| } |
| return true; |
| } |
| |
| private boolean r_fix_endings() { |
| int v_1 = cursor; |
| lab0: { |
| while(true) |
| { |
| int v_2 = cursor; |
| lab1: { |
| if (!r_fix_ending()) |
| { |
| break lab1; |
| } |
| continue; |
| } |
| cursor = v_2; |
| break; |
| } |
| } |
| cursor = v_1; |
| return true; |
| } |
| |
| private boolean r_remove_question_prefixes() { |
| bra = cursor; |
| if (!(eq_s("\u0B8E"))) |
| { |
| return false; |
| } |
| if (find_among(a_0) == 0) |
| { |
| return false; |
| } |
| if (!(eq_s("\u0BCD"))) |
| { |
| return false; |
| } |
| ket = cursor; |
| slice_del(); |
| int v_1 = cursor; |
| r_fix_va_start(); |
| cursor = v_1; |
| return true; |
| } |
| |
| private boolean r_fix_ending() { |
| if (!(limit > 3)) |
| { |
| return false; |
| } |
| limit_backward = cursor; |
| cursor = limit; |
| lab0: { |
| int v_1 = limit - cursor; |
| lab1: { |
| ket = cursor; |
| if (find_among_b(a_1) == 0) |
| { |
| break lab1; |
| } |
| bra = cursor; |
| slice_del(); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab2: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BAF\u0BCD"))) |
| { |
| break lab2; |
| } |
| int v_2 = limit - cursor; |
| if (find_among_b(a_2) == 0) |
| { |
| break lab2; |
| } |
| cursor = limit - v_2; |
| bra = cursor; |
| slice_del(); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab3: { |
| ket = cursor; |
| lab4: { |
| int v_3 = limit - cursor; |
| lab5: { |
| if (!(eq_s_b("\u0B9F\u0BCD\u0BAA\u0BCD"))) |
| { |
| break lab5; |
| } |
| break lab4; |
| } |
| cursor = limit - v_3; |
| if (!(eq_s_b("\u0B9F\u0BCD\u0B95\u0BCD"))) |
| { |
| break lab3; |
| } |
| } |
| bra = cursor; |
| slice_from("\u0BB3\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab6: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BA9\u0BCD\u0BB1\u0BCD"))) |
| { |
| break lab6; |
| } |
| bra = cursor; |
| slice_from("\u0BB2\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab7: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BB1\u0BCD\u0B95\u0BCD"))) |
| { |
| break lab7; |
| } |
| bra = cursor; |
| slice_from("\u0BB2\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab8: { |
| ket = cursor; |
| if (!(eq_s_b("\u0B9F\u0BCD\u0B9F\u0BCD"))) |
| { |
| break lab8; |
| } |
| bra = cursor; |
| slice_from("\u0B9F\u0BC1"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab9: { |
| if (!(B_found_vetrumai_urupu)) |
| { |
| break lab9; |
| } |
| ket = cursor; |
| if (!(eq_s_b("\u0BA4\u0BCD\u0BA4\u0BCD"))) |
| { |
| break lab9; |
| } |
| int v_4 = limit - cursor; |
| { |
| int v_5 = limit - cursor; |
| lab10: { |
| if (!(eq_s_b("\u0BC8"))) |
| { |
| break lab10; |
| } |
| break lab9; |
| } |
| cursor = limit - v_5; |
| } |
| cursor = limit - v_4; |
| bra = cursor; |
| slice_from("\u0BAE\u0BCD"); |
| bra = cursor; |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab11: { |
| ket = cursor; |
| lab12: { |
| int v_6 = limit - cursor; |
| lab13: { |
| if (!(eq_s_b("\u0BC1\u0B95\u0BCD"))) |
| { |
| break lab13; |
| } |
| break lab12; |
| } |
| cursor = limit - v_6; |
| if (!(eq_s_b("\u0BC1\u0B95\u0BCD\u0B95\u0BCD"))) |
| { |
| break lab11; |
| } |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab14: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BCD"))) |
| { |
| break lab14; |
| } |
| if (find_among_b(a_3) == 0) |
| { |
| break lab14; |
| } |
| if (!(eq_s_b("\u0BCD"))) |
| { |
| break lab14; |
| } |
| if (find_among_b(a_4) == 0) |
| { |
| break lab14; |
| } |
| bra = cursor; |
| slice_del(); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab15: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BC1\u0B95\u0BCD"))) |
| { |
| break lab15; |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab16: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BCD"))) |
| { |
| break lab16; |
| } |
| if (find_among_b(a_5) == 0) |
| { |
| break lab16; |
| } |
| bra = cursor; |
| slice_del(); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab17: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BCD"))) |
| { |
| break lab17; |
| } |
| lab18: { |
| int v_7 = limit - cursor; |
| lab19: { |
| if (find_among_b(a_6) == 0) |
| { |
| break lab19; |
| } |
| break lab18; |
| } |
| cursor = limit - v_7; |
| if (find_among_b(a_7) == 0) |
| { |
| break lab17; |
| } |
| } |
| if (!(eq_s_b("\u0BCD"))) |
| { |
| break lab17; |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab20: { |
| ket = cursor; |
| if (find_among_b(a_8) == 0) |
| { |
| break lab20; |
| } |
| bra = cursor; |
| slice_del(); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab21: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BA9\u0BC1"))) |
| { |
| break lab21; |
| } |
| int v_8 = limit - cursor; |
| { |
| int v_9 = limit - cursor; |
| lab22: { |
| if (find_among_b(a_9) == 0) |
| { |
| break lab22; |
| } |
| break lab21; |
| } |
| cursor = limit - v_9; |
| } |
| cursor = limit - v_8; |
| bra = cursor; |
| slice_del(); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab23: { |
| ket = cursor; |
| if (!(eq_s_b("\u0B99\u0BCD"))) |
| { |
| break lab23; |
| } |
| int v_10 = limit - cursor; |
| { |
| int v_11 = limit - cursor; |
| lab24: { |
| if (!(eq_s_b("\u0BC8"))) |
| { |
| break lab24; |
| } |
| break lab23; |
| } |
| cursor = limit - v_11; |
| } |
| cursor = limit - v_10; |
| bra = cursor; |
| slice_from("\u0BAE\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab25: { |
| ket = cursor; |
| if (!(eq_s_b("\u0B99\u0BCD"))) |
| { |
| break lab25; |
| } |
| bra = cursor; |
| slice_del(); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| ket = cursor; |
| if (!(eq_s_b("\u0BCD"))) |
| { |
| return false; |
| } |
| int v_12 = limit - cursor; |
| lab26: { |
| int v_13 = limit - cursor; |
| lab27: { |
| if (find_among_b(a_10) == 0) |
| { |
| break lab27; |
| } |
| break lab26; |
| } |
| cursor = limit - v_13; |
| if (!(eq_s_b("\u0BCD"))) |
| { |
| return false; |
| } |
| } |
| cursor = limit - v_12; |
| bra = cursor; |
| slice_del(); |
| } |
| cursor = limit_backward; |
| return true; |
| } |
| |
| private boolean r_remove_pronoun_prefixes() { |
| B_found_a_match = false; |
| bra = cursor; |
| if (find_among(a_11) == 0) |
| { |
| return false; |
| } |
| if (find_among(a_12) == 0) |
| { |
| return false; |
| } |
| if (!(eq_s("\u0BCD"))) |
| { |
| return false; |
| } |
| ket = cursor; |
| slice_del(); |
| B_found_a_match = true; |
| int v_1 = cursor; |
| r_fix_va_start(); |
| cursor = v_1; |
| return true; |
| } |
| |
| private boolean r_remove_plural_suffix() { |
| B_found_a_match = false; |
| limit_backward = cursor; |
| cursor = limit; |
| lab0: { |
| int v_1 = limit - cursor; |
| lab1: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BC1\u0B99\u0BCD\u0B95\u0BB3\u0BCD"))) |
| { |
| break lab1; |
| } |
| int v_2 = limit - cursor; |
| { |
| int v_3 = limit - cursor; |
| lab2: { |
| if (find_among_b(a_13) == 0) |
| { |
| break lab2; |
| } |
| break lab1; |
| } |
| cursor = limit - v_3; |
| } |
| cursor = limit - v_2; |
| bra = cursor; |
| slice_from("\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab3: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BB1\u0BCD\u0B95\u0BB3\u0BCD"))) |
| { |
| break lab3; |
| } |
| bra = cursor; |
| slice_from("\u0BB2\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab4: { |
| ket = cursor; |
| if (!(eq_s_b("\u0B9F\u0BCD\u0B95\u0BB3\u0BCD"))) |
| { |
| break lab4; |
| } |
| bra = cursor; |
| slice_from("\u0BB3\u0BCD"); |
| break lab0; |
| } |
| cursor = limit - v_1; |
| ket = cursor; |
| if (!(eq_s_b("\u0B95\u0BB3\u0BCD"))) |
| { |
| return false; |
| } |
| bra = cursor; |
| slice_del(); |
| } |
| B_found_a_match = true; |
| cursor = limit_backward; |
| return true; |
| } |
| |
| private boolean r_remove_question_suffixes() { |
| if (!r_has_min_length()) |
| { |
| return false; |
| } |
| B_found_a_match = false; |
| limit_backward = cursor; |
| cursor = limit; |
| int v_1 = limit - cursor; |
| lab0: { |
| ket = cursor; |
| if (find_among_b(a_14) == 0) |
| { |
| break lab0; |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| B_found_a_match = true; |
| } |
| cursor = limit - v_1; |
| cursor = limit_backward; |
| r_fix_endings(); |
| return true; |
| } |
| |
| private boolean r_remove_command_suffixes() { |
| if (!r_has_min_length()) |
| { |
| return false; |
| } |
| B_found_a_match = false; |
| limit_backward = cursor; |
| cursor = limit; |
| ket = cursor; |
| if (find_among_b(a_15) == 0) |
| { |
| return false; |
| } |
| bra = cursor; |
| slice_del(); |
| B_found_a_match = true; |
| cursor = limit_backward; |
| return true; |
| } |
| |
| private boolean r_remove_um() { |
| B_found_a_match = false; |
| if (!r_has_min_length()) |
| { |
| return false; |
| } |
| limit_backward = cursor; |
| cursor = limit; |
| ket = cursor; |
| if (!(eq_s_b("\u0BC1\u0BAE\u0BCD"))) |
| { |
| return false; |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| B_found_a_match = true; |
| cursor = limit_backward; |
| int v_1 = cursor; |
| r_fix_ending(); |
| cursor = v_1; |
| return true; |
| } |
| |
| private boolean r_remove_common_word_endings() { |
| B_found_a_match = false; |
| if (!r_has_min_length()) |
| { |
| return false; |
| } |
| limit_backward = cursor; |
| cursor = limit; |
| lab0: { |
| int v_1 = limit - cursor; |
| lab1: { |
| int v_2 = limit - cursor; |
| ket = cursor; |
| lab2: { |
| int v_3 = limit - cursor; |
| lab3: { |
| if (!(eq_s_b("\u0BC1\u0B9F\u0BA9\u0BCD"))) |
| { |
| break lab3; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab4: { |
| if (!(eq_s_b("\u0BBF\u0BB2\u0BCD\u0BB2\u0BC8"))) |
| { |
| break lab4; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab5: { |
| if (!(eq_s_b("\u0BBF\u0B9F\u0BAE\u0BCD"))) |
| { |
| break lab5; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab6: { |
| if (!(eq_s_b("\u0BBF\u0BA9\u0BCD\u0BB1\u0BBF"))) |
| { |
| break lab6; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab7: { |
| if (!(eq_s_b("\u0BBE\u0B95\u0BBF"))) |
| { |
| break lab7; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab8: { |
| if (!(eq_s_b("\u0BBE\u0B95\u0BBF\u0BAF"))) |
| { |
| break lab8; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab9: { |
| if (!(eq_s_b("\u0BC6\u0BA9\u0BCD\u0BB1\u0BC1"))) |
| { |
| break lab9; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab10: { |
| if (!(eq_s_b("\u0BC1\u0BB3\u0BCD\u0BB3"))) |
| { |
| break lab10; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab11: { |
| if (!(eq_s_b("\u0BC1\u0B9F\u0BC8\u0BAF"))) |
| { |
| break lab11; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab12: { |
| if (!(eq_s_b("\u0BC1\u0B9F\u0BC8"))) |
| { |
| break lab12; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab13: { |
| if (!(eq_s_b("\u0BC6\u0BA9\u0BC1\u0BAE\u0BCD"))) |
| { |
| break lab13; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab14: { |
| if (!(eq_s_b("\u0BB2\u0BCD\u0BB2"))) |
| { |
| break lab14; |
| } |
| int v_4 = limit - cursor; |
| { |
| int v_5 = limit - cursor; |
| lab15: { |
| if (find_among_b(a_16) == 0) |
| { |
| break lab15; |
| } |
| break lab14; |
| } |
| cursor = limit - v_5; |
| } |
| cursor = limit - v_4; |
| break lab2; |
| } |
| cursor = limit - v_3; |
| lab16: { |
| if (!(eq_s_b("\u0BC6\u0BA9"))) |
| { |
| break lab16; |
| } |
| break lab2; |
| } |
| cursor = limit - v_3; |
| if (!(eq_s_b("\u0BBE\u0B95\u0BBF"))) |
| { |
| break lab1; |
| } |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| B_found_a_match = true; |
| cursor = limit - v_2; |
| break lab0; |
| } |
| cursor = limit - v_1; |
| int v_6 = limit - cursor; |
| ket = cursor; |
| if (find_among_b(a_17) == 0) |
| { |
| return false; |
| } |
| bra = cursor; |
| slice_del(); |
| B_found_a_match = true; |
| cursor = limit - v_6; |
| } |
| cursor = limit_backward; |
| r_fix_endings(); |
| return true; |
| } |
| |
| private boolean r_remove_vetrumai_urupukal() { |
| B_found_a_match = false; |
| B_found_vetrumai_urupu = false; |
| if (!r_has_min_length()) |
| { |
| return false; |
| } |
| limit_backward = cursor; |
| cursor = limit; |
| lab0: { |
| int v_1 = limit - cursor; |
| lab1: { |
| int v_2 = limit - cursor; |
| ket = cursor; |
| if (!(eq_s_b("\u0BA9\u0BC8"))) |
| { |
| break lab1; |
| } |
| bra = cursor; |
| slice_del(); |
| cursor = limit - v_2; |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab2: { |
| int v_3 = limit - cursor; |
| ket = cursor; |
| lab3: { |
| int v_4 = limit - cursor; |
| lab4: { |
| lab5: { |
| int v_5 = limit - cursor; |
| lab6: { |
| if (!(eq_s_b("\u0BBF\u0BA9\u0BC8"))) |
| { |
| break lab6; |
| } |
| break lab5; |
| } |
| cursor = limit - v_5; |
| if (!(eq_s_b("\u0BC8"))) |
| { |
| break lab4; |
| } |
| } |
| int v_6 = limit - cursor; |
| { |
| int v_7 = limit - cursor; |
| lab7: { |
| if (find_among_b(a_18) == 0) |
| { |
| break lab7; |
| } |
| break lab4; |
| } |
| cursor = limit - v_7; |
| } |
| cursor = limit - v_6; |
| break lab3; |
| } |
| cursor = limit - v_4; |
| if (!(eq_s_b("\u0BC8"))) |
| { |
| break lab2; |
| } |
| int v_8 = limit - cursor; |
| if (find_among_b(a_19) == 0) |
| { |
| break lab2; |
| } |
| if (!(eq_s_b("\u0BCD"))) |
| { |
| break lab2; |
| } |
| cursor = limit - v_8; |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| cursor = limit - v_3; |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab8: { |
| int v_9 = limit - cursor; |
| ket = cursor; |
| lab9: { |
| int v_10 = limit - cursor; |
| lab10: { |
| if (!(eq_s_b("\u0BCA\u0B9F\u0BC1"))) |
| { |
| break lab10; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab11: { |
| if (!(eq_s_b("\u0BCB\u0B9F\u0BC1"))) |
| { |
| break lab11; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab12: { |
| if (!(eq_s_b("\u0BBF\u0BB2\u0BCD"))) |
| { |
| break lab12; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab13: { |
| if (!(eq_s_b("\u0BBF\u0BB1\u0BCD"))) |
| { |
| break lab13; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab14: { |
| if (!(eq_s_b("\u0BBF\u0BA9\u0BCD"))) |
| { |
| break lab14; |
| } |
| int v_11 = limit - cursor; |
| { |
| int v_12 = limit - cursor; |
| lab15: { |
| if (!(eq_s_b("\u0BAE"))) |
| { |
| break lab15; |
| } |
| break lab14; |
| } |
| cursor = limit - v_12; |
| } |
| cursor = limit - v_11; |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab16: { |
| if (!(eq_s_b("\u0BBF\u0BA9\u0BCD\u0BB1\u0BC1"))) |
| { |
| break lab16; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab17: { |
| if (!(eq_s_b("\u0BBF\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4\u0BC1"))) |
| { |
| break lab17; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab18: { |
| if (!(eq_s_b("\u0BB5\u0BBF\u0B9F"))) |
| { |
| break lab18; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab19: { |
| if (!(limit >= 7)) |
| { |
| break lab19; |
| } |
| if (!(eq_s_b("\u0BBF\u0B9F\u0BAE\u0BCD"))) |
| { |
| break lab19; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab20: { |
| if (!(eq_s_b("\u0BBE\u0BB2\u0BCD"))) |
| { |
| break lab20; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab21: { |
| if (!(eq_s_b("\u0BC1\u0B9F\u0BC8"))) |
| { |
| break lab21; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab22: { |
| if (!(eq_s_b("\u0BBE\u0BAE\u0BB2\u0BCD"))) |
| { |
| break lab22; |
| } |
| break lab9; |
| } |
| cursor = limit - v_10; |
| lab23: { |
| if (!(eq_s_b("\u0BB2\u0BCD"))) |
| { |
| break lab23; |
| } |
| int v_13 = limit - cursor; |
| { |
| int v_14 = limit - cursor; |
| lab24: { |
| if (find_among_b(a_20) == 0) |
| { |
| break lab24; |
| } |
| break lab23; |
| } |
| cursor = limit - v_14; |
| } |
| cursor = limit - v_13; |
| break lab9; |
| } |
| cursor = limit - v_10; |
| if (!(eq_s_b("\u0BC1\u0BB3\u0BCD"))) |
| { |
| break lab8; |
| } |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| cursor = limit - v_9; |
| break lab0; |
| } |
| cursor = limit - v_1; |
| lab25: { |
| int v_15 = limit - cursor; |
| ket = cursor; |
| lab26: { |
| int v_16 = limit - cursor; |
| lab27: { |
| if (!(eq_s_b("\u0B95\u0BA3\u0BCD"))) |
| { |
| break lab27; |
| } |
| break lab26; |
| } |
| cursor = limit - v_16; |
| lab28: { |
| if (!(eq_s_b("\u0BAE\u0BC1\u0BA9\u0BCD"))) |
| { |
| break lab28; |
| } |
| break lab26; |
| } |
| cursor = limit - v_16; |
| lab29: { |
| if (!(eq_s_b("\u0BAE\u0BC7\u0BB2\u0BCD"))) |
| { |
| break lab29; |
| } |
| break lab26; |
| } |
| cursor = limit - v_16; |
| lab30: { |
| if (!(eq_s_b("\u0BAE\u0BC7\u0BB1\u0BCD"))) |
| { |
| break lab30; |
| } |
| break lab26; |
| } |
| cursor = limit - v_16; |
| lab31: { |
| if (!(eq_s_b("\u0B95\u0BC0\u0BB4\u0BCD"))) |
| { |
| break lab31; |
| } |
| break lab26; |
| } |
| cursor = limit - v_16; |
| lab32: { |
| if (!(eq_s_b("\u0BAA\u0BBF\u0BA9\u0BCD"))) |
| { |
| break lab32; |
| } |
| break lab26; |
| } |
| cursor = limit - v_16; |
| if (!(eq_s_b("\u0BA4\u0BC1"))) |
| { |
| break lab25; |
| } |
| int v_17 = limit - cursor; |
| { |
| int v_18 = limit - cursor; |
| lab33: { |
| if (find_among_b(a_21) == 0) |
| { |
| break lab33; |
| } |
| break lab25; |
| } |
| cursor = limit - v_18; |
| } |
| cursor = limit - v_17; |
| } |
| bra = cursor; |
| slice_del(); |
| cursor = limit - v_15; |
| break lab0; |
| } |
| cursor = limit - v_1; |
| int v_19 = limit - cursor; |
| ket = cursor; |
| if (!(eq_s_b("\u0BC0"))) |
| { |
| return false; |
| } |
| bra = cursor; |
| slice_from("\u0BBF"); |
| cursor = limit - v_19; |
| } |
| B_found_a_match = true; |
| B_found_vetrumai_urupu = true; |
| int v_20 = limit - cursor; |
| lab34: { |
| ket = cursor; |
| if (!(eq_s_b("\u0BBF\u0BA9\u0BCD"))) |
| { |
| break lab34; |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| } |
| cursor = limit - v_20; |
| cursor = limit_backward; |
| r_fix_endings(); |
| return true; |
| } |
| |
| private boolean r_remove_tense_suffixes() { |
| B_found_a_match = true; |
| while(true) |
| { |
| int v_1 = cursor; |
| lab0: { |
| if (!(B_found_a_match)) |
| { |
| break lab0; |
| } |
| int v_2 = cursor; |
| r_remove_tense_suffix(); |
| cursor = v_2; |
| continue; |
| } |
| cursor = v_1; |
| break; |
| } |
| return true; |
| } |
| |
| private boolean r_remove_tense_suffix() { |
| B_found_a_match = false; |
| if (!r_has_min_length()) |
| { |
| return false; |
| } |
| limit_backward = cursor; |
| cursor = limit; |
| int v_1 = limit - cursor; |
| lab0: { |
| lab1: { |
| int v_2 = limit - cursor; |
| lab2: { |
| int v_3 = limit - cursor; |
| ket = cursor; |
| if (find_among_b(a_22) == 0) |
| { |
| break lab2; |
| } |
| bra = cursor; |
| slice_del(); |
| B_found_a_match = true; |
| cursor = limit - v_3; |
| break lab1; |
| } |
| cursor = limit - v_2; |
| lab3: { |
| int v_4 = limit - cursor; |
| ket = cursor; |
| lab4: { |
| int v_5 = limit - cursor; |
| lab5: { |
| if (!(eq_s_b("\u0BAE\u0BBE\u0BB0\u0BCD"))) |
| { |
| break lab5; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab6: { |
| if (!(eq_s_b("\u0BAE\u0BBF\u0BA9\u0BCD"))) |
| { |
| break lab6; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab7: { |
| if (!(eq_s_b("\u0BA9\u0BA9\u0BCD"))) |
| { |
| break lab7; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab8: { |
| if (!(eq_s_b("\u0BA9\u0BBE\u0BA9\u0BCD"))) |
| { |
| break lab8; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab9: { |
| if (!(eq_s_b("\u0BA9\u0BBE\u0BB3\u0BCD"))) |
| { |
| break lab9; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab10: { |
| if (!(eq_s_b("\u0BA9\u0BBE\u0BB0\u0BCD"))) |
| { |
| break lab10; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab11: { |
| if (!(eq_s_b("\u0BB5\u0BA9\u0BCD"))) |
| { |
| break lab11; |
| } |
| int v_6 = limit - cursor; |
| { |
| int v_7 = limit - cursor; |
| lab12: { |
| if (find_among_b(a_23) == 0) |
| { |
| break lab12; |
| } |
| break lab11; |
| } |
| cursor = limit - v_7; |
| } |
| cursor = limit - v_6; |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab13: { |
| if (!(eq_s_b("\u0BA9\u0BB3\u0BCD"))) |
| { |
| break lab13; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab14: { |
| if (!(eq_s_b("\u0BB5\u0BB3\u0BCD"))) |
| { |
| break lab14; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab15: { |
| if (!(eq_s_b("\u0BA9\u0BB0\u0BCD"))) |
| { |
| break lab15; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab16: { |
| if (!(eq_s_b("\u0BB5\u0BB0\u0BCD"))) |
| { |
| break lab16; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab17: { |
| if (!(eq_s_b("\u0BA9"))) |
| { |
| break lab17; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab18: { |
| if (!(eq_s_b("\u0BAA"))) |
| { |
| break lab18; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab19: { |
| if (!(eq_s_b("\u0B95"))) |
| { |
| break lab19; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab20: { |
| if (!(eq_s_b("\u0BA4"))) |
| { |
| break lab20; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab21: { |
| if (!(eq_s_b("\u0BAF"))) |
| { |
| break lab21; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab22: { |
| if (!(eq_s_b("\u0BAA\u0BA9\u0BCD"))) |
| { |
| break lab22; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab23: { |
| if (!(eq_s_b("\u0BAA\u0BB3\u0BCD"))) |
| { |
| break lab23; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab24: { |
| if (!(eq_s_b("\u0BAA\u0BB0\u0BCD"))) |
| { |
| break lab24; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab25: { |
| if (!(eq_s_b("\u0BA4\u0BC1"))) |
| { |
| break lab25; |
| } |
| int v_8 = limit - cursor; |
| { |
| int v_9 = limit - cursor; |
| lab26: { |
| if (find_among_b(a_24) == 0) |
| { |
| break lab26; |
| } |
| break lab25; |
| } |
| cursor = limit - v_9; |
| } |
| cursor = limit - v_8; |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab27: { |
| if (!(eq_s_b("\u0BBF\u0BB1\u0BCD\u0BB1\u0BC1"))) |
| { |
| break lab27; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab28: { |
| if (!(eq_s_b("\u0BAA\u0BAE\u0BCD"))) |
| { |
| break lab28; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab29: { |
| if (!(eq_s_b("\u0BA9\u0BAE\u0BCD"))) |
| { |
| break lab29; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab30: { |
| if (!(eq_s_b("\u0BA4\u0BC1\u0BAE\u0BCD"))) |
| { |
| break lab30; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab31: { |
| if (!(eq_s_b("\u0BB1\u0BC1\u0BAE\u0BCD"))) |
| { |
| break lab31; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab32: { |
| if (!(eq_s_b("\u0B95\u0BC1\u0BAE\u0BCD"))) |
| { |
| break lab32; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab33: { |
| if (!(eq_s_b("\u0BA9\u0BC6\u0BA9\u0BCD"))) |
| { |
| break lab33; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| lab34: { |
| if (!(eq_s_b("\u0BA9\u0BC8"))) |
| { |
| break lab34; |
| } |
| break lab4; |
| } |
| cursor = limit - v_5; |
| if (!(eq_s_b("\u0BB5\u0BC8"))) |
| { |
| break lab3; |
| } |
| } |
| bra = cursor; |
| slice_del(); |
| B_found_a_match = true; |
| cursor = limit - v_4; |
| break lab1; |
| } |
| cursor = limit - v_2; |
| lab35: { |
| int v_10 = limit - cursor; |
| ket = cursor; |
| lab36: { |
| int v_11 = limit - cursor; |
| lab37: { |
| if (!(eq_s_b("\u0BBE\u0BA9\u0BCD"))) |
| { |
| break lab37; |
| } |
| int v_12 = limit - cursor; |
| { |
| int v_13 = limit - cursor; |
| lab38: { |
| if (!(eq_s_b("\u0B9A"))) |
| { |
| break lab38; |
| } |
| break lab37; |
| } |
| cursor = limit - v_13; |
| } |
| cursor = limit - v_12; |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab39: { |
| if (!(eq_s_b("\u0BBE\u0BB3\u0BCD"))) |
| { |
| break lab39; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab40: { |
| if (!(eq_s_b("\u0BBE\u0BB0\u0BCD"))) |
| { |
| break lab40; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab41: { |
| if (!(eq_s_b("\u0BC7\u0BA9\u0BCD"))) |
| { |
| break lab41; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab42: { |
| if (!(eq_s_b("\u0BBE"))) |
| { |
| break lab42; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab43: { |
| if (!(eq_s_b("\u0BBE\u0BAE\u0BCD"))) |
| { |
| break lab43; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab44: { |
| if (!(eq_s_b("\u0BC6\u0BAE\u0BCD"))) |
| { |
| break lab44; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab45: { |
| if (!(eq_s_b("\u0BC7\u0BAE\u0BCD"))) |
| { |
| break lab45; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab46: { |
| if (!(eq_s_b("\u0BCB\u0BAE\u0BCD"))) |
| { |
| break lab46; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab47: { |
| if (!(eq_s_b("\u0B95\u0BC1\u0BAE\u0BCD"))) |
| { |
| break lab47; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab48: { |
| if (!(eq_s_b("\u0BA4\u0BC1\u0BAE\u0BCD"))) |
| { |
| break lab48; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab49: { |
| if (!(eq_s_b("\u0B9F\u0BC1\u0BAE\u0BCD"))) |
| { |
| break lab49; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab50: { |
| if (!(eq_s_b("\u0BB1\u0BC1\u0BAE\u0BCD"))) |
| { |
| break lab50; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab51: { |
| if (!(eq_s_b("\u0BBE\u0BAF\u0BCD"))) |
| { |
| break lab51; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab52: { |
| if (!(eq_s_b("\u0BA9\u0BC6\u0BA9\u0BCD"))) |
| { |
| break lab52; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab53: { |
| if (!(eq_s_b("\u0BA9\u0BBF\u0BB0\u0BCD"))) |
| { |
| break lab53; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| lab54: { |
| if (!(eq_s_b("\u0BC0\u0BB0\u0BCD"))) |
| { |
| break lab54; |
| } |
| break lab36; |
| } |
| cursor = limit - v_11; |
| if (!(eq_s_b("\u0BC0\u0BAF\u0BB0\u0BCD"))) |
| { |
| break lab35; |
| } |
| } |
| bra = cursor; |
| slice_from("\u0BCD"); |
| B_found_a_match = true; |
| cursor = limit - v_10; |
| break lab1; |
| } |
| cursor = limit - v_2; |
| int v_14 = limit - cursor; |
| ket = cursor; |
| lab55: { |
| int v_15 = limit - cursor; |
| lab56: { |
| if (!(eq_s_b("\u0B95\u0BC1"))) |
| { |
| break lab56; |
| } |
| break lab55; |
| } |
| cursor = limit - v_15; |
| if (!(eq_s_b("\u0BA4\u0BC1"))) |
| { |
| break lab0; |
| } |
| } |
| int v_16 = limit - cursor; |
| if (!(eq_s_b("\u0BCD"))) |
| { |
| break lab0; |
| } |
| cursor = limit - v_16; |
| bra = cursor; |
| slice_del(); |
| B_found_a_match = true; |
| cursor = limit - v_14; |
| } |
| } |
| cursor = limit - v_1; |
| int v_17 = limit - cursor; |
| lab57: { |
| ket = cursor; |
| if (find_among_b(a_25) == 0) |
| { |
| break lab57; |
| } |
| bra = cursor; |
| slice_del(); |
| B_found_a_match = true; |
| } |
| cursor = limit - v_17; |
| cursor = limit_backward; |
| r_fix_endings(); |
| return true; |
| } |
| |
| public boolean stem() { |
| B_found_vetrumai_urupu = false; |
| int v_1 = cursor; |
| r_fix_ending(); |
| cursor = v_1; |
| if (!r_has_min_length()) |
| { |
| return false; |
| } |
| int v_2 = cursor; |
| r_remove_question_prefixes(); |
| cursor = v_2; |
| int v_3 = cursor; |
| r_remove_pronoun_prefixes(); |
| cursor = v_3; |
| int v_4 = cursor; |
| r_remove_question_suffixes(); |
| cursor = v_4; |
| int v_5 = cursor; |
| r_remove_um(); |
| cursor = v_5; |
| int v_6 = cursor; |
| r_remove_common_word_endings(); |
| cursor = v_6; |
| int v_7 = cursor; |
| r_remove_vetrumai_urupukal(); |
| cursor = v_7; |
| int v_8 = cursor; |
| r_remove_plural_suffix(); |
| cursor = v_8; |
| int v_9 = cursor; |
| r_remove_command_suffixes(); |
| cursor = v_9; |
| int v_10 = cursor; |
| r_remove_tense_suffixes(); |
| cursor = v_10; |
| return true; |
| } |
| |
| @Override |
| public boolean equals( Object o ) { |
| return o instanceof TamilStemmer; |
| } |
| |
| @Override |
| public int hashCode() { |
| return TamilStemmer.class.getName().hashCode(); |
| } |
| |
| |
| |
| } |
| |