def calc(a, b): LA = [] while a or len(LA) < 3: LA.append(a%5) a //= 5 LB = [] while b or len(LB) < 3: LB.append(b%5) b //= 5 lst = [] for i in range(3): if LA[i] == LB[i]: lst.append(LA[i]) if LA[0] == LB[1]: lst.append(LB[1]) if LA[2] == LB[1]: lst.append(LB[1]) return lst D = dict() coin = [] for i in range(5): s, c = input().split() coin.append(int(c)) D[s] = i reelA, reelB = [0] * 125, [0] * 125 n1 = int(input()) A = [] for i in range(n1): A.append(D[input()]) n2 = int(input()) B = [] for i in range(n2): B.append(D[input()]) for i in range(2): A.append(A[i]) B.append(B[i]) for i in range(n1): reelA[A[i] * 25 + A[i + 1]*5 + A[i + 2]] += 1 for i in range(n2): reelB[B[i] * 25 + B[i + 1]*5 + B[i + 2]] += 1 n3 = int(input()) CC = [0] * 5 for i in range(n3): CC[D[input()]] += 1 ans = [0] * 5 for i in range(125): for j in range(125): for a in calc(i, j): ans[a] += reelA[i] * reelB[j] * CC[a] val = 0 for i in range(5): val += ans[i] * coin[i] val /= n1 * n2 * n3 print(val) for a in ans: print(a)