#include <bits/stdc++.h>
using namespace std;
namespace task {
const int N = 1000;
int n, k;
int a[N];
int l[N];
int r[N];
int main() {
  cin >> n;
  k = n;
  for (int i = 0; i < n; ++i) {
    cin >> l[i];
  }
  for (int i = 0; i < n; ++i) {
    cin >> r[i];
  }
  while (k > 0) {
    set<int> s;
    for (int i = 0; i < n; ++i) {
      if (!a[i]) {
        if (l[i] == 0 && r[i] == 0) {
          s.insert(i);
        }
      }
    }
    if (!s.size()) {
      return cout << "NO\n", 0;
    }
    for (auto it : s) {
      a[it] = k;
    }
    for (auto it : s) {
      for (int i = it + 1; i < n; ++i) {
        if (!a[i]) {
          --l[i];
        }
      }
      for (int i = 0; i < it; ++i) {
        if (!a[i]) {
          --r[i];
        }
      }
    }
    k -= s.size();
  }
  cout << "YES\n";
  for (int i = 0; i < n; ++i) {
    cout << a[i] << ' ';
  }
  return 0;
}
}  // namespace task
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(nullptr);
  cout.precision(11);
  cout.setf(ios::fixed);
  return task::main();
}
