#include <bits/stdc++.h>
using namespace std;
char a[1005][1005];
int dx[]={-1,1,0,0};
int dy[]={0,0,1,-1};
int main()
{
int n,m;
cin >> n >> m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin >> a[i][j];
int cnt=0;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
bool flag=0;
if(a[i][j]!='#')
{
for(int k=0;k<4;k++)
{
int nx = i+dx[k];
int ny = j+dy[k];
if(nx>=1 && nx<=n && ny>=1 && ny<=m && a[nx][ny]=='#')
{
flag=1;
break;
}
}
if(flag==0)
cnt++;
}
}
}
int t=0;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=m;j++)
{
int ans=0;
if(a[i][j]=='#')
{
ans++;
for(int k=0;k<4;k++)
{
int nx = i+dx[k];
int ny = j+dy[k];
if(nx>=1 && nx<=n && ny>=1 && ny<=m && a[nx][ny]!='#')
{
ans++;
}
}
}
t=max(t,ans);
}
}
cout << cnt+t;
return 0;
}