anchor.diff:      TreeOut = {KeyNo + 1, IsLeaf, insert_into_key_values(KeyValue, KeyValues, []), Trees ++ [nil]},
       TreeOut;
   insert_into_tree({Key, _} = KeyValue, {KeyNo, false = IsLeaf, KeyValues, Trees} = _Tree, KeyNoMin, KeyNoMax) ->
  -    {ValueFound, TreeUpperPos} = search(Key, KeyValues, KeyNo, ?BINARY_SEARCH_FROM_LENGTH),
  +    {ValueFound, TreeUpperPos} = search(Key, KeyValues, KeyNo),
       case ValueFound of
           none ->
               TreeUpper = lists:nth(TreeUpperPos, Trees),
  
positive.code: 
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
  -spec search(key(), key_values(), pos_integer(), pos_integer()) -> {'none', pos_integer()} | {value(), pos_integer()}.
  
  search(Key, KeyValues, Upper, Limit) when Upper =< Limit ->
      sequential_search(Key, KeyValues, 0);
  search(Key, KeyValues, Upper, _Limit) ->
      binary_search(Key, KeyValues, 1, Upper).
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  
negative.code: -spec update_1(key_value(), tree()) -> {tree(), boolean()}.
  
  update_1({Key, _} = KeyValue, {KeyNo, IsLeaf, KeyValues, Trees}) ->
      {ValueFound, KeyPos} = search(Key, KeyValues, KeyNo),
      case ValueFound of
          none ->
              case IsLeaf of
  