#include <iostream>
#include <sstream>
#include <fstream>
#include <string>
#include <vector>
#include <deque>
#include <queue>
#include <stack>
#include <set>
#include <map>
#include <algorithm>
#include <functional>
#include <utility>
#include <bitset>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <cstdio> 
#include <cstring>
#define rep(i, n) for(int (i) = 0; (i) < (n); (i)++)
#define rangeRep(i, n, m) for(int (i) = (n); (i) < (m); (i)++)
struct Student {
	int t, n, m, s;
};
constexpr int timeOffset = 540;
//[PC][??????] = ????????????
int dp[1000][1260 - timeOffset] = { 0 };
class Solve {
public:
	Solve() {};
	~Solve() {};
	void solver() {
		std::vector<std::vector<int>> results;
		while (1) {
			int n, m, r, q;
			std::vector<Student> students;
			std::cin >> n >> m;
			if (!n) break;
			std::memset(dp, 0, 1000 * (1260 - timeOffset) * sizeof(int));
			long long a = 1000 * (1260 - timeOffset) * sizeof(int);
			results.push_back(std::vector<int>());
			//?????°???????????±
			std::cin >> r;
			Student s;
			rep(i, r) {
				//??????, PC??????, ????????????, isLogin
				std::cin >> s.t >> s.n >> s.m >> s.s;
				//?????°??????
				if (s.s) {
					//?????°??????????§???????????????????
					dp[s.n - 1][s.t - timeOffset] = s.m;
				}//?????°??¢??????
				else {
					//?????°????????¨????????§?????£?????????
					int time = s.t - timeOffset - 1;
					while (dp[s.n - 1][time] == 0) {
						dp[s.n - 1][time--] = s.m;
					} 
				}
			}
			//?????? [ts, te]??????????????????m????????¨??????
			std::cin >> q;
			rep(i, q) {
				int num = 0;
				int ts, te, m;
				std::cin >> ts >> te >> m;
				ts -= timeOffset; te -= timeOffset;
				//???????????????PC??§?????°?????????????????????????????????
				rangeRep(j, ts, te) {
					rep(k, 1000) {
						if (dp[k][j] == m) {
							num++;
							break;
						}
					}
				}
				results.back().push_back(num);
			}
		}
		for (auto& x : results) {
			for (auto& y : x) {
				std::cout << y << std::endl;
			}
		}
	}
private:
};
int main() {
	Solve solve;
	solve.solver();
	return 0;
}