H, W = map(int,input().split())
grid = [list(map(int,list(input()))) for i in range(H)]
maxdis = 0
for i in range(H):
for j in range(W):
n = grid[i][j]
for _ in range(j+1, W):
if n == grid[i][_]:
dis = _ - j
if dis + i < H:
if grid[i+dis][j] == grid[i+dis][j+dis] and maxdis < dis:
maxdis = dis
print((maxdis+1)**2)
SCwgVyA9IG1hcChpbnQsaW5wdXQoKS5zcGxpdCgpKQpncmlkID0gW2xpc3QobWFwKGludCxsaXN0KGlucHV0KCkpKSkgZm9yIGkgaW4gcmFuZ2UoSCldCm1heGRpcyA9IDAKZm9yIGkgaW4gcmFuZ2UoSCk6Cglmb3IgaiBpbiByYW5nZShXKToKCQluID0gZ3JpZFtpXVtqXQoJCWZvciBfIGluIHJhbmdlKGorMSwgVyk6CgkJCQlpZiBuID09IGdyaWRbaV1bX106CgkJCQkJZGlzID0gXyAtIGoKCQkJCQlpZiBkaXMgKyBpIDwgSDoKCQkJCQkJaWYgZ3JpZFtpK2Rpc11bal0gPT0gZ3JpZFtpK2Rpc11baitkaXNdIGFuZCBtYXhkaXMgPCBkaXM6CgkJCQkJCQltYXhkaXMgPSBkaXMKcHJpbnQoKG1heGRpcysxKSoqMik=