anchor.diff:      <<HashKey:128/integer>> = crypto:hash(md5, ensure_binary(Key)),
       HashKey rem Segments.
   
  +-spec hash([{_, binary()}]) -> hash().
   hash(Term) ->
       L = [H || {_,H} <- Term],
       HashBin = crypto:hash(md5, L),
  
positive.code: compute_shift(Width) ->
      %% By design, we require width to be a power of 2.
      Shift = erlang:trunc(math:log(Width) / math:log(2)),
      case math:pow(2, Shift) == Width of
          true ->
              Shift
      end.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  verified_hashes(Level, Bucket, Tree=#tree{shift=Shift}) ->
      N = (Level - 1) * Shift,
      TopHash = top_hash(Tree),
  
negative.code:                  modstate=Mod:new(Opts)},
      reload_top_hash(Tree).
  
  -spec reload_top_hash(tree()) -> tree().
  reload_top_hash(Tree) ->
      {ok, TopHash} = m_fetch({0,0}, undefined, Tree),
      Tree#tree{top_hash=TopHash}.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  -spec height(tree()) -> pos_integer().
  height(#tree{height=Height}) ->
      Height.
  
  -spec top_hash(tree()) -> hash() | undefined.
  top_hash(#tree{top_hash=TopHash}) ->
      TopHash.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  -spec insert(key(), value(), tree()) -> tree() | corrupted().
  insert(Key, Value, Tree) when is_binary(Value) ->
      Segment = get_segment(Key, Tree),
      case get_path(Segment, Tree) of
  