anchor.diff:              rbrcseq:qwrite_fast(DB, Self, Id, ContentCheck, New, NextRound, Old)
       end,
       ok.
  +
  +-spec renew_and_update_round(lease_t(), prbr:r_with_id(), active | passive,
  +                       dht_node_state:state()) ->
  +                              dht_node_state:state().
  +% triggers renew of lease and updates known round number for the lease
  +renew_and_update_round(Lease, Round, Mode, State) ->
  +    lease_renew(self(), Lease, Mode),
  +    lease_list:update_next_round(l_on_cseq:get_id(Lease), Round, State).
  
positive.code:     case ActiveLease of
          empty -> ok;
          _ ->
              lease_renew(ActiveLease, active)
      end,
      _ = [lease_renew(L, passive) ||
              L <- PassiveLeaseList, get_aux(L) =/= {invalid, merge, stopped}],
      msg_delay:send_trigger(delta() div 2, {l_on_cseq, renew_leases}),
      State.
  
negative.code: 
  -spec lease_renew(lease_t(), active | passive) -> ok.
  lease_renew(Lease, Mode) ->
      lease_renew(pid_groups:get_my(dht_node), Lease, Mode).
  
  -spec lease_renew(comm:mypid(), lease_t(), active | passive) -> ok.
  lease_renew(Pid, Lease, Mode) ->
      comm:send_local(Pid,
                      {l_on_cseq, renew, Lease, Mode}),
      ok.
  
  