https://clickhouse-test-reports.s3.yandex.net/17375/99073c26ee2692f8efe2ab14b2d8ae0fd813b80e/fuzzer/fuzzer.log

```
SELECT
    k,
    topK(v)
FROM 
(
    SELECT
        number % 7 AS k,
        arrayMap(x -> arrayMap(x -> if(x = 0, NULL, toString(x)), range(x)), range(intDiv(number, 1))) AS v
    FROM system.numbers
    LIMIT 257
)
GROUP BY k
ORDER BY k ASC
```
#pragma once
#include <string.h>
#include <math.h>
#include <new>
#include <utility>
#include <boost/noncopyable.hpp>
#include <Core/Defines.h>
#include <common/types.h>
#include <Common/Exception.h>
#include <IO/WriteBuffer.h>
#include <IO/WriteHelpers.h>
#include <IO/ReadBuffer.h>
#include <IO/ReadHelpers.h>
#include <IO/VarInt.h>
#include <Common/HashTable/HashTableAllocator.h>
#include <Common/HashTable/HashTableKeyHolder.h>
#ifdef DBMS_HASH_MAP_DEBUG_RESIZES
    #include <iostream>
    #include <iomanip>
    #include <Common/Stopwatch.h>
#endif
/** NOTE HashTable could only be used for memmoveable (position independent) types.
  * Example: std::string is not position independent in libstdc++ with C++11 ABI or in libc++.
  * Also, key in hash table must be of type, that zero bytes is compared equals to zero key.