// Arithmetic type traits sanity
#include <type_traits>
#include <limits>
int main() {
    static_assert(std::is_integral_v<int> && std::is_arithmetic_v<double>);
    static_assert(std::numeric_limits<int>::is_integer);
    static_assert(std::is_signed_v<signed char> && !std::is_signed_v<unsigned char>);
    return 0;
}
