N = int(input())-1 A = list(map(int, input().split())) L = [[0] * 3 for i in range(N)] for i in range(N): L[i][0]=A[i] L[i][1]=i L = sorted(L, key=lambda x: x[0]) #[0]に注目してソート for i in range(N): if L[i][0]>i+1: print('NO') exit() L[i][2]=i+2-L[i][0] L = sorted(L, key=lambda x: x[1]) #[1]に注目してソート print('YES') for i in range(N): print(L[i][2])