#include using namespace std; #define int long long #define rep(i, n) for(int i = 0;i<(int)(n);i++) #define all(v) (v).begin(),(v).end() using ll = long long; using P = pair; map mp1,mp2; void prime_div(int n,map &mp) { for(int i = 2;i<=sqrt(n);i++) { if(n%i==0) { while(n%i==0) { n/=i; mp[i]++; } } } if(n!=1) mp[n]++; return; } void prime_div2(int n,map &mp) { for(auto p:mp1) { // if(p.first>sqrt(n)) break; while(n%p.first==0) { n/=p.first; mp[p.first]++; } } if(n!=1) mp[n]++; return; } signed main() { int n,h;cin >> n >> h; prime_div(h,mp1); rep(i, n) { int a;cin >> a; prime_div2(a,mp2); } for(auto p:mp1) { if(mp2[p.first]