anchor.diff:      lists:flatten(io_lib:format('~4w-~2..0w-~2..0w ~2..0w:~2..0w:~2..0w UTC',[YYYY,MM,DD, H,M,S])).
   
   
  -fmt_host_port({{A,B,C,D},Port}) -> io_lib:format('~p.~p.~p.~p:~p',[A,B,C,D,Port]);
  -fmt_host_port({Host,Port}) -> io_lib:format('~s:~p',[Host,Port]).
  -
  -%%%################################################################
  -collect_pids() -> collect_pids(ssh_sup).
  -
  -collect_pids(P) ->
  -    Collector = pcollect_pids(P, spawn(fun init_collector/0)),
  -    Collector ! {get_values,self()},
  -    receive
  -	{values,Values} ->
  -	    Values
  -    end.
  -
  -%%%----------------
  -pcollect_pids(undefined, Collector) ->
  -    Collector;
  -
  -pcollect_pids(A, Collector) when is_atom(A) ->
  -    pcollect_pids(whereis(A), Collector);
  -
  -pcollect_pids(Pid, Collector) when is_pid(Pid) ->
  -    Collector ! {expect,Pid},
  -    spawn(fun() ->
  -		  lists:foreach(
  -		    fun(P2) ->
  -			    pcollect_pids(P2,Collector)
  -		    end, children(Pid)),
  -		  Collector ! {value,Pid,Pid}
  -	  end),
  -    Collector;
  -
  -pcollect_pids({Ref,Pid,supervisor,_}, Collector) when is_pid(Pid),
  -						      is_reference(Ref) ->
  -    pcollect_pids(Pid, Collector);
  -
  -pcollect_pids({sshc_sup,Pid,supervisor,_}, Collector) when is_pid(Pid) ->
  -    pcollect_pids(Pid, Collector);
  -
  -pcollect_pids({sshd_sup,Pid,supervisor,_}, Collector) when is_pid(Pid) ->
  -    pcollect_pids(Pid, Collector);
  -
  -pcollect_pids({{ssh_acceptor_sup,_,_,_},Pid,supervisor,_}, Collector) when is_pid(Pid) ->
  -    pcollect_pids(Pid, Collector);
  -
  -pcollect_pids({{server,_,_,_},Pid,supervisor,_}, Collector) when is_pid(Pid) ->
  -    pcollect_pids(Pid, Collector);
  -
  -pcollect_pids({{server,_,_,_,_},Pid,supervisor,_}, Collector) when is_pid(Pid) ->
  -    pcollect_pids(Pid, Collector);
  -
  -pcollect_pids({undefined,Pid,supervisor,[ssh_connection_handler]}, Collector) ->
  -    Collector ! {value,Pid,Pid},
  -    case channels(Pid) of
  -	{ok,L} ->
  -	    [Collector!{value,P,P} || #channel{user=P} <- L];
  -	_ ->
  -	    ok
  -    end,
  -    Collector;
  -
  -pcollect_pids({_,Pid,_,_}, Collector) when is_pid(Pid) ->
  -    Collector ! {value,Pid,Pid},
  -    Collector;
  -
  -pcollect_pids(_, Collector) ->
  -    Collector.
  -
  -%%%----------------
  -init_collector() ->
  -    loop_collector([],[]).
  -
  -loop_collector(Expects, Values) ->
  -    receive
  -	{expect, Ref} ->
  -	    loop_collector([Ref|Expects], Values);
  -	{value, Ref, Val} ->
  -	    loop_collector(Expects--[Ref], [Val|Values]);
  -	{get_values, From} when Expects==[] ->
  -%%				Values=/=[] ->
  -	    From ! {values,Values}
  -    end.
  +%%%================================================================
  +
  +%% ?wr_record(address);
  +%% wr_record(R) -> io_lib:format('~p~n',[R]).
  
positive.code: 	    []
      end.
  
  is_connection_handler(Pid) ->
      try
  	{ssh_connection_handler,init,_} =
  	    proplists:get_value(
  	      '$initial_call',
  	      proplists:get_value(
  		dictionary,
  		process_info(Pid, [dictionary])))
      of
  	_ -> true
  
      catch
  	_:_ ->
  	    false
      end.
  
  channels(Pid) ->
      case is_connection_handler(Pid) of
  	true ->
  	    ssh_connection_handler:info(Pid,all);
  	false ->
  	    false
      end.
  
  %%%================================================================
  underline(Str, LineChar) ->
  
negative.code: 	    [io_lib:nl(),
  	     print_general(),
  	     io_lib:nl(),
  	     underline("Client(s)", $-),
  	     print_sups(client, sshc_sup),
  	     io_lib:nl(),
  	     underline("Daemon(s)", $-),
  	     print_sups(server, sshd_sup),
  	     io_lib:nl()]
      catch
  	_:_ ->
  