Nikifor has a number *x*. He doesn't need it. He needs a number *y*. Nikifor tries to obtain the required number by erasing some digits from *x*. But he is not lucky in the meanwhile. May be he is to choose an appropriate number system?

Write a program that reads numbers *x* and *y*, and determines a minimal radix of a number system that it is possible to obtain in it the number *y* from *x* by erasing some digits. If it is impossible, your program should write to an output a message "No solution".

### Input

The only line contains integers *x* and *y* (1 ≤ *y* < *x* ≤ 1 000 000), separated with a space.

### Output

Output either the message "No solution", if there is no appropriate number system, or an integer, not less than 2, that is an answer in the problem.

### Sample

**Problem Author: **Dmitry Filimonenkov

**Problem Source: **Ural State Univerisity Personal Contest Online February'2001 Students Session