#include<bits/stdc++.h>
using namespace std;
#define int long long
int a[10005][10005],cnt[10005][10005];
signed main(){
// freopen("FLATLAND.INP", "r", stdin);
// freopen("FLATLAND.OUT", "w", stdout);
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int n,m;
cin >> n >> m;
for(int i = 0; i < n; ++i){
for(int j = 0; j < m; ++j){
cin >> a[i][j];
}
}
for(int i = 0;i < n;++i){
for(int j = 0; j < m; j++){
cnt[i][j] = 1;
int x = j+1;
while(a[i][j] == a[i][x] && x < m){
cnt[i][j]++;
++x;
}
}
}
int maxx= 0;
for(int i = 0; i < n-1; ++i){
for(int j = 0; j < m; ++j){
int h = 1,w = cnt[i][j];
int r = i+1;
while(a[i][j] == a[r][j] && r < n){
++h;
w = min(cnt[r][j],w);
++r;
}
maxx = max(maxx,2*(h+w));
}
}
cout << maxx;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKI2RlZmluZSBpbnQgbG9uZyBsb25nCmludCBhWzEwMDA1XVsxMDAwNV0sY250WzEwMDA1XVsxMDAwNV07CnNpZ25lZCBtYWluKCl7Ci8vCWZyZW9wZW4oIkZMQVRMQU5ELklOUCIsICJyIiwgc3RkaW4pOwovLyAgICBmcmVvcGVuKCJGTEFUTEFORC5PVVQiLCAidyIsIHN0ZG91dCk7Cglpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKCWNpbi50aWUoTlVMTCk7CglpbnQgbixtOwoJY2luID4+IG4gPj4gbTsKCWZvcihpbnQgaSA9IDA7IGkgPCBuOyArK2kpewoJCWZvcihpbnQgaiA9IDA7IGogPCBtOyArK2opewoJCQljaW4gPj4gYVtpXVtqXTsKCQl9Cgl9Cglmb3IoaW50IGkgPSAwO2kgPCBuOysraSl7CgkJZm9yKGludCBqID0gMDsgaiA8IG07IGorKyl7CgkJCWNudFtpXVtqXSA9IDE7CgkJCWludCB4ID0gaisxOwoJCQl3aGlsZShhW2ldW2pdID09IGFbaV1beF0gJiYgeCA8IG0pewoJCQkJY250W2ldW2pdKys7CgkJCQkrK3g7CgkJCX0KCQl9Cgl9CglpbnQgbWF4eD0gMDsKCWZvcihpbnQgaSA9IDA7IGkgPCBuLTE7ICsraSl7CgkJZm9yKGludCBqID0gMDsgaiA8IG07ICsrail7CgkJCQlpbnQgaCA9IDEsdyA9IGNudFtpXVtqXTsKCQkJCWludCByID0gaSsxOwoJCQkJd2hpbGUoYVtpXVtqXSA9PSBhW3JdW2pdICYmIHIgPCBuKXsKCQkJCQkrK2g7CgkJCQkJdyA9IG1pbihjbnRbcl1bal0sdyk7CgkJCQkJKytyOwoJCQkJfQoJCQkJbWF4eCA9IG1heChtYXh4LDIqKGgrdykpOwoJCX0KCX0KCWNvdXQgPDwgbWF4eDsKfQ==