``` sql
SELECT NULL, uniqUpTo(2)([[], [], ['', 'aa', NULL], ['\0\0', '\0'], []], x) FROM (SELECT arrayJoin([[uniq(['aaaa', NULL, '', ''], [[], ['', '', NULL, NULL, ''], []])]]) AS x)
```

```
../src/Common/FieldVisitors.h:148:22: runtime error: nan is outside the range of representable values of type 'unsigned long'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ../src/Common/FieldVisitors.h:148:22 in
```
template <> constexpr bool isDecimalField<DecimalField<Decimal32>>() { return true; }
template <> constexpr bool isDecimalField<DecimalField<Decimal64>>() { return true; }
template <> constexpr bool isDecimalField<DecimalField<Decimal128>>() { return true; }
template <> constexpr bool isDecimalField<DecimalField<Decimal256>>() { return true; }
/** Implements `+=` operation.
 *  Returns false if the result is zero.
 */
class FieldVisitorSum : public StaticVisitor<bool>
{
private:
    const Field & rhs;
public:
    explicit FieldVisitorSum(const Field & rhs_) : rhs(rhs_) {}
    
    bool operator() (Int64 & x) const { return this->operator()(reinterpret_cast<UInt64 &>(x)); }
    bool operator() (UInt64 & x) const
    {
        x += rhs.reinterpret<UInt64>();
        return x != 0;
    }
    bool operator() (Float64 & x) const { x += get<Float64>(rhs); return x != 0; }