You are given the numbers and . Your task is to find any array that simultaneously satisfies the following criteria:
a_1\times a_2 \times \dots \times a_n=x, where is the size of your array;
1\le a_i\le d for each 1\le i\le n;
the size of the array is minimal possible.
The single line contains two integers (2 \le x \le 10^{9}) and (2 \le d \le 10^{9})
If such an array does not exist, then output "".
Otherwise, in the first line, output the number (1 \le n \le 1000) — the minimal size of the array.
In the second line, output the numbers a_1,a_2,\dots,a_n (1 \le a_i \le d), which satisfy the condition.
If there are multiple correct answers, any of them are allowed.
It can be shown that the length of the optimal array always satisfies the constraint.
Example
Example 1
Example 2
In the first example, x=10 and d=5. You need to find an array with a product of . The array "" fits, because 5\times 2=10 and each number is not greater than . It is impossible to make an array of size one, because then the only element should be equal to , and in this test x>d.
In this problem, there are conditional blocks. If your solution works correctly for certain constraints, it will receive a certain number of points. Note that the evaluation is still in the testing phase.
( points): x,d \le 2 \cdot 10^{5};
( points): without additional constraints.