#include <bits/stdc++.h>
using namespace std;
const long long mx = 1e5;
long long l[mx + 1];
long long n, k, q;
string s0 =
    "What are you doing at the end of the world? Are you busy? Will you save "
    "us?";
string sab =
    "What are you doing while sending \"\"? Are you busy? Will you send \"\"?";
string p = "What are you doing while sending \"";
string d = "\"? Are you busy? Will you send \"";
char solve(long long n, long long k) {
  if (k >= l[n]) return '.';
  if (k == l[n] - 1) return '?';
  if (k == l[n] - 2) return '\"';
  if (n == 0) return s0[k];
  if (k < p.length()) return p[k];
  if (k >= p.length() + l[n - 1] && k < p.length() + l[n - 1] + d.length())
    return d[k - (p.length() + l[n - 1])];
  if (k >= p.length() && k < p.length() + l[n - 1])
    return solve(n - 1, k - p.length());
  return solve(n - 1, k - (p.length() + l[n - 1] + d.length()));
}
int main() {
  l[0] = s0.length();
  for (long long i = 1; i <= mx; i++) {
    long long x = sab.length() + l[i - 1] * 2;
    l[i] = min(x, 2000000000000000000LL);
  }
  cin >> q;
  string sol;
  while (q--) {
    cin >> n >> k;
    sol += solve(n, k - 1);
  }
  cout << sol << endl;
  return 0;
}
