#include #include using namespace std; struct point { double x,y,z; }; int main() { int n,i; double xmin,xmax,ymin,ymax,zmin,zmax,xx,yy,zz,r; point points[10],ball; scanf("%d",&n); while(n--) { for(i=0;i<8;i++) scanf("%lf%lf%lf",&points[i].x,&points[i].y,&points[i].z); scanf("%lf%lf%lf%lf",&ball.x,&ball.y,&ball.z,&r); xmin=ymin=zmin=1000000;xmax=ymax=zmax=-1; for(i=0;i<8;i++) { if(xmin>points[i].x) xmin=points[i].x; if(xmaxpoints[i].y) ymin=points[i].y; if(ymaxpoints[i].z) zmin=points[i].z; if(zmaxxmax) xx=xmax; else xx=ball.x; if(ball.yymax) yy=ymax; else yy=ball.y; if(ball.zzmax) zz=zmax; else zz=ball.z; double diss=sqrt((xx-ball.x)*(xx-ball.x)+(yy-ball.y)*(yy-ball.y)+(zz-ball.z)*(zz-ball.z)); if(diss>r) printf("No\n"); else printf("Yes\n"); } return 0; }