code: def stamp(name, backdate=None,
            unique=None, keep_subdivisions=None, quick_print=None,
            un=None, ks=None, qp=None):
      t = timer()
      if f.t.stopped:
          raise StoppedError("Cannot stamp stopped timer.")
      if f.t.paused:
          raise PausedError("Cannot stamp paused timer.")
      if backdate is None:
          t_stamp = t
      else:
          if not isinstance(backdate, float):
              raise TypeError("Backdate must be type float.")
          if backdate > t:
              raise BackdateError("Cannot backdate to future time.")
          if backdate < f.t.last_t:
              raise BackdateError("Cannot backdate to time earlier than last stamp.")
          t_stamp = backdate
      elapsed = t_stamp - f.t.last_t
      unique = SET['UN'] if (unique is None and un is None) else bool(unique or un)
      keep_subdivisions = SET['KS'] if (keep_subdivisions is None and ks is None) else bool(keep_subdivisions or ks)
      quick_print = SET['QP'] if (quick_print is None and qp is None) else bool(quick_print or qp)
      _stamp(name, elapsed, unique, keep_subdivisions, quick_print)
      tmp_self = timer() - t
      f.t.self_cut += tmp_self
      f.t.last_t = t_stamp + tmp_self
      return t