AT_utpc2022_c Nim is Time-consuming

Description

UT 君と PC 君は Nim というゲームで遊んでいます。 $ N $ 個の正整数 $ A_1, A_2,\ldots, A_N $ に対し、 $ \mathrm{Nim}(A_1, A_2, \ldots, A_N) $ とは次のゲームのことを指します。 - いくつかの石からなる $ N $ 個の山があり、はじめ $ i\ (1\le i\le N) $ 番目の山には $ A_i $ 個の石がある。UT 君から始めて、 $ 2 $ 人は交互に以下の操作を $ 1 $ 回ずつ繰り返す。 - **(操作)** 石が $ 1 $ 個以上残っている山を $ 1 $ つ選ぶ。その山から石を $ 1 $ 個以上取り除く。 - 石が全て取り除かれた時点でゲームを終了し、最後に操作を行ったプレイヤーを勝ち、もう一方のプレイヤーを負けとする。 - ゲーム開始時点からゲーム終了時点までに $ 2 $ 人が行った操作の回数の合計を $ T $ としたとき、勝ったプレイヤーが $ 10^{100}-T $ 点、負けたプレイヤーが $ T-10^{100} $ 点を得る。 $ 1 \le A_i \le M\ (1\le i\le N) $ を満たす長さ $ N $ の整数列 $ (A_1, A_2, \ldots, A_N) $ は $ M^N $ 通りありますが、その全てに対して、 $ 2 $ 人は $ 1 $ 回ずつ $ \mathrm{Nim}(A_1, A_2, \ldots, A_N) $ を遊びます。 それぞれが全てのゲームで獲得する点数の合計を最大化するように行動したとき、これら $ M^N $ 回のゲームの操作回数の合計は何回になるでしょうか?答えは非常に大きくなる可能性があるので、 $ 998244353 $ で割った余りを求めてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ M $

Output Format

答えを $ 1 $ 行に出力せよ。

Explanation/Hint

### Sample Explanation 1 $ 2 $ 人は以下の $ 4 $ つのゲームを行います。 - $ \mathrm{Nim}(1, 1) $ - $ \mathrm{Nim}(1, 2) $ - $ \mathrm{Nim}(2, 1) $ - $ \mathrm{Nim}(2, 2) $ それぞれが最善を尽くした場合、各ゲームの操作回数はそれぞれ $ 2 $ 、 $ 3 $ 、 $ 3 $ 、 $ 4 $ になります。これらの合計である $ 12 $ を出力します。 ### Sample Explanation 4 答えの値を $ 998244353 $ で割った余りを出力してください。 ### Constraints - 入力は全て整数 - $ 1 \le N \le 10^{9} $ - $ 1 \le M \le 500 $