#include <bits/stdc++.h>
using namespace std;
struct P {
  int num;
  int mus;
} a[101];
int cmp(P a, P b) { return a.mus < b.mus; }
int main() {
  int n, m, sum = 0, k = 0, i, j, t = 0;
  scanf("%d%d", &n, &m);
  for (i = 1; i <= n; i++) {
    scanf("%d", &a[i].mus);
    a[i].num = i;
  }
  sort(a + 1, a + n + 1, cmp);
  if (a[1].mus > m) {
    t = 1;
    printf("0\n");
  } else {
    for (i = 1; i <= n; i++) {
      sum += a[i].mus;
      k++;
      if (sum == m) {
        printf("%d\n", k);
        for (j = 1; j <= i; j++) {
          t = 1;
          printf(j == 1 ? "%d" : " %d", a[j].num);
        }
        printf("\n");
        break;
      }
      if (sum > m) {
        printf("%d\n", k - 1);
        for (j = 1; j < i; j++) {
          t = 1;
          printf(j == 1 ? "%d" : " %d", a[j].num);
        }
        printf("\n");
        break;
      }
    }
  }
  if (t == 0) {
    printf("%d\n", n);
    for (i = 1; i <= n; i++) {
      printf(i == 1 ? "%d" : " %d", a[i].num);
    }
    printf("\n");
  }
  return 0;
}
