#P1848C. Vika and Price Tags

Vika and Price Tags

No submission language available for this problem.

Description

Vika came to her favorite cosmetics store "Golden Pear". She noticed that the prices of nn items have changed since her last visit.

She decided to analyze how much the prices have changed and calculated the difference between the old and new prices for each of the nn items.

Vika enjoyed calculating the price differences and decided to continue this process.

Let the old prices be represented as an array of non-negative integers aa, and the new prices as an array of non-negative integers bb. Both arrays have the same length nn.

In one operation, Vika constructs a new array cc according to the following principle: ci=aibic_i = |a_i - b_i|. Then, array cc renamed into array bb, and array bb renamed into array aa at the same time, after which Vika repeats the operation with them.

For example, if a=[1,2,3,4,5,6,7]a = [1, 2, 3, 4, 5, 6, 7]; b=[7,6,5,4,3,2,1]b = [7, 6, 5, 4, 3, 2, 1], then c=[6,4,2,0,2,4,6]c = [6, 4, 2, 0, 2, 4, 6]. Then, a=[7,6,5,4,3,2,1]a = [7, 6, 5, 4, 3, 2, 1]; b=[6,4,2,0,2,4,6]b = [6, 4, 2, 0, 2, 4, 6].

Vika decided to call a pair of arrays aa, bb dull if after some number of such operations all elements of array aa become zeros.

Output "YES" if the original pair of arrays is dull, and "NO" otherwise.

Each test consists of multiple test cases. The first line contains a single integer tt (1t1041 \le t \le 10^4) — the number of test cases. The description of the test cases follows.

The first line of each test case contains a single integer nn (1n1051 \le n \le 10^5) — the number of items whose prices have changed.

The second line contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (0ai1090 \le a_i \le 10^9) — the old prices of the items.

The third line contains nn integers b1,b2,,bnb_1, b_2, \ldots, b_n (0bi1090 \le b_i \le 10^9) — the new prices of the items.

It is guaranteed that the sum of nn over all test cases does not exceed 10510^5.

For each test case, output "YES" if the pair of price arrays is dull, and "NO" otherwise.

You can output each letter in any case (lowercase or uppercase). For example, the strings "yEs", "yes", "Yes", and "YES" will be accepted as a positive answer.

Input

Each test consists of multiple test cases. The first line contains a single integer tt (1t1041 \le t \le 10^4) — the number of test cases. The description of the test cases follows.

The first line of each test case contains a single integer nn (1n1051 \le n \le 10^5) — the number of items whose prices have changed.

The second line contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (0ai1090 \le a_i \le 10^9) — the old prices of the items.

The third line contains nn integers b1,b2,,bnb_1, b_2, \ldots, b_n (0bi1090 \le b_i \le 10^9) — the new prices of the items.

It is guaranteed that the sum of nn over all test cases does not exceed 10510^5.

Output

For each test case, output "YES" if the pair of price arrays is dull, and "NO" otherwise.

You can output each letter in any case (lowercase or uppercase). For example, the strings "yEs", "yes", "Yes", and "YES" will be accepted as a positive answer.

Sample Input 1

9
4
0 0 0 0
1 2 3 4
3
1 2 3
1 2 3
2
1 2
2 1
6
100 23 53 11 56 32
1245 31 12 6 6 6
7
1 2 3 4 5 6 7
7 6 5 4 3 2 1
3
4 0 2
4 0 2
3
2 5 2
1 3 4
2
6 1
4 2
2
0 0
0 3

Sample Output 1

YES
YES
NO
NO
YES
YES
NO
YES
YES

Note

In the first test case, the array aa is initially zero.

In the second test case, after the first operation a=[1,2,3],b=[0,0,0]a = [1, 2, 3], b = [0, 0, 0]. After the second operation a=[0,0,0],b=[1,2,3]a = [0, 0, 0], b = [1, 2, 3].

In the third test case, it can be shown that the array aa will never become zero.