anchor.diff:  %% Broadcast record.
   -record(broadcast, {id :: id(),
                       type :: type(),
  +                    clock :: vclock:vclock(),
                       metadata :: metadata(),
                       value :: value()}).
   
  
positive.code:     ?CORE:wait_needed(Id, Threshold, Store, From, ReplyFun, ?BLOCKING);
  handle_call({read, Id, Threshold}, From, #state{store=Store}=State) ->
      %% @todo Normalize this ReplyFun in the future.
      ReplyFun = fun({_Id, Type, Value}) ->
                      {reply, {ok, {_Id, Type, Value}}, State};
                    ({error, Error}) ->
                      {reply, {error, Error}, State}
                 end,
  
negative.code: 
  -define(BLOCKING, fun() -> {noreply, State} end).
  
  %% Clock mutation macros.
  -define(CLOCK_INIT, fun(Metadata) ->
              VClock = vclock:increment(Actor, vclock:fresh()),
              orddict:store(clock, VClock, Metadata)
      end).
  
  -define(CLOCK_MERG, fun(Metadata) ->
              vclock:merge([orddict:fetch(clock, Metadata0), orddict:fetch(clock, Metadata)])
      end).
  
  %%%===================================================================
  %%% API
  %%%===================================================================
  