
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main(int argc,char *argv[])
{
int n;
cin >> n;
long max1 = 1;
long max2 = 1;
long max3 = 1;
long min1 = 1;
long min2 = 1;
long value = 1;
for (int i = 0; i < n; ++i)
{
cin >> value;
if (value > max1) {
max3 = max2;
max2 = max1;
max1 = value;
} else if (value > max2) {
max3 = max2;
max2 = value;
} else if (value > max3) {
max3 = value;
} else if (min1 > value) {
min2 = min1;
min1 = value;
} else if (min2 > value) {
min2 = value;
}
}
cout << max(max1 * max2 * max3,max1 * min1 * min2);
return 0;
}