H - Symmetric Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 400

問題文

整数 s,t,u が与えられます。

ここで、 \alpha,\beta,\gamma は以下の条件を満たす複素数です。

  • \alpha+\beta+\gamma=s
  • \alpha\beta+\beta\gamma+\gamma\alpha=t
  • \alpha\beta\gamma=u
  • \alpha,\beta,\gamma は相異なる。

このとき、正の整数 n,m が与えられるので、

\dfrac{\alpha^n(\beta^m-\gamma^m)+\beta^n(\gamma^m-\alpha^m)+\gamma^n(\alpha^m-\beta^m)}{(\alpha-\beta)(\beta-\gamma)(\gamma-\alpha)}

を求めてください。ただし答えは有理数であることが保証されるので、 \mod 998244353 で出力してください。

注記

有理数を出力する際には、まずその有理数を分数 \dfrac{y}{x} として表してください。ここで、 x,y は整数であり、 x998244353 で割り切れてはなりません(この問題の制約下で、そのような表現は必ず可能です)。そして、 xz\equiv y\pmod{ 998244353}を満たすような 0 以上 998244352 以下の唯一の整数 z を出力してください。

制約

  • 1 \leq n \leq 10^{18}
  • 1 \leq m \leq 10^{18}
  • 0 \leq s \lt 998244353
  • 0 \leq t \lt 998244353
  • 0 \leq u \lt 998244353
  • \alpha,\beta,\gamma は相異なる。
  • 入力はすべて整数で与えられる。

入力

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

n m
s t u

出力

答えを1行で出力せよ。


入力例1

2 3
314 159 265

出力例1

159

入力例2

1000000000000000000 800000000000000000
6 11 6

出力例2

76083766

入力例3

1000000000000000000 500000000000000000
505459328 165146837 982639180

出力例3

228155372