배열의 원소 중 0이 아니면서 그 앞에 있는 모든 원소보다 엄격하게 큰 경우, 그 원소를 아름다운 원소라고 한다. 배열의 아름다움은 배열에 있는 아름다운 원소의 개수로 정의한다.
길이 $n$의 순열이 주어진다. 아름다운 원소 중 일부를 0으로 바꾸어 배열의 아름다움을 최대화하고자 한다. 연산 후에 일부 원소가 아름다워질 수 있으며, 그 원소는 이후 연산의 대상이 될 수 있다.
배열을 수정하는 것은 힘들기 때문에, 가능한 최소한의 연산 횟수로 배열의 아름다움을 최대화하기로 결정했다.
여러 개의 해가 존재한다면, 아무거나 출력한다.
입력
여러 개의 테스트 케이스가 주어진다.
첫 번째 줄에는 테스트 케이스의 개수를 나타내는 정수 $t$ ($1 \leq t \leq 10^6$)가 주어진다. 각 테스트 케이스에 대해:
첫 번째 줄에는 순열의 크기를 나타내는 정수 $n$ ($1 \leq n \leq 10^6$)이 주어진다.
다음 줄에는 순열의 원소를 나타내는 $n$개의 정수 $p_i$ ($1 \leq p_i \leq n$)가 주어진다. 하나의 테스트 케이스에서 모든 $p_i$는 서로 다름이 보장된다.
모든 테스트 케이스에 대해 $\sum n \leq 10^6$임이 보장된다.
출력
각 테스트 케이스에 대해:
첫 번째 줄에는 수정된 배열의 최대 아름다움 $b$와 최소 연산 횟수 $c$를 나타내는 두 개의 정수가 주어진다.
두 번째 줄에는 연산 순서를 나타내는 $c$개의 정수 $o_i$가 주어진다. 연산 $o_i$는 $o_i$번째 원소를 0으로 바꾸는 것을 의미한다. $i$번째 연산을 수행하기 전에 $o_i$번째 원소가 아름다운 상태임을 보장해야 한다.
여러 개의 해가 존재한다면, 아무거나 출력한다.
예제
입력 1
2 3 3 1 2 3 1 2 3
출력 1
2 1 1 3 0