#pragma once #include #define M_PI 3.14159265358979323846 // pi using namespace std; typedef long long ll; typedef unsigned long long ull; typedef vector VI; typedef pair P; typedef tuple t3; typedef tuple t4; #define rep(a,n) for(int a = 0;a < n;a++) #define repi(a,b,n) for(int a = b;a < n;a++) const ll mod = 1000000007; bool Compare(t4& left, t4& right) { ll a, b, d, e, f,h; char c, g; tie(a, b, c, d) = left; tie(e, f, g, h) = right; if (a == e) { return d < h; } return a < e; } int main(void) { ll a, b; cin >> a >> b; bool aBits[32]; bool bBits[32]; rep(i, 32) { aBits[i] = a & (1 << i); bBits[i] = b & (1 << i); if (aBits[i] && !bBits[i]) { cout << 0 << endl; return 0; } } int d = 0; rep(i, 32) { if (bBits[i] && !aBits[i]) { d++; } } cout << (1LL << max(0, (d - 1))) << endl; return 0; }