#include<iostream>
#include<map>
#include<iomanip>
#include<string>
#include<string.h>
#include<algorithm>
#include<map>
#include<iomanip>
#include<string>
#include<string.h>
#include<algorithm>
using namespace std;
float sum;
int charge[25];
int charge[25];
struct ZZ {
int cnt;
struct ZZZ{
string time;
int tag;
bool operator < (const ZZZ &A) const{
int cnt;
struct ZZZ{
string time;
int tag;
bool operator < (const ZZZ &A) const{
return time<A.time;
}
}node[1001];
}
}node[1001];
string name;
void zxc()
{
sort(node,node+cnt);
{
sort(node,node+cnt);
}
bool operator < (const ZZ &B ) const
{
return name<B.name;
bool operator < (const ZZ &B ) const
{
return name<B.name;
}
}tutu[1001];
void js(string a,string b)
{
float tsum=0;
int cnt=0;
a.erase(0,3);
b.erase(0,3);
cout<<a<<' '<<b<<' ';
while(a!=b)
{
{
float tsum=0;
int cnt=0;
a.erase(0,3);
b.erase(0,3);
cout<<a<<' '<<b<<' ';
while(a!=b)
{
int x=(a[3]-'0')*10+a[4]-'0';
tsum+=charge[x];
cnt++;
a[7]++;
if(a[7]>'9') {a[7]='0';a[6]++;}
if(a[6]>'5') {a[6]='0';a[4]++;}
if(a[4]>'9') {a[4]='0';a[3]++;}
if(a[3]=='2'&&a[4]>'3')
{
a[3]=a[4]='0';a[1]++;
}
if(a[1]>'9') {a[0]++;a[1]='0';}
}
tsum/=100;
sum+=tsum;
cout<<cnt<<" $"<<fixed<<setprecision(2)<<tsum<<endl;
}
tsum+=charge[x];
cnt++;
a[7]++;
if(a[7]>'9') {a[7]='0';a[6]++;}
if(a[6]>'5') {a[6]='0';a[4]++;}
if(a[4]>'9') {a[4]='0';a[3]++;}
if(a[3]=='2'&&a[4]>'3')
{
a[3]=a[4]='0';a[1]++;
}
if(a[1]>'9') {a[0]++;a[1]='0';}
}
tsum/=100;
sum+=tsum;
cout<<cnt<<" $"<<fixed<<setprecision(2)<<tsum<<endl;
}
int main()
{
{
for(int i=0;i<24;i++)
cin>>charge[i];
int n;
string a,b,c;
int p=0;
cin>>n;
map<string,int> M;
M.clear();
for(int i=0;i<=500;i++)
tutu[i].cnt=0;
cin>>charge[i];
int n;
string a,b,c;
int p=0;
cin>>n;
map<string,int> M;
M.clear();
for(int i=0;i<=500;i++)
tutu[i].cnt=0;
for(int i=0;i<n;i++)
{ int tmp;
cin>>a>>b>>c;
if(M.find(a)==M.end()) {
M[a]=p++;
tmp=p-1; }
else tmp=M[a];
int y;
tutu[tmp].name=a;
int x=tutu[tmp].cnt;
tutu[tmp].node[x].time=b;
if(c[1]=='f') y=2;
else y=1;
tutu[tmp].node[x].tag=y;
tutu[tmp].cnt++;
}
{ int tmp;
cin>>a>>b>>c;
if(M.find(a)==M.end()) {
M[a]=p++;
tmp=p-1; }
else tmp=M[a];
int y;
tutu[tmp].name=a;
int x=tutu[tmp].cnt;
tutu[tmp].node[x].time=b;
if(c[1]=='f') y=2;
else y=1;
tutu[tmp].node[x].tag=y;
tutu[tmp].cnt++;
}
sort(tutu,tutu+p);
for(int i=0;i<p;i++)
{
sum=0;
tutu[i].zxc();
int tflag=0;
for(int j=0;j<tutu[i].cnt;j++)
{
if(tutu[i].node[j].tag==2)
{ if(tflag==0) cout<<tutu[i].name<<' '<<b[0]<<b[1]<<endl;
tflag=1;
js(tutu[i].node[j-1].time,tutu[i].node[j].time);
for(int i=0;i<p;i++)
{
sum=0;
tutu[i].zxc();
int tflag=0;
for(int j=0;j<tutu[i].cnt;j++)
{
if(tutu[i].node[j].tag==2)
{ if(tflag==0) cout<<tutu[i].name<<' '<<b[0]<<b[1]<<endl;
tflag=1;
js(tutu[i].node[j-1].time,tutu[i].node[j].time);
}
}
cout<<"Total amount: $"<<fixed<<setprecision(2)<<sum<<endl;
cout<<"Total amount: $"<<fixed<<setprecision(2)<<sum<<endl;
}
return 0;
}
return 0;
}