#include #include #include #include #include using namespace std; int op(int a,int b){return a >L[2<<17]; main() { cin>>N>>Q; for(int i=0;i>l>>r>>b; L[l-1].push_back(make_pair(b,r)); } priority_queue >P; vectorA(N); P.push(make_pair(1,N)); for(int l=0;lp:L[l])P.push(p); A[l]=P.top().first; } atcoder::segtreeQ(A); for(int l=0;lp:L[l]) { int r=p.second,b=p.first; if(Q.prod(l,r)!=b) { cout<<-1<