#include <bits/stdc++.h>
using namespace std;
long long n, k, s[100005];
string x =
    "What are you doing at the end of the world? Are you busy? Will you save "
    "us?";
string y = "What are you doing while sending \"";
string z = "\"? Are you busy? Will you send \"";
string d = "\"?";
void nhap() {
  cin >> n >> k;
  s[0] = 75;
  for (long long i = 1; i <= 100000; i++) {
    s[i] = s[i - 1] * 2 + 'D';
    if (s[i] > 1e18) s[i] = 4444444444444444444;
  }
  return;
}
char xuly1(long long n, long long k) {
  if (n == 0) {
    return x[k - 1];
  }
  if (k <= y.size()) {
    return y[k - 1];
  }
  if (k <= y.size() + s[n - 1]) {
    return xuly1(n - 1, k - y.size());
  }
  if (k <= y.size() + s[n - 1] + z.size()) {
    return z[k - y.size() - s[n - 1] - 1];
  }
  if (k <= y.size() + s[n - 1] + z.size() + s[n - 1]) {
    return xuly1(n - 1, k - y.size() - s[n - 1] - z.size());
  } else {
    return d[k - y.size() - z.size() - 2 * s[n - 1] - 1];
  }
}
void xuly2() {
  if (s[n] < k)
    cout << ".";
  else
    cout << xuly1(n, k);
  return;
}
void xuat() {}
signed main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.tie(0);
  long long test;
  cin >> test;
  for (long long f = 1; f <= test; f++) {
    nhap();
    xuly2();
    xuat();
  }
  return 0;
}
