N=int(input()) def ans(a): print(f'! {a}') def get(a): print(f'? {a}') k=int(input()) return k now=['a']*N for i in range(N): first=get(''.join(now)) for k in range(1,25): now[i]=chr(ord('a')+k) res=get(''.join(now)) if res>first: break else: if first==res: now[i]='z' else: now[i]='a' ans(''.join(now))