#include using namespace std; unsigned long l[32]={0xFFFFFFFFul,0x7FFFFFFFul,0x3FFFFFFFul,0x1FFFFFFFul,0x0FFFFFFFul, 0x07FFFFFFul,0x03FFFFFFul,0x01FFFFFFul,0x00FFFFFFul,0x007FFFFFul,0x003FFFFFul,0x001FFFFFul, 0x000FFFFFul,0x0007FFFFul,0x0003FFFFul,0x0001FFFFul,0x0000FFFFul,0x00007FFFul,0x00003FFFul, 0x00001FFFul,0x00000FFFul,0x000007FFul,0x000003FFul,0x000001FFul,0x000000FFul,0x0000007Ful, 0x0000003Ful,0x0000001Ful,0x0000000Ful,0x00000007ul,0x00000003ul,0x00000001ul};unsigned long c[32]={0x80000000ul,0xC0000000ul,0xE0000000ul,0xF0000000ul,0xF8000000ul,0xFC000000ul, 0xFE000000ul,0xFF000000ul,0xFF800000ul,0xFFC00000ul,0xFFE00000ul,0xFFF00000ul,0xFFF80000ul, 0xFFFC0000ul,0xFFFE0000ul,0xFFFF0000ul,0xFFFF8000ul,0xFFFFC000ul,0xFFFFE000ul,0xFFFFF000ul, 0xFFFFF800ul,0xFFFFFC00ul,0xFFFFFE00ul,0xFFFFFF00ul,0xFFFFFF80ul,0xFFFFFFC0ul,0xFFFFFFE0ul, 0xFFFFFFF0ul,0xFFFFFFF8ul,0xFFFFFFFCul,0xFFFFFFFEul,0xFFFFFFFFul};unsigned long d[32]={ 0x80000000ul,0x40000000ul,0x20000000ul,0x10000000ul,0x08000000ul,0x04000000ul,0x02000000ul, 0x01000000ul,0x00800000ul,0x00400000ul,0x00200000ul,0x00100000ul,0x00080000ul,0x00040000ul, 0x00020000ul,0x00010000ul,0x00008000ul,0x00004000ul,0x00002000ul,0x00001000ul,0x00000800ul, 0x00000400ul,0x00000200ul,0x00000100ul,0x00000080ul,0x00000040ul,0x00000020ul,0x00000010ul, 0x00000008ul,0x00000004ul,0x00000002ul,0x00000001ul};unsigned long u[2] = {0x00000000ul, 0xFFFFFFFFul};int main(){int a,b,e,f,g,h,i,j,k,m,n,o,p,q,r,s,t;cin>>n>>m;o=n/32; q=n%32;unsigned long v[o+1];for(i=0;i<=o;i++)v[i]=0x00000000;for(p=0;p>h;if(h==1){cin>>a>>b>>k;r=(a-1)/32;t=(a-1)%32;j=(b-1)/32;s=(b-1)%32; if(r==j)v[r]=k?v[r]|(l[t]&c[s]):v[r]&(~l[t]|~c[s]); else{v[r++]=k?v[r]|l[t]:v[r]&(~l[t]);while(r>f;g=(f-1)/32;e=(f-1)%32; k=v[g]&d[e]?1:0;cout<=0){ i--;}if(i<0&&g>0){g--;while(g>0&&(v[g]==u[k])){g--;}i=31; while(((v[g]&d[i])==(d[i]&u[k]))&&i>=0){i--;}}cout<