Vitaly and Advanced Useless Algorithms solution codeforces – The course consists of nn tasks. Vitaly calculated that he has aiai hours to do the task ii from the day he enrolled in the course. That is, the deadline before the ii-th task is aiai hours. The array aa is sorted in ascending order, in other words, the job numbers correspond to the order in which the assignments are turned in.

Vitaly and Advanced Useless Algorithms solution codeforces

Vitaly enrolled in the course Advanced Useless Algorithms. The course consists of nn tasks. Vitaly calculated that he has aiai hours to do the task ii from the day he enrolled in the course. That is, the deadline before the ii-th task is aiai hours. The array aa is sorted in ascending order, in other words, the job numbers correspond to the order in which the assignments are turned in.

Vitaly does everything conscientiously, so he wants to complete each task by 100100 percent, or more. Initially, his completion rate for each task is 00 percent.

Vitaly has mm training options, each option can be used not more than once. The iith option is characterized by three integers: ei,tiei,ti and pipi. If Vitaly uses the iith option, then after titi hours (from the current moment) he will increase the progress of the task eiei by pipi percent.

Vitaly and Advanced Useless Algorithms solution codeforces

For example, let Vitaly have 33 of tasks to complete. Let the array aa have the form: a=[5,7,8]a=[5,7,8]. Suppose Vitaly has 55 of options: [e1=1,t1=1,p1=30][e1=1,t1=1,p1=30][e2=2,t2=3,p2=50][e2=2,t2=3,p2=50][e3=2,t3=3,p3=100][e3=2,t3=3,p3=100][e4=1,t4=1,p4=80][e4=1,t4=1,p4=80][e5=3,t5=3,p5=100][e5=3,t5=3,p5=100].

Then, if Vitaly prepares in the following way, he will be able to complete everything in time:

  • Vitaly chooses the 44-th option. Then in 11 hour, he will complete the 11-st task at 8080 percent. He still has 44 hours left before the deadline for the 11-st task.
  • Vitaly chooses the 33-rd option. Then in 33 hours, he will complete the 22-nd task in its entirety. He has another 11 hour left before the deadline for the 11-st task and 44 hours left before the deadline for the 33-rd task.
  • Vitaly chooses the 11-st option. Then after 11 hour, he will complete the 11-st task for 110110 percent, which means that he will complete the 11-st task just in time for the deadline.
  • Vitaly chooses the 55-th option. He will complete the 33-rd task for 22 hours, and after another 11 hour, Vitaly will complete the 33-rd task in its entirety.

Thus, Vitaly has managed to complete the course completely and on time, using the 44 options.

Help Vitaly — print the options for Vitaly to complete the tasks in the correct order. Please note: each option can be used not more than once. If there are several possible answers, it is allowed to output any of them.

Input

The first line of input data contains an integer TT (1T1041≤T≤104) —the number of input test cases in the test.

The descriptions of the input test case follow.

The first line of each test case description contains two integers nn and mm (1n,m1051≤n,m≤105) —the number of jobs and the number of training options, respectively.

The next line contains nn numbers a1,a2,,ana1,a2,…,an (1ai1091≤ai≤109) — the time before the deadline of job ii. The array values — are non-decreasing, that is a1a2ana1≤a2≤⋯≤an.

The following mm lines contain triples of numbers ei,ti,piei,ti,pi (1ein1≤ei≤n1ti1091≤ti≤1091pi1001≤pi≤100) — if Vitaly chooses this option, then after titi hours he will increase the progress of the task eiei by pipi percent. The options are numbered from 11 to mm in order in the input data.

It is guaranteed that the sum of n+mn+m on all test cases does not exceed 21052⋅105.

Output

For each test case, print on the first line the number kk, meaning that for kk of options, Vitaly will be able to complete each task by 100100 percent or more on time. The options should not be repeated. Or print -1 if Vitaly is unable to complete all tasks in time.

If there is an answer, on the next line print kk of different integers from 11 to mm — the numbers of the options in the order you want. If there is more than one answer, it is allowed to print any of them.

Examples

input

Copy Vitaly and Advanced Useless Algorithms solution codeforces

5 
3 5
5 7 8
1 1 30
2 3 50
2 3 100
1 1 80
3 3 100
1 5
51
1 36 91
1 8 40
1 42 83
1 3 45
1 13 40
2 9
9 20
2 8 64
2 7 64
1 20 56
2 8 76
2 20 48
1 2 89
1 3 38
2 18 66
1 7 51
3 2
7 18 33
1 5 80
3 4 37
2 5
569452312 703565975
1 928391659 66
1 915310 82
2 87017081 92
1 415310 54
2 567745964 82

output

Copy Vitaly and Advanced Useless Algorithms solution codeforces

4
1 4 3 5 
3
2 4 5 
4
6 7 1 2 
-1
4
2 4 3 5 

input

Copy
3
3 9
20 31 40
1 9 64
3 17 100
3 9 59
3 18 57
3 20 49
2 20 82
2 14 95
1 8 75
2 16 67
2 6
20 36
2 2 66
2 20 93
1 3 46
1 10 64
2 8 49
2 18 40
1 1
1000000000
1 1000000000 100

output

Copy Vitaly and Advanced Useless Algorithms solution codeforces

-1
4
3 4 1 5 
1
1


For Solution

Click Here

Leave a Comment