W przedszkolu jedną z najbardziej czasochłonnych czynności było wycinanie kształtów z kartki papieru za pomocą bezpiecznych nożyczek. Przyjrzyjmy się uproszczonemu modelowi tego zadania: zaczynasz z nieskończenie wielkim arkuszem papieru, na którym narysowano $N$ rozłącznych prostokątów o bokach równoległych do osi układu współrzędnych, a cięcia są nieskończenie długimi liniami prostymi. Cięcie nie może „zahaczyć” żadnego prostokąta: nie może przechodzić przez żaden punkt znajdujący się ściśle wewnątrz jakiegokolwiek prostokąta. (Cięcia przechodzące dokładnie wzdłuż krawędzi prostokąta lub przez jego wierzchołek są dozwolone). Gdy przecinasz kawałek papieru, rozpada się on na dwa oddzielne kawałki, które możesz dalej ciąć niezależnie od siebie (przyszłe cięcia na jednym kawałku nie wpływają na pozostałe).
Twoim celem jest wykonanie sekwencji cięć tak, aby każdy prostokąt znalazł się na własnym kawałku papieru (ponieważ po tym etapie bardzo łatwo jest wyciąć każdy prostokąt dokładnie).
Określ minimalną liczbę cięć (niekoniecznie równoległych do osi układu współrzędnych) potrzebnych do wycięcia prostokątów w ten sposób. Jeśli zadanie jest niemożliwe do wykonania, wypisz impossible.
Wejście
Pierwsza linia wejścia zawiera liczbę całkowitą $N$ ($1 \le N \le 100$), liczbę prostokątów.
Każda z kolejnych $N$ linii opisuje jeden prostokąt. Każda linia zawiera cztery liczby całkowite oddzielone spacjami $x_1, y_1, x_2$ oraz $y_2$ ($|x_1|, |y_1|, |x_2|, |y_2| \le 10^9$, $x_1 < x_2$, $y_1 < y_2$), gdzie $(x_1, y_1)$ to lewy dolny róg prostokąta, a $(x_2, y_2)$ to prawy górny róg prostokąta.
Gwarantuje się, że prostokąty są rozłączne: żadne dwa prostokąty nie przecinają się w żadnym punkcie, wliczając w to ich krawędzie lub wierzchołki.
Wyjście
Wypisz minimalną liczbę cięć potrzebnych do oddzielenia wszystkich prostokątów. (Nie uwzględniaj dodatkowych cięć, które byłyby potrzebne do przycięcia pustego papieru wokół marginesów prostokątów po ich oddzieleniu). Jeśli zadanie jest niemożliwe do wykonania, wypisz impossible.
Uwagi
Pierwsze dwa cięcia w jednej z możliwych sekwencji cięć, które oddzielają prostokąty, pokazano poniżej. Pierwsze cięcie jest narysowane na czerwono, a drugie na niebiesko. Zauważ, że niebieskie cięcie nie jest poprawne przed wykonaniem czerwonego cięcia, ponieważ zahaczyłoby o prostokąt po prawej stronie.
Przykład
Wejście 1
6 -1 1 0 4 1 0 3 1 2 2 3 3 4 0 5 3 2 4 5 5 6 3 7 5
Wyjście 1
5
Wejście 2
4 0 -1 1 2 2 -1 5 0 -10 3 3 4 4 1 5 13
Wyjście 2
impossible