#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; vector vec; bool b[100] = { false }; int co = 0; int main() { long long n, h; cin >> n >> h; for (long long i = 2; i * i <= h; i++) { if (h % i == 0) { while (h % i == 0) { h /= i; vec.emplace_back(i); } } } if (h != 0) { vec.emplace_back(h); } for (int i = 0; i < n; i++) { long long a; cin >> a; for (int j = 0; j < vec.size(); j++) { if (a % vec[j] == 0 && !b[j]) { b[j] = true; a /= vec[j]; co++; } } } if (co == vec.size()) { cout << "YES" << endl; } else { cout << "NO" << endl; } }