#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 using namespace std; using ll = long long; using ld = long double; using vi = vector; using vl = vector; using vvi = vector>; using vvl = vector>; struct Edge { int to; ll weight; }; struct Graph { int n; vector> adj; }; void add_edge(Graph &g, int from, int to, ll weight) { g.adj[from].push_back(Edge{to, weight}); } #define overload4(_1, _2, _3, _4, name, ...) name #define rep1(n) for (int i = 0; i < n; ++i) // i: [0, n) #define rep2(i, n) for (int i = 0; i < n; ++i) // i: [0, n) #define rep3(i, a, b) for (int i = a; i < b; ++i) // i: [a, b) #define rep4(i, a, b, c) for (int i = a; i < b; i += c) // i: [a, b) step c #define rep(...) overload4(__VA_ARGS__, rep4, rep3, rep2, rep1)(__VA_ARGS__) #define all(v) (v).begin(), (v).end() const ll MOD = 998244353; const ll MOD17 = 1000000007; const ld PI = M_PI; const ll INF = 1LL << 60; const vector abc = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'}; int main() { std::cin.tie(0)->sync_with_stdio(0); ll p; cin >> p; cout << 1 << " " << p << endl; }