import sys; input = sys.stdin.readline from random import choice from collections import deque R, C = map(int, input().split()) img = [input().strip() for _ in range(R)] ime = [{i, i+C, (R+1)*C+(C+1)*(i//C)+(i%C), (R+1)*C+(C+1)*(i//C)+(i%C)+1} for i in range(R*C)] el, elm = set(), {} rep = [-1]*R*C delta = ((0, 1), (0, -1), (1, 0), (-1, 0)) q = deque() for i in range(R*C): if not rep[i]+1: q.append(i) elm[i] = set() while q: u = q.popleft() if rep[u]+1: continue rep[u] = i elm[i] |= ime[u] rr, cc = u//C, u%C for dr, dc in delta: if 0<=rr+dr