import java.util.*;
class D {
	int a,e;
	D(int i,int j) {a=i;e=j;}
};
public class Main 
{
	public static void main(String[] args)
	{
		Scanner cin = new Scanner(System.in);
		int a,e;
		String t;
		D tD;
		List<D> L=new LinkedList<D>();
		while(cin.hasNext())
		{
			t=cin.nextLine();
			Scanner str=new Scanner(t);
			while(str.hasNext())
			{
				a=str.nextInt();
				e=str.nextInt();
				L.add(new D(a,e));
			}
			t=cin.nextLine();
			str.close();
			str=new Scanner(t);
			while(str.hasNext())
			{
				boolean f=true;
				a=str.nextInt();
				e=str.nextInt();
				ListIterator<D> p=L.listIterator();
				while(p.hasNext())
				{
					tD=p.next();
					if(e>tD.e)
					{
						p.previous();
						p.add(new D(a,e));
						f=false;
						break;
					}
					else if(e==tD.e)
					{
						if(a+tD.a==0)
							p.remove();
						else
							p.set(new D(a+tD.a,e));
						f=false;
						break;
					}
				}
				if(f)
				{
					p.add(new D(a,e));
				}
			}
			ListIterator<D> p=L.listIterator();
			while(p.hasNext())
			{
				tD=p.next();
				System.out.print(tD.a+" "+tD.e+" ");
			}
			L.clear();
			System.out.println();
			str.close();
		}
		cin.close();
	}
}
/**************************************************************
	Problem: 2141
	User: admin
	Language: Java
	Result: Accepted
	Time:925 ms
	Memory:42932 kb
****************************************************************/