/*
* @Author: hungeazy
* @Date: 2026-03-04 23:24:15
* @Last Modified by: hungeazy
* @Last Modified time: 2026-03-16 23:48:11
*/
#include <bits/stdc++.h>
using namespace std;
const int N = (int)1e3+10;
int a[N][N], pre[N][N];
int get(int x, int y, int u, int v) {
return pre[u][v]-pre[x-1][v]-pre[u][y-1]+pre[x-1][y-1];
}
int main()
{
int n,m,k;
cin >> n >> m >> k;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++)
{
char x;
cin >> x;
if (x == '*') a[i][j] = 1;
else a[i][j] = 0;
}
for (int i = 1; i <= n; i++)
for (int j = 1; j <= m; j++)
pre[i][j] = pre[i-1][j]+pre[i][j-1]-pre[i-1][j-1]+a[i][j];
int res = 0;
for (int i = 1; i <= n-k+1; i++)
for (int j = 1; j <= m-k+1; j++)
{
int sum = get(i,j,i+k-1,j+k-1);
int row1 = get(i,j,i,j+k-1), row2 = get(i+k-1,j,i+k-1,j+k-1);
int col1 = get(i,j,i+k-1,j), col2 = get(i,j+k-1,i+k-1,j+k-1);
int val1 = a[i][j], val2 = a[i][j+k-1], val3 = a[i+k-1][j], val4 = a[i+k-1][j+k-1];
int ans = sum-row1-row2-col1-col2+val1+val2+val3+val4;
if (res < ans)
res = ans;
}
cout << res;
return 0;
}
LyoKKiBAQXV0aG9yOiBodW5nZWF6eQoqIEBEYXRlOiAgIDIwMjYtMDMtMDQgMjM6MjQ6MTUKKiBATGFzdCBNb2RpZmllZCBieTogICBodW5nZWF6eQoqIEBMYXN0IE1vZGlmaWVkIHRpbWU6IDIwMjYtMDMtMTYgMjM6NDg6MTEKKi8KI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmNvbnN0IGludCBOID0gKGludCkxZTMrMTA7CmludCBhW05dW05dLCBwcmVbTl1bTl07CgppbnQgZ2V0KGludCB4LCBpbnQgeSwgaW50IHUsIGludCB2KSB7CiAgICByZXR1cm4gcHJlW3VdW3ZdLXByZVt4LTFdW3ZdLXByZVt1XVt5LTFdK3ByZVt4LTFdW3ktMV07IAp9CgppbnQgbWFpbigpCnsKICAgIGludCBuLG0sazsKICAgIGNpbiA+PiBuID4+IG0gPj4gazsKICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykKICAgICAgICBmb3IgKGludCBqID0gMTsgaiA8PSBtOyBqKyspCiAgICAgICAgewogICAgICAgICAgICBjaGFyIHg7CiAgICAgICAgICAgIGNpbiA+PiB4OwogICAgICAgICAgICBpZiAoeCA9PSAnKicpIGFbaV1bal0gPSAxOwogICAgICAgICAgICBlbHNlIGFbaV1bal0gPSAwOwogICAgICAgIH0KICAgIGZvciAoaW50IGkgPSAxOyBpIDw9IG47IGkrKykKICAgICAgICBmb3IgKGludCBqID0gMTsgaiA8PSBtOyBqKyspCiAgICAgICAgICAgIHByZVtpXVtqXSA9IHByZVtpLTFdW2pdK3ByZVtpXVtqLTFdLXByZVtpLTFdW2otMV0rYVtpXVtqXTsKICAgIGludCByZXMgPSAwOwogICAgZm9yIChpbnQgaSA9IDE7IGkgPD0gbi1rKzE7IGkrKykKICAgICAgICBmb3IgKGludCBqID0gMTsgaiA8PSBtLWsrMTsgaisrKQogICAgICAgIHsKICAgICAgICAgICAgaW50IHN1bSA9IGdldChpLGosaStrLTEsaitrLTEpOwogICAgICAgICAgICBpbnQgcm93MSA9IGdldChpLGosaSxqK2stMSksIHJvdzIgPSBnZXQoaStrLTEsaixpK2stMSxqK2stMSk7CiAgICAgICAgICAgIGludCBjb2wxID0gZ2V0KGksaixpK2stMSxqKSwgY29sMiA9IGdldChpLGoray0xLGkray0xLGoray0xKTsKICAgICAgICAgICAgaW50IHZhbDEgPSBhW2ldW2pdLCB2YWwyID0gYVtpXVtqK2stMV0sIHZhbDMgPSBhW2kray0xXVtqXSwgdmFsNCA9IGFbaStrLTFdW2oray0xXTsKICAgICAgICAgICAgaW50IGFucyA9IHN1bS1yb3cxLXJvdzItY29sMS1jb2wyK3ZhbDErdmFsMit2YWwzK3ZhbDQ7CiAgICAgICAgICAgIGlmIChyZXMgPCBhbnMpCiAgICAgICAgICAgICAgICByZXMgPSBhbnM7CiAgICAgICAgfQogICAgY291dCA8PCByZXM7CiAgICByZXR1cm4gMDsKfQ==