Скандал у Богемії#6642

Скандал у Богемії

0,5 секунди
256 мегабайтів
Складна

На Бейкер-стріт 221-б таємно прибув король Богемії з проханням до Шерлока Холмса повернути втрачену каблучку. Ця каблучка протягом багатьох століть належала королям Богемії і є символом влади, але нещодавно була викрадена. Втрата цього символу може спричинити скандал у королівстві та послабити владу короля.

Холмс погодився допомогти. Незабаром доктор Ватсон і Шерлок Холмс дізнаються, що каблучка знаходиться в домі Ірен Адлер. Холмс, перевдягнувшись у священика і вдаючи пораненого, потрапляє в дім. Тим часом у будинку починається пожежа, через яку деякі проходи між кімнатами блокуються, а інші з'являються.

Оскільки дім дуже великий, Холмс звертається до вас за допомогою. Під час пошуків детектив буде повідомляти, які проходи з'явилися, а які зникли, і ставитиме запитання: "Чи можна в даний момент з кімнати потрапити в кімнату ?"

Вхідні дані

Перший рядок містить два числа (1 \leq n \leq 50000) і (1 \leq m \leq 50000), де — кількість кімнат у домі, — кількість запитів. Усі кімнати мають номери від до . У наступних рядках містяться запити трьох типів:

  • + a b — з кімнати з'явився маршрут у кімнату ;

  • - a b — з кімнати тепер не можна потрапити в кімнату ;

  • ? a b — з'ясувати, чи можна з кімнати потрапити в кімнату в даний момент.

Спочатку всі проходи між кімнатами заблоковані. Гарантується, що в кожному запиті (a \ne b).

Вихідні дані

Для кожного запиту третього типу в окремому рядку потрібно вивести Yes, якщо з кімнати можна потрапити в кімнату , або No в іншому випадку.

Приклади

Приклад 1

Loading
Loading