#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
char mp[2005][2005];
vector<int> r[2005],c[2005];
int main(){
	int n,m,ans=0;
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		r[i].push_back(0);
	}
	for(int j=1;j<=m;j++){
		c[j].push_back(0);
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			cin>>mp[i][j];
			if(mp[i][j]=='#') r[i].push_back(j);
			if(mp[i][j]=='#') c[j].push_back(i);
		}
	}
	for(int i=1;i<=n;i++){
		r[i].push_back(m+1);
	}
	for(int j=1;j<=m;j++){
		c[j].push_back(n+1);
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			if(mp[i][j]=='#') continue;
			auto it=upper_bound(r[i].begin(),r[i].end(),j);
			int x=*it-*(it-1)-1;
			it=upper_bound(c[j].begin(),c[j].end(),i);
			int y=*it-*(it-1)-1;
			ans=max(ans,x+y-1);
		}
	}
	cout<<ans<<endl;
}