def MI(): return map(int, input().split()) n,d=MI() wz,xy=[],[] for i in range(1,n+1): for j in range(1,n+1): wz.append(i**2-j**2+d) xy.append(i**2+j**2) wz=sorted(wz) from bisect import bisect_right, bisect_left ans=0 for i in xy: l=bisect_left(wz, i) r=bisect_right(wz, i) ans+=r-l print(ans)