import sys
input = sys.stdin.buffer.readline

def sieve(n):
    f = []
    is_prime = [True]*(n+1)
    is_prime[0] = False
    is_prime[1] = False

    for i in range(2, int(n**0.5)+1):
        if not is_prime[i]:
            continue
        for j in range(i*2, n+1, i):
            is_prime[j] = False
    for i in range(n+1):
        if is_prime[i]:
            f.append(i)
    return f

s = sieve(5*10**6)
s = set(s)

t = int(input())
for _ in range(t):
    a, p = map(int, input().split())
    if p in s:
        if a%p != 0:
            print(1)
        else:
            print(0)
    else:
        print(-1)