"use strict";

const input = require("fs").readFileSync("/dev/stdin", "utf8");

const inputs = input.split("\n");
const N = Number(inputs[0]);
const arr = inputs[1]
  .trim()
  .split(" ")
  .map(Number);

const main = (N, arr) => {
  let answer = [];
  let ballNum = 0;

  let ai;
  let box = new Array(N).fill(0);
  for (let i = arr.length - 1; i >= 0; i--) {
    // 大きい箱から順番に取り出す
    ai = arr[i];

    let sum = 0,
      j = i + 1;
    while (j + i + 1 <= N) {
      // iを加算していき、Nを超えるまで中のaiを加算し続ける。
      sum += box[j + i];
      j += i + 1;
    }
    // 結果をもとに、箱にたまを入れるかを決定する
    if (sum % 2 == ai) {
      // ボールを入れない
    } else if ((sum + 1) % 2 == ai) {
      // ボールを入れる
      ballNum++;
      answer.push(i + 1);
      box[i]++;
    } else {
      return -1;
    }
  }
  answer = answer.reverse();
  // 回答用の配列に格納
  if (ballNum == 0) {
    return 0;
  } else {
    return `${ballNum}
${answer.join(" ")}`;
  }
};
console.log(main(N, arr));