#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
#include <math.h>
void stampa(int N,int M,int A[],int B[]);
int main()
{
    int T,N,M,A[75000],B[75000],j,z,i;
    scanf("%d",&T);
    for(i=0;i<T;i++){
        scanf("%d",&N);
        scanf("%d",&M);

        for(j=0;j<N;j++)
            scanf("%d",&A[j]);
        for(z=0;z<M;z++)
            scanf("%d",&B[z]);
            stampa(N,M,A,B);
    }
    return 0;
}
void stampa(int N,int M,int A[],int B[]){
    int min=INT_MAX,r,i,j,k,pam;
    for(j=0;j<N-2;j++){
    for( i=0+j;i<N-1;i++){
        if (min>A[i]){
            min=A[i];
            pam=i;
            }
    }
    r=A[j];
    A[j]=A[pam];
    A[pam]=r;
    min=INT_MAX;
    }
   for(j=0;j<M-2;j++){
    for( i=0+j;i<M-1;i++){
        if (min>B[i]){
            min=B[i];
            pam=i;
            }
    }
    r=B[j];
    B[j]=B[pam];
    B[pam]=r;
    min=INT_MAX;
    }
    k=A[1]-A[0];
    for(i=1;i<N-1;i++){
      if ((A[i]-A[i+1])%k!=0){
        printf("0");
        return;
      }
    }
    for(i=0;i<M;i++){
        r=(abs(A[0]-B[i]));
           if(r%k==0){
            printf("0");
            return;
           }
    }
    printf("1");
}