anchor.diff:          vclock:merge([StateA#chstate.vclock,
                   StateB#chstate.vclock])),
       CHRing = chash:merge_rings(StateA#chstate.chring,StateB#chstate.chring),
  -    Meta = merge_meta(StateA#chstate.meta, StateB#chstate.meta),
  +    Meta = merge_meta({StateA#chstate.nodename, StateA#chstate.meta}, {StateB#chstate.nodename, StateB#chstate.meta}),
       #chstate{nodename=MyNodeName,
                vclock=VClock,
                chring=CHRing,
  
positive.code:     end.
  
  %% @private
  merge_meta(M1,M2) ->
      dict:merge(fun(_,D1,D2) -> pick_val(D1,D2) end, M1, M2).
  
  %% @private
  pick_val(M1,M2) ->
      case M1#meta_entry.lastmod > M2#meta_entry.lastmod of
          true -> M1;
          false -> M2
      end.                   
  
negative.code:     timer:sleep(1001), % ensure that lastmod is at least one second later
      Ring2 = remove_meta(key,Ring1),
      ?assertEqual(undefined, get_meta(key, Ring2)),
      ?assertEqual(undefined, get_meta(key, ?CHSTATE{meta=merge_meta({'node1',Ring1?CHSTATE.meta}, {'node2',Ring2?CHSTATE.meta})})),
      ?assertEqual(undefined, get_meta(key, ?CHSTATE{meta=merge_meta({'node2',Ring2?CHSTATE.meta}, {'node1',Ring1?CHSTATE.meta})})).
  
  rename_test() ->
      Ring0 = fresh(2, node()),
  