anchor.diff:  
   %% transports/1
   
  -transports(#state{peerT = PeerT}) ->
  -    ets:select(PeerT, [{#peer{conn = '$1', _ = '_'},
  +transports(#state{watchdogT = WatchdogT}) ->
  +    ets:select(WatchdogT, [{#watchdog{peer = '$1', _ = '_'},
                           [{'is_pid', '$1'}],
                           ['$1']}]).
   
  
positive.code: 
  %% Possibly many peer entries for a listening transport. Note that all
  %% have the same options by construction, which is not terribly space
  %% efficient. (TODO: all entries for the same Ref should share options.)
  transport([[{type, accept}, {options, Opts} | _] | _] = Ls) ->
      [{type, listen},
       {options, Opts},
       {accept, [lists:nthtail(2,L) || L <- Ls]}].
  
  peer_dict(#state{peerT = PeerT, connT = ConnT}, Dict0) ->
      try ets:tab2list(PeerT) of
          L ->
              lists:foldl(fun(T,A) -> peer_acc(ConnT, A, T) end, Dict0, L)
      catch
          error: badarg -> Dict0  %% service has gone down
      end.
  
  peer_acc(ConnT, Acc, #peer{pid = Pid,
                             type = Type,
                             ref = Ref,
                             options = Opts,
                             wd_state = WS,
                             started = T,
                             conn = TPid}) ->
      dict:append(Ref,
                  [{type, Type},
                   {options, Opts},
                   {watchdog, {Pid, T, WS}}
                   | info_conn(ConnT, TPid, WS /= ?WD_DOWN)],
                  Acc).
  
  info_conn(ConnT, TPid, true)
    when is_pid(TPid) ->
      try ets:lookup(ConnT, TPid) of
          T -> info_conn(T)
      catch
          error: badarg -> []  %% service has gone down
      end;
  info_conn(_, _, _) ->
      [].
  
  %% The point of extracting the config here is so that 'transport' info
  
negative.code: config_acc(_, Dict) ->
      Dict.
  
  info_peer([#peer{pid = Pid, apps = SApps, caps = Caps, started = T}]) ->
      [{peer, {Pid, T}},
       {apps, SApps},
       {caps, info_caps(Caps)}
       | try [{port, info_port(Pid)}] catch _:_ -> [] end];
  info_peer([] = No) ->
      No.
  
  %% Extract information that the processes involved are expected to
  