E. Про делители
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Бизон-Чемпион не только дружелюбный, но и любит программировать.

Определим функцию f(a), где a последовательность целых положительных чисел. Функция f(a) возвращает следующую последовательность: сначала идут все делители a1 в порядке возрастания, затем идут все делители a2 в порядке возрастания, и так далее до последнего элемента последовательности a. Например f([2, 9, 1]) = [1, 2, 1, 3, 9, 1].

Определим последовательность Xi, для целых i (i ≥ 0): X0 = [X] ([X] — это последовательность, состоящая из одного числа X), Xi = f(Xi - 1) (i > 0). Например, при X = 6 получится X0 = [6], X1 = [1, 2, 3, 6], X2 = [1, 1, 2, 1, 3, 1, 2, 3, 6].

Для заданных чисел X и k найдите последовательность Xk. Так как ответ может быть слишком большим, найдите только первые 105 элементов этой последовательности.

Входные данные

В единственной строке содержатся два целых числа, разделенных пробелом — X (1 ≤ X ≤ 1012) и k (0 ≤ k ≤ 1018).

Выходные данные

Выведите элементы последовательности Xk в одной строке через пробел. Если количество элементов превосходит 105, то выведите только первые 105 элементов.

Примеры
Входные данные
6 1
Выходные данные
1 2 3 6 
Входные данные
4 2
Выходные данные
1 1 2 1 2 4 
Входные данные
10 3
Выходные данные
1 1 1 2 1 1 5 1 1 2 1 5 1 2 5 10