#include <bits/stdc++.h>
using namespace std;
int main() {
  int i = 0, m, n, q;
  cin >> n >> m;
  vector<vector<int> > x(n, vector<int>(2));
  vector<vector<int> > p(200001);
  while (i < n) {
    scanf("%d%d", &x[i][0], &x[i][1]);
    i++;
  }
  i = 1;
  while (i <= m) {
    scanf("%d", &q);
    p[q].push_back(i);
    i++;
  }
  i = 0;
  vector<vector<int> > e = p;
  vector<int> s;
  while (i < n - 1) {
    if (!p[abs(x[i + 1][0] - x[i][0] + x[i + 1][1] - x[i][1]) +
           abs(x[(i + 2) % n][0] - x[i + 1][0] + x[(i + 2) % n][1] -
               x[i + 1][1])]
             .empty()) {
      s.push_back(p[abs(x[i + 1][0] - x[i][0] + x[i + 1][1] - x[i][1]) +
                    abs(x[(i + 2) % n][0] - x[i + 1][0] + x[(i + 2) % n][1] -
                        x[i + 1][1])]
                      .back());
      p[abs(x[i + 1][0] - x[i][0] + x[i + 1][1] - x[i][1]) +
        abs(x[(i + 2) % n][0] - x[i + 1][0] + x[(i + 2) % n][1] - x[i + 1][1])]
          .pop_back();
    } else {
      break;
    }
    i += 2;
  }
  if (i >= n - 1) {
    printf("YES\n");
    i = 0;
    while (i < s.size()) {
      printf("-1 %d ", s[i]);
      i++;
    }
    return 0;
  }
  i = 1;
  s = vector<int>(0);
  while (i < n) {
    if (!e[abs(x[(i + 1) % n][0] - x[i][0] + x[(i + 1) % n][1] - x[i][1]) +
           abs(x[(i + 2) % n][0] - x[(i + 1) % n][0] + x[(i + 2) % n][1] -
               x[(i + 1) % n][1])]
             .empty()) {
      s.push_back(
          e[abs(x[(i + 1) % n][0] - x[i][0] + x[(i + 1) % n][1] - x[i][1]) +
            abs(x[(i + 2) % n][0] - x[(i + 1) % n][0] + x[(i + 2) % n][1] -
                x[(i + 1) % n][1])]
              .back());
      e[abs(x[(i + 1) % n][0] - x[i][0] + x[(i + 1) % n][1] - x[i][1]) +
        abs(x[(i + 2) % n][0] - x[(i + 1) % n][0] + x[(i + 2) % n][1] -
            x[(i + 1) % n][1])]
          .pop_back();
    } else {
      break;
    }
    i += 2;
  }
  if (i >= n) {
    printf("YES\n%d -1 ", s.back());
    s.pop_back();
    i = 0;
    while (i < s.size()) {
      printf("%d -1 ", s[i]);
      i++;
    }
    return 0;
  }
  printf("NO");
  return 0;
}
