Огородження стада#11184

Огородження стада

1 секунда
128 мегабайтів
Дуже складна

Фермеру Джону потрібна ваша допомога, щоб визначити, де побудувати прямолінійний паркан для обмеження пересування його корів. Він розглянув кілька можливих варіантів розташування паркану і хоче визначити, які з них є допустимими. Паркан вважається допустимим, якщо всі корови знаходяться строго по один бік від нього; якщо хоча б одна корова лежить безпосередньо на паркані, такий паркан вважається недопустимим.

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

Крім того, ФД час від часу може додавати нових корів до стада. З моменту додавання нової корови кожен наступний запит про паркан повинен враховувати й її: щоб паркан вважався допустимим, нова корова також повинна знаходитися по той самий бік паркану, що й усі інші корови.

Вхідні дані

У першому рядку містяться два цілих числа n~(1 \le n \le 10^5) і q~(1 \le q \le 10^5), що позначають початкову кількість корів у стаді та кількість запитів відповідно.

Наступні рядків описують початковий стан стада. Кожен рядок містить два розділених пробілом цілих числа і , що задають положення однієї корови.

Наступні рядків містять запити, які або додають нову корову до стада, або перевіряють допустимість паркану.

Запит вигляду "1 x y" означає, що до стада додається нова корова в точці .

Запит вигляду "2 A B C" означає, що ФД хоче перевірити паркан, заданий рівнянням Ax + By = C.

Всі положення корів різні протягом усього вхідного набору даних і задовольняють умові -10^9 \le x, y \le 10^9. Параметри паркану задовольняють умовам -10^9 \le A, B \le 10^9 і -10^{18} \le C \le 10^{18}. Жоден запит про паркан не має A = B = 0.

Вихідні дані

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

Приклади

Пряма 2x + 2y = 3 спочатку залишає всіх корів по один бік від неї. Однак після додавання корови в точці вона опиняється по інший бік паркану, тому паркан більше не є допустимим.

Пряма y = 1 є недопустимою, оскільки корови в точках і лежать безпосередньо на ній.

Приклад 1

Loading
Loading