#include <bits/stdc++.h>

using namespace std;

int main()
{
    int t,n,m;
    cin>>t;
    int resenja[t];
    for(int i=0;i<t;i++)
    {
        cin>>n>>m;
        int long long nizicN[n],nizicM[m];
        for(int j=0;j<n;j++)
        {
            cin>>nizicN[j];
        }
        for(int j=0;j<m;j++)
        {
            cin>>nizicM[j];
        }
        sort(nizicN, nizicN + n);
        sort(nizicM, nizicM + m);
        int k=nizicN[1]-nizicN[0];
        for(int j=0;j<n-2;j++)
        {
            if(nizicN[j+2]-nizicN[j+1]<k)
            {
                k=nizicN[j+2]-nizicN[j+1];
            }
        }
        int minN=nizicN[0],maxN=nizicN[n-1],minM=nizicM[0],maxM=nizicM[m-1];

        if(minN>minM)
        {
            for(int j=0;j>-1;j++)
            {
                minN=minN-k;
                nizicN[n]=minN;
                n=n+1;
                if(minN<=minM)
                {
                    break;
                }
            }
        }
        if(maxN<maxM)
        {
            for(int j=0;j>-1;j++)
            {
                maxN=maxN+k;
                nizicN[n]=maxN;
                n=n+1;
                if(maxN>=maxM)
                {
                    break;
                }
            }
        }
        int p=0;
        for(int j1=0;j1<m;j1++)
        {
            for(int j2=0;j2<n;j2++)
            {
                if(nizicM[j1]==nizicN[j2])
                {
                    resenja[i]=0;
                    p=1;
                    break;
                }
            }
        }
        if(p==0)
        {
            resenja[i]=1;
        }
    }
    for(int i=0;i<t;i++)
    {
        cout<<resenja[i]<<endl;
    }
    return 0;
}