rendered paste body#include<stdio.h>
long find(long int a[], int n);
int main()
{
long tests;
long n,k,e,l,m;
long i,j,min;
long la[10000];
long gems[10000];
int fl;
scanf("%ld",&tests);
while(tests--)
{
scanf("%ld%ld%ld",&n,&k,&e);
for(i=0;i<n;i++)
scanf("%ld",&la[i]);
for(i=0;i<k;i++)
scanf("%ld",&gems[i]);
min = find(gems, k);
for(i=0;i<n;i++)
gems[i]-=min;
fl=1;
for(i=0;i<n && fl;i++)
{
for(j=-e;j<=e && fl;j++)
{
for(l=0;l<k;l++)
gems[l]+=(la[i]+j);
for(l=0;l<k;l++)
{
for(m=0;m<n;m++)
{
if((la[m]+e)>=gems[l] && (la[m]-e)<=gems[l])
break;
}
if(m==n)
break;
}
if(l==k)
{
printf("YES\n");
fl=0;
}
for(l=0;l<k;l++)
gems[l]-=(la[i]+j);
}
}
if(fl==1)
{
printf("NO\n");
}
}
return 0;
}
long int find(long int a[], int n)
{
long int i, min;
min=a[0];
for(i=1;i<n;i++)
if(a[i]<min)
min=a[i];
return min;
}