#include #define rep(i,n) for(int i=0;i ; const ll INF = 1e18; const int MOD = 1000000007; int main(){ int x,y; cin >> x >> y; vector square; vector cnt(y+1,0); for(int i=0;i*i<=y;i++){ if(i==0) square.push_back(i * i); else{ square.push_back(i * i); square.push_back(i * i); } } rep(i,square.size()){ rep(j,square.size()){ if(square[i]+square[j] > y) continue; cnt[square[i]+square[j]] ++; } } ll ans = 0; for(int i=x;i<=y;i++){ ans = max(ans,cnt[i]); } cout << ans << endl; return 0; }