anchor.diff:                      State0
               end,
               Active = sets:add_element(Peer, Active1),
  -            State1#state{active=Active};
  +            State2 = State1#state{active=Active},
  +            persist_state(State2),
  +            State2;
           false ->
               State0
       end.
   
   %% @doc Add to the passive view.
   add_to_passive_view({Name, _, _}=Peer,
  -                    #state{active=Active0, passive=Passive0}=State) ->
  +                    #state{active=Active0, passive=Passive0}=State0) ->
       lager:info("Adding ~p to passive view on ~p", [Peer, myself()]),
       IsNotMyself = not (Name =:= node()),
       NotInActiveView = not sets:is_element(Peer, Active0),
  
positive.code:         false ->
              Passive0
      end,
      State#state{passive=Passive}.
  
  %% @private
  is_full({active, Active}) ->
  
negative.code:     end.
  
  %% @private
  persist_state({Active, Passive}) ->
      write_state_to_disk({Active, Passive});
  persist_state(#state{active=Active, passive=Passive}) ->
      persist_state({Active, Passive}).
  
  %% @private
  members(Set) ->
  