types = [
    ((-8, -12, -28), 0, 'LMT'),
    (-7, 1, 'PDT'),
    (-8, 0, 'PST'),
    (-7, 1, 'PWT'),
    (-7, 1, 'PPT')
]
times = [
    ((1, 1, 2, 0, 0), 0),
    ((1884, 1, 1, 8, 12, 28), 2),
    ((1918, 4, 14, 10, 0), 1),
    ((1918, 10, 27, 9, 0), 2),
    ((1942, 2, 9, 10, 0), 3),
    ((1945, 8, 14, 23, 0), 4),
    ((1945, 9, 30, 9, 0), 2),
    ((1946, 4, 28, 10, 0), 1),
    ((1946, 10, 13, 9, 0), 2),
    ((1947, 4, 27, 10, 0), 1),
    ((1947, 9, 28, 9, 0), 2),
    ((1948, 4, 25, 10, 0), 1),
    ((1948, 9, 26, 9, 0), 2),
    ((1949, 4, 24, 10, 0), 1),
    ((1949, 9, 25, 9, 0), 2),
    ((1950, 4, 30, 10, 0), 1),
    ((1950, 9, 24, 9, 0), 2),
    ((1951, 4, 29, 10, 0), 1),
    ((1951, 9, 30, 9, 0), 2),
    ((1952, 4, 27, 10, 0), 1),
    ((1952, 9, 28, 9, 0), 2),
    ((1953, 4, 26, 10, 0), 1),
    ((1953, 9, 27, 9, 0), 2),
    ((1954, 4, 25, 10, 0), 1),
    ((1954, 9, 26, 9, 0), 2),
    ((1955, 4, 24, 10, 0), 1),
    ((1955, 9, 25, 9, 0), 2),
    ((1956, 4, 29, 10, 0), 1),
    ((1956, 9, 30, 9, 0), 2),
    ((1957, 4, 28, 10, 0), 1),
    ((1957, 9, 29, 9, 0), 2),
    ((1958, 4, 27, 10, 0), 1),
    ((1958, 9, 28, 9, 0), 2),
    ((1959, 4, 26, 10, 0), 1),
    ((1959, 9, 27, 9, 0), 2),
    ((1960, 4, 24, 10, 0), 1),
    ((1960, 9, 25, 9, 0), 2),
    ((1961, 4, 30, 10, 0), 1),
    ((1961, 9, 24, 9, 0), 2),
    ((1962, 4, 29, 10, 0), 1),
    ((1962, 10, 28, 9, 0), 2),
    ((1963, 4, 28, 10, 0), 1),
    ((1963, 10, 27, 9, 0), 2),
    ((1964, 4, 26, 10, 0), 1),
    ((1964, 10, 25, 9, 0), 2),
    ((1965, 4, 25, 10, 0), 1),
    ((1965, 10, 31, 9, 0), 2),
    ((1966, 4, 24, 10, 0), 1),
    ((1966, 10, 30, 9, 0), 2),
    ((1967, 4, 30, 10, 0), 1),
    ((1967, 10, 29, 9, 0), 2),
    ((1968, 4, 28, 10, 0), 1),
    ((1968, 10, 27, 9, 0), 2),
    ((1969, 4, 27, 10, 0), 1),
    ((1969, 10, 26, 9, 0), 2),
    ((1970, 4, 26, 10, 0), 1),
    ((1970, 10, 25, 9, 0), 2),
    ((1971, 4, 25, 10, 0), 1),
    ((1971, 10, 31, 9, 0), 2),
    ((1972, 4, 30, 10, 0), 1),
    ((1972, 10, 29, 9, 0), 2),
    ((1973, 4, 29, 10, 0), 1),
    ((1973, 10, 28, 9, 0), 2),
    ((1974, 4, 28, 10, 0), 1),
    ((1974, 10, 27, 9, 0), 2),
    ((1975, 4, 27, 10, 0), 1),
    ((1975, 10, 26, 9, 0), 2),
    ((1976, 4, 25, 10, 0), 1),
    ((1976, 10, 31, 9, 0), 2),
    ((1977, 4, 24, 10, 0), 1),
    ((1977, 10, 30, 9, 0), 2),
    ((1978, 4, 30, 10, 0), 1),
    ((1978, 10, 29, 9, 0), 2),
    ((1979, 4, 29, 10, 0), 1),
    ((1979, 10, 28, 9, 0), 2),
    ((1980, 4, 27, 10, 0), 1),
    ((1980, 10, 26, 9, 0), 2),
    ((1981, 4, 26, 10, 0), 1),
    ((1981, 10, 25, 9, 0), 2),
    ((1982, 4, 25, 10, 0), 1),
    ((1982, 10, 31, 9, 0), 2),
    ((1983, 4, 24, 10, 0), 1),
    ((1983, 10, 30, 9, 0), 2),
    ((1984, 4, 29, 10, 0), 1),
    ((1984, 10, 28, 9, 0), 2),
    ((1985, 4, 28, 10, 0), 1),
    ((1985, 10, 27, 9, 0), 2),
    ((1986, 4, 27, 10, 0), 1),
    ((1986, 10, 26, 9, 0), 2),
    ((1987, 4, 5, 10, 0), 1),
    ((1987, 10, 25, 9, 0), 2),
    ((1988, 4, 3, 10, 0), 1),
    ((1988, 10, 30, 9, 0), 2),
    ((1989, 4, 2, 10, 0), 1),
    ((1989, 10, 29, 9, 0), 2),
    ((1990, 4, 1, 10, 0), 1),
    ((1990, 10, 28, 9, 0), 2),
    ((1991, 4, 7, 10, 0), 1),
    ((1991, 10, 27, 9, 0), 2),
    ((1992, 4, 5, 10, 0), 1),
    ((1992, 10, 25, 9, 0), 2),
    ((1993, 4, 4, 10, 0), 1),
    ((1993, 10, 31, 9, 0), 2),
    ((1994, 4, 3, 10, 0), 1),
    ((1994, 10, 30, 9, 0), 2),
    ((1995, 4, 2, 10, 0), 1),
    ((1995, 10, 29, 9, 0), 2),
    ((1996, 4, 7, 10, 0), 1),
    ((1996, 10, 27, 9, 0), 2),
    ((1997, 4, 6, 10, 0), 1),
    ((1997, 10, 26, 9, 0), 2),
    ((1998, 4, 5, 10, 0), 1),
    ((1998, 10, 25, 9, 0), 2),
    ((1999, 4, 4, 10, 0), 1),
    ((1999, 10, 31, 9, 0), 2),
    ((2000, 4, 2, 10, 0), 1),
    ((2000, 10, 29, 9, 0), 2),
    ((2001, 4, 1, 10, 0), 1),
    ((2001, 10, 28, 9, 0), 2),
    ((2002, 4, 7, 10, 0), 1),
    ((2002, 10, 27, 9, 0), 2),
    ((2003, 4, 6, 10, 0), 1),
    ((2003, 10, 26, 9, 0), 2),
    ((2004, 4, 4, 10, 0), 1),
    ((2004, 10, 31, 9, 0), 2),
    ((2005, 4, 3, 10, 0), 1),
    ((2005, 10, 30, 9, 0), 2),
    ((2006, 4, 2, 10, 0), 1),
    ((2006, 10, 29, 9, 0), 2),
    ((2007, 3, 11, 10, 0), 1),
    ((2007, 11, 4, 9, 0), 2),
    ((2008, 3, 9, 10, 0), 1),
    ((2008, 11, 2, 9, 0), 2),
    ((2009, 3, 8, 10, 0), 1),
    ((2009, 11, 1, 9, 0), 2),
    ((2010, 3, 14, 10, 0), 1),
    ((2010, 11, 7, 9, 0), 2),
    ((2011, 3, 13, 10, 0), 1),
    ((2011, 11, 6, 9, 0), 2),
    ((2012, 3, 11, 10, 0), 1),
    ((2012, 11, 4, 9, 0), 2),
    ((2013, 3, 10, 10, 0), 1),
    ((2013, 11, 3, 9, 0), 2),
    ((2014, 3, 9, 10, 0), 1),
    ((2014, 11, 2, 9, 0), 2),
    ((2015, 3, 8, 10, 0), 1),
    ((2015, 11, 1, 9, 0), 2),
    ((2016, 3, 13, 10, 0), 1),
    ((2016, 11, 6, 9, 0), 2),
    ((2017, 3, 12, 10, 0), 1),
    ((2017, 11, 5, 9, 0), 2),
    ((2018, 3, 11, 10, 0), 1),
    ((2018, 11, 4, 9, 0), 2),
    ((2019, 3, 10, 10, 0), 1),
    ((2019, 11, 3, 9, 0), 2),
    ((2020, 3, 8, 10, 0), 1),
    ((2020, 11, 1, 9, 0), 2),
    ((2021, 3, 14, 10, 0), 1),
    ((2021, 11, 7, 9, 0), 2),
    ((2022, 3, 13, 10, 0), 1),
    ((2022, 11, 6, 9, 0), 2),
    ((2023, 3, 12, 10, 0), 1),
    ((2023, 11, 5, 9, 0), 2),
    ((2024, 3, 10, 10, 0), 1),
    ((2024, 11, 3, 9, 0), 2),
    ((2025, 3, 9, 10, 0), 1),
    ((2025, 11, 2, 9, 0), 2),
    ((2026, 3, 8, 10, 0), 1),
    ((2026, 11, 1, 9, 0), 2),
    ((2027, 3, 14, 10, 0), 1),
    ((2027, 11, 7, 9, 0), 2),
    ((2028, 3, 12, 10, 0), 1),
    ((2028, 11, 5, 9, 0), 2),
    ((2029, 3, 11, 10, 0), 1),
    ((2029, 11, 4, 9, 0), 2),
    ((2030, 3, 10, 10, 0), 1),
    ((2030, 11, 3, 9, 0), 2),
    ((2031, 3, 9, 10, 0), 1),
    ((2031, 11, 2, 9, 0), 2),
    ((2032, 3, 14, 10, 0), 1),
    ((2032, 11, 7, 9, 0), 2),
    ((2033, 3, 13, 10, 0), 1),
    ((2033, 11, 6, 9, 0), 2),
    ((2034, 3, 12, 10, 0), 1),
    ((2034, 11, 5, 9, 0), 2),
    ((2035, 3, 11, 10, 0), 1),
    ((2035, 11, 4, 9, 0), 2),
    ((2036, 3, 9, 10, 0), 1),
    ((2036, 11, 2, 9, 0), 2),
    ((2037, 3, 8, 10, 0), 1),
    ((2037, 11, 1, 9, 0), 2)
]
posix = 'PST8PDT,M3.2.0,M11.1.0'
