#include<stdio.h>
int main()
{
int a,b;
while(scanf("%d%d",&a,&b)==2)
{//求的是最后三位的数
if(a==0&&b==0)
return 0;
int ans=1;
a=a%1000;
while(b>0)
{
if(b%2==1)
ans=(ans*a)%1000;//b是奇数,就把第一个数存起来
b=b/2;
a=(a*a)%1000;//两个数取余后,记下来!b的次数会相应的减半
}
printf("%d\n",ans);
}
return 0;
}//公式是A^BmodC=(AmodC)^BmodC
(A*A....A)(共B个)^C=(AmodC)*(AmodC)……(共B个)modC