#include<iostream>
#include<vector>
#include<cmath>
using namespace std;
long long arr[1000001];
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
vector<long long>v;
for (long long i = 2; i <= 1000001; i++) {
if (arr[i] == 0) {
for (long long j = 2; j <= 1000001 / i; j++) {
arr[i * j] = 1;
}
}
}
long long n;
cin >> n;
bool check = false;
for (long long i = 4; i <= sqrt(n); i++) {
if (arr[i] == 1 && n % i == 0) {
long long t = n / i;
for (long long j = 2; j <= sqrt(t); j++) {
if (t % j == 0) {
v.push_back(i);
v.push_back(t);
check = true;
break;
}
}
}
if (check) {
break;
}
}
if (!v.empty()) {
cout << v[0] << " " << v[1] << "\n";
}
else {
cout << -1 << "\n";
}
}
I2luY2x1ZGU8aW9zdHJlYW0+CiNpbmNsdWRlPHZlY3Rvcj4KI2luY2x1ZGU8Y21hdGg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmxvbmcgbG9uZyBhcnJbMTAwMDAwMV07CmludCBtYWluKCkgewoJaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CgljaW4udGllKDApOyBjb3V0LnRpZSgwKTsKCXZlY3Rvcjxsb25nIGxvbmc+djsKCWZvciAobG9uZyBsb25nIGkgPSAyOyBpIDw9IDEwMDAwMDE7IGkrKykgewoJCWlmIChhcnJbaV0gPT0gMCkgewoJCQlmb3IgKGxvbmcgbG9uZyBqID0gMjsgaiA8PSAxMDAwMDAxIC8gaTsgaisrKSB7CgkJCQlhcnJbaSAqIGpdID0gMTsKCQkJfQoJCX0KCX0KCWxvbmcgbG9uZyBuOwoJY2luID4+IG47Cglib29sIGNoZWNrID0gZmFsc2U7Cglmb3IgKGxvbmcgbG9uZyBpID0gNDsgaSA8PSBzcXJ0KG4pOyBpKyspIHsKCQlpZiAoYXJyW2ldID09IDEgJiYgbiAlIGkgPT0gMCkgewoJCQlsb25nIGxvbmcgdCA9IG4gLyBpOwoJCQlmb3IgKGxvbmcgbG9uZyBqID0gMjsgaiA8PSBzcXJ0KHQpOyBqKyspIHsKCQkJCWlmICh0ICUgaiA9PSAwKSB7CgkJCQkJdi5wdXNoX2JhY2soaSk7CgkJCQkJdi5wdXNoX2JhY2sodCk7CgkJCQkJY2hlY2sgPSB0cnVlOwoJCQkJCWJyZWFrOwoJCQkJfQoJCQl9CgkJfQoJCWlmIChjaGVjaykgewoJCQlicmVhazsKCQl9Cgl9CglpZiAoIXYuZW1wdHkoKSkgewoJCWNvdXQgPDwgdlswXSA8PCAiICIgPDwgdlsxXSA8PCAiXG4iOwoJfQoJZWxzZSB7CgkJY291dCA8PCAtMSA8PCAiXG4iOwoJfQp9Cg==