Code:
from datetime import datetime
from dataclasses import dataclass

@dataclass
class OilSpillEvent:
    name: str
    country: str
    date: datetime
    min_tonnage: int
    max_tonnage: int

all_events = [
    OilSpillEvent("Yellowstone River pipeline spill", "United States", datetime(2011, 7, 1, 0, 0), 105, 140),
    OilSpillEvent("Bohai Bay oil spill", "China", datetime(2011, 6, 4, 0, 0), 204, 204),
    OilSpillEvent("Peace River Rainbow pipeline spill", "Canada", datetime(2011, 4, 29, 0, 0), 3800, 3800),
    OilSpillEvent("Mumbai-Uran pipeline spill", "India", datetime(2011, 1, 21, 0, 0), 40, 55),
    OilSpillEvent("Fiume Santo power station", "Italy", datetime(2011, 1, 11, 0, 0), 15, 15),
    OilSpillEvent("Mumbai oil spill / MV MSC Chitra and MV Khalijia 3", "India", datetime(2010, 8, 7, 0, 0), 400, 800),
    OilSpillEvent("Barataria Bay oil spill", "United States", datetime(2010, 7, 27, 0, 0), 23, 45),
    OilSpillEvent("Talmadge Creek oil spill", "United States", datetime(2010, 7, 26, 0, 0), 2800, 3250),
    OilSpillEvent("Xingang Port oil spill", "China", datetime(2010, 7, 16, 0, 0), 1500, 90000),
    OilSpillEvent("Red Butte Creek oil spill", "United States", datetime(2010, 6, 11, 0, 0), 65, 107),
    OilSpillEvent("Trans-Alaska Pipeline spill", "United States", datetime(2010, 5, 25, 0, 0), 400, 1200),
    OilSpillEvent("MT-Bunga Kelana 3", "Singapore", datetime(2010, 5, 25, 0, 0), 2000, 2500),
    OilSpillEvent("2010 ExxonMobil oil spill", "Nigeria", datetime(2010, 5, 1, 0, 0), 3246, 95500),
    OilSpillEvent("Deepwater Horizon", "United States", datetime(2010, 4, 20, 0, 0), 492000, 627000),
    OilSpillEvent("2010 Great Barrier Reef oil spill / MV-Shen Neng 1", "Australia", datetime(2010, 4, 3, 0, 0), 3, 4),
    OilSpillEvent("2010 Port Arthur oil spill", "United States", datetime(2010, 1, 23, 0, 0), 1500, 1500),
    OilSpillEvent("Yellow River oil spill", "China", datetime(2010, 1, 5, 0, 0), 130, 130),
    OilSpillEvent("Montara oil spill", "Australia", datetime(2009, 8, 21, 0, 0), 4000, 30000),
    OilSpillEvent("Full City oil spill", "Norway", datetime(2009, 7, 31, 0, 0), 200, 200),
    OilSpillEvent("2009 Queensland oil spill", "Australia", datetime(2009, 3, 10, 0, 0), 230, 260),
    OilSpillEvent("West Cork oil spill", "Ireland", datetime(2009, 2, 1, 0, 0), 300, 300),
    OilSpillEvent("2008 New Orleans oil spill", "United States", datetime(2008, 7, 28, 0, 0), 8800, 8800),
    OilSpillEvent("2007 Statfjord oil spill", "Norway", datetime(2007, 12, 12, 0, 0), 4000, 4000),
    OilSpillEvent("2007 Korea oil spill", "South Korea", datetime(2007, 12, 7, 0, 0), 10800, 10800),
    OilSpillEvent("Kerch Strait oil spill", "Ukraine", datetime(2007, 11, 11, 0, 0), 1000, 1000),
    OilSpillEvent("COSCO Busan oil spill", "United States", datetime(2007, 11, 7, 0, 0), 188, 188),
    OilSpillEvent("Kab 101", "Mexico", datetime(2007, 10, 23, 0, 0), 1869, 1869),
    OilSpillEvent("Guimaras oil spill", "Philippines", datetime(2006, 8, 11, 0, 0), 172, 1540),
    OilSpillEvent("Jiyeh power station oil spill", "Lebanon", datetime(2006, 7, 14, 0, 0), 20000, 30000),
    OilSpillEvent("Citgo refinery oil spill", "United States", datetime(2006, 6, 19, 0, 0), 6500, 6500),
    OilSpillEvent("Prudhoe Bay oil spill", "United States", datetime(2006, 3, 2, 0, 0), 653, 689),
    OilSpillEvent("Bass Enterprises (Hurricane Katrina)", "United States", datetime(2005, 8, 30, 0, 0), 12000, 12000),
    OilSpillEvent("Shell (Hurricane Katrina)", "United States", datetime(2005, 8, 30, 0, 0), 3400, 3400),
    OilSpillEvent("Chevron (Hurricane Katrina)", "United States", datetime(2005, 8, 30, 0, 0), 3200, 3200),
    OilSpillEvent("Murphy Oil USA refinery spill (Hurricane Katrina)", "United States", datetime(2005, 8, 30, 0, 0), 2660, 3410),
    OilSpillEvent("Bass Enterprises (Hurricane Katrina)", "United States", datetime(2005, 8, 30, 0, 0), 1500, 1500),
    OilSpillEvent("Chevron (Hurricane Katrina)", "United States", datetime(2005, 8, 30, 0, 0), 170, 170),
    OilSpillEvent("Venice Energy Services Company (Hurricane Katrina)", "United States", datetime(2005, 8, 30, 0, 0), 81, 81),
    OilSpillEvent("Shell Pipeline Oil (Hurricane Katrina)", "United States", datetime(2005, 8, 30, 0, 0), 44, 44),
    OilSpillEvent("Sundown Energy (Hurricane Katrina)", "United States", datetime(2005, 8, 30, 0, 0), 42, 42),
    OilSpillEvent("MV-Selendang Ayu", "United States", datetime(2004, 12, 8, 0, 0), 1560, 1560),
    OilSpillEvent("Athos 1", "United States", datetime(2004, 11, 26, 0, 0), 860, 860),
    OilSpillEvent("MP-80 Delta 20 pipeline (Hurricane Ivan)", "United States", datetime(2004, 9, 16, 0, 0), 963, 963),
    OilSpillEvent("MP-69 Nakika 18 & MP-151 Nakika 18 pipeline (Hurricane Ivan)", "United States", datetime(2004, 9, 16, 0, 0), 618, 618),
    OilSpillEvent("Chevron-Texaco tank collapse (Hurricane Ivan)", "United States", datetime(2004, 9, 16, 0, 0), 423, 423),
    OilSpillEvent("Tasman Spirit", "Pakistan", datetime(2003, 7, 28, 0, 0), 28000, 30000),
    OilSpillEvent("Bouchard No. 120", "United States", datetime(2003, 4, 27, 0, 0), 320, 320),
    OilSpillEvent("Prestige oil spill", "Spain", datetime(2002, 11, 13, 0, 0), 63000, 63000),
    OilSpillEvent("Limburg (bombing)", "Yemen", datetime(2002, 10, 6, 0, 0), 12200, 12200),
    OilSpillEvent("Manguinhos refinery", "Brazil", datetime(2001, 11, 23, 0, 0), 34, 97),
    OilSpillEvent("Trans-Alaska Pipeline gunshot spill", "United States", datetime(2001, 10, 4, 0, 0), 932, 932),
    OilSpillEvent("Petrobras 36", "Brazil", datetime(2001, 3, 15, 0, 0), 274, 274),
    OilSpillEvent("Amorgos oil spill", "Taiwan", datetime(2001, 1, 14, 0, 0), 1150, 1150),
    OilSpillEvent("Jessica", "Ecuador", datetime(2001, 1, 1, 0, 0), 568, 568),
    OilSpillEvent("Pine River", "Canada", datetime(2000, 8, 1, 0, 0), 850, 850),
    OilSpillEvent("Project Deep Spill", "Norway", datetime(2000, 6, 1, 0, 0), 100, 100),
    OilSpillEvent("Treasure", "South Africa", datetime(2000, 6, 1, 0, 0), 1400, 1400),
    OilSpillEvent("Petrobras pipeline", "Brazil", datetime(2000, 1, 1, 0, 0), 1100, 1100),
    OilSpillEvent("Erika", "France", datetime(1999, 12, 12, 0, 0), 15000, 25000),
    OilSpillEvent("MV New Carissa", "United States", datetime(1999, 2, 4, 0, 0), 230, 230),
    OilSpillEvent("Mobil Nigeria oil spill", "Nigeria", datetime(1998, 1, 12, 0, 0), 5500, 5500),
    OilSpillEvent("Nakhodka", "Japan", datetime(1997, 12, 1, 0, 0), 6240, 6240),
    OilSpillEvent("Julie N.", "United States", datetime(1996, 9, 27, 0, 0), 586, 586),
    OilSpillEvent("Sea Empress", "United Kingdom", datetime(1996, 2, 15, 0, 0), 40000, 72000),
    OilSpillEvent("North Cape", "United States", datetime(1996, 1, 19, 0, 0), 2500, 2500),
    OilSpillEvent("Seki oil spill", "United Arab Emirates", datetime(1994, 3, 31, 0, 0), 15900, 15900),
    OilSpillEvent("Morris J. Berman oil spill", "Puerto Rico", datetime(1994, 1, 7, 0, 0), 2600, 2600),
    OilSpillEvent("MV-Braer", "United Kingdom", datetime(1993, 1, 5, 0, 0), 85000, 85000),
    OilSpillEvent("Aegean Sea", "Spain", datetime(1992, 12, 3, 0, 0), 74000, 74000),
    OilSpillEvent("Katina P", "Mozambique", datetime(1992, 4, 26, 0, 0), 72000, 72000),
    OilSpillEvent("Fergana Valley", "Uzbekistan", datetime(1992, 3, 2, 0, 0), 285000, 285000),
    OilSpillEvent("Kirki", "Australia", datetime(1991, 7, 21, 0, 0), 17280, 17280),
    OilSpillEvent("ABT Summer", "Angola", datetime(1991, 5, 28, 0, 0), 260000, 260000),
    OilSpillEvent("MT-Haven", "Italy", datetime(1991, 4, 11, 0, 0), 144000, 144000),
    OilSpillEvent("Gulf War oil spill", "Iraq", datetime(1991, 1, 23, 0, 0), 270000, 820000),
    OilSpillEvent("Mega Borg", "United States", datetime(1990, 6, 8, 0, 0), 16499, 16501),
    OilSpillEvent("American Trader", "United States", datetime(1990, 2, 7, 0, 0), 979, 981),
    OilSpillEvent("Khark 5", "Spain", datetime(1989, 12, 19, 0, 0), 70000, 80000),
    OilSpillEvent("Presidente Rivera", "United States", datetime(1989, 6, 24, 0, 0), 993, 993),
    OilSpillEvent("Exxon Valdez", "United States", datetime(1989, 3, 24, 0, 0), 37000, 104000),
    OilSpillEvent("Odyssey", "Canada", datetime(1988, 11, 10, 0, 0), 132000, 132000),
    OilSpillEvent("Ashland oil spill", "United States", datetime(1988, 1, 2, 0, 0), 10000, 10000),
    OilSpillEvent("Nova", "Iran", datetime(1985, 12, 6, 0, 0), 70000, 70000),
    OilSpillEvent("Grand Eagle", "United States", datetime(1985, 9, 28, 0, 0), 1400, 1400),
    OilSpillEvent("SS Mobil Oil", "United States", datetime(1984, 3, 19, 0, 0), 550, 650),
    OilSpillEvent("Castillo de Bellver", "South Africa", datetime(1983, 8, 6, 0, 0), 252000, 252000),
    OilSpillEvent("Nowruz Field Platform", "Iran", datetime(1983, 2, 4, 0, 0), 260000, 260000),
    OilSpillEvent("Tanio", "France", datetime(1980, 3, 7, 0, 0), 13500, 13500),
    OilSpillEvent("Irenes Serenade", "Greece", datetime(1980, 2, 23, 0, 0), 100000, 100000),
    OilSpillEvent("MT-Independentsa", "Turkey", datetime(1979, 11, 15, 0, 0), 95000, 95000),
    OilSpillEvent("Burmah Agate", "United States", datetime(1979, 11, 1, 0, 0), 8440, 8440),
    OilSpillEvent("Atlantic Empress / Aegean Captain", "Trinidad and Tobago", datetime(1979, 7, 19, 0, 0), 287000, 287000),
    OilSpillEvent("Ixtoc I oil spill", "Mexico", datetime(1979, 6, 3, 0, 0), 454000, 480000),
    OilSpillEvent("Betelgeuse", "Ireland", datetime(1979, 1, 8, 0, 0), 64000, 64000),
    OilSpillEvent("Amoco Cadiz", "France", datetime(1978, 3, 16, 0, 0), 223000, 227000),
    OilSpillEvent("Trans-Alaska Pipeline sabotage by explosives", "United States", datetime(1978, 2, 15, 0, 0), 2162, 2162),
    OilSpillEvent("Venpet / Venoil collision", "South Africa", datetime(1977, 12, 16, 0, 0), 26600, 30500),
    OilSpillEvent("Ekofisk oil field", "Norway", datetime(1977, 4, 22, 0, 0), 27600, 27600),
    OilSpillEvent("Hawaiian Patriot", "United States", datetime(1977, 2, 26, 0, 0), 95000, 95000),
    OilSpillEvent("Borag", "Taiwan", datetime(1977, 2, 7, 0, 0), 34000, 34000),
    OilSpillEvent("Argo Merchant", "United States", datetime(1976, 12, 15, 0, 0), 25000, 28000),
    OilSpillEvent("NEPCO 140 oil spill", "United States", datetime(1976, 6, 23, 0, 0), 1000, 1000),
    OilSpillEvent("Urquiola", "Spain", datetime(1976, 5, 12, 0, 0), 100000, 100000),
    OilSpillEvent("Niger Delta", "Nigeria", datetime(1976, 1, 1, 0, 0), 258000, 328000),
    OilSpillEvent("Corinthos", "United States", datetime(1975, 1, 31, 0, 0), 35700, 35700),
    OilSpillEvent("Jakob Maersk", "Portugal", datetime(1975, 1, 29, 0, 0), 88000, 88000),
    OilSpillEvent("VLCC-Metula", "Chile", datetime(1974, 8, 9, 0, 0), 50000, 51000),
    OilSpillEvent("Sea Star", "Iran", datetime(1972, 12, 19, 0, 0), 115000, 115000),
    OilSpillEvent("Oswego-Guardian / Texanita collision", "South Africa", datetime(1972, 8, 21, 0, 0), 10000, 10000),
    OilSpillEvent("Arizona Standard / Oregon Standard collision", "United States", datetime(1971, 1, 17, 0, 0), 2700, 2700),
    OilSpillEvent("Othello", "Sweden", datetime(1970, 3, 20, 0, 0), 50000, 60000),
    OilSpillEvent("1969 Santa Barbara oil spill", "United States", datetime(1969, 1, 28, 0, 0), 10000, 14000),
    OilSpillEvent("Torrey Canyon", "United Kingdom", datetime(1967, 3, 18, 0, 0), 80000, 119000),
    OilSpillEvent("African Queen oil spill", "United States", datetime(1958, 12, 30, 0, 0), 21000, 21000),
    OilSpillEvent("Avila Beach pipeline", "United States", datetime(1950, 3, 1, 0, 0), 1300, 1300),
    OilSpillEvent("Guadalupe Oil Field", "United States", datetime(1950, 2, 1, 0, 0), 29000, 29000),
    OilSpillEvent("Greenpoint, Brooklyn oil spill", "United States", datetime(1940, 7, 1, 0, 0), 55200, 97400),
    OilSpillEvent("SS-Frank H. Buck / SS-President Coolidge collision", "United States", datetime(1937, 3, 6, 0, 0), 8870, 8870),
    OilSpillEvent("Lakeview Gusher", "United States", datetime(1910, 3, 14, 0, 0), 1230000, 1230000),
    OilSpillEvent("Thomas W. Lawson", "United Kingdom", datetime(1907, 12, 14, 0, 0), 7400, 7400),
]
Last modified: Friday, 22 March 2024, 15:31