from collections import * import sys import heapq import bisect import itertools dxdy1 = ((0, 1), (0, -1), (1, 0), (-1, 0)) dxdy2 = ((0, 1), (0, -1), (1, 0), (-1, 0), (1, 1), (-1, -1), (1, -1), (-1, 1)) dxdy3 = ((0, 1), (1, 0)) dxdy4 = ((1, 1), (1, -1), (-1, 1), (-1, -1)) INF = float("inf") MOD = 998244353 mod = 998244353 MOD2 = 10**9 + 7 mod2 = 10**9 + 7 # memo : len([a,b,...,z])==26 input = lambda: sys.stdin.readline().rstrip() mi = lambda: map(int, input().split()) li = lambda: list(mi()) N = int(input()) P = [input() == "Yes" for _ in range(N)] ans = [] tmp = P[N - 1] for i in range(N - 2, -1, -1): if tmp == P[i]: tmp = True else: tmp = False # print(tmp) ans.append(tmp) for i in range(N - 2, -1, -1): rev = False if P[i]: if P[i] != P[i + 1]: rev = True else: if P[i] == P[i + 1]: rev = True if rev: ans.append(ans[-1] ^ True) else: ans.append(ans[-1]) ans.reverse() for a in ans: if a: print("Yes") else: print("No")