#include <bits/stdc++.h> #define REP(i,n) for (int i = 0; i < (n); ++i) template<class T> inline bool chmin(T& a, T b) {if (a > b) {a = b;return true;}return false;} template<class T> inline bool chmax(T& a, T b) {if (a < b) {a = b;return true;}return false;} using namespace std; using ll = long long; using P = pair<int,int>; using Pl = pair<long long,long long>; using veci = vector<int>; using vecl = vector<long long>; using vecveci = vector<vector<int>>; using vecvecl = vector<vector<long long>>; const int MOD = 1000000007; const double pi = acos(-1); int main() { int N; cin >> N; ll H; cin >> H; vecl A(N); REP(i,N) { ll a; cin >> a; a = abs(a); A[i] = a; } ll ans = 1; REP(i,N) { ans *= A[i]; ans %= H; } cout << (ans == 0 ? "YES" : "NO") << endl; }