#include <bits/stdc++.h>
using namespace std;
long long l, r;
long long res(long long l, long long r) {
  if (l == r) return 0;
  long long pow2 = 1;
  while (pow2 * 2 <= r) pow2 *= 2;
  if (pow2 >= l && pow2 - 1 >= l)
    return 2 * pow2 - 1;
  else
    return res(l - pow2, r - pow2);
}
int main() {
  scanf("%I64d %I64d", &l, &r);
  printf("%I64d\n", res(l, r));
  return 0;
}
