#include <iostream>
#include <vector>
#include <cmath>
#include <algorithm>
#include <deque>
using namespace std;
int64_t main()
{
int64_t n_numbers;
cin >> n_numbers;
vector<int64_t> storage;
vector<int64_t> result(n_numbers, 0);
for (int64_t i = 0; i < n_numbers; ++i)
{
int64_t temp;
cin >> temp;
storage.push_back(temp);
}
result[0] = storage[0];
for(int64_t i = 1; i < n_numbers; ++i)
{
if(result[i - 1] + storage[i] >= storage[i])
{
result[i] = result[i - 1] + storage[i];
}
else
{
result[i] = storage[i];
}
}
cout << *(max_element(result.begin(), result.end())) << endl;
}