def solve(): N = int(input()) A = list(map(lambda x: x - 1, map(int, input().split()))) B = list(map(lambda x: x - 1, map(int, input().split()))) B_inv = [-1] * N for i in range(N): B_inv[B[i]] = i C = [B_inv[A[i]] for i in range(N)] D = list(range(N)) # print(C) # print(D) ans = [[0] * N for _ in range(N + 1)] ans[0] = C for i in range(N): for j in range(N): ans[i + 1][j] = ans[i][j] for j in range(i % 2, N - 1, 2): if ans[i][j] > ans[i][j + 1]: ans[i + 1][j] = ans[i][j + 1] ans[i + 1][j + 1] = ans[i][j] if ans[-1] == list(range(N)): fans = [[B[ans[i][j]] + 1 for j in range(N)] for i in range(N + 1)] for a in fans: print(*a) else: print(-1) # T = int(input()) T = 1 for _ in range(T): solve()