#include using namespace std; #define fast_io ios_base::sync_with_stdio(false), cin.tie(NULL), cout.tie(NULL) #define pb push_back #define int long long #define ll long long #define ld long double #define rep(i, n) for (ll i=0; i=0; i--) #define mem(v, ha) memset(v, ha, sizeof(v)) #define all(a) a.begin(), a.end() #define allr(a) a.rbegin(), a.rend() #define CLOCK cerr << "\nTime elapsed: " << 1000 * clock() / CLOCKS_PER_SEC << "ms\n"; typedef vector vi; typedef vector> vvi; typedef vector> vpi; typedef vector vc; #define no cout << "No\n" #define yes cout << "Yes\n" #define mp make_pair #define ff first #define ss second const ll M = 1e9 + 7; const ll mod = 998244353 ; const long double PI = 3.141592653589793238460; const int inf = (int)(1e9); // auto sum=[&](int use, int y){return use+y;}; // function dfs=[&](int u) //void is the return type, int is the argument int ans = 0; int go(int a, int b) { if (a == 0 || b == 0) return 1; if (a % 2 && b % 2) return 0; if (a % 2 == 0 && b % 2) return go(a / 2, b - 1); if (a % 2 && b % 2 == 0) return go(a - 1, b / 2); return (go(a / 2, b - 1) || go(a - 1, b / 2)); } void solve() { int a, b; cin >> a >> b; if (go(a, b)) yes; else no; } int32_t main() { fast_io; int T = 1; //cin >> T; while (T--) { solve(); } }