#include <bits/stdc++.h>
int p[1000005], q[1000005] = {0}, s[1000005];
int main(int argc, char *argv[]) {
  int t, n, i, x;
  scanf("%d", &n);
  for (i = 1; i <= n; ++i) {
    scanf("%d", p + i);
  }
  scanf("%d", &t);
  for (i = 0; i < t; ++i) {
    scanf("%d", &x);
    q[x] = 1;
  }
  int top = 0;
  for (i = n; i >= 1; --i) {
    if (top && !q[i] && (p[s[top - 1]] == p[i])) {
      p[s[top - 1]] *= -1;
      --top;
    } else {
      s[top++] = i;
    }
  }
  if (top) {
    puts("NO");
    return 0;
  }
  puts("YES");
  for (i = 1; i <= n; ++i) {
    printf("%d ", p[i]);
  }
  putchar('\n');
  return 0;
}
