C - Las dos torres

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

Dos amigos están jugando con dos torres de monedas. Al inicio del juego ambos se ponen de acuerdo en la cantidad de monedas que tiene cada una. Después ambos jugadores van turnándose alternadamente hasta que no puedan hacer más movimientos. En un turno un jugador selecciona una torre y la elimina. Después divide la torre restante en dos torres no vacías. El primer jugador que no puede hacer ningún movimiento pierde. Los dos amigos son muy buenos jugadores y siempre van a seguir la mejor estrategia para intentar ganar. Si sabemos cuantas monedas hay al inicio en cada torre queremos predecir quién gana el juego.

Input

La primera línea de la entrada consiste en un número entero $T (1 \le T \le 1000)$ que indica la cantidad de casos que siguen. Cada caso es una línea con dos enteros $A$ y $B (1 \le A, B \le 10^ 4)$ indicando los tamaños de las torres al inicio.

Output

Por cada caso se debe imprimir el ganador del juego. Si el primer jugador siempre puede ganar entonces debe imprimir “Gana el primer jugador.”, en caso contrario la respuesta debe ser “Gana el segundo jugador.”

Sample test(s)

Input
2 1 1 2 2
Output
Gana el segundo jugador. Gana el primer jugador.