anchor.diff:      end.
   
       
  -sorted_funs(File) ->
  -    CallGraph = wrangler_callgraph_server:get_callgraph([File]),
  -    lists:append(CallGraph#callgraph.scc_order).
  -
  - 
  +sorted_funs(ModName, AnnAST) ->
  +    F1 = fun (T, S) ->
  +		 case refac_syntax:type(T) of
  +		     function ->
  +			 FunName = refac_syntax:data(refac_syntax:function_name(T)),
  +			 Arity = refac_syntax:function_arity(T),
  +			 Caller ={{ModName, FunName, Arity}, T},  
  +			 CalledFuns = wrangler_callgraph_server:called_funs(T),
  +			 ordsets:add_element({Caller, CalledFuns}, S);
  +		     _ -> S
  +		 end
  +	 end,
  +    CallerCallees=lists:usort(refac_syntax_lib:fold(F1, ordsets:new(), AnnAST)),
  +    {Sccs, _E} = refac_callgraph:construct(CallerCallees),
  +    lists:append(Sccs).
  +
   %% mod_name_as_pars_1() ->
   %%     [{{erlang, apply, 3}, [modulenmae, functionname, arglist], term},
   %%      {{erlang, spawn, 3}, [modulename, functionname, arglist], term},
  
positive.code:     Args = refac_syntax:application_arguments(Node),
      Arity = length(Args),
      case refac_syntax:type(Op) of
  	variable ->
  	    Op1 = add_type_info({type, {f_atom, ['_', try_eval(FileName, Op,  SearchPaths, TabWidth, 
  							       fun is_atom/1), Arity]}}, Op, Pid),
  
negative.code: 
  -include("../include/wrangler.hrl").
  
  type_ann_ast(File, Info, AnnAST, SearchPaths, TabWidth) ->
      {value, {module, ModName}} = lists:keysearch(module, 1, Info),
      TestFrameWorkUsed = refac_util:test_framework_used(File),
      Pid = start_type_env_process(),
      Fs = refac_syntax:form_list_elements(AnnAST),
      Funs = sorted_funs(ModName, AnnAST),
      Funs1 = lists:map(fun({{M,F, A},FunDef}) ->
  			      {{M, F, A},do_type_ann(File, FunDef, TestFrameWorkUsed,SearchPaths, TabWidth, Pid)} end, Funs), 
      Fs1 = lists:map(fun(Form) ->
  