anchor.diff:        AllFunKeys
     end.
   
  -prepare_decoration(FunTypes, Callgraph, Codeserver) ->
  +get_contracts(FunTypes, Callgraph, Codeserver) ->
     F = fun({Label, _Type}=LabelType, Acc) ->
             case dialyzer_callgraph:lookup_name(Label, Callgraph) of
               {ok, MFA} ->
  
positive.code:             error -> [{LabelType, no}|Acc]
            end
        end,
    Contracts = lists:foldl(F, [], orddict:to_list(FunTypes)),
    ModOpaques =
      [{M, lookup_opaques(M, Codeserver)} ||
        M <- lists:usort([M || {_LabelType, {{M, _, _}, _Con}} <- Contracts])],
    {Contracts, orddict:from_list(ModOpaques)}.
  
  decorate_succ_typings(FunTypesContracts, ModOpaques) ->
    F = fun({{Label, Type}, {{M, _, _}, Contract}}) ->
  
negative.code:   Records = dialyzer_codeserver:lookup_mod_records(M, CodeServer),
    NewFunTypes =
      dialyzer_dataflow:get_fun_types(ModCode, Plt, Callgraph, CodeServer, Records),
  
    FunMFAContracts = get_contracts(NewFunTypes, Callgraph, CodeServer),
    ModOpaques = get_module_opaques(FunMFAContracts, CodeServer),
    DecoratedFunTypes = decorate_succ_typings(FunMFAContracts, ModOpaques),
    %% ?Debug("NewFunTypes       ~tp\n   ~n", [NewFunTypes]),
    %% ?debug("refine DecoratedFunTypes ~tp\n   ~n", [DecoratedFunTypes]),
  