Є по одній коробці, позначеній кожним цілим числом від $1$ до $N$. Також для кожного цілого числа від $1$ до $N$ є $M$ кульок, позначених цим цілим числом.
Ці $NM$ кульок перемішують, а потім розподіляють у $N$ коробок так, що в кожну коробку потрапляє рівно $M$ кульок.
Існує $\frac{(NM)!}{(M!)^N}$ можливих способів розмістити кульки (якщо всі кульки вважати розрізнюваними), і всі ці розташування трапляються з однаковою ймовірністю.
Ви виконуватимете операції з цими коробками та кульками. Одна операція складається з таких кроків:
- Виберіть одну коробку та підійдіть до неї.
- Якщо в цій коробці немає жодної кульки, завершіть операцію.
- Виберіть будь-яку одну кульку з цієї коробки та викиньте її назовні.
- Нарешті, підійдіть до коробки, позначка якої збігається з позначкою щойно викинутої кульки, і поверніться до кроку $2$.
Визначимо ваш рахунок як кількість операцій, необхідних для того, щоб викинути всі $NM$ кульок. Ви хочете мінімізувати цей рахунок.
Знайдіть математичне сподівання рахунку за оптимальної гри за модулем $998244353$.
Input
Перший рядок містить числа $N$ і $M$ у такому порядку, розділені пробілами. ($1 \le N \le 10^5, 1 \le M \le 100$)
Output
Виведіть відповідь.
Examples
Input 1
2 2
Output 1
166374060
Input 2
3 1
Output 2
831870296
Input 3
100000 100
Output 3
402978825
Note
Для першого прикладу можливі розташування кульок і відповідні оптимальні способи дій є такими:
- Покласти дві кульки з позначкою $1$ у коробку $1$, а дві кульки з позначкою $2$ — у коробку $2$. (Ймовірність $1/6$)
- У першій операції підійдіть до коробки $1$. Звідти дістаньте кульку з позначкою $1$ і підійдіть до коробки $1$. Потім дістаньте ще одну кульку з позначкою $1$ і знову підійдіть до коробки $1$. У цей момент коробка $1$ порожня, тому завершіть операцію.
- У другій операції підійдіть до коробки $2$. Звідти дістаньте кульку з позначкою $2$ і підійдіть до коробки $2$. Потім дістаньте ще одну кульку з позначкою $2$ і знову підійдіть до коробки $2$. У цей момент коробка $2$ порожня, тому завершіть операцію.
- У цьому випадку мінімально досяжний рахунок дорівнює $2$.
- Покласти по одній кульці з позначкою $1$ і по одній кульці з позначкою $2$ у кожну з коробок $1$ та $2$. (Ймовірність $2/3$)
- У першій операції підійдіть до коробки $1$. Звідти дістаньте кульку з позначкою $1$ і підійдіть до коробки $1$. Потім дістаньте кульку з позначкою $2$ і підійдіть до коробки $2$. Потім дістаньте кульку з позначкою $2$ і підійдіть до коробки $2$. Потім дістаньте кульку з позначкою $1$ і підійдіть до коробки $1$. У цей момент коробка $1$ порожня, тому завершіть операцію.
- У цьому випадку мінімально досяжний рахунок дорівнює $1$.
- Покласти дві кульки з позначкою $2$ у коробку $1$, а дві кульки з позначкою $1$ — у коробку $2$. (Ймовірність $1/6$)
- У першій операції підійдіть до коробки $1$. Звідти дістаньте кульку з позначкою $2$ і підійдіть до коробки $2$. Потім дістаньте кульку з позначкою $1$ і підійдіть до коробки $1$. Потім дістаньте кульку з позначкою $2$ і підійдіть до коробки $2$. Потім дістаньте кульку з позначкою $1$ і підійдіть до коробки $1$. У цей момент коробка $1$ порожня, тому завершіть операцію.
- У цьому випадку мінімально досяжний рахунок дорівнює $1$.
Отже, мінімальний рахунок дорівнює $2$ з ймовірністю $1/6$, а мінімальний рахунок дорівнює $1$ з ймовірністю $5/6$, тому загальне математичне сподівання рахунку становить $7/6$. Отже, виведіть $166374060$, що відповідає цьому значенню за модулем $998244353$.
Визначення математичного сподівання за модулем $998244353$
Можна довести, що шукане математичне сподівання завжди є раціональним числом. Крім того, за обмежень цієї задачі, якщо математичне сподівання записано у вигляді нескоротного дробу $\frac{y}{x}$, гарантується, що $x$ не ділиться на $998244353$.
У цьому випадку існує єдине ціле число $z$ від $0$ до $998244352$ включно, яке задовольняє умову $xz \equiv y \pmod{998244353}$. Виведіть це $z$.