anchor.diff:                              {disconnect, Myself, NextId},
                               Connections0),
   
  -            Connections = enable_disconnect_trigger(Peer, Connections0),
  -            %% Trigger disconnect message.
  -            gen_server:cast(?MODULE, {disconnect, Peer}),
  -
  -            State#state{sent_message_map=SentMessageMap,
  -                        connections=Connections}
  +            State#state{sent_message_map=SentMessageMap}
       end.
   
   %% @private
  
positive.code: handle_message({disconnect, Peer, DisconnectId},
                 #state{myself=Myself,
                        active=Active0,
                        ack_message_map=AckMessageMap0}=State0) ->
      lager:info("Node ~p received disconnect from ~p with ~p",
                 [Myself, Peer, DisconnectId]),
  
      case is_valid_disconnect(Peer, DisconnectId, AckMessageMap0) of
          false ->
              %% Ignore the older disconnect message.
  
negative.code: 
              {reply, ok, State#state{ack_message_map=AckMessageMap}}
      end;
  
  %% @private
  handle_message({disconnect_ack, Peer, DisconnectId},
                 #state{myself=Myself,
                        connections=Connections0}=State0) ->
      lager:info("Node ~p received disconnect_ack from ~p with ~p",
                 [Myself, Peer, DisconnectId]),
  
      Connections = enable_disconnect_trigger(Peer, Connections0),
      %% Trigger disconnect message.
      gen_server:cast(?MODULE, {disconnect, Peer}),
  
      {reply, ok, State0#state{connections=Connections}};
  
  handle_message({neighbor, Peer, TheirTag, DisconnectId, _Sender},
                 #state{sent_message_map=SentMessageMap0}=State0) ->
  