- 虽然mod=9901是质数,但也并非所有数都存在乘法逆元,需要特判9901的倍数的情况
#include <bits/stdc++.h>
using namespace std;
const int mod=9901;
int p[15],c[15],tot;
int power(int n,int p)
{if(p==0){return 1;}long long tmp=power(n,p/2);if(p%2==1){return tmp*tmp%mod*n%mod;}return tmp*tmp%mod;
}
void fac(int x)
{int i=2;while(i*i<=x){if(x%i==0){tot++;p[tot]=i;while(x%i==0){c[tot]++;x/=i;}}i++;}if(x>1){tot++;p[tot]=x;c[tot]=1;}
}
int main()
{ios::sync_with_stdio(false);cin.tie(0);int a,b;cin>>a>>b;if(a==0){cout<<0<<endl;return 0;}fac(a);long long ans=1;for(int i=1;i<=tot;i++){c[i]*=b;if((1-p[i])%mod==0){ans=ans*(c[i]+1)%mod;}else{ans=ans*(1-power(p[i],c[i]+1))%mod*power(1-p[i],9899)%mod;}}cout<<(ans+mod)%mod<<endl;return 0;
}