import random random.seed(1) alphabets = "abcdefghijklmnopqrstuvwxyz" written = set() alpha = input() print('?', alpha * 2) written.add(alpha * 2) for _ in range(5): cmd, T = input().split() assert T not in written written.add(T) print('?', T[::-1]) written.add(T[::-1]) cmd, T = input().split() written.add(T) S = list({T[1] + a for a in alphabets} - written)[0] print('?', S) while True: cmd, T = input().split() if cmd == '!': exit() assert T not in written written.add(T) can_write = list(set(T[1] + a for a in alphabets) - written) if len(can_write) <= 0: print('!') else: S = random.choice(can_write) pre_char = S[1] written.add(S) print('?', S)