def solve(): """ 1<=A[i]<=M, len(A)=2*N, max(A)-min(A)<=K-1 となる整数列の個数は? [方針] min(A) で場合分け """ N,M,K=map(int,input().split()) Mod=998244353 K=min(K,M) X=((M-K)*(pow(K,2*N,Mod)-pow(K-1,2*N,Mod))+pow(K,2*N,Mod))%Mod return X #================================================== print(solve())