#include #include #include #include #include #include #include #include using namespace std; #define rep(i, n) for (long long i = 0; i < (long long)(n); i++) #define REP(i, k, n) for (int i = (int)(k); i < (int)(n); i++) #define rrep(i, n) for (int i = (int)(n)-1; i >= 0; i--) #define rREP(i, k, n) for (int i = (int)(n)-1; i >= k; i--) #define debug(x) cerr<<#x<<": "< #define pb push_back #define mp make_pair #define pcnt __builtin_popcount typedef long long ll; const int inf = 100100100; const int MOD = (int)1e9 + 7; const double EPS = 1e-9; int main(){ cin.tie(0); ios_base::sync_with_stdio(false); long long a,b; cin >> a >> b; if(b>a) swap(a,b); bool f = false; if(b==0) f=true; else if(b%2==0&&a%2==1) f=true; else if(b%2==1&&a%2==0) f=true; else if(b%2==0&&a%2==0){ long long c =2; long long d = b; while(d%2==0){ d/=2; c*=2; } if(d==0) f=true; else if(a%c==0) f=true; else{ long long c =2; while(a%2==0){ a/=2; c*=2; } if(a==0) f=true; else if(b%c==0) f=true; }; } else f = false; if(f) cout << "Yes" << endl; else cout << "No" << endl; return 0; }