<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def validate_int(datum, **kwargs):
 """ Check that the data value is a non floating point number with size less that Int32. Also support for logicalType timestamp validation with datetime. Int32 = -2147483648<=datum<=2147483647 conditional python types (int, long, numbers.Integral, datetime.time, datetime.datetime, datetime.date) Parameters datum: Any Data being validated kwargs: Any Unused kwargs """

    return (
            (isinstance(datum, (int, long, numbers.Integral))
             and INT_MIN_VALUE <= datum <= INT_MAX_VALUE
             and not isinstance(datum, bool))
            or isinstance(
                datum, (datetime.time, datetime.datetime, datetime.date)
            )
    )