The smallest multiple#4459

The smallest multiple

1 second
64 megabytes
Easy

Given a number and a set of digits .

Your task is to append the minimum number of digits from to so that the resulting number is divisible by . The resulting number should be the smallest possible.

Input

The first line of the input contains two natural numbers and (1 \leq X \leq 10^{1000}, 2 \leq k \leq 100000). The second line contains the number of digits in the set . The third line lists these digits separated by spaces.

Output

Output a single line containing the smallest number obtained from by appending digits from that is divisible by . If no such number can be formed, output .

Examples

Example 1

Loading
Loading