#include using namespace std; const long long MOD = 998244353; #line 1 "/home/sakflat/CP/_library/cpp/math/binary-power-method.cpp" template T uPow(T z,T n, T mod){ T ans = 1; while(n != 0){ if(n%2){ ans*=z; if(mod)ans%=mod; } n >>= 1; z*=z; if(mod)z%=mod; } return ans; } int main(){ long long a,b;cin>>a>>b; long long ans = 0; while(a){ a/=b; ans += a; } cout << uPow(b,ans,MOD) << endl; }