anchor.diff:              %% No more peers are suspected; no change.
               State0;
           Random ->
  -            case is_addable(DisconnectId, Peer, SentMessageMap) of
  +            case is_addable(DisconnectId, Peer, SentMessageMap0) of
                   true ->
                       %% Remove from suspected.
                       Suspected = remove_from_suspected(Random, Suspected0),
  
positive.code:     end;
  
  handle_message({neighbor, Peer, TheirTag, DisconnectId, _Sender},
                 #state{sent_message_map=SentMessageMap}=State0) ->
      lager:info("Neighboring with ~p tagged ~p from random walk", [Peer, TheirTag]),
  
      State = case is_addable(DisconnectId, Peer, SentMessageMap) of
                  true ->
                      %% Add node into the active view.
                      add_to_active_view(Peer, TheirTag, State0);
                  false ->
                      %% @todo Need to send the disconnect message here?
                      State0
              end,
  
      %% Notify with event.
  
negative.code:                     %% Add to active view.
                      add_to_active_view(Peer, Tag, State1);
                  false ->
                      %% Get next disconnect id for the peer.
                      NextId = get_next_id(Peer, Epoch, SentMessageMap0),
                      %% Update the SentMessageMap.
                      SentMessageMap = dict:store(Peer, NextId, SentMessageMap0),
  
                      %% Let peer know we did not add them into the active view.
                      do_send_message(Peer,
                                      {disconnect, Myself, NextId},
                                      Connections),
  
                      State0#state{sent_message_map=SentMessageMap}
              end
      end,
  
  