Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
28 kB
2
Indexable
Never
//0630_PathFindingPuzzles






import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Scanner;

public class Solution {
	static int N, ans;
	static int[][] map;
	static int[][] vis;
	static int[] dx = { 0, 1, 0, -1 };
	static int[] dy = { 1, 0, -1, 0 };

	static MyQueue myQx = new MyQueue(1000000);
	static MyQueue myQy = new MyQueue(1000000);

	public static void main(String[] args) {

		try {
			System.setIn(new FileInputStream("input.txt"));
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		Scanner sc = new Scanner(System.in);

		int T = sc.nextInt();
		for (int tc = 1; tc <= T; tc++) {
			ans = 0;

			N = sc.nextInt();

			map = new int[N][N];
			vis = new int[N][N];
			for (int i = 0; i < N; i++) {
				for (int j = 0; j < N; j++) {
					map[i][j] = sc.nextInt();
				}
			}

			bfs();

			// System.out.println("Case #" + tc);
			if (vis[N - 1][N - 1] == 0) {
				System.out.println("NO");
			} else {
				System.out.println("YES");
			}

		}

	}

	static void bfs() {
		myQx.reset();
		myQy.reset();
		myQx.enQueue(0);
		myQy.enQueue(0);
		vis[0][0] = 1;
		while (!myQx.isEmpty()) {
			int x = myQx.deQueue();
			int y = myQy.deQueue();
			int k = map[x][y];
			for (int i = 0; i < 4; i++) {
				int r = x + (dx[i] * k);
				int c = y + (dy[i] * k);
				if (r >= 0 && c >= 0 && r < N && c < N) {
					if (r == N - 1 && c == N - 1) {
						vis[r][c] = 1;
						return;
					}
					if (vis[r][c] == 0) {
						myQx.enQueue(r);
						myQy.enQueue(c);
						vis[r][c] = 1;
					}

				}
			}

		}
	}
}

class MyQueue {

	private int maxQueue;
	private int[] queueArray;
	private int front;
	private int rear;

	public MyQueue(int s) {
		maxQueue = s;
		queueArray = new int[maxQueue];
		front = rear = -1;

	}

	public boolean isEmpty() {
		if (front == rear) {
			return true;
		}
		return false;
	}

	public boolean isFull() {
		if (rear == maxQueue - 1) {
			return true;
		}
		return false;
	}

	public void reset() {
		front = rear = -1;

	}

	public void enQueue(int inValue) {
		queueArray[++rear] = inValue;

	}

	public int deQueue() {
		front++;
		return queueArray[front];

	}

	// nhin phan tu lay ra
	public int Qpeek() {
		return queueArray[front + 1];
	}
}












//tc
21
10
8 1 8 6 1 2 5 3 7 9 
6 0 3 1 3 8 7 0 4 6 
7 4 6 2 2 4 3 9 8 3 
7 1 4 0 4 2 3 1 6 6 
1 9 4 6 2 4 2 2 3 4 
9 5 4 2 5 0 4 8 3 3 
3 0 4 3 7 7 5 4 4 4 
5 6 8 9 3 7 1 2 9 0 
4 0 3 1 0 5 0 5 6 6 
9 7 6 5 5 5 3 9 2 2 
10
6 4 4 4 1 8 1 5 2 9 
0 5 7 2 8 8 0 3 3 5 
9 7 8 0 7 2 3 9 5 6 
6 6 2 4 6 4 1 3 2 1 
4 4 2 0 5 9 7 7 3 3 
9 2 7 2 9 1 7 6 0 9 
6 3 5 0 8 2 4 2 0 7 
5 3 1 5 4 9 3 0 6 7 
0 4 2 6 9 8 1 3 6 3 
3 2 3 0 0 3 8 1 8 5 
10
3 5 2 3 3 3 4 8 9 2 
8 6 7 6 4 4 8 0 4 2 
3 5 9 8 4 0 3 3 2 9 
1 9 2 9 7 9 7 2 2 8 
5 1 2 0 5 0 2 8 2 6 
0 9 0 4 8 6 3 9 6 0 
8 2 5 3 9 4 1 7 4 1 
3 9 7 1 1 6 2 4 2 3 
1 6 7 0 8 0 6 9 3 4 
9 7 1 7 4 8 3 2 4 4 
10
7 4 4 5 0 6 0 5 0 6 
5 9 7 6 1 1 8 9 4 3 
5 7 0 4 9 2 0 0 1 3 
4 8 5 6 0 8 9 0 8 0 
8 6 9 4 7 6 1 7 8 8 
0 9 2 0 3 6 5 3 8 3 
5 7 9 7 8 8 2 2 4 9 
9 9 5 5 3 5 7 0 4 3 
6 3 4 3 6 1 6 6 0 3 
5 4 7 8 4 4 6 9 5 9 
10
6 7 7 7 8 2 8 5 4 8 
1 7 3 5 2 7 8 7 8 5 
9 4 0 7 2 5 0 8 1 2 
0 0 9 6 6 2 1 7 8 2 
3 5 2 7 3 6 1 0 0 0 
6 0 8 0 9 3 5 5 0 8 
9 8 8 6 7 0 3 6 1 8 
4 6 5 5 9 3 6 1 2 2 
3 6 1 3 0 4 7 1 0 5 
4 8 1 6 1 5 6 2 2 6 
10
2 9 1 2 2 6 7 5 2 2 
7 1 3 1 7 7 5 2 2 3 
9 4 6 0 2 0 4 0 5 9 
2 6 4 9 4 3 6 4 9 3 
1 8 5 4 3 5 1 7 3 8 
3 9 8 7 2 7 3 4 6 0 
5 3 6 2 4 0 8 0 2 8 
4 5 2 8 6 1 4 6 9 0 
7 8 0 5 1 7 4 3 8 6 
4 9 3 5 3 0 2 8 0 9 
10
1 2 5 5 0 8 5 4 5 6 
7 6 7 1 1 5 1 2 7 6 
8 4 9 5 1 6 3 8 5 5 
7 5 8 4 3 4 7 1 0 0 
2 6 6 2 7 1 2 1 4 9 
6 0 7 4 1 6 8 5 9 5 
9 8 1 5 1 9 9 6 2 9 
3 4 0 9 2 9 6 0 6 3 
5 7 9 5 0 3 2 7 5 5 
8 9 4 8 0 9 1 4 3 3 
10
3 9 8 6 7 5 6 9 0 9 
9 8 3 5 2 4 6 8 9 0 
5 9 0 5 0 2 5 0 3 1 
6 4 0 3 3 8 8 8 7 6 
4 4 0 9 5 2 6 6 6 5 
4 2 2 3 2 0 4 9 4 3 
7 4 2 3 4 0 8 0 6 8 
3 6 1 4 7 1 8 8 7 1 
5 3 9 2 3 7 5 0 4 9 
0 1 1 0 1 5 6 5 7 6 
10
1 6 2 9 4 0 8 2 2 1 
8 4 9 7 5 7 3 9 1 4 
9 8 0 7 5 7 3 5 3 8 
9 7 4 0 5 1 3 1 1 6 
2 3 5 1 4 4 3 6 8 5 
2 4 9 1 2 6 8 5 3 1 
1 4 3 2 0 1 9 1 4 3 
9 8 7 1 7 7 2 5 2 6 
9 8 7 4 1 3 2 6 6 8 
9 8 3 7 7 4 0 0 1 6 
10
4 7 4 7 9 0 8 9 5 1 
7 3 3 8 7 8 2 0 1 1 
9 4 3 1 2 9 0 9 7 7 
1 9 6 5 7 5 4 3 2 2 
4 5 6 0 7 5 8 2 5 7 
4 1 8 1 4 3 1 6 2 8 
5 3 7 5 2 3 8 2 7 8 
5 0 2 0 7 6 3 7 8 5 
4 8 2 6 0 4 3 5 1 4 
3 1 2 3 3 6 6 6 1 5 
10
3 5 0 0 7 7 3 1 7 6 
0 2 2 6 1 9 9 5 3 0 
0 4 3 4 3 6 9 7 3 5 
3 0 7 7 9 1 4 6 7 8 
4 0 1 4 7 6 6 7 1 0 
1 6 1 0 6 6 2 4 9 1 
5 3 9 3 7 7 5 4 6 0 
1 2 6 0 4 1 2 7 6 6 
0 8 8 4 2 0 9 9 0 7 
9 5 1 3 4 8 5 3 5 4 
20
7 9 1 17 6 8 18 19 12 18 5 19 15 6 9 3 13 9 14 11 
18 19 10 18 11 12 3 5 14 4 14 11 17 6 6 8 6 17 7 18 
19 16 11 13 11 4 14 17 6 1 14 4 15 3 14 11 17 1 6 18 
8 17 5 13 14 11 9 15 0 6 1 15 5 9 6 2 12 13 19 9 
4 8 3 7 19 5 4 19 0 19 1 7 10 11 13 8 14 1 19 12 
16 3 5 13 10 13 9 17 13 15 0 15 9 0 7 14 6 17 4 17 
10 1 3 4 12 1 6 3 17 1 14 13 19 13 3 16 8 14 6 4 
8 0 11 3 12 0 1 0 9 1 15 12 3 0 8 9 11 10 12 3 
17 15 3 6 18 0 2 2 12 9 10 10 11 11 7 1 5 5 2 6 
14 12 15 13 15 6 10 2 12 2 10 3 6 17 2 1 18 8 14 0 
13 5 17 11 5 11 14 17 17 12 17 19 12 0 1 10 6 6 7 11 
8 1 8 9 2 12 18 8 3 7 8 19 12 1 17 18 10 1 13 4 
11 17 7 3 14 8 17 19 14 17 6 2 7 7 9 9 3 17 9 16 
4 12 15 16 13 18 13 19 6 15 6 14 5 1 1 1 7 16 13 10 
11 2 8 13 9 14 5 18 17 8 18 13 8 3 6 14 7 9 10 16 
0 2 9 3 8 14 8 19 13 4 3 17 2 2 1 13 1 16 3 4 
8 6 18 5 3 6 19 11 7 1 14 10 16 14 19 18 17 12 12 14 
8 8 16 4 6 14 18 7 6 6 8 1 2 2 18 15 3 8 17 17 
18 1 9 6 6 19 2 6 9 17 6 15 5 5 7 11 7 4 12 9 
12 6 6 15 3 5 8 12 9 6 7 12 9 5 18 4 14 8 14 2 
20
4 15 4 3 18 4 15 12 8 14 15 11 1 7 9 15 8 6 14 11 
5 16 16 8 15 19 1 18 4 0 16 11 13 0 9 16 10 10 3 6 
15 7 19 3 4 13 8 14 18 4 11 6 1 17 15 13 2 6 13 9 
11 16 19 13 11 14 10 8 10 8 6 1 7 8 2 5 5 10 12 17 
3 19 14 2 9 17 5 15 17 9 0 5 2 6 11 7 2 14 7 19 
1 3 0 9 17 6 13 18 13 10 6 6 9 11 10 16 4 3 16 16 
8 19 19 13 12 5 17 12 11 3 16 5 6 17 9 17 5 13 19 8 
2 14 3 7 13 16 9 1 9 0 15 6 3 11 6 4 10 3 19 13 
6 7 2 2 14 7 2 6 6 18 1 11 12 13 4 15 0 17 7 6 
4 5 6 11 2 10 9 11 9 17 14 9 18 15 3 1 2 0 15 8 
8 1 5 9 3 19 2 15 10 12 5 12 19 3 0 6 5 18 7 6 
8 10 15 17 6 6 16 10 3 8 16 4 4 3 1 4 9 13 8 15 
9 3 7 1 18 8 18 13 15 15 12 9 1 18 12 0 6 19 5 3 
3 8 1 19 8 3 7 0 19 12 13 18 13 5 0 16 5 9 13 1 
14 14 19 5 2 7 18 16 14 3 0 2 11 4 1 14 2 4 18 19 
2 9 11 19 18 18 4 12 5 18 12 8 8 2 11 2 4 11 9 10 
11 12 12 13 9 3 8 2 3 3 18 13 13 17 19 12 7 12 6 18 
3 15 17 13 1 13 17 18 18 1 3 1 17 8 0 16 12 15 16 6 
10 9 7 1 2 7 3 3 14 17 16 16 14 14 17 13 1 16 16 3 
12 17 4 16 13 8 18 15 9 14 10 10 14 8 17 13 5 15 17 6 
20
7 0 13 8 0 8 10 14 12 6 14 2 1 10 3 8 1 2 3 11 
13 18 0 6 19 4 11 13 3 14 9 14 7 16 3 18 18 10 3 7 
11 19 10 3 7 5 4 5 5 19 5 1 10 12 14 7 9 9 9 17 
11 18 16 7 17 11 6 13 19 17 11 10 4 4 12 0 0 2 1 14 
4 19 8 6 10 16 2 1 14 1 18 16 16 11 10 16 0 4 15 14 
15 5 12 14 12 14 13 13 5 15 10 2 18 17 12 18 12 1 13 1 
19 18 7 11 0 9 9 17 5 8 18 15 12 18 3 9 18 2 19 3 
12 0 14 19 0 0 14 12 5 3 15 1 0 16 17 1 9 13 16 7 
2 6 10 2 5 6 8 5 14 8 3 15 13 15 11 18 11 3 11 6 
13 8 15 2 14 2 10 1 3 4 13 17 12 3 16 7 15 3 8 14 
4 16 14 13 19 11 17 12 8 4 5 8 19 18 18 16 13 0 7 3 
12 6 7 15 16 18 17 7 17 11 8 3 6 16 2 4 5 15 5 9 
17 0 10 6 2 7 15 11 15 17 10 17 13 12 4 14 15 10 1 13 
9 2 17 17 0 5 11 4 17 19 1 14 12 6 10 6 13 18 0 13 
13 12 16 14 15 17 18 3 12 10 2 5 2 13 15 16 1 5 10 15 
6 10 17 12 13 7 7 13 10 1 5 16 14 18 6 4 18 5 7 13 
14 0 19 0 16 10 1 0 2 16 14 0 5 17 8 14 18 12 1 0 
5 17 17 2 16 14 0 0 8 11 19 18 6 13 7 17 10 14 15 11 
18 2 1 3 0 2 4 4 10 14 13 0 5 9 10 17 6 13 4 5 
1 19 4 1 8 10 10 8 17 2 19 0 6 8 6 18 4 7 12 14 
20
17 0 10 2 5 5 5 10 14 12 10 1 2 17 15 11 13 19 14 10 
18 10 12 2 6 0 6 7 10 3 11 19 3 10 7 13 17 12 1 4 
9 12 3 1 17 12 14 16 13 11 17 16 3 15 8 9 3 4 19 9 
17 17 18 15 15 12 0 8 4 7 3 2 7 15 3 14 16 11 10 13 
8 15 9 14 9 16 5 15 17 14 17 3 15 13 2 2 2 18 6 0 
6 6 12 19 18 8 12 18 16 15 2 14 16 3 8 11 15 7 8 10 
13 10 2 2 18 11 19 18 15 5 9 15 5 1 6 14 14 13 4 14 
13 15 9 15 4 3 4 17 1 15 10 6 3 12 18 3 0 11 10 0 
6 4 17 7 9 6 15 7 10 9 5 10 16 3 14 17 2 9 7 5 
15 1 15 6 16 17 17 9 12 1 2 1 19 10 12 4 15 17 15 12 
16 0 2 17 1 17 11 5 5 11 16 0 14 1 0 4 12 15 3 9 
11 6 1 7 9 17 10 7 14 7 6 12 7 2 12 9 19 10 2 4 
17 10 15 17 19 18 17 7 18 3 19 6 5 10 13 5 18 12 9 0 
14 7 18 14 2 12 4 9 12 15 8 6 12 17 8 8 3 16 3 6 
15 18 18 13 5 6 17 3 6 16 19 18 1 18 19 4 9 7 7 18 
14 9 16 3 12 6 4 8 5 9 10 19 7 6 13 15 16 8 15 8 
17 7 14 9 11 11 14 1 1 17 0 14 3 7 14 19 12 18 19 17 
13 2 11 11 0 8 15 8 4 11 10 15 7 15 11 4 1 5 4 8 
11 13 4 11 4 6 13 4 14 0 14 6 6 3 6 15 5 14 13 13 
13 8 8 4 3 0 16 5 1 3 2 17 0 10 5 6 2 19 1 19 
20
0 11 10 17 3 1 14 13 13 5 11 13 6 3 1 17 0 16 7 17 
17 14 5 8 3 4 19 7 14 17 0 14 5 3 19 18 14 4 9 19 
15 14 12 12 16 15 11 10 16 0 4 0 14 12 3 11 19 10 4 4 
1 15 1 8 10 11 17 3 0 10 19 18 15 11 8 2 2 5 9 5 
13 14 13 19 3 18 13 2 14 8 11 15 16 19 2 17 7 19 3 2 
8 3 6 19 1 7 10 16 0 19 13 12 11 12 4 14 7 3 12 9 
3 8 5 7 9 17 17 7 2 15 16 10 2 6 18 10 18 4 3 17 
5 5 5 17 14 0 2 3 19 4 0 13 12 0 6 6 12 3 0 14 
18 6 15 13 14 5 18 12 6 12 19 4 10 3 13 17 7 3 8 7 
9 10 0 1 18 8 4 16 17 9 18 15 12 6 11 0 0 11 1 8 
18 2 12 10 5 18 13 8 6 16 6 16 7 1 18 14 17 12 18 12 
15 7 0 1 9 0 19 3 5 8 4 10 18 3 19 13 7 4 18 6 
13 10 2 0 2 11 7 18 18 2 18 2 9 19 16 10 14 15 10 12 
4 1 13 3 12 19 1 4 2 19 16 5 10 16 5 14 19 0 12 3 
0 17 11 19 12 13 2 0 3 2 10 11 17 3 10 1 8 2 6 2 
12 1 2 0 13 7 13 13 5 16 1 19 1 19 10 7 18 4 14 13 
3 11 3 14 13 9 2 17 16 10 13 0 17 17 18 3 3 12 6 15 
3 0 2 9 10 4 1 18 6 6 16 5 4 15 12 13 2 7 3 13 
11 5 12 19 12 5 3 14 10 3 6 15 10 18 10 10 15 10 18 4 
9 9 14 0 6 18 7 5 1 15 12 1 7 2 6 15 8 3 17 14 
20
10 0 11 12 18 16 1 13 19 1 6 11 4 12 4 10 8 13 2 12 
9 11 16 5 19 12 18 13 13 4 13 17 18 18 10 10 14 10 1 1 
14 18 4 10 7 18 0 0 1 11 2 15 11 13 19 8 2 13 12 18 
3 5 10 11 11 10 19 12 11 6 18 13 12 1 8 16 6 12 6 19 
19 9 19 0 8 2 16 12 3 19 18 15 10 10 1 6 3 5 4 16 
6 16 2 18 12 16 14 11 15 1 8 2 3 2 7 0 5 2 3 17 
16 14 14 0 10 15 6 16 11 19 6 16 3 10 9 7 17 18 12 4 
7 7 3 1 16 3 6 16 7 11 4 19 6 16 2 3 6 6 9 15 
12 14 4 8 9 1 10 0 10 7 19 12 15 2 2 5 18 7 11 2 
9 19 2 13 10 10 3 16 6 0 19 8 7 19 18 1 11 15 7 4 
12 7 14 17 6 4 7 19 9 15 9 10 8 5 14 15 16 14 11 15 
6 12 2 7 11 2 5 15 18 13 0 6 13 11 4 19 14 13 10 12 
4 3 18 18 13 5 13 17 2 15 19 14 5 0 17 0 12 3 14 13 
4 1 5 4 6 16 14 6 9 3 19 19 18 10 5 1 18 10 19 6 
5 13 12 10 6 18 7 4 19 1 0 6 14 8 8 13 9 1 4 19 
13 17 10 16 7 16 16 15 5 4 11 1 7 7 4 10 11 6 10 13 
10 15 17 12 11 12 15 1 7 2 13 10 15 2 11 1 17 3 9 15 
2 12 3 12 7 2 4 18 18 10 5 11 5 15 0 14 5 1 5 15 
5 0 15 10 17 1 5 5 1 14 13 10 12 2 14 14 11 14 9 13 
10 8 10 1 9 18 5 0 18 5 3 11 2 19 6 4 6 13 11 7 
20
19 13 5 9 18 10 4 2 6 16 5 11 2 2 3 3 5 14 2 1 
18 4 19 8 1 14 16 2 2 13 5 3 18 8 1 14 16 17 4 10 
9 10 0 12 5 5 17 1 4 0 6 12 7 1 13 18 17 12 15 8 
19 13 8 2 13 4 14 9 11 12 7 0 8 14 9 5 2 8 2 10 
6 7 5 4 14 17 8 9 15 14 14 19 13 13 2 13 14 14 6 13 
15 2 13 12 14 1 12 16 4 3 11 12 13 6 2 3 10 19 9 16 
17 1 16 16 14 12 5 10 14 3 13 5 7 7 15 11 12 3 4 8 
13 16 7 7 3 4 11 7 1 7 2 16 7 7 7 11 2 17 6 12 
16 14 9 8 19 3 1 6 0 2 12 19 5 17 10 11 12 16 12 4 
5 6 4 0 6 13 1 10 3 19 17 11 17 2 17 5 16 19 14 1 
7 14 3 3 14 18 15 18 10 14 17 2 13 7 9 14 18 16 4 14 
9 16 5 10 2 19 2 0 6 6 8 14 13 9 14 11 5 5 10 8 
2 6 1 12 1 10 15 9 2 9 7 12 1 13 3 9 12 0 15 3 
7 14 5 10 18 10 2 0 3 10 5 3 13 19 5 5 9 18 19 13 
9 4 1 18 19 8 5 17 15 10 16 19 15 15 17 8 8 9 18 8 
0 18 12 15 5 10 0 19 16 14 12 14 6 6 9 13 17 16 19 11 
14 13 5 4 8 7 13 11 19 10 15 8 12 11 18 18 1 14 9 8 
16 14 4 7 19 8 9 11 11 8 5 14 10 6 17 12 1 7 5 8 
2 6 9 5 1 16 0 0 16 1 8 3 18 2 16 16 19 14 0 17 
1 16 1 8 9 16 14 6 17 14 3 16 6 3 5 13 17 14 2 13 
20
8 5 14 8 8 13 4 9 13 14 4 13 5 11 5 15 2 2 9 13 
16 0 16 6 17 12 8 18 4 1 3 5 6 2 4 3 18 13 16 14 
16 12 9 15 6 15 6 13 10 2 10 14 2 8 7 16 15 16 18 0 
16 10 16 14 17 0 3 1 15 18 4 4 8 15 1 3 11 13 11 11 
12 1 6 16 2 2 16 8 3 15 1 8 15 15 9 4 9 15 4 16 
14 4 10 5 9 18 14 16 7 10 18 13 8 7 13 6 12 12 4 17 
9 19 2 17 7 7 15 14 9 18 12 11 16 19 13 19 9 17 8 15 
3 13 17 15 5 15 17 8 19 9 14 16 3 14 14 9 9 19 14 4 
9 7 12 14 14 8 11 3 13 6 11 16 11 17 9 13 0 0 9 0 
9 14 12 11 19 14 18 15 11 16 16 2 11 12 7 8 8 6 7 4 
19 1 6 19 19 14 3 4 10 7 14 2 11 9 7 18 11 1 7 15 
10 2 8 10 8 19 17 15 17 10 9 7 19 13 14 19 6 3 2 6 
10 7 0 14 10 12 9 3 15 19 0 19 11 1 9 7 9 5 5 0 
15 13 19 18 18 3 0 11 4 14 13 17 16 2 16 14 6 17 10 3 
3 13 6 16 19 2 3 14 3 18 11 12 7 8 9 0 6 6 8 10 
14 5 7 1 13 14 7 16 1 15 10 14 6 13 5 14 5 15 7 5 
16 1 1 17 2 13 11 2 13 6 2 18 11 15 8 13 7 10 9 1 
11 8 15 1 2 15 11 19 3 1 3 0 1 19 17 14 2 9 14 18 
5 7 19 16 11 6 10 2 0 2 1 15 1 6 14 13 3 14 1 3 
10 10 10 2 10 13 11 10 7 15 18 16 1 1 15 8 14 7 3 16 
20
19 4 1 2 8 16 6 8 14 4 17 3 1 1 14 6 15 9 14 6 
14 5 0 19 10 10 16 8 1 8 0 4 12 11 4 4 16 4 3 12 
6 16 0 5 11 1 8 12 0 11 5 7 9 4 19 17 10 16 19 12 
9 14 7 0 12 16 16 18 6 4 8 18 2 9 4 6 14 5 0 1 
2 6 6 5 0 8 7 6 17 17 3 4 2 6 11 13 18 19 15 9 
18 3 10 12 4 0 15 9 0 4 3 4 2 3 9 15 2 3 13 5 
14 0 17 9 4 19 2 9 18 18 1 16 15 14 9 9 9 2 16 8 
11 15 4 9 1 4 11 2 7 7 0 17 0 10 11 13 11 17 5 12 
13 19 0 16 8 17 1 3 3 13 16 13 15 12 16 15 11 18 2 8 
8 11 9 1 1 19 1 1 2 16 16 3 2 4 8 5 11 1 0 4 
8 10 11 16 3 12 12 13 2 11 1 14 3 10 11 2 12 14 13 8 
17 6 12 4 10 15 2 14 11 13 1 1 15 12 10 12 19 2 11 10 
4 11 4 8 7 12 18 2 6 0 4 17 0 6 5 1 14 9 10 11 
0 6 7 9 14 18 9 9 10 17 18 13 16 4 1 4 7 7 4 9 
11 11 1 5 12 11 0 19 13 13 19 11 17 14 8 5 19 18 6 16 
10 4 15 0 1 17 13 8 8 6 9 2 10 19 14 1 8 10 15 17 
18 5 14 3 7 4 18 15 6 10 1 3 17 15 8 11 7 6 13 17 
15 7 19 18 4 11 8 18 14 19 1 14 12 13 18 14 11 4 13 18 
5 0 8 19 3 9 7 12 16 7 18 10 16 18 1 0 19 1 13 1 
17 3 9 7 2 14 0 0 4 18 1 2 14 12 17 4 2 12 13 15 
20 
10 6 18 4 2 10 18 16 2 8 13 9 4 8 3 8 3 8 8 0 
7 3 16 3 0 5 15 0 6 13 15 5 8 8 5 11 0 10 2 19 
14 1 1 9 3 13 14 4 18 2 16 19 6 10 18 4 7 7 19 18 
15 16 14 11 9 11 13 14 18 7 6 10 9 1 13 19 9 6 2 17 
11 5 3 0 0 3 5 0 11 10 18 12 13 19 9 13 13 0 18 15 
19 6 9 7 10 2 2 3 10 2 12 13 5 2 4 2 1 12 1 4 
13 2 19 18 15 15 2 14 11 13 19 16 8 16 15 7 10 16 17 1 
10 9 6 17 2 2 4 13 15 6 17 4 14 12 19 18 18 17 3 5 
1 3 17 10 17 7 5 13 15 12 17 4 3 11 5 12 16 11 3 15 
18 9 9 2 16 11 10 0 15 18 14 5 18 6 1 14 4 6 9 15 
13 8 15 8 17 18 17 12 4 1 3 13 15 11 10 13 7 15 7 4 
5 11 18 13 19 12 12 2 4 9 5 15 18 3 11 16 8 15 1 1 
12 6 8 13 9 18 8 14 11 0 7 13 13 9 0 12 17 4 3 6 
8 16 0 18 13 3 10 10 16 16 0 11 13 19 15 3 17 2 16 9 
13 6 10 5 9 5 5 16 0 18 12 18 0 17 3 11 4 2 2 3 
5 19 4 3 11 12 7 7 1 19 4 2 8 10 14 1 9 14 15 15 
1 17 16 9 10 17 17 11 14 11 8 7 15 15 15 17 9 5 4 5 
4 4 13 4 14 5 0 13 9 16 8 0 18 9 17 1 18 11 14 15 
6 4 6 13 2 6 16 10 8 2 1 3 9 17 12 17 19 3 4 15 
15 0 4 3 2 19 17 7 6 16 16 14 7 17 3 15 6 10 11 2







































//Cover rectangle with dominos
You are given 28 different types of domino, each domino has size of 1x2 with 2 numbers on it as follow



And a board of size 7x8, your task is cover the board with above dominos such that a domino can only be placed on two adjacent squares on board if the numbers of the squares and of domino are equal.

How many different way to cover the board?

For example if the board are given as below, there are 18 way to cover it, one of them is as below.







Input

The first line is the number of test case T (T < = 50).

Each test case will be given on 7 lines, each line have 8 numbers separate by a space is the board for the test case. It have a empty line between 2 test cases.

Output

Print each test case on two lines, the first line is "Case #x", where x is the test case number, the next line is the numbers of different way to cover the board.

Sample

Input

2

6 1 6 5 3 2 5 0

6 6 0 1 6 0 4 4

2 2 3 6 5 5 1 5

1 2 0 4 4 3 4 2

5 2 1 1 4 1 3 0

3 3 0 2 3 5 2 6

1 3 4 6 4 5 0 0

 

6 6 6 0 1 4 6 3

2 5 3 3 3 5 5 4

0 0 4 3 3 1 2 4

4 4 2 0 5 5 3 0

0 1 2 2 6 1 2 1

4 6 2 6 5 6 0 4

5 0 5 1 1 1 2 3

...

 

Output

 

Case #1

32

Case #2

24

 


















//tc
50
6 4 6 0 6 3 1 2 
6 1 5 3 5 0 4 0 
2 4 1 5 0 2 4 4 
5 5 1 3 6 5 4 1 
0 3 3 4 4 5 5 2 
2 3 2 6 1 1 0 1 
3 3 0 0 2 2 6 6 

3 3 3 2 6 6 4 6 
2 1 0 1 5 0 6 1 
4 1 4 3 0 4 0 2 
0 0 6 0 2 2 0 3 
3 1 5 2 2 4 3 5 
2 6 5 5 1 5 3 6 
5 4 4 4 6 5 1 1 

2 3 6 6 2 1 6 4 
1 3 2 2 5 4 3 4 
5 2 1 0 0 0 0 5 
4 4 1 1 5 3 6 3 
2 0 4 1 0 3 0 4 
2 6 6 1 0 6 2 4 
5 5 5 1 6 5 3 3 

0 0 1 3 2 6 0 6 
1 2 0 1 5 4 2 0 
0 4 1 4 4 6 1 6 
0 5 3 6 2 3 4 4 
5 6 5 5 5 2 0 3 
2 2 6 6 2 4 5 1 
3 4 1 1 3 3 5 3 

5 3 1 6 0 5 3 0 
4 2 1 4 4 3 6 2 
3 2 2 5 6 5 2 1 
2 0 1 0 1 1 3 6 
5 5 1 5 6 4 2 2 
0 4 4 5 6 6 6 0 
0 0 3 3 1 3 4 4 

2 0 1 5 0 5 5 4 
3 1 2 4 6 4 1 1 
1 2 3 6 5 2 3 0 
4 1 3 4 0 4 6 1 
6 6 3 2 0 6 5 6 
1 0 6 2 2 2 0 0 
5 3 5 5 4 4 3 3 

5 2 0 3 1 4 6 3 
5 1 3 2 6 0 0 4 
5 3 5 6 6 6 5 4 
6 4 4 4 1 0 1 1 
3 4 1 3 1 2 2 4 
2 2 6 1 2 0 5 0 
2 6 5 5 0 0 3 3 

5 6 2 5 2 6 4 3 
1 3 0 0 6 1 6 0 
3 5 5 4 0 2 1 5 
0 4 6 6 1 1 0 3 
6 4 3 2 0 1 1 2 
3 3 4 2 4 1 2 2 
0 5 5 5 4 4 3 6 

5 5 0 3 4 2 4 1 
1 5 2 0 6 5 5 0 
6 0 1 1 5 2 6 3 
4 6 3 2 2 2 6 6 
0 1 3 1 3 4 2 6 
0 4 3 3 5 4 1 2 
1 6 5 3 0 0 4 4 

6 2 5 2 5 5 4 1 
5 3 5 0 6 4 2 2 
3 6 1 6 1 2 0 2 
0 6 3 2 2 4 1 0 
4 5 4 3 6 6 5 1 
3 0 4 4 5 6 3 1 
3 3 0 4 1 1 0 0 

4 6 6 0 0 1 6 6 
0 0 2 4 0 3 5 6 
1 6 2 5 3 2 5 4 
4 0 1 4 3 4 2 0 
4 4 5 1 5 5 1 1 
3 6 0 5 2 1 2 2 
2 6 1 3 3 5 3 3 

3 1 0 3 1 5 1 1 
4 1 5 4 5 2 5 6 
6 0 0 2 3 2 4 3 
3 6 2 2 0 5 4 2 
5 5 1 0 0 4 3 5 
6 1 2 6 3 3 6 6 
2 1 4 6 0 0 4 4 

3 0 0 1 4 5 6 2 
6 3 2 0 2 2 1 1 
4 6 4 2 2 3 0 0 
5 2 1 4 5 0 1 3 
5 5 5 3 5 1 4 0 
6 0 5 6 4 4 2 1 
1 6 4 3 3 3 6 6 

2 4 4 5 0 4 0 3 
0 0 4 3 2 0 5 6 
3 6 3 2 6 6 2 6 
3 5 2 5 1 6 0 1 
4 4 2 1 0 6 6 4 
5 0 5 5 3 1 2 2 
4 1 1 5 1 1 3 3 

1 5 4 0 0 1 5 4 
1 4 2 2 5 3 6 1 
4 3 1 1 0 6 3 2 
4 4 1 3 0 2 2 4 
3 3 4 6 3 6 2 5 
5 6 0 0 2 1 6 6 
6 2 0 5 3 0 5 5 

4 6 5 2 0 2 0 0 
5 3 6 1 2 3 6 5 
5 1 1 2 2 4 6 3 
0 4 1 0 6 6 5 4 
1 4 6 0 3 3 6 2 
1 3 3 0 5 0 4 3 
5 5 1 1 2 2 4 4 

3 6 2 4 1 6 3 3 
4 0 1 5 2 2 4 1 
5 6 0 0 6 4 1 0 
1 3 5 3 6 6 2 0 
4 3 0 5 0 6 1 1 
5 2 2 6 1 2 2 3 
5 4 5 5 3 0 4 4 

5 6 3 6 6 0 4 0 
6 4 1 1 4 3 4 5 
3 3 2 0 1 2 2 4 
6 2 2 2 5 0 5 2 
3 1 2 3 3 5 4 4 
5 1 4 1 0 1 6 1 
0 3 5 5 0 0 6 6 

3 5 2 2 3 0 6 2 
0 4 5 1 3 2 3 1 
6 0 4 6 0 1 3 3 
6 1 0 0 1 1 5 4 
4 1 3 6 5 0 3 4 
5 6 1 2 0 2 4 4 
2 5 5 5 2 4 6 6 

2 5 3 1 0 5 0 3 
6 3 5 5 6 0 0 1 
4 1 3 5 4 4 2 1 
4 2 1 6 6 2 4 0 
2 2 1 5 3 4 2 0 
5 4 6 4 3 2 6 5 
1 1 0 0 3 3 6 6 

4 6 2 0 5 5 6 0 
5 6 5 2 0 0 4 3 
3 1 2 1 5 1 4 1 
3 5 0 3 2 2 6 3 
2 6 4 4 5 0 2 3 
2 4 1 1 1 0 6 6 
5 4 1 6 4 0 3 3 

1 1 0 4 5 1 3 5 
1 0 0 5 6 1 0 3 
5 2 4 4 4 6 0 2 
3 1 3 6 4 5 6 6 
6 2 3 2 3 3 2 2 
0 0 2 1 4 2 6 0 
3 4 5 6 1 4 5 5 

6 5 2 0 0 5 5 3 
6 2 1 2 1 6 4 0 
5 1 5 2 4 3 4 4 
1 4 2 2 6 3 4 5 
2 4 6 0 3 1 6 6 
3 0 6 4 1 1 1 0 
3 2 5 5 3 3 0 0 

6 2 1 5 0 6 6 4 
5 2 0 0 2 0 1 6 
4 4 4 5 0 5 0 1 
3 6 5 3 2 1 3 0 
3 2 2 2 4 2 3 1 
5 5 1 1 4 1 5 6 
4 0 4 3 6 6 3 3 

0 3 1 2 3 5 0 4 
5 4 3 2 6 1 1 0 
2 6 4 3 4 1 3 3 
3 1 5 0 6 6 0 6 
4 6 6 3 0 2 1 1 
2 2 5 2 0 0 5 6 
1 5 4 2 4 4 5 5 

1 0 5 4 6 3 2 2 
5 1 1 2 4 2 3 2 
3 4 0 6 4 6 3 5 
2 0 6 6 5 0 2 6 
6 5 3 3 2 5 1 6 
0 3 4 0 5 5 1 1 
1 4 0 0 1 3 4 4 

2 0 4 4 1 2 0 0 
2 4 2 2 6 0 6 3 
5 5 4 0 5 4 3 5 
3 3 1 3 1 6 5 2 
0 5 2 3 5 6 0 3 
6 6 2 6 6 4 1 4 
1 0 1 1 1 5 4 3 

6 5 4 0 2 4 3 1 
5 3 1 5 6 3 3 4 
5 4 6 4 3 3 2 5 
5 0 3 0 1 2 2 0 
4 4 1 0 2 6 3 2 
1 6 6 0 1 1 5 5 
0 0 4 1 6 6 2 2 

1 0 3 3 1 2 1 3 
5 5 3 5 5 1 2 4 
0 2 3 4 2 5 1 1 
3 0 6 4 0 0 4 5 
6 5 6 6 6 3 6 1 
3 2 6 2 0 5 0 6 
0 4 4 4 2 2 4 1 

4 0 6 3 6 1 0 3 
4 1 2 0 0 6 2 2 
5 2 1 5 6 5 5 5 
2 3 1 3 6 6 0 5 
3 4 2 1 6 4 4 5 
6 2 1 0 4 2 5 3 
3 3 0 0 4 4 1 1 

0 2 4 4 2 1 3 6 
3 5 6 6 1 3 4 1 
6 5 2 6 3 0 4 0 
1 5 2 3 6 1 2 2 
5 0 0 1 0 6 4 3 
4 2 1 1 2 5 6 4 
4 5 0 0 3 3 5 5 

2 3 0 4 6 6 2 6 
2 1 5 2 1 6 3 0 
0 5 0 6 5 6 5 4 
2 2 3 3 6 3 4 1 
6 4 1 0 0 0 5 5 
4 4 1 1 1 5 3 4 
3 1 0 2 2 4 5 3 

4 0 3 3 2 2 6 5 
3 0 4 6 4 3 0 2 
4 1 0 5 4 5 5 5 
6 6 0 6 3 6 3 1 
4 4 0 1 6 2 2 5 
3 5 1 2 1 1 2 4 
3 2 0 0 5 1 6 1 

6 1 2 3 6 0 6 4 
4 4 3 0 5 3 1 5 
1 2 3 1 6 2 1 1 
3 4 5 0 4 0 2 4 
6 3 5 6 5 4 0 2 
1 0 5 5 5 2 4 1 
6 6 3 3 2 2 0 0 

2 1 6 1 0 5 5 1 
4 0 0 3 4 2 6 3 
1 3 2 6 1 4 3 5 
1 0 0 0 5 2 4 3 
0 6 4 5 2 2 3 2 
2 0 6 4 5 6 6 6 
4 4 3 3 1 1 5 5 

1 0 0 5 1 2 3 1 
6 4 2 6 0 4 2 0 
3 3 4 2 4 5 3 2 
5 6 0 0 5 2 0 3 
6 0 3 5 3 6 4 1 
2 2 1 6 3 4 6 6 
5 5 4 4 1 5 1 1 

1 5 3 5 1 6 2 4 
4 4 4 3 0 0 0 4 
2 1 6 2 4 5 3 6 
2 3 0 2 0 5 0 6 
6 5 1 4 2 5 3 0 
1 1 2 2 1 3 4 6 
5 5 0 1 6 6 3 3 

0 1 5 5 6 0 2 4 
1 5 0 2 4 3 6 5 
5 3 4 0 1 3 6 1 
6 6 0 5 4 4 4 1 
0 3 1 1 2 6 0 0 
2 1 4 5 3 3 2 2 
3 6 2 3 6 4 2 5 

1 4 2 6 1 6 4 6 
6 5 3 4 0 3 0 2 
5 2 2 4 0 0 6 3 
5 0 4 4 1 1 6 0 
4 5 5 1 3 1 5 5 
3 5 1 0 1 2 2 2 
3 2 4 0 3 3 6 6 

1 6 0 6 4 0 0 2 
1 3 3 3 4 3 1 2 
5 5 0 3 3 2 4 5 
3 6 5 6 0 5 4 4 
1 4 5 1 1 0 0 0 
1 1 2 6 4 2 6 6 
5 3 2 5 4 6 2 2 

3 5 1 4 6 3 2 0 
2 3 0 5 1 3 4 0 
6 4 2 1 2 4 2 2 
1 0 0 0 4 3 5 6 
4 4 3 0 1 1 5 1 
5 2 5 5 6 2 0 6 
3 3 1 6 4 5 6 6 

6 0 0 5 6 1 5 2 
2 1 3 2 6 6 6 5 
4 1 4 0 1 0 5 4 
3 4 0 3 4 2 6 4 
2 2 2 0 6 3 3 5 
3 3 5 1 1 1 2 6 
1 3 4 4 5 5 0 0 

6 0 3 0 2 4 0 2 
1 5 3 3 4 4 5 3 
3 6 4 5 3 1 4 6 
6 5 2 5 1 0 5 0 
2 3 1 1 1 2 1 6 
2 2 6 2 1 4 0 0 
4 3 5 5 0 4 6 6 

0 3 6 5 3 2 5 3 
4 2 1 6 6 4 3 4 
1 0 1 4 5 4 0 5 
0 2 0 6 3 6 2 5 
6 6 1 3 2 2 1 5 
6 2 4 0 4 4 1 1 
3 3 0 0 1 2 5 5 

5 0 3 1 4 0 0 1 
2 0 2 2 6 1 2 6 
0 3 2 1 3 3 4 6 
1 5 3 5 3 4 0 6 
1 1 4 1 0 0 5 6 
2 5 4 2 5 4 6 6 
4 4 6 3 5 5 3 2 

0 5 6 4 1 0 0 0 
2 5 6 2 5 6 3 5 
4 3 4 2 3 6 0 4 
1 5 1 2 5 5 6 1 
1 3 1 1 2 3 3 3 
4 4 6 0 4 1 2 2 
6 6 2 0 4 5 0 3 

5 0 3 2 1 3 3 0 
6 5 5 4 3 6 1 4 
4 0 1 0 5 1 2 4 
0 2 5 5 0 0 5 3 
3 4 6 2 4 6 1 2 
3 3 6 6 0 6 2 5 
4 4 1 1 6 1 2 2 

4 1 4 0 5 6 6 4 
3 5 0 3 5 1 0 2 
6 1 4 5 0 6 3 1 
5 5 4 3 3 3 3 2 
2 6 5 0 2 1 1 1 
0 1 4 4 4 2 5 2 
6 6 3 6 2 2 0 0 

3 5 4 4 2 1 1 6 
1 4 4 0 3 4 4 5 
0 6 0 2 5 1 0 5 
3 6 2 5 5 5 2 6 
3 1 0 1 5 6 0 0 
3 2 2 2 0 3 6 4 
2 4 6 6 3 3 1 1 

2 4 4 5 1 2 6 3 
1 0 4 1 4 4 5 5 
2 2 6 1 0 0 5 0 
4 0 0 3 5 6 2 5 
6 4 1 3 1 5 3 3 
0 6 5 3 0 2 6 2 
3 2 3 4 1 1 6 6




































//Prime Ring
Một vòng gồm N phần tử hình tròn. Trong mỗi hình tròn sẽ chứa một số nguyên P và tổng hai số nguyên trong hai hình tròn cạnh nhau trên vòng tròn tạo thành một số nguyên tố. Nhiệm vụ của bạn là với một chuỗi gồm N phần tử số nguyên, đưa ta tổng số cách xếp N phần tử đó vào vòng tròn thỏa mãn yêu cầu trên.

 

Ví dụ

Ta có đầu vào là một dãy gồm 6 phần tử: 1, 2, 3, 4, 5, 6. Thì đầu ra sẽ có 2 cách xếp là cách 1: 1 - 4 - 3 - 2 - 5 - 6 và cách 2: 1 - 6 - 5 - 2 -  3 - 4





Cách 1: 1 - 4 - 3 - 2 - 5 - 6

 

Input

Dòng đầu liên là T chính là số testcase (T ≤ 100). Mỗi testcase sẽ bao gồm 2 dòng:

Dòng đầu tiên là N chính là số lượng phần tử các số nguyên. (3 ≤ N ≤ 16)\

Dòng thứ hai là một dãy gồm N số nguyên P ( 1 ≤ P ≤ 50)

 

Output

Kết quả được in ra trên một dòng theo định sạng sau: “Case number_testcase: answer”

 

Sample

Input

2

8

1 2 3 4 5 6 7 8

6

1 2 3 4 5 6

 

 

Output

Case 1: 4

Case 2: 2











//tc
100
3
1 2 3 
4
1 2 3 4 
5
1 2 3 4 5 
6
1 2 3 4 5 6 
7
1 2 3 4 5 6 7 
8
1 2 3 4 5 6 7 8 
9
1 2 3 4 5 6 7 8 9 
10
1 2 3 4 5 6 7 8 9 10 
11
1 2 3 4 5 6 7 8 9 10 11 
12
1 2 3 4 5 6 7 8 9 10 11 12 
13
1 2 3 4 5 6 7 8 9 10 11 12 13 
14
1 2 3 4 5 6 7 8 9 10 11 12 13 14 
15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 
16
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 
16
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 
9
3 4 5 6 7 8 9 10 11 
6
7 8 9 10 11 12 
15
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 
15
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 
10
8 9 10 11 12 13 14 15 16 17 
16
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 
10
4 5 6 7 8 9 10 11 12 13 
16
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 
14
9 10 11 12 13 14 15 16 17 18 19 20 21 22 
12
7 8 9 10 11 12 13 14 15 16 17 18 
13
6 7 8 9 10 11 12 13 14 15 16 17 18 
15
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 
8
9 10 11 12 13 14 15 16 
9
8 9 10 11 12 13 14 15 16 
4
9 10 11 12 
4
11 12 13 14 
10
5 6 7 8 9 10 11 12 13 14 
8
12 13 14 15 16 17 18 19 
14
7 8 9 10 11 12 13 14 15 16 17 18 19 20 
6
4 5 6 7 8 9 
7
6 7 8 9 10 11 12 
8
7 8 9 10 11 12 13 14 
10
4 5 6 7 8 9 10 11 12 13 
4
11 12 13 14 
14
7 8 9 10 11 12 13 14 15 16 17 18 19 20 
3
10 11 12 
6
12 13 14 15 16 17 
4
4 5 6 7 
8
11 12 13 14 15 16 17 18 
13
8 9 10 11 12 13 14 15 16 17 18 19 20 
3
5 6 7 
11
9 10 11 12 13 14 15 16 17 18 19 
13
5 6 7 8 9 10 11 12 13 14 15 16 17 
3
11 12 13 
9
8 9 10 11 12 13 14 15 16 
3
12 13 14 
13
3 4 5 6 7 8 9 10 11 12 13 14 15 
15
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 
8
11 12 13 14 15 16 17 18 
4
6 7 8 9 
7
7 8 9 10 11 12 13 
13
3 4 5 6 7 8 9 10 11 12 13 14 15 
13
9 10 11 12 13 14 15 16 17 18 19 20 21 
4
11 12 13 14 
7
12 13 14 15 16 17 18 
3
6 7 8 
10
11 12 13 14 15 16 17 18 19 20 
7
5 6 7 8 9 10 11 
14
4 5 6 7 8 9 10 11 12 13 14 15 16 17 
6
8 9 10 11 12 13 
8
11 12 13 14 15 16 17 18 
13
3 4 5 6 7 8 9 10 11 12 13 14 15 
8
9 10 11 12 13 14 15 16 
8
9 10 11 12 13 14 15 16 
12
8 9 10 11 12 13 14 15 16 17 18 19 
5
5 6 7 8 9 
15
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 
12
6 7 8 9 10 11 12 13 14 15 16 17 
4
5 6 7 8 
7
3 4 5 6 7 8 9 
8
9 10 11 12 13 14 15 16 
14
10 11 12 13 14 15 16 17 18 19 20 21 22 23 
12
7 8 9 10 11 12 13 14 15 16 17 18 
16
5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 
11
3 4 5 6 7 8 9 10 11 12 13 
4
7 8 9 10 
11
3 4 5 6 7 8 9 10 11 12 13 
16
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 
6
10 11 12 13 14 15 
4
10 11 12 13 
8
6 7 8 9 10 11 12 13 
10
12 13 14 15 16 17 18 19 20 21 
12
11 12 13 14 15 16 17 18 19 20 21 22 
4
11 12 13 14 
13
9 10 11 12 13 14 15 16 17 18 19 20 21 
13
3 4 5 6 7 8 9 10 11 12 13 14 15 
8
11 12 13 14 15 16 17 18 
7
4 5 6 7 8 9 10 
5
8 9 10 11 12 
11
12 13 14 15 16 17 18 19 20 21 22 
5
10 11 12 13 14 
5
6 7 8 9 10 
4
4 5 6 7 
7
3 4 5 6 7 8 9 
4
9 10 11 12