N,M,X = map(int,input().split()) problem = [] for _ in range(N): v,g = map(int,input().split()) problem.append([v,g-1]) K = int(input()) p = list(map(int,input().split())) problem.sort(reverse=True) used = [False]*M for i in range(N): v,g = problem[i] if not used[g]: used[g] = True problem[i] = v + X else: problem[i] = v problem = [0] + problem for i in range(1,N+1): problem[i] += problem[i-1] ans = 0 for AC in p: ans += problem[AC] print(ans)