#include <bits/stdc++.h>
using namespace std;
const int MAX = 100005;
int N;
long long K;
long long A[MAX];
long long s;
deque<pair<int, int> > q;
bool test(long long a) {
  s = 0;
  for (int i = 0; i < N; i++) {
    s += min(a, A[i]);
  }
  return (s <= K);
}
int main() {
  cin >> N >> K;
  for (int i = 0; i < N; i++) {
    cin >> A[i];
    s += A[i];
  }
  if (s < K) {
    cout << "-1\n";
    return 0;
  }
  long long lo = 0, hi = K, mid = (lo + hi) / 2;
  while (lo != mid) {
    if (test(mid)) {
      lo = mid;
    } else {
      hi = mid;
    }
    mid = (lo + hi) / 2;
  }
  test(mid);
  K -= s;
  q.clear();
  for (int i = 0; i < N; i++) {
    A[i] -= mid;
    if (A[i] <= 0) {
      A[i] = 0;
    } else {
      q.push_back(pair<int, int>(A[i], i + 1));
    }
  }
  for (int i = 0; i < K; i++) {
    q[0].first -= 1;
    if (q[0].first != 0) {
      q.push_back(q[0]);
    }
    q.pop_front();
  }
  for (int i = 0; i < q.size(); i++) {
    printf("%d ", q[i].second);
  }
  printf("\n");
}
