import java.util.Scanner

import scala.collection.mutable.ArrayBuffer

object Main {
  def main(args: Array[String]): Unit = {
    val sc = new Scanner(System.in)
    val writer = new java.io.PrintWriter(System.out)
    writer.println(solve(sc))
    writer.flush()
  }

  def solve(sc: Scanner): String = {
    val (h, w) = (sc.nextInt(), sc.nextInt())
    val grids = Vector.fill(h)(sc.next()).map(_.split("").toVector)
    debug(h, w, grids)

    val sumBuf = ArrayBuffer.empty[Long]
    for (i <- grids.indices) {
      for (j <- grids(i).indices) {
        if (grids(i)(j) == ".") {
          var count = 1L
          var l_break = false
          var l = j - 1
          while (!l_break && l >= 0) {
            if (grids(i)(l) == ".") count += 1
            else l_break = true
            l -= 1
          }
          var r_break = false
          var r = j + 1
          while (!r_break && r < w) {
            if (grids(i)(r) == ".") count += 1
            else r_break = true
            r += 1
          }
          var t_break = false
          var t = i - 1
          while (!t_break && t >= 0) {
            if (grids(t)(j) == ".") count += 1
            else t_break = true
            t -= 1
          }
          var b_break = false
          var b = i + 1
          while (!b_break && b < h) {
            if (grids(b)(j) == ".") count += 1
            else b_break = true
            b += 1
          }
          sumBuf += count
        }
      }
    }
    sumBuf.max.toString
  }

  private def debug(x: Any): Unit = {
    if (System.getenv("LOCAL_DEBUG") != null) println(x)
  }
}
