#include <bits/stdc++.h>

using namespace std;

int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

    int t;
    cin >> t;
    int rez[t];
    bool res[t];

    for(int o = 0; o < t; o++) {
        int n,m;
        cin >> n >> m;
        long long a[n],b[m],x,mini,ods;

        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);

        for(int i = 0; i < n-1; ++i) {
            long long temp = a[i+1] - a[i];
            if(i == 0) {
                mini = temp;
                ods = a[i]%mini;
            }
            else if(temp < mini) {
                mini = temp;
                ods = a[i]%mini;
            }
        }

        for(int i = 0; i < n-1; ++i) {
            long long temp = a[i+1] - a[i];
            if(temp % mini != ods) {
                mini = __gcd(mini,temp);
                ods = a[i]%mini;
                if(mini == 1) {
                    res[o] = false;
                    goto kraj;
                }
            }
        }

        for(int i = 0; i < m; ++i) {
            if(b[i] % mini == ods) {
                res[o] = false;
                goto kraj;
            }
        }

        res[o] = true;
        kraj: ;
    }

    for(int o = 0; o < t; o++) {
        cout << res[o] << endl;
    }


    return 0;
}