#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 2000+5;
int a[N], pre[N];
// for(int i=1; i<=n; i++)
void solve(){
int n, L, R; cin >> n >> L >> R;
for(int i=1; i<=n; i++) cin >> a[i], pre[i] = pre[i-1] + a[i];
int cur = 0;
for(int b=60; b>=0; b--){
cur += (1ll<<b)-1;
//
int has = 0;
vector<vector<int>> CAN(n+1);
for(int i=1; i<=n; i++){
for(int j=i; j>=1; j--){
int sm = pre[i] - pre[j-1];
if((sm|cur) != cur) continue;
CAN[i].push_back(j);
}
}
vector<int> dp(n+1, 0); dp[0] = 1;
for(int g=1; g<=R; g++){
vector<int> n_dp(n+1, 0);
for(int i=1; i<=n; i++){
for(int j: CAN[i]){
n_dp[i] |= dp[j-1];
if(n_dp[i]) break;
}
}
swap(dp, n_dp);
if(g >= L) has |= dp[n];
}
if(!has) cur += (1ll<<b);
//
cur -= (1ll<<b)-1;
}
cout << cur;
}
signed main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
solve();
}