#P5002. 「长乐集训 2017 Day1」置换

「长乐集训 2017 Day1」置换

Description

定义一个置换 P P 的平方 Q Q 为对 [1,2,3,…,n−1,n] [1,2,3,\dots ,n - 1,n] 做两次该置换得到的排列,即 Qi=PPi Q_i = P_{P_i} 。

现在已知一个置换的平方,求该置换。

Input Format

第一行一个整数 n n 表示排列长度。

第二行 n n 个整数表示所求置换的平方。

Output Format

若有解则输出一行 n n 个数表示原置换 (任意一个) ,若无解输出 −1 -1 。

Sample

样例输入

4
2 1 4 3

样例输出

3 4 2 1

Hint

20% 20 \% 的数据,n≤10 n \leq 10

100% 100 \% 的数据,1≤n≤106 1 \leq n \leq 10 ^ 6