local-operator-ui 0.36.6 → 0.36.8

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 (102) hide show
  1. package/out/main/index.js +739 -27
  2. package/out/preload/index.js +40 -0
  3. package/out/renderer/assets/{_basePickBy-B0B_HryP.js → _basePickBy-D11ygq2l.js} +1 -1
  4. package/out/renderer/assets/{_baseUniq-BC6WfZEZ.js → _baseUniq-_Pf0yG1r.js} +1 -1
  5. package/out/renderer/assets/{agent-details-page-CIKeI8ax.js → agent-details-page-LU973LFV.js} +2 -2
  6. package/out/renderer/assets/{agent-hub-page-NKE7fJK1.js → agent-hub-page-DegTVxlE.js} +2 -2
  7. package/out/renderer/assets/{agents-page-BIRTx9kB.js → agents-page-B6Y-wB7u.js} +3 -3
  8. package/out/renderer/assets/{arc-DyL52bz_.js → arc-BedtwWh_.js} +1 -1
  9. package/out/renderer/assets/{architectureDiagram-IEHRJDOE-OQsI3Nan.js → architectureDiagram-IEHRJDOE-DyIP0L4b.js} +1 -1
  10. package/out/renderer/assets/{arrow-up-BpuHf_sB.js → arrow-up-BD8jieeb.js} +1 -1
  11. package/out/renderer/assets/{blockDiagram-JOT3LUYC-CS1fz58m.js → blockDiagram-JOT3LUYC-w5b-ZzdW.js} +1 -1
  12. package/out/renderer/assets/{book-open-BiI_r4jM.js → book-open-DxzLWerU.js} +1 -1
  13. package/out/renderer/assets/browser-page-Bm5bblrV.js +1 -0
  14. package/out/renderer/assets/{browser-webauthn-prompt-ja8N1ehh.js → browser-webauthn-prompt-CbE9FFZv.js} +1 -1
  15. package/out/renderer/assets/{building-2-Dar5h3t0.js → building-2-DtOQfBQY.js} +1 -1
  16. package/out/renderer/assets/{c4Diagram-VJAJSXHY-C6RZIvJP.js → c4Diagram-VJAJSXHY-CnSFoHWb.js} +1 -1
  17. package/out/renderer/assets/channel-BJPW3C83.js +1 -0
  18. package/out/renderer/assets/{chunk-4BMEZGHF-Cpn-cLXo.js → chunk-4BMEZGHF-CY0scau5.js} +1 -1
  19. package/out/renderer/assets/{chunk-A2AXSNBT-S8Vffyme.js → chunk-A2AXSNBT-B_cWmZiK.js} +1 -1
  20. package/out/renderer/assets/{chunk-AEK57VVT-K1GcoFUy.js → chunk-AEK57VVT-BRm1a_Ub.js} +1 -1
  21. package/out/renderer/assets/{chunk-D6G4REZN-CyqTe7_6.js → chunk-D6G4REZN-CmZT-cQT.js} +1 -1
  22. package/out/renderer/assets/{chunk-RZ5BOZE2-QWUc1JND.js → chunk-RZ5BOZE2-Cwg1etHt.js} +1 -1
  23. package/out/renderer/assets/{chunk-XZIHB7SX-v3MFY8Qn.js → chunk-XZIHB7SX-a-OtMrnF.js} +1 -1
  24. package/out/renderer/assets/classDiagram-GIVACNV2-BjlJ_E71.js +1 -0
  25. package/out/renderer/assets/classDiagram-v2-COTLJTTW-BjlJ_E71.js +1 -0
  26. package/out/renderer/assets/clone-BuzQaJVT.js +1 -0
  27. package/out/renderer/assets/{console-mirror-BfM9Le8Y.js → console-mirror-wrjuOlK5.js} +1 -1
  28. package/out/renderer/assets/{consoleCapture-mqMk3W7y.js → consoleCapture-CGsX86Ez.js} +1 -1
  29. package/out/renderer/assets/{conversation-input-sync-BD8ZrQRq.js → conversation-input-sync-qFePp_gf.js} +276 -276
  30. package/out/renderer/assets/{dagre-OKDRZEBW-D1-V7-Tj.js → dagre-OKDRZEBW-ujAbOxN1.js} +1 -1
  31. package/out/renderer/assets/{diagram-SSKATNLV-D7jQdHV1.js → diagram-SSKATNLV-BGt8bOqa.js} +1 -1
  32. package/out/renderer/assets/{diagram-VNBRO52H-DB_YZ9C8.js → diagram-VNBRO52H-DGmIp--B.js} +1 -1
  33. package/out/renderer/assets/{erDiagram-Q7BY3M3F-Blv-3W3v.js → erDiagram-Q7BY3M3F-Czgf2xtG.js} +1 -1
  34. package/out/renderer/assets/{error-boundary-Bpk2r3Ma.js → error-boundary-CIO9VaTx.js} +2 -2
  35. package/out/renderer/assets/{flowDiagram-4HSFHLVR-BTShSZPF.js → flowDiagram-4HSFHLVR-BSuzI5ul.js} +1 -1
  36. package/out/renderer/assets/{ganttDiagram-APWFNJXF-_SXfULy-.js → ganttDiagram-APWFNJXF-DjjvFPP9.js} +1 -1
  37. package/out/renderer/assets/{gitGraphDiagram-7IBYFJ6S-9E7LTj7S.js → gitGraphDiagram-7IBYFJ6S-qgMylPGx.js} +1 -1
  38. package/out/renderer/assets/{graph-BhaFec28.js → graph-C_PIARec.js} +1 -1
  39. package/out/renderer/assets/{hash-CrDnkZ9w.js → hash-BTR-wmLC.js} +1 -1
  40. package/out/renderer/assets/index-B5ZsvNme.js +7 -0
  41. package/out/renderer/assets/index-B9Z9fABA.js +1 -0
  42. package/out/renderer/assets/index-BSn66J9q.js +57 -0
  43. package/out/renderer/assets/index-BzHpKJoz.css +1 -0
  44. package/out/renderer/assets/index-U5qrTe4P.js +824 -0
  45. package/out/renderer/assets/{infoDiagram-PH2N3AL5-CCsEuNFb.js → infoDiagram-PH2N3AL5-CXhZsMAw.js} +1 -1
  46. package/out/renderer/assets/{installer-CJRb2tgb.js → installer-DsBvKWJk.js} +1 -1
  47. package/out/renderer/assets/{journeyDiagram-U35MCT3I-LXUs-hfi.js → journeyDiagram-U35MCT3I-BfRBfFPi.js} +1 -1
  48. package/out/renderer/assets/{kanban-definition-NDS4AKOZ-GLYV-Ku1.js → kanban-definition-NDS4AKOZ-BjBPm0Wp.js} +1 -1
  49. package/out/renderer/assets/{layout-erSNWSH-.js → layout-CxH8v5Lh.js} +1 -1
  50. package/out/renderer/assets/{legacy-agents-page-CtFhdgCi.js → legacy-agents-page-CiirOdbB.js} +7 -7
  51. package/out/renderer/assets/{library-page-C6-aUarQ.js → library-page-CH3E7s4_.js} +3 -3
  52. package/out/renderer/assets/{mermaid.core-BGROKqtx.js → mermaid.core-Bx5BMQp8.js} +5 -5
  53. package/out/renderer/assets/mesh-page-DXuH0pWs.js +1 -0
  54. package/out/renderer/assets/{mindmap-definition-ALO5MXBD-C1KlK3C5.js → mindmap-definition-ALO5MXBD-Cnp-gOUf.js} +1 -1
  55. package/out/renderer/assets/{mini-Dnf6EgXd.js → mini-Cxcx9-Gz.js} +1 -1
  56. package/out/renderer/assets/{notebook-pen-CTurnI5u.js → notebook-pen-pmBcBtK5.js} +1 -1
  57. package/out/renderer/assets/{org-access-DTXfQgW5.js → org-access-BBS-iiGY.js} +1 -1
  58. package/out/renderer/assets/{org-surface-gate-CDaexKo1.js → org-surface-gate-B9JbfoNw.js} +1 -1
  59. package/out/renderer/assets/{page-header-Does21Km.js → page-header-D3rux4P9.js} +1 -1
  60. package/out/renderer/assets/{pieDiagram-IB7DONF6-DaaMC8-4.js → pieDiagram-IB7DONF6-BXGlHMJD.js} +1 -1
  61. package/out/renderer/assets/{projects-page-Bw0c4vc_.js → projects-page-DjaYWghP.js} +17 -17
  62. package/out/renderer/assets/publication-validation-Dent7Wyb.js +1 -0
  63. package/out/renderer/assets/{quadrantDiagram-7GDLP6J5-BVFqf3uw.js → quadrantDiagram-7GDLP6J5-DTE1LofJ.js} +1 -1
  64. package/out/renderer/assets/{radar-MK3ICKWK-BbBjm1y3.js → radar-MK3ICKWK-C5aiTbpi.js} +1 -1
  65. package/out/renderer/assets/{radient-auth-buttons-BeDvFHK7.js → radient-auth-buttons-CD4FRlt9.js} +1 -1
  66. package/out/renderer/assets/{requirementDiagram-KVF5MWMF-luASPwgm.js → requirementDiagram-KVF5MWMF-B-kbiFxO.js} +1 -1
  67. package/out/renderer/assets/{sankeyDiagram-QLVOVGJD-DJ-Xk1mH.js → sankeyDiagram-QLVOVGJD-8mSg8Gx1.js} +1 -1
  68. package/out/renderer/assets/{schedules-page-D7XfeTME.js → schedules-page-M0NGG3zh.js} +1 -1
  69. package/out/renderer/assets/{sequenceDiagram-X6HHIX6F-C9vBEHGW.js → sequenceDiagram-X6HHIX6F-Ctz7PqiC.js} +1 -1
  70. package/out/renderer/assets/settings-page-Cy2SAtSh.js +287 -0
  71. package/out/renderer/assets/{smartart-DCxfy3Tv.js → smartart-DmOeXeJs.js} +1 -1
  72. package/out/renderer/assets/{stateDiagram-DGXRK772-DCbA594R.js → stateDiagram-DGXRK772-x8oSqtIw.js} +1 -1
  73. package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-CUVgaWvm.js +1 -0
  74. package/out/renderer/assets/{tags-input-chips-BSg2kzIn.js → tags-input-chips-BAP2XNbQ.js} +1 -1
  75. package/out/renderer/assets/team-bridge-page-CYehSZqj.js +11 -0
  76. package/out/renderer/assets/{timeline-definition-BDJGKUSR-AlhVX480.js → timeline-definition-BDJGKUSR-DZ5836tF.js} +1 -1
  77. package/out/renderer/assets/ui-preferences-store-oc99NgQT.js +1 -0
  78. package/out/renderer/assets/{use-download-agent-mutation-DmirSifx.js → use-download-agent-mutation-Bgwi0JGB.js} +4 -4
  79. package/out/renderer/assets/{use-session-snapshot-DQQ3D8W6.js → use-session-snapshot-DQs7iPEs.js} +1 -1
  80. package/out/renderer/assets/{xychartDiagram-VJFVF3MP-djayCUFZ.js → xychartDiagram-VJFVF3MP-CQNe5VvP.js} +1 -1
  81. package/out/renderer/console-capture.html +5 -5
  82. package/out/renderer/index.html +7 -7
  83. package/out/renderer/installer.html +4 -4
  84. package/out/renderer/mini.html +7 -7
  85. package/package.json +3 -3
  86. package/out/renderer/assets/browser-page-CvUjgYjV.js +0 -1
  87. package/out/renderer/assets/channel-Ca9itbEI.js +0 -1
  88. package/out/renderer/assets/classDiagram-GIVACNV2-BDSTmyjZ.js +0 -1
  89. package/out/renderer/assets/classDiagram-v2-COTLJTTW-BDSTmyjZ.js +0 -1
  90. package/out/renderer/assets/clone-OIhREtCX.js +0 -1
  91. package/out/renderer/assets/index-BgwxrPpP.css +0 -1
  92. package/out/renderer/assets/index-BuM037wD.js +0 -824
  93. package/out/renderer/assets/index-ByYW6G08.js +0 -57
  94. package/out/renderer/assets/index-ClCIwVJj.js +0 -7
  95. package/out/renderer/assets/index-Shz25Z8Y.js +0 -1
  96. package/out/renderer/assets/mesh-page-CzSDWDfu.js +0 -1
  97. package/out/renderer/assets/publication-validation-MxGQJEQj.js +0 -1
  98. package/out/renderer/assets/settings-page-BubJ0gmV.js +0 -287
  99. package/out/renderer/assets/stateDiagram-v2-YXO3MK2T-P9yjg6o0.js +0 -1
  100. package/out/renderer/assets/team-bridge-page-DshgiIxJ.js +0 -1
  101. package/out/renderer/assets/ui-preferences-store-CAt3Nng3.js +0 -1
  102. package/out/renderer/assets/use-memberships-query-fzcoT-92.js +0 -1
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./smartart-DCxfy3Tv.js","./index-ByYW6G08.js","./index-BgwxrPpP.css","./index-BuM037wD.js","./conversation-input-sync-BD8ZrQRq.js","./ui-preferences-store-CAt3Nng3.js","./error-boundary-Bpk2r3Ma.js","./conversation-input-sync-CAX4_ErH.css","./console-mirror-BfM9Le8Y.js","./console-mirror-DOrYoP_4.css","./index-DHKnfVbX.css","./page-header-Does21Km.js","./hash-CrDnkZ9w.js","./tags-input-chips-BSg2kzIn.js","./arrow-up-BpuHf_sB.js"])))=>i.map(i=>d[i]);
2
- import{r as D,j as f,t as S,c as qe}from"./index-ByYW6G08.js";import{bp as zt,F as xt,bq as zn,aY as Sn,br as pt,bs as ti,bt as ni,bu as si,bv as ii,bw as ri,bb as Ln,bx as oi,by as ai,bj as li,bz as Lt,bA as ci,bB as di,bC as gn}from"./index-BuM037wD.js";import{c1 as ui,c2 as Dn,c3 as fi,c4 as hi,c5 as pi,C as Tn,u as ct,aN as Be,c6 as Oe,d as Ce,c7 as hs,D as Yt,b4 as gi,c8 as mn,c9 as mi,ca as bi,aS as rt,aO as bn,a7 as je,cb as ps,cc as At,cd as yi,ce as vi,cf as wi,cg as _t,ch as ki,bW as Bn,aQ as jn,au as xi,bO as Qt,ci as gs,bP as Fn,cj as _i,ck as Pi,cl as Si,cm as Ti,cn as ji,bI as Fi,b$ as Ci,aR as Mi,a as Ni,c as Ai,co as $i,bN as Ei}from"./conversation-input-sync-BD8ZrQRq.js";import{P as Ri}from"./page-header-Does21Km.js";import{c as Pt,h as ms,y as Dt,i as bs,a as K,k as ys,q as Ne,a9 as Ii,aa as zi,ab as Li,p as On,B as st,X as ot,u as Cn,T as Di,ac as Bi,J as Oi,j as Ui,S as Un,A as fn,I as Gi,s as Wi,ad as qi,ae as Ki}from"./error-boundary-Bpk2r3Ma.js";import"./ui-preferences-store-CAt3Nng3.js";import{H as Xi}from"./hash-CrDnkZ9w.js";import{T as Vi}from"./tags-input-chips-BSg2kzIn.js";import{A as Hi}from"./arrow-up-BpuHf_sB.js";var Yi=class extends ui{constructor(e,n){super(e,n)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){super.setOptions({...e,behavior:Dn()})}getOptimisticResult(e){return e.behavior=Dn(),super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,n){const{state:t}=e,s=super.createResult(e,n),{isFetching:i,isRefetching:r,isError:o,isRefetchError:l}=s,a=t.fetchMeta?.fetchMore?.direction,d=o&&a==="forward",c=i&&a==="forward",h=o&&a==="backward",u=i&&a==="backward";return{...s,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:hi(n,t.data),hasPreviousPage:fi(n,t.data),isFetchNextPageError:d,isFetchingNextPage:c,isFetchPreviousPageError:h,isFetchingPreviousPage:u,isRefetchError:l&&!d&&!h,isRefetching:r&&!c&&!u}}};function Qi(e,n){return pi(e,Yi,n)}/**
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./smartart-DmOeXeJs.js","./index-BSn66J9q.js","./index-BzHpKJoz.css","./index-U5qrTe4P.js","./conversation-input-sync-qFePp_gf.js","./ui-preferences-store-oc99NgQT.js","./error-boundary-CIO9VaTx.js","./conversation-input-sync-CAX4_ErH.css","./console-mirror-wrjuOlK5.js","./console-mirror-DOrYoP_4.css","./index-DHKnfVbX.css","./page-header-D3rux4P9.js","./hash-BTR-wmLC.js","./tags-input-chips-BAP2XNbQ.js","./arrow-up-BD8jieeb.js"])))=>i.map(i=>d[i]);
2
+ import{r as D,j as f,t as S,c as qe}from"./index-BSn66J9q.js";import{bU as zt,a0 as xt,bV as zn,bg as Sn,bW as pt,bX as ti,bY as ni,bZ as si,b_ as ii,b$ as ri,bG as Ln,c0 as oi,c1 as ai,bO as li,c2 as Lt,c3 as ci,c4 as di,c5 as gn}from"./index-U5qrTe4P.js";import{c3 as ui,c4 as Dn,c5 as fi,c6 as hi,c7 as pi,$ as Tn,u as ct,aO as Be,c8 as Oe,d as Ce,c9 as hs,a0 as Yt,aI as gi,ca as mn,cb as mi,cc as bi,aT as rt,aP as bn,a2 as je,cd as ps,ce as At,cf as yi,cg as vi,ch as wi,ci as _t,cj as ki,bY as Bn,aR as jn,ap as xi,bP as Qt,ck as gs,bQ as Fn,cl as _i,cm as Pi,cn as Si,co as Ti,cp as ji,bJ as Fi,c1 as Ci,aS as Mi,a as Ni,c as Ai,cq as $i,bO as Ei}from"./conversation-input-sync-qFePp_gf.js";import{P as Ri}from"./page-header-D3rux4P9.js";import{c as Pt,i as ms,y as Dt,j as bs,a as K,k as ys,l as Ne,a9 as Ii,aa as zi,ab as Li,m as On,B as st,X as ot,u as Cn,T as Di,ac as Bi,J as Oi,q as Ui,S as Un,A as fn,I as Gi,h as Wi,ad as qi,ae as Ki}from"./error-boundary-CIO9VaTx.js";import"./ui-preferences-store-oc99NgQT.js";import{H as Xi}from"./hash-BTR-wmLC.js";import{T as Vi}from"./tags-input-chips-BAP2XNbQ.js";import{A as Hi}from"./arrow-up-BD8jieeb.js";var Yi=class extends ui{constructor(e,n){super(e,n)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){super.setOptions({...e,behavior:Dn()})}getOptimisticResult(e){return e.behavior=Dn(),super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,n){const{state:t}=e,s=super.createResult(e,n),{isFetching:i,isRefetching:r,isError:o,isRefetchError:l}=s,a=t.fetchMeta?.fetchMore?.direction,d=o&&a==="forward",c=i&&a==="forward",h=o&&a==="backward",u=i&&a==="backward";return{...s,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:hi(n,t.data),hasPreviousPage:fi(n,t.data),isFetchNextPageError:d,isFetchingNextPage:c,isFetchPreviousPageError:h,isFetchingPreviousPage:u,isRefetchError:l&&!d&&!h,isRefetching:r&&!c&&!u}}};function Qi(e,n){return pi(e,Yi,n)}/**
3
3
  * @license lucide-react v0.507.0 - ISC
4
4
  *
5
5
  * This source code is licensed under the ISC license.
@@ -26,7 +26,7 @@ import{r as D,j as f,t as S,c as qe}from"./index-ByYW6G08.js";import{bp as zt,F
26
26
  * See the LICENSE file in the root directory of this source tree.
27
27
  */const rr=[["path",{d:"m15 5 6.3 6.3a2.4 2.4 0 0 1 0 3.4L17 19",key:"1cbfv1"}],["path",{d:"M9.586 5.586A2 2 0 0 0 8.172 5H3a1 1 0 0 0-1 1v5.172a2 2 0 0 0 .586 1.414L8.29 18.29a2.426 2.426 0 0 0 3.42 0l3.58-3.58a2.426 2.426 0 0 0 0-3.42z",key:"135mg7"}],["circle",{cx:"6.5",cy:"9.5",r:".5",fill:"currentColor",key:"5pm5xn"}]],or=Pt("tags",rr),ar=["generated","created","mentioned"],yn=[{key:"image",labelKey:"ui.library.category.images",iconKind:"image"},{key:"sound",labelKey:"ui.library.category.sounds",iconKind:"audio"},{key:"document",labelKey:"ui.library.category.documents",iconKind:"markdown"},{key:"presentation",labelKey:"ui.library.category.presentations",iconKind:"pptx"},{key:"video",labelKey:"ui.library.category.video",iconKind:"video"},{key:"spreadsheet",labelKey:"ui.library.category.spreadsheets",iconKind:"spreadsheet"},{key:"code",labelKey:"ui.library.category.code",iconKind:"code"},{key:"other",labelKey:"ui.library.category.other",iconKind:"other"}],lr=[{key:"recent",labelKey:"ui.library.sort.recent"},{key:"name",labelKey:"ui.library.sort.name"},{key:"kind",labelKey:"ui.library.sort.kind"},{key:"size",labelKey:"ui.library.sort.size"},{key:"created",labelKey:"ui.library.sort.created"},{key:"modified",labelKey:"ui.library.sort.modified"},{key:"organized",labelKey:"ui.library.sort.organized"}],Bt={q:"",scope:"final",tagMode:"all",highlighted:!1,sort:"recent",order:"desc"};function cr(e){return e==="name"||e==="kind"?"asc":"desc"}function Wn(e,n){return e.status===n}function dr(e){return!!(e.q.trim()||e.category||e.originGroup||e.tag||e.session||e.highlighted||e.status)}function ur(e){if(e==="unorganized")return!1}function St(e){return e.name.trim()||e.derived_name.trim()||e.id}function vs(e){const n=e.derived_name.trim();return n?n===e.name.trim()?e.ref.display_path:n:e.ref.display_path}function fr(e){const n=new Map;for(const i of e){const r=i.category||"custom",o=n.get(r);o?o.push(i):n.set(r,[i])}const t=["topic","project","type","source","custom"],s=i=>{const r=t.indexOf(i);return r===-1?t.length:r};return[...n.entries()].sort(([i],[r])=>s(i)-s(r)).map(([i,r])=>({category:i,tags:r}))}function Mn(e){if(!Number.isFinite(e)||e<=0)return"0 B";const n=["B","KB","MB","GB","TB"],t=Math.min(n.length-1,Math.floor(Math.log(e)/Math.log(1024))),s=e/1024**t;return`${s>=10||t===0?Math.round(s):s.toFixed(1)} ${n[t]}`}function hr(e,n){if(!e)return"";const t=n-e*1e3;if(t<6e4)return"just now";const s=Math.floor(t/6e4);if(s<60)return`${s}m ago`;const i=Math.floor(s/60);if(i<24)return`${i}h ago`;const r=Math.floor(i/24);if(r<30)return`${r}d ago`;const o=Math.floor(r/30);return o<12?`${o}mo ago`:`${Math.floor(o/12)}y ago`}function pr(e){if(!e||e<0)return"";const n=Math.round(e),t=Math.floor(n/60),s=n%60;return`${t}:${String(s).padStart(2,"0")}`}function Zt(e){switch(e){case"generated":return"ui.library.origin.generated";case"created":return"ui.library.origin.created";case"mentioned":return"ui.library.origin.mentioned";default:return"ui.library.origin.other"}}const Ue={all:["desktop","library"],list:e=>["desktop","library","list",e],detail:e=>["desktop","library","detail",e],tags:["desktop","library","tags"],librarian:["desktop","library","librarian"]},gr=60;function mr(e,n){return{op:"library.list",scope:e.scope,...e.q.trim()?{q:e.q.trim()}:{},...e.category?{category:e.category}:{},...e.originGroup?{origin_group:e.originGroup}:{},...e.tag?{tag:e.tag}:{},...e.session?{session_id:e.session}:{},...e.tag?{tag_mode:e.tagMode}:{},...e.highlighted?{highlighted:!0}:{},...e.status==="favorite"?{favorite:!0}:{},...(()=>{const t=ur(e.status);return t!==void 0?{organized:t}:{}})(),sort:e.sort,order:e.order,limit:gr,...n?{cursor:n}:{}}}function br(e,n){return Qi({queryKey:Ue.list(e),enabled:n,initialPageParam:void 0,queryFn:({pageParam:t})=>Ce(mr(e,t)),getNextPageParam:t=>t.next_cursor??void 0,retry:Yt,refetchInterval:t=>t.state.data?.pages.at(-1)?.state==="building"?2e3:!1,staleTime:1e4})}function yr(e,n){return Tn({queryKey:Ue.detail(e??""),enabled:n&&!!e,queryFn:()=>Ce({op:"library.get",id:e}),retry:Yt,staleTime:5e3})}function vr(e){return Tn({queryKey:Ue.tags,enabled:e,queryFn:()=>Ce({op:"library.tags"}),retry:Yt,staleTime:2e4})}function ws(e){return Tn({queryKey:Ue.librarian,enabled:e,queryFn:()=>Ce({op:"library.librarian",action:"status"}).then(n=>"librarian"in n?n.librarian:n),retry:Yt,staleTime:3e4})}function Ke(e){return e.invalidateQueries({queryKey:Ue.all})}function ks(){const e=ct();return Be({mutationFn:n=>Ce({op:"library.update",id:n.id,fields:n.fields}),onSuccess:n=>(e.setQueryData(Ue.detail(n.id),n),Ke(e)),onError:(n,t)=>{e.invalidateQueries({queryKey:Ue.detail(t.id)}),e.invalidateQueries({queryKey:Ue.all})},retry:Oe})}function wr(){const e=ct();return Be({mutationFn:n=>Ce({op:"library.tags.assign",id:n.id,tags:n.tags,...n.primary?{primary:n.primary}:{}}),onSuccess:n=>(e.setQueryData(Ue.detail(n.id),n),Ke(e)),onError:()=>Ke(e),retry:Oe})}function kr(){const e=ct(),n=()=>Ke(e),t=Be({mutationFn:o=>Ce({op:"library.tags.create",name:o.name,...o.category?{category:o.category}:{}}),onSuccess:n,retry:Oe}),s=Be({mutationFn:o=>Ce({op:"library.tags.update",id:o.id,...o.name!==void 0?{name:o.name}:{},...o.category!==void 0?{category:o.category}:{}}),onSuccess:n,retry:Oe}),i=Be({mutationFn:o=>Ce({op:"library.tags.delete",id:o.id}),onSuccess:n,retry:Oe}),r=Be({mutationFn:o=>Ce({op:"library.tags.merge",id:o.id,into:o.into}),onSuccess:n,retry:Oe});return{create:t,update:s,remove:i,merge:r}}function xr(){const e=ct();return Be({mutationFn:n=>Ce({op:"library.chat.link",id:n.id,sessionId:n.sessionId}),onSuccess:()=>Ke(e),onError:()=>Ke(e),retry:Oe})}function _r(){const e=ct();return Be({mutationFn:n=>Ce({op:"library.chat.clear",id:n.id}),onSuccess:()=>Ke(e),retry:Oe})}function Pr(){const e=ct();return Be({mutationFn:n=>Ce({op:"library.librarian",action:n}).then(t=>"librarian"in t?t.librarian:t),onSuccess:()=>Ke(e),retry:Oe})}function et(e,n,t,s=!1){const[i,r]=D.useState({bytes:null,mimeType:"",error:null,loading:!1});return D.useEffect(()=>{if(!t||!e){r({bytes:null,mimeType:"",error:null,loading:!1});return}let o=!1;return r({bytes:null,mimeType:"",error:null,loading:!0}),hs(n==="thumbnail"?{op:"library.thumbnail",assetId:e,width:480}:{op:"library.content",assetId:e,download:s},null).then(a=>{if(!o){if(a.kind==="bytes"){r({bytes:a.data,mimeType:a.mimeType,error:null,loading:!1});return}r({bytes:null,mimeType:"",error:a.kind==="error"?a.detail:"This preview could not be loaded.",loading:!1})}}),()=>{o=!0}},[e,n,t,s]),i}function Nn(e,n){const[t,s]=D.useState(null);return D.useEffect(()=>{if(!e){s(null);return}const i=new Blob([e],{type:n||"application/octet-stream"}),r=URL.createObjectURL(i);return s(r),()=>URL.revokeObjectURL(r)},[e,n]),t}const Sr=/[\\/]/;function Tr(e){const t=St(e).split(Sr).pop()||e.id;if(t.includes("."))return t;const s=e.ref.display_path||e.ref.path||"",i=s.includes(".")?s.slice(s.lastIndexOf(".")):"";return`${t}${i}`}async function at(e){const n=await hs({op:"library.content",assetId:e.id,download:!0},null);if(n.kind!=="bytes")throw new Error(n.kind==="error"?n.detail:"The asset content could not be read.");const t=new Blob([n.data],{type:e.ref.content_type||n.mimeType||"application/octet-stream"}),s=URL.createObjectURL(t),i=document.createElement("a");i.href=s,i.download=Tr(e),i.rel="noopener",document.body.append(i),i.click(),i.remove(),setTimeout(()=>URL.revokeObjectURL(s),3e4)}const An=({asset:e,onAsk:n,onEditMetadata:t,onEditTags:s,onToggleFavorite:i,onOpenConversation:r,onFilterSession:o,triggerClassName:l})=>{const a=async(u,g)=>{try{await navigator.clipboard.writeText(u),bn(g)}catch{je(S("ui.library.menu.copy_failed"))}},d=async()=>{try{await at(e),bn(S("ui.library.menu.saved_a_copy"))}catch{je(S("ui.library.menu.save_failed"))}},c=!!(e.ref.type==="path"&&e.ref.path),h=e.occurrences;return f.jsxs(ms,{children:[f.jsx(Dt,{content:S("ui.library.menu.asset_actions"),children:f.jsx(bs,{asChild:!0,children:f.jsx(K,{variant:"ghost",size:"icon-sm","aria-label":S("ui.library.menu.asset_actions_label",{name:e.name||e.derived_name}),className:l,onClick:u=>u.stopPropagation(),"data-library-asset-menu":"",children:f.jsx(gi,{"aria-hidden":"true"})})})}),f.jsxs(ys,{align:"end",className:"min-w-52",onClick:u=>u.stopPropagation(),children:[h.length===1?f.jsxs(Ne,{onSelect:()=>r(h[0].session_id),children:[f.jsx(zt,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.open_source_conversation")})]}):h.length>1?f.jsxs(Ii,{children:[f.jsxs(zi,{children:[f.jsx(zt,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.open_source_conversation")})]}),f.jsx(Li,{className:"min-w-60",children:h.map(u=>f.jsx(Ne,{onSelect:()=>r(u.session_id),children:f.jsx("span",{className:"truncate",children:u.session_title||u.session_id})},`${u.session_id}:${u.first_seq}`))})]}):null,f.jsxs(Ne,{onSelect:n,children:[f.jsx(zt,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.ask_about_asset")})]}),h.length>0&&f.jsxs(Ne,{onSelect:()=>o(h[0].session_id),children:[f.jsx(mn,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.show_from_conversation")})]}),f.jsx(On,{}),f.jsxs(Ne,{onSelect:i,children:[f.jsx(xt,{"aria-hidden":"true",className:e.favorite?"fill-current text-accent":void 0}),f.jsx("span",{children:e.favorite?S("ui.library.menu.unfavorite"):S("ui.library.menu.favorite")})]}),f.jsxs(Ne,{onSelect:t,children:[f.jsx(mi,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.edit_metadata")})]}),f.jsxs(Ne,{onSelect:s,children:[f.jsx(or,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.edit_tags")})]}),f.jsx(On,{}),e.ref.path?f.jsxs(Ne,{onSelect:()=>void a(e.ref.path,S("ui.library.menu.path_copied")),children:[f.jsx(bi,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.copy_path")})]}):null,f.jsxs(Ne,{onSelect:()=>void a(e.id,S("ui.library.menu.asset_id_copied")),children:[f.jsx(Xi,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.copy_asset_id")})]}),c?f.jsxs(Ne,{onSelect:()=>{e.ref.path&&window.api.showItemInFolder(e.ref.path)},children:[f.jsx(mn,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.reveal_in_finder")})]}):f.jsxs(Ne,{onSelect:()=>void d(),children:[f.jsx(rt,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.download")})]}),e.ref.type==="artifact"&&f.jsxs(Ne,{onSelect:()=>void d(),children:[f.jsx(rt,{"aria-hidden":"true"}),f.jsx("span",{children:S("ui.library.menu.save_a_copy")})]})]})]})},jr={image:wi,audio:vi,video:yi,pdf:At,pptx:nr,docx:At,markdown:At,html:zn,spreadsheet:ir,text:At,code:zn,other:ps};function Fr(e){return jr[e]??ps}function dt({kind:e,size:n=20,className:t}){const s=Fr(e);return f.jsx(s,{size:n,"aria-hidden":"true",className:t})}const xs=({group:e})=>f.jsx(st,{variant:e==="generated"?"accent":"neutral",children:S(Zt(e))}),_s=({asset:e,large:n=!1})=>{const[t,s]=ki("300px"),i=e.kind==="image"&&e.exists&&s,r=et(e.id,"thumbnail",i),o=Nn(r.bytes,r.mimeType);return f.jsx("div",{ref:t,className:qe("relative flex shrink-0 items-center justify-center overflow-hidden bg-canvas",n?"aspect-[16/10] w-full":"h-24 w-32"),children:o?f.jsx("img",{src:o,alt:"",loading:"lazy",decoding:"async",className:"size-full object-cover"}):f.jsx(dt,{kind:e.kind,size:n?28:22,className:"text-ink-dim"})})},Cr=()=>f.jsx("span",{className:"absolute top-1.5 left-1.5 flex size-5 items-center justify-center rounded-full bg-elevated",title:S("ui.library.card.highlighted"),children:f.jsx(xt,{size:12,"aria-hidden":"true",className:"fill-current text-accent"})}),Ps=({asset:e})=>{if(e.tags.length===0)return null;const n=e.tags.slice(0,2);return f.jsxs("div",{className:"flex flex-wrap items-center gap-1",children:[n.map(t=>f.jsx(st,{variant:"outline",children:t.name},t.id)),e.tags.length>n.length&&f.jsxs("span",{className:"text-meta text-ink-dim",children:["+",e.tags.length-n.length]})]})},Mr=({asset:e,selected:n,...t})=>f.jsxs("article",{"data-library-card-id":e.id,"data-glass-block":"",className:qe("group relative flex flex-col overflow-hidden rounded-lg border border-hairline bg-surface",n&&Sn),children:[f.jsxs("button",{type:"button",onClick:()=>t.onSelect(e.id),"aria-pressed":n,className:"flex w-full flex-col text-left focus-visible:outline-offset-2",children:[f.jsxs("div",{className:"relative",children:[f.jsx(_s,{asset:e,large:!0}),e.highlighted&&f.jsx(Cr,{}),f.jsx("div",{className:"absolute top-1.5 right-1.5"})]}),f.jsxs("div",{className:"flex w-full flex-col gap-1 p-3",children:[f.jsx("span",{className:"line-clamp-1 text-body-sm font-medium text-ink",children:St(e)}),f.jsx("span",{className:"line-clamp-1 text-meta text-ink-dim",children:vs(e)}),f.jsxs("div",{className:"flex items-center gap-2 text-meta text-ink-muted",children:[f.jsx("span",{className:"truncate",children:e.kind}),f.jsx("span",{"aria-hidden":"true",children:"·"}),f.jsx("span",{children:Mn(e.size_bytes)}),e.duration_s?f.jsxs(f.Fragment,{children:[f.jsx("span",{"aria-hidden":"true",children:"·"}),f.jsx("span",{children:pr(e.duration_s)})]}):null]}),f.jsx(Ps,{asset:e}),e.occurrences[0]?.session_title&&f.jsxs("span",{className:"flex min-w-0 items-center gap-1 text-meta text-ink-dim",children:[f.jsx(zt,{size:12,"aria-hidden":"true"}),f.jsx("span",{className:"truncate",children:e.occurrences[0].session_title})]}),f.jsxs("div",{className:"flex items-center justify-between gap-2 pt-1",children:[f.jsx(xs,{group:e.origin_group}),e.session_count>1&&f.jsx("span",{className:"text-meta text-ink-dim",children:S("ui.library.card.conversations",{count:e.session_count})})]})]})]}),f.jsx("div",{className:"invisible absolute top-1.5 right-1.5 group-focus-within:visible group-hover:visible [@media(pointer:coarse)]:visible",children:f.jsx(An,{asset:e,onAsk:()=>t.onAsk(e),onEditMetadata:()=>t.onEditMetadata(e),onEditTags:()=>t.onEditTags(e),onToggleFavorite:()=>t.onToggleFavorite(e),onOpenConversation:t.onOpenConversation,onFilterSession:t.onFilterSession,triggerClassName:"bg-elevated"})})]}),Nr=({asset:e,selected:n,...t})=>f.jsxs("article",{"data-library-card-id":e.id,"data-glass-block":"",className:qe("group relative flex items-center gap-3 rounded-md border border-hairline bg-surface px-3 py-2",n&&Sn),children:[f.jsxs("button",{type:"button",onClick:()=>t.onSelect(e.id),"aria-pressed":n,className:"flex min-w-0 flex-1 items-center gap-3 text-left",children:[f.jsx(_s,{asset:e}),f.jsxs("div",{className:"flex min-w-0 flex-1 flex-col gap-0.5",children:[f.jsxs("span",{className:"flex items-center gap-1.5 truncate text-body-sm font-medium text-ink",children:[e.highlighted&&f.jsx(xt,{size:12,"aria-hidden":"true",className:"shrink-0 fill-current text-accent"}),St(e)]}),f.jsx("span",{className:"truncate text-meta text-ink-dim",children:vs(e)})]}),f.jsxs("div",{className:"flex shrink-0 items-center gap-3 text-meta text-ink-muted",children:[f.jsx(Ps,{asset:e}),f.jsx("span",{children:e.kind}),f.jsx("span",{children:Mn(e.size_bytes)}),f.jsx(xs,{group:e.origin_group})]})]}),f.jsx(An,{asset:e,onAsk:()=>t.onAsk(e),onEditMetadata:()=>t.onEditMetadata(e),onEditTags:()=>t.onEditTags(e),onToggleFavorite:()=>t.onToggleFavorite(e),onOpenConversation:t.onOpenConversation,onFilterSession:t.onFilterSession})]}),Ar=({assets:e,selectedId:n,view:t,hasMore:s,loadingMore:i,onLoadMore:r,...o})=>{const l=D.useRef(null);return D.useEffect(()=>{const a=l.current;if(!a||!s)return;const d=new IntersectionObserver(c=>{c.some(h=>h.isIntersecting)&&r()},{rootMargin:"600px 0px"});return d.observe(a),()=>d.disconnect()},[s,r,e.length]),f.jsxs("div",{className:"flex flex-col gap-4",children:[t==="grid"?f.jsx("div",{className:"grid grid-cols-[repeat(auto-fill,minmax(208px,1fr))] gap-4",children:e.map(a=>f.jsx(Mr,{asset:a,selected:a.id===n,...o},a.id))}):f.jsx("div",{className:"flex flex-col gap-1.5",children:e.map(a=>f.jsx(Nr,{asset:a,selected:a.id===n,...o},a.id))}),f.jsxs("div",{ref:l,className:"flex justify-center py-6",children:[i&&f.jsxs("span",{className:"flex items-center gap-2 text-body-sm text-ink-muted",children:[f.jsx(_t,{size:14,"aria-hidden":"true",className:"motion-safe:animate-spin"}),S("ui.library.grid.loading_more")]}),!i&&s&&f.jsx(K,{variant:"ghost",size:"sm",onClick:r,children:S("ui.library.grid.load_more")})]})]})},$r=({view:e})=>e==="list"?f.jsx("div",{className:"flex flex-col gap-1.5","aria-hidden":"true","data-library-skeleton":"",children:Array.from({length:8},(n,t)=>f.jsxs("div",{className:"flex h-28 items-center gap-3 rounded-md border border-hairline bg-surface px-3",children:[f.jsx("div",{className:"h-24 w-32 rounded-sm bg-sunken"}),f.jsxs("div",{className:"flex flex-1 flex-col gap-2",children:[f.jsx("div",{className:"h-3 w-1/3 rounded-xs bg-sunken"}),f.jsx("div",{className:"h-3 w-1/2 rounded-xs bg-sunken"})]})]},t))}):f.jsx("div",{className:"grid grid-cols-[repeat(auto-fill,minmax(208px,1fr))] gap-4","aria-hidden":"true","data-library-skeleton":"",children:Array.from({length:12},(n,t)=>f.jsxs("div",{className:"flex flex-col overflow-hidden rounded-lg border border-hairline bg-surface",children:[f.jsx("div",{className:"aspect-[16/10] bg-sunken"}),f.jsxs("div",{className:"flex flex-col gap-2 p-3",children:[f.jsx("div",{className:"h-3 w-2/3 rounded-xs bg-sunken"}),f.jsx("div",{className:"h-3 w-1/2 rounded-xs bg-sunken"}),f.jsx("div",{className:"h-3 w-1/3 rounded-xs bg-sunken"})]})]},t))}),Er=[{key:"highlighted",labelKey:"ui.library.status.highlighted"},{key:"unorganized",labelKey:"ui.library.status.unorganized"},{key:"favorite",labelKey:"ui.library.status.favorites"}],Ge=({label:e,count:n,active:t,onPress:s,icon:i,indent:r=!1})=>f.jsxs("button",{type:"button",onClick:s,"aria-pressed":t,className:qe("flex h-7 w-full items-center gap-2 rounded-md px-2 text-left text-body-sm",r&&"pl-6",t?Sn:"text-ink-muted hover:bg-row-hover hover:text-ink"),children:[i,f.jsx("span",{className:"min-w-0 flex-1 truncate",children:e}),n!==void 0&&f.jsx("span",{className:"text-meta tabular-nums text-ink-dim",children:n})]}),ht=({label:e,children:n})=>f.jsxs("section",{className:"flex flex-col gap-1",children:[f.jsx("h3",{className:"px-2 text-meta font-medium tracking-wide text-ink-dim",children:e}),f.jsx("div",{className:"flex flex-col gap-0.5",children:n})]}),Rr=({filters:e,onChange:n,counts:t,tags:s,total:i,scopeTotal:r})=>{const o=fr(s),l=t?.category??{},a=c=>n({...e,...c}),d=!!(e.category||e.originGroup||e.status||e.tag||e.session||e.highlighted);return f.jsxs("div",{"data-lo-sidebar-edge-cues":!0,className:"flex h-full flex-col gap-5 overflow-y-auto px-2 py-4","data-library-filter-rail":"",children:[d&&f.jsxs(K,{variant:"ghost",size:"sm",className:"justify-start",onClick:()=>n({...e,category:void 0,originGroup:void 0,status:void 0,tag:void 0,session:void 0,highlighted:!1}),children:[f.jsx(ot,{"aria-hidden":"true"}),S("ui.library.filter.clear_filters")]}),e.session&&f.jsxs("div",{className:"flex items-center gap-2 rounded-md bg-sunken px-2 py-1.5 text-meta text-ink-muted",children:[f.jsx("span",{className:"min-w-0 flex-1 truncate",children:S("ui.library.filter.one_conversation")}),f.jsx(K,{variant:"ghost",size:"icon-sm","aria-label":S("ui.library.filter.clear_conversation"),onClick:()=>a({session:void 0}),children:f.jsx(ot,{"aria-hidden":"true"})})]}),f.jsxs(ht,{label:S("ui.library.filter.scope"),children:[f.jsx(Ge,{label:S("ui.library.filter.scope_final"),active:e.scope==="final",onPress:()=>a({scope:"final"})}),f.jsx(Ge,{label:S("ui.library.filter.scope_all"),count:r??void 0,active:e.scope==="all",onPress:()=>a({scope:"all"})})]}),f.jsxs(ht,{label:S("ui.library.filter.categories"),children:[f.jsx(Ge,{label:S("ui.library.category.all"),count:i,active:!e.category,onPress:()=>a({category:void 0})}),yn.map(c=>f.jsx(Ge,{label:S(c.labelKey),count:l[c.key]??0,active:e.category===c.key,onPress:()=>a({category:e.category===c.key?void 0:c.key}),icon:f.jsx(dt,{kind:c.iconKind,size:14,className:"text-ink-dim"})},c.key)),Object.keys(l).filter(c=>!yn.some(h=>h.key===c)).sort().map(c=>f.jsx(Ge,{label:c,count:l[c],active:e.category===c,onPress:()=>a({category:e.category===c?void 0:c}),icon:f.jsx(Bn,{size:14,"aria-hidden":"true"})},c))]}),f.jsx(ht,{label:S("ui.library.filter.status"),children:Er.map(c=>f.jsx(Ge,{label:S(c.labelKey),active:Wn(e,c.key),onPress:()=>a({status:Wn(e,c.key)?void 0:c.key}),icon:c.key==="favorite"||c.key==="highlighted"?f.jsx(xt,{size:14,"aria-hidden":"true"}):void 0},c.key))}),f.jsx(ht,{label:S("ui.library.filter.source"),children:ar.filter(c=>e.originGroup===c||e.scope==="all"||(t?.origin_group?.[c]??0)>0).map(c=>f.jsx(Ge,{label:S(Zt(c)),count:t?.origin_group?.[c]??0,active:e.originGroup===c,onPress:()=>a({originGroup:e.originGroup===c?void 0:c})},c))}),o.length>0&&f.jsx(ht,{label:S("ui.library.filter.tags"),children:o.map(c=>f.jsxs("div",{className:"flex flex-col gap-0.5",children:[f.jsx("span",{className:"px-2 pt-1 text-meta text-ink-dim",children:c.category}),c.tags.map(h=>f.jsx(Ge,{label:h.name,count:h.count??0,active:e.tag===h.id,onPress:()=>a({tag:e.tag===h.id?void 0:h.id}),icon:f.jsx(Bn,{size:13,"aria-hidden":"true"}),indent:!0},h.id))]},c.category))}),e.tag&&f.jsx(st,{variant:"neutral",children:S("ui.library.filter.tag_mode",{mode:e.tagMode.toUpperCase()})})]})},Ir=new Set(["image/png","image/jpeg","image/gif","image/webp"]),zr=1e6;function Lr(e){let n="";for(let s=0;s<e.length;s+=32768)n+=String.fromCharCode(...e.subarray(s,Math.min(s+32768,e.length)));return btoa(n)}function Dr(e){const n=e.ref.display_path||e.ref.path||(e.ref.digest?`attachment digest ${e.ref.digest}`:e.id);return`${St(e)} (${n})`}const Br=({asset:e,focusSignal:n,compact:t=!1})=>{Cn();const s=jn(),i=D.useRef(null),r=()=>{const k=i.current;k&&(k.style.height="24px",k.style.height=`${Math.min(72,Math.max(24,k.scrollHeight))}px`)},[o,l]=D.useState(""),[a,d]=D.useState(!1),[c,h]=D.useState({}),[u,g]=D.useState(null),p=c[e.id]??null,b=u===e.id,_=xr(),y=_r(),w=et(e.id,"content",e.kind==="image");D.useEffect(()=>{l("")},[e.id]),D.useEffect(()=>{n!==0&&i.current?.focus()},[n]);const x=async()=>{const k=o.trim();if(!(!k||a)){d(!0);try{const T=xi.getState();let N=e.chat?.session_id??p??null;if(!N&&(N=await T.createSession(T.cwd||"~"),!N))throw new Error(T.error??S("ui.library.composer.could_not_start"));const M={op:"sessions.message",sessionId:N,requestId:crypto.randomUUID(),text:`${k}
28
28
 
29
- ${Dr(e)}`},F=e.ref.content_type||w.mimeType;if(e.kind==="image"&&w.bytes&&Ir.has(F)){const j=Lr(w.bytes);j.length<=zr&&(M.images=[{data_b64:j,mime_type:F}])}if(await Ce(M),l(""),!e.chat&&!p)try{await _.mutateAsync({id:e.id,sessionId:N})}catch(j){h(E=>({...E,[e.id]:N})),g(e.id),je(j instanceof Error&&j.message?S("ui.library.composer.link_failed",{message:j.message}):S("ui.library.composer.link_failed_short"));return}if(p)try{await _.mutateAsync({id:e.id,sessionId:N}),h(j=>{const E={...j};return delete E[e.id],E}),g(null)}catch{g(e.id),je(S("ui.library.composer.link_failed_short"));return}await pt(s,N)}catch(T){je(T instanceof Error&&T.message?T.message:S("ui.library.composer.not_sent"))}finally{d(!1)}}},P=e.chat,v=async()=>{const k=p??e.chat?.session_id;if(k)try{await _.mutateAsync({id:e.id,sessionId:k}),h(T=>{const N={...T};return delete N[e.id],N}),g(null)}catch{je(S("ui.library.composer.link_failed_short"))}};return f.jsxs("div",{className:qe("mx-auto flex w-[min(calc(100%-24px),720px)] flex-col justify-end gap-2 pb-4",t?"h-38":"h-44"),"data-library-composer":"",children:[b&&p&&f.jsxs("div",{className:"flex flex-wrap items-center gap-2 rounded-md bg-sunken px-2 py-1 text-meta text-ink","data-library-link-failed":"",children:[f.jsx("span",{className:"min-w-0 flex-1",children:S("ui.library.composer.message_sent_link_failed")}),f.jsx(K,{variant:"ghost",size:"sm",onClick:()=>void v(),children:S("ui.library.composer.retry_link")}),f.jsx(K,{variant:"ghost",size:"sm",onClick:()=>void pt(s,p),children:S("ui.library.composer.open_chat")})]}),P&&f.jsxs("div",{className:"flex items-center gap-2 text-meta text-ink-muted",children:[f.jsx(ti,{size:13,"aria-hidden":"true"}),f.jsx("span",{className:"min-w-0 flex-1 truncate",children:S("ui.library.composer.chat_about",{title:P.title||P.session_id})}),f.jsx(K,{variant:"ghost",size:"sm",onClick:()=>void pt(s,P.session_id),children:S("ui.library.composer.open_chat")}),f.jsx(K,{variant:"ghost",size:"icon-sm","aria-label":S("ui.library.composer.unlink"),onClick:()=>y.mutate({id:e.id}),children:f.jsx(ot,{"aria-hidden":"true"})})]}),f.jsxs("div",{"data-glass-region":"composer",className:qe("flex items-end gap-2 rounded-lg bg-elevated p-2","focus-within:outline-2 focus-within:outline-offset-2 focus-within:outline-accent"),children:[f.jsx(Di,{ref:i,rows:1,value:o,onChange:k=>{l(k.target.value),r()},onKeyDown:k=>{k.key==="Enter"&&!k.shiftKey&&(k.preventDefault(),x())},placeholder:P?S("ui.library.composer.continue_placeholder"):S("ui.library.composer.ask_placeholder"),"aria-label":S("ui.library.composer.label"),className:"h-6 min-h-6 max-h-18 resize-none overflow-y-auto border-0 bg-transparent px-0 py-0 text-body leading-6 shadow-none focus-visible:outline-none"}),f.jsx(K,{variant:"primary",size:"icon-sm",disabled:!o.trim()||a,"aria-label":S("ui.library.composer.send"),onClick:()=>void x(),children:a?f.jsx(_t,{"aria-hidden":"true",className:"motion-safe:animate-spin"}):f.jsx(Hi,{"aria-hidden":"true"})})]})]})};function Or(e,n,t){return{id:`library:${e.id}`,title:e.name.trim()||e.derived_name||e.ref.path||e.id,path:e.ref.path??"",content:n,type:"markdown",readMtimeMs:t??void 0,sizeBytes:e.size_bytes,availability:"present"}}async function Ss(e){const n=e instanceof Uint8Array?e:new Uint8Array(e),t=new DataView(n.buffer,n.byteOffset,n.byteLength),s=101010256,i=101075792,r=117853008;let o=-1;const l=Math.max(0,n.length-65557);for(let p=n.length-22;p>=l;p--)if(t.getUint32(p,!0)===s){o=p;break}if(o===-1)throw new Error("Not a valid ZIP file: EOCD not found");let a,d;const c=o-20;if(c>=0&&t.getUint32(c,!0)===r){const p=Number(t.getBigUint64(c+8,!0));if(t.getUint32(p,!0)!==i)throw new Error("Invalid ZIP64 end record");a=Number(t.getBigUint64(p+48,!0)),d=Number(t.getBigUint64(p+32,!0))}else a=t.getUint32(o+16,!0),d=t.getUint16(o+8,!0);if(a+4>n.length)throw new Error("ZIP central directory offset is outside the file");const h=33639248,u={};let g=a;for(let p=0;p<d&&!(g+46>n.length||t.getUint32(g,!0)!==h);p++){const b=t.getUint16(g+10,!0);let _=t.getUint32(g+20,!0),y=t.getUint32(g+24,!0);const w=t.getUint16(g+28,!0),x=t.getUint16(g+30,!0),P=t.getUint16(g+32,!0);let v=t.getUint32(g+42,!0);const k=Gr(n,g+46,w);if(_===4294967295||y===4294967295||v===4294967295){const j=g+46+w,E=j+x;let L=j;for(;L+4<=E;){const z=t.getUint16(L,!0),Q=t.getUint16(L+2,!0);if(z===1){let G=L+4;y===4294967295&&G+8<=E&&(y=Number(t.getBigUint64(G,!0)),G+=8),_===4294967295&&G+8<=E&&(_=Number(t.getBigUint64(G,!0)),G+=8),v===4294967295&&G+8<=E&&(v=Number(t.getBigUint64(G,!0)));break}L+=4+Q}}if(g+=46+w+x+P,k.endsWith("/")||b!==0&&b!==8||v+30>n.length)continue;const T=t.getUint16(v+26,!0),N=t.getUint16(v+28,!0),M=v+30+T+N;if(M+_>n.length)continue;const F=n.subarray(M,M+_);try{u[k]=b===0?F.slice():await Ur(F)}catch(j){console.warn(`[zip.js] Failed to decompress "${k}":`,j.message)}}return u}async function Ur(e){const n=new DecompressionStream("deflate-raw"),t=n.writable.getWriter(),s=n.readable.getReader();t.write(e),t.close();const i=[];let r=0;for(;;){const{value:a,done:d}=await s.read();if(d)break;i.push(a),r+=a.length}const o=new Uint8Array(r);let l=0;for(const a of i)o.set(a,l),l+=a.length;return o}function Gr(e,n,t){return new TextDecoder().decode(e.subarray(n,n+t))}function _e(e){return new DOMParser().parseFromString(e,"application/xml")}function de(e,n){if(!e)return[];const t=[],s=e.getElementsByTagName("*");for(let i=0;i<s.length;i++)s[i].localName===n&&t.push(s[i]);return t}function m(e,n){return de(e,n)[0]??null}function B(e,n,t=null){if(!e)return t;const s=e.getAttribute(n);return s!==null?s:t}function C(e,n,t=0){const s=B(e,n);return s!==null?parseInt(s,10):t}function Ie(e,n,t){return Math.max(n,Math.min(t,e))}const bt=12700,Wr=Object.freeze(Object.defineProperty({__proto__:null,EMU_PER_PT:bt,attr:B,attrInt:C,clamp:Ie,g1:m,gtn:de,parseXml:_e},Symbol.toStringTag,{value:"Module"}));function qr(e){if(!e)return{colors:{},majorFont:"Calibri Light",minorFont:"Calibri"};const n=m(e,"clrScheme"),t={};if(n){const o=["dk1","lt1","dk2","lt2","accent1","accent2","accent3","accent4","accent5","accent6","hlink","folHlink"];for(const l of o){const a=m(n,l);if(!a)continue;const d=m(a,"srgbClr"),c=m(a,"sysClr");d?t[l]=d.getAttribute("val")||"":c&&(t[l]=c.getAttribute("lastClr")||"")}}const s=m(e,"fontScheme");let i="Calibri Light",r="Calibri";if(s){const o=m(s,"majorFont"),l=m(s,"minorFont");if(o){const a=m(o,"latin");a&&(i=a.getAttribute("typeface")||i)}if(l){const a=m(l,"latin");a&&(r=a.getAttribute("typeface")||r)}}return{colors:t,majorFont:i,minorFont:r}}function Kr(e){if(!e)return{};const n=m(e,"clrMap");if(!n)return{};const t={},s=["bg1","tx1","bg2","tx2","accent1","accent2","accent3","accent4","accent5","accent6","hlink","folHlink"];for(const i of s){const r=n.getAttribute(i);r&&(t[i]=r)}return t}function Xr(e,n){const t={...e.colors};for(const[s,i]of Object.entries(n))t[i]!==void 0&&(t[s]=t[i]);return t}const it={calibri:{google:"Carlito",weights:[400,700],generic:"sans-serif"},"calibri light":{google:"Carlito",weights:[300],generic:"sans-serif"},"calibri (body)":{google:"Carlito",weights:[400,700],generic:"sans-serif"},cambria:{google:"Caladea",weights:[400,700],generic:"serif"},"cambria math":{google:"Caladea",weights:[400],generic:"serif"},aptos:{google:"Inter",weights:[300,400,600,700],generic:"sans-serif"},"aptos display":{google:"Inter",weights:[700,800],generic:"sans-serif"},"aptos narrow":{google:"Inter",weights:[400,700],generic:"sans-serif"},"aptos serif":{google:"Lora",weights:[400,700],generic:"serif"},"aptos mono":{google:"Roboto Mono",weights:[400,700],generic:"monospace"},arial:{google:null,weights:[],generic:"sans-serif"},"arial black":{google:null,weights:[],generic:"sans-serif"},"times new roman":{google:null,weights:[],generic:"serif"},times:{google:null,weights:[],generic:"serif"},helvetica:{google:null,weights:[],generic:"sans-serif"},verdana:{google:null,weights:[],generic:"sans-serif"},tahoma:{google:null,weights:[],generic:"sans-serif"},"trebuchet ms":{google:null,weights:[],generic:"sans-serif"},georgia:{google:null,weights:[],generic:"serif"},"courier new":{google:null,weights:[],generic:"monospace"},courier:{google:null,weights:[],generic:"monospace"},impact:{google:null,weights:[],generic:"sans-serif"},"comic sans ms":{google:null,weights:[],generic:"cursive"},palatino:{google:null,weights:[],generic:"serif"},"lucida console":{google:null,weights:[],generic:"monospace"},"lucida sans unicode":{google:null,weights:[],generic:"sans-serif"},"arial narrow":{google:"Arimo",weights:[400,700],generic:"sans-serif"},candara:{google:"Nunito",weights:[300,400,700],generic:"sans-serif"},consolas:{google:"Roboto Mono",weights:[400,700],generic:"monospace"},constantia:{google:"Libre Baskerville",weights:[400,700],generic:"serif"},corbel:{google:"Lato",weights:[300,400,700],generic:"sans-serif"},"franklin gothic medium":{google:"Libre Franklin",weights:[500],generic:"sans-serif"},"franklin gothic book":{google:"Libre Franklin",weights:[400],generic:"sans-serif"},"franklin gothic heavy":{google:"Libre Franklin",weights:[800],generic:"sans-serif"},"gill sans mt":{google:"Quattrocento Sans",weights:[400,700],generic:"sans-serif"},"gill sans":{google:"Quattrocento Sans",weights:[400,700],generic:"sans-serif"},"century gothic":{google:"Josefin Sans",weights:[300,400,700],generic:"sans-serif"},"century schoolbook":{google:"EB Garamond",weights:[400,700],generic:"serif"},garamond:{google:"EB Garamond",weights:[400,700],generic:"serif"},"palatino linotype":{google:"EB Garamond",weights:[400,700],generic:"serif"},"book antiqua":{google:"EB Garamond",weights:[400,700],generic:"serif"},rockwell:{google:"Roboto Slab",weights:[400,700],generic:"serif"},"rockwell extra bold":{google:"Roboto Slab",weights:[800],generic:"serif"},"segoe ui":{google:"Inter",weights:[300,400,600,700],generic:"sans-serif"},"segoe ui light":{google:"Inter",weights:[300],generic:"sans-serif"},"segoe ui semibold":{google:"Inter",weights:[600],generic:"sans-serif"},"segoe ui semilight":{google:"Inter",weights:[350],generic:"sans-serif"},"helvetica neue":{google:"Nunito Sans",weights:[300,400,700],generic:"sans-serif"},"myriad pro":{google:"Source Sans 3",weights:[300,400,600,700],generic:"sans-serif"},futura:{google:"Josefin Sans",weights:[300,400,700],generic:"sans-serif"},"tw cen mt":{google:"Pathway Gothic One",weights:[400],generic:"sans-serif"},"bookman old style":{google:"Libre Baskerville",weights:[400,700],generic:"serif"},frutiger:{google:"Raleway",weights:[300,400,700],generic:"sans-serif"},optima:{google:"Questrial",weights:[400],generic:"sans-serif"},univers:{google:"Nunito Sans",weights:[300,400,700],generic:"sans-serif"},"open sans":{google:"Open Sans",weights:[300,400,600,700],generic:"sans-serif"},lato:{google:"Lato",weights:[300,400,700],generic:"sans-serif"},montserrat:{google:"Montserrat",weights:[300,400,600,700],generic:"sans-serif"},raleway:{google:"Raleway",weights:[300,400,700],generic:"sans-serif"},roboto:{google:"Roboto",weights:[300,400,700],generic:"sans-serif"},"roboto mono":{google:"Roboto Mono",weights:[400,700],generic:"monospace"},"roboto slab":{google:"Roboto Slab",weights:[300,400,700],generic:"serif"},oswald:{google:"Oswald",weights:[400,700],generic:"sans-serif"},"playfair display":{google:"Playfair Display",weights:[400,700],generic:"serif"},merriweather:{google:"Merriweather",weights:[300,400,700],generic:"serif"},nunito:{google:"Nunito",weights:[300,400,700],generic:"sans-serif"},"nunito sans":{google:"Nunito Sans",weights:[300,400,700],generic:"sans-serif"},poppins:{google:"Poppins",weights:[300,400,600,700],generic:"sans-serif"},inter:{google:"Inter",weights:[300,400,600,700],generic:"sans-serif"},"work sans":{google:"Work Sans",weights:[300,400,600,700],generic:"sans-serif"},"dm sans":{google:"DM Sans",weights:[300,400,500,700],generic:"sans-serif"},"dm serif display":{google:"DM Serif Display",weights:[400],generic:"serif"},ubuntu:{google:"Ubuntu",weights:[300,400,700],generic:"sans-serif"},"ubuntu mono":{google:"Ubuntu Mono",weights:[400,700],generic:"monospace"},"source sans pro":{google:"Source Sans 3",weights:[300,400,600,700],generic:"sans-serif"},"source serif pro":{google:"Source Serif 4",weights:[300,400,700],generic:"serif"},"source code pro":{google:"Source Code Pro",weights:[400,700],generic:"monospace"},"exo 2":{google:"Exo 2",weights:[300,400,700],generic:"sans-serif"},"titillium web":{google:"Titillium Web",weights:[300,400,600,700],generic:"sans-serif"},"fira sans":{google:"Fira Sans",weights:[300,400,600,700],generic:"sans-serif"},"fira mono":{google:"Fira Mono",weights:[400,700],generic:"monospace"},"josefin sans":{google:"Josefin Sans",weights:[300,400,700],generic:"sans-serif"},"josefin slab":{google:"Josefin Slab",weights:[300,400,700],generic:"serif"},barlow:{google:"Barlow",weights:[300,400,600,700],generic:"sans-serif"},"barlow condensed":{google:"Barlow Condensed",weights:[300,400,600,700],generic:"sans-serif"},cabin:{google:"Cabin",weights:[400,700],generic:"sans-serif"},"crimson text":{google:"Crimson Text",weights:[400,700],generic:"serif"},"libre baskerville":{google:"Libre Baskerville",weights:[400,700],generic:"serif"},"libre franklin":{google:"Libre Franklin",weights:[400,700],generic:"sans-serif"},"eb garamond":{google:"EB Garamond",weights:[400,700],generic:"serif"},spectral:{google:"Spectral",weights:[300,400,700],generic:"serif"},arvo:{google:"Arvo",weights:[400,700],generic:"serif"},"pt sans":{google:"PT Sans",weights:[400,700],generic:"sans-serif"},"pt serif":{google:"PT Serif",weights:[400,700],generic:"serif"},"pt mono":{google:"PT Mono",weights:[400],generic:"monospace"},karla:{google:"Karla",weights:[300,400,700],generic:"sans-serif"},mukta:{google:"Mukta",weights:[300,400,700],generic:"sans-serif"},hind:{google:"Hind",weights:[300,400,700],generic:"sans-serif"},"noto sans":{google:"Noto Sans",weights:[300,400,700],generic:"sans-serif"},"noto serif":{google:"Noto Serif",weights:[300,400,700],generic:"serif"}},Ot=new Set,yt=new Map,Ut=new Set;let qn=null,hn=null;function Vr(){return hn||(qn=typeof OffscreenCanvas<"u"?new OffscreenCanvas(300,10):Object.assign(document.createElement("canvas"),{width:300,height:10}),hn=qn.getContext("2d")),hn}const Kn="mmmmmmmmmmlllllllllliiiiiiiiiixxxxxxxxxx",Hr=[20,40];function Ts(e){if(Ut.has(e))return!0;if(typeof document<"u"&&document.fonts&&document.fonts.check(`16px "${e}"`))return Ut.add(e),!0;try{const n=Vr(),t=["monospace","serif"];for(const s of Hr)for(const i of t){n.font=`${s}px ${i}`;const r=n.measureText(Kn).width;n.font=`${s}px "${e}", ${i}`;const o=n.measureText(Kn).width;if(Math.abs(o-r)>.5)return Ut.add(e),!0}}catch{}return!1}async function vn(e,n,t={}){let s;if(typeof n=="string"||n instanceof URL)s=n.toString();else if(n instanceof File||n instanceof Blob)s=await n.arrayBuffer();else if(n instanceof Uint8Array)s=n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength);else if(n instanceof ArrayBuffer)s=n;else throw new TypeError("registerFont: unsupported source type. Expected string, URL, File, Blob, ArrayBuffer, or Uint8Array.");const i={weight:"normal",style:"normal",...t},r=new FontFace(e,typeof s=="string"?`url(${s})`:s,i);await r.load(),document.fonts.add(r);const o=yt.get(e)??[];o.push(r),yt.set(e,o),Ot.add(e),Ut.add(e);const l=e.toLowerCase().trim();return it[l]?it[l]._custom=!0:it[l]={google:null,weights:[],generic:"sans-serif",_custom:!0},console.log(`[pptx-canvas-renderer] Custom font registered: "${e}" (${i.weight} ${i.style})`),r}async function Yr(e){const n=[];for(const[t,s]of Object.entries(e))if(typeof s=="string")n.push(vn(t,s));else if(Array.isArray(s))for(const i of s){const{url:r,...o}=i;n.push(vn(t,r,o))}await Promise.all(n)}function Qr(e,n){if(!e)return[];const t=m(e,"embeddedFontLst");if(!t)return[];const s=[];for(const i of t.children){if(i.localName!=="embeddedFont")continue;const r=m(i,"font"),o=r?r.getAttribute("typeface"):null;if(!o)continue;const l={regular:!1,bold:!1,italic:!1,boldItalic:!1},a=[];for(const d of["regular","bold","italic","boldItalic"]){const c=m(i,d);if(!c)continue;const h=c.getAttribute("r:id")||c.getAttribute("id"),u=n?.[h];u&&(a.push(u.fullPath),l[d]=!0)}s.push({family:o,hasRegular:l.regular,hasBold:l.bold,hasItalic:l.italic,hasBoldItalic:l.boldItalic,paths:a,note:".fntdata files are a proprietary Microsoft format and cannot be used as web fonts directly. Use registerFont() with a compatible woff2/ttf version instead."})}return s}function Zr(e){if(!e)return"sans-serif";if(e==="+mj-lt"||e==="+mj")return"serif";if(e==="+mn-lt"||e==="+mn")return"sans-serif";if(yt.has(e))return e;const n=e.toLowerCase().trim(),t=it[n];return t?t._custom||t.google===null?e:t.google&&Ts(t.google)?t.google:t.google||e:e}function Jr(e){if(!e)return"sans-serif";const n=e.toLowerCase().trim();return it[n]?.generic??"sans-serif"}async function eo(e,n){const t=[...e];n?.majorFont&&t.push(n.majorFont),n?.minorFont&&t.push(n.minorFont);const s=new Map;for(const o of t){if(!o||o.startsWith("+")||o==="+mj-lt"||o==="+mn-lt"||o==="+mj"||o==="+mn"||yt.has(o))continue;const l=o.toLowerCase().trim(),a=it[l];let d=null,c=[400,700];if(a){if(a._custom||a.google===null)continue;d=a.google,c=a.weights.length?a.weights:[400,700]}else d=o;if(!d||Ot.has(d))continue;if(Ts(d)){Ot.add(d);continue}const h=s.get(d)??new Set;c.forEach(u=>h.add(u)),s.set(d,h)}if(s.size===0)return;for(const o of s.keys())Ot.add(o);const r=`https://fonts.googleapis.com/css2?${[...s.entries()].map(([o,l])=>{const a=[...l].sort((c,h)=>c-h),d=[...a.map(c=>`0,${c}`),...a.map(c=>`1,${c}`)].join(";");return`family=${encodeURIComponent(`${o}:ital,wght@${d}`)}`}).join("&")}&display=swap`;try{const o=document.createElement("link");o.rel="stylesheet",o.href=r,document.head.appendChild(o),await new Promise(l=>{o.onload=l,o.onerror=()=>{console.warn("[pptx-canvas-renderer] Google Fonts failed to load:",r),l()},setTimeout(l,5e3)}),document.fonts?.ready&&await Promise.race([document.fonts.ready,new Promise(l=>setTimeout(l,2e3))])}catch(o){console.warn("[pptx-canvas-renderer] Font loading error:",o)}}function to(e){const n=new Set;for(const t of e){if(!t)continue;const s=t.getElementsByTagName("*");for(let i=0;i<s.length;i++){const r=s[i],o=r.localName;if(o==="latin"||o==="ea"||o==="cs"){const l=r.getAttribute("typeface");l&&!l.startsWith("+")&&n.add(l)}}}return n}function js(e,n,t,s,i=1800,r=null){let o=i;if(r){const y=r.getAttribute("sz");y&&(o=parseInt(y,10))}if(n){const y=n.getAttribute("sz");y&&(o=parseInt(y,10))}if(e){const y=e.getAttribute("sz");y&&(o=parseInt(y,10))}let l=!1,a=!1;if(r&&(r.getAttribute("b")==="1"&&(l=!0),r.getAttribute("i")==="1"&&(a=!0)),n){const y=n.getAttribute("b"),w=n.getAttribute("i");y==="1"?l=!0:y==="0"&&(l=!1),w==="1"?a=!0:w==="0"&&(a=!1)}if(e){const y=e.getAttribute("b"),w=e.getAttribute("i");y==="1"?l=!0:y==="0"&&(l=!1),w==="1"?a=!0:w==="0"&&(a=!1)}let d=s?.minorFont??"Calibri";function c(y){if(!y)return;const w=m(y,"latin"),x=w?w.getAttribute("typeface"):y.getAttribute("typeface");if(x){if(x==="+mj-lt"||x==="+mj"){d=s?.majorFont??d;return}if(x==="+mn-lt"||x==="+mn"){d=s?.minorFont??d;return}d=x}}c(r),c(n),c(e);const h=Zr(d),u=Jr(d),g=o*127*t;return{fontStr:`${a?"italic ":""}${l?"bold":"normal"} ${g}px "${h}", ${u}`,sz:o,szPx:g,bold:l,italic:a,family:h,generic:u,rawFamily:d}}function no(){const e=[];for(const[n,t]of yt)for(const s of t)e.push({family:n,weight:s.weight,style:s.style,status:s.status});return e}function $t(e){const n=e.replace("#","");return{r:parseInt(n.slice(0,2),16),g:parseInt(n.slice(2,4),16),b:parseInt(n.slice(4,6),16)}}function Ve(e,n,t){e/=255,n/=255,t/=255;const s=Math.max(e,n,t),i=Math.min(e,n,t);let r=0,o=0;const l=(s+i)/2;if(s!==i){const a=s-i;switch(o=l>.5?a/(2-s-i):a/(s+i),s){case e:r=((n-t)/a+(n<t?6:0))/6;break;case n:r=((t-e)/a+2)/6;break;case t:r=((e-n)/a+4)/6;break}}return{h:r,l,s:o}}function We(e,n,t){if(t===0){const o=Math.round(n*255);return{r:o,g:o,b:o}}const s=n<.5?n*(1+t):n+t-n*t,i=2*n-s,r=(o,l,a)=>(a<0&&(a+=1),a>1&&(a-=1),a<1/6?o+(l-o)*6*a:a<1/2?l:a<2/3?o+(l-o)*(2/3-a)*6:o);return{r:Math.round(r(i,s,e+1/3)*255),g:Math.round(r(i,s,e)*255),b:Math.round(r(i,s,e-1/3)*255)}}const so={black:"000000",white:"FFFFFF",red:"FF0000",green:"008000",blue:"0000FF",yellow:"FFFF00",cyan:"00FFFF",magenta:"FF00FF",orange:"FFA500",purple:"800080",pink:"FFC0CB",brown:"A52A2A",gray:"808080",grey:"808080",navy:"000080",teal:"008080",maroon:"800000",olive:"808000",lime:"00FF00",aqua:"00FFFF",fuchsia:"FF00FF",silver:"C0C0C0",coral:"FF7F50",salmon:"FA8072",gold:"FFD700",khaki:"F0E68C",lavender:"E6E6FA",beige:"F5F5DC",ivory:"FFFFF0",mintcream:"F5FFFA",azure:"F0FFFF",aliceblue:"F0F8FF",ghostwhite:"F8F8FF",darkred:"8B0000",darkgreen:"006400",darkblue:"00008B",darkcyan:"008B8B",darkmagenta:"8B008B",darkorange:"FF8C00",darkgray:"A9A9A9",darkgrey:"A9A9A9",lightgray:"D3D3D3",lightgrey:"D3D3D3",lightblue:"ADD8E6",lightgreen:"90EE90",lightpink:"FFB6C1",lightyellow:"FFFFE0",lightcyan:"E0FFFF",deepskyblue:"00BFFF",royalblue:"4169E1",steelblue:"4682B4",skyblue:"87CEEB",dodgerblue:"1E90FF",cornflowerblue:"6495ED",mediumblue:"0000CD",midnightblue:"191970",indigo:"4B0082",slateblue:"6A5ACD",blueviolet:"8A2BE2",mediumpurple:"9370DB",orchid:"DA70D6",violet:"EE82EE",plum:"DDA0DD",thistle:"D8BFD8",hotpink:"FF69B4",deeppink:"FF1493",crimson:"DC143C",firebrick:"B22222",tomato:"FF6347",orangered:"FF4500",darkorange2:"FF8C00",chocolate:"D2691E",saddlebrown:"8B4513",sienna:"A0522D",tan:"D2B48C",burlywood:"DEB887",wheat:"F5DEB3",moccasin:"FFE4B5",peachpuff:"FFDAB9",papayawhip:"FFEFD5",mistyrose:"FFE4E1",linen:"FAF0E6",oldlace:"FDF5E6",floralwhite:"FFFAF0",antiquewhite:"FAEBD7",bisque:"FFE4C4",blanchedalmond:"FFEBCD",cornsilk:"FFF8DC",lemonchiffon:"FFFACD",honeydew:"F0FFF0",palegreen:"98FB98",lightseagreen:"20B2AA",mediumseagreen:"3CB371",seagreen:"2E8B57",forestgreen:"228B22",yellowgreen:"9ACD32",olivedrab:"6B8E23",greenyellow:"ADFF2F",chartreuse:"7FFF00",springgreen:"00FF7F",mediumspringgreen:"00FA9A",aquamarine:"7FFFD4",turquoise:"40E0D0",mediumturquoise:"48D1CC",paleturquoise:"AFEEEE",cadetblue:"5F9EA0",powderblue:"B0E0E6",lightsteelblue:"B0C4DE",slategray:"708090",slategrey:"708090",dimgray:"696969",dimgrey:"696969",snow:"FFFAFA",seashell:"FFF5EE",whitesmoke:"F5F5F5",gainsboro:"DCDCDC"};function io(e,n){if(!n)return e;let{r:t,g:s,b:i,a:r=1}=e;for(const o of n.children){const l=o.localName,a=parseInt(o.getAttribute("val")??"0",10);switch(l){case"lumMod":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h,Ie(c.l*d,0,1),c.s);t=h.r,s=h.g,i=h.b;break}case"lumOff":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h,Ie(c.l+d,0,1),c.s);t=h.r,s=h.g,i=h.b;break}case"tint":{const d=a/1e5;t=Math.round(t+(255-t)*(1-d)),s=Math.round(s+(255-s)*(1-d)),i=Math.round(i+(255-i)*(1-d));break}case"shade":{const d=a/1e5;t=Math.round(t*d),s=Math.round(s*d),i=Math.round(i*d);break}case"satMod":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h,c.l,Ie(c.s*d,0,1));t=h.r,s=h.g,i=h.b;break}case"satOff":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h,c.l,Ie(c.s+d,0,1));t=h.r,s=h.g,i=h.b;break}case"hueMod":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h*d%1,c.l,c.s);t=h.r,s=h.g,i=h.b;break}case"hueOff":{const d=a/216e5,c=Ve(t,s,i),h=We(((c.h+d)%1+1)%1,c.l,c.s);t=h.r,s=h.g,i=h.b;break}case"alpha":{r=a/1e5;break}case"alphaOff":{r=Ie(r+a/1e5,0,1);break}case"alphaMod":{r=Ie(r*a/1e5,0,1);break}case"inv":{t=255-t,s=255-s,i=255-i;break}case"gray":{t=s=i=Math.round(.2126*t+.7152*s+.0722*i);break}case"comp":{const d=Ve(t,s,i),c=We((d.h+.5)%1,d.l,d.s);t=c.r,s=c.g,i=c.b;break}}}return{r:Ie(t,0,255),g:Ie(s,0,255),b:Ie(i,0,255),a:r}}function ye(e,n){if(!e)return null;const t=e.localName;let s=null,i=1;if(t==="srgbClr"){const r=e.getAttribute("val")||"";r.length>=6&&(s=$t(r))}else if(t==="schemeClr"){const o=e.getAttribute("val")||"",l=n?.[o];l?s=$t(l):s={r:0,g:0,b:0}}else if(t==="prstClr"){const r=(e.getAttribute("val")||"").toLowerCase(),o=so[r];o&&(s=$t(o))}else if(t==="sysClr"){const r=e.getAttribute("lastClr");r?.length>=6?s=$t(r):s={r:0,g:0,b:0}}else if(t==="hslClr"){const r=C(e,"hue",0)/216e5,o=C(e,"sat",0)/1e5,l=C(e,"lum",0)/1e5;s=We(r,l,o)}else if(t==="scRgbClr"){const r=C(e,"r",0)/1e5,o=C(e,"g",0)/1e5,l=C(e,"b",0)/1e5;s={r:Math.round(Math.pow(r,1/2.2)*255),g:Math.round(Math.pow(o,1/2.2)*255),b:Math.round(Math.pow(l,1/2.2)*255)}}return s?io({...s,a:i},e):null}function ge(e,n){if(!e)return"transparent";const t=n!==void 0?n:e.a??1;return t<1?`rgba(${e.r},${e.g},${e.b},${t.toFixed(3)})`:`rgb(${e.r},${e.g},${e.b})`}function me(e){if(!e)return null;const n=["srgbClr","schemeClr","prstClr","sysClr","hslClr","scRgbClr"];for(const t of n){const s=m(e,t);if(s)return s}return null}function Xn(e,n){if(!e)return null;const t=m(e,"solidFill");if(!t)return null;const s=me(t),i=ye(s,n);return i?ge(i):null}function ro(e,n,t){const s=Xn(e,t);return s||Xn(n,t)}function Kt(e,n,t,s,i,r,o){const l=u=>u*Math.PI/180,a=(u,g=5e4)=>(o&&o[u]!==void 0?o[u]:g)/1e5,d=t+i/2,c=s+r/2,h=Math.min(i,r);switch(e.beginPath(),n){case"rect":case"snip1Rect":e.rect(t,s,i,r);break;case"roundRect":{const u=a(0,16667)*h*.5;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.arcTo(t+i,s,t+i,s+u,u),e.lineTo(t+i,s+r-u),e.arcTo(t+i,s+r,t+i-u,s+r,u),e.lineTo(t+u,s+r),e.arcTo(t,s+r,t,s+r-u,u),e.lineTo(t,s+u),e.arcTo(t,s,t+u,s,u),e.closePath();break}case"ellipse":case"oval":e.ellipse(d,c,i/2,r/2,0,0,Math.PI*2);break;case"triangle":case"isoscelesTriangle":e.moveTo(d,s),e.lineTo(t+i,s+r),e.lineTo(t,s+r),e.closePath();break;case"rightTriangle":e.moveTo(t,s),e.lineTo(t+i,s+r),e.lineTo(t,s+r),e.closePath();break;case"parallelogram":{const u=a(0,25e3),g=i*u;e.moveTo(t+g,s),e.lineTo(t+i,s),e.lineTo(t+i-g,s+r),e.lineTo(t,s+r),e.closePath();break}case"trapezoid":{const u=a(0,25e3),g=i*u;e.moveTo(t+g,s),e.lineTo(t+i-g,s),e.lineTo(t+i,s+r),e.lineTo(t,s+r),e.closePath();break}case"diamond":e.moveTo(d,s),e.lineTo(t+i,c),e.lineTo(d,s+r),e.lineTo(t,c),e.closePath();break;case"pentagon":tt(e,d,c,i/2,r/2,5,-Math.PI/2);break;case"hexagon":tt(e,d,c,i/2,r/2,6,0);break;case"heptagon":tt(e,d,c,i/2,r/2,7,-Math.PI/2);break;case"octagon":tt(e,d,c,i/2,r/2,8,Math.PI/8);break;case"decagon":tt(e,d,c,i/2,r/2,10,-Math.PI/2);break;case"dodecagon":tt(e,d,c,i/2,r/2,12,0);break;case"plus":case"cross":{const u=a(0,25e3),g=h*u,p=d-g/2,b=d+g/2,_=c-g/2,y=c+g/2;e.moveTo(p,s),e.lineTo(b,s),e.lineTo(b,_),e.lineTo(t+i,_),e.lineTo(t+i,y),e.lineTo(b,y),e.lineTo(b,s+r),e.lineTo(p,s+r),e.lineTo(p,y),e.lineTo(t,y),e.lineTo(t,_),e.lineTo(p,_),e.closePath();break}case"star4":$e(e,d,c,i/2,r/2,4,a(0,37500));break;case"star5":$e(e,d,c,i/2,r/2,5,a(0,19098),-Math.PI/2);break;case"star6":$e(e,d,c,i/2,r/2,6,a(0,28868),0);break;case"star7":$e(e,d,c,i/2,r/2,7,a(0,34601),-Math.PI/2);break;case"star8":$e(e,d,c,i/2,r/2,8,a(0,29289),Math.PI/8);break;case"star10":$e(e,d,c,i/2,r/2,10,a(0,30902),-Math.PI/2);break;case"star12":$e(e,d,c,i/2,r/2,12,a(0,37720),0);break;case"star16":$e(e,d,c,i/2,r/2,16,a(0,37500),0);break;case"star24":$e(e,d,c,i/2,r/2,24,a(0,37500),0);break;case"star32":$e(e,d,c,i/2,r/2,32,a(0,37500),0);break;case"rightArrow":{const u=a(0,5e4),g=a(1,5e4),p=(r-r*g)/2,b=t+i*(1-u);e.moveTo(t,s+p),e.lineTo(b,s+p),e.lineTo(b,s),e.lineTo(t+i,c),e.lineTo(b,s+r),e.lineTo(b,s+r-p),e.lineTo(t,s+r-p),e.closePath();break}case"leftArrow":{const u=a(0,5e4),g=a(1,5e4),p=(r-r*g)/2,b=t+i*u;e.moveTo(t+i,s+p),e.lineTo(b,s+p),e.lineTo(b,s),e.lineTo(t,c),e.lineTo(b,s+r),e.lineTo(b,s+r-p),e.lineTo(t+i,s+r-p),e.closePath();break}case"upArrow":{const u=a(0,5e4),g=a(1,5e4),p=(i-i*g)/2,b=s+r*u;e.moveTo(t+p,s+r),e.lineTo(t+p,b),e.lineTo(t,b),e.lineTo(d,s),e.lineTo(t+i,b),e.lineTo(t+i-p,b),e.lineTo(t+i-p,s+r),e.closePath();break}case"downArrow":{const u=a(0,5e4),g=a(1,5e4),p=(i-i*g)/2,b=s+r*(1-u);e.moveTo(t+p,s),e.lineTo(t+p,b),e.lineTo(t,b),e.lineTo(d,s+r),e.lineTo(t+i,b),e.lineTo(t+i-p,b),e.lineTo(t+i-p,s),e.closePath();break}case"leftRightArrow":{const u=a(0,25e3),g=a(1,5e4),p=(r-r*g)/2,b=t+i*u,_=t+i*(1-u);e.moveTo(t,c),e.lineTo(b,s),e.lineTo(b,s+p),e.lineTo(_,s+p),e.lineTo(_,s),e.lineTo(t+i,c),e.lineTo(_,s+r),e.lineTo(_,s+r-p),e.lineTo(b,s+r-p),e.lineTo(b,s+r),e.closePath();break}case"upDownArrow":{const u=a(0,25e3),g=a(1,5e4),p=(i-i*g)/2,b=s+r*u,_=s+r*(1-u);e.moveTo(d,s),e.lineTo(t+i,b),e.lineTo(t+i-p,b),e.lineTo(t+i-p,_),e.lineTo(t+i,_),e.lineTo(d,s+r),e.lineTo(t,_),e.lineTo(t+p,_),e.lineTo(t+p,b),e.lineTo(t,b),e.closePath();break}case"chevron":{const u=a(0,5e4),g=i*u;e.moveTo(t,s),e.lineTo(t+i-g,s),e.lineTo(t+i,c),e.lineTo(t+i-g,s+r),e.lineTo(t,s+r),e.lineTo(t+g,c),e.closePath();break}case"pentagon5":case"homePlate":{const u=a(0,5e4);e.moveTo(t,s),e.lineTo(t+i*(1-u),s),e.lineTo(t+i,c),e.lineTo(t+i*(1-u),s+r),e.lineTo(t,s+r),e.closePath();break}case"arc":{const u=a(0,270)*Math.PI/180,g=a(1,288e5/6e4)*Math.PI/180;e.moveTo(d,c),e.arc(d,c,Math.min(i,r)/2,u,u+g),e.closePath();break}case"blockArc":{const u=(a(0,0)*360-90)*Math.PI/180,g=a(1,25e3)*360*Math.PI/180,p=a(2,25e3)*Math.min(i,r)/2,b=Math.min(i,r)/2,_=b-p;e.moveTo(d+b*Math.cos(u),c+b*Math.sin(u)),e.arc(d,c,b,u,u+g),e.arc(d,c,Math.max(1,_),u+g,u,!0),e.closePath();break}case"line":case"straightConnector1":e.moveTo(t,c),e.lineTo(t+i,c);break;case"bentConnector3":case"bentConnector4":case"bentConnector5":case"elbowConnector":e.moveTo(t,s),e.lineTo(t,c),e.lineTo(t+i,c),e.lineTo(t+i,s+r);break;case"curvedConnector3":case"curvedConnector4":e.moveTo(t,s),e.bezierCurveTo(t,s+r/2,t+i,s+r/2,t+i,s+r);break;case"heart":{oo(e,t,s,i,r);break}case"lightningBolt":{e.moveTo(t+i*.6,s),e.lineTo(t+i*.2,s+r*.45),e.lineTo(t+i*.5,s+r*.45),e.lineTo(t+i*.4,s+r),e.lineTo(t+i*.8,s+r*.55),e.lineTo(t+i*.5,s+r*.55),e.closePath();break}case"moon":{e.arc(d+i*.1,c,r*.5,l(-120),l(120)),e.arc(d+i*.4,c,r*.45,l(120),l(-120),!0),e.closePath();break}case"noSmoking":{const u=Math.min(i,r)/2;e.arc(d,c,u,0,Math.PI*2),e.moveTo(d-u*.7,c+u*.7),e.lineTo(d+u*.7,c-u*.7);break}case"flowChartProcess":e.rect(t,s,i,r);break;case"flowChartDecision":e.moveTo(d,s),e.lineTo(t+i,c),e.lineTo(d,s+r),e.lineTo(t,c),e.closePath();break;case"flowChartTerminator":{const u=r/2;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.arc(t+i-u,c,u,-Math.PI/2,Math.PI/2),e.lineTo(t+u,s+r),e.arc(t+u,c,u,Math.PI/2,-Math.PI/2),e.closePath();break}case"flowChartDocument":{e.moveTo(t,s),e.lineTo(t+i,s),e.lineTo(t+i,s+r*.8),e.bezierCurveTo(t+i*.75,s+r*.8,t+i*.75,s+r,t+i*.5,s+r),e.bezierCurveTo(t+i*.25,s+r,t+i*.25,s+r*.8,t,s+r*.8),e.closePath();break}case"flowChartDatabase":case"cylinder":{const u=r*.1;e.moveTo(t,s+u),e.ellipse(d,s+u,i/2,u,0,Math.PI,0),e.lineTo(t+i,s+r-u),e.ellipse(d,s+r-u,i/2,u,0,0,Math.PI),e.closePath();break}case"cube":{const u=i*.15;e.moveTo(t+u,s),e.lineTo(t+i,s),e.lineTo(t+i,s+r-u),e.lineTo(t+i-u,s+r),e.lineTo(t,s+r),e.lineTo(t,s+u),e.closePath(),e.moveTo(t+u,s),e.lineTo(t+u,s+u),e.lineTo(t,s+u),e.moveTo(t+u,s+u),e.lineTo(t+i,s+u);break}case"callout1":case"borderCallout1":case"wedgeRectCallout":{e.rect(t,s,i,r*.8),e.moveTo(d-i*.1,s+r*.8),e.lineTo(d,s+r),e.lineTo(d+i*.1,s+r*.8),e.closePath();break}case"wedgeRoundRectCallout":{const u=r*.05;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.arcTo(t+i,s,t+i,s+u,u),e.lineTo(t+i,s+r*.75-u),e.arcTo(t+i,s+r*.75,t+i-u,s+r*.75,u),e.lineTo(d+i*.1,s+r*.75),e.lineTo(d,s+r),e.lineTo(d-i*.1,s+r*.75),e.lineTo(t+u,s+r*.75),e.arcTo(t,s+r*.75,t,s+r*.75-u,u),e.lineTo(t,s+u),e.arcTo(t,s,t+u,s,u),e.closePath();break}case"wedgeEllipseCallout":{e.ellipse(d,c-r*.05,i/2,r*.45,0,0,Math.PI*2),e.moveTo(d-i*.1,c+r*.4),e.lineTo(d,s+r),e.lineTo(d+i*.1,c+r*.4),e.closePath();break}case"cloudCallout":case"cloud":{e.beginPath();const u=[{cx:d-i*.22,cy:c-r*.12,r:i*.16},{cx:d-i*.07,cy:c-r*.22,r:i*.18},{cx:d+i*.1,cy:c-r*.22,r:i*.17},{cx:d+i*.25,cy:c-r*.12,r:i*.15},{cx:d+i*.35,cy:c+r*.05,r:i*.13},{cx:d-i*.3,cy:c+r*.05,r:i*.13}];for(const g of u)e.arc(g.cx,g.cy,g.r,0,Math.PI*2);e.rect(d-i*.35,c,i*.7,r*.25);break}case"smileyFace":{e.arc(d,c,Math.min(i,r)/2,0,Math.PI*2);break}case"donut":{const u=Math.min(i,r)/2,g=u*a(0,25e3);e.arc(d,c,u,0,Math.PI*2),e.arc(d,c,g,Math.PI*2,0,!0);break}case"bracketPair":{const u=i*.2;e.moveTo(t+u,s),e.arcTo(t,s,t,s+u,u),e.lineTo(t,s+r-u),e.arcTo(t,s+r,t+u,s+r,u),e.moveTo(t+i-u,s),e.arcTo(t+i,s,t+i,s+u,u),e.lineTo(t+i,s+r-u),e.arcTo(t+i,s+r,t+i-u,s+r,u);break}case"bracePair":{const u=r*.15;e.moveTo(d-i*.35,s),e.bezierCurveTo(d-i*.45,s,d-i*.45,s,d-i*.45,s+u),e.lineTo(d-i*.45,c-u),e.bezierCurveTo(d-i*.45,c,d-i*.5,c,d-i*.5,c),e.bezierCurveTo(d-i*.5,c,d-i*.45,c,d-i*.45,c+u),e.lineTo(d-i*.45,s+r-u),e.bezierCurveTo(d-i*.45,s+r,d-i*.35,s+r,d-i*.35,s+r);break}case"irregularSeal1":case"irregularSeal2":{$e(e,d,c,i/2,r/2,12,a(0,42533),0);break}case"accentCallout1":case"accentCallout2":case"calloutWedgeRect":e.rect(t,s,i,r);break;case"flowChartAlternateProcess":{const u=r*.15;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.arcTo(t+i,s,t+i,s+u,u),e.lineTo(t+i,s+r-u),e.arcTo(t+i,s+r,t+i-u,s+r,u),e.lineTo(t+u,s+r),e.arcTo(t,s+r,t,s+r-u,u),e.lineTo(t,s+u),e.arcTo(t,s,t+u,s,u),e.closePath();break}case"flowChartConnector":e.arc(d,c,Math.min(i,r)/2,0,Math.PI*2);break;case"flowChartInputOutput":{const u=i*.2;e.moveTo(t+u,s),e.lineTo(t+i,s),e.lineTo(t+i-u,s+r),e.lineTo(t,s+r),e.closePath();break}case"flowChartPredefinedProcess":{e.rect(t,s,i,r),e.moveTo(t+i*.1,s),e.lineTo(t+i*.1,s+r),e.moveTo(t+i*.9,s),e.lineTo(t+i*.9,s+r);break}case"flowChartManualInput":{e.moveTo(t,s+r*.2),e.lineTo(t+i,s),e.lineTo(t+i,s+r),e.lineTo(t,s+r),e.closePath();break}case"flowChartPreparation":{const u=i*.2;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.lineTo(t+i,c),e.lineTo(t+i-u,s+r),e.lineTo(t+u,s+r),e.lineTo(t,c),e.closePath();break}case"ribbon":case"ribbon2":{const u=r*.3;e.moveTo(t,s+u/2),e.lineTo(t+i*.1,s),e.lineTo(t+i*.1,s+r-u),e.lineTo(t,s+r),e.lineTo(t+i*.5,s+r-u),e.lineTo(t+i,s+r),e.lineTo(t+i-i*.1,s+r-u),e.lineTo(t+i-i*.1,s),e.lineTo(t+i,s+u/2),e.lineTo(t+i*.5,s+u),e.closePath();break}case"ellipseRibbon":case"ellipseRibbon2":{e.ellipse(d,c,i/2,r/2,0,0,Math.PI*2);break}case"teardrop":{const u=Math.min(i,r)*.45;e.arc(d,c+u,u,-Math.PI,0),e.bezierCurveTo(d+u,c+u-u*.55,d+u*.1,c-r*.4,d,s),e.bezierCurveTo(d-u*.1,c-r*.4,d-u,c+u-u*.55,d-u,c+u),e.closePath();break}default:return e.rect(t,s,i,r),!1}return!0}function tt(e,n,t,s,i,r,o=0){for(let l=0;l<r;l++){const a=o+l/r*Math.PI*2,d=n+s*Math.cos(a),c=t+i*Math.sin(a);l===0?e.moveTo(d,c):e.lineTo(d,c)}e.closePath()}function $e(e,n,t,s,i,r,o=.5,l=-Math.PI/2){for(let a=0;a<r*2;a++){const d=l+a/(r*2)*Math.PI*2,c=a%2===1,h=c?s*o:s,u=c?i*o:i,g=n+h*Math.cos(d),p=t+u*Math.sin(d);a===0?e.moveTo(g,p):e.lineTo(g,p)}e.closePath()}function oo(e,n,t,s,i){e.beginPath();const r=n+s/2,o=t+i*.25;e.moveTo(r,t+i*.9),e.bezierCurveTo(n-s*.1,t+i*.6,n-s*.1,o-i*.05,r-s*.25,o-i*.1),e.bezierCurveTo(r-s*.5+s*.05,t+i*.05,r-s*.03,t+i*.05,r,o-i*.15),e.bezierCurveTo(r+s*.03,t+i*.05,r+s*.5-s*.05,t+i*.05,r+s*.25,o-i*.1),e.bezierCurveTo(n+s*1.1,o-i*.05,n+s*1.1,t+i*.6,r,t+i*.9),e.closePath()}const Vn=["#4472C4","#ED7D31","#A9D18E","#FF0000","#FFC000","#5B9BD5","#70AD47","#C00000","#7030A0","#00B0F0","#FF7F00","#9E480E"];function ao(e){const n=e?.textContent?.trim();if(n==null||n==="")return null;const t=parseFloat(n);return isNaN(t)?n:t}function gt(e){if(!e)return[];const n=C(m(e,"ptCount"),"val",0),t=new Array(n).fill(null);for(const s of de(e,"pt")){const i=C(s,"idx",0);t[i]=ao(m(s,"v"))}return t}function Tt(e){const n=m(e,"tx");if(!n)return null;const t=m(n,"v");if(t)return t.textContent.trim();const s=m(n,"strCache");if(s){const i=m(s,"pt"),r=i?m(i,"v"):null;return r?r.textContent.trim():null}return null}function Jt(e){const n=m(e,"cat")||m(e,"xVal");return n?gt(m(n,"strCache")||m(n,"numCache")):[]}function jt(e){const n=m(e,"val")||m(e,"yVal");return n?gt(m(n,"numCache")):[]}function Qe(e,n,t){const s=m(e,"spPr");if(s){const r=m(s,"solidFill");if(r){const o=me(r),l=ye(o,t);if(l)return ge(l)}}const i=`accent${n%6+1}`;return t[i]?`#${t[i]}`:Vn[n%Vn.length]}function Fs(e,n){const t={};for(const s of de(e,"dPt")){const i=C(m(s,"idx"),"val",-1);if(i<0)continue;const r=m(s,"spPr");if(!r)continue;const o=m(r,"solidFill");if(!o)continue;const l=me(o),a=ye(l,n);a&&(t[i]=ge(a))}return t}function en(e,n,t,s,i={}){const{padL:r=.12,padR:o=.06,padT:l=.08,padB:a=.1,legendH:d=.1,hasLegend:c=!0,hasTitle:h=!1}=i,u=h?s*.08:0,g=c?s*d:0;return{x:e+t*r,y:n+s*l+u,w:t*(1-r-o),h:s*(1-l-a)-g-u,legendY:n+s*(1-d*.7)}}function vt(e,n,t,s,i,r=3){s<0&&(n+=s,s=-s),i<0&&(t+=i,i=-i),r=Math.min(r,Math.abs(s)/2,Math.abs(i)/2),e.beginPath(),e.moveTo(n+r,t),e.arcTo(n+s,t,n+s,t+i,r),e.arcTo(n+s,t+i,n,t+i,r),e.arcTo(n,t+i,n,t,r),e.arcTo(n,t,n+s,t,r),e.closePath()}function Ee(e,n,t,s,i,r="#999",o=.7){e.save(),e.strokeStyle=r,e.lineWidth=o,e.setLineDash([]),e.beginPath(),e.moveTo(n,t),e.lineTo(s,i),e.stroke(),e.restore()}function Ze(e,n,t,s,i){e.save(),e.strokeStyle="rgba(0,0,0,0.10)",e.lineWidth=.5,e.setLineDash([3,3]),e.beginPath(),e.moveTo(n,t),e.lineTo(s,i),e.stroke(),e.setLineDash([]),e.restore()}function Cs(e,n=5){const t=e/n,s=Math.pow(10,Math.floor(Math.log10(t))),i=t/s;let r;return i<1.5?r=1:i<3.5?r=2:i<7.5?r=5:r=10,r*s}function wt(e,n=!0){const t=e.filter(o=>typeof o=="number"&&isFinite(o));if(!t.length)return{min:0,max:100,step:20};let s=n?Math.min(0,...t):Math.min(...t),i=Math.max(...t);s===i&&(s-=1,i+=1);const r=Cs(i-s);return i=Math.ceil(i/r)*r,s=Math.floor(s/r)*r,{min:s,max:i,step:r}}function Je(e){return typeof e!="number"?String(e??""):Math.abs(e)>=1e9?(e/1e9).toFixed(1).replace(/\.0$/,"")+"B":Math.abs(e)>=1e6?(e/1e6).toFixed(1).replace(/\.0$/,"")+"M":Math.abs(e)>=1e3?(e/1e3).toFixed(1).replace(/\.0$/,"")+"K":Number.isInteger(e)?String(e):e.toFixed(1)}function Ft(e,n,t,s,i,r,o){if(!r.length)return;const l=Math.max(8,Math.min(14,s*.025))*o,a=s/Math.max(r.length,1);e.save(),e.font=`${l}px sans-serif`,e.textBaseline="middle";for(let d=0;d<r.length;d++){if(!r[d].name)continue;const c=n+a*d+l*.5;e.fillStyle=r[d].color,vt(e,c,i-l/2,l*1.2,l),e.fill(),e.fillStyle="#444",e.fillText(r[d].name,c+l*1.5,i)}e.restore()}function lo(e,n,t,s,i,r,o,l){const a=m(n,"barChart")||m(n,"bar3DChart"),d=!a||B(a,"barDir","col")!=="bar",c=B(a,"grouping","clustered"),h=c==="stacked"||c==="percentStacked",u=c==="percentStacked",g=de(a,"ser"),p=g.map((k,T)=>({name:Tt(k),values:jt(k),color:Qe(k,T,o),dptColors:Fs(k,o)}));if(!p.length)return;const b=Jt(g[0])||[],_=Math.max(b.length,p[0]?.values.length||0,1),y=en(t,s,i,r,{hasLegend:p.length>1});let w;h?(w=Array.from({length:_},(k,T)=>p.reduce((N,M)=>N+(M.values[T]||0),0)),u&&(w=w.map(()=>100))):w=p.flatMap(k=>k.values);const x=wt(w),P=Math.max(7,Math.min(11,y.w*.018))*l;e.font=`${P}px sans-serif`,e.textBaseline="middle";const v=Math.round((x.max-x.min)/x.step);if(d){e.save(),e.textAlign="right",e.fillStyle="#666";for(let j=0;j<=v;j++){const E=x.min+j*x.step,L=(E-x.min)/(x.max-x.min),z=y.y+y.h-L*y.h;Ze(e,y.x,z,y.x+y.w,z),e.fillText(u?E+"%":Je(E),y.x-4*l,z)}e.restore(),e.save(),e.textAlign="center",e.fillStyle="#666";const k=y.w/_;for(let j=0;j<_;j++){const E=y.x+k*j+k/2,L=String(b[j]??j+1);e.fillText(L,E,y.y+y.h+P*1.5)}e.restore(),Ee(e,y.x,y.y,y.x,y.y+y.h),Ee(e,y.x,y.y+y.h,y.x+y.w,y.y+y.h);const T=y.w/_,N=T*.15,M=T-N*2,F=h?M:M/p.length;for(let j=0;j<_;j++){const E=y.x+T*j+N;let L=0;for(let z=0;z<p.length;z++){const Q=p[z];let G=Q.values[j]??0;if(u){const re=p.reduce((ce,ne)=>ce+(ne.values[j]||0),0);G=re?G/re*100:0}const O=Q.dptColors[j]||Q.color,q=Math.abs(G)/(x.max-x.min)*y.h,Z=h?E:E+z*F,J=h?(L-x.min)/(x.max-x.min):Math.max(0,-x.min)/(x.max-x.min),R=y.y+y.h-J*y.h,H=G>=0?R-q:R;e.save(),e.fillStyle=O,vt(e,Z,H,h?M:F-1*l,q,2*l),e.fill();const ie=e.createLinearGradient(Z,H,Z,H+q*.3);ie.addColorStop(0,"rgba(255,255,255,0.18)"),ie.addColorStop(1,"rgba(255,255,255,0)"),e.fillStyle=ie,e.fill(),e.restore(),h&&(L+=Math.abs(G))}}}else{e.save(),e.textAlign="right",e.fillStyle="#666";const k=y.h/_;for(let j=0;j<_;j++){const E=y.y+k*j+k/2,L=String(b[j]??j+1);e.fillText(L,y.x-4*l,E)}e.restore(),e.save(),e.textAlign="center",e.fillStyle="#666";for(let j=0;j<=v;j++){const E=x.min+j*x.step,L=(E-x.min)/(x.max-x.min),z=y.x+L*y.w;Ze(e,z,y.y,z,y.y+y.h),e.fillText(u?E+"%":Je(E),z,y.y+y.h+P*1.5)}e.restore(),Ee(e,y.x,y.y+y.h,y.x+y.w,y.y+y.h),Ee(e,y.x,y.y,y.x,y.y+y.h);const T=k*.15,N=k-T*2,M=h?N:N/p.length,F=y.x+-x.min/(x.max-x.min)*y.w;for(let j=0;j<_;j++){const E=y.y+k*j+T;let L=0;for(let z=0;z<p.length;z++){const Q=p[z];let G=Q.values[j]??0;if(u){const H=p.reduce((ie,re)=>ie+(re.values[j]||0),0);G=H?G/H*100:0}const O=Q.dptColors[j]||Q.color,q=Math.abs(G)/(x.max-x.min)*y.w,Z=h?E:E+z*M,J=h?F+L/(x.max-x.min)*y.w:F,R=G>=0?J:J-q;e.save(),e.fillStyle=O,vt(e,R,Z,q,h?N:M-1*l,2*l),e.fill(),e.restore(),h&&(L+=Math.abs(G))}}}p.length>1&&Ft(e,t,s,i,y.legendY,p,l)}function co(e,n,t,s,i,r,o,l){const a=m(n,"lineChart")||m(n,"line3DChart"),d=de(a,"ser"),c=d.map((y,w)=>({name:Tt(y),values:jt(y),color:Qe(y,w,o),marker:B(m(y,"marker"),"symbol","none")!=="none",smooth:B(m(y,"smooth"),"val","0")==="1"}));if(!c.length)return;const h=Jt(d[0])||[],u=Math.max(h.length,c[0]?.values.length||0,1),g=en(t,s,i,r,{hasLegend:!0}),p=wt(c.flatMap(y=>y.values)),b=Math.max(7,Math.min(11,g.w*.018))*l,_=Math.round((p.max-p.min)/p.step);e.save(),e.textAlign="right",e.fillStyle="#666",e.font=`${b}px sans-serif`;for(let y=0;y<=_;y++){const w=p.min+y*p.step,x=(w-p.min)/(p.max-p.min),P=g.y+g.h-x*g.h;Ze(e,g.x,P,g.x+g.w,P),e.fillText(Je(w),g.x-4*l,P)}e.restore(),e.save(),e.textAlign="center",e.fillStyle="#666",e.font=`${b}px sans-serif`;for(let y=0;y<u;y++){const w=g.x+y/(u-1||1)*g.w;Ze(e,w,g.y,w,g.y+g.h);const x=String(h[y]??y+1);e.fillText(x,w,g.y+g.h+b*1.5)}e.restore(),Ee(e,g.x,g.y,g.x,g.y+g.h),Ee(e,g.x,g.y+g.h,g.x+g.w,g.y+g.h);for(const y of c){const w=y.values.map((P,v)=>{const k=u>1?v/(u-1):.5,T=(P-p.min)/(p.max-p.min);return{x:g.x+k*g.w,y:g.y+g.h-T*g.h,v:P}}).filter(P=>typeof P.v=="number");if(w.length<2)continue;e.save(),e.beginPath(),e.moveTo(w[0].x,g.y+g.h);for(const P of w)e.lineTo(P.x,P.y);if(e.lineTo(w[w.length-1].x,g.y+g.h),e.closePath(),e.fillStyle=y.color+"22",e.fill(),e.restore(),e.save(),e.strokeStyle=y.color,e.lineWidth=2*l,e.lineJoin="round",e.lineCap="round",e.beginPath(),y.smooth&&w.length>2){e.moveTo(w[0].x,w[0].y);for(let P=1;P<w.length-1;P++){const v=(w[P].x+w[P+1].x)/2,k=(w[P].y+w[P+1].y)/2;e.quadraticCurveTo(w[P].x,w[P].y,v,k)}e.lineTo(w[w.length-1].x,w[w.length-1].y)}else{e.moveTo(w[0].x,w[0].y);for(const P of w.slice(1))e.lineTo(P.x,P.y)}e.stroke(),e.restore();const x=3.5*l;for(const P of w)e.save(),e.fillStyle=y.color,e.strokeStyle="#fff",e.lineWidth=1.5*l,e.beginPath(),e.arc(P.x,P.y,x,0,Math.PI*2),e.fill(),e.stroke(),e.restore()}Ft(e,t,s,i,g.legendY,c,l)}function uo(e,n,t,s,i,r,o,l){const a=m(n,"areaChart")||m(n,"area3DChart"),d=B(a,"grouping","standard"),c=d==="percentStacked",h=d==="stacked"||c,g=de(a,"ser").map((v,k)=>({name:Tt(v),values:jt(v),color:Qe(v,k,o)})).reverse();if(!g.length)return;const p=Math.max(...g.map(v=>v.values.length),1),b=en(t,s,i,r,{hasLegend:!0});let _=0;if(c)_=100;else for(let v=0;v<p;v++){const k=g.reduce((T,N)=>T+(N.values[v]||0),0);_=Math.max(_,k)}const y={min:0,max:_||100,step:Cs(_||100)},w=Math.round((y.max-y.min)/y.step),x=Math.max(7,Math.min(11,b.w*.018))*l;e.save(),e.font=`${x}px sans-serif`,e.textAlign="right",e.fillStyle="#666";for(let v=0;v<=w;v++){const k=y.min+v*y.step,T=(k-y.min)/(y.max-y.min),N=b.y+b.h-T*b.h;Ze(e,b.x,N,b.x+b.w,N),e.fillText(c?k+"%":Je(k),b.x-4*l,N)}e.restore(),Ee(e,b.x,b.y,b.x,b.y+b.h),Ee(e,b.x,b.y+b.h,b.x+b.w,b.y+b.h);const P=new Array(p).fill(0);for(const v of g){e.save(),e.beginPath();const k=[];for(let T=0;T<p;T++){let N=v.values[T]??0;if(c){const z=g.reduce((Q,G)=>Q+(G.values[T]||0),0);N=z?N/z*100:0}const M=h?P[T]:0,F=M+Math.abs(N),j=(M-y.min)/(y.max-y.min),E=(F-y.min)/(y.max-y.min),L=b.x+T/(p-1||1)*b.w;k.push({x:L,y:b.y+b.h-E*b.h,baseY:b.y+b.h-j*b.h}),h&&(P[T]+=Math.abs(N))}e.moveTo(k[0].x,k[0].baseY);for(const T of k)e.lineTo(T.x,T.baseY);for(let T=k.length-1;T>=0;T--)e.lineTo(k[T].x,k[T].y);e.closePath(),e.fillStyle=v.color+"cc",e.fill(),e.beginPath(),e.moveTo(k[0].x,k[0].y);for(const T of k.slice(1))e.lineTo(T.x,T.y);e.strokeStyle=v.color,e.lineWidth=1.5*l,e.stroke(),e.restore()}Ft(e,t,s,i,b.legendY,[...g].reverse(),l)}function Hn(e,n,t,s,i,r,o,l){const a=m(n,"pieChart")||m(n,"pie3DChart"),d=m(n,"doughnutChart"),c=a||d,h=!!d,u=de(c,"ser");if(!u.length)return;const g=u[0],p=jt(g).map(j=>typeof j=="number"&&j>0?j:0),b=Jt(g),_=Fs(g,o),y=p.reduce((j,E)=>j+E,0);if(!y)return;const w=Math.min(i,r)*.38,x=t+i*.44,P=s+r*.5,v=h?w*.55:0;let k=-Math.PI/2;for(let j=0;j<p.length;j++){if(!p[j])continue;const E=p[j]/y*Math.PI*2,L=_[j]||Qe(g,j,o),z=k+E/2,Q=j===0?w*.04:0,G=Q*Math.cos(z),O=Q*Math.sin(z);e.save(),e.beginPath(),e.moveTo(x+G,P+O),e.arc(x+G,P+O,w,k,k+E),e.closePath(),e.fillStyle=L,e.fill(),e.shadowColor="rgba(0,0,0,0.12)",e.shadowBlur=4*l,e.strokeStyle="#fff",e.lineWidth=1.5*l,e.stroke(),e.restore(),v>0&&(e.save(),e.beginPath(),e.arc(x,P,v,0,Math.PI*2),e.fillStyle="#fff",e.fill(),e.restore());const q=p[j]/y;if(q>.05){const Z=x+G+w*.65*Math.cos(z),J=P+O+w*.65*Math.sin(z),R=Math.max(8,Math.min(13,w*.15))*l;e.save(),e.fillStyle="#fff",e.font=`bold ${R}px sans-serif`,e.textAlign="center",e.textBaseline="middle",e.fillText(Math.round(q*100)+"%",Z,J),e.restore()}k+=E}if(h){const j=Math.max(10,Math.min(16,w*.22))*l;e.save(),e.font=`bold ${j}px sans-serif`,e.fillStyle="#333",e.textAlign="center",e.textBaseline="middle",e.fillText(Je(y),x,P),e.restore()}const T=t+i*.78,N=Math.max(8,Math.min(12,i*.022))*l;e.font=`${N}px sans-serif`,e.textBaseline="middle";const M=N*1.8,F=P-p.length*M/2;for(let j=0;j<p.length;j++){const E=T,L=F+j*M,z=_[j]||Qe(g,j,o);e.fillStyle=z,vt(e,E,L-N*.5,N*1.2,N),e.fill(),e.fillStyle="#444";const Q=String(b[j]??`Item ${j+1}`);e.fillText(Q,E+N*1.5,L)}}function fo(e,n,t,s,i,r,o,l){const a=m(n,"scatterChart")||m(n,"bubbleChart"),c=de(a,"ser").map((k,T)=>{const N=gt(m(m(k,"xVal"),"numCache")),M=gt(m(m(k,"yVal"),"numCache")),F=gt(m(m(k,"bubbleSize"),"numCache"));return{name:Tt(k),color:Qe(k,T,o),points:N.map((j,E)=>({x:j,y:M[E],r:F[E]})).filter(j=>typeof j.x=="number"&&typeof j.y=="number")}});if(!c.length)return;const h=en(t,s,i,r,{hasLegend:c.length>1}),u=c.flatMap(k=>k.points.map(T=>T.x)),g=c.flatMap(k=>k.points.map(T=>T.y)),p=wt(u,!1),b=wt(g),_=Math.max(7,Math.min(11,h.w*.018))*l,y=Math.round((p.max-p.min)/p.step),w=Math.round((b.max-b.min)/b.step);e.font=`${_}px sans-serif`,e.save(),e.textAlign="center",e.fillStyle="#666";for(let k=0;k<=y;k++){const T=p.min+k*p.step,N=(T-p.min)/(p.max-p.min),M=h.x+N*h.w;Ze(e,M,h.y,M,h.y+h.h),e.fillText(Je(T),M,h.y+h.h+_*1.5)}e.textAlign="right";for(let k=0;k<=w;k++){const T=b.min+k*b.step,N=(T-b.min)/(b.max-b.min),M=h.y+h.h-N*h.h;Ze(e,h.x,M,h.x+h.w,M),e.fillText(Je(T),h.x-4*l,M)}e.restore(),Ee(e,h.x,h.y,h.x,h.y+h.h),Ee(e,h.x,h.y+h.h,h.x+h.w,h.y+h.h);const x=c.flatMap(k=>k.points.map(T=>T.r??1)),P=Math.max(...x.filter(k=>typeof k=="number"),1),v=Math.min(h.w,h.h)*.06;for(const k of c)for(const T of k.points){const N=h.x+(T.x-p.min)/(p.max-p.min)*h.w,M=h.y+h.h-(T.y-b.min)/(b.max-b.min)*h.h,F=T.r!=null?T.r/P*v:4*l;e.save(),e.fillStyle=k.color+"aa",e.strokeStyle=k.color,e.lineWidth=1*l,e.beginPath(),e.arc(N,M,F,0,Math.PI*2),e.fill(),e.stroke(),e.restore()}c.length>1&&Ft(e,t,s,i,h.legendY,c,l)}function ho(e,n,t,s,i,r,o,l){const a=m(n,"radarChart"),d=de(a,"ser"),c=d.map((w,x)=>({name:Tt(w),values:jt(w),color:Qe(w,x,o)}));if(!c.length)return;const h=Jt(d[0])||[],u=h.length||c[0]?.values.length||0;if(u<3)return;const g=t+i*.5,p=s+r*.5,b=Math.min(i,r)*.34,_=wt(c.flatMap(w=>w.values)),y=4;for(let w=1;w<=y;w++){const x=b*w/y;e.save(),e.beginPath();for(let P=0;P<u;P++){const v=P/u*Math.PI*2-Math.PI/2,k=g+x*Math.cos(v),T=p+x*Math.sin(v);P===0?e.moveTo(k,T):e.lineTo(k,T)}e.closePath(),e.strokeStyle="rgba(0,0,0,0.12)",e.lineWidth=.5,e.stroke(),e.restore()}for(let w=0;w<u;w++){const x=w/u*Math.PI*2-Math.PI/2;Ee(e,g,p,g+b*Math.cos(x),p+b*Math.sin(x));const P=g+(b+16*l)*Math.cos(x),v=p+(b+16*l)*Math.sin(x);e.save(),e.font=`${Math.max(7,11*l)}px sans-serif`,e.fillStyle="#555",e.textAlign="center",e.textBaseline="middle",e.fillText(String(h[w]??w+1),P,v),e.restore()}for(const w of c){const x=w.values.map((P,v)=>{const k=v/u*Math.PI*2-Math.PI/2,T=(P-_.min)/(_.max-_.min);return{x:g+b*T*Math.cos(k),y:p+b*T*Math.sin(k)}});e.save(),e.beginPath(),e.moveTo(x[0].x,x[0].y);for(const P of x.slice(1))e.lineTo(P.x,P.y);e.closePath(),e.fillStyle=w.color+"44",e.fill(),e.strokeStyle=w.color,e.lineWidth=1.5*l,e.stroke(),e.restore()}Ft(e,t,s,i,s+r-20*l,c,l)}function po(e,n,t,s,i,r){const o=m(m(n,"chart"),"title");if(!o)return!1;const l=m(o,"tx");if(!l)return!1;let a="";for(const c of de(l,"t"))a+=c.textContent;if(!a.trim())return!1;const d=Math.max(10,Math.min(16,i*.03))*r;return e.save(),e.font=`bold ${d}px sans-serif`,e.fillStyle="#333",e.textAlign="center",e.textBaseline="top",e.fillText(a,t+i/2,s+6*r),e.restore(),!0}function go(e,n,t,s,i,r,o,l){if(!n)return;const a=n;e.save(),e.fillStyle="#fff",vt(e,t,s,i,r,4*l),e.fill(),e.strokeStyle="#ddd",e.lineWidth=.5,e.stroke(),e.restore();const c=po(e,a,t,s,i,l)?s+Math.min(r*.08,24*l):s,h=r-(c-s),u=m(a,"plotArea");if(!u)return;const g=m(u,"bar3DChart")||m(u,"barChart"),p=m(u,"line3DChart")||m(u,"lineChart"),b=m(u,"area3DChart")||m(u,"areaChart"),_=m(u,"pie3DChart")||m(u,"pieChart"),y=m(u,"doughnutChart"),w=m(u,"scatterChart")||m(u,"bubbleChart"),x=m(u,"radarChart");if(g)lo(e,u,t,c,i,h,o,l);else if(p)co(e,u,t,c,i,h,o,l);else if(b)uo(e,u,t,c,i,h,o,l);else if(y)Hn(e,u,t,c,i,h,o,l);else if(_)Hn(e,u,t,c,i,h,o,l);else if(w)fo(e,u,t,c,i,h,o,l);else if(x)ho(e,u,t,c,i,h,o,l);else{e.save(),e.fillStyle="#aaa",e.font=`${12*l}px sans-serif`,e.textAlign="center",e.textBaseline="middle";const P=u.firstElementChild;e.fillText(P?.localName??"Chart",t+i/2,s+r/2),e.restore()}}function Xt(e,n,t=0,s=1){return(e?parseInt(e.getAttribute(n)||t,10):t)*s}function Ms(e,n){if(!e)return null;const t=me(e);if(!t)return null;const s=ye(t,n);return s?ge(s):null}function mo(e,n,t,s,i,r,o){const l=m(n,"bevelT"),a=m(n,"bevelB"),d=l||a;if(!d)return;const c=Math.max(2*o,Xt(d,"w",76200,o)),h=Math.max(2*o,Xt(d,"h",76200,o)),g=B(d,"prst","circle").toLowerCase().includes("in"),p=Math.min(c,i*.3),b=Math.min(h,r*.3),_=g?"rgba(0,0,0,0.18)":"rgba(255,255,255,0.35)",y=g?"rgba(255,255,255,0.20)":"rgba(0,0,0,0.20)",w=e.createLinearGradient(t,s,t,s+b);w.addColorStop(0,_),w.addColorStop(1,"rgba(255,255,255,0)"),e.save(),e.fillStyle=w,e.fillRect(t,s,i,b);const x=e.createLinearGradient(t,s+r-b,t,s+r);x.addColorStop(0,"rgba(0,0,0,0)"),x.addColorStop(1,y),e.fillStyle=x,e.fillRect(t,s+r-b,i,b);const P=e.createLinearGradient(t,s,t+p,s);P.addColorStop(0,_),P.addColorStop(1,"rgba(255,255,255,0)"),e.fillStyle=P,e.fillRect(t,s,p,r);const v=e.createLinearGradient(t+i-p,s,t+i,s);v.addColorStop(0,"rgba(0,0,0,0)"),v.addColorStop(1,y),e.fillStyle=v,e.fillRect(t+i-p,s,p,r),e.restore()}function bo(e,n,t,s,i,r,o,l){const a=Xt(n,"extrusionH",0,l);if(a<1*l)return;const d=m(n,"extrusionClr")||m(n,"contourClr"),c=Ms(d,t)||"rgba(0,0,0,0.3)",h=Math.min(a/914400*72*l,Math.min(r,o)*.15),u=h*.7,g=h*.7;e.save(),e.fillStyle=c,e.beginPath(),e.moveTo(s+r,i),e.lineTo(s+r+u,i+g),e.lineTo(s+r+u,i+o+g),e.lineTo(s+r,i+o),e.closePath(),e.fill(),e.beginPath(),e.moveTo(s,i+o),e.lineTo(s+u,i+o+g),e.lineTo(s+r+u,i+o+g),e.lineTo(s+r,i+o),e.closePath(),e.fill(),e.restore()}function yo(e,n,t,s,i,r,o,l){const a=Xt(n,"contourW",0,l);if(a<.5)return;const d=m(n,"contourClr"),c=Ms(d,t)||"#888888",h=Math.max(.5,a/914400*72*l);e.save(),e.strokeStyle=c,e.lineWidth=h,e.strokeRect(s,i,r,o),e.restore()}function vo(e,n,t,s,i,r){if(!n)return()=>{};const o=m(n,"camera");if(!o)return()=>{};const l=B(o,"prst","orthographicFront"),a=m(o,"rot");if(l.toLowerCase().includes("orthographic")&&!a)return()=>{};const c=a?C(a,"lat",0)/6e4:0,h=a?C(a,"lon",0)/6e4:0;a&&C(a,"rev",0)/6e4;const u=c*Math.PI/180,g=h*Math.PI/180,p=Math.sin(g)*.15,b=Math.sin(u)*.08;return e.save(),e.transform(1,b,p,1,t*-p,s*-b),()=>e.restore()}function wo(e,n,t,s,i,r){if(!n)return;const o=m(n,"lightRig");if(!o)return;const l=B(o,"dir","t"),a=B(o,"rig","balanced"),d={t:{gx:t+i/2,gy:s},b:{gx:t+i/2,gy:s+r},l:{gx:t,gy:s+r/2},r:{gx:t+i,gy:s+r/2},tl:{gx:t,gy:s},tr:{gx:t+i,gy:s},bl:{gx:t,gy:s+r},br:{gx:t+i,gy:s+r}},{gx:c,gy:h}=d[l]||d.t,u=a==="flat"?.08:a==="balanced"?.14:a==="sunrise"?.2:a==="harsh"?.28:.12,g=Math.sqrt(i*i+r*r),p=e.createRadialGradient(c,h,0,c,h,g);p.addColorStop(0,`rgba(255,255,255,${u})`),p.addColorStop(.5,"rgba(255,255,255,0)"),p.addColorStop(1,`rgba(0,0,0,${u*.5})`),e.save(),e.fillStyle=p,e.fillRect(t,s,i,r),e.restore()}function ko(e,n,t,s,i,r,o,l){if(!n)return{applyCamera:()=>()=>{},overlay:()=>{}};const a=m(n,"sp3d")||m(n,"scene3d")?.parentNode&&null,d=m(n,"scene3d");a&&bo(e,a,t,s,i,r,o,l);const c=vo(e,d,s,i);return{overlay(){a&&(mo(e,a,s,i,r,o,l),yo(e,a,t,s,i,r,o,l)),d&&wo(e,d,s,i,r,o)},cleanup:c}}function xo(e){return e?!!(m(e,"sp3d")||m(e,"scene3d")):!1}async function kt(e,n,t,s,i,r,o,l,a){if(!n)return!1;const d=n.localName;if(d==="noFill")return!1;if(d==="solidFill"){const c=me(n),h=ye(c,l);return h?(e.fillStyle=ge(h),e.fill(),!0):!1}if(d==="gradFill"){const c=m(n,"gsLst");if(!c)return!1;const h=de(c,"gs").map(y=>{const w=C(y,"pos",0)/1e5,x=me(y),P=ye(x,l);return{pos:w,color:P}}).sort((y,w)=>y.pos-w.pos);if(h.length<2)return!1;const u=m(n,"lin"),g=m(n,"path"),p=t+i/2,b=s+r/2;let _;if(u||!u&&!g){const x=(C(u,"ang",0)/6e4-90)*Math.PI/180,P=Math.cos(x),v=Math.sin(x),k=Math.abs(i*P)+Math.abs(r*v),T=p-k/2*P,N=b-k/2*v,M=p+k/2*P,F=b+k/2*v;_=e.createLinearGradient(T,N,M,F)}else{const y=m(g,"fillToRect"),w=C(y,"l",5e4)/1e5,x=C(y,"t",5e4)/1e5,P=C(y,"r",5e4)/1e5,v=C(y,"b",5e4)/1e5,k=t+i*(w+(1-w-P)/2),T=s+r*(x+(1-x-v)/2),N=Math.sqrt(i*i+r*r)/2;_=e.createRadialGradient(k,T,0,p,b,N)}for(const y of h)y.color&&_.addColorStop(y.pos,ge(y.color));return e.fillStyle=_,e.fill(),!0}if(d==="blipFill"){const c=m(n,"blip"),h=c?c.getAttribute("r:embed")||c.getAttribute("embed"):null;if(h&&a&&a[h]){const u=a[h],g=m(n,"stretch"),p=g?m(g,"fillRect"):null;let b=t,_=s,y=i,w=r;if(p){const k=C(p,"l",0)/1e5,T=C(p,"t",0)/1e5,N=C(p,"r",0)/1e5,M=C(p,"b",0)/1e5;b=t+i*k,_=s+r*T,y=i-i*k-i*N,w=r-r*T-r*M}if(m(n,"tile")){const k=e.createPattern(u,"repeat");if(k)return e.fillStyle=k,e.fill(),!0}const P=m(n,"alphaModFix")||m(c,"alphaModFix"),v=P?C(P,"amt",1e5)/1e5:1;return e.save(),e.clip(),v<1&&(e.globalAlpha=v),e.drawImage(u,b,_,y,w),e.restore(),!0}return!1}if(d==="pattFill"){const c=m(n,"fgClr"),h=m(n,"bgClr"),u=c?ye(me(c),l):{r:0,g:0,b:0,a:1},g=h?ye(me(h),l):{r:255,g:255,b:255,a:1},p=ge(u),b=ge(g),_=B(n,"prst","dotGrid");let y=null,w=null;try{w=typeof OffscreenCanvas<"u"?new OffscreenCanvas(8,8):document.createElement("canvas");const v=8;w.width=v,w.height=v,y=w.getContext("2d")}catch{}const x=8;if(!y)return e.fillStyle=ge(u),e.fill(),!0;switch(y.fillStyle=b,y.fillRect(0,0,x,x),y.fillStyle=p,_){case"smGrid":case"dotGrid":case"dotDmnd":for(let v=0;v<x;v+=2)for(let k=0;k<x;k+=2)y.fillRect(v,k,1,1);break;case"lgGrid":case"cross":y.fillRect(0,0,x,1),y.fillRect(0,0,1,x);break;case"diagBd":case"fwdDiag":for(let v=0;v<x*2;v++)y.fillRect(v%x,Math.floor(v/x)*2,1,1);break;case"bkDiag":case"ltDnDiag":for(let v=0;v<x*2;v++)y.fillRect(x-1-v%x,Math.floor(v/x)*2,1,1);break;case"horzBrick":case"horz":y.fillRect(0,x/2,x,1);break;case"vert":case"vertBrick":y.fillRect(x/2,0,1,x);break;case"smCheck":case"lgCheck":for(let v=0;v<x;v++)for(let k=0;k<x;k++)(v+k)%2===0&&y.fillRect(k,v,1,1);break;default:for(let v=0;v<x;v+=4)y.fillRect(v,v,2,2)}const P=e.createPattern(w,"repeat");return P?(e.fillStyle=P,e.fill(),!0):(e.fillStyle=ge(u,(u.a??1)*.4),e.fill(),!0)}return!1}async function De(e,n){const t=n.split("/"),s=t.pop(),i=[...t,"_rels",s+".rels"].join("/"),r=e[i];if(!r)return{};const o=new TextDecoder().decode(r),l=_e(o),a={};for(const d of Array.from(l.getElementsByTagName("Relationship"))){const c=d.getAttribute("Id"),h=d.getAttribute("Target"),u=d.getAttribute("Type")||"",g=d.getAttribute("TargetMode")||"Internal";let p=h;if(g!=="External")if(h.startsWith("/"))p=h.slice(1);else{const b=n.split("/");b.pop();const _=h.split("/");for(const y of _)y===".."?b.pop():y!=="."&&b.push(y);p=b.join("/")}a[c]={target:h,fullPath:p,type:u,external:g==="External"}}return a}async function Gt(e,n){const t={},s=new Set(["png","jpg","jpeg","gif","webp","bmp","tiff","tif","svg"]);for(const[i,r]of Object.entries(n)){if(r.external)continue;const o=r.fullPath.split(".").pop().toLowerCase();if(s.has(o))try{const l=e[r.fullPath];if(!l)continue;const d={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",bmp:"image/bmp",tiff:"image/tiff",tif:"image/tiff",svg:"image/svg+xml"}[o]||"image/png",c=new Blob([l],{type:d}),h=URL.createObjectURL(c),u=await new Promise((g,p)=>{const b=new Image;b.onload=()=>g(b),b.onerror=()=>g(null),b.src=h});t[i]=u}catch{}}return t}function Ns(e,n,t){if(!e)return n*1.2;const s=m(e,"spcPct"),i=m(e,"spcPts");return s?n*(C(s,"val",1e5)/1e5):i?C(i,"val",0)/100*12700*(t||1):n*1.2}function _o(e,n,t,s){if(!e||m(e,"buNone"))return null;const i=m(e,"buChar"),r=m(e,"buAutoNum");if(!i&&!r)return null;let o=null;const l=m(e,"buClr");if(l){const p=me(l);o=ye(p,t)}const a=m(e,"buSzPct"),d=m(e,"buSzPts");let c=1;a&&(c=C(a,"val",1e5)/1e5);const h=d?C(d,"val",0)/100:null;let u=null;const g=m(e,"buFont");if(g){const p=g.getAttribute("typeface");p&&(u=p)}return i?{type:"char",char:i.getAttribute("char")||"•",color:o,sizePct:c,sizePts:h,fontFamily:u}:r?{type:"autoNum",numType:r.getAttribute("type")||"arabicPeriod",startAt:C(r,"startAt",1),color:o,sizePct:c,sizePts:h,fontFamily:u}:null}function Po(e,n){switch(e){case"arabicPeriod":return n+".";case"arabicParenR":return n+")";case"arabicParenBoth":return"("+n+")";case"romanLcPeriod":return Yn(n).toLowerCase()+".";case"romanUcPeriod":return Yn(n)+".";case"alphaLcParenR":return String.fromCharCode(96+n)+")";case"alphaUcParenR":return String.fromCharCode(64+n)+")";case"alphaLcPeriod":return String.fromCharCode(96+n)+".";case"alphaUcPeriod":return String.fromCharCode(64+n)+".";default:return n+"."}}function Yn(e){const n=[1e3,900,500,400,100,90,50,40,10,9,5,4,1],t=["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"];let s="";for(let i=0;i<n.length;i++)for(;e>=n[i];)s+=t[i],e-=n[i];return s}function So(e,n,t,s,i){if(!n)return;const r=e.font.match(/(d+(?:.d+)?)px/),o=r?parseFloat(r[1]):16,l=n.sizePts!=null?n.sizePts*(o/12):o*n.sizePct;e.save(),n.color&&(e.fillStyle=ge(n.color),e.strokeStyle=e.fillStyle);const a=n.fontFamily?'"'+n.fontFamily+'", sans-serif':e.font.split(/\d+px\s+/)[1]||"sans-serif";if(e.font=l+"px "+a,n.type==="char")e.fillText(n.char,t,s);else if(n.type==="autoNum"){const d=n.numType+":"+n.startAt;i[d]===void 0&&(i[d]=n.startAt);const c=Po(n.numType,i[d]);i[d]++,e.fillText(c,t,s)}e.restore()}async function Vt(e,n,t,s,i,r,o,l,a,d=1800){if(!n)return;const c=m(n,"bodyPr"),h=B(c,"anchor","t"),u=B(c,"wrap","square"),g=B(c,"vert","horz"),p=C(c,"lIns",91440)*o,b=C(c,"tIns",45720)*o,_=C(c,"rIns",91440)*o,y=C(c,"bIns",45720)*o,w=t+p,x=s+b,P=i-p-_,v=r-b-y,k=u!=="none",T=g==="vert"||g==="vert270"||g==="eaVert";T&&(e.save(),g==="vert270"?(e.translate(t+i,s),e.rotate(Math.PI/2)):(e.translate(t,s+r),e.rotate(-Math.PI/2)));const N=m(c,"normAutoFit")||m(n,"normAutoFit");m(c,"spAutoFit")||m(n,"spAutoFit");const M=N?N.getAttribute("fontScale"):null;let F=M?parseInt(M,10)/1e5:1;const j=m(n,"lstStyle"),E=j?m(j,"defRPr"):null;function L(J,R,H,ie){const re=J?J.getAttribute(H):null;if(re!==null&&re!=="")return re;const ce=R?R.getAttribute(H):null;if(ce!==null&&ce!=="")return ce;const ne=E?E.getAttribute(H):null;return ne!==null&&ne!==""?ne:ie}const z=de(n,"p"),Q=[];let G=0;for(const J of z){const R=m(J,"pPr"),H=B(R,"algn","l");C(R,"lvl",0);const ie=C(R,"marL",0)*o,re=C(R,"indent",0)*o,ce=R?_o(R,oe,l):null,ne=m(R,"spcBef"),X=m(R,"spcAft"),xe=m(R,"lnSpc"),oe=m(R,"defRPr");let ae=d;if(E){const Y=E.getAttribute("sz");Y&&(ae=parseInt(Y,10))}if(oe){const Y=oe.getAttribute("sz");Y&&(ae=parseInt(Y,10))}let ue=0,ve=0;if(ne){const Y=m(ne,"spcPct"),ee=m(ne,"spcPts");Y?ue=ae*127*o*(C(Y,"val",0)/1e5):ee&&(ue=C(ee,"val",0)*bt*o/100)}if(X){const Y=m(X,"spcPct"),ee=m(X,"spcPts");Y?ve=ae*127*o*(C(Y,"val",0)/1e5):ee&&(ve=C(ee,"val",0)*bt*o/100)}const we=[];for(const Y of J.children){const ee=Y.localName;(ee==="r"||ee==="br"||ee==="fld")&&we.push(Y)}if(we.length===0){const Y=m(J,"endParaRPr"),$=C(Y||oe,"sz",ae)*127*o*F;Q.push({lines:[""],algn:H,marL:ie,spaceBefore:ue,spaceAfter:ve,szPx:$,lnSpc:xe,runs:[],emptyPara:!0,bullet:ce}),G+=ue+$*1.2+ve;continue}let be=[],fe=[],I=0;for(const Y of we){if(Y.localName==="br"){be.push({runs:fe,maxSzPx:Math.max(I,ae*127*o)}),fe=[],I=0;continue}const ee=m(Y,"rPr"),$=m(Y,"t");let U=$?$.textContent:"";const te=js(ee,oe,o*F,a,ae,E);e.font=te.fontStr;const se=te.szPx;se>I&&(I=se);const he=ro(ee,oe,l),ke=L(ee,oe,"u","none")!=="none",Pe=L(ee,oe,"strike","noStrike")!=="noStrike",Me=parseInt(L(ee,oe,"baseline","0"),10);if(k){const Mt=U.split(" ");for(let dn=0;dn<Mt.length;dn++){const un=Mt[dn];let In=re+ie;for(const Nt of fe)e.font=Nt.fontInfo.fontStr,In+=e.measureText(Nt.text).width;e.font=te.fontStr;const Js=e.measureText(un).width,ei=fe.length?e.measureText(" ").width:0;if(In+ei+Js>P&&fe.length>0)be.push({runs:fe,maxSzPx:Math.max(I,se)}),fe=[{text:un,rPr:ee,fontInfo:te,color:he,underline:ke,strikethrough:Pe,baseline:Me}],I=se;else{if(fe.length>0){const Nt={text:" ",rPr:ee,fontInfo:te,color:he,underline:!1,strikethrough:!1,baseline:Me};fe.push(Nt)}fe.push({text:un,rPr:ee,fontInfo:te,color:he,underline:ke,strikethrough:Pe,baseline:Me})}}}else fe.push({text:U,rPr:ee,fontInfo:te,color:he,underline:ke,strikethrough:Pe,baseline:Me}),se>I&&(I=se)}fe.length>0&&be.push({runs:fe,maxSzPx:Math.max(I,ae*127*o)});const V=xe?Ns(xe,ae*127*o*F,o):null;Q.push({lines:be,algn:H,marL:ie,indent:re,spaceBefore:ue,spaceAfter:ve,lnSpcPx:V,emptyPara:!1,bullet:ce});for(const Y of be)G+=ue+(V||Y.maxSzPx*1.2)+ve}if(N&&!M&&G>v&&v>0){let J=.3,R=1;for(let H=0;H<8;H++){const ie=(J+R)/2;let re=0;for(const ce of z){const ne=m(ce,"pPr"),X=ne?m(ne,"defRPr"):null;let xe=d;if(E){const V=E.getAttribute("sz");V&&(xe=parseInt(V,10))}if(X){const V=X.getAttribute("sz");V&&(xe=parseInt(V,10))}const oe=Array.from(ce.children).filter(V=>["r","br","fld"].includes(V.localName)),ae=xe*127*o*ie;if(oe.length===0){re+=ae*1.2;continue}const ue=oe.reduce((V,Y)=>{const ee=m(Y,"t");return V+(ee?ee.textContent.length:0)},0),ve=P>0?P:i,we=ue>0?oe.reduce((V,Y)=>{const ee=m(Y,"t");return V+(ee?ee.textContent:"")},"").slice(0,20):"W";e.font=`${ae}px sans-serif`;const be=we.length>0?e.measureText(we).width/we.length:ae*.6,fe=Math.max(1,Math.floor(ve/be)),I=Math.max(1,Math.ceil(ue/fe));re+=I*ae*1.2}re<=v?J=ie:R=ie}F=(J+R)/2}let O=x;h==="ctr"?O=x+(v-G)/2:h==="b"&&(O=x+v-G);let q=O;const Z={};for(const J of Q){const{lines:R,algn:H,marL:ie,indent:re,spaceBefore:ce,spaceAfter:ne,lnSpcPx:X,emptyPara:xe,bullet:oe}=J;if(q+=ce,xe){q+=R[0]?X||J.szPx*1.2:12*o,q+=ne;continue}for(const ae of R){const{runs:ue,maxSzPx:ve}=ae,we=X||ve*1.2,be=q+ve*.85;let fe=0;for(const $ of ue)e.font=$.fontInfo.fontStr,fe+=e.measureText($.text).width;let I=w+ie;H==="ctr"?I=w+(P-fe)/2:H==="r"&&(I=w+P-fe);const V=ae===R[0];if(oe&&V){const $=w+ie+re;So(e,oe,$,be,Z)}let Y=0;if(H==="just"&&!(ae===R[R.length-1])){let U=0;for(const se of ue)e.font=se.fontInfo.fontStr,U+=(se.text.match(/ /g)||[]).length;const te=P-ie-fe;U>0&&te>0&&(Y=te/U)}const ee=($,U,te,se,he,ke)=>{e.font=se.fontStr;const Pe=e.measureText($).width;e.fillText($,U,te);const Me=Math.max(.5,se.szPx*.07);return he&&(e.save(),e.strokeStyle=e.fillStyle,e.lineWidth=Me,e.beginPath(),e.moveTo(U,te+Me*1.5),e.lineTo(U+Pe,te+Me*1.5),e.stroke(),e.restore()),ke&&(e.save(),e.strokeStyle=e.fillStyle,e.lineWidth=Me,e.beginPath(),e.moveTo(U,te-se.szPx*.3),e.lineTo(U+Pe,te-se.szPx*.3),e.stroke(),e.restore()),Pe};for(const $ of ue){const U=$.color;e.fillStyle=U?ge(U):"#000000";let te=be,se=$.fontInfo;if($.baseline!==0){const he=se.szPx*.65,ke=`${se.italic?"italic ":""}${se.bold?"bold ":""}${he}px "${se.family}", sans-serif`;se={...se,szPx:he,fontStr:ke},$.baseline>0?te=be-$.fontInfo.szPx*.38:te=be+$.fontInfo.szPx*.12}if(Y>0&&$.text.includes(" ")){e.font=se.fontStr;const he=$.text.split(" ");for(let ke=0;ke<he.length;ke++){const Pe=ee(he[ke],I,te,se,$.underline,$.strikethrough);I+=Pe,ke<he.length-1&&(e.font=se.fontStr,I+=e.measureText(" ").width+Y)}}else{e.font=se.fontStr;const he=e.measureText($.text).width;ee($.text,I,te,se,$.underline,$.strikethrough),I+=he}}q+=we}q+=ne}T&&e.restore()}function As(e,n,t,s){const i=m(n,"effectLst");if(!i)return()=>{};const r=m(i,"outerShdw"),o=m(i,"innerShdw"),l=r||o;if(l){const d=C(l,"blurRad",38100)*s,c=C(l,"dist",38100)*s,u=C(l,"dir",27e5)/6e4*Math.PI/180,g=c*Math.cos(u),p=c*Math.sin(u),b=me(l),_=ye(b,t),y=_?ge(_):"rgba(0,0,0,0.35)";e.shadowBlur=Math.min(d,40),e.shadowOffsetX=g,e.shadowOffsetY=p,e.shadowColor=y}const a=m(i,"glow");if(a){const d=C(a,"rad",0)*s,c=me(a),h=ye(c,t);h&&(e.shadowBlur=Math.min(d,30),e.shadowOffsetX=0,e.shadowOffsetY=0,e.shadowColor=ge(h))}return()=>{e.shadowBlur=0,e.shadowOffsetX=0,e.shadowOffsetY=0,e.shadowColor="transparent"}}async function tn(e,n,t,s,i,r,o,l=null,a=null){const d=m(n,"spPr"),c=m(d,"xfrm");let h=0,u=0,g=0,p=0,b=0,_=!1,y=!1;if(c){const O=m(c,"off"),q=m(c,"ext");O&&(h=C(O,"x",0)*o,u=C(O,"y",0)*o),q&&(g=C(q,"cx",0)*o,p=C(q,"cy",0)*o),b=C(c,"rot",0)/6e4,_=B(c,"flipH","0")==="1",y=B(c,"flipV","0")==="1"}else{const O=Is(n,a);if(O)h=O.x*o,u=O.y*o,g=O.w*o,p=O.h*o;else return}if(g<=0||p<=0)return;if(l){const{grpOff:O,grpExt:q,chOff:Z,chExt:J}=l,R=q.cx/J.cx,H=q.cy/J.cy;h=O.x+(h/o-Z.x)*R*o,u=O.y+(u/o-Z.y)*H*o,g=g*R,p=p*H}const w=h+g/2,x=u+p/2;e.save(),(b!==0||_||y)&&(e.translate(w,x),b!==0&&e.rotate(b*Math.PI/180),_&&e.scale(-1,1),y&&e.scale(1,-1),e.translate(-w,-x));const P=m(d,"prstGeom"),v=m(d,"custGeom"),k=P?B(P,"prst","rect"):"rect",T={};if(P){const O=m(P,"avLst");if(O){let q=0;for(const Z of de(O,"gd")){const R=B(Z,"fmla","").match(/val\s+(-?\d+)/);R&&(T[q]=parseInt(R[1])),q++}}}const N=()=>{const O=["noFill","solidFill","gradFill","blipFill","pattFill","grpFill"];for(const Z of O){const J=m(d,Z);if(J)return J}const q=m(n,"style");if(q){const Z=m(q,"fillRef");if(Z){if(C(Z,"idx",1)===0)return _e("<noFill/>").documentElement;const R=me(Z);if(R)return _e('<solidFill xmlns="'+"http://schemas.openxmlformats.org/drawingml/2006/main"+'">'+R.outerHTML+"</solidFill>").documentElement}}return null},M=()=>{const O=m(d,"ln");if(O)return O;const q=m(n,"style");if(q){const Z=m(q,"lnRef");if(Z){if(C(Z,"idx",1)===0)return null;const R=me(Z);if(R)return _e('<ln xmlns="'+"http://schemas.openxmlformats.org/drawingml/2006/main"+'"><solidFill>'+R.outerHTML+"</solidFill></ln>").documentElement}}return null};if(v){const O=m(v,"pathLst");if(O)for(const Z of de(O,"path")){const J=C(Z,"w",1)||1,R=C(Z,"h",1)||1,H=g/J,ie=p/R;e.beginPath();for(const ne of Z.children)switch(ne.localName){case"moveTo":{const X=m(ne,"pt");X&&e.moveTo(h+C(X,"x",0)*H,u+C(X,"y",0)*ie);break}case"lnTo":{const X=m(ne,"pt");X&&e.lineTo(h+C(X,"x",0)*H,u+C(X,"y",0)*ie);break}case"cubicBezTo":{const X=de(ne,"pt");X.length>=3&&e.bezierCurveTo(h+C(X[0],"x",0)*H,u+C(X[0],"y",0)*ie,h+C(X[1],"x",0)*H,u+C(X[1],"y",0)*ie,h+C(X[2],"x",0)*H,u+C(X[2],"y",0)*ie);break}case"quadBezTo":{const X=de(ne,"pt");X.length>=2&&e.quadraticCurveTo(h+C(X[0],"x",0)*H,u+C(X[0],"y",0)*ie,h+C(X[1],"x",0)*H,u+C(X[1],"y",0)*ie);break}case"arcTo":{const X=C(ne,"wR",0)*H,xe=C(ne,"hR",0)*ie,oe=C(ne,"stAng",0)/6e4*Math.PI/180,ae=C(ne,"swAng",0)/6e4*Math.PI/180,ue=e._lastX||h,ve=e._lastY||u,we=ue-X*Math.cos(oe),be=ve-xe*Math.sin(oe);X===xe?e.arc(we,be,X,oe,oe+ae,ae<0):e.ellipse(we,be,X,xe,0,oe,oe+ae,ae<0);break}case"close":e.closePath();break}const re=N();re&&await kt(e,re,h,u,g,p,o,i,s);const ce=M();ce&&lt(e,ce,i,o)}e.restore();const q=m(n,"txBody");if(q){e.save(),e.beginPath(),e.rect(h,u,g,p),e.clip();const Z=wn(n);await Vt(e,q,h,u,g,p,o,i,r,Z),e.restore()}return}e.beginPath(),Kt(e,k,h,u,g,p,T);const F=As(e,d,i,o),j=h,E=u,L=g,z=p,Q=xo(d)?ko(e,d,i,j,E,L,z,o):null;try{const O=N();let q=!1;O&&(q=await kt(e,O,h,u,g,p,o,i,s)),Q&&Q.overlay();const Z=M();Z?lt(e,Z,i,o):q||(k==="line"||k==="straightConnector1")&&(e.strokeStyle="#000",e.lineWidth=1,e.stroke())}finally{F(),Q?.cleanup&&Q.cleanup()}e.restore();const G=m(n,"txBody");if(G){e.save(),(b!==0||_||y)&&(e.translate(w,x),b!==0&&e.rotate(b*Math.PI/180),_&&e.scale(-1,1),y&&e.scale(1,-1),e.translate(-w,-x)),e.beginPath(),e.rect(h,u,g,p),e.clip();const O=wn(n);await Vt(e,G,h,u,g,p,o,i,r,O),e.restore()}}function wn(e,n){const t=m(e,"nvSpPr"),s=t?m(t,"nvPr"):null,i=s?m(s,"ph"):null;if(i){const r=B(i,"type","body");if(r==="title"||r==="ctrTitle")return 4400;if(r==="subTitle"||r==="body")return 2800}return 1800}function lt(e,n,t,s){if(!n||m(n,"noFill"))return;const r=m(n,"solidFill"),o=m(n,"gradFill"),l=C(n,"w",12700),a=Math.max(.5,l*s);let d="#000000";if(r){const g=me(r),p=ye(g,t);p&&(d=ge(p))}else o&&(d="#888888");const c=m(n,"prstDash"),h=c?B(c,"val","solid"):"solid",u=B(n,"cap","flat");switch(B(n,"cmpd","sng"),e.strokeStyle=d,e.lineWidth=a,e.lineCap=u==="rnd"?"round":u==="sq"?"square":"butt",e.lineJoin="round",h){case"dash":e.setLineDash([a*4,a*2]);break;case"dot":e.setLineDash([a,a*2]);break;case"dashDot":e.setLineDash([a*4,a*2,a,a*2]);break;case"lgDash":e.setLineDash([a*8,a*3]);break;case"lgDashDot":e.setLineDash([a*8,a*3,a,a*3]);break;default:e.setLineDash([])}e.stroke(),e.setLineDash([])}async function nn(e,n,t,s,i,r){const o=m(n,"spPr"),l=m(o,"xfrm");if(!l)return;const a=m(l,"off"),d=m(l,"ext");if(!a||!d)return;const c=C(a,"x",0)*r,h=C(a,"y",0)*r,u=C(d,"cx",0)*r,g=C(d,"cy",0)*r,p=C(l,"rot",0)/6e4,b=B(l,"flipH","0")==="1",_=B(l,"flipV","0")==="1";if(u<=0||g<=0)return;const y=m(n,"blipFill"),w=y?m(y,"blip"):null,x=w?w.getAttribute("r:embed")||w.getAttribute("embed"):null,P=c+u/2,v=h+g/2;if(e.save(),(p!==0||b||_)&&(e.translate(P,v),p!==0&&e.rotate(p*Math.PI/180),b&&e.scale(-1,1),_&&e.scale(1,-1),e.translate(-P,-v)),x&&s[x]){const k=s[x],T=m(o,"prstGeom"),N=T?B(T,"prst","rect"):"rect",M={};if(T){const E=m(T,"avLst");if(E){let L=0;for(const z of de(E,"gd")){const Q=(B(z,"fmla","")||"").match(/val\s+(-?\d+)/);Q&&(M[L]=parseInt(Q[1])),L++}}}e.beginPath(),Kt(e,N,c,h,u,g,M),e.clip();const F=y?m(y,"srcRect"):null;if(F){const E=C(F,"l",0)/1e5,L=C(F,"t",0)/1e5,z=C(F,"r",0)/1e5,Q=C(F,"b",0)/1e5,G=k.naturalWidth*(1-E-z),O=k.naturalHeight*(1-L-Q);e.drawImage(k,k.naturalWidth*E,k.naturalHeight*L,G,O,c,h,u,g)}else e.drawImage(k,c,h,u,g);const j=m(o,"ln");j&&(e.beginPath(),Kt(e,N,c,h,u,g,M),lt(e,j,i,r))}else e.fillStyle="#e0e0e0",e.fillRect(c,h,u,g),e.strokeStyle="#aaa",e.lineWidth=1,e.strokeRect(c,h,u,g),e.beginPath(),e.moveTo(c,h),e.lineTo(c+u,h+g),e.moveTo(c+u,h),e.lineTo(c,h+g),e.stroke();e.restore()}async function $s(e,n,t,s,i){const r=m(n,"xfrm");if(!r)return;const o=m(r,"off"),l=m(r,"ext");if(!o||!l)return;const a=C(o,"x",0)*i,d=C(o,"y",0)*i;C(l,"cx",0)*i,C(l,"cy",0)*i;const c=m(n,"graphic"),h=c?m(c,"graphicData"):null,u=h?m(h,"tbl"):null;if(!u)return;const g=m(u,"tblPr"),p=g?B(g,"bandRow","0")==="1":!1;g&&B(g,"bandCol","0");const b=g?B(g,"firstRow","0")==="1":!1,_=g?B(g,"lastRow","0")==="1":!1;g&&B(g,"firstCol","0"),g&&B(g,"lastCol","0");const y=m(u,"tblGrid"),w=de(y,"gridCol").map(v=>C(v,"w",0)*i),x=de(u,"tr");let P=d;for(let v=0;v<x.length;v++){const k=x[v],T=C(k,"h",457200)*i,N=de(k,"tc");let M=a;const F=v===0,j=v===x.length-1,E=v%2===1;for(let L=0;L<N.length;L++){const z=N[L],Q=C(z,"gridSpan",1);B(z,"vMerge","0");let G=0;for(let R=0;R<Q;R++)G+=w[L+R]||0;const O=m(z,"tcPr"),q=O?["noFill","solidFill","gradFill","blipFill","pattFill"].map(R=>m(O,R)).find(Boolean):null;if(e.save(),e.beginPath(),e.rect(M,P,G,T),q)await kt(e,q,M,P,G,T,i,t,null);else{let R=null;b&&F?R=t.accent1?"#"+t.accent1.toLowerCase():"#4472C4":_&&j?R="#e0e0e0":p&&E&&(R="rgba(0,0,0,0.06)"),e.fillStyle=R||"transparent",R&&e.fill()}const Z=[{el:m(O,"lnL"),x1:M,y1:P,x2:M,y2:P+T},{el:m(O,"lnR"),x1:M+G,y1:P,x2:M+G,y2:P+T},{el:m(O,"lnT"),x1:M,y1:P,x2:M+G,y2:P},{el:m(O,"lnB"),x1:M,y1:P+T,x2:M+G,y2:P+T}];for(const R of Z)R.el?m(R.el,"noFill")||(e.beginPath(),e.moveTo(R.x1,R.y1),e.lineTo(R.x2,R.y2),lt(e,R.el,t,i)):(e.beginPath(),e.strokeStyle="#cccccc",e.lineWidth=.5,e.moveTo(R.x1,R.y1),e.lineTo(R.x2,R.y2),e.stroke());e.restore();const J=m(z,"txBody");J&&(e.save(),e.beginPath(),e.rect(M,P,G,T),e.clip(),await Vt(e,J,M,P,G,T,i,t,s,1400),e.restore()),M+=G}P+=T}}async function sn(e,n,t,s,i,r,o){const l=m(n,"grpSpPr"),a=m(l,"xfrm");if(!a)return;const d=m(a,"off"),c=m(a,"ext"),h=m(a,"chOff"),u=m(a,"chExt");if(!d||!c||!h||!u)return;const g=C(a,"rot",0)/6e4,p=B(a,"flipH","0")==="1",b=B(a,"flipV","0")==="1",_={grpOff:{x:C(d,"x",0)*o,y:C(d,"y",0)*o},grpExt:{cx:C(c,"cx",0)*o,cy:C(c,"cy",0)*o},chOff:{x:C(h,"x",0),y:C(h,"y",0)},chExt:{cx:C(u,"cx",1),cy:C(u,"cy",1)}},y=_.grpOff.x+_.grpExt.cx/2,w=_.grpOff.y+_.grpExt.cy/2;e.save(),(g!==0||p||b)&&(e.translate(y,w),g!==0&&e.rotate(g*Math.PI/180),p&&e.scale(-1,1),b&&e.scale(1,-1),e.translate(-y,-w));for(const x of n.children){const P=x.localName;P==="sp"?await tn(e,x,t,s,i,r,o,_):P==="pic"?await nn(e,x,t,s,i,o):P==="grpSp"?await sn(e,x,t,s,i,r,o):P==="graphicFrame"?await on(e,x,i,r,o,files,t):P==="cxnSp"&&await rn(e,x,i,o)}e.restore()}function Qn(e,n,t,s,i,r,o,l,a){const d=m(n,t);if(!d)return;const c=d.getAttribute("type")||"none";if(c==="none")return;const h={sm:3,med:6,lg:9},u=Math.max(.5,C(n,"w",12700)*a),g=u*(h[d.getAttribute("w")||"med"]??6),p=u*(h[d.getAttribute("len")||"med"]??6),b=Math.atan2(o-i,r-s);switch(e.save(),e.fillStyle=e.strokeStyle,e.strokeStyle=e.strokeStyle,c){case"triangle":case"arrow":case"stealth":{const _=c==="arrow",y=c==="stealth"?p*.5:0;e.beginPath(),e.moveTo(s,i),e.lineTo(s+p*Math.cos(b)+g/2*Math.sin(b),i+p*Math.sin(b)-g/2*Math.cos(b)),_||e.lineTo(s+y*Math.cos(b),i+y*Math.sin(b)),e.lineTo(s+p*Math.cos(b)-g/2*Math.sin(b),i+p*Math.sin(b)+g/2*Math.cos(b)),e.closePath(),_?e.stroke():e.fill();break}case"diamond":{const _=p/2;e.beginPath(),e.moveTo(s,i),e.lineTo(s+_*Math.cos(b)+g/2*Math.sin(b),i+_*Math.sin(b)-g/2*Math.cos(b)),e.lineTo(s+p*Math.cos(b),i+p*Math.sin(b)),e.lineTo(s+_*Math.cos(b)-g/2*Math.sin(b),i+_*Math.sin(b)+g/2*Math.cos(b)),e.closePath(),e.fill();break}case"oval":{const _=p/2,y=g/2,w=s+_*Math.cos(b),x=i+_*Math.sin(b);e.beginPath(),e.save(),e.translate(w,x),e.rotate(b),e.scale(1,y/_),e.arc(0,0,_,0,Math.PI*2),e.restore(),e.fill();break}}e.restore()}async function rn(e,n,t,s){const i=m(n,"spPr"),r=m(i,"xfrm");if(!r)return;const o=m(r,"off"),l=m(r,"ext");if(!o||!l)return;const a=C(o,"x",0)*s,d=C(o,"y",0)*s,c=C(l,"cx",0)*s,h=C(l,"cy",0)*s,u=C(r,"rot",0)/6e4,g=B(r,"flipH","0")==="1",p=B(r,"flipV","0")==="1",b=a+c/2,_=d+h/2,y=m(i,"ln");e.save(),(u!==0||g||p)&&(e.translate(b,_),u!==0&&e.rotate(u*Math.PI/180),g&&e.scale(-1,1),p&&e.scale(1,-1),e.translate(-b,-_));const w=m(i,"prstGeom"),x=w?B(w,"prst","line"):"line",P=x==="line"||x==="straightConnector1";if(e.beginPath(),P){const v=g?a:a+c,k=p?d:d+h,T=g?a+c:a,N=p?d+h:d;e.moveTo(T,N),e.lineTo(v,k)}else Kt(e,x,a,d,c,h,{});if(y){if(lt(e,y,t,s),P){const v=g?a+c:a,k=p?d+h:d,T=g?a:a+c,N=p?d:d+h;Qn(e,y,"headEnd",T,N,v,k,t,s),Qn(e,y,"tailEnd",v,k,T,N,t,s)}}else e.strokeStyle="#000",e.lineWidth=1,e.stroke();e.restore()}async function Es(e,n,t,s,i,r,o,l,a,d,c){const h=d*a,u=c*a,g=x=>{const P=m(x,"cSld");if(!P)return null;const v=m(P,"bg");if(!v)return null;const k=m(v,"bgPr"),T=m(v,"bgRef");return{bgPr:k,bgRef:T}},p=n?g(n):null,b=s?g(s):null,_=t?g(t):null,y=p||b||_;let w=!1;if(y){const{bgPr:x,bgRef:P}=y;if(x){const v=["noFill","solidFill","gradFill","blipFill","pattFill"];for(const k of v){const T=m(x,k);if(T){e.beginPath(),e.rect(0,0,h,u);const N=y===_?Object.assign({},o):o;await kt(e,T,0,0,h,u,1,l,N)&&(w=!0);break}}}else if(P){C(P,"idx",0);const v=me(P),k=ye(v,l);k&&(e.fillStyle=ge(k),e.fillRect(0,0,h,u),w=!0)}}w||(e.fillStyle="#ffffff",e.fillRect(0,0,h,u))}function Rs(e){const n={};for(const t of e){if(!t)continue;const s=m(t,"cSld"),i=s?m(s,"spTree"):null;if(i)for(const r of de(i,"sp")){const o=m(r,"nvSpPr"),l=o?m(o,"nvPr"):null,a=l?m(l,"ph"):null;if(!a)continue;const d=B(a,"type","body"),c=B(a,"idx","0"),h=`${d}:${c}`;if(n[h])continue;const u=m(r,"spPr"),g=m(u,"xfrm");if(!g)continue;const p=m(g,"off"),b=m(g,"ext");!p||!b||(n[h]={x:C(p,"x",0),y:C(p,"y",0),w:C(b,"cx",0),h:C(b,"cy",0),txBody:m(r,"txBody")})}}return n}function Is(e,n){if(!n)return null;const t=m(e,"nvSpPr"),s=t?m(t,"nvPr"):null,i=s?m(s,"ph"):null;if(!i)return null;const r=B(i,"type","body"),o=B(i,"idx","0");return n[`${r}:${o}`]||n[`${r}:0`]||n[`body:${o}`]||null}async function on(e,n,t,s,i,r,o){const l=m(n,"graphic"),a=l?m(l,"graphicData"):null,d=a?B(a,"uri",""):"";if(m(n,"tbl")||a&&m(a,"tbl"))return $s(e,n,t,s,i);const c=m(n,"xfrm");if(!c)return;const h=m(c,"off"),u=m(c,"ext");if(!h||!u)return;const g=C(h,"x",0)*i,p=C(h,"y",0)*i,b=C(u,"cx",0)*i,_=C(u,"cy",0)*i;if(b<=0||_<=0)return;const y=d.includes("chart"),w=d.includes("diagram");if(y&&r&&o){const P=a?m(a,"chart"):null,v=P?P.getAttribute("r:id")||P.getAttribute("id"):null,k=v?o[v]:null;if(k&&r[k.fullPath]){const T=new TextDecoder().decode(r[k.fullPath]),N=_e(T);go(e,N,g,p,b,_,t,i);return}}if(w&&r&&o){const P=a?m(a,"relIds"):null,v=P?P.getAttribute("r:dm")||P.getAttribute("dm"):null,k=v?o[v]:null;if(k&&r[k.fullPath]){const T=new TextDecoder().decode(r[k.fullPath]),N=_e(T),M=P?P.getAttribute("r:lo")||P.getAttribute("lo"):null,F=M?o[M]:null,j=F&&r[F.fullPath]?_e(new TextDecoder().decode(r[F.fullPath])):null,{renderSmartArt:E}=await Qt(async()=>{const{renderSmartArt:L}=await import("./smartart-DCxfy3Tv.js");return{renderSmartArt:L}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]),import.meta.url);E(e,N,j,g,p,b,_,t,i);return}}const x=y?"📊 Chart":w?"🔷 Diagram":"⬛ Graphic";e.save(),e.fillStyle="#f4f4f8",e.strokeStyle="#ccccdd",e.lineWidth=1,e.fillRect(g,p,b,_),e.strokeRect(g,p,b,_),e.fillStyle="#999",e.font=`${Math.min(b*.07,16*i)}px sans-serif`,e.textAlign="center",e.textBaseline="middle",e.fillText(x,g+b/2,p+_/2),e.textAlign="start",e.textBaseline="alphabetic",e.restore()}async function zs(e,n,t,s,i,r,o,l,a){if(n)for(const d of n.children){const c=d.localName;try{c==="sp"?await tn(e,d,t,s,i,r,o,null,l):c==="pic"?await nn(e,d,t,s,i,o):c==="grpSp"?await sn(e,d,t,s,i,r,o):c==="graphicFrame"?await on(e,d,i,r,o,a,t):c==="cxnSp"&&await rn(e,d,i,o)}catch(h){console.warn("Error rendering shape:",c,h)}}}const To=Object.freeze(Object.defineProperty({__proto__:null,applyEffects:As,applyFill:kt,applyOutline:lt,buildPlaceholderMap:Rs,computeLineHeight:Ns,getDefaultFontSize:wn,getRels:De,loadImages:Gt,renderBackground:Es,renderConnector:rn,renderGraphicFrame:on,renderGroupShape:sn,renderPicture:nn,renderShape:tn,renderSpTree:zs,renderTable:$s,renderTextBody:Vt,resolvePlaceholderXfrm:Is},Symbol.toStringTag,{value:"Module"}));async function jo(e){const n=new CompressionStream("deflate-raw"),t=n.writable.getWriter(),s=n.readable.getReader();t.write(e),t.close();const i=[];let r=0;for(;;){const{value:a,done:d}=await s.read();if(d)break;i.push(a),r+=a.length}const o=new Uint8Array(r);let l=0;for(const a of i)o.set(a,l),l+=a.length;return o}const Fo=(()=>{const e=new Uint32Array(256);for(let n=0;n<256;n++){let t=n;for(let s=0;s<8;s++)t=t&1?3988292384^t>>>1:t>>>1;e[n]=t}return e})();function Co(e){let n=4294967295;for(let t=0;t<e.length;t++)n=Fo[(n^e[t])&255]^n>>>8;return(n^4294967295)>>>0}class Mo{constructor(){this._chunks=[],this._size=0}append(n){this._chunks.push(n),this._size+=n.length}get size(){return this._size}concat(){const n=new Uint8Array(this._size);let t=0;for(const s of this._chunks)n.set(s,t),t+=s.length;return n}}function pe(e){return new Uint8Array([e&255,e>>8&255])}function Re(e){return new Uint8Array([e&255,e>>8&255,e>>16&255,e>>24&255])}const Ls=new TextEncoder;function No(e){return Ls.encode(e)}const Zn=18977,Jn=0;class Ao{constructor(){this._entries=[]}async addText(n,t){return this.addBytes(n,Ls.encode(t))}async addBytes(n,t,s=!0){const i=No(n),r=Co(t),o=t.length;let l,a;if(s&&t.length>32){const d=await jo(t);d.length<t.length?(l=d,a=8):(l=t,a=0)}else l=t,a=0;this._entries.push({name:n,nameBytes:i,compData:l,uncompSize:o,crc:r,method:a,localOffset:0})}async finalize(){const n=new Mo;for(const i of this._entries)i.localOffset=n.size,n.append(new Uint8Array([80,75,3,4])),n.append(pe(20)),n.append(pe(2048)),n.append(pe(i.method)),n.append(pe(Jn)),n.append(pe(Zn)),n.append(Re(i.crc)),n.append(Re(i.compData.length)),n.append(Re(i.uncompSize)),n.append(pe(i.nameBytes.length)),n.append(pe(0)),n.append(i.nameBytes),n.append(i.compData);const t=n.size;for(const i of this._entries)n.append(new Uint8Array([80,75,1,2])),n.append(pe(798)),n.append(pe(20)),n.append(pe(2048)),n.append(pe(i.method)),n.append(pe(Jn)),n.append(pe(Zn)),n.append(Re(i.crc)),n.append(Re(i.compData.length)),n.append(Re(i.uncompSize)),n.append(pe(i.nameBytes.length)),n.append(pe(0)),n.append(pe(0)),n.append(pe(0)),n.append(pe(0)),n.append(Re(0)),n.append(Re(i.localOffset)),n.append(i.nameBytes);const s=n.size-t;return n.append(new Uint8Array([80,75,5,6])),n.append(pe(0)),n.append(pe(0)),n.append(pe(this._entries.length)),n.append(pe(this._entries.length)),n.append(Re(s)),n.append(Re(t)),n.append(pe(0)),n.concat()}}async function $o(e){const n=new Ao;for(const[t,s]of Object.entries(e))typeof s=="string"?await n.addText(t,s):await n.addBytes(t,s);return n.finalize()}const Eo=new TextDecoder,Ds=new TextEncoder,Se={p:"http://schemas.openxmlformats.org/presentationml/2006/main",a:"http://schemas.openxmlformats.org/drawingml/2006/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",rel:"http://schemas.openxmlformats.org/package/2006/relationships",ct:"http://schemas.openxmlformats.org/package/2006/content-types"};function mt(e){return new DOMParser().parseFromString(e,"application/xml")}function Ro(e){const n=new XMLSerializer().serializeToString(e);return n.startsWith("<?xml")?n:`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
29
+ ${Dr(e)}`},F=e.ref.content_type||w.mimeType;if(e.kind==="image"&&w.bytes&&Ir.has(F)){const j=Lr(w.bytes);j.length<=zr&&(M.images=[{data_b64:j,mime_type:F}])}if(await Ce(M),l(""),!e.chat&&!p)try{await _.mutateAsync({id:e.id,sessionId:N})}catch(j){h(E=>({...E,[e.id]:N})),g(e.id),je(j instanceof Error&&j.message?S("ui.library.composer.link_failed",{message:j.message}):S("ui.library.composer.link_failed_short"));return}if(p)try{await _.mutateAsync({id:e.id,sessionId:N}),h(j=>{const E={...j};return delete E[e.id],E}),g(null)}catch{g(e.id),je(S("ui.library.composer.link_failed_short"));return}await pt(s,N)}catch(T){je(T instanceof Error&&T.message?T.message:S("ui.library.composer.not_sent"))}finally{d(!1)}}},P=e.chat,v=async()=>{const k=p??e.chat?.session_id;if(k)try{await _.mutateAsync({id:e.id,sessionId:k}),h(T=>{const N={...T};return delete N[e.id],N}),g(null)}catch{je(S("ui.library.composer.link_failed_short"))}};return f.jsxs("div",{className:qe("mx-auto flex w-[min(calc(100%-24px),720px)] flex-col justify-end gap-2 pb-4",t?"h-38":"h-44"),"data-library-composer":"",children:[b&&p&&f.jsxs("div",{className:"flex flex-wrap items-center gap-2 rounded-md bg-sunken px-2 py-1 text-meta text-ink","data-library-link-failed":"",children:[f.jsx("span",{className:"min-w-0 flex-1",children:S("ui.library.composer.message_sent_link_failed")}),f.jsx(K,{variant:"ghost",size:"sm",onClick:()=>void v(),children:S("ui.library.composer.retry_link")}),f.jsx(K,{variant:"ghost",size:"sm",onClick:()=>void pt(s,p),children:S("ui.library.composer.open_chat")})]}),P&&f.jsxs("div",{className:"flex items-center gap-2 text-meta text-ink-muted",children:[f.jsx(ti,{size:13,"aria-hidden":"true"}),f.jsx("span",{className:"min-w-0 flex-1 truncate",children:S("ui.library.composer.chat_about",{title:P.title||P.session_id})}),f.jsx(K,{variant:"ghost",size:"sm",onClick:()=>void pt(s,P.session_id),children:S("ui.library.composer.open_chat")}),f.jsx(K,{variant:"ghost",size:"icon-sm","aria-label":S("ui.library.composer.unlink"),onClick:()=>y.mutate({id:e.id}),children:f.jsx(ot,{"aria-hidden":"true"})})]}),f.jsxs("div",{"data-glass-region":"composer",className:qe("flex items-end gap-2 rounded-lg bg-elevated p-2","focus-within:outline-2 focus-within:outline-offset-2 focus-within:outline-accent"),children:[f.jsx(Di,{ref:i,rows:1,value:o,onChange:k=>{l(k.target.value),r()},onKeyDown:k=>{k.key==="Enter"&&!k.shiftKey&&(k.preventDefault(),x())},placeholder:P?S("ui.library.composer.continue_placeholder"):S("ui.library.composer.ask_placeholder"),"aria-label":S("ui.library.composer.label"),className:"h-6 min-h-6 max-h-18 resize-none overflow-y-auto border-0 bg-transparent px-0 py-0 text-body leading-6 shadow-none focus-visible:outline-none"}),f.jsx(K,{variant:"primary",size:"icon-sm",disabled:!o.trim()||a,"aria-label":S("ui.library.composer.send"),onClick:()=>void x(),children:a?f.jsx(_t,{"aria-hidden":"true",className:"motion-safe:animate-spin"}):f.jsx(Hi,{"aria-hidden":"true"})})]})]})};function Or(e,n,t){return{id:`library:${e.id}`,title:e.name.trim()||e.derived_name||e.ref.path||e.id,path:e.ref.path??"",content:n,type:"markdown",readMtimeMs:t??void 0,sizeBytes:e.size_bytes,availability:"present"}}async function Ss(e){const n=e instanceof Uint8Array?e:new Uint8Array(e),t=new DataView(n.buffer,n.byteOffset,n.byteLength),s=101010256,i=101075792,r=117853008;let o=-1;const l=Math.max(0,n.length-65557);for(let p=n.length-22;p>=l;p--)if(t.getUint32(p,!0)===s){o=p;break}if(o===-1)throw new Error("Not a valid ZIP file: EOCD not found");let a,d;const c=o-20;if(c>=0&&t.getUint32(c,!0)===r){const p=Number(t.getBigUint64(c+8,!0));if(t.getUint32(p,!0)!==i)throw new Error("Invalid ZIP64 end record");a=Number(t.getBigUint64(p+48,!0)),d=Number(t.getBigUint64(p+32,!0))}else a=t.getUint32(o+16,!0),d=t.getUint16(o+8,!0);if(a+4>n.length)throw new Error("ZIP central directory offset is outside the file");const h=33639248,u={};let g=a;for(let p=0;p<d&&!(g+46>n.length||t.getUint32(g,!0)!==h);p++){const b=t.getUint16(g+10,!0);let _=t.getUint32(g+20,!0),y=t.getUint32(g+24,!0);const w=t.getUint16(g+28,!0),x=t.getUint16(g+30,!0),P=t.getUint16(g+32,!0);let v=t.getUint32(g+42,!0);const k=Gr(n,g+46,w);if(_===4294967295||y===4294967295||v===4294967295){const j=g+46+w,E=j+x;let L=j;for(;L+4<=E;){const z=t.getUint16(L,!0),Q=t.getUint16(L+2,!0);if(z===1){let G=L+4;y===4294967295&&G+8<=E&&(y=Number(t.getBigUint64(G,!0)),G+=8),_===4294967295&&G+8<=E&&(_=Number(t.getBigUint64(G,!0)),G+=8),v===4294967295&&G+8<=E&&(v=Number(t.getBigUint64(G,!0)));break}L+=4+Q}}if(g+=46+w+x+P,k.endsWith("/")||b!==0&&b!==8||v+30>n.length)continue;const T=t.getUint16(v+26,!0),N=t.getUint16(v+28,!0),M=v+30+T+N;if(M+_>n.length)continue;const F=n.subarray(M,M+_);try{u[k]=b===0?F.slice():await Ur(F)}catch(j){console.warn(`[zip.js] Failed to decompress "${k}":`,j.message)}}return u}async function Ur(e){const n=new DecompressionStream("deflate-raw"),t=n.writable.getWriter(),s=n.readable.getReader();t.write(e),t.close();const i=[];let r=0;for(;;){const{value:a,done:d}=await s.read();if(d)break;i.push(a),r+=a.length}const o=new Uint8Array(r);let l=0;for(const a of i)o.set(a,l),l+=a.length;return o}function Gr(e,n,t){return new TextDecoder().decode(e.subarray(n,n+t))}function _e(e){return new DOMParser().parseFromString(e,"application/xml")}function de(e,n){if(!e)return[];const t=[],s=e.getElementsByTagName("*");for(let i=0;i<s.length;i++)s[i].localName===n&&t.push(s[i]);return t}function m(e,n){return de(e,n)[0]??null}function B(e,n,t=null){if(!e)return t;const s=e.getAttribute(n);return s!==null?s:t}function C(e,n,t=0){const s=B(e,n);return s!==null?parseInt(s,10):t}function Ie(e,n,t){return Math.max(n,Math.min(t,e))}const bt=12700,Wr=Object.freeze(Object.defineProperty({__proto__:null,EMU_PER_PT:bt,attr:B,attrInt:C,clamp:Ie,g1:m,gtn:de,parseXml:_e},Symbol.toStringTag,{value:"Module"}));function qr(e){if(!e)return{colors:{},majorFont:"Calibri Light",minorFont:"Calibri"};const n=m(e,"clrScheme"),t={};if(n){const o=["dk1","lt1","dk2","lt2","accent1","accent2","accent3","accent4","accent5","accent6","hlink","folHlink"];for(const l of o){const a=m(n,l);if(!a)continue;const d=m(a,"srgbClr"),c=m(a,"sysClr");d?t[l]=d.getAttribute("val")||"":c&&(t[l]=c.getAttribute("lastClr")||"")}}const s=m(e,"fontScheme");let i="Calibri Light",r="Calibri";if(s){const o=m(s,"majorFont"),l=m(s,"minorFont");if(o){const a=m(o,"latin");a&&(i=a.getAttribute("typeface")||i)}if(l){const a=m(l,"latin");a&&(r=a.getAttribute("typeface")||r)}}return{colors:t,majorFont:i,minorFont:r}}function Kr(e){if(!e)return{};const n=m(e,"clrMap");if(!n)return{};const t={},s=["bg1","tx1","bg2","tx2","accent1","accent2","accent3","accent4","accent5","accent6","hlink","folHlink"];for(const i of s){const r=n.getAttribute(i);r&&(t[i]=r)}return t}function Xr(e,n){const t={...e.colors};for(const[s,i]of Object.entries(n))t[i]!==void 0&&(t[s]=t[i]);return t}const it={calibri:{google:"Carlito",weights:[400,700],generic:"sans-serif"},"calibri light":{google:"Carlito",weights:[300],generic:"sans-serif"},"calibri (body)":{google:"Carlito",weights:[400,700],generic:"sans-serif"},cambria:{google:"Caladea",weights:[400,700],generic:"serif"},"cambria math":{google:"Caladea",weights:[400],generic:"serif"},aptos:{google:"Inter",weights:[300,400,600,700],generic:"sans-serif"},"aptos display":{google:"Inter",weights:[700,800],generic:"sans-serif"},"aptos narrow":{google:"Inter",weights:[400,700],generic:"sans-serif"},"aptos serif":{google:"Lora",weights:[400,700],generic:"serif"},"aptos mono":{google:"Roboto Mono",weights:[400,700],generic:"monospace"},arial:{google:null,weights:[],generic:"sans-serif"},"arial black":{google:null,weights:[],generic:"sans-serif"},"times new roman":{google:null,weights:[],generic:"serif"},times:{google:null,weights:[],generic:"serif"},helvetica:{google:null,weights:[],generic:"sans-serif"},verdana:{google:null,weights:[],generic:"sans-serif"},tahoma:{google:null,weights:[],generic:"sans-serif"},"trebuchet ms":{google:null,weights:[],generic:"sans-serif"},georgia:{google:null,weights:[],generic:"serif"},"courier new":{google:null,weights:[],generic:"monospace"},courier:{google:null,weights:[],generic:"monospace"},impact:{google:null,weights:[],generic:"sans-serif"},"comic sans ms":{google:null,weights:[],generic:"cursive"},palatino:{google:null,weights:[],generic:"serif"},"lucida console":{google:null,weights:[],generic:"monospace"},"lucida sans unicode":{google:null,weights:[],generic:"sans-serif"},"arial narrow":{google:"Arimo",weights:[400,700],generic:"sans-serif"},candara:{google:"Nunito",weights:[300,400,700],generic:"sans-serif"},consolas:{google:"Roboto Mono",weights:[400,700],generic:"monospace"},constantia:{google:"Libre Baskerville",weights:[400,700],generic:"serif"},corbel:{google:"Lato",weights:[300,400,700],generic:"sans-serif"},"franklin gothic medium":{google:"Libre Franklin",weights:[500],generic:"sans-serif"},"franklin gothic book":{google:"Libre Franklin",weights:[400],generic:"sans-serif"},"franklin gothic heavy":{google:"Libre Franklin",weights:[800],generic:"sans-serif"},"gill sans mt":{google:"Quattrocento Sans",weights:[400,700],generic:"sans-serif"},"gill sans":{google:"Quattrocento Sans",weights:[400,700],generic:"sans-serif"},"century gothic":{google:"Josefin Sans",weights:[300,400,700],generic:"sans-serif"},"century schoolbook":{google:"EB Garamond",weights:[400,700],generic:"serif"},garamond:{google:"EB Garamond",weights:[400,700],generic:"serif"},"palatino linotype":{google:"EB Garamond",weights:[400,700],generic:"serif"},"book antiqua":{google:"EB Garamond",weights:[400,700],generic:"serif"},rockwell:{google:"Roboto Slab",weights:[400,700],generic:"serif"},"rockwell extra bold":{google:"Roboto Slab",weights:[800],generic:"serif"},"segoe ui":{google:"Inter",weights:[300,400,600,700],generic:"sans-serif"},"segoe ui light":{google:"Inter",weights:[300],generic:"sans-serif"},"segoe ui semibold":{google:"Inter",weights:[600],generic:"sans-serif"},"segoe ui semilight":{google:"Inter",weights:[350],generic:"sans-serif"},"helvetica neue":{google:"Nunito Sans",weights:[300,400,700],generic:"sans-serif"},"myriad pro":{google:"Source Sans 3",weights:[300,400,600,700],generic:"sans-serif"},futura:{google:"Josefin Sans",weights:[300,400,700],generic:"sans-serif"},"tw cen mt":{google:"Pathway Gothic One",weights:[400],generic:"sans-serif"},"bookman old style":{google:"Libre Baskerville",weights:[400,700],generic:"serif"},frutiger:{google:"Raleway",weights:[300,400,700],generic:"sans-serif"},optima:{google:"Questrial",weights:[400],generic:"sans-serif"},univers:{google:"Nunito Sans",weights:[300,400,700],generic:"sans-serif"},"open sans":{google:"Open Sans",weights:[300,400,600,700],generic:"sans-serif"},lato:{google:"Lato",weights:[300,400,700],generic:"sans-serif"},montserrat:{google:"Montserrat",weights:[300,400,600,700],generic:"sans-serif"},raleway:{google:"Raleway",weights:[300,400,700],generic:"sans-serif"},roboto:{google:"Roboto",weights:[300,400,700],generic:"sans-serif"},"roboto mono":{google:"Roboto Mono",weights:[400,700],generic:"monospace"},"roboto slab":{google:"Roboto Slab",weights:[300,400,700],generic:"serif"},oswald:{google:"Oswald",weights:[400,700],generic:"sans-serif"},"playfair display":{google:"Playfair Display",weights:[400,700],generic:"serif"},merriweather:{google:"Merriweather",weights:[300,400,700],generic:"serif"},nunito:{google:"Nunito",weights:[300,400,700],generic:"sans-serif"},"nunito sans":{google:"Nunito Sans",weights:[300,400,700],generic:"sans-serif"},poppins:{google:"Poppins",weights:[300,400,600,700],generic:"sans-serif"},inter:{google:"Inter",weights:[300,400,600,700],generic:"sans-serif"},"work sans":{google:"Work Sans",weights:[300,400,600,700],generic:"sans-serif"},"dm sans":{google:"DM Sans",weights:[300,400,500,700],generic:"sans-serif"},"dm serif display":{google:"DM Serif Display",weights:[400],generic:"serif"},ubuntu:{google:"Ubuntu",weights:[300,400,700],generic:"sans-serif"},"ubuntu mono":{google:"Ubuntu Mono",weights:[400,700],generic:"monospace"},"source sans pro":{google:"Source Sans 3",weights:[300,400,600,700],generic:"sans-serif"},"source serif pro":{google:"Source Serif 4",weights:[300,400,700],generic:"serif"},"source code pro":{google:"Source Code Pro",weights:[400,700],generic:"monospace"},"exo 2":{google:"Exo 2",weights:[300,400,700],generic:"sans-serif"},"titillium web":{google:"Titillium Web",weights:[300,400,600,700],generic:"sans-serif"},"fira sans":{google:"Fira Sans",weights:[300,400,600,700],generic:"sans-serif"},"fira mono":{google:"Fira Mono",weights:[400,700],generic:"monospace"},"josefin sans":{google:"Josefin Sans",weights:[300,400,700],generic:"sans-serif"},"josefin slab":{google:"Josefin Slab",weights:[300,400,700],generic:"serif"},barlow:{google:"Barlow",weights:[300,400,600,700],generic:"sans-serif"},"barlow condensed":{google:"Barlow Condensed",weights:[300,400,600,700],generic:"sans-serif"},cabin:{google:"Cabin",weights:[400,700],generic:"sans-serif"},"crimson text":{google:"Crimson Text",weights:[400,700],generic:"serif"},"libre baskerville":{google:"Libre Baskerville",weights:[400,700],generic:"serif"},"libre franklin":{google:"Libre Franklin",weights:[400,700],generic:"sans-serif"},"eb garamond":{google:"EB Garamond",weights:[400,700],generic:"serif"},spectral:{google:"Spectral",weights:[300,400,700],generic:"serif"},arvo:{google:"Arvo",weights:[400,700],generic:"serif"},"pt sans":{google:"PT Sans",weights:[400,700],generic:"sans-serif"},"pt serif":{google:"PT Serif",weights:[400,700],generic:"serif"},"pt mono":{google:"PT Mono",weights:[400],generic:"monospace"},karla:{google:"Karla",weights:[300,400,700],generic:"sans-serif"},mukta:{google:"Mukta",weights:[300,400,700],generic:"sans-serif"},hind:{google:"Hind",weights:[300,400,700],generic:"sans-serif"},"noto sans":{google:"Noto Sans",weights:[300,400,700],generic:"sans-serif"},"noto serif":{google:"Noto Serif",weights:[300,400,700],generic:"serif"}},Ot=new Set,yt=new Map,Ut=new Set;let qn=null,hn=null;function Vr(){return hn||(qn=typeof OffscreenCanvas<"u"?new OffscreenCanvas(300,10):Object.assign(document.createElement("canvas"),{width:300,height:10}),hn=qn.getContext("2d")),hn}const Kn="mmmmmmmmmmlllllllllliiiiiiiiiixxxxxxxxxx",Hr=[20,40];function Ts(e){if(Ut.has(e))return!0;if(typeof document<"u"&&document.fonts&&document.fonts.check(`16px "${e}"`))return Ut.add(e),!0;try{const n=Vr(),t=["monospace","serif"];for(const s of Hr)for(const i of t){n.font=`${s}px ${i}`;const r=n.measureText(Kn).width;n.font=`${s}px "${e}", ${i}`;const o=n.measureText(Kn).width;if(Math.abs(o-r)>.5)return Ut.add(e),!0}}catch{}return!1}async function vn(e,n,t={}){let s;if(typeof n=="string"||n instanceof URL)s=n.toString();else if(n instanceof File||n instanceof Blob)s=await n.arrayBuffer();else if(n instanceof Uint8Array)s=n.buffer.slice(n.byteOffset,n.byteOffset+n.byteLength);else if(n instanceof ArrayBuffer)s=n;else throw new TypeError("registerFont: unsupported source type. Expected string, URL, File, Blob, ArrayBuffer, or Uint8Array.");const i={weight:"normal",style:"normal",...t},r=new FontFace(e,typeof s=="string"?`url(${s})`:s,i);await r.load(),document.fonts.add(r);const o=yt.get(e)??[];o.push(r),yt.set(e,o),Ot.add(e),Ut.add(e);const l=e.toLowerCase().trim();return it[l]?it[l]._custom=!0:it[l]={google:null,weights:[],generic:"sans-serif",_custom:!0},console.log(`[pptx-canvas-renderer] Custom font registered: "${e}" (${i.weight} ${i.style})`),r}async function Yr(e){const n=[];for(const[t,s]of Object.entries(e))if(typeof s=="string")n.push(vn(t,s));else if(Array.isArray(s))for(const i of s){const{url:r,...o}=i;n.push(vn(t,r,o))}await Promise.all(n)}function Qr(e,n){if(!e)return[];const t=m(e,"embeddedFontLst");if(!t)return[];const s=[];for(const i of t.children){if(i.localName!=="embeddedFont")continue;const r=m(i,"font"),o=r?r.getAttribute("typeface"):null;if(!o)continue;const l={regular:!1,bold:!1,italic:!1,boldItalic:!1},a=[];for(const d of["regular","bold","italic","boldItalic"]){const c=m(i,d);if(!c)continue;const h=c.getAttribute("r:id")||c.getAttribute("id"),u=n?.[h];u&&(a.push(u.fullPath),l[d]=!0)}s.push({family:o,hasRegular:l.regular,hasBold:l.bold,hasItalic:l.italic,hasBoldItalic:l.boldItalic,paths:a,note:".fntdata files are a proprietary Microsoft format and cannot be used as web fonts directly. Use registerFont() with a compatible woff2/ttf version instead."})}return s}function Zr(e){if(!e)return"sans-serif";if(e==="+mj-lt"||e==="+mj")return"serif";if(e==="+mn-lt"||e==="+mn")return"sans-serif";if(yt.has(e))return e;const n=e.toLowerCase().trim(),t=it[n];return t?t._custom||t.google===null?e:t.google&&Ts(t.google)?t.google:t.google||e:e}function Jr(e){if(!e)return"sans-serif";const n=e.toLowerCase().trim();return it[n]?.generic??"sans-serif"}async function eo(e,n){const t=[...e];n?.majorFont&&t.push(n.majorFont),n?.minorFont&&t.push(n.minorFont);const s=new Map;for(const o of t){if(!o||o.startsWith("+")||o==="+mj-lt"||o==="+mn-lt"||o==="+mj"||o==="+mn"||yt.has(o))continue;const l=o.toLowerCase().trim(),a=it[l];let d=null,c=[400,700];if(a){if(a._custom||a.google===null)continue;d=a.google,c=a.weights.length?a.weights:[400,700]}else d=o;if(!d||Ot.has(d))continue;if(Ts(d)){Ot.add(d);continue}const h=s.get(d)??new Set;c.forEach(u=>h.add(u)),s.set(d,h)}if(s.size===0)return;for(const o of s.keys())Ot.add(o);const r=`https://fonts.googleapis.com/css2?${[...s.entries()].map(([o,l])=>{const a=[...l].sort((c,h)=>c-h),d=[...a.map(c=>`0,${c}`),...a.map(c=>`1,${c}`)].join(";");return`family=${encodeURIComponent(`${o}:ital,wght@${d}`)}`}).join("&")}&display=swap`;try{const o=document.createElement("link");o.rel="stylesheet",o.href=r,document.head.appendChild(o),await new Promise(l=>{o.onload=l,o.onerror=()=>{console.warn("[pptx-canvas-renderer] Google Fonts failed to load:",r),l()},setTimeout(l,5e3)}),document.fonts?.ready&&await Promise.race([document.fonts.ready,new Promise(l=>setTimeout(l,2e3))])}catch(o){console.warn("[pptx-canvas-renderer] Font loading error:",o)}}function to(e){const n=new Set;for(const t of e){if(!t)continue;const s=t.getElementsByTagName("*");for(let i=0;i<s.length;i++){const r=s[i],o=r.localName;if(o==="latin"||o==="ea"||o==="cs"){const l=r.getAttribute("typeface");l&&!l.startsWith("+")&&n.add(l)}}}return n}function js(e,n,t,s,i=1800,r=null){let o=i;if(r){const y=r.getAttribute("sz");y&&(o=parseInt(y,10))}if(n){const y=n.getAttribute("sz");y&&(o=parseInt(y,10))}if(e){const y=e.getAttribute("sz");y&&(o=parseInt(y,10))}let l=!1,a=!1;if(r&&(r.getAttribute("b")==="1"&&(l=!0),r.getAttribute("i")==="1"&&(a=!0)),n){const y=n.getAttribute("b"),w=n.getAttribute("i");y==="1"?l=!0:y==="0"&&(l=!1),w==="1"?a=!0:w==="0"&&(a=!1)}if(e){const y=e.getAttribute("b"),w=e.getAttribute("i");y==="1"?l=!0:y==="0"&&(l=!1),w==="1"?a=!0:w==="0"&&(a=!1)}let d=s?.minorFont??"Calibri";function c(y){if(!y)return;const w=m(y,"latin"),x=w?w.getAttribute("typeface"):y.getAttribute("typeface");if(x){if(x==="+mj-lt"||x==="+mj"){d=s?.majorFont??d;return}if(x==="+mn-lt"||x==="+mn"){d=s?.minorFont??d;return}d=x}}c(r),c(n),c(e);const h=Zr(d),u=Jr(d),g=o*127*t;return{fontStr:`${a?"italic ":""}${l?"bold":"normal"} ${g}px "${h}", ${u}`,sz:o,szPx:g,bold:l,italic:a,family:h,generic:u,rawFamily:d}}function no(){const e=[];for(const[n,t]of yt)for(const s of t)e.push({family:n,weight:s.weight,style:s.style,status:s.status});return e}function $t(e){const n=e.replace("#","");return{r:parseInt(n.slice(0,2),16),g:parseInt(n.slice(2,4),16),b:parseInt(n.slice(4,6),16)}}function Ve(e,n,t){e/=255,n/=255,t/=255;const s=Math.max(e,n,t),i=Math.min(e,n,t);let r=0,o=0;const l=(s+i)/2;if(s!==i){const a=s-i;switch(o=l>.5?a/(2-s-i):a/(s+i),s){case e:r=((n-t)/a+(n<t?6:0))/6;break;case n:r=((t-e)/a+2)/6;break;case t:r=((e-n)/a+4)/6;break}}return{h:r,l,s:o}}function We(e,n,t){if(t===0){const o=Math.round(n*255);return{r:o,g:o,b:o}}const s=n<.5?n*(1+t):n+t-n*t,i=2*n-s,r=(o,l,a)=>(a<0&&(a+=1),a>1&&(a-=1),a<1/6?o+(l-o)*6*a:a<1/2?l:a<2/3?o+(l-o)*(2/3-a)*6:o);return{r:Math.round(r(i,s,e+1/3)*255),g:Math.round(r(i,s,e)*255),b:Math.round(r(i,s,e-1/3)*255)}}const so={black:"000000",white:"FFFFFF",red:"FF0000",green:"008000",blue:"0000FF",yellow:"FFFF00",cyan:"00FFFF",magenta:"FF00FF",orange:"FFA500",purple:"800080",pink:"FFC0CB",brown:"A52A2A",gray:"808080",grey:"808080",navy:"000080",teal:"008080",maroon:"800000",olive:"808000",lime:"00FF00",aqua:"00FFFF",fuchsia:"FF00FF",silver:"C0C0C0",coral:"FF7F50",salmon:"FA8072",gold:"FFD700",khaki:"F0E68C",lavender:"E6E6FA",beige:"F5F5DC",ivory:"FFFFF0",mintcream:"F5FFFA",azure:"F0FFFF",aliceblue:"F0F8FF",ghostwhite:"F8F8FF",darkred:"8B0000",darkgreen:"006400",darkblue:"00008B",darkcyan:"008B8B",darkmagenta:"8B008B",darkorange:"FF8C00",darkgray:"A9A9A9",darkgrey:"A9A9A9",lightgray:"D3D3D3",lightgrey:"D3D3D3",lightblue:"ADD8E6",lightgreen:"90EE90",lightpink:"FFB6C1",lightyellow:"FFFFE0",lightcyan:"E0FFFF",deepskyblue:"00BFFF",royalblue:"4169E1",steelblue:"4682B4",skyblue:"87CEEB",dodgerblue:"1E90FF",cornflowerblue:"6495ED",mediumblue:"0000CD",midnightblue:"191970",indigo:"4B0082",slateblue:"6A5ACD",blueviolet:"8A2BE2",mediumpurple:"9370DB",orchid:"DA70D6",violet:"EE82EE",plum:"DDA0DD",thistle:"D8BFD8",hotpink:"FF69B4",deeppink:"FF1493",crimson:"DC143C",firebrick:"B22222",tomato:"FF6347",orangered:"FF4500",darkorange2:"FF8C00",chocolate:"D2691E",saddlebrown:"8B4513",sienna:"A0522D",tan:"D2B48C",burlywood:"DEB887",wheat:"F5DEB3",moccasin:"FFE4B5",peachpuff:"FFDAB9",papayawhip:"FFEFD5",mistyrose:"FFE4E1",linen:"FAF0E6",oldlace:"FDF5E6",floralwhite:"FFFAF0",antiquewhite:"FAEBD7",bisque:"FFE4C4",blanchedalmond:"FFEBCD",cornsilk:"FFF8DC",lemonchiffon:"FFFACD",honeydew:"F0FFF0",palegreen:"98FB98",lightseagreen:"20B2AA",mediumseagreen:"3CB371",seagreen:"2E8B57",forestgreen:"228B22",yellowgreen:"9ACD32",olivedrab:"6B8E23",greenyellow:"ADFF2F",chartreuse:"7FFF00",springgreen:"00FF7F",mediumspringgreen:"00FA9A",aquamarine:"7FFFD4",turquoise:"40E0D0",mediumturquoise:"48D1CC",paleturquoise:"AFEEEE",cadetblue:"5F9EA0",powderblue:"B0E0E6",lightsteelblue:"B0C4DE",slategray:"708090",slategrey:"708090",dimgray:"696969",dimgrey:"696969",snow:"FFFAFA",seashell:"FFF5EE",whitesmoke:"F5F5F5",gainsboro:"DCDCDC"};function io(e,n){if(!n)return e;let{r:t,g:s,b:i,a:r=1}=e;for(const o of n.children){const l=o.localName,a=parseInt(o.getAttribute("val")??"0",10);switch(l){case"lumMod":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h,Ie(c.l*d,0,1),c.s);t=h.r,s=h.g,i=h.b;break}case"lumOff":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h,Ie(c.l+d,0,1),c.s);t=h.r,s=h.g,i=h.b;break}case"tint":{const d=a/1e5;t=Math.round(t+(255-t)*(1-d)),s=Math.round(s+(255-s)*(1-d)),i=Math.round(i+(255-i)*(1-d));break}case"shade":{const d=a/1e5;t=Math.round(t*d),s=Math.round(s*d),i=Math.round(i*d);break}case"satMod":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h,c.l,Ie(c.s*d,0,1));t=h.r,s=h.g,i=h.b;break}case"satOff":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h,c.l,Ie(c.s+d,0,1));t=h.r,s=h.g,i=h.b;break}case"hueMod":{const d=a/1e5,c=Ve(t,s,i),h=We(c.h*d%1,c.l,c.s);t=h.r,s=h.g,i=h.b;break}case"hueOff":{const d=a/216e5,c=Ve(t,s,i),h=We(((c.h+d)%1+1)%1,c.l,c.s);t=h.r,s=h.g,i=h.b;break}case"alpha":{r=a/1e5;break}case"alphaOff":{r=Ie(r+a/1e5,0,1);break}case"alphaMod":{r=Ie(r*a/1e5,0,1);break}case"inv":{t=255-t,s=255-s,i=255-i;break}case"gray":{t=s=i=Math.round(.2126*t+.7152*s+.0722*i);break}case"comp":{const d=Ve(t,s,i),c=We((d.h+.5)%1,d.l,d.s);t=c.r,s=c.g,i=c.b;break}}}return{r:Ie(t,0,255),g:Ie(s,0,255),b:Ie(i,0,255),a:r}}function ye(e,n){if(!e)return null;const t=e.localName;let s=null,i=1;if(t==="srgbClr"){const r=e.getAttribute("val")||"";r.length>=6&&(s=$t(r))}else if(t==="schemeClr"){const o=e.getAttribute("val")||"",l=n?.[o];l?s=$t(l):s={r:0,g:0,b:0}}else if(t==="prstClr"){const r=(e.getAttribute("val")||"").toLowerCase(),o=so[r];o&&(s=$t(o))}else if(t==="sysClr"){const r=e.getAttribute("lastClr");r?.length>=6?s=$t(r):s={r:0,g:0,b:0}}else if(t==="hslClr"){const r=C(e,"hue",0)/216e5,o=C(e,"sat",0)/1e5,l=C(e,"lum",0)/1e5;s=We(r,l,o)}else if(t==="scRgbClr"){const r=C(e,"r",0)/1e5,o=C(e,"g",0)/1e5,l=C(e,"b",0)/1e5;s={r:Math.round(Math.pow(r,1/2.2)*255),g:Math.round(Math.pow(o,1/2.2)*255),b:Math.round(Math.pow(l,1/2.2)*255)}}return s?io({...s,a:i},e):null}function ge(e,n){if(!e)return"transparent";const t=n!==void 0?n:e.a??1;return t<1?`rgba(${e.r},${e.g},${e.b},${t.toFixed(3)})`:`rgb(${e.r},${e.g},${e.b})`}function me(e){if(!e)return null;const n=["srgbClr","schemeClr","prstClr","sysClr","hslClr","scRgbClr"];for(const t of n){const s=m(e,t);if(s)return s}return null}function Xn(e,n){if(!e)return null;const t=m(e,"solidFill");if(!t)return null;const s=me(t),i=ye(s,n);return i?ge(i):null}function ro(e,n,t){const s=Xn(e,t);return s||Xn(n,t)}function Kt(e,n,t,s,i,r,o){const l=u=>u*Math.PI/180,a=(u,g=5e4)=>(o&&o[u]!==void 0?o[u]:g)/1e5,d=t+i/2,c=s+r/2,h=Math.min(i,r);switch(e.beginPath(),n){case"rect":case"snip1Rect":e.rect(t,s,i,r);break;case"roundRect":{const u=a(0,16667)*h*.5;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.arcTo(t+i,s,t+i,s+u,u),e.lineTo(t+i,s+r-u),e.arcTo(t+i,s+r,t+i-u,s+r,u),e.lineTo(t+u,s+r),e.arcTo(t,s+r,t,s+r-u,u),e.lineTo(t,s+u),e.arcTo(t,s,t+u,s,u),e.closePath();break}case"ellipse":case"oval":e.ellipse(d,c,i/2,r/2,0,0,Math.PI*2);break;case"triangle":case"isoscelesTriangle":e.moveTo(d,s),e.lineTo(t+i,s+r),e.lineTo(t,s+r),e.closePath();break;case"rightTriangle":e.moveTo(t,s),e.lineTo(t+i,s+r),e.lineTo(t,s+r),e.closePath();break;case"parallelogram":{const u=a(0,25e3),g=i*u;e.moveTo(t+g,s),e.lineTo(t+i,s),e.lineTo(t+i-g,s+r),e.lineTo(t,s+r),e.closePath();break}case"trapezoid":{const u=a(0,25e3),g=i*u;e.moveTo(t+g,s),e.lineTo(t+i-g,s),e.lineTo(t+i,s+r),e.lineTo(t,s+r),e.closePath();break}case"diamond":e.moveTo(d,s),e.lineTo(t+i,c),e.lineTo(d,s+r),e.lineTo(t,c),e.closePath();break;case"pentagon":tt(e,d,c,i/2,r/2,5,-Math.PI/2);break;case"hexagon":tt(e,d,c,i/2,r/2,6,0);break;case"heptagon":tt(e,d,c,i/2,r/2,7,-Math.PI/2);break;case"octagon":tt(e,d,c,i/2,r/2,8,Math.PI/8);break;case"decagon":tt(e,d,c,i/2,r/2,10,-Math.PI/2);break;case"dodecagon":tt(e,d,c,i/2,r/2,12,0);break;case"plus":case"cross":{const u=a(0,25e3),g=h*u,p=d-g/2,b=d+g/2,_=c-g/2,y=c+g/2;e.moveTo(p,s),e.lineTo(b,s),e.lineTo(b,_),e.lineTo(t+i,_),e.lineTo(t+i,y),e.lineTo(b,y),e.lineTo(b,s+r),e.lineTo(p,s+r),e.lineTo(p,y),e.lineTo(t,y),e.lineTo(t,_),e.lineTo(p,_),e.closePath();break}case"star4":$e(e,d,c,i/2,r/2,4,a(0,37500));break;case"star5":$e(e,d,c,i/2,r/2,5,a(0,19098),-Math.PI/2);break;case"star6":$e(e,d,c,i/2,r/2,6,a(0,28868),0);break;case"star7":$e(e,d,c,i/2,r/2,7,a(0,34601),-Math.PI/2);break;case"star8":$e(e,d,c,i/2,r/2,8,a(0,29289),Math.PI/8);break;case"star10":$e(e,d,c,i/2,r/2,10,a(0,30902),-Math.PI/2);break;case"star12":$e(e,d,c,i/2,r/2,12,a(0,37720),0);break;case"star16":$e(e,d,c,i/2,r/2,16,a(0,37500),0);break;case"star24":$e(e,d,c,i/2,r/2,24,a(0,37500),0);break;case"star32":$e(e,d,c,i/2,r/2,32,a(0,37500),0);break;case"rightArrow":{const u=a(0,5e4),g=a(1,5e4),p=(r-r*g)/2,b=t+i*(1-u);e.moveTo(t,s+p),e.lineTo(b,s+p),e.lineTo(b,s),e.lineTo(t+i,c),e.lineTo(b,s+r),e.lineTo(b,s+r-p),e.lineTo(t,s+r-p),e.closePath();break}case"leftArrow":{const u=a(0,5e4),g=a(1,5e4),p=(r-r*g)/2,b=t+i*u;e.moveTo(t+i,s+p),e.lineTo(b,s+p),e.lineTo(b,s),e.lineTo(t,c),e.lineTo(b,s+r),e.lineTo(b,s+r-p),e.lineTo(t+i,s+r-p),e.closePath();break}case"upArrow":{const u=a(0,5e4),g=a(1,5e4),p=(i-i*g)/2,b=s+r*u;e.moveTo(t+p,s+r),e.lineTo(t+p,b),e.lineTo(t,b),e.lineTo(d,s),e.lineTo(t+i,b),e.lineTo(t+i-p,b),e.lineTo(t+i-p,s+r),e.closePath();break}case"downArrow":{const u=a(0,5e4),g=a(1,5e4),p=(i-i*g)/2,b=s+r*(1-u);e.moveTo(t+p,s),e.lineTo(t+p,b),e.lineTo(t,b),e.lineTo(d,s+r),e.lineTo(t+i,b),e.lineTo(t+i-p,b),e.lineTo(t+i-p,s),e.closePath();break}case"leftRightArrow":{const u=a(0,25e3),g=a(1,5e4),p=(r-r*g)/2,b=t+i*u,_=t+i*(1-u);e.moveTo(t,c),e.lineTo(b,s),e.lineTo(b,s+p),e.lineTo(_,s+p),e.lineTo(_,s),e.lineTo(t+i,c),e.lineTo(_,s+r),e.lineTo(_,s+r-p),e.lineTo(b,s+r-p),e.lineTo(b,s+r),e.closePath();break}case"upDownArrow":{const u=a(0,25e3),g=a(1,5e4),p=(i-i*g)/2,b=s+r*u,_=s+r*(1-u);e.moveTo(d,s),e.lineTo(t+i,b),e.lineTo(t+i-p,b),e.lineTo(t+i-p,_),e.lineTo(t+i,_),e.lineTo(d,s+r),e.lineTo(t,_),e.lineTo(t+p,_),e.lineTo(t+p,b),e.lineTo(t,b),e.closePath();break}case"chevron":{const u=a(0,5e4),g=i*u;e.moveTo(t,s),e.lineTo(t+i-g,s),e.lineTo(t+i,c),e.lineTo(t+i-g,s+r),e.lineTo(t,s+r),e.lineTo(t+g,c),e.closePath();break}case"pentagon5":case"homePlate":{const u=a(0,5e4);e.moveTo(t,s),e.lineTo(t+i*(1-u),s),e.lineTo(t+i,c),e.lineTo(t+i*(1-u),s+r),e.lineTo(t,s+r),e.closePath();break}case"arc":{const u=a(0,270)*Math.PI/180,g=a(1,288e5/6e4)*Math.PI/180;e.moveTo(d,c),e.arc(d,c,Math.min(i,r)/2,u,u+g),e.closePath();break}case"blockArc":{const u=(a(0,0)*360-90)*Math.PI/180,g=a(1,25e3)*360*Math.PI/180,p=a(2,25e3)*Math.min(i,r)/2,b=Math.min(i,r)/2,_=b-p;e.moveTo(d+b*Math.cos(u),c+b*Math.sin(u)),e.arc(d,c,b,u,u+g),e.arc(d,c,Math.max(1,_),u+g,u,!0),e.closePath();break}case"line":case"straightConnector1":e.moveTo(t,c),e.lineTo(t+i,c);break;case"bentConnector3":case"bentConnector4":case"bentConnector5":case"elbowConnector":e.moveTo(t,s),e.lineTo(t,c),e.lineTo(t+i,c),e.lineTo(t+i,s+r);break;case"curvedConnector3":case"curvedConnector4":e.moveTo(t,s),e.bezierCurveTo(t,s+r/2,t+i,s+r/2,t+i,s+r);break;case"heart":{oo(e,t,s,i,r);break}case"lightningBolt":{e.moveTo(t+i*.6,s),e.lineTo(t+i*.2,s+r*.45),e.lineTo(t+i*.5,s+r*.45),e.lineTo(t+i*.4,s+r),e.lineTo(t+i*.8,s+r*.55),e.lineTo(t+i*.5,s+r*.55),e.closePath();break}case"moon":{e.arc(d+i*.1,c,r*.5,l(-120),l(120)),e.arc(d+i*.4,c,r*.45,l(120),l(-120),!0),e.closePath();break}case"noSmoking":{const u=Math.min(i,r)/2;e.arc(d,c,u,0,Math.PI*2),e.moveTo(d-u*.7,c+u*.7),e.lineTo(d+u*.7,c-u*.7);break}case"flowChartProcess":e.rect(t,s,i,r);break;case"flowChartDecision":e.moveTo(d,s),e.lineTo(t+i,c),e.lineTo(d,s+r),e.lineTo(t,c),e.closePath();break;case"flowChartTerminator":{const u=r/2;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.arc(t+i-u,c,u,-Math.PI/2,Math.PI/2),e.lineTo(t+u,s+r),e.arc(t+u,c,u,Math.PI/2,-Math.PI/2),e.closePath();break}case"flowChartDocument":{e.moveTo(t,s),e.lineTo(t+i,s),e.lineTo(t+i,s+r*.8),e.bezierCurveTo(t+i*.75,s+r*.8,t+i*.75,s+r,t+i*.5,s+r),e.bezierCurveTo(t+i*.25,s+r,t+i*.25,s+r*.8,t,s+r*.8),e.closePath();break}case"flowChartDatabase":case"cylinder":{const u=r*.1;e.moveTo(t,s+u),e.ellipse(d,s+u,i/2,u,0,Math.PI,0),e.lineTo(t+i,s+r-u),e.ellipse(d,s+r-u,i/2,u,0,0,Math.PI),e.closePath();break}case"cube":{const u=i*.15;e.moveTo(t+u,s),e.lineTo(t+i,s),e.lineTo(t+i,s+r-u),e.lineTo(t+i-u,s+r),e.lineTo(t,s+r),e.lineTo(t,s+u),e.closePath(),e.moveTo(t+u,s),e.lineTo(t+u,s+u),e.lineTo(t,s+u),e.moveTo(t+u,s+u),e.lineTo(t+i,s+u);break}case"callout1":case"borderCallout1":case"wedgeRectCallout":{e.rect(t,s,i,r*.8),e.moveTo(d-i*.1,s+r*.8),e.lineTo(d,s+r),e.lineTo(d+i*.1,s+r*.8),e.closePath();break}case"wedgeRoundRectCallout":{const u=r*.05;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.arcTo(t+i,s,t+i,s+u,u),e.lineTo(t+i,s+r*.75-u),e.arcTo(t+i,s+r*.75,t+i-u,s+r*.75,u),e.lineTo(d+i*.1,s+r*.75),e.lineTo(d,s+r),e.lineTo(d-i*.1,s+r*.75),e.lineTo(t+u,s+r*.75),e.arcTo(t,s+r*.75,t,s+r*.75-u,u),e.lineTo(t,s+u),e.arcTo(t,s,t+u,s,u),e.closePath();break}case"wedgeEllipseCallout":{e.ellipse(d,c-r*.05,i/2,r*.45,0,0,Math.PI*2),e.moveTo(d-i*.1,c+r*.4),e.lineTo(d,s+r),e.lineTo(d+i*.1,c+r*.4),e.closePath();break}case"cloudCallout":case"cloud":{e.beginPath();const u=[{cx:d-i*.22,cy:c-r*.12,r:i*.16},{cx:d-i*.07,cy:c-r*.22,r:i*.18},{cx:d+i*.1,cy:c-r*.22,r:i*.17},{cx:d+i*.25,cy:c-r*.12,r:i*.15},{cx:d+i*.35,cy:c+r*.05,r:i*.13},{cx:d-i*.3,cy:c+r*.05,r:i*.13}];for(const g of u)e.arc(g.cx,g.cy,g.r,0,Math.PI*2);e.rect(d-i*.35,c,i*.7,r*.25);break}case"smileyFace":{e.arc(d,c,Math.min(i,r)/2,0,Math.PI*2);break}case"donut":{const u=Math.min(i,r)/2,g=u*a(0,25e3);e.arc(d,c,u,0,Math.PI*2),e.arc(d,c,g,Math.PI*2,0,!0);break}case"bracketPair":{const u=i*.2;e.moveTo(t+u,s),e.arcTo(t,s,t,s+u,u),e.lineTo(t,s+r-u),e.arcTo(t,s+r,t+u,s+r,u),e.moveTo(t+i-u,s),e.arcTo(t+i,s,t+i,s+u,u),e.lineTo(t+i,s+r-u),e.arcTo(t+i,s+r,t+i-u,s+r,u);break}case"bracePair":{const u=r*.15;e.moveTo(d-i*.35,s),e.bezierCurveTo(d-i*.45,s,d-i*.45,s,d-i*.45,s+u),e.lineTo(d-i*.45,c-u),e.bezierCurveTo(d-i*.45,c,d-i*.5,c,d-i*.5,c),e.bezierCurveTo(d-i*.5,c,d-i*.45,c,d-i*.45,c+u),e.lineTo(d-i*.45,s+r-u),e.bezierCurveTo(d-i*.45,s+r,d-i*.35,s+r,d-i*.35,s+r);break}case"irregularSeal1":case"irregularSeal2":{$e(e,d,c,i/2,r/2,12,a(0,42533),0);break}case"accentCallout1":case"accentCallout2":case"calloutWedgeRect":e.rect(t,s,i,r);break;case"flowChartAlternateProcess":{const u=r*.15;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.arcTo(t+i,s,t+i,s+u,u),e.lineTo(t+i,s+r-u),e.arcTo(t+i,s+r,t+i-u,s+r,u),e.lineTo(t+u,s+r),e.arcTo(t,s+r,t,s+r-u,u),e.lineTo(t,s+u),e.arcTo(t,s,t+u,s,u),e.closePath();break}case"flowChartConnector":e.arc(d,c,Math.min(i,r)/2,0,Math.PI*2);break;case"flowChartInputOutput":{const u=i*.2;e.moveTo(t+u,s),e.lineTo(t+i,s),e.lineTo(t+i-u,s+r),e.lineTo(t,s+r),e.closePath();break}case"flowChartPredefinedProcess":{e.rect(t,s,i,r),e.moveTo(t+i*.1,s),e.lineTo(t+i*.1,s+r),e.moveTo(t+i*.9,s),e.lineTo(t+i*.9,s+r);break}case"flowChartManualInput":{e.moveTo(t,s+r*.2),e.lineTo(t+i,s),e.lineTo(t+i,s+r),e.lineTo(t,s+r),e.closePath();break}case"flowChartPreparation":{const u=i*.2;e.moveTo(t+u,s),e.lineTo(t+i-u,s),e.lineTo(t+i,c),e.lineTo(t+i-u,s+r),e.lineTo(t+u,s+r),e.lineTo(t,c),e.closePath();break}case"ribbon":case"ribbon2":{const u=r*.3;e.moveTo(t,s+u/2),e.lineTo(t+i*.1,s),e.lineTo(t+i*.1,s+r-u),e.lineTo(t,s+r),e.lineTo(t+i*.5,s+r-u),e.lineTo(t+i,s+r),e.lineTo(t+i-i*.1,s+r-u),e.lineTo(t+i-i*.1,s),e.lineTo(t+i,s+u/2),e.lineTo(t+i*.5,s+u),e.closePath();break}case"ellipseRibbon":case"ellipseRibbon2":{e.ellipse(d,c,i/2,r/2,0,0,Math.PI*2);break}case"teardrop":{const u=Math.min(i,r)*.45;e.arc(d,c+u,u,-Math.PI,0),e.bezierCurveTo(d+u,c+u-u*.55,d+u*.1,c-r*.4,d,s),e.bezierCurveTo(d-u*.1,c-r*.4,d-u,c+u-u*.55,d-u,c+u),e.closePath();break}default:return e.rect(t,s,i,r),!1}return!0}function tt(e,n,t,s,i,r,o=0){for(let l=0;l<r;l++){const a=o+l/r*Math.PI*2,d=n+s*Math.cos(a),c=t+i*Math.sin(a);l===0?e.moveTo(d,c):e.lineTo(d,c)}e.closePath()}function $e(e,n,t,s,i,r,o=.5,l=-Math.PI/2){for(let a=0;a<r*2;a++){const d=l+a/(r*2)*Math.PI*2,c=a%2===1,h=c?s*o:s,u=c?i*o:i,g=n+h*Math.cos(d),p=t+u*Math.sin(d);a===0?e.moveTo(g,p):e.lineTo(g,p)}e.closePath()}function oo(e,n,t,s,i){e.beginPath();const r=n+s/2,o=t+i*.25;e.moveTo(r,t+i*.9),e.bezierCurveTo(n-s*.1,t+i*.6,n-s*.1,o-i*.05,r-s*.25,o-i*.1),e.bezierCurveTo(r-s*.5+s*.05,t+i*.05,r-s*.03,t+i*.05,r,o-i*.15),e.bezierCurveTo(r+s*.03,t+i*.05,r+s*.5-s*.05,t+i*.05,r+s*.25,o-i*.1),e.bezierCurveTo(n+s*1.1,o-i*.05,n+s*1.1,t+i*.6,r,t+i*.9),e.closePath()}const Vn=["#4472C4","#ED7D31","#A9D18E","#FF0000","#FFC000","#5B9BD5","#70AD47","#C00000","#7030A0","#00B0F0","#FF7F00","#9E480E"];function ao(e){const n=e?.textContent?.trim();if(n==null||n==="")return null;const t=parseFloat(n);return isNaN(t)?n:t}function gt(e){if(!e)return[];const n=C(m(e,"ptCount"),"val",0),t=new Array(n).fill(null);for(const s of de(e,"pt")){const i=C(s,"idx",0);t[i]=ao(m(s,"v"))}return t}function Tt(e){const n=m(e,"tx");if(!n)return null;const t=m(n,"v");if(t)return t.textContent.trim();const s=m(n,"strCache");if(s){const i=m(s,"pt"),r=i?m(i,"v"):null;return r?r.textContent.trim():null}return null}function Jt(e){const n=m(e,"cat")||m(e,"xVal");return n?gt(m(n,"strCache")||m(n,"numCache")):[]}function jt(e){const n=m(e,"val")||m(e,"yVal");return n?gt(m(n,"numCache")):[]}function Qe(e,n,t){const s=m(e,"spPr");if(s){const r=m(s,"solidFill");if(r){const o=me(r),l=ye(o,t);if(l)return ge(l)}}const i=`accent${n%6+1}`;return t[i]?`#${t[i]}`:Vn[n%Vn.length]}function Fs(e,n){const t={};for(const s of de(e,"dPt")){const i=C(m(s,"idx"),"val",-1);if(i<0)continue;const r=m(s,"spPr");if(!r)continue;const o=m(r,"solidFill");if(!o)continue;const l=me(o),a=ye(l,n);a&&(t[i]=ge(a))}return t}function en(e,n,t,s,i={}){const{padL:r=.12,padR:o=.06,padT:l=.08,padB:a=.1,legendH:d=.1,hasLegend:c=!0,hasTitle:h=!1}=i,u=h?s*.08:0,g=c?s*d:0;return{x:e+t*r,y:n+s*l+u,w:t*(1-r-o),h:s*(1-l-a)-g-u,legendY:n+s*(1-d*.7)}}function vt(e,n,t,s,i,r=3){s<0&&(n+=s,s=-s),i<0&&(t+=i,i=-i),r=Math.min(r,Math.abs(s)/2,Math.abs(i)/2),e.beginPath(),e.moveTo(n+r,t),e.arcTo(n+s,t,n+s,t+i,r),e.arcTo(n+s,t+i,n,t+i,r),e.arcTo(n,t+i,n,t,r),e.arcTo(n,t,n+s,t,r),e.closePath()}function Ee(e,n,t,s,i,r="#999",o=.7){e.save(),e.strokeStyle=r,e.lineWidth=o,e.setLineDash([]),e.beginPath(),e.moveTo(n,t),e.lineTo(s,i),e.stroke(),e.restore()}function Ze(e,n,t,s,i){e.save(),e.strokeStyle="rgba(0,0,0,0.10)",e.lineWidth=.5,e.setLineDash([3,3]),e.beginPath(),e.moveTo(n,t),e.lineTo(s,i),e.stroke(),e.setLineDash([]),e.restore()}function Cs(e,n=5){const t=e/n,s=Math.pow(10,Math.floor(Math.log10(t))),i=t/s;let r;return i<1.5?r=1:i<3.5?r=2:i<7.5?r=5:r=10,r*s}function wt(e,n=!0){const t=e.filter(o=>typeof o=="number"&&isFinite(o));if(!t.length)return{min:0,max:100,step:20};let s=n?Math.min(0,...t):Math.min(...t),i=Math.max(...t);s===i&&(s-=1,i+=1);const r=Cs(i-s);return i=Math.ceil(i/r)*r,s=Math.floor(s/r)*r,{min:s,max:i,step:r}}function Je(e){return typeof e!="number"?String(e??""):Math.abs(e)>=1e9?(e/1e9).toFixed(1).replace(/\.0$/,"")+"B":Math.abs(e)>=1e6?(e/1e6).toFixed(1).replace(/\.0$/,"")+"M":Math.abs(e)>=1e3?(e/1e3).toFixed(1).replace(/\.0$/,"")+"K":Number.isInteger(e)?String(e):e.toFixed(1)}function Ft(e,n,t,s,i,r,o){if(!r.length)return;const l=Math.max(8,Math.min(14,s*.025))*o,a=s/Math.max(r.length,1);e.save(),e.font=`${l}px sans-serif`,e.textBaseline="middle";for(let d=0;d<r.length;d++){if(!r[d].name)continue;const c=n+a*d+l*.5;e.fillStyle=r[d].color,vt(e,c,i-l/2,l*1.2,l),e.fill(),e.fillStyle="#444",e.fillText(r[d].name,c+l*1.5,i)}e.restore()}function lo(e,n,t,s,i,r,o,l){const a=m(n,"barChart")||m(n,"bar3DChart"),d=!a||B(a,"barDir","col")!=="bar",c=B(a,"grouping","clustered"),h=c==="stacked"||c==="percentStacked",u=c==="percentStacked",g=de(a,"ser"),p=g.map((k,T)=>({name:Tt(k),values:jt(k),color:Qe(k,T,o),dptColors:Fs(k,o)}));if(!p.length)return;const b=Jt(g[0])||[],_=Math.max(b.length,p[0]?.values.length||0,1),y=en(t,s,i,r,{hasLegend:p.length>1});let w;h?(w=Array.from({length:_},(k,T)=>p.reduce((N,M)=>N+(M.values[T]||0),0)),u&&(w=w.map(()=>100))):w=p.flatMap(k=>k.values);const x=wt(w),P=Math.max(7,Math.min(11,y.w*.018))*l;e.font=`${P}px sans-serif`,e.textBaseline="middle";const v=Math.round((x.max-x.min)/x.step);if(d){e.save(),e.textAlign="right",e.fillStyle="#666";for(let j=0;j<=v;j++){const E=x.min+j*x.step,L=(E-x.min)/(x.max-x.min),z=y.y+y.h-L*y.h;Ze(e,y.x,z,y.x+y.w,z),e.fillText(u?E+"%":Je(E),y.x-4*l,z)}e.restore(),e.save(),e.textAlign="center",e.fillStyle="#666";const k=y.w/_;for(let j=0;j<_;j++){const E=y.x+k*j+k/2,L=String(b[j]??j+1);e.fillText(L,E,y.y+y.h+P*1.5)}e.restore(),Ee(e,y.x,y.y,y.x,y.y+y.h),Ee(e,y.x,y.y+y.h,y.x+y.w,y.y+y.h);const T=y.w/_,N=T*.15,M=T-N*2,F=h?M:M/p.length;for(let j=0;j<_;j++){const E=y.x+T*j+N;let L=0;for(let z=0;z<p.length;z++){const Q=p[z];let G=Q.values[j]??0;if(u){const re=p.reduce((ce,ne)=>ce+(ne.values[j]||0),0);G=re?G/re*100:0}const O=Q.dptColors[j]||Q.color,q=Math.abs(G)/(x.max-x.min)*y.h,Z=h?E:E+z*F,J=h?(L-x.min)/(x.max-x.min):Math.max(0,-x.min)/(x.max-x.min),R=y.y+y.h-J*y.h,H=G>=0?R-q:R;e.save(),e.fillStyle=O,vt(e,Z,H,h?M:F-1*l,q,2*l),e.fill();const ie=e.createLinearGradient(Z,H,Z,H+q*.3);ie.addColorStop(0,"rgba(255,255,255,0.18)"),ie.addColorStop(1,"rgba(255,255,255,0)"),e.fillStyle=ie,e.fill(),e.restore(),h&&(L+=Math.abs(G))}}}else{e.save(),e.textAlign="right",e.fillStyle="#666";const k=y.h/_;for(let j=0;j<_;j++){const E=y.y+k*j+k/2,L=String(b[j]??j+1);e.fillText(L,y.x-4*l,E)}e.restore(),e.save(),e.textAlign="center",e.fillStyle="#666";for(let j=0;j<=v;j++){const E=x.min+j*x.step,L=(E-x.min)/(x.max-x.min),z=y.x+L*y.w;Ze(e,z,y.y,z,y.y+y.h),e.fillText(u?E+"%":Je(E),z,y.y+y.h+P*1.5)}e.restore(),Ee(e,y.x,y.y+y.h,y.x+y.w,y.y+y.h),Ee(e,y.x,y.y,y.x,y.y+y.h);const T=k*.15,N=k-T*2,M=h?N:N/p.length,F=y.x+-x.min/(x.max-x.min)*y.w;for(let j=0;j<_;j++){const E=y.y+k*j+T;let L=0;for(let z=0;z<p.length;z++){const Q=p[z];let G=Q.values[j]??0;if(u){const H=p.reduce((ie,re)=>ie+(re.values[j]||0),0);G=H?G/H*100:0}const O=Q.dptColors[j]||Q.color,q=Math.abs(G)/(x.max-x.min)*y.w,Z=h?E:E+z*M,J=h?F+L/(x.max-x.min)*y.w:F,R=G>=0?J:J-q;e.save(),e.fillStyle=O,vt(e,R,Z,q,h?N:M-1*l,2*l),e.fill(),e.restore(),h&&(L+=Math.abs(G))}}}p.length>1&&Ft(e,t,s,i,y.legendY,p,l)}function co(e,n,t,s,i,r,o,l){const a=m(n,"lineChart")||m(n,"line3DChart"),d=de(a,"ser"),c=d.map((y,w)=>({name:Tt(y),values:jt(y),color:Qe(y,w,o),marker:B(m(y,"marker"),"symbol","none")!=="none",smooth:B(m(y,"smooth"),"val","0")==="1"}));if(!c.length)return;const h=Jt(d[0])||[],u=Math.max(h.length,c[0]?.values.length||0,1),g=en(t,s,i,r,{hasLegend:!0}),p=wt(c.flatMap(y=>y.values)),b=Math.max(7,Math.min(11,g.w*.018))*l,_=Math.round((p.max-p.min)/p.step);e.save(),e.textAlign="right",e.fillStyle="#666",e.font=`${b}px sans-serif`;for(let y=0;y<=_;y++){const w=p.min+y*p.step,x=(w-p.min)/(p.max-p.min),P=g.y+g.h-x*g.h;Ze(e,g.x,P,g.x+g.w,P),e.fillText(Je(w),g.x-4*l,P)}e.restore(),e.save(),e.textAlign="center",e.fillStyle="#666",e.font=`${b}px sans-serif`;for(let y=0;y<u;y++){const w=g.x+y/(u-1||1)*g.w;Ze(e,w,g.y,w,g.y+g.h);const x=String(h[y]??y+1);e.fillText(x,w,g.y+g.h+b*1.5)}e.restore(),Ee(e,g.x,g.y,g.x,g.y+g.h),Ee(e,g.x,g.y+g.h,g.x+g.w,g.y+g.h);for(const y of c){const w=y.values.map((P,v)=>{const k=u>1?v/(u-1):.5,T=(P-p.min)/(p.max-p.min);return{x:g.x+k*g.w,y:g.y+g.h-T*g.h,v:P}}).filter(P=>typeof P.v=="number");if(w.length<2)continue;e.save(),e.beginPath(),e.moveTo(w[0].x,g.y+g.h);for(const P of w)e.lineTo(P.x,P.y);if(e.lineTo(w[w.length-1].x,g.y+g.h),e.closePath(),e.fillStyle=y.color+"22",e.fill(),e.restore(),e.save(),e.strokeStyle=y.color,e.lineWidth=2*l,e.lineJoin="round",e.lineCap="round",e.beginPath(),y.smooth&&w.length>2){e.moveTo(w[0].x,w[0].y);for(let P=1;P<w.length-1;P++){const v=(w[P].x+w[P+1].x)/2,k=(w[P].y+w[P+1].y)/2;e.quadraticCurveTo(w[P].x,w[P].y,v,k)}e.lineTo(w[w.length-1].x,w[w.length-1].y)}else{e.moveTo(w[0].x,w[0].y);for(const P of w.slice(1))e.lineTo(P.x,P.y)}e.stroke(),e.restore();const x=3.5*l;for(const P of w)e.save(),e.fillStyle=y.color,e.strokeStyle="#fff",e.lineWidth=1.5*l,e.beginPath(),e.arc(P.x,P.y,x,0,Math.PI*2),e.fill(),e.stroke(),e.restore()}Ft(e,t,s,i,g.legendY,c,l)}function uo(e,n,t,s,i,r,o,l){const a=m(n,"areaChart")||m(n,"area3DChart"),d=B(a,"grouping","standard"),c=d==="percentStacked",h=d==="stacked"||c,g=de(a,"ser").map((v,k)=>({name:Tt(v),values:jt(v),color:Qe(v,k,o)})).reverse();if(!g.length)return;const p=Math.max(...g.map(v=>v.values.length),1),b=en(t,s,i,r,{hasLegend:!0});let _=0;if(c)_=100;else for(let v=0;v<p;v++){const k=g.reduce((T,N)=>T+(N.values[v]||0),0);_=Math.max(_,k)}const y={min:0,max:_||100,step:Cs(_||100)},w=Math.round((y.max-y.min)/y.step),x=Math.max(7,Math.min(11,b.w*.018))*l;e.save(),e.font=`${x}px sans-serif`,e.textAlign="right",e.fillStyle="#666";for(let v=0;v<=w;v++){const k=y.min+v*y.step,T=(k-y.min)/(y.max-y.min),N=b.y+b.h-T*b.h;Ze(e,b.x,N,b.x+b.w,N),e.fillText(c?k+"%":Je(k),b.x-4*l,N)}e.restore(),Ee(e,b.x,b.y,b.x,b.y+b.h),Ee(e,b.x,b.y+b.h,b.x+b.w,b.y+b.h);const P=new Array(p).fill(0);for(const v of g){e.save(),e.beginPath();const k=[];for(let T=0;T<p;T++){let N=v.values[T]??0;if(c){const z=g.reduce((Q,G)=>Q+(G.values[T]||0),0);N=z?N/z*100:0}const M=h?P[T]:0,F=M+Math.abs(N),j=(M-y.min)/(y.max-y.min),E=(F-y.min)/(y.max-y.min),L=b.x+T/(p-1||1)*b.w;k.push({x:L,y:b.y+b.h-E*b.h,baseY:b.y+b.h-j*b.h}),h&&(P[T]+=Math.abs(N))}e.moveTo(k[0].x,k[0].baseY);for(const T of k)e.lineTo(T.x,T.baseY);for(let T=k.length-1;T>=0;T--)e.lineTo(k[T].x,k[T].y);e.closePath(),e.fillStyle=v.color+"cc",e.fill(),e.beginPath(),e.moveTo(k[0].x,k[0].y);for(const T of k.slice(1))e.lineTo(T.x,T.y);e.strokeStyle=v.color,e.lineWidth=1.5*l,e.stroke(),e.restore()}Ft(e,t,s,i,b.legendY,[...g].reverse(),l)}function Hn(e,n,t,s,i,r,o,l){const a=m(n,"pieChart")||m(n,"pie3DChart"),d=m(n,"doughnutChart"),c=a||d,h=!!d,u=de(c,"ser");if(!u.length)return;const g=u[0],p=jt(g).map(j=>typeof j=="number"&&j>0?j:0),b=Jt(g),_=Fs(g,o),y=p.reduce((j,E)=>j+E,0);if(!y)return;const w=Math.min(i,r)*.38,x=t+i*.44,P=s+r*.5,v=h?w*.55:0;let k=-Math.PI/2;for(let j=0;j<p.length;j++){if(!p[j])continue;const E=p[j]/y*Math.PI*2,L=_[j]||Qe(g,j,o),z=k+E/2,Q=j===0?w*.04:0,G=Q*Math.cos(z),O=Q*Math.sin(z);e.save(),e.beginPath(),e.moveTo(x+G,P+O),e.arc(x+G,P+O,w,k,k+E),e.closePath(),e.fillStyle=L,e.fill(),e.shadowColor="rgba(0,0,0,0.12)",e.shadowBlur=4*l,e.strokeStyle="#fff",e.lineWidth=1.5*l,e.stroke(),e.restore(),v>0&&(e.save(),e.beginPath(),e.arc(x,P,v,0,Math.PI*2),e.fillStyle="#fff",e.fill(),e.restore());const q=p[j]/y;if(q>.05){const Z=x+G+w*.65*Math.cos(z),J=P+O+w*.65*Math.sin(z),R=Math.max(8,Math.min(13,w*.15))*l;e.save(),e.fillStyle="#fff",e.font=`bold ${R}px sans-serif`,e.textAlign="center",e.textBaseline="middle",e.fillText(Math.round(q*100)+"%",Z,J),e.restore()}k+=E}if(h){const j=Math.max(10,Math.min(16,w*.22))*l;e.save(),e.font=`bold ${j}px sans-serif`,e.fillStyle="#333",e.textAlign="center",e.textBaseline="middle",e.fillText(Je(y),x,P),e.restore()}const T=t+i*.78,N=Math.max(8,Math.min(12,i*.022))*l;e.font=`${N}px sans-serif`,e.textBaseline="middle";const M=N*1.8,F=P-p.length*M/2;for(let j=0;j<p.length;j++){const E=T,L=F+j*M,z=_[j]||Qe(g,j,o);e.fillStyle=z,vt(e,E,L-N*.5,N*1.2,N),e.fill(),e.fillStyle="#444";const Q=String(b[j]??`Item ${j+1}`);e.fillText(Q,E+N*1.5,L)}}function fo(e,n,t,s,i,r,o,l){const a=m(n,"scatterChart")||m(n,"bubbleChart"),c=de(a,"ser").map((k,T)=>{const N=gt(m(m(k,"xVal"),"numCache")),M=gt(m(m(k,"yVal"),"numCache")),F=gt(m(m(k,"bubbleSize"),"numCache"));return{name:Tt(k),color:Qe(k,T,o),points:N.map((j,E)=>({x:j,y:M[E],r:F[E]})).filter(j=>typeof j.x=="number"&&typeof j.y=="number")}});if(!c.length)return;const h=en(t,s,i,r,{hasLegend:c.length>1}),u=c.flatMap(k=>k.points.map(T=>T.x)),g=c.flatMap(k=>k.points.map(T=>T.y)),p=wt(u,!1),b=wt(g),_=Math.max(7,Math.min(11,h.w*.018))*l,y=Math.round((p.max-p.min)/p.step),w=Math.round((b.max-b.min)/b.step);e.font=`${_}px sans-serif`,e.save(),e.textAlign="center",e.fillStyle="#666";for(let k=0;k<=y;k++){const T=p.min+k*p.step,N=(T-p.min)/(p.max-p.min),M=h.x+N*h.w;Ze(e,M,h.y,M,h.y+h.h),e.fillText(Je(T),M,h.y+h.h+_*1.5)}e.textAlign="right";for(let k=0;k<=w;k++){const T=b.min+k*b.step,N=(T-b.min)/(b.max-b.min),M=h.y+h.h-N*h.h;Ze(e,h.x,M,h.x+h.w,M),e.fillText(Je(T),h.x-4*l,M)}e.restore(),Ee(e,h.x,h.y,h.x,h.y+h.h),Ee(e,h.x,h.y+h.h,h.x+h.w,h.y+h.h);const x=c.flatMap(k=>k.points.map(T=>T.r??1)),P=Math.max(...x.filter(k=>typeof k=="number"),1),v=Math.min(h.w,h.h)*.06;for(const k of c)for(const T of k.points){const N=h.x+(T.x-p.min)/(p.max-p.min)*h.w,M=h.y+h.h-(T.y-b.min)/(b.max-b.min)*h.h,F=T.r!=null?T.r/P*v:4*l;e.save(),e.fillStyle=k.color+"aa",e.strokeStyle=k.color,e.lineWidth=1*l,e.beginPath(),e.arc(N,M,F,0,Math.PI*2),e.fill(),e.stroke(),e.restore()}c.length>1&&Ft(e,t,s,i,h.legendY,c,l)}function ho(e,n,t,s,i,r,o,l){const a=m(n,"radarChart"),d=de(a,"ser"),c=d.map((w,x)=>({name:Tt(w),values:jt(w),color:Qe(w,x,o)}));if(!c.length)return;const h=Jt(d[0])||[],u=h.length||c[0]?.values.length||0;if(u<3)return;const g=t+i*.5,p=s+r*.5,b=Math.min(i,r)*.34,_=wt(c.flatMap(w=>w.values)),y=4;for(let w=1;w<=y;w++){const x=b*w/y;e.save(),e.beginPath();for(let P=0;P<u;P++){const v=P/u*Math.PI*2-Math.PI/2,k=g+x*Math.cos(v),T=p+x*Math.sin(v);P===0?e.moveTo(k,T):e.lineTo(k,T)}e.closePath(),e.strokeStyle="rgba(0,0,0,0.12)",e.lineWidth=.5,e.stroke(),e.restore()}for(let w=0;w<u;w++){const x=w/u*Math.PI*2-Math.PI/2;Ee(e,g,p,g+b*Math.cos(x),p+b*Math.sin(x));const P=g+(b+16*l)*Math.cos(x),v=p+(b+16*l)*Math.sin(x);e.save(),e.font=`${Math.max(7,11*l)}px sans-serif`,e.fillStyle="#555",e.textAlign="center",e.textBaseline="middle",e.fillText(String(h[w]??w+1),P,v),e.restore()}for(const w of c){const x=w.values.map((P,v)=>{const k=v/u*Math.PI*2-Math.PI/2,T=(P-_.min)/(_.max-_.min);return{x:g+b*T*Math.cos(k),y:p+b*T*Math.sin(k)}});e.save(),e.beginPath(),e.moveTo(x[0].x,x[0].y);for(const P of x.slice(1))e.lineTo(P.x,P.y);e.closePath(),e.fillStyle=w.color+"44",e.fill(),e.strokeStyle=w.color,e.lineWidth=1.5*l,e.stroke(),e.restore()}Ft(e,t,s,i,s+r-20*l,c,l)}function po(e,n,t,s,i,r){const o=m(m(n,"chart"),"title");if(!o)return!1;const l=m(o,"tx");if(!l)return!1;let a="";for(const c of de(l,"t"))a+=c.textContent;if(!a.trim())return!1;const d=Math.max(10,Math.min(16,i*.03))*r;return e.save(),e.font=`bold ${d}px sans-serif`,e.fillStyle="#333",e.textAlign="center",e.textBaseline="top",e.fillText(a,t+i/2,s+6*r),e.restore(),!0}function go(e,n,t,s,i,r,o,l){if(!n)return;const a=n;e.save(),e.fillStyle="#fff",vt(e,t,s,i,r,4*l),e.fill(),e.strokeStyle="#ddd",e.lineWidth=.5,e.stroke(),e.restore();const c=po(e,a,t,s,i,l)?s+Math.min(r*.08,24*l):s,h=r-(c-s),u=m(a,"plotArea");if(!u)return;const g=m(u,"bar3DChart")||m(u,"barChart"),p=m(u,"line3DChart")||m(u,"lineChart"),b=m(u,"area3DChart")||m(u,"areaChart"),_=m(u,"pie3DChart")||m(u,"pieChart"),y=m(u,"doughnutChart"),w=m(u,"scatterChart")||m(u,"bubbleChart"),x=m(u,"radarChart");if(g)lo(e,u,t,c,i,h,o,l);else if(p)co(e,u,t,c,i,h,o,l);else if(b)uo(e,u,t,c,i,h,o,l);else if(y)Hn(e,u,t,c,i,h,o,l);else if(_)Hn(e,u,t,c,i,h,o,l);else if(w)fo(e,u,t,c,i,h,o,l);else if(x)ho(e,u,t,c,i,h,o,l);else{e.save(),e.fillStyle="#aaa",e.font=`${12*l}px sans-serif`,e.textAlign="center",e.textBaseline="middle";const P=u.firstElementChild;e.fillText(P?.localName??"Chart",t+i/2,s+r/2),e.restore()}}function Xt(e,n,t=0,s=1){return(e?parseInt(e.getAttribute(n)||t,10):t)*s}function Ms(e,n){if(!e)return null;const t=me(e);if(!t)return null;const s=ye(t,n);return s?ge(s):null}function mo(e,n,t,s,i,r,o){const l=m(n,"bevelT"),a=m(n,"bevelB"),d=l||a;if(!d)return;const c=Math.max(2*o,Xt(d,"w",76200,o)),h=Math.max(2*o,Xt(d,"h",76200,o)),g=B(d,"prst","circle").toLowerCase().includes("in"),p=Math.min(c,i*.3),b=Math.min(h,r*.3),_=g?"rgba(0,0,0,0.18)":"rgba(255,255,255,0.35)",y=g?"rgba(255,255,255,0.20)":"rgba(0,0,0,0.20)",w=e.createLinearGradient(t,s,t,s+b);w.addColorStop(0,_),w.addColorStop(1,"rgba(255,255,255,0)"),e.save(),e.fillStyle=w,e.fillRect(t,s,i,b);const x=e.createLinearGradient(t,s+r-b,t,s+r);x.addColorStop(0,"rgba(0,0,0,0)"),x.addColorStop(1,y),e.fillStyle=x,e.fillRect(t,s+r-b,i,b);const P=e.createLinearGradient(t,s,t+p,s);P.addColorStop(0,_),P.addColorStop(1,"rgba(255,255,255,0)"),e.fillStyle=P,e.fillRect(t,s,p,r);const v=e.createLinearGradient(t+i-p,s,t+i,s);v.addColorStop(0,"rgba(0,0,0,0)"),v.addColorStop(1,y),e.fillStyle=v,e.fillRect(t+i-p,s,p,r),e.restore()}function bo(e,n,t,s,i,r,o,l){const a=Xt(n,"extrusionH",0,l);if(a<1*l)return;const d=m(n,"extrusionClr")||m(n,"contourClr"),c=Ms(d,t)||"rgba(0,0,0,0.3)",h=Math.min(a/914400*72*l,Math.min(r,o)*.15),u=h*.7,g=h*.7;e.save(),e.fillStyle=c,e.beginPath(),e.moveTo(s+r,i),e.lineTo(s+r+u,i+g),e.lineTo(s+r+u,i+o+g),e.lineTo(s+r,i+o),e.closePath(),e.fill(),e.beginPath(),e.moveTo(s,i+o),e.lineTo(s+u,i+o+g),e.lineTo(s+r+u,i+o+g),e.lineTo(s+r,i+o),e.closePath(),e.fill(),e.restore()}function yo(e,n,t,s,i,r,o,l){const a=Xt(n,"contourW",0,l);if(a<.5)return;const d=m(n,"contourClr"),c=Ms(d,t)||"#888888",h=Math.max(.5,a/914400*72*l);e.save(),e.strokeStyle=c,e.lineWidth=h,e.strokeRect(s,i,r,o),e.restore()}function vo(e,n,t,s,i,r){if(!n)return()=>{};const o=m(n,"camera");if(!o)return()=>{};const l=B(o,"prst","orthographicFront"),a=m(o,"rot");if(l.toLowerCase().includes("orthographic")&&!a)return()=>{};const c=a?C(a,"lat",0)/6e4:0,h=a?C(a,"lon",0)/6e4:0;a&&C(a,"rev",0)/6e4;const u=c*Math.PI/180,g=h*Math.PI/180,p=Math.sin(g)*.15,b=Math.sin(u)*.08;return e.save(),e.transform(1,b,p,1,t*-p,s*-b),()=>e.restore()}function wo(e,n,t,s,i,r){if(!n)return;const o=m(n,"lightRig");if(!o)return;const l=B(o,"dir","t"),a=B(o,"rig","balanced"),d={t:{gx:t+i/2,gy:s},b:{gx:t+i/2,gy:s+r},l:{gx:t,gy:s+r/2},r:{gx:t+i,gy:s+r/2},tl:{gx:t,gy:s},tr:{gx:t+i,gy:s},bl:{gx:t,gy:s+r},br:{gx:t+i,gy:s+r}},{gx:c,gy:h}=d[l]||d.t,u=a==="flat"?.08:a==="balanced"?.14:a==="sunrise"?.2:a==="harsh"?.28:.12,g=Math.sqrt(i*i+r*r),p=e.createRadialGradient(c,h,0,c,h,g);p.addColorStop(0,`rgba(255,255,255,${u})`),p.addColorStop(.5,"rgba(255,255,255,0)"),p.addColorStop(1,`rgba(0,0,0,${u*.5})`),e.save(),e.fillStyle=p,e.fillRect(t,s,i,r),e.restore()}function ko(e,n,t,s,i,r,o,l){if(!n)return{applyCamera:()=>()=>{},overlay:()=>{}};const a=m(n,"sp3d")||m(n,"scene3d")?.parentNode&&null,d=m(n,"scene3d");a&&bo(e,a,t,s,i,r,o,l);const c=vo(e,d,s,i);return{overlay(){a&&(mo(e,a,s,i,r,o,l),yo(e,a,t,s,i,r,o,l)),d&&wo(e,d,s,i,r,o)},cleanup:c}}function xo(e){return e?!!(m(e,"sp3d")||m(e,"scene3d")):!1}async function kt(e,n,t,s,i,r,o,l,a){if(!n)return!1;const d=n.localName;if(d==="noFill")return!1;if(d==="solidFill"){const c=me(n),h=ye(c,l);return h?(e.fillStyle=ge(h),e.fill(),!0):!1}if(d==="gradFill"){const c=m(n,"gsLst");if(!c)return!1;const h=de(c,"gs").map(y=>{const w=C(y,"pos",0)/1e5,x=me(y),P=ye(x,l);return{pos:w,color:P}}).sort((y,w)=>y.pos-w.pos);if(h.length<2)return!1;const u=m(n,"lin"),g=m(n,"path"),p=t+i/2,b=s+r/2;let _;if(u||!u&&!g){const x=(C(u,"ang",0)/6e4-90)*Math.PI/180,P=Math.cos(x),v=Math.sin(x),k=Math.abs(i*P)+Math.abs(r*v),T=p-k/2*P,N=b-k/2*v,M=p+k/2*P,F=b+k/2*v;_=e.createLinearGradient(T,N,M,F)}else{const y=m(g,"fillToRect"),w=C(y,"l",5e4)/1e5,x=C(y,"t",5e4)/1e5,P=C(y,"r",5e4)/1e5,v=C(y,"b",5e4)/1e5,k=t+i*(w+(1-w-P)/2),T=s+r*(x+(1-x-v)/2),N=Math.sqrt(i*i+r*r)/2;_=e.createRadialGradient(k,T,0,p,b,N)}for(const y of h)y.color&&_.addColorStop(y.pos,ge(y.color));return e.fillStyle=_,e.fill(),!0}if(d==="blipFill"){const c=m(n,"blip"),h=c?c.getAttribute("r:embed")||c.getAttribute("embed"):null;if(h&&a&&a[h]){const u=a[h],g=m(n,"stretch"),p=g?m(g,"fillRect"):null;let b=t,_=s,y=i,w=r;if(p){const k=C(p,"l",0)/1e5,T=C(p,"t",0)/1e5,N=C(p,"r",0)/1e5,M=C(p,"b",0)/1e5;b=t+i*k,_=s+r*T,y=i-i*k-i*N,w=r-r*T-r*M}if(m(n,"tile")){const k=e.createPattern(u,"repeat");if(k)return e.fillStyle=k,e.fill(),!0}const P=m(n,"alphaModFix")||m(c,"alphaModFix"),v=P?C(P,"amt",1e5)/1e5:1;return e.save(),e.clip(),v<1&&(e.globalAlpha=v),e.drawImage(u,b,_,y,w),e.restore(),!0}return!1}if(d==="pattFill"){const c=m(n,"fgClr"),h=m(n,"bgClr"),u=c?ye(me(c),l):{r:0,g:0,b:0,a:1},g=h?ye(me(h),l):{r:255,g:255,b:255,a:1},p=ge(u),b=ge(g),_=B(n,"prst","dotGrid");let y=null,w=null;try{w=typeof OffscreenCanvas<"u"?new OffscreenCanvas(8,8):document.createElement("canvas");const v=8;w.width=v,w.height=v,y=w.getContext("2d")}catch{}const x=8;if(!y)return e.fillStyle=ge(u),e.fill(),!0;switch(y.fillStyle=b,y.fillRect(0,0,x,x),y.fillStyle=p,_){case"smGrid":case"dotGrid":case"dotDmnd":for(let v=0;v<x;v+=2)for(let k=0;k<x;k+=2)y.fillRect(v,k,1,1);break;case"lgGrid":case"cross":y.fillRect(0,0,x,1),y.fillRect(0,0,1,x);break;case"diagBd":case"fwdDiag":for(let v=0;v<x*2;v++)y.fillRect(v%x,Math.floor(v/x)*2,1,1);break;case"bkDiag":case"ltDnDiag":for(let v=0;v<x*2;v++)y.fillRect(x-1-v%x,Math.floor(v/x)*2,1,1);break;case"horzBrick":case"horz":y.fillRect(0,x/2,x,1);break;case"vert":case"vertBrick":y.fillRect(x/2,0,1,x);break;case"smCheck":case"lgCheck":for(let v=0;v<x;v++)for(let k=0;k<x;k++)(v+k)%2===0&&y.fillRect(k,v,1,1);break;default:for(let v=0;v<x;v+=4)y.fillRect(v,v,2,2)}const P=e.createPattern(w,"repeat");return P?(e.fillStyle=P,e.fill(),!0):(e.fillStyle=ge(u,(u.a??1)*.4),e.fill(),!0)}return!1}async function De(e,n){const t=n.split("/"),s=t.pop(),i=[...t,"_rels",s+".rels"].join("/"),r=e[i];if(!r)return{};const o=new TextDecoder().decode(r),l=_e(o),a={};for(const d of Array.from(l.getElementsByTagName("Relationship"))){const c=d.getAttribute("Id"),h=d.getAttribute("Target"),u=d.getAttribute("Type")||"",g=d.getAttribute("TargetMode")||"Internal";let p=h;if(g!=="External")if(h.startsWith("/"))p=h.slice(1);else{const b=n.split("/");b.pop();const _=h.split("/");for(const y of _)y===".."?b.pop():y!=="."&&b.push(y);p=b.join("/")}a[c]={target:h,fullPath:p,type:u,external:g==="External"}}return a}async function Gt(e,n){const t={},s=new Set(["png","jpg","jpeg","gif","webp","bmp","tiff","tif","svg"]);for(const[i,r]of Object.entries(n)){if(r.external)continue;const o=r.fullPath.split(".").pop().toLowerCase();if(s.has(o))try{const l=e[r.fullPath];if(!l)continue;const d={png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",webp:"image/webp",bmp:"image/bmp",tiff:"image/tiff",tif:"image/tiff",svg:"image/svg+xml"}[o]||"image/png",c=new Blob([l],{type:d}),h=URL.createObjectURL(c),u=await new Promise((g,p)=>{const b=new Image;b.onload=()=>g(b),b.onerror=()=>g(null),b.src=h});t[i]=u}catch{}}return t}function Ns(e,n,t){if(!e)return n*1.2;const s=m(e,"spcPct"),i=m(e,"spcPts");return s?n*(C(s,"val",1e5)/1e5):i?C(i,"val",0)/100*12700*(t||1):n*1.2}function _o(e,n,t,s){if(!e||m(e,"buNone"))return null;const i=m(e,"buChar"),r=m(e,"buAutoNum");if(!i&&!r)return null;let o=null;const l=m(e,"buClr");if(l){const p=me(l);o=ye(p,t)}const a=m(e,"buSzPct"),d=m(e,"buSzPts");let c=1;a&&(c=C(a,"val",1e5)/1e5);const h=d?C(d,"val",0)/100:null;let u=null;const g=m(e,"buFont");if(g){const p=g.getAttribute("typeface");p&&(u=p)}return i?{type:"char",char:i.getAttribute("char")||"•",color:o,sizePct:c,sizePts:h,fontFamily:u}:r?{type:"autoNum",numType:r.getAttribute("type")||"arabicPeriod",startAt:C(r,"startAt",1),color:o,sizePct:c,sizePts:h,fontFamily:u}:null}function Po(e,n){switch(e){case"arabicPeriod":return n+".";case"arabicParenR":return n+")";case"arabicParenBoth":return"("+n+")";case"romanLcPeriod":return Yn(n).toLowerCase()+".";case"romanUcPeriod":return Yn(n)+".";case"alphaLcParenR":return String.fromCharCode(96+n)+")";case"alphaUcParenR":return String.fromCharCode(64+n)+")";case"alphaLcPeriod":return String.fromCharCode(96+n)+".";case"alphaUcPeriod":return String.fromCharCode(64+n)+".";default:return n+"."}}function Yn(e){const n=[1e3,900,500,400,100,90,50,40,10,9,5,4,1],t=["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"];let s="";for(let i=0;i<n.length;i++)for(;e>=n[i];)s+=t[i],e-=n[i];return s}function So(e,n,t,s,i){if(!n)return;const r=e.font.match(/(d+(?:.d+)?)px/),o=r?parseFloat(r[1]):16,l=n.sizePts!=null?n.sizePts*(o/12):o*n.sizePct;e.save(),n.color&&(e.fillStyle=ge(n.color),e.strokeStyle=e.fillStyle);const a=n.fontFamily?'"'+n.fontFamily+'", sans-serif':e.font.split(/\d+px\s+/)[1]||"sans-serif";if(e.font=l+"px "+a,n.type==="char")e.fillText(n.char,t,s);else if(n.type==="autoNum"){const d=n.numType+":"+n.startAt;i[d]===void 0&&(i[d]=n.startAt);const c=Po(n.numType,i[d]);i[d]++,e.fillText(c,t,s)}e.restore()}async function Vt(e,n,t,s,i,r,o,l,a,d=1800){if(!n)return;const c=m(n,"bodyPr"),h=B(c,"anchor","t"),u=B(c,"wrap","square"),g=B(c,"vert","horz"),p=C(c,"lIns",91440)*o,b=C(c,"tIns",45720)*o,_=C(c,"rIns",91440)*o,y=C(c,"bIns",45720)*o,w=t+p,x=s+b,P=i-p-_,v=r-b-y,k=u!=="none",T=g==="vert"||g==="vert270"||g==="eaVert";T&&(e.save(),g==="vert270"?(e.translate(t+i,s),e.rotate(Math.PI/2)):(e.translate(t,s+r),e.rotate(-Math.PI/2)));const N=m(c,"normAutoFit")||m(n,"normAutoFit");m(c,"spAutoFit")||m(n,"spAutoFit");const M=N?N.getAttribute("fontScale"):null;let F=M?parseInt(M,10)/1e5:1;const j=m(n,"lstStyle"),E=j?m(j,"defRPr"):null;function L(J,R,H,ie){const re=J?J.getAttribute(H):null;if(re!==null&&re!=="")return re;const ce=R?R.getAttribute(H):null;if(ce!==null&&ce!=="")return ce;const ne=E?E.getAttribute(H):null;return ne!==null&&ne!==""?ne:ie}const z=de(n,"p"),Q=[];let G=0;for(const J of z){const R=m(J,"pPr"),H=B(R,"algn","l");C(R,"lvl",0);const ie=C(R,"marL",0)*o,re=C(R,"indent",0)*o,ce=R?_o(R,oe,l):null,ne=m(R,"spcBef"),X=m(R,"spcAft"),xe=m(R,"lnSpc"),oe=m(R,"defRPr");let ae=d;if(E){const Y=E.getAttribute("sz");Y&&(ae=parseInt(Y,10))}if(oe){const Y=oe.getAttribute("sz");Y&&(ae=parseInt(Y,10))}let ue=0,ve=0;if(ne){const Y=m(ne,"spcPct"),ee=m(ne,"spcPts");Y?ue=ae*127*o*(C(Y,"val",0)/1e5):ee&&(ue=C(ee,"val",0)*bt*o/100)}if(X){const Y=m(X,"spcPct"),ee=m(X,"spcPts");Y?ve=ae*127*o*(C(Y,"val",0)/1e5):ee&&(ve=C(ee,"val",0)*bt*o/100)}const we=[];for(const Y of J.children){const ee=Y.localName;(ee==="r"||ee==="br"||ee==="fld")&&we.push(Y)}if(we.length===0){const Y=m(J,"endParaRPr"),$=C(Y||oe,"sz",ae)*127*o*F;Q.push({lines:[""],algn:H,marL:ie,spaceBefore:ue,spaceAfter:ve,szPx:$,lnSpc:xe,runs:[],emptyPara:!0,bullet:ce}),G+=ue+$*1.2+ve;continue}let be=[],fe=[],I=0;for(const Y of we){if(Y.localName==="br"){be.push({runs:fe,maxSzPx:Math.max(I,ae*127*o)}),fe=[],I=0;continue}const ee=m(Y,"rPr"),$=m(Y,"t");let U=$?$.textContent:"";const te=js(ee,oe,o*F,a,ae,E);e.font=te.fontStr;const se=te.szPx;se>I&&(I=se);const he=ro(ee,oe,l),ke=L(ee,oe,"u","none")!=="none",Pe=L(ee,oe,"strike","noStrike")!=="noStrike",Me=parseInt(L(ee,oe,"baseline","0"),10);if(k){const Mt=U.split(" ");for(let dn=0;dn<Mt.length;dn++){const un=Mt[dn];let In=re+ie;for(const Nt of fe)e.font=Nt.fontInfo.fontStr,In+=e.measureText(Nt.text).width;e.font=te.fontStr;const Js=e.measureText(un).width,ei=fe.length?e.measureText(" ").width:0;if(In+ei+Js>P&&fe.length>0)be.push({runs:fe,maxSzPx:Math.max(I,se)}),fe=[{text:un,rPr:ee,fontInfo:te,color:he,underline:ke,strikethrough:Pe,baseline:Me}],I=se;else{if(fe.length>0){const Nt={text:" ",rPr:ee,fontInfo:te,color:he,underline:!1,strikethrough:!1,baseline:Me};fe.push(Nt)}fe.push({text:un,rPr:ee,fontInfo:te,color:he,underline:ke,strikethrough:Pe,baseline:Me})}}}else fe.push({text:U,rPr:ee,fontInfo:te,color:he,underline:ke,strikethrough:Pe,baseline:Me}),se>I&&(I=se)}fe.length>0&&be.push({runs:fe,maxSzPx:Math.max(I,ae*127*o)});const V=xe?Ns(xe,ae*127*o*F,o):null;Q.push({lines:be,algn:H,marL:ie,indent:re,spaceBefore:ue,spaceAfter:ve,lnSpcPx:V,emptyPara:!1,bullet:ce});for(const Y of be)G+=ue+(V||Y.maxSzPx*1.2)+ve}if(N&&!M&&G>v&&v>0){let J=.3,R=1;for(let H=0;H<8;H++){const ie=(J+R)/2;let re=0;for(const ce of z){const ne=m(ce,"pPr"),X=ne?m(ne,"defRPr"):null;let xe=d;if(E){const V=E.getAttribute("sz");V&&(xe=parseInt(V,10))}if(X){const V=X.getAttribute("sz");V&&(xe=parseInt(V,10))}const oe=Array.from(ce.children).filter(V=>["r","br","fld"].includes(V.localName)),ae=xe*127*o*ie;if(oe.length===0){re+=ae*1.2;continue}const ue=oe.reduce((V,Y)=>{const ee=m(Y,"t");return V+(ee?ee.textContent.length:0)},0),ve=P>0?P:i,we=ue>0?oe.reduce((V,Y)=>{const ee=m(Y,"t");return V+(ee?ee.textContent:"")},"").slice(0,20):"W";e.font=`${ae}px sans-serif`;const be=we.length>0?e.measureText(we).width/we.length:ae*.6,fe=Math.max(1,Math.floor(ve/be)),I=Math.max(1,Math.ceil(ue/fe));re+=I*ae*1.2}re<=v?J=ie:R=ie}F=(J+R)/2}let O=x;h==="ctr"?O=x+(v-G)/2:h==="b"&&(O=x+v-G);let q=O;const Z={};for(const J of Q){const{lines:R,algn:H,marL:ie,indent:re,spaceBefore:ce,spaceAfter:ne,lnSpcPx:X,emptyPara:xe,bullet:oe}=J;if(q+=ce,xe){q+=R[0]?X||J.szPx*1.2:12*o,q+=ne;continue}for(const ae of R){const{runs:ue,maxSzPx:ve}=ae,we=X||ve*1.2,be=q+ve*.85;let fe=0;for(const $ of ue)e.font=$.fontInfo.fontStr,fe+=e.measureText($.text).width;let I=w+ie;H==="ctr"?I=w+(P-fe)/2:H==="r"&&(I=w+P-fe);const V=ae===R[0];if(oe&&V){const $=w+ie+re;So(e,oe,$,be,Z)}let Y=0;if(H==="just"&&!(ae===R[R.length-1])){let U=0;for(const se of ue)e.font=se.fontInfo.fontStr,U+=(se.text.match(/ /g)||[]).length;const te=P-ie-fe;U>0&&te>0&&(Y=te/U)}const ee=($,U,te,se,he,ke)=>{e.font=se.fontStr;const Pe=e.measureText($).width;e.fillText($,U,te);const Me=Math.max(.5,se.szPx*.07);return he&&(e.save(),e.strokeStyle=e.fillStyle,e.lineWidth=Me,e.beginPath(),e.moveTo(U,te+Me*1.5),e.lineTo(U+Pe,te+Me*1.5),e.stroke(),e.restore()),ke&&(e.save(),e.strokeStyle=e.fillStyle,e.lineWidth=Me,e.beginPath(),e.moveTo(U,te-se.szPx*.3),e.lineTo(U+Pe,te-se.szPx*.3),e.stroke(),e.restore()),Pe};for(const $ of ue){const U=$.color;e.fillStyle=U?ge(U):"#000000";let te=be,se=$.fontInfo;if($.baseline!==0){const he=se.szPx*.65,ke=`${se.italic?"italic ":""}${se.bold?"bold ":""}${he}px "${se.family}", sans-serif`;se={...se,szPx:he,fontStr:ke},$.baseline>0?te=be-$.fontInfo.szPx*.38:te=be+$.fontInfo.szPx*.12}if(Y>0&&$.text.includes(" ")){e.font=se.fontStr;const he=$.text.split(" ");for(let ke=0;ke<he.length;ke++){const Pe=ee(he[ke],I,te,se,$.underline,$.strikethrough);I+=Pe,ke<he.length-1&&(e.font=se.fontStr,I+=e.measureText(" ").width+Y)}}else{e.font=se.fontStr;const he=e.measureText($.text).width;ee($.text,I,te,se,$.underline,$.strikethrough),I+=he}}q+=we}q+=ne}T&&e.restore()}function As(e,n,t,s){const i=m(n,"effectLst");if(!i)return()=>{};const r=m(i,"outerShdw"),o=m(i,"innerShdw"),l=r||o;if(l){const d=C(l,"blurRad",38100)*s,c=C(l,"dist",38100)*s,u=C(l,"dir",27e5)/6e4*Math.PI/180,g=c*Math.cos(u),p=c*Math.sin(u),b=me(l),_=ye(b,t),y=_?ge(_):"rgba(0,0,0,0.35)";e.shadowBlur=Math.min(d,40),e.shadowOffsetX=g,e.shadowOffsetY=p,e.shadowColor=y}const a=m(i,"glow");if(a){const d=C(a,"rad",0)*s,c=me(a),h=ye(c,t);h&&(e.shadowBlur=Math.min(d,30),e.shadowOffsetX=0,e.shadowOffsetY=0,e.shadowColor=ge(h))}return()=>{e.shadowBlur=0,e.shadowOffsetX=0,e.shadowOffsetY=0,e.shadowColor="transparent"}}async function tn(e,n,t,s,i,r,o,l=null,a=null){const d=m(n,"spPr"),c=m(d,"xfrm");let h=0,u=0,g=0,p=0,b=0,_=!1,y=!1;if(c){const O=m(c,"off"),q=m(c,"ext");O&&(h=C(O,"x",0)*o,u=C(O,"y",0)*o),q&&(g=C(q,"cx",0)*o,p=C(q,"cy",0)*o),b=C(c,"rot",0)/6e4,_=B(c,"flipH","0")==="1",y=B(c,"flipV","0")==="1"}else{const O=Is(n,a);if(O)h=O.x*o,u=O.y*o,g=O.w*o,p=O.h*o;else return}if(g<=0||p<=0)return;if(l){const{grpOff:O,grpExt:q,chOff:Z,chExt:J}=l,R=q.cx/J.cx,H=q.cy/J.cy;h=O.x+(h/o-Z.x)*R*o,u=O.y+(u/o-Z.y)*H*o,g=g*R,p=p*H}const w=h+g/2,x=u+p/2;e.save(),(b!==0||_||y)&&(e.translate(w,x),b!==0&&e.rotate(b*Math.PI/180),_&&e.scale(-1,1),y&&e.scale(1,-1),e.translate(-w,-x));const P=m(d,"prstGeom"),v=m(d,"custGeom"),k=P?B(P,"prst","rect"):"rect",T={};if(P){const O=m(P,"avLst");if(O){let q=0;for(const Z of de(O,"gd")){const R=B(Z,"fmla","").match(/val\s+(-?\d+)/);R&&(T[q]=parseInt(R[1])),q++}}}const N=()=>{const O=["noFill","solidFill","gradFill","blipFill","pattFill","grpFill"];for(const Z of O){const J=m(d,Z);if(J)return J}const q=m(n,"style");if(q){const Z=m(q,"fillRef");if(Z){if(C(Z,"idx",1)===0)return _e("<noFill/>").documentElement;const R=me(Z);if(R)return _e('<solidFill xmlns="'+"http://schemas.openxmlformats.org/drawingml/2006/main"+'">'+R.outerHTML+"</solidFill>").documentElement}}return null},M=()=>{const O=m(d,"ln");if(O)return O;const q=m(n,"style");if(q){const Z=m(q,"lnRef");if(Z){if(C(Z,"idx",1)===0)return null;const R=me(Z);if(R)return _e('<ln xmlns="'+"http://schemas.openxmlformats.org/drawingml/2006/main"+'"><solidFill>'+R.outerHTML+"</solidFill></ln>").documentElement}}return null};if(v){const O=m(v,"pathLst");if(O)for(const Z of de(O,"path")){const J=C(Z,"w",1)||1,R=C(Z,"h",1)||1,H=g/J,ie=p/R;e.beginPath();for(const ne of Z.children)switch(ne.localName){case"moveTo":{const X=m(ne,"pt");X&&e.moveTo(h+C(X,"x",0)*H,u+C(X,"y",0)*ie);break}case"lnTo":{const X=m(ne,"pt");X&&e.lineTo(h+C(X,"x",0)*H,u+C(X,"y",0)*ie);break}case"cubicBezTo":{const X=de(ne,"pt");X.length>=3&&e.bezierCurveTo(h+C(X[0],"x",0)*H,u+C(X[0],"y",0)*ie,h+C(X[1],"x",0)*H,u+C(X[1],"y",0)*ie,h+C(X[2],"x",0)*H,u+C(X[2],"y",0)*ie);break}case"quadBezTo":{const X=de(ne,"pt");X.length>=2&&e.quadraticCurveTo(h+C(X[0],"x",0)*H,u+C(X[0],"y",0)*ie,h+C(X[1],"x",0)*H,u+C(X[1],"y",0)*ie);break}case"arcTo":{const X=C(ne,"wR",0)*H,xe=C(ne,"hR",0)*ie,oe=C(ne,"stAng",0)/6e4*Math.PI/180,ae=C(ne,"swAng",0)/6e4*Math.PI/180,ue=e._lastX||h,ve=e._lastY||u,we=ue-X*Math.cos(oe),be=ve-xe*Math.sin(oe);X===xe?e.arc(we,be,X,oe,oe+ae,ae<0):e.ellipse(we,be,X,xe,0,oe,oe+ae,ae<0);break}case"close":e.closePath();break}const re=N();re&&await kt(e,re,h,u,g,p,o,i,s);const ce=M();ce&&lt(e,ce,i,o)}e.restore();const q=m(n,"txBody");if(q){e.save(),e.beginPath(),e.rect(h,u,g,p),e.clip();const Z=wn(n);await Vt(e,q,h,u,g,p,o,i,r,Z),e.restore()}return}e.beginPath(),Kt(e,k,h,u,g,p,T);const F=As(e,d,i,o),j=h,E=u,L=g,z=p,Q=xo(d)?ko(e,d,i,j,E,L,z,o):null;try{const O=N();let q=!1;O&&(q=await kt(e,O,h,u,g,p,o,i,s)),Q&&Q.overlay();const Z=M();Z?lt(e,Z,i,o):q||(k==="line"||k==="straightConnector1")&&(e.strokeStyle="#000",e.lineWidth=1,e.stroke())}finally{F(),Q?.cleanup&&Q.cleanup()}e.restore();const G=m(n,"txBody");if(G){e.save(),(b!==0||_||y)&&(e.translate(w,x),b!==0&&e.rotate(b*Math.PI/180),_&&e.scale(-1,1),y&&e.scale(1,-1),e.translate(-w,-x)),e.beginPath(),e.rect(h,u,g,p),e.clip();const O=wn(n);await Vt(e,G,h,u,g,p,o,i,r,O),e.restore()}}function wn(e,n){const t=m(e,"nvSpPr"),s=t?m(t,"nvPr"):null,i=s?m(s,"ph"):null;if(i){const r=B(i,"type","body");if(r==="title"||r==="ctrTitle")return 4400;if(r==="subTitle"||r==="body")return 2800}return 1800}function lt(e,n,t,s){if(!n||m(n,"noFill"))return;const r=m(n,"solidFill"),o=m(n,"gradFill"),l=C(n,"w",12700),a=Math.max(.5,l*s);let d="#000000";if(r){const g=me(r),p=ye(g,t);p&&(d=ge(p))}else o&&(d="#888888");const c=m(n,"prstDash"),h=c?B(c,"val","solid"):"solid",u=B(n,"cap","flat");switch(B(n,"cmpd","sng"),e.strokeStyle=d,e.lineWidth=a,e.lineCap=u==="rnd"?"round":u==="sq"?"square":"butt",e.lineJoin="round",h){case"dash":e.setLineDash([a*4,a*2]);break;case"dot":e.setLineDash([a,a*2]);break;case"dashDot":e.setLineDash([a*4,a*2,a,a*2]);break;case"lgDash":e.setLineDash([a*8,a*3]);break;case"lgDashDot":e.setLineDash([a*8,a*3,a,a*3]);break;default:e.setLineDash([])}e.stroke(),e.setLineDash([])}async function nn(e,n,t,s,i,r){const o=m(n,"spPr"),l=m(o,"xfrm");if(!l)return;const a=m(l,"off"),d=m(l,"ext");if(!a||!d)return;const c=C(a,"x",0)*r,h=C(a,"y",0)*r,u=C(d,"cx",0)*r,g=C(d,"cy",0)*r,p=C(l,"rot",0)/6e4,b=B(l,"flipH","0")==="1",_=B(l,"flipV","0")==="1";if(u<=0||g<=0)return;const y=m(n,"blipFill"),w=y?m(y,"blip"):null,x=w?w.getAttribute("r:embed")||w.getAttribute("embed"):null,P=c+u/2,v=h+g/2;if(e.save(),(p!==0||b||_)&&(e.translate(P,v),p!==0&&e.rotate(p*Math.PI/180),b&&e.scale(-1,1),_&&e.scale(1,-1),e.translate(-P,-v)),x&&s[x]){const k=s[x],T=m(o,"prstGeom"),N=T?B(T,"prst","rect"):"rect",M={};if(T){const E=m(T,"avLst");if(E){let L=0;for(const z of de(E,"gd")){const Q=(B(z,"fmla","")||"").match(/val\s+(-?\d+)/);Q&&(M[L]=parseInt(Q[1])),L++}}}e.beginPath(),Kt(e,N,c,h,u,g,M),e.clip();const F=y?m(y,"srcRect"):null;if(F){const E=C(F,"l",0)/1e5,L=C(F,"t",0)/1e5,z=C(F,"r",0)/1e5,Q=C(F,"b",0)/1e5,G=k.naturalWidth*(1-E-z),O=k.naturalHeight*(1-L-Q);e.drawImage(k,k.naturalWidth*E,k.naturalHeight*L,G,O,c,h,u,g)}else e.drawImage(k,c,h,u,g);const j=m(o,"ln");j&&(e.beginPath(),Kt(e,N,c,h,u,g,M),lt(e,j,i,r))}else e.fillStyle="#e0e0e0",e.fillRect(c,h,u,g),e.strokeStyle="#aaa",e.lineWidth=1,e.strokeRect(c,h,u,g),e.beginPath(),e.moveTo(c,h),e.lineTo(c+u,h+g),e.moveTo(c+u,h),e.lineTo(c,h+g),e.stroke();e.restore()}async function $s(e,n,t,s,i){const r=m(n,"xfrm");if(!r)return;const o=m(r,"off"),l=m(r,"ext");if(!o||!l)return;const a=C(o,"x",0)*i,d=C(o,"y",0)*i;C(l,"cx",0)*i,C(l,"cy",0)*i;const c=m(n,"graphic"),h=c?m(c,"graphicData"):null,u=h?m(h,"tbl"):null;if(!u)return;const g=m(u,"tblPr"),p=g?B(g,"bandRow","0")==="1":!1;g&&B(g,"bandCol","0");const b=g?B(g,"firstRow","0")==="1":!1,_=g?B(g,"lastRow","0")==="1":!1;g&&B(g,"firstCol","0"),g&&B(g,"lastCol","0");const y=m(u,"tblGrid"),w=de(y,"gridCol").map(v=>C(v,"w",0)*i),x=de(u,"tr");let P=d;for(let v=0;v<x.length;v++){const k=x[v],T=C(k,"h",457200)*i,N=de(k,"tc");let M=a;const F=v===0,j=v===x.length-1,E=v%2===1;for(let L=0;L<N.length;L++){const z=N[L],Q=C(z,"gridSpan",1);B(z,"vMerge","0");let G=0;for(let R=0;R<Q;R++)G+=w[L+R]||0;const O=m(z,"tcPr"),q=O?["noFill","solidFill","gradFill","blipFill","pattFill"].map(R=>m(O,R)).find(Boolean):null;if(e.save(),e.beginPath(),e.rect(M,P,G,T),q)await kt(e,q,M,P,G,T,i,t,null);else{let R=null;b&&F?R=t.accent1?"#"+t.accent1.toLowerCase():"#4472C4":_&&j?R="#e0e0e0":p&&E&&(R="rgba(0,0,0,0.06)"),e.fillStyle=R||"transparent",R&&e.fill()}const Z=[{el:m(O,"lnL"),x1:M,y1:P,x2:M,y2:P+T},{el:m(O,"lnR"),x1:M+G,y1:P,x2:M+G,y2:P+T},{el:m(O,"lnT"),x1:M,y1:P,x2:M+G,y2:P},{el:m(O,"lnB"),x1:M,y1:P+T,x2:M+G,y2:P+T}];for(const R of Z)R.el?m(R.el,"noFill")||(e.beginPath(),e.moveTo(R.x1,R.y1),e.lineTo(R.x2,R.y2),lt(e,R.el,t,i)):(e.beginPath(),e.strokeStyle="#cccccc",e.lineWidth=.5,e.moveTo(R.x1,R.y1),e.lineTo(R.x2,R.y2),e.stroke());e.restore();const J=m(z,"txBody");J&&(e.save(),e.beginPath(),e.rect(M,P,G,T),e.clip(),await Vt(e,J,M,P,G,T,i,t,s,1400),e.restore()),M+=G}P+=T}}async function sn(e,n,t,s,i,r,o){const l=m(n,"grpSpPr"),a=m(l,"xfrm");if(!a)return;const d=m(a,"off"),c=m(a,"ext"),h=m(a,"chOff"),u=m(a,"chExt");if(!d||!c||!h||!u)return;const g=C(a,"rot",0)/6e4,p=B(a,"flipH","0")==="1",b=B(a,"flipV","0")==="1",_={grpOff:{x:C(d,"x",0)*o,y:C(d,"y",0)*o},grpExt:{cx:C(c,"cx",0)*o,cy:C(c,"cy",0)*o},chOff:{x:C(h,"x",0),y:C(h,"y",0)},chExt:{cx:C(u,"cx",1),cy:C(u,"cy",1)}},y=_.grpOff.x+_.grpExt.cx/2,w=_.grpOff.y+_.grpExt.cy/2;e.save(),(g!==0||p||b)&&(e.translate(y,w),g!==0&&e.rotate(g*Math.PI/180),p&&e.scale(-1,1),b&&e.scale(1,-1),e.translate(-y,-w));for(const x of n.children){const P=x.localName;P==="sp"?await tn(e,x,t,s,i,r,o,_):P==="pic"?await nn(e,x,t,s,i,o):P==="grpSp"?await sn(e,x,t,s,i,r,o):P==="graphicFrame"?await on(e,x,i,r,o,files,t):P==="cxnSp"&&await rn(e,x,i,o)}e.restore()}function Qn(e,n,t,s,i,r,o,l,a){const d=m(n,t);if(!d)return;const c=d.getAttribute("type")||"none";if(c==="none")return;const h={sm:3,med:6,lg:9},u=Math.max(.5,C(n,"w",12700)*a),g=u*(h[d.getAttribute("w")||"med"]??6),p=u*(h[d.getAttribute("len")||"med"]??6),b=Math.atan2(o-i,r-s);switch(e.save(),e.fillStyle=e.strokeStyle,e.strokeStyle=e.strokeStyle,c){case"triangle":case"arrow":case"stealth":{const _=c==="arrow",y=c==="stealth"?p*.5:0;e.beginPath(),e.moveTo(s,i),e.lineTo(s+p*Math.cos(b)+g/2*Math.sin(b),i+p*Math.sin(b)-g/2*Math.cos(b)),_||e.lineTo(s+y*Math.cos(b),i+y*Math.sin(b)),e.lineTo(s+p*Math.cos(b)-g/2*Math.sin(b),i+p*Math.sin(b)+g/2*Math.cos(b)),e.closePath(),_?e.stroke():e.fill();break}case"diamond":{const _=p/2;e.beginPath(),e.moveTo(s,i),e.lineTo(s+_*Math.cos(b)+g/2*Math.sin(b),i+_*Math.sin(b)-g/2*Math.cos(b)),e.lineTo(s+p*Math.cos(b),i+p*Math.sin(b)),e.lineTo(s+_*Math.cos(b)-g/2*Math.sin(b),i+_*Math.sin(b)+g/2*Math.cos(b)),e.closePath(),e.fill();break}case"oval":{const _=p/2,y=g/2,w=s+_*Math.cos(b),x=i+_*Math.sin(b);e.beginPath(),e.save(),e.translate(w,x),e.rotate(b),e.scale(1,y/_),e.arc(0,0,_,0,Math.PI*2),e.restore(),e.fill();break}}e.restore()}async function rn(e,n,t,s){const i=m(n,"spPr"),r=m(i,"xfrm");if(!r)return;const o=m(r,"off"),l=m(r,"ext");if(!o||!l)return;const a=C(o,"x",0)*s,d=C(o,"y",0)*s,c=C(l,"cx",0)*s,h=C(l,"cy",0)*s,u=C(r,"rot",0)/6e4,g=B(r,"flipH","0")==="1",p=B(r,"flipV","0")==="1",b=a+c/2,_=d+h/2,y=m(i,"ln");e.save(),(u!==0||g||p)&&(e.translate(b,_),u!==0&&e.rotate(u*Math.PI/180),g&&e.scale(-1,1),p&&e.scale(1,-1),e.translate(-b,-_));const w=m(i,"prstGeom"),x=w?B(w,"prst","line"):"line",P=x==="line"||x==="straightConnector1";if(e.beginPath(),P){const v=g?a:a+c,k=p?d:d+h,T=g?a+c:a,N=p?d+h:d;e.moveTo(T,N),e.lineTo(v,k)}else Kt(e,x,a,d,c,h,{});if(y){if(lt(e,y,t,s),P){const v=g?a+c:a,k=p?d+h:d,T=g?a:a+c,N=p?d:d+h;Qn(e,y,"headEnd",T,N,v,k,t,s),Qn(e,y,"tailEnd",v,k,T,N,t,s)}}else e.strokeStyle="#000",e.lineWidth=1,e.stroke();e.restore()}async function Es(e,n,t,s,i,r,o,l,a,d,c){const h=d*a,u=c*a,g=x=>{const P=m(x,"cSld");if(!P)return null;const v=m(P,"bg");if(!v)return null;const k=m(v,"bgPr"),T=m(v,"bgRef");return{bgPr:k,bgRef:T}},p=n?g(n):null,b=s?g(s):null,_=t?g(t):null,y=p||b||_;let w=!1;if(y){const{bgPr:x,bgRef:P}=y;if(x){const v=["noFill","solidFill","gradFill","blipFill","pattFill"];for(const k of v){const T=m(x,k);if(T){e.beginPath(),e.rect(0,0,h,u);const N=y===_?Object.assign({},o):o;await kt(e,T,0,0,h,u,1,l,N)&&(w=!0);break}}}else if(P){C(P,"idx",0);const v=me(P),k=ye(v,l);k&&(e.fillStyle=ge(k),e.fillRect(0,0,h,u),w=!0)}}w||(e.fillStyle="#ffffff",e.fillRect(0,0,h,u))}function Rs(e){const n={};for(const t of e){if(!t)continue;const s=m(t,"cSld"),i=s?m(s,"spTree"):null;if(i)for(const r of de(i,"sp")){const o=m(r,"nvSpPr"),l=o?m(o,"nvPr"):null,a=l?m(l,"ph"):null;if(!a)continue;const d=B(a,"type","body"),c=B(a,"idx","0"),h=`${d}:${c}`;if(n[h])continue;const u=m(r,"spPr"),g=m(u,"xfrm");if(!g)continue;const p=m(g,"off"),b=m(g,"ext");!p||!b||(n[h]={x:C(p,"x",0),y:C(p,"y",0),w:C(b,"cx",0),h:C(b,"cy",0),txBody:m(r,"txBody")})}}return n}function Is(e,n){if(!n)return null;const t=m(e,"nvSpPr"),s=t?m(t,"nvPr"):null,i=s?m(s,"ph"):null;if(!i)return null;const r=B(i,"type","body"),o=B(i,"idx","0");return n[`${r}:${o}`]||n[`${r}:0`]||n[`body:${o}`]||null}async function on(e,n,t,s,i,r,o){const l=m(n,"graphic"),a=l?m(l,"graphicData"):null,d=a?B(a,"uri",""):"";if(m(n,"tbl")||a&&m(a,"tbl"))return $s(e,n,t,s,i);const c=m(n,"xfrm");if(!c)return;const h=m(c,"off"),u=m(c,"ext");if(!h||!u)return;const g=C(h,"x",0)*i,p=C(h,"y",0)*i,b=C(u,"cx",0)*i,_=C(u,"cy",0)*i;if(b<=0||_<=0)return;const y=d.includes("chart"),w=d.includes("diagram");if(y&&r&&o){const P=a?m(a,"chart"):null,v=P?P.getAttribute("r:id")||P.getAttribute("id"):null,k=v?o[v]:null;if(k&&r[k.fullPath]){const T=new TextDecoder().decode(r[k.fullPath]),N=_e(T);go(e,N,g,p,b,_,t,i);return}}if(w&&r&&o){const P=a?m(a,"relIds"):null,v=P?P.getAttribute("r:dm")||P.getAttribute("dm"):null,k=v?o[v]:null;if(k&&r[k.fullPath]){const T=new TextDecoder().decode(r[k.fullPath]),N=_e(T),M=P?P.getAttribute("r:lo")||P.getAttribute("lo"):null,F=M?o[M]:null,j=F&&r[F.fullPath]?_e(new TextDecoder().decode(r[F.fullPath])):null,{renderSmartArt:E}=await Qt(async()=>{const{renderSmartArt:L}=await import("./smartart-DmOeXeJs.js");return{renderSmartArt:L}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14]),import.meta.url);E(e,N,j,g,p,b,_,t,i);return}}const x=y?"📊 Chart":w?"🔷 Diagram":"⬛ Graphic";e.save(),e.fillStyle="#f4f4f8",e.strokeStyle="#ccccdd",e.lineWidth=1,e.fillRect(g,p,b,_),e.strokeRect(g,p,b,_),e.fillStyle="#999",e.font=`${Math.min(b*.07,16*i)}px sans-serif`,e.textAlign="center",e.textBaseline="middle",e.fillText(x,g+b/2,p+_/2),e.textAlign="start",e.textBaseline="alphabetic",e.restore()}async function zs(e,n,t,s,i,r,o,l,a){if(n)for(const d of n.children){const c=d.localName;try{c==="sp"?await tn(e,d,t,s,i,r,o,null,l):c==="pic"?await nn(e,d,t,s,i,o):c==="grpSp"?await sn(e,d,t,s,i,r,o):c==="graphicFrame"?await on(e,d,i,r,o,a,t):c==="cxnSp"&&await rn(e,d,i,o)}catch(h){console.warn("Error rendering shape:",c,h)}}}const To=Object.freeze(Object.defineProperty({__proto__:null,applyEffects:As,applyFill:kt,applyOutline:lt,buildPlaceholderMap:Rs,computeLineHeight:Ns,getDefaultFontSize:wn,getRels:De,loadImages:Gt,renderBackground:Es,renderConnector:rn,renderGraphicFrame:on,renderGroupShape:sn,renderPicture:nn,renderShape:tn,renderSpTree:zs,renderTable:$s,renderTextBody:Vt,resolvePlaceholderXfrm:Is},Symbol.toStringTag,{value:"Module"}));async function jo(e){const n=new CompressionStream("deflate-raw"),t=n.writable.getWriter(),s=n.readable.getReader();t.write(e),t.close();const i=[];let r=0;for(;;){const{value:a,done:d}=await s.read();if(d)break;i.push(a),r+=a.length}const o=new Uint8Array(r);let l=0;for(const a of i)o.set(a,l),l+=a.length;return o}const Fo=(()=>{const e=new Uint32Array(256);for(let n=0;n<256;n++){let t=n;for(let s=0;s<8;s++)t=t&1?3988292384^t>>>1:t>>>1;e[n]=t}return e})();function Co(e){let n=4294967295;for(let t=0;t<e.length;t++)n=Fo[(n^e[t])&255]^n>>>8;return(n^4294967295)>>>0}class Mo{constructor(){this._chunks=[],this._size=0}append(n){this._chunks.push(n),this._size+=n.length}get size(){return this._size}concat(){const n=new Uint8Array(this._size);let t=0;for(const s of this._chunks)n.set(s,t),t+=s.length;return n}}function pe(e){return new Uint8Array([e&255,e>>8&255])}function Re(e){return new Uint8Array([e&255,e>>8&255,e>>16&255,e>>24&255])}const Ls=new TextEncoder;function No(e){return Ls.encode(e)}const Zn=18977,Jn=0;class Ao{constructor(){this._entries=[]}async addText(n,t){return this.addBytes(n,Ls.encode(t))}async addBytes(n,t,s=!0){const i=No(n),r=Co(t),o=t.length;let l,a;if(s&&t.length>32){const d=await jo(t);d.length<t.length?(l=d,a=8):(l=t,a=0)}else l=t,a=0;this._entries.push({name:n,nameBytes:i,compData:l,uncompSize:o,crc:r,method:a,localOffset:0})}async finalize(){const n=new Mo;for(const i of this._entries)i.localOffset=n.size,n.append(new Uint8Array([80,75,3,4])),n.append(pe(20)),n.append(pe(2048)),n.append(pe(i.method)),n.append(pe(Jn)),n.append(pe(Zn)),n.append(Re(i.crc)),n.append(Re(i.compData.length)),n.append(Re(i.uncompSize)),n.append(pe(i.nameBytes.length)),n.append(pe(0)),n.append(i.nameBytes),n.append(i.compData);const t=n.size;for(const i of this._entries)n.append(new Uint8Array([80,75,1,2])),n.append(pe(798)),n.append(pe(20)),n.append(pe(2048)),n.append(pe(i.method)),n.append(pe(Jn)),n.append(pe(Zn)),n.append(Re(i.crc)),n.append(Re(i.compData.length)),n.append(Re(i.uncompSize)),n.append(pe(i.nameBytes.length)),n.append(pe(0)),n.append(pe(0)),n.append(pe(0)),n.append(pe(0)),n.append(Re(0)),n.append(Re(i.localOffset)),n.append(i.nameBytes);const s=n.size-t;return n.append(new Uint8Array([80,75,5,6])),n.append(pe(0)),n.append(pe(0)),n.append(pe(this._entries.length)),n.append(pe(this._entries.length)),n.append(Re(s)),n.append(Re(t)),n.append(pe(0)),n.concat()}}async function $o(e){const n=new Ao;for(const[t,s]of Object.entries(e))typeof s=="string"?await n.addText(t,s):await n.addBytes(t,s);return n.finalize()}const Eo=new TextDecoder,Ds=new TextEncoder,Se={p:"http://schemas.openxmlformats.org/presentationml/2006/main",a:"http://schemas.openxmlformats.org/drawingml/2006/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",rel:"http://schemas.openxmlformats.org/package/2006/relationships",ct:"http://schemas.openxmlformats.org/package/2006/content-types"};function mt(e){return new DOMParser().parseFromString(e,"application/xml")}function Ro(e){const n=new XMLSerializer().serializeToString(e);return n.startsWith("<?xml")?n:`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
30
30
  `+n}function Ae(e){return Ds.encode(Ro(e))}function ze(e,n){const t=e[n];return t?mt(Eo.decode(t)):null}function le(e,n){if(!e)return null;const t=e.getElementsByTagName("*");for(let s=0;s<t.length;s++)if(t[s].localName===n)return t[s];return null}function Le(e,n){if(!e)return[];const t=[],s=e.getElementsByTagName("*");for(let i=0;i<s.length;i++)s[i].localName===n&&t.push(s[i]);return t}function Io(e,n,t=null){if(!e)return t;const s=e.getAttribute(n);return s!==null?s:t}function Ye(e){const n=e.split("/"),t=n.pop();return[...n,"_rels",t+".rels"].join("/")}function He(e,n){const t=ze(e,Ye(n));if(!t)return{};const s={};for(const i of Array.from(t.getElementsByTagName("Relationship"))){const r=i.getAttribute("Id"),o=i.getAttribute("Target"),l=i.getAttribute("Type")||"";let a=o;if(!o.startsWith("/")&&!o.startsWith("http")){const d=n.split("/").slice(0,-1).join("/");a=d?d+"/"+o.replace(/^\.\.\//,""):o;const c=a.split("/"),h=[];for(const u of c)u===".."?h.pop():h.push(u);a=h.join("/")}s[r]={id:r,target:o,type:l,fullPath:a}}return s}function Et(e){const n=mt('<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"/>'),t=n.documentElement;for(const s of Object.values(e)){const i=n.createElementNS(Se.rel,"Relationship");i.setAttribute("Id",s.id),i.setAttribute("Type",s.type),i.setAttribute("Target",s.target),s.targetMode&&i.setAttribute("TargetMode",s.targetMode),t.appendChild(i)}return n}function Rt(e){const n=Object.keys(e).map(t=>parseInt(t.replace("rId",""),10)).filter(t=>!isNaN(t));return"rId"+((n.length?Math.max(...n):0)+1)}function Wt(e,n){for(const t of e.children){const s=t.localName;if(s==="sp"||s==="pic"||s==="cxnSp"){const i=le(t,"nvSpPr")||le(t,"nvPicPr")||le(t,"nvCxnSpPr"),r=i?le(i,"cNvPr"):null;if(r&&(r.getAttribute("name")||"")===n)return t}else if(s==="grpSp"){const i=Wt(t,n);if(i)return i}}return null}function nt(e){const n=le(e,"cSld");return n?le(n,"spTree"):null}function It(e,n,t,s=!0){for(const i of Le(e,"t")){const r=i.textContent;if(!r)continue;const o=s?r.split(n).join(t):r.replace(new RegExp(zo(n),"gi"),t);o!==r&&(i.textContent=o)}}function zo(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}const es={"image/jpeg":"jpeg","image/jpg":"jpeg","image/png":"png","image/gif":"gif","image/webp":"webp","image/svg+xml":"svg"},Lo={jpeg:"image/jpeg",png:"image/png",gif:"image/gif",webp:"image/webp",svg:"image/svg+xml"};function ts(e,n,t){const s="[Content_Types].xml",i=ze(e,s);if(!i)return;const r=i.documentElement;for(const l of Le(i,"Override"))if(l.getAttribute("PartName")==="/"+t)return;const o=i.createElementNS(Se.ct,"Override");o.setAttribute("PartName","/"+t),o.setAttribute("ContentType",Lo[n]||"application/octet-stream"),r.appendChild(o),e[s]=Ae(i)}class Ht{constructor(n){this._files=n,this._presPath="ppt/presentation.xml",this._presDoc=ze(n,this._presPath),this._presRels=He(n,this._presPath),this._slidePaths=this._buildSlidePaths()}static fromRenderer(n){const t={};for(const[s,i]of Object.entries(n._files))t[s]=i instanceof Uint8Array?i.slice():i;return new Ht(t)}static async fromBytes(n){const t=await Ss(n);return new Ht(t)}_buildSlidePaths(){if(!this._presDoc)return[];const n=le(this._presDoc,"sldIdLst");if(!n)return[];const t=[];for(const s of n.children){if(s.localName!=="sldId")continue;const i=s.getAttribute("r:id")||s.getAttribute("id"),r=this._presRels[i];r&&t.push(r.fullPath)}return t}_savePresDoc(){this._files[this._presPath]=Ae(this._presDoc)}_savePresRels(){this._files[Ye(this._presPath)]=Ae(Et(this._presRels))}getSlidePaths(){return[...this._slidePaths]}getSlideCount(){return this._slidePaths.length}_slideDoc(n){const t=this._slidePaths[n];if(!t)throw new RangeError(`Slide ${n} out of range`);return ze(this._files,t)}_saveSlideDoc(n,t){this._files[this._slidePaths[n]]=Ae(t)}applyTemplate(n,t={}){const{open:s="{{",close:i="}}",slides:r}=t,o=r??this._slidePaths.map((l,a)=>a);for(const l of o){const a=this._slideDoc(l);for(const[d,c]of Object.entries(n)){const h=s+d+i;It(a,h,String(c))}this._saveSlideDoc(l,a)}for(const l of o)this._applyTemplateToNotes(l,n,s,i)}_applyTemplateToNotes(n,t,s,i){const r=He(this._files,this._slidePaths[n]),o=Object.values(r).find(a=>a.type?.includes("notesSlide"));if(!o)return;const l=ze(this._files,o.fullPath);if(l){for(const[a,d]of Object.entries(t))It(l,s+a+i,String(d));this._files[o.fullPath]=Ae(l)}}replaceText(n,t,s={}){const{caseSensitive:i=!0,includeNotes:r=!1,slides:o}=s,l=o??this._slidePaths.map((a,d)=>d);for(const a of l){const d=this._slideDoc(a);if(It(d,n,t,i),this._saveSlideDoc(a,d),r){const c=He(this._files,this._slidePaths[a]),h=Object.values(c).find(u=>u.type?.includes("notesSlide"));if(h){const u=ze(this._files,h.fullPath);u&&(It(u,n,t,i),this._files[h.fullPath]=Ae(u))}}}}setShapeText(n,t,s,i={}){const{preserveFormatting:r=!0}=i,o=this._slideDoc(n),l=nt(o);if(!l)return this;const a=Wt(l,t);if(!a)throw new Error(`Shape "${t}" not found on slide ${n}`);const d=le(a,"txBody");if(!d)return this;const c=le(d,"r"),h=c?le(c,"rPr"):null,u=le(le(d,"p"),"pPr");for(const b of Le(d,"p"))b.parentNode.removeChild(b);const g=s.split(`
31
31
  `),p=Se.a;for(const b of g){const _=o.createElementNS(p,"a:p");u&&r&&_.appendChild(u.cloneNode(!0));const y=o.createElementNS(p,"a:r");h&&r&&y.appendChild(h.cloneNode(!0));const w=o.createElementNS(p,"a:t");w.textContent=b,y.appendChild(w),_.appendChild(y),d.appendChild(_)}return this._saveSlideDoc(n,o),this}getShapeText(n,t){const s=this._slideDoc(n),i=nt(s);if(!i)return"";const r=Wt(i,t);return r?Le(r,"t").map(o=>o.textContent).join(""):""}addTextBox(n,t,s={}){const{x:i=914400,y:r=914400,w:o=4572e3,h:l=914400,color:a="000000",fontSize:d=1800,bold:c=!1,align:h="l",fontFamily:u="Calibri"}=s,g=this._slideDoc(n),p=nt(g);if(!p)return this;const _=Math.max(0,...Le(p,"cNvPr").map(k=>parseInt(k.getAttribute("id")||"0",10)))+1,y=`TextBox ${_}`,w=Se.a,P=`<p:sp xmlns:p="${Se.p}" xmlns:a="${w}">
32
32
  <p:nvSpPr>