#include <bits/stdc++.h>
using namespace std;

int main() {
	int t;
	scanf("%d", &t);
	for(int qt = 0; qt < t; qt++) {
		int n, m;
		scanf("%d%d", &n, &m);
		long long x[n], y[m];
		long long minx = LONG_LONG_MAX;
		
		for(int i = 0; i < n; i++) {
			scanf("%lld", &x[i]);
		}
		
		sort(x, x + n);
		
		for(int i = 0; i < n - 1; i++) { 
			minx = min(minx, x[i + 1] - x[i]);
		}
		
		bool flag = true;
		for(int i = 1; i < n; i++) {
			if(flag) flag = (x[i] - x[0]) % minx == 0 ? true : false;
		}
		
		for(int i = 0; i < m; i++) {
			scanf("%lld", &y[i]);
			if(flag) flag = (y[i] - x[0]) % minx == 0 ? false : true;
		}
		printf("%d\n", flag ? 1 : 0);
	}
}