T = gets.to_i MAX_P = 5 * 10 ** 6 is_prime = Array.new(MAX_P + 1, true) 2.upto(MAX_P) do |n| next if !is_prime[n] v = n while v < MAX_P v += n is_prime[v] = false end end T.times do a, pv = gets.split.map(&:to_i) if is_prime[pv] if a.gcd(pv) == 1 puts 1 else puts 0 end else puts -1 end end