#include #include #include #include #include #include #include #include using namespace std; typedef long long ll; #define rep(i, n) for(int i = 0; i < (n); i++) template using vi = vector; template using vii = vector>; template using viii = vector>; using pii = pair; using tii = tuple; int shift(int n) { return n / 2 + (1 << 15) * (n & 1); } int main() { int n; cin >> n; int mx = (1 << 16); if (n >= 16) { cout << mx - 1 << endl; return 0; } vi a(n); rep(i, n) cin >> a[i]; vi dp(mx); dp[0] = 1; rep(i, n) { vi prev(mx); swap(prev, dp); rep(j, mx) { if (prev[j]) { int ta = a[i]; rep(k, 16) { dp[j | ta] = 1; ta = shift(ta); } } } } for (int i = mx - 1; i >= 0; i--) if (dp[i]) { cout << i << endl; return 0; } return 0; }