#include using namespace std; using LL=long long; const int MAXN = 1e6 + 10; vector primes = {2, 3}; void init() { for (int k = primes.back(); k <= MAXN; k += 2) { bool flag = true; for (auto p:primes) { if (p * p > k)break; if (k % p == 0) { flag = false; break; } } if (flag)primes.push_back(k); } } int main() { init(); for (int n; cin >> n;) { int p = n >> 1; if ((p & 1) == 0)--p; for (; p >= 3; p -= 2) { if (binary_search(primes.begin(), primes.end(), p) and binary_search(primes.begin(), primes.end(), n - p)) { cout << p << " " << n - p << endl; break; } } } return 0; }