#include<bits/stdc++.h> usingnamespace std; typedeflonglong ll; ll m, K, n; ll mul(ll a, ll b, ll P) { ll L = a * (b >> 25LL) % P * (1LL << 25) % P; ll R = a * (b & ((1LL << 25) - 1)) % P; return (L + R) % P; } ll gcd(ll a, ll b){ return !b ? a : gcd(b, a % b); } ll BSGS(ll a, ll n, ll p) { if (a % p == 0 && n != 0) return p; ll ans = p, t = ceil(sqrt(p)), dt = 1; map<ll, ll> hash; for (ll B = 1; B <= t; B++) dt = mul(dt, a, p), hash[mul(dt, n, p)] = B; for (ll A = 1, num = dt; A <= t; A++, num = mul(num, dt, p)) if (hash.find(num) != hash.end()) ans = min(ans, A * t - hash[num]); return ans; } intmain() { cin >> K >> m; K = (K * 9ll + 1ll) % m; ll r = BSGS(10, K, m); cout << r << endl; }