#include<bits/stdc++.h>
using namespace std;
const int N=1010;
int t,n,h;
int s[N];
long long r,x[N],y[N],z[N];
int find(int x){
if(s[x]!=x) s[x]=find(s[x]);
return s[x];
}
int main(){
scanf("%d",&t);
while(t--){
scanf("%d%d%lld",&n,&h,&r);
for(int i=1;i<=n+1;i++) s[i]=i;
for(int i=1;i<=n;i++) scanf("%lld%lld%lld",&x[i],&y[i],&z[i]);
for(int i=1;i<=n;i++) if(z[i]+r>=h) s[i]=s[n+1];
for(int i=1;i<n;i++){
for(int j=i+1;j<=n;j++){
if((x[i]-x[j])*(x[i]-x[j])+(y[i]-y[j])*(y[i]-y[j])+(z[i]-z[j])*(z[i]-z[j])<=4*r*r){
int xx=find(i),yy=find(j);
if(xx!=yy) s[xx]=yy;
}
}
}
for(int i=1;i<=n+1;i++) cout<<s[i]<<endl;
bool flag=false;
for(int i=1;i<=n;i++){
if(z[i]-r<=0&&s[i]==s[n+1]){
printf("Yes\n");
flag=true;
break;
}
}
if(!flag) printf("No\n");
}
return 0;
}