Вам дан пустой словарь и q запросов. Каждый запрос может относиться к одному из трёх типов:
Тип 1: вставить строку в словарь.
Тип 2: проверить, присутствует ли строка в словаре.
Тип 3: удалить строку из словаря.
Ваша задача — эффективно обработать все эти запросы.
Для запроса типа 2, если строка есть в словаре, выведите Yes, в противном случае выведите No.
Входные данные
Первая строка содержит целое число q (1 ≤ q ≤ 100 000), означающее количество запросов.
Следующие q строк содержат описание запросов. Каждая строка начинается с целого числа type (1, 2 или 3), определяющего тип запроса.
Если type = 1: после него идёт пробел и строка s (1 ≤ |s| ≤ 1000), которую нужно вставить в словарь. Строка состоит только из строчных букв английского алфавита.
Если type = 2: после него идёт пробел и строка s (1 ≤ |s| ≤ 1000), которую нужно проверить в словаре. Строка состоит только из строчных букв английского алфавита.
Если type = 3: после него идёт пробел и строка s (1 ≤ |s| ≤ 100), которую нужно удалить из словаря. Строка состоит только из строчных букв английского алфавита.
Гарантируется, что сумма длин всех строк, появляющихся в запросах, не превышает .
Выходные данные
Для каждого запроса типа 2 выведите Yes, если соответствующая строка находится в словаре, иначе выведите No.