#abc267h. [abc267_h]Odd Sum

[abc267_h]Odd Sum

問題文

長さ NN の整数列 A=(A1,A2,dots,AN)A=(A_1,A_2,\\dots,A_N) が与えられます。

AA から要素を奇数個選ぶ方法のうち、選んだ要素の総和が MM になるものの個数を 998244353998244353 で割ったあまりを求めてください。

ただし、22 つの選び方が異なるとは、ある整数 i(1leileN)i (1 \\le i \\le N) が存在して、一方の選び方では AiA_i を選び、もう一方では選んでいないことを言います。

制約

  • 1leNle1051 \\le N \\le 10^5
  • 1leMle1061 \\le M \\le 10^6
  • 1leAile101 \\le A_i \\le 10
  • 入力は全て整数。

入力

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

NN MM A1A_1 A2A_2 dots\\dots ANA_N

出力

答えを出力せよ。


入力例 1

5 6
1 2 3 3 6

出力例 1

3

条件を満たす選び方は以下の 33 通りです。

  • A1,A2,A3A_1,A_2,A_3 を選ぶ。
  • A1,A2,A4A_1,A_2,A_4 を選ぶ。
  • A5A_5 を選ぶ。

A3,A4A_3,A_4 を選んだ場合、総和は 66 ですが選んだ要素の個数が奇数個でないため条件を満たしません。


入力例 2

10 23
1 2 3 4 5 6 7 8 9 10

出力例 2

18