anchor.diff:                  {ok, Socket} ->
                       ok = lager:debug("function=init event=connecting_to_server server_node=\"~s\" server_ip=\"~p:~B\" result=success",
                                        [Node, Address, Port]),
  -                    {ok, #state{socket=Socket,send_timeout=SendTO,receive_timeout=RecvTO,inactivity_timeout=TTL}, TTL};
  +                    {ok, #state{socket=Socket,node=Node,send_timeout=SendTO,receive_timeout=RecvTO,inactivity_timeout=TTL}, TTL};
                   {error, Reason} ->
                       ok = lager:error("function=init event=connecting_to_server server_node=\"~s\" server_ip=\"~s:~B\" result=failure reason=\"~p\"",
                                        [Node, Address, Port, Reason]),
  
positive.code: 
  %%% Local state
  -record(state, {socket :: port(),
          send_timeout :: non_neg_integer(),
          receive_timeout :: non_neg_integer(),
          inactivity_timeout :: non_neg_integer() | infinity}).
  
negative.code:     end.
  
  %% This is the actual CALL handler
  handle_call({{call,_M,_F,_A} = PacketTuple, URecvTO, USendTO}, Caller, #state{socket=Socket,node=Node} = State) ->
      {RecvTO, SendTO} = merge_timeout_values(State#state.receive_timeout, URecvTO, State#state.send_timeout, USendTO),
      Ref = erlang:make_ref(),
      %% Spawn the worker that will wait for the server's reply
  