#include <bits/stdc++.h>
using namespace std;
int v[1000001];
int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int n,k;
    long long mx=0;
    cin>>n>>k;
    for(int i=0;i<n;i++)
    {
        cin>>v[i];
    }
    for(int mask=0;mask<(1<<n);mask++)
    {
        long long ans=(1LL<<32)-1;
        long long val=0;
        bool ok=1;
        int last=0,cnt=0;
        for(int i=0;i<n;i++)
        {
            if(mask & (1<<i))
            {
                if(last==i)
                {
                    ok=0;
                    break;
                }
                ans=(ans & val);
                val=v[i];
                last=i;
                cnt++;
            }
            else
            {
                val=(val | v[i]);
            }
        }
        if(cnt!=k-1) ok=0;
        //if(ans==7) cout<<mask<<' ';
        //if(ans==3) cout<<mask<<' ';
        if(ok)
        {
            ans=(ans & val);
            if(ans!=(1LL<<32)-1) mx=max(mx,ans);
        }
    }
    cout<<mx;
    return 0;
}
