n = int(input())
m = int(input())
a = [0] + list(map(int, input().split()))
flag, flagx = 0, 0
st = [False for i in range(n+1)]
def dfs(step):
global flag, flagx
if flagx == 1: return
if step > n:
flag += 1
if flag == m + 1:
print(*a[1:])
flagx = 1
return
for i in range(1, n+1):
if flag == 0:
i = a[step]
if st[i] == 0:
st[i] = 1
a[step] = i
dfs(step+1)
st[i] = 0
dfs(1)