#include <bits/stdc++.h>
using namespace std;
long long t, n, k, num[100010] = {75};
string s0 =
    "What are you doing at the end of the world? Are you busy? Will you save "
    "us?";
string s1 = "What are you doing while sending \"";
string s2 = "\"? Are you busy? Will you send \"";
string s3 = "\"?";
char dfs(long long m, long long pos) {
  if (m <= 53 && pos > num[m])
    return '.';
  else if (m == 0)
    return s0[pos - 1];
  else if (pos <= s1.length())
    return s1[pos - 1];
  else if (pos <= s1.length() + num[m - 1])
    return dfs(m - 1, pos - s1.length());
  else if (pos <= s1.length() + s2.length() + num[m - 1])
    return s2[pos - s1.length() - num[m - 1] - 1];
  else if (pos <= s1.length() + s2.length() + 2 * num[m - 1])
    return dfs(m - 1, pos - s1.length() - s2.length() - num[m - 1]);
  else
    return s3[pos - s1.length() - s2.length() - 2 * num[m - 1] - 1];
}
int main() {
  for (long long i = 1; i <= 53; ++i)
    num[i] = 2 * num[i - 1] + s1.length() + s2.length() + s3.length();
  cin >> t;
  while (t--) {
    cin >> n >> k;
    while (n > 53 && k > s1.length()) n--, k -= s1.length();
    cout << dfs(n, k);
  }
  return 0;
}
