E. Приключения в лабиринте
ограничение по времени на тест
6 секунд
ограничение по памяти на тест
512 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Вы нашли карту лабиринта довольно странной формы. Карта представляет собой сетку, разделенную на $$$n$$$ строк и $$$n$$$ столбцов. Строки карты пронумерованы от $$$1$$$ до $$$n$$$ снизу вверх. Столбцы карты пронумерованы от $$$1$$$ до $$$n$$$ слева направо.

В лабиринте есть $$$n$$$ слоев. Первый слой — это левый нижний угол (ячейка $$$(1, 1)$$$). Второй слой состоит из всех ячеек, которые внутри сетки и смежны с первым слоем по стороне или по углу. Третий слой состоит из всех ячеек, которые внутри сетки и смежны со вторым слоем по стороне или по углу.

Лабиринт из $$$5$$$ слоев, например, выглядит следующим образом:

Слои отделены друг от друга стенами. Однако, в этих стенах есть двери.

В каждом слое (кроме слоя $$$n$$$) есть ровно две двери в следующий слой. Одна дверь размещена на верхней стене слоя, а другая дверь размещена на правой стене слоя. Для каждого слоя от $$$1$$$ до $$$n-1$$$ вам даны позиции этих двух дверей. Через эти двери можно ходить в обоих направлениях: либо из слоя $$$i$$$ в слой $$$i+1$$$, либо из слоя $$$i+1$$$ в слой $$$i$$$.

Если вы находитесь в какой-либо ячейке лабиринта, то вы можете переместиться в соседнюю по стороне клетку, если путь не преграждает стена (то есть нельзя переместиться в клетку в другом слое, если между клетками нет двери).

Вам нужно обработать $$$m$$$ запросов следующего вида: какое минимальное количество ходов необходимо сделать, чтобы дойти из клетки $$$(x_1, y_1)$$$ в клетку $$$(x_2, y_2)$$$?

Входные данные

В первой строке записано одно целое число $$$n$$$ ($$$2 \le n \le 10^5$$$) — количество слоев в лабиринте.

В $$$i$$$-й из следующих $$$n-1$$$ строк записаны четыре целых числа $$$d_{1,x}, d_{1,y}, d_{2,x}$$$ and $$$d_{2,y}$$$ ($$$1 \le d_{1,x}, d_{1,y}, d_{2,x}, d_{2,y} \le n$$$) — координаты дверей. Обе ячейки находятся на $$$i$$$-м слое. Первая ячейка смежна с верхней стеной $$$i$$$-го слоя по стороне — эта сторона — это место двери. Вторая ячейка смежна с правой стеной $$$i$$$-го слоя по стороне — эта сторона — это место двери.

В следующей строке записано одно целое число $$$m$$$ ($$$1 \le m \le 2 \cdot 10^5$$$) — количество запросов.

В $$$j$$$-й из следующих $$$m$$$ строк записаны четыре целых числа $$$x_1, y_1, x_2$$$ and $$$y_2$$$ ($$$1 \le x_1, y_1, x_2, y_2 \le n$$$) — координаты ячеек в $$$j$$$-м запросе.

Выходные данные

На каждый запрос выведите одно целое число — минимальное количество ходов, которое необходимо сделать, чтобы дойти из клетки $$$(x_1, y_1)$$$ в клетку $$$(x_2, y_2)$$$.

Примеры
Входные данные
2
1 1 1 1
10
1 1 1 1
1 1 1 2
1 1 2 1
1 1 2 2
1 2 1 2
1 2 2 1
1 2 2 2
2 1 2 1
2 1 2 2
2 2 2 2
Выходные данные
0
1
1
2
0
2
1
0
1
0
Входные данные
4
1 1 1 1
2 1 2 2
3 2 1 3
5
2 4 4 3
4 4 3 3
1 2 3 3
2 2 4 4
1 4 2 3
Выходные данные
3
4
3
6
2
Примечание

Здесь изображена карта лабиринта из второго примера. Двери отмечены красным.