//KY201 求两个多项式的和
#include <iostream>
#include <algorithm>
#include <cstring>
#include <queue>
using namespace std;
struct E{
int a, b;
bool operator<(const E &x)const{
if(b==x.b) return x.a>a;
return x.b>b;
}
};
int n, a, b;
int main()
{
cin>>n;
priority_queue<E>q;
for(int i=1;i<=n;i++){
cin>>a>>b;
if(a==0) continue;
q.push({a,b});
}
cin>>n;
for(int i=1;i<=n;i++){
cin>>a>>b;
if(a==0) continue;
q.push({a,b});
}
int sum=(q.top()).a, pre=(q.top()).b;
q.pop();
while(q.size()){
auto t=q.top();
q.pop();
if(t.b==pre) sum+=t.a;
else{
if(sum!=0) cout<<sum<<' '<<pre<<' ';
pre=t.b;
sum=t.a;
}
}
if(sum!=0) cout<<sum<<' '<<pre<<'\n';
return 0;
}