#include <stdio.h>
#include <assert.h>
#define MAX 10
void LeMatrizComMoldura( double Mat[][MAX+2], int m, int n, double moldura ) {
int i,j;
for ( i = 0; i < m+2; i++)
for ( j = 0; j < n+2; j++)
if ( 1 <= i && i <= m && 1 <= j && j <= n )
scanf("%lf", &Mat[i][j]);
else
Mat[i][j] = moldura;
return;
}
void ImprimeMatrizComMoldura( double Mat[][MAX+2], int m, int n ) {
int i,j;
for ( i = 1; i <= m; i++) {
for ( j = 1; j <= n; j++)
printf( "%7.3g ", Mat[i][j] );
printf( "\n" );
}
return;
}
int main()
{
double A[MAX+2][MAX+2], M[MAX+2][MAX+2];
int m, n;
int i, j, di, dj;
double soma;
scanf("%d %d", &m, &n);
assert( m <= MAX && n <= MAX );
LeMatrizComMoldura( A, m, n, 0 );
for (i = 1; i <= m; i++)
for (j = 1; j <= n; j++) {
soma = 0;
for ( di = -1; di <= +1; di++ )
for ( dj = -1; dj <= +1; dj++ )
soma += A[i+di][j+dj];
M[i][j] = soma;
}
ImprimeMatrizComMoldura( M, m, n );
return 0;
}