Для участников олимпиады на главной площади города <<У>> планируется игра в форме флешмоба. Главная площадь замощена плитками, образующими клетчатое поле.
Сначала составляется план игры: каждый участник флешмоба получает номер в очереди выхода на площадь и координаты двух различных плиток, находящихся в одном ряду или столбце. После этого на площади раскладываются призы, затем участники выходят на площадь по очереди. Очередной участник забирает все призы, находящиеся в указанных ему клетках, и клетках, находящихся между ними.
Призы должны быть разложены так, чтобы каждому участнику достался по крайней мере один приз.
Требуется написать программу, которая по плану игры находит минимальное необходимое количество призов, и на какие именно плитки их следует разложить.
В первой строке входного файла содержится число N --- количество участников флешмоба (\mbox{1≤N≤123,456}). Каждая из последующих N строк содержит четыре целых числа x_1i, y_1i, x_2i, y_2i --- координаты плиток для i-го участника (1≤x_1i,,y_1i,,x_2i,,y_2i≤109; либо x_1i=x_2i, либо y_1i=y_2i). Участники перечислены в порядке выхода на площадь.
Первая строка выходного файла должна содержать число M --- минимальное количество призов, которые должны быть разложены на площади. Каждая из последующих M строк должна содержать два числа px_i и py_i --- координаты плитки, на которой должен лежать i-й приз.
Если вариантов размещения призов, удовлетворяющих условию задачи, несколько, то выведите любой из них. Если решения не существует, выведите единственное число 0.