anchor.diff:  mk_gproc_name({OrgId, NodeName}) when is_binary(OrgId) andalso is_binary(NodeName) ->
       {heartbeat, OrgId, NodeName}.
   
  +-spec mk_gproc_addr(binary()) -> {'addr', binary()}.
  +mk_gproc_addr(Addr) when is_binary(Addr) ->
  +    {addr, Addr}.
  +
   %% ------------------------------------------------------------------
   %% supervisor Function Definitions
   %% ------------------------------------------------------------------
  
positive.code:          get_or_create_process/1,
           get_process/1,
           get_heartbeating_nodes/1,
           mk_gproc_name/1]).
  
  %% Supervisor callbacks
  -export([init/1]).
  
negative.code:         Pid -> Pid
      end.
  
  get_process({_,_} =NodeRef) ->
      GprocName = mk_gproc_name(NodeRef),
      get_process_int(GprocName);
  get_process(Addr) when is_binary(Addr) ->
      GprocName = mk_gproc_addr(Addr),
      get_process_int(GprocName).
  
  get_process_int(GprocName) ->
      case catch gproc:lookup_pid({n,l,GprocName}) of
          {'EXIT', _} ->
              undefined;
  