#!/usr/bin/env python3
# from typing import *

import sys
import io
import math
import collections
import decimal
import itertools
import bisect
import heapq


def input():
    return sys.stdin.readline()[:-1]


# sys.setrecursionlimit(1000000)

# _INPUT = """# paste here...
# """
# sys.stdin = io.StringIO(_INPUT)

INF = 10**20


N, M, X = map(int, input().split())
Problem = [list() for _ in range(M)]
for _ in range(N):
    a, b = map(int, input().split())
    b -= 1
    Problem[b].append(a)
A = []
for b in range(M):
    Problem[b].sort(reverse=True)
    if Problem[b]:
        Problem[b][0] += X
    A += Problem[b]
K = int(input())
C = list(map(int, input().split()))

A.sort(reverse=True)
S = [0] + list(itertools.accumulate(A))

ans = 0
for c in C:
    ans += S[c]
print(ans)