`SELECT bitShiftLeft(toInt256(-2), number)`

`shift left for negative lhsbers is underfined!`

See https://clickhouse-test-reports.s3.yandex.net/14525/44726c37c3003ec8112dbf32efa350bd595163b3/fuzzer/report.html#fail1
{
    return CT(lhs) != CT(rhs);
}
template <size_t Bits, typename Signed>
inline std::string to_string(const wide_integer<Bits, Signed> & n)
{
    std::string res;
    if (wide_integer<Bits, Signed>::_impl::operator_eq(n, 0U))
        return "0";
    wide_integer<Bits, unsigned> t;
    bool is_neg = wide_integer<Bits, Signed>::_impl::is_negative(n);
    if (is_neg)
        t = wide_integer<Bits, Signed>::_impl::operator_unary_minus(n);
    else
        t = n;
    while (!wide_integer<Bits, unsigned>::_impl::operator_eq(t, 0U))
    {
        res.insert(res.begin(), '0' + char(wide_integer<Bits, unsigned>::_impl::operator_percent(t, 10U)));
        t = wide_integer<Bits, unsigned>::_impl::operator_slash(t, 10U);
    }
    if (is_neg)
        res.insert(res.begin(), '-');
    return res;
}
template <size_t Bits, typename Signed>
struct hash<wide_integer<Bits, Signed>>
{
    std::size_t operator()(const wide_integer<Bits, Signed> & lhs) const