Підрахунок областей
На площині x-y розташовано кілька прямокутників. Усі сторони цих прямокутників паралельні або осі x, або осі y, і всі вони знаходяться в межах, зазначених нижче. Інших обмежень на координати прямокутників немає.
Площина поділена на області, межами яких є сторони одного або кількох прямокутників. Наприклад, на Рисунку 1 три прямокутники перекриваються, утворюючи вісім областей.
Прямокутники можуть перекриватися складніше. Наприклад, два прямокутники можуть мати спільні сторони, спільні кутові точки або бути вкладеними один в одного. Рисунок 2 демонструє ці випадки.
Напишіть програму, яка підрахує кількість областей на площині, розділеній прямокутниками.
Вхідні дані
Вхідні дані складаються з кількох тестів. Кожен тест має такий формат:
n
l_1 t_1 r_1 b_1
l_2 t_2 r_2 b_2
...
l_n t_n r_n b_n
Кожен тест починається зі значення n (1 ≤ n ≤ 50) - кількості прямокутників на площині. Кожен з наступних n рядків описує один прямокутник. i-ий рядок містить чотири цілі числа l_i, t_i, r_i і b_i - координати i-го прямокутника; (l_i, t_i) задають x-y координати верхнього лівого кута, а (r_i, b_i) - координати нижнього правого кута прямокутника (0 ≤ l_i < r_i ≤ 10^6, 0 ≤ b_i < t_i ≤ 10^6 для 1 ≤ i ≤ n). Чотири цілі числа розділені одним пробілом.
Вхідні дані завершуються одним нулем.
Вихідні дані
Для кожного тесту виведіть в окремому рядку кількість областей, на які площина розбивається сторонами прямокутників.
Рисунок 1. Три прямокутники розбивають площину на шість областей. Відповідає першому тесту. Осі x- і y-наведені лише для ілюстрації, вони не ділять площину.
Рисунок 2. Прямокутники перекриваються більш складним чином. Відповідають другому тесту.