brep-io-kernel 1.0.177 → 1.0.178

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/about.html +3 -66
  2. package/dist/apiExamples/BREP_Booleans.html +2 -2
  3. package/dist/apiExamples/BREP_Export.html +2 -2
  4. package/dist/apiExamples/BREP_Primitives.html +2 -2
  5. package/dist/apiExamples/BREP_Transforms.html +2 -2
  6. package/dist/apiExamples/Embeded_2D_Sketcher.html +2 -2
  7. package/dist/apiExamples/Embeded_CAD.html +2 -2
  8. package/dist/apiExamples/Embeded_CAD_Integration_Test.html +2 -2
  9. package/dist/assembly-constraint-capture.html +5 -5
  10. package/dist/assets/{AnnotationRegistry-CyI5mmDu.js → AnnotationRegistry-QZj3o2R6.js} +1 -1
  11. package/dist/assets/{AssemblyConstraintRegistry-3P1cpGjG.js → AssemblyConstraintRegistry-DJV0rHvz.js} +1 -1
  12. package/dist/assets/{FeatureRegistry-Cd-GX-Bm.js → FeatureRegistry-C7MrfKHF.js} +3 -3
  13. package/dist/assets/{PartHistory-DxsRIXx4.js → PartHistory-CyUoWFuO.js} +1 -1
  14. package/dist/assets/{Tube-bO80ROeR.js → Tube-TKgrLSLm.js} +1 -1
  15. package/dist/assets/{annUtils-D9TT7tgs.js → annUtils-Cv2fgMTB.js} +1 -1
  16. package/dist/assets/{apiExample_BREP_Booleans-p7pplM2w.js → apiExample_BREP_Booleans-CVUu-3pI.js} +1 -1
  17. package/dist/assets/{apiExample_BREP_Export-DcEboCzN.js → apiExample_BREP_Export-D3YICePi.js} +1 -1
  18. package/dist/assets/{apiExample_BREP_Primitives-mwn27Zyf.js → apiExample_BREP_Primitives-CB9GlLIq.js} +1 -1
  19. package/dist/assets/{apiExample_BREP_Transforms-DoxqJ6cS.js → apiExample_BREP_Transforms-BTbdOuJd.js} +1 -1
  20. package/dist/assets/{apiExample_Embeded_2D_Sketcher-D0UY5aPj.js → apiExample_Embeded_2D_Sketcher-jli62c46.js} +1 -1
  21. package/dist/assets/{apiExample_Embeded_CAD-CGA1Zguy.js → apiExample_Embeded_CAD-BBzOAW8d.js} +1 -1
  22. package/dist/assets/{apiExample_Embeded_CAD_Integration_Test-CdZX2cCy.js → apiExample_Embeded_CAD_Integration_Test-Dla62MVj.js} +1 -1
  23. package/dist/assets/{assemblyConstraintDialogs-Qq5KEM_o.js → assemblyConstraintDialogs-7PwUshmv.js} +1 -1
  24. package/dist/assets/{brep-kernel-DRr4NDNQ.js → brep-kernel-B2gzJr_I.js} +3 -10
  25. package/dist/assets/{browserTests-DI1pWDf6.js → browserTests-Rma8zWcv.js} +1 -1
  26. package/dist/assets/{chamfer-DdXNz6lz.js → chamfer-jmLT1RTy.js} +1 -1
  27. package/dist/assets/{dialogCapturePageFactory-DGBZ6PkY.js → dialogCapturePageFactory-l1BkjONQ.js} +1 -1
  28. package/dist/assets/{featureDialogs-CUWi02Qp.js → featureDialogs-Bas0NDXF.js} +3 -3
  29. package/dist/assets/{featureDialogs-CJ9OA-vL.js → featureDialogs-zsfh_u_t.js} +1 -1
  30. package/dist/assets/{fillet-CJey7GJP.js → fillet-Bzd1Xae9.js} +1 -1
  31. package/dist/assets/{index.es-X1ZhwpCY.js → index.es-tZ6V_7py.js} +1 -1
  32. package/dist/assets/{javascript-CHFzcwro.js → javascript-DU8Xgp6c.js} +1 -1
  33. package/dist/assets/{main-cad-bbPyIDxb.js → main-cad-J2VK-edE.js} +6 -6
  34. package/dist/assets/{pmiDialogs-BFqEnCKw.js → pmiDialogs-DtSa0QaG.js} +1 -1
  35. package/dist/assets/{test-XEjDO9UE.js → test-D-0BGqtx.js} +3 -3
  36. package/dist/cad.html +10 -10
  37. package/dist/feature-dialog-capture.html +7 -7
  38. package/dist/help/index.html +3 -66
  39. package/dist/help/search-index.json +1 -1
  40. package/dist/pmi-dialog-capture.html +5 -5
  41. package/dist/test.html +1 -1
  42. package/dist/viewer.html +10 -10
  43. package/dist-kernel/brep-kernel.js +3 -10
  44. package/dist-kernel/help/index.html +3 -66
  45. package/dist-kernel/help/search-index.json +1 -1
  46. package/package.json +2 -3
  47. package/src/BREP/setupManifold.js +2 -7
  48. package/src/generated/licenseBundle.js +1 -1
  49. package/src/generated/manifoldSource.js +0 -1
  50. package/dist/assets/manifold-B8h_vZ5O.js +0 -16
  51. package/dist/assets/manifold-D9yvTBHx.wasm +0 -0
