#include <iostream>
#include <math.h>
#include <algorithm>
using namespace std;
 
int main(int argc, char** argv)
{
    int t, f;
    long long nzd, n, m, prvi, drugi, treci, cetvrti, odbijena;
    
    cin >> t;
    int ispis[t];
    
    for(int i = 0; i < t; i++)
    {
        f = 1;
        cin >> n >> m >> prvi >> drugi;
        
        if(n > 2)
        {
            cin >> treci;
            nzd = __gcd(abs(prvi - drugi), abs(drugi - treci));
            
            for(int j = 3; j < n; j++)
            {
                cin >> cetvrti;
                nzd = __gcd(nzd, abs(treci - cetvrti));
            }
        }
        else
        {
            nzd = abs(prvi - drugi);
        }
        
        for(int j = 0; j < m; j++)
        {
            cin >> odbijena;
            if((abs(prvi - odbijena) % nzd) == 0)
            {
                f=0;
            }
        }
        
        cout << f << endl;
    }

    return 0;
}