#include //#include #include #include #define rep(i, n) for(int i = 0; i < (n); i++) #define rrep(i, n) for(int i = (n-1); i >= 0; i--) using namespace std; using namespace atcoder; typedef long long ll; const int MOD = 1000000007; //const int MOD = 998244353; const ll INF = 1LL<<61; const int IINF = 1000000000; template inline bool chmax(T& a, T b) { if (a < b) { a = b; return 1; } return 0; } template inline bool chmin(T& a, T b) { if (a > b) { a = b; return 1; } return 0; } typedef pair PI; typedef pair P; typedef pair PS; using mint = modint1000000007; vector enum_divisors(ll N){ vector res; for (ll i = 1; i * i <= N; ++i){ if (N % i == 0){ res.push_back(i); if (N/i != i) res.push_back(N/i); } } sort(res.begin(), res.end()); return res; } int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); ll A, B; cin >> A >> B; auto divisor = enum_divisors(A); bool isok = false; for(auto d : divisor){ if(d % B == 0){ isok = true; } } if(isok) cout << "YES" << endl; else cout << "NO" << endl; }