#include <bits/stdc++.h>
using namespace std;
string s =
    "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 = "\"?";
const int MAX_N = 1e5 + 10;
const long long MAX_F = 1e18 + 10;
long long F[MAX_N] = {(int)s.size()};
char f(int n, long long k) {
  if (F[n] <= k) return '.';
  if (n == 0) return s[k];
  if (k < (int)s1.size()) return s1[k];
  k -= (int)s1.size();
  if (k < F[n - 1]) return f(n - 1, k);
  k -= F[n - 1];
  if (k < (int)s2.size()) return s2[k];
  k -= (int)s2.size();
  if (k < F[n - 1]) return f(n - 1, k);
  k -= F[n - 1];
  return s3[k];
}
int main() {
  ios_base ::sync_with_stdio(false), cout.tie(0), cin.tie(0);
  int l = (int)s1.size() + (int)s2.size() + (int)s3.size();
  for (int i = 1; i < MAX_N; i++) {
    if (2 * F[i - 1] + l > MAX_F)
      F[i] = MAX_F;
    else
      F[i] = 2 * F[i - 1] + l;
  }
  int q;
  cin >> q;
  while (q--) {
    int n;
    long long k;
    cin >> n >> k;
    cout << f(n, k - 1);
  }
  return 0;
}
