anchor.diff:              {error, Error}
       end,
       {reply, Result, State};
  +
  +%% Given a message identifer, return stale if we've seen an object with
  +%% a vector clock that's greater than the provided one.
   handle_call({is_stale, Id, TheirClock}, _From, #state{store=Store}=State) ->
       Result = case get(Id, Store) of
           {ok, {_, _, Metadata, _}} ->
  
positive.code: handle_call({update, Id, Operation, Actor}, _From, #state{store=Store, counter=Counter}=State) ->
      {ok, Result} = ?CORE:update(Id, Operation, Actor, Store),
      {reply, {ok, Result}, State#state{counter=increment_counter(Counter)}};
  handle_call({thread, Module, Function, Args}, _From, #state{store=Store}=State) ->
      ok = ?CORE:thread(Module, Function, Args, Store),
      {reply, ok, State};
  handle_call({wait_needed, Id, Threshold}, From, #state{store=Store}=State) ->
      ReplyFun = fun(ReadThreshold) -> {reply, {ok, ReadThreshold}, State} end,
      ?CORE:wait_needed(Id, Threshold, Store, From, ReplyFun, ?BLOCKING);
  
negative.code:     {ok, #state{actor=Actor, counter=Counter, store=Store}}.
  
  %% @private
  -spec handle_call(term(), {pid(), term()}, #state{}) ->
      {reply, term(), #state{}}.
  
  %% Local declare operation, which will need to initialize metadata and
  %% broadcast the value to the remote nodes.
  handle_call({declare, Id, Type}, _From,
              #state{store=Store, actor=Actor, counter=Counter}=State) ->
      Result = ?CORE:declare(Id, Type, ?CLOCK_INIT, Store),
  