anchor.diff:  print(Text) ->
   	print(Text, []).
   print(Text,Args) ->
  -	case get(silent) of
  -		false ->
  -			io:format(Text++"~n",Args);
  -		true ->
  -			none
  -	end.
  +	io:format(Text++"~n",Args).
   print_error(Text) ->
   	io:format(Text++"~n").
  -%% -------------------------------------
  +%% -------------------------------------
positive.code: %% -------------------------------------
  
  %% ------------- SSH calls -------------
  % ssh to host using key_pool, ane execute all given commands
  call_commands_on_host(_Host,_KeyPool,[]) ->
  	ok;
  call_commands_on_host(Host,KeyPool,[Command|Rest]) ->
  	print(Host++": "++Command),
  	Ans = os:cmd("ssh "++parse_key_pool(KeyPool)++" "++Host++" "++"'"++Command++"'"), % ssh -i key1 -i key2.. user@host 'command'
  	print(Ans),
  	call_commands_on_host(Host,KeyPool,Rest).
  
  %parse key_pool to ssh format (-i key1 -i key2...)
  parse_key_pool([]) ->
  
negative.code: -define(key_pool, "-k").
  -define(commands, "-c").
  -define(debug, "-d").
  
  main(Args) ->
  	[Host,KeyPool,Command] = parse_args(Args),
  	debug("args: ~p" ,[[Host,KeyPool,Command]]),
  	connection_ok(Host,KeyPool),
  	call_command_on_host(Host,KeyPool,Command).
  
  %% ------------ Arg parsing ------------
  parse_args(Args) ->
  	try
  		[Host] = args_get(Args,?hosts),
  		KeyPool = args_get(Args,?key_pool),
  		[Command] = args_get(Args,?commands),
  		put(debug,lists:member(?debug,Args)),
  		[Host,KeyPool,Command]
  	catch
  	    _Type:_Error  ->
  			print_error("usage: veil_remotecall [-k {key}] -h {user@host}  -c {command} "),
  			print_error("Script will execute all comands on each host, using key pool to authenticate"),
  			erlang:halt(1)
  	end.
  
  % get list of arguments of some type
  args_get(Args,Type) ->
  