#include <bits/stdc++.h>
using namespace std;
const int mod = 1000000007;
const string YESNO[2] = {"NO", "YES"};
const string YesNo[2] = {"No", "Yes"};
const string yesno[2] = {"no", "yes"};
void YES(bool t = 1) { cout << YESNO[t] << endl; }
void Yes(bool t = 1) { cout << YesNo[t] << endl; }
void yes(bool t = 1) { cout << yesno[t] << endl; }
inline bool isPowerOfTwo(int x) { return x && (!(x & (x - 1))); }
unsigned long long mpow(int b, int e, int mod = 0) {
  unsigned long long result = 1, base = b, exp = e;
  if (mod) base %= mod;
  while (exp > 0) {
    if (exp & 1) {
      result = ((unsigned long long)result * base);
      if (mod) result %= mod;
    }
    base = ((unsigned long long)base * base);
    if (mod) base %= mod;
    exp >>= 1;
  }
  return result;
}
int64_t bpow(int base, int exp) {
  int64_t ans = 1;
  for (int64_t i = 0; i < exp; i++) ans *= base;
  return ans;
}
bool isPerfectSquare(long double x) {
  long double sr = sqrt(x);
  return ((sr - floor(sr)) == 0);
}
bool isIn(string &s1, string &s2) {
  if (s1.find(s2) != string::npos) return true;
  return false;
}
bool isSorted(vector<int> &arr) {
  for (int i = 0; i < arr.size() - 1; i++)
    if (arr[i] > arr[i + 1]) return false;
  return true;
}
bool comp(int a, int b) { return abs(a) > abs(b); }
int TEST_CASES = 1;
void submain() {
  int n;
  cin >> n;
  vector<long long> a(n);
  long long mx = INT_MIN;
  for (int i = 0; i < n; i++) {
    cin >> a[i];
    mx = max(mx, a[i]);
  }
  sort(a.begin(), a.end(), comp);
  if (mx < 0) {
    long long xx = a[n - 1] * a[n - 2] * a[n - 3] * a[n - 4] * a[n - 5];
    cout << xx << '\n';
    return;
  }
  long long ans = a[0] * a[1] * a[2] * a[3] * a[4];
  for (int i = 5; i < n; i++) {
    for (int j = 0; j < 5; j++) {
      long long tmp = a[i];
      for (int k = 0; k < 5; k++) {
        if (k != j) tmp *= a[k];
      }
      ans = max(ans, tmp);
    }
  }
  cout << ans << '\n';
}
int main() {
  { ios_base::sync_with_stdio(false); }
  {
    cin.tie(NULL);
    cout.tie(NULL);
  }
  if (TEST_CASES) {
    int t;
    cin >> t;
    while (t--) {
      submain();
    }
  } else {
    submain();
  }
  return 0;
}
