#P1250I. Show Must Go On

    ID: 5040 Type: RemoteJudge 5000ms 512MiB Tried: 0 Accepted: 0 Difficulty: (None) Uploaded By: Tags>binary searchbrute forcegreedyshortest paths*3100

Show Must Go On

No submission language available for this problem.

Description

The director of the famous dance show plans a tour. It is already decided that the tour will consist of up to mm concerts.

There are nn dancers in the troupe. Each dancer is characterized by her awkwardness: the awkwardness of the ii-th dancer is equal to aia_i.

The director likes diversity. For this reason, each concert will be performed by a different set of dancers. A dancer may perform in multiple concerts. For example, it is possible that a set of dancers performs in one concert and a subset of this set of dancers performs in another concert. The only constraint is that the same set of dancers cannot perform twice.

The director prefers the set with larger number of dancers over the set with smaller number of dancers. If two sets consist of the same number of dancers, then the director prefers the one which has smaller sum of awkwardness of dancers. If two sets of dancers are equal in size and total awkwardness, then the director does not have a preference which one is better.

A marketing study shows that viewers are not ready to come to a concert if the total awkwardness of all the dancers performing in the concert is greater than kk.

The director wants to find the best plan for mm concerts. He thinks to write down all possible sets of dancers; then get rid of the sets with total awkwardness greater than kk. The remaining sets of dancers will be sorted according to his preference. The most preferred set of dancers will give the first concert, the second preferred set — the second concert and so on until the mm-th concert. If it turns out that the total number of valid sets is less than mm, then the total number of concerts will be equal to the number of valid sets.

It turns out that the director delegated finding the plan to you! Please, notice that there might be several acceptable plans due to the fact that the director does not have a preference over sets of dancers with the same size and total awkwardness. In this case any of these plans is good enough. For each concert find the number of dancers and the total awkwardness of the set performing. Also, for the last concert find its set of dancers.

The first line contains one integer tt (1t1051 \le t \le 10^5) — the number of test cases in the input. Then the test cases follow.

Each test case begins with a line containing three integers nn, kk and mm (1n1061 \le n \le 10^6, 1k10181 \le k \le 10^{18}, 1m1061 \le m \le 10^6) — the total number of dancers, the maximum acceptable awkwardness of a set of dancers and the maximum number of concerts, respectively.

The following line contains nn integers a1,a2,,ana_1, a_2, \dots, a_n (1ai10121 \le a_i \le 10^{12}), where aia_i is the awkwardness of the ii-th dancer.

The sum of the values of nn over all test cases in the input does not exceed 10610^6. Similarly, the sum of the values of mm over all test cases in the input does not exceed 10610^6.

Print the answers to all test cases in the input.

If the troupe cannot give concerts at all, then simply print one line "0". In this case, you should not print anything else.

If the troupe gives a positive number of concerts rr (rr is equal to the minimum of mm and the total number of valid sets), then first print the value of rr, then rr lines: the jj-th line should contain two integers sjs_j and tjt_j — the number of dancers in the jj-th concert and the total awkwardness of the dancers performing in the jj-th concert. Complete the output to a test case with a line that describes the last set: print exactly srs_r distinct integers from 11 to nn — the numbers of the dancers who will perform at the rr-th (last) concert, in any order. If there are several answers, print any of them.

Input

The first line contains one integer tt (1t1051 \le t \le 10^5) — the number of test cases in the input. Then the test cases follow.

Each test case begins with a line containing three integers nn, kk and mm (1n1061 \le n \le 10^6, 1k10181 \le k \le 10^{18}, 1m1061 \le m \le 10^6) — the total number of dancers, the maximum acceptable awkwardness of a set of dancers and the maximum number of concerts, respectively.

The following line contains nn integers a1,a2,,ana_1, a_2, \dots, a_n (1ai10121 \le a_i \le 10^{12}), where aia_i is the awkwardness of the ii-th dancer.

The sum of the values of nn over all test cases in the input does not exceed 10610^6. Similarly, the sum of the values of mm over all test cases in the input does not exceed 10610^6.

Output

Print the answers to all test cases in the input.

If the troupe cannot give concerts at all, then simply print one line "0". In this case, you should not print anything else.

If the troupe gives a positive number of concerts rr (rr is equal to the minimum of mm and the total number of valid sets), then first print the value of rr, then rr lines: the jj-th line should contain two integers sjs_j and tjt_j — the number of dancers in the jj-th concert and the total awkwardness of the dancers performing in the jj-th concert. Complete the output to a test case with a line that describes the last set: print exactly srs_r distinct integers from 11 to nn — the numbers of the dancers who will perform at the rr-th (last) concert, in any order. If there are several answers, print any of them.

Samples

Sample Input 1

3
7 13 10
3 1 5 1 8 2 13
2 10 1
12 12
3 32 100000
2 1 5

Sample Output 1

10
5 12
4 7
4 9
4 10
4 11
4 11
4 12
4 13
3 4
3 5
2 4 1 
0
7
3 8
2 3
2 6
2 7
1 1
1 2
1 5
3