static ClickHouseDeserializer of(List<ClickHouseDeserializer> list) {
        if (list == null) {
            return EMPTY_VALUE;
        }

        for (Iterator<ClickHouseDeserializer> it = list.iterator(); it.hasNext();) {
            ClickHouseDeserializer d = it.next();
            if (d == null) {
                it.remove();
            }
        }

        return list.isEmpty() ? EMPTY_VALUE : new CompositeDeserializer(list.toArray(new ClickHouseDeserializer[0]));
    }
Creates composite deserializer.

@param first first deserializer
@param more  other deserializers
@return composite deserializer
clickhouse-data/src/main/java/com/clickhouse/data/ClickHouseDeserializer.java