anchor.diff:      fun ((any(), any(), any()) -> {boolean(), split_step1_failed_reason() | null}). %% content check
   is_valid_split_step1() ->
       fun (Current, _WriteFilter, _Next) ->
  -            NewLease = Current == prbr_bottom,
  -            if
  -                not NewLease ->
  -                    {false, lease_already_exists};
  +            case Current == prbr_bottom of
                   true ->
  -                    {true, null}
  +                    {true, null};
  +                false ->
  +                    {false, lease_already_exists}
               end
       end.
   
  
positive.code:     This = comm:make_global(pid_groups:get_my(dht_node)),
      fun (prbr_bottom, _WriteFilter, _Next) ->
              {false, lease_does_not_exist};
          (#lease{range = R0}, _, #lease{range = R1})    when R0 =/= R1->
              {false, range_changed};
          (#lease{aux = Aux0}, _, #lease{aux = Aux1})    when Aux0 =/= Aux1->
              {false, aux_changed};
          (#lease{owner = O0}, _, #lease{owner = O1})    when O0 =/= O1->
              {false, owner_changed};
          (#lease{owner = O0}, _, _)                     when O0 =/= This->
              {false, owner_changed};
          (#lease{timeout = T0}, _, #lease{timeout = T1})  when not (T0 < T1)->
              {false, timeout_is_not_newer_than_current_lease};
          (#lease{epoch = E0}, _, _)                     when E0 =/= CurrentEpoch ->
              {false, epoch_or_version_mismatch};
          (#lease{version = V0}, _, _)                   when V0 =/= CurrentVersion->
              {false, epoch_or_version_mismatch};
          (_Current, _WriteFilter, Next) ->
              case (os:timestamp() <  Next#lease.timeout) of
                  false ->
  
negative.code:             aux     = empty,
              version = 0,
              timeout = new_timeout()},
      ContentCheck = is_valid_split_step3(OldEpoch, OldVersion),
      DB = get_db_for_id(Id),
      Self = comm:reply_as(self(), 6, {l_on_cseq, split_reply_step3, L1, R1, R2, '_'}),
      rbrcseq:qwrite(DB, Self, Id,
  