from collections import deque, defaultdict, Counter from bisect import bisect_left, bisect_right from itertools import permutations, combinations, groupby from heapq import heappop, heappush import math, sys input = lambda: sys.stdin.readline().rstrip("\r\n") def printl(li, sep=" "): print(sep.join(map(str, li))) def yn(flag): print(Yes if flag else No) _int = lambda x: int(x)-1 MOD = 998244353 #10**9+7 INF = 1<<60 Yes, No = "Alice", "Bob" for _ in range(int(input())): N, M, B, W = map(int, input().split()) if N > M: N, M = M, N ans = No if N >= 2 and M >= 2: d = 2 while d*d <= W: if d > N: break e = -(-W/d) if e <= M: m = W%d if e-1 >= 2 and m >= 2: ans = Yes break d += 1 if W > 3: if B <= (N-2)*(M-2): ans = Yes else: k = B-(N-2)*(M-2) if k&1 == 0: ans = Yes print(ans)