#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
using i64 = long long;
using u64 = unsigned long long;
using i32 = int;
using u32 = unsigned int;
#define rep(i,n) for(int i=0; i<(n); i++)



int main() {
    int N; cin >> N;
    vector<i64> A(N); rep(i,N) cin >> A[i];

    if(N == 1){ cout << A[0] << endl; return 0; }
    if(N % 2 == 1){ cout << 1 << endl; return 0; }
    sort(A.begin(), A.end());
    A[0] = A[0] * A[1];
    A[1] = 0;
    sort(A.begin(), A.end());
    cout << A[1] << endl;
    return 0;
}



struct ios_do_not_sync{
    ios_do_not_sync(){
        std::ios::sync_with_stdio(false);
        std::cin.tie(nullptr);
    }
} ios_do_not_sync_instance;