Problem: Eulampius has created a game with the following rules:
- there are two players in the game: a human and a computer;
- the game lasts for no more than rounds. Initially both players have points. In the -th round the human gains points, and the computer gains points. The points are gained simultaneously;
- the game ends when one of the players gets or more points. This player loses the game. If both players get or more points simultaneously, both lose;
- if both players have less than points after rounds, the game ends in a tie;
- after each round the human can push the "Reset" button. If the human had points, and the computer had points before the button is pushed (of course, and ), then after the button is pushed the human will have points, and the computer will have points. E. g. the push of "Reset" button transforms the state into the state , and the state into the state .
Eulampius asked his friend Polycarpus to test the game. Polycarpus has quickly revealed that amounts of points gained by the human and the computer in each of rounds are generated before the game and stored in a file. In other words, the pushes of the "Reset" button do not influence the values and , so sequences and are fixed and known in advance.
Polycarpus wants to make a plan for the game. He would like to win the game pushing the "Reset" button as few times as possible. Your task is to determine this minimal number of pushes or determine that Polycarpus cannot win.
Input Format: The first line of the input contains one integer () — the number of test cases. Then the test cases follow.
The first line of each test case contains two integers and (, ) — the maximum possible number of rounds in the game and the number of points, after reaching which a player loses, respectively.
The second line of each test case contains integers (, where is the amount of points the human gains in the -th round.
The third line of each test case contains integers (), where is the amount of points the computer gains in the -th round.
The sum of over all test cases in the input does not exceed .
Output Format: Print the answers for all test cases in the order they appear in the input.
If Polycarpus cannot win the game, then simply print one line "-1" (without quotes). In this case, you should not output anything else for that test case. Otherwise, the first line of the test case answer should contain one integer — the minimum possible number of "Reset" button pushes, required to win the game. The next line should contain distinct integers () — the numbers of rounds, at the end of which Polycarpus has to press the "Reset" button, in arbitrary order. If then either leave the second line of the test case answer empty, or do not print the second line at all.
If there are several possible solutions, print any of them.
Note: In the second test case, if the human pushes the "Reset" button after the second and the fourth rounds, the game goes as follows:
- after the first round the human has points, the computer — points;
- after the second round the human has points, the computer — points;
- the human pushes the "Reset" button and now he has points and the computer — points;
- after the third round the human has points, the computer — points;
- after the fourth round the human has points, the computer — points;
- the human pushes "Reset" button again, after it he has point, the computer — points;
- after the fifth round the human has points, the computer — points;
- after the sixth round the human has points, the computer — points;
- after the seventh round the human has points, the computer — points;
- after the eighth round the human has points, the computer — points;
- the human wins, as the computer has or more points and the human — strictly less than points.