問題文
0 以上 2N 未満の非負整数からなる集合 S のうち、以下の条件を満たすものの個数を 998244353 で割ったあまりを出力してください。
- S の空でない部分集合 T は以下のどちらかを満たす。
- T の要素数が奇数
- T の全要素の mathrmXOR が 0 でない
mathrmXOR とは
非負整数 A,B のビット単位 mathrmXOR 、AoplusB は、以下のように定義されます。
- AoplusB を二進表記した際の 2k (kgeq0) の位の数は、A,B を二進表記した際の 2k の位の数のうち一方のみが 1 であれば 1、そうでなければ 0 である。
例えば、3oplus5=6 となります (二進表記すると: 011oplus101=110)。
一般に k 個の整数 p1,p2,p3,dots,pk のビット単位 mathrmXOR は $(\\dots ((p_1 \\oplus p_2) \\oplus p_3) \\oplus \\dots \\oplus p_k)$ と定義され、これは p1,p2,p3,dotspk の順番によらないことが証明できます。
制約
- 1leNle2times105
- 入力は全て整数である。
入力
入力は以下の形式で標準入力から与えられる。
N
出力
答えを出力せよ。
入力例 1
2
出力例 1
15
lbrace0,2,3rbrace や lbrace1rbrace や lbracerbrace は条件を満たします。
lbrace0,1,2,3rbrace は条件を満たしません。
なぜなら、lbrace0,1,2,3rbrace は部分集合 lbrace0,1,2,3rbrace が要素数が偶数であり、全要素の mathrmXOR が 0 であるからです。
入力例 2
146
出力例 2
743874490