#include<iostream>
using namespace std;
int A[101][101],n,m,vmax[101],nvm=1;
void MinCol(int &nvm){
for(int i=1;i<=n;i++){
int min=A[1][i];
for(int j=2;j<=m;j++)
if(A[j][i]<min)
min=A[j][i];
vmax[nvm++]=min;
}
}
int MaxMinCol(){
int max=vmax[1];
for(int i=2;i<=nvm-1;i++)
if(vmax[i]>max)
max=vmax[i];
return max;
}
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>A[i][j];
MinCol(nvm);
cout<<MaxMinCol();
}