#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define repr(i, a, b) for (int i = (int)(a); i < (int)(b); i++) #define rep(i, n) repr(i, 0, n) #define INF 2e9 #define MOD 1000000007 //#define MOD 998244353 #define LINF (long long)4e18 #define jck 3.141592 using ll = long long; using Pi = pair; using Pl = pair; int main(){ int N,D; cin >> N >> D; vector cnt1(10000000); vector cnt2(10000000); repr(x,1,N+1)repr(y,1,N+1){ cnt1[x*x+y*y]++; } repr(z,1,N+1)repr(w,1,N+1){ if(w*w-z*z+D >= 0) cnt2[w*w-z*z+D]++; } ll ans = 0; rep(i,10000000){ ans += cnt1[i]*cnt2[i]; } cout << ans << endl; }