n, s = gets.split.map &:to_i pos = gets.split.map.with_index {|i, j| [i.to_i, j + 1]}.sort pos.unshift [-Float::INFINITY, nil] pos << [Float::INFINITY, nil] ans = [] (1..n).each do |i| ans << pos[i][1] if pos[i][0] - pos[i - 1][0] > s && pos[i + 1][0] - pos[i][0] > s end puts ans.size puts ans.sort * ' '