n=int(input()) b=[int(input()) for _ in range(n)] i=m=0 a=[1]*(n+1) while i=a[i+1]or a[i+1]>10**18:a[0]+=-a[i+1]+1;i=-1;m+=1 if m==100:print(-1);exit() i+=1 if a[0]<=0:print(-1);exit() print(n+1) for _ in range(n+1):print(a[_])