#include <iostream>
#include <vector>
using namespace std;
#pragma region 입출력 속도향상
#define FAST_IO() \
{\
ios::sync_with_stdio(false);\
cin.tie(NULL); \
cout.tie(NULL); \
}\
#pragma endregion
int main()
{
FAST_IO();
int n, m;
cin >> n >> m;
vector<vector<int>> v(n + 1, vector<int>(n + 1));
// 입력
for (int y = 1; y < v.size(); y++)
{
for (int x = 1; x < v[y].size(); x++)
cin >> v[y][x];
}
// 구간합 구하기
vector<vector<int>> d(n + 1, vector<int>(n + 1));
for (int y = 1; y < v.size(); y++)
{
for (int x = 1; x < v[y].size(); x++)
// 아래는 공식 현재 축 y x 기준 1만큼 왼쪽 세 방향
d[y][x] = d[y - 1][x] + d[y][x - 1] - d[y - 1][x - 1] + v[y][x];
}
// 정답 도출
while (m--)
{
int y1, x1, y2, x2;
cin >> y1 >> x1 >> y2 >> x2 ;
cout << d[y2][x2] - d[y2][x1 - 1] - d[y1 - 1][x2] + d[y1 - 1][x1 - 1] << '\n';
}
return 0;
}