#include <bits/stdc++.h>
using namespace std;
stack<int> S;
int A[1000000];
int main() {
  int n, i, t, x;
  scanf("%d", &n);
  for (i = 0; i < n; i++) scanf("%d", &A[i]);
  scanf("%d", &t);
  for (i = 0; i < t; i++) {
    scanf("%d", &x);
    x--;
    A[x] = -A[x];
  }
  for (i = n - 1; i >= 0; i--) {
    if (S.empty() || A[i] != -S.top()) {
      if (A[i] > 0) A[i] = -A[i];
      S.push(A[i]);
    } else
      S.pop();
  }
  if (S.empty()) {
    printf("YES\n");
    for (i = 0; i < n; i++) printf("%d ", A[i]);
  } else
    printf("NO\n");
  return 0;
}
