#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
freopen("TRIPLE.INP", "r", stdin);
freopen("TRIPLE.OUT", "w", stdout);
int n;
cin >> n;
vector<ll> a(n);
for (int i = 0; i < n; ++i) cin >> a[i];
vector<ll> max_left(n, -1), max_right(n, -1);
// Tính max_left
ll current_max = a[0];
for (int i = 1; i < n; ++i) {
max_left[i] = current_max;
current_max = max(current_max, a[i]);
}
// Tính max_right
current_max = a[n - 1];
for (int i = n - 2; i >= 0; --i) {
max_right[i] = current_max;
current_max = max(current_max, a[i]);
}
ll res = -1;
for (int j = 1; j < n - 1; ++j) {
if (max_left[j] >= a[j] && max_right[j] >= a[j]) {
ll depth = max_left[j] + max_right[j] - 2 * a[j];
res = max(res, depth);
}
}
cout << res << '\n';
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIGxsIGxvbmcgbG9uZwoKaW50IG1haW4oKSB7CiAgICBpb3M6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKG51bGxwdHIpOwoKICAgIGZyZW9wZW4oIlRSSVBMRS5JTlAiLCAiciIsIHN0ZGluKTsKICAgIGZyZW9wZW4oIlRSSVBMRS5PVVQiLCAidyIsIHN0ZG91dCk7CgogICAgaW50IG47CiAgICBjaW4gPj4gbjsKICAgIHZlY3RvcjxsbD4gYShuKTsKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgKytpKSBjaW4gPj4gYVtpXTsKCiAgICB2ZWN0b3I8bGw+IG1heF9sZWZ0KG4sIC0xKSwgbWF4X3JpZ2h0KG4sIC0xKTsKCiAgICAvLyBUw61uaCBtYXhfbGVmdAogICAgbGwgY3VycmVudF9tYXggPSBhWzBdOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPCBuOyArK2kpIHsKICAgICAgICBtYXhfbGVmdFtpXSA9IGN1cnJlbnRfbWF4OwogICAgICAgIGN1cnJlbnRfbWF4ID0gbWF4KGN1cnJlbnRfbWF4LCBhW2ldKTsKICAgIH0KCiAgICAvLyBUw61uaCBtYXhfcmlnaHQKICAgIGN1cnJlbnRfbWF4ID0gYVtuIC0gMV07CiAgICBmb3IgKGludCBpID0gbiAtIDI7IGkgPj0gMDsgLS1pKSB7CiAgICAgICAgbWF4X3JpZ2h0W2ldID0gY3VycmVudF9tYXg7CiAgICAgICAgY3VycmVudF9tYXggPSBtYXgoY3VycmVudF9tYXgsIGFbaV0pOwogICAgfQoKICAgIGxsIHJlcyA9IC0xOwogICAgZm9yIChpbnQgaiA9IDE7IGogPCBuIC0gMTsgKytqKSB7CiAgICAgICAgaWYgKG1heF9sZWZ0W2pdID49IGFbal0gJiYgbWF4X3JpZ2h0W2pdID49IGFbal0pIHsKICAgICAgICAgICAgbGwgZGVwdGggPSBtYXhfbGVmdFtqXSArIG1heF9yaWdodFtqXSAtIDIgKiBhW2pdOwogICAgICAgICAgICByZXMgPSBtYXgocmVzLCBkZXB0aCk7CiAgICAgICAgfQogICAgfQoKICAgIGNvdXQgPDwgcmVzIDw8ICdcbic7CiAgICByZXR1cm4gMDsKfQo=