anchor.diff:      log:log("state: ~w", [State]),
       compare_and_fix_rm_with_leases(State);
   
  -on({read_after_rm_change, MissingRange, Result}, State) ->
  +on({read_after_rm_change, _MissingRange, Result}, State) ->
       log:log("read_after_rm_change ~w", [Result]),
       case Result of
           {qread_done, _ReqId, _Round, Lease} ->
  
positive.code:             State
      end;
  
  on({takeover_after_rm_change, Lease, Result}, State) ->
      log:log("takeover_after_rm_change ~w", [Result]),
      case Result of
          {takeover, failed, L, Error} ->
  
negative.code:              end,
      log:log("lease list ~w", [LeaseList]),
      ActiveRange = lease_list:get_active_range(LeaseList),
      MissingRange = intervals:minus(MyRange, ActiveRange),
      case intervals:is_empty(MissingRange) of
          true ->
              State;
          false ->
              log:log("missing range: ~w", [MissingRange]),
              LeaseId = l_on_cseq:id(MissingRange),
              Pid = comm:reply_as(self(), 3, {read_after_rm_change, MissingRange, '_'}),
  