anchor.diff:  				_ -> Form
   			    end
   		    end, Fs),
  -    AnnAST1 = refac_syntax:form_list(Fs1),
  +    AnnAST1 = refac_util:rewrite(AnnAST, refac_syntax:form_list(Fs1)),
       case get_all_type_info() of 
   	[] ->
   	    stop_type_env_process(),
  
positive.code: %%                                                                       %%
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  type(erlang, apply, 3) ->
      {[m_atom, fun(Args)->
  		      [A1, A2, A3] = Args, 
  		      {f_atom, [try_eval(A1, fun is_atom/1), try_eval(A2, fun is_atom/1),
  				try_eval_length(A3)]}
  	      end, any], any};
  type(_, _, _) -> 
      none.
  
      
  sorted_funs(File) ->
     CallGraph = wrangler_callgraph_server:get_callgraph([File]),
     lists:append(CallGraph#callgraph.scc_order).
  
  
negative.code: 	       lists:any(fun(T) -> T/=[any] end, PatTypes) of
  	    true ->
  		Ts = {{M, F, A}, {[hd(PT)||PT<-PatTypes], any}},
  		%% refac_io:format("Ts:\n~p\n", [Ts]),
  		add_to_type_env([Ts]);
  	      _ -> ok
  	  end,
  	  refac_util:rewrite(Form, refac_syntax:function(Name, Cs));
        _ ->
  	  Form
      end.
   
  do_type_ann_clause(Node, {FileName, Pats,TestFrameWorkUsed, SearchPaths, TabWidth}) ->
      case refac_syntax:type(Node) of
        application ->
  	    Op = refac_syntax:application_operator(Node),
  