#!/usr/bin/env python3

r, c, k = map(int, input().split())


N = 63

grid = [['.']*N for _ in range(N)]
count = 0
for i in range(r):
    row = input()
    for j in range(c):
        grid[i+(N-r)//2][j+(N-c)//2] = row[j]
        if row[j] == '#': count += 1

# handle 0 steps
if k == 0 or count == 0:
    print(count)
    exit()


# handle empty

steps = min(9, k)
left = N
right = 0
top = 0
bot = N
for s in range(steps):
    grid2 = [['.']*N for _ in range(N)]
    count = 0
    for i in range(1, N-1):
        for j in range(1, N-1):
            for m in range(-1, 2):
                for l in range(-1, 2):
                    if grid[i+m][j+l] == '#' and grid2[i][j] == '.':
                        grid2[i][j] = '#'
                        count += 1
                        top = max(top, i)
                        bot = min(bot, i)
                        left = min(left, j)
                        right = max(right, j)
    grid = grid2

k -= steps
w = right-left+1
h = top-bot+1
print((w+2*k)*(h+2*k) - (w*h-count))
