#include <bits/stdc++.h>
using namespace std;
#define rep(i,n) for(int i = 0; i < (int)n; i++)
using ll = long long;

int main(){
  int n, z;
  cin >> n >> z;
  int v = 1;
  map<int,int> mp;
  rep(i,n) v *= z;
  for(int i = 1; i <= z; i++) {
    int a = 1;
    rep(j,n) a *= i;
    mp[a]++;
  }
  bool f = false;
  for(int i = 1; i <= z; i++) {
    int a = 1;
    rep(j,n) a *= i;
    if(mp[v-a]) f = true;
  } 
  cout << (f ? "Yes" : "No") << endl;
  return 0;
}