anchor.diff:  
   handle_info({'DOWN', MonitorRef, _, _, _},
               #state{watchers = Watchers} = State) ->
  +    error_logger:info_msg("menelaus_event watcher down."),
       Watchers2 = case lists:keytake(MonitorRef, 2, Watchers) of
                       false -> Watchers;
  -                    {value, {_Pid, MonitorRef}, WatchersRest} ->
  +                    {value, {Pid, MonitorRef}, WatchersRest} ->
  +                        error_logger:info_msg("menelaus_event watcher down: ~p~n", [Pid]),
                           erlang:demonitor(MonitorRef, [flush]),
                           WatchersRest
                   end,
  
positive.code:                                              {?MODULE, ns_node_disco_events},
                                               ns_node_disco_events)
                      end)}.
  
  register_watcher(Pid) ->
      gen_event:call(ns_config_events,
  
negative.code: handle_event(_, State) ->
      {ok, State}.
  
  handle_call(watchers, #state{watchers = Watchers} = State) ->
      {ok, Watchers, State};
  
  handle_call({register_watcher, Pid},
              #state{watchers = Watchers} = State) ->
      Watchers2 = case lists:keysearch(Pid, 1, Watchers) of
  