#if 0#endif
#ifdef __linux__
#define TYPE_OF(E, T) _Generic(E, T : 1 , default: 0)
static_assert(TYPE_OF(1 == 1, int));
static_assert(TYPE_OF(1 == 1, int));
static_assert(TYPE_OF(1 == 1L, int));
static_assert(TYPE_OF(1 == 1L, int));
static_assert(TYPE_OF(1 == 1LL, int));
static_assert(TYPE_OF(1 == 1LL, int));
static_assert(TYPE_OF(1 == 1U, int));
static_assert(TYPE_OF(1 == 1U, int));
static_assert(TYPE_OF(1 == 1UL, int));
static_assert(TYPE_OF(1 == 1UL, int));
static_assert(TYPE_OF(1 == 1ULL, int));
static_assert(TYPE_OF(1 == 1ULL, int));
static_assert(TYPE_OF(1 == 1.0, int));
static_assert(TYPE_OF(1 == 1.0, int));
static_assert(TYPE_OF(1 == 1.0f, int));
static_assert(TYPE_OF(1 == 1.0f, int));
static_assert(TYPE_OF(1 == 1.0L, int));
static_assert(TYPE_OF(1 == 1.0L, int));
static_assert(TYPE_OF(1L == 1, int));
static_assert(TYPE_OF(1L == 1, int));
static_assert(TYPE_OF(1L == 1L, int));
static_assert(TYPE_OF(1L == 1L, int));
static_assert(TYPE_OF(1L == 1LL, int));
static_assert(TYPE_OF(1L == 1LL, int));
static_assert(TYPE_OF(1L == 1U, int));
static_assert(TYPE_OF(1L == 1U, int));
static_assert(TYPE_OF(1L == 1UL, int));
static_assert(TYPE_OF(1L == 1UL, int));
static_assert(TYPE_OF(1L == 1ULL, int));
static_assert(TYPE_OF(1L == 1ULL, int));
static_assert(TYPE_OF(1L == 1.0, int));
static_assert(TYPE_OF(1L == 1.0, int));
static_assert(TYPE_OF(1L == 1.0f, int));
static_assert(TYPE_OF(1L == 1.0f, int));
static_assert(TYPE_OF(1L == 1.0L, int));
static_assert(TYPE_OF(1L == 1.0L, int));
static_assert(TYPE_OF(1LL == 1, int));
static_assert(TYPE_OF(1LL == 1, int));
static_assert(TYPE_OF(1LL == 1L, int));
static_assert(TYPE_OF(1LL == 1L, int));
static_assert(TYPE_OF(1LL == 1LL, int));
static_assert(TYPE_OF(1LL == 1LL, int));
static_assert(TYPE_OF(1LL == 1U, int));
static_assert(TYPE_OF(1LL == 1U, int));
static_assert(TYPE_OF(1LL == 1UL, int));
static_assert(TYPE_OF(1LL == 1UL, int));
static_assert(TYPE_OF(1LL == 1ULL, int));
static_assert(TYPE_OF(1LL == 1ULL, int));
static_assert(TYPE_OF(1LL == 1.0, int));
static_assert(TYPE_OF(1LL == 1.0, int));
static_assert(TYPE_OF(1LL == 1.0f, int));
static_assert(TYPE_OF(1LL == 1.0f, int));
static_assert(TYPE_OF(1LL == 1.0L, int));
static_assert(TYPE_OF(1LL == 1.0L, int));
static_assert(TYPE_OF(1U == 1, int));
static_assert(TYPE_OF(1U == 1, int));
static_assert(TYPE_OF(1U == 1L, int));
static_assert(TYPE_OF(1U == 1L, int));
static_assert(TYPE_OF(1U == 1LL, int));
static_assert(TYPE_OF(1U == 1LL, int));
static_assert(TYPE_OF(1U == 1U, int));
static_assert(TYPE_OF(1U == 1U, int));
static_assert(TYPE_OF(1U == 1UL, int));
static_assert(TYPE_OF(1U == 1UL, int));
static_assert(TYPE_OF(1U == 1ULL, int));
static_assert(TYPE_OF(1U == 1ULL, int));
static_assert(TYPE_OF(1U == 1.0, int));
static_assert(TYPE_OF(1U == 1.0, int));
static_assert(TYPE_OF(1U == 1.0f, int));
static_assert(TYPE_OF(1U == 1.0f, int));
static_assert(TYPE_OF(1U == 1.0L, int));
static_assert(TYPE_OF(1U == 1.0L, int));
static_assert(TYPE_OF(1UL == 1, int));
static_assert(TYPE_OF(1UL == 1, int));
static_assert(TYPE_OF(1UL == 1L, int));
static_assert(TYPE_OF(1UL == 1L, int));
static_assert(TYPE_OF(1UL == 1LL, int));
static_assert(TYPE_OF(1UL == 1LL, int));
static_assert(TYPE_OF(1UL == 1U, int));
static_assert(TYPE_OF(1UL == 1U, int));
static_assert(TYPE_OF(1UL == 1UL, int));
static_assert(TYPE_OF(1UL == 1UL, int));
static_assert(TYPE_OF(1UL == 1ULL, int));
static_assert(TYPE_OF(1UL == 1ULL, int));
static_assert(TYPE_OF(1UL == 1.0, int));
static_assert(TYPE_OF(1UL == 1.0, int));
static_assert(TYPE_OF(1UL == 1.0f, int));
static_assert(TYPE_OF(1UL == 1.0f, int));
static_assert(TYPE_OF(1UL == 1.0L, int));
static_assert(TYPE_OF(1UL == 1.0L, int));
static_assert(TYPE_OF(1ULL == 1, int));
static_assert(TYPE_OF(1ULL == 1, int));
static_assert(TYPE_OF(1ULL == 1L, int));
static_assert(TYPE_OF(1ULL == 1L, int));
static_assert(TYPE_OF(1ULL == 1LL, int));
static_assert(TYPE_OF(1ULL == 1LL, int));
static_assert(TYPE_OF(1ULL == 1U, int));
static_assert(TYPE_OF(1ULL == 1U, int));
static_assert(TYPE_OF(1ULL == 1UL, int));
static_assert(TYPE_OF(1ULL == 1UL, int));
static_assert(TYPE_OF(1ULL == 1ULL, int));
static_assert(TYPE_OF(1ULL == 1ULL, int));
static_assert(TYPE_OF(1ULL == 1.0, int));
static_assert(TYPE_OF(1ULL == 1.0, int));
static_assert(TYPE_OF(1ULL == 1.0f, int));
static_assert(TYPE_OF(1ULL == 1.0f, int));
static_assert(TYPE_OF(1ULL == 1.0L, int));
static_assert(TYPE_OF(1ULL == 1.0L, int));
static_assert(TYPE_OF(1.0 == 1, int));
static_assert(TYPE_OF(1.0 == 1, int));
static_assert(TYPE_OF(1.0 == 1L, int));
static_assert(TYPE_OF(1.0 == 1L, int));
static_assert(TYPE_OF(1.0 == 1LL, int));
static_assert(TYPE_OF(1.0 == 1LL, int));
static_assert(TYPE_OF(1.0 == 1U, int));
static_assert(TYPE_OF(1.0 == 1U, int));
static_assert(TYPE_OF(1.0 == 1UL, int));
static_assert(TYPE_OF(1.0 == 1UL, int));
static_assert(TYPE_OF(1.0 == 1ULL, int));
static_assert(TYPE_OF(1.0 == 1ULL, int));
static_assert(TYPE_OF(1.0 == 1.0, int));
static_assert(TYPE_OF(1.0 == 1.0, int));
static_assert(TYPE_OF(1.0 == 1.0f, int));
static_assert(TYPE_OF(1.0 == 1.0f, int));
static_assert(TYPE_OF(1.0 == 1.0L, int));
static_assert(TYPE_OF(1.0 == 1.0L, int));
static_assert(TYPE_OF(1.0f == 1, int));
static_assert(TYPE_OF(1.0f == 1, int));
static_assert(TYPE_OF(1.0f == 1L, int));
static_assert(TYPE_OF(1.0f == 1L, int));
static_assert(TYPE_OF(1.0f == 1LL, int));
static_assert(TYPE_OF(1.0f == 1LL, int));
static_assert(TYPE_OF(1.0f == 1U, int));
static_assert(TYPE_OF(1.0f == 1U, int));
static_assert(TYPE_OF(1.0f == 1UL, int));
static_assert(TYPE_OF(1.0f == 1UL, int));
static_assert(TYPE_OF(1.0f == 1ULL, int));
static_assert(TYPE_OF(1.0f == 1ULL, int));
static_assert(TYPE_OF(1.0f == 1.0, int));
static_assert(TYPE_OF(1.0f == 1.0, int));
static_assert(TYPE_OF(1.0f == 1.0f, int));
static_assert(TYPE_OF(1.0f == 1.0f, int));
static_assert(TYPE_OF(1.0f == 1.0L, int));
static_assert(TYPE_OF(1.0f == 1.0L, int));
static_assert(TYPE_OF(1.0L == 1, int));
static_assert(TYPE_OF(1.0L == 1, int));
static_assert(TYPE_OF(1.0L == 1L, int));
static_assert(TYPE_OF(1.0L == 1L, int));
static_assert(TYPE_OF(1.0L == 1LL, int));
static_assert(TYPE_OF(1.0L == 1LL, int));
static_assert(TYPE_OF(1.0L == 1U, int));
static_assert(TYPE_OF(1.0L == 1U, int));
static_assert(TYPE_OF(1.0L == 1UL, int));
static_assert(TYPE_OF(1.0L == 1UL, int));
static_assert(TYPE_OF(1.0L == 1ULL, int));
static_assert(TYPE_OF(1.0L == 1ULL, int));
static_assert(TYPE_OF(1.0L == 1.0, int));
static_assert(TYPE_OF(1.0L == 1.0, int));
static_assert(TYPE_OF(1.0L == 1.0f, int));
static_assert(TYPE_OF(1.0L == 1.0f, int));
static_assert(TYPE_OF(1.0L == 1.0L, int));
static_assert(TYPE_OF(1.0L == 1.0L, int));
static_assert(TYPE_OF(1 != 1, int));
static_assert(TYPE_OF(1 != 1, int));
static_assert(TYPE_OF(1 != 1L, int));
static_assert(TYPE_OF(1 != 1L, int));
static_assert(TYPE_OF(1 != 1LL, int));
static_assert(TYPE_OF(1 != 1LL, int));
static_assert(TYPE_OF(1 != 1U, int));
static_assert(TYPE_OF(1 != 1U, int));
static_assert(TYPE_OF(1 != 1UL, int));
static_assert(TYPE_OF(1 != 1UL, int));
static_assert(TYPE_OF(1 != 1ULL, int));
static_assert(TYPE_OF(1 != 1ULL, int));
static_assert(TYPE_OF(1 != 1.0, int));
static_assert(TYPE_OF(1 != 1.0, int));
static_assert(TYPE_OF(1 != 1.0f, int));
static_assert(TYPE_OF(1 != 1.0f, int));
static_assert(TYPE_OF(1 != 1.0L, int));
static_assert(TYPE_OF(1 != 1.0L, int));
static_assert(TYPE_OF(1L != 1, int));
static_assert(TYPE_OF(1L != 1, int));
static_assert(TYPE_OF(1L != 1L, int));
static_assert(TYPE_OF(1L != 1L, int));
static_assert(TYPE_OF(1L != 1LL, int));
static_assert(TYPE_OF(1L != 1LL, int));
static_assert(TYPE_OF(1L != 1U, int));
static_assert(TYPE_OF(1L != 1U, int));
static_assert(TYPE_OF(1L != 1UL, int));
static_assert(TYPE_OF(1L != 1UL, int));
static_assert(TYPE_OF(1L != 1ULL, int));
static_assert(TYPE_OF(1L != 1ULL, int));
static_assert(TYPE_OF(1L != 1.0, int));
static_assert(TYPE_OF(1L != 1.0, int));
static_assert(TYPE_OF(1L != 1.0f, int));
static_assert(TYPE_OF(1L != 1.0f, int));
static_assert(TYPE_OF(1L != 1.0L, int));
static_assert(TYPE_OF(1L != 1.0L, int));
static_assert(TYPE_OF(1LL != 1, int));
static_assert(TYPE_OF(1LL != 1, int));
static_assert(TYPE_OF(1LL != 1L, int));
static_assert(TYPE_OF(1LL != 1L, int));
static_assert(TYPE_OF(1LL != 1LL, int));
static_assert(TYPE_OF(1LL != 1LL, int));
static_assert(TYPE_OF(1LL != 1U, int));
static_assert(TYPE_OF(1LL != 1U, int));
static_assert(TYPE_OF(1LL != 1UL, int));
static_assert(TYPE_OF(1LL != 1UL, int));
static_assert(TYPE_OF(1LL != 1ULL, int));
static_assert(TYPE_OF(1LL != 1ULL, int));
static_assert(TYPE_OF(1LL != 1.0, int));
static_assert(TYPE_OF(1LL != 1.0, int));
static_assert(TYPE_OF(1LL != 1.0f, int));
static_assert(TYPE_OF(1LL != 1.0f, int));
static_assert(TYPE_OF(1LL != 1.0L, int));
static_assert(TYPE_OF(1LL != 1.0L, int));
static_assert(TYPE_OF(1U != 1, int));
static_assert(TYPE_OF(1U != 1, int));
static_assert(TYPE_OF(1U != 1L, int));
static_assert(TYPE_OF(1U != 1L, int));
static_assert(TYPE_OF(1U != 1LL, int));
static_assert(TYPE_OF(1U != 1LL, int));
static_assert(TYPE_OF(1U != 1U, int));
static_assert(TYPE_OF(1U != 1U, int));
static_assert(TYPE_OF(1U != 1UL, int));
static_assert(TYPE_OF(1U != 1UL, int));
static_assert(TYPE_OF(1U != 1ULL, int));
static_assert(TYPE_OF(1U != 1ULL, int));
static_assert(TYPE_OF(1U != 1.0, int));
static_assert(TYPE_OF(1U != 1.0, int));
static_assert(TYPE_OF(1U != 1.0f, int));
static_assert(TYPE_OF(1U != 1.0f, int));
static_assert(TYPE_OF(1U != 1.0L, int));
static_assert(TYPE_OF(1U != 1.0L, int));
static_assert(TYPE_OF(1UL != 1, int));
static_assert(TYPE_OF(1UL != 1, int));
static_assert(TYPE_OF(1UL != 1L, int));
static_assert(TYPE_OF(1UL != 1L, int));
static_assert(TYPE_OF(1UL != 1LL, int));
static_assert(TYPE_OF(1UL != 1LL, int));
static_assert(TYPE_OF(1UL != 1U, int));
static_assert(TYPE_OF(1UL != 1U, int));
static_assert(TYPE_OF(1UL != 1UL, int));
static_assert(TYPE_OF(1UL != 1UL, int));
static_assert(TYPE_OF(1UL != 1ULL, int));
static_assert(TYPE_OF(1UL != 1ULL, int));
static_assert(TYPE_OF(1UL != 1.0, int));
static_assert(TYPE_OF(1UL != 1.0, int));
static_assert(TYPE_OF(1UL != 1.0f, int));
static_assert(TYPE_OF(1UL != 1.0f, int));
static_assert(TYPE_OF(1UL != 1.0L, int));
static_assert(TYPE_OF(1UL != 1.0L, int));
static_assert(TYPE_OF(1ULL != 1, int));
static_assert(TYPE_OF(1ULL != 1, int));
static_assert(TYPE_OF(1ULL != 1L, int));
static_assert(TYPE_OF(1ULL != 1L, int));
static_assert(TYPE_OF(1ULL != 1LL, int));
static_assert(TYPE_OF(1ULL != 1LL, int));
static_assert(TYPE_OF(1ULL != 1U, int));
static_assert(TYPE_OF(1ULL != 1U, int));
static_assert(TYPE_OF(1ULL != 1UL, int));
static_assert(TYPE_OF(1ULL != 1UL, int));
static_assert(TYPE_OF(1ULL != 1ULL, int));
static_assert(TYPE_OF(1ULL != 1ULL, int));
static_assert(TYPE_OF(1ULL != 1.0, int));
static_assert(TYPE_OF(1ULL != 1.0, int));
static_assert(TYPE_OF(1ULL != 1.0f, int));
static_assert(TYPE_OF(1ULL != 1.0f, int));
static_assert(TYPE_OF(1ULL != 1.0L, int));
static_assert(TYPE_OF(1ULL != 1.0L, int));
static_assert(TYPE_OF(1.0 != 1, int));
static_assert(TYPE_OF(1.0 != 1, int));
static_assert(TYPE_OF(1.0 != 1L, int));
static_assert(TYPE_OF(1.0 != 1L, int));
static_assert(TYPE_OF(1.0 != 1LL, int));
static_assert(TYPE_OF(1.0 != 1LL, int));
static_assert(TYPE_OF(1.0 != 1U, int));
static_assert(TYPE_OF(1.0 != 1U, int));
static_assert(TYPE_OF(1.0 != 1UL, int));
static_assert(TYPE_OF(1.0 != 1UL, int));
static_assert(TYPE_OF(1.0 != 1ULL, int));
static_assert(TYPE_OF(1.0 != 1ULL, int));
static_assert(TYPE_OF(1.0 != 1.0, int));
static_assert(TYPE_OF(1.0 != 1.0, int));
static_assert(TYPE_OF(1.0 != 1.0f, int));
static_assert(TYPE_OF(1.0 != 1.0f, int));
static_assert(TYPE_OF(1.0 != 1.0L, int));
static_assert(TYPE_OF(1.0 != 1.0L, int));
static_assert(TYPE_OF(1.0f != 1, int));
static_assert(TYPE_OF(1.0f != 1, int));
static_assert(TYPE_OF(1.0f != 1L, int));
static_assert(TYPE_OF(1.0f != 1L, int));
static_assert(TYPE_OF(1.0f != 1LL, int));
static_assert(TYPE_OF(1.0f != 1LL, int));
static_assert(TYPE_OF(1.0f != 1U, int));
static_assert(TYPE_OF(1.0f != 1U, int));
static_assert(TYPE_OF(1.0f != 1UL, int));
static_assert(TYPE_OF(1.0f != 1UL, int));
static_assert(TYPE_OF(1.0f != 1ULL, int));
static_assert(TYPE_OF(1.0f != 1ULL, int));
static_assert(TYPE_OF(1.0f != 1.0, int));
static_assert(TYPE_OF(1.0f != 1.0, int));
static_assert(TYPE_OF(1.0f != 1.0f, int));
static_assert(TYPE_OF(1.0f != 1.0f, int));
static_assert(TYPE_OF(1.0f != 1.0L, int));
static_assert(TYPE_OF(1.0f != 1.0L, int));
static_assert(TYPE_OF(1.0L != 1, int));
static_assert(TYPE_OF(1.0L != 1, int));
static_assert(TYPE_OF(1.0L != 1L, int));
static_assert(TYPE_OF(1.0L != 1L, int));
static_assert(TYPE_OF(1.0L != 1LL, int));
static_assert(TYPE_OF(1.0L != 1LL, int));
static_assert(TYPE_OF(1.0L != 1U, int));
static_assert(TYPE_OF(1.0L != 1U, int));
static_assert(TYPE_OF(1.0L != 1UL, int));
static_assert(TYPE_OF(1.0L != 1UL, int));
static_assert(TYPE_OF(1.0L != 1ULL, int));
static_assert(TYPE_OF(1.0L != 1ULL, int));
static_assert(TYPE_OF(1.0L != 1.0, int));
static_assert(TYPE_OF(1.0L != 1.0, int));
static_assert(TYPE_OF(1.0L != 1.0f, int));
static_assert(TYPE_OF(1.0L != 1.0f, int));
static_assert(TYPE_OF(1.0L != 1.0L, int));
static_assert(TYPE_OF(1.0L != 1.0L, int));
static_assert(TYPE_OF(1 > 1, int));
static_assert(TYPE_OF(1 > 1, int));
static_assert(TYPE_OF(1 > 1L, int));
static_assert(TYPE_OF(1 > 1L, int));
static_assert(TYPE_OF(1 > 1LL, int));
static_assert(TYPE_OF(1 > 1LL, int));
static_assert(TYPE_OF(1 > 1U, int));
static_assert(TYPE_OF(1 > 1U, int));
static_assert(TYPE_OF(1 > 1UL, int));
static_assert(TYPE_OF(1 > 1UL, int));
static_assert(TYPE_OF(1 > 1ULL, int));
static_assert(TYPE_OF(1 > 1ULL, int));
static_assert(TYPE_OF(1 > 1.0, int));
static_assert(TYPE_OF(1 > 1.0, int));
static_assert(TYPE_OF(1 > 1.0f, int));
static_assert(TYPE_OF(1 > 1.0f, int));
static_assert(TYPE_OF(1 > 1.0L, int));
static_assert(TYPE_OF(1 > 1.0L, int));
static_assert(TYPE_OF(1L > 1, int));
static_assert(TYPE_OF(1L > 1, int));
static_assert(TYPE_OF(1L > 1L, int));
static_assert(TYPE_OF(1L > 1L, int));
static_assert(TYPE_OF(1L > 1LL, int));
static_assert(TYPE_OF(1L > 1LL, int));
static_assert(TYPE_OF(1L > 1U, int));
static_assert(TYPE_OF(1L > 1U, int));
static_assert(TYPE_OF(1L > 1UL, int));
static_assert(TYPE_OF(1L > 1UL, int));
static_assert(TYPE_OF(1L > 1ULL, int));
static_assert(TYPE_OF(1L > 1ULL, int));
static_assert(TYPE_OF(1L > 1.0, int));
static_assert(TYPE_OF(1L > 1.0, int));
static_assert(TYPE_OF(1L > 1.0f, int));
static_assert(TYPE_OF(1L > 1.0f, int));
static_assert(TYPE_OF(1L > 1.0L, int));
static_assert(TYPE_OF(1L > 1.0L, int));
static_assert(TYPE_OF(1LL > 1, int));
static_assert(TYPE_OF(1LL > 1, int));
static_assert(TYPE_OF(1LL > 1L, int));
static_assert(TYPE_OF(1LL > 1L, int));
static_assert(TYPE_OF(1LL > 1LL, int));
static_assert(TYPE_OF(1LL > 1LL, int));
static_assert(TYPE_OF(1LL > 1U, int));
static_assert(TYPE_OF(1LL > 1U, int));
static_assert(TYPE_OF(1LL > 1UL, int));
static_assert(TYPE_OF(1LL > 1UL, int));
static_assert(TYPE_OF(1LL > 1ULL, int));
static_assert(TYPE_OF(1LL > 1ULL, int));
static_assert(TYPE_OF(1LL > 1.0, int));
static_assert(TYPE_OF(1LL > 1.0, int));
static_assert(TYPE_OF(1LL > 1.0f, int));
static_assert(TYPE_OF(1LL > 1.0f, int));
static_assert(TYPE_OF(1LL > 1.0L, int));
static_assert(TYPE_OF(1LL > 1.0L, int));
static_assert(TYPE_OF(1U > 1, int));
static_assert(TYPE_OF(1U > 1, int));
static_assert(TYPE_OF(1U > 1L, int));
static_assert(TYPE_OF(1U > 1L, int));
static_assert(TYPE_OF(1U > 1LL, int));
static_assert(TYPE_OF(1U > 1LL, int));
static_assert(TYPE_OF(1U > 1U, int));
static_assert(TYPE_OF(1U > 1U, int));
static_assert(TYPE_OF(1U > 1UL, int));
static_assert(TYPE_OF(1U > 1UL, int));
static_assert(TYPE_OF(1U > 1ULL, int));
static_assert(TYPE_OF(1U > 1ULL, int));
static_assert(TYPE_OF(1U > 1.0, int));
static_assert(TYPE_OF(1U > 1.0, int));
static_assert(TYPE_OF(1U > 1.0f, int));
static_assert(TYPE_OF(1U > 1.0f, int));
static_assert(TYPE_OF(1U > 1.0L, int));
static_assert(TYPE_OF(1U > 1.0L, int));
static_assert(TYPE_OF(1UL > 1, int));
static_assert(TYPE_OF(1UL > 1, int));
static_assert(TYPE_OF(1UL > 1L, int));
static_assert(TYPE_OF(1UL > 1L, int));
static_assert(TYPE_OF(1UL > 1LL, int));
static_assert(TYPE_OF(1UL > 1LL, int));
static_assert(TYPE_OF(1UL > 1U, int));
static_assert(TYPE_OF(1UL > 1U, int));
static_assert(TYPE_OF(1UL > 1UL, int));
static_assert(TYPE_OF(1UL > 1UL, int));
static_assert(TYPE_OF(1UL > 1ULL, int));
static_assert(TYPE_OF(1UL > 1ULL, int));
static_assert(TYPE_OF(1UL > 1.0, int));
static_assert(TYPE_OF(1UL > 1.0, int));
static_assert(TYPE_OF(1UL > 1.0f, int));
static_assert(TYPE_OF(1UL > 1.0f, int));
static_assert(TYPE_OF(1UL > 1.0L, int));
static_assert(TYPE_OF(1UL > 1.0L, int));
static_assert(TYPE_OF(1ULL > 1, int));
static_assert(TYPE_OF(1ULL > 1, int));
static_assert(TYPE_OF(1ULL > 1L, int));
static_assert(TYPE_OF(1ULL > 1L, int));
static_assert(TYPE_OF(1ULL > 1LL, int));
static_assert(TYPE_OF(1ULL > 1LL, int));
static_assert(TYPE_OF(1ULL > 1U, int));
static_assert(TYPE_OF(1ULL > 1U, int));
static_assert(TYPE_OF(1ULL > 1UL, int));
static_assert(TYPE_OF(1ULL > 1UL, int));
static_assert(TYPE_OF(1ULL > 1ULL, int));
static_assert(TYPE_OF(1ULL > 1ULL, int));
static_assert(TYPE_OF(1ULL > 1.0, int));
static_assert(TYPE_OF(1ULL > 1.0, int));
static_assert(TYPE_OF(1ULL > 1.0f, int));
static_assert(TYPE_OF(1ULL > 1.0f, int));
static_assert(TYPE_OF(1ULL > 1.0L, int));
static_assert(TYPE_OF(1ULL > 1.0L, int));
static_assert(TYPE_OF(1.0 > 1, int));
static_assert(TYPE_OF(1.0 > 1, int));
static_assert(TYPE_OF(1.0 > 1L, int));
static_assert(TYPE_OF(1.0 > 1L, int));
static_assert(TYPE_OF(1.0 > 1LL, int));
static_assert(TYPE_OF(1.0 > 1LL, int));
static_assert(TYPE_OF(1.0 > 1U, int));
static_assert(TYPE_OF(1.0 > 1U, int));
static_assert(TYPE_OF(1.0 > 1UL, int));
static_assert(TYPE_OF(1.0 > 1UL, int));
static_assert(TYPE_OF(1.0 > 1ULL, int));
static_assert(TYPE_OF(1.0 > 1ULL, int));
static_assert(TYPE_OF(1.0 > 1.0, int));
static_assert(TYPE_OF(1.0 > 1.0, int));
static_assert(TYPE_OF(1.0 > 1.0f, int));
static_assert(TYPE_OF(1.0 > 1.0f, int));
static_assert(TYPE_OF(1.0 > 1.0L, int));
static_assert(TYPE_OF(1.0 > 1.0L, int));
static_assert(TYPE_OF(1.0f > 1, int));
static_assert(TYPE_OF(1.0f > 1, int));
static_assert(TYPE_OF(1.0f > 1L, int));
static_assert(TYPE_OF(1.0f > 1L, int));
static_assert(TYPE_OF(1.0f > 1LL, int));
static_assert(TYPE_OF(1.0f > 1LL, int));
static_assert(TYPE_OF(1.0f > 1U, int));
static_assert(TYPE_OF(1.0f > 1U, int));
static_assert(TYPE_OF(1.0f > 1UL, int));
static_assert(TYPE_OF(1.0f > 1UL, int));
static_assert(TYPE_OF(1.0f > 1ULL, int));
static_assert(TYPE_OF(1.0f > 1ULL, int));
static_assert(TYPE_OF(1.0f > 1.0, int));
static_assert(TYPE_OF(1.0f > 1.0, int));
static_assert(TYPE_OF(1.0f > 1.0f, int));
static_assert(TYPE_OF(1.0f > 1.0f, int));
static_assert(TYPE_OF(1.0f > 1.0L, int));
static_assert(TYPE_OF(1.0f > 1.0L, int));
static_assert(TYPE_OF(1.0L > 1, int));
static_assert(TYPE_OF(1.0L > 1, int));
static_assert(TYPE_OF(1.0L > 1L, int));
static_assert(TYPE_OF(1.0L > 1L, int));
static_assert(TYPE_OF(1.0L > 1LL, int));
static_assert(TYPE_OF(1.0L > 1LL, int));
static_assert(TYPE_OF(1.0L > 1U, int));
static_assert(TYPE_OF(1.0L > 1U, int));
static_assert(TYPE_OF(1.0L > 1UL, int));
static_assert(TYPE_OF(1.0L > 1UL, int));
static_assert(TYPE_OF(1.0L > 1ULL, int));
static_assert(TYPE_OF(1.0L > 1ULL, int));
static_assert(TYPE_OF(1.0L > 1.0, int));
static_assert(TYPE_OF(1.0L > 1.0, int));
static_assert(TYPE_OF(1.0L > 1.0f, int));
static_assert(TYPE_OF(1.0L > 1.0f, int));
static_assert(TYPE_OF(1.0L > 1.0L, int));
static_assert(TYPE_OF(1.0L > 1.0L, int));
static_assert(TYPE_OF(1 >= 1, int));
static_assert(TYPE_OF(1 >= 1, int));
static_assert(TYPE_OF(1 >= 1L, int));
static_assert(TYPE_OF(1 >= 1L, int));
static_assert(TYPE_OF(1 >= 1LL, int));
static_assert(TYPE_OF(1 >= 1LL, int));
static_assert(TYPE_OF(1 >= 1U, int));
static_assert(TYPE_OF(1 >= 1U, int));
static_assert(TYPE_OF(1 >= 1UL, int));
static_assert(TYPE_OF(1 >= 1UL, int));
static_assert(TYPE_OF(1 >= 1ULL, int));
static_assert(TYPE_OF(1 >= 1ULL, int));
static_assert(TYPE_OF(1 >= 1.0, int));
static_assert(TYPE_OF(1 >= 1.0, int));
static_assert(TYPE_OF(1 >= 1.0f, int));
static_assert(TYPE_OF(1 >= 1.0f, int));
static_assert(TYPE_OF(1 >= 1.0L, int));
static_assert(TYPE_OF(1 >= 1.0L, int));
static_assert(TYPE_OF(1L >= 1, int));
static_assert(TYPE_OF(1L >= 1, int));
static_assert(TYPE_OF(1L >= 1L, int));
static_assert(TYPE_OF(1L >= 1L, int));
static_assert(TYPE_OF(1L >= 1LL, int));
static_assert(TYPE_OF(1L >= 1LL, int));
static_assert(TYPE_OF(1L >= 1U, int));
static_assert(TYPE_OF(1L >= 1U, int));
static_assert(TYPE_OF(1L >= 1UL, int));
static_assert(TYPE_OF(1L >= 1UL, int));
static_assert(TYPE_OF(1L >= 1ULL, int));
static_assert(TYPE_OF(1L >= 1ULL, int));
static_assert(TYPE_OF(1L >= 1.0, int));
static_assert(TYPE_OF(1L >= 1.0, int));
static_assert(TYPE_OF(1L >= 1.0f, int));
static_assert(TYPE_OF(1L >= 1.0f, int));
static_assert(TYPE_OF(1L >= 1.0L, int));
static_assert(TYPE_OF(1L >= 1.0L, int));
static_assert(TYPE_OF(1LL >= 1, int));
static_assert(TYPE_OF(1LL >= 1, int));
static_assert(TYPE_OF(1LL >= 1L, int));
static_assert(TYPE_OF(1LL >= 1L, int));
static_assert(TYPE_OF(1LL >= 1LL, int));
static_assert(TYPE_OF(1LL >= 1LL, int));
static_assert(TYPE_OF(1LL >= 1U, int));
static_assert(TYPE_OF(1LL >= 1U, int));
static_assert(TYPE_OF(1LL >= 1UL, int));
static_assert(TYPE_OF(1LL >= 1UL, int));
static_assert(TYPE_OF(1LL >= 1ULL, int));
static_assert(TYPE_OF(1LL >= 1ULL, int));
static_assert(TYPE_OF(1LL >= 1.0, int));
static_assert(TYPE_OF(1LL >= 1.0, int));
static_assert(TYPE_OF(1LL >= 1.0f, int));
static_assert(TYPE_OF(1LL >= 1.0f, int));
static_assert(TYPE_OF(1LL >= 1.0L, int));
static_assert(TYPE_OF(1LL >= 1.0L, int));
static_assert(TYPE_OF(1U >= 1, int));
static_assert(TYPE_OF(1U >= 1, int));
static_assert(TYPE_OF(1U >= 1L, int));
static_assert(TYPE_OF(1U >= 1L, int));
static_assert(TYPE_OF(1U >= 1LL, int));
static_assert(TYPE_OF(1U >= 1LL, int));
static_assert(TYPE_OF(1U >= 1U, int));
static_assert(TYPE_OF(1U >= 1U, int));
static_assert(TYPE_OF(1U >= 1UL, int));
static_assert(TYPE_OF(1U >= 1UL, int));
static_assert(TYPE_OF(1U >= 1ULL, int));
static_assert(TYPE_OF(1U >= 1ULL, int));
static_assert(TYPE_OF(1U >= 1.0, int));
static_assert(TYPE_OF(1U >= 1.0, int));
static_assert(TYPE_OF(1U >= 1.0f, int));
static_assert(TYPE_OF(1U >= 1.0f, int));
static_assert(TYPE_OF(1U >= 1.0L, int));
static_assert(TYPE_OF(1U >= 1.0L, int));
static_assert(TYPE_OF(1UL >= 1, int));
static_assert(TYPE_OF(1UL >= 1, int));
static_assert(TYPE_OF(1UL >= 1L, int));
static_assert(TYPE_OF(1UL >= 1L, int));
static_assert(TYPE_OF(1UL >= 1LL, int));
static_assert(TYPE_OF(1UL >= 1LL, int));
static_assert(TYPE_OF(1UL >= 1U, int));
static_assert(TYPE_OF(1UL >= 1U, int));
static_assert(TYPE_OF(1UL >= 1UL, int));
static_assert(TYPE_OF(1UL >= 1UL, int));
static_assert(TYPE_OF(1UL >= 1ULL, int));
static_assert(TYPE_OF(1UL >= 1ULL, int));
static_assert(TYPE_OF(1UL >= 1.0, int));
static_assert(TYPE_OF(1UL >= 1.0, int));
static_assert(TYPE_OF(1UL >= 1.0f, int));
static_assert(TYPE_OF(1UL >= 1.0f, int));
static_assert(TYPE_OF(1UL >= 1.0L, int));
static_assert(TYPE_OF(1UL >= 1.0L, int));
static_assert(TYPE_OF(1ULL >= 1, int));
static_assert(TYPE_OF(1ULL >= 1, int));
static_assert(TYPE_OF(1ULL >= 1L, int));
static_assert(TYPE_OF(1ULL >= 1L, int));
static_assert(TYPE_OF(1ULL >= 1LL, int));
static_assert(TYPE_OF(1ULL >= 1LL, int));
static_assert(TYPE_OF(1ULL >= 1U, int));
static_assert(TYPE_OF(1ULL >= 1U, int));
static_assert(TYPE_OF(1ULL >= 1UL, int));
static_assert(TYPE_OF(1ULL >= 1UL, int));
static_assert(TYPE_OF(1ULL >= 1ULL, int));
static_assert(TYPE_OF(1ULL >= 1ULL, int));
static_assert(TYPE_OF(1ULL >= 1.0, int));
static_assert(TYPE_OF(1ULL >= 1.0, int));
static_assert(TYPE_OF(1ULL >= 1.0f, int));
static_assert(TYPE_OF(1ULL >= 1.0f, int));
static_assert(TYPE_OF(1ULL >= 1.0L, int));
static_assert(TYPE_OF(1ULL >= 1.0L, int));
static_assert(TYPE_OF(1.0 >= 1, int));
static_assert(TYPE_OF(1.0 >= 1, int));
static_assert(TYPE_OF(1.0 >= 1L, int));
static_assert(TYPE_OF(1.0 >= 1L, int));
static_assert(TYPE_OF(1.0 >= 1LL, int));
static_assert(TYPE_OF(1.0 >= 1LL, int));
static_assert(TYPE_OF(1.0 >= 1U, int));
static_assert(TYPE_OF(1.0 >= 1U, int));
static_assert(TYPE_OF(1.0 >= 1UL, int));
static_assert(TYPE_OF(1.0 >= 1UL, int));
static_assert(TYPE_OF(1.0 >= 1ULL, int));
static_assert(TYPE_OF(1.0 >= 1ULL, int));
static_assert(TYPE_OF(1.0 >= 1.0, int));
static_assert(TYPE_OF(1.0 >= 1.0, int));
static_assert(TYPE_OF(1.0 >= 1.0f, int));
static_assert(TYPE_OF(1.0 >= 1.0f, int));
static_assert(TYPE_OF(1.0 >= 1.0L, int));
static_assert(TYPE_OF(1.0 >= 1.0L, int));
static_assert(TYPE_OF(1.0f >= 1, int));
static_assert(TYPE_OF(1.0f >= 1, int));
static_assert(TYPE_OF(1.0f >= 1L, int));
static_assert(TYPE_OF(1.0f >= 1L, int));
static_assert(TYPE_OF(1.0f >= 1LL, int));
static_assert(TYPE_OF(1.0f >= 1LL, int));
static_assert(TYPE_OF(1.0f >= 1U, int));
static_assert(TYPE_OF(1.0f >= 1U, int));
static_assert(TYPE_OF(1.0f >= 1UL, int));
static_assert(TYPE_OF(1.0f >= 1UL, int));
static_assert(TYPE_OF(1.0f >= 1ULL, int));
static_assert(TYPE_OF(1.0f >= 1ULL, int));
static_assert(TYPE_OF(1.0f >= 1.0, int));
static_assert(TYPE_OF(1.0f >= 1.0, int));
static_assert(TYPE_OF(1.0f >= 1.0f, int));
static_assert(TYPE_OF(1.0f >= 1.0f, int));
static_assert(TYPE_OF(1.0f >= 1.0L, int));
static_assert(TYPE_OF(1.0f >= 1.0L, int));
static_assert(TYPE_OF(1.0L >= 1, int));
static_assert(TYPE_OF(1.0L >= 1, int));
static_assert(TYPE_OF(1.0L >= 1L, int));
static_assert(TYPE_OF(1.0L >= 1L, int));
static_assert(TYPE_OF(1.0L >= 1LL, int));
static_assert(TYPE_OF(1.0L >= 1LL, int));
static_assert(TYPE_OF(1.0L >= 1U, int));
static_assert(TYPE_OF(1.0L >= 1U, int));
static_assert(TYPE_OF(1.0L >= 1UL, int));
static_assert(TYPE_OF(1.0L >= 1UL, int));
static_assert(TYPE_OF(1.0L >= 1ULL, int));
static_assert(TYPE_OF(1.0L >= 1ULL, int));
static_assert(TYPE_OF(1.0L >= 1.0, int));
static_assert(TYPE_OF(1.0L >= 1.0, int));
static_assert(TYPE_OF(1.0L >= 1.0f, int));
static_assert(TYPE_OF(1.0L >= 1.0f, int));
static_assert(TYPE_OF(1.0L >= 1.0L, int));
static_assert(TYPE_OF(1.0L >= 1.0L, int));
static_assert(TYPE_OF(1 < 1, int));
static_assert(TYPE_OF(1 < 1, int));
static_assert(TYPE_OF(1 < 1L, int));
static_assert(TYPE_OF(1 < 1L, int));
static_assert(TYPE_OF(1 < 1LL, int));
static_assert(TYPE_OF(1 < 1LL, int));
static_assert(TYPE_OF(1 < 1U, int));
static_assert(TYPE_OF(1 < 1U, int));
static_assert(TYPE_OF(1 < 1UL, int));
static_assert(TYPE_OF(1 < 1UL, int));
static_assert(TYPE_OF(1 < 1ULL, int));
static_assert(TYPE_OF(1 < 1ULL, int));
static_assert(TYPE_OF(1 < 1.0, int));
static_assert(TYPE_OF(1 < 1.0, int));
static_assert(TYPE_OF(1 < 1.0f, int));
static_assert(TYPE_OF(1 < 1.0f, int));
static_assert(TYPE_OF(1 < 1.0L, int));
static_assert(TYPE_OF(1 < 1.0L, int));
static_assert(TYPE_OF(1L < 1, int));
static_assert(TYPE_OF(1L < 1, int));
static_assert(TYPE_OF(1L < 1L, int));
static_assert(TYPE_OF(1L < 1L, int));
static_assert(TYPE_OF(1L < 1LL, int));
static_assert(TYPE_OF(1L < 1LL, int));
static_assert(TYPE_OF(1L < 1U, int));
static_assert(TYPE_OF(1L < 1U, int));
static_assert(TYPE_OF(1L < 1UL, int));
static_assert(TYPE_OF(1L < 1UL, int));
static_assert(TYPE_OF(1L < 1ULL, int));
static_assert(TYPE_OF(1L < 1ULL, int));
static_assert(TYPE_OF(1L < 1.0, int));
static_assert(TYPE_OF(1L < 1.0, int));
static_assert(TYPE_OF(1L < 1.0f, int));
static_assert(TYPE_OF(1L < 1.0f, int));
static_assert(TYPE_OF(1L < 1.0L, int));
static_assert(TYPE_OF(1L < 1.0L, int));
static_assert(TYPE_OF(1LL < 1, int));
static_assert(TYPE_OF(1LL < 1, int));
static_assert(TYPE_OF(1LL < 1L, int));
static_assert(TYPE_OF(1LL < 1L, int));
static_assert(TYPE_OF(1LL < 1LL, int));
static_assert(TYPE_OF(1LL < 1LL, int));
static_assert(TYPE_OF(1LL < 1U, int));
static_assert(TYPE_OF(1LL < 1U, int));
static_assert(TYPE_OF(1LL < 1UL, int));
static_assert(TYPE_OF(1LL < 1UL, int));
static_assert(TYPE_OF(1LL < 1ULL, int));
static_assert(TYPE_OF(1LL < 1ULL, int));
static_assert(TYPE_OF(1LL < 1.0, int));
static_assert(TYPE_OF(1LL < 1.0, int));
static_assert(TYPE_OF(1LL < 1.0f, int));
static_assert(TYPE_OF(1LL < 1.0f, int));
static_assert(TYPE_OF(1LL < 1.0L, int));
static_assert(TYPE_OF(1LL < 1.0L, int));
static_assert(TYPE_OF(1U < 1, int));
static_assert(TYPE_OF(1U < 1, int));
static_assert(TYPE_OF(1U < 1L, int));
static_assert(TYPE_OF(1U < 1L, int));
static_assert(TYPE_OF(1U < 1LL, int));
static_assert(TYPE_OF(1U < 1LL, int));
static_assert(TYPE_OF(1U < 1U, int));
static_assert(TYPE_OF(1U < 1U, int));
static_assert(TYPE_OF(1U < 1UL, int));
static_assert(TYPE_OF(1U < 1UL, int));
static_assert(TYPE_OF(1U < 1ULL, int));
static_assert(TYPE_OF(1U < 1ULL, int));
static_assert(TYPE_OF(1U < 1.0, int));
static_assert(TYPE_OF(1U < 1.0, int));
static_assert(TYPE_OF(1U < 1.0f, int));
static_assert(TYPE_OF(1U < 1.0f, int));
static_assert(TYPE_OF(1U < 1.0L, int));
static_assert(TYPE_OF(1U < 1.0L, int));
static_assert(TYPE_OF(1UL < 1, int));
static_assert(TYPE_OF(1UL < 1, int));
static_assert(TYPE_OF(1UL < 1L, int));
static_assert(TYPE_OF(1UL < 1L, int));
static_assert(TYPE_OF(1UL < 1LL, int));
static_assert(TYPE_OF(1UL < 1LL, int));
static_assert(TYPE_OF(1UL < 1U, int));
static_assert(TYPE_OF(1UL < 1U, int));
static_assert(TYPE_OF(1UL < 1UL, int));
static_assert(TYPE_OF(1UL < 1UL, int));
static_assert(TYPE_OF(1UL < 1ULL, int));
static_assert(TYPE_OF(1UL < 1ULL, int));
static_assert(TYPE_OF(1UL < 1.0, int));
static_assert(TYPE_OF(1UL < 1.0, int));
static_assert(TYPE_OF(1UL < 1.0f, int));
static_assert(TYPE_OF(1UL < 1.0f, int));
static_assert(TYPE_OF(1UL < 1.0L, int));
static_assert(TYPE_OF(1UL < 1.0L, int));
static_assert(TYPE_OF(1ULL < 1, int));
static_assert(TYPE_OF(1ULL < 1, int));
static_assert(TYPE_OF(1ULL < 1L, int));
static_assert(TYPE_OF(1ULL < 1L, int));
static_assert(TYPE_OF(1ULL < 1LL, int));
static_assert(TYPE_OF(1ULL < 1LL, int));
static_assert(TYPE_OF(1ULL < 1U, int));
static_assert(TYPE_OF(1ULL < 1U, int));
static_assert(TYPE_OF(1ULL < 1UL, int));
static_assert(TYPE_OF(1ULL < 1UL, int));
static_assert(TYPE_OF(1ULL < 1ULL, int));
static_assert(TYPE_OF(1ULL < 1ULL, int));
static_assert(TYPE_OF(1ULL < 1.0, int));
static_assert(TYPE_OF(1ULL < 1.0, int));
static_assert(TYPE_OF(1ULL < 1.0f, int));
static_assert(TYPE_OF(1ULL < 1.0f, int));
static_assert(TYPE_OF(1ULL < 1.0L, int));
static_assert(TYPE_OF(1ULL < 1.0L, int));
static_assert(TYPE_OF(1.0 < 1, int));
static_assert(TYPE_OF(1.0 < 1, int));
static_assert(TYPE_OF(1.0 < 1L, int));
static_assert(TYPE_OF(1.0 < 1L, int));
static_assert(TYPE_OF(1.0 < 1LL, int));
static_assert(TYPE_OF(1.0 < 1LL, int));
static_assert(TYPE_OF(1.0 < 1U, int));
static_assert(TYPE_OF(1.0 < 1U, int));
static_assert(TYPE_OF(1.0 < 1UL, int));
static_assert(TYPE_OF(1.0 < 1UL, int));
static_assert(TYPE_OF(1.0 < 1ULL, int));
static_assert(TYPE_OF(1.0 < 1ULL, int));
static_assert(TYPE_OF(1.0 < 1.0, int));
static_assert(TYPE_OF(1.0 < 1.0, int));
static_assert(TYPE_OF(1.0 < 1.0f, int));
static_assert(TYPE_OF(1.0 < 1.0f, int));
static_assert(TYPE_OF(1.0 < 1.0L, int));
static_assert(TYPE_OF(1.0 < 1.0L, int));
static_assert(TYPE_OF(1.0f < 1, int));
static_assert(TYPE_OF(1.0f < 1, int));
static_assert(TYPE_OF(1.0f < 1L, int));
static_assert(TYPE_OF(1.0f < 1L, int));
static_assert(TYPE_OF(1.0f < 1LL, int));
static_assert(TYPE_OF(1.0f < 1LL, int));
static_assert(TYPE_OF(1.0f < 1U, int));
static_assert(TYPE_OF(1.0f < 1U, int));
static_assert(TYPE_OF(1.0f < 1UL, int));
static_assert(TYPE_OF(1.0f < 1UL, int));
static_assert(TYPE_OF(1.0f < 1ULL, int));
static_assert(TYPE_OF(1.0f < 1ULL, int));
static_assert(TYPE_OF(1.0f < 1.0, int));
static_assert(TYPE_OF(1.0f < 1.0, int));
static_assert(TYPE_OF(1.0f < 1.0f, int));
static_assert(TYPE_OF(1.0f < 1.0f, int));
static_assert(TYPE_OF(1.0f < 1.0L, int));
static_assert(TYPE_OF(1.0f < 1.0L, int));
static_assert(TYPE_OF(1.0L < 1, int));
static_assert(TYPE_OF(1.0L < 1, int));
static_assert(TYPE_OF(1.0L < 1L, int));
static_assert(TYPE_OF(1.0L < 1L, int));
static_assert(TYPE_OF(1.0L < 1LL, int));
static_assert(TYPE_OF(1.0L < 1LL, int));
static_assert(TYPE_OF(1.0L < 1U, int));
static_assert(TYPE_OF(1.0L < 1U, int));
static_assert(TYPE_OF(1.0L < 1UL, int));
static_assert(TYPE_OF(1.0L < 1UL, int));
static_assert(TYPE_OF(1.0L < 1ULL, int));
static_assert(TYPE_OF(1.0L < 1ULL, int));
static_assert(TYPE_OF(1.0L < 1.0, int));
static_assert(TYPE_OF(1.0L < 1.0, int));
static_assert(TYPE_OF(1.0L < 1.0f, int));
static_assert(TYPE_OF(1.0L < 1.0f, int));
static_assert(TYPE_OF(1.0L < 1.0L, int));
static_assert(TYPE_OF(1.0L < 1.0L, int));
static_assert(TYPE_OF(1 <= 1, int));
static_assert(TYPE_OF(1 <= 1, int));
static_assert(TYPE_OF(1 <= 1L, int));
static_assert(TYPE_OF(1 <= 1L, int));
static_assert(TYPE_OF(1 <= 1LL, int));
static_assert(TYPE_OF(1 <= 1LL, int));
static_assert(TYPE_OF(1 <= 1U, int));
static_assert(TYPE_OF(1 <= 1U, int));
static_assert(TYPE_OF(1 <= 1UL, int));
static_assert(TYPE_OF(1 <= 1UL, int));
static_assert(TYPE_OF(1 <= 1ULL, int));
static_assert(TYPE_OF(1 <= 1ULL, int));
static_assert(TYPE_OF(1 <= 1.0, int));
static_assert(TYPE_OF(1 <= 1.0, int));
static_assert(TYPE_OF(1 <= 1.0f, int));
static_assert(TYPE_OF(1 <= 1.0f, int));
static_assert(TYPE_OF(1 <= 1.0L, int));
static_assert(TYPE_OF(1 <= 1.0L, int));
static_assert(TYPE_OF(1L <= 1, int));
static_assert(TYPE_OF(1L <= 1, int));
static_assert(TYPE_OF(1L <= 1L, int));
static_assert(TYPE_OF(1L <= 1L, int));
static_assert(TYPE_OF(1L <= 1LL, int));
static_assert(TYPE_OF(1L <= 1LL, int));
static_assert(TYPE_OF(1L <= 1U, int));
static_assert(TYPE_OF(1L <= 1U, int));
static_assert(TYPE_OF(1L <= 1UL, int));
static_assert(TYPE_OF(1L <= 1UL, int));
static_assert(TYPE_OF(1L <= 1ULL, int));
static_assert(TYPE_OF(1L <= 1ULL, int));
static_assert(TYPE_OF(1L <= 1.0, int));
static_assert(TYPE_OF(1L <= 1.0, int));
static_assert(TYPE_OF(1L <= 1.0f, int));
static_assert(TYPE_OF(1L <= 1.0f, int));
static_assert(TYPE_OF(1L <= 1.0L, int));
static_assert(TYPE_OF(1L <= 1.0L, int));
static_assert(TYPE_OF(1LL <= 1, int));
static_assert(TYPE_OF(1LL <= 1, int));
static_assert(TYPE_OF(1LL <= 1L, int));
static_assert(TYPE_OF(1LL <= 1L, int));
static_assert(TYPE_OF(1LL <= 1LL, int));
static_assert(TYPE_OF(1LL <= 1LL, int));
static_assert(TYPE_OF(1LL <= 1U, int));
static_assert(TYPE_OF(1LL <= 1U, int));
static_assert(TYPE_OF(1LL <= 1UL, int));
static_assert(TYPE_OF(1LL <= 1UL, int));
static_assert(TYPE_OF(1LL <= 1ULL, int));
static_assert(TYPE_OF(1LL <= 1ULL, int));
static_assert(TYPE_OF(1LL <= 1.0, int));
static_assert(TYPE_OF(1LL <= 1.0, int));
static_assert(TYPE_OF(1LL <= 1.0f, int));
static_assert(TYPE_OF(1LL <= 1.0f, int));
static_assert(TYPE_OF(1LL <= 1.0L, int));
static_assert(TYPE_OF(1LL <= 1.0L, int));
static_assert(TYPE_OF(1U <= 1, int));
static_assert(TYPE_OF(1U <= 1, int));
static_assert(TYPE_OF(1U <= 1L, int));
static_assert(TYPE_OF(1U <= 1L, int));
static_assert(TYPE_OF(1U <= 1LL, int));
static_assert(TYPE_OF(1U <= 1LL, int));
static_assert(TYPE_OF(1U <= 1U, int));
static_assert(TYPE_OF(1U <= 1U, int));
static_assert(TYPE_OF(1U <= 1UL, int));
static_assert(TYPE_OF(1U <= 1UL, int));
static_assert(TYPE_OF(1U <= 1ULL, int));
static_assert(TYPE_OF(1U <= 1ULL, int));
static_assert(TYPE_OF(1U <= 1.0, int));
static_assert(TYPE_OF(1U <= 1.0, int));
static_assert(TYPE_OF(1U <= 1.0f, int));
static_assert(TYPE_OF(1U <= 1.0f, int));
static_assert(TYPE_OF(1U <= 1.0L, int));
static_assert(TYPE_OF(1U <= 1.0L, int));
static_assert(TYPE_OF(1UL <= 1, int));
static_assert(TYPE_OF(1UL <= 1, int));
static_assert(TYPE_OF(1UL <= 1L, int));
static_assert(TYPE_OF(1UL <= 1L, int));
static_assert(TYPE_OF(1UL <= 1LL, int));
static_assert(TYPE_OF(1UL <= 1LL, int));
static_assert(TYPE_OF(1UL <= 1U, int));
static_assert(TYPE_OF(1UL <= 1U, int));
static_assert(TYPE_OF(1UL <= 1UL, int));
static_assert(TYPE_OF(1UL <= 1UL, int));
static_assert(TYPE_OF(1UL <= 1ULL, int));
static_assert(TYPE_OF(1UL <= 1ULL, int));
static_assert(TYPE_OF(1UL <= 1.0, int));
static_assert(TYPE_OF(1UL <= 1.0, int));
static_assert(TYPE_OF(1UL <= 1.0f, int));
static_assert(TYPE_OF(1UL <= 1.0f, int));
static_assert(TYPE_OF(1UL <= 1.0L, int));
static_assert(TYPE_OF(1UL <= 1.0L, int));
static_assert(TYPE_OF(1ULL <= 1, int));
static_assert(TYPE_OF(1ULL <= 1, int));
static_assert(TYPE_OF(1ULL <= 1L, int));
static_assert(TYPE_OF(1ULL <= 1L, int));
static_assert(TYPE_OF(1ULL <= 1LL, int));
static_assert(TYPE_OF(1ULL <= 1LL, int));
static_assert(TYPE_OF(1ULL <= 1U, int));
static_assert(TYPE_OF(1ULL <= 1U, int));
static_assert(TYPE_OF(1ULL <= 1UL, int));
static_assert(TYPE_OF(1ULL <= 1UL, int));
static_assert(TYPE_OF(1ULL <= 1ULL, int));
static_assert(TYPE_OF(1ULL <= 1ULL, int));
static_assert(TYPE_OF(1ULL <= 1.0, int));
static_assert(TYPE_OF(1ULL <= 1.0, int));
static_assert(TYPE_OF(1ULL <= 1.0f, int));
static_assert(TYPE_OF(1ULL <= 1.0f, int));
static_assert(TYPE_OF(1ULL <= 1.0L, int));
static_assert(TYPE_OF(1ULL <= 1.0L, int));
static_assert(TYPE_OF(1.0 <= 1, int));
static_assert(TYPE_OF(1.0 <= 1, int));
static_assert(TYPE_OF(1.0 <= 1L, int));
static_assert(TYPE_OF(1.0 <= 1L, int));
static_assert(TYPE_OF(1.0 <= 1LL, int));
static_assert(TYPE_OF(1.0 <= 1LL, int));
static_assert(TYPE_OF(1.0 <= 1U, int));
static_assert(TYPE_OF(1.0 <= 1U, int));
static_assert(TYPE_OF(1.0 <= 1UL, int));
static_assert(TYPE_OF(1.0 <= 1UL, int));
static_assert(TYPE_OF(1.0 <= 1ULL, int));
static_assert(TYPE_OF(1.0 <= 1ULL, int));
static_assert(TYPE_OF(1.0 <= 1.0, int));
static_assert(TYPE_OF(1.0 <= 1.0, int));
static_assert(TYPE_OF(1.0 <= 1.0f, int));
static_assert(TYPE_OF(1.0 <= 1.0f, int));
static_assert(TYPE_OF(1.0 <= 1.0L, int));
static_assert(TYPE_OF(1.0 <= 1.0L, int));
static_assert(TYPE_OF(1.0f <= 1, int));
static_assert(TYPE_OF(1.0f <= 1, int));
static_assert(TYPE_OF(1.0f <= 1L, int));
static_assert(TYPE_OF(1.0f <= 1L, int));
static_assert(TYPE_OF(1.0f <= 1LL, int));
static_assert(TYPE_OF(1.0f <= 1LL, int));
static_assert(TYPE_OF(1.0f <= 1U, int));
static_assert(TYPE_OF(1.0f <= 1U, int));
static_assert(TYPE_OF(1.0f <= 1UL, int));
static_assert(TYPE_OF(1.0f <= 1UL, int));
static_assert(TYPE_OF(1.0f <= 1ULL, int));
static_assert(TYPE_OF(1.0f <= 1ULL, int));
static_assert(TYPE_OF(1.0f <= 1.0, int));
static_assert(TYPE_OF(1.0f <= 1.0, int));
static_assert(TYPE_OF(1.0f <= 1.0f, int));
static_assert(TYPE_OF(1.0f <= 1.0f, int));
static_assert(TYPE_OF(1.0f <= 1.0L, int));
static_assert(TYPE_OF(1.0f <= 1.0L, int));
static_assert(TYPE_OF(1.0L <= 1, int));
static_assert(TYPE_OF(1.0L <= 1, int));
static_assert(TYPE_OF(1.0L <= 1L, int));
static_assert(TYPE_OF(1.0L <= 1L, int));
static_assert(TYPE_OF(1.0L <= 1LL, int));
static_assert(TYPE_OF(1.0L <= 1LL, int));
static_assert(TYPE_OF(1.0L <= 1U, int));
static_assert(TYPE_OF(1.0L <= 1U, int));
static_assert(TYPE_OF(1.0L <= 1UL, int));
static_assert(TYPE_OF(1.0L <= 1UL, int));
static_assert(TYPE_OF(1.0L <= 1ULL, int));
static_assert(TYPE_OF(1.0L <= 1ULL, int));
static_assert(TYPE_OF(1.0L <= 1.0, int));
static_assert(TYPE_OF(1.0L <= 1.0, int));
static_assert(TYPE_OF(1.0L <= 1.0f, int));
static_assert(TYPE_OF(1.0L <= 1.0f, int));
static_assert(TYPE_OF(1.0L <= 1.0L, int));
static_assert(TYPE_OF(1.0L <= 1.0L, int));
static_assert(TYPE_OF(1 + 1, int));
static_assert(TYPE_OF(1 + 1L, long));
static_assert(TYPE_OF(1 + 1LL, long long));
static_assert(TYPE_OF(1 + 1U, unsigned));
static_assert(TYPE_OF(1 + 1UL, unsigned long));
static_assert(TYPE_OF(1 + 1ULL, unsigned long long));
static_assert(TYPE_OF(1 + 1.0, double));
static_assert(TYPE_OF(1 + 1.0f, float));
static_assert(TYPE_OF(1 + 1.0L, long double));
static_assert(TYPE_OF(1L + 1, long));
static_assert(TYPE_OF(1L + 1L, long));
static_assert(TYPE_OF(1L + 1LL, long long));
static_assert(TYPE_OF(1L + 1U, long));
static_assert(TYPE_OF(1L + 1UL, unsigned long));
static_assert(TYPE_OF(1L + 1ULL, unsigned long long));
static_assert(TYPE_OF(1L + 1.0, double));
static_assert(TYPE_OF(1L + 1.0f, float));
static_assert(TYPE_OF(1L + 1.0L, long double));
static_assert(TYPE_OF(1LL + 1, long long));
static_assert(TYPE_OF(1LL + 1L, long long));
static_assert(TYPE_OF(1LL + 1LL, long long));
static_assert(TYPE_OF(1LL + 1U, long long));
static_assert(TYPE_OF(1LL + 1UL, unsigned long long));
static_assert(TYPE_OF(1LL + 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL + 1.0, double));
static_assert(TYPE_OF(1LL + 1.0f, float));
static_assert(TYPE_OF(1LL + 1.0L, long double));
static_assert(TYPE_OF(1U + 1, unsigned));
static_assert(TYPE_OF(1U + 1L, long));
static_assert(TYPE_OF(1U + 1LL, long long));
static_assert(TYPE_OF(1U + 1U, unsigned));
static_assert(TYPE_OF(1U + 1UL, unsigned long));
static_assert(TYPE_OF(1U + 1ULL, unsigned long long));
static_assert(TYPE_OF(1U + 1.0, double));
static_assert(TYPE_OF(1U + 1.0f, float));
static_assert(TYPE_OF(1U + 1.0L, long double));
static_assert(TYPE_OF(1UL + 1, unsigned long));
static_assert(TYPE_OF(1UL + 1L, unsigned long));
static_assert(TYPE_OF(1UL + 1LL, unsigned long long));
static_assert(TYPE_OF(1UL + 1U, unsigned long));
static_assert(TYPE_OF(1UL + 1UL, unsigned long));
static_assert(TYPE_OF(1UL + 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL + 1.0, double));
static_assert(TYPE_OF(1UL + 1.0f, float));
static_assert(TYPE_OF(1UL + 1.0L, long double));
static_assert(TYPE_OF(1ULL + 1, unsigned long long));
static_assert(TYPE_OF(1ULL + 1L, unsigned long long));
static_assert(TYPE_OF(1ULL + 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL + 1U, unsigned long long));
static_assert(TYPE_OF(1ULL + 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL + 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL + 1.0, double));
static_assert(TYPE_OF(1ULL + 1.0f, float));
static_assert(TYPE_OF(1ULL + 1.0L, long double));
static_assert(TYPE_OF(1.0 + 1, double));
static_assert(TYPE_OF(1.0 + 1L, double));
static_assert(TYPE_OF(1.0 + 1LL, double));
static_assert(TYPE_OF(1.0 + 1U, double));
static_assert(TYPE_OF(1.0 + 1UL, double));
static_assert(TYPE_OF(1.0 + 1ULL, double));
static_assert(TYPE_OF(1.0 + 1.0, double));
static_assert(TYPE_OF(1.0 + 1.0f, double));
static_assert(TYPE_OF(1.0 + 1.0L, long double));
static_assert(TYPE_OF(1.0f + 1, float));
static_assert(TYPE_OF(1.0f + 1L, float));
static_assert(TYPE_OF(1.0f + 1LL, float));
static_assert(TYPE_OF(1.0f + 1U, float));
static_assert(TYPE_OF(1.0f + 1UL, float));
static_assert(TYPE_OF(1.0f + 1ULL, float));
static_assert(TYPE_OF(1.0f + 1.0, double));
static_assert(TYPE_OF(1.0f + 1.0f, float));
static_assert(TYPE_OF(1.0f + 1.0L, long double));
static_assert(TYPE_OF(1.0L + 1, long double));
static_assert(TYPE_OF(1.0L + 1L, long double));
static_assert(TYPE_OF(1.0L + 1LL, long double));
static_assert(TYPE_OF(1.0L + 1U, long double));
static_assert(TYPE_OF(1.0L + 1UL, long double));
static_assert(TYPE_OF(1.0L + 1ULL, long double));
static_assert(TYPE_OF(1.0L + 1.0, long double));
static_assert(TYPE_OF(1.0L + 1.0f, long double));
static_assert(TYPE_OF(1.0L + 1.0L, long double));
static_assert(TYPE_OF(1 - 1, int));
static_assert(TYPE_OF(1 - 1L, long));
static_assert(TYPE_OF(1 - 1LL, long long));
static_assert(TYPE_OF(1 - 1U, unsigned));
static_assert(TYPE_OF(1 - 1UL, unsigned long));
static_assert(TYPE_OF(1 - 1ULL, unsigned long long));
static_assert(TYPE_OF(1 - 1.0, double));
static_assert(TYPE_OF(1 - 1.0f, float));
static_assert(TYPE_OF(1 - 1.0L, long double));
static_assert(TYPE_OF(1L - 1, long));
static_assert(TYPE_OF(1L - 1L, long));
static_assert(TYPE_OF(1L - 1LL, long long));
static_assert(TYPE_OF(1L - 1U, long));
static_assert(TYPE_OF(1L - 1UL, unsigned long));
static_assert(TYPE_OF(1L - 1ULL, unsigned long long));
static_assert(TYPE_OF(1L - 1.0, double));
static_assert(TYPE_OF(1L - 1.0f, float));
static_assert(TYPE_OF(1L - 1.0L, long double));
static_assert(TYPE_OF(1LL - 1, long long));
static_assert(TYPE_OF(1LL - 1L, long long));
static_assert(TYPE_OF(1LL - 1LL, long long));
static_assert(TYPE_OF(1LL - 1U, long long));
static_assert(TYPE_OF(1LL - 1UL, unsigned long long));
static_assert(TYPE_OF(1LL - 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL - 1.0, double));
static_assert(TYPE_OF(1LL - 1.0f, float));
static_assert(TYPE_OF(1LL - 1.0L, long double));
static_assert(TYPE_OF(1U - 1, unsigned));
static_assert(TYPE_OF(1U - 1L, long));
static_assert(TYPE_OF(1U - 1LL, long long));
static_assert(TYPE_OF(1U - 1U, unsigned));
static_assert(TYPE_OF(1U - 1UL, unsigned long));
static_assert(TYPE_OF(1U - 1ULL, unsigned long long));
static_assert(TYPE_OF(1U - 1.0, double));
static_assert(TYPE_OF(1U - 1.0f, float));
static_assert(TYPE_OF(1U - 1.0L, long double));
static_assert(TYPE_OF(1UL - 1, unsigned long));
static_assert(TYPE_OF(1UL - 1L, unsigned long));
static_assert(TYPE_OF(1UL - 1LL, unsigned long long));
static_assert(TYPE_OF(1UL - 1U, unsigned long));
static_assert(TYPE_OF(1UL - 1UL, unsigned long));
static_assert(TYPE_OF(1UL - 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL - 1.0, double));
static_assert(TYPE_OF(1UL - 1.0f, float));
static_assert(TYPE_OF(1UL - 1.0L, long double));
static_assert(TYPE_OF(1ULL - 1, unsigned long long));
static_assert(TYPE_OF(1ULL - 1L, unsigned long long));
static_assert(TYPE_OF(1ULL - 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL - 1U, unsigned long long));
static_assert(TYPE_OF(1ULL - 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL - 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL - 1.0, double));
static_assert(TYPE_OF(1ULL - 1.0f, float));
static_assert(TYPE_OF(1ULL - 1.0L, long double));
static_assert(TYPE_OF(1.0 - 1, double));
static_assert(TYPE_OF(1.0 - 1L, double));
static_assert(TYPE_OF(1.0 - 1LL, double));
static_assert(TYPE_OF(1.0 - 1U, double));
static_assert(TYPE_OF(1.0 - 1UL, double));
static_assert(TYPE_OF(1.0 - 1ULL, double));
static_assert(TYPE_OF(1.0 - 1.0, double));
static_assert(TYPE_OF(1.0 - 1.0f, double));
static_assert(TYPE_OF(1.0 - 1.0L, long double));
static_assert(TYPE_OF(1.0f - 1, float));
static_assert(TYPE_OF(1.0f - 1L, float));
static_assert(TYPE_OF(1.0f - 1LL, float));
static_assert(TYPE_OF(1.0f - 1U, float));
static_assert(TYPE_OF(1.0f - 1UL, float));
static_assert(TYPE_OF(1.0f - 1ULL, float));
static_assert(TYPE_OF(1.0f - 1.0, double));
static_assert(TYPE_OF(1.0f - 1.0f, float));
static_assert(TYPE_OF(1.0f - 1.0L, long double));
static_assert(TYPE_OF(1.0L - 1, long double));
static_assert(TYPE_OF(1.0L - 1L, long double));
static_assert(TYPE_OF(1.0L - 1LL, long double));
static_assert(TYPE_OF(1.0L - 1U, long double));
static_assert(TYPE_OF(1.0L - 1UL, long double));
static_assert(TYPE_OF(1.0L - 1ULL, long double));
static_assert(TYPE_OF(1.0L - 1.0, long double));
static_assert(TYPE_OF(1.0L - 1.0f, long double));
static_assert(TYPE_OF(1.0L - 1.0L, long double));
static_assert(TYPE_OF(1 * 1, int));
static_assert(TYPE_OF(1 * 1L, long));
static_assert(TYPE_OF(1 * 1LL, long long));
static_assert(TYPE_OF(1 * 1U, unsigned));
static_assert(TYPE_OF(1 * 1UL, unsigned long));
static_assert(TYPE_OF(1 * 1ULL, unsigned long long));
static_assert(TYPE_OF(1 * 1.0, double));
static_assert(TYPE_OF(1 * 1.0f, float));
static_assert(TYPE_OF(1 * 1.0L, long double));
static_assert(TYPE_OF(1L * 1, long));
static_assert(TYPE_OF(1L * 1L, long));
static_assert(TYPE_OF(1L * 1LL, long long));
static_assert(TYPE_OF(1L * 1U, long));
static_assert(TYPE_OF(1L * 1UL, unsigned long));
static_assert(TYPE_OF(1L * 1ULL, unsigned long long));
static_assert(TYPE_OF(1L * 1.0, double));
static_assert(TYPE_OF(1L * 1.0f, float));
static_assert(TYPE_OF(1L * 1.0L, long double));
static_assert(TYPE_OF(1LL * 1, long long));
static_assert(TYPE_OF(1LL * 1L, long long));
static_assert(TYPE_OF(1LL * 1LL, long long));
static_assert(TYPE_OF(1LL * 1U, long long));
static_assert(TYPE_OF(1LL * 1UL, unsigned long long));
static_assert(TYPE_OF(1LL * 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL * 1.0, double));
static_assert(TYPE_OF(1LL * 1.0f, float));
static_assert(TYPE_OF(1LL * 1.0L, long double));
static_assert(TYPE_OF(1U * 1, unsigned));
static_assert(TYPE_OF(1U * 1L, long));
static_assert(TYPE_OF(1U * 1LL, long long));
static_assert(TYPE_OF(1U * 1U, unsigned));
static_assert(TYPE_OF(1U * 1UL, unsigned long));
static_assert(TYPE_OF(1U * 1ULL, unsigned long long));
static_assert(TYPE_OF(1U * 1.0, double));
static_assert(TYPE_OF(1U * 1.0f, float));
static_assert(TYPE_OF(1U * 1.0L, long double));
static_assert(TYPE_OF(1UL * 1, unsigned long));
static_assert(TYPE_OF(1UL * 1L, unsigned long));
static_assert(TYPE_OF(1UL * 1LL, unsigned long long));
static_assert(TYPE_OF(1UL * 1U, unsigned long));
static_assert(TYPE_OF(1UL * 1UL, unsigned long));
static_assert(TYPE_OF(1UL * 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL * 1.0, double));
static_assert(TYPE_OF(1UL * 1.0f, float));
static_assert(TYPE_OF(1UL * 1.0L, long double));
static_assert(TYPE_OF(1ULL * 1, unsigned long long));
static_assert(TYPE_OF(1ULL * 1L, unsigned long long));
static_assert(TYPE_OF(1ULL * 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL * 1U, unsigned long long));
static_assert(TYPE_OF(1ULL * 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL * 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL * 1.0, double));
static_assert(TYPE_OF(1ULL * 1.0f, float));
static_assert(TYPE_OF(1ULL * 1.0L, long double));
static_assert(TYPE_OF(1.0 * 1, double));
static_assert(TYPE_OF(1.0 * 1L, double));
static_assert(TYPE_OF(1.0 * 1LL, double));
static_assert(TYPE_OF(1.0 * 1U, double));
static_assert(TYPE_OF(1.0 * 1UL, double));
static_assert(TYPE_OF(1.0 * 1ULL, double));
static_assert(TYPE_OF(1.0 * 1.0, double));
static_assert(TYPE_OF(1.0 * 1.0f, double));
static_assert(TYPE_OF(1.0 * 1.0L, long double));
static_assert(TYPE_OF(1.0f * 1, float));
static_assert(TYPE_OF(1.0f * 1L, float));
static_assert(TYPE_OF(1.0f * 1LL, float));
static_assert(TYPE_OF(1.0f * 1U, float));
static_assert(TYPE_OF(1.0f * 1UL, float));
static_assert(TYPE_OF(1.0f * 1ULL, float));
static_assert(TYPE_OF(1.0f * 1.0, double));
static_assert(TYPE_OF(1.0f * 1.0f, float));
static_assert(TYPE_OF(1.0f * 1.0L, long double));
static_assert(TYPE_OF(1.0L * 1, long double));
static_assert(TYPE_OF(1.0L * 1L, long double));
static_assert(TYPE_OF(1.0L * 1LL, long double));
static_assert(TYPE_OF(1.0L * 1U, long double));
static_assert(TYPE_OF(1.0L * 1UL, long double));
static_assert(TYPE_OF(1.0L * 1ULL, long double));
static_assert(TYPE_OF(1.0L * 1.0, long double));
static_assert(TYPE_OF(1.0L * 1.0f, long double));
static_assert(TYPE_OF(1.0L * 1.0L, long double));
static_assert(TYPE_OF(1 / 1, int));
static_assert(TYPE_OF(1 / 1L, long));
static_assert(TYPE_OF(1 / 1LL, long long));
static_assert(TYPE_OF(1 / 1U, unsigned));
static_assert(TYPE_OF(1 / 1UL, unsigned long));
static_assert(TYPE_OF(1 / 1ULL, unsigned long long));
static_assert(TYPE_OF(1 / 1.0, double));
static_assert(TYPE_OF(1 / 1.0f, float));
static_assert(TYPE_OF(1 / 1.0L, long double));
static_assert(TYPE_OF(1L / 1, long));
static_assert(TYPE_OF(1L / 1L, long));
static_assert(TYPE_OF(1L / 1LL, long long));
static_assert(TYPE_OF(1L / 1U, long));
static_assert(TYPE_OF(1L / 1UL, unsigned long));
static_assert(TYPE_OF(1L / 1ULL, unsigned long long));
static_assert(TYPE_OF(1L / 1.0, double));
static_assert(TYPE_OF(1L / 1.0f, float));
static_assert(TYPE_OF(1L / 1.0L, long double));
static_assert(TYPE_OF(1LL / 1, long long));
static_assert(TYPE_OF(1LL / 1L, long long));
static_assert(TYPE_OF(1LL / 1LL, long long));
static_assert(TYPE_OF(1LL / 1U, long long));
static_assert(TYPE_OF(1LL / 1UL, unsigned long long));
static_assert(TYPE_OF(1LL / 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL / 1.0, double));
static_assert(TYPE_OF(1LL / 1.0f, float));
static_assert(TYPE_OF(1LL / 1.0L, long double));
static_assert(TYPE_OF(1U / 1, unsigned));
static_assert(TYPE_OF(1U / 1L, long));
static_assert(TYPE_OF(1U / 1LL, long long));
static_assert(TYPE_OF(1U / 1U, unsigned));
static_assert(TYPE_OF(1U / 1UL, unsigned long));
static_assert(TYPE_OF(1U / 1ULL, unsigned long long));
static_assert(TYPE_OF(1U / 1.0, double));
static_assert(TYPE_OF(1U / 1.0f, float));
static_assert(TYPE_OF(1U / 1.0L, long double));
static_assert(TYPE_OF(1UL / 1, unsigned long));
static_assert(TYPE_OF(1UL / 1L, unsigned long));
static_assert(TYPE_OF(1UL / 1LL, unsigned long long));
static_assert(TYPE_OF(1UL / 1U, unsigned long));
static_assert(TYPE_OF(1UL / 1UL, unsigned long));
static_assert(TYPE_OF(1UL / 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL / 1.0, double));
static_assert(TYPE_OF(1UL / 1.0f, float));
static_assert(TYPE_OF(1UL / 1.0L, long double));
static_assert(TYPE_OF(1ULL / 1, unsigned long long));
static_assert(TYPE_OF(1ULL / 1L, unsigned long long));
static_assert(TYPE_OF(1ULL / 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL / 1U, unsigned long long));
static_assert(TYPE_OF(1ULL / 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL / 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL / 1.0, double));
static_assert(TYPE_OF(1ULL / 1.0f, float));
static_assert(TYPE_OF(1ULL / 1.0L, long double));
static_assert(TYPE_OF(1.0 / 1, double));
static_assert(TYPE_OF(1.0 / 1L, double));
static_assert(TYPE_OF(1.0 / 1LL, double));
static_assert(TYPE_OF(1.0 / 1U, double));
static_assert(TYPE_OF(1.0 / 1UL, double));
static_assert(TYPE_OF(1.0 / 1ULL, double));
static_assert(TYPE_OF(1.0 / 1.0, double));
static_assert(TYPE_OF(1.0 / 1.0f, double));
static_assert(TYPE_OF(1.0 / 1.0L, long double));
static_assert(TYPE_OF(1.0f / 1, float));
static_assert(TYPE_OF(1.0f / 1L, float));
static_assert(TYPE_OF(1.0f / 1LL, float));
static_assert(TYPE_OF(1.0f / 1U, float));
static_assert(TYPE_OF(1.0f / 1UL, float));
static_assert(TYPE_OF(1.0f / 1ULL, float));
static_assert(TYPE_OF(1.0f / 1.0, double));
static_assert(TYPE_OF(1.0f / 1.0f, float));
static_assert(TYPE_OF(1.0f / 1.0L, long double));
static_assert(TYPE_OF(1.0L / 1, long double));
static_assert(TYPE_OF(1.0L / 1L, long double));
static_assert(TYPE_OF(1.0L / 1LL, long double));
static_assert(TYPE_OF(1.0L / 1U, long double));
static_assert(TYPE_OF(1.0L / 1UL, long double));
static_assert(TYPE_OF(1.0L / 1ULL, long double));
static_assert(TYPE_OF(1.0L / 1.0, long double));
static_assert(TYPE_OF(1.0L / 1.0f, long double));
static_assert(TYPE_OF(1.0L / 1.0L, long double));
static_assert(TYPE_OF(1 % 1, int));
static_assert(TYPE_OF(1 % 1L, long));
static_assert(TYPE_OF(1 % 1LL, long long));
static_assert(TYPE_OF(1 % 1U, unsigned));
static_assert(TYPE_OF(1 % 1UL, unsigned long));
static_assert(TYPE_OF(1 % 1ULL, unsigned long long));
static_assert(TYPE_OF(1L % 1, long));
static_assert(TYPE_OF(1L % 1L, long));
static_assert(TYPE_OF(1L % 1LL, long long));
static_assert(TYPE_OF(1L % 1U, long));
static_assert(TYPE_OF(1L % 1UL, unsigned long));
static_assert(TYPE_OF(1L % 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL % 1, long long));
static_assert(TYPE_OF(1LL % 1L, long long));
static_assert(TYPE_OF(1LL % 1LL, long long));
static_assert(TYPE_OF(1LL % 1U, long long));
static_assert(TYPE_OF(1LL % 1UL, unsigned long long));
static_assert(TYPE_OF(1LL % 1ULL, unsigned long long));
static_assert(TYPE_OF(1U % 1, unsigned));
static_assert(TYPE_OF(1U % 1L, long));
static_assert(TYPE_OF(1U % 1LL, long long));
static_assert(TYPE_OF(1U % 1U, unsigned));
static_assert(TYPE_OF(1U % 1UL, unsigned long));
static_assert(TYPE_OF(1U % 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL % 1, unsigned long));
static_assert(TYPE_OF(1UL % 1L, unsigned long));
static_assert(TYPE_OF(1UL % 1LL, unsigned long long));
static_assert(TYPE_OF(1UL % 1U, unsigned long));
static_assert(TYPE_OF(1UL % 1UL, unsigned long));
static_assert(TYPE_OF(1UL % 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL % 1, unsigned long long));
static_assert(TYPE_OF(1ULL % 1L, unsigned long long));
static_assert(TYPE_OF(1ULL % 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL % 1U, unsigned long long));
static_assert(TYPE_OF(1ULL % 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL % 1ULL, unsigned long long));
#else
#define TYPE_OF(E, T) _Generic(E, T : 1 , default: 0)
static_assert(TYPE_OF(1 == 1, int));
static_assert(TYPE_OF(1 == 1, int));
static_assert(TYPE_OF(1 == 1L, int));
static_assert(TYPE_OF(1 == 1L, int));
static_assert(TYPE_OF(1 == 1LL, int));
static_assert(TYPE_OF(1 == 1LL, int));
static_assert(TYPE_OF(1 == 1U, int));
static_assert(TYPE_OF(1 == 1U, int));
static_assert(TYPE_OF(1 == 1UL, int));
static_assert(TYPE_OF(1 == 1UL, int));
static_assert(TYPE_OF(1 == 1ULL, int));
static_assert(TYPE_OF(1 == 1ULL, int));
static_assert(TYPE_OF(1 == 1.0, int));
static_assert(TYPE_OF(1 == 1.0, int));
static_assert(TYPE_OF(1 == 1.0f, int));
static_assert(TYPE_OF(1 == 1.0f, int));
static_assert(TYPE_OF(1 == 1.0L, int));
static_assert(TYPE_OF(1 == 1.0L, int));
static_assert(TYPE_OF(1L == 1, int));
static_assert(TYPE_OF(1L == 1, int));
static_assert(TYPE_OF(1L == 1L, int));
static_assert(TYPE_OF(1L == 1L, int));
static_assert(TYPE_OF(1L == 1LL, int));
static_assert(TYPE_OF(1L == 1LL, int));
static_assert(TYPE_OF(1L == 1U, int));
static_assert(TYPE_OF(1L == 1U, int));
static_assert(TYPE_OF(1L == 1UL, int));
static_assert(TYPE_OF(1L == 1UL, int));
static_assert(TYPE_OF(1L == 1ULL, int));
static_assert(TYPE_OF(1L == 1ULL, int));
static_assert(TYPE_OF(1L == 1.0, int));
static_assert(TYPE_OF(1L == 1.0, int));
static_assert(TYPE_OF(1L == 1.0f, int));
static_assert(TYPE_OF(1L == 1.0f, int));
static_assert(TYPE_OF(1L == 1.0L, int));
static_assert(TYPE_OF(1L == 1.0L, int));
static_assert(TYPE_OF(1LL == 1, int));
static_assert(TYPE_OF(1LL == 1, int));
static_assert(TYPE_OF(1LL == 1L, int));
static_assert(TYPE_OF(1LL == 1L, int));
static_assert(TYPE_OF(1LL == 1LL, int));
static_assert(TYPE_OF(1LL == 1LL, int));
static_assert(TYPE_OF(1LL == 1U, int));
static_assert(TYPE_OF(1LL == 1U, int));
static_assert(TYPE_OF(1LL == 1UL, int));
static_assert(TYPE_OF(1LL == 1UL, int));
static_assert(TYPE_OF(1LL == 1ULL, int));
static_assert(TYPE_OF(1LL == 1ULL, int));
static_assert(TYPE_OF(1LL == 1.0, int));
static_assert(TYPE_OF(1LL == 1.0, int));
static_assert(TYPE_OF(1LL == 1.0f, int));
static_assert(TYPE_OF(1LL == 1.0f, int));
static_assert(TYPE_OF(1LL == 1.0L, int));
static_assert(TYPE_OF(1LL == 1.0L, int));
static_assert(TYPE_OF(1U == 1, int));
static_assert(TYPE_OF(1U == 1, int));
static_assert(TYPE_OF(1U == 1L, int));
static_assert(TYPE_OF(1U == 1L, int));
static_assert(TYPE_OF(1U == 1LL, int));
static_assert(TYPE_OF(1U == 1LL, int));
static_assert(TYPE_OF(1U == 1U, int));
static_assert(TYPE_OF(1U == 1U, int));
static_assert(TYPE_OF(1U == 1UL, int));
static_assert(TYPE_OF(1U == 1UL, int));
static_assert(TYPE_OF(1U == 1ULL, int));
static_assert(TYPE_OF(1U == 1ULL, int));
static_assert(TYPE_OF(1U == 1.0, int));
static_assert(TYPE_OF(1U == 1.0, int));
static_assert(TYPE_OF(1U == 1.0f, int));
static_assert(TYPE_OF(1U == 1.0f, int));
static_assert(TYPE_OF(1U == 1.0L, int));
static_assert(TYPE_OF(1U == 1.0L, int));
static_assert(TYPE_OF(1UL == 1, int));
static_assert(TYPE_OF(1UL == 1, int));
static_assert(TYPE_OF(1UL == 1L, int));
static_assert(TYPE_OF(1UL == 1L, int));
static_assert(TYPE_OF(1UL == 1LL, int));
static_assert(TYPE_OF(1UL == 1LL, int));
static_assert(TYPE_OF(1UL == 1U, int));
static_assert(TYPE_OF(1UL == 1U, int));
static_assert(TYPE_OF(1UL == 1UL, int));
static_assert(TYPE_OF(1UL == 1UL, int));
static_assert(TYPE_OF(1UL == 1ULL, int));
static_assert(TYPE_OF(1UL == 1ULL, int));
static_assert(TYPE_OF(1UL == 1.0, int));
static_assert(TYPE_OF(1UL == 1.0, int));
static_assert(TYPE_OF(1UL == 1.0f, int));
static_assert(TYPE_OF(1UL == 1.0f, int));
static_assert(TYPE_OF(1UL == 1.0L, int));
static_assert(TYPE_OF(1UL == 1.0L, int));
static_assert(TYPE_OF(1ULL == 1, int));
static_assert(TYPE_OF(1ULL == 1, int));
static_assert(TYPE_OF(1ULL == 1L, int));
static_assert(TYPE_OF(1ULL == 1L, int));
static_assert(TYPE_OF(1ULL == 1LL, int));
static_assert(TYPE_OF(1ULL == 1LL, int));
static_assert(TYPE_OF(1ULL == 1U, int));
static_assert(TYPE_OF(1ULL == 1U, int));
static_assert(TYPE_OF(1ULL == 1UL, int));
static_assert(TYPE_OF(1ULL == 1UL, int));
static_assert(TYPE_OF(1ULL == 1ULL, int));
static_assert(TYPE_OF(1ULL == 1ULL, int));
static_assert(TYPE_OF(1ULL == 1.0, int));
static_assert(TYPE_OF(1ULL == 1.0, int));
static_assert(TYPE_OF(1ULL == 1.0f, int));
static_assert(TYPE_OF(1ULL == 1.0f, int));
static_assert(TYPE_OF(1ULL == 1.0L, int));
static_assert(TYPE_OF(1ULL == 1.0L, int));
static_assert(TYPE_OF(1.0 == 1, int));
static_assert(TYPE_OF(1.0 == 1, int));
static_assert(TYPE_OF(1.0 == 1L, int));
static_assert(TYPE_OF(1.0 == 1L, int));
static_assert(TYPE_OF(1.0 == 1LL, int));
static_assert(TYPE_OF(1.0 == 1LL, int));
static_assert(TYPE_OF(1.0 == 1U, int));
static_assert(TYPE_OF(1.0 == 1U, int));
static_assert(TYPE_OF(1.0 == 1UL, int));
static_assert(TYPE_OF(1.0 == 1UL, int));
static_assert(TYPE_OF(1.0 == 1ULL, int));
static_assert(TYPE_OF(1.0 == 1ULL, int));
static_assert(TYPE_OF(1.0 == 1.0, int));
static_assert(TYPE_OF(1.0 == 1.0, int));
static_assert(TYPE_OF(1.0 == 1.0f, int));
static_assert(TYPE_OF(1.0 == 1.0f, int));
static_assert(TYPE_OF(1.0 == 1.0L, int));
static_assert(TYPE_OF(1.0 == 1.0L, int));
static_assert(TYPE_OF(1.0f == 1, int));
static_assert(TYPE_OF(1.0f == 1, int));
static_assert(TYPE_OF(1.0f == 1L, int));
static_assert(TYPE_OF(1.0f == 1L, int));
static_assert(TYPE_OF(1.0f == 1LL, int));
static_assert(TYPE_OF(1.0f == 1LL, int));
static_assert(TYPE_OF(1.0f == 1U, int));
static_assert(TYPE_OF(1.0f == 1U, int));
static_assert(TYPE_OF(1.0f == 1UL, int));
static_assert(TYPE_OF(1.0f == 1UL, int));
static_assert(TYPE_OF(1.0f == 1ULL, int));
static_assert(TYPE_OF(1.0f == 1ULL, int));
static_assert(TYPE_OF(1.0f == 1.0, int));
static_assert(TYPE_OF(1.0f == 1.0, int));
static_assert(TYPE_OF(1.0f == 1.0f, int));
static_assert(TYPE_OF(1.0f == 1.0f, int));
static_assert(TYPE_OF(1.0f == 1.0L, int));
static_assert(TYPE_OF(1.0f == 1.0L, int));
static_assert(TYPE_OF(1.0L == 1, int));
static_assert(TYPE_OF(1.0L == 1, int));
static_assert(TYPE_OF(1.0L == 1L, int));
static_assert(TYPE_OF(1.0L == 1L, int));
static_assert(TYPE_OF(1.0L == 1LL, int));
static_assert(TYPE_OF(1.0L == 1LL, int));
static_assert(TYPE_OF(1.0L == 1U, int));
static_assert(TYPE_OF(1.0L == 1U, int));
static_assert(TYPE_OF(1.0L == 1UL, int));
static_assert(TYPE_OF(1.0L == 1UL, int));
static_assert(TYPE_OF(1.0L == 1ULL, int));
static_assert(TYPE_OF(1.0L == 1ULL, int));
static_assert(TYPE_OF(1.0L == 1.0, int));
static_assert(TYPE_OF(1.0L == 1.0, int));
static_assert(TYPE_OF(1.0L == 1.0f, int));
static_assert(TYPE_OF(1.0L == 1.0f, int));
static_assert(TYPE_OF(1.0L == 1.0L, int));
static_assert(TYPE_OF(1.0L == 1.0L, int));
static_assert(TYPE_OF(1 != 1, int));
static_assert(TYPE_OF(1 != 1, int));
static_assert(TYPE_OF(1 != 1L, int));
static_assert(TYPE_OF(1 != 1L, int));
static_assert(TYPE_OF(1 != 1LL, int));
static_assert(TYPE_OF(1 != 1LL, int));
static_assert(TYPE_OF(1 != 1U, int));
static_assert(TYPE_OF(1 != 1U, int));
static_assert(TYPE_OF(1 != 1UL, int));
static_assert(TYPE_OF(1 != 1UL, int));
static_assert(TYPE_OF(1 != 1ULL, int));
static_assert(TYPE_OF(1 != 1ULL, int));
static_assert(TYPE_OF(1 != 1.0, int));
static_assert(TYPE_OF(1 != 1.0, int));
static_assert(TYPE_OF(1 != 1.0f, int));
static_assert(TYPE_OF(1 != 1.0f, int));
static_assert(TYPE_OF(1 != 1.0L, int));
static_assert(TYPE_OF(1 != 1.0L, int));
static_assert(TYPE_OF(1L != 1, int));
static_assert(TYPE_OF(1L != 1, int));
static_assert(TYPE_OF(1L != 1L, int));
static_assert(TYPE_OF(1L != 1L, int));
static_assert(TYPE_OF(1L != 1LL, int));
static_assert(TYPE_OF(1L != 1LL, int));
static_assert(TYPE_OF(1L != 1U, int));
static_assert(TYPE_OF(1L != 1U, int));
static_assert(TYPE_OF(1L != 1UL, int));
static_assert(TYPE_OF(1L != 1UL, int));
static_assert(TYPE_OF(1L != 1ULL, int));
static_assert(TYPE_OF(1L != 1ULL, int));
static_assert(TYPE_OF(1L != 1.0, int));
static_assert(TYPE_OF(1L != 1.0, int));
static_assert(TYPE_OF(1L != 1.0f, int));
static_assert(TYPE_OF(1L != 1.0f, int));
static_assert(TYPE_OF(1L != 1.0L, int));
static_assert(TYPE_OF(1L != 1.0L, int));
static_assert(TYPE_OF(1LL != 1, int));
static_assert(TYPE_OF(1LL != 1, int));
static_assert(TYPE_OF(1LL != 1L, int));
static_assert(TYPE_OF(1LL != 1L, int));
static_assert(TYPE_OF(1LL != 1LL, int));
static_assert(TYPE_OF(1LL != 1LL, int));
static_assert(TYPE_OF(1LL != 1U, int));
static_assert(TYPE_OF(1LL != 1U, int));
static_assert(TYPE_OF(1LL != 1UL, int));
static_assert(TYPE_OF(1LL != 1UL, int));
static_assert(TYPE_OF(1LL != 1ULL, int));
static_assert(TYPE_OF(1LL != 1ULL, int));
static_assert(TYPE_OF(1LL != 1.0, int));
static_assert(TYPE_OF(1LL != 1.0, int));
static_assert(TYPE_OF(1LL != 1.0f, int));
static_assert(TYPE_OF(1LL != 1.0f, int));
static_assert(TYPE_OF(1LL != 1.0L, int));
static_assert(TYPE_OF(1LL != 1.0L, int));
static_assert(TYPE_OF(1U != 1, int));
static_assert(TYPE_OF(1U != 1, int));
static_assert(TYPE_OF(1U != 1L, int));
static_assert(TYPE_OF(1U != 1L, int));
static_assert(TYPE_OF(1U != 1LL, int));
static_assert(TYPE_OF(1U != 1LL, int));
static_assert(TYPE_OF(1U != 1U, int));
static_assert(TYPE_OF(1U != 1U, int));
static_assert(TYPE_OF(1U != 1UL, int));
static_assert(TYPE_OF(1U != 1UL, int));
static_assert(TYPE_OF(1U != 1ULL, int));
static_assert(TYPE_OF(1U != 1ULL, int));
static_assert(TYPE_OF(1U != 1.0, int));
static_assert(TYPE_OF(1U != 1.0, int));
static_assert(TYPE_OF(1U != 1.0f, int));
static_assert(TYPE_OF(1U != 1.0f, int));
static_assert(TYPE_OF(1U != 1.0L, int));
static_assert(TYPE_OF(1U != 1.0L, int));
static_assert(TYPE_OF(1UL != 1, int));
static_assert(TYPE_OF(1UL != 1, int));
static_assert(TYPE_OF(1UL != 1L, int));
static_assert(TYPE_OF(1UL != 1L, int));
static_assert(TYPE_OF(1UL != 1LL, int));
static_assert(TYPE_OF(1UL != 1LL, int));
static_assert(TYPE_OF(1UL != 1U, int));
static_assert(TYPE_OF(1UL != 1U, int));
static_assert(TYPE_OF(1UL != 1UL, int));
static_assert(TYPE_OF(1UL != 1UL, int));
static_assert(TYPE_OF(1UL != 1ULL, int));
static_assert(TYPE_OF(1UL != 1ULL, int));
static_assert(TYPE_OF(1UL != 1.0, int));
static_assert(TYPE_OF(1UL != 1.0, int));
static_assert(TYPE_OF(1UL != 1.0f, int));
static_assert(TYPE_OF(1UL != 1.0f, int));
static_assert(TYPE_OF(1UL != 1.0L, int));
static_assert(TYPE_OF(1UL != 1.0L, int));
static_assert(TYPE_OF(1ULL != 1, int));
static_assert(TYPE_OF(1ULL != 1, int));
static_assert(TYPE_OF(1ULL != 1L, int));
static_assert(TYPE_OF(1ULL != 1L, int));
static_assert(TYPE_OF(1ULL != 1LL, int));
static_assert(TYPE_OF(1ULL != 1LL, int));
static_assert(TYPE_OF(1ULL != 1U, int));
static_assert(TYPE_OF(1ULL != 1U, int));
static_assert(TYPE_OF(1ULL != 1UL, int));
static_assert(TYPE_OF(1ULL != 1UL, int));
static_assert(TYPE_OF(1ULL != 1ULL, int));
static_assert(TYPE_OF(1ULL != 1ULL, int));
static_assert(TYPE_OF(1ULL != 1.0, int));
static_assert(TYPE_OF(1ULL != 1.0, int));
static_assert(TYPE_OF(1ULL != 1.0f, int));
static_assert(TYPE_OF(1ULL != 1.0f, int));
static_assert(TYPE_OF(1ULL != 1.0L, int));
static_assert(TYPE_OF(1ULL != 1.0L, int));
static_assert(TYPE_OF(1.0 != 1, int));
static_assert(TYPE_OF(1.0 != 1, int));
static_assert(TYPE_OF(1.0 != 1L, int));
static_assert(TYPE_OF(1.0 != 1L, int));
static_assert(TYPE_OF(1.0 != 1LL, int));
static_assert(TYPE_OF(1.0 != 1LL, int));
static_assert(TYPE_OF(1.0 != 1U, int));
static_assert(TYPE_OF(1.0 != 1U, int));
static_assert(TYPE_OF(1.0 != 1UL, int));
static_assert(TYPE_OF(1.0 != 1UL, int));
static_assert(TYPE_OF(1.0 != 1ULL, int));
static_assert(TYPE_OF(1.0 != 1ULL, int));
static_assert(TYPE_OF(1.0 != 1.0, int));
static_assert(TYPE_OF(1.0 != 1.0, int));
static_assert(TYPE_OF(1.0 != 1.0f, int));
static_assert(TYPE_OF(1.0 != 1.0f, int));
static_assert(TYPE_OF(1.0 != 1.0L, int));
static_assert(TYPE_OF(1.0 != 1.0L, int));
static_assert(TYPE_OF(1.0f != 1, int));
static_assert(TYPE_OF(1.0f != 1, int));
static_assert(TYPE_OF(1.0f != 1L, int));
static_assert(TYPE_OF(1.0f != 1L, int));
static_assert(TYPE_OF(1.0f != 1LL, int));
static_assert(TYPE_OF(1.0f != 1LL, int));
static_assert(TYPE_OF(1.0f != 1U, int));
static_assert(TYPE_OF(1.0f != 1U, int));
static_assert(TYPE_OF(1.0f != 1UL, int));
static_assert(TYPE_OF(1.0f != 1UL, int));
static_assert(TYPE_OF(1.0f != 1ULL, int));
static_assert(TYPE_OF(1.0f != 1ULL, int));
static_assert(TYPE_OF(1.0f != 1.0, int));
static_assert(TYPE_OF(1.0f != 1.0, int));
static_assert(TYPE_OF(1.0f != 1.0f, int));
static_assert(TYPE_OF(1.0f != 1.0f, int));
static_assert(TYPE_OF(1.0f != 1.0L, int));
static_assert(TYPE_OF(1.0f != 1.0L, int));
static_assert(TYPE_OF(1.0L != 1, int));
static_assert(TYPE_OF(1.0L != 1, int));
static_assert(TYPE_OF(1.0L != 1L, int));
static_assert(TYPE_OF(1.0L != 1L, int));
static_assert(TYPE_OF(1.0L != 1LL, int));
static_assert(TYPE_OF(1.0L != 1LL, int));
static_assert(TYPE_OF(1.0L != 1U, int));
static_assert(TYPE_OF(1.0L != 1U, int));
static_assert(TYPE_OF(1.0L != 1UL, int));
static_assert(TYPE_OF(1.0L != 1UL, int));
static_assert(TYPE_OF(1.0L != 1ULL, int));
static_assert(TYPE_OF(1.0L != 1ULL, int));
static_assert(TYPE_OF(1.0L != 1.0, int));
static_assert(TYPE_OF(1.0L != 1.0, int));
static_assert(TYPE_OF(1.0L != 1.0f, int));
static_assert(TYPE_OF(1.0L != 1.0f, int));
static_assert(TYPE_OF(1.0L != 1.0L, int));
static_assert(TYPE_OF(1.0L != 1.0L, int));
static_assert(TYPE_OF(1 > 1, int));
static_assert(TYPE_OF(1 > 1, int));
static_assert(TYPE_OF(1 > 1L, int));
static_assert(TYPE_OF(1 > 1L, int));
static_assert(TYPE_OF(1 > 1LL, int));
static_assert(TYPE_OF(1 > 1LL, int));
static_assert(TYPE_OF(1 > 1U, int));
static_assert(TYPE_OF(1 > 1U, int));
static_assert(TYPE_OF(1 > 1UL, int));
static_assert(TYPE_OF(1 > 1UL, int));
static_assert(TYPE_OF(1 > 1ULL, int));
static_assert(TYPE_OF(1 > 1ULL, int));
static_assert(TYPE_OF(1 > 1.0, int));
static_assert(TYPE_OF(1 > 1.0, int));
static_assert(TYPE_OF(1 > 1.0f, int));
static_assert(TYPE_OF(1 > 1.0f, int));
static_assert(TYPE_OF(1 > 1.0L, int));
static_assert(TYPE_OF(1 > 1.0L, int));
static_assert(TYPE_OF(1L > 1, int));
static_assert(TYPE_OF(1L > 1, int));
static_assert(TYPE_OF(1L > 1L, int));
static_assert(TYPE_OF(1L > 1L, int));
static_assert(TYPE_OF(1L > 1LL, int));
static_assert(TYPE_OF(1L > 1LL, int));
static_assert(TYPE_OF(1L > 1U, int));
static_assert(TYPE_OF(1L > 1U, int));
static_assert(TYPE_OF(1L > 1UL, int));
static_assert(TYPE_OF(1L > 1UL, int));
static_assert(TYPE_OF(1L > 1ULL, int));
static_assert(TYPE_OF(1L > 1ULL, int));
static_assert(TYPE_OF(1L > 1.0, int));
static_assert(TYPE_OF(1L > 1.0, int));
static_assert(TYPE_OF(1L > 1.0f, int));
static_assert(TYPE_OF(1L > 1.0f, int));
static_assert(TYPE_OF(1L > 1.0L, int));
static_assert(TYPE_OF(1L > 1.0L, int));
static_assert(TYPE_OF(1LL > 1, int));
static_assert(TYPE_OF(1LL > 1, int));
static_assert(TYPE_OF(1LL > 1L, int));
static_assert(TYPE_OF(1LL > 1L, int));
static_assert(TYPE_OF(1LL > 1LL, int));
static_assert(TYPE_OF(1LL > 1LL, int));
static_assert(TYPE_OF(1LL > 1U, int));
static_assert(TYPE_OF(1LL > 1U, int));
static_assert(TYPE_OF(1LL > 1UL, int));
static_assert(TYPE_OF(1LL > 1UL, int));
static_assert(TYPE_OF(1LL > 1ULL, int));
static_assert(TYPE_OF(1LL > 1ULL, int));
static_assert(TYPE_OF(1LL > 1.0, int));
static_assert(TYPE_OF(1LL > 1.0, int));
static_assert(TYPE_OF(1LL > 1.0f, int));
static_assert(TYPE_OF(1LL > 1.0f, int));
static_assert(TYPE_OF(1LL > 1.0L, int));
static_assert(TYPE_OF(1LL > 1.0L, int));
static_assert(TYPE_OF(1U > 1, int));
static_assert(TYPE_OF(1U > 1, int));
static_assert(TYPE_OF(1U > 1L, int));
static_assert(TYPE_OF(1U > 1L, int));
static_assert(TYPE_OF(1U > 1LL, int));
static_assert(TYPE_OF(1U > 1LL, int));
static_assert(TYPE_OF(1U > 1U, int));
static_assert(TYPE_OF(1U > 1U, int));
static_assert(TYPE_OF(1U > 1UL, int));
static_assert(TYPE_OF(1U > 1UL, int));
static_assert(TYPE_OF(1U > 1ULL, int));
static_assert(TYPE_OF(1U > 1ULL, int));
static_assert(TYPE_OF(1U > 1.0, int));
static_assert(TYPE_OF(1U > 1.0, int));
static_assert(TYPE_OF(1U > 1.0f, int));
static_assert(TYPE_OF(1U > 1.0f, int));
static_assert(TYPE_OF(1U > 1.0L, int));
static_assert(TYPE_OF(1U > 1.0L, int));
static_assert(TYPE_OF(1UL > 1, int));
static_assert(TYPE_OF(1UL > 1, int));
static_assert(TYPE_OF(1UL > 1L, int));
static_assert(TYPE_OF(1UL > 1L, int));
static_assert(TYPE_OF(1UL > 1LL, int));
static_assert(TYPE_OF(1UL > 1LL, int));
static_assert(TYPE_OF(1UL > 1U, int));
static_assert(TYPE_OF(1UL > 1U, int));
static_assert(TYPE_OF(1UL > 1UL, int));
static_assert(TYPE_OF(1UL > 1UL, int));
static_assert(TYPE_OF(1UL > 1ULL, int));
static_assert(TYPE_OF(1UL > 1ULL, int));
static_assert(TYPE_OF(1UL > 1.0, int));
static_assert(TYPE_OF(1UL > 1.0, int));
static_assert(TYPE_OF(1UL > 1.0f, int));
static_assert(TYPE_OF(1UL > 1.0f, int));
static_assert(TYPE_OF(1UL > 1.0L, int));
static_assert(TYPE_OF(1UL > 1.0L, int));
static_assert(TYPE_OF(1ULL > 1, int));
static_assert(TYPE_OF(1ULL > 1, int));
static_assert(TYPE_OF(1ULL > 1L, int));
static_assert(TYPE_OF(1ULL > 1L, int));
static_assert(TYPE_OF(1ULL > 1LL, int));
static_assert(TYPE_OF(1ULL > 1LL, int));
static_assert(TYPE_OF(1ULL > 1U, int));
static_assert(TYPE_OF(1ULL > 1U, int));
static_assert(TYPE_OF(1ULL > 1UL, int));
static_assert(TYPE_OF(1ULL > 1UL, int));
static_assert(TYPE_OF(1ULL > 1ULL, int));
static_assert(TYPE_OF(1ULL > 1ULL, int));
static_assert(TYPE_OF(1ULL > 1.0, int));
static_assert(TYPE_OF(1ULL > 1.0, int));
static_assert(TYPE_OF(1ULL > 1.0f, int));
static_assert(TYPE_OF(1ULL > 1.0f, int));
static_assert(TYPE_OF(1ULL > 1.0L, int));
static_assert(TYPE_OF(1ULL > 1.0L, int));
static_assert(TYPE_OF(1.0 > 1, int));
static_assert(TYPE_OF(1.0 > 1, int));
static_assert(TYPE_OF(1.0 > 1L, int));
static_assert(TYPE_OF(1.0 > 1L, int));
static_assert(TYPE_OF(1.0 > 1LL, int));
static_assert(TYPE_OF(1.0 > 1LL, int));
static_assert(TYPE_OF(1.0 > 1U, int));
static_assert(TYPE_OF(1.0 > 1U, int));
static_assert(TYPE_OF(1.0 > 1UL, int));
static_assert(TYPE_OF(1.0 > 1UL, int));
static_assert(TYPE_OF(1.0 > 1ULL, int));
static_assert(TYPE_OF(1.0 > 1ULL, int));
static_assert(TYPE_OF(1.0 > 1.0, int));
static_assert(TYPE_OF(1.0 > 1.0, int));
static_assert(TYPE_OF(1.0 > 1.0f, int));
static_assert(TYPE_OF(1.0 > 1.0f, int));
static_assert(TYPE_OF(1.0 > 1.0L, int));
static_assert(TYPE_OF(1.0 > 1.0L, int));
static_assert(TYPE_OF(1.0f > 1, int));
static_assert(TYPE_OF(1.0f > 1, int));
static_assert(TYPE_OF(1.0f > 1L, int));
static_assert(TYPE_OF(1.0f > 1L, int));
static_assert(TYPE_OF(1.0f > 1LL, int));
static_assert(TYPE_OF(1.0f > 1LL, int));
static_assert(TYPE_OF(1.0f > 1U, int));
static_assert(TYPE_OF(1.0f > 1U, int));
static_assert(TYPE_OF(1.0f > 1UL, int));
static_assert(TYPE_OF(1.0f > 1UL, int));
static_assert(TYPE_OF(1.0f > 1ULL, int));
static_assert(TYPE_OF(1.0f > 1ULL, int));
static_assert(TYPE_OF(1.0f > 1.0, int));
static_assert(TYPE_OF(1.0f > 1.0, int));
static_assert(TYPE_OF(1.0f > 1.0f, int));
static_assert(TYPE_OF(1.0f > 1.0f, int));
static_assert(TYPE_OF(1.0f > 1.0L, int));
static_assert(TYPE_OF(1.0f > 1.0L, int));
static_assert(TYPE_OF(1.0L > 1, int));
static_assert(TYPE_OF(1.0L > 1, int));
static_assert(TYPE_OF(1.0L > 1L, int));
static_assert(TYPE_OF(1.0L > 1L, int));
static_assert(TYPE_OF(1.0L > 1LL, int));
static_assert(TYPE_OF(1.0L > 1LL, int));
static_assert(TYPE_OF(1.0L > 1U, int));
static_assert(TYPE_OF(1.0L > 1U, int));
static_assert(TYPE_OF(1.0L > 1UL, int));
static_assert(TYPE_OF(1.0L > 1UL, int));
static_assert(TYPE_OF(1.0L > 1ULL, int));
static_assert(TYPE_OF(1.0L > 1ULL, int));
static_assert(TYPE_OF(1.0L > 1.0, int));
static_assert(TYPE_OF(1.0L > 1.0, int));
static_assert(TYPE_OF(1.0L > 1.0f, int));
static_assert(TYPE_OF(1.0L > 1.0f, int));
static_assert(TYPE_OF(1.0L > 1.0L, int));
static_assert(TYPE_OF(1.0L > 1.0L, int));
static_assert(TYPE_OF(1 >= 1, int));
static_assert(TYPE_OF(1 >= 1, int));
static_assert(TYPE_OF(1 >= 1L, int));
static_assert(TYPE_OF(1 >= 1L, int));
static_assert(TYPE_OF(1 >= 1LL, int));
static_assert(TYPE_OF(1 >= 1LL, int));
static_assert(TYPE_OF(1 >= 1U, int));
static_assert(TYPE_OF(1 >= 1U, int));
static_assert(TYPE_OF(1 >= 1UL, int));
static_assert(TYPE_OF(1 >= 1UL, int));
static_assert(TYPE_OF(1 >= 1ULL, int));
static_assert(TYPE_OF(1 >= 1ULL, int));
static_assert(TYPE_OF(1 >= 1.0, int));
static_assert(TYPE_OF(1 >= 1.0, int));
static_assert(TYPE_OF(1 >= 1.0f, int));
static_assert(TYPE_OF(1 >= 1.0f, int));
static_assert(TYPE_OF(1 >= 1.0L, int));
static_assert(TYPE_OF(1 >= 1.0L, int));
static_assert(TYPE_OF(1L >= 1, int));
static_assert(TYPE_OF(1L >= 1, int));
static_assert(TYPE_OF(1L >= 1L, int));
static_assert(TYPE_OF(1L >= 1L, int));
static_assert(TYPE_OF(1L >= 1LL, int));
static_assert(TYPE_OF(1L >= 1LL, int));
static_assert(TYPE_OF(1L >= 1U, int));
static_assert(TYPE_OF(1L >= 1U, int));
static_assert(TYPE_OF(1L >= 1UL, int));
static_assert(TYPE_OF(1L >= 1UL, int));
static_assert(TYPE_OF(1L >= 1ULL, int));
static_assert(TYPE_OF(1L >= 1ULL, int));
static_assert(TYPE_OF(1L >= 1.0, int));
static_assert(TYPE_OF(1L >= 1.0, int));
static_assert(TYPE_OF(1L >= 1.0f, int));
static_assert(TYPE_OF(1L >= 1.0f, int));
static_assert(TYPE_OF(1L >= 1.0L, int));
static_assert(TYPE_OF(1L >= 1.0L, int));
static_assert(TYPE_OF(1LL >= 1, int));
static_assert(TYPE_OF(1LL >= 1, int));
static_assert(TYPE_OF(1LL >= 1L, int));
static_assert(TYPE_OF(1LL >= 1L, int));
static_assert(TYPE_OF(1LL >= 1LL, int));
static_assert(TYPE_OF(1LL >= 1LL, int));
static_assert(TYPE_OF(1LL >= 1U, int));
static_assert(TYPE_OF(1LL >= 1U, int));
static_assert(TYPE_OF(1LL >= 1UL, int));
static_assert(TYPE_OF(1LL >= 1UL, int));
static_assert(TYPE_OF(1LL >= 1ULL, int));
static_assert(TYPE_OF(1LL >= 1ULL, int));
static_assert(TYPE_OF(1LL >= 1.0, int));
static_assert(TYPE_OF(1LL >= 1.0, int));
static_assert(TYPE_OF(1LL >= 1.0f, int));
static_assert(TYPE_OF(1LL >= 1.0f, int));
static_assert(TYPE_OF(1LL >= 1.0L, int));
static_assert(TYPE_OF(1LL >= 1.0L, int));
static_assert(TYPE_OF(1U >= 1, int));
static_assert(TYPE_OF(1U >= 1, int));
static_assert(TYPE_OF(1U >= 1L, int));
static_assert(TYPE_OF(1U >= 1L, int));
static_assert(TYPE_OF(1U >= 1LL, int));
static_assert(TYPE_OF(1U >= 1LL, int));
static_assert(TYPE_OF(1U >= 1U, int));
static_assert(TYPE_OF(1U >= 1U, int));
static_assert(TYPE_OF(1U >= 1UL, int));
static_assert(TYPE_OF(1U >= 1UL, int));
static_assert(TYPE_OF(1U >= 1ULL, int));
static_assert(TYPE_OF(1U >= 1ULL, int));
static_assert(TYPE_OF(1U >= 1.0, int));
static_assert(TYPE_OF(1U >= 1.0, int));
static_assert(TYPE_OF(1U >= 1.0f, int));
static_assert(TYPE_OF(1U >= 1.0f, int));
static_assert(TYPE_OF(1U >= 1.0L, int));
static_assert(TYPE_OF(1U >= 1.0L, int));
static_assert(TYPE_OF(1UL >= 1, int));
static_assert(TYPE_OF(1UL >= 1, int));
static_assert(TYPE_OF(1UL >= 1L, int));
static_assert(TYPE_OF(1UL >= 1L, int));
static_assert(TYPE_OF(1UL >= 1LL, int));
static_assert(TYPE_OF(1UL >= 1LL, int));
static_assert(TYPE_OF(1UL >= 1U, int));
static_assert(TYPE_OF(1UL >= 1U, int));
static_assert(TYPE_OF(1UL >= 1UL, int));
static_assert(TYPE_OF(1UL >= 1UL, int));
static_assert(TYPE_OF(1UL >= 1ULL, int));
static_assert(TYPE_OF(1UL >= 1ULL, int));
static_assert(TYPE_OF(1UL >= 1.0, int));
static_assert(TYPE_OF(1UL >= 1.0, int));
static_assert(TYPE_OF(1UL >= 1.0f, int));
static_assert(TYPE_OF(1UL >= 1.0f, int));
static_assert(TYPE_OF(1UL >= 1.0L, int));
static_assert(TYPE_OF(1UL >= 1.0L, int));
static_assert(TYPE_OF(1ULL >= 1, int));
static_assert(TYPE_OF(1ULL >= 1, int));
static_assert(TYPE_OF(1ULL >= 1L, int));
static_assert(TYPE_OF(1ULL >= 1L, int));
static_assert(TYPE_OF(1ULL >= 1LL, int));
static_assert(TYPE_OF(1ULL >= 1LL, int));
static_assert(TYPE_OF(1ULL >= 1U, int));
static_assert(TYPE_OF(1ULL >= 1U, int));
static_assert(TYPE_OF(1ULL >= 1UL, int));
static_assert(TYPE_OF(1ULL >= 1UL, int));
static_assert(TYPE_OF(1ULL >= 1ULL, int));
static_assert(TYPE_OF(1ULL >= 1ULL, int));
static_assert(TYPE_OF(1ULL >= 1.0, int));
static_assert(TYPE_OF(1ULL >= 1.0, int));
static_assert(TYPE_OF(1ULL >= 1.0f, int));
static_assert(TYPE_OF(1ULL >= 1.0f, int));
static_assert(TYPE_OF(1ULL >= 1.0L, int));
static_assert(TYPE_OF(1ULL >= 1.0L, int));
static_assert(TYPE_OF(1.0 >= 1, int));
static_assert(TYPE_OF(1.0 >= 1, int));
static_assert(TYPE_OF(1.0 >= 1L, int));
static_assert(TYPE_OF(1.0 >= 1L, int));
static_assert(TYPE_OF(1.0 >= 1LL, int));
static_assert(TYPE_OF(1.0 >= 1LL, int));
static_assert(TYPE_OF(1.0 >= 1U, int));
static_assert(TYPE_OF(1.0 >= 1U, int));
static_assert(TYPE_OF(1.0 >= 1UL, int));
static_assert(TYPE_OF(1.0 >= 1UL, int));
static_assert(TYPE_OF(1.0 >= 1ULL, int));
static_assert(TYPE_OF(1.0 >= 1ULL, int));
static_assert(TYPE_OF(1.0 >= 1.0, int));
static_assert(TYPE_OF(1.0 >= 1.0, int));
static_assert(TYPE_OF(1.0 >= 1.0f, int));
static_assert(TYPE_OF(1.0 >= 1.0f, int));
static_assert(TYPE_OF(1.0 >= 1.0L, int));
static_assert(TYPE_OF(1.0 >= 1.0L, int));
static_assert(TYPE_OF(1.0f >= 1, int));
static_assert(TYPE_OF(1.0f >= 1, int));
static_assert(TYPE_OF(1.0f >= 1L, int));
static_assert(TYPE_OF(1.0f >= 1L, int));
static_assert(TYPE_OF(1.0f >= 1LL, int));
static_assert(TYPE_OF(1.0f >= 1LL, int));
static_assert(TYPE_OF(1.0f >= 1U, int));
static_assert(TYPE_OF(1.0f >= 1U, int));
static_assert(TYPE_OF(1.0f >= 1UL, int));
static_assert(TYPE_OF(1.0f >= 1UL, int));
static_assert(TYPE_OF(1.0f >= 1ULL, int));
static_assert(TYPE_OF(1.0f >= 1ULL, int));
static_assert(TYPE_OF(1.0f >= 1.0, int));
static_assert(TYPE_OF(1.0f >= 1.0, int));
static_assert(TYPE_OF(1.0f >= 1.0f, int));
static_assert(TYPE_OF(1.0f >= 1.0f, int));
static_assert(TYPE_OF(1.0f >= 1.0L, int));
static_assert(TYPE_OF(1.0f >= 1.0L, int));
static_assert(TYPE_OF(1.0L >= 1, int));
static_assert(TYPE_OF(1.0L >= 1, int));
static_assert(TYPE_OF(1.0L >= 1L, int));
static_assert(TYPE_OF(1.0L >= 1L, int));
static_assert(TYPE_OF(1.0L >= 1LL, int));
static_assert(TYPE_OF(1.0L >= 1LL, int));
static_assert(TYPE_OF(1.0L >= 1U, int));
static_assert(TYPE_OF(1.0L >= 1U, int));
static_assert(TYPE_OF(1.0L >= 1UL, int));
static_assert(TYPE_OF(1.0L >= 1UL, int));
static_assert(TYPE_OF(1.0L >= 1ULL, int));
static_assert(TYPE_OF(1.0L >= 1ULL, int));
static_assert(TYPE_OF(1.0L >= 1.0, int));
static_assert(TYPE_OF(1.0L >= 1.0, int));
static_assert(TYPE_OF(1.0L >= 1.0f, int));
static_assert(TYPE_OF(1.0L >= 1.0f, int));
static_assert(TYPE_OF(1.0L >= 1.0L, int));
static_assert(TYPE_OF(1.0L >= 1.0L, int));
static_assert(TYPE_OF(1 < 1, int));
static_assert(TYPE_OF(1 < 1, int));
static_assert(TYPE_OF(1 < 1L, int));
static_assert(TYPE_OF(1 < 1L, int));
static_assert(TYPE_OF(1 < 1LL, int));
static_assert(TYPE_OF(1 < 1LL, int));
static_assert(TYPE_OF(1 < 1U, int));
static_assert(TYPE_OF(1 < 1U, int));
static_assert(TYPE_OF(1 < 1UL, int));
static_assert(TYPE_OF(1 < 1UL, int));
static_assert(TYPE_OF(1 < 1ULL, int));
static_assert(TYPE_OF(1 < 1ULL, int));
static_assert(TYPE_OF(1 < 1.0, int));
static_assert(TYPE_OF(1 < 1.0, int));
static_assert(TYPE_OF(1 < 1.0f, int));
static_assert(TYPE_OF(1 < 1.0f, int));
static_assert(TYPE_OF(1 < 1.0L, int));
static_assert(TYPE_OF(1 < 1.0L, int));
static_assert(TYPE_OF(1L < 1, int));
static_assert(TYPE_OF(1L < 1, int));
static_assert(TYPE_OF(1L < 1L, int));
static_assert(TYPE_OF(1L < 1L, int));
static_assert(TYPE_OF(1L < 1LL, int));
static_assert(TYPE_OF(1L < 1LL, int));
static_assert(TYPE_OF(1L < 1U, int));
static_assert(TYPE_OF(1L < 1U, int));
static_assert(TYPE_OF(1L < 1UL, int));
static_assert(TYPE_OF(1L < 1UL, int));
static_assert(TYPE_OF(1L < 1ULL, int));
static_assert(TYPE_OF(1L < 1ULL, int));
static_assert(TYPE_OF(1L < 1.0, int));
static_assert(TYPE_OF(1L < 1.0, int));
static_assert(TYPE_OF(1L < 1.0f, int));
static_assert(TYPE_OF(1L < 1.0f, int));
static_assert(TYPE_OF(1L < 1.0L, int));
static_assert(TYPE_OF(1L < 1.0L, int));
static_assert(TYPE_OF(1LL < 1, int));
static_assert(TYPE_OF(1LL < 1, int));
static_assert(TYPE_OF(1LL < 1L, int));
static_assert(TYPE_OF(1LL < 1L, int));
static_assert(TYPE_OF(1LL < 1LL, int));
static_assert(TYPE_OF(1LL < 1LL, int));
static_assert(TYPE_OF(1LL < 1U, int));
static_assert(TYPE_OF(1LL < 1U, int));
static_assert(TYPE_OF(1LL < 1UL, int));
static_assert(TYPE_OF(1LL < 1UL, int));
static_assert(TYPE_OF(1LL < 1ULL, int));
static_assert(TYPE_OF(1LL < 1ULL, int));
static_assert(TYPE_OF(1LL < 1.0, int));
static_assert(TYPE_OF(1LL < 1.0, int));
static_assert(TYPE_OF(1LL < 1.0f, int));
static_assert(TYPE_OF(1LL < 1.0f, int));
static_assert(TYPE_OF(1LL < 1.0L, int));
static_assert(TYPE_OF(1LL < 1.0L, int));
static_assert(TYPE_OF(1U < 1, int));
static_assert(TYPE_OF(1U < 1, int));
static_assert(TYPE_OF(1U < 1L, int));
static_assert(TYPE_OF(1U < 1L, int));
static_assert(TYPE_OF(1U < 1LL, int));
static_assert(TYPE_OF(1U < 1LL, int));
static_assert(TYPE_OF(1U < 1U, int));
static_assert(TYPE_OF(1U < 1U, int));
static_assert(TYPE_OF(1U < 1UL, int));
static_assert(TYPE_OF(1U < 1UL, int));
static_assert(TYPE_OF(1U < 1ULL, int));
static_assert(TYPE_OF(1U < 1ULL, int));
static_assert(TYPE_OF(1U < 1.0, int));
static_assert(TYPE_OF(1U < 1.0, int));
static_assert(TYPE_OF(1U < 1.0f, int));
static_assert(TYPE_OF(1U < 1.0f, int));
static_assert(TYPE_OF(1U < 1.0L, int));
static_assert(TYPE_OF(1U < 1.0L, int));
static_assert(TYPE_OF(1UL < 1, int));
static_assert(TYPE_OF(1UL < 1, int));
static_assert(TYPE_OF(1UL < 1L, int));
static_assert(TYPE_OF(1UL < 1L, int));
static_assert(TYPE_OF(1UL < 1LL, int));
static_assert(TYPE_OF(1UL < 1LL, int));
static_assert(TYPE_OF(1UL < 1U, int));
static_assert(TYPE_OF(1UL < 1U, int));
static_assert(TYPE_OF(1UL < 1UL, int));
static_assert(TYPE_OF(1UL < 1UL, int));
static_assert(TYPE_OF(1UL < 1ULL, int));
static_assert(TYPE_OF(1UL < 1ULL, int));
static_assert(TYPE_OF(1UL < 1.0, int));
static_assert(TYPE_OF(1UL < 1.0, int));
static_assert(TYPE_OF(1UL < 1.0f, int));
static_assert(TYPE_OF(1UL < 1.0f, int));
static_assert(TYPE_OF(1UL < 1.0L, int));
static_assert(TYPE_OF(1UL < 1.0L, int));
static_assert(TYPE_OF(1ULL < 1, int));
static_assert(TYPE_OF(1ULL < 1, int));
static_assert(TYPE_OF(1ULL < 1L, int));
static_assert(TYPE_OF(1ULL < 1L, int));
static_assert(TYPE_OF(1ULL < 1LL, int));
static_assert(TYPE_OF(1ULL < 1LL, int));
static_assert(TYPE_OF(1ULL < 1U, int));
static_assert(TYPE_OF(1ULL < 1U, int));
static_assert(TYPE_OF(1ULL < 1UL, int));
static_assert(TYPE_OF(1ULL < 1UL, int));
static_assert(TYPE_OF(1ULL < 1ULL, int));
static_assert(TYPE_OF(1ULL < 1ULL, int));
static_assert(TYPE_OF(1ULL < 1.0, int));
static_assert(TYPE_OF(1ULL < 1.0, int));
static_assert(TYPE_OF(1ULL < 1.0f, int));
static_assert(TYPE_OF(1ULL < 1.0f, int));
static_assert(TYPE_OF(1ULL < 1.0L, int));
static_assert(TYPE_OF(1ULL < 1.0L, int));
static_assert(TYPE_OF(1.0 < 1, int));
static_assert(TYPE_OF(1.0 < 1, int));
static_assert(TYPE_OF(1.0 < 1L, int));
static_assert(TYPE_OF(1.0 < 1L, int));
static_assert(TYPE_OF(1.0 < 1LL, int));
static_assert(TYPE_OF(1.0 < 1LL, int));
static_assert(TYPE_OF(1.0 < 1U, int));
static_assert(TYPE_OF(1.0 < 1U, int));
static_assert(TYPE_OF(1.0 < 1UL, int));
static_assert(TYPE_OF(1.0 < 1UL, int));
static_assert(TYPE_OF(1.0 < 1ULL, int));
static_assert(TYPE_OF(1.0 < 1ULL, int));
static_assert(TYPE_OF(1.0 < 1.0, int));
static_assert(TYPE_OF(1.0 < 1.0, int));
static_assert(TYPE_OF(1.0 < 1.0f, int));
static_assert(TYPE_OF(1.0 < 1.0f, int));
static_assert(TYPE_OF(1.0 < 1.0L, int));
static_assert(TYPE_OF(1.0 < 1.0L, int));
static_assert(TYPE_OF(1.0f < 1, int));
static_assert(TYPE_OF(1.0f < 1, int));
static_assert(TYPE_OF(1.0f < 1L, int));
static_assert(TYPE_OF(1.0f < 1L, int));
static_assert(TYPE_OF(1.0f < 1LL, int));
static_assert(TYPE_OF(1.0f < 1LL, int));
static_assert(TYPE_OF(1.0f < 1U, int));
static_assert(TYPE_OF(1.0f < 1U, int));
static_assert(TYPE_OF(1.0f < 1UL, int));
static_assert(TYPE_OF(1.0f < 1UL, int));
static_assert(TYPE_OF(1.0f < 1ULL, int));
static_assert(TYPE_OF(1.0f < 1ULL, int));
static_assert(TYPE_OF(1.0f < 1.0, int));
static_assert(TYPE_OF(1.0f < 1.0, int));
static_assert(TYPE_OF(1.0f < 1.0f, int));
static_assert(TYPE_OF(1.0f < 1.0f, int));
static_assert(TYPE_OF(1.0f < 1.0L, int));
static_assert(TYPE_OF(1.0f < 1.0L, int));
static_assert(TYPE_OF(1.0L < 1, int));
static_assert(TYPE_OF(1.0L < 1, int));
static_assert(TYPE_OF(1.0L < 1L, int));
static_assert(TYPE_OF(1.0L < 1L, int));
static_assert(TYPE_OF(1.0L < 1LL, int));
static_assert(TYPE_OF(1.0L < 1LL, int));
static_assert(TYPE_OF(1.0L < 1U, int));
static_assert(TYPE_OF(1.0L < 1U, int));
static_assert(TYPE_OF(1.0L < 1UL, int));
static_assert(TYPE_OF(1.0L < 1UL, int));
static_assert(TYPE_OF(1.0L < 1ULL, int));
static_assert(TYPE_OF(1.0L < 1ULL, int));
static_assert(TYPE_OF(1.0L < 1.0, int));
static_assert(TYPE_OF(1.0L < 1.0, int));
static_assert(TYPE_OF(1.0L < 1.0f, int));
static_assert(TYPE_OF(1.0L < 1.0f, int));
static_assert(TYPE_OF(1.0L < 1.0L, int));
static_assert(TYPE_OF(1.0L < 1.0L, int));
static_assert(TYPE_OF(1 <= 1, int));
static_assert(TYPE_OF(1 <= 1, int));
static_assert(TYPE_OF(1 <= 1L, int));
static_assert(TYPE_OF(1 <= 1L, int));
static_assert(TYPE_OF(1 <= 1LL, int));
static_assert(TYPE_OF(1 <= 1LL, int));
static_assert(TYPE_OF(1 <= 1U, int));
static_assert(TYPE_OF(1 <= 1U, int));
static_assert(TYPE_OF(1 <= 1UL, int));
static_assert(TYPE_OF(1 <= 1UL, int));
static_assert(TYPE_OF(1 <= 1ULL, int));
static_assert(TYPE_OF(1 <= 1ULL, int));
static_assert(TYPE_OF(1 <= 1.0, int));
static_assert(TYPE_OF(1 <= 1.0, int));
static_assert(TYPE_OF(1 <= 1.0f, int));
static_assert(TYPE_OF(1 <= 1.0f, int));
static_assert(TYPE_OF(1 <= 1.0L, int));
static_assert(TYPE_OF(1 <= 1.0L, int));
static_assert(TYPE_OF(1L <= 1, int));
static_assert(TYPE_OF(1L <= 1, int));
static_assert(TYPE_OF(1L <= 1L, int));
static_assert(TYPE_OF(1L <= 1L, int));
static_assert(TYPE_OF(1L <= 1LL, int));
static_assert(TYPE_OF(1L <= 1LL, int));
static_assert(TYPE_OF(1L <= 1U, int));
static_assert(TYPE_OF(1L <= 1U, int));
static_assert(TYPE_OF(1L <= 1UL, int));
static_assert(TYPE_OF(1L <= 1UL, int));
static_assert(TYPE_OF(1L <= 1ULL, int));
static_assert(TYPE_OF(1L <= 1ULL, int));
static_assert(TYPE_OF(1L <= 1.0, int));
static_assert(TYPE_OF(1L <= 1.0, int));
static_assert(TYPE_OF(1L <= 1.0f, int));
static_assert(TYPE_OF(1L <= 1.0f, int));
static_assert(TYPE_OF(1L <= 1.0L, int));
static_assert(TYPE_OF(1L <= 1.0L, int));
static_assert(TYPE_OF(1LL <= 1, int));
static_assert(TYPE_OF(1LL <= 1, int));
static_assert(TYPE_OF(1LL <= 1L, int));
static_assert(TYPE_OF(1LL <= 1L, int));
static_assert(TYPE_OF(1LL <= 1LL, int));
static_assert(TYPE_OF(1LL <= 1LL, int));
static_assert(TYPE_OF(1LL <= 1U, int));
static_assert(TYPE_OF(1LL <= 1U, int));
static_assert(TYPE_OF(1LL <= 1UL, int));
static_assert(TYPE_OF(1LL <= 1UL, int));
static_assert(TYPE_OF(1LL <= 1ULL, int));
static_assert(TYPE_OF(1LL <= 1ULL, int));
static_assert(TYPE_OF(1LL <= 1.0, int));
static_assert(TYPE_OF(1LL <= 1.0, int));
static_assert(TYPE_OF(1LL <= 1.0f, int));
static_assert(TYPE_OF(1LL <= 1.0f, int));
static_assert(TYPE_OF(1LL <= 1.0L, int));
static_assert(TYPE_OF(1LL <= 1.0L, int));
static_assert(TYPE_OF(1U <= 1, int));
static_assert(TYPE_OF(1U <= 1, int));
static_assert(TYPE_OF(1U <= 1L, int));
static_assert(TYPE_OF(1U <= 1L, int));
static_assert(TYPE_OF(1U <= 1LL, int));
static_assert(TYPE_OF(1U <= 1LL, int));
static_assert(TYPE_OF(1U <= 1U, int));
static_assert(TYPE_OF(1U <= 1U, int));
static_assert(TYPE_OF(1U <= 1UL, int));
static_assert(TYPE_OF(1U <= 1UL, int));
static_assert(TYPE_OF(1U <= 1ULL, int));
static_assert(TYPE_OF(1U <= 1ULL, int));
static_assert(TYPE_OF(1U <= 1.0, int));
static_assert(TYPE_OF(1U <= 1.0, int));
static_assert(TYPE_OF(1U <= 1.0f, int));
static_assert(TYPE_OF(1U <= 1.0f, int));
static_assert(TYPE_OF(1U <= 1.0L, int));
static_assert(TYPE_OF(1U <= 1.0L, int));
static_assert(TYPE_OF(1UL <= 1, int));
static_assert(TYPE_OF(1UL <= 1, int));
static_assert(TYPE_OF(1UL <= 1L, int));
static_assert(TYPE_OF(1UL <= 1L, int));
static_assert(TYPE_OF(1UL <= 1LL, int));
static_assert(TYPE_OF(1UL <= 1LL, int));
static_assert(TYPE_OF(1UL <= 1U, int));
static_assert(TYPE_OF(1UL <= 1U, int));
static_assert(TYPE_OF(1UL <= 1UL, int));
static_assert(TYPE_OF(1UL <= 1UL, int));
static_assert(TYPE_OF(1UL <= 1ULL, int));
static_assert(TYPE_OF(1UL <= 1ULL, int));
static_assert(TYPE_OF(1UL <= 1.0, int));
static_assert(TYPE_OF(1UL <= 1.0, int));
static_assert(TYPE_OF(1UL <= 1.0f, int));
static_assert(TYPE_OF(1UL <= 1.0f, int));
static_assert(TYPE_OF(1UL <= 1.0L, int));
static_assert(TYPE_OF(1UL <= 1.0L, int));
static_assert(TYPE_OF(1ULL <= 1, int));
static_assert(TYPE_OF(1ULL <= 1, int));
static_assert(TYPE_OF(1ULL <= 1L, int));
static_assert(TYPE_OF(1ULL <= 1L, int));
static_assert(TYPE_OF(1ULL <= 1LL, int));
static_assert(TYPE_OF(1ULL <= 1LL, int));
static_assert(TYPE_OF(1ULL <= 1U, int));
static_assert(TYPE_OF(1ULL <= 1U, int));
static_assert(TYPE_OF(1ULL <= 1UL, int));
static_assert(TYPE_OF(1ULL <= 1UL, int));
static_assert(TYPE_OF(1ULL <= 1ULL, int));
static_assert(TYPE_OF(1ULL <= 1ULL, int));
static_assert(TYPE_OF(1ULL <= 1.0, int));
static_assert(TYPE_OF(1ULL <= 1.0, int));
static_assert(TYPE_OF(1ULL <= 1.0f, int));
static_assert(TYPE_OF(1ULL <= 1.0f, int));
static_assert(TYPE_OF(1ULL <= 1.0L, int));
static_assert(TYPE_OF(1ULL <= 1.0L, int));
static_assert(TYPE_OF(1.0 <= 1, int));
static_assert(TYPE_OF(1.0 <= 1, int));
static_assert(TYPE_OF(1.0 <= 1L, int));
static_assert(TYPE_OF(1.0 <= 1L, int));
static_assert(TYPE_OF(1.0 <= 1LL, int));
static_assert(TYPE_OF(1.0 <= 1LL, int));
static_assert(TYPE_OF(1.0 <= 1U, int));
static_assert(TYPE_OF(1.0 <= 1U, int));
static_assert(TYPE_OF(1.0 <= 1UL, int));
static_assert(TYPE_OF(1.0 <= 1UL, int));
static_assert(TYPE_OF(1.0 <= 1ULL, int));
static_assert(TYPE_OF(1.0 <= 1ULL, int));
static_assert(TYPE_OF(1.0 <= 1.0, int));
static_assert(TYPE_OF(1.0 <= 1.0, int));
static_assert(TYPE_OF(1.0 <= 1.0f, int));
static_assert(TYPE_OF(1.0 <= 1.0f, int));
static_assert(TYPE_OF(1.0 <= 1.0L, int));
static_assert(TYPE_OF(1.0 <= 1.0L, int));
static_assert(TYPE_OF(1.0f <= 1, int));
static_assert(TYPE_OF(1.0f <= 1, int));
static_assert(TYPE_OF(1.0f <= 1L, int));
static_assert(TYPE_OF(1.0f <= 1L, int));
static_assert(TYPE_OF(1.0f <= 1LL, int));
static_assert(TYPE_OF(1.0f <= 1LL, int));
static_assert(TYPE_OF(1.0f <= 1U, int));
static_assert(TYPE_OF(1.0f <= 1U, int));
static_assert(TYPE_OF(1.0f <= 1UL, int));
static_assert(TYPE_OF(1.0f <= 1UL, int));
static_assert(TYPE_OF(1.0f <= 1ULL, int));
static_assert(TYPE_OF(1.0f <= 1ULL, int));
static_assert(TYPE_OF(1.0f <= 1.0, int));
static_assert(TYPE_OF(1.0f <= 1.0, int));
static_assert(TYPE_OF(1.0f <= 1.0f, int));
static_assert(TYPE_OF(1.0f <= 1.0f, int));
static_assert(TYPE_OF(1.0f <= 1.0L, int));
static_assert(TYPE_OF(1.0f <= 1.0L, int));
static_assert(TYPE_OF(1.0L <= 1, int));
static_assert(TYPE_OF(1.0L <= 1, int));
static_assert(TYPE_OF(1.0L <= 1L, int));
static_assert(TYPE_OF(1.0L <= 1L, int));
static_assert(TYPE_OF(1.0L <= 1LL, int));
static_assert(TYPE_OF(1.0L <= 1LL, int));
static_assert(TYPE_OF(1.0L <= 1U, int));
static_assert(TYPE_OF(1.0L <= 1U, int));
static_assert(TYPE_OF(1.0L <= 1UL, int));
static_assert(TYPE_OF(1.0L <= 1UL, int));
static_assert(TYPE_OF(1.0L <= 1ULL, int));
static_assert(TYPE_OF(1.0L <= 1ULL, int));
static_assert(TYPE_OF(1.0L <= 1.0, int));
static_assert(TYPE_OF(1.0L <= 1.0, int));
static_assert(TYPE_OF(1.0L <= 1.0f, int));
static_assert(TYPE_OF(1.0L <= 1.0f, int));
static_assert(TYPE_OF(1.0L <= 1.0L, int));
static_assert(TYPE_OF(1.0L <= 1.0L, int));
static_assert(TYPE_OF(1 + 1, int));
static_assert(TYPE_OF(1 + 1L, long));
static_assert(TYPE_OF(1 + 1LL, long long));
static_assert(TYPE_OF(1 + 1U, unsigned));
static_assert(TYPE_OF(1 + 1UL, unsigned long));
static_assert(TYPE_OF(1 + 1ULL, unsigned long long));
static_assert(TYPE_OF(1 + 1.0, double));
static_assert(TYPE_OF(1 + 1.0f, float));
static_assert(TYPE_OF(1 + 1.0L, long double));
static_assert(TYPE_OF(1L + 1, long));
static_assert(TYPE_OF(1L + 1L, long));
static_assert(TYPE_OF(1L + 1LL, long long));
static_assert(TYPE_OF(1L + 1U, unsigned long));
static_assert(TYPE_OF(1L + 1UL, unsigned long));
static_assert(TYPE_OF(1L + 1ULL, unsigned long long));
static_assert(TYPE_OF(1L + 1.0, double));
static_assert(TYPE_OF(1L + 1.0f, float));
static_assert(TYPE_OF(1L + 1.0L, long double));
static_assert(TYPE_OF(1LL + 1, long long));
static_assert(TYPE_OF(1LL + 1L, long long));
static_assert(TYPE_OF(1LL + 1LL, long long));
static_assert(TYPE_OF(1LL + 1U, long long));
static_assert(TYPE_OF(1LL + 1UL, long long));
static_assert(TYPE_OF(1LL + 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL + 1.0, double));
static_assert(TYPE_OF(1LL + 1.0f, float));
static_assert(TYPE_OF(1LL + 1.0L, long double));
static_assert(TYPE_OF(1U + 1, unsigned));
static_assert(TYPE_OF(1U + 1L, unsigned long));
static_assert(TYPE_OF(1U + 1LL, long long));
static_assert(TYPE_OF(1U + 1U, unsigned));
static_assert(TYPE_OF(1U + 1UL, unsigned long));
static_assert(TYPE_OF(1U + 1ULL, unsigned long long));
static_assert(TYPE_OF(1U + 1.0, double));
static_assert(TYPE_OF(1U + 1.0f, float));
static_assert(TYPE_OF(1U + 1.0L, long double));
static_assert(TYPE_OF(1UL + 1, unsigned long));
static_assert(TYPE_OF(1UL + 1L, unsigned long));
static_assert(TYPE_OF(1UL + 1LL, long long));
static_assert(TYPE_OF(1UL + 1U, unsigned long));
static_assert(TYPE_OF(1UL + 1UL, unsigned long));
static_assert(TYPE_OF(1UL + 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL + 1.0, double));
static_assert(TYPE_OF(1UL + 1.0f, float));
static_assert(TYPE_OF(1UL + 1.0L, long double));
static_assert(TYPE_OF(1ULL + 1, unsigned long long));
static_assert(TYPE_OF(1ULL + 1L, unsigned long long));
static_assert(TYPE_OF(1ULL + 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL + 1U, unsigned long long));
static_assert(TYPE_OF(1ULL + 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL + 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL + 1.0, double));
static_assert(TYPE_OF(1ULL + 1.0f, float));
static_assert(TYPE_OF(1ULL + 1.0L, long double));
static_assert(TYPE_OF(1.0 + 1, double));
static_assert(TYPE_OF(1.0 + 1L, double));
static_assert(TYPE_OF(1.0 + 1LL, double));
static_assert(TYPE_OF(1.0 + 1U, double));
static_assert(TYPE_OF(1.0 + 1UL, double));
static_assert(TYPE_OF(1.0 + 1ULL, double));
static_assert(TYPE_OF(1.0 + 1.0, double));
static_assert(TYPE_OF(1.0 + 1.0f, double));
static_assert(TYPE_OF(1.0 + 1.0L, long double));
static_assert(TYPE_OF(1.0f + 1, float));
static_assert(TYPE_OF(1.0f + 1L, float));
static_assert(TYPE_OF(1.0f + 1LL, float));
static_assert(TYPE_OF(1.0f + 1U, float));
static_assert(TYPE_OF(1.0f + 1UL, float));
static_assert(TYPE_OF(1.0f + 1ULL, float));
static_assert(TYPE_OF(1.0f + 1.0, double));
static_assert(TYPE_OF(1.0f + 1.0f, float));
static_assert(TYPE_OF(1.0f + 1.0L, long double));
static_assert(TYPE_OF(1.0L + 1, long double));
static_assert(TYPE_OF(1.0L + 1L, long double));
static_assert(TYPE_OF(1.0L + 1LL, long double));
static_assert(TYPE_OF(1.0L + 1U, long double));
static_assert(TYPE_OF(1.0L + 1UL, long double));
static_assert(TYPE_OF(1.0L + 1ULL, long double));
static_assert(TYPE_OF(1.0L + 1.0, long double));
static_assert(TYPE_OF(1.0L + 1.0f, long double));
static_assert(TYPE_OF(1.0L + 1.0L, long double));
static_assert(TYPE_OF(1 - 1, int));
static_assert(TYPE_OF(1 - 1L, long));
static_assert(TYPE_OF(1 - 1LL, long long));
static_assert(TYPE_OF(1 - 1U, unsigned));
static_assert(TYPE_OF(1 - 1UL, unsigned long));
static_assert(TYPE_OF(1 - 1ULL, unsigned long long));
static_assert(TYPE_OF(1 - 1.0, double));
static_assert(TYPE_OF(1 - 1.0f, float));
static_assert(TYPE_OF(1 - 1.0L, long double));
static_assert(TYPE_OF(1L - 1, long));
static_assert(TYPE_OF(1L - 1L, long));
static_assert(TYPE_OF(1L - 1LL, long long));
static_assert(TYPE_OF(1L - 1U, unsigned long));
static_assert(TYPE_OF(1L - 1UL, unsigned long));
static_assert(TYPE_OF(1L - 1ULL, unsigned long long));
static_assert(TYPE_OF(1L - 1.0, double));
static_assert(TYPE_OF(1L - 1.0f, float));
static_assert(TYPE_OF(1L - 1.0L, long double));
static_assert(TYPE_OF(1LL - 1, long long));
static_assert(TYPE_OF(1LL - 1L, long long));
static_assert(TYPE_OF(1LL - 1LL, long long));
static_assert(TYPE_OF(1LL - 1U, long long));
static_assert(TYPE_OF(1LL - 1UL, long long));
static_assert(TYPE_OF(1LL - 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL - 1.0, double));
static_assert(TYPE_OF(1LL - 1.0f, float));
static_assert(TYPE_OF(1LL - 1.0L, long double));
static_assert(TYPE_OF(1U - 1, unsigned));
static_assert(TYPE_OF(1U - 1L, unsigned long));
static_assert(TYPE_OF(1U - 1LL, long long));
static_assert(TYPE_OF(1U - 1U, unsigned));
static_assert(TYPE_OF(1U - 1UL, unsigned long));
static_assert(TYPE_OF(1U - 1ULL, unsigned long long));
static_assert(TYPE_OF(1U - 1.0, double));
static_assert(TYPE_OF(1U - 1.0f, float));
static_assert(TYPE_OF(1U - 1.0L, long double));
static_assert(TYPE_OF(1UL - 1, unsigned long));
static_assert(TYPE_OF(1UL - 1L, unsigned long));
static_assert(TYPE_OF(1UL - 1LL, long long));
static_assert(TYPE_OF(1UL - 1U, unsigned long));
static_assert(TYPE_OF(1UL - 1UL, unsigned long));
static_assert(TYPE_OF(1UL - 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL - 1.0, double));
static_assert(TYPE_OF(1UL - 1.0f, float));
static_assert(TYPE_OF(1UL - 1.0L, long double));
static_assert(TYPE_OF(1ULL - 1, unsigned long long));
static_assert(TYPE_OF(1ULL - 1L, unsigned long long));
static_assert(TYPE_OF(1ULL - 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL - 1U, unsigned long long));
static_assert(TYPE_OF(1ULL - 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL - 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL - 1.0, double));
static_assert(TYPE_OF(1ULL - 1.0f, float));
static_assert(TYPE_OF(1ULL - 1.0L, long double));
static_assert(TYPE_OF(1.0 - 1, double));
static_assert(TYPE_OF(1.0 - 1L, double));
static_assert(TYPE_OF(1.0 - 1LL, double));
static_assert(TYPE_OF(1.0 - 1U, double));
static_assert(TYPE_OF(1.0 - 1UL, double));
static_assert(TYPE_OF(1.0 - 1ULL, double));
static_assert(TYPE_OF(1.0 - 1.0, double));
static_assert(TYPE_OF(1.0 - 1.0f, double));
static_assert(TYPE_OF(1.0 - 1.0L, long double));
static_assert(TYPE_OF(1.0f - 1, float));
static_assert(TYPE_OF(1.0f - 1L, float));
static_assert(TYPE_OF(1.0f - 1LL, float));
static_assert(TYPE_OF(1.0f - 1U, float));
static_assert(TYPE_OF(1.0f - 1UL, float));
static_assert(TYPE_OF(1.0f - 1ULL, float));
static_assert(TYPE_OF(1.0f - 1.0, double));
static_assert(TYPE_OF(1.0f - 1.0f, float));
static_assert(TYPE_OF(1.0f - 1.0L, long double));
static_assert(TYPE_OF(1.0L - 1, long double));
static_assert(TYPE_OF(1.0L - 1L, long double));
static_assert(TYPE_OF(1.0L - 1LL, long double));
static_assert(TYPE_OF(1.0L - 1U, long double));
static_assert(TYPE_OF(1.0L - 1UL, long double));
static_assert(TYPE_OF(1.0L - 1ULL, long double));
static_assert(TYPE_OF(1.0L - 1.0, long double));
static_assert(TYPE_OF(1.0L - 1.0f, long double));
static_assert(TYPE_OF(1.0L - 1.0L, long double));
static_assert(TYPE_OF(1 * 1, int));
static_assert(TYPE_OF(1 * 1L, long));
static_assert(TYPE_OF(1 * 1LL, long long));
static_assert(TYPE_OF(1 * 1U, unsigned));
static_assert(TYPE_OF(1 * 1UL, unsigned long));
static_assert(TYPE_OF(1 * 1ULL, unsigned long long));
static_assert(TYPE_OF(1 * 1.0, double));
static_assert(TYPE_OF(1 * 1.0f, float));
static_assert(TYPE_OF(1 * 1.0L, long double));
static_assert(TYPE_OF(1L * 1, long));
static_assert(TYPE_OF(1L * 1L, long));
static_assert(TYPE_OF(1L * 1LL, long long));
static_assert(TYPE_OF(1L * 1U, unsigned long));
static_assert(TYPE_OF(1L * 1UL, unsigned long));
static_assert(TYPE_OF(1L * 1ULL, unsigned long long));
static_assert(TYPE_OF(1L * 1.0, double));
static_assert(TYPE_OF(1L * 1.0f, float));
static_assert(TYPE_OF(1L * 1.0L, long double));
static_assert(TYPE_OF(1LL * 1, long long));
static_assert(TYPE_OF(1LL * 1L, long long));
static_assert(TYPE_OF(1LL * 1LL, long long));
static_assert(TYPE_OF(1LL * 1U, long long));
static_assert(TYPE_OF(1LL * 1UL, long long));
static_assert(TYPE_OF(1LL * 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL * 1.0, double));
static_assert(TYPE_OF(1LL * 1.0f, float));
static_assert(TYPE_OF(1LL * 1.0L, long double));
static_assert(TYPE_OF(1U * 1, unsigned));
static_assert(TYPE_OF(1U * 1L, unsigned long));
static_assert(TYPE_OF(1U * 1LL, long long));
static_assert(TYPE_OF(1U * 1U, unsigned));
static_assert(TYPE_OF(1U * 1UL, unsigned long));
static_assert(TYPE_OF(1U * 1ULL, unsigned long long));
static_assert(TYPE_OF(1U * 1.0, double));
static_assert(TYPE_OF(1U * 1.0f, float));
static_assert(TYPE_OF(1U * 1.0L, long double));
static_assert(TYPE_OF(1UL * 1, unsigned long));
static_assert(TYPE_OF(1UL * 1L, unsigned long));
static_assert(TYPE_OF(1UL * 1LL, long long));
static_assert(TYPE_OF(1UL * 1U, unsigned long));
static_assert(TYPE_OF(1UL * 1UL, unsigned long));
static_assert(TYPE_OF(1UL * 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL * 1.0, double));
static_assert(TYPE_OF(1UL * 1.0f, float));
static_assert(TYPE_OF(1UL * 1.0L, long double));
static_assert(TYPE_OF(1ULL * 1, unsigned long long));
static_assert(TYPE_OF(1ULL * 1L, unsigned long long));
static_assert(TYPE_OF(1ULL * 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL * 1U, unsigned long long));
static_assert(TYPE_OF(1ULL * 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL * 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL * 1.0, double));
static_assert(TYPE_OF(1ULL * 1.0f, float));
static_assert(TYPE_OF(1ULL * 1.0L, long double));
static_assert(TYPE_OF(1.0 * 1, double));
static_assert(TYPE_OF(1.0 * 1L, double));
static_assert(TYPE_OF(1.0 * 1LL, double));
static_assert(TYPE_OF(1.0 * 1U, double));
static_assert(TYPE_OF(1.0 * 1UL, double));
static_assert(TYPE_OF(1.0 * 1ULL, double));
static_assert(TYPE_OF(1.0 * 1.0, double));
static_assert(TYPE_OF(1.0 * 1.0f, double));
static_assert(TYPE_OF(1.0 * 1.0L, long double));
static_assert(TYPE_OF(1.0f * 1, float));
static_assert(TYPE_OF(1.0f * 1L, float));
static_assert(TYPE_OF(1.0f * 1LL, float));
static_assert(TYPE_OF(1.0f * 1U, float));
static_assert(TYPE_OF(1.0f * 1UL, float));
static_assert(TYPE_OF(1.0f * 1ULL, float));
static_assert(TYPE_OF(1.0f * 1.0, double));
static_assert(TYPE_OF(1.0f * 1.0f, float));
static_assert(TYPE_OF(1.0f * 1.0L, long double));
static_assert(TYPE_OF(1.0L * 1, long double));
static_assert(TYPE_OF(1.0L * 1L, long double));
static_assert(TYPE_OF(1.0L * 1LL, long double));
static_assert(TYPE_OF(1.0L * 1U, long double));
static_assert(TYPE_OF(1.0L * 1UL, long double));
static_assert(TYPE_OF(1.0L * 1ULL, long double));
static_assert(TYPE_OF(1.0L * 1.0, long double));
static_assert(TYPE_OF(1.0L * 1.0f, long double));
static_assert(TYPE_OF(1.0L * 1.0L, long double));
static_assert(TYPE_OF(1 / 1, int));
static_assert(TYPE_OF(1 / 1L, long));
static_assert(TYPE_OF(1 / 1LL, long long));
static_assert(TYPE_OF(1 / 1U, unsigned));
static_assert(TYPE_OF(1 / 1UL, unsigned long));
static_assert(TYPE_OF(1 / 1ULL, unsigned long long));
static_assert(TYPE_OF(1 / 1.0, double));
static_assert(TYPE_OF(1 / 1.0f, float));
static_assert(TYPE_OF(1 / 1.0L, long double));
static_assert(TYPE_OF(1L / 1, long));
static_assert(TYPE_OF(1L / 1L, long));
static_assert(TYPE_OF(1L / 1LL, long long));
static_assert(TYPE_OF(1L / 1U, unsigned long));
static_assert(TYPE_OF(1L / 1UL, unsigned long));
static_assert(TYPE_OF(1L / 1ULL, unsigned long long));
static_assert(TYPE_OF(1L / 1.0, double));
static_assert(TYPE_OF(1L / 1.0f, float));
static_assert(TYPE_OF(1L / 1.0L, long double));
static_assert(TYPE_OF(1LL / 1, long long));
static_assert(TYPE_OF(1LL / 1L, long long));
static_assert(TYPE_OF(1LL / 1LL, long long));
static_assert(TYPE_OF(1LL / 1U, long long));
static_assert(TYPE_OF(1LL / 1UL, long long));
static_assert(TYPE_OF(1LL / 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL / 1.0, double));
static_assert(TYPE_OF(1LL / 1.0f, float));
static_assert(TYPE_OF(1LL / 1.0L, long double));
static_assert(TYPE_OF(1U / 1, unsigned));
static_assert(TYPE_OF(1U / 1L, unsigned long));
static_assert(TYPE_OF(1U / 1LL, long long));
static_assert(TYPE_OF(1U / 1U, unsigned));
static_assert(TYPE_OF(1U / 1UL, unsigned long));
static_assert(TYPE_OF(1U / 1ULL, unsigned long long));
static_assert(TYPE_OF(1U / 1.0, double));
static_assert(TYPE_OF(1U / 1.0f, float));
static_assert(TYPE_OF(1U / 1.0L, long double));
static_assert(TYPE_OF(1UL / 1, unsigned long));
static_assert(TYPE_OF(1UL / 1L, unsigned long));
static_assert(TYPE_OF(1UL / 1LL, long long));
static_assert(TYPE_OF(1UL / 1U, unsigned long));
static_assert(TYPE_OF(1UL / 1UL, unsigned long));
static_assert(TYPE_OF(1UL / 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL / 1.0, double));
static_assert(TYPE_OF(1UL / 1.0f, float));
static_assert(TYPE_OF(1UL / 1.0L, long double));
static_assert(TYPE_OF(1ULL / 1, unsigned long long));
static_assert(TYPE_OF(1ULL / 1L, unsigned long long));
static_assert(TYPE_OF(1ULL / 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL / 1U, unsigned long long));
static_assert(TYPE_OF(1ULL / 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL / 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL / 1.0, double));
static_assert(TYPE_OF(1ULL / 1.0f, float));
static_assert(TYPE_OF(1ULL / 1.0L, long double));
static_assert(TYPE_OF(1.0 / 1, double));
static_assert(TYPE_OF(1.0 / 1L, double));
static_assert(TYPE_OF(1.0 / 1LL, double));
static_assert(TYPE_OF(1.0 / 1U, double));
static_assert(TYPE_OF(1.0 / 1UL, double));
static_assert(TYPE_OF(1.0 / 1ULL, double));
static_assert(TYPE_OF(1.0 / 1.0, double));
static_assert(TYPE_OF(1.0 / 1.0f, double));
static_assert(TYPE_OF(1.0 / 1.0L, long double));
static_assert(TYPE_OF(1.0f / 1, float));
static_assert(TYPE_OF(1.0f / 1L, float));
static_assert(TYPE_OF(1.0f / 1LL, float));
static_assert(TYPE_OF(1.0f / 1U, float));
static_assert(TYPE_OF(1.0f / 1UL, float));
static_assert(TYPE_OF(1.0f / 1ULL, float));
static_assert(TYPE_OF(1.0f / 1.0, double));
static_assert(TYPE_OF(1.0f / 1.0f, float));
static_assert(TYPE_OF(1.0f / 1.0L, long double));
static_assert(TYPE_OF(1.0L / 1, long double));
static_assert(TYPE_OF(1.0L / 1L, long double));
static_assert(TYPE_OF(1.0L / 1LL, long double));
static_assert(TYPE_OF(1.0L / 1U, long double));
static_assert(TYPE_OF(1.0L / 1UL, long double));
static_assert(TYPE_OF(1.0L / 1ULL, long double));
static_assert(TYPE_OF(1.0L / 1.0, long double));
static_assert(TYPE_OF(1.0L / 1.0f, long double));
static_assert(TYPE_OF(1.0L / 1.0L, long double));
static_assert(TYPE_OF(1 % 1, int));
static_assert(TYPE_OF(1 % 1L, long));
static_assert(TYPE_OF(1 % 1LL, long long));
static_assert(TYPE_OF(1 % 1U, unsigned));
static_assert(TYPE_OF(1 % 1UL, unsigned long));
static_assert(TYPE_OF(1 % 1ULL, unsigned long long));
static_assert(TYPE_OF(1L % 1, long));
static_assert(TYPE_OF(1L % 1L, long));
static_assert(TYPE_OF(1L % 1LL, long long));
static_assert(TYPE_OF(1L % 1U, unsigned long));
static_assert(TYPE_OF(1L % 1UL, unsigned long));
static_assert(TYPE_OF(1L % 1ULL, unsigned long long));
static_assert(TYPE_OF(1LL % 1, long long));
static_assert(TYPE_OF(1LL % 1L, long long));
static_assert(TYPE_OF(1LL % 1LL, long long));
static_assert(TYPE_OF(1LL % 1U, long long));
static_assert(TYPE_OF(1LL % 1UL, long long));
static_assert(TYPE_OF(1LL % 1ULL, unsigned long long));
static_assert(TYPE_OF(1U % 1, unsigned));
static_assert(TYPE_OF(1U % 1L, unsigned long));
static_assert(TYPE_OF(1U % 1LL, long long));
static_assert(TYPE_OF(1U % 1U, unsigned));
static_assert(TYPE_OF(1U % 1UL, unsigned long));
static_assert(TYPE_OF(1U % 1ULL, unsigned long long));
static_assert(TYPE_OF(1UL % 1, unsigned long));
static_assert(TYPE_OF(1UL % 1L, unsigned long));
static_assert(TYPE_OF(1UL % 1LL, long long));
static_assert(TYPE_OF(1UL % 1U, unsigned long));
static_assert(TYPE_OF(1UL % 1UL, unsigned long));
static_assert(TYPE_OF(1UL % 1ULL, unsigned long long));
static_assert(TYPE_OF(1ULL % 1, unsigned long long));
static_assert(TYPE_OF(1ULL % 1L, unsigned long long));
static_assert(TYPE_OF(1ULL % 1LL, unsigned long long));
static_assert(TYPE_OF(1ULL % 1U, unsigned long long));
static_assert(TYPE_OF(1ULL % 1UL, unsigned long long));
static_assert(TYPE_OF(1ULL % 1ULL, unsigned long long));
#endif