anchor.diff:  int_join_node(NewNode, #membership{node=Node,partitions=Partitions,
                                      version=Version,nodes=OldNodes,
                                      gossip=Gossip}) ->
  -  Nodes = lists:usort([NewNode|OldNodes]),
  +  Nodes = lists:usort([NewNode | OldNodes]),
     P = partition:map_partitions(Partitions, Nodes),
     ?infoFmt("int join setting node to ~p", [Node]),
     #membership{
  -    partitions=P,
  +    partitions = P,
       version = vclock:increment(pid_to_list(self()), Version),
  -    node=Node,
  -    nodes=Nodes,
  -    gossip=Gossip}.
  +    node = Node,
  +    nodes = Nodes,
  +    gossip = Gossip}.
   
   int_remove_node(OldNode, #membership{node=Node,partitions=Partitions,
                                        version=Version,nodes=OldNodes,
  
positive.code:   P = partition:map_partitions(Partitions, Nodes),
    ?infoFmt("removing node ~p~n", [OldNode]),
    #membership{
      partitions=P,
      version = vclock:increment(pid_to_list(self()), Version),
      node=Node,
      nodes=Nodes,
      gossip=Gossip
    }.
  
  int_partitions_for_node(Node, State, master) ->
    Partitions = State#membership.partitions,
    {Matching,_} = lists:partition(fun({N,_}) -> N == Node end, Partitions),
    lists:map(fun({_,P}) -> P end, Matching);
  
  int_partitions_for_node(Node, State, all) ->
    %%_Partitions = State#membership.partitions,
  
negative.code: handle_info(_Info, State) -> {noreply, State}.
  
  handle_call({join_node, Node}, {_, _From},
              State = #membership{ptable = Table}) ->
    ets:delete_all_objects(Table),
    error_logger:info_msg("~p is joining the cluster.~n", [node(_From)]),
    NewState = int_join_node(Node, State),
  