#include <bits/stdc++.h>
using namespace std;
int ans=-114514,cnt=1;
int a[13][13],col[13][13];
void dfs(int n,int m){
col[n][m]=1;
if(a[n+1][m]!=-1&&a[n+1][m]<a[n][m]&&!col[n+1][m]){
cnt++;
dfs(n+1,m);
}
if(a[n-1][m]!=-1&&a[n-1][m]<a[n][m]&&!col[n-1][m]){
cnt++;
dfs(n-1,m);
}
if(a[n][m+1]!=-1&&a[n][m+1]<a[n][m]&&!col[n+1][m]){
cnt++;
dfs(n,m+1);
}
if(a[n][m-1]!=-1&&a[n][m-1]<a[n][m]&&!col[n+1][m]){
cnt++;
dfs(n,m-1);
}
return ;
}
int main(){
int r,c;
memset(a,-1,sizeof(a));
cin>>r>>c;
for(int i=1;i<=r;i++){
for(int j=1;j<=c;j++){
cin>>a[i][j];
}
}
for(int i=1;i<=r;i++){
for(int j=1;j<=c;j++){
memset(col,0,sizeof(col));
cnt=0;
dfs(i,j);
ans=max(ans,cnt);
}
}
cout<<ans;
}