import collections,sys,math,functools,operator,itertools,bisect,heapq,decimal,string,time,random #sys.setrecursionlimit(10**9) #sys.set_int_max_str_digits(0) #input = sys.stdin.readline # #alist = [] n = int(input()) a = list(map(int,input().split())) x = [0 for i in range(n)] s = set() for i in range(n): if a[i] in s: break s.add(a[i]) x[i] = 1 y = [0 for i in range(n)] s = set() for i in reversed(range(n)): if a[i] in s: break s.add(a[i]) y[i] = 1 ans = [] for i in range(n-1): if x[i] and y[i+1]: ans.append(i+1) print(len(ans)) print(*ans)