import java.io.PrintWriter; import java.util.Scanner; public class Main { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); int t = sc.nextInt(); PrintWriter pw = new PrintWriter(System.out); for (int z = 0; z < t; z++) { int h = sc.nextInt(); int w = sc.nextInt(); int[][] a = new int[h][w]; for (int i = 0; i < h; i++) { for (int j = 0; j < w; j++) { a[i][j] = sc.nextInt(); } } boolean flg = false; label: for (int i = 0; i < h; i++) { for (int j = 0; j < w; j++) { int v = a[i][j]; for (int i2 = 0; i2 < h; i2++) { if (v + a[i2][j] > 0) { flg = true; break label; } } for (int j2 = 0; j2 < w; j2++) { if (v + a[i][j2] > 0) { flg = true; break label; } } int end = Math.min(h - i, w - j); for (int k = 1; k < end; k++) { if (v + a[i + k][j + k] > 0) { flg = true; break label; } } end = Math.min(h - i, j + 1); for (int k = 1; k < end; k++) { if (v + a[i + k][j - k] > 0) { flg = true; break label; } } } } if (flg) { pw.println("infinite"); } else { pw.println("finite"); } } pw.flush(); sc.close(); } }