#include <bits/stdc++.h>
using namespace std;
typedef struct item
{
int coe;
int ind;
struct item * next;
} item, * link;
int n, m;
void creatlink ( link & head) ;
void print ( link & head) ;
void linksum ( link & head) ;
int main ( )
{
link head;
creatlink ( head) ;
linksum ( head) ;
print ( head) ;
return 0 ;
}
void linksum ( link & head)
{
cin >> m;
for ( int i = 0 ; i < m; i++ )
{
int xi, zhi;
scanf ( "%d,%d" , & xi, & zhi) ;
link p2 = head, p1 = head- > next;
while ( p1 != NULL && p1- > ind < zhi)
{
p2 = p1;
p1 = p1- > next;
}
if ( p1 != NULL && p1- > ind == zhi)
{
p1- > coe = p1- > coe + xi;
if ( p1- > coe == 0 )
{
p2- > next = p1- > next;
delete p1;
}
}
else
{
link q;
q = new item;
q- > coe = xi, q- > ind = zhi;
q- > next = p1;
p2- > next = q;
}
}
}
void creatlink ( link & head)
{
head = new item;
head- > next = NULL ;
cin >> n;
for ( int i = 0 ; i < n; i++ )
{
int xi, zhi;
scanf ( "%d,%d" , & xi, & zhi) ;
link p1 = head- > next, p2 = head;
while ( p1 != NULL && p1- > ind < zhi)
{
p2 = p1;
p1 = p1- > next;
}
link q;
q = new item;
q- > coe = xi, q- > ind = zhi;
q- > next = p1;
p2- > next = q;
}
}
void print ( link & head)
{
link p = head- > next;
while ( p)
{
cout << p- > coe << "*x^" << p- > ind << " " ;
p = p- > next;
}
cout << endl;
}