mapa,b; ll@n,@q; a[-1]=0; b[n]=n; rep(q){ ll@t,@x; auto i=a.lower_bound(-x); auto j=b.lower_bound(x); ll u=min(i->first+x+i->second,j->first-x+j->second); if(t==1){ wt(u); } if(t==2){ ll@c; if(csecond<-x-i->first+c){ break; } i=a.erase(i); } a[-x]=c; while(j!=b.begin()){ --j; if(j->secondfirst+c){ break; } j=b.erase(j); } b[x]=c; } } }