#include <stdio.h>

#define MMAX 100
#define NMAX 100

int max_el(int a[][MMAX], int m, int n);
void imprima_decr(int a[][MMAX], int m, int n);
void leia_matriz(int a[][MMAX], int m, int n);

int main()
{
  int m, n, a[MMAX][NMAX];
  scanf("%d %d", &m, &n);
  leia_matriz(a, m, n);
  imprima_decr(a, m, n);
  return 0;
}

int max_el(int a[][MMAX], int m, int n)
{
  int i, j, i_0, j_0, max = -1;

  for (i=0; i<m; i++)
    for (j=0; j<n; j++)
      if (a[i][j]>max) {
	i_0=i; j_0=j;
	max=a[i][j];
      }
  a[i_0][j_0]=-1;
  return max;
}

void imprima_decr(int a[][MMAX], int m, int n)
{
  int k;

  for (k=0; k<n*m; k++)
    printf("%d ", max_el(a, m, n));
  putchar('\n');

}

void leia_matriz(int a[][MMAX], int m, int n)
{
  int i, j;

  for (i=0; i<m; i++)
    for (j=0; j<n; j++)
      scanf("%d", &a[i][j]);
}

