func_code_string: #include <bits/stdc++.h>   using namespace std;   string f0 =        What are you doing at the end of the world? Are you busy? Will you save          us? ;   string fi1 =  What are you doing while sending   ;   string fi2 =   ? Are you busy? Will you send   ;   string fi3 =   ? ;   string ff =        What are you doing while sending  What are you doing at the end of the          world? Are you busy? Will you save us? ? Are you busy? Will you send           What are you doing at the end of the world? Are you busy? Will you save          us? ? ;   string answer;   long long l0, li1, li2, li3;   long long q, n, k, maxn = 53;   long long len[54];   void prep() {     l0 = f0.size();     li1 = fi1.size();     li2 = fi2.size();     li3 = fi3.size();     len[0] = l0;     for (int i = 1; i <= maxn; i++) {       len[i] = 2 * len[i - 1] + li1 + li2 + li3;     }   }   char ans(long long n, long long k) {     if (n > maxn)       return k <= (n - maxn) * li1 ? fi1[(k - 1) % li1]                                    : ans(maxn, k - (n - maxn) * li1);     if (k > len[n]) return  . ;     if (n == 0) return f0[k - 1];     if (k <= li1) return fi1[k - 1];     if (k <= li1 + len[n - 1]) return ans(n - 1, k - li1);     if (k <= li1 + len[n - 1] + li2) return fi2[k - li1 - len[n - 1] - 1];     if (k <= li1 + len[n - 1] + li2 + len[n - 1])       return ans(n - 1, k - li1 - len[n - 1] - li2);     return fi3[k - li1 - len[n - 1] - li2 - len[n - 1] - 1];   }   int main() {     prep();     cin >> q;     for (int i = 1; i <= q; i++) {       cin >> n >> k;       answer += ans(n, k);     }     cout << answer << endl;     return 0;   }   