#include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long ll; typedef pair PII; typedef vector VI; typedef vector VVI; #define MP make_pair #define PB push_back #define inf 1000000007 #define rep(i,n) for(int i=0;i<(int)(n);++i) template void Fill(A (&array)[N], const T &val){ std::fill( (T*)array, (T*)(array+N), val ); } bool bfs(ll a, ll b){ if(a==0||b==0){ return true; } if(a%2!=0&&b%2!=0){ return false; } bool flag1 = 0; if(a%2==0){ flag1= bfs(a/2,b-1); } if(flag1){ return true; } if(b%2==0){ flag1 = bfs(a-1,b/2); } return flag1; } int main(){ ll a,b; cin >> a >> b; if(bfs(a,b)){ cout << "Yes" << endl; }else{ cout << "No" << endl; } return 0; }