#include<cstdio>
#include<string.h>
#include<vector>
#include<iostream>
#include<cmath>
using namespace std;
#define LL long long
const short inf = 1<<14;
const int maxn = 3000 + 5;
int rain;
int n, m;
inline int max(int a, int b) { return a > b ? a : b; }
inline int min(int a, int b) { return a < b ? a : b; }
inline LL sqr(LL x) { return x*x; }
int N, M;
struct Guest
{
int x, y;
int s;
Guest(int x, int y, int s)
:x(x), y(y), s(s) { }
Guest() { }
}guest[3010];
struct Umbrella
{
int x, y;
Umbrella(int x=0, int y=0)
:x(x), y(y) { }
}umbrella[3010];
vector<int> adj[maxn];
int mx[maxn], my[maxn];
bool vis[maxn];
void input()
{
scanf("%d", &rain);
scanf("%d", &N);
for (int i = 1; i <= N; ++i) scanf("%d%d%d", &guest[i].x, &guest[i].y, &guest[i].s);
scanf("%d", &M);
for (int i = 1; i <= M; ++i) scanf("%d%d", &umbrella[i].x, &umbrella[i].y);
for (int i = 0; i < maxn; ++i) adj[i].clear();
for (int i = 1; i <= N; ++i) {
for (int j = 1; j <= M; ++j) {
LL dist = sqr(guest[i].x - umbrella[j].x) + sqr(guest[i].y - umbrella[j].y);
if (dist / sqr(guest[i].s) > rain*rain) continue;
adj[i].push_back(j);
}
}
}
short q[maxn];
int dx[maxn],dy[maxn];
bool bfs()
{
memset(dx, 0, 4*(N+2));
memset(dy, 0, 4*(M+2));
int front = 0, rear = 0;
for (int i = 1; i <= N; ++i)
if (mx[i] == -1) q[rear++] = i;
bool ok = false;
while (front < rear) {
int x = q[front++];
for (int i = 0; i < adj[x].size(); ++i) {
int y = adj[x][i];
if (dy[y]) continue;
dy[y] = dx[x] + 1;
if (my[y] != -1) {
dx[my[y]] = dy[y] + 1;
q[rear++] = my[y];
}
else ok = true;
}
}
return ok;
}
bool dfs(int u)
{
for (int i = 0; i < adj[u].size(); ++i) {
int v = adj[u][i];
if (!vis[v] && dy[v] == dx[u] + 1) {
vis[v] = true;
if (my[v] == -1 || dfs(my[v])){
my[v] = u;
mx[u] = v;
return true;
}
}
}
return false;
}
void solve()
{
memset(my, -1, sizeof(my));
memset(mx, -1, sizeof(mx));
int ans = 0;
while (bfs()) {
memset(vis, 0, M + 2);
for (int i = 1; i <= N;++i)
if (mx[i] == -1) ans += dfs(i);
}
printf("%d\n\n", ans);
}
int main()
{
int T; cin >> T;
for (int Cas = 1; Cas <= T; ++Cas) {
input();
printf("Scenario #%d:\n", Cas);
solve();
}
}