60分
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,m;
char a[1005][1005];
int q[1000005];
int p[1000005];
int qp,hp;
int wyy(int h,int p){
int sum=0;
if(a[h-1][p]=='#')sum++;
if(a[h][p-1]=='#')sum++;
if(a[h][p+1]=='#')sum++;
if(a[h+1][p]=='#')sum++;
return sum;
}
int jbl(int h,int p){
int sum=0;
if(a[h-1][p]=='$')sum++;
if(a[h][p-1]=='$')sum++;
if(a[h][p+1]=='$')sum++;
if(a[h+1][p]=='$')sum++;
return sum;
}
signed main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a[i][j];
if(a[i][j]=='#'){
q[++qp]=i;
p[qp]=j;
}
}
}
if(qp==0){
cout<<n*m<<'\n';
return 0;
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
int w=wyy(i,j);
if(w==0&&a[i][j]!='#'){
hp++;
a[i][j]='*';
}else if(w==1&&a[i][j]!='#'){
a[i][j]='$';
}
}
}
int MAX=0;
for(int i=1;i<=qp;i++){
MAX=max(jbl(q[i],p[i]),MAX);
}
cout<<MAX+hp+1<<'\n';
return 0;
}