#include <bits/stdc++.h>
int a[300000 + 1], l[300000 + 1], r[300000 + 1];
int n;
int lenMax, count;
int main() {
  int i, j, first, lastl;
  scanf("%d", &n);
  for (i = 1; i <= n; i++) scanf("%d", &a[i]);
  lenMax = count = 0;
  a[0] = 0;
  for (i = 1; i <= n; i++) {
    if (a[i] == a[i - 1]) {
      l[i] = r[i] = i;
      continue;
    }
    for (j = i - 1; j >= 1; j--)
      if (a[j] % a[i] || a[i] == a[j]) break;
    if (a[i] == a[j]) {
      l[i] = r[i] = j;
      continue;
    }
    l[i] = j + 1;
    for (j = i + 1; j <= n; j++)
      if (a[j] % a[i]) break;
    r[i] = j - 1;
    lenMax = ((lenMax) > (r[i] - l[i]) ? (lenMax) : (r[i] - l[i]));
  }
  lastl = 0;
  for (i = 1, count = 0; i <= n; i++) {
    if (r[i] - l[i] != lenMax) continue;
    if (l[i] == lastl) {
      r[i] = l[i];
      continue;
    }
    count++;
    lastl = l[i];
  }
  printf("%d %d\n", count, lenMax);
  first = 1;
  for (i = 1; i <= n; i++) {
    if (r[i] - l[i] != lenMax) continue;
    printf("%s%d", first ? "" : " ", l[i]);
    first = 0;
  }
  return 0;
}
