#include using namespace std; int main(){ ios_base::sync_with_stdio(false); cin.tie(nullptr); int Need = 1001001; vector prime(Need+1,true); prime.at(0) = false; prime.at(1) = false; for(int i=2; i*i<=Need; i++){ if(!prime.at(i)) continue; for(int k=i*i; k<=Need; k+=i) prime.at(k) = false; } int T; cin >> T; while(T--){ long long N,L,R; cin >> N >> L >> R; auto left = N; vector> P; vector D,D2; for(int i=1; i*i<=N; i++) if(N%i == 0){ int now = 1; while(i > 1 && left%i == 0) left /= i,now *= i; if(now > 1) P.push_back({i,now}); D.push_back(i); if(i*i != N) D.push_back(N/i); } if(left != 1) P.push_back({left,left}); sort(D.begin(),D.end()); int n = D.size(); for(auto d : D) if(L <= d && d <= R) D2.push_back(d); vector big(n,-1); for(int i=0; i S,S2; auto del = [&](auto del,long long x) -> void { if(S2.count(x)) return; S2.insert(x); if(S.count(x)) S.erase(x); for(auto [p,ign] : P) if(x%p == 0) del(del,x/p); }; bool ok = false; for(int i=0; i