#include <bits/stdc++.h>
using namespace std;
int a[100010], b[100010], p[100010];
int main() {
  int n, l, r;
  scanf("%d %d %d", &n, &l, &r);
  for (int i = 0; i < n; i++) scanf("%d", &a[i]);
  int maxn = 0, minn = 0x3f3f3f3f;
  for (int i = 0; i < n; i++) {
    scanf("%d", &p[i]);
    b[i] = a[i] + p[i];
    maxn = max(maxn, b[i]);
    minn = min(minn, b[i]);
  }
  if (maxn - minn > r - l)
    puts("-1");
  else {
    int x = minn < l ? l - minn : r - maxn;
    for (int i = 0; i < n; i++) printf("%d ", b[i] + x);
  }
  return 0;
}
