#include <bits/stdc++.h> #include <atcoder/all> // using mint = atcoder::static_modint<998244353>; // //using mint = atcoder::static_modint<1000000007>; using namespace std; using namespace atcoder; using ld = long double; using ll = long long; #define mp(a,b) make_pair(a,b) #define rep(i,s,n) for(int i=s; i<(int)n; i++) const vector<int> dx{1,0,-1,0},dy{0,1,0,-1}; void solve(){ ll mod=1e9; ll n,m;cin >> n >> m; n%=mod; m=(mod-m%mod)%mod; if(n==0){ if(m==0)cout << 1 << "\n"; else cout << -1 << "\n"; return; } ll ord=mod*100; while(n%2==0){ n/=2; mod/=2; if(m%2!=0){ cout << -1 << "\n"; return; } m/=2; } while(n%5==0){ n/=5; mod/=5; if(m%5!=0){ cout << -1 << "\n"; return; } m/=5; } ll inv_n=pow_mod(n,ord-1,mod); ll ans=m*inv_n%mod; if(ans==0)ans+=mod; cout << ans << "\n"; } int main(){ int T;cin >> T; rep(i,0,T)solve(); }