func_code_string: #include <bits/stdc++.h>   using namespace std;   const int MAXK = 1 << 12;   const int P = 7340033;   const int G = 3;   const int MAXH = 30;   int dp[MAXH + 7][MAXK + 7], buff[MAXK + 7];   int qpow(int a, int b) {     if (b == 0) return 1;     if (a == 0) return 0;     int aux = qpow(1LL * a * a % P, b >> 1);     if (b & 1) aux = 1LL * aux * a % P;     return aux;   }   inline int inv(int x) { return qpow(x, P - 2); }   void NTT(int *a, int N, int dir) {     int t = 0;     for (int i = (0); i <= (N - 1); ++i) {       if (t < i) swap(a[t], a[i]);       for (int j = (N >> 1); (t ^= j) < j; j >>= 1)         ;     }     for (int i = 2; i <= N; i <<= 1) {       int wn = qpow(G, (P - 1) / i);       for (int j = 0; j < N; j += i) {         int w = 1, t;         for (int k = 0; k < (i >> 1); k++, w = 1LL * w * wn % P) {           t = 1LL * w * a[j + k + (i >> 1)] % P;           a[j + k + (i >> 1)] = a[j + k] - t;           a[j + k] = a[j + k] + t;           if (a[j + k + (i >> 1)] < 0) a[j + k + (i >> 1)] += P;           if (a[j + k] >= P) a[j + k] -= P;         }       }     }     if (dir == -1) {       for (int i = 1; i < (N >> 1); i++) swap(a[i], a[N - i]);       int INV_N = inv(N);       for (int i = (0); i <= (N - 1); ++i) a[i] = 1LL * a[i] * INV_N % P;     }   }   void pre() {     dp[0][0] = 1;     for (int i = (1); i <= (MAXH); ++i) {       memset(buff, 0, sizeof(buff));       for (int j = (0); j <= (1000); ++j) buff[j] = dp[i - 1][j];       NTT(buff, MAXK, 1);       for (int j = (0); j <= (MAXK); ++j) buff[j] = qpow(buff[j], 4);       NTT(buff, MAXK, -1);       for (int j = (1); j <= (1000); ++j) dp[i][j] = buff[j - 1];       dp[i][0] = 1;     }   }   inline int height(int N) {     int h = 0;     while (N > 1 && N & 1) {       ++h;       N = (N - 1) >> 1;     }     return h;   }   int main() {     ios_base::sync_with_stdio(false);     cin.tie(0);     cout.tie(0);     pre();     int Q;     cin >> Q;     while (Q--) {       int n, k;       cin >> n >> k;       cout << dp[height(n)][k] <<   n ;     }     return 0;   }   