#include<iostream>
using namespace std;
int gcd(int a, int b)
{
    if(a==0) return b;
    if(a<0) return gcd(-a, b);
    if(b<0) return gcd(a, -b);
    if(a<b) return gcd(b, a);
    if(b==1) return 1;
    return gcd(a%b, b);
}
bool resi()
{
    int n, m;
    cin>>n>>m;
    int x;
    int rem;
    int a, b, c;
    for(int i=2; i<n; i++)
    {
        if(i==2)
        {
            cin>>a>>b>>c;
            x=gcd(b-a, c-b);
        }
        else
        {
            cin>>a;
            x=gcd(x, a-c);
            c=a;
        }
    }
    rem=c%x;
    bool k=true;
    for(int i=0; i<m; i++)
    {
        cin>>a;
        if(k&&(a-rem<=0||(a-rem)%x==0)) k=false;
    }
    return k;
}
int main()
{
    int t;
    cin>>t;
    for(int i=0; i<t; i++)
    {
        if(resi()) cout<<1<<endl;
        else cout<<0<<endl;
    }
}