anchor.diff:      function ->
         case expr_to_clause(AnnAST, Node) of
           {ok, FunClause}-> 
  -          FunNode = 
  -            case refac_util:pos_to_fun_def(AnnAST, Pos) of
  -              {ok, F} -> F;
  -              {error, _} -> 
  -                exit({error, "The function definition can not locate"})
  -            end,
  -          FunPatterns = refac_syntax:clause_patterns(FunClause),
  -          {FunStartPos, _FunEndPos} = refac_util:get_range(FunClause),  
  -	  case refac_util:pos_to_fun_name(AnnAST, FunStartPos) of  
  -            {ok, Result} -> {Result, FunPatterns, [], [], FunNode} ;
  -            {error, _Reason} -> exit({error, " Bad position"})
  -          end;
  -        {error, _Reason} -> exit({error, "The function can not locate"})
  +	      FunNode = 
  +		  case refac_util:pos_to_fun_def(AnnAST, Pos) of
  +		      {ok, F} -> F;
  +		      {error, Reason} -> 
  +			  {error, Reason}
  +		  end,
  +	      FunPatterns = refac_syntax:clause_patterns(FunClause),
  +	      {FunStartPos, _FunEndPos} = refac_util:get_range(FunClause),  
  +	      case refac_util:pos_to_fun_name(AnnAST, FunStartPos) of  
  +		  {ok, Result} -> {Result, FunPatterns, [], [], FunNode} ;
  +		  {error, Reason1} -> {error, Reason1}
  +	      end;
  +	  {error, Reason} -> {error, Reason}
         end;
       application ->
         case pos_to_app(AnnAST, Pos) of
  
positive.code: %% @end
  %% =====================================================================
  pos_to_arg(AppNode, Pos)->
    Args = refac_syntax:application_arguments(AppNode),
    case Args of 
      [] ->  exit({error, "You have not selected a parameter!"});
      _ -> 
        {Pos1, _Pos2} = refac_util:get_range(hd(Args)),
        if Pos >= Pos1 -> ok;
  	 true -> exit({error, "You have not selected a parameter!"})
        end
    end,
    List = lists:dropwhile(fun(Pat)->
                               {Pos11, _Pos22} = refac_util:get_range(Pat),
                               Pos11 < Pos
                           end, Args),
    case List of
      [] -> exit({error, "You have not selected a parameter!"});
      _ -> hd(List)
    end.
  
  
  %% =====================================================================
  
negative.code: check_parameters(FirstPar, Number, Arity, FunPatterns, AppNode, AppPar) ->
      case (Number < 1) or (Number > Arity) of
        true ->
  	  {error,
  		"It is not possible to tuple " ++  integer_to_list(Number) ++ " parameters"};
        false ->
  	  case AppNode of
  	    [] -> search_par(FunPatterns, Number, FirstPar);
  