Вам задано множину з точок, кожна точка задається двома цілими числами (x_i , y_i); дві з них є базовими точками. Вам потрібно обробити запитів двох типів.
+ \hspace{2mm} (x,y) , додати точку () до множини; гарантується, що додана точка ще не належить множині.
- \hspace{2mm} (x,y) , вилучити точку () з множини; гарантується, що вилучувана точка належить множині та не є базовою точкою важливо!Динамічна мультимножина точних раціональних центрів описаних кіл трикутника.
Для початкової множини та після кожного запиту виведіть "YES", якщо можна провести коло, яке проходить через усі точки множини, та "NO" інакше.
Перший рядок містить одне ціле число (1 \le t \le 10^4) — кількість тестових випадків.
Перший рядок кожного тестового випадку містить чотири цілих числа n,q,a,b (2 \le n \le 2\cdot 10^5 ; 0 \le q \le 2\cdot 10^5) (1 \le a,b \le n , a \neq b) — кількість точок, кількість запитів, індекс першої базової точки, індекс другої базової точки відповідно.
Далі йдуть рядків; кожен рядок містить два цілих числа x_i , y_i (-10^6 \le x_i , y_i \le 10^6) — координати i_{th} точки.
Далі йдуть рядків вигляду c_i , x_i , y_i (c_i \in \{+ , -\} , -10^6 \le x_i,y_i \le 10^6).
Гарантується, що сума і сума за всіма тестовими випадками не перевищує 2 \cdot 10^5.
Для кожного тестового випадку виведіть q+1 рядків: відповідь для початкової множини, а потім відповідь після кожного запиту.
Приклад 1
У першому тестовому випадку після другого запиту коло можна провести так, як показано нижче.
Підзадача ( балів) n = 2 \hspace{1mm}, \hspace{1mm}q = 0 для всіх тестових випадків.
Підзадача ( балів) n = 3 \hspace{1mm} , \hspace{1mm} q = 0 для всіх тестових випадків.
Підзадача ( балів) q = 0 для всіх тестових випадків.
Підзадача ( балів) Без додаткових обмежень.