F - Puntos sobre el rectángulo

Languages: C, C++, Java, Pascal, Python, Tiger, JavaScript, Haskell, C#
Time & Memory limits: (details)

Se tiene un rectángulo de longitud N x M colocado sobre un sistema de coordenadas de forma tal que su borde inferior izquierdo se encuentra en el origen (0, 0). Dados dos puntos (x1, y1) y (x2, y2) sobre el borde del rectángulo, se quiere desplazar uno de los puntos hasta la ubicación del otro de forma tal que durante su recorrido no se salga del borde del rectángulo.

La tarea en este caso consiste en obtener la menor distancia que se necesita recorrer para colocar uno de los puntos en la ubicación del otro.

Input

La primera línea contiene dos números N y M (1 <= N, M <= 100 000) que indican el ancho y el alto del rectángulo respectivamente.

La segunda línea contiene un entero Q (0 <= Q <= 100 000), indicando la cantidad de preguntas a responder.

Cada una de las siguientes Q líneas contiene cuatro números enteros x1, y1, x2, y2 (0 <= x1, x2 <= N; 0 <= y1, y2 <= M) que representan los puntos antes mencionados.

Output

Para cada una de las preguntas se debe imprimir la menor distancia que debe recorrer un punto para llegar a la posición  del otro.

Sample test(s)

Input
3 3 5 2 0 3 0 0 1 1 3 0 0 3 3 3 0 0 3 2 0 3 1
Output
1 3 6 6 2