/*
TASK:mov
LANG:C++
*/
#include <iostream>

using namespace std;

int n,st=-1;
long int i,xa,ya,xb,yb,xc,yc,xd,yd,x,y;
char result[1000],ch='0';
double xz;

int main()
{
    cin>>n;
    for(i=0;i<n;i++) 
    {
        cin>>xa>>ya>>xb>>yb>>xc>>yc>>xd>>yd>>x>>y;
        ch='0';
        while((xa>-1000000)&&(xa<1000000)&&(xc<1000000)&&(xc>-1000000)&&(ya>-1000000)&&(ya<1000000)&&(yc<1000000)&&(yc>-1000000))
        {
        if ((ya-yb)/(xa-xb)==(yc-yd)/(xc-xd)) {result[i]='0';break;}
        xz=((yc-(yc-yd)/(xc-xd)*xc)-(ya-(ya-yb)/(xa-xb)*xa));
        xz/=((ya-yb)/(xa-xb)-(yc-yd)/(xc-xd));
        if((xa>=xb)&&(xc>=xd)) if((xz>=xb)&&(xz<=xa)&&(xz>=xd)&&(xz<=xc))  
        {
            ch='1';
            break;
        }
        if((xa>=xb)&&(xc>=xb)) if((xz>=xb)&&(xz<=xa)&&(xz<=xd)&&(xz>=xc))  
        {
            ch='1';
            break;
        }
        if((xb>=xa)&&(xc>=xd)) if((xz<=xb)&&(xz>=xa)&&(xz>=xd)&&(xz<=xc))  
        {
            ch='1';
            break;
        }
        if((xb>=xa)&&(xd>=xc)) if((xz<=xb)&&(xz>=xa)&&(xz<=xd)&&(xz>=xc))  
        {
            ch='1';
            break;
        }
        xa+=x;
        ya+=y;
        xb+=x;
        yb+=y;
        }
        result[i]=ch;
    }
    cout<<result;
    cout<<"\n";
    return 0;
}
