anchor.diff:              _From, #state{route_db=Routes} = State) ->
       add_entry(Routes, OwnerJID, ForeignJID, ClientSession, ServerSession),
       {reply, ok, State};
  -
  -handle_call(free, _From, #state{route_db=Routes} = State) ->
  +handle_call(free, _From, #state{route_db = Routes} = State) ->
       ets:delete(Routes),
       NewRoutes = ets:new('route', [bag]),
  -    {reply, ok, State#state{route_db=NewRoutes}};
  -
  +    {reply, ok, State#state{route_db = NewRoutes}};
   handle_call({del, Key}, _From,
  -            #state{route_db=Routes} = State) when is_list(Key) ->
  +            #state{route_db = Routes} = State) when is_list(Key) ->
       Refs = lists:flatten(ets:match(Routes, {Key, '_', '_', '$1'})),    
       del_entry(Routes, Refs),
       {reply, ok, State};
  -
   handle_call({del, Key}, _From,
               #state{route_db=Routes} = State) when is_pid(Key) ->
       Refs = lists:flatten(ets:match(Routes, {'_', '_', {client, Key}, '$1'})),
       del_entry(Routes, Refs),
       {reply, ok, State};
  -
   handle_call({get, From, To}, _From, #state{route_db=Routes} = State) ->
       FromStr = exmpp_jid:to_list(From),
       ToStr = exmpp_jid:to_list(To),
       Records = get_entry(Routes, FromStr) ++ get_entry(Routes, ToStr),
       Result = make(Records, From, To, FromStr, ToStr, []),
       {reply, Result, State};
  -
   handle_call(get_state, _From, #state{route_db=Routes} = State) ->
       {reply, {state, {route_db, Routes}}, State};
  -
  -handle_call({update, Old, New}, _From, #state{route_db=Routes} = State) ->
  +handle_call({update, Old, New}, _From, #state{route_db = Routes} = State) ->
       try
           [{Old, OwnerJID, {server, ServerSession}, Ref}] = get_entry(Routes, Old),
           JID = exmpp_jid:to_list(OwnerJID),
  
positive.code:         add_entry(Routes, OwnerJID, ForeignJID, ClientSession, ServerSession),
          {reply, ok, State}
      catch
          _Class:_Error -> 
              {reply, ok, State}
      end;
  
  handle_call(_Msg, _From, State) ->
      {reply, unexpected, State}.
  
  
negative.code: 
  %% Various helpers
  
  -spec add_entry(any(), any(), any(), pid(), pid()) -> ok.
  add_entry(Routes, OwnerJID, ForeignJID, ClientSession, ServerSession) ->
      Ref = make_ref(),
      ets:insert(Routes, {exmpp_jid:to_list(OwnerJID), 
  