code: private long[] indexes(ByteBuffer key)
      {
          // we use the same array both for storing the hash result, and for storing the indexes we return,
          // so that we do not need to allocate two arrays.
          long[] indexes = reusableIndexes.get();
          hash(key, key.position(), key.remaining(), 0L, indexes);
          setIndexes(indexes[0], indexes[1], hashCount, bitset.capacity(), indexes);
          return indexes;
      }
docs: a second threadlocal lookup.