You are given a sequence A, A, ..., A[N] . ( |A[i]| ≤ 2*10^9, 1 ≤ N ≤ 100000 ). A query is defined as follows:
(L,R,V) : find the smallest number of A[i] such that L<=i<=R and A[i]>V, if not exist, output
Given M queries, your program must output the results of these queries.
The first line contains a single integer T, the number of test cases.
For each case, there are two integers N and M (1<= N, M <=100000).
The next line contain N elements.
A1 A2 … AN
The next M lines contain the operation in following form.
L1 R1 V1
L2 R2 V2
LM RM VM