def main(): import sys input = sys.stdin.read().split() ptr = 0 N = int(input[ptr]) ptr += 1 K = int(input[ptr]) ptr += 1 A = list(map(int, input[ptr:ptr+N])) ptr += N seen = {} current_step = 0 while current_step < K: key = tuple(A) if key in seen: pre = seen[key] cycle_length = current_step - pre rem = K - current_step rem = rem % cycle_length # Simulate rem steps from the current state for _ in range(rem): m = A[0] + 1 if m > len(A): m = len(A) if m == 0: continue first = A[:m] rotated = first[1:] + [first[0]] A = rotated + A[m:] current_step += 1 break else: seen[key] = current_step current_step += 1 m = A[0] + 1 if m > len(A): m = len(A) if m == 0: continue first = A[:m] rotated = first[1:] + [first[0]] A = rotated + A[m:] print(' '.join(map(str, A))) if __name__ == "__main__": main()