#include <bits/stdc++.h>

using namespace std;

const int NMAX = 1000000;
int n, k;
int v[NMAX + 5];

bool check(int x) {
    int i = 1;
    for(int j=1; j<=k; ++j) {
        int r = 0;
        while(i <= n && (x & ~r)) {
            r |= v[i++];
        }
        if(x & ~r) {
            return false;
        }
    }
    return true;
}

int main() {
    ios_base::sync_with_stdio(false); cin.tie(0);
    cin >> n >> k;
    for(int i=1; i<=n; ++i) {
        cin >> v[i];
    }
    int ans = 0;
    for(int b = 29; b >= 0; --b) {
        if(check(ans | (1 << b))) {
            ans |= (1 << b);
        }
    }
    cout << ans;
    return 0;
}
