#P9879. Congruences

Congruences

Congruences

Problem Description

Your task is to solve a system of mm congruences, each one represented in the following format:

$$x ^ {p_i} \equiv q_i \pmod n \quad (i = 1, 2, ..., m) $$

Here, pip_i refers to pairwise distinct prime numbers, nn is the product of all pip_i (i.e., n=i=1mpin = \prod_{i=1}^{m} p_i), and qiq_i is an integer within the range of [0,n)[0, n). The goal is to find the smallest positive integer xx that fulfills all given congruences. If there is no solution exists for the given system of congruences, output 1-1.

Input

The first line contains a positive integer TT (1T1041 \le T \le 10^4), indicating the number of test cases. For each test case, the first line contains a positive integer mm, and each of the following mm lines contains two integers pip_i and qiq_i (2pi10182\le p_i\le 10^{18}, 0qi<n0\le q_i < n). It is guaranteed that n=i=1mpi1018n = \prod_{i=1}^{m} p_i \le 10^{18}.

Output

For each test case, output a single positive integer xx representing the answer or output 1-1.

Sample Input

3
2
3 5
2 1
1
13 3
2
3 4
2 4

Sample Output

5
3
4

Hint

You can use __int128 in your C++ code.

Source

2023“钉耙编程”中国大学生算法设计超级联赛(8)