Implement a segment tree supporting: (1) Range sum query, (2) Range add update (add value to all elements in range), (3) Range set update (set all elements in range to value). Use lazy propagation for O(log n) updates. Test with array of size 10^5 and 10^5 queries. Explain: tree size (4n), build, update, query, push (propagate lazy).