H,W=gets.split.map(&:to_i)
ss = H.times.map { gets.chomp }

ls = Array.new(H) { Array.new(W, 0)}
rs = Array.new(H) { Array.new(W, 0)}
us = Array.new(H) { Array.new(W, 0)}
ds = Array.new(H) { Array.new(W, 0)}

# ls
0.upto(H-1) do |i|
    n = 0
    0.upto(W-1) do |j|
        n = (ss[i][j] == '#' ? 0 : n+1)
        ls[i][j] = n
    end
end
# rs
0.upto(H-1) do |i|
    n = 0
    (W-1).downto(0) do |j|
        n = (ss[i][j] == '#' ? 0 : n+1)
        rs[i][j] = n
    end
end
# us
0.upto(W-1) do |i|
    n = 0
    0.upto(H-1) do |j|
        n = (ss[j][i] == '#' ? 0 : n+1)
        us[j][i] = n
    end
end
# ds
0.upto(W-1) do |i|
    n = 0
    (H-1).downto(0) do |j|
        n = (ss[j][i] == '#' ? 0 : n+1)
        ds[j][i] = n
    end
end

max = 0
H.times do |i|
    W.times do |j|
        n = ls[i][j] + rs[i][j] + us[i][j] + ds[i][j] - 3
        max = n if max < n
    end
end
puts max


# v = Array.new(H) { Array.new(W, 0)}
# h = Array.new(H) { Array.new(W, 0)}

# H.times do |i|
#     l = 0
#     s = ss[i]
#     loop do
#         pos = s.index('#', l)
#         r = pos || W
#         n = r-l
#         l.upto(r-1) do |k|
#             v[i][k] = n
#         end
#         break unless pos
#         l = pos + 1
#     end
# end

# W.times do |i|
#     l = 0
#     H.times do |j|
#         if ss[j][i] == '#'
#             n = j-l
#             l.upto(j-1) do |k|
#                 h[k][i] = n
#             end
#             l = j+1
#         end
#     end
#     if l != H
#         n = H-l
#         l.upto(H-1) do |k|
#             h[k][i] = n
#         end
#     end
# end

# max = 0
# H.times do |i|
#     W.times do |j|
#         n = v[i][j] + h[i][j] - 1
#         max = n if max < n
#     end
# end

# p v
# p h
# puts max