#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
/*
就是n*m的格子,然后有一种超级刷子,可以随机选两个坐标,然后坐标作为顶点的矩形都被染色,
这个刷子可以用k次,求被刷格子的期望,注意,随机的两个坐标,可以选一个格子
考虑每个格子对期望的贡献p,那么1-(1-p)^k就是这个格子的总贡献
求p不好求,发现1-p比较好求,考虑(x,y),这个格子不被选,那么两个随机格子,要么都在上,下左右
四个矩形里,然后统计和,减去被重复计算的四个角,就是答案了
*/
ll sqr(ll a,ll b){
return a*a*b*b;
}
int main(){
int t,n,m,k,cas=1;
scanf("%d",&t);
while(t--){
scanf("%d%d%d",&n,&m,&k);
double res=0;
ll t=(ll)n*n*m*m;
for(int i=1;i<=n;i++)for(int j=1;j<=m;j++){
ll tt=0;
tt+=sqr(m,n-i);//
tt+=sqr(n,m-j);//
tt+=sqr(n,j-1);//
tt+=sqr(m,i-1);//
tt-=sqr(n-i,m-j);//
tt-=sqr(i-1,m-j);//
tt-=sqr(n-i,j-1);
tt-=sqr(i-1,j-1);//
double ttt=1.0*tt/t;
ttt=1.0-pow(ttt,k);
//cout<<ttt<<endl;
res+=ttt;
}
int ans=(int)round(res);
printf("Case #%d: %d\n",cas++,(int)round(res));
}
return 0;
}