//确定五个数
//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;
}