anchor.diff:  
   %%
   %% peer connection
  -'STREAM'({Prot, _, {established, Peer}}, _Pipe, State)
  +'STREAM'({Prot, _, {established, Peer}}, Pipe, #fsm{queue = Queue} = State)
    when ?is_transport(Prot) ->
  -   {next_state, 'STREAM', State#fsm{peer = Peer}};
  +   % all delayed requests shall be passed using request pipe but tcp message came from inverted one
  +   % <-[ tcp ]--(b) --[ http ]-- (a)--[ client ]-<
  +   'STREAM'(q:head(Queue), pipe:swap(Pipe), 
  +      State#fsm{
  +         peer  = Peer, 
  +         queue = q:tail(Queue)
  +      }
  +   );
   
   'STREAM'({Prot, _, {terminated, _}}, _Pipe, State)
    when ?is_transport(Prot) ->
  
positive.code: %%
  %% make environment
  %% @todo: handle cookie and request as PHP $_REQUEST
  % make_env(_Head, #stream{peer=Peer}) ->
  %    [
  %       {peer, Peer}
  %    ].
  make_env(_Head, Peer) -> 
     [
        {peer, uri:authority(Peer, uri:new(http))}
  
negative.code: 
  'IDLE'({accept,  Uri}, Pipe, State) ->
     pipe:b(Pipe, {accept, Uri}),
     {next_state, 'STREAM', State};
  
  'IDLE'({connect, Uri}, Pipe, State) ->
     % connect is compatibility wrapper for knet socket interface (translated to http GET request)
     % @todo: htstream support HTTP/1.2 (see http://www.jmarshall.com/easy/http/)
     'IDLE'({'GET', Uri, [{'Connection', <<"keep-alive">>}]}, Pipe, State);
  
  'IDLE'({_Mthd, {uri, _, _}=Uri, _Head}=Req, Pipe, #fsm{queue = Queue} = State) ->
     pipe:b(Pipe, {connect, Uri}),
     {next_state, 'STREAM', State#fsm{queue = q:enq(Req, Queue)}};
  
  'IDLE'({_Mthd, {uri, _, _}=Uri, _Head, _Msg}=Req, Pipe, #fsm{queue = Queue} = State) ->
     pipe:b(Pipe, {connect, Uri}),
     {next_state, 'STREAM', State#fsm{queue = q:enq(Req, Queue)}}.
  
  %%%------------------------------------------------------------------
  %%%
  