#include<bits/stdc++.h>
#define REP(i,a,b) for(int i=a;i<=b;i++)
using namespace std;

const int maxn=2e3;
const int dx[]={0,0,1,-1},dy[]={1,-1,0,0};

int A[maxn+10][maxn+10],B[maxn+10][maxn+10];
int DP[maxn+10][maxn+10][4];
int sum[maxn+10][maxn+10][4];

int SUM(int a,int b,int c,int d,int e){
	return sum[c][d][e]-sum[a-1][d][e]-sum[c][b-1][e]+sum[a-1][b-1][e];
}

int main(){
	int n,m,q;
	scanf("%d%d%d",&n,&m,&q);
	REP(i,1,n)REP(j,1,m){
		char c;
		scanf(" %c",&c);
		A[i][j]=c-'0';
	}
	REP(i,1,n)REP(j,1,m)if(A[i][j])
		REP(k,0,3)DP[i][j][k]=A[i+dx[k]][j+dy[k]];
	REP(k,0,3)REP(i,1,n)REP(j,1,m)
		sum[i][j][k]=sum[i-1][j][k]+sum[i][j-1][k]-sum[i-1][j-1][k]+DP[i][j][k];
	REP(i,1,n)REP(j,1,m)B[i][j]=B[i-1][j]+B[i][j-1]-B[i-1][j-1]+A[i][j];
	
	while(q--){
		int x,y,xx,yy;
		scanf("%d%d%d%d",&x,&y,&xx,&yy);
		int ans=B[xx][yy]-B[x-1][yy]-B[xx][y-1]+B[x-1][y-1],t=0;
		REP(i,0,3)t+=SUM(x,y,xx,yy,i);
		t-=SUM(x,y,x,yy,3),t-=SUM(x,y,xx,y,1);
		t-=SUM(xx,y,xx,yy,2),t-=SUM(x,yy,xx,yy,0);
		printf("%d\n",ans-t/2);
	}
	return 0;
}
