#include <bits/stdc++.h>
#define ll long long
#define ld long double
#define st first
#define nd second
#define pb push_back
#define fin(a, n) for(int i = a; i < n; i++)
#define fjn(a, n) for(int j = a; j < n; j++)
#define all(a) a.begin(),a.end()
#define allr(a) a.rbegin(),a.rend()
#define FAST ios_base::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr)
using namespace std;
const int N = 100;
const int MOD = 1000000007;
string di[] = {"D","L", "U", "R", "UL", "UR", "DL", "DR"};
int dx[] = {1, 0, -1, 0, -1, -1, 1, 1};
int dy[] = {0, -1, 0, 1, -1, 1, -1, 1};
vector<int> primes;
vector<bool> is_prime(105, true);
void sieve(ll n) {
is_prime[0] = is_prime[1] = false;
for(ll i = 2; i < n; i++) {
if(is_prime[i]) {
primes.pb(i);
for(ll j = i*i; j < n; j += i) {
is_prime[j] = false;
}
}
}
}
void solve() {
int n; cin >> n;
vector<ll> v(n);
fin(0, n) cin >> v[i];
sort(all(v));
for (auto x : primes) {
for (auto i : v) {
if (i % x != 0) {
return void(cout << x << '\n');
}
}
}
cout << "-1\n";
}
int main() {
FAST;
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
#endif
int tt = 1; cin >> tt;
while (tt--) {
sieve(100);
//cout << "Case #" << c++ << ": ";
solve();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CgojZGVmaW5lIGxsIGxvbmcgbG9uZwojZGVmaW5lIGxkIGxvbmcgZG91YmxlCiNkZWZpbmUgc3QgZmlyc3QKI2RlZmluZSBuZCBzZWNvbmQKI2RlZmluZSBwYiBwdXNoX2JhY2sKI2RlZmluZSBmaW4oYSwgbikgZm9yKGludCBpID0gYTsgaSA8IG47IGkrKykKI2RlZmluZSBmam4oYSwgbikgZm9yKGludCBqID0gYTsgaiA8IG47IGorKykKI2RlZmluZSBhbGwoYSkgYS5iZWdpbigpLGEuZW5kKCkKI2RlZmluZSBhbGxyKGEpIGEucmJlZ2luKCksYS5yZW5kKCkKI2RlZmluZSBGQVNUIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpLCBjaW4udGllKG51bGxwdHIpLCBjb3V0LnRpZShudWxscHRyKQoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmNvbnN0IGludCBOID0gMTAwOwpjb25zdCBpbnQgTU9EID0gMTAwMDAwMDAwNzsKCnN0cmluZyBkaVtdID0geyJEIiwiTCIsICJVIiwgIlIiLCAiVUwiLCAiVVIiLCAiREwiLCAiRFIifTsKaW50IGR4W10gPSB7MSwgMCwgLTEsIDAsIC0xLCAtMSwgMSwgMX07CmludCBkeVtdID0gezAsIC0xLCAwLCAxLCAtMSwgMSwgLTEsIDF9OwoKdmVjdG9yPGludD4gcHJpbWVzOwp2ZWN0b3I8Ym9vbD4gaXNfcHJpbWUoMTA1LCB0cnVlKTsKdm9pZCBzaWV2ZShsbCBuKSB7CiAgICBpc19wcmltZVswXSA9IGlzX3ByaW1lWzFdID0gZmFsc2U7CiAgICBmb3IobGwgaSA9IDI7IGkgPCBuOyBpKyspIHsKICAgICAgICBpZihpc19wcmltZVtpXSkgewogICAgICAgICAgICBwcmltZXMucGIoaSk7CiAgICAgICAgICAgIGZvcihsbCBqID0gaSppOyBqIDwgbjsgaiArPSBpKSB7CiAgICAgICAgICAgICAgICBpc19wcmltZVtqXSA9IGZhbHNlOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQp9Cgp2b2lkIHNvbHZlKCkgewogICAgaW50IG47IGNpbiA+PiBuOwogICAgdmVjdG9yPGxsPiB2KG4pOwogICAgZmluKDAsIG4pIGNpbiA+PiB2W2ldOwogICAgc29ydChhbGwodikpOwogICAgZm9yIChhdXRvIHggOiBwcmltZXMpIHsKICAgICAgICBmb3IgKGF1dG8gaSA6IHYpIHsKICAgICAgICAgICAgaWYgKGkgJSB4ICE9IDApIHsKICAgICAgICAgICAgICAgIHJldHVybiB2b2lkKGNvdXQgPDwgeCA8PCAnXG4nKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIGNvdXQgPDwgIi0xXG4iOwp9CgppbnQgbWFpbigpIHsKICAgIEZBU1Q7CiNpZm5kZWYgT05MSU5FX0pVREdFCiAgICBmcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKICAgIGZyZW9wZW4oIm91dHB1dC50eHQiLCAidyIsIHN0ZG91dCk7CiNlbmRpZgogICAgaW50IHR0ID0gMTsgY2luID4+IHR0OwogICAgd2hpbGUgKHR0LS0pIHsKICAgICAgICBzaWV2ZSgxMDApOwogICAgICAgIC8vY291dCA8PCAiQ2FzZSAjIiA8PCBjKysgPDwgIjogIjsKICAgICAgICBzb2x2ZSgpOwogICAgfQogICAgcmV0dXJuIDA7Cn0=