#include<stdio.h>
int a[5010][5010],b[5010][5010];
int head,tail,q[50100];
int gcd(int a,int b)
{
return b?gcd(b,a%b):a;
}
int lcm(int a,int b)
{
return a*b/gcd(a,b);
}
int main()
{
int n,m,k;
scanf("%d%d%d",&n,&m,&k);
long long res=0;
int i;
for(i=1;i<=n;i++)
{
head=1,tail=0;
int j;
for(j=1;j<=m;j++)
{
a[i][j]=lcm(i,j);
while(tail>=head&&j-q[head]>=k)
{
head++;
}
while(tail>=head&&a[i][j]>a[i][q[tail]])
{
tail--;
}
q[++tail]=j;
if(j>=k)
{
b[i][j-k+1]=a[i][q[head]];
}
}
}
int j;
for(j=1;j<=m-k+1;j++)
{
head=1,tail=0;
for(i=1;i<=n;i++)
{
while(tail>=head&&i-q[head]>=k)
{
head++;
}
while(tail>=head&&b[i][j]>b[q[tail]][j])
{
tail--;
}
q[++tail]=i;
if(i>=k)
{
res+=b[q[head]][j];
}
}
}
printf("%lld\n",res);
return 0;
}