
**Describe the bug**
bitmapContains does not worked for UInt64 while the bitmap is of type AggregateFunction(groupBitmap, UInt64)


**How to reproduce**
SELECT 
    bitmapBuild([toUInt64(1), toUInt64(10000)]) AS res, 
    bitmapContains(res, toUInt64(200000000)) AS aa

Code: 43. DB::Exception: Received from localhost:9000. DB::Exception: Second argument for function bitmapContains must be UInt32 but it has type UInt64.. 

**Expected behavior**
for a 64-bit bitmap, bitmapContains should be able to take UInt64 for the parameter.
 
**Error message and/or stacktrace**
Code: 43. DB::Exception: Received from localhost:9000. DB::Exception: Second argument for function bitmapContains must be UInt32 but it has type UInt64.. 

**Additional context**
Tried with many versions such as 19.13, 20.3 etc including the latest 20.12.3, still not working.
{
            if (const auto * argument_column_const = checkAndGetColumn<ColumnConst>(arguments[i].column.get()))
            {
                column_ptrs[i] = typeid_cast<const ColumnAggregateFunction*>(argument_column_const->getDataColumnPtr().get());
                is_column_const[i] = true;
            }
            else
            {
                column_ptrs[i] = typeid_cast<const ColumnAggregateFunction*>(arguments[i].column.get());
                is_column_const[i] = false;
            }
        }
        const PaddedPODArray<AggregateDataPtr> & container0 = column_ptrs[0]->getData();
        const PaddedPODArray<AggregateDataPtr> & container1 = column_ptrs[1]->getData();
        for (size_t i = 0; i < input_rows_count; ++i)
        {
            const AggregateDataPtr data_ptr_0 = is_column_const[0] ? container0[0] : container0[i];
            const AggregateDataPtr data_ptr_1 = is_column_const[1] ? container1[0] : container1[i];
            const AggregateFunctionGroupBitmapData<T> & bitmap_data_1
                = *reinterpret_cast<const AggregateFunctionGroupBitmapData<T> *>(data_ptr_0);
            const AggregateFunctionGroupBitmapData<T> & bitmap_data_2
                = *reinterpret_cast<const AggregateFunctionGroupBitmapData<T> *>(data_ptr_1);
            vec_to[i] = Impl<T>::apply(bitmap_data_1, bitmap_data_2);
        }
    }
};
template <typename T>
struct BitmapAndImpl
{
    static void apply(AggregateFunctionGroupBitmapData<T> & bitmap_data_1, const AggregateFunctionGroupBitmapData<T> & bitmap_data_2)