anchor.diff:      ?equals(Size, Inner + Leafs).
       
   tester_size(_) ->
  -  tester:test(?MODULE, prop_size, 3, 10, [{threads, 1}]).
  +  tester:test(?MODULE, prop_size, 3, 100, [{threads, 2}]).
   
   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   
  
positive.code:     true.
  
  tester_lookup(_) ->
      tester:test(?MODULE, prop_lookup, 2, 10, [{threads, 2}]).
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  
negative.code:     RootHash1 = merkle_tree:get_hash(Tree1),
      RootHash2 = merkle_tree:get_hash(Tree2),
      RootHash3 = merkle_tree:get_hash(Tree3),    
      ?equals(RootHash1, RootHash2),
      ?assert(RootHash1 > 0),
      ?assert(RootHash3 > 0),
      ?assert(RootHash3 =/= RootHash1).
  
  tester_tree_hash(_) ->
      tester:test(?MODULE, prop_tree_hash, 3, 100, [{threads, 2}]).
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  -spec prop_insert(intervals:key(), intervals:key(), 1..50) -> true.
  prop_insert(L, L, _) -> true;
  prop_insert(L, R, BucketSize) ->
      I = intervals:new('[', L, R, ']'),
      DB = db_generator:get_db(I, BucketSize, uniform),    
      Tree1 = merkle_tree:bulk_build(I, [{bucket_size, BucketSize}], DB),
      Tree2 = merkle_tree:bulk_build(I, [{bucket_size, BucketSize}], DB),    
      Tree3 = build_tree(I, [{bucket_size, BucketSize}], BucketSize * 2 + 1, uniform),    
      Size1 = merkle_tree:size(Tree1),
      Size2 = merkle_tree:size(Tree2),
      Size3 = merkle_tree:size(Tree3),
      ?equals(Size1, Size2),
      ?assert(Size1 < Size3).
  
  tester_insert(_) ->
      tester:test(?MODULE, prop_insert, 3, 100, [{threads, 2}]).
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  