#include <cstdio>
#include <algorithm>
#include <cstring>
#include <iostream>
using namespace std;
long long arr[1000006];
///如果一个负数的绝对大于它前面的加和,那就将他们舍掉
int main()
{
long long n;
scanf("%lld",&n);
long long i, sum = 0;
long long maxx = -99999999999;
for( i = 0; i<n; i++){
scanf("%lld", &arr[i]);
}
for( i = 0; i<n; i++){
sum += arr[i];
if( sum > maxx ){
maxx = sum;
}
if( sum < 0 ){
sum = 0;
}
}
cout<<maxx<<endl;
return 0;
}