anchor.diff:  %%--------------------------------------------------------------------
   handle_cast({add_method, Address, Module, Function}, State) ->
       Methods = State#state.methods,
  -    {noreply, State#state{methods = [{Address, Module, Function} | Methods]}};
  -handle_cast({delete_method, Address}, #state{methods = Methods} = State) ->
  -    {noreply, State#state{methods = lists:keydelete(Address, 1, Methods)}}.
  +    ets:insert(Methods, {string:tokens(Address, "/"), {Module, Function}}),
  +    {noreply, State};
  +handle_cast({delete_method, Address}, State) ->
  +    Methods = State#state.methods,
  +    ets:delete(Methods, string:tokens(Address, "/")),
  +    {noreply, State}.
   
   %%--------------------------------------------------------------------
   %% @private
  
positive.code: %%% Internal functions
  %%%===================================================================
  handle_message(When, Address, Args, Methods) ->
      case lists:keysearch(Address, 1, Methods) of
  	{value, {Address, Module, Function}} ->
  	    Time = when_to_msec(When),
  	    timer:apply_after(Time, Module, Function, Args);
  	false ->
  	    error_logger:info_report({unhandled,{message,Address,Args}})
      end.
  
  when_to_msec(immediately) ->
      0;
  
negative.code: 
  -define(SERVER, ?MODULE). 
  
  -record(state, {socket, methods}).
  
  %%%===================================================================
  %%% API
  