#include<bits/stdc++.h>
using namespace std;
const int N =100005;
double a[N],b[N],c[N];
int Ma,Mb;
int main()
{
int m,n,t,i,j;
int numa=0,numc=0;
cin>>m;
for(i=0;i<m;i++)
{ cin>>t>>a[t];
Ma=max(Ma,t);
}
scanf("%d",&n);
for(i=0;i<n;i++)
{
cin>>t>>b[t];
Mb=max(Mb,t);
}
for(i=Ma;i>=Mb;i--) //多项式a/b的计算过程
{
c[i-Mb]=a[i]/b[Mb];
for(j=Mb;j>=0;j--)
{
a[i+j-Mb]-=c[i-Mb]*b[j];
}
}
for(i=Ma;i>=0;i--) //
{
if(fabs(a[i])>0.05)
{
numa++;
}
}
for(i=Ma-Mb;i>=0;i--) //计算商的有效个数
{
if(fabs(c[i])>0.05)
{
numc++;
}
}
// 以下为输出部分
if(numc==0)
{
printf("0 0 0.0\n");
}
else
{
printf("%d",numc);
for(i=Ma-Mb;i>=0;i--)
{
if(fabs(c[i])>0.05) printf(" %d %.1lf",i,c[i]);
}
printf("\n");
}
if(numa==0)
{
printf("0 0 0.0\n");
}
else
{
printf("%d",numa);
for(i=Ma;i>=0;i--)
{
if(fabs(a[i])>0.05) printf(" %d %.1lf",i,a[i]);
}
printf("\n");
}
}