/* For the current user, if mat [n] [m] = 0 after completing his/her operations, the current user is the winner. Because if mat does not exist in other positions, you must win. If mat exists, let the next position reverse the one. */# include <stdio. h> # include <string. h> # include <stdlib. h> # include <algorithm> # include <iostream> # include <queue> # include <map> # include <stack> # include <set> # include <math. h> using namespace std; typedef long int64; // typedef _ int64 int64; typedef pair <int64, int64> PII; # define MP (a, B) make_pair (a), (B) const int maxn = 105; const int inf = 0x7fffffff; const double pi = acos (-1.0); const double eps = 1e-8; int main () {int T; scanf ("% d", & T); while (T --) {int n, m; scanf ("% d ", & n, & m); int tt; for (int I = 0; I <n; I ++) for (int j = 0; j <m; j ++) scanf ("% d", & tt); if (tt = 1) printf ("Alice \ n"); else printf ("Bob \ n ");} return 0 ;}