#include<cstdio>
using namespace std;
int st[100],i,j,k,n,a[100][100],x,y,p,m;
void tipar(int n)
{
for(i=1;i<=n;++i)
{
for(j=1;j<=m;++j)
printf("%d ",a[i][j]);
printf("\n");
}
printf("\n");
}
void tabla(int x,int y,int a[100][100],int p,int h)
{
if(a[x][y]==0&&h!=a[x][y-1]&&h!=a[x][y+1]&&h!=a[x+1][y]&&h!=a[x-1][y]&&h!=a[x-1][y-1]&&h!=a[x+1][y-1]&&h!=a[x-1][y+1]&&h!=a[x+1][y+1])
{
a[x][y]=h;
if(p==n*m)
tipar(n);
else
for(h=1;h<=4;h++)
{
tabla(x,y+1,a,p+1,h);
tabla(x,y-1,a,p+1,h);
tabla(x+1,y,a,p+1,h);
tabla(x-1,y,a,p+1,h);
tabla(x-1,y-1,a,p+1,h);
tabla(x+1,y-1,a,p+1,h);
tabla(x-1,y+1,a,p+1,h);
tabla(x+1,y+1,a,p+1,h);}
a[x][y]=0;
}
}
int main()
{
printf("n= ");
scanf("%d",&n);
printf("m= ");
scanf("%d",&m);
for(i=0;i<=n+1;i++)
for(j=0;j<=m+1;j++)
a[i][j]=-1;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
a[i][j]=0;
tabla(1,1,a,1,1);
return 0;
}