




&preview=true)




#include <bits/stdc++.h>
using namespace std;
int n,x,w,kk,a[109],s[109],flag;
bool com(int q,int w){
return q>w;
}
void dfs(int num,int g)
{
if( g>x||g>n ) return;
if( num==n+1 )
{
kk=1;
return;
}
if( kk ) return;
for(int i=1;i<=g;i++)
{
if( a[i]+s[num]<=w )
{
a[i]+=s[num];
dfs(num+1,g);
a[i]-=s[num];
}
}
a[g+1]=s[num];
dfs(num+1,g+1);
a[g+1]=0;
}
int main()
{
int t;
cin >> t;
while( t-- )
{
kk=0,flag=1;
cin >> n >> x >> w;
for(int i=1;i<=n;i++)
{
cin >> s[i];
if( s[i]>w ) flag=0;
}
if( !flag )
{
cout << "No\n";
continue;
}
for(int i=1;i<=21;i++) a[i]=0;
sort(s+1,s+1+n,com);
a[1]=s[1];
dfs(2,1);
if( kk||n==1 ) cout << "Yes\n";
else cout << "No\n";
}
}