#include <bits/stdc++.h>
using namespace std;
int n, m;
int a[100];
int b[100];
int x[100][100];
bool fillDigit(int k, vector<int>& a, vector<int>& b) {
  int cnt_a = 0, cnt_b = 0;
  for (int ai : a)
    if (ai == 1) cnt_a++;
  for (int bi : b)
    if (bi == 1) cnt_b++;
  if (cnt_a % 2 != cnt_b % 2) return false;
  if (cnt_a == 0 && cnt_b == 0) return true;
  if (cnt_a == 0) {
    for (int j = 0; j < m; j++) {
      if (b[j] == 1) {
        x[0][j] |= (1 << k);
      }
    }
  } else if (cnt_b == 0) {
    for (int i = 0; i < n; i++) {
      if (a[i] == 1) {
        x[i][0] |= (1 << k);
      }
    }
  } else {
    if (cnt_a % 2 == 0) {
      vector<int> oa_idx;
      vector<int> ob_idx;
      for (int i = 0; i < n; i++) {
        if (a[i] == 1) oa_idx.push_back(i);
      }
      for (int j = 0; j < m; j++) {
        if (b[j] == 1) ob_idx.push_back(j);
      }
      for (int i = 0; i < cnt_a && i < cnt_b; i++) {
        x[oa_idx[i]][ob_idx[i]] |= (1 << k);
      }
      if (cnt_a > cnt_b) {
        for (int i = cnt_b; i < cnt_a; i++) {
          x[oa_idx[i]][ob_idx[0]] |= (1 << k);
        }
      } else if (cnt_b > cnt_a) {
        for (int i = cnt_a; i < cnt_b; i++) {
          x[oa_idx[0]][ob_idx[i]] |= (1 << k);
        }
      }
    } else {
      for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
          if (a[i] == 1 && b[j] == 1) {
            x[i][j] |= (1 << k);
          }
        }
      }
    }
  }
  return true;
}
void solve() {
  cin >> n >> m;
  for (int i = 0; i < n; i++) cin >> a[i];
  for (int i = 0; i < m; i++) cin >> b[i];
  for (int k = 0; k < 31; k++) {
    vector<int> va, vb;
    for (int i = 0; i < n; i++) {
      int ai = (a[i] & (1 << k)) >> k;
      va.push_back(ai);
    }
    for (int i = 0; i < m; i++) {
      int bi = (b[i] & (1 << k)) >> k;
      vb.push_back(bi);
    }
    if (!fillDigit(k, va, vb)) {
      cout << "NO" << endl;
      return;
    }
  }
  cout << "YES" << endl;
  for (int i = 0; i < n; i++) {
    for (int j = 0; j < m; j++) {
      cout << x[i][j];
      if (j + 1 < m) cout << " ";
    }
    cout << endl;
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  cout.tie(nullptr);
  solve();
  return 0;
}
