n, b = map(int, input().split())
a = [-1] * n
rest = n
ans = 0
done = False
for x in map(int, input().split()):
    x -= 1
    res = ans
    if not done:
        if a[x] == 1:
            res = (res + pow(2, rest, b)) % b
        elif a[x] == -1:
            res = (res + pow(2, rest - 1, b)) % b
    print(res)
    if not done:
        if a[x] == -1:
            ans = (ans + pow(2, rest - 1, b)) % b
            a[x] = 1
            rest -= 1
        else:
            if a[x] == 0:
                ans += pow(2, rest, b)
                done = True