#include #include #include using namespace std; using namespace atcoder; using mint = modint998244353; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf32 1000000001 #define Inf64 4000000000000000001LL long long get(long long n,long long b){ return (n + 9 - b) / 10; } int main() { long long m; cin>>m; string s; cin>>s; int n = s.size(); vector ps(n+1,1),ss(n+1,1); rep(i,s.size()){ mint v = get(m,s[i]-'0'); if(i==0 && s[i]=='0')v--; ps[i+1] = ps[i] * v; ss[i] = v; } for(int i=n;i>=1;i--)ss[i-1] *= ss[i]; mint ans = 0; rep(i,n){ mint v = ps[i] * ss[i+1]; v *= mint(m).pow(n-1-i); { mint sum = 0; mint nn = get(m,s[i]-'0'); sum += nn * (s[i]-'0'); sum += (nn * (nn-1) / 2)*10; ans += v * sum; } } cout<