#include <bits/stdc++.h>
using namespace std;
using i64=long long int;
struct bfstyp{
i64 x;
i64 y;
i64 dist;
};
int main(){
ios_base::sync_with_stdio(false);
cin.tie(NULL);
i64 n;
i64 q;
cin >> n >> q;
queue<bfstyp> lis={};
vector<vector<bool>> bio(4050,vector<bool>(4050,0));
for (i64 i=0;i<n;i++){
i64 unos;
i64 unos2;
cin >> unos >> unos2;
lis.push({unos+2005,unos2+2005,0});
bio[unos+2005][unos2+2005]=1;
}
vector<i64> kol(1005,0);
while (lis.size()>0){
i64 x=lis.front().x;
i64 y=lis.front().y;
i64 dist=lis.front().dist;
lis.pop();
if (dist>1003){
break;
}
kol[dist]++;
if (!bio[x-1][y]){
bio[x-1][y]=1;
lis.push({x-1,y,dist+1});
}
if (!bio[x+1][y]){
bio[x+1][y]=1;
lis.push({x+1,y,dist+1});
}
if (!bio[x][y-1]){
bio[x][y-1]=1;
lis.push({x,y-1,dist+1});
}
if (!bio[x][y+1]){
bio[x][y+1]=1;
lis.push({x,y+1,dist+1});
}
}
for (i64 i=0;i<q;i++){
i64 unos;
cin >> unos;
cout << kol[unos] << "\n";
}
}