#include<bits/stdc++.h>
using namespace std;
int n,m,ans=-1;
char grid[2010][2010];
vector<int> row[2010],col[2010];
int main()
{
	cin>>n>>m;
	for(int i=1;i<=m;i++)
		col[i].push_back(0);
	for(int i=1;i<=n;i++)
	{
		row[i].push_back(0);
		for(int j=1;j<=m;j++)
		{
			cin>>grid[i][j];
			if(grid[i][j]=='#')
			{
				row[i].push_back(j);
				col[j].push_back(i);
			}
		}
		row[i].push_back(m+1);
	}
	for(int i=1;i<=m;i++)
		col[i].push_back(n+1);
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
		{
			int r1=*(lower_bound(row[i].begin(),row[i].end(),j))\
			-*(lower_bound(row[i].begin(),row[i].end(),j)-1)-1;
			int r2=*(lower_bound(col[j].begin(),col[j].end(),i))\
			-*(lower_bound(col[j].begin(),col[j].end(),i)-1)-1;
			ans=max(ans,r1+r2-1);
		}
	cout<<ans<<endl;
	return 0;
}