anchor.diff:  -include("beam_ssa.hrl").
   -include("beam_types.hrl").
   
  --import(lists, [member/2, reverse/1, reverse/2, splitwith/2, map/2, foldl/3,
  +-import(lists, [member/2, reverse/1, reverse/2, splitwith/2, foldl/3,
                   mapfoldl/3, nth/2, max/1, unzip/1]).
   
   -spec format_error(term()) -> nonempty_string().
  
positive.code: %% contexts to us.
  
  allow_context_passthrough({Fs, ModInfo0}) ->
      ModInfo =
          acp_forward_params([{F, beam_ssa:uses(F#b_function.bs)} || F <- Fs],
                             ModInfo0),
      {Fs, ModInfo}.
  
  acp_forward_params(FsUses, ModInfo0) ->
  
negative.code:               renames = #{} :: beam_ssa:rename_map() }).
  
  combine_matches({Fs0, ModInfo}) ->
      Fs = [combine_matches(F, ModInfo) || F <- Fs0],
      {Fs, ModInfo}.
  
  combine_matches(#b_function{bs=Blocks0,cnt=Counter0}=F, ModInfo) ->
  