N = int(input()) w = [i for i in range(1,N + 1)] count = 0 while True: q = [0 for i in range(N * 2)] if count & 1 == 0: for i, n in enumerate(w): q[i] = n else: for i, n in enumerate(w[1:]): q[i] = n print('?', ' '.join(map(str, q))) C = input().split(' ') if count & 1 == 0 and not '>' in C: break if count & 1 == 0: for i, c in enumerate(C): if 2 * i + 1 >= N: break if c == '>': w[2 * i], w[2 * i + 1] = w[2 * i + 1], w[2 * i] else: for i in range(1, N): if 2 * i + 2 >= N: break if c == '>': w[2 * i + 1], w[2 * i + 2] = w[2 * i + 2], w[2 * i + 1] print('!', ' '.join(map(str, w)))