Suffidromes

Given two strings of lowercase letters, $a$ and $b$, print the shortest string $x$ of lowercase letters such that exactly one (but not both) of $ax$ or $bx$ is a palindrome; that is, equal to itself when reversed.

Input

Standard input contains several pairs of $a$ and $b$ (at most $500$). Each string is on a separate line and consists of between $0$ and $1\, 000$ lowercase letters.

Output

For each pair, output a line containing $x$. If several $x$ satisfy the criteria above, choose the first one in alphabetical order. If no such string $x$ exists, print “No solution.” as answer.

Sample Input 1 Sample Output 1
abab
ababab
abc
def
baba
ba