import java.util.Arrays; import java.util.Comparator; import java.util.Scanner; public class Arrange { static class Pair { int time; int rank; Pair(int time, int rank) { this.time = time; this.rank = rank; } } public static void main(String[] args) { // 200*xi + 3*yi Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(), m = scanner.nextInt(); Pair[] mach = new Pair[n]; Pair[] task = new Pair[m]; for (int i = 0; i < n; i++) { mach[i] = new Pair(scanner.nextInt(), scanner.nextInt()); } for (int i = 0; i < m; i++) { task[i] = new Pair(scanner.nextInt(), scanner.nextInt()); } Comparator cmp = new Comparator() { @Override public int compare(Pair p1, Pair p2) { if (p1.time != p2.time) return p2.time - p1.time; return p2.rank - p1.rank; } }; Arrays.sort(task, cmp); Arrays.sort(mach, cmp); int cnt = 0, gain = 0, idx = 0; int[] level = new int[101]; for (Pair t : task) { while (idx < n && t.time <= mach[idx].time) { level[mach[idx].rank]++; idx++; } for (int i = t.rank; i < 101; i++) { if (0 < level[i]) { level[i]--; cnt++; gain += 200 * t.time + 3 * t.rank; break; } } } System.out.printf("%d %d\n", cnt, gain); scanner.close(); } }