#include<stdio.h>
#include<stdlib.h>voidReadPoly(int*A);voidHandlePoly(int*A);voidPrintPoly(int*A);
int main(){
int A[1001]={0};ReadPoly(A);HandlePoly(A);PrintPoly(A);return0;}voidReadPoly(int*A){
int temp_coef, temp_expon;scanf("%d %d",&temp_coef,&temp_expon);A[temp_expon]= temp_coef;
char temp;while((temp =getchar())!='\n'){scanf("%d %d",&temp_coef,&temp_expon);A[temp_expon]= temp_coef;}}voidHandlePoly(int*A){if(A[0])A[0]=0;
int i;for(i =1; i <=1000; i++){if(A[i]){A[i -1]=A[i]* i;A[i]=0;}}}voidPrintPoly(int*A){
int i;
int flag =1;for(i =1000; i >=0; i--){if(A[i]){if(flag) flag =0;elseprintf(" ");printf("%d %d",A[i], i);}}if(flag)printf("0 0");}