anchor.diff:                Filter,
                 S).
   
  -%% get_destination/1
  -
  -get_destination(Msg) ->
  -    [str(get_avp_value(?BASE, 'Destination-Realm', Msg)),
  -     str(get_avp_value(?BASE, 'Destination-Host', Msg))].
  +%% get_destination/2
  +
  +get_destination(Dict, Msg) ->
  +    [str(get_avp_value(Dict, 'Destination-Realm', Msg)),
  +     str(get_avp_value(Dict, 'Destination-Host', Msg))].
   
   %% This is not entirely correct. The avp could have an arity 1, in
   %% which case an empty list is a DiameterIdentity of length 0 rather
  
positive.code: %% identify the type of the AVP and its arity in the message in
  %% question. The third form allows messages to be sent as is, without
  %% a dictionary, which is needed in the case of relay agents, for one.
  
  get_avp_value(Dict, Name, [#diameter_header{} | Avps]) ->
      try
  
negative.code:     false;  %% TODO: Not what we should do.
  
  %% ... or not.
  rt(#request{packet = #diameter_packet{msg = Msg},
              dictionary = Dict}
     = Req,
     S) ->
      find_transport(get_destination(Dict, Msg), Req, S).
  
  %%% ---------------------------------------------------------------------------
  %%% # report_status/5
  