Bug Description
In rpc/backend/chain_info.go, FeeHistory casts block numbers to int64 without range checks:
blockNumber := int64(blkNumber) //#nosec G115
blockEnd := int64(lastBlock) //#nosec G115
When blkNumber exceeds math.MaxInt64, the cast wraps to a negative value.
Impact
Block numbers > MaxInt64 produce incorrect negative values, potentially returning wrong fee history data.
Proposed Fix
Add range check before the cast: return error if value exceeds int64 range.