//确定五个数
//1.当题目中全是正数或者全是负数的时候,三个最大的相乘(max1,max2,max3)。
//2.部分正数或者部分负数的时候,正数最大数*两个负数最小数(max1*min1*min2),两个正数最大数*一个负数最大数(包含在1中)
#include<iostream>
#include<climits>
using namespace std;
int main(){
int n,i;
long long max1=INT_MIN,max2=INT_MIN,max3=INT_MIN;
long long min1=INT_MAX,min2=INT_MAX;
cin>>n;
while(n--){
cin>>i;
if(i>max1){
max3=max2;
max2=max1;
max1=i;
}else if(i>max2){
max3=max2;
max2=i;
}else if(i>max3){
max3=i;
}
if(i<min1){
min2=min1;
min1=i;
}else if(i<min2){
min2=i;
}
}
cout<<max(max1*max2*max3,max1*min1*min2)<<endl;
}