if (((dir==40) && (p.y>p0.y)) || (dir==38 && (p.y<p0.y))
|| ((dir==37) && (p.x<p0.x)) || ((dir==39 && (p.x>p0.x)))) {
var l1 = (p.y-p0.y)*(p.y-p0.y)+(p.x-p0.x)*(p.x-p0.x);
if (((dir==40) && (p.y>p0.y)) || (dir==38 && (p.y<p0.y))
|| ((dir==37) && (p.x<p0.x)) || ((dir==39 && (p.x>p0.x)))) {
var l1 = (p.y-p0.y)*(p.y-p0.y)+(p.x-p0.x)*(p.x-p0.x);