anchor.diff:      ?assert(riak_dt_vclock:equal(VC1_4, VC_MVR2)).
       
   
  +%% Do we need a merge? Anyway its functionality is very similar to propagate.
   %merge_test() ->
   %    LWW1 = {old_value, 3},
   %    LWW2 = {new_value, 4},
  
positive.code: 
  %% @doc
  %% An Multi-Value Register CRDT.
  %%
  %% @reference Marc Shapiro, Nuno Preguiça, Carlos Baquero, Marek Zawirski (2011) A comprehensive study of
  %% Convergent and Commutative Replicated Data Types. http://hal.upmc.fr/inria-00555588/
  %%
  
negative.code:     NewVC = riak_dt_vclock:merge([H, VC]),
      getMax(T, NewVC).   
  
  %% @doc Merge a `mvreg()' to another `mvreg()'. Note that the first `mvreg()' is local and can have multiple vector clocks,
  %% while the second one is remote and only has one vector clock.
  merge_to([], MVReg2) ->
      MVReg2;
  merge_to([H|T], MVReg2) ->
  