#include <bits/stdc++.h>
using namespace std;
int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);
  int tt;
  cin >> tt;
  while (tt--) {
    int n, a, b, da, db;
    cin >> n >> a >> b >> da >> db;
    vector<int> g[n + 1];
    for (int i = 0; i < n - 1; ++i) {
      int u, v;
      cin >> u >> v;
      g[u].push_back(v);
      g[v].push_back(u);
    }
    if (2 * da >= db) {
      cout << "Alice\n";
      continue;
    }
    vector<int> dp(n + 1), dep(n + 1);
    int mx_d = 0;
    function<void(int, int)> dfs = [&](int u, int f) {
      for (auto v : g[u]) {
        if (v != f) {
          dfs(v, u);
          mx_d = max(mx_d, dp[u] + dp[v] + 1);
          dp[u] = max(dp[u], 1 + dp[v]);
        }
      }
    };
    dfs(1, 0);
    dep[a] = -1;
    function<void(int, int)> dfs1 = [&](int u, int f) {
      dep[u] = dep[f] + 1;
      for (auto v : g[u]) {
        if (v != f) {
          dfs1(v, u);
        }
      }
    };
    dfs1(a, a);
    if (da >= dep[b] || 2 * da >= mx_d) {
      cout << "Alice\n";
    } else {
      cout << "Bob\n";
    }
  }
  return 0;
}
