docs: def _iter_future_contradictions(entity, key, turns, branch, turn, tick, value):
          """If setting ``key=value`` would result in a contradiction, iterate over contradicted ``(turn, tick)``s."""
          # assumes that all future entries are in the plan
          if not turns:
              return
          if turn in turns:
              future_ticks = turns[turn].future(tick)
              for tck, newval in future_ticks.items():
                  if newval != value:
                      yield turn, tck
              future_turns = turns.future(turn)
          elif turns.rev_gettable(turn):
              future_turns = turns.future(turn)
          else:
              future_turns = turns
          if not future_turns:
              return
          for trn, ticks in future_turns.items():
              for tick, newval in ticks.items():
                  if newval != value:
                      yield trn, tick