N = int(input()) A = list(map(int, input().split())) INF = int(3e9) def solve(a): dpl = [-INF] * (N+1) dpr = [-INF] * (N+1) for i in range(1, N+1): dpl[i] = max(dpl[i-1]+a[i-1], a[i-1]) for i in range(N-1, -1, -1): dpr[i] = max(dpr[i+1]+a[i], a[i]) maxl = [-INF] * (N+1) maxr = [-INF] * (N+1) for i in range(1, N+1): maxl[i] = max(maxl[i-1], dpl[i]) for i in range(N-1, -1, -1): maxr[i] = max(maxr[i+1], dpr[i]) return max(maxl[i+1] * maxr[i+1] for i in range(N)) print(max(solve(A), solve([-x for x in A])))