#include <bits/stdc++.h>
using namespace std;
#define LL long long
#define DD double
#define mem(a, b) memset(a, b, sizeof(a))
#define fast ios_base::sync_with_stdio(0);cin.tie(0)
const int mx1 = 15;
const int mx2 = 105;
const int mx3 = 1005;
const int mx4 = 10005;
const int mx5 = 100005;
const int mx6 = 1000005;
const LL inf = 1e18;
const DD EPSILON = 1e-10;
LL _toggle(LL N, int pos) {return N = N ^ (1ll << pos);}
LL _set(LL N, int pos) {return N = N | (1ll << pos);}
LL _reset(LL N, int pos) {return N = N & ~(1ll << pos);}
LL _set_bit(LL N, int pos, bool B){if(B){N |= (1LL << pos);}else{N &= ~(1LL << pos);}return N;}
bool _get(LL N, int pos) {return (bool)(N & (1ll << pos));}
bool _upper(char a) {return a >= 'A' && a <= 'Z';}
bool _lower(char a) {return a >= 'a' && a <= 'z';}
bool _digit(char a) {return a >= '0' && a <= '9';}
DD _fmax(DD a, DD b) {if(fabs(a - b) < EPSILON) return a; return (a > b) ? a : b;}
DD _fmin(DD a, DD b) {if(fabs(a - b) < EPSILON) return a; return (a < b) ? a : b;}
bool _less(DD a, DD b) {if(fabs(a - b) < EPSILON) return false; return a < b;}
bool _eql(DD a, DD b) {if(fabs(a - b) < EPSILON) return true; return a == b;}
int dx[] = {1, -1, 0, 0, -1, -1, 1, 1};
int dy[] = {0, 0, 1, -1, -1, 1, -1, 1};
///******************************************************///
/*
g++-14 C.cpp -o C
*/
bool F(LL X, LL Y, LL x, LL y)
{
LL gcd1 = __gcd(X, Y), gcd2 = __gcd(x, y);
X /= gcd1, Y /= gcd1;
x /= gcd1, y /= gcd1;
LL lcm = Y * y / __gcd(Y, y);
X *= lcm / Y, x *= lcm / y;
return X < x;
}
void clearAll()
{
}
void solve()
{
LL n;
cin >> n;
map<LL, LL> mp;
for(LL i = 0; i < n; i++){
LL u;
cin >> u;
mp[u]++;
}
vector<LL> a;
for(auto i: mp){
if(i.second >= 4){
LL cnt = 4;
while(cnt--){
cout << i.first << ' ';
}
cout << '\n';
return;
}
if(i.second > 1){
a.push_back(i.first);
}
}
LL top = -1, bot = -1, ansId = -1;
for(LL i = 1; i < a.size(); i++){
LL curTop = 4 * (a[i] + a[i - 1]) * (a[i] + a[i - 1]);
LL curBot = a[i] * a[i - 1];
if(i == 1 || F(curTop, curBot, top, bot)){
top = curTop, bot = curBot;
ansId = i;
}
}
cout << a[ansId] << ' ' << a[ansId] << ' ' << a[ansId - 1] << ' ' << a[ansId - 1] << '\n';
}
void precalculation()
{
}
int main()
{
//freopen("input.txt", "r", stdin);
//freopen("output.txt", "w", stdout);
fast;
precalculation();
int TC = 1;
cin >> TC;
while(TC--){
solve();
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKI2RlZmluZSBMTCBsb25nIGxvbmcKI2RlZmluZSBERCBkb3VibGUKI2RlZmluZSBtZW0oYSwgYikgbWVtc2V0KGEsIGIsIHNpemVvZihhKSkKI2RlZmluZSBmYXN0IGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7Y2luLnRpZSgwKQoKY29uc3QgaW50IG14MSA9IDE1Owpjb25zdCBpbnQgbXgyID0gMTA1Owpjb25zdCBpbnQgbXgzID0gMTAwNTsKY29uc3QgaW50IG14NCA9IDEwMDA1Owpjb25zdCBpbnQgbXg1ID0gMTAwMDA1Owpjb25zdCBpbnQgbXg2ID0gMTAwMDAwNTsKY29uc3QgTEwgaW5mID0gMWUxODsKY29uc3QgREQgRVBTSUxPTiA9IDFlLTEwOwoKTEwgX3RvZ2dsZShMTCBOLCBpbnQgcG9zKSB7cmV0dXJuIE4gPSBOIF4gKDFsbCA8PCBwb3MpO30KTEwgX3NldChMTCBOLCBpbnQgcG9zKSB7cmV0dXJuIE4gPSBOIHwgKDFsbCA8PCBwb3MpO30KTEwgX3Jlc2V0KExMIE4sIGludCBwb3MpIHtyZXR1cm4gTiA9IE4gJiB+KDFsbCA8PCBwb3MpO30KTEwgX3NldF9iaXQoTEwgTiwgaW50IHBvcywgYm9vbCBCKXtpZihCKXtOIHw9ICgxTEwgPDwgcG9zKTt9ZWxzZXtOICY9IH4oMUxMIDw8IHBvcyk7fXJldHVybiBOO30KYm9vbCBfZ2V0KExMIE4sIGludCBwb3MpIHtyZXR1cm4gKGJvb2wpKE4gJiAoMWxsIDw8IHBvcykpO30KYm9vbCBfdXBwZXIoY2hhciBhKSB7cmV0dXJuIGEgPj0gJ0EnICYmIGEgPD0gJ1onO30KYm9vbCBfbG93ZXIoY2hhciBhKSB7cmV0dXJuIGEgPj0gJ2EnICYmIGEgPD0gJ3onO30KYm9vbCBfZGlnaXQoY2hhciBhKSB7cmV0dXJuIGEgPj0gJzAnICYmIGEgPD0gJzknO30KREQgX2ZtYXgoREQgYSwgREQgYikge2lmKGZhYnMoYSAtIGIpIDwgRVBTSUxPTikgcmV0dXJuIGE7IHJldHVybiAoYSA+IGIpID8gYSA6IGI7fQpERCBfZm1pbihERCBhLCBERCBiKSB7aWYoZmFicyhhIC0gYikgPCBFUFNJTE9OKSByZXR1cm4gYTsgcmV0dXJuIChhIDwgYikgPyBhIDogYjt9CmJvb2wgX2xlc3MoREQgYSwgREQgYikge2lmKGZhYnMoYSAtIGIpIDwgRVBTSUxPTikgcmV0dXJuIGZhbHNlOyByZXR1cm4gYSA8IGI7fQpib29sIF9lcWwoREQgYSwgREQgYikge2lmKGZhYnMoYSAtIGIpIDwgRVBTSUxPTikgcmV0dXJuIHRydWU7IHJldHVybiBhID09IGI7fQoKaW50IGR4W10gPSB7MSwgLTEsIDAsIDAsIC0xLCAtMSwgMSwgMX07CmludCBkeVtdID0gezAsIDAsIDEsIC0xLCAtMSwgMSwgLTEsIDF9OwoKLy8vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqLy8vCi8qCmcrKy0xNCBDLmNwcCAtbyBDCiovCgpib29sIEYoTEwgWCwgTEwgWSwgTEwgeCwgTEwgeSkKewogICAgTEwgZ2NkMSA9IF9fZ2NkKFgsIFkpLCBnY2QyID0gX19nY2QoeCwgeSk7CiAgICBYIC89IGdjZDEsIFkgLz0gZ2NkMTsKICAgIHggLz0gZ2NkMSwgeSAvPSBnY2QxOwogICAgTEwgbGNtID0gWSAqIHkgLyBfX2djZChZLCB5KTsKICAgIFggKj0gbGNtIC8gWSwgeCAqPSBsY20gLyB5OwogICAgcmV0dXJuIFggPCB4Owp9Cgp2b2lkIGNsZWFyQWxsKCkKewogICAgCn0KCnZvaWQgc29sdmUoKQp7CiAgICBMTCBuOwogICAgY2luID4+IG47CiAgICBtYXA8TEwsIExMPiBtcDsKICAgIGZvcihMTCBpID0gMDsgaSA8IG47IGkrKyl7CiAgICAgICAgTEwgdTsKICAgICAgICBjaW4gPj4gdTsKICAgICAgICBtcFt1XSsrOwogICAgfQogICAgdmVjdG9yPExMPiBhOwogICAgZm9yKGF1dG8gaTogbXApewogICAgICAgIGlmKGkuc2Vjb25kID49IDQpewogICAgICAgICAgICBMTCBjbnQgPSA0OwogICAgICAgICAgICB3aGlsZShjbnQtLSl7CiAgICAgICAgICAgICAgICBjb3V0IDw8IGkuZmlyc3QgPDwgJyAnOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNvdXQgPDwgJ1xuJzsKICAgICAgICAgICAgcmV0dXJuOwogICAgICAgIH0KICAgICAgICBpZihpLnNlY29uZCA+IDEpewogICAgICAgICAgICBhLnB1c2hfYmFjayhpLmZpcnN0KTsKICAgICAgICB9CiAgICB9CiAgICBMTCB0b3AgPSAtMSwgYm90ID0gLTEsIGFuc0lkID0gLTE7CiAgICBmb3IoTEwgaSA9IDE7IGkgPCBhLnNpemUoKTsgaSsrKXsKICAgICAgICBMTCBjdXJUb3AgPSA0ICogKGFbaV0gKyBhW2kgLSAxXSkgKiAoYVtpXSArIGFbaSAtIDFdKTsKICAgICAgICBMTCBjdXJCb3QgPSBhW2ldICogYVtpIC0gMV07CiAgICAgICAgaWYoaSA9PSAxIHx8IEYoY3VyVG9wLCBjdXJCb3QsIHRvcCwgYm90KSl7CiAgICAgICAgICAgIHRvcCA9IGN1clRvcCwgYm90ID0gY3VyQm90OwogICAgICAgICAgICBhbnNJZCA9IGk7CiAgICAgICAgfQogICAgfQogICAgY291dCA8PCBhW2Fuc0lkXSA8PCAnICcgPDwgYVthbnNJZF0gPDwgJyAnIDw8IGFbYW5zSWQgLSAxXSA8PCAnICcgPDwgYVthbnNJZCAtIDFdIDw8ICdcbic7Cn0KCnZvaWQgcHJlY2FsY3VsYXRpb24oKQp7Cgp9CgppbnQgbWFpbigpCnsKICAgIC8vZnJlb3BlbigiaW5wdXQudHh0IiwgInIiLCBzdGRpbik7CiAgICAvL2ZyZW9wZW4oIm91dHB1dC50eHQiLCAidyIsIHN0ZG91dCk7CiAgICBmYXN0OwogICAgcHJlY2FsY3VsYXRpb24oKTsKICAgIGludCBUQyA9IDE7CiAgICBjaW4gPj4gVEM7CiAgICB3aGlsZShUQy0tKXsKICAgICAgICBzb2x2ZSgpOwogICAgfQp9Cgo=