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);

    }
}