#include <bits/stdc++.h>   using namespace std;   int maxx(int fd, int sd) { return (fd > sd) ? fd : sd; }   int minn(int fd, int sd) { return (fd < sd) ? fd : sd; }   long long nod(long long a, long long b) {     if (a < b) {       return nod(b, a);     }     if (b == 0) {       return a;     }     return nod(b, a % b);   }   long long nok(long a, long b) {     long long result = (long long)a * (long long)b;     result = result / nod(a, b);     return result;   }   int main() {     long long n, k;     long long overallNOK = 1LL;     scanf( %I64d %I64d , &n, &k);     for (int i = 0; i < n; ++i) {       long long c;       scanf( %I64d , &c);       overallNOK = nok(nod(k, c), overallNOK);     }     printf( %s , (overallNOK % k == 0) ?  Yes  :  No );     return 0;   }   