anchor.diff:  state() ->
     gen_server:call(membership, state).
     
  -state(State) ->
  -  gen_server:call(membership, {state, State}).
  -  
   replica_nodes(Node) ->
     gen_server:call(membership, {replica_nodes, Node}).
     
  
positive.code: 
  stop() ->
    gen_server:call(membership, stop).
  	
  fire_gossip({A1, A2, A3}) ->
    random:seed(A1, A2, A3),
    State = state(),
    Config = State#membership.config,
    Nodes = lists:filter(fun(E) -> E /= node() end, membership:nodes()),
    ModState = if
      length(Nodes) > 0 ->
        Node = random_node(Nodes),
          % error_logger:info_msg("firing gossip at ~p~n", [Node]),
        RemoteState = gen_server:call({membership, Node}, {share, State}),
        merge_states(RemoteState, State);
      true -> State
    end,
    membership:state(ModState#membership{config=Config}),
    reload_storage_servers(State, ModState),
    reload_sync_servers(State, ModState),
    save_state(ModState),
    timer:apply_after(random:uniform(5000) + 5000, membership, fire_gossip, [random:seed()]).
  
  %%====================================================================
  
negative.code:     partitions=Partitions,
      config=Config
    }.
  
  % Merges in another state, reloads any storage
  % and sync servers that changed, saves state
  % to disk.
  %
  % merge_and_save_state(state(), state()) -> {ok, NewState :: state()}
  merge_and_save_state(RemoteState, State) ->
    Merged =
      case vector_clock:compare(State#membership.version, RemoteState#membership.version) of
        less -> % remote state is strictly newer than ours
          RemoteState;
        greater -> % remote state is strictly older
          State;
        equal -> % same vector clock
          State;
        concurrent -> % must merge
          merge_states(RemoteState, State)
    end,
    NewState = Merged#membership{config = State#membership.config},
    reload_storage_servers(State, NewState),
    reload_sync_servers(State, NewState),
    save_state(NewState),
    {ok, NewState}.
  
  
  reload_sync_servers(empty, NewState) ->
    Config = configuration:get_config(),
  