/*#include <stdio.h>
int n;
int map[100][100]= {},map1[100][100]={};
void dfs(int i, int j,int h)
{
if (i>=n || i<0 || j>=n || j<0 || map[i][j]<=h)
return ;
map[i][j]=-1;
dfs (i+1,j,h);
dfs (i-1,j,h);
dfs (i,j+1,h);
dfs (i,j-1,h);
}
void copymap()
{
for (int i=0; i<n; i++)
{
for (int j=0; j<n; j++)
{
map[i][j]=map1[i][j];
}
}
}
int main()
{
int i,j,max=1;
int minh=100,maxh=1,num;
scanf("%d",&n);
for (i=0; i<n; i++)
{
for (j=0; j<n; j++)
{
scanf("%d",&map[i][j]);
map1[i][j]=map[i][j];
if(maxh<map[i][j]) maxh=map[i][j];
if(minh>map[i][j]) minh=map[i][j];
}
}
for(int h=minh; h<maxh; h++)
{
copymap();
num=0;
for (i=0; i<n; i++)
{
for (j=0; j<n; j++)
{
if(map[i][j]>h)
{
dfs(i,j,h);
num++;
}
}
}
if(max<num)
{
max=num;
}
//printf("h = %d num=%d max = %d\n",h,num,max);
}
printf("%d",max);
return 0;
}
*/
#include <stdio.h>
int map[11][11]={}, map1[11][11]={};
void dfs(int i, int j)
{
if (i>9 || i<=0 || j>9 || j<=0 || map1[i][j]!=0) return;
map1[i][j]=-1;
dfs(i,j+1);
dfs(i,j-1);
dfs(i+1,j);
dfs(i-1,j);
}
/*void bomb(int i, int j)
{
if (i>=9 || i<0 || j>=9 || j<0 || map[i][j]!=0) return;
if (map[i][j])
bomb(i+1,j);
bomb(i-1,j);
bomb(i,j+1);
bomb(i,j-1);
bomb(i+1,j+1);
bomb(i+1,j-1);
bomb(i-1,j+1);
bomb(i-1,j-1);
}*/
int main()
{
int i,j,r,c;
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++)
{
map1[i][j]=map[i+1][j]+map[i-1][j]+map[i][j+1]+
map[i][j-1]+map[i+1][j+1]+map[i+1][j-1]+
map[i-1][j+1]+map[i-1][j-1];
}
}
dfs(r,c);
for (i=1; i<=9; i++)
{
for (j=1; j<=9; j++)
{
printf("%2d ",map1[i][j]);
}
printf("\n");
}
return 0;
}