// Helpers ss(arr) = SampleSet.fromList(arr) // Nuclear ukraine rusiaUsesNuclearWeaponsInUkraine = ss([0.27, 0.04, 0.02, 0.001, 0.09, 0.08, 0.07])// <- fill-in // Note that the period of time is left unspecified // Nuclear NATO escalationOutsideUkraineGivenUkraineWasNuked = ss([0.15, 0.09, 0.0013, 10^(-5), 0.01, 0.3, 0.05])// <- fill-in escalationToNATOUnconditional = rusiaUsesNuclearWeaponsInUkraine * escalationOutsideUkraineGivenUkraineWasNuked // Nuclear NATO to nuclear London/Washington bigUKUSCityNukedGivenEscalationOutsideUkraine = ss([0.4, 0.15, 0.9985, 0.05, 0.02, 0.002, 0.5])// <- fill-in bigUKUSCityUnconditional = escalationToNATOUnconditional * bigUKUSCityNukedGivenEscalationOutsideUkraine // Impact in lost hours remainlingLifeExpectancyInYears = 40 to 60 // <- change daysInYear= 365 productiveHoursInDay = 6 to 18 // <- change ableToEscapeBefore = 0.5// <- fill-in proportionOfPeopleInLondonWhoDie = 0.7 expectedLostHours = bigUKUSCityUnconditional * (1 - ableToEscapeBefore) * proportionOfPeopleInLondonWhoDie * remainlingLifeExpectancyInYears * daysInYear * productiveHoursInDay // Probably good to also estimate idiosyncratic factors such as // - Increased or decreased productivity in a city // - Increased or decreased impact in a city // - Value assigned to surviving in a world after a nuclear winter // - ... // Display { rusiaUsesNuclearWeaponsInUkraine: rusiaUsesNuclearWeaponsInUkraine, escalationToNATOUnconditional: escalationToNATOUnconditional, bigUKUSCityUnconditional: bigUKUSCityUnconditional, expectedLostHours: expectedLostHours }