#include <iostream>
#include <iomanip>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <algorithm>
using namespace std;
typedef long long ll;
ll rel[1020110], rer[1020110];
char land[1010][1010], jh[1010][1010];
int main()
{
ll m, n, ans = 0, record = 0;
cin >> n >> m;
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
cin >> land[i][j];
}
}
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
if(land[i][j] != '#' && land[i-1][j] != '#' && land[i+1][j] != '#' && land[i][j-1] != '#' && land[i][j+1] != '#')
ans++;
else
{
rel[record]=i;
rer[record]=j;
record++;
}
}
}
int anss=0, bo = -1;
for(int i = 0; i < record; i ++)
{
anss = 0;
int l=rel[i];
int r=rer[i];
if(land[l-2][r] != '#' && land[l-1][r-1] != '#' && land[l-1][r+1] != '#')
{
anss++;
}
if(land[l][r-2] != '#' && land[l-1][r-1] != '#' && land[l+1][r-1] != '#')
{
anss++;
}
if(land[l][r+2] != '#' && land[l-1][r-1] != '#' && land[l+1][r+1] != '#')
{
anss++;
}
if(land[l+2][r] != '#' && land[l+1][r-1] != '#' && land[l+1][r+1] != '#')
{
anss++;
}
bo = max(bo, anss) ;
}
cout <<ans + bo + 1;
return 0;
}