#P1753A1. Make Nonzero Sum (easy version)

Make Nonzero Sum (easy version)

Description

This is the easy version of the problem. The difference is that in this version the array can not contain zeros. You can make hacks only if both versions of the problem are solved.

You are given an array [a1,a2,an][a_1, a_2, \ldots a_n] consisting of integers 1-1 and 11. You have to build a partition of this array into the set of segments [l1,r1],[l2,r2],,[lk,rk][l_1, r_1], [l_2, r_2], \ldots, [l_k, r_k] with the following property:

  • Denote the alternating sum of all elements of the ii-th segment as sis_i: sis_i = aliali+1+ali+2ali+3+±aria_{l_i} - a_{l_i+1} + a_{l_i+2} - a_{l_i+3} + \ldots \pm a_{r_i}. For example, the alternating sum of elements of segment [2,4][2, 4] in array [1,0,1,1,1][1, 0, -1, 1, 1] equals to 0(1)+1=20 - (-1) + 1 = 2.
  • The sum of sis_i over all segments of partition should be equal to zero.

Note that each sis_i does not have to be equal to zero, this property is about sum of sis_i over all segments of partition.

The set of segments [l1,r1],[l2,r2],,[lk,rk][l_1, r_1], [l_2, r_2], \ldots, [l_k, r_k] is called a partition of the array aa of length nn if 1=l1r1,l2r2,,lkrk=n1 = l_1 \le r_1, l_2 \le r_2, \ldots, l_k \le r_k = n and ri+1=li+1r_i + 1 = l_{i+1} for all i=1,2,k1i = 1, 2, \ldots k-1. In other words, each element of the array must belong to exactly one segment.

You have to build a partition of the given array with properties described above or determine that such partition does not exist.

Note that it is not required to minimize the number of segments in the partition.

Each test contains multiple test cases. The first line contains the number of test cases tt (1t100001 \le t \le 10\,000). Description of the test cases follows.

The first line of each test case contains an integer nn (1n2000001 \le n \le 200\,000) — the length of the array aa.

The second line of each test case contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (aia_i is 1-1 or 11) — the elements of the given array.

It's guaranteed that the sum of nn over all test cases does not exceed 200000200\,000.

For each test case, if required partition does not exist, print 1-1. Otherwise, print an integer kk — the number of segments in the partition.

Then in the ii-th of the following kk lines print two integers lil_i and rir_i — description of the ii-th segment. The following conditions should be satisfied:

  • liril_i \le r_i for each ii from 11 to kk.
  • li+1=ri+1l_{i + 1} = r_i + 1 for each ii from 11 to (k1)(k - 1).
  • l1=1,rk=nl_1 = 1, r_k = n.

If there are multiple correct partitions of the array, print any of them.

Input

Each test contains multiple test cases. The first line contains the number of test cases tt (1t100001 \le t \le 10\,000). Description of the test cases follows.

The first line of each test case contains an integer nn (1n2000001 \le n \le 200\,000) — the length of the array aa.

The second line of each test case contains nn integers a1,a2,,ana_1, a_2, \ldots, a_n (aia_i is 1-1 or 11) — the elements of the given array.

It's guaranteed that the sum of nn over all test cases does not exceed 200000200\,000.

Output

For each test case, if required partition does not exist, print 1-1. Otherwise, print an integer kk — the number of segments in the partition.

Then in the ii-th of the following kk lines print two integers lil_i and rir_i — description of the ii-th segment. The following conditions should be satisfied:

  • liril_i \le r_i for each ii from 11 to kk.
  • li+1=ri+1l_{i + 1} = r_i + 1 for each ii from 11 to (k1)(k - 1).
  • l1=1,rk=nl_1 = 1, r_k = n.

If there are multiple correct partitions of the array, print any of them.

样例输入 1

4
4
1 1 1 1
6
-1 1 1 1 1 1
3
1 -1 1
1
1

样例输出 1

1
1 4
2
1 3
4 6
-1
-1

Note

In the first test case we can build a partition of one segment of length 44. The sum of this segment will be equal to 11+11=01 - 1 + 1 - 1 = 0.

In the second test case we can build a partition of two segments of length 33. The sum of the first segment will be equal to 11+1=1-1 -1 + 1 = -1, and the sum of the second segment: 11+1=11 - 1 + 1 = 1. So, the total sum will be equal to 1+1=0-1 + 1 = 0.

In the third and in the fourth test cases it can be proved that there are no required partition.