anchor.diff:      [[{rc(Avp), Avp} | Failed] | Rec];
   
   %% Relaxed arities.
  -acc2(Acc, Avp, _, _, AvpName, Arity, Strict, Mod, _)
  +acc2(Acc, Avp, _, _, Field, Arity, Strict, Mod, _)
     when Strict /= decode ->
  -    pack(Arity, AvpName, Avp, Mod, Acc);
  +    pack(Arity, Field, Avp, Mod, Acc);
   
   %% No maximum arity.
  -acc2(Acc, Avp, _, _, AvpName, {_,'*'} = Arity, _, Mod, _) ->
  -    pack(Arity, AvpName, Avp, Mod, Acc);
  +acc2(Acc, Avp, _, _, Field, {_,'*'} = Arity, _, Mod, _) ->
  +    pack(Arity, Field, Avp, Mod, Acc);
   
   %% Or check.
  -acc2(Acc, Avp, I, _, AvpName, Arity, _, Mod, _) ->
  +acc2(Acc, Avp, I, _, Field, Arity, _, Mod, _) ->
       Mx = max_arity(Arity),
       if Mx =< I ->
               [Failed | Rec] = Acc,
               [[{5009, Avp} | Failed] | Rec];
          true ->
  -            pack(Arity, AvpName, Avp, Mod, Acc)
  +            pack(Arity, Field, Avp, Mod, Acc)
       end.
   
   %% 3588/6733:
  
positive.code: 
  %% acc/9
  
  acc([AM | Acc], As, I, Name, AvpName, Arity, Strict, Mod, Opts) ->
      [AM | acc1(Acc, As, I, Name, AvpName, Arity, Strict, Mod, Opts)].
  
  %% acc1/9
  
  
negative.code:     [[As | Avps], [{RC, Avp} | Failed] | Rec];
  
  %% Grouped AVP ...
  acc1([Avps | Acc], [Avp|_] = As, I, Name, Field, Arity, Strict, Mod, Opts) ->
      [[As|Avps] | acc2(Acc, Avp, I, Name, Field, Arity, Strict, Mod, Opts)];
  
  %% ... or not.
  acc1([Avps | Acc], Avp, I, Name, Field, Arity, Strict, Mod, Opts) ->
      [[Avp|Avps] | acc2(Acc, Avp, I, Name, Field, Arity, Strict, Mod, Opts)].
  
  %% acc2/9
  
  