package main
import (
"fmt"
"sort"
)
type Instrument struct {
id int
time int
}
func main() {
var n, k int
if _, err := fmt.Scan(&n, &k); err != nil {
return
}
instruments := make([]Instrument, n)
for i := 0; i < n; i++ {
fmt.Scan(&instruments[i].time)
instruments[i].id = i + 1
}
sort.Slice(instruments, func(i, j int) bool {
return instruments[i].time < instruments[j].time
})
var learned []int
for _, inst := range instruments {
if k >= inst.time {
k -= inst.time
learned = append(learned, inst.id)
} else {
break
}
}
fmt.Println(len(learned))
for i, id := range learned {
if i > 0 {
fmt.Print(" ")
}
fmt.Print(id)
}
fmt.Println()
}