anchor.diff:      do_add_tokens(RemainToks, RemFs, [F1|NewFs]).
   
   
  +-spec add_range(syntaxTree(), [token()]) -> syntaxTree().	
   add_range(AST, Toks) ->
       ast_traverse_api:full_buTP(fun do_add_range/2, AST, Toks).
   do_add_range(Node, Toks) ->
  
positive.code: 	 write_refactored_files/4,
  	 write_refactored_files_for_preview/2, expand_files/2,
  	 get_client_files/2, file_format/1, tokenize/3,
  	 concat_toks/1, get_toks/1, test_framework_used/1,
  	 get_modules_by_file/1]).
  
  
  -export([ is_expr/1, is_pattern/1,
   	 is_exported/2, inscope_funs/1, get_range/1,
   	 get_var_exports/1,
   	 get_env_vars/1, get_bound_vars/1, get_free_vars/1,
   	 reset_attrs/1, update_ann/2,
   	  callback_funs/1,
  	   rewrite/2 
   	 ]).
  -include("../include/wrangler.hrl").
  
  -compile(export_all).
  
  
  %% =====================================================================
  %% @spec write_refactored_files(Files::[{OldFileName::filename(), NewFileName::filename(),
  %%                             AST::syntaxTree()}])-> [ok|{error, term()}]
  %% @doc Pretty-print the abstract syntax trees to a files, and add the previous 
  %% version to history for undo purpose. <code>Files</code> is a list of three element 
  %% tuples. The first element in the tuple is the original file name, the second element 
  
negative.code: %% should be the same as the first element, and the third element in the tuple is the 
  %% AST represention of the file.
  
  %% Note: This function should not longer be used.
  
  -spec(write_refactored_files([{{filename(),filename()},syntaxTree()}]) -> 'ok').
  write_refactored_files(Files) ->
      F = fun ({{File1, File2}, AST}) ->
  