Scanner in = new Scanner(System.in); long size = in.nextLong(); long m = in.nextLong(); long k = in.nextLong(); long d = in.nextLong(); for (int i = 0; i < m; i++) { int x = in.nextInt(); int y = in.nextInt(); int step = 0; q.add(new Vertex(x, y, step)); } for (int i = 0; i < k; i++) { int x = in.nextInt(); int y = in.nextInt(); int z = in.nextInt(); map[x][y] = z; }
for (int i = 0; i < d; i++) { int x = in.nextInt(); int y = in.nextInt(); vis[x][y] = true;
} in.close(); long cnt = 0; long ans = 0;
while (!q.isEmpty()) { Vertex u = q.remove();
for (int i = 0; i < 4; i++) { Vertex tem = new Vertex();