#include <bits/stdc++.h>
using namespace std;
static const double EPS = 1e-9;
int A[100001];
set<int> S;
map<int, int> MAP;
int main(void) {
  long long n, k;
  long long sum = 0;
  int i;
  MAP.clear();
  memset(A, 0, sizeof(A));
  S.clear();
  cin >> n >> k;
  for (int i = 0; i < (int)(n); i++) {
    int tmp;
    cin >> tmp;
    sum += tmp;
    A[i] = tmp;
    S.insert(tmp);
    MAP[tmp]++;
  }
  if (sum < k) {
    cout << -1 << endl;
    return 0;
  }
  if (sum == k) {
    cout << endl;
    return 0;
  }
  if (k == 0) {
    for (int i = 0; i < (int)(n); i++) {
      if (i > 0) cout << " ";
      cout << i + 1;
    }
    cout << endl;
    return 0;
  }
  long long count = 0;
  long long prev = 0;
  long long rest = n;
  set<int>::iterator it = S.begin();
  while (1) {
    long long a = *it;
    it++;
    long long diff1 = (a - prev - 1) * rest;
    long long diff2 = (a - prev) * rest;
    if (count + diff1 >= k) {
      long long numrest = count + diff1 - k;
      numrest = numrest - (numrest / rest) * rest;
      int pos = n;
      int outnum = 0;
      if (numrest > 0) {
        long long tmpcount = 0;
        for (i = n - 1; i >= 0; i--) {
          if (A[i] >= a) {
            tmpcount++;
            pos = i;
            if (tmpcount == numrest) break;
          }
        }
        for (i = pos; i < n; i++) {
          if (A[i] >= a) {
            if (outnum != 0) cout << " ";
            cout << i + 1;
            outnum++;
          }
        }
      }
      for (i = 0; i < pos; i++) {
        if (A[i] >= a) {
          if (outnum != 0) cout << " ";
          cout << i + 1;
          outnum++;
        }
      }
      cout << endl;
      return 0;
    } else if (count + diff2 >= k) {
      long long numrest = count + diff2 - k;
      numrest = numrest - (numrest / rest) * rest;
      int pos = n;
      int outnum = 0;
      if (numrest > 0) {
        long long tmpcount = 0;
        for (i = n - 1; i >= 0; i--) {
          if (A[i] >= a) {
            tmpcount++;
            pos = i;
            if (tmpcount == numrest) break;
          }
        }
        for (i = pos; i < n; i++) {
          if (A[i] >= a) {
            if (outnum != 0) cout << " ";
            cout << i + 1;
            outnum++;
          }
        }
      }
      for (i = 0; i < pos; i++) {
        if (A[i] > a) {
          if (outnum != 0) cout << " ";
          cout << i + 1;
          outnum++;
        }
      }
      cout << endl;
      return 0;
    }
    count += diff2;
    rest -= MAP[a];
    prev = a;
  }
  return 0;
}
