# This file was generated automatically by the Snowball to Python compiler
# http://snowballstem.org/

from .basestemmer import BaseStemmer
from .among import Among


class GreekStemmer(BaseStemmer):
    '''
    This class was automatically generated by a Snowball to Python compiler
    It implements the stemming algorithm defined by a snowball script.
    '''

    a_0 = [
        Among(u"", -1, 25),
        Among(u"\u0386", 0, 1),
        Among(u"\u0388", 0, 5),
        Among(u"\u0389", 0, 7),
        Among(u"\u038A", 0, 9),
        Among(u"\u038C", 0, 15),
        Among(u"\u038E", 0, 20),
        Among(u"\u038F", 0, 24),
        Among(u"\u0390", 0, 7),
        Among(u"\u0391", 0, 1),
        Among(u"\u0392", 0, 2),
        Among(u"\u0393", 0, 3),
        Among(u"\u0394", 0, 4),
        Among(u"\u0395", 0, 5),
        Among(u"\u0396", 0, 6),
        Among(u"\u0397", 0, 7),
        Among(u"\u0398", 0, 8),
        Among(u"\u0399", 0, 9),
        Among(u"\u039A", 0, 10),
        Among(u"\u039B", 0, 11),
        Among(u"\u039C", 0, 12),
        Among(u"\u039D", 0, 13),
        Among(u"\u039E", 0, 14),
        Among(u"\u039F", 0, 15),
        Among(u"\u03A0", 0, 16),
        Among(u"\u03A1", 0, 17),
        Among(u"\u03A3", 0, 18),
        Among(u"\u03A4", 0, 19),
        Among(u"\u03A5", 0, 20),
        Among(u"\u03A6", 0, 21),
        Among(u"\u03A7", 0, 22),
        Among(u"\u03A8", 0, 23),
        Among(u"\u03A9", 0, 24),
        Among(u"\u03AA", 0, 9),
        Among(u"\u03AB", 0, 20),
        Among(u"\u03AC", 0, 1),
        Among(u"\u03AD", 0, 5),
        Among(u"\u03AE", 0, 7),
        Among(u"\u03AF", 0, 9),
        Among(u"\u03B0", 0, 20),
        Among(u"\u03C2", 0, 18),
        Among(u"\u03CA", 0, 7),
        Among(u"\u03CB", 0, 20),
        Among(u"\u03CC", 0, 15),
        Among(u"\u03CD", 0, 20),
        Among(u"\u03CE", 0, 24)
    ]

    a_1 = [
        Among(u"\u03C3\u03BA\u03B1\u03B3\u03B9\u03B1", -1, 2),
        Among(u"\u03C6\u03B1\u03B3\u03B9\u03B1", -1, 1),
        Among(u"\u03BF\u03BB\u03BF\u03B3\u03B9\u03B1", -1, 3),
        Among(u"\u03C3\u03BF\u03B3\u03B9\u03B1", -1, 4),
        Among(u"\u03C4\u03B1\u03C4\u03BF\u03B3\u03B9\u03B1", -1, 5),
        Among(u"\u03BA\u03C1\u03B5\u03B1\u03C4\u03B1", -1, 6),
        Among(u"\u03C0\u03B5\u03C1\u03B1\u03C4\u03B1", -1, 7),
        Among(u"\u03C4\u03B5\u03C1\u03B1\u03C4\u03B1", -1, 8),
        Among(u"\u03B3\u03B5\u03B3\u03BF\u03BD\u03BF\u03C4\u03B1", -1, 11),
        Among(u"\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4\u03C9\u03C4\u03B1", -1, 10),
        Among(u"\u03C6\u03C9\u03C4\u03B1", -1, 9),
        Among(u"\u03C0\u03B5\u03C1\u03B1\u03C4\u03B7", -1, 7),
        Among(u"\u03C3\u03BA\u03B1\u03B3\u03B9\u03C9\u03BD", -1, 2),
        Among(u"\u03C6\u03B1\u03B3\u03B9\u03C9\u03BD", -1, 1),
        Among(u"\u03BF\u03BB\u03BF\u03B3\u03B9\u03C9\u03BD", -1, 3),
        Among(u"\u03C3\u03BF\u03B3\u03B9\u03C9\u03BD", -1, 4),
        Among(u"\u03C4\u03B1\u03C4\u03BF\u03B3\u03B9\u03C9\u03BD", -1, 5),
        Among(u"\u03BA\u03C1\u03B5\u03B1\u03C4\u03C9\u03BD", -1, 6),
        Among(u"\u03C0\u03B5\u03C1\u03B1\u03C4\u03C9\u03BD", -1, 7),
        Among(u"\u03C4\u03B5\u03C1\u03B1\u03C4\u03C9\u03BD", -1, 8),
        Among(u"\u03B3\u03B5\u03B3\u03BF\u03BD\u03BF\u03C4\u03C9\u03BD", -1, 11),
        Among(u"\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4\u03C9\u03C4\u03C9\u03BD", -1, 10),
        Among(u"\u03C6\u03C9\u03C4\u03C9\u03BD", -1, 9),
        Among(u"\u03BA\u03C1\u03B5\u03B1\u03C3", -1, 6),
        Among(u"\u03C0\u03B5\u03C1\u03B1\u03C3", -1, 7),
        Among(u"\u03C4\u03B5\u03C1\u03B1\u03C3", -1, 8),
        Among(u"\u03B3\u03B5\u03B3\u03BF\u03BD\u03BF\u03C3", -1, 11),
        Among(u"\u03BA\u03C1\u03B5\u03B1\u03C4\u03BF\u03C3", -1, 6),
        Among(u"\u03C0\u03B5\u03C1\u03B1\u03C4\u03BF\u03C3", -1, 7),
        Among(u"\u03C4\u03B5\u03C1\u03B1\u03C4\u03BF\u03C3", -1, 8),
        Among(u"\u03B3\u03B5\u03B3\u03BF\u03BD\u03BF\u03C4\u03BF\u03C3", -1, 11),
        Among(u"\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4\u03C9\u03C4\u03BF\u03C3", -1, 10),
        Among(u"\u03C6\u03C9\u03C4\u03BF\u03C3", -1, 9),
        Among(u"\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4\u03C9\u03C3", -1, 10),
        Among(u"\u03C6\u03C9\u03C3", -1, 9),
        Among(u"\u03C3\u03BA\u03B1\u03B3\u03B9\u03BF\u03C5", -1, 2),
        Among(u"\u03C6\u03B1\u03B3\u03B9\u03BF\u03C5", -1, 1),
        Among(u"\u03BF\u03BB\u03BF\u03B3\u03B9\u03BF\u03C5", -1, 3),
        Among(u"\u03C3\u03BF\u03B3\u03B9\u03BF\u03C5", -1, 4),
        Among(u"\u03C4\u03B1\u03C4\u03BF\u03B3\u03B9\u03BF\u03C5", -1, 5)
    ]

    a_2 = [
        Among(u"\u03C0\u03B1", -1, 1),
        Among(u"\u03BE\u03B1\u03BD\u03B1\u03C0\u03B1", 0, 1),
        Among(u"\u03B5\u03C0\u03B1", 0, 1),
        Among(u"\u03C0\u03B5\u03C1\u03B9\u03C0\u03B1", 0, 1),
        Among(u"\u03B1\u03BD\u03B1\u03BC\u03C0\u03B1", 0, 1),
        Among(u"\u03B5\u03BC\u03C0\u03B1", 0, 1),
        Among(u"\u03B4\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03B1\u03B8\u03C1\u03BF", -1, 1),
        Among(u"\u03C3\u03C5\u03BD\u03B1\u03B8\u03C1\u03BF", 7, 1)
    ]

    a_3 = [
        Among(u"\u03B2", -1, 1),
        Among(u"\u03B2\u03B1\u03B8\u03C5\u03C1\u03B9", -1, 1),
        Among(u"\u03B2\u03B1\u03C1\u03BA", -1, 1),
        Among(u"\u03BC\u03B1\u03C1\u03BA", -1, 1),
        Among(u"\u03BB", -1, 1),
        Among(u"\u03BC", -1, 1),
        Among(u"\u03BA\u03BF\u03C1\u03BD", -1, 1),
        Among(u"\u03C0", -1, 1),
        Among(u"\u03B9\u03BC\u03C0", 7, 1),
        Among(u"\u03C1", -1, 1),
        Among(u"\u03BC\u03B1\u03C1", 9, 1),
        Among(u"\u03B1\u03BC\u03C0\u03B1\u03C1", 9, 1),
        Among(u"\u03B3\u03BA\u03C1", 9, 1),
        Among(u"\u03B2\u03BF\u03BB\u03B2\u03BF\u03C1", 9, 1),
        Among(u"\u03B3\u03BB\u03C5\u03BA\u03BF\u03C1", 9, 1),
        Among(u"\u03C0\u03B9\u03C0\u03B5\u03C1\u03BF\u03C1", 9, 1),
        Among(u"\u03C0\u03C1", 9, 1),
        Among(u"\u03BC\u03C0\u03C1", 16, 1),
        Among(u"\u03B1\u03C1\u03C1", 9, 1),
        Among(u"\u03B3\u03BB\u03C5\u03BA\u03C5\u03C1", 9, 1),
        Among(u"\u03C0\u03BF\u03BB\u03C5\u03C1", 9, 1),
        Among(u"\u03BB\u03BF\u03C5", -1, 1)
    ]

    a_4 = [
        Among(u"\u03B9\u03B6\u03B1", -1, 1),
        Among(u"\u03B9\u03B6\u03B5", -1, 1),
        Among(u"\u03B9\u03B6\u03B1\u03BC\u03B5", -1, 1),
        Among(u"\u03B9\u03B6\u03BF\u03C5\u03BC\u03B5", -1, 1),
        Among(u"\u03B9\u03B6\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03B9\u03B6\u03BF\u03C5\u03BD\u03B5", -1, 1),
        Among(u"\u03B9\u03B6\u03B1\u03C4\u03B5", -1, 1),
        Among(u"\u03B9\u03B6\u03B5\u03C4\u03B5", -1, 1),
        Among(u"\u03B9\u03B6\u03B5\u03B9", -1, 1),
        Among(u"\u03B9\u03B6\u03B1\u03BD", -1, 1),
        Among(u"\u03B9\u03B6\u03BF\u03C5\u03BD", -1, 1),
        Among(u"\u03B9\u03B6\u03B5\u03C3", -1, 1),
        Among(u"\u03B9\u03B6\u03B5\u03B9\u03C3", -1, 1),
        Among(u"\u03B9\u03B6\u03C9", -1, 1)
    ]

    a_5 = [
        Among(u"\u03B2\u03B9", -1, 1),
        Among(u"\u03BB\u03B9", -1, 1),
        Among(u"\u03B1\u03BB", -1, 1),
        Among(u"\u03B5\u03BD", -1, 1),
        Among(u"\u03C3", -1, 1),
        Among(u"\u03C7", -1, 1),
        Among(u"\u03C5\u03C8", -1, 1),
        Among(u"\u03B6\u03C9", -1, 1)
    ]

    a_6 = [
        Among(u"\u03C9\u03B8\u03B7\u03BA\u03B1", -1, 1),
        Among(u"\u03C9\u03B8\u03B7\u03BA\u03B5", -1, 1),
        Among(u"\u03C9\u03B8\u03B7\u03BA\u03B1\u03BC\u03B5", -1, 1),
        Among(u"\u03C9\u03B8\u03B7\u03BA\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03C9\u03B8\u03B7\u03BA\u03B1\u03C4\u03B5", -1, 1),
        Among(u"\u03C9\u03B8\u03B7\u03BA\u03B1\u03BD", -1, 1),
        Among(u"\u03C9\u03B8\u03B7\u03BA\u03B5\u03C3", -1, 1)
    ]

    a_7 = [
        Among(u"\u03BE\u03B1\u03BD\u03B1\u03C0\u03B1", -1, 1),
        Among(u"\u03B5\u03C0\u03B1", -1, 1),
        Among(u"\u03C0\u03B5\u03C1\u03B9\u03C0\u03B1", -1, 1),
        Among(u"\u03B1\u03BD\u03B1\u03BC\u03C0\u03B1", -1, 1),
        Among(u"\u03B5\u03BC\u03C0\u03B1", -1, 1),
        Among(u"\u03C7\u03B1\u03C1\u03C4\u03BF\u03C0\u03B1", -1, 1),
        Among(u"\u03B5\u03BE\u03B1\u03C1\u03C7\u03B1", -1, 1),
        Among(u"\u03BA\u03BB\u03B5", -1, 1),
        Among(u"\u03B5\u03BA\u03BB\u03B5", 7, 1),
        Among(u"\u03B1\u03C0\u03B5\u03BA\u03BB\u03B5", 8, 1),
        Among(u"\u03B1\u03C0\u03BF\u03BA\u03BB\u03B5", 7, 1),
        Among(u"\u03B5\u03C3\u03C9\u03BA\u03BB\u03B5", 7, 1),
        Among(u"\u03B4\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03C0\u03B5", -1, 1),
        Among(u"\u03B5\u03C0\u03B5", 13, 1),
        Among(u"\u03BC\u03B5\u03C4\u03B5\u03C0\u03B5", 14, 1),
        Among(u"\u03B5\u03C3\u03B5", -1, 1),
        Among(u"\u03B1\u03B8\u03C1\u03BF", -1, 1),
        Among(u"\u03C3\u03C5\u03BD\u03B1\u03B8\u03C1\u03BF", 17, 1)
    ]

    a_8 = [
        Among(u"\u03B3\u03B5", -1, 1),
        Among(u"\u03B3\u03BA\u03B5", -1, 1),
        Among(u"\u03B3\u03BA", -1, 1),
        Among(u"\u03BC", -1, 1),
        Among(u"\u03C0\u03BF\u03C5\u03BA\u03B1\u03BC", 3, 1),
        Among(u"\u03BA\u03BF\u03BC", 3, 1),
        Among(u"\u03B1\u03BD", -1, 1),
        Among(u"\u03BF\u03BB\u03BF", -1, 1),
        Among(u"\u03C0", -1, 1),
        Among(u"\u03BB\u03B1\u03C1", -1, 1),
        Among(u"\u03B4\u03B7\u03BC\u03BF\u03BA\u03C1\u03B1\u03C4", -1, 1),
        Among(u"\u03B1\u03C6", -1, 1),
        Among(u"\u03B3\u03B9\u03B3\u03B1\u03BD\u03C4\u03BF\u03B1\u03C6", 11, 1)
    ]

    a_9 = [
        Among(u"\u03B9\u03C3\u03B1", -1, 1),
        Among(u"\u03B9\u03C3\u03B1\u03BC\u03B5", -1, 1),
        Among(u"\u03B9\u03C3\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03B9\u03C3\u03B5", -1, 1),
        Among(u"\u03B9\u03C3\u03B1\u03C4\u03B5", -1, 1),
        Among(u"\u03B9\u03C3\u03B1\u03BD", -1, 1),
        Among(u"\u03B9\u03C3\u03B5\u03C3", -1, 1)
    ]

    a_10 = [
        Among(u"\u03BE\u03B1\u03BD\u03B1\u03C0\u03B1", -1, 1),
        Among(u"\u03B5\u03C0\u03B1", -1, 1),
        Among(u"\u03C0\u03B5\u03C1\u03B9\u03C0\u03B1", -1, 1),
        Among(u"\u03B1\u03BD\u03B1\u03BC\u03C0\u03B1", -1, 1),
        Among(u"\u03B5\u03BC\u03C0\u03B1", -1, 1),
        Among(u"\u03C7\u03B1\u03C1\u03C4\u03BF\u03C0\u03B1", -1, 1),
        Among(u"\u03B5\u03BE\u03B1\u03C1\u03C7\u03B1", -1, 1),
        Among(u"\u03BA\u03BB\u03B5", -1, 1),
        Among(u"\u03B5\u03BA\u03BB\u03B5", 7, 1),
        Among(u"\u03B1\u03C0\u03B5\u03BA\u03BB\u03B5", 8, 1),
        Among(u"\u03B1\u03C0\u03BF\u03BA\u03BB\u03B5", 7, 1),
        Among(u"\u03B5\u03C3\u03C9\u03BA\u03BB\u03B5", 7, 1),
        Among(u"\u03B4\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03C0\u03B5", -1, 1),
        Among(u"\u03B5\u03C0\u03B5", 13, 1),
        Among(u"\u03BC\u03B5\u03C4\u03B5\u03C0\u03B5", 14, 1),
        Among(u"\u03B5\u03C3\u03B5", -1, 1),
        Among(u"\u03B1\u03B8\u03C1\u03BF", -1, 1),
        Among(u"\u03C3\u03C5\u03BD\u03B1\u03B8\u03C1\u03BF", 17, 1)
    ]

    a_11 = [
        Among(u"\u03B9\u03C3\u03BF\u03C5\u03BC\u03B5", -1, 1),
        Among(u"\u03B9\u03C3\u03BF\u03C5\u03BD\u03B5", -1, 1),
        Among(u"\u03B9\u03C3\u03B5\u03C4\u03B5", -1, 1),
        Among(u"\u03B9\u03C3\u03B5\u03B9", -1, 1),
        Among(u"\u03B9\u03C3\u03BF\u03C5\u03BD", -1, 1),
        Among(u"\u03B9\u03C3\u03B5\u03B9\u03C3", -1, 1),
        Among(u"\u03B9\u03C3\u03C9", -1, 1)
    ]

    a_12 = [
        Among(u"\u03BA\u03BB\u03B5", -1, 1),
        Among(u"\u03B5\u03C3\u03C9\u03BA\u03BB\u03B5", 0, 1),
        Among(u"\u03C0\u03BB\u03B5", -1, 1),
        Among(u"\u03B4\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03C3\u03B5", -1, 1),
        Among(u"\u03B1\u03C3\u03B5", 4, 1),
        Among(u"\u03C3\u03C5\u03BD\u03B1\u03B8\u03C1\u03BF", -1, 1)
    ]

    a_13 = [
        Among(u"\u03B1\u03C4\u03B1", -1, 1),
        Among(u"\u03C6\u03B1", -1, 1),
        Among(u"\u03B7\u03C6\u03B1", 1, 1),
        Among(u"\u03BC\u03B5\u03B3", -1, 1),
        Among(u"\u03BB\u03C5\u03B3", -1, 1),
        Among(u"\u03B7\u03B4", -1, 1),
        Among(u"\u03BA\u03B1\u03B8", -1, 1),
        Among(u"\u03B5\u03C7\u03B8", -1, 1),
        Among(u"\u03BA\u03B1\u03BA", -1, 1),
        Among(u"\u03BC\u03B1\u03BA", -1, 1),
        Among(u"\u03C3\u03BA", -1, 1),
        Among(u"\u03C6\u03B9\u03BB", -1, 1),
        Among(u"\u03BA\u03C5\u03BB", -1, 1),
        Among(u"\u03BC", -1, 1),
        Among(u"\u03B3\u03B5\u03BC", 13, 1),
        Among(u"\u03B1\u03C7\u03BD", -1, 1),
        Among(u"\u03C0", -1, 1),
        Among(u"\u03B1\u03C0", 16, 1),
        Among(u"\u03B5\u03BC\u03C0", 16, 1),
        Among(u"\u03B5\u03C5\u03C0", 16, 1),
        Among(u"\u03B1\u03C1", -1, 1),
        Among(u"\u03B1\u03BF\u03C1", -1, 1),
        Among(u"\u03B3\u03C5\u03C1", -1, 1),
        Among(u"\u03C7\u03C1", -1, 1),
        Among(u"\u03C7\u03C9\u03C1", -1, 1),
        Among(u"\u03BA\u03C4", -1, 1),
        Among(u"\u03B1\u03BA\u03C4", 25, 1),
        Among(u"\u03C7\u03C4", -1, 1),
        Among(u"\u03B1\u03C7\u03C4", 27, 1),
        Among(u"\u03C4\u03B1\u03C7", -1, 1),
        Among(u"\u03C3\u03C7", -1, 1),
        Among(u"\u03B1\u03C3\u03C7", 30, 1),
        Among(u"\u03C5\u03C8", -1, 1)
    ]

    a_14 = [
        Among(u"\u03B9\u03C3\u03C4\u03B1", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03B5", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03B7", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03BF\u03B9", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03C9\u03BD", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03BF", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03B5\u03C3", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03B7\u03C3", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03BF\u03C3", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03BF\u03C5\u03C3", -1, 1),
        Among(u"\u03B9\u03C3\u03C4\u03BF\u03C5", -1, 1)
    ]

    a_15 = [
        Among(u"\u03B5\u03B3\u03BA\u03BB\u03B5", -1, 1),
        Among(u"\u03B1\u03C0\u03BF\u03BA\u03BB\u03B5", -1, 1),
        Among(u"\u03C3\u03B5", -1, 1),
        Among(u"\u03BC\u03B5\u03C4\u03B1\u03C3\u03B5", 2, 1),
        Among(u"\u03BC\u03B9\u03BA\u03C1\u03BF\u03C3\u03B5", 2, 1)
    ]

    a_16 = [
        Among(u"\u03B4\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03B1\u03BD\u03C4\u03B9\u03B4\u03B1\u03BD\u03B5", 0, 1)
    ]

    a_17 = [
        Among(u"\u03B1\u03C4\u03BF\u03BC\u03B9\u03BA", -1, 2),
        Among(u"\u03B5\u03B8\u03BD\u03B9\u03BA", -1, 4),
        Among(u"\u03C4\u03BF\u03C0\u03B9\u03BA", -1, 7),
        Among(u"\u03B5\u03BA\u03BB\u03B5\u03BA\u03C4\u03B9\u03BA", -1, 5),
        Among(u"\u03C3\u03BA\u03B5\u03C0\u03C4\u03B9\u03BA", -1, 6),
        Among(u"\u03B3\u03BD\u03C9\u03C3\u03C4\u03B9\u03BA", -1, 3),
        Among(u"\u03B1\u03B3\u03BD\u03C9\u03C3\u03C4\u03B9\u03BA", 5, 1),
        Among(u"\u03B1\u03BB\u03B5\u03BE\u03B1\u03BD\u03B4\u03C1\u03B9\u03BD", -1, 8),
        Among(u"\u03B8\u03B5\u03B1\u03C4\u03C1\u03B9\u03BD", -1, 10),
        Among(u"\u03B2\u03C5\u03B6\u03B1\u03BD\u03C4\u03B9\u03BD", -1, 9)
    ]

    a_18 = [
        Among(u"\u03B9\u03C3\u03BC\u03BF\u03B9", -1, 1),
        Among(u"\u03B9\u03C3\u03BC\u03C9\u03BD", -1, 1),
        Among(u"\u03B9\u03C3\u03BC\u03BF", -1, 1),
        Among(u"\u03B9\u03C3\u03BC\u03BF\u03C3", -1, 1),
        Among(u"\u03B9\u03C3\u03BC\u03BF\u03C5\u03C3", -1, 1),
        Among(u"\u03B9\u03C3\u03BC\u03BF\u03C5", -1, 1)
    ]

    a_19 = [
        Among(u"\u03C3", -1, 1),
        Among(u"\u03C7", -1, 1)
    ]

    a_20 = [
        Among(u"\u03BF\u03C5\u03B4\u03B1\u03BA\u03B9\u03B1", -1, 1),
        Among(u"\u03B1\u03C1\u03B1\u03BA\u03B9\u03B1", -1, 1),
        Among(u"\u03BF\u03C5\u03B4\u03B1\u03BA\u03B9", -1, 1),
        Among(u"\u03B1\u03C1\u03B1\u03BA\u03B9", -1, 1)
    ]

    a_21 = [
        Among(u"\u03B2\u03B1\u03BC\u03B2", -1, 1),
        Among(u"\u03C3\u03BB\u03BF\u03B2", -1, 1),
        Among(u"\u03C4\u03C3\u03B5\u03C7\u03BF\u03C3\u03BB\u03BF\u03B2", 1, 1),
        Among(u"\u03C4\u03B6", -1, 1),
        Among(u"\u03BA", -1, 1),
        Among(u"\u03BA\u03B1\u03C0\u03B1\u03BA", 4, 1),
        Among(u"\u03C3\u03BF\u03BA", 4, 1),
        Among(u"\u03C3\u03BA", 4, 1),
        Among(u"\u03BC\u03B1\u03BB", -1, 1),
        Among(u"\u03C0\u03BB", -1, 1),
        Among(u"\u03BB\u03BF\u03C5\u03BB", -1, 1),
        Among(u"\u03C6\u03C5\u03BB", -1, 1),
        Among(u"\u03BA\u03B1\u03B9\u03BC", -1, 1),
        Among(u"\u03BA\u03BB\u03B9\u03BC", -1, 1),
        Among(u"\u03C6\u03B1\u03C1\u03BC", -1, 1),
        Among(u"\u03C3\u03C0\u03B1\u03BD", -1, 1),
        Among(u"\u03BA\u03BF\u03BD", -1, 1),
        Among(u"\u03BA\u03B1\u03C4\u03C1\u03B1\u03C0", -1, 1),
        Among(u"\u03C1", -1, 1),
        Among(u"\u03B2\u03C1", 18, 1),
        Among(u"\u03BB\u03B1\u03B2\u03C1", 19, 1),
        Among(u"\u03B1\u03BC\u03B2\u03C1", 19, 1),
        Among(u"\u03BC\u03B5\u03C1", 18, 1),
        Among(u"\u03B1\u03BD\u03B8\u03C1", 18, 1),
        Among(u"\u03BA\u03BF\u03C1", 18, 1),
        Among(u"\u03C3", -1, 1),
        Among(u"\u03BD\u03B1\u03B3\u03BA\u03B1\u03C3", 25, 1),
        Among(u"\u03BC\u03BF\u03C5\u03C3\u03C4", -1, 1),
        Among(u"\u03C1\u03C5", -1, 1),
        Among(u"\u03C6", -1, 1),
        Among(u"\u03C3\u03C6", 29, 1),
        Among(u"\u03B1\u03BB\u03B9\u03C3\u03C6", 30, 1),
        Among(u"\u03C7", -1, 1)
    ]

    a_22 = [
        Among(u"\u03B2", -1, 1),
        Among(u"\u03BA\u03B1\u03C1\u03B4", -1, 1),
        Among(u"\u03B6", -1, 1),
        Among(u"\u03C3\u03BA", -1, 1),
        Among(u"\u03B2\u03B1\u03BB", -1, 1),
        Among(u"\u03B3\u03BB", -1, 1),
        Among(u"\u03C4\u03C1\u03B9\u03C0\u03BF\u03BB", -1, 1),
        Among(u"\u03B3\u03B9\u03B1\u03BD", -1, 1),
        Among(u"\u03B7\u03B3\u03BF\u03C5\u03BC\u03B5\u03BD", -1, 1),
        Among(u"\u03BA\u03BF\u03BD", -1, 1),
        Among(u"\u03BC\u03B1\u03BA\u03C1\u03C5\u03BD", -1, 1),
        Among(u"\u03C0", -1, 1),
        Among(u"\u03C0\u03B1\u03C4\u03B5\u03C1", -1, 1),
        Among(u"\u03C4\u03BF\u03C3", -1, 1),
        Among(u"\u03BD\u03C5\u03C6", -1, 1)
    ]

    a_23 = [
        Among(u"\u03B1\u03BA\u03B9\u03B1", -1, 1),
        Among(u"\u03B1\u03C1\u03B1\u03BA\u03B9\u03B1", 0, 1),
        Among(u"\u03B9\u03C4\u03C3\u03B1", -1, 1),
        Among(u"\u03B1\u03BA\u03B9", -1, 1),
        Among(u"\u03B1\u03C1\u03B1\u03BA\u03B9", 3, 1),
        Among(u"\u03B9\u03C4\u03C3\u03C9\u03BD", -1, 1),
        Among(u"\u03B9\u03C4\u03C3\u03B1\u03C3", -1, 1),
        Among(u"\u03B9\u03C4\u03C3\u03B5\u03C3", -1, 1)
    ]

    a_24 = [
        Among(u"\u03C8\u03B1\u03BB", -1, 1),
        Among(u"\u03B1\u03B9\u03C6\u03BD", -1, 1),
        Among(u"\u03BF\u03BB\u03BF", -1, 1),
        Among(u"\u03B9\u03C1", -1, 1)
    ]

    a_25 = [
        Among(u"\u03B5", -1, 1),
        Among(u"\u03C0\u03B1\u03B9\u03C7\u03BD", -1, 1)
    ]

    a_26 = [
        Among(u"\u03B9\u03B4\u03B9\u03B1", -1, 1),
        Among(u"\u03B9\u03B4\u03B9\u03C9\u03BD", -1, 1),
        Among(u"\u03B9\u03B4\u03B9\u03BF", -1, 1)
    ]

    a_27 = [
        Among(u"\u03B9\u03B2", -1, 1),
        Among(u"\u03B4", -1, 1),
        Among(u"\u03C6\u03C1\u03B1\u03B3\u03BA", -1, 1),
        Among(u"\u03BB\u03C5\u03BA", -1, 1),
        Among(u"\u03BF\u03B2\u03B5\u03BB", -1, 1),
        Among(u"\u03BC\u03B7\u03BD", -1, 1),
        Among(u"\u03C1", -1, 1)
    ]

    a_28 = [
        Among(u"\u03B9\u03C3\u03BA\u03B5", -1, 1),
        Among(u"\u03B9\u03C3\u03BA\u03BF", -1, 1),
        Among(u"\u03B9\u03C3\u03BA\u03BF\u03C3", -1, 1),
        Among(u"\u03B9\u03C3\u03BA\u03BF\u03C5", -1, 1)
    ]

    a_29 = [
        Among(u"\u03B1\u03B4\u03C9\u03BD", -1, 1),
        Among(u"\u03B1\u03B4\u03B5\u03C3", -1, 1)
    ]

    a_30 = [
        Among(u"\u03B3\u03B9\u03B1\u03B3\u03B9", -1, -1),
        Among(u"\u03B8\u03B5\u03B9", -1, -1),
        Among(u"\u03BF\u03BA", -1, -1),
        Among(u"\u03BC\u03B1\u03BC", -1, -1),
        Among(u"\u03BC\u03B1\u03BD", -1, -1),
        Among(u"\u03BC\u03C0\u03B1\u03BC\u03C0", -1, -1),
        Among(u"\u03C0\u03B5\u03B8\u03B5\u03C1", -1, -1),
        Among(u"\u03C0\u03B1\u03C4\u03B5\u03C1", -1, -1),
        Among(u"\u03BA\u03C5\u03C1", -1, -1),
        Among(u"\u03BD\u03C4\u03B1\u03BD\u03C4", -1, -1)
    ]

    a_31 = [
        Among(u"\u03B5\u03B4\u03C9\u03BD", -1, 1),
        Among(u"\u03B5\u03B4\u03B5\u03C3", -1, 1)
    ]

    a_32 = [
        Among(u"\u03BC\u03B9\u03BB", -1, 1),
        Among(u"\u03B4\u03B1\u03C0", -1, 1),
        Among(u"\u03B3\u03B7\u03C0", -1, 1),
        Among(u"\u03B9\u03C0", -1, 1),
        Among(u"\u03B5\u03BC\u03C0", -1, 1),
        Among(u"\u03BF\u03C0", -1, 1),
        Among(u"\u03BA\u03C1\u03B1\u03C3\u03C0", -1, 1),
        Among(u"\u03C5\u03C0", -1, 1)
    ]

    a_33 = [
        Among(u"\u03BF\u03C5\u03B4\u03C9\u03BD", -1, 1),
        Among(u"\u03BF\u03C5\u03B4\u03B5\u03C3", -1, 1)
    ]

    a_34 = [
        Among(u"\u03C4\u03C1\u03B1\u03B3", -1, 1),
        Among(u"\u03C6\u03B5", -1, 1),
        Among(u"\u03BA\u03B1\u03BB\u03B9\u03B1\u03BA", -1, 1),
        Among(u"\u03B1\u03C1\u03BA", -1, 1),
        Among(u"\u03C3\u03BA", -1, 1),
        Among(u"\u03C0\u03B5\u03C4\u03B1\u03BB", -1, 1),
        Among(u"\u03B2\u03B5\u03BB", -1, 1),
        Among(u"\u03BB\u03BF\u03C5\u03BB", -1, 1),
        Among(u"\u03C6\u03BB", -1, 1),
        Among(u"\u03C7\u03BD", -1, 1),
        Among(u"\u03C0\u03BB\u03B5\u03BE", -1, 1),
        Among(u"\u03C3\u03C0", -1, 1),
        Among(u"\u03C6\u03C1", -1, 1),
        Among(u"\u03C3", -1, 1),
        Among(u"\u03BB\u03B9\u03C7", -1, 1)
    ]

    a_35 = [
        Among(u"\u03B5\u03C9\u03BD", -1, 1),
        Among(u"\u03B5\u03C9\u03C3", -1, 1)
    ]

    a_36 = [
        Among(u"\u03B4", -1, 1),
        Among(u"\u03B9\u03B4", 0, 1),
        Among(u"\u03B8", -1, 1),
        Among(u"\u03B3\u03B1\u03BB", -1, 1),
        Among(u"\u03B5\u03BB", -1, 1),
        Among(u"\u03BD", -1, 1),
        Among(u"\u03C0", -1, 1),
        Among(u"\u03C0\u03B1\u03C1", -1, 1)
    ]

    a_37 = [
        Among(u"\u03B9\u03B1", -1, 1),
        Among(u"\u03B9\u03C9\u03BD", -1, 1),
        Among(u"\u03B9\u03BF\u03C5", -1, 1)
    ]

    a_38 = [
        Among(u"\u03B9\u03BA\u03B1", -1, 1),
        Among(u"\u03B9\u03BA\u03C9\u03BD", -1, 1),
        Among(u"\u03B9\u03BA\u03BF", -1, 1),
        Among(u"\u03B9\u03BA\u03BF\u03C5", -1, 1)
    ]

    a_39 = [
        Among(u"\u03B1\u03B4", -1, 1),
        Among(u"\u03C3\u03C5\u03BD\u03B1\u03B4", 0, 1),
        Among(u"\u03BA\u03B1\u03C4\u03B1\u03B4", 0, 1),
        Among(u"\u03B1\u03BD\u03C4\u03B9\u03B4", -1, 1),
        Among(u"\u03B5\u03BD\u03B4", -1, 1),
        Among(u"\u03C6\u03C5\u03BB\u03BF\u03B4", -1, 1),
        Among(u"\u03C5\u03C0\u03BF\u03B4", -1, 1),
        Among(u"\u03C0\u03C1\u03C9\u03C4\u03BF\u03B4", -1, 1),
        Among(u"\u03B5\u03BE\u03C9\u03B4", -1, 1),
        Among(u"\u03B7\u03B8", -1, 1),
        Among(u"\u03B1\u03BD\u03B7\u03B8", 9, 1),
        Among(u"\u03BE\u03B9\u03BA", -1, 1),
        Among(u"\u03B1\u03BB", -1, 1),
        Among(u"\u03B1\u03BC\u03BC\u03BF\u03C7\u03B1\u03BB", 12, 1),
        Among(u"\u03C3\u03C5\u03BD\u03BF\u03BC\u03B7\u03BB", -1, 1),
        Among(u"\u03BC\u03C0\u03BF\u03BB", -1, 1),
        Among(u"\u03BC\u03BF\u03C5\u03BB", -1, 1),
        Among(u"\u03C4\u03C3\u03B1\u03BC", -1, 1),
        Among(u"\u03B2\u03C1\u03C9\u03BC", -1, 1),
        Among(u"\u03B1\u03BC\u03B1\u03BD", -1, 1),
        Among(u"\u03BC\u03C0\u03B1\u03BD", -1, 1),
        Among(u"\u03BA\u03B1\u03BB\u03BB\u03B9\u03BD", -1, 1),
        Among(u"\u03C0\u03BF\u03C3\u03C4\u03B5\u03BB\u03BD", -1, 1),
        Among(u"\u03C6\u03B9\u03BB\u03BF\u03BD", -1, 1),
        Among(u"\u03BA\u03B1\u03BB\u03C0", -1, 1),
        Among(u"\u03B3\u03B5\u03C1", -1, 1),
        Among(u"\u03C7\u03B1\u03C3", -1, 1),
        Among(u"\u03BC\u03C0\u03BF\u03C3", -1, 1),
        Among(u"\u03C0\u03BB\u03B9\u03B1\u03C4\u03C3", -1, 1),
        Among(u"\u03C0\u03B5\u03C4\u03C3", -1, 1),
        Among(u"\u03C0\u03B9\u03C4\u03C3", -1, 1),
        Among(u"\u03C6\u03C5\u03C3", -1, 1),
        Among(u"\u03BC\u03C0\u03B1\u03B3\u03B9\u03B1\u03C4", -1, 1),
        Among(u"\u03BD\u03B9\u03C4", -1, 1),
        Among(u"\u03C0\u03B9\u03BA\u03B1\u03BD\u03C4", -1, 1),
        Among(u"\u03C3\u03B5\u03C1\u03C4", -1, 1)
    ]

    a_40 = [
        Among(u"\u03B1\u03B3\u03B1\u03BC\u03B5", -1, 1),
        Among(u"\u03B7\u03BA\u03B1\u03BC\u03B5", -1, 1),
        Among(u"\u03B7\u03B8\u03B7\u03BA\u03B1\u03BC\u03B5", 1, 1),
        Among(u"\u03B7\u03C3\u03B1\u03BC\u03B5", -1, 1),
        Among(u"\u03BF\u03C5\u03C3\u03B1\u03BC\u03B5", -1, 1)
    ]

    a_41 = [
        Among(u"\u03B2\u03BF\u03C5\u03B2", -1, 1),
        Among(u"\u03BE\u03B5\u03B8", -1, 1),
        Among(u"\u03C0\u03B5\u03B8", -1, 1),
        Among(u"\u03B1\u03C0\u03BF\u03B8", -1, 1),
        Among(u"\u03B1\u03C0\u03BF\u03BA", -1, 1),
        Among(u"\u03BF\u03C5\u03BB", -1, 1),
        Among(u"\u03B1\u03BD\u03B1\u03C0", -1, 1),
        Among(u"\u03C0\u03B9\u03BA\u03C1", -1, 1),
        Among(u"\u03C0\u03BF\u03C4", -1, 1),
        Among(u"\u03B1\u03C0\u03BF\u03C3\u03C4", -1, 1),
        Among(u"\u03C7", -1, 1),
        Among(u"\u03C3\u03B9\u03C7", 10, 1)
    ]

    a_42 = [
        Among(u"\u03C4\u03C1", -1, 1),
        Among(u"\u03C4\u03C3", -1, 1)
    ]

    a_43 = [
        Among(u"\u03B1\u03B3\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03B7\u03BA\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03B7\u03B8\u03B7\u03BA\u03B1\u03BD\u03B5", 1, 1),
        Among(u"\u03B7\u03C3\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03BF\u03C5\u03C3\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03BF\u03BD\u03C4\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03B9\u03BF\u03BD\u03C4\u03B1\u03BD\u03B5", 5, 1),
        Among(u"\u03BF\u03C5\u03BD\u03C4\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03B9\u03BF\u03C5\u03BD\u03C4\u03B1\u03BD\u03B5", 7, 1),
        Among(u"\u03BF\u03C4\u03B1\u03BD\u03B5", -1, 1),
        Among(u"\u03B9\u03BF\u03C4\u03B1\u03BD\u03B5", 9, 1)
    ]

    a_44 = [
        Among(u"\u03C4\u03B1\u03B2", -1, 1),
        Among(u"\u03BD\u03C4\u03B1\u03B2", 0, 1),
        Among(u"\u03C8\u03B7\u03BB\u03BF\u03C4\u03B1\u03B2", 0, 1),
        Among(u"\u03BB\u03B9\u03B2", -1, 1),
        Among(u"\u03BA\u03BB\u03B9\u03B2", 3, 1),
        Among(u"\u03BE\u03B7\u03C1\u03BF\u03BA\u03BB\u03B9\u03B2", 4, 1),
        Among(u"\u03B3", -1, 1),
        Among(u"\u03B1\u03B3", 6, 1),
        Among(u"\u03C4\u03C1\u03B1\u03B3", 7, 1),
        Among(u"\u03C4\u03C3\u03B1\u03B3", 7, 1),
        Among(u"\u03B1\u03B8\u03B9\u03B3\u03B3", 6, 1),
        Among(u"\u03C4\u03C3\u03B9\u03B3\u03B3", 6, 1),
        Among(u"\u03B1\u03C4\u03C3\u03B9\u03B3\u03B3", 11, 1),
        Among(u"\u03C3\u03C4\u03B5\u03B3", 6, 1),
        Among(u"\u03B1\u03C0\u03B7\u03B3", 6, 1),
        Among(u"\u03C3\u03B9\u03B3", 6, 1),
        Among(u"\u03B1\u03BD\u03BF\u03C1\u03B3", 6, 1),
        Among(u"\u03B5\u03BD\u03BF\u03C1\u03B3", 6, 1),
        Among(u"\u03BA\u03B1\u03BB\u03C0\u03BF\u03C5\u03B6", -1, 1),
        Among(u"\u03B8", -1, 1),
        Among(u"\u03BC\u03C9\u03B1\u03BC\u03B5\u03B8", 19, 1),
        Among(u"\u03C0\u03B9\u03B8", 19, 1),
        Among(u"\u03B1\u03C0\u03B9\u03B8", 21, 1),
        Among(u"\u03B4\u03B5\u03BA", -1, 1),
        Among(u"\u03C0\u03B5\u03BB\u03B5\u03BA", -1, 1),
        Among(u"\u03B9\u03BA", -1, 1),
        Among(u"\u03B1\u03BD\u03B9\u03BA", 25, 1),
        Among(u"\u03B2\u03BF\u03C5\u03BB\u03BA", -1, 1),
        Among(u"\u03B2\u03B1\u03C3\u03BA", -1, 1),
        Among(u"\u03B2\u03C1\u03B1\u03C7\u03C5\u03BA", -1, 1),
        Among(u"\u03B3\u03B1\u03BB", -1, 1),
        Among(u"\u03BA\u03B1\u03C4\u03B1\u03B3\u03B1\u03BB", 30, 1),
        Among(u"\u03BF\u03BB\u03BF\u03B3\u03B1\u03BB", 30, 1),
        Among(u"\u03B2\u03B1\u03B8\u03C5\u03B3\u03B1\u03BB", 30, 1),
        Among(u"\u03BC\u03B5\u03BB", -1, 1),
        Among(u"\u03BA\u03B1\u03C3\u03C4\u03B5\u03BB", -1, 1),
        Among(u"\u03C0\u03BF\u03C1\u03C4\u03BF\u03BB", -1, 1),
        Among(u"\u03C0\u03BB", -1, 1),
        Among(u"\u03B4\u03B9\u03C0\u03BB", 37, 1),
        Among(u"\u03BB\u03B1\u03BF\u03C0\u03BB", 37, 1),
        Among(u"\u03C8\u03C5\u03C7\u03BF\u03C0\u03BB", 37, 1),
        Among(u"\u03BF\u03C5\u03BB", -1, 1),
        Among(u"\u03BC", -1, 1),
        Among(u"\u03BF\u03BB\u03B9\u03B3\u03BF\u03B4\u03B1\u03BC", 42, 1),
        Among(u"\u03BC\u03BF\u03C5\u03C3\u03BF\u03C5\u03BB\u03BC", 42, 1),
        Among(u"\u03B4\u03C1\u03B1\u03B4\u03BF\u03C5\u03BC", 42, 1),
        Among(u"\u03B2\u03C1\u03B1\u03C7\u03BC", 42, 1),
        Among(u"\u03BD", -1, 1),
        Among(u"\u03B1\u03BC\u03B5\u03C1\u03B9\u03BA\u03B1\u03BD", 47, 1),
        Among(u"\u03C0", -1, 1),
        Among(u"\u03B1\u03B4\u03B1\u03C0", 49, 1),
        Among(u"\u03C7\u03B1\u03BC\u03B7\u03BB\u03BF\u03B4\u03B1\u03C0", 49, 1),
        Among(u"\u03C0\u03BF\u03BB\u03C5\u03B4\u03B1\u03C0", 49, 1),
        Among(u"\u03BA\u03BF\u03C0", 49, 1),
        Among(u"\u03C5\u03C0\u03BF\u03BA\u03BF\u03C0", 53, 1),
        Among(u"\u03C4\u03C3\u03BF\u03C0", 49, 1),
        Among(u"\u03C3\u03C0", 49, 1),
        Among(u"\u03B5\u03C1", -1, 1),
        Among(u"\u03B3\u03B5\u03C1", 57, 1),
        Among(u"\u03B2\u03B5\u03C4\u03B5\u03C1", 57, 1),
        Among(u"\u03BB\u03BF\u03C5\u03B8\u03B7\u03C1", -1, 1),
        Among(u"\u03BA\u03BF\u03C1\u03BC\u03BF\u03C1", -1, 1),
        Among(u"\u03C0\u03B5\u03C1\u03B9\u03C4\u03C1", -1, 1),
        Among(u"\u03BF\u03C5\u03C1", -1, 1),
        Among(u"\u03C3", -1, 1),
        Among(u"\u03B2\u03B1\u03C3", 64, 1),
        Among(u"\u03C0\u03BF\u03BB\u03B9\u03C3", 64, 1),
        Among(u"\u03C3\u03B1\u03C1\u03B1\u03BA\u03B1\u03C4\u03C3", 64, 1),
        Among(u"\u03B8\u03C5\u03C3", 64, 1),
        Among(u"\u03B4\u03B9\u03B1\u03C4", -1, 1),
        Among(u"\u03C0\u03BB\u03B1\u03C4", -1, 1),
        Among(u"\u03C4\u03C3\u03B1\u03C1\u03BB\u03B1\u03C4", -1, 1),
        Among(u"\u03C4\u03B5\u03C4", -1, 1),
        Among(u"\u03C0\u03BF\u03C5\u03C1\u03B9\u03C4", -1, 1),
        Among(u"\u03C3\u03BF\u03C5\u03BB\u03C4", -1, 1),
        Among(u"\u03BC\u03B1\u03B9\u03BD\u03C4", -1, 1),
        Among(u"\u03B6\u03C9\u03BD\u03C4", -1, 1),
        Among(u"\u03BA\u03B1\u03C3\u03C4", -1, 1),
        Among(u"\u03C6", -1, 1),
        Among(u"\u03B4\u03B9\u03B1\u03C6", 78, 1),
        Among(u"\u03C3\u03C4\u03B5\u03C6", 78, 1),
        Among(u"\u03C6\u03C9\u03C4\u03BF\u03C3\u03C4\u03B5\u03C6", 80, 1),
        Among(u"\u03C0\u03B5\u03C1\u03B7\u03C6", 78, 1),
        Among(u"\u03C5\u03C0\u03B5\u03C1\u03B7\u03C6", 82, 1),
        Among(u"\u03BA\u03BF\u03B9\u03BB\u03B1\u03C1\u03C6", 78, 1),
        Among(u"\u03C0\u03B5\u03BD\u03C4\u03B1\u03C1\u03C6", 78, 1),
        Among(u"\u03BF\u03C1\u03C6", 78, 1),
        Among(u"\u03C7", -1, 1),
        Among(u"\u03B1\u03BC\u03B7\u03C7", 87, 1),
        Among(u"\u03B2\u03B9\u03BF\u03BC\u03B7\u03C7", 87, 1),
        Among(u"\u03BC\u03B5\u03B3\u03BB\u03BF\u03B2\u03B9\u03BF\u03BC\u03B7\u03C7", 89, 1),
        Among(u"\u03BA\u03B1\u03C0\u03BD\u03BF\u03B2\u03B9\u03BF\u03BC\u03B7\u03C7", 89, 1),
        Among(u"\u03BC\u03B9\u03BA\u03C1\u03BF\u03B2\u03B9\u03BF\u03BC\u03B7\u03C7", 89, 1),
        Among(u"\u03C0\u03BF\u03BB\u03C5\u03BC\u03B7\u03C7", 87, 1),
        Among(u"\u03BB\u03B9\u03C7", 87, 1)
    ]

    a_45 = [
        Among(u"\u03B7\u03C3\u03B5\u03C4\u03B5", -1, 1)
    ]

    a_46 = [
        Among(u"\u03B5\u03BD\u03B4", -1, 1),
        Among(u"\u03C3\u03C5\u03BD\u03B4", -1, 1),
        Among(u"\u03BF\u03B4", -1, 1),
        Among(u"\u03B4\u03B9\u03B1\u03B8", -1, 1),
        Among(u"\u03BA\u03B1\u03B8", -1, 1),
        Among(u"\u03C1\u03B1\u03B8", -1, 1),
        Among(u"\u03C4\u03B1\u03B8", -1, 1),
        Among(u"\u03C4\u03B9\u03B8", -1, 1),
        Among(u"\u03B5\u03BA\u03B8", -1, 1),
        Among(u"\u03B5\u03BD\u03B8", -1, 1),
        Among(u"\u03C3\u03C5\u03BD\u03B8", -1, 1),
        Among(u"\u03C1\u03BF\u03B8", -1, 1),
        Among(u"\u03C5\u03C0\u03B5\u03C1\u03B8", -1, 1),
        Among(u"\u03C3\u03B8", -1, 1),
        Among(u"\u03B5\u03C5\u03B8", -1, 1),
        Among(u"\u03B1\u03C1\u03BA", -1, 1),
        Among(u"\u03C9\u03C6\u03B5\u03BB", -1, 1),
        Among(u"\u03B2\u03BF\u03BB", -1, 1),
        Among(u"\u03B1\u03B9\u03BD", -1, 1),
        Among(u"\u03C0\u03BF\u03BD", -1, 1),
        Among(u"\u03C1\u03BF\u03BD", -1, 1),
        Among(u"\u03C3\u03C5\u03BD", -1, 1),
        Among(u"\u03B2\u03B1\u03C1", -1, 1),
        Among(u"\u03B2\u03C1", -1, 1),
        Among(u"\u03B1\u03B9\u03C1", -1, 1),
        Among(u"\u03C6\u03BF\u03C1", -1, 1),
        Among(u"\u03B5\u03C5\u03C1", -1, 1),
        Among(u"\u03C0\u03C5\u03C1", -1, 1),
        Among(u"\u03C7\u03C9\u03C1", -1, 1),
        Among(u"\u03BD\u03B5\u03C4", -1, 1),
        Among(u"\u03C3\u03C7", -1, 1)
    ]

    a_47 = [
        Among(u"\u03C0\u03B1\u03B3", -1, 1),
        Among(u"\u03B4", -1, 1),
        Among(u"\u03B1\u03B4", 1, 1),
        Among(u"\u03B8", -1, 1),
        Among(u"\u03B1\u03B8", 3, 1),
        Among(u"\u03C4\u03BF\u03BA", -1, 1),
        Among(u"\u03C3\u03BA", -1, 1),
        Among(u"\u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB", -1, 1),
        Among(u"\u03C3\u03BA\u03B5\u03BB", -1, 1),
        Among(u"\u03B1\u03C0\u03BB", -1, 1),
        Among(u"\u03B5\u03BC", -1, 1),
        Among(u"\u03B1\u03BD", -1, 1),
        Among(u"\u03B2\u03B5\u03BD", -1, 1),
        Among(u"\u03B2\u03B1\u03C1\u03BF\u03BD", -1, 1),
        Among(u"\u03BA\u03BF\u03C0", -1, 1),
        Among(u"\u03C3\u03B5\u03C1\u03C0", -1, 1),
        Among(u"\u03B1\u03B2\u03B1\u03C1", -1, 1),
        Among(u"\u03B5\u03BD\u03B1\u03C1", -1, 1),
        Among(u"\u03B1\u03B2\u03C1", -1, 1),
        Among(u"\u03BC\u03C0\u03BF\u03C1", -1, 1),
        Among(u"\u03B8\u03B1\u03C1\u03C1", -1, 1),
        Among(u"\u03BD\u03C4\u03C1", -1, 1),
        Among(u"\u03C5", -1, 1),
        Among(u"\u03BD\u03B9\u03C6", -1, 1),
        Among(u"\u03C3\u03C5\u03C1\u03C6", -1, 1)
    ]

    a_48 = [
        Among(u"\u03BF\u03BD\u03C4\u03B1\u03C3", -1, 1),
        Among(u"\u03C9\u03BD\u03C4\u03B1\u03C3", -1, 1)
    ]

    a_49 = [
        Among(u"\u03BF\u03BC\u03B1\u03C3\u03C4\u03B5", -1, 1),
        Among(u"\u03B9\u03BF\u03BC\u03B1\u03C3\u03C4\u03B5", 0, 1)
    ]

    a_50 = [
        Among(u"\u03C0", -1, 1),
        Among(u"\u03B1\u03C0", 0, 1),
        Among(u"\u03B1\u03BA\u03B1\u03C4\u03B1\u03C0", 1, 1),
        Among(u"\u03C3\u03C5\u03BC\u03C0", 0, 1),
        Among(u"\u03B1\u03C3\u03C5\u03BC\u03C0", 3, 1),
        Among(u"\u03B1\u03BC\u03B5\u03C4\u03B1\u03BC\u03C6", -1, 1)
    ]

    a_51 = [
        Among(u"\u03B6", -1, 1),
        Among(u"\u03B1\u03BB", -1, 1),
        Among(u"\u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03BB", 1, 1),
        Among(u"\u03B5\u03BA\u03C4\u03B5\u03BB", -1, 1),
        Among(u"\u03BC", -1, 1),
        Among(u"\u03BE", -1, 1),
        Among(u"\u03C0\u03C1\u03BF", -1, 1),
        Among(u"\u03B1\u03C1", -1, 1),
        Among(u"\u03BD\u03B9\u03C3", -1, 1)
    ]

    a_52 = [
        Among(u"\u03B7\u03B8\u03B7\u03BA\u03B1", -1, 1),
        Among(u"\u03B7\u03B8\u03B7\u03BA\u03B5", -1, 1),
        Among(u"\u03B7\u03B8\u03B7\u03BA\u03B5\u03C3", -1, 1)
    ]

    a_53 = [
        Among(u"\u03C0\u03B9\u03B8", -1, 1),
        Among(u"\u03BF\u03B8", -1, 1),
        Among(u"\u03BD\u03B1\u03C1\u03B8", -1, 1),
        Among(u"\u03C3\u03BA\u03BF\u03C5\u03BB", -1, 1),
        Among(u"\u03C3\u03BA\u03C9\u03BB", -1, 1),
        Among(u"\u03C3\u03C6", -1, 1)
    ]

    a_54 = [
        Among(u"\u03B8", -1, 1),
        Among(u"\u03B4\u03B9\u03B1\u03B8", 0, 1),
        Among(u"\u03C0\u03B1\u03C1\u03B1\u03BA\u03B1\u03C4\u03B1\u03B8", 0, 1),
        Among(u"\u03C3\u03C5\u03BD\u03B8", 0, 1),
        Among(u"\u03C0\u03C1\u03BF\u03C3\u03B8", 0, 1)
    ]

    a_55 = [
        Among(u"\u03B7\u03BA\u03B1", -1, 1),
        Among(u"\u03B7\u03BA\u03B5", -1, 1),
        Among(u"\u03B7\u03BA\u03B5\u03C3", -1, 1)
    ]

    a_56 = [
        Among(u"\u03C6\u03B1\u03B3", -1, 1),
        Among(u"\u03BB\u03B7\u03B3", -1, 1),
        Among(u"\u03C6\u03C1\u03C5\u03B4", -1, 1),
        Among(u"\u03BC\u03B1\u03BD\u03C4\u03B9\u03BB", -1, 1),
        Among(u"\u03BC\u03B1\u03BB\u03BB", -1, 1),
        Among(u"\u03BF\u03BC", -1, 1),
        Among(u"\u03B2\u03BB\u03B5\u03C0", -1, 1),
        Among(u"\u03C0\u03BF\u03B4\u03B1\u03C1", -1, 1),
        Among(u"\u03BA\u03C5\u03BC\u03B1\u03C4", -1, 1),
        Among(u"\u03C0\u03C1\u03C9\u03C4", -1, 1),
        Among(u"\u03BB\u03B1\u03C7", -1, 1),
        Among(u"\u03C0\u03B1\u03BD\u03C4\u03B1\u03C7", -1, 1)
    ]

    a_57 = [
        Among(u"\u03C4\u03C3\u03B1", -1, 1),
        Among(u"\u03C7\u03B1\u03B4", -1, 1),
        Among(u"\u03BC\u03B5\u03B4", -1, 1),
        Among(u"\u03BB\u03B1\u03BC\u03C0\u03B9\u03B4", -1, 1),
        Among(u"\u03B4\u03B5", -1, 1),
        Among(u"\u03C0\u03BB\u03B5", -1, 1),
        Among(u"\u03BC\u03B5\u03C3\u03B1\u03B6", -1, 1),
        Among(u"\u03B4\u03B5\u03C3\u03C0\u03BF\u03B6", -1, 1),
        Among(u"\u03B1\u03B9\u03B8", -1, 1),
        Among(u"\u03C6\u03B1\u03C1\u03BC\u03B1\u03BA", -1, 1),
        Among(u"\u03B1\u03B3\u03BA", -1, 1),
        Among(u"\u03B1\u03BD\u03B7\u03BA", -1, 1),
        Among(u"\u03BB", -1, 1),
        Among(u"\u03BC", -1, 1),
        Among(u"\u03B1\u03BC", 13, 1),
        Among(u"\u03B2\u03C1\u03BF\u03BC", 13, 1),
        Among(u"\u03C5\u03C0\u03BF\u03C4\u03B5\u03B9\u03BD", -1, 1),
        Among(u"\u03B5\u03BA\u03BB\u03B9\u03C0", -1, 1),
        Among(u"\u03C1", -1, 1),
        Among(u"\u03B5\u03BD\u03B4\u03B9\u03B1\u03C6\u03B5\u03C1", 18, 1),
        Among(u"\u03B1\u03BD\u03B1\u03C1\u03C1", 18, 1),
        Among(u"\u03C0\u03B1\u03C4", -1, 1),
        Among(u"\u03BA\u03B1\u03B8\u03B1\u03C1\u03B5\u03C5", -1, 1),
        Among(u"\u03B4\u03B5\u03C5\u03C4\u03B5\u03C1\u03B5\u03C5", -1, 1),
        Among(u"\u03BB\u03B5\u03C7", -1, 1)
    ]

    a_58 = [
        Among(u"\u03BF\u03C5\u03C3\u03B1", -1, 1),
        Among(u"\u03BF\u03C5\u03C3\u03B5", -1, 1),
        Among(u"\u03BF\u03C5\u03C3\u03B5\u03C3", -1, 1)
    ]

    a_59 = [
        Among(u"\u03C8\u03BF\u03C6", -1, -1),
        Among(u"\u03BD\u03B1\u03C5\u03BB\u03BF\u03C7", -1, -1)
    ]

    a_60 = [
        Among(u"\u03C0\u03B5\u03BB", -1, 1),
        Among(u"\u03BB\u03BB", -1, 1),
        Among(u"\u03C3\u03BC\u03B7\u03BD", -1, 1),
        Among(u"\u03C1\u03C0", -1, 1),
        Among(u"\u03C0\u03C1", -1, 1),
        Among(u"\u03C6\u03C1", -1, 1),
        Among(u"\u03C7\u03BF\u03C1\u03C4", -1, 1),
        Among(u"\u03BF\u03C6", -1, 1),
        Among(u"\u03C3\u03C6", -1, 1),
        Among(u"\u03BB\u03BF\u03C7", -1, 1)
    ]

    a_61 = [
        Among(u"\u03B1\u03BC\u03B1\u03BB\u03BB\u03B9", -1, 1),
        Among(u"\u03BB", -1, 1),
        Among(u"\u03B1\u03BC\u03B1\u03BB", 1, 1),
        Among(u"\u03BC", -1, 1),
        Among(u"\u03BF\u03C5\u03BB\u03B1\u03BC", 3, 1),
        Among(u"\u03B5\u03BD", -1, 1),
        Among(u"\u03B4\u03B5\u03C1\u03B2\u03B5\u03BD", 5, 1),
        Among(u"\u03C0", -1, 1),
        Among(u"\u03B1\u03B5\u03B9\u03C0", 7, 1),
        Among(u"\u03B1\u03C1\u03C4\u03B9\u03C0", 7, 1),
        Among(u"\u03C3\u03C5\u03BC\u03C0", 7, 1),
        Among(u"\u03BD\u03B5\u03BF\u03C0", 7, 1),
        Among(u"\u03BA\u03C1\u03BF\u03BA\u03B1\u03BB\u03BF\u03C0", 7, 1),
        Among(u"\u03BF\u03BB\u03BF\u03C0", 7, 1),
        Among(u"\u03C0\u03C1\u03BF\u03C3\u03C9\u03C0\u03BF\u03C0", 7, 1),
        Among(u"\u03C3\u03B9\u03B4\u03B7\u03C1\u03BF\u03C0", 7, 1),
        Among(u"\u03B4\u03C1\u03BF\u03C3\u03BF\u03C0", 7, 1),
        Among(u"\u03B1\u03C3\u03C0", 7, 1),
        Among(u"\u03B1\u03BD\u03C5\u03C0", 7, 1),
        Among(u"\u03C1", -1, 1),
        Among(u"\u03B1\u03C3\u03C0\u03B1\u03C1", 19, 1),
        Among(u"\u03C7\u03B1\u03C1", 19, 1),
        Among(u"\u03B1\u03C7\u03B1\u03C1", 21, 1),
        Among(u"\u03B1\u03C0\u03B5\u03C1", 19, 1),
        Among(u"\u03C4\u03C1", 19, 1),
        Among(u"\u03BF\u03C5\u03C1", 19, 1),
        Among(u"\u03C4", -1, 1),
        Among(u"\u03B4\u03B9\u03B1\u03C4", 26, 1),
        Among(u"\u03B5\u03C0\u03B9\u03C4", 26, 1),
        Among(u"\u03C3\u03C5\u03BD\u03C4", 26, 1),
        Among(u"\u03BF\u03BC\u03BF\u03C4", 26, 1),
        Among(u"\u03BD\u03BF\u03BC\u03BF\u03C4", 30, 1),
        Among(u"\u03B1\u03C0\u03BF\u03C4", 26, 1),
        Among(u"\u03C5\u03C0\u03BF\u03C4", 26, 1),
        Among(u"\u03B1\u03B2\u03B1\u03C3\u03C4", 26, 1),
        Among(u"\u03B1\u03B9\u03BC\u03BF\u03C3\u03C4", 26, 1),
        Among(u"\u03C0\u03C1\u03BF\u03C3\u03C4", 26, 1),
        Among(u"\u03B1\u03BD\u03C5\u03C3\u03C4", 26, 1),
        Among(u"\u03BD\u03B1\u03C5", -1, 1),
        Among(u"\u03B1\u03C6", -1, 1),
        Among(u"\u03BE\u03B5\u03C6", -1, 1),
        Among(u"\u03B1\u03B4\u03B7\u03C6", -1, 1),
        Among(u"\u03C0\u03B1\u03BC\u03C6", -1, 1),
        Among(u"\u03C0\u03BF\u03BB\u03C5\u03C6", -1, 1)
    ]

    a_62 = [
        Among(u"\u03B1\u03B3\u03B1", -1, 1),
        Among(u"\u03B1\u03B3\u03B5", -1, 1),
        Among(u"\u03B1\u03B3\u03B5\u03C3", -1, 1)
    ]

    a_63 = [
        Among(u"\u03B7\u03C3\u03B1", -1, 1),
        Among(u"\u03B7\u03C3\u03B5", -1, 1),
        Among(u"\u03B7\u03C3\u03BF\u03C5", -1, 1)
    ]

    a_64 = [
        Among(u"\u03BD", -1, 1),
        Among(u"\u03B4\u03C9\u03B4\u03B5\u03BA\u03B1\u03BD", 0, 1),
        Among(u"\u03B5\u03C0\u03C4\u03B1\u03BD", 0, 1),
        Among(u"\u03BC\u03B5\u03B3\u03B1\u03BB\u03BF\u03BD", 0, 1),
        Among(u"\u03B5\u03C1\u03B7\u03BC\u03BF\u03BD", 0, 1),
        Among(u"\u03C7\u03B5\u03C1\u03C3\u03BF\u03BD", 0, 1)
    ]

    a_65 = [
        Among(u"\u03B7\u03C3\u03C4\u03B5", -1, 1)
    ]

    a_66 = [
        Among(u"\u03C3\u03B2", -1, 1),
        Among(u"\u03B1\u03C3\u03B2", 0, 1),
        Among(u"\u03B1\u03C0\u03BB", -1, 1),
        Among(u"\u03B1\u03B5\u03B9\u03BC\u03BD", -1, 1),
        Among(u"\u03C7\u03C1", -1, 1),
        Among(u"\u03B1\u03C7\u03C1", 4, 1),
        Among(u"\u03BA\u03BF\u03B9\u03BD\u03BF\u03C7\u03C1", 4, 1),
        Among(u"\u03B4\u03C5\u03C3\u03C7\u03C1", 4, 1),
        Among(u"\u03B5\u03C5\u03C7\u03C1", 4, 1),
        Among(u"\u03C0\u03B1\u03BB\u03B9\u03BC\u03C8", -1, 1)
    ]

    a_67 = [
        Among(u"\u03BF\u03C5\u03BD\u03B5", -1, 1),
        Among(u"\u03B7\u03B8\u03BF\u03C5\u03BD\u03B5", 0, 1),
        Among(u"\u03B7\u03C3\u03BF\u03C5\u03BD\u03B5", 0, 1)
    ]

    a_68 = [
        Among(u"\u03C3\u03C0\u03B9", -1, 1),
        Among(u"\u03BD", -1, 1),
        Among(u"\u03B5\u03BE\u03C9\u03BD", 1, 1),
        Among(u"\u03C1", -1, 1),
        Among(u"\u03C3\u03C4\u03C1\u03B1\u03B2\u03BF\u03BC\u03BF\u03C5\u03C4\u03C3", -1, 1),
        Among(u"\u03BA\u03B1\u03BA\u03BF\u03BC\u03BF\u03C5\u03C4\u03C3", -1, 1)
    ]

    a_69 = [
        Among(u"\u03BF\u03C5\u03BC\u03B5", -1, 1),
        Among(u"\u03B7\u03B8\u03BF\u03C5\u03BC\u03B5", 0, 1),
        Among(u"\u03B7\u03C3\u03BF\u03C5\u03BC\u03B5", 0, 1)
    ]

    a_70 = [
        Among(u"\u03B1\u03B6", -1, 1),
        Among(u"\u03C9\u03C1\u03B9\u03BF\u03C0\u03BB", -1, 1),
        Among(u"\u03B1\u03C3\u03BF\u03C5\u03C3", -1, 1),
        Among(u"\u03C0\u03B1\u03C1\u03B1\u03C3\u03BF\u03C5\u03C3", 2, 1),
        Among(u"\u03B1\u03BB\u03BB\u03BF\u03C3\u03BF\u03C5\u03C3", -1, 1),
        Among(u"\u03C6", -1, 1),
        Among(u"\u03C7", -1, 1)
    ]

    a_71 = [
        Among(u"\u03BC\u03B1\u03C4\u03B1", -1, 1),
        Among(u"\u03BC\u03B1\u03C4\u03C9\u03BD", -1, 1),
        Among(u"\u03BC\u03B1\u03C4\u03BF\u03C3", -1, 1)
    ]

    a_72 = [
        Among(u"\u03B1", -1, 1),
        Among(u"\u03B9\u03BF\u03C5\u03BC\u03B1", 0, 1),
        Among(u"\u03BF\u03BC\u03BF\u03C5\u03BD\u03B1", 0, 1),
        Among(u"\u03B9\u03BF\u03BC\u03BF\u03C5\u03BD\u03B1", 2, 1),
        Among(u"\u03BF\u03C3\u03BF\u03C5\u03BD\u03B1", 0, 1),
        Among(u"\u03B9\u03BF\u03C3\u03BF\u03C5\u03BD\u03B1", 4, 1),
        Among(u"\u03B5", -1, 1),
        Among(u"\u03B1\u03B3\u03B1\u03C4\u03B5", 6, 1),
        Among(u"\u03B7\u03BA\u03B1\u03C4\u03B5", 6, 1),
        Among(u"\u03B7\u03B8\u03B7\u03BA\u03B1\u03C4\u03B5", 8, 1),
        Among(u"\u03B7\u03C3\u03B1\u03C4\u03B5", 6, 1),
        Among(u"\u03BF\u03C5\u03C3\u03B1\u03C4\u03B5", 6, 1),
        Among(u"\u03B5\u03B9\u03C4\u03B5", 6, 1),
        Among(u"\u03B7\u03B8\u03B5\u03B9\u03C4\u03B5", 12, 1),
        Among(u"\u03B9\u03B5\u03BC\u03B1\u03C3\u03C4\u03B5", 6, 1),
        Among(u"\u03BF\u03C5\u03BC\u03B1\u03C3\u03C4\u03B5", 6, 1),
        Among(u"\u03B9\u03BF\u03C5\u03BC\u03B1\u03C3\u03C4\u03B5", 15, 1),
        Among(u"\u03B9\u03B5\u03C3\u03B1\u03C3\u03C4\u03B5", 6, 1),
        Among(u"\u03BF\u03C3\u03B1\u03C3\u03C4\u03B5", 6, 1),
        Among(u"\u03B9\u03BF\u03C3\u03B1\u03C3\u03C4\u03B5", 18, 1),
        Among(u"\u03B7", -1, 1),
        Among(u"\u03B9", -1, 1),
        Among(u"\u03B1\u03BC\u03B1\u03B9", 21, 1),
        Among(u"\u03B9\u03B5\u03BC\u03B1\u03B9", 21, 1),
        Among(u"\u03BF\u03BC\u03B1\u03B9", 21, 1),
        Among(u"\u03BF\u03C5\u03BC\u03B1\u03B9", 21, 1),
        Among(u"\u03B1\u03C3\u03B1\u03B9", 21, 1),
        Among(u"\u03B5\u03C3\u03B1\u03B9", 21, 1),
        Among(u"\u03B9\u03B5\u03C3\u03B1\u03B9", 27, 1),
        Among(u"\u03B1\u03C4\u03B1\u03B9", 21, 1),
        Among(u"\u03B5\u03C4\u03B1\u03B9", 21, 1),
        Among(u"\u03B9\u03B5\u03C4\u03B1\u03B9", 30, 1),
        Among(u"\u03BF\u03BD\u03C4\u03B1\u03B9", 21, 1),
        Among(u"\u03BF\u03C5\u03BD\u03C4\u03B1\u03B9", 21, 1),
        Among(u"\u03B9\u03BF\u03C5\u03BD\u03C4\u03B1\u03B9", 33, 1),
        Among(u"\u03B5\u03B9", 21, 1),
        Among(u"\u03B1\u03B5\u03B9", 35, 1),
        Among(u"\u03B7\u03B8\u03B5\u03B9", 35, 1),
        Among(u"\u03B7\u03C3\u03B5\u03B9", 35, 1),
        Among(u"\u03BF\u03B9", 21, 1),
        Among(u"\u03B1\u03BD", -1, 1),
        Among(u"\u03B1\u03B3\u03B1\u03BD", 40, 1),
        Among(u"\u03B7\u03BA\u03B1\u03BD", 40, 1),
        Among(u"\u03B7\u03B8\u03B7\u03BA\u03B1\u03BD", 42, 1),
        Among(u"\u03B7\u03C3\u03B1\u03BD", 40, 1),
        Among(u"\u03BF\u03C5\u03C3\u03B1\u03BD", 40, 1),
        Among(u"\u03BF\u03BD\u03C4\u03BF\u03C5\u03C3\u03B1\u03BD", 45, 1),
        Among(u"\u03B9\u03BF\u03BD\u03C4\u03BF\u03C5\u03C3\u03B1\u03BD", 46, 1),
        Among(u"\u03BF\u03BD\u03C4\u03B1\u03BD", 40, 1),
        Among(u"\u03B9\u03BF\u03BD\u03C4\u03B1\u03BD", 48, 1),
        Among(u"\u03BF\u03C5\u03BD\u03C4\u03B1\u03BD", 40, 1),
        Among(u"\u03B9\u03BF\u03C5\u03BD\u03C4\u03B1\u03BD", 50, 1),
        Among(u"\u03BF\u03C4\u03B1\u03BD", 40, 1),
        Among(u"\u03B9\u03BF\u03C4\u03B1\u03BD", 52, 1),
        Among(u"\u03BF\u03BC\u03B1\u03C3\u03C4\u03B1\u03BD", 40, 1),
        Among(u"\u03B9\u03BF\u03BC\u03B1\u03C3\u03C4\u03B1\u03BD", 54, 1),
        Among(u"\u03BF\u03C3\u03B1\u03C3\u03C4\u03B1\u03BD", 40, 1),
        Among(u"\u03B9\u03BF\u03C3\u03B1\u03C3\u03C4\u03B1\u03BD", 56, 1),
        Among(u"\u03BF\u03C5\u03BD", -1, 1),
        Among(u"\u03B7\u03B8\u03BF\u03C5\u03BD", 58, 1),
        Among(u"\u03BF\u03BC\u03BF\u03C5\u03BD", 58, 1),
        Among(u"\u03B9\u03BF\u03BC\u03BF\u03C5\u03BD", 60, 1),
        Among(u"\u03B7\u03C3\u03BF\u03C5\u03BD", 58, 1),
        Among(u"\u03BF\u03C3\u03BF\u03C5\u03BD", 58, 1),
        Among(u"\u03B9\u03BF\u03C3\u03BF\u03C5\u03BD", 63, 1),
        Among(u"\u03C9\u03BD", -1, 1),
        Among(u"\u03B7\u03B4\u03C9\u03BD", 65, 1),
        Among(u"\u03BF", -1, 1),
        Among(u"\u03B1\u03C3", -1, 1),
        Among(u"\u03B5\u03C3", -1, 1),
        Among(u"\u03B7\u03B4\u03B5\u03C3", 69, 1),
        Among(u"\u03B7\u03C3\u03B5\u03C3", 69, 1),
        Among(u"\u03B7\u03C3", -1, 1),
        Among(u"\u03B5\u03B9\u03C3", -1, 1),
        Among(u"\u03B7\u03B8\u03B5\u03B9\u03C3", 73, 1),
        Among(u"\u03BF\u03C3", -1, 1),
        Among(u"\u03C5\u03C3", -1, 1),
        Among(u"\u03BF\u03C5\u03C3", 76, 1),
        Among(u"\u03C5", -1, 1),
        Among(u"\u03BF\u03C5", 78, 1),
        Among(u"\u03C9", -1, 1),
        Among(u"\u03B1\u03C9", 80, 1),
        Among(u"\u03B7\u03B8\u03C9", 80, 1),
        Among(u"\u03B7\u03C3\u03C9", 80, 1)
    ]

    a_73 = [
        Among(u"\u03BF\u03C4\u03B5\u03C1", -1, 1),
        Among(u"\u03B5\u03C3\u03C4\u03B5\u03C1", -1, 1),
        Among(u"\u03C5\u03C4\u03B5\u03C1", -1, 1),
        Among(u"\u03C9\u03C4\u03B5\u03C1", -1, 1),
        Among(u"\u03BF\u03C4\u03B1\u03C4", -1, 1),
        Among(u"\u03B5\u03C3\u03C4\u03B1\u03C4", -1, 1),
        Among(u"\u03C5\u03C4\u03B1\u03C4", -1, 1),
        Among(u"\u03C9\u03C4\u03B1\u03C4", -1, 1)
    ]

    g_v = [81, 65, 16, 1]

    g_v2 = [81, 65, 0, 1]

    S_s = ""
    B_test1 = False


    def __r_has_min_length(self):
        # (, line 110
        if not len(self.current) >= 3:
            return False
        return True

    def __r_tolower(self):
        # (, line 114
        # repeat, line 115
        try:
            while True:
                try:
                    v_1 = self.limit - self.cursor
                    try:
                        # (, line 115
                        # [, line 116
                        self.ket = self.cursor
                        # substring, line 116
                        among_var = self.find_among_b(GreekStemmer.a_0)
                        if among_var == 0:
                            raise lab2()
                        # ], line 116
                        self.bra = self.cursor
                        if among_var == 1:
                            # (, line 117
                            # <-, line 117
                            if not self.slice_from(u"\u03B1"):
                                return False
                        elif among_var == 2:
                            # (, line 118
                            # <-, line 118
                            if not self.slice_from(u"\u03B2"):
                                return False
                        elif among_var == 3:
                            # (, line 119
                            # <-, line 119
                            if not self.slice_from(u"\u03B3"):
                                return False
                        elif among_var == 4:
                            # (, line 120
                            # <-, line 120
                            if not self.slice_from(u"\u03B4"):
                                return False
                        elif among_var == 5:
                            # (, line 121
                            # <-, line 121
                            if not self.slice_from(u"\u03B5"):
                                return False
                        elif among_var == 6:
                            # (, line 122
                            # <-, line 122
                            if not self.slice_from(u"\u03B6"):
                                return False
                        elif among_var == 7:
                            # (, line 123
                            # <-, line 123
                            if not self.slice_from(u"\u03B7"):
                                return False
                        elif among_var == 8:
                            # (, line 124
                            # <-, line 124
                            if not self.slice_from(u"\u03B8"):
                                return False
                        elif among_var == 9:
                            # (, line 125
                            # <-, line 125
                            if not self.slice_from(u"\u03B9"):
                                return False
                        elif among_var == 10:
                            # (, line 126
                            # <-, line 126
                            if not self.slice_from(u"\u03BA"):
                                return False
                        elif among_var == 11:
                            # (, line 127
                            # <-, line 127
                            if not self.slice_from(u"\u03BB"):
                                return False
                        elif among_var == 12:
                            # (, line 128
                            # <-, line 128
                            if not self.slice_from(u"\u03BC"):
                                return False
                        elif among_var == 13:
                            # (, line 129
                            # <-, line 129
                            if not self.slice_from(u"\u03BD"):
                                return False
                        elif among_var == 14:
                            # (, line 130
                            # <-, line 130
                            if not self.slice_from(u"\u03BE"):
                                return False
                        elif among_var == 15:
                            # (, line 131
                            # <-, line 131
                            if not self.slice_from(u"\u03BF"):
                                return False
                        elif among_var == 16:
                            # (, line 132
                            # <-, line 132
                            if not self.slice_from(u"\u03C0"):
                                return False
                        elif among_var == 17:
                            # (, line 133
                            # <-, line 133
                            if not self.slice_from(u"\u03C1"):
                                return False
                        elif among_var == 18:
                            # (, line 134
                            # <-, line 134
                            if not self.slice_from(u"\u03C3"):
                                return False
                        elif among_var == 19:
                            # (, line 135
                            # <-, line 135
                            if not self.slice_from(u"\u03C4"):
                                return False
                        elif among_var == 20:
                            # (, line 136
                            # <-, line 136
                            if not self.slice_from(u"\u03C5"):
                                return False
                        elif among_var == 21:
                            # (, line 137
                            # <-, line 137
                            if not self.slice_from(u"\u03C6"):
                                return False
                        elif among_var == 22:
                            # (, line 138
                            # <-, line 138
                            if not self.slice_from(u"\u03C7"):
                                return False
                        elif among_var == 23:
                            # (, line 139
                            # <-, line 139
                            if not self.slice_from(u"\u03C8"):
                                return False
                        elif among_var == 24:
                            # (, line 140
                            # <-, line 140
                            if not self.slice_from(u"\u03C9"):
                                return False
                        elif among_var == 25:
                            # (, line 162
                            # next, line 162
                            if self.cursor <= self.limit_backward:
                                raise lab2()
                            self.cursor -= 1
                        raise lab1()
                    except lab2: pass
                    self.cursor = self.limit - v_1
                    raise lab0()
                except lab1: pass
        except lab0: pass
        return True

    def __r_step1(self):
        # (, line 167
        # [, line 168
        self.ket = self.cursor
        # substring, line 168
        among_var = self.find_among_b(GreekStemmer.a_1)
        if among_var == 0:
            return False
        # ], line 168
        self.bra = self.cursor
        if among_var == 1:
            # (, line 169
            # <-, line 169
            if not self.slice_from(u"\u03C6\u03B1"):
                return False
        elif among_var == 2:
            # (, line 170
            # <-, line 170
            if not self.slice_from(u"\u03C3\u03BA\u03B1"):
                return False
        elif among_var == 3:
            # (, line 171
            # <-, line 171
            if not self.slice_from(u"\u03BF\u03BB\u03BF"):
                return False
        elif among_var == 4:
            # (, line 172
            # <-, line 172
            if not self.slice_from(u"\u03C3\u03BF"):
                return False
        elif among_var == 5:
            # (, line 173
            # <-, line 173
            if not self.slice_from(u"\u03C4\u03B1\u03C4\u03BF"):
                return False
        elif among_var == 6:
            # (, line 174
            # <-, line 174
            if not self.slice_from(u"\u03BA\u03C1\u03B5"):
                return False
        elif among_var == 7:
            # (, line 175
            # <-, line 175
            if not self.slice_from(u"\u03C0\u03B5\u03C1"):
                return False
        elif among_var == 8:
            # (, line 176
            # <-, line 176
            if not self.slice_from(u"\u03C4\u03B5\u03C1"):
                return False
        elif among_var == 9:
            # (, line 177
            # <-, line 177
            if not self.slice_from(u"\u03C6\u03C9"):
                return False
        elif among_var == 10:
            # (, line 178
            # <-, line 178
            if not self.slice_from(u"\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4"):
                return False
        elif among_var == 11:
            # (, line 179
            # <-, line 179
            if not self.slice_from(u"\u03B3\u03B5\u03B3\u03BF\u03BD"):
                return False
        # unset test1, line 181
        self.B_test1 = False
        return True

    def __r_steps1(self):
        # (, line 184
        # [, line 185
        self.ket = self.cursor
        # substring, line 185
        if self.find_among_b(GreekStemmer.a_4) == 0:
            return False
        # ], line 185
        self.bra = self.cursor
        # (, line 187
        # delete, line 188
        if not self.slice_del():
            return False

        # unset test1, line 189
        self.B_test1 = False
        # or, line 193
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 190
                # [, line 190
                self.ket = self.cursor
                # substring, line 190
                if self.find_among_b(GreekStemmer.a_2) == 0:
                    raise lab1()
                # ], line 190
                self.bra = self.cursor
                # atlimit, line 190
                if self.cursor > self.limit_backward:
                    raise lab1()
                # (, line 192
                # -> s, line 192
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 192
                if not self.slice_from(u"\u03B9"):
                    return False
                # <+ s, line 192
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # (, line 194
            # [, line 194
            self.ket = self.cursor
            # substring, line 194
            if self.find_among_b(GreekStemmer.a_3) == 0:
                return False
            # ], line 194
            self.bra = self.cursor
            # atlimit, line 194
            if self.cursor > self.limit_backward:
                return False
            # (, line 198
            # -> s, line 198
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 198
            if not self.slice_from(u"\u03B9\u03B6"):
                return False
            # <+ s, line 198
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab0: pass
        return True

    def __r_steps2(self):
        # (, line 204
        # [, line 205
        self.ket = self.cursor
        # substring, line 205
        if self.find_among_b(GreekStemmer.a_6) == 0:
            return False
        # ], line 205
        self.bra = self.cursor
        # (, line 206
        # delete, line 207
        if not self.slice_del():
            return False

        # unset test1, line 208
        self.B_test1 = False
        # [, line 209
        self.ket = self.cursor
        # substring, line 209
        if self.find_among_b(GreekStemmer.a_5) == 0:
            return False
        # ], line 209
        self.bra = self.cursor
        # atlimit, line 209
        if self.cursor > self.limit_backward:
            return False
        # (, line 210
        # -> s, line 210
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 210
        if not self.slice_from(u"\u03C9\u03BD"):
            return False
        # <+ s, line 210
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_steps3(self):
        # (, line 216
        # [, line 217
        self.ket = self.cursor
        # substring, line 217
        if self.find_among_b(GreekStemmer.a_9) == 0:
            return False
        # ], line 217
        self.bra = self.cursor
        # (, line 218
        # delete, line 219
        if not self.slice_del():
            return False

        # unset test1, line 220
        self.B_test1 = False
        # or, line 221
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 221
                # literal, line 221
                if not self.eq_s_b(u"\u03B9\u03C3\u03B1"):
                    raise lab1()
                # atlimit, line 221
                if self.cursor > self.limit_backward:
                    raise lab1()
                # <-, line 221
                if not self.slice_from(u"\u03B9\u03C3"):
                    return False
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            try:
                # (, line 222
                # [, line 222
                self.ket = self.cursor
                # substring, line 222
                if self.find_among_b(GreekStemmer.a_7) == 0:
                    raise lab2()
                # ], line 222
                self.bra = self.cursor
                # atlimit, line 222
                if self.cursor > self.limit_backward:
                    raise lab2()
                # (, line 226
                # -> s, line 226
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 226
                if not self.slice_from(u"\u03B9"):
                    return False
                # <+ s, line 226
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab2: pass
            self.cursor = self.limit - v_1
            # (, line 228
            # [, line 228
            self.ket = self.cursor
            # substring, line 228
            if self.find_among_b(GreekStemmer.a_8) == 0:
                return False
            # ], line 228
            self.bra = self.cursor
            # atlimit, line 228
            if self.cursor > self.limit_backward:
                return False
            # (, line 231
            # -> s, line 231
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 231
            if not self.slice_from(u"\u03B9\u03C3"):
                return False
            # <+ s, line 231
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab0: pass
        return True

    def __r_steps4(self):
        # (, line 237
        # [, line 238
        self.ket = self.cursor
        # substring, line 238
        if self.find_among_b(GreekStemmer.a_11) == 0:
            return False
        # ], line 238
        self.bra = self.cursor
        # (, line 239
        # delete, line 240
        if not self.slice_del():
            return False

        # unset test1, line 241
        self.B_test1 = False
        # [, line 242
        self.ket = self.cursor
        # substring, line 242
        if self.find_among_b(GreekStemmer.a_10) == 0:
            return False
        # ], line 242
        self.bra = self.cursor
        # atlimit, line 242
        if self.cursor > self.limit_backward:
            return False
        # (, line 246
        # -> s, line 246
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 246
        if not self.slice_from(u"\u03B9"):
            return False
        # <+ s, line 246
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_steps5(self):
        # (, line 252
        # [, line 253
        self.ket = self.cursor
        # substring, line 253
        if self.find_among_b(GreekStemmer.a_14) == 0:
            return False
        # ], line 253
        self.bra = self.cursor
        # (, line 255
        # delete, line 256
        if not self.slice_del():
            return False

        # unset test1, line 257
        self.B_test1 = False
        # or, line 261
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 258
                # [, line 258
                self.ket = self.cursor
                # substring, line 258
                if self.find_among_b(GreekStemmer.a_12) == 0:
                    raise lab1()
                # ], line 258
                self.bra = self.cursor
                # atlimit, line 258
                if self.cursor > self.limit_backward:
                    raise lab1()
                # (, line 260
                # -> s, line 260
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 260
                if not self.slice_from(u"\u03B9"):
                    return False
                # <+ s, line 260
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # (, line 262
            # [, line 262
            self.ket = self.cursor
            # substring, line 262
            if self.find_among_b(GreekStemmer.a_13) == 0:
                return False
            # ], line 262
            self.bra = self.cursor
            # atlimit, line 262
            if self.cursor > self.limit_backward:
                return False
            # (, line 266
            # -> s, line 266
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 266
            if not self.slice_from(u"\u03B9\u03C3\u03C4"):
                return False
            # <+ s, line 266
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab0: pass
        return True

    def __r_steps6(self):
        # (, line 272
        # [, line 273
        self.ket = self.cursor
        # substring, line 273
        if self.find_among_b(GreekStemmer.a_18) == 0:
            return False
        # ], line 273
        self.bra = self.cursor
        # (, line 274
        # delete, line 275
        if not self.slice_del():
            return False

        # unset test1, line 276
        self.B_test1 = False
        # or, line 280
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 277
                # [, line 277
                self.ket = self.cursor
                # substring, line 277
                if self.find_among_b(GreekStemmer.a_15) == 0:
                    raise lab1()
                # ], line 277
                self.bra = self.cursor
                # atlimit, line 277
                if self.cursor > self.limit_backward:
                    raise lab1()
                # (, line 279
                # -> s, line 279
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 279
                if not self.slice_from(u"\u03B9\u03C3\u03BC"):
                    return False
                # <+ s, line 279
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            try:
                # (, line 281
                # [, line 281
                self.ket = self.cursor
                # substring, line 281
                if self.find_among_b(GreekStemmer.a_16) == 0:
                    raise lab2()
                # ], line 281
                self.bra = self.cursor
                # atlimit, line 281
                if self.cursor > self.limit_backward:
                    raise lab2()
                # (, line 283
                # -> s, line 283
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 283
                if not self.slice_from(u"\u03B9"):
                    return False
                # <+ s, line 283
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab2: pass
            self.cursor = self.limit - v_1
            # (, line 285
            # [, line 285
            self.ket = self.cursor
            # substring, line 285
            among_var = self.find_among_b(GreekStemmer.a_17)
            if among_var == 0:
                return False
            # ], line 285
            self.bra = self.cursor
            if among_var == 1:
                # (, line 286
                # <-, line 286
                if not self.slice_from(u"\u03B1\u03B3\u03BD\u03C9\u03C3\u03C4"):
                    return False
            elif among_var == 2:
                # (, line 287
                # <-, line 287
                if not self.slice_from(u"\u03B1\u03C4\u03BF\u03BC"):
                    return False
            elif among_var == 3:
                # (, line 288
                # <-, line 288
                if not self.slice_from(u"\u03B3\u03BD\u03C9\u03C3\u03C4"):
                    return False
            elif among_var == 4:
                # (, line 289
                # <-, line 289
                if not self.slice_from(u"\u03B5\u03B8\u03BD"):
                    return False
            elif among_var == 5:
                # (, line 290
                # <-, line 290
                if not self.slice_from(u"\u03B5\u03BA\u03BB\u03B5\u03BA\u03C4"):
                    return False
            elif among_var == 6:
                # (, line 291
                # <-, line 291
                if not self.slice_from(u"\u03C3\u03BA\u03B5\u03C0\u03C4"):
                    return False
            elif among_var == 7:
                # (, line 292
                # <-, line 292
                if not self.slice_from(u"\u03C4\u03BF\u03C0"):
                    return False
            elif among_var == 8:
                # (, line 293
                # <-, line 293
                if not self.slice_from(u"\u03B1\u03BB\u03B5\u03BE\u03B1\u03BD\u03B4\u03C1"):
                    return False
            elif among_var == 9:
                # (, line 294
                # <-, line 294
                if not self.slice_from(u"\u03B2\u03C5\u03B6\u03B1\u03BD\u03C4"):
                    return False
            elif among_var == 10:
                # (, line 295
                # <-, line 295
                if not self.slice_from(u"\u03B8\u03B5\u03B1\u03C4\u03C1"):
                    return False
        except lab0: pass
        return True

    def __r_steps7(self):
        # (, line 301
        # [, line 302
        self.ket = self.cursor
        # substring, line 302
        if self.find_among_b(GreekStemmer.a_20) == 0:
            return False
        # ], line 302
        self.bra = self.cursor
        # (, line 303
        # delete, line 304
        if not self.slice_del():
            return False

        # unset test1, line 305
        self.B_test1 = False
        # [, line 306
        self.ket = self.cursor
        # substring, line 306
        if self.find_among_b(GreekStemmer.a_19) == 0:
            return False
        # ], line 306
        self.bra = self.cursor
        # atlimit, line 306
        if self.cursor > self.limit_backward:
            return False
        # (, line 308
        # -> s, line 308
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 308
        if not self.slice_from(u"\u03B1\u03C1\u03B1\u03BA"):
            return False
        # <+ s, line 308
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_steps8(self):
        # (, line 314
        # [, line 315
        self.ket = self.cursor
        # substring, line 315
        if self.find_among_b(GreekStemmer.a_23) == 0:
            return False
        # ], line 315
        self.bra = self.cursor
        # (, line 316
        # delete, line 317
        if not self.slice_del():
            return False

        # unset test1, line 318
        self.B_test1 = False
        # or, line 325
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 319
                # [, line 319
                self.ket = self.cursor
                # substring, line 319
                if self.find_among_b(GreekStemmer.a_21) == 0:
                    raise lab1()
                # ], line 319
                self.bra = self.cursor
                # atlimit, line 319
                if self.cursor > self.limit_backward:
                    raise lab1()
                # (, line 324
                # -> s, line 324
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 324
                if not self.slice_from(u"\u03B1\u03BA"):
                    return False
                # <+ s, line 324
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            try:
                # (, line 326
                # [, line 326
                self.ket = self.cursor
                # substring, line 326
                if self.find_among_b(GreekStemmer.a_22) == 0:
                    raise lab2()
                # ], line 326
                self.bra = self.cursor
                # atlimit, line 326
                if self.cursor > self.limit_backward:
                    raise lab2()
                # (, line 329
                # -> s, line 329
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 329
                if not self.slice_from(u"\u03B9\u03C4\u03C3"):
                    return False
                # <+ s, line 329
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab2: pass
            self.cursor = self.limit - v_1
            # (, line 331
            # [, line 331
            self.ket = self.cursor
            # literal, line 331
            if not self.eq_s_b(u"\u03BA\u03BF\u03C1"):
                return False
            # ], line 331
            self.bra = self.cursor
            # -> s, line 331
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 331
            if not self.slice_from(u"\u03B9\u03C4\u03C3"):
                return False
            # <+ s, line 331
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab0: pass
        return True

    def __r_steps9(self):
        # (, line 336
        # [, line 337
        self.ket = self.cursor
        # substring, line 337
        if self.find_among_b(GreekStemmer.a_26) == 0:
            return False
        # ], line 337
        self.bra = self.cursor
        # (, line 338
        # delete, line 339
        if not self.slice_del():
            return False

        # unset test1, line 340
        self.B_test1 = False
        # or, line 343
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 341
                # [, line 341
                self.ket = self.cursor
                # substring, line 341
                if self.find_among_b(GreekStemmer.a_24) == 0:
                    raise lab1()
                # ], line 341
                self.bra = self.cursor
                # atlimit, line 341
                if self.cursor > self.limit_backward:
                    raise lab1()
                # (, line 342
                # -> s, line 342
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 342
                if not self.slice_from(u"\u03B9\u03B4"):
                    return False
                # <+ s, line 342
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # (, line 344
            # [, line 344
            self.ket = self.cursor
            # substring, line 344
            if self.find_among_b(GreekStemmer.a_25) == 0:
                return False
            # ], line 344
            self.bra = self.cursor
            # (, line 345
            # -> s, line 345
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 345
            if not self.slice_from(u"\u03B9\u03B4"):
                return False
            # <+ s, line 345
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab0: pass
        return True

    def __r_steps10(self):
        # (, line 351
        # [, line 352
        self.ket = self.cursor
        # substring, line 352
        if self.find_among_b(GreekStemmer.a_28) == 0:
            return False
        # ], line 352
        self.bra = self.cursor
        # (, line 353
        # delete, line 354
        if not self.slice_del():
            return False

        # unset test1, line 355
        self.B_test1 = False
        # [, line 356
        self.ket = self.cursor
        # substring, line 356
        if self.find_among_b(GreekStemmer.a_27) == 0:
            return False
        # ], line 356
        self.bra = self.cursor
        # atlimit, line 356
        if self.cursor > self.limit_backward:
            return False
        # (, line 358
        # -> s, line 358
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 358
        if not self.slice_from(u"\u03B9\u03C3\u03BA"):
            return False
        # <+ s, line 358
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step2a(self):
        # (, line 364
        # [, line 365
        self.ket = self.cursor
        # substring, line 365
        if self.find_among_b(GreekStemmer.a_29) == 0:
            return False
        # ], line 365
        self.bra = self.cursor
        # (, line 366
        # delete, line 366
        if not self.slice_del():
            return False

        # not, line 368
        v_1 = self.limit - self.cursor
        try:
            # (, line 368
            # [, line 368
            self.ket = self.cursor
            # substring, line 368
            if self.find_among_b(GreekStemmer.a_30) == 0:
                raise lab0()
            # ], line 368
            self.bra = self.cursor
            return False
        except lab0: pass
        self.cursor = self.limit - v_1
        # <+, line 371
        c = self.cursor
        self.insert(self.cursor, self.cursor, u"\u03B1\u03B4")
        self.cursor = c
        return True

    def __r_step2b(self):
        # (, line 374
        # [, line 375
        self.ket = self.cursor
        # substring, line 375
        if self.find_among_b(GreekStemmer.a_31) == 0:
            return False
        # ], line 375
        self.bra = self.cursor
        # (, line 376
        # delete, line 376
        if not self.slice_del():
            return False

        # [, line 378
        self.ket = self.cursor
        # substring, line 378
        if self.find_among_b(GreekStemmer.a_32) == 0:
            return False
        # ], line 378
        self.bra = self.cursor
        # (, line 379
        # -> s, line 379
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 379
        if not self.slice_from(u"\u03B5\u03B4"):
            return False
        # <+ s, line 379
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step2c(self):
        # (, line 383
        # [, line 384
        self.ket = self.cursor
        # substring, line 384
        if self.find_among_b(GreekStemmer.a_33) == 0:
            return False
        # ], line 384
        self.bra = self.cursor
        # (, line 385
        # delete, line 385
        if not self.slice_del():
            return False

        # [, line 387
        self.ket = self.cursor
        # substring, line 387
        if self.find_among_b(GreekStemmer.a_34) == 0:
            return False
        # ], line 387
        self.bra = self.cursor
        # (, line 389
        # -> s, line 389
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 389
        if not self.slice_from(u"\u03BF\u03C5\u03B4"):
            return False
        # <+ s, line 389
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step2d(self):
        # (, line 393
        # [, line 394
        self.ket = self.cursor
        # substring, line 394
        if self.find_among_b(GreekStemmer.a_35) == 0:
            return False
        # ], line 394
        self.bra = self.cursor
        # (, line 395
        # delete, line 395
        if not self.slice_del():
            return False

        # unset test1, line 395
        self.B_test1 = False
        # [, line 397
        self.ket = self.cursor
        # substring, line 397
        if self.find_among_b(GreekStemmer.a_36) == 0:
            return False
        # ], line 397
        self.bra = self.cursor
        # atlimit, line 397
        if self.cursor > self.limit_backward:
            return False
        # (, line 398
        # -> s, line 398
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 398
        if not self.slice_from(u"\u03B5"):
            return False
        # <+ s, line 398
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step3(self):
        # (, line 402
        # [, line 403
        self.ket = self.cursor
        # substring, line 403
        if self.find_among_b(GreekStemmer.a_37) == 0:
            return False
        # ], line 403
        self.bra = self.cursor
        # (, line 404
        # delete, line 404
        if not self.slice_del():
            return False

        # unset test1, line 404
        self.B_test1 = False
        # (, line 406
        # [, line 406
        self.ket = self.cursor
        if not self.in_grouping_b(GreekStemmer.g_v, 945, 969):
            return False
        # ], line 406
        self.bra = self.cursor
        # -> s, line 406
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 406
        if not self.slice_from(u"\u03B9"):
            return False
        # <+ s, line 406
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step4(self):
        # (, line 409
        # [, line 410
        self.ket = self.cursor
        # substring, line 410
        if self.find_among_b(GreekStemmer.a_38) == 0:
            return False
        # ], line 410
        self.bra = self.cursor
        # (, line 411
        # delete, line 411
        if not self.slice_del():
            return False

        # unset test1, line 411
        self.B_test1 = False
        # or, line 413
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 413
                # [, line 413
                self.ket = self.cursor
                if not self.in_grouping_b(GreekStemmer.g_v, 945, 969):
                    raise lab1()
                # ], line 413
                self.bra = self.cursor
                # -> s, line 413
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 413
                if not self.slice_from(u"\u03B9\u03BA"):
                    return False
                # <+ s, line 413
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # [, line 414
            self.ket = self.cursor
        except lab0: pass
        # substring, line 414
        if self.find_among_b(GreekStemmer.a_39) == 0:
            return False
        # ], line 414
        self.bra = self.cursor
        # atlimit, line 414
        if self.cursor > self.limit_backward:
            return False
        # (, line 419
        # -> s, line 419
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 419
        if not self.slice_from(u"\u03B9\u03BA"):
            return False
        # <+ s, line 419
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step5a(self):
        # (, line 423
        # do, line 424
        v_1 = self.limit - self.cursor
        try:
            # (, line 424
            # literal, line 424
            if not self.eq_s_b(u"\u03B1\u03B3\u03B1\u03BC\u03B5"):
                raise lab0()
            # atlimit, line 424
            if self.cursor > self.limit_backward:
                raise lab0()
            # <-, line 424
            if not self.slice_from(u"\u03B1\u03B3\u03B1\u03BC"):
                return False
        except lab0: pass
        self.cursor = self.limit - v_1
        # do, line 425
        v_2 = self.limit - self.cursor
        try:
            # (, line 425
            # [, line 426
            self.ket = self.cursor
            # substring, line 426
            if self.find_among_b(GreekStemmer.a_40) == 0:
                raise lab1()
            # ], line 426
            self.bra = self.cursor
            # (, line 427
            # delete, line 427
            if not self.slice_del():
                return False

            # unset test1, line 427
            self.B_test1 = False
        except lab1: pass
        self.cursor = self.limit - v_2
        # [, line 430
        self.ket = self.cursor
        # literal, line 430
        if not self.eq_s_b(u"\u03B1\u03BC\u03B5"):
            return False
        # ], line 430
        self.bra = self.cursor
        # delete, line 431
        if not self.slice_del():
            return False

        # unset test1, line 432
        self.B_test1 = False
        # [, line 433
        self.ket = self.cursor
        # substring, line 433
        if self.find_among_b(GreekStemmer.a_41) == 0:
            return False
        # ], line 433
        self.bra = self.cursor
        # atlimit, line 433
        if self.cursor > self.limit_backward:
            return False
        # (, line 435
        # -> s, line 435
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 435
        if not self.slice_from(u"\u03B1\u03BC"):
            return False
        # <+ s, line 435
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step5b(self):
        # (, line 439
        # do, line 440
        v_1 = self.limit - self.cursor
        try:
            # (, line 440
            # [, line 441
            self.ket = self.cursor
            # substring, line 441
            if self.find_among_b(GreekStemmer.a_43) == 0:
                raise lab0()
            # ], line 441
            self.bra = self.cursor
            # (, line 443
            # delete, line 444
            if not self.slice_del():
                return False

            # unset test1, line 445
            self.B_test1 = False
            # [, line 446
            self.ket = self.cursor
            # substring, line 446
            if self.find_among_b(GreekStemmer.a_42) == 0:
                raise lab0()
            # ], line 446
            self.bra = self.cursor
            # atlimit, line 446
            if self.cursor > self.limit_backward:
                raise lab0()
            # (, line 447
            # -> s, line 447
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 447
            if not self.slice_from(u"\u03B1\u03B3\u03B1\u03BD"):
                return False
            # <+ s, line 447
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab0: pass
        self.cursor = self.limit - v_1
        # [, line 452
        self.ket = self.cursor
        # literal, line 452
        if not self.eq_s_b(u"\u03B1\u03BD\u03B5"):
            return False
        # ], line 452
        self.bra = self.cursor
        # delete, line 453
        if not self.slice_del():
            return False

        # unset test1, line 454
        self.B_test1 = False
        # or, line 455
        try:
            v_2 = self.limit - self.cursor
            try:
                # (, line 455
                # [, line 455
                self.ket = self.cursor
                if not self.in_grouping_b(GreekStemmer.g_v2, 945, 969):
                    raise lab2()
                # ], line 455
                self.bra = self.cursor
                # -> s, line 455
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 455
                if not self.slice_from(u"\u03B1\u03BD"):
                    return False
                # <+ s, line 455
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab1()
            except lab2: pass
            self.cursor = self.limit - v_2
            # [, line 456
            self.ket = self.cursor
        except lab1: pass
        # substring, line 456
        if self.find_among_b(GreekStemmer.a_44) == 0:
            return False
        # ], line 456
        self.bra = self.cursor
        # atlimit, line 456
        if self.cursor > self.limit_backward:
            return False
        # (, line 473
        # -> s, line 473
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 473
        if not self.slice_from(u"\u03B1\u03BD"):
            return False
        # <+ s, line 473
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step5c(self):
        # (, line 477
        # do, line 478
        v_1 = self.limit - self.cursor
        try:
            # (, line 478
            # [, line 479
            self.ket = self.cursor
            # substring, line 479
            if self.find_among_b(GreekStemmer.a_45) == 0:
                raise lab0()
            # ], line 479
            self.bra = self.cursor
            # (, line 480
            # delete, line 480
            if not self.slice_del():
                return False

            # unset test1, line 480
            self.B_test1 = False
        except lab0: pass
        self.cursor = self.limit - v_1
        # [, line 483
        self.ket = self.cursor
        # literal, line 483
        if not self.eq_s_b(u"\u03B5\u03C4\u03B5"):
            return False
        # ], line 483
        self.bra = self.cursor
        # delete, line 484
        if not self.slice_del():
            return False

        # unset test1, line 485
        self.B_test1 = False
        # or, line 486
        try:
            v_2 = self.limit - self.cursor
            try:
                # (, line 486
                # [, line 486
                self.ket = self.cursor
                if not self.in_grouping_b(GreekStemmer.g_v2, 945, 969):
                    raise lab2()
                # ], line 486
                self.bra = self.cursor
                # -> s, line 486
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 486
                if not self.slice_from(u"\u03B5\u03C4"):
                    return False
                # <+ s, line 486
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab1()
            except lab2: pass
            self.cursor = self.limit - v_2
            try:
                # (, line 487
                # [, line 487
                self.ket = self.cursor
                # substring, line 487
                if self.find_among_b(GreekStemmer.a_46) == 0:
                    raise lab3()
                # ], line 487
                self.bra = self.cursor
                # (, line 491
                # -> s, line 491
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 491
                if not self.slice_from(u"\u03B5\u03C4"):
                    return False
                # <+ s, line 491
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab1()
            except lab3: pass
            self.cursor = self.limit - v_2
            # [, line 493
            self.ket = self.cursor
        except lab1: pass
        # substring, line 493
        if self.find_among_b(GreekStemmer.a_47) == 0:
            return False
        # ], line 493
        self.bra = self.cursor
        # atlimit, line 493
        if self.cursor > self.limit_backward:
            return False
        # (, line 497
        # -> s, line 497
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 497
        if not self.slice_from(u"\u03B5\u03C4"):
            return False
        # <+ s, line 497
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step5d(self):
        # (, line 501
        # [, line 502
        self.ket = self.cursor
        # substring, line 502
        if self.find_among_b(GreekStemmer.a_48) == 0:
            return False
        # ], line 502
        self.bra = self.cursor
        # (, line 503
        # delete, line 504
        if not self.slice_del():
            return False

        # unset test1, line 505
        self.B_test1 = False
        # or, line 506
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 506
                # [, line 506
                self.ket = self.cursor
                # literal, line 506
                if not self.eq_s_b(u"\u03B1\u03C1\u03C7"):
                    raise lab1()
                # ], line 506
                self.bra = self.cursor
                # atlimit, line 506
                if self.cursor > self.limit_backward:
                    raise lab1()
                # -> s, line 506
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 506
                if not self.slice_from(u"\u03BF\u03BD\u03C4"):
                    return False
                # <+ s, line 506
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # (, line 507
            # [, line 507
            self.ket = self.cursor
            # literal, line 507
            if not self.eq_s_b(u"\u03BA\u03C1\u03B5"):
                return False
            # ], line 507
            self.bra = self.cursor
            # -> s, line 507
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 507
            if not self.slice_from(u"\u03C9\u03BD\u03C4"):
                return False
            # <+ s, line 507
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab0: pass
        return True

    def __r_step5e(self):
        # (, line 512
        # [, line 513
        self.ket = self.cursor
        # substring, line 513
        if self.find_among_b(GreekStemmer.a_49) == 0:
            return False
        # ], line 513
        self.bra = self.cursor
        # (, line 514
        # delete, line 515
        if not self.slice_del():
            return False

        # unset test1, line 516
        self.B_test1 = False
        # (, line 517
        # [, line 517
        self.ket = self.cursor
        # literal, line 517
        if not self.eq_s_b(u"\u03BF\u03BD"):
            return False
        # ], line 517
        self.bra = self.cursor
        # atlimit, line 517
        if self.cursor > self.limit_backward:
            return False
        # -> s, line 517
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 517
        if not self.slice_from(u"\u03BF\u03BC\u03B1\u03C3\u03C4"):
            return False
        # <+ s, line 517
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step5f(self):
        # (, line 522
        # do, line 523
        v_1 = self.limit - self.cursor
        try:
            # (, line 523
            # [, line 524
            self.ket = self.cursor
            # literal, line 524
            if not self.eq_s_b(u"\u03B9\u03B5\u03C3\u03C4\u03B5"):
                raise lab0()
            # ], line 524
            self.bra = self.cursor
            # delete, line 525
            if not self.slice_del():
                return False

            # unset test1, line 526
            self.B_test1 = False
            # [, line 527
            self.ket = self.cursor
            # substring, line 527
            if self.find_among_b(GreekStemmer.a_50) == 0:
                raise lab0()
            # ], line 527
            self.bra = self.cursor
            # atlimit, line 527
            if self.cursor > self.limit_backward:
                raise lab0()
            # (, line 528
            # -> s, line 528
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 528
            if not self.slice_from(u"\u03B9\u03B5\u03C3\u03C4"):
                return False
            # <+ s, line 528
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab0: pass
        self.cursor = self.limit - v_1
        # [, line 531
        self.ket = self.cursor
        # literal, line 531
        if not self.eq_s_b(u"\u03B5\u03C3\u03C4\u03B5"):
            return False
        # ], line 531
        self.bra = self.cursor
        # delete, line 532
        if not self.slice_del():
            return False

        # unset test1, line 533
        self.B_test1 = False
        # [, line 534
        self.ket = self.cursor
        # substring, line 534
        if self.find_among_b(GreekStemmer.a_51) == 0:
            return False
        # ], line 534
        self.bra = self.cursor
        # atlimit, line 534
        if self.cursor > self.limit_backward:
            return False
        # (, line 536
        # -> s, line 536
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 536
        if not self.slice_from(u"\u03B9\u03B5\u03C3\u03C4"):
            return False
        # <+ s, line 536
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step5g(self):
        # (, line 540
        # do, line 541
        v_1 = self.limit - self.cursor
        try:
            # (, line 541
            # [, line 542
            self.ket = self.cursor
            # substring, line 542
            if self.find_among_b(GreekStemmer.a_52) == 0:
                raise lab0()
            # ], line 542
            self.bra = self.cursor
            # (, line 543
            # delete, line 543
            if not self.slice_del():
                return False

            # unset test1, line 543
            self.B_test1 = False
        except lab0: pass
        self.cursor = self.limit - v_1
        # [, line 546
        self.ket = self.cursor
        # substring, line 546
        if self.find_among_b(GreekStemmer.a_55) == 0:
            return False
        # ], line 546
        self.bra = self.cursor
        # (, line 547
        # delete, line 548
        if not self.slice_del():
            return False

        # unset test1, line 549
        self.B_test1 = False
        # or, line 552
        try:
            v_2 = self.limit - self.cursor
            try:
                # (, line 550
                # [, line 550
                self.ket = self.cursor
                # substring, line 550
                if self.find_among_b(GreekStemmer.a_53) == 0:
                    raise lab2()
                # ], line 550
                self.bra = self.cursor
                # (, line 551
                # -> s, line 551
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 551
                if not self.slice_from(u"\u03B7\u03BA"):
                    return False
                # <+ s, line 551
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab1()
            except lab2: pass
            self.cursor = self.limit - v_2
            # (, line 553
            # [, line 553
            self.ket = self.cursor
            # substring, line 553
            if self.find_among_b(GreekStemmer.a_54) == 0:
                return False
            # ], line 553
            self.bra = self.cursor
            # atlimit, line 553
            if self.cursor > self.limit_backward:
                return False
            # (, line 554
            # -> s, line 554
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 554
            if not self.slice_from(u"\u03B7\u03BA"):
                return False
            # <+ s, line 554
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab1: pass
        return True

    def __r_step5h(self):
        # (, line 560
        # [, line 561
        self.ket = self.cursor
        # substring, line 561
        if self.find_among_b(GreekStemmer.a_58) == 0:
            return False
        # ], line 561
        self.bra = self.cursor
        # (, line 562
        # delete, line 563
        if not self.slice_del():
            return False

        # unset test1, line 564
        self.B_test1 = False
        # or, line 569
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 565
                # [, line 565
                self.ket = self.cursor
                # substring, line 565
                if self.find_among_b(GreekStemmer.a_56) == 0:
                    raise lab1()
                # ], line 565
                self.bra = self.cursor
                # (, line 567
                # -> s, line 567
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 567
                if not self.slice_from(u"\u03BF\u03C5\u03C3"):
                    return False
                # <+ s, line 567
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # (, line 570
            # [, line 570
            self.ket = self.cursor
            # substring, line 570
            if self.find_among_b(GreekStemmer.a_57) == 0:
                return False
            # ], line 570
            self.bra = self.cursor
            # atlimit, line 570
            if self.cursor > self.limit_backward:
                return False
            # (, line 574
            # -> s, line 574
            self.S_s = self.slice_to()
            if self.S_s == '':
                return False
            # <-, line 574
            if not self.slice_from(u"\u03BF\u03C5\u03C3"):
                return False
            # <+ s, line 574
            c = self.cursor
            self.insert(self.cursor, self.cursor, self.S_s)
            self.cursor = c
        except lab0: pass
        return True

    def __r_step5i(self):
        # (, line 580
        # [, line 581
        self.ket = self.cursor
        # substring, line 581
        if self.find_among_b(GreekStemmer.a_62) == 0:
            return False
        # ], line 581
        self.bra = self.cursor
        # (, line 582
        # delete, line 583
        if not self.slice_del():
            return False

        # unset test1, line 584
        self.B_test1 = False
        # or, line 585
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 585
                # [, line 585
                self.ket = self.cursor
                # literal, line 585
                if not self.eq_s_b(u"\u03BA\u03BF\u03BB\u03BB"):
                    raise lab1()
                # ], line 585
                self.bra = self.cursor
                # -> s, line 585
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 585
                if not self.slice_from(u"\u03B1\u03B3"):
                    return False
                # <+ s, line 585
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # (, line 585
            # not, line 586
            v_2 = self.limit - self.cursor
            try:
                # (, line 586
                # [, line 586
                self.ket = self.cursor
                # substring, line 586
                if self.find_among_b(GreekStemmer.a_59) == 0:
                    raise lab2()
                # ], line 586
                self.bra = self.cursor
                return False
            except lab2: pass
            self.cursor = self.limit - v_2
            # or, line 590
            try:
                v_3 = self.limit - self.cursor
                try:
                    # (, line 587
                    # [, line 587
                    self.ket = self.cursor
                    # substring, line 587
                    if self.find_among_b(GreekStemmer.a_60) == 0:
                        raise lab4()
                    # ], line 587
                    self.bra = self.cursor
                    # (, line 589
                    # -> s, line 589
                    self.S_s = self.slice_to()
                    if self.S_s == '':
                        return False
                    # <-, line 589
                    if not self.slice_from(u"\u03B1\u03B3"):
                        return False
                    # <+ s, line 589
                    c = self.cursor
                    self.insert(self.cursor, self.cursor, self.S_s)
                    self.cursor = c
                    raise lab3()
                except lab4: pass
                self.cursor = self.limit - v_3
                # (, line 591
                # [, line 591
                self.ket = self.cursor
                # substring, line 591
                if self.find_among_b(GreekStemmer.a_61) == 0:
                    return False
                # ], line 591
                self.bra = self.cursor
                # atlimit, line 591
                if self.cursor > self.limit_backward:
                    return False
                # (, line 597
                # -> s, line 597
                self.S_s = self.slice_to()
                if self.S_s == '':
                    return False
                # <-, line 597
                if not self.slice_from(u"\u03B1\u03B3"):
                    return False
                # <+ s, line 597
                c = self.cursor
                self.insert(self.cursor, self.cursor, self.S_s)
                self.cursor = c
            except lab3: pass
        except lab0: pass
        return True

    def __r_step5j(self):
        # (, line 604
        # [, line 605
        self.ket = self.cursor
        # substring, line 605
        if self.find_among_b(GreekStemmer.a_63) == 0:
            return False
        # ], line 605
        self.bra = self.cursor
        # (, line 606
        # delete, line 606
        if not self.slice_del():
            return False

        # unset test1, line 606
        self.B_test1 = False
        # [, line 608
        self.ket = self.cursor
        # substring, line 608
        if self.find_among_b(GreekStemmer.a_64) == 0:
            return False
        # ], line 608
        self.bra = self.cursor
        # atlimit, line 608
        if self.cursor > self.limit_backward:
            return False
        # (, line 609
        # -> s, line 609
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 609
        if not self.slice_from(u"\u03B7\u03C3"):
            return False
        # <+ s, line 609
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step5k(self):
        # (, line 613
        # [, line 614
        self.ket = self.cursor
        # substring, line 614
        if self.find_among_b(GreekStemmer.a_65) == 0:
            return False
        # ], line 614
        self.bra = self.cursor
        # (, line 615
        # delete, line 615
        if not self.slice_del():
            return False

        # unset test1, line 615
        self.B_test1 = False
        # [, line 617
        self.ket = self.cursor
        # substring, line 617
        if self.find_among_b(GreekStemmer.a_66) == 0:
            return False
        # ], line 617
        self.bra = self.cursor
        # atlimit, line 617
        if self.cursor > self.limit_backward:
            return False
        # (, line 619
        # -> s, line 619
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 619
        if not self.slice_from(u"\u03B7\u03C3\u03C4"):
            return False
        # <+ s, line 619
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step5l(self):
        # (, line 623
        # [, line 624
        self.ket = self.cursor
        # substring, line 624
        if self.find_among_b(GreekStemmer.a_67) == 0:
            return False
        # ], line 624
        self.bra = self.cursor
        # (, line 625
        # delete, line 625
        if not self.slice_del():
            return False

        # unset test1, line 625
        self.B_test1 = False
        # [, line 627
        self.ket = self.cursor
        # substring, line 627
        if self.find_among_b(GreekStemmer.a_68) == 0:
            return False
        # ], line 627
        self.bra = self.cursor
        # atlimit, line 627
        if self.cursor > self.limit_backward:
            return False
        # (, line 628
        # -> s, line 628
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 628
        if not self.slice_from(u"\u03BF\u03C5\u03BD"):
            return False
        # <+ s, line 628
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step5m(self):
        # (, line 632
        # [, line 633
        self.ket = self.cursor
        # substring, line 633
        if self.find_among_b(GreekStemmer.a_69) == 0:
            return False
        # ], line 633
        self.bra = self.cursor
        # (, line 634
        # delete, line 634
        if not self.slice_del():
            return False

        # unset test1, line 634
        self.B_test1 = False
        # [, line 636
        self.ket = self.cursor
        # substring, line 636
        if self.find_among_b(GreekStemmer.a_70) == 0:
            return False
        # ], line 636
        self.bra = self.cursor
        # atlimit, line 636
        if self.cursor > self.limit_backward:
            return False
        # (, line 638
        # -> s, line 638
        self.S_s = self.slice_to()
        if self.S_s == '':
            return False
        # <-, line 638
        if not self.slice_from(u"\u03BF\u03C5\u03BC"):
            return False
        # <+ s, line 638
        c = self.cursor
        self.insert(self.cursor, self.cursor, self.S_s)
        self.cursor = c
        return True

    def __r_step6(self):
        # (, line 642
        # do, line 643
        v_1 = self.limit - self.cursor
        try:
            # (, line 643
            # [, line 644
            self.ket = self.cursor
            # substring, line 644
            if self.find_among_b(GreekStemmer.a_71) == 0:
                raise lab0()
            # ], line 644
            self.bra = self.cursor
            # (, line 645
            # <-, line 645
            if not self.slice_from(u"\u03BC\u03B1"):
                return False
        except lab0: pass
        self.cursor = self.limit - v_1
        # Boolean test test1, line 648
        if not self.B_test1:
            return False
        # [, line 649
        self.ket = self.cursor
        # substring, line 649
        if self.find_among_b(GreekStemmer.a_72) == 0:
            return False
        # ], line 649
        self.bra = self.cursor
        # (, line 659
        # delete, line 659
        if not self.slice_del():
            return False

        return True

    def __r_step7(self):
        # (, line 663
        # [, line 664
        self.ket = self.cursor
        # substring, line 664
        if self.find_among_b(GreekStemmer.a_73) == 0:
            return False
        # ], line 664
        self.bra = self.cursor
        # (, line 665
        # delete, line 665
        if not self.slice_del():
            return False

        return True

    def _stem(self):
        # (, line 670
        # backwards, line 671
        self.limit_backward = self.cursor
        self.cursor = self.limit
        # (, line 671
        # do, line 672
        v_1 = self.limit - self.cursor
        try:
            # call tolower, line 672
            if not self.__r_tolower():
                raise lab0()
        except lab0: pass
        self.cursor = self.limit - v_1
        # call has_min_length, line 673
        if not self.__r_has_min_length():
            return False
        # set test1, line 674
        self.B_test1 = True
        # do, line 675
        v_2 = self.limit - self.cursor
        try:
            # call step1, line 675
            if not self.__r_step1():
                raise lab1()
        except lab1: pass
        self.cursor = self.limit - v_2
        # do, line 676
        v_3 = self.limit - self.cursor
        try:
            # call steps1, line 676
            if not self.__r_steps1():
                raise lab2()
        except lab2: pass
        self.cursor = self.limit - v_3
        # do, line 677
        v_4 = self.limit - self.cursor
        try:
            # call steps2, line 677
            if not self.__r_steps2():
                raise lab3()
        except lab3: pass
        self.cursor = self.limit - v_4
        # do, line 678
        v_5 = self.limit - self.cursor
        try:
            # call steps3, line 678
            if not self.__r_steps3():
                raise lab4()
        except lab4: pass
        self.cursor = self.limit - v_5
        # do, line 679
        v_6 = self.limit - self.cursor
        try:
            # call steps4, line 679
            if not self.__r_steps4():
                raise lab5()
        except lab5: pass
        self.cursor = self.limit - v_6
        # do, line 680
        v_7 = self.limit - self.cursor
        try:
            # call steps5, line 680
            if not self.__r_steps5():
                raise lab6()
        except lab6: pass
        self.cursor = self.limit - v_7
        # do, line 681
        v_8 = self.limit - self.cursor
        try:
            # call steps6, line 681
            if not self.__r_steps6():
                raise lab7()
        except lab7: pass
        self.cursor = self.limit - v_8
        # do, line 682
        v_9 = self.limit - self.cursor
        try:
            # call steps7, line 682
            if not self.__r_steps7():
                raise lab8()
        except lab8: pass
        self.cursor = self.limit - v_9
        # do, line 683
        v_10 = self.limit - self.cursor
        try:
            # call steps8, line 683
            if not self.__r_steps8():
                raise lab9()
        except lab9: pass
        self.cursor = self.limit - v_10
        # do, line 684
        v_11 = self.limit - self.cursor
        try:
            # call steps9, line 684
            if not self.__r_steps9():
                raise lab10()
        except lab10: pass
        self.cursor = self.limit - v_11
        # do, line 685
        v_12 = self.limit - self.cursor
        try:
            # call steps10, line 685
            if not self.__r_steps10():
                raise lab11()
        except lab11: pass
        self.cursor = self.limit - v_12
        # do, line 686
        v_13 = self.limit - self.cursor
        try:
            # call step2a, line 686
            if not self.__r_step2a():
                raise lab12()
        except lab12: pass
        self.cursor = self.limit - v_13
        # do, line 687
        v_14 = self.limit - self.cursor
        try:
            # call step2b, line 687
            if not self.__r_step2b():
                raise lab13()
        except lab13: pass
        self.cursor = self.limit - v_14
        # do, line 688
        v_15 = self.limit - self.cursor
        try:
            # call step2c, line 688
            if not self.__r_step2c():
                raise lab14()
        except lab14: pass
        self.cursor = self.limit - v_15
        # do, line 689
        v_16 = self.limit - self.cursor
        try:
            # call step2d, line 689
            if not self.__r_step2d():
                raise lab15()
        except lab15: pass
        self.cursor = self.limit - v_16
        # do, line 690
        v_17 = self.limit - self.cursor
        try:
            # call step3, line 690
            if not self.__r_step3():
                raise lab16()
        except lab16: pass
        self.cursor = self.limit - v_17
        # do, line 691
        v_18 = self.limit - self.cursor
        try:
            # call step4, line 691
            if not self.__r_step4():
                raise lab17()
        except lab17: pass
        self.cursor = self.limit - v_18
        # do, line 692
        v_19 = self.limit - self.cursor
        try:
            # call step5a, line 692
            if not self.__r_step5a():
                raise lab18()
        except lab18: pass
        self.cursor = self.limit - v_19
        # do, line 693
        v_20 = self.limit - self.cursor
        try:
            # call step5b, line 693
            if not self.__r_step5b():
                raise lab19()
        except lab19: pass
        self.cursor = self.limit - v_20
        # do, line 694
        v_21 = self.limit - self.cursor
        try:
            # call step5c, line 694
            if not self.__r_step5c():
                raise lab20()
        except lab20: pass
        self.cursor = self.limit - v_21
        # do, line 695
        v_22 = self.limit - self.cursor
        try:
            # call step5d, line 695
            if not self.__r_step5d():
                raise lab21()
        except lab21: pass
        self.cursor = self.limit - v_22
        # do, line 696
        v_23 = self.limit - self.cursor
        try:
            # call step5e, line 696
            if not self.__r_step5e():
                raise lab22()
        except lab22: pass
        self.cursor = self.limit - v_23
        # do, line 697
        v_24 = self.limit - self.cursor
        try:
            # call step5f, line 697
            if not self.__r_step5f():
                raise lab23()
        except lab23: pass
        self.cursor = self.limit - v_24
        # do, line 698
        v_25 = self.limit - self.cursor
        try:
            # call step5g, line 698
            if not self.__r_step5g():
                raise lab24()
        except lab24: pass
        self.cursor = self.limit - v_25
        # do, line 699
        v_26 = self.limit - self.cursor
        try:
            # call step5h, line 699
            if not self.__r_step5h():
                raise lab25()
        except lab25: pass
        self.cursor = self.limit - v_26
        # do, line 700
        v_27 = self.limit - self.cursor
        try:
            # call step5j, line 700
            if not self.__r_step5j():
                raise lab26()
        except lab26: pass
        self.cursor = self.limit - v_27
        # do, line 701
        v_28 = self.limit - self.cursor
        try:
            # call step5i, line 701
            if not self.__r_step5i():
                raise lab27()
        except lab27: pass
        self.cursor = self.limit - v_28
        # do, line 702
        v_29 = self.limit - self.cursor
        try:
            # call step5k, line 702
            if not self.__r_step5k():
                raise lab28()
        except lab28: pass
        self.cursor = self.limit - v_29
        # do, line 703
        v_30 = self.limit - self.cursor
        try:
            # call step5l, line 703
            if not self.__r_step5l():
                raise lab29()
        except lab29: pass
        self.cursor = self.limit - v_30
        # do, line 704
        v_31 = self.limit - self.cursor
        try:
            # call step5m, line 704
            if not self.__r_step5m():
                raise lab30()
        except lab30: pass
        self.cursor = self.limit - v_31
        # do, line 705
        v_32 = self.limit - self.cursor
        try:
            # call step6, line 705
            if not self.__r_step6():
                raise lab31()
        except lab31: pass
        self.cursor = self.limit - v_32
        # do, line 706
        v_33 = self.limit - self.cursor
        try:
            # call step7, line 706
            if not self.__r_step7():
                raise lab32()
        except lab32: pass
        self.cursor = self.limit - v_33
        self.cursor = self.limit_backward
        return True


class lab0(BaseException): pass


class lab1(BaseException): pass


class lab2(BaseException): pass


class lab3(BaseException): pass


class lab4(BaseException): pass


class lab5(BaseException): pass


class lab6(BaseException): pass


class lab7(BaseException): pass


class lab8(BaseException): pass


class lab9(BaseException): pass


class lab10(BaseException): pass


class lab11(BaseException): pass


class lab12(BaseException): pass


class lab13(BaseException): pass


class lab14(BaseException): pass


class lab15(BaseException): pass


class lab16(BaseException): pass


class lab17(BaseException): pass


class lab18(BaseException): pass


class lab19(BaseException): pass


class lab20(BaseException): pass


class lab21(BaseException): pass


class lab22(BaseException): pass


class lab23(BaseException): pass


class lab24(BaseException): pass


class lab25(BaseException): pass


class lab26(BaseException): pass


class lab27(BaseException): pass


class lab28(BaseException): pass


class lab29(BaseException): pass


class lab30(BaseException): pass


class lab31(BaseException): pass


class lab32(BaseException): pass
