anchor.diff:  	  {Tree, false}
       end.
   
  -process_exprs(Exprs, {MApp, SLoc, ELoc}) ->    
  -    {Exprs1, Exprs2} = lists:splitwith(fun(E) -> 
  -					       {SLoc1, _} =refac_util:get_range(E),
  -					       SLoc1 =/= SLoc 
  +process_exprs(Exprs, {MApp, SLoc, ELoc}) ->
  +    {Exprs1, Exprs2} = lists:splitwith(fun (E) ->
  +					       {SLoc1, _} = refac_misc:get_start_end_loc(E),
  +					       SLoc1 =/= SLoc
   				       end, Exprs),
  -    case Exprs2 of 
  -	[] -> {Exprs, false};
  -	_ -> {_Exprs21, Exprs22} = lists:splitwith(fun(E) -> 
  -							   {_, ELoc1} = refac_util:get_range(E),
  -							   ELoc1=/= ELoc 
  -						   end, Exprs2),
  -	     case Exprs22 of 
  -		 [] -> {Exprs, false}; %% THIS SHOULD NOT HAPPEN.
  -		 _ -> {Exprs1 ++ [MApp|tl(Exprs22)], true}
  -	     end
  +    case Exprs2 of
  +      [] -> {Exprs, false};
  +      _ -> {_Exprs21, Exprs22} = lists:splitwith(fun (E) ->
  +							 {_, ELoc1} = refac_misc:get_start_end_loc(E),
  +							 ELoc1 =/= ELoc
  +						 end, Exprs2),
  +	   case Exprs22 of
  +	     [] -> {Exprs, false}; %% THIS SHOULD NOT HAPPEN.
  +	     _ -> {Exprs1 ++ [MApp| tl(Exprs22)], true}
  +	   end
       end.
       
   
  
positive.code: 	  lists:usort([Name || {{_, Name}, _Def} <- MDefs ++ MUses]);
        _ -> {error, "The current file does not compile!"}
      end.
  	    
  need_bracket(Toks, Exprs) ->
      case Exprs of 
  	[E] ->
  	    {Start, End} = refac_util:get_range(E),
  	    Toks1 = lists:reverse(lists:takewhile(
  				    fun (B) -> 
  					    element(2, B) =/= Start
  				    end, Toks)),
  	    Toks2 = lists:dropwhile(fun (B) -> 
  					    case B of
  						{whitespace, _, _} -> true;
  						_ -> false
  					    end
  				    end, Toks1),
  	    Toks3 = lists:dropwhile(fun(B) ->
  					    element(2, B) =< End orelse 
  						element(1,B)==whitespace
  				    end, Toks),
  	    case Toks2 of
  		[{'(',_}| _] -> 
  		    case Toks3 of
  			[{')',_}| _] ->
  			    true;
  			_ -> false
  		    end;
  		_ ->false
  	    end;
  	_ ->false
      end.
  
  collect_names_to_avoid(AnnAST) ->
  
negative.code: 			[] -> {error, "You have not selected a sequence of expressions/patterns!"};
  			_ ->
  			    ExprList = [hd(Sel)],
  			    NeedBracket = need_bracket(refac_misc:get_toks(FunDef), ExprList),
  			    {ok, AnnAST, [hd(Sel)], NeedBracket}
  		      end;
  		  _ -> {error, "You have not selected a sequence of expressions/patterns!"}
  