#include <iostream>


void zad_vage(long long int min[], long long int max[],
              int l[], int d[],
              long long int x[], int m) {
    for (int i=0; i<m; i++) {
        // ispitujemo resenje za i-ti upit
        int br = 0;
        for (int j=l[i]-1; j<d[i]; j++) {
            if (x[i] >= min[j] && x[i] <= max[j])
                br++;
        }
        std::cout << br << std::endl;
    }
}


int main() {
    int N, M;
    std::cin >> N >> M;
    long long int* d = new long long int[N];
    long long int* u = new long long int[N];
    for (int i = 0; i < N; i++) {
        std::cin >> d[i] >> u[i];
    }
    int* l = new int[M];
    int* r = new int[M];
    long long int* x = new long long int[M];

    for (int i=0; i<M; i++) {
        std::cin >> l[i] >> r[i] >> x[i];
    }

    zad_vage(d, u, l, r, x, M);

    return 0;
}