using System;

namespace Prijatelji

{
    class Program
    {
        struct Ucenik
        {
            public long n;
            public long m;
            public long[] nizN;
            public long[] nizM;

        }
        static void Sortiraj(ref Int64[] niz)
        {
            int k = 0;
            for (int i = 0; i < niz.Length; i++)
            {
                for (int j = 1; j < niz.Length - k; j++)
                {
                    if (niz[i] > niz[i + j])
                    {
                        long p = niz[i];
                        niz[i] = niz[i + 1];
                        niz[i + 1] = p;
                    }
                }
                k++;
            }
        }
        static void Skrati(ref long a)
        {
            for (int i = 2; i < a; i++)
            {
                while (a % i == 0 && a != i)
                {
                    a = a / i;
                }
            }
        }
        static int Uporedi(long[] niz, long[] niz2)
        {
            long p = niz[1] - niz[0];
            int moze1 = 1;
            int moze2 = 1;
            Skrati(ref p);
            for (int i = 1; i < niz.Length - 1; i++)
            {
                long b = niz[i + 1] - niz[i];
                Skrati(ref b);
                if (p != b)
                {
                    moze1 = 0;
                }
            }
            for (int i = 0; i < niz2.Length; i++)
            {
                long b = Math.Abs(niz2[i] - niz[0]);
                Skrati(ref b);
                if (p == b)
                {
                    moze2 = 0;
                }

            }


            if (moze1 * moze2 == 1)
            {
                return 1;
            }
            else
                return 0;
        }
        static void Main(string[] args)
        {
            Console.WriteLine("Upiši T");
            int t = int.Parse(Console.ReadLine());
            int[] resenja = new int[t];
            Ucenik[] niz = new Ucenik[t];
            for (int i = 0; i < t; i++)
            {

                Console.WriteLine("Upisi N pa M " + (i + 1) + "-og ucenika");
                string[] s = Console.ReadLine().Split(" ");
                niz[i].n = int.Parse(s[0]);
                niz[i].m = int.Parse(s[1]);
                niz[i].nizN = new long[niz[i].n];
                niz[i].nizM = new long[niz[i].m];
                Console.WriteLine("Upisi godine u kojoj su prihvacene zalbe" + (i + 1) + "-og ucenika");
                s = Console.ReadLine().Split(" ");
                for (int j = 0; j < s.Length; j++)
                {
                    niz[i].nizN[j] = long.Parse(s[j]);
                }
                Console.WriteLine("Upisi godine u kojoj nisu prihvacene zalbe" + (i + 1) + "-og ucenika");
                s = Console.ReadLine().Split(" ");
                for (int j = 0; j < s.Length; j++)
                {
                    niz[i].nizM[j] = long.Parse(s[j]);
                }
                Sortiraj(ref niz[i].nizN);
                resenja[i] = (Uporedi(niz[i].nizN, niz[i].nizM));

            }
            for (int i = 0; i < t; i++)
            {
                Console.WriteLine(resenja[i]);
            }
        }
    }
}