anchor.diff:  -define(WAIT_FOR_SOCKET_CLOSE_TIMEOUT, 200).
   -define(SERVER, ?MODULE).
   
  --record(state, {owner, url, parser}).
  +-record(state, {owner, url, parser, sid = nil}).
   
   %%%===================================================================
   %%% API
  
positive.code:             {<<"wait">>, <<"60">>},
              {<<"xml:lang">>, Lang},
              {<<"to">>, To}
              ]}.
  
negative.code: %%%===================================================================
  %%% Helpers
  %%%===================================================================
  send0(#transport{socket = {Host, Port, Path}}, Elem0, #state{parser = Parser} = State) ->
              Headers = [{"Content-Type", "text/xml; charset-utf-8"}],
              Elem = wrap_elem(Elem0, State),
              ct:print(default, "Sending element ~p~n", [Elem]),
              {ok, {{StatusCode, Reason}, Hdrs, RespBody}} = 
                  lhttpc:request(Host, Port, false, Path, 'POST', 
                                 Headers, exml:to_iolist(Elem), infinity, []),
              ct:print(default,"status ~p~nhdrs ~p~nresp ~p~n",[
                  {StatusCode, Reason}, Hdrs, RespBody
                  ]),
              handle_data(RespBody, State). 
  
  handle_data(Data, #state{owner = Owner,
                                   parser = Parser} = State) ->
      {ok, Stanzas0} = exml:parse(Data),
      Stanzas = [Stanzas0],
      ct:print(default, "stanzas ~p", [Stanzas]),
      lists:foreach(fun(Stanza) ->
          Owner ! {stanza, transport(State), Stanza}
      end, Stanzas),
      Stanzas.
  
  transport(#state{url = Url}) ->
      #transport{module = ?MODULE,
  