!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports):"function"==typeof define&&define.amd?define(["exports"],n):n((t="undefined"!=typeof globalThis?globalThis:t||self).predicates={})}(this,function(t){"use strict";const n=11102230246251565e-32,e=134217729,o=(3+8*n)*n;function f(t,n,e,o,f){let i,r,c,s,u=n[0],a=o[0],l=0,b=0;a>u==a>-u?(i=u,u=n[++l]):(i=a,a=o[++b]);let d=0;if(lu==a>-u?(r=u+i,c=i-(r-u),u=n[++l]):(r=a+i,c=i-(r-a),a=o[++b]),i=r,0!==c&&(f[d++]=c);lu==a>-u?(r=i+u,s=r-i,c=i-(r-s)+(u-s),u=n[++l]):(r=i+a,s=r-i,c=i-(r-s)+(a-s),a=o[++b]),i=r,0!==c&&(f[d++]=c);for(;lrt||-ft>rt?ft:function(t,n,c,J,L,N,O,P,Q){let R,S,U,V,W,X,Y,Z,$,_,tt,nt,et,ot,ft,it,rt,ct,st,ut,at,lt,bt,dt,ht,pt,Mt,yt,xt,gt,mt,Tt,jt,wt,At;const Ft=t-O,kt=c-O,qt=L-O,vt=n-P,zt=J-P,Bt=N-P;mt=kt*Bt,bt=e*kt,dt=bt-(bt-kt),ht=kt-dt,bt=e*Bt,pt=bt-(bt-Bt),Mt=Bt-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=qt*zt,bt=e*qt,dt=bt-(bt-qt),ht=qt-dt,bt=e*zt,pt=bt-(bt-zt),Mt=zt-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt-wt,lt=Tt-yt,s[0]=Tt-(yt+lt)+(lt-wt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt-jt,lt=gt-yt,s[1]=gt-(yt+lt)+(lt-jt),At=xt+yt,lt=At-xt,s[2]=xt-(At-lt)+(yt-lt),s[3]=At,mt=qt*vt,bt=e*qt,dt=bt-(bt-qt),ht=qt-dt,bt=e*vt,pt=bt-(bt-vt),Mt=vt-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=Ft*Bt,bt=e*Ft,dt=bt-(bt-Ft),ht=Ft-dt,bt=e*Bt,pt=bt-(bt-Bt),Mt=Bt-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt-wt,lt=Tt-yt,u[0]=Tt-(yt+lt)+(lt-wt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt-jt,lt=gt-yt,u[1]=gt-(yt+lt)+(lt-jt),At=xt+yt,lt=At-xt,u[2]=xt-(At-lt)+(yt-lt),u[3]=At,mt=Ft*zt,bt=e*Ft,dt=bt-(bt-Ft),ht=Ft-dt,bt=e*zt,pt=bt-(bt-zt),Mt=zt-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=kt*vt,bt=e*kt,dt=bt-(bt-kt),ht=kt-dt,bt=e*vt,pt=bt-(bt-vt),Mt=vt-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt-wt,lt=Tt-yt,a[0]=Tt-(yt+lt)+(lt-wt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt-jt,lt=gt-yt,a[1]=gt-(yt+lt)+(lt-jt),At=xt+yt,lt=At-xt,a[2]=xt-(At-lt)+(yt-lt),a[3]=At,R=f(f(f(r(r(4,s,Ft,v),v,Ft,z),z,r(r(4,s,vt,v),v,vt,B),B,D),D,f(r(r(4,u,kt,v),v,kt,z),z,r(r(4,u,zt,v),v,zt,B),B,E),E,H),H,f(r(r(4,a,qt,v),v,qt,z),z,r(r(4,a,Bt,v),v,Bt,B),B,D),D,I);let Ct=function(t,n){let e=n[0];for(let o=1;o=Dt||-Ct>=Dt)return Ct;if(lt=t-Ft,S=t-(Ft+lt)+(lt-O),lt=n-vt,W=n-(vt+lt)+(lt-P),lt=c-kt,U=c-(kt+lt)+(lt-O),lt=J-zt,X=J-(zt+lt)+(lt-P),lt=L-qt,V=L-(qt+lt)+(lt-O),lt=N-Bt,Y=N-(Bt+lt)+(lt-P),0===S&&0===U&&0===V&&0===W&&0===X&&0===Y)return Ct;if(Dt=5423418723394464e-46*Q+o*Math.abs(Ct),Ct+=(Ft*Ft+vt*vt)*(kt*Y+Bt*U-(zt*V+qt*X))+2*(Ft*S+vt*W)*(kt*Bt-zt*qt)+((kt*kt+zt*zt)*(qt*W+vt*V-(Bt*S+Ft*Y))+2*(kt*U+zt*X)*(qt*vt-Bt*Ft))+((qt*qt+Bt*Bt)*(Ft*X+zt*S-(vt*U+kt*W))+2*(qt*V+Bt*Y)*(Ft*zt-vt*kt)),Ct>=Dt||-Ct>=Dt)return Ct;if(0===U&&0===X&&0===V&&0===Y||(mt=Ft*Ft,bt=e*Ft,dt=bt-(bt-Ft),ht=Ft-dt,Tt=ht*ht-(mt-dt*dt-(dt+dt)*ht),jt=vt*vt,bt=e*vt,dt=bt-(bt-vt),ht=vt-dt,wt=ht*ht-(jt-dt*dt-(dt+dt)*ht),yt=Tt+wt,lt=yt-Tt,l[0]=Tt-(yt-lt)+(wt-lt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt+jt,lt=yt-gt,l[1]=gt-(yt-lt)+(jt-lt),At=xt+yt,lt=At-xt,l[2]=xt-(At-lt)+(yt-lt),l[3]=At),0===V&&0===Y&&0===S&&0===W||(mt=kt*kt,bt=e*kt,dt=bt-(bt-kt),ht=kt-dt,Tt=ht*ht-(mt-dt*dt-(dt+dt)*ht),jt=zt*zt,bt=e*zt,dt=bt-(bt-zt),ht=zt-dt,wt=ht*ht-(jt-dt*dt-(dt+dt)*ht),yt=Tt+wt,lt=yt-Tt,b[0]=Tt-(yt-lt)+(wt-lt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt+jt,lt=yt-gt,b[1]=gt-(yt-lt)+(jt-lt),At=xt+yt,lt=At-xt,b[2]=xt-(At-lt)+(yt-lt),b[3]=At),0===S&&0===W&&0===U&&0===X||(mt=qt*qt,bt=e*qt,dt=bt-(bt-qt),ht=qt-dt,Tt=ht*ht-(mt-dt*dt-(dt+dt)*ht),jt=Bt*Bt,bt=e*Bt,dt=bt-(bt-Bt),ht=Bt-dt,wt=ht*ht-(jt-dt*dt-(dt+dt)*ht),yt=Tt+wt,lt=yt-Tt,d[0]=Tt-(yt-lt)+(wt-lt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt+jt,lt=yt-gt,d[1]=gt-(yt-lt)+(jt-lt),At=xt+yt,lt=At-xt,d[2]=xt-(At-lt)+(yt-lt),d[3]=At),0!==S&&(Z=r(4,s,S,M),R=K(R,i(r(Z,M,2*Ft,z),z,r(r(4,d,S,v),v,zt,B),B,r(r(4,b,S,v),v,-Bt,C),C,D,G),G)),0!==W&&($=r(4,s,W,y),R=K(R,i(r($,y,2*vt,z),z,r(r(4,b,W,v),v,qt,B),B,r(r(4,d,W,v),v,-kt,C),C,D,G),G)),0!==U&&(_=r(4,u,U,x),R=K(R,i(r(_,x,2*kt,z),z,r(r(4,l,U,v),v,Bt,B),B,r(r(4,d,U,v),v,-vt,C),C,D,G),G)),0!==X&&(tt=r(4,u,X,g),R=K(R,i(r(tt,g,2*zt,z),z,r(r(4,d,X,v),v,Ft,B),B,r(r(4,l,X,v),v,-qt,C),C,D,G),G)),0!==V&&(nt=r(4,a,V,m),R=K(R,i(r(nt,m,2*qt,z),z,r(r(4,b,V,v),v,vt,B),B,r(r(4,l,V,v),v,-zt,C),C,D,G),G)),0!==Y&&(et=r(4,a,Y,T),R=K(R,i(r(et,T,2*Bt,z),z,r(r(4,l,Y,v),v,kt,B),B,r(r(4,b,Y,v),v,-Ft,C),C,D,G),G)),0!==S||0!==W){if(0!==U||0!==X||0!==V||0!==Y?(mt=U*Bt,bt=e*U,dt=bt-(bt-U),ht=U-dt,bt=e*Bt,pt=bt-(bt-Bt),Mt=Bt-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=kt*Y,bt=e*kt,dt=bt-(bt-kt),ht=kt-dt,bt=e*Y,pt=bt-(bt-Y),Mt=Y-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt+wt,lt=yt-Tt,h[0]=Tt-(yt-lt)+(wt-lt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt+jt,lt=yt-gt,h[1]=gt-(yt-lt)+(jt-lt),At=xt+yt,lt=At-xt,h[2]=xt-(At-lt)+(yt-lt),h[3]=At,mt=V*-zt,bt=e*V,dt=bt-(bt-V),ht=V-dt,bt=e*-zt,pt=bt-(bt- -zt),Mt=-zt-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=qt*-X,bt=e*qt,dt=bt-(bt-qt),ht=qt-dt,bt=e*-X,pt=bt-(bt- -X),Mt=-X-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt+wt,lt=yt-Tt,p[0]=Tt-(yt-lt)+(wt-lt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt+jt,lt=yt-gt,p[1]=gt-(yt-lt)+(jt-lt),At=xt+yt,lt=At-xt,p[2]=xt-(At-lt)+(yt-lt),p[3]=At,ft=f(4,h,4,p,w),mt=U*Y,bt=e*U,dt=bt-(bt-U),ht=U-dt,bt=e*Y,pt=bt-(bt-Y),Mt=Y-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=V*X,bt=e*V,dt=bt-(bt-V),ht=V-dt,bt=e*X,pt=bt-(bt-X),Mt=X-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt-wt,lt=Tt-yt,k[0]=Tt-(yt+lt)+(lt-wt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt-jt,lt=gt-yt,k[1]=gt-(yt+lt)+(lt-jt),At=xt+yt,lt=At-xt,k[2]=xt-(At-lt)+(yt-lt),k[3]=At,ct=4):(w[0]=0,ft=1,k[0]=0,ct=1),0!==S){const t=r(ft,w,S,C);R=K(R,f(r(Z,M,S,z),z,r(t,C,2*Ft,D),D,G),G);const n=r(ct,k,S,v);R=K(R,i(r(n,v,2*Ft,z),z,r(n,v,S,B),B,r(t,C,S,D),D,E,H),H),0!==X&&(R=K(R,r(r(4,d,S,v),v,X,z),z)),0!==Y&&(R=K(R,r(r(4,b,-S,v),v,Y,z),z))}if(0!==W){const t=r(ft,w,W,C);R=K(R,f(r($,y,W,z),z,r(t,C,2*vt,D),D,G),G);const n=r(ct,k,W,v);R=K(R,i(r(n,v,2*vt,z),z,r(n,v,W,B),B,r(t,C,W,D),D,E,H),H)}}if(0!==U||0!==X){if(0!==V||0!==Y||0!==S||0!==W?(mt=V*vt,bt=e*V,dt=bt-(bt-V),ht=V-dt,bt=e*vt,pt=bt-(bt-vt),Mt=vt-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=qt*W,bt=e*qt,dt=bt-(bt-qt),ht=qt-dt,bt=e*W,pt=bt-(bt-W),Mt=W-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt+wt,lt=yt-Tt,h[0]=Tt-(yt-lt)+(wt-lt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt+jt,lt=yt-gt,h[1]=gt-(yt-lt)+(jt-lt),At=xt+yt,lt=At-xt,h[2]=xt-(At-lt)+(yt-lt),h[3]=At,ut=-Bt,at=-Y,mt=S*ut,bt=e*S,dt=bt-(bt-S),ht=S-dt,bt=e*ut,pt=bt-(bt-ut),Mt=ut-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=Ft*at,bt=e*Ft,dt=bt-(bt-Ft),ht=Ft-dt,bt=e*at,pt=bt-(bt-at),Mt=at-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt+wt,lt=yt-Tt,p[0]=Tt-(yt-lt)+(wt-lt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt+jt,lt=yt-gt,p[1]=gt-(yt-lt)+(jt-lt),At=xt+yt,lt=At-xt,p[2]=xt-(At-lt)+(yt-lt),p[3]=At,it=f(4,h,4,p,A),mt=V*W,bt=e*V,dt=bt-(bt-V),ht=V-dt,bt=e*W,pt=bt-(bt-W),Mt=W-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=S*Y,bt=e*S,dt=bt-(bt-S),ht=S-dt,bt=e*Y,pt=bt-(bt-Y),Mt=Y-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt-wt,lt=Tt-yt,q[0]=Tt-(yt+lt)+(lt-wt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt-jt,lt=gt-yt,q[1]=gt-(yt+lt)+(lt-jt),At=xt+yt,lt=At-xt,q[2]=xt-(At-lt)+(yt-lt),q[3]=At,st=4):(A[0]=0,it=1,q[0]=0,st=1),0!==U){const t=r(it,A,U,C);R=K(R,f(r(_,x,U,z),z,r(t,C,2*kt,D),D,G),G);const n=r(st,q,U,v);R=K(R,i(r(n,v,2*kt,z),z,r(n,v,U,B),B,r(t,C,U,D),D,E,H),H),0!==Y&&(R=K(R,r(r(4,l,U,v),v,Y,z),z)),0!==W&&(R=K(R,r(r(4,d,-U,v),v,W,z),z))}if(0!==X){const t=r(it,A,X,C);R=K(R,f(r(tt,g,X,z),z,r(t,C,2*zt,D),D,G),G);const n=r(st,q,X,v);R=K(R,i(r(n,v,2*zt,z),z,r(n,v,X,B),B,r(t,C,X,D),D,E,H),H)}}if(0!==V||0!==Y){if(0!==S||0!==W||0!==U||0!==X?(mt=S*zt,bt=e*S,dt=bt-(bt-S),ht=S-dt,bt=e*zt,pt=bt-(bt-zt),Mt=zt-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=Ft*X,bt=e*Ft,dt=bt-(bt-Ft),ht=Ft-dt,bt=e*X,pt=bt-(bt-X),Mt=X-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt+wt,lt=yt-Tt,h[0]=Tt-(yt-lt)+(wt-lt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt+jt,lt=yt-gt,h[1]=gt-(yt-lt)+(jt-lt),At=xt+yt,lt=At-xt,h[2]=xt-(At-lt)+(yt-lt),h[3]=At,ut=-vt,at=-W,mt=U*ut,bt=e*U,dt=bt-(bt-U),ht=U-dt,bt=e*ut,pt=bt-(bt-ut),Mt=ut-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=kt*at,bt=e*kt,dt=bt-(bt-kt),ht=kt-dt,bt=e*at,pt=bt-(bt-at),Mt=at-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt+wt,lt=yt-Tt,p[0]=Tt-(yt-lt)+(wt-lt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt+jt,lt=yt-gt,p[1]=gt-(yt-lt)+(jt-lt),At=xt+yt,lt=At-xt,p[2]=xt-(At-lt)+(yt-lt),p[3]=At,ot=f(4,h,4,p,j),mt=S*X,bt=e*S,dt=bt-(bt-S),ht=S-dt,bt=e*X,pt=bt-(bt-X),Mt=X-pt,Tt=ht*Mt-(mt-dt*pt-ht*pt-dt*Mt),jt=U*W,bt=e*U,dt=bt-(bt-U),ht=U-dt,bt=e*W,pt=bt-(bt-W),Mt=W-pt,wt=ht*Mt-(jt-dt*pt-ht*pt-dt*Mt),yt=Tt-wt,lt=Tt-yt,F[0]=Tt-(yt+lt)+(lt-wt),xt=mt+yt,lt=xt-mt,gt=mt-(xt-lt)+(yt-lt),yt=gt-jt,lt=gt-yt,F[1]=gt-(yt+lt)+(lt-jt),At=xt+yt,lt=At-xt,F[2]=xt-(At-lt)+(yt-lt),F[3]=At,rt=4):(j[0]=0,ot=1,F[0]=0,rt=1),0!==V){const t=r(ot,j,V,C);R=K(R,f(r(nt,m,V,z),z,r(t,C,2*qt,D),D,G),G);const n=r(rt,F,V,v);R=K(R,i(r(n,v,2*qt,z),z,r(n,v,V,B),B,r(t,C,V,D),D,E,H),H),0!==W&&(R=K(R,r(r(4,b,V,v),v,W,z),z)),0!==X&&(R=K(R,r(r(4,l,-V,v),v,X,z),z))}if(0!==Y){const t=r(ot,j,Y,C);R=K(R,f(r(et,T,Y,z),z,r(t,C,2*Bt,D),D,G),G);const n=r(rt,F,Y,v);R=K(R,i(r(n,v,2*Bt,z),z,r(n,v,Y,B),B,r(t,C,Y,D),D,E,H),H)}}return I[R-1]}(t,n,c,J,L,N,O,P,it)},t.incirclefast=function(t,n,e,o,f,i,r,c){const s=t-r,u=n-c,a=e-r,l=o-c,b=f-r,d=i-c;return(s*s+u*u)*(a*d-b*l)+(a*a+l*l)*(b*u-s*d)+(b*b+d*d)*(s*l-a*u)}});