#include
#include
#include
#include
int main() {
int n, m;
scanf("%d%d", &n, &m);
gsl_matrix * mat = gsl_matrix_alloc(n, m);
for(int i = 0; i < n; i++) {
for(int j = 0; j < m; j++) {
double t;
scanf("%lf", &t);
gsl_matrix_set(mat, i, j, t);
}
}
int k;
scanf("%d", &k);
gsl_vector * V = gsl_vector_alloc(k);
for(int i = 0; i < k; i++) {
int pi, pj;
scanf("%d%d", &pi, &pj);
if(pi + 1 < n && pj + 1 < m) {
double maks = gsl_matrix_get(mat, pi, pj);
if(maks < gsl_matrix_get(mat, pi + 1, pj)) {
maks = gsl_matrix_get(mat, pi + 1, pj);
}
if(maks < gsl_matrix_get(mat, pi, pj + 1)) {
maks = gsl_matrix_get(mat, pi, pj + 1);
}
if(maks < gsl_matrix_get(mat, pi + 1, pj + 1)) {
maks = gsl_matrix_get(mat, pi + 1, pj + 1);
}
gsl_vector_set(V, i, maks);
}
else {
gsl_vector_set(V, i, -1);
}
}
for(int i = 0; i < k; i++) {
printf("%.0lf ", gsl_vector_get(V, i));
}
}
/*
5 5
1 7 5 0 4
2 3 18 -3 5
14 0 7 5 2
3 3 4 5 6
7 0 0 1 2
*.*/