#include <iostream>

using namespace std;
long long nzd(long long  a,long long b)
{
    if(a%b==0)
    return b;
    else return nzd(b,a%b);
}
int T,n,m;
int main()
{
    long long x=0,pomoc1,pomoc2;
    cin>>T;
    while(T--)
    {
        pomoc1=0,pomoc2=0;
        cin>>n>>m;
        for(int i=0;i<n;i++)
        {
            if(pomoc1==0)
            {
                cin>>pomoc1;
            }
            else if(pomoc2==0)
            {
                cin>>pomoc2;
                x=pomoc2-pomoc1;
            }
            else
            {
                pomoc1=pomoc2;
                cin>>pomoc2;
                if((pomoc2-pomoc1)%x!=0)
                {
                    x=nzd(pomoc2-pomoc1,x);
                }
            }
        }
        cout<<"x je "<<x<<endl;
        for(int i=0;i<m;i++)
        {
            cin>>pomoc2;
            if((pomoc2-pomoc1)%x==0)
                i=m;
        }
        if((pomoc2-pomoc1)%x==0)
            cout<<0<<endl;
        else
            cout<<1<<endl;
    }
    return 0;
}