require 'pp'
h, w = gets.chomp.split(" ").map(&:to_i)
is_wall = [[true] * (w + 2)]
for i in 1..h
	is_wall[i] = [true] + gets.chomp.split("").map { |char| char == '#' } + [true]
end
is_wall << [true] * (w + 2)

yoko = Array.new(h+2){Array.new(w+2,nil)}
tate = Array.new(h+2){Array.new(w+2,nil)}

for x in 0..w+1
	for y in 0..h+1
		if is_wall[y][x]
			yoko[y][x] = 0
			tate[y][x] = 0
		else
			if is_wall[y][x-1]
				yoko[y][x] = 1
				it = x + 1
				while !is_wall[y][it]
					yoko[y][x] += 1
					it += 1
				end
			else
				yoko[y][x] = yoko[y][x-1]
			end

			if is_wall[y-1][x]
				tate[y][x] = 1
				it = y + 1
				while !is_wall[it][x]
					tate[y][x] += 1
					it += 1
				end
			else
				tate[y][x] = tate[y-1][x]
			end
		end
	end
end

puts yoko.flatten.zip(tate.flatten).map{ |x, y| x + y - 1 }.max 