E. Модульная стабильность
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
512 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Обозначим за $$$x \bmod y$$$ остаток от целочисленного деления $$$x$$$ на $$$y$$$ (оператор $$$\%$$$ в C++ или Java, mod в Pascal).

Назовем массив целых чисел $$$[a_1, a_2, \dots, a_k]$$$ стабильным, если для каждой перестановки $$$p$$$ целых чисел от $$$1$$$ до $$$k$$$, и для каждого неотрицательного целого числа $$$x$$$ выполняется следующее условие:

$$$ (((x \bmod a_1) \bmod a_2) \dots \bmod a_{k - 1}) \bmod a_k = (((x \bmod a_{p_1}) \bmod a_{p_2}) \dots \bmod a_{p_{k - 1}}) \bmod a_{p_k} $$$

Другими словами, для каждого неотрицательного целого $$$x$$$ значение $$$(((x \bmod a_1) \bmod a_2) \dots \bmod a_{k - 1}) \bmod a_k$$$ не зависит от порядка элементов в массиве $$$a$$$.

Для двух заданных целых чисел $$$n$$$ и $$$k$$$ посчитайте количество стабильных массивов $$$[a_1, a_2, \dots, a_k]$$$, в которых $$$1 \le a_1 < a_2 < \dots < a_k \le n$$$.

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

В единственной строке заданы два целых числа $$$n$$$ и $$$k$$$ ($$$1 \le n, k \le 5 \cdot 10^5$$$).

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

Выведите количество стабильных массивов $$$[a_1, a_2, \dots, a_k]$$$, в которых $$$1 \le a_1 < a_2 < \dots < a_k \le n$$$. Так как ответ может быть очень большим, выведите его по модулю $$$998244353$$$.

Примеры
Входные данные
7 3
Выходные данные
16
Входные данные
3 7
Выходные данные
0
Входные данные
1337 42
Выходные данные
95147305
Входные данные
1 1
Выходные данные
1
Входные данные
500000 1
Выходные данные
500000