import sys inputs = sys.stdin.readline """再帰関数のときセット sys.setrecursionlimit(10**7) import pypyjit pypyjit.set_param('max_unroll_recursion=-1') """ def main(): CONST = "helloworld" def solve(): N = int(inputs()) S = input() if CONST in S: print(S.replace('?', 'a')) return left, right = N - 10, N while left >= 0: is_ok = True for i in range(10): if S[left + i] == '?': continue if S[left + i] != CONST[i]: is_ok = False break if not is_ok: left -= 1 right -= 1 continue print(S[:left].replace('?', 'a') + CONST + S[right:].replace('?', 'a')) return print(-1) T = int(inputs()) for _ in range(T): solve() if __name__ == '__main__': main()