message: Fix a bug where a player can collapse on unstable from a single stability check
diff: @@ -119,6 +119,7 @@ def checkSecedingCities(iGameTurn, iPlayer):
  secedeCities(iPlayer, lSecedingCities)
  data.setSecedingCities(iPlayer, cities.of([]))
  +
  def triggerCollapse(iPlayer):
  # help overexpanding AI: collapse to core, unless fall date
  if not player(iPlayer).isHuman():
  @@ -367,14 +368,14 @@ def checkStability(iPlayer, bPositive = False, iMaster = -1):
  data.setStabilityLevel(iPlayer, iNewStabilityLevel)
  elif not bPositive:
  + if iNewStabilityLevel < iStabilityLevel:
  + data.setStabilityLevel(iPlayer, iNewStabilityLevel)
  +
  # if remain on collapsing and stability does not improve, collapse ensues
  - if iNewStabilityLevel == iStabilityCollapsing:
  + elif iNewStabilityLevel == iStabilityCollapsing:
  if iStability <= data.players[iPlayer].iLastStability:
  triggerCollapse(iPlayer)
  - if iNewStabilityLevel < iStabilityLevel:
  - data.setStabilityLevel(iPlayer, iNewStabilityLevel)
  -
  # update stability information
  data.players[iPlayer].iLastStability = iStability
  for i in range(5):
  