// inputに入力データ全体が入る
function Main(input) {
    // 1行目がinput[0], 2行目がinput[1], …に入る
    input = input.split("\n");
    tmp0 = input[0].split(" ");
    tmp1 = input[1].split(" ");
    N = Number(tmp0[0])
    a = []
    x = []
    for(var i=0; i<N; i++)
    {
        a.push(Number(tmp1[i]))
        x.push(0)
    }

    // i
    for(var i=N; i>0; i--)
    {
        a[i-1]
        // aiを計算
        var tmp_ai=0
        for(var j=1; j<=N;j++)
        {
            if(j%i === 0 && x[j-1] === 1)
            {
                tmp_ai+=1
            }
        }
        if(a[i-1] === (tmp_ai % 2)){
            continue
        }else{
            x[i-1] = 1
        }
    }
    // console.log(x)
    console.log(x.filter(a => a===1).length)
    for(var i=0; i<N; i++)
    {
        if(x[i] === 1){
            process.stdout.write(i + " ")
        }
    }
}
  //*この行以降は編集しないでください（標準入出力から一度に読み込み、Mainを呼び出します）
Main(require("fs").readFileSync("/dev/stdin", "utf8"));
// Main("6\n0 1 0 1 0 1\n");