#include<stdio.h>
#include<math.h>
int main()
{
__int64 x,y,z,a,b;
double p;
p = pow(2,32); // 2的32次方
while(scanf("%I64d %I64d %I64d",&x,&y,&z),x||y||z)
{
x = x % z;
y = y % z;//积模分解公式
if(x > p || y > p)//如果x或y依然大于2^32的话,相乘依然会溢出,这时各减去z
{
a = x - z;
b = y - z;
printf("%I64d\n",a * b % z);
}
else
printf("%I64d\n", x * y % z);
}
}