#!/bin/python3 from sys import maxsize def largestValue(A): max_so_far = -maxsize - 1 max_ending_here = 0 start = 0 end = 0 s = 0 size = len(A) for i in range(0,size): max_ending_here += A[i] if max_so_far < max_ending_here: max_so_far = max_ending_here start = s end = i if max_ending_here < 0: max_ending_here = 0 s = i+1 z = A[start:end+1] x = [] c = 0 y = 0 n = sum(z) # Return the largest value of any of A's nonempty subarrays. for i in range(0,len(z)-1): c = c + z[i] b = n - c x.append(b) for j in range(0,len(z)-1): y = y + z[j]*x[j] return(y) if __name__ == "__main__": n = int(input().strip()) A = list(map(int, input().strip().split(' '))) result = largestValue(A) print(result)