/*
有数字的n个纸片放在一起,从其中抽取4次。每抽取一次并放入其中。若4数之和为m,则赢。否则输。
赢YES, 输NO
*/
#include <stdio.h>
#define MAX_N 50
int main(){
int m, n, k[MAX_N];
int f = 0, i;
int a, b ,c, d;
scanf("%d%d", &n, &m);
for (i=0; i<n; i++)
scanf("%d", &k[i]);
for (a=0; a<n; a++)
for (b=0; b<n; b++)
for (c=0; c<n; c++)
for (d=0; d<n; d++){
if (k[a] + k[b] + k[c] + k[d] == m)
f= 1;
}
if (f)
puts("YES");
else
puts("NO");
return 0;
}