from collections import defaultdict N = int(input()) ans = ['z'] * N T = ['z'] * N rem = 2500 for i in range(N): cnt = defaultdict(list) for d in range(25): T[i] = chr(ord('a') + d) print('?', ''.join(T), flush=True) n = int(input()) cnt[n].append(T[i]) if len(cnt) == 1: continue key = max(cnt.keys()) ans[i] = cnt[key][0] rem -= 1 assert rem >= 0 print('!', *ans, sep='')