import java.util.*;
import java.lang.*;
import java.io.*;
class Codechef
{
{
// your code goes here
Scanner sc
=new Scanner
(System.
in); int t=sc.nextInt();
while(t-->0){
int n=sc.nextInt();
int y=sc.nextInt();
int [] ar=new int[n];
for(int i=0;i<n;i++){
ar[i]=sc.nextInt();
}
boolean ok=solve(ar,y);
}
sc.close();
}
public static boolean solve(int []ar,int y){
boolean [][] dp=new boolean[ar.length+1][y+1];
dp[0][0]=true;
for(int i=1;i<=ar.length;i++){
for(int j=0;j<=y;j++){
if(j>=ar[i-1]&& dp[i-1][j-ar[i-1]]==true){
dp[i][j]=true;
}else if(dp[i-1][j]==true){
dp[i][j]=true;
}
}
}
return dp[ar.length][y];
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgpjbGFzcyBDb2RlY2hlZgp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKCQkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCgkJU2Nhbm5lciBzYz1uZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwoJCWludCB0PXNjLm5leHRJbnQoKTsKCQl3aGlsZSh0LS0+MCl7CgkJICAgIGludCBuPXNjLm5leHRJbnQoKTsKCQkgICAgaW50IHk9c2MubmV4dEludCgpOwoJCSAgICBpbnQgW10gYXI9bmV3IGludFtuXTsKCQkgICAgZm9yKGludCBpPTA7aTxuO2krKyl7CgkJICAgICAgICBhcltpXT1zYy5uZXh0SW50KCk7CgkJICAgIH0KCQkgICAgYm9vbGVhbiBvaz1zb2x2ZShhcix5KTsKCQkgICAgU3lzdGVtLm91dC5wcmludGxuKG9rKTsKCQl9CgkJc2MuY2xvc2UoKTsKCX0KCQoJcHVibGljIHN0YXRpYyBib29sZWFuIHNvbHZlKGludCBbXWFyLGludCB5KXsKCSAgICBib29sZWFuIFtdW10gZHA9bmV3IGJvb2xlYW5bYXIubGVuZ3RoKzFdW3krMV07CgkgICAgZHBbMF1bMF09dHJ1ZTsKCSAgICBmb3IoaW50IGk9MTtpPD1hci5sZW5ndGg7aSsrKXsKCSAgICAgICAgZm9yKGludCBqPTA7ajw9eTtqKyspewoJICAgICAgICAgICAgaWYoaj49YXJbaS0xXSYmIGRwW2ktMV1bai1hcltpLTFdXT09dHJ1ZSl7CgkgICAgICAgICAgICAgICAgZHBbaV1bal09dHJ1ZTsKCSAgICAgICAgICAgIH1lbHNlIGlmKGRwW2ktMV1bal09PXRydWUpewoJICAgICAgICAgICAgICAgIGRwW2ldW2pdPXRydWU7CgkgICAgICAgICAgICB9CgkgICAgICAgIH0KCSAgICB9CgkgICAgcmV0dXJuIGRwW2FyLmxlbmd0aF1beV07Cgl9Cn0K