anchor.diff:  find_transport(#diameter_app{} = App, Msg, Opts, S) ->
       ft(App, Msg, Opts, S).
   
  -ft(#diameter_app{module = Mod} = App, Msg, Opts, S) ->
  +ft(#diameter_app{module = Mod, dictionary = Dict} = App, Msg, Opts, S) ->
       #options{filter = Filter,
                extra = Xtra}
           = Opts,
       pick_peer(App#diameter_app{module = Mod ++ Xtra},
  -              get_destination(Msg),
  +              get_destination(Dict, Msg),
                 Filter,
                 S);
   ft(false = No, _, _, _) ->
  
positive.code:               Filter,
                S).
  
  %% get_destination/1
  
  get_destination(Msg) ->
      [str(get_avp_value(?BASE, 'Destination-Realm', Msg)),
       str(get_avp_value(?BASE, '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
  
negative.code: -define(DEFAULT_TC,     30000).  %% RFC 3588 ch 2.1
  -define(DEFAULT_TIMEOUT, 5000).  %% for outgoing requests
  -define(RESTART_TC,      1000).  %% if restart was this recent
  
  -define(RELAY, ?DIAMETER_DICT_RELAY).
  
  %% Used to be able to swap this with anything else dict-like but now
  %% rely on the fact that a service's #state{} record does not change
  