#include<bits/stdc++.h>
using namespace std;
int n,m,t,a[110][110];
int main(){
// freopen(".in","r",stdin);
// freopen(".out","w",stdout);
ios_base::sync_with_stdio(false);
cin.tie(0);
cin>>n>>m;
for(int i=0;i<n;i++)for(int j=0;j<m;j++)cin>>a[i][j],t+=a[i][j];
if(t==0){
cout<<0<<endl;
return 0;
}
else if(t==1){
cout<<1<<endl;
return 0;
}
t=min(n,m);
bool is=true;
for(int k=t;k;k--){
for(int q=0;q<n-k;q++){
for(int p=0;p<m-k;p++){
for(int i=0;i<k;i++){
for(int j=0;j<k;j++){
if(a[q+i][j+p]==0){
is=false;
break;
}
}
if(!is)break;
}
if(is)break;
}
if(is)break;
}
if(is){
cout<<k<<endl;
return 0;
}
}
}