#include <bits/stdc++.h>
using namespace std;
int arr[100010];
map<long long int, long long int> mapp;
map<long long int, long long int>::iterator it;
vector<pair<int, int> > v;
int main(int argc, char const *argv[]) {
  int n;
  long long int k;
  scanf("%d", &n);
  cin >> k;
  long long int sum = 0;
  int mi = 1000000014;
  for (int i = 1; i <= n; i++) {
    scanf("%d", &arr[i]);
    sum += arr[i];
    mapp[arr[i]]++;
  }
  if (k >= sum) {
    if (k == sum)
      cout << "\n";
    else
      cout << "-1\n";
    return 0;
  }
  long long int gap = k;
  int elements = n;
  long long int cycles = 0;
  it = mapp.begin();
  int survives = 0;
  while (gap > elements) {
    int c1 = it->first - cycles;
    int c2 = it->second;
    long long int comp = gap / elements;
    comp *= elements;
    if (elements * 1ll * c1 <= comp) {
      gap -= elements * 1ll * c1;
      cycles += c1;
      elements -= c2;
    } else {
      gap -= comp;
      cycles += comp / elements;
    }
    it++;
  }
  for (int i = 1; i <= n; i++) {
    if (arr[i] > cycles) {
      v.push_back(make_pair(arr[i] - cycles, i));
    }
  }
  int pos = 0;
  while (gap != 0) {
    v[pos].first = v[pos].first - 1;
    pos++;
    gap -= 1ll;
  }
  int st = pos % v.size();
  for (int i = st;;) {
    if (v[i].first != 0) cout << v[i].second << " ";
    i = ((i + 1) % v.size());
    if (i == st) break;
  }
  return 0;
}
