// C++98 (first official C++ standard) #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #if (__cplusplus >= 201103L) // C++11 #include #include #include #include #include #include // deprecated in C++17, removed in C++26 #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #endif // C++11 #if (__cplusplus >= 201402L) // C++14 #include #endif // C++14 #if (__cplusplus >= 201703L) // C++17 #include #include #include #include #include #include #include #include #endif // C++17 #if (__cplusplus >= 202002L) // C++20 #include #include #include #include #include #include #include #include #include #include #include #include //#include not yet supported by clang 16 //#include not yet supported by clang 17 #include #endif // C++20 #if (__cplusplus >= 202302L) // C++23 #include #include #include #include #include #include #include #include #include #endif // C++23 #if (__cplusplus > 202302L) // C++26 #include #include #include #include #include #include #endif // C++26