
Ми всі знаємо, як знаходити рівняння бісектрис у координатній геометрії. Якщо рівняння двох прямих мають вигляд a_ix + b_iy + c_i = 0 та a_jx + b_jy + c_j = 0, то визначені й рівняння бісектрис чотирьох кутів, які вони утворюють. Проте потрібно знати, для яких кутів вибирати знак "+" (плюс), а для яких знак "-" (мінус). У цій задачі вам належить зробити аналогічний вибір.
Нехай задано фіксовану точку (C_x, C_y) і (n \leq 10000) інших точок навколо неї. Жодна з цих точок не розташована на одній прямій із (C_x, C_y). Якщо з'єднати всі ці точки з (C_x, C_y), то отримаємо зіркоподібну топологію з прямих. Рівняння цих прямих задані, і саме ці рівняння слід використовувати під час пошуку рівнянь бісектрис. Ці прямих утворюють загалом \frac{n(n-1)}{2} (гострих або тупих) кутів, а отже, існує \frac{n(n-1)}{2} бісектрис. Вам треба визначити, для скількох із цих бісектрис рівняння складається із використанням знака "+". На ілюстрації нижче показано випадок для n=5, C_x=5, C_y=2. Ця діаграма відповідає єдиному прикладу у вхідних даних.
Вхідний файл містить не більше ніж 35 наборів даних. Опис кожного набору наступний:
Перший рядок кожного набору містить три цілі числа C_x, C_y (-10000 \leq C_x, C_y \leq 10000) та (0 \leq n \leq 10000). Кожен із наступних рядків містить два цілі числа x_i, y_i (-20000 \leq x_i, y_i \leq 20000) і рядок вигляду a_ix + b_iy + c_i = 0. Тут (x_i, y_i) — точка навколо (C_x, C_y), а рядок задає рівняння прямої, що сполучає (C_x, C_y) та (x_i, y_i). Можна вважати, що -100000 \leq a_i, b_i \leq 100000 та -2000000000 \leq c_i \leq 2000000000. Це рівняння слід використовувати для пошуку рівнянь бісектрис кутів, які утворюють ці прямі.
Введення закінчується набором, де значення дорівнює нулю.


Для кожного набору даних виведіть єдиний рядок. У цьому рядку має міститись одне ціле число — кількість рівнянь бісектрис, які формуються із використанням знака "+" у рівнянні бісектриси.
Приклад 1