n, z = map(int, input().split())
R = z**n
flag = False
Set = set([])
for i in range(1, 10**6+1):
    if i**n <= R:
        Set.add(i**n)
    elif i**n > R:
        break
        
for x in Set:
    if R-x in Set:
        flag = True
        break
        
if flag:
    print("Yes")
    
else:
    print("No")