// // Created by darian on 18.06.24. // #include using namespace std; using ll = long long; void update_range(int a, int b, ll k, vector &dif) { dif[a] += k; if (b != dif.size() - 1) { dif[b+1] -= k; } } int main() { int n, q; cin >> n >> q; vector input(n); vector difference; for (auto &e: input){ cin >> e; if (difference.size()) difference.push_back(e - input.back()); else difference.push_back(e); } for (int i{}; i < q; i++) { int t; cin >> t; if (t == 1) { int a, b; ll u; cin >> a >> b >> u; a--; b--; update_range(a, b, u, difference); } } }