#include <bits/stdc++.h>
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
int n;
cin >> n;
vector<int> a(n), d1(n, -1), d2(n, -1);
for (int i = 0; i < n; ++i) cin >> a[i];
for (int i = 0; i < n; ++i) {
int x = a[i];
vector<int> divisors;
for (int d = 2; d * d <= x; ++d) {
if (x % d == 0) {
divisors.push_back(d);
if (d != x / d) divisors.push_back(x / d);
}
}
int found = 0;
for (int j = 0; j < (int)divisors.size(); ++j) {
for (int k = j + 1; k < (int)divisors.size(); ++k) {
int p = divisors[j], q = divisors[k];
if (__gcd(p + q, x) == 1) {
d1[i] = p;
d2[i] = q;
found = 1;
break;
}
}
if (found) break;
}
}
for (int x : d1) cout << x << ' ';
cout << '\n';
for (int x : d2) cout << x << ' ';
cout << '\n';
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKICAgIGlvczo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUoMCk7CgogICAgaW50IG47CiAgICBjaW4gPj4gbjsKICAgIHZlY3RvcjxpbnQ+IGEobiksIGQxKG4sIC0xKSwgZDIobiwgLTEpOwoKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgKytpKSBjaW4gPj4gYVtpXTsKCiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47ICsraSkgewogICAgICAgIGludCB4ID0gYVtpXTsKICAgICAgICB2ZWN0b3I8aW50PiBkaXZpc29yczsKCiAgICAgICAgZm9yIChpbnQgZCA9IDI7IGQgKiBkIDw9IHg7ICsrZCkgewogICAgICAgICAgICBpZiAoeCAlIGQgPT0gMCkgewogICAgICAgICAgICAgICAgZGl2aXNvcnMucHVzaF9iYWNrKGQpOwogICAgICAgICAgICAgICAgaWYgKGQgIT0geCAvIGQpIGRpdmlzb3JzLnB1c2hfYmFjayh4IC8gZCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGludCBmb3VuZCA9IDA7CiAgICAgICAgZm9yIChpbnQgaiA9IDA7IGogPCAoaW50KWRpdmlzb3JzLnNpemUoKTsgKytqKSB7CiAgICAgICAgICAgIGZvciAoaW50IGsgPSBqICsgMTsgayA8IChpbnQpZGl2aXNvcnMuc2l6ZSgpOyArK2spIHsKICAgICAgICAgICAgICAgIGludCBwID0gZGl2aXNvcnNbal0sIHEgPSBkaXZpc29yc1trXTsKICAgICAgICAgICAgICAgIGlmIChfX2djZChwICsgcSwgeCkgPT0gMSkgewogICAgICAgICAgICAgICAgICAgIGQxW2ldID0gcDsKICAgICAgICAgICAgICAgICAgICBkMltpXSA9IHE7CiAgICAgICAgICAgICAgICAgICAgZm91bmQgPSAxOwogICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmIChmb3VuZCkgYnJlYWs7CiAgICAgICAgfQogICAgfQoKICAgIGZvciAoaW50IHggOiBkMSkgY291dCA8PCB4IDw8ICcgJzsKICAgIGNvdXQgPDwgJ1xuJzsKICAgIGZvciAoaW50IHggOiBkMikgY291dCA8PCB4IDw8ICcgJzsKICAgIGNvdXQgPDwgJ1xuJzsKCiAgICByZXR1cm4gMDsKfQo=