#include<bits/stdc++.h>typedeflonglong ll;usingnamespace std;#define Buff ios::sync_with_stdio(false)#define mem(a) memset(a, 0, sizeof a)#define pb push_backconstint INF =1e9+7;constint N =1e2+7;constint M =1e6+7;const ll mod =1e9+7;
ll sum[N], a[N];bool dp[N][N];int n, m;booljudge(ll Ans){mem(dp); dp[0][0]=true;for(int j =1; j <= m; j++)for(int i =0; i < n; i++)for(int k = i +1; k <= n; k++){
ll x =((sum[k]- sum[i])& Ans)- Ans;if(!x && dp[i][j-1]) dp[k][j]=true;}return dp[n][m];}signedmain(){
Buff;while(cin >> n >> m){for(int i =1; i <= n; i++){
cin >> a[i];
sum[i]= sum[i-1]+ a[i];}
ll Ans =0;for(int i =60; i +1; i--)if(judge(Ans |(1ll<< i)))
Ans |=(1ll<< i);
cout << Ans <<"\n";}return0;}