#include <iostream>
#include <algorithm>
using namespace std;
void naprawTablice();
long long a[10000] = {};
long long sumy[10000] = {};
int temp=0;
int main()
{
int n;
cin>>n;
for (int x=0; x!=n; x++) cin>>a[x];
for (int x=0; x<n;){
if(a[x]<0){
while(a[x]<=0 && x!=n){
sumy[temp]+=a[x];
x++;
}
temp++;
}
else{
while(a[x]>=0 && x!=n){
sumy[temp]+=a[x];
x++;
}
temp++;
}
}
if(sumy[0]<0)sumy[0]=0;
if(sumy[temp-1]<0)sumy[temp-1]=0;
naprawTablice();
if(temp<3) cout<<sumy[0]<<endl;
else{
for (int x=0; x<temp && temp!=1; x+=2){
if(sumy[x]+sumy[x+1]+sumy[x+2]>max(sumy[x], sumy[x+2])) {
sumy[x]=sumy[x]+sumy[x+1]+sumy[x+2];
sumy[x+1]=0;
sumy[x+2]=0;
naprawTablice();
naprawTablice();
x=-2;
}
//for (int g=0; g!=temp; g++) cout<<sumy[g]<<endl; cout<<endl;
}
cout<<*max_element(sumy, sumy+temp)<<endl;
}
return 0;
}
void naprawTablice(){
for (int x=0; x<temp-1; x++){
if(sumy[x]==0){
for (int y=x; y!=temp-1; y++) sumy[y]=sumy[y+1];
temp--;
}
}
if(sumy[temp-1]==0) temp--;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZvaWQgbmFwcmF3VGFibGljZSgpOwoKbG9uZyBsb25nIGFbMTAwMDBdID0ge307CmxvbmcgbG9uZyBzdW15WzEwMDAwXSA9IHt9OwppbnQgdGVtcD0wOwoKaW50IG1haW4oKQp7CiAgICBpbnQgbjsKICAgIGNpbj4+bjsKICAgIGZvciAoaW50IHg9MDsgeCE9bjsgeCsrKSBjaW4+PmFbeF07CgogICAgZm9yIChpbnQgeD0wOyB4PG47KXsKICAgICAgICBpZihhW3hdPDApewogICAgICAgICAgICB3aGlsZShhW3hdPD0wICYmIHghPW4pewogICAgICAgICAgICAgICAgc3VteVt0ZW1wXSs9YVt4XTsKICAgICAgICAgICAgICAgIHgrKzsKICAgICAgICAgICAgfQogICAgICAgICAgICB0ZW1wKys7CgogICAgICAgIH0KICAgICAgICBlbHNlewogICAgICAgICAgICB3aGlsZShhW3hdPj0wICYmIHghPW4pewogICAgICAgICAgICAgICAgc3VteVt0ZW1wXSs9YVt4XTsKICAgICAgICAgICAgICAgIHgrKzsKICAgICAgICAgICAgfQogICAgICAgICAgICB0ZW1wKys7CgogICAgICAgIH0KICAgIH0KICAgIGlmKHN1bXlbMF08MClzdW15WzBdPTA7CiAgICBpZihzdW15W3RlbXAtMV08MClzdW15W3RlbXAtMV09MDsKCiAgICBuYXByYXdUYWJsaWNlKCk7CgogICAgaWYodGVtcDwzKSBjb3V0PDxzdW15WzBdPDxlbmRsOwogICAgZWxzZXsKICAgICAgICBmb3IgKGludCB4PTA7IHg8dGVtcCAmJiB0ZW1wIT0xOyB4Kz0yKXsKCiAgICAgICAgICAgIGlmKHN1bXlbeF0rc3VteVt4KzFdK3N1bXlbeCsyXT5tYXgoc3VteVt4XSwgc3VteVt4KzJdKSkgewogICAgICAgICAgICAgICAgc3VteVt4XT1zdW15W3hdK3N1bXlbeCsxXStzdW15W3grMl07CiAgICAgICAgICAgICAgICBzdW15W3grMV09MDsKICAgICAgICAgICAgICAgIHN1bXlbeCsyXT0wOwogICAgICAgICAgICAgICAgbmFwcmF3VGFibGljZSgpOwogICAgICAgICAgICAgICAgbmFwcmF3VGFibGljZSgpOwogICAgICAgICAgICAgICAgeD0tMjsKICAgICAgICAgICAgfQogICAgICAgIC8vZm9yIChpbnQgZz0wOyBnIT10ZW1wOyBnKyspIGNvdXQ8PHN1bXlbZ108PGVuZGw7IGNvdXQ8PGVuZGw7CiAgICAgICAgfQoKICBjb3V0PDwqbWF4X2VsZW1lbnQoc3VteSwgc3VteSt0ZW1wKTw8ZW5kbDsKICAgIH0KCgogICAgcmV0dXJuIDA7Cn0KCnZvaWQgbmFwcmF3VGFibGljZSgpewogICAgZm9yIChpbnQgeD0wOyB4PHRlbXAtMTsgeCsrKXsKICAgICAgICBpZihzdW15W3hdPT0wKXsKICAgICAgICAgICAgZm9yIChpbnQgeT14OyB5IT10ZW1wLTE7IHkrKykgc3VteVt5XT1zdW15W3krMV07CiAgICAgICAgICAgIHRlbXAtLTsKICAgICAgICB9CiAgICB9CiAgICBpZihzdW15W3RlbXAtMV09PTApIHRlbXAtLTsKfQo=