#include using namespace std; typedef long long ll; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b #define vl vector #define vii vector> #define vll vector> #define vvi vector> #define vvl vector> #define vvii vector>> #define vvll vector>> #define vst vector #define pii pair #define pll pair #define pb push_back #define all(x) (x).begin(),(x).end() #define mkunique(x) sort(all(x));(x).erase(unique(all(x)),(x).end()) #define fi first #define se second #define mp make_pair #define si(x) int(x.size()) const int mod=998244353,MAX=300005,INF=15<<26; int main(){ std::ifstream in("text.txt"); std::cin.rdbuf(in.rdbuf()); cin.tie(0); ios::sync_with_stdio(false); ll N;cin>>N; ll K;cin>>K; swap(K,N); set SE; for(ll x=1;x*x*x*x*x*x<=N;x++){ for(ll y=1;y*y*y*y<=N;y++){ ll s=x*x*x*x*x*x+y*y*y*y; if(s<=N) SE.insert(s); } } ll ans=0; for(ll a:SE){ if(a%K==0){ ll z=a/K; ll zz=roundl(sqrtl(z)); if(zz*zz==z) ans++; } } cout<