#include <bits/stdc++.h>
using namespace std;
int a[100010], p[100010], ans[100010];
map<int, int> mp;
int main() {
  int n, l, i, r, Max = 0, Min = 2e9 + 10;
  cin >> n >> l >> r;
  for (i = 0; i < n; i++) cin >> a[i];
  for (i = 0; i < n; i++) {
    cin >> p[i];
    ans[i] = p[i] + a[i];
    mp[ans[i]]++;
    Max = max(Max, ans[i]);
    Min = min(Min, ans[i]);
  }
  int x;
  if (Min < l)
    x = l - Min;
  else
    x = r - Max;
  if (Max - Min > r - l) {
    cout << -1 << endl;
    return 0;
  }
  for (i = 0; i < n; i++) {
    cout << ans[i] + x << " ";
  }
}
