#include using namespace std; #define ll long long #define rep(i, n) for (int i = 0; i < (int)(n); i++) template bool chmin(T& a, T b){if(a > b){a = b; return true;} return false;} template bool chmax(T& a, T b){if(a < b){a = b; return true;} return false;} const long long mod=998244353; const long long mod2=469762049; int main(){ cout.tie()->sync_with_stdio(0); cin.tie(0); ll N,P;cin>>N>>P; vectordat; for(int i=100000;i<1000000;i++){ string s=to_string(i); if(s[0]!=s[1]) continue; if(s[2]!=s[5]) continue; if(s[3]!=s[4]) continue; dat.push_back(i); } vectoranswer; for(auto x:dat){ for(int i=x;i<=N;i+=x){ answer.push_back(i); } } sort(answer.begin(),answer.end()); answer.erase(unique(answer.begin(),answer.end()),answer.end()); ll ans=0; for(auto p:answer){ ans=(ans-p)%P; } if(ans<0) ans+=P; cout<