#include <bits/stdc++.h>
using namespace std;
using ll = long long;
struct Query{
ll A, B;
int id;
bool operator<(const Query& other) const { return A > other.A; }
};
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
int N, Q;
if(!(cin >> N >> Q)) return 0;
vector<pair<ll,ll>> dolls(N);
for(int i=0;i<N;i++){
ll R, H; cin >> R >> H;
dolls[i] = {R, H};
}
vector<Query> qs(Q);
for(int j=0;j<Q;j++){
ll A, B; cin >> A >> B;
qs[j] = {A, B, j};
}
sort(dolls.begin(), dolls.end(), [](const auto& x, const auto& y){
if(x.first != y.first) return x.first < y.first;
return x.second > y.second;
});
sort(qs.begin(), qs.end());
vector<ll> tails;
vector<int> ans(Q);
int p = N - 1;
for(const auto& qu : qs){
while(p >= 0 && dolls[p].first >= qu.A){
ll h = dolls[p].second;
auto it = upper_bound(tails.begin(), tails.end(), h);
if(it == tails.end()) tails.push_back(h);
else *it = h;
--p;
}
ans[qu.id] = int(upper_bound(tails.begin(), tails.end(), qu.B) - tails.begin());
}
for(int i=0;i<Q;i++) cout << ans[i] << '\n';
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp1c2luZyBsbCA9IGxvbmcgbG9uZzsKCnN0cnVjdCBRdWVyeXsKICAgIGxsIEEsIEI7CiAgICBpbnQgaWQ7CiAgICBib29sIG9wZXJhdG9yPChjb25zdCBRdWVyeSYgb3RoZXIpIGNvbnN0IHsgcmV0dXJuIEEgPiBvdGhlci5BOyB9Cn07CgppbnQgbWFpbigpewogICAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShudWxscHRyKTsKCiAgICBpbnQgTiwgUTsKICAgIGlmKCEoY2luID4+IE4gPj4gUSkpIHJldHVybiAwOwoKICAgIHZlY3RvcjxwYWlyPGxsLGxsPj4gZG9sbHMoTik7CiAgICBmb3IoaW50IGk9MDtpPE47aSsrKXsKICAgICAgICBsbCBSLCBIOyBjaW4gPj4gUiA+PiBIOwogICAgICAgIGRvbGxzW2ldID0ge1IsIEh9OwogICAgfQogICAgdmVjdG9yPFF1ZXJ5PiBxcyhRKTsKICAgIGZvcihpbnQgaj0wO2o8UTtqKyspewogICAgICAgIGxsIEEsIEI7IGNpbiA+PiBBID4+IEI7CiAgICAgICAgcXNbal0gPSB7QSwgQiwgan07CiAgICB9CgogICAgc29ydChkb2xscy5iZWdpbigpLCBkb2xscy5lbmQoKSwgW10oY29uc3QgYXV0byYgeCwgY29uc3QgYXV0byYgeSl7CiAgICAgICAgaWYoeC5maXJzdCAhPSB5LmZpcnN0KSByZXR1cm4geC5maXJzdCA8IHkuZmlyc3Q7CiAgICAgICAgcmV0dXJuIHguc2Vjb25kID4geS5zZWNvbmQ7CiAgICB9KTsKICAgIHNvcnQocXMuYmVnaW4oKSwgcXMuZW5kKCkpOwoKICAgIHZlY3RvcjxsbD4gdGFpbHM7CiAgICB2ZWN0b3I8aW50PiBhbnMoUSk7CiAgICBpbnQgcCA9IE4gLSAxOwoKICAgIGZvcihjb25zdCBhdXRvJiBxdSA6IHFzKXsKICAgICAgICB3aGlsZShwID49IDAgJiYgZG9sbHNbcF0uZmlyc3QgPj0gcXUuQSl7CiAgICAgICAgICAgIGxsIGggPSBkb2xsc1twXS5zZWNvbmQ7CiAgICAgICAgICAgIGF1dG8gaXQgPSB1cHBlcl9ib3VuZCh0YWlscy5iZWdpbigpLCB0YWlscy5lbmQoKSwgaCk7CiAgICAgICAgICAgIGlmKGl0ID09IHRhaWxzLmVuZCgpKSB0YWlscy5wdXNoX2JhY2soaCk7CiAgICAgICAgICAgIGVsc2UgKml0ID0gaDsKICAgICAgICAgICAgLS1wOwogICAgICAgIH0KICAgICAgICBhbnNbcXUuaWRdID0gaW50KHVwcGVyX2JvdW5kKHRhaWxzLmJlZ2luKCksIHRhaWxzLmVuZCgpLCBxdS5CKSAtIHRhaWxzLmJlZ2luKCkpOwogICAgfQoKICAgIGZvcihpbnQgaT0wO2k8UTtpKyspIGNvdXQgPDwgYW5zW2ldIDw8ICdcbic7CiAgICByZXR1cm4gMDsKfQ==