#include <stdio.h>
#include <stdlib.h>
/*int main()
{
int a[15][15], b[11];
int sum;
for(int i=0; i<10; i++)
{
for(int j=0; j<10; j++)
{
scanf("%d", &a[i][j]);
}
}
for(int i=0; i<10; i++)
{
scanf("%d", &b[i]);
}
for(int y=0; y<10; y++)
{
if(b[y]==1)//b의 y번째가 1일때
{
sum = y+1;
for(int x=9; x>=0; x--)//아래서부터 위로 진격
{
if(a[x][y]==0&&x==1)//끝까지 진격할때 길에 아무것도 없을때
{
printf("%d safe\n",sum);
break;
}
else if(a[x][y]<0) //진격도중 구덩이가 있을때
{
printf("%d fall\n", sum);
break;
}
else if(a[x][y]>0) //진격도중 장애물에 부딛쳤을때
{
printf("%d crash\n", sum);
break;
}
}
}
}
}*/
int main()
{
int a[10][10],b[8][3];
int n;
///입력
for(int i=0; i<10; i++)
{
for(int j=0; j<10; j++)
{
scanf("%d", &a[i][j]);
}
}
///폭탄 맵핑
for(int i=0; i<10; i++)
{
for(int j=0; j<10; j++)
{
if(a[i][j] >= 1)//(i,y)좌표에 폭탄이 있을때
{
int q = a[i][j];
int u=0;
int d=0;
int r=0;
int l=0;
for(int k=0; k<q; k++)
{
a[i][j] = -2;
if(a[i+k][j]!=-1&&d==0&&a[i+k][j]<=0)
{
a[i+k][j]=-2;
}
else if(a[i+k][j] == -1)
{
d=1;
}
if(a[i-k][j]!=-1&&u==0&&a[i-k][j]<=0)
{
a[i-k][j]=-2;
}
else if(a[i-k][j] == -1)
{
d=1;
}
if(a[i][j+k]!=-1&&d==0&&a[i][j+k]<=0)
{
a[i][j+k]=-2;
}
else if(a[i][j+k] == -1)
{
r = 1;
}
if(a[i][j-k]!=-1&&l==0&&a[i][j-k]<=0)
{
a[i][j-k]=-2;
}
else if(a[i][j-k]==-1)
{
l=1;
}
}
}
}
}
for(int i=0; i<10; i++)
{
for(int j=0; j<10; j++)
{
printf("%d ", a[i][j]);
}
printf("\n");
}
}