anchor.diff:    Arguments = refac_syntax:application_arguments(Node),
     case Arguments of
       [Fun, Args] ->
  -      case refac_syntax:type(Fun) of
  -	implicit_fun ->
  -	  FName = refac_syntax:implicit_fun_name(Fun),
  -	  B = refac_syntax:atom_value(refac_syntax:
  -                                      arity_qualifier_body(FName)),
  -	  A = refac_syntax:atom_value(refac_syntax:
  -                                      arity_qualifier_argument(FName)),
  -	  case {B, A} of
  -	    {Name, Arity} ->
  -              Args1 = refac_syntax:list_elements(Args),
  -              Args2 = get_arg(Args1, C, N),
  -              Args3 = refac_syntax:list(Args2),
  -      	      {refac_syntax:copy_attrs(Node, 
  -               refac_syntax:application(Operator, [Fun, Args3])), false};
  -            _ -> {Node, false}
  +	  case refac_syntax:type(Fun) of
  +	      implicit_fun ->
  +		  FName = refac_syntax:implicit_fun_name(Fun),
  +		  B = refac_syntax:atom_value(refac_syntax:
  +					      arity_qualifier_body(FName)),
  +		  A = refac_syntax:atom_value(refac_syntax:
  +					      arity_qualifier_argument(FName)),
  +		  case {B, A} of
  +		      {Name, Arity} ->
  +			  case refac_syntax:type(Args) of 
  +			      list ->
  +				  Args1 = refac_syntax:list_elements(Args),
  +				  Args2 = get_arg(Args1, C, N),
  +				  Args3 = refac_syntax:list(Args2),
  +				  {refac_syntax:copy_attrs(Node, 
  +						   refac_syntax:application(Operator, [Fun, Args3])), false};
  +			      _ -> {Node, false}
  +			  end;
  +		      _ -> {Node, false}
  +		  end;
  +	      atom -> 
  +		  case refac_syntax:type(Args) of 
  +		      list -> Args1 = refac_syntax:list_elements(Args),
  +			      Len = length(Args1),
  +			      case {refac_syntax:atom_value(Fun), Len} of
  +				  {Name, Arity} ->
  +				      Args1 = refac_syntax:list_elements(Args),
  +				      Len = length(Args1),
  +				      Args2 = get_arg(Args1, C, N),
  +				      Args3 = refac_syntax:list(Args2),
  +				      {refac_syntax:copy_attrs(Node, 
  +							       refac_syntax:application(Operator, [Fun, Args3])), false};
  +				  _ -> {Node, false}
  +			      end;
  +		      _ -> {Node, false}
  +		  end;
  +	      _ -> {Node, false}
   	  end;
  -	atom -> 
  -          Args1 = refac_syntax:list_elements(Args),
  -          Len = length(Args1),
  -          case {refac_syntax:atom_value(Fun), Len} of
  -	    {Name, Arity} ->
  -               Args2 = get_arg(Args1, C, N),
  -               Args3 = refac_syntax:list(Args2),
  -      	       {refac_syntax:copy_attrs(Node, 
  -                 refac_syntax:application(Operator, [Fun, Args3])), false};
  -             _ -> {Node, false}
  -          end;
  -        _ -> {Node, false}
  -      end;
  -    [Mod, Fun, Args] ->
  -      Args1 = refac_syntax:list_elements(Args),
  -      Len = length(Args1),
  -      case {refac_syntax:atom_value(Fun), Len, refac_syntax:atom_value(Mod)} of
  -        {Name, Arity, ModName} ->
  -          Args2 = get_arg(Args1, C, N),
  -          Args3 = refac_syntax:list(Args2),
  -	  {refac_syntax:copy_pos(Node, refac_syntax:
  -                 copy_attrs(Node, refac_syntax:application(Operator, 
  -                                       [Mod, Fun, Args3]))),false};
  -        _ -> {Node, false}
  -      end;
  -    _ -> 
  -      {Node, false}
  +      [Mod, Fun, Args] ->
  +	  case refac_syntax:type(Args) of
  +	      list ->Args1 = refac_syntax:list_elements(Args),
  +		     Len = length(Args1),	  
  +		     case {refac_syntax:atom_value(Fun), Len, refac_syntax:atom_value(Mod)} of
  +			 {Name, Arity, ModName} ->
  +			     Args2 = get_arg(Args1, C, N),
  +			     Args3 = refac_syntax:list(Args2),
  +			     {refac_syntax:copy_pos(Node, refac_syntax:
  +						    copy_attrs(Node, refac_syntax:application(Operator, 
  +											      [Mod, Fun, Args3]))),false};
  +			 _ -> {Node, false}
  +		     end;
  +	      _ -> {Node, false}
  +	  end;
  +      _ -> 
  +	  {Node, false}
     end.
   
   
  
positive.code:     {ok, Clause} ->
  	  FunPatterns = refac_syntax:clause_patterns(Clause),
  	  List = lists:dropwhile(fun(Pat)->
  					 {Pos11, _Pos22} = refac_util:get_range(Pat),
  					 Pos11 < Pos
  				 end, FunPatterns),
  	  case List of
  	      [] -> {error, "You have not selected a parameter!"};
  
negative.code:       Fun = fun(Form) ->
  	      case refac_syntax:type(Form) of 
  		function -> 
  		      Name=refac_syntax:atom_value(refac_syntax:function_name(Form)),
  		      Arity = refac_syntax:function_arity(Form),
  		      case {Name, Arity} == {FunName, FunArity} of
  			  true -> [Form, FunNode];
  			  _ -> [Form]
  		      end;
  		  _ -> [Form]
  	      end
  	    end,
  	  refac_syntax:form_list([F||Form<-Forms, F <-Fun(Form)]);
      {_, false} -> AnnAST1
    end.
  
  