"""Hand-curated table of Phanerozoic (and latest Ediacaran) innovations with a physiological oxygen, temperature or CO2 requirement, used in Part 2. Every row has lit_age, lit_old, lit_young : first fossil evidence from the literature (Ma) with a range that covers the dating uncertainty of that first evidence (NOT the uncertainty of the true origin) alt_old : an older contested claim (tracks, isolated scales, molecular clock), used only in the 'old claims' sensitivity run verified : A = abstract / primary text read in this session (Europe PMC or publisher page); S = confirmed by a web-search summary in this session; P = date taken from the Paleobiology Database stage assignment; M = textbook value recalled from memory and NOT independently verified in this session (flagged in the report) pbdb, pbdb_window : Paleobiology Database taxa whose oldest cleaned occurrence gives an independent, reproducible first appearance, and the age window (Ma) of the occurrence download pbdb_exclude : accepted names removed before taking the first appearance, with the reason req : the physiological requirement that links the innovation to an environmental curve o2_class : 'high' (active, large, aerobic: the innovations for which an oxygen gate has been proposed), 'plant' (land-plant grade innovations, which cause as much as follow oxygen), 'other' (CO2 or temperature) The list was fixed before any test statistic was computed (see report, section Method). """ INNOVATIONS = [ dict(id="ediacaran_macro", name="Macroscopic complex organisms (Avalon rangeomorphs)", lit_age=574, lit_old=575, lit_young=571, alt_old=None, verified="A", o2_class="high", lit_source="Lole Durbin et al. 2026 Sci Adv (animal body fossils to 574 Ma); Avalon assemblage, " "Drook Formation", req="size > 1 cm with diffusion-limited tissues (Catling et al. 2005: > ~1e3 Pa O2)", pbdb=None), dict(id="motile_bilaterian", name="Motile macroscopic bilaterians (Kimberella, grazing traces)", lit_age=558, lit_old=560, lit_young=555, alt_old=None, verified="M", o2_class="high", lit_source="White Sea assemblage, U-Pb 555.3 +/- 0.3 Ma (Martin et al. 2000 Science 288:841); " "Dahl et al. 2010 PNAS give 550-560 Ma for large motile bilaterians", req="muscular locomotion; Dahl et al. 2010 tie it to the Ediacaran ocean oxygenation", pbdb=None), dict(id="skeleton", name="Biomineralised animal skeletons (Cloudina)", lit_age=550, lit_old=551, lit_young=547, alt_old=810, verified="M", o2_class="high", lit_source="Cloudina, Nama Group and Dengying Fm, ~550-548 Ma (Knoll 2003 Rev Mineral Geochem 54:329); " "alt: 810 Ma apatitic scale microfossils (Cohen et al. 2017 Sci Adv), protistan", req="biomineral secretion is metabolically costly; collagen synthesis needs O2 (Towe 1970)", pbdb=None), dict(id="burrowing", name="Vertical bioturbation (Treptichnus pedum)", lit_age=539, lit_old=541, lit_young=536, alt_old=None, verified="M", o2_class="high", lit_source="Base of the Cambrian defined by T. pedum, 538.8 Ma (ICS chart; Linnemann et al. 2019)", req="infaunal activity needs oxygenated bottom water", pbdb=None), dict(id="reefs", name="Skeletal metazoan reef builders (archaeocyaths)", lit_age=525, lit_old=529, lit_young=521, alt_old=548, verified="P", o2_class="high", lit_source="Archaeocyatha first appear in Cambrian Stage 2 (Tommotian); alt: Cloudina reefs ~548 Ma", req="skeletal aerobic suspension feeders", pbdb=["Archaeocyatha"], pbdb_window=(545, 505), pbdb_exclude={}), dict(id="eyes", name="Image-forming compound eyes (trilobites)", lit_age=521, lit_old=530, lit_young=518, alt_old=None, verified="M", o2_class="high", lit_source="Oldest trilobites ~521 Ma (base Cambrian Stage 3); Schmidtiellus compound eye " "(Schoenemann et al. 2017 PNAS 114:13489)", req="vision and neural tissue are metabolically expensive; linked to predation (Sperling et al. 2013)", pbdb=None), dict(id="predators", name="Large raptorial predators (radiodonts)", lit_age=519, lit_old=521, lit_young=516, alt_old=550, verified="P", o2_class="high", lit_source="Radiodonta, Cambrian Stage 3 (Chengjiang ~518 Ma); alt: bore holes in Cloudina ~550 Ma " "(Bengtson & Zhao 1992 Science)", req="carnivory is suppressed at low O2 (Sperling et al. 2013 PNAS)", pbdb=["Radiodonta"], pbdb_window=(535, 500), pbdb_exclude={}), dict(id="vertebrates", name="Vertebrates (active swimming chordates with gills)", lit_age=518, lit_old=521, lit_young=516, alt_old=None, verified="P", o2_class="high", lit_source="Myllokunmingia and Haikouichthys, Chengjiang, Cambrian Stage 3", req="high aerobic scope", pbdb=["Myllokunmingia", "Haikouichthys"], pbdb_window=(535, 500), pbdb_exclude={}), dict(id="land_plants", name="Land plants (embryophyte cryptospores)", lit_age=472, lit_old=473, lit_young=471, alt_old=515, verified="A", o2_class="plant", lit_source="Dapingian cryptospores, c. 473-471 Ma (Rubinstein et al. 2010 New Phytol 188:365); " "alt: molecular clock, Cambrian (Morris et al. 2018 PNAS)", req="UV screening by an ozone layer; desiccation and temperature tolerance", pbdb=None), dict(id="jaws", name="Jawed vertebrates (gnathostome teeth)", lit_age=439, lit_old=440.5, lit_young=436, alt_old=465, verified="A", o2_class="high", lit_source="Qianodus duplicis, early Silurian ~439 Ma (Andreev et al. 2022 Nature 609:964); " "alt: Ordovician scales (Areyongalepis, Darriwilian)", req="active predation", pbdb=["Gnathostomata"], pbdb_window=(480, 425), pbdb_exclude={"Areyongalepis": "isolated Ordovician scales of uncertain gnathostome affinity (alt claim)", "Pentlandia": "Devonian lungfish genus entered for the Aeronian Solvik Formation of Norway: " "a database misassignment (found by the referee); the first appearance is " "then Qianodus duplicis in the same stage, so the date is unchanged"}), dict(id="vascular_plants", name="Vascular plants (Cooksonia)", lit_age=432, lit_old=433, lit_young=427, alt_old=450, verified="M", o2_class="plant", lit_source="Cooksonia, Wenlock ~432 Ma (Libertin et al. 2018 Nat Plants 4:269); alt: Late Ordovician " "trilete spores", req="lignified water-conducting tissue (lignin synthesis requires O2)", pbdb=["Cooksonia"], pbdb_window=(445, 405), pbdb_exclude={}), dict(id="land_arthropods", name="Air-breathing land arthropods (myriapods, arachnids)", lit_age=425, lit_old=428, lit_young=420, alt_old=450, verified="S", o2_class="high", lit_source="Kampecaris obanensis 425 Ma (Brookfield et al. 2021 Hist Biol); alt: Late Ordovician " "trackways and molecular clocks", req="tracheal or book-lung breathing of atmospheric O2", pbdb=["Myriapoda", "Trigonotarbida"], pbdb_window=(445, 400), pbdb_exclude={}), dict(id="large_fish", name="Large (about 1 m) predatory fish", lit_age=423, lit_old=425, lit_young=421, alt_old=None, verified="A", o2_class="high", lit_source="Megamastax amblyodus, late Ludlow ~423 Ma (Choo et al. 2014 Sci Rep 4:5242)", req="large active body; Dahl et al. 2010 tie large predatory fish to the Devonian O2 rise", pbdb=None), dict(id="hexapods", name="Hexapods (Rhynie chert springtail)", lit_age=407, lit_old=412, lit_young=405, alt_old=440, verified="P", o2_class="high", lit_source="Rhyniella praecursor, Rhynie chert, Pragian; alt: molecular clocks (Ordovician-Silurian)", req="tracheal breathing", pbdb=["Hexapoda"], pbdb_window=(430, 380), pbdb_exclude={}), dict(id="wood", name="Wood (secondary xylem)", lit_age=407, lit_old=409, lit_young=397, alt_old=None, verified="A", o2_class="plant", lit_source="Two Early Devonian plants, 407 to 397 Ma (Gerrienne et al. 2011 Science 333:837)", req="lignin biosynthesis requires O2", pbdb=None), dict(id="tetrapods", name="Limbed vertebrates (tetrapods)", lit_age=375, lit_old=380, lit_young=372, alt_old=393, verified="A", o2_class="high", lit_source="Earliest body fossils late Frasnian; alt: Zachelmie trackways, Eifelian, ~18 Myr older " "(Niedzwiedzki et al. 2010 Nature 463:43)", req="air breathing and terrestrial locomotion (Romer's Gap low-oxygen hypothesis, Ward et al. 2006)", pbdb=["Tetrapoda"], pbdb_window=(400, 355), pbdb_exclude={"Dipnoa": "lungfish misfiled under Tetrapoda in the taxonomy download"}), dict(id="forests", name="Trees and forests", lit_age=390, lit_old=393, lit_young=385, alt_old=None, verified="A", o2_class="plant", lit_source="Calamophyton forest, Hangman Sandstone, Eifelian ~390 Ma (Davies et al. 2024 J Geol Soc); " "Cairo NY, mid Givetian (Stein et al. 2020 Curr Biol 30:421)", req="lignin; deep roots; drives O2 and CO2", pbdb=["Wattieza", "Eospermatopteris", "Calamophyton", "Archaeopteris"], pbdb_window=(400, 370), pbdb_exclude={}), dict(id="seeds", name="Seeds", lit_age=365, lit_old=372, lit_young=359, alt_old=385, verified="P", o2_class="plant", lit_source="Moresnetia and Elkinsia, Famennian; alt: Runcaria proto-ovule, Givetian ~385 Ma " "(Gerrienne et al. 2004 Science 306:856)", req="reproduction independent of free water", pbdb=["Moresnetia", "Elkinsia"], pbdb_window=(390, 350), pbdb_exclude={}), dict(id="insect_flight", name="Powered flight in insects (Pterygota)", lit_age=324, lit_old=327, lit_young=322, alt_old=407, verified="S", o2_class="high", lit_source="Delitzschala bitterfeldensis, Arnsbergian (Brauckmann & Schneider 1996); alt: Rhyniognatha " "mandibles interpreted as pterygote (Engel & Grimaldi 2004 Nature 427:627)", req="flight muscle has the highest mass-specific O2 demand known; denser air aids lift (Dudley 1998)", pbdb=["Pterygota"], pbdb_window=(340, 310), pbdb_exclude={"Schizophora": "Devonian record of a Cenozoic fly clade: a database misassignment"}), dict(id="giant_insects", name="Giant insects (griffinflies, Meganisoptera)", lit_age=320, lit_old=323.4, lit_young=315, alt_old=None, verified="P", o2_class="high", lit_source="Meganisoptera first appear in the Bashkirian (PBDB); Harrison et al. 2010 Proc B on the " "oxygen-size link", req="tracheal diffusion limits size; the classic hyperoxia case (Graham et al. 1995 Nature)", pbdb=["Meganisoptera"], pbdb_window=(335, 295), pbdb_exclude={}), dict(id="amniotes", name="Amniotes (fully terrestrial reproduction)", lit_age=318, lit_old=318.7, lit_young=316.9, alt_old=355, verified="A", o2_class="high", lit_source="Hylonomus, Joggins, Bashkirian; alt: clawed tracks, early Tournaisian ~355 Ma " "(Long et al. 2025 Nature 641:1193)", req="amniotic egg gas exchange; costal breathing", pbdb=["Amniota"], pbdb_window=(360, 300), pbdb_exclude={"Dipnoa": "lungfish misfiled under Tetrapoda"}), dict(id="herbivory", name="High-fibre herbivory in tetrapods", lit_age=305, lit_old=309.8, lit_young=300, alt_old=None, verified="P", o2_class="high", lit_source="Edaphosauridae and Diadectidae, Moscovian-Kasimovian (Sues & Reisz 1998 TREE 13:141)", req="large gut, high food throughput", pbdb=["Edaphosauridae", "Diadectidae"], pbdb_window=(325, 290), pbdb_exclude={}), dict(id="endothermy", name="Endothermy in the mammal lineage", lit_age=233, lit_old=237, lit_young=227, alt_old=252, verified="A", o2_class="high", lit_source="Late Triassic, Mammaliamorpha (Araujo et al. 2022 Nature 607:726; ~233 Ma in the press " "release); alt: Permo-Triassic boundary", req="5-10 times higher resting O2 consumption than ectotherms", pbdb=None), dict(id="pterosaur_flight", name="Powered flight in pterosaurs", lit_age=219, lit_old=227.3, lit_young=208, alt_old=237, verified="P", o2_class="high", lit_source="Oldest named pterosaurs are Norian (PBDB); alt: Carnian indeterminate records", req="flight", pbdb=["Pterosauria"], pbdb_window=(250, 200), pbdb_exclude={}), dict(id="bird_flight", name="Powered flight in birds (Avialae)", lit_age=150, lit_old=160, lit_young=148, alt_old=165, verified="P", o2_class="high", lit_source="Archaeopteryx, early Tithonian; Tiaojishan paravians ~160 Ma", req="flight", pbdb=["Avialae"], pbdb_window=(175, 140), pbdb_exclude={"Crateropteryx": "isolated Bathonian bone of doubtful avialan affinity (alt claim)"}), dict(id="flowers", name="Flowering plants (angiosperms)", lit_age=133, lit_old=139, lit_young=125, alt_old=200, verified="M", o2_class="plant", lit_source="Earliest accepted angiosperm pollen, Valanginian-Hauterivian (Friis, Crane & Pedersen 2011); " "alt: Triassic-Jurassic molecular clock dates", req="high vein density and transpiration; CO2-related", pbdb=None), dict(id="bat_flight", name="Powered flight in bats", lit_age=52.5, lit_old=56, lit_young=51.1, alt_old=62, verified="P", o2_class="high", lit_source="Onychonycteris and Icaronycteris, Green River Formation, early Eocene (Simmons et al. 2008 " "Nature 451:818)", req="flight", pbdb=["Chiroptera"], pbdb_window=(66, 45), pbdb_exclude={}), dict(id="large_mammals", name="Large (> 1 t) placental mammals", lit_age=47, lit_old=56, lit_young=40, alt_old=None, verified="A", o2_class="high", lit_source="Falkowski et al. 2005 Science 309:2202 (O2 rise and large placentals, Eocene); " "Smith et al. 2010 Science 330:1216", req="placental reproduction at large size (Falkowski et al. 2005)", pbdb=None), dict(id="whale_brains", name="Large brains in toothed whales", lit_age=34, lit_old=35, lit_young=27.3, alt_old=None, verified="P", o2_class="high", lit_source="Odontoceti first appear in the Rupelian (PBDB); encephalisation rise at their origin " "(Marino et al. 2004 Anat Rec 281A:1247)", req="brain tissue has about ten times the mean mass-specific O2 demand", pbdb=["Odontoceti"], pbdb_window=(45, 23), pbdb_exclude={}), dict(id="c4", name="C4 photosynthesis", lit_age=30, lit_old=35, lit_young=25, alt_old=None, verified="S", o2_class="other", lit_source="Oldest C4 lineages 25-35 Ma (Sage, Christin & Edwards 2011 J Exp Bot 62:3155, as cited in " "the convergence study of this project)", req="favoured only when CO2 is low and growing seasons warm (Ehleringer et al. 1997)", pbdb=None), dict(id="hominin_brains", name="Large brains and stone tools in hominins", lit_age=2.6, lit_old=3.3, lit_young=2.0, alt_old=None, verified="S", o2_class="high", lit_source="Oldowan 2.6 Ma, Lomekwian 3.3 Ma (Harmand et al. 2015 Nature 521:310), as verified in the " "convergence study of this project", req="brain tissue O2 demand; fire needs O2 above ~16 per cent", pbdb=None), ] IDS = [r["id"] for r in INNOVATIONS] assert len(IDS) == len(set(IDS))