#include using namespace std; #define all(p) p.begin(), p.end() #define rep(i, a, b) for (int i = (int)(a); i < (int)(b); i++) #include using mint = atcoder::modint998244353; //https://yukicoder.me/submissions/1047130 int main(){ int T; cin >> T; const int L = 1'000'010; vector fact(L, 1), fact_inv(L, 1); rep(i, 1, L) fact[i] = fact[i - 1] * i; fact_inv.back() = fact.back().inv(); for (int i = L - 1; i > 0; i--) fact_inv[i - 1] = fact_inv[i] * i; auto f = [&](int a, int b) -> mint { return fact[a] * fact_inv[a - b] * fact_inv[b]; }; while (T--){ int N; cin >> N; if (N & 1){ cout << "0\n"; } else{ int n = N / 2; n--; cout << (((mint)(2)).pow(2 * n + 1) - f(2 * n + 3, n + 1) + f(2 * n + 1, n)).val() << "\n"; } } }