J=lambda:map(int,input().split())
N,B=J()
F=[0]*N
s=0
p=pow(2,N,B)
A=J()
for a in A:
	if F[a-1]:print(p)
	else:
		F[a-1],s=1,s+1
		print((p-pow(2,N-s,B))%B)