#include #include using namespace std; int op(int a,int b){return a+b;} int e(){return 0;} template< typename T > vector< pair< pair< T, T >, T > > quotient_range(T N) { T M; vector< pair< pair< T, T >, T > > ret; for(M = 1; M * M <= N; M++) { ret.emplace_back(make_pair(M, M), N / M); } for(T i = M; i >= 1; i--) { T L = N / (i + 1) + 1; T R = N / i; if(L <= R && ret.back().first.second < L) ret.emplace_back(make_pair(L, R), N / L); } return ret; } int main(){ int m=1e6+10; int q; cin>>q; atcoder::segtree seg(m); while (q--){ int i,l,r; cin>>i>>l>>r; r++; auto vec=quotient_range(i); for (auto [ignore,x]:vec) seg.set(x,seg.get(x)^1); cout<