anchor.diff:  %%%===================================================================
   
   join_cluster(Name, [JoinedName|_]=JoinedNames) ->
  -    command_preamble(Name, {join_cluster, JoinedNames}),
  +    command_preamble(Name, [join_cluster, JoinedNames]),
   
       Result = case is_joined(Name, JoinedNames) of
           true ->
  
positive.code: -define(CLUSTER_NODES, true).
  -define(MANAGER, partisan_pluggable_peer_service_manager).
  
  -define(PERFORM_LEAVES_AND_JOINS, false).           %% Do we allow cluster transitions during test execution:
                                                      %% EXTREMELY slow, given a single join can take ~30 seconds.
  
  -define(PERFORM_FAULT_INJECTION, true).             %% Do we perform fault-injection?                                            
  
  %% Debug.
  -define(DEBUG, true).
  -define(INITIAL_STATE_DEBUG, false).
  -define(PRECONDITION_DEBUG, false).
  -define(POSTCONDITION_DEBUG, false).
  
  %% Partisan connection and forwarding settings.
  -define(EGRESS_DELAY, 0).                           %% How many milliseconds to delay outgoing messages?
  -define(INGRESS_DELAY, 0).                          %% How many millisconds to delay incoming messages?
  -define(VNODE_PARTITIONING, false).                 %% Should communication be partitioned by vnode identifier?
  
  -export([command/1, 
           initial_state/0, 
  
negative.code:             ok
      end,
  
      command_conclusion(Name, [join_cluster, JoinedNames]),
  
      Result.
  
  leave_cluster(Node, JoinedNodes) ->
      command_preamble(Node, [leave_cluster, JoinedNodes]),
  
      debug("leave_cluster: leaving node ~p from cluster with members ~p", [Node, JoinedNodes]),
  
      Result = case enough_nodes_connected_to_issue_remove(JoinedNodes) of
          false ->
              ok;
          true ->
              %% Issue remove.
              rpc:call(?NAME(Node), ?MANAGER, leave, [])
      end,
  
      command_conclusion(Node, [leave_cluster, JoinedNodes]),
  
      Result.
  
  