import java.util.Scanner;
public class Main {
public static void main(String[] args) {
//DP6是进行比较:dp[i]=max{dp[i-1]+dp[i],dp[i]}
Scanner scanner=new Scanner(System.in);
//输入长度
int n=scanner.nextInt();
//输入数组
long[] arr=new long[n];
for(int i=0;i<n;i++){
arr[i]=scanner.nextLong();
}
//定义dp数组
long dp[]=new long[n];
dp[0]=arr[0];
for(int i=1;i<dp.length;i++){
dp[i]=Math.max(dp[i-1]+arr[i],arr[i]);
}
long res=Long.MIN_VALUE;
for(int i=0;i<dp.length;i++){
if(dp[i]>res){
res=dp[i];
}
}
System.out.println(res);
}
}