#include <bits/stdc++.h>
using namespace std;
const int INF = 0x3f3f3f3f;
const long long INFF = 0x3f3f3f3f3f3f3f3fll;
const long long M = 1e9 + 7;
const long long maxn = 1e6 + 7;
const double eps = 0.00000001;
long long gcd(long long a, long long b) { return b ? gcd(b, a % b) : a; }
template <typename T>
inline T abs(T a) {
  return a > 0 ? a : -a;
}
template <typename T>
inline T powMM(T a, T b) {
  T ret = 1;
  for (; b; b >>= 1ll, a = 1ll * a * a % M)
    if (b & 1) ret = 1ll * ret * a % M;
  return ret;
}
char s[] =
    "What are you doing at the end of the world? Are you busy? Will you save "
    "us?";
char a[] = "What are you doing while sending \"";
char b[] = "\"? Are you busy? Will you send \"";
char c[] = "\"?";
long long len[maxn];
long long lens, lena, lenb, lenc;
char solve(long long x, long long pos) {
  if (len[x] < pos) return '.';
  if (x == 0) return s[pos - 1];
  if (pos <= lena) return a[pos - 1];
  pos -= lena;
  if (pos <= len[x - 1]) return solve(x - 1, pos);
  pos -= len[x - 1];
  if (pos <= lenb) return b[pos - 1];
  pos -= lenb;
  if (pos <= len[x - 1]) return solve(x - 1, pos);
  pos -= len[x - 1];
  if (pos <= lenc) return c[pos - 1];
  return '.';
}
long long n, k;
int T;
int main() {
  int i;
  lens = strlen(s);
  lena = strlen(a);
  lenb = strlen(b);
  lenc = strlen(c);
  len[0] = lens;
  for (i = 1; i <= 200000; i++)
    len[i] = min((long long)2e18, lena + lenb + lenc + 2 * len[i - 1]);
  scanf("%d", &T);
  while (T--) {
    scanf("%I64d%I64d", &n, &k);
    printf("%c", solve(n, k));
  }
}
