#include <iostream>
#include <vector>
#include <numeric>
#include <unordered_map>
#include <iomanip>
#include <cmath>
#include <set>
using namespace std;
int gcd(int a, int b) {
return b == 0 ? a : gcd(b, a % b);
}
long long int mod = 998244353;
long long int poww(long long int a, int x) {
if (x == 1) {
return a;
} else if (x == 0) {
return 1;
}
long long int temp = poww(a, x / 2);
long long int val = (temp * temp) % mod;
if (x % 2) {
return (val * a) % mod;
}
return val;
}
int main() {
int test_cases = 1;
cin >> test_cases;
// vector<vector<int> > mp(5010, vector<int>(5010, 0));
// for (int i = 0; i < 5010; i++) {
// for (int j = 0; j < 5010; j++) {
// mp[i][j] = gcd(i, j);
// }
// }
while(test_cases--) {
int n;
cin >> n;
vector<int> a(n);
for (int i = 0; i < n; i++) {
cin >> a[i];
}
int x = 1, flag = 0;;
for (int i = 0; i < n - 1; i++) {
if (a[i + 1] % (a[i])) {
a[i] /= x;
if (a[i + 1] % (a[i])) {
int lc = gcd(a[i], a[i + 1]);
x *= a[i] / lc;
}
}
cout << x << " " <<i << endl;
}
cout << x << endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8bnVtZXJpYz4KI2luY2x1ZGUgPHVub3JkZXJlZF9tYXA+CiNpbmNsdWRlIDxpb21hbmlwPgojaW5jbHVkZSA8Y21hdGg+CiNpbmNsdWRlIDxzZXQ+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgZ2NkKGludCBhLCBpbnQgYikgewogICAgcmV0dXJuIGIgPT0gMCA/IGEgOiBnY2QoYiwgYSAlIGIpOwp9CmxvbmcgbG9uZyBpbnQgbW9kID0gOTk4MjQ0MzUzOwoKbG9uZyBsb25nIGludCBwb3d3KGxvbmcgbG9uZyBpbnQgYSwgaW50IHgpIHsKICAgIGlmICh4ID09IDEpIHsKICAgICAgICByZXR1cm4gYTsKICAgIH0gZWxzZSBpZiAoeCA9PSAwKSB7CiAgICAgICAgcmV0dXJuIDE7CiAgICB9CgogICAgbG9uZyBsb25nIGludCB0ZW1wID0gcG93dyhhLCB4IC8gMik7CiAgICBsb25nIGxvbmcgaW50IHZhbCA9ICh0ZW1wICogdGVtcCkgJSBtb2Q7CgogICAgaWYgKHggJSAyKSB7CiAgICAgICAgcmV0dXJuICh2YWwgKiBhKSAlIG1vZDsKICAgIH0gCiAgICByZXR1cm4gdmFsOwp9CgoKaW50IG1haW4oKSB7CiAgICBpbnQgdGVzdF9jYXNlcyA9IDE7CiAgICBjaW4gPj4gdGVzdF9jYXNlczsKCiAgICAvLyB2ZWN0b3I8dmVjdG9yPGludD4gPiBtcCg1MDEwLCB2ZWN0b3I8aW50Pig1MDEwLCAwKSk7CgogICAgLy8gZm9yIChpbnQgaSA9IDA7IGkgPCA1MDEwOyBpKyspIHsKICAgIC8vICAgICBmb3IgKGludCBqID0gMDsgaiA8IDUwMTA7IGorKykgewogICAgLy8gICAgICAgICBtcFtpXVtqXSA9IGdjZChpLCBqKTsKICAgIC8vICAgICB9CiAgICAvLyB9CgogICAgd2hpbGUodGVzdF9jYXNlcy0tKSB7CgogICAgICAgIGludCBuOwogICAgICAgIGNpbiA+PiBuOwoKICAgICAgICB2ZWN0b3I8aW50PiBhKG4pOwoKICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKykgewogICAgICAgICAgICBjaW4gPj4gYVtpXTsKICAgICAgICB9CiAgICAgICAgaW50IHggPSAxLCBmbGFnID0gMDs7CiAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuIC0gMTsgaSsrKSB7CiAgICAgICAgICAgIGlmIChhW2kgKyAxXSAlIChhW2ldKSkgewogICAgICAgICAgICAgICAgYVtpXSAvPSB4OwogICAgICAgICAgICAgICAgaWYgKGFbaSArIDFdICUgKGFbaV0pKSB7CiAgICAgICAgICAgICAgICAgICAgaW50IGxjID0gZ2NkKGFbaV0sIGFbaSArIDFdKTsKICAgICAgICAgICAgICAgICAgICB4ICo9IGFbaV0gLyBsYzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBjb3V0IDw8IHggPDwgIiAiIDw8aSA8PCBlbmRsOwogICAgICAgIH0KCiAgICAgICAgY291dCA8PCB4IDw8IGVuZGw7CgogICAgfQoKICAgIHJldHVybiAwOwp9Cg==