#include<bits/stdc++.h>
using namespace std;
int E;
int a[10000];//0 means number;1~999 means n的几次方.
void func()
{
char s[100];
int op[100];
memset(op,0,sizeof(op));
char s1[100];
while(~scanf("%s",s)&&s[0]!='E')
{
switch(s[0])
{
case 'B':break;
case 'L':
{
E++;
char str[100];
cin>>str;
func();
if(str[0]=='n')
{
for(int i=100;i>=1;i--) a[i]=a[i-1];
a[0]=0;
}else
{
int num;
sscanf(str,"%d",&num);
for(int i=0;i<=100;i++) a[i]*=num;
}
break;
}
case 'O':
{
char str[100];
cin>>str;
if(str[0]=='n') op[1]++;
else
{
int num;
sscanf(str,"%d",&num);
op[0]+=num;
}
break;
}
case 'E':break;
}
}
a[0]+=op[0];
a[1]+=op[1];
}
int main()
{
freopen("in.txt","r",stdin);
int T,kase=0;
cin>>T;
while(T--)
{
printf("Program #%d\n",++kase);
printf("Runtime = ");
memset(a,0,sizeof(a));
E=1;
func();
int one=0;
for(int i=11;i>=0;i--)
{
if(a[i]!=0)
if(one==0)
{
one=1;
{
if(i==1)
{
if(a[i]!=1) printf("%d*n",a[i],i);else
printf("n");
}
else if(i==0) cout<<a[i];
else
{
if(a[i]!=1) printf("%d*n^%d",a[i],i);else
printf("n^%d",i);
}
}
}else
{
cout<<"+";
{
if(i==1)
{
if(a[i]!=1) printf("%d*n",a[i],i);else
printf("n");
}
else if(i==0) cout<<a[i];
else
{
if(a[i]!=1) printf("%d*n^%d",a[i],i);else
printf("n^%d",i);
}
}
}
}
cout<<endl;
}
return 0;
}