Question: How do I select all system of equations have two integral solutions in this list?

I am trying to find the number a and b (-20 < a < 20, -20 < b <20) so that two circles (x+1)^2+(y+3)^2 = 125 and (x-a)^2+(y-b)^2 = 225 cut at two points A and B and coordinates A and B are pairs of integers.
I tried
 

restart; L := []; 
for a from -20 to 20 do 
for b from -20 to 20 do 
for x from -20 to 20 do 
for y from -20 to 20 do 
if (x+1)^2+(y+3)^2 = 125 and (x-a)^2+(y-b)^2 = 225 and nops({a, b, x, y}) = 4 and x*y*a*b <> 0 then 
L := {op(L), {[a, b], [x, y]}} 
od: od: od: od:
nops(L); 
L

How to select the number a and b so that the system of equations (x+1)^2+(y+3)^2 = 125  and (x-a)^2+(y-b)^2 = 225 have two integral solutions. For example
 

restart; 
solve({(x-6)^2+(y+2)^2 = 225, (x+1)^2+(y+3)^2 = 125}, {x, y})


Please Wait...