#include <iostream>
#include <vector>
using namespace std;

int main() {
    int n,m,q;
    cin>>n>>m>>q;
    vector<vector<long long>> matrix(n,vector<long long>(m,0));
    for(int i=0;i<n;i++){
        for(int j=0;j<m;j++){
            cin>>matrix[i][j];
        }
    }
    vector<vector<int>> search(q,vector(4,0));
    for(int i=0;i<q;i++){
        for(int j=0;j<4;j++){
            cin>>search[i][j];
        }
    }
    //先推到出以(0,0)到(x,y)的和矩阵prefix
    vector<vector<long long>> prefix(n+1,vector<long long>(m+1,0));
    for(int i=1;i<n+1;i++){
        for(int j=1;j<m+1;j++){
            prefix[i][j]=prefix[i-1][j]+prefix[i][j-1]-prefix[i-1][j-1]+matrix[i-1][j-1];
        }
    }
    for(int i=0;i<q;i++){
        int x1=search[i][0];
        int y1=search[i][1];
        int x2=search[i][2];
        int y2=search[i][3];
        cout<<(prefix[x2][y2]-prefix[x1-1][y2]-prefix[x2][y1-1]+prefix[x1-1][y1-1])<<endl;
    }
    return 0;
} 
// 64 位输出请用 printf("%lld")