/*
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("Hello World!\n");
return 0;
}
*/
/*
#include<stdio.h>
int front,rear;
int map[1002][1002]={0},queue[1002]={0};
int input(int x, int y)
{
}
int ouput(int x, int y)
{
}
int main()
{
int n,m,i,j;
scanf("%d %d",&m,&n);
for(i=0; i<=n+1; i++)
{
for(j=0; j<=m+1; j++)
{
if(j==0||i==0||j==m+1||i==n+1)
{
map[i][j]=-1;
}
}
}
for(i=1; i<=n; i++)
{
for(j=1; j<=m; j++)
{
scanf("%d",&map[i][j]);
}
}
return 0;
}
*/
/*
#include<stdio.h>
int map[15][15] = {0};
void f(int x, int y)
{
if
}
int main()
{
int r,c,i,j,k=0;
for(i=1; i<=9; i++)
{
for(j=1; j<=9; j++)
{
scanf("%d",&map[i][j]);
}
}
scanf("%d %d",&r,&c);
for(i=1; i<=9; i++)
{
for(j=1; j<=9; j++)
{
if(map[r][c]==1)
{
map[r][c]=-1;
}
if(map[i][j]==1&&i!=r&&j!=c)
{
map[i][j]='_';
}
map[i][j]=map[i][j+1]+map[i][j-1]+map[i+1][j]+map[i-1][j]+map[i+1][j+1]+map[i+1][j-1]+map[i-1][j+1]+map[i-1][j-1];
}
}
for(i=1; i<=9; i++)
{
for(j=1; j<=9; j++)
{
printf("%d ",map[i][j]);
}
printf("\n");
}
return 0;
}
/*
if(map[r][c]==1)
{
map[r][c]=-1;
}
if(map[i][j]==1&&i!=r&&j!=c)
{
map[i][j]='_';
}
k=map[i][j+1]+map[i][j-1]+map[i+1][j]+map[i-1][j]+map[i+1][j+1]+map[i+1][j-1]+map[i-1][j+1]+map[i-1][j-1];
map[i][j]=k;
*/
#include<stdio.h>
struct loc
{
int x,y;
};
char map[11][11]={0};
char result[11][11]={0};
struct loc location[100000]={0};
int front,rear;
void f1()
{
int x=location[front].x;
int y=location[front].y;
front++;
if(x==0||y==0||x==10||y==10) return;
int sum=0;
if(map[x][y]=='1')return;
for(int i=-1;i<=1;i++)
{
for(int j=-1;j<=1;j++)
{
if(map[x+i][y+j]=='1')
{
sum++;
}
}
}
if(sum>0)
{
result[x][y] = sum+'0';
return;
}
sum=0;
result[x][y]='X';
for(int i=-1;i<=1;i++)
{
for(int j=-1;j<=1;j++)
{
if(map[x+i][y+j]=='1')
{
sum++;
}
if(result[x+i][y+j]!='X'&&result[x+i][y+j]=='_'&&!sum)
{
location[rear].x = x+i;
location[rear].y = y+j;
rear++;
}
}
}
result[x][y] = (sum+'0');
}
int main()
{
front=rear=0;
int i,j,n,k,x,y;
for(i=1;i<=9;i++)
{
for(j=1;j<=9;j++)
{
scanf("%c",&map[i][j]);
result[i][j] = '_';
}
}
scanf("%d %d",&x,&y);
if(map[x][y]=='1')
{
for(i=1;i<=9;i++)
{
for(j=1;j<=9;j++)
{
if(x==i&&y==j)
{
printf("-1 ");
}
else
{
printf("_ ");
}
}
printf("\n");
}
return 0;
}
else
{
location[rear].x = x;
location[rear].y = y;
rear++;
for(;front!=rear;)
{
f1();
}
}
for(i=1;i<=9;i++)
{
for(j=1;j<=9;j++)
{
if(result[i][j]=='-1')
{
printf("-1");
}
else
{
printf("%c",result[i][j]);
}
}
printf("\n");
}
return 0;
}