#include <bits/stdc++.h>
using namespace std;
int a[1000010];
map<int, int> mymap;
int n, m;
int main() {
  scanf("%d%d", &n, &m);
  for (int i = 0; i < n; i++) {
    scanf("%d", &a[i]);
    a[i] %= m;
  }
  for (int i = 0; i < n; i++) {
    vector<int> v;
    for (std::map<int, int>::iterator it = mymap.begin(); it != mymap.end();
         ++it) {
      v.push_back(it->first);
    }
    for (int j = 0; j < v.size(); j++) {
      mymap[(v[j] + a[i]) % m]++;
    }
    mymap[a[i]]++;
    if (mymap[0] or mymap[m]) {
      puts("YES");
      return 0;
    }
  }
  printf("NO\n");
  return 0;
}
