#include using namespace std; int main(){ cin.tie(nullptr); ios::sync_with_stdio(false); cout.precision(12); cout.setf(ios_base::fixed, ios_base::floatfield); int n, d; cin >> n >> d; vector xy, zw; for(int i=1;i<=n;i++){ for(int j=1;j<=n;j++){ xy.push_back(i*i+j*j); zw.push_back(i*i-j*j); } } sort(zw.begin(), zw.end()); uint64_t ans = 0; for(auto lhs:xy){ ans += distance(lower_bound(zw.begin(), zw.end(), lhs-d), upper_bound(zw.begin(), zw.end(), lhs-d)); } cout << ans << endl; return 0; }