#include <bits/stdc++.h>

using namespace std;

int main()
{
    int t;
    cin>>t;
    //bool t1[t];
    for(int i=0;i<t;i++){
        int n,m;
        cin>>n>>m;
        long long a[n], b[m];
        for(int i=0;i<n;i++){
            cin>>a[i];
        }
        for(int i=0;i<m;i++){
            cin>>b[i];
        }
        sort(a,a+n);
        sort(b,b+m);
        long long x = a[1]-a[0];
        bool vazi = true;
        for(int i=1;i<n;i++){
            if((a[i]-a[i-1])%x!=0){
                vazi=false;
                break;
            }
        }
        if(vazi){
            for(int i=0;i<m;i++){
                if((a[1]-b[i])%x==0){
                    vazi=false;
                    break;
                }
            }
        }
        if(vazi){}
        else{
            long long y = 2;
            while(y<=x/2){
                if(x%y==0){
                    vazi = true;
                    for(int i=1;i<n;i++){
                        if((a[i]-a[i-1])%y!=0){
                            vazi=false;
                            y++;
                            break;
                        }
                    }
                    if(vazi){
                        for(int i=0;i<m;i++){
                            if((a[1]-b[i])%y==0){
                                vazi=false;
                                y++;
                                break;
                            }
                        }
                    }
                    if(vazi){break;}
                }
                else{y++;}
            }
        }
        if(vazi){cout<<1<<endl;}
        else{cout<<0<<endl;}
    }
}