#include <bits/stdc++.h>
using namespace std;
const int N = 500;
vector<int> p;
vector<pair<int, int> > g[N][N];
int m[1 << 20], tot = 0, ans[N][N] = {0}, size[N][N] = {0};
void dfs(int n, int k, int s) {
  if (k == 1) {
    s += n;
    m[s] = tot;
    tot++;
    p.push_back(s);
  } else
    for (int i = 0; i <= n; i++)
      dfs(n - i, k - 1, s + i * (1 << (4 * (k - 1))));
}
void work() {
  for (int i = 0; i < (int)p.size(); i++) ans[0][i] = 1, ans[i][0] = 2;
  ans[0][0] = 1;
  for (int i = 0; i < (int)p.size(); i++)
    for (int j = 0; j < (int)p.size(); j++)
      for (int ii = 0; ii < 4; ii++)
        if (15 & (p[i] >> (4 * (4 - ii))))
          for (int jj = 0; jj < 4; jj++)
            if (15 & (p[j] >> (4 * (4 - jj)))) {
              int a = p[i], b = p[j], c = 15 & (p[i] >> (4 * (4 - ii)));
              a = a &
                  ((((((1 << 4 * ii) - 1) << 4) ^ 1) << (4 * (4 - ii))) - 1);
              c--;
              a = a | (c << (4 * (4 - ii)));
              c = (4 - ii + 4 - jj) % 5;
              c = 4 - c;
              int d = 15 & (a >> (4 * (4 - c)));
              d++;
              a = a & ((((((1 << 4 * c) - 1) << 4) ^ 1) << (4 * (4 - c))) - 1);
              a = a | (d << (4 * (4 - c)));
              g[m[b]][m[a]].push_back(make_pair(i, j));
              size[i][j]++;
            }
  queue<pair<int, int> > q;
  q.push(make_pair(0, 0));
  for (int i = 1; i < (int)p.size(); i++)
    q.push(make_pair(0, i)), q.push(make_pair(i, 0));
  while (!q.empty()) {
    int a = q.front().first, b = q.front().second;
    q.pop();
    for (int i = 0; i < (int)g[a][b].size(); i++) {
      pair<int, int> t = g[a][b][i];
      if (ans[t.first][t.second]) continue;
      if (ans[a][b] == 2) {
        ans[t.first][t.second] = 1;
        q.push(t);
        continue;
      }
      size[t.first][t.second]--;
      if (!size[t.first][t.second]) {
        ans[t.first][t.second] = 2;
        q.push(t);
      }
    }
  }
}
int main() {
  dfs(8, 5, 0);
  work();
  int t;
  scanf("%d", &t);
  while (t--) {
    int op;
    scanf("%d", &op);
    int x, y, z;
    x = y = 0;
    for (int i = 1; i <= 8; i++) {
      scanf("%d", &z);
      x += (1 << (4 * z));
    }
    for (int i = 1; i <= 8; i++) {
      scanf("%d", &z);
      y += (1 << (4 * z));
    }
    if (!op) {
      printf("%s\n", !ans[m[x]][m[y]]
                         ? "Deal"
                         : (ans[m[x]][m[y]] == 1 ? "Alice" : "Bob"));
    } else {
      swap(x, y);
      printf("%s\n", !ans[m[x]][m[y]]
                         ? "Deal"
                         : (ans[m[x]][m[y]] == 1 ? "Bob" : "Alice"));
    }
  }
  return 0;
}
