anchor.diff:  %% -----------------------------------------------------------------------------
   -spec leave(node_spec()) -> ok.
   
  -leave(NodeSpec) ->
  +leave(#{name := _} = NodeSpec) ->
       (?MANAGER):leave(NodeSpec).
   
   
  
positive.code: 
  
  %% -----------------------------------------------------------------------------
  %% @doc
  %% @end
  %% -----------------------------------------------------------------------------
  -spec join(list() | atom() | node_spec()) ->
      ok | {error, self_join | any()}.
  
  join(NodeStr) when is_list(NodeStr) ->
      join(erlang:list_to_atom(lists:flatten(NodeStr)));
  
  join(Node) when is_atom(Node) ->
      case partisan_peer_service_manager:mynode() of
          Node ->
              {error, self_join};
          _ ->
              case node_spec(Node) of
                  {error, _} = Error ->
                      Error;
                  NodeSpec ->
                      join(NodeSpec)
              end
      end;
  
  join(#{name := _} = NodeSpec) ->
      (?MANAGER):join(NodeSpec).
  
  
  %% -----------------------------------------------------------------------------
  %% @doc
  %% @end
  %% -----------------------------------------------------------------------------
  -spec sync_join(list() | atom() | node_spec()) ->
      ok | {error, not_implemented | self_join | any()}.
  
  sync_join(NodeStr) when is_list(NodeStr) ->
      sync_join(erlang:list_to_atom(lists:flatten(NodeStr)));
  
  sync_join(Node) when is_atom(Node) ->
      case partisan_peer_service_manager:mynode() of
          Node ->
              {error, self_join};
          _ ->
              case node_spec(Node) of
                  {error, _} = Error ->
                      Error;
                  NodeSpec ->
                      sync_join(NodeSpec)
              end
      end;
  
  sync_join(#{name := _} = NodeSpec) ->
      (?MANAGER):sync_join(NodeSpec).
  
  
  %% -----------------------------------------------------------------------------
  
negative.code:                     ),
                      case Result of
                          #{name := Node} = NodeSpec ->
                              {ok, NodeSpec};
                          {badrpc, Reason} ->
                              {error, Reason}
                      end;
  