anchor.diff:      {ok, SecKey} = aec_keys:peer_privkey(),
       {ok, PubKey} = aec_keys:peer_pubkey(),
       LocalPeer = #{seckey => SecKey, pubkey => PubKey},
  +    PMons = ets:new(aec_peer_monitors, [named_table, protected]),
       lager:info("aec_peers started at ~p", [LocalPeer]),
       {ok, #state{peers = gb_trees:empty(),
  -                local_peer = LocalPeer}}.
  +                local_peer = LocalPeer,
  +                peer_monitors = PMons
  +               }}.
   
   handle_call({set_local_peer_info, Peer}, _From, State) ->
       {reply, ok, State#state{local_peer = Peer}};
  
positive.code:                                 {ok, FoundPeer#peer{ connection = {connected, PeerCon} }}
                          end
                  end,
              State1 = State#state{peers = enter_peer(NewPeer, State#state.peers)},
              {reply, Res, metrics(State1)}
      end.
  
negative.code: -record(state, {peers                   :: gb_trees:tree(binary(), peer()),
                  blocked = gb_sets:new() :: gb_sets:set(peer_id()),
                  local_peer              :: peer_info(),  %% for universal handling of URIs
                  next_unblock = 0        :: integer(), %% Erlang timestamp in ms.
                  peer_monitors           :: ets:tab()
                 }).
  
  start_link() ->
  