def check(s): stack = [] for letter in s: if letter in "(|": stack.append(letter) else: if len(stack) >= 2 and stack[-2] == "(" and stack[-1] == "|": stack.pop() stack.pop() else: return False return not stack def do_one_step(stack: list, letter: str): if letter in "(|": stack.append(letter) return "pop", False if len(stack) >= 2 and stack[-2] == "(" and stack[-1] == "|": stack.pop() stack.pop() return "push", not stack else: stack.append(")") return "pop", False def do_reverse_operation(stack: list, ope): if ope == "pop": stack.pop() else: stack.append("(") stack.append("|") def solve(): stack = [] history = [(None, True)] for _ in range(int(input())): query = input().split() if len(query) == 1: ope, _ = history.pop() do_reverse_operation(stack, ope) else: history.append(do_one_step(stack, query[1])) print("Yes" if history[-1][1] else "No") if __name__ == "__main__": solve()