#include <algorithm> #include <bitset> #include <cassert> #include <cctype> #include <cerrno> #include <cfloat> #include <ciso646> #include <climits> #include <clocale> #include <cmath> #include <complex> #include <csetjmp> #include <csignal> #include <cstdarg> #include <cstddef> #include <cstdio> #include <cstdlib> #include <cstring> #include <ctime> #include <cwchar> #include <cwctype> #include <deque> #include <exception> #include <fstream> #include <functional> #include <iomanip> #include <ios> #include <iosfwd> #include <iostream> #include <istream> #include <iterator> #include <limits> #include <list> #include <locale> #include <map> #include <memory> #include <new> #include <numeric> #include <ostream> #include <queue> #include <set> #include <sstream> #include <stack> #include <stdexcept> #include <streambuf> #include <string> #if __has_include(<strstream>) #include <strstream> #endif #include <typeinfo> #include <utility> #include <valarray> #include <vector> #if __cplusplus >= 201103 || defined(__GXX_EXPERIMENTAL_CXX0X__) #include <array> #if __has_include(<atomic>) #include <atomic> #endif #include <chrono> #if __has_include(<codecvt>) #include <codecvt> #endif #include <condition_variable> #include <forward_list> #if __has_include(<future>) #include <future> #endif #include <initializer_list> #include <mutex> #include <random> #include <ratio> #include <regex> #if __has_include(<scoped_allocator>) #include <scoped_allocator> #endif #include <system_error> #include <thread> #include <tuple> #include <type_traits> #if __has_include(<typeindex>) #include <typeindex> #endif #include <unordered_map> #include <unordered_set> #endif