#include #include #include #include #include #include // // Created by imper on 6/12/21. // #ifndef LOG_CONSOLE #define LOG_CONSOLE struct check_for_unary_minus { template ())> static constexpr std::true_type perform(U&& u) { return { }; } static constexpr std::false_type perform(...) { return { }; } }; struct check_for_less { template () < std::declval())> static constexpr std::true_type perform(U&& u) { return { }; } static constexpr std::false_type perform(...) { return { }; } }; template concept character = std::is_same_v || std::is_same_v; template concept arithmetic = std::is_arithmetic_v; template