#include #if __has_include() #include using namespace atcoder; #endif using namespace std; #define rep(i, n) for (int i = 0, i##_len = (n); i < i##_len; ++i) #define reps(i, n) for (int i = 1, i##_len = (n); i <= i##_len; ++i) #define all(x) (x).begin(), (x).end() #define rall(x) (x).rbegin(), (x).rend() #define sz(x) ((int)(x).size()) #define pl(s) cout << (s) << "\n"; #define plx(s) {cout << (s) << "\n"; exit(0);} #define yes(s) cout << ((s)?"Yes":"No") << "\n"; #define bit(n) (1LL << ((int)(n))) #define cdiv(x,y) (((x)+(y)-1)/(y)) #define uniq(x) ((x).erase(unique(all((x))), (x).end())) #ifdef __LOCAL #include #define dump(...) DUMPOUT << " " << string(#__VA_ARGS__) << ": " << "[" << to_string(__LINE__) << ":" << __FUNCTION__ << "]" << endl << " ", dump_func(__VA_ARGS__) #else #define dump(...) #endif template inline bool chmax(T& a, T b) { if (a < b) { a = b; return 1; } return 0; } template inline bool chmin(T& a, T b) { if (a > b) { a = b; return 1; } return 0; } template istream &operator>>(istream &is, vector &v) { for (auto &e : v) is >> e; return is; } template istream &operator>>(istream &is, array &v) { for (auto &e : v) is >> e; return is; } template string join(const vector& v, string sep = " ") { stringstream ss; for (auto &e : v) ss << sep << e; return ss.str().substr(1); } template string join(const array &v, string sep = " ") { stringstream ss; for (auto &e : v) ss << sep << e; return ss.str().substr(1); } struct StartUp { StartUp() { cin.tie(nullptr); ios::sync_with_stdio(false); dump("READY"); } } START_UP; using ll = long long; using ld = long double; template using V = vector; constexpr int INF = (1 << 30) - 1; constexpr ll INFL = 1LL << 60; signed main(void) { pl("-") return 0; }