#include #define INF 1e9 #define llINF 1e18 #define MOD 1000000007 #define pb push_back #define mp make_pair #define F first #define S second #define ll long long #define ull unsigned long long #define vi vector #define vvi vector #define DBG_N(hoge) cerr<<"!"<<" "<<(hoge)<MP; int main(){ cin.tie(0); ios::sync_with_stdio(false); ll n,d;cin>>n>>d; for(ll i=1;i<=n;i++) for(ll j=1;j<=n;j++) MP[i*i+j*j]++; ll ans=0; for(ll i=1;i<=n;i++){ ll tar=i*i+d; for(ll j=1;j<=n;j++){ ll num=tar-j*j; ans+=MP[num]; } } cout<