Grammy 有一个长度为 $n$ 的序列 $A$。 请找出一个排列 $P$,使得对于所有的 $i$,都有 $P_i \neq A_i$。
输入格式
输入包含多组测试数据。 第一行包含一个整数 $T$ ($1 \le T \le 100\,000$),表示测试数据的组数。 对于每组测试数据: 第一行包含一个整数 $n$ ($1 \le n \le 100\,000$)。 第二行包含 $n$ 个整数 $A_1, A_2, \dots, A_n$ ($1 \le A_i \le n$)。 保证所有测试数据的 $n$ 之和不超过 $500\,000$。
输出格式
对于每组测试数据: 如果不存在这样的排列,输出一行 "NO"。 否则,第一行输出 "YES",第二行输出 $n$ 个整数,表示排列 $P_1, P_2, \dots, P_n$。
样例
样例输入 1
3 3 3 3 3 3 3 2 1 6 1 1 4 5 1 4
样例输出 1
NO YES 1 3 2 YES 4 5 1 2 3 6