typedef long long ll; typedef long double ld; #include using namespace std; #define int long long signed main(){ ll n,m,x; std::cin >> n>>m>>x; vector> ab(n); for (int i = 0; i < n; i++) { std::cin >> ab[i].first >> ab[i].second; } ll k; std::cin >> k; vector c(k); for (int i = 0; i < k; i++) { std::cin >> c[i]; } sort(ab.rbegin(),ab.rend()); map used; for (int i = 0; i < n; i++) { if(used[ab[i].second]){ }else{ used[ab[i].second]=true; ab[i].first+=x; } } sort(ab.rbegin(),ab.rend()); vector sum(n+1); for (int i = 0; i < n; i++) { sum[i+1] = sum[i]+ab[i].first; } ll ans = 0; for (int i = 0; i < k; i++) { ans += sum[c[i]]; } std::cout << ans << std::endl; }