anchor.diff:  			add_to_active_view(DPeer, Tag, InitiatorState) %%What tag?? 
   	end,
   	%% TODO: Determine which answer return
  -	do_send_message(DisconnectState, {switch_reply, answer, DisconnectState, InitiatorState, CandidateState, #state{}}, Connections).
  +	do_send_message(DisconnectState, {switch_reply, answer, OldState, InitiatorState, CandidateState, DisconnectState}, Connections).
   	
   is_better(_,_) -> %New, Old) ->
   	true.
  
positive.code: 			#state{connections=Connections}) ->
  	remove_from_active_view(DPeer, Active),
  	add_to_active_view(IPeer, ITag, InitiatorState), %%Tag of i or what?
  	do_send_message(CandidateState,{optimization_reply, true, OldState, InitiatorState, #state{}, DisconnectState},Connections);
  handle_message({replace_reply, false, OldState, InitiatorState, CandidateState, DisconnectState}, #state{connections=Connections}) ->
  	do_send_message(CandidateState,{optimization_reply, false, OldState, InitiatorState, #state{}, DisconnectState},Connections);
  
  %% Replace
  handle_message({replace, _, OldState, InitiatorState, CandidateState, _}, #state{connections=Connections}) ->
  	Check = is_better(CandidateState, OldState),
  	if not Check ->
  			do_send_message(CandidateState,{replace_reply, false, CandidateState, InitiatorState, #state{}, OldState}, Connections);
  		true ->
  			do_send_message(OldState,{switch, none, #state{}, OldState, InitiatorState, CandidateState}, Connections)
  	end;
  
  %% Switch Reply
  handle_message({switch_reply, true, #state{myself=OPeer}, #state{active=Active,tag=Tag} = InitiatorState, #state{myself=CPeer}=CandidateState, _}, 
  			#state{connections=Connections}) ->
  	remove_from_active_view(CPeer, Active),
  	add_to_active_view(OPeer, Tag, InitiatorState), %%What tag?? initiator or o??
  	do_send_message(CandidateState,{replace_reply, true, #state{}, InitiatorState, #state{}, #state{}}, Connections);
  handle_message({switch_reply, false, _, InitiatorState, CandidateState, _}, #state{connections=Connections}) ->
  	do_send_message(CandidateState, {replace_reply, false, #state{}, InitiatorState, #state{}, #state{}}, Connections);
  	
  %% Switch
  handle_message({switch, _, _, #state{myself=IPeer,active=Active,tag=Tag} = InitiatorState, CandidateState, #state{myself=DPeer}=DisconnectState},
  			#state{connections=Connections}) ->
  	Check = is_in_active_view(IPeer, Active),
  	if Check -> %or Send(disconnect_wait from i) ->
  
negative.code: 
  %% Optimization
  handle_message({optimization, _, OldState, #state{active=Active, reserved=Reserved, max_active_size=MaxActiveSize} = InitiatorState, 
  				#state{myself=CPeer,tag=CTag}=CandidateState, undefined, #state{connections=Connections}) ->
  	Check = is_full({active, Active, Reserved},MaxActiveSize),
  	if not Check -> 
  			add_to_active_view(CPeer, CTag, InitiatorState), %% I think this is good specified, add CPeer with CTag to active view of InitiatorState
  			do_send_message(InitiatorState, {optimization_reply, true, OldState, InitiatorState, CandidateState, undefined}, Connections);
  		true ->
  %			d = Active[UNOPT], // Change following  undefined for the disconnect node
  			do_send_message(DisconnectState,{replace, undefined, OldState, InitiatorState, CandidateState, undefined}, Connections)
  	end;
  	
  %% Replace Reply
  