public void Operate(int i, T x) { i += LeafCount; if (!IsCommutative) { Propagate(i); } Operators[i] = Monoid.Operation(Operators[i], x); }