anchor.diff:          seqadd ->
               ElemPath = [MsgName, FName],
               Append = find_translation(ElemPath, merge, AnRes, 'erlang_++'),
  -            {expr, ?expr('PF++NF'('PF', 'NF'),
  +            {expr, ?expr('PF++NF'('PF', 'NF', 'TrUserData'),
                            Transforms ++ [replace_term('PF++NF',Append)])};
           msgmerge ->
               Tr = mk_find_tr_fn_elem_or_default(MsgName, Field, false, AnRes),
  
positive.code:                    | Trs2]
                end
                || {OFName, Tr, OFMergeFn} <- OFMerges])
             | std_omitable_merge_transforms(PMsg, NMsg, FName, Var)]).
  
  std_omitable_merge_transforms(PMsg, NMsg, FName, Var) ->
      PF = var("PF~s", [FName]),
      NF = var("NF~s", [FName]),
      [replace_term('fname', FName),
  
negative.code:               || {OFName, Tr, OFMergeFn} <- OFMerges])
             | Transforms]).
  
  render_omissible_merger({FName, {overwrite, {PMsg, NMsg}}}, Var,
                          TrUserDataVar) ->
      ?expr(case {'PMsg', 'NMsg'} of
                {_, '#{fname := NF}'} -> 'Var#{fname=>NF}';
                {'#{fname := PF}', _} -> 'Var#{fname=>PF}';
                _                     -> 'Var'
            end,
            std_omitable_merge_transforms(PMsg, NMsg, FName, Var, TrUserDataVar));
  render_omissible_merger({FName, {merge, {{PMsg, NMsg}, Tr, MergeFn}}}, Var,
                          TrUserDataVar) ->
      Trs = std_omitable_merge_transforms(PMsg, NMsg, FName, Var, TrUserDataVar),
      MergeCallTmpl = ?expr('merge'('PF','NF', 'TrUserData'), Trs),
      ?expr(case {'PMsg', 'NMsg'} of
                {'#{fname := PF}', '#{fname := NF}'} ->
                    'Var#{fname=>merge(PF,NF)}';
  