#include <bits/stdc++.h>
long long patient[100000 + 10];
long long answer[100000 + 10];
int main() {
  long long n, k, sum = 0, maxi = 0;
  scanf("%lld%lld", &n, &k);
  for (int i = 1; i <= n; i++) {
    scanf("%lld", &patient[i]);
    sum += patient[i];
    if (maxi < patient[i]) maxi = patient[i];
  }
  if (sum < k) {
    printf("-1\n");
    return 0;
  } else if (sum == k) {
    return 0;
  }
  long long left, right, middle, times, where, ans;
  left = 0;
  right = maxi;
  while (left <= right) {
    middle = (left + right) / 2;
    times = middle * n;
    for (long long i = 1; i <= n; i++)
      if (patient[i] < middle) times -= (middle - patient[i]);
    if (times >= k) {
      ans = middle;
      right = middle - 1;
    } else if (times < k) {
      left = middle + 1;
    }
  }
  for (long long i = 1; i <= n; i++) {
    if (ans > patient[i]) {
      k -= patient[i];
      patient[i] = 0;
    } else {
      k -= (ans - 1);
      patient[i] -= ans - 1;
    }
  }
  int i = 1;
  while (k > 0) {
    if (patient[i] > 0) {
      patient[i]--;
      k--;
    }
    if (k == 0) where = i;
    i++;
  }
  int cnt = 0;
  for (long long j = where + 1; j <= n; j++) {
    if (patient[j] > 0) answer[cnt++] = j;
  }
  for (long long j = 1; j <= where; j++) {
    if (patient[j] > 0) {
      answer[cnt++] = j;
    }
  }
  for (long long j = 0; j < cnt; j++)
    if (j != cnt - 1)
      printf("%lld ", answer[j]);
    else
      printf("%lld\n", answer[j]);
  return 0;
}
