anchor.diff:      % as formulated in the RFC (section 17.2.1), but we proceed from trying to proceeding
       % on the first 100 Trying. We do this because we don't want to mandate every application
       % to be transaction stateful.
  +    MyToTag = generate_tag(),
       MyState = #state{branch=Branch, logtag=LogTag, socket=Socket, request=Request,
   			sipmethod=Method, sipstate=trying, timerlist=siptimer:empty(),
  -			mode=Mode},
  +			mode=Mode, my_to_tag=MyToTag},
       TransactionPid = sipserver:safe_spawn(fun spawned/2, [MyState, LogStr]),
       TransactionPid.
       
  
positive.code: 	    {Method, URI, Header, _} = Request,
  	    logger:log(debug, "~s: Server transaction received a request, checking if it is a resend (~s ~s)",
  			[LogTag, Method, sipurl:print(URI)]),
  	    % XXX check CSeq number too?
  	    if
  		Method == OrigMethod, URI == OrigURI ->
  		    case State#state.response of
  			{Status, Reason, RHeader, RBody} ->
  			    logger:log(normal, "~s: Received a retransmission of request (~s ~s), resending response ~p ~s",
  					[LogTag, Method, sipurl:print(URI), Status, Reason]),
  			    ServerPid ! {continue, MsgRef},
  			    siprequest:send_proxy_response(State#state.socket, Status, Reason, RHeader, RBody);
  			_ ->
  			    case State#state.report_to of
  				P when pid(P) ->
  
negative.code:     end,
      logger:log(debug, "~s: Sending response to ~s ~s : ~p ~s", 
      		[LogTag, Method, sipurl:print(URI), Status, Reason]),
      transportlayer:send_proxy_response(Socket, Response),
      NewState1 = case SendReliably of
  	true ->
  	    T1 = sipserver:get_env(timerT1, 500),
  