@@ -1 +1 @@
1
- var m=Object.defineProperty;var i=(e,t)=>m(e,"name",{value:t,configurable:!0});import"./modulepreload-polyfill-BdX5DvLD.js";import{F as p}from"./FeatureRegistry-Cd-GX-Bm.js";import{r as c}from"./dialogCapturePageFactory-DGBZ6PkY.js";import"./featureDialogs-CUWi02Qp.js";import"./browserStorage-CvgF8ovw.js";import"./preload-helper-ZNr0Qq7Q.js";import"./Tube-bO80ROeR.js";import"./chamfer-DdXNz6lz.js";import"./fillet-CJey7GJP.js";import"./deepClone-Dj59xCHB.js";const u=new p,f=u.features.filter(Boolean).map(e=>{const t=a(e.longName,e.featureName,e.name,"Feature"),r=a(e.shortName,e.featureShortName,t,"Feature"),o=e&&typeof e.inputParamsSchema=="object"?e.inputParamsSchema:{},n=l(o,r);return{displayName:t,shortName:r,captureName:t,schema:o,initialParams:n}});c({title:"Feature Dialog Reference",description:"Dialogs are rendered live using SchemaForm. Use the automated capture script to export PNGs.",entries:f});function a(...e){for(const t of e){if(t==null&&t!==0)continue;const r=String(t).trim();if(r.length)return r}return"Feature"}i(a,"pickName");function l(e,t){if(!e||typeof e!="object")return{};let r=null;if(Object.prototype.hasOwnProperty.call(e,"id")?r="id":Object.prototype.hasOwnProperty.call(e,"featureID")&&(r="featureID"),!r)return{};const o=String(t||"feature").replace(/[^a-z0-9._-]+/gi,"_");return{[r]:`${o}-capture`}}i(l,"buildFeatureParams");
1
+ var m=Object.defineProperty;var i=(e,t)=>m(e,"name",{value:t,configurable:!0});import"./modulepreload-polyfill-BdX5DvLD.js";import{F as p}from"./FeatureRegistry-C7MrfKHF.js";import{r as c}from"./dialogCapturePageFactory-l1BkjONQ.js";import"./featureDialogs-Bas0NDXF.js";import"./browserStorage-CvgF8ovw.js";import"./preload-helper-ZNr0Qq7Q.js";import"./Tube-TKgrLSLm.js";import"./chamfer-jmLT1RTy.js";import"./fillet-Bzd1Xae9.js";import"./deepClone-Dj59xCHB.js";const u=new p,f=u.features.filter(Boolean).map(e=>{const t=a(e.longName,e.featureName,e.name,"Feature"),r=a(e.shortName,e.featureShortName,t,"Feature"),o=e&&typeof e.inputParamsSchema=="object"?e.inputParamsSchema:{},n=l(o,r);return{displayName:t,shortName:r,captureName:t,schema:o,initialParams:n}});c({title:"Feature Dialog Reference",description:"Dialogs are rendered live using SchemaForm. Use the automated capture script to export PNGs.",entries:f});function a(...e){for(const t of e){if(t==null&&t!==0)continue;const r=String(t).trim();if(r.length)return r}return"Feature"}i(a,"pickName");function l(e,t){if(!e||typeof e!="object")return{};let r=null;if(Object.prototype.hasOwnProperty.call(e,"id")?r="id":Object.prototype.hasOwnProperty.call(e,"featureID")&&(r="featureID"),!r)return{};const o=String(t||"feature").replace(/[^a-z0-9._-]+/gi,"_");return{[r]:`${o}-capture`}}i(l,"buildFeatureParams");
@@ -1 +1 @@
1
- var Gt=Object.defineProperty;var $=(e,o)=>Gt(e,"name",{value:o,configurable:!0});import{bc as Kt,V as me,aF as Yt,bd as tt,aD as ht,be as wt,bf as Ht,bg as Xt,bh as at,bi as ct,bj as vt,bk as ve,bl as $e,a as Je,bm as $t}from"./featureDialogs-CUWi02Qp.js";import{aQ as mn}from"./featureDialogs-CUWi02Qp.js";import{Tube as Dt}from"./Tube-bO80ROeR.js";import"./browserStorage-CvgF8ovw.js";import"./preload-helper-ZNr0Qq7Q.js";function _t(e){if(!Array.isArray(e)||e.length===0)return 0;let o=0;for(const u of e){const n=u?.p1,t=u?.p2,c=u?.p3;if(!Array.isArray(n)||!Array.isArray(t)||!Array.isArray(c))continue;const l=Number(n[0])||0,E=Number(n[1])||0,F=Number(n[2])||0,N=Number(t[0])||0,v=Number(t[1])||0,S=Number(t[2])||0,y=Number(c[0])||0,A=Number(c[1])||0,z=Number(c[2])||0;o+=Kt(l,E,F,N,v,S,y,A,z)}return o}$(_t,"computeFaceAreaFromTriangles");const Zt=new me,jt=new me,Qt=new me;function lt(e,o,u,n,t,c,l,E,F){const N=u.dot(n)+t*F,v=c.dot(l)+E*F,S=o.dot(e),y=Zt.copy(c).cross(o),A=jt.copy(o).cross(u),z=Qt.copy(u).cross(c),h=u.dot(y);if(!Number.isFinite(h)||Math.abs(h)<1e-14){const O=[[u.x,u.y,u.z],[c.x,c.y,c.z],[o.x,o.y,o.z]],V=Jt(O,[N,v,S]);return V?new me(V[0],V[1],V[2]):null}const w=y.multiplyScalar(N).add(A.multiplyScalar(v)).add(z.multiplyScalar(S));return new me(w.x/h,w.y/h,w.z/h)}$(lt,"solveCenterFromOffsetPlanesAnchored");function Jt(e,o){const n=e.map(l=>[...l]),t=[...o];for(let l=0;l<3;l++){let E=l;for(let F=l+1;F<3;F++)Math.abs(n[F][l])>Math.abs(n[E][l])&&(E=F);if(E!==l&&([n[l],n[E]]=[n[E],n[l]],[t[l],t[E]]=[t[E],t[l]]),Math.abs(n[l][l])<1e-12)return null;for(let F=l+1;F<3;F++){const N=n[F][l]/n[l][l];for(let v=l;v<3;v++)n[F][v]-=N*n[l][v];t[F]-=N*t[l]}}const c=new Array(3);for(let l=2;l>=0;l--){c[l]=t[l];for(let E=l+1;E<3;E++)c[l]-=n[l][E]*c[E];c[l]/=n[l][l]}return c}$(Jt,"solve3");function en(e="INSET"){return String(e||"INSET").toUpperCase()==="OUTSET"?"OUTSET":"INSET"}$(en,"normalizeFilletSideMode");function Lt(e="INSET"){const o=en(e),u=o==="OUTSET";return{mode:o,isOutset:u,isInset:!u,preferOutsetCenter:u,bisectorFlipForOutset:u,defaultWedgeOffsetSign:u?1:-1,useInsideCheckForWedge:u,applyOpenEndCapPush:!u}}$(Lt,"createFilletSidePolicy");function Tt(e,o,u,n={}){const t=String(n.marker||"").trim(),c=String(n.label||"CENTERLINE").trim(),l=String(n.materialKey||"YELLOW").trim(),E=String(n.auxName||c).trim(),F=String(n.nameSuffix||c).trim(),N=String(n.successMessage||"").trim(),v=String(n.failureMessage||"").trim(),S=t?`${t} `:"";if(!Array.isArray(o)||o.length<2)return;console.log(`${S}${c}:`);const y=new ht;y.name=`${e}_${F}`;for(let z=0;z<o.length-1;z++){const h=o[z],w=o[z+1];console.log(` Segment ${z}: (${h.x.toFixed(3)}, ${h.y.toFixed(3)}, ${h.z.toFixed(3)}) → (${w.x.toFixed(3)}, ${w.y.toFixed(3)}, ${w.z.toFixed(3)})`)}const A=o.map(z=>[z.x,z.y,z.z]);y.addAuxEdge(E,A,{materialKey:l,closedLoop:!!u,lineWidth:3});try{y.visualize(),N&&console.log(N)}catch(z){v&&console.warn(v,z?.message||z)}}$(Tt,"visualizeCenterlineDebug");function dt(e){const o=[];if(!Array.isArray(e))return o;for(const u of e)u?.p1&&o.push(u.p1),u?.p2&&o.push(u.p2),u?.p3&&o.push(u.p3);return o}$(dt,"collectFaceVertices");function Bt({tube:e=null,wedge:o=null,finalSolid:u=null,centerline:n=[],tangentA:t=[],tangentB:c=[],edge:l=[],edgeWedge:E=[],tangentASeam:F=[],tangentBSeam:N=[],tubeCapPointsBeforeNudge:v={start:[],end:[]},error:S=null}={}){const y={tube:e,wedge:o,finalSolid:u,centerline:n,tangentA:t,tangentB:c,edge:l,edgeWedge:E,tangentASeam:F,tangentBSeam:N,tubeCapPointsBeforeNudge:v};return S!=null&&(y.error=String(S)),y}$(Bt,"createFilletResultPayload");function Rt(e){if(Array.isArray(e)&&e.length>=3){const o=Number(e[0]),u=Number(e[1]),n=Number(e[2]);return Number.isFinite(o)&&Number.isFinite(u)&&Number.isFinite(n)?[o,u,n]:null}if(e&&typeof e=="object"){const o=Number(e.x),u=Number(e.y),n=Number(e.z);if(Number.isFinite(o)&&Number.isFinite(u)&&Number.isFinite(n))return[o,u,n]}return null}$(Rt,"point3ArrayFromAny");function ut(e,o,u=1e-14){if(!Array.isArray(e))return;const n=Rt(o);if(!n)return;const t=n[0],c=n[1],l=n[2];for(let E=0;E<e.length;E++){const F=e[E],N=t-F[0],v=c-F[1],S=l-F[2];if(N*N+v*v+S*S<=u)return}e.push([t,c,l])}$(ut,"pushUniquePoint3Array");function Ct(e,o,u=1e-7){if(!e||typeof e.getFace!="function"||!o)return[];const n=e.getFace(o);if(!Array.isArray(n)||n.length===0)return[];const t=[],c=Math.max(1e-12,Math.abs(Number(u)||1e-7)),l=c*c;for(const E of n)ut(t,E?.p1,l),ut(t,E?.p2,l),ut(t,E?.p3,l);return t}$(Ct,"collectUniqueFacePointArrays");function tn(e,o,u,n){const t=Array.isArray(e)?e.map(Rt).filter(Boolean):[];if(t.length<2)return{start:[],end:[]};const c=String(n||"FILLET_TUBE_CAP_CAPTURE");let l=null;try{return l=new Dt({points:t,radius:Number(o)||0,innerRadius:0,resolution:Number.isFinite(Number(u))?Math.max(8,Math.floor(Number(u))):16,selfUnion:!0,name:c}),{start:Ct(l,`${c}_CapStart`,1e-7),end:Ct(l,`${c}_CapEnd`,1e-7)}}catch{return{start:[],end:[]}}finally{try{l?.free?.()}catch{}}}$(tn,"captureOpenTubeCapPointsForPath");function nn(e,o=1e-9){const u=Array.isArray(e)?e:[];if(u.length===0)return[];const n=Number.isFinite(o)?Math.max(1e-12,Math.abs(o)):1e-9,t=n*n,c=[];for(let y=0;y<u.length;y++){const A=u[y];if(!Array.isArray(A)||A.length<3)continue;const z=Number(A[0]),h=Number(A[1]),w=Number(A[2]);!Number.isFinite(z)||!Number.isFinite(h)||!Number.isFinite(w)||c.push([z,h,w])}if(c.length===0)return[];const l=[];for(let y=0;y<c.length;y++){const A=c[y],z=A[0],h=A[1],w=A[2];if(l.length>0){const O=l[l.length-1],L=z-O[0],V=h-O[1],Y=w-O[2];if(L*L+V*V+Y*Y<=t)continue}l.push([z,h,w])}if(l.length<3)return l;let E=0,F=0;for(let y=1;y<l.length;y++){const A=l[y-1],z=l[y],h=Math.hypot(z[0]-A[0],z[1]-A[1],z[2]-A[2]);!Number.isFinite(h)||h<=0||(E+=h,h>F&&(F=h))}const N=Math.max(n,E*1e-7,F*1e-6),v=N*N;if(v<=t)return l;const S=[];for(let y=0;y<l.length;y++){const A=l[y];if(S.length===0){S.push(A);continue}const z=S[S.length-1],h=A[0]-z[0],w=A[1]-z[1],O=A[2]-z[2];h*h+w*w+O*O<=v||S.push(A)}return S.length>=2?S:l}$(nn,"sanitizeFilletInputPolyline");function kt(e,o){if(!Array.isArray(e)||e.length===0||!o)return null;let u=1/0,n=-1/0;for(const t of e){const c=t[0],l=t[1],E=t[2],F=c*o.x+l*o.y+E*o.z;F<u&&(u=F),F>n&&(n=F)}return!Number.isFinite(u)||!Number.isFinite(n)?null:{min:u,max:n}}$(kt,"computeProjectionRange");function re(e){return!!e&&Number.isFinite(e.x)&&Number.isFinite(e.y)&&Number.isFinite(e.z)}$(re,"isFiniteFilletPoint");function nt(e){return re(e)?{x:e.x,y:e.y,z:e.z}:{x:0,y:0,z:0}}$(nt,"cloneFilletPoint");function ke(e,o=null){const u=Array.isArray(e)?e:[],n=Number.isInteger(o)?Math.max(0,Math.min(u.length,o)):u.length,t=new Array(n);for(let c=0;c<n;c++)t[c]=nt(u[c]);return t}$(ke,"cloneFilletPolyline");function It(e,o,u=1e-9){if(!re(e)||!re(o))return!1;const n=e.x-o.x,t=e.y-o.y,c=e.z-o.z;return n*n+t*t+c*c<=u*u}$(It,"filletPointsMatchWithinTolerance");function ft(e,o){const u=Array.isArray(e)?e:[],n=Array.isArray(o)?o:[],t=Math.min(u.length,n.length);if(t<2)return{checkedSegments:0,backtrackingSegments:0,worstCos:1};let c=0,l=0,E=1;for(let F=0;F<t-1;F++){const N=u[F],v=u[F+1],S=n[F],y=n[F+1];if(!re(N)||!re(v)||!re(S)||!re(y))continue;const A=v.x-N.x,z=v.y-N.y,h=v.z-N.z,w=y.x-S.x,O=y.y-S.y,L=y.z-S.z,V=Math.hypot(A,z,h),Y=Math.hypot(w,O,L);if(!(V>1e-12)||!(Y>1e-12))continue;c++;const I=(A*w+z*O+h*L)/(V*Y);I<E&&(E=I),I<-1e-6&&l++}return{checkedSegments:c,backtrackingSegments:l,worstCos:E}}$(ft,"filletPolylineBacktrackingStats");function sn(e,o={}){const u=Array.isArray(e)?e:[],n=u.length,t=Number(o?.strength),c=Number.isFinite(t)?Math.max(0,Math.min(1,t)):1;if(n<3||c<=0||!u.every(F=>re(F)))return ke(u);const l=1+Math.floor(c*2);let E=ke(u);for(let F=0;F<l;F++){const N=ke(E);let v=!1;for(let S=1;S<n-1;S++){const y=E[S-1],A=E[S],z=E[S+1];if(!re(y)||!re(A)||!re(z))continue;const h=A.x-y.x,w=A.y-y.y,O=A.z-y.z,L=z.x-A.x,V=z.y-A.y,Y=z.z-A.z,I=Math.hypot(h,w,O),_=Math.hypot(L,V,Y);if(!(I>1e-12)||!(_>1e-12))continue;const H=(h*L+w*V+O*Y)/(I*_),Z=Math.max(-1,Math.min(1,H)),ge=Math.max(0,(1-Z)*.5);if(ge<.01)continue;const xe=c*Math.sqrt(ge);if(!(xe>1e-6))continue;const P=(y.x+z.x)*.5,C=(y.y+z.y)*.5,U=(y.z+z.z)*.5;let D=(P-A.x)*xe,W=(C-A.y)*xe,k=(U-A.z)*xe;const G=Math.hypot(D,W,k);if(!(G>1e-12))continue;const X=Math.min(I,_)*.45;if(G>X&&X>1e-12){const j=X/G;D*=j,W*=j,k*=j}N[S]={x:A.x+D,y:A.y+W,z:A.z+k},v=!0}if(E=N,!v)break}return E}$(sn,"filletSmoothPolylineKinks");function Pt(e,o,u={}){const n=Array.isArray(e)?e:[],t=Array.isArray(o)?o:[],c=Math.min(n.length,t.length),l=ke(t,c);if(c<2)return{points:l,correctedSegments:0};const E=!!u?.lockEndpoints,F=Number.isFinite(Number(u?.passes))?Math.max(1,Math.min(8,Math.floor(Number(u.passes)))):4;let N=0;for(let v=0;v<F;v++){let S=!1;for(let y=0;y<c-1;y++){const A=n[y],z=n[y+1],h=l[y],w=l[y+1];if(!re(A)||!re(z)||!re(h)||!re(w))continue;const O=z.x-A.x,L=z.y-A.y,V=z.z-A.z,Y=Math.hypot(O,L,V);if(!(Y>1e-12))continue;const I=1/Y,_=O*I,H=L*I,Z=V*I,ge=w.x-h.x,xe=w.y-h.y,P=w.z-h.z,C=ge*_+xe*H+P*Z,U=Math.max(1e-10,Y*1e-6);if(C>=U)continue;const D=U-C,W=!E||y>0,k=!E||y+1<c-1;if(!(!W&&!k)){if(W&&k){const G=D*.5;h.x-=_*G,h.y-=H*G,h.z-=Z*G,w.x+=_*G,w.y+=H*G,w.z+=Z*G}else k?(w.x+=_*D,w.y+=H*D,w.z+=Z*D):(h.x-=_*D,h.y-=H*D,h.z-=Z*D);N++,S=!0}}if(!S)break}return{points:l,correctedSegments:N}}$(Pt,"filletEnforcePolylineForwardProgress");function et(e,o,u={}){const n=Array.isArray(e)?e:[],t=Array.isArray(o)?o:[],c=Math.min(n.length,t.length),l=!!u?.closedLoop,E=Number(u?.strength),F=Number.isFinite(E)?Math.max(0,Math.min(1,E)):1;if(c<2)return{points:ke(t,c),stats:{checkedSegments:0,backtrackingBefore:0,backtrackingAfter:0,worstCosBefore:1,worstCosAfter:1,correctedSegments:0}};const N=ke(t,c),v=ft(n,N);let S=F>0?sn(N,{strength:F}):ke(N);const y=Pt(n,S,{lockEndpoints:!0,passes:4});S=y.points;let A=y.correctedSegments;l&&S.length>=2&&It(N[0],N[N.length-1])&&(S[S.length-1]=nt(S[0]));let z=ft(n,S);if(z.backtrackingSegments>0){const h=Pt(n,S,{lockEndpoints:!1,passes:4});S=h.points,A+=h.correctedSegments,l&&S.length>=2&&It(N[0],N[N.length-1])&&(S[S.length-1]=nt(S[0])),z=ft(n,S)}if(t.length>c)for(let h=c;h<t.length;h++)S.push(nt(t[h]));return{points:S,stats:{checkedSegments:Math.max(v.checkedSegments,z.checkedSegments),backtrackingBefore:v.backtrackingSegments,backtrackingAfter:z.backtrackingSegments,worstCosBefore:v.worstCos,worstCosAfter:z.worstCos,correctedSegments:A}}}$(et,"sanitizeFilletTangentPolyline");function rn(e,o){return!re(e)||!re(o)?NaN:Math.hypot(e.x-o.x,e.y-o.y,e.z-o.z)}$(rn,"filletPointDistance");function gt(e){const o=(Array.isArray(e)?e:[]).filter(n=>Number.isFinite(n)).sort((n,t)=>n-t);if(!o.length)return NaN;const u=o.length/2|0;return o.length%2===1?o[u]:.5*(o[u-1]+o[u])}$(gt,"filletMedian");function yt(e,o,u,n){if(!Array.isArray(e)||!Array.isArray(o))return!1;const t=e[u],c=o[u],l=o[n];return!re(t)||!re(c)||!re(l)?!1:(e[n]={x:l.x+(t.x-c.x),y:l.y+(t.y-c.y),z:l.z+(t.z-c.z)},!0)}$(yt,"filletCopyOffsetSampleToEndpoint");function on(e,o,u,n,t=1){const c=Array.isArray(e)?e:[],l=Array.isArray(o)?o:[],E=Array.isArray(u)?u:[],F=Array.isArray(n)?n:[],N=Math.min(c.length,l.length,E.length,F.length);if(N<3)return{stabilized:0};const v=new Array(N);for(let L=0;L<N;L++)v[L]=rn(c[L],F[L]);const S=[];for(let L=1;L<N-1;L++){const V=v[L];Number.isFinite(V)&&V>1e-9&&S.push(V)}const y=v.filter(L=>Number.isFinite(L)&&L>1e-9),A=Number.isFinite(gt(S))?gt(S):gt(y);if(!(A>0))return{stabilized:0};const z=Math.max(0,Math.abs(Number(t)||0)),h=Math.max(A*2.25,z*2.5,A+Math.max(.5,z));let w=0;const O=$((L,V)=>{const Y=v[L],I=v[V];if(!(Number.isFinite(Y)?Y>h&&(!Number.isFinite(I)||Y>I*2.25):!0))return;const H=yt(c,F,V,L),Z=yt(l,F,V,L),ge=yt(E,F,V,L);H&&Z&&ge&&w++},"maybeStabilize");return O(0,1),O(N-1,N-2),{stabilized:w}}$(on,"stabilizeOpenFilletEndpoints");function xt(e,o=1,u="INSET"){const n={points:[],tangentA:[],tangentB:[],edge:[],closedLoop:!1};try{if(!e||!Number.isFinite(o)||o<=0)return n;const t=Lt(u),c=e.parentSolid||e.parent;if(!c)return n;const l=e.faces?.[0]||null,E=e.faces?.[1]||null,F=l?.name||e?.userData?.faceA||null,N=E?.name||e?.userData?.faceB||null,v=Array.isArray(e?.userData?.segmentFacePairs)?e.userData.segmentFacePairs:null,S=Array.isArray(v)&&v.length>0;if(!S&&(!F||!N))return n;const y=e.userData?.polylineLocal;if(!Array.isArray(y)||y.length<2)return n;const A=wt(o,1e-12),z=Ht(o),h=Xt(),w=wt(o,1e-14),O=nn(y,z);if(!Array.isArray(O)||O.length<2)return n;let L=null,V=null,Y=null,I=null,_=null,H=null,Z=null,ge=null,xe=null,P=null;const C=c.uuid||c.name||c.constructor.name;if(!S){if(L=at(c,F),V=at(c,N),!tt(L)||!tt(V)||(Y=c.getFace(F),I=c.getFace(N),!Array.isArray(Y)||!Y.length||!Array.isArray(I)||!I.length))return n;const i=Y.length>0?`${Y.length}_${Y[0].p1?.[0]?.toFixed(3)||0}`:"0",r=I.length>0?`${I.length}_${I[0].p1?.[0]?.toFixed(3)||0}`:"0";_=`${C}:${F}:${i}`,H=`${C}:${N}:${r}`,Z=ct(Y,_),ge=ct(I,H),xe=dt(Y),P=dt(I)}let U=!!(e.closedLoop||e.userData?.closedLoop);if(!U&&O.length>2){const i=O[0],r=O[O.length-1];if(i&&r){const d=i[0]-r[0],g=i[1]-r[1],a=i[2]-r[2],f=d*d+g*g+a*a,b=z*z;f<=b&&(U=!0)}}n.closedLoop=U;let D,W=null;{const i=O.slice();if(U&&i.length>2){const a=i[0],f=i[i.length-1];if(a&&f){const b=a[0]-f[0],M=a[1]-f[1],B=a[2]-f[2];b*b+M*M+B*B<=z*z&&i.pop()}}const r=[],d=[],g=S?Math.max(1,v.length):Math.max(1,U?i.length:i.length-1);for(let a=0;a<i.length;a++){const f=i[a],b=U?(a-1+g)%g:Math.max(0,Math.min(a-1,g-1)),M=U?a%g:Math.min(a,g-1);r.push(new me(f[0],f[1],f[2])),d.push(b);const B=a+1;if(U){const T=i[(a+1)%i.length],R=T[0]-f[0],de=T[1]-f[1],he=T[2]-f[2];R*R+de*de+he*he>z*z&&(r.push(new me(.5*(f[0]+T[0]),.5*(f[1]+T[1]),.5*(f[2]+T[2]))),d.push(M))}else if(B<i.length){const T=i[B],R=T[0]-f[0],de=T[1]-f[1],he=T[2]-f[2];R*R+de*de+he*he>z*z&&(r.push(new me(.5*(f[0]+T[0]),.5*(f[1]+T[1]),.5*(f[2]+T[2]))),d.push(M))}}D=r,S&&(W=d)}const k=D.length;let G=null,X=null,j=null,ue=null,Q=null;if(S){const i=new Map;Q=$(r=>{if(!r)return null;if(i.has(r))return i.get(r);const d=c.getFace(r);if(!Array.isArray(d)||!d.length)return null;const g=d.length>0?`${d.length}_${d[0].p1?.[0]?.toFixed(3)||0}`:"0",a=`${C}:${r}:${g}`,f=ct(d,a),b=at(c,r);if(!tt(b))return null;const M=dt(d),B={tris:d,data:f,key:a,avg:b,verts:M};return i.set(r,B),B},"getFaceEntry")}else{G=vt(Y,D,Z,_),X=vt(I,D,ge,H),j=new Array(k),ue=new Array(k);for(let i=0;i<k;i++)j[i]=ve(c,F,G[i],Z,_)||L,ue[i]=ve(c,N,X[i],ge,H)||V}const te=new me,ze=new me,Se=new me,ye=new me,De=new me,_e=new me,K=Math.max(A,o),ne=t.preferOutsetCenter;let Ie=1/0,Oe=0,ie=[],s=[],p=[],x=[];for(let i=0;i<k;i++){const r=D[i],d=U?D[(i-1+k)%k]:D[Math.max(0,i-1)],g=U?D[(i+1)%k]:D[Math.min(k-1,i+1)];if(te.copy(g).sub(d),te.lengthSq()<w)continue;te.normalize();let a=null,f=null,b=null,M=null,B=F,T=N,R=Z,de=ge,he=Y,We=I,Fe=_,Pe=H,Le=L,Ge=V,Ze=xe,je=P,mt=!0;if(S&&typeof Q=="function"){const oe=Array.isArray(W)?W[i]:0,q=v[oe]||v[v.length-1];if(q&&typeof q=="object"&&!Array.isArray(q)&&q.base&&q.sideA&&q.sideB){const fe=q.base,le=q.sideA,ee=q.sideB,J=Number.isFinite(q.t)?Math.max(0,Math.min(1,Number(q.t))):.5,ae=Q(fe),ce=Q(le),Ae=Q(ee);if(!ae||!ce||!Ae)continue;B=fe,R=ae.data,he=ae.tris,Fe=ae.key,Le=ae.avg,Ze=ae.verts;const Me=$e(he,r,R,Fe);b=ve(c,fe,Me,R,Fe)||Le,a=Me;const be=$e(ce.tris,r,ce.data,ce.key),Ee=$e(Ae.tris,r,Ae.data,Ae.key),we=ve(c,le,be,ce.data,ce.key)||ce.avg,it=ve(c,ee,Ee,Ae.data,Ae.key)||Ae.avg,Xe=we.clone().multiplyScalar(1-J).addScaledVector(it,J);M=Xe.lengthSq()>0?Xe.normalize():we.clone(),f=be.clone().lerp(Ee,J),T=le,de=ce.data,We=ce.tris,Pe=ce.key,Ge=ce.avg,je=ce.verts,mt=!1}else{const fe=Array.isArray(q)?q[0]:q?.faceA||q?.a||null,le=Array.isArray(q)?q[1]:q?.faceB||q?.b||null;if(!fe||!le)continue;B=fe,T=le;const ee=Q(B),J=Q(T);if(!ee||!J)continue;R=ee.data,de=J.data,he=ee.tris,We=J.tris,Fe=ee.key,Pe=J.key,Le=ee.avg,Ge=J.avg,Ze=ee.verts,je=J.verts,a=$e(he,r,R,Fe),f=$e(We,r,de,Pe),b=ve(c,B,a,R,Fe)||Le,M=ve(c,T,f,de,Pe)||Ge}}else a=G[i],f=X[i],b=j[i]||Le,M=ue[i]||Ge;const Ne=ze.copy(b).cross(te),Te=Se.copy(M).cross(te);if(Ne.lengthSq()<A||Te.lengthSq()<A)continue;Ne.normalize(),Te.normalize();const Re=Ne.clone(),Ke=new me().crossVectors(te,Re).normalize(),At=te.clone().cross(Ne).negate(),zt=te.clone().cross(Te).negate(),Ve=new Je(At.dot(Re),At.dot(Ke)),Ue=new Je(zt.dot(Re),zt.dot(Ke));if(Ve.lengthSq()<1e-16||Ue.lengthSq()<1e-16)continue;Ve.normalize(),Ue.normalize();const Vt=$t(Ve.x*Ue.x+Ve.y*Ue.y,-1,1),pt=Math.acos(Vt),st=Math.sin(.5*pt);if(Math.abs(st)<h)continue;let pe=new Je(Ve.x+Ue.x,Ve.y+Ue.y);const bt=pe.length();if(bt>1e-9?pe.multiplyScalar(1/bt):pe.set(0,0),Ze&&je){const oe=Math.tan(.5*pt);if(Number.isFinite(oe)&&oe>h&&pe.lengthSq()>1e-16){const q=ye.set(0,0,0).addScaledVector(Re,pe.x).addScaledVector(Ke,pe.y);ne&&q.negate();const fe=q.length();if(fe>1e-12){q.multiplyScalar(1/fe);const le=kt(Ze,Ne),ee=kt(je,Te);if(le&&ee){const J=r.x*Ne.x+r.y*Ne.y+r.z*Ne.z,ae=r.x*Te.x+r.y*Te.y+r.z*Te.z,ce=Math.sign(Ne.dot(q))||1,Ae=Math.sign(Te.dot(q))||1,Me=ce>=0?le.max-J:J-le.min,be=Ae>=0?ee.max-ae:ae-ee.min,Ee=Math.min(Me,be);if(Number.isFinite(Ee)&&Ee>A){const we=Ee*oe;Number.isFinite(we)&&we>A&&(we<Ie&&(Ie=we),Oe++)}}}}}const Ye=K/Math.abs(st),St=lt(r,te,b,a,-1,M,f,-1,K),Ft=lt(r,te,b,a,1,M,f,1,K),rt=_e.copy(b).add(M),ot=rt.length();ot>A&&rt.multiplyScalar(1/ot);let Qe=ne?"out":"in",se=null;if(St||Ft){const oe=ne?1:-1,q=$((J,ae)=>{if(!J)return{score:1/0,pick:ae,center:J};const ce=ae==="in"?-1:1,Ae=J.clone().addScaledVector(b,-ce*K),Me=J.clone().addScaledVector(M,-ce*K),be=$e(he,Ae,R,Fe),Ee=$e(We,Me,de,Pe),we=be?Ae.distanceTo(be):1/0,it=Ee?Me.distanceTo(Ee):1/0;let Xe=0;if(ot>A){const Wt=J.clone().sub(r),Et=Math.sign(Wt.dot(rt))||0;Et&&Et!==oe&&(Xe=K)}const Ot=Math.abs(J.distanceTo(r)-Ye);return{score:we+it+.2*Ot+Xe,pick:ae,center:J}},"scoreCandidate"),fe=q(St,"in"),le=q(Ft,"out"),ee=fe.score<=le.score?fe:le;Qe=ee.pick,se=ee.center}const qe=Qe==="in"?-1:1,He=qe;let Be=se?se.clone().addScaledVector(b,-qe*K):r.clone(),Ce=se?se.clone().addScaledVector(M,-He*K):r.clone();if(!se)if(pe.lengthSq()>A){const oe=ye.set(0,0,0).addScaledVector(Re,pe.x).addScaledVector(Ke,pe.y);Qe==="out"&&oe.negate(),oe.normalize(),se=r.clone().addScaledVector(oe,Ye)}else{const oe=_e.copy(b).add(M);if(oe.lengthSq()>A){oe.normalize();const q=Qe==="in"?-1:1;se=r.clone().addScaledVector(oe,q*Ye)}else continue}se&&(Be=se.clone().addScaledVector(b,-qe*K),Ce=se.clone().addScaledVector(M,-He*K));const Ut=se.distanceTo(r),qt=Math.abs(Ut-Ye)>.1*K,Nt=Math.abs(st)<.5,Mt=mt&&(qt||Nt)?Nt?2:1:0;if(Mt>0)try{for(let oe=0;oe<Mt;oe++){const q=$e(he,Be,R,Fe),fe=$e(We,Ce,de,Pe),le=ve(c,B,q,R,Fe)||Le,ee=ve(c,T,fe,de,Pe)||Ge,J=lt(r,te,le,q,qe,ee,fe,He,K);if(!J)break;const ae=se;if(se=J,b=le,M=ee,Be=se.clone().addScaledVector(b,-qe*K),Ce=se.clone().addScaledVector(M,-He*K),ae.distanceTo(se)<1e-6*Math.max(1,K))break}}catch{}{const oe=se.distanceTo(r),q=6*K,fe=3,le=(()=>{try{const ee=Be.clone().sub(r),J=Ce.clone().sub(r),ae=ee.length(),ce=J.length();if(ae>A&&ce>A){const Ae=$t(ee.dot(J)/(ae*ce),-1,1),Me=Math.acos(Ae),be=Math.sin(.5*Me);if(Math.abs(be)>h)return K/Math.abs(be)}}catch{}return Ye})();if(!Number.isFinite(oe)||oe>q||oe>fe*le){let ee=new Je(pe.x,pe.y);if(t.bisectorFlipForOutset&&ee.multiplyScalar(-1),ee.lengthSq()>1e-16){ee.normalize();const J=De.set(0,0,0).addScaledVector(Re,ee.x).addScaledVector(Ke,ee.y).normalize(),ae=Math.min(le,q);se=r.clone().addScaledVector(J,ae),Be=se.clone().addScaledVector(b,-qe*K),Ce=se.clone().addScaledVector(M,-He*K)}}}ie.push({x:se.x,y:se.y,z:se.z}),s.push({x:Be.x,y:Be.y,z:Be.z}),p.push({x:Ce.x,y:Ce.y,z:Ce.z}),x.push({x:r.x,y:r.y,z:r.z})}if(!U&&ie.length>=3&&s.length>=3&&p.length>=3&&x.length>=3)try{on(ie,s,p,x,K)}catch{}if(U&&ie.length>=2){const i=ie[0],r=ie[ie.length-1];if(!$((g,a)=>g.x===a.x&&g.y===a.y&&g.z===a.z,"exactlyEqual")(i,r)){if(ie.push({x:i.x,y:i.y,z:i.z}),s.length>0){const g=s[0];s.push({x:g.x,y:g.y,z:g.z})}if(p.length>0){const g=p[0];p.push({x:g.x,y:g.y,z:g.z})}if(x.length>0){const g=x[0];x.push({x:g.x,y:g.y,z:g.z})}}}const m=an(ie,s,p,o);if(m?.centerlineReversed&&(ie.reverse(),x.reverse()),m?.tangentAReversed&&s.reverse(),m?.tangentBReversed&&p.reverse(),!U&&ie.length>=2){const i=$((d,g,a)=>{if(!Array.isArray(d)||d.length<2)return 1/0;const f=d[0],b=d[d.length-1];if(!f||!b||!g||!a)return 1/0;const M=Math.hypot(f.x-g.x,f.y-g.y,f.z-g.z),B=Math.hypot(b.x-a.x,b.y-a.y,b.z-a.z);return M+B},"endpointCost"),r=$(d=>{if(!Array.isArray(d)||d.length<2)return;const g=ie[0],a=ie[ie.length-1],f=i(d,g,a);i(d,a,g)+1e-9<f&&d.reverse()},"alignPolylineToCenterlineEnds");r(s),r(p),r(x)}return n.points=ie,n.tangentA=s,n.tangentB=p,n.edge=x,Number.isFinite(Ie)&&Ie<K&&Oe>0&&(n.radiusClamp={requested:o,maxAllowed:Ie,samples:Oe}),n}catch(t){return console.warn("[computeFilletCenterline] failed:",t?.message||t),n}}$(xt,"computeFilletCenterline");function an(e,o,u,n=null){try{if(!Array.isArray(e)||!Array.isArray(o)||!Array.isArray(u))return{centerlineReversed:!1,tangentAReversed:!1,tangentBReversed:!1};const t=re,c=Math.min(e.length,o.length,u.length);if(c<3)return{centerlineReversed:!1,tangentAReversed:!1,tangentBReversed:!1};if(Number.isFinite(n)&&n>0){const P=$((G,X)=>{const j=X.x-G.x,ue=X.y-G.y,Q=X.z-G.z;return Math.hypot(j,ue,Q)},"dist"),C=[],U=$(G=>Math.max(0,Math.min(c-1,Math.round(G*(c-1)))),"idxFromT"),D=$(G=>{C.includes(G)||C.push(G)},"pushUnique");D(U(.25)),D(U(.5)),D(U(.75));const W=[[!1,!1,!1],[!1,!0,!1],[!1,!1,!0],[!0,!1,!1],[!0,!0,!1],[!0,!1,!0],[!1,!0,!0],[!0,!0,!0]];let k={cost:1/0,rc:!1,ra:!1,rb:!1};for(const[G,X,j]of W){let ue=0;for(const Q of C){const te=e[G?c-1-Q:Q],ze=o[X?c-1-Q:Q],Se=u[j?c-1-Q:Q],ye=P(te,ze),De=P(te,Se);ue+=Math.abs(ye-n)+Math.abs(De-n)}ue<k.cost&&(k={cost:ue,rc:G,ra:X,rb:j})}if(k.cost<1/0)return{centerlineReversed:k.rc,tangentAReversed:k.ra,tangentBReversed:k.rb}}const l=$(P=>{let C=0,U=0,D=0;for(let k=0;k<c-1;k++){const G=P[k],X=P[k+1];C+=X.x-G.x,U+=X.y-G.y,D+=X.z-G.z}const W=Math.hypot(C,U,D)||1;return{x:C/W,y:U/W,z:D/W}},"avgDir"),E=l(e),F=l(o),N=l(u),v=$((P,C)=>P.x*C.x+P.y*C.y+P.z*C.z,"dot");let S=!1,y=!1,A=!1;v(E,F)<0&&(y=!0),v(E,N)<0&&(A=!0),y&&A&&(S=!0,y=!1,A=!1);const z=Math.min(8,Math.floor(e.length/3)),h=[];for(let P=1;P<z-1;P++){const C=Math.floor(P*(e.length-2)/(z-1));C+1<e.length&&h.push(C)}let w=[],O=[],L=[];for(const P of h){if(P+1>=e.length)continue;const C=e[P],U=e[P+1],D=o[P],W=o[P+1],k=u[P],G=u[P+1];if(!t(C)||!t(U)||!t(D)||!t(W)||!t(k)||!t(G))continue;const X={x:U.x-C.x,y:U.y-C.y,z:U.z-C.z},j={x:W.x-D.x,y:W.y-D.y,z:W.z-D.z},ue={x:D.x-C.x,y:D.y-C.y,z:D.z-C.z},Q={x:k.x-C.x,y:k.y-C.y,z:k.z-C.z},te={x:k.x-D.x,y:k.y-D.y,z:k.z-D.z},ze={x:X.y*ue.z-X.z*ue.y,y:X.z*ue.x-X.x*ue.z,z:X.x*ue.y-X.y*ue.x},Se={x:X.y*Q.z-X.z*Q.y,y:X.z*Q.x-X.x*Q.z,z:X.x*Q.y-X.y*Q.x},ye={x:j.y*te.z-j.z*te.y,y:j.z*te.x-j.x*te.z,z:j.x*te.y-j.y*te.x};w.push(ze.z),O.push(Se.z),L.push(ye.z)}const V=w.filter(P=>isFinite(P)),Y=O.filter(P=>isFinite(P)),I=L.filter(P=>isFinite(P)),_=V.length>0?V.reduce((P,C)=>P+Math.sign(C),0)/V.length:0,H=Y.length>0?Y.reduce((P,C)=>P+Math.sign(C),0)/Y.length:0,Z=I.length>0?I.reduce((P,C)=>P+Math.sign(C),0)/I.length:0,ge=_>0!=H>0,xe=Z>.5;return ge&&!(S||y||A)?xe?S=!0:Math.abs(H)>Math.abs(_)?A=!0:y=!0:xe&&!(S||y||A)&&(A=!0),{centerlineReversed:S,tangentAReversed:y,tangentBReversed:A}}catch(t){return console.warn("Winding order analysis failed:",t?.message||t),{centerlineReversed:!1,tangentAReversed:!1,tangentBReversed:!1}}}$(an,"fixPolylineWinding");function gn(e,o,u=1,n="INSET",t="FILLET_CENTERLINE",c={}){try{if(!e||!o)return null;const l=xt(o,u,n);if(l&&Array.isArray(l.points)&&l.points.length>=2){const E={materialKey:"OVERLAY",closedLoop:!!l.closedLoop,...c||{}};return e.addAuxEdge(t,l.points,E),l}return null}catch(l){return console.warn("[attachFilletCenterlineAuxEdge] failed:",l?.message||l),null}}$(gn,"attachFilletCenterlineAuxEdge");function yn({edgeToFillet:e,radius:o=1,sideMode:u="INSET",debug:n=!1,name:t="fillet",inflate:c=.1,nudgeFaceDistance:l=1e-4,resolution:E=32,showTangentOverlays:F=!1}={}){try{if(!e)throw new Error("filletSolid: edgeToFillet is required");if(!Number.isFinite(o)||o<=0)throw new Error(`filletSolid: radius must be a positive number, got ${o}`);const N=Lt(u),v=N.mode,S=o;let y=o;const A=Number.isFinite(Number(E))&&Number(E)>0?Math.max(8,Math.floor(Number(E))):32,z=Number.isFinite(Number(l))?Number(l):1e-4,h=$((...s)=>{n&&console.log(...s)},"logDebug");h(`🔧 Starting fillet operation: edge=${e?.name||"unnamed"}, radius=${y}, side=${v}`);let w=xt(e,y,v);if(h("The fillet centerline result is:",w),!w)throw new Error("computeFilletCenterline returned null/undefined");if(w.radiusClamp&&Number.isFinite(w.radiusClamp.maxAllowed)){const s=w.radiusClamp.maxAllowed;if(s>0&&s<y*.999){const p=Math.max(s*.999,1e-9);if(p<y&&(console.warn("[filletSolid] Requested radius exceeds face extents; clamping.",{edge:e?.name||"unnamed",requested:y,clamped:p,maxAllowed:s}),y=p,w=xt(e,y,v),h("Recomputed fillet centerline with clamped radius:",y,w),!w))throw new Error("computeFilletCenterline returned null/undefined after radius clamp")}}const O=Array.isArray(w?.points)?w.points:[],L=Array.isArray(w?.tangentA)?w.tangentA:[],V=Array.isArray(w?.tangentB)?w.tangentB:[],Y=Array.isArray(w?.edge)?w.edge:[],I=!!w?.closedLoop;if(n)try{h("filletSolid: centerline/tangent edges computed")}catch{}const _=O.map(s=>({x:s.x,y:s.y,z:s.z}));let H=L.map(s=>({x:s.x,y:s.y,z:s.z})),Z=V.map(s=>({x:s.x,y:s.y,z:s.z}));const ge=1,xe=et(_,H,{closedLoop:I,strength:ge}),P=et(_,Z,{closedLoop:I,strength:ge});if(H=xe.points,Z=P.points,n)try{const s=xe.stats||{},p=P.stats||{},x=s.correctedSegments>0||s.backtrackingBefore>s.backtrackingAfter,m=p.correctedSegments>0||p.backtrackingBefore>p.backtrackingAfter;(x||m)&&h("Sanitized tangent polylines before wedge build.",{tangentA:s,tangentB:p})}catch{}const C=H.map(s=>({x:s.x,y:s.y,z:s.z})),U=Z.map(s=>({x:s.x,y:s.y,z:s.z})),D=Y.map(s=>({x:s.x,y:s.y,z:s.z})),W=D.map(s=>({x:s.x,y:s.y,z:s.z}));if(n&&_.length>=2&&Tt(t,_,I,{marker:"🟡",label:"ORIGINAL CENTERLINE (Yellow)",materialKey:"YELLOW",auxName:"ORIGINAL_CENTERLINE",nameSuffix:"ORIGINAL_CENTERLINE",successMessage:"🟡 Original centerline visualization created (Yellow)",failureMessage:"Failed to visualize original centerline:"}),h("Checking all polyline winding orders..."),_.length>=2){const s=_[0],p=_[1],x=_[_.length-1];h(`Centerline: start=(${s.x.toFixed(3)}, ${s.y.toFixed(3)}, ${s.z.toFixed(3)}) → (${p.x.toFixed(3)}, ${p.y.toFixed(3)}, ${p.z.toFixed(3)}) ... end=(${x.x.toFixed(3)}, ${x.y.toFixed(3)}, ${x.z.toFixed(3)})`)}const k=Number.isFinite(c)?Number(c):0,G=Math.abs(k)>1e-12;if(G){const s=Math.min(_.length,H.length,Z.length);for(let p=0;p<s;p++){const x=_[p],m=H[p],i=Z[p];if(x&&m){const r=m.x-x.x,d=m.y-x.y,g=m.z-x.z,a=Math.hypot(r,d,g);a>1e-12&&(m.x+=r/a*k,m.y+=d/a*k,m.z+=g/a*k)}if(x&&i){const r=i.x-x.x,d=i.y-x.y,g=i.z-x.z,a=Math.hypot(r,d,g);a>1e-12&&(i.x+=r/a*k,i.y+=d/a*k,i.z+=g/a*k)}}try{h(`Applied tangent offsetDistance=${k} to ${s} samples`)}catch{}}if(G){const s=et(_,H,{closedLoop:I,strength:0}),p=et(_,Z,{closedLoop:I,strength:0});if(H=s.points,Z=p.points,n)try{const x=s.stats||{},m=p.stats||{},i=x.correctedSegments>0||x.backtrackingBefore>x.backtrackingAfter,r=m.correctedSegments>0||m.backtrackingBefore>m.backtrackingAfter;(i||r)&&h("Applied post-offset tangent backtracking guard.",{tangentA:x,tangentB:m})}catch{}}const X=Math.max(1e-4,Math.min(.05,Math.abs(y)*.05)),j=I?0:N.isInset?Math.abs(c):X,Q=j&&N.useInsideCheckForWedge?Yt(e?.parentSolid||e?.parent||null):null;let te=null;if(j){const s=new Array(W.length);let p=0,x=0;for(let m=0;m<W.length;m++){const i=W[m],r=_[m]||_[_.length-1];if(!i||!r)continue;const d=r.x-i.x,g=r.y-i.y,a=r.z-i.z,f=Math.sqrt(d*d+g*g+a*a);if(f<=1e-12){console.warn(`Edge point ${m} is too close to centerline, skipping wedge inset`);continue}const b=d/f,M=g/f,B=a/f,T={x:i.x+b*j,y:i.y+M*j,z:i.z+B*j},R={x:i.x-b*j,y:i.y-M*j,z:i.z-B*j};let de=null,he=null;Q&&(de=Q(T),he=Q(R),de!==he&&(de?p++:x++)),s[m]={original:{...i},candidateIn:T,candidateOut:R,inInside:de,outInside:he}}Q&&(p||x)&&(te=p>=x?1:-1);for(let m=0;m<W.length;m++){const i=W[m],r=s[m];if(!(!i||!r))try{let d=null;Q&&r.inInside!==r.outInside&&(d=r.inInside?r.candidateIn:r.candidateOut),d||(d=(te!==null?te:N.defaultWedgeOffsetSign)>=0?r.candidateIn:r.candidateOut),i.x=d.x,i.y=d.y,i.z=d.z,tt(i)||(console.warn(`Invalid wedge edge point after inset at index ${m}, reverting to original`),Object.assign(i,r.original))}catch(d){console.warn(`Wedge edge inset failed at index ${m}: ${d?.message||d}`)}}}j&&h(`Applied wedge inset of ${j} units (inside-aware) to ${W.length} edge points`),n&&_.length>=2&&Tt(t,_,I,{marker:"🔵",label:"MANIPULATED CENTERLINE (Blue)",materialKey:"BLUE",auxName:"MANIPULATED_CENTERLINE",nameSuffix:"MANIPULATED_CENTERLINE",successMessage:"🔵 Manipulated centerline visualization created (Blue)",failureMessage:"Failed to visualize manipulated centerline:"}),h("centerlines all generated fine");const ze=Array.isArray(O)?O:[];let Se={start:[],end:[]};const ye=$(({tube:s=null,wedge:p=null,finalSolid:x=null,error:m=null}={})=>Bt({tube:s,wedge:p,finalSolid:x,centerline:_,tangentA:H,tangentB:Z,edge:D,edgeWedge:W,tangentASeam:C,tangentBSeam:U,tubeCapPointsBeforeNudge:Se,error:m}),"buildResult"),De=new Set,_e=$((s,p="face_name_set",x=!1)=>{const m=String(s||"").trim();if(m&&x){const i=`${p}:${m}`;if(De.has(i))return;De.add(i)}},"breakOnFaceNameSet");if(ze.length<2)return console.error("Insufficient centerline points for tube generation"),ye({error:"Insufficient centerline points for tube generation"});{const s=ze[0];if(!ze.some(m=>Math.abs(m.x-s.x)>1e-6||Math.abs(m.y-s.y)>1e-6||Math.abs(m.z-s.z)>1e-6))return console.error("Degenerate centerline: all points are identical"),ye({error:"Degenerate centerline: all points are identical"});const x=y*.01;for(let m=1;m<ze.length;m++){const i=ze[m],r=ze[m-1],d=Math.hypot(i.x-r.x,i.y-r.y,i.z-r.z);d<x&&console.warn(`Centerline points ${m-1} and ${m} are too close (distance: ${d}), this may cause tube generation issues`)}}let K=null;try{let s=ze.map(x=>[x.x,x.y,x.z]);if(I){if(h("Closed loop detected: preparing tube centerline..."),s.length>=2){const x=s[0];s.push([x[0],x[1],x[2]]),h("Closed loop: Added first point at end for tube generation")}}else if(h("Non-closed loop detected: preparing tube centerline..."),s.length>=2){try{Se=tn(s,y,A,`${t}_TUBE_PRE_NUDGE_CAPTURE`)}catch{Se={start:[],end:[]}}h("Non-closed loop: Extending tube centerline segments...");const x=.1,m=s[0],i=s[1],r=[m[0]-i[0],m[1]-i[1],m[2]-i[2]],d=Math.sqrt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]);if(d>1e-12){const B=[r[0]/d,r[1]/d,r[2]/d],T=[m[0]+B[0]*x,m[1]+B[1]*x,m[2]+B[2]*x];s[0]=T}const g=s.length-1,a=s[g],f=s[g-1],b=[a[0]-f[0],a[1]-f[1],a[2]-f[2]],M=Math.sqrt(b[0]*b[0]+b[1]*b[1]+b[2]*b[2]);if(M>1e-12){const B=[b[0]/M,b[1]/M,b[2]/M],T=[a[0]+B[0]*x,a[1]+B[1]*x,a[2]+B[2]*x];s[g]=T}h(`Extended tube centerline by ${x} units at both ends`)}const p=y;K=new Dt({points:s,radius:p,innerRadius:0,resolution:A,selfUnion:!0,name:`${t}_TUBE`});try{const x=`${t}_TUBE_Outer`,m={type:"pipe",source:"FilletFeature",featureID:t,inflatedRadius:p,pmiRadiusOverride:y,radiusOverride:y};if(S!==y&&(m.requestedRadius=S),e?.name&&(m.edgeReference=e.name),_e(x,"filletTube.setFaceMetadata"),K.setFaceMetadata(x,m),F){const i={materialKey:"OVERLAY",closedLoop:!!I};Array.isArray(C)&&C.length>=2&&K.addAuxEdge(`${t}_TANGENT_A_PATH`,C,i),Array.isArray(U)&&U.length>=2&&K.addAuxEdge(`${t}_TANGENT_B_PATH`,U,i)}if(!I){const i=x,r=$(d=>{const g=K.getFace(d),a=_t(g);a>0&&(_e(d,"filletTube.setFaceMetadata.cap"),K.setFaceMetadata(d,{filletSourceArea:a,filletRoundFace:i,filletEndCap:!0}))},"markTubeCap");r(`${t}_TUBE_CapStart`),r(`${t}_TUBE_CapEnd`)}}catch{}}catch(s){console.error("Tube creation failed:",s?.message||s);const p=new ht;return p.name=`${t}_FAILED_TUBE_DEBUG`,ye({wedge:p,error:`Tube generation failed: ${s?.message||s}`})}h("Creating wedge solid...");const ne=new ht;if(ne.name=`${t}_WEDGE`,I)try{const s=y*y*1e-8;let p=0,x=0;const m=$((d,g,a)=>{const f={x:g.x-d.x,y:g.y-d.y,z:g.z-d.z},b={x:a.x-d.x,y:a.y-d.y,z:a.z-d.z},M={x:f.y*b.z-f.z*b.y,y:f.z*b.x-f.x*b.z,z:f.x*b.y-f.y*b.x};return .5*Math.sqrt(M.x*M.x+M.y*M.y+M.z*M.z)>s},"isValidTriangle"),i=re,r=$((d,g,a,f)=>!i(g)||!i(a)||!i(f)?(console.warn(`Invalid points detected - p1:(${g.x},${g.y},${g.z}) p2:(${a.x},${a.y},${a.z}) p3:(${f.x},${f.y},${f.z})`),!1):(_e(d,"wedgeSolid.addTriangle.closed",!0),ne.addTriangle(d,[g.x,g.y,g.z],[a.x,a.y,a.z],[f.x,f.y,f.z]),!0),"addTriangleWithValidation");for(let d=0;d<_.length-1;d++){const g=_[d],a=_[d+1],f=H[d],b=H[d+1],M=Z[d],B=Z[d+1];m(g,f,a)&&r(`${t}_WEDGE_A`,g,f,a)?p++:x++,m(a,f,b)&&r(`${t}_WEDGE_A`,a,f,b)?p++:x++,m(g,a,M)&&r(`${t}_WEDGE_B`,g,a,M)?p++:x++,m(a,B,M)&&r(`${t}_WEDGE_B`,a,B,M)?p++:x++;const T=W[d],R=W[d+1];T&&R&&(m(T,f,R)&&r(`${t}_SIDE_A`,T,f,R)?p++:x++,m(R,f,b)&&r(`${t}_SIDE_A`,R,f,b)?p++:x++,m(T,R,M)&&r(`${t}_SIDE_B`,T,R,M)?p++:x++,m(R,B,M)&&r(`${t}_SIDE_B`,R,B,M)?p++:x++)}if(h(`Wedge triangles added successfully (closed loop): ${p} valid, ${x} skipped`),p===0)return console.error("No valid triangles could be created for wedge solid - all were degenerate"),ye({tube:K,wedge:ne,error:"No valid triangles could be created for wedge solid - all were degenerate"})}catch(s){return console.error("Failed to create wedge triangles (closed loop):",s?.message||s),ye({tube:K,wedge:ne,error:`Wedge triangle creation failed: ${s?.message||s}`})}else try{h("Creating wedge solid for non-closed loop...");const s=y*y*1e-8;let p=0,x=0;const m=$((d,g,a)=>{const f={x:g.x-d.x,y:g.y-d.y,z:g.z-d.z},b={x:a.x-d.x,y:a.y-d.y,z:a.z-d.z},M={x:f.y*b.z-f.z*b.y,y:f.z*b.x-f.x*b.z,z:f.x*b.y-f.y*b.x};return .5*Math.sqrt(M.x*M.x+M.y*M.y+M.z*M.z)>s},"isValidTriangle"),i=re,r=$((d,g,a,f)=>!i(g)||!i(a)||!i(f)?(console.warn(`Invalid points detected - p1:(${g.x},${g.y},${g.z}) p2:(${a.x},${a.y},${a.z}) p3:(${f.x},${f.y},${f.z})`),!1):(_e(d,"wedgeSolid.addTriangle.open",!0),ne.addTriangle(d,[g.x,g.y,g.z],[a.x,a.y,a.z],[f.x,f.y,f.z]),!0),"addTriangleWithValidation");for(let d=0;d<_.length-1;d++){const g=_[d],a=_[d+1],f=H[d],b=H[d+1],M=Z[d],B=Z[d+1],T=W[d],R=W[d+1];m(g,a,f)&&r(`${t}_SURFACE_CA`,g,a,f)?p++:x++,m(a,b,f)&&r(`${t}_SURFACE_CA`,a,b,f)?p++:x++,m(g,M,a)&&r(`${t}_SURFACE_CB`,g,M,a)?p++:x++,m(a,M,B)&&r(`${t}_SURFACE_CB`,a,M,B)?p++:x++,T&&R&&(m(f,b,T)&&r(`${t}_FACE_A`,f,b,T)?p++:x++,m(b,R,T)&&r(`${t}_FACE_A`,b,R,T)?p++:x++,m(M,T,B)&&r(`${t}_FACE_B`,M,T,B)?p++:x++,m(B,T,R)&&r(`${t}_FACE_B`,B,T,R)?p++:x++)}if(_.length>=2){h("Adding end caps for non-closed loop...");const d=_[0],g=H[0],a=Z[0],f=W[0];f&&i(d)&&i(g)&&i(a)&&i(f)&&(m(d,a,g)&&r(`${t}_END_CAP_1`,d,a,g)?p++:x++,m(g,a,f)&&r(`${t}_END_CAP_1`,g,a,f)?p++:x++);const b=_.length-1,M=_[b],B=H[b],T=Z[b],R=W[b];R&&i(M)&&i(B)&&i(T)&&i(R)&&(m(M,B,T)&&r(`${t}_END_CAP_2`,M,B,T)?p++:x++,m(B,R,T)&&r(`${t}_END_CAP_2`,B,R,T)?p++:x++)}if(h(`Wedge triangles added successfully (non-closed loop): ${p} valid, ${x} skipped`),p===0)return console.error("No valid triangles could be created for non-closed wedge solid - all were degenerate"),ye({tube:K,wedge:ne,error:"No valid triangles could be created for non-closed wedge solid - all were degenerate"})}catch(s){return console.error("Failed to create wedge triangles (non-closed loop):",s?.message||s),ye({tube:K,wedge:ne,error:`Non-closed wedge triangle creation failed: ${s?.message||s}`})}try{ne.fixTriangleWindingsByAdjacency()}catch(s){console.warn("Triangle winding fix failed:",s?.message||s)}n&&console.log("Debug mode: wedge solid stored"),h("Wedge solid creation completed");const Ie=ne._triVerts?ne._triVerts.length/3:0;if(h("Wedge solid created with",Ie,"triangles (raw count)"),n)try{ne.visualize()}catch{}if(Math.abs(z)>1e-12&&(ne.pushFace(`${t}_FACE_A`,z,{warnMissing:!1}),ne.pushFace(`${t}_FACE_B`,z,{warnMissing:!1})),N.applyOpenEndCapPush&&!I){h("Applying end cap offset to INSET fillet using pushFace...");try{Math.abs(z)>1e-12?(ne.pushFace(`${t}_END_CAP_1`,z,{warnMissing:!1}),ne.pushFace(`${t}_END_CAP_2`,z,{warnMissing:!1}),h("End cap offset applied successfully")):h("Skipping end cap offset because nudgeFaceDistance is 0."),n&&ne.visualize()}catch(s){console.warn("Failed to apply end cap offset:",s?.message||s)}}const Oe=`${t}_TUBE_Outer`,ie=$((s,p=!1)=>{const x=ne.getFace(s),m=_t(x);m>0&&(_e(s,"wedgeSolid.setFaceMetadata"),ne.setFaceMetadata(s,{filletSourceArea:m,filletRoundFace:Oe,filletEndCap:!!p}))},"markFace");I||(ie(`${t}_END_CAP_1`,!0),ie(`${t}_END_CAP_2`,!0)),ie(`${t}_WEDGE_A`,!1),ie(`${t}_WEDGE_B`,!1);try{const s=ne.subtract(K);if(s.name=`${t}_FINAL_FILLET`,n)try{s.visualize()}catch{}return h("Final fillet solid created by subtracting tube from wedge",s),ye({tube:K,wedge:ne,finalSolid:s})}catch(s){return console.error("Boolean operation failed:",s?.message||s),ye({tube:K,wedge:ne,error:`Boolean operation failed: ${s?.message||s}`})}}catch(N){return console.error("Fillet operation failed completely:",N?.message||N),Bt({error:`Fillet operation failed: ${N?.message||N}`})}}$(yn,"filletSolid");export{gn as attachFilletCenterlineAuxEdge,mn as clearFilletCaches,xt as computeFilletCenterline,yn as filletSolid};
1
+ var Gt=Object.defineProperty;var $=(e,o)=>Gt(e,"name",{value:o,configurable:!0});import{bc as Kt,V as me,aF as Yt,bd as tt,aD as ht,be as wt,bf as Ht,bg as Xt,bh as at,bi as ct,bj as vt,bk as ve,bl as $e,a as Je,bm as $t}from"./featureDialogs-Bas0NDXF.js";import{aQ as mn}from"./featureDialogs-Bas0NDXF.js";import{Tube as Dt}from"./Tube-TKgrLSLm.js";import"./browserStorage-CvgF8ovw.js";import"./preload-helper-ZNr0Qq7Q.js";function _t(e){if(!Array.isArray(e)||e.length===0)return 0;let o=0;for(const u of e){const n=u?.p1,t=u?.p2,c=u?.p3;if(!Array.isArray(n)||!Array.isArray(t)||!Array.isArray(c))continue;const l=Number(n[0])||0,E=Number(n[1])||0,F=Number(n[2])||0,N=Number(t[0])||0,v=Number(t[1])||0,S=Number(t[2])||0,y=Number(c[0])||0,A=Number(c[1])||0,z=Number(c[2])||0;o+=Kt(l,E,F,N,v,S,y,A,z)}return o}$(_t,"computeFaceAreaFromTriangles");const Zt=new me,jt=new me,Qt=new me;function lt(e,o,u,n,t,c,l,E,F){const N=u.dot(n)+t*F,v=c.dot(l)+E*F,S=o.dot(e),y=Zt.copy(c).cross(o),A=jt.copy(o).cross(u),z=Qt.copy(u).cross(c),h=u.dot(y);if(!Number.isFinite(h)||Math.abs(h)<1e-14){const O=[[u.x,u.y,u.z],[c.x,c.y,c.z],[o.x,o.y,o.z]],V=Jt(O,[N,v,S]);return V?new me(V[0],V[1],V[2]):null}const w=y.multiplyScalar(N).add(A.multiplyScalar(v)).add(z.multiplyScalar(S));return new me(w.x/h,w.y/h,w.z/h)}$(lt,"solveCenterFromOffsetPlanesAnchored");function Jt(e,o){const n=e.map(l=>[...l]),t=[...o];for(let l=0;l<3;l++){let E=l;for(let F=l+1;F<3;F++)Math.abs(n[F][l])>Math.abs(n[E][l])&&(E=F);if(E!==l&&([n[l],n[E]]=[n[E],n[l]],[t[l],t[E]]=[t[E],t[l]]),Math.abs(n[l][l])<1e-12)return null;for(let F=l+1;F<3;F++){const N=n[F][l]/n[l][l];for(let v=l;v<3;v++)n[F][v]-=N*n[l][v];t[F]-=N*t[l]}}const c=new Array(3);for(let l=2;l>=0;l--){c[l]=t[l];for(let E=l+1;E<3;E++)c[l]-=n[l][E]*c[E];c[l]/=n[l][l]}return c}$(Jt,"solve3");function en(e="INSET"){return String(e||"INSET").toUpperCase()==="OUTSET"?"OUTSET":"INSET"}$(en,"normalizeFilletSideMode");function Lt(e="INSET"){const o=en(e),u=o==="OUTSET";return{mode:o,isOutset:u,isInset:!u,preferOutsetCenter:u,bisectorFlipForOutset:u,defaultWedgeOffsetSign:u?1:-1,useInsideCheckForWedge:u,applyOpenEndCapPush:!u}}$(Lt,"createFilletSidePolicy");function Tt(e,o,u,n={}){const t=String(n.marker||"").trim(),c=String(n.label||"CENTERLINE").trim(),l=String(n.materialKey||"YELLOW").trim(),E=String(n.auxName||c).trim(),F=String(n.nameSuffix||c).trim(),N=String(n.successMessage||"").trim(),v=String(n.failureMessage||"").trim(),S=t?`${t} `:"";if(!Array.isArray(o)||o.length<2)return;console.log(`${S}${c}:`);const y=new ht;y.name=`${e}_${F}`;for(let z=0;z<o.length-1;z++){const h=o[z],w=o[z+1];console.log(` Segment ${z}: (${h.x.toFixed(3)}, ${h.y.toFixed(3)}, ${h.z.toFixed(3)}) → (${w.x.toFixed(3)}, ${w.y.toFixed(3)}, ${w.z.toFixed(3)})`)}const A=o.map(z=>[z.x,z.y,z.z]);y.addAuxEdge(E,A,{materialKey:l,closedLoop:!!u,lineWidth:3});try{y.visualize(),N&&console.log(N)}catch(z){v&&console.warn(v,z?.message||z)}}$(Tt,"visualizeCenterlineDebug");function dt(e){const o=[];if(!Array.isArray(e))return o;for(const u of e)u?.p1&&o.push(u.p1),u?.p2&&o.push(u.p2),u?.p3&&o.push(u.p3);return o}$(dt,"collectFaceVertices");function Bt({tube:e=null,wedge:o=null,finalSolid:u=null,centerline:n=[],tangentA:t=[],tangentB:c=[],edge:l=[],edgeWedge:E=[],tangentASeam:F=[],tangentBSeam:N=[],tubeCapPointsBeforeNudge:v={start:[],end:[]},error:S=null}={}){const y={tube:e,wedge:o,finalSolid:u,centerline:n,tangentA:t,tangentB:c,edge:l,edgeWedge:E,tangentASeam:F,tangentBSeam:N,tubeCapPointsBeforeNudge:v};return S!=null&&(y.error=String(S)),y}$(Bt,"createFilletResultPayload");function Rt(e){if(Array.isArray(e)&&e.length>=3){const o=Number(e[0]),u=Number(e[1]),n=Number(e[2]);return Number.isFinite(o)&&Number.isFinite(u)&&Number.isFinite(n)?[o,u,n]:null}if(e&&typeof e=="object"){const o=Number(e.x),u=Number(e.y),n=Number(e.z);if(Number.isFinite(o)&&Number.isFinite(u)&&Number.isFinite(n))return[o,u,n]}return null}$(Rt,"point3ArrayFromAny");function ut(e,o,u=1e-14){if(!Array.isArray(e))return;const n=Rt(o);if(!n)return;const t=n[0],c=n[1],l=n[2];for(let E=0;E<e.length;E++){const F=e[E],N=t-F[0],v=c-F[1],S=l-F[2];if(N*N+v*v+S*S<=u)return}e.push([t,c,l])}$(ut,"pushUniquePoint3Array");function Ct(e,o,u=1e-7){if(!e||typeof e.getFace!="function"||!o)return[];const n=e.getFace(o);if(!Array.isArray(n)||n.length===0)return[];const t=[],c=Math.max(1e-12,Math.abs(Number(u)||1e-7)),l=c*c;for(const E of n)ut(t,E?.p1,l),ut(t,E?.p2,l),ut(t,E?.p3,l);return t}$(Ct,"collectUniqueFacePointArrays");function tn(e,o,u,n){const t=Array.isArray(e)?e.map(Rt).filter(Boolean):[];if(t.length<2)return{start:[],end:[]};const c=String(n||"FILLET_TUBE_CAP_CAPTURE");let l=null;try{return l=new Dt({points:t,radius:Number(o)||0,innerRadius:0,resolution:Number.isFinite(Number(u))?Math.max(8,Math.floor(Number(u))):16,selfUnion:!0,name:c}),{start:Ct(l,`${c}_CapStart`,1e-7),end:Ct(l,`${c}_CapEnd`,1e-7)}}catch{return{start:[],end:[]}}finally{try{l?.free?.()}catch{}}}$(tn,"captureOpenTubeCapPointsForPath");function nn(e,o=1e-9){const u=Array.isArray(e)?e:[];if(u.length===0)return[];const n=Number.isFinite(o)?Math.max(1e-12,Math.abs(o)):1e-9,t=n*n,c=[];for(let y=0;y<u.length;y++){const A=u[y];if(!Array.isArray(A)||A.length<3)continue;const z=Number(A[0]),h=Number(A[1]),w=Number(A[2]);!Number.isFinite(z)||!Number.isFinite(h)||!Number.isFinite(w)||c.push([z,h,w])}if(c.length===0)return[];const l=[];for(let y=0;y<c.length;y++){const A=c[y],z=A[0],h=A[1],w=A[2];if(l.length>0){const O=l[l.length-1],L=z-O[0],V=h-O[1],Y=w-O[2];if(L*L+V*V+Y*Y<=t)continue}l.push([z,h,w])}if(l.length<3)return l;let E=0,F=0;for(let y=1;y<l.length;y++){const A=l[y-1],z=l[y],h=Math.hypot(z[0]-A[0],z[1]-A[1],z[2]-A[2]);!Number.isFinite(h)||h<=0||(E+=h,h>F&&(F=h))}const N=Math.max(n,E*1e-7,F*1e-6),v=N*N;if(v<=t)return l;const S=[];for(let y=0;y<l.length;y++){const A=l[y];if(S.length===0){S.push(A);continue}const z=S[S.length-1],h=A[0]-z[0],w=A[1]-z[1],O=A[2]-z[2];h*h+w*w+O*O<=v||S.push(A)}return S.length>=2?S:l}$(nn,"sanitizeFilletInputPolyline");function kt(e,o){if(!Array.isArray(e)||e.length===0||!o)return null;let u=1/0,n=-1/0;for(const t of e){const c=t[0],l=t[1],E=t[2],F=c*o.x+l*o.y+E*o.z;F<u&&(u=F),F>n&&(n=F)}return!Number.isFinite(u)||!Number.isFinite(n)?null:{min:u,max:n}}$(kt,"computeProjectionRange");function re(e){return!!e&&Number.isFinite(e.x)&&Number.isFinite(e.y)&&Number.isFinite(e.z)}$(re,"isFiniteFilletPoint");function nt(e){return re(e)?{x:e.x,y:e.y,z:e.z}:{x:0,y:0,z:0}}$(nt,"cloneFilletPoint");function ke(e,o=null){const u=Array.isArray(e)?e:[],n=Number.isInteger(o)?Math.max(0,Math.min(u.length,o)):u.length,t=new Array(n);for(let c=0;c<n;c++)t[c]=nt(u[c]);return t}$(ke,"cloneFilletPolyline");function It(e,o,u=1e-9){if(!re(e)||!re(o))return!1;const n=e.x-o.x,t=e.y-o.y,c=e.z-o.z;return n*n+t*t+c*c<=u*u}$(It,"filletPointsMatchWithinTolerance");function ft(e,o){const u=Array.isArray(e)?e:[],n=Array.isArray(o)?o:[],t=Math.min(u.length,n.length);if(t<2)return{checkedSegments:0,backtrackingSegments:0,worstCos:1};let c=0,l=0,E=1;for(let F=0;F<t-1;F++){const N=u[F],v=u[F+1],S=n[F],y=n[F+1];if(!re(N)||!re(v)||!re(S)||!re(y))continue;const A=v.x-N.x,z=v.y-N.y,h=v.z-N.z,w=y.x-S.x,O=y.y-S.y,L=y.z-S.z,V=Math.hypot(A,z,h),Y=Math.hypot(w,O,L);if(!(V>1e-12)||!(Y>1e-12))continue;c++;const I=(A*w+z*O+h*L)/(V*Y);I<E&&(E=I),I<-1e-6&&l++}return{checkedSegments:c,backtrackingSegments:l,worstCos:E}}$(ft,"filletPolylineBacktrackingStats");function sn(e,o={}){const u=Array.isArray(e)?e:[],n=u.length,t=Number(o?.strength),c=Number.isFinite(t)?Math.max(0,Math.min(1,t)):1;if(n<3||c<=0||!u.every(F=>re(F)))return ke(u);const l=1+Math.floor(c*2);let E=ke(u);for(let F=0;F<l;F++){const N=ke(E);let v=!1;for(let S=1;S<n-1;S++){const y=E[S-1],A=E[S],z=E[S+1];if(!re(y)||!re(A)||!re(z))continue;const h=A.x-y.x,w=A.y-y.y,O=A.z-y.z,L=z.x-A.x,V=z.y-A.y,Y=z.z-A.z,I=Math.hypot(h,w,O),_=Math.hypot(L,V,Y);if(!(I>1e-12)||!(_>1e-12))continue;const H=(h*L+w*V+O*Y)/(I*_),Z=Math.max(-1,Math.min(1,H)),ge=Math.max(0,(1-Z)*.5);if(ge<.01)continue;const xe=c*Math.sqrt(ge);if(!(xe>1e-6))continue;const P=(y.x+z.x)*.5,C=(y.y+z.y)*.5,U=(y.z+z.z)*.5;let D=(P-A.x)*xe,W=(C-A.y)*xe,k=(U-A.z)*xe;const G=Math.hypot(D,W,k);if(!(G>1e-12))continue;const X=Math.min(I,_)*.45;if(G>X&&X>1e-12){const j=X/G;D*=j,W*=j,k*=j}N[S]={x:A.x+D,y:A.y+W,z:A.z+k},v=!0}if(E=N,!v)break}return E}$(sn,"filletSmoothPolylineKinks");function Pt(e,o,u={}){const n=Array.isArray(e)?e:[],t=Array.isArray(o)?o:[],c=Math.min(n.length,t.length),l=ke(t,c);if(c<2)return{points:l,correctedSegments:0};const E=!!u?.lockEndpoints,F=Number.isFinite(Number(u?.passes))?Math.max(1,Math.min(8,Math.floor(Number(u.passes)))):4;let N=0;for(let v=0;v<F;v++){let S=!1;for(let y=0;y<c-1;y++){const A=n[y],z=n[y+1],h=l[y],w=l[y+1];if(!re(A)||!re(z)||!re(h)||!re(w))continue;const O=z.x-A.x,L=z.y-A.y,V=z.z-A.z,Y=Math.hypot(O,L,V);if(!(Y>1e-12))continue;const I=1/Y,_=O*I,H=L*I,Z=V*I,ge=w.x-h.x,xe=w.y-h.y,P=w.z-h.z,C=ge*_+xe*H+P*Z,U=Math.max(1e-10,Y*1e-6);if(C>=U)continue;const D=U-C,W=!E||y>0,k=!E||y+1<c-1;if(!(!W&&!k)){if(W&&k){const G=D*.5;h.x-=_*G,h.y-=H*G,h.z-=Z*G,w.x+=_*G,w.y+=H*G,w.z+=Z*G}else k?(w.x+=_*D,w.y+=H*D,w.z+=Z*D):(h.x-=_*D,h.y-=H*D,h.z-=Z*D);N++,S=!0}}if(!S)break}return{points:l,correctedSegments:N}}$(Pt,"filletEnforcePolylineForwardProgress");function et(e,o,u={}){const n=Array.isArray(e)?e:[],t=Array.isArray(o)?o:[],c=Math.min(n.length,t.length),l=!!u?.closedLoop,E=Number(u?.strength),F=Number.isFinite(E)?Math.max(0,Math.min(1,E)):1;if(c<2)return{points:ke(t,c),stats:{checkedSegments:0,backtrackingBefore:0,backtrackingAfter:0,worstCosBefore:1,worstCosAfter:1,correctedSegments:0}};const N=ke(t,c),v=ft(n,N);let S=F>0?sn(N,{strength:F}):ke(N);const y=Pt(n,S,{lockEndpoints:!0,passes:4});S=y.points;let A=y.correctedSegments;l&&S.length>=2&&It(N[0],N[N.length-1])&&(S[S.length-1]=nt(S[0]));let z=ft(n,S);if(z.backtrackingSegments>0){const h=Pt(n,S,{lockEndpoints:!1,passes:4});S=h.points,A+=h.correctedSegments,l&&S.length>=2&&It(N[0],N[N.length-1])&&(S[S.length-1]=nt(S[0])),z=ft(n,S)}if(t.length>c)for(let h=c;h<t.length;h++)S.push(nt(t[h]));return{points:S,stats:{checkedSegments:Math.max(v.checkedSegments,z.checkedSegments),backtrackingBefore:v.backtrackingSegments,backtrackingAfter:z.backtrackingSegments,worstCosBefore:v.worstCos,worstCosAfter:z.worstCos,correctedSegments:A}}}$(et,"sanitizeFilletTangentPolyline");function rn(e,o){return!re(e)||!re(o)?NaN:Math.hypot(e.x-o.x,e.y-o.y,e.z-o.z)}$(rn,"filletPointDistance");function gt(e){const o=(Array.isArray(e)?e:[]).filter(n=>Number.isFinite(n)).sort((n,t)=>n-t);if(!o.length)return NaN;const u=o.length/2|0;return o.length%2===1?o[u]:.5*(o[u-1]+o[u])}$(gt,"filletMedian");function yt(e,o,u,n){if(!Array.isArray(e)||!Array.isArray(o))return!1;const t=e[u],c=o[u],l=o[n];return!re(t)||!re(c)||!re(l)?!1:(e[n]={x:l.x+(t.x-c.x),y:l.y+(t.y-c.y),z:l.z+(t.z-c.z)},!0)}$(yt,"filletCopyOffsetSampleToEndpoint");function on(e,o,u,n,t=1){const c=Array.isArray(e)?e:[],l=Array.isArray(o)?o:[],E=Array.isArray(u)?u:[],F=Array.isArray(n)?n:[],N=Math.min(c.length,l.length,E.length,F.length);if(N<3)return{stabilized:0};const v=new Array(N);for(let L=0;L<N;L++)v[L]=rn(c[L],F[L]);const S=[];for(let L=1;L<N-1;L++){const V=v[L];Number.isFinite(V)&&V>1e-9&&S.push(V)}const y=v.filter(L=>Number.isFinite(L)&&L>1e-9),A=Number.isFinite(gt(S))?gt(S):gt(y);if(!(A>0))return{stabilized:0};const z=Math.max(0,Math.abs(Number(t)||0)),h=Math.max(A*2.25,z*2.5,A+Math.max(.5,z));let w=0;const O=$((L,V)=>{const Y=v[L],I=v[V];if(!(Number.isFinite(Y)?Y>h&&(!Number.isFinite(I)||Y>I*2.25):!0))return;const H=yt(c,F,V,L),Z=yt(l,F,V,L),ge=yt(E,F,V,L);H&&Z&&ge&&w++},"maybeStabilize");return O(0,1),O(N-1,N-2),{stabilized:w}}$(on,"stabilizeOpenFilletEndpoints");function xt(e,o=1,u="INSET"){const n={points:[],tangentA:[],tangentB:[],edge:[],closedLoop:!1};try{if(!e||!Number.isFinite(o)||o<=0)return n;const t=Lt(u),c=e.parentSolid||e.parent;if(!c)return n;const l=e.faces?.[0]||null,E=e.faces?.[1]||null,F=l?.name||e?.userData?.faceA||null,N=E?.name||e?.userData?.faceB||null,v=Array.isArray(e?.userData?.segmentFacePairs)?e.userData.segmentFacePairs:null,S=Array.isArray(v)&&v.length>0;if(!S&&(!F||!N))return n;const y=e.userData?.polylineLocal;if(!Array.isArray(y)||y.length<2)return n;const A=wt(o,1e-12),z=Ht(o),h=Xt(),w=wt(o,1e-14),O=nn(y,z);if(!Array.isArray(O)||O.length<2)return n;let L=null,V=null,Y=null,I=null,_=null,H=null,Z=null,ge=null,xe=null,P=null;const C=c.uuid||c.name||c.constructor.name;if(!S){if(L=at(c,F),V=at(c,N),!tt(L)||!tt(V)||(Y=c.getFace(F),I=c.getFace(N),!Array.isArray(Y)||!Y.length||!Array.isArray(I)||!I.length))return n;const i=Y.length>0?`${Y.length}_${Y[0].p1?.[0]?.toFixed(3)||0}`:"0",r=I.length>0?`${I.length}_${I[0].p1?.[0]?.toFixed(3)||0}`:"0";_=`${C}:${F}:${i}`,H=`${C}:${N}:${r}`,Z=ct(Y,_),ge=ct(I,H),xe=dt(Y),P=dt(I)}let U=!!(e.closedLoop||e.userData?.closedLoop);if(!U&&O.length>2){const i=O[0],r=O[O.length-1];if(i&&r){const d=i[0]-r[0],g=i[1]-r[1],a=i[2]-r[2],f=d*d+g*g+a*a,b=z*z;f<=b&&(U=!0)}}n.closedLoop=U;let D,W=null;{const i=O.slice();if(U&&i.length>2){const a=i[0],f=i[i.length-1];if(a&&f){const b=a[0]-f[0],M=a[1]-f[1],B=a[2]-f[2];b*b+M*M+B*B<=z*z&&i.pop()}}const r=[],d=[],g=S?Math.max(1,v.length):Math.max(1,U?i.length:i.length-1);for(let a=0;a<i.length;a++){const f=i[a],b=U?(a-1+g)%g:Math.max(0,Math.min(a-1,g-1)),M=U?a%g:Math.min(a,g-1);r.push(new me(f[0],f[1],f[2])),d.push(b);const B=a+1;if(U){const T=i[(a+1)%i.length],R=T[0]-f[0],de=T[1]-f[1],he=T[2]-f[2];R*R+de*de+he*he>z*z&&(r.push(new me(.5*(f[0]+T[0]),.5*(f[1]+T[1]),.5*(f[2]+T[2]))),d.push(M))}else if(B<i.length){const T=i[B],R=T[0]-f[0],de=T[1]-f[1],he=T[2]-f[2];R*R+de*de+he*he>z*z&&(r.push(new me(.5*(f[0]+T[0]),.5*(f[1]+T[1]),.5*(f[2]+T[2]))),d.push(M))}}D=r,S&&(W=d)}const k=D.length;let G=null,X=null,j=null,ue=null,Q=null;if(S){const i=new Map;Q=$(r=>{if(!r)return null;if(i.has(r))return i.get(r);const d=c.getFace(r);if(!Array.isArray(d)||!d.length)return null;const g=d.length>0?`${d.length}_${d[0].p1?.[0]?.toFixed(3)||0}`:"0",a=`${C}:${r}:${g}`,f=ct(d,a),b=at(c,r);if(!tt(b))return null;const M=dt(d),B={tris:d,data:f,key:a,avg:b,verts:M};return i.set(r,B),B},"getFaceEntry")}else{G=vt(Y,D,Z,_),X=vt(I,D,ge,H),j=new Array(k),ue=new Array(k);for(let i=0;i<k;i++)j[i]=ve(c,F,G[i],Z,_)||L,ue[i]=ve(c,N,X[i],ge,H)||V}const te=new me,ze=new me,Se=new me,ye=new me,De=new me,_e=new me,K=Math.max(A,o),ne=t.preferOutsetCenter;let Ie=1/0,Oe=0,ie=[],s=[],p=[],x=[];for(let i=0;i<k;i++){const r=D[i],d=U?D[(i-1+k)%k]:D[Math.max(0,i-1)],g=U?D[(i+1)%k]:D[Math.min(k-1,i+1)];if(te.copy(g).sub(d),te.lengthSq()<w)continue;te.normalize();let a=null,f=null,b=null,M=null,B=F,T=N,R=Z,de=ge,he=Y,We=I,Fe=_,Pe=H,Le=L,Ge=V,Ze=xe,je=P,mt=!0;if(S&&typeof Q=="function"){const oe=Array.isArray(W)?W[i]:0,q=v[oe]||v[v.length-1];if(q&&typeof q=="object"&&!Array.isArray(q)&&q.base&&q.sideA&&q.sideB){const fe=q.base,le=q.sideA,ee=q.sideB,J=Number.isFinite(q.t)?Math.max(0,Math.min(1,Number(q.t))):.5,ae=Q(fe),ce=Q(le),Ae=Q(ee);if(!ae||!ce||!Ae)continue;B=fe,R=ae.data,he=ae.tris,Fe=ae.key,Le=ae.avg,Ze=ae.verts;const Me=$e(he,r,R,Fe);b=ve(c,fe,Me,R,Fe)||Le,a=Me;const be=$e(ce.tris,r,ce.data,ce.key),Ee=$e(Ae.tris,r,Ae.data,Ae.key),we=ve(c,le,be,ce.data,ce.key)||ce.avg,it=ve(c,ee,Ee,Ae.data,Ae.key)||Ae.avg,Xe=we.clone().multiplyScalar(1-J).addScaledVector(it,J);M=Xe.lengthSq()>0?Xe.normalize():we.clone(),f=be.clone().lerp(Ee,J),T=le,de=ce.data,We=ce.tris,Pe=ce.key,Ge=ce.avg,je=ce.verts,mt=!1}else{const fe=Array.isArray(q)?q[0]:q?.faceA||q?.a||null,le=Array.isArray(q)?q[1]:q?.faceB||q?.b||null;if(!fe||!le)continue;B=fe,T=le;const ee=Q(B),J=Q(T);if(!ee||!J)continue;R=ee.data,de=J.data,he=ee.tris,We=J.tris,Fe=ee.key,Pe=J.key,Le=ee.avg,Ge=J.avg,Ze=ee.verts,je=J.verts,a=$e(he,r,R,Fe),f=$e(We,r,de,Pe),b=ve(c,B,a,R,Fe)||Le,M=ve(c,T,f,de,Pe)||Ge}}else a=G[i],f=X[i],b=j[i]||Le,M=ue[i]||Ge;const Ne=ze.copy(b).cross(te),Te=Se.copy(M).cross(te);if(Ne.lengthSq()<A||Te.lengthSq()<A)continue;Ne.normalize(),Te.normalize();const Re=Ne.clone(),Ke=new me().crossVectors(te,Re).normalize(),At=te.clone().cross(Ne).negate(),zt=te.clone().cross(Te).negate(),Ve=new Je(At.dot(Re),At.dot(Ke)),Ue=new Je(zt.dot(Re),zt.dot(Ke));if(Ve.lengthSq()<1e-16||Ue.lengthSq()<1e-16)continue;Ve.normalize(),Ue.normalize();const Vt=$t(Ve.x*Ue.x+Ve.y*Ue.y,-1,1),pt=Math.acos(Vt),st=Math.sin(.5*pt);if(Math.abs(st)<h)continue;let pe=new Je(Ve.x+Ue.x,Ve.y+Ue.y);const bt=pe.length();if(bt>1e-9?pe.multiplyScalar(1/bt):pe.set(0,0),Ze&&je){const oe=Math.tan(.5*pt);if(Number.isFinite(oe)&&oe>h&&pe.lengthSq()>1e-16){const q=ye.set(0,0,0).addScaledVector(Re,pe.x).addScaledVector(Ke,pe.y);ne&&q.negate();const fe=q.length();if(fe>1e-12){q.multiplyScalar(1/fe);const le=kt(Ze,Ne),ee=kt(je,Te);if(le&&ee){const J=r.x*Ne.x+r.y*Ne.y+r.z*Ne.z,ae=r.x*Te.x+r.y*Te.y+r.z*Te.z,ce=Math.sign(Ne.dot(q))||1,Ae=Math.sign(Te.dot(q))||1,Me=ce>=0?le.max-J:J-le.min,be=Ae>=0?ee.max-ae:ae-ee.min,Ee=Math.min(Me,be);if(Number.isFinite(Ee)&&Ee>A){const we=Ee*oe;Number.isFinite(we)&&we>A&&(we<Ie&&(Ie=we),Oe++)}}}}}const Ye=K/Math.abs(st),St=lt(r,te,b,a,-1,M,f,-1,K),Ft=lt(r,te,b,a,1,M,f,1,K),rt=_e.copy(b).add(M),ot=rt.length();ot>A&&rt.multiplyScalar(1/ot);let Qe=ne?"out":"in",se=null;if(St||Ft){const oe=ne?1:-1,q=$((J,ae)=>{if(!J)return{score:1/0,pick:ae,center:J};const ce=ae==="in"?-1:1,Ae=J.clone().addScaledVector(b,-ce*K),Me=J.clone().addScaledVector(M,-ce*K),be=$e(he,Ae,R,Fe),Ee=$e(We,Me,de,Pe),we=be?Ae.distanceTo(be):1/0,it=Ee?Me.distanceTo(Ee):1/0;let Xe=0;if(ot>A){const Wt=J.clone().sub(r),Et=Math.sign(Wt.dot(rt))||0;Et&&Et!==oe&&(Xe=K)}const Ot=Math.abs(J.distanceTo(r)-Ye);return{score:we+it+.2*Ot+Xe,pick:ae,center:J}},"scoreCandidate"),fe=q(St,"in"),le=q(Ft,"out"),ee=fe.score<=le.score?fe:le;Qe=ee.pick,se=ee.center}const qe=Qe==="in"?-1:1,He=qe;let Be=se?se.clone().addScaledVector(b,-qe*K):r.clone(),Ce=se?se.clone().addScaledVector(M,-He*K):r.clone();if(!se)if(pe.lengthSq()>A){const oe=ye.set(0,0,0).addScaledVector(Re,pe.x).addScaledVector(Ke,pe.y);Qe==="out"&&oe.negate(),oe.normalize(),se=r.clone().addScaledVector(oe,Ye)}else{const oe=_e.copy(b).add(M);if(oe.lengthSq()>A){oe.normalize();const q=Qe==="in"?-1:1;se=r.clone().addScaledVector(oe,q*Ye)}else continue}se&&(Be=se.clone().addScaledVector(b,-qe*K),Ce=se.clone().addScaledVector(M,-He*K));const Ut=se.distanceTo(r),qt=Math.abs(Ut-Ye)>.1*K,Nt=Math.abs(st)<.5,Mt=mt&&(qt||Nt)?Nt?2:1:0;if(Mt>0)try{for(let oe=0;oe<Mt;oe++){const q=$e(he,Be,R,Fe),fe=$e(We,Ce,de,Pe),le=ve(c,B,q,R,Fe)||Le,ee=ve(c,T,fe,de,Pe)||Ge,J=lt(r,te,le,q,qe,ee,fe,He,K);if(!J)break;const ae=se;if(se=J,b=le,M=ee,Be=se.clone().addScaledVector(b,-qe*K),Ce=se.clone().addScaledVector(M,-He*K),ae.distanceTo(se)<1e-6*Math.max(1,K))break}}catch{}{const oe=se.distanceTo(r),q=6*K,fe=3,le=(()=>{try{const ee=Be.clone().sub(r),J=Ce.clone().sub(r),ae=ee.length(),ce=J.length();if(ae>A&&ce>A){const Ae=$t(ee.dot(J)/(ae*ce),-1,1),Me=Math.acos(Ae),be=Math.sin(.5*Me);if(Math.abs(be)>h)return K/Math.abs(be)}}catch{}return Ye})();if(!Number.isFinite(oe)||oe>q||oe>fe*le){let ee=new Je(pe.x,pe.y);if(t.bisectorFlipForOutset&&ee.multiplyScalar(-1),ee.lengthSq()>1e-16){ee.normalize();const J=De.set(0,0,0).addScaledVector(Re,ee.x).addScaledVector(Ke,ee.y).normalize(),ae=Math.min(le,q);se=r.clone().addScaledVector(J,ae),Be=se.clone().addScaledVector(b,-qe*K),Ce=se.clone().addScaledVector(M,-He*K)}}}ie.push({x:se.x,y:se.y,z:se.z}),s.push({x:Be.x,y:Be.y,z:Be.z}),p.push({x:Ce.x,y:Ce.y,z:Ce.z}),x.push({x:r.x,y:r.y,z:r.z})}if(!U&&ie.length>=3&&s.length>=3&&p.length>=3&&x.length>=3)try{on(ie,s,p,x,K)}catch{}if(U&&ie.length>=2){const i=ie[0],r=ie[ie.length-1];if(!$((g,a)=>g.x===a.x&&g.y===a.y&&g.z===a.z,"exactlyEqual")(i,r)){if(ie.push({x:i.x,y:i.y,z:i.z}),s.length>0){const g=s[0];s.push({x:g.x,y:g.y,z:g.z})}if(p.length>0){const g=p[0];p.push({x:g.x,y:g.y,z:g.z})}if(x.length>0){const g=x[0];x.push({x:g.x,y:g.y,z:g.z})}}}const m=an(ie,s,p,o);if(m?.centerlineReversed&&(ie.reverse(),x.reverse()),m?.tangentAReversed&&s.reverse(),m?.tangentBReversed&&p.reverse(),!U&&ie.length>=2){const i=$((d,g,a)=>{if(!Array.isArray(d)||d.length<2)return 1/0;const f=d[0],b=d[d.length-1];if(!f||!b||!g||!a)return 1/0;const M=Math.hypot(f.x-g.x,f.y-g.y,f.z-g.z),B=Math.hypot(b.x-a.x,b.y-a.y,b.z-a.z);return M+B},"endpointCost"),r=$(d=>{if(!Array.isArray(d)||d.length<2)return;const g=ie[0],a=ie[ie.length-1],f=i(d,g,a);i(d,a,g)+1e-9<f&&d.reverse()},"alignPolylineToCenterlineEnds");r(s),r(p),r(x)}return n.points=ie,n.tangentA=s,n.tangentB=p,n.edge=x,Number.isFinite(Ie)&&Ie<K&&Oe>0&&(n.radiusClamp={requested:o,maxAllowed:Ie,samples:Oe}),n}catch(t){return console.warn("[computeFilletCenterline] failed:",t?.message||t),n}}$(xt,"computeFilletCenterline");function an(e,o,u,n=null){try{if(!Array.isArray(e)||!Array.isArray(o)||!Array.isArray(u))return{centerlineReversed:!1,tangentAReversed:!1,tangentBReversed:!1};const t=re,c=Math.min(e.length,o.length,u.length);if(c<3)return{centerlineReversed:!1,tangentAReversed:!1,tangentBReversed:!1};if(Number.isFinite(n)&&n>0){const P=$((G,X)=>{const j=X.x-G.x,ue=X.y-G.y,Q=X.z-G.z;return Math.hypot(j,ue,Q)},"dist"),C=[],U=$(G=>Math.max(0,Math.min(c-1,Math.round(G*(c-1)))),"idxFromT"),D=$(G=>{C.includes(G)||C.push(G)},"pushUnique");D(U(.25)),D(U(.5)),D(U(.75));const W=[[!1,!1,!1],[!1,!0,!1],[!1,!1,!0],[!0,!1,!1],[!0,!0,!1],[!0,!1,!0],[!1,!0,!0],[!0,!0,!0]];let k={cost:1/0,rc:!1,ra:!1,rb:!1};for(const[G,X,j]of W){let ue=0;for(const Q of C){const te=e[G?c-1-Q:Q],ze=o[X?c-1-Q:Q],Se=u[j?c-1-Q:Q],ye=P(te,ze),De=P(te,Se);ue+=Math.abs(ye-n)+Math.abs(De-n)}ue<k.cost&&(k={cost:ue,rc:G,ra:X,rb:j})}if(k.cost<1/0)return{centerlineReversed:k.rc,tangentAReversed:k.ra,tangentBReversed:k.rb}}const l=$(P=>{let C=0,U=0,D=0;for(let k=0;k<c-1;k++){const G=P[k],X=P[k+1];C+=X.x-G.x,U+=X.y-G.y,D+=X.z-G.z}const W=Math.hypot(C,U,D)||1;return{x:C/W,y:U/W,z:D/W}},"avgDir"),E=l(e),F=l(o),N=l(u),v=$((P,C)=>P.x*C.x+P.y*C.y+P.z*C.z,"dot");let S=!1,y=!1,A=!1;v(E,F)<0&&(y=!0),v(E,N)<0&&(A=!0),y&&A&&(S=!0,y=!1,A=!1);const z=Math.min(8,Math.floor(e.length/3)),h=[];for(let P=1;P<z-1;P++){const C=Math.floor(P*(e.length-2)/(z-1));C+1<e.length&&h.push(C)}let w=[],O=[],L=[];for(const P of h){if(P+1>=e.length)continue;const C=e[P],U=e[P+1],D=o[P],W=o[P+1],k=u[P],G=u[P+1];if(!t(C)||!t(U)||!t(D)||!t(W)||!t(k)||!t(G))continue;const X={x:U.x-C.x,y:U.y-C.y,z:U.z-C.z},j={x:W.x-D.x,y:W.y-D.y,z:W.z-D.z},ue={x:D.x-C.x,y:D.y-C.y,z:D.z-C.z},Q={x:k.x-C.x,y:k.y-C.y,z:k.z-C.z},te={x:k.x-D.x,y:k.y-D.y,z:k.z-D.z},ze={x:X.y*ue.z-X.z*ue.y,y:X.z*ue.x-X.x*ue.z,z:X.x*ue.y-X.y*ue.x},Se={x:X.y*Q.z-X.z*Q.y,y:X.z*Q.x-X.x*Q.z,z:X.x*Q.y-X.y*Q.x},ye={x:j.y*te.z-j.z*te.y,y:j.z*te.x-j.x*te.z,z:j.x*te.y-j.y*te.x};w.push(ze.z),O.push(Se.z),L.push(ye.z)}const V=w.filter(P=>isFinite(P)),Y=O.filter(P=>isFinite(P)),I=L.filter(P=>isFinite(P)),_=V.length>0?V.reduce((P,C)=>P+Math.sign(C),0)/V.length:0,H=Y.length>0?Y.reduce((P,C)=>P+Math.sign(C),0)/Y.length:0,Z=I.length>0?I.reduce((P,C)=>P+Math.sign(C),0)/I.length:0,ge=_>0!=H>0,xe=Z>.5;return ge&&!(S||y||A)?xe?S=!0:Math.abs(H)>Math.abs(_)?A=!0:y=!0:xe&&!(S||y||A)&&(A=!0),{centerlineReversed:S,tangentAReversed:y,tangentBReversed:A}}catch(t){return console.warn("Winding order analysis failed:",t?.message||t),{centerlineReversed:!1,tangentAReversed:!1,tangentBReversed:!1}}}$(an,"fixPolylineWinding");function gn(e,o,u=1,n="INSET",t="FILLET_CENTERLINE",c={}){try{if(!e||!o)return null;const l=xt(o,u,n);if(l&&Array.isArray(l.points)&&l.points.length>=2){const E={materialKey:"OVERLAY",closedLoop:!!l.closedLoop,...c||{}};return e.addAuxEdge(t,l.points,E),l}return null}catch(l){return console.warn("[attachFilletCenterlineAuxEdge] failed:",l?.message||l),null}}$(gn,"attachFilletCenterlineAuxEdge");function yn({edgeToFillet:e,radius:o=1,sideMode:u="INSET",debug:n=!1,name:t="fillet",inflate:c=.1,nudgeFaceDistance:l=1e-4,resolution:E=32,showTangentOverlays:F=!1}={}){try{if(!e)throw new Error("filletSolid: edgeToFillet is required");if(!Number.isFinite(o)||o<=0)throw new Error(`filletSolid: radius must be a positive number, got ${o}`);const N=Lt(u),v=N.mode,S=o;let y=o;const A=Number.isFinite(Number(E))&&Number(E)>0?Math.max(8,Math.floor(Number(E))):32,z=Number.isFinite(Number(l))?Number(l):1e-4,h=$((...s)=>{n&&console.log(...s)},"logDebug");h(`🔧 Starting fillet operation: edge=${e?.name||"unnamed"}, radius=${y}, side=${v}`);let w=xt(e,y,v);if(h("The fillet centerline result is:",w),!w)throw new Error("computeFilletCenterline returned null/undefined");if(w.radiusClamp&&Number.isFinite(w.radiusClamp.maxAllowed)){const s=w.radiusClamp.maxAllowed;if(s>0&&s<y*.999){const p=Math.max(s*.999,1e-9);if(p<y&&(console.warn("[filletSolid] Requested radius exceeds face extents; clamping.",{edge:e?.name||"unnamed",requested:y,clamped:p,maxAllowed:s}),y=p,w=xt(e,y,v),h("Recomputed fillet centerline with clamped radius:",y,w),!w))throw new Error("computeFilletCenterline returned null/undefined after radius clamp")}}const O=Array.isArray(w?.points)?w.points:[],L=Array.isArray(w?.tangentA)?w.tangentA:[],V=Array.isArray(w?.tangentB)?w.tangentB:[],Y=Array.isArray(w?.edge)?w.edge:[],I=!!w?.closedLoop;if(n)try{h("filletSolid: centerline/tangent edges computed")}catch{}const _=O.map(s=>({x:s.x,y:s.y,z:s.z}));let H=L.map(s=>({x:s.x,y:s.y,z:s.z})),Z=V.map(s=>({x:s.x,y:s.y,z:s.z}));const ge=1,xe=et(_,H,{closedLoop:I,strength:ge}),P=et(_,Z,{closedLoop:I,strength:ge});if(H=xe.points,Z=P.points,n)try{const s=xe.stats||{},p=P.stats||{},x=s.correctedSegments>0||s.backtrackingBefore>s.backtrackingAfter,m=p.correctedSegments>0||p.backtrackingBefore>p.backtrackingAfter;(x||m)&&h("Sanitized tangent polylines before wedge build.",{tangentA:s,tangentB:p})}catch{}const C=H.map(s=>({x:s.x,y:s.y,z:s.z})),U=Z.map(s=>({x:s.x,y:s.y,z:s.z})),D=Y.map(s=>({x:s.x,y:s.y,z:s.z})),W=D.map(s=>({x:s.x,y:s.y,z:s.z}));if(n&&_.length>=2&&Tt(t,_,I,{marker:"🟡",label:"ORIGINAL CENTERLINE (Yellow)",materialKey:"YELLOW",auxName:"ORIGINAL_CENTERLINE",nameSuffix:"ORIGINAL_CENTERLINE",successMessage:"🟡 Original centerline visualization created (Yellow)",failureMessage:"Failed to visualize original centerline:"}),h("Checking all polyline winding orders..."),_.length>=2){const s=_[0],p=_[1],x=_[_.length-1];h(`Centerline: start=(${s.x.toFixed(3)}, ${s.y.toFixed(3)}, ${s.z.toFixed(3)}) → (${p.x.toFixed(3)}, ${p.y.toFixed(3)}, ${p.z.toFixed(3)}) ... end=(${x.x.toFixed(3)}, ${x.y.toFixed(3)}, ${x.z.toFixed(3)})`)}const k=Number.isFinite(c)?Number(c):0,G=Math.abs(k)>1e-12;if(G){const s=Math.min(_.length,H.length,Z.length);for(let p=0;p<s;p++){const x=_[p],m=H[p],i=Z[p];if(x&&m){const r=m.x-x.x,d=m.y-x.y,g=m.z-x.z,a=Math.hypot(r,d,g);a>1e-12&&(m.x+=r/a*k,m.y+=d/a*k,m.z+=g/a*k)}if(x&&i){const r=i.x-x.x,d=i.y-x.y,g=i.z-x.z,a=Math.hypot(r,d,g);a>1e-12&&(i.x+=r/a*k,i.y+=d/a*k,i.z+=g/a*k)}}try{h(`Applied tangent offsetDistance=${k} to ${s} samples`)}catch{}}if(G){const s=et(_,H,{closedLoop:I,strength:0}),p=et(_,Z,{closedLoop:I,strength:0});if(H=s.points,Z=p.points,n)try{const x=s.stats||{},m=p.stats||{},i=x.correctedSegments>0||x.backtrackingBefore>x.backtrackingAfter,r=m.correctedSegments>0||m.backtrackingBefore>m.backtrackingAfter;(i||r)&&h("Applied post-offset tangent backtracking guard.",{tangentA:x,tangentB:m})}catch{}}const X=Math.max(1e-4,Math.min(.05,Math.abs(y)*.05)),j=I?0:N.isInset?Math.abs(c):X,Q=j&&N.useInsideCheckForWedge?Yt(e?.parentSolid||e?.parent||null):null;let te=null;if(j){const s=new Array(W.length);let p=0,x=0;for(let m=0;m<W.length;m++){const i=W[m],r=_[m]||_[_.length-1];if(!i||!r)continue;const d=r.x-i.x,g=r.y-i.y,a=r.z-i.z,f=Math.sqrt(d*d+g*g+a*a);if(f<=1e-12){console.warn(`Edge point ${m} is too close to centerline, skipping wedge inset`);continue}const b=d/f,M=g/f,B=a/f,T={x:i.x+b*j,y:i.y+M*j,z:i.z+B*j},R={x:i.x-b*j,y:i.y-M*j,z:i.z-B*j};let de=null,he=null;Q&&(de=Q(T),he=Q(R),de!==he&&(de?p++:x++)),s[m]={original:{...i},candidateIn:T,candidateOut:R,inInside:de,outInside:he}}Q&&(p||x)&&(te=p>=x?1:-1);for(let m=0;m<W.length;m++){const i=W[m],r=s[m];if(!(!i||!r))try{let d=null;Q&&r.inInside!==r.outInside&&(d=r.inInside?r.candidateIn:r.candidateOut),d||(d=(te!==null?te:N.defaultWedgeOffsetSign)>=0?r.candidateIn:r.candidateOut),i.x=d.x,i.y=d.y,i.z=d.z,tt(i)||(console.warn(`Invalid wedge edge point after inset at index ${m}, reverting to original`),Object.assign(i,r.original))}catch(d){console.warn(`Wedge edge inset failed at index ${m}: ${d?.message||d}`)}}}j&&h(`Applied wedge inset of ${j} units (inside-aware) to ${W.length} edge points`),n&&_.length>=2&&Tt(t,_,I,{marker:"🔵",label:"MANIPULATED CENTERLINE (Blue)",materialKey:"BLUE",auxName:"MANIPULATED_CENTERLINE",nameSuffix:"MANIPULATED_CENTERLINE",successMessage:"🔵 Manipulated centerline visualization created (Blue)",failureMessage:"Failed to visualize manipulated centerline:"}),h("centerlines all generated fine");const ze=Array.isArray(O)?O:[];let Se={start:[],end:[]};const ye=$(({tube:s=null,wedge:p=null,finalSolid:x=null,error:m=null}={})=>Bt({tube:s,wedge:p,finalSolid:x,centerline:_,tangentA:H,tangentB:Z,edge:D,edgeWedge:W,tangentASeam:C,tangentBSeam:U,tubeCapPointsBeforeNudge:Se,error:m}),"buildResult"),De=new Set,_e=$((s,p="face_name_set",x=!1)=>{const m=String(s||"").trim();if(m&&x){const i=`${p}:${m}`;if(De.has(i))return;De.add(i)}},"breakOnFaceNameSet");if(ze.length<2)return console.error("Insufficient centerline points for tube generation"),ye({error:"Insufficient centerline points for tube generation"});{const s=ze[0];if(!ze.some(m=>Math.abs(m.x-s.x)>1e-6||Math.abs(m.y-s.y)>1e-6||Math.abs(m.z-s.z)>1e-6))return console.error("Degenerate centerline: all points are identical"),ye({error:"Degenerate centerline: all points are identical"});const x=y*.01;for(let m=1;m<ze.length;m++){const i=ze[m],r=ze[m-1],d=Math.hypot(i.x-r.x,i.y-r.y,i.z-r.z);d<x&&console.warn(`Centerline points ${m-1} and ${m} are too close (distance: ${d}), this may cause tube generation issues`)}}let K=null;try{let s=ze.map(x=>[x.x,x.y,x.z]);if(I){if(h("Closed loop detected: preparing tube centerline..."),s.length>=2){const x=s[0];s.push([x[0],x[1],x[2]]),h("Closed loop: Added first point at end for tube generation")}}else if(h("Non-closed loop detected: preparing tube centerline..."),s.length>=2){try{Se=tn(s,y,A,`${t}_TUBE_PRE_NUDGE_CAPTURE`)}catch{Se={start:[],end:[]}}h("Non-closed loop: Extending tube centerline segments...");const x=.1,m=s[0],i=s[1],r=[m[0]-i[0],m[1]-i[1],m[2]-i[2]],d=Math.sqrt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]);if(d>1e-12){const B=[r[0]/d,r[1]/d,r[2]/d],T=[m[0]+B[0]*x,m[1]+B[1]*x,m[2]+B[2]*x];s[0]=T}const g=s.length-1,a=s[g],f=s[g-1],b=[a[0]-f[0],a[1]-f[1],a[2]-f[2]],M=Math.sqrt(b[0]*b[0]+b[1]*b[1]+b[2]*b[2]);if(M>1e-12){const B=[b[0]/M,b[1]/M,b[2]/M],T=[a[0]+B[0]*x,a[1]+B[1]*x,a[2]+B[2]*x];s[g]=T}h(`Extended tube centerline by ${x} units at both ends`)}const p=y;K=new Dt({points:s,radius:p,innerRadius:0,resolution:A,selfUnion:!0,name:`${t}_TUBE`});try{const x=`${t}_TUBE_Outer`,m={type:"pipe",source:"FilletFeature",featureID:t,inflatedRadius:p,pmiRadiusOverride:y,radiusOverride:y};if(S!==y&&(m.requestedRadius=S),e?.name&&(m.edgeReference=e.name),_e(x,"filletTube.setFaceMetadata"),K.setFaceMetadata(x,m),F){const i={materialKey:"OVERLAY",closedLoop:!!I};Array.isArray(C)&&C.length>=2&&K.addAuxEdge(`${t}_TANGENT_A_PATH`,C,i),Array.isArray(U)&&U.length>=2&&K.addAuxEdge(`${t}_TANGENT_B_PATH`,U,i)}if(!I){const i=x,r=$(d=>{const g=K.getFace(d),a=_t(g);a>0&&(_e(d,"filletTube.setFaceMetadata.cap"),K.setFaceMetadata(d,{filletSourceArea:a,filletRoundFace:i,filletEndCap:!0}))},"markTubeCap");r(`${t}_TUBE_CapStart`),r(`${t}_TUBE_CapEnd`)}}catch{}}catch(s){console.error("Tube creation failed:",s?.message||s);const p=new ht;return p.name=`${t}_FAILED_TUBE_DEBUG`,ye({wedge:p,error:`Tube generation failed: ${s?.message||s}`})}h("Creating wedge solid...");const ne=new ht;if(ne.name=`${t}_WEDGE`,I)try{const s=y*y*1e-8;let p=0,x=0;const m=$((d,g,a)=>{const f={x:g.x-d.x,y:g.y-d.y,z:g.z-d.z},b={x:a.x-d.x,y:a.y-d.y,z:a.z-d.z},M={x:f.y*b.z-f.z*b.y,y:f.z*b.x-f.x*b.z,z:f.x*b.y-f.y*b.x};return .5*Math.sqrt(M.x*M.x+M.y*M.y+M.z*M.z)>s},"isValidTriangle"),i=re,r=$((d,g,a,f)=>!i(g)||!i(a)||!i(f)?(console.warn(`Invalid points detected - p1:(${g.x},${g.y},${g.z}) p2:(${a.x},${a.y},${a.z}) p3:(${f.x},${f.y},${f.z})`),!1):(_e(d,"wedgeSolid.addTriangle.closed",!0),ne.addTriangle(d,[g.x,g.y,g.z],[a.x,a.y,a.z],[f.x,f.y,f.z]),!0),"addTriangleWithValidation");for(let d=0;d<_.length-1;d++){const g=_[d],a=_[d+1],f=H[d],b=H[d+1],M=Z[d],B=Z[d+1];m(g,f,a)&&r(`${t}_WEDGE_A`,g,f,a)?p++:x++,m(a,f,b)&&r(`${t}_WEDGE_A`,a,f,b)?p++:x++,m(g,a,M)&&r(`${t}_WEDGE_B`,g,a,M)?p++:x++,m(a,B,M)&&r(`${t}_WEDGE_B`,a,B,M)?p++:x++;const T=W[d],R=W[d+1];T&&R&&(m(T,f,R)&&r(`${t}_SIDE_A`,T,f,R)?p++:x++,m(R,f,b)&&r(`${t}_SIDE_A`,R,f,b)?p++:x++,m(T,R,M)&&r(`${t}_SIDE_B`,T,R,M)?p++:x++,m(R,B,M)&&r(`${t}_SIDE_B`,R,B,M)?p++:x++)}if(h(`Wedge triangles added successfully (closed loop): ${p} valid, ${x} skipped`),p===0)return console.error("No valid triangles could be created for wedge solid - all were degenerate"),ye({tube:K,wedge:ne,error:"No valid triangles could be created for wedge solid - all were degenerate"})}catch(s){return console.error("Failed to create wedge triangles (closed loop):",s?.message||s),ye({tube:K,wedge:ne,error:`Wedge triangle creation failed: ${s?.message||s}`})}else try{h("Creating wedge solid for non-closed loop...");const s=y*y*1e-8;let p=0,x=0;const m=$((d,g,a)=>{const f={x:g.x-d.x,y:g.y-d.y,z:g.z-d.z},b={x:a.x-d.x,y:a.y-d.y,z:a.z-d.z},M={x:f.y*b.z-f.z*b.y,y:f.z*b.x-f.x*b.z,z:f.x*b.y-f.y*b.x};return .5*Math.sqrt(M.x*M.x+M.y*M.y+M.z*M.z)>s},"isValidTriangle"),i=re,r=$((d,g,a,f)=>!i(g)||!i(a)||!i(f)?(console.warn(`Invalid points detected - p1:(${g.x},${g.y},${g.z}) p2:(${a.x},${a.y},${a.z}) p3:(${f.x},${f.y},${f.z})`),!1):(_e(d,"wedgeSolid.addTriangle.open",!0),ne.addTriangle(d,[g.x,g.y,g.z],[a.x,a.y,a.z],[f.x,f.y,f.z]),!0),"addTriangleWithValidation");for(let d=0;d<_.length-1;d++){const g=_[d],a=_[d+1],f=H[d],b=H[d+1],M=Z[d],B=Z[d+1],T=W[d],R=W[d+1];m(g,a,f)&&r(`${t}_SURFACE_CA`,g,a,f)?p++:x++,m(a,b,f)&&r(`${t}_SURFACE_CA`,a,b,f)?p++:x++,m(g,M,a)&&r(`${t}_SURFACE_CB`,g,M,a)?p++:x++,m(a,M,B)&&r(`${t}_SURFACE_CB`,a,M,B)?p++:x++,T&&R&&(m(f,b,T)&&r(`${t}_FACE_A`,f,b,T)?p++:x++,m(b,R,T)&&r(`${t}_FACE_A`,b,R,T)?p++:x++,m(M,T,B)&&r(`${t}_FACE_B`,M,T,B)?p++:x++,m(B,T,R)&&r(`${t}_FACE_B`,B,T,R)?p++:x++)}if(_.length>=2){h("Adding end caps for non-closed loop...");const d=_[0],g=H[0],a=Z[0],f=W[0];f&&i(d)&&i(g)&&i(a)&&i(f)&&(m(d,a,g)&&r(`${t}_END_CAP_1`,d,a,g)?p++:x++,m(g,a,f)&&r(`${t}_END_CAP_1`,g,a,f)?p++:x++);const b=_.length-1,M=_[b],B=H[b],T=Z[b],R=W[b];R&&i(M)&&i(B)&&i(T)&&i(R)&&(m(M,B,T)&&r(`${t}_END_CAP_2`,M,B,T)?p++:x++,m(B,R,T)&&r(`${t}_END_CAP_2`,B,R,T)?p++:x++)}if(h(`Wedge triangles added successfully (non-closed loop): ${p} valid, ${x} skipped`),p===0)return console.error("No valid triangles could be created for non-closed wedge solid - all were degenerate"),ye({tube:K,wedge:ne,error:"No valid triangles could be created for non-closed wedge solid - all were degenerate"})}catch(s){return console.error("Failed to create wedge triangles (non-closed loop):",s?.message||s),ye({tube:K,wedge:ne,error:`Non-closed wedge triangle creation failed: ${s?.message||s}`})}try{ne.fixTriangleWindingsByAdjacency()}catch(s){console.warn("Triangle winding fix failed:",s?.message||s)}n&&console.log("Debug mode: wedge solid stored"),h("Wedge solid creation completed");const Ie=ne._triVerts?ne._triVerts.length/3:0;if(h("Wedge solid created with",Ie,"triangles (raw count)"),n)try{ne.visualize()}catch{}if(Math.abs(z)>1e-12&&(ne.pushFace(`${t}_FACE_A`,z,{warnMissing:!1}),ne.pushFace(`${t}_FACE_B`,z,{warnMissing:!1})),N.applyOpenEndCapPush&&!I){h("Applying end cap offset to INSET fillet using pushFace...");try{Math.abs(z)>1e-12?(ne.pushFace(`${t}_END_CAP_1`,z,{warnMissing:!1}),ne.pushFace(`${t}_END_CAP_2`,z,{warnMissing:!1}),h("End cap offset applied successfully")):h("Skipping end cap offset because nudgeFaceDistance is 0."),n&&ne.visualize()}catch(s){console.warn("Failed to apply end cap offset:",s?.message||s)}}const Oe=`${t}_TUBE_Outer`,ie=$((s,p=!1)=>{const x=ne.getFace(s),m=_t(x);m>0&&(_e(s,"wedgeSolid.setFaceMetadata"),ne.setFaceMetadata(s,{filletSourceArea:m,filletRoundFace:Oe,filletEndCap:!!p}))},"markFace");I||(ie(`${t}_END_CAP_1`,!0),ie(`${t}_END_CAP_2`,!0)),ie(`${t}_WEDGE_A`,!1),ie(`${t}_WEDGE_B`,!1);try{const s=ne.subtract(K);if(s.name=`${t}_FINAL_FILLET`,n)try{s.visualize()}catch{}return h("Final fillet solid created by subtracting tube from wedge",s),ye({tube:K,wedge:ne,finalSolid:s})}catch(s){return console.error("Boolean operation failed:",s?.message||s),ye({tube:K,wedge:ne,error:`Boolean operation failed: ${s?.message||s}`})}}catch(N){return console.error("Fillet operation failed completely:",N?.message||N),Bt({error:`Fillet operation failed: ${N?.message||N}`})}}$(yn,"filletSolid");export{gn as attachFilletCenterlineAuxEdge,mn as clearFilletCaches,xt as computeFilletCenterline,yn as filletSolid};
@@ -1,4 +1,4 @@
1
- var Hf=Object.defineProperty;var l=(s,e)=>Hf(s,"name",{value:e,configurable:!0});import{l as an,m as lf}from"./FeatureRegistry-Cd-GX-Bm.js";import{_ as nn}from"./main-cad-bbPyIDxb.js";import"./featureDialogs-CUWi02Qp.js";import"./browserStorage-CvgF8ovw.js";import"./preload-helper-ZNr0Qq7Q.js";import"./Tube-bO80ROeR.js";import"./chamfer-DdXNz6lz.js";import"./fillet-CJey7GJP.js";import"./deepClone-Dj59xCHB.js";import"./droppedWorkspaceFiles-8o-ZYOrf.js";import"./PartHistory-DxsRIXx4.js";import"./AssemblyConstraintRegistry-3P1cpGjG.js";import"./annUtils-D9TT7tgs.js";import"./AnnotationRegistry-CyI5mmDu.js";var po={},yo={},Or,mo;function Q(){if(mo)return Or;mo=1;var s=l(function(e){return e&&e.Math===Math&&e},"check");return Or=s(typeof globalThis=="object"&&globalThis)||s(typeof window=="object"&&window)||s(typeof self=="object"&&self)||s(typeof an=="object"&&an)||s(typeof Or=="object"&&Or)||(function(){return this})()||Function("return this")(),Or}l(Q,"requireGlobalThis");var xt={},Ot,bo;function Z(){return bo||(bo=1,Ot=l(function(s){try{return!!s()}catch{return!0}},"fails")),Ot}l(Z,"requireFails");var Tt,xo;function Ie(){if(xo)return Tt;xo=1;var s=Z();return Tt=!s(function(){return Object.defineProperty({},1,{get:l(function(){return 7},"get")})[1]!==7}),Tt}l(Ie,"requireDescriptors");var St,Oo;function tt(){if(Oo)return St;Oo=1;var s=Z();return St=!s(function(){var e=(function(){}).bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),St}l(tt,"requireFunctionBindNative");var Rt,To;function se(){if(To)return Rt;To=1;var s=tt(),e=Function.prototype.call;return Rt=s?e.bind(e):function(){return e.apply(e,arguments)},Rt}l(se,"requireFunctionCall");var Ct={},So;function Wf(){if(So)return Ct;So=1;var s={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,r=e&&!s.call({1:2},1);return Ct.f=r?l(function(i){var a=e(this,i);return!!a&&a.enumerable},"propertyIsEnumerable"):s,Ct}l(Wf,"requireObjectPropertyIsEnumerable");var Et,Ro;function Yn(){return Ro||(Ro=1,Et=l(function(s,e){return{enumerable:!(s&1),configurable:!(s&2),writable:!(s&4),value:e}},"createPropertyDescriptor")),Et}l(Yn,"requireCreatePropertyDescriptor");var wt,Co;function J(){if(Co)return wt;Co=1;var s=tt(),e=Function.prototype,r=e.call,t=s&&e.bind.bind(r,r);return wt=s?t:function(i){return function(){return r.apply(i,arguments)}},wt}l(J,"requireFunctionUncurryThis");var Pt,Eo;function nr(){if(Eo)return Pt;Eo=1;var s=J(),e=s({}.toString),r=s("".slice);return Pt=l(function(t){return r(e(t),8,-1)},"classofRaw"),Pt}l(nr,"requireClassofRaw");var At,wo;function hf(){if(wo)return At;wo=1;var s=J(),e=Z(),r=nr(),t=Object,i=s("".split);return At=e(function(){return!t("z").propertyIsEnumerable(0)})?function(a){return r(a)==="String"?i(a,""):t(a)}:t,At}l(hf,"requireIndexedObject");var It,Po;function it(){return Po||(Po=1,It=l(function(s){return s==null},"isNullOrUndefined")),It}l(it,"requireIsNullOrUndefined");var Nt,Ao;function Ne(){if(Ao)return Nt;Ao=1;var s=it(),e=TypeError;return Nt=l(function(r){if(s(r))throw new e("Can't call method on "+r);return r},"requireObjectCoercible"),Nt}l(Ne,"requireRequireObjectCoercible");var Mt,Io;function Ar(){if(Io)return Mt;Io=1;var s=hf(),e=Ne();return Mt=l(function(r){return s(e(r))},"toIndexedObject"),Mt}l(Ar,"requireToIndexedObject");var qt,No;function ee(){if(No)return qt;No=1;var s=typeof document=="object"&&document.all;return qt=typeof s>"u"&&s!==void 0?function(e){return typeof e=="function"||e===s}:function(e){return typeof e=="function"},qt}l(ee,"requireIsCallable");var _t,Mo;function pe(){if(Mo)return _t;Mo=1;var s=ee();return _t=l(function(e){return typeof e=="object"?e!==null:s(e)},"isObject"),_t}l(pe,"requireIsObject");var Dt,qo;function sr(){if(qo)return Dt;qo=1;var s=Q(),e=ee(),r=l(function(t){return e(t)?t:void 0},"aFunction");return Dt=l(function(t,i){return arguments.length<2?r(s[t]):s[t]&&s[t][i]},"getBuiltIn"),Dt}l(sr,"requireGetBuiltIn");var Vt,_o;function at(){if(_o)return Vt;_o=1;var s=J();return Vt=s({}.isPrototypeOf),Vt}l(at,"requireObjectIsPrototypeOf");var Lt,Do;function Ir(){if(Do)return Lt;Do=1;var s=Q(),e=s.navigator,r=e&&e.userAgent;return Lt=r?String(r):"",Lt}l(Ir,"requireEnvironmentUserAgent");var kt,Vo;function Xn(){if(Vo)return kt;Vo=1;var s=Q(),e=Ir(),r=s.process,t=s.Deno,i=r&&r.versions||t&&t.version,a=i&&i.v8,n,o;return a&&(n=a.split("."),o=n[0]>0&&n[0]<4?1:+(n[0]+n[1])),!o&&e&&(n=e.match(/Edge\/(\d+)/),(!n||n[1]>=74)&&(n=e.match(/Chrome\/(\d+)/),n&&(o=+n[1]))),kt=o,kt}l(Xn,"requireEnvironmentV8Version");var jt,Lo;function ff(){if(Lo)return jt;Lo=1;var s=Xn(),e=Z(),r=Q(),t=r.String;return jt=!!Object.getOwnPropertySymbols&&!e(function(){var i=Symbol("symbol detection");return!t(i)||!(Object(i)instanceof Symbol)||!Symbol.sham&&s&&s<41}),jt}l(ff,"requireSymbolConstructorDetection");var Bt,ko;function cf(){if(ko)return Bt;ko=1;var s=ff();return Bt=s&&!Symbol.sham&&typeof Symbol.iterator=="symbol",Bt}l(cf,"requireUseSymbolAsUid");var Ut,jo;function vf(){if(jo)return Ut;jo=1;var s=sr(),e=ee(),r=at(),t=cf(),i=Object;return Ut=t?function(a){return typeof a=="symbol"}:function(a){var n=s("Symbol");return e(n)&&r(n.prototype,i(a))},Ut}l(vf,"requireIsSymbol");var Ft,Bo;function nt(){if(Bo)return Ft;Bo=1;var s=String;return Ft=l(function(e){try{return s(e)}catch{return"Object"}},"tryToString"),Ft}l(nt,"requireTryToString");var Gt,Uo;function $e(){if(Uo)return Gt;Uo=1;var s=ee(),e=nt(),r=TypeError;return Gt=l(function(t){if(s(t))return t;throw new r(e(t)+" is not a function")},"aCallable"),Gt}l($e,"requireACallable");var $t,Fo;function gr(){if(Fo)return $t;Fo=1;var s=$e(),e=it();return $t=l(function(r,t){var i=r[t];return e(i)?void 0:s(i)},"getMethod"),$t}l(gr,"requireGetMethod");var zt,Go;function Yf(){if(Go)return zt;Go=1;var s=se(),e=ee(),r=pe(),t=TypeError;return zt=l(function(i,a){var n,o;if(a==="string"&&e(n=i.toString)&&!r(o=s(n,i))||e(n=i.valueOf)&&!r(o=s(n,i))||a!=="string"&&e(n=i.toString)&&!r(o=s(n,i)))return o;throw new t("Can't convert object to primitive value")},"ordinaryToPrimitive"),zt}l(Yf,"requireOrdinaryToPrimitive");var Ht={exports:{}},Wt,$o;function De(){return $o||($o=1,Wt=!1),Wt}l(De,"requireIsPure");var Yt,zo;function Kn(){if(zo)return Yt;zo=1;var s=Q(),e=Object.defineProperty;return Yt=l(function(r,t){try{e(s,r,{value:t,configurable:!0,writable:!0})}catch{s[r]=t}return t},"defineGlobalProperty"),Yt}l(Kn,"requireDefineGlobalProperty");var Ho;function Qn(){if(Ho)return Ht.exports;Ho=1;var s=De(),e=Q(),r=Kn(),t="__core-js_shared__",i=Ht.exports=e[t]||r(t,{});return(i.versions||(i.versions=[])).push({version:"3.48.0",mode:s?"pure":"global",copyright:"© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.",license:"https://github.com/zloirock/core-js/blob/v3.48.0/LICENSE",source:"https://github.com/zloirock/core-js"}),Ht.exports}l(Qn,"requireSharedStore");var Xt,Wo;function Zn(){if(Wo)return Xt;Wo=1;var s=Qn();return Xt=l(function(e,r){return s[e]||(s[e]=r||{})},"shared"),Xt}l(Zn,"requireShared");var Kt,Yo;function st(){if(Yo)return Kt;Yo=1;var s=Ne(),e=Object;return Kt=l(function(r){return e(s(r))},"toObject"),Kt}l(st,"requireToObject");var Qt,Xo;function Me(){if(Xo)return Qt;Xo=1;var s=J(),e=st(),r=s({}.hasOwnProperty);return Qt=Object.hasOwn||l(function(i,a){return r(e(i),a)},"hasOwn"),Qt}l(Me,"requireHasOwnProperty");var Zt,Ko;function gf(){if(Ko)return Zt;Ko=1;var s=J(),e=0,r=Math.random(),t=s(1.1.toString);return Zt=l(function(i){return"Symbol("+(i===void 0?"":i)+")_"+t(++e+r,36)},"uid"),Zt}l(gf,"requireUid");var Jt,Qo;function ne(){if(Qo)return Jt;Qo=1;var s=Q(),e=Zn(),r=Me(),t=gf(),i=ff(),a=cf(),n=s.Symbol,o=e("wks"),u=a?n.for||n:n&&n.withoutSetter||t;return Jt=l(function(h){return r(o,h)||(o[h]=i&&r(n,h)?n[h]:u("Symbol."+h)),o[h]},"wellKnownSymbol"),Jt}l(ne,"requireWellKnownSymbol");var ei,Zo;function Xf(){if(Zo)return ei;Zo=1;var s=se(),e=pe(),r=vf(),t=gr(),i=Yf(),a=ne(),n=TypeError,o=a("toPrimitive");return ei=l(function(u,h){if(!e(u)||r(u))return u;var f=t(u,o),v;if(f){if(h===void 0&&(h="default"),v=s(f,u,h),!e(v)||r(v))return v;throw new n("Can't convert object to primitive value")}return h===void 0&&(h="number"),i(u,h)},"toPrimitive$1"),ei}l(Xf,"requireToPrimitive");var ri,Jo;function df(){if(Jo)return ri;Jo=1;var s=Xf(),e=vf();return ri=l(function(r){var t=s(r,"string");return e(t)?t:t+""},"toPropertyKey$1"),ri}l(df,"requireToPropertyKey");var ti,eu;function ot(){if(eu)return ti;eu=1;var s=Q(),e=pe(),r=s.document,t=e(r)&&e(r.createElement);return ti=l(function(i){return t?r.createElement(i):{}},"documentCreateElement"),ti}l(ot,"requireDocumentCreateElement");var ii,ru;function pf(){if(ru)return ii;ru=1;var s=Ie(),e=Z(),r=ot();return ii=!s&&!e(function(){return Object.defineProperty(r("div"),"a",{get:l(function(){return 7},"get")}).a!==7}),ii}l(pf,"requireIe8DomDefine");var tu;function ut(){if(tu)return xt;tu=1;var s=Ie(),e=se(),r=Wf(),t=Yn(),i=Ar(),a=df(),n=Me(),o=pf(),u=Object.getOwnPropertyDescriptor;return xt.f=s?u:l(function(f,v){if(f=i(f),v=a(v),o)try{return u(f,v)}catch{}if(n(f,v))return t(!e(r.f,f,v),f[v])},"getOwnPropertyDescriptor"),xt}l(ut,"requireObjectGetOwnPropertyDescriptor");var ai={},ni,iu;function yf(){if(iu)return ni;iu=1;var s=Ie(),e=Z();return ni=s&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),ni}l(yf,"requireV8PrototypeDefineBug");var si,au;function le(){if(au)return si;au=1;var s=pe(),e=String,r=TypeError;return si=l(function(t){if(s(t))return t;throw new r(e(t)+" is not an object")},"anObject"),si}l(le,"requireAnObject");var nu;function Ke(){if(nu)return ai;nu=1;var s=Ie(),e=pf(),r=yf(),t=le(),i=df(),a=TypeError,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,u="enumerable",h="configurable",f="writable";return ai.f=s?r?l(function(g,c,d){if(t(g),c=i(c),t(d),typeof g=="function"&&c==="prototype"&&"value"in d&&f in d&&!d[f]){var p=o(g,c);p&&p[f]&&(g[c]=d.value,d={configurable:h in d?d[h]:p[h],enumerable:u in d?d[u]:p[u],writable:!1})}return n(g,c,d)},"defineProperty"):n:l(function(g,c,d){if(t(g),c=i(c),t(d),e)try{return n(g,c,d)}catch{}if("get"in d||"set"in d)throw new a("Accessors not supported");return"value"in d&&(g[c]=d.value),g},"defineProperty"),ai}l(Ke,"requireObjectDefineProperty");var oi,su;function Nr(){if(su)return oi;su=1;var s=Ie(),e=Ke(),r=Yn();return oi=s?function(t,i,a){return e.f(t,i,r(1,a))}:function(t,i,a){return t[i]=a,t},oi}l(Nr,"requireCreateNonEnumerableProperty");var ui={exports:{}},li,ou;function lt(){if(ou)return li;ou=1;var s=Ie(),e=Me(),r=Function.prototype,t=s&&Object.getOwnPropertyDescriptor,i=e(r,"name"),a=i&&l((function(){}),"something").name==="something",n=i&&(!s||s&&t(r,"name").configurable);return li={EXISTS:i,PROPER:a,CONFIGURABLE:n},li}l(lt,"requireFunctionName");var hi,uu;function Jn(){if(uu)return hi;uu=1;var s=J(),e=ee(),r=Qn(),t=s(Function.toString);return e(r.inspectSource)||(r.inspectSource=function(i){return t(i)}),hi=r.inspectSource,hi}l(Jn,"requireInspectSource");var fi,lu;function Kf(){if(lu)return fi;lu=1;var s=Q(),e=ee(),r=s.WeakMap;return fi=e(r)&&/native code/.test(String(r)),fi}l(Kf,"requireWeakMapBasicDetection");var ci,hu;function es(){if(hu)return ci;hu=1;var s=Zn(),e=gf(),r=s("keys");return ci=l(function(t){return r[t]||(r[t]=e(t))},"sharedKey"),ci}l(es,"requireSharedKey");var vi,fu;function rs(){return fu||(fu=1,vi={}),vi}l(rs,"requireHiddenKeys");var gi,cu;function ht(){if(cu)return gi;cu=1;var s=Kf(),e=Q(),r=pe(),t=Nr(),i=Me(),a=Qn(),n=es(),o=rs(),u="Object already initialized",h=e.TypeError,f=e.WeakMap,v,g,c,d=l(function(b){return c(b)?g(b):v(b,{})},"enforce"),p=l(function(b){return function(x){var O;if(!r(x)||(O=g(x)).type!==b)throw new h("Incompatible receiver, "+b+" required");return O}},"getterFor");if(s||a.state){var y=a.state||(a.state=new f);y.get=y.get,y.has=y.has,y.set=y.set,v=l(function(b,x){if(y.has(b))throw new h(u);return x.facade=b,y.set(b,x),x},"set"),g=l(function(b){return y.get(b)||{}},"get"),c=l(function(b){return y.has(b)},"has")}else{var m=n("state");o[m]=!0,v=l(function(b,x){if(i(b,m))throw new h(u);return x.facade=b,t(b,m,x),x},"set"),g=l(function(b){return i(b,m)?b[m]:{}},"get"),c=l(function(b){return i(b,m)},"has")}return gi={set:v,get:g,has:c,enforce:d,getterFor:p},gi}l(ht,"requireInternalState");var vu;function mf(){if(vu)return ui.exports;vu=1;var s=J(),e=Z(),r=ee(),t=Me(),i=Ie(),a=lt().CONFIGURABLE,n=Jn(),o=ht(),u=o.enforce,h=o.get,f=String,v=Object.defineProperty,g=s("".slice),c=s("".replace),d=s([].join),p=i&&!e(function(){return v(function(){},"length",{value:8}).length!==8}),y=String(String).split("String"),m=ui.exports=function(b,x,O){g(f(x),0,7)==="Symbol("&&(x="["+c(f(x),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),O&&O.getter&&(x="get "+x),O&&O.setter&&(x="set "+x),(!t(b,"name")||a&&b.name!==x)&&(i?v(b,"name",{value:x,configurable:!0}):b.name=x),p&&O&&t(O,"arity")&&b.length!==O.arity&&v(b,"length",{value:O.arity});try{O&&t(O,"constructor")&&O.constructor?i&&v(b,"prototype",{writable:!1}):b.prototype&&(b.prototype=void 0)}catch{}var R=u(b);return t(R,"source")||(R.source=d(y,typeof x=="string"?x:"")),b};return Function.prototype.toString=m(l(function(){return r(this)&&h(this).source||n(this)},"toString"),"toString"),ui.exports}l(mf,"requireMakeBuiltIn");var di,gu;function or(){if(gu)return di;gu=1;var s=ee(),e=Ke(),r=mf(),t=Kn();return di=l(function(i,a,n,o){o||(o={});var u=o.enumerable,h=o.name!==void 0?o.name:a;if(s(n)&&r(n,h,o),o.global)u?i[a]=n:t(a,n);else{try{o.unsafe?i[a]&&(u=!0):delete i[a]}catch{}u?i[a]=n:e.f(i,a,{value:n,enumerable:!1,configurable:!o.nonConfigurable,writable:!o.nonWritable})}return i},"defineBuiltIn"),di}l(or,"requireDefineBuiltIn");var pi={},yi,du;function Qf(){if(du)return yi;du=1;var s=Math.ceil,e=Math.floor;return yi=Math.trunc||l(function(t){var i=+t;return(i>0?e:s)(i)},"trunc"),yi}l(Qf,"requireMathTrunc");var mi,pu;function ft(){if(pu)return mi;pu=1;var s=Qf();return mi=l(function(e){var r=+e;return r!==r||r===0?0:s(r)},"toIntegerOrInfinity"),mi}l(ft,"requireToIntegerOrInfinity");var bi,yu;function Zf(){if(yu)return bi;yu=1;var s=ft(),e=Math.max,r=Math.min;return bi=l(function(t,i){var a=s(t);return a<0?e(a+i,0):r(a,i)},"toAbsoluteIndex"),bi}l(Zf,"requireToAbsoluteIndex");var xi,mu;function dr(){if(mu)return xi;mu=1;var s=ft(),e=Math.min;return xi=l(function(r){var t=s(r);return t>0?e(t,9007199254740991):0},"toLength"),xi}l(dr,"requireToLength");var Oi,bu;function ts(){if(bu)return Oi;bu=1;var s=dr();return Oi=l(function(e){return s(e.length)},"lengthOfArrayLike"),Oi}l(ts,"requireLengthOfArrayLike");var Ti,xu;function bf(){if(xu)return Ti;xu=1;var s=Ar(),e=Zf(),r=ts(),t=l(function(i){return function(a,n,o){var u=s(a),h=r(u);if(h===0)return!i&&-1;var f=e(o,h),v;if(i&&n!==n){for(;h>f;)if(v=u[f++],v!==v)return!0}else for(;h>f;f++)if((i||f in u)&&u[f]===n)return i||f||0;return!i&&-1}},"createMethod");return Ti={includes:t(!0),indexOf:t(!1)},Ti}l(bf,"requireArrayIncludes");var Si,Ou;function xf(){if(Ou)return Si;Ou=1;var s=J(),e=Me(),r=Ar(),t=bf().indexOf,i=rs(),a=s([].push);return Si=l(function(n,o){var u=r(n),h=0,f=[],v;for(v in u)!e(i,v)&&e(u,v)&&a(f,v);for(;o.length>h;)e(u,v=o[h++])&&(~t(f,v)||a(f,v));return f},"objectKeysInternal"),Si}l(xf,"requireObjectKeysInternal");var Ri,Tu;function is(){return Tu||(Tu=1,Ri=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),Ri}l(is,"requireEnumBugKeys");var Su;function Jf(){if(Su)return pi;Su=1;var s=xf(),e=is(),r=e.concat("length","prototype");return pi.f=Object.getOwnPropertyNames||l(function(i){return s(i,r)},"getOwnPropertyNames"),pi}l(Jf,"requireObjectGetOwnPropertyNames");var Ci={},Ru;function ec(){return Ru||(Ru=1,Ci.f=Object.getOwnPropertySymbols),Ci}l(ec,"requireObjectGetOwnPropertySymbols");var Ei,Cu;function rc(){if(Cu)return Ei;Cu=1;var s=sr(),e=J(),r=Jf(),t=ec(),i=le(),a=e([].concat);return Ei=s("Reflect","ownKeys")||l(function(o){var u=r.f(i(o)),h=t.f;return h?a(u,h(o)):u},"ownKeys"),Ei}l(rc,"requireOwnKeys");var wi,Eu;function tc(){if(Eu)return wi;Eu=1;var s=Me(),e=rc(),r=ut(),t=Ke();return wi=l(function(i,a,n){for(var o=e(a),u=t.f,h=r.f,f=0;f<o.length;f++){var v=o[f];!s(i,v)&&!(n&&s(n,v))&&u(i,v,h(a,v))}},"copyConstructorProperties"),wi}l(tc,"requireCopyConstructorProperties");var Pi,wu;function Of(){if(wu)return Pi;wu=1;var s=Z(),e=ee(),r=/#|\.prototype\./,t=l(function(u,h){var f=a[i(u)];return f===o?!0:f===n?!1:e(h)?s(h):!!h},"isForced"),i=t.normalize=function(u){return String(u).replace(r,".").toLowerCase()},a=t.data={},n=t.NATIVE="N",o=t.POLYFILL="P";return Pi=t,Pi}l(Of,"requireIsForced");var Ai,Pu;function he(){if(Pu)return Ai;Pu=1;var s=Q(),e=ut().f,r=Nr(),t=or(),i=Kn(),a=tc(),n=Of();return Ai=l(function(o,u){var h=o.target,f=o.global,v=o.stat,g,c,d,p,y,m;if(f?c=s:v?c=s[h]||i(h,{}):c=s[h]&&s[h].prototype,c)for(d in u){if(y=u[d],o.dontCallGetSet?(m=e(c,d),p=m&&m.value):p=c[d],g=n(f?d:h+(v?".":"#")+d,o.forced),!g&&p!==void 0){if(typeof y==typeof p)continue;a(y,p)}(o.sham||p&&p.sham)&&r(y,"sham",!0),t(c,d,y,o)}},"_export"),Ai}l(he,"require_export");var Ii,Au;function Tf(){if(Au)return Ii;Au=1;var s=Q(),e=Ir(),r=nr(),t=l(function(i){return e.slice(0,i.length)===i},"userAgentStartsWith");return Ii=(function(){return t("Bun/")?"BUN":t("Cloudflare-Workers")?"CLOUDFLARE":t("Deno/")?"DENO":t("Node.js/")?"NODE":s.Bun&&typeof Bun.version=="string"?"BUN":s.Deno&&typeof Deno.version=="object"?"DENO":r(s.process)==="process"?"NODE":s.window&&s.document?"BROWSER":"REST"})(),Ii}l(Tf,"requireEnvironment");var Ni,Iu;function ct(){if(Iu)return Ni;Iu=1;var s=Tf();return Ni=s==="NODE",Ni}l(ct,"requireEnvironmentIsNode");var Mi,Nu;function ic(){if(Nu)return Mi;Nu=1;var s=Q();return Mi=s,Mi}l(ic,"requirePath");var qi,Mu;function ac(){if(Mu)return qi;Mu=1;var s=J(),e=$e();return qi=l(function(r,t,i){try{return s(e(Object.getOwnPropertyDescriptor(r,t)[i]))}catch{}},"functionUncurryThisAccessor"),qi}l(ac,"requireFunctionUncurryThisAccessor");var _i,qu;function nc(){if(qu)return _i;qu=1;var s=pe();return _i=l(function(e){return s(e)||e===null},"isPossiblePrototype"),_i}l(nc,"requireIsPossiblePrototype");var Di,_u;function sc(){if(_u)return Di;_u=1;var s=nc(),e=String,r=TypeError;return Di=l(function(t){if(s(t))return t;throw new r("Can't set "+e(t)+" as a prototype")},"aPossiblePrototype"),Di}l(sc,"requireAPossiblePrototype");var Vi,Du;function Sf(){if(Du)return Vi;Du=1;var s=ac(),e=pe(),r=Ne(),t=sc();return Vi=Object.setPrototypeOf||("__proto__"in{}?(function(){var i=!1,a={},n;try{n=s(Object.prototype,"__proto__","set"),n(a,[]),i=a instanceof Array}catch{}return l(function(u,h){return r(u),t(h),e(u)&&(i?n(u,h):u.__proto__=h),u},"setPrototypeOf")})():void 0),Vi}l(Sf,"requireObjectSetPrototypeOf");var Li,Vu;function vt(){if(Vu)return Li;Vu=1;var s=Ke().f,e=Me(),r=ne(),t=r("toStringTag");return Li=l(function(i,a,n){i&&!n&&(i=i.prototype),i&&!e(i,t)&&s(i,t,{configurable:!0,value:a})},"setToStringTag"),Li}l(vt,"requireSetToStringTag");var ki,Lu;function oc(){if(Lu)return ki;Lu=1;var s=mf(),e=Ke();return ki=l(function(r,t,i){return i.get&&s(i.get,t,{getter:!0}),i.set&&s(i.set,t,{setter:!0}),e.f(r,t,i)},"defineBuiltInAccessor"),ki}l(oc,"requireDefineBuiltInAccessor");var ji,ku;function uc(){if(ku)return ji;ku=1;var s=sr(),e=oc(),r=ne(),t=Ie(),i=r("species");return ji=l(function(a){var n=s(a);t&&n&&!n[i]&&e(n,i,{configurable:!0,get:l(function(){return this},"get")})},"setSpecies"),ji}l(uc,"requireSetSpecies");var Bi,ju;function lc(){if(ju)return Bi;ju=1;var s=at(),e=TypeError;return Bi=l(function(r,t){if(s(t,r))return r;throw new e("Incorrect invocation")},"anInstance"),Bi}l(lc,"requireAnInstance");var Ui,Bu;function hc(){if(Bu)return Ui;Bu=1;var s=ne(),e=s("toStringTag"),r={};return r[e]="z",Ui=String(r)==="[object z]",Ui}l(hc,"requireToStringTagSupport");var Fi,Uu;function as(){if(Uu)return Fi;Uu=1;var s=hc(),e=ee(),r=nr(),t=ne(),i=t("toStringTag"),a=Object,n=r((function(){return arguments})())==="Arguments",o=l(function(u,h){try{return u[h]}catch{}},"tryGet");return Fi=s?r:function(u){var h,f,v;return u===void 0?"Undefined":u===null?"Null":typeof(f=o(h=a(u),i))=="string"?f:n?r(h):(v=r(h))==="Object"&&e(h.callee)?"Arguments":v},Fi}l(as,"requireClassof");var Gi,Fu;function fc(){if(Fu)return Gi;Fu=1;var s=J(),e=Z(),r=ee(),t=as(),i=sr(),a=Jn(),n=l(function(){},"noop"),o=i("Reflect","construct"),u=/^\s*(?:class|function)\b/,h=s(u.exec),f=!u.test(n),v=l(function(d){if(!r(d))return!1;try{return o(n,[],d),!0}catch{return!1}},"isConstructor"),g=l(function(d){if(!r(d))return!1;switch(t(d)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return f||!!h(u,a(d))}catch{return!0}},"isConstructor");return g.sham=!0,Gi=!o||e(function(){var c;return v(v.call)||!v(Object)||!v(function(){c=!0})||c})?g:v,Gi}l(fc,"requireIsConstructor");var $i,Gu;function cc(){if(Gu)return $i;Gu=1;var s=fc(),e=nt(),r=TypeError;return $i=l(function(t){if(s(t))return t;throw new r(e(t)+" is not a constructor")},"aConstructor"),$i}l(cc,"requireAConstructor");var zi,$u;function Rf(){if($u)return zi;$u=1;var s=le(),e=cc(),r=it(),t=ne(),i=t("species");return zi=l(function(a,n){var o=s(a).constructor,u;return o===void 0||r(u=s(o)[i])?n:e(u)},"speciesConstructor"),zi}l(Rf,"requireSpeciesConstructor");var Hi,zu;function Cf(){if(zu)return Hi;zu=1;var s=tt(),e=Function.prototype,r=e.apply,t=e.call;return Hi=typeof Reflect=="object"&&Reflect.apply||(s?t.bind(r):function(){return t.apply(r,arguments)}),Hi}l(Cf,"requireFunctionApply");var Wi,Hu;function gt(){if(Hu)return Wi;Hu=1;var s=nr(),e=J();return Wi=l(function(r){if(s(r)==="Function")return e(r)},"functionUncurryThisClause"),Wi}l(gt,"requireFunctionUncurryThisClause");var Yi,Wu;function ns(){if(Wu)return Yi;Wu=1;var s=gt(),e=$e(),r=tt(),t=s(s.bind);return Yi=l(function(i,a){return e(i),a===void 0?i:r?t(i,a):function(){return i.apply(a,arguments)}},"functionBindContext"),Yi}l(ns,"requireFunctionBindContext");var Xi,Yu;function Ef(){if(Yu)return Xi;Yu=1;var s=sr();return Xi=s("document","documentElement"),Xi}l(Ef,"requireHtml");var Ki,Xu;function vc(){if(Xu)return Ki;Xu=1;var s=J();return Ki=s([].slice),Ki}l(vc,"requireArraySlice");var Qi,Ku;function gc(){if(Ku)return Qi;Ku=1;var s=TypeError;return Qi=l(function(e,r){if(e<r)throw new s("Not enough arguments");return e},"validateArgumentsLength"),Qi}l(gc,"requireValidateArgumentsLength");var Zi,Qu;function wf(){if(Qu)return Zi;Qu=1;var s=Ir();return Zi=/(?:ipad|iphone|ipod).*applewebkit/i.test(s),Zi}l(wf,"requireEnvironmentIsIos");var Ji,Zu;function Pf(){if(Zu)return Ji;Zu=1;var s=Q(),e=Cf(),r=ns(),t=ee(),i=Me(),a=Z(),n=Ef(),o=vc(),u=ot(),h=gc(),f=wf(),v=ct(),g=s.setImmediate,c=s.clearImmediate,d=s.process,p=s.Dispatch,y=s.Function,m=s.MessageChannel,b=s.String,x=0,O={},R="onreadystatechange",C,T,A,q;a(function(){C=s.location});var I=l(function(w){if(i(O,w)){var P=O[w];delete O[w],P()}},"run"),D=l(function(w){return function(){I(w)}},"runner"),N=l(function(w){I(w.data)},"eventListener"),B=l(function(w){s.postMessage(b(w),C.protocol+"//"+C.host)},"globalPostMessageDefer");return(!g||!c)&&(g=l(function(P){h(arguments.length,1);var G=t(P)?P:y(P),k=o(arguments,1);return O[++x]=function(){e(G,void 0,k)},T(x),x},"setImmediate"),c=l(function(P){delete O[P]},"clearImmediate"),v?T=l(function(w){d.nextTick(D(w))},"defer"):p&&p.now?T=l(function(w){p.now(D(w))},"defer"):m&&!f?(A=new m,q=A.port2,A.port1.onmessage=N,T=r(q.postMessage,q)):s.addEventListener&&t(s.postMessage)&&!s.importScripts&&C&&C.protocol!=="file:"&&!a(B)?(T=B,s.addEventListener("message",N,!1)):R in u("script")?T=l(function(w){n.appendChild(u("script"))[R]=function(){n.removeChild(this),I(w)}},"defer"):T=l(function(w){setTimeout(D(w),0)},"defer")),Ji={set:g,clear:c},Ji}l(Pf,"requireTask");var ea,Ju;function dc(){if(Ju)return ea;Ju=1;var s=Q(),e=Ie(),r=Object.getOwnPropertyDescriptor;return ea=l(function(t){if(!e)return s[t];var i=r(s,t);return i&&i.value},"safeGetBuiltIn"),ea}l(dc,"requireSafeGetBuiltIn");var ra,el;function Af(){if(el)return ra;el=1;var s=l(function(){this.head=null,this.tail=null},"Queue");return s.prototype={add:l(function(e){var r={item:e,next:null},t=this.tail;t?t.next=r:this.head=r,this.tail=r},"add"),get:l(function(){var e=this.head;if(e){var r=this.head=e.next;return r===null&&(this.tail=null),e.item}},"get")},ra=s,ra}l(Af,"requireQueue");var ta,rl;function pc(){if(rl)return ta;rl=1;var s=Ir();return ta=/ipad|iphone|ipod/i.test(s)&&typeof Pebble<"u",ta}l(pc,"requireEnvironmentIsIosPebble");var ia,tl;function yc(){if(tl)return ia;tl=1;var s=Ir();return ia=/web0s(?!.*chrome)/i.test(s),ia}l(yc,"requireEnvironmentIsWebosWebkit");var aa,il;function mc(){if(il)return aa;il=1;var s=Q(),e=dc(),r=ns(),t=Pf().set,i=Af(),a=wf(),n=pc(),o=yc(),u=ct(),h=s.MutationObserver||s.WebKitMutationObserver,f=s.document,v=s.process,g=s.Promise,c=e("queueMicrotask"),d,p,y,m,b;if(!c){var x=new i,O=l(function(){var R,C;for(u&&(R=v.domain)&&R.exit();C=x.get();)try{C()}catch(T){throw x.head&&d(),T}R&&R.enter()},"flush");!a&&!u&&!o&&h&&f?(p=!0,y=f.createTextNode(""),new h(O).observe(y,{characterData:!0}),d=l(function(){y.data=p=!p},"notify")):!n&&g&&g.resolve?(m=g.resolve(void 0),m.constructor=g,b=r(m.then,m),d=l(function(){b(O)},"notify")):u?d=l(function(){v.nextTick(O)},"notify"):(t=r(t,s),d=l(function(){t(O)},"notify")),c=l(function(R){x.head||d(),x.add(R)},"microtask")}return aa=c,aa}l(mc,"requireMicrotask");var na,al;function bc(){return al||(al=1,na=l(function(s,e){try{arguments.length===1?console.error(s):console.error(s,e)}catch{}},"hostReportErrors")),na}l(bc,"requireHostReportErrors");var sa,nl;function ss(){return nl||(nl=1,sa=l(function(s){try{return{error:!1,value:s()}}catch(e){return{error:!0,value:e}}},"perform")),sa}l(ss,"requirePerform");var oa,sl;function Mr(){if(sl)return oa;sl=1;var s=Q();return oa=s.Promise,oa}l(Mr,"requirePromiseNativeConstructor");var ua,ol;function qr(){if(ol)return ua;ol=1;var s=Q(),e=Mr(),r=ee(),t=Of(),i=Jn(),a=ne(),n=Tf(),o=De(),u=Xn(),h=e&&e.prototype,f=a("species"),v=!1,g=r(s.PromiseRejectionEvent),c=t("Promise",function(){var d=i(e),p=d!==String(e);if(!p&&u===66||o&&!(h.catch&&h.finally))return!0;if(!u||u<51||!/native code/.test(d)){var y=new e(function(x){x(1)}),m=l(function(x){x(function(){},function(){})},"FakePromise"),b=y.constructor={};if(b[f]=m,v=y.then(function(){})instanceof m,!v)return!0}return!p&&(n==="BROWSER"||n==="DENO")&&!g});return ua={CONSTRUCTOR:c,REJECTION_EVENT:g,SUBCLASSING:v},ua}l(qr,"requirePromiseConstructorDetection");var la={},ul;function _r(){if(ul)return la;ul=1;var s=$e(),e=TypeError,r=l(function(t){var i,a;this.promise=new t(function(n,o){if(i!==void 0||a!==void 0)throw new e("Bad Promise constructor");i=n,a=o}),this.resolve=s(i),this.reject=s(a)},"PromiseCapability");return la.f=function(t){return new r(t)},la}l(_r,"requireNewPromiseCapability");var ll;function xc(){if(ll)return yo;ll=1;var s=he(),e=De(),r=ct(),t=Q(),i=ic(),a=se(),n=or(),o=Sf(),u=vt(),h=uc(),f=$e(),v=ee(),g=pe(),c=lc(),d=Rf(),p=Pf().set,y=mc(),m=bc(),b=ss(),x=Af(),O=ht(),R=Mr(),C=qr(),T=_r(),A="Promise",q=C.CONSTRUCTOR,I=C.REJECTION_EVENT,D=C.SUBCLASSING,N=O.getterFor(A),B=O.set,w=R&&R.prototype,P=R,G=w,k=t.TypeError,L=t.document,_=t.process,M=T.f,j=M,H=!!(L&&L.createEvent&&t.dispatchEvent),W="unhandledrejection",X="rejectionhandled",oe=0,Oe=1,ue=2,ze=1,He=2,fe,qe,_e,xe,ce=l(function(E){var U;return g(E)&&v(U=E.then)?U:!1},"isThenable"),Te=l(function(E,U){var $=U.value,z=U.state===Oe,Y=z?E.ok:E.fail,Re=E.resolve,je=E.reject,Ce=E.domain,Ee,mr,br;try{Y?(z||(U.rejection===He&&We(U),U.rejection=ze),Y===!0?Ee=$:(Ce&&Ce.enter(),Ee=Y($),Ce&&(Ce.exit(),br=!0)),Ee===E.promise?je(new k("Promise-chain cycle")):(mr=ce(Ee))?a(mr,Ee,Re,je):Re(Ee)):je($)}catch(xr){Ce&&!br&&Ce.exit(),je(xr)}},"callReaction"),Le=l(function(E,U){E.notified||(E.notified=!0,y(function(){for(var $=E.reactions,z;z=$.get();)Te(z,E);E.notified=!1,U&&!E.rejection&&Qe(E)}))},"notify"),ke=l(function(E,U,$){var z,Y;H?(z=L.createEvent("Event"),z.promise=U,z.reason=$,z.initEvent(E,!1,!0),t.dispatchEvent(z)):z={promise:U,reason:$},!I&&(Y=t["on"+E])?Y(z):E===W&&m("Unhandled promise rejection",$)},"dispatchEvent"),Qe=l(function(E){a(p,t,function(){var U=E.facade,$=E.value,z=yr(E),Y;if(z&&(Y=b(function(){r?_.emit("unhandledRejection",$,U):ke(W,U,$)}),E.rejection=r||yr(E)?He:ze,Y.error))throw Y.value})},"onUnhandled"),yr=l(function(E){return E.rejection!==ze&&!E.parent},"isUnhandled"),We=l(function(E){a(p,t,function(){var U=E.facade;r?_.emit("rejectionHandled",U):ke(X,U,E.value)})},"onHandleUnhandled"),ve=l(function(E,U,$){return function(z){E(U,z,$)}},"bind"),ge=l(function(E,U,$){E.done||(E.done=!0,$&&(E=$),E.value=U,E.state=ue,Le(E,!0))},"internalReject"),Se=l(function(E,U,$){if(!E.done){E.done=!0,$&&(E=$);try{if(E.facade===U)throw new k("Promise can't be resolved itself");var z=ce(U);z?y(function(){var Y={done:!1};try{a(z,U,ve(Se,Y,E),ve(ge,Y,E))}catch(Re){ge(Y,Re,E)}}):(E.value=U,E.state=Oe,Le(E,!1))}catch(Y){ge({done:!1},Y,E)}}},"internalResolve");if(q&&(P=l(function(U){c(this,G),f(U),a(fe,this);var $=N(this);try{U(ve(Se,$),ve(ge,$))}catch(z){ge($,z)}},"Promise"),G=P.prototype,fe=l(function(U){B(this,{type:A,done:!1,notified:!1,parent:!1,reactions:new x,rejection:!1,state:oe,value:null})},"Promise"),fe.prototype=n(G,"then",l(function(U,$){var z=N(this),Y=M(d(this,P));return z.parent=!0,Y.ok=v(U)?U:!0,Y.fail=v($)&&$,Y.domain=r?_.domain:void 0,z.state===oe?z.reactions.add(Y):y(function(){Te(Y,z)}),Y.promise},"then")),qe=l(function(){var E=new fe,U=N(E);this.promise=E,this.resolve=ve(Se,U),this.reject=ve(ge,U)},"OwnPromiseCapability"),T.f=M=l(function(E){return E===P||E===_e?new qe(E):j(E)},"newPromiseCapability"),!e&&v(R)&&w!==Object.prototype)){xe=w.then,D||n(w,"then",l(function(U,$){var z=this;return new P(function(Y,Re){a(xe,z,Y,Re)}).then(U,$)},"then"),{unsafe:!0});try{delete w.constructor}catch{}o&&o(w,G)}return s({global:!0,constructor:!0,wrap:!0,forced:q},{Promise:P}),_e=i.Promise,u(P,A,!1,!0),h(A),yo}l(xc,"requireEs_promise_constructor");var hl={},ha,fl;function Dr(){return fl||(fl=1,ha={}),ha}l(Dr,"requireIterators");var fa,cl;function Oc(){if(cl)return fa;cl=1;var s=ne(),e=Dr(),r=s("iterator"),t=Array.prototype;return fa=l(function(i){return i!==void 0&&(e.Array===i||t[r]===i)},"isArrayIteratorMethod"),fa}l(Oc,"requireIsArrayIteratorMethod");var ca,vl;function If(){if(vl)return ca;vl=1;var s=as(),e=gr(),r=it(),t=Dr(),i=ne(),a=i("iterator");return ca=l(function(n){if(!r(n))return e(n,a)||e(n,"@@iterator")||t[s(n)]},"getIteratorMethod"),ca}l(If,"requireGetIteratorMethod");var va,gl;function Tc(){if(gl)return va;gl=1;var s=se(),e=$e(),r=le(),t=nt(),i=If(),a=TypeError;return va=l(function(n,o){var u=arguments.length<2?i(n):o;if(e(u))return r(s(u,n));throw new a(t(n)+" is not iterable")},"getIterator"),va}l(Tc,"requireGetIterator");var ga,dl;function Sc(){if(dl)return ga;dl=1;var s=se(),e=le(),r=gr();return ga=l(function(t,i,a){var n,o;e(t);try{if(n=r(t,"return"),!n){if(i==="throw")throw a;return a}n=s(n,t)}catch(u){o=!0,n=u}if(i==="throw")throw a;if(o)throw n;return e(n),a},"iteratorClose"),ga}l(Sc,"requireIteratorClose");var da,pl;function Nf(){if(pl)return da;pl=1;var s=ns(),e=se(),r=le(),t=nt(),i=Oc(),a=ts(),n=at(),o=Tc(),u=If(),h=Sc(),f=TypeError,v=l(function(c,d){this.stopped=c,this.result=d},"Result"),g=v.prototype;return da=l(function(c,d,p){var y=p&&p.that,m=!!(p&&p.AS_ENTRIES),b=!!(p&&p.IS_RECORD),x=!!(p&&p.IS_ITERATOR),O=!!(p&&p.INTERRUPTED),R=s(d,y),C,T,A,q,I,D,N,B=l(function(P){return C&&h(C,"normal"),new v(!0,P)},"stop"),w=l(function(P){return m?(r(P),O?R(P[0],P[1],B):R(P[0],P[1])):O?R(P,B):R(P)},"callFn");if(b)C=c.iterator;else if(x)C=c;else{if(T=u(c),!T)throw new f(t(c)+" is not iterable");if(i(T)){for(A=0,q=a(c);q>A;A++)if(I=w(c[A]),I&&n(g,I))return I;return new v(!1)}C=o(c,T)}for(D=b?c.next:C.next;!(N=e(D,C)).done;){try{I=w(N.value)}catch(P){h(C,"throw",P)}if(typeof I=="object"&&I&&n(g,I))return I}return new v(!1)},"iterate"),da}l(Nf,"requireIterate");var pa,yl;function Rc(){if(yl)return pa;yl=1;var s=ne(),e=s("iterator"),r=!1;try{var t=0,i={next:l(function(){return{done:!!t++}},"next"),return:l(function(){r=!0},"return")};i[e]=function(){return this},Array.from(i,function(){throw 2})}catch{}return pa=l(function(a,n){try{if(!n&&!r)return!1}catch{return!1}var o=!1;try{var u={};u[e]=function(){return{next:l(function(){return{done:o=!0}},"next")}},a(u)}catch{}return o},"checkCorrectnessOfIteration"),pa}l(Rc,"requireCheckCorrectnessOfIteration");var ya,ml;function Mf(){if(ml)return ya;ml=1;var s=Mr(),e=Rc(),r=qr().CONSTRUCTOR;return ya=r||!e(function(t){s.all(t).then(void 0,function(){})}),ya}l(Mf,"requirePromiseStaticsIncorrectIteration");var bl;function Cc(){if(bl)return hl;bl=1;var s=he(),e=se(),r=$e(),t=_r(),i=ss(),a=Nf(),n=Mf();return s({target:"Promise",stat:!0,forced:n},{all:l(function(u){var h=this,f=t.f(h),v=f.resolve,g=f.reject,c=i(function(){var d=r(h.resolve),p=[],y=0,m=1;a(u,function(b){var x=y++,O=!1;m++,e(d,h,b).then(function(R){O||(O=!0,p[x]=R,--m||v(p))},g)}),--m||v(p)});return c.error&&g(c.value),f.promise},"all")}),hl}l(Cc,"requireEs_promise_all");var xl={},Ol;function Ec(){if(Ol)return xl;Ol=1;var s=he(),e=De(),r=qr().CONSTRUCTOR,t=Mr(),i=sr(),a=ee(),n=or(),o=t&&t.prototype;if(s({target:"Promise",proto:!0,forced:r,real:!0},{catch:l(function(h){return this.then(void 0,h)},"catch")}),!e&&a(t)){var u=i("Promise").prototype.catch;o.catch!==u&&n(o,"catch",u,{unsafe:!0})}return xl}l(Ec,"requireEs_promise_catch");var Tl={},Sl;function wc(){if(Sl)return Tl;Sl=1;var s=he(),e=se(),r=$e(),t=_r(),i=ss(),a=Nf(),n=Mf();return s({target:"Promise",stat:!0,forced:n},{race:l(function(u){var h=this,f=t.f(h),v=f.reject,g=i(function(){var c=r(h.resolve);a(u,function(d){e(c,h,d).then(f.resolve,v)})});return g.error&&v(g.value),f.promise},"race")}),Tl}l(wc,"requireEs_promise_race");var Rl={},Cl;function Pc(){if(Cl)return Rl;Cl=1;var s=he(),e=_r(),r=qr().CONSTRUCTOR;return s({target:"Promise",stat:!0,forced:r},{reject:l(function(i){var a=e.f(this),n=a.reject;return n(i),a.promise},"reject")}),Rl}l(Pc,"requireEs_promise_reject");var El={},ma,wl;function Ac(){if(wl)return ma;wl=1;var s=le(),e=pe(),r=_r();return ma=l(function(t,i){if(s(t),e(i)&&i.constructor===t)return i;var a=r.f(t),n=a.resolve;return n(i),a.promise},"promiseResolve"),ma}l(Ac,"requirePromiseResolve");var Pl;function Ic(){if(Pl)return El;Pl=1;var s=he(),e=sr(),r=De(),t=Mr(),i=qr().CONSTRUCTOR,a=Ac(),n=e("Promise"),o=r&&!i;return s({target:"Promise",stat:!0,forced:r||i},{resolve:l(function(h){return a(o&&this===n?t:this,h)},"resolve")}),El}l(Ic,"requireEs_promise_resolve");var Al;function Nc(){return Al||(Al=1,xc(),Cc(),Ec(),wc(),Pc(),Ic()),po}l(Nc,"requireEs_promise");Nc();function Il(s,e,r,t,i,a,n){try{var o=s[a](n),u=o.value}catch(h){return void r(h)}o.done?e(u):Promise.resolve(u).then(t,i)}l(Il,"asyncGeneratorStep");function Fe(s){return function(){var e=this,r=arguments;return new Promise(function(t,i){var a=s.apply(e,r);function n(u){Il(a,t,i,n,o,"next",u)}l(n,"_next");function o(u){Il(a,t,i,n,o,"throw",u)}l(o,"_throw"),n(void 0)})}}l(Fe,"_asyncToGenerator");var Nl={},Ml={},ba,ql;function Ve(){if(ql)return ba;ql=1;var s=as(),e=String;return ba=l(function(r){if(s(r)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return e(r)},"toString"),ba}l(Ve,"requireToString");var xa,_l;function qf(){if(_l)return xa;_l=1;var s=le();return xa=l(function(){var e=s(this),r="";return e.hasIndices&&(r+="d"),e.global&&(r+="g"),e.ignoreCase&&(r+="i"),e.multiline&&(r+="m"),e.dotAll&&(r+="s"),e.unicode&&(r+="u"),e.unicodeSets&&(r+="v"),e.sticky&&(r+="y"),r},"regexpFlags"),xa}l(qf,"requireRegexpFlags");var Oa,Dl;function _f(){if(Dl)return Oa;Dl=1;var s=Z(),e=Q(),r=e.RegExp,t=s(function(){var n=r("a","y");return n.lastIndex=2,n.exec("abcd")!==null}),i=t||s(function(){return!r("a","y").sticky}),a=t||s(function(){var n=r("^r","gy");return n.lastIndex=2,n.exec("str")!==null});return Oa={BROKEN_CARET:a,MISSED_STICKY:i,UNSUPPORTED_Y:t},Oa}l(_f,"requireRegexpStickyHelpers");var Ta={},Sa,Vl;function Mc(){if(Vl)return Sa;Vl=1;var s=xf(),e=is();return Sa=Object.keys||l(function(t){return s(t,e)},"keys"),Sa}l(Mc,"requireObjectKeys");var Ll;function qc(){if(Ll)return Ta;Ll=1;var s=Ie(),e=yf(),r=Ke(),t=le(),i=Ar(),a=Mc();return Ta.f=s&&!e?Object.defineProperties:l(function(o,u){t(o);for(var h=i(u),f=a(u),v=f.length,g=0,c;v>g;)r.f(o,c=f[g++],h[c]);return o},"defineProperties"),Ta}l(qc,"requireObjectDefineProperties");var Ra,kl;function dt(){if(kl)return Ra;kl=1;var s=le(),e=qc(),r=is(),t=rs(),i=Ef(),a=ot(),n=es(),o=">",u="<",h="prototype",f="script",v=n("IE_PROTO"),g=l(function(){},"EmptyConstructor"),c=l(function(b){return u+f+o+b+u+"/"+f+o},"scriptTag"),d=l(function(b){b.write(c("")),b.close();var x=b.parentWindow.Object;return b=null,x},"NullProtoObjectViaActiveX"),p=l(function(){var b=a("iframe"),x="java"+f+":",O;return b.style.display="none",i.appendChild(b),b.src=String(x),O=b.contentWindow.document,O.open(),O.write(c("document.F=Object")),O.close(),O.F},"NullProtoObjectViaIFrame"),y,m=l(function(){try{y=new ActiveXObject("htmlfile")}catch{}m=typeof document<"u"?document.domain&&y?d(y):p():d(y);for(var b=r.length;b--;)delete m[h][r[b]];return m()},"NullProtoObject");return t[v]=!0,Ra=Object.create||l(function(x,O){var R;return x!==null?(g[h]=s(x),R=new g,g[h]=null,R[v]=x):R=m(),O===void 0?R:e.f(R,O)},"create"),Ra}l(dt,"requireObjectCreate");var Ca,jl;function _c(){if(jl)return Ca;jl=1;var s=Z(),e=Q(),r=e.RegExp;return Ca=s(function(){var t=r(".","s");return!(t.dotAll&&t.test(`
1
+ var Hf=Object.defineProperty;var l=(s,e)=>Hf(s,"name",{value:e,configurable:!0});import{l as an,m as lf}from"./FeatureRegistry-C7MrfKHF.js";import{_ as nn}from"./main-cad-J2VK-edE.js";import"./featureDialogs-Bas0NDXF.js";import"./browserStorage-CvgF8ovw.js";import"./preload-helper-ZNr0Qq7Q.js";import"./Tube-TKgrLSLm.js";import"./chamfer-jmLT1RTy.js";import"./fillet-Bzd1Xae9.js";import"./deepClone-Dj59xCHB.js";import"./droppedWorkspaceFiles-8o-ZYOrf.js";import"./PartHistory-CyUoWFuO.js";import"./AssemblyConstraintRegistry-DJV0rHvz.js";import"./annUtils-Cv2fgMTB.js";import"./AnnotationRegistry-QZj3o2R6.js";var po={},yo={},Or,mo;function Q(){if(mo)return Or;mo=1;var s=l(function(e){return e&&e.Math===Math&&e},"check");return Or=s(typeof globalThis=="object"&&globalThis)||s(typeof window=="object"&&window)||s(typeof self=="object"&&self)||s(typeof an=="object"&&an)||s(typeof Or=="object"&&Or)||(function(){return this})()||Function("return this")(),Or}l(Q,"requireGlobalThis");var xt={},Ot,bo;function Z(){return bo||(bo=1,Ot=l(function(s){try{return!!s()}catch{return!0}},"fails")),Ot}l(Z,"requireFails");var Tt,xo;function Ie(){if(xo)return Tt;xo=1;var s=Z();return Tt=!s(function(){return Object.defineProperty({},1,{get:l(function(){return 7},"get")})[1]!==7}),Tt}l(Ie,"requireDescriptors");var St,Oo;function tt(){if(Oo)return St;Oo=1;var s=Z();return St=!s(function(){var e=(function(){}).bind();return typeof e!="function"||e.hasOwnProperty("prototype")}),St}l(tt,"requireFunctionBindNative");var Rt,To;function se(){if(To)return Rt;To=1;var s=tt(),e=Function.prototype.call;return Rt=s?e.bind(e):function(){return e.apply(e,arguments)},Rt}l(se,"requireFunctionCall");var Ct={},So;function Wf(){if(So)return Ct;So=1;var s={}.propertyIsEnumerable,e=Object.getOwnPropertyDescriptor,r=e&&!s.call({1:2},1);return Ct.f=r?l(function(i){var a=e(this,i);return!!a&&a.enumerable},"propertyIsEnumerable"):s,Ct}l(Wf,"requireObjectPropertyIsEnumerable");var Et,Ro;function Yn(){return Ro||(Ro=1,Et=l(function(s,e){return{enumerable:!(s&1),configurable:!(s&2),writable:!(s&4),value:e}},"createPropertyDescriptor")),Et}l(Yn,"requireCreatePropertyDescriptor");var wt,Co;function J(){if(Co)return wt;Co=1;var s=tt(),e=Function.prototype,r=e.call,t=s&&e.bind.bind(r,r);return wt=s?t:function(i){return function(){return r.apply(i,arguments)}},wt}l(J,"requireFunctionUncurryThis");var Pt,Eo;function nr(){if(Eo)return Pt;Eo=1;var s=J(),e=s({}.toString),r=s("".slice);return Pt=l(function(t){return r(e(t),8,-1)},"classofRaw"),Pt}l(nr,"requireClassofRaw");var At,wo;function hf(){if(wo)return At;wo=1;var s=J(),e=Z(),r=nr(),t=Object,i=s("".split);return At=e(function(){return!t("z").propertyIsEnumerable(0)})?function(a){return r(a)==="String"?i(a,""):t(a)}:t,At}l(hf,"requireIndexedObject");var It,Po;function it(){return Po||(Po=1,It=l(function(s){return s==null},"isNullOrUndefined")),It}l(it,"requireIsNullOrUndefined");var Nt,Ao;function Ne(){if(Ao)return Nt;Ao=1;var s=it(),e=TypeError;return Nt=l(function(r){if(s(r))throw new e("Can't call method on "+r);return r},"requireObjectCoercible"),Nt}l(Ne,"requireRequireObjectCoercible");var Mt,Io;function Ar(){if(Io)return Mt;Io=1;var s=hf(),e=Ne();return Mt=l(function(r){return s(e(r))},"toIndexedObject"),Mt}l(Ar,"requireToIndexedObject");var qt,No;function ee(){if(No)return qt;No=1;var s=typeof document=="object"&&document.all;return qt=typeof s>"u"&&s!==void 0?function(e){return typeof e=="function"||e===s}:function(e){return typeof e=="function"},qt}l(ee,"requireIsCallable");var _t,Mo;function pe(){if(Mo)return _t;Mo=1;var s=ee();return _t=l(function(e){return typeof e=="object"?e!==null:s(e)},"isObject"),_t}l(pe,"requireIsObject");var Dt,qo;function sr(){if(qo)return Dt;qo=1;var s=Q(),e=ee(),r=l(function(t){return e(t)?t:void 0},"aFunction");return Dt=l(function(t,i){return arguments.length<2?r(s[t]):s[t]&&s[t][i]},"getBuiltIn"),Dt}l(sr,"requireGetBuiltIn");var Vt,_o;function at(){if(_o)return Vt;_o=1;var s=J();return Vt=s({}.isPrototypeOf),Vt}l(at,"requireObjectIsPrototypeOf");var Lt,Do;function Ir(){if(Do)return Lt;Do=1;var s=Q(),e=s.navigator,r=e&&e.userAgent;return Lt=r?String(r):"",Lt}l(Ir,"requireEnvironmentUserAgent");var kt,Vo;function Xn(){if(Vo)return kt;Vo=1;var s=Q(),e=Ir(),r=s.process,t=s.Deno,i=r&&r.versions||t&&t.version,a=i&&i.v8,n,o;return a&&(n=a.split("."),o=n[0]>0&&n[0]<4?1:+(n[0]+n[1])),!o&&e&&(n=e.match(/Edge\/(\d+)/),(!n||n[1]>=74)&&(n=e.match(/Chrome\/(\d+)/),n&&(o=+n[1]))),kt=o,kt}l(Xn,"requireEnvironmentV8Version");var jt,Lo;function ff(){if(Lo)return jt;Lo=1;var s=Xn(),e=Z(),r=Q(),t=r.String;return jt=!!Object.getOwnPropertySymbols&&!e(function(){var i=Symbol("symbol detection");return!t(i)||!(Object(i)instanceof Symbol)||!Symbol.sham&&s&&s<41}),jt}l(ff,"requireSymbolConstructorDetection");var Bt,ko;function cf(){if(ko)return Bt;ko=1;var s=ff();return Bt=s&&!Symbol.sham&&typeof Symbol.iterator=="symbol",Bt}l(cf,"requireUseSymbolAsUid");var Ut,jo;function vf(){if(jo)return Ut;jo=1;var s=sr(),e=ee(),r=at(),t=cf(),i=Object;return Ut=t?function(a){return typeof a=="symbol"}:function(a){var n=s("Symbol");return e(n)&&r(n.prototype,i(a))},Ut}l(vf,"requireIsSymbol");var Ft,Bo;function nt(){if(Bo)return Ft;Bo=1;var s=String;return Ft=l(function(e){try{return s(e)}catch{return"Object"}},"tryToString"),Ft}l(nt,"requireTryToString");var Gt,Uo;function $e(){if(Uo)return Gt;Uo=1;var s=ee(),e=nt(),r=TypeError;return Gt=l(function(t){if(s(t))return t;throw new r(e(t)+" is not a function")},"aCallable"),Gt}l($e,"requireACallable");var $t,Fo;function gr(){if(Fo)return $t;Fo=1;var s=$e(),e=it();return $t=l(function(r,t){var i=r[t];return e(i)?void 0:s(i)},"getMethod"),$t}l(gr,"requireGetMethod");var zt,Go;function Yf(){if(Go)return zt;Go=1;var s=se(),e=ee(),r=pe(),t=TypeError;return zt=l(function(i,a){var n,o;if(a==="string"&&e(n=i.toString)&&!r(o=s(n,i))||e(n=i.valueOf)&&!r(o=s(n,i))||a!=="string"&&e(n=i.toString)&&!r(o=s(n,i)))return o;throw new t("Can't convert object to primitive value")},"ordinaryToPrimitive"),zt}l(Yf,"requireOrdinaryToPrimitive");var Ht={exports:{}},Wt,$o;function De(){return $o||($o=1,Wt=!1),Wt}l(De,"requireIsPure");var Yt,zo;function Kn(){if(zo)return Yt;zo=1;var s=Q(),e=Object.defineProperty;return Yt=l(function(r,t){try{e(s,r,{value:t,configurable:!0,writable:!0})}catch{s[r]=t}return t},"defineGlobalProperty"),Yt}l(Kn,"requireDefineGlobalProperty");var Ho;function Qn(){if(Ho)return Ht.exports;Ho=1;var s=De(),e=Q(),r=Kn(),t="__core-js_shared__",i=Ht.exports=e[t]||r(t,{});return(i.versions||(i.versions=[])).push({version:"3.48.0",mode:s?"pure":"global",copyright:"© 2013–2025 Denis Pushkarev (zloirock.ru), 2025–2026 CoreJS Company (core-js.io). All rights reserved.",license:"https://github.com/zloirock/core-js/blob/v3.48.0/LICENSE",source:"https://github.com/zloirock/core-js"}),Ht.exports}l(Qn,"requireSharedStore");var Xt,Wo;function Zn(){if(Wo)return Xt;Wo=1;var s=Qn();return Xt=l(function(e,r){return s[e]||(s[e]=r||{})},"shared"),Xt}l(Zn,"requireShared");var Kt,Yo;function st(){if(Yo)return Kt;Yo=1;var s=Ne(),e=Object;return Kt=l(function(r){return e(s(r))},"toObject"),Kt}l(st,"requireToObject");var Qt,Xo;function Me(){if(Xo)return Qt;Xo=1;var s=J(),e=st(),r=s({}.hasOwnProperty);return Qt=Object.hasOwn||l(function(i,a){return r(e(i),a)},"hasOwn"),Qt}l(Me,"requireHasOwnProperty");var Zt,Ko;function gf(){if(Ko)return Zt;Ko=1;var s=J(),e=0,r=Math.random(),t=s(1.1.toString);return Zt=l(function(i){return"Symbol("+(i===void 0?"":i)+")_"+t(++e+r,36)},"uid"),Zt}l(gf,"requireUid");var Jt,Qo;function ne(){if(Qo)return Jt;Qo=1;var s=Q(),e=Zn(),r=Me(),t=gf(),i=ff(),a=cf(),n=s.Symbol,o=e("wks"),u=a?n.for||n:n&&n.withoutSetter||t;return Jt=l(function(h){return r(o,h)||(o[h]=i&&r(n,h)?n[h]:u("Symbol."+h)),o[h]},"wellKnownSymbol"),Jt}l(ne,"requireWellKnownSymbol");var ei,Zo;function Xf(){if(Zo)return ei;Zo=1;var s=se(),e=pe(),r=vf(),t=gr(),i=Yf(),a=ne(),n=TypeError,o=a("toPrimitive");return ei=l(function(u,h){if(!e(u)||r(u))return u;var f=t(u,o),v;if(f){if(h===void 0&&(h="default"),v=s(f,u,h),!e(v)||r(v))return v;throw new n("Can't convert object to primitive value")}return h===void 0&&(h="number"),i(u,h)},"toPrimitive$1"),ei}l(Xf,"requireToPrimitive");var ri,Jo;function df(){if(Jo)return ri;Jo=1;var s=Xf(),e=vf();return ri=l(function(r){var t=s(r,"string");return e(t)?t:t+""},"toPropertyKey$1"),ri}l(df,"requireToPropertyKey");var ti,eu;function ot(){if(eu)return ti;eu=1;var s=Q(),e=pe(),r=s.document,t=e(r)&&e(r.createElement);return ti=l(function(i){return t?r.createElement(i):{}},"documentCreateElement"),ti}l(ot,"requireDocumentCreateElement");var ii,ru;function pf(){if(ru)return ii;ru=1;var s=Ie(),e=Z(),r=ot();return ii=!s&&!e(function(){return Object.defineProperty(r("div"),"a",{get:l(function(){return 7},"get")}).a!==7}),ii}l(pf,"requireIe8DomDefine");var tu;function ut(){if(tu)return xt;tu=1;var s=Ie(),e=se(),r=Wf(),t=Yn(),i=Ar(),a=df(),n=Me(),o=pf(),u=Object.getOwnPropertyDescriptor;return xt.f=s?u:l(function(f,v){if(f=i(f),v=a(v),o)try{return u(f,v)}catch{}if(n(f,v))return t(!e(r.f,f,v),f[v])},"getOwnPropertyDescriptor"),xt}l(ut,"requireObjectGetOwnPropertyDescriptor");var ai={},ni,iu;function yf(){if(iu)return ni;iu=1;var s=Ie(),e=Z();return ni=s&&e(function(){return Object.defineProperty(function(){},"prototype",{value:42,writable:!1}).prototype!==42}),ni}l(yf,"requireV8PrototypeDefineBug");var si,au;function le(){if(au)return si;au=1;var s=pe(),e=String,r=TypeError;return si=l(function(t){if(s(t))return t;throw new r(e(t)+" is not an object")},"anObject"),si}l(le,"requireAnObject");var nu;function Ke(){if(nu)return ai;nu=1;var s=Ie(),e=pf(),r=yf(),t=le(),i=df(),a=TypeError,n=Object.defineProperty,o=Object.getOwnPropertyDescriptor,u="enumerable",h="configurable",f="writable";return ai.f=s?r?l(function(g,c,d){if(t(g),c=i(c),t(d),typeof g=="function"&&c==="prototype"&&"value"in d&&f in d&&!d[f]){var p=o(g,c);p&&p[f]&&(g[c]=d.value,d={configurable:h in d?d[h]:p[h],enumerable:u in d?d[u]:p[u],writable:!1})}return n(g,c,d)},"defineProperty"):n:l(function(g,c,d){if(t(g),c=i(c),t(d),e)try{return n(g,c,d)}catch{}if("get"in d||"set"in d)throw new a("Accessors not supported");return"value"in d&&(g[c]=d.value),g},"defineProperty"),ai}l(Ke,"requireObjectDefineProperty");var oi,su;function Nr(){if(su)return oi;su=1;var s=Ie(),e=Ke(),r=Yn();return oi=s?function(t,i,a){return e.f(t,i,r(1,a))}:function(t,i,a){return t[i]=a,t},oi}l(Nr,"requireCreateNonEnumerableProperty");var ui={exports:{}},li,ou;function lt(){if(ou)return li;ou=1;var s=Ie(),e=Me(),r=Function.prototype,t=s&&Object.getOwnPropertyDescriptor,i=e(r,"name"),a=i&&l((function(){}),"something").name==="something",n=i&&(!s||s&&t(r,"name").configurable);return li={EXISTS:i,PROPER:a,CONFIGURABLE:n},li}l(lt,"requireFunctionName");var hi,uu;function Jn(){if(uu)return hi;uu=1;var s=J(),e=ee(),r=Qn(),t=s(Function.toString);return e(r.inspectSource)||(r.inspectSource=function(i){return t(i)}),hi=r.inspectSource,hi}l(Jn,"requireInspectSource");var fi,lu;function Kf(){if(lu)return fi;lu=1;var s=Q(),e=ee(),r=s.WeakMap;return fi=e(r)&&/native code/.test(String(r)),fi}l(Kf,"requireWeakMapBasicDetection");var ci,hu;function es(){if(hu)return ci;hu=1;var s=Zn(),e=gf(),r=s("keys");return ci=l(function(t){return r[t]||(r[t]=e(t))},"sharedKey"),ci}l(es,"requireSharedKey");var vi,fu;function rs(){return fu||(fu=1,vi={}),vi}l(rs,"requireHiddenKeys");var gi,cu;function ht(){if(cu)return gi;cu=1;var s=Kf(),e=Q(),r=pe(),t=Nr(),i=Me(),a=Qn(),n=es(),o=rs(),u="Object already initialized",h=e.TypeError,f=e.WeakMap,v,g,c,d=l(function(b){return c(b)?g(b):v(b,{})},"enforce"),p=l(function(b){return function(x){var O;if(!r(x)||(O=g(x)).type!==b)throw new h("Incompatible receiver, "+b+" required");return O}},"getterFor");if(s||a.state){var y=a.state||(a.state=new f);y.get=y.get,y.has=y.has,y.set=y.set,v=l(function(b,x){if(y.has(b))throw new h(u);return x.facade=b,y.set(b,x),x},"set"),g=l(function(b){return y.get(b)||{}},"get"),c=l(function(b){return y.has(b)},"has")}else{var m=n("state");o[m]=!0,v=l(function(b,x){if(i(b,m))throw new h(u);return x.facade=b,t(b,m,x),x},"set"),g=l(function(b){return i(b,m)?b[m]:{}},"get"),c=l(function(b){return i(b,m)},"has")}return gi={set:v,get:g,has:c,enforce:d,getterFor:p},gi}l(ht,"requireInternalState");var vu;function mf(){if(vu)return ui.exports;vu=1;var s=J(),e=Z(),r=ee(),t=Me(),i=Ie(),a=lt().CONFIGURABLE,n=Jn(),o=ht(),u=o.enforce,h=o.get,f=String,v=Object.defineProperty,g=s("".slice),c=s("".replace),d=s([].join),p=i&&!e(function(){return v(function(){},"length",{value:8}).length!==8}),y=String(String).split("String"),m=ui.exports=function(b,x,O){g(f(x),0,7)==="Symbol("&&(x="["+c(f(x),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),O&&O.getter&&(x="get "+x),O&&O.setter&&(x="set "+x),(!t(b,"name")||a&&b.name!==x)&&(i?v(b,"name",{value:x,configurable:!0}):b.name=x),p&&O&&t(O,"arity")&&b.length!==O.arity&&v(b,"length",{value:O.arity});try{O&&t(O,"constructor")&&O.constructor?i&&v(b,"prototype",{writable:!1}):b.prototype&&(b.prototype=void 0)}catch{}var R=u(b);return t(R,"source")||(R.source=d(y,typeof x=="string"?x:"")),b};return Function.prototype.toString=m(l(function(){return r(this)&&h(this).source||n(this)},"toString"),"toString"),ui.exports}l(mf,"requireMakeBuiltIn");var di,gu;function or(){if(gu)return di;gu=1;var s=ee(),e=Ke(),r=mf(),t=Kn();return di=l(function(i,a,n,o){o||(o={});var u=o.enumerable,h=o.name!==void 0?o.name:a;if(s(n)&&r(n,h,o),o.global)u?i[a]=n:t(a,n);else{try{o.unsafe?i[a]&&(u=!0):delete i[a]}catch{}u?i[a]=n:e.f(i,a,{value:n,enumerable:!1,configurable:!o.nonConfigurable,writable:!o.nonWritable})}return i},"defineBuiltIn"),di}l(or,"requireDefineBuiltIn");var pi={},yi,du;function Qf(){if(du)return yi;du=1;var s=Math.ceil,e=Math.floor;return yi=Math.trunc||l(function(t){var i=+t;return(i>0?e:s)(i)},"trunc"),yi}l(Qf,"requireMathTrunc");var mi,pu;function ft(){if(pu)return mi;pu=1;var s=Qf();return mi=l(function(e){var r=+e;return r!==r||r===0?0:s(r)},"toIntegerOrInfinity"),mi}l(ft,"requireToIntegerOrInfinity");var bi,yu;function Zf(){if(yu)return bi;yu=1;var s=ft(),e=Math.max,r=Math.min;return bi=l(function(t,i){var a=s(t);return a<0?e(a+i,0):r(a,i)},"toAbsoluteIndex"),bi}l(Zf,"requireToAbsoluteIndex");var xi,mu;function dr(){if(mu)return xi;mu=1;var s=ft(),e=Math.min;return xi=l(function(r){var t=s(r);return t>0?e(t,9007199254740991):0},"toLength"),xi}l(dr,"requireToLength");var Oi,bu;function ts(){if(bu)return Oi;bu=1;var s=dr();return Oi=l(function(e){return s(e.length)},"lengthOfArrayLike"),Oi}l(ts,"requireLengthOfArrayLike");var Ti,xu;function bf(){if(xu)return Ti;xu=1;var s=Ar(),e=Zf(),r=ts(),t=l(function(i){return function(a,n,o){var u=s(a),h=r(u);if(h===0)return!i&&-1;var f=e(o,h),v;if(i&&n!==n){for(;h>f;)if(v=u[f++],v!==v)return!0}else for(;h>f;f++)if((i||f in u)&&u[f]===n)return i||f||0;return!i&&-1}},"createMethod");return Ti={includes:t(!0),indexOf:t(!1)},Ti}l(bf,"requireArrayIncludes");var Si,Ou;function xf(){if(Ou)return Si;Ou=1;var s=J(),e=Me(),r=Ar(),t=bf().indexOf,i=rs(),a=s([].push);return Si=l(function(n,o){var u=r(n),h=0,f=[],v;for(v in u)!e(i,v)&&e(u,v)&&a(f,v);for(;o.length>h;)e(u,v=o[h++])&&(~t(f,v)||a(f,v));return f},"objectKeysInternal"),Si}l(xf,"requireObjectKeysInternal");var Ri,Tu;function is(){return Tu||(Tu=1,Ri=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),Ri}l(is,"requireEnumBugKeys");var Su;function Jf(){if(Su)return pi;Su=1;var s=xf(),e=is(),r=e.concat("length","prototype");return pi.f=Object.getOwnPropertyNames||l(function(i){return s(i,r)},"getOwnPropertyNames"),pi}l(Jf,"requireObjectGetOwnPropertyNames");var Ci={},Ru;function ec(){return Ru||(Ru=1,Ci.f=Object.getOwnPropertySymbols),Ci}l(ec,"requireObjectGetOwnPropertySymbols");var Ei,Cu;function rc(){if(Cu)return Ei;Cu=1;var s=sr(),e=J(),r=Jf(),t=ec(),i=le(),a=e([].concat);return Ei=s("Reflect","ownKeys")||l(function(o){var u=r.f(i(o)),h=t.f;return h?a(u,h(o)):u},"ownKeys"),Ei}l(rc,"requireOwnKeys");var wi,Eu;function tc(){if(Eu)return wi;Eu=1;var s=Me(),e=rc(),r=ut(),t=Ke();return wi=l(function(i,a,n){for(var o=e(a),u=t.f,h=r.f,f=0;f<o.length;f++){var v=o[f];!s(i,v)&&!(n&&s(n,v))&&u(i,v,h(a,v))}},"copyConstructorProperties"),wi}l(tc,"requireCopyConstructorProperties");var Pi,wu;function Of(){if(wu)return Pi;wu=1;var s=Z(),e=ee(),r=/#|\.prototype\./,t=l(function(u,h){var f=a[i(u)];return f===o?!0:f===n?!1:e(h)?s(h):!!h},"isForced"),i=t.normalize=function(u){return String(u).replace(r,".").toLowerCase()},a=t.data={},n=t.NATIVE="N",o=t.POLYFILL="P";return Pi=t,Pi}l(Of,"requireIsForced");var Ai,Pu;function he(){if(Pu)return Ai;Pu=1;var s=Q(),e=ut().f,r=Nr(),t=or(),i=Kn(),a=tc(),n=Of();return Ai=l(function(o,u){var h=o.target,f=o.global,v=o.stat,g,c,d,p,y,m;if(f?c=s:v?c=s[h]||i(h,{}):c=s[h]&&s[h].prototype,c)for(d in u){if(y=u[d],o.dontCallGetSet?(m=e(c,d),p=m&&m.value):p=c[d],g=n(f?d:h+(v?".":"#")+d,o.forced),!g&&p!==void 0){if(typeof y==typeof p)continue;a(y,p)}(o.sham||p&&p.sham)&&r(y,"sham",!0),t(c,d,y,o)}},"_export"),Ai}l(he,"require_export");var Ii,Au;function Tf(){if(Au)return Ii;Au=1;var s=Q(),e=Ir(),r=nr(),t=l(function(i){return e.slice(0,i.length)===i},"userAgentStartsWith");return Ii=(function(){return t("Bun/")?"BUN":t("Cloudflare-Workers")?"CLOUDFLARE":t("Deno/")?"DENO":t("Node.js/")?"NODE":s.Bun&&typeof Bun.version=="string"?"BUN":s.Deno&&typeof Deno.version=="object"?"DENO":r(s.process)==="process"?"NODE":s.window&&s.document?"BROWSER":"REST"})(),Ii}l(Tf,"requireEnvironment");var Ni,Iu;function ct(){if(Iu)return Ni;Iu=1;var s=Tf();return Ni=s==="NODE",Ni}l(ct,"requireEnvironmentIsNode");var Mi,Nu;function ic(){if(Nu)return Mi;Nu=1;var s=Q();return Mi=s,Mi}l(ic,"requirePath");var qi,Mu;function ac(){if(Mu)return qi;Mu=1;var s=J(),e=$e();return qi=l(function(r,t,i){try{return s(e(Object.getOwnPropertyDescriptor(r,t)[i]))}catch{}},"functionUncurryThisAccessor"),qi}l(ac,"requireFunctionUncurryThisAccessor");var _i,qu;function nc(){if(qu)return _i;qu=1;var s=pe();return _i=l(function(e){return s(e)||e===null},"isPossiblePrototype"),_i}l(nc,"requireIsPossiblePrototype");var Di,_u;function sc(){if(_u)return Di;_u=1;var s=nc(),e=String,r=TypeError;return Di=l(function(t){if(s(t))return t;throw new r("Can't set "+e(t)+" as a prototype")},"aPossiblePrototype"),Di}l(sc,"requireAPossiblePrototype");var Vi,Du;function Sf(){if(Du)return Vi;Du=1;var s=ac(),e=pe(),r=Ne(),t=sc();return Vi=Object.setPrototypeOf||("__proto__"in{}?(function(){var i=!1,a={},n;try{n=s(Object.prototype,"__proto__","set"),n(a,[]),i=a instanceof Array}catch{}return l(function(u,h){return r(u),t(h),e(u)&&(i?n(u,h):u.__proto__=h),u},"setPrototypeOf")})():void 0),Vi}l(Sf,"requireObjectSetPrototypeOf");var Li,Vu;function vt(){if(Vu)return Li;Vu=1;var s=Ke().f,e=Me(),r=ne(),t=r("toStringTag");return Li=l(function(i,a,n){i&&!n&&(i=i.prototype),i&&!e(i,t)&&s(i,t,{configurable:!0,value:a})},"setToStringTag"),Li}l(vt,"requireSetToStringTag");var ki,Lu;function oc(){if(Lu)return ki;Lu=1;var s=mf(),e=Ke();return ki=l(function(r,t,i){return i.get&&s(i.get,t,{getter:!0}),i.set&&s(i.set,t,{setter:!0}),e.f(r,t,i)},"defineBuiltInAccessor"),ki}l(oc,"requireDefineBuiltInAccessor");var ji,ku;function uc(){if(ku)return ji;ku=1;var s=sr(),e=oc(),r=ne(),t=Ie(),i=r("species");return ji=l(function(a){var n=s(a);t&&n&&!n[i]&&e(n,i,{configurable:!0,get:l(function(){return this},"get")})},"setSpecies"),ji}l(uc,"requireSetSpecies");var Bi,ju;function lc(){if(ju)return Bi;ju=1;var s=at(),e=TypeError;return Bi=l(function(r,t){if(s(t,r))return r;throw new e("Incorrect invocation")},"anInstance"),Bi}l(lc,"requireAnInstance");var Ui,Bu;function hc(){if(Bu)return Ui;Bu=1;var s=ne(),e=s("toStringTag"),r={};return r[e]="z",Ui=String(r)==="[object z]",Ui}l(hc,"requireToStringTagSupport");var Fi,Uu;function as(){if(Uu)return Fi;Uu=1;var s=hc(),e=ee(),r=nr(),t=ne(),i=t("toStringTag"),a=Object,n=r((function(){return arguments})())==="Arguments",o=l(function(u,h){try{return u[h]}catch{}},"tryGet");return Fi=s?r:function(u){var h,f,v;return u===void 0?"Undefined":u===null?"Null":typeof(f=o(h=a(u),i))=="string"?f:n?r(h):(v=r(h))==="Object"&&e(h.callee)?"Arguments":v},Fi}l(as,"requireClassof");var Gi,Fu;function fc(){if(Fu)return Gi;Fu=1;var s=J(),e=Z(),r=ee(),t=as(),i=sr(),a=Jn(),n=l(function(){},"noop"),o=i("Reflect","construct"),u=/^\s*(?:class|function)\b/,h=s(u.exec),f=!u.test(n),v=l(function(d){if(!r(d))return!1;try{return o(n,[],d),!0}catch{return!1}},"isConstructor"),g=l(function(d){if(!r(d))return!1;switch(t(d)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return f||!!h(u,a(d))}catch{return!0}},"isConstructor");return g.sham=!0,Gi=!o||e(function(){var c;return v(v.call)||!v(Object)||!v(function(){c=!0})||c})?g:v,Gi}l(fc,"requireIsConstructor");var $i,Gu;function cc(){if(Gu)return $i;Gu=1;var s=fc(),e=nt(),r=TypeError;return $i=l(function(t){if(s(t))return t;throw new r(e(t)+" is not a constructor")},"aConstructor"),$i}l(cc,"requireAConstructor");var zi,$u;function Rf(){if($u)return zi;$u=1;var s=le(),e=cc(),r=it(),t=ne(),i=t("species");return zi=l(function(a,n){var o=s(a).constructor,u;return o===void 0||r(u=s(o)[i])?n:e(u)},"speciesConstructor"),zi}l(Rf,"requireSpeciesConstructor");var Hi,zu;function Cf(){if(zu)return Hi;zu=1;var s=tt(),e=Function.prototype,r=e.apply,t=e.call;return Hi=typeof Reflect=="object"&&Reflect.apply||(s?t.bind(r):function(){return t.apply(r,arguments)}),Hi}l(Cf,"requireFunctionApply");var Wi,Hu;function gt(){if(Hu)return Wi;Hu=1;var s=nr(),e=J();return Wi=l(function(r){if(s(r)==="Function")return e(r)},"functionUncurryThisClause"),Wi}l(gt,"requireFunctionUncurryThisClause");var Yi,Wu;function ns(){if(Wu)return Yi;Wu=1;var s=gt(),e=$e(),r=tt(),t=s(s.bind);return Yi=l(function(i,a){return e(i),a===void 0?i:r?t(i,a):function(){return i.apply(a,arguments)}},"functionBindContext"),Yi}l(ns,"requireFunctionBindContext");var Xi,Yu;function Ef(){if(Yu)return Xi;Yu=1;var s=sr();return Xi=s("document","documentElement"),Xi}l(Ef,"requireHtml");var Ki,Xu;function vc(){if(Xu)return Ki;Xu=1;var s=J();return Ki=s([].slice),Ki}l(vc,"requireArraySlice");var Qi,Ku;function gc(){if(Ku)return Qi;Ku=1;var s=TypeError;return Qi=l(function(e,r){if(e<r)throw new s("Not enough arguments");return e},"validateArgumentsLength"),Qi}l(gc,"requireValidateArgumentsLength");var Zi,Qu;function wf(){if(Qu)return Zi;Qu=1;var s=Ir();return Zi=/(?:ipad|iphone|ipod).*applewebkit/i.test(s),Zi}l(wf,"requireEnvironmentIsIos");var Ji,Zu;function Pf(){if(Zu)return Ji;Zu=1;var s=Q(),e=Cf(),r=ns(),t=ee(),i=Me(),a=Z(),n=Ef(),o=vc(),u=ot(),h=gc(),f=wf(),v=ct(),g=s.setImmediate,c=s.clearImmediate,d=s.process,p=s.Dispatch,y=s.Function,m=s.MessageChannel,b=s.String,x=0,O={},R="onreadystatechange",C,T,A,q;a(function(){C=s.location});var I=l(function(w){if(i(O,w)){var P=O[w];delete O[w],P()}},"run"),D=l(function(w){return function(){I(w)}},"runner"),N=l(function(w){I(w.data)},"eventListener"),B=l(function(w){s.postMessage(b(w),C.protocol+"//"+C.host)},"globalPostMessageDefer");return(!g||!c)&&(g=l(function(P){h(arguments.length,1);var G=t(P)?P:y(P),k=o(arguments,1);return O[++x]=function(){e(G,void 0,k)},T(x),x},"setImmediate"),c=l(function(P){delete O[P]},"clearImmediate"),v?T=l(function(w){d.nextTick(D(w))},"defer"):p&&p.now?T=l(function(w){p.now(D(w))},"defer"):m&&!f?(A=new m,q=A.port2,A.port1.onmessage=N,T=r(q.postMessage,q)):s.addEventListener&&t(s.postMessage)&&!s.importScripts&&C&&C.protocol!=="file:"&&!a(B)?(T=B,s.addEventListener("message",N,!1)):R in u("script")?T=l(function(w){n.appendChild(u("script"))[R]=function(){n.removeChild(this),I(w)}},"defer"):T=l(function(w){setTimeout(D(w),0)},"defer")),Ji={set:g,clear:c},Ji}l(Pf,"requireTask");var ea,Ju;function dc(){if(Ju)return ea;Ju=1;var s=Q(),e=Ie(),r=Object.getOwnPropertyDescriptor;return ea=l(function(t){if(!e)return s[t];var i=r(s,t);return i&&i.value},"safeGetBuiltIn"),ea}l(dc,"requireSafeGetBuiltIn");var ra,el;function Af(){if(el)return ra;el=1;var s=l(function(){this.head=null,this.tail=null},"Queue");return s.prototype={add:l(function(e){var r={item:e,next:null},t=this.tail;t?t.next=r:this.head=r,this.tail=r},"add"),get:l(function(){var e=this.head;if(e){var r=this.head=e.next;return r===null&&(this.tail=null),e.item}},"get")},ra=s,ra}l(Af,"requireQueue");var ta,rl;function pc(){if(rl)return ta;rl=1;var s=Ir();return ta=/ipad|iphone|ipod/i.test(s)&&typeof Pebble<"u",ta}l(pc,"requireEnvironmentIsIosPebble");var ia,tl;function yc(){if(tl)return ia;tl=1;var s=Ir();return ia=/web0s(?!.*chrome)/i.test(s),ia}l(yc,"requireEnvironmentIsWebosWebkit");var aa,il;function mc(){if(il)return aa;il=1;var s=Q(),e=dc(),r=ns(),t=Pf().set,i=Af(),a=wf(),n=pc(),o=yc(),u=ct(),h=s.MutationObserver||s.WebKitMutationObserver,f=s.document,v=s.process,g=s.Promise,c=e("queueMicrotask"),d,p,y,m,b;if(!c){var x=new i,O=l(function(){var R,C;for(u&&(R=v.domain)&&R.exit();C=x.get();)try{C()}catch(T){throw x.head&&d(),T}R&&R.enter()},"flush");!a&&!u&&!o&&h&&f?(p=!0,y=f.createTextNode(""),new h(O).observe(y,{characterData:!0}),d=l(function(){y.data=p=!p},"notify")):!n&&g&&g.resolve?(m=g.resolve(void 0),m.constructor=g,b=r(m.then,m),d=l(function(){b(O)},"notify")):u?d=l(function(){v.nextTick(O)},"notify"):(t=r(t,s),d=l(function(){t(O)},"notify")),c=l(function(R){x.head||d(),x.add(R)},"microtask")}return aa=c,aa}l(mc,"requireMicrotask");var na,al;function bc(){return al||(al=1,na=l(function(s,e){try{arguments.length===1?console.error(s):console.error(s,e)}catch{}},"hostReportErrors")),na}l(bc,"requireHostReportErrors");var sa,nl;function ss(){return nl||(nl=1,sa=l(function(s){try{return{error:!1,value:s()}}catch(e){return{error:!0,value:e}}},"perform")),sa}l(ss,"requirePerform");var oa,sl;function Mr(){if(sl)return oa;sl=1;var s=Q();return oa=s.Promise,oa}l(Mr,"requirePromiseNativeConstructor");var ua,ol;function qr(){if(ol)return ua;ol=1;var s=Q(),e=Mr(),r=ee(),t=Of(),i=Jn(),a=ne(),n=Tf(),o=De(),u=Xn(),h=e&&e.prototype,f=a("species"),v=!1,g=r(s.PromiseRejectionEvent),c=t("Promise",function(){var d=i(e),p=d!==String(e);if(!p&&u===66||o&&!(h.catch&&h.finally))return!0;if(!u||u<51||!/native code/.test(d)){var y=new e(function(x){x(1)}),m=l(function(x){x(function(){},function(){})},"FakePromise"),b=y.constructor={};if(b[f]=m,v=y.then(function(){})instanceof m,!v)return!0}return!p&&(n==="BROWSER"||n==="DENO")&&!g});return ua={CONSTRUCTOR:c,REJECTION_EVENT:g,SUBCLASSING:v},ua}l(qr,"requirePromiseConstructorDetection");var la={},ul;function _r(){if(ul)return la;ul=1;var s=$e(),e=TypeError,r=l(function(t){var i,a;this.promise=new t(function(n,o){if(i!==void 0||a!==void 0)throw new e("Bad Promise constructor");i=n,a=o}),this.resolve=s(i),this.reject=s(a)},"PromiseCapability");return la.f=function(t){return new r(t)},la}l(_r,"requireNewPromiseCapability");var ll;function xc(){if(ll)return yo;ll=1;var s=he(),e=De(),r=ct(),t=Q(),i=ic(),a=se(),n=or(),o=Sf(),u=vt(),h=uc(),f=$e(),v=ee(),g=pe(),c=lc(),d=Rf(),p=Pf().set,y=mc(),m=bc(),b=ss(),x=Af(),O=ht(),R=Mr(),C=qr(),T=_r(),A="Promise",q=C.CONSTRUCTOR,I=C.REJECTION_EVENT,D=C.SUBCLASSING,N=O.getterFor(A),B=O.set,w=R&&R.prototype,P=R,G=w,k=t.TypeError,L=t.document,_=t.process,M=T.f,j=M,H=!!(L&&L.createEvent&&t.dispatchEvent),W="unhandledrejection",X="rejectionhandled",oe=0,Oe=1,ue=2,ze=1,He=2,fe,qe,_e,xe,ce=l(function(E){var U;return g(E)&&v(U=E.then)?U:!1},"isThenable"),Te=l(function(E,U){var $=U.value,z=U.state===Oe,Y=z?E.ok:E.fail,Re=E.resolve,je=E.reject,Ce=E.domain,Ee,mr,br;try{Y?(z||(U.rejection===He&&We(U),U.rejection=ze),Y===!0?Ee=$:(Ce&&Ce.enter(),Ee=Y($),Ce&&(Ce.exit(),br=!0)),Ee===E.promise?je(new k("Promise-chain cycle")):(mr=ce(Ee))?a(mr,Ee,Re,je):Re(Ee)):je($)}catch(xr){Ce&&!br&&Ce.exit(),je(xr)}},"callReaction"),Le=l(function(E,U){E.notified||(E.notified=!0,y(function(){for(var $=E.reactions,z;z=$.get();)Te(z,E);E.notified=!1,U&&!E.rejection&&Qe(E)}))},"notify"),ke=l(function(E,U,$){var z,Y;H?(z=L.createEvent("Event"),z.promise=U,z.reason=$,z.initEvent(E,!1,!0),t.dispatchEvent(z)):z={promise:U,reason:$},!I&&(Y=t["on"+E])?Y(z):E===W&&m("Unhandled promise rejection",$)},"dispatchEvent"),Qe=l(function(E){a(p,t,function(){var U=E.facade,$=E.value,z=yr(E),Y;if(z&&(Y=b(function(){r?_.emit("unhandledRejection",$,U):ke(W,U,$)}),E.rejection=r||yr(E)?He:ze,Y.error))throw Y.value})},"onUnhandled"),yr=l(function(E){return E.rejection!==ze&&!E.parent},"isUnhandled"),We=l(function(E){a(p,t,function(){var U=E.facade;r?_.emit("rejectionHandled",U):ke(X,U,E.value)})},"onHandleUnhandled"),ve=l(function(E,U,$){return function(z){E(U,z,$)}},"bind"),ge=l(function(E,U,$){E.done||(E.done=!0,$&&(E=$),E.value=U,E.state=ue,Le(E,!0))},"internalReject"),Se=l(function(E,U,$){if(!E.done){E.done=!0,$&&(E=$);try{if(E.facade===U)throw new k("Promise can't be resolved itself");var z=ce(U);z?y(function(){var Y={done:!1};try{a(z,U,ve(Se,Y,E),ve(ge,Y,E))}catch(Re){ge(Y,Re,E)}}):(E.value=U,E.state=Oe,Le(E,!1))}catch(Y){ge({done:!1},Y,E)}}},"internalResolve");if(q&&(P=l(function(U){c(this,G),f(U),a(fe,this);var $=N(this);try{U(ve(Se,$),ve(ge,$))}catch(z){ge($,z)}},"Promise"),G=P.prototype,fe=l(function(U){B(this,{type:A,done:!1,notified:!1,parent:!1,reactions:new x,rejection:!1,state:oe,value:null})},"Promise"),fe.prototype=n(G,"then",l(function(U,$){var z=N(this),Y=M(d(this,P));return z.parent=!0,Y.ok=v(U)?U:!0,Y.fail=v($)&&$,Y.domain=r?_.domain:void 0,z.state===oe?z.reactions.add(Y):y(function(){Te(Y,z)}),Y.promise},"then")),qe=l(function(){var E=new fe,U=N(E);this.promise=E,this.resolve=ve(Se,U),this.reject=ve(ge,U)},"OwnPromiseCapability"),T.f=M=l(function(E){return E===P||E===_e?new qe(E):j(E)},"newPromiseCapability"),!e&&v(R)&&w!==Object.prototype)){xe=w.then,D||n(w,"then",l(function(U,$){var z=this;return new P(function(Y,Re){a(xe,z,Y,Re)}).then(U,$)},"then"),{unsafe:!0});try{delete w.constructor}catch{}o&&o(w,G)}return s({global:!0,constructor:!0,wrap:!0,forced:q},{Promise:P}),_e=i.Promise,u(P,A,!1,!0),h(A),yo}l(xc,"requireEs_promise_constructor");var hl={},ha,fl;function Dr(){return fl||(fl=1,ha={}),ha}l(Dr,"requireIterators");var fa,cl;function Oc(){if(cl)return fa;cl=1;var s=ne(),e=Dr(),r=s("iterator"),t=Array.prototype;return fa=l(function(i){return i!==void 0&&(e.Array===i||t[r]===i)},"isArrayIteratorMethod"),fa}l(Oc,"requireIsArrayIteratorMethod");var ca,vl;function If(){if(vl)return ca;vl=1;var s=as(),e=gr(),r=it(),t=Dr(),i=ne(),a=i("iterator");return ca=l(function(n){if(!r(n))return e(n,a)||e(n,"@@iterator")||t[s(n)]},"getIteratorMethod"),ca}l(If,"requireGetIteratorMethod");var va,gl;function Tc(){if(gl)return va;gl=1;var s=se(),e=$e(),r=le(),t=nt(),i=If(),a=TypeError;return va=l(function(n,o){var u=arguments.length<2?i(n):o;if(e(u))return r(s(u,n));throw new a(t(n)+" is not iterable")},"getIterator"),va}l(Tc,"requireGetIterator");var ga,dl;function Sc(){if(dl)return ga;dl=1;var s=se(),e=le(),r=gr();return ga=l(function(t,i,a){var n,o;e(t);try{if(n=r(t,"return"),!n){if(i==="throw")throw a;return a}n=s(n,t)}catch(u){o=!0,n=u}if(i==="throw")throw a;if(o)throw n;return e(n),a},"iteratorClose"),ga}l(Sc,"requireIteratorClose");var da,pl;function Nf(){if(pl)return da;pl=1;var s=ns(),e=se(),r=le(),t=nt(),i=Oc(),a=ts(),n=at(),o=Tc(),u=If(),h=Sc(),f=TypeError,v=l(function(c,d){this.stopped=c,this.result=d},"Result"),g=v.prototype;return da=l(function(c,d,p){var y=p&&p.that,m=!!(p&&p.AS_ENTRIES),b=!!(p&&p.IS_RECORD),x=!!(p&&p.IS_ITERATOR),O=!!(p&&p.INTERRUPTED),R=s(d,y),C,T,A,q,I,D,N,B=l(function(P){return C&&h(C,"normal"),new v(!0,P)},"stop"),w=l(function(P){return m?(r(P),O?R(P[0],P[1],B):R(P[0],P[1])):O?R(P,B):R(P)},"callFn");if(b)C=c.iterator;else if(x)C=c;else{if(T=u(c),!T)throw new f(t(c)+" is not iterable");if(i(T)){for(A=0,q=a(c);q>A;A++)if(I=w(c[A]),I&&n(g,I))return I;return new v(!1)}C=o(c,T)}for(D=b?c.next:C.next;!(N=e(D,C)).done;){try{I=w(N.value)}catch(P){h(C,"throw",P)}if(typeof I=="object"&&I&&n(g,I))return I}return new v(!1)},"iterate"),da}l(Nf,"requireIterate");var pa,yl;function Rc(){if(yl)return pa;yl=1;var s=ne(),e=s("iterator"),r=!1;try{var t=0,i={next:l(function(){return{done:!!t++}},"next"),return:l(function(){r=!0},"return")};i[e]=function(){return this},Array.from(i,function(){throw 2})}catch{}return pa=l(function(a,n){try{if(!n&&!r)return!1}catch{return!1}var o=!1;try{var u={};u[e]=function(){return{next:l(function(){return{done:o=!0}},"next")}},a(u)}catch{}return o},"checkCorrectnessOfIteration"),pa}l(Rc,"requireCheckCorrectnessOfIteration");var ya,ml;function Mf(){if(ml)return ya;ml=1;var s=Mr(),e=Rc(),r=qr().CONSTRUCTOR;return ya=r||!e(function(t){s.all(t).then(void 0,function(){})}),ya}l(Mf,"requirePromiseStaticsIncorrectIteration");var bl;function Cc(){if(bl)return hl;bl=1;var s=he(),e=se(),r=$e(),t=_r(),i=ss(),a=Nf(),n=Mf();return s({target:"Promise",stat:!0,forced:n},{all:l(function(u){var h=this,f=t.f(h),v=f.resolve,g=f.reject,c=i(function(){var d=r(h.resolve),p=[],y=0,m=1;a(u,function(b){var x=y++,O=!1;m++,e(d,h,b).then(function(R){O||(O=!0,p[x]=R,--m||v(p))},g)}),--m||v(p)});return c.error&&g(c.value),f.promise},"all")}),hl}l(Cc,"requireEs_promise_all");var xl={},Ol;function Ec(){if(Ol)return xl;Ol=1;var s=he(),e=De(),r=qr().CONSTRUCTOR,t=Mr(),i=sr(),a=ee(),n=or(),o=t&&t.prototype;if(s({target:"Promise",proto:!0,forced:r,real:!0},{catch:l(function(h){return this.then(void 0,h)},"catch")}),!e&&a(t)){var u=i("Promise").prototype.catch;o.catch!==u&&n(o,"catch",u,{unsafe:!0})}return xl}l(Ec,"requireEs_promise_catch");var Tl={},Sl;function wc(){if(Sl)return Tl;Sl=1;var s=he(),e=se(),r=$e(),t=_r(),i=ss(),a=Nf(),n=Mf();return s({target:"Promise",stat:!0,forced:n},{race:l(function(u){var h=this,f=t.f(h),v=f.reject,g=i(function(){var c=r(h.resolve);a(u,function(d){e(c,h,d).then(f.resolve,v)})});return g.error&&v(g.value),f.promise},"race")}),Tl}l(wc,"requireEs_promise_race");var Rl={},Cl;function Pc(){if(Cl)return Rl;Cl=1;var s=he(),e=_r(),r=qr().CONSTRUCTOR;return s({target:"Promise",stat:!0,forced:r},{reject:l(function(i){var a=e.f(this),n=a.reject;return n(i),a.promise},"reject")}),Rl}l(Pc,"requireEs_promise_reject");var El={},ma,wl;function Ac(){if(wl)return ma;wl=1;var s=le(),e=pe(),r=_r();return ma=l(function(t,i){if(s(t),e(i)&&i.constructor===t)return i;var a=r.f(t),n=a.resolve;return n(i),a.promise},"promiseResolve"),ma}l(Ac,"requirePromiseResolve");var Pl;function Ic(){if(Pl)return El;Pl=1;var s=he(),e=sr(),r=De(),t=Mr(),i=qr().CONSTRUCTOR,a=Ac(),n=e("Promise"),o=r&&!i;return s({target:"Promise",stat:!0,forced:r||i},{resolve:l(function(h){return a(o&&this===n?t:this,h)},"resolve")}),El}l(Ic,"requireEs_promise_resolve");var Al;function Nc(){return Al||(Al=1,xc(),Cc(),Ec(),wc(),Pc(),Ic()),po}l(Nc,"requireEs_promise");Nc();function Il(s,e,r,t,i,a,n){try{var o=s[a](n),u=o.value}catch(h){return void r(h)}o.done?e(u):Promise.resolve(u).then(t,i)}l(Il,"asyncGeneratorStep");function Fe(s){return function(){var e=this,r=arguments;return new Promise(function(t,i){var a=s.apply(e,r);function n(u){Il(a,t,i,n,o,"next",u)}l(n,"_next");function o(u){Il(a,t,i,n,o,"throw",u)}l(o,"_throw"),n(void 0)})}}l(Fe,"_asyncToGenerator");var Nl={},Ml={},ba,ql;function Ve(){if(ql)return ba;ql=1;var s=as(),e=String;return ba=l(function(r){if(s(r)==="Symbol")throw new TypeError("Cannot convert a Symbol value to a string");return e(r)},"toString"),ba}l(Ve,"requireToString");var xa,_l;function qf(){if(_l)return xa;_l=1;var s=le();return xa=l(function(){var e=s(this),r="";return e.hasIndices&&(r+="d"),e.global&&(r+="g"),e.ignoreCase&&(r+="i"),e.multiline&&(r+="m"),e.dotAll&&(r+="s"),e.unicode&&(r+="u"),e.unicodeSets&&(r+="v"),e.sticky&&(r+="y"),r},"regexpFlags"),xa}l(qf,"requireRegexpFlags");var Oa,Dl;function _f(){if(Dl)return Oa;Dl=1;var s=Z(),e=Q(),r=e.RegExp,t=s(function(){var n=r("a","y");return n.lastIndex=2,n.exec("abcd")!==null}),i=t||s(function(){return!r("a","y").sticky}),a=t||s(function(){var n=r("^r","gy");return n.lastIndex=2,n.exec("str")!==null});return Oa={BROKEN_CARET:a,MISSED_STICKY:i,UNSUPPORTED_Y:t},Oa}l(_f,"requireRegexpStickyHelpers");var Ta={},Sa,Vl;function Mc(){if(Vl)return Sa;Vl=1;var s=xf(),e=is();return Sa=Object.keys||l(function(t){return s(t,e)},"keys"),Sa}l(Mc,"requireObjectKeys");var Ll;function qc(){if(Ll)return Ta;Ll=1;var s=Ie(),e=yf(),r=Ke(),t=le(),i=Ar(),a=Mc();return Ta.f=s&&!e?Object.defineProperties:l(function(o,u){t(o);for(var h=i(u),f=a(u),v=f.length,g=0,c;v>g;)r.f(o,c=f[g++],h[c]);return o},"defineProperties"),Ta}l(qc,"requireObjectDefineProperties");var Ra,kl;function dt(){if(kl)return Ra;kl=1;var s=le(),e=qc(),r=is(),t=rs(),i=Ef(),a=ot(),n=es(),o=">",u="<",h="prototype",f="script",v=n("IE_PROTO"),g=l(function(){},"EmptyConstructor"),c=l(function(b){return u+f+o+b+u+"/"+f+o},"scriptTag"),d=l(function(b){b.write(c("")),b.close();var x=b.parentWindow.Object;return b=null,x},"NullProtoObjectViaActiveX"),p=l(function(){var b=a("iframe"),x="java"+f+":",O;return b.style.display="none",i.appendChild(b),b.src=String(x),O=b.contentWindow.document,O.open(),O.write(c("document.F=Object")),O.close(),O.F},"NullProtoObjectViaIFrame"),y,m=l(function(){try{y=new ActiveXObject("htmlfile")}catch{}m=typeof document<"u"?document.domain&&y?d(y):p():d(y);for(var b=r.length;b--;)delete m[h][r[b]];return m()},"NullProtoObject");return t[v]=!0,Ra=Object.create||l(function(x,O){var R;return x!==null?(g[h]=s(x),R=new g,g[h]=null,R[v]=x):R=m(),O===void 0?R:e.f(R,O)},"create"),Ra}l(dt,"requireObjectCreate");var Ca,jl;function _c(){if(jl)return Ca;jl=1;var s=Z(),e=Q(),r=e.RegExp;return Ca=s(function(){var t=r(".","s");return!(t.dotAll&&t.test(`
2
2
  `)&&t.flags==="s")}),Ca}l(_c,"requireRegexpUnsupportedDotAll");var Ea,Bl;function Dc(){if(Bl)return Ea;Bl=1;var s=Z(),e=Q(),r=e.RegExp;return Ea=s(function(){var t=r("(?<a>b)","g");return t.exec("b").groups.a!=="b"||"b".replace(t,"$<a>c")!=="bc"}),Ea}l(Dc,"requireRegexpUnsupportedNcg");var wa,Ul;function os(){if(Ul)return wa;Ul=1;var s=se(),e=J(),r=Ve(),t=qf(),i=_f(),a=Zn(),n=dt(),o=ht().get,u=_c(),h=Dc(),f=a("native-string-replace",String.prototype.replace),v=RegExp.prototype.exec,g=v,c=e("".charAt),d=e("".indexOf),p=e("".replace),y=e("".slice),m=(function(){var R=/a/,C=/b*/g;return s(v,R,"a"),s(v,C,"a"),R.lastIndex!==0||C.lastIndex!==0})(),b=i.BROKEN_CARET,x=/()??/.exec("")[1]!==void 0,O=m||x||b||u||h;return O&&(g=l(function(C){var T=this,A=o(T),q=r(C),I=A.raw,D,N,B,w,P,G,k;if(I)return I.lastIndex=T.lastIndex,D=s(g,I,q),T.lastIndex=I.lastIndex,D;var L=A.groups,_=b&&T.sticky,M=s(t,T),j=T.source,H=0,W=q;if(_&&(M=p(M,"y",""),d(M,"g")===-1&&(M+="g"),W=y(q,T.lastIndex),T.lastIndex>0&&(!T.multiline||T.multiline&&c(q,T.lastIndex-1)!==`
3
3
  `)&&(j="(?: "+j+")",W=" "+W,H++),N=new RegExp("^(?:"+j+")",M)),x&&(N=new RegExp("^"+j+"$(?!\\s)",M)),m&&(B=T.lastIndex),w=s(v,_?N:T,W),_?w?(w.input=y(w.input,H),w[0]=y(w[0],H),w.index=T.lastIndex,T.lastIndex+=w[0].length):T.lastIndex=0:m&&w&&(T.lastIndex=T.global?w.index+w[0].length:B),x&&w&&w.length>1&&s(f,w[0],N,function(){for(P=1;P<arguments.length-2;P++)arguments[P]===void 0&&(w[P]=void 0)}),w&&L)for(w.groups=G=n(null),P=0;P<L.length;P++)k=L[P],G[k[0]]=w[k[1]];return w},"exec")),wa=g,wa}l(os,"requireRegexpExec");var Fl;function Vc(){if(Fl)return Ml;Fl=1;var s=he(),e=os();return s({target:"RegExp",proto:!0,forced:/./.exec!==e},{exec:e}),Ml}l(Vc,"requireEs_regexp_exec");var Pa,Gl;function us(){if(Gl)return Pa;Gl=1,Vc();var s=se(),e=or(),r=os(),t=Z(),i=ne(),a=Nr(),n=i("species"),o=RegExp.prototype;return Pa=l(function(u,h,f,v){var g=i(u),c=!t(function(){var m={};return m[g]=function(){return 7},""[u](m)!==7}),d=c&&!t(function(){var m=!1,b=/a/;if(u==="split"){var x={};x[n]=function(){return b},b={constructor:x,flags:""},b[g]=/./[g]}return b.exec=function(){return m=!0,null},b[g](""),!m});if(!c||!d||f){var p=/./[g],y=h(g,""[u],function(m,b,x,O,R){var C=b.exec;return C===r||C===o.exec?c&&!R?{done:!0,value:s(p,b,x,O)}:{done:!0,value:s(m,x,b,O)}:{done:!1}});e(String.prototype,u,y[0]),e(o,g,y[1])}v&&a(o[g],"sham",!0)},"fixRegexpWellKnownSymbolLogic"),Pa}l(us,"requireFixRegexpWellKnownSymbolLogic");var Aa,$l;function Lc(){if($l)return Aa;$l=1;var s=J(),e=ft(),r=Ve(),t=Ne(),i=s("".charAt),a=s("".charCodeAt),n=s("".slice),o=l(function(u){return function(h,f){var v=r(t(h)),g=e(f),c=v.length,d,p;return g<0||g>=c?u?"":void 0:(d=a(v,g),d<55296||d>56319||g+1===c||(p=a(v,g+1))<56320||p>57343?u?i(v,g):d:u?n(v,g,g+2):(d-55296<<10)+(p-56320)+65536)}},"createMethod");return Aa={codeAt:o(!1),charAt:o(!0)},Aa}l(Lc,"requireStringMultibyte");var Ia,zl;function ls(){if(zl)return Ia;zl=1;var s=Lc().charAt;return Ia=l(function(e,r,t){return r+(t?s(e,r).length:1)},"advanceStringIndex"),Ia}l(ls,"requireAdvanceStringIndex");var Na,Hl;function kc(){if(Hl)return Na;Hl=1;var s=Q(),e=Z(),r=s.RegExp,t=!e(function(){var i=!0;try{r(".","d")}catch{i=!1}var a={},n="",o=i?"dgimsy":"gimsy",u=l(function(g,c){Object.defineProperty(a,g,{get:l(function(){return n+=c,!0},"get")})},"addGetter"),h={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};i&&(h.hasIndices="d");for(var f in h)u(f,h[f]);var v=Object.getOwnPropertyDescriptor(r.prototype,"flags").get.call(a);return v!==o||n!==o});return Na={correct:t},Na}l(kc,"requireRegexpFlagsDetection");var Ma,Wl;function hs(){if(Wl)return Ma;Wl=1;var s=se(),e=Me(),r=at(),t=kc(),i=qf(),a=RegExp.prototype;return Ma=t.correct?function(n){return n.flags}:function(n){return!t.correct&&r(a,n)&&!e(n,"flags")?s(i,n):n.flags},Ma}l(hs,"requireRegexpGetFlags");var qa,Yl;function fs(){if(Yl)return qa;Yl=1;var s=se(),e=le(),r=ee(),t=nr(),i=os(),a=TypeError;return qa=l(function(n,o){var u=n.exec;if(r(u)){var h=s(u,n,o);return h!==null&&e(h),h}if(t(n)==="RegExp")return s(i,n,o);throw new a("RegExp#exec called on incompatible receiver")},"regexpExecAbstract"),qa}l(fs,"requireRegexpExecAbstract");var Xl;function jc(){if(Xl)return Nl;Xl=1;var s=se(),e=J(),r=us(),t=le(),i=pe(),a=dr(),n=Ve(),o=Ne(),u=gr(),h=ls(),f=hs(),v=fs(),g=e("".indexOf);return r("match",function(c,d,p){return[l(function(m){var b=o(this),x=i(m)?u(m,c):void 0;return x?s(x,m,b):new RegExp(m)[c](n(b))},"match"),function(y){var m=t(this),b=n(y),x=p(d,m,b);if(x.done)return x.value;var O=n(f(m));if(g(O,"g")===-1)return v(m,b);var R=g(O,"u")!==-1;m.lastIndex=0;for(var C=[],T=0,A;(A=v(m,b))!==null;){var q=n(A[0]);C[T]=q,q===""&&(m.lastIndex=h(b,a(m.lastIndex),R)),T++}return T===0?null:C}]}),Nl}l(jc,"requireEs_string_match");jc();var Kl={},_a,Ql;function Bc(){if(Ql)return _a;Ql=1;var s=J(),e=st(),r=Math.floor,t=s("".charAt),i=s("".replace),a=s("".slice),n=/\$([$&'`]|\d{1,2}|<[^>]*>)/g,o=/\$([$&'`]|\d{1,2})/g;return _a=l(function(u,h,f,v,g,c){var d=f+u.length,p=v.length,y=o;return g!==void 0&&(g=e(g),y=n),i(c,y,function(m,b){var x;switch(t(b,0)){case"$":return"$";case"&":return u;case"`":return a(h,0,f);case"'":return a(h,d);case"<":x=g[a(b,1,-1)];break;default:var O=+b;if(O===0)return m;if(O>p){var R=r(O/10);return R===0?m:R<=p?v[R-1]===void 0?t(b,1):v[R-1]+t(b,1):m}x=v[O-1]}return x===void 0?"":x})},"getSubstitution"),_a}l(Bc,"requireGetSubstitution");var Zl;function Uc(){if(Zl)return Kl;Zl=1;var s=Cf(),e=se(),r=J(),t=us(),i=Z(),a=le(),n=ee(),o=pe(),u=ft(),h=dr(),f=Ve(),v=Ne(),g=ls(),c=gr(),d=Bc(),p=hs(),y=fs(),m=ne(),b=m("replace"),x=Math.max,O=Math.min,R=r([].concat),C=r([].push),T=r("".indexOf),A=r("".slice),q=l(function(B){return B===void 0?B:String(B)},"maybeToString"),I=(function(){return"a".replace(/./,"$0")==="$0"})(),D=(function(){return/./[b]?/./[b]("a","$0")==="":!1})(),N=!i(function(){var B=/./;return B.exec=function(){var w=[];return w.groups={a:"7"},w},"".replace(B,"$<a>")!=="7"});return t("replace",function(B,w,P){var G=D?"$":"$0";return[l(function(L,_){var M=v(this),j=o(L)?c(L,b):void 0;return j?e(j,L,M,_):e(w,f(M),L,_)},"replace"),function(k,L){var _=a(this),M=f(k);if(typeof L=="string"&&T(L,G)===-1&&T(L,"$<")===-1){var j=P(w,_,M,L);if(j.done)return j.value}var H=n(L);H||(L=f(L));var W=f(p(_)),X=T(W,"g")!==-1,oe;X&&(oe=T(W,"u")!==-1,_.lastIndex=0);for(var Oe=[],ue;ue=y(_,M),!(ue===null||(C(Oe,ue),!X));){var ze=f(ue[0]);ze===""&&(_.lastIndex=g(M,h(_.lastIndex),oe))}for(var He="",fe=0,qe=0;qe<Oe.length;qe++){ue=Oe[qe];for(var _e=f(ue[0]),xe=x(O(u(ue.index),M.length),0),ce=[],Te,Le=1;Le<ue.length;Le++)C(ce,q(ue[Le]));var ke=ue.groups;if(H){var Qe=R([_e],ce,xe,M);ke!==void 0&&C(Qe,ke),Te=f(s(L,void 0,Qe))}else Te=d(_e,M,xe,ce,ke,L);xe>=fe&&(He+=A(M,fe,xe)+Te,fe=xe+_e.length)}return He+A(M,fe)}]},!N||!I||D),Kl}l(Uc,"requireEs_string_replace");Uc();var Jl={},Da,eh;function Fc(){if(eh)return Da;eh=1;var s=pe(),e=nr(),r=ne(),t=r("match");return Da=l(function(i){var a;return s(i)&&((a=i[t])!==void 0?!!a:e(i)==="RegExp")},"isRegexp"),Da}l(Fc,"requireIsRegexp");var Va,rh;function cs(){if(rh)return Va;rh=1;var s=Fc(),e=TypeError;return Va=l(function(r){if(s(r))throw new e("The method doesn't accept regular expressions");return r},"notARegexp"),Va}l(cs,"requireNotARegexp");var La,th;function vs(){if(th)return La;th=1;var s=ne(),e=s("match");return La=l(function(r){var t=/./;try{"/./"[r](t)}catch{try{return t[e]=!1,"/./"[r](t)}catch{}}return!1},"correctIsRegexpLogic"),La}l(vs,"requireCorrectIsRegexpLogic");var ih;function Gc(){if(ih)return Jl;ih=1;var s=he(),e=gt(),r=ut().f,t=dr(),i=Ve(),a=cs(),n=Ne(),o=vs(),u=De(),h=e("".slice),f=Math.min,v=o("startsWith"),g=!u&&!v&&!!(function(){var c=r(String.prototype,"startsWith");return c&&!c.writable})();return s({target:"String",proto:!0,forced:!g&&!v},{startsWith:l(function(d){var p=i(n(this));a(d);var y=t(f(arguments.length>1?arguments[1]:void 0,p.length)),m=i(d);return h(p,y,y+m.length)===m},"startsWith")}),Jl}l(Gc,"requireEs_string_startsWith");Gc();var ka,ah;function $c(){if(ah)return ka;ah=1;var s=ne(),e=dt(),r=Ke().f,t=s("unscopables"),i=Array.prototype;return i[t]===void 0&&r(i,t,{configurable:!0,value:e(null)}),ka=l(function(a){i[t][a]=!0},"addToUnscopables"),ka}l($c,"requireAddToUnscopables");var ja,nh;function zc(){if(nh)return ja;nh=1;var s=Z();return ja=!s(function(){function e(){}return l(e,"F"),e.prototype.constructor=null,Object.getPrototypeOf(new e)!==e.prototype}),ja}l(zc,"requireCorrectPrototypeGetter");var Ba,sh;function Df(){if(sh)return Ba;sh=1;var s=Me(),e=ee(),r=st(),t=es(),i=zc(),a=t("IE_PROTO"),n=Object,o=n.prototype;return Ba=i?n.getPrototypeOf:function(u){var h=r(u);if(s(h,a))return h[a];var f=h.constructor;return e(f)&&h instanceof f?f.prototype:h instanceof n?o:null},Ba}l(Df,"requireObjectGetPrototypeOf");var Ua,oh;function Vf(){if(oh)return Ua;oh=1;var s=Z(),e=ee(),r=pe(),t=dt(),i=Df(),a=or(),n=ne(),o=De(),u=n("iterator"),h=!1,f,v,g;[].keys&&(g=[].keys(),"next"in g?(v=i(i(g)),v!==Object.prototype&&(f=v)):h=!0);var c=!r(f)||s(function(){var d={};return f[u].call(d)!==d});return c?f={}:o&&(f=t(f)),e(f[u])||a(f,u,function(){return this}),Ua={IteratorPrototype:f,BUGGY_SAFARI_ITERATORS:h},Ua}l(Vf,"requireIteratorsCore");var Fa,uh;function Hc(){if(uh)return Fa;uh=1;var s=Vf().IteratorPrototype,e=dt(),r=Yn(),t=vt(),i=Dr(),a=l(function(){return this},"returnThis");return Fa=l(function(n,o,u,h){var f=o+" Iterator";return n.prototype=e(s,{next:r(+!h,u)}),t(n,f,!1,!0),i[f]=a,n},"iteratorCreateConstructor"),Fa}l(Hc,"requireIteratorCreateConstructor");var Ga,lh;function Wc(){if(lh)return Ga;lh=1;var s=he(),e=se(),r=De(),t=lt(),i=ee(),a=Hc(),n=Df(),o=Sf(),u=vt(),h=Nr(),f=or(),v=ne(),g=Dr(),c=Vf(),d=t.PROPER,p=t.CONFIGURABLE,y=c.IteratorPrototype,m=c.BUGGY_SAFARI_ITERATORS,b=v("iterator"),x="keys",O="values",R="entries",C=l(function(){return this},"returnThis");return Ga=l(function(T,A,q,I,D,N,B){a(q,A,I);var w=l(function(X){if(X===D&&_)return _;if(!m&&X&&X in k)return k[X];switch(X){case x:return l(function(){return new q(this,X)},"keys");case O:return l(function(){return new q(this,X)},"values");case R:return l(function(){return new q(this,X)},"entries")}return function(){return new q(this)}},"getIterationMethod"),P=A+" Iterator",G=!1,k=T.prototype,L=k[b]||k["@@iterator"]||D&&k[D],_=!m&&L||w(D),M=A==="Array"&&k.entries||L,j,H,W;if(M&&(j=n(M.call(new T)),j!==Object.prototype&&j.next&&(!r&&n(j)!==y&&(o?o(j,y):i(j[b])||f(j,b,C)),u(j,P,!0,!0),r&&(g[P]=C))),d&&D===O&&L&&L.name!==O&&(!r&&p?h(k,"name",O):(G=!0,_=l(function(){return e(L,this)},"values"))),D)if(H={values:w(O),keys:N?_:w(x),entries:w(R)},B)for(W in H)(m||G||!(W in k))&&f(k,W,H[W]);else s({target:A,proto:!0,forced:m||G},H);return(!r||B)&&k[b]!==_&&f(k,b,_,{name:D}),g[A]=_,H},"iteratorDefine"),Ga}l(Wc,"requireIteratorDefine");var $a,hh;function Yc(){return hh||(hh=1,$a=l(function(s,e){return{value:s,done:e}},"createIterResultObject")),$a}l(Yc,"requireCreateIterResultObject");var za,fh;function Lf(){if(fh)return za;fh=1;var s=Ar(),e=$c(),r=Dr(),t=ht(),i=Ke().f,a=Wc(),n=Yc(),o=De(),u=Ie(),h="Array Iterator",f=t.set,v=t.getterFor(h);za=a(Array,"Array",function(c,d){f(this,{type:h,target:s(c),index:0,kind:d})},function(){var c=v(this),d=c.target,p=c.index++;if(!d||p>=d.length)return c.target=null,n(void 0,!0);switch(c.kind){case"keys":return n(p,!1);case"values":return n(d[p],!1)}return n([p,d[p]],!1)},"values");var g=r.Arguments=r.Array;if(e("keys"),e("values"),e("entries"),!o&&u&&g.name!=="values")try{i(g,"name",{value:"values"})}catch{}return za}l(Lf,"requireEs_array_iterator");Lf();var ch={},Ha,vh;function Xc(){return vh||(vh=1,Ha={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0}),Ha}l(Xc,"requireDomIterables");var Wa,gh;function Kc(){if(gh)return Wa;gh=1;var s=ot(),e=s("span").classList,r=e&&e.constructor&&e.constructor.prototype;return Wa=r===Object.prototype?void 0:r,Wa}l(Kc,"requireDomTokenListPrototype");var dh;function Qc(){if(dh)return ch;dh=1;var s=Q(),e=Xc(),r=Kc(),t=Lf(),i=Nr(),a=vt(),n=ne(),o=n("iterator"),u=t.values,h=l(function(v,g){if(v){if(v[o]!==u)try{i(v,o,u)}catch{v[o]=u}if(a(v,g,!0),e[g]){for(var c in t)if(v[c]!==t[c])try{i(v,c,t[c])}catch{v[c]=t[c]}}}},"handlePrototype");for(var f in e)h(s[f]&&s[f].prototype,f);return h(r,"DOMTokenList"),ch}l(Qc,"requireWeb_domCollections_iterator");Qc();function Zc(s,e){if(nn(s)!="object"||!s)return s;var r=s[Symbol.toPrimitive];if(r!==void 0){var t=r.call(s,e);if(nn(t)!="object")return t;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(s)}l(Zc,"toPrimitive");function Jc(s){var e=Zc(s,"string");return nn(e)=="symbol"?e:e+""}l(Jc,"toPropertyKey");function gs(s,e,r){return(e=Jc(e))in s?Object.defineProperty(s,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):s[e]=r,s}l(gs,"_defineProperty");var ph={},Ya,yh;function ev(){if(yh)return Ya;yh=1;var s=$e(),e=st(),r=hf(),t=ts(),i=TypeError,a="Reduce of empty array with no initial value",n=l(function(o){return function(u,h,f,v){var g=e(u),c=r(g),d=t(g);if(s(h),d===0&&f<2)throw new i(a);var p=o?d-1:0,y=o?-1:1;if(f<2)for(;;){if(p in c){v=c[p],p+=y;break}if(p+=y,o?p<0:d<=p)throw new i(a)}for(;o?p>=0:d>p;p+=y)p in c&&(v=h(v,c[p],p,g));return v}},"createMethod");return Ya={left:n(!1),right:n(!0)},Ya}l(ev,"requireArrayReduce");var Xa,mh;function kf(){if(mh)return Xa;mh=1;var s=Z();return Xa=l(function(e,r){var t=[][e];return!!t&&s(function(){t.call(null,r||function(){return 1},1)})},"arrayMethodIsStrict"),Xa}l(kf,"requireArrayMethodIsStrict");var bh;function rv(){if(bh)return ph;bh=1;var s=he(),e=ev().left,r=kf(),t=Xn(),i=ct(),a=!i&&t>79&&t<83,n=a||!r("reduce");return s({target:"Array",proto:!0,forced:n},{reduce:l(function(u){var h=arguments.length;return e(this,u,h,h>1?arguments[1]:void 0)},"reduce")}),ph}l(rv,"requireEs_array_reduce");rv();var xh={},Oh;function tv(){if(Oh)return xh;Oh=1;var s=he(),e=gt(),r=ut().f,t=dr(),i=Ve(),a=cs(),n=Ne(),o=vs(),u=De(),h=e("".slice),f=Math.min,v=o("endsWith"),g=!u&&!v&&!!(function(){var c=r(String.prototype,"endsWith");return c&&!c.writable})();return s({target:"String",proto:!0,forced:!g&&!v},{endsWith:l(function(d){var p=i(n(this));a(d);var y=arguments.length>1?arguments[1]:void 0,m=p.length,b=y===void 0?m:f(t(y),m),x=i(d);return h(p,b-x.length,b)===x},"endsWith")}),xh}l(tv,"requireEs_string_endsWith");tv();var Th={},Sh;function iv(){if(Sh)return Th;Sh=1;var s=se(),e=J(),r=us(),t=le(),i=pe(),a=Ne(),n=Rf(),o=ls(),u=dr(),h=Ve(),f=gr(),v=fs(),g=_f(),c=Z(),d=g.UNSUPPORTED_Y,p=4294967295,y=Math.min,m=e([].push),b=e("".slice),x=!c(function(){var R=/(?:)/,C=R.exec;R.exec=function(){return C.apply(this,arguments)};var T="ab".split(R);return T.length!==2||T[0]!=="a"||T[1]!=="b"}),O="abbc".split(/(b)*/)[1]==="c"||"test".split(/(?:)/,-1).length!==4||"ab".split(/(?:ab)*/).length!==2||".".split(/(.?)(.?)/).length!==4||".".split(/()()/).length>1||"".split(/.?/).length;return r("split",function(R,C,T){var A="0".split(void 0,0).length?function(q,I){return q===void 0&&I===0?[]:s(C,this,q,I)}:C;return[l(function(I,D){var N=a(this),B=i(I)?f(I,R):void 0;return B?s(B,I,N,D):s(A,h(N),I,D)},"split"),function(q,I){var D=t(this),N=h(q);if(!O){var B=T(A,D,N,I,A!==C);if(B.done)return B.value}var w=n(D,RegExp),P=D.unicode,G=(D.ignoreCase?"i":"")+(D.multiline?"m":"")+(D.unicode?"u":"")+(d?"g":"y"),k=new w(d?"^(?:"+D.source+")":D,G),L=I===void 0?p:I>>>0;if(L===0)return[];if(N.length===0)return v(k,N)===null?[N]:[];for(var _=0,M=0,j=[];M<N.length;){k.lastIndex=d?0:M;var H=v(k,d?b(N,M):N),W;if(H===null||(W=y(u(k.lastIndex+(d?M:0)),N.length))===_)M=o(N,M,P);else{if(m(j,b(N,_,M)),j.length===L)return j;for(var X=1;X<=H.length-1;X++)if(m(j,H[X]),j.length===L)return j;M=_=W}}return m(j,b(N,_)),j}]},O||!x,d),Th}l(iv,"requireEs_string_split");iv();var Tr={exports:{}},er={exports:{}},av=er.exports,Rh;function nv(){return Rh||(Rh=1,(function(){var s,e,r,t,i,a;typeof performance<"u"&&performance!==null&&performance.now?er.exports=function(){return performance.now()}:typeof process<"u"&&process!==null&&process.hrtime?(er.exports=function(){return(s()-i)/1e6},e=process.hrtime,s=l(function(){var n;return n=e(),n[0]*1e9+n[1]},"getNanoSeconds"),t=s(),a=process.uptime()*1e9,i=t-a):Date.now?(er.exports=function(){return Date.now()-r},r=Date.now()):(er.exports=function(){return new Date().getTime()-r},r=new Date().getTime())}).call(av)),er.exports}l(nv,"requirePerformanceNow");var Ch;function sv(){if(Ch)return Tr.exports;Ch=1;for(var s=nv(),e=typeof window>"u"?an:window,r=["moz","webkit"],t="AnimationFrame",i=e["request"+t],a=e["cancel"+t]||e["cancelRequest"+t],n=0;!i&&n<r.length;n++)i=e[r[n]+"Request"+t],a=e[r[n]+"Cancel"+t]||e[r[n]+"CancelRequest"+t];if(!i||!a){var o=0,u=0,h=[],f=1e3/60;i=l(function(v){if(h.length===0){var g=s(),c=Math.max(0,f-(g-o));o=c+g,setTimeout(function(){var d=h.slice(0);h.length=0;for(var p=0;p<d.length;p++)if(!d[p].cancelled)try{d[p].callback(o)}catch(y){setTimeout(function(){throw y},0)}},Math.round(c))}return h.push({handle:++u,callback:v,cancelled:!1}),u},"raf$1"),a=l(function(v){for(var g=0;g<h.length;g++)h[g].handle===v&&(h[g].cancelled=!0)},"caf")}return Tr.exports=function(v){return i.call(e,v)},Tr.exports.cancel=function(){a.apply(e,arguments)},Tr.exports.polyfill=function(v){v||(v=e),v.requestAnimationFrame=i,v.cancelAnimationFrame=a},Tr.exports}l(sv,"requireRaf");var ov=sv();const Ka=lf(ov);var Eh={},Qa,wh;function jf(){return wh||(wh=1,Qa=`
4
4
  \v\f\r                 \u2028\u2029\uFEFF`),Qa}l(jf,"requireWhitespaces");var Za,Ph;function uv(){if(Ph)return Za;Ph=1;var s=J(),e=Ne(),r=Ve(),t=jf(),i=s("".replace),a=RegExp("^["+t+"]+"),n=RegExp("(^|[^"+t+"])["+t+"]+$"),o=l(function(u){return function(h){var f=r(e(h));return u&1&&(f=i(f,a,"")),u&2&&(f=i(f,n,"$1")),f}},"createMethod");return Za={start:o(1),end:o(2),trim:o(3)},Za}l(uv,"requireStringTrim");var Ja,Ah;function lv(){if(Ah)return Ja;Ah=1;var s=lt().PROPER,e=Z(),r=jf(),t="​…᠎";return Ja=l(function(i){return e(function(){return!!r[i]()||t[i]()!==t||s&&r[i].name!==i})},"stringTrimForced"),Ja}l(lv,"requireStringTrimForced");var Ih;function hv(){if(Ih)return Eh;Ih=1;var s=he(),e=uv().trim,r=lv();return s({target:"String",proto:!0,forced:r("trim")},{trim:l(function(){return e(this)},"trim")}),Eh}l(hv,"requireEs_string_trim");hv();var en,Nh;function fv(){return Nh||(Nh=1,en=l(function(s){this.ok=!1,this.alpha=1,s.charAt(0)=="#"&&(s=s.substr(1,6)),s=s.replace(/ /g,""),s=s.toLowerCase();var e={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"00ffff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000000",blanchedalmond:"ffebcd",blue:"0000ff",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"00ffff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dodgerblue:"1e90ff",feldspar:"d19275",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"ff00ff",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgrey:"d3d3d3",lightgreen:"90ee90",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslateblue:"8470ff",lightslategray:"778899",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"00ff00",limegreen:"32cd32",linen:"faf0e6",magenta:"ff00ff",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370d8",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"d87093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"ff0000",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",violetred:"d02090",wheat:"f5deb3",white:"ffffff",whitesmoke:"f5f5f5",yellow:"ffff00",yellowgreen:"9acd32"};s=e[s]||s;for(var r=[{re:/^rgba\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3}),\s*((?:\d?\.)?\d)\)$/,example:["rgba(123, 234, 45, 0.8)","rgba(255,234,245,1.0)"],process:l(function(u){return[parseInt(u[1]),parseInt(u[2]),parseInt(u[3]),parseFloat(u[4])]},"process")},{re:/^rgb\((\d{1,3}),\s*(\d{1,3}),\s*(\d{1,3})\)$/,example:["rgb(123, 234, 45)","rgb(255,234,245)"],process:l(function(u){return[parseInt(u[1]),parseInt(u[2]),parseInt(u[3])]},"process")},{re:/^([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,example:["#00ff00","336699"],process:l(function(u){return[parseInt(u[1],16),parseInt(u[2],16),parseInt(u[3],16)]},"process")},{re:/^([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,example:["#fb0","f0f"],process:l(function(u){return[parseInt(u[1]+u[1],16),parseInt(u[2]+u[2],16),parseInt(u[3]+u[3],16)]},"process")}],t=0;t<r.length;t++){var i=r[t].re,a=r[t].process,n=i.exec(s);if(n){var o=a(n);this.r=o[0],this.g=o[1],this.b=o[2],o.length>3&&(this.alpha=o[3]),this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b,this.alpha=this.alpha<0?0:this.alpha>1||isNaN(this.alpha)?1:this.alpha,this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},this.toRGBA=function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.alpha+")"},this.toHex=function(){var u=this.r.toString(16),h=this.g.toString(16),f=this.b.toString(16);return u.length==1&&(u="0"+u),h.length==1&&(h="0"+h),f.length==1&&(f="0"+f),"#"+u+h+f},this.getHelpXML=function(){for(var u=new Array,h=0;h<r.length;h++)for(var f=r[h].example,v=0;v<f.length;v++)u[u.length]=f[v];for(var g in e)u[u.length]=g;var c=document.createElement("ul");c.setAttribute("id","rgbcolor-examples");for(var h=0;h<u.length;h++)try{var d=document.createElement("li"),p=new RGBColor(u[h]),y=document.createElement("div");y.style.cssText="margin: 3px; border: 1px solid black; background:"+p.toHex()+"; color:"+p.toHex(),y.appendChild(document.createTextNode("test"));var m=document.createTextNode(" "+u[h]+" -> "+p.toRGB()+" -> "+p.toHex());d.appendChild(y),d.appendChild(m),c.appendChild(d)}catch{}return c}},"rgbcolor")),en}l(fv,"requireRgbcolor");var cv=fv();const sn=lf(cv);var Mh={},qh;function vv(){if(qh)return Mh;qh=1;var s=he(),e=gt(),r=bf().indexOf,t=kf(),i=e([].indexOf),a=!!i&&1/i([1],1,-0)<0,n=a||!t("indexOf");return s({target:"Array",proto:!0,forced:n},{indexOf:l(function(u){var h=arguments.length>1?arguments[1]:void 0;return a?i(this,u,h)||0:r(this,u,h)},"indexOf")}),Mh}l(vv,"requireEs_array_indexOf");vv();var _h={},Dh;function gv(){if(Dh)return _h;Dh=1;var s=he(),e=J(),r=cs(),t=Ne(),i=Ve(),a=vs(),n=e("".indexOf);return s({target:"String",proto:!0,forced:!a("includes")},{includes:l(function(u){return!!~n(i(t(this)),i(r(u)),arguments.length>1?arguments[1]:void 0)},"includes")}),_h}l(gv,"requireEs_string_includes");gv();var Vh={},rn,Lh;function dv(){if(Lh)return rn;Lh=1;var s=nr();return rn=Array.isArray||l(function(r){return s(r)==="Array"},"isArray"),rn}l(dv,"requireIsArray");var kh;function pv(){if(kh)return Vh;kh=1;var s=he(),e=J(),r=dv(),t=e([].reverse),i=[1,2];return s({target:"Array",proto:!0,forced:String(i)===String(i.reverse())},{reverse:l(function(){return r(this)&&(this.length=this.length),t(this)},"reverse")}),Vh}l(pv,"requireEs_array_reverse");pv();var Bf=l(function(s,e){return(Bf=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,t){r.__proto__=t}||function(r,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(r[i]=t[i])})(s,e)},"t");function Uf(s,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=s}l(r,"i"),Bf(s,e),s.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}l(Uf,"r");function yv(s){var e="";Array.isArray(s)||(s=[s]);for(var r=0;r<s.length;r++){var t=s[r];if(t.type===S.CLOSE_PATH)e+="z";else if(t.type===S.HORIZ_LINE_TO)e+=(t.relative?"h":"H")+t.x;else if(t.type===S.VERT_LINE_TO)e+=(t.relative?"v":"V")+t.y;else if(t.type===S.MOVE_TO)e+=(t.relative?"m":"M")+t.x+" "+t.y;else if(t.type===S.LINE_TO)e+=(t.relative?"l":"L")+t.x+" "+t.y;else if(t.type===S.CURVE_TO)e+=(t.relative?"c":"C")+t.x1+" "+t.y1+" "+t.x2+" "+t.y2+" "+t.x+" "+t.y;else if(t.type===S.SMOOTH_CURVE_TO)e+=(t.relative?"s":"S")+t.x2+" "+t.y2+" "+t.x+" "+t.y;else if(t.type===S.QUAD_TO)e+=(t.relative?"q":"Q")+t.x1+" "+t.y1+" "+t.x+" "+t.y;else if(t.type===S.SMOOTH_QUAD_TO)e+=(t.relative?"t":"T")+t.x+" "+t.y;else{if(t.type!==S.ARC)throw new Error('Unexpected command type "'+t.type+'" at index '+r+".");e+=(t.relative?"a":"A")+t.rX+" "+t.rY+" "+t.xRot+" "+ +t.lArcFlag+" "+ +t.sweepFlag+" "+t.x+" "+t.y}}return e}l(yv,"e");function on(s,e){var r=s[0],t=s[1];return[r*Math.cos(e)-t*Math.sin(e),r*Math.sin(e)+t*Math.cos(e)]}l(on,"i");function Pe(){for(var s=[],e=0;e<arguments.length;e++)s[e]=arguments[e];for(var r=0;r<s.length;r++)if(typeof s[r]!="number")throw new Error("assertNumbers arguments["+r+"] is not a number. "+typeof s[r]+" == typeof "+s[r]);return!0}l(Pe,"a");var Ye=Math.PI;function tn(s,e,r){s.lArcFlag=s.lArcFlag===0?0:1,s.sweepFlag=s.sweepFlag===0?0:1;var t=s.rX,i=s.rY,a=s.x,n=s.y;t=Math.abs(s.rX),i=Math.abs(s.rY);var o=on([(e-a)/2,(r-n)/2],-s.xRot/180*Ye),u=o[0],h=o[1],f=Math.pow(u,2)/Math.pow(t,2)+Math.pow(h,2)/Math.pow(i,2);1<f&&(t*=Math.sqrt(f),i*=Math.sqrt(f)),s.rX=t,s.rY=i;var v=Math.pow(t,2)*Math.pow(h,2)+Math.pow(i,2)*Math.pow(u,2),g=(s.lArcFlag!==s.sweepFlag?1:-1)*Math.sqrt(Math.max(0,(Math.pow(t,2)*Math.pow(i,2)-v)/v)),c=t*h/i*g,d=-i*u/t*g,p=on([c,d],s.xRot/180*Ye);s.cX=p[0]+(e+a)/2,s.cY=p[1]+(r+n)/2,s.phi1=Math.atan2((h-d)/i,(u-c)/t),s.phi2=Math.atan2((-h-d)/i,(-u-c)/t),s.sweepFlag===0&&s.phi2>s.phi1&&(s.phi2-=2*Ye),s.sweepFlag===1&&s.phi2<s.phi1&&(s.phi2+=2*Ye),s.phi1*=180/Ye,s.phi2*=180/Ye}l(tn,"o");function jh(s,e,r){Pe(s,e,r);var t=s*s+e*e-r*r;if(0>t)return[];if(t===0)return[[s*r/(s*s+e*e),e*r/(s*s+e*e)]];var i=Math.sqrt(t);return[[(s*r+e*i)/(s*s+e*e),(e*r-s*i)/(s*s+e*e)],[(s*r-e*i)/(s*s+e*e),(e*r+s*i)/(s*s+e*e)]]}l(jh,"s");var te,Be=Math.PI/180;function Bh(s,e,r){return(1-r)*s+r*e}l(Bh,"c$1");function Uh(s,e,r,t){return s+Math.cos(t/180*Ye)*e+Math.sin(t/180*Ye)*r}l(Uh,"y");function Fh(s,e,r,t){var i=1e-6,a=e-s,n=r-e,o=3*a+3*(t-r)-6*n,u=6*(n-a),h=3*a;return Math.abs(o)<i?[-h/u]:(function(f,v,g){var c=f*f/4-v;if(c<-g)return[];if(c<=g)return[-f/2];var d=Math.sqrt(c);return[-f/2-d,-f/2+d]})(u/o,h/o,i)}l(Fh,"p");function Gh(s,e,r,t,i){var a=1-i;return s*(a*a*a)+e*(3*a*a*i)+r*(3*a*i*i)+t*(i*i*i)}l(Gh,"m$1");(function(s){function e(){return i((function(o,u,h){return o.relative&&(o.x1!==void 0&&(o.x1+=u),o.y1!==void 0&&(o.y1+=h),o.x2!==void 0&&(o.x2+=u),o.y2!==void 0&&(o.y2+=h),o.x!==void 0&&(o.x+=u),o.y!==void 0&&(o.y+=h),o.relative=!1),o}))}l(e,"r");function r(){var o=NaN,u=NaN,h=NaN,f=NaN;return i((function(v,g,c){return v.type&S.SMOOTH_CURVE_TO&&(v.type=S.CURVE_TO,o=isNaN(o)?g:o,u=isNaN(u)?c:u,v.x1=v.relative?g-o:2*g-o,v.y1=v.relative?c-u:2*c-u),v.type&S.CURVE_TO?(o=v.relative?g+v.x2:v.x2,u=v.relative?c+v.y2:v.y2):(o=NaN,u=NaN),v.type&S.SMOOTH_QUAD_TO&&(v.type=S.QUAD_TO,h=isNaN(h)?g:h,f=isNaN(f)?c:f,v.x1=v.relative?g-h:2*g-h,v.y1=v.relative?c-f:2*c-f),v.type&S.QUAD_TO?(h=v.relative?g+v.x1:v.x1,f=v.relative?c+v.y1:v.y1):(h=NaN,f=NaN),v}))}l(r,"e");function t(){var o=NaN,u=NaN;return i((function(h,f,v){if(h.type&S.SMOOTH_QUAD_TO&&(h.type=S.QUAD_TO,o=isNaN(o)?f:o,u=isNaN(u)?v:u,h.x1=h.relative?f-o:2*f-o,h.y1=h.relative?v-u:2*v-u),h.type&S.QUAD_TO){o=h.relative?f+h.x1:h.x1,u=h.relative?v+h.y1:h.y1;var g=h.x1,c=h.y1;h.type=S.CURVE_TO,h.x1=((h.relative?0:f)+2*g)/3,h.y1=((h.relative?0:v)+2*c)/3,h.x2=(h.x+2*g)/3,h.y2=(h.y+2*c)/3}else o=NaN,u=NaN;return h}))}l(t,"n");function i(o){var u=0,h=0,f=NaN,v=NaN;return function(g){if(isNaN(f)&&!(g.type&S.MOVE_TO))throw new Error("path must start with moveto");var c=o(g,u,h,f,v);return g.type&S.CLOSE_PATH&&(u=f,h=v),g.x!==void 0&&(u=g.relative?u+g.x:g.x),g.y!==void 0&&(h=g.relative?h+g.y:g.y),g.type&S.MOVE_TO&&(f=u,v=h),c}}l(i,"u");function a(o,u,h,f,v,g){return Pe(o,u,h,f,v,g),i((function(c,d,p,y){var m=c.x1,b=c.x2,x=c.relative&&!isNaN(y),O=c.x!==void 0?c.x:x?0:d,R=c.y!==void 0?c.y:x?0:p;function C(H){return H*H}l(C,"l"),c.type&S.HORIZ_LINE_TO&&u!==0&&(c.type=S.LINE_TO,c.y=c.relative?0:p),c.type&S.VERT_LINE_TO&&h!==0&&(c.type=S.LINE_TO,c.x=c.relative?0:d),c.x!==void 0&&(c.x=c.x*o+R*h+(x?0:v)),c.y!==void 0&&(c.y=O*u+c.y*f+(x?0:g)),c.x1!==void 0&&(c.x1=c.x1*o+c.y1*h+(x?0:v)),c.y1!==void 0&&(c.y1=m*u+c.y1*f+(x?0:g)),c.x2!==void 0&&(c.x2=c.x2*o+c.y2*h+(x?0:v)),c.y2!==void 0&&(c.y2=b*u+c.y2*f+(x?0:g));var T=o*f-u*h;if(c.xRot!==void 0&&(o!==1||u!==0||h!==0||f!==1))if(T===0)delete c.rX,delete c.rY,delete c.xRot,delete c.lArcFlag,delete c.sweepFlag,c.type=S.LINE_TO;else{var A=c.xRot*Math.PI/180,q=Math.sin(A),I=Math.cos(A),D=1/C(c.rX),N=1/C(c.rY),B=C(I)*D+C(q)*N,w=2*q*I*(D-N),P=C(q)*D+C(I)*N,G=B*f*f-w*u*f+P*u*u,k=w*(o*f+u*h)-2*(B*h*f+P*o*u),L=B*h*h-w*o*h+P*o*o,_=(Math.atan2(k,G-L)+Math.PI)%Math.PI/2,M=Math.sin(_),j=Math.cos(_);c.rX=Math.abs(T)/Math.sqrt(G*C(j)+k*M*j+L*C(M)),c.rY=Math.abs(T)/Math.sqrt(G*C(M)-k*M*j+L*C(j)),c.xRot=180*_/Math.PI}return c.sweepFlag!==void 0&&0>T&&(c.sweepFlag=+!c.sweepFlag),c}))}l(a,"O");function n(){return function(o){var u={};for(var h in o)u[h]=o[h];return u}}l(n,"l"),s.ROUND=function(o){function u(h){return Math.round(h*o)/o}return l(u,"r"),o===void 0&&(o=1e13),Pe(o),function(h){return h.x1!==void 0&&(h.x1=u(h.x1)),h.y1!==void 0&&(h.y1=u(h.y1)),h.x2!==void 0&&(h.x2=u(h.x2)),h.y2!==void 0&&(h.y2=u(h.y2)),h.x!==void 0&&(h.x=u(h.x)),h.y!==void 0&&(h.y=u(h.y)),h.rX!==void 0&&(h.rX=u(h.rX)),h.rY!==void 0&&(h.rY=u(h.rY)),h}},s.TO_ABS=e,s.TO_REL=function(){return i((function(o,u,h){return o.relative||(o.x1!==void 0&&(o.x1-=u),o.y1!==void 0&&(o.y1-=h),o.x2!==void 0&&(o.x2-=u),o.y2!==void 0&&(o.y2-=h),o.x!==void 0&&(o.x-=u),o.y!==void 0&&(o.y-=h),o.relative=!0),o}))},s.NORMALIZE_HVZ=function(o,u,h){return o===void 0&&(o=!0),u===void 0&&(u=!0),h===void 0&&(h=!0),i((function(f,v,g,c,d){if(isNaN(c)&&!(f.type&S.MOVE_TO))throw new Error("path must start with moveto");return u&&f.type&S.HORIZ_LINE_TO&&(f.type=S.LINE_TO,f.y=f.relative?0:g),h&&f.type&S.VERT_LINE_TO&&(f.type=S.LINE_TO,f.x=f.relative?0:v),o&&f.type&S.CLOSE_PATH&&(f.type=S.LINE_TO,f.x=f.relative?c-v:c,f.y=f.relative?d-g:d),f.type&S.ARC&&(f.rX===0||f.rY===0)&&(f.type=S.LINE_TO,delete f.rX,delete f.rY,delete f.xRot,delete f.lArcFlag,delete f.sweepFlag),f}))},s.NORMALIZE_ST=r,s.QT_TO_C=t,s.INFO=i,s.SANITIZE=function(o){o===void 0&&(o=0),Pe(o);var u=NaN,h=NaN,f=NaN,v=NaN;return i((function(g,c,d,p,y){var m=Math.abs,b=!1,x=0,O=0;if(g.type&S.SMOOTH_CURVE_TO&&(x=isNaN(u)?0:c-u,O=isNaN(h)?0:d-h),g.type&(S.CURVE_TO|S.SMOOTH_CURVE_TO)?(u=g.relative?c+g.x2:g.x2,h=g.relative?d+g.y2:g.y2):(u=NaN,h=NaN),g.type&S.SMOOTH_QUAD_TO?(f=isNaN(f)?c:2*c-f,v=isNaN(v)?d:2*d-v):g.type&S.QUAD_TO?(f=g.relative?c+g.x1:g.x1,v=g.relative?d+g.y1:g.y2):(f=NaN,v=NaN),g.type&S.LINE_COMMANDS||g.type&S.ARC&&(g.rX===0||g.rY===0||!g.lArcFlag)||g.type&S.CURVE_TO||g.type&S.SMOOTH_CURVE_TO||g.type&S.QUAD_TO||g.type&S.SMOOTH_QUAD_TO){var R=g.x===void 0?0:g.relative?g.x:g.x-c,C=g.y===void 0?0:g.relative?g.y:g.y-d;x=isNaN(f)?g.x1===void 0?x:g.relative?g.x:g.x1-c:f-c,O=isNaN(v)?g.y1===void 0?O:g.relative?g.y:g.y1-d:v-d;var T=g.x2===void 0?0:g.relative?g.x:g.x2-c,A=g.y2===void 0?0:g.relative?g.y:g.y2-d;m(R)<=o&&m(C)<=o&&m(x)<=o&&m(O)<=o&&m(T)<=o&&m(A)<=o&&(b=!0)}return g.type&S.CLOSE_PATH&&m(c-p)<=o&&m(d-y)<=o&&(b=!0),b?[]:g}))},s.MATRIX=a,s.ROTATE=function(o,u,h){u===void 0&&(u=0),h===void 0&&(h=0),Pe(o,u,h);var f=Math.sin(o),v=Math.cos(o);return a(v,f,-f,v,u-u*v+h*f,h-u*f-h*v)},s.TRANSLATE=function(o,u){return u===void 0&&(u=0),Pe(o,u),a(1,0,0,1,o,u)},s.SCALE=function(o,u){return u===void 0&&(u=o),Pe(o,u),a(o,0,0,u,0,0)},s.SKEW_X=function(o){return Pe(o),a(1,0,Math.atan(o),1,0,0)},s.SKEW_Y=function(o){return Pe(o),a(1,Math.atan(o),0,1,0,0)},s.X_AXIS_SYMMETRY=function(o){return o===void 0&&(o=0),Pe(o),a(-1,0,0,1,o,0)},s.Y_AXIS_SYMMETRY=function(o){return o===void 0&&(o=0),Pe(o),a(1,0,0,-1,0,o)},s.A_TO_C=function(){return i((function(o,u,h){return S.ARC===o.type?(function(f,v,g){var c,d,p,y;f.cX||tn(f,v,g);for(var m=Math.min(f.phi1,f.phi2),b=Math.max(f.phi1,f.phi2)-m,x=Math.ceil(b/90),O=new Array(x),R=v,C=g,T=0;T<x;T++){var A=Bh(f.phi1,f.phi2,T/x),q=Bh(f.phi1,f.phi2,(T+1)/x),I=q-A,D=4/3*Math.tan(I*Be/4),N=[Math.cos(A*Be)-D*Math.sin(A*Be),Math.sin(A*Be)+D*Math.cos(A*Be)],B=N[0],w=N[1],P=[Math.cos(q*Be),Math.sin(q*Be)],G=P[0],k=P[1],L=[G+D*Math.sin(q*Be),k-D*Math.cos(q*Be)],_=L[0],M=L[1];O[T]={relative:f.relative,type:S.CURVE_TO};var j=l(function(H,W){var X=on([H*f.rX,W*f.rY],f.xRot),oe=X[0],Oe=X[1];return[f.cX+oe,f.cY+Oe]},"H");c=j(B,w),O[T].x1=c[0],O[T].y1=c[1],d=j(_,M),O[T].x2=d[0],O[T].y2=d[1],p=j(G,k),O[T].x=p[0],O[T].y=p[1],f.relative&&(O[T].x1-=R,O[T].y1-=C,O[T].x2-=R,O[T].y2-=C,O[T].x-=R,O[T].y-=C),R=(y=[O[T].x,O[T].y])[0],C=y[1]}return O})(o,o.relative?0:u,o.relative?0:h):o}))},s.ANNOTATE_ARCS=function(){return i((function(o,u,h){return o.relative&&(u=0,h=0),S.ARC===o.type&&tn(o,u,h),o}))},s.CLONE=n,s.CALCULATE_BOUNDS=function(){var o=l(function(g){var c={};for(var d in g)c[d]=g[d];return c},"t"),u=e(),h=t(),f=r(),v=i((function(g,c,d){var p=f(h(u(o(g))));function y(M){M>v.maxX&&(v.maxX=M),M<v.minX&&(v.minX=M)}l(y,"O");function m(M){M>v.maxY&&(v.maxY=M),M<v.minY&&(v.minY=M)}if(l(m,"l"),p.type&S.DRAWING_COMMANDS&&(y(c),m(d)),p.type&S.HORIZ_LINE_TO&&y(p.x),p.type&S.VERT_LINE_TO&&m(p.y),p.type&S.LINE_TO&&(y(p.x),m(p.y)),p.type&S.CURVE_TO){y(p.x),m(p.y);for(var b=0,x=Fh(c,p.x1,p.x2,p.x);b<x.length;b++)0<(_=x[b])&&1>_&&y(Gh(c,p.x1,p.x2,p.x,_));for(var O=0,R=Fh(d,p.y1,p.y2,p.y);O<R.length;O++)0<(_=R[O])&&1>_&&m(Gh(d,p.y1,p.y2,p.y,_))}if(p.type&S.ARC){y(p.x),m(p.y),tn(p,c,d);for(var C=p.xRot/180*Math.PI,T=Math.cos(C)*p.rX,A=Math.sin(C)*p.rX,q=-Math.sin(C)*p.rY,I=Math.cos(C)*p.rY,D=p.phi1<p.phi2?[p.phi1,p.phi2]:-180>p.phi2?[p.phi2+360,p.phi1+360]:[p.phi2,p.phi1],N=D[0],B=D[1],w=function(M){var j=M[0],H=M[1],W=180*Math.atan2(H,j)/Math.PI;return W<N?W+360:W},P=0,G=jh(q,-T,0).map(w);P<G.length;P++)(_=G[P])>N&&_<B&&y(Uh(p.cX,T,q,_));for(var k=0,L=jh(I,-A,0).map(w);k<L.length;k++){var _;(_=L[k])>N&&_<B&&m(Uh(p.cY,A,I,_))}}return g}));return v.minX=1/0,v.maxX=-1/0,v.minY=1/0,v.maxY=-1/0,v}})(te||(te={}));var we,Ff=(function(){function s(){}return l(s,"t"),s.prototype.round=function(e){return this.transform(te.ROUND(e))},s.prototype.toAbs=function(){return this.transform(te.TO_ABS())},s.prototype.toRel=function(){return this.transform(te.TO_REL())},s.prototype.normalizeHVZ=function(e,r,t){return this.transform(te.NORMALIZE_HVZ(e,r,t))},s.prototype.normalizeST=function(){return this.transform(te.NORMALIZE_ST())},s.prototype.qtToC=function(){return this.transform(te.QT_TO_C())},s.prototype.aToC=function(){return this.transform(te.A_TO_C())},s.prototype.sanitize=function(e){return this.transform(te.SANITIZE(e))},s.prototype.translate=function(e,r){return this.transform(te.TRANSLATE(e,r))},s.prototype.scale=function(e,r){return this.transform(te.SCALE(e,r))},s.prototype.rotate=function(e,r,t){return this.transform(te.ROTATE(e,r,t))},s.prototype.matrix=function(e,r,t,i,a,n){return this.transform(te.MATRIX(e,r,t,i,a,n))},s.prototype.skewX=function(e){return this.transform(te.SKEW_X(e))},s.prototype.skewY=function(e){return this.transform(te.SKEW_Y(e))},s.prototype.xSymmetry=function(e){return this.transform(te.X_AXIS_SYMMETRY(e))},s.prototype.ySymmetry=function(e){return this.transform(te.Y_AXIS_SYMMETRY(e))},s.prototype.annotateArcs=function(){return this.transform(te.ANNOTATE_ARCS())},s})(),mv=l(function(s){return s===" "||s===" "||s==="\r"||s===`
@@ -1 +1 @@
1
- import{C as t}from"./main-cad-bbPyIDxb.js";import"./featureDialogs-CUWi02Qp.js";import"./browserStorage-CvgF8ovw.js";import"./preload-helper-ZNr0Qq7Q.js";import"./droppedWorkspaceFiles-8o-ZYOrf.js";import"./FeatureRegistry-Cd-GX-Bm.js";import"./Tube-bO80ROeR.js";import"./chamfer-DdXNz6lz.js";import"./fillet-CJey7GJP.js";import"./deepClone-Dj59xCHB.js";import"./PartHistory-DxsRIXx4.js";import"./AssemblyConstraintRegistry-3P1cpGjG.js";import"./annUtils-D9TT7tgs.js";import"./AnnotationRegistry-CyI5mmDu.js";const n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:t.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:t.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:t.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:t.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},e={operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<","</",">>",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/[{}]/,"delimiter.bracket"],{include:"common"}],common:[[/#?[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[A-Z][\w\$]*/,"type.identifier"],{include:"@whitespace"},[/\/(?=([^\\\/]|\\.)+\/([dgimsuy]*)(\s*)(\.|;|,|\)|\]|\}|$))/,{token:"regexp",bracket:"@open",next:"@regexp"}],[/[()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([dgimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}},u=n,k={defaultToken:"invalid",tokenPostfix:".js",keywords:["break","case","catch","class","continue","const","constructor","debugger","default","delete","do","else","export","extends","false","finally","for","from","function","get","if","import","in","instanceof","let","new","null","return","set","static","super","switch","symbol","this","throw","true","try","typeof","undefined","var","void","while","with","yield","async","await","of"],typeKeywords:[],operators:e.operators,symbols:e.symbols,escapes:e.escapes,digits:e.digits,octaldigits:e.octaldigits,binarydigits:e.binarydigits,hexdigits:e.hexdigits,regexpctl:e.regexpctl,regexpesc:e.regexpesc,tokenizer:e.tokenizer};export{u as conf,k as language};
1
+ import{C as t}from"./main-cad-J2VK-edE.js";import"./featureDialogs-Bas0NDXF.js";import"./browserStorage-CvgF8ovw.js";import"./preload-helper-ZNr0Qq7Q.js";import"./droppedWorkspaceFiles-8o-ZYOrf.js";import"./FeatureRegistry-C7MrfKHF.js";import"./Tube-TKgrLSLm.js";import"./chamfer-jmLT1RTy.js";import"./fillet-Bzd1Xae9.js";import"./deepClone-Dj59xCHB.js";import"./PartHistory-CyUoWFuO.js";import"./AssemblyConstraintRegistry-DJV0rHvz.js";import"./annUtils-Cv2fgMTB.js";import"./AnnotationRegistry-QZj3o2R6.js";const n={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\%\^\&\*\(\)\-\=\+\[\{\]\}\\\|\;\:\'\"\,\.\<\>\/\?\s]+)/g,comments:{lineComment:"//",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],onEnterRules:[{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,afterText:/^\s*\*\/$/,action:{indentAction:t.IndentAction.IndentOutdent,appendText:" * "}},{beforeText:/^\s*\/\*\*(?!\/)([^\*]|\*(?!\/))*$/,action:{indentAction:t.IndentAction.None,appendText:" * "}},{beforeText:/^(\t|(\ \ ))*\ \*(\ ([^\*]|\*(?!\/))*)?$/,action:{indentAction:t.IndentAction.None,appendText:"* "}},{beforeText:/^(\t|(\ \ ))*\ \*\/\s*$/,action:{indentAction:t.IndentAction.None,removeText:1}}],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"',notIn:["string"]},{open:"'",close:"'",notIn:["string","comment"]},{open:"`",close:"`",notIn:["string","comment"]},{open:"/**",close:" */",notIn:["string"]}],folding:{markers:{start:new RegExp("^\\s*//\\s*#?region\\b"),end:new RegExp("^\\s*//\\s*#?endregion\\b")}}},e={operators:["<=",">=","==","!=","===","!==","=>","+","-","**","*","/","%","++","--","<<","</",">>",">>>","&","|","^","!","~","&&","||","??","?",":","=","+=","-=","*=","**=","/=","%=","<<=",">>=",">>>=","&=","|=","^=","@"],symbols:/[=><!~?:&|+\-*\/\^%]+/,escapes:/\\(?:[abfnrtv\\"']|x[0-9A-Fa-f]{1,4}|u[0-9A-Fa-f]{4}|U[0-9A-Fa-f]{8})/,digits:/\d+(_+\d+)*/,octaldigits:/[0-7]+(_+[0-7]+)*/,binarydigits:/[0-1]+(_+[0-1]+)*/,hexdigits:/[[0-9a-fA-F]+(_+[0-9a-fA-F]+)*/,regexpctl:/[(){}\[\]\$\^|\-*+?\.]/,regexpesc:/\\(?:[bBdDfnrstvwWn0\\\/]|@regexpctl|c[A-Z]|x[0-9a-fA-F]{2}|u[0-9a-fA-F]{4})/,tokenizer:{root:[[/[{}]/,"delimiter.bracket"],{include:"common"}],common:[[/#?[a-z_$][\w$]*/,{cases:{"@keywords":"keyword","@default":"identifier"}}],[/[A-Z][\w\$]*/,"type.identifier"],{include:"@whitespace"},[/\/(?=([^\\\/]|\\.)+\/([dgimsuy]*)(\s*)(\.|;|,|\)|\]|\}|$))/,{token:"regexp",bracket:"@open",next:"@regexp"}],[/[()\[\]]/,"@brackets"],[/[<>](?!@symbols)/,"@brackets"],[/!(?=([^=]|$))/,"delimiter"],[/@symbols/,{cases:{"@operators":"delimiter","@default":""}}],[/(@digits)[eE]([\-+]?(@digits))?/,"number.float"],[/(@digits)\.(@digits)([eE][\-+]?(@digits))?/,"number.float"],[/0[xX](@hexdigits)n?/,"number.hex"],[/0[oO]?(@octaldigits)n?/,"number.octal"],[/0[bB](@binarydigits)n?/,"number.binary"],[/(@digits)n?/,"number"],[/[;,.]/,"delimiter"],[/"([^"\\]|\\.)*$/,"string.invalid"],[/'([^'\\]|\\.)*$/,"string.invalid"],[/"/,"string","@string_double"],[/'/,"string","@string_single"],[/`/,"string","@string_backtick"]],whitespace:[[/[ \t\r\n]+/,""],[/\/\*\*(?!\/)/,"comment.doc","@jsdoc"],[/\/\*/,"comment","@comment"],[/\/\/.*$/,"comment"]],comment:[[/[^\/*]+/,"comment"],[/\*\//,"comment","@pop"],[/[\/*]/,"comment"]],jsdoc:[[/[^\/*]+/,"comment.doc"],[/\*\//,"comment.doc","@pop"],[/[\/*]/,"comment.doc"]],regexp:[[/(\{)(\d+(?:,\d*)?)(\})/,["regexp.escape.control","regexp.escape.control","regexp.escape.control"]],[/(\[)(\^?)(?=(?:[^\]\\\/]|\\.)+)/,["regexp.escape.control",{token:"regexp.escape.control",next:"@regexrange"}]],[/(\()(\?:|\?=|\?!)/,["regexp.escape.control","regexp.escape.control"]],[/[()]/,"regexp.escape.control"],[/@regexpctl/,"regexp.escape.control"],[/[^\\\/]/,"regexp"],[/@regexpesc/,"regexp.escape"],[/\\\./,"regexp.invalid"],[/(\/)([dgimsuy]*)/,[{token:"regexp",bracket:"@close",next:"@pop"},"keyword.other"]]],regexrange:[[/-/,"regexp.escape.control"],[/\^/,"regexp.invalid"],[/@regexpesc/,"regexp.escape"],[/[^\]]/,"regexp"],[/\]/,{token:"regexp.escape.control",next:"@pop",bracket:"@close"}]],string_double:[[/[^\\"]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/"/,"string","@pop"]],string_single:[[/[^\\']+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/'/,"string","@pop"]],string_backtick:[[/\$\{/,{token:"delimiter.bracket",next:"@bracketCounting"}],[/[^\\`$]+/,"string"],[/@escapes/,"string.escape"],[/\\./,"string.escape.invalid"],[/`/,"string","@pop"]],bracketCounting:[[/\{/,"delimiter.bracket","@bracketCounting"],[/\}/,"delimiter.bracket","@pop"],{include:"common"}]}},u=n,k={defaultToken:"invalid",tokenPostfix:".js",keywords:["break","case","catch","class","continue","const","constructor","debugger","default","delete","do","else","export","extends","false","finally","for","from","function","get","if","import","in","instanceof","let","new","null","return","set","static","super","switch","symbol","this","throw","true","try","typeof","undefined","var","void","while","with","yield","async","await","of"],typeKeywords:[],operators:e.operators,symbols:e.symbols,escapes:e.escapes,digits:e.digits,octaldigits:e.octaldigits,binarydigits:e.binarydigits,hexdigits:e.hexdigits,regexpctl:e.regexpctl,regexpesc:e.regexpesc,tokenizer:e.tokenizer};export{u as conf,k as language};