#define _CRT_SECURE_NO_WARNINGS
#include<bits/stdc++.h>
#include<unordered_map>
#define endl "\n"
#define Ceil(x,y) ((x+y-1)/y)
#define clr(arr, x) memset(arr, x, sizeof arr)
#define all(v) v.begin(),v.end()
#define allr(s) s.rbegin(),s.rend()
#define watch(x) cout<<(#x)<<" = "<<x<<endl
#define sz(s)	(int)(s.size())
 #define int long long
const int mod = 1e9 + 7;
typedef long long ll;
const int inf = 1e18+1000000;
using namespace std;
typedef long double ld;
typedef unsigned long long ull;
int dx[]{ -1, 0, 1, 0,  -1, 1, 1, -1 };
int dy[]{  0, 1, 0,-1,   1, 1,-1, -1 };
void file() {
#ifndef ONLINE_JUDGE
    freopen("input.txt", "r", stdin);
    freopen("output.txt", "w", stdout);
#endif
}

void fast() {
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);

}

void solve() {

    int n , m ;
    cin >>n>>m ;
    vector<vector<int>>v(n,vector<int>(m)) ;
    for (int i =0 ; i<n ; i++) {
        for (int j =0 ; j<m ; j++) {
            cin>>v[i][j] ;
        }
    }
    vector<vector<int>>pre(n,vector<int>(m,0)) ;
    for (int i =1 ; i<n ; i++) {
        for (int j =0 ; j<m ; j++) {
            if (v[i-1][j] <=v[i][j]) pre[i][j]=1 ;
        }
    }
    for (int i =1 ; i<n ; i++) {
        for (int j =0 ; j<m ; j++) {
             pre[i][j]+=pre[i-1][j] ;
        }
    }

    int q ; cin >>q;
    while (q--) {
        int l , r ; cin >>l>>r ;
        l-- , r--;
        bool b=0;
        for (int col=0 ; col<m ; col++) {
            if (pre[r][col] - pre[l][col] ==r-l) {
                b=1; break;
            }
        }
        if (!b) cout<<"No\n" ;
        else cout <<"Yes\n" ;
    }


}





int32_t main() {


    file();
    fast();
    int t = 1;
    //cin >> t;
    for (int tc = 1; tc <= t; tc++) {
        solve();
    }
}