#include <bits/stdc++.h>
using namespace std;
using u64 = uint64_t;
long long int gcd(long long int a, long long int b) {
  if (a == 0) return b;
  return gcd(b % a, a);
}
int bin(long int a[], long int low, long int high, long d, long day[]) {
  if (low > high) return -1;
  long mid = (low + high) / 2;
  if (a[mid] > (a[low] + d) && (a[mid - 1] <= (a[low] + d) || day[mid - 1]) &&
      day[mid] == 0)
    return mid;
  else if (a[mid] > (a[low] + d) && day[mid] == 0)
    return bin(a, low, mid - 1, d, day);
  else
    return bin(a, mid + 1, high, d - a[mid + 1] + a[low], day);
}
long long power(long long a, long long b) {
  if (b == 0) return 1;
  if (b % 2 == 0) return (power(((a * a)), b / 2));
  return (((a) * (power(((a * a)), b / 2))));
}
bool cmp(int a, int b) { return a > b; }
bool sortbysecdesc(const pair<int, int> &a, const pair<int, int> &b) {
  return a.first > b.first;
}
u64 binpower(u64 base, u64 e, u64 m) {
  u64 ans = 1;
  base %= m;
  while (e) {
    if (e & 1) {
      ans = ans * base % m;
    }
    base = base * base % m;
    e >>= 1;
  }
  return ans;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
  cout.tie(0);
  int t = 1;
  for (int X = 1; X <= t; X++) {
    long long int n;
    cin >> n;
    long long int a[n], i, k;
    for (long long int i = 0; i < (n); i++) cin >> a[i];
    vector<long long int> v;
    for (i = 0; i < n; i += 2) v.push_back(a[i]);
    for (i = 1; i < n; i += 2) v.push_back(a[i]);
    for (long long int i = 0; i < (n); i++) v.push_back(v[i]);
    k = (n + 1) / 2;
    long long int sum = 0, ans = 0;
    for (i = 0; i < k; i++) sum += v[i];
    ans = sum;
    for (i = 1; i < n; i++) {
      sum -= v[i - 1] - v[i + k - 1];
      ans = max(ans, sum);
    }
    cout << ans << "\n";
  }
  return 0;
}
