#include <iostream>
#include <algorithm>
#include <iterator>

using namespace std;

struct Max
{
    int& operator*() { return cur; }
    void operator++(){ cur = mx = max(mx,mxe = max(0,mxe+cur)); }
private:
    int cur, mx = 0, mxe = 0;
};

int main()
{
    size_t n;
    cin >> n;
    cout << *copy_n(istream_iterator<int>(cin),n,Max{});

}
