types = [
    ((9, 49, 16), 0, 'LMT'),
    (10, 0, 'AEST'),
    (11, 1, 'AEDT'),
    (11, 1, 'AEDT'),
    (10, 0, 'AEST')
]
times = [
    ((1, 1, 2, 0, 0), 0),
    ((1895, 8, 31, 14, 10, 44), 1),
    ((1916, 9, 30, 16, 0), 2),
    ((1917, 3, 24, 15, 0), 1),
    ((1941, 12, 31, 16, 0), 2),
    ((1942, 3, 28, 15, 0), 1),
    ((1942, 9, 26, 16, 0), 2),
    ((1943, 3, 27, 15, 0), 1),
    ((1943, 10, 2, 16, 0), 2),
    ((1944, 3, 25, 15, 0), 1),
    ((1967, 9, 30, 16, 0), 3),
    ((1968, 3, 30, 16, 0), 4),
    ((1968, 10, 26, 16, 0), 3),
    ((1969, 3, 8, 16, 0), 4),
    ((1969, 10, 25, 16, 0), 3),
    ((1970, 3, 7, 16, 0), 4),
    ((1970, 10, 24, 16, 0), 3),
    ((1971, 3, 13, 16, 0), 4),
    ((1971, 10, 30, 16, 0), 3),
    ((1972, 2, 26, 16, 0), 4),
    ((1972, 10, 28, 16, 0), 3),
    ((1973, 3, 3, 16, 0), 4),
    ((1973, 10, 27, 16, 0), 3),
    ((1974, 3, 2, 16, 0), 4),
    ((1974, 10, 26, 16, 0), 3),
    ((1975, 3, 1, 16, 0), 4),
    ((1975, 10, 25, 16, 0), 3),
    ((1976, 3, 6, 16, 0), 4),
    ((1976, 10, 30, 16, 0), 3),
    ((1977, 3, 5, 16, 0), 4),
    ((1977, 10, 29, 16, 0), 3),
    ((1978, 3, 4, 16, 0), 4),
    ((1978, 10, 28, 16, 0), 3),
    ((1979, 3, 3, 16, 0), 4),
    ((1979, 10, 27, 16, 0), 3),
    ((1980, 3, 1, 16, 0), 4),
    ((1980, 10, 25, 16, 0), 3),
    ((1981, 2, 28, 16, 0), 4),
    ((1981, 10, 24, 16, 0), 3),
    ((1982, 3, 27, 16, 0), 4),
    ((1982, 10, 30, 16, 0), 3),
    ((1983, 3, 26, 16, 0), 4),
    ((1983, 10, 29, 16, 0), 3),
    ((1984, 3, 3, 16, 0), 4),
    ((1984, 10, 27, 16, 0), 3),
    ((1985, 3, 2, 16, 0), 4),
    ((1985, 10, 26, 16, 0), 3),
    ((1986, 3, 1, 16, 0), 4),
    ((1986, 10, 18, 16, 0), 3),
    ((1987, 3, 14, 16, 0), 4),
    ((1987, 10, 24, 16, 0), 3),
    ((1988, 3, 19, 16, 0), 4),
    ((1988, 10, 29, 16, 0), 3),
    ((1989, 3, 18, 16, 0), 4),
    ((1989, 10, 28, 16, 0), 3),
    ((1990, 3, 17, 16, 0), 4),
    ((1990, 10, 27, 16, 0), 3),
    ((1991, 3, 30, 16, 0), 4),
    ((1991, 10, 5, 16, 0), 3),
    ((1992, 3, 28, 16, 0), 4),
    ((1992, 10, 3, 16, 0), 3),
    ((1993, 3, 27, 16, 0), 4),
    ((1993, 10, 2, 16, 0), 3),
    ((1994, 3, 26, 16, 0), 4),
    ((1994, 10, 1, 16, 0), 3),
    ((1995, 3, 25, 16, 0), 4),
    ((1995, 9, 30, 16, 0), 3),
    ((1996, 3, 30, 16, 0), 4),
    ((1996, 10, 5, 16, 0), 3),
    ((1997, 3, 29, 16, 0), 4),
    ((1997, 10, 4, 16, 0), 3),
    ((1998, 3, 28, 16, 0), 4),
    ((1998, 10, 3, 16, 0), 3),
    ((1999, 3, 27, 16, 0), 4),
    ((1999, 10, 2, 16, 0), 3),
    ((2000, 3, 25, 16, 0), 4),
    ((2000, 8, 26, 16, 0), 3),
    ((2001, 3, 24, 16, 0), 4),
    ((2001, 10, 6, 16, 0), 3),
    ((2002, 3, 30, 16, 0), 4),
    ((2002, 10, 5, 16, 0), 3),
    ((2003, 3, 29, 16, 0), 4),
    ((2003, 10, 4, 16, 0), 3),
    ((2004, 3, 27, 16, 0), 4),
    ((2004, 10, 2, 16, 0), 3),
    ((2005, 3, 26, 16, 0), 4),
    ((2005, 10, 1, 16, 0), 3),
    ((2006, 4, 1, 16, 0), 4),
    ((2006, 9, 30, 16, 0), 3),
    ((2007, 3, 24, 16, 0), 4),
    ((2007, 10, 6, 16, 0), 3),
    ((2008, 4, 5, 16, 0), 4),
    ((2008, 10, 4, 16, 0), 3),
    ((2009, 4, 4, 16, 0), 4),
    ((2009, 10, 3, 16, 0), 3),
    ((2010, 4, 3, 16, 0), 4),
    ((2010, 10, 2, 16, 0), 3),
    ((2011, 4, 2, 16, 0), 4),
    ((2011, 10, 1, 16, 0), 3),
    ((2012, 3, 31, 16, 0), 4),
    ((2012, 10, 6, 16, 0), 3),
    ((2013, 4, 6, 16, 0), 4),
    ((2013, 10, 5, 16, 0), 3),
    ((2014, 4, 5, 16, 0), 4),
    ((2014, 10, 4, 16, 0), 3),
    ((2015, 4, 4, 16, 0), 4),
    ((2015, 10, 3, 16, 0), 3),
    ((2016, 4, 2, 16, 0), 4),
    ((2016, 10, 1, 16, 0), 3),
    ((2017, 4, 1, 16, 0), 4),
    ((2017, 9, 30, 16, 0), 3),
    ((2018, 3, 31, 16, 0), 4),
    ((2018, 10, 6, 16, 0), 3),
    ((2019, 4, 6, 16, 0), 4),
    ((2019, 10, 5, 16, 0), 3),
    ((2020, 4, 4, 16, 0), 4),
    ((2020, 10, 3, 16, 0), 3),
    ((2021, 4, 3, 16, 0), 4),
    ((2021, 10, 2, 16, 0), 3),
    ((2022, 4, 2, 16, 0), 4),
    ((2022, 10, 1, 16, 0), 3),
    ((2023, 4, 1, 16, 0), 4),
    ((2023, 9, 30, 16, 0), 3),
    ((2024, 4, 6, 16, 0), 4),
    ((2024, 10, 5, 16, 0), 3),
    ((2025, 4, 5, 16, 0), 4),
    ((2025, 10, 4, 16, 0), 3),
    ((2026, 4, 4, 16, 0), 4),
    ((2026, 10, 3, 16, 0), 3),
    ((2027, 4, 3, 16, 0), 4),
    ((2027, 10, 2, 16, 0), 3),
    ((2028, 4, 1, 16, 0), 4),
    ((2028, 9, 30, 16, 0), 3),
    ((2029, 3, 31, 16, 0), 4),
    ((2029, 10, 6, 16, 0), 3),
    ((2030, 4, 6, 16, 0), 4),
    ((2030, 10, 5, 16, 0), 3),
    ((2031, 4, 5, 16, 0), 4),
    ((2031, 10, 4, 16, 0), 3),
    ((2032, 4, 3, 16, 0), 4),
    ((2032, 10, 2, 16, 0), 3),
    ((2033, 4, 2, 16, 0), 4),
    ((2033, 10, 1, 16, 0), 3),
    ((2034, 4, 1, 16, 0), 4),
    ((2034, 9, 30, 16, 0), 3),
    ((2035, 3, 31, 16, 0), 4),
    ((2035, 10, 6, 16, 0), 3),
    ((2036, 4, 5, 16, 0), 4),
    ((2036, 10, 4, 16, 0), 3),
    ((2037, 4, 4, 16, 0), 4),
    ((2037, 10, 3, 16, 0), 3)
]
posix = 'AEST-10AEDT,M10.1.0,M4.1.0/3'
