#include <bits/stdc++.h>
using namespace std;
int n, m, ara[1010];
bool dp[1010][1010], vis[1010][1010];
bool solve(int pos, int mod, bool tk) {
  if (pos > n) return (!mod && tk);
  if (vis[pos][mod]) return dp[pos][mod];
  bool val =
      (solve(pos + 1, (mod + ara[pos]) % m, 1)) || (solve(pos + 1, mod, tk));
  vis[pos][mod] = 1;
  return dp[pos][mod] = val;
}
int main() {
  scanf("%d %d", &n, &m);
  if (n > m)
    puts("YES");
  else {
    for (int i = 1; i <= n; i++) scanf("%d", &ara[i]);
    cout << (solve(1, 0, 0) ? "YES" : "NO") << endl;
  }
}
