anchor.diff:  	{value, ElementHash} ->
   	    Subtree = FindFunc(ElementHash),
   	    {SubtreeHash, _NewSubtree} = put_path(Rest, Object, Subtree, StoreFunc, FindFunc),
  -	    NewTree = put(P, SubtreeHash, Tree),
  +	    NewTree = store(P, SubtreeHash, Tree),
   	    hash_and_store(NewTree, StoreFunc)
       end.
   
  
positive.code: get_path([], Obj, _) ->
      Obj;
  get_path([P|Rest], Tree, FindFunc) ->
      case get(P, Tree) of
  	none ->
  	    none;
  	{value, ElementHash} ->
  
negative.code: empty() ->
      gb_trees:empty().
  
  store(Key, Val, Tree) ->
      case gb_trees:lookup(Key, Tree) of
  	none ->
  	    gb_trees:insert(Key, Val, Tree);
  