# 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]

    B_test1 = False


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

    def __r_tolower(self):
        # (, line 112
        # repeat, line 113
        try:
            while True:
                try:
                    v_1 = self.limit - self.cursor
                    try:
                        # (, line 113
                        # [, line 114
                        self.ket = self.cursor
                        # substring, line 114
                        among_var = self.find_among_b(GreekStemmer.a_0)
                        if among_var == 0:
                            raise lab2()
                        # ], line 114
                        self.bra = self.cursor
                        if among_var == 1:
                            # (, line 115
                            # <-, line 115
                            if not self.slice_from(u"\u03B1"):
                                return False
                        elif among_var == 2:
                            # (, line 116
                            # <-, line 116
                            if not self.slice_from(u"\u03B2"):
                                return False
                        elif among_var == 3:
                            # (, line 117
                            # <-, line 117
                            if not self.slice_from(u"\u03B3"):
                                return False
                        elif among_var == 4:
                            # (, line 118
                            # <-, line 118
                            if not self.slice_from(u"\u03B4"):
                                return False
                        elif among_var == 5:
                            # (, line 119
                            # <-, line 119
                            if not self.slice_from(u"\u03B5"):
                                return False
                        elif among_var == 6:
                            # (, line 120
                            # <-, line 120
                            if not self.slice_from(u"\u03B6"):
                                return False
                        elif among_var == 7:
                            # (, line 121
                            # <-, line 121
                            if not self.slice_from(u"\u03B7"):
                                return False
                        elif among_var == 8:
                            # (, line 122
                            # <-, line 122
                            if not self.slice_from(u"\u03B8"):
                                return False
                        elif among_var == 9:
                            # (, line 123
                            # <-, line 123
                            if not self.slice_from(u"\u03B9"):
                                return False
                        elif among_var == 10:
                            # (, line 124
                            # <-, line 124
                            if not self.slice_from(u"\u03BA"):
                                return False
                        elif among_var == 11:
                            # (, line 125
                            # <-, line 125
                            if not self.slice_from(u"\u03BB"):
                                return False
                        elif among_var == 12:
                            # (, line 126
                            # <-, line 126
                            if not self.slice_from(u"\u03BC"):
                                return False
                        elif among_var == 13:
                            # (, line 127
                            # <-, line 127
                            if not self.slice_from(u"\u03BD"):
                                return False
                        elif among_var == 14:
                            # (, line 128
                            # <-, line 128
                            if not self.slice_from(u"\u03BE"):
                                return False
                        elif among_var == 15:
                            # (, line 129
                            # <-, line 129
                            if not self.slice_from(u"\u03BF"):
                                return False
                        elif among_var == 16:
                            # (, line 130
                            # <-, line 130
                            if not self.slice_from(u"\u03C0"):
                                return False
                        elif among_var == 17:
                            # (, line 131
                            # <-, line 131
                            if not self.slice_from(u"\u03C1"):
                                return False
                        elif among_var == 18:
                            # (, line 132
                            # <-, line 132
                            if not self.slice_from(u"\u03C3"):
                                return False
                        elif among_var == 19:
                            # (, line 133
                            # <-, line 133
                            if not self.slice_from(u"\u03C4"):
                                return False
                        elif among_var == 20:
                            # (, line 134
                            # <-, line 134
                            if not self.slice_from(u"\u03C5"):
                                return False
                        elif among_var == 21:
                            # (, line 135
                            # <-, line 135
                            if not self.slice_from(u"\u03C6"):
                                return False
                        elif among_var == 22:
                            # (, line 136
                            # <-, line 136
                            if not self.slice_from(u"\u03C7"):
                                return False
                        elif among_var == 23:
                            # (, line 137
                            # <-, line 137
                            if not self.slice_from(u"\u03C8"):
                                return False
                        elif among_var == 24:
                            # (, line 138
                            # <-, line 138
                            if not self.slice_from(u"\u03C9"):
                                return False
                        elif among_var == 25:
                            # (, line 160
                            # next, line 160
                            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 165
        # [, line 166
        self.ket = self.cursor
        # substring, line 166
        among_var = self.find_among_b(GreekStemmer.a_1)
        if among_var == 0:
            return False
        # ], line 166
        self.bra = self.cursor
        if among_var == 1:
            # (, line 167
            # <-, line 167
            if not self.slice_from(u"\u03C6\u03B1"):
                return False
        elif among_var == 2:
            # (, line 168
            # <-, line 168
            if not self.slice_from(u"\u03C3\u03BA\u03B1"):
                return False
        elif among_var == 3:
            # (, line 169
            # <-, line 169
            if not self.slice_from(u"\u03BF\u03BB\u03BF"):
                return False
        elif among_var == 4:
            # (, line 170
            # <-, line 170
            if not self.slice_from(u"\u03C3\u03BF"):
                return False
        elif among_var == 5:
            # (, line 171
            # <-, line 171
            if not self.slice_from(u"\u03C4\u03B1\u03C4\u03BF"):
                return False
        elif among_var == 6:
            # (, line 172
            # <-, line 172
            if not self.slice_from(u"\u03BA\u03C1\u03B5"):
                return False
        elif among_var == 7:
            # (, line 173
            # <-, line 173
            if not self.slice_from(u"\u03C0\u03B5\u03C1"):
                return False
        elif among_var == 8:
            # (, line 174
            # <-, line 174
            if not self.slice_from(u"\u03C4\u03B5\u03C1"):
                return False
        elif among_var == 9:
            # (, line 175
            # <-, line 175
            if not self.slice_from(u"\u03C6\u03C9"):
                return False
        elif among_var == 10:
            # (, line 176
            # <-, line 176
            if not self.slice_from(u"\u03BA\u03B1\u03B8\u03B5\u03C3\u03C4"):
                return False
        elif among_var == 11:
            # (, line 177
            # <-, line 177
            if not self.slice_from(u"\u03B3\u03B5\u03B3\u03BF\u03BD"):
                return False
        # unset test1, line 179
        self.B_test1 = False
        return True

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

        # unset test1, line 187
        self.B_test1 = False
        # or, line 191
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 188
                # [, line 188
                self.ket = self.cursor
                # ], line 188
                self.bra = self.cursor
                # substring, line 188
                if self.find_among_b(GreekStemmer.a_2) == 0:
                    raise lab1()
                # atlimit, line 188
                if self.cursor > self.limit_backward:
                    raise lab1()
                # (, line 190
                # <-, line 190
                if not self.slice_from(u"\u03B9"):
                    return False
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # (, line 192
            # [, line 192
            self.ket = self.cursor
            # ], line 192
            self.bra = self.cursor
            # substring, line 192
            if self.find_among_b(GreekStemmer.a_3) == 0:
                return False
            # atlimit, line 192
            if self.cursor > self.limit_backward:
                return False
            # (, line 196
            # <-, line 196
            if not self.slice_from(u"\u03B9\u03B6"):
                return False
        except lab0: pass
        return True

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

        # unset test1, line 206
        self.B_test1 = False
        # [, line 207
        self.ket = self.cursor
        # ], line 207
        self.bra = self.cursor
        # substring, line 207
        if self.find_among_b(GreekStemmer.a_5) == 0:
            return False
        # atlimit, line 207
        if self.cursor > self.limit_backward:
            return False
        # (, line 208
        # <-, line 208
        if not self.slice_from(u"\u03C9\u03BD"):
            return False
        return True

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

        # unset test1, line 218
        self.B_test1 = False
        # or, line 219
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 219
                # literal, line 219
                if not self.eq_s_b(u"\u03B9\u03C3\u03B1"):
                    raise lab1()
                # atlimit, line 219
                if self.cursor > self.limit_backward:
                    raise lab1()
                # <-, line 219
                if not self.slice_from(u"\u03B9\u03C3"):
                    return False
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            try:
                # (, line 220
                # [, line 220
                self.ket = self.cursor
                # ], line 220
                self.bra = self.cursor
                # substring, line 220
                if self.find_among_b(GreekStemmer.a_7) == 0:
                    raise lab2()
                # atlimit, line 220
                if self.cursor > self.limit_backward:
                    raise lab2()
                # (, line 224
                # <-, line 224
                if not self.slice_from(u"\u03B9"):
                    return False
                raise lab0()
            except lab2: pass
            self.cursor = self.limit - v_1
            # (, line 226
            # [, line 226
            self.ket = self.cursor
            # ], line 226
            self.bra = self.cursor
            # substring, line 226
            if self.find_among_b(GreekStemmer.a_8) == 0:
                return False
            # atlimit, line 226
            if self.cursor > self.limit_backward:
                return False
            # (, line 229
            # <-, line 229
            if not self.slice_from(u"\u03B9\u03C3"):
                return False
        except lab0: pass
        return True

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

        # unset test1, line 239
        self.B_test1 = False
        # [, line 240
        self.ket = self.cursor
        # ], line 240
        self.bra = self.cursor
        # substring, line 240
        if self.find_among_b(GreekStemmer.a_10) == 0:
            return False
        # atlimit, line 240
        if self.cursor > self.limit_backward:
            return False
        # (, line 244
        # <-, line 244
        if not self.slice_from(u"\u03B9"):
            return False
        return True

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

        # unset test1, line 255
        self.B_test1 = False
        # or, line 259
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 256
                # [, line 256
                self.ket = self.cursor
                # ], line 256
                self.bra = self.cursor
                # substring, line 256
                if self.find_among_b(GreekStemmer.a_12) == 0:
                    raise lab1()
                # atlimit, line 256
                if self.cursor > self.limit_backward:
                    raise lab1()
                # (, line 258
                # <-, line 258
                if not self.slice_from(u"\u03B9"):
                    return False
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # (, line 260
            # [, line 260
            self.ket = self.cursor
            # ], line 260
            self.bra = self.cursor
            # substring, line 260
            if self.find_among_b(GreekStemmer.a_13) == 0:
                return False
            # atlimit, line 260
            if self.cursor > self.limit_backward:
                return False
            # (, line 264
            # <-, line 264
            if not self.slice_from(u"\u03B9\u03C3\u03C4"):
                return False
        except lab0: pass
        return True

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

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

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

        # unset test1, line 303
        self.B_test1 = False
        # [, line 304
        self.ket = self.cursor
        # ], line 304
        self.bra = self.cursor
        # substring, line 304
        if self.find_among_b(GreekStemmer.a_19) == 0:
            return False
        # atlimit, line 304
        if self.cursor > self.limit_backward:
            return False
        # (, line 306
        # <-, line 306
        if not self.slice_from(u"\u03B1\u03C1\u03B1\u03BA"):
            return False
        return True

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

        # unset test1, line 316
        self.B_test1 = False
        # or, line 323
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 317
                # [, line 317
                self.ket = self.cursor
                # ], line 317
                self.bra = self.cursor
                # substring, line 317
                if self.find_among_b(GreekStemmer.a_21) == 0:
                    raise lab1()
                # atlimit, line 317
                if self.cursor > self.limit_backward:
                    raise lab1()
                # (, line 322
                # <-, line 322
                if not self.slice_from(u"\u03B1\u03BA"):
                    return False
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            try:
                # (, line 324
                # [, line 324
                self.ket = self.cursor
                # ], line 324
                self.bra = self.cursor
                # substring, line 324
                if self.find_among_b(GreekStemmer.a_22) == 0:
                    raise lab2()
                # atlimit, line 324
                if self.cursor > self.limit_backward:
                    raise lab2()
                # (, line 327
                # <-, line 327
                if not self.slice_from(u"\u03B9\u03C4\u03C3"):
                    return False
                raise lab0()
            except lab2: pass
            self.cursor = self.limit - v_1
            # (, line 329
            # [, line 329
            self.ket = self.cursor
            # ], line 329
            self.bra = self.cursor
            # literal, line 329
            if not self.eq_s_b(u"\u03BA\u03BF\u03C1"):
                return False
            # <-, line 329
            if not self.slice_from(u"\u03B9\u03C4\u03C3"):
                return False
        except lab0: pass
        return True

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

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

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

        # unset test1, line 353
        self.B_test1 = False
        # [, line 354
        self.ket = self.cursor
        # ], line 354
        self.bra = self.cursor
        # substring, line 354
        if self.find_among_b(GreekStemmer.a_27) == 0:
            return False
        # atlimit, line 354
        if self.cursor > self.limit_backward:
            return False
        # (, line 356
        # <-, line 356
        if not self.slice_from(u"\u03B9\u03C3\u03BA"):
            return False
        return True

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

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

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

        # [, line 376
        self.ket = self.cursor
        # ], line 376
        self.bra = self.cursor
        # substring, line 376
        if self.find_among_b(GreekStemmer.a_32) == 0:
            return False
        # (, line 377
        # <-, line 377
        if not self.slice_from(u"\u03B5\u03B4"):
            return False
        return True

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

        # [, line 385
        self.ket = self.cursor
        # ], line 385
        self.bra = self.cursor
        # substring, line 385
        if self.find_among_b(GreekStemmer.a_34) == 0:
            return False
        # (, line 387
        # <-, line 387
        if not self.slice_from(u"\u03BF\u03C5\u03B4"):
            return False
        return True

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

        # unset test1, line 393
        self.B_test1 = False
        # [, line 395
        self.ket = self.cursor
        # ], line 395
        self.bra = self.cursor
        # substring, line 395
        if self.find_among_b(GreekStemmer.a_36) == 0:
            return False
        # atlimit, line 395
        if self.cursor > self.limit_backward:
            return False
        # (, line 396
        # <-, line 396
        if not self.slice_from(u"\u03B5"):
            return False
        return True

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

        # unset test1, line 402
        self.B_test1 = False
        # (, line 404
        # [, line 404
        self.ket = self.cursor
        # ], line 404
        self.bra = self.cursor
        if not self.in_grouping_b(GreekStemmer.g_v, 945, 969):
            return False
        # <-, line 404
        if not self.slice_from(u"\u03B9"):
            return False
        return True

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

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

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

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

        # unset test1, line 430
        self.B_test1 = False
        # [, line 431
        self.ket = self.cursor
        # ], line 431
        self.bra = self.cursor
        # substring, line 431
        if self.find_among_b(GreekStemmer.a_41) == 0:
            return False
        # atlimit, line 431
        if self.cursor > self.limit_backward:
            return False
        # (, line 433
        # <-, line 433
        if not self.slice_from(u"\u03B1\u03BC"):
            return False
        return True

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

            # unset test1, line 443
            self.B_test1 = False
            # [, line 444
            self.ket = self.cursor
            # ], line 444
            self.bra = self.cursor
            # substring, line 444
            if self.find_among_b(GreekStemmer.a_42) == 0:
                raise lab0()
            # atlimit, line 444
            if self.cursor > self.limit_backward:
                raise lab0()
            # (, line 445
            # <-, line 445
            if not self.slice_from(u"\u03B1\u03B3\u03B1\u03BD"):
                return False
        except lab0: pass
        self.cursor = self.limit - v_1
        # [, line 450
        self.ket = self.cursor
        # literal, line 450
        if not self.eq_s_b(u"\u03B1\u03BD\u03B5"):
            return False
        # ], line 450
        self.bra = self.cursor
        # delete, line 451
        if not self.slice_del():
            return False

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

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

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

        # unset test1, line 483
        self.B_test1 = False
        # or, line 484
        try:
            v_2 = self.limit - self.cursor
            try:
                # (, line 484
                # [, line 484
                self.ket = self.cursor
                # ], line 484
                self.bra = self.cursor
                if not self.in_grouping_b(GreekStemmer.g_v2, 945, 969):
                    raise lab2()
                # <-, line 484
                if not self.slice_from(u"\u03B5\u03C4"):
                    return False
                raise lab1()
            except lab2: pass
            self.cursor = self.limit - v_2
            try:
                # (, line 485
                # [, line 485
                self.ket = self.cursor
                # ], line 485
                self.bra = self.cursor
                # substring, line 485
                if self.find_among_b(GreekStemmer.a_46) == 0:
                    raise lab3()
                # (, line 489
                # <-, line 489
                if not self.slice_from(u"\u03B5\u03C4"):
                    return False
                raise lab1()
            except lab3: pass
            self.cursor = self.limit - v_2
            # [, line 491
            self.ket = self.cursor
        except lab1: pass
        # ], line 491
        self.bra = self.cursor
        # substring, line 491
        if self.find_among_b(GreekStemmer.a_47) == 0:
            return False
        # atlimit, line 491
        if self.cursor > self.limit_backward:
            return False
        # (, line 495
        # <-, line 495
        if not self.slice_from(u"\u03B5\u03C4"):
            return False
        return True

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

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

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

        # unset test1, line 514
        self.B_test1 = False
        # (, line 515
        # [, line 515
        self.ket = self.cursor
        # ], line 515
        self.bra = self.cursor
        # literal, line 515
        if not self.eq_s_b(u"\u03BF\u03BD"):
            return False
        # atlimit, line 515
        if self.cursor > self.limit_backward:
            return False
        # <-, line 515
        if not self.slice_from(u"\u03BF\u03BC\u03B1\u03C3\u03C4"):
            return False
        return True

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

            # unset test1, line 524
            self.B_test1 = False
            # [, line 525
            self.ket = self.cursor
            # ], line 525
            self.bra = self.cursor
            # substring, line 525
            if self.find_among_b(GreekStemmer.a_50) == 0:
                raise lab0()
            # atlimit, line 525
            if self.cursor > self.limit_backward:
                raise lab0()
            # (, line 526
            # <-, line 526
            if not self.slice_from(u"\u03B9\u03B5\u03C3\u03C4"):
                return False
        except lab0: pass
        self.cursor = self.limit - v_1
        # [, line 529
        self.ket = self.cursor
        # literal, line 529
        if not self.eq_s_b(u"\u03B5\u03C3\u03C4\u03B5"):
            return False
        # ], line 529
        self.bra = self.cursor
        # delete, line 530
        if not self.slice_del():
            return False

        # unset test1, line 531
        self.B_test1 = False
        # [, line 532
        self.ket = self.cursor
        # ], line 532
        self.bra = self.cursor
        # substring, line 532
        if self.find_among_b(GreekStemmer.a_51) == 0:
            return False
        # atlimit, line 532
        if self.cursor > self.limit_backward:
            return False
        # (, line 534
        # <-, line 534
        if not self.slice_from(u"\u03B9\u03B5\u03C3\u03C4"):
            return False
        return True

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

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

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

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

        # unset test1, line 562
        self.B_test1 = False
        # or, line 567
        try:
            v_1 = self.limit - self.cursor
            try:
                # (, line 563
                # [, line 563
                self.ket = self.cursor
                # ], line 563
                self.bra = self.cursor
                # substring, line 563
                if self.find_among_b(GreekStemmer.a_56) == 0:
                    raise lab1()
                # (, line 565
                # <-, line 565
                if not self.slice_from(u"\u03BF\u03C5\u03C3"):
                    return False
                raise lab0()
            except lab1: pass
            self.cursor = self.limit - v_1
            # (, line 568
            # [, line 568
            self.ket = self.cursor
            # ], line 568
            self.bra = self.cursor
            # substring, line 568
            if self.find_among_b(GreekStemmer.a_57) == 0:
                return False
            # atlimit, line 568
            if self.cursor > self.limit_backward:
                return False
            # (, line 572
            # <-, line 572
            if not self.slice_from(u"\u03BF\u03C5\u03C3"):
                return False
        except lab0: pass
        return True

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

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

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

        # unset test1, line 604
        self.B_test1 = False
        # [, line 606
        self.ket = self.cursor
        # ], line 606
        self.bra = self.cursor
        # substring, line 606
        if self.find_among_b(GreekStemmer.a_64) == 0:
            return False
        # atlimit, line 606
        if self.cursor > self.limit_backward:
            return False
        # (, line 607
        # <-, line 607
        if not self.slice_from(u"\u03B7\u03C3"):
            return False
        return True

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

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

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

        # unset test1, line 623
        self.B_test1 = False
        # [, line 625
        self.ket = self.cursor
        # ], line 625
        self.bra = self.cursor
        # substring, line 625
        if self.find_among_b(GreekStemmer.a_68) == 0:
            return False
        # atlimit, line 625
        if self.cursor > self.limit_backward:
            return False
        # (, line 626
        # <-, line 626
        if not self.slice_from(u"\u03BF\u03C5\u03BD"):
            return False
        return True

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

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

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

        return True

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

        return True

    def _stem(self):
        # (, line 668
        # backwards, line 669
        self.limit_backward = self.cursor
        self.cursor = self.limit
        # (, line 669
        # do, line 670
        v_1 = self.limit - self.cursor
        # call tolower, line 670
        self.__r_tolower()
        self.cursor = self.limit - v_1
        # call has_min_length, line 671
        if not self.__r_has_min_length():
            return False
        # set test1, line 672
        self.B_test1 = True
        # do, line 673
        v_2 = self.limit - self.cursor
        # call step1, line 673
        self.__r_step1()
        self.cursor = self.limit - v_2
        # do, line 674
        v_3 = self.limit - self.cursor
        # call steps1, line 674
        self.__r_steps1()
        self.cursor = self.limit - v_3
        # do, line 675
        v_4 = self.limit - self.cursor
        # call steps2, line 675
        self.__r_steps2()
        self.cursor = self.limit - v_4
        # do, line 676
        v_5 = self.limit - self.cursor
        # call steps3, line 676
        self.__r_steps3()
        self.cursor = self.limit - v_5
        # do, line 677
        v_6 = self.limit - self.cursor
        # call steps4, line 677
        self.__r_steps4()
        self.cursor = self.limit - v_6
        # do, line 678
        v_7 = self.limit - self.cursor
        # call steps5, line 678
        self.__r_steps5()
        self.cursor = self.limit - v_7
        # do, line 679
        v_8 = self.limit - self.cursor
        # call steps6, line 679
        self.__r_steps6()
        self.cursor = self.limit - v_8
        # do, line 680
        v_9 = self.limit - self.cursor
        # call steps7, line 680
        self.__r_steps7()
        self.cursor = self.limit - v_9
        # do, line 681
        v_10 = self.limit - self.cursor
        # call steps8, line 681
        self.__r_steps8()
        self.cursor = self.limit - v_10
        # do, line 682
        v_11 = self.limit - self.cursor
        # call steps9, line 682
        self.__r_steps9()
        self.cursor = self.limit - v_11
        # do, line 683
        v_12 = self.limit - self.cursor
        # call steps10, line 683
        self.__r_steps10()
        self.cursor = self.limit - v_12
        # do, line 684
        v_13 = self.limit - self.cursor
        # call step2a, line 684
        self.__r_step2a()
        self.cursor = self.limit - v_13
        # do, line 685
        v_14 = self.limit - self.cursor
        # call step2b, line 685
        self.__r_step2b()
        self.cursor = self.limit - v_14
        # do, line 686
        v_15 = self.limit - self.cursor
        # call step2c, line 686
        self.__r_step2c()
        self.cursor = self.limit - v_15
        # do, line 687
        v_16 = self.limit - self.cursor
        # call step2d, line 687
        self.__r_step2d()
        self.cursor = self.limit - v_16
        # do, line 688
        v_17 = self.limit - self.cursor
        # call step3, line 688
        self.__r_step3()
        self.cursor = self.limit - v_17
        # do, line 689
        v_18 = self.limit - self.cursor
        # call step4, line 689
        self.__r_step4()
        self.cursor = self.limit - v_18
        # do, line 690
        v_19 = self.limit - self.cursor
        # call step5a, line 690
        self.__r_step5a()
        self.cursor = self.limit - v_19
        # do, line 691
        v_20 = self.limit - self.cursor
        # call step5b, line 691
        self.__r_step5b()
        self.cursor = self.limit - v_20
        # do, line 692
        v_21 = self.limit - self.cursor
        # call step5c, line 692
        self.__r_step5c()
        self.cursor = self.limit - v_21
        # do, line 693
        v_22 = self.limit - self.cursor
        # call step5d, line 693
        self.__r_step5d()
        self.cursor = self.limit - v_22
        # do, line 694
        v_23 = self.limit - self.cursor
        # call step5e, line 694
        self.__r_step5e()
        self.cursor = self.limit - v_23
        # do, line 695
        v_24 = self.limit - self.cursor
        # call step5f, line 695
        self.__r_step5f()
        self.cursor = self.limit - v_24
        # do, line 696
        v_25 = self.limit - self.cursor
        # call step5g, line 696
        self.__r_step5g()
        self.cursor = self.limit - v_25
        # do, line 697
        v_26 = self.limit - self.cursor
        # call step5h, line 697
        self.__r_step5h()
        self.cursor = self.limit - v_26
        # do, line 698
        v_27 = self.limit - self.cursor
        # call step5j, line 698
        self.__r_step5j()
        self.cursor = self.limit - v_27
        # do, line 699
        v_28 = self.limit - self.cursor
        # call step5i, line 699
        self.__r_step5i()
        self.cursor = self.limit - v_28
        # do, line 700
        v_29 = self.limit - self.cursor
        # call step5k, line 700
        self.__r_step5k()
        self.cursor = self.limit - v_29
        # do, line 701
        v_30 = self.limit - self.cursor
        # call step5l, line 701
        self.__r_step5l()
        self.cursor = self.limit - v_30
        # do, line 702
        v_31 = self.limit - self.cursor
        # call step5m, line 702
        self.__r_step5m()
        self.cursor = self.limit - v_31
        # do, line 703
        v_32 = self.limit - self.cursor
        # call step6, line 703
        self.__r_step6()
        self.cursor = self.limit - v_32
        # do, line 704
        v_33 = self.limit - self.cursor
        # call step7, line 704
        self.__r_step7()
        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
