#include <bits/stdc++.h>
#define ll long long
#define MOD 1000000007
#define E "\n"
using namespace std;
int m,n,s;
vector<int>neighRow={0,1,0,-1};
vector<int>neighCol={1,0,-1,0};
int bfs2(int i,int j,vector<vector<int>>&vis){
queue<pair<int,int>>q;
vector<vector<int>>vis2(m+2,vector<int>(n+2,-1));
int count=1;
q.push({i,j});
vis2[i][j]=1;
while(q.size()){
auto it=q.front();
int x=it.first,y=it.second;
q.pop();
for(int i=0;i<4;i++){
int row=x+neighRow[i],col=y+neighCol[i];
if(row>=0 && col>=0 && row<m+2 && col<n+2 && vis[row][col]==-1 && vis2[row][col]==-1){
count++;
vis[row][col]=1,vis2[row][col]=1;;
q.push({row,col});
}
}
}
return count;
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
#ifndef ONLINE_JUDGE
freopen("warm.txt", "r", stdin);
freopen("output.txt", "w", stdout);
#endif
int t,c=1;
cin >> t;
while (t--) {
cin>>m>>n>>s;
vector<vector<char>>v(m+2,vector<char>(n+2,'#'));
vector<vector<int>>vis(m+2,vector<int>(n+2,-1));
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
cin>>v[i][j];
}
}
queue<vector<int>>q;
for(int i=0;i<m+2;i++){
for(int j=0;j<n+2;j++){
if(v[i][j]=='#'){
q.push({i,j,0});
vis[i][j]=1;
}
}
}
while(q.size()){
auto it=q.front();
q.pop();
int x=it[0],y=it[1],count=it[2];
if(count>=s)
continue;
for(int i=0;i<4;i++){
int row=x+neighRow[i],col=y+neighCol[i];
if(row>=0 && col>=0 && row<m+2 && col<n+2 && vis[row][col]==-1){
vis[row][col]=1;
q.push({row,col,count+1});
}
}
}
int maxi=0;
for(int i=1;i<=m;i++){
for(int j=1;j<=n;j++){
if(vis[i][j]==-1){
maxi=max(maxi,bfs2(i,j,vis));
}
}
}
cout<<"Case #"<<c<<": "<<maxi<<endl;
c++;
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgTU9EIDEwMDAwMDAwMDcKI2RlZmluZSBFICJcbiIKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbSxuLHM7CnZlY3RvcjxpbnQ+bmVpZ2hSb3c9ezAsMSwwLC0xfTsKdmVjdG9yPGludD5uZWlnaENvbD17MSwwLC0xLDB9OwoKaW50IGJmczIoaW50IGksaW50IGosdmVjdG9yPHZlY3RvcjxpbnQ+PiZ2aXMpewogICAgcXVldWU8cGFpcjxpbnQsaW50Pj5xOwogICAgdmVjdG9yPHZlY3RvcjxpbnQ+PnZpczIobSsyLHZlY3RvcjxpbnQ+KG4rMiwtMSkpOwogICAgaW50IGNvdW50PTE7CiAgICBxLnB1c2goe2ksan0pOwogICAgdmlzMltpXVtqXT0xOwogICAgd2hpbGUocS5zaXplKCkpewogICAgICAgIGF1dG8gaXQ9cS5mcm9udCgpOwogICAgICAgIGludCB4PWl0LmZpcnN0LHk9aXQuc2Vjb25kOwogICAgICAgIHEucG9wKCk7CiAgICAgICAgZm9yKGludCBpPTA7aTw0O2krKyl7CiAgICAgICAgICAgIGludCByb3c9eCtuZWlnaFJvd1tpXSxjb2w9eStuZWlnaENvbFtpXTsKICAgICAgICAgICAgaWYocm93Pj0wICYmIGNvbD49MCAmJiByb3c8bSsyICYmIGNvbDxuKzIgJiYgdmlzW3Jvd11bY29sXT09LTEgJiYgdmlzMltyb3ddW2NvbF09PS0xKXsKICAgICAgICAgICAgICAgIGNvdW50Kys7CiAgICAgICAgICAgICAgICB2aXNbcm93XVtjb2xdPTEsdmlzMltyb3ddW2NvbF09MTs7CiAgICAgICAgICAgICAgICBxLnB1c2goe3Jvdyxjb2x9KTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KICAgIHJldHVybiBjb3VudDsKfQoKaW50IG1haW4oKSB7CiAgICBpb3NfYmFzZTo6c3luY193aXRoX3N0ZGlvKGZhbHNlKTsKICAgIGNpbi50aWUoTlVMTCk7CgojaWZuZGVmIE9OTElORV9KVURHRQogICAgZnJlb3Blbigid2FybS50eHQiLCAiciIsIHN0ZGluKTsKICAgIGZyZW9wZW4oIm91dHB1dC50eHQiLCAidyIsIHN0ZG91dCk7CiNlbmRpZgoKICAgIGludCB0LGM9MTsKICAgIGNpbiA+PiB0OwogICAgd2hpbGUgKHQtLSkgewogICAgICAgIGNpbj4+bT4+bj4+czsKCiAgICAgICAgdmVjdG9yPHZlY3RvcjxjaGFyPj52KG0rMix2ZWN0b3I8Y2hhcj4obisyLCcjJykpOwogICAgICAgIHZlY3Rvcjx2ZWN0b3I8aW50Pj52aXMobSsyLHZlY3RvcjxpbnQ+KG4rMiwtMSkpOwogICAgICAgIGZvcihpbnQgaT0xO2k8PW07aSsrKXsKICAgICAgICAgICAgZm9yKGludCBqPTE7ajw9bjtqKyspewogICAgICAgICAgICAgICAgY2luPj52W2ldW2pdOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHF1ZXVlPHZlY3RvcjxpbnQ+PnE7CiAgICAgICAgZm9yKGludCBpPTA7aTxtKzI7aSsrKXsKICAgICAgICAgICAgZm9yKGludCBqPTA7ajxuKzI7aisrKXsKICAgICAgICAgICAgICAgIGlmKHZbaV1bal09PScjJyl7CiAgICAgICAgICAgICAgICAgICAgcS5wdXNoKHtpLGosMH0pOwogICAgICAgICAgICAgICAgICAgIHZpc1tpXVtqXT0xOyAgICAKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICB3aGlsZShxLnNpemUoKSl7CiAgICAgICAgICAgIGF1dG8gaXQ9cS5mcm9udCgpOwogICAgICAgICAgICBxLnBvcCgpOwogICAgICAgICAgICBpbnQgeD1pdFswXSx5PWl0WzFdLGNvdW50PWl0WzJdOwogICAgICAgICAgICBpZihjb3VudD49cykKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICBmb3IoaW50IGk9MDtpPDQ7aSsrKXsKICAgICAgICAgICAgICAgIGludCByb3c9eCtuZWlnaFJvd1tpXSxjb2w9eStuZWlnaENvbFtpXTsKICAgICAgICAgICAgICAgIGlmKHJvdz49MCAmJiBjb2w+PTAgJiYgcm93PG0rMiAmJiBjb2w8bisyICYmIHZpc1tyb3ddW2NvbF09PS0xKXsKICAgICAgICAgICAgICAgICAgICB2aXNbcm93XVtjb2xdPTE7CiAgICAgICAgICAgICAgICAgICAgcS5wdXNoKHtyb3csY29sLGNvdW50KzF9KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpbnQgbWF4aT0wOwogICAgICAgIGZvcihpbnQgaT0xO2k8PW07aSsrKXsKICAgICAgICAgICAgZm9yKGludCBqPTE7ajw9bjtqKyspewogICAgICAgICAgICAgICAgaWYodmlzW2ldW2pdPT0tMSl7CiAgICAgICAgICAgICAgICAgICAgbWF4aT1tYXgobWF4aSxiZnMyKGksaix2aXMpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjb3V0PDwiQ2FzZSAjIjw8Yzw8IjogIjw8bWF4aTw8ZW5kbDsKICAgICAgICBjKys7CiAgICB9CiAgICByZXR1cm4gMDsKfQ==