#include <iostream>
using namespace std;
void sort(int a[],int l,int r)
{
int i = l,j = r,x = a[(l+r)/2];
do{
while (a[i] < x) i++;
while (a[j] > x) j--;
if (i<=j)
{
int t=a[i];a[i]=a[j];a[j]=t;
i++;j--;
}
}while(!(i>j));
if (l < j) sort(a,l,j);
if (i < r) sort(a,i,r);
}
long long max(long long a,long long b){
if (a>b) return a;return b;
}
int main()
{
int n;cin >> n;
int a[n];
for (int i = 0;i < n;i++)
cin >> a[i];
sort(a,0,--n);
long long ma = max(a[0]*a[1]*a[n], a[n-2]*a[n-1]*a[n]);
cout << ma;
}