anchor.diff:  
   -record(req_info, {request :: #sip_message{},                 % SIP request message
                      destinations = [] :: [#sip_destination{}], % list of IP addresses to try next
  -                   target_set2 = sip_priority_set:new(),      % URI to visit next (redirects)
  +                   target_set = sip_priority_set:new(),      % URI to visit next (redirects)
                      user_data}).                               % Custom user data associated with request
   
   -spec behaviour_info(callbacks | term()) -> [{Function :: atom(), Arity :: integer()}].
  
positive.code:             Kind = Request#sip_message.kind,
              Request2 = Request#sip_message{kind = Kind#sip_request{uri = URI}},
              Destinations = lookup_destinations(Request2),
              ReqInfo2 = ReqInfo#req_info{request = Request2, destinations = Destinations, target_set2 = TargetSet2},
              send_to_next(Reason, ReqInfo2, State)
      end;
  send_to_next(_Reason, #req_info{request = Request, destinations = [Top | Fallback]} = ReqInfo, State) ->
  
negative.code: 
      % Dispatch asynchronously
      TargetSet = sip_priority_set:put(RequestURI, 1.0, sip_priority_set:new()),
      ReqInfo = #req_info{request = Request, user_data = UserData, target_set = TargetSet},
      gen_server:cast(self(), {send, ReqInfo}),
      ok.
  
  