import sys N=int(raw_input()) ans=[] used=[False for i in range(N+1)] used[0]=True for n in range(N): cand = [i for i in range(N+1) if used[i]==False] while len(cand)>=2: print '?', for c in cand: print c, for d in range(N*2-len(cand)): print 0, print sys.stdout.flush() ncand=[] res=raw_input().split() for i in range(0,len(cand),2): if i==len(cand)-1: ncand.append(cand[i]) elif res[i]=='>': ncand.append(cand[i+1]) elif res[i]=='<': ncand.append(cand[i]) cand=ncand ans.append(cand[0]) used[cand[0]]=True print '!', for a in ans: print a, print sys.stdout.flush()