h.copy(b).add(f);i.copy(c).add(g);f=d.dot(g);g=i.sub(h).dot(g);0===f&&(console.log("Either infinite or no solutions!"),0===g?console.log("Its finite solutions."):console.log("Too bad, no solutions."));g/=f;return0>g?(b=Math.atan2(b.y-a.y,b.x-a.x),a=Math.atan2(c.y-a.y,c.x-a.x),b>a&&(a+=2*Math.PI),c=(b+a)/2,a=-Math.cos(c),c=-Math.sin(c),newTHREE.Vector2(a,c)):d.multiplyScalar(g).add(h).sub(a).clone()}functione(c,d){vare,f;for(O=c.length;0<=--O;){e=O;f=O-1;0>f&&(f=c.length-1);for(varg=0,h=q+2*l,