#include #define int long long #define ll long long #define rep(i,n) for(int i=0;i #define prique priority_queue #define ggr getchar();getchar();return 0; using namespace std; int n,d; vector vec; signed main(){ cin>>n>>d; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++)vec.push_back(i*i+j*j); } sort(vec.begin(),vec.end()); int ans=0; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ ans+=upper_bound(vec.begin(),vec.end(),i*i-j*j+d)-lower_bound(vec.begin(),vec.end(),i*i-j*j+d); } } cout<