#arc145c. [arc145_c]Split and Maximize

[arc145_c]Split and Maximize

問題文

(1,2,ldots,2N)(1,2,\\ldots,2N) の順列 P=(P1,P2,ldots,P2N)P=(P_1,P_2,\\ldots,P_{2N}) に対し、スコアを以下で定義します。

PP を順序を保ったまま二つの長さ NN の(連続するとは限らない)部分列 $A = (A_1,A_2,\\ldots,A_N),B = (B_1,B_2,\\ldots,B_N)$ に分割する。分割を行ったときに得られる displaystylesumi=1NAiBi\\displaystyle\\sum_{i=1}^{N}A_i B_i の最大値をスコアとする。

(1,2,ldots,2N)(1,2,\\ldots,2N) の順列全てについてスコアを計算し、それらの最大値を MM とします。 (1,2,ldots,2N)(1,2,\\ldots,2N) の順列のうち、スコアが MM であるものの個数を 998244353998244353 で割ったあまりを求めてください。

制約

  • 1leqNleq2times1051 \\leq N \\leq 2\\times 10^5
  • 入力は全て整数

入力

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

NN

出力

答えを出力せよ。


入力例 1

2

出力例 1

16

考えられる順列 2424 通りの中で、スコアの最大値 MM1414 です。スコアが 1414 となる順列は 1616 通りあります。

例えば、順列 (1,2,3,4)(1,2,3,4)A=(1,3),B=(2,4)A=(1,3), B=(2,4) と分割することで、sumi=1NAiBi=14\\sum _{i=1}^{N}A_i B_i = 14 となります。


入力例 2

10000

出力例 2

391163238

998244353998244353 で割ったあまりを答えてください。