from functools import lru_cache @lru_cache(None) def ask(i, j): print("?", i+1, j+1, flush=True) res = int(input()) return res n = int(input()) mn, i1 = 10**9, -1 for i in range(n): x = ask(i, 0) if x < mn: mn, i1 = x, i bb = [0]*n for j in range(n): bb[j] = ask(i1, j) j1 = bb.index(1) aa = [0]*n for i in range(n): aa[i] = ask(i, j1) print("!", *aa, *bb, flush=True)