anchor.diff:      [[As | Avps], [{RC, Avp} | Failed] | Rec];
   
   %% Grouped AVP ...
  -acc1([Avps | Acc], [Avp|_] = As, I, Name, AvpName, Arity, Strict, Mod, Opts) ->
  -    [[As|Avps] | acc2(Acc, Avp, I, Name, AvpName, Arity, Strict, Mod, Opts)];
  +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, AvpName, Arity, Strict, Mod, Opts) ->
  -    [[Avp|Avps] | acc2(Acc, Avp, I, Name, AvpName, Arity, Strict, Mod, Opts)].
  +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
   
  
positive.code:     [[{rc(Avp), Avp} | Failed] | Rec];
  
  %% Relaxed arities.
  acc2(Acc, Avp, _, _, AvpName, Arity, Strict, Mod, _)
    when Strict /= decode ->
      pack(Arity, AvpName, Avp, Mod, Acc);
  
  %% No maximum arity.
  acc2(Acc, Avp, _, _, AvpName, {_,'*'} = Arity, _, Mod, _) ->
      pack(Arity, AvpName, Avp, Mod, Acc);
  
  %% Or check.
  acc2(Acc, Avp, I, _, AvpName, Arity, _, Mod, _) ->
      Mx = max_arity(Arity),
      if Mx =< I ->
              [Failed | Rec] = Acc,
              [[{5009, Avp} | Failed] | Rec];
         true ->
              pack(Arity, AvpName, Avp, Mod, Acc)
      end.
  
  %% 3588/6733:
  
negative.code:        Idx, AM0) ->
      case Bin of
          <<Data:DataLen/binary, _:Pad/binary, T/binary>> ->
              {NameT, Field, Arity, {I, AM}}
                  = incr(Name, Code, Vid, M, Mod, Strict, Opts0, AM0),
  
              Opts = setopts(NameT, Name, M, Opts0),
  