#include <bits/stdc++.h>
using namespace std;
const int maxn = 100010;
int a[maxn], b[maxn];
struct node {
  int x, id;
};
struct cmp {
  bool operator()(node a, node b) { return a.x > b.x; }
};
priority_queue<node, vector<node>, cmp> q;
set<int> se;
int main() {
  ios::sync_with_stdio(false);
  cin.tie(nullptr);
  int n;
  long long k;
  cin >> n >> k;
  long long sum = 0;
  for (int i = 0; i < n; i++) {
    cin >> a[i];
    sum += a[i];
    q.push({a[i], i + 1});
    se.insert(i + 1);
  }
  if (sum == k) return 0;
  if (sum < k)
    cout << -1 << '\n';
  else {
    long long now = 0;
    while ((long long)(q.top().x - now) * (long long)se.size() <= k) {
      k -= (long long)(q.top().x - now) * (long long)se.size();
      now = (long long)q.top().x;
      se.erase(q.top().id);
      q.pop();
    }
    if (!k) {
      for (auto i : se) cout << i << ' ';
      cout << '\n';
    } else {
      now += k / se.size();
      k %= se.size();
      int cnt = 0;
      for (auto i : se) b[cnt++] = i;
      for (int i = k; i < cnt; i++) {
        cout << b[i] << ' ';
      }
      for (int i = 0; i < k; i++) {
        if (a[b[i] - 1] - now != 1) cout << b[i] << ' ';
      }
      cout << '\n';
    }
  }
  return 0;
}
