anchor.diff:                  compress = false,
                   event_client,
                   on_reply,
  -                on_request}).
  +                on_request,
  +                active = true,
  +                replies = []}).
   
   %%%===================================================================
   %%% API
  
positive.code:          terminate/2,
           code_change/3]).
  
  -define(WAIT_FOR_SOCKET_CLOSE_TIMEOUT, 200).
  -define(SERVER, ?MODULE).
  
  
negative.code:     {noreply, State};
  handle_cast(reset_parser, #state{parser = Parser} = State) ->
      {ok, NewParser} = exml_stream:reset_parser(Parser),
      {noreply, State#state{parser = NewParser}};
  handle_cast(stop, State) ->
      {stop, normal, State}.
  
  handle_info({tcp, Socket, Data}, State) ->
      inet:setopts(Socket, [{active, once}]),
      NewState = handle_data(Socket, Data, State),
      {noreply, NewState};
  handle_info({ssl, Socket, Data}, State) ->
      ssl:setopts(Socket, [{active, once}]),
      NewState = handle_data(Socket, Data, State),
      {noreply, NewState};
  handle_info({tcp_closed, Socket}, #state{socket = Socket} = State) ->
      {stop, normal, State};
  handle_info(_, State) ->
  