def main(): def ask(si): aa=a[si:si+(n-si)//2*2]+[0]*(2*n-(n-si)//2*2) print("?",*aa,flush=True) n=int(input()) a=list(range(1,n+1)) while 1: update=False ask(0) ret=input().split() for i,c in enumerate(ret[:n]): if c==">": a[i*2],a[i*2+1]=a[i*2+1],a[i*2] update=True ask(1) ret=input().split() for i,c in enumerate(ret[:n]): if c==">": a[i*2+1],a[i*2+2]=a[i*2+2],a[i*2+1] update=True if not update:break print("!",*a,flush=True) main()