@silurus/ooxml 0.81.0 → 0.82.1

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 (61) hide show
  1. package/README.md +4 -8
  2. package/dist/assets/render-worker-Cy-QsDge.js +10 -0
  3. package/dist/assets/{render-worker-DtU8oQZ7.js → render-worker-Dw_wQRIh.js} +1 -1
  4. package/dist/assets/{render-worker-C2ACcLes.js → render-worker-aHayzR7v.js} +4 -4
  5. package/dist/{canvas-viewer-mechanics-CqxKRGCp.js → canvas-viewer-mechanics-CS_qbr6T.js} +1 -1
  6. package/dist/chart-ex.mjs +4 -4
  7. package/dist/comment-occurrence-C34fWs_F.js +6 -0
  8. package/dist/comment-ui-runtime-C1RV_3iu.js +112 -0
  9. package/dist/comment-ui-runtime-DTGN3Vyy.js +2 -0
  10. package/dist/comment-ui-runtime-DgCZpPR0.js +171 -0
  11. package/dist/comments-Cf9W7r3M.js +241 -0
  12. package/dist/{document-pull-client-Ux4a_ax8.js → document-pull-client-B1WOjA0z.js} +2206 -2193
  13. package/dist/{docx-SEyQ4gS-.js → docx-HoZXZUPA.js} +674 -249
  14. package/dist/docx.mjs +6 -5
  15. package/dist/docx_parser_bg.wasm +0 -0
  16. package/dist/dom-interaction-boundary-C8F6HO5x.js +119 -0
  17. package/dist/highlight-rect-MaCt0om0.js +13 -0
  18. package/dist/index.mjs +3 -3
  19. package/dist/{line-distribute-BBGvvwLt.js → line-distribute-iXsUCIH-.js} +2 -2
  20. package/dist/{line-metrics-Baz31mML.js → line-metrics-B3syvDn2.js} +52 -52
  21. package/dist/math.mjs +2 -2
  22. package/dist/node.mjs +10 -10
  23. package/dist/{plot-area-frame-Dg1VIpUU.js → plot-area-frame-DHV02PJU.js} +591 -590
  24. package/dist/{pptx-5lQrMvMR.js → pptx-DEUP4Yq5.js} +537 -243
  25. package/dist/pptx.mjs +6 -6
  26. package/dist/pptx_parser_bg.wasm +0 -0
  27. package/dist/read-only-comment-decoration-DcFevX_Q.js +96 -0
  28. package/dist/read-only-comment-margin-DrUX-YrP.js +189 -0
  29. package/dist/region-map.mjs +2 -2
  30. package/dist/{render-DEHjijQD.js → render-BC8p7vZQ.js} +1 -1
  31. package/dist/{render-worker-host-B1nbV_k7.js → render-worker-host-BNnXCtAu.js} +1 -1
  32. package/dist/{render-worker-host-Bze5M6k5.js → render-worker-host-CmPBviYJ.js} +1 -1
  33. package/dist/{render-worker-host-Dg_74V64.js → render-worker-host-DhnkTyjj.js} +1 -1
  34. package/dist/{renderer-DuopJE1K.js → renderer-CYr9YTXM.js} +436 -435
  35. package/dist/{resource-measurement-DRLp4nFt.js → resource-measurement-CsW4_eYt.js} +2 -2
  36. package/dist/{session-CNVc3VJ4.js → session-Da7LEQUB.js} +3 -3
  37. package/dist/{slide-pull-client-CzutXnGc.js → slide-pull-client-Bg9DusLX.js} +413 -300
  38. package/dist/source-key-BklvnEyQ.js +42 -0
  39. package/dist/{three-d-BYiWCNlz.js → three-d-7MaVzQuZ.js} +48 -47
  40. package/dist/three-d.mjs +324 -323
  41. package/dist/types/chart-ex.d.ts +2 -2
  42. package/dist/types/docx.d.ts +183 -19
  43. package/dist/types/index.d.ts +343 -26
  44. package/dist/types/math.d.ts +1 -1
  45. package/dist/types/node.d.ts +428 -348
  46. package/dist/types/pptx.d.ts +132 -11
  47. package/dist/types/region-map.d.ts +2 -2
  48. package/dist/types/three-d.d.ts +2 -2
  49. package/dist/types/xlsx.d.ts +78 -10
  50. package/dist/units-BzZ0gAxs.js +4 -0
  51. package/dist/{worksheet-pull-client-Cxj3Ej0s.js → worksheet-pull-client-CYtwXP5D.js} +3 -3
  52. package/dist/{xlsx-Bl3TIEVu.js → xlsx-DMWeXT-c.js} +429 -218
  53. package/dist/xlsx.mjs +6 -6
  54. package/dist/xlsx_parser_bg.wasm +0 -0
  55. package/package.json +2 -1
  56. package/dist/assets/render-worker-Cx5uR77k.js +0 -10
  57. package/dist/highlight-rect-BqcZMHUE.js +0 -48
  58. /package/dist/{mathjax-DJa-Q93p.js → mathjax-DwIrafQ6.js} +0 -0
  59. /package/dist/{renderer-module-contract-0bO_5SC0.js → renderer-module-contract-DLbb7zY0.js} +0 -0
  60. /package/dist/{transfer-D0U6Uhn4.js → transfer-R6NjgBKD.js} +0 -0
  61. /package/dist/{visible-index-DbDuGMCE.js → visible-index-BFE3PWiY.js} +0 -0
@@ -20,5 +20,5 @@ var e=Object.defineProperty,t=(e,t)=>()=>(e&&(t=e(e=0)),t),n=(t,n)=>{let r={};fo
20
20
  `);for(let n=0;n<e.length;n++)n>0&&r.push([]),e[n]!==``&&r[r.length-1].push({...t,text:e[n]})}let i=t.size,a=t.name;return r.map(e=>{if(e.length===0)return{runs:e,heightPx:_x(i||11,n,1.2,a??void 0)};let r=0,o=null;for(let n of e){let e=Sx(t,n);e.size>r&&(r=e.size,o=e.name),i=e.size,a=e.name}return{runs:e,heightPx:_x(r,n,1.2,o??void 0)}})}function oS(e,t,n,r,i,a,o,s,c){let l=i.alignH??(t.value.type===`number`?`right`:`left`),u=i.indent?Math.round(i.indent*3*o):0,d=s?Math.max(8,Math.round(Math.min(a,c)*.55)):0,f=d>0?d+4:0,p=3+(l===`left`||!i.alignH?u:0)+f,m=Math.max(1,a-p-3),h=t.value.type===`text`?t.value.runs:void 0,g=!!h?.length,_=i.textRotation??0;if(e.font=vx(r,1),_===255)return[...n].length*_x(r.size,1,1.1)+4;if(_>0){let t=_<=90?_*Math.PI/180:(_-90)*Math.PI/180,i=_x(r.size,1,1.2,r.name??void 0),a=e.measureText(n.replace(/\n/g,` `)).width;return Math.abs(Math.sin(t))*a+Math.abs(Math.cos(t))*i+4}let v;if(i.wrapText&&g)v=jx(e,h,r,1,m).map(e=>_x(e.maxFontSize,1,1.2,e.maxFontFamily??void 0));else if(i.wrapText){e.font=vx(r,1);let t=_x(r.size,1,1.2,r.name??void 0);v=Ex(e,n,m).map(()=>t)}else if(g)v=aS(h,r,1).map(e=>e.heightPx);else{let e=Math.max(1,n.split(`
21
21
  `).length),t=_x(r.size,1,1.2,r.name??void 0);v=Array.from({length:e},()=>t)}return v.reduce((e,t)=>e+t,0)+(v.length>1?4:2)}function sS(e,t,n,r){if(n.wrapText||(n.textRotation??0)>0)return!0;if(e.value.type===`text`){if(e.value.text.includes(`
22
22
  `))return!0;for(let n of e.value.runs??[]){let e=Sx(t,n);if(_x(e.size,1,1.2,e.name??void 0)>r)return!0}}return _x(t.size,1,1.2,t.name??void 0)>r}function cS(e,t,n){if(rS.has(t)||t.isChartSheet)return!1;if(t.defaultRowHeightCustom===!0)return rS.set(t,{derived:new Map}),!1;let r=ox(t),i=Rb(t.defaultRowHeight),a=_x(t.defaultFontSize??11,1,1.2,t.defaultFontFamily),{cfContext:o,mergeAnchorSet:s,mergeSkipSet:c,tableStyleMap:l}=nS(t),u=new Map,d=!1;e.save();try{for(let f of t.rows){if(f.hidden||f.customHeight===!0||f.height!==null||Object.hasOwn(t.rowHeights,f.index))continue;let p=i,m=[];for(let i of f.cells){let u=`${f.index}:${i.col}`;if(i.value.type===`empty`||s.has(u)||c.has(u))continue;let{font:d,xf:h}=Cx(n,i.styleIndex??0);if(!sS(i,d,h,a))continue;let g=Mb(i,f.index,i.col,o,n.dxfs??[]),_=iS(d,g,l.get(u),n),v=Ly(i,n,g.numFmt,t.date1904).text;if(!v||v===`0`&&t.showZeros===!1)continue;let y=r.col.sizeOf(i.col);p=Math.max(p,oS(e,i,v,_,h,y,r.maximumDigitWidth,g.iconSet,Math.ceil(p))),g.iconSet&&m.push({cell:i,text:v,font:_,xf:h,cellWidthPx:y,iconSet:g.iconSet})}let h=m.length===0;for(let t=0;!h&&t<32;t++){let t=Math.ceil(p),n=p;for(let i of m)n=Math.max(n,oS(e,i.cell,i.text,i.font,i.xf,i.cellWidthPx,r.maximumDigitWidth,i.iconSet,t));p=n,h=Math.ceil(p)===t}if(!h)for(let t of m)p=Math.max(p,oS(e,t.cell,t.text,t.font,t.xf,t.cellWidthPx,r.maximumDigitWidth,t.iconSet,t.cellWidthPx));let g=Math.ceil(p);if(g>i){let e=zb(g);t.rowHeights[f.index]=e,u.set(f.index,e),d=!0}}}finally{e.restore()}return rS.set(t,{derived:u}),d&&Ub.invalidate(t),d}function lS(e){return rS.has(e)}function uS(e){rS.has(e)||rS.set(e,{derived:new Map})}function dS(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>1;e[i]<t?n=i+1:r=i}return n>0?e[n-1]:void 0}function fS(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>1;e[i]<=t?n=i+1:r=i}return n<e.length?e[n]:void 0}function pS(e,t,n,r){return(e.mergeCells??[]).some(e=>t>=e.top&&t<=e.bottom&&e.right>=n&&e.left<=r)}function mS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g){let _=d,v=f,y=new Set,b=(i,u,d,f)=>{let p=`${i}:${u}`,_=r.get(p);if(!_||_.value.type===`empty`||s.has(p))return!1;let{font:v,xf:y}=Cx(n,_.styleIndex??0),b=Mb(_,i,u,a,n.dxfs??[]),x=Ly(_,n,b.numFmt,t.date1904).text;if(!x||x===`0`&&t.showZeros===!1||_.value.type===`number`||y.wrapText||y.textRotation||x.includes(`
23
- `))return!1;let S=o.get(p),C=S?.isHeader?S.headerRowDxf:S?.isTotals?S.totalRowDxf:S?.isLastCol&&S.lastColumnDxf!=null?S.lastColumnDxf:S?.isFirstCol&&S.firstColumnDxf!=null?S.firstColumnDxf:S?.stripeDxf??S?.wholeTableDxf,w=C==null?void 0:n.dxfs?.[C],T=!!S&&!S.isCustom&&(S.isHeader||S.isTotals),E=v.bold||!!b.fontBold||T||!!w?.font?.bold,D=v.italic||!!b.fontItalic;e.font=vx(E!==v.bold||D!==v.italic?{...v,bold:E,italic:D}:v,m);let O=y.alignH??`left`,k=y.indent?Math.round(y.indent*3*h):0,A=c.sizeOf(u),j=l.sizeOf(i),M=b.iconSet?Math.max(8,Math.round(Math.min(A,j)*.55)):0,N=M>0?M+4:0,P=3+(O===`left`||!y.alignH?k:0)+N,F=e.measureText(x).width+P+3,I=Math.max(0,F-A);return I<=0?!1:(O===`center`||O===`centerContinuous`?I/2:((g?d===`higher`?`left`:`right`:d===`higher`?`right`:`left`)==`left`?O===`right`:O!==`right`)?I:0)>f};for(let e of u){let n=i.get(e);if(!n)continue;let a=dS(n,d),o=r.get(`${e}:${d}`);a!=null&&a>=p&&(!o||o.value.type===`empty`)&&!pS(t,e,a+1,d)&&b(e,a,`higher`,c.offsetOf(d)-c.offsetOf(a+1))&&(_=Math.min(_,a),y.add(`${e}:${a}`));let s=fS(n,f),l=r.get(`${e}:${f}`);s!=null&&s<=16384&&(!l||l.value.type===`empty`)&&!pS(t,e,f,s-1)&&b(e,s,`lower`,c.offsetOf(s)-c.offsetOf(f+1))&&(v=Math.max(v,s),y.add(`${e}:${s}`))}return{startCol:_,endCol:v,anchorKeys:y}}function hS(e,t){eS.set(t,nS(e))}function gS(e,t,n,r,i={}){let a=i.dpr??1,o=i.cellScale??1,s=t.isChartSheet===!0,c=ox(t),l=c.maximumDigitWidth,u=e.canvas.width/a,d=e.canvas.height/a;e.clearRect(0,0,u,d),e.fillStyle=`#ffffff`,e.fillRect(0,0,u,d);let f=e=>Math.round(e*o),p=s?0:f(50),m=s?0:f(22),{row:h,col:g,rows:_,cols:v}=r,y=(i.scrollOffsetX??0)*o,b=(i.scrollOffsetY??0)*o,{col:x,row:S}=c.axesAtScale(o),C=x.bandsToCover(1,s?0:i.freezeCols??0,Math.max(0,u-p)),w=S.bandsToCover(1,s?0:i.freezeRows??0,Math.max(0,d-m)),T=w.at(-1)?.index??0,E=C.at(-1)?.index??0,D=C.map(({index:e})=>e),O=w.map(({index:e})=>e),k=C.map(({size:e})=>e),A=w.map(({size:e})=>e),j=k.reduce((e,t)=>e+t,0),M=A.reduce((e,t)=>e+t,0),N=x.bandsToCover(g,Math.min(16384,g+v-1)),P=S.bandsToCover(h,Math.min(1048576,h+_-1)),F=N.map(({index:e})=>e),I=P.map(({index:e})=>e),L=N.map(({size:e})=>e),R=P.map(({size:e})=>e),{cellMap:z,cfContext:ee,mergeSkipSet:te,autoFilterCells:B,hyperlinkMap:V,commentCells:H,tableStyleMap:U,sparklineMap:ne,nonEmptyColsByRow:W}=nS(t),re=new Map,ie=tS(`worksheet-merge-anchor-index`,`index-merge-anchor-coordinates`);for(let e of t.mergeCells??[]){let t=x.offsetOf(e.right+1)-x.offsetOf(e.left),n=S.offsetOf(e.bottom+1)-S.offsetOf(e.top);gb(re,`${e.top}:${e.left}`,{totalW:t,totalH:n,right:e.right,bottom:e.bottom},ie)}let ae=F[0]??g,oe=F.at(-1)??Math.min(16384,g+v-1),se=mS(e,t,n,z,W,ee,U,re,x,S,[...new Set([...O,...I])],ae,oe,E+1,o,l,t.rightToLeft===!0),ce=x.bandsToCover(se.startCol,se.endCol),le=ce.map(({index:e})=>e),ue=ce.map(({size:e})=>e),de=y+x.offsetOf(ae)-x.offsetOf(se.startCol),G={worksheet:t,styles:n,cellMap:z,mergeAnchorMap:re,mergeSkipSet:te,cfContext:ee,colWidths:ue,rowHeights:R,colAxis:x,rowAxis:S,frozenColWidths:k,frozenRowHeights:A,frozenW:j,frozenH:M,startRow:h,startCol:g,cs:o,dpr:a,autoFilterCells:B,hyperlinkMap:V,commentCells:H,tableStyleMap:U,sparklineMap:ne,overflowTextAnchors:se.anchorKeys,mdw:l,onTextRun:i.onTextRun,rtl:t.rightToLeft===!0,canvasW:u,threeD:i.threeD},K=p,fe=m,q=K+j,J=fe+M,pe=Math.max(0,u-q),me=Math.max(0,d-J);T>0&&E>0&&$x(e,G,1,1,k,A,D,O,0,0,K,fe,K,fe,j,M),T>0&&$x(e,G,1,se.startCol,ue,A,le,O,de,0,q,fe,q,fe,pe,M),E>0&&$x(e,G,h,1,k,R,D,I,0,b,K,J,K,J,j,me),s||$x(e,G,h,se.startCol,ue,R,le,I,de,b,q,J,q,J,pe,me),vS(e,t,x,S,i.loadedImages,o,h,g,y,b,q,J,pe,me,t.rightToLeft===!0,u,i.threeD,i.regionMap,i.chartEx),!s&&t.slicers&&t.slicers.length>0&&US(e,t,x,S,o,h,g,y,b,q,J,pe,me,t.rightToLeft===!0,u),s||_S(e,u,d,h,g,_,v,L,R,F,I,y,b,k,A,D,O,j,M,p,m,o,a,i.selectedRowRange??null,i.selectedColRange??null,t.rightToLeft===!0);let Y=t.rightToLeft===!0;if(T>0){e.save(),e.strokeStyle=rx,e.lineWidth=.5,e.beginPath();let t=J+rp(J,.5,a);e.moveTo(0,t),e.lineTo(u,t),e.stroke(),e.restore()}if(E>0){e.save(),e.strokeStyle=rx,e.lineWidth=.5,e.beginPath();let t=Y?u-q:q,n=t+rp(t,.5,a);e.moveTo(n,m),e.lineTo(n,d),e.stroke(),e.restore()}}function _S(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T){let E=`#f8f9fa`,D=`#e8eaed`,O=`#caddf6`,k=`#c8ccd0`,A=`#5b9bd5`,j=`#444`,M=e=>!w||e<w.start||e>w.end?E:w.strong?O:D,N=e=>!w||e<w.start||e>w.end?k:w.strong?A:k,P=e=>!C||e<C.start||e>C.end?E:C.strong?O:D,F=e=>!C||e<C.start||e>C.end?k:C.strong?A:k,I=`${Math.max(1,Math.round(11*x))}px ${Zb}`,L=y+_,R=b+v,z=.5/S,ee=(e,n)=>T?tx(e,n,t):e,te=T?t-y:0;e.fillStyle=E,e.fillRect(te,0,y,b),e.strokeStyle=k,e.lineWidth=.5,e.beginPath();let B=T?te+rp(te,.5,S):te+y-z;e.moveTo(B,0),e.lineTo(B,b),e.moveTo(te,b-z),e.lineTo(te+y,b-z),e.stroke(),e.font=I,e.fillStyle=j;let V=(t,n,r)=>{let i=ee(n,r);e.fillStyle=M(t),e.fillRect(i,0,r,b),e.strokeStyle=N(t),e.lineWidth=.5,e.beginPath();let a=i+rp(i,.5,S);e.moveTo(a,0),e.lineTo(a,b),e.moveTo(i,b-z),e.lineTo(i+r,b-z),e.stroke(),e.fillStyle=j,e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(Ux(t),i+r/2,b/2)},H=(t,n,r)=>{let i=te;e.fillStyle=P(t),e.fillRect(i,n,y,r),e.strokeStyle=F(t),e.lineWidth=.5,e.beginPath();let a=n+rp(n,.5,S),o=T?i+rp(i,.5,S):i+y-z;e.moveTo(o,n),e.lineTo(o,n+r),e.moveTo(i,a),e.lineTo(i+y,a),e.stroke(),e.fillStyle=j,e.textBaseline=`middle`;let s=Math.max(2,Math.round(4*x));T?(e.textAlign=`left`,e.fillText(String(t),i+s,n+r/2)):(e.textAlign=`right`,e.fillText(String(t),i+y-s,n+r/2))};if(p.length>0){e.save(),e.beginPath(),e.rect(ee(y,_),0,_,b),e.clip();let t=y;for(let e=0;e<p.length;e++)V(h[e],t,p[e]),t+=p[e];e.restore()}e.save(),e.beginPath(),e.rect(ee(L,t-L),0,t-L,b),e.clip();let U=L-d;for(let e=0;e<s.length;e++){let n=s[e];U+n>L&&U<t&&V(l[e],U,n),U+=n}if(e.restore(),m.length>0){e.save(),e.beginPath(),e.rect(te,b,y,v),e.clip();let t=b;for(let e=0;e<m.length;e++)H(g[e],t,m[e]),t+=m[e];e.restore()}e.save(),e.beginPath(),e.rect(te,R,y,n-R),e.clip();let ne=R-f;for(let e=0;e<c.length;e++){let t=c[e];ne+t>R&&ne<n&&H(u[e],ne,t),ne+=t}e.restore()}function vS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v){let y=[],b=0;if(i)for(let e of t.images??[])y.push({kind:`image`,zOrder:e.zOrder??2**53-1,fallbackOrder:b++,anchor:e});for(let e of t.shapeGroups??[])for(let t of e.shapes)y.push({kind:`shape`,zOrder:t.zOrder??2**53-1,fallbackOrder:b++,anchor:e,shape:t});for(let e of t.charts??[])y.push({kind:`chart`,zOrder:e.zOrder??2**53-1,fallbackOrder:b++,anchor:e});y.sort((e,t)=>e.zOrder-t.zOrder||e.fallbackOrder-t.fallbackOrder);for(let b of y)b.kind===`image`?xS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,[b.anchor]):b.kind===`shape`?SS(e,t,n,r,a,o,s,c,l,u,d,f,p,i,m,h,[{...b.anchor,shapes:[b.shape]}]):VS(e,t,n,r,a,o,s,c,l,u,d,f,p,m,h,i,[b.anchor],g,_,v)}function yS(e,t){return e.offsetOf(t)}function bS(e,t){return e.offsetOf(t)}function xS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g=t.images){if(f<=0||p<=0)return;let _=yS(n,s),v=bS(r,o);e.save(),e.beginPath();let y=nx(u,f,h,m);e.rect(y,d,f,p),e.clip();for(let t of g){let o=i.get(Jb(t.imagePath,t.duotone));if(!o)continue;let s=t.fromCol+1,g=t.fromRow+1,b=yS(n,s)+t.fromColOff*a/sn,x=bS(r,g)+t.fromRowOff*a/sn,S,C;if(qb(t))S=t.nativeExtCx*a/sn,C=t.nativeExtCy*a/sn;else{let e=t.toCol+1,i=t.toRow+1,o=yS(n,e)+t.toColOff*a/sn,s=bS(r,i)+t.toRowOff*a/sn;S=o-b,C=s-x}if(S<=0||C<=0)continue;let w=nx(u+(b-_)-c,S,h,m),T=d+(x-v)-l;w+S<y||w>y+f||T+C<d||T>d+p||(t.alpha!=null&&t.alpha<1?(e.save(),e.globalAlpha=t.alpha,nn(e,o,t.srcRect,w,T,S,C),e.restore()):nn(e,o,t.srcRect,w,T,S,C))}e.restore()}function SS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g=t.shapeGroups??[]){if(d<=0||f<=0||g.length===0)return;let _=yS(n,o),v=bS(r,a);e.save(),e.beginPath();let y=nx(l,d,h,m);e.rect(y,u,d,f),e.clip();for(let t of g){let a=t.fromCol+1,o=t.fromRow+1,g=yS(n,a)+t.fromColOff*i/sn,b=bS(r,o)+t.fromRowOff*i/sn,x,S;if(qb(t))x=t.nativeExtCx*i/sn,S=t.nativeExtCy*i/sn;else{let e=t.toCol+1,a=t.toRow+1,o=yS(n,e)+t.toColOff*i/sn,s=bS(r,a)+t.toRowOff*i/sn;x=o-g,S=s-b}if(x<=0||S<=0)continue;let C=nx(l+(g-_)-s,x,h,m),w=u+(b-v)-c;if(!(C+x<y||C>y+d)&&!(w+S<u||w>u+f))for(let n of t.shapes){let t=C+n.x*x,r=w+n.y*S,a=n.w*x,o=n.h*S;a<=0||o<=0||CS(e,n,t,r,a,o,i,p)}}e.restore()}function CS(e,t,n,r,i,a,o,s){if(e.save(),t.rot!==0||t.flipH||t.flipV?(e.translate(n+i/2,r+a/2),e.rotate(t.rot*Math.PI/180),e.scale(t.flipH?-1:1,t.flipV?-1:1),e.translate(-i/2,-a/2)):e.translate(n,r),t.geom.type===`custom`)for(let n of t.geom.paths){if(n.w<=0||n.h<=0)continue;let r=i/n.w,o=a/n.h;e.beginPath();let s=0,c=0,l=0,u=0;for(let t of n.commands)switch(t.op){case`moveTo`:{let n=t.x*r,i=t.y*o;e.moveTo(n,i),s=l=n,c=u=i;break}case`lineTo`:{let n=t.x*r,i=t.y*o;e.lineTo(n,i),s=n,c=i;break}case`cubicBezTo`:{let n=t.x3*r,i=t.y3*o;e.bezierCurveTo(t.x1*r,t.y1*o,t.x2*r,t.y2*o,n,i),s=n,c=i;break}case`quadBezTo`:{let n=t.x2*r,i=t.y2*o;e.quadraticCurveTo(t.x1*r,t.y1*o,n,i),s=n,c=i;break}case`arcTo`:{let n=t.wr*r,i=t.hr*o;if(n<=0||i<=0)break;let a=t.stAng/6e4*(Math.PI/180),l=t.swAng/6e4*(Math.PI/180),u=s-Math.cos(a)*n,d=c-Math.sin(a)*i,f=a+l;e.ellipse(u,d,n,i,0,a,f,l<0),s=u+Math.cos(f)*n,c=d+Math.sin(f)*i;break}case`close`:e.closePath(),s=l,c=u;break}AS(e,t,i,a)}else if(t.geom.type===`preset`){let n=Xi(t.fill??(t.fillColor?{fillType:`solid`,color:t.fillColor}:null),e,0,0,i,a,t.rot),r=t.strokeColor&&t.strokeWidth>0?()=>MS(e,t,i,a):null;Rd(e,t.geom.name,0,0,i,a,t.geom.adj??[],n,r,()=>{})||(e.beginPath(),e.rect(0,0,i,a),AS(e,t,i,a))}else if(t.geom.type===`image`){let n=s?.get(Jb(t.geom.imagePath,t.geom.duotone));if(n){let r=t.geom.alpha;r!=null&&r<1?(e.save(),e.globalAlpha=r,nn(e,n,t.geom.srcRect,0,0,i,a),e.restore()):nn(e,n,t.geom.srcRect,0,0,i,a)}}t.text&&kS(e,t.text,i,a,o),e.restore()}const wS=new WeakMap;function TS(e,t){let n=e.tinted.get(t);if(n)return n;let r=ep(e.raster,t);return e.tinted.set(t,r),r}function ES(e){let t=[];for(let n of e.shapeGroups??[])for(let e of n.shapes)for(let n of e.text?.paragraphs??[])for(let e of n.runs)e.type===`math`&&t.push({nodes:e.nodes,display:e.display});return t}function DS(e){for(let t of e.shapeGroups??[])for(let e of t.shapes)for(let t of e.text?.paragraphs??[])for(let e of t.runs)if(e.type===`math`&&!wS.has(e.nodes))return!0;return!1}async function OS(e,t){let n=ES(e).filter(e=>!wS.has(e.nodes));if(n.length!==0){await t.loadMathJax();for(let e of n)if(!wS.has(e.nodes))try{let n=await t.mathMLToSvg(Bf(e.nodes,e.display)),r=await $f(n,`#000000`);wS.set(e.nodes,{raster:r,widthEm:n.widthEm,ascentEm:n.ascentEm,descentEm:n.descentEm,tinted:new Map})}catch{}}}function kS(e,t,n,r,i){if(n<=0||r<=0||t.paragraphs.length===0)return;let a=t.lIns/sn*i,o=t.rIns/sn*i,s=t.tIns/sn*i,c=t.bIns/sn*i,l=Math.max(0,n-a-o),u=Math.max(0,r-s-c);if(l<=0||u<=0)return;let d=e=>{let t=(e.size>0?e.size:11)*cn*i,n=ex(e.fontFace);return{font:`${e.italic?`italic `:``}${e.bold?`bold `:``}${t}px ${n}`,px:t}},f=(t,n)=>{let r=e.font;e.font=t;let i=e.measureText(`M`).actualBoundingBoxAscent;return e.font=r,i>0?i:n*.85},p=t.wrap!==`none`,m=[];for(let n of t.paragraphs){let r=n.align||`l`,a=(n.marL??0)/sn*i,o=(n.marR??0)/sn*i,s=(n.indent??0)/sn*i,c=Math.max(0,s),u=Math.max(0,l-a-o),h=!1,g=()=>h?a:a+c,_=()=>h?u:u-c,v=[],y=0,b=0,x=0,S=!1,C=n.spaceLine?.type===`pct`,w=e=>{let r=e;return n.spaceLine&&(n.spaceLine.type===`pct`?r*=n.spaceLine.val/1e5:r=n.spaceLine.val*cn*i),t.autoFit===`norm`&&t.lnSpcReduction!=null&&n.spaceLine?.type!==`pts`&&(r*=1-t.lnSpcReduction),r},T=()=>{if(b===0){let e=(E||11)*cn*i,t=Math.max(Jv(D,e),Jv(O,e)),n=e*1.2;b=C?n:Math.max(n,t),x=f(`${e}px ${ex(D)}`,e)}b=w(b),m.push({segs:v,align:r,height:b,ascent:x,hasMath:S,leftInset:g(),availW:_()}),h=!0,v=[],y=0,b=0,x=0,S=!1},E=0,D,O;for(let t of n.runs){if(t.type===`break`){T();continue}if(t.type===`math`){let e=wS.get(t.nodes);if(!e)continue;let n=(t.fontSize??(E||11))*cn*i,o=e.widthEm*n,s=e.ascentEm*n,c=e.descentEm*n,l=t.color??`#000000`;if(t.display){T(),m.push({segs:[{kind:`math`,render:e,color:l,w:o,ascent:s,descent:c}],align:r,height:w(s+c),ascent:s,hasMath:!0,leftInset:a,availW:u}),h=!0;continue}p&&y+o>_()&&v.length>0&&T(),v.push({kind:`math`,render:e,color:l,w:o,ascent:s,descent:c}),y+=o,b=Math.max(b,s+c),x=Math.max(x,s),S=!0;continue}E=t.size>0?t.size:11,D=t.fontFace,O=t.fontFaceEa;let{font:n,px:o}=d(t),s=t.color??`#000000`,c=Math.max(Jv(t.fontFace,o),Jv(t.fontFaceEa,o)),l=o*1.2,g=C?l:Math.max(l,c);b=Math.max(b,g),x=Math.max(x,f(n,o)),e.font=n;let k=t.text.split(`
23
+ `))return!1;let S=o.get(p),C=S?.isHeader?S.headerRowDxf:S?.isTotals?S.totalRowDxf:S?.isLastCol&&S.lastColumnDxf!=null?S.lastColumnDxf:S?.isFirstCol&&S.firstColumnDxf!=null?S.firstColumnDxf:S?.stripeDxf??S?.wholeTableDxf,w=C==null?void 0:n.dxfs?.[C],T=!!S&&!S.isCustom&&(S.isHeader||S.isTotals),E=v.bold||!!b.fontBold||T||!!w?.font?.bold,D=v.italic||!!b.fontItalic;e.font=vx(E!==v.bold||D!==v.italic?{...v,bold:E,italic:D}:v,m);let O=y.alignH??`left`,k=y.indent?Math.round(y.indent*3*h):0,A=c.sizeOf(u),j=l.sizeOf(i),M=b.iconSet?Math.max(8,Math.round(Math.min(A,j)*.55)):0,N=M>0?M+4:0,P=3+(O===`left`||!y.alignH?k:0)+N,F=e.measureText(x).width+P+3,I=Math.max(0,F-A);return I<=0?!1:(O===`center`||O===`centerContinuous`?I/2:((g?d===`higher`?`left`:`right`:d===`higher`?`right`:`left`)==`left`?O===`right`:O!==`right`)?I:0)>f};for(let e of u){let n=i.get(e);if(!n)continue;let a=dS(n,d),o=r.get(`${e}:${d}`);a!=null&&a>=p&&(!o||o.value.type===`empty`)&&!pS(t,e,a+1,d)&&b(e,a,`higher`,c.offsetOf(d)-c.offsetOf(a+1))&&(_=Math.min(_,a),y.add(`${e}:${a}`));let s=fS(n,f),l=r.get(`${e}:${f}`);s!=null&&s<=16384&&(!l||l.value.type===`empty`)&&!pS(t,e,f,s-1)&&b(e,s,`lower`,c.offsetOf(s)-c.offsetOf(f+1))&&(v=Math.max(v,s),y.add(`${e}:${s}`))}return{startCol:_,endCol:v,anchorKeys:y}}function hS(e,t){eS.set(t,nS(e))}function gS(e,t,n,r,i={}){let a=i.dpr??1,o=i.cellScale??1,s=t.isChartSheet===!0,c=ox(t),l=c.maximumDigitWidth,u=e.canvas.width/a,d=e.canvas.height/a;e.clearRect(0,0,u,d),e.fillStyle=`#ffffff`,e.fillRect(0,0,u,d);let f=e=>Math.round(e*o),p=s?0:f(50),m=s?0:f(22),{row:h,col:g,rows:_,cols:v}=r,y=(i.scrollOffsetX??0)*o,b=(i.scrollOffsetY??0)*o,{col:x,row:S}=c.axesAtScale(o),C=x.bandsToCover(1,s?0:i.freezeCols??0,Math.max(0,u-p)),w=S.bandsToCover(1,s?0:i.freezeRows??0,Math.max(0,d-m)),T=w.at(-1)?.index??0,E=C.at(-1)?.index??0,D=C.map(({index:e})=>e),O=w.map(({index:e})=>e),k=C.map(({size:e})=>e),A=w.map(({size:e})=>e),j=k.reduce((e,t)=>e+t,0),M=A.reduce((e,t)=>e+t,0),N=x.bandsToCover(g,Math.min(16384,g+v-1)),P=S.bandsToCover(h,Math.min(1048576,h+_-1)),F=N.map(({index:e})=>e),I=P.map(({index:e})=>e),L=N.map(({size:e})=>e),R=P.map(({size:e})=>e),{cellMap:z,cfContext:ee,mergeSkipSet:te,autoFilterCells:B,hyperlinkMap:V,commentCells:H,tableStyleMap:U,sparklineMap:ne,nonEmptyColsByRow:W}=nS(t),re=new Map,ie=tS(`worksheet-merge-anchor-index`,`index-merge-anchor-coordinates`);for(let e of t.mergeCells??[]){let t=x.offsetOf(e.right+1)-x.offsetOf(e.left),n=S.offsetOf(e.bottom+1)-S.offsetOf(e.top);gb(re,`${e.top}:${e.left}`,{totalW:t,totalH:n,right:e.right,bottom:e.bottom},ie)}let ae=F[0]??g,oe=F.at(-1)??Math.min(16384,g+v-1),se=mS(e,t,n,z,W,ee,U,re,x,S,[...new Set([...O,...I])],ae,oe,E+1,o,l,t.rightToLeft===!0),ce=x.bandsToCover(se.startCol,se.endCol),le=ce.map(({index:e})=>e),ue=ce.map(({size:e})=>e),de=y+x.offsetOf(ae)-x.offsetOf(se.startCol),G={worksheet:t,styles:n,cellMap:z,mergeAnchorMap:re,mergeSkipSet:te,cfContext:ee,colWidths:ue,rowHeights:R,colAxis:x,rowAxis:S,frozenColWidths:k,frozenRowHeights:A,frozenW:j,frozenH:M,startRow:h,startCol:g,cs:o,dpr:a,autoFilterCells:B,hyperlinkMap:V,commentCells:H,tableStyleMap:U,sparklineMap:ne,overflowTextAnchors:se.anchorKeys,mdw:l,onTextRun:i.onTextRun,rtl:t.rightToLeft===!0,canvasW:u,threeD:i.threeD},K=p,fe=m,q=K+j,J=fe+M,pe=Math.max(0,u-q),me=Math.max(0,d-J);T>0&&E>0&&$x(e,G,1,1,k,A,D,O,0,0,K,fe,K,fe,j,M),T>0&&$x(e,G,1,se.startCol,ue,A,le,O,de,0,q,fe,q,fe,pe,M),E>0&&$x(e,G,h,1,k,R,D,I,0,b,K,J,K,J,j,me),s||$x(e,G,h,se.startCol,ue,R,le,I,de,b,q,J,q,J,pe,me),vS(e,t,x,S,i.loadedImages,o,h,g,y,b,q,J,pe,me,t.rightToLeft===!0,u,i.threeD,i.regionMap,i.chartEx),!s&&t.slicers&&t.slicers.length>0&&US(e,t,x,S,o,h,g,y,b,q,J,pe,me,t.rightToLeft===!0,u),s||_S(e,u,d,h,g,_,v,L,R,F,I,y,b,k,A,D,O,j,M,p,m,o,a,i.selectedRowRange??null,i.selectedColRange??null,t.rightToLeft===!0,i.chromeColors);let Y=t.rightToLeft===!0;if(T>0){e.save(),e.strokeStyle=rx,e.lineWidth=.5,e.beginPath();let t=J+rp(J,.5,a);e.moveTo(0,t),e.lineTo(u,t),e.stroke(),e.restore()}if(E>0){e.save(),e.strokeStyle=rx,e.lineWidth=.5,e.beginPath();let t=Y?u-q:q,n=t+rp(t,.5,a);e.moveTo(n,m),e.lineTo(n,d),e.stroke(),e.restore()}}function _S(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E){let D=E?.surface??`#f8f9fa`,O=E?.mutedSurface??`#e8eaed`,k=E?.selectedSurface??`#caddf6`,A=E?.border??`#c8ccd0`,j=E?.accent??`#5b9bd5`,M=E?.text??`#444`,N=e=>!w||e<w.start||e>w.end?D:w.strong?k:O,P=e=>!w||e<w.start||e>w.end?A:w.strong?j:A,F=e=>!C||e<C.start||e>C.end?D:C.strong?k:O,I=e=>!C||e<C.start||e>C.end?A:C.strong?j:A,L=`${Math.max(1,Math.round(11*x))}px ${Zb}`,R=y+_,z=b+v,ee=.5/S,te=(e,n)=>T?tx(e,n,t):e,B=T?t-y:0;e.fillStyle=D,e.fillRect(B,0,y,b),e.strokeStyle=A,e.lineWidth=.5,e.beginPath();let V=T?B+rp(B,.5,S):B+y-ee;e.moveTo(V,0),e.lineTo(V,b),e.moveTo(B,b-ee),e.lineTo(B+y,b-ee),e.stroke(),e.font=L,e.fillStyle=M;let H=(t,n,r)=>{let i=te(n,r);e.fillStyle=N(t),e.fillRect(i,0,r,b),e.strokeStyle=P(t),e.lineWidth=.5,e.beginPath();let a=i+rp(i,.5,S);e.moveTo(a,0),e.lineTo(a,b),e.moveTo(i,b-ee),e.lineTo(i+r,b-ee),e.stroke(),e.fillStyle=M,e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(Ux(t),i+r/2,b/2)},U=(t,n,r)=>{let i=B;e.fillStyle=F(t),e.fillRect(i,n,y,r),e.strokeStyle=I(t),e.lineWidth=.5,e.beginPath();let a=n+rp(n,.5,S),o=T?i+rp(i,.5,S):i+y-ee;e.moveTo(o,n),e.lineTo(o,n+r),e.moveTo(i,a),e.lineTo(i+y,a),e.stroke(),e.fillStyle=M,e.textBaseline=`middle`;let s=Math.max(2,Math.round(4*x));T?(e.textAlign=`left`,e.fillText(String(t),i+s,n+r/2)):(e.textAlign=`right`,e.fillText(String(t),i+y-s,n+r/2))};if(p.length>0){e.save(),e.beginPath(),e.rect(te(y,_),0,_,b),e.clip();let t=y;for(let e=0;e<p.length;e++)H(h[e],t,p[e]),t+=p[e];e.restore()}e.save(),e.beginPath(),e.rect(te(R,t-R),0,t-R,b),e.clip();let ne=R-d;for(let e=0;e<s.length;e++){let n=s[e];ne+n>R&&ne<t&&H(l[e],ne,n),ne+=n}if(e.restore(),m.length>0){e.save(),e.beginPath(),e.rect(B,b,y,v),e.clip();let t=b;for(let e=0;e<m.length;e++)U(g[e],t,m[e]),t+=m[e];e.restore()}e.save(),e.beginPath(),e.rect(B,z,y,n-z),e.clip();let W=z-f;for(let e=0;e<c.length;e++){let t=c[e];W+t>z&&W<n&&U(u[e],W,t),W+=t}e.restore()}function vS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v){let y=[],b=0;if(i)for(let e of t.images??[])y.push({kind:`image`,zOrder:e.zOrder??2**53-1,fallbackOrder:b++,anchor:e});for(let e of t.shapeGroups??[])for(let t of e.shapes)y.push({kind:`shape`,zOrder:t.zOrder??2**53-1,fallbackOrder:b++,anchor:e,shape:t});for(let e of t.charts??[])y.push({kind:`chart`,zOrder:e.zOrder??2**53-1,fallbackOrder:b++,anchor:e});y.sort((e,t)=>e.zOrder-t.zOrder||e.fallbackOrder-t.fallbackOrder);for(let b of y)b.kind===`image`?xS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,[b.anchor]):b.kind===`shape`?SS(e,t,n,r,a,o,s,c,l,u,d,f,p,i,m,h,[{...b.anchor,shapes:[b.shape]}]):VS(e,t,n,r,a,o,s,c,l,u,d,f,p,m,h,i,[b.anchor],g,_,v)}function yS(e,t){return e.offsetOf(t)}function bS(e,t){return e.offsetOf(t)}function xS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g=t.images){if(f<=0||p<=0)return;let _=yS(n,s),v=bS(r,o);e.save(),e.beginPath();let y=nx(u,f,h,m);e.rect(y,d,f,p),e.clip();for(let t of g){let o=i.get(Jb(t.imagePath,t.duotone));if(!o)continue;let s=t.fromCol+1,g=t.fromRow+1,b=yS(n,s)+t.fromColOff*a/sn,x=bS(r,g)+t.fromRowOff*a/sn,S,C;if(qb(t))S=t.nativeExtCx*a/sn,C=t.nativeExtCy*a/sn;else{let e=t.toCol+1,i=t.toRow+1,o=yS(n,e)+t.toColOff*a/sn,s=bS(r,i)+t.toRowOff*a/sn;S=o-b,C=s-x}if(S<=0||C<=0)continue;let w=nx(u+(b-_)-c,S,h,m),T=d+(x-v)-l;w+S<y||w>y+f||T+C<d||T>d+p||(t.alpha!=null&&t.alpha<1?(e.save(),e.globalAlpha=t.alpha,nn(e,o,t.srcRect,w,T,S,C),e.restore()):nn(e,o,t.srcRect,w,T,S,C))}e.restore()}function SS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g=t.shapeGroups??[]){if(d<=0||f<=0||g.length===0)return;let _=yS(n,o),v=bS(r,a);e.save(),e.beginPath();let y=nx(l,d,h,m);e.rect(y,u,d,f),e.clip();for(let t of g){let a=t.fromCol+1,o=t.fromRow+1,g=yS(n,a)+t.fromColOff*i/sn,b=bS(r,o)+t.fromRowOff*i/sn,x,S;if(qb(t))x=t.nativeExtCx*i/sn,S=t.nativeExtCy*i/sn;else{let e=t.toCol+1,a=t.toRow+1,o=yS(n,e)+t.toColOff*i/sn,s=bS(r,a)+t.toRowOff*i/sn;x=o-g,S=s-b}if(x<=0||S<=0)continue;let C=nx(l+(g-_)-s,x,h,m),w=u+(b-v)-c;if(!(C+x<y||C>y+d)&&!(w+S<u||w>u+f))for(let n of t.shapes){let t=C+n.x*x,r=w+n.y*S,a=n.w*x,o=n.h*S;a<=0||o<=0||CS(e,n,t,r,a,o,i,p)}}e.restore()}function CS(e,t,n,r,i,a,o,s){if(e.save(),t.rot!==0||t.flipH||t.flipV?(e.translate(n+i/2,r+a/2),e.rotate(t.rot*Math.PI/180),e.scale(t.flipH?-1:1,t.flipV?-1:1),e.translate(-i/2,-a/2)):e.translate(n,r),t.geom.type===`custom`)for(let n of t.geom.paths){if(n.w<=0||n.h<=0)continue;let r=i/n.w,o=a/n.h;e.beginPath();let s=0,c=0,l=0,u=0;for(let t of n.commands)switch(t.op){case`moveTo`:{let n=t.x*r,i=t.y*o;e.moveTo(n,i),s=l=n,c=u=i;break}case`lineTo`:{let n=t.x*r,i=t.y*o;e.lineTo(n,i),s=n,c=i;break}case`cubicBezTo`:{let n=t.x3*r,i=t.y3*o;e.bezierCurveTo(t.x1*r,t.y1*o,t.x2*r,t.y2*o,n,i),s=n,c=i;break}case`quadBezTo`:{let n=t.x2*r,i=t.y2*o;e.quadraticCurveTo(t.x1*r,t.y1*o,n,i),s=n,c=i;break}case`arcTo`:{let n=t.wr*r,i=t.hr*o;if(n<=0||i<=0)break;let a=t.stAng/6e4*(Math.PI/180),l=t.swAng/6e4*(Math.PI/180),u=s-Math.cos(a)*n,d=c-Math.sin(a)*i,f=a+l;e.ellipse(u,d,n,i,0,a,f,l<0),s=u+Math.cos(f)*n,c=d+Math.sin(f)*i;break}case`close`:e.closePath(),s=l,c=u;break}AS(e,t,i,a)}else if(t.geom.type===`preset`){let n=Xi(t.fill??(t.fillColor?{fillType:`solid`,color:t.fillColor}:null),e,0,0,i,a,t.rot),r=t.strokeColor&&t.strokeWidth>0?()=>MS(e,t,i,a):null;Rd(e,t.geom.name,0,0,i,a,t.geom.adj??[],n,r,()=>{})||(e.beginPath(),e.rect(0,0,i,a),AS(e,t,i,a))}else if(t.geom.type===`image`){let n=s?.get(Jb(t.geom.imagePath,t.geom.duotone));if(n){let r=t.geom.alpha;r!=null&&r<1?(e.save(),e.globalAlpha=r,nn(e,n,t.geom.srcRect,0,0,i,a),e.restore()):nn(e,n,t.geom.srcRect,0,0,i,a)}}t.text&&kS(e,t.text,i,a,o),e.restore()}const wS=new WeakMap;function TS(e,t){let n=e.tinted.get(t);if(n)return n;let r=ep(e.raster,t);return e.tinted.set(t,r),r}function ES(e){let t=[];for(let n of e.shapeGroups??[])for(let e of n.shapes)for(let n of e.text?.paragraphs??[])for(let e of n.runs)e.type===`math`&&t.push({nodes:e.nodes,display:e.display});return t}function DS(e){for(let t of e.shapeGroups??[])for(let e of t.shapes)for(let t of e.text?.paragraphs??[])for(let e of t.runs)if(e.type===`math`&&!wS.has(e.nodes))return!0;return!1}async function OS(e,t){let n=ES(e).filter(e=>!wS.has(e.nodes));if(n.length!==0){await t.loadMathJax();for(let e of n)if(!wS.has(e.nodes))try{let n=await t.mathMLToSvg(Bf(e.nodes,e.display)),r=await $f(n,`#000000`);wS.set(e.nodes,{raster:r,widthEm:n.widthEm,ascentEm:n.ascentEm,descentEm:n.descentEm,tinted:new Map})}catch{}}}function kS(e,t,n,r,i){if(n<=0||r<=0||t.paragraphs.length===0)return;let a=t.lIns/sn*i,o=t.rIns/sn*i,s=t.tIns/sn*i,c=t.bIns/sn*i,l=Math.max(0,n-a-o),u=Math.max(0,r-s-c);if(l<=0||u<=0)return;let d=e=>{let t=(e.size>0?e.size:11)*cn*i,n=ex(e.fontFace);return{font:`${e.italic?`italic `:``}${e.bold?`bold `:``}${t}px ${n}`,px:t}},f=(t,n)=>{let r=e.font;e.font=t;let i=e.measureText(`M`).actualBoundingBoxAscent;return e.font=r,i>0?i:n*.85},p=t.wrap!==`none`,m=[];for(let n of t.paragraphs){let r=n.align||`l`,a=(n.marL??0)/sn*i,o=(n.marR??0)/sn*i,s=(n.indent??0)/sn*i,c=Math.max(0,s),u=Math.max(0,l-a-o),h=!1,g=()=>h?a:a+c,_=()=>h?u:u-c,v=[],y=0,b=0,x=0,S=!1,C=n.spaceLine?.type===`pct`,w=e=>{let r=e;return n.spaceLine&&(n.spaceLine.type===`pct`?r*=n.spaceLine.val/1e5:r=n.spaceLine.val*cn*i),t.autoFit===`norm`&&t.lnSpcReduction!=null&&n.spaceLine?.type!==`pts`&&(r*=1-t.lnSpcReduction),r},T=()=>{if(b===0){let e=(E||11)*cn*i,t=Math.max(Jv(D,e),Jv(O,e)),n=e*1.2;b=C?n:Math.max(n,t),x=f(`${e}px ${ex(D)}`,e)}b=w(b),m.push({segs:v,align:r,height:b,ascent:x,hasMath:S,leftInset:g(),availW:_()}),h=!0,v=[],y=0,b=0,x=0,S=!1},E=0,D,O;for(let t of n.runs){if(t.type===`break`){T();continue}if(t.type===`math`){let e=wS.get(t.nodes);if(!e)continue;let n=(t.fontSize??(E||11))*cn*i,o=e.widthEm*n,s=e.ascentEm*n,c=e.descentEm*n,l=t.color??`#000000`;if(t.display){T(),m.push({segs:[{kind:`math`,render:e,color:l,w:o,ascent:s,descent:c}],align:r,height:w(s+c),ascent:s,hasMath:!0,leftInset:a,availW:u}),h=!0;continue}p&&y+o>_()&&v.length>0&&T(),v.push({kind:`math`,render:e,color:l,w:o,ascent:s,descent:c}),y+=o,b=Math.max(b,s+c),x=Math.max(x,s),S=!0;continue}E=t.size>0?t.size:11,D=t.fontFace,O=t.fontFaceEa;let{font:n,px:o}=d(t),s=t.color??`#000000`,c=Math.max(Jv(t.fontFace,o),Jv(t.fontFaceEa,o)),l=o*1.2,g=C?l:Math.max(l,c);b=Math.max(b,g),x=Math.max(x,f(n,o)),e.font=n;let k=t.text.split(`
24
24
  `);for(let t=0;t<k.length;t++){t>0&&T();let r=k[t];if(!r)continue;if(!p){let t=e.measureText(r).width;v.push({kind:`text`,text:r,font:n,color:s,w:t}),y+=t;continue}let i=``;for(let t of r){let r=i+t,a=e.measureText(r).width;if(y+a>_()&&(i.length>0||v.length>0)){if(i){let t=e.measureText(i).width;v.push({kind:`text`,text:i,font:n,color:s,w:t}),y+=t}T(),i=t,e.font=n,b=Math.max(b,g),x=Math.max(x,f(n,o))}else i=r}if(i){let t=e.measureText(i).width;v.push({kind:`text`,text:i,font:n,color:s,w:t}),y+=t}}}T()}let h=m.reduce((e,t)=>e+t.height,0),g=s;t.anchor===`ctr`?g=s+(u-h)/2:t.anchor===`b`&&(g=s+Math.max(0,u-h));let _=g;for(let t of m){let n=t.segs.reduce((e,t)=>e+t.w,0),r=a+t.leftInset,i=r;if(t.align===`ctr`?i=r+Math.max(0,(t.availW-n)/2):t.align===`r`&&(i=r+Math.max(0,t.availW-n)),t.hasMath){e.textBaseline=`alphabetic`;let n=_+t.ascent;for(let r of t.segs){if(r.kind===`text`)e.font=r.font,e.fillStyle=r.color,e.fillText(r.text,i,n);else{let t=TS(r.render,r.color);e.drawImage(t,i,n-r.ascent,r.w,r.ascent+r.descent)}i+=r.w}}else{e.textBaseline=`middle`;let n=_+t.height/2;for(let r of t.segs)r.kind===`text`&&(e.font=r.font,e.fillStyle=r.color,e.fillText(r.text,i,n)),i+=r.w}_+=t.height}}function AS(e,t,n,r){let i=Xi(t.fill??(t.fillColor?{fillType:`solid`,color:t.fillColor}:null),e,0,0,n,r,t.rot);i&&(e.fillStyle=i,e.fill()),MS(e,t,n,r)}function jS(e){return!e.strokeColor||e.strokeWidth<=0?null:{color:e.strokeColor,width:e.strokeWidth,...e.strokeFill?{fill:e.strokeFill}:{},...e.strokeDashStyle?{dashStyle:e.strokeDashStyle}:{},...e.strokeCustomDash?.length?{customDash:e.strokeCustomDash}:{},...e.strokeLineCap?{lineCap:e.strokeLineCap}:{},...e.strokeLineJoin?{lineJoin:e.strokeLineJoin}:{},...e.strokeMiterLimit===void 0?{}:{miterLimit:e.strokeMiterLimit},...e.strokeAlignment?{alignment:e.strokeAlignment}:{},...e.strokeCmpd?{cmpd:e.strokeCmpd}:{},...e.strokeHeadEnd?{headEnd:e.strokeHeadEnd}:{},...e.strokeTailEnd?{tailEnd:e.strokeTailEnd}:{}}}function MS(e,t,n,r){let i=jS(t);if(i){if(Qi(e,i,1/sn),i.fill){let a=Xi(i.fill,e,0,0,n,r,t.rot);a&&(e.strokeStyle=a)}e.stroke()}}function NS(e,t,n,r,i,a,o){if(r===n&&i===t)return e;let s=(e,r)=>{if(e===t&&r===n)return null;let i=a.get(`${e}:${r}`);return i?Cx(o,i.styleIndex??0).border:null},c=s(t,r),l=s(i,n),u=s(i,r),d=(e,...t)=>{if(e?.style)return e;for(let e of t)if(e?.style)return e;return e??null};return{left:e.left,top:e.top,right:d(c?.right,u?.right,e.right),bottom:d(l?.bottom,u?.bottom,e.bottom),diagonalUp:e.diagonalUp??null,diagonalDown:e.diagonalDown??null}}function PS(e,t){if(!t)return e;let n=(e,t)=>t&&t.style?t:e??null;return{left:n(e.left,t.left),right:n(e.right,t.right),top:n(e.top,t.top),bottom:n(e.bottom,t.bottom),diagonalUp:n(e.diagonalUp,t.diagonalUp),diagonalDown:n(e.diagonalDown,t.diagonalDown)}}function FS(e,t,n,r,i=1){return{outerStart:n?e-i:e,outerEnd:r?t+i:t,innerStart:n?e+i:e,innerEnd:r?t-i:t}}function IS(e,t,n,r,i,a,o=1){let s=[{edge:t.top,x1:n,y1:r,x2:n+i,y2:r,kind:`h`},{edge:t.bottom,x1:n,y1:r+a,x2:n+i,y2:r+a,kind:`h`},{edge:t.left,x1:n,y1:r,x2:n,y2:r+a,kind:`v`},{edge:t.right,x1:n+i,y1:r,x2:n+i,y2:r+a,kind:`v`},{edge:t.diagonalUp,x1:n,y1:r+a,x2:n+i,y2:r,kind:`d`},{edge:t.diagonalDown,x1:n,y1:r,x2:n+i,y2:r+a,kind:`d`}];for(let{edge:c,x1:l,y1:u,x2:d,y2:f,kind:p}of s){if(!c||!c.style||c.style===`none`)continue;let s=c.color?Yi(c.color):`#000000`;if(c.style===`double`&&p===`d`){e.strokeStyle=s,e.lineWidth=1,e.setLineDash([]);let t=d-l,n=f-u,r=Math.hypot(t,n),i=-n/r*1,a=t/r*1;e.beginPath(),e.moveTo(l+i,u+a),e.lineTo(d+i,f+a),e.moveTo(l-i,u-a),e.lineTo(d-i,f-a),e.stroke();continue}if(c.style===`double`&&p!==`d`){if(e.strokeStyle=s,e.lineWidth=1,e.setLineDash([]),e.beginPath(),p===`h`){let o=u===r,s=o?r-1:r+a+1,c=o?r+1:r+a-1,l=FS(n,n+i,!!t.left?.style&&t.left.style!==`none`,!!t.right?.style&&t.right.style!==`none`,1);e.moveTo(l.outerStart,s),e.lineTo(l.outerEnd,s),e.moveTo(l.innerStart,c),e.lineTo(l.innerEnd,c)}else{let o=l===n,s=o?n-1:n+i+1,c=o?n+1:n+i-1,u=FS(r,r+a,!!t.top?.style&&t.top.style!==`none`,!!t.bottom?.style&&t.bottom.style!==`none`,1);e.moveTo(s,u.outerStart),e.lineTo(s,u.outerEnd),e.moveTo(c,u.innerStart),e.lineTo(c,u.innerEnd)}e.stroke();continue}e.beginPath(),e.strokeStyle=s;let m=LS(c.style);e.lineWidth=m;let h=RS(c.style);e.setLineDash(h);let g=p===`v`?rp(l,m,o):0,_=p===`h`?rp(u,m,o):0;e.moveTo(l+g,u+_),e.lineTo(d+g,f+_),e.stroke(),e.setLineDash([])}}function LS(e){switch(e){case`thick`:return 3;case`medium`:case`mediumDashed`:case`mediumDashDot`:case`mediumDashDotDot`:case`slantDashDot`:return 2;case`hair`:return .5;default:return 1}}function RS(e){return Bi(e)}function zS(e){switch(e){case`double`:return 13;case`thick`:return 12;case`medium`:return 11;case`mediumDashed`:return 10;case`mediumDashDot`:return 9;case`slantDashDot`:return 8;case`mediumDashDotDot`:return 7;case`thin`:return 6;case`dashed`:return 5;case`dashDot`:return 4;case`dashDotDot`:return 3;case`dotted`:return 2;case`hair`:return 1;default:return 0}}function BS(e,t){let n=zS(e?.style),r=zS(t?.style);return n===0&&r===0?null:n>=r?e??null:t??null}function VS(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g=t.charts,_,v,y){if(d<=0||f<=0)return;let b=yS(n,o),x=bS(r,a),S=nx(l,d,m,p);for(let t of g){let a=t.fromCol+1,o=t.fromRow+1,g=t.toCol+1,C=t.toRow+1,w=yS(n,a)+t.fromColOff*i/sn,T=bS(r,o)+t.fromRowOff*i/sn,E=yS(n,g)+t.toColOff*i/sn,D=bS(r,C)+t.toRowOff*i/sn,O=E-w,k=D-T;if(O<=0||k<=0)continue;let A=nx(l+(w-b)-s,O,m,p),j=u+(T-x)-c;A+O<S||A>S+d||j+k<u||j>u+f||(e.save(),e.beginPath(),e.rect(S,u,d,f),e.clip(),e.save(),i!==1&&e.scale(i,i),Zu(e,t.chart,i===1?{x:A,y:j,w:O,h:k}:{x:A/i,y:j/i,w:O/i,h:k/i},cn,0,_,v,e=>h?.get(mi(e)),y),e.restore(),e.restore())}}const HS=`11px "Meiryo UI", "Segoe UI", sans-serif`;function US(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m){if(d<=0||f<=0)return;let h=t.slicers;if(!h)return;let g=yS(n,o),_=bS(r,a),v=nx(l,d,m,p);for(let t of h){let a=t.fromCol+1,o=t.fromRow+1,h=t.toCol+1,y=t.toRow+1,b=yS(n,a)+t.fromColOff*i/sn,x=bS(r,o)+t.fromRowOff*i/sn,S=yS(n,h)+t.toColOff*i/sn,C=bS(r,y)+t.toRowOff*i/sn,w=S-b,T=C-x;if(w<=0||T<=0)continue;let E=nx(l+(b-g)-s,w,m,p),D=u+(x-_)-c;E+w<v||E>v+d||D+T<u||D>u+f||(e.save(),e.beginPath(),e.rect(v,u,d,f),e.clip(),WS(e,t.caption,t.items,E,D,w,T,i,t.style),e.restore())}}function WS(e,t,n,r,i,a,o,s,c){let l=c!=null;e.fillStyle=c?.whole?.fillColor??`#FFFFFF`,e.fillRect(r,i,a,o);let u=l?c.whole?.borderColor:`#BFBFBF`;u&&(e.strokeStyle=u,e.lineWidth=1,e.strokeRect(r+.5,i+.5,a-1,o-1));let d=Math.max(20*s,14),f=l?c.header?.fillColor:`#F2F2F2`;f&&(e.fillStyle=f,e.fillRect(r+1,i+1,a-2,d)),e.fillStyle=c?.header?.fontColor??`#404040`,e.font=KS(c?.header,`600 12px "Meiryo UI", "Segoe UI", sans-serif`,s),e.textBaseline=`middle`,e.textAlign=`left`;let p=6*s;if(JS(e,t,r+p,i+d/2+1,a-2*p),n.length===0)return;let m=Math.max(1,Math.round(2*s)),h=4*s,g=r+h,_=i+d+h,v=a-2*h,y=o-d-2*h;if(v<=0||y<=0)return;let b=Math.max(18*s,16),x=Math.max(1,Math.floor((y+m)/(b+m))),S=Math.min(n.length,x),C=Math.min(b,(y-m*(S-1))/S);if(C<=0)return;e.font=qS(HS,s);let w=8*s;for(let t=0;t<S;t++){let r=n[t],i=_+t*(C+m),a=r.selected,o=a?c?.selectedItemWithData:c?.unselectedItemWithData,u=o?.fillColor??(a?`#FFFFFF`:`#E7E6E6`),d=l?o?.borderColor:a?`#A5A5A5`:`#C6C6C6`;e.fillStyle=u,l?(GS(e,g,i,v,C,Math.min(4*s,C/4)),e.fill(),d&&(e.strokeStyle=d,e.lineWidth=1,e.stroke())):(e.fillRect(g,i,v,C),d&&(e.strokeStyle=d,e.lineWidth=1,e.strokeRect(g+.5,i+.5,v-1,C-1))),e.font=KS(o,HS,s),e.fillStyle=o?.fontColor??(a?`#000000`:`#A6A6A6`),JS(e,r.name,g+w,i+C/2+1,v-2*w)}}function GS(e,t,n,r,i,a){let o=Math.max(0,Math.min(a,r/2,i/2));e.beginPath(),e.moveTo(t+o,n),e.lineTo(t+r-o,n),e.quadraticCurveTo(t+r,n,t+r,n+o),e.lineTo(t+r,n+i-o),e.quadraticCurveTo(t+r,n+i,t+r-o,n+i),e.lineTo(t+o,n+i),e.quadraticCurveTo(t,n+i,t,n+i-o),e.lineTo(t,n+o),e.quadraticCurveTo(t,n,t+o,n),e.closePath()}function KS(e,t,n){if(!e)return qS(t,n);let r=Math.round((e.fontSize??11)*n);return`${e.fontBold?`bold `:``}${r}px ${e.fontFamily?`"${e.fontFamily}", "Segoe UI", sans-serif`:`"Meiryo UI", "Segoe UI", sans-serif`}`}function qS(e,t){return e.replace(/(\d+(?:\.\d+)?)px/,(e,n)=>`${Math.round(Number(n)*t)}px`)}function JS(e,t,n,r,i){if(i<=0)return;let a=t;if(e.measureText(a).width>i){for(;a.length>0&&e.measureText(a+`…`).width>i;)a=a.slice(0,-1);a=a.length>0?a+`…`:``}e.fillText(a,n,r)}const YS=Symbol(`xlsx-render-commit-guard`);function XS(e,t,n,r,i){if(!n)return!0;let a=r??ox(t),o=i?.scale??1,{col:s,row:c}=a.axesAtScale(o),l=(e,t,n)=>e.offsetOf(t+1)+n*o/sn,u=l(s,e.fromCol,e.fromColOff),d=l(c,e.fromRow,e.fromRowOff),f=qb(e),p=f?u+e.nativeExtCx*o/sn:l(s,e.toCol,e.toColOff),m=f?d+e.nativeExtCy*o/sn:l(c,e.toRow,e.toRowOff);if(p<=u||m<=d)return!1;let h=i?a.effectiveFrozenBands({scale:o,width:i.width,height:i.height,headerWidth:50,headerHeight:22,rows:i.freezeRows,cols:i.freezeCols}):{rows:t.freezeRows??0,cols:t.freezeCols??0},g=(e,t,n,r,i)=>{let a=Math.min(e,t),o=Math.max(e,t);return a<n&&o>0||a<i&&o>r};return g(u,p,s.offsetOf(h.cols+1),s.offsetOf(n.col),s.offsetOf(n.col+n.cols))&&g(d,m,c.offsetOf(h.rows+1),c.offsetOf(n.row),c.offsetOf(n.row+n.rows))}async function ZS(e,t,n,r,i=0,a=0,o=null,s=null,c,l=!1){let u=t===`image/svg+xml`;if(u&&s)return null;let d=rn(t,o,i,a);if(!d)return null;let f=()=>hf(e,t,s,r,{widthPt:d.widthPt,heightPt:d.heightPt,offscreenFactory:c,failClosedOnDuotoneFailure:l}),p={svgImagePath:n,srcRect:o};if(!s&&gf(p))try{return await sf(p.svgImagePath,r)}catch{return u?sf(e,r):f()}return u?sf(e,r):f()}async function QS(e,t,n,r){if(t.clear(),!n)return;let i=n,a=new Map,o=r?.viewport?ox(e):void 0,s=r?.viewport&&r.width!==void 0&&r.height!==void 0?{width:r.width,height:r.height,scale:r.cellScale??1,freezeRows:r.freezeRows??e.freezeRows??0,freezeCols:r.freezeCols??e.freezeCols??0}:void 0;if(e.images)for(let t of e.images)XS(t,e,r?.viewport,o,s)&&a.set(Jb(t.imagePath,t.duotone),{imagePath:t.imagePath,mimeType:t.mimeType,svgImagePath:t.svgImagePath,widthPt:t.nativeExtCx>0?t.nativeExtCx/on:0,heightPt:t.nativeExtCy>0?t.nativeExtCy/on:0,srcRect:t.srcRect??null,duotone:t.duotone??null});if(e.shapeGroups){for(let t of e.shapeGroups)if(XS(t,e,r?.viewport,o,s))for(let e of t.shapes)e.geom.type===`image`&&a.set(Jb(e.geom.imagePath,e.geom.duotone),{imagePath:e.geom.imagePath,mimeType:e.geom.mimeType,svgImagePath:e.geom.svgImagePath,widthPt:t.nativeExtCx>0?t.nativeExtCx*e.w/on:0,heightPt:t.nativeExtCy>0?t.nativeExtCy*e.h/on:0,srcRect:e.geom.srcRect??null,duotone:e.geom.duotone??null})}let c=(e.charts??[]).filter(t=>XS(t,e,r?.viewport,o,s)).map(e=>e.chart);for(let e of wi(c))a.set(mi(e),{imagePath:e.imagePath,mimeType:e.mimeType,svgImagePath:e.svgImagePath,widthPt:72,heightPt:72,srcRect:e.srcRect??null,duotone:e.duotone??null,failClosedOnDuotoneFailure:!0});a.size!==0&&await Promise.all([...a.entries()].map(async([e,n])=>{try{let a=await ZS(n.imagePath,n.mimeType,n.svgImagePath,i,n.widthPt,n.heightPt,n.srcRect,n.duotone,r?.offscreenFactory,n.failClosedOnDuotoneFailure??!1);t.set(e,a)}catch(n){if(ce(n))throw n;t.delete(e)}}))}const $S=new WeakMap;function eC(e,t,n){if(lS(t))return t;let r=$S.get(t);if(r)return r;let i={...t,rowHeights:{...t.rowHeights}};hS(t,i);let a=ox(t).maximumDigitWidth;return Ub.forWorksheet(i,a),cS(e,i,n),Ub.forWorksheet(i,a),$S.set(t,i),i}async function tC(e,t,n,r={}){let i=r.fetchImage?qd(r.fetchImage):void 0;try{await nC(e,t,n,r)}finally{i?.()}}async function nC(e,t,n,r={}){let i=e.styles,a=t.getContext(`2d`);if(!a)throw Error(`XLSX render target does not provide a 2-D canvas context`);let o=eC(a,e.ws,i),s=tp(t)?t.clientWidth||800:t.width,c=tp(t)?t.clientHeight||600:t.height,l=r.width??s,u=r.height??c,d=new Map;if(await QS(o,d,r.fetchImage,{viewport:n,width:l,height:u,cellScale:r.cellScale,freezeRows:r.freezeRows,freezeCols:r.freezeCols}),e.math&&DS(o)&&await OS(o,e.math),r[YS]?.()===!1)return;let f=r.dpr??np(),p=ji(l*f,u*f),m=p.clamped?f*p.scale:f,h=p.width,g=p.height;if(t.width!==h&&(t.width=h),t.height!==g&&(t.height=g),tp(t)){let e=`${l}px`,n=`${u}px`;t.style.width!==e&&(t.style.width=e),t.style.height!==n&&(t.style.height=n)}let _=t.getContext(`2d`);if(_.setTransform(m,0,0,m,0,0),o.parseError){rC(_,l,u,o.name,o.parseError);return}gS(_,o,i,n,{...r,dpr:m,loadedImages:d,threeD:e.threeD,regionMap:e.regionMap,chartEx:e.chartEx})}function rC(e,t,n,r,i){e.save(),e.fillStyle=`#f7f7f8`,e.fillRect(0,0,t,n);let a=t/2,o=Math.min(t,n),s=Math.max(20,o*.1);e.fillStyle=`#b23b3b`,e.textAlign=`center`,e.textBaseline=`middle`,e.font=`${s}px sans-serif`,e.fillText(`⚠`,a,n*.32);let c=Math.max(13,o*.035);e.fillStyle=`#333333`,e.font=`600 ${c}px sans-serif`,e.fillText(`Sheet "${r}" could not be displayed`,a,n*.46);let l=Math.max(10,o*.022);e.fillStyle=`#666666`,e.font=`${l}px sans-serif`;let u=Math.min(t*.8,640),d=i.split(/\s+/),f=[],p=``;for(let t of d){let n=p?`${p} ${t}`:t;if(e.measureText(n).width>u&&p?(f.push(p),p=t):p=n,f.length>=4)break}p&&f.length<4&&f.push(p);let m=l*1.4,h=n*.52+m;for(let t of f.slice(0,4))e.fillText(t,a,h),h+=m;e.restore()}function iC(e,t,n){return{ws:e,styles:t,math:n.math,threeD:n.threeD,regionMap:n.regionMap,chartEx:n.chartEx}}const aC={...z,...ne};function*oC(e){for(let t of e?.sharedStrings??[])if(t.runs&&t.runs.length>0)for(let e of t.runs)yield e.text;else yield t.text}function sC(e){let t=new Set,n=null;for(let r of e?.styles?.fonts??[])r.name&&(t.add(r.name),n??=ee(r.name));for(let r of re(oC(e),n))t.add(r);return t}function cC(e,t){for(let n of e)for(let e of n.cells){let n=e.value;if(n.type===`shared`){let r=t[n.si];if(r){let t={type:`text`,text:r.text};r.runs!==void 0&&(t.runs=r.runs),r.phoneticRuns!==void 0&&(t.phoneticRuns=r.phoneticRuns),r.phoneticPr!==void 0&&(t.phoneticPr=r.phoneticPr),e.value=t}else e.value={type:`text`,text:``}}}return e}function lC(e,t){if(!Number.isSafeInteger(e)||e<0)throw Error(`${t} must be a non-negative safe integer`)}function uC(e,t,n){return lC(e,`resource measurement`),lC(t,`resource measurement`),lC(n,`resource measurement limit`),e>n||t>n||t>n-e?n===2**53-1?n:n+1:e+t}function dC(e,t=2**53-1){lC(t,`resource measurement limit`);let n=0;for(let r=0;r<e.length;r+=1){let i=e.charCodeAt(r),a;if(i<=127)a=1;else if(i<=2047)a=2;else if(i>=55296&&i<=56319&&r+1<e.length){let t=e.charCodeAt(r+1);t>=56320&&t<=57343?(a=4,r+=1):a=3}else a=3;if(n=uC(n,a,t),n>t)return n}return n}function fC(e,t=2**53-1){lC(t,`resource measurement limit`);let n=uC(0,2,t);if(n>t)return n;for(let r=0;r<e.length;r+=1){let i=e.charCodeAt(r),a;if(i===34||i===92||i===8||i===9||i===10||i===12||i===13)a=2;else if(i<=31)a=6;else if(i<=127)a=1;else if(i<=2047)a=2;else if(i>=55296&&i<=56319&&r+1<e.length){let t=e.charCodeAt(r+1);t>=56320&&t<=57343?(a=4,r+=1):a=6}else a=i>=55296&&i<=57343?6:3;if(n=uC(n,a,t),n>t)return n}return n}function pC(e,t){return uC(0,e,t)}function mC(e,t=2**53-1,n=!1){if(lC(t,`resource measurement limit`),e===null)return{jsonBytes:pC(4,t),stringValueUtf8Bytes:0};if(typeof e==`string`)return{jsonBytes:fC(e,t),stringValueUtf8Bytes:dC(e,t)};if(typeof e==`boolean`)return{jsonBytes:pC(e?4:5,t),stringValueUtf8Bytes:0};if(typeof e==`number`)return{jsonBytes:pC((Number.isFinite(e)?String(Object.is(e,-0)?0:e):`null`).length,t),stringValueUtf8Bytes:0};if(typeof e==`bigint`)throw TypeError(`BigInt values cannot be serialized to JSON`);if(Array.isArray(e)){let n=pC(2,t),r=0;for(let i=0;i<e.length;i+=1){i!==0&&(n=uC(n,1,t));let a=mC(e[i],t,!0);n=uC(n,a.jsonBytes,t),r=uC(r,a.stringValueUtf8Bytes,t)}return{jsonBytes:n,stringValueUtf8Bytes:r}}if(typeof e==`object`){let n=pC(2,t),r=0,i=0;for(let[a,o]of Object.entries(e)){if(o===void 0||typeof o==`function`||typeof o==`symbol`)continue;i++!==0&&(n=uC(n,1,t)),n=uC(n,fC(a,t),t),n=uC(n,1,t);let e=mC(o,t);n=uC(n,e.jsonBytes,t),r=uC(r,e.stringValueUtf8Bytes,t)}return{jsonBytes:n,stringValueUtf8Bytes:r}}return{jsonBytes:n?pC(4,t):0,stringValueUtf8Bytes:0}}const hC=1e5,gC=25e4,_C=33554432,vC=67108864,yC=2e5,bC=5e5,xC=67108864,SC=134217728,CC=Object.freeze({archiveEntryCount:0,declaredInflatedBytes:0,distinctInflatedBytes:0,operationInflatedBytes:0});function wC(e){let t=e.reduce((e,t)=>uC(e,t.cells.length,gC),0);return{rows:e.length,cells:t,ownedUtf8Bytes:e.reduce((e,t)=>t.cells.reduce((e,t)=>{let n=mC(t.value,_C).stringValueUtf8Bytes;return uC(e,uC(n,t.formula===void 0?0:dC(t.formula,_C),_C),_C)},e),0)}}function TC(e,t){let n=mC(e,67108864);return{...t,jsonBytes:n.jsonBytes}}function EC(e,t){return{rows:uC(e.rows,t.rows,hC),cells:uC(e.cells,t.cells,gC),ownedUtf8Bytes:uC(e.ownedUtf8Bytes,t.ownedUtf8Bytes,_C)}}function DC(e,t,n={}){let r=e.rows-(n.rows??0),i=e.cells-(n.cells??0),a=e.ownedUtf8Bytes-(n.ownedUtf8Bytes??0),o=e.jsonBytes-(n.jsonBytes??0);if(r<0||i<0||a<0||o<0)throw Error(`worksheet cache accounting underflow`);return{rows:uC(r,t.rows,yC),cells:uC(i,t.cells,bC),ownedUtf8Bytes:uC(a,t.ownedUtf8Bytes,xC),jsonBytes:uC(o,t.jsonBytes,SC)}}function OC(e,t,n,r,i,a,o){let s=n===`worksheet-json`?`serialization`:`parsing`;return new D(`OOXML resource limit exceeded${t?` for ${t}`:``}: ${r} ${a} > ${i}`,{stage:s,violation:{format:`xlsx`,operation:e,resource:n,metric:r,...t===void 0?{}:{part:t},limit:i,observed:Math.min(a,i+1),configurable:!1,usage:o??CC}})}function kC(e,t,n,r){let i=[[`rows`,e.rows,hC],[`cells`,e.cells,gC],[`owned-utf8-bytes`,e.ownedUtf8Bytes,_C]];for(let[e,a,o]of i)if(a>o)throw OC(t,n,e===`owned-utf8-bytes`?`worksheet-cell-content`:`worksheet-model`,e,o,a,r)}function AC(e,t,n,r){if(e>vC)throw OC(t,n,`worksheet-json`,`bytes`,vC,e,r)}function jC(e,t,n,r){if(e.rows>yC)throw OC(t,n,`worksheet-cache`,`rows`,yC,e.rows,r);if(e.cells>bC)throw OC(t,n,`worksheet-cache`,`cells`,bC,e.cells,r);if(e.ownedUtf8Bytes>xC)throw OC(t,n,`worksheet-cache`,`owned-utf8-bytes`,xC,e.ownedUtf8Bytes,r);if(e.jsonBytes>SC)throw OC(t,n,`worksheet-cache`,`bytes`,SC,e.jsonBytes,r)}function MC(e,t){if(!t)return;let n=!1;if(t.rows)for(let[r,i]of Object.entries(t.rows)){let t=Number(r);i===null?Object.hasOwn(e.rowHeights,t)&&(delete e.rowHeights[t],n=!0):e.rowHeights[t]!==i&&(e.rowHeights[t]=i,n=!0)}if(t.cols)for(let[r,i]of Object.entries(t.cols)){let t=Number(r);i===null?Object.hasOwn(e.colWidths,t)&&(delete e.colWidths[t],n=!0):e.colWidths[t]!==i&&(e.colWidths[t]=i,n=!0)}n&&Ub.invalidate(e)}function NC(e,t){if(!t)return e;let n={...e,rowHeights:{...e.rowHeights},colWidths:{...e.colWidths}};return MC(n,t),n}var PC=class{entries=new Map;releasedProjectionIds=new Set;resolve(e,t,n,r){if(!n){let t=NC(e,r);return{worksheet:t,created:t!==e}}let i=!this.releasedProjectionIds.has(n.id),a=`${n.id}:${t}`,o=i?this.entries.get(a):void 0;if(o&&o.revision===n.revision&&o.source===e)return{worksheet:o.worksheet,created:!1};let s=NC(e,r);return s!==e&&i?(this.entries.set(a,{revision:n.revision,source:e,worksheet:s}),{worksheet:s,created:!0}):(this.entries.delete(a),{worksheet:s,created:s!==e})}release(e){this.releasedProjectionIds.add(e);let t=`${e}:`;for(let e of this.entries.keys())e.startsWith(t)&&this.entries.delete(e)}clear(){this.entries.clear(),this.releasedProjectionIds.clear()}};function FC(e,t,n,r){let i=e instanceof ArrayBuffer?new Uint8Array(e):new Uint8Array(e.buffer,e.byteOffset,e.byteLength),a=JSON.parse(new TextDecoder().decode(i));if(!a||typeof a!=`object`||!(`kind`in a))throw Error(`worksheet cursor returned an invalid unit`);let o=a;if(t!==(o.kind===`finished`))throw Error(`worksheet cursor terminal marker mismatch`);if(o.kind===`rows`){if(!Array.isArray(o.rows))throw Error(`worksheet row unit is missing rows`);return n&&cC(o.rows,n),r?.(o.rows),{kind:`rows`,rows:o.rows}}if(o.kind===`finished`){if(!o.worksheet||typeof o.worksheet!=`object`)throw Error(`worksheet terminal unit is missing its worksheet`);return o.worksheet.rows=[],{kind:`finished`,worksheet:o.worksheet}}throw Error(`worksheet cursor returned an unknown unit kind`)}var IC=class{coordinator=new a_;sessions=new Map;operationTail=Promise.resolve();pendingOpens=new Map;resourceFailure;constructor(e,t,n=e=>e(this.requireArchive()),r){this.archive=e,this.acceptWorksheet=t,this.executeArchive=n,this.prepareRows=r}reserveOpen(e){this.pendingOpens.set(e.sessionId,{identity:e,canceled:!1})}abandonOpen(e){this.pendingOpens.delete(e)}get pendingOpenCount(){return this.pendingOpens.size}async open(e,t,n){if(this.resourceFailure)throw this.resourceFailure;let r=this.pendingOpens.get(n.sessionId);if(!r||r.identity.operationId!==n.operationId||r.identity.generation!==n.generation)throw Error(`worksheet pull session open reservation is stale or missing`);let i,a=new Promise(e=>{i=e}),o=this.operationTail.then(()=>this.coordinator.enqueue(async()=>{if(r.canceled)throw Error(`worksheet pull session open was canceled`);this.executeArchive(n=>n.open_sheet_cursor(e,t));let a=[],o={rows:0,cells:0,ownedUtf8Bytes:0},s,c=!1,l=new o_({...n,maxByteCredit:67108864,coordinator:this.coordinator,driver:{pull:()=>{let e=this.executeArchive(e=>e.pull_sheet_cursor(128)),t=this.executeArchive(e=>e.sheet_cursor_pull_finished());if(this.acceptWorksheet){let n=FC(e,t,void 0,this.prepareRows);try{if(n.kind===`rows`){let e=EC(o,wC(n.rows));kC(e,`get-worksheet-worker`,void 0,this.readResourceUsage()),a.push(...n.rows),o=e}else s=n.worksheet}catch(e){throw e instanceof D&&(this.resourceFailure??=e),e}}c=t;let n=Ip(e);return{payload:n,byteLength:n.byteLength,done:t,transfer:[n]}},measureChunk:({payload:e})=>e.byteLength,acknowledge:()=>{if(!c)return;let t,r;try{if(this.acceptWorksheet){if(!s)throw Error(`worksheet terminal payload is missing`);s.rows=s.parseError?[]:a;let n=s.parseError?{rows:0,cells:0,ownedUtf8Bytes:0}:o,i=TC(s,n),c=this.readResourceUsage();kC(i,`get-worksheet-worker`,void 0,c),AC(i.jsonBytes,`get-worksheet-worker`,void 0,c);let l=this.acceptWorksheet(e,s,i,c);typeof l==`function`?t=l:l&&({rollback:t,commit:r}=l)}this.executeArchive(e=>e.acknowledge_sheet_cursor_terminal()),r?.()}catch(e){throw t?.(),e instanceof D&&(this.resourceFailure??=e),e}c=!1,this.sessions.delete(n.sessionId),i()},cancel:()=>{try{this.archive()&&this.executeArchive(e=>e.cancel_sheet_cursor())}finally{this.sessions.delete(n.sessionId),i()}},close:()=>{try{this.archive()&&this.executeArchive(e=>e.close_sheet_cursor())}finally{this.sessions.delete(n.sessionId),i()}},resourceUsage:()=>this.readResourceUsage()}});this.sessions.set(n.sessionId,{host:l,identity:n}),this.pendingOpens.delete(n.sessionId)}));this.operationTail=o.then(()=>a,()=>void 0);try{await o}catch(e){throw this.pendingOpens.delete(n.sessionId),i(),e}}async postOpenedSafely(e,t,n){try{t()}catch(t){await this.closeIdentity(e);try{n(t)}catch{}}}dispatch(e,t){let n=this.sessions.get(e.sessionId);if(n)return n.host.dispatch(e,t);let r=this.pendingOpens.get(e.sessionId);if(r&&(e.kind===`cancel`||e.kind===`close`)){let n=r.identity.operationId===e.operationId&&r.identity.generation===e.generation;return n&&(r.canceled=!0),t(n?{protocol:n_,kind:`accepted`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,command:e.kind}:{protocol:n_,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:{message:`stale lifecycle targets another pending worksheet operation`,errorName:`PullSessionProtocolError`,code:`ooxml-stale-lifecycle`}}),Promise.resolve()}return e.kind===`cancel`||e.kind===`close`?(t({protocol:n_,kind:`accepted`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,command:e.kind}),Promise.resolve()):(t({protocol:n_,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:Fp(Error(`worksheet pull session is not open`))}),Promise.resolve())}async dispatchSafely(e,t){try{await this.dispatch(e,t)}catch(n){try{t({protocol:n_,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:Fp(n)})}catch{}}}run(e){let t=this.operationTail.then(()=>this.coordinator.enqueue(async()=>{if(this.resourceFailure)throw this.resourceFailure;return e()})).catch(e=>{throw e instanceof D&&(this.resourceFailure??=e),e});return this.operationTail=t.then(()=>void 0,()=>void 0),t}async reset(){for(let e of this.pendingOpens.values())e.canceled=!0;let e=1;for(let{host:t,identity:n}of[...this.sessions.values()])await t.dispatch({protocol:n_,kind:`close`,...n,requestId:e++},()=>void 0);this.sessions.clear(),await this.operationTail,this.pendingOpens.clear(),this.resourceFailure=void 0}requireArchive(){let e=this.archive();if(!e)throw Error(`Workbook not loaded`);return e}async closeIdentity(e){let t=this.sessions.get(e.sessionId);if(t){await t.host.dispatch({protocol:n_,kind:`close`,...e,requestId:1},()=>void 0);return}let n=this.pendingOpens.get(e.sessionId);n&&n.identity.operationId===e.operationId&&n.identity.generation===e.generation&&(n.canceled=!0)}readResourceUsage(){try{return yp(this.executeArchive(e=>e.sheet_cursor_resource_usage()))}catch(e){if(String(e).includes(`worksheet cursor usage is unavailable`))return;throw e}}};function LC(e){return!!e&&typeof e==`object`&&e.protocol===`ooxml-pull-v1`}const RC=new up(w,{freeArchive:e=>e.free(),reinit:T});let zC=null,BC={},VC=Promise.resolve();const HC=new Map,UC=new PC,WC=new Map;let GC={rows:0,cells:0,ownedUtf8Bytes:0,jsonBytes:0};const KC=new Qv({maxEntries:64,maxBytes:134217728}),qC=new IC(()=>RC.archive,(e,t,n,r)=>{let i=HC.get(e),a=WC.get(e),o=DC(GC,n,a);return jC(o,`get-worksheet-worker`,void 0,r),HC.set(e,t),{commit:()=>{GC=o,WC.set(e,n)},rollback:()=>{HC.get(e)===t&&(i?HC.set(e,i):HC.delete(e))}}},e=>{let t=RC.archive;if(!t)throw Error(`Workbook not loaded`);return RC.run(()=>e(t))},e=>{zC&&cC(e,zC.sharedStrings)}),JC=(e,t)=>self.postMessage(e,t);function YC(e,t){return KC.get(e,t,async()=>{let n=RC.archive;if(!n)throw Error(`Workbook not loaded`);let r=RC.run(()=>n.extract_image(e));return new Blob([r],{type:t})})}self.onmessage=async e=>{let t=e.data;if(LC(t)){await qC.dispatchSafely(t,JC);return}if(t.type===`init`){RC.setWasmInput(ip(t.wasmUrl)??t.wasmUrl);return}if(t.type===`releaseViewProjection`){UC.release(t.projectionId);return}let n=t.id;t.type===`openSheetSession`&&qC.reserveOpen(t);try{if(t.type===`openSheetSession`){if(await RC.ensureReady(),RC.archive){let e=RC.archive;RC.run(()=>e.assert_healthy())}await qC.open(t.sheetIndex,t.sheetName,t),await qC.postOpenedSafely(t,()=>JC({type:`sheetSessionOpened`,id:n,sessionId:t.sessionId,operationId:t.operationId,generation:t.generation}),e=>JC({type:`error`,id:n,...Fp(e)}));return}t.type===`parse`&&await qC.reset(),await qC.run(async()=>{if(await RC.ensureReady(),t.type!==`parse`&&RC.archive){let e=RC.archive;RC.run(()=>e.assert_healthy())}if(t.type===`parse`){HC.clear(),UC.clear(),WC.clear(),GC={rows:0,cells:0,ownedUtf8Bytes:0,jsonBytes:0},rf(YC),cf(YC),KC.clear(),BC=await e_(t.renderers);let[e,i,a]=t_(t.resourcePolicy);zC=RC.run(()=>{let n=new r(new Uint8Array(t.data),e,i,a);return RC.setArchive(n),JSON.parse(new TextDecoder().decode(n.parse()))}),t.useGoogleFonts&&(VC=F(sC(zC),aC));let o=RC.run(()=>yp(RC.archive.resource_usage()));JC({type:`parsed`,id:n,workbook:zC,usage:o});return}if(t.type===`renderViewport`){if(!zC)throw Error(`Workbook not loaded`);await VC;let e=HC.get(t.sheetIndex);if(!e)throw Error(`Worksheet is not loaded through its pull session`);let{sizeOverrides:r,...i}=t.opts,a=UC.resolve(e,t.sheetIndex,t.viewProjection,r),o=a.worksheet;a.created&&hS(e,o),t.viewProjection?.autoRowHeightsPrepared&&uS(o);let s=t.layoutMetrics?.maximumDigitWidth;if(s!==void 0){if(!Number.isFinite(s)||s<=0)throw Error(`XLSX maximum digit width must be a finite positive number`);Ub.forWorksheet(o,s)}let c=new OffscreenCanvas(1,1);await tC(iC(o,zC.styles,BC),c,t.viewport,{...i,fetchImage:YC});let l=c.transferToImageBitmap();JC({type:`viewportRendered`,id:n,bitmap:l},[l]);return}if(t.type===`extractImage`){let e=RC.archive;if(!e)throw Error(`Workbook not loaded`);let r=RC.run(()=>e.extract_image(t.path).buffer);JC({type:`imageExtracted`,id:n,bytes:r},[r]);return}if(t.type===`resourceUsage`){let e=RC.archive;if(!e)throw Error(`Workbook not loaded`);JC({type:`resourceUsage`,id:n,usage:RC.run(()=>yp(e.resource_usage()))});return}if(t.type===`toMarkdown`){let e=RC.archive;if(!e)throw Error(`Workbook not loaded`);JC({type:`markdownRendered`,id:n,markdown:RC.run(()=>e.to_markdown())});return}})}catch(e){t.type===`openSheetSession`&&qC.abandonOpen(t.sessionId);try{JC({type:`error`,id:n,...Fp(e)})}catch{}}};