#include <iostream>
#include <algorithm>
#include <map>
#include <stack>
#include <queue>
#include <set>
#include <vector>
#include <cstdlib>
#include <cmath>
#include <string>
#include <cstdio>
#include <cstring>
#include <assert.h>
#include <functional>
#define lowbit(x) (x&(-x))
#define ll long long
#define ull unsigned long long
#define max(a,b) (a>b?a:b)
#define min(a,b) (a>b?b:a)
#define PI acos(-1.0)
#define fir first
#define sec second
#define SZ(x) (x.size())
#define inf 0x3f3f3f3f
#define PB push_back
#define MP make_pair
#define all(x) (x).begin(),(x).end()
#define PII pair<int,int>
#define E 2.7182818284590452353602874713527
using namespace std;
/**********************************************Head-----Template****************************************/
bool Finish_read;
template<class T>inline void read(T &x){Finish_read=0;x=0;int f=1;char ch=getchar();while(!isdigit(ch)){if(ch=='-')f=-1;if(ch==EOF)return;ch=getchar();}while(isdigit(ch))x=x*10+ch-'0',ch=getchar();x*=f;Finish_read=1;}
template<class T>inline void print(T x){if(x/10!=0)print(x/10);putchar(x%10+'0');}
template<class T>inline void writeln(T x){if(x<0)putchar('-');x=abs(x);print(x);putchar('\n');}
template<class T>inline void write(T x){if(x<0)putchar('-');x=abs(x);print(x);}
ll gcd(ll a,ll b){return b==0?a:gcd(b,a%b);}
ll lcm(ll a,ll b){return a/gcd(a,b)*b;}
const ll mod = 9901;
ll ksm(ll a,ll b){ll ans=1;a%=mod;assert(b>=0);for(;b;b>>=1){if(b&1) ans=ans*a%mod;a=a*a%mod;}return ans;}
/********************************Head----Template**********************************************/
ll solve(ll fac,ll num){
ll ans=1;
ans=ans*ksm(1ll*(fac-1),mod-2)%mod;
ll tmp=ksm(fac,num)-1+mod;
tmp%=mod;
ans=ans*tmp,ans%=mod;
return ans;
}
int main (){
int n,m;cin>>n>>m;
ll ans = 1;
for(int i=2;i*i<=n;i++){
if(n%i==0){
int cnt=0;
while(n%i==0) n/=i,cnt++;
if((i-1)%mod==0) ans=ans*(cnt*m+1)%mod;
else ans=ans*solve(i*1ll,1ll*cnt*m+1)%mod;
}
}
if(n>1) {
if((n-1)%mod==0) ans=ans*(m+1)%mod;
else ans=ans*solve(n,m+1)%mod;
}
cout<<ans<<endl;
return 0;
}
/**
POJ1845
a^b的约数和 mod 9901
分析:约数和定理+等比数列求和,注意分母mod后为0的情况
*/