/*
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("Hello world!\n");
return 0;
}
*/
/*
#include <stdio.h>
int main()
{
int n,i,j,a[18][18]={0};
scanf("%d",&n);
for(i=1;i<17;i++){
for(j=1;j<17;j++){
scanf("%1d",&a[i][j]);
}
}
for(i=0;i<17;i++){
for(j=0;j<17;j++){
if(a[i][j]==0){
if(a[i+1][j+1]==3||a[i+1][j]==3||a[i+1][j-1]==3||a[i][j-1]==3||a[i-1][j-1]==3||a[i-1][j]==3||a[i-1][j+1]==3){
printf("1");
}
else if(a[i+1][j+1]!=3||a[i+1][j]!=3||a[i+1][j-1]!=3||a[i][j-1]!=3||a[i-1][j-1]!=3||a[i-1][j]!=3||a[i-1][j+1]!=3){
printf("0");
}
}
}
}
}
*/
/*
#include <stdio.h>
void rec(int n)
{
int a[18][18];
if(a[18][18]==3){
printf("1");
return 0;
}
}
int main()
*/
#include<stdio.h>
int map[18][18] = {0};
int sX, sY, fX, fY;
int flag;
int p = 5;
void move(int x, int y) {
if(map[x][y] == 3){
flag = 1;
return ;
}
map[x][y] = 1;
if(map[x-1][y]==0||map[x-1][y]==3) {
move(x-1, y);
}
if(map[x][y+1]==0||map[x][y+1]==3) {
move(x,y+1);
}
if(map[x+1][y]==0||map[x+1][y]==3) {
move(x+1,y);
}
if(map[x][y-1]==0||map[x][y-1]==3) {
move(x,y-1);
}
}
int calcu() {
flag = 0;
move(sX, sY);
return flag;
}
int main() {
int i, j, k, n;
for(k=0; k<10; k++) {
scanf("%d", &n);
for(i=1; i<17; i++) {
for(j=1; j<17; j++) {
scanf("%1d", &map[i][j]);
if(map[i][j] == 2) {
sX = i;
sY = j;
}
if(map[i][j] == 3) {
fX = i;
fY = j;
}
}
}
printf("#%d %d\n", n, calcu());
}
}