#include using std::cin; using std::cout; const char endl = '\n'; const int N = (1 << 12) + 5; int n, m, op; long long c[N][N]; int lowbit(int x) { return x & -x; } void add(int x, int y, int v) { for (int i = x; i <= n; i += lowbit(i)) { for (int j = y; j <= m; j += lowbit(j)) { c[i][j] += v; } } } long long sum(int x, int y) { long long res = 0; for (int i = x; i; i -= lowbit(i)) { for (int j = y; j; j -= lowbit(j)) { res += c[i][j]; } } return res; } long long sum(int x1, int y1, int x2, int y2) { return sum(x2, y2) - sum(x1 - 1, y2) - sum(x2, y1 - 1) + sum(x1 - 1, y1 - 1); } int main() { std::ios::sync_with_stdio(false); cin.tie(nullptr); cin >> n >> m; while (cin >> op) { if (op == 1) { int x, y, k; cin >> x >> y >> k; add(x, y, k); } else { // op == 2 int a, b, c, d; cin >> a >> b >> c >> d; cout << sum(a, b, c, d) << endl; } } return 0; }