import std.stdio;
import std.conv;
import std.string;
import std.typecons;
import std.algorithm;
import std.array;
import std.range;
import std.math;
import std.regex : regex;
import std.container;
import std.bigint;


void main()
{
  int h, w;
  readf("%d %d\n", &h, &w);

  auto s = new char[][](h+1, w+1);
  auto d = new int[][][](h, w, 2);
  
  foreach (i; 0..h) {
    s[i] = readln.chomp.to!(char[]) ~ '#';
  }
  s[h] = '#'.repeat.take(w+1).array;

  int res;

  foreach (x; 0..h) {
    foreach (y; 0..w) {
      if (s[x][y] == '#') {
        continue;
      }
      if (d[x][y][0] == 0) {
        auto dy = 1;
        while (s[x][y+dy] == '.') {
          d[x][y+dy][0] = -1;
          dy++;
        }
        d[x][y][0] = dy;
      }
      if (d[x][y][0] == -1) {
        d[x][y][0] = d[x][y-1][0];
      }
      if (d[x][y][1] == 0) {
        auto dx = 1;
        while (s[x+dx][y] == '.') {
          d[x+dx][y][1] = -1;
          dx++;
        }
        d[x][y][1] = dx;
      }
      if (d[x][y][1] == -1) {
        d[x][y][1] = d[x-1][y][1];
      }

      res = max(res, d[x][y][0] + d[x][y][1] - 1);
    }
  }
  res.writeln;
}
