anchor.diff:      Node = case Count > BucketSize of
                  true -> p_bulk_build({nil, 1, [], Interval, []}, Config, Bucket);
                  false -> 
  -                   Hash = case Count > 0 of
  -                              true -> run_leaf_hf(Config, erlang:term_to_binary(Bucket));
  -                              _ -> run_leaf_hf(Config, term_to_binary(0))
  +                   Hash = if Count > 0 ->
  +                                 run_leaf_hf(Config, term_to_binary(Bucket));
  +                             true ->
  +                                 run_leaf_hf(Config, term_to_binary(0))
                             end,
                      {Hash, Count, ?IIF(KeepBucket, Bucket, []), Interval, []}
              end,
  
positive.code:     is_subtype(Count, non_neg_integer()).
  keys_to_intervals(KList, IList) ->
      IBucket = [{I, 0, []} || I <- IList],
      lists:reverse(lists:foldl(fun(Key, Acc) -> p_key_in_I(Key, [], Acc) end, IBucket, KList)).
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  -spec get_XOR_fun() -> inner_hash_fun().
  get_XOR_fun() ->
      (fun([H|T]) -> lists:foldl(fun(X, Acc) -> util:bin_xor(X, Acc) end, H, T) end).
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  
negative.code: run_leaf_hf(#mt_config{ leaf_hf = Hf, signature_size = SigSize }, X) ->
      Hash = Hf(X),
      Size = erlang:byte_size(Hash),
      if Size > SigSize  -> 
             Start = Size - SigSize,
             <<_:Start/binary, SmallHash:SigSize/binary>> = Hash,
             SmallHash;
         true -> Hash
      end.
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  