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

int main()
{
    int a[1000][1000];
    int zbir[1000][1000];
    int n,m;
    int r;
    bool v=false;
    cin>>n>>m;
    for (int i=0;i<n;i++)
    {
        for(int j=0;j<m;j++)cin>>a[i][j];
    }
    cin>>r;
    int sum=0;
    for(int i=0;i<r;i++)
    {
        int o1,o2;
        cin>>o1>>o2;
        o1-=1;
        o2-=1;
        int sum=0;
        for(int c=0;c<m;c++)
        {
            if(v)zbir[0][c]=1000000000;
            else{
                sum+=a[0][c];
                zbir[0][c]=sum;
                if(c==o2&&o1==0)v=true;
            }
        }
        v=false;
        sum=0;
        for(int d=0;d<n;d++)
        {
            if(v)zbir[d][0]=1000000000;
            else{
                sum+=a[d][0];
                zbir[d][0]=sum;
                if(d==o1&&o2==0)v=true;
            }
        }
        v=false;
        sum=0;
        for(int x=1;x<n;x++){
            for(int y=1;y<m;y++){
                if(x-1==o1 && y==o2)zbir[x][y]=zbir[x][y-1]+a[x][y];
                else if(x==o1&&y-1==o2)zbir[x][y]=zbir[x-1][y]+a[x][y];
                else zbir[x][y]=min(zbir[x][y-1],zbir[x-1][y])+a[x][y];
            }
        }
        cout<<zbir[n-1][m-1]<<endl;
    }
    return 0;
}