docs: def _get_adds_dels(self, cache, branch, turn, tick, *, stoptime=None):
          """Return a pair of ``(added, deleted)`` sets describing changes since ``stoptime``.
  
          With ``stoptime=None`` (the default), ``added`` will in fact be all keys.
  
          """
          added = set()
          deleted = set()
          for key, branches in cache.items():
              for (branc, trn, tck) in self.db._iter_parent_btt(branch, turn, tick, stoptime=stoptime):
                  if branc not in branches or not branches[branc].rev_gettable(trn):
                      continue
                  turnd = branches[branc]
                  if trn in turnd:
                      if turnd[trn].rev_gettable(tck):
                          if turnd[trn][tck] is None:
                              deleted.add(key)
                          else:
                              added.add(key)
                          break
                      else:
                          trn -= 1
                  if not turnd.rev_gettable(trn):
                      break
                  tickd = turnd[trn]
                  if tickd[tickd.end] is None:
                      deleted.add(key)
                  else:
                      added.add(key)
                  break
          return added, deleted