На Бейкер-стрит 221-б тайно прибыл король Богемии, который просит Шерлока Холмса вернуть утраченное кольцо. Которое на протяжении многих веков принадлежало королям Богемии, и является символом власти, но недавно было похищено. Потеря символа власти может поднять скандал в королевстве, и таким образом ослабить власть короля.
Холмс согласился вернуть кольцо. За довольно короткое время доктор Ватсон и Шерлок Холмс узнают, что кольцо находится в доме Ирен Адлер. Холмс переодевшись в священника и сделав из себя раненого попадает в дом. Тем временем в доме начался пожар. Во время которой, некоторые проходы между комнатами блокируются, а некоторые появляются.
Так как дом очень большой, Холмс просит вашей помощи. При поиске, детектив будет говорить, какие проходы появились, а какие исчезли. А также будет задавать вопросы: "Можно ли в данный момент из комнаты a попасть в комнату b?"
Первая строка содержит два числа n (1 ≤ n ≤ 50000) и m (1 ≤ m ≤ 50000), где n — количество комнат в доме, m— количество запросов. Все комнаты имеют номера от 1 до n. В следующих m строках содержатся запросы трех типов:
+ a b - из комнаты a появился маршрут в комнату b;
- a b - из комнаты a теперь нельзя попасть в комнату b;
? a b — выяснить, можно ли из комнаты a попасть в комнату b в текущий момент.
Сначала все проходы между комнатами заблокированы. Гарантируется, что в каждом запросе (a ≠ b).
Для каждого запроса третьего типа в отдельной строке нужно вывести Yes - если из комнаты a можно попасть в комнату b, или No - в противном случае.