private static long hash128to64(long u, long v) {
        long a = (u ^ v) * kMul;
        a ^= (a >>> 47);
        long b = (v ^ a) * kMul;
        b ^= (b >>> 47);
        b *= kMul;
        return b;
    }
NOTE: The code is modified to be compatible with CityHash128 used in
ClickHouse
clickhouse-data/src/main/java/com/clickhouse/data/ClickHouseCityHash.java