anchor.diff:  %% ------------------------------------------------------------------
   
   init([]) ->
  -  {ok, #s{cache=gb_trees:empty()}}.
  +  {ok, #s{cache=gb_trees:empty(), pids=gb_trees:empty()}}.
   
   handle_call({log_out, ClientName, Payload}, _From, State) ->
     {reply, ok, do_log(ClientName, Payload, State)};
  
positive.code: -define(MAX_QUEUE, 20).
  
  -record(s, {
      cache :: gb_tree()
    }).
  
  -include("seto_piqi.hrl").
  
negative.code:   gen_server:call(?SERVER, {session_state, ClientName}).
  
  takeover_session(ClientName, Session) ->
    gen_server:call(?SERVER, {takeover_session, ClientName, Session, self()}).
  
  connecting(ClientName) ->
    gen_server:cast(?SERVER, {connecting, ClientName}).
  