import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;

public class Main{
    public static void main(String[] args){

	// テ、ツクツ?ゥツδ偲・ツ青崚」ツ?ョテ」ツδ榲」ツδ暗」ツδェテ」ツδァテ」ツつキテ」ツつォテ」ツ?ョテゥツォツ佚」ツ?陛ァツ板ィテ」ツ?ィテ・ツ債甘・ツセツ?ァツ板ィテッツシツ淌」ツ?ィテ」ツ??ヲツャツ。テゥツδ偲・ツ青崚」ツ?ョテ」ツ?ィテ」ツ?ァテ」ツ??ィツィツ暗・ツ崢崚」ツ?、テゥツ?催・ツ按療」ツ?古・ツソツ?ィツヲツ?」ツ?ォテ」ツ?ェテ」ツつ凝」ツ?ョテ」ツ?凝」ツ?ェテ「ツ?ヲ
	Scanner sc = new Scanner(System.in);
	int ichiroNum = 0, jiroNum = 0; //テ、ツコツコテ・ツスツ「テ」ツ?ョテヲツ閉ーテ・ツ?・テ」ツつ古」ツつ凝」ツ?淌」ツつ?」ツ?ョテ・ツ、ツ嘉ヲツ閉ー

	while(sc.hasNext()){

	    ichiroNum = sc.nextInt(); // テ、ツクツ?ゥツδ偲・ツ青崚」ツ?ョテ、ツコツコテ・ツスツ「テ」ツ?ョテヲツ閉ーテ・ツ?・テ・ツ環崚」ツ?づ」ツ?禿」ツつ古」ツ??テ」ツ??」ツ?」テ」ツ?淌」ツつ嘉ァツオツづ、ツコツ?
	    if(ichiroNum==0) break;

	    // **** テ」ツ?禿」ツ?禿」ツ?凝」ツつ嘉、ツクツ?ゥツδ偲」ツ?湘」ツつ禿」ツ?ョテ」ツδ?」ツδシテ」ツつソテ、ツスツ愿ヲツ按?****
	    
	    int[] ichiroHeight = new int[ichiroNum];
	    int[] ichiroWeight = new int[ichiroNum];

	    for(int i = 0;i<ichiroNum;i++){
		ichiroHeight[i] = sc.nextInt();
		ichiroWeight[i] = sc.nextInt();
	    }
	    // **********************************

	    jiroNum = sc.nextInt();

	    // ***** テ」ツ?禿」ツ?禿」ツ?凝」ツつ嘉ヲツャツ。テゥツδ偲・ツ青?***************
	    int[] jiroHeight = new int[jiroNum];
	    int[] jiroWeight = new int[jiroNum];

	    for(int i = 0;i<jiroNum;i++){
		jiroHeight[i] = sc.nextInt();
		jiroWeight[i] = sc.nextInt();
	    }
	    // **********************************
	    // ***** テ」ツ?禿」ツ?禿」ツ?凝」ツつ嘉・ツ按、テ・ツョツ?*****

	    // テ」ツ?ゥテ」ツ??」ツ?療」ツつ暗」ツ??」ツ?凝」ツ?ェテ」ツ??ゥツォツ佚」ツ?陛ゥツ??」ツ?ォテ、ツクツヲテ」ツ?ケテヲツ崢ソテ」ツ?暗」ツ?ヲテ」ツ?陛」ツつ嘉」ツ?ォテ・ツ債甘・ツセツ?ゥツ??」ツ?ォテ、ツクツヲテ」ツ?ケテヲツ崢ソテ」ツ?暗」ツ?淌」ツつ甘」ツ?療」ツつ暗」ツ??」ツ?凝」ツ?ェテ「ツ?ヲテッツシツ?
	    // テ」ツ?ィテ」ツつ甘」ツ?づ」ツ?暗」ツ?堙、ツコツ古、ツコツコテ」ツ?ョテ」ツつ津」ツ?づ」ツつ湘」ツ?崚」ツ?淌ゥツ?催・ツ按療」ツつ津」ツ?セテ」ツ?淌ヲツ鳴ーテ」ツ?療」ツ?湘、ツスツ愿」ツつ催」ツ??」ツ?凝」ツ?ェテ」ツ?づ」ツ?敕」ツつ古」ツ?ァテゥツォツ佚」ツ?陛ゥツ??」ツ?ォテ、ツクツヲテ」ツ?ケテ」ツ?ヲテ」ツ?ソテ」ツつ暗」ツ??
	    // テゥツォツ佚」ツ?陛」ツ?ィテ・ツケツ?」ツ?ョテ・ツ、ツァテ・ツーツ湘ゥツ鳴「テ、ツソツづ」ツ?古ゥツ??」ツ?ォテ」ツ?ェテ」ツ?」テ」ツ?。テ」ツつε」ツ??」ツつ?」ツ?、テ」ツつづ」ツ?ィテ」ツつ甘」ツ?づ」ツ?暗」ツ?堙ゥツ?催・ツ按療」ツ?ォテ・ツ青ォテ」ツつ?」ツ?ヲテ」ツ??ヲツ閉ーテ」ツつ津ヲツ閉ーテ」ツ?暗」ツつ凝」ツ?ィテ」ツ?催」ツ?ォテ・ツ按、テ・ツョツ堙」ツ?凖」ツつ?

	    int[] count = new int[ichiroNum+jiroNum];

	    int[][] dolls = new int[ichiroNum+jiroNum][2];
	    
	    // テ、ツクツ?ゥツδ偲」ツ?湘」ツつ禿」ツ?ョテ」ツ?ィテヲツャツ。テゥツδ偲・ツ青崚」ツ?ョテ」ツつ津・ツ青暗」ツつ湘」ツ?崚」ツつ?
	    for(int i = 0;i<ichiroNum;i++){
	    	dolls[i][0] = ichiroHeight[i];
	    	dolls[i][1] = ichiroWeight[i];
	    }
	    for(int i = ichiroNum;i<ichiroNum+jiroNum;i++){
	    	dolls[i][0] = jiroHeight[i-ichiroNum];
	    	dolls[i][1] = jiroWeight[i-ichiroNum];
	    }
	    
	    Arrays.sort(dolls, new Comparator<int[]>() {
	     public int compare(int[] o1, int[] o2) {
	      if(o1[0] != o2[0]) return o1[0] - o2[0];
	      return o1[1] - o2[1];
	     }
	    });
	    
	    // テ」ツ?禿」ツつ古」ツ?ァテゥツ?催・ツ按療」ツ?ァテ」ツ?催」ツ?淌」ツ?ョテ」ツ?凝」ツ?ェテ」ツδサテ」ツδサテ」ツδサテ」ツつケテ」ツつエテ」ツつ、テッツシツ?

	    // テ」ツ?陛」ツ?ヲテ」ツ?陛」ツ?ヲテ・ツ按、テ・ツョツ堙・ツ按、テ・ツョツ堙」ツ?づ」ツ?ァテ」ツ?催」ツつ凝」ツ?凝」ツ?ェ
	    // テ」ツ??」ツ?凝」ツつ嘉ィツヲツ?」ツ?凖」ツつ凝」ツ?ォテ」ツ??」ツ?セテ」ツ?堙、ツクツ?ァツ閉ェテ」ツ?。テ」ツ??」ツ?陛」ツ??・ツュツ静」ツ?凝」ツつ嘉ィツ?ε」ツ?暗」ツ?ヲテ」ツ??ィツ?ェテ・ツ按?」ツ?古」ツ?ゥテ」ツ?ョテ」ツ?湘」ツつ嘉」ツ??」ツ?ョテ・ツュツ静」ツつ津・ツ?・テ」ツつ古」ツつ嘉」ツつ古」ツつ凝」ツ?凝」ツつ津ィツ?ε」ツ?暗」ツつ?
	    // テ」ツ?ゥテ」ツつ禿」ツ?ゥテ」ツつ禿・ツ、ツァテ」ツ?催」ツ??・ツュツ静」ツ?ォテ」ツ?ェテ」ツ?」テ」ツ?ヲテ」ツ??」ツ?」テ」ツ?ヲテ」ツ??ィツ?ェテ・ツ按?」ツ?古・ツ?・テ」ツつ古」ツつ嘉」ツつ古」ツつ凝・ツュツ静」ツ?ョテ、ツクツュテ」ツ?ァテ、ツクツ?ァツ閉ェテ・ツ、ツァテ」ツ?催」ツ??・ツュツ静」ツ?古・ツ?・テ」ツつ古」ツつ嘉」ツつ古」ツつ凝ヲツ閉ーテ」ツ?ッティツ?ェテ・ツ按?」ツつづ・ツ?・テ」ツつ古」ツつ嘉」ツつ古」ツつ凝ヲツ閉ーテ」ツ??」ツ?凝」ツつ嘉」ツ??」ツ?敕」ツつ古」ツ?ォ+1テ」ツ?凖」ツつ古」ツ?ーテ」ツ??」ツ??」ツ?ィテ」ツ??」ツ??」ツ?禿」ツ?ィテ」ツ??」ツつ暗」ツ?ュ
	    
	    for(int i = 0;i<count.length;i++){
	    	for(int j = 0;j<i;j++){
	    		if(dolls[j][0] < dolls[i][0] && dolls[j][1] < dolls[i][1])
	    			 if(count[i] < count[j] + 1) count[i] = count[j] + 1;
	    	}
	    }

	    Arrays.sort(count);
	    
	    int countMax = count[count.length-1];
	    // countMaxテ」ツ?ッテ」ツ??」ツ?敕」ツ?ョテ」ツ?禿」ツ?古、ツスツ陛・ツ?凝ィツ?ェテ・ツ按?」ツ?ョテ、ツクツュテ」ツ?ォテ・ツ?・テ」ツつ古」ツつ嘉」ツつ古」ツつ凝」ツ?凝」ツ?ョテヲツ閉ーテ」ツ??」ツ?凝」ツつ?
	    // ティツヲツ姪ァツつケテ」ツ?ォテ」ツ?ェテ」ツ?」テ」ツ?ヲテ」ツつ凝・ツュツ静」ツ?ョテ・ツ按?」ツつづヲツ閉ーテ」ツ?ォテ・ツ?・テ」ツつ古」ツつ凝」ツ?禿」ツ?ィテ」ツ?ォテ」ツ?ェテ」ツ?」テ」ツ?ヲテ」ツ??・ツ?コテ・ツ環崚」ツ?ッ+1テ」ツ?療」ツ?ェテ」ツ?催」ツつεッツシツ?」ツ?づ」ツ?凝」ツつ禿ッツシツ?
	    // テ」ツ?禿」ツつ禿」ツ?ェテ」ツ?禿」ツ?ィテ」ツ?ォテ」ツつづヲツーツ療」ツ?・テ」ツ?凝」ツつ禿」ツ?ィテ」ツ?ッテ」ツ??」ツ?づ」ツ?サテ」ツつ?」ツつ催」ツ??ッツシツ?
	    System.out.println(countMax+1);

	    // テ・ツ按敕ヲツ慊淌・ツ個?
	    for(int i = 0;i<count.length;i++){
	    	count[i] = 0;
	    }
	    ichiroNum = 0;
	    jiroNum = 0;
	    
	}
	
    }

}

Measured memory_bytes: 25748