import random n, m, b = map(int,input().split()) f = pow(m, n, b) while True: k = random.randrange(b) targ = (f - k * k) % b g = [k] for j in range(5): i = 0 while True: if (i + 1) ** 2 > targ: break i += 1 targ = targ - i * i g.append(i) v = 0 for i in range(6): v += g[i] * g[i] if g[i] == 0: g[i] += b if v % b != pow(m, n, b): continue break #print(targ) print("YES") print(*g)