#include <stdio.h>
#include <math.h>
#define LINII 700
#define COLOANE 700
#define NORM 400
long n, m, i, x, y, a[1024][1024], r, boom;
inline long ok(long x, long y) {
if (x <= LINII && x >=1 && y <= COLOANE && y >= 1) {
return 1;
}
return 0;
}
long parc_contur(long x, long y, long r) {
long lin = 0, col = 0, sum = 0, dif = 0, h = 0, vb1 = 0;
//vest in sus
lin = x;col = y - r;h = 0;
if (!ok(lin, col)) {
lin -= 1 - col;
col = 1;
if (!ok(lin, col)) {
vb1 = 1;
}
}
if (vb1 == 0) {
while (col != y) {
++h;
if (h != 1) {
--lin;++col;
}
if (ok(lin, col)) {
sum += a[lin][col];
} else {
break;
}
}
}
//est in sus
lin = x;col = y + r;h = 0;
if (!ok(lin, col)) {
lin -= col - COLOANE;
col = COLOANE;
if (!ok(lin, col)) {
vb1 = 1;
}
}
if (vb1 == 0) {
while (col != y) {
++h;
if (h != 1) {
--lin;--col;
}
if (ok(lin, col)) {
sum += a[lin][col];
}
}
}
//jos in vest
lin = x + r;col = y;h = 0;
if (!ok(lin, col)) {
col -= lin - LINII;
lin = LINII;
if (!ok(lin, col)) {
vb1 = 1;
}
}
if (vb1 == 0) {
while (lin != x) {
++h;
if (h != 1) {
--lin;--col;
}
if (ok(lin, col)) {
sum += a[lin][col];
}
}
}
//jos in est
lin = x + r;col = y;h = 0;
if (!ok(lin, col)) {
col += lin - LINII;
lin = LINII;
if (!ok(lin, col)) {
vb1 = 1;
}
}
while (lin != x) {
++h;
if (h != 1) {
--lin;++col;
}
if (ok(lin, col)) {
sum += a[lin][col];
}
}
if (ok(x - r, y)) dif += a[x - r][y];
if (ok(x + r, y)) dif += a[x + r][y];
if (ok(x, y - r)) dif += a[x][y - r];
if (ok(x, y + r)) dif += a[x][y + r];
return sum - dif;
}
int main() {
freopen("grendizer.in", "r", stdin);
freopen("grendizer.out", "w", stdout);
scanf("%ld %ld", &n, &m);
for (i = 1; i <= n; ++i) {
scanf("%ld %ld", &x, &y);
x += NORM;
y += NORM;
++a[x][y];
}
for (i = 1; i <= m; ++i) {
scanf("%ld %ld %ld", &x, &y, &r);
x += NORM;y += NORM;
boom = 0;
boom = parc_contur(x, y, r);
printf("%ld\n", boom);
}
return 0;
}