#include <bits/stdc++.h>
using namespace std;
int main() {
// your code goes here
int n;
cin>>n;
int a[n];
for(int i=0; i<n; i++)
{
cin>>a[i];
}
int p1[n+1]= {0};
for(int i=1; i<=n; i++ )
{
p1[i] = max({p1[i-1]+a[i-1], a[i-1],0});
}
// for(int i=0; i<=n; i++)
// {
// cout<<p1[i]<<" ";
// }
// cout<<endl;
// note that if all the ele of main array are negative then the ans will be max(a[1],.......a[n-1]);
int ans = 0;
for(int i=0; i<=n; i++)
{
ans = max(ans,p1[i]);
}
cout<<ans<<endl;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKICAgIGludCBuOwogICAgY2luPj5uOwogICAgCiAgICBpbnQgYVtuXTsKICAgIAogICAgZm9yKGludCBpPTA7IGk8bjsgaSsrKQogICAgewogICAgICAgIGNpbj4+YVtpXTsKICAgIH0KICAgIAogICAgaW50IHAxW24rMV09IHswfTsKICAgIAogICAgZm9yKGludCBpPTE7IGk8PW47IGkrKyApCiAgICB7CiAgICAgICAgcDFbaV0gPSBtYXgoe3AxW2ktMV0rYVtpLTFdLCBhW2ktMV0sMH0pOwogICAgfQogICAgCiAgICAvLyBmb3IoaW50IGk9MDsgaTw9bjsgaSsrKQogICAgLy8gewogICAgLy8gICAgIGNvdXQ8PHAxW2ldPDwiICI7CiAgICAvLyB9CiAgICAvLyBjb3V0PDxlbmRsOwogICAgCiAgICAvLyBub3RlIHRoYXQgaWYgYWxsIHRoZSBlbGUgb2YgbWFpbiBhcnJheSBhcmUgbmVnYXRpdmUgdGhlbiB0aGUgYW5zIHdpbGwgYmUgbWF4KGFbMV0sLi4uLi4uLmFbbi0xXSk7CiAgICBpbnQgYW5zID0gMDsKICAgIAogICAgZm9yKGludCBpPTA7IGk8PW47IGkrKykKICAgIHsKICAgICAgICBhbnMgPSBtYXgoYW5zLHAxW2ldKTsKICAgIH0KICAgIAogICAgY291dDw8YW5zPDxlbmRsOwogICAgCn0K