#include #include using namespace std; using namespace atcoder; #define ll long long #define rep(i,a,b) for(int i=(a);i<(b);i++) #define repl(i,a,b) for(ll i=(a);i<(b);i++) #define all(a) (a).begin(),(a).end() template bool chmin(T &a,T b){if(a>b){a=b;return true;} return false;} template bool chmax(T &a,T b){if(a> T; while(T--){ int n; cin >> n; vector a(n); bool plus=false,minus=false,ex0=false; rep(i,0,n){ cin >> a[i]; if(a[i]>0) plus=true; if(a[i]<0) minus=true; if(a[i] == 0) ex0=true; } if(plus && minus){ ll x=1e18,y=-1e18; rep(i,0,n){ if(a[i]>0) chmin(x,a[i]); else if(a[i]<0) chmax(y,a[i]); } if(ex0) cout << "0\n"; else cout << x*y << '\n'; } else if(plus){ sort(all(a)); cout << a[0]*a[1] << '\n'; } else{ sort(a.rbegin(),a.rend()); cout << a[0]*a[1] << '\n'; } } }