// max sum of subsets in an array (no 2 elements should be consecutive)
#include<bits/stdc++.h>
using namespace std;
main(){
int n;
cin>>n;
vector<int>v(n),dp(n);
for(auto &it:v)cin>>it;
dp[0]=max(0,v[0]);
dp[1]=max(dp[0],v[1]);
for(int i=2;i<n;i++){
dp[i]=max(dp[i-1],dp[i-2]+v[i]);
}
cout<<dp[n-1]<<"\n";
}
Ly8gbWF4IHN1bSBvZiBzdWJzZXRzIGluIGFuIGFycmF5IChubyAyIGVsZW1lbnRzIHNob3VsZCBiZSBjb25zZWN1dGl2ZSkKI2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCm1haW4oKXsKICAgIGludCBuOwogICAgY2luPj5uOwogICAgdmVjdG9yPGludD52KG4pLGRwKG4pOwogICAgZm9yKGF1dG8gJml0OnYpY2luPj5pdDsKICAgIGRwWzBdPW1heCgwLHZbMF0pOwogICAgZHBbMV09bWF4KGRwWzBdLHZbMV0pOwogICAgZm9yKGludCBpPTI7aTxuO2krKyl7CiAgICAgICAgZHBbaV09bWF4KGRwW2ktMV0sZHBbaS0yXSt2W2ldKTsKICAgIH0KICAgIGNvdXQ8PGRwW24tMV08PCJcbiI7Cn0=