#include<cstdio>
typedef long long ll;
ll qpow(ll x,ll y,ll p)
{
ll ret=1;
while(y>0)
{
if(y&1) ret=ret*x%p;
x=x*x%p;
y/=2;
}
return ret;
}
int main()
{
ll m,n,p=100003;
scanf("%lld%lld",&m,&n);
ll ans=qpow(m,n,p)-m*qpow(m-1,n-1,p)%p;
ans=(ans+p)%p;
printf("%lld\n",ans);
}
typedef long long ll;
ll qpow(ll x,ll y,ll p)
{
ll ret=1;
while(y>0)
{
if(y&1) ret=ret*x%p;
x=x*x%p;
y/=2;
}
return ret;
}
int main()
{
ll m,n,p=100003;
scanf("%lld%lld",&m,&n);
ll ans=qpow(m,n,p)-m*qpow(m-1,n-1,p)%p;
ans=(ans+p)%p;
printf("%lld\n",ans);
}