#include #include using namespace std; #define ll long long #define endl '\n' #define orderedset tree,null_type,less>,rb_tree_tag,tree_order_statistics_node_update> #define tawfiq() ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0); #include #include using namespace __gnu_pbds; #define F first #define S second #define pb push_back #define all(a) (a).begin(),(a).end() #define rall(a) (a).rbegin(),(a).rend() typedef vectorvll; typedef vectorvi; typedef pairpll; typedef vector>vpll; #define gcd(a,b) __gcd(a,b) const ll mod=1000000007; #define lcm(a,b) ((a/gcd(a,b))*b) #define mem(a,b) memset(a,b,sizeof(a)) const ll INF=1e18; const int p=2e5+123; ll mul(ll a ,ll b,ll mod) { return((((a%mod)+mod)%mod)*(((b%mod)+mod)%mod))%mod; } ll add(ll a ,ll b,ll mod) { return((((a%mod)+mod)%mod)+(((b%mod)+mod)%mod))%mod; } ll binexpo(ll a ,ll b,ll c) { if(b==0)return 1ll; ll res=1; res=binexpo(a,b/2,c); if(b%2==0) return res=mul(res,res,c); else return res=mul(res,mul(res,a,c),c); } void solve(int tc ,int t5) { ll n,d; cin>>n>>d; vll cnt((2*n*n)+1); for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { ll f=(1ll*j*j)+(1ll*i*i); { cnt[f]++; } } } ll c=0; for(int i=1;i<=n;i++) { for(int j=1;j<=n;j++) { ll k=-(1ll*j*j)+(1ll*i*i)+d; // cout<=2 &&cnt[k]>0) { c+=cnt[k]; } } } cout<>t; for(int i=1;i<=t;i++) { solve(i,t); } }