#include using namespace std; int main() { unordered_map index; int coin[5]; for (size_t i = 0; i < 5; i++) { string str; cin >> str >> coin[i]; index[str] = i; } long long n1, n2, n3; long long cnt1[5] = {}, cnt2[5] = {}, cnt3[5] = {}; cin >> n1; for (size_t i = 0; i < n1; i++) { string A; cin >> A; cnt1[index[A]] += 1; } cin >> n2; for (size_t i = 0; i < n2; i++) { string A; cin >> A; cnt2[index[A]] += 1; } cin >> n3; for (size_t i = 0; i < n3; i++) { string A; cin >> A; cnt3[index[A]] += 1; } long double a = 0.0L; for (size_t i = 0; i < 5; i++) { a += 5 * coin[i] * cnt1[i] * cnt2[i] * cnt3[i]; } a /= (long double)n1 * (long double)n2 * (long double)n3; cout << a << endl; for (size_t i = 0; i < 5; i++) { cout << 5 * cnt1[i] * cnt2[i] * cnt3[i] << endl; } }