{
  "//": "Hardcoded game-frame-folder -> ZwiftInsider sheet bike name. null = no ZI test (frame stays estimated). Seed by tools/build_zi_match_map.py; hand-edit thereafter. The solver (zi_stage_solve.build) reads 'matches' as authoritative and ignores 'review_manually'.",
  "review_manually": [
    "Zwift_BW"
  ],
  "matches": {
    "AlliedAble2022": "Allied Able",
    "BMCRoadMachine2021": "BMC Roadmachine",
    "BmcSLR01": "BMC SLR01",
    "BmcTeamMachine2022": "BMC TeamMachine",
    "BmcTimemachine01": "BMC Timemachine01",
    "BridgestoneOVS2021": "Bridgestone Anchor RS9s",
    "BromptonPLine2025": "Brompton P Line",
    "Buffalo": "Zwift Buffalo Fahrrad",
    "BuffaloQhubeka": null,
    "CadexTri2022": "Cadex Tri",
    "CannondaleCAAD132023": "Cannondale CAAD13",
    "CannondaleCaad12": "Cannondale CAAD12",
    "CannondaleEvo": "Cannondale EVO",
    "CannondalePong": "Cannondale R4000 Roller Blade",
    "CannondaleSuperSixEVO2020": "Cannondale Super Six Evo",
    "CannondaleSuperSixEVOLAB712024": "Cannondale SuperSix Evo LAB71",
    "CannondaleSuperSixEvo2026": "Cannondale SuperSix EVO LAB71 Team",
    "CannondaleSuperXBikeLAB712025": "Cannondale SuperX LAB71",
    "CanyonAeroad2021": "Canyon Aeroad 2021",
    "CanyonAeroad2024": "Canyon Aeroad 2024",
    "CanyonAeroad2025": null,
    "CanyonAeroadAlpecinPremierTech2026": "Canyon Aeroad CFR Alpecin Premier-Tech",
    "CanyonAeroadCS2026": null,
    "CanyonAeroadGreen2026": null,
    "CanyonGrail2025": "Canyon Grail SLX",
    "CanyonGrailGravel": "Canyon Grail",
    "CanyonInflite2019": "Canyon Inflite",
    "CanyonLuxMountainBike2019": "Canyon Lux",
    "CanyonSRAMUltimate2022": null,
    "CanyonSpeedmaxCFR2026": "Canyon Speedmax CFR",
    "CanyonSpeedmaxCRSLXDisc2021": "Canyon Speedmax CF SLX Disc",
    "CanyonUltimate2021": "Canyon Ultimate CFR",
    "Canyon_Aeroad": "Canyon Aeroad 2015",
    "Canyon_Speedmax": "Canyon Speedmax",
    "Canyon_Ultimate": "Canyon Ultimate",
    "Cello": null,
    "CerveloAspero2020": "Cervelo Aspero",
    "CerveloAspero2026": "Cervelo Aspero 5",
    "CerveloP5": "Cervelo P5",
    "CerveloP5x": "Cervelo PX-Series",
    "CerveloR5": "Cervelo R5",
    "CerveloS3D": "Cervelo S3D",
    "CerveloS5": "Cervelo S5 2015",
    "CerveloS52021": "Cervelo S5 2020",
    "CerveloS52026": "Cervelo S5",
    "Chapter2KOKO2022": "Chapter2 Koko",
    "Chapter2Rere2019": "Chapter2 Rere",
    "Chapter2TOA2021": "Chapter2 Toa",
    "Chapter2Tere2019": "Chapter2 Tere",
    "ColnagoV3RS2020": "Colnago V3RS",
    "CubeAerium2019": "Cube Aerium",
    "CubeLitening2018": "Cube Litening",
    "CubeLitening2021": "Cube Litening C:68X",
    "DefaultOrange": null,
    "DiamondBack_Andean": "DiamondBack Andean",
    "FactorOne2020": "Factor One",
    "FeltAR2018": "Felt AR",
    "FeltFR2022": "Felt FR",
    "FeltIA2019": "Felt IA",
    "FeltTT2021": "Felt IA 2.0",
    "FocusIzalcoMax2020": "Focus Izalco Max",
    "GiantDefyASL": "Giant TCR Advanced SL 2021",
    "GiantPropelAdvancedSL2026": "Giant Propel Advanced SL Team",
    "GiantRevolt2022": "Giant Revolt Advanced Pro",
    "GiantTCRAdvancedSL2021": "Giant TCR BikeExchange-Jayco Team",
    "GiantTCRAdvancedSL2023": "Giant TCR Advanced SL 2025",
    "LaufTrueGrit2021": "Lauf True Grit",
    "LivDevote2022": "Liv Devote Advanced Pro",
    "LivLangma": "Liv Langma Advanced SL 2021",
    "LivLangma2021": "Liv Langma SL Advanced Disc",
    "LivLangmaAdvancedSL2023": "Liv Langma Advanced SL 2025",
    "MeridaScultura2020": null,
    "MootsVamoots2021": "Moots Vamoots RCS",
    "MosaicRT12022": "Mosaic RT-1d",
    "ParleeRZ72020": "Parlee RZ7",
    "Parlee_ESX": "Parlee ESX",
    "PinarelloBolideTT2018": "Pinarello Bolide TT",
    "PinarelloDogmaF102019": "Pinarello Dogma F10",
    "PinarelloDogmaF122020": "Pinarello Dogma F12",
    "PinarelloDogmaF142021": "Pinarello Dogma F 2021",
    "PinarelloDogmaF2024": "Pinarello Dogma F 2024",
    "PinarelloDogmaGR2026": "Pinarello Dogma GR",
    "PinarelloDogmaX2024": "Pinarello Dogma X",
    "PinarelloEspada": "Pinarello Espada",
    "Pinarello_Dogma": "Pinarello Dogma 65.1",
    "Pinarello_F8": "Pinarello F8",
    "Pinarello_TT": "Pinarello Bolide",
    "QuintanaVPR2022": null,
    "RibbleEndurance2019": "Ribble Endurance",
    "RidleyHelium": "Ridley Helium",
    "RidleyNoahFast2019": "Ridley Noah Fast 2019",
    "ScottAddict2021": "Scott Addict RC",
    "ScottFoil2022": "Scott Foil 2023",
    "ScottPlasma2019": "Scott Plasma",
    "ScottPlasma2022": "Scott Plasma RC Ultimate",
    "ScottSparkMTB2022": "Scott Spark RC World Cup",
    "ScottSparkMountainBike2019": "Scott Spark RC",
    "Scott_Foil": "Scott Foil 2015",
    "SpecializedAethos2021": "Specialized Aethos S-Works",
    "SpecializedAllezSprint2019": "Specialized Allez Sprint",
    "SpecializedCrux2022": "Specialized Crux",
    "SpecializedDiverge2022": "Specialized Diverge",
    "SpecializedDiverge2025": "Specialized Diverge 4",
    "SpecializedEpic2020": "Specialized Epic S-Works",
    "SpecializedProject74": "Specialized PROJECT 74",
    "SpecializedShiv": "Specialized Shiv S-Works",
    "SpecializedShiv2019": "Specialized Shiv Disc",
    "SpecializedTarmac2019": "Specialized Tarmac Pro",
    "SpecializedTarmac2021": "Specialized Tarmac SL7",
    "SpecializedTarmacSL82024": "Specialized S-Works Tarmac SL8",
    "SpecializedTarmacSL92026": "Specialized S-Works Tarmac SL9",
    "SpecializedVenge2019": "Specialized Venge S-Works 2019",
    "Specialized_Allez": "Specialized Allez",
    "Specialized_Amira": "Specialized Amira",
    "Specialized_Amira_Sworks": "Specialized Amira S-Works",
    "Specialized_Roubaix": "Specialized Ruby S-Works",
    "Specialized_Tarmac": null,
    "Specialized_Venge": "Specialized Venge 2015",
    "Trek": null,
    "TrekEmonda": "Trek Emonda",
    "TrekEmondaSL": "Trek Emonda SL",
    "TrekMadone": "Trek Madone",
    "TrekSpeedConcept2021": "Trek Speed Concept SLR 9",
    "TrekSuperCaliber2020": "Trek Super Caliber",
    "UraniumNuclear2021": "Uranium Nuclear",
    "VanRyselEDR2021": "VanRysel EDR CF",
    "VanRyselRCRF2026": "VanRysel RCR-F",
    "VanRyselRCRPro2023": "VanRysel RCR Pro",
    "VanRyselRCRX2026": "VanRysel RCR X",
    "VentumNS12022": "Ventum NS1",
    "VentumOne": "Ventum One",
    "WilierFilanteSLRID22026": "Wilier Filante SLR ID2",
    "ZwiftHandcycle": "Zwift Handcycle",
    "ZwiftMountain": "Zwift Mountain",
    "ZwiftRecumbent": "Zwift Recumbent Trike",
    "ZwiftSkeletal": null,
    "Zwift_Aero": "Zwift Aero",
    "Zwift_BW": "Zwift Big Wheel",
    "Zwift_BWConcept": null,
    "Zwift_Bat": null,
    "Zwift_BigSpin2025": "Zwift BMX Bandit",
    "Zwift_BigSpin2026": "Zwift MX Rider",
    "Zwift_BigSpinCruiser2024": "Zwift Atomic Cruiser",
    "Zwift_Carbon": "Zwift Carbon",
    "Zwift_Concept": "Zwift Concept Z1",
    "Zwift_Concept_Gold": null,
    "Zwift_Gravel": "Zwift Gravel",
    "Zwift_Safety": "Zwift Safety",
    "Zwift_Steel": "Zwift Steel",
    "Zwift_TT": "Zwift TT"
  }
}