#include <bits/stdc++.h>
using namespace std;

int main() {
    int n;
    cin >> n;
    long long x;
    cin >> x;                          // 用第一个数初始化
    long long curMax = x, curMin = x, ans = x;

    for (int i = 1; i < n; ++i) {
        cin >> x;
        if (x < 0) swap(curMax, curMin);           // 负数会互换最大/最小的角色
        curMax = max(x, curMax * x);
        curMin = min(x, curMin * x);
        ans = max(ans, curMax);
    }
    cout << ans << '\n';
    return 0;
}