#include <bits/stdc++.h>
using namespace std;
const long long int N = 1e6 + 6;
long long int arr[N], n, x, y, mx;
long long int hot[N][4];
long long int dp(long long int pos, long long int cur) {
  if (pos > n) return 0;
  long long int &ret = hot[pos][cur];
  if (ret != -1) return ret;
  long long int mx = -1e15;
  for (int i = cur; i < 3; i++) {
    if (i & 1)
      mx = max(mx, arr[pos] + dp(pos + 1, i));
    else
      mx = max(mx, -arr[pos] + dp(pos + 1, i));
  }
  return ret = mx;
}
int main() {
  cin >> n;
  for (int i = 1; i <= n; i++) cin >> arr[i];
  memset(hot, -1, sizeof hot);
  cout << max(dp(1, 0), max(dp(1, 1), dp(1, 2))) << "\n";
  return 0;
}
