#include <iostream>
using namespace std;
#define MAT_SIZE 1000
long long unsigned a[MAT_SIZE][MAT_SIZE];
long long unsigned path[MAT_SIZE][MAT_SIZE];
long long unsigned g[MAT_SIZE][MAT_SIZE];
int nadjiPut(int i,int j,int n,int m){
	if(i==n && j== m){
		path[i][j]=a[i][j];
		return 1;
	}
	if(a[i][j]!=0){
		path[i][j]=a[i][j];
		if(nadjiPut(i,j+1,n,m)>0) return 1;
		if(nadjiPut(i+1,j,n,m)>0) return 1;
		path[i][j]=0;
	}
	return 0;
}
int main() {
	long long unsigned n,m,s=0,q,p[MAT_SIZE],d[MAT_SIZE];
	cin>>n>>m;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=m;j++)
			cin>>a[i][j];
	cin>>q;
	for(int i=0;i<q;i++) {
		cin>>p[i];
		cin>>d[i];
	}
	for(int i=1;i<=n;++i)
		for(int j=1;j<=m;j++) g[i][j]=a[i][j];

	for(int l=0;l<q;l++){
		s=0;
		for(int i=1;i<=n;++i)
			for(int j=1;j<=m;j++) a[i][j]=g[i][j];
		for(int i=1;i<=n;++i)
			for(int j=1;j<=m;j++) path[i][j]=0;
		a[p[l]][d[l]]=0;
		nadjiPut(1,1,n,m);
		for(int i=1;i<=n;++i){
			for(int j=1;j<=m;j++)
				s+=path[i][j];
		}
		cout<<s<<endl;
	}
}