anchor.diff:          andalso is_disjoint(I, T).
   
   get_dht_node_state(Pid, What) ->
  -    comm:send_local(Pid, {get_state, comm:this(), What}),
  +    comm:send(Pid, {get_state, comm:this(), What}),
       receive
           {get_state_response, Data} ->
  -            Data
  +            {true, Data}
  +    after 50 ->
  +            false
       end.
   
   get_all_leases() ->
  -    [ get_leases(DHTNode) || DHTNode <- pid_groups:find_all(dht_node) ].
  +    GetLeases = fun(Pid) ->
  +                        get_dht_node_state(Pid, lease_list)
  +                end,
  +    lists:filtermap(GetLeases, all_dht_nodes()).
   
  -get_leases(Pid) ->
  -    get_dht_node_state(Pid, lease_list).
  +all_dht_nodes() ->
  +    mgmt_server:node_list(),
  +    receive
  +        {get_list_response, Nodes} ->
  +            Nodes
  +    end.
  
positive.code:         true ->
              ok
      end,
      IsAll andalso
          HaveAllAuxEmpty andalso
          IsDisjoint andalso
  
negative.code: %
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  check_local_leases(DHTNode) ->
      case get_dht_node_state(DHTNode, [lease_list, my_range]) of
          false ->
              false;
          {true, [{lease_list, LeaseList}, {my_range, MyRange}]} ->
              ActiveLease = lease_list:get_active_lease(LeaseList),
              PassiveLeases = lease_list:get_passive_leases(LeaseList),
              ActiveInterval = case ActiveLease of
                                   empty ->
                                       intervals:empty();
                                   _ ->
                                       l_on_cseq:get_range(ActiveLease)
                               end,
              LocalCorrect = MyRange =:= ActiveInterval,
              io:format("rm =:= leases:~w~n active lease=~p~n my_range    =~p~n", 
                        [LocalCorrect, 
                         l_on_cseq:get_range(ActiveLease), MyRange]),
              length(PassiveLeases) == 0 andalso LocalCorrect
      end.
  
  lease_checker(TargetSize) ->
      LeaseLists = get_all_leases(),
  