#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, k;
  scanf("%d%d", &n, &k);
  vector<pair<int, int> > v;
  v.resize(n);
  int sum[n];
  memset(sum, 0, sizeof(sum));
  for (int i = 0; i < n; i++) {
    scanf("%d", &v[i].first);
    v[i].second = i + 1;
  }
  sort(v.begin(), v.end());
  sum[0] = v[0].first;
  for (int i = 1; i < n; i++) {
    sum[i] += (sum[i - 1] + v[i].first);
  }
  int idx = -1;
  for (int i = 0; i < n; i++) {
    if (sum[i] > k) {
      idx = i;
      break;
    }
  }
  if (sum[n - 1] <= k) {
    idx = n;
  }
  printf("%d\012", idx);
  for (int i = 0; i < idx; i++) {
    printf("%d ", v[i].second);
  }
  return 0;
}
