#include <stdio.h>
int arr[500][500]={};
int d[500][500]={};
int cnt=0,turn=0;
void dfs(int x,int y,int f,int s,int i,int j)
{
if (arr[x][y]!=f||s==5) { //s가 5이면 리턴
return;
}
cnt++;
//printf("(%d %d %d) ",x,y,cnt);
if (arr[x+1][y+1]==f&&s==1){ //s가 1이고 x+1,y 위치의 값이f일때 s에 1을 넣어서 재귀
dfs(x+1,y+1,f,1,i,j);
return;
}
else if (arr[x+1][y]==f&&s==2) {
dfs(x+1,y,f,2,i,j);
return;
}
else if (arr[x][y+1]==f&&s==3) {
dfs(x,y+1,f,3,i,j);
return;
}
else if (arr[x-1][y+1]==f&&s==4) {
dfs(x-1,y+1,f,4,i,j);
return;
}
if (cnt==5) {
if(s==1 && ( arr[x+1][y+1]==f || arr[i-1][j-1]==f) ) return ;
else if(s==2 && ( arr[x+1][y]==f || arr[i-1][j]==f) ) return ;
else if(s==3 && ( arr[x][y+1]==f || arr[i][j-1]==f) ) return ;
else if(s==4 && ( arr[x-1][y+1]==f || arr[i+1][j-1]==f) ) return ;
printf("%d\n%d %d\n",f,i,j);
turn = 1;
return;
}
// printf("hoho ");
s++;
cnt=0;
dfs(i,j,f,s,i,j);
}
int main()
{
for (int i=1 ; i<=500 ; i++) {
for (int j=1 ; j<=500 ; j++) {
arr[i][j]=3;
}
}
for (int i=1 ; i<=19 ; i++) {
for (int j=1 ; j<=19 ; j++) {
scanf("%d",&arr[i][j]);
}
}
for (int i=1 ; i<=19 ; i++) {
for (int j=1 ; j<=19 ; j++) {
if (turn == 1) return;
if (arr[i][j]==1) {
dfs(i,j,1,1,i,j);
}
else if (arr[i][j]==2) {
dfs(i,j,2,1,i,j);
}
}
}
printf("0");
}