anchor.diff:  	       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]),
  +		%% refac_io:format("Ts:\n~p\n", [Ts]),
   		add_to_type_env([Ts]);
   	      _ -> ok
   	  end,
  -	  refac_syntax:function(Name, Cs);
  +	  refac_util:rewrite(Form, refac_syntax:function(Name, Cs));
         _ ->
   	  Form
       end.
    
  -do_type_ann_clause(Node, Pats) ->
  +do_type_ann_clause(Node, {FileName, Pats,TestFrameWorkUsed, SearchPaths, TabWidth}) ->
       case refac_syntax:type(Node) of
         application ->
   	    Op = refac_syntax:application_operator(Node),
  
positive.code: 	    prop_type_info(AnnAST1, TypeInfo)
      end.
  
  
  do_type_ann(Form) ->
      case refac_syntax:type(Form) of
        function ->
  	  Ann = refac_syntax:get_ann(Form),
  	  {value, {fun_def, {M, F, A, _, _}}}=lists:keysearch(fun_def,1,Ann),
  	  Name = refac_syntax:function_name(Form),
  	  Cs = [refac_util:full_buTP(fun do_type_ann_clause/2, C, refac_syntax:clause_patterns(C))
  		|| C <- refac_syntax:function_clauses(Form)],
  	  CsPats = [refac_syntax:clause_patterns(C) || C <- refac_syntax:function_clauses(Form)],
  	  TypeInfo = get_all_type_info(),
  
negative.code: %%                                                                       %%
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  prop_type_info(AnnAST, TypeEnv) ->  
      element(1,refac_util:stop_tdTP(fun do_prop_type_info/2, AnnAST, TypeEnv)).    
    
  do_prop_type_info(Node, TypeEnv) ->
      case refac_syntax:type(Node) of 
  