{
    if (!(functionUnaryExecuteType<Impl, UInt8>(block, arguments, result)
        || functionUnaryExecuteType<Impl, UInt16>(block, arguments, result)
        || functionUnaryExecuteType<Impl, UInt32>(block, arguments, result)
        || functionUnaryExecuteType<Impl, UInt64>(block, arguments, result)
        || functionUnaryExecuteType<Impl, Int8>(block, arguments, result)
        || functionUnaryExecuteType<Impl, Int16>(block, arguments, result)
        || functionUnaryExecuteType<Impl, Int32>(block, arguments, result)
        || functionUnaryExecuteType<Impl, Int64>(block, arguments, result)
        || functionUnaryExecuteType<Impl, Float32>(block, arguments, result)
        || functionUnaryExecuteType<Impl, Float64>(block, arguments, result)))
       throw Exception("Illegal column " + block.getByPosition(arguments[0]).column->getName()
            + " of argument of function " + getName(),
            ErrorCodes::ILLEGAL_COLUMN);
}
}