#ZF1186. mjq

mjq

Description

在奇幻宝库中,你有 nn 颗普通宝石和 mm 枚神奇水晶。 所有普通宝石互不相同,所有神奇水晶也互不相同。

你可以选择将神奇水晶合成为高级水晶。合成规则如下:

1.你可以选择任意数量的不相交集合,每个集合恰好包含 kk 枚神奇水晶,然后将每个集合合成一枚高级水晶。合成后,每个集合产生一枚高级水晶,且这些高级水晶互不相同(因为它们由不同的神奇水晶集合合成),例如使用神奇水晶编号集合为 {1,2}{3,4}\{1,2\},\{3,4\} 生成的两个高级水晶和 {1,3},{2,4}\{1,3\},\{2,4\} 生成的两个水晶是不同的。

2.你也可以选择不合成任何高级水晶。

3.合成过程是瞬间完成的,合成顺序不影响结果。每个神奇水晶最多被用于合成一次(即合成集合是不相交的)。

合成后,你拥有三类物品:普通宝石、剩余的神奇水晶(未被合成的)和合成的高级水晶。所有物品都是互不相同的。

然后,你将所有物品排成一列,并依次取走,\textbf{直到取完}。但规定在取走过程中,不能连续取走水晶(即神奇水晶或高级水晶)。也就是说,在取走序列中,任何两个水晶之间必须至少有一颗普通宝石。

请问有多少种不同的取走顺序?答案对 998244353998244353 取模。

两个取走顺序被认为不同当且仅当取的水晶和宝石集合不同,或者在某一步操作中取的两个物品不同。

Format

Input

一行包含三个整数 nn, mm, kk,其中2kmn21052\leq k \leq m \leq n \leq 2*10^5,分别表示普通宝石的个数,神奇水晶的个数,多少颗神奇水晶能合成高级水晶。

Output

输出一行表示不同的取走顺序的数量,并对 998244353998244353 取模。

Samples

4 4 2

12960

Limitation

1s, 1024KiB for each test case.