anchor.diff:    {stop, Reason :: term(), Reply :: term(), NewState :: #state{}} |
     {stop, Reason :: term(), NewState :: #state{}}).
   handle_call({handle_payload, Payload}, _From, State) ->
  -  do_handle(Payload),
  +  do_handle(Payload, State),
     {reply, ok, State};
   handle_call(_Request, _From, State) ->
     {reply, ok, State}.
  
positive.code: -behaviour(gen_server).
  
  %% API
  -export([start_link/0, handle/1]).
  
  %% gen_server callbacks
  -export([init/1,
  
negative.code:       PrefSrc = proplists:get_value(prefsrc, Route),
        PrefSrc
    end.
  
  
  do_handle(Payload, _State = #state{local_addrs = LocalAddresses}) ->
    case to_mapping(Payload, LocalAddresses) of
      {ok, Mapping} ->
        lager:info("Mapping: ~p", [Mapping]),
        minuteman_ct:handle_mapping(Mapping);
      Else ->
        lager:error("Unable to handle mapping: ~p", [Else])
    end.
  
  to_mapping(Payload, LocalAddresses) ->
    [IP, TCP|_] = pkt:decapsulate(ipv4, Payload),
    DstAddr = IP#ipv4.daddr,
    DstPort = TCP#tcp.dport,
  