#2549. 小根堆

小根堆

Description

左偏树一开始有NN个小根堆,每个堆都包含且仅包含一个数,它支持两种操作:

11 xx yy,将第xx个数和第yy个数所在的小根堆合并(若第xx个数或第yy个数已经被删除或两个数在同一个堆内,则无视此操作);

22 xx,输出第xx个数所在堆的最小值,并将其删除(若第xx个数已被删除,则输出1-1且无视删除操作)。

Format

Input

11行包含两个正整数NMN105M105N、M(N≤10^5,M≤10^5),分别表示开始时小根堆的个数和接下来的操作个数;第22行输入NN个正整数,其中第ii个正整数表示第ii个小根堆初始时包含的数;接下来的MM行,每行都包含2233个正整数,表示一个操作。

Output

对每个操作,都单行输出结果。

Samples

5 5
1 5 4 2 3
1 1 5
1 2 5
2 2
1 4 2
2 2
1
2

来源

P3377