anchor.diff:  %%% plumtree_broadcast_handler callbacks
   %%%===================================================================
   
  --type clock() :: vclock:vclock().
  +-type clock() :: riak_dt_vclock:vclock().
   
   -type broadcast_message() :: #broadcast{}.
   -type broadcast_id() :: id().
  
positive.code: 
  %% 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) ->
              Merged = vclock:merge([orddict:fetch(clock, Metadata0), orddict:fetch(clock, Metadata)]),
              orddict:store(clock, Merged, Metadata)
      end).
  
  
negative.code: %% Broadcast record.
  -record(broadcast, {id :: id(),
                      type :: type(),
                      clock :: riak_dt_vclock:vclock(),
                      metadata :: metadata(),
                      value :: value()}).
  
  