while (h, w = gets.split.map(&:to_i)) != [0, 0]
  g = []
  h.times do
    s = gets.chop.chars.map{|c|c==?.}
    g << s
  end
  
  t = []
  (0...h).each do |y|
    t << []
    (0...w).each do |x|
      c = 0
      (x...w).each do |i|
        if g[y][i]
          c += 1
        else
          break
        end
      end
      t[y] << c
    end
  end
  a = []
  (0...w).each do |x|
    (0...h).each do |y|
      c = []
      s = []
      (y...h).each do |i|
        c.push t[i][x]
        s.push c.min * (i - y + 1)
      end
      a.push s.max
    end
  end
  p a.max
end