#include #include #include #include using namespace std; int main() { int a, b; scanf("%d%d", &a, &b); int ans = 0; // 11 for (int i = 1; i <= min(a, b); i *= 2) { int msk = i - 1; int upper = i - 1 + i; int take = min(upper, a); ans = max(ans, take & msk); take = min(upper, b); ans = max(ans, take & msk); } // 10 for (int i = 1; i <= a; i *= 2) { int take = min(b, i - 1); ans = max(ans, take); } for (int i = 1; i <= b; i *= 2) { int take = min(a, i - 1); ans = max(ans, take); } printf("%d\n", ans); return 0; }