anchor.diff:  parse_key_pool([Key1|Rest]) ->
   	" -i "++Key1++parse_key_pool(Rest).
   
  +%get ansver from os command result
  +get_answer(Result) ->
  +	SeparatorPosition = string:rchr(Result,$*),
  +	string:substr(Result,1,SeparatorPosition-1).
   
  -%% -------------- Printing -------------
  +%get return code from os command result
  +get_return_code(Result) ->
  +	Code = lists:last(string:tokens(Result,"*")),
  +	[_ | RevertedCode] =lists:reverse(Code),
  +	list_to_integer(lists:reverse(RevertedCode)).
  +%% -------------------------------------
  +
  +
  +%% -------- Internal functions ---------
  +debug(Text) ->
  +	debug(Text,[]).
   debug(Text,Args) ->
   	case get(debug) of
   		true ->
  
positive.code: print(Text) ->
  	print(Text, []).
  print(Text,Args) ->
  	case get(silent) of
  		false ->
  			io:format(Text++"~n",Args);
  		true ->
  			none
  	end.
  print_error(Text) ->
  	io:format(Text++"~n").
  %% -------------------------------------
  
negative.code: %% -------------------------------------
  
  %% ------------- SSH calls -------------
  % checks if ssh connection can be established and simple command can be executed
  connection_ok(Host,KeyPool) ->
  	case call_command_on_host(Host,KeyPool,"test 0") of
  		{0,_} -> true;
  		_ -> false
  	end.
  
  % tries to connect with given list of keys and executes command on host
  call_command_on_host(Host,KeyPool,Command) ->
  	debug(Host++": "++Command),
  	Result = os:cmd("ssh "++parse_key_pool(KeyPool)++" "++Host++" "++"'"++Command++"'" ++ ";echo *$?"), % ssh -i key1 -i key2.. user@host 'command' ; echo #$?
  	Ans = get_answer(Result),
  	RCode = get_return_code(Result),
  	debug(Ans),
  	{RCode,Ans}.
  
  %parse key_pool to ssh format (-i key1 -i key2...)
  parse_key_pool([]) ->
  