求和
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

小a学习了树状数组之后,对很感兴趣,于是出了一道题。
给定非负整数n。记为x的二进制表示下最低位的1所对应的值,如,某个数x最低位的1分别在第1,2,3位时,分别是1,2,4。求
输出答案对998244353取模后的结果。T组数据。

输入描述:

第一行一个整数T,表示数据组数。
接下来T行每行一个整数n,含义如题目描述所示。

输出描述:

输出T行,表示每次询问的结果。
示例1

输入

复制
2
2
4

输出

复制
8
48

说明

n=2时,Ans=\sum_{i=0}^{4}\text{lowbit}(i)=0+1+2+1+4=8

备注:


输入数据量可能较大,建议使用较快的读入方式。