Trivette se ha quedado sin gasolina en medio del desierto de Chihuahua, cerca de la frontera con México, mientras perseguía a unos malechores por su propia cuenta. Por suerte, Walker pasaba por ahí cerca (sí, Texas parece grande, pero no hay muchas carreteras), y se ofrece a dejarle la cantidad exacta de galones de gasolina que Trivette necesita para llegar hasta el pueblo más cercano.
Walker guarda varios contenedores vacíos en la parte trasera de su Dodge Ram 1500, cada uno de los cuales está etiquetado con su capacidad total. Es posible pasar gasolina entre los depósitos de ambos vehículos, o entre un depósito y un contenedor, o entre dos contenedores; pero para poder hacer medidas con precisión, sólo está permitido pasar líquido hasta que el depósito o contenedor de origen esté vacío, o hasta que el depósito o contenedor de destino esté lleno.
Por ejemplo, si Walker quiere traspasar 6 de los 35 galones de gasolina que tiene su Dodge Ram, y dispone de dos contenedores de 9 y 5 galones, puede conseguir realizar la operación del siguiente modo:
Este es únicamente uno de los modos posibles de completar la operación. Se te pide que encuentres, dados todos los datos necesarios, qué cantidades de gasolina podría traspasar Walker a Trivette.
Entrada
Cada entrada contiene un número N≤ 500 de casos. Cada caso se da en una línea, y está formado por los siguientes datos, separados por espacios: el número de galones de gasolina en el depósito del Dodge Ram de Walker; el tamaño del depósito de Trivette; el número de contenedores de gasolina (entre 0 y 2), y sus tamaños. Tanto los tamaños de los depósitos como los tamaños de los contenedores están entre 1 y 40 galones.
Salida
Para cada caso, escribe (en una línea, separados por comas y ordenados de menor a mayor) las cantidades de gasolina que es posible traspasar del Dodge Ram de Walker al coche de Trivette.
Puntuación
Entradas con 0 o 1 contenedores, donde el depósito de Trivette es mayor que el depósito de Walker.
Input
2 35 10 0 35 40 0
Output
10 35
Input
3 35 40 0 35 40 1 10 35 40 1 20
Output
35 5,10,15,20,25,30,35 15,20,35
Input
3 35 20 0 35 33 1 10 35 33 1 20
Output
20 2,3,5,10,12,13,15,20,22,23,25,30,32,33 2,13,15,20,22,33
Input
5 35 10 2 15 5 35 10 2 9 5 35 5 2 5 5 35 12 2 3 6
Output
5,10 1,2,3,4,5,6,7,8,9,10 5 3,6,9,12 12