# Time exceeding.

def count_rect(rect_map, line, index, h)
  li = line.index('.')
  return 0 if !li

  count_max = 0
  current_h = index

  while li < 10
    ri = li
    ri += 1 while line[ri + 1] == '.'

    if $star_count_max < (ri-li+1) * (index-h+1).abs
      (li..ri).to_a.combination(2).sort.each do |set|
        count = 0
        _li, _ri = set
        _ri = _li if _ri.nil?
        while rect_map[current_h][_li.._ri].all?{ |x| x == '.' }
          count += _ri - _li + 1
          current_h += 1
          break if h <= current_h
        end
        count_max = count if count_max < count
        current_h = index
      end
    end
    li = ri + 1
    li += 1 while line[li] != '.' && li <= 10
  end

  count_max
end

loop do
  $star_count_max = 0
  h, w = gets.chomp.split.map(&:to_i)
  break if [h, w].all?(&:zero?)

  star_map = Array.new
  h.times { star_map << gets.chomp.split('') }

  star_map.each.with_index do |l, i|
    temp = count_rect(star_map, l, i, h)
    $star_count_max = temp if $star_count_max < temp
  end
  puts $star_count_max
end