/*
TASK: mov
LANG: C++
*/
// Iordan Boev SMG
# include <stdio.h>
# include <stdlib.h>
# define min(a,b) (((a) < (b)) ? (a) : (b))
# define tarea(x1,y1,x2,y2,x3,y3) (((x1)*((y2)-(y3))) + ((x2)*((y3)-(y1))) + ((x3)*((y1)-(y2))))

int n;
int ax,ay,bx,by,p1x,p1y,p2x,p2y,tx,ty;
int cx,cy,dx,dy;
int ok,okp1,okp2;

int checkp1() {
    int s,s2;
    okp1 == 1;
    //printf("%d %d %d %d %d %d\n", ax,ay,p1x,p1y,bx,by);
    s = tarea(ax,ay,p1x,p1y,bx,by); 
    if(s == 0) return 1;

   
    s2 = s;
    s = tarea(bx,by,p1x,p1y,cx,cy);
    if(s == 0) return 1;
  
    
    if(s2 < 0 && s > 0 || s2 > 0 && s < 0) return -1;
         
    s2 = s;
    s = tarea(cx,cy,p1x,p1y,dx,dy);
    if(s == 0) return 1;
   
    
    if(s2 < 0 && s > 0 || s2 > 0 && s < 0) return -1;     
    s2 = s;
    s = tarea(dx,dy,p1x,p1y,ax,ay);
    if(s == 0) return 1;
   
    
    if(s2 < 0 && s > 0 || s2 > 0 && s < 0)  return -1;     
    return 1;
}

int checkp2() {
    int s,s2;
    okp2 == 1;
    s = tarea(ax,ay,p2x,p2y,bx,by); 
    if(s == 0) return 1;
  
    s2 = s;
    s = tarea(bx,by,p2x,p2y,cx,cy);
    if(s == 0) return 1;
   
    if(s*s2<0) return -1;     
    s2 = s;
    s = tarea(cx,cy,p2x,p2y,dx,dy);
    if(s == 0) return 1;

    if(s*s2<0) return -1;     
    s2 = s;
    s = tarea(dx,dy,p2x,p2y,ax,ay);
    if(s == 0) return 1;
  
    if(s*s2<0)  return -1;
    return 1;
}

int checkprava(int x1,int y1,int x2,int y2,int x3,int y3,int x4,int y4) {
    if((tarea(x3,y3,x1,y1,x4,y4)*tarea(x3,y3,x2,y2,x4,y4)) < 0 &&
        tarea(x1,y1,x3,y3,x2,y2)*tarea(x1,y1,x4,y4,x2,y2) < 0) {
        return 1;           
    }
    return -1; 
    
}

void work() {   
    int r = min(abs(tx),abs(ty));
    r = 1200000/r;           
    tx = tx*r;
    ty = ty*r;
    //printf("%d %d", tx,ty);
    cx = bx+tx;
    cy = by+ty;
    dx = ax+tx;
    dy = ay+ty;
    
    if( checkp1() == 1) {printf("1"); return;}    
    
    if( checkp2() == 1) {printf("1"); return;}
    
    if(checkprava(ax,ay,bx,by,p1x,p1y,p2x,p2y) == 1) {printf("1"); return;}
    if(checkprava(bx,by,cx,cy,p1x,p1y,p2x,p2y) == 1) {printf("1"); return;}
    if(checkprava(cx,cy,dx,dy,p1x,p1y,p2x,p2y) == 1) {printf("1"); return;}
    if(checkprava(dx,dy,ax,ay,p1x,p1y,p2x,p2y) == 1) {printf("1"); return;}
    
    printf("0");    
}

void read() {
    scanf("%d %d %d %d %d %d %d %d %d %d",&ax,&ay,&bx,&by,&p1x,&p1y,&p2x,&p2y,&tx,&ty);    
    work(); 
}

int main() {
    scanf("%d",&n);
    for(int i = 0; i < n; i++) {
        read();   
    }   
    printf("\n");
    return 0;
}
