anchor.diff:    ets:delete(Sessions,Ref),
     ets:delete(Sessions,Session#session.pid),
     ok.
  -
   
   
   -spec remove_session_from_topic(Session :: #session{}, TopicId :: non_neg_integer(), State :: #state{}) -> ok | not_found.
  
positive.code: 
  -spec get_session_from_pid(Pid :: pid(), State :: #state{}) -> #session{}.
  get_session_from_pid(Pid,#state{sess=Sessions}) ->
    [PidSession] = ets:lookup(Sessions,Pid),
    [Session] = ets:lookup(Sessions,PidSession#pid_session.session_id),
    Session.
  
  
  -spec gen_id() -> non_neg_integer().
  
negative.code:       end,
    {reply,Reply,State};
  
  handle_call({remove_session,_Reason},{Pid,_Ref},State) ->
    Session = get_session_from_pid(Pid,State),
    remove_given_session(Session,State),
    {reply,shutdown,State};
  handle_call(_Msg,_From,State) ->
     {reply,shutdown,State}.
  
  