AT_pakencamp_2024_day1_q Large Heap 2

Description

以下の問題の答えを $ f(K) $ とします。 > $ (1,2,\ldots,K) $ の順列 $ P=(P_{1},P_{2}, \ldots ,P_{K}) $ を考えます。 $ P $ が以下の条件をすべて満たすとき、それを **ヒープ的な** 順列と呼ぶことにします。 > > - $ 2P_{i} \leq P_{2i} \left(1 \leq i \leq \left\lfloor \frac{K}{2} \right\rfloor \right) $ > - $ 2P_{i} \leq P_{2i+1} \left(1 \leq i \leq \left\lfloor \frac{K-1}{2} \right\rfloor \right) $ > > ヒープ的な順列の個数を求めてください。 $ N $ が与えられるので、 $ f(1)+f(2)+ \cdots +f(N) $ を $ 998244353 $ で割った余りを求めてください。 $ 1 $ つの入力につきテストケースは $ T $ 個あります。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ T $ $ \mathrm{case}_{1} $ $ \mathrm{case}_{2} $ $ \vdots $ $ \mathrm{case}_{T} $ 各テストケースは以下の形式で与えられる。 > $ N $

Output Format

$ T $ 行出力せよ。 $ i $ 行目には $ i $ 番目のテストケースに対する答えを出力せよ。

Explanation/Hint

### Sample Explanation 1 例えば $ K=5 $ のとき、 $ P=\lbrace 1,2,3,5,4 \rbrace $ はヒープ的な順列です。 ### Constraints - $ 1 \leq T \leq 10^{6} $ - $ 1 \leq N \leq 10^{18} $ - 入力は全て整数