from collections import defaultdict N=int(input()) ans=["a"]*N d=defaultdict(int) for i in range(26): t=chr(97+i)*N print("?",t,flush=1) n=int(input()) d[chr(97+i)]=n for i in range(N): x=0 tmp=0 flag=0 for j in range(26): if d[chr(97+j)]==0: continue ans[i]=chr(97+j) t="".join(ans) print("?",t,flush=1) n=int(input()) if n>x: x=n tmp=j if flag: break flag=1 ans[i]=chr(97+tmp) d[chr(97+tmp)]-=1 print("!","".join(ans))