#include using namespace std; long long x, y, a, b; bool g = 1; bool f[1000000]; set p = { 2 }; map xp, yp; int main() { cin >> x >> a >> y >> b; for (long long i = 3; i < 1000000; i += 2) { if (!f[i]) { p.insert(i); for (long long j = i * i; j < 1000000; j += i * 2) { f[j] = 1; } } } for (long long j : p) { if (x % j == 0) { while (x % j == 0) { xp[j]++; x /= j; } } if (y % j == 0) { while (y % j == 0) { yp[j]++; y /= j; } } } if (x > 1) xp[x]++; if (y > 1) yp[y]++; for (auto j : yp) { if (xp[j.first] * a < j.second * b) g = 0; } if (g) cout << "Yes" << endl; else cout << "No" << endl; }