#include <bits/stdc++.h>
using namespace std;
const long long INF = (long long)2e9;
const long long inf = (long long)2e18;
const long double eps = (long double)1e-8;
const long long mod = (long long)10007;
const long long MAXN = (long long)1e4 + 1;
const long long MAXC = (long long)1e6 + 1;
const long long MAXE = (long long)1000;
const long long MAXLOG = 21;
const long long maxlen = (long long)1e5;
const long long asci = (long long)256;
const long long block = 480;
const long double PI = acos(-1);
const long double e = 2.7182818284;
template <class T>
istream &operator>>(istream &in, vector<T> &arr) {
  for (T &cnt : arr) {
    in >> cnt;
  }
  return in;
};
void solve() {
  long long n;
  cin >> n;
  vector<long long> a(n);
  cin >> a;
  for (long long i = 0; i < n; ++i) {
    a.push_back(a[i]);
  }
  vector<long long> pref(2 * n + 2);
  for (long long i = 0; i < 2 * n; ++i) {
    pref[i + 2] = pref[i] + a[i];
  }
  long long mx = 0;
  for (long long i = n; i < 2 * n; ++i) {
    mx = max(mx, pref[i + 2] - pref[i - n + 1]);
  }
  cout << mx << "\n";
}
signed main() {
  srand(time(0));
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  cout.tie(nullptr);
  cout.precision(30);
  solve();
  return 0;
}
