#include #define rep(i,n) for(int i = 0; i < (n); i++) using namespace std; typedef long long ll; int euler_phi(int n){ int ret = n; for(int i = 2; i * i <= n; i++){ if(n % i == 0){ ret -= ret / i; while(n % i == 0) n /= i; } } if(n > 1) ret -= ret / n; return ret; } ll modpow(ll a,ll b, ll mod){ ll ans = 1; a %= mod; while(b){ if(b&1) ans = ans * a % mod; a = a * a % mod; b >>= 1; } return ans; } int main(){ cin.tie(0); ios::sync_with_stdio(0); int T; cin >> T; while(T--){ int n; cin >> n; while(n % 2 == 0) n /= 2; while(n % 5 == 0) n /= 5; if(n == 1){ cout << 1 << '\n'; continue; } int phi = euler_phi(n); vector p; for(int i = 1; i * i <= phi; i++){ if(phi % i == 0){ p.emplace_back(i); p.emplace_back(phi / i); } } sort(p.begin(), p.end()); for(auto e : p){ if(modpow((ll)10, (ll)e, (ll)n) == 1LL){ cout << e << '\n'; break; } } } }