#include<iostream>
using namespace std;

const int MAX_N = 1005;

int a[MAX_N][MAX_N];
int v[MAX_N*MAX_N];
int i,j,n,m,nr;
int l1,ln,c1,cm,total;

int main(){
	cin>>n>>m;
	for(i=1;i<=n;i++)
	  for(j=1;j<=m;j++)
	     cin>>a[i][j];
	     
	l1=1; ln=n;
	c1=1; cm=m;
	nr=0; total=n*m;
	
	while(nr<total){
		for(i=c1;nr<=total && i<=cm;i++) v[++nr]=a[l1][i];
		++l1;
		
		for(i=l1;nr<=total && i<=ln;i++) v[++nr]=a[i][cm];
		--cm;
		
		for(i=cm;nr<=total && i>=c1;i--) v[++nr]=a[ln][i];
		--ln;
		
		for(i=ln;nr<=total && i>=l1;i--) v[++nr]=a[i][c1];
		++c1;
	}
	
	for(i=1;i<=n*m;i++) cout<<v[i]<<" ";
	
	return 0;
}