n,m=map(int,input().split())
maxi=min(n,m)
answer=1
rectangle=[]
for _ in range(n):
rectangle.append(input())
for i in range(1,maxi):
for j in range(n):
for k in range(m):
x,y=j,k
rx,ry=x,y+i
dx,dy=x+i,y
cx,cy=x+i,y+i
if x<0 or x>=n or rx<0 or rx>=n or dx<0 or dx>=n or cx<0 or cx>=n:
continue
if y<0 or y>=m or ry<0 or ry>=m or dy<0 or dy>=m or cy<0 or cy>=m:
continue
if rectangle[x][y]==rectangle[rx][ry] and rectangle[rx][ry]==rectangle[dx][dy] and rectangle[dx][dy]==rectangle[cx][cy]:
answer=(i+1)*(i+1)
print(answer)