import java.util.ArrayList;
import java.util.Scanner;
public class Main{
public static void main(String args[]){
Scanner scanner = new Scanner(System.in);
int counta = scanner.nextInt();
ArrayList<Integer> a1 = new ArrayList<Integer>();
ArrayList<Float> a2 = new ArrayList<Float>();
ArrayList<Integer> b1 = new ArrayList<Integer>();
ArrayList<Float> b2 = new ArrayList<Float>();
ArrayList<Integer> c1 = new ArrayList<Integer>();
ArrayList<Float> c2 = new ArrayList<Float>();
for(int i=0;i<counta;i++){
a1.add(scanner.nextInt());
a2.add(scanner.nextFloat());
}
scanner.nextLine();
int countb = scanner.nextInt();
for(int i=0;i<countb;i++){
b1.add(scanner.nextInt());
b2.add(scanner.nextFloat());
}
int indexa = 0,indexb = 0;
int tempa = 0,tempb = 0;
while(indexa<a1.size()&&indexb<b1.size()){
tempa=a1.get(indexa);
tempb=b1.get(indexb);
if(tempa==tempb){
//若系数抵消,则不计入arraylist
if(a2.get(indexa)+b2.get(indexb)!=0){
c1.add(tempa);
c2.add(a2.get(indexa)+b2.get(indexb));
}
indexa++;
indexb++;
}else if(tempa>tempb){
c1.add(tempa);
c2.add(a2.get(indexa));
indexa++;
}else{
c1.add(tempb);
c2.add(b2.get(indexb));
indexb++;
}
}
while(indexa<a1.size()){
tempa=a1.get(indexa);
c1.add(tempa);
c2.add(a2.get(indexa));
indexa++;
}
while(indexb<b1.size()){
tempb=b1.get(indexb);
c1.add(tempb);
c2.add(b2.get(indexb));
indexb++;
}
/*System.out.println(a1);
System.out.println(a2);
System.out.println(b1);
System.out.println(b2);
System.out.println(c1);
System.out.println(c2);*/
System.out.print(c1.size());
if(c1.size()!=0) System.out.print(" ");//若最终结果为0,则末尾不加空格
for(int i=0;i<c1.size();i++){
System.out.print(c1.get(i)+" ");
System.out.print(String.format("%.1f", c2.get(i)));
if(i!=c1.size()-1) System.out.print(" ");
}
}
}