#include <bits/stdc++.h>

using namespace std;

int main()
{
    ios::sync_with_stdio(false) ;
    cin.tie(0) ;
    cout.tie(0) ;
    long long n , m ;
    cin >> n >> m ;
    long long mat[n+1][m+1] ;
    for(int i=1 ; i<=n ; i++){
        for(int j=1 ; j<=m ; j++){
            cin >> mat[i][j] ;
        }
    }
    int q ;
    cin >> q ;
    long long a , b ;
    pair<long long,long long> upiti[q] ;
    for(int k=0 ; k<q ; k++){
        cin >> a >> b ;
        upiti[k].first=(b-1)*n+a ;
        upiti[k].second=k ;
    }
    sort(upiti,upiti+n) ;
    long long odgovori[q] ;
    long long res[n+1][m+1] ;
    res[1][1]=mat[1][1] ;
    long long x , y;
    x=(upiti[0].first-1)%n+1 ;
    y=(upiti[0].first)/n+1 ;


    long long c=mat[x][y] ;
    mat[x][y]=10000000000000000 ;
    for(int i=2 ; i<=m ; i++){
        res[1][i]=mat[1][i]+res[1][i-1] ;
    }
    for(int i=2 ; i<=n ; i++){
        res[i][1]=mat[i][1]+res[i-1][1] ;
    }
    for(int i=2 ; i<=n ; i++){
        for(int j=2 ; j<=m ; j++){
            if(res[i][j-1]<res[i-1][j]){
                res[i][j]=mat[i][j]+res[i][j-1] ;
            }
            else{
                res[i][j]=mat[i][j]+res[i-1][j] ;
            }
        }
    }
    mat[x][y]=c ;
    odgovori[0]=res[n][m] ;
    for(int k=1 ; k<q ; k++){
        long long x1 ,y1 ;
        x1=x ;
        y1=y ;
        x=(upiti[k].first-1)%n+1 ;
        y=(upiti[k].first)/n+1 ;

        c=mat[x][y] ;
        mat[x][y]=10000000000000000 ;
        for(int i=x1 ; i<=n ; i++){
        for(int j=y1 ; j<=y-1 ; j++){
            if(res[i][j-1]<res[i-1][j]){
                res[i][j]=mat[i][j]+res[i][j-1] ;
            }
            else{
                res[i][j]=mat[i][j]+res[i-1][j] ;
            }
        }
    }
     for(int i=x ; i<=n ; i++){
        for(int j=y ; j<=m ; j++){
            if(res[i][j-1]<res[i-1][j]){
                res[i][j]=mat[i][j]+res[i][j-1] ;
            }
            else{
                res[i][j]=mat[i][j]+res[i-1][j] ;
            }
        }
    }
        odgovori[upiti[k].second]=res[n][m] ;
        mat[x][y]=c ;

    }
    for(int i=0 ; i<q ; i++){
        cout << odgovori[i] << endl ;
    }
    return 0;
}