#include <bits/stdc++.h>
using namespace std;
inline long long read();
const int MAXN = 1e5 + 10;
string s0 = "What are you doing at the end of the world? Are you busy? Will "
            "you save us?",
       s1 = "What are you doing while sending \"",
       s2 = "\"? Are you busy? Will you send \"", s3 = "\"?";
long long len[MAXN];
long long len0 = s0.size(), len1 = s1.size(), len2 = s2.size(),
          len3 = s3.size();
char fun(long long n, long long k) {
  if (!n) {
    if (k <= len0)
      return s0[k - 1];
    else
      return '.';
  }
  if (k <= len1) return s1[k - 1];
  k -= len1;
  if (k <= len[n - 1] || !len[n - 1]) return fun(n - 1, k);
  k -= len[n - 1];
  if (k <= len2) return s2[k - 1];
  k -= len2;
  if (k <= len[n - 1] || !len[n - 1]) return fun(n - 1, k);
  k -= len[n - 1];
  if (k <= len3) return s3[k - 1];
  return '.';
}
int main(void) {
  int q = read();
  len[0] = len0;
  long long tmp = len1 + len2 + len3;
  for (int i = 1; len[i - 1] <= 1e18; ++i) {
    len[i] = 2 * len[i - 1] + tmp;
  }
  while (q--) {
    long long n = read(), k = read();
    putchar(fun(n, k));
  }
}
inline long long read() {
  long long x = 0, f = 1;
  char ch = getchar();
  while (ch < '0' || ch > '9') {
    if (ch == '-') f = -1;
    ch = getchar();
  }
  while (ch >= '0' && ch <= '9') {
    x = x * 10 + ch - '0';
    ch = getchar();
  }
  return x * f;
}
