need to re-do x,y calculation