anchor.diff:  %% Include files
   %% --------------------------------------------------------------------
   -include("../include/sue.hrl").
  +-include_lib("runtime_tools/include/observer_backend.hrl").
   %% --------------------------------------------------------------------
   %% External exports
   
  
positive.code: -export([init/1, handle_call/3, handle_cast/2, handle_info/2, terminate/2, code_change/3]).
  -export([start_link/0]).
  -export([start/0]).
  -export([get_store/0, add_node/1, is_alive/1]).
  %% ====================================================================
  %% External functions
  %% ====================================================================
  
negative.code: %%% Internal functions
  %% --------------------------------------------------------------------
  ping_node(Node) when is_binary(Node) ->
  	ping_node(erlang:binary_to_atom(Node, latin1));
  ping_node(Node)  ->
  	case net_adm:ping(Node) of
  		pang -> get_state(pang); 
  		pong -> get_state(pong)
  	end.
  
  %%keyreplace(Key, N, TupleList1, NewTuple) -> TupleList2
  add([{node, Node}, {state, State1}, {time, Time}, {ip, Ip}], Store) ->
  	lists:keystore(Node, 1, Store, {Node, [{ip, Ip}, {state, State1}, {time, Time}]}).
  
  get_state(pang) ->
  	?DEAD;
  get_state(pong) ->
  	?ALIVE.
  
  get_timestamp() ->
      date:get_timestamp().
  