#include #include using namespace std; using namespace atcoder; long long op(long long a,long long b){ return min(a,b); } long long e(){ return 1000000000000000000LL; } long long add(long long f,long long x){ return f+x; } long long id(){ return 0LL; } int main(){ cin.tie(0)->ios::sync_with_stdio(0); int Q,L; cin >> Q >> L; lazy_segtree seg(vector(L,0LL)); for(;Q--;){ int t,l,r; long long c; cin >> t >> l >> r >> c; if(t==2) c=-c; seg.apply(l,r,c); cout << seg.all_prod() << '\n'; } }