#include <bits/stdc++.h>
using namespace std;
int n, i, j, k, cnt, len, c, e, d, f, ans;
int a[1000006], b;
stack<int> st;
bool used[1000006];
int main() {
  scanf("%d", &n);
  for (i = 1; i <= n; i++) {
    scanf("%d", &a[i]);
  }
  scanf("%d", &k);
  for (i = 1; i <= k; i++) {
    scanf("%d", &j);
    used[j] = true;
  }
  for (i = n; i >= 1; i--) {
    if (!st.empty() && a[st.top()] == a[i] && !used[i]) {
      a[st.top()] *= -1;
      st.pop();
    } else {
      st.push(i);
    }
  }
  if (!st.empty()) {
    printf("NO\n");
    return 0;
  }
  printf("YES\n");
  for (i = 1; i <= n; i++) {
    printf("%d ", a[i]);
  }
  return 0;
}
