#include <bits/stdc++.h>
using namespace std;
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long int n, m, x, y, z, i, j, k, f = 0;
  cin >> n >> k >> m;
  map<string, long long int> my;
  string s, u;
  long long int a[n], b[n];
  long long int c = 0, s1 = 0;
  getline(cin, s);
  getline(cin, s);
  for (i = 0; i < s.length(); i++) {
    if (s[i] != ' ')
      u.push_back(s[i]);
    else {
      my[u] = c++;
      u.clear();
    }
  }
  my[u] = c;
  u.clear();
  for (i = 0; i < n; i++) {
    cin >> a[i];
  }
  for (i = 0; i < k; i++) {
    cin >> x;
    long long int y = (long long int)1e10;
    for (j = 0; j < x; j++) {
      cin >> b[j];
      y = min(y, a[b[j] - 1]);
    }
    for (j = 0; j < x; j++) {
      a[b[j] - 1] = y;
    }
  }
  getline(cin, s);
  getline(cin, s);
  for (i = 0; i < s.length(); i++) {
    if (s[i] != ' ')
      u.push_back(s[i]);
    else {
      s1 += a[my[u]];
      u.clear();
    }
  }
  s1 += a[my[u]];
  cout << s1;
}
