#include<bits/stdc++.h>
using namespace std;
int a[200][200],n,m;
void f(int x,int y,int val)
{ if(x<0 || x>=n || y<0 || y>=m)
return;
if(a[x][y]==-1 || (a[x][y]>0 && a[x][y]<=val))
return;
a[x][y]=val;
f(x-1,y,val+1);
f(x+1,y,val+1);
f(x,y-1,val+1);
f(x,y+1,val+1);
return;
}
int main()
{ int t;
scanf("%d",&t);
while(t--)
{ int i,j;
char s[200];
scanf("%d%d",&n,&m);
for(i=0;i<n;i++)
{ scanf("%s",s);
for(j=0;j<m;j++)
if(s[j]=='0')
a[i][j]=0;
else
a[i][j]=-1;
}
for(i=0;i<n;i++)
for(j=0;j<m;j++)
if(a[i][j]==-1)
{ f(i-1,j,1);
f(i+1,j,1);
f(i,j-1,1);
f(i,j+1,1);
}
for(i=0;i<n;i++)
{ for(j=0;j<m;j++)
if(a[i][j]!=-1)
printf("%d ",a[i][j]);
else
printf("0 ");
printf("\n");
}
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IGFbMjAwXVsyMDBdLG4sbTsKdm9pZCBmKGludCB4LGludCB5LGludCB2YWwpCnsgaWYoeDwwIHx8IHg+PW4gfHwgeTwwIHx8IHk+PW0pCglyZXR1cm47CiAgaWYoYVt4XVt5XT09LTEgfHwgKGFbeF1beV0+MCAmJiBhW3hdW3ldPD12YWwpKQoJcmV0dXJuOwogIGFbeF1beV09dmFsOwogICAgICBmKHgtMSx5LHZhbCsxKTsKCSAgZih4KzEseSx2YWwrMSk7CgkgIGYoeCx5LTEsdmFsKzEpOwoJICBmKHgseSsxLHZhbCsxKTsKICAJcmV0dXJuOwp9CmludCBtYWluKCkKeyBpbnQgdDsKICBzY2FuZigiJWQiLCZ0KTsKICB3aGlsZSh0LS0pCiAgeyBpbnQgaSxqOwogICAgY2hhciBzWzIwMF07CiAgICBzY2FuZigiJWQlZCIsJm4sJm0pOwogICAgCiAgICBmb3IoaT0wO2k8bjtpKyspCiAgICB7IHNjYW5mKCIlcyIscyk7CiAgICAgIGZvcihqPTA7ajxtO2orKykKICAgICAgaWYoc1tqXT09JzAnKQogICAgICBhW2ldW2pdPTA7CgkgIGVsc2UKCSAgYVtpXVtqXT0tMTsJCgl9CgoJZm9yKGk9MDtpPG47aSsrKQoJZm9yKGo9MDtqPG07aisrKQoJaWYoYVtpXVtqXT09LTEpCgl7IGYoaS0xLGosMSk7CgkgIGYoaSsxLGosMSk7CgkgIGYoaSxqLTEsMSk7CgkgIGYoaSxqKzEsMSk7CQoJfQogIAkgIAogIAlmb3IoaT0wO2k8bjtpKyspCiAgCXsgZm9yKGo9MDtqPG07aisrKQogIAkgIGlmKGFbaV1bal0hPS0xKQoJICBwcmludGYoIiVkICIsYVtpXVtqXSk7CgkgIGVsc2UKCSAgcHJpbnRmKCIwICIpOwoJCXByaW50ZigiXG4iKTsJCgl9CiAgfQoJcmV0dXJuIDA7Cn0=