陶瓷艺术家 Maria 和 João 正在波尔图开设一家小型 azulejo 商店。Azulejos 是葡萄牙著名的精美瓷砖。Maria 和 João 想要制作一个吸引人的橱窗展示,但由于店面空间有限,他们必须将瓷砖样品排列在同一个货架的两行上。João 的每一块瓷砖后面都恰好有一块 Maria 的瓷砖,而 Maria 的每一块瓷砖前面也恰好有一块 João 的瓷砖。这些手工制作的瓷砖大小各异,重要的是,后排的每一块瓷砖都必须比它前面的瓷砖更高,以便路人都能看到。为了方便顾客,每一行瓷砖都必须按价格从左到右以非递减顺序排列。价格相同的瓷砖可以按任何顺序排列,前提是必须满足上述可见性条件。
你的任务是找到一种满足这些约束的每行瓷砖排列方式,或者确定不存在这样的排列。
输入格式
输入的第一行包含一个整数 $n$ ($1 \le n \le 5 \cdot 10^5$),表示每行瓷砖的数量。接下来的四行每行包含 $n$ 个整数;前两行表示后排瓷砖,后两行表示前排瓷砖。每行的瓷砖根据输入顺序编号为 $1$ 到 $n$。每对中的第一行包含 $n$ 个整数 $p_1, \dots, p_n$ ($1 \le p_i \le 10^9$),其中 $p_i$ 是该行第 $i$ 号瓷砖的价格。每对中的第二行包含 $n$ 个整数 $h_1, \dots, h_n$ ($1 \le h_i \le 10^9$),其中 $h_i$ 是该行第 $i$ 号瓷砖的高度。
输出格式
如果存在有效的排列,输出两行 $n$ 个整数,每行都是 $1$ 到 $n$ 的一个排列。第一行表示后排瓷砖的排列顺序,第二行表示前排瓷砖的排列顺序。如果存在多组满足约束的排列,输出其中任意一组即可。如果不存在这样的排列,输出 impossible。
样例
样例输入 1
4 3 2 1 2 2 3 4 3 2 1 2 1 2 2 1 3
样例输出 1
3 2 4 1 4 2 1 3
样例输入 2
2 1 2 2 3 2 8 2 1
样例输出 2
impossible