#include <iostream>
#include<bits/stdc++.h>
using namespace std;
int main() {
int q ; cin>>q; int p ; cin>>p;
vector<vector<int>>query(q,vector<int>(2,0));
vector<pair<int,int>>bounds;
for(int i = 0 ; i<q;i++){
int l ; int r ;
cin>>l>>r;
query[i][0]=l; query[i][1]=r;
bounds.push_back({l,0});
bounds.push_back({r,2});
}
for(int i = 0 ; i<p;i++){
int point ; cin>>point;
bounds.push_back({point,1});
}
sort(bounds.begin(),bounds.end());
int n = bounds.size();
map<int,int>prefix;
int c=0;
for(int i = 0 ; i<n;i++){
if(bounds[i].second==0) {
c=c+1;
}
else if (bounds[i].second ==1){
prefix[bounds[i].first]=c;
cout<<c<<" ";
}
else{
c=c-1;
}
}
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZTxiaXRzL3N0ZGMrKy5oPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKCmludCBtYWluKCkgewoJaW50IHEgOyBjaW4+PnE7IGludCBwIDsgY2luPj5wOwoJdmVjdG9yPHZlY3RvcjxpbnQ+PnF1ZXJ5KHEsdmVjdG9yPGludD4oMiwwKSk7Cgl2ZWN0b3I8cGFpcjxpbnQsaW50Pj5ib3VuZHM7Cglmb3IoaW50IGkgPSAwIDsgaTxxO2krKyl7CgkJaW50IGwgOyBpbnQgciA7IAoJCWNpbj4+bD4+cjsKCQlxdWVyeVtpXVswXT1sOwlxdWVyeVtpXVsxXT1yOwoJCWJvdW5kcy5wdXNoX2JhY2soe2wsMH0pOwoJCWJvdW5kcy5wdXNoX2JhY2soe3IsMn0pOwoJfQoJZm9yKGludCBpID0gMCA7IGk8cDtpKyspewogICAJICAgIGludCBwb2ludCA7IGNpbj4+cG9pbnQ7CiAgIAkgICAgYm91bmRzLnB1c2hfYmFjayh7cG9pbnQsMX0pOwogICAgICAgfQogICAgCglzb3J0KGJvdW5kcy5iZWdpbigpLGJvdW5kcy5lbmQoKSk7CgkKCWludCBuID0gYm91bmRzLnNpemUoKTsKCW1hcDxpbnQsaW50PnByZWZpeDsKCWludCBjPTA7Cglmb3IoaW50IGkgPSAwIDsgaTxuO2krKyl7CgkJaWYoYm91bmRzW2ldLnNlY29uZD09MCkgewoJCQljPWMrMTsKCQkKCQl9CgkJZWxzZSBpZiAoYm91bmRzW2ldLnNlY29uZCA9PTEpewoJCQlwcmVmaXhbYm91bmRzW2ldLmZpcnN0XT1jOwoJCQljb3V0PDxjPDwiICI7CgkJfQoJCWVsc2V7CgkJCQoJCQljPWMtMTsKCQl9Cgl9CgkKCQoJCgkKCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCXJldHVybiAwOwp9