We have a sequence of N \times K integers: X=(X_0,X_1,\cdots,X_{N \times K-1}). Its elements are represented by another sequence of N integers: A=(A_0,A_1,\cdots,A_{N-1}). For each pair i, j (0 \leq i \leq K-1,\ 0 \leq j \leq N-1), X_{i \times N + j}=A_j holds.

Snuke has an integer sequence s, which is initially empty. For each i=0,1,2,\cdots,N \times K-1, in this order, he will perform the following operation:

* If s does not contain X_i: add X_i to the end of s.
* If s does contain X_i: repeatedly delete the element at the end of s until s no longer contains X_i. Note that, in this case, we do not add X_i to the end of s.



Find the elements of s after Snuke finished the operations.

Constraints

* 1 \leq N \leq 2 \times 10^5
* 1 \leq K \leq 10^{12}
* 1 \leq A_i \leq 2 \times 10^5
* All values in input are integers.

Input

Input is given from Standard Input in the following format:


N K
A_0 A_1 \cdots A_{N-1}


Output

Print the elements of s after Snuke finished the operations, in order from beginning to end, with spaces in between.

Examples

Input

3 2
1 2 3


Output

2 3


Input

5 10
1 2 3 2 3


Output

3


Input

6 1000000000000
1 1 2 2 3 3


Output




Input

11 97
3 1 4 1 5 9 2 6 5 3 5


Output

9 2 6
import os
import sys

if os.getenv("LOCAL"):
    sys.stdin = open("_in.txt", "r")

sys.setrecursionlimit(2147483647)
INF = float("inf")
IINF = 10 ** 18
MOD = 10 ** 9 + 7

N, K = list(map(int, sys.stdin.readline().split()))
A = list(map(int, sys.stdin.readline().split()))

# 次 A[j] が取り除かれるまでの操作回数
counts = [0] * N
D = {}
for i, a in enumerate(A + A):
    if a not in D:
        D[a] = i
    else:
        if D[a] < N:
            counts[D[a]] = i - D[a]
            D[a] = i

circle = counts[0] + 1
i = (counts[0] + 1) % N
while i != 0:
    circle += counts[i] + 1
    i = (i + counts[i] + 1) % N
rem = N * K % circle

ans = []

i = 0
while rem > 0:
    while rem - counts[i] > 0:
        rem -= counts[i] + 1
        i = (i + counts[i] + 1) % N
    if rem:
        ans.append(A[i])
        rem -= 1
        i = (i + 1) % N

if ans:
    print(*ans)

# hist = []
# stack = []
# for _ in range(K):
#     for a in A:
#         if a in stack:
#             while a in stack:
#                 stack.pop()
#         else:
#             stack.append(a)
#
#         hist.append(a)
#         print(hist)
#         print('', stack)
#         print()
