@silurus/ooxml 0.78.0 → 0.79.0

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 (46) hide show
  1. package/README.md +39 -1
  2. package/THIRD_PARTY_NOTICES.md +13 -0
  3. package/dist/{canvas-viewer-mechanics-ChxLdOJg.js → canvas-viewer-mechanics-D9tsuHnG.js} +1 -1
  4. package/dist/chart-number-format-tjYUR9eS.js +435 -0
  5. package/dist/dash-Cyc-sevN.js +786 -0
  6. package/dist/{document-pull-client-xsdVDuVD.js → document-pull-client-YiU8M4LO.js} +3283 -3156
  7. package/dist/{docx-CZC3j4s4.js → docx-a1UpmRf8.js} +65 -56
  8. package/dist/docx.mjs +4 -4
  9. package/dist/docx_parser_bg.wasm +0 -0
  10. package/dist/index.mjs +3 -3
  11. package/dist/{line-distribute-HuZyTARz.js → line-distribute-pDqovJpT.js} +1 -1
  12. package/dist/{line-metrics-z9AdgPaZ.js → line-metrics-DjKxiIUD.js} +4097 -3184
  13. package/dist/math.mjs +1 -1
  14. package/dist/node.mjs +322 -322
  15. package/dist/{pptx-c3UgGKIs.js → pptx-t5ABdzfd.js} +192 -183
  16. package/dist/pptx.mjs +5 -5
  17. package/dist/pptx_parser_bg.wasm +0 -0
  18. package/dist/region-map.mjs +12708 -0
  19. package/dist/{render-yhFUeiYl.js → render-BjIEuFIG.js} +1 -1
  20. package/dist/render-worker-host-BB320snY.js +27 -0
  21. package/dist/render-worker-host-BjEPZBwf.js +27 -0
  22. package/dist/render-worker-host-hZ0o4OD7.js +27 -0
  23. package/dist/{resource-measurement-5g27Av6n.js → resource-measurement-D8EiTm_E.js} +1 -1
  24. package/dist/{session-BOuXp10X.js → session-Bhe_eY-s.js} +10 -10
  25. package/dist/{slide-pull-client-DKckZrLx.js → slide-pull-client-BQ8gJPTq.js} +626 -563
  26. package/dist/three-d.mjs +2158 -0
  27. package/dist/types/docx.d.ts +189 -16
  28. package/dist/types/index.d.ts +205 -20
  29. package/dist/types/math.d.ts +1 -1
  30. package/dist/types/node.d.ts +166 -1
  31. package/dist/types/pptx.d.ts +191 -16
  32. package/dist/types/region-map.d.ts +520 -0
  33. package/dist/types/three-d.d.ts +520 -0
  34. package/dist/types/xlsx.d.ts +195 -16
  35. package/dist/{worksheet-pull-client-CMDRPZ5E.js → worksheet-pull-client-T0EzdEEQ.js} +13 -13
  36. package/dist/{xlsx-BAScjxlC.js → xlsx-CsDDMJIK.js} +833 -770
  37. package/dist/xlsx.mjs +5 -5
  38. package/dist/xlsx_parser_bg.wasm +0 -0
  39. package/package.json +13 -1
  40. package/dist/render-worker-host-BzxTAscX.js +0 -27
  41. package/dist/render-worker-host-CBjWHxMb.js +0 -27
  42. package/dist/render-worker-host-Ivhx3KII.js +0 -27
  43. /package/dist/{highlight-rect-CAkCWJ37.js → highlight-rect-cCvVU-MW.js} +0 -0
  44. /package/dist/{mathjax-CMjda8Ip.js → mathjax-Dqo857oC.js} +0 -0
  45. /package/dist/{transfer-DCu4c2BL.js → transfer-3QEJrsJa.js} +0 -0
  46. /package/dist/{visible-index-CgyJLAS_.js → visible-index-CKvgpUrf.js} +0 -0
@@ -1,27 +0,0 @@
1
- //#region packages/docx/src/render-worker.ts?worker&inline
2
- var e = "var e=class{__destroy_into_raw(){let e=this.__wbg_ptr;return this.__wbg_ptr=0,n.unregister(this),e}free(){let e=this.__destroy_into_raw();v.__wbg_docxarchive_free(e,0)}acknowledge_document_chunk(e,t,n){let r=v.docxarchive_acknowledge_document_chunk(this.__wbg_ptr,e,t,n);if(r[1])throw f(r[0])}assert_healthy(){let e=v.docxarchive_assert_healthy(this.__wbg_ptr);if(e[1])throw f(e[0])}cancel_document_cursor(){v.docxarchive_cancel_document_cursor(this.__wbg_ptr)}close_document_session(){v.docxarchive_close_document_session(this.__wbg_ptr)}document_chunk_done(){let e=v.docxarchive_document_chunk_done(this.__wbg_ptr);if(e[2])throw f(e[1]);return e[0]!==0}document_cursor_resource_usage(){let e=v.docxarchive_document_cursor_resource_usage(this.__wbg_ptr);if(e[3])throw f(e[2]);var t=r(e[0],e[1]).slice();return v.__wbindgen_free(e[0],e[1]*1,1),t}extract_image(e){let t=d(e,v.__wbindgen_malloc,v.__wbindgen_realloc),n=_,i=v.docxarchive_extract_image(this.__wbg_ptr,t,n);if(i[3])throw f(i[2]);var a=r(i[0],i[1]).slice();return v.__wbindgen_free(i[0],i[1]*1,1),a}constructor(e,t,r,i){let a=u(e,v.__wbindgen_malloc),o=_,s=v.docxarchive_new(a,o,!l(t),l(t)?BigInt(0):t,!l(r),l(r)?BigInt(0):r,!l(i),l(i)?BigInt(0):i);if(s[2])throw f(s[1]);return this.__wbg_ptr=s[0]>>>0,n.register(this,this.__wbg_ptr,this),this}open_document_cursor(e,t){let n=v.docxarchive_open_document_cursor(this.__wbg_ptr,e,t);if(n[1])throw f(n[0])}parse(){let e=v.docxarchive_parse(this.__wbg_ptr);if(e[3])throw f(e[2]);var t=r(e[0],e[1]).slice();return v.__wbindgen_free(e[0],e[1]*1,1),t}pull_document_chunk(e,t,n,i){let a=v.docxarchive_pull_document_chunk(this.__wbg_ptr,e,t,n,i);if(a[3])throw f(a[2]);var o=r(a[0],a[1]).slice();return v.__wbindgen_free(a[0],a[1]*1,1),o}resource_usage(){let e=v.docxarchive_resource_usage(this.__wbg_ptr);if(e[3])throw f(e[2]);var t=r(e[0],e[1]).slice();return v.__wbindgen_free(e[0],e[1]*1,1),t}to_markdown(){let e,t;try{let i=v.docxarchive_to_markdown(this.__wbg_ptr);var n=i[0],r=i[1];if(i[3])throw n=0,r=0,f(i[2]);return e=n,t=r,o(n,r)}finally{v.__wbindgen_free(e,t,1)}}};Symbol.dispose&&(e.prototype[Symbol.dispose]=e.prototype.free);function t(){return{__proto__:null,\"./docx_parser_bg.js\":{__proto__:null,__wbg___wbindgen_throw_6b64449b9b9ed33c:function(e,t){throw Error(o(e,t))},__wbg_error_a6fa202b58aa1cd3:function(e,t){let n,r;try{n=e,r=t,console.error(o(e,t))}finally{v.__wbindgen_free(n,r,1)}},__wbg_new_227d7c05414eb861:function(){return Error()},__wbg_stack_3b0d974bbf31e44f:function(e,t){let n=t.stack,r=d(n,v.__wbindgen_malloc,v.__wbindgen_realloc),i=_;a().setInt32(e+4,i,!0),a().setInt32(e+0,r,!0)},__wbindgen_cast_0000000000000001:function(e,t){return o(e,t)},__wbindgen_init_externref_table:function(){let e=v.__wbindgen_externrefs,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)}}}}const n=typeof FinalizationRegistry>`u`?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry(e=>v.__wbg_docxarchive_free(e>>>0,1));function r(e,t){return e>>>=0,c().subarray(e/1,e/1+t)}let i=null;function a(){return(i===null||i.buffer.detached===!0||i.buffer.detached===void 0&&i.buffer!==v.memory.buffer)&&(i=new DataView(v.memory.buffer)),i}function o(e,t){return e>>>=0,h(e,t)}let s=null;function c(){return(s===null||s.byteLength===0)&&(s=new Uint8Array(v.memory.buffer)),s}function l(e){return e==null}function u(e,t){let n=t(e.length*1,1)>>>0;return c().set(e,n/1),_=e.length,n}function d(e,t,n){if(n===void 0){let n=g.encode(e),r=t(n.length,1)>>>0;return c().subarray(r,r+n.length).set(n),_=n.length,r}let r=e.length,i=t(r,1)>>>0,a=c(),o=0;for(;o<r;o++){let t=e.charCodeAt(o);if(t>127)break;a[i+o]=t}if(o!==r){o!==0&&(e=e.slice(o)),i=n(i,r,r=o+e.length*3,1)>>>0;let t=c().subarray(i+o,i+r),a=g.encodeInto(e,t);o+=a.written,i=n(i,r,o,1)>>>0}return _=o,i}function f(e){let t=v.__wbindgen_externrefs.get(e);return v.__externref_table_dealloc(e),t}let p=new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!0});p.decode();let m=0;function h(e,t){return m+=t,m>=2146435072&&(p=new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!0}),p.decode(),m=t),p.decode(c().subarray(e,e+t))}const g=new TextEncoder;`encodeInto`in g||(g.encodeInto=function(e,t){let n=g.encode(e);return t.set(n),{read:e.length,written:n.length}});let _=0,v;function y(e,t){return v=e.exports,i=null,s=null,v.__wbindgen_start(),v}async function b(e,t){if(typeof Response==`function`&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming==`function`)try{return await WebAssembly.instantiateStreaming(e,t)}catch(t){if(e.ok&&n(e.type)&&e.headers.get(`Content-Type`)!==`application/wasm`)console.warn(\"`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\\n\",t);else throw t}let r=await e.arrayBuffer();return await WebAssembly.instantiate(r,t)}else{let n=await WebAssembly.instantiate(e,t);return n instanceof WebAssembly.Instance?{instance:n,module:e}:n}function n(e){switch(e){case`basic`:case`cors`:case`default`:return!0}return!1}}async function x(e){if(v!==void 0)return v;e!==void 0&&(Object.getPrototypeOf(e)===Object.prototype?{module_or_path:e}=e:console.warn(`using deprecated parameters for the initialization function; pass a single object instead`));let n=t();(typeof e==`string`||typeof Request==`function`&&e instanceof Request||typeof URL==`function`&&e instanceof URL)&&(e=fetch(e));let{instance:r,module:i}=await b(await e,n);return y(r,i)}async function S(e){return v=void 0,i=null,s=null,x(e)}var C=class e extends Error{code;constructor(t,n){super(n),this.name=`OoxmlError`,this.code=t,Object.setPrototypeOf(this,e.prototype)}},w=class e extends Error{code=`ooxml-resource-limit`;details;constructor(t,n){super(t),this.name=`OoxmlResourceLimitError`;let r=n.violation,i=Object.freeze({format:r.format,operation:r.operation,resource:r.resource,metric:r.metric,...r.part===void 0?{}:{part:r.part},limit:r.limit,observed:r.observed,configurable:r.configurable,usage:Object.freeze({archiveEntryCount:r.usage.archiveEntryCount,declaredInflatedBytes:r.usage.declaredInflatedBytes,...r.usage.largestInflatedEntryBytes===void 0?{}:{largestInflatedEntryBytes:r.usage.largestInflatedEntryBytes},distinctInflatedBytes:r.usage.distinctInflatedBytes,operationInflatedBytes:r.usage.operationInflatedBytes})});this.details=Object.freeze({stage:n.stage,violation:i}),Object.setPrototypeOf(this,e.prototype)}};const T=new Map;function E(e,t,n){let r=T.get(e),i=r?.get(t);if(i)return i.refs++,{face:i.face,isNew:!1};let a=n(),o=r??new Map;return o.set(t,{face:a,set:t,refs:1}),T.set(e,o),{face:a,isNew:!0}}function D(e){let t=new Set;for(let n of e)if(!t.has(n)){t.add(n);for(let[e,t]of T){let r=!1;for(let[i,a]of t)if(a.face===n){if(r=!0,a.refs--,a.refs<=0){try{a.set.delete(n)}catch{}t.delete(i),t.size===0&&T.delete(e)}break}if(r)break}}}function O(e){return Promise.race([e,new Promise(e=>setTimeout(e,15e3))])}const k=new Map;function A(e){let t=[],n=/@font-face\\s*\\{([^}]*)\\}/g,r;for(;r=n.exec(e);){let e=r[1],n=t=>e.match(RegExp(`(?:^|;|\\\\n)\\\\s*${t}\\\\s*:\\\\s*([^;]+)`,`i`))?.[1].trim(),i=n(`font-family`),a=n(`src`);if(!i||!a)continue;let o={},s=n(`font-style`);s&&(o.style=s);let c=n(`font-weight`);c&&(o.weight=c);let l=n(`font-stretch`);l&&(o.stretch=l);let u=n(`unicode-range`);u&&(o.unicodeRange=u),t.push({family:i.replace(/^['\"]|['\"]$/g,``),src:a,descriptors:o})}return t}function j(){return typeof document<`u`&&document&&document.fonts?document.fonts:typeof self<`u`&&self&&`fonts`in self?self.fonts:null}function M(e,t){let n=t.descriptors;return[`gfonts`,e,t.family.toLowerCase(),n.style??``,n.weight??``,n.stretch??``,n.unicodeRange??``,t.src].join(`|`)}async function N(e,t,n=j()){let r=n;if(!r||typeof FontFace>`u`||typeof fetch>`u`)return[];let i=new Set,a=new Set,o=new Set,s=new Map,c=new Set;for(let n of e){if(!n)continue;let e=n.toLowerCase();if(i.has(e))continue;i.add(e);let r=t[e];if(!r)continue;o.add(r.url);let c=(r.loadFamily??n).toLowerCase();a.add(c);let l=s.get(r.url);l||(l=new Set,s.set(r.url,l)),l.add(c)}if(a.size===0)return[];let l=await O(Promise.all([...o].map(async e=>{let t=k.get(e);if(t)return{url:e,rules:await t};let n=(async()=>{try{let t=await fetch(e);if(!t.ok)throw Error(`HTTP ${t.status}`);return A(await t.text())}catch{k.delete(e);for(let t of s.get(e)??[])c.add(t);return[]}})();return k.set(e,n),{url:e,rules:await n}}))),u=[],d=[];for(let e of Array.isArray(l)?l:[])for(let t of e.rules){let{face:n,isNew:i}=E(M(e.url,t),r,()=>{let e=new FontFace(t.family,t.src,t.descriptors);return r.add(e),e});u.push(n),i&&d.push(n)}return d.length>0&&await O(Promise.allSettled(d.map(e=>e.load())).then(e=>(e.forEach((e,t)=>{e.status===`rejected`&&c.add(d[t].family.replace(/['\"]/g,``).toLowerCase())}),r.ready))),c.size>0&&console.warn(`[ooxml] failed to preload web font(s): ${[...c].join(`, `)}; falling back to system fonts (text may shift or differ).`),u}function P(e,t){let n=ee(t),r=e.slice(),i=Math.min(32,r.length);for(let e=0;e<i;e++)r[e]^=n[e%16];return r}function ee(e){let t=e.replace(/[{}\\-\\s]/g,``);if(t.length!==32||/[^0-9a-fA-F]/.test(t))throw Error(`invalid fontKey GUID: ${e}`);let n=new Uint8Array(16);for(let e=0;e<16;e++)n[e]=parseInt(t.slice(e*2,e*2+2),16);return n.reverse()}function te(e,t,n,r){let i=2166136261;for(let e=0;e<r.length;e++)i^=r[e],i=Math.imul(i,16777619);return`${e}|${t}|${n}|${r.length}|${(i>>>0).toString(16)}`}async function F(e,t=30*1024*1024){let n=j();if(!n||typeof FontFace>`u`)return[];let r=[],i=[],a=[];for(let o of e)try{if(o.bytes.length===0||o.bytes.length>t){a.push(o.family);continue}let e=o.odttf?P(o.bytes,o.fontKey??``):o.bytes,{face:s,isNew:c}=E(`embedded:${te(o.family,o.weight,o.style,e)}`,n,()=>{let t=e.buffer.slice(e.byteOffset,e.byteOffset+e.byteLength),r=new FontFace(o.family,t,{weight:o.weight,style:o.style});return n.add(r),r});r.push(s),c&&i.push(s)}catch{a.push(o.family)}return i.length>0&&await O(Promise.allSettled(i.map(e=>e.load())).then(e=>(e.forEach((e,t)=>{e.status===`rejected`&&a.push(i[t].family)}),n.ready))),a.length>0&&console.warn(`[ooxml] failed to register embedded font(s): ${[...new Set(a)].join(`, `)}; falling back to substitute fonts (text may shift or differ).`),r}const I=`https://fonts.googleapis.com/css2?family=Noto+Naskh+Arabic:wght@400;700&display=swap`,L=`https://fonts.googleapis.com/css2?family=Noto+Sans+Arabic:wght@400;700&display=swap`,R=`https://fonts.googleapis.com/css2?family=Libre+Franklin:ital,wght@0,400;0,600;0,700;1,400;1,600;1,700&display=swap`,z={calibri:{url:`https://fonts.googleapis.com/css2?family=Carlito:ital,wght@0,400;0,700;1,400;1,700&display=swap`,loadFamily:`Carlito`},\"calibri light\":{url:`https://fonts.googleapis.com/css2?family=Carlito:ital,wght@0,400;0,700;1,400;1,700&display=swap`,loadFamily:`Carlito`},cambria:{url:`https://fonts.googleapis.com/css2?family=Caladea:ital,wght@0,400;0,700;1,400;1,700&display=swap`,loadFamily:`Caladea`},\"cambria math\":{url:`https://fonts.googleapis.com/css2?family=Caladea:ital,wght@0,400;0,700;1,400;1,700&display=swap`,loadFamily:`Caladea`},\"franklin gothic book\":{url:R,loadFamily:`Libre Franklin`},\"franklin gothic medium\":{url:R,loadFamily:`Libre Franklin`},\"nunito sans\":{url:`https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap`},nunito:{url:`https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,400;0,700;1,400;1,700&display=swap`},\"open sans\":{url:`https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap`},roboto:{url:`https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,400;0,700;1,400;1,700&display=swap`},lato:{url:`https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,400;0,700;1,400;1,700&display=swap`},montserrat:{url:`https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,400;0,700;1,400;1,700&display=swap`},poppins:{url:`https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,700;1,400;1,700&display=swap`},raleway:{url:`https://fonts.googleapis.com/css2?family=Raleway:ital,wght@0,400;0,700;1,400;1,700&display=swap`},\"playfair display\":{url:`https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400;1,700&display=swap`},ubuntu:{url:`https://fonts.googleapis.com/css2?family=Ubuntu:ital,wght@0,400;0,700;1,400;1,700&display=swap`},\"sakkal majalla\":{url:I,loadFamily:`Noto Naskh Arabic`},\"traditional arabic\":{url:I,loadFamily:`Noto Naskh Arabic`},\"simplified arabic\":{url:I,loadFamily:`Noto Naskh Arabic`},\"arabic typesetting\":{url:I,loadFamily:`Noto Naskh Arabic`},\"univers next arabic\":{url:L,loadFamily:`Noto Sans Arabic`},\"noto naskh arabic\":{url:I,loadFamily:`Noto Naskh Arabic`},\"noto sans arabic\":{url:L,loadFamily:`Noto Sans Arabic`}};function B(e,t){let n=e.trim();if(!n)throw TypeError(`Canvas font route requires a family list`);return Object.freeze({familyList:n,scope:t,fingerprint:`canvas-font-route-v1:${encodeURIComponent(t)}:${encodeURIComponent(n)}`})}function V(e,t,n,r){if(!Number.isFinite(t)||t<0)throw RangeError(`Canvas font size must be finite and non-negative`);if(!Number.isFinite(n)||n<1||n>1e3)throw RangeError(`Canvas font weight must be finite and between 1 and 1000`);if(!e.familyList.trim())throw TypeError(`Canvas font route requires a family list`);return`${r} ${n} ${t}px ${e.familyList}`}function ne(e){if(!e)return null;let t=e.toLowerCase();return/[ᄀ-ᇿ㄰-㆏가-힯]/.test(e)?`kr`:/[぀-ヿ]/.test(e)?`jp`:/jhenghei|微軟正黑|新細明|細明|pmingliu|mingliu|dfkai|標楷|華康|cns11643|kaiti tc|ming\\s*liu/.test(t)||/新細明體|細明體|標楷體|微軟正黑體|華康/.test(e)?`tc`:/simsun|nsimsun|simhei|simkai|simfang|yahei|dengxian|fangsong|kaiti|youyuan|lisu|stsong|stkaiti|stfangsong|stheiti|stxihei|stzhongsong|songti sc|heiti sc|微软雅黑/.test(t)||/宋体|黑体|楷体|仿宋|等线|微软雅黑|隶书|幼圆/.test(e)?`sc`:/malgun|batang|gulim|dotum|gungsuh|nanum|new gulim|hancom|hy(gothic|graphic|namu)?/.test(t)?`kr`:/\\bmeiryo\\b|\\byu\\s*(gothic|mincho)\\b|yugothic|yumincho|hiragino|\\bms\\s*(gothic|mincho|pgothic|pmincho|ui\\s*gothic)\\b|\\bms[pg]?(gothic|mincho)\\b|ipa(ex)?(gothic|mincho)|noto\\s+(sans|serif)\\s+jp|游ゴシック|游明朝|MS|メイリオ|ヒラギノ/.test(t)||/游ゴシック|游明朝|MS ゴシック|MS 明朝|MS Pゴシック|メイリオ|ヒラギノ/.test(e)?`jp`:null}function re(e){if(!e)return`sans`;let t=e.toLowerCase();return/mono|courier|consolas|等幅|gothic_m/.test(t)?`mono`:/roman|times|cambria|caladea|georgia|garamond|century(?!\\s*gothic)|palatino|antiqua|didot|bodoni|playfair|source serif|noto serif|min\\s*cho|明朝体|明朝|song|sung|simsun|nsimsun|batang|gungsuh|ming\\s*liu|mingliu|pmingliu|fang\\s*song|fangsong|kai\\s*ti|kaiti|simkai|simfang|stsong|stkaiti|stfangsong|stzhongsong|新細明|細明|宋体|楷体|楷體|仿宋|標楷|游明朝|MS 明朝|ms mincho|yu mincho|hiragino mincho|ヒラギノ明朝/.test(t)||/新細明體|細明體|宋体|明朝|楷体|楷體|仿宋|標楷體|游明朝|MS 明朝/.test(e)?`serif`:`sans`}function ie(e,t){let n=t===`serif`?`Noto Serif`:`Noto Sans`,r={jp:[`jp`,`sc`,`tc`,`kr`],sc:[`sc`,`tc`,`jp`,`kr`],tc:[`tc`,`sc`,`jp`,`kr`],kr:[`kr`,`jp`,`sc`,`tc`]},i={kr:`KR`,sc:`SC`,tc:`TC`,jp:`JP`};return r[e].map(e=>`${n} ${i[e]}`)}const ae=[`Noto Sans`,`Noto Sans Hebrew`,`Noto Sans Thai`,`Noto Sans Devanagari`],oe=[`Noto Serif`,`Noto Serif Hebrew`],H=e=>`https://fonts.googleapis.com/css2?family=${e}:wght@400;700&display=swap`,se={\"noto sans kr\":{url:H(`Noto+Sans+KR`)},\"noto sans sc\":{url:H(`Noto+Sans+SC`)},\"noto sans tc\":{url:H(`Noto+Sans+TC`)},\"noto sans jp\":{url:H(`Noto+Sans+JP`)},\"noto serif kr\":{url:H(`Noto+Serif+KR`)},\"noto serif sc\":{url:H(`Noto+Serif+SC`)},\"noto serif tc\":{url:H(`Noto+Serif+TC`)},\"noto serif jp\":{url:H(`Noto+Serif+JP`)},\"noto sans\":{url:H(`Noto+Sans`)},\"noto serif\":{url:H(`Noto+Serif`)},\"noto sans devanagari\":{url:H(`Noto+Sans+Devanagari`)},\"noto sans thai\":{url:H(`Noto+Sans+Thai`)},\"noto sans hebrew\":{url:H(`Noto+Sans+Hebrew`)},\"noto serif hebrew\":{url:H(`Noto+Serif+Hebrew`)}};var ce=class e{hasHan=!1;hasHangul=!1;hasKana=!1;hasArabic=!1;hasThai=!1;hasHebrew=!1;hasDevanagari=!1;hasCyrGreek=!1;constructor(e){this.cjkLang=e}clone(){let t=new e(this.cjkLang);return t.hasHan=this.hasHan,t.hasHangul=this.hasHangul,t.hasKana=this.hasKana,t.hasArabic=this.hasArabic,t.hasThai=this.hasThai,t.hasHebrew=this.hasHebrew,t.hasDevanagari=this.hasDevanagari,t.hasCyrGreek=this.hasCyrGreek,t}addText(e){let t=()=>this.hasHan&&this.hasHangul&&this.hasKana&&this.hasArabic&&this.hasThai&&this.hasHebrew&&this.hasDevanagari&&this.hasCyrGreek;outer:for(let n of e)if(n)for(let e of n){let n=e.codePointAt(0);if(n!==void 0&&!(n<=591)&&(n>=4352&&n<=4607||n>=12592&&n<=12687||n>=44032&&n<=55215?this.hasHangul=!0:n>=12352&&n<=12543?this.hasKana=!0:n>=13312&&n<=19903||n>=19968&&n<=40959||n>=63744&&n<=64255||n>=131072&&n<=195103?this.hasHan=!0:n>=1536&&n<=1791||n>=1872&&n<=1919||n>=2208&&n<=2303||n>=64336&&n<=65023||n>=65136&&n<=65279?this.hasArabic=!0:n>=3584&&n<=3711?this.hasThai=!0:n>=1424&&n<=1535||n>=64285&&n<=64335?this.hasHebrew=!0:n>=2304&&n<=2431?this.hasDevanagari=!0:(n>=1024&&n<=1279||n>=880&&n<=1023)&&(this.hasCyrGreek=!0),t()))break outer}}names(){let e=[],t=new Set;this.hasHangul&&t.add(`kr`),this.hasKana&&t.add(`jp`),this.hasHan&&t.size===0&&t.add(this.cjkLang??`jp`);for(let n of[`kr`,`sc`,`tc`,`jp`])if(t.has(n)){let t={kr:`KR`,sc:`SC`,tc:`TC`,jp:`JP`}[n];e.push(`Noto Sans ${t}`,`Noto Serif ${t}`)}return this.hasCyrGreek&&e.push(`Noto Sans`,`Noto Serif`),this.hasArabic&&e.push(`Noto Naskh Arabic`,`Noto Sans Arabic`),this.hasThai&&e.push(`Noto Sans Thai`),this.hasHebrew&&e.push(`Noto Sans Hebrew`,`Noto Serif Hebrew`),this.hasDevanagari&&e.push(`Noto Sans Devanagari`),e}};function le(e,t){let n=new ce(t);return n.addText(e),n.names()}const ue={167:`♣`,168:`♦`,169:`♥`,170:`♠`,171:`↔`,172:`←`,173:`↑`,174:`→`,175:`↓`,183:`•`,184:`÷`,185:`≠`,180:`×`,176:`°`,177:`±`,163:`≤`,179:`≥`},de={33:`✏`,34:`✂`,36:`👓`,74:`☺`,75:`😐`,76:`☹`,118:`❖`,167:`▪`,108:`●`,110:`■`,116:`◆`,119:`◆`,251:`✗`,252:`✓`,253:`☒`,254:`☑`,223:`←`,224:`→`,225:`↑`,226:`↓`,227:`↖`,228:`↗`,229:`↙`,230:`↘`};function fe(e){let t={};for(let n of Object.keys(e)){let r=Number(n);t[r]=e[r],t[61440+r]=e[r]}return t}const pe=fe(ue),me=fe(de);function he(e,t){if(!t)return e;let n=t.trim().toLowerCase(),r=n===`wingdings`?me:n===`symbol`?pe:null;return r?r[e.charCodeAt(0)]??e:e}function ge(e){if(!e)return!1;let t=e.toLowerCase();return t===`symbol`||t.includes(`wingdings`)}function U(e,t){if(!ge(t)||e.length===0)return[{text:e,mapped:!1}];let n=[],r=``,i=null;for(let a of e){let e=he(a,t),o=e!==a;i===null||o===i?(i=o,r+=e):(n.push({text:r,mapped:i}),i=o,r=e)}return r.length>0&&n.push({text:r,mapped:i??!1}),n}function W(e,t,n){return e.titleFontSizeHpt?e.titleFontSizeHpt/100*n:Math.max(10,t*.085)}const G=.62;function K(e,t,n,r,i){if(!e.title&&!e.titlePresent)return{fontPx:0,topPad:0,bottomPad:0,bandH:0};let a=W(e,t,n),o=a+t*r+t*i,s=Math.min(Math.max(0,o-a),a*G);return{fontPx:a,topPad:s,bottomPad:o-a-s,bandH:o}}function _e(e,t,n,r){if(!e.showLegend)return null;let i=e.legendPos??`r`,a=i===`l`?`l`:i===`t`?`t`:i===`b`?`b`:`r`;return a===`r`||a===`l`?{side:a,reserveW:Math.max(80,t*r),reserveH:0}:{side:a,reserveW:0,reserveH:Math.max(18,n*.08)}}function ve(e){return{legRightW:e?.side===`r`?e.reserveW:0,legLeftW:e?.side===`l`?e.reserveW:0,legTopH:e?.side===`t`?e.reserveH:0,legBottomH:e?.side===`b`?e.reserveH:0}}function ye(e,t,n){return e?e/100*n:Math.max(8,Math.min(10,t*.045))}function be(e){return Math.max(8,e*.02)}function xe(e,t,n,r){let i=ye(e.catAxisTitleFontSizeHpt,n,r),a=ye(e.valAxisTitleFontSizeHpt,n,r);return{catFontPx:i,valFontPx:a,catBandH:e.catAxisTitle?i+be(n)+4:0,valBandW:e.valAxisTitle?a+be(t)+4:0}}function Se(e,t,n){if(!e.title&&!e.titlePresent)return{fontPx:0,topPad:0,bottomPad:0,bandH:0};let r=W(e,t,n),i=r*2.25,a=Math.min(Math.max(0,i-r),r*G);return{fontPx:r,topPad:a,bottomPad:i-r-a,bandH:i}}function Ce(e){return e*2.75}function we(e,t,n){let r=e.xMode||`factor`,i=e.yMode||`factor`,a=e.wMode||`factor`,o=e.hMode||`factor`,s=r===`edge`?t.x+e.x*t.w:n.x+e.x*t.w,c=i===`edge`?t.y+e.y*t.h:n.y+e.y*t.h,l=e.w==null?n.w:a===`edge`?t.x+e.w*t.w-s:e.w*t.w,u=e.h==null?n.h:o===`edge`?t.y+e.h*t.h-c:e.h*t.h;return![s,c,l,u].every(Number.isFinite)||l<=0||u<=0?null:{x:s,y:c,w:l,h:u}}function q(e,t,n,r,i,a,o){let s=o.titleBand??K(e,i,a,o.titleTopPadFrac??0,o.titleBottomPadFrac??0),c=_e(e,r,i,o.legendSideReserveFrac),l=ve(c),u=xe(e,r,i,a),d,f,p,m;if(o.radialGapFrac!=null){let e=i*o.radialGapFrac;p=r-l.legRightW-l.legLeftW,m=i-s.bandH-l.legTopH-l.legBottomH-e,d=t+l.legLeftW,f=n+s.bandH+l.legTopH+e}else{let e=o.pad;if(!e)throw Error(`computeChartFrame: cartesian frame requires params.pad`);d=t+e.l,f=n+e.t,p=r-e.l-e.r,m=i-e.t-e.b}let h=o.honorPlotAreaManualLayout?e.plotAreaManualLayout:null;if(h){let e=h.layoutTarget===`inner`?{t:0,r:0,b:0,l:0}:o.manualOuterInsets??{t:0,r:0,b:0,l:0},a=h.layoutTarget===`inner`?{x:d,y:f,w:p,h:m}:{x:d-e.l,y:f-e.t,w:p+e.l+e.r,h:m+e.t+e.b},s=we(h,{x:t,y:n,w:r,h:i},a);s&&s.w>e.l+e.r&&s.h>e.t+e.b&&(d=s.x+e.l,f=s.y+e.t,p=s.w-e.l-e.r,m=s.h-e.t-e.b)}return{title:s,legend:c,legendBands:l,axisTitles:u,plotRect:{px0:d,py0:f,pw:p,ph:m},center:{cx:d+p/2,cy:f+m/2}}}function Te(e,t=5){if(e===0)return 1;let n=e/t,r=10**Math.floor(Math.log10(n)),i=n/r;return(i<1.5?1:i<3.5?2:i<7.5?5:10)*r}function Ee(e,t,n=0){if(e<=0)return t;let r=e+(e-n)/20;return Math.ceil(r/t)*t}function De(e,t){if(e>=0)return 0;let n=Math.floor(e/t)*t;return Math.abs(n-e)<t*1e-9?n-t:n}function Oe(e){return e==null||!isFinite(e)||e<=0?5:Math.min(15,Math.max(4,Math.round(e/42)))}function ke(e,t,n,r,i,a){let o=Te(t-e,Oe(i)),s=a!=null&&isFinite(a)&&a>0?a:o,c=n??De(e,o);return{min:c,max:r??Ee(t,o,c),step:s}}function Ae(e,t,n,r){let i,a=r?.logBase;if(a!=null&&isFinite(a)&&a>=2&&t>0&&n>0){let r=Math.log(t),a=Math.log(n)-r;i=a===0?0:(Math.log(Math.max(e,Number.MIN_VALUE))-r)/a}else{let r=n-t;i=r===0?0:(e-t)/r}return r?.reversed?1-i:i}function je(e,t,n,r,i){let a=isFinite(n)&&n>=2?n:10,o=e=>Math.log(e)/Math.log(a),s=t>0?t:1,c=Math.floor(o(e>0?e:s)),l=Math.ceil(o(s)),u=r??a**+c,d=i??a**+Math.max(l,c+1),f=[],p=Math.ceil(o(u)-1e-9),m=Math.floor(o(d)+1e-9);for(let e=p;e<=m;e++)f.push(a**+e);return{min:u,max:d,lines:f}}function Me(e,t,n,r){let i=Math.min(e.length,t.length);if(i<2)return{xs:[],ys:[]};if(n===`linear`){let n=r?.intercept,a=0,o=0,s=0,c=0;for(let n=0;n<i;n++)a+=e[n],o+=t[n],s+=e[n]*e[n],c+=e[n]*t[n];let l,u;if(n!=null&&isFinite(n)){let e=s,t=c-n*a;l=e===0?0:t/e,u=n}else{let e=i*s-a*a;l=e===0?0:(i*c-a*o)/e,u=(o-l*a)/i}let d=e[0],f=e[i-1];return{xs:[d,f],ys:[l*d+u,l*f+u]}}if(n===`movingAvg`){let n=Math.max(2,Math.round(r?.period??2));if(i<n)return{xs:[],ys:[]};let a=[],o=[];for(let r=n-1;r<i;r++){let i=0;for(let e=0;e<n;e++)i+=t[r-e];a.push(e[r]),o.push(i/n)}return{xs:a,ys:o}}return{xs:[],ys:[]}}const Ne=12700;function Pe(e,t){return e?Math.max(.5,e/Ne)*t:1}function Fe(e,t,n){return{color:e?`#${e}`:`#aaa`,width:Pe(t,n)}}function Ie(e,t,n){return{color:e?`#${e}`:`#e0e0e0`,width:t?Pe(t,n):.5}}function Le(e){return e.catAxisCrossBetween!==`midCat`}const Re=864e5,ze=Date.UTC(1899,11,30),Be=Date.UTC(1904,0,1);function Ve(e,t=!1){if(t)return new Date(Be+e*Re);let n=e<60?e+1:e;return new Date(ze+n*Re)}function He(e,t){if(!Number.isFinite(e))return String(e);let n=Math.max(0,Math.trunc(t)),r=e<0,[i,a=``]=Ue(Math.abs(e).toString()).split(`.`),o=a.padEnd(n+1,`0`),s=o.slice(0,n),c=o.charCodeAt(n)-48,l=(i+s).split(``).map(e=>e.charCodeAt(0)-48);if(c>=5){let e=l.length-1;for(;e>=0;e--)if(l[e]===9)l[e]=0;else{l[e]+=1;break}e<0&&l.unshift(1)}let u=l.map(e=>String(e)).join(``),d=n,f=(d>0?u.slice(0,u.length-d):u)||`0`,p=d>0?u.slice(u.length-d):``,m=f.replace(/^0+(?=\\d)/,``),h=p.length>0?`${m}.${p}`:m,g=/^[0.]*$/.test(h)&&!/[1-9]/.test(h);return r&&!g?`-${h}`:h}function Ue(e){let t=/^(\\d+)(?:\\.(\\d+))?[eE]([+-]?\\d+)$/.exec(e);if(!t)return e;let[,n,r=``,i]=t,a=parseInt(i,10),o=n+r,s=n.length+a;return s<=0?`0.`+`0`.repeat(-s)+o:s>=o.length?o+`0`.repeat(s-o.length):o.slice(0,s)+`.`+o.slice(s)}function We(e){return Number.isInteger(e)?String(e):He(e,6).replace(/\\.?0+$/,``)}function Ge(e,t,n=!1){if(!t||t.trim().toLowerCase()===`general`)return We(e);if(qe(t))return Je(e,t,n);let r=Ye(t),i;return i=e>0?r[0]??t:e<0?r[1]??r[0]??t:r[2]??r[0]??t,i===``?``:(e<0&&r.length<2?`-`:``)+Xe(Math.abs(e),i)}function Ke(e,t,n=!1){if(!t||e.trim()===``)return e;let r=Number(e);return Number.isFinite(r)?Ge(r,t,n):e}function qe(e){let t=!1;for(let n=0;n<e.length;n++){let r=e[n];if(r===`\"`){t=!t;continue}if(!t){if(r===`\\\\`){n++;continue}if(r===`[`){for(;n<e.length&&e[n]!==`]`;)n++;continue}if(r===`y`||r===`Y`||r===`d`||r===`D`||r===`m`||r===`M`||r===`h`||r===`H`||r===`s`||r===`S`)return!0}}return!1}function Je(e,t,n=!1){let r=Ve(Math.floor(e),n),i=r.getUTCFullYear(),a=r.getUTCMonth()+1,o=r.getUTCDate(),s=(e-Math.floor(e))*86400,c=Math.floor(s/3600),l=Math.floor(s%3600/60),u=Math.floor(s%60),d=``,f=!1,p=0;for(;p<t.length;){let e=t[p];if(e===`\"`){f=!f,p++;continue}if(f){d+=e,p++;continue}if(e===`\\\\`&&p+1<t.length){d+=t[p+1],p+=2;continue}if(e===`[`){for(;p<t.length&&t[p]!==`]`;)p++;p<t.length&&p++;continue}if(e===`y`||e===`Y`){let e=0;for(;p<t.length&&(t[p]===`y`||t[p]===`Y`);)e++,p++;d+=e>=3?String(i):String(i%100).padStart(2,`0`);continue}if(e===`m`||e===`M`){let e=0;for(;p<t.length&&(t[p]===`m`||t[p]===`M`);)e++,p++;d.match(/[Hh]+\\W*$/)?d+=e>=2?String(l).padStart(2,`0`):String(l):d+=e>=2?String(a).padStart(2,`0`):String(a);continue}if(e===`d`||e===`D`){let e=0;for(;p<t.length&&(t[p]===`d`||t[p]===`D`);)e++,p++;d+=e>=2?String(o).padStart(2,`0`):String(o);continue}if(e===`h`||e===`H`){let e=0;for(;p<t.length&&(t[p]===`h`||t[p]===`H`);)e++,p++;d+=e>=2?String(c).padStart(2,`0`):String(c);continue}if(e===`s`||e===`S`){let e=0;for(;p<t.length&&(t[p]===`s`||t[p]===`S`);)e++,p++;d+=e>=2?String(u).padStart(2,`0`):String(u);continue}d+=e,p++}return d}function Ye(e){let t=[],n=``;for(let r=0;r<e.length;r++){let i=e[r];if(i===`\\\\`&&r+1<e.length){n+=i+e[r+1],r++;continue}if(i===`\"`){for(n+=i,r++;r<e.length&&e[r]!==`\"`;)n+=e[r],r++;r<e.length&&(n+=e[r]);continue}if(i===`[`){for(n+=i,r++;r<e.length&&e[r]!==`]`;)n+=e[r],r++;r<e.length&&(n+=e[r]);continue}if(i===`;`){t.push(n),n=``;continue}n+=i}return t.push(n),t}function Xe(e,t){let n=[],r=0,i=!1,a=!1;for(;r<t.length;){let e=t[r];if(e===`\"`){r++;let e=``;for(;r<t.length&&t[r]!==`\"`;)e+=t[r],r++;r<t.length&&r++,n.push({kind:`lit`,text:e});continue}if(e===`\\\\`&&r+1<t.length){n.push({kind:`lit`,text:t[r+1]}),r+=2;continue}if(e===`_`&&r+1<t.length){n.push({kind:`lit`,text:` `}),r+=2;continue}if(e===`*`&&r+1<t.length){r+=2;continue}if(e===`[`){for(r++;r<t.length&&t[r]!==`]`;)r++;r<t.length&&r++;continue}if(e===`%`){a=!0,n.push({kind:`lit`,text:`%`}),r++;continue}if(e===`#`||e===`0`||e===`.`||e===`,`||e===`?`){let e=``;for(;r<t.length&&(t[r]===`#`||t[r]===`0`||t[r]===`.`||t[r]===`,`||t[r]===`?`);)e+=t[r],r++;n.push({kind:`num`,text:e}),i=!0;continue}n.push({kind:`lit`,text:e}),r++}if(!i)return n.map(e=>e.text).join(``);let o=a?e*100:e,s=``;for(let e of n)e.kind===`num`&&(s+=e.text);let c=Ze(o,s),l=!1;return n.map(e=>e.kind===`lit`?e.text:l?``:(l=!0,c)).join(``)}function Ze(e,t){let n=t.indexOf(`.`),r=n>=0?t.slice(0,n):t,i=n>=0?t.slice(n+1):``,a=/,/.test(r),o=(i.match(/[#0?]/g)??[]).length,s=(r.replace(/,/g,``).match(/0/g)??[]).length,[c,l=``]=He(e,o).split(`.`),u=c.padStart(s,`0`),d=a?u.replace(/\\B(?=(\\d{3})+(?!\\d))/g,`,`):u;return o===0?d:`${d}.${l.padEnd(o,`0`)}`}function Qe(e,t,n){if(t===``||n<=0)return``;if(e.measureText(t).width<=n)return t;if(e.measureText(`…`).width>n)return``;let r=0,i=t.length-1,a=0;for(;r<=i;){let o=r+i>>1;e.measureText(t.slice(0,o)+`…`).width<=n?(a=o,r=o+1):i=o-1}let o=a>0?t.charCodeAt(a-1):0;return o>=55296&&o<=56319&&a--,t.slice(0,a)+`…`}function $e(e,t){return[Math.max(1,Math.ceil(e)),Math.max(1,Math.ceil(t))]}function et(e,t){let[n,r]=$e(e,t);if(typeof OffscreenCanvas<`u`)return new OffscreenCanvas(n,r);if(typeof document<`u`){let e=document.createElement(`canvas`);return e.width=n,e.height=r,e}return null}function tt(e,t,n){let[r,i]=$e(t,n);if(typeof OffscreenCanvas<`u`)try{return new OffscreenCanvas(r,i)}catch{}if(typeof document<`u`)try{let e=document.createElement(`canvas`);return e.width=r,e.height=i,e}catch{}try{let t=e.canvas?.constructor;return typeof t==`function`?new t(r,i):null}catch{return null}}const nt={pct5:[0,16,0,0,0,1,0,0],pct10:[136,0,34,0,136,0,34,0],pct20:[136,34,136,34,136,34,136,34],pct25:[136,85,34,85,136,85,34,85],pct30:[170,85,170,85,170,85,170,85],pct40:[170,119,170,221,170,119,170,221],pct50:[170,85,170,85,170,85,170,85],pct60:[221,85,119,85,221,85,119,85],pct70:[238,85,187,85,238,85,187,85],pct75:[238,170,187,170,238,170,187,170],pct80:[254,239,251,191,254,239,251,191],pct90:[255,239,255,251,255,239,255,251],horz:[255,0,0,0,255,0,0,0],vert:[136,136,136,136,136,136,136,136],ltHorz:[0,255,0,0,0,0,0,0],ltVert:[32,32,32,32,32,32,32,32],dkHorz:[255,255,0,0,255,255,0,0],dkVert:[204,204,204,204,204,204,204,204],narHorz:[255,0,255,0,255,0,255,0],narVert:[170,170,170,170,170,170,170,170],cross:[255,136,136,136,255,136,136,136],lgGrid:[255,128,128,128,128,128,128,128],smGrid:[255,136,136,136,255,136,136,136],dotGrid:[136,0,0,0,136,0,0,0],dnDiag:[128,64,32,16,8,4,2,1],upDiag:[1,2,4,8,16,32,64,128],ltDnDiag:[136,68,34,17,136,68,34,17],ltUpDiag:[17,34,68,136,17,34,68,136],dkDnDiag:[195,129,0,129,195,129,0,129],dkUpDiag:[195,129,0,129,195,129,0,129],wdDnDiag:[128,64,32,16,8,4,2,129],wdUpDiag:[1,2,4,8,16,32,64,129],diagCross:[129,66,36,24,24,36,66,129],horzBrick:[255,16,16,16,255,1,1,1],diagBrick:[129,66,36,24,36,66,129,0],lgCheck:[240,240,240,240,15,15,15,15],smCheck:[204,204,51,51,204,204,51,51],trellis:[165,90,165,90,165,90,165,90]};function rt(e,t,n){let r=nt[e];if(!r)return null;let i=et(8,8);if(!i)return null;let a=i.getContext(`2d`);if(!a)return null;a.fillStyle=it(n),a.fillRect(0,0,8,8),a.fillStyle=it(t);for(let e=0;e<8;e++){let t=r[e];for(let n=0;n<8;n++)t&1<<7-n&&a.fillRect(n,e,1,1)}return i}function it(e){return`rgba(${parseInt(e.slice(0,2),16)},${parseInt(e.slice(2,4),16)},${parseInt(e.slice(4,6),16)},${e.length>=8?parseInt(e.slice(6,8),16)/255:1})`}function at(e,t){return e.map(e=>e*t)}const ot={dotted:[1,2],dashed:[3,2],dashSmallGap:[3,1],dotDash:[1,2,3,2],dotDotDash:[1,2,1,2,3,2],dashDotStroked:[1,2,3,2]};function st(e,t){let n=ot[e];return n?at(n,t):[]}const ct={dash:[6,3],dot:[1.5,3],dashDot:[6,3,1.5,3],lgDash:[10,4],lgDashDot:[10,4,1.5,4],lgDashDotDot:[10,4,1.5,4,1.5,4],sysDash:[4,2],sysDot:[1,2],sysDashDot:[4,2,1,2],sysDashDotDot:[4,2,1,2,1,2]};function lt(e,t){let n=ct[e];return n?at(n,t):[]}function ut(e,t){let n=lt(e,t);if(n.length>0)return n;let r=e.trim().split(/[\\s,]+/).map(Number);return r.length>=2&&r.every(e=>Number.isFinite(e)&&e>=0)&&r.some(e=>e>0)?(r.length%2!=0&&r.pop(),at(r,t)):[]}function dt(e,t,n,r,i,a,o){let s=e.tileRect;if(!s||(s.l??0)===0&&(s.t??0)===0&&(s.r??0)===0&&(s.b??0)===0)return null;let c=n+i*(s.l??0),l=r+a*(s.t??0),u=i*(1-(s.l??0)-(s.r??0)),d=a*(1-(s.t??0)-(s.b??0));if(!Number.isFinite(u)||!Number.isFinite(d)||Math.abs(u)<1e-9||Math.abs(d)<1e-9)return null;let f=Math.min(1,512/Math.abs(u),512/Math.abs(d)),p=Math.max(1,Math.ceil(Math.abs(u)*f)),m=Math.max(1,Math.ceil(Math.abs(d)*f)),h=tt(t,p,m),g=h?.getContext(`2d`);if(!h||!g)return null;let _=ht({...e,tileRect:void 0,flip:void 0},g,0,0,p,m,o);if(!_)return null;g.fillStyle=_,g.fillRect(0,0,p,m);let v=e.flip===`x`||e.flip===`xy`,y=e.flip===`y`||e.flip===`xy`,b=h;if(v||y){let e=tt(t,p*(v?2:1),m*(y?2:1)),n=e?.getContext(`2d`);if(!e||!n)return null;for(let e=0;e<(y?2:1);e+=1)for(let t=0;t<(v?2:1);t+=1)n.save(),n.translate(t*p,e*m),n.scale(t===1?-1:1,e===1?-1:1),n.drawImage(h,t===1?-p:0,e===1?-m:0),n.restore();b=e}let x=t.createPattern(b,`repeat`);return!x||typeof x.setTransform!=`function`?null:(x.setTransform({a:u/p,b:0,c:0,d:d/m,e:c,f:l}),x)}function ft(e,t=1){let n=e.charCodeAt(0)===35?e.slice(1):e;return`rgba(${parseInt(n.slice(0,2),16)},${parseInt(n.slice(2,4),16)},${parseInt(n.slice(4,6),16)},${n.length>=8?parseInt(n.slice(6,8),16)/255:t})`}function pt(e){let t=e.charCodeAt(0)===35?e.slice(1):e,n=parseInt(t.slice(0,2),16),r=parseInt(t.slice(2,4),16),i=parseInt(t.slice(4,6),16);return .299*n+.587*r+.114*i}function mt(e){return e&&pt(e)<128?`#FFFFFF`:`#000000`}function ht(e,t,n,r,i,a,o=0){if(!e||e.fillType===`none`)return null;if(e.fillType===`solid`)return ft(e.color);if(e.fillType===`pattern`)return _t(e,t);if(e.fillType===`gradient`){let s=e.stops;if(s.length===0)return null;if(s.length===1)return ft(s[0].color);let c=dt(e,t,n,r,i,a,o);if(c)return c;let l,u=e.tileRect,d=n+i*(u?.l??0),f=r+a*(u?.t??0),p=i*(1-(u?.l??0)-(u?.r??0)),m=a*(1-(u?.t??0)-(u?.b??0));if(e.gradType===`radial`){let n=e.fillToRect,r=d+p*(n?.l??0),i=f+m*(n?.t??0),a=p*(1-(n?.l??0)-(n?.r??0)),o=m*(1-(n?.t??0)-(n?.b??0)),s=r+a/2,c=i+o/2,u=Math.max(Math.abs(s-d),Math.abs(d+p-s)),h=Math.max(Math.abs(c-f),Math.abs(f+m-c)),g=e.path===`rect`?Math.max(u,h):Math.sqrt(u*u+h*h);l=t.createRadialGradient(s,c,0,s,c,Math.max(g,1e-9))}else{let n=(e.rotWithShape===!1?e.angle-o:e.angle)*Math.PI/180,r=Math.cos(n),i=Math.sin(n);if(e.scaled===!0){r*=p,i*=m;let e=Math.hypot(r,i);e>0&&(r/=e,i/=e)}let a=d+p/2,s=f+m/2,c=(Math.abs(r)*p+Math.abs(i)*m)/2;l=t.createLinearGradient(a-r*c,s-i*c,a+r*c,s+i*c)}for(let e of s)l.addColorStop(Math.min(1,Math.max(0,e.position)),ft(e.color));return l}return null}const gt=new WeakMap;function _t(e,t){let n=`${e.preset}|${e.fg}|${e.bg}`,r=gt.get(t);r||(r=new Map,gt.set(t,r));let i=r.get(n);if(i)return i;let a=rt(e.preset,e.fg,e.bg);if(!a)return ft(e.fg);let o=t.createPattern(a,`repeat`);return o?(r.set(n,o),o):ft(e.fg)}function vt(e,t,n){if(!t){e.strokeStyle=`transparent`,e.lineWidth=0,e.setLineDash([]),e.lineCap=`butt`,e.lineJoin=`miter`,e.miterLimit=10;return}e.strokeStyle=ft(t.color);let r=Math.max(.5,t.width*n);e.lineWidth=r;let i=t.customDash?t.customDash.flatMap(e=>[Math.max(0,e.dash)*r,Math.max(0,e.space)*r]):t.dashStyle?ut(t.dashStyle,r):[],a=t.lineCap??`butt`,o=i.some((e,t)=>t%2==0&&e===0);e.lineCap=a===`butt`&&o?`square`:a,e.lineJoin=t.lineJoin??`miter`,e.miterLimit=t.miterLimit??10,e.setLineDash(i)}const yt=[`4472C4`,`ED7D31`,`A9D18E`,`FF0000`,`70AD47`,`4BACC6`,`FFC000`,`9E480E`,`843C0C`,`636363`,`255E91`,`967300`],bt=[`5B9BD5`,`ED7D31`,`A5A5A5`,`FFC000`,`4472C4`,`70AD47`];function xt(e,t){return t?.color?`#${t.color}`:`#${yt[e%yt.length]}`}function St(e,t){let n=t.dataPointColors?.[e];return n?`#${n}`:`#${yt[e%yt.length]}`}function Ct(e,t){return t&&(t.startsWith(`+mj`)?e.themeMajorFontLatin??null:t.startsWith(`+mn`)?e.themeMinorFontLatin??null:t)}function wt(e,t,n){let r=n===`major`?e.themeMajorFontLatin:e.themeMinorFontLatin,i=Ct(e,t)??r;return i?`\"${i}\", Calibri, Arial, sans-serif`:`sans-serif`}function Tt(e){return e===`pie`||e===`doughnut`}function Et(e){return!!e.varyColors&&e.series.length===1&&typeof e.chartType==`string`&&/Bar/.test(e.chartType)}function Dt(e,t,n,r=!1){if(r||Tt(e)){let e=t[0];return e?St(n,e):`#${yt[n%yt.length]}`}return xt(n,t[n])}function Ot(e,t,n,r,i,a,o,s,c,l=`sans-serif`){e.save(),e.font=`${o?`bold `:``}${a}px ${l}`,e.fillStyle=s;let u=Qe(e,t,c);i===`cat`?(e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(u,n,r)):(e.translate(n,r),e.rotate(-Math.PI/2),e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(u,0,0)),e.restore()}function kt(e){return e?`#${e}`:`#555`}function At(e,t,n,r,i,a,o,s,c,l,u,d,f,p){if(t.valAxisTitle){let r=n+u+be(i)+p/2,a=s+l/2;Ot(e,t.valAxisTitle,r,a,`val`,p,t.valAxisTitleFontBold??!0,kt(t.valAxisTitleFontColor),l,wt(t,t.valAxisTitleFontFace,`major`))}if(t.catAxisTitle){let n=o+c/2,i=r+a-d-be(a)-f/2;Ot(e,t.catAxisTitle,n,i,`cat`,f,t.catAxisTitleFontBold??!0,kt(t.catAxisTitleFontColor),c,wt(t,t.catAxisTitleFontFace,`major`))}}function jt(e){return e&&(e===`line`||e===`stackedLine`||e===`stackedLinePct`||e===`radar`||e===`scatter`||e===`stock`)?`line`:`fill`}function Mt(e,t,n){if(e!==`scatter`)return!1;let r=t??`marker`;return(r===`line`||r===`lineMarker`||r===`lineNoMarker`||r===`smooth`||r===`smoothMarker`||r===`smoothNoMarker`)&&n.lineHidden!==!0}function Nt(e,t,n,r){let i=n[r];if(!i)return null;let a=i.seriesType??e,o=a===`line`||a===`stackedLine`||a===`stackedLinePct`,s=a===`scatter`;if(!o&&!s||s&&(t===`lineNoMarker`||t===`smoothNoMarker`))return null;let c=i.markerSymbol??`circle`;if(c===`none`||i.showMarker===!1)return null;let l=xt(r,i),u=i.markerFill??l.replace(/^#/,``),d=s?Mt(`scatter`,t,i):i.lineHidden!==!0;return{symbol:c,fill:u,line:i.markerLine??null,withLine:d}}function Pt(e,t,n,r,i,a,o,s=null,c=null,l=null,u=null,d=1,f=0){if(s&&!s.withLine){Mn(e,r+a/2,i+o/2,s.symbol,o*.58,s.fill,s.line,1);return}if(e.fillStyle=n,t===`line`){e.strokeStyle=n;let t=e.lineWidth;e.lineWidth=Math.max(1.5,o*.15),e.beginPath();let c=i+o/2;e.moveTo(r,c),e.lineTo(r+a,c),e.stroke(),e.lineWidth=t,s&&Mn(e,r+a/2,i+o/2,s.symbol,o*.58,s.fill,s.line,1)}else if(c&&(e.fillStyle=c.fillType===`solid`?c.color.startsWith(`#`)?c.color:`#${c.color}`:ht(c,e,r,i,a,o,f)??n),e.fillRect(r,i,a,o),l){let t=Pe(u,d);e.save(),e.strokeStyle=`#${l}`,e.lineWidth=t,e.strokeRect(r+t/2,i+t/2,Math.max(0,a-t),Math.max(0,o-t)),e.restore()}}function Ft(e,t,n,r=!1,i=[],a=[]){if(r||Tt(t)){let n=e[0],o=n?n.values.length:0,s=n?.categories??i;return Array.from({length:o},(n,i)=>({label:(s[i]??`Item ${i+1}`).toString(),color:Dt(t,e,i,r),marker:null,swatchStyle:jt(t),fillPaint:a[i]??null,outlineColor:null,outlineWidthEmu:null}))}return e.map((r,i)=>({label:r.name||`Series ${i+1}`,color:Dt(t,e,i),marker:Nt(t,n,e,i),swatchStyle:jt(r.seriesType??t),fillPaint:a[i]??r.fillPattern??null,outlineColor:r.lineHidden===!0?null:r.lineColor??null,outlineWidthEmu:r.lineWidthEmu??null}))}const It={fontFamily:`sans-serif`,color:`#333`,bold:!1,sizePx:null};function Lt(e,t,n,r,i,a,o=`vertical`,s,c=It,l,u=!1,d=[],f=1,p=[],m=0){let h=Ft(t,s,l,u,d,p),g=c.bold?`bold `:``;if(o===`horizontal`){let t=c.sizePx??Math.max(9,Math.min(12,a*.7));e.font=`${g}${t}px ${c.fontFamily}`,e.textBaseline=`middle`;let o=h.map(e=>e.swatchStyle===`line`?t*1.6:Math.min(10,t)),s=Math.max(1,h.length),l=i-Math.max(...o,0)-4,u=h.map(t=>Qe(e,t.label,l)),d=u.map((t,n)=>o[n]+4+e.measureText(t).width),p=n+(i-(d.reduce((e,t)=>e+t,0)+12*(s-1)))/2,_=r+a/2;for(let n=0;n<h.length;n++){let r=o[n];Pt(e,h[n].swatchStyle,h[n].color,p,_-t/2,r,t,h[n].marker,h[n].fillPaint,h[n].outlineColor,h[n].outlineWidthEmu,f,m),e.fillStyle=c.color,e.textAlign=`left`,e.fillText(u[n],p+r+4,_),p+=d[n]+12}return}let _=c.sizePx??Math.max(9,Math.min(12,a/(h.length+1)));e.font=`${g}${_}px ${c.fontFamily}`,e.textBaseline=`middle`;let v=_+4,y=h.map(e=>e.swatchStyle===`line`?_*1.6:Math.min(10,_)),b=i-Math.max(...y,0)-4,x=r+(a-v*h.length)/2;for(let t=0;t<h.length;t++){let r=y[t];Pt(e,h[t].swatchStyle,h[t].color,n,x,r,_,h[t].marker,h[t].fillPaint,h[t].outlineColor,h[t].outlineWidthEmu,f,m),e.fillStyle=c.color,e.textAlign=`left`,e.fillText(Qe(e,h[t].label,b),n+r+4,x+_/2),x+=v}}function Rt(e){let t=Ct(e,e.legendFontFace)??e.themeMinorFontLatin;return{fontFamily:t?`\"${t}\", Calibri, Arial, sans-serif`:`sans-serif`,color:e.legendFontColor?`#${e.legendFontColor}`:`#333`,bold:e.legendFontBold??!1,sizePx:e.legendFontSizeHpt==null?null:e.legendFontSizeHpt/100}}function zt(e,t,n,r,i,a,o,s,c,l,u,d,f,p=[],m=0){if(!n)return;let h=Rt(t),g=Et(t),_=n.side===`r`?{x:r+a-n.reserveW+4,y:c,w:n.reserveW-8,h:u}:n.side===`l`?{x:r+4,y:c,w:n.reserveW-8,h:u}:n.side===`t`?{x:s,y:i+d,w:l,h:n.reserveH}:{x:s,y:i+o-n.reserveH,w:l,h:n.reserveH},v=n.side===`t`||n.side===`b`?`horizontal`:`vertical`,y=t.legendManualLayout,b=y&&y.w>0&&y.h>0?we(y,{x:r,y:i,w:a,h:o},_):null;if(b){let n=b.w>=b.h?`horizontal`:`vertical`;Lt(e,t.series,b.x,b.y,b.w,b.h,n,t.chartType,h,t.scatterStyle,g,t.categories,f,p,m);return}Lt(e,t.series,_.x,_.y,_.w,_.h,v,t.chartType,h,t.scatterStyle,g,t.categories,f,p,m)}function Bt(e,t,n,r,i,a,o,s=!1){if(t===`none`||!t)return;let c=o?Math.max(4,o+2):4,l=e.strokeStyle,u=e.lineWidth;if(e.strokeStyle=a??`#888`,e.lineWidth=o??1,e.beginPath(),n===`val`){let n=r,a=i,o=s?1:-1,l=t===`out`||t===`cross`?o*c:0,u=t===`in`||t===`cross`?-o*c:0;e.moveTo(n+l,a),e.lineTo(n+u,a)}else{let n=r,a=i,o=t===`out`||t===`cross`?c:0,s=t===`in`||t===`cross`?-c:0;e.moveTo(a,n+o),e.lineTo(a,n+s)}e.stroke(),e.strokeStyle=l,e.lineWidth=u}function Vt(e,t,n,r,i,a){a&&a.explicit?(e.strokeStyle=a.color,e.lineWidth=a.width):(e.strokeStyle=i?`#aaa`:a?.color??`#e0e0e0`,e.lineWidth=i?1:a?.width??.5),e.beginPath(),e.moveTo(t,r),e.lineTo(t+n,r),e.stroke()}function Ht(e,t){let{color:n,width:r}=Ie(e.valAxisGridlineColor,e.valAxisGridlineWidthEmu,t);return{color:n,width:r,explicit:e.valAxisGridlineColor!=null}}function Ut(e){return e.catAxisMajorGridlines===!0}function Wt(e,t){return Ie(e.catAxisGridlineColor,e.catAxisGridlineWidthEmu,t)}function Gt(e,t){if(t<=0)return[];let n=Le(e),r=[],i=n?t:t-1;for(let e=0;e<=i;e++)r.push(n?e/t:t===1?.5:e/(t-1));return r}function Kt(e){return e.valAxisOrientation===`maxMin`}function qt(e){return e.catAxisOrientation===`maxMin`}function Jt(e){return e.valAxisMajorGridlines!==!1}function Yt(e,t){return e==null||!t?e:e*100}function Xt(e,t,n){return Ge(n?t/100:t,n?e.valAxisFormatCode??`0%`:e.valAxisFormatCode,e.date1904)}function Zt(e,t,n,r,i=!1){let a=Kt(e),o=e.valAxisLogBase,s=Yt(e.valMin,i)??(i?t:e.valMin),c=Yt(e.valMax,i)??(i?n:e.valMax),l=Yt(e.valAxisMajorUnit,i);if(o!=null&&isFinite(o)&&o>=2){let{min:e,max:r,lines:i}=je(t,n,o,s,c);return{min:e,max:r,step:i.length>1?i[1]-i[0]:r-e,majorLines:i,minorLines:[],frac:t=>Ae(t,e,r,{logBase:o,reversed:a})}}let{min:u,max:d,step:f}=ke(t,n,s,c,r,l),p=d-u||1,m=[],h=Math.round((d-u)/f);for(let e=0;e<=h;e++)m.push(u+e*f);let g=[],_=Yt(e.valAxisMinorUnit,i);if(e.valAxisMinorGridlines&&_!=null&&isFinite(_)&&_>0&&_<f)for(let e=u+_;e<d-1e-9;e+=_)Math.abs((e-u)/f-Math.round((e-u)/f))>1e-6&&g.push(e);return{min:u,max:d,step:f,majorLines:m,minorLines:g,frac:e=>a?1-(e-u)/p:(e-u)/p}}function Qt(e,t,n,r,i,a,o){let s=t.trendLines;if(!s||s.length===0)return;let c=[],l=[];for(let e=0;e<t.values.length;e++){let n=t.values[e],r=o?o[e]:e;n!=null&&r!=null&&(c.push(r),l.push(n))}if(c.length<2)return;let u=e.getLineDash?e.getLineDash():[];for(let t of s){let o=Me(c,l,t.trendlineType,{period:t.period,intercept:t.intercept});if(o.xs.length<2)continue;let s=o.xs,u=o.ys;if(t.trendlineType===`linear`){let e=(o.ys[1]-o.ys[0])/(o.xs[1]-o.xs[0]||1),n=t.backward??0,r=t.forward??0;s=[o.xs[0]-n,o.xs[1]+r],u=[o.ys[0]-e*n,o.ys[1]+e*r]}e.strokeStyle=t.lineColor?`#${t.lineColor}`:n,e.lineWidth=t.lineWidthEmu?Pe(t.lineWidthEmu,a):1.5,e.setLineDash([]),e.beginPath();for(let t=0;t<s.length;t++){let n=r(s[t]),a=i(u[t]);t===0?e.moveTo(n,a):e.lineTo(n,a)}e.stroke()}e.setLineDash(u)}function $t(e,t,n){return e?e/100*n:Math.max(8,t*.045)}function en(e){return 5/6*e}function tn(e){return e}function nn(e,t,n){let r=t.trim().split(/\\s+/).filter(Boolean);if(r.length===0)return[``];let i=[],a=``,o=t=>{let r=a?`${a} ${t}`:t;if(e.measureText(r).width<=n){a=r;return}if(a&&=(i.push(a),``),e.measureText(t).width<=n){a=t;return}let o=Array.from(t),s=0;for(;s<o.length;){let t=s+1,r=o.length,c=s+1;for(;t<=r;){let i=Math.floor((t+r)/2);e.measureText(o.slice(s,i).join(``)).width<=n?(c=i,t=i+1):r=i-1}let l=o.slice(s,c).join(``);s=c,s<o.length?i.push(l):a=l}};for(let e of r)o(e);return a&&i.push(a),i.length?i:[``]}function rn(e){return e.catAxisTickLabelPos!==`none`}function an(e){let t=e.catAxisLabelRotation;return t==null||t===0||Math.abs(t)>54e5?0:t/6e4*(Math.PI/180)}function on(e,t,n,r,i){if(i===0){e.fillText(t,n,r);return}e.save(),e.translate(n,r),e.rotate(i),e.textAlign=`right`,e.textBaseline=`middle`,e.fillText(t,0,0),e.restore()}function sn(e,t,n){if(!e)return null;let r=[];for(let e of t)if(e.useSecondaryAxis===!0)for(let t of e.values)t!=null&&r.push(t);let i=r.length?Math.min(...r):0,a=r.length?Math.max(...r):1,{min:o,max:s,step:c}=ke(Math.min(0,i),a,e.min,e.max,n,e.majorUnit),l=s-o||1;return{min:o,max:s,step:c,makeToY:(e,t)=>n=>e+t-(n-o)/l*t}}function cn(e,t,n,r,i,a,o,s,c,l,u,d,f,p){let m=i+o,{color:h,width:g}=Fe(t.lineColor,t.lineWidthEmu,l);if(t.lineHidden||(e.strokeStyle=h,e.lineWidth=g,e.beginPath(),e.moveTo(m,a),e.lineTo(m,a+s),e.stroke()),!t.hidden){e.font=`${u}px sans-serif`,e.fillStyle=t.fontColor?`#${t.fontColor}`:f,e.textAlign=`left`,e.textBaseline=`middle`;let i=n.max-n.min||1,a=Math.max(1,Math.round(i/n.step));for(let i=0;i<=a;i++){let a=n.min+i*n.step,o=r(a);Bt(e,t.majorTickMark,`val`,m,o,h,g,!0),e.fillText(Ge(a,t.formatCode??null,p),m+14,o)}}if(t.title){let n=t.titleFontSizeHpt?t.titleFontSizeHpt/100*l:Math.max(9,c*.05);e.save(),e.fillStyle=t.titleFontColor?`#${t.titleFontColor}`:t.fontColor?`#${t.fontColor}`:`#555`,e.font=`${t.titleFontBold?`bold `:``}${n}px sans-serif`,e.textAlign=`center`,e.textBaseline=`middle`,e.translate(i+o+d+n*.6,a+s/2),e.rotate(Math.PI/2),e.fillText(t.title,0,0),e.restore()}}function ln(e,t,n,r,i,a){if(!t.title)return;let o=Ct(t,t.titleFontFace),s=o?`\"${o}\", Calibri, Arial, sans-serif`:`Calibri, Arial, sans-serif`;e.font=`${t.titleFontBold??!0?`bold `:``}${a}px ${s}`,e.fillStyle=t.titleFontColor?`#${t.titleFontColor}`:`#333`,e.textAlign=`center`,e.textBaseline=`top`,e.fillText(t.title,n+i/2,r)}function un(e,t,n,r,i,a,o,s){if(!t.title)return;let c=t.titleManualLayout;if(c){let l=Ct(t,t.titleFontFace),u=l?`\"${l}\", Calibri, Arial, sans-serif`:`Calibri, Arial, sans-serif`;e.font=`${t.titleFontBold??!0?`bold `:``}${s}px ${u}`;let d=e.measureText(t.title).width,f={x:n+(i-d)/2,y:o,w:d,h:s},p=we({...c,w:void 0,h:void 0},{x:n,y:r,w:i,h:a},f);if(p){ln(e,t,p.x,p.y,p.w,s);return}}ln(e,t,n,o,i,s)}function dn(e){if(e.categories.length>0)return e.categories;let t=e.series[0];if(t?.categories&&t.categories.length>0)return t.categories;let n=0;for(let t of e.series)t.values.length>n&&(n=t.values.length);return n>0?Array.from({length:n},(e,t)=>String(t+1)):[]}function fn(e,t,n,r,i,a,o,s,c,l=!1){let u=s??`outEnd`;if(e.fillStyle=c?`#${c}`:`#333`,o===`vertical`){let o=n+a/2,s=l?r+i:r,c=l?r:r+i;u===`inBase`?(e.textAlign=`center`,e.textBaseline=l?`top`:`bottom`,e.fillText(t,o,l?c+2:c-2)):u===`inEnd`?(e.textAlign=`center`,e.textBaseline=l?`bottom`:`top`,e.fillText(t,o,l?s-2:s+2)):u===`ctr`?(e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(t,o,r+i/2)):(e.textAlign=`center`,e.textBaseline=l?`top`:`bottom`,e.fillText(t,o,l?s+1:s-1))}else{let o=r+a/2,s=l?n:n+i,c=l?n+i:n;u===`inBase`?(e.textAlign=l?`right`:`left`,e.textBaseline=`middle`,e.fillText(t,l?c-4:c+4,o)):u===`inEnd`?(e.textAlign=l?`left`:`right`,e.textBaseline=`middle`,e.fillText(t,l?s+4:s-4,o)):u===`ctr`?(e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(t,n+i/2,o)):(e.textAlign=l?`right`:`left`,e.textBaseline=`middle`,e.fillText(t,l?s-2:s+2,o))}}function pn(e,t,n,r){let{x:i,y:a,w:o,h:s}=n,c=t.chartType===`clusteredBarH`||t.chartType===`stackedBarH`||t.chartType===`stackedBarHPct`,l=t.chartType.startsWith(`stacked`),u=t.chartType===`stackedBarPct`||t.chartType===`stackedBarHPct`,d=t.series.filter(e=>e.seriesType!==`line`&&e.seriesType!==`scatter`),f=t.series.filter(e=>e.seriesType===`line`),p=t.series.filter(e=>e.seriesType===`scatter`),m=!c&&t.secondaryValAxis&&f.some(e=>e.useSecondaryAxis===!0)?t.secondaryValAxis:null,h=dn(t),g=h.length;if(g===0)return;let _=Et(t),v=Se(t,s,r),y=v.fontPx,b=v.topPad,x=v.bandH,S=$t(t.catAxisFontSizeHpt,s,r),C=$t(t.valAxisFontSizeHpt,s,r),w=_e(t,o,s,.22),{legRightW:T,legLeftW:E,legTopH:D,legBottomH:O}=ve(w),k=xe(t,o,s,r),A=k.catFontPx,j=k.valFontPx,M=k.catBandH,N=k.valBandW,P=x+D+C/2+2,ee=c?(t.valAxisHidden?s*.02:Ce(C))+M+O:Ce(S)+M+O,te=s-P-ee,F=c?o-((t.catAxisHidden?o*.03:o*.22)+N+E)-(T+o*.03):0,I=t.valAxisHidden?void 0:(c?F:te)/r,L=0,R=0;for(let e=0;e<g;e++){let t=0,n=0;for(let r of d){let i=r.values[e]??0;l?i>=0?t+=i:n+=i:(L=Math.max(L,i),R=Math.min(R,i))}l&&(L=Math.max(L,t),R=Math.min(R,n))}if(!u){for(let e of f)if(!(m&&e.useSecondaryAxis===!0))for(let t=0;t<g;t++){let n=e.values[t];n!=null&&(L=Math.max(L,n),R=Math.min(R,n))}}u&&(L=L>0?100:0,R=R<0?-100:0),t.valMax!=null&&(L=u?t.valMax*100:t.valMax),t.valMin!=null&&(R=u?t.valMin*100:t.valMin),L===0&&R===0&&(L=1);let z=Zt(t,R,L,I,u),{min:B,max:V,step:ne}=z,re=sn(m,f,te/r),ie=re?re.min:0,ae=re?re.max:1,oe=re?re.step:1,H=Math.max(8,Math.min(11,s/20)),se=t.valAxisFontSizeHpt==null?Math.max(8,Math.min(11,te/20)):C,ce=e.font,le=0;if(!c&&!t.valAxisHidden){e.font=`${se}px ${wt(t,t.valAxisFontFace,`minor`)}`;let n=0,r=Math.round((V-B)/ne);for(let i=0;i<=r;i++){let r=Xt(t,B+i*ne,u);n=Math.max(n,e.measureText(r).width)}le=n+16}let ue=0;if(c&&!t.catAxisHidden&&t.plotAreaManualLayout!=null&&t.plotAreaManualLayout.layoutTarget!==`inner`){e.font=`${S}px ${wt(t,t.catAxisFontFace,`minor`)}`;for(let n of h)ue=Math.max(ue,e.measureText(Ke(n,t.catAxisFormatCode,t.date1904)).width);ue+=t.catAxisFontSizeHpt==null?4:tn(S)}let de=m?.fontSizeHpt?m.fontSizeHpt/100*r:H,fe=0;if(m&&!m.hidden){e.font=`${de}px sans-serif`;let n=0,r=Math.round((ae-ie)/oe);for(let i=0;i<=r;i++)n=Math.max(n,e.measureText(Ge(ie+i*oe,m.formatCode??null,t.date1904)).width);fe=n+18}e.font=ce;let pe=m&&m.title?(m.titleFontSizeHpt?m.titleFontSizeHpt/100*r:Math.max(9,s*.05))+8:0,me={t:P,r:T+o*.03+fe+pe,b:ee,l:c?(t.catAxisHidden?o*.03:o*.22)+N+E:E+N+le},he=c?{t:0,r:t.valAxisHidden?0:se/2,b:t.valAxisHidden?0:se+M,l:t.catAxisHidden?0:ue+N}:{t:t.valAxisHidden?0:se/2,r:fe+pe,b:t.catAxisHidden?0:Ce(S)+M,l:t.valAxisHidden?0:le+N};un(e,t,i,a,o,s,a+b,y);let ge=q(t,i,a,o,s,r,{titleBand:v,legendSideReserveFrac:.22,pad:me,honorPlotAreaManualLayout:!0,manualOuterInsets:he}),{px0:U,py0:W,pw:G}=ge.plotRect,{ph:K}=ge.plotRect;if(G<=0||K<=0)return;let ye=an(t),be=[];if(!c&&!t.catAxisHidden&&rn(t)&&ye===0){let n=G/g,r=t.catAxisFontSizeHpt==null?Math.max(8,Math.min(11,n*.5)):S;e.save(),e.font=`${t.catAxisFontBold?`bold `:``}${r}px ${wt(t,t.catAxisFontFace,`minor`)}`;for(let r of h)be.push(nn(e,Ke(r,t.catAxisFormatCode,t.date1904),Math.max(1,n)));e.restore();let i=Math.max(1,...be.map(e=>e.length));!(t.plotAreaManualLayout?.layoutTarget===`inner`&&t.plotAreaManualLayout.w!=null&&t.plotAreaManualLayout.h!=null)&&i>1&&(K=Math.max(1,K-(i-1)*(r+2)))}t.plotAreaBg&&(e.fillStyle=`#${t.plotAreaBg}`,e.fillRect(U,W,G,K));let we=ae-ie||1,Te=V-B||1,Ee=e=>W+K-z.frac(e)*K,De=e=>U+z.frac(e)*G,Oe=Ee(0),je=De(0),Me=Ee,Ne=re?re.makeToY(W,K):Ee,Ie=Ht(t,r),Re=Math.round(Te/ne);e.textBaseline=`middle`;let ze=t.valAxisFontSizeHpt==null?Math.max(8,Math.min(11,K/20)):C;e.font=`${ze}px ${wt(t,t.valAxisFontFace,`minor`)}`;let Be=t.valAxisFontColor?`#${t.valAxisFontColor}`:`#555`;if(e.fillStyle=Be,!t.valAxisHidden){for(let t of z.minorLines)if(!c)Vt(e,U,G,Ee(t),!1,Ie);else{let n=De(t);e.strokeStyle=Ie.color,e.lineWidth=Ie.width,e.beginPath(),e.moveTo(n,W),e.lineTo(n,W+K),e.stroke()}let n=Jt(t),r=t.valAxisTickLabelPos!==`none`;for(let i of z.majorLines){let a=Math.abs(i)<ne*1e-9,o=Xt(t,i,u);if(c){let s=De(i);if(n&&(e.strokeStyle=Ie.explicit?Ie.color:a?`#aaa`:Ie.color,e.lineWidth=Ie.explicit?Ie.width:a?1:Ie.width,e.beginPath(),e.moveTo(s,W),e.lineTo(s,W+K),e.stroke()),r){e.textAlign=`center`;let n=t.valAxisFontSizeHpt==null?10:en(ze);e.fillText(o,s,W+K+n)}}else{let s=Ee(i);if(n&&Vt(e,U,G,s,a,Ie),r){e.textAlign=`right`;let n=t.valAxisFontSizeHpt==null?12:tn(ze);e.fillText(o,U-n,s)}}}}if(!t.catAxisHidden&&Ut(t)){let n=Wt(t,r);e.strokeStyle=n.color,e.lineWidth=n.width;for(let n of Gt(t,g)){if(e.beginPath(),c){let t=W+n*K;e.moveTo(U,t),e.lineTo(U+G,t)}else{let t=U+n*G;e.moveTo(t,W),e.lineTo(t,W+K)}e.stroke()}}let{color:Ve,width:He}=Fe(t.catAxisLineColor,t.catAxisLineWidthEmu,r),{color:Ue,width:We}=Fe(t.valAxisLineColor,t.valAxisLineWidthEmu,r),qe=(t,n,r,i,a,o)=>{e.strokeStyle=a,e.lineWidth=o,e.beginPath(),e.moveTo(t,n),e.lineTo(r,i),e.stroke()},Je=!t.catAxisHidden&&!t.catAxisLineHidden,Ye=!t.valAxisHidden&&!t.valAxisLineHidden&&t.valAxisLineColor!=null,Xe=()=>{if(c?(Je&&qe(U,W,U,W+K,Ve,He),Ye&&qe(U,W+K,U+G,W+K,Ue,We)):(Je&&qe(U,W+K,U+G,W+K,Ve,He),Ye&&qe(U,W,U,W+K,Ue,We)),!t.valAxisHidden&&t.valAxisMajorTickMark&&t.valAxisMajorTickMark!==`none`)for(let n=0;n<=Re;n++){let r=B+n*ne;c?Bt(e,t.valAxisMajorTickMark,`cat`,W+K,De(r),Ue,We):Bt(e,t.valAxisMajorTickMark,`val`,U,Ee(r),Ue,We)}if(!t.catAxisHidden&&t.catAxisMajorTickMark&&t.catAxisMajorTickMark!==`none`){let n=Le(t),r=n?g:g-1;for(let i=0;i<=r;i++){let r=n?i/g:g===1?.5:i/(g-1);c?Bt(e,t.catAxisMajorTickMark,`val`,U,W+r*K,Ve,He):Bt(e,t.catAxisMajorTickMark,`cat`,W+K,U+r*G,Ve,He)}}},Ze=c?K/g:G/g,$e=qt(t),et=e=>c?$e?e:g-1-e:$e?g-1-e:e,tt=l?1:Math.max(1,d.length),nt=l?0:t.barOverlap??0,rt=t.barGapWidth??150,it=Ze/(1+(tt-1)*(1-nt/100)+rt/100),at=l?0:it*(1-nt/100),ot=(Ze-(it+(tt-1)*at))/2;for(let n=0;n<g;n++){let i=0,a=0,o=0;if(u){for(let e of d)o+=Math.abs(e.values[n]??0);o===0&&(o=1)}for(let s=0;s<d.length;s++){let f=d[s],p=f.values[n]??0,m=u?p/o*100:p,h=m<0,g=f.dataPointColors?.[n],v=g?`#${g}`:_?St(n,f):xt(s,f);if(c){let o=s,c=l?W+et(n)*Ze+ot:W+et(n)*Ze+ot+o*at,d=l?De(h?a:i):je,p=De(l?(h?a:i)+m:m),g=In(Math.min(d,p),U,U+G),_=In(Math.max(d,p),U,U+G),y=Math.max(0,_-g);if(e.fillStyle=f.fillPattern?ht(f.fillPattern,e,g,c,y,it)??v:v,e.fillRect(g,c,y,it),f.lineColor&&!f.lineHidden&&y>0&&it>0){let t=Pe(f.lineWidthEmu,r);e.strokeStyle=`#${f.lineColor}`,e.lineWidth=t,e.strokeRect(g+t/2,c+t/2,Math.max(0,y-t),Math.max(0,it-t))}let b=f.seriesDataLabels;if((t.showDataLabels||b?.showVal===!0)&&m!==0){let n=b?.fontSizeHpt??t.dataLabelFontSizeHpt,i=n?n/100*r:Math.max(7,Math.min(11,it*.6));e.font=`${b?.fontBold??!0?`bold `:``}${i}px ${wt(t,t.dataLabelFontFace,`minor`)}`,fn(e,u?`${Math.round(m)}%`:Ge(m,b?.formatCode??t.dataLabelFormatCode??f.valFormatCode??null,t.date1904),g,c,y,it,`horizontal`,b?.position??t.dataLabelPosition??(l?`ctr`:null),b?.fontColor??f.labelColor??t.dataLabelFontColor??null,h)}}else{let o=l?U+et(n)*Ze+ot:U+et(n)*Ze+ot+s*at,c=l?Ee(h?a:i):Oe,d=Ee(l?(h?a:i)+m:m),p=In(Math.min(c,d),W,W+K),g=In(Math.max(c,d),W,W+K),_=Math.max(0,g-p);if(e.fillStyle=f.fillPattern?ht(f.fillPattern,e,o,p,it,_)??v:v,e.fillRect(o,p,it,_),f.lineColor&&!f.lineHidden&&it>0&&_>0){let t=Pe(f.lineWidthEmu,r);e.strokeStyle=`#${f.lineColor}`,e.lineWidth=t,e.strokeRect(o+t/2,p+t/2,Math.max(0,it-t),Math.max(0,_-t))}let y=f.seriesDataLabels;if((t.showDataLabels||y?.showVal===!0)&&m!==0){let n=y?.fontSizeHpt??t.dataLabelFontSizeHpt,i=n?n/100*r:Math.max(7,Math.min(11,it*.6));e.font=`${y?.fontBold??!0?`bold `:``}${i}px ${wt(t,t.dataLabelFontFace,`minor`)}`,fn(e,u?`${Math.round(m)}%`:Ge(m,y?.formatCode??t.dataLabelFormatCode??f.valFormatCode??null,t.date1904),o,p,_,it,`vertical`,y?.position??t.dataLabelPosition??(l?`ctr`:null),y?.fontColor??f.labelColor??t.dataLabelFontColor??null,h)}}l&&(h?a+=m:i+=m)}}if(!t.catAxisHidden&&rn(t)){e.fillStyle=t.catAxisFontColor?`#${t.catAxisFontColor}`:`#555`;let n=t.catAxisFontSizeHpt==null?Math.max(8,Math.min(11,Ze*.5)):S;e.font=`${n}px ${wt(t,t.catAxisFontFace,`minor`)}`;let r=Ze-4,a=U-4-(i+E+N),o=ye;for(let i=0;i<g;i++){let s=Ke((h[i]??``).toString(),t.catAxisFormatCode,t.date1904);if(c){let r=W+et(i)*Ze+Ze/2;e.textAlign=`right`,e.textBaseline=`middle`;let o=t.catAxisFontSizeHpt==null?4:tn(n);e.fillText(Qe(e,s,a),U-o,r)}else{let a=U+et(i)*Ze+Ze/2;e.textAlign=`center`,e.textBaseline=`top`;let c=o===0?r:K*.4,l=t.catAxisFontSizeHpt==null?3:en(n);o===0?(be[i]??[s]).forEach((t,r)=>{e.fillText(t,a,W+K+l+r*(n+2))}):on(e,Qe(e,s,c),a,W+K+l,o)}}}if(f.length>0&&!c)for(let t=0;t<f.length;t++){let n=f[t],i=xt(d.length+t,n),a=m&&n.useSecondaryAxis===!0?Ne:Me;e.strokeStyle=i,e.lineWidth=2,e.setLineDash([]),e.beginPath();let o=!1;for(let t=0;t<g;t++){let r=n.values[t];if(r==null){o=!1;continue}let i=U+et(t)*Ze+Ze/2,s=a(r);o?e.lineTo(i,s):(e.moveTo(i,s),o=!0)}if(e.stroke(),n.showMarker!==!1)for(let t=0;t<g;t++){let r=n.values[t];if(r==null)continue;let o=U+et(t)*Ze+Ze/2,s=a(r);e.fillStyle=i,e.beginPath(),e.arc(o,s,3,0,Math.PI*2),e.fill()}Qt(e,n,i,e=>U+et(e)*Ze+Ze/2,a,r)}if(p.length>0){let n=[],i=[];for(let e of p){let t=e.categories??[];for(let r=0;r<e.values.length;r++){let a=Tn(t,r,!1),o=e.values[r];a==null||o==null||(n.push(a),i.push(o))}}if(n.length&&i.length){let a=t.secondaryCatAxis,o=t.secondaryValAxis,s=ke(Math.min(...n),Math.max(...n),a?.min,a?.max,G/r,a?.majorUnit),c=ke(Math.min(...i),Math.max(...i),o?.min,o?.max,K/r,o?.majorUnit);An(e,t,p.map(e=>({series:e,index:t.series.indexOf(e)})),!1,e=>U+Ae(e,s.min,s.max)*G,e=>W+K-Ae(e,c.min,c.max)*K,G,K,r,!1,t.scatterStyle??`marker`)}}if(Xe(),m){let n=U+G,{color:i,width:a}=Fe(m.lineColor,m.lineWidthEmu,r);if(m.lineHidden||qe(n,W,n,W+K,i,a),!m.hidden){e.font=`${de}px sans-serif`,e.fillStyle=m.fontColor?`#${m.fontColor}`:Be,e.textAlign=`left`,e.textBaseline=`middle`;let r=Math.max(1,Math.round(we/oe));for(let o=0;o<=r;o++){let r=ie+o*oe,s=Ne(r);Bt(e,m.majorTickMark,`val`,n,s,i,a,!0),e.fillText(Ge(r,m.formatCode??null,t.date1904),n+14,s)}}if(m.title){let t=m.titleFontSizeHpt?m.titleFontSizeHpt/100*r:Math.max(9,s*.05);e.save(),e.fillStyle=m.titleFontColor?`#${m.titleFontColor}`:m.fontColor?`#${m.fontColor}`:`#555`,e.font=`${m.titleFontBold?`bold `:``}${t}px sans-serif`,e.textAlign=`center`,e.textBaseline=`middle`,e.translate(U+G+fe+t*.6,W+K/2),e.rotate(Math.PI/2),e.fillText(m.title,0,0),e.restore()}}zt(e,t,w,i,a,o,s,U,W,G,K,x+2,r),At(e,t,i,a,o,s,U,W,G,K,E,O,A,j)}function mn(e,t,n,r){let{x:i,y:a,w:o,h:s}=n,c=dn(t),l=c.length;if(l===0)return;let u=t.chartType===`stackedLine`||t.chartType===`stackedLinePct`,d=t.chartType===`stackedLinePct`,f=d?c.map((e,n)=>{let r=0;for(let e of t.series)r+=Math.abs(e.values[n]??0);return r||1}):null,p=t.dispBlanksAs??`gap`,m=(e,n)=>{if(!u)return t.series[e].values[n]??0;let r=0;for(let i=0;i<=e;i++)r+=t.series[i].values[n]??0;return d&&f?r/f[n]*100:r},h=!u&&t.secondaryValAxis&&t.series.some(e=>e.useSecondaryAxis===!0)?t.secondaryValAxis:null,g=e=>h!=null&&e.useSecondaryAxis===!0,_=1/0,v=-1/0;for(let e=0;e<l;e++)for(let n=0;n<t.series.length;n++){if(g(t.series[n])||!u&&t.series[n].values[e]==null)continue;let r=m(n,e);_=Math.min(_,r),v=Math.max(v,r)}isFinite(_)||(_=0,v=1);let y=t.valAxisLogBase!=null&&t.valAxisLogBase>=2;t.valMin==null?_>0&&!y&&(_=0):_=d?t.valMin*100:t.valMin,t.valMax==null?v<0&&(v=0):v=d?t.valMax*100:t.valMax,v===_&&(v=_+1);let b=Se(t,s,r),x=b.fontPx,S=b.topPad,C=b.bandH,w=_e(t,o,s,.22),{legRightW:T,legLeftW:E,legTopH:D,legBottomH:O}=ve(w),k=$t(t.catAxisFontSizeHpt,s,r),A=$t(t.valAxisFontSizeHpt,s,r),j=xe(t,o,s,r),M=j.catFontPx,N=j.valFontPx,P=j.catBandH,ee=j.valBandW,te=C+D+A/2+2,F=Ce(k)+P+O,I=s-te-F,L=sn(h,t.series,I/r),R=Math.max(8,Math.min(11,s/20)),z=h?.fontSizeHpt?h.fontSizeHpt/100*r:R,B=0;if(h&&L&&!h.hidden){let n=e.font;e.font=`${z}px sans-serif`;let r=0,i=Math.round((L.max-L.min)/L.step);for(let n=0;n<=i;n++)r=Math.max(r,e.measureText(Ge(L.min+n*L.step,h.formatCode??null,t.date1904)).width);B=r+18,e.font=n}let V=h&&h.title?(h.titleFontSizeHpt?h.titleFontSizeHpt/100*r:Math.max(9,s*.05))+8:0,ne=Zt(t,_,v,I/r,d),re=0;if(!t.valAxisHidden&&t.valAxisTickLabelPos!==`none`&&t.plotAreaManualLayout!=null&&t.plotAreaManualLayout.layoutTarget!==`inner`){let n=e.font;e.font=`${A}px ${wt(t,t.valAxisFontFace,`minor`)}`;for(let n of ne.majorLines)re=Math.max(re,e.measureText(Xt(t,n,d)).width);e.font=n}let ie=t.valAxisFontSizeHpt==null?6:tn(A),ae={t:te,r:T+o*.05+B+V,b:F,l:A*2.2+10+ee+E},oe={t:t.valAxisHidden?0:A/2,r:B+V,b:t.catAxisHidden?0:Ce(k)+P,l:t.valAxisHidden?0:re+ie+ee};un(e,t,i,a,o,s,a+S,x);let{plotRect:{px0:H,py0:se,pw:ce,ph:le}}=q(t,i,a,o,s,r,{titleBand:b,legendSideReserveFrac:.22,pad:ae,honorPlotAreaManualLayout:!0,manualOuterInsets:oe});if(ce<=0||le<=0)return;t.plotAreaBg&&(e.fillStyle=`#${t.plotAreaBg}`,e.fillRect(H,se,ce,le));let ue=Zt(t,_,v,le/r,d);if(ue.max-ue.min===0)return;let de=e=>se+le-ue.frac(e)*le,fe=L?L.makeToY(se,le):de,pe=e=>g(e)?fe:de,me=Fe(t.catAxisLineColor,t.catAxisLineWidthEmu,r),he=Fe(t.valAxisLineColor,t.valAxisLineWidthEmu,r),ge=t.catAxisLineColor==null?void 0:me.color,U=t.catAxisLineWidthEmu==null?void 0:me.width,W=t.valAxisLineColor==null?void 0:he.color,G=t.valAxisLineWidthEmu==null?void 0:he.width,K=Le(t),ye=qt(t),be=K?e=>H+((ye?l-1-e:e)+.5)/l*ce:e=>{let t=ye?l-1-e:e;return H+(l===1?ce/2:t/(l-1)*ce)};if(!t.valAxisHidden){e.font=`${A}px ${wt(t,t.valAxisFontFace,`minor`)}`,e.textBaseline=`middle`;let n=Ht(t,r);for(let t of ue.minorLines)Vt(e,H,ce,de(t),!1,n);let i=Jt(t),a=t.valAxisTickLabelPos!==`none`;for(let r of ue.majorLines){let o=de(r);if(i&&Vt(e,H,ce,o,r===0,n),Bt(e,t.valAxisMajorTickMark,`val`,H,o,W,G),a){e.fillStyle=t.valAxisFontColor?`#${t.valAxisFontColor}`:`#555`,e.textAlign=`right`;let n=t.valAxisFontSizeHpt==null?6:tn(A);e.fillText(Xt(t,r,d),H-n,o)}}}if(!t.catAxisHidden&&Ut(t)){let n=Wt(t,r);e.strokeStyle=n.color,e.lineWidth=n.width;for(let n of Gt(t,l)){let t=H+n*ce;e.beginPath(),e.moveTo(t,se),e.lineTo(t,se+le),e.stroke()}}!t.catAxisHidden&&!t.catAxisLineHidden&&(e.strokeStyle=me.color,e.lineWidth=me.width,e.beginPath(),e.moveTo(H,se+le),e.lineTo(H+ce,se+le),e.stroke()),!t.valAxisHidden&&!t.valAxisLineHidden&&(e.strokeStyle=he.color,e.lineWidth=he.width,e.beginPath(),e.moveTo(H,se),e.lineTo(H,se+le),e.stroke());let we=Math.max(1,2.25*r),Te=Math.max(2,2.5*r),Ee=$t(t.dataLabelFontSizeHpt,s,r);for(let n=0;n<t.series.length;n++){let i=t.series[n],a=xt(n,i),o=pe(i);e.strokeStyle=a,e.lineWidth=we,e.setLineDash([]),e.beginPath();let s=i.smooth===!0,d=[],f=()=>{d.length!==0&&(e.moveTo(d[0].x,d[0].y),Ln(e,d,s),d=[])};for(let e=0;e<l;e++){if(!u&&i.values[e]==null){if(p===`gap`){f();continue}if(p===`span`)continue}d.push({x:be(e),y:o(m(n,e))})}f(),e.stroke();let h=e=>m(n,e);for(let t of i.errBars??[])Bn(e,i,t,l,be,o,h,a);e.fillStyle=a;let g=i.showMarker!==!1,_=zn(i),v=Vn(e,i,c,l,be,o,h,le,r,t.date1904??!1,u||p===`zero`,wt(t,t.dataLabelFontFace,`minor`),t.dataLabelPosition??`r`);v&&(e.fillStyle=a);for(let s=0;s<l;s++){if(!u&&i.values[s]==null&&p!==`zero`)continue;let c=m(n,s);if(g)if(_){let t=(i.dataPointOverrides??[]).find(e=>e.idx===s),n=t?.markerSymbol??i.markerSymbol??`circle`;if(n!==`none`){let l=t?.markerSize??i.markerSize??5,u=t?.markerFill??t?.color??i.markerFill??a,d=t?.markerLine??i.markerLine??null;Mn(e,be(s),o(c),n,l,u,d,r)}}else e.beginPath(),e.arc(be(s),o(c),Te,0,Math.PI*2),e.fill();t.showDataLabels&&!v&&(Fn(e,be(s),o(c),We(c),t.dataLabelPosition??`r`,Ee,void 0,!1,wt(t,t.dataLabelFontFace,`minor`),g?Te+1:2),e.fillStyle=a)}Qt(e,i,a,be,o,r)}if(!t.catAxisHidden){let n=t.catAxisFontColor?`#${t.catAxisFontColor}`:`#555`;e.fillStyle=n,e.textAlign=`center`,e.textBaseline=`top`,e.font=`${k}px ${wt(t,t.catAxisFontFace,`minor`)}`;let r=Math.max(1,Math.floor(t.catAxisTickMarkSkip??1));for(let n=0;n<l;n+=r)Bt(e,t.catAxisMajorTickMark,`cat`,se+le,be(n),ge,U);let i=rn(t),a=Math.max(1,Math.floor(t.catAxisTickLabelSkip??1)),o=an(t);for(let r=0;r<l;r+=a){let a=be(r);if(!i)continue;e.fillStyle=n;let s=Ke((c[r]??``).toString(),t.catAxisFormatCode,t.date1904);if(!s)continue;let l=t.catAxisFontSizeHpt==null?5:en(k);on(e,s,a,se+le+l,o)}}if(h&&L){let n=t.valAxisFontColor?`#${t.valAxisFontColor}`:`#555`;cn(e,h,L,fe,H,se,ce,le,s,r,z,B,n,t.date1904)}zt(e,t,w,i,a,o,s,H,se,ce,le,C+2,r),At(e,t,i,a,o,s,H,se,ce,le,E,O,M,N)}function hn(e,t,n,r){let{x:i,y:a,w:o,h:s}=n,c=dn(t),l=c.length;if(l===0)return;let u=t.series,d=u.length>=4,f=d?0:-1,p=+!!d,m=d?2:1,h=d?3:2,g=u[p],_=u[m],v=u[h],y=f>=0?u[f]:void 0,b=Se(t,s,r),x=b.fontPx,S=b.topPad,C=b.bandH,w=_e(t,o,s,.22),{legRightW:T,legLeftW:E,legBottomH:D,legTopH:O}=ve(w),k=$t(t.catAxisFontSizeHpt,s,r),A=$t(t.valAxisFontSizeHpt,s,r),j=xe(t,o,s,r),M=j.catFontPx,N=j.valFontPx,P=j.catBandH,ee=j.valBandW,te=C+O+A/2+2,F=Ce(k)+P+D,I={t:te,r:T+o*.05,b:F,l:A*2.2+10+ee+E};un(e,t,i,a,o,s,a+S,x);let{plotRect:{px0:L,py0:R,pw:z,ph:B}}=q(t,i,a,o,s,r,{titleBand:b,legendSideReserveFrac:.22,pad:I,honorPlotAreaManualLayout:!0});if(z<=0||B<=0)return;t.plotAreaBg&&(e.fillStyle=`#${t.plotAreaBg}`,e.fillRect(L,R,z,B));let V=1/0,ne=-1/0;for(let e of u)for(let t=0;t<l;t++){let n=e.values[t];n!=null&&(V=Math.min(V,n),ne=Math.max(ne,n))}isFinite(V)||(V=0,ne=1),t.valMin==null?V>0&&(V=0):V=t.valMin,t.valMax==null?ne<0&&(ne=0):ne=t.valMax,ne===V&&(ne=V+1);let re=Zt(t,V,ne,B/r);if(re.max-re.min===0)return;let ie=e=>R+B-re.frac(e)*B,ae=Le(t),oe=qt(t),H=ae?e=>L+((oe?l-1-e:e)+.5)/l*z:e=>{let t=oe?l-1-e:e;return L+(l===1?z/2:t/(l-1)*z)};if(!t.valAxisHidden){e.font=`${A}px ${wt(t,t.valAxisFontFace,`minor`)}`,e.textBaseline=`middle`;let n=Ht(t,r);for(let t of re.minorLines)Vt(e,L,z,ie(t),!1,n);let i=Jt(t),a=t.valAxisTickLabelPos!==`none`;for(let r of re.majorLines){let o=ie(r);i&&Vt(e,L,z,o,r===0,n),Bt(e,t.valAxisMajorTickMark,`val`,L,o),a&&(e.fillStyle=t.valAxisFontColor?`#${t.valAxisFontColor}`:`#555`,e.textAlign=`right`,e.fillText(Ge(r,t.valAxisFormatCode,t.date1904),L-6,o))}}if(e.strokeStyle=`#aaa`,e.lineWidth=1,!t.catAxisHidden&&!t.catAxisLineHidden&&(e.beginPath(),e.moveTo(L,R+B),e.lineTo(L+z,R+B),e.stroke()),!t.valAxisHidden&&!t.valAxisLineHidden&&(e.beginPath(),e.moveTo(L,R),e.lineTo(L,R+B),e.stroke()),(t.stockHiLowLines??!0)&&g!=null&&_!=null&&g&&_){e.strokeStyle=t.stockHiLowLineColor?`#${t.stockHiLowLineColor}`:`#595959`,e.lineWidth=Math.max(1,.75*r),e.setLineDash([]);for(let t=0;t<l;t++){let n=g.values[t],r=_.values[t];if(n==null||r==null)continue;let i=H(t);e.beginPath(),e.moveTo(i,ie(n)),e.lineTo(i,ie(r)),e.stroke()}}let se=(t,n,i)=>{if(!t)return;let a=xt(n,t),o=t.markerSymbol??null,s=o!=null&&o!==`none`&&zn(t),c=Math.max(3,z/l*.22);for(let n=0;n<l;n++){let l=t.values[n];if(l==null)continue;let u=H(n),d=ie(l);if(s){Mn(e,u,d,o,t.markerSize??3,t.markerFill??a,t.markerLine??null,r);continue}e.strokeStyle=a,e.lineWidth=Math.max(1,.75*r),e.beginPath();let f=i===`right`?u:i===`left`?u-c:u-c/2,p=i===`right`?u+c:i===`left`?u:u+c/2;e.moveTo(f,d),e.lineTo(p,d),e.stroke()}};if(se(y,f,`left`),se(v,h,`right`),u.length<3)for(let e=0;e<u.length;e++)se(u[e],e,`both`);if(!t.catAxisHidden){let n=Math.max(1,Math.ceil(l/8)),r=t.catAxisFontColor?`#${t.catAxisFontColor}`:`#555`;e.fillStyle=r,e.textAlign=`center`,e.textBaseline=`top`,e.font=`${k}px ${wt(t,t.catAxisFontFace,`minor`)}`;let i=z/l*n-4,a=rn(t),o=an(t);for(let s=0;s<l;s+=n){let n=H(s);Bt(e,t.catAxisMajorTickMark,`cat`,R+B,n),a&&(e.fillStyle=r,on(e,Qe(e,Ke((c[s]??``).toString(),t.catAxisFormatCode,t.date1904),o===0?i:B*.4),n,R+B+5,o))}}zt(e,t,w,i,a,o,s,L,R,z,B,C+2,r),At(e,t,i,a,o,s,L,R,z,B,E,D,M,N)}function gn(e,t,n,r){let{x:i,y:a,w:o,h:s}=n,c=dn(t),l=c.length;if(l===0)return;let u=t.series.map((e,t)=>({series:e,chartIndex:t})).filter(({series:e})=>e.seriesType==null||e.seriesType===`area`),d=t.series.map((e,t)=>({series:e,chartIndex:t})).filter(({series:e})=>e.seriesType===`line`);if(u.length===0&&d.length===0)return;let f=t.chartType===`stackedArea`||t.chartType===`stackedAreaPct`,p=t.chartType===`stackedAreaPct`,m=p?c.map((e,t)=>{let n=0;for(let{series:e}of u)n+=Math.abs(e.values[t]??0);return n||1}):null,h=(e,t)=>{let n=u[e].series.values[t]??0;return p&&m?n/m[t]*100:n},g=!f&&t.secondaryValAxis&&t.series.some(e=>e.useSecondaryAxis===!0)?t.secondaryValAxis:null,_=e=>g!=null&&e.useSecondaryAxis===!0,v=Se(t,s,r),y=v.fontPx,b=v.topPad,x=v.bandH,S=$t(t.catAxisFontSizeHpt,s,r),C=$t(t.valAxisFontSizeHpt,s,r),w=_e(t,o,s,.22),{legRightW:T,legLeftW:E,legTopH:D,legBottomH:O}=ve(w),k=xe(t,o,s,r),A=k.catFontPx,j=k.valFontPx,M=k.catBandH,N=k.valBandW,P=x+D+C/2+2,ee=Ce(S)+M+O,te=s-P-ee,F=sn(g,t.series,te/r),I=Math.max(8,Math.min(11,s/20)),L=g?.fontSizeHpt?g.fontSizeHpt/100*r:I,R=0;if(g&&F&&!g.hidden){let n=e.font;e.font=`${L}px sans-serif`;let r=0,i=Math.round((F.max-F.min)/F.step);for(let n=0;n<=i;n++)r=Math.max(r,e.measureText(Ge(F.min+n*F.step,g.formatCode??null,t.date1904)).width);R=r+18,e.font=n}let z=g&&g.title?(g.titleFontSizeHpt?g.titleFontSizeHpt/100*r:Math.max(9,s*.05))+8:0,B=(()=>{let e=0;for(let n=0;n<l;n++){if(f){let t=0;for(let e=0;e<u.length;e++)t+=h(e,n);e=Math.max(e,t)}else for(let r of t.series)_(r)||(e=Math.max(e,r.values[n]??0));for(let{series:t}of d)_(t)||(e=Math.max(e,t.values[n]??0))}return p&&(e=e>0?100:0),t.valMax!=null&&(e=p?t.valMax*100:t.valMax),e===0?1:e})(),V=p?B:t.valMax,ne=Yt(t.valAxisMajorUnit,p),re=ke(0,B,void 0,V,te/r,ne),ie=t.valAxisFontSizeHpt==null?Math.max(8,Math.min(11,te/20)):C,ae=0;if(!t.valAxisHidden&&t.plotAreaManualLayout!=null&&t.plotAreaManualLayout.layoutTarget!==`inner`){let n=e.font;e.font=`${ie}px ${wt(t,t.valAxisFontFace,`minor`)}`;let r=Math.round(re.max/re.step);for(let n=0;n<=r;n++)ae=Math.max(ae,e.measureText(Xt(t,n*re.step,p)).width);e.font=n}let oe=t.valAxisFontSizeHpt==null?6:tn(ie),H={t:t.valAxisHidden?0:ie/2,r:R+z,b:t.catAxisHidden?0:S+(t.catAxisFontSizeHpt==null?3:en(S))+M,l:t.valAxisHidden?0:ae+oe+N},se={t:P,r:T+o*.05+R+z,b:ee,l:o*.12+N+E};un(e,t,i,a,o,s,a+b,y);let{plotRect:{px0:ce,py0:le,pw:ue,ph:de}}=q(t,i,a,o,s,r,{titleBand:v,legendSideReserveFrac:.22,pad:se,honorPlotAreaManualLayout:!0,manualOuterInsets:H});if(ue<=0||de<=0)return;t.plotAreaBg&&(e.fillStyle=`#${t.plotAreaBg}`,e.fillRect(ce,le,ue,de));let{max:fe,step:pe}=ke(0,B,void 0,V,de/r,ne),me=Le(t),he=me?e=>ce+(e+.5)/l*ue:e=>ce+(l===1?ue/2:e/(l-1)*ue),ge=e=>le+de-e/fe*de,U=F?F.makeToY(le,de):ge,W=e=>_(e)?U:ge,{color:G,width:K}=Fe(t.catAxisLineColor,t.catAxisLineWidthEmu,r),{color:ye,width:be}=Fe(t.valAxisLineColor,t.valAxisLineWidthEmu,r);if(!t.valAxisHidden){let n=Ht(t,r),i=Yt(t.valAxisMinorUnit,p);if(t.valAxisMinorGridlines&&i!=null&&isFinite(i)&&i>0&&i<pe)for(let t=i;t<fe-1e-9;t+=i)Math.abs(t/pe-Math.round(t/pe))>1e-6&&Vt(e,ce,ue,ge(t),!1,n);if(Jt(t)){let t=Math.round(fe/pe);for(let r=0;r<=t;r++)Vt(e,ce,ue,ge(r*pe),r===0,n)}}if(!t.catAxisHidden&&Ut(t)){let n=Wt(t,r);e.strokeStyle=n.color,e.lineWidth=n.width;for(let n of Gt(t,l)){let t=ce+n*ue;e.beginPath(),e.moveTo(t,le),e.lineTo(t,le+de),e.stroke()}}let we=f?Array(l).fill(0):null,Te=f?u.map((e,t)=>t):u.map((e,t)=>u.length-1-t);for(let t of Te){let{series:n,chartIndex:i}=u[t],a=xt(i,n),o=le+de,s=W(n),c=n.smooth===!0;if(e.beginPath(),f&&we){let n=[];for(let e=0;e<l;e++)n.push({x:he(e),y:ge(h(t,e)+we[e])});e.moveTo(n[0].x,n[0].y),Ln(e,n,c);for(let t=l-1;t>=0;t--)e.lineTo(he(t),ge(we[t]));for(let e=0;e<l;e++)we[e]+=h(t,e)}else{let t=[];for(let e=0;e<l;e++)t.push({x:he(e),y:s(n.values[e]??0)});e.moveTo(he(0),o),e.lineTo(t[0].x,t[0].y),Ln(e,t,c),e.lineTo(he(l-1),o)}e.closePath(),e.fillStyle=a,e.fill(),n.lineHidden!==!0&&(e.strokeStyle=n.lineColor?`#${n.lineColor}`:a,e.lineWidth=n.lineWidthEmu?Pe(n.lineWidthEmu,r):1.5,e.setLineDash([]),e.stroke())}{let n=Math.max(2,2.5*r),i=(e,t)=>{if(f){let n=0;for(let r=0;r<=e;r++)n+=h(r,t);return n}return u[e].series.values[t]??0};for(let a=0;a<u.length;a++){let{series:o,chartIndex:s}=u[a],d=xt(s,o),f=W(o),p=e=>i(a,e);for(let t of o.errBars??[])Bn(e,o,t,l,he,f,p,d);if(o.showMarker===!0||zn(o))for(let t=0;t<l;t++){if(o.values[t]==null)continue;let i=(o.dataPointOverrides??[]).find(e=>e.idx===t),a=i?.markerSymbol??o.markerSymbol??`circle`;if(a===`none`)continue;let s=he(t),c=f(p(t));zn(o)?Mn(e,s,c,a,i?.markerSize??o.markerSize??5,i?.markerFill??i?.color??o.markerFill??d,i?.markerLine??o.markerLine??null,r):(e.fillStyle=d,e.beginPath(),e.arc(s,c,n,0,Math.PI*2),e.fill())}Vn(e,o,c,l,he,f,p,de,r,t.date1904??!1,!0,wt(t,t.dataLabelFontFace,`minor`),t.dataLabelPosition??`ctr`)}}for(let{series:n,chartIndex:i}of d){let a=xt(i,n),o=n.lineColor?`#${n.lineColor}`:a,s=W(n);if(n.lineHidden!==!0){e.strokeStyle=o,e.lineWidth=n.lineWidthEmu?Pe(n.lineWidthEmu,r):Math.max(1,2.25*r),e.setLineDash([]),e.beginPath();let i=[],a=()=>{i.length!==0&&(e.moveTo(i[0].x,i[0].y),Ln(e,i,n.smooth===!0),i=[])};for(let e=0;e<l;e++){let r=n.values[e];r==null&&((t.dispBlanksAs??`gap`)===`gap`&&a(),(t.dispBlanksAs??`gap`)!==`zero`)||i.push({x:he(e),y:s(r??0)})}a(),e.stroke()}let u=e=>n.values[e]??0;for(let t of n.errBars??[])Bn(e,n,t,l,he,s,u,o);if(n.showMarker===!0||zn(n))for(let t=0;t<l;t++){let i=n.values[t];if(i==null)continue;let a=(n.dataPointOverrides??[]).find(e=>e.idx===t),c=a?.markerSymbol??n.markerSymbol??`circle`;c!==`none`&&Mn(e,he(t),s(i),c,a?.markerSize??n.markerSize??5,a?.markerFill??a?.color??n.markerFill??o,a?.markerLine??n.markerLine??null,r)}Vn(e,n,c,l,he,s,u,de,r,t.date1904??!1,!1,wt(t,t.dataLabelFontFace,`minor`),t.dataLabelPosition??`r`),Qt(e,n,o,he,s,r)}if(!t.valAxisHidden){let n=t.valAxisFontSizeHpt==null?Math.max(8,Math.min(11,de/20)):C;e.font=`${n}px ${wt(t,t.valAxisFontFace,`minor`)}`,e.textBaseline=`middle`;let r=Math.round(fe/pe);for(let i=0;i<=r;i++){let r=i*pe,a=ge(r);Bt(e,t.valAxisMajorTickMark,`val`,ce,a,ye,be),e.fillStyle=t.valAxisFontColor?`#${t.valAxisFontColor}`:`#555`,e.textAlign=`right`;let o=t.valAxisFontSizeHpt==null?6:tn(n);e.fillText(Xt(t,r,p),ce-o,a)}}if(!t.catAxisHidden&&!t.catAxisLineHidden&&(e.strokeStyle=G,e.lineWidth=K,e.beginPath(),e.moveTo(ce,le+de),e.lineTo(ce+ue,le+de),e.stroke()),!t.valAxisHidden&&!t.valAxisLineHidden&&t.valAxisLineColor!=null&&(e.strokeStyle=ye,e.lineWidth=be,e.beginPath(),e.moveTo(ce,le),e.lineTo(ce,le+de),e.stroke()),!t.catAxisHidden&&t.catAxisMajorTickMark&&t.catAxisMajorTickMark!==`none`){let n=Math.max(1,Math.floor(t.catAxisTickMarkSkip??1));if(me)for(let r=0;r<=l;r+=n)Bt(e,t.catAxisMajorTickMark,`cat`,le+de,ce+r/l*ue,G,K);else for(let r=0;r<l;r+=n)Bt(e,t.catAxisMajorTickMark,`cat`,le+de,he(r),G,K)}if(!t.catAxisHidden){let n=t.catAxisFontSizeHpt==null?Math.max(8,Math.min(11,ue/l*.8)):S;e.fillStyle=t.catAxisFontColor?`#${t.catAxisFontColor}`:`#555`,e.textAlign=`center`,e.textBaseline=`top`,e.font=`${n}px ${wt(t,t.catAxisFontFace,`minor`)}`;let r=c.map(e=>Ke((e??``).toString(),t.catAxisFormatCode,t.date1904)),i=Math.max(1,Math.floor(t.catAxisTickLabelSkip??1));for(let a=0;a<l;a+=i){let i=r[a]??``;if(!i)continue;let o=t.catAxisFontSizeHpt==null?3:en(n);e.fillText(i,he(a),le+de+o)}}if(g&&F){let n=t.valAxisFontColor?`#${t.valAxisFontColor}`:`#555`;cn(e,g,F,U,ce,le,ue,de,s,r,L,R,n,t.date1904)}zt(e,t,w,i,a,o,s,ce,le,ue,de,x+2,r),At(e,t,i,a,o,s,ce,le,ue,de,E,O,A,j)}function _n(e,t,n,r,i){let{x:a,y:o,w:s,h:c}=n,l=t.series[0];if(!l)return;let u=l.categories&&l.categories.length>0?l.categories:t.categories,d=l.values.map(e=>Math.abs(e??0)),f=d.reduce((e,t)=>e+t,0);if(f===0)return;let p=q(t,a,o,s,c,i,{titleTopPadFrac:.035,titleBottomPadFrac:.035,legendSideReserveFrac:.28,radialGapFrac:.02,honorPlotAreaManualLayout:!0}),m=p.title.fontPx,h=p.title.bandH;un(e,t,a,o,s,c,o+p.title.topPad,m);let g=p.legend,{px0:_,py0:v,pw:y,ph:b}=p.plotRect,x=p.center.cx,S=p.center.cy,C=Math.min(y,b)*.42,w=-Math.PI/2+(t.firstSliceAngle??0)*Math.PI/180,T=r?Math.max(1,Math.min(90,t.holeSize??50)):0,E=r?t.series:[l],D=T/100*C,O=(C-D)/E.length,k=(e,t)=>{let n=(e.dataPointOverrides??[]).find(e=>e.idx===t)?.explosion??0;return n>0?n/100*C:0},A=l.seriesDataLabels,j=A!=null&&(A.showVal||A.showCatName||A.showSerName||A.showPercent),M=t.showDataLabels&&!j,N=wt(t,t.dataLabelFontFace,`minor`);for(let t=0;t<E.length;t++){let n=E[t],i=n.values.map(e=>Math.abs(e??0)),a=i.reduce((e,t)=>e+t,0);if(a===0)continue;let o=C-t*O,s=o-O,c=w;for(let l=0;l<i.length;l++){let u=i[l]/a*Math.PI*2,d=St(l,n),f=c+u/2,p=k(n,l),m=p>0?Math.cos(f)*p:0,h=p>0?Math.sin(f)*p:0;if(e.beginPath(),s>.01?(e.arc(x+m,S+h,o,c,c+u),e.arc(x+m,S+h,s,c+u,c,!0)):(e.moveTo(x+m,S+h),e.arc(x+m,S+h,o,c,c+u)),e.closePath(),e.fillStyle=d,e.fill(),e.strokeStyle=`#fff`,e.lineWidth=1,e.stroke(),M&&t===0&&u>.15){let t=C*(r?.75:.6),n=x+m+Math.cos(f)*t,o=S+h+Math.sin(f)*t,s=Math.round(i[l]/a*100);e.font=`bold ${Math.max(8,C*.1)}px ${N}`,e.fillStyle=`#fff`,e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(`${s}%`,n,o)}c+=u}}if(j&&vn(e,t,A,l,u,d,f,x,S,C,D,w,N,i,_,v,y,b,a,o,s,c),g){let n=[{...l,categories:u}];zt(e,{...t,series:n},g,a,o,s,c,_,v,y,b,h+2,i)}}function vn(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x){if(n.labelBox){Cn(e,t,n,r,i,a,o,s,c,l,d,f,p,m,g,h,_);return}let S=r.dataLabelOverrides??[],C=[],w=d;for(let d=0;d<a.length;d++){let m=a[d]/o*Math.PI*2,h=w+m/2;w+=m;let g=S.find(e=>e.idx===d);if(g?.deleted)continue;let _=g?.showCatName??n.showCatName,v=g?.showSerName??n.showSerName,y=g?.showVal??n.showVal,b=g?.showPercent??n.showPercent,x;if(g&&g.text)x=g.text;else{let e=[];_&&e.push((i[d]??``).toString()),v&&e.push(r.name),y&&e.push(Ge(a[d],n.formatCode??r.valFormatCode??null,t.date1904??!1)),b&&e.push(`${Math.round(a[d]/o*100)}%`),x=e.filter(Boolean).join(n.separator??` `)}if(!x)continue;let T=(g?.position??n.position??`bestFit`)===`outEnd`,E=g?.fontSizeHpt??n.fontSizeHpt,D=E?E/100:Math.max(8,l*.1),O=g?.fontBold??n.fontBold,k=g?.fontColor??n.fontColor,A=x.split(/\\r?\\n/);if(T){e.font=`${O?`bold `:``}${D}px ${f}`;let t=A.reduce((t,n)=>Math.max(t,e.measureText(n).width),0),n=D*1.15,r=D+Math.max(0,A.length-1)*n;C.push(xn(A,h,s,c,l,t,r,n,D,O??!1,k?`#${k}`:`#333`,p));continue}let j=u>.01?(u+l)/2:l*.88,M=s+Math.cos(h)*j,N=c+Math.sin(h)*j;e.font=`${O?`bold `:``}${D}px ${f}`,e.fillStyle=k?`#${k}`:`#fff`,e.textAlign=`center`,e.textBaseline=`middle`;let P=D*1.15,ee=N-(A.length-1)*P/2;A.forEach((t,n)=>e.fillText(t,M,ee+n*P))}Sn(e,n,C,s,c,l,f,p,v,y,b,x)}function yn(e,t,n,r,i,a){let o=Math.max(Math.abs(n-e)-i,0),s=Math.max(Math.abs(r-t)-a,0);return Math.hypot(o,s)}function bn(e,t,n,r,i){let a=Math.cos(e),o=Math.sin(e),s=t+i,c=0,l=s+Math.hypot(n,r);for(let e=0;e<32;e++){let e=(c+l)/2;yn(0,0,a*e,o*e,n,r)>=s?l=e:c=e}return l}function xn(e,t,n,r,i,a,o,s,c,l,u,d){let f=d,p=bn(t,i,a/2,o/2,f),m=n+Math.cos(t)*p,h=r+Math.sin(t)*p;return{lines:e,rimX:n+Math.cos(t)*i,rimY:r+Math.sin(t)*i,boxW:a,boxH:o,lineHeight:s,fontPx:c,bold:l,fontColor:u,cxBox:m,cyBox:h,initialCx:m,initialCy:h,leftSide:Math.cos(t)<0}}function Sn(e,t,n,r,i,a,o,s,c,l,u,d){if(n.length===0)return;let f=l,p=l+d,m=e=>{e.sort((e,t)=>e.cyBox-t.cyBox);for(let t=1;t<e.length;t++){let n=e[t-1],r=e[t],i=n.cyBox+(n.boxH+r.boxH)/2;r.cyBox<i&&(r.cyBox=i)}if(e.length===0)return;let t=e[e.length-1].cyBox+e[e.length-1].boxH/2-p;if(t>0)for(let n of e)n.cyBox-=t;let n=f-(e[0].cyBox-e[0].boxH/2);if(n>0)for(let t of e)t.cyBox+=n};m(n.filter(e=>!e.leftSide)),m(n.filter(e=>e.leftSide));let h=a+s;for(let e of n){let t=e.boxW/2,n=e.boxH/2,a=Math.max(Math.abs(e.cyBox-i)-n,0);if(a<h){let n=Math.sqrt(Math.max(0,h*h-a*a));e.cxBox=e.leftSide?Math.min(e.cxBox,r-n-t):Math.max(e.cxBox,r+n+t)}let o=In(e.cxBox,c+t,c+u-t);yn(r,i,o,e.cyBox,t,n)>=h&&(e.cxBox=o)}let g=t.leaderLineColor?`#${t.leaderLineColor}`:`#a6a6a6`,_=t.leaderLineWidthEmu?Math.max(.5,t.leaderLineWidthEmu/Ne*s):1;for(let r of n){let n=Math.abs(r.cxBox-r.initialCx)>.5||Math.abs(r.cyBox-r.initialCy)>.5;if(!t.showLeaderLines||!n)continue;let i=In(r.rimX,r.cxBox-r.boxW/2,r.cxBox+r.boxW/2),a=In(r.rimY,r.cyBox-r.boxH/2,r.cyBox+r.boxH/2);e.beginPath(),e.moveTo(r.rimX,r.rimY),e.lineTo(i,a),e.strokeStyle=g,e.lineWidth=_,e.stroke()}for(let t of n){e.font=`${t.bold?`bold `:``}${t.fontPx}px ${o}`,e.fillStyle=t.fontColor,e.textAlign=`center`,e.textBaseline=`middle`;let n=t.cyBox-(t.lines.length-1)*t.lineHeight/2;for(let r=0;r<t.lines.length;r++)e.fillText(t.lines[r],t.cxBox,n+r*t.lineHeight)}}function Cn(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g){let _=r.dataLabelOverrides??[],v=e=>_.find(t=>t.idx===e),y=n.fontSizeHpt?n.fontSizeHpt/100:Math.max(9,l*.09),b=Math.max(4,y*.45),x=Math.max(2,y*.28),S=y*.22,C=n.labelBox,w=[],T=u;for(let u=0;u<a.length;u++){let p=a[u]/o*Math.PI*2,m=T+p/2;if(T+=p,p<=0)continue;let h=v(u);if(h?.deleted)continue;let g=h?.showCatName??n.showCatName,_=h?.showSerName??n.showSerName,E=h?.showVal??n.showVal,D=h?.showPercent??n.showPercent,O=[];if(h&&h.text)O.push(h.text);else{if(g){let e=(i[u]??``).toString();e&&O.push(e)}_&&r.name&&O.push(r.name),E&&O.push(Ge(a[u],n.formatCode??r.valFormatCode??null,t.date1904??!1)),D&&O.push(`${Math.round(a[u]/o*100)}%`)}if(O.length===0)continue;let k=h?.fontSizeHpt?h.fontSizeHpt/100:y,A=h?.fontBold??n.fontBold??!1,j=h?.fontColor?`#${h.fontColor}`:n.fontColor?`#${n.fontColor}`:`#000`,M=h?.labelBox??C,N=M?.fill?`#${M.fill}`:null,P=M?.borderColor?`#${M.borderColor}`:null,ee=M?.borderWidthEmu?Math.max(.75,M.borderWidthEmu/Ne*f):1;e.font=`${A?`bold `:``}${k}px ${d}`;let te=0;for(let t of O)te=Math.max(te,e.measureText(t).width);let F=k+S,I=te+b*2,L=O.length*F-S+x*2,R=s+Math.cos(m)*l,z=c+Math.sin(m)*l,B=Math.cos(m)<0,V=Math.max(I,L)*.55+l*.06,ne=R+Math.cos(m)*V,re=z+Math.sin(m)*V;w.push({lines:O,midAngle:m,rimX:R,rimY:z,boxW:I,boxH:L,cxBox:ne,cyBox:re,leftSide:B,fontColor:j,boxFill:N,boxBorder:P,boxBorderPx:ee,fontPx:k,bold:A})}let E=h+2,D=h+g-2,O=D-E,k=e=>{if(e.length===0)return;e.sort((e,t)=>e.cyBox-t.cyBox);let t=0;for(let n of e)t+=n.boxH;if(t+=(e.length-1)*3,t>O){let t=e.reduce((e,t)=>e+t.boxH,0),n=e.length;if(n===1){e[0].cyBox=Math.min(Math.max(e[0].cyBox,E+e[0].boxH/2),D-e[0].boxH/2);return}let r=(O-t)/(n-1),i=E;for(let t of e)t.cyBox=i+t.boxH/2,i+=t.boxH+r;return}for(let t=1;t<e.length;t++){let n=e[t-1],r=e[t],i=(n.boxH+r.boxH)/2+3;r.cyBox-n.cyBox<i&&(r.cyBox=n.cyBox+i)}let n=e[e.length-1].cyBox+e[e.length-1].boxH/2-D;if(n>0)for(let t of e)t.cyBox-=n;let r=E-(e[0].cyBox-e[0].boxH/2);if(r>0)for(let t of e)t.cyBox+=r};k(w.filter(e=>!e.leftSide)),k(w.filter(e=>e.leftSide));for(let e of w)e.cyBox=Math.max(E+e.boxH/2,e.cyBox),e.cyBox=Math.min(D-e.boxH/2,e.cyBox);let A=p+2,j=p+m-2;for(let e of w){let t=e.boxW/2;e.cxBox-t<A&&(e.cxBox=A+t),e.cxBox+t>j&&(e.cxBox=j-t)}let M=n.leaderLineColor?`#${n.leaderLineColor}`:`#a6a6a6`,N=n.leaderLineWidthEmu?Math.max(.5,n.leaderLineWidthEmu/Ne*f):1;for(let t of w){let r=t.cxBox+(t.leftSide?t.boxW/2:-t.boxW/2),i=t.cyBox,a=r-t.rimX,o=i-t.rimY,s=Math.hypot(a,o);n.showLeaderLines&&s>t.fontPx*.9&&(e.beginPath(),e.moveTo(t.rimX,t.rimY),e.lineTo(r,i),e.strokeStyle=M,e.lineWidth=N,e.stroke())}for(let t of w){let n=t.cxBox-t.boxW/2,r=t.cyBox-t.boxH/2;t.boxFill&&(e.fillStyle=t.boxFill,e.fillRect(n,r,t.boxW,t.boxH)),t.boxBorder&&(e.strokeStyle=t.boxBorder,e.lineWidth=t.boxBorderPx,e.strokeRect(n,r,t.boxW,t.boxH)),e.font=`${t.bold?`bold `:``}${t.fontPx}px ${d}`,e.fillStyle=t.fontColor,e.textAlign=`center`,e.textBaseline=`middle`;let i=t.fontPx+S,a=t.cyBox-(t.lines.length*i-S)/2+t.fontPx/2;for(let n=0;n<t.lines.length;n++)e.fillText(t.lines[n],t.cxBox,a+n*i)}}function wn(e,t,n,r){let{x:i,y:a,w:o,h:s}=n,c=dn(t),l=c.length;if(l<3)return;let u=q(t,i,a,o,s,r,{titleTopPadFrac:.035,titleBottomPadFrac:.035,legendSideReserveFrac:.22,radialGapFrac:.02}),d=u.legend,f=u.title.fontPx;un(e,t,i,a,o,s,a+u.title.topPad,f);let{px0:p,py0:m,pw:h,ph:g}=u.plotRect,_=u.center.cx,v=u.center.cy,y=Math.min(h,g)*.38,b=0;for(let e of t.series)for(let t of e.values)b=Math.max(b,t??0);t.valMax!=null&&(b=t.valMax),b===0&&(b=1);let{max:x,step:S}=ke(0,b,void 0,t.valMax,void 0,t.valAxisMajorUnit),C=-Math.PI/2,w=e=>C+e/l*Math.PI*2,T=Math.round(x/S),E=e=>Math.min(e*S,x);e.strokeStyle=`#ddd`,e.lineWidth=.5;for(let t=1;t<=T;t++){let n=E(t)/x*y;e.beginPath();for(let t=0;t<l;t++){let r=w(t),i=_+Math.cos(r)*n,a=v+Math.sin(r)*n;t===0?e.moveTo(i,a):e.lineTo(i,a)}e.closePath(),e.stroke()}e.strokeStyle=`#bbb`,e.lineWidth=.5;for(let t=0;t<l;t++){let n=w(t);e.beginPath(),e.moveTo(_,v),e.lineTo(_+Math.cos(n)*y,v+Math.sin(n)*y),e.stroke()}if(!t.valAxisHidden){e.font=`${$t(t.valAxisFontSizeHpt,s,r)}px ${wt(t,t.valAxisFontFace,`minor`)}`,e.fillStyle=`#555`,e.textAlign=`right`,e.textBaseline=`middle`;for(let t=1;t<=T;t++){let n=E(t),r=n/x*y;e.fillText(We(n),_-3,v-r)}}e.font=`${Math.max(8,Math.min(11,y*.2))}px ${wt(t,t.catAxisFontFace,`minor`)}`,e.fillStyle=`#444`,e.textBaseline=`middle`;let D=_-h/2,O=_+h/2;for(let n=0;n<l;n++){let r=w(n),i=_+Math.cos(r)*(y+12),a=v+Math.sin(r)*(y+12),o=Math.cos(r)<-.1?`right`:Math.cos(r)>.1?`left`:`center`;e.textAlign=o;let s=o===`right`?i-D:o===`left`?O-i:2*Math.min(O-i,i-D),l=Ke((c[n]??``).toString(),t.catAxisFormatCode,t.date1904);e.fillText(Qe(e,l,s),i,a)}let k=t.radarStyle===`filled`,A=Math.max(2,y*.025);for(let n=0;n<t.series.length;n++){let r=t.series[n],i=xt(n,r),a=[];for(let e=0;e<l;e++){let t=r.values[e];if(t==null){a.push(null);continue}let n=t/x,i=w(e);a.push([_+Math.cos(i)*y*n,v+Math.sin(i)*y*n])}e.beginPath();let o=!1;for(let t of a){if(t==null){o=!1;continue}o?e.lineTo(t[0],t[1]):(e.moveTo(t[0],t[1]),o=!0)}let s=a.every(e=>e!=null);if(k&&s?(e.closePath(),e.fillStyle=ft(i,.25),e.fill()):s&&e.closePath(),e.strokeStyle=i,e.lineWidth=2,e.stroke(),!k&&r.showMarker!==!1){e.fillStyle=i;for(let t of a)t!=null&&(e.beginPath(),e.arc(t[0],t[1],A,0,Math.PI*2),e.fill())}}zt(e,t,d,i,a,o,s,p,m,h,g,u.title.bandH+2,r)}function Tn(e,t,n){if(n)return t;let r=e[t];if(r==null)return null;let i=parseFloat(r);return Number.isNaN(i)?null:i}function En(e,t){return e.bubbleSizeRepresents===`w`?t:Math.sqrt(t)}function Dn(e,t){return t==null||!Number.isFinite(t)||t===0||t<0&&e.showNegativeBubbles!==!0?null:Math.abs(t)}function On(e,t,n){return{series:t,fallbackColor:xt(n,t),cats:t.categories??e.categories,pointOverrides:new Map((t.dataPointOverrides??[]).map(e=>[e.idx,e]))}}function kn(e,t,n,r,i){let a=In(e.bubbleScale??100,0,300);if(a<=0)return 0;let o=0;for(let{series:r,cats:i,pointOverrides:a}of t)if(!(r.showMarker===!1||r.markerSymbol===`none`))for(let t=0;t<r.values.length;t++){if(r.values[t]==null||Tn(i,t,n)==null||a.get(t)?.markerSymbol===`none`)continue;let s=Dn(e,r.bubbleSizes?.[t]);s!=null&&(o=Math.max(o,En(e,s)))}return o<=0?0:Math.min(r,i)*a/(300+a)/o}function An(e,t,n,r,i,a,o,s,c,l,u){let d=u===`line`||u===`lineMarker`||u===`lineNoMarker`,f=u===`smooth`||u===`smoothMarker`||u===`smoothNoMarker`,p=u===`lineNoMarker`||u===`smoothNoMarker`,m=n.map(({series:e,index:n})=>On(t,e,n)),h=l?kn(t,m,r,o,s):0;for(let{series:t,fallbackColor:n,cats:o}of m)for(let s of t.errBars??[])Nn(e,t,s,o,r,i,a,n);for(let{series:t,fallbackColor:n,cats:o}of m)if((d||f)&&t.lineHidden!==!0){let s=[];for(let e=0;e<t.values.length;e++){let n=t.values[e];if(n==null)continue;let c=Tn(o,e,r);c!=null&&s.push({x:i(c),y:a(n)})}if(s.length>=2){if(e.save(),e.strokeStyle=t.color?`#${t.color}`:n,e.lineWidth=1.5,e.beginPath(),e.moveTo(s[0].x,s[0].y),f&&s.length>=3)for(let t=0;t<s.length-1;t++){let n=s[t-1]??s[t],r=s[t],i=s[t+1],a=s[t+2]??i;e.bezierCurveTo(r.x+(i.x-n.x)/6,r.y+(i.y-n.y)/6,i.x-(a.x-r.x)/6,i.y-(a.y-r.y)/6,i.x,i.y)}else for(let t=1;t<s.length;t++)e.lineTo(s[t].x,s[t].y);e.stroke(),e.restore()}}for(let{series:n,fallbackColor:o,cats:s,pointOverrides:u}of m)if(!(p||n.showMarker===!1||typeof n.markerSymbol==`string`&&n.markerSymbol===`none`))for(let d=0;d<n.values.length;d++){let f=n.values[d];if(f==null)continue;let p=Tn(s,d,r);if(p==null)continue;let m=u.get(d),g=m?.markerSymbol??n.markerSymbol??`circle`;if(g===`none`)continue;let _=m?.markerSize??n.markerSize??5;if(l){if(h<=0)continue;let e=Dn(t,n.bubbleSizes?.[d]);if(e==null)continue;_=En(t,e)*h/c}let v=m?.markerFill??m?.color??n.markerFill??o,y=m?.markerLine??n.markerLine??(l?n.lineColor:null)??null,b=l&&n.lineWidthEmu!=null?Math.max(.5,n.lineWidthEmu/Ne*c):void 0;Mn(e,i(p),a(f),g,_,v,y,c,b)}for(let{series:n,cats:o}of m)Pn(e,n,o,r,i,a,s,c,t.date1904,wt(t,t.dataLabelFontFace,`minor`),t.dataLabelPosition??`r`);for(let{series:t,fallbackColor:n,cats:o}of m)Qt(e,t,n,i,a,c,t.values.map((e,t)=>Tn(o,t,r)))}function jn(e,t,n,r){let{x:i,y:a,w:o,h:s}=n,c=Se(t,s,r),l=c.fontPx,u=c.topPad,d=$t(t.catAxisFontSizeHpt,s,r),f=$t(t.valAxisFontSizeHpt,s,r),p=_e(t,o,s,.22),{legRightW:m,legLeftW:h,legTopH:g,legBottomH:_}=ve(p),v=xe(t,o,s,r),y=v.catFontPx,b=v.valFontPx,x=v.catBandH,S=v.valBandW;un(e,t,i,a,o,s,a+u,l);let{plotRect:{px0:C,py0:w,pw:T,ph:E}}=q(t,i,a,o,s,r,{titleBand:c,legendSideReserveFrac:.22,pad:{t:c.bandH+g+f/2+2,r:m+o*.05,b:(t.catAxisHidden?s*.04:Ce(d))+x+_,l:(t.valAxisHidden?o*.04:o*.12)+S+h},honorPlotAreaManualLayout:!0});if(T<=0||E<=0)return;t.plotAreaBg&&(e.fillStyle=`#${t.plotAreaBg}`,e.fillRect(C,w,T,E));let D=[],O=[];for(let e of t.series){let n=e.categories??t.categories;for(let e of n){let t=parseFloat(e);isNaN(t)||D.push(t)}}let k=D.length===0;if(k){let e=Math.max(...t.series.map(e=>e.values.length));for(let t=0;t<e;t++)D.push(t);for(let e of t.series)for(let t of e.values)t!=null&&O.push(t)}else{D.length=0;for(let e of t.series){let n=e.categories??t.categories;for(let t=0;t<e.values.length;t++){let r=e.values[t];if(r==null)continue;let i=Tn(n,t,!1);i!=null&&(D.push(i),O.push(r))}}}let A=Math.min(...D),j=Math.max(...D),M=Math.min(...O),N=Math.max(...O);A===j&&(--A,j+=1),M===N&&(--M,N+=1),t.valMin==null?M>0&&(M=0):M=t.valMin,t.valMax!=null&&(N=t.valMax);let{min:P,max:ee,step:te}=ke(M,N,t.valMin,t.valMax,void 0,t.valAxisMajorUnit);if(M=P,N=ee,t.catAxisMin!=null&&(A=t.catAxisMin),t.catAxisMax!=null&&(j=t.catAxisMax),t.catAxisMin==null||t.catAxisMax==null){let e=Te(j-A);e>0&&(t.catAxisMin??(A=Math.floor(A/e)*e),t.catAxisMax??(j=Math.ceil(j/e)*e))}let F=e=>C+(e-A)/(j-A)*T,I=e=>w+E-(e-M)/(N-M)*E,L=Te(j-A),R=w+E;if(t.catAxisCrossesAt!=null)R=In(I(t.catAxisCrossesAt),w,w+E);else{let e=t.catAxisCrosses??`autoZero`;e===`autoZero`&&M<0&&N>0?R=In(I(0),w,w+E):e===`max`&&(R=w)}let z=C;if(t.valAxisCrossesAt!=null)z=In(F(t.valAxisCrossesAt),C,C+T);else{let e=t.valAxisCrosses??`autoZero`;e===`autoZero`&&A<0&&j>0?z=In(F(0),C,C+T):e===`max`&&(z=C+T)}let B=Ht(t,r);if(!t.valAxisHidden){let n=t.valAxisFontSizeHpt==null?Math.max(8,Math.min(11,E/20)):$t(t.valAxisFontSizeHpt,s,r),i=t.valAxisFontSizeHpt==null?4:tn(n);e.font=`${t.valAxisFontBold?`bold `:``}${n}px ${wt(t,t.valAxisFontFace,`minor`)}`;let a=Math.round((N-M)/te)+1;for(let n=0;n<a;n++){let a=M+n*te;if(a>N+te*.01)break;let o=I(a);if(e.strokeStyle=B.color,e.lineWidth=B.width,Jt(t)&&(e.beginPath(),e.moveTo(C,o),e.lineTo(C+T,o),e.stroke()),t.valAxisTickLabelPos!==`none`){e.fillStyle=t.valAxisFontColor?`#${t.valAxisFontColor}`:`#555`;let n=t.valAxisTickLabelPos??`nextTo`,r;n===`high`?(e.textAlign=`left`,r=C+T+i):n===`low`?(e.textAlign=`right`,r=C-i):(e.textAlign=`right`,r=z-i),e.textBaseline=`middle`,e.fillText(Ge(a,t.valAxisFormatCode,t.date1904),r,o)}let s=t.valAxisLineColor?`#${t.valAxisLineColor}`:void 0;Bt(e,t.valAxisMajorTickMark,`val`,z,o,s,Pe(t.valAxisLineWidthEmu,r))}}if(!t.catAxisHidden&&Ut(t)&&L>0){let n=Wt(t,r),i=Math.round((j-A)/L)+1;e.strokeStyle=n.color,e.lineWidth=n.width;for(let t=0;t<i;t++){let n=A+t*L;if(n>j+L*.01)break;let r=F(n);e.beginPath(),e.moveTo(r,w),e.lineTo(r,w+E),e.stroke()}}if(!t.catAxisHidden&&!t.catAxisLineHidden&&(e.save(),e.strokeStyle=t.catAxisLineColor?`#${t.catAxisLineColor}`:`#888`,e.lineWidth=Pe(t.catAxisLineWidthEmu,r),e.lineCap=`butt`,e.beginPath(),e.moveTo(C,R),e.lineTo(C+T,R),e.stroke(),e.restore()),!t.valAxisHidden&&!t.valAxisLineHidden&&(e.save(),e.strokeStyle=t.valAxisLineColor?`#${t.valAxisLineColor}`:`#888`,e.lineWidth=Pe(t.valAxisLineWidthEmu,r),e.beginPath(),e.moveTo(z,w),e.lineTo(z,w+E),e.stroke(),e.restore()),!t.catAxisHidden){let n=t.catAxisFontSizeHpt==null?Math.max(8,Math.min(11,E/20)):$t(t.catAxisFontSizeHpt,s,r),i=t.catAxisFontSizeHpt==null?4:en(n);e.font=`${t.catAxisFontBold?`bold `:``}${n}px ${wt(t,t.catAxisFontFace,`minor`)}`;let a=Math.round((j-A)/L)+1;e.fillStyle=t.catAxisFontColor?`#${t.catAxisFontColor}`:`#555`,e.textAlign=`center`;let o=t.catAxisTickLabelPos??`nextTo`,c=o===`low`?w+E+i:o===`high`?w-i:R+i;e.textBaseline=o===`high`?`bottom`:`top`;for(let n=0;n<a;n++){let i=A+n*L;if(i>j+L*.01)break;let a=F(i);o!==`none`&&e.fillText(Ge(i,t.catAxisFormatCode,t.date1904),a,c);let s=t.catAxisLineColor?`#${t.catAxisLineColor}`:void 0;Bt(e,t.catAxisMajorTickMark,`cat`,R,a,s,Pe(t.catAxisLineWidthEmu,r))}}let V=t.chartType===`bubble`,ne=V?`marker`:t.scatterStyle??`marker`,re=ne===`line`||ne===`lineMarker`||ne===`lineNoMarker`,ie=ne===`smooth`||ne===`smoothMarker`||ne===`smoothNoMarker`,ae=ne===`lineNoMarker`||ne===`smoothNoMarker`,oe=t.series.map((e,n)=>On(t,e,n)),H=V?kn(t,oe,k,T,E):0;for(let{series:n,fallbackColor:i,cats:a,pointOverrides:o}of oe){for(let t of n.errBars??[])Nn(e,n,t,a,k,F,I,i);if((re||ie)&&n.lineHidden!==!0){let t=[];for(let e=0;e<n.values.length;e++){let r=n.values[e];if(r==null)continue;let i=Tn(a,e,k);i!=null&&t.push({x:F(i),y:I(r)})}if(t.length>=2){if(e.save(),e.strokeStyle=n.color?`#${n.color}`:i,e.lineWidth=1.5,e.beginPath(),e.moveTo(t[0].x,t[0].y),ie&&t.length>=3)for(let n=0;n<t.length-1;n++){let r=t[n-1]??t[n],i=t[n],a=t[n+1],o=t[n+2]??a,s=i.x+(a.x-r.x)/6,c=i.y+(a.y-r.y)/6,l=a.x-(o.x-i.x)/6,u=a.y-(o.y-i.y)/6;e.bezierCurveTo(s,c,l,u,a.x,a.y)}else for(let n=1;n<t.length;n++)e.lineTo(t[n].x,t[n].y);e.stroke(),e.restore()}}if(!(ae||n.showMarker===!1||typeof n.markerSymbol==`string`&&n.markerSymbol===`none`))for(let s=0;s<n.values.length;s++){let c=n.values[s];if(c==null)continue;let l=Tn(a,s,k);if(l==null)continue;let u=o.get(s),d=u?.markerSymbol??n.markerSymbol??`circle`;if(d===`none`)continue;let f=u?.markerSize??n.markerSize??5;if(V){if(H<=0)continue;let e=Dn(t,n.bubbleSizes?.[s]);if(e==null)continue;f=En(t,e)*H/r}let p=u?.markerFill??u?.color??n.markerFill??i,m=u?.markerLine??n.markerLine??(V?n.lineColor:null)??null,h=V&&n.lineWidthEmu!=null?Math.max(.5,n.lineWidthEmu/Ne*r):void 0;Mn(e,F(l),I(c),d,f,p,m,r,h)}if(Pn(e,n,a,k,F,I,E,r,t.date1904,wt(t,t.dataLabelFontFace,`minor`),t.dataLabelPosition??`r`),n.trendLines&&n.trendLines.length>0){let t=n.values.map((e,t)=>Tn(a,t,k));e.save(),e.beginPath(),e.rect(C,w,T,E),e.clip(),Qt(e,n,i,F,I,r,t),e.restore()}}zt(e,t,p,i,a,o,s,C,w,T,E,c.bandH+2,r),At(e,t,i,a,o,s,C,w,T,E,h,_,y,b)}function Mn(e,t,n,r,i,a,o,s,c=1){let l=Math.max(2,i*s),u=l/2,d=a.startsWith(`#`)?a:`#${a}`,f=o?o.startsWith(`#`)?o:`#${o}`:null;switch(e.save(),e.fillStyle=d,f&&(e.strokeStyle=f,e.lineWidth=c),r){case`square`:e.fillRect(t-u,n-u,l,l),o&&e.strokeRect(t-u,n-u,l,l);break;case`diamond`:e.beginPath(),e.moveTo(t,n-u),e.lineTo(t+u,n),e.lineTo(t,n+u),e.lineTo(t-u,n),e.closePath(),e.fill(),o&&e.stroke();break;case`triangle`:e.beginPath(),e.moveTo(t,n-u),e.lineTo(t+u,n+u),e.lineTo(t-u,n+u),e.closePath(),e.fill(),o&&e.stroke();break;case`x`:e.strokeStyle=d,e.lineWidth=Math.max(1,l*.18),e.beginPath(),e.moveTo(t-u,n-u),e.lineTo(t+u,n+u),e.moveTo(t-u,n+u),e.lineTo(t+u,n-u),e.stroke();break;case`plus`:e.strokeStyle=d,e.lineWidth=Math.max(1,l*.18),e.beginPath(),e.moveTo(t-u,n),e.lineTo(t+u,n),e.moveTo(t,n-u),e.lineTo(t,n+u),e.stroke();break;case`star`:e.beginPath();for(let r=0;r<10;r++){let i=r%2==0?u:u*.45,a=-Math.PI/2+r*Math.PI/5,o=t+Math.cos(a)*i,s=n+Math.sin(a)*i;r===0?e.moveTo(o,s):e.lineTo(o,s)}e.closePath(),e.fill(),o&&e.stroke();break;case`dot`:e.beginPath(),e.arc(t,n,Math.max(1,l*.25),0,Math.PI*2),e.fill();break;case`dash`:{let r=Math.max(1,l*.25);e.fillRect(t-u,n-r/2,l,r);break}default:e.beginPath(),e.arc(t,n,u,0,Math.PI*2),e.fill(),o&&e.stroke();break}e.restore()}function Nn(e,t,n,r,i,a,o,s){e.save(),e.strokeStyle=n.color?`#${n.color}`:s,e.lineWidth=n.lineWidthEmu?Math.max(.5,n.lineWidthEmu/Ne):1,e.setLineDash(Rn(n.dash));let c=n.barType===`plus`||n.barType===`both`,l=n.barType===`minus`||n.barType===`both`,u=n.dir===`x`,d=e.lineWidth/2;for(let s=0;s<t.values.length;s++){let f=t.values[s];if(f==null)continue;let p=Tn(r,s,i);if(p==null)continue;let m=a(p),h=o(f),g=t=>{let r=m,i=h;u?r=a(p+t):i=o(f+t),e.beginPath(),e.moveTo(m,h),e.lineTo(r,i),e.stroke(),n.noEndCap||(e.save(),e.setLineDash([]),e.beginPath(),u?(e.moveTo(r,i-d),e.lineTo(r,i+d)):(e.moveTo(r-d,i),e.lineTo(r+d,i)),e.stroke(),e.restore())};if(c){let e=n.plus[s];e!=null&&g(e)}if(l){let e=n.minus[s];e!=null&&g(-e)}}e.restore()}function Pn(e,t,n,r,i,a,o,s,c=!1,l=`sans-serif`,u=`r`){let d=t.dataLabelOverrides??[];if(d.length===0&&!t.seriesDataLabels)return;let f=t.seriesDataLabels;for(let p=0;p<t.values.length;p++){let m=t.values[p];if(m==null)continue;let h=Tn(n,p,r);if(h==null)continue;let g=d.find(e=>e.idx===p);if(g?.deleted)continue;let _=g?.showCatName??f?.showCatName,v=g?.showSerName??f?.showSerName,y=g?.showVal??f?.showVal,b;if(g?.text)b=g.text;else if(y||v||_){let e=[];if(_&&!r&&e.push(Ge(h,t.catFormatCodes?.[p]??t.catFormatCode??null,c)),v&&e.push(t.name),y&&e.push(Ge(m,f?.formatCode??null,c)),b=e.filter(Boolean).join(` `),!b)continue}else continue;let x=g?.position??f?.position??u,S=g?.fontSizeHpt??f?.fontSizeHpt,C=S?S/100*s:Math.max(9,Math.min(11,o/25)),w=g?.fontColor??f?.fontColor,T=g?.fontBold??f?.fontBold??!1;Fn(e,i(h),a(m),b,x,C,w,T,l)}}function Fn(e,t,n,r,i,a,o,s,c=`sans-serif`,l=0){e.save(),e.font=`${s?`bold `:``}${a}px ${c}`,e.fillStyle=o?`#${o}`:`#333`;let u=a*.6+l,d=t,f=n;switch(i){case`l`:e.textAlign=`right`,e.textBaseline=`middle`,d=t-u;break;case`r`:e.textAlign=`left`,e.textBaseline=`middle`,d=t+u;break;case`t`:e.textAlign=`center`,e.textBaseline=`bottom`,f=n-u;break;case`b`:e.textAlign=`center`,e.textBaseline=`top`,f=n+u;break;case`ctr`:e.textAlign=`center`,e.textBaseline=`middle`;break;default:e.textAlign=`left`,e.textBaseline=`middle`,d=t+u;break}let p=r.split(/\\r?\\n/),m=a*1.15,h=m*p.length,g=f;e.textBaseline===`middle`?g=f-(h-m)/2:e.textBaseline===`bottom`&&(g=f-(h-m));for(let t of p)e.fillText(t,d,g),g+=m;e.restore()}function In(e,t,n){return e<t?t:e>n?n:e}function Ln(e,t,n){if(t.length!==0)if(n&&t.length>=3)for(let n=0;n<t.length-1;n++){let r=t[n-1]??t[n],i=t[n],a=t[n+1],o=t[n+2]??a,s=i.x+(a.x-r.x)/6,c=i.y+(a.y-r.y)/6,l=a.x-(o.x-i.x)/6,u=a.y-(o.y-i.y)/6;e.bezierCurveTo(s,c,l,u,a.x,a.y)}else for(let n=1;n<t.length;n++)e.lineTo(t[n].x,t[n].y)}function Rn(e){if(!e)return[];switch(e){case`solid`:return[];case`dot`:case`sysDot`:return[1,2];case`dash`:case`sysDash`:return[4,2];case`lgDash`:return[8,3];case`dashDot`:case`sysDashDot`:return[4,2,1,2];case`lgDashDot`:return[8,3,1,3];case`dashDotDot`:case`sysDashDotDot`:case`lgDashDotDot`:return[4,2,1,2,1,2];default:return[]}}function zn(e){return e.markerSymbol!=null||e.markerSize!=null||e.markerFill!=null||e.markerLine!=null||e.dataPointOverrides!=null&&e.dataPointOverrides.length>0}function Bn(e,t,n,r,i,a,o,s){if(n.dir===`x`)return;let c=n.barType===`plus`||n.barType===`both`,l=n.barType===`minus`||n.barType===`both`;e.save(),e.strokeStyle=n.color?`#${n.color}`:s,e.lineWidth=n.lineWidthEmu?Math.max(.5,n.lineWidthEmu/Ne):1,e.setLineDash(Rn(n.dash));let u=e.lineWidth/2;for(let s=0;s<r;s++){if(t.values[s]==null)continue;let r=o(s),d=i(s),f=a(r),p=t=>{let i=a(r+t);e.beginPath(),e.moveTo(d,f),e.lineTo(d,i),e.stroke(),n.noEndCap||(e.save(),e.setLineDash([]),e.beginPath(),e.moveTo(d-u,i),e.lineTo(d+u,i),e.stroke(),e.restore())};if(c){let e=n.plus[s];e!=null&&p(e)}if(l){let e=n.minus[s];e!=null&&p(-e)}}e.restore()}function Vn(e,t,n,r,i,a,o,s,c,l,u,d=`sans-serif`,f=`t`){let p=t.dataLabelOverrides??[],m=t.seriesDataLabels;if(p.length===0&&!m)return!1;for(let h=0;h<r;h++){if(t.values[h]==null&&!u)continue;let r=o(h),g=p.find(e=>e.idx===h);if(g?.deleted)continue;let _=g?.showCatName??m?.showCatName,v=g?.showSerName??m?.showSerName,y=g?.showVal??m?.showVal,b;if(g?.text)b=g.text;else if(y||v||_){let e=[];if(_&&e.push(n[h]??``),v&&e.push(t.name),y&&e.push(Ge(r,m?.formatCode??null,l)),b=e.filter(Boolean).join(` `),!b)continue}else continue;let x=g?.position??m?.position??f,S=g?.fontSizeHpt??m?.fontSizeHpt,C=S?S/100*c:Math.max(9,Math.min(11,s/25)),w=g?.fontColor??m?.fontColor,T=g?.fontBold??m?.fontBold??!1;Fn(e,i(h),a(r),b,x,C,w,T,d)}return!0}function Hn(e,t,n,r,i){let a=n===`fill`?t?.fillColors:t?.lineColors;return a?.length?a[((n===`fill`?t?.fillColorIndex:t?.lineColorIndex)??r)%a.length]??null:null}function Un(e,t,n,r){if(!t.length)return null;let i=e.chartexColorStyleMethod;return i===`withinLinear`||i===`acrossLinear`||i===`withinLinearReversed`||i===`acrossLinearReversed`?t[i===`withinLinear`||i===`withinLinearReversed`?0:n%t.length]??null:t[n%t.length]??null}function Wn(e,t,n){return Hn(e,e.chartexDataPointStyle,`fill`,t,n)??(e.chartexColorPalette?Un(e,e.chartexColorPalette,t,n):null)??e.chartexAccents?.[t%(e.chartexAccents.length||1)]??bt[t%bt.length]}function Gn(e,t){let n=e?.fillPaints;return n?.length?n[(e?.fillColorIndex??t)%n.length]??null:null}function Kn(e,t,n){return Gn(e.chartexDataPointStyle,t)??{fillType:`solid`,color:Wn(e,t,n)}}function qn(e,t,n,r,i,a,o,s=0){return t.fillType===`solid`?t.color.startsWith(`#`)?t.color:`#${t.color}`:ht(t,e,n,r,i,a,s)??o}function Jn(e,t,n,r,i,a,o){if(n?.lineHidden)return!1;let s=Hn(t,n,`line`,r,i)??a;return e.strokeStyle=s.startsWith(`#`)?s:`#${s}`,e.lineWidth=n?.lineWidthEmu==null?1:Pe(n.lineWidthEmu,o),e.setLineDash(Rn(n?.lineDash??void 0)),e.lineCap=n?.lineCap===`rnd`?`round`:n?.lineCap===`sq`?`square`:`butt`,e.lineJoin=n?.lineJoin===`round`||n?.lineJoin===`bevel`?n.lineJoin:`miter`,!0}function Yn(e,t,n,r,i){let{x:a,y:o,w:s,h:c}=n,l=t.series[0]?.values??[],u=t.categories,d=u.length;if(d===0)return;let f=new Set(t.subtotalIndices),p=0,m=[];for(let e=0;e<d;e++){let t=l[e]??0;if(f.has(e))m.push({start:0,end:t,isSub:!0,isPos:!0}),p=t;else{let e=t>=0?p:p+t,n=t>=0?p+t:p;m.push({start:e,end:n,isSub:!1,isPos:t>=0}),p+=t}}let h=m.map(e=>e.end),g=m.map(e=>e.start),_=Math.max(...h,...g),v=Math.min(...g,0);if(_<=v)return;let y=Se(t,c,r),b=xe(t,s,c,r),x=$t(t.valAxisFontSizeHpt,c,r),S=$t(t.catAxisFontSizeHpt,c,r),C=wt(t,t.valAxisFontFace,`minor`),w=wt(t,t.catAxisFontFace,`minor`),T=Zt(t,v,_,c/r);e.save();let E=0;if(!t.valAxisHidden){e.font=`${t.valAxisFontBold?`bold `:``}${x}px ${C}`;let n=0;for(let r of T.majorLines)n=Math.max(n,e.measureText(Ge(r,t.valAxisFormatCode,t.date1904)).width);E=n+8}let D=Math.max(1,s-b.valBandW-E-s*.02)/d;e.font=`${t.catAxisFontBold?`bold `:``}${S}px ${w}`;let O=u.map(n=>nn(e,Ke(n,t.catAxisFormatCode,t.date1904),Math.max(1,D-8))),k=Math.max(1,...O.map(e=>e.length)),A=t.catAxisHidden?0:k*(S+2)+4,j=q(t,a,o,s,c,r,{titleBand:y,legendSideReserveFrac:0,pad:{t:y.bandH+x/2+2,r:s*.02,b:b.catBandH+A,l:b.valBandW+(t.valAxisHidden?s*.02:E)}});un(e,t,a,o,s,c,o+j.title.topPad,j.title.fontPx);let{px0:M,py0:N,pw:P,ph:ee}=j.plotRect,te=Zt(t,v,_,ee/r),F=e=>N+ee-te.frac(e)*ee,I=Fe(t.valAxisLineColor,t.valAxisLineWidthEmu,r),L=Fe(t.catAxisLineColor,t.catAxisLineWidthEmu,r),R=Ie(t.valAxisGridlineColor,t.valAxisGridlineWidthEmu,r);if(!t.valAxisHidden){e.font=`${t.valAxisFontBold?`bold `:``}${x}px ${C}`,e.fillStyle=t.valAxisFontColor?`#${t.valAxisFontColor}`:`#595959`,e.textAlign=`right`,e.textBaseline=`middle`;for(let n of te.majorLines){let r=F(n);Jt(t)&&(e.strokeStyle=R.color,e.lineWidth=R.width,e.beginPath(),e.moveTo(M,r),e.lineTo(M+P,r),e.stroke()),e.fillText(Ge(n,t.valAxisFormatCode,t.date1904),M-4,r),Bt(e,t.valAxisMajorTickMark,`val`,M,r,I.color,I.width)}}let z=!t.valAxisHidden&&!t.valAxisLineHidden,B=!t.catAxisHidden&&!t.catAxisLineHidden;z&&(e.strokeStyle=I.color,e.lineWidth=I.width,e.beginPath(),e.moveTo(M,N),e.lineTo(M,N+ee),e.stroke()),B&&(e.strokeStyle=L.color,e.lineWidth=L.width,e.beginPath(),e.moveTo(M,N+ee),e.lineTo(M+P,N+ee),e.stroke());let V=`#${t.series[0]?.color??Wn(t,0,3)}`,ne=`#${Wn(t,1,3)}`,re=`#${Wn(t,2,3)}`,ie=t.series[0]?.color?{fillType:`solid`,color:t.series[0].color}:Kn(t,0,3),ae=Kn(t,1,3),oe=Kn(t,2,3),H=P/d,se=H/(1+(t.barGapWidth??150)/100);m.forEach((n,a)=>{let o=M+H*a+(H-se)/2,s=Math.min(F(n.start),F(n.end)),u=Math.max(F(n.start),F(n.end)),f=Math.max(1,u-s);t.chartexDataPointStyle?.fillHidden||(e.fillStyle=qn(e,n.isSub?oe:n.isPos?ie:ae,o,s,se,f,n.isSub?re:n.isPos?V:ne,i),e.fillRect(o,s,se,f));let p=n.isSub?2:+!n.isPos,m=Hn(t,t.chartexDataPointStyle,`line`,p,3);if(m&&Jn(e,t,t.chartexDataPointStyle,p,3,m,r)&&e.strokeRect(o,s,se,f),a<d-1){let i=M+H*(a+1)+(H-se)/2,c=n.isPos?s:u;e.save(),Jn(e,t,t.chartexDataPointLineStyle,p,3,`#ccc`,r)&&(t.chartexDataPointLineStyle?.lineWidthEmu||(e.lineWidth=.8),e.beginPath(),e.moveTo(o+se,c),e.lineTo(i,c),e.stroke()),e.restore()}let h=l[a]??0,g=Ge(h,t.dataLabelFormatCode??t.series[0]?.valFormatCode??null,t.date1904),_=t.series[0]?.dataLabelColors?.[a]??null;e.fillStyle=_?`#${_}`:t.dataLabelFontColor?`#${t.dataLabelFontColor}`:`#595959`;let v=$t(t.dataLabelFontSizeHpt,c,r);e.font=`${t.dataLabelFontBold?`bold `:``}${v}px ${wt(t,t.dataLabelFontFace,`minor`)}`,e.textAlign=`center`,h<0?(e.textBaseline=`top`,e.fillText(g,o+se/2,u+3)):(e.textBaseline=`bottom`,e.fillText(g,o+se/2,s-3))}),e.textAlign=`center`,e.textBaseline=`top`,e.fillStyle=t.catAxisFontColor?`#${t.catAxisFontColor}`:`#595959`,e.font=`${t.catAxisFontBold?`bold `:``}${S}px ${w}`;let ce=N+ee+4;for(let n=0;n<d;n++){let r=M+H*n+H/2;nn(e,Ke(u[n],t.catAxisFormatCode,t.date1904),Math.max(1,H-8)).forEach((t,n)=>e.fillText(t,r,ce+n*(S+2)))}At(e,t,a,o,s,c,M,N,P,ee,0,0,b.catFontPx,b.valFontPx),e.restore()}function Xn(e){if(e.length===0)return 0;let t=Math.floor(e.length/2);return e.length%2==0?(e[t-1]+e[t])/2:e[t]}function Zn(e,t){if(e.length===0)return null;let n=[...e].sort((e,t)=>e-t),r=Math.floor(n.length/2),i=Xn(n),a=t===`inclusive`&&n.length%2==1,o=n.slice(0,r+ +!!a),s=n.slice(r+ +(n.length%2==1&&!a)),c=Xn(o.length?o:n),l=Xn(s.length?s:n),u=l-c,d=c-1.5*u,f=l+1.5*u,p=[],m=[];for(let e of n)e<d||e>f?m.push(e):p.push(e);return{q1:c,median:i,q3:l,whiskerLo:p.length?p[0]:n[0],whiskerHi:p.length?p[p.length-1]:n[n.length-1],mean:e.reduce((e,t)=>e+t,0)/e.length,outliers:m,inner:p}}function Qn(e,t,n,r,i){let a=t.chartexBox;if(!a||a.categories.length===0||a.series.length===0)return;let{x:o,y:s,w:c,h:l}=n,u=1/0,d=-1/0;for(let e of a.series)for(let t of e.valuesByCategory)for(let e of t)e<u&&(u=e),e>d&&(d=e);if(!isFinite(u)||!isFinite(d))return;let f=wt(t,t.valAxisFontFace,`minor`),p=$t(t.valAxisFontSizeHpt,l,r),m=ke(u,d,t.valMin,t.valMax,l/r,t.valAxisMajorUnit),h=0;if(!t.valAxisHidden){let n=e.font;e.font=`${t.valAxisFontBold?`bold `:``}${p}px ${f}`;let r=0,i=Math.min(1e3,Math.max(0,Math.round((m.max-m.min)/m.step)));for(let n=0;n<=i;n++){let i=Ge(m.min+n*m.step,t.valAxisFormatCode,t.date1904);r=Math.max(r,e.measureText(i).width)}e.font=n,h=r+8}let g=Se(t,l,r),_=$t(t.catAxisFontSizeHpt,l,r),v=$t(t.valAxisFontSizeHpt,l,r),y=xe(t,c,l,r),b=_e(t,c,l,.22),{legRightW:x,legLeftW:S,legTopH:C,legBottomH:w}=ve(b),T=q(t,o,s,c,l,r,{titleBand:g,legendSideReserveFrac:.22,pad:{t:g.bandH+C+v/2+2,r:x+c*.02,b:w+y.catBandH+(t.catAxisHidden?l*.02:Ce(_)),l:S+y.valBandW+(t.valAxisHidden?c*.02:h)}});un(e,t,o,s,c,l,s+T.title.topPad,T.title.fontPx);let{px0:E,py0:D,pw:O,ph:k}=T.plotRect,A=a.categories,j=A.length,M=a.series.length,N=j===M&&A.every((e,t)=>{let n=a.series.map((e,n)=>({seriesIndex:n,populated:(e.valuesByCategory[t]?.length??0)>0})).filter(e=>e.populated);return n.length===1&&n[0].seriesIndex===t}),{min:P,max:ee,step:te}=ke(u,d,t.valMin,t.valMax,k/r,t.valAxisMajorUnit),F=ee-P||1,I=e=>D+k*(1-(e-P)/F),L=Fe(t.valAxisLineColor,t.valAxisLineWidthEmu,r),R=Ie(t.valAxisGridlineColor,t.valAxisGridlineWidthEmu,r);if(e.save(),!t.valAxisHidden){e.font=`${t.valAxisFontBold?`bold `:``}${p}px ${f}`,e.textAlign=`right`,e.textBaseline=`middle`;for(let n=P;n<=ee+1e-6;n+=te){let r=I(n);t.valAxisMajorGridlines!==!1&&(e.strokeStyle=R.color,e.lineWidth=R.width,e.beginPath(),e.moveTo(E,r),e.lineTo(E+O,r),e.stroke()),e.fillStyle=t.valAxisFontColor?`#${t.valAxisFontColor}`:`#595959`,e.fillText(Ge(n,t.valAxisFormatCode,t.date1904),E-4,r),Bt(e,t.valAxisMajorTickMark,`val`,E,r,L.color,L.width)}t.valAxisLineHidden||(e.strokeStyle=L.color,e.lineWidth=L.width,e.beginPath(),e.moveTo(E,D),e.lineTo(E,D+k),e.stroke())}!t.catAxisHidden&&!t.catAxisLineHidden&&(e.strokeStyle=`#bfbfbf`,e.lineWidth=1,e.beginPath(),e.moveTo(E,D+k),e.lineTo(E+O,D+k),e.stroke());let z=O/(j+1),B=z/(1+(t.barGapWidth??150)/100),V=B*.06,ne=(B-V*(M-1))/M,re=e=>`#${a.series[e].color??Wn(t,e,M)}`,ie=e=>a.series[e].color?{fillType:`solid`,color:a.series[e].color}:Kn(t,e,M),ae=a.series.map(e=>e.valuesByCategory.map(t=>Zn(t,e.quartileMethod))),oe=(e,t)=>{let n=E+z*(e+1)-B/2,r=N?B:ne,i=N?n:n+t*(r+V);return{bx:i,boxW:r,cx:i+r/2}};for(let n=0;n<M;n++){let i=a.series[n];if(!i.meanLine)continue;let o=t.chartexDataPointLineStyle??t.chartexDataPointStyle,s=i.lineColor?`#${i.lineColor}`:re(n);if(e.save(),Jn(e,t,o,n,M,s,r)||i.lineColor!=null){i.lineColor&&(e.strokeStyle=s),i.lineWidthEmu&&(e.lineWidth=Pe(i.lineWidthEmu,r));let t=!1;e.beginPath();for(let r=0;r<j;r++){let i=ae[n][r];if(!i){t=!1;continue}let{cx:a}=oe(r,n),o=I(i.mean);t?e.lineTo(a,o):e.moveTo(a,o),t=!0}e.stroke()}e.restore()}let H=$t(t.catAxisFontSizeHpt,l,r);for(let n=0;n<j;n++){let o=E+z*(n+1);for(let o=0;o<M;o++){let s=a.series[o],c=ae[o][n];if(!c)continue;let{bx:l,boxW:u,cx:d}=oe(n,o),f=re(o),p=ie(o),m=t.chartexDataPointStyle,h=t.chartexDataPointLineStyle??m,g=t.chartexDataPointMarkerStyle??m,_=Hn(t,m,`line`,o,M),v=s.lineColor?`#${s.lineColor}`:_?`#${_}`:f,y=s.lineWidthEmu?Pe(s.lineWidthEmu,r):m?.lineWidthEmu==null?1:Pe(m.lineWidthEmu,r),b=Hn(t,h,`line`,o,M),x=Hn(t,g,`fill`,o,M),S=Gn(g,o)??p,C=Hn(t,g,`line`,o,M),w=(n,i)=>{let a=Jn(e,t,n,o,M,i,r);return s.lineColor&&(e.strokeStyle=v),s.lineWidthEmu&&(e.lineWidth=y),a||s.lineColor!=null},T=I(c.q1),E=I(c.q3),D=Math.min(T,E),O=Math.max(1,Math.abs(T-E)),k=u*.4;w(h,b??v)&&(e.beginPath(),e.moveTo(d,I(c.whiskerHi)),e.lineTo(d,E),e.moveTo(d,T),e.lineTo(d,I(c.whiskerLo)),e.moveTo(d-k/2,I(c.whiskerHi)),e.lineTo(d+k/2,I(c.whiskerHi)),e.moveTo(d-k/2,I(c.whiskerLo)),e.lineTo(d+k/2,I(c.whiskerLo)),e.stroke()),m?.fillHidden||(e.fillStyle=qn(e,p,l,D,u,O,f,i),e.fillRect(l,D,u,O)),w(m,v)&&e.strokeRect(l+y/2,D+y/2,u-y,O-y);let A=I(c.median);if(w(h,b??v)&&(e.beginPath(),e.moveTo(l,A),e.lineTo(l+u,A),e.stroke()),s.showNonoutliers){let t=Math.max(1.25,u*.045),n=w(g,C??v);for(let r of c.inner){let a=I(r);e.fillStyle=qn(e,S,d-t,a-t,t*2,t*2,x?`#${x}`:f,i),e.beginPath(),e.arc(d,a,t,0,Math.PI*2),g?.fillHidden||e.fill(),n&&e.stroke()}}if(s.meanMarker){let t=I(c.mean),n=Math.max(2,u*.14);w(g,C??v)&&(e.beginPath(),e.moveTo(d-n,t-n),e.lineTo(d+n,t+n),e.moveTo(d+n,t-n),e.lineTo(d-n,t+n),e.stroke())}if(s.showOutliers){let t=w(g,C??v),n=Math.max(1.5,u*.06);for(let r of c.outliers){let a=I(r);e.fillStyle=qn(e,S,d-n,a-n,n*2,n*2,x?`#${x}`:f,i),e.beginPath(),e.arc(d,a,n,0,Math.PI*2),g?.fillHidden||e.fill(),t&&e.stroke()}}}if(!t.catAxisHidden){e.font=`${H}px ${wt(t,t.catAxisFontFace,`minor`)}`,e.fillStyle=t.catAxisFontColor?`#${t.catAxisFontColor}`:`#595959`,e.textAlign=`center`,e.textBaseline=`top`;let r=A[n];e.fillText(r,o,D+k+4)}}e.restore(),At(e,t,o,s,c,l,E,D,O,k,S,w,y.catFontPx,y.valFontPx),zt(e,{...t,series:a.series.map((e,n)=>({name:e.name,values:[],color:e.color??Wn(t,n,M)}))},b,o,s,c,l,E,D,O,k,g.bandH+2,r,a.series.map((e,t)=>ie(t)),i)}function $n(e){let t={label:``,value:0,depth:-1,children:[],branchIndex:-1,labelIndex:-1,a0:0,a1:0},n=new WeakMap;for(let r of e){let e=t;for(let t=0;t<r.path.length;t++){let i=r.path[t],a=n.get(e);a||(a=new Map,n.set(e,a));let o=a.get(i);o||(o={label:i,value:0,depth:t,children:[],branchIndex:t===0?e.children.length:e.branchIndex,labelIndex:-1,a0:0,a1:0},e.children.push(o),a.set(i,o)),o.value+=r.size,e=o}}t.value=t.children.reduce((e,t)=>e+t.value,0);let r=0,i=e=>{for(let t of e.children)t.labelIndex=r++,i(t)};return i(t),t}function er(e){let t=e.children.reduce((e,t)=>e+t.value,0);if(t<=0)return;let n=e.a0;for(let r of e.children){let i=(e.a1-e.a0)*r.value/t;r.a0=n,r.a1=n+i,n=r.a1,er(r)}}function tr(e){return e.children.length===0?e.depth:Math.max(...e.children.map(tr))}function nr(e,t,n,r,i){let a=t.chartexSunburst;if(!a||a.rows.length===0)return;let{x:o,y:s,w:c,h:l}=n,u=q(t,o,s,c,l,r,{titleTopPadFrac:.035,titleBottomPadFrac:.035,legendSideReserveFrac:0,radialGapFrac:.02});un(e,t,o,s,c,l,s+u.title.topPad,u.title.fontPx);let{px0:d,py0:f,pw:p,ph:m}=u.plotRect,h=d+p/2,g=f+m/2,_=Math.min(p,m)*.46,v=$n(a.rows);if(v.value<=0||v.children.length===0)return;v.a0=-Math.PI/2,v.a1=-Math.PI/2+Math.PI*2,er(v);let y=tr(v)+1,b=_*.18,x=(_-b)/y,S=e=>`#${Wn(t,e,v.children.length)}`,C=e=>Kn(t,e,v.children.length),w=wt(t,t.dataLabelFontFace,`minor`),T=Math.max(7,Math.min(13,_*.075)),E=Array.from({length:y},()=>[]),D=e=>{e.depth>=0&&E[e.depth].push(e),e.children.forEach(D)};D(v),e.save();for(let n=0;n<y;n++){let a=b+n*x,o=a+x;for(let s of E[n]){let n=s.a1-s.a0;if(n<=1e-4)continue;e.beginPath(),e.arc(h,g,o,s.a0,s.a1),e.arc(h,g,a,s.a1,s.a0,!0),e.closePath(),t.chartexDataPointStyle?.fillHidden||(e.fillStyle=qn(e,C(s.branchIndex),h-o,g-o,o*2,o*2,S(s.branchIndex),i),e.fill()),Jn(e,t,t.chartexDataPointStyle,s.branchIndex,v.children.length,`#ffffff`,r)&&e.stroke();let c=(s.a0+s.a1)/2,l=(a+o)/2,u=x-4,d=n*l;if(u<T*.9&&d<T*.9)continue;e.save(),e.translate(h+Math.cos(c)*l,g+Math.sin(c)*l);let f=c,p=f*180/Math.PI%360;(p>90||p<-90)&&(f+=Math.PI),e.rotate(f),e.font=`${T}px ${w}`,e.fillStyle=`#ffffff`,e.textAlign=`center`,e.textBaseline=`middle`;let m=s.label.split(/\\s+/).filter(Boolean),_=u-2,y=[],b=``;for(let t of m){let n=b?`${b} ${t}`:t;if(e.measureText(n).width<=_){b=n;continue}if(b&&=(y.push(b),``),e.measureText(t).width<=_){b=t;continue}let r=``;for(let n of t){let t=r+n;r&&e.measureText(t).width>_?(y.push(r),r=n):r=t}b=r}b&&y.push(b);let E=T*1.05,D=Math.max(1,Math.floor(d/E)),O=y.slice(0,D).map(t=>Qe(e,t,_)),k=O.length*E;O.forEach((t,n)=>{t!==``&&e.fillText(t,0,-k/2+E/2+n*E)}),e.restore()}}e.restore()}function rr(e,t){let n=e.map((e,t)=>({node:e,index:t,value:Math.max(0,e.value)})).filter(e=>e.value>0).sort((e,t)=>t.value-e.value||e.index-t.index),r=n.reduce((e,t)=>e+t.value,0);if(r<=0||t.w<=0||t.h<=0)return[];let i=t.w*t.h/r,a=n.map(e=>({...e,area:e.value*i})),o=[],s={...t},c=[],l=0,u=1/0,d=0,f=(e,t,n,r)=>{if(e<=0||t<=0||r<=0)return 1/0;let i=r*r;return Math.max(i*n/(e*e),e*e/(i*t))},p=(e,t)=>{if(e.length!==0)if(s.w>=s.h){let n=s.h>0?t/s.h:0,r=s.y;for(let t=0;t<e.length;t++){let i=t===e.length-1?s.y+s.h-r:e[t].area/n;o.push({node:e[t].node,rect:{x:s.x,y:r,w:n,h:i}}),r+=i}s={x:s.x+n,y:s.y,w:Math.max(0,s.w-n),h:s.h}}else{let n=s.w>0?t/s.w:0,r=s.x;for(let t=0;t<e.length;t++){let i=t===e.length-1?s.x+s.w-r:e[t].area/n;o.push({node:e[t].node,rect:{x:r,y:s.y,w:i,h:n}}),r+=i}s={x:s.x,y:s.y+n,w:s.w,h:Math.max(0,s.h-n)}}},m=0;for(;m<a.length;){let e=a[m],t=Math.min(s.w,s.h),n=l+e.area,r=Math.min(u,e.area),i=Math.max(d,e.area);c.length===0||f(n,r,i,t)<=f(l,u,d,t)?(c.push(e),l=n,u=r,d=i,m++):(p(c,l),c=[],l=0,u=1/0,d=0)}return p(c,l),o}function ir(e,t,n,r,i){let a=t.chartexTreemap;if(!a||a.rows.length===0)return;let o=q(t,n.x,n.y,n.w,n.h,r,{titleTopPadFrac:.035,titleBottomPadFrac:.035,legendSideReserveFrac:0,radialGapFrac:.015});un(e,t,n.x,n.y,n.w,n.h,n.y+o.title.topPad,o.title.fontPx);let s=$n(a.rows);if(s.value<=0||s.children.length===0)return;let c=wt(t,t.dataLabelFontFace,`minor`),l=a.parentLabelLayout??`overlapping`,u=t.series[0]?.seriesDataLabels,d=u?.fontSizeHpt?u.fontSizeHpt/100*r:Math.max(8,Math.min(13,o.plotRect.ph*.025)),f=u?.fontColor?`#${u.fontColor}`:`#ffffff`,p=new Map((t.series[0]?.dataLabelOverrides??[]).map(e=>[e.idx,e])),m=(n,a)=>{if(a.w<.5||a.h<.5)return;let o=`#${Wn(t,n.branchIndex,s.children.length)}`,h=Kn(t,n.branchIndex,s.children.length),g=p.get(n.labelIndex),_=g?.fontColor?`#${g.fontColor}`:f,v=g?.fontSizeHpt?g.fontSizeHpt/100*r:d,y=g?.fontBold??u?.fontBold??!1;if(n.children.length>0){let r=l!==`none`&&(l!==`overlapping`||n.depth===0),s=v,u=l===`banner`&&r?Math.min(a.h*.28,s+7):0;u>0&&!t.chartexDataPointStyle?.fillHidden&&(e.fillStyle=qn(e,h,a.x,a.y,a.w,u,o,i),e.fillRect(a.x,a.y,a.w,u));let d={x:a.x,y:a.y+u,w:a.w,h:Math.max(0,a.h-u)};for(let e of rr(n.children,d))m(e.node,e.rect);if(r&&a.w>s*2&&a.h>s+4){e.font=`${y?`bold `:``}${s}px ${c}`,e.fillStyle=_,e.textAlign=`left`,e.textBaseline=`top`;let t=Qe(e,g?.text||n.label,a.w-8);t&&e.fillText(t,a.x+4,a.y+3)}return}t.chartexDataPointStyle?.fillHidden||(e.fillStyle=qn(e,h,a.x,a.y,a.w,a.h,o,i),e.fillRect(a.x,a.y,a.w,a.h)),Jn(e,t,t.chartexDataPointStyle,n.branchIndex,s.children.length,`#ffffff`,r)&&e.strokeRect(a.x,a.y,a.w,a.h);let b=v;if(a.w<=b*1.2||a.h<=b*1.2)return;e.font=`${y?`bold `:``}${b}px ${c}`,e.fillStyle=_;let x=[];g?.text?x.push(g.text):((u?.showCatName??!0)&&x.push(n.label),u?.showVal&&x.push(Ge(n.value,u.formatCode??t.series[0]?.valFormatCode??null,t.date1904)));let S=x.join(u?.separator??` `).split(/\\r?\\n/).flatMap(t=>nn(e,t,Math.max(1,a.w-8))),C=b*1.1,w=u?.position??`ctr`,T=Math.max(0,Math.floor((a.h-6)/C));if(e.save(),e.beginPath(),e.rect(a.x,a.y,a.w,a.h),e.clip(),w===`inEnd`){e.textAlign=`left`,e.textBaseline=`bottom`;let t=S.slice(Math.max(0,S.length-T)),n=a.y+a.h-4;t.forEach((r,i)=>{r&&e.fillText(r,a.x+4,n-(t.length-1-i)*C)})}else{e.textAlign=`center`,e.textBaseline=`middle`;let t=S.slice(0,T),n=a.y+a.h/2-(t.length-1)*C/2;t.forEach((t,r)=>{t&&e.fillText(t,a.x+a.w/2,n+r*C)})}e.restore()};e.save();let{px0:h,py0:g,pw:_,ph:v}=o.plotRect;e.beginPath(),e.rect(h,g,_,v),e.clip();for(let e of rr(s.children,{x:h,y:g,w:_,h:v}))m(e.node,e.rect);e.restore()}function ar(e,t,n,r){let i=t.chartTextBoxes;if(i?.length)for(let a of i){let i=n.x+a.x*n.w,o=n.y+a.y*n.h,s=a.w*n.w,c=a.h*n.h;if(!(s>0&&c>0))continue;let l=(e,t)=>{let n=Math.max(1,...t.map(e=>e.fontPx));return{paragraph:e,runs:t,width:t.reduce((e,t)=>e+t.width,0),height:n*1.2,baseline:n*.9}},u=a.paragraphs.flatMap(n=>{let i=n.runs.map(n=>{let i=Math.max(1,(n.fontSizeHpt??1e3)/100*r),a=`${n.bold?`bold `:``}${i}px ${wt(t,n.fontFace,`minor`)}`;return e.font=a,{run:n,text:n.text,fontPx:i,font:a,width:e.measureText(n.text).width}}),o=i.reduce((e,t)=>e+t.width,0);if(a.wrap===`none`||o<=s)return[l(n,i)];let c=[],u=[],d=0,f=()=>{u.length&&(c.push(l(n,u)),u=[],d=0)};for(let t of i){let n=t.text.match(/\\s+|\\S+/g)??[];for(let r of n){let n=/^\\s+$/.test(r);e.font=t.font;let i=e.measureText(r).width;u.length&&d+i>s&&f(),!(n&&!u.length)&&(u.push({...t,text:r,width:i}),d+=i)}}return f(),c.length?c:[l(n,i)]}),d=u.reduce((e,t)=>e+t.height,0),f=a.verticalAnchor===`b`?o+c-d:a.verticalAnchor===`ctr`?o+(c-d)/2:o;e.save(),e.beginPath(),e.rect(i,o,s,c),e.clip(),e.textAlign=`left`,e.textBaseline=`alphabetic`;let p=f;for(let t of u){let n=t.paragraph.align,r=n===`ctr`?i+(s-t.width)/2:n===`r`?i+s-t.width:i;for(let n of t.runs)e.font=n.font,e.fillStyle=n.run.color?`#${n.run.color}`:`#000000`,e.fillText(n.text,r,p+t.baseline),r+=n.width;p+=t.height}e.restore()}}function or(e,t,n,r=1.3333333333333333,i=0){e.save();try{let{x:a,y:o,w:s,h:c}=n;if(t.chartBg&&(e.fillStyle=`#${t.chartBg}`,e.fillRect(a,o,s,c)),t.chartBorderColor){e.save(),e.strokeStyle=`#${t.chartBorderColor}`,e.lineWidth=t.chartBorderWidthEmu?Math.max(.5,t.chartBorderWidthEmu/Ne)*r:1;let n=e.lineWidth;e.strokeRect(a+n/2,o+n/2,s-n,c-n),e.restore()}let l=t.chartexBox!=null||t.chartexSunburst!=null||t.chartexTreemap!=null;if(t.series.length===0&&!l){e.fillStyle=`#888`,e.font=`12px sans-serif`,e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(`(no data)`,a+s/2,o+c/2),ar(e,t,n,r);return}switch(t.chartType){case`clusteredBar`:case`clusteredBarH`:case`stackedBar`:case`stackedBarH`:case`stackedBarPct`:case`stackedBarHPct`:pn(e,t,n,r);break;case`line`:case`stackedLine`:case`stackedLinePct`:mn(e,t,n,r);break;case`area`:case`stackedArea`:case`stackedAreaPct`:gn(e,t,n,r);break;case`pie`:_n(e,t,n,!1,r);break;case`doughnut`:_n(e,t,n,!0,r);break;case`radar`:wn(e,t,n,r);break;case`scatter`:case`bubble`:jn(e,t,n,r);break;case`waterfall`:Yn(e,t,n,r,i);break;case`stock`:hn(e,t,n,r);break;case`boxWhisker`:Qn(e,t,n,r,i);break;case`sunburst`:nr(e,t,n,r,i);break;case`treemap`:ir(e,t,n,r,i);break;default:e.fillStyle=`#888`,e.font=`11px sans-serif`,e.textAlign=`center`,e.textBaseline=`middle`,e.fillText(`Chart: ${t.chartType}`,a+s/2,o+c/2)}ar(e,t,n,r)}finally{e.restore()}}function sr(e,t,n,r,i,a){for(let o of t){let t=0,s=0;for(let c of o)switch(c.cmd){case`moveTo`:e.moveTo(n+c.x*i,r+c.y*a),t=c.x,s=c.y;break;case`lineTo`:e.lineTo(n+c.x*i,r+c.y*a),t=c.x,s=c.y;break;case`cubicBezTo`:e.bezierCurveTo(n+c.x1*i,r+c.y1*a,n+c.x2*i,r+c.y2*a,n+c.x*i,r+c.y*a),t=c.x,s=c.y;break;case`quadBezTo`:e.quadraticCurveTo(n+c.x1*i,r+c.y1*a,n+c.x*i,r+c.y*a),t=c.x,s=c.y;break;case`arcTo`:{let o=c.wr*i,l=c.hr*a;if(o<=0||l<=0)break;let u=c.stAng*Math.PI/180,d=c.swAng*Math.PI/180,f=n+t*i,p=r+s*a,m=f-o*Math.cos(u),h=p-l*Math.sin(u),g=u+d;e.ellipse(m,h,o,l,0,u,g,d<0),t=(m+o*Math.cos(g)-n)/i,s=(h+l*Math.sin(g)-r)/a;break}case`close`:e.closePath();break}}}const cr=1e-9;function lr(e){return e.cmd===`lineTo`||e.cmd===`cubicBezTo`||e.cmd===`quadBezTo`||e.cmd===`arcTo`}function ur(e,t,n,r){let i=n===0?0:n,a=r===0?0:r;return{x:e,y:t,dx:i,dy:a,angle:Math.atan2(a,i)}}function dr(e,t,n){switch(n.cmd){case`lineTo`:return{dx:n.x-e,dy:n.y-t};case`cubicBezTo`:{let r=n.x1-e,i=n.y1-t;return Math.abs(r)<cr&&Math.abs(i)<cr&&(r=n.x2-e,i=n.y2-t),Math.abs(r)<cr&&Math.abs(i)<cr&&(r=n.x-e,i=n.y-t),{dx:r,dy:i}}case`quadBezTo`:{let r=n.x1-e,i=n.y1-t;return Math.abs(r)<cr&&Math.abs(i)<cr&&(r=n.x-e,i=n.y-t),{dx:r,dy:i}}case`arcTo`:{let e=n.stAng*Math.PI/180,t=n.swAng<0?-1:1;return{dx:-n.wr*Math.sin(e)*t,dy:n.hr*Math.cos(e)*t}}default:return{dx:0,dy:0}}}function fr(e,t,n){switch(n.cmd){case`moveTo`:case`lineTo`:case`cubicBezTo`:case`quadBezTo`:return{x:n.x,y:n.y};case`arcTo`:{if(n.wr<=0||n.hr<=0)return{x:e,y:t};let r=n.stAng*Math.PI/180,i=r+n.swAng*Math.PI/180,a=e-n.wr*Math.cos(r),o=t-n.hr*Math.sin(r);return{x:a+n.wr*Math.cos(i),y:o+n.hr*Math.sin(i)}}default:return{x:e,y:t}}}function pr(e,t,n){let{x:r,y:i}=fr(e,t,n);switch(n.cmd){case`lineTo`:return{dx:n.x-e,dy:n.y-t,x:r,y:i};case`cubicBezTo`:{let a=n.x-n.x2,o=n.y-n.y2;return Math.abs(a)<cr&&Math.abs(o)<cr&&(a=n.x-n.x1,o=n.y-n.y1),Math.abs(a)<cr&&Math.abs(o)<cr&&(a=n.x-e,o=n.y-t),{dx:a,dy:o,x:r,y:i}}case`quadBezTo`:{let a=n.x-n.x1,o=n.y-n.y1;return Math.abs(a)<cr&&Math.abs(o)<cr&&(a=n.x-e,o=n.y-t),{dx:a,dy:o,x:r,y:i}}case`arcTo`:{if(n.wr<=0||n.hr<=0)return{dx:0,dy:0,x:r,y:i};let e=n.stAng*Math.PI/180+n.swAng*Math.PI/180,t=n.swAng<0?-1:1;return{dx:-n.wr*Math.sin(e)*t,dy:n.hr*Math.cos(e)*t,x:r,y:i}}default:return{dx:0,dy:0,x:r,y:i}}}function mr(e){let t=0,n=0,r=!1;for(let i of e)i.cmd===`moveTo`&&(r=!0),{x:t,y:n}=fr(t,n,i);return r?{x:t,y:n}:null}function hr(e){if(e.some(e=>e.cmd===`close`))return!0;let t=e.find(e=>e.cmd===`moveTo`);if(!t)return!1;let n=mr(e);return!n||!e.some(lr)?!1:Math.abs(n.x-t.x)<cr&&Math.abs(n.y-t.y)<cr}function gr(e){let t={start:null,end:null};if(!e||e.length===0)return t;let n=e[0];if(n&&n.length>0&&!hr(n)){let e=n.find(e=>e.cmd===`moveTo`),r=n.find(lr);if(e&&r){let n=dr(e.x,e.y,r);(Math.abs(n.dx)>cr||Math.abs(n.dy)>cr)&&(t.start=ur(e.x,e.y,-n.dx,-n.dy))}}let r=e[e.length-1];if(r&&r.length>0&&!hr(r)){let e=0,n=0,i=-1;for(let e=0;e<r.length;e++)lr(r[e])&&(i=e);if(i>=0){for(let t=0;t<i;t++)({x:e,y:n}=fr(e,n,r[t]));let a=pr(e,n,r[i]);(Math.abs(a.dx)>cr||Math.abs(a.dy)>cr)&&(t.end=ur(a.x,a.y,a.dx,a.dy))}}return t}var _r={accentbordercallout1:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 112500`],[`adj4`,`val -38333`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`t`],[`c`],[`l`,`x1`,`b`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`]]}]},accentbordercallout2:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 18750`],[`adj4`,`val -16667`],[`adj5`,`val 112500`],[`adj6`,`val -46667`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`],[`y3`,`*/ h adj5 100000`],[`x3`,`*/ w adj6 100000`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`t`],[`c`],[`l`,`x1`,`b`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`],[`l`,`x3`,`y3`]]}]},accentbordercallout3:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 18750`],[`adj4`,`val -16667`],[`adj5`,`val 100000`],[`adj6`,`val -16667`],[`adj7`,`val 112963`],[`adj8`,`val -8333`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`],[`y3`,`*/ h adj5 100000`],[`x3`,`*/ w adj6 100000`],[`y4`,`*/ h adj7 100000`],[`x4`,`*/ w adj8 100000`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`t`],[`c`],[`l`,`x1`,`b`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`],[`l`,`x3`,`y3`],[`l`,`x4`,`y4`]]}]},accentcallout1:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 112500`],[`adj4`,`val -38333`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`t`],[`c`],[`l`,`x1`,`b`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`]]}]},accentcallout2:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 18750`],[`adj4`,`val -16667`],[`adj5`,`val 112500`],[`adj6`,`val -46667`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`],[`y3`,`*/ h adj5 100000`],[`x3`,`*/ w adj6 100000`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`t`],[`c`],[`l`,`x1`,`b`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`],[`l`,`x3`,`y3`]]}]},accentcallout3:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 18750`],[`adj4`,`val -16667`],[`adj5`,`val 100000`],[`adj6`,`val -16667`],[`adj7`,`val 112963`],[`adj8`,`val -8333`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`],[`y3`,`*/ h adj5 100000`],[`x3`,`*/ w adj6 100000`],[`y4`,`*/ h adj7 100000`],[`x4`,`*/ w adj8 100000`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`t`],[`c`],[`l`,`x1`,`b`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`],[`l`,`x3`,`y3`],[`l`,`x4`,`y4`]]}]},actionbuttonbackprevious:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g10`,`+- vc dx2 0`],[`g11`,`+- hc 0 dx2`],[`g12`,`+- hc dx2 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`g11`,`vc`],[`l`,`g12`,`g9`],[`l`,`g12`,`g10`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g11`,`vc`],[`l`,`g12`,`g9`],[`l`,`g12`,`g10`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`g11`,`vc`],[`l`,`g12`,`g9`],[`l`,`g12`,`g10`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttonbeginning:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g10`,`+- vc dx2 0`],[`g11`,`+- hc 0 dx2`],[`g12`,`+- hc dx2 0`],[`g13`,`*/ ss 3 4`],[`g14`,`*/ g13 1 8`],[`g15`,`*/ g13 1 4`],[`g16`,`+- g11 g14 0`],[`g17`,`+- g11 g15 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`g17`,`vc`],[`l`,`g12`,`g9`],[`l`,`g12`,`g10`],[`c`],[`m`,`g16`,`g9`],[`l`,`g11`,`g9`],[`l`,`g11`,`g10`],[`l`,`g16`,`g10`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g17`,`vc`],[`l`,`g12`,`g9`],[`l`,`g12`,`g10`],[`c`],[`m`,`g16`,`g9`],[`l`,`g11`,`g9`],[`l`,`g11`,`g10`],[`l`,`g16`,`g10`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`g17`,`vc`],[`l`,`g12`,`g9`],[`l`,`g12`,`g10`],[`c`],[`m`,`g16`,`g9`],[`l`,`g16`,`g10`],[`l`,`g11`,`g10`],[`l`,`g11`,`g9`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttonblank:{adj:[],gd:[],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttondocument:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g10`,`+- vc dx2 0`],[`dx1`,`*/ ss 9 32`],[`g11`,`+- hc 0 dx1`],[`g12`,`+- hc dx1 0`],[`g13`,`*/ ss 3 16`],[`g14`,`+- g12 0 g13`],[`g15`,`+- g9 g13 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`g11`,`g9`],[`l`,`g14`,`g9`],[`l`,`g12`,`g15`],[`l`,`g12`,`g10`],[`l`,`g11`,`g10`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g11`,`g9`],[`l`,`g14`,`g9`],[`l`,`g14`,`g15`],[`l`,`g12`,`g15`],[`l`,`g12`,`g10`],[`l`,`g11`,`g10`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g14`,`g9`],[`l`,`g14`,`g15`],[`l`,`g12`,`g15`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`g11`,`g9`],[`l`,`g14`,`g9`],[`l`,`g12`,`g15`],[`l`,`g12`,`g10`],[`l`,`g11`,`g10`],[`c`],[`m`,`g12`,`g15`],[`l`,`g14`,`g15`],[`l`,`g14`,`g9`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttonend:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g10`,`+- vc dx2 0`],[`g11`,`+- hc 0 dx2`],[`g12`,`+- hc dx2 0`],[`g13`,`*/ ss 3 4`],[`g14`,`*/ g13 3 4`],[`g15`,`*/ g13 7 8`],[`g16`,`+- g11 g14 0`],[`g17`,`+- g11 g15 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`g16`,`vc`],[`l`,`g11`,`g9`],[`l`,`g11`,`g10`],[`c`],[`m`,`g17`,`g9`],[`l`,`g12`,`g9`],[`l`,`g12`,`g10`],[`l`,`g17`,`g10`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g16`,`vc`],[`l`,`g11`,`g9`],[`l`,`g11`,`g10`],[`c`],[`m`,`g17`,`g9`],[`l`,`g12`,`g9`],[`l`,`g12`,`g10`],[`l`,`g17`,`g10`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`g16`,`vc`],[`l`,`g11`,`g10`],[`l`,`g11`,`g9`],[`c`],[`m`,`g17`,`g9`],[`l`,`g12`,`g9`],[`l`,`g12`,`g10`],[`l`,`g17`,`g10`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttonforwardnext:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g10`,`+- vc dx2 0`],[`g11`,`+- hc 0 dx2`],[`g12`,`+- hc dx2 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`g12`,`vc`],[`l`,`g11`,`g9`],[`l`,`g11`,`g10`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g12`,`vc`],[`l`,`g11`,`g9`],[`l`,`g11`,`g10`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`g12`,`vc`],[`l`,`g11`,`g10`],[`l`,`g11`,`g9`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttonhelp:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g11`,`+- hc 0 dx2`],[`g13`,`*/ ss 3 4`],[`g14`,`*/ g13 1 7`],[`g15`,`*/ g13 3 14`],[`g16`,`*/ g13 2 7`],[`g19`,`*/ g13 3 7`],[`g20`,`*/ g13 4 7`],[`g21`,`*/ g13 17 28`],[`g23`,`*/ g13 21 28`],[`g24`,`*/ g13 11 14`],[`g27`,`+- g9 g16 0`],[`g29`,`+- g9 g21 0`],[`g30`,`+- g9 g23 0`],[`g31`,`+- g9 g24 0`],[`g33`,`+- g11 g15 0`],[`g36`,`+- g11 g19 0`],[`g37`,`+- g11 g20 0`],[`g41`,`*/ g13 1 14`],[`g42`,`*/ g13 3 28`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`g33`,`g27`],[`a`,`g16`,`g16`,`cd2`,`cd2`],[`a`,`g14`,`g15`,`0`,`cd4`],[`a`,`g41`,`g42`,`3cd4`,`-5400000`],[`l`,`g37`,`g30`],[`l`,`g36`,`g30`],[`l`,`g36`,`g29`],[`a`,`g14`,`g15`,`cd2`,`cd4`],[`a`,`g41`,`g42`,`cd4`,`-5400000`],[`a`,`g14`,`g14`,`0`,`-10800000`],[`c`],[`m`,`hc`,`g31`],[`a`,`g42`,`g42`,`3cd4`,`21600000`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g33`,`g27`],[`a`,`g16`,`g16`,`cd2`,`cd2`],[`a`,`g14`,`g15`,`0`,`cd4`],[`a`,`g41`,`g42`,`3cd4`,`-5400000`],[`l`,`g37`,`g30`],[`l`,`g36`,`g30`],[`l`,`g36`,`g29`],[`a`,`g14`,`g15`,`cd2`,`cd4`],[`a`,`g41`,`g42`,`cd4`,`-5400000`],[`a`,`g14`,`g14`,`0`,`-10800000`],[`c`],[`m`,`hc`,`g31`],[`a`,`g42`,`g42`,`3cd4`,`21600000`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`g33`,`g27`],[`a`,`g16`,`g16`,`cd2`,`cd2`],[`a`,`g14`,`g15`,`0`,`cd4`],[`a`,`g41`,`g42`,`3cd4`,`-5400000`],[`l`,`g37`,`g30`],[`l`,`g36`,`g30`],[`l`,`g36`,`g29`],[`a`,`g14`,`g15`,`cd2`,`cd4`],[`a`,`g41`,`g42`,`cd4`,`-5400000`],[`a`,`g14`,`g14`,`0`,`-10800000`],[`c`],[`m`,`hc`,`g31`],[`a`,`g42`,`g42`,`3cd4`,`21600000`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttonhome:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g10`,`+- vc dx2 0`],[`g11`,`+- hc 0 dx2`],[`g12`,`+- hc dx2 0`],[`g13`,`*/ ss 3 4`],[`g14`,`*/ g13 1 16`],[`g15`,`*/ g13 1 8`],[`g16`,`*/ g13 3 16`],[`g17`,`*/ g13 5 16`],[`g18`,`*/ g13 7 16`],[`g19`,`*/ g13 9 16`],[`g20`,`*/ g13 11 16`],[`g21`,`*/ g13 3 4`],[`g22`,`*/ g13 13 16`],[`g23`,`*/ g13 7 8`],[`g24`,`+- g9 g14 0`],[`g25`,`+- g9 g16 0`],[`g26`,`+- g9 g17 0`],[`g27`,`+- g9 g21 0`],[`g28`,`+- g11 g15 0`],[`g29`,`+- g11 g18 0`],[`g30`,`+- g11 g19 0`],[`g31`,`+- g11 g20 0`],[`g32`,`+- g11 g22 0`],[`g33`,`+- g11 g23 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`hc`,`g9`],[`l`,`g11`,`vc`],[`l`,`g28`,`vc`],[`l`,`g28`,`g10`],[`l`,`g33`,`g10`],[`l`,`g33`,`vc`],[`l`,`g12`,`vc`],[`l`,`g32`,`g26`],[`l`,`g32`,`g24`],[`l`,`g31`,`g24`],[`l`,`g31`,`g25`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g32`,`g26`],[`l`,`g32`,`g24`],[`l`,`g31`,`g24`],[`l`,`g31`,`g25`],[`c`],[`m`,`g28`,`vc`],[`l`,`g28`,`g10`],[`l`,`g29`,`g10`],[`l`,`g29`,`g27`],[`l`,`g30`,`g27`],[`l`,`g30`,`g10`],[`l`,`g33`,`g10`],[`l`,`g33`,`vc`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`hc`,`g9`],[`l`,`g11`,`vc`],[`l`,`g12`,`vc`],[`c`],[`m`,`g29`,`g27`],[`l`,`g30`,`g27`],[`l`,`g30`,`g10`],[`l`,`g29`,`g10`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`hc`,`g9`],[`l`,`g31`,`g25`],[`l`,`g31`,`g24`],[`l`,`g32`,`g24`],[`l`,`g32`,`g26`],[`l`,`g12`,`vc`],[`l`,`g33`,`vc`],[`l`,`g33`,`g10`],[`l`,`g28`,`g10`],[`l`,`g28`,`vc`],[`l`,`g11`,`vc`],[`c`],[`m`,`g31`,`g25`],[`l`,`g32`,`g26`],[`m`,`g33`,`vc`],[`l`,`g28`,`vc`],[`m`,`g29`,`g10`],[`l`,`g29`,`g27`],[`l`,`g30`,`g27`],[`l`,`g30`,`g10`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttoninformation:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g11`,`+- hc 0 dx2`],[`g13`,`*/ ss 3 4`],[`g14`,`*/ g13 1 32`],[`g17`,`*/ g13 5 16`],[`g18`,`*/ g13 3 8`],[`g19`,`*/ g13 13 32`],[`g20`,`*/ g13 19 32`],[`g22`,`*/ g13 11 16`],[`g23`,`*/ g13 13 16`],[`g24`,`*/ g13 7 8`],[`g25`,`+- g9 g14 0`],[`g28`,`+- g9 g17 0`],[`g29`,`+- g9 g18 0`],[`g30`,`+- g9 g23 0`],[`g31`,`+- g9 g24 0`],[`g32`,`+- g11 g17 0`],[`g34`,`+- g11 g19 0`],[`g35`,`+- g11 g20 0`],[`g37`,`+- g11 g22 0`],[`g38`,`*/ g13 3 32`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`hc`,`g9`],[`a`,`dx2`,`dx2`,`3cd4`,`21600000`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`hc`,`g9`],[`a`,`dx2`,`dx2`,`3cd4`,`21600000`],[`c`],[`m`,`hc`,`g25`],[`a`,`g38`,`g38`,`3cd4`,`21600000`],[`m`,`g32`,`g28`],[`l`,`g32`,`g29`],[`l`,`g34`,`g29`],[`l`,`g34`,`g30`],[`l`,`g32`,`g30`],[`l`,`g32`,`g31`],[`l`,`g37`,`g31`],[`l`,`g37`,`g30`],[`l`,`g35`,`g30`],[`l`,`g35`,`g28`],[`c`]]},{w:null,h:null,fill:`lighten`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`hc`,`g25`],[`a`,`g38`,`g38`,`3cd4`,`21600000`],[`m`,`g32`,`g28`],[`l`,`g35`,`g28`],[`l`,`g35`,`g30`],[`l`,`g37`,`g30`],[`l`,`g37`,`g31`],[`l`,`g32`,`g31`],[`l`,`g32`,`g30`],[`l`,`g34`,`g30`],[`l`,`g34`,`g29`],[`l`,`g32`,`g29`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`hc`,`g9`],[`a`,`dx2`,`dx2`,`3cd4`,`21600000`],[`c`],[`m`,`hc`,`g25`],[`a`,`g38`,`g38`,`3cd4`,`21600000`],[`m`,`g32`,`g28`],[`l`,`g35`,`g28`],[`l`,`g35`,`g30`],[`l`,`g37`,`g30`],[`l`,`g37`,`g31`],[`l`,`g32`,`g31`],[`l`,`g32`,`g30`],[`l`,`g34`,`g30`],[`l`,`g34`,`g29`],[`l`,`g32`,`g29`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttonmovie:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g10`,`+- vc dx2 0`],[`g11`,`+- hc 0 dx2`],[`g12`,`+- hc dx2 0`],[`g13`,`*/ ss 3 4`],[`g14`,`*/ g13 1455 21600`],[`g15`,`*/ g13 1905 21600`],[`g16`,`*/ g13 2325 21600`],[`g17`,`*/ g13 16155 21600`],[`g18`,`*/ g13 17010 21600`],[`g19`,`*/ g13 19335 21600`],[`g20`,`*/ g13 19725 21600`],[`g21`,`*/ g13 20595 21600`],[`g22`,`*/ g13 5280 21600`],[`g23`,`*/ g13 5730 21600`],[`g24`,`*/ g13 6630 21600`],[`g25`,`*/ g13 7492 21600`],[`g26`,`*/ g13 9067 21600`],[`g27`,`*/ g13 9555 21600`],[`g28`,`*/ g13 13342 21600`],[`g29`,`*/ g13 14580 21600`],[`g30`,`*/ g13 15592 21600`],[`g31`,`+- g11 g14 0`],[`g32`,`+- g11 g15 0`],[`g33`,`+- g11 g16 0`],[`g34`,`+- g11 g17 0`],[`g35`,`+- g11 g18 0`],[`g36`,`+- g11 g19 0`],[`g37`,`+- g11 g20 0`],[`g38`,`+- g11 g21 0`],[`g39`,`+- g9 g22 0`],[`g40`,`+- g9 g23 0`],[`g41`,`+- g9 g24 0`],[`g42`,`+- g9 g25 0`],[`g43`,`+- g9 g26 0`],[`g44`,`+- g9 g27 0`],[`g45`,`+- g9 g28 0`],[`g46`,`+- g9 g29 0`],[`g47`,`+- g9 g30 0`],[`g48`,`+- g9 g31 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`g11`,`g39`],[`l`,`g11`,`g44`],[`l`,`g31`,`g44`],[`l`,`g32`,`g43`],[`l`,`g33`,`g43`],[`l`,`g33`,`g47`],[`l`,`g35`,`g47`],[`l`,`g35`,`g45`],[`l`,`g36`,`g45`],[`l`,`g38`,`g46`],[`l`,`g12`,`g46`],[`l`,`g12`,`g41`],[`l`,`g38`,`g41`],[`l`,`g37`,`g42`],[`l`,`g35`,`g42`],[`l`,`g35`,`g41`],[`l`,`g34`,`g40`],[`l`,`g32`,`g40`],[`l`,`g31`,`g39`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g11`,`g39`],[`l`,`g11`,`g44`],[`l`,`g31`,`g44`],[`l`,`g32`,`g43`],[`l`,`g33`,`g43`],[`l`,`g33`,`g47`],[`l`,`g35`,`g47`],[`l`,`g35`,`g45`],[`l`,`g36`,`g45`],[`l`,`g38`,`g46`],[`l`,`g12`,`g46`],[`l`,`g12`,`g41`],[`l`,`g38`,`g41`],[`l`,`g37`,`g42`],[`l`,`g35`,`g42`],[`l`,`g35`,`g41`],[`l`,`g34`,`g40`],[`l`,`g32`,`g40`],[`l`,`g31`,`g39`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`g11`,`g39`],[`l`,`g31`,`g39`],[`l`,`g32`,`g40`],[`l`,`g34`,`g40`],[`l`,`g35`,`g41`],[`l`,`g35`,`g42`],[`l`,`g37`,`g42`],[`l`,`g38`,`g41`],[`l`,`g12`,`g41`],[`l`,`g12`,`g46`],[`l`,`g38`,`g46`],[`l`,`g36`,`g45`],[`l`,`g35`,`g45`],[`l`,`g35`,`g47`],[`l`,`g33`,`g47`],[`l`,`g33`,`g43`],[`l`,`g32`,`g43`],[`l`,`g31`,`g44`],[`l`,`g11`,`g44`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttonreturn:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g10`,`+- vc dx2 0`],[`g11`,`+- hc 0 dx2`],[`g12`,`+- hc dx2 0`],[`g13`,`*/ ss 3 4`],[`g14`,`*/ g13 7 8`],[`g15`,`*/ g13 3 4`],[`g16`,`*/ g13 5 8`],[`g17`,`*/ g13 3 8`],[`g18`,`*/ g13 1 4`],[`g19`,`+- g9 g15 0`],[`g20`,`+- g9 g16 0`],[`g21`,`+- g9 g18 0`],[`g22`,`+- g11 g14 0`],[`g23`,`+- g11 g15 0`],[`g24`,`+- g11 g16 0`],[`g25`,`+- g11 g17 0`],[`g26`,`+- g11 g18 0`],[`g27`,`*/ g13 1 8`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`g12`,`g21`],[`l`,`g23`,`g9`],[`l`,`hc`,`g21`],[`l`,`g24`,`g21`],[`l`,`g24`,`g20`],[`a`,`g27`,`g27`,`0`,`cd4`],[`l`,`g25`,`g19`],[`a`,`g27`,`g27`,`cd4`,`cd4`],[`l`,`g26`,`g21`],[`l`,`g11`,`g21`],[`l`,`g11`,`g20`],[`a`,`g17`,`g17`,`cd2`,`-5400000`],[`l`,`hc`,`g10`],[`a`,`g17`,`g17`,`cd4`,`-5400000`],[`l`,`g22`,`g21`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g12`,`g21`],[`l`,`g23`,`g9`],[`l`,`hc`,`g21`],[`l`,`g24`,`g21`],[`l`,`g24`,`g20`],[`a`,`g27`,`g27`,`0`,`cd4`],[`l`,`g25`,`g19`],[`a`,`g27`,`g27`,`cd4`,`cd4`],[`l`,`g26`,`g21`],[`l`,`g11`,`g21`],[`l`,`g11`,`g20`],[`a`,`g17`,`g17`,`cd2`,`-5400000`],[`l`,`hc`,`g10`],[`a`,`g17`,`g17`,`cd4`,`-5400000`],[`l`,`g22`,`g21`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`g12`,`g21`],[`l`,`g22`,`g21`],[`l`,`g22`,`g20`],[`a`,`g17`,`g17`,`0`,`cd4`],[`l`,`g25`,`g10`],[`a`,`g17`,`g17`,`cd4`,`cd4`],[`l`,`g11`,`g21`],[`l`,`g26`,`g21`],[`l`,`g26`,`g20`],[`a`,`g27`,`g27`,`cd2`,`-5400000`],[`l`,`hc`,`g19`],[`a`,`g27`,`g27`,`cd4`,`-5400000`],[`l`,`g24`,`g21`],[`l`,`hc`,`g21`],[`l`,`g23`,`g9`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},actionbuttonsound:{adj:[],gd:[[`dx2`,`*/ ss 3 8`],[`g9`,`+- vc 0 dx2`],[`g10`,`+- vc dx2 0`],[`g11`,`+- hc 0 dx2`],[`g12`,`+- hc dx2 0`],[`g13`,`*/ ss 3 4`],[`g14`,`*/ g13 1 8`],[`g15`,`*/ g13 5 16`],[`g16`,`*/ g13 5 8`],[`g17`,`*/ g13 11 16`],[`g18`,`*/ g13 3 4`],[`g19`,`*/ g13 7 8`],[`g20`,`+- g9 g14 0`],[`g21`,`+- g9 g15 0`],[`g22`,`+- g9 g17 0`],[`g23`,`+- g9 g19 0`],[`g24`,`+- g11 g15 0`],[`g25`,`+- g11 g16 0`],[`g26`,`+- g11 g18 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`g11`,`g21`],[`l`,`g11`,`g22`],[`l`,`g24`,`g22`],[`l`,`g25`,`g10`],[`l`,`g25`,`g9`],[`l`,`g24`,`g21`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`g11`,`g21`],[`l`,`g11`,`g22`],[`l`,`g24`,`g22`],[`l`,`g25`,`g10`],[`l`,`g25`,`g9`],[`l`,`g24`,`g21`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`g11`,`g21`],[`l`,`g24`,`g21`],[`l`,`g25`,`g9`],[`l`,`g25`,`g10`],[`l`,`g24`,`g22`],[`l`,`g11`,`g22`],[`c`],[`m`,`g26`,`g21`],[`l`,`g12`,`g20`],[`m`,`g26`,`vc`],[`l`,`g12`,`vc`],[`m`,`g26`,`g22`],[`l`,`g12`,`g23`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},arc:{adj:[[`adj1`,`val 16200000`],[`adj2`,`val 0`]],gd:[[`stAng`,`pin 0 adj1 21599999`],[`enAng`,`pin 0 adj2 21599999`],[`sw11`,`+- enAng 0 stAng`],[`sw12`,`+- sw11 21600000 0`],[`swAng`,`?: sw11 sw11 sw12`],[`wt1`,`sin wd2 stAng`],[`ht1`,`cos hd2 stAng`],[`dx1`,`cat2 wd2 ht1 wt1`],[`dy1`,`sat2 hd2 ht1 wt1`],[`wt2`,`sin wd2 enAng`],[`ht2`,`cos hd2 enAng`],[`dx2`,`cat2 wd2 ht2 wt2`],[`dy2`,`sat2 hd2 ht2 wt2`],[`x1`,`+- hc dx1 0`],[`y1`,`+- vc dy1 0`],[`x2`,`+- hc dx2 0`],[`y2`,`+- vc dy2 0`],[`sw0`,`+- 21600000 0 stAng`],[`da1`,`+- swAng 0 sw0`],[`g1`,`max x1 x2`],[`ir`,`?: da1 r g1`],[`sw1`,`+- cd4 0 stAng`],[`sw2`,`+- 27000000 0 stAng`],[`sw3`,`?: sw1 sw1 sw2`],[`da2`,`+- swAng 0 sw3`],[`g5`,`max y1 y2`],[`ib`,`?: da2 b g5`],[`sw4`,`+- cd2 0 stAng`],[`sw5`,`+- 32400000 0 stAng`],[`sw6`,`?: sw4 sw4 sw5`],[`da3`,`+- swAng 0 sw6`],[`g9`,`min x1 x2`],[`il`,`?: da3 l g9`],[`sw7`,`+- 3cd4 0 stAng`],[`sw8`,`+- 37800000 0 stAng`],[`sw9`,`?: sw7 sw7 sw8`],[`da4`,`+- swAng 0 sw9`],[`g13`,`min y1 y2`],[`it`,`?: da4 t g13`],[`cang1`,`+- stAng 0 cd4`],[`cang2`,`+- enAng cd4 0`],[`cang3`,`+/ cang1 cang2 2`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`a`,`wd2`,`hd2`,`stAng`,`swAng`],[`l`,`hc`,`vc`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`a`,`wd2`,`hd2`,`stAng`,`swAng`]]}]},bentarrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`],[`adj4`,`val 43750`]],gd:[[`a2`,`pin 0 adj2 50000`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`a3`,`pin 0 adj3 50000`],[`th`,`*/ ss a1 100000`],[`aw2`,`*/ ss a2 100000`],[`th2`,`*/ th 1 2`],[`dh2`,`+- aw2 0 th2`],[`ah`,`*/ ss a3 100000`],[`bw`,`+- r 0 ah`],[`bh`,`+- b 0 dh2`],[`bs`,`min bw bh`],[`maxAdj4`,`*/ 100000 bs ss`],[`a4`,`pin 0 adj4 maxAdj4`],[`bd`,`*/ ss a4 100000`],[`bd3`,`+- bd 0 th`],[`bd2`,`max bd3 0`],[`x3`,`+- th bd2 0`],[`x4`,`+- r 0 ah`],[`y3`,`+- dh2 th 0`],[`y4`,`+- y3 dh2 0`],[`y5`,`+- dh2 bd 0`],[`y6`,`+- y3 bd2 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`l`,`l`,`y5`],[`a`,`bd`,`bd`,`cd2`,`cd4`],[`l`,`x4`,`dh2`],[`l`,`x4`,`t`],[`l`,`r`,`aw2`],[`l`,`x4`,`y4`],[`l`,`x4`,`y3`],[`l`,`x3`,`y3`],[`a`,`bd2`,`bd2`,`3cd4`,`-5400000`],[`l`,`th`,`b`],[`c`]]}]},bentconnector2:{adj:[],gd:[],paths:[{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`]]}]},bentconnector3:{adj:[[`adj1`,`val 50000`]],gd:[[`x1`,`*/ w adj1 100000`]],paths:[{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x1`,`t`],[`l`,`x1`,`b`],[`l`,`r`,`b`]]}]},bentconnector4:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`x1`,`*/ w adj1 100000`],[`x2`,`+/ x1 r 2`],[`y2`,`*/ h adj2 100000`],[`y1`,`+/ t y2 2`]],paths:[{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x1`,`t`],[`l`,`x1`,`y2`],[`l`,`r`,`y2`],[`l`,`r`,`b`]]}]},bentconnector5:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`],[`adj3`,`val 50000`]],gd:[[`x1`,`*/ w adj1 100000`],[`x3`,`*/ w adj3 100000`],[`x2`,`+/ x1 x3 2`],[`y2`,`*/ h adj2 100000`],[`y1`,`+/ t y2 2`],[`y3`,`+/ b y2 2`]],paths:[{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x1`,`t`],[`l`,`x1`,`y2`],[`l`,`x3`,`y2`],[`l`,`x3`,`b`],[`l`,`r`,`b`]]}]},bentuparrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`]],gd:[[`a1`,`pin 0 adj1 50000`],[`a2`,`pin 0 adj2 50000`],[`a3`,`pin 0 adj3 50000`],[`y1`,`*/ ss a3 100000`],[`dx1`,`*/ ss a2 50000`],[`x1`,`+- r 0 dx1`],[`dx3`,`*/ ss a2 100000`],[`x3`,`+- r 0 dx3`],[`dx2`,`*/ ss a1 200000`],[`x2`,`+- x3 0 dx2`],[`x4`,`+- x3 dx2 0`],[`dy2`,`*/ ss a1 100000`],[`y2`,`+- b 0 dy2`],[`x0`,`*/ x4 1 2`],[`y3`,`+/ y2 b 2`],[`y15`,`+/ y1 b 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`y1`],[`l`,`x1`,`y1`],[`l`,`x3`,`t`],[`l`,`r`,`y1`],[`l`,`x4`,`y1`],[`l`,`x4`,`b`],[`l`,`l`,`b`],[`c`]]}]},bevel:{adj:[[`adj`,`val 12500`]],gd:[[`a`,`pin 0 adj 50000`],[`x1`,`*/ ss a 100000`],[`x2`,`+- r 0 x1`],[`y2`,`+- b 0 x1`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x1`,`x1`],[`l`,`x2`,`x1`],[`l`,`x2`,`y2`],[`l`,`x1`,`y2`],[`c`]]},{w:null,h:null,fill:`lightenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`x2`,`x1`],[`l`,`x1`,`x1`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`b`],[`l`,`x1`,`y2`],[`l`,`x2`,`y2`],[`l`,`r`,`b`],[`c`]]},{w:null,h:null,fill:`lighten`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`x1`,`x1`],[`l`,`x1`,`y2`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`darken`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`r`,`t`],[`l`,`r`,`b`],[`l`,`x2`,`y2`],[`l`,`x2`,`x1`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`x1`,`x1`],[`l`,`x2`,`x1`],[`l`,`x2`,`y2`],[`l`,`x1`,`y2`],[`c`],[`m`,`l`,`t`],[`l`,`x1`,`x1`],[`m`,`l`,`b`],[`l`,`x1`,`y2`],[`m`,`r`,`t`],[`l`,`x2`,`x1`],[`m`,`r`,`b`],[`l`,`x2`,`y2`]]}]},blockarc:{adj:[[`adj1`,`val 10800000`],[`adj2`,`val 0`],[`adj3`,`val 25000`]],gd:[[`stAng`,`pin 0 adj1 21599999`],[`istAng`,`pin 0 adj2 21599999`],[`a3`,`pin 0 adj3 50000`],[`sw11`,`+- istAng 0 stAng`],[`sw12`,`+- sw11 21600000 0`],[`swAng`,`?: sw11 sw11 sw12`],[`iswAng`,`+- 0 0 swAng`],[`wt1`,`sin wd2 stAng`],[`ht1`,`cos hd2 stAng`],[`wt3`,`sin wd2 istAng`],[`ht3`,`cos hd2 istAng`],[`dx1`,`cat2 wd2 ht1 wt1`],[`dy1`,`sat2 hd2 ht1 wt1`],[`dx3`,`cat2 wd2 ht3 wt3`],[`dy3`,`sat2 hd2 ht3 wt3`],[`x1`,`+- hc dx1 0`],[`y1`,`+- vc dy1 0`],[`x3`,`+- hc dx3 0`],[`y3`,`+- vc dy3 0`],[`dr`,`*/ ss a3 100000`],[`iwd2`,`+- wd2 0 dr`],[`ihd2`,`+- hd2 0 dr`],[`wt2`,`sin iwd2 istAng`],[`ht2`,`cos ihd2 istAng`],[`wt4`,`sin iwd2 stAng`],[`ht4`,`cos ihd2 stAng`],[`dx2`,`cat2 iwd2 ht2 wt2`],[`dy2`,`sat2 ihd2 ht2 wt2`],[`dx4`,`cat2 iwd2 ht4 wt4`],[`dy4`,`sat2 ihd2 ht4 wt4`],[`x2`,`+- hc dx2 0`],[`y2`,`+- vc dy2 0`],[`x4`,`+- hc dx4 0`],[`y4`,`+- vc dy4 0`],[`sw0`,`+- 21600000 0 stAng`],[`da1`,`+- swAng 0 sw0`],[`g1`,`max x1 x2`],[`g2`,`max x3 x4`],[`g3`,`max g1 g2`],[`ir`,`?: da1 r g3`],[`sw1`,`+- cd4 0 stAng`],[`sw2`,`+- 27000000 0 stAng`],[`sw3`,`?: sw1 sw1 sw2`],[`da2`,`+- swAng 0 sw3`],[`g5`,`max y1 y2`],[`g6`,`max y3 y4`],[`g7`,`max g5 g6`],[`ib`,`?: da2 b g7`],[`sw4`,`+- cd2 0 stAng`],[`sw5`,`+- 32400000 0 stAng`],[`sw6`,`?: sw4 sw4 sw5`],[`da3`,`+- swAng 0 sw6`],[`g9`,`min x1 x2`],[`g10`,`min x3 x4`],[`g11`,`min g9 g10`],[`il`,`?: da3 l g11`],[`sw7`,`+- 3cd4 0 stAng`],[`sw8`,`+- 37800000 0 stAng`],[`sw9`,`?: sw7 sw7 sw8`],[`da4`,`+- swAng 0 sw9`],[`g13`,`min y1 y2`],[`g14`,`min y3 y4`],[`g15`,`min g13 g14`],[`it`,`?: da4 t g15`],[`x5`,`+/ x1 x4 2`],[`y5`,`+/ y1 y4 2`],[`x6`,`+/ x3 x2 2`],[`y6`,`+/ y3 y2 2`],[`cang1`,`+- stAng 0 cd4`],[`cang2`,`+- istAng cd4 0`],[`cang3`,`+/ cang1 cang2 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`a`,`wd2`,`hd2`,`stAng`,`swAng`],[`l`,`x2`,`y2`],[`a`,`iwd2`,`ihd2`,`istAng`,`iswAng`],[`c`]]}]},bordercallout1:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 112500`],[`adj4`,`val -38333`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`]]}]},bordercallout2:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 18750`],[`adj4`,`val -16667`],[`adj5`,`val 112500`],[`adj6`,`val -46667`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`],[`y3`,`*/ h adj5 100000`],[`x3`,`*/ w adj6 100000`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`],[`l`,`x3`,`y3`]]}]},bordercallout3:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 18750`],[`adj4`,`val -16667`],[`adj5`,`val 100000`],[`adj6`,`val -16667`],[`adj7`,`val 112963`],[`adj8`,`val -8333`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`],[`y3`,`*/ h adj5 100000`],[`x3`,`*/ w adj6 100000`],[`y4`,`*/ h adj7 100000`],[`x4`,`*/ w adj8 100000`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`],[`l`,`x3`,`y3`],[`l`,`x4`,`y4`]]}]},bracepair:{adj:[[`adj`,`val 8333`]],gd:[[`a`,`pin 0 adj 25000`],[`x1`,`*/ ss a 100000`],[`x2`,`*/ ss a 50000`],[`x3`,`+- r 0 x2`],[`x4`,`+- r 0 x1`],[`y2`,`+- vc 0 x1`],[`y3`,`+- vc x1 0`],[`y4`,`+- b 0 x1`],[`it`,`*/ x1 29289 100000`],[`il`,`+- x1 it 0`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 it`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x2`,`b`],[`a`,`x1`,`x1`,`cd4`,`cd4`],[`l`,`x1`,`y3`],[`a`,`x1`,`x1`,`0`,`-5400000`],[`a`,`x1`,`x1`,`cd4`,`-5400000`],[`l`,`x1`,`x1`],[`a`,`x1`,`x1`,`cd2`,`cd4`],[`l`,`x3`,`t`],[`a`,`x1`,`x1`,`3cd4`,`cd4`],[`l`,`x4`,`y2`],[`a`,`x1`,`x1`,`cd2`,`-5400000`],[`a`,`x1`,`x1`,`3cd4`,`-5400000`],[`l`,`x4`,`y4`],[`a`,`x1`,`x1`,`0`,`cd4`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x2`,`b`],[`a`,`x1`,`x1`,`cd4`,`cd4`],[`l`,`x1`,`y3`],[`a`,`x1`,`x1`,`0`,`-5400000`],[`a`,`x1`,`x1`,`cd4`,`-5400000`],[`l`,`x1`,`x1`],[`a`,`x1`,`x1`,`cd2`,`cd4`],[`m`,`x3`,`t`],[`a`,`x1`,`x1`,`3cd4`,`cd4`],[`l`,`x4`,`y2`],[`a`,`x1`,`x1`,`cd2`,`-5400000`],[`a`,`x1`,`x1`,`3cd4`,`-5400000`],[`l`,`x4`,`y4`],[`a`,`x1`,`x1`,`0`,`cd4`]]}]},bracketpair:{adj:[[`adj`,`val 16667`]],gd:[[`a`,`pin 0 adj 50000`],[`x1`,`*/ ss a 100000`],[`x2`,`+- r 0 x1`],[`y2`,`+- b 0 x1`],[`il`,`*/ x1 29289 100000`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`x1`],[`a`,`x1`,`x1`,`cd2`,`cd4`],[`l`,`x2`,`t`],[`a`,`x1`,`x1`,`3cd4`,`cd4`],[`l`,`r`,`y2`],[`a`,`x1`,`x1`,`0`,`cd4`],[`l`,`x1`,`b`],[`a`,`x1`,`x1`,`cd4`,`cd4`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`b`],[`a`,`x1`,`x1`,`cd4`,`cd4`],[`l`,`l`,`x1`],[`a`,`x1`,`x1`,`cd2`,`cd4`],[`m`,`x2`,`t`],[`a`,`x1`,`x1`,`3cd4`,`cd4`],[`l`,`r`,`y2`],[`a`,`x1`,`x1`,`0`,`cd4`]]}]},callout1:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 112500`],[`adj4`,`val -38333`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`]]}]},callout2:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 18750`],[`adj4`,`val -16667`],[`adj5`,`val 112500`],[`adj6`,`val -46667`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`],[`y3`,`*/ h adj5 100000`],[`x3`,`*/ w adj6 100000`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`],[`l`,`x3`,`y3`]]}]},callout3:{adj:[[`adj1`,`val 18750`],[`adj2`,`val -8333`],[`adj3`,`val 18750`],[`adj4`,`val -16667`],[`adj5`,`val 100000`],[`adj6`,`val -16667`],[`adj7`,`val 112963`],[`adj8`,`val -8333`]],gd:[[`y1`,`*/ h adj1 100000`],[`x1`,`*/ w adj2 100000`],[`y2`,`*/ h adj3 100000`],[`x2`,`*/ w adj4 100000`],[`y3`,`*/ h adj5 100000`],[`x3`,`*/ w adj6 100000`],[`y4`,`*/ h adj7 100000`],[`x4`,`*/ w adj8 100000`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y2`],[`l`,`x3`,`y3`],[`l`,`x4`,`y4`]]}]},can:{adj:[[`adj`,`val 25000`]],gd:[[`maxAdj`,`*/ 50000 h ss`],[`a`,`pin 0 adj maxAdj`],[`y1`,`*/ ss a 200000`],[`y2`,`+- y1 y1 0`],[`y3`,`+- b 0 y1`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`y1`],[`a`,`wd2`,`y1`,`cd2`,`-10800000`],[`l`,`r`,`y3`],[`a`,`wd2`,`y1`,`0`,`cd2`],[`c`]]},{w:null,h:null,fill:`lighten`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`y1`],[`a`,`wd2`,`y1`,`cd2`,`cd2`],[`a`,`wd2`,`y1`,`0`,`cd2`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`r`,`y1`],[`a`,`wd2`,`y1`,`0`,`cd2`],[`a`,`wd2`,`y1`,`cd2`,`cd2`],[`l`,`r`,`y3`],[`a`,`wd2`,`y1`,`0`,`cd2`],[`l`,`l`,`y1`]]}]},chartplus:{adj:[],gd:[],paths:[{w:10,h:10,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`5`,`0`],[`l`,`5`,`10`],[`m`,`0`,`5`],[`l`,`10`,`5`]]},{w:10,h:10,fill:null,stroke:!1,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`0`,`10`],[`l`,`10`,`10`],[`l`,`10`,`0`],[`c`]]}]},chartstar:{adj:[],gd:[],paths:[{w:10,h:10,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`0`,`0`],[`l`,`10`,`10`],[`m`,`0`,`10`],[`l`,`10`,`0`],[`m`,`5`,`0`],[`l`,`5`,`10`]]},{w:10,h:10,fill:null,stroke:!1,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`0`,`10`],[`l`,`10`,`10`],[`l`,`10`,`0`],[`c`]]}]},chartx:{adj:[],gd:[],paths:[{w:10,h:10,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`0`,`0`],[`l`,`10`,`10`],[`m`,`0`,`10`],[`l`,`10`,`0`]]},{w:10,h:10,fill:null,stroke:!1,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`0`,`10`],[`l`,`10`,`10`],[`l`,`10`,`0`],[`c`]]}]},chevron:{adj:[[`adj`,`val 50000`]],gd:[[`maxAdj`,`*/ 100000 w ss`],[`a`,`pin 0 adj maxAdj`],[`x1`,`*/ ss a 100000`],[`x2`,`+- r 0 x1`],[`x3`,`*/ x2 1 2`],[`dx`,`+- x2 0 x1`],[`il`,`?: dx x1 l`],[`ir`,`?: dx x2 r`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x2`,`t`],[`l`,`r`,`vc`],[`l`,`x2`,`b`],[`l`,`l`,`b`],[`l`,`x1`,`vc`],[`c`]]}]},chord:{adj:[[`adj1`,`val 2700000`],[`adj2`,`val 16200000`]],gd:[[`stAng`,`pin 0 adj1 21599999`],[`enAng`,`pin 0 adj2 21599999`],[`sw1`,`+- enAng 0 stAng`],[`sw2`,`+- sw1 21600000 0`],[`swAng`,`?: sw1 sw1 sw2`],[`wt1`,`sin wd2 stAng`],[`ht1`,`cos hd2 stAng`],[`dx1`,`cat2 wd2 ht1 wt1`],[`dy1`,`sat2 hd2 ht1 wt1`],[`wt2`,`sin wd2 enAng`],[`ht2`,`cos hd2 enAng`],[`dx2`,`cat2 wd2 ht2 wt2`],[`dy2`,`sat2 hd2 ht2 wt2`],[`x1`,`+- hc dx1 0`],[`y1`,`+- vc dy1 0`],[`x2`,`+- hc dx2 0`],[`y2`,`+- vc dy2 0`],[`x3`,`+/ x1 x2 2`],[`y3`,`+/ y1 y2 2`],[`midAng0`,`*/ swAng 1 2`],[`midAng`,`+- stAng midAng0 cd2`],[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`a`,`wd2`,`hd2`,`stAng`,`swAng`],[`c`]]}]},circulararrow:{adj:[[`adj1`,`val 12500`],[`adj2`,`val 1142319`],[`adj3`,`val 20457681`],[`adj4`,`val 10800000`],[`adj5`,`val 12500`]],gd:[[`a5`,`pin 0 adj5 25000`],[`maxAdj1`,`*/ a5 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`enAng`,`pin 1 adj3 21599999`],[`stAng`,`pin 0 adj4 21599999`],[`th`,`*/ ss a1 100000`],[`thh`,`*/ ss a5 100000`],[`th2`,`*/ th 1 2`],[`rw1`,`+- wd2 th2 thh`],[`rh1`,`+- hd2 th2 thh`],[`rw2`,`+- rw1 0 th`],[`rh2`,`+- rh1 0 th`],[`rw3`,`+- rw2 th2 0`],[`rh3`,`+- rh2 th2 0`],[`wtH`,`sin rw3 enAng`],[`htH`,`cos rh3 enAng`],[`dxH`,`cat2 rw3 htH wtH`],[`dyH`,`sat2 rh3 htH wtH`],[`xH`,`+- hc dxH 0`],[`yH`,`+- vc dyH 0`],[`rI`,`min rw2 rh2`],[`u1`,`*/ dxH dxH 1`],[`u2`,`*/ dyH dyH 1`],[`u3`,`*/ rI rI 1`],[`u4`,`+- u1 0 u3`],[`u5`,`+- u2 0 u3`],[`u6`,`*/ u4 u5 u1`],[`u7`,`*/ u6 1 u2`],[`u8`,`+- 1 0 u7`],[`u9`,`sqrt u8`],[`u10`,`*/ u4 1 dxH`],[`u11`,`*/ u10 1 dyH`],[`u12`,`+/ 1 u9 u11`],[`u13`,`at2 1 u12`],[`u14`,`+- u13 21600000 0`],[`u15`,`?: u13 u13 u14`],[`u16`,`+- u15 0 enAng`],[`u17`,`+- u16 21600000 0`],[`u18`,`?: u16 u16 u17`],[`u19`,`+- u18 0 cd2`],[`u20`,`+- u18 0 21600000`],[`u21`,`?: u19 u20 u18`],[`maxAng`,`abs u21`],[`aAng`,`pin 0 adj2 maxAng`],[`ptAng`,`+- enAng aAng 0`],[`wtA`,`sin rw3 ptAng`],[`htA`,`cos rh3 ptAng`],[`dxA`,`cat2 rw3 htA wtA`],[`dyA`,`sat2 rh3 htA wtA`],[`xA`,`+- hc dxA 0`],[`yA`,`+- vc dyA 0`],[`wtE`,`sin rw1 stAng`],[`htE`,`cos rh1 stAng`],[`dxE`,`cat2 rw1 htE wtE`],[`dyE`,`sat2 rh1 htE wtE`],[`xE`,`+- hc dxE 0`],[`yE`,`+- vc dyE 0`],[`dxG`,`cos thh ptAng`],[`dyG`,`sin thh ptAng`],[`xG`,`+- xH dxG 0`],[`yG`,`+- yH dyG 0`],[`dxB`,`cos thh ptAng`],[`dyB`,`sin thh ptAng`],[`xB`,`+- xH 0 dxB 0`],[`yB`,`+- yH 0 dyB 0`],[`sx1`,`+- xB 0 hc`],[`sy1`,`+- yB 0 vc`],[`sx2`,`+- xG 0 hc`],[`sy2`,`+- yG 0 vc`],[`rO`,`min rw1 rh1`],[`x1O`,`*/ sx1 rO rw1`],[`y1O`,`*/ sy1 rO rh1`],[`x2O`,`*/ sx2 rO rw1`],[`y2O`,`*/ sy2 rO rh1`],[`dxO`,`+- x2O 0 x1O`],[`dyO`,`+- y2O 0 y1O`],[`dO`,`mod dxO dyO 0`],[`q1`,`*/ x1O y2O 1`],[`q2`,`*/ x2O y1O 1`],[`DO`,`+- q1 0 q2`],[`q3`,`*/ rO rO 1`],[`q4`,`*/ dO dO 1`],[`q5`,`*/ q3 q4 1`],[`q6`,`*/ DO DO 1`],[`q7`,`+- q5 0 q6`],[`q8`,`max q7 0`],[`sdelO`,`sqrt q8`],[`ndyO`,`*/ dyO -1 1`],[`sdyO`,`?: ndyO -1 1`],[`q9`,`*/ sdyO dxO 1`],[`q10`,`*/ q9 sdelO 1`],[`q11`,`*/ DO dyO 1`],[`dxF1`,`+/ q11 q10 q4`],[`q12`,`+- q11 0 q10`],[`dxF2`,`*/ q12 1 q4`],[`adyO`,`abs dyO`],[`q13`,`*/ adyO sdelO 1`],[`q14`,`*/ DO dxO -1`],[`dyF1`,`+/ q14 q13 q4`],[`q15`,`+- q14 0 q13`],[`dyF2`,`*/ q15 1 q4`],[`q16`,`+- x2O 0 dxF1`],[`q17`,`+- x2O 0 dxF2`],[`q18`,`+- y2O 0 dyF1`],[`q19`,`+- y2O 0 dyF2`],[`q20`,`mod q16 q18 0`],[`q21`,`mod q17 q19 0`],[`q22`,`+- q21 0 q20`],[`dxF`,`?: q22 dxF1 dxF2`],[`dyF`,`?: q22 dyF1 dyF2`],[`sdxF`,`*/ dxF rw1 rO`],[`sdyF`,`*/ dyF rh1 rO`],[`xF`,`+- hc sdxF 0`],[`yF`,`+- vc sdyF 0`],[`x1I`,`*/ sx1 rI rw2`],[`y1I`,`*/ sy1 rI rh2`],[`x2I`,`*/ sx2 rI rw2`],[`y2I`,`*/ sy2 rI rh2`],[`dxI`,`+- x2I 0 x1I`],[`dyI`,`+- y2I 0 y1I`],[`dI`,`mod dxI dyI 0`],[`v1`,`*/ x1I y2I 1`],[`v2`,`*/ x2I y1I 1`],[`DI`,`+- v1 0 v2`],[`v3`,`*/ rI rI 1`],[`v4`,`*/ dI dI 1`],[`v5`,`*/ v3 v4 1`],[`v6`,`*/ DI DI 1`],[`v7`,`+- v5 0 v6`],[`v8`,`max v7 0`],[`sdelI`,`sqrt v8`],[`v9`,`*/ sdyO dxI 1`],[`v10`,`*/ v9 sdelI 1`],[`v11`,`*/ DI dyI 1`],[`dxC1`,`+/ v11 v10 v4`],[`v12`,`+- v11 0 v10`],[`dxC2`,`*/ v12 1 v4`],[`adyI`,`abs dyI`],[`v13`,`*/ adyI sdelI 1`],[`v14`,`*/ DI dxI -1`],[`dyC1`,`+/ v14 v13 v4`],[`v15`,`+- v14 0 v13`],[`dyC2`,`*/ v15 1 v4`],[`v16`,`+- x1I 0 dxC1`],[`v17`,`+- x1I 0 dxC2`],[`v18`,`+- y1I 0 dyC1`],[`v19`,`+- y1I 0 dyC2`],[`v20`,`mod v16 v18 0`],[`v21`,`mod v17 v19 0`],[`v22`,`+- v21 0 v20`],[`dxC`,`?: v22 dxC1 dxC2`],[`dyC`,`?: v22 dyC1 dyC2`],[`sdxC`,`*/ dxC rw2 rI`],[`sdyC`,`*/ dyC rh2 rI`],[`xC`,`+- hc sdxC 0`],[`yC`,`+- vc sdyC 0`],[`ist0`,`at2 sdxC sdyC`],[`ist1`,`+- ist0 21600000 0`],[`istAng`,`?: ist0 ist0 ist1`],[`isw1`,`+- stAng 0 istAng`],[`isw2`,`+- isw1 0 21600000`],[`iswAng`,`?: isw1 isw2 isw1`],[`p1`,`+- xF 0 xC`],[`p2`,`+- yF 0 yC`],[`p3`,`mod p1 p2 0`],[`p4`,`*/ p3 1 2`],[`p5`,`+- p4 0 thh`],[`xGp`,`?: p5 xF xG`],[`yGp`,`?: p5 yF yG`],[`xBp`,`?: p5 xC xB`],[`yBp`,`?: p5 yC yB`],[`en0`,`at2 sdxF sdyF`],[`en1`,`+- en0 21600000 0`],[`en2`,`?: en0 en0 en1`],[`sw0`,`+- en2 0 stAng`],[`sw1`,`+- sw0 21600000 0`],[`swAng`,`?: sw0 sw0 sw1`],[`wtI`,`sin rw3 stAng`],[`htI`,`cos rh3 stAng`],[`dxI`,`cat2 rw3 htI wtI`],[`dyI`,`sat2 rh3 htI wtI`],[`xI`,`+- hc dxI 0`],[`yI`,`+- vc dyI 0`],[`aI`,`+- stAng 0 cd4`],[`aA`,`+- ptAng cd4 0`],[`aB`,`+- ptAng cd2 0`],[`idx`,`cos rw1 2700000`],[`idy`,`sin rh1 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`xE`,`yE`],[`a`,`rw1`,`rh1`,`stAng`,`swAng`],[`l`,`xGp`,`yGp`],[`l`,`xA`,`yA`],[`l`,`xBp`,`yBp`],[`l`,`xC`,`yC`],[`a`,`rw2`,`rh2`,`istAng`,`iswAng`],[`c`]]}]},cloud:{adj:[],gd:[[`il`,`*/ w 2977 21600`],[`it`,`*/ h 3262 21600`],[`ir`,`*/ w 17087 21600`],[`ib`,`*/ h 17337 21600`],[`g27`,`*/ w 67 21600`],[`g28`,`*/ h 21577 21600`],[`g29`,`*/ w 21582 21600`],[`g30`,`*/ h 1235 21600`]],paths:[{w:43200,h:43200,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`3900`,`14370`],[`a`,`6753`,`9190`,`-11429249`,`7426832`],[`a`,`5333`,`7267`,`-8646143`,`5396714`],[`a`,`4365`,`5945`,`-8748475`,`5983381`],[`a`,`4857`,`6595`,`-7859164`,`7034504`],[`a`,`5333`,`7273`,`-4722533`,`6541615`],[`a`,`6775`,`9220`,`-2776035`,`7816140`],[`a`,`5785`,`7867`,`37501`,`6842000`],[`a`,`6752`,`9215`,`1347096`,`6910353`],[`a`,`7720`,`10543`,`3974558`,`4542661`],[`a`,`4360`,`5918`,`-16496525`,`8804134`],[`a`,`4345`,`5945`,`-14809710`,`9151131`],[`c`]]},{w:43200,h:43200,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`4693`,`26177`],[`a`,`4345`,`5945`,`5204520`,`1585770`],[`m`,`6928`,`34899`],[`a`,`4360`,`5918`,`4416628`,`686848`],[`m`,`16478`,`39090`],[`a`,`6752`,`9215`,`8257449`,`844866`],[`m`,`28827`,`34751`],[`a`,`6752`,`9215`,`387196`,`959901`],[`m`,`34129`,`22954`],[`a`,`5785`,`7867`,`-4217541`,`4255042`],[`m`,`41798`,`15354`],[`a`,`5333`,`7273`,`1819082`,`1665090`],[`m`,`38324`,`5426`],[`a`,`4857`,`6595`,`-824660`,`891534`],[`m`,`29078`,`3952`],[`a`,`4857`,`6595`,`-8950887`,`1091722`],[`m`,`22141`,`4720`],[`a`,`4365`,`5945`,`-9809656`,`1061181`],[`m`,`14000`,`5192`],[`a`,`6753`,`9190`,`-4002417`,`739161`],[`m`,`4127`,`15789`],[`a`,`6753`,`9190`,`9459261`,`711490`]]}]},cloudcallout:{adj:[[`adj1`,`val -20833`],[`adj2`,`val 62500`]],gd:[[`dxPos`,`*/ w adj1 100000`],[`dyPos`,`*/ h adj2 100000`],[`xPos`,`+- hc dxPos 0`],[`yPos`,`+- vc dyPos 0`],[`ht`,`cat2 hd2 dxPos dyPos`],[`wt`,`sat2 wd2 dxPos dyPos`],[`g2`,`cat2 wd2 ht wt`],[`g3`,`sat2 hd2 ht wt`],[`g4`,`+- hc g2 0`],[`g5`,`+- vc g3 0`],[`g6`,`+- g4 0 xPos`],[`g7`,`+- g5 0 yPos`],[`g8`,`mod g6 g7 0`],[`g9`,`*/ ss 6600 21600`],[`g10`,`+- g8 0 g9`],[`g11`,`*/ g10 1 3`],[`g12`,`*/ ss 1800 21600`],[`g13`,`+- g11 g12 0`],[`g14`,`*/ g13 g6 g8`],[`g15`,`*/ g13 g7 g8`],[`g16`,`+- g14 xPos 0`],[`g17`,`+- g15 yPos 0`],[`g18`,`*/ ss 4800 21600`],[`g19`,`*/ g11 2 1`],[`g20`,`+- g18 g19 0`],[`g21`,`*/ g20 g6 g8`],[`g22`,`*/ g20 g7 g8`],[`g23`,`+- g21 xPos 0`],[`g24`,`+- g22 yPos 0`],[`g25`,`*/ ss 1200 21600`],[`g26`,`*/ ss 600 21600`],[`x23`,`+- xPos g26 0`],[`x24`,`+- g16 g25 0`],[`x25`,`+- g23 g12 0`],[`il`,`*/ w 2977 21600`],[`it`,`*/ h 3262 21600`],[`ir`,`*/ w 17087 21600`],[`ib`,`*/ h 17337 21600`],[`g27`,`*/ w 67 21600`],[`g28`,`*/ h 21577 21600`],[`g29`,`*/ w 21582 21600`],[`g30`,`*/ h 1235 21600`],[`pang`,`at2 dxPos dyPos`]],paths:[{w:43200,h:43200,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`3900`,`14370`],[`a`,`6753`,`9190`,`-11429249`,`7426832`],[`a`,`5333`,`7267`,`-8646143`,`5396714`],[`a`,`4365`,`5945`,`-8748475`,`5983381`],[`a`,`4857`,`6595`,`-7859164`,`7034504`],[`a`,`5333`,`7273`,`-4722533`,`6541615`],[`a`,`6775`,`9220`,`-2776035`,`7816140`],[`a`,`5785`,`7867`,`37501`,`6842000`],[`a`,`6752`,`9215`,`1347096`,`6910353`],[`a`,`7720`,`10543`,`3974558`,`4542661`],[`a`,`4360`,`5918`,`-16496525`,`8804134`],[`a`,`4345`,`5945`,`-14809710`,`9151131`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x23`,`yPos`],[`a`,`g26`,`g26`,`0`,`21600000`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x24`,`g17`],[`a`,`g25`,`g25`,`0`,`21600000`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x25`,`g24`],[`a`,`g12`,`g12`,`0`,`21600000`],[`c`]]},{w:43200,h:43200,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`4693`,`26177`],[`a`,`4345`,`5945`,`5204520`,`1585770`],[`m`,`6928`,`34899`],[`a`,`4360`,`5918`,`4416628`,`686848`],[`m`,`16478`,`39090`],[`a`,`6752`,`9215`,`8257449`,`844866`],[`m`,`28827`,`34751`],[`a`,`6752`,`9215`,`387196`,`959901`],[`m`,`34129`,`22954`],[`a`,`5785`,`7867`,`-4217541`,`4255042`],[`m`,`41798`,`15354`],[`a`,`5333`,`7273`,`1819082`,`1665090`],[`m`,`38324`,`5426`],[`a`,`4857`,`6595`,`-824660`,`891534`],[`m`,`29078`,`3952`],[`a`,`4857`,`6595`,`-8950887`,`1091722`],[`m`,`22141`,`4720`],[`a`,`4365`,`5945`,`-9809656`,`1061181`],[`m`,`14000`,`5192`],[`a`,`6753`,`9190`,`-4002417`,`739161`],[`m`,`4127`,`15789`],[`a`,`6753`,`9190`,`9459261`,`711490`]]}]},corner:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`maxAdj1`,`*/ 100000 h ss`],[`maxAdj2`,`*/ 100000 w ss`],[`a1`,`pin 0 adj1 maxAdj1`],[`a2`,`pin 0 adj2 maxAdj2`],[`x1`,`*/ ss a2 100000`],[`dy1`,`*/ ss a1 100000`],[`y1`,`+- b 0 dy1`],[`cx1`,`*/ x1 1 2`],[`cy1`,`+/ y1 b 2`],[`d`,`+- w 0 h`],[`it`,`?: d y1 t`],[`ir`,`?: d r x1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x1`,`t`],[`l`,`x1`,`y1`],[`l`,`r`,`y1`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},cornertabs:{adj:[],gd:[[`md`,`mod w h 0`],[`dx`,`*/ 1 md 20`],[`y1`,`+- 0 b dx`],[`x1`,`+- 0 r dx`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`dx`,`t`],[`l`,`l`,`dx`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y1`],[`l`,`dx`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`t`],[`l`,`r`,`t`],[`l`,`r`,`dx`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`r`,`y1`],[`l`,`r`,`b`],[`l`,`x1`,`b`],[`c`]]}]},cube:{adj:[[`adj`,`val 25000`]],gd:[[`a`,`pin 0 adj 100000`],[`y1`,`*/ ss a 100000`],[`y4`,`+- b 0 y1`],[`y2`,`*/ y4 1 2`],[`y3`,`+/ y1 b 2`],[`x4`,`+- r 0 y1`],[`x2`,`*/ x4 1 2`],[`x3`,`+/ y1 r 2`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`y1`],[`l`,`x4`,`y1`],[`l`,`x4`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x4`,`y1`],[`l`,`r`,`t`],[`l`,`r`,`y4`],[`l`,`x4`,`b`],[`c`]]},{w:null,h:null,fill:`lightenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`y1`],[`l`,`y1`,`t`],[`l`,`r`,`t`],[`l`,`x4`,`y1`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`y1`],[`l`,`y1`,`t`],[`l`,`r`,`t`],[`l`,`r`,`y4`],[`l`,`x4`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`l`,`y1`],[`l`,`x4`,`y1`],[`l`,`r`,`t`],[`m`,`x4`,`y1`],[`l`,`x4`,`b`]]}]},curvedconnector2:{adj:[],gd:[],paths:[{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`C`,`wd2`,`t`,`r`,`hd2`,`r`,`b`]]}]},curvedconnector3:{adj:[[`adj1`,`val 50000`]],gd:[[`x2`,`*/ w adj1 100000`],[`x1`,`+/ l x2 2`],[`x3`,`+/ r x2 2`],[`y3`,`*/ h 3 4`]],paths:[{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`C`,`x1`,`t`,`x2`,`hd4`,`x2`,`vc`],[`C`,`x2`,`y3`,`x3`,`b`,`r`,`b`]]}]},curvedconnector4:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`x2`,`*/ w adj1 100000`],[`x1`,`+/ l x2 2`],[`x3`,`+/ r x2 2`],[`x4`,`+/ x2 x3 2`],[`x5`,`+/ x3 r 2`],[`y4`,`*/ h adj2 100000`],[`y1`,`+/ t y4 2`],[`y2`,`+/ t y1 2`],[`y3`,`+/ y1 y4 2`],[`y5`,`+/ b y4 2`]],paths:[{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`C`,`x1`,`t`,`x2`,`y2`,`x2`,`y1`],[`C`,`x2`,`y3`,`x4`,`y4`,`x3`,`y4`],[`C`,`x5`,`y4`,`r`,`y5`,`r`,`b`]]}]},curvedconnector5:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`],[`adj3`,`val 50000`]],gd:[[`x3`,`*/ w adj1 100000`],[`x6`,`*/ w adj3 100000`],[`x1`,`+/ x3 x6 2`],[`x2`,`+/ l x3 2`],[`x4`,`+/ x3 x1 2`],[`x5`,`+/ x6 x1 2`],[`x7`,`+/ x6 r 2`],[`y4`,`*/ h adj2 100000`],[`y1`,`+/ t y4 2`],[`y2`,`+/ t y1 2`],[`y3`,`+/ y1 y4 2`],[`y5`,`+/ b y4 2`],[`y6`,`+/ y5 y4 2`],[`y7`,`+/ y5 b 2`]],paths:[{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`C`,`x2`,`t`,`x3`,`y2`,`x3`,`y1`],[`C`,`x3`,`y3`,`x4`,`y4`,`x1`,`y4`],[`C`,`x5`,`y4`,`x6`,`y6`,`x6`,`y5`],[`C`,`x6`,`y7`,`x7`,`b`,`r`,`b`]]}]},curveddownarrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 50000`],[`adj3`,`val 25000`]],gd:[[`maxAdj2`,`*/ 50000 w ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`a1`,`pin 0 adj1 100000`],[`th`,`*/ ss a1 100000`],[`aw`,`*/ ss a2 100000`],[`q1`,`+/ th aw 4`],[`wR`,`+- wd2 0 q1`],[`q7`,`*/ wR 2 1`],[`q8`,`*/ q7 q7 1`],[`q9`,`*/ th th 1`],[`q10`,`+- q8 0 q9`],[`q11`,`sqrt q10`],[`idy`,`*/ q11 h q7`],[`maxAdj3`,`*/ 100000 idy ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`ah`,`*/ ss adj3 100000`],[`x3`,`+- wR th 0`],[`q2`,`*/ h h 1`],[`q3`,`*/ ah ah 1`],[`q4`,`+- q2 0 q3`],[`q5`,`sqrt q4`],[`dx`,`*/ q5 wR h`],[`x5`,`+- wR dx 0`],[`x7`,`+- x3 dx 0`],[`q6`,`+- aw 0 th`],[`dh`,`*/ q6 1 2`],[`x4`,`+- x5 0 dh`],[`x8`,`+- x7 dh 0`],[`aw2`,`*/ aw 1 2`],[`x6`,`+- r 0 aw2`],[`y1`,`+- b 0 ah`],[`swAng`,`at2 ah dx`],[`mswAng`,`+- 0 0 swAng`],[`iy`,`+- b 0 idy`],[`ix`,`+/ wR x3 2`],[`q12`,`*/ th 1 2`],[`dang2`,`at2 idy q12`],[`stAng`,`+- 3cd4 swAng 0`],[`stAng2`,`+- 3cd4 0 dang2`],[`swAng2`,`+- dang2 0 cd4`],[`swAng3`,`+- cd4 dang2 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x6`,`b`],[`l`,`x4`,`y1`],[`l`,`x5`,`y1`],[`a`,`wR`,`h`,`stAng`,`mswAng`],[`l`,`x3`,`t`],[`a`,`wR`,`h`,`3cd4`,`swAng`],[`l`,`x8`,`y1`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`ix`,`iy`],[`a`,`wR`,`h`,`stAng2`,`swAng2`],[`l`,`l`,`b`],[`a`,`wR`,`h`,`cd2`,`swAng3`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`ix`,`iy`],[`a`,`wR`,`h`,`stAng2`,`swAng2`],[`l`,`l`,`b`],[`a`,`wR`,`h`,`cd2`,`cd4`],[`l`,`x3`,`t`],[`a`,`wR`,`h`,`3cd4`,`swAng`],[`l`,`x8`,`y1`],[`l`,`x6`,`b`],[`l`,`x4`,`y1`],[`l`,`x5`,`y1`],[`a`,`wR`,`h`,`stAng`,`mswAng`]]}]},curvedleftarrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 50000`],[`adj3`,`val 25000`]],gd:[[`maxAdj2`,`*/ 50000 h ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`a1`,`pin 0 adj1 a2`],[`th`,`*/ ss a1 100000`],[`aw`,`*/ ss a2 100000`],[`q1`,`+/ th aw 4`],[`hR`,`+- hd2 0 q1`],[`q7`,`*/ hR 2 1`],[`q8`,`*/ q7 q7 1`],[`q9`,`*/ th th 1`],[`q10`,`+- q8 0 q9`],[`q11`,`sqrt q10`],[`idx`,`*/ q11 w q7`],[`maxAdj3`,`*/ 100000 idx ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`ah`,`*/ ss a3 100000`],[`y3`,`+- hR th 0`],[`q2`,`*/ w w 1`],[`q3`,`*/ ah ah 1`],[`q4`,`+- q2 0 q3`],[`q5`,`sqrt q4`],[`dy`,`*/ q5 hR w`],[`y5`,`+- hR dy 0`],[`y7`,`+- y3 dy 0`],[`q6`,`+- aw 0 th`],[`dh`,`*/ q6 1 2`],[`y4`,`+- y5 0 dh`],[`y8`,`+- y7 dh 0`],[`aw2`,`*/ aw 1 2`],[`y6`,`+- b 0 aw2`],[`x1`,`+- l ah 0`],[`swAng`,`at2 ah dy`],[`mswAng`,`+- 0 0 swAng`],[`ix`,`+- l idx 0`],[`iy`,`+/ hR y3 2`],[`q12`,`*/ th 1 2`],[`dang2`,`at2 idx q12`],[`swAng2`,`+- dang2 0 swAng`],[`swAng3`,`+- swAng dang2 0`],[`stAng3`,`+- 0 0 dang2`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`y6`],[`l`,`x1`,`y4`],[`l`,`x1`,`y5`],[`a`,`w`,`hR`,`swAng`,`swAng2`],[`a`,`w`,`hR`,`stAng3`,`swAng3`],[`l`,`x1`,`y8`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`r`,`y3`],[`a`,`w`,`hR`,`0`,`-5400000`],[`l`,`l`,`t`],[`a`,`w`,`hR`,`3cd4`,`cd4`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`r`,`y3`],[`a`,`w`,`hR`,`0`,`-5400000`],[`l`,`l`,`t`],[`a`,`w`,`hR`,`3cd4`,`cd4`],[`l`,`r`,`y3`],[`a`,`w`,`hR`,`0`,`swAng`],[`l`,`x1`,`y8`],[`l`,`l`,`y6`],[`l`,`x1`,`y4`],[`l`,`x1`,`y5`],[`a`,`w`,`hR`,`swAng`,`swAng2`]]}]},curvedrightarrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 50000`],[`adj3`,`val 25000`]],gd:[[`maxAdj2`,`*/ 50000 h ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`a1`,`pin 0 adj1 a2`],[`th`,`*/ ss a1 100000`],[`aw`,`*/ ss a2 100000`],[`q1`,`+/ th aw 4`],[`hR`,`+- hd2 0 q1`],[`q7`,`*/ hR 2 1`],[`q8`,`*/ q7 q7 1`],[`q9`,`*/ th th 1`],[`q10`,`+- q8 0 q9`],[`q11`,`sqrt q10`],[`idx`,`*/ q11 w q7`],[`maxAdj3`,`*/ 100000 idx ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`ah`,`*/ ss a3 100000`],[`y3`,`+- hR th 0`],[`q2`,`*/ w w 1`],[`q3`,`*/ ah ah 1`],[`q4`,`+- q2 0 q3`],[`q5`,`sqrt q4`],[`dy`,`*/ q5 hR w`],[`y5`,`+- hR dy 0`],[`y7`,`+- y3 dy 0`],[`q6`,`+- aw 0 th`],[`dh`,`*/ q6 1 2`],[`y4`,`+- y5 0 dh`],[`y8`,`+- y7 dh 0`],[`aw2`,`*/ aw 1 2`],[`y6`,`+- b 0 aw2`],[`x1`,`+- r 0 ah`],[`swAng`,`at2 ah dy`],[`stAng`,`+- cd2 0 swAng`],[`mswAng`,`+- 0 0 swAng`],[`ix`,`+- r 0 idx`],[`iy`,`+/ hR y3 2`],[`q12`,`*/ th 1 2`],[`dang2`,`at2 idx q12`],[`swAng2`,`+- dang2 0 cd4`],[`swAng3`,`+- cd4 dang2 0`],[`stAng3`,`+- cd2 0 dang2`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`hR`],[`a`,`w`,`hR`,`cd2`,`mswAng`],[`l`,`x1`,`y4`],[`l`,`r`,`y6`],[`l`,`x1`,`y8`],[`l`,`x1`,`y7`],[`a`,`w`,`hR`,`stAng`,`swAng`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`r`,`th`],[`a`,`w`,`hR`,`3cd4`,`swAng2`],[`a`,`w`,`hR`,`stAng3`,`swAng3`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`hR`],[`a`,`w`,`hR`,`cd2`,`mswAng`],[`l`,`x1`,`y4`],[`l`,`r`,`y6`],[`l`,`x1`,`y8`],[`l`,`x1`,`y7`],[`a`,`w`,`hR`,`stAng`,`swAng`],[`l`,`l`,`hR`],[`a`,`w`,`hR`,`cd2`,`cd4`],[`l`,`r`,`th`],[`a`,`w`,`hR`,`3cd4`,`swAng2`]]}]},curveduparrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 50000`],[`adj3`,`val 25000`]],gd:[[`maxAdj2`,`*/ 50000 w ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`a1`,`pin 0 adj1 100000`],[`th`,`*/ ss a1 100000`],[`aw`,`*/ ss a2 100000`],[`q1`,`+/ th aw 4`],[`wR`,`+- wd2 0 q1`],[`q7`,`*/ wR 2 1`],[`q8`,`*/ q7 q7 1`],[`q9`,`*/ th th 1`],[`q10`,`+- q8 0 q9`],[`q11`,`sqrt q10`],[`idy`,`*/ q11 h q7`],[`maxAdj3`,`*/ 100000 idy ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`ah`,`*/ ss adj3 100000`],[`x3`,`+- wR th 0`],[`q2`,`*/ h h 1`],[`q3`,`*/ ah ah 1`],[`q4`,`+- q2 0 q3`],[`q5`,`sqrt q4`],[`dx`,`*/ q5 wR h`],[`x5`,`+- wR dx 0`],[`x7`,`+- x3 dx 0`],[`q6`,`+- aw 0 th`],[`dh`,`*/ q6 1 2`],[`x4`,`+- x5 0 dh`],[`x8`,`+- x7 dh 0`],[`aw2`,`*/ aw 1 2`],[`x6`,`+- r 0 aw2`],[`y1`,`+- t ah 0`],[`swAng`,`at2 ah dx`],[`mswAng`,`+- 0 0 swAng`],[`iy`,`+- t idy 0`],[`ix`,`+/ wR x3 2`],[`q12`,`*/ th 1 2`],[`dang2`,`at2 idy q12`],[`swAng2`,`+- dang2 0 swAng`],[`mswAng2`,`+- 0 0 swAng2`],[`stAng3`,`+- cd4 0 swAng`],[`swAng3`,`+- swAng dang2 0`],[`stAng2`,`+- cd4 0 dang2`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x6`,`t`],[`l`,`x8`,`y1`],[`l`,`x7`,`y1`],[`a`,`wR`,`h`,`stAng3`,`swAng3`],[`a`,`wR`,`h`,`stAng2`,`swAng2`],[`l`,`x4`,`y1`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`wR`,`b`],[`a`,`wR`,`h`,`cd4`,`cd4`],[`l`,`th`,`t`],[`a`,`wR`,`h`,`cd2`,`-5400000`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`ix`,`iy`],[`a`,`wR`,`h`,`stAng2`,`swAng2`],[`l`,`x4`,`y1`],[`l`,`x6`,`t`],[`l`,`x8`,`y1`],[`l`,`x7`,`y1`],[`a`,`wR`,`h`,`stAng3`,`swAng`],[`l`,`wR`,`b`],[`a`,`wR`,`h`,`cd4`,`cd4`],[`l`,`th`,`t`],[`a`,`wR`,`h`,`cd2`,`-5400000`]]}]},decagon:{adj:[[`vf`,`val 105146`]],gd:[[`shd2`,`*/ hd2 vf 100000`],[`dx1`,`cos wd2 2160000`],[`dx2`,`cos wd2 4320000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`],[`x4`,`+- hc dx1 0`],[`dy1`,`sin shd2 4320000`],[`dy2`,`sin shd2 2160000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc dy2 0`],[`y4`,`+- vc dy1 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`x1`,`y2`],[`l`,`x2`,`y1`],[`l`,`x3`,`y1`],[`l`,`x4`,`y2`],[`l`,`r`,`vc`],[`l`,`x4`,`y3`],[`l`,`x3`,`y4`],[`l`,`x2`,`y4`],[`l`,`x1`,`y3`],[`c`]]}]},diagstripe:{adj:[[`adj`,`val 50000`]],gd:[[`a`,`pin 0 adj 100000`],[`x2`,`*/ w a 100000`],[`x1`,`*/ x2 1 2`],[`x3`,`+/ x2 r 2`],[`y2`,`*/ h a 100000`],[`y1`,`*/ y2 1 2`],[`y3`,`+/ y2 b 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y2`],[`l`,`x2`,`t`],[`l`,`r`,`t`],[`l`,`l`,`b`],[`c`]]}]},diamond:{adj:[],gd:[[`ir`,`*/ w 3 4`],[`ib`,`*/ h 3 4`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`hc`,`t`],[`l`,`r`,`vc`],[`l`,`hc`,`b`],[`c`]]}]},dodecagon:{adj:[],gd:[[`x1`,`*/ w 2894 21600`],[`x2`,`*/ w 7906 21600`],[`x3`,`*/ w 13694 21600`],[`x4`,`*/ w 18706 21600`],[`y1`,`*/ h 2894 21600`],[`y2`,`*/ h 7906 21600`],[`y3`,`*/ h 13694 21600`],[`y4`,`*/ h 18706 21600`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y2`],[`l`,`x1`,`y1`],[`l`,`x2`,`t`],[`l`,`x3`,`t`],[`l`,`x4`,`y1`],[`l`,`r`,`y2`],[`l`,`r`,`y3`],[`l`,`x4`,`y4`],[`l`,`x3`,`b`],[`l`,`x2`,`b`],[`l`,`x1`,`y4`],[`l`,`l`,`y3`],[`c`]]}]},donut:{adj:[[`adj`,`val 25000`]],gd:[[`a`,`pin 0 adj 50000`],[`dr`,`*/ ss a 100000`],[`iwd2`,`+- wd2 0 dr`],[`ihd2`,`+- hd2 0 dr`],[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`a`,`wd2`,`hd2`,`3cd4`,`cd4`],[`a`,`wd2`,`hd2`,`0`,`cd4`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`c`],[`m`,`dr`,`vc`],[`a`,`iwd2`,`ihd2`,`cd2`,`-5400000`],[`a`,`iwd2`,`ihd2`,`cd4`,`-5400000`],[`a`,`iwd2`,`ihd2`,`0`,`-5400000`],[`a`,`iwd2`,`ihd2`,`3cd4`,`-5400000`],[`c`]]}]},doublewave:{adj:[[`adj1`,`val 6250`],[`adj2`,`val 0`]],gd:[[`a1`,`pin 0 adj1 12500`],[`a2`,`pin -10000 adj2 10000`],[`y1`,`*/ h a1 100000`],[`dy2`,`*/ y1 10 3`],[`y2`,`+- y1 0 dy2`],[`y3`,`+- y1 dy2 0`],[`y4`,`+- b 0 y1`],[`y5`,`+- y4 0 dy2`],[`y6`,`+- y4 dy2 0`],[`dx1`,`*/ w a2 100000`],[`of2`,`*/ w a2 50000`],[`x1`,`abs dx1`],[`dx2`,`?: of2 0 of2`],[`x2`,`+- l 0 dx2`],[`dx8`,`?: of2 of2 0`],[`x8`,`+- r 0 dx8`],[`dx3`,`+/ dx2 x8 6`],[`x3`,`+- x2 dx3 0`],[`dx4`,`+/ dx2 x8 3`],[`x4`,`+- x2 dx4 0`],[`x5`,`+/ x2 x8 2`],[`x6`,`+- x5 dx3 0`],[`x7`,`+/ x6 x8 2`],[`x9`,`+- l dx8 0`],[`x15`,`+- r dx2 0`],[`x10`,`+- x9 dx3 0`],[`x11`,`+- x9 dx4 0`],[`x12`,`+/ x9 x15 2`],[`x13`,`+- x12 dx3 0`],[`x14`,`+/ x13 x15 2`],[`x16`,`+- r 0 x1`],[`xAdj`,`+- hc dx1 0`],[`il`,`max x2 x9`],[`ir`,`min x8 x15`],[`it`,`*/ h a1 50000`],[`ib`,`+- b 0 it`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x2`,`y1`],[`C`,`x3`,`y2`,`x4`,`y3`,`x5`,`y1`],[`C`,`x6`,`y2`,`x7`,`y3`,`x8`,`y1`],[`l`,`x15`,`y4`],[`C`,`x14`,`y6`,`x13`,`y5`,`x12`,`y4`],[`C`,`x11`,`y6`,`x10`,`y5`,`x9`,`y4`],[`c`]]}]},downarrow:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`maxAdj2`,`*/ 100000 h ss`],[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 0 adj2 maxAdj2`],[`dy1`,`*/ ss a2 100000`],[`y1`,`+- b 0 dy1`],[`dx1`,`*/ w a1 200000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc dx1 0`],[`dy2`,`*/ x1 dy1 wd2`],[`y2`,`+- y1 dy2 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y1`],[`l`,`x1`,`y1`],[`l`,`x1`,`t`],[`l`,`x2`,`t`],[`l`,`x2`,`y1`],[`l`,`r`,`y1`],[`l`,`hc`,`b`],[`c`]]}]},downarrowcallout:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`],[`adj4`,`val 64977`]],gd:[[`maxAdj2`,`*/ 50000 w ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`maxAdj3`,`*/ 100000 h ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`q2`,`*/ a3 ss h`],[`maxAdj4`,`+- 100000 0 q2`],[`a4`,`pin 0 adj4 maxAdj4`],[`dx1`,`*/ ss a2 100000`],[`dx2`,`*/ ss a1 200000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`],[`x4`,`+- hc dx1 0`],[`dy3`,`*/ ss a3 100000`],[`y3`,`+- b 0 dy3`],[`y2`,`*/ h a4 100000`],[`y1`,`*/ y2 1 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`y2`],[`l`,`x3`,`y2`],[`l`,`x3`,`y3`],[`l`,`x4`,`y3`],[`l`,`hc`,`b`],[`l`,`x1`,`y3`],[`l`,`x2`,`y3`],[`l`,`x2`,`y2`],[`l`,`l`,`y2`],[`c`]]}]},ellipse:{adj:[],gd:[[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`a`,`wd2`,`hd2`,`3cd4`,`cd4`],[`a`,`wd2`,`hd2`,`0`,`cd4`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`c`]]}]},ellipseribbon:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 50000`],[`adj3`,`val 12500`]],gd:[[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 25000 adj2 75000`],[`q10`,`+- 100000 0 a1`],[`q11`,`*/ q10 1 2`],[`q12`,`+- a1 0 q11`],[`minAdj3`,`max 0 q12`],[`a3`,`pin minAdj3 adj3 a1`],[`dx2`,`*/ w a2 200000`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- x2 wd8 0`],[`x4`,`+- r 0 x3`],[`x5`,`+- r 0 x2`],[`x6`,`+- r 0 wd8`],[`dy1`,`*/ h a3 100000`],[`f1`,`*/ 4 dy1 w`],[`q1`,`*/ x3 x3 w`],[`q2`,`+- x3 0 q1`],[`y1`,`*/ f1 q2 1`],[`cx1`,`*/ x3 1 2`],[`cy1`,`*/ f1 cx1 1`],[`cx2`,`+- r 0 cx1`],[`q1`,`*/ h a1 100000`],[`dy3`,`+- q1 0 dy1`],[`q3`,`*/ x2 x2 w`],[`q4`,`+- x2 0 q3`],[`q5`,`*/ f1 q4 1`],[`y3`,`+- q5 dy3 0`],[`q6`,`+- dy1 dy3 y3`],[`q7`,`+- q6 dy1 0`],[`cy3`,`+- q7 dy3 0`],[`rh`,`+- b 0 q1`],[`q8`,`*/ dy1 14 16`],[`y2`,`+/ q8 rh 2`],[`y5`,`+- q5 rh 0`],[`y6`,`+- y3 rh 0`],[`cx4`,`*/ x2 1 2`],[`q9`,`*/ f1 cx4 1`],[`cy4`,`+- q9 rh 0`],[`cx5`,`+- r 0 cx4`],[`cy6`,`+- cy3 rh 0`],[`y7`,`+- y1 dy3 0`],[`cy7`,`+- q1 q1 y7`],[`y8`,`+- b 0 dy1`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`Q`,`cx1`,`cy1`,`x3`,`y1`],[`l`,`x2`,`y3`],[`Q`,`hc`,`cy3`,`x5`,`y3`],[`l`,`x4`,`y1`],[`Q`,`cx2`,`cy1`,`r`,`t`],[`l`,`x6`,`y2`],[`l`,`r`,`rh`],[`Q`,`cx5`,`cy4`,`x5`,`y5`],[`l`,`x5`,`y6`],[`Q`,`hc`,`cy6`,`x2`,`y6`],[`l`,`x2`,`y5`],[`Q`,`cx4`,`cy4`,`l`,`rh`],[`l`,`wd8`,`y2`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x3`,`y7`],[`l`,`x3`,`y1`],[`l`,`x2`,`y3`],[`Q`,`hc`,`cy3`,`x5`,`y3`],[`l`,`x4`,`y1`],[`l`,`x4`,`y7`],[`Q`,`hc`,`cy7`,`x3`,`y7`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`Q`,`cx1`,`cy1`,`x3`,`y1`],[`l`,`x2`,`y3`],[`Q`,`hc`,`cy3`,`x5`,`y3`],[`l`,`x4`,`y1`],[`Q`,`cx2`,`cy1`,`r`,`t`],[`l`,`x6`,`y2`],[`l`,`r`,`rh`],[`Q`,`cx5`,`cy4`,`x5`,`y5`],[`l`,`x5`,`y6`],[`Q`,`hc`,`cy6`,`x2`,`y6`],[`l`,`x2`,`y5`],[`Q`,`cx4`,`cy4`,`l`,`rh`],[`l`,`wd8`,`y2`],[`c`],[`m`,`x2`,`y5`],[`l`,`x2`,`y3`],[`m`,`x5`,`y3`],[`l`,`x5`,`y5`],[`m`,`x3`,`y1`],[`l`,`x3`,`y7`],[`m`,`x4`,`y7`],[`l`,`x4`,`y1`]]}]},ellipseribbon2:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 50000`],[`adj3`,`val 12500`]],gd:[[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 25000 adj2 75000`],[`q10`,`+- 100000 0 a1`],[`q11`,`*/ q10 1 2`],[`q12`,`+- a1 0 q11`],[`minAdj3`,`max 0 q12`],[`a3`,`pin minAdj3 adj3 a1`],[`dx2`,`*/ w a2 200000`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- x2 wd8 0`],[`x4`,`+- r 0 x3`],[`x5`,`+- r 0 x2`],[`x6`,`+- r 0 wd8`],[`dy1`,`*/ h a3 100000`],[`f1`,`*/ 4 dy1 w`],[`q1`,`*/ x3 x3 w`],[`q2`,`+- x3 0 q1`],[`u1`,`*/ f1 q2 1`],[`y1`,`+- b 0 u1`],[`cx1`,`*/ x3 1 2`],[`cu1`,`*/ f1 cx1 1`],[`cy1`,`+- b 0 cu1`],[`cx2`,`+- r 0 cx1`],[`q1`,`*/ h a1 100000`],[`dy3`,`+- q1 0 dy1`],[`q3`,`*/ x2 x2 w`],[`q4`,`+- x2 0 q3`],[`q5`,`*/ f1 q4 1`],[`u3`,`+- q5 dy3 0`],[`y3`,`+- b 0 u3`],[`q6`,`+- dy1 dy3 u3`],[`q7`,`+- q6 dy1 0`],[`cu3`,`+- q7 dy3 0`],[`cy3`,`+- b 0 cu3`],[`rh`,`+- b 0 q1`],[`q8`,`*/ dy1 14 16`],[`u2`,`+/ q8 rh 2`],[`y2`,`+- b 0 u2`],[`u5`,`+- q5 rh 0`],[`y5`,`+- b 0 u5`],[`u6`,`+- u3 rh 0`],[`y6`,`+- b 0 u6`],[`cx4`,`*/ x2 1 2`],[`q9`,`*/ f1 cx4 1`],[`cu4`,`+- q9 rh 0`],[`cy4`,`+- b 0 cu4`],[`cx5`,`+- r 0 cx4`],[`cu6`,`+- cu3 rh 0`],[`cy6`,`+- b 0 cu6`],[`u7`,`+- u1 dy3 0`],[`y7`,`+- b 0 u7`],[`cu7`,`+- q1 q1 u7`],[`cy7`,`+- b 0 cu7`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`b`],[`Q`,`cx1`,`cy1`,`x3`,`y1`],[`l`,`x2`,`y3`],[`Q`,`hc`,`cy3`,`x5`,`y3`],[`l`,`x4`,`y1`],[`Q`,`cx2`,`cy1`,`r`,`b`],[`l`,`x6`,`y2`],[`l`,`r`,`q1`],[`Q`,`cx5`,`cy4`,`x5`,`y5`],[`l`,`x5`,`y6`],[`Q`,`hc`,`cy6`,`x2`,`y6`],[`l`,`x2`,`y5`],[`Q`,`cx4`,`cy4`,`l`,`q1`],[`l`,`wd8`,`y2`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x3`,`y7`],[`l`,`x3`,`y1`],[`l`,`x2`,`y3`],[`Q`,`hc`,`cy3`,`x5`,`y3`],[`l`,`x4`,`y1`],[`l`,`x4`,`y7`],[`Q`,`hc`,`cy7`,`x3`,`y7`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`b`],[`l`,`wd8`,`y2`],[`l`,`l`,`q1`],[`Q`,`cx4`,`cy4`,`x2`,`y5`],[`l`,`x2`,`y6`],[`Q`,`hc`,`cy6`,`x5`,`y6`],[`l`,`x5`,`y5`],[`Q`,`cx5`,`cy4`,`r`,`q1`],[`l`,`x6`,`y2`],[`l`,`r`,`b`],[`Q`,`cx2`,`cy1`,`x4`,`y1`],[`l`,`x5`,`y3`],[`Q`,`hc`,`cy3`,`x2`,`y3`],[`l`,`x3`,`y1`],[`Q`,`cx1`,`cy1`,`l`,`b`],[`c`],[`m`,`x2`,`y3`],[`l`,`x2`,`y5`],[`m`,`x5`,`y5`],[`l`,`x5`,`y3`],[`m`,`x3`,`y7`],[`l`,`x3`,`y1`],[`m`,`x4`,`y1`],[`l`,`x4`,`y7`]]}]},flowchartalternateprocess:{adj:[],gd:[[`x2`,`+- r 0 ssd6`],[`y2`,`+- b 0 ssd6`],[`il`,`*/ ssd6 29289 100000`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`ssd6`],[`a`,`ssd6`,`ssd6`,`cd2`,`cd4`],[`l`,`x2`,`t`],[`a`,`ssd6`,`ssd6`,`3cd4`,`cd4`],[`l`,`r`,`y2`],[`a`,`ssd6`,`ssd6`,`0`,`cd4`],[`l`,`ssd6`,`b`],[`a`,`ssd6`,`ssd6`,`cd4`,`cd4`],[`c`]]}]},flowchartcollate:{adj:[],gd:[[`ir`,`*/ w 3 4`],[`ib`,`*/ h 3 4`]],paths:[{w:2,h:2,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`2`,`0`],[`l`,`1`,`1`],[`l`,`2`,`2`],[`l`,`0`,`2`],[`l`,`1`,`1`],[`c`]]}]},flowchartconnector:{adj:[],gd:[[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`a`,`wd2`,`hd2`,`3cd4`,`cd4`],[`a`,`wd2`,`hd2`,`0`,`cd4`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`c`]]}]},flowchartdecision:{adj:[],gd:[[`ir`,`*/ w 3 4`],[`ib`,`*/ h 3 4`]],paths:[{w:2,h:2,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`1`],[`l`,`1`,`0`],[`l`,`2`,`1`],[`l`,`1`,`2`],[`c`]]}]},flowchartdelay:{adj:[],gd:[[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`hc`,`t`],[`a`,`wd2`,`hd2`,`3cd4`,`cd2`],[`l`,`l`,`b`],[`c`]]}]},flowchartdisplay:{adj:[],gd:[[`x2`,`*/ w 5 6`]],paths:[{w:6,h:6,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`3`],[`l`,`1`,`0`],[`l`,`5`,`0`],[`a`,`1`,`3`,`3cd4`,`cd2`],[`l`,`1`,`6`],[`c`]]}]},flowchartdocument:{adj:[],gd:[[`y1`,`*/ h 17322 21600`],[`y2`,`*/ h 20172 21600`]],paths:[{w:21600,h:21600,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`21600`,`0`],[`l`,`21600`,`17322`],[`C`,`10800`,`17322`,`10800`,`23922`,`0`,`20172`],[`c`]]}]},flowchartextract:{adj:[],gd:[[`x2`,`*/ w 3 4`]],paths:[{w:2,h:2,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`2`],[`l`,`1`,`0`],[`l`,`2`,`2`],[`c`]]}]},flowchartinputoutput:{adj:[],gd:[[`x3`,`*/ w 2 5`],[`x4`,`*/ w 3 5`],[`x5`,`*/ w 4 5`],[`x6`,`*/ w 9 10`]],paths:[{w:5,h:5,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`5`],[`l`,`1`,`0`],[`l`,`5`,`0`],[`l`,`4`,`5`],[`c`]]}]},flowchartinternalstorage:{adj:[],gd:[],paths:[{w:1,h:1,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`0`,`0`],[`l`,`1`,`0`],[`l`,`1`,`1`],[`l`,`0`,`1`],[`c`]]},{w:8,h:8,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`1`,`0`],[`l`,`1`,`8`],[`m`,`0`,`1`],[`l`,`8`,`1`]]},{w:1,h:1,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`1`,`0`],[`l`,`1`,`1`],[`l`,`0`,`1`],[`c`]]}]},flowchartmagneticdisk:{adj:[],gd:[[`y3`,`*/ h 5 6`]],paths:[{w:6,h:6,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`0`,`1`],[`a`,`3`,`1`,`cd2`,`cd2`],[`l`,`6`,`5`],[`a`,`3`,`1`,`0`,`cd2`],[`c`]]},{w:6,h:6,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`6`,`1`],[`a`,`3`,`1`,`0`,`cd2`]]},{w:6,h:6,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`1`],[`a`,`3`,`1`,`cd2`,`cd2`],[`l`,`6`,`5`],[`a`,`3`,`1`,`0`,`cd2`],[`c`]]}]},flowchartmagneticdrum:{adj:[],gd:[[`x2`,`*/ w 2 3`]],paths:[{w:6,h:6,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`1`,`0`],[`l`,`5`,`0`],[`a`,`1`,`3`,`3cd4`,`cd2`],[`l`,`1`,`6`],[`a`,`1`,`3`,`cd4`,`cd2`],[`c`]]},{w:6,h:6,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`5`,`6`],[`a`,`1`,`3`,`cd4`,`cd2`]]},{w:6,h:6,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`1`,`0`],[`l`,`5`,`0`],[`a`,`1`,`3`,`3cd4`,`cd2`],[`l`,`1`,`6`],[`a`,`1`,`3`,`cd4`,`cd2`],[`c`]]}]},flowchartmagnetictape:{adj:[],gd:[[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`],[`ang1`,`at2 w h`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`hc`,`b`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`a`,`wd2`,`hd2`,`3cd4`,`cd4`],[`a`,`wd2`,`hd2`,`0`,`ang1`],[`l`,`r`,`ib`],[`l`,`r`,`b`],[`c`]]}]},flowchartmanualinput:{adj:[],gd:[],paths:[{w:5,h:5,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`1`],[`l`,`5`,`0`],[`l`,`5`,`5`],[`l`,`0`,`5`],[`c`]]}]},flowchartmanualoperation:{adj:[],gd:[[`x3`,`*/ w 4 5`],[`x4`,`*/ w 9 10`]],paths:[{w:5,h:5,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`5`,`0`],[`l`,`4`,`5`],[`l`,`1`,`5`],[`c`]]}]},flowchartmerge:{adj:[],gd:[[`x2`,`*/ w 3 4`]],paths:[{w:2,h:2,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`2`,`0`],[`l`,`1`,`2`],[`c`]]}]},flowchartmultidocument:{adj:[],gd:[[`y2`,`*/ h 3675 21600`],[`y8`,`*/ h 20782 21600`],[`x3`,`*/ w 9298 21600`],[`x4`,`*/ w 12286 21600`],[`x5`,`*/ w 18595 21600`]],paths:[{w:21600,h:21600,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`0`,`20782`],[`C`,`9298`,`23542`,`9298`,`18022`,`18595`,`18022`],[`l`,`18595`,`3675`],[`l`,`0`,`3675`],[`c`],[`m`,`1532`,`3675`],[`l`,`1532`,`1815`],[`l`,`20000`,`1815`],[`l`,`20000`,`16252`],[`C`,`19298`,`16252`,`18595`,`16352`,`18595`,`16352`],[`l`,`18595`,`3675`],[`c`],[`m`,`2972`,`1815`],[`l`,`2972`,`0`],[`l`,`21600`,`0`],[`l`,`21600`,`14392`],[`C`,`20800`,`14392`,`20000`,`14467`,`20000`,`14467`],[`l`,`20000`,`1815`],[`c`]]},{w:21600,h:21600,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`0`,`3675`],[`l`,`18595`,`3675`],[`l`,`18595`,`18022`],[`C`,`9298`,`18022`,`9298`,`23542`,`0`,`20782`],[`c`],[`m`,`1532`,`3675`],[`l`,`1532`,`1815`],[`l`,`20000`,`1815`],[`l`,`20000`,`16252`],[`C`,`19298`,`16252`,`18595`,`16352`,`18595`,`16352`],[`m`,`2972`,`1815`],[`l`,`2972`,`0`],[`l`,`21600`,`0`],[`l`,`21600`,`14392`],[`C`,`20800`,`14392`,`20000`,`14467`,`20000`,`14467`]]},{w:21600,h:21600,fill:`none`,stroke:!1,extrusionOk:!0,cmds:[[`m`,`0`,`20782`],[`C`,`9298`,`23542`,`9298`,`18022`,`18595`,`18022`],[`l`,`18595`,`16352`],[`C`,`18595`,`16352`,`19298`,`16252`,`20000`,`16252`],[`l`,`20000`,`14467`],[`C`,`20000`,`14467`,`20800`,`14392`,`21600`,`14392`],[`l`,`21600`,`0`],[`l`,`2972`,`0`],[`l`,`2972`,`1815`],[`l`,`1532`,`1815`],[`l`,`1532`,`3675`],[`l`,`0`,`3675`],[`c`]]}]},flowchartofflinestorage:{adj:[],gd:[[`x4`,`*/ w 3 4`]],paths:[{w:2,h:2,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`0`,`0`],[`l`,`2`,`0`],[`l`,`1`,`2`],[`c`]]},{w:5,h:5,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`2`,`4`],[`l`,`3`,`4`]]},{w:2,h:2,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`2`,`0`],[`l`,`1`,`2`],[`c`]]}]},flowchartoffpageconnector:{adj:[],gd:[[`y1`,`*/ h 4 5`]],paths:[{w:10,h:10,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`10`,`0`],[`l`,`10`,`8`],[`l`,`5`,`10`],[`l`,`0`,`8`],[`c`]]}]},flowchartonlinestorage:{adj:[],gd:[[`x2`,`*/ w 5 6`]],paths:[{w:6,h:6,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`1`,`0`],[`l`,`6`,`0`],[`a`,`1`,`3`,`3cd4`,`-10800000`],[`l`,`1`,`6`],[`a`,`1`,`3`,`cd4`,`cd2`],[`c`]]}]},flowchartor:{adj:[],gd:[[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`a`,`wd2`,`hd2`,`3cd4`,`cd4`],[`a`,`wd2`,`hd2`,`0`,`cd4`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`hc`,`t`],[`l`,`hc`,`b`],[`m`,`l`,`vc`],[`l`,`r`,`vc`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`a`,`wd2`,`hd2`,`3cd4`,`cd4`],[`a`,`wd2`,`hd2`,`0`,`cd4`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`c`]]}]},flowchartpredefinedprocess:{adj:[],gd:[[`x2`,`*/ w 7 8`]],paths:[{w:1,h:1,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`0`,`0`],[`l`,`1`,`0`],[`l`,`1`,`1`],[`l`,`0`,`1`],[`c`]]},{w:8,h:8,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`1`,`0`],[`l`,`1`,`8`],[`m`,`7`,`0`],[`l`,`7`,`8`]]},{w:1,h:1,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`1`,`0`],[`l`,`1`,`1`],[`l`,`0`,`1`],[`c`]]}]},flowchartpreparation:{adj:[],gd:[[`x2`,`*/ w 4 5`]],paths:[{w:10,h:10,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`5`],[`l`,`2`,`0`],[`l`,`8`,`0`],[`l`,`10`,`5`],[`l`,`8`,`10`],[`l`,`2`,`10`],[`c`]]}]},flowchartprocess:{adj:[],gd:[],paths:[{w:1,h:1,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`0`],[`l`,`1`,`0`],[`l`,`1`,`1`],[`l`,`0`,`1`],[`c`]]}]},flowchartpunchedcard:{adj:[],gd:[],paths:[{w:5,h:5,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`1`],[`l`,`1`,`0`],[`l`,`5`,`0`],[`l`,`5`,`5`],[`l`,`0`,`5`],[`c`]]}]},flowchartpunchedtape:{adj:[],gd:[[`y2`,`*/ h 9 10`],[`ib`,`*/ h 4 5`]],paths:[{w:20,h:20,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`2`],[`a`,`5`,`2`,`cd2`,`-10800000`],[`a`,`5`,`2`,`cd2`,`cd2`],[`l`,`20`,`18`],[`a`,`5`,`2`,`0`,`-10800000`],[`a`,`5`,`2`,`0`,`cd2`],[`c`]]}]},flowchartsort:{adj:[],gd:[[`ir`,`*/ w 3 4`],[`ib`,`*/ h 3 4`]],paths:[{w:2,h:2,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`0`,`1`],[`l`,`1`,`0`],[`l`,`2`,`1`],[`l`,`1`,`2`],[`c`]]},{w:2,h:2,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`0`,`1`],[`l`,`2`,`1`]]},{w:2,h:2,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`0`,`1`],[`l`,`1`,`0`],[`l`,`2`,`1`],[`l`,`1`,`2`],[`c`]]}]},flowchartsummingjunction:{adj:[],gd:[[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`a`,`wd2`,`hd2`,`3cd4`,`cd4`],[`a`,`wd2`,`hd2`,`0`,`cd4`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`il`,`it`],[`l`,`ir`,`ib`],[`m`,`ir`,`it`],[`l`,`il`,`ib`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`a`,`wd2`,`hd2`,`3cd4`,`cd4`],[`a`,`wd2`,`hd2`,`0`,`cd4`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`c`]]}]},flowchartterminator:{adj:[],gd:[[`il`,`*/ w 1018 21600`],[`ir`,`*/ w 20582 21600`],[`it`,`*/ h 3163 21600`],[`ib`,`*/ h 18437 21600`]],paths:[{w:21600,h:21600,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`3475`,`0`],[`l`,`18125`,`0`],[`a`,`3475`,`10800`,`3cd4`,`cd2`],[`l`,`3475`,`21600`],[`a`,`3475`,`10800`,`cd4`,`cd2`],[`c`]]}]},foldedcorner:{adj:[[`adj`,`val 16667`]],gd:[[`a`,`pin 0 adj 50000`],[`dy2`,`*/ ss a 100000`],[`dy1`,`*/ dy2 1 5`],[`x1`,`+- r 0 dy2`],[`x2`,`+- x1 dy1 0`],[`y2`,`+- b 0 dy2`],[`y1`,`+- y2 dy1 0`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`y2`],[`l`,`x1`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x1`,`b`],[`l`,`x2`,`y1`],[`l`,`r`,`y2`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`b`],[`l`,`x2`,`y1`],[`l`,`r`,`y2`],[`l`,`x1`,`b`],[`l`,`l`,`b`],[`l`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`y2`]]}]},frame:{adj:[[`adj1`,`val 12500`]],gd:[[`a1`,`pin 0 adj1 50000`],[`x1`,`*/ ss a1 100000`],[`x4`,`+- r 0 x1`],[`y4`,`+- b 0 x1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`],[`m`,`x1`,`x1`],[`l`,`x1`,`y4`],[`l`,`x4`,`y4`],[`l`,`x4`,`x1`],[`c`]]}]},funnel:{adj:[],gd:[[`d`,`*/ ss 1 20`],[`rw2`,`+- wd2 0 d`],[`rh2`,`+- hd4 0 d`],[`t1`,`cos wd2 480000`],[`t2`,`sin hd4 480000`],[`da`,`at2 t1 t2`],[`2da`,`*/ da 2 1`],[`stAng1`,`+- cd2 0 da`],[`swAng1`,`+- cd2 2da 0`],[`swAng3`,`+- cd2 0 2da`],[`rw3`,`*/ wd2 1 4`],[`rh3`,`*/ hd4 1 4`],[`ct1`,`cos hd4 stAng1`],[`st1`,`sin wd2 stAng1`],[`m1`,`mod ct1 st1 0`],[`n1`,`*/ wd2 hd4 m1`],[`dx1`,`cos n1 stAng1`],[`dy1`,`sin n1 stAng1`],[`x1`,`+- hc dx1 0`],[`y1`,`+- hd4 dy1 0`],[`ct3`,`cos rh3 da`],[`st3`,`sin rw3 da`],[`m3`,`mod ct3 st3 0`],[`n3`,`*/ rw3 rh3 m3`],[`dx3`,`cos n3 da`],[`dy3`,`sin n3 da`],[`x3`,`+- hc dx3 0`],[`vc3`,`+- b 0 rh3`],[`y2`,`+- vc3 dy3 0`],[`x2`,`+- wd2 0 rw2`],[`cd`,`*/ cd2 2 1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`a`,`wd2`,`hd4`,`stAng1`,`swAng1`],[`l`,`x3`,`y2`],[`a`,`rw3`,`rh3`,`da`,`swAng3`],[`c`],[`m`,`x2`,`hd4`],[`a`,`rw2`,`rh2`,`cd2`,`-21600000`],[`c`]]}]},gear6:{adj:[[`adj1`,`val 15000`],[`adj2`,`val 3526`]],gd:[[`a1`,`pin 0 adj1 20000`],[`a2`,`pin 0 adj2 5358`],[`th`,`*/ ss a1 100000`],[`lFD`,`*/ ss a2 100000`],[`th2`,`*/ th 1 2`],[`l2`,`*/ lFD 1 2`],[`l3`,`+- th2 l2 0`],[`rh`,`+- hd2 0 th`],[`rw`,`+- wd2 0 th`],[`dr`,`+- rw 0 rh`],[`maxr`,`?: dr rh rw`],[`ha`,`at2 maxr l3`],[`aA1`,`+- 19800000 0 ha`],[`aD1`,`+- 19800000 ha 0`],[`ta11`,`cos rw aA1`],[`ta12`,`sin rh aA1`],[`bA1`,`at2 ta11 ta12`],[`cta1`,`cos rh bA1`],[`sta1`,`sin rw bA1`],[`ma1`,`mod cta1 sta1 0`],[`na1`,`*/ rw rh ma1`],[`dxa1`,`cos na1 bA1`],[`dya1`,`sin na1 bA1`],[`xA1`,`+- hc dxa1 0`],[`yA1`,`+- vc dya1 0`],[`td11`,`cos rw aD1`],[`td12`,`sin rh aD1`],[`bD1`,`at2 td11 td12`],[`ctd1`,`cos rh bD1`],[`std1`,`sin rw bD1`],[`md1`,`mod ctd1 std1 0`],[`nd1`,`*/ rw rh md1`],[`dxd1`,`cos nd1 bD1`],[`dyd1`,`sin nd1 bD1`],[`xD1`,`+- hc dxd1 0`],[`yD1`,`+- vc dyd1 0`],[`xAD1`,`+- xA1 0 xD1`],[`yAD1`,`+- yA1 0 yD1`],[`lAD1`,`mod xAD1 yAD1 0`],[`a1`,`at2 yAD1 xAD1`],[`dxF1`,`sin lFD a1`],[`dyF1`,`cos lFD a1`],[`xF1`,`+- xD1 dxF1 0`],[`yF1`,`+- yD1 dyF1 0`],[`xE1`,`+- xA1 0 dxF1`],[`yE1`,`+- yA1 0 dyF1`],[`yC1t`,`sin th a1`],[`xC1t`,`cos th a1`],[`yC1`,`+- yF1 yC1t 0`],[`xC1`,`+- xF1 0 xC1t`],[`yB1`,`+- yE1 yC1t 0`],[`xB1`,`+- xE1 0 xC1t`],[`aD6`,`+- 3cd4 ha 0`],[`td61`,`cos rw aD6`],[`td62`,`sin rh aD6`],[`bD6`,`at2 td61 td62`],[`ctd6`,`cos rh bD6`],[`std6`,`sin rw bD6`],[`md6`,`mod ctd6 std6 0`],[`nd6`,`*/ rw rh md6`],[`dxd6`,`cos nd6 bD6`],[`dyd6`,`sin nd6 bD6`],[`xD6`,`+- hc dxd6 0`],[`yD6`,`+- vc dyd6 0`],[`xA6`,`+- hc 0 dxd6`],[`xF6`,`+- xD6 0 lFD`],[`xE6`,`+- xA6 lFD 0`],[`yC6`,`+- yD6 0 th`],[`swAng1`,`+- bA1 0 bD6`],[`aA2`,`+- 1800000 0 ha`],[`aD2`,`+- 1800000 ha 0`],[`ta21`,`cos rw aA2`],[`ta22`,`sin rh aA2`],[`bA2`,`at2 ta21 ta22`],[`yA2`,`+- h 0 yD1`],[`td21`,`cos rw aD2`],[`td22`,`sin rh aD2`],[`bD2`,`at2 td21 td22`],[`yD2`,`+- h 0 yA1`],[`yC2`,`+- h 0 yB1`],[`yB2`,`+- h 0 yC1`],[`xB2`,`val xC1`],[`swAng2`,`+- bA2 0 bD1`],[`aD3`,`+- cd4 ha 0`],[`td31`,`cos rw aD3`],[`td32`,`sin rh aD3`],[`bD3`,`at2 td31 td32`],[`yD3`,`+- h 0 yD6`],[`yB3`,`+- h 0 yC6`],[`aD4`,`+- 9000000 ha 0`],[`td41`,`cos rw aD4`],[`td42`,`sin rh aD4`],[`bD4`,`at2 td41 td42`],[`xD4`,`+- w 0 xD1`],[`xC4`,`+- w 0 xC1`],[`xB4`,`+- w 0 xB1`],[`aD5`,`+- 12600000 ha 0`],[`td51`,`cos rw aD5`],[`td52`,`sin rh aD5`],[`bD5`,`at2 td51 td52`],[`xD5`,`+- w 0 xA1`],[`xC5`,`+- w 0 xB1`],[`xB5`,`+- w 0 xC1`],[`xCxn1`,`+/ xB1 xC1 2`],[`yCxn1`,`+/ yB1 yC1 2`],[`yCxn2`,`+- b 0 yCxn1`],[`xCxn4`,`+/ r 0 xCxn1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`xA1`,`yA1`],[`l`,`xB1`,`yB1`],[`l`,`xC1`,`yC1`],[`l`,`xD1`,`yD1`],[`a`,`rw`,`rh`,`bD1`,`swAng2`],[`l`,`xC1`,`yB2`],[`l`,`xB1`,`yC2`],[`l`,`xA1`,`yD2`],[`a`,`rw`,`rh`,`bD2`,`swAng1`],[`l`,`xF6`,`yB3`],[`l`,`xE6`,`yB3`],[`l`,`xA6`,`yD3`],[`a`,`rw`,`rh`,`bD3`,`swAng1`],[`l`,`xB4`,`yC2`],[`l`,`xC4`,`yB2`],[`l`,`xD4`,`yA2`],[`a`,`rw`,`rh`,`bD4`,`swAng2`],[`l`,`xB5`,`yC1`],[`l`,`xC5`,`yB1`],[`l`,`xD5`,`yA1`],[`a`,`rw`,`rh`,`bD5`,`swAng1`],[`l`,`xE6`,`yC6`],[`l`,`xF6`,`yC6`],[`l`,`xD6`,`yD6`],[`a`,`rw`,`rh`,`bD6`,`swAng1`],[`c`]]}]},gear9:{adj:[[`adj1`,`val 10000`],[`adj2`,`val 1763`]],gd:[[`a1`,`pin 0 adj1 20000`],[`a2`,`pin 0 adj2 2679`],[`th`,`*/ ss a1 100000`],[`lFD`,`*/ ss a2 100000`],[`th2`,`*/ th 1 2`],[`l2`,`*/ lFD 1 2`],[`l3`,`+- th2 l2 0`],[`rh`,`+- hd2 0 th`],[`rw`,`+- wd2 0 th`],[`dr`,`+- rw 0 rh`],[`maxr`,`?: dr rh rw`],[`ha`,`at2 maxr l3`],[`aA1`,`+- 18600000 0 ha`],[`aD1`,`+- 18600000 ha 0`],[`ta11`,`cos rw aA1`],[`ta12`,`sin rh aA1`],[`bA1`,`at2 ta11 ta12`],[`cta1`,`cos rh bA1`],[`sta1`,`sin rw bA1`],[`ma1`,`mod cta1 sta1 0`],[`na1`,`*/ rw rh ma1`],[`dxa1`,`cos na1 bA1`],[`dya1`,`sin na1 bA1`],[`xA1`,`+- hc dxa1 0`],[`yA1`,`+- vc dya1 0`],[`td11`,`cos rw aD1`],[`td12`,`sin rh aD1`],[`bD1`,`at2 td11 td12`],[`ctd1`,`cos rh bD1`],[`std1`,`sin rw bD1`],[`md1`,`mod ctd1 std1 0`],[`nd1`,`*/ rw rh md1`],[`dxd1`,`cos nd1 bD1`],[`dyd1`,`sin nd1 bD1`],[`xD1`,`+- hc dxd1 0`],[`yD1`,`+- vc dyd1 0`],[`xAD1`,`+- xA1 0 xD1`],[`yAD1`,`+- yA1 0 yD1`],[`lAD1`,`mod xAD1 yAD1 0`],[`a1`,`at2 yAD1 xAD1`],[`dxF1`,`sin lFD a1`],[`dyF1`,`cos lFD a1`],[`xF1`,`+- xD1 dxF1 0`],[`yF1`,`+- yD1 dyF1 0`],[`xE1`,`+- xA1 0 dxF1`],[`yE1`,`+- yA1 0 dyF1`],[`yC1t`,`sin th a1`],[`xC1t`,`cos th a1`],[`yC1`,`+- yF1 yC1t 0`],[`xC1`,`+- xF1 0 xC1t`],[`yB1`,`+- yE1 yC1t 0`],[`xB1`,`+- xE1 0 xC1t`],[`aA2`,`+- 21000000 0 ha`],[`aD2`,`+- 21000000 ha 0`],[`ta21`,`cos rw aA2`],[`ta22`,`sin rh aA2`],[`bA2`,`at2 ta21 ta22`],[`cta2`,`cos rh bA2`],[`sta2`,`sin rw bA2`],[`ma2`,`mod cta2 sta2 0`],[`na2`,`*/ rw rh ma2`],[`dxa2`,`cos na2 bA2`],[`dya2`,`sin na2 bA2`],[`xA2`,`+- hc dxa2 0`],[`yA2`,`+- vc dya2 0`],[`td21`,`cos rw aD2`],[`td22`,`sin rh aD2`],[`bD2`,`at2 td21 td22`],[`ctd2`,`cos rh bD2`],[`std2`,`sin rw bD2`],[`md2`,`mod ctd2 std2 0`],[`nd2`,`*/ rw rh md2`],[`dxd2`,`cos nd2 bD2`],[`dyd2`,`sin nd2 bD2`],[`xD2`,`+- hc dxd2 0`],[`yD2`,`+- vc dyd2 0`],[`xAD2`,`+- xA2 0 xD2`],[`yAD2`,`+- yA2 0 yD2`],[`lAD2`,`mod xAD2 yAD2 0`],[`a2`,`at2 yAD2 xAD2`],[`dxF2`,`sin lFD a2`],[`dyF2`,`cos lFD a2`],[`xF2`,`+- xD2 dxF2 0`],[`yF2`,`+- yD2 dyF2 0`],[`xE2`,`+- xA2 0 dxF2`],[`yE2`,`+- yA2 0 dyF2`],[`yC2t`,`sin th a2`],[`xC2t`,`cos th a2`],[`yC2`,`+- yF2 yC2t 0`],[`xC2`,`+- xF2 0 xC2t`],[`yB2`,`+- yE2 yC2t 0`],[`xB2`,`+- xE2 0 xC2t`],[`swAng1`,`+- bA2 0 bD1`],[`aA3`,`+- 1800000 0 ha`],[`aD3`,`+- 1800000 ha 0`],[`ta31`,`cos rw aA3`],[`ta32`,`sin rh aA3`],[`bA3`,`at2 ta31 ta32`],[`cta3`,`cos rh bA3`],[`sta3`,`sin rw bA3`],[`ma3`,`mod cta3 sta3 0`],[`na3`,`*/ rw rh ma3`],[`dxa3`,`cos na3 bA3`],[`dya3`,`sin na3 bA3`],[`xA3`,`+- hc dxa3 0`],[`yA3`,`+- vc dya3 0`],[`td31`,`cos rw aD3`],[`td32`,`sin rh aD3`],[`bD3`,`at2 td31 td32`],[`ctd3`,`cos rh bD3`],[`std3`,`sin rw bD3`],[`md3`,`mod ctd3 std3 0`],[`nd3`,`*/ rw rh md3`],[`dxd3`,`cos nd3 bD3`],[`dyd3`,`sin nd3 bD3`],[`xD3`,`+- hc dxd3 0`],[`yD3`,`+- vc dyd3 0`],[`xAD3`,`+- xA3 0 xD3`],[`yAD3`,`+- yA3 0 yD3`],[`lAD3`,`mod xAD3 yAD3 0`],[`a3`,`at2 yAD3 xAD3`],[`dxF3`,`sin lFD a3`],[`dyF3`,`cos lFD a3`],[`xF3`,`+- xD3 dxF3 0`],[`yF3`,`+- yD3 dyF3 0`],[`xE3`,`+- xA3 0 dxF3`],[`yE3`,`+- yA3 0 dyF3`],[`yC3t`,`sin th a3`],[`xC3t`,`cos th a3`],[`yC3`,`+- yF3 yC3t 0`],[`xC3`,`+- xF3 0 xC3t`],[`yB3`,`+- yE3 yC3t 0`],[`xB3`,`+- xE3 0 xC3t`],[`swAng2`,`+- bA3 0 bD2`],[`aA4`,`+- 4200000 0 ha`],[`aD4`,`+- 4200000 ha 0`],[`ta41`,`cos rw aA4`],[`ta42`,`sin rh aA4`],[`bA4`,`at2 ta41 ta42`],[`cta4`,`cos rh bA4`],[`sta4`,`sin rw bA4`],[`ma4`,`mod cta4 sta4 0`],[`na4`,`*/ rw rh ma4`],[`dxa4`,`cos na4 bA4`],[`dya4`,`sin na4 bA4`],[`xA4`,`+- hc dxa4 0`],[`yA4`,`+- vc dya4 0`],[`td41`,`cos rw aD4`],[`td42`,`sin rh aD4`],[`bD4`,`at2 td41 td42`],[`ctd4`,`cos rh bD4`],[`std4`,`sin rw bD4`],[`md4`,`mod ctd4 std4 0`],[`nd4`,`*/ rw rh md4`],[`dxd4`,`cos nd4 bD4`],[`dyd4`,`sin nd4 bD4`],[`xD4`,`+- hc dxd4 0`],[`yD4`,`+- vc dyd4 0`],[`xAD4`,`+- xA4 0 xD4`],[`yAD4`,`+- yA4 0 yD4`],[`lAD4`,`mod xAD4 yAD4 0`],[`a4`,`at2 yAD4 xAD4`],[`dxF4`,`sin lFD a4`],[`dyF4`,`cos lFD a4`],[`xF4`,`+- xD4 dxF4 0`],[`yF4`,`+- yD4 dyF4 0`],[`xE4`,`+- xA4 0 dxF4`],[`yE4`,`+- yA4 0 dyF4`],[`yC4t`,`sin th a4`],[`xC4t`,`cos th a4`],[`yC4`,`+- yF4 yC4t 0`],[`xC4`,`+- xF4 0 xC4t`],[`yB4`,`+- yE4 yC4t 0`],[`xB4`,`+- xE4 0 xC4t`],[`swAng3`,`+- bA4 0 bD3`],[`aA5`,`+- 6600000 0 ha`],[`aD5`,`+- 6600000 ha 0`],[`ta51`,`cos rw aA5`],[`ta52`,`sin rh aA5`],[`bA5`,`at2 ta51 ta52`],[`td51`,`cos rw aD5`],[`td52`,`sin rh aD5`],[`bD5`,`at2 td51 td52`],[`xD5`,`+- w 0 xA4`],[`xC5`,`+- w 0 xB4`],[`xB5`,`+- w 0 xC4`],[`swAng4`,`+- bA5 0 bD4`],[`aD6`,`+- 9000000 ha 0`],[`td61`,`cos rw aD6`],[`td62`,`sin rh aD6`],[`bD6`,`at2 td61 td62`],[`xD6`,`+- w 0 xA3`],[`xC6`,`+- w 0 xB3`],[`xB6`,`+- w 0 xC3`],[`aD7`,`+- 11400000 ha 0`],[`td71`,`cos rw aD7`],[`td72`,`sin rh aD7`],[`bD7`,`at2 td71 td72`],[`xD7`,`+- w 0 xA2`],[`xC7`,`+- w 0 xB2`],[`xB7`,`+- w 0 xC2`],[`aD8`,`+- 13800000 ha 0`],[`td81`,`cos rw aD8`],[`td82`,`sin rh aD8`],[`bD8`,`at2 td81 td82`],[`xA8`,`+- w 0 xD1`],[`xD8`,`+- w 0 xA1`],[`xC8`,`+- w 0 xB1`],[`xB8`,`+- w 0 xC1`],[`aA9`,`+- 3cd4 0 ha`],[`aD9`,`+- 3cd4 ha 0`],[`td91`,`cos rw aD9`],[`td92`,`sin rh aD9`],[`bD9`,`at2 td91 td92`],[`ctd9`,`cos rh bD9`],[`std9`,`sin rw bD9`],[`md9`,`mod ctd9 std9 0`],[`nd9`,`*/ rw rh md9`],[`dxd9`,`cos nd9 bD9`],[`dyd9`,`sin nd9 bD9`],[`xD9`,`+- hc dxd9 0`],[`yD9`,`+- vc dyd9 0`],[`ta91`,`cos rw aA9`],[`ta92`,`sin rh aA9`],[`bA9`,`at2 ta91 ta92`],[`xA9`,`+- hc 0 dxd9`],[`xF9`,`+- xD9 0 lFD`],[`xE9`,`+- xA9 lFD 0`],[`yC9`,`+- yD9 0 th`],[`swAng5`,`+- bA9 0 bD8`],[`xCxn1`,`+/ xB1 xC1 2`],[`yCxn1`,`+/ yB1 yC1 2`],[`xCxn2`,`+/ xB2 xC2 2`],[`yCxn2`,`+/ yB2 yC2 2`],[`xCxn3`,`+/ xB3 xC3 2`],[`yCxn3`,`+/ yB3 yC3 2`],[`xCxn4`,`+/ xB4 xC4 2`],[`yCxn4`,`+/ yB4 yC4 2`],[`xCxn5`,`+/ r 0 xCxn4`],[`xCxn6`,`+/ r 0 xCxn3`],[`xCxn7`,`+/ r 0 xCxn2`],[`xCxn8`,`+/ r 0 xCxn1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`xA1`,`yA1`],[`l`,`xB1`,`yB1`],[`l`,`xC1`,`yC1`],[`l`,`xD1`,`yD1`],[`a`,`rw`,`rh`,`bD1`,`swAng1`],[`l`,`xB2`,`yB2`],[`l`,`xC2`,`yC2`],[`l`,`xD2`,`yD2`],[`a`,`rw`,`rh`,`bD2`,`swAng2`],[`l`,`xB3`,`yB3`],[`l`,`xC3`,`yC3`],[`l`,`xD3`,`yD3`],[`a`,`rw`,`rh`,`bD3`,`swAng3`],[`l`,`xB4`,`yB4`],[`l`,`xC4`,`yC4`],[`l`,`xD4`,`yD4`],[`a`,`rw`,`rh`,`bD4`,`swAng4`],[`l`,`xB5`,`yC4`],[`l`,`xC5`,`yB4`],[`l`,`xD5`,`yA4`],[`a`,`rw`,`rh`,`bD5`,`swAng3`],[`l`,`xB6`,`yC3`],[`l`,`xC6`,`yB3`],[`l`,`xD6`,`yA3`],[`a`,`rw`,`rh`,`bD6`,`swAng2`],[`l`,`xB7`,`yC2`],[`l`,`xC7`,`yB2`],[`l`,`xD7`,`yA2`],[`a`,`rw`,`rh`,`bD7`,`swAng1`],[`l`,`xB8`,`yC1`],[`l`,`xC8`,`yB1`],[`l`,`xD8`,`yA1`],[`a`,`rw`,`rh`,`bD8`,`swAng5`],[`l`,`xE9`,`yC9`],[`l`,`xF9`,`yC9`],[`l`,`xD9`,`yD9`],[`a`,`rw`,`rh`,`bD9`,`swAng5`],[`c`]]}]},halfframe:{adj:[[`adj1`,`val 33333`],[`adj2`,`val 33333`]],gd:[[`maxAdj2`,`*/ 100000 w ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`x1`,`*/ ss a2 100000`],[`g1`,`*/ h x1 w`],[`g2`,`+- h 0 g1`],[`maxAdj1`,`*/ 100000 g2 ss`],[`a1`,`pin 0 adj1 maxAdj1`],[`y1`,`*/ ss a1 100000`],[`dx2`,`*/ y1 w h`],[`x2`,`+- r 0 dx2`],[`dy2`,`*/ x1 h w`],[`y2`,`+- b 0 dy2`],[`cx1`,`*/ x1 1 2`],[`cy1`,`+/ y2 b 2`],[`cx2`,`+/ x2 r 2`],[`cy2`,`*/ y1 1 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`x2`,`y1`],[`l`,`x1`,`y1`],[`l`,`x1`,`y2`],[`l`,`l`,`b`],[`c`]]}]},heart:{adj:[],gd:[[`dx1`,`*/ w 49 48`],[`dx2`,`*/ w 10 48`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`],[`x4`,`+- hc dx1 0`],[`y1`,`+- t 0 hd3`],[`il`,`*/ w 1 6`],[`ir`,`*/ w 5 6`],[`ib`,`*/ h 2 3`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`hc`,`hd4`],[`C`,`x3`,`y1`,`x4`,`hd4`,`hc`,`b`],[`C`,`x1`,`hd4`,`x2`,`y1`,`hc`,`hd4`],[`c`]]}]},heptagon:{adj:[[`hf`,`val 102572`],[`vf`,`val 105210`]],gd:[[`swd2`,`*/ wd2 hf 100000`],[`shd2`,`*/ hd2 vf 100000`],[`svc`,`*/ vc vf 100000`],[`dx1`,`*/ swd2 97493 100000`],[`dx2`,`*/ swd2 78183 100000`],[`dx3`,`*/ swd2 43388 100000`],[`dy1`,`*/ shd2 62349 100000`],[`dy2`,`*/ shd2 22252 100000`],[`dy3`,`*/ shd2 90097 100000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc 0 dx3`],[`x4`,`+- hc dx3 0`],[`x5`,`+- hc dx2 0`],[`x6`,`+- hc dx1 0`],[`y1`,`+- svc 0 dy1`],[`y2`,`+- svc dy2 0`],[`y3`,`+- svc dy3 0`],[`ib`,`+- b 0 y1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y2`],[`l`,`x2`,`y1`],[`l`,`hc`,`t`],[`l`,`x5`,`y1`],[`l`,`x6`,`y2`],[`l`,`x4`,`y3`],[`l`,`x3`,`y3`],[`c`]]}]},hexagon:{adj:[[`adj`,`val 25000`],[`vf`,`val 115470`]],gd:[[`maxAdj`,`*/ 50000 w ss`],[`a`,`pin 0 adj maxAdj`],[`shd2`,`*/ hd2 vf 100000`],[`x1`,`*/ ss a 100000`],[`x2`,`+- r 0 x1`],[`dy1`,`sin shd2 3600000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc dy1 0`],[`q1`,`*/ maxAdj -1 2`],[`q2`,`+- a q1 0`],[`q3`,`?: q2 4 2`],[`q4`,`?: q2 3 2`],[`q5`,`?: q2 q1 0`],[`q6`,`+/ a q5 q1`],[`q7`,`*/ q6 q4 -1`],[`q8`,`+- q3 q7 0`],[`il`,`*/ w q8 24`],[`it`,`*/ h q8 24`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 it`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`x1`,`y1`],[`l`,`x2`,`y1`],[`l`,`r`,`vc`],[`l`,`x2`,`y2`],[`l`,`x1`,`y2`],[`c`]]}]},homeplate:{adj:[[`adj`,`val 50000`]],gd:[[`maxAdj`,`*/ 100000 w ss`],[`a`,`pin 0 adj maxAdj`],[`dx1`,`*/ ss a 100000`],[`x1`,`+- r 0 dx1`],[`ir`,`+/ x1 r 2`],[`x2`,`*/ x1 1 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x1`,`t`],[`l`,`r`,`vc`],[`l`,`x1`,`b`],[`l`,`l`,`b`],[`c`]]}]},horizontalscroll:{adj:[[`adj`,`val 12500`]],gd:[[`a`,`pin 0 adj 25000`],[`ch`,`*/ ss a 100000`],[`ch2`,`*/ ch 1 2`],[`ch4`,`*/ ch 1 4`],[`y3`,`+- ch ch2 0`],[`y4`,`+- ch ch 0`],[`y6`,`+- b 0 ch`],[`y7`,`+- b 0 ch2`],[`y5`,`+- y6 0 ch2`],[`x3`,`+- r 0 ch`],[`x4`,`+- r 0 ch2`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`r`,`ch2`],[`a`,`ch2`,`ch2`,`0`,`cd4`],[`l`,`x4`,`ch2`],[`a`,`ch4`,`ch4`,`0`,`cd2`],[`l`,`x3`,`ch`],[`l`,`ch2`,`ch`],[`a`,`ch2`,`ch2`,`3cd4`,`-5400000`],[`l`,`l`,`y7`],[`a`,`ch2`,`ch2`,`cd2`,`-10800000`],[`l`,`ch`,`y6`],[`l`,`x4`,`y6`],[`a`,`ch2`,`ch2`,`cd4`,`-5400000`],[`c`],[`m`,`ch2`,`y4`],[`a`,`ch2`,`ch2`,`cd4`,`-5400000`],[`a`,`ch4`,`ch4`,`0`,`-10800000`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`ch2`,`y4`],[`a`,`ch2`,`ch2`,`cd4`,`-5400000`],[`a`,`ch4`,`ch4`,`0`,`-10800000`],[`c`],[`m`,`x4`,`ch`],[`a`,`ch2`,`ch2`,`cd4`,`-16200000`],[`a`,`ch4`,`ch4`,`cd2`,`-10800000`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`y3`],[`a`,`ch2`,`ch2`,`cd2`,`cd4`],[`l`,`x3`,`ch`],[`l`,`x3`,`ch2`],[`a`,`ch2`,`ch2`,`cd2`,`cd2`],[`l`,`r`,`y5`],[`a`,`ch2`,`ch2`,`0`,`cd4`],[`l`,`ch`,`y6`],[`l`,`ch`,`y7`],[`a`,`ch2`,`ch2`,`0`,`cd2`],[`c`],[`m`,`x3`,`ch`],[`l`,`x4`,`ch`],[`a`,`ch2`,`ch2`,`cd4`,`-5400000`],[`m`,`x4`,`ch`],[`l`,`x4`,`ch2`],[`a`,`ch4`,`ch4`,`0`,`cd2`],[`m`,`ch2`,`y4`],[`l`,`ch2`,`y3`],[`a`,`ch4`,`ch4`,`cd2`,`cd2`],[`a`,`ch2`,`ch2`,`0`,`cd2`],[`m`,`ch`,`y3`],[`l`,`ch`,`y6`]]}]},irregularseal1:{adj:[],gd:[[`x5`,`*/ w 4627 21600`],[`x12`,`*/ w 8485 21600`],[`x21`,`*/ w 16702 21600`],[`x24`,`*/ w 14522 21600`],[`y3`,`*/ h 6320 21600`],[`y6`,`*/ h 8615 21600`],[`y9`,`*/ h 13937 21600`],[`y18`,`*/ h 13290 21600`]],paths:[{w:21600,h:21600,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`10800`,`5800`],[`l`,`14522`,`0`],[`l`,`14155`,`5325`],[`l`,`18380`,`4457`],[`l`,`16702`,`7315`],[`l`,`21097`,`8137`],[`l`,`17607`,`10475`],[`l`,`21600`,`13290`],[`l`,`16837`,`12942`],[`l`,`18145`,`18095`],[`l`,`14020`,`14457`],[`l`,`13247`,`19737`],[`l`,`10532`,`14935`],[`l`,`8485`,`21600`],[`l`,`7715`,`15627`],[`l`,`4762`,`17617`],[`l`,`5667`,`13937`],[`l`,`135`,`14587`],[`l`,`3722`,`11775`],[`l`,`0`,`8615`],[`l`,`4627`,`7617`],[`l`,`370`,`2295`],[`l`,`7312`,`6320`],[`l`,`8352`,`2295`],[`c`]]}]},irregularseal2:{adj:[],gd:[[`x2`,`*/ w 9722 21600`],[`x5`,`*/ w 5372 21600`],[`x16`,`*/ w 11612 21600`],[`x19`,`*/ w 14640 21600`],[`y2`,`*/ h 1887 21600`],[`y3`,`*/ h 6382 21600`],[`y8`,`*/ h 12877 21600`],[`y14`,`*/ h 19712 21600`],[`y16`,`*/ h 18842 21600`],[`y17`,`*/ h 15935 21600`],[`y24`,`*/ h 6645 21600`]],paths:[{w:21600,h:21600,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`11462`,`4342`],[`l`,`14790`,`0`],[`l`,`14525`,`5777`],[`l`,`18007`,`3172`],[`l`,`16380`,`6532`],[`l`,`21600`,`6645`],[`l`,`16985`,`9402`],[`l`,`18270`,`11290`],[`l`,`16380`,`12310`],[`l`,`18877`,`15632`],[`l`,`14640`,`14350`],[`l`,`14942`,`17370`],[`l`,`12180`,`15935`],[`l`,`11612`,`18842`],[`l`,`9872`,`17370`],[`l`,`8700`,`19712`],[`l`,`7527`,`18125`],[`l`,`4917`,`21600`],[`l`,`4805`,`18240`],[`l`,`1285`,`17825`],[`l`,`3330`,`15370`],[`l`,`0`,`12877`],[`l`,`3935`,`11592`],[`l`,`1172`,`8270`],[`l`,`5372`,`7817`],[`l`,`4502`,`3625`],[`l`,`8550`,`6382`],[`l`,`9722`,`1887`],[`c`]]}]},leftarrow:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`maxAdj2`,`*/ 100000 w ss`],[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 0 adj2 maxAdj2`],[`dx2`,`*/ ss a2 100000`],[`x2`,`+- l dx2 0`],[`dy1`,`*/ h a1 200000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc dy1 0`],[`dx1`,`*/ y1 dx2 hd2`],[`x1`,`+- x2 0 dx1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`x2`,`t`],[`l`,`x2`,`y1`],[`l`,`r`,`y1`],[`l`,`r`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`b`],[`c`]]}]},leftarrowcallout:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`],[`adj4`,`val 64977`]],gd:[[`maxAdj2`,`*/ 50000 h ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`maxAdj3`,`*/ 100000 w ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`q2`,`*/ a3 ss w`],[`maxAdj4`,`+- 100000 0 q2`],[`a4`,`pin 0 adj4 maxAdj4`],[`dy1`,`*/ ss a2 100000`],[`dy2`,`*/ ss a1 200000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc dy2 0`],[`y4`,`+- vc dy1 0`],[`x1`,`*/ ss a3 100000`],[`dx2`,`*/ w a4 100000`],[`x2`,`+- r 0 dx2`],[`x3`,`+/ x2 r 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`x1`,`y1`],[`l`,`x1`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`x2`,`b`],[`l`,`x2`,`y3`],[`l`,`x1`,`y3`],[`l`,`x1`,`y4`],[`c`]]}]},leftbrace:{adj:[[`adj1`,`val 8333`],[`adj2`,`val 50000`]],gd:[[`a2`,`pin 0 adj2 100000`],[`q1`,`+- 100000 0 a2`],[`q2`,`min q1 a2`],[`q3`,`*/ q2 1 2`],[`maxAdj1`,`*/ q3 h ss`],[`a1`,`pin 0 adj1 maxAdj1`],[`y1`,`*/ ss a1 100000`],[`y3`,`*/ h a2 100000`],[`y4`,`+- y3 y1 0`],[`dx1`,`cos wd2 2700000`],[`dy1`,`sin y1 2700000`],[`il`,`+- r 0 dx1`],[`it`,`+- y1 0 dy1`],[`ib`,`+- b dy1 y1`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`r`,`b`],[`a`,`wd2`,`y1`,`cd4`,`cd4`],[`l`,`hc`,`y4`],[`a`,`wd2`,`y1`,`0`,`-5400000`],[`a`,`wd2`,`y1`,`cd4`,`-5400000`],[`l`,`hc`,`y1`],[`a`,`wd2`,`y1`,`cd2`,`cd4`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`r`,`b`],[`a`,`wd2`,`y1`,`cd4`,`cd4`],[`l`,`hc`,`y4`],[`a`,`wd2`,`y1`,`0`,`-5400000`],[`a`,`wd2`,`y1`,`cd4`,`-5400000`],[`l`,`hc`,`y1`],[`a`,`wd2`,`y1`,`cd2`,`cd4`]]}]},leftbracket:{adj:[[`adj`,`val 8333`]],gd:[[`maxAdj`,`*/ 50000 h ss`],[`a`,`pin 0 adj maxAdj`],[`y1`,`*/ ss a 100000`],[`y2`,`+- b 0 y1`],[`dx1`,`cos w 2700000`],[`dy1`,`sin y1 2700000`],[`il`,`+- r 0 dx1`],[`it`,`+- y1 0 dy1`],[`ib`,`+- b dy1 y1`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`r`,`b`],[`a`,`w`,`y1`,`cd4`,`cd4`],[`l`,`l`,`y1`],[`a`,`w`,`y1`,`cd2`,`cd4`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`r`,`b`],[`a`,`w`,`y1`,`cd4`,`cd4`],[`l`,`l`,`y1`],[`a`,`w`,`y1`,`cd2`,`cd4`]]}]},leftcirculararrow:{adj:[[`adj1`,`val 12500`],[`adj2`,`val -1142319`],[`adj3`,`val 1142319`],[`adj4`,`val 10800000`],[`adj5`,`val 12500`]],gd:[[`a5`,`pin 0 adj5 25000`],[`maxAdj1`,`*/ a5 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`enAng`,`pin 1 adj3 21599999`],[`stAng`,`pin 0 adj4 21599999`],[`th`,`*/ ss a1 100000`],[`thh`,`*/ ss a5 100000`],[`th2`,`*/ th 1 2`],[`rw1`,`+- wd2 th2 thh`],[`rh1`,`+- hd2 th2 thh`],[`rw2`,`+- rw1 0 th`],[`rh2`,`+- rh1 0 th`],[`rw3`,`+- rw2 th2 0`],[`rh3`,`+- rh2 th2 0`],[`wtH`,`sin rw3 enAng`],[`htH`,`cos rh3 enAng`],[`dxH`,`cat2 rw3 htH wtH`],[`dyH`,`sat2 rh3 htH wtH`],[`xH`,`+- hc dxH 0`],[`yH`,`+- vc dyH 0`],[`rI`,`min rw2 rh2`],[`u1`,`*/ dxH dxH 1`],[`u2`,`*/ dyH dyH 1`],[`u3`,`*/ rI rI 1`],[`u4`,`+- u1 0 u3`],[`u5`,`+- u2 0 u3`],[`u6`,`*/ u4 u5 u1`],[`u7`,`*/ u6 1 u2`],[`u8`,`+- 1 0 u7`],[`u9`,`sqrt u8`],[`u10`,`*/ u4 1 dxH`],[`u11`,`*/ u10 1 dyH`],[`u12`,`+/ 1 u9 u11`],[`u13`,`at2 1 u12`],[`u14`,`+- u13 21600000 0`],[`u15`,`?: u13 u13 u14`],[`u16`,`+- u15 0 enAng`],[`u17`,`+- u16 21600000 0`],[`u18`,`?: u16 u16 u17`],[`u19`,`+- u18 0 cd2`],[`u20`,`+- u18 0 21600000`],[`u21`,`?: u19 u20 u18`],[`u22`,`abs u21`],[`minAng`,`*/ u22 -1 1`],[`u23`,`abs adj2`],[`a2`,`*/ u23 -1 1`],[`aAng`,`pin minAng a2 0`],[`ptAng`,`+- enAng aAng 0`],[`wtA`,`sin rw3 ptAng`],[`htA`,`cos rh3 ptAng`],[`dxA`,`cat2 rw3 htA wtA`],[`dyA`,`sat2 rh3 htA wtA`],[`xA`,`+- hc dxA 0`],[`yA`,`+- vc dyA 0`],[`wtE`,`sin rw1 stAng`],[`htE`,`cos rh1 stAng`],[`dxE`,`cat2 rw1 htE wtE`],[`dyE`,`sat2 rh1 htE wtE`],[`xE`,`+- hc dxE 0`],[`yE`,`+- vc dyE 0`],[`wtD`,`sin rw2 stAng`],[`htD`,`cos rh2 stAng`],[`dxD`,`cat2 rw2 htD wtD`],[`dyD`,`sat2 rh2 htD wtD`],[`xD`,`+- hc dxD 0`],[`yD`,`+- vc dyD 0`],[`dxG`,`cos thh ptAng`],[`dyG`,`sin thh ptAng`],[`xG`,`+- xH dxG 0`],[`yG`,`+- yH dyG 0`],[`dxB`,`cos thh ptAng`],[`dyB`,`sin thh ptAng`],[`xB`,`+- xH 0 dxB 0`],[`yB`,`+- yH 0 dyB 0`],[`sx1`,`+- xB 0 hc`],[`sy1`,`+- yB 0 vc`],[`sx2`,`+- xG 0 hc`],[`sy2`,`+- yG 0 vc`],[`rO`,`min rw1 rh1`],[`x1O`,`*/ sx1 rO rw1`],[`y1O`,`*/ sy1 rO rh1`],[`x2O`,`*/ sx2 rO rw1`],[`y2O`,`*/ sy2 rO rh1`],[`dxO`,`+- x2O 0 x1O`],[`dyO`,`+- y2O 0 y1O`],[`dO`,`mod dxO dyO 0`],[`q1`,`*/ x1O y2O 1`],[`q2`,`*/ x2O y1O 1`],[`DO`,`+- q1 0 q2`],[`q3`,`*/ rO rO 1`],[`q4`,`*/ dO dO 1`],[`q5`,`*/ q3 q4 1`],[`q6`,`*/ DO DO 1`],[`q7`,`+- q5 0 q6`],[`q8`,`max q7 0`],[`sdelO`,`sqrt q8`],[`ndyO`,`*/ dyO -1 1`],[`sdyO`,`?: ndyO -1 1`],[`q9`,`*/ sdyO dxO 1`],[`q10`,`*/ q9 sdelO 1`],[`q11`,`*/ DO dyO 1`],[`dxF1`,`+/ q11 q10 q4`],[`q12`,`+- q11 0 q10`],[`dxF2`,`*/ q12 1 q4`],[`adyO`,`abs dyO`],[`q13`,`*/ adyO sdelO 1`],[`q14`,`*/ DO dxO -1`],[`dyF1`,`+/ q14 q13 q4`],[`q15`,`+- q14 0 q13`],[`dyF2`,`*/ q15 1 q4`],[`q16`,`+- x2O 0 dxF1`],[`q17`,`+- x2O 0 dxF2`],[`q18`,`+- y2O 0 dyF1`],[`q19`,`+- y2O 0 dyF2`],[`q20`,`mod q16 q18 0`],[`q21`,`mod q17 q19 0`],[`q22`,`+- q21 0 q20`],[`dxF`,`?: q22 dxF1 dxF2`],[`dyF`,`?: q22 dyF1 dyF2`],[`sdxF`,`*/ dxF rw1 rO`],[`sdyF`,`*/ dyF rh1 rO`],[`xF`,`+- hc sdxF 0`],[`yF`,`+- vc sdyF 0`],[`x1I`,`*/ sx1 rI rw2`],[`y1I`,`*/ sy1 rI rh2`],[`x2I`,`*/ sx2 rI rw2`],[`y2I`,`*/ sy2 rI rh2`],[`dxI`,`+- x2I 0 x1I`],[`dyI`,`+- y2I 0 y1I`],[`dI`,`mod dxI dyI 0`],[`v1`,`*/ x1I y2I 1`],[`v2`,`*/ x2I y1I 1`],[`DI`,`+- v1 0 v2`],[`v3`,`*/ rI rI 1`],[`v4`,`*/ dI dI 1`],[`v5`,`*/ v3 v4 1`],[`v6`,`*/ DI DI 1`],[`v7`,`+- v5 0 v6`],[`v8`,`max v7 0`],[`sdelI`,`sqrt v8`],[`v9`,`*/ sdyO dxI 1`],[`v10`,`*/ v9 sdelI 1`],[`v11`,`*/ DI dyI 1`],[`dxC1`,`+/ v11 v10 v4`],[`v12`,`+- v11 0 v10`],[`dxC2`,`*/ v12 1 v4`],[`adyI`,`abs dyI`],[`v13`,`*/ adyI sdelI 1`],[`v14`,`*/ DI dxI -1`],[`dyC1`,`+/ v14 v13 v4`],[`v15`,`+- v14 0 v13`],[`dyC2`,`*/ v15 1 v4`],[`v16`,`+- x1I 0 dxC1`],[`v17`,`+- x1I 0 dxC2`],[`v18`,`+- y1I 0 dyC1`],[`v19`,`+- y1I 0 dyC2`],[`v20`,`mod v16 v18 0`],[`v21`,`mod v17 v19 0`],[`v22`,`+- v21 0 v20`],[`dxC`,`?: v22 dxC1 dxC2`],[`dyC`,`?: v22 dyC1 dyC2`],[`sdxC`,`*/ dxC rw2 rI`],[`sdyC`,`*/ dyC rh2 rI`],[`xC`,`+- hc sdxC 0`],[`yC`,`+- vc sdyC 0`],[`ist0`,`at2 sdxC sdyC`],[`ist1`,`+- ist0 21600000 0`],[`istAng0`,`?: ist0 ist0 ist1`],[`isw1`,`+- stAng 0 istAng0`],[`isw2`,`+- isw1 21600000 0`],[`iswAng0`,`?: isw1 isw1 isw2`],[`istAng`,`+- istAng0 iswAng0 0`],[`iswAng`,`+- 0 0 iswAng0`],[`p1`,`+- xF 0 xC`],[`p2`,`+- yF 0 yC`],[`p3`,`mod p1 p2 0`],[`p4`,`*/ p3 1 2`],[`p5`,`+- p4 0 thh`],[`xGp`,`?: p5 xF xG`],[`yGp`,`?: p5 yF yG`],[`xBp`,`?: p5 xC xB`],[`yBp`,`?: p5 yC yB`],[`en0`,`at2 sdxF sdyF`],[`en1`,`+- en0 21600000 0`],[`en2`,`?: en0 en0 en1`],[`sw0`,`+- en2 0 stAng`],[`sw1`,`+- sw0 0 21600000`],[`swAng`,`?: sw0 sw1 sw0`],[`stAng0`,`+- stAng swAng 0`],[`swAng0`,`+- 0 0 swAng`],[`wtI`,`sin rw3 stAng`],[`htI`,`cos rh3 stAng`],[`dxI`,`cat2 rw3 htI wtI`],[`dyI`,`sat2 rh3 htI wtI`],[`xI`,`+- hc dxI 0`],[`yI`,`+- vc dyI 0`],[`aI`,`+- stAng cd4 0`],[`aA`,`+- ptAng 0 cd4`],[`aB`,`+- ptAng cd2 0`],[`idx`,`cos rw1 2700000`],[`idy`,`sin rh1 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`xE`,`yE`],[`l`,`xD`,`yD`],[`a`,`rw2`,`rh2`,`istAng`,`iswAng`],[`l`,`xBp`,`yBp`],[`l`,`xA`,`yA`],[`l`,`xGp`,`yGp`],[`l`,`xF`,`yF`],[`a`,`rw1`,`rh1`,`stAng0`,`swAng0`],[`c`]]}]},leftrightarrow:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`maxAdj2`,`*/ 50000 w ss`],[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 0 adj2 maxAdj2`],[`x2`,`*/ ss a2 100000`],[`x3`,`+- r 0 x2`],[`dy`,`*/ h a1 200000`],[`y1`,`+- vc 0 dy`],[`y2`,`+- vc dy 0`],[`dx1`,`*/ y1 x2 hd2`],[`x1`,`+- x2 0 dx1`],[`x4`,`+- x3 dx1 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`x2`,`t`],[`l`,`x2`,`y1`],[`l`,`x3`,`y1`],[`l`,`x3`,`t`],[`l`,`r`,`vc`],[`l`,`x3`,`b`],[`l`,`x3`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`b`],[`c`]]}]},leftrightarrowcallout:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`],[`adj4`,`val 48123`]],gd:[[`maxAdj2`,`*/ 50000 h ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`maxAdj3`,`*/ 50000 w ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`q2`,`*/ a3 ss wd2`],[`maxAdj4`,`+- 100000 0 q2`],[`a4`,`pin 0 adj4 maxAdj4`],[`dy1`,`*/ ss a2 100000`],[`dy2`,`*/ ss a1 200000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc dy2 0`],[`y4`,`+- vc dy1 0`],[`x1`,`*/ ss a3 100000`],[`x4`,`+- r 0 x1`],[`dx2`,`*/ w a4 200000`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`x1`,`y1`],[`l`,`x1`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`t`],[`l`,`x3`,`t`],[`l`,`x3`,`y2`],[`l`,`x4`,`y2`],[`l`,`x4`,`y1`],[`l`,`r`,`vc`],[`l`,`x4`,`y4`],[`l`,`x4`,`y3`],[`l`,`x3`,`y3`],[`l`,`x3`,`b`],[`l`,`x2`,`b`],[`l`,`x2`,`y3`],[`l`,`x1`,`y3`],[`l`,`x1`,`y4`],[`c`]]}]},leftrightcirculararrow:{adj:[[`adj1`,`val 12500`],[`adj2`,`val 1142319`],[`adj3`,`val 20457681`],[`adj4`,`val 11942319`],[`adj5`,`val 12500`]],gd:[[`a5`,`pin 0 adj5 25000`],[`maxAdj1`,`*/ a5 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`enAng`,`pin 1 adj3 21599999`],[`stAng`,`pin 0 adj4 21599999`],[`th`,`*/ ss a1 100000`],[`thh`,`*/ ss a5 100000`],[`th2`,`*/ th 1 2`],[`rw1`,`+- wd2 th2 thh`],[`rh1`,`+- hd2 th2 thh`],[`rw2`,`+- rw1 0 th`],[`rh2`,`+- rh1 0 th`],[`rw3`,`+- rw2 th2 0`],[`rh3`,`+- rh2 th2 0`],[`wtH`,`sin rw3 enAng`],[`htH`,`cos rh3 enAng`],[`dxH`,`cat2 rw3 htH wtH`],[`dyH`,`sat2 rh3 htH wtH`],[`xH`,`+- hc dxH 0`],[`yH`,`+- vc dyH 0`],[`rI`,`min rw2 rh2`],[`u1`,`*/ dxH dxH 1`],[`u2`,`*/ dyH dyH 1`],[`u3`,`*/ rI rI 1`],[`u4`,`+- u1 0 u3`],[`u5`,`+- u2 0 u3`],[`u6`,`*/ u4 u5 u1`],[`u7`,`*/ u6 1 u2`],[`u8`,`+- 1 0 u7`],[`u9`,`sqrt u8`],[`u10`,`*/ u4 1 dxH`],[`u11`,`*/ u10 1 dyH`],[`u12`,`+/ 1 u9 u11`],[`u13`,`at2 1 u12`],[`u14`,`+- u13 21600000 0`],[`u15`,`?: u13 u13 u14`],[`u16`,`+- u15 0 enAng`],[`u17`,`+- u16 21600000 0`],[`u18`,`?: u16 u16 u17`],[`u19`,`+- u18 0 cd2`],[`u20`,`+- u18 0 21600000`],[`u21`,`?: u19 u20 u18`],[`maxAng`,`abs u21`],[`aAng`,`pin 0 adj2 maxAng`],[`ptAng`,`+- enAng aAng 0`],[`wtA`,`sin rw3 ptAng`],[`htA`,`cos rh3 ptAng`],[`dxA`,`cat2 rw3 htA wtA`],[`dyA`,`sat2 rh3 htA wtA`],[`xA`,`+- hc dxA 0`],[`yA`,`+- vc dyA 0`],[`dxG`,`cos thh ptAng`],[`dyG`,`sin thh ptAng`],[`xG`,`+- xH dxG 0`],[`yG`,`+- yH dyG 0`],[`dxB`,`cos thh ptAng`],[`dyB`,`sin thh ptAng`],[`xB`,`+- xH 0 dxB 0`],[`yB`,`+- yH 0 dyB 0`],[`sx1`,`+- xB 0 hc`],[`sy1`,`+- yB 0 vc`],[`sx2`,`+- xG 0 hc`],[`sy2`,`+- yG 0 vc`],[`rO`,`min rw1 rh1`],[`x1O`,`*/ sx1 rO rw1`],[`y1O`,`*/ sy1 rO rh1`],[`x2O`,`*/ sx2 rO rw1`],[`y2O`,`*/ sy2 rO rh1`],[`dxO`,`+- x2O 0 x1O`],[`dyO`,`+- y2O 0 y1O`],[`dO`,`mod dxO dyO 0`],[`q1`,`*/ x1O y2O 1`],[`q2`,`*/ x2O y1O 1`],[`DO`,`+- q1 0 q2`],[`q3`,`*/ rO rO 1`],[`q4`,`*/ dO dO 1`],[`q5`,`*/ q3 q4 1`],[`q6`,`*/ DO DO 1`],[`q7`,`+- q5 0 q6`],[`q8`,`max q7 0`],[`sdelO`,`sqrt q8`],[`ndyO`,`*/ dyO -1 1`],[`sdyO`,`?: ndyO -1 1`],[`q9`,`*/ sdyO dxO 1`],[`q10`,`*/ q9 sdelO 1`],[`q11`,`*/ DO dyO 1`],[`dxF1`,`+/ q11 q10 q4`],[`q12`,`+- q11 0 q10`],[`dxF2`,`*/ q12 1 q4`],[`adyO`,`abs dyO`],[`q13`,`*/ adyO sdelO 1`],[`q14`,`*/ DO dxO -1`],[`dyF1`,`+/ q14 q13 q4`],[`q15`,`+- q14 0 q13`],[`dyF2`,`*/ q15 1 q4`],[`q16`,`+- x2O 0 dxF1`],[`q17`,`+- x2O 0 dxF2`],[`q18`,`+- y2O 0 dyF1`],[`q19`,`+- y2O 0 dyF2`],[`q20`,`mod q16 q18 0`],[`q21`,`mod q17 q19 0`],[`q22`,`+- q21 0 q20`],[`dxF`,`?: q22 dxF1 dxF2`],[`dyF`,`?: q22 dyF1 dyF2`],[`sdxF`,`*/ dxF rw1 rO`],[`sdyF`,`*/ dyF rh1 rO`],[`xF`,`+- hc sdxF 0`],[`yF`,`+- vc sdyF 0`],[`x1I`,`*/ sx1 rI rw2`],[`y1I`,`*/ sy1 rI rh2`],[`x2I`,`*/ sx2 rI rw2`],[`y2I`,`*/ sy2 rI rh2`],[`dxI`,`+- x2I 0 x1I`],[`dyI`,`+- y2I 0 y1I`],[`dI`,`mod dxI dyI 0`],[`v1`,`*/ x1I y2I 1`],[`v2`,`*/ x2I y1I 1`],[`DI`,`+- v1 0 v2`],[`v3`,`*/ rI rI 1`],[`v4`,`*/ dI dI 1`],[`v5`,`*/ v3 v4 1`],[`v6`,`*/ DI DI 1`],[`v7`,`+- v5 0 v6`],[`v8`,`max v7 0`],[`sdelI`,`sqrt v8`],[`v9`,`*/ sdyO dxI 1`],[`v10`,`*/ v9 sdelI 1`],[`v11`,`*/ DI dyI 1`],[`dxC1`,`+/ v11 v10 v4`],[`v12`,`+- v11 0 v10`],[`dxC2`,`*/ v12 1 v4`],[`adyI`,`abs dyI`],[`v13`,`*/ adyI sdelI 1`],[`v14`,`*/ DI dxI -1`],[`dyC1`,`+/ v14 v13 v4`],[`v15`,`+- v14 0 v13`],[`dyC2`,`*/ v15 1 v4`],[`v16`,`+- x1I 0 dxC1`],[`v17`,`+- x1I 0 dxC2`],[`v18`,`+- y1I 0 dyC1`],[`v19`,`+- y1I 0 dyC2`],[`v20`,`mod v16 v18 0`],[`v21`,`mod v17 v19 0`],[`v22`,`+- v21 0 v20`],[`dxC`,`?: v22 dxC1 dxC2`],[`dyC`,`?: v22 dyC1 dyC2`],[`sdxC`,`*/ dxC rw2 rI`],[`sdyC`,`*/ dyC rh2 rI`],[`xC`,`+- hc sdxC 0`],[`yC`,`+- vc sdyC 0`],[`wtI`,`sin rw3 stAng`],[`htI`,`cos rh3 stAng`],[`dxI`,`cat2 rw3 htI wtI`],[`dyI`,`sat2 rh3 htI wtI`],[`xI`,`+- hc dxI 0`],[`yI`,`+- vc dyI 0`],[`lptAng`,`+- stAng 0 aAng`],[`wtL`,`sin rw3 lptAng`],[`htL`,`cos rh3 lptAng`],[`dxL`,`cat2 rw3 htL wtL`],[`dyL`,`sat2 rh3 htL wtL`],[`xL`,`+- hc dxL 0`],[`yL`,`+- vc dyL 0`],[`dxK`,`cos thh lptAng`],[`dyK`,`sin thh lptAng`],[`xK`,`+- xI dxK 0`],[`yK`,`+- yI dyK 0`],[`dxJ`,`cos thh lptAng`],[`dyJ`,`sin thh lptAng`],[`xJ`,`+- xI 0 dxJ 0`],[`yJ`,`+- yI 0 dyJ 0`],[`p1`,`+- xF 0 xC`],[`p2`,`+- yF 0 yC`],[`p3`,`mod p1 p2 0`],[`p4`,`*/ p3 1 2`],[`p5`,`+- p4 0 thh`],[`xGp`,`?: p5 xF xG`],[`yGp`,`?: p5 yF yG`],[`xBp`,`?: p5 xC xB`],[`yBp`,`?: p5 yC yB`],[`en0`,`at2 sdxF sdyF`],[`en1`,`+- en0 21600000 0`],[`en2`,`?: en0 en0 en1`],[`od0`,`+- en2 0 enAng`],[`od1`,`+- od0 21600000 0`],[`od2`,`?: od0 od0 od1`],[`st0`,`+- stAng 0 od2`],[`st1`,`+- st0 21600000 0`],[`st2`,`?: st0 st0 st1`],[`sw0`,`+- en2 0 st2`],[`sw1`,`+- sw0 21600000 0`],[`swAng`,`?: sw0 sw0 sw1`],[`ist0`,`at2 sdxC sdyC`],[`ist1`,`+- ist0 21600000 0`],[`istAng`,`?: ist0 ist0 ist1`],[`id0`,`+- istAng 0 enAng`],[`id1`,`+- id0 0 21600000`],[`id2`,`?: id0 id1 id0`],[`ien0`,`+- stAng 0 id2`],[`ien1`,`+- ien0 0 21600000`],[`ien2`,`?: ien1 ien1 ien0`],[`isw1`,`+- ien2 0 istAng`],[`isw2`,`+- isw1 0 21600000`],[`iswAng`,`?: isw1 isw2 isw1`],[`wtE`,`sin rw1 st2`],[`htE`,`cos rh1 st2`],[`dxE`,`cat2 rw1 htE wtE`],[`dyE`,`sat2 rh1 htE wtE`],[`xE`,`+- hc dxE 0`],[`yE`,`+- vc dyE 0`],[`wtD`,`sin rw2 ien2`],[`htD`,`cos rh2 ien2`],[`dxD`,`cat2 rw2 htD wtD`],[`dyD`,`sat2 rh2 htD wtD`],[`xD`,`+- hc dxD 0`],[`yD`,`+- vc dyD 0`],[`xKp`,`?: p5 xE xK`],[`yKp`,`?: p5 yE yK`],[`xJp`,`?: p5 xD xJ`],[`yJp`,`?: p5 yD yJ`],[`aL`,`+- lptAng 0 cd4`],[`aA`,`+- ptAng cd4 0`],[`aB`,`+- ptAng cd2 0`],[`aJ`,`+- lptAng cd2 0`],[`idx`,`cos rw1 2700000`],[`idy`,`sin rh1 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`xL`,`yL`],[`l`,`xKp`,`yKp`],[`l`,`xE`,`yE`],[`a`,`rw1`,`rh1`,`st2`,`swAng`],[`l`,`xGp`,`yGp`],[`l`,`xA`,`yA`],[`l`,`xBp`,`yBp`],[`l`,`xC`,`yC`],[`a`,`rw2`,`rh2`,`istAng`,`iswAng`],[`l`,`xJp`,`yJp`],[`c`]]}]},leftrightribbon:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`],[`adj3`,`val 16667`]],gd:[[`a3`,`pin 0 adj3 33333`],[`maxAdj1`,`+- 100000 0 a3`],[`a1`,`pin 0 adj1 maxAdj1`],[`w1`,`+- wd2 0 wd32`],[`maxAdj2`,`*/ 100000 w1 ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`x1`,`*/ ss a2 100000`],[`x4`,`+- r 0 x1`],[`dy1`,`*/ h a1 200000`],[`dy2`,`*/ h a3 -200000`],[`ly1`,`+- vc dy2 dy1`],[`ry4`,`+- vc dy1 dy2`],[`ly2`,`+- ly1 dy1 0`],[`ry3`,`+- b 0 ly2`],[`ly4`,`*/ ly2 2 1`],[`ry1`,`+- b 0 ly4`],[`ly3`,`+- ly4 0 ly1`],[`ry2`,`+- b 0 ly3`],[`hR`,`*/ a3 ss 400000`],[`x2`,`+- hc 0 wd32`],[`x3`,`+- hc wd32 0`],[`y1`,`+- ly1 hR 0`],[`y2`,`+- ry2 0 hR`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`ly2`],[`l`,`x1`,`t`],[`l`,`x1`,`ly1`],[`l`,`hc`,`ly1`],[`a`,`wd32`,`hR`,`3cd4`,`cd2`],[`a`,`wd32`,`hR`,`3cd4`,`-10800000`],[`l`,`x4`,`ry2`],[`l`,`x4`,`ry1`],[`l`,`r`,`ry3`],[`l`,`x4`,`b`],[`l`,`x4`,`ry4`],[`l`,`hc`,`ry4`],[`a`,`wd32`,`hR`,`cd4`,`cd4`],[`l`,`x2`,`ly3`],[`l`,`x1`,`ly3`],[`l`,`x1`,`ly4`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x3`,`y1`],[`a`,`wd32`,`hR`,`0`,`cd4`],[`a`,`wd32`,`hR`,`3cd4`,`-10800000`],[`l`,`x3`,`ry2`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`ly2`],[`l`,`x1`,`t`],[`l`,`x1`,`ly1`],[`l`,`hc`,`ly1`],[`a`,`wd32`,`hR`,`3cd4`,`cd2`],[`a`,`wd32`,`hR`,`3cd4`,`-10800000`],[`l`,`x4`,`ry2`],[`l`,`x4`,`ry1`],[`l`,`r`,`ry3`],[`l`,`x4`,`b`],[`l`,`x4`,`ry4`],[`l`,`hc`,`ry4`],[`a`,`wd32`,`hR`,`cd4`,`cd4`],[`l`,`x2`,`ly3`],[`l`,`x1`,`ly3`],[`l`,`x1`,`ly4`],[`c`],[`m`,`x3`,`y1`],[`l`,`x3`,`ry2`],[`m`,`x2`,`y2`],[`l`,`x2`,`ly3`]]}]},leftrightuparrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`]],gd:[[`a2`,`pin 0 adj2 50000`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`q1`,`+- 100000 0 maxAdj1`],[`maxAdj3`,`*/ q1 1 2`],[`a3`,`pin 0 adj3 maxAdj3`],[`x1`,`*/ ss a3 100000`],[`dx2`,`*/ ss a2 100000`],[`x2`,`+- hc 0 dx2`],[`x5`,`+- hc dx2 0`],[`dx3`,`*/ ss a1 200000`],[`x3`,`+- hc 0 dx3`],[`x4`,`+- hc dx3 0`],[`x6`,`+- r 0 x1`],[`dy2`,`*/ ss a2 50000`],[`y2`,`+- b 0 dy2`],[`y4`,`+- b 0 dx2`],[`y3`,`+- y4 0 dx3`],[`y5`,`+- y4 dx3 0`],[`il`,`*/ dx3 x1 dx2`],[`ir`,`+- r 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y4`],[`l`,`x1`,`y2`],[`l`,`x1`,`y3`],[`l`,`x3`,`y3`],[`l`,`x3`,`x1`],[`l`,`x2`,`x1`],[`l`,`hc`,`t`],[`l`,`x5`,`x1`],[`l`,`x4`,`x1`],[`l`,`x4`,`y3`],[`l`,`x6`,`y3`],[`l`,`x6`,`y2`],[`l`,`r`,`y4`],[`l`,`x6`,`b`],[`l`,`x6`,`y5`],[`l`,`x1`,`y5`],[`l`,`x1`,`b`],[`c`]]}]},leftuparrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`]],gd:[[`a2`,`pin 0 adj2 50000`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`maxAdj3`,`+- 100000 0 maxAdj1`],[`a3`,`pin 0 adj3 maxAdj3`],[`x1`,`*/ ss a3 100000`],[`dx2`,`*/ ss a2 50000`],[`x2`,`+- r 0 dx2`],[`y2`,`+- b 0 dx2`],[`dx4`,`*/ ss a2 100000`],[`x4`,`+- r 0 dx4`],[`y4`,`+- b 0 dx4`],[`dx3`,`*/ ss a1 200000`],[`x3`,`+- x4 0 dx3`],[`x5`,`+- x4 dx3 0`],[`y3`,`+- y4 0 dx3`],[`y5`,`+- y4 dx3 0`],[`il`,`*/ dx3 x1 dx4`],[`cx1`,`+/ x1 x5 2`],[`cy1`,`+/ x1 y5 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y4`],[`l`,`x1`,`y2`],[`l`,`x1`,`y3`],[`l`,`x3`,`y3`],[`l`,`x3`,`x1`],[`l`,`x2`,`x1`],[`l`,`x4`,`t`],[`l`,`r`,`x1`],[`l`,`x5`,`x1`],[`l`,`x5`,`y5`],[`l`,`x1`,`y5`],[`l`,`x1`,`b`],[`c`]]}]},lightningbolt:{adj:[],gd:[[`x1`,`*/ w 5022 21600`],[`x3`,`*/ w 8472 21600`],[`x4`,`*/ w 8757 21600`],[`x5`,`*/ w 10012 21600`],[`x8`,`*/ w 12860 21600`],[`x9`,`*/ w 13917 21600`],[`x11`,`*/ w 16577 21600`],[`y1`,`*/ h 3890 21600`],[`y2`,`*/ h 6080 21600`],[`y4`,`*/ h 7437 21600`],[`y6`,`*/ h 9705 21600`],[`y7`,`*/ h 12007 21600`],[`y10`,`*/ h 14277 21600`],[`y11`,`*/ h 14915 21600`]],paths:[{w:21600,h:21600,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`8472`,`0`],[`l`,`12860`,`6080`],[`l`,`11050`,`6797`],[`l`,`16577`,`12007`],[`l`,`14767`,`12877`],[`l`,`21600`,`21600`],[`l`,`10012`,`14915`],[`l`,`12222`,`13987`],[`l`,`5022`,`9705`],[`l`,`7602`,`8382`],[`l`,`0`,`3890`],[`c`]]}]},line:{adj:[],gd:[],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`b`]]}]},lineinv:{adj:[],gd:[],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`l`,`r`,`t`]]}]},mathdivide:{adj:[[`adj1`,`val 23520`],[`adj2`,`val 5880`],[`adj3`,`val 11760`]],gd:[[`a1`,`pin 1000 adj1 36745`],[`ma1`,`+- 0 0 a1`],[`ma3h`,`+/ 73490 ma1 4`],[`ma3w`,`*/ 36745 w h`],[`maxAdj3`,`min ma3h ma3w`],[`a3`,`pin 1000 adj3 maxAdj3`],[`m4a3`,`*/ -4 a3 1`],[`maxAdj2`,`+- 73490 m4a3 a1`],[`a2`,`pin 0 adj2 maxAdj2`],[`dy1`,`*/ h a1 200000`],[`yg`,`*/ h a2 100000`],[`rad`,`*/ h a3 100000`],[`dx1`,`*/ w 73490 200000`],[`y3`,`+- vc 0 dy1`],[`y4`,`+- vc dy1 0`],[`a`,`+- yg rad 0`],[`y2`,`+- y3 0 a`],[`y1`,`+- y2 0 rad`],[`y5`,`+- b 0 y1`],[`x1`,`+- hc 0 dx1`],[`x3`,`+- hc dx1 0`],[`x2`,`+- hc 0 rad`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`hc`,`y1`],[`a`,`rad`,`rad`,`3cd4`,`21600000`],[`c`],[`m`,`hc`,`y5`],[`a`,`rad`,`rad`,`cd4`,`21600000`],[`c`],[`m`,`x1`,`y3`],[`l`,`x3`,`y3`],[`l`,`x3`,`y4`],[`l`,`x1`,`y4`],[`c`]]}]},mathequal:{adj:[[`adj1`,`val 23520`],[`adj2`,`val 11760`]],gd:[[`a1`,`pin 0 adj1 36745`],[`2a1`,`*/ a1 2 1`],[`mAdj2`,`+- 100000 0 2a1`],[`a2`,`pin 0 adj2 mAdj2`],[`dy1`,`*/ h a1 100000`],[`dy2`,`*/ h a2 200000`],[`dx1`,`*/ w 73490 200000`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc dy2 0`],[`y1`,`+- y2 0 dy1`],[`y4`,`+- y3 dy1 0`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc dx1 0`],[`yC1`,`+/ y1 y2 2`],[`yC2`,`+/ y3 y4 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y1`],[`l`,`x2`,`y2`],[`l`,`x1`,`y2`],[`c`],[`m`,`x1`,`y3`],[`l`,`x2`,`y3`],[`l`,`x2`,`y4`],[`l`,`x1`,`y4`],[`c`]]}]},mathminus:{adj:[[`adj1`,`val 23520`]],gd:[[`a1`,`pin 0 adj1 100000`],[`dy1`,`*/ h a1 200000`],[`dx1`,`*/ w 73490 200000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc dy1 0`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc dx1 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`l`,`x2`,`y1`],[`l`,`x2`,`y2`],[`l`,`x1`,`y2`],[`c`]]}]},mathmultiply:{adj:[[`adj1`,`val 23520`]],gd:[[`a1`,`pin 0 adj1 51965`],[`th`,`*/ ss a1 100000`],[`a`,`at2 w h`],[`sa`,`sin 1 a`],[`ca`,`cos 1 a`],[`ta`,`tan 1 a`],[`dl`,`mod w h 0`],[`rw`,`*/ dl 51965 100000`],[`lM`,`+- dl 0 rw`],[`xM`,`*/ ca lM 2`],[`yM`,`*/ sa lM 2`],[`dxAM`,`*/ sa th 2`],[`dyAM`,`*/ ca th 2`],[`xA`,`+- xM 0 dxAM`],[`yA`,`+- yM dyAM 0`],[`xB`,`+- xM dxAM 0`],[`yB`,`+- yM 0 dyAM`],[`xBC`,`+- hc 0 xB`],[`yBC`,`*/ xBC ta 1`],[`yC`,`+- yBC yB 0`],[`xD`,`+- r 0 xB`],[`xE`,`+- r 0 xA`],[`yFE`,`+- vc 0 yA`],[`xFE`,`*/ yFE 1 ta`],[`xF`,`+- xE 0 xFE`],[`xL`,`+- xA xFE 0`],[`yG`,`+- b 0 yA`],[`yH`,`+- b 0 yB`],[`yI`,`+- b 0 yC`],[`xC2`,`+- r 0 xM`],[`yC3`,`+- b 0 yM`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`xA`,`yA`],[`l`,`xB`,`yB`],[`l`,`hc`,`yC`],[`l`,`xD`,`yB`],[`l`,`xE`,`yA`],[`l`,`xF`,`vc`],[`l`,`xE`,`yG`],[`l`,`xD`,`yH`],[`l`,`hc`,`yI`],[`l`,`xB`,`yH`],[`l`,`xA`,`yG`],[`l`,`xL`,`vc`],[`c`]]}]},mathnotequal:{adj:[[`adj1`,`val 23520`],[`adj2`,`val 6600000`],[`adj3`,`val 11760`]],gd:[[`a1`,`pin 0 adj1 50000`],[`crAng`,`pin 4200000 adj2 6600000`],[`2a1`,`*/ a1 2 1`],[`maxAdj3`,`+- 100000 0 2a1`],[`a3`,`pin 0 adj3 maxAdj3`],[`dy1`,`*/ h a1 100000`],[`dy2`,`*/ h a3 200000`],[`dx1`,`*/ w 73490 200000`],[`x1`,`+- hc 0 dx1`],[`x8`,`+- hc dx1 0`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc dy2 0`],[`y1`,`+- y2 0 dy1`],[`y4`,`+- y3 dy1 0`],[`cadj2`,`+- crAng 0 cd4`],[`xadj2`,`tan hd2 cadj2`],[`len`,`mod xadj2 hd2 0`],[`bhw`,`*/ len dy1 hd2`],[`bhw2`,`*/ bhw 1 2`],[`x7`,`+- hc xadj2 bhw2`],[`dx67`,`*/ xadj2 y1 hd2`],[`x6`,`+- x7 0 dx67`],[`dx57`,`*/ xadj2 y2 hd2`],[`x5`,`+- x7 0 dx57`],[`dx47`,`*/ xadj2 y3 hd2`],[`x4`,`+- x7 0 dx47`],[`dx37`,`*/ xadj2 y4 hd2`],[`x3`,`+- x7 0 dx37`],[`dx27`,`*/ xadj2 2 1`],[`x2`,`+- x7 0 dx27`],[`rx7`,`+- x7 bhw 0`],[`rx6`,`+- x6 bhw 0`],[`rx5`,`+- x5 bhw 0`],[`rx4`,`+- x4 bhw 0`],[`rx3`,`+- x3 bhw 0`],[`rx2`,`+- x2 bhw 0`],[`dx7`,`*/ dy1 hd2 len`],[`rxt`,`+- x7 dx7 0`],[`lxt`,`+- rx7 0 dx7`],[`rx`,`?: cadj2 rxt rx7`],[`lx`,`?: cadj2 x7 lxt`],[`dy3`,`*/ dy1 xadj2 len`],[`dy4`,`+- 0 0 dy3`],[`ry`,`?: cadj2 dy3 t`],[`ly`,`?: cadj2 t dy4`],[`dlx`,`+- w 0 rx`],[`drx`,`+- w 0 lx`],[`dly`,`+- h 0 ry`],[`dry`,`+- h 0 ly`],[`xC1`,`+/ rx lx 2`],[`xC2`,`+/ drx dlx 2`],[`yC1`,`+/ ry ly 2`],[`yC2`,`+/ y1 y2 2`],[`yC3`,`+/ y3 y4 2`],[`yC4`,`+/ dry dly 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`l`,`x6`,`y1`],[`l`,`lx`,`ly`],[`l`,`rx`,`ry`],[`l`,`rx6`,`y1`],[`l`,`x8`,`y1`],[`l`,`x8`,`y2`],[`l`,`rx5`,`y2`],[`l`,`rx4`,`y3`],[`l`,`x8`,`y3`],[`l`,`x8`,`y4`],[`l`,`rx3`,`y4`],[`l`,`drx`,`dry`],[`l`,`dlx`,`dly`],[`l`,`x3`,`y4`],[`l`,`x1`,`y4`],[`l`,`x1`,`y3`],[`l`,`x4`,`y3`],[`l`,`x5`,`y2`],[`l`,`x1`,`y2`],[`c`]]}]},mathplus:{adj:[[`adj1`,`val 23520`]],gd:[[`a1`,`pin 0 adj1 73490`],[`dx1`,`*/ w 73490 200000`],[`dy1`,`*/ h 73490 200000`],[`dx2`,`*/ ss a1 200000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`],[`x4`,`+- hc dx1 0`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc 0 dx2`],[`y3`,`+- vc dx2 0`],[`y4`,`+- vc dy1 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`y1`],[`l`,`x3`,`y1`],[`l`,`x3`,`y2`],[`l`,`x4`,`y2`],[`l`,`x4`,`y3`],[`l`,`x3`,`y3`],[`l`,`x3`,`y4`],[`l`,`x2`,`y4`],[`l`,`x2`,`y3`],[`l`,`x1`,`y3`],[`c`]]}]},moon:{adj:[[`adj`,`val 50000`]],gd:[[`a`,`pin 0 adj 87500`],[`g0`,`*/ ss a 100000`],[`g0w`,`*/ g0 w ss`],[`g1`,`+- ss 0 g0`],[`g2`,`*/ g0 g0 g1`],[`g3`,`*/ ss ss g1`],[`g4`,`*/ g3 2 1`],[`g5`,`+- g4 0 g2`],[`g6`,`+- g5 0 g0`],[`g6w`,`*/ g6 w ss`],[`g7`,`*/ g5 1 2`],[`g8`,`+- g7 0 g0`],[`dy1`,`*/ g8 hd2 ss`],[`g10h`,`+- vc 0 dy1`],[`g11h`,`+- vc dy1 0`],[`g12`,`*/ g0 9598 32768`],[`g12w`,`*/ g12 w ss`],[`g13`,`+- ss 0 g12`],[`q1`,`*/ ss ss 1`],[`q2`,`*/ g13 g13 1`],[`q3`,`+- q1 0 q2`],[`q4`,`sqrt q3`],[`dy4`,`*/ q4 hd2 ss`],[`g15h`,`+- vc 0 dy4`],[`g16h`,`+- vc dy4 0`],[`g17w`,`+- g6w 0 g0w`],[`g18w`,`*/ g17w 1 2`],[`dx2p`,`+- g0w g18w w`],[`dx2`,`*/ dx2p -1 1`],[`dy2`,`*/ hd2 -1 1`],[`stAng1`,`at2 dx2 dy2`],[`enAngp1`,`at2 dx2 hd2`],[`enAng1`,`+- enAngp1 0 21600000`],[`swAng1`,`+- enAng1 0 stAng1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`r`,`b`],[`a`,`w`,`hd2`,`cd4`,`cd2`],[`a`,`g18w`,`dy1`,`stAng1`,`swAng1`],[`c`]]}]},nonisoscelestrapezoid:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`]],gd:[[`maxAdj`,`*/ 50000 w ss`],[`a1`,`pin 0 adj1 maxAdj`],[`a2`,`pin 0 adj2 maxAdj`],[`x1`,`*/ ss a1 200000`],[`x2`,`*/ ss a1 100000`],[`dx3`,`*/ ss a2 100000`],[`x3`,`+- r 0 dx3`],[`x4`,`+/ r x3 2`],[`il`,`*/ wd3 a1 maxAdj`],[`adjm`,`max a1 a2`],[`it`,`*/ hd3 adjm maxAdj`],[`irt`,`*/ wd3 a2 maxAdj`],[`ir`,`+- r 0 irt`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`l`,`x2`,`t`],[`l`,`x3`,`t`],[`l`,`r`,`b`],[`c`]]}]},nosmoking:{adj:[[`adj`,`val 18750`]],gd:[[`a`,`pin 0 adj 50000`],[`dr`,`*/ ss a 100000`],[`iwd2`,`+- wd2 0 dr`],[`ihd2`,`+- hd2 0 dr`],[`ang`,`at2 w h`],[`ct`,`cos ihd2 ang`],[`st`,`sin iwd2 ang`],[`m`,`mod ct st 0`],[`n`,`*/ iwd2 ihd2 m`],[`drd2`,`*/ dr 1 2`],[`dang`,`at2 n drd2`],[`dang2`,`*/ dang 2 1`],[`swAng`,`+- -10800000 dang2 0`],[`t3`,`at2 w h`],[`stAng1`,`+- t3 0 dang`],[`stAng2`,`+- stAng1 0 cd2`],[`ct1`,`cos ihd2 stAng1`],[`st1`,`sin iwd2 stAng1`],[`m1`,`mod ct1 st1 0`],[`n1`,`*/ iwd2 ihd2 m1`],[`dx1`,`cos n1 stAng1`],[`dy1`,`sin n1 stAng1`],[`x1`,`+- hc dx1 0`],[`y1`,`+- vc dy1 0`],[`x2`,`+- hc 0 dx1`],[`y2`,`+- vc 0 dy1`],[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`a`,`wd2`,`hd2`,`3cd4`,`cd4`],[`a`,`wd2`,`hd2`,`0`,`cd4`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`c`],[`m`,`x1`,`y1`],[`a`,`iwd2`,`ihd2`,`stAng1`,`swAng`],[`c`],[`m`,`x2`,`y2`],[`a`,`iwd2`,`ihd2`,`stAng2`,`swAng`],[`c`]]}]},notchedrightarrow:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`maxAdj2`,`*/ 100000 w ss`],[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 0 adj2 maxAdj2`],[`dx2`,`*/ ss a2 100000`],[`x2`,`+- r 0 dx2`],[`dy1`,`*/ h a1 200000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc dy1 0`],[`x1`,`*/ dy1 dx2 hd2`],[`x3`,`+- r 0 x1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y1`],[`l`,`x2`,`y1`],[`l`,`x2`,`t`],[`l`,`r`,`vc`],[`l`,`x2`,`b`],[`l`,`x2`,`y2`],[`l`,`l`,`y2`],[`l`,`x1`,`vc`],[`c`]]}]},octagon:{adj:[[`adj`,`val 29289`]],gd:[[`a`,`pin 0 adj 50000`],[`x1`,`*/ ss a 100000`],[`x2`,`+- r 0 x1`],[`y2`,`+- b 0 x1`],[`il`,`*/ x1 1 2`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`x1`],[`l`,`x1`,`t`],[`l`,`x2`,`t`],[`l`,`r`,`x1`],[`l`,`r`,`y2`],[`l`,`x2`,`b`],[`l`,`x1`,`b`],[`l`,`l`,`y2`],[`c`]]}]},parallelogram:{adj:[[`adj`,`val 25000`]],gd:[[`maxAdj`,`*/ 100000 w ss`],[`a`,`pin 0 adj maxAdj`],[`x1`,`*/ ss a 200000`],[`x2`,`*/ ss a 100000`],[`x6`,`+- r 0 x1`],[`x5`,`+- r 0 x2`],[`x3`,`*/ x5 1 2`],[`x4`,`+- r 0 x3`],[`il`,`*/ wd2 a maxAdj`],[`q1`,`*/ 5 a maxAdj`],[`q2`,`+/ 1 q1 12`],[`il`,`*/ q2 w 1`],[`it`,`*/ q2 h 1`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 it`],[`q3`,`*/ h hc x2`],[`y1`,`pin 0 q3 h`],[`y2`,`+- b 0 y1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`l`,`x2`,`t`],[`l`,`r`,`t`],[`l`,`x5`,`b`],[`c`]]}]},pentagon:{adj:[[`hf`,`val 105146`],[`vf`,`val 110557`]],gd:[[`swd2`,`*/ wd2 hf 100000`],[`shd2`,`*/ hd2 vf 100000`],[`svc`,`*/ vc vf 100000`],[`dx1`,`cos swd2 1080000`],[`dx2`,`cos swd2 18360000`],[`dy1`,`sin shd2 1080000`],[`dy2`,`sin shd2 18360000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`],[`x4`,`+- hc dx1 0`],[`y1`,`+- svc 0 dy1`],[`y2`,`+- svc 0 dy2`],[`it`,`*/ y1 dx2 dx1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`l`,`hc`,`t`],[`l`,`x4`,`y1`],[`l`,`x3`,`y2`],[`l`,`x2`,`y2`],[`c`]]}]},pie:{adj:[[`adj1`,`val 0`],[`adj2`,`val 16200000`]],gd:[[`stAng`,`pin 0 adj1 21599999`],[`enAng`,`pin 0 adj2 21599999`],[`sw1`,`+- enAng 0 stAng`],[`sw2`,`+- sw1 21600000 0`],[`swAng`,`?: sw1 sw1 sw2`],[`wt1`,`sin wd2 stAng`],[`ht1`,`cos hd2 stAng`],[`dx1`,`cat2 wd2 ht1 wt1`],[`dy1`,`sat2 hd2 ht1 wt1`],[`x1`,`+- hc dx1 0`],[`y1`,`+- vc dy1 0`],[`wt2`,`sin wd2 enAng`],[`ht2`,`cos hd2 enAng`],[`dx2`,`cat2 wd2 ht2 wt2`],[`dy2`,`sat2 hd2 ht2 wt2`],[`x2`,`+- hc dx2 0`],[`y2`,`+- vc dy2 0`],[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`a`,`wd2`,`hd2`,`stAng`,`swAng`],[`l`,`hc`,`vc`],[`c`]]}]},piewedge:{adj:[],gd:[[`g1`,`cos w 13500000`],[`g2`,`sin h 13500000`],[`x1`,`+- r g1 0`],[`y1`,`+- b g2 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`a`,`w`,`h`,`cd2`,`cd4`],[`l`,`r`,`b`],[`c`]]}]},plaque:{adj:[[`adj`,`val 16667`]],gd:[[`a`,`pin 0 adj 50000`],[`x1`,`*/ ss a 100000`],[`x2`,`+- r 0 x1`],[`y2`,`+- b 0 x1`],[`il`,`*/ x1 70711 100000`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`x1`],[`a`,`x1`,`x1`,`cd4`,`-5400000`],[`l`,`x2`,`t`],[`a`,`x1`,`x1`,`cd2`,`-5400000`],[`l`,`r`,`y2`],[`a`,`x1`,`x1`,`3cd4`,`-5400000`],[`l`,`x1`,`b`],[`a`,`x1`,`x1`,`0`,`-5400000`],[`c`]]}]},plaquetabs:{adj:[],gd:[[`md`,`mod w h 0`],[`dx`,`*/ 1 md 20`],[`y1`,`+- 0 b dx`],[`x1`,`+- 0 r dx`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`dx`,`t`],[`a`,`dx`,`dx`,`0`,`cd4`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y1`],[`a`,`dx`,`dx`,`3cd4`,`cd4`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`r`,`t`],[`l`,`r`,`dx`],[`a`,`dx`,`dx`,`cd4`,`cd4`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`b`],[`a`,`dx`,`dx`,`cd2`,`cd4`],[`l`,`r`,`b`],[`c`]]}]},plus:{adj:[[`adj`,`val 25000`]],gd:[[`a`,`pin 0 adj 50000`],[`x1`,`*/ ss a 100000`],[`x2`,`+- r 0 x1`],[`y2`,`+- b 0 x1`],[`d`,`+- w 0 h`],[`il`,`?: d l x1`],[`ir`,`?: d r x2`],[`it`,`?: d x1 t`],[`ib`,`?: d y2 b`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`x1`],[`l`,`x1`,`x1`],[`l`,`x1`,`t`],[`l`,`x2`,`t`],[`l`,`x2`,`x1`],[`l`,`r`,`x1`],[`l`,`r`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`b`],[`l`,`x1`,`b`],[`l`,`x1`,`y2`],[`l`,`l`,`y2`],[`c`]]}]},quadarrow:{adj:[[`adj1`,`val 22500`],[`adj2`,`val 22500`],[`adj3`,`val 22500`]],gd:[[`a2`,`pin 0 adj2 50000`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`q1`,`+- 100000 0 maxAdj1`],[`maxAdj3`,`*/ q1 1 2`],[`a3`,`pin 0 adj3 maxAdj3`],[`x1`,`*/ ss a3 100000`],[`dx2`,`*/ ss a2 100000`],[`x2`,`+- hc 0 dx2`],[`x5`,`+- hc dx2 0`],[`dx3`,`*/ ss a1 200000`],[`x3`,`+- hc 0 dx3`],[`x4`,`+- hc dx3 0`],[`x6`,`+- r 0 x1`],[`y2`,`+- vc 0 dx2`],[`y5`,`+- vc dx2 0`],[`y3`,`+- vc 0 dx3`],[`y4`,`+- vc dx3 0`],[`y6`,`+- b 0 x1`],[`il`,`*/ dx3 x1 dx2`],[`ir`,`+- r 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`x1`,`y2`],[`l`,`x1`,`y3`],[`l`,`x3`,`y3`],[`l`,`x3`,`x1`],[`l`,`x2`,`x1`],[`l`,`hc`,`t`],[`l`,`x5`,`x1`],[`l`,`x4`,`x1`],[`l`,`x4`,`y3`],[`l`,`x6`,`y3`],[`l`,`x6`,`y2`],[`l`,`r`,`vc`],[`l`,`x6`,`y5`],[`l`,`x6`,`y4`],[`l`,`x4`,`y4`],[`l`,`x4`,`y6`],[`l`,`x5`,`y6`],[`l`,`hc`,`b`],[`l`,`x2`,`y6`],[`l`,`x3`,`y6`],[`l`,`x3`,`y4`],[`l`,`x1`,`y4`],[`l`,`x1`,`y5`],[`c`]]}]},quadarrowcallout:{adj:[[`adj1`,`val 18515`],[`adj2`,`val 18515`],[`adj3`,`val 18515`],[`adj4`,`val 48123`]],gd:[[`a2`,`pin 0 adj2 50000`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`maxAdj3`,`+- 50000 0 a2`],[`a3`,`pin 0 adj3 maxAdj3`],[`q2`,`*/ a3 2 1`],[`maxAdj4`,`+- 100000 0 q2`],[`a4`,`pin a1 adj4 maxAdj4`],[`dx2`,`*/ ss a2 100000`],[`dx3`,`*/ ss a1 200000`],[`ah`,`*/ ss a3 100000`],[`dx1`,`*/ w a4 200000`],[`dy1`,`*/ h a4 200000`],[`x8`,`+- r 0 ah`],[`x2`,`+- hc 0 dx1`],[`x7`,`+- hc dx1 0`],[`x3`,`+- hc 0 dx2`],[`x6`,`+- hc dx2 0`],[`x4`,`+- hc 0 dx3`],[`x5`,`+- hc dx3 0`],[`y8`,`+- b 0 ah`],[`y2`,`+- vc 0 dy1`],[`y7`,`+- vc dy1 0`],[`y3`,`+- vc 0 dx2`],[`y6`,`+- vc dx2 0`],[`y4`,`+- vc 0 dx3`],[`y5`,`+- vc dx3 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`ah`,`y3`],[`l`,`ah`,`y4`],[`l`,`x2`,`y4`],[`l`,`x2`,`y2`],[`l`,`x4`,`y2`],[`l`,`x4`,`ah`],[`l`,`x3`,`ah`],[`l`,`hc`,`t`],[`l`,`x6`,`ah`],[`l`,`x5`,`ah`],[`l`,`x5`,`y2`],[`l`,`x7`,`y2`],[`l`,`x7`,`y4`],[`l`,`x8`,`y4`],[`l`,`x8`,`y3`],[`l`,`r`,`vc`],[`l`,`x8`,`y6`],[`l`,`x8`,`y5`],[`l`,`x7`,`y5`],[`l`,`x7`,`y7`],[`l`,`x5`,`y7`],[`l`,`x5`,`y8`],[`l`,`x6`,`y8`],[`l`,`hc`,`b`],[`l`,`x3`,`y8`],[`l`,`x4`,`y8`],[`l`,`x4`,`y7`],[`l`,`x2`,`y7`],[`l`,`x2`,`y5`],[`l`,`ah`,`y5`],[`l`,`ah`,`y6`],[`c`]]}]},ribbon:{adj:[[`adj1`,`val 16667`],[`adj2`,`val 50000`]],gd:[[`a1`,`pin 0 adj1 33333`],[`a2`,`pin 25000 adj2 75000`],[`x10`,`+- r 0 wd8`],[`dx2`,`*/ w a2 200000`],[`x2`,`+- hc 0 dx2`],[`x9`,`+- hc dx2 0`],[`x3`,`+- x2 wd32 0`],[`x8`,`+- x9 0 wd32`],[`x5`,`+- x2 wd8 0`],[`x6`,`+- x9 0 wd8`],[`x4`,`+- x5 0 wd32`],[`x7`,`+- x6 wd32 0`],[`y1`,`*/ h a1 200000`],[`y2`,`*/ h a1 100000`],[`y4`,`+- b 0 y2`],[`y3`,`*/ y4 1 2`],[`hR`,`*/ h a1 400000`],[`y5`,`+- b 0 hR`],[`y6`,`+- y2 0 hR`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`x4`,`t`],[`a`,`wd32`,`hR`,`3cd4`,`cd2`],[`l`,`x3`,`y1`],[`a`,`wd32`,`hR`,`3cd4`,`-10800000`],[`l`,`x8`,`y2`],[`a`,`wd32`,`hR`,`cd4`,`-10800000`],[`l`,`x7`,`y1`],[`a`,`wd32`,`hR`,`cd4`,`cd2`],[`l`,`r`,`t`],[`l`,`x10`,`y3`],[`l`,`r`,`y4`],[`l`,`x9`,`y4`],[`l`,`x9`,`y5`],[`a`,`wd32`,`hR`,`0`,`cd4`],[`l`,`x3`,`b`],[`a`,`wd32`,`hR`,`cd4`,`cd4`],[`l`,`x2`,`y4`],[`l`,`l`,`y4`],[`l`,`wd8`,`y3`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x5`,`hR`],[`a`,`wd32`,`hR`,`0`,`cd4`],[`l`,`x3`,`y1`],[`a`,`wd32`,`hR`,`3cd4`,`-10800000`],[`l`,`x5`,`y2`],[`c`],[`m`,`x6`,`hR`],[`a`,`wd32`,`hR`,`cd2`,`-5400000`],[`l`,`x8`,`y1`],[`a`,`wd32`,`hR`,`3cd4`,`cd2`],[`l`,`x6`,`y2`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`x4`,`t`],[`a`,`wd32`,`hR`,`3cd4`,`cd2`],[`l`,`x3`,`y1`],[`a`,`wd32`,`hR`,`3cd4`,`-10800000`],[`l`,`x8`,`y2`],[`a`,`wd32`,`hR`,`cd4`,`-10800000`],[`l`,`x7`,`y1`],[`a`,`wd32`,`hR`,`cd4`,`cd2`],[`l`,`r`,`t`],[`l`,`x10`,`y3`],[`l`,`r`,`y4`],[`l`,`x9`,`y4`],[`l`,`x9`,`y5`],[`a`,`wd32`,`hR`,`0`,`cd4`],[`l`,`x3`,`b`],[`a`,`wd32`,`hR`,`cd4`,`cd4`],[`l`,`x2`,`y4`],[`l`,`l`,`y4`],[`l`,`wd8`,`y3`],[`c`],[`m`,`x5`,`hR`],[`l`,`x5`,`y2`],[`m`,`x6`,`y2`],[`l`,`x6`,`hR`],[`m`,`x2`,`y4`],[`l`,`x2`,`y6`],[`m`,`x9`,`y6`],[`l`,`x9`,`y4`]]}]},ribbon2:{adj:[[`adj1`,`val 16667`],[`adj2`,`val 50000`]],gd:[[`a1`,`pin 0 adj1 33333`],[`a2`,`pin 25000 adj2 75000`],[`x10`,`+- r 0 wd8`],[`dx2`,`*/ w a2 200000`],[`x2`,`+- hc 0 dx2`],[`x9`,`+- hc dx2 0`],[`x3`,`+- x2 wd32 0`],[`x8`,`+- x9 0 wd32`],[`x5`,`+- x2 wd8 0`],[`x6`,`+- x9 0 wd8`],[`x4`,`+- x5 0 wd32`],[`x7`,`+- x6 wd32 0`],[`dy1`,`*/ h a1 200000`],[`y1`,`+- b 0 dy1`],[`dy2`,`*/ h a1 100000`],[`y2`,`+- b 0 dy2`],[`y4`,`+- t dy2 0`],[`y3`,`+/ y4 b 2`],[`hR`,`*/ h a1 400000`],[`y6`,`+- b 0 hR`],[`y7`,`+- y1 0 hR`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`b`],[`l`,`x4`,`b`],[`a`,`wd32`,`hR`,`cd4`,`-10800000`],[`l`,`x3`,`y1`],[`a`,`wd32`,`hR`,`cd4`,`cd2`],[`l`,`x8`,`y2`],[`a`,`wd32`,`hR`,`3cd4`,`cd2`],[`l`,`x7`,`y1`],[`a`,`wd32`,`hR`,`3cd4`,`-10800000`],[`l`,`r`,`b`],[`l`,`x10`,`y3`],[`l`,`r`,`y4`],[`l`,`x9`,`y4`],[`l`,`x9`,`hR`],[`a`,`wd32`,`hR`,`0`,`-5400000`],[`l`,`x3`,`t`],[`a`,`wd32`,`hR`,`3cd4`,`-5400000`],[`l`,`x2`,`y4`],[`l`,`l`,`y4`],[`l`,`wd8`,`y3`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x5`,`y6`],[`a`,`wd32`,`hR`,`0`,`-5400000`],[`l`,`x3`,`y1`],[`a`,`wd32`,`hR`,`cd4`,`cd2`],[`l`,`x5`,`y2`],[`c`],[`m`,`x6`,`y6`],[`a`,`wd32`,`hR`,`cd2`,`cd4`],[`l`,`x8`,`y1`],[`a`,`wd32`,`hR`,`cd4`,`-10800000`],[`l`,`x6`,`y2`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`b`],[`l`,`wd8`,`y3`],[`l`,`l`,`y4`],[`l`,`x2`,`y4`],[`l`,`x2`,`hR`],[`a`,`wd32`,`hR`,`cd2`,`cd4`],[`l`,`x8`,`t`],[`a`,`wd32`,`hR`,`3cd4`,`cd4`],[`l`,`x9`,`y4`],[`l`,`x9`,`y4`],[`l`,`r`,`y4`],[`l`,`x10`,`y3`],[`l`,`r`,`b`],[`l`,`x7`,`b`],[`a`,`wd32`,`hR`,`cd4`,`cd2`],[`l`,`x8`,`y1`],[`a`,`wd32`,`hR`,`cd4`,`-10800000`],[`l`,`x3`,`y2`],[`a`,`wd32`,`hR`,`3cd4`,`-10800000`],[`l`,`x4`,`y1`],[`a`,`wd32`,`hR`,`3cd4`,`cd2`],[`c`],[`m`,`x5`,`y2`],[`l`,`x5`,`y6`],[`m`,`x6`,`y6`],[`l`,`x6`,`y2`],[`m`,`x2`,`y7`],[`l`,`x2`,`y4`],[`m`,`x9`,`y4`],[`l`,`x9`,`y7`]]}]},rightarrow:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`maxAdj2`,`*/ 100000 w ss`],[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 0 adj2 maxAdj2`],[`dx1`,`*/ ss a2 100000`],[`x1`,`+- r 0 dx1`],[`dy1`,`*/ h a1 200000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc dy1 0`],[`dx2`,`*/ y1 dx1 hd2`],[`x2`,`+- x1 dx2 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y1`],[`l`,`x1`,`y1`],[`l`,`x1`,`t`],[`l`,`r`,`vc`],[`l`,`x1`,`b`],[`l`,`x1`,`y2`],[`l`,`l`,`y2`],[`c`]]}]},rightarrowcallout:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`],[`adj4`,`val 64977`]],gd:[[`maxAdj2`,`*/ 50000 h ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`maxAdj3`,`*/ 100000 w ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`q2`,`*/ a3 ss w`],[`maxAdj4`,`+- 100000 0 q2`],[`a4`,`pin 0 adj4 maxAdj4`],[`dy1`,`*/ ss a2 100000`],[`dy2`,`*/ ss a1 200000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc dy2 0`],[`y4`,`+- vc dy1 0`],[`dx3`,`*/ ss a3 100000`],[`x3`,`+- r 0 dx3`],[`x2`,`*/ w a4 100000`],[`x1`,`*/ x2 1 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x2`,`t`],[`l`,`x2`,`y2`],[`l`,`x3`,`y2`],[`l`,`x3`,`y1`],[`l`,`r`,`vc`],[`l`,`x3`,`y4`],[`l`,`x3`,`y3`],[`l`,`x2`,`y3`],[`l`,`x2`,`b`],[`l`,`l`,`b`],[`c`]]}]},rightbrace:{adj:[[`adj1`,`val 8333`],[`adj2`,`val 50000`]],gd:[[`a2`,`pin 0 adj2 100000`],[`q1`,`+- 100000 0 a2`],[`q2`,`min q1 a2`],[`q3`,`*/ q2 1 2`],[`maxAdj1`,`*/ q3 h ss`],[`a1`,`pin 0 adj1 maxAdj1`],[`y1`,`*/ ss a1 100000`],[`y3`,`*/ h a2 100000`],[`y2`,`+- y3 0 y1`],[`y4`,`+- b 0 y1`],[`dx1`,`cos wd2 2700000`],[`dy1`,`sin y1 2700000`],[`ir`,`+- l dx1 0`],[`it`,`+- y1 0 dy1`],[`ib`,`+- b dy1 y1`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`a`,`wd2`,`y1`,`3cd4`,`cd4`],[`l`,`hc`,`y2`],[`a`,`wd2`,`y1`,`cd2`,`-5400000`],[`a`,`wd2`,`y1`,`3cd4`,`-5400000`],[`l`,`hc`,`y4`],[`a`,`wd2`,`y1`,`0`,`cd4`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`a`,`wd2`,`y1`,`3cd4`,`cd4`],[`l`,`hc`,`y2`],[`a`,`wd2`,`y1`,`cd2`,`-5400000`],[`a`,`wd2`,`y1`,`3cd4`,`-5400000`],[`l`,`hc`,`y4`],[`a`,`wd2`,`y1`,`0`,`cd4`]]}]},rightbracket:{adj:[[`adj`,`val 8333`]],gd:[[`maxAdj`,`*/ 50000 h ss`],[`a`,`pin 0 adj maxAdj`],[`y1`,`*/ ss a 100000`],[`y2`,`+- b 0 y1`],[`dx1`,`cos w 2700000`],[`dy1`,`sin y1 2700000`],[`ir`,`+- l dx1 0`],[`it`,`+- y1 0 dy1`],[`ib`,`+- b dy1 y1`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`a`,`w`,`y1`,`3cd4`,`cd4`],[`l`,`r`,`y2`],[`a`,`w`,`y1`,`0`,`cd4`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`a`,`w`,`y1`,`3cd4`,`cd4`],[`l`,`r`,`y2`],[`a`,`w`,`y1`,`0`,`cd4`]]}]},round1rect:{adj:[[`adj`,`val 16667`]],gd:[[`a`,`pin 0 adj 50000`],[`dx1`,`*/ ss a 100000`],[`x1`,`+- r 0 dx1`],[`idx`,`*/ dx1 29289 100000`],[`ir`,`+- r 0 idx`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x1`,`t`],[`a`,`dx1`,`dx1`,`3cd4`,`cd4`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},round2diagrect:{adj:[[`adj1`,`val 16667`],[`adj2`,`val 0`]],gd:[[`a1`,`pin 0 adj1 50000`],[`a2`,`pin 0 adj2 50000`],[`x1`,`*/ ss a1 100000`],[`y1`,`+- b 0 x1`],[`a`,`*/ ss a2 100000`],[`x2`,`+- r 0 a`],[`y2`,`+- b 0 a`],[`dx1`,`*/ x1 29289 100000`],[`dx2`,`*/ a 29289 100000`],[`d`,`+- dx1 0 dx2`],[`dx`,`?: d dx1 dx2`],[`ir`,`+- r 0 dx`],[`ib`,`+- b 0 dx`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`t`],[`l`,`x2`,`t`],[`a`,`a`,`a`,`3cd4`,`cd4`],[`l`,`r`,`y1`],[`a`,`x1`,`x1`,`0`,`cd4`],[`l`,`a`,`b`],[`a`,`a`,`a`,`cd4`,`cd4`],[`l`,`l`,`x1`],[`a`,`x1`,`x1`,`cd2`,`cd4`],[`c`]]}]},round2samerect:{adj:[[`adj1`,`val 16667`],[`adj2`,`val 0`]],gd:[[`a1`,`pin 0 adj1 50000`],[`a2`,`pin 0 adj2 50000`],[`tx1`,`*/ ss a1 100000`],[`tx2`,`+- r 0 tx1`],[`bx1`,`*/ ss a2 100000`],[`bx2`,`+- r 0 bx1`],[`by1`,`+- b 0 bx1`],[`d`,`+- tx1 0 bx1`],[`tdx`,`*/ tx1 29289 100000`],[`bdx`,`*/ bx1 29289 100000`],[`il`,`?: d tdx bdx`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 bdx`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`tx1`,`t`],[`l`,`tx2`,`t`],[`a`,`tx1`,`tx1`,`3cd4`,`cd4`],[`l`,`r`,`by1`],[`a`,`bx1`,`bx1`,`0`,`cd4`],[`l`,`bx1`,`b`],[`a`,`bx1`,`bx1`,`cd4`,`cd4`],[`l`,`l`,`tx1`],[`a`,`tx1`,`tx1`,`cd2`,`cd4`],[`c`]]}]},roundrect:{adj:[[`adj`,`val 16667`]],gd:[[`a`,`pin 0 adj 50000`],[`x1`,`*/ ss a 100000`],[`x2`,`+- r 0 x1`],[`y2`,`+- b 0 x1`],[`il`,`*/ x1 29289 100000`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`x1`],[`a`,`x1`,`x1`,`cd2`,`cd4`],[`l`,`x2`,`t`],[`a`,`x1`,`x1`,`3cd4`,`cd4`],[`l`,`r`,`y2`],[`a`,`x1`,`x1`,`0`,`cd4`],[`l`,`x1`,`b`],[`a`,`x1`,`x1`,`cd4`,`cd4`],[`c`]]}]},rttriangle:{adj:[],gd:[[`it`,`*/ h 7 12`],[`ir`,`*/ w 7 12`],[`ib`,`*/ h 11 12`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`l`,`l`,`t`],[`l`,`r`,`b`],[`c`]]}]},smileyface:{adj:[[`adj`,`val 4653`]],gd:[[`a`,`pin -4653 adj 4653`],[`x1`,`*/ w 4969 21699`],[`x2`,`*/ w 6215 21600`],[`x3`,`*/ w 13135 21600`],[`x4`,`*/ w 16640 21600`],[`y1`,`*/ h 7570 21600`],[`y3`,`*/ h 16515 21600`],[`dy2`,`*/ h a 100000`],[`y2`,`+- y3 0 dy2`],[`y4`,`+- y3 dy2 0`],[`dy3`,`*/ h a 50000`],[`y5`,`+- y4 dy3 0`],[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`],[`wR`,`*/ w 1125 21600`],[`hR`,`*/ h 1125 21600`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`21600000`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x2`,`y1`],[`a`,`wR`,`hR`,`cd2`,`21600000`],[`m`,`x3`,`y1`],[`a`,`wR`,`hR`,`cd2`,`21600000`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`x1`,`y2`],[`Q`,`hc`,`y5`,`x4`,`y2`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`21600000`],[`c`]]}]},snip1rect:{adj:[[`adj`,`val 16667`]],gd:[[`a`,`pin 0 adj 50000`],[`dx1`,`*/ ss a 100000`],[`x1`,`+- r 0 dx1`],[`it`,`*/ dx1 1 2`],[`ir`,`+/ x1 r 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x1`,`t`],[`l`,`r`,`dx1`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},snip2diagrect:{adj:[[`adj1`,`val 0`],[`adj2`,`val 16667`]],gd:[[`a1`,`pin 0 adj1 50000`],[`a2`,`pin 0 adj2 50000`],[`lx1`,`*/ ss a1 100000`],[`lx2`,`+- r 0 lx1`],[`ly1`,`+- b 0 lx1`],[`rx1`,`*/ ss a2 100000`],[`rx2`,`+- r 0 rx1`],[`ry1`,`+- b 0 rx1`],[`d`,`+- lx1 0 rx1`],[`dx`,`?: d lx1 rx1`],[`il`,`*/ dx 1 2`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`lx1`,`t`],[`l`,`rx2`,`t`],[`l`,`r`,`rx1`],[`l`,`r`,`ly1`],[`l`,`lx2`,`b`],[`l`,`rx1`,`b`],[`l`,`l`,`ry1`],[`l`,`l`,`lx1`],[`c`]]}]},snip2samerect:{adj:[[`adj1`,`val 16667`],[`adj2`,`val 0`]],gd:[[`a1`,`pin 0 adj1 50000`],[`a2`,`pin 0 adj2 50000`],[`tx1`,`*/ ss a1 100000`],[`tx2`,`+- r 0 tx1`],[`bx1`,`*/ ss a2 100000`],[`bx2`,`+- r 0 bx1`],[`by1`,`+- b 0 bx1`],[`d`,`+- tx1 0 bx1`],[`dx`,`?: d tx1 bx1`],[`il`,`*/ dx 1 2`],[`ir`,`+- r 0 il`],[`it`,`*/ tx1 1 2`],[`ib`,`+/ by1 b 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`tx1`,`t`],[`l`,`tx2`,`t`],[`l`,`r`,`tx1`],[`l`,`r`,`by1`],[`l`,`bx2`,`b`],[`l`,`bx1`,`b`],[`l`,`l`,`by1`],[`l`,`l`,`tx1`],[`c`]]}]},sniproundrect:{adj:[[`adj1`,`val 16667`],[`adj2`,`val 16667`]],gd:[[`a1`,`pin 0 adj1 50000`],[`a2`,`pin 0 adj2 50000`],[`x1`,`*/ ss a1 100000`],[`dx2`,`*/ ss a2 100000`],[`x2`,`+- r 0 dx2`],[`il`,`*/ x1 29289 100000`],[`ir`,`+/ x2 r 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`t`],[`l`,`x2`,`t`],[`l`,`r`,`dx2`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`l`,`l`,`x1`],[`a`,`x1`,`x1`,`cd2`,`cd4`],[`c`]]}]},squaretabs:{adj:[],gd:[[`md`,`mod w h 0`],[`dx`,`*/ 1 md 20`],[`y1`,`+- 0 b dx`],[`x1`,`+- 0 r dx`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`dx`,`t`],[`l`,`dx`,`dx`],[`l`,`l`,`dx`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y1`],[`l`,`dx`,`y1`],[`l`,`dx`,`b`],[`l`,`l`,`b`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`t`],[`l`,`r`,`t`],[`l`,`r`,`dx`],[`l`,`x1`,`dx`],[`c`]]},{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`l`,`r`,`y1`],[`l`,`r`,`b`],[`l`,`x1`,`b`],[`c`]]}]},star10:{adj:[[`adj`,`val 42533`],[`hf`,`val 105146`]],gd:[[`a`,`pin 0 adj 50000`],[`swd2`,`*/ wd2 hf 100000`],[`dx1`,`*/ swd2 95106 100000`],[`dx2`,`*/ swd2 58779 100000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`],[`x4`,`+- hc dx1 0`],[`dy1`,`*/ hd2 80902 100000`],[`dy2`,`*/ hd2 30902 100000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc dy2 0`],[`y4`,`+- vc dy1 0`],[`iwd2`,`*/ swd2 a 50000`],[`ihd2`,`*/ hd2 a 50000`],[`sdx1`,`*/ iwd2 80902 100000`],[`sdx2`,`*/ iwd2 30902 100000`],[`sdy1`,`*/ ihd2 95106 100000`],[`sdy2`,`*/ ihd2 58779 100000`],[`sx1`,`+- hc 0 iwd2`],[`sx2`,`+- hc 0 sdx1`],[`sx3`,`+- hc 0 sdx2`],[`sx4`,`+- hc sdx2 0`],[`sx5`,`+- hc sdx1 0`],[`sx6`,`+- hc iwd2 0`],[`sy1`,`+- vc 0 sdy1`],[`sy2`,`+- vc 0 sdy2`],[`sy3`,`+- vc sdy2 0`],[`sy4`,`+- vc sdy1 0`],[`yAdj`,`+- vc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y2`],[`l`,`sx2`,`sy2`],[`l`,`x2`,`y1`],[`l`,`sx3`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx4`,`sy1`],[`l`,`x3`,`y1`],[`l`,`sx5`,`sy2`],[`l`,`x4`,`y2`],[`l`,`sx6`,`vc`],[`l`,`x4`,`y3`],[`l`,`sx5`,`sy3`],[`l`,`x3`,`y4`],[`l`,`sx4`,`sy4`],[`l`,`hc`,`b`],[`l`,`sx3`,`sy4`],[`l`,`x2`,`y4`],[`l`,`sx2`,`sy3`],[`l`,`x1`,`y3`],[`l`,`sx1`,`vc`],[`c`]]}]},star12:{adj:[[`adj`,`val 37500`]],gd:[[`a`,`pin 0 adj 50000`],[`dx1`,`cos wd2 1800000`],[`dy1`,`sin hd2 3600000`],[`x1`,`+- hc 0 dx1`],[`x3`,`*/ w 3 4`],[`x4`,`+- hc dx1 0`],[`y1`,`+- vc 0 dy1`],[`y3`,`*/ h 3 4`],[`y4`,`+- vc dy1 0`],[`iwd2`,`*/ wd2 a 50000`],[`ihd2`,`*/ hd2 a 50000`],[`sdx1`,`cos iwd2 900000`],[`sdx2`,`cos iwd2 2700000`],[`sdx3`,`cos iwd2 4500000`],[`sdy1`,`sin ihd2 4500000`],[`sdy2`,`sin ihd2 2700000`],[`sdy3`,`sin ihd2 900000`],[`sx1`,`+- hc 0 sdx1`],[`sx2`,`+- hc 0 sdx2`],[`sx3`,`+- hc 0 sdx3`],[`sx4`,`+- hc sdx3 0`],[`sx5`,`+- hc sdx2 0`],[`sx6`,`+- hc sdx1 0`],[`sy1`,`+- vc 0 sdy1`],[`sy2`,`+- vc 0 sdy2`],[`sy3`,`+- vc 0 sdy3`],[`sy4`,`+- vc sdy3 0`],[`sy5`,`+- vc sdy2 0`],[`sy6`,`+- vc sdy1 0`],[`yAdj`,`+- vc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`sx1`,`sy3`],[`l`,`x1`,`hd4`],[`l`,`sx2`,`sy2`],[`l`,`wd4`,`y1`],[`l`,`sx3`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx4`,`sy1`],[`l`,`x3`,`y1`],[`l`,`sx5`,`sy2`],[`l`,`x4`,`hd4`],[`l`,`sx6`,`sy3`],[`l`,`r`,`vc`],[`l`,`sx6`,`sy4`],[`l`,`x4`,`y3`],[`l`,`sx5`,`sy5`],[`l`,`x3`,`y4`],[`l`,`sx4`,`sy6`],[`l`,`hc`,`b`],[`l`,`sx3`,`sy6`],[`l`,`wd4`,`y4`],[`l`,`sx2`,`sy5`],[`l`,`x1`,`y3`],[`l`,`sx1`,`sy4`],[`c`]]}]},star16:{adj:[[`adj`,`val 37500`]],gd:[[`a`,`pin 0 adj 50000`],[`dx1`,`*/ wd2 92388 100000`],[`dx2`,`*/ wd2 70711 100000`],[`dx3`,`*/ wd2 38268 100000`],[`dy1`,`*/ hd2 92388 100000`],[`dy2`,`*/ hd2 70711 100000`],[`dy3`,`*/ hd2 38268 100000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc 0 dx3`],[`x4`,`+- hc dx3 0`],[`x5`,`+- hc dx2 0`],[`x6`,`+- hc dx1 0`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc 0 dy3`],[`y4`,`+- vc dy3 0`],[`y5`,`+- vc dy2 0`],[`y6`,`+- vc dy1 0`],[`iwd2`,`*/ wd2 a 50000`],[`ihd2`,`*/ hd2 a 50000`],[`sdx1`,`*/ iwd2 98079 100000`],[`sdx2`,`*/ iwd2 83147 100000`],[`sdx3`,`*/ iwd2 55557 100000`],[`sdx4`,`*/ iwd2 19509 100000`],[`sdy1`,`*/ ihd2 98079 100000`],[`sdy2`,`*/ ihd2 83147 100000`],[`sdy3`,`*/ ihd2 55557 100000`],[`sdy4`,`*/ ihd2 19509 100000`],[`sx1`,`+- hc 0 sdx1`],[`sx2`,`+- hc 0 sdx2`],[`sx3`,`+- hc 0 sdx3`],[`sx4`,`+- hc 0 sdx4`],[`sx5`,`+- hc sdx4 0`],[`sx6`,`+- hc sdx3 0`],[`sx7`,`+- hc sdx2 0`],[`sx8`,`+- hc sdx1 0`],[`sy1`,`+- vc 0 sdy1`],[`sy2`,`+- vc 0 sdy2`],[`sy3`,`+- vc 0 sdy3`],[`sy4`,`+- vc 0 sdy4`],[`sy5`,`+- vc sdy4 0`],[`sy6`,`+- vc sdy3 0`],[`sy7`,`+- vc sdy2 0`],[`sy8`,`+- vc sdy1 0`],[`idx`,`cos iwd2 2700000`],[`idy`,`sin ihd2 2700000`],[`il`,`+- hc 0 idx`],[`it`,`+- vc 0 idy`],[`ir`,`+- hc idx 0`],[`ib`,`+- vc idy 0`],[`yAdj`,`+- vc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`sx1`,`sy4`],[`l`,`x1`,`y3`],[`l`,`sx2`,`sy3`],[`l`,`x2`,`y2`],[`l`,`sx3`,`sy2`],[`l`,`x3`,`y1`],[`l`,`sx4`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx5`,`sy1`],[`l`,`x4`,`y1`],[`l`,`sx6`,`sy2`],[`l`,`x5`,`y2`],[`l`,`sx7`,`sy3`],[`l`,`x6`,`y3`],[`l`,`sx8`,`sy4`],[`l`,`r`,`vc`],[`l`,`sx8`,`sy5`],[`l`,`x6`,`y4`],[`l`,`sx7`,`sy6`],[`l`,`x5`,`y5`],[`l`,`sx6`,`sy7`],[`l`,`x4`,`y6`],[`l`,`sx5`,`sy8`],[`l`,`hc`,`b`],[`l`,`sx4`,`sy8`],[`l`,`x3`,`y6`],[`l`,`sx3`,`sy7`],[`l`,`x2`,`y5`],[`l`,`sx2`,`sy6`],[`l`,`x1`,`y4`],[`l`,`sx1`,`sy5`],[`c`]]}]},star24:{adj:[[`adj`,`val 37500`]],gd:[[`a`,`pin 0 adj 50000`],[`dx1`,`cos wd2 900000`],[`dx2`,`cos wd2 1800000`],[`dx3`,`cos wd2 2700000`],[`dx4`,`val wd4`],[`dx5`,`cos wd2 4500000`],[`dy1`,`sin hd2 4500000`],[`dy2`,`sin hd2 3600000`],[`dy3`,`sin hd2 2700000`],[`dy4`,`val hd4`],[`dy5`,`sin hd2 900000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc 0 dx3`],[`x4`,`+- hc 0 dx4`],[`x5`,`+- hc 0 dx5`],[`x6`,`+- hc dx5 0`],[`x7`,`+- hc dx4 0`],[`x8`,`+- hc dx3 0`],[`x9`,`+- hc dx2 0`],[`x10`,`+- hc dx1 0`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc 0 dy3`],[`y4`,`+- vc 0 dy4`],[`y5`,`+- vc 0 dy5`],[`y6`,`+- vc dy5 0`],[`y7`,`+- vc dy4 0`],[`y8`,`+- vc dy3 0`],[`y9`,`+- vc dy2 0`],[`y10`,`+- vc dy1 0`],[`iwd2`,`*/ wd2 a 50000`],[`ihd2`,`*/ hd2 a 50000`],[`sdx1`,`*/ iwd2 99144 100000`],[`sdx2`,`*/ iwd2 92388 100000`],[`sdx3`,`*/ iwd2 79335 100000`],[`sdx4`,`*/ iwd2 60876 100000`],[`sdx5`,`*/ iwd2 38268 100000`],[`sdx6`,`*/ iwd2 13053 100000`],[`sdy1`,`*/ ihd2 99144 100000`],[`sdy2`,`*/ ihd2 92388 100000`],[`sdy3`,`*/ ihd2 79335 100000`],[`sdy4`,`*/ ihd2 60876 100000`],[`sdy5`,`*/ ihd2 38268 100000`],[`sdy6`,`*/ ihd2 13053 100000`],[`sx1`,`+- hc 0 sdx1`],[`sx2`,`+- hc 0 sdx2`],[`sx3`,`+- hc 0 sdx3`],[`sx4`,`+- hc 0 sdx4`],[`sx5`,`+- hc 0 sdx5`],[`sx6`,`+- hc 0 sdx6`],[`sx7`,`+- hc sdx6 0`],[`sx8`,`+- hc sdx5 0`],[`sx9`,`+- hc sdx4 0`],[`sx10`,`+- hc sdx3 0`],[`sx11`,`+- hc sdx2 0`],[`sx12`,`+- hc sdx1 0`],[`sy1`,`+- vc 0 sdy1`],[`sy2`,`+- vc 0 sdy2`],[`sy3`,`+- vc 0 sdy3`],[`sy4`,`+- vc 0 sdy4`],[`sy5`,`+- vc 0 sdy5`],[`sy6`,`+- vc 0 sdy6`],[`sy7`,`+- vc sdy6 0`],[`sy8`,`+- vc sdy5 0`],[`sy9`,`+- vc sdy4 0`],[`sy10`,`+- vc sdy3 0`],[`sy11`,`+- vc sdy2 0`],[`sy12`,`+- vc sdy1 0`],[`idx`,`cos iwd2 2700000`],[`idy`,`sin ihd2 2700000`],[`il`,`+- hc 0 idx`],[`it`,`+- vc 0 idy`],[`ir`,`+- hc idx 0`],[`ib`,`+- vc idy 0`],[`yAdj`,`+- vc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`sx1`,`sy6`],[`l`,`x1`,`y5`],[`l`,`sx2`,`sy5`],[`l`,`x2`,`y4`],[`l`,`sx3`,`sy4`],[`l`,`x3`,`y3`],[`l`,`sx4`,`sy3`],[`l`,`x4`,`y2`],[`l`,`sx5`,`sy2`],[`l`,`x5`,`y1`],[`l`,`sx6`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx7`,`sy1`],[`l`,`x6`,`y1`],[`l`,`sx8`,`sy2`],[`l`,`x7`,`y2`],[`l`,`sx9`,`sy3`],[`l`,`x8`,`y3`],[`l`,`sx10`,`sy4`],[`l`,`x9`,`y4`],[`l`,`sx11`,`sy5`],[`l`,`x10`,`y5`],[`l`,`sx12`,`sy6`],[`l`,`r`,`vc`],[`l`,`sx12`,`sy7`],[`l`,`x10`,`y6`],[`l`,`sx11`,`sy8`],[`l`,`x9`,`y7`],[`l`,`sx10`,`sy9`],[`l`,`x8`,`y8`],[`l`,`sx9`,`sy10`],[`l`,`x7`,`y9`],[`l`,`sx8`,`sy11`],[`l`,`x6`,`y10`],[`l`,`sx7`,`sy12`],[`l`,`hc`,`b`],[`l`,`sx6`,`sy12`],[`l`,`x5`,`y10`],[`l`,`sx5`,`sy11`],[`l`,`x4`,`y9`],[`l`,`sx4`,`sy10`],[`l`,`x3`,`y8`],[`l`,`sx3`,`sy9`],[`l`,`x2`,`y7`],[`l`,`sx2`,`sy8`],[`l`,`x1`,`y6`],[`l`,`sx1`,`sy7`],[`c`]]}]},star32:{adj:[[`adj`,`val 37500`]],gd:[[`a`,`pin 0 adj 50000`],[`dx1`,`*/ wd2 98079 100000`],[`dx2`,`*/ wd2 92388 100000`],[`dx3`,`*/ wd2 83147 100000`],[`dx4`,`cos wd2 2700000`],[`dx5`,`*/ wd2 55557 100000`],[`dx6`,`*/ wd2 38268 100000`],[`dx7`,`*/ wd2 19509 100000`],[`dy1`,`*/ hd2 98079 100000`],[`dy2`,`*/ hd2 92388 100000`],[`dy3`,`*/ hd2 83147 100000`],[`dy4`,`sin hd2 2700000`],[`dy5`,`*/ hd2 55557 100000`],[`dy6`,`*/ hd2 38268 100000`],[`dy7`,`*/ hd2 19509 100000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc 0 dx3`],[`x4`,`+- hc 0 dx4`],[`x5`,`+- hc 0 dx5`],[`x6`,`+- hc 0 dx6`],[`x7`,`+- hc 0 dx7`],[`x8`,`+- hc dx7 0`],[`x9`,`+- hc dx6 0`],[`x10`,`+- hc dx5 0`],[`x11`,`+- hc dx4 0`],[`x12`,`+- hc dx3 0`],[`x13`,`+- hc dx2 0`],[`x14`,`+- hc dx1 0`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc 0 dy3`],[`y4`,`+- vc 0 dy4`],[`y5`,`+- vc 0 dy5`],[`y6`,`+- vc 0 dy6`],[`y7`,`+- vc 0 dy7`],[`y8`,`+- vc dy7 0`],[`y9`,`+- vc dy6 0`],[`y10`,`+- vc dy5 0`],[`y11`,`+- vc dy4 0`],[`y12`,`+- vc dy3 0`],[`y13`,`+- vc dy2 0`],[`y14`,`+- vc dy1 0`],[`iwd2`,`*/ wd2 a 50000`],[`ihd2`,`*/ hd2 a 50000`],[`sdx1`,`*/ iwd2 99518 100000`],[`sdx2`,`*/ iwd2 95694 100000`],[`sdx3`,`*/ iwd2 88192 100000`],[`sdx4`,`*/ iwd2 77301 100000`],[`sdx5`,`*/ iwd2 63439 100000`],[`sdx6`,`*/ iwd2 47140 100000`],[`sdx7`,`*/ iwd2 29028 100000`],[`sdx8`,`*/ iwd2 9802 100000`],[`sdy1`,`*/ ihd2 99518 100000`],[`sdy2`,`*/ ihd2 95694 100000`],[`sdy3`,`*/ ihd2 88192 100000`],[`sdy4`,`*/ ihd2 77301 100000`],[`sdy5`,`*/ ihd2 63439 100000`],[`sdy6`,`*/ ihd2 47140 100000`],[`sdy7`,`*/ ihd2 29028 100000`],[`sdy8`,`*/ ihd2 9802 100000`],[`sx1`,`+- hc 0 sdx1`],[`sx2`,`+- hc 0 sdx2`],[`sx3`,`+- hc 0 sdx3`],[`sx4`,`+- hc 0 sdx4`],[`sx5`,`+- hc 0 sdx5`],[`sx6`,`+- hc 0 sdx6`],[`sx7`,`+- hc 0 sdx7`],[`sx8`,`+- hc 0 sdx8`],[`sx9`,`+- hc sdx8 0`],[`sx10`,`+- hc sdx7 0`],[`sx11`,`+- hc sdx6 0`],[`sx12`,`+- hc sdx5 0`],[`sx13`,`+- hc sdx4 0`],[`sx14`,`+- hc sdx3 0`],[`sx15`,`+- hc sdx2 0`],[`sx16`,`+- hc sdx1 0`],[`sy1`,`+- vc 0 sdy1`],[`sy2`,`+- vc 0 sdy2`],[`sy3`,`+- vc 0 sdy3`],[`sy4`,`+- vc 0 sdy4`],[`sy5`,`+- vc 0 sdy5`],[`sy6`,`+- vc 0 sdy6`],[`sy7`,`+- vc 0 sdy7`],[`sy8`,`+- vc 0 sdy8`],[`sy9`,`+- vc sdy8 0`],[`sy10`,`+- vc sdy7 0`],[`sy11`,`+- vc sdy6 0`],[`sy12`,`+- vc sdy5 0`],[`sy13`,`+- vc sdy4 0`],[`sy14`,`+- vc sdy3 0`],[`sy15`,`+- vc sdy2 0`],[`sy16`,`+- vc sdy1 0`],[`idx`,`cos iwd2 2700000`],[`idy`,`sin ihd2 2700000`],[`il`,`+- hc 0 idx`],[`it`,`+- vc 0 idy`],[`ir`,`+- hc idx 0`],[`ib`,`+- vc idy 0`],[`yAdj`,`+- vc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`sx1`,`sy8`],[`l`,`x1`,`y7`],[`l`,`sx2`,`sy7`],[`l`,`x2`,`y6`],[`l`,`sx3`,`sy6`],[`l`,`x3`,`y5`],[`l`,`sx4`,`sy5`],[`l`,`x4`,`y4`],[`l`,`sx5`,`sy4`],[`l`,`x5`,`y3`],[`l`,`sx6`,`sy3`],[`l`,`x6`,`y2`],[`l`,`sx7`,`sy2`],[`l`,`x7`,`y1`],[`l`,`sx8`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx9`,`sy1`],[`l`,`x8`,`y1`],[`l`,`sx10`,`sy2`],[`l`,`x9`,`y2`],[`l`,`sx11`,`sy3`],[`l`,`x10`,`y3`],[`l`,`sx12`,`sy4`],[`l`,`x11`,`y4`],[`l`,`sx13`,`sy5`],[`l`,`x12`,`y5`],[`l`,`sx14`,`sy6`],[`l`,`x13`,`y6`],[`l`,`sx15`,`sy7`],[`l`,`x14`,`y7`],[`l`,`sx16`,`sy8`],[`l`,`r`,`vc`],[`l`,`sx16`,`sy9`],[`l`,`x14`,`y8`],[`l`,`sx15`,`sy10`],[`l`,`x13`,`y9`],[`l`,`sx14`,`sy11`],[`l`,`x12`,`y10`],[`l`,`sx13`,`sy12`],[`l`,`x11`,`y11`],[`l`,`sx12`,`sy13`],[`l`,`x10`,`y12`],[`l`,`sx11`,`sy14`],[`l`,`x9`,`y13`],[`l`,`sx10`,`sy15`],[`l`,`x8`,`y14`],[`l`,`sx9`,`sy16`],[`l`,`hc`,`b`],[`l`,`sx8`,`sy16`],[`l`,`x7`,`y14`],[`l`,`sx7`,`sy15`],[`l`,`x6`,`y13`],[`l`,`sx6`,`sy14`],[`l`,`x5`,`y12`],[`l`,`sx5`,`sy13`],[`l`,`x4`,`y11`],[`l`,`sx4`,`sy12`],[`l`,`x3`,`y10`],[`l`,`sx3`,`sy11`],[`l`,`x2`,`y9`],[`l`,`sx2`,`sy10`],[`l`,`x1`,`y8`],[`l`,`sx1`,`sy9`],[`c`]]}]},star4:{adj:[[`adj`,`val 12500`]],gd:[[`a`,`pin 0 adj 50000`],[`iwd2`,`*/ wd2 a 50000`],[`ihd2`,`*/ hd2 a 50000`],[`sdx`,`cos iwd2 2700000`],[`sdy`,`sin ihd2 2700000`],[`sx1`,`+- hc 0 sdx`],[`sx2`,`+- hc sdx 0`],[`sy1`,`+- vc 0 sdy`],[`sy2`,`+- vc sdy 0`],[`yAdj`,`+- vc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`sx1`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx2`,`sy1`],[`l`,`r`,`vc`],[`l`,`sx2`,`sy2`],[`l`,`hc`,`b`],[`l`,`sx1`,`sy2`],[`c`]]}]},star5:{adj:[[`adj`,`val 19098`],[`hf`,`val 105146`],[`vf`,`val 110557`]],gd:[[`a`,`pin 0 adj 50000`],[`swd2`,`*/ wd2 hf 100000`],[`shd2`,`*/ hd2 vf 100000`],[`svc`,`*/ vc vf 100000`],[`dx1`,`cos swd2 1080000`],[`dx2`,`cos swd2 18360000`],[`dy1`,`sin shd2 1080000`],[`dy2`,`sin shd2 18360000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`],[`x4`,`+- hc dx1 0`],[`y1`,`+- svc 0 dy1`],[`y2`,`+- svc 0 dy2`],[`iwd2`,`*/ swd2 a 50000`],[`ihd2`,`*/ shd2 a 50000`],[`sdx1`,`cos iwd2 20520000`],[`sdx2`,`cos iwd2 3240000`],[`sdy1`,`sin ihd2 3240000`],[`sdy2`,`sin ihd2 20520000`],[`sx1`,`+- hc 0 sdx1`],[`sx2`,`+- hc 0 sdx2`],[`sx3`,`+- hc sdx2 0`],[`sx4`,`+- hc sdx1 0`],[`sy1`,`+- svc 0 sdy1`],[`sy2`,`+- svc 0 sdy2`],[`sy3`,`+- svc ihd2 0`],[`yAdj`,`+- svc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y1`],[`l`,`sx2`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx3`,`sy1`],[`l`,`x4`,`y1`],[`l`,`sx4`,`sy2`],[`l`,`x3`,`y2`],[`l`,`hc`,`sy3`],[`l`,`x2`,`y2`],[`l`,`sx1`,`sy2`],[`c`]]}]},star6:{adj:[[`adj`,`val 28868`],[`hf`,`val 115470`]],gd:[[`a`,`pin 0 adj 50000`],[`swd2`,`*/ wd2 hf 100000`],[`dx1`,`cos swd2 1800000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc dx1 0`],[`y2`,`+- vc hd4 0`],[`iwd2`,`*/ swd2 a 50000`],[`ihd2`,`*/ hd2 a 50000`],[`sdx2`,`*/ iwd2 1 2`],[`sx1`,`+- hc 0 iwd2`],[`sx2`,`+- hc 0 sdx2`],[`sx3`,`+- hc sdx2 0`],[`sx4`,`+- hc iwd2 0`],[`sdy1`,`sin ihd2 3600000`],[`sy1`,`+- vc 0 sdy1`],[`sy2`,`+- vc sdy1 0`],[`yAdj`,`+- vc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`hd4`],[`l`,`sx2`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx3`,`sy1`],[`l`,`x2`,`hd4`],[`l`,`sx4`,`vc`],[`l`,`x2`,`y2`],[`l`,`sx3`,`sy2`],[`l`,`hc`,`b`],[`l`,`sx2`,`sy2`],[`l`,`x1`,`y2`],[`l`,`sx1`,`vc`],[`c`]]}]},star7:{adj:[[`adj`,`val 34601`],[`hf`,`val 102572`],[`vf`,`val 105210`]],gd:[[`a`,`pin 0 adj 50000`],[`swd2`,`*/ wd2 hf 100000`],[`shd2`,`*/ hd2 vf 100000`],[`svc`,`*/ vc vf 100000`],[`dx1`,`*/ swd2 97493 100000`],[`dx2`,`*/ swd2 78183 100000`],[`dx3`,`*/ swd2 43388 100000`],[`dy1`,`*/ shd2 62349 100000`],[`dy2`,`*/ shd2 22252 100000`],[`dy3`,`*/ shd2 90097 100000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc 0 dx3`],[`x4`,`+- hc dx3 0`],[`x5`,`+- hc dx2 0`],[`x6`,`+- hc dx1 0`],[`y1`,`+- svc 0 dy1`],[`y2`,`+- svc dy2 0`],[`y3`,`+- svc dy3 0`],[`iwd2`,`*/ swd2 a 50000`],[`ihd2`,`*/ shd2 a 50000`],[`sdx1`,`*/ iwd2 97493 100000`],[`sdx2`,`*/ iwd2 78183 100000`],[`sdx3`,`*/ iwd2 43388 100000`],[`sx1`,`+- hc 0 sdx1`],[`sx2`,`+- hc 0 sdx2`],[`sx3`,`+- hc 0 sdx3`],[`sx4`,`+- hc sdx3 0`],[`sx5`,`+- hc sdx2 0`],[`sx6`,`+- hc sdx1 0`],[`sdy1`,`*/ ihd2 90097 100000`],[`sdy2`,`*/ ihd2 22252 100000`],[`sdy3`,`*/ ihd2 62349 100000`],[`sy1`,`+- svc 0 sdy1`],[`sy2`,`+- svc 0 sdy2`],[`sy3`,`+- svc sdy3 0`],[`sy4`,`+- svc ihd2 0`],[`yAdj`,`+- svc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x1`,`y2`],[`l`,`sx1`,`sy2`],[`l`,`x2`,`y1`],[`l`,`sx3`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx4`,`sy1`],[`l`,`x5`,`y1`],[`l`,`sx6`,`sy2`],[`l`,`x6`,`y2`],[`l`,`sx5`,`sy3`],[`l`,`x4`,`y3`],[`l`,`hc`,`sy4`],[`l`,`x3`,`y3`],[`l`,`sx2`,`sy3`],[`c`]]}]},star8:{adj:[[`adj`,`val 37500`]],gd:[[`a`,`pin 0 adj 50000`],[`dx1`,`cos wd2 2700000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc dx1 0`],[`dy1`,`sin hd2 2700000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc dy1 0`],[`iwd2`,`*/ wd2 a 50000`],[`ihd2`,`*/ hd2 a 50000`],[`sdx1`,`*/ iwd2 92388 100000`],[`sdx2`,`*/ iwd2 38268 100000`],[`sdy1`,`*/ ihd2 92388 100000`],[`sdy2`,`*/ ihd2 38268 100000`],[`sx1`,`+- hc 0 sdx1`],[`sx2`,`+- hc 0 sdx2`],[`sx3`,`+- hc sdx2 0`],[`sx4`,`+- hc sdx1 0`],[`sy1`,`+- vc 0 sdy1`],[`sy2`,`+- vc 0 sdy2`],[`sy3`,`+- vc sdy2 0`],[`sy4`,`+- vc sdy1 0`],[`yAdj`,`+- vc 0 ihd2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`l`,`sx1`,`sy2`],[`l`,`x1`,`y1`],[`l`,`sx2`,`sy1`],[`l`,`hc`,`t`],[`l`,`sx3`,`sy1`],[`l`,`x2`,`y1`],[`l`,`sx4`,`sy2`],[`l`,`r`,`vc`],[`l`,`sx4`,`sy3`],[`l`,`x2`,`y2`],[`l`,`sx3`,`sy4`],[`l`,`hc`,`b`],[`l`,`sx2`,`sy4`],[`l`,`x1`,`y2`],[`l`,`sx1`,`sy3`],[`c`]]}]},straightconnector1:{adj:[],gd:[],paths:[{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`r`,`b`]]}]},stripedrightarrow:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`maxAdj2`,`*/ 84375 w ss`],[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 0 adj2 maxAdj2`],[`x4`,`*/ ss 5 32`],[`dx5`,`*/ ss a2 100000`],[`x5`,`+- r 0 dx5`],[`dy1`,`*/ h a1 200000`],[`y1`,`+- vc 0 dy1`],[`y2`,`+- vc dy1 0`],[`dx6`,`*/ dy1 dx5 hd2`],[`x6`,`+- r 0 dx6`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y1`],[`l`,`ssd32`,`y1`],[`l`,`ssd32`,`y2`],[`l`,`l`,`y2`],[`c`],[`m`,`ssd16`,`y1`],[`l`,`ssd8`,`y1`],[`l`,`ssd8`,`y2`],[`l`,`ssd16`,`y2`],[`c`],[`m`,`x4`,`y1`],[`l`,`x5`,`y1`],[`l`,`x5`,`t`],[`l`,`r`,`vc`],[`l`,`x5`,`b`],[`l`,`x5`,`y2`],[`l`,`x4`,`y2`],[`c`]]}]},sun:{adj:[[`adj`,`val 25000`]],gd:[[`a`,`pin 12500 adj 46875`],[`g0`,`+- 50000 0 a`],[`g1`,`*/ g0 30274 32768`],[`g2`,`*/ g0 12540 32768`],[`g3`,`+- g1 50000 0`],[`g4`,`+- g2 50000 0`],[`g5`,`+- 50000 0 g1`],[`g6`,`+- 50000 0 g2`],[`g7`,`*/ g0 23170 32768`],[`g8`,`+- 50000 g7 0`],[`g9`,`+- 50000 0 g7`],[`g10`,`*/ g5 3 4`],[`g11`,`*/ g6 3 4`],[`g12`,`+- g10 3662 0`],[`g13`,`+- g11 3662 0`],[`g14`,`+- g11 12500 0`],[`g15`,`+- 100000 0 g10`],[`g16`,`+- 100000 0 g12`],[`g17`,`+- 100000 0 g13`],[`g18`,`+- 100000 0 g14`],[`ox1`,`*/ w 18436 21600`],[`oy1`,`*/ h 3163 21600`],[`ox2`,`*/ w 3163 21600`],[`oy2`,`*/ h 18436 21600`],[`x8`,`*/ w g8 100000`],[`x9`,`*/ w g9 100000`],[`x10`,`*/ w g10 100000`],[`x12`,`*/ w g12 100000`],[`x13`,`*/ w g13 100000`],[`x14`,`*/ w g14 100000`],[`x15`,`*/ w g15 100000`],[`x16`,`*/ w g16 100000`],[`x17`,`*/ w g17 100000`],[`x18`,`*/ w g18 100000`],[`x19`,`*/ w a 100000`],[`wR`,`*/ w g0 100000`],[`hR`,`*/ h g0 100000`],[`y8`,`*/ h g8 100000`],[`y9`,`*/ h g9 100000`],[`y10`,`*/ h g10 100000`],[`y12`,`*/ h g12 100000`],[`y13`,`*/ h g13 100000`],[`y14`,`*/ h g14 100000`],[`y15`,`*/ h g15 100000`],[`y16`,`*/ h g16 100000`],[`y17`,`*/ h g17 100000`],[`y18`,`*/ h g18 100000`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`r`,`vc`],[`l`,`x15`,`y18`],[`l`,`x15`,`y14`],[`c`],[`m`,`ox1`,`oy1`],[`l`,`x16`,`y13`],[`l`,`x17`,`y12`],[`c`],[`m`,`hc`,`t`],[`l`,`x18`,`y10`],[`l`,`x14`,`y10`],[`c`],[`m`,`ox2`,`oy1`],[`l`,`x13`,`y12`],[`l`,`x12`,`y13`],[`c`],[`m`,`l`,`vc`],[`l`,`x10`,`y14`],[`l`,`x10`,`y18`],[`c`],[`m`,`ox2`,`oy2`],[`l`,`x12`,`y17`],[`l`,`x13`,`y16`],[`c`],[`m`,`hc`,`b`],[`l`,`x14`,`y15`],[`l`,`x18`,`y15`],[`c`],[`m`,`ox1`,`oy2`],[`l`,`x17`,`y16`],[`l`,`x16`,`y17`],[`c`],[`m`,`x19`,`vc`],[`a`,`wR`,`hR`,`cd2`,`21600000`],[`c`]]}]},swoosharrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 16667`]],gd:[[`a1`,`pin 1 adj1 75000`],[`maxAdj2`,`*/ 70000 w ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`ad1`,`*/ h a1 100000`],[`ad2`,`*/ ss a2 100000`],[`xB`,`+- r 0 ad2`],[`yB`,`+- t ssd8 0`],[`alfa`,`*/ cd4 1 14`],[`dx0`,`tan ssd8 alfa`],[`xC`,`+- xB 0 dx0`],[`dx1`,`tan ad1 alfa`],[`yF`,`+- yB ad1 0`],[`xF`,`+- xB dx1 0`],[`xE`,`+- xF dx0 0`],[`yE`,`+- yF ssd8 0`],[`dy2`,`+- yE 0 t`],[`dy22`,`*/ dy2 1 2`],[`dy3`,`*/ h 1 20`],[`yD`,`+- t dy22 dy3`],[`dy4`,`*/ hd6 1 1`],[`yP1`,`+- hd6 dy4 0`],[`xP1`,`val wd6`],[`dy5`,`*/ hd6 1 2`],[`yP2`,`+- yF dy5 0`],[`xP2`,`val wd4`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`Q`,`xP1`,`yP1`,`xB`,`yB`],[`l`,`xC`,`t`],[`l`,`r`,`yD`],[`l`,`xE`,`yE`],[`l`,`xF`,`yF`],[`Q`,`xP2`,`yP2`,`l`,`b`],[`c`]]}]},teardrop:{adj:[[`adj`,`val 100000`]],gd:[[`a`,`pin 0 adj 200000`],[`r2`,`sqrt 2`],[`tw`,`*/ wd2 r2 1`],[`th`,`*/ hd2 r2 1`],[`sw`,`*/ tw a 100000`],[`sh`,`*/ th a 100000`],[`dx1`,`cos sw 2700000`],[`dy1`,`sin sh 2700000`],[`x1`,`+- hc dx1 0`],[`y1`,`+- vc 0 dy1`],[`x2`,`+/ hc x1 2`],[`y2`,`+/ vc y1 2`],[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`vc`],[`a`,`wd2`,`hd2`,`cd2`,`cd4`],[`Q`,`x2`,`t`,`x1`,`y1`],[`Q`,`r`,`y2`,`r`,`vc`],[`a`,`wd2`,`hd2`,`0`,`cd4`],[`a`,`wd2`,`hd2`,`cd4`,`cd4`],[`c`]]}]},trapezoid:{adj:[[`adj`,`val 25000`]],gd:[[`maxAdj`,`*/ 50000 w ss`],[`a`,`pin 0 adj maxAdj`],[`x1`,`*/ ss a 200000`],[`x2`,`*/ ss a 100000`],[`x3`,`+- r 0 x2`],[`x4`,`+- r 0 x1`],[`il`,`*/ wd3 a maxAdj`],[`it`,`*/ hd3 a maxAdj`],[`ir`,`+- r 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`l`,`x2`,`t`],[`l`,`x3`,`t`],[`l`,`r`,`b`],[`c`]]}]},triangle:{adj:[[`adj`,`val 50000`]],gd:[[`a`,`pin 0 adj 100000`],[`x1`,`*/ w a 200000`],[`x2`,`*/ w a 100000`],[`x3`,`+- x1 wd2 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`l`,`x2`,`t`],[`l`,`r`,`b`],[`c`]]}]},uparrowcallout:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`],[`adj4`,`val 64977`]],gd:[[`maxAdj2`,`*/ 50000 w ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`maxAdj3`,`*/ 100000 h ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`q2`,`*/ a3 ss h`],[`maxAdj4`,`+- 100000 0 q2`],[`a4`,`pin 0 adj4 maxAdj4`],[`dx1`,`*/ ss a2 100000`],[`dx2`,`*/ ss a1 200000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`],[`x4`,`+- hc dx1 0`],[`y1`,`*/ ss a3 100000`],[`dy2`,`*/ h a4 100000`],[`y2`,`+- b 0 dy2`],[`y3`,`+/ y2 b 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`y1`],[`l`,`x1`,`y1`],[`l`,`hc`,`t`],[`l`,`x4`,`y1`],[`l`,`x3`,`y1`],[`l`,`x3`,`y2`],[`l`,`r`,`y2`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]},updownarrow:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`maxAdj2`,`*/ 50000 h ss`],[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 0 adj2 maxAdj2`],[`y2`,`*/ ss a2 100000`],[`y3`,`+- b 0 y2`],[`dx1`,`*/ w a1 200000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc dx1 0`],[`dy1`,`*/ x1 y2 wd2`],[`y1`,`+- y2 0 dy1`],[`y4`,`+- y3 dy1 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y2`],[`l`,`hc`,`t`],[`l`,`r`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`y3`],[`l`,`r`,`y3`],[`l`,`hc`,`b`],[`l`,`l`,`y3`],[`l`,`x1`,`y3`],[`l`,`x1`,`y2`],[`c`]]}]},uparrow:{adj:[[`adj1`,`val 50000`],[`adj2`,`val 50000`]],gd:[[`maxAdj2`,`*/ 100000 h ss`],[`a1`,`pin 0 adj1 100000`],[`a2`,`pin 0 adj2 maxAdj2`],[`dy2`,`*/ ss a2 100000`],[`y2`,`+- t dy2 0`],[`dx1`,`*/ w a1 200000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc dx1 0`],[`dy1`,`*/ x1 dy2 wd2`],[`y1`,`+- y2 0 dy1`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y2`],[`l`,`hc`,`t`],[`l`,`r`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`b`],[`l`,`x1`,`b`],[`l`,`x1`,`y2`],[`c`]]}]},updownarrowcallout:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`],[`adj4`,`val 48123`]],gd:[[`maxAdj2`,`*/ 50000 w ss`],[`a2`,`pin 0 adj2 maxAdj2`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`maxAdj3`,`*/ 50000 h ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`q2`,`*/ a3 ss hd2`],[`maxAdj4`,`+- 100000 0 q2`],[`a4`,`pin 0 adj4 maxAdj4`],[`dx1`,`*/ ss a2 100000`],[`dx2`,`*/ ss a1 200000`],[`x1`,`+- hc 0 dx1`],[`x2`,`+- hc 0 dx2`],[`x3`,`+- hc dx2 0`],[`x4`,`+- hc dx1 0`],[`y1`,`*/ ss a3 100000`],[`y4`,`+- b 0 y1`],[`dy2`,`*/ h a4 200000`],[`y2`,`+- vc 0 dy2`],[`y3`,`+- vc dy2 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`y2`],[`l`,`x2`,`y2`],[`l`,`x2`,`y1`],[`l`,`x1`,`y1`],[`l`,`hc`,`t`],[`l`,`x4`,`y1`],[`l`,`x3`,`y1`],[`l`,`x3`,`y2`],[`l`,`r`,`y2`],[`l`,`r`,`y3`],[`l`,`x3`,`y3`],[`l`,`x3`,`y4`],[`l`,`x4`,`y4`],[`l`,`hc`,`b`],[`l`,`x1`,`y4`],[`l`,`x2`,`y4`],[`l`,`x2`,`y3`],[`l`,`l`,`y3`],[`c`]]}]},uturnarrow:{adj:[[`adj1`,`val 25000`],[`adj2`,`val 25000`],[`adj3`,`val 25000`],[`adj4`,`val 43750`],[`adj5`,`val 75000`]],gd:[[`a2`,`pin 0 adj2 25000`],[`maxAdj1`,`*/ a2 2 1`],[`a1`,`pin 0 adj1 maxAdj1`],[`q2`,`*/ a1 ss h`],[`q3`,`+- 100000 0 q2`],[`maxAdj3`,`*/ q3 h ss`],[`a3`,`pin 0 adj3 maxAdj3`],[`q1`,`+- a3 a1 0`],[`minAdj5`,`*/ q1 ss h`],[`a5`,`pin minAdj5 adj5 100000`],[`th`,`*/ ss a1 100000`],[`aw2`,`*/ ss a2 100000`],[`th2`,`*/ th 1 2`],[`dh2`,`+- aw2 0 th2`],[`y5`,`*/ h a5 100000`],[`ah`,`*/ ss a3 100000`],[`y4`,`+- y5 0 ah`],[`x9`,`+- r 0 dh2`],[`bw`,`*/ x9 1 2`],[`bs`,`min bw y4`],[`maxAdj4`,`*/ bs 100000 ss`],[`a4`,`pin 0 adj4 maxAdj4`],[`bd`,`*/ ss a4 100000`],[`bd3`,`+- bd 0 th`],[`bd2`,`max bd3 0`],[`x3`,`+- th bd2 0`],[`x8`,`+- r 0 aw2`],[`x6`,`+- x8 0 aw2`],[`x7`,`+- x6 dh2 0`],[`x4`,`+- x9 0 bd`],[`x5`,`+- x7 0 bd2`],[`cx`,`+/ th x7 2`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`b`],[`l`,`l`,`bd`],[`a`,`bd`,`bd`,`cd2`,`cd4`],[`l`,`x4`,`t`],[`a`,`bd`,`bd`,`3cd4`,`cd4`],[`l`,`x9`,`y4`],[`l`,`r`,`y4`],[`l`,`x8`,`y5`],[`l`,`x6`,`y4`],[`l`,`x7`,`y4`],[`l`,`x7`,`x3`],[`a`,`bd2`,`bd2`,`0`,`-5400000`],[`l`,`x3`,`th`],[`a`,`bd2`,`bd2`,`3cd4`,`-5400000`],[`l`,`th`,`b`],[`c`]]}]},verticalscroll:{adj:[[`adj`,`val 12500`]],gd:[[`a`,`pin 0 adj 25000`],[`ch`,`*/ ss a 100000`],[`ch2`,`*/ ch 1 2`],[`ch4`,`*/ ch 1 4`],[`x3`,`+- ch ch2 0`],[`x4`,`+- ch ch 0`],[`x6`,`+- r 0 ch`],[`x7`,`+- r 0 ch2`],[`x5`,`+- x6 0 ch2`],[`y3`,`+- b 0 ch`],[`y4`,`+- b 0 ch2`]],paths:[{w:null,h:null,fill:null,stroke:!1,extrusionOk:!1,cmds:[[`m`,`ch2`,`b`],[`a`,`ch2`,`ch2`,`cd4`,`-5400000`],[`l`,`ch2`,`y4`],[`a`,`ch4`,`ch4`,`cd4`,`-10800000`],[`l`,`ch`,`y3`],[`l`,`ch`,`ch2`],[`a`,`ch2`,`ch2`,`cd2`,`cd4`],[`l`,`x7`,`t`],[`a`,`ch2`,`ch2`,`3cd4`,`cd2`],[`l`,`x6`,`ch`],[`l`,`x6`,`y4`],[`a`,`ch2`,`ch2`,`0`,`cd4`],[`c`],[`m`,`x4`,`ch2`],[`a`,`ch2`,`ch2`,`0`,`cd4`],[`a`,`ch4`,`ch4`,`cd4`,`cd2`],[`c`]]},{w:null,h:null,fill:`darkenLess`,stroke:!1,extrusionOk:!1,cmds:[[`m`,`x4`,`ch2`],[`a`,`ch2`,`ch2`,`0`,`cd4`],[`a`,`ch4`,`ch4`,`cd4`,`cd2`],[`c`],[`m`,`ch`,`y4`],[`a`,`ch2`,`ch2`,`0`,`3cd4`],[`a`,`ch4`,`ch4`,`3cd4`,`cd2`],[`c`]]},{w:null,h:null,fill:`none`,stroke:!0,extrusionOk:!1,cmds:[[`m`,`ch`,`y3`],[`l`,`ch`,`ch2`],[`a`,`ch2`,`ch2`,`cd2`,`cd4`],[`l`,`x7`,`t`],[`a`,`ch2`,`ch2`,`3cd4`,`cd2`],[`l`,`x6`,`ch`],[`l`,`x6`,`y4`],[`a`,`ch2`,`ch2`,`0`,`cd4`],[`l`,`ch2`,`b`],[`a`,`ch2`,`ch2`,`cd4`,`cd2`],[`c`],[`m`,`x3`,`t`],[`a`,`ch2`,`ch2`,`3cd4`,`cd2`],[`a`,`ch4`,`ch4`,`cd4`,`cd2`],[`l`,`x4`,`ch2`],[`m`,`x6`,`ch`],[`l`,`x3`,`ch`],[`m`,`ch2`,`y3`],[`a`,`ch4`,`ch4`,`3cd4`,`cd2`],[`l`,`ch`,`y4`],[`m`,`ch2`,`b`],[`a`,`ch2`,`ch2`,`cd4`,`-5400000`],[`l`,`ch`,`y3`]]}]},wave:{adj:[[`adj1`,`val 12500`],[`adj2`,`val 0`]],gd:[[`a1`,`pin 0 adj1 20000`],[`a2`,`pin -10000 adj2 10000`],[`y1`,`*/ h a1 100000`],[`dy2`,`*/ y1 10 3`],[`y2`,`+- y1 0 dy2`],[`y3`,`+- y1 dy2 0`],[`y4`,`+- b 0 y1`],[`y5`,`+- y4 0 dy2`],[`y6`,`+- y4 dy2 0`],[`dx1`,`*/ w a2 100000`],[`of2`,`*/ w a2 50000`],[`x1`,`abs dx1`],[`dx2`,`?: of2 0 of2`],[`x2`,`+- l 0 dx2`],[`dx5`,`?: of2 of2 0`],[`x5`,`+- r 0 dx5`],[`dx3`,`+/ dx2 x5 3`],[`x3`,`+- x2 dx3 0`],[`x4`,`+/ x3 x5 2`],[`x6`,`+- l dx5 0`],[`x10`,`+- r dx2 0`],[`x7`,`+- x6 dx3 0`],[`x8`,`+/ x7 x10 2`],[`x9`,`+- r 0 x1`],[`xAdj`,`+- hc dx1 0`],[`xAdj2`,`+- hc 0 dx1`],[`il`,`max x2 x6`],[`ir`,`min x5 x10`],[`it`,`*/ h a1 50000`],[`ib`,`+- b 0 it`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`x2`,`y1`],[`C`,`x3`,`y2`,`x4`,`y3`,`x5`,`y1`],[`l`,`x10`,`y4`],[`C`,`x8`,`y6`,`x7`,`y5`,`x6`,`y4`],[`c`]]}]},wedgeellipsecallout:{adj:[[`adj1`,`val -20833`],[`adj2`,`val 62500`]],gd:[[`dxPos`,`*/ w adj1 100000`],[`dyPos`,`*/ h adj2 100000`],[`xPos`,`+- hc dxPos 0`],[`yPos`,`+- vc dyPos 0`],[`sdx`,`*/ dxPos h 1`],[`sdy`,`*/ dyPos w 1`],[`pang`,`at2 sdx sdy`],[`stAng`,`+- pang 660000 0`],[`enAng`,`+- pang 0 660000`],[`dx1`,`cos wd2 stAng`],[`dy1`,`sin hd2 stAng`],[`x1`,`+- hc dx1 0`],[`y1`,`+- vc dy1 0`],[`dx2`,`cos wd2 enAng`],[`dy2`,`sin hd2 enAng`],[`x2`,`+- hc dx2 0`],[`y2`,`+- vc dy2 0`],[`stAng1`,`at2 dx1 dy1`],[`enAng1`,`at2 dx2 dy2`],[`swAng1`,`+- enAng1 0 stAng1`],[`swAng2`,`+- swAng1 21600000 0`],[`swAng`,`?: swAng1 swAng1 swAng2`],[`idx`,`cos wd2 2700000`],[`idy`,`sin hd2 2700000`],[`il`,`+- hc 0 idx`],[`ir`,`+- hc idx 0`],[`it`,`+- vc 0 idy`],[`ib`,`+- vc idy 0`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`xPos`,`yPos`],[`l`,`x1`,`y1`],[`a`,`wd2`,`hd2`,`stAng1`,`swAng`],[`c`]]}]},wedgerectcallout:{adj:[[`adj1`,`val -20833`],[`adj2`,`val 62500`]],gd:[[`dxPos`,`*/ w adj1 100000`],[`dyPos`,`*/ h adj2 100000`],[`xPos`,`+- hc dxPos 0`],[`yPos`,`+- vc dyPos 0`],[`dx`,`+- xPos 0 hc`],[`dy`,`+- yPos 0 vc`],[`dq`,`*/ dxPos h w`],[`ady`,`abs dyPos`],[`adq`,`abs dq`],[`dz`,`+- ady 0 adq`],[`xg1`,`?: dxPos 7 2`],[`xg2`,`?: dxPos 10 5`],[`x1`,`*/ w xg1 12`],[`x2`,`*/ w xg2 12`],[`yg1`,`?: dyPos 7 2`],[`yg2`,`?: dyPos 10 5`],[`y1`,`*/ h yg1 12`],[`y2`,`*/ h yg2 12`],[`t1`,`?: dxPos l xPos`],[`xl`,`?: dz l t1`],[`t2`,`?: dyPos x1 xPos`],[`xt`,`?: dz t2 x1`],[`t3`,`?: dxPos xPos r`],[`xr`,`?: dz r t3`],[`t4`,`?: dyPos xPos x1`],[`xb`,`?: dz t4 x1`],[`t5`,`?: dxPos y1 yPos`],[`yl`,`?: dz y1 t5`],[`t6`,`?: dyPos t yPos`],[`yt`,`?: dz t6 t`],[`t7`,`?: dxPos yPos y1`],[`yr`,`?: dz y1 t7`],[`t8`,`?: dyPos yPos b`],[`yb`,`?: dz t8 b`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`t`],[`l`,`x1`,`t`],[`l`,`xt`,`yt`],[`l`,`x2`,`t`],[`l`,`r`,`t`],[`l`,`r`,`y1`],[`l`,`xr`,`yr`],[`l`,`r`,`y2`],[`l`,`r`,`b`],[`l`,`x2`,`b`],[`l`,`xb`,`yb`],[`l`,`x1`,`b`],[`l`,`l`,`b`],[`l`,`l`,`y2`],[`l`,`xl`,`yl`],[`l`,`l`,`y1`],[`c`]]}]},wedgeroundrectcallout:{adj:[[`adj1`,`val -20833`],[`adj2`,`val 62500`],[`adj3`,`val 16667`]],gd:[[`dxPos`,`*/ w adj1 100000`],[`dyPos`,`*/ h adj2 100000`],[`xPos`,`+- hc dxPos 0`],[`yPos`,`+- vc dyPos 0`],[`dq`,`*/ dxPos h w`],[`ady`,`abs dyPos`],[`adq`,`abs dq`],[`dz`,`+- ady 0 adq`],[`xg1`,`?: dxPos 7 2`],[`xg2`,`?: dxPos 10 5`],[`x1`,`*/ w xg1 12`],[`x2`,`*/ w xg2 12`],[`yg1`,`?: dyPos 7 2`],[`yg2`,`?: dyPos 10 5`],[`y1`,`*/ h yg1 12`],[`y2`,`*/ h yg2 12`],[`t1`,`?: dxPos l xPos`],[`xl`,`?: dz l t1`],[`t2`,`?: dyPos x1 xPos`],[`xt`,`?: dz t2 x1`],[`t3`,`?: dxPos xPos r`],[`xr`,`?: dz r t3`],[`t4`,`?: dyPos xPos x1`],[`xb`,`?: dz t4 x1`],[`t5`,`?: dxPos y1 yPos`],[`yl`,`?: dz y1 t5`],[`t6`,`?: dyPos t yPos`],[`yt`,`?: dz t6 t`],[`t7`,`?: dxPos yPos y1`],[`yr`,`?: dz y1 t7`],[`t8`,`?: dyPos yPos b`],[`yb`,`?: dz t8 b`],[`u1`,`*/ ss adj3 100000`],[`u2`,`+- r 0 u1`],[`v2`,`+- b 0 u1`],[`il`,`*/ u1 29289 100000`],[`ir`,`+- r 0 il`],[`ib`,`+- b 0 il`]],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!0,cmds:[[`m`,`l`,`u1`],[`a`,`u1`,`u1`,`cd2`,`cd4`],[`l`,`x1`,`t`],[`l`,`xt`,`yt`],[`l`,`x2`,`t`],[`l`,`u2`,`t`],[`a`,`u1`,`u1`,`3cd4`,`cd4`],[`l`,`r`,`y1`],[`l`,`xr`,`yr`],[`l`,`r`,`y2`],[`l`,`r`,`v2`],[`a`,`u1`,`u1`,`0`,`cd4`],[`l`,`x2`,`b`],[`l`,`xb`,`yb`],[`l`,`x1`,`b`],[`l`,`u1`,`b`],[`a`,`u1`,`u1`,`cd4`,`cd4`],[`l`,`l`,`y2`],[`l`,`xl`,`yl`],[`l`,`l`,`y1`],[`c`]]}]}};const vr=216e5,yr=Math.PI*2/vr;function br(e){let t=e.trim().split(/\\s+/);return{op:t[0],argTokens:t.slice(1)}}function xr(e,t,n){let{w:r,h:i,adj:a}=e,o=Math.min(r,i),s=Math.max(r,i),c=Object.create(null);Object.assign(c,{w:r,h:i,l:0,t:0,r,b:i,hc:r/2,vc:i/2,wd2:r/2,wd3:r/3,wd4:r/4,wd5:r/5,wd6:r/6,wd8:r/8,wd10:r/10,wd12:r/12,wd16:r/16,wd32:r/32,hd2:i/2,hd3:i/3,hd4:i/4,hd5:i/5,hd6:i/6,hd8:i/8,hd10:i/10,hd12:i/12,hd16:i/16,hd32:i/32,ss:o,ssd2:o/2,ssd4:o/4,ssd6:o/6,ssd8:o/8,ssd16:o/16,ssd32:o/32,ls:s,lsd2:s/2,lsd4:s/4,lsd6:s/6,lsd8:s/8,lsd16:s/16,lsd32:s/32,cd:vr,cd2:vr/2,cd4:vr/4,cd8:vr/8,\"3cd4\":3*vr/4,\"3cd8\":3*vr/8,\"5cd8\":5*vr/8,\"7cd8\":7*vr/8}),t.forEach(([e,t],n)=>{let r=a[n];c[e]=typeof r==`number`?r:u(t),e===`adj`&&(c.adj1=c.adj),e===`adj1`&&(c.adj=c.adj1)});for(let[e,t]of n)c[e]=u(t);return{v:e=>{if(e in c)return c[e];throw Error(`preset-shape: unknown name \"${e}\"`)},fmla:u,resolve:l};function l(e){if(e in c)return c[e];let t=Number(e);if(Number.isFinite(t))return t;throw Error(`preset-shape: cannot resolve \"${e}\"`)}function u(e){let t=e.argTokens.map(l);return d(e.op,t,e)}function d(e,t,n){switch(e){case`val`:return t[0];case`*/`:return t[0]*t[1]/t[2];case`+-`:return t[0]+t[1]-t[2];case`+/`:return(t[0]+t[1])/t[2];case`?:`:return t[0]>0?t[1]:t[2];case`abs`:return Math.abs(t[0]);case`min`:return Math.min(t[0],t[1]);case`max`:return Math.max(t[0],t[1]);case`pin`:return t[1]<t[0]?t[0]:t[1]>t[2]?t[2]:t[1];case`sqrt`:return Math.sqrt(Math.max(0,t[0]));case`mod`:return Math.sqrt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);case`sin`:return t[0]*Math.sin(t[1]*yr);case`cos`:return t[0]*Math.cos(t[1]*yr);case`tan`:return t[0]*Math.tan(t[1]*yr);case`at2`:return Math.atan2(t[1],t[0])/yr;case`cat2`:return t[0]*Math.cos(Math.atan2(t[2],t[1]));case`sat2`:return t[0]*Math.sin(Math.atan2(t[2],t[1]));default:throw Error(`preset-shape: unknown operator \"${e}\" in \"${[n.op,...n.argTokens].join(` `)}\"`)}}}const Sr=Math.PI*2/216e5;function Cr(e,t,n,r,i,a,o){let s=t.w==null?1:a/t.w,c=t.h==null?1:o/t.h,l=e=>r+e*s,u=e=>i+e*c,d=0,f=0;for(let r of t.cmds)switch(r[0]){case`m`:{let t=l(n.resolve(r[1])),i=u(n.resolve(r[2]));e.moveTo(t,i),d=t,f=i;break}case`l`:{let t=l(n.resolve(r[1])),i=u(n.resolve(r[2]));e.lineTo(t,i),d=t,f=i;break}case`C`:{let t=l(n.resolve(r[1])),i=u(n.resolve(r[2])),a=l(n.resolve(r[3])),o=u(n.resolve(r[4])),s=l(n.resolve(r[5])),c=u(n.resolve(r[6]));e.bezierCurveTo(t,i,a,o,s,c),d=s,f=c;break}case`Q`:{let t=l(n.resolve(r[1])),i=u(n.resolve(r[2])),a=l(n.resolve(r[3])),o=u(n.resolve(r[4]));e.quadraticCurveTo(t,i,a,o),d=a,f=o;break}case`a`:{let t=n.resolve(r[1]),i=n.resolve(r[2]),a=t*s,o=i*c,l=n.resolve(r[3])*Sr,u=n.resolve(r[4])*Sr,p=Math.PI*2,m=e=>Math.atan2(t*Math.sin(e),i*Math.cos(e)),h=m(l),g=Math.trunc(u/p),_=u-g*p,v=m(l+_)-h;_>0&&v<0?v+=p:_<0&&v>0&&(v-=p);let y=h+v+g*p,b=d-a*Math.cos(h),x=f-o*Math.sin(h);Math.abs(a)>1e-6&&Math.abs(o)>1e-6&&(e.ellipse(b,x,Math.abs(a),Math.abs(o),0,h,y,u<0),d=b+a*Math.cos(y),f=x+o*Math.sin(y));break}case`c`:e.closePath();break}}const wr=_r,Tr=new WeakMap;function Er(e){let t=Tr.get(e);return t||(t={adj:e.adj.map(([e,t])=>[e,br(t)]),gd:e.gd.map(([e,t])=>[e,br(t)])},Tr.set(e,t)),t}function Dr(e,t,n,r){let i=Er(e);return xr({w:t,h:n,adj:r},i.adj,i.gd)}function Or(e){return e.toLowerCase()in wr}function kr(e,t,n,r,i,a,o=[]){let s=wr[t.toLowerCase()];if(!s)return!1;let c=Dr(s,i,a,o);for(let t of s.paths)Cr(e,t,c,n,r,i,a);return!0}function Ar(e,t,n,r,i,a,o=[]){let s=wr[t.toLowerCase()];if(!s)return!1;let c=Dr(s,i,a,o);for(let t of s.paths)t.fill!==`none`&&Cr(e,t,c,n,r,i,a);return!0}const jr={wedgeroundrectcallout:`roundrect`,wedgeellipsecallout:`ellipse`,wedgerectcallout:null},Mr={adj:[],gd:[],paths:[{w:null,h:null,fill:null,stroke:!0,extrusionOk:!1,cmds:[[`m`,`l`,`t`],[`l`,`r`,`t`],[`l`,`r`,`b`],[`l`,`l`,`b`],[`c`]]}]};function Nr(e,t,n){let r=e[n];if(typeof r==`number`)return r;let i=t.adj[n];return i&&Number(i[1].replace(/^val\\s+/,``))||0}function Pr(e,t,n,r){let i=wr[e];if(!i)return null;if(e in jr){let a=Nr(r,i,0),o=Nr(r,i,1),s=t/2+t*a/1e5,c=n/2+n*o/1e5;if(s>=0&&s<=t&&c>=0&&c<=n){let t=jr[e];t===`roundrect`?(i=wr.roundrect,r=[Nr(r,wr[e],2)]):t&&wr[t]?(i=wr[t],r=[]):(i=Mr,r=[])}}return{def:i,adj:r}}function Fr(e,t,n,r,i,a,o,s,c,l,u){let d=Pr(t.toLowerCase(),i,a,o);if(!d)return!1;let{def:f}=d;o=d.adj;let p=Dr(f,i,a,o),m=!1,h=f.paths.length-1;for(let t=0;t<f.paths.length;t++){let o=f.paths[t];e.beginPath(),Cr(e,o,p,n,r,i,a);let d=o.fill;if(d!==`none`&&s!=null){e.save(),e.fillStyle=s,e.fill();let t=Lr(d);t&&(e.fillStyle=t,e.fill()),e.restore(),m||=(l(),!0)}if(o.stroke&&c){let e=t===h&&(o.fill===`none`||o.fill==null);u?.skipTrailingStroke&&e||c()}}return!0}function Ir(e,t,n,r,i,a){let o=wr[e.toLowerCase()];if(!o||o.paths.length===0)return null;let s=o.paths[o.paths.length-1],c=Dr(o,r,i,a),l=s.w==null?1:r/s.w,u=s.h==null?1:i/s.h,d=e=>t+e*l,f=e=>n+e*u,p=0,m=0,h=0,g=0,_=0,v=0,y=!1,b=0,x=0,S=[];for(let e of s.cmds)switch(e[0]){case`m`:h=d(c.resolve(e[1])),g=f(c.resolve(e[2])),p=h,m=g,S.push({x:h,y:g});break;case`l`:{let t=d(c.resolve(e[1])),n=f(c.resolve(e[2]));y||=(_=t-h,v=n-g,!0),b=t-h,x=n-g,h=t,g=n,S.push({x:h,y:g});break}case`C`:{let t=d(c.resolve(e[1])),n=f(c.resolve(e[2])),r=d(c.resolve(e[3])),i=f(c.resolve(e[4])),a=d(c.resolve(e[5])),o=f(c.resolve(e[6]));y||=(_=t-h,v=n-g,!0),b=a-r,x=o-i,h=a,g=o,S.push({x:h,y:g});break}}let C=Math.atan2(v,_)+Math.PI;return{start:{x:p,y:m,angle:C},end:{x:h,y:g,angle:Math.atan2(x,b)},vertices:S}}function Lr(e){switch(e){case`lighten`:return`rgba(255,255,255,0.30)`;case`lightenLess`:return`rgba(255,255,255,0.15)`;case`darken`:return`rgba(0,0,0,0.30)`;case`darkenLess`:return`rgba(0,0,0,0.15)`;default:return null}}function Rr(e,t,n,r,i,a,o,s=-Math.PI/2){let c=a*2;for(let l=0;l<c;l++){let c=s+l*Math.PI/a,u=l%2==0?1:o,d=t+r*u*Math.cos(c),f=n+i*u*Math.sin(c);l===0?e.moveTo(d,f):e.lineTo(d,f)}e.closePath()}function zr(e,t,n,r,i,a,o=-Math.PI/2){for(let s=0;s<a;s++){let c=o+s*2*Math.PI/a,l=t+r*Math.cos(c),u=n+i*Math.sin(c);s===0?e.moveTo(l,u):e.lineTo(l,u)}e.closePath()}function Br(e,t,n,r,i,a,o){let s=e=>Math.atan2(r*Math.sin(e),i*Math.cos(e)),c=s(a),l=s(a+o),u=t-r*Math.cos(c),d=n-i*Math.sin(c);return e.ellipse(u,d,Math.abs(r),Math.abs(i),0,c,l,o<0),{x:u+r*Math.cos(l),y:d+i*Math.sin(l)}}const Vr={oval:`ellipse`,rtriangle:`rttriangle`,roundrectangle:`roundrect`,flowchartsumingjunction:`flowchartsummingjunction`},Hr=new Set(`ellipse.rttriangle.triangle.diamond.trapezoid.roundrect.snip1rect.frame.irregularseal1.irregularseal2.star4.star8.star12.star16.star24.star32.line.straightconnector1.callout1.bordercallout1.leftuparrow.quadarrowcallout.mathequal.mathplus.mathminus.flowchartdecision.flowchartmanualinput.flowchartconnector.flowchartinputoutput.flowchartmerge.flowchartextract.flowchartpreparation.flowchartcollate`.split(`.`)),Ur=new Set([`accentcallout1`,`accentbordercallout1`,`flowchartpredefinedprocess`,`flowchartsort`,`flowchartinternalstorage`,`flowchartsummingjunction`]),Wr=new Set([`round2samerect`,`round2diagrect`,`dodecagon`,`star10`]);function Gr(e,t,n,r,i,a,o=null,s=null,c=null,l=null){let u=n+i/2,d=r+a/2;{let u=t.toLowerCase(),d=Vr[u]??u;if((Hr.has(d)||Ur.has(d)||Wr.has(d))&&kr(e,d,n,r,i,a,[o,s,c,l]))return}switch(t.toLowerCase()){case`parallelogram`:{let t=i*Math.min(.5,(o??25e3)/1e5);e.moveTo(n+t,r),e.lineTo(n+i,r),e.lineTo(n+i-t,r+a),e.lineTo(n,r+a),e.closePath();break}case`pentagon`:zr(e,u,d,i/2,a/2,5);break;case`hexagon`:zr(e,u,d,i/2,a/2,6,0);break;case`heptagon`:zr(e,u,d,i/2,a/2,7);break;case`octagon`:zr(e,u,d,i/2,a/2,8,-Math.PI/8);break;case`decagon`:zr(e,u,d,i/2,a/2,10);break;case`star5`:case`star`:Rr(e,u,d,i/2,a/2,5,(o??19098)/5e4);break;case`star6`:Rr(e,u,d,i/2,a/2,6,(o??28868)/5e4,0);break;case`star7`:Rr(e,u,d,i/2,a/2,7,(o??34142)/5e4);break;case`rightarrow`:{let t=a*Math.min(1,(o??5e4)/1e5),c=i*Math.min(1,(s??5e4)/1e5),l=r+(a-t)/2;e.moveTo(n,l),e.lineTo(n+i-c,l),e.lineTo(n+i-c,r),e.lineTo(n+i,d),e.lineTo(n+i-c,r+a),e.lineTo(n+i-c,l+t),e.lineTo(n,l+t),e.closePath();break}case`leftarrow`:{let t=a*Math.min(1,(o??5e4)/1e5),c=i*Math.min(1,(s??5e4)/1e5),l=r+(a-t)/2;e.moveTo(n+i,l),e.lineTo(n+c,l),e.lineTo(n+c,r),e.lineTo(n,d),e.lineTo(n+c,r+a),e.lineTo(n+c,l+t),e.lineTo(n+i,l+t),e.closePath();break}case`uparrow`:{let t=i*Math.min(1,(o??5e4)/1e5),c=a*Math.min(1,(s??5e4)/1e5),l=n+(i-t)/2;e.moveTo(u,r),e.lineTo(n+i,r+c),e.lineTo(l+t,r+c),e.lineTo(l+t,r+a),e.lineTo(l,r+a),e.lineTo(l,r+c),e.lineTo(n,r+c),e.closePath();break}case`downarrow`:{let t=i*Math.min(1,(o??5e4)/1e5),c=a*Math.min(1,(s??5e4)/1e5),l=n+(i-t)/2;e.moveTo(u,r+a),e.lineTo(n+i,r+a-c),e.lineTo(l+t,r+a-c),e.lineTo(l+t,r),e.lineTo(l,r),e.lineTo(l,r+a-c),e.lineTo(n,r+a-c),e.closePath();break}case`leftrightarrow`:{let t=a*Math.min(1,(o??5e4)/1e5),c=i*Math.min(.5,(s??25e3)/1e5),l=r+(a-t)/2;e.moveTo(n,d),e.lineTo(n+c,r),e.lineTo(n+c,l),e.lineTo(n+i-c,l),e.lineTo(n+i-c,r),e.lineTo(n+i,d),e.lineTo(n+i-c,r+a),e.lineTo(n+i-c,l+t),e.lineTo(n+c,l+t),e.lineTo(n+c,r+a),e.closePath();break}case`updownarrow`:{let t=i*Math.min(1,(o??5e4)/1e5),c=a*Math.min(.5,(s??25e3)/1e5),l=n+(i-t)/2;e.moveTo(u,r),e.lineTo(n+i,r+c),e.lineTo(l+t,r+c),e.lineTo(l+t,r+a-c),e.lineTo(n+i,r+a-c),e.lineTo(u,r+a),e.lineTo(n,r+a-c),e.lineTo(l,r+a-c),e.lineTo(l,r+c),e.lineTo(n,r+c),e.closePath();break}case`notchedrightarrow`:{let t=a*Math.min(1,(o??5e4)/1e5),c=i*Math.min(1,(s??35e3)/1e5),l=r+(a-t)/2,u=c*.43;e.moveTo(n,l),e.lineTo(n+i-c,l),e.lineTo(n+i-c,r),e.lineTo(n+i,d),e.lineTo(n+i-c,r+a),e.lineTo(n+i-c,l+t),e.lineTo(n,l+t),e.lineTo(n+u,d),e.closePath();break}case`chevron`:{let t=i*Math.min(1,Math.max(0,(o??5e4)/1e5));e.moveTo(n,r),e.lineTo(n+t,r),e.lineTo(n+i,d),e.lineTo(n+t,r+a),e.lineTo(n,r+a),t>0&&e.lineTo(n+t,d),e.closePath();break}case`homeplate`:{let t=a*.4;e.moveTo(n,r),e.lineTo(n+i,r),e.lineTo(n+i,r+a-t),e.lineTo(u,r+a),e.lineTo(n,r+a-t),e.closePath();break}case`leftbracket`:{let t=Math.min(a*Math.min(5e4,Math.max(0,o??8333))/1e5,a/2);e.moveTo(n+i,r),e.quadraticCurveTo(n,r,n,r+t),a-2*t>.5&&e.lineTo(n,r+a-t),e.quadraticCurveTo(n,r+a,n+i,r+a);break}case`rightbracket`:{let t=Math.min(a*Math.min(5e4,Math.max(0,o??8333))/1e5,a/2);e.moveTo(n,r),e.quadraticCurveTo(n+i,r,n+i,r+t),a-2*t>.5&&e.lineTo(n+i,r+a-t),e.quadraticCurveTo(n+i,r+a,n,r+a);break}case`leftbrace`:{let t=d,o=i*.45;e.moveTo(n+i,r),e.bezierCurveTo(n+i-o,r,n+i-o,t-a*.08,n,t),e.bezierCurveTo(n+i-o,t+a*.08,n+i-o,r+a,n+i,r+a);break}case`rightbrace`:{let t=d,o=i*.45;e.moveTo(n,r),e.bezierCurveTo(n+o,r,n+o,t-a*.08,n+i,t),e.bezierCurveTo(n+o,t+a*.08,n+o,r+a,n,r+a);break}case`wedgerectcallout`:{e.rect(n,r,i,a*.8);let t=n+i*.2,o=r+a;e.moveTo(n+i*.1,r+a*.8),e.lineTo(t,o),e.lineTo(n+i*.3,r+a*.8),e.closePath();break}case`wedgeellipsecallout`:{let t=(o??-2e4)/1e5*i,n=(s??12e4)/1e5*a,r=u+t,c=d+n;e.ellipse(u,d,i/2,a/2,0,0,Math.PI*2);let l=Math.atan2(n,t),f=Math.PI/10,p=i/2,m=a/2,h=u+p*Math.cos(l-f),g=d+m*Math.sin(l-f),_=u+p*Math.cos(l+f),v=d+m*Math.sin(l+f);e.moveTo(h,g),e.lineTo(r,c),e.lineTo(_,v),e.closePath();break}case`cloudcallout`:{let t=Math.min(i,a)*.22,n=[[u-i*.25,r+a*.35],[u-i*.1,r+a*.15],[u+i*.1,r+a*.1],[u+i*.28,r+a*.2],[u+i*.35,r+a*.4]];e.moveTo(n[0][0]-t,n[0][1]);for(let[r,i]of n)e.arc(r,i,t,Math.PI,0);e.arc(u,r+a*.65,i*.45,0,Math.PI),e.closePath();let c=u+(o??-2e4)/1e5*i,l=d+(s??12e4)/1e5*a;e.moveTo(u+i*.05,r+a*.8),e.arc(c,l,Math.min(i,a)*.07,0,Math.PI*2);break}case`bentconnector2`:case`bentconnector3`:case`bentconnector4`:case`bentconnector5`:case`curvedconnector2`:case`curvedconnector3`:case`curvedconnector4`:case`curvedconnector5`:e.moveTo(n,r),e.lineTo(n+i,r+a);break;case`heart`:e.moveTo(u,r+a*.32),e.bezierCurveTo(u,r,n+i*.05,r,n,r+a*.3),e.bezierCurveTo(n,r+a*.68,u-i*.05,r+a*.78,u,r+a),e.bezierCurveTo(u+i*.05,r+a*.78,n+i,r+a*.68,n+i,r+a*.3),e.bezierCurveTo(n+i-i*.05,r,u,r,u,r+a*.32);break;case`donut`:{let t=i/2,n=a/2,r=Math.min(t,n)*(o??25e3)/1e5,s=t-r,c=n-r;e.ellipse(u,d,t,n,0,0,Math.PI*2,!1),e.moveTo(u+s,d),e.ellipse(u,d,s,c,0,0,Math.PI*2,!0);break}case`nosmoking`:case`nosmokingsign`:{let t=(o??18750)/1e5,n=i/2,r=a/2,s=n*(1-2*t),c=r*(1-2*t);e.ellipse(u,d,n,r,0,0,Math.PI*2,!1),e.moveTo(u+s,d),e.ellipse(u,d,s,c,0,0,Math.PI*2,!0),e.moveTo(u+s,d),e.ellipse(u,d,s,c,0,0,Math.PI/2,!1),e.lineTo(u-s,d),e.ellipse(u,d,s,c,0,Math.PI,3*Math.PI/2,!1),e.closePath();break}case`pie`:{let t=(o??0)/216e5*Math.PI*2,n=(s??162e5)/216e5*Math.PI*2;e.moveTo(u,d),e.arc(u,d,Math.min(i,a)/2,t,n),e.closePath();break}case`cloud`:{let t=a*.28;e.arc(n+i*.25,r+a*.55,t,Math.PI,Math.PI*1.8),e.arc(n+i*.45,r+a*.35,t*1.1,Math.PI*1.3,Math.PI*1.9),e.arc(n+i*.65,r+a*.4,t,Math.PI*1.5,Math.PI*2),e.arc(n+i*.8,r+a*.6,t*.9,Math.PI*1.6,Math.PI*.1),e.arc(n+i*.55,r+a*.75,t,0,Math.PI*.7),e.arc(n+i*.25,r+a*.7,t*.9,0,Math.PI),e.closePath();break}case`funnel`:e.moveTo(n,r),e.lineTo(n+i,r),e.lineTo(u+i*.15,r+a),e.lineTo(u-i*.15,r+a),e.closePath();break;case`smileyface`:{e.ellipse(u,d,i/2,a/2,0,0,Math.PI*2),e.closePath();let t=i*.05,n=a*.05,r=d-a*.12;e.moveTo(u-i*.2+t,r),e.ellipse(u-i*.2,r,t,n,0,0,Math.PI*2),e.moveTo(u+i*.2+t,r),e.ellipse(u+i*.2,r,t,n,0,0,Math.PI*2),e.moveTo(u-i*.25,d+a*.05),e.quadraticCurveTo(u,d+a*.3,u+i*.25,d+a*.05);break}case`document`:case`foldedcorner`:{let t=Math.min(i,a)*.15;e.moveTo(n,r),e.lineTo(n+i-t,r),e.lineTo(n+i,r+t),e.lineTo(n+i,r+a),e.lineTo(n,r+a),e.closePath(),e.moveTo(n+i-t,r),e.lineTo(n+i-t,r+t),e.lineTo(n+i,r+t);break}case`snip2samerect`:{let t=Math.min(i,a)*Math.min(5e4,Math.max(0,o??16667))/1e5;e.moveTo(n,r),e.lineTo(n+i-t,r),e.lineTo(n+i,r+t),e.lineTo(n+i,r+a),e.lineTo(n+t,r+a),e.lineTo(n,r+a-t),e.closePath();break}case`snip2diagrect`:{let t=Math.min(i,a)*Math.min(5e4,Math.max(0,o??16667))/1e5;e.moveTo(n+t,r),e.lineTo(n+i-t,r),e.lineTo(n+i,r+t),e.lineTo(n+i,r+a-t),e.lineTo(n+i-t,r+a),e.lineTo(n+t,r+a),e.lineTo(n,r+a-t),e.lineTo(n,r+t),e.closePath();break}case`sniproundrect`:{let t=Math.min(i,a)*Math.min(5e4,Math.max(0,o??16667))/1e5;e.moveTo(n+t,r),e.lineTo(n+i-t,r),e.lineTo(n+i,r+t),e.lineTo(n+i,r+a),e.lineTo(n,r+a),e.quadraticCurveTo(n,r,n+t,r),e.closePath();break}case`round1rect`:{let t=Math.min(i,a)*Math.min(5e4,Math.max(0,o??16667))/1e5;e.moveTo(n+t,r),e.lineTo(n+i,r),e.lineTo(n+i,r+a),e.lineTo(n,r+a),e.lineTo(n,r+t),e.quadraticCurveTo(n,r,n+t,r),e.closePath();break}case`plaque`:{let t=Math.min(i,a)*.25;e.moveTo(n+t,r),e.lineTo(n+i-t,r),e.quadraticCurveTo(n+i,r,n+i,r+t),e.lineTo(n+i,r+a-t),e.quadraticCurveTo(n+i,r+a,n+i-t,r+a),e.lineTo(n+t,r+a),e.quadraticCurveTo(n,r+a,n,r+a-t),e.lineTo(n,r+t),e.quadraticCurveTo(n,r,n+t,r),e.closePath();break}case`can`:{let t=a*.1;e.ellipse(u,r+t,i/2,t,0,0,Math.PI*2),e.moveTo(n,r+t),e.lineTo(n,r+a-t),e.ellipse(u,r+a-t,i/2,t,0,Math.PI,2*Math.PI),e.lineTo(n+i,r+t);break}case`cube`:{let t=Math.min(i,a)*.2;e.moveTo(n+t,r),e.lineTo(n+i,r),e.lineTo(n+i,r+a-t),e.lineTo(n+i-t,r+a),e.lineTo(n,r+a),e.lineTo(n,r+t),e.closePath(),e.moveTo(n+t,r),e.lineTo(n+t,r+t),e.lineTo(n+i-t,r+t),e.moveTo(n+t,r+t),e.lineTo(n,r+t);break}case`bevel`:{let t=Math.min(i,a)*.1;e.rect(n,r,i,a),e.moveTo(n,r),e.lineTo(n+t,r+t),e.lineTo(n+i-t,r+t),e.lineTo(n+i,r),e.moveTo(n+i-t,r+t),e.lineTo(n+i-t,r+a-t),e.lineTo(n+i,r+a),e.moveTo(n+i-t,r+a-t),e.lineTo(n+t,r+a-t),e.lineTo(n,r+a),e.moveTo(n+t,r+a-t),e.lineTo(n+t,r+t);break}case`halfframe`:{let t=Math.min(i,a)*.25;e.moveTo(n,r),e.lineTo(n+i,r),e.lineTo(n+i,r+t),e.lineTo(n+t,r+t),e.lineTo(n+t,r+a),e.lineTo(n,r+a),e.closePath();break}case`corner`:{let t=Math.min(i,a)*.25;e.moveTo(n,r),e.lineTo(n+i,r),e.lineTo(n+i,r+t),e.lineTo(n+t,r+t),e.lineTo(n+t,r+a),e.lineTo(n,r+a),e.closePath();break}case`flowchartalternateprocess`:case`flowchartprocess`:{let t=Math.min(i,a)*Math.min(5e4,Math.max(0,o??16667))/1e5;e.roundRect(n,r,i,a,[{x:t,y:t}]);break}case`flowchartterminator`:{let t=Math.min(i,a)/2;e.roundRect(n,r,i,a,[{x:t,y:t}]);break}case`flowchartdocument`:{let t=a*.1;e.moveTo(n,r),e.lineTo(n+i,r),e.lineTo(n+i,r+a-t),e.bezierCurveTo(n+i*.75,r+a,n+i*.25,r+a-t*2,n,r+a-t),e.closePath();break}case`moon`:e.arc(u,d,Math.min(i,a)/2,-Math.PI/2,Math.PI/2),e.arc(u-i*.2,d,Math.min(i,a)/2,Math.PI/2,-Math.PI/2,!0),e.closePath();break;case`arc`:{let t=216e5,n=(o??162e5)/t*Math.PI*2,r=(s??54e5)/t*Math.PI*2;e.ellipse(u,d,i/2,a/2,0,n,n+r,r<0);break}case`mathmultiply`:{let t=Math.min(i,a)*Math.min(51965,Math.max(0,o??23520))/1e5,s=Math.atan2(a,i),c=Math.sin(s),l=Math.cos(s),u=t/2*c,d=t/2*l;e.moveTo(n+u,r-d),e.lineTo(n-u,r+d),e.lineTo(n+i-u,r+a+d),e.lineTo(n+i+u,r+a-d),e.closePath(),e.moveTo(n+i-u,r-d),e.lineTo(n+i+u,r+d),e.lineTo(n+u,r+a+d),e.lineTo(n-u,r+a-d),e.closePath();break}case`mathdivide`:{let t=Math.min(36745,Math.max(1e3,o??23520)),n=(73490+-t)/4,l=36745*i/a,f=Math.min(Math.min(n,l),Math.max(1e3,c??11760)),p=73490+4*f-t,m=Math.min(p,Math.max(0,s??5880)),h=a*t/2e5,g=a*m/1e5,_=a*f/1e5,v=i*73490/2e5,y=d-h,b=d+h,x=y-(g+_)-_,S=r+a-x,C=u-v,w=u+v;e.rect(C,y,w-C,b-y),e.moveTo(u+_,x+_),e.arc(u,x+_,_,0,Math.PI*2),e.moveTo(u+_,S-_),e.arc(u,S-_,_,0,Math.PI*2);break}case`quadarrow`:{let t=i*(o??23e3)/1e5,c=i*(s??3e4)/1e5,l=n+(i-t)/2,f=r+(a-t)/2;e.moveTo(u,r),e.lineTo(n+i-c,r+c),e.lineTo(n+i-c,f),e.lineTo(l+t,f),e.lineTo(l+t,r+c),e.lineTo(n+c,r+c),e.lineTo(n+i,d),e.lineTo(n+i-c,r+a-c),e.lineTo(l+t,r+a-c),e.lineTo(l+t,f+t),e.lineTo(n+i-c,f+t),e.lineTo(n+i-c,r+a-c),e.lineTo(u,r+a),e.lineTo(n+c,r+a-c),e.lineTo(n+c,f+t),e.lineTo(l,f+t),e.lineTo(l,r+a-c),e.lineTo(n,d),e.lineTo(n+c,r+c),e.lineTo(l,r+c),e.lineTo(l,f),e.lineTo(n+c,f),e.closePath();break}case`wave`:{let t=a*(o??12500)/1e5,s=r+t,c=r+a-t;e.moveTo(n,s),e.bezierCurveTo(n+i*.25,r,n+i*.25,r+t*2,n+i*.5,s),e.bezierCurveTo(n+i*.75,r+t*2,n+i*.75,r,n+i,s),e.lineTo(n+i,c),e.bezierCurveTo(n+i*.75,r+a,n+i*.75,r+a-t*2,n+i*.5,c),e.bezierCurveTo(n+i*.25,r+a-t*2,n+i*.25,r+a,n,c),e.closePath();break}case`doublewave`:{let t=a*(o??6250)/1e5,s=r+t,c=r+a-t;e.moveTo(n,s),e.bezierCurveTo(n+i*.25,r,n+i*.25,r+t*2,n+i*.5,s),e.bezierCurveTo(n+i*.75,r+t*2,n+i*.75,r,n+i,s),e.lineTo(n+i,c),e.bezierCurveTo(n+i*.75,r+a,n+i*.75,r+a-t*2,n+i*.5,c),e.bezierCurveTo(n+i*.25,r+a-t*2,n+i*.25,r+a,n,c),e.closePath();break}case`sun`:{let t=Math.min(i,a)/2,n=t*((o??25e3)/1e5+.5),r=Math.min(n,t*.9),s=Math.PI/16;for(let n=0;n<8;n++){let i=n/8*Math.PI*2;e.moveTo(u+r*Math.cos(i-s),d+r*Math.sin(i-s)),e.lineTo(u+t*Math.cos(i),d+t*Math.sin(i)),e.lineTo(u+r*Math.cos(i+s),d+r*Math.sin(i+s)),e.closePath()}e.moveTo(u+r,d),e.arc(u,d,r,0,Math.PI*2);break}case`lightningbolt`:e.moveTo(u+i*.1,r),e.lineTo(n,d-a*.05),e.lineTo(u+i*.05,d-a*.05),e.lineTo(u-i*.1,r+a),e.lineTo(n+i,d+a*.05),e.lineTo(u-i*.05,d+a*.05),e.closePath();break;case`bracketpair`:{let t=a*Math.min(5e4,Math.max(0,o??8333))/1e5;e.moveTo(n+i*.4,r),e.quadraticCurveTo(n,r,n,r+t),a-2*t>0&&e.lineTo(n,r+a-t),e.quadraticCurveTo(n,r+a,n+i*.4,r+a),e.moveTo(n+i*.6,r),e.quadraticCurveTo(n+i,r,n+i,r+t),a-2*t>0&&e.lineTo(n+i,r+a-t),e.quadraticCurveTo(n+i,r+a,n+i*.6,r+a);break}case`bracepair`:{let t=i*.2;e.moveTo(n+i*.4,r),e.bezierCurveTo(n+i*.4-t,r,n+i*.4-t,d-a*.08,n,d),e.bezierCurveTo(n+i*.4-t,d+a*.08,n+i*.4-t,r+a,n+i*.4,r+a),e.moveTo(n+i*.6,r),e.bezierCurveTo(n+i*.6+t,r,n+i*.6+t,d-a*.08,n+i,d),e.bezierCurveTo(n+i*.6+t,d+a*.08,n+i*.6+t,r+a,n+i*.6,r+a);break}case`chord`:{let t=(o??27e5)/216e5*Math.PI*2,n=(s??162e5)/216e5*Math.PI*2;e.ellipse(u,d,i/2,a/2,0,t,n),e.closePath();break}case`blockarc`:{let t=Math.min(i,a)/2,n=o??108e5,r=s??0,l=t*(1-(c??25e3)/1e5),f=n/216e5*Math.PI*2,p=r/216e5*Math.PI*2;e.arc(u,d,t,f,p,!1),e.arc(u,d,l,p,f,!0),e.closePath();break}case`teardrop`:{let t=Math.min(i,a)*.4,o=n+t,s=r+a-t;e.arc(o,s,t,0,Math.PI*2*.75),e.bezierCurveTo(o-t*.1,s-t,n+i-t,r+t,n+i,r),e.bezierCurveTo(n+i-t*.2,r+t*.5,o+t,s-t*1.1,o+t,s),e.closePath();break}case`diagstripe`:{let t=a*(o??5e4)/1e5*i/a;e.moveTo(n+t,r),e.lineTo(n+i,r),e.lineTo(n+i-t,r+a),e.lineTo(n,r+a),e.closePath();break}case`wedgeroundrectcallout`:{let t=Math.min(i,a)*.1;e.roundRect(n,r,i,a*.85,t),e.moveTo(n+i*.1,r+a*.85),e.lineTo(n+i*.2,r+a),e.lineTo(n+i*.3,r+a*.85),e.closePath();break}case`rightarrowcallout`:{let t=a*(o??5e4)/1e5,c=i*(s??5e4)/1e5,l=r+(a-t)/2;e.rect(n,l,c,t),e.moveTo(n+c,r),e.lineTo(n+i,d),e.lineTo(n+c,r+a),e.closePath();break}case`leftarrowcallout`:{let t=a*(o??5e4)/1e5,c=i*(s??5e4)/1e5,l=r+(a-t)/2;e.rect(n+i-c,l,c,t),e.moveTo(n+i-c,r),e.lineTo(n,d),e.lineTo(n+i-c,r+a),e.closePath();break}case`uparrowcallout`:{let t=i*(o??5e4)/1e5,c=a*(s??5e4)/1e5,l=n+(i-t)/2;e.rect(l,r+c,t,a-c),e.moveTo(n,r+c),e.lineTo(u,r),e.lineTo(n+i,r+c),e.closePath();break}case`downarrowcallout`:{let t=i*(o??5e4)/1e5,c=a*(s??5e4)/1e5,l=n+(i-t)/2;e.rect(l,r,t,a-c),e.moveTo(n,r+a-c),e.lineTo(u,r+a),e.lineTo(n+i,r+a-c),e.closePath();break}case`leftrightarrowcallout`:{let t=a*(o??5e4)/1e5,c=i*(s??25e3)/1e5,l=r+(a-t)/2;e.rect(n+c,l,i-2*c,t),e.moveTo(n+c,r),e.lineTo(n,d),e.lineTo(n+c,r+a),e.closePath(),e.moveTo(n+i-c,r),e.lineTo(n+i,d),e.lineTo(n+i-c,r+a),e.closePath();break}case`leftrightuparrow`:{let t=i*(o??25e3)/1e5,c=a*(s??3e4)/1e5,l=n+(i-t)/2;e.moveTo(u,r),e.lineTo(n+i,r+c),e.lineTo(l+t,r+c),e.lineTo(l+t,r+a),e.lineTo(l,r+a),e.lineTo(l,r+c),e.lineTo(n,r+c),e.closePath();break}case`uturnarrow`:{let t=i*(o??25e3)/1e5,s=(i-t)/2,c=Math.max(0,s-t),l=n+t+s,u=r+t+s,d=t*2,f=r+a-t*2.5;e.moveTo(n,r+a),e.lineTo(n,u),e.arc(l,u,s,Math.PI,0),e.lineTo(n+i,f),e.lineTo(n+i+(d-t)/2,f),e.lineTo(l+t/2,r+a),e.lineTo(n+i-(d-t)/2-t,f),e.lineTo(n+i-t,f),e.lineTo(n+i-t,u),e.arc(l,u,c,0,Math.PI,!0),e.lineTo(n+t,r+a),e.closePath();break}case`bentarrow`:case`bentuparrow`:{let t=Math.min(i,a)*.25;e.moveTo(n,d-t/2),e.lineTo(n+i-t*2,d-t/2),e.lineTo(n+i-t*2,r+t),e.lineTo(n+i,d),e.lineTo(n+i-t*2,r+a-t),e.lineTo(n+i-t*2,d+t/2),e.lineTo(n,d+t/2),e.closePath();break}case`plus`:{let t=Math.min(i,a)*(o??25e3)/1e5;e.rect(u-t,r,2*t,a),e.rect(n,d-t,i,2*t);break}case`mathnotequal`:{let t=Math.min(5e4,Math.max(0,o??23520)),n=Math.min(66e5,Math.max(42e5,s??66e5)),l=Math.min(1e5-2*t,Math.max(0,c??11760)),f=a*t/1e5,p=a*l/2e5,m=i*73490/2e5,h=a/2,g=(n/6e4-90)*Math.PI/180,_=h*Math.tan(g),v=Math.hypot(_,h)*f/h;e.rect(u-m,d-p-f,2*m,f),e.rect(u-m,d+p,2*m,f),e.moveTo(u+_-v/2,r),e.lineTo(u+_+v/2,r),e.lineTo(u-_+v/2,r+a),e.lineTo(u-_-v/2,r+a),e.closePath();break}case`flowchartdelay`:{let t=a/2;e.moveTo(n,r),e.lineTo(n+i-t,r),e.arc(n+i-t,d,t,-Math.PI/2,Math.PI/2),e.lineTo(n,r+a),e.closePath();break}case`flowchartdisplay`:{let t=i*.2,o=i*.15;e.moveTo(n+t,r),e.lineTo(n+i-o,r),e.arc(n+i-o,d,a/2,-Math.PI/2,Math.PI/2),e.lineTo(n+t,r+a),e.lineTo(n,d),e.closePath();break}case`flowchartpunchedcard`:{let t=i*.2;e.moveTo(n+t,r),e.lineTo(n+i,r),e.lineTo(n+i-t,r+a),e.lineTo(n,r+a),e.closePath();break}case`flowchartoffpageconnector`:{let t=a*.3;e.moveTo(n,r),e.lineTo(n+i,r),e.lineTo(n+i,r+a-t),e.lineTo(u,r+a),e.lineTo(n,r+a-t),e.closePath();break}case`flowchartonlinestorage`:case`flowchartmanuallabel`:case`flowchartpuncheddisk`:e.rect(n,r,i,a);break;case`horizontalscroll`:{let t=Math.min(i,a)*.15;e.roundRect(n+t,r,i-t,a,t),e.moveTo(n+t,r+t*2),e.arc(n+t,r+t,t,Math.PI/2,Math.PI*2.5);break}case`verticalscroll`:{let t=Math.min(i,a)*.15;e.roundRect(n,r+t,i,a-t,t),e.moveTo(n+t*2,r+t),e.arc(n+t,r+t,t,0,Math.PI*2);break}case`ribbon`:{let t=Math.min(33333,Math.max(0,o??16667)),c=i*Math.min(75e3,Math.max(25e3,s??5e4))/2e5,l=i/8,u=i/32,d=i/2-c,f=i/2+c,p=d+u,m=f-u,h=d+l,g=f-l,_=h-u,v=g+u,y=i-l,b=a*t/2e5,x=a*t/1e5,S=a-x,C=S/2;e.moveTo(n,r),e.lineTo(n+_,r),e.lineTo(n+p,r+b),e.lineTo(n+m,r+x),e.lineTo(n+v,r+b),e.lineTo(n+i,r),e.lineTo(n+y,r+C),e.lineTo(n+i,r+S),e.lineTo(n+f,r+S),e.lineTo(n+f,r+a),e.lineTo(n+p,r+a),e.lineTo(n+d,r+S),e.lineTo(n,r+S),e.lineTo(n+l,r+C),e.closePath();break}case`ribbon2`:{let t=Math.min(33333,Math.max(0,o??16667)),c=i*Math.min(75e3,Math.max(25e3,s??5e4))/2e5,l=i/8,u=i/32,d=i/2-c,f=i/2+c,p=d+u,m=f-u,h=d+l,g=f-l,_=h-u,v=g+u,y=i-l,b=a*t/2e5,x=a*t/1e5,S=a-b,C=a-x,w=x,T=(w+a)/2;e.moveTo(n,r+a),e.lineTo(n+_,r+a),e.lineTo(n+p,r+S),e.lineTo(n+m,r+C),e.lineTo(n+v,r+S),e.lineTo(n+i,r+a),e.lineTo(n+y,r+T),e.lineTo(n+i,r+w),e.lineTo(n+f,r+w),e.lineTo(n+f,r),e.lineTo(n+p,r),e.lineTo(n+d,r+w),e.lineTo(n,r+w),e.lineTo(n+l,r+T),e.closePath();break}case`ellipseribbon`:{let t=Math.min(1e5,Math.max(0,o??25e3)),l=Math.min(75e3,Math.max(25e3,s??5e4)),u=Math.max(0,t-(1e5-t)/2),d=Math.min(t,Math.max(u,c??12500)),f=i/8,p=i*l/2e5,m=i/2-p,h=m+f,g=i-h,_=i-m,v=i-f,y=a*d/1e5,b=4*y/i,x=b*(h-h*h/i),S=h/2,C=b*S,w=i-S,T=a*t/1e5,E=T-y,D=b*(m-m*m/i),O=D+E,k=y+E-O+y+E,A=a-T,j=(y*14/16+A)/2,M=D+A,N=O+A,P=m/2,ee=b*P+A,te=i-P,F=k+A;e.moveTo(n,r),e.quadraticCurveTo(n+S,r+C,n+h,r+x),e.lineTo(n+m,r+O),e.quadraticCurveTo(n+i/2,r+k,n+_,r+O),e.lineTo(n+g,r+x),e.quadraticCurveTo(n+w,r+C,n+i,r),e.lineTo(n+v,r+j),e.lineTo(n+i,r+A),e.quadraticCurveTo(n+te,r+ee,n+_,r+M),e.lineTo(n+_,r+N),e.quadraticCurveTo(n+i/2,r+F,n+m,r+N),e.lineTo(n+m,r+M),e.quadraticCurveTo(n+P,r+ee,n,r+A),e.lineTo(n+f,r+j),e.closePath();break}case`ellipseribbon2`:{let t=Math.min(1e5,Math.max(0,o??25e3)),l=Math.min(75e3,Math.max(25e3,s??5e4)),u=Math.max(0,t-(1e5-t)/2),d=Math.min(t,Math.max(u,c??12500)),f=i/8,p=i*l/2e5,m=i/2-p,h=m+f,g=i-h,_=i-m,v=i-f,y=a*d/1e5,b=4*y/i,x=a-b*(h-h*h/i),S=h/2,C=a-b*S,w=i-S,T=a*t/1e5,E=T-y,D=b*(m-m*m/i),O=D+E,k=a-O,A=y+E-O+y+E,j=a-A,M=a-T,N=a-(y*14/16+M)/2,P=a-(D+M),ee=a-(O+M),te=m/2,F=a-(b*te+M),I=i-te,L=a-(A+M);e.moveTo(n,r+a),e.quadraticCurveTo(n+S,r+C,n+h,r+x),e.lineTo(n+m,r+k),e.quadraticCurveTo(n+i/2,r+j,n+_,r+k),e.lineTo(n+g,r+x),e.quadraticCurveTo(n+w,r+C,n+i,r+a),e.lineTo(n+v,r+N),e.lineTo(n+i,r+T),e.quadraticCurveTo(n+I,r+F,n+_,r+P),e.lineTo(n+_,r+ee),e.quadraticCurveTo(n+i/2,r+L,n+m,r+ee),e.lineTo(n+m,r+P),e.quadraticCurveTo(n+te,r+F,n,r+T),e.lineTo(n+f,r+N),e.closePath();break}case`circulararrow`:{let t=(s??0)/6e4*Math.PI/180,n=(o??162e5)/6e4*Math.PI/180,r=(c??5e4)/1e5,l=Math.min(i,a)/2,f=l*(1-r),p=(l+f)/2,m=l-f,h=t+n;e.arc(u,d,l,t,h,!1),e.arc(u,d,f,h,t,!0),e.closePath();let g=Math.sin(h),_=-Math.cos(h),v=m*1.5,y=u+p*Math.cos(h)+v*g,b=d+p*Math.sin(h)+v*_;e.moveTo(y,b),e.lineTo(u+l*Math.cos(h),d+l*Math.sin(h)),e.lineTo(u+f*Math.cos(h),d+f*Math.sin(h)),e.closePath();break}case`curvedrightarrow`:{let t=Math.min(i,a),l=a/2,u=5e4*a/t,d=Math.min(u,Math.max(0,s??5e4)),f=t*Math.min(d,Math.max(0,o??25e3))/1e5,p=t*d/1e5,m=l-(f+p)/4,h=(2*m)**2-f**2,g=1e5*(Math.sqrt(Math.max(0,h))*i/(2*m))/t,_=t*Math.min(g,Math.max(0,c??25e3))/1e5,v=Math.sqrt(Math.max(0,i*i-_*_))*m/i,y=m+f,b=m+v,x=y+v,S=(p-f)/2,C=b-S,w=x+S,T=a-p/2,E=i-_,D=Math.atan2(_,v),O=-D,k=Math.PI-D;e.moveTo(n,r+m),Br(e,n,r+m,i,m,Math.PI,O),e.lineTo(n+E,r+C),e.lineTo(n+i,r+T),e.lineTo(n+E,r+w),e.lineTo(n+E,r+x),Br(e,n+E,r+x,i,m,k,D),e.closePath();break}case`curvedleftarrow`:{let t=Math.min(i,a),l=a/2,u=5e4*a/t,d=Math.min(u,Math.max(0,s??5e4)),f=t*Math.min(d,Math.max(0,o??25e3))/1e5,p=t*d/1e5,m=l-(f+p)/4,h=(2*m)**2-f**2,g=Math.sqrt(Math.max(0,h))*i/(2*m),_=1e5*g/t,v=t*Math.min(_,Math.max(0,c??25e3))/1e5,y=Math.sqrt(Math.max(0,i*i-v*v))*m/i,b=m+f,x=m+y,S=b+y,C=(p-f)/2,w=x-C,T=S+C,E=a-p/2,D=v,O=Math.atan2(v,y),k=f/2,A=Math.atan2(k,g),j=A-O,M=O-A,N=-A;e.moveTo(n,r+E),e.lineTo(n+D,r+w),e.lineTo(n+D,r+x);let P=Br(e,n+D,r+x,i,m,O,j);Br(e,P.x,P.y,i,m,N,M),e.lineTo(n+D,r+T),e.closePath();break}case`curveduparrow`:{let t=Math.min(i,a),l=i/2,u=5e4*i/t,d=Math.min(u,Math.max(0,s??5e4)),f=t*Math.min(1e5,Math.max(0,o??25e3))/1e5,p=t*d/1e5,m=l-(f+p)/4,h=(2*m)**2-f**2,g=Math.sqrt(Math.max(0,h))*a/(2*m),_=1e5*g/t,v=t*Math.min(_,Math.max(0,c??25e3))/1e5,y=Math.sqrt(Math.max(0,a*a-v*v))*m/a,b=m+f,x=m+y,S=b+y,C=(p-f)/2,w=x-C,T=S+C,E=i-p/2,D=v,O=Math.atan2(v,y),k=f/2,A=Math.atan2(k,g),j=A-O,M=O-A,N=Math.PI/2-O,P=Math.PI/2-A;e.moveTo(n+E,r),e.lineTo(n+T,r+D),e.lineTo(n+S,r+D);let ee=Br(e,n+S,r+D,m,a,N,M);Br(e,ee.x,ee.y,m,a,P,j),e.lineTo(n+w,r+D),e.closePath();break}case`curveddownarrow`:{let t=Math.min(i,a),l=i/2,u=5e4*i/t,d=Math.min(u,Math.max(0,s??5e4)),f=t*Math.min(1e5,Math.max(0,o??25e3))/1e5,p=t*d/1e5,m=l-(f+p)/4,h=(2*m)**2-f**2,g=Math.sqrt(Math.max(0,h))*a/(2*m),_=1e5*g/t,v=t*Math.min(_,Math.max(0,c??25e3))/1e5,y=Math.sqrt(Math.max(0,a*a-v*v))*m/a,b=m+f,x=m+y,S=b+y,C=(p-f)/2,w=x-C,T=S+C,E=i-p/2,D=a-v,O=Math.atan2(v,y),k=f/2,A=Math.atan2(k,g),j=3*Math.PI/2+O;3*Math.PI/2-A,A-Math.PI/2,Math.PI/2-A,e.moveTo(n+E,r+a),e.lineTo(n+w,r+D),e.lineTo(n+x,r+D),Br(e,n+x,r+D,m,a,j,-O),e.lineTo(n+b,r),Br(e,n+b,r,m,a,3*Math.PI/2,O),e.lineTo(n+T,r+D),e.closePath();break}case`stripedrightarrow`:{let t=Math.min(i,a),c=t/32,l=t/16,u=t/8,f=t*(o??5e4)/1e5,p=i*(s??5e4)/1e5,m=d-f/2,h=d+f/2,g=n+i-p;e.rect(n,m,c,f),e.rect(n+l,m,l,f),e.rect(n+u,m,u,f),e.moveTo(g,m),e.lineTo(g,r),e.lineTo(n+i,d),e.lineTo(g,r+a),e.lineTo(g,h),e.lineTo(n+u*2,h),e.lineTo(n+u*2,m),e.closePath();break}case`flowchartmagneticdisk`:{let t=a*.15;e.moveTo(n,r+t),e.ellipse(u,r+t,i/2,t,0,Math.PI,0),e.lineTo(n+i,r+a-t),e.ellipse(u,r+a-t,i/2,t,0,0,Math.PI),e.lineTo(n,r+t),e.closePath(),e.moveTo(n+i,r+t),e.ellipse(u,r+t,i/2,t,0,0,Math.PI);break}case`flowchartmagneticdrum`:{let t=i*.15;e.moveTo(n+t,r),e.lineTo(n+i,r),e.lineTo(n+i,r+a),e.lineTo(n+t,r+a),e.ellipse(n+t,d,t,a/2,0,Math.PI/2,-Math.PI/2,!0),e.closePath(),e.moveTo(n+i,r),e.ellipse(n+i,d,t,a/2,0,-Math.PI/2,Math.PI/2);break}case`flowchartmagnetictape`:{let t=Math.min(i,a)/2,n=u+t*.5;e.moveTo(u,r+a),e.arc(u,d,t,Math.PI/2,Math.PI/2+Math.PI*2*.875),e.lineTo(n,d+t*.5),e.lineTo(n,r+a),e.closePath();break}case`flowchartpunchedtape`:{let t=a*.12;e.moveTo(n,r),e.lineTo(n+i,r),e.lineTo(n+i,r+a-t),e.bezierCurveTo(n+i*.75,r+a,n+i*.25,r+a-t*2,n,r+a-t),e.closePath(),e.moveTo(n,r+t),e.bezierCurveTo(n+i*.25,r,n+i*.75,r+t*2,n+i,r+t);break}case`flowchartmanualoperation`:{let t=i*.15;e.moveTo(n+t,r),e.lineTo(n+i-t,r),e.lineTo(n+i,r+a),e.lineTo(n,r+a),e.closePath();break}case`flowchartmultidocument`:{let t=a*.1,o=i*.04;e.rect(n+o*2,r-a*.08,i-o*2,a*.1),e.rect(n+o,r-a*.04,i-o,a*.06),e.moveTo(n,r),e.lineTo(n+i,r),e.lineTo(n+i,r+a-t),e.bezierCurveTo(n+i*.75,r+a,n+i*.25,r+a-t*2,n,r+a-t),e.closePath();break}case`rttriangle`:e.moveTo(n,r),e.lineTo(n,r+a),e.lineTo(n+i,r+a),e.closePath();break;default:e.rect(n,r,i,a);break}}function Kr(e,t,n){let r=Math.max(.5,t.width*n),i=e.w===`sm`?4:e.w===`lg`?8:6,a=e.len===`sm`?4:e.len===`lg`?8:6;return{lw:r,halfW:r*i/2,len:r*a}}const qr=new Set([`triangle`,`stealth`,`diamond`,`oval`]);function Jr(e,t,n){return qr.has(e.type)?Kr(e,t,n).len:0}function Yr(e,t,n){if(n<=0)return{x:e.x,y:e.y};let r=t.x-e.x,i=t.y-e.y,a=Math.hypot(r,i);if(a<1e-9)return{x:e.x,y:e.y};let o=Math.min(n,a)/a;return{x:e.x+r*o,y:e.y+i*o}}function Xr(e,t,n,r,i,a,o,s){if(i.type===`none`)return;let{lw:c,halfW:l,len:u}=Kr(i,a,o),d=s??ft(a.color);switch(e.save(),e.translate(t,n),e.rotate(r),e.fillStyle=d,e.strokeStyle=d,e.lineWidth=c,e.setLineDash([]),e.beginPath(),i.type){case`triangle`:case`stealth`:e.moveTo(0,0),e.lineTo(-u,-l),e.lineTo(-u,l),e.closePath(),e.fill();break;case`arrow`:e.lineCap=`round`,e.lineJoin=`round`,e.moveTo(-u,-l),e.lineTo(0,0),e.lineTo(-u,l),e.stroke();break;case`diamond`:e.moveTo(0,0),e.lineTo(-u/2,-l),e.lineTo(-u,0),e.lineTo(-u/2,l),e.closePath(),e.fill();break;case`oval`:e.ellipse(-u/2,0,u/2,l,0,0,Math.PI*2),e.fill();break}e.restore()}function Zr(e,t,n){let{x:r,y:i,w:a,h:o}=t.rect,{rotationDeg:s,flipH:c,flipV:l}=t.transform;e.save();try{(s!==0||c||l)&&(e.translate(r+a/2,i+o/2),s!==0&&e.rotate(s*Math.PI/180),e.scale(c?-1:1,l?-1:1),e.translate(-(r+a/2),-(i+o/2))),n()}finally{e.restore()}}function Qr(e,t){let{x:n,y:r,w:i,h:a}=t.rect;if(e.beginPath(),t.geometry.kind===`preset`){let o=[...t.geometry.adjustments];Ar(e,t.geometry.name,n,r,i,a,o)||Gr(e,t.geometry.name,n,r,i,a,o[0],o[1],o[2],o[3])}else sr(e,t.geometry.subpaths,n,r,i,a);e.clip()}const $r=new Set([`line`,`straightconnector1`,`bentconnector2`,`bentconnector3`,`bentconnector4`,`bentconnector5`,`curvedconnector2`,`curvedconnector3`,`curvedconnector4`,`curvedconnector5`]),ei=new Set([`callout1`,`callout2`,`callout3`,`bordercallout1`,`bordercallout2`,`bordercallout3`,`accentcallout1`,`accentcallout2`,`accentcallout3`,`accentbordercallout1`,`accentbordercallout2`,`accentbordercallout3`]);function ti(e){return ei.has(e)||e===`line`||e===`straightconnector1`||e.startsWith(`bentconnector`)}function ni(e,t,n,r,i){if(vt(e,t,n),t.fill){let n=ht(t.fill,e,r.x,r.y,r.w,r.h,i);n&&(e.strokeStyle=n)}}function ri(e,t,n,r){let i=t.stroke;if(!i||!$r.has(n)&&!ei.has(n))return;let{x:a,y:o,w:s,h:c}=t.rect,l=i.fill?ht(i.fill,e,a,o,s,c,t.transform.rotationDeg)??void 0:void 0,u=Ir(n,a,o,s,c,[...t.geometry.kind===`preset`?t.geometry.adjustments:[]]);if(u){if(ti(n)&&u.vertices.length>=2&&(i.headEnd||i.tailEnd)){let n=u.vertices.map(e=>({x:e.x,y:e.y}));i.tailEnd&&(n[n.length-1]=Yr(n[n.length-1],n[n.length-2],Jr(i.tailEnd,i,r))),i.headEnd&&(n[0]=Yr(n[0],n[1],Jr(i.headEnd,i,r))),ni(e,i,r,t.rect,t.transform.rotationDeg),e.beginPath(),e.moveTo(n[0].x,n[0].y);for(let t=1;t<n.length;t++)e.lineTo(n[t].x,n[t].y);e.stroke()}i.tailEnd&&Xr(e,u.end.x,u.end.y,u.end.angle,i.tailEnd,i,r,l),i.headEnd&&Xr(e,u.start.x,u.start.y,u.start.angle,i.headEnd,i,r,l)}}function ii(e,t,n){if(t.geometry.kind!==`custom`)return;let r=t.stroke;if(!r||!r.headEnd&&!r.tailEnd)return;let i=gr(t.geometry.subpaths),{x:a,y:o,w:s,h:c}=t.rect,l=r.fill?ht(r.fill,e,a,o,s,c,t.transform.rotationDeg)??void 0:void 0;i.start&&r.headEnd&&Xr(e,a+i.start.x*s,o+i.start.y*c,Math.atan2(i.start.dy*c,i.start.dx*s),r.headEnd,r,n,l),i.end&&r.tailEnd&&Xr(e,a+i.end.x*s,o+i.end.y*c,Math.atan2(i.end.dy*c,i.end.dx*s),r.tailEnd,r,n,l)}function ai(e,t,n){let{x:r,y:i,w:a,h:o}=t.rect;Zr(e,t,()=>{let s=ht(t.fill,e,r,i,a,o,t.transform.rotationDeg),c=t.stroke,l=c?()=>{ni(e,c,n,t.rect,t.transform.rotationDeg),e.stroke()}:null;if(t.geometry.kind===`preset`){let u=t.geometry.name.toLowerCase(),d=[...t.geometry.adjustments],f=ti(u)&&!!(c?.headEnd||c?.tailEnd);Or(u)&&Fr(e,u,r,i,a,o,d,s,l,()=>{},f?{skipTrailingStroke:!0}:void 0)||(e.beginPath(),Gr(e,u,r,i,a,o,d[0],d[1],d[2],d[3]),s&&u!==`arc`&&(e.fillStyle=s,u===`donut`||u===`smileyface`||u===`frame`?e.fill(`evenodd`):e.fill()),l&&l()),ri(e,t,u,n)}else e.beginPath(),sr(e,t.geometry.subpaths,r,i,a,o),s&&(e.fillStyle=s,e.fill()),l&&l(),ii(e,t,n)})}const oi=1<<25,si=oi*4;var ci=class e extends RangeError{code=`ooxml-decoded-image-limit`;constructor(t,n,r){super(`OOXML decoded image limit exceeded: ${t} ${r} > ${n}`),this.metric=t,this.limit=n,this.observed=r,this.name=`OoxmlDecodedImageLimitError`,Object.setPrototypeOf(this,e.prototype)}};const li=32767;function ui(e,t,n,r,i){if(n<40||t+40>e.byteLength)return null;let a=e.getUint32(t,!0);if(a<40)return null;let o=e.getInt32(t+4,!0),s=e.getInt32(t+8,!0),c=e.getUint16(t+14,!0);if(e.getUint32(t+16,!0)!==0)return null;let l=s<0,u=Math.abs(o),d=Math.abs(s);if(u<=0||d<=0||u>li||d>li||u*d>33554432)return null;let f=new Uint8ClampedArray(u*d*4),p=u*c+31>>5<<2>>>0;if(r+p*d>r+i+p&&r+p*d>e.byteLength)return null;let m=null;if(c<=8){let n=e.getUint32(t+32,!0);n===0&&(n=1<<c);let r=t+a;m=[];for(let t=0;t<n;t++){let n=r+t*4;if(n+4>e.byteLength)break;let i=e.getUint8(n),a=e.getUint8(n+1),o=e.getUint8(n+2);m.push(o<<16|a<<8|i)}}let h=(e,t,n,r,i,a)=>{let o=(e*u+t)*4;f[o]=n,f[o+1]=r,f[o+2]=i,f[o+3]=a},g=!1;for(let t=0;t<d;t++){let n=l?t:d-1-t,i=t,a=r+n*p;if(a+p>e.byteLength)break;if(c===32)for(let t=0;t<u;t++){let n=a+t*4,r=e.getUint8(n),o=e.getUint8(n+1),s=e.getUint8(n+2),c=e.getUint8(n+3);c!==0&&(g=!0),h(i,t,s,o,r,c)}else if(c===24){for(let t=0;t<u;t++){let n=a+t*3;h(i,t,e.getUint8(n+2),e.getUint8(n+1),e.getUint8(n),255)}g=!0}else if(c===8&&m){for(let t=0;t<u;t++){let n=e.getUint8(a+t),r=m[n]??0;h(i,t,r>>16&255,r>>8&255,r&255,255)}g=!0}else if(c===4&&m){for(let t=0;t<u;t++){let n=e.getUint8(a+(t>>1)),r=t&1?n&15:n>>4&15,o=m[r]??0;h(i,t,o>>16&255,o>>8&255,o&255,255)}g=!0}else if(c===1&&m){for(let t=0;t<u;t++){let n=e.getUint8(a+(t>>3))>>7-(t&7)&1,r=m[n]??0;h(i,t,r>>16&255,r>>8&255,r&255,255)}g=!0}else return null}if(c===32&&!g)for(let e=3;e<f.length;e+=4)f[e]=255;return{width:u,height:d,data:f}}function di(e,t,n){if(n<40||t+40>e.byteLength)return null;let r=e.getUint32(t,!0);if(r<40)return null;let i=e.getUint16(t+14,!0),a=0;if(i<=8){let n=e.getUint32(t+32,!0);n===0&&(n=1<<i),a=n}else a=e.getUint32(t+32,!0);let o=r+a*4,s=t+o,c=n-o;return c<=0?null:ui(e,t,o,s,c)}function fi(e,t,n,r,i,a){try{let o=et(t.width,t.height);if(!o)return!1;let s=o.getContext(`2d`);if(!s)return!1;let c=s.createImageData(t.width,t.height);c.data.set(t.data),s.putImageData(c,0,0);let l=Math.min(n,i),u=Math.min(r,a),d=Math.abs(i-n),f=Math.abs(a-r);return e.drawImage(o,l,u,d,f),!0}catch{return!1}}const J={HEADER:1,POLYBEZIER:2,POLYGON:3,POLYLINE:4,POLYBEZIERTO:5,POLYLINETO:6,POLYPOLYLINE:7,POLYPOLYGON:8,SETWINDOWEXTEX:9,SETWINDOWORGEX:10,SETVIEWPORTEXTEX:11,SETVIEWPORTORGEX:12,EOF:14,SETMAPMODE:17,SETPOLYFILLMODE:19,SETBKMODE:18,SETTEXTALIGN:22,SETTEXTCOLOR:24,MOVETOEX:27,SCALEVIEWPORTEXTEX:31,SCALEWINDOWEXTEX:32,SAVEDC:33,RESTOREDC:34,SETWORLDTRANSFORM:35,MODIFYWORLDTRANSFORM:36,SELECTOBJECT:37,CREATEPEN:38,CREATEBRUSHINDIRECT:39,DELETEOBJECT:40,ELLIPSE:42,RECTANGLE:43,LINETO:54,BEGINPATH:59,ENDPATH:60,CLOSEFIGURE:61,SELECTCLIPPATH:67,EXTCREATEFONTINDIRECTW:82,EXTTEXTOUTW:84,POLYBEZIER16:85,POLYGON16:86,POLYLINE16:87,POLYBEZIERTO16:88,POLYLINETO16:89,POLYPOLYLINE16:90,POLYPOLYGON16:91,CREATEMONOBRUSH:93,CREATEDIBPATTERNBRUSHPT:94,EXTCREATEPEN:95,BITBLT:76,STRETCHDIBITS:81},pi={WHITE_BRUSH:2147483648,LTGRAY_BRUSH:2147483649,GRAY_BRUSH:2147483650,DKGRAY_BRUSH:2147483651,BLACK_BRUSH:2147483652,NULL_BRUSH:2147483653,WHITE_PEN:2147483654,BLACK_PEN:2147483655,NULL_PEN:2147483656,DC_BRUSH:2147483666,DC_PEN:2147483662},mi={TEXT:1,LOMETRIC:2,HIMETRIC:3,LOENGLISH:4,HIENGLISH:5,TWIPS:6,ISOTROPIC:7,ANISOTROPIC:8},hi=()=>({m11:1,m12:0,m21:0,m22:1,dx:0,dy:0});function gi(e,t){return{m11:e.m11*t.m11+e.m21*t.m12,m12:e.m12*t.m11+e.m22*t.m12,m21:e.m11*t.m21+e.m21*t.m22,m22:e.m12*t.m21+e.m22*t.m22,dx:e.m11*t.dx+e.m21*t.dy+e.dx,dy:e.m12*t.dx+e.m22*t.dy+e.dy}}var _i=class{p;constructor(e,t,n){this.dv=e,this.end=n,this.p=t}get pos(){return this.p}set pos(e){this.p=e}get remaining(){return this.end-this.p}i16(){let e=this.dv.getInt16(this.p,!0);return this.p+=2,e}i32(){let e=this.dv.getInt32(this.p,!0);return this.p+=4,e}u32(){let e=this.dv.getUint32(this.p,!0);return this.p+=4,e}f32(){let e=this.dv.getFloat32(this.p,!0);return this.p+=4,e}xform(){return{m11:this.f32(),m12:this.f32(),m21:this.f32(),m22:this.f32(),dx:this.f32(),dy:this.f32()}}skip(e){this.p+=e}};function vi(e,t,n){return e.wt.m11*t+e.wt.m21*n+e.wt.dx}function yi(e,t,n){return e.wt.m12*t+e.wt.m22*n+e.wt.dy}function bi(e){return e.winExtX===0?1:e.vpExtX/e.winExtX}function xi(e){return e.winExtY===0?1:e.vpExtY/e.winExtY}function Si(e){return Math.min(Math.abs(bi(e)),Math.abs(xi(e)))}function Ci(e){return e.mapMode===mi.ISOTROPIC?bi(e)<0?-Si(e):Si(e):bi(e)}function wi(e){return e.mapMode===mi.ISOTROPIC?xi(e)<0?-Si(e):Si(e):xi(e)}function Ti(e,t){return(t-e.winOrgX)*Ci(e)+e.vpOrgX}function Ei(e,t){return(t-e.winOrgY)*wi(e)+e.vpOrgY}function Di(e,t,n){let r=Ti(e,vi(e,t,n)),i=Ei(e,yi(e,t,n));return[(r-e.left)*e.W/e.boundsW,(i-e.top)*e.H/e.boundsH]}function Oi(e){return(Math.hypot(e.wt.m11,e.wt.m12)+Math.hypot(e.wt.m21,e.wt.m22))/2}function ki(e){return(Math.abs(Ci(e))+Math.abs(wi(e)))/2}function Ai(e){return(e.W/e.boundsW+e.H/e.boundsH)/2}function ji(e){return Math.hypot(e.wt.m21,e.wt.m22)}function Mi(e){return e.H/e.boundsH}function Ni(e,t){let n=t*Oi(e)*ki(e)*Ai(e);return Math.max(.75,n)}function Pi(e,t){if(e.mapMode=t,t===mi.TEXT){e.winOrgX=0,e.winOrgY=0,e.vpOrgX=0,e.vpOrgY=0,e.winExtX=1,e.winExtY=1,e.vpExtX=1,e.vpExtY=1;return}if(t===mi.ANISOTROPIC||t===mi.ISOTROPIC||e.devPxPerMmX<=0||e.devPxPerMmY<=0)return;let n=25.4,r=t===mi.LOMETRIC?.1:t===mi.HIMETRIC?.01:t===mi.LOENGLISH?.01*n:t===mi.HIENGLISH?.001*n:t===mi.TWIPS?n/1440:0;r<=0||(e.winOrgX=0,e.winOrgY=0,e.vpOrgX=0,e.vpOrgY=0,e.winExtX=1,e.winExtY=1,e.vpExtX=r*e.devPxPerMmX,e.vpExtY=-(r*e.devPxPerMmY))}const Fi={[pi.WHITE_BRUSH]:{kind:`brush`,fill:`#ffffff`},[pi.LTGRAY_BRUSH]:{kind:`brush`,fill:`#c0c0c0`},[pi.GRAY_BRUSH]:{kind:`brush`,fill:`#808080`},[pi.DKGRAY_BRUSH]:{kind:`brush`,fill:`#404040`},[pi.BLACK_BRUSH]:{kind:`brush`,fill:`#000000`},[pi.NULL_BRUSH]:{kind:`brush`,fill:null}},Ii={[pi.WHITE_PEN]:{kind:`pen`,stroke:`#ffffff`,width:1},[pi.BLACK_PEN]:{kind:`pen`,stroke:`#000000`,width:1},[pi.NULL_PEN]:{kind:`pen`,stroke:null,width:1},[pi.DC_PEN]:{kind:`pen`,stroke:`#000000`,width:1}};function Li(e,t){let n=Fi[t];if(n){e.curBrush=n;return}let r=Ii[t];if(r){e.curPen=r;return}t===pi.DC_BRUSH&&(e.curBrush=e.curBrush??{kind:`brush`,fill:`#000000`})}function Ri(e){let t=0,n=0,r=0,i=0;for(let a=0;a<e.data.length;a+=4)e.data[a+3]!==0&&(t+=e.data[a],n+=e.data[a+1],r+=e.data[a+2],i++);if(i===0)return`#808080`;let a=e=>Math.round(e/i).toString(16).padStart(2,`0`);return`#${a(t)}${a(n)}${a(r)}`}const zi=e=>[e.i16(),e.i16()],Bi=e=>[e.i32(),e.i32()];function Vi(e,t,n){t.skip(16);let r=t.u32();if(r<2||r>1048576||!e.curPen||e.curPen.stroke==null)return;let{ctx:i}=e;i.beginPath();let a=0,o=0;for(let s=0;s<r&&!(t.remaining<4);s++){let[r,c]=n(t),[l,u]=Di(e,r,c);s===0?i.moveTo(l,u):i.lineTo(l,u),a=r,o=c}i.strokeStyle=e.curPen.stroke,i.lineWidth=Ni(e,e.curPen.width),i.stroke(),e.drew=!0,e.curX=a,e.curY=o}function Hi(e,t,n){t.skip(16);let r=t.u32();if(r<1||r>1048576)return;let{ctx:i}=e,a=e.curPen!=null&&e.curPen.stroke!=null;if(a){i.beginPath();let[t,n]=Di(e,e.curX,e.curY);i.moveTo(t,n)}for(let o=0;o<r&&!(t.remaining<4);o++){let[r,o]=n(t);if(a){let[t,n]=Di(e,r,o);i.lineTo(t,n)}e.curX=r,e.curY=o}a&&e.curPen&&(i.strokeStyle=e.curPen.stroke,i.lineWidth=Ni(e,e.curPen.width),i.stroke(),e.drew=!0)}function Ui(e,t,n){t.skip(16);let r=t.u32();if(r<2||r>1048576)return;let{ctx:i}=e;e.inPath||i.beginPath();let a=!1;for(let o=0;o<r&&!(t.remaining<4);o++){let[r,o]=n(t),[s,c]=Di(e,r,o);a?i.lineTo(s,c):(i.moveTo(s,c),a=!0)}a&&(i.closePath(),!e.inPath&&(e.curBrush&&e.curBrush.fill!=null&&(i.fillStyle=e.curBrush.fill,i.fill(e.fillRule),e.drew=!0),e.curPen&&e.curPen.stroke!=null&&(i.strokeStyle=e.curPen.stroke,i.lineWidth=Ni(e,e.curPen.width),i.stroke(),e.drew=!0)))}function Wi(e,t,n,r){t.skip(16);let i=t.u32();if(i<1||i>1048576)return;let a=[];for(let e=0;e<i&&!(t.remaining<4);e++)a.push(n(t));if(a.length<(r?3:4)){a.length&&(e.curX=a[a.length-1][0],e.curY=a[a.length-1][1]);return}let o=e.curPen!=null&&e.curPen.stroke!=null,{ctx:s}=e;if(o){s.beginPath();let t=r?Di(e,e.curX,e.curY):Di(e,a[0][0],a[0][1]);s.moveTo(t[0],t[1])}let c=+!r;for(;c+2<a.length+ +!!r;c+=3){let t=a[c],n=a[c+1],r=a[c+2];if(!t||!n||!r)break;if(o){let i=Di(e,t[0],t[1]),a=Di(e,n[0],n[1]),o=Di(e,r[0],r[1]);s.bezierCurveTo(i[0],i[1],a[0],a[1],o[0],o[1])}e.curX=r[0],e.curY=r[1]}o&&e.curPen&&(s.strokeStyle=e.curPen.stroke,s.lineWidth=Ni(e,e.curPen.width),s.stroke(),e.drew=!0)}function Gi(e,t,n,r){t.skip(16);let i=t.u32(),a=t.u32();if(i<=0||i>65536||a<=0||a>2097152)return;let o=[];for(let e=0;e<i;e++){if(t.remaining<4)return;o.push(t.u32())}let{ctx:s}=e;e.inPath||s.beginPath();let c=!1;for(let i of o){if(i<2){for(let e=0;e<i&&t.remaining>=4;e++)n(t);continue}for(let r=0;r<i&&!(t.remaining<4);r++){let[i,a]=n(t),[o,c]=Di(e,i,a);r===0?s.moveTo(o,c):s.lineTo(o,c)}r&&s.closePath(),c=!0}!c||e.inPath||(r&&e.curBrush&&e.curBrush.fill!=null&&(s.fillStyle=e.curBrush.fill,s.fill(e.fillRule),e.drew=!0),e.curPen&&e.curPen.stroke!=null&&(s.strokeStyle=e.curPen.stroke,s.lineWidth=Ni(e,e.curPen.width),s.stroke(),e.drew=!0))}function Ki(e,t,n,r,i){let{ctx:a}=e,o=Di(e,t,n),s=Di(e,r,n),c=Di(e,r,i),l=Di(e,t,i);e.inPath||a.beginPath(),a.moveTo(o[0],o[1]),a.lineTo(s[0],s[1]),a.lineTo(c[0],c[1]),a.lineTo(l[0],l[1]),a.closePath(),!e.inPath&&(e.curBrush&&e.curBrush.fill!=null&&(a.fillStyle=e.curBrush.fill,a.fill(e.fillRule),e.drew=!0),e.curPen&&e.curPen.stroke!=null&&(a.strokeStyle=e.curPen.stroke,a.lineWidth=Ni(e,e.curPen.width),a.stroke(),e.drew=!0))}function qi(e){let t=e.u32(),n=e.u32(),r=e.i32();e.i32();let i=e.u32();return[t,{kind:`pen`,stroke:(n&255)==5?null:ba(i),width:Math.abs(r)}]}function Ji(e){let t=e.u32();e.skip(16);let n=e.u32(),r=e.u32();e.u32();let i=e.u32();return[t,{kind:`pen`,stroke:(n&255)==5?null:ba(i),width:Math.abs(r)}]}function Yi(e){let t=e.u32(),n=e.u32(),r=e.u32();return e.u32(),[t,{kind:`brush`,fill:n===1?null:ba(r)}]}function Xi(e,t,n){let r=e.u32();e.u32();let i=e.u32(),a=e.u32(),o=e.u32(),s=e.u32(),c=`#808080`;try{let e=ui(t,n+i,a,n+o,s);e&&(c=Ri(e))}catch{}return[r,{kind:`brush`,fill:c}]}function Zi(e,t,n){let r=e.u32(),i=n+12,a=t.getInt32(i,!0),o=t.getInt32(i+8,!0),s=t.getInt32(i+16,!0),c=t.getUint8(i+20),l=``;for(let e=0;e<32;e++){let n=i+28+e*2;if(n+2>t.byteLength)break;let r=t.getUint16(n,!0);if(r===0)break;l+=String.fromCharCode(r)}return[r,{kind:`font`,height:Math.abs(a),weight:s,italic:c!==0,face:l,escapement:o}]}function Qi(e,t,n,r){t.skip(16),t.u32(),t.f32(),t.f32();let i=t.i32(),a=t.i32(),o=t.u32(),s=t.u32();if(t.u32(),o<=0||o>65536)return;let c=``;for(let e=0;e<o;e++){let t=r+s+e*2;if(t+2>n.byteLength)break;c+=String.fromCharCode(n.getUint16(t,!0))}if(c.length===0)return;let l=e.curFont,u=Math.abs(l?.height??0)*ji(e)*Math.abs(wi(e))*Mi(e);if(!Number.isFinite(u)||u<1)return;let{ctx:d}=e,[f,p]=Di(e,i,a);d.fillStyle=e.textColor;let m=l&&l.weight>=700?`bold `:``;d.font=`${l?.italic?`italic `:``}${m}${u}px ${l?.face||`sans-serif`}`;let h=e.textAlign&6;d.textAlign=h===2?`right`:h===6?`center`:`left`,d.textBaseline=(e.textAlign&24)==24?`alphabetic`:`top`;let g=l?.escapement??0;try{if(g!==0){d.save();try{d.translate(f,p),d.rotate(-g/10*(Math.PI/180)),d.fillText(c,0,0)}finally{d.restore()}}else d.fillText(c,f,p);e.drew=!0}catch{}}function $i(e,t,n,r,i,a,o,s,c,l,u){if(i===0||o===0)return;let d=ui(t,n+r,i,n+a,o);if(!d)return;let[f,p]=Di(e,s,c),[m,h]=Di(e,l,u);fi(e.ctx,d,f,p,m,h)&&(e.drew=!0)}function ea(e,t,n,r){t.skip(16);let i=t.i32(),a=t.i32(),o=t.i32(),s=t.i32();t.u32(),t.i32(),t.i32(),t.skip(24),t.u32(),t.u32(),$i(e,n,r,t.u32(),t.u32(),t.u32(),t.u32(),i,a,i+o,a+s)}function ta(e,t,n,r){t.skip(16);let i=t.i32(),a=t.i32();t.i32(),t.i32(),t.i32(),t.i32();let o=t.u32(),s=t.u32(),c=t.u32(),l=t.u32();t.u32(),t.u32();let u=t.i32(),d=t.i32();$i(e,n,r,o,s,c,l,i,a,i+u,a+d)}function na(e,t,n,r){if(!va(e)||n<=0||r<=0)return!1;let i=new DataView(e.buffer,e.byteOffset,e.byteLength),a={ctx:t,W:n,H:r,left:0,top:0,boundsW:n,boundsH:r,wt:hi(),mapMode:mi.TEXT,winOrgX:0,winOrgY:0,winExtX:1,winExtY:1,vpOrgX:0,vpOrgY:0,vpExtX:1,vpExtY:1,devPxPerMmX:0,devPxPerMmY:0,objects:new Map,curPen:null,curBrush:null,curFont:null,textColor:`#000000`,bkMode:1,textAlign:0,fillRule:`nonzero`,curX:0,curY:0,stack:[],drew:!1,inPath:!1},o=0;for(;o+8<=e.length;){let n=i.getUint32(o,!0),r=i.getUint32(o+4,!0);if(r<8||r&3)break;let s=o+r;if(s>e.length||n===J.EOF)break;let c=new _i(i,o+8,s);try{switch(n){case J.HEADER:{let e=i.getInt32(o+8,!0),t=i.getInt32(o+12,!0),n=i.getInt32(o+16,!0),r=i.getInt32(o+20,!0);if(a.left=e,a.top=t,a.boundsW=Math.max(1,n-e),a.boundsH=Math.max(1,r-t),s>=o+88){let e=i.getInt32(o+24,!0),t=i.getInt32(o+28,!0),n=i.getInt32(o+32,!0),r=i.getInt32(o+36,!0),s=i.getInt32(o+72,!0),c=i.getInt32(o+76,!0),l=i.getInt32(o+80,!0),u=i.getInt32(o+84,!0),d=n-e,f=r-t;if(d>0&&f>0&&s>0&&c>0&&l>0&&u>0){let n=s/(l*100),r=c/(u*100);a.left=e*n,a.top=t*r,a.boundsW=Math.max(1,d*n),a.boundsH=Math.max(1,f*r),a.devPxPerMmX=s/l,a.devPxPerMmY=c/u}}break}case J.SETWORLDTRANSFORM:a.wt=c.xform();break;case J.MODIFYWORLDTRANSFORM:{let e=c.xform(),t=c.u32();t===1?a.wt=hi():t===2?a.wt=gi(e,a.wt):t===3?a.wt=gi(a.wt,e):t===4&&(a.wt=e);break}case J.SETMAPMODE:Pi(a,c.u32());break;case J.SETWINDOWORGEX:a.winOrgX=c.i32(),a.winOrgY=c.i32();break;case J.SETWINDOWEXTEX:{let e=c.i32(),t=c.i32();e!==0&&(a.winExtX=e),t!==0&&(a.winExtY=t);break}case J.SETVIEWPORTORGEX:a.vpOrgX=c.i32(),a.vpOrgY=c.i32();break;case J.SETVIEWPORTEXTEX:{let e=c.i32(),t=c.i32();e!==0&&(a.vpExtX=e),t!==0&&(a.vpExtY=t);break}case J.SCALEWINDOWEXTEX:{let e=c.i32(),t=c.i32(),n=c.i32(),r=c.i32();t!==0&&(a.winExtX=a.winExtX*e/t),r!==0&&(a.winExtY=a.winExtY*n/r);break}case J.SCALEVIEWPORTEXTEX:{let e=c.i32(),t=c.i32(),n=c.i32(),r=c.i32();t!==0&&(a.vpExtX=a.vpExtX*e/t),r!==0&&(a.vpExtY=a.vpExtY*n/r);break}case J.SAVEDC:a.ctx.save(),a.stack.push({wt:{...a.wt},mapMode:a.mapMode,winOrgX:a.winOrgX,winOrgY:a.winOrgY,winExtX:a.winExtX,winExtY:a.winExtY,vpOrgX:a.vpOrgX,vpOrgY:a.vpOrgY,vpExtX:a.vpExtX,vpExtY:a.vpExtY,curPen:a.curPen,curBrush:a.curBrush,curFont:a.curFont,textColor:a.textColor,bkMode:a.bkMode,textAlign:a.textAlign,fillRule:a.fillRule,curX:a.curX,curY:a.curY});break;case J.RESTOREDC:{let e=c.i32(),t=Math.min(Math.abs(e)||1,a.stack.length),n;for(let e=0;e<t;e++)n=a.stack.pop(),a.ctx.restore();n&&(a.wt=n.wt,a.mapMode=n.mapMode,a.winOrgX=n.winOrgX,a.winOrgY=n.winOrgY,a.winExtX=n.winExtX,a.winExtY=n.winExtY,a.vpOrgX=n.vpOrgX,a.vpOrgY=n.vpOrgY,a.vpExtX=n.vpExtX,a.vpExtY=n.vpExtY,a.curPen=n.curPen,a.curBrush=n.curBrush,a.curFont=n.curFont,a.textColor=n.textColor,a.bkMode=n.bkMode,a.textAlign=n.textAlign,a.fillRule=n.fillRule,a.curX=n.curX,a.curY=n.curY);break}case J.BEGINPATH:a.ctx.beginPath(),a.inPath=!0;break;case J.CLOSEFIGURE:a.inPath&&a.ctx.closePath();break;case J.ENDPATH:a.inPath=!1;break;case J.SELECTCLIPPATH:try{a.ctx.clip(a.fillRule)}catch{}break;case J.SELECTOBJECT:{let e=c.u32();if(e&2147483648)Li(a,e>>>0);else{let t=a.objects.get(e);t?.kind===`pen`?a.curPen=t:t?.kind===`brush`?a.curBrush=t:t?.kind===`font`&&(a.curFont=t)}break}case J.DELETEOBJECT:{let e=c.u32(),t=a.objects.get(e);t&&(t===a.curPen&&(a.curPen=null),t===a.curBrush&&(a.curBrush=null),t===a.curFont&&(a.curFont=null),a.objects.delete(e));break}case J.CREATEPEN:{let[e,t]=qi(c);a.objects.set(e,t);break}case J.EXTCREATEPEN:{let[e,t]=Ji(c);a.objects.set(e,t);break}case J.CREATEBRUSHINDIRECT:{let[e,t]=Yi(c);a.objects.set(e,t);break}case J.CREATEMONOBRUSH:case J.CREATEDIBPATTERNBRUSHPT:{let[e,t]=Xi(c,i,o);a.objects.set(e,t);break}case J.EXTCREATEFONTINDIRECTW:{let[e,t]=Zi(c,i,o);a.objects.set(e,t);break}case J.POLYLINE16:Vi(a,c,zi);break;case J.POLYLINE:Vi(a,c,Bi);break;case J.POLYLINETO16:Hi(a,c,zi);break;case J.POLYLINETO:Hi(a,c,Bi);break;case J.POLYGON16:Ui(a,c,zi);break;case J.POLYGON:Ui(a,c,Bi);break;case J.POLYBEZIER16:Wi(a,c,zi,!1);break;case J.POLYBEZIER:Wi(a,c,Bi,!1);break;case J.POLYBEZIERTO16:Wi(a,c,zi,!0);break;case J.POLYBEZIERTO:Wi(a,c,Bi,!0);break;case J.POLYPOLYGON16:Gi(a,c,zi,!0);break;case J.POLYPOLYGON:Gi(a,c,Bi,!0);break;case J.POLYPOLYLINE16:Gi(a,c,zi,!1);break;case J.POLYPOLYLINE:Gi(a,c,Bi,!1);break;case J.MOVETOEX:a.curX=c.i32(),a.curY=c.i32();break;case J.LINETO:{let e=c.i32(),n=c.i32();if(a.curPen&&a.curPen.stroke!=null){let[r,i]=Di(a,a.curX,a.curY),[o,s]=Di(a,e,n);t.beginPath(),t.moveTo(r,i),t.lineTo(o,s),t.strokeStyle=a.curPen.stroke,t.lineWidth=Ni(a,a.curPen.width),t.stroke(),a.drew=!0}a.curX=e,a.curY=n;break}case J.RECTANGLE:Ki(a,c.i32(),c.i32(),c.i32(),c.i32());break;case J.ELLIPSE:{let e=c.i32(),n=c.i32(),r=c.i32(),i=c.i32(),[o,s]=[(e+r)/2,(n+i)/2],[l,u]=Di(a,o,s),[d]=Di(a,r,s),[,f]=Di(a,o,i),p=Math.abs(d-l),m=Math.abs(f-u);t.beginPath(),t.ellipse(l,u,p,m,0,0,Math.PI*2),a.curBrush&&a.curBrush.fill!=null&&(t.fillStyle=a.curBrush.fill,t.fill(a.fillRule),a.drew=!0),a.curPen&&a.curPen.stroke!=null&&(t.strokeStyle=a.curPen.stroke,t.lineWidth=Ni(a,a.curPen.width),t.stroke(),a.drew=!0);break}case J.SETPOLYFILLMODE:a.fillRule=c.u32()===1?`evenodd`:`nonzero`;break;case J.SETTEXTCOLOR:a.textColor=ba(c.u32());break;case J.SETTEXTALIGN:a.textAlign=c.u32();break;case J.SETBKMODE:a.bkMode=c.u32();break;case J.EXTTEXTOUTW:Qi(a,c,i,o);break;case J.BITBLT:ea(a,c,i,o);break;case J.STRETCHDIBITS:ta(a,c,i,o);break;default:break}}catch{}o=s}return a.drew}async function ra(e,t,n){if(!va(e)||t<=0||n<=0)return null;let r=et(t,n);if(!r)return null;let i=r.getContext(`2d`);return!i||(i.lineJoin=`round`,i.lineCap=`round`,!na(e,i,t,n))?null:createImageBitmap(r)}function ia(e,t){return e[t]<<8|e[t+1]}function aa(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function oa(e,t){return e[t]|e[t+1]<<8}function sa(e,t){return e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24|0}function ca(e){let t=e.length;return t>=24&&e[0]===137&&e[1]===80&&e[2]===78&&e[3]===71&&e[4]===13&&e[5]===10&&e[6]===26&&e[7]===10?e[12]===73&&e[13]===72&&e[14]===68&&e[15]===82?{width:aa(e,16),height:aa(e,20)}:null:t>=10&&e[0]===71&&e[1]===73&&e[2]===70&&e[3]===56&&(e[4]===55||e[4]===57)&&e[5]===97?{width:oa(e,6),height:oa(e,8)}:t>=26&&e[0]===66&&e[1]===77?la(e,14)===12?{width:oa(e,18),height:oa(e,20)}:{width:Math.abs(sa(e,18)),height:Math.abs(sa(e,22))}:t>=16&&e[0]===82&&e[1]===73&&e[2]===70&&e[3]===70&&e[8]===87&&e[9]===69&&e[10]===66&&e[11]===80?ua(e):t>=4&&e[0]===255&&e[1]===216?da(e):null}function la(e,t){return(e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24)>>>0}function ua(e){let t=e.length,n=e[12],r=e[13],i=e[14],a=e[15];if(n===86&&r===80&&i===56&&a===32)return t<30?null:{width:oa(e,26)&16383,height:oa(e,28)&16383};if(n===86&&r===80&&i===56&&a===76){if(t<25||e[20]!==47)return null;let n=la(e,21);return{width:(n&16383)+1,height:(n>>>14&16383)+1}}return n===86&&r===80&&i===56&&a===88?t<30?null:{width:(e[24]|e[25]<<8|e[26]<<16)+1,height:(e[27]|e[28]<<8|e[29]<<16)+1}:null}function da(e){let t=e.length,n=2;for(;n+1<t;){if(e[n]!==255){n+=1;continue}let r=e[n+1];if(r===255){n+=1;continue}if(r===216||r===1||r>=208&&r<=215){n+=2;continue}if(r===217||n+3>=t)return null;let i=ia(e,n+2);if(r>=192&&r<=207&&r!==196&&r!==200&&r!==204){if(n+8>=t)return null;let r=ia(e,n+5);return{width:ia(e,n+7),height:r}}if(i<2)return null;n+=2+i}return null}function fa(e){let{width:t,height:n}=e;return!Number.isFinite(t)||!Number.isFinite(n)||t<=0||n<=0||t>32767||n>32767?!0:t*n>oi}function pa(e){let t=e.close;typeof t==`function`&&t.call(e)}const ma={EOF:0,SETBKMODE:258,SETTEXTALIGN:302,SETTEXTCOLOR:521,SETPOLYFILLMODE:262,SETWINDOWORG:523,SETWINDOWEXT:524,SELECTOBJECT:301,DELETEOBJECT:496,TEXTOUT:1313,POLYGON:804,POLYLINE:805,POLYPOLYGON:1336,RECTANGLE:1051,CREATEPENINDIRECT:762,CREATEFONTINDIRECT:763,CREATEBRUSHINDIRECT:764,DIBBITBLT:2368,DIBSTRETCHBLT:2881,STRETCHDIBITS:3907},ha=2596720087;function ga(e,t){if(e.length<t+18)return!1;let n=e[t]|e[t+1]<<8,r=e[t+2]|e[t+3]<<8;return(n===1||n===2)&&r===9}function _a(e){return e.length<4?!1:(e[0]|e[1]<<8|e[2]<<16|e[3]<<24)>>>0===ha?!0:ga(e,0)}function va(e){if(e.length<44)return!1;let t=new DataView(e.buffer,e.byteOffset,e.byteLength);return t.getUint32(0,!0)===1&&t.getUint32(40,!0)===1179469088}function ya(e){return e===`image/wmf`||e===`image/emf`}function ba(e){let t=e&255,n=e>>>8&255,r=e>>>16&255,i=e=>e.toString(16).padStart(2,`0`);return`#${i(t)}${i(n)}${i(r)}`}function xa(e,t){for(let n=0;n<e.length;n++)if(e[n]==null){e[n]=t;return}e.push(t)}var Sa=class{p=0;constructor(e,t,n){this.b=e,this.end=n,this.p=t}get remaining(){return this.end-this.p}i16(){let e=this.u16();return e>=32768?e-65536:e}u16(){let e=this.b[this.p]|this.b[this.p+1]<<8;return this.p+=2,e}u8(){return this.b[this.p++]}u32(){let e=(this.b[this.p]|this.b[this.p+1]<<8|this.b[this.p+2]<<16|this.b[this.p+3]<<24)>>>0;return this.p+=4,e}bytes(e){let t=Math.min(this.p+Math.max(0,e),this.end),n=this.b.subarray(this.p,t);return this.p=t,n}skip(e){this.p=Math.min(this.p+Math.max(0,e),this.end)}};function Ca(e,t){return(t-e.orgX)*(e.W/e.extX)}function wa(e,t){return(t-e.orgY)*(e.H/e.extY)}function Ta(e,t){let n=t*Math.abs(e.W/e.extX);return n>=1?n:1}const Ea=.001;function Da(e,t,n){return Math.abs(e-t)<=Ea||Math.abs(e-n)<=Ea}function Oa(e,t,n){let r=[],i=n?t.length:t.length-1;for(let n=0;n<i;n++){let i=t[n],a=t[(n+1)%t.length],o=Math.abs(i[0]-a[0])<=Ea&&Da(i[0],0,e.W)&&Da(a[0],0,e.W),s=Math.abs(i[1]-a[1])<=Ea&&Da(i[1],0,e.H)&&Da(a[1],0,e.H);o||s||r.push([i,a])}return r}function ka(e,t,n){if(!e.curPen||e.curPen.stroke==null||t.length<2)return;let{ctx:r}=e;if(r.strokeStyle=e.curPen.stroke,r.lineWidth=Ta(e,e.curPen.width),!e.suppressBoundaryFrame){r.beginPath(),r.moveTo(t[0][0],t[0][1]);for(let e=1;e<t.length;e++)r.lineTo(t[e][0],t[e][1]);n&&r.closePath(),r.stroke(),e.drew=!0;return}let i=Oa(e,t,n);if(i.length===0)return;r.beginPath();let a=null;for(let[e,t]of i)(!a||a[0]!==e[0]||a[1]!==e[1])&&r.moveTo(e[0],e[1]),r.lineTo(t[0],t[1]),a=t;r.stroke(),e.drew=!0}function Aa(e,t,n){let r=[];for(let i=0;i<n&&!(t.remaining<4);i++){let n=t.i16(),i=t.i16();r.push([Ca(e,n),wa(e,i)])}return r}function ja(e,t){t.length<2||!e.curPen||e.curPen.stroke==null||ka(e,t,!1)}function Ma(e,t){if(t.length<2)return;let{ctx:n}=e;if(e.curBrush&&e.curBrush.fill!=null){n.beginPath(),n.moveTo(t[0][0],t[0][1]);for(let e=1;e<t.length;e++)n.lineTo(t[e][0],t[e][1]);n.closePath(),n.fillStyle=e.curBrush.fill,n.fill(e.fillRule),e.drew=!0}ka(e,t,!0)}function Na(e,t){let n=t.u16();if(n<=0||n>65536)return;let r=[];for(let e=0;e<n;e++){if(t.remaining<2)return;r.push(t.u16())}let{ctx:i}=e;i.beginPath();let a=!1;for(let n of r){if(n<2){for(let e=0;e<n&&t.remaining>=4;e++)t.i16(),t.i16();continue}let r=Aa(e,t,n);if(!(r.length<2)){i.moveTo(r[0][0],r[0][1]);for(let e=1;e<r.length;e++)i.lineTo(r[e][0],r[e][1]);i.closePath(),a=!0}}a&&(e.curBrush&&e.curBrush.fill!=null&&(i.fillStyle=e.curBrush.fill,i.fill(e.fillRule),e.drew=!0),e.curPen&&e.curPen.stroke!=null&&(i.strokeStyle=e.curPen.stroke,i.lineWidth=Ta(e,e.curPen.width),i.stroke(),e.drew=!0))}function Pa(e){let t=e.u16(),n=e.i16();e.i16();let r=e.u32();return{kind:`pen`,stroke:(t&255)==5?null:ba(r),width:Math.abs(n)}}function Fa(e){let t=e.u16(),n=e.u32();return e.u16(),{kind:`brush`,fill:t===1?null:ba(n)}}function Ia(e){let t=e.indexOf(0),n=t>=0?e.subarray(0,t):e;if(n.length===0)return``;try{return new TextDecoder(`shift_jis`).decode(n)}catch{return String.fromCharCode(...n)}}function La(e){let t=Math.abs(e.i16());e.i16(),e.i16(),e.i16();let n=e.i16(),r=e.u8()!==0;return e.u8(),e.u8(),e.u8(),e.u8(),e.u8(),e.u8(),e.u8(),{kind:`font`,height:t,weight:n,italic:r,face:Ia(e.bytes(Math.min(32,e.remaining)))}}function Ra(e,t,n,r){if(t.length===0)return;let i=e.curFont,a=i?.height||12,o=Math.abs(wa(e,e.orgY+a)-wa(e,e.orgY));if(!Number.isFinite(o)||o<1)return;let{ctx:s}=e;try{s.fillStyle=e.textColor;let a=i&&i.weight>=700?`bold `:``;s.font=`${i?.italic?`italic `:``}${a}${o}px ${i?.face||`sans-serif`}`;let c=e.textAlign&6;s.textAlign=c===2?`right`:c===6?`center`:`left`,s.textBaseline=(e.textAlign&24)==24?`alphabetic`:`top`,s.fillText(t,Ca(e,n),wa(e,r)),e.drew=!0}catch{}}function za(e,t,n,r,i=!1){if(!_a(e))return!1;let a=0;(e.length>=4?(e[0]|e[1]<<8|e[2]<<16|e[3]<<24)>>>0:0)===ha&&(a=22);let o=a+18;if(o>e.length)return!1;let s={ctx:t,W:n,H:r,orgX:0,orgY:0,extX:n||1,extY:r||1,haveExt:!1,objects:[],curPen:null,curBrush:null,curFont:null,textColor:`#000000`,textAlign:0,fillRule:`nonzero`,drew:!1,suppressBoundaryFrame:i},c=new DataView(e.buffer,e.byteOffset,e.byteLength);for(;o+6<=e.length;){let t=c.getUint32(o,!0),n=c.getUint16(o+4,!0);if(t<3)break;let r=t*2,i=o+r;if(i>e.length||n===ma.EOF)break;let a=o+6,l=new Sa(e,a,i);switch(n){case ma.SETWINDOWORG:s.orgY=l.i16(),s.orgX=l.i16();break;case ma.SETWINDOWEXT:{let e=l.i16(),t=l.i16();s.extY=e||1,s.extX=t||1,s.haveExt=!0;break}case ma.SETPOLYFILLMODE:s.fillRule=l.u16()===1?`evenodd`:`nonzero`;break;case ma.SETTEXTCOLOR:s.textColor=ba(l.u32());break;case ma.SETTEXTALIGN:s.textAlign=l.u16();break;case ma.CREATEPENINDIRECT:xa(s.objects,Pa(l));break;case ma.CREATEBRUSHINDIRECT:xa(s.objects,Fa(l));break;case ma.CREATEFONTINDIRECT:xa(s.objects,La(l));break;case ma.SELECTOBJECT:{let e=l.u16(),t=s.objects[e];t?.kind===`pen`?s.curPen=t:t?.kind===`brush`?s.curBrush=t:t?.kind===`font`&&(s.curFont=t);break}case ma.DELETEOBJECT:{let e=l.u16(),t=s.objects[e];t&&(t===s.curPen&&(s.curPen=null),t===s.curBrush&&(s.curBrush=null),t===s.curFont&&(s.curFont=null),s.objects[e]=null);break}case ma.POLYLINE:ja(s,Aa(s,l,l.i16()));break;case ma.POLYGON:Ma(s,Aa(s,l,l.i16()));break;case ma.POLYPOLYGON:Na(s,l);break;case ma.RECTANGLE:{let e=l.i16(),t=l.i16(),n=l.i16(),r=l.i16();Ma(s,[[Ca(s,r),wa(s,n)],[Ca(s,t),wa(s,n)],[Ca(s,t),wa(s,e)],[Ca(s,r),wa(s,e)]]);break}case ma.TEXTOUT:{let e=l.u16(),t=Ia(l.bytes(e));e%2!=0&&l.skip(1);let n=l.i16();Ra(s,t,l.i16(),n);break}case ma.STRETCHDIBITS:{l.u32(),l.i16(),l.i16(),l.i16(),l.i16(),l.u16();let e=l.i16(),t=l.i16(),n=l.i16(),r=l.i16(),o=a+22,u=di(c,o,i-o);if(u){let i=Ca(s,r),a=wa(s,n),o=Ca(s,r+t),c=wa(s,n+e);fi(s.ctx,u,i,a,o,c)&&(s.drew=!0)}break}case ma.DIBSTRETCHBLT:case ma.DIBBITBLT:case ma.SETBKMODE:break;default:break}o=i}return s.drew}function Ba(e,t){let n=e>0?e:300,r=t>0?t:300,i=e=>Math.max(1,Math.min(2e3,Math.round(e)));return{w:i(n*2),h:i(r*2)}}async function Va(e,t,n,r=!1){if(!_a(e)||t<=0||n<=0)return null;let i=et(t,n);if(!i)return null;let a=i.getContext(`2d`);return!a||(a.lineJoin=`round`,a.lineCap=`round`,!za(e,a,t,n,r))?null:createImageBitmap(i)}async function Ha(e,t={}){let{widthPt:n=0,heightPt:r=0,suppressBoundaryFrame:i=!1}=t,a=new Uint8Array(await e.slice(0,64*1024).arrayBuffer());if(_a(a)){let{w:t,h:a}=Ba(n,r);return Ua(await Va(new Uint8Array(await e.arrayBuffer()),t,a,i))}if(va(a)){let{w:t,h:i}=Ba(n,r);return Ua(await ra(new Uint8Array(await e.arrayBuffer()),t,i))}let o=ca(a);if(o&&fa(o))throw new ci(`image-pixels`,oi,o.width*o.height);return Ua(await createImageBitmap(e))}function Ua(e){if(!e)return null;let t=Number(e.width),n=Number(e.height);if(!fa({width:t,height:n}))return e;let r=t*n;throw pa(e),new ci(`image-pixels`,oi,Number.isSafeInteger(r)&&r>=0?r:2**53-1)}const Wa=new WeakMap;async function Ga(e,t){let n=Wa.get(e);n||(n={active:0,waiters:[]},Wa.set(e,n)),n.active>=2||n.waiters.length>0?await new Promise(e=>n.waiters.push(e)):n.active++;try{return await Promise.resolve(),await t()}finally{let t=n.waiters.shift();t?t():(n.active--,n.active===0&&Wa.delete(e))}}const Ka=new WeakMap;function qa(e){let t=Ka.get(e);return t||(t={entries:new Map,retainedBytes:0},Ka.set(e,t)),t}const Ja=new WeakMap,Ya=new WeakSet;function Xa(e){!e||Ya.has(e)||(Ya.add(e),pa(e))}function Za(e){Xa(e)}function Qa(e){let t=Ja.get(e);t||(t={count:0,deferred:[],activeBytes:0,activeBitmaps:new WeakSet},Ja.set(e,t));let n=t;n.count++;let r=!1;return()=>{if(!r&&(r=!0,n.count--,!(n.count>0))){for(let e of n.deferred)e.then(e=>Xa(e)).catch(()=>{});n.deferred=[],n.activeBytes=0,n.activeBitmaps=new WeakSet,Ja.delete(e)}}}function $a(e){if(!e)return 0;let t=Number(e.width),n=Number(e.height);return Number.isSafeInteger(t)&&t>0&&Number.isSafeInteger(n)&&n>0?t*n*4:0}function eo(e,t){if(!t)return;let n=Ja.get(e);if(!n||n.count===0||n.activeBitmaps.has(t))return;let r=n.activeBytes+$a(t);if(r>134217728)throw new ci(`active-decoded-bytes`,si,r);n.activeBitmaps.add(t),n.activeBytes=r}function to(e,t,n){let r=[...t.entries].find(([e])=>e!==n);if(!r)return!1;let[i,a]=r;return t.entries.delete(i),t.retainedBytes-=a.weight,no(e,a.ownedPromise),!0}function no(e,t){let n=Ja.get(e);if(n&&n.count>0){n.deferred.push(t);return}t.then(e=>Xa(e)).catch(()=>{})}function ro(e,t,n){let r=qa(t),i=r.entries,a=i.get(e);if(a)return i.delete(e),i.set(e,a),a.promise.then(e=>(eo(t,e),e));let o=Ga(t,n),s=o.then(({bitmap:e,owned:t})=>t?e:null),c=o.then(({bitmap:e,owned:n})=>{try{return eo(t,e),e}catch(t){throw n&&Xa(e),t}}),l={promise:c,ownedPromise:s,weight:0};for(o.then(({bitmap:n,owned:a})=>{if(i.get(e)===l){if(l.bitmap=n,!a){i.delete(e);return}for(l.weight=$a(n),r.retainedBytes+=l.weight;r.retainedBytes>si&&to(t,r,e););}}).catch(()=>{}),c.catch(()=>{i.get(e)===l&&(i.delete(e),r.retainedBytes-=l.weight,no(t,s))}),i.set(e,l);i.size>256&&to(t,r,e););return c}const io=`base`;`${io}`;function ao(e,t,n,r){return ro(`${e}:${t}`,n,r)}function oo(e,t,n,r){return ao(`derived:${e}`,t,n,r)}function so(e,t,n,r={}){let{widthPt:i=0,heightPt:a=0,suppressBoundaryFrame:o=!1}=r;return ao(io,e,n,async()=>({bitmap:await Ha(await n(e,t),{widthPt:i,heightPt:a,suppressBoundaryFrame:o}),owned:!0}))}function co(e){let t=Ka.get(e);if(t){for(let n of t.entries.values())no(e,n.ownedPromise);t.entries.clear(),t.retainedBytes=0,Ka.delete(e)}}const lo=new WeakMap;function uo(e){let t=lo.get(e);return t||(t={imgs:new Map},lo.set(e,t)),t}function fo(e,t){if(typeof Image>`u`)return so(e,`image/svg+xml`,t).then(t=>{if(!t)throw Error(`svg decode failed: ${e}`);return t});let n=uo(t),r=n.imgs.get(e);if(r)return n.imgs.delete(e),n.imgs.set(e,r),r.promise;let i={};if(i.promise=Ga(t,async()=>{if(n.imgs.get(e)!==i)throw Error(`SVG decode was superseded before it started`);let r=await t(e,`image/svg+xml`),a=URL.createObjectURL(r);try{let t=new Image;return await new Promise((n,r)=>{t.onload=()=>{typeof t.decode==`function`?t.decode().then(n).catch(n):n()},t.onerror=()=>r(Error(`svg load failed: ${e}`)),t.src=a}),t}finally{URL.revokeObjectURL(a)}}),i.promise.catch(()=>{n.imgs.get(e)===i&&n.imgs.delete(e)}),n.imgs.set(e,i),n.imgs.size>256){let e=n.imgs.keys().next().value;n.imgs.delete(e)}return i.promise}function po(e){let t=lo.get(e);t&&(t.imgs.clear(),lo.delete(e))}function mo(e){let t=e;return{w:t.naturalWidth||(typeof t.width==`number`?t.width:0)||0,h:t.naturalHeight||(typeof t.height==`number`?t.height:0)||0}}function ho(e,t){if(!t||!(t.l||t.t||t.r||t.b))return null;let{w:n,h:r}=mo(e);if(n<=0||r<=0)return null;let i=e=>Math.max(0,Math.min(1,e)),a=i(t.l)*n,o=i(t.t)*r;return{sx:a,sy:o,sw:Math.max(1,n-a-i(t.r)*n),sh:Math.max(1,r-o-i(t.b)*r)}}function go(e,t,n,r,i,a,o){let s=ho(t,n);s?e.drawImage(t,s.sx,s.sy,s.sw,s.sh,r,i,a,o):e.drawImage(t,r,i,a,o)}function _o(e,t,n,r){if(!t||!ya(e))return{widthPt:n,heightPt:r};let i=Math.max(.01,1-t.l-t.r),a=Math.max(.01,1-t.t-t.b);return{widthPt:n/i,heightPt:r/a}}function vo(e){return/^[0-9a-fA-F]{6}$/.test(e)?[parseInt(e.slice(0,2),16),parseInt(e.slice(2,4),16),parseInt(e.slice(4,6),16)]:null}function yo(e,t,n){return(.299*e+.587*t+.114*n)/255}function bo(e,t,n){let r=vo(t),i=vo(n);if(!r||!i)return e;let[a,o,s]=r,[c,l,u]=i,d=e.data;for(let e=0;e<d.length;e+=4){if(d[e+3]===0)continue;let t=yo(d[e],d[e+1],d[e+2]);d[e]=Math.round(a+(c-a)*t),d[e+1]=Math.round(o+(l-o)*t),d[e+2]=Math.round(s+(u-s)*t)}return e}const xo=(e,t)=>typeof OffscreenCanvas>`u`?null:new OffscreenCanvas(e,t);async function So(e,t,n){let{width:r,height:i}=n;if(r<=0||i<=0||typeof createImageBitmap>`u`)return e;let a=(n.offscreenFactory??xo)(r,i);if(!a)return e;let o=a.getContext(`2d`);if(!o)return e;o.drawImage(e,0,0);let s;try{s=o.getImageData(0,0,r,i)}catch{return e}return bo(s,t.clr1,t.clr2),o.putImageData(s,0,0),createImageBitmap(a)}function Co(e){return e.svgImagePath!=null&&e.srcRect==null}function wo(e){return typeof HTMLCanvasElement<`u`&&e instanceof HTMLCanvasElement}function To(e=1){return typeof window<`u`&&window.devicePixelRatio||e}function Eo(e,t,n){let r=Math.round(t*n)%2==1?.5:0,i=e*n;return(Math.round(i-r)+r)/n-e}const Do=32767;function Oo(e,t){let n=Number.isFinite(e)&&e>0?Math.max(1,Math.round(e)):1,r=Number.isFinite(t)&&t>0?Math.max(1,Math.round(t)):1,i=Math.min(1,Do/n,Do/r),a=n*r,o=a>16777216?Math.sqrt(16777216/a):1,s=Math.min(i,o);return s>=1?{width:n,height:r,scale:1,clamped:!1}:{width:Math.max(1,Math.floor(n*s)),height:Math.max(1,Math.floor(r*s)),scale:s,clamped:!0}}function ko(e,t){let n=Math.max(1,Math.round(e*t/3)),r=Math.max(1,Math.round(e*t/3));return{railDev:n,gapDev:r,spanDev:2*n+r}}function Ao(e){if(!e.startsWith(`data:`))return null;let t=e.indexOf(`,`);if(t===-1)return null;let n=atob(e.slice(t+1)),r=new Uint8Array(n.length);for(let e=0;e<n.length;e++)r[e]=n.charCodeAt(e);return r.buffer}var jo=class{state=`uninitialized`;generationValue=0;readiness;poisonListeners=new Set;constructor(e,t,n){this.initialize=e,this.reinitialize=t,this.normalizeFailure=n}get generation(){return this.generationValue}get poisoned(){return this.state===`poisoned`}onPoison(e){return this.poisonListeners.add(e),()=>this.poisonListeners.delete(e)}async ensureReady(){if(this.state!==`ready`){if(!this.readiness){let e=this.state===`uninitialized`?this.initialize:this.reinitialize;this.readiness=Promise.resolve().then(e).then(()=>{this.generationValue+=1,this.state=`ready`,this.readiness=void 0},e=>{throw this.readiness=void 0,e})}await this.readiness}}run(e){try{return e()}catch(e){let t=this.normalizeFailure(e);throw t?(this.poison(t),t):e}}tryRunReady(e){if(this.state!==`ready`)return{current:!1};let t=this.generationValue,n=this.run(e);return this.state!==`ready`||t!==this.generationValue?{current:!1}:{current:!0,generation:t,value:n}}poison(e){this.state=`poisoned`,this.readiness=void 0;for(let t of this.poisonListeners)t(e)}assertCurrent(e){if(this.state!==`ready`||e!==this.generationValue)throw Error(`WASM archive session belongs to a discarded runtime generation`)}},Mo=class e extends Error{code=`parser-crashed`;constructor(t){super(t),this.name=`WasmTrapError`,Object.setPrototypeOf(this,e.prototype)}};function No(e){let t=globalThis.WebAssembly?.RuntimeError;return t&&e instanceof t||e instanceof RangeError?!0:e instanceof Error?e.name===`RuntimeError`||e.name===`CompileError`||e.name===`LinkError`||e.name===`InternalError`||e.name===`OOMError`:!1}function Po(e){try{if((typeof e!=`object`||!e)&&typeof e!=`function`)return;let t=Reflect.get(e,`__destroy_into_raw`);typeof t==`function`&&Reflect.apply(t,e,[])}catch{}}function Fo(e,t){return e({module_or_path:t})}var Io=class{runtime;wasmInput=null;currentArchive=null;constructor(e,t={}){this.init=e,this.options=t,this.runtime=new jo(()=>this.invokeConfigured(this.init),()=>this.invokeConfigured(this.options.reinit??this.init),Lo),this.runtime.onPoison(()=>this.dropPoisonedArchive())}setWasmInput(e){this.wasmInput=e,this.runtime.ensureReady().catch(()=>void 0)}setWasmUrl(e){this.setWasmInput(e)}get archive(){return this.currentArchive}setArchive(e){this.freeArchive(),this.currentArchive=e}disposeArchive(){this.freeArchive()}get poisoned(){return this.runtime.poisoned}async ensureReady(){await this.runtime.ensureReady()}run(e){return this.runtime.run(e)}poison(){this.runtime.poison(new Mo(`WASM parser was recycled`))}invokeConfigured(e){return this.wasmInput===null?Promise.reject(Error(`WasmParserHost: setWasmInput was never called`)):Fo(e,this.wasmInput)}freeArchive(){this.currentArchive!==null&&this.options.freeArchive&&this.options.freeArchive(this.currentArchive),this.currentArchive=null}dropPoisonedArchive(){let e=this.currentArchive;this.currentArchive=null,Po(e)}};function Lo(e){return No(e)?new Mo(`WASM parser trapped and was recycled: ${e instanceof Error?e.message:String(e)}`):null}function Ro(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>0}function zo(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return Ro(t.requiredBytes)&&Ro(t.offeredBytes)&&t.requiredBytes>t.offeredBytes}var Bo=class e extends RangeError{code=`ooxml-insufficient-credit`;requiredBytes;offeredBytes;constructor(t){super(`Pull unit requires ${t.requiredBytes} bytes but credit is ${t.offeredBytes}`),this.name=`PullSessionInsufficientCreditError`,this.requiredBytes=t.requiredBytes,this.offeredBytes=t.offeredBytes,Object.setPrototypeOf(this,e.prototype)}};function Vo(e){if(e instanceof Bo)return e;let t=e instanceof Error?e.message:String(e);if(!t.startsWith(`OOXML_INSUFFICIENT_CREDIT:`))return;let n;try{n=JSON.parse(t.slice(26))}catch{return}if(!n||typeof n!=`object`||Array.isArray(n))return;let r=n;if(!(r.code!==`ooxml-insufficient-credit`||!zo(r)))return new Bo(r)}function Ho(e,t,n){let r=Vo(e);if(!(!r||r.offeredBytes!==t||r.requiredBytes>n))return r}function Uo(e,t,n){if(Wo(e))return e.offeredBytes===t&&e.requiredBytes<=n?e.requiredBytes:void 0}function Wo(e){return e instanceof Bo||!!e&&typeof e==`object`&&e.code===`ooxml-insufficient-credit`&&zo(e)}const Go=`OOXML_RESOURCE_LIMIT:`;function Ko(e){return typeof e==`number`&&Number.isSafeInteger(e)&&e>=0}function qo(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return Ko(t.archiveEntryCount)&&Ko(t.declaredInflatedBytes)&&(t.largestInflatedEntryBytes===void 0||Ko(t.largestInflatedEntryBytes))&&Ko(t.distinctInflatedBytes)&&Ko(t.operationInflatedBytes)}function Jo(e){let t;try{t=JSON.parse(new TextDecoder().decode(e))}catch{throw TypeError(`OOXML resource usage checkpoint is not valid JSON`)}if(!qo(t))throw TypeError(`OOXML resource usage checkpoint is invalid`);return t}function Yo(e){return e===`docx`||e===`xlsx`||e===`pptx`}function Xo(e){return e===`container`||e===`decompression`||e===`parsing`||e===`serialization`||e===`layout`||e===`rendering`||e===`worker`}function Zo(e,t){return typeof e==`string`&&e.length>0&&e.length<=t&&!/[\\u0000-\\u001f\\u007f]/u.test(e)}function Qo(e){return Zo(e,128)&&/^[a-z0-9][a-z0-9-]*$/u.test(e)}function $o(e){return!Zo(e,4096)||e.startsWith(`/`)||e.startsWith(`\\\\`)||e.includes(`\\\\`)||e.includes(`?`)||e.includes(`#`)||e.includes(`://`)||/^[a-z]:/iu.test(e)?!1:e.split(`/`).every(e=>e!==``&&e!==`.`&&e!==`..`)}const es=new Map([[`archive-entry:declared-inflated-bytes`,{stage:`container`,part:`required`}],[`archive-entry:actual-inflated-bytes`,{stage:`decompression`,part:`required`}],[`archive:entry-count`,{stage:`container`,part:`forbidden`}],[`archive:central-directory-bytes`,{stage:`container`,part:`forbidden`,configurable:!1}],[`archive:distinct-inflated-bytes`,{stage:`decompression`,part:`required`}],[`xml-event:bytes`,{stage:`parsing`,part:`optional`,configurable:!1}],[`xml-context:bytes`,{stage:`parsing`,part:`optional`,configurable:!1}],[`xml-tree:depth`,{stage:`parsing`,part:`optional`,configurable:!1}],[`worksheet-row:projected-bytes`,{stage:`parsing`,part:`optional`,configurable:!1}],[`worksheet-shell:projected-bytes`,{stage:`parsing`,part:`optional`,configurable:!1}]]),ts=new Set([...es.keys()].map(e=>e.slice(0,e.indexOf(`:`)))),ns=new Set([...es.keys()].map(e=>e.slice(e.indexOf(`:`)+1)));function rs(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return!Yo(t.format)||!Zo(t.operation,256)||!Qo(t.resource)||!Qo(t.metric)||!Ko(t.limit)||!Ko(t.observed)||typeof t.configurable!=`boolean`||!qo(t.usage)?!1:!(`part`in t)||$o(t.part)}function is(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;if(!Xo(t.stage)||!rs(t.violation))return!1;let n=t.violation,r=es.get(`${n.resource}:${n.metric}`);return r?t.stage!==r.stage||r.configurable===!1&&n.configurable!==!1?!1:r.part===`required`?n.part!==void 0:r.part===`forbidden`?n.part===void 0:!0:!(ts.has(n.resource)&&ns.has(n.metric))}function as(e){return{archiveEntryCount:e.archiveEntryCount,declaredInflatedBytes:e.declaredInflatedBytes,...e.largestInflatedEntryBytes===void 0?{}:{largestInflatedEntryBytes:e.largestInflatedEntryBytes},distinctInflatedBytes:e.distinctInflatedBytes,operationInflatedBytes:e.operationInflatedBytes}}function os(e){if(!is(e))return;let t=e.violation,n={stage:e.stage,violation:{format:t.format,operation:t.operation,resource:t.resource,metric:t.metric,...t.part===void 0?{}:{part:t.part},limit:t.limit,observed:t.observed,configurable:t.configurable,usage:as(t.usage)}};return is(n)?n:void 0}function ss(e){let t=e.violation;return`OOXML resource limit exceeded${t.part?` for ${t.part}`:``}: ${t.metric} ${t.observed} > ${t.limit}`}function cs(e){let t=e instanceof Error?e.message:String(e);if(!t.startsWith(Go))return;let n;try{n=JSON.parse(t.slice(21))}catch{return}if(!n||typeof n!=`object`)return;let r=n;if(!(r.code!==`ooxml-resource-limit`||!is(r.details)))return new w(ss(r.details),r.details)}function ls(e){if(e instanceof ci)return{message:e.message,errorName:e.name,code:e.code,decodedImage:{metric:e.metric,limit:e.limit,observed:e.observed}};let t=Vo(e);if(t)return{message:t.message,errorName:t.name,code:t.code,insufficientCredit:{requiredBytes:t.requiredBytes,offeredBytes:t.offeredBytes}};let n=e instanceof C||e instanceof w?e:cs(e);if(n instanceof w){let e=os(n.details);return e?{message:typeof n.message==`string`?n.message:ss(e),errorName:`OoxmlResourceLimitError`,code:`ooxml-resource-limit`,resourceLimit:e}:{message:`Invalid OOXML resource-limit error payload`,errorName:`Error`}}if(n instanceof C)return{message:typeof n.message==`string`?n.message:String(n.message),errorName:Zo(n.name,128)?n.name:`OoxmlError`,...Qo(n.code)?{code:n.code}:{}};let r=e instanceof Error?e.message:String(e);if(typeof r==`string`&&r.startsWith(Go))return{message:`Invalid OOXML resource-limit payload`,errorName:`Error`};let i=e instanceof Error?e:Error(r),a=i;return{message:typeof i.message==`string`?i.message:String(i.message),errorName:Zo(i.name,128)?i.name:`Error`,...typeof a.code==`string`?{code:a.code}:{}}}function us(e){try{return ls(e)}catch{return{message:`Worker operation failed with an unreadable error`,errorName:`Error`}}}const ds=new Set([`encrypted`,`invalid-password`,`unsupported-encryption`,`legacy-binary-format`,`not-ooxml`]);function fs(e){if(e.code===`ooxml-decoded-image-limit`&&e.decodedImage&&(e.decodedImage.metric===`image-pixels`||e.decodedImage.metric===`active-decoded-bytes`)&&Ko(e.decodedImage.limit)&&Ko(e.decodedImage.observed)&&e.decodedImage.observed>e.decodedImage.limit)return new ci(e.decodedImage.metric,e.decodedImage.limit,e.decodedImage.observed);if(e.code===`ooxml-insufficient-credit`&&zo(e.insufficientCredit))return new Bo(e.insufficientCredit);if(e.code===`ooxml-resource-limit`&&is(e.resourceLimit))return new w(e.message,e.resourceLimit);if(e.code&&ds.has(e.code))return new C(e.code,e.message);let t=e.errorName===`TypeError`?TypeError(e.message):e.errorName===`RangeError`?RangeError(e.message):Error(e.message);return e.errorName&&(t.name=e.errorName),e.code!==void 0&&Object.assign(t,{code:e.code}),t}function ps(e){return e.byteOffset===0&&e.byteLength===e.buffer.byteLength&&e.buffer instanceof ArrayBuffer?e.buffer:e.slice().buffer}Object.freeze({maxArchiveEntryBytes:134217728,maxTotalInflatedBytes:268435456,maxArchiveEntries:4096});function ms(e){return[e.maxArchiveEntryBytes===null?0n:BigInt(e.maxArchiveEntryBytes),e.maxTotalInflatedBytes===null?0n:BigInt(e.maxTotalInflatedBytes),e.maxArchiveEntries===null?0n:BigInt(e.maxArchiveEntries)]}const hs=`ooxml-pull-v1`;function gs(e,t){if(!Number.isSafeInteger(e)||e<=0)throw RangeError(`${t} must be a positive safe integer`)}function _s(e){if(!(typeof e==`string`&&e.length>0||typeof e==`number`&&Number.isSafeInteger(e)&&e>0))throw RangeError(`session id must be a non-empty string or positive safe integer`)}var vs=class{bridge;options;sequence=0;pulling=!1;outstanding=!1;ending=!1;completed=!1;lifecyclePromise;usage;orphanedRequestIds=new Set;transferDisposers=new Set;constructor(e,t){_s(t.sessionId),gs(t.operationId,`operation id`),gs(t.generation,`generation`),gs(t.maxByteCredit,`max byte credit`),t.cancelGraceMs!==void 0&&gs(t.cancelGraceMs,`cancel grace`),this.bridge=e,this.options=t}async pull(e,t){if(this.validateCredit(e),this.ending||this.completed)throw Error(`pull session is closed`);if(this.pulling)throw Error(`a pull request is already in flight`);if(this.outstanding)throw Error(`acknowledge the current chunk before the next pull`);this.pulling=!0;let n=this.sequence;try{let r=await this.request(t=>({protocol:hs,kind:`pull`,...this.identity(),requestId:t,sequence:n,byteCredit:e}),t);if(this.validateResponseIdentity(r),r.usage&&(this.usage=r.usage),r.kind===`error`)throw fs(r.error);if(r.kind!==`chunk`)throw Error(`expected chunk response, received ${r.kind}`);if(this.ending)throw this.disposePayload(r.payload),Error(`pull session is closed`);try{this.validateChunk(r,n,e)}catch(e){throw this.disposePayload(r.payload),e}return this.outstanding=!0,this.makeChunk(r)}catch(e){throw!Wo(e)&&!this.ending&&!this.completed&&this.cancel(`protocol-error`).catch(()=>void 0),e}finally{this.pulling=!1}}cancel(e=`closed`,t){return this.lifecyclePromise?this.lifecyclePromise:(this.ending=!0,this.disposeAllTransferred(),this.lifecyclePromise=this.lifecycleControl(this.control(`cancel`,t,t=>({protocol:hs,kind:`cancel`,...this.identity(),requestId:t,reason:e}))),this.lifecyclePromise)}close(e){return this.lifecyclePromise?this.lifecyclePromise:(this.ending=!0,this.disposeAllTransferred(),this.lifecyclePromise=this.lifecycleControl(this.control(`close`,e,e=>({protocol:hs,kind:`close`,...this.identity(),requestId:e}))),this.lifecyclePromise)}get usageCheckpoint(){return this.usage}makeChunk(e){let t=!1,n,r,i=()=>{t||(t=!0,this.transferDisposers.delete(i),this.disposePayload(e.payload))};return this.transferDisposers.add(i),{done:e.done,sequence:e.sequence,byteLength:e.byteLength,payload:e.payload,leaseId:e.leaseId,usage:e.usage,disposeTransferred:i,ack:t=>n||(this.ending?Promise.resolve():(n=this.control(`ack`,t,t=>({protocol:hs,kind:`ack`,...this.identity(),requestId:t,sequence:e.sequence})).then(()=>{this.outstanding=!1,this.sequence++,e.done&&(this.completed=!0)}).catch(e=>{throw this.ending||this.cancel(`request-error`).catch(()=>void 0),e}),n)),release:t=>r||(e.leaseId===void 0||this.ending?Promise.resolve():(r=this.control(`release`,t,t=>({protocol:hs,kind:`release`,...this.identity(),requestId:t,leaseId:e.leaseId})).catch(e=>{throw this.ending||this.cancel(`request-error`).catch(()=>void 0),e}),r))}}async control(e,t,n){let r=await this.request(n,t,e!==`cancel`&&e!==`close`);if(this.validateResponseIdentity(r),r.usage&&(this.usage=r.usage),r.kind===`error`){if(r.error.code===`ooxml-stale-lifecycle`&&(e===`cancel`||e===`close`)){this.forgetLifecycleOrphans();return}throw fs(r.error)}if(r.kind!==`accepted`||r.command!==e)throw Error(`expected ${e} acceptance`);(e===`cancel`||e===`close`)&&this.forgetLifecycleOrphans()}request(e,t,n=!0){return this.bridge.request(e,void 0,{timeoutMs:n?t?.timeoutMs??this.options.timeoutMs:!1,signal:t?.signal,onOrphanedResponse:e=>{e.kind===`chunk`&&this.disposePayload(e.payload)},onCancel:(e,n)=>{this.orphanedRequestIds.add(e);try{t?.onCancel?.(e,n)}finally{!this.ending&&!this.completed&&this.cancel(n).catch(()=>void 0)}}})}identity(){return{sessionId:this.options.sessionId,operationId:this.options.operationId,generation:this.options.generation}}validateResponseIdentity(e){if(e.protocol!==`ooxml-pull-v1`||e.sessionId!==this.options.sessionId||e.operationId!==this.options.operationId||e.generation!==this.options.generation)throw e.kind===`chunk`&&this.disposePayload(e.payload),Error(`stale or mismatched pull session response`)}validateCredit(e){if(gs(e,`byte credit`),e>this.options.maxByteCredit)throw RangeError(`byte credit exceeds session maximum ${this.options.maxByteCredit}`)}validateChunk(e,t,n){if(e.sequence!==t)throw Error(`pull response sequence mismatch`);if(!Number.isSafeInteger(e.byteLength)||e.byteLength<0)throw RangeError(`chunk byte length must be a non-negative safe integer`);if(e.byteLength>n)throw RangeError(`chunk exceeds byte credit`);e.leaseId!==void 0&&gs(e.leaseId,`lease id`)}disposeAllTransferred(){for(let e of[...this.transferDisposers])e()}lifecycleControl(e){let t=this.options.cancelGraceMs??1e3,n,r=new Promise((e,r)=>{n=setTimeout(()=>{this.bridge.terminate(),r(Error(`worker did not accept lifecycle command within ${t}ms`))},t)});return Promise.race([e,r]).catch(e=>{throw this.bridge.terminate(),e}).finally(()=>{n!==void 0&&clearTimeout(n)})}forgetLifecycleOrphans(){this.bridge.forgetOrphaned(this.orphanedRequestIds),this.orphanedRequestIds.clear()}disposePayload(e){try{this.options.disposeTransferred?.(e)}catch{}}},ys=class{owner;queue=Promise.resolve();leases=new Map;retainedBytes=0;retainedCount=0;maxRetainedBytes;maxRetainedCount;cleanups=new Set;pendingFatalCleanups=[];poisonRunning=!1;fatal;constructor(e){this.maxRetainedBytes=e?.maxRetainedBytes??64*1024*1024,this.maxRetainedCount=e?.maxRetainedCount??256,gs(this.maxRetainedBytes,`max retained lease bytes`),gs(this.maxRetainedCount,`max retained lease count`)}enqueue(e){let t=this.queue.then(e,e);return this.queue=t.then(()=>void 0,()=>void 0),t}acquire(e){return this.owner===void 0?(this.owner=e,!0):this.owner===e}release(e){this.owner===e&&(this.owner=void 0)}retainLease(e,t,n){if(!Number.isSafeInteger(n)||n<0)throw RangeError(`retained lease bytes are invalid`);let r=this.leases.get(e)??new Map;if(r.has(t))throw Error(`driver returned a duplicate lease id`);if(this.retainedCount+1>this.maxRetainedCount)throw RangeError(`retained lease count exceeds limit`);if(this.retainedBytes+n>this.maxRetainedBytes)throw RangeError(`retained lease bytes exceed limit`);r.set(t,n),this.leases.set(e,r),this.retainedCount++,this.retainedBytes+=n}releaseLease(e,t){let n=this.leases.get(e),r=n?.get(t);r!==void 0&&(n?.delete(t),n?.size===0&&this.leases.delete(e),this.retainedCount--,this.retainedBytes-=r)}registerCleanup(e){return this.fatal?(this.poisonRunning?this.pendingFatalCleanups.push(e):this.enqueue(e).catch(()=>void 0),()=>void 0):(this.cleanups.add(e),()=>this.cleanups.delete(e))}get fatalError(){return this.fatal}get registeredHostCount(){return this.cleanups.size}async poison(e){if(this.fatal??=e,this.poisonRunning)return this.fatal;this.poisonRunning=!0,this.pendingFatalCleanups.push(...this.cleanups);try{let e;for(;(e=this.pendingFatalCleanups.shift())!==void 0;)await e().catch(()=>void 0)}finally{this.poisonRunning=!1}return this.fatal}},bs=class{options;coordinator;coordinatorOwner=Symbol(`pull-session-host`);unregisterCleanup;sequence=0;unacked;leases=new Map;activeDriverLeases=new Set;nextWireLeaseId;cancelRequested=!1;cancelComplete=!1;closeRequested=!1;closeComplete=!1;driverCancelComplete=!1;driverCloseComplete=!1;completed=!1;constructor(e){_s(e.sessionId),gs(e.operationId,`operation id`),gs(e.generation,`generation`),gs(e.maxByteCredit,`max byte credit`),e.wireLeaseIdStart!==void 0&&gs(e.wireLeaseIdStart,`wire lease id start`),this.options=e,this.coordinator=e.coordinator,this.nextWireLeaseId=e.wireLeaseIdStart??1,this.unregisterCleanup=this.coordinator.registerCleanup(()=>this.forceFatalCleanup())}dispatch(e,t){return this.coordinator.enqueue(async()=>{let n=await this.execute(e);try{t(n.response,n.transfer)}catch(e){throw await this.rollbackFailedPost(n),e}})}async rollbackFailedPost(e){let t=e.response;if(t.kind===`chunk`){let n=t.leaseId===void 0?void 0:this.leases.get(t.leaseId);try{await this.options.driver.disposeInvalidChunk?.({payload:t.payload,byteLength:t.byteLength,done:t.done,leaseId:n?.driverLeaseId,retainedBytes:n?.retainedBytes,transfer:e.transfer})}catch{}}this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);for(let[e,t]of[...this.leases])try{await this.options.driver.releaseLease?.(t.driverLeaseId)}catch{}finally{this.leases.delete(e),this.activeDriverLeases.delete(t.driverLeaseId),this.coordinator.releaseLease(this.coordinatorOwner,e)}if(this.cancelRequested=!0,!this.driverCancelComplete)try{await this.options.driver.cancel?.(),this.driverCancelComplete=!0}catch{}this.unregisterCleanup()}async execute(e){try{if(this.isStaleLifecycle(e)){let t=e.kind===`cancel`?`cancel`:`close`;return this.sameOperationIdentity(e)?{response:this.accepted(e,t,!0)}:{response:this.errorResponse(e,{message:`stale lifecycle targets another session or operation`,errorName:`PullSessionProtocolError`,code:`ooxml-stale-lifecycle`})}}this.validateCommandIdentity(e);let t=this.coordinator.fatalError;if(t)return e.kind===`pull`?{response:this.errorResponse(e,t)}:(e.kind===`cancel`?await this.cancel():e.kind===`close`?await this.close():e.kind===`release`&&await this.release(e.leaseId),{response:this.accepted(e,e.kind)});switch(e.kind){case`pull`:return await this.pull(e);case`ack`:return await this.ack(e.sequence),{response:this.accepted(e,`ack`)};case`release`:return await this.release(e.leaseId),{response:this.accepted(e,`release`)};case`cancel`:return await this.cancel(),{response:this.accepted(e,`cancel`)};case`close`:return await this.close(),{response:this.accepted(e,`close`)}}}catch(t){let n=us(t);return n.code===`ooxml-resource-limit`&&(n=await this.coordinator.poison(n)),{response:this.errorResponse(e,n)}}}async pull(e){if(this.closeRequested||this.cancelRequested||this.completed)throw Error(`pull session is closed`);if(this.unacked)throw Error(`previous chunk is not acknowledged`);if(!Number.isSafeInteger(e.sequence)||e.sequence<0||e.sequence!==this.sequence)throw Error(`pull command sequence mismatch`);if(this.validateHostCredit(e.byteCredit),!this.coordinator.acquire(this.coordinatorOwner))throw Error(`another operation has an unacknowledged package chunk`);let t;try{t=await this.options.driver.pull(e.byteCredit)}catch(e){throw this.coordinator.release(this.coordinatorOwner),e}let n=!1,r=!1,i,a;try{let o=this.options.driver.measureChunk(t),s=this.arrayBufferTransferBytes(t.transfer);if(o<s)throw RangeError(`measured chunk bytes are below ArrayBuffer transfer bytes`);if(a=Math.max(o,s),t.leaseId!==void 0){if(gs(t.leaseId,`lease id`),t.retainedBytes===void 0)throw Error(`retained lease bytes are required`);if(this.activeDriverLeases.has(t.leaseId))throw r=!0,Error(`driver returned an active duplicate lease id`);i=this.allocateWireLeaseId(),this.coordinator.retainLease(this.coordinatorOwner,i,t.retainedBytes),this.leases.set(i,{driverLeaseId:t.leaseId,retainedBytes:t.retainedBytes}),this.activeDriverLeases.add(t.leaseId),n=!0}else if(t.retainedBytes!==void 0)throw Error(`retained lease bytes require a lease id`);if(!Number.isSafeInteger(a)||a<0)throw RangeError(`host chunk byte length must be a non-negative safe integer`);if(a>e.byteCredit)throw RangeError(`host chunk exceeds byte credit`)}catch(e){let a;try{await this.options.driver.disposeInvalidChunk?.(t)}catch(e){a=e}if(n&&i!==void 0)try{await this.release(i)}catch(e){a??=e}else if(t.leaseId!==void 0&&!r)try{await this.options.driver.releaseLease?.(t.leaseId)}catch(e){a??=e}if(r)try{await this.cancel()}catch(e){a??=e}throw this.coordinator.release(this.coordinatorOwner),a||e}return this.unacked={sequence:this.sequence,done:t.done},{response:{kind:`chunk`,protocol:hs,...this.identity(),requestId:e.requestId,sequence:this.sequence,byteLength:a,done:t.done,payload:t.payload,leaseId:i,usage:this.resourceUsage()},transfer:t.transfer}}async ack(e){if(!Number.isSafeInteger(e)||e<0)throw RangeError(`invalid ack sequence`);if(e<this.sequence)return;if(!this.unacked||e!==this.sequence)throw Error(`ack sequence mismatch`);let t=this.unacked.done;await this.options.driver.acknowledge?.(e),this.unacked=void 0,this.coordinator.release(this.coordinatorOwner),this.sequence++,t&&(this.completed=!0,this.maybeUnregisterCompleted())}async release(e){gs(e,`wire lease id`);let t=this.leases.get(e);t&&(await this.options.driver.releaseLease?.(t.driverLeaseId),this.leases.delete(e),this.activeDriverLeases.delete(t.driverLeaseId),this.coordinator.releaseLease(this.coordinatorOwner,e),this.maybeUnregisterCompleted())}async cancel(){if(this.cancelComplete)return;this.cancelRequested=!0,this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);let e;try{await this.releaseAllLeases()}catch(t){e=t}if(!this.driverCancelComplete)try{await this.options.driver.cancel?.(),this.driverCancelComplete=!0}catch(t){e??=t}if(e)throw e;this.cancelComplete=!0,this.unregisterCleanup()}async close(){if(this.closeComplete)return;this.closeRequested=!0,this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);let e;try{await this.releaseAllLeases()}catch(t){e=t}if(!this.driverCloseComplete)try{await this.options.driver.close?.(),this.driverCloseComplete=!0}catch(t){e??=t}if(e)throw e;this.closeComplete=!0,this.unregisterCleanup()}async releaseAllLeases(){let e;for(let t of[...this.leases.keys()])try{await this.release(t)}catch(t){e??=t}if(e)throw e}validateCommandIdentity(e){if(e.protocol!==`ooxml-pull-v1`||e.sessionId!==this.options.sessionId||e.operationId!==this.options.operationId||e.generation!==this.options.generation||!Number.isSafeInteger(e.requestId)||e.requestId<=0)throw Error(`stale or mismatched pull session command`)}validateHostCredit(e){if(gs(e,`byte credit`),e>this.options.maxByteCredit)throw RangeError(`byte credit exceeds host maximum`)}accepted(e,t,n=!1){return{kind:`accepted`,protocol:hs,...n?{sessionId:e.sessionId,operationId:e.operationId,generation:e.generation}:this.identity(),requestId:e.requestId,command:t,usage:this.resourceUsage()}}identity(){return{sessionId:this.options.sessionId,operationId:this.options.operationId,generation:this.options.generation}}isStaleLifecycle(e){return(e.kind===`cancel`||e.kind===`close`)&&e.protocol===`ooxml-pull-v1`&&Number.isSafeInteger(e.requestId)&&e.requestId>0&&Number.isSafeInteger(e.generation)&&e.generation>0&&e.generation<this.options.generation}sameOperationIdentity(e){return e.sessionId===this.options.sessionId&&e.operationId===this.options.operationId}errorResponse(e,t){return{kind:`error`,protocol:hs,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:t,usage:this.errorResourceUsage()}}async forceFatalCleanup(){this.cancelRequested=!0,this.unacked=void 0,this.coordinator.release(this.coordinatorOwner);let e;for(let t of[...this.leases.keys()])try{await this.release(t)}catch(t){e??=t}if(!this.driverCancelComplete)try{await this.options.driver.cancel?.(),this.driverCancelComplete=!0}catch(t){e??=t}if(e)throw e;this.unregisterCleanup()}allocateWireLeaseId(){if(!Number.isSafeInteger(this.nextWireLeaseId)||this.nextWireLeaseId<=0)throw RangeError(`wire lease id space exhausted`);return this.nextWireLeaseId++}arrayBufferTransferBytes(e){let t=0;for(let n of e??[])if(n instanceof ArrayBuffer&&(t+=n.byteLength,!Number.isSafeInteger(t)))throw RangeError(`ArrayBuffer transfer bytes overflow`);return t}maybeUnregisterCompleted(){this.completed&&this.leases.size===0&&this.unregisterCleanup()}resourceUsage(){return this.options.driver.resourceUsage?.()}errorResourceUsage(){try{return this.resourceUsage()}catch{return}}};const xs=[`L`,`R`,`AL`,`EN`,`ES`,`ET`,`AN`,`CS`,`NSM`,`BN`,`B`,`S`,`WS`,`ON`,`LRE`,`LRO`,`RLE`,`RLO`,`PDF`,`LRI`,`RLI`,`FSI`,`PDI`],Ss=[0,9,10,11,12,13,14,28,31,32,33,35,38,43,44,45,46,48,58,59,65,91,97,123,127,133,134,160,161,162,166,170,171,173,174,176,178,180,181,182,185,186,187,192,215,216,247,248,697,699,706,720,722,736,741,750,751,768,880,884,886,894,895,900,902,903,904,1014,1015,1155,1162,1418,1419,1421,1423,1424,1425,1470,1471,1472,1473,1475,1476,1478,1479,1480,1536,1542,1544,1545,1547,1548,1549,1550,1552,1563,1611,1632,1642,1643,1645,1648,1649,1750,1757,1758,1759,1765,1767,1769,1770,1774,1776,1786,1809,1810,1840,1867,1958,1969,1984,2027,2036,2038,2042,2045,2046,2070,2074,2075,2084,2085,2088,2089,2094,2137,2140,2144,2192,2194,2199,2208,2250,2274,2275,2307,2362,2363,2364,2365,2369,2377,2381,2382,2385,2392,2402,2404,2433,2434,2492,2493,2497,2501,2509,2510,2530,2532,2546,2548,2555,2556,2558,2559,2561,2563,2620,2621,2625,2627,2631,2633,2635,2638,2641,2642,2672,2674,2677,2678,2689,2691,2748,2749,2753,2758,2759,2761,2765,2766,2786,2788,2801,2802,2810,2816,2817,2818,2876,2877,2879,2880,2881,2885,2893,2894,2901,2903,2914,2916,2946,2947,3008,3009,3021,3022,3059,3065,3066,3067,3072,3073,3076,3077,3132,3133,3134,3137,3142,3145,3146,3150,3157,3159,3170,3172,3192,3199,3201,3202,3260,3261,3276,3278,3298,3300,3328,3330,3387,3389,3393,3397,3405,3406,3426,3428,3457,3458,3530,3531,3538,3541,3542,3543,3633,3634,3636,3643,3647,3648,3655,3663,3761,3762,3764,3773,3784,3791,3864,3866,3893,3894,3895,3896,3897,3898,3902,3953,3967,3968,3973,3974,3976,3981,3992,3993,4029,4038,4039,4141,4145,4146,4152,4153,4155,4157,4159,4184,4186,4190,4193,4209,4213,4226,4227,4229,4231,4237,4238,4253,4254,4957,4960,5008,5018,5120,5121,5760,5761,5787,5789,5906,5909,5938,5940,5970,5972,6002,6004,6068,6070,6071,6078,6086,6087,6089,6100,6107,6108,6109,6110,6128,6138,6144,6155,6158,6159,6160,6277,6279,6313,6314,6432,6435,6439,6441,6450,6451,6457,6460,6464,6465,6468,6470,6622,6656,6679,6681,6683,6684,6742,6743,6744,6751,6752,6753,6754,6755,6757,6765,6771,6781,6783,6784,6832,6878,6880,6892,6912,6916,6964,6965,6966,6971,6972,6973,6978,6979,7019,7028,7040,7042,7074,7078,7080,7082,7083,7086,7142,7143,7144,7146,7149,7150,7151,7154,7212,7220,7222,7224,7376,7379,7380,7393,7394,7401,7405,7406,7412,7413,7416,7418,7616,7680,8125,8126,8127,8130,8141,8144,8157,8160,8173,8176,8189,8191,8192,8203,8206,8207,8208,8232,8233,8234,8235,8236,8237,8238,8239,8240,8245,8260,8261,8287,8288,8294,8295,8296,8297,8298,8304,8305,8308,8314,8316,8319,8320,8330,8332,8335,8352,8400,8433,8448,8450,8451,8455,8456,8458,8468,8469,8470,8473,8478,8484,8485,8486,8487,8488,8489,8490,8494,8495,8506,8508,8512,8517,8522,8526,8528,8544,8585,8588,8592,8722,8723,8724,9014,9083,9109,9110,9258,9280,9291,9312,9352,9372,9450,9900,9901,10240,10496,11124,11126,11264,11493,11499,11503,11506,11513,11520,11647,11648,11744,11776,11870,11904,11930,11931,12020,12032,12246,12272,12288,12289,12293,12296,12321,12330,12334,12336,12337,12342,12344,12349,12352,12441,12443,12445,12448,12449,12539,12540,12736,12774,12783,12784,12829,12831,12880,12896,12924,12927,12977,12992,13004,13008,13175,13179,13278,13280,13311,13312,19904,19968,42128,42183,42509,42512,42607,42611,42612,42622,42624,42654,42656,42736,42738,42752,42786,42888,42889,43010,43011,43014,43015,43019,43020,43045,43047,43048,43052,43053,43064,43066,43124,43128,43204,43206,43232,43250,43263,43264,43302,43310,43335,43346,43392,43395,43443,43444,43446,43450,43452,43454,43493,43494,43561,43567,43569,43571,43573,43575,43587,43588,43596,43597,43644,43645,43696,43697,43698,43701,43703,43705,43710,43712,43713,43714,43756,43758,43766,43767,43882,43884,44005,44006,44008,44009,44013,44014,64285,64286,64287,64297,64298,64336,64451,64467,64830,64848,64912,64914,64968,64976,65008,65021,65024,65040,65050,65056,65072,65104,65105,65106,65107,65108,65109,65110,65119,65120,65122,65124,65127,65128,65129,65131,65132,65136,65279,65280,65281,65283,65286,65291,65292,65293,65294,65296,65306,65307,65313,65339,65345,65371,65382,65504,65506,65509,65511,65512,65519,65520,65529,65534,65536,65793,65794,65856,65933,65936,65949,65952,65953,66045,66046,66272,66273,66300,66422,66427,67584,67871,67872,68097,68100,68101,68103,68108,68112,68152,68155,68159,68160,68325,68327,68409,68416,68864,68900,68904,68912,68922,68928,68938,68969,68974,68975,69216,69247,69291,69293,69312,69328,69337,69370,69376,69424,69446,69457,69488,69506,69510,69632,69633,69634,69688,69703,69714,69734,69744,69745,69747,69749,69759,69762,69811,69815,69817,69819,69826,69827,69888,69891,69927,69932,69933,69941,70003,70004,70016,70018,70070,70079,70089,70093,70095,70096,70191,70194,70196,70197,70198,70200,70206,70207,70209,70210,70367,70368,70371,70379,70400,70402,70459,70461,70464,70465,70502,70509,70512,70517,70587,70593,70606,70607,70608,70609,70610,70611,70625,70627,70712,70720,70722,70725,70726,70727,70750,70751,70835,70841,70842,70843,70847,70849,70850,70852,71090,71094,71100,71102,71103,71105,71132,71134,71219,71227,71229,71230,71231,71233,71264,71277,71339,71340,71341,71342,71344,71350,71351,71352,71453,71454,71455,71456,71458,71462,71463,71468,71727,71736,71737,71739,71995,71997,71998,71999,72003,72004,72148,72152,72154,72156,72160,72161,72193,72199,72201,72203,72243,72249,72251,72255,72263,72264,72273,72279,72281,72284,72330,72343,72344,72346,72544,72545,72546,72549,72550,72551,72752,72759,72760,72766,72850,72872,72874,72881,72882,72884,72885,72887,73009,73015,73018,73019,73020,73022,73023,73030,73031,73032,73104,73106,73109,73110,73111,73112,73459,73461,73472,73474,73526,73531,73536,73537,73538,73539,73562,73563,73685,73693,73697,73714,78912,78913,78919,78934,90398,90410,90413,90416,92912,92917,92976,92983,94031,94032,94095,94099,94178,94179,94180,94181,113821,113823,113824,113828,117760,117974,118e3,118010,118013,118016,118452,118458,118481,118496,118513,118528,118574,118576,118599,119143,119146,119155,119163,119171,119173,119180,119210,119214,119273,119275,119296,119362,119365,119366,119552,119639,120513,120514,120539,120540,120571,120572,120597,120598,120629,120630,120655,120656,120687,120688,120713,120714,120745,120746,120771,120772,120782,120832,121344,121399,121403,121453,121461,121462,121476,121477,121499,121504,121505,121520,122880,122887,122888,122905,122907,122914,122915,122917,122918,122923,123023,123024,123184,123191,123566,123567,123628,123632,123647,123648,124140,124144,124398,124400,124643,124644,124646,124647,124654,124656,124661,124662,124928,125136,125143,125252,125259,126064,126144,126208,126288,126464,126704,126706,126720,126976,127020,127024,127124,127136,127151,127153,127168,127169,127184,127185,127222,127232,127243,127248,127279,127280,127338,127344,127405,127406,127584,127590,127744,128729,128732,128749,128752,128765,128768,128986,128992,129004,129008,129009,129024,129036,129040,129096,129104,129114,129120,129160,129168,129198,129200,129212,129216,129218,129232,129241,129280,129624,129632,129646,129648,129661,129664,129675,129678,129735,129736,129737,129741,129757,129759,129771,129775,129785,129792,129939,129940,130032,130042,130043,131070,131072,196606,196608,262142,262144,327678,327680,393214,393216,458750,458752,524286,524288,589822,589824,655358,655360,720894,720896,786430,786432,851966,851968,917502,917760,918e3,921600,983038,983040,1048574,1048576,1114110],Cs=[9,11,10,11,12,10,9,10,11,12,13,5,13,4,7,4,7,3,7,13,0,13,0,13,9,10,9,7,13,5,13,0,13,9,13,5,3,13,0,13,3,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,8,0,13,0,13,0,13,0,13,0,13,0,8,0,13,0,13,5,1,8,1,8,1,8,1,8,1,8,1,6,13,2,5,2,7,2,13,8,2,8,6,5,6,2,8,2,8,6,13,8,2,8,13,8,2,3,2,8,2,8,2,8,2,1,8,1,13,1,8,1,8,1,8,1,8,1,8,1,8,1,2,6,2,8,2,8,6,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,5,0,5,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,5,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,13,5,13,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,13,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,5,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,13,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,13,0,13,0,12,0,13,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,5,0,8,0,13,0,13,8,9,8,0,8,0,8,0,8,0,8,0,8,0,8,0,13,0,13,0,13,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,13,0,13,0,13,0,13,0,13,0,13,0,12,9,0,1,13,12,10,14,16,18,15,17,7,5,13,7,13,12,9,19,20,21,22,9,3,0,3,4,13,0,3,4,13,0,5,8,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,5,0,13,0,13,0,13,0,13,0,13,0,13,4,5,13,0,13,0,13,0,13,0,13,3,0,13,0,13,0,13,0,13,0,13,0,8,0,13,0,8,0,8,13,0,13,0,13,0,13,0,13,12,13,0,13,0,8,0,13,0,13,0,13,0,8,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,8,13,8,13,0,8,0,8,0,13,0,13,0,8,0,8,0,8,0,8,0,13,8,0,5,0,13,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,13,0,8,0,8,0,8,0,1,8,1,4,1,2,13,2,13,2,13,2,13,9,2,13,8,13,0,8,13,7,13,7,0,13,7,13,5,13,4,13,0,13,5,13,0,2,9,0,13,5,13,4,7,4,7,3,7,13,0,13,0,13,0,5,13,5,0,13,0,9,13,9,0,13,0,13,0,13,0,13,0,8,0,8,3,0,8,0,1,13,1,8,1,8,1,8,1,8,1,8,1,8,1,13,1,2,8,2,6,2,6,1,8,13,1,6,1,8,1,2,13,2,8,1,2,8,2,1,8,1,0,8,0,8,0,13,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,13,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,13,5,13,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,13,0,8,0,8,0,9,0,13,0,3,13,0,13,0,13,0,13,0,8,0,8,0,8,0,9,8,0,8,0,8,0,13,0,13,8,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,3,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,8,0,5,0,8,0,8,0,8,0,8,0,8,0,8,0,1,8,1,8,1,2,1,2,1,2,13,2,1,13,0,13,0,13,0,13,0,13,0,13,0,3,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,0,13,3,13,0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,9,0,9,8,9,0,9,0,9,0,9],ws=[40,41,41,40,60,62,62,60,91,93,93,91,123,125,125,123,171,187,187,171,3898,3899,3899,3898,3900,3901,3901,3900,5787,5788,5788,5787,8249,8250,8250,8249,8261,8262,8262,8261,8317,8318,8318,8317,8333,8334,8334,8333,8712,8715,8713,8716,8714,8717,8715,8712,8716,8713,8717,8714,8725,10741,8735,11262,8736,10659,8737,10651,8738,10656,8740,10990,8764,8765,8765,8764,8771,8909,8773,8780,8780,8773,8786,8787,8787,8786,8788,8789,8789,8788,8804,8805,8805,8804,8806,8807,8807,8806,8808,8809,8809,8808,8810,8811,8811,8810,8814,8815,8815,8814,8816,8817,8817,8816,8818,8819,8819,8818,8820,8821,8821,8820,8822,8823,8823,8822,8824,8825,8825,8824,8826,8827,8827,8826,8828,8829,8829,8828,8830,8831,8831,8830,8832,8833,8833,8832,8834,8835,8835,8834,8836,8837,8837,8836,8838,8839,8839,8838,8840,8841,8841,8840,8842,8843,8843,8842,8847,8848,8848,8847,8849,8850,8850,8849,8856,10680,8866,8867,8867,8866,8870,10974,8872,10980,8873,10979,8875,10981,8880,8881,8881,8880,8882,8883,8883,8882,8884,8885,8885,8884,8886,8887,8887,8886,8888,10204,8905,8906,8906,8905,8907,8908,8908,8907,8909,8771,8912,8913,8913,8912,8918,8919,8919,8918,8920,8921,8921,8920,8922,8923,8923,8922,8924,8925,8925,8924,8926,8927,8927,8926,8928,8929,8929,8928,8930,8931,8931,8930,8932,8933,8933,8932,8934,8935,8935,8934,8936,8937,8937,8936,8938,8939,8939,8938,8940,8941,8941,8940,8944,8945,8945,8944,8946,8954,8947,8955,8948,8956,8950,8957,8951,8958,8954,8946,8955,8947,8956,8948,8957,8950,8958,8951,8968,8969,8969,8968,8970,8971,8971,8970,9001,9002,9002,9001,10088,10089,10089,10088,10090,10091,10091,10090,10092,10093,10093,10092,10094,10095,10095,10094,10096,10097,10097,10096,10098,10099,10099,10098,10100,10101,10101,10100,10179,10180,10180,10179,10181,10182,10182,10181,10184,10185,10185,10184,10187,10189,10189,10187,10197,10198,10198,10197,10204,8888,10205,10206,10206,10205,10210,10211,10211,10210,10212,10213,10213,10212,10214,10215,10215,10214,10216,10217,10217,10216,10218,10219,10219,10218,10220,10221,10221,10220,10222,10223,10223,10222,10627,10628,10628,10627,10629,10630,10630,10629,10631,10632,10632,10631,10633,10634,10634,10633,10635,10636,10636,10635,10637,10640,10638,10639,10639,10638,10640,10637,10641,10642,10642,10641,10643,10644,10644,10643,10645,10646,10646,10645,10647,10648,10648,10647,10651,8737,10656,8738,10659,8736,10660,10661,10661,10660,10664,10665,10665,10664,10666,10667,10667,10666,10668,10669,10669,10668,10670,10671,10671,10670,10680,8856,10688,10689,10689,10688,10692,10693,10693,10692,10703,10704,10704,10703,10705,10706,10706,10705,10708,10709,10709,10708,10712,10713,10713,10712,10714,10715,10715,10714,10728,10729,10729,10728,10741,8725,10744,10745,10745,10744,10748,10749,10749,10748,10795,10796,10796,10795,10797,10798,10798,10797,10804,10805,10805,10804,10812,10813,10813,10812,10852,10853,10853,10852,10873,10874,10874,10873,10875,10876,10876,10875,10877,10878,10878,10877,10879,10880,10880,10879,10881,10882,10882,10881,10883,10884,10884,10883,10885,10886,10886,10885,10887,10888,10888,10887,10889,10890,10890,10889,10891,10892,10892,10891,10893,10894,10894,10893,10895,10896,10896,10895,10897,10898,10898,10897,10899,10900,10900,10899,10901,10902,10902,10901,10903,10904,10904,10903,10905,10906,10906,10905,10907,10908,10908,10907,10909,10910,10910,10909,10911,10912,10912,10911,10913,10914,10914,10913,10918,10919,10919,10918,10920,10921,10921,10920,10922,10923,10923,10922,10924,10925,10925,10924,10927,10928,10928,10927,10929,10930,10930,10929,10931,10932,10932,10931,10933,10934,10934,10933,10935,10936,10936,10935,10937,10938,10938,10937,10939,10940,10940,10939,10941,10942,10942,10941,10943,10944,10944,10943,10945,10946,10946,10945,10947,10948,10948,10947,10949,10950,10950,10949,10951,10952,10952,10951,10953,10954,10954,10953,10955,10956,10956,10955,10957,10958,10958,10957,10959,10960,10960,10959,10961,10962,10962,10961,10963,10964,10964,10963,10965,10966,10966,10965,10974,8870,10979,8873,10980,8872,10981,8875,10988,10989,10989,10988,10990,8740,10999,11e3,11e3,10999,11001,11002,11002,11001,11262,8735,11778,11779,11779,11778,11780,11781,11781,11780,11785,11786,11786,11785,11788,11789,11789,11788,11804,11805,11805,11804,11808,11809,11809,11808,11810,11811,11811,11810,11812,11813,11813,11812,11814,11815,11815,11814,11816,11817,11817,11816,11861,11862,11862,11861,11863,11864,11864,11863,11865,11866,11866,11865,11867,11868,11868,11867,12296,12297,12297,12296,12298,12299,12299,12298,12300,12301,12301,12300,12302,12303,12303,12302,12304,12305,12305,12304,12308,12309,12309,12308,12310,12311,12311,12310,12312,12313,12313,12312,12314,12315,12315,12314,65113,65114,65114,65113,65115,65116,65116,65115,65117,65118,65118,65117,65124,65125,65125,65124,65288,65289,65289,65288,65308,65310,65310,65308,65339,65341,65341,65339,65371,65373,65373,65371,65375,65376,65376,65375,65378,65379,65379,65378],Ts=[40,41,0,41,40,1,91,93,0,93,91,1,123,125,0,125,123,1,3898,3899,0,3899,3898,1,3900,3901,0,3901,3900,1,5787,5788,0,5788,5787,1,8261,8262,0,8262,8261,1,8317,8318,0,8318,8317,1,8333,8334,0,8334,8333,1,8968,8969,0,8969,8968,1,8970,8971,0,8971,8970,1,9001,9002,0,9002,9001,1,10088,10089,0,10089,10088,1,10090,10091,0,10091,10090,1,10092,10093,0,10093,10092,1,10094,10095,0,10095,10094,1,10096,10097,0,10097,10096,1,10098,10099,0,10099,10098,1,10100,10101,0,10101,10100,1,10181,10182,0,10182,10181,1,10214,10215,0,10215,10214,1,10216,10217,0,10217,10216,1,10218,10219,0,10219,10218,1,10220,10221,0,10221,10220,1,10222,10223,0,10223,10222,1,10627,10628,0,10628,10627,1,10629,10630,0,10630,10629,1,10631,10632,0,10632,10631,1,10633,10634,0,10634,10633,1,10635,10636,0,10636,10635,1,10637,10640,0,10638,10639,1,10639,10638,0,10640,10637,1,10641,10642,0,10642,10641,1,10643,10644,0,10644,10643,1,10645,10646,0,10646,10645,1,10647,10648,0,10648,10647,1,10712,10713,0,10713,10712,1,10714,10715,0,10715,10714,1,10748,10749,0,10749,10748,1,11810,11811,0,11811,11810,1,11812,11813,0,11813,11812,1,11814,11815,0,11815,11814,1,11816,11817,0,11817,11816,1,11861,11862,0,11862,11861,1,11863,11864,0,11864,11863,1,11865,11866,0,11866,11865,1,11867,11868,0,11868,11867,1,12296,12297,0,12297,12296,1,12298,12299,0,12299,12298,1,12300,12301,0,12301,12300,1,12302,12303,0,12303,12302,1,12304,12305,0,12305,12304,1,12308,12309,0,12309,12308,1,12310,12311,0,12311,12310,1,12312,12313,0,12313,12312,1,12314,12315,0,12315,12314,1,65113,65114,0,65114,65113,1,65115,65116,0,65116,65115,1,65117,65118,0,65118,65117,1,65288,65289,0,65289,65288,1,65339,65341,0,65341,65339,1,65371,65373,0,65373,65371,1,65375,65376,0,65376,65375,1,65378,65379,0,65379,65378,1];function Es(e){let t=0,n=Ss.length-1;for(;t<n;){let r=t+n+1>>1;Ss[r]<=e?t=r:n=r-1}return Cs[t]}function Ds(e){return xs[Es(e)]}const Os=(()=>{let e=new Map;for(let t=0;t<ws.length;t+=2)e.set(ws[t],ws[t+1]);return e})();function ks(e){return Os.get(e)??null}const As=(()=>{let e=new Map;for(let t=0;t<Ts.length;t+=3)e.set(Ts[t],{pair:Ts[t+1],type:Ts[t+2]===0?`o`:`c`});return e})();function js(e){return As.get(e)??null}const Ms=e=>e===`RLE`||e===`LRE`||e===`RLO`||e===`LRO`||e===`PDF`||e===`BN`,Ns=e=>e===`LRI`||e===`RLI`||e===`FSI`,Ps=e=>e===`B`||e===`S`||e===`WS`||e===`ON`||e===`FSI`||e===`LRI`||e===`RLI`||e===`PDI`,Fs=e=>e&1?e+2:e+1,Is=e=>e&1?e+1:e+2;function Ls(e,t,n){let r=0;for(let i=t;i<n;i++){let t=e[i];if(Ns(t))r++;else if(t===`PDI`)r>0&&r--;else if(r===0){if(t===`L`)return 0;if(t===`R`||t===`AL`)return 1}}return 0}function Rs(e){let t=e.length,n=new Int32Array(t).fill(t),r=new Int32Array(t).fill(-1),i=[];for(let a=0;a<t;a++){let t=e[a];if(Ns(t))i.push(a);else if(t===`PDI`&&i.length){let e=i.pop();n[e]=a,r[a]=e}}return{pdiOf:n,initOf:r}}function zs(e,t,n){let r=e.length,i=Array(r).fill(t),a=e.slice(),o=[{level:t,override:`neutral`,isolate:!1}],s=0,c=0,l=0,u=()=>o[o.length-1];for(let d=0;d<r;d++){let r=e[d];switch(r){case`RLE`:case`LRE`:case`RLO`:case`LRO`:{i[d]=u().level;let e=r===`RLE`||r===`RLO`?Fs(u().level):Is(u().level);e<=125&&s===0&&c===0?o.push({level:e,override:r===`RLO`?`R`:r===`LRO`?`L`:`neutral`,isolate:!1}):s===0&&c++;break}case`RLI`:case`LRI`:case`FSI`:{i[d]=u().level;let t=u().override;t!==`neutral`&&(a[d]=t);let f;f=r===`RLI`?`R`:r===`LRI`?`L`:Ls(e,d+1,n[d])===1?`R`:`L`;let p=f===`R`?Fs(u().level):Is(u().level);p<=125&&s===0&&c===0?(l++,o.push({level:p,override:`neutral`,isolate:!0})):s++;break}case`PDI`:if(s>0)s--;else if(l>0){for(c=0;!u().isolate;)o.pop();o.pop(),l--}{i[d]=u().level;let e=u().override;e!==`neutral`&&(a[d]=e)}break;case`PDF`:i[d]=u().level,s>0||(c>0?c--:!u().isolate&&o.length>=2&&o.pop());break;case`B`:o.length=1,s=0,c=0,l=0,i[d]=t;break;case`BN`:i[d]=u().level;break;default:{i[d]=u().level;let e=u().override;e!==`neutral`&&(a[d]=e);break}}}return{levels:i,types:a}}function Bs(e){return e===9001?12296:e===9002?12297:e}function Vs(e,t,n,r,i,a){let o=e.length,s=[];for(let e=0;e<o;e++)n[e]||s.push(e);let c=[];for(let e=0;e<s.length;e++){let n=s[e];e===0||t[n]!==t[s[e-1]]?c.push([n]):c[c.length-1].push(n)}let l=new Map;for(let e of c)l.set(e[0],e);let u=e=>e&1?`R`:`L`,d=[];for(let s of c){let c=s[0];if(e[c]===`PDI`&&a[c]!==-1)continue;let f=[],p=s;for(;;){for(let e of p)f.push(e);let t=p[p.length-1];if(Ns(e[t])&&i[t]!==o){let e=l.get(i[t]);if(e){p=e;continue}}break}let m=t[f[0]],h=r;for(let e=f[0]-1;e>=0;e--)if(!n[e]){h=t[e];break}let g=u(Math.max(m,h)),_=f[f.length-1],v=r;if(!(Ns(e[_])&&i[_]===o)){for(let e=_+1;e<o;e++)if(!n[e]){v=t[e];break}}let y=u(Math.max(m,v));d.push({indices:f,level:m,sos:g,eos:y})}return d}const Hs=e=>e===`L`?`L`:e===`R`||e===`EN`||e===`AN`?`R`:null;function Us(e,t,n,r,i){let a=e.indices,o=a.length,{sos:s,eos:c,level:l}=e;for(let e=0;e<o;e++){let t=a[e];if(r[t]===`NSM`)if(e===0)r[t]=s;else{let n=r[a[e-1]];r[t]=n===`LRI`||n===`RLI`||n===`FSI`||n===`PDI`?`ON`:n}}{let e=s;for(let t=0;t<o;t++){let n=r[a[t]];n===`R`||n===`L`||n===`AL`?e=n:n===`EN`&&e===`AL`&&(r[a[t]]=`AN`)}}for(let e=0;e<o;e++)r[a[e]]===`AL`&&(r[a[e]]=`R`);for(let e=1;e<o-1;e++){let t=r[a[e]],n=r[a[e-1]],i=r[a[e+1]];t===`ES`&&n===`EN`&&i===`EN`||t===`CS`&&n===`EN`&&i===`EN`?r[a[e]]=`EN`:t===`CS`&&n===`AN`&&i===`AN`&&(r[a[e]]=`AN`)}for(let e=0;e<o;e++){if(r[a[e]]!==`ET`)continue;let t=e;for(;t<o&&r[a[t]]===`ET`;)t++;let n=e>0?r[a[e-1]]:s,i=t<o?r[a[t]]:c;if(n===`EN`||i===`EN`)for(let n=e;n<t;n++)r[a[n]]=`EN`;e=t-1}for(let e=0;e<o;e++){let t=r[a[e]];(t===`ES`||t===`ET`||t===`CS`)&&(r[a[e]]=`ON`)}{let e=s;for(let t=0;t<o;t++){let n=r[a[t]];n===`R`||n===`L`?e=n:n===`EN`&&e===`L`&&(r[a[t]]=`L`)}}let u=l&1?`R`:`L`,d=u===`R`?`L`:`R`,f=[];{let e=[];outer:for(let n=0;n<o;n++){let i=a[n];if(r[i]!==`ON`)continue;let o=js(t[i]);if(o)if(o.type===`o`){if(e.length===63)break outer;e.push({expect:Bs(o.pair),pos:n})}else{let r=Bs(t[i]);for(let t=e.length-1;t>=0;t--)if(e[t].expect===r){f.push({open:e[t].pos,close:n}),e.length=t;break}}}f.sort((e,t)=>e.open-t.open)}let p=(e,t)=>{for(let i=e+1;i<o&&n[a[i]]===`NSM`;i++)r[a[i]]=t};for(let{open:e,close:t}of f){let n=!1,i=!1;for(let o=e+1;o<t;o++){let e=Hs(r[a[o]]);e===u?n=!0:e===d&&(i=!0)}let o=null;if(n)o=u;else if(i){let t=s;for(let n=e-1;n>=0;n--){let e=Hs(r[a[n]]);if(e){t=e;break}}o=t===d?d:u}o&&(r[a[e]]=o,r[a[t]]=o,p(e,o),p(t,o))}for(let e=0;e<o;e++){if(!Ps(r[a[e]]))continue;let t=e;for(;t<o&&Ps(r[a[t]]);)t++;let n=e>0?Hs(r[a[e-1]]):s,i=t<o?Hs(r[a[t]]):c;if(n&&i&&n===i)for(let i=e;i<t;i++)r[a[i]]=n;e=t-1}for(let e=0;e<o;e++)Ps(r[a[e]])&&(r[a[e]]=u);for(let e=0;e<o;e++){let t=a[e],n=r[t];l&1?(n===`L`||n===`EN`||n===`AN`)&&(i[t]+=1):n===`R`?i[t]+=1:(n===`AN`||n===`EN`)&&(i[t]+=2)}}function Ws(e,t,n){let r=e.length,i=Array(r);for(let t=0;t<r;t++)i[t]=n?.[t]??Ds(e[t]);let a=t===`rtl`?1:t===`ltr`?0:Ls(i,0,r),{pdiOf:o,initOf:s}=Rs(i),{levels:c,types:l}=zs(i,a,o),u=Array(r);for(let e=0;e<r;e++)u[e]=Ms(i[e]);let d=Vs(i,c,u,a,o,s),f=l.slice();for(let t of d)Us(t,e,i,f,c);let p=e=>{let t=i[e];return t===`WS`||Ns(t)||t===`PDI`||u[e]};for(let e=0;e<r;e++){let t=i[e];if(t===`B`||t===`S`){c[e]=a;for(let t=e-1;t>=0&&p(t);t--)u[t]||(c[t]=a)}}for(let e=r-1;e>=0&&p(e);e--)u[e]||(c[e]=a);for(let e=0;e<r;e++)u[e]&&(c[e]=-1);return{levels:c,paragraphLevel:a}}function Gs(e,t,n){let r=[];for(let i=t;i<n;i++){let t=e[i];t>=0&&t<=126&&r.push(i)}if(r.length===0)return r;let i=0,a=127;for(let t of r){let n=e[t];n>i&&(i=n),n&1&&n<a&&(a=n)}for(let t=i;t>=a;t--){let n=0;for(;n<r.length;)if(e[r[n]]>=t){let i=n+1;for(;i<r.length&&e[r[i]]>=t;)i++;for(let e=n,t=i-1;e<t;e++,t--){let n=r[e];r[e]=r[t],r[t]=n}n=i}else n++}return r}function Ks(e){let t=[],n=[],r=[];for(let i=0;i<e.length;){let a=e.codePointAt(i),o=a>65535?2:1;t.push(a),n.push(o),r.push(i),i+=o}return{cps:t,units:n,starts:r}}var qs=class{computeLevels(e,t,n){let{cps:r,units:i,starts:a}=Ks(e),{levels:o,paragraphLevel:s}=Ws(r,t,n?r.map((e,t)=>n[a[t]]??null):void 0),c=new Uint8Array(e.length),l=0;for(let e=0;e<o.length;e++){let t=o[e]===-1?255:o[e];for(let n=0;n<i[e];n++)c[l++]=t}return{levels:c,paragraphLevel:s}}reorderVisual(e,t,n){return Gs(e,t,n)}getMirror(e){return ks(e)}};function Js(){return new qs}let Ys=null;function Xs(){return Ys===null&&(Ys=Js()),Ys}const Zs=/[\\u0590-\\u08FF\\uFB1D-\\uFDFF\\uFE70-\\uFEFF\\u200F\\u202B\\u202E\\u2067]|[\\u{10800}-\\u{10FFF}\\u{1E800}-\\u{1EFFF}]/u;function Qs(e){return Zs.test(e)}function $s(e,t,n){let r=n.length,i=new Uint8Array(r);for(let a=0;a<r;a++){let r=e[n[a]];i[a]=r===255?t:r}return{order:Xs().reorderVisual(i,0,r),segLevels:i}}function ec(e){let t=new Set;for(let n of e)t.add(n.codePointAt(0));return t}function tc(e){return{enabled:e?.kinsoku!==!1,lineStartForbidden:ec(e?.noLineBreaksBefore??`”’)〕]}〉》」』】〙〗〟⦆»、。,.・:;/?!‐ー゠–〜~ぁぃぅぇぉっゃゅょゎゕゖァィゥェォッャュョヮヵヶㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻ゝゞヽヾ゛゜%‰℃°′″。」、・ー゙゚!),.:;?]}⦆`),lineEndForbidden:ec(e?.noLineBreaksAfter??`“‘(〔[{〈《「『【〘〖〝⦅«$¥#£¢([{⦅`)}}const nc=tc();function rc(e,t,n,r=1){if(!n.enabled||t<=0||t>=e.length)return t;let i=t=>t<e.length&&n.lineStartForbidden.has(e[t].codePointAt(0)),a=t=>t>=0&&n.lineEndForbidden.has(e[t].codePointAt(0)),o=t;for(;o>r&&(i(o)||a(o-1));)o--;return o<=r&&(i(o)||a(o-1))?t:o}function ic(e,t,n){if(!t.enabled)return 0;let r=e.length-n;for(let n=1;n<=r;n++){let r=e[e.length-n];if(/\\s/.test(r)||t.lineStartForbidden.has(r.codePointAt(0)))continue;let i=e[e.length-n-1];if(!(i&&t.lineEndForbidden.has(i.codePointAt(0))))return n}return 0}function ac(e){return e>=12288&&e<=40959||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65280&&e<=65519}const oc=`BK.CM.CR.GL.LF.NL.SP.WJ.ZW.ZWJ.AK.AL.AP.AS.B2.BA.BB.CB.CL.CP.EB.EM.EX.H2.H3.HL.HH.HY.ID.IN.IS.JL.JT.JV.NS.NU.OP.PO.PR.QU.RI.SY.VF.VI`.split(`.`),sc=[0,9,10,11,13,14,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,58,60,63,64,91,92,93,94,123,124,125,126,127,133,134,160,161,162,163,166,171,172,173,174,176,177,178,180,181,187,188,191,192,712,713,716,717,735,736,768,860,867,880,894,895,1155,1162,1417,1418,1419,1423,1424,1425,1470,1471,1472,1473,1475,1476,1478,1479,1480,1488,1515,1519,1523,1536,1542,1545,1548,1550,1552,1563,1564,1565,1568,1611,1632,1642,1643,1645,1648,1649,1748,1749,1750,1757,1758,1759,1765,1767,1769,1770,1774,1776,1786,1809,1810,1840,1867,1958,1969,1984,1994,2027,2036,2040,2041,2042,2045,2046,2048,2070,2074,2075,2084,2085,2088,2089,2094,2137,2140,2192,2194,2199,2208,2250,2274,2275,2308,2362,2365,2366,2384,2385,2392,2402,2404,2406,2416,2433,2436,2492,2493,2494,2501,2503,2505,2507,2510,2519,2520,2530,2532,2534,2544,2546,2548,2553,2554,2555,2556,2558,2559,2561,2564,2620,2621,2622,2627,2631,2633,2635,2638,2641,2642,2662,2672,2674,2677,2678,2689,2692,2748,2749,2750,2758,2759,2762,2763,2766,2786,2788,2790,2800,2801,2802,2810,2816,2817,2820,2876,2877,2878,2885,2887,2889,2891,2894,2901,2904,2914,2916,2918,2928,2946,2947,3006,3011,3014,3017,3018,3022,3031,3032,3046,3056,3065,3066,3072,3077,3132,3133,3134,3141,3142,3145,3146,3150,3157,3159,3170,3172,3174,3184,3191,3192,3201,3204,3205,3260,3261,3262,3269,3270,3273,3274,3278,3285,3287,3298,3300,3302,3312,3315,3316,3328,3332,3387,3389,3390,3397,3398,3401,3402,3406,3415,3416,3426,3428,3430,3440,3449,3450,3457,3460,3530,3531,3535,3541,3542,3543,3544,3552,3558,3568,3570,3572,3633,3634,3636,3643,3647,3648,3655,3663,3664,3674,3676,3761,3762,3764,3773,3784,3791,3792,3802,3841,3845,3846,3848,3849,3851,3852,3853,3858,3859,3860,3861,3864,3866,3872,3882,3892,3893,3894,3895,3896,3897,3898,3899,3900,3901,3902,3904,3953,3967,3968,3973,3974,3976,3981,3992,3993,4029,4030,4032,4038,4039,4048,4050,4051,4052,4057,4059,4139,4159,4160,4170,4172,4182,4186,4190,4193,4194,4197,4199,4206,4209,4213,4226,4238,4239,4240,4250,4254,4352,4448,4520,4608,4957,4960,4961,4962,5120,5121,5760,5761,5787,5788,5789,5867,5870,5906,5910,5938,5941,5943,5970,5972,6002,6004,6068,6100,6102,6103,6104,6105,6106,6107,6108,6109,6110,6112,6122,6146,6148,6150,6151,6152,6154,6155,6158,6159,6160,6170,6277,6279,6313,6314,6432,6444,6448,6460,6468,6470,6480,6608,6619,6679,6684,6741,6751,6752,6781,6783,6784,6794,6800,6810,6832,6878,6880,6891,6892,6912,6917,6964,6980,6981,6989,6990,6992,7002,7004,7005,7009,7019,7028,7037,7040,7043,7073,7086,7088,7098,7104,7142,7154,7156,7204,7224,7227,7232,7242,7248,7258,7294,7296,7376,7379,7380,7401,7405,7406,7412,7413,7415,7418,7616,7629,7630,7676,7677,7680,8189,8190,8192,8199,8200,8203,8204,8205,8206,8208,8209,8210,8212,8213,8216,8218,8219,8222,8223,8224,8228,8231,8232,8234,8239,8240,8248,8249,8251,8252,8254,8260,8261,8262,8263,8266,8278,8279,8280,8284,8285,8288,8289,8294,8304,8317,8318,8319,8333,8334,8335,8352,8359,8360,8374,8375,8379,8380,8382,8383,8384,8385,8400,8433,8451,8452,8457,8458,8470,8471,8722,8724,8943,8944,8968,8969,8970,8971,8972,8986,8988,9001,9002,9003,9200,9204,9728,9732,9748,9750,9752,9753,9754,9757,9758,9760,9785,9788,9832,9833,9855,9856,9917,9929,9933,9934,9935,9938,9939,9941,9944,9946,9948,9949,9951,9954,9962,9963,9969,9974,9975,9977,9978,9979,9981,9989,9992,9994,9998,10075,10081,10082,10084,10085,10088,10089,10090,10091,10092,10093,10094,10095,10096,10097,10098,10099,10100,10101,10102,10181,10182,10183,10214,10215,10216,10217,10218,10219,10220,10221,10222,10223,10224,10240,10241,10627,10628,10629,10630,10631,10632,10633,10634,10635,10636,10637,10638,10639,10640,10641,10642,10643,10644,10645,10646,10647,10648,10649,10712,10713,10714,10715,10716,10748,10749,10750,11503,11506,11513,11514,11517,11518,11519,11520,11632,11633,11647,11648,11744,11776,11790,11798,11799,11800,11801,11802,11804,11806,11808,11810,11811,11812,11813,11814,11815,11816,11817,11818,11822,11823,11824,11826,11827,11829,11834,11836,11839,11840,11841,11842,11843,11851,11852,11853,11854,11856,11859,11861,11862,11863,11864,11865,11866,11867,11868,11869,11870,11904,11930,11931,12020,12032,12246,12272,12288,12289,12291,12293,12294,12296,12297,12298,12299,12300,12301,12302,12303,12304,12305,12306,12308,12309,12310,12311,12312,12313,12314,12315,12316,12317,12318,12320,12330,12336,12341,12342,12347,12349,12352,12353,12354,12355,12356,12357,12358,12359,12360,12361,12362,12387,12388,12419,12420,12421,12422,12423,12424,12430,12431,12437,12439,12441,12443,12447,12448,12450,12451,12452,12453,12454,12455,12456,12457,12458,12483,12484,12515,12516,12517,12518,12519,12520,12526,12527,12533,12535,12539,12543,12544,12549,12592,12593,12687,12688,12774,12783,12784,12800,12831,12832,12872,12880,19904,19968,40981,40982,42125,42128,42183,42238,42240,42509,42510,42511,42512,42528,42538,42607,42611,42612,42622,42654,42656,42736,42738,42739,42744,43010,43011,43014,43015,43019,43020,43043,43048,43052,43053,43064,43065,43124,43126,43128,43136,43138,43188,43206,43214,43216,43226,43232,43250,43260,43261,43263,43264,43274,43302,43310,43312,43335,43348,43360,43389,43392,43396,43443,43456,43457,43463,43466,43470,43471,43472,43482,43486,43488,43493,43494,43504,43514,43520,43561,43575,43584,43587,43588,43596,43598,43600,43610,43612,43613,43616,43643,43646,43696,43697,43698,43701,43703,43705,43710,43712,43713,43714,43755,43760,43762,43765,43767,44003,44011,44012,44014,44016,44026,44032,44033,44060,44061,44088,44089,44116,44117,44144,44145,44172,44173,44200,44201,44228,44229,44256,44257,44284,44285,44312,44313,44340,44341,44368,44369,44396,44397,44424,44425,44452,44453,44480,44481,44508,44509,44536,44537,44564,44565,44592,44593,44620,44621,44648,44649,44676,44677,44704,44705,44732,44733,44760,44761,44788,44789,44816,44817,44844,44845,44872,44873,44900,44901,44928,44929,44956,44957,44984,44985,45012,45013,45040,45041,45068,45069,45096,45097,45124,45125,45152,45153,45180,45181,45208,45209,45236,45237,45264,45265,45292,45293,45320,45321,45348,45349,45376,45377,45404,45405,45432,45433,45460,45461,45488,45489,45516,45517,45544,45545,45572,45573,45600,45601,45628,45629,45656,45657,45684,45685,45712,45713,45740,45741,45768,45769,45796,45797,45824,45825,45852,45853,45880,45881,45908,45909,45936,45937,45964,45965,45992,45993,46020,46021,46048,46049,46076,46077,46104,46105,46132,46133,46160,46161,46188,46189,46216,46217,46244,46245,46272,46273,46300,46301,46328,46329,46356,46357,46384,46385,46412,46413,46440,46441,46468,46469,46496,46497,46524,46525,46552,46553,46580,46581,46608,46609,46636,46637,46664,46665,46692,46693,46720,46721,46748,46749,46776,46777,46804,46805,46832,46833,46860,46861,46888,46889,46916,46917,46944,46945,46972,46973,47e3,47001,47028,47029,47056,47057,47084,47085,47112,47113,47140,47141,47168,47169,47196,47197,47224,47225,47252,47253,47280,47281,47308,47309,47336,47337,47364,47365,47392,47393,47420,47421,47448,47449,47476,47477,47504,47505,47532,47533,47560,47561,47588,47589,47616,47617,47644,47645,47672,47673,47700,47701,47728,47729,47756,47757,47784,47785,47812,47813,47840,47841,47868,47869,47896,47897,47924,47925,47952,47953,47980,47981,48008,48009,48036,48037,48064,48065,48092,48093,48120,48121,48148,48149,48176,48177,48204,48205,48232,48233,48260,48261,48288,48289,48316,48317,48344,48345,48372,48373,48400,48401,48428,48429,48456,48457,48484,48485,48512,48513,48540,48541,48568,48569,48596,48597,48624,48625,48652,48653,48680,48681,48708,48709,48736,48737,48764,48765,48792,48793,48820,48821,48848,48849,48876,48877,48904,48905,48932,48933,48960,48961,48988,48989,49016,49017,49044,49045,49072,49073,49100,49101,49128,49129,49156,49157,49184,49185,49212,49213,49240,49241,49268,49269,49296,49297,49324,49325,49352,49353,49380,49381,49408,49409,49436,49437,49464,49465,49492,49493,49520,49521,49548,49549,49576,49577,49604,49605,49632,49633,49660,49661,49688,49689,49716,49717,49744,49745,49772,49773,49800,49801,49828,49829,49856,49857,49884,49885,49912,49913,49940,49941,49968,49969,49996,49997,50024,50025,50052,50053,50080,50081,50108,50109,50136,50137,50164,50165,50192,50193,50220,50221,50248,50249,50276,50277,50304,50305,50332,50333,50360,50361,50388,50389,50416,50417,50444,50445,50472,50473,50500,50501,50528,50529,50556,50557,50584,50585,50612,50613,50640,50641,50668,50669,50696,50697,50724,50725,50752,50753,50780,50781,50808,50809,50836,50837,50864,50865,50892,50893,50920,50921,50948,50949,50976,50977,51004,51005,51032,51033,51060,51061,51088,51089,51116,51117,51144,51145,51172,51173,51200,51201,51228,51229,51256,51257,51284,51285,51312,51313,51340,51341,51368,51369,51396,51397,51424,51425,51452,51453,51480,51481,51508,51509,51536,51537,51564,51565,51592,51593,51620,51621,51648,51649,51676,51677,51704,51705,51732,51733,51760,51761,51788,51789,51816,51817,51844,51845,51872,51873,51900,51901,51928,51929,51956,51957,51984,51985,52012,52013,52040,52041,52068,52069,52096,52097,52124,52125,52152,52153,52180,52181,52208,52209,52236,52237,52264,52265,52292,52293,52320,52321,52348,52349,52376,52377,52404,52405,52432,52433,52460,52461,52488,52489,52516,52517,52544,52545,52572,52573,52600,52601,52628,52629,52656,52657,52684,52685,52712,52713,52740,52741,52768,52769,52796,52797,52824,52825,52852,52853,52880,52881,52908,52909,52936,52937,52964,52965,52992,52993,53020,53021,53048,53049,53076,53077,53104,53105,53132,53133,53160,53161,53188,53189,53216,53217,53244,53245,53272,53273,53300,53301,53328,53329,53356,53357,53384,53385,53412,53413,53440,53441,53468,53469,53496,53497,53524,53525,53552,53553,53580,53581,53608,53609,53636,53637,53664,53665,53692,53693,53720,53721,53748,53749,53776,53777,53804,53805,53832,53833,53860,53861,53888,53889,53916,53917,53944,53945,53972,53973,54e3,54001,54028,54029,54056,54057,54084,54085,54112,54113,54140,54141,54168,54169,54196,54197,54224,54225,54252,54253,54280,54281,54308,54309,54336,54337,54364,54365,54392,54393,54420,54421,54448,54449,54476,54477,54504,54505,54532,54533,54560,54561,54588,54589,54616,54617,54644,54645,54672,54673,54700,54701,54728,54729,54756,54757,54784,54785,54812,54813,54840,54841,54868,54869,54896,54897,54924,54925,54952,54953,54980,54981,55008,55009,55036,55037,55064,55065,55092,55093,55120,55121,55148,55149,55176,55177,55204,55216,55239,55243,55292,63744,64256,64285,64286,64287,64297,64298,64311,64312,64317,64318,64319,64320,64322,64323,64325,64326,64336,64830,64831,64832,65020,65021,65024,65040,65043,65045,65047,65048,65049,65050,65056,65057,65058,65059,65060,65061,65062,65064,65065,65066,65067,65068,65069,65071,65072,65077,65078,65079,65080,65081,65082,65083,65084,65085,65086,65087,65088,65089,65090,65091,65092,65093,65095,65096,65097,65104,65105,65106,65107,65108,65110,65112,65113,65114,65115,65116,65117,65118,65119,65127,65128,65129,65130,65131,65132,65279,65280,65281,65282,65284,65285,65286,65288,65289,65290,65292,65293,65294,65295,65306,65308,65311,65312,65339,65340,65341,65342,65371,65372,65373,65374,65375,65376,65378,65379,65381,65382,65383,65393,65438,65440,65471,65474,65480,65482,65488,65490,65496,65498,65501,65504,65505,65506,65509,65511,65529,65532,65533,65792,65795,66045,66046,66272,66273,66422,66427,66463,66464,66512,66513,66720,66730,67671,67672,67871,67872,68097,68100,68101,68103,68108,68112,68152,68155,68159,68160,68176,68184,68325,68327,68336,68342,68343,68409,68416,68900,68904,68912,68922,68928,68938,68969,68974,68975,69291,69293,69294,69328,69329,69370,69376,69446,69457,69506,69510,69632,69635,69637,69688,69702,69703,69705,69710,69714,69734,69744,69745,69747,69749,69750,69759,69760,69763,69808,69819,69821,69822,69826,69827,69837,69838,69872,69882,69888,69891,69927,69941,69942,69952,69956,69957,69959,70003,70004,70005,70006,70016,70019,70067,70081,70085,70087,70088,70089,70093,70094,70096,70106,70107,70108,70109,70112,70188,70200,70202,70203,70205,70206,70207,70209,70210,70313,70314,70367,70379,70384,70394,70400,70404,70405,70413,70415,70417,70419,70441,70442,70449,70450,70452,70453,70458,70459,70461,70462,70469,70471,70473,70475,70477,70478,70480,70481,70487,70488,70493,70494,70496,70498,70500,70502,70509,70512,70517,70528,70538,70539,70540,70542,70543,70544,70546,70582,70583,70584,70593,70594,70595,70597,70598,70599,70603,70604,70608,70609,70610,70611,70614,70615,70617,70625,70627,70709,70727,70731,70735,70736,70746,70748,70750,70751,70832,70852,70864,70874,71087,71094,71096,71105,71106,71108,71110,71113,71128,71132,71134,71216,71233,71235,71248,71258,71264,71277,71339,71352,71360,71370,71376,71396,71453,71468,71472,71482,71484,71487,71724,71739,71904,71914,71936,71943,71945,71946,71948,71956,71957,71959,71960,71984,71990,71991,71993,71995,71998,71999,72e3,72001,72002,72004,72007,72016,72026,72145,72152,72154,72161,72162,72163,72164,72165,72193,72203,72243,72250,72251,72255,72256,72257,72261,72262,72263,72264,72273,72284,72330,72346,72349,72350,72353,72355,72448,72458,72544,72552,72688,72698,72751,72759,72760,72768,72769,72774,72784,72794,72816,72817,72818,72850,72872,72873,72887,73009,73015,73018,73019,73020,73022,73023,73030,73031,73032,73040,73050,73098,73103,73104,73106,73107,73112,73120,73130,73184,73194,73440,73458,73459,73463,73465,73472,73474,73475,73476,73489,73490,73524,73531,73534,73538,73539,73541,73552,73562,73563,73693,73697,73727,73728,74864,74869,78424,78427,78430,78466,78467,78470,78471,78472,78473,78474,78713,78714,78716,78895,78896,78903,78904,78905,78908,78909,78910,78911,78912,78913,78919,78934,83406,83407,83408,90368,90398,90416,90426,92768,92778,92782,92784,92864,92874,92912,92917,92918,92976,92983,92986,92996,92997,93008,93018,93550,93552,93562,93847,93849,94031,94032,94033,94088,94095,94099,94176,94180,94181,94192,94194,94196,94199,94208,101120,101632,101663,101760,101875,110592,110883,110898,110899,110928,110931,110933,110934,110948,110952,110960,111356,113821,113823,113824,113828,118e3,118010,118528,118574,118576,118599,119141,119146,119149,119171,119173,119180,119210,119214,119362,119365,120782,120832,121344,121399,121403,121453,121461,121462,121476,121477,121479,121483,121499,121504,121505,121520,122880,122887,122888,122905,122907,122914,122915,122917,122918,122923,123023,123024,123184,123191,123200,123210,123566,123567,123628,123632,123642,123647,123648,124140,124144,124154,124398,124400,124401,124411,124643,124644,124646,124647,124654,124656,124661,124662,125136,125143,125252,125259,125264,125274,125278,125280,126124,126125,126128,126129,126976,127232,127406,127462,127488,127877,127878,127900,127902,127925,127927,127932,127933,127938,127941,127943,127944,127946,127949,127995,128e3,128066,128068,128070,128081,128102,128121,128124,128125,128129,128132,128133,128136,128143,128144,128145,128146,128160,128161,128162,128163,128164,128165,128170,128171,128175,128176,128177,128179,128256,128263,128279,128293,128306,128330,128372,128374,128378,128379,128400,128401,128405,128407,128468,128476,128500,128506,128581,128584,128587,128592,128630,128633,128636,128640,128675,128676,128692,128695,128704,128705,128716,128717,128768,128884,128887,128891,128896,128981,129024,129292,129293,129295,129296,129304,129312,129318,129319,129328,129338,129340,129343,129399,129400,129461,129463,129464,129466,129467,129468,129485,129488,129489,129502,129536,129624,129731,129734,129776,129785,129792,130032,130042,130048,131070,131072,196606,196608,262142,917505,917506,917536,917632,917760,918e3],cc=[1,15,4,0,2,1,6,22,39,11,38,37,11,39,36,19,11,38,30,27,30,41,35,30,11,22,11,36,38,19,11,36,15,18,11,1,5,1,3,36,37,38,11,39,11,15,11,37,38,11,16,11,39,11,36,11,16,11,16,11,16,11,1,3,1,11,30,11,1,11,30,26,11,38,11,1,26,1,11,1,11,1,22,1,11,25,11,25,11,35,11,37,30,11,1,22,1,22,11,1,35,37,35,11,1,11,22,11,1,35,11,1,11,1,11,1,11,35,11,1,11,1,11,1,11,35,11,1,11,30,22,11,1,38,11,1,11,1,11,1,11,1,11,1,11,35,11,1,11,1,35,1,11,1,11,1,11,1,11,1,15,35,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,37,11,37,11,38,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,35,1,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,38,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,1,11,1,11,1,11,1,11,1,11,35,11,38,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,16,11,1,16,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,37,11,1,11,1,11,1,11,1,11,1,11,35,11,1,11,1,11,1,11,38,11,1,11,35,15,11,1,11,1,11,1,11,35,11,16,11,16,3,16,15,3,22,3,11,22,11,1,11,35,11,15,1,11,1,11,1,36,18,36,18,1,11,1,15,1,15,1,11,1,11,1,11,15,11,1,11,16,15,16,11,3,11,1,11,35,15,11,1,11,1,11,1,11,1,11,1,11,1,11,1,35,1,11,31,33,32,11,1,11,15,11,26,11,15,11,36,18,11,15,11,1,11,1,15,11,1,11,1,11,1,15,34,11,15,11,15,38,11,1,11,35,11,22,15,16,11,22,11,1,3,1,35,11,1,11,1,11,1,11,1,11,22,35,11,35,11,1,11,1,11,1,11,1,35,11,35,11,1,11,1,3,11,1,10,1,43,10,11,15,13,15,28,15,28,1,28,15,1,11,1,11,35,11,13,1,42,11,1,11,15,35,11,35,11,15,11,1,11,1,11,1,11,1,11,1,11,1,3,1,3,1,11,16,11,15,3,15,8,1,9,1,26,3,26,14,11,39,36,39,36,39,11,29,15,0,1,3,37,11,39,11,34,11,30,36,18,34,11,15,37,15,11,15,7,11,1,11,36,18,11,36,18,11,38,37,38,37,38,37,38,37,38,37,38,1,11,37,11,37,11,38,11,38,11,29,11,36,18,36,18,11,28,11,36,18,11,28,11,28,11,28,11,28,11,28,20,28,11,28,11,28,11,28,11,28,11,28,11,28,11,28,11,28,11,28,11,28,11,28,11,28,11,28,20,28,11,28,11,28,20,11,39,11,22,28,11,36,18,36,18,36,18,36,18,36,18,36,18,36,18,11,36,18,11,36,18,36,18,36,18,36,18,36,18,11,15,11,36,18,36,18,36,18,36,18,36,18,36,18,36,18,36,18,36,18,36,18,36,18,11,36,18,36,18,11,36,18,11,1,11,22,15,11,22,15,11,15,11,1,11,1,39,15,11,26,36,15,11,39,11,39,36,18,36,18,36,18,36,18,15,22,11,15,11,15,11,14,15,11,26,15,36,15,11,15,11,15,11,22,36,19,36,19,36,19,36,19,26,11,28,11,28,11,28,11,28,15,18,28,34,28,36,18,36,18,36,18,36,18,36,18,28,36,18,36,18,36,18,36,18,34,36,18,28,1,28,1,28,34,28,11,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,11,1,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,28,34,28,11,28,11,28,11,28,11,28,34,28,11,28,11,28,11,28,34,28,11,28,11,15,11,15,22,15,11,35,11,1,11,1,11,1,11,1,11,15,11,1,11,1,11,1,11,1,11,1,11,37,11,16,22,11,1,11,1,11,15,35,11,1,11,16,11,1,35,11,1,15,11,1,11,31,11,1,10,1,43,28,15,28,11,15,13,11,28,11,1,11,35,11,13,1,11,15,1,15,1,11,13,11,28,15,11,1,11,1,11,1,11,1,11,1,11,1,11,1,15,11,1,11,1,15,1,11,35,11,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,23,24,11,33,11,32,11,28,11,25,1,25,11,25,11,25,11,25,11,25,11,25,11,25,11,18,36,11,37,11,1,18,34,22,36,18,29,11,3,1,3,1,3,1,3,1,3,1,3,1,3,1,28,36,18,36,18,36,18,36,18,36,18,36,18,36,18,36,18,28,36,18,28,18,28,18,11,34,22,28,36,18,36,18,36,18,28,11,28,38,37,28,11,7,11,22,28,38,37,28,36,18,28,18,28,18,28,34,28,22,28,36,28,18,28,36,28,18,28,36,18,36,18,34,28,34,28,34,28,11,28,11,28,11,28,11,28,11,37,38,28,38,11,1,17,11,15,11,1,11,1,11,1,11,15,11,15,11,35,11,15,11,15,11,1,11,1,11,1,11,1,11,1,11,15,11,1,11,15,29,11,15,11,1,11,35,11,35,11,1,26,11,1,26,11,15,11,1,11,1,11,1,11,1,12,10,1,43,15,28,11,28,13,1,10,1,10,11,3,1,11,1,11,35,15,1,11,35,11,35,11,1,11,1,11,35,15,11,1,11,1,11,16,11,1,11,1,11,15,11,15,1,11,1,35,11,16,11,15,11,1,15,11,15,11,1,11,1,11,15,11,1,11,35,11,1,11,10,11,10,11,10,11,10,11,10,11,10,11,1,15,1,11,1,11,1,43,11,13,11,1,11,15,13,10,1,11,1,11,1,11,13,11,13,11,13,11,13,10,11,28,1,11,1,11,1,11,1,11,1,43,12,1,28,11,28,11,1,11,1,11,15,11,35,15,11,1,11,1,11,35,11,1,11,1,16,15,22,11,15,11,1,11,1,15,11,35,11,16,11,1,11,35,11,35,11,1,11,35,11,15,11,1,11,35,11,10,11,10,11,10,11,10,11,10,1,11,1,11,1,43,12,1,12,1,15,11,13,11,1,11,1,11,16,11,1,11,1,11,1,11,1,16,11,15,16,11,1,11,1,11,1,15,11,16,15,11,16,11,1,11,35,11,1,11,1,11,15,11,35,11,16,22,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,1,11,1,11,1,11,35,11,35,11,13,15,1,15,11,1,12,1,10,11,10,1,11,1,43,15,28,13,1,11,37,11,15,11,15,11,36,18,11,18,11,36,18,36,18,11,36,18,11,36,3,36,18,3,36,18,36,18,1,11,1,11,36,18,11,13,1,13,11,35,11,15,11,35,11,1,15,11,1,15,11,15,11,35,11,15,35,11,15,11,1,11,1,11,1,11,34,3,11,1,34,28,11,28,11,28,11,28,11,28,11,34,11,34,11,34,11,34,11,28,11,1,15,1,11,35,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,1,11,1,11,1,11,1,11,15,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,1,11,1,35,11,38,11,1,35,11,1,11,35,11,1,11,1,11,1,11,1,11,1,11,1,11,35,11,36,11,37,11,37,11,28,11,28,40,28,20,28,11,28,11,28,11,28,20,28,20,28,20,28,21,28,20,28,20,28,20,28,20,28,20,28,20,28,20,28,20,28,11,28,11,28,11,28,20,28,11,28,11,28,11,28,11,28,11,28,20,28,20,28,20,28,20,28,11,28,11,28,20,28,20,11,39,34,11,28,20,28,20,28,20,28,20,28,11,28,11,28,11,28,11,20,28,20,28,20,28,20,28,20,28,20,28,20,28,20,28,20,28,20,28,20,28,20,28,11,28,20,28,20,28,11,35,11,28,11,28,11,28,11,1,11,1,11,1,11],lc=[4352,8361,8986,9001,9193,9200,9203,9725,9748,9776,9800,9855,9866,9875,9889,9898,9917,9924,9934,9940,9962,9970,9973,9978,9981,9989,9994,10024,10060,10062,10067,10071,10133,10160,10175,11035,11088,11093,11904,11931,12032,12272,12353,12441,12549,12593,12688,12783,12832,12880,42128,43360,44032,63744,65040,65072,65108,65128,65281,65474,65482,65490,65498,65504,65512,94176,94192,94208,101631,101760,110576,110581,110589,110592,110898,110928,110933,110948,110960,119552,119648,126980,127183,127374,127377,127488,127504,127552,127568,127584,127744,127789,127799,127870,127904,127951,127968,127988,127992,128064,128066,128255,128331,128336,128378,128405,128420,128507,128640,128716,128720,128725,128732,128747,128756,128992,129008,129292,129340,129351,129648,129664,129678,129736,129741,129759,129775,131072,196608],uc=[4448,8362,8988,9003,9197,9201,9204,9727,9750,9784,9812,9856,9872,9876,9890,9900,9919,9926,9935,9941,9963,9972,9974,9979,9982,9990,9996,10025,10061,10063,10070,10072,10136,10161,10176,11037,11089,11094,11930,12020,12246,12351,12439,12544,12592,12687,12774,12831,12872,42125,42183,43389,55204,64256,65050,65107,65127,65132,65471,65480,65488,65496,65501,65511,65519,94181,94199,101590,101663,101875,110580,110588,110591,110883,110899,110931,110934,110952,111356,119639,119671,126981,127184,127375,127387,127491,127548,127561,127570,127590,127777,127798,127869,127892,127947,127956,127985,127989,128063,128065,128253,128318,128335,128360,128379,128407,128421,128592,128710,128717,128723,128729,128736,128749,128765,129004,129009,129339,129350,129536,129661,129675,129735,129737,129757,129771,129785,196606,262142];function dc(e){let t=0,n=sc.length-1;for(;t<n;){let r=t+n+1>>1;sc[r]<=e?t=r:n=r-1}return oc[cc[t]]}function fc(e){let t=0,n=lc.length-1;if(n<0||e<lc[0])return!1;for(;t<n;){let r=t+n+1>>1;lc[r]<=e?t=r:n=r-1}return e<uc[t]}function pc(e,t){let n=dc(e);if(n===`OP`)return!0;let r=dc(t),i=n===`AL`||n===`HL`,a=r===`AL`||r===`HL`;return!!(i&&(a||r===`NU`||r===`PR`||r===`PO`)||a&&(n===`NU`||n===`PR`||n===`PO`)||n===`PR`&&(r===`ID`||r===`EB`||r===`EM`)||(n===`ID`||n===`EB`||n===`EM`)&&r===`PO`||n===`NU`&&(r===`NU`||r===`PO`||r===`PR`)||r===`NU`&&(n===`PO`||n===`PR`||n===`HY`||n===`IS`)||(i||n===`NU`)&&r===`OP`&&!fc(t)||n===`CP`&&!fc(e)&&(a||r===`NU`))}function mc(e){return e===`my`||e===`bo`}function hc(e){return e>=3584&&e<=3711||e>=3712&&e<=3839||e>=6016&&e<=6143||e>=4096&&e<=4255||e>=43616&&e<=43647||e>=43488&&e<=43519||e>=3840&&e<=4095}function gc(e){return e===3633||e>=3635&&e<=3642||e>=3655&&e<=3662||e===3761||e>=3763&&e<=3772||e>=3784&&e<=3790||e>=6068&&e<=6099||e===6109}function _c(e){return e<=3711?`th`:e<=3839?`lo`:e<=4095?`bo`:e<=4255?`my`:e<=6143?`km`:`my`}function vc(e){for(let t of e)if(hc(t.codePointAt(0)))return!0;return!1}function yc(e){for(let t of e){let e=t.codePointAt(0);if(hc(e))return mc(_c(e))}return!1}function bc(e){let t=!1;for(let n of e){let e=n.codePointAt(0);if(hc(e)){if(mc(_c(e)))return!1;t=!0}}return t}const xc=new Map;function Sc(e){let t=xc.get(e);if(t!==void 0)return t;let n=null;try{typeof Intl<`u`&&typeof Intl.Segmenter==`function`&&(n=new Intl.Segmenter(e,{granularity:`word`}))}catch{n=null}return xc.set(e,n),n}function Cc(e){let t=Sc(e);return t?e=>t.segment(e):null}function wc(e){if(!vc(e))return[];let t=[],n=e.length,r=0;for(;r<n;){let i=e.codePointAt(r),a=i>65535?2:1;if(!hc(i)){r+=a;continue}let o=_c(i),s=mc(o),c=r+a;for(;c<n;){let t=e.codePointAt(c);if(!hc(t)||mc(_c(t))!==s)break;c+=t>65535?2:1}let l=e.slice(r,c);if(s)for(let e of Mc(l))t.push(r+e);else{let e=Cc(o);if(e){let n=[];try{for(let t of e(l))t.index>0&&(t.isWordLike??!0)&&n.push(r+t.index);for(let e of n)t.push(e)}catch{}}}r=c}return t}function Tc(e){if(!vc(e))return[];let t=[],n=e.length,r=e.codePointAt(0),i=r>65535?2:1;for(;i<n;){let n=e.codePointAt(i),a=n>65535?2:1;hc(r)!==hc(n)&&!Ec(r)&&!Ec(n)&&t.push(i),r=n,i+=a}return t}function Ec(e){return e===32||e===9||e===10||e===13||e===12288||e===160||e===8199||e===8239||e===8288||e===65279}function Dc(e,t){if(!vc(e))return[];let n=e.length,r=new Set(wc(e)),i=new Set(Mc(e)),a=e=>{i.has(e)&&r.add(e)};for(let t of Tc(e))a(t);if(t?.cjk){let t=e.codePointAt(0),r=t>65535?2:1;for(;r<n;){let n=e.codePointAt(r);(ac(n)||ac(t))&&a(r),t=n,r+=n>65535?2:1}}let o=t?.kinsoku,s=o!=null&&o.enabled!==!1,c=[];for(let t of r)if(!(t<=0||t>=n)){if(s){let n=e.codePointAt(t),r=Oc(e,t);if(r!==void 0&&o.lineEndForbidden.has(r)||o.lineStartForbidden.has(n))continue}c.push(t)}return c.sort((e,t)=>e-t),c}function Oc(e,t){if(t<=0)return;let n=e.charCodeAt(t-1);if(n>=56320&&n<=57343&&t>=2){let n=e.charCodeAt(t-2);if(n>=55296&&n<=56319)return e.codePointAt(t-2)}return n}function kc(e,t,n,r,i,a=!1){let o=e.length;if(n>=o)return n;if(a){if(i(e.slice(n,o))<=r)return o;let a=0,s=t.length-1,c=n;for(;a<=s;){let l=a+s>>1,u=t[l];u<=n?a=l+1:u>=o?s=l-1:i(e.slice(n,u))<=r?(c=u,a=l+1):s=l-1}return c}let s=n;for(let a of t)a<=n||a>=o||i(e.slice(n,a))<=r&&(s=a);return i(e.slice(n,o))<=r&&(s=o),s}let Ac;function jc(){if(Ac!==void 0)return Ac;let e=null;try{typeof Intl<`u`&&typeof Intl.Segmenter==`function`&&(e=new Intl.Segmenter(void 0,{granularity:`grapheme`}))}catch{e=null}return Ac=e,e}function Mc(e){let t=jc();if(t)try{let n=[];for(let r of t.segment(e))r.index>0&&n.push(r.index);return n}catch{}let n=[];for(let t=0;t<e.length;){let r=e.codePointAt(t);t+=r>65535?2:1,t<e.length&&n.push(t)}return n}const Nc=[`U`,`R`,`Tu`,`Tr`],Pc=[0,167,168,169,170,174,175,177,178,188,191,215,216,247,248,746,748,4352,4608,5121,5760,6320,6400,8214,8215,8216,8218,8220,8222,8224,8226,8240,8242,8251,8253,8258,8259,8263,8266,8273,8274,8293,8294,8413,8417,8418,8421,8448,8450,8451,8458,8463,8464,8467,8469,8470,8472,8478,8484,8485,8486,8487,8488,8489,8490,8494,8495,8501,8512,8517,8523,8524,8526,8527,8586,8588,8592,8734,8735,8756,8758,8960,8968,8972,8992,8996,9001,9003,9004,9085,9115,9150,9166,9167,9168,9169,9180,9186,9251,9252,9472,9632,9754,9760,10088,10102,10132,11026,11056,11088,11098,11159,11160,11192,11218,11219,11244,11248,11264,11856,11858,11904,12289,12291,12296,12306,12308,12320,12336,12337,12353,12354,12355,12356,12357,12358,12359,12360,12361,12362,12387,12388,12419,12420,12421,12422,12423,12424,12430,12431,12437,12439,12443,12445,12448,12449,12450,12451,12452,12453,12454,12455,12456,12457,12458,12483,12484,12515,12516,12517,12518,12519,12520,12526,12527,12533,12535,12540,12541,12583,12584,12724,12728,12731,12732,12784,12800,13055,13144,13179,13184,42192,43360,43392,44032,55296,57344,64256,65040,65056,65072,65097,65104,65107,65112,65113,65119,65123,65127,65136,65281,65282,65288,65290,65292,65293,65294,65295,65306,65308,65311,65312,65339,65340,65341,65342,65343,65344,65371,65377,65504,65507,65508,65512,65520,65529,65532,65534,67968,68e3,71040,71168,72192,72384,77824,83584,94176,101888,110576,110898,110899,110928,110931,110933,110934,110948,110952,111360,118464,118736,118784,119296,119520,119680,120832,121520,126976,127488,127490,129024,129280,129792,131072,196606,196608,262142,983040,1048574,1048576,1114110],Fc=[1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,3,1,3,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,3,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,2,0,3,0,3,0,3,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,2,0,3,0,2,0,2,0,2,0,2,0,2,0,2,0,1,0,1,0,1,0,1,0,1,0,1,2,0,1,3,0,1,0,1,2,0,3,0,2,1,2,0,3,1,2,0,3,0,3,0,3,0,3,1,0,3,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,1,0,2,0,2,0,2,0,2,0,1,0,1,0,1,0,1,0,1,0,2,0,1,0,1,0,1,0,1,0,1,0,1];function Ic(e){let t=0,n=Pc.length-1;for(;t<n;){let r=t+n+1>>1;Pc[r]<=e?t=r:n=r-1}return Fc[t]}function Lc(e){return Nc[Ic(e)]}function Rc(e){return zc.get(e)??null}const zc=new Map([[65292,65040],[12289,65041],[12290,65042]]);function Bc(e){return Vc.get(e)??null}const Vc=new Map([[65288,65077],[65289,65078],[65371,65079],[65373,65080],[12308,65081],[12309,65082],[12304,65083],[12305,65084],[12298,65085],[12299,65086],[12296,65087],[12297,65088],[12300,65089],[12301,65090],[12302,65091],[12303,65092],[12310,65047],[12311,65048]]),Hc=new Set([65307]);function Uc(e){return Hc.has(e)}const Wc=new WeakMap;function Gc(e){let t=e.canvas,n=t?.ownerDocument?.defaultView?.HTMLCanvasElement;return typeof n==`function`&&t instanceof n||typeof HTMLCanvasElement<`u`&&t instanceof HTMLCanvasElement?t:null}function Kc(e,t){return e.replace(/(^|\\s)\\d*\\.?\\d+(?:px|pt|pc|in|cm|mm|q|em|rem|%)(?:\\/[^\\s]+)?(?=\\s)/i,`$1${t}`)}function qc(e,t=!0){let n=e.trim();return[...n===``||n.toLowerCase()===`normal`?[]:n.split(`,`).map(e=>e.trim()).filter(e=>!/^([\"'])vert\\1(?:\\s+(?:on|off|\\d+))?$/i.test(e)),`\"vert\" ${+!!t}`].join(`, `)}function Jc(e){try{let t=e.ownerDocument?.defaultView,n=t?.getComputedStyle?t.getComputedStyle(e):typeof getComputedStyle==`function`?getComputedStyle(e):null;if(n?.fontFeatureSettings)return n.fontFeatureSettings}catch{}return e.style.fontFeatureSettings}function Yc(e,t){if(e.isConnected)return t();let n=e.ownerDocument??(typeof document>`u`?null:document),r=n?.body??n?.documentElement;if(!r)return t();let i=e.parentNode,a=e.nextSibling,o=e.style,s={position:o.position,left:o.left,top:o.top,opacity:o.opacity,pointerEvents:o.pointerEvents};Object.assign(o,{position:`fixed`,left:`-99999px`,top:`0`,opacity:`0`,pointerEvents:`none`}),r.appendChild(e);let c=!1;try{return t()}catch(e){throw c=!0,e}finally{let t;try{if(i){let t=a?.parentNode===i?a:null;i.insertBefore(e,t)}else e.remove()}catch(n){t=n;try{e.remove()}catch{}}finally{Object.assign(o,s)}if(t!==void 0&&!c)throw t}}function Xc(e,t){let n=Gc(e);return n===null?t():Yc(n,t)}function Zc(e){let t=Wc.get(e);if(t)return t;let n=e.createElement(`canvas`);n.width=256,n.height=256,n.setAttribute(`aria-hidden`,`true`),Object.assign(n.style,{position:`fixed`,left:`-99999px`,top:`0`,opacity:`0`,pointerEvents:`none`});let r={canvas:n,cache:new Map,epoch:0},i=()=>{r.epoch+=1,r.cache.clear()};return e.fonts?.addEventListener?.(`loadingdone`,i),e.fonts?.addEventListener?.(`loadingerror`,i),Wc.set(e,r),r}function Qc(e,t){let{width:n,height:r}=e.canvas,i=e.getImageData(0,0,n,r).data,a=new Uint8ClampedArray(n*r),o=n,s=r,c=-1,l=-1,u=0,d=0,f=0;for(let e=0;e<r;e+=1)for(let t=0;t<n;t+=1){let r=i[(e*n+t)*4+3];a[e*n+t]=r,r!==0&&(o=Math.min(o,t),s=Math.min(s,e),c=Math.max(c,t),l=Math.max(l,e),u+=r,d+=t*r,f+=e*r)}if(c<o||l<s||u===0)return null;let p=e.measureText(t),m=e=>typeof e==`number`&&Number.isFinite(e)?e:0;return{alpha:a,geometry:[o,s,c,l,d/u,f/u],metrics:[m(p.width),m(p.actualBoundingBoxLeft),m(p.actualBoundingBoxRight),m(p.actualBoundingBoxAscent),m(p.actualBoundingBoxDescent)]}}function $c(e,t,n){let r=e.canvas;r.style.fontFeatureSettings=n,e.font=e.font,e.clearRect(0,0,r.width,r.height);let i=String.fromCodePoint(t);return e.fillText(i,r.width/2,r.height/2),Qc(e,i)}function el(e,t){let n=0,r=Math.min(e.length,t.length);for(let i=0;i<r;i+=1)n+=Math.abs(e[i]-t[i]);return n}function tl(e,t,n,r){let i=(e,t,n,r)=>{let i=Math.max(el(e,t),el(n,r));return Math.min(el(e,n),el(e,r),el(t,n),el(t,r))>i};return i(e.alpha,t.alpha,n.alpha,r.alpha)||i(e.geometry,t.geometry,n.geometry,r.geometry)||i(e.metrics,t.metrics,n.metrics,r.metrics)}function nl(e,t){let n=Gc(e);if(n===null||typeof document>`u`)return!1;let r=n.ownerDocument??document,i=Zc(r),a=Jc(n),o=`${i.epoch}:${Kc(e.font,`<size>`)}:${a}:${t}`,s=i.cache.get(o);if(s!==void 0)return s;let c=!1,l=r.body??r.documentElement;if(!l)return!1;let u=i.canvas.isConnected;u||l.appendChild(i.canvas);let d=i.canvas.getContext(`2d`,{willReadFrequently:!0});if(d!==null){let n=i.canvas.style.fontFeatureSettings;try{d.font=Kc(e.font,`200px`),d.fillStyle=`#000`,d.textAlign=`center`,d.textBaseline=`middle`;let n=qc(a,!1),r=qc(a,!0),i=$c(d,t,n),o=$c(d,t,n),s=$c(d,t,r),l=$c(d,t,r);c=i!==null&&o!==null&&s!==null&&l!==null&&tl(i,o,s,l)}catch{c=!1}finally{i.canvas.style.fontFeatureSettings=n,d.font=d.font,d.clearRect(0,0,i.canvas.width,i.canvas.height),u||i.canvas.remove()}}return i.cache.set(o,c),c}function rl(e,t){let n=e.canvas;return n?.style?Xc(e,()=>{let r=n.style,i=r.fontFeatureSettings;r.fontFeatureSettings=qc(Jc(n)),e.font=e.font;try{return t()}finally{r.fontFeatureSettings=i,e.font=e.font}}):t()}function il(e,t){return rl(e,()=>{let n=e.textAlign,r=e.textBaseline;e.textAlign=`center`,e.textBaseline=`middle`;try{let n=e.measureText(t),r=Number.isFinite(n.width)?Math.max(0,n.width):0,i=typeof n.actualBoundingBoxAscent==`number`&&Number.isFinite(n.actualBoundingBoxAscent)&&typeof n.actualBoundingBoxDescent==`number`&&Number.isFinite(n.actualBoundingBoxDescent);return{advancePx:r,inkBeforePx:i?n.actualBoundingBoxAscent:0,inkAfterPx:i?n.actualBoundingBoxDescent:0,cellAdvancePx:r,originInCellPx:r/2}}finally{e.textAlign=n,e.textBaseline=r}})}const al=e=>e===32||e===12288;function ol(e,t,n={}){if(Math.abs(t)<=.5)return null;let r=n.firstContentSi??0,i=n.lastDrawnSi??e.length-1,a=n.minPerGap??-1/0,o=n.isGapChar??ac,s=n.isWhitespace??al,c=n.seaClusterGaps??!1,l=[];for(let t=r;t<e.length;t++){let n=e[t];if(n===void 0)continue;if(n.text===void 0){l.push({si:t,off:0,ws:!1});continue}let r=0;for(let e of n.text){let n=e.codePointAt(0);l.push({si:t,off:r,cp:n,ws:s(n)}),r++}}let u=-1,d=-1;for(let e=0;e<l.length;e++)l[e].ws||(u===-1&&(u=e),d=e);if(u===-1||u===d)return null;let f=Array(l.length).fill(!1),p=0;for(let e=u;e<d;e++){let t=l[e];if(t.si===i)continue;if(t.ws){f[e]=!0,p++;continue}let n=l[e+1];if(n.ws)continue;let r=t.cp,a=n.cp;(r!==void 0&&o(r)||a!==void 0&&o(a)||c&&r!==void 0&&a!==void 0&&hc(r)&&hc(a)&&!gc(a))&&(f[e]=!0,p++)}if(p===0)return null;let m=t/p;t<0&&m<a&&(m=a);let h=new Map;for(let e of l)e.cp!==void 0&&h.set(e.si,(h.get(e.si)??0)+1);let g=new Map;for(let e=0;e<l.length;e++){if(!f[e])continue;let t=l[e],n=g.get(t.si);n||(n={splitBefore:[],trailingGap:!1,internalStretch:0},g.set(t.si,n));let r=h.get(t.si)??0;t.cp===void 0||t.off===r-1?n.trailingGap=!0:(n.splitBefore.push(t.off+1),n.internalStretch+=m)}return{perGap:m,perSeg:g}}const sl=[[1e3,`M`],[900,`CM`],[500,`D`],[400,`CD`],[100,`C`],[90,`XC`],[50,`L`],[40,`XL`],[10,`X`],[9,`IX`],[5,`V`],[4,`IV`],[1,`I`]];function cl(e){let t=``,n=e;for(let[e,r]of sl)for(;n>=e;)t+=r,n-=e;return t}function ll(e,t){let n=t.length,r=Math.floor((e-1)/n)+1;return t[(e-1)%n].repeat(r)}const ul=Array.from({length:26},(e,t)=>String.fromCharCode(65+t)),dl=`أ.ب.ت.ث.ج.ح.خ.د.ذ.ر.ز.س.ش.ص.ض.ط.ظ.ع.غ.ف.ق.ك.ل.م.ن.ه.و.ي`.split(`.`),fl=`أ.ب.ج.د.ه.و.ز.ح.ط.ي.ك.ل.م.ن.س.ع.ف.ص.ق.ر.ش.ت.ث.خ.ذ.ض.غ.ظ`.split(`.`),pl=[`א`,`ב`,`ג`,`ד`,`ה`,`ו`,`ז`,`ח`,`ט`,`י`,`כ`,`ל`,`מ`,`נ`,`ס`,`ע`,`פ`,`צ`,`ק`,`ר`,`ש`,`ת`],ml=[...xl(1072,1080),...xl(1082,1087),...xl(1088,1097),`ы`,`э`,`ю`,`я`],hl=[...xl(1040,1048),...xl(1050,1055),...xl(1056,1065),`Ы`,`Э`,`Ю`,`Я`],gl=[`ก`,`ข`,`ค`,...xl(3591,3619),`ล`,...xl(3623,3630)],_l=[`ㄱ`,`ㄴ`,`ㄷ`,`ㄹ`,`ㅁ`,`ㅂ`,`ㅅ`,`ㅇ`,`ㅈ`,`ㅊ`,`ㅋ`,`ㅌ`,`ㅍ`,`ㅎ`],vl=[`가`,`나`,`다`,`라`,`마`,`바`,`사`,`아`,`자`,`차`,`카`,`타`,`파`,`하`],yl=xl(2325,2361),bl=[...xl(2309,2324),`अं`,`अः`];function xl(e,t){let n=[];for(let r=e;r<=t;r++)n.push(String.fromCodePoint(r));return n}const Sl=`ア.イ.ウ.エ.オ.カ.キ.ク.ケ.コ.サ.シ.ス.セ.ソ.タ.チ.ツ.テ.ト.ナ.ニ.ヌ.ネ.ノ.ハ.ヒ.フ.ヘ.ホ.マ.ミ.ム.メ.モ.ヤ.ユ.ヨ.ラ.リ.ル.レ.ロ.ワ.ヰ.ヱ.ヲ.ン`.split(`.`),Cl=[...xl(65393,65436),`ヲ`,`ン`];function wl(e){return e<=20?String.fromCodePoint(9312+(e-1)):String(e)}function Tl(e,t){return String(e).split(``).map(e=>t[e.charCodeAt(0)-48]).join(``)}const El=xl(65296,65305),Dl=xl(3664,3673),Ol=xl(2406,2415),kl=[`〇`,`一`,`二`,`三`,`四`,`五`,`六`,`七`,`八`,`九`],Al=[`영`,`일`,`이`,`삼`,`사`,`오`,`육`,`칠`,`팔`,`구`],jl=[`零`,`一`,`二`,`三`,`四`,`五`,`六`,`七`,`八`,`九`],Ml=[`○`,`一`,`二`,`三`,`四`,`五`,`六`,`七`,`八`,`九`];function Nl(e,t){if(e<10)return t[e];if(e<100){let n=Math.floor(e/10),r=e%10,i=n===1?`十`:t[n]+`十`;return r===0?i:i+t[r]}return Tl(e,t)}function Pl(e,t){switch(t){case`upperRoman`:return e>=1?cl(e):String(e);case`lowerRoman`:return e>=1?cl(e).toLowerCase():String(e);case`upperLetter`:return e>=1?ll(e,ul):String(e);case`lowerLetter`:return e>=1?ll(e,ul).toLowerCase():String(e);case`arabicAlpha`:return e>=1?ll(e,dl):String(e);case`arabicAbjad`:return e>=1?ll(e,fl):String(e);case`russianLower`:return e>=1?ll(e,ml):String(e);case`russianUpper`:return e>=1?ll(e,hl):String(e);case`thaiLetters`:return e>=1?ll(e,gl):String(e);case`chosung`:return e>=1?ll(e,_l):String(e);case`ganada`:return e>=1?ll(e,vl):String(e);case`hindiVowels`:return e>=1?ll(e,yl):String(e);case`hindiConsonants`:return e>=1?ll(e,bl):String(e);case`aiueoFullWidth`:return e>=1?ll(e,Sl):String(e);case`aiueo`:return e>=1?ll(e,Cl):String(e);case`decimalEnclosedCircle`:return e>=1?wl(e):String(e);case`hebrew1`:return e>=1?Rl(e):String(e);case`hebrew2`:return e>=1?zl(e):String(e);case`hex`:return e>=1?e.toString(16).toUpperCase():String(e);case`numberInDash`:return e>=1?`- ${e} -`:String(e);case`decimalZero`:return e>=1&&e<=9?`0${e}`:String(e);case`decimalFullWidth`:return e>=1?Tl(e,El):String(e);case`decimalHalfWidth`:return String(e);case`thaiNumbers`:return e>=1?Tl(e,Dl):String(e);case`hindiNumbers`:return e>=1?Tl(e,Ol):String(e);case`ideographDigital`:case`japaneseDigitalTenThousand`:return e>=1?Tl(e,kl):String(e);case`koreanDigital`:return e>=1?Tl(e,Al):String(e);case`koreanDigital2`:return e>=1?Tl(e,jl):String(e);case`taiwaneseDigital`:return e>=1?Tl(e,Ml):String(e);case`chineseCounting`:return e>=1?Nl(e,kl):String(e);case`taiwaneseCounting`:return e>=1?Nl(e,Ml):String(e);case`chineseCountingThousand`:return e>=1?Jl(e,Vl):String(e);case`taiwaneseCountingThousand`:return e>=1?Jl(e,Hl):String(e);case`chineseLegalSimplified`:return e>=1?Jl(e,Wl):String(e);case`ideographLegalTraditional`:return e>=1?Jl(e,Kl):String(e);case`japaneseCounting`:return e>=1?Jl(e,Bl):String(e);case`japaneseLegal`:return e>=1?Jl(e,Gl):String(e);case`koreanCounting`:return e>=1?Jl(e,Ul):String(e);case`koreanLegal`:return e>=1?Zl(e):String(e);default:return String(e)}}const Fl=[``,`א`,`ב`,`ג`,`ד`,`ה`,`ו`,`ז`,`ח`,`ט`],Il=[``,`י`,`כ`,`ל`,`מ`,`נ`,`ס`,`ע`,`פ`,`צ`],Ll=[``,`ק`,`ר`,`ש`,`ת`,`ך`,`ם`,`ן`,`ף`,`ץ`];function Rl(e){let t=``,n=e,r=Math.floor(n/1e3);n%=1e3;let i=Math.floor(n/100);if(n%=100,r>0&&(t+=Fl[r%10]),t+=Ll[i],n===15)return t+`טו`;if(n===16)return t+`טז`;let a=Math.floor(n/10),o=n%10;return t+=Il[a],t+=Fl[o],t}function zl(e){let t=pl.length,n=Math.floor((e-1)/t);return pl[e-t*n-1]+`ת`.repeat(n)}const Bl={digits:jl,ten:`十`,hundred:`百`,thousand:`千`,myriad:`万`,elideOne:!0,insertZero:!1},Vl={...Bl,elideOne:!1,insertZero:!0},Hl={...Vl},Ul={digits:[`영`,`일`,`이`,`삼`,`사`,`오`,`육`,`칠`,`팔`,`구`],ten:`십`,hundred:`백`,thousand:`천`,myriad:`만`,elideOne:!0,insertZero:!1},Wl={digits:[`零`,`壹`,`贰`,`叁`,`肆`,`伍`,`陆`,`柒`,`捌`,`玖`],ten:`拾`,hundred:`佰`,thousand:`仟`,myriad:`万`,elideOne:!1,insertZero:!0},Gl={digits:[`零`,`壱`,`弐`,`参`,`四`,`伍`,`六`,`七`,`八`,`九`],ten:`拾`,hundred:`百`,thousand:`阡`,myriad:`萬`,elideOne:!1,insertZero:!1},Kl={digits:[`零`,`壹`,`貳`,`參`,`肆`,`伍`,`陸`,`柒`,`捌`,`玖`],ten:`拾`,hundred:`佰`,thousand:`仟`,myriad:`萬`,elideOne:!1,insertZero:!1};function ql(e,t,n){let r=Math.floor(e/1e3)%10,i=Math.floor(e/100)%10,a=Math.floor(e/10)%10,o=e%10,s=[{digit:r,unit:t.thousand},{digit:i,unit:t.hundred},{digit:a,unit:t.ten},{digit:o,unit:``}],c=``,l=!1,u=!1;for(let{digit:e,unit:r}of s){if(e===0){l&&(u=!0);continue}u&&=(t.insertZero&&(c+=t.digits[0]),!1),n&&e===1&&r?c+=r:c+=t.digits[e]+r,l=!0}return c}function Jl(e,t){if(e>=1e8){let n=Math.floor(e/1e8),r=e%1e8,i=Jl(n,t)+`億`;return r===0?i:i+(t.insertZero&&r<1e7?t.digits[0]:``)+Jl(r,t)}let n=Math.floor(e/1e4),r=e%1e4,i=``;return n>0&&(i+=ql(n,t,t.elideOne)+t.myriad),r>0&&(t.insertZero&&n>0&&r<1e3&&(i+=t.digits[0]),i+=ql(r,t,t.elideOne)),i}const Yl=[``,`하나`,`둘`,`셋`,`넷`,`다섯`,`여섯`,`일곱`,`여덟`,`아홉`],Xl=[``,`열`,`스물`,`서른`,`마흔`,`쉰`,`예순`,`일흔`,`여든`,`아흔`];function Zl(e){if(e>=100)return String(e);let t=Math.floor(e/10),n=e%10;return Xl[t]+Yl[n]}const Ql={Arabic:`decimal`,ArabicDash:`numberInDash`,Hex:`hex`,Roman:`upperRoman`,roman:`lowerRoman`,ALPHABETIC:`upperLetter`,alphabetic:`lowerLetter`,ARABICABJAD:`arabicAbjad`,ARABICALPHA:`arabicAlpha`,HEBREW1:`hebrew1`,HEBREW2:`hebrew2`,HINDIARABIC:`hindiNumbers`,HINDILETTER1:`hindiVowels`,HINDILETTER2:`hindiConsonants`,THAIARABIC:`thaiNumbers`,THAILETTER:`thaiLetters`,CHOSUNG:`chosung`,GANADA:`ganada`,DBCHAR:`decimalFullWidth`,SBCHAR:`decimalHalfWidth`};function $l(e){let t=/\\\\\\*\\s+(\\S+)/g,n;for(;(n=t.exec(e))!==null;){let e=Ql[n[1]];if(e)return e}return null}const eu=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],tu=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],nu=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],ru=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],iu=e=>e<10?`0${e}`:`${e}`;function au(e){let t=/\\\\@\\s*\"([^\"]*)\"/.exec(e);if(t)return t[1];let n=/\\\\@\\s*(\\S+)/.exec(e);return n?n[1]:null}function ou(e,t){let n=t.getFullYear(),r=t.getMonth(),i=t.getDate(),a=t.getDay(),o=t.getHours(),s=o%12==0?12:o%12,c=t.getMinutes(),l=t.getSeconds(),u=o>=12,d=``,f=0,p=e.length;for(;f<p;){let t=e[f];if(t===`'`){f++;let t=``;for(;f<p;){if(e[f]===`'`){if(e[f+1]===`'`){t+=`'`,f+=2;continue}f++;break}t+=e[f++]}d+=t;continue}if(/[A-Za-z]/.test(t)){let u=f;for(;u<p&&e[u]===t;)u++;let m=e.slice(f,u).length,h=t.toLowerCase(),g=null;if(t===`y`||t===`Y`?g=m>=4?String(n).padStart(4,`0`):iu(n%100):t===`M`?g=m>=4?eu[r]:m===3?tu[r]:m===2?iu(r+1):String(r+1):h===`d`?g=m>=4?nu[a]:m===3?ru[a]:m===2?iu(i):String(i):t===`H`?g=m>=2?iu(o):String(o):t===`h`?g=m>=2?iu(s):String(s):t===`m`?g=m>=2?iu(c):String(c):t===`s`?g=m>=2?iu(l):String(l):(h===`a`||h===`p`)&&(g=null),g!==null){d+=g,f=u;continue}if(!(h===`a`||h===`p`))return null}let m=/^([AaPp])([Mm])?\\/([AaPp])([Mm])?/.exec(e.slice(f));if(m){let e=m[2]!==void 0;d+=e?u?`PM`:`AM`:u?`P`:`A`,f+=m[0].length;continue}d+=t,f++}return d}const su=[[e=>e.includes(`meiryo ui`)||e.includes(`meiryoui`)||e.includes(`メイリオ`)&&e.includes(`ui`),{asc:2171*1.3/2048,desc:430*1.3/2048,eaOnly:!0}],[e=>e.includes(`meiryo`)||e.includes(`メイリオ`),{asc:2210/2048,desc:1059/2048}],[e=>!e.includes(`ui`)&&(e.includes(`yu mincho`)||e.includes(`yumincho`)||e.includes(`游明朝`)||e.includes(`yu gothic`)||e.includes(`yugothic`)||e.includes(`游ゴシック`)),{asc:1802*1.3/2048,desc:455*1.3/2048,eaOnly:!0}],[e=>e.includes(`sakkal majalla`)||e.includes(`majalla`),{asc:1810/2048,desc:1050/2048}],[e=>e===`times new roman`,{asc:1825/2048,desc:530/2048}],[e=>e===`arial`,{asc:1854/2048,desc:501/2048}]];function cu(e,t){if(!e)return null;let n=e.toLowerCase();for(let[e,r]of su)if(e(n)&&(t||!r.eaOnly))return r;return null}function lu(e,t=!1){let n=cu(e,t);return n===null?null:n.asc+n.desc}function uu(e,t,n=!1){let r=lu(e,n);return r===null?0:r*t}function du(e,t,n,r,i=!1){let a=cu(e,i);if(a===null)return{ascent:n,descent:r};let o=(a.asc+a.desc)*t;return n+r<=o?{ascent:n,descent:r}:{ascent:a.asc*t,descent:a.desc*t}}function fu(e){return e.trim().toLowerCase()}function pu(e){return`local(\"${e.replaceAll(`\\\\`,`\\\\\\\\`).replaceAll(`\"`,`\\\\\"`)}\")`}function mu(e){return`__ooxml_local_${[...e].map(e=>(e.codePointAt(0)??0).toString(16).padStart(6,`0`)).join(``)}`}function hu(){return typeof OffscreenCanvas<`u`?new OffscreenCanvas(1,1).getContext(`2d`):typeof document<`u`&&document?.createElement?document.createElement(`canvas`).getContext(`2d`):null}async function gu(e){let t=j();if(!t||typeof FontFace>`u`)return{faces:[],metrics:{}};let n=[],r={},i=new Map;for(let t of e){let e=t.family.trim(),n=t.localNames.map(e=>e.trim()).filter(Boolean);if(!e||n.length===0||t.lineHeightMultiplier!=null&&!(t.lineHeightMultiplier>0))continue;let r=t.weight??400,a=t.style??`normal`;if(!(r>=100&&r<=900)||a!==`normal`&&a!==`italic`)continue;let o=n.map(pu).join(`, `),s=fu(e),c=`local-face:${o}:${r}:${a}`,l=i.get(c)??{source:o,requests:[]};l.requests.push({...t,family:e,normalizedFamily:s,source:o,weight:r,style:a}),i.set(c,l)}for(let[e,a]of i){let i=mu(e),{face:o}=E(e,t,()=>{let e=a.requests[0],n=new FontFace(i,a.source,{weight:String(e.weight),style:e.style});return t.add(n),n});try{if(!await O(o.load())||o.status!==`loaded`)throw Error(`local font load timed out`);let e=!1;for(let t of a.requests){let n;if(t.lineHeightMultiplier!=null){let e=hu();if(!e)continue;e.font=`${t.style} ${t.weight} 100px \"${i}\"`;let r=e.measureText(`Hg国`),a=r.fontBoundingBoxAscent,o=r.fontBoundingBoxDescent;if(!(Number.isFinite(a)&&Number.isFinite(o)&&a+o>0))continue;n=(a+o)/100*t.lineHeightMultiplier}let a=t.weight===400&&t.style===`normal`?t.normalizedFamily:`${t.normalizedFamily}:${t.weight}:${t.style}`;r[a]={family:i,...n==null?{}:{lineHeightRatio:n},requestedFamily:t.family,weight:t.weight,style:t.style,sourceIdentity:t.source,synthesized:!1},e=!0}if(!e)throw Error(`exact local font route unavailable`);n.push(o)}catch{D([o])}}return{faces:n,metrics:r}}function _u(e){D(e)}const vu=[{test:e=>e===`georgia`,biasEm:.0105}];function yu(e){return(e??``).trim().replace(/^[\"']|[\"']$/g,``).replace(/\\s+/g,` `).toLowerCase()}function bu(e){let t=yu(e);for(let e of vu)if(e.test(t))return e.biasEm;return 0}function xu(e,t){if(!Number.isSafeInteger(e)||e<=0)throw TypeError(`${t} must be a positive safe integer`)}function Su(e){if(!Number.isSafeInteger(e)||e<0)throw TypeError(`cache entry weight must be a non-negative safe integer`)}var Cu=class{#e;#t;#n;#r;#i=new Map;#a=new Map;#o=0;constructor(e){xu(e.maxEntries,`maxEntries`),xu(e.maxWeight,`maxWeight`),this.#e=e.maxEntries,this.#t=e.maxWeight,this.#n=e.measure,this.#r=e.onRemove}get usage(){return{entries:this.#i.size,weight:this.#o,pending:this.#a.size}}has(e){return this.#i.has(e)}get(e){let t=this.#i.get(e);if(t!==void 0)return this.#i.delete(e),this.#i.set(e,t),t.value}getOrLoad(e,t){let n=this.get(e);if(n!==void 0||this.#i.has(e))return Promise.resolve(n);let r=this.#a.get(e);if(r!==void 0)return r.promise;let i={},a=Promise.resolve().then(t).then(t=>this.#c(e,i,t),t=>{throw this.#s(e,i),t});return this.#a.set(e,{token:i,promise:a}),a}delete(e){let t=this.#a.delete(e),n=this.#i.get(e);return n===void 0?t:(this.#i.delete(e),this.#o-=n.weight,this.#l(n.value,e,`deleted`),!0)}clear(){this.#a.clear();let e=[...this.#i];this.#i.clear(),this.#o=0;for(let[t,n]of e)this.#l(n.value,t,`cleared`)}#s(e,t){this.#a.get(e)?.token===t&&this.#a.delete(e)}#c(e,t,n){if(this.#a.get(e)?.token!==t)return n;let r;try{r=this.#n(n),Su(r)}catch(n){throw this.#s(e,t),n}if(this.#a.get(e)?.token!==t||(this.#a.delete(e),r>this.#t))return n;let i=[];for(;this.#i.size>=this.#e||r>this.#t-this.#o;){let e=this.#i.entries().next().value;if(e===void 0)break;let[t,n]=e;this.#i.delete(t),this.#o-=n.weight,i.push([t,n])}this.#i.set(e,{value:n,weight:r}),this.#o+=r;for(let[e,t]of i)this.#l(t.value,e,`evicted`);return n}#l(e,t,n){try{this.#r?.(e,t,n)}catch{}}},wu=class{#e;constructor(e){this.#e=new Cu({maxEntries:e.maxEntries,maxWeight:e.maxBytes,measure:e=>e.size})}get usage(){let e=this.#e.usage;return{entries:e.entries,bytes:e.weight,pending:e.pending}}async get(e,t,n){if(typeof e!=`string`||e.length===0)throw TypeError(`raw package part path must be a non-empty string`);if(typeof t!=`string`)throw TypeError(`raw package part MIME type must be a string`);let r=await this.#e.getOrLoad(e,async()=>{let e=await n();if(!(e instanceof Blob))throw TypeError(`raw package part loader must return a Blob`);return e});return t===``||r.type===t?r:r.slice(0,r.size,t)}clear(){this.#e.clear()}};function Tu(e,t=`$`){if(e===null||typeof e==`boolean`||typeof e==`number`||typeof e==`string`)return JSON.stringify(e);if(Array.isArray(e))return`[${e.map((e,n)=>Tu(e,`${t}[${n}]`)).join(`,`)}]`;if(typeof e==`object`){let n=e;return`{${Object.keys(n).sort().map(e=>`${JSON.stringify(e)}:${Tu(n[e],`${t}.${e}`)}`).join(`,`)}}`}throw TypeError(`Cannot fingerprint ${typeof e} at ${t}`)}function Eu(e,t){let n=Tu(t);return`${e}:${encodeURIComponent(n)}`}function Du(e){return`${e.story}:${encodeURIComponent(e.storyInstance)}:${e.path.join(`.`)}`}function Ou(e,t,n){if(t.length===0||n.length===0)throw RangeError(`Body occurrence identity requires a flow domain and fragment start`);return[`body-occurrence`,encodeURIComponent(Du(e)),encodeURIComponent(t),encodeURIComponent(n)].join(`/`)}function ku(e,t){return`image:${Du(e)}:${encodeURIComponent(t)}`}function Au(e,t){return`math:${Du(e)}:${encodeURIComponent(t)}`}function ju(e){return Eu(`chart-resource`,e)}function Mu(e,t){return`anchor:${Du(e)}:${encodeURIComponent(t)}`}function Nu(e,t,n=new WeakSet,r=new WeakSet){if(e==null||typeof e==`string`||typeof e==`boolean`)return;if(typeof e==`number`){if(!Number.isFinite(e))throw TypeError(`${t} must contain finite numbers`);return}if(typeof e!=`object`||n.has(e))throw TypeError(`${t} must be structured-clone-safe plain data`);if(r.has(e))return;let i=Object.getPrototypeOf(e);if(!Array.isArray(e)&&i!==Object.prototype&&i!==null)throw TypeError(`${t} must be structured-clone-safe plain data`);if(Object.getOwnPropertySymbols(e).length!==0)throw TypeError(`${t} must contain only enumerable string data properties`);n.add(e);try{for(let i of Object.getOwnPropertyNames(e)){if(Array.isArray(e)&&i===`length`)continue;let a=Object.getOwnPropertyDescriptor(e,i);if(!a||!a.enumerable||!(`value`in a))throw TypeError(`${t}.${i} must be an enumerable data property`);Nu(a.value,`${t}.${i}`,n,r)}}finally{n.delete(e)}r.add(e)}function Pu(e,t=new WeakSet){if(typeof e!=`object`||!e||t.has(e))return e;t.add(e);for(let n of Object.values(e))Pu(n,t);return Object.freeze(e)}function Fu(e,t){Nu(e,t);try{return Pu(structuredClone(e))}catch{throw TypeError(`${t} must be structured-clone-safe plain data`)}}function Iu(e,t){return Nu(e,t),Pu(e)}function Lu(e,t){if(typeof e!=`string`||e.trim().length===0)throw TypeError(`${t} must be a non-empty string`)}function Ru(e,t){if(!Number.isFinite(e)||e<0)throw TypeError(`${t} must be finite and non-negative`)}function zu(e,t){if(!Number.isFinite(e))throw TypeError(`${t} must be finite`)}function Bu(e,t){if(!Number.isFinite(e)||e<0||e>1)throw TypeError(`${t} must be between 0 and 1`)}function Vu(e,t){Ru(e.widthPt,`${t}.widthPt`),Ru(e.heightPt,`${t}.heightPt`)}function Hu(e){switch(Lu(e.resourceKey,`resourceKey`),e.kind){case`image`:case`picture-bullet`:if(e.documentOrder!==void 0&&(!Number.isSafeInteger(e.documentOrder)||e.documentOrder<0))throw TypeError(`documentOrder must be a non-negative safe integer`);if(Lu(e.partPath,`partPath`),Lu(e.mimeType,`mimeType`),e.svgImagePath!==void 0&&Lu(e.svgImagePath,`svgImagePath`),Vu(e.intrinsicSize,`intrinsicSize`),e.alpha!==void 0&&Bu(e.alpha,`alpha`),e.rotation!==void 0&&!Number.isFinite(e.rotation))throw TypeError(`rotation must be finite`);e.srcRect!==void 0&&(zu(e.srcRect.l,`srcRect.l`),zu(e.srcRect.t,`srcRect.t`),zu(e.srcRect.r,`srcRect.r`),zu(e.srcRect.b,`srcRect.b`));break;case`chart`:Vu(e.intrinsicSize,`intrinsicSize`);break;case`math`:break;default:throw TypeError(`Unknown paint resource kind: ${String(e)}`)}}function Uu(e){return Hu(e),Fu(e,`paint resource ${e.resourceKey}`)}function Wu(e,t,n){return Error(`Paint resource kind mismatch for ${e}: expected ${t}, got ${n}`)}function Gu(e){let t=new Set;for(let n of e){if(t.has(n.resourceKey))throw Error(`Duplicate paint resource key: ${n.resourceKey}`);t.add(n.resourceKey)}let n=e.map(Uu).sort((e,t)=>e.resourceKey.localeCompare(t.resourceKey));return Ku(Object.freeze(n))}function Ku(e){if(!Object.isFrozen(e))throw TypeError(`Owned paint descriptors must be sealed`);let t=null;for(let n of e){if(Hu(n),!Object.isFrozen(n))throw TypeError(`Owned paint descriptor must be sealed: ${n.resourceKey}`);if(t!==null&&n.resourceKey.localeCompare(t)<=0)throw Error(`Owned paint descriptors must have unique sorted keys: ${n.resourceKey}`);t=n.resourceKey}let n=e,r=new Map(n.map(e=>[e.resourceKey,e])),i=Object.freeze(n.map(e=>e.resourceKey));return Object.freeze({keys:i,descriptors:n,resolve(e,t){let n=r.get(e);if(!n)throw Error(`Unknown paint resource: ${e}`);if(n.kind!==t)throw Wu(e,t,n.kind);return n}})}function qu(e){return ju(e)}function Ju(e,t,n,r={}){return{kind:e,resourceKey:t,partPath:n,...r.svgImagePath===void 0?{}:{svgImagePath:r.svgImagePath},...r.srcRect==null?{}:{srcRect:{...r.srcRect}},...r.rotation===void 0?{}:{rotation:r.rotation},...r.flipH===void 0?{}:{flipH:r.flipH},...r.flipV===void 0?{}:{flipV:r.flipV},...r.alpha===void 0?{}:{alpha:r.alpha},...r.colorReplaceFrom===void 0?{}:{colorReplaceFrom:r.colorReplaceFrom},...r.duotone===void 0?{}:{duotone:{...r.duotone}}}}function Yu(e,t,n,r){let i=[],a=[],o=[],s=(e,t,n,r,o,s,c={})=>{let l=ku(t,n);i.push(Ju(e,l,n,c)),a.push({resourceKey:l,mimeType:r,widthPt:o,heightPt:s})},c=(e,t)=>{if(e.type===`image`){s(`image`,t,e.imagePath,e.mimeType,e.widthPt,e.heightPt,e);return}if(e.type===`chart`){o.push({kind:`chart`,resourceKey:qu(t),intrinsicSize:{widthPt:e.widthPt,heightPt:e.heightPt},model:e.chart});return}if(e.type!==`shape`)return;let n=e;n.fill?.fillType===`image`&&s(`image`,t,n.fill.imagePath,n.fill.mimeType,n.widthPt,n.heightPt,{...n.fill.svgImagePath===void 0?{}:{svgImagePath:n.fill.svgImagePath},...n.fill.srcRect===void 0?{}:{srcRect:{...n.fill.srcRect}},...n.fill.alpha===void 0?{}:{alpha:n.fill.alpha},...n.fill.duotone===void 0?{}:{duotone:n.fill.duotone}});let r=`${t.story}:${t.storyInstance}:${t.path.join(`.`)}`;if(n.textBoxContent!==void 0){f(n.textBoxContent,`textbox`,r);return}n.textBlocks?.forEach((e,t)=>{if(e.imagePath){if(!e.mimeType||e.imageWidthPt==null||e.imageHeightPt==null)throw Error(`Text-box compatibility image requires complete metadata`);s(`image`,{story:`textbox`,storyInstance:r,path:[t,0]},e.imagePath,e.mimeType,e.imageWidthPt,e.imageHeightPt,{svgImagePath:e.svgImagePath})}})},l=(e,t,n,r)=>{e.rows.forEach((e,i)=>e.cells.forEach((e,a)=>{f(e.content,t,n,[...r,i,a])}))},u=(e,t,n)=>{if(e)for(let r of[`default`,`first`,`even`]){let i=e[r];i&&f(i.body,t,n?`${n}:${r}`:r)}},d=(e,n)=>{let i=e.numbering;if(i?.picBulletImagePath){let t=r?.(e),a=i.picBulletWidthPt??t?.widthPt,o=i.picBulletHeightPt??t?.heightPt;if(!i.picBulletMimeType||a==null||o==null)throw Error(`Picture bullet requires complete metadata`);s(`picture-bullet`,n,i.picBulletImagePath,i.picBulletMimeType,a,o)}let a=t?.paragraphAcquisitionInput(e,n).runs??e.runs,o=0;a.forEach((t,r)=>{if(t.type===`unavailableDrawing`)return;let i=e.runs[o++];i&&(i.type===`image`||i.type===`chart`||i.type===`shape`)&&c(i,{...n,path:[...n.path,r]})})},f=(e,t,n,r=[])=>{e.forEach((e,i)=>{let a=[...r,i];e.type===`paragraph`?d(e,{story:t,storyInstance:n,path:a}):e.type===`table`?l(e,t,n,a):e.type===`sectionBreak`&&(u(e.headers,`header`,`section:${i}`),u(e.footers,`footer`,`section:${i}`))})};f(e.body,`body`,`body`),u(e.headers,`header`),u(e.footers,`footer`);for(let t of e.footnotes??[])f(t.content,`footnote`,t.id);for(let t of e.endnotes??[])f(t.content,`endnote`,t.id);let p=new Map(a.map(e=>[e.resourceKey,e]));if(p.size!==a.length)throw Error(`Duplicate image resource key`);for(let[e,t]of i.entries()){let n=p.get(t.resourceKey);if(!n)throw Error(`Missing layout image metadata: ${t.resourceKey}`);o.push({...t,documentOrder:e,mimeType:n.mimeType,intrinsicSize:{widthPt:n.widthPt,heightPt:n.heightPt}})}for(let e of n)o.push({kind:`math`,resourceKey:e.resourceKey});return{imageMetadata:a,descriptors:o}}function Xu(e,t,n,r){let i=Yu(e,t,n,r);return Object.freeze({imageMetadata:Object.freeze(i.imageMetadata.map(e=>Object.freeze({...e}))),paintResources:Gu(i.descriptors)})}function Zu(e,t){if(!Number.isFinite(e)||e<0)throw RangeError(`${t} must be finite and non-negative`);return e}function Qu(e){let t=[...e].map(e=>Object.freeze({resourceKey:e.resourceKey,widthPt:Zu(e.widthPt,`widthPt`),heightPt:Zu(e.heightPt,`heightPt`),mimeType:e.mimeType})).sort((e,t)=>e.resourceKey.localeCompare(t.resourceKey)),n=new Map(t.map(({resourceKey:e,...t})=>[e,Object.freeze(t)]));if(n.size!==t.length)throw Error(`Duplicate image resource key`);return Object.freeze({fingerprint:Eu(`images`,t),resolve(e){let t=n.get(e);if(!t)throw Error(`Unknown image resource: ${e}`);return t}})}function $u(e){let t=[...e].map(e=>Object.freeze({resourceKey:e.resourceKey,widthEm:Zu(e.widthEm,`widthEm`),ascentEm:Zu(e.ascentEm,`ascentEm`),descentEm:Zu(e.descentEm,`descentEm`),diagnostics:Object.freeze(e.diagnostics.map(e=>Object.freeze({...e}))),...e.available===!1?{available:!1}:{}})).sort((e,t)=>e.resourceKey.localeCompare(t.resourceKey)),n=new Map(t.map(e=>[e.resourceKey,e]));if(n.size!==t.length)throw Error(`Duplicate math resource key`);return Object.freeze({fingerprint:Eu(`math`,t),resolve(e){let t=n.get(e);if(!t)throw Error(`Unknown math resource: ${e}`);return t}})}function ed(e){let t=new Map(e),n=Object.freeze([...t.keys()].sort());return Object.freeze({keys:n,resolve(e){let n=t.get(e);if(n===void 0)throw Error(`Unknown runtime resource: ${e}`);return n}})}const td=new WeakMap,nd=new WeakMap,rd=new WeakMap,id=new WeakMap,ad=new WeakMap,od=new WeakMap,sd=new WeakMap;function cd(){let e=new WeakMap,t=new WeakMap,n=1;return Object.freeze({objectIdentity(t){let r=e.get(t);return r===void 0&&(r=n,n+=1,e.set(t,r)),r},get(e,n){return t.get(e)?.get(n)},set(e,n,r){let i=t.get(e);i||(i=new Map,t.set(e,i)),i.set(n,r)}})}function ld(e,t){let n=[e.text,e.images,e.math],r=new Set(n.flatMap(e=>{let t=nd.get(e);return t?[t]:[]}));if(r.size>1)throw Error(`Layout services combine foreign runtime owners`);let i=r.values().next().value,a=n.filter(e=>!nd.has(e));if(i&&a.length>1)throw Error(`Layout services are missing service lineage for multiple components`);if(!i&&!t)return;let o=i??{};for(let e of n){let t=nd.get(e);if(t&&t!==o)throw Error(`Layout services combine foreign runtime owners`);nd.set(e,o)}return o}function ud(e,t){let n=ld(e,!0);if(rd.has(n))throw Error(`Body layout kernel is already attached`);rd.set(n,t)}function dd(e){let t=ld(e,!1);return t?rd.get(t):void 0}function fd(e,t){let n=ld(e,!0);if(id.has(n))throw Error(`Layout source store is already attached`);id.set(n,t)}function pd(e){let t=ld(e,!1);return t?id.get(t):void 0}function md(e,t){let n=ld(e,!0);if(ad.has(n))throw Error(`Vertical glyph measurement service is already attached`);ad.set(n,t)}function hd(e){let t=ld(e,!1),n=t?ad.get(t):void 0;if(!n)throw Error(`Vertical glyph measurement service is not attached`);return n}function gd(e,t){if(od.has(e))throw Error(`Layout variant store is already attached`);od.set(e,t)}function _d(e){return od.get(e)}function vd(e,t,n=t.keys()){if(td.has(e))throw Error(`Private resource lookup is already attached`);let r=new Set(t.keys()),i=new Set(n),a=[...i].filter(e=>!r.has(e)).sort(),o=[...r].filter(e=>!i.has(e)).sort();if(a.length>0||o.length>0)throw Error(`Runtime resource membership mismatch: missing [${a.join(`, `)}]; extra [${o.join(`, `)}]`);td.set(e,ed(t))}function yd(e){return td.get(e)}const bd=new WeakMap,xd=new WeakMap;function Sd(e,t={}){let n=Object.freeze({...e,...t}),r=dd(e);if(!r)throw Error(`Body layout kernel is not attached to the supplied services`);if(dd(n)!==r)throw Error(`Layout service view did not retain its body layout kernel owner`);let i=td.get(e);i&&td.set(n,i);let a=bd.get(e);a&&bd.set(n,a);let o=sd.get(e);return o&&sd.set(n,o),n}function Cd(e){let t=Sd(e);return sd.set(t,cd()),t}function wd(e){return sd.get(e)}function Td(e,t){if(!Number.isInteger(t.totalPages)||t.totalPages<1)throw RangeError(`Field acquisition totalPages must be a positive integer`);let n=Sd(e);return xd.set(n,Object.freeze({...t})),n}function Ed(e){return xd.get(e)??Object.freeze({totalPages:1})}function Dd(e,t){if(bd.has(e))throw Error(`Paint resource registry is already attached`);bd.set(e,t)}function Od(e){let t=bd.get(e);if(!t)throw Error(`Paint resource registry is not attached`);return t}const kd=[`background`,`behindText`,`header`,`body`,`notes`,`front`,`footer`],Ad=Object.freeze({a:1,b:0,c:0,d:1,e:0,f:0});function jd(e){return Object.freeze({kind:`clip`,clip:e})}function Md(e,t){return Object.freeze({kind:`transform`,transform:Object.freeze({...Ad,e,f:t})})}function Nd(e,t){if(!t.textBoxIds?.length)return Object.freeze([]);let n=new Map(e.textBoxes.map(e=>[e.id,e]));return Object.freeze(t.textBoxIds.flatMap(e=>{let t=n.get(e);return t?[t]:[]}))}function Pd(e,t,n,r,i){if(e.kind===`drawing`){if(!e.anchorLayer)return;i.push(Object.freeze({drawing:e,textBoxes:Object.freeze([]),frames:Object.freeze([...n]),layoutTranslationPt:Object.freeze({...r}),encounterOrder:i.length,root:t}));return}if(e.kind!==`textbox`){if(e.kind===`note`){let a=e.story.clipBounds?Object.freeze([...n,jd(e.story.clipBounds)]):n;for(let n of e.story.blocks)Pd(n,t,a,r,i);return}if(e.kind===`paragraph`){let a=e.clipBounds?Object.freeze([...n,jd(e.clipBounds)]):n;for(let n of e.drawings)n.anchorLayer&&i.push(Object.freeze({drawing:n,owner:e,textBoxes:Nd(e,n),frames:Object.freeze([...a]),layoutTranslationPt:Object.freeze({...r}),encounterOrder:i.length,root:t}));return}Ld(e,t,n,r,i)}}function Fd(e,t,n,r,i,a){let o=t.xPt-e.flowBounds.xPt,s=t.yPt-e.flowBounds.yPt;Pd(e,n,Object.freeze([...r,Md(o,s)]),Object.freeze({xPt:i.xPt+o,yPt:i.yPt+s}),a)}function Id(e,t,n,r,i){Fd(e.child,{xPt:e.xPt-r.xPt,yPt:e.yPt-r.yPt},t,n,r,i)}function Ld(e,t,n,r,i){let a=e.clipBounds?Object.freeze([...n,jd(e.clipBounds)]):n;for(let n of e.rows)for(let e of n.cells){let n=`visualMergeOwnership`in e&&e.visualMergeOwnership===`continuation`;if(e.verticalMerge===`continue`&&!n)continue;let o=e.clipBounds?Object.freeze([...a,jd(e.clipBounds)]):a;for(let n of e.blocks)Fd(n.layout,{xPt:e.contentBounds.xPt+(n.layout.kind===`table`?n.layout.flowBounds.xPt:0),yPt:e.flowBounds.yPt+n.offsetPt+(n.layout.kind===`table`?n.layout.flowBounds.yPt:0)},t,o,r,i)}for(let n of e.resolvedFloatingTables??[])Id(n,t,a,r,i)}function Rd(e){let t=e.drawing.anchorLayer;return Object.freeze({kind:`drawing`,layer:t.behindDoc?`behindText`:`front`,sourceLayer:e.root.layer,rootNodeId:e.root.node.id,coordinateSpace:e.root.coordinateSpace,flowDomainId:e.root.node.flowDomainId,node:e.drawing,...e.owner?{ownerNodeId:e.owner.id}:{},textBoxes:e.textBoxes,frames:e.frames,layoutTranslationPt:e.layoutTranslationPt})}function zd(e,t){return Object.freeze({kind:`node`,layer:e.layer,sourceLayer:e.layer,rootNodeId:e.node.id,coordinateSpace:e.coordinateSpace,flowDomainId:e.node.flowDomainId,node:e.node,omitAnchoredDrawings:t})}function Bd(e,t){return e.drawing.anchorLayer.relativeHeight-t.drawing.anchorLayer.relativeHeight||e.drawing.anchorLayer.sourceOrder-t.drawing.anchorLayer.sourceOrder||e.encounterOrder-t.encounterOrder}function Vd(e){let t=[];for(let n of e)Pd(n.node,n,Object.freeze([]),Object.freeze({xPt:0,yPt:0}),t);let n=t.filter(({drawing:e})=>e.anchorLayer.behindDoc).sort(Bd).map(Rd),r=t.filter(({drawing:e})=>!e.anchorLayer.behindDoc).sort(Bd).map(Rd),i=new Set(t.map(({root:e})=>e.node)),a=e.flatMap(e=>e.node.kind===`drawing`&&e.node.anchorLayer?[]:[zd(e,i.has(e.node))]);return Object.freeze([...n,...a,...r])}function Hd(e,t){return t.has(e)||(t.add(e),e.kind===`drawing`)?!1:e.kind===`paragraph`?e.lines.some(e=>e.placements.some(e=>e.kind===`text`&&e.paintOps?.some(e=>e.verticalFeature===!0)===!0))||e.textBoxes.some(e=>Hd(e,t)):e.kind===`textbox`||e.kind===`note`?e.story.blocks.some(e=>Hd(e,t)):e.rows.some(e=>e.cells.some(e=>e.blocks.some(e=>Hd(e.layout,t))))||(e.resolvedFloatingTables??[]).some(e=>Hd(e.child,t))}function Ud(e){let t=Object.freeze(e.map(({layer:e,node:t,coordinateSpace:n})=>Object.freeze({layer:e,node:t,coordinateSpace:n??`section-logical`}))),n=new Map(kd.map(e=>[e,[]]));for(let e of t)n.get(e.layer).push(e.node);let r=[];for(let e=0;e<t.length;){let n=t[e].layer,i=e+1;for(;t[i]?.layer===n;)i+=1;let a=t.slice(e,i);n===`header`||n===`body`||n===`notes`||n===`footer`?r.push(...Vd(a)):r.push(...a.map(e=>zd(e,!1))),e=i}let i=new Set;return Object.freeze({roots:t,paintOrder:Object.freeze(r),capabilities:Object.freeze({requiresElementBackedVerticalGlyphPaint:t.some(({node:e})=>Hd(e,i))}),background:Object.freeze(n.get(`background`)),behindText:Object.freeze(n.get(`behindText`)),header:Object.freeze(n.get(`header`)),body:Object.freeze(n.get(`body`)),notes:Object.freeze(n.get(`notes`)),front:Object.freeze(n.get(`front`)),footer:Object.freeze(n.get(`footer`))})}var Wd=class extends Error{constructor(e){super(e),this.name=`PageGraphError`}};const Gd=Ud;function Kd(e,t,n){let r=new Map(n.map(e=>[e.id,e]));if(r.size!==n.length||n.length!==e[t].length)throw new Wd(`Replacement ${t} layer must preserve unique paint node identities`);return Gd(e.roots.map(e=>{if(e.layer!==t)return e;let n=r.get(e.node.id);if(!n)throw new Wd(`Missing replacement paint node ${e.node.id}`);return{...e,node:n}}))}function qd(e){return e.layers.roots}function Jd(e){let t=!1,n=!1;for(let r of e.layers.roots)if(r.layer===`body`){if(n)throw new Wd(`Paint sequence must contain one contiguous body paint run; re-entered at ${r.node.id}`);t=!0}else t&&(n=!0);let r=new Map;for(let t of e.layers.roots){if(r.has(t.node.id))throw new Wd(`Duplicate paint node ${t.node.id}`);r.set(t.node.id,t)}let i=new Map;for(let t of kd)for(let n of e.layers[t]){if(i.has(n.id))throw new Wd(`Duplicate semantic page node ${n.id}`);i.set(n.id,{layer:t,node:n})}if(i.size!==r.size)throw new Wd(`Semantic page layers do not match retained roots`);for(let[e,t]of r){let n=i.get(e);if(!n||n.layer!==t.layer||n.node!==t.node)throw new Wd(`Paint root ${e} is not the retained ${t.layer} node`)}let a=new Set,o=new Set;for(let t of e.layers.paintOrder){let e=r.get(t.rootNodeId);if(!e)throw new Wd(`Missing paint root ${t.rootNodeId}`);if(e.layer!==t.sourceLayer)throw new Wd(`Paint root ${t.rootNodeId} belongs to ${e.layer}, not ${t.sourceLayer}`);if(a.add(t.rootNodeId),t.kind===`node`){if(t.node!==e.node||t.node.id!==t.rootNodeId)throw new Wd(`Paint root ${t.rootNodeId} is not the retained ${t.sourceLayer} node`);continue}if(!t.node.anchorLayer)throw new Wd(`Drawing paint entry ${t.node.id} is not anchored`);if(o.has(t.node.id))throw new Wd(`Duplicate drawing paint reference ${t.node.id}`);o.add(t.node.id)}if(a.size!==r.size)throw new Wd(`Missing paint-order reference for ${[...r.keys()].find(e=>!a.has(e))??`<unknown>`}`);return e.layers.roots.map(({node:e})=>e)}const Yd=Object.freeze({story:`body`,storyInstance:`parse-error`,path:Object.freeze([])});function Xd(e,t,n,r,i){let a=e.trim().split(/\\s+/).filter(Boolean),o=[],s=``,c=e=>r.shape({text:e,fontSizePt:n,fonts:{},genericFamily:`sans-serif`}).advancePt,l=e=>{let n=[0,...Mc(e),e.length].filter((e,t,n)=>t===0||e!==n[t-1]),r=n.length-1;for(;r>0&&c(`${e.slice(0,n[r])}…`)>t;)--r;return`${e.slice(0,n[r]??0)}…`},u=()=>{o.length===0?o.push(l(``)):o[o.length-1]=l(o[o.length-1])},d=e=>{let n=[0,...Mc(e),e.length].filter((e,t,n)=>t===0||e!==n[t-1]),r=0;for(;r<n.length-1;){if(o.length>=i)return u(),!0;let a=r+1;for(;a<n.length&&c(e.slice(n[r],n[a]))<=t;)a+=1;let s=Math.max(r+1,a-1),d=e.slice(n[r],n[s]);if(o.length>=i-1&&s<n.length-1)return o.push(l(d)),!0;o.push(d),r=s}return!1};for(let e=0;e<a.length;e+=1){let n=a[e],r=s?`${s} ${n}`:n,l=c(r);if(s&&l>t){if(o.push(s),s=``,o.length>=i){u();break}if(c(n)>t){if(d(n))break}else s=n}else if(!s&&l>t){if(d(n))break}else s=r;if(e<a.length-1&&o.length>=i&&!s){u();break}}return s&&o.length<i&&o.push(s),o}function Zd(e,t,n){if(!(t.widthPt>0&&t.heightPt>0))throw RangeError(`Error page size must be positive`);let r=Math.max(18,Math.min(t.widthPt,t.heightPt)*.06),i={xPt:r,yPt:r,widthPt:t.widthPt-r*2,heightPt:t.heightPt-r*2},a=Math.max(8,Math.min(t.widthPt,t.heightPt)*.02),o=n.resolve({fonts:{},slot:`ascii`,genericFamily:`sans-serif`}).route,s=Xd(e,t.widthPt-r*4,a,n,4),c=a*1.4,l=[{kind:`fill-rect`,rect:{xPt:0,yPt:0,widthPt:t.widthPt,heightPt:t.heightPt},fill:`#ffffff`},{kind:`stroke-rect`,rect:i,stroke:`#c8ccd2`,lineWidthPt:1,dashPt:[6,5]},{kind:`text`,rect:{xPt:0,yPt:t.heightPt*.27,widthPt:t.widthPt,heightPt:36},text:`⚠`,fill:`#b23b3b`,fontRoute:o,fontSizePt:28,fontWeight:400,fontStyle:`normal`,align:`center`,baseline:`middle`},{kind:`text`,rect:{xPt:r*2,yPt:t.heightPt*.4,widthPt:t.widthPt-r*4,heightPt:24},text:`This document could not be displayed`,fill:`#333333`,fontRoute:o,fontSizePt:13,fontWeight:600,fontStyle:`normal`,align:`center`,baseline:`middle`},...s.map((e,n)=>({kind:`text`,rect:{xPt:r*2,yPt:t.heightPt*.5+c*n,widthPt:t.widthPt-r*4,heightPt:c},text:e,fill:`#666666`,fontRoute:o,fontSizePt:a,fontWeight:400,fontStyle:`normal`,align:`center`,baseline:`middle`}))],u={kind:`drawing`,id:`parse-error-page`,source:Yd,flowDomainId:`parse-error`,flowBounds:i,inkBounds:i,advancePt:i.heightPt,ordinaryFlow:!1,commands:l},d={geometry:{pageWidth:t.widthPt,pageHeight:t.heightPt,marginTop:r,marginRight:r,marginBottom:r,marginLeft:r,headerDistance:0,footerDistance:0},columns:[{xPt:r,wPt:i.widthPt}],columnSeparator:!1,grid:{kind:`none`,linePitchPt:null,charSpacePt:null},textDirection:`lrTb`,verticalAlignment:`top`};return{pages:[{pageIndex:0,geometry:{xPt:0,yPt:0,widthPt:t.widthPt,heightPt:t.heightPt,contentTopPt:r,contentBottomPt:t.heightPt-r},flowDomains:[{id:`parse-error`,kind:`body`,logicalBounds:i,physicalBounds:i}],section:d,sectionOccurrenceId:`parse-error-section`,pageBorder:null,parityBlank:!1,bookmarkStarts:[],pageNumber:{displayNumber:1,format:`decimal`,sectionOccurrenceId:`parse-error-section`},columnSeparators:[],sectionRegions:[{id:`parse-error-region`,sectionOccurrenceId:`parse-error-section`,coordinateSpace:{writingMode:`horizontal-tb`,logicalToPhysical:{a:1,b:0,c:0,d:1,e:0,f:0},physicalToLogical:{a:1,b:0,c:0,d:1,e:0,f:0}},blockStartPt:r,blockEndPt:t.heightPt-r,columnFlowDirection:`ltr`,columnIndexes:[0],flowDomainIds:[`parse-error`],section:d}],layers:Gd([{layer:`body`,node:u}]),readingOrder:[u.id]}],diagnostics:[{code:`UNSUPPORTED_FEATURE`,severity:`error`,source:Yd,message:e}]}}function Qd(e,t){let n=e==null?t:typeof e==`number`?e:e.getTime();if(!Number.isFinite(n))throw RangeError(`currentDate must resolve to finite epoch milliseconds`);return Object.freeze({currentDateMs:n})}function $d(e){return Qd(e.currentDate,e.defaultCurrentDateMs)}function ef(e,t){return Eu(`layout`,{currentDateMs:e.currentDateMs,text:t.text.fingerprint,images:t.images.fingerprint,math:t.math.fingerprint,verticalGlyphs:t.verticalGlyphFingerprint??null})}const tf=Object.freeze({UNSUPPORTED_TEXT_EFFECT:Object.freeze({severity:`warning`,layoutCode:`UNSUPPORTED_FEATURE`,message:`WordprocessingML text effects are not rendered`}),INVALID_TEXT_EFFECT_VALUE:Object.freeze({severity:`warning`,layoutCode:`INVALID_VALUE`,message:`An invalid WordprocessingML text-effect value was ignored`}),MISSING_DRAWING_EXTENT:Object.freeze({severity:`error`,layoutCode:`INVALID_GEOMETRY`,message:`A drawing with a missing required extent was omitted`}),INVALID_DRAWING_EXTENT:Object.freeze({severity:`error`,layoutCode:`INVALID_GEOMETRY`,message:`A drawing with an invalid extent was omitted`}),DEGENERATE_DRAWING_EXTENT:Object.freeze({severity:`warning`,layoutCode:`INVALID_GEOMETRY`,message:`A drawing has a schema-valid zero-area extent`})}),nf=Object.freeze({code:`INVALID_VALUE`,severity:`warning`,message:`The parser diagnostic contract did not match this renderer build`});function rf(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function af(e,t){if(!Array.isArray(e)||!e.every(e=>Number.isSafeInteger(e)&&e>=0))return!1;let[n]=e;return n===void 0||n<t}function of(e){return Object.freeze({story:`body`,storyInstance:`body`,path:Object.freeze([...e])})}function sf(e,t){if(e===void 0)return Object.freeze([]);if(!Array.isArray(e))return Object.freeze([nf]);let n=[],r=!1;for(let i of e){if(!rf(i)||typeof i.code!=`string`||!Object.hasOwn(tf,i.code)||i.part!==`word/document.xml`||!af(i.path,t)){r=!0;continue}let e=tf[i.code];if(i.severity!==e.severity){r=!0;continue}n.push(Object.freeze({code:e.layoutCode,severity:e.severity,source:of(i.path),message:e.message}))}return r&&n.push(nf),Object.freeze(n)}var Y=class extends Error{code;constructor(e,t){super(`${e}: ${t}`),this.name=`LayoutInvariantError`,this.code=e}};function cf(e){switch(e){case`tb`:case`tbV`:case`lrTb`:case`lrTbV`:return`horizontal-tb`;case`rl`:case`rlV`:case`tbRl`:case`tbRlV`:return`vertical-rl`;case`btLr`:return`vertical-rl`;case`lr`:case`lrV`:case`tbLrV`:return`vertical-lr`;default:throw RangeError(`Unsupported Transitional text direction ${JSON.stringify(e)}`)}}function lf(e){if(!Number.isFinite(e.widthPt)||!Number.isFinite(e.heightPt)||e.widthPt<=0||e.heightPt<=0)throw RangeError(`Physical page extents must be positive and finite`)}function uf(e){if(!Number.isFinite(e.xPt)||!Number.isFinite(e.yPt))throw RangeError(`Point coordinates must be finite`)}function df(e){if(![e.a,e.b,e.c,e.d,e.e,e.f].every(Number.isFinite))throw RangeError(`Matrix coefficients must be finite`)}function ff(e){if(uf(e),!Number.isFinite(e.widthPt)||!Number.isFinite(e.heightPt)||e.widthPt<0||e.heightPt<0)throw RangeError(`Rectangle extents must be finite and non-negative`)}function pf(e,t){switch(lf(e),t){case`horizontal-tb`:return{widthPt:e.widthPt,heightPt:e.heightPt};case`vertical-rl`:case`vertical-lr`:return{widthPt:e.heightPt,heightPt:e.widthPt};default:throw RangeError(`Unsupported writing mode ${String(t)}`)}}function mf(e,t){switch(lf(e),t){case`horizontal-tb`:return{widthPt:e.widthPt,heightPt:e.heightPt};case`vertical-rl`:case`vertical-lr`:return{widthPt:e.heightPt,heightPt:e.widthPt};default:throw RangeError(`Unsupported writing mode ${String(t)}`)}}function hf(e,t){switch(lf(t),e){case`horizontal-tb`:return{a:1,b:0,c:0,d:1,e:0,f:0};case`vertical-rl`:return{a:0,b:1,c:-1,d:0,e:t.widthPt,f:0};case`vertical-lr`:return{a:0,b:1,c:1,d:0,e:0,f:0};default:throw RangeError(`Unsupported writing mode ${String(e)}`)}}function gf(e,t){switch(lf(t),e){case`horizontal-tb`:return{a:1,b:0,c:0,d:1,e:0,f:0};case`vertical-rl`:return{a:0,b:-1,c:1,d:0,e:0,f:t.widthPt};case`vertical-lr`:return{a:0,b:1,c:1,d:0,e:0,f:0};default:throw RangeError(`Unsupported writing mode ${String(e)}`)}}function _f(e,t){return df(e),uf(t),{xPt:e.a*t.xPt+e.c*t.yPt+e.e,yPt:e.b*t.xPt+e.d*t.yPt+e.f}}function vf(e,t){ff(t);let n=[_f(e,t),_f(e,{xPt:t.xPt+t.widthPt,yPt:t.yPt}),_f(e,{xPt:t.xPt,yPt:t.yPt+t.heightPt}),_f(e,{xPt:t.xPt+t.widthPt,yPt:t.yPt+t.heightPt})],r=n.map(({xPt:e})=>e),i=n.map(({yPt:e})=>e),a=Math.min(...r),o=Math.min(...i);return{xPt:a,yPt:o,widthPt:Math.max(...r)-a,heightPt:Math.max(...i)-o}}function yf(e,t){df(e);let n=_f(e,{xPt:0,yPt:0}),r={top:{xPt:0,yPt:-1},right:{xPt:1,yPt:0},bottom:{xPt:0,yPt:1},left:{xPt:-1,yPt:0}},i={},a=new Set;for(let o of[`top`,`right`,`bottom`,`left`]){let s=_f(e,r[o]),c=s.xPt-n.xPt,l=s.yPt-n.yPt,u=l===0&&c!==0?c>0?`right`:`left`:c===0&&l!==0?l>0?`bottom`:`top`:null;if(u===null||a.has(u))throw RangeError(`Edge transforms require a non-degenerate axis-aligned matrix`);i[u]=t[o],a.add(u)}if(a.size!==4)throw RangeError(`Edge transform must map every physical edge exactly once`);return i}function bf(e,t){return{writingMode:e,logicalToPhysical:hf(e,t),physicalToLogical:gf(e,t)}}function xf(e){return Object.freeze(e)}function Sf(e){let t=[];for(let n of e){let{columns:e,columnSeparator:r}=n.section;if(!r||e.length<2||n.blockEndPt<=n.blockStartPt)continue;let i=new Set(n.columnIndexes),a=n.columnFlowDirection===`rtl`?e.map((e,t)=>t).reverse():e.map((e,t)=>t);for(let r=0;r<a.length-1;r+=1){let o=a[r];if(!i.has(o))continue;let s=a[r+1],c=Math.min(o,s),l=Math.max(o,s),u=e[c],d=e[l],f=(u.xPt+u.wPt+d.xPt)/2;t.push(Object.freeze({start:xf(_f(n.coordinateSpace.logicalToPhysical,{xPt:f,yPt:n.blockStartPt})),end:xf(_f(n.coordinateSpace.logicalToPhysical,{xPt:f,yPt:n.blockEndPt}))}))}}return Object.freeze(t)}function Cf(e,t){let n=st(e,t),r=e===`triple`||/^(?:thinThick|thickThin|thinThickThin)(?:Small|Medium|Large)Gap$/.test(e);return Object.freeze({authoredStyle:e,style:e===`double`?`double`:r?`compound`:n.length>0?`dashed`:e.includes(`wave`)?`wavy`:`solid`,dashPatternPt:Object.freeze(n)})}function wf(e,t){let n=(e.smallCaps?Math.max(e.fontSize-2,1):e.fontSize)*t;return e.vertAlign&&(n*=.65),n}const Tf=/[ᄀ-ᇿ⺀-⿟ -〿぀-ヿ㄰-㆏㐀-䶿一-鿿ꥠ-꥿가-퟿豈-﫿＀-￯]/u;function Ef(e,t,n){let r=null,i=0;for(let n of t)n.alignment!==`bar`&&(n.pos>i&&(i=n.pos),n.pos>e&&(r===null||n.pos<r.pos)&&(r=n));let a=null;if(n>0){let t=Math.ceil((Math.max(e,i)+1e-6)/n)*n;t<=e&&(t+=n),a={pos:t,alignment:`left`}}return r&&a?r.pos<=a.pos?r:a:r??a}function Df(e,t,n){return Ef(e,t,n)}function Of(e,t){let n=t===`vert`||t===`vert270`||t===`eaVert`||t===`mongolianVert`;return{type:`text`,text:e.text,bold:e.bold??!1,italic:e.italic??!1,underline:!1,strikethrough:!1,fontSize:e.fontSizePt,color:e.color??null,fontFamily:e.fontFamily??null,fontFamilyEastAsia:e.fontFamilyEastAsia??null,isLink:!1,background:null,vertAlign:null,hyperlink:null,ruby:e.ruby??void 0,textBoxLineFloor:!0,textBoxVertical:n}}function kf(e,t={},n={}){if(!e)return`sans-serif`;let r=t[e];return r===`roman`?`serif`:r===`swiss`?`sans-serif`:r===`modern`&&n[e]===`fixed`?`monospace`:`sans-serif`}const Af=Symbol(`docx.localMetricSnapshot`);function jf(e={}){if(e[Af])return e;let t=Object.entries(e).map(([e,t])=>{if(!t.family?.trim())throw TypeError(`Local metric ${e} requires a family`);if(t.lineHeightRatio!==void 0&&(!Number.isFinite(t.lineHeightRatio)||t.lineHeightRatio<0))throw RangeError(`Local metric ${e} lineHeightRatio must be finite and non-negative`);if(t.weight!==void 0&&(!Number.isFinite(t.weight)||t.weight<1||t.weight>1e3))throw RangeError(`Local metric ${e} weight must be finite and between 1 and 1000`);let n={family:t.family,...t.lineHeightRatio===void 0?{}:{lineHeightRatio:t.lineHeightRatio},...t.requestedFamily===void 0?{}:{requestedFamily:t.requestedFamily},...t.weight===void 0?{}:{weight:t.weight},...t.style===void 0?{}:{style:t.style},...t.sourceIdentity===void 0?{}:{sourceIdentity:t.sourceIdentity},...t.synthesized===void 0?{}:{synthesized:t.synthesized}};return[fu(e),Object.freeze(n)]}).sort(([e],[t])=>e.localeCompare(t)),n=Object.fromEntries(t);return Object.defineProperty(n,Af,{value:!0}),Object.freeze(n)}const Mf=new Set([161,164,167,168,170,173,175,176,177,178,179,180,182,183,184,185,186,188,189,190,191,215,247]),Nf=new Set([224,225,232,233,234,236,237,242,243,249,250,252]);function Pf(e,t,n,r,i){let a=n===`eastAsia`,o=r?.split(/[-_]/,1)[0]?.toLowerCase()===`zh`,s=/^(?:86|88)$/i.test(i?.trim()??``),c=`highAnsi`;return e<=127?c=`ascii`:e<=255?c=a&&(Mf.has(e)||o&&Nf.has(e))?`eastAsia`:`highAnsi`:e>=256&&e<=687?c=a&&(o||s)?`eastAsia`:`highAnsi`:e>=688&&e<=767||e>=768&&e<=879||e>=880&&e<=975||e>=1024&&e<=1279?c=a?`eastAsia`:`highAnsi`:e>=1424&&e<=1983||e>=64285&&e<=65023||e>=65136&&e<=65278?c=`ascii`:e>=4352&&e<=4607||e>=11904&&e<=12031||e>=12032&&e<=12255||e>=12272&&e<=12687||e>=12688&&e<=12703||e>=12800&&e<=19903||e>=19968&&e<=40879||e>=40960&&e<=42127||e>=42128&&e<=42191||e>=44032&&e<=55215||e>=63744&&e<=64255||e>=65072&&e<=65103||e>=65104&&e<=65135||e>=65280&&e<=65519||e>=65536&&e<=1114111?c=`eastAsia`:e>=7680&&e<=7935?c=a&&o?`eastAsia`:`highAnsi`:(e>=8192&&e<=10175||e>=57344&&e<=63743||e>=64256&&e<=64284)&&(c=a?`eastAsia`:`highAnsi`),c===`eastAsia`&&a?c:t?`complexScript`:c}function Ff(e,t){return e.themeFontPresence?.[t]??e.themeFonts?.[t]!=null?e.themeFonts?.[t]:e.fonts[t]??(e.themeFontPresence?.ascii??e.themeFonts?.ascii!=null?e.themeFonts?.ascii:e.fonts.ascii)}function If(e){let t=jf(e.localMetrics),n=Object.freeze(Object.fromEntries(Object.entries(e.genericFamilies??{}).map(([e,t])=>[e.trim().toLocaleLowerCase(`en-US`),t]).sort(([e],[t])=>e.localeCompare(t)))),r=Object.freeze(Object.fromEntries(Object.entries(e.eastAsiaFontCharsets??{}).map(([e,t])=>[e.trim().toLocaleLowerCase(`en-US`),t.trim()]).sort(([e],[t])=>e.localeCompare(t)))),i=Eu(`text`,{fonts:e.fonts.fingerprint,measurer:e.measurer.fingerprint,localMetrics:t,eastAsiaFontCharsets:r,genericFamilies:n}),a=t=>{let r=Ff(t,t.slot),i=r?n[r.trim().toLocaleLowerCase(`en-US`)]??t.genericFamily??`sans-serif`:t.genericFamily;return e.fonts.resolve({requestedFamily:r,genericFamily:i,weight:t.weight,style:t.style})},o=new Map,s=t=>{let n=JSON.stringify([t.text,t.fontRoute.familyList,t.fontRoute.scope,t.fontRoute.fingerprint,t.fontSizePt,t.weight,t.style,t.letterSpacingPt,t.kerning??null]),r=o.get(n);if(r)return r;let i=e.measurer.measure(t),a=Object.freeze({...i,...i.inkBounds?{inkBounds:Object.freeze({...i.inkBounds})}:{}});return o.set(n,a),a},c=t=>e.measurer.measure(t).advancePt,l=new Map;return Object.freeze({fingerprint:i,localMetrics:t,resolve:a,shape(e){if(!Number.isFinite(e.fontSizePt)||e.fontSizePt<0)throw RangeError(`fontSizePt must be a finite non-negative number`);let t=JSON.stringify([e.text,e.fontSizePt,[e.fonts.ascii??null,e.fonts.highAnsi??null,e.fonts.eastAsia??null,e.fonts.complexScript??null],[e.themeFonts?.ascii??null,e.themeFonts?.highAnsi??null,e.themeFonts?.eastAsia??null,e.themeFonts?.complexScript??null],[e.themeFontPresence?.ascii??null,e.themeFontPresence?.highAnsi??null,e.themeFontPresence?.eastAsia??null,e.themeFontPresence?.complexScript??null],e.weight??null,e.style??null,e.complexScript??null,e.fontHint??null,e.eastAsiaLanguage??null,e.eastAsiaFontCharset??null,e.genericFamily??null,e.letterSpacingPt??null,e.kerning??null,e.measure??null,e.clusterGeometry??null]),n=l.get(t);if(n)return n;let i=[],o=Object.freeze([...new Set([0,...Mc(e.text),e.text.length])].sort((e,t)=>e-t)),u=new Set(o),d=0;for(let t of e.text){let n=d+t.length,a=Ff(e,`eastAsia`),o=e.eastAsiaFontCharset??(a?r[a.trim().toLocaleLowerCase(`en-US`)]:void 0),s=Pf(t.codePointAt(0)??0,e.complexScript??!1,e.fontHint,e.eastAsiaLanguage,o),c=i.at(-1);c?.script===s?(c.text+=t,c.end=n):i.push({text:t,start:d,end:n,script:s,breakBefore:u.has(d)}),d=n}let f=i.map(t=>{let n=a({fonts:e.fonts,themeFonts:e.themeFonts,themeFontPresence:e.themeFontPresence,slot:t.script,weight:e.weight,style:e.style,genericFamily:e.genericFamily}),r=e.measure===!1?{advancePt:0,ascentPt:0,descentPt:0}:s({text:t.text,fontRoute:n.route,fontSizePt:e.fontSizePt,weight:n.weight,style:n.style,letterSpacingPt:e.letterSpacingPt??0,kerning:e.kerning});return Object.freeze({...t,...r,font:n,fontRoute:n.route})}),p=f.flatMap(e=>e.font.diagnostics),m=f.length>0&&f.every(e=>e.inkBounds!==void 0)?(()=>{let e=0,t=1/0,n=-1/0,r=0,i=0;for(let a of f){let o=a.inkBounds;t=Math.min(t,e+o.xMinPt),n=Math.max(n,e+o.xMaxPt),r=Math.max(r,o.ascentPt),i=Math.max(i,o.descentPt),e+=a.advancePt}return Object.freeze({xMinPt:t,xMaxPt:n,ascentPt:r,descentPt:i})})():void 0,h=f.reduce((e,t)=>e+t.advancePt,0),g=e.clusterGeometry===!1?void 0:(()=>{let t=new Map([[0,0],[e.text.length,h]]),n=n=>{if(e.measure===!1||n<=0)return 0;let r=t.get(n);if(r!==void 0)return r;let i=0;for(let t of f){if(n>=t.end){i+=t.advancePt;continue}if(n<=t.start)break;i+=c({text:t.text.slice(0,n-t.start),fontRoute:t.fontRoute,fontSizePt:e.fontSizePt,weight:t.font.weight,style:t.font.style,letterSpacingPt:e.letterSpacingPt??0,kerning:e.kerning});break}return t.set(n,i),i};return Object.freeze(o.slice(0,-1).map((e,t)=>{let r=o[t+1]??e,i=n(e);return Object.freeze({range:Object.freeze({start:e,end:r}),offsetPt:i,advancePt:n(r)-i})}))})(),_=Object.freeze({advancePt:h,ascentPt:Math.max(0,...f.map(e=>e.ascentPt)),descentPt:Math.max(0,...f.map(e=>e.descentPt)),...m?{inkBounds:m}:{},...m&&f.every(e=>e.horizontalInkBoundsAreTight===!0)?{horizontalInkBoundsAreTight:!0}:{},spans:Object.freeze(f),graphemeBoundaries:o,...g?{clusters:g}:{},diagnostics:Object.freeze(p)});return l.set(t,_),_}})}function Lf(e,t){let n=[];for(let r=0;r<e.length;){let i=e[r];if(i.fitTextValTwips===void 0){r+=1;continue}let a=r+1;if(i.fitTextId!==void 0)for(;a<e.length&&e[a].fitTextValTwips!==void 0&&e[a].fitTextId===i.fitTextId;)a+=1;let o=0,s=0;for(let t=r;t<a;t+=1){let n=e[t];o+=n.naturalWidthPx*(n.charScale??1),s+=n.charCount}let c=i.fitTextValTwips/20*t,l=s>1?(c-o)/(s-1):0,u=c-o-Math.max(0,s-1)*l;n.push({start:r,end:a,targetPx:c,naturalPx:o,charCount:s,perGapPx:l,trailingPadPx:u}),r=a}return n}function Rf(e){return e<0n?-e:e}function zf(e,t){let n=Rf(e),r=Rf(t);for(;r!==0n;){let e=n%r;n=r,r=e}return n}function Bf(e,t){if(t===0n)throw Error(`Exact rational denominator must be nonzero`);if(e===0n)return Object.freeze({numerator:0n,denominator:1n});let n=t<0n?-1n:1n,r=zf(e,t);return Object.freeze({numerator:n*e/r,denominator:n*t/r})}function X(e,t){let n=e.numerator*t.denominator-t.numerator*e.denominator;return n<0n?-1:+(n>0n)}function Vf(e,t){return Bf(e.numerator*t.denominator-t.numerator*e.denominator,e.denominator*t.denominator)}function Hf(e,t){return Bf(e.numerator*t.denominator+t.numerator*e.denominator,2n*e.denominator*t.denominator)}function Uf(e){return`${e.numerator}/${e.denominator}`}const Wf=new DataView(new ArrayBuffer(8));function Gf(e){if(!Number.isFinite(e))throw Error(`Exact geometry requires a finite binary64 value`);if(e===0)return Object.freeze({coefficient:0n,exponent:0});Wf.setFloat64(0,e,!1);let t=Wf.getBigUint64(0,!1),n=t>>63n!=0n,r=Number(t>>52n&2047n),i=t&(1n<<52n)-1n,a=r===0?i:1n<<52n|i,o=r===0?-1074:r-1023-52;for(;(a&1n)==0n;)a>>=1n,o+=1;return Object.freeze({coefficient:n?-a:a,exponent:o})}function Kf(e){return e===0n?0:e.toString(2).length}function qf(e,t,n){let r=n>=0?e:e<<BigInt(-n),i=n>=0?t<<BigInt(n):t;return r<i?-1:+(r>i)}function Jf(e,t,n){let r=n>=0?e<<BigInt(n):e,i=n>=0?t:t<<BigInt(-n),a=r/i,o=r%i*2n;return(o>i||o===i&&(a&1n)!=0n)&&(a+=1n),a}function Yf(e){return Wf.setBigUint64(0,e,!1),Wf.getFloat64(0,!1)}function Xf(e){if(e.numerator===0n)return 0;let t=e.numerator<0n,n=Rf(e.numerator),r=e.denominator,i=Kf(n)-Kf(r);qf(n,r,i)<0&&--i;let a=t?1n<<63n:0n;if(i<-1022){let e=Jf(n,r,1074);return Yf(e===0n?a:e>=1n<<52n?a|1n<<52n:a|e)}let o=Jf(n,r,52-i);if(o===1n<<53n&&(o>>=1n,i+=1),i>1023)return t?-1/0:1/0;let s=BigInt(i+1023)<<52n,c=o-(1n<<52n);return Yf(a|s|c)}function Zf(e){if(e===1/0)return e;if(Object.is(e,-0)||e===0)return Number.MIN_VALUE;Wf.setFloat64(0,e,!1);let t=Wf.getBigUint64(0,!1);return Yf(e>0?t+1n:t-1n)}function Qf(e){let t=Xf(e);if(t===1/0)return t;if(t===-1/0)return-Number.MAX_VALUE;let n=Gf(t);return X(n.exponent>=0?{numerator:n.coefficient<<BigInt(n.exponent),denominator:1n}:{numerator:n.coefficient,denominator:1n<<BigInt(-n.exponent)},e)>=0?t:Zf(t)}function $f(e){return-Qf({numerator:-e.numerator,denominator:e.denominator})}function ep(e){if(!e.points||e.points.length<3||e.points.some(e=>!Number.isFinite(e.xPt)||!Number.isFinite(e.yPt)))throw Error(`Invalid ${e.kind} wrapPolygon for ${e.imageKey}`);if(![e.xLeftPt,e.xRightPt,e.yTopPt,e.yBottomPt].every(Number.isFinite)||e.xRightPt<e.xLeftPt||e.yBottomPt<e.yTopPt)throw Error(`Invalid finite wrap bounds for ${e.imageKey}`)}const tp=new WeakMap;function np(e,t){return e.x===t.x&&e.y===t.y}function rp(e,t,n,r){return e*r-t*n}function ip(e,t){return t>0n?e>=0n&&e<=t:e<=0n&&e>=t}function ap(e,t){let n=np(e.from,t.from)||np(e.from,t.to)?e.from:np(e.to,t.from)||np(e.to,t.to)?e.to:null;if(n)return Object.freeze({y:Bf(n.y,1n),contact:`shared-endpoint`});let r=e.to.x-e.from.x,i=e.to.y-e.from.y,a=t.to.x-t.from.x,o=t.to.y-t.from.y,s=rp(r,i,a,o);if(s===0n)return null;let c=t.from.x-e.from.x,l=t.from.y-e.from.y,u=rp(c,l,a,o),d=rp(c,l,r,i);return!ip(u,s)||!ip(d,s)?null:Object.freeze({y:Bf(e.from.y*s+i*u,s),contact:i===0n||o===0n?`horizontal`:`active-crossing`})}function op(e,t){return`${e}:${t}`}function sp(e,t,n){let r=new Set;for(let i of t){if(i<0||i>=Math.floor(e.length/2))continue;n();let t=e[i*2],a=e[i*2+1];r.add(op(t,a))}return r}function cp(e){let t=e=>{if(e.length===0)return null;let n=e[Math.floor(e.length/2)].yTopPt,r=[],i=[],a=[];for(let t of e)t.yBottomPt<=n?r.push(t):t.yTopPt>n?i.push(t):a.push(t);return Object.freeze({centerYPt:n,crossingByTop:Object.freeze(a),crossingByBottom:Object.freeze(a.slice().sort((e,t)=>t.yBottomPt-e.yBottomPt)),below:t(r),above:t(i)})};return t(e.slice().sort((e,t)=>e.yTopPt-t.yTopPt||e.yBottomPt-t.yBottomPt))}function lp(e,t){return Xf(t>=0?{numerator:e.numerator<<BigInt(t),denominator:e.denominator}:{numerator:e.numerator,denominator:e.denominator<<BigInt(-t)})}function up(e,t){return Qf(t>=0?{numerator:e.numerator<<BigInt(t),denominator:e.denominator}:{numerator:e.numerator,denominator:e.denominator<<BigInt(-t)})}function dp(e,t){let n=Gf(e),r=n.exponent-t;return r>=0?{numerator:n.coefficient<<BigInt(r),denominator:1n}:{numerator:n.coefficient,denominator:1n<<BigInt(-r)}}function fp(e,t,n){let r=e.dx*n.numerator-e.c*n.denominator,i=t.dx*n.numerator-t.c*n.denominator,a=r*t.dy-i*e.dy;return a<0n?-1:+(a>0n)}function pp(e){let t=e=>{if(e.length===0)return null;let n=e[Math.floor(e.length/2)].yTop,r=[],i=[],a=[];for(let t of e)X(t.yBottom,n)<=0?r.push(t):X(t.yTop,n)>0?i.push(t):a.push(t);return Object.freeze({centerY:n,crossingByTop:Object.freeze(a),crossingByBottom:Object.freeze(a.slice().sort((e,t)=>X(t.yBottom,e.yBottom))),below:t(r),above:t(i)})};return t(e.slice().sort((e,t)=>X(e.yTop,t.yTop)||X(e.yBottom,t.yBottom)))}function mp(e,t,n,r){if(!(!e||X(n,t)<=0)){if(X(n,e.centerY)<=0){for(let t of e.crossingByTop){if(X(t.yTop,n)>=0)break;r.push(t)}mp(e.below,t,n,r);return}if(X(t,e.centerY)>=0){for(let n of e.crossingByBottom){if(X(n.yBottom,t)<=0)break;r.push(n)}mp(e.above,t,n,r);return}r.push(...e.crossingByTop),mp(e.below,t,n,r),mp(e.above,t,n,r)}}function hp(e,t,n,r,i){let a=new Map,o=new Map;t.forEach((e,t)=>{if(e.minY===e.maxY)return;let n=Uf(Bf(e.minY,1n)),r=Uf(Bf(e.maxY,1n)),i=a.get(n);i?i.push(t):a.set(n,[t]);let s=o.get(r);s?s.push(t):o.set(r,[t])});let s=new Map;for(let e of i){if(e.contact!==`active-crossing`)continue;let t=Uf(e.y),n=s.get(t);n||s.set(t,n=new Set),n.add(e.leftEdge),n.add(e.rightEdge)}let c=[],l=new Set,u=new Map,d=[],f=[],p=0,m=0,h=(t,n,i)=>{for(let a of t){if(n.has(a))continue;let t=u.get(a);if(t&&X(i,t.yTop)>0){let n=Object.freeze({yTop:t.yTop,yBottom:i,leftEdge:t.leftEdge,rightEdge:t.rightEdge});d.push(n);let a=lp(t.yTop,r),o=lp(i,r);o>a&&f.push(Object.freeze({yTopPt:a,yBottomPt:o,left:e[t.leftEdge],right:e[t.rightEdge]}))}u.delete(a)}for(let e of n){if(t.has(e))continue;let n=e.indexOf(`:`);u.set(e,{leftEdge:Number(e.slice(0,n)),rightEdge:Number(e.slice(n+1)),yTop:i})}},g=new Map,_=(e,t)=>{e.add(Math.floor((t-1)/2)),e.add(Math.floor(t/2)),e.add(Math.floor((t+1)/2))},v=e=>sp(c,e,()=>{m+=2}),y=()=>{let e=new Set;for(let t=0;t+1<c.length;t+=2)m+=2,e.add(op(c[t],c[t+1]));return e};for(let e=0;e<n.length;e+=1){let r=n[e],i=n[e+1],u=i?Hf(r,i):r,d=(e,n)=>(p+=1,fp(t[e],t[n],u)||e-n),f=e=>{let t=0,n=c.length;for(;t<n;){let r=t+n>>>1;d(c[r],e)<=0?t=r+1:n=r}c.splice(t,0,e);for(let e=t;e<c.length;e+=1)g.set(c[e],e)},m=e=>{let t=g.get(e);if(t!==void 0){c.splice(t,1),g.delete(e);for(let e=t;e<c.length;e+=1)g.set(c[e],e)}},b=e=>{let n=[...e].filter(e=>g.has(e)&&X(Bf(t[e].minY,1n),r)<=0&&X(r,Bf(t[e].maxY,1n))<0),i=n.map(e=>g.get(e)).sort((e,t)=>e-t);n.sort(d);for(let e=0;e<i.length;e+=1){let t=i[e],r=n[e];c[t]=r,g.set(r,t)}},x=Uf(r),S=o.get(x)??[],C=a.get(x)??[],w=s.get(x)??l;if(S.length===0&&C.length===0&&(w.size===0||i===void 0))continue;let T=S.length>0||C.length>0,E=new Set;if(!T)for(let e of w){let t=g.get(e);t!==void 0&&_(E,t)}let D=T?y():v(E);for(let e of S)m(e);for(let e of C)f(e);if(w.size>0&&i!==void 0&&b(w),c.length%2!=0)throw Error(`Compiled wrapPolygon produced an odd open-slab crossing count`);if(T)h(D,y(),r);else{let e=new Set;for(let t of w){let n=g.get(t);n!==void 0&&_(e,n)}h(D,v(e),r)}}return Object.freeze({spans:Object.freeze(f),exactSpans:Object.freeze(d),orderComparisonCount:p,pairMembershipVisitCount:m})}function gp(e){ep(e);let t=e.points,n=Object.freeze(t.map(e=>Object.freeze({...e}))),r=[...n.flatMap(e=>[e.xPt,e.yPt]),e.xLeftPt,e.xRightPt,e.yTopPt,e.yBottomPt].map(Gf).filter(({coefficient:e})=>e!==0n),i=r.length===0?0:Math.min(...r.map(({exponent:e})=>e)),a=e=>{let t=Gf(e);return t.coefficient===0n?0n:t.coefficient<<BigInt(t.exponent-i)},o=n.map(e=>Object.freeze({x:a(e.xPt),y:a(e.yPt)})),s=n.map((e,t)=>{let r=n[(t+1)%n.length],i=r.yPt-e.yPt,a=i===0?0:(r.xPt-e.xPt)/i;return Object.freeze({from:e,to:r,minYPt:Math.min(e.yPt,r.yPt),maxYPt:Math.max(e.yPt,r.yPt),slopeXPerY:a,interceptX:i===0?e.xPt:e.xPt-a*e.yPt})}),c=o.map((e,t)=>{let n=o[(t+1)%o.length],r=e.y<=n.y?e:n,i=e.y<=n.y?n:e,a=i.x-r.x,s=i.y-r.y;return Object.freeze({index:t,from:e,to:n,minY:r.y,maxY:i.y,dx:a,dy:s,c:a*r.y-s*r.x})}),l=[];for(let e=0;e<c.length;e+=1)for(let t=e+1;t<c.length;t+=1){let n=ap(c[e],c[t]);n&&l.push(Object.freeze({y:n.y,contact:n.contact,leftEdge:e,rightEdge:t}))}let u=1/0,d=-1/0,f=1/0,p=-1/0;for(let e of n)u=Math.min(u,e.xPt),d=Math.max(d,e.xPt),f=Math.min(f,e.yPt),p=Math.max(p,e.yPt);let m=new Map;for(let e of o){let t=Bf(e.y,1n);m.set(Uf(t),t)}for(let e of l)m.set(Uf(e.y),e.y);let h=Object.freeze([...m.values()].sort(X)),g=Object.freeze([...new Set(h.map(e=>lp(e,i)))].sort((e,t)=>e-t)),_=hp(s,c,h,i,l),v=Bf(o.reduce((e,t)=>t.x<e?t.x:e,o[0].x),1n),y=Bf(o.reduce((e,t)=>t.x>e?t.x:e,o[0].x),1n),b=Bf(o.reduce((e,t)=>t.y<e?t.y:e,o[0].y),1n),x=Bf(o.reduce((e,t)=>t.y>e?t.y:e,o[0].y),1n),S=Bf(0n,1n),C=(e,t)=>{let n=Vf(e,t);return X(n,S)>0?n:S},w=Object.freeze({scaleExponent:i,edges:Object.freeze(c),eventYs:h,spans:_.exactSpans,spanIndex:pp(_.exactSpans),polygonLeft:v,polygonRight:y,polygonTop:b,polygonBottom:x,padLeft:C(v,Bf(a(e.xLeftPt),1n)),padRight:C(Bf(a(e.xRightPt),1n),y),padTop:C(b,Bf(a(e.yTopPt),1n)),padBottom:C(Bf(a(e.yBottomPt),1n),x)}),T=Object.freeze({kind:e.kind,edges:Object.freeze(s),eventYPts:g,contourSpans:_.spans,contourSpanIndex:cp(_.spans),intersectionCount:l.length,compileOrderComparisonCount:_.orderComparisonCount,compilePairMembershipVisitCount:_.pairMembershipVisitCount,polygonLeftPt:u,polygonRightPt:d,polygonTopPt:f,polygonBottomPt:p,padLeftPt:Math.max(0,u-e.xLeftPt),padRightPt:Math.max(0,e.xRightPt-d),padTopPt:Math.max(0,f-e.yTopPt),padBottomPt:Math.max(0,e.yBottomPt-p)});return tp.set(T,w),T}function _p(e,t){return{numerator:e.dx*t.numerator-e.c*t.denominator,denominator:e.dy*t.denominator}}function vp(e,t){return e.dx*t.dy===t.dx*e.dy&&e.c*t.dy===t.c*e.dy}function yp(e){let t=e.filter(e=>X(e.r,e.l)>0).slice().sort((e,t)=>X(e.l,t.l)||X(e.r,t.r)),n=[];for(let e of t){let t=n.at(-1);!t||X(e.l,t.r)>0?n.push({...e}):X(e.r,t.r)>0&&(n[n.length-1]={l:t.l,r:e.r})}return n}function bp(e,t){return{numerator:e.numerator*t.denominator+t.numerator*e.denominator,denominator:e.denominator*t.denominator}}function xp(e,t){return{numerator:e.numerator*t.denominator-t.numerator*e.denominator,denominator:e.denominator*t.denominator}}function Sp(e,t,n){let r=tp.get(e);if(!r)throw Error(`Compiled polygon omitted its exact geometry authority`);let i=xp(t,r.padBottom),a=bp(n,r.padTop),o=X(r.polygonTop,i)>=0?r.polygonTop:i,s=X(r.polygonBottom,a)<=0?r.polygonBottom:a;if(X(s,o)<=0)return[];let c=[],l=[];mp(r.spanIndex,o,s,l);for(let e of l){let t=X(o,e.yTop)>=0?o:e.yTop,n=X(s,e.yBottom)<=0?s:e.yBottom;if(X(n,t)<=0)continue;let i=r.edges[e.leftEdge],a=r.edges[e.rightEdge];if(vp(i,a))continue;let l=_p(i,t),u=_p(i,n),d=_p(a,t),f=_p(a,n);c.push({l:xp(X(l,u)<=0?l:u,r.padLeft),r:bp(X(d,f)>=0?d:f,r.padRight)})}let u=yp(c);return e.kind===`through`||u.length===0?u:[{l:u[0].l,r:u.at(-1).r}]}function Cp(e,t,n){let r=tp.get(e);if(!r)throw Error(`Compiled polygon omitted its exact geometry authority`);let i=dp(t,r.scaleExponent),a=bp(i,dp(n,r.scaleExponent)),o=e=>r.scaleExponent>=0?{numerator:e.numerator<<BigInt(r.scaleExponent),denominator:e.denominator}:{numerator:e.numerator,denominator:e.denominator<<BigInt(-r.scaleExponent)};return Object.freeze(Sp(e,i,a).map(e=>Object.freeze({l:o(e.l),r:o(e.r)})))}function wp(e,t){let n=tp.get(e);if(!n)throw Error(`Compiled polygon omitted its exact geometry authority`);let r=dp(t,n.scaleExponent),i=new Set;for(let e of n.eventYs)i.add(up(bp(e,n.padBottom),n.scaleExponent)),i.add(up(xp(xp(e,r),n.padTop),n.scaleExponent));return Object.freeze([...i].filter(Number.isFinite).sort((e,t)=>e-t))}function Tp(e,t,n,r){let i=tp.get(e);if(!i)throw Error(`Compiled polygon omitted its exact geometry authority`);let a=Hf(dp(n,i.scaleExponent),dp(r,i.scaleExponent)),o=dp(t,i.scaleExponent),s=xp(a,i.padBottom),c=bp(o,i.padTop),l=bp(a,c),u=X(i.polygonTop,s)>=0?i.polygonTop:s,d=X(i.polygonBottom,l)<=0?i.polygonBottom:l,f=[],p=[];mp(i.spanIndex,u,d,p);for(let e of p){let t=X(u,e.yTop)>=0?u:e.yTop;if(X(X(d,e.yBottom)<=0?d:e.yBottom,t)<=0)continue;let n=i.edges[e.leftEdge],r=i.edges[e.rightEdge];if(vp(n,r))continue;let a=X(s,e.yTop)>0,o=X(l,e.yBottom)<0,p=(e,t,n,r)=>{let a=t?n:r,o={numerator:e.dx*a.numerator-e.c*a.denominator,denominator:e.dy*a.denominator};return{slope:t?{numerator:e.dx,denominator:e.dy}:{numerator:0n,denominator:1n},intercept:i.scaleExponent>=0?{numerator:o.numerator<<BigInt(i.scaleExponent),denominator:o.denominator}:{numerator:o.numerator,denominator:o.denominator<<BigInt(-i.scaleExponent)}}},m=p(n,a,{numerator:-i.padBottom.numerator,denominator:i.padBottom.denominator},e.yTop),h=p(n,o,c,e.yBottom),g=p(r,a,{numerator:-i.padBottom.numerator,denominator:i.padBottom.denominator},e.yTop),_=p(r,o,c,e.yBottom),v=n.dx>=0n?m:h,y=r.dx>=0n?_:g,b=Object.freeze({left:Object.freeze({slope:v.slope,intercept:xp(v.intercept,i.scaleExponent>=0?{numerator:i.padLeft.numerator<<BigInt(i.scaleExponent),denominator:i.padLeft.denominator}:{numerator:i.padLeft.numerator,denominator:i.padLeft.denominator<<BigInt(-i.scaleExponent)})}),right:Object.freeze({slope:y.slope,intercept:bp(y.intercept,i.scaleExponent>=0?{numerator:i.padRight.numerator<<BigInt(i.scaleExponent),denominator:i.padRight.denominator}:{numerator:i.padRight.numerator,denominator:i.padRight.denominator<<BigInt(-i.scaleExponent)})})});f.push(b)}return Object.freeze(f)}function Ep(e,t,n){return e.left<t.right-n&&e.right>t.left+n&&e.top<t.bottom-n&&e.bottom>t.top+n}function Dp(e,t,n){let r=e.right-e.left,i=e.bottom-e.top;if(r<0||i<0)throw RangeError(`Overlap rectangle has negative extent`);let a=e.left,o=e.top;for(let e=0;e<=t.length;e+=1){let s={left:a,right:a+r,top:o,bottom:o+i},c=t.map(e=>({left:e.left,right:e.right,top:e.top,bottom:e.bottom})).filter(e=>Ep(s,e,n.overlapEpsilon));if(c.length===0)return Object.freeze({left:a,top:o});if(e===t.length)throw Error(`Axis-aligned overlap resolution did not converge`);let l=Math.max(...c.map(e=>e.right));if(l+r<=n.rightBoundary+n.rightBoundarySlack){a=l;continue}o=Math.max(...c.map(e=>e.bottom))}throw Error(`Axis-aligned overlap resolution did not converge`)}function Op(e,t){if(e.trim()===``)throw Error(`CompatibilityRule.${t} must not be empty`)}function Z(e){if(Op(e.id,`id`),Op(e.description,`description`),!/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(e.id))throw Error(`CompatibilityRule.id must be a stable kebab-case identifier`);if(e.evidence.kind===`microsoft-note`){if(Op(e.evidence.reference,`evidence.reference`),!/^\\[MS-[A-Z0-9]+\\] §§?\\d/.test(e.evidence.reference))throw Error(`CompatibilityRule.evidence.reference must identify a Microsoft specification section`)}else if(e.evidence.kind===`regression-test`){if(Op(e.evidence.reference,`evidence.reference`),!/^packages\\/docx\\/src\\/.+\\.(?:test|spec)\\.tsx?#[^#]+$/.test(e.evidence.reference))throw Error(`CompatibilityRule.evidence.reference must use DOCX path#test-title`)}else if(Op(e.evidence.syntheticFixtureId,`evidence.syntheticFixtureId`),Op(e.evidence.application,`evidence.application`),Op(e.evidence.version,`evidence.version`),Op(e.evidence.platform,`evidence.platform`),!/^[a-z0-9]+(?:-[a-z0-9]+)*$/.test(e.evidence.syntheticFixtureId))throw Error(`CompatibilityRule.evidence.syntheticFixtureId must be kebab-case`);return Object.freeze(e.evidence),Object.freeze(e)}Z({id:`word-section-btlr-tbrl-page-frame`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/coordinate-space.test.ts#maps Transitional text direction %s to %s`},description:`Issue #988 comment 4950296007 records that, unlike the normative ECMA-376 Part 4 §14.11.7 equivalence to lr, Word uses the tbRl page frame for section-level btLr; this rule covers only the page frame, while glyph orientation is paint-owned.`}),Z({id:`word-square-line-start-one-inch`,evidence:{kind:`regression-test`,reference:`packages/docx/src/float-line-start-one-inch.test.ts#(e) the boundary is identical across scales (absolute pt width)`},description:`Issue #676 records that Word starts a content line beside a square-wrapped object only when the free side gap is at least one inch; tight and through polygon openings and empty paragraph marks are outside this rule.`});const kp=Z({id:`word-float-different-paragraph-displacement`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/floats.test.ts#keeps observed different-paragraph displacement on exclusion bounds`},description:`Preserve the established Word-compatible policy that an overlap-permitted float is displaced by exclusion geometry from floats anchored in other paragraphs, while same-paragraph floats may overlap.`}),Ap=Z({id:`word-page-anchored-table-collision-deferral`,evidence:{kind:`regression-test`,reference:`packages/docx/src/float-table-page-fit.test.ts#(g) DEFERS a page-anchored floating table when its raw band intersects an existing table float`},description:`Preserve the established Word-compatible pagination behavior that defers an absolute page- or margin-anchored floating table when its authored object band intersects an existing floating-table text-exclusion band on the page.`});Z({id:`word-empty-mark-float-side-gap`,evidence:{kind:`regression-test`,reference:`packages/docx/src/float-line-start-one-inch.test.ts#keeps an anchor-host metric-only line on the paragraph-mark threshold`},description:`An empty or anchor-only paragraph-mark line may start beside a square-wrapped object when the available side gap can hold the paragraph mark em; the one-inch content-line threshold does not apply.`});function jp(e){return 71.95*e}function Mp(e,t){return e*t}const Np=.01,Pp=.5;function Fp(e,t){return Object.freeze(e===`overlap`?{kind:`word-different-paragraph`,paragraphId:t}:{kind:`none`})}function Ip(e,t){return Object.freeze(e?{kind:`word-different-paragraph`,paragraphId:t}:{kind:`drawingml-normative`})}function Lp(e){let t={occurrenceId:e.occurrenceId,paragraphId:e.paragraphId,bounds:e.bounds,exclusionBounds:e.exclusionBounds};return e.kind===`table`?{...t,kind:`table`,tableOverlap:e.overlap}:{...t,kind:e.kind===`shape`?`drawingml`:`frame`}}function Rp(e,t){let n=e.imageX,r=e.imageY,i=e.imageW,a=e.imageH,o=e.xLeft,s=e.xRight,c=e.yTop,l=e.yBottom,u={occurrenceId:e.anchorOccurrenceId??e.acquisitionOccurrenceId??`display-float:${t}`,paragraphId:e.paraId,bounds:{xPt:n,yPt:r,widthPt:i,heightPt:a},exclusionBounds:{xPt:o,yPt:c,widthPt:s-o,heightPt:l-c}};return e.kind===`table`?{...u,kind:`table`,tableOverlap:e.tableOverlap}:{...u,kind:e.kind===`shape`?`drawingml`:`frame`}}function zp(e){let t=e.xPt,n=e.yPt,r=e.widthPt,i=e.heightPt;return{left:t,right:t+r,top:n,bottom:n+i}}function Bp(e,t,n){return t===0&&n===0?e:Object.freeze({xPt:e.xPt+t,yPt:e.yPt+n,widthPt:e.widthPt,heightPt:e.heightPt})}function Vp(e,t,n,r){return Object.freeze({bounds:Bp(e.bounds,t,n),exclusionBounds:Bp(e.exclusionBounds,t,n),displacement:Object.freeze({xPt:t,yPt:n}),appliedCompatibilityRuleIds:Object.freeze([...r])})}function Hp(e,t){let n=e.bounds.xPt-e.exclusionBounds.xPt,r=e.bounds.yPt-e.exclusionBounds.yPt,i=e.exclusionBounds.xPt+e.exclusionBounds.widthPt-e.bounds.xPt-e.bounds.widthPt,a=e.exclusionBounds.yPt+e.exclusionBounds.heightPt-e.bounds.yPt-e.bounds.heightPt,o=zp(t.exclusionBounds);return{left:o.left-i,right:o.right+n,top:o.top-a,bottom:o.bottom+r}}function Up(e,t,n=e.rightBoundaryPt){let r=zp(e.moving.bounds);return t.length===0?Object.freeze({left:r.left,top:r.top}):Dp(r,t,{overlapEpsilon:e.overlapEpsilonPt??0,rightBoundary:n,rightBoundarySlack:e.rightBoundarySlackPt??0})}function Wp(e){let{moving:t,avoidance:n}=e,r=e.blockers.flatMap(e=>t.kind===`table`&&e.kind===`table`&&(t.tableOverlap===`never`||e.tableOverlap===`never`)||n.kind===`drawingml-normative`&&e.kind===`drawingml`?[zp(e.bounds)]:[]),i=n.kind===`word-different-paragraph`?e.blockers.flatMap(e=>e.paragraphId===n.paragraphId?[]:[Hp(t,e)]):[],a=t.exclusionBounds.xPt+t.exclusionBounds.widthPt-t.bounds.xPt-t.bounds.widthPt,o=n.kind===`word-different-paragraph`?e.rightBoundaryPt-a:e.rightBoundaryPt,s=Up(e,r,o),c=i.length===0?s:Up(e,[...r,...i],o);return Vp(t,c.left-t.bounds.xPt,c.top-t.bounds.yPt,c.left!==s.left||c.top!==s.top?[kp.id]:[])}function Gp(e){if(e.inlineEndPt<e.inlineStartPt||e.blockExtentPt<0)throw RangeError(`Block-flow admission received a negative extent`);let t=e.blockers.filter(t=>{let n=t.exclusionBounds;return t.kind===`table`&&e.inlineEndPt-n.xPt>e.overlapEpsilonPt&&n.xPt+n.widthPt-e.inlineStartPt>e.overlapEpsilonPt}),n=e.blockStartPt;for(let r=0;r<=t.length;r+=1){let i=t.filter(t=>{let r=t.exclusionBounds;return n+e.blockExtentPt-r.yPt>e.overlapEpsilonPt&&r.yPt+r.heightPt-n>e.overlapEpsilonPt});if(i.length===0)return Object.freeze({blockStartPt:n});if(r===t.length)throw Error(`Block-flow float admission did not converge`);n=Math.max(...i.map(e=>e.exclusionBounds.yPt+e.exclusionBounds.heightPt))}throw Error(`Block-flow float admission did not converge`)}function Kp(e){let t=zp(e.bounds),n=e.blockers.some(n=>n.kind===`table`&&Ep(t,zp(n.exclusionBounds),e.overlapEpsilonPt));return Object.freeze({defer:n,appliedCompatibilityRuleIds:Object.freeze(n?[Ap.id]:[])})}function Q(e){let t=Gf(e);return t.exponent>=0?{numerator:t.coefficient<<BigInt(t.exponent),denominator:1n}:{numerator:t.coefficient,denominator:1n<<BigInt(-t.exponent)}}function qp(e,t){return{numerator:e.numerator*t.denominator+t.numerator*e.denominator,denominator:e.denominator*t.denominator}}function Jp(e,t){return{numerator:e.numerator*t.denominator-t.numerator*e.denominator,denominator:e.denominator*t.denominator}}function Yp(e,t){return{numerator:e.numerator*t.numerator,denominator:e.denominator*t.denominator}}function Xp(e,t){let n=t.numerator<0n;return{numerator:(n?-e.numerator:e.numerator)*t.denominator,denominator:e.denominator*(n?-t.numerator:t.numerator)}}function Zp(e,t){let n=Q(e),r=Q(t);return Xf({numerator:n.numerator*r.denominator+r.numerator*n.denominator,denominator:2n*n.denominator*r.denominator})}function Qp(e){switch(e){case`left`:case`right`:case`largest`:case`bothSides`:return e;default:return`bothSides`}}function $p(e){return e===`square`||e===`topAndBottom`||e===`tight`||e===`through`}function em(e,t,n){return e.xRight>t+.01&&e.xLeft<n-.01}const tm=new WeakMap,nm=new WeakMap;function rm(e){return Object.isFrozen(e)&&e.every(e=>Object.isFrozen(e))}function im(e,t,n,r,i,a){return e.kind===t&&Object.is(e.xLeftPt,n)&&Object.is(e.xRightPt,r)&&Object.is(e.yTopPt,i)&&Object.is(e.yBottomPt,a)}function am(e,t,n){let r=e.authoredWrap;if(r!==`tight`&&r!==`through`)throw Error(`Polygon compilation requires tight or through wrap`);let i={kind:r,imageKey:e.imageKey,points:e.wrapPolygon,xLeftPt:e.xLeft,xRightPt:e.xRight,yTopPt:e.yTop,yBottomPt:e.yBottom};ep(i);let a=rm(t);if(a){let i=nm.get(t)?.find(t=>im(t,r,e.xLeft,e.xRight,e.yTop,e.yBottom));if(i)return n&&(n.polygonCacheHitCount+=1),i.compiled}n&&(n.polygonCompileCount+=1);let o=gp(i);if(a){let n=Object.freeze({kind:r,xLeftPt:e.xLeft,xRightPt:e.xRight,yTopPt:e.yTop,yBottomPt:e.yBottom,compiled:o});nm.set(t,Object.freeze([n,...(nm.get(t)??[]).slice(0,3)]))}return o}function om(e,t){let n=e.map(e=>{let n=e.wrapPolygon;t&&n&&(t.polygonSnapshotPointCount+=n.length);let r=Object.freeze({...e,...n?{wrapPolygon:Object.freeze(n.map(e=>Object.freeze({...e})))}:{}}),i=r.authoredWrap===`tight`||r.authoredWrap===`through`?am(r,n??[],t):null;return Object.freeze({rect:r,polygon:i,wrapMaximumLeftPt:i?Math.min(r.xLeft,i.polygonLeftPt):r.xLeft,wrapMaximumRightPt:i?Math.max(r.xRight,i.polygonRightPt):r.xRight})}),r=Object.freeze({floats:Object.freeze(n)});return tm.set(r,new Map),r}function sm(e,t){let n=Qp(e.rect.side);if(n!==`largest`)return n;let r=X(Jp(Q(e.wrapMaximumLeftPt),Q(t.xLeftPt)),Jp(Q(t.xRightPt),Q(e.wrapMaximumRightPt)));return r===0?t.readingDirection===`ltr`?`left`:`right`:r>0?`left`:`right`}function cm(e,t,n,r,i,a){let{rect:o,polygon:s}=e,c=s?Cp(s,t,n):[{l:Q(o.xLeft),r:Q(o.xRight)}];if(c.length===0)return[];let l=s===null,u=c.reduce((e,t)=>X(t.l,e)<0?t.l:e,c[0].l),d=c.reduce((e,t)=>X(t.r,e)>0?t.r:e,c[0].r);switch(sm(e,a)){case`left`:return[{l:u,r:Q(i),leftSquareBoundary:l,rightSquareBoundary:!1}];case`right`:return[{l:Q(r),r:d,leftSquareBoundary:!1,rightSquareBoundary:l}];case`bothSides`:return c.map(e=>({...e,leftSquareBoundary:l,rightSquareBoundary:l}))}}function lm(e,t){let n=tm.get(t);if(!n)throw Error(`Prepared float geometry omitted its sweep cache`);let r=n.get(e);if(r)return r;let i=new Set,a=e=>{Number.isFinite(e)&&i.add(e)};for(let{rect:n,polygon:r}of t.floats)if(a(Qf(Jp(Q(n.yTop),Q(e)))),a(n.yBottom),r)for(let t of wp(r,e))a(t);let o=Object.freeze([...i].sort((e,t)=>e-t));return n.set(e,o),o}function um(e){let t=e.filter(e=>X(e.r,e.l)>0).slice().sort((e,t)=>X(e.l,t.l)||X(e.r,t.r)),n=[];for(let e of t){let t=n.at(-1);if(!t||X(e.l,t.r)>0){n.push({...e});continue}X(e.l,t.l)===0&&(t.leftSquareBoundary=t.leftSquareBoundary&&e.leftSquareBoundary);let r=X(e.r,t.r);r>0?(t.r=e.r,t.rightSquareBoundary=e.rightSquareBoundary):r===0&&(t.rightSquareBoundary=t.rightSquareBoundary&&e.rightSquareBoundary)}return n}function dm(e,t,n,r,i){let a=um(e),o=Q(t),s=Q(n),c=[],l=(e,t,n)=>{let r=X(o,e)>=0?o:e,i=X(s,t)<=0?s:t;X(i,r)>0&&c.push({l:r,r:i,squareConstrained:n})},u=o,d=!1;for(let e of a){if(X(e.r,o)<=0){d=e.rightSquareBoundary;continue}if(X(e.l,s)>=0){l(u,s,d),u=s;break}X(e.l,u)>0&&l(u,e.l,d||e.leftSquareBoundary);let t=X(e.r,u);if(t>0?(u=e.r,d=e.rightSquareBoundary):t===0&&(d&&=e.rightSquareBoundary),X(u,s)>=0)break}X(u,s)<0&&l(u,s,d);let f={numerator:0n,denominator:1n};for(let e of c){let t=Jp(e.r,e.l);X(t,f)>0&&(f=t)}for(let e of c){let t=Jp(e.r,e.l);if(X(t,f)===0&&X(t,Q(Math.max(1,e.squareConstrained?i:r)))>=0)return{l:e.l,r:e.r,squareConstrained:e.squareConstrained}}return null}function fm(e,t,n,r,i,a,o,s,c,l,u){let d=Q(e),f=qp(d,Q(t)),p=e=>Q(e);if(a.floats.some(({rect:e})=>e.mode===`topAndBottom`&&em(e,o,s)&&X(f,p(e.yTop))>0&&X(d,p(e.yBottom))<0))return null;let m=[];for(let i of a.floats){let{rect:a}=i;if(a.mode!==`square`||X(f,p(a.yTop))<=0||X(d,p(a.yBottom))>=0||!em(a,n,r))continue;let o=cm(i,e,t,n,r,c);o.length!==0&&m.push(...o)}if(m.length===0)return{topY:e,xOffset:0,maxWidth:i};let h=dm(m,n,r,l,u);if(!h)return null;let g={numerator:0n,denominator:1n},_=Jp(h.l,Q(n)),v=X(_,g)>0?_:g,y=Q(n),b=Qf(v),x=n+b,S=Q(x);if(X(S,h.l)<0&&(b=Qf(Jp(Q(Qf(h.l)),y)),x=n+b,S=Q(x)),X(S,h.l)<0)throw Error(`Exact float window could not represent a contained start`);let C=Q(r),w=X(h.r,C)<=0?h.r:C,T=Jp(Q($f(w)),S),E=$f(X(T,g)>0?T:g);if(X(Q(x+E),w)>0)throw Error(`Exact float window could not represent a contained end`);return{topY:e,xOffset:b,maxWidth:E}}function pm(e,t){return qp(Yp(e.exact.slope,Q(t)),e.exact.intercept)}function mm(e,t){return X(e.exact.slope,t.exact.slope)===0&&X(e.exact.intercept,t.exact.intercept)===0}function hm(e,t,n){return X(pm(e,n),pm(t,n))||X(e.exact.slope,t.exact.slope)}function gm(e,t,n){let r=Jp(e.slope,t.slope);if(r.numerator===0n)return null;let i=Jp(e.intercept,t.intercept);return Xp(Jp(Q(n),i),r)}function _m(e,t,n,r,i){t===null||X(t,Q(n))<=0||X(t,Q(r))>=0||(e.push(Qf(t)),i&&(i.localRootCandidateCount+=1))}function vm(e,t,n,r,i,a){let o=e[0];for(let r of e.slice(1)){let e=hm(r,o,n);(t===`min`&&e<0||t===`max`&&e>0)&&(o=r)}let s=o.square;for(let c of e)if(c!==o){if(mm(c,o)){s&&=c.square;continue}(t===`min`?X(c.exact.slope,o.exact.slope)<0:X(c.exact.slope,o.exact.slope)>0)&&_m(i,gm(c.exact,o.exact,0),n,r,a)}return{exact:o.exact,square:s}}function ym(e,t=!1){return{exact:{slope:{numerator:0n,denominator:1n},intercept:Q(e)},square:t}}function bm(e,t,n,r,i,a,o,s,c){let{rect:l,polygon:u}=e,d=Q(Zp(n,r));if(X(qp(d,Q(t)),Q(l.yTop))<=0||X(d,Q(l.yBottom))>=0)return[];let f=u?Tp(u,t,n,r).map(e=>({left:{exact:e.left,square:!1},right:{exact:e.right,square:!1}})):[{left:ym(l.xLeft,!0),right:ym(l.xRight,!0)}];if(f.length===0)return[];let p=vm(f.map(e=>e.left),`min`,n,r,s,c),m=vm(f.map(e=>e.right),`max`,n,r,s,c);switch(u?.kind===`tight`&&(f=[{left:p,right:m}]),sm(e,o)){case`left`:return[{left:p,right:ym(a)}];case`right`:return[{left:ym(i),right:m}];case`bothSides`:return f}}function xm(e,t,n,r,i){let a=e.slice().sort((e,n)=>hm(e.left,n.left,t)||hm(e.right,n.right,t));for(let e=0;e+1<a.length;e+=1)_m(r,gm(a[e].left.exact,a[e+1].left.exact,0),t,n,i);let o=[];for(let e of a){let a=o.at(-1);if(!a){o.push(e);continue}if(_m(r,gm(e.left.exact,a.right.exact,0),t,n,i),hm(e.left,a.right,t)>0){o.push(e);continue}let s=vm([a.right,e.right],`max`,t,n,r,i),c=mm(a.left,e.left)?{exact:a.left.exact,square:a.left.square&&e.left.square}:a.left;o[o.length-1]={left:c,right:s}}return o}function Sm(e,t,n,r,i,a,o,s,c,l,u,d){let f=Q(Zp(e,t)),p=qp(f,Q(n));if(a.floats.some(({rect:e})=>e.mode===`topAndBottom`&&em(e,o,s)&&X(p,Q(e.yTop))>0&&X(f,Q(e.yBottom))<0))return null;let m=[],h=[];for(let o of a.floats){let{rect:a}=o;a.mode===`square`&&em(a,r,i)&&h.push(...bm(o,n,e,t,r,i,c,m,d))}if(h.length===0)return null;let g=xm(h,e,t,m,d),_=ym(r),v=ym(i),y=[],b=(n,r,i)=>{let a={slope:Jp(r.exact.slope,n.exact.slope),intercept:Jp(r.exact.intercept,n.exact.intercept)};y.push({exactWidth:a});let o=Math.max(1,i?u:l);X(qp(Yp(a.slope,Q(e)),a.intercept),Q(o))<0&&a.slope.numerator>0n&&_m(m,gm(r.exact,n.exact,o),e,t,d)},x=_;for(let e of g)b(x,e.left,x.square||e.left.square),x=e.right;b(x,v,x.square);let S=y[0];for(let t of y.slice(1))(X(qp(Yp(t.exactWidth.slope,Q(e)),t.exactWidth.intercept),qp(Yp(S.exactWidth.slope,Q(e)),S.exactWidth.intercept))||X(t.exactWidth.slope,S.exactWidth.slope))>0&&(S=t);if(S)for(let n of y)n===S||X(n.exactWidth.slope,S.exactWidth.slope)<=0||_m(m,gm(n.exactWidth,S.exactWidth,0),e,t,d);return m.length===0?null:Math.min(...m)}function Cm(e,t,n,r,i,a,o=r,s=r+i,c={xLeftPt:r,xRightPt:r+i,readingDirection:`ltr`},l=t,u=null){let d=r,f=r+i,p=lm(n,a);if(u){u.structuralEventCount=p.length;for(let{polygon:e}of a.floats)e&&(u.compiledIntersectionCount+=e.intersectionCount,u.compiledContourSpanCount+=e.contourSpans.length,u.compileOrderComparisonCount+=e.compileOrderComparisonCount,u.compilePairMembershipVisitCount+=e.compilePairMembershipVisitCount)}let m=e=>(u&&(u.evaluatedYCount+=1),fm(e,n,d,f,i,a,o,s,c,t,l)),h=m(e);if(h)return h;let g=e,_=p.findIndex(e=>e>g);for(;_>=0&&_<p.length;){let e=p[_],r=Sm(g,e,n,d,f,a,o,s,c,t,l,u);if(r!==null){u&&(u.localRootEventCount+=1);let e=m(r);if(e)return e;g=r;continue}let i=m(e);if(i)return i;g=e;do _+=1;while(_<p.length&&p[_]<=g)}throw Error(`Finite float line-window event sweep found no usable terminal Y`)}function wm(e,t,n,r,i,a,o=r,s=r+i,c={xLeftPt:r,xRightPt:r+i,readingDirection:`ltr`},l=t){return Cm(e,t,n,r,i,a,o,s,c,l)}function Tm(e,t,n,r){let i=new Set;for(;;){let a=e;for(let i of t)i.mode===`topAndBottom`&&em(i,n,r)&&e>=i.yTop&&e<i.yBottom&&(a=Math.max(a,i.yBottom));if(a===e)return e;if(!Number.isFinite(a)||a<e||i.has(a))throw Error(`Top-and-bottom solver violated strictly increasing finite-bottom progress`);i.add(a),e=a}}const Em=new Set([`+`,`-`,`−`,`=`,`±`,`×`,`÷`]);function Dm(e){return Em.has(e)?` ${e} `:e}function Om(e){return e.map(e=>{switch(e.kind){case`run`:return Dm(e.text);case`fraction`:return`${Om(e.num)}/${Om(e.den)}`;case`sup`:return`${Om(e.base)}^${Om(e.sup??[])}`;case`sub`:return`${Om(e.base)}_${Om(e.sub??[])}`;case`subSup`:return`${Om(e.base)}_${Om(e.sub??[])}^${Om(e.sup??[])}`;case`nary`:return`${e.op}${Om(e.sub??[])}${Om(e.sup??[])}${Om(e.body)}`;case`delimiter`:return`${e.begChar}${e.items.map(Om).join(`,`)}${e.endChar}`;case`radical`:return`${e.index?.length?Om(e.index):``}√${Om(e.radicand)}`;case`limit`:return`${Om(e.base)}${Om(e.lower??[])}${Om(e.upper??[])}`;case`array`:return e.rows.map(e=>e.map(Om).join(` `)).join(` `);case`groupChr`:return`${e.char}${Om(e.base)}`;case`bar`:case`box`:case`borderBox`:return Om(e.base);case`accent`:return`${e.char}${Om(e.base)}`;case`func`:return`${Om(e.name)}(${Om(e.arg)})`;case`group`:return Om(e.items);case`phant`:return e.show?Om(e.base):``;case`sPre`:return`${Om(e.sub)}${Om(e.sup)}${Om(e.base)}`}}).join(``).replace(/[ \\t]{2,}/g,` `)}var km=class extends Y{reason;states;passes;constructor(e,t,n){super(`NON_CONVERGENCE`,e===`cycle`?`repeated exact-state cycle at ${t.at(-1)??`<missing>`}`:`hard exact-state pass limit ${n} reached`),this.name=`ExactConvergenceError`,this.reason=e,this.states=Object.freeze([...t]),this.passes=n}};function Am(e){let{seedState:t,step:n,stateOf:r,limit:i}=e,a=t===void 0?2:1;if(!Number.isInteger(i)||i<a)throw RangeError(`Exact convergence limit must be an integer >= ${a}`);let o=t===void 0?[]:[t],s=new Set(o),c=null;for(let e=1;e<=i;e+=1){let t=n(c,e),a=r(t),l=o.at(-1);if(o.push(a),l===a)return Object.freeze({value:t,passes:e});if(s.has(a))throw new km(`cycle`,o,e);if(s.add(a),e===i)throw new km(`limit`,o,e);c=t}throw new km(`limit`,o,i)}function jm(e,t,n){if(!Number.isInteger(n)||n<1)throw new Y(`NON_CONVERGENCE`,`limit must be a positive integer`);try{return Am({seedState:e.fingerprint,step:n=>t(n??e),stateOf:e=>e.fingerprint,limit:n}).value}catch(e){throw e instanceof km?new Y(`NON_CONVERGENCE`,e.reason===`cycle`?`repeated geometry fingerprint cycle at ${e.states.at(-1)??`<missing>`}`:`hard iteration limit ${n} reached`):e}}var Mm=class extends Y{reason;states;constructor(e,t){super(`NON_CONVERGENCE`,e===`cycle`?`line wrap measure/resolve cycle did not converge (${t.length} states)`:`line wrap measure/resolve pass limit did not converge (${t.length} states)`),this.name=`LineWrapNonConvergenceError`,this.reason=e,this.states=Object.freeze([...t])}};function Nm(e){return e.map(e=>({...e}))}function Pm(e,t){return JSON.stringify(e.map((e,n)=>({end:e.consumedEnd,topY:e.topY,xOffset:e.xOffset,availableWidth:e.availWidth,probeHeight:t[n],segments:e.segments.map(e=>({source:e.src,...e.text===void 0?{}:{text:e.text}}))})))}function Fm(e,t){try{return Am({step:n=>{let r=e(n?.probeHeights??null),i=Object.freeze(r.map(t));return Object.freeze({lines:r,probeHeights:i,state:Pm(r,i)})},stateOf:e=>e.state,limit:16}).value.lines}catch(e){throw e instanceof km?new Mm(e.reason,e.states):e}}Z({id:`word-east-asian-grid-line-allocation`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/compatibility.test.ts#pins East Asian grid allocation and the untabled Far East metric factor`},description:`For an East Asian single-spaced line on a document grid, preserve the measured whole-cell allocation from the intended face design height and use the established 1.3-times-em fallback only when that design height is unavailable.`}),Z({id:`word-table-cell-ignores-grid-right-indent-adjustment`,evidence:{kind:`office-observation`,syntheticFixtureId:`table-cell-adjust-right-indent-width-position-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`In the observed linesAndChars matrix, paragraphs inside fixed-width table cells retain the same line breaks for omitted (default true) and explicit-false w:adjustRightInd across four boundary widths and both left/right cell positions. Scope this Word-only exception to table-cell containers; ordinary body paragraphs retain the ECMA-376 §17.3.1.1 adjustment.`}),Z({id:`word-snap-to-chars-east-asian-cell-fit`,evidence:{kind:`office-observation`,syntheticFixtureId:`snap-to-chars-east-asian-cell-fit-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`For snapToChars, Word centers each East-Asian grapheme independently in the smallest whole number of character-pitch units that contains its natural advance. A grapheme that fits uses the one-unit placement described by [MS-OI29500] §2.1.534; an undersized authored pitch expands only that grapheme to additional units.`}),Z({id:`word-snap-to-chars-script-block-allocation`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.534`},description:`Allocate snapToChars Latin text in contiguous blocks centered across the required grid units, complex-script blocks from their leading edge, and East-Asian graphemes independently by character cell.`});function Im(e,t){return!(t>0)||!Number.isFinite(e)?1:Math.max(1,Math.ceil(Math.max(0,e)/t-1e-9))}function Lm(e){return!e}Z({id:`word-grid-right-indent-pitch-alignment`,evidence:{kind:`office-observation`,syntheticFixtureId:`grid-right-indent-character-pitch-boundary-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`For body paragraphs whose ECMA-376 §17.3.1.1 adjustment is enabled on a linesAndChars character grid, Word reduces the physical line width to the greatest whole character-pitch multiple not exceeding the available width. The observed matrix covers exact and non-exact widths, zero and negative charSpace, explicit opt-out, line-only control, both physical indent sides, and the separately registered table-cell exception.`});function Rm(e,t){if(!(t>0)||!Number.isFinite(e)||e<=0)return 0;let n=(e%t+t)%t,r=1e-9;return n<=r||t-n<=r?0:n}Z({id:`word-hanging-tab-same-position-precedence`,evidence:{kind:`office-observation`,syntheticFixtureId:`hanging-indent-authored-tab-collision-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`When the implicit tab created by a hanging indent shares its coordinate with an authored center, end, or start stop, Word resolves one advancing stop at that coordinate using the authored alignment. An authored bar remains an independent drawing rule, so the implicit advancing stop survives beside it. If center/end alignment would place following text before the current pen, the tab contributes zero advance.`});function zm(e){return e!==`bar`&&e!==`clear`}Z({id:`word-rtl-decimal-tab-physical-alignment`,evidence:{kind:`office-observation`,syntheticFixtureId:`rtl-decimal-tab-run-boundary-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`For LTR numeric cells embedded in a bidi paragraph, Word aligns the physical left edge of the first halfwidth period to the decimal stop across source-run boundaries. When no period exists, it aligns the numeric cell's physical right edge to the stop.`}),Z({id:`word-decimal-tab-separator-resolution`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.556`},description:`Use the first explicit halfwidth period as the decimal-tab alignment point; when absent, use the implicit separator after the final digit of the first Unicode decimal-number sequence.`}),Z({id:`word-use-fe-layout-inherited-grid-minimum`,evidence:{kind:`office-observation`,syntheticFixtureId:`use-fe-layout-visible-script-grid-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`With useFELayout enabled, a visible Latin line with a resolved eastAsia font axis participates in Far East grid metrics even when w:rFonts@hint is absent; inherited automatic spacing keeps the larger of its whole-cell design allocation and one grid pitch multiplied by the inherited spacing value.`}),Z({id:`word-use-fe-layout-empty-mark-grid-allocation`,evidence:{kind:`office-observation`,syntheticFixtureId:`use-fe-layout-empty-mark-grid-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`With useFELayout enabled, a content-less paragraph mark participates in Far East whole-cell document-grid allocation even when the document contains no literal East Asian text. Its face-specific Far East design height governs the cell count; exact spacing and snapToGrid=false remain the document-grid overrides named by ECMA-376 §17.6.5. Observed Word output gives signed atLeast spacing a discontinuous boundary on an active grid: negative values use their absolute magnitude as the mark advance, zero keeps the ordinary atLeast-zero advance regardless of inheritance source, and positive values retain whole-cell allocation.`});function Bm(e){let{ordinaryAdvancePx:t,allocatedGridAdvancePx:n,atLeastZeroAdvancePx:r,lineSpacing:i,gridAllocationActive:a,scale:o}=e;return a?i?.rule===`atLeast`&&i.value<0?Math.abs(i.value)*o:i?.rule===`atLeast`&&i.value===0?r:i?.rule===`exact`?t:Math.max(t,n):t}Z({id:`word-contiguous-underline-geometry`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/paragraph.test.ts#uses one safe baseline for a solid underline spanning adjacent source runs`},description:`Adjacent compatible underlined source runs share one safe baseline and continuous authored cadence while style, color, and thickness boundaries remain distinct.`}),Z({id:`word-grid-at-least-tall-line-unsnapped`,evidence:{kind:`regression-test`,reference:`packages/docx/src/line-box-height.test.ts#does not round tall East Asian content up to an additional grid cell`},description:`An explicitly authored atLeast line on an active document grid keeps the maximum of its natural height, authored minimum, and one pitch instead of rounding tall content to another whole cell.`}),Z({id:`word-degenerate-line-spacing-single`,evidence:{kind:`microsoft-note`,reference:`[MS-DOC] §2.9.146`},description:`Preserve a non-collapsing single-line fallback for exact or automatic line spacing at or below zero, consistent with the native LSPD representation.`}),Z({id:`word-auto-multiple-baseline-pin`,evidence:{kind:`office-observation`,syntheticFixtureId:`auto-multiple-baseline-pin`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`Paint a positive automatic line-spacing multiplier with its glyph baseline pinned inside the single design line, placing extra leading or compressed overflow toward block-end; this is draw-only and does not replace the centered trailing-mark pagination metric.`}),Z({id:`word-mixed-anchor-visible-line-metrics`,evidence:{kind:`regression-test`,reference:`packages/docx/src/anchor-host-metrics.test.ts#reserves host line height without using its zero-ink box for a visible run baseline`},description:`A zero-ink drawing anchor host reserves its line and grid height while visible neighboring glyphs retain their own ascent, descent, and design-line baseline.`}),Z({id:`word-justification-leading-indent-exclusion`,evidence:{kind:`regression-test`,reference:`packages/docx/src/text-distribute.test.ts#forwards (segs, slack, firstContentSi, lastDrawnSi) positionally`},description:`Keep leading whitespace used as a first-line text indent fixed while distributing justified-line slack across content in a left-to-right line.`}),Z({id:`word-justified-candidate-separator-fit`,evidence:{kind:`regression-test`,reference:`packages/docx/src/justify-shrink-overshoot.test.ts#counts a candidate trailing space when the prospective line will justify`},description:`On a full paragraph-width line that will be fully justified, include the candidate word separator in its wrap-fit width; lines narrowed by DrawingML wrap exclusions retain collapsible line-end separator fit behavior.`}),Z({id:`word-overflow-punctuation-language-sets`,evidence:{kind:`microsoft-note`,reference:`[MS-OE376] §2.1.56`},description:`Apply the language-specific punctuation sets documented for Word in [MS-OE376] §2.1.56, and let overflowPunct override kinsoku when both rules affect the same character.`}),Z({id:`word-full-width-character-spacing-scope`,evidence:{kind:`microsoft-note`,reference:`[MS-OE376] §2.1.562`},description:`Interpret ST_CharacterSpacing as applying whitespace compression to full-width punctuation characters. This rule establishes only which characters are eligible; it does not define a universal compression amount.`}),Z({id:`word-japanese-punctuation-compression-cell`,evidence:{kind:`office-observation`,syntheticFixtureId:`japanese-fullwidth-punctuation-compression-cell`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`In the observed Japanese compatibility matrix, 、。 ,. and the closing forms 」』】)]} on a full ideographic-cell advance retain at least half of that cell. U+3017 and full-width !/? remain full-cell. A fontTable w:pitch value classifies the authored face for font selection; it is not a switch for document-level characterSpacingControl. Punctuation that the selected face already exposes on a smaller proportional advance is retained as measured rather than compressed a second time. Tight adjacent glyph ink can require a larger retained extent to prevent collision. This is an Office-observed compression amount, not a normative interpretation of ST_CharacterSpacing.`}),Z({id:`word-authored-character-spacing-pitch-priority`,evidence:{kind:`office-observation`,syntheticFixtureId:`authored-character-spacing-punctuation-pitch`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`When a run authors a positive w:spacing character pitch, Word preserves that expanded pitch instead of additionally applying the document-level punctuation whitespace compression. Omitted, zero, or overlapping run spacing leaves characterSpacingControl active.`}),Z({id:`word-source-run-space-sequence`,evidence:{kind:`office-observation`,syntheticFixtureId:`source-run-space-sequence-wrap-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`At a source-run boundary, Word keeps a space-only continuation attached when the preceding run already ends in a space. A single leading space in a distinct run without a preceding space remains a break opportunity. This isolates source-boundary compatibility from the ordinary UAX #14 LB7 handling within one authored run.`}),Z({id:`word-consecutive-space-natural-advance`,evidence:{kind:`office-observation`,syntheticFixtureId:`consecutive-space-wrap-grid-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`When visible text follows two or more authored consecutive spaces, Word preserves the sequence at natural advance instead of using it as Knuth-Plass inter-word shrink capacity. The result is invariant across linesAndChars with negative/zero charSpace and a line-only grid; source-run boundaries remain governed separately by the source-space-sequence rule.`}),Z({id:`word-balanced-consecutive-space-cell`,evidence:{kind:`office-observation`,syntheticFixtureId:`single-double-byte-width-space-grid-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`With ECMA-376 §17.15.3.3 balanceSingleByteDoubleByteWidth enabled, Word retains one ordinary inter-word U+0020 at its proportional natural advance, while a sequence of two or more authored U+0020 spaces advances each space by half of the selected East-Asian ideographic cell. The observed matrix covers one, two, four, and eight spaces; same-run and source-run boundaries; proportional and fixed-pitch faces; linesAndChars with negative/zero charSpace; and a line-only grid.`});function Vm(e){return Number.isInteger(e)&&e>=2}function Hm(e){return e!==`snapToChars`}Z({id:`word-balanced-lines-and-chars-grid-delta`,evidence:{kind:`office-observation`,syntheticFixtureId:`single-double-byte-width-grid-observation-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`With balanceSingleByteDoubleByteWidth enabled on linesAndChars, Word applies half of the authored charSpace delta to ASCII SBCS text and to U+0020/U+3000 space characters, while applying the full delta to CJK ideographs and full-width ASCII forms. The Word-output evidence covers ASCII digits, letters, punctuation, spaces, CJK, full-width ASCII, mixed text, proportional/fixed-pitch faces, negative/zero/positive charSpace, and line-only controls. Non-ASCII high-ANSI and complex-script text are outside the observed matrix and retain the preexisting grid behavior.`});function Um(e,t){if(t!==`complexScript`)return e.length>0&&[...e].every(e=>e===` `||e===` `)?.5:t===`eastAsia`?1:[...e].every(e=>(e.codePointAt(0)??128)<=127)?.5:void 0}Z({id:`word-ms-mincho-empty-east-asian-mark-height`,evidence:{kind:`office-observation`,syntheticFixtureId:`ms-mincho-empty-east-asian-paragraph-mark`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`In the observed compatibility fixture, an empty 12-point East-Asian paragraph mark routed to MS Mincho occupies a 15.6-point single-line box. Scope this 1.3-em floor to empty East-Asian paragraph marks; ordinary MS Mincho text lines and Latin marks retain their independently measured metrics.`});function Wm(e){let t=Math.max(0,e.punctuationAdvancePt),n=Math.max(0,e.ideographicCellAdvancePt);return t<n?t:Math.min(t,Math.max(0,e.punctuationInkEndPt,n/2))}function Gm(e){return e===void 0||e<=0}function Km(e,t){return e.endsWith(` `)&&t.startsWith(` `)}const qm={ja:new Set([...`,.’”、。」』】),.]}。、`]),zhHans:new Set([...`!%),.:;>?]}¢°·ˇ’”‰′″℃∶、。〃〉》」』】〗〕〞﹚﹜﹞!"%'),.:;?]}¢`]),zhHant:new Set([...`!),.:;?]}’”′、。〉》」』】〕〞﹚﹜﹞!),.:;?]}`]),ko:new Set([...`!%),.:;?]}¢°’”′″℃〉》」』】〕!%),.:;?]}¢`])},Jm=new Set([...qm.ja,...qm.zhHans,...qm.zhHant,...qm.ko]);function Ym(e,t){let n=t?.toLowerCase();return n?.startsWith(`ja`)?qm.ja.has(e):n?.startsWith(`ko`)?qm.ko.has(e):n?.startsWith(`zh`)?(/(?:^|-)(?:tw|hk|mo)(?:-|$)|hant/u.test(n)?qm.zhHant:qm.zhHans).has(e):Jm.has(e)}function Xm(e){return e.lineWillJustify&&e.wrapNarrowed!==!0?e.widthPx:e.widthPx-e.trailingSpacePx}function Zm(e){return e.resolvedMeasurementRouteCount===1?e.biasBudgetPx:0}Z({id:`word-ruby-paragraph-uniform-line-advance`,evidence:{kind:`regression-test`,reference:`packages/docx/src/paragraph-measure.test.ts#uses one uniform snapped advance for every line in a ruby paragraph`},description:`Every line in a ruby-bearing paragraph uses the paragraph-wide maximum snapped line advance so its baseline rhythm remains uniform.`}),Z({id:`word-fit-text-inter-character-expansion`,evidence:{kind:`regression-test`,reference:`packages/docx/src/fit-text.test.ts#distributes (val − Σnatural)/(n−1) as the inter-character gap, no trailing gap`},description:`Expand a multi-character fitText region to its authored width by distributing the residual evenly across interior character gaps.`}),Z({id:`word-cjk-both-inter-character-expansion`,evidence:{kind:`regression-test`,reference:`packages/docx/src/text-distribute.test.ts#§17.18.44: fills a wrapped pure-CJK line via inter-CJK pitch (expansion default)`},description:`Treat inter-CJK boundaries as eligible inter-word gaps when expanding a non-final both-justified line that contains no spaces.`}),Z({id:`word-thai-distribute-cluster-policy`,evidence:{kind:`regression-test`,reference:`packages/docx/src/thai-distribute.test.ts#fills non-final lines to the right margin under thaiDistribute`},description:`Expand non-final thaiDistribute lines at Thai grapheme-cluster boundaries while retaining a natural-width final line.`}),Z({id:`word-numeric-decimal-tab-inference`,evidence:{kind:`regression-test`,reference:`packages/docx/src/decimal-tab-autoalign.test.ts#right-aligns numbers of different digit counts at the decimal tab`},description:`Right-align an otherwise tab-less numeric paragraph at its leading decimal tab while leaving non-numeric and no-decimal-tab paragraphs unchanged.`}),Z({id:`word-numbering-marker-overflow-tab-advance`,evidence:{kind:`regression-test`,reference:`packages/docx/src/numbered-marker-tab-advance.test.ts#advances the body past the marker to the next tab stop, not onto indentLeft`},description:`When a numbering marker overruns its hanging-indent budget, advance the body to the next reachable tab stop beyond the marker edge.`}),Z({id:`word-numbering-suffix-coincident-list-tab`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/numbering-marker.test.ts#keeps a suffix tab on the list stop coincident with the marker end`},description:`For the tab synthesized by a numbering suffix, accept an authored numeric list tab coincident with the shaped marker end instead of advancing to the next automatic tab stop.`}),Z({id:`word-numbering-marker-paragraph-mark-fallback`,evidence:{kind:`office-observation`,syntheticFixtureId:`numbering-marker-paragraph-mark-formatting`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`When numbering-level rPr omits a marker formatting axis, Word takes that axis from the effective paragraph-mark rPr rather than a content run. A numbering-level concrete value or explicit auto remains authoritative, and body and text-box stories use the same cascade.`});function Qm(e,t){return t.alignment===`num`&&Math.abs(t.pos-e)<=1e-6}Z({id:`word-tab-stop-page-edge-clamp`,evidence:{kind:`regression-test`,reference:`packages/docx/src/rtl-tab-stops.test.ts#pins a page number to the left text margin when the stop is past it`},description:`Clamp content assigned to a tab stop beyond the trailing text edge back onto that edge instead of placing ink outside the page content band.`}),Z({id:`word-dictionary-sea-natural-fit`,evidence:{kind:`regression-test`,reference:`packages/docx/src/sea-justified-fit.test.ts#Rule 1: wraps the paragraph-final Thai word on a thaiDistribute closing line (zero space-shrink)`},description:`Do not admit a dictionary Southeast-Asian word by compressing preceding inter-word spaces when its natural advance exceeds the remaining line width.`}),Z({id:`word-dictionary-sea-atomic-chunk`,evidence:{kind:`regression-test`,reference:`packages/docx/src/sea-justified-fit.test.ts#Rule 2: a no-space chunk that fits a full line moves whole instead of splitting`},description:`Move a glued dictionary Southeast-Asian chunk to a fresh line whole when it fits that full line, using dictionary breaks only when the chunk itself is overlong.`}),Z({id:`word-overlong-token-emergency-break`,evidence:{kind:`regression-test`,reference:`packages/docx/src/run-inline-formatting.test.ts#breaks a no-space token wider than the line at the character level`},description:`Emergency-break a non-CJK token that is wider than an empty line at grapheme-safe character boundaries so it remains inside the content band.`}),Z({id:`word-run-vertical-align-baseline-shift`,evidence:{kind:`regression-test`,reference:`packages/docx/src/run-char-metrics-render.test.ts#w:vertAlign raises superscript, lowers subscript, and leaves ordinary baselines unchanged`},description:`Retain the established run-level baseline displacement for vertically aligned text: superscript rises by 0.35 of its authored font size and subscript falls by 0.15, while the separately authored w:position remains additive.`}),Z({id:`word-uniform-run-position-leading`,evidence:{kind:`office-observation`,syntheticFixtureId:`uniform-run-position-leading`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`When every metric-bearing item on a line has the same non-zero w:position, Word preserves the enlarged line extent but shares the resulting surplus above and below the glyphs. A line containing a differently-positioned item retains the full relative displacement.`});function $m(e,t){return t===0?e:e-t/2}function eh(e,t){return e===`super`?t*.35:e===`sub`?-t*.15:0}const th=1.3;function nh(e,t,n){if(!n||!e)return 0;let r=e.trim().toLowerCase();return r===`ms mincho`||r===`ms 明朝`?t*th:0}function rh(e,t){return t>0?Math.max(1,Math.ceil(e/t)):1}function ih(e,t){return e>0?e:t*th}function ah(e,t,n){return Math.max(e,t*n)}function oh(e,t,n){return Math.max(e,t,n)}function sh(e,t){return(e===`exact`||e===`auto`)&&t<=0}Z({id:`word-neutral-script-attachment`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/compatibility.test.ts#keeps neutral characters attached to the active script slice`},description:`Weak and neutral non-letter characters stay with the active complex-script slice instead of opening additional formatting segments.`}),Z({id:`word-rtl-run-ambiguous-class-override`,evidence:{kind:`regression-test`,reference:`packages/docx/src/bidi-line.test.ts#keeps LTR word order for English text in rtl-marked runs`},description:`Model an rtl-marked run as a higher-level UAX #9 override for punctuation and symbols only, leaving whitespace and strong letters at their ordinary classes.`}),Z({id:`word-rtl-complex-script-european-digits-an`,evidence:{kind:`regression-test`,reference:`packages/docx/src/bidi-line.test.ts#orders an AN-classified date as 2026-02-28`},description:`Classify European digits as Arabic Number within an Arabic or Hebrew complex-script run so UAX #9 preserves the compatible visual ordering of digit groups and separators.`}),Z({id:`word-kashida-final-form-priority`,evidence:{kind:`regression-test`,reference:`packages/docx/src/kashida-priority.test.ts#uses the BaRa join (Beh->Yeh) over the final-letter join in بين`},description:`Apply the measured kashida final-letter priority classes only at a word-final following letter instead of copying the broader Qt final-form conditions.`}),Z({id:`word-vertical-tu-corner-placement`,evidence:{kind:`regression-test`,reference:`packages/docx/src/vertical-text.test.ts#does NOT ink-centre a substituted Tu comma even when ink metrics are present`},description:`Keep a substituted vertical Tu comma or full stop at the font-designed upper-right cell position rather than ink-centering it geometrically.`});const ch=/[\\p{P}\\p{S}]/u;function lh(e){return ch.test(e)}function uh(e,t){return e===t}function dh(e){return e!==null}function fh(e,t,n,r,i,a={}){if(t!=null)return t*n;if(!r?.ruby||!i)throw Error(`Ruby at ${e}pt without hpsRaise requires retained base and guide ink`);if(r.textLayoutService&&r.textShapeRequest){let e=r.textLayoutService.shape({...r.textShapeRequest,text:r.text,fontSizePt:wf(r,n),measure:!0,clusterGeometry:!1}),t=r.textLayoutService.shape({...r.textShapeRequest,text:r.ruby.text,fontSizePt:r.ruby.fontSizePt*n,measure:!0,clusterGeometry:!1});if(e.inkBounds&&t.inkBounds)return e.inkBounds.ascentPt+t.inkBounds.descentPt}let o=i.font;try{i.font=Th(r.bold,r.italic,wf(r,n),r.fontFamily,a,r.fontRoute);let t=i.measureText(r.text);i.font=Th(r.bold,r.italic,e*n,r.fontFamily,a,r.fontRoute);let o=i.measureText(r.ruby.text);if(Number.isFinite(t.actualBoundingBoxAscent)&&Number.isFinite(o.actualBoundingBoxDescent))return t.actualBoundingBoxAscent+o.actualBoundingBoxDescent}finally{i.font=o}throw Error(`Ruby without hpsRaise requires retained base and guide ink`)}const ph=new Set([`sakkal majalla`,`traditional arabic`,`simplified arabic`,`arabic typesetting`,`univers next arabic`,`noto naskh arabic`,`noto sans arabic`]),mh=new Set([`sakkal majalla`,`traditional arabic`,`simplified arabic`,`arabic typesetting`,`noto naskh arabic`]);function hh(e){return ph.has(e.toLowerCase())}function gh(e){return e.map(e=>`\"${e}\"`).join(`, `)}const _h=[`Noto Naskh Arabic`,`Noto Sans Arabic`];function vh(e){let t=e&&e!==`jp`?ie(e,`sans`):[`Noto Sans JP`,`Hiragino Sans`,`Meiryo`,...ie(`jp`,`sans`).slice(1)];return e==null?`${gh([...ae,`Arial`,`Helvetica`,`Liberation Sans`,...t,..._h])}, sans-serif`:`${gh([...t,..._h,...ae])}, sans-serif`}function yh(e){let t=e&&e!==`jp`?ie(e,`serif`):[`Yu Mincho`,`YuMincho`,`Hiragino Mincho ProN`,`MS Mincho`,`Noto Serif JP`,...ie(`jp`,`serif`).slice(1)];return e==null?`${gh([...oe,`Times New Roman`,`Cambria`,`Liberation Serif`,...t,..._h])}, serif`:`${gh([...t,..._h,...oe])}, serif`}const bh=new WeakMap,xh=new WeakMap;function Sh(e,t){let n=e??{};return t&&Object.keys(t).length>0&&xh.set(n,t),n}function Ch(e,t={}){let n=bh.get(t)??(()=>{let e=new Map;return bh.set(t,e),e})(),r=e??`\\0null`,i=n.get(r);if(i!==void 0)return i;let a=wh(e,t,xh.get(t));return n.set(r,a),a}function wh(e,t,n={}){if(!e)return vh(null);let r=`\"${(e=>e.replace(/\"/g,`\\\\\"`))(e)}\"`,i=e.toLowerCase(),a=ne(e);if(hh(e))return mh.has(i)?`${r}, \"Noto Naskh Arabic\", \"Noto Sans Arabic\", \"Noto Serif\", \"Noto Sans JP\", \"Hiragino Sans\", serif`:`${r}, \"Noto Sans Arabic\", \"Noto Naskh Arabic\", \"Noto Sans JP\", \"Hiragino Sans\", sans-serif`;let o=t[e];if(o&&o!==`auto`)switch(o){case`roman`:return`${r}, ${yh(a)}`;case`swiss`:return`${r}, ${vh(a)}`;case`modern`:if(n[e]===`fixed`)return a==null?`${r}, \"Courier New\", monospace`:`${r}, ${gh([...a===`jp`?[`Yu Gothic`,`YuGothic`,`Hiragino Sans`,`Meiryo`,`Noto Sans JP`]:ie(a,`sans`),`Courier New`])}, monospace`;break;default:break}let s=re(e);if(s===`serif`)return`${r}, ${yh(a)}`;if(s===`mono`)return`${r}, \"Courier New\", monospace`;if(a==null||a===`jp`){if(i.includes(`meiryo`)||e.includes(`メイリオ`))return`${r}, \"Meiryo UI\", \"Meiryo\", ${vh(a)}`;if(e.includes(`游ゴシック`)||/\\byu\\s*gothic\\b/i.test(e)||i.includes(`yugothic`))return`${r}, \"Yu Gothic\", \"YuGothic\", ${vh(a)}`;if(i.includes(`ipa`))return`${r}, \"IPAexGothic\", ${vh(a)}`;if(i.includes(`segoe`))return`${r}, \"Segoe UI\", ${gh([..._h,...ae])}, sans-serif`}return`${r}, ${vh(a)}`}function Th(e,t,n,r,i={},a){return a?V(a,n,e?700:400,t?`italic`:`normal`):`${t?`italic`:`normal`} ${e?`bold`:`normal`} ${n}px ${Ch(r,i)}`}function Eh(e,t,n=!1){return Math.max(uu(e.fontFamily,t,n),(e.resolvedLineHeightRatio??0)*t)}function Dh(e,t,n=!1){return Math.max(uu(e.eaFloorFamily,t,n),(e.resolvedEaFloorLineHeightRatio??0)*t)}function Oh(e){for(let t of e.runs)if(t.type===`text`||t.type===`field`)return t.fontSize;return typeof e.defaultFontSize==`number`?e.defaultFontSize:10}function kh(e,t=!1){for(let t of e.runs)if(t.type===`text`||t.type===`field`)return t.fontFamily;return t&&e.defaultFontFamilyEastAsia?e.defaultFontFamilyEastAsia:e.defaultFontFamily??null}function Ah(e,t,n){return uu(kh(e,n),Oh(e)*t,n)}function jh(e,t){return!e||e.charSpacePt==null||e.type!==`linesAndChars`&&e.type!==`snapToChars`?0:e.charSpacePt*t}function Mh(e){let t=0;for(let n of e)Tf.test(n)&&t++;return t}function Nh(e,t,n){let r=jh(t,n);if(r===0||e.length===0)return 0;let i=[...e];return t?.type===`linesAndChars`||Mh(e)===i.length?i.length*r:0}function Ph(e,t,n){return e.snapToCharacterGrid===!1||t?.type===`snapToChars`?0:t?.type===`linesAndChars`&&e.widthBalanceGridDeltaFactor!==void 0?jh(t,n)*e.widthBalanceGridDeltaFactor:Nh(e.text,t,n)===0?0:jh(t,n)}function Fh(e,t){return e.fitTextPerGapPx===void 0?Ih(e)*t:e.fitTextPerGapPx}function Ih(e){return e.charSpacing??0}function Lh(e){return e.punctuationCompressions?.reduce((e,t)=>e+t.adjustmentPt,0)??0}function Rh(e,t){return zh(e,e.text,t)}function zh(e,t,n){if(e.fitTextPerGapPx!==void 0||e.tateChuYoko||!Hm(n?.type)||!e.widthBalanceSpaceSequence||e.widthBalanceSpaceAdjustmentPt===void 0)return 0;let r=0;for(let e of t)e===` `&&(r+=1);return r*e.widthBalanceSpaceAdjustmentPt}function Bh(e,t,n){let r=e.punctuationCompressions?.filter(e=>e.end>t&&e.end<=n).map(e=>Object.freeze({end:e.end-t,adjustmentPt:e.adjustmentPt}));return r&&r.length>0?Object.freeze(r):void 0}function Vh(e,t){if(!e.textLayoutService||!e.textShapeRequest||t.length===0)return;let n=e.textLayoutService.shape({...e.textShapeRequest,text:t,measure:!0,clusterGeometry:!1});if(n.horizontalInkBoundsAreTight!==!0||!n.inkBounds||!Number.isFinite(n.advancePt)||!Number.isFinite(n.inkBounds.xMinPt)||!Number.isFinite(n.inkBounds.xMaxPt))return;let r=e.charScale??1;return{advancePt:n.advancePt*r,xMinPt:n.inkBounds.xMinPt*r,xMaxPt:n.inkBounds.xMaxPt*r}}function Hh(e){if(!e.textLayoutService||!e.textShapeRequest||e.text.length===0)return;let t=e.textLayoutService.shape({...e.textShapeRequest,text:e.text,measure:!0,clusterGeometry:!0});if(!t.clusters?.length)return;let n=e.charScale??1,r=new Map;for(let e of t.clusters){if(!Number.isFinite(e.advancePt))return;r.set(e.range.end,e.advancePt*n)}return r}function Uh(e){let t,n=new Map;for(let r of e){if(!(`text`in r)||r.verticalRun){t=void 0;continue}let e=r,i=e.punctuationCompressions??[],a=new Map(i.map((e,t)=>[e.end,t])),o=i.length>0?Hh(e):void 0,s=[0,...Mc(e.text),e.text.length];for(let r=0;r<s.length-1;r+=1){let i=s[r],c=s[r+1];if(c<=i)continue;let l=a.get(c),u=t||l!==void 0?Vh(e,e.text.slice(i,c)):void 0;if(t&&u){let e=n.get(t.segment)??t.segment.punctuationCompressions.map(e=>({...e})),r=e[t.compressionIndex],i=Math.max(0,t.ink.advancePt+r.adjustmentPt),a=Math.min(0,i-t.contextualAdvancePt),o=Math.min(0,t.ink.xMaxPt-u.xMinPt-t.contextualAdvancePt),s=Math.max(r.adjustmentPt,a,o);s!==r.adjustmentPt&&(e[t.compressionIndex]={end:r.end,adjustmentPt:s},n.set(t.segment,e))}t=l!==void 0&&u?{segment:e,compressionIndex:l,ink:u,contextualAdvancePt:o?.get(c)??u.advancePt}:void 0}}for(let[e,t]of n)e.punctuationCompressions=Object.freeze(t.map(e=>Object.freeze(e)))}function Wh(e){return e.charScale??1}function Gh(e,t,n,r,i){return e*r+[...t].length*n+[...t].length*i}function Kh(e,t,n){return e.fitTextPerGapPx===void 0?Ph(e,t,n)+Fh(e,n):e.fitTextPerGapPx}function qh(e,t,n,r){if(e.fitTextPerGapPx!==void 0){let n=[...e.text].length,r=e.fitTextRegionEnd?Math.max(0,n-1):n;return t*Wh(e)+r*e.fitTextPerGapPx+(e.fitTextTrailingPadPx??0)}if(e.tateChuYoko)return e.fontSize*r;let i=Ph(e,n,r);return Gh(t,e.text,i,Wh(e),Fh(e,r))+Rh(e,n)*r*Wh(e)+Lh(e)*r}function Jh(e,t){return t?.type!==`snapToChars`||!t.characterPitchPt||t.characterPitchPt<=0||e.snapToCharacterGrid===!1||e.metricOnly||e.fitTextRegionIndex!==void 0||e.tateChuYoko?null:e.script===`eastAsia`?`eastAsia`:e.script===`complexScript`?`complexScript`:`latin`}function Yh(e,t,n,r=1){return!(n>0)||!Number.isFinite(e)?e:t===`eastAsia`?Math.max(1,r)*n:Math.max(1,Math.ceil(Math.max(0,e)/n-1e-9))*n}function Xh(e){return!e||!e.linePitchPt||e.linePitchPt<=0?!1:e.type===`lines`||e.type===`linesAndChars`||e.type===`snapToChars`}function Zh(e,t){return rh(e,t)}function Qh(e,t){return ih(e,t)}function $h(e,t,n,r,i,a,o=0,s=!1,c,l){let u=t+n,d=Math.max(u,o),f=Xh(i),p=f?i.linePitchPt*r:0,m=()=>s?a?Math.max(p,Math.ceil(u/p)*p):Zh(c??(o>0?o:l===void 0?p:Qh(0,l)),p)*p:Math.max(u,p),h=e!==null&&e.explicit!==!0;if(!e||sh(e.rule,e.value))return f?m():d;if(e.rule===`auto`){if(f){if(h){let t=m();return s?ah(t,p,e.value):t}return Math.max(u,p*e.value)}return d*e.value}if(e.rule===`exact`)return e.value*r;if(e.rule===`atLeast`){let t=f?a||h?m():p:0;return oh(d,e.value*r,t)}return d}function eg(e,t){return{asc:e*t*.8,desc:e*t*.2}}function tg(e,t,n,r,i=!1){return du(t,r,e.fontBoundingBoxAscent??e.actualBoundingBoxAscent??n*.8,e.fontBoundingBoxDescent??e.actualBoundingBoxDescent??n*.2,i)}function ng(e,t,n,r,i=!1,a,o={},s=e.lineSpacing,c={},l,u,d=!1){let f=u,p=i||f?.fontHint===`eastAsia`,m=f?.complexScript===!0,h=f?.fontSizePt??Oh(e),g=kh(e,p),_=g?c[fu(g)]:void 0,v=_?.family??g,y,b;if(l){let n=f?f.weight>=600:!1,r=f?.style===`italic`,i=f?.fonts.ascii??e.defaultFontFamily??g,a=l.shape({text:p?`あ`:`x`,fontSizePt:h*t,fonts:f?.fonts??{ascii:i,highAnsi:i,eastAsia:e.defaultFontFamilyEastAsia??i,complexScript:i},themeFonts:f?.themeFonts,themeFontPresence:f?.themeFontPresence,weight:n?700:400,style:r?`italic`:`normal`,complexScript:m,fontHint:f?.fontHint,eastAsiaLanguage:f?.eastAsiaLanguage,kerning:f?.kerning,measure:!0}),o=a.spans[0]?.font.resolvedFamily??g;({ascent:y,descent:b}=tg({width:a.advancePt,actualBoundingBoxAscent:a.ascentPt,actualBoundingBoxDescent:a.descentPt,fontBoundingBoxAscent:a.ascentPt,fontBoundingBoxDescent:a.descentPt},o,h*t,h*t,p))}else if(a){let e=a.font;a.font=Th(!1,!1,h*t,v,o);let n=a.measureText(p?`あ`:`x`);a.font=e,{ascent:y,descent:b}=tg(n,v,h*t,h*t,p)}else ({asc:y,desc:b}=eg(h,t));let x=_?.lineHeightRatio==null?Ah(e,t,p):h*t*_.lineHeightRatio,S=Math.max(x,nh(g,h*t,p)),C=i?Qh(S,h*t):void 0,w=$h(s,y,b,t,n,r,S,i,C),T=d&&i&&Xh(n),E=T?$h(null,y,b,t,n,r,S,i,C):w,D=T?$h({rule:`atLeast`,value:0,explicit:!0},y,b,t,n,r,S,i,C):w;return{advancePx:d?Bm({ordinaryAdvancePx:w,allocatedGridAdvancePx:E,atLeastZeroAdvancePx:D,lineSpacing:s,gridAllocationActive:T,scale:t}):w,ascentPx:y,descentPx:b}}function rg(e,t,n,r,i=!1,a,o={},s=e.lineSpacing,c={},l,u,d=!1){return ng(e,t,n,r,i,a,o,s,c,l,u,d).advancePx}function ig(e,t,n){return Math.max(0,(e-t+n)/2)}function ag(e,t,n,r,i,a,o,s={},c,l,u=!1){let d=ng(e,1,t,n,r,i,a,o,s,c,l,u);return ig(d.advancePx,d.ascentPx,d.descentPx)}function og(e){let t=[];for(let n of e){let e=n.toLowerCase()===n&&n.toUpperCase()!==n,r=/\\s/.test(n)?t[t.length-1]?.reduced??!1:e,i=t[t.length-1];i&&i.reduced===r?i.text+=n:t.push({text:n,reduced:r})}return t.length?t:[{text:e,reduced:!1}]}function sg(e,t){for(let n=t-1;n>=0;n--){let t=e[n];if(t.type===`text`||t.type===`field`)return t.fontSize}for(let n=t+1;n<e.length;n++){let t=e[n];if(t.type===`text`||t.type===`field`)return t.fontSize}return 10}function cg(e,t){if(e.fieldType===`page`)return Pl(t.displayPageNumber??t.pageIndex+1,$l(e.instruction)??t.pageNumberFormat??`decimal`);if(e.fieldType===`numPages`){let n=$l(e.instruction)??`decimal`;return Pl(t.totalPages,n)}if(e.fieldType===`date`||e.fieldType===`time`){let n=au(e.instruction);if(n){let e=ou(n,new Date(t.currentDateMs??Date.now()));if(e!==null)return e}return e.fallbackText}return e.fallbackText}function lg(e){for(let t=0;t<e.length;){let n=e.codePointAt(t);if(ac(n))return!0;t+=n>65535?2:1}return!1}const ug=new Set([`、`,`。`,`,`,`.`,`」`,`』`,`】`,`)`,`]`,`}`]);function dg(e){let t=e.codePointAt(0);return t===void 0?!1:t>=12353&&t<=12438||t>=12445&&t<=12447||t>=12449&&t<=12538||t===12540||t>=12541&&t<=12543||t>=12784&&t<=12799||t>=110576&&t<=110591||t>=110592&&t<=110959}function fg(e,t){switch(t){case`compressPunctuation`:return ug.has(e);case`compressPunctuationAndJapaneseKana`:return ug.has(e)||dg(e);default:return!1}}function pg(e,t){if(e===void 0)return;let n=[];for(let r of e)r>t&&n.push(r-t);return n}function mg(e,t){if(t<=0)return t;let n=t;for(;n<e.length&&e[n]===` `;)n++;return n}function hg(e,t,n,r=0,i=1,a=0,o=!1,s,c){let l=[...t],u=t=>c?.(t)??(()=>{let n=0;if(o){if(!s)throw Error(`Vertical glyph measurement capability is required for vertical text`);n=s.measureRunInkExtra(t)}return Gh(e.measureText(t).width+n,t,r,i,a)})(),d=e=>{let t=e;for(;t>0&&l[t-1]===` `;)t--;let r=l.slice(0,t).join(``);return r.length===0?!0:u(r)<=n},f=0,p=l.length;for(;f<p;){let e=f+p+1>>1;d(e)?f=e:p=e-1}return l.slice(0,f).join(``)}const gg=new Set([`ar`,`fa`,`ur`,`he`,`iw`,`yi`,`ji`,`ps`,`sd`,`ug`,`dv`,`syr`,`ckb`]);function _g(e,t){if(e){let t=e.split(`-`)[0].toLowerCase();if(gg.has(t))return!0}return t}function vg(e){let t=[],n=null,r=``;for(let i of e){let e=ac(i.codePointAt(0));n===null||e===n?(n=e,r+=i):(t.push({text:r,ea:n}),n=e,r=i)}return r.length>0&&t.push({text:r,ea:n??!1}),t}function yg(e){let t=e=>e>=48&&e<=57,n=e=>e===`.`||e===`,`||e===`:`||e===`/`||e===`\\xA0`,r=[],i=``,a=null;for(let o=0;o<e.length;o++){let s=e[o],c=t(s.charCodeAt(0));!c&&a===!0&&n(s)&&t(e.charCodeAt(o+1))&&(c=!0),a===null||c===a?i+=s:(r.push(i),i=s),a=c}return i.length>0&&r.push(i),r.length?r:[e]}function bg(e){let t=[],n=0;for(;n<e.length;){let r=n;for(;r<e.length&&e[r]!==` `;)r++;for(;r<e.length&&e[r]===` `;)r++;r>n&&t.push(e.slice(n,r)),n=r}return t.length?t:[e]}function xg(e){let t=e?.defaultTabStop;return t!=null&&t>0?t:36}function Sg(e){return e===`center`?`center`:e===`decimal`?`decimal`:e===`right`||e===`end`?`trailing`:`leading`}function Cg(e,t,n,r,i){let a=e.length,o=e.map(e=>e.width),s=Array(a).fill(void 0),c=(t,n)=>{let r=0,i;for(let n=t;n<a&&!e[n].isTab;n++)i===void 0&&e[n].decimalOffset!==void 0&&(i=r+e[n].decimalOffset),r+=o[n];return{total:r,alignment:n===`center`?r/2:n===`trailing`?r:n===`decimal`?i===void 0?0:r-i:0}},l=n;for(let n=0;n<a;n++){if(!e[n].isTab){l+=o[n];continue}let a=Df(l,t,i);if(!a){o[n]=0;continue}let u=Sg(a.alignment),d=c(n+1,u),f=d.total,p;p=u===`leading`?a.pos:a.pos-d.alignment,p+f>r&&(p=r-f),p<l&&(p=l),o[n]=p-l,s[n]=a.leader,l=p}return e.map((e,t)=>({width:o[t],leader:s[t]}))}function wg(e,t,n){let r=new Map;for(let t of e){if(t.fitTextRegionIndex===void 0)continue;let e=r.get(t.fitTextRegionIndex)??[];e.push(t),r.set(t.fitTextRegionIndex,e)}for(let e of r.values()){let r=e.find(e=>e.fitTextVal!==void 0);if(!r||r.fitTextVal===void 0)continue;let i=0,a=0;for(let t of e)i+=n(t)*Wh(t),a+=[...t.text].length;let o=Lf([{fitTextValTwips:r.fitTextVal,charCount:a,naturalWidthPx:i}],t)[0];o&&e.forEach((t,n)=>{t.fitTextPerGapPx=o.perGapPx,t.fitTextTrailingPadPx=n===e.length-1?o.trailingPadPx:void 0,t.fitTextRegionStart=n===0?!0:void 0,t.fitTextRegionEnd=n===e.length-1?!0:void 0})}}function Tg(e,t){let n=[],r=(e,n=400,r=`normal`)=>{if(!e)return;let i=fu(e),a=t.resolvedLocalFonts;if(!a)return;let o=a[`${i}:${n}:${r}`];if(o)return o;let s=a[i];return n===400&&r===`normal`&&s?s:Object.values(a).find(e=>fu(e.requestedFamily??``)===i&&(e.weight??400)===n&&(e.style??`normal`)===r)},i=new Map,a=[];for(let[t,n]of e.entries()){if(n.type!==`text`){a.push({charCount:0,naturalWidthPx:0});continue}let e=n.text.split(` `);for(let r=0;r<e.length;r+=1)i.set(`${t}:${r}`,a.length),a.push({fitTextValTwips:n.fitTextVal,fitTextId:n.fitTextId,charCount:[...e[r]].length,naturalWidthPx:0,charScale:n.charScale}),r<e.length-1&&a.push({charCount:0,naturalWidthPx:0})}let o=new Map;Lf(a,1).forEach((e,t)=>{for(let n=e.start;n<e.end;n+=1)o.set(n,t)});let s=(e,a,s,c,l)=>{let u=a,d=u.typographyInput,f=(e,t)=>e?.status===`valid`&&e.value!==null?e.value:t,p=f(d?.verticalAlign,s??void 0)??null,m=f(d?.positionPt,u.position),h=d?.characterSpacingPt??u.charSpacing,g=Gm(h),_=d?.characterScale??u.charScale,v=d?.kerningThresholdPt??u.kerning,y=d?.snapToGrid??u.snapToGrid,b=!1,x=u.ruby,S=x?{text:x.text,fontSizePt:x.fontSizePt,...x.hpsRaisePt==null?{}:{hpsRaisePt:x.hpsRaisePt}}:void 0,C=u.revision,w=u.rtl===!0?!0:void 0,T=l===void 0?void 0:i.get(`${c}:${l}`),E=T===void 0?void 0:o.get(T),D=u.hyperlink?{kind:`external`,url:u.hyperlink}:u.hyperlinkAnchor?{kind:`internal`,ref:u.hyperlinkAnchor}:void 0,O=u.rtl===!0||u.cs===!0,k=u.fontSizeCs??a.fontSize,A=u.fontFamilyCs??a.fontFamily,j=u.fontFamilyHighAnsi??a.fontFamily,M=u.boldCs??!1,N=u.italicCs??!1,P=u.fontFamilyEastAsia??a.fontFamily,ee=(O||!!u.rtl)&&_g(u.langBidi,!!u.rtl),te=!0,F=!1,I=(e,i,o,s,c=!1,l=!1)=>{if(t.balanceSingleByteDoubleByteWidth&&!i&&e.includes(` `)&&[...e].some(e=>e!==` `)){for(let t of e.split(/(\\u3000+)/u).filter(Boolean))I(t,i,o,void 0,c,l);return}if(!c&&g&&E===void 0){let n=[0,...Mc(e),e.length];if(n.slice(0,-1).map((t,r)=>e.slice(t,n[r+1])).some(e=>fg(e,t.characterSpacingControl))){I(e,i,o,void 0,!0,l);return}}let d=i?M:a.bold,f=i?N:a.italic,x=d?700:400,O=f?`italic`:`normal`,L=Object.freeze({text:e,fontSizePt:i?k:a.fontSize,fonts:l?{ascii:null,highAnsi:null,eastAsia:null,complexScript:null}:u.fontSlots?.direct??{ascii:a.fontFamily,highAnsi:j,eastAsia:P,complexScript:A},themeFonts:l?void 0:u.fontSlots?.theme,themeFontPresence:l?void 0:u.fontSlots?.themePresent,weight:x,style:O,complexScript:i,fontHint:u.fontHint,eastAsiaLanguage:u.langEastAsia,kerning:v==null?void 0:(i?k:a.fontSize)>=v,measure:!1}),R=s?{spans:[s]}:t.layoutServices?.text.shape(L),z=c&&g?(()=>{let n=[0,...Mc(e),e.length],r=[];for(let i=0;i<n.length-1;i+=1){let a=n[i],o=n[i+1],s=e.slice(a,o);if(!fg(s,t.characterSpacingControl))continue;let c=t.layoutServices?.text.shape({...L,text:s,measure:!0,clusterGeometry:!1}),l=(c?.inkBounds&&c.horizontalInkBoundsAreTight===!0?(()=>{let e=Math.max(0,Math.min(c.advancePt,c.advancePt-c.inkBounds.xMaxPt));if(!ug.has(s))return e;let n=c.spans[0]?.fontRoute.fingerprint,r=t.layoutServices?.text.shape({...L,text:`一`,fontHint:`eastAsia`,measure:!0,clusterGeometry:!1}),i=r?.spans[0]?.fontRoute.fingerprint,a=r?.advancePt;if(!n||i!==n||a===void 0||!Number.isFinite(a)||a<=0)return 0;let o=Wm({punctuationAdvancePt:c.advancePt,punctuationInkEndPt:c.inkBounds.xMaxPt,ideographicCellAdvancePt:a});return Math.max(0,Math.min(e,c.advancePt-o))})():0)*(_??1);l>0&&r.push({end:o,adjustmentPt:-l})}return r.length===0?void 0:Object.freeze(r.map(e=>Object.freeze(e)))})():void 0,B=R?.spans.some(e=>e.script===`complexScript`!==i)??!1;if(R&&(R.spans.length>1||B)){for(let e=0;e<R.spans.length;e+=1){let n=R.spans[e],r=n.script===`complexScript`,i=r?A:n.script===`eastAsia`?P:n.script===`highAnsi`?j:a.fontFamily,o=g&&c&&[...n.text].some(e=>fg(e,t.characterSpacingControl));I(n.text,r,i,n,o)}return}let V=R?.spans[0],ne=(e,n)=>{if(!e)return;let r=Object.values(t.layoutServices?.text.localMetrics??{}).filter(t=>fu(t.family)===fu(e)&&(t.weight??400)===x&&(t.style??`normal`)===O);return r.find(e=>n&&fu(e.requestedFamily??``)===fu(n))??r[0]},re=V?ne(V.font.resolvedFamily,V.font.requestedFamily):r(o,x,O),ie=t.layoutServices?.text.resolve({fonts:L.fonts,themeFonts:L.themeFonts,themeFontPresence:L.themeFontPresence,slot:`eastAsia`,weight:x,style:O}),ae=ie?ne(ie.resolvedFamily,ie.requestedFamily):r(P,x,O),oe=re??(o?t.resolvedLocalFonts?.[fu(o)]:void 0),H=ae??(P?t.resolvedLocalFonts?.[fu(P)]:void 0),se=ie?.resolvedFamily??ae?.family??P,ce=t.useFeLayout&&(u.fontHint===`eastAsia`||!!se?.trim()),le=V?.script??s?.script??(i?`complexScript`:Tf.test(e)?`eastAsia`:`ascii`),ue=t.balanceSingleByteDoubleByteWidth?Um(e,le):void 0;n.push({text:e,script:le,...ue===void 0?{}:{widthBalanceGridDeltaFactor:ue},...ce?{metricEastAsian:!0}:{},bold:d,italic:f,underline:a.underline,underlineStyle:u.underlineStyle,underlineColor:u.underlineColor,strikethrough:a.strikethrough,fontSize:i?k:a.fontSize,color:a.color,fontFamily:V?.font.resolvedFamily??re?.family??o,fontRoute:V?.fontRoute,resolvedLineHeightRatio:oe?.lineHeightRatio,vertAlign:p,measuredWidth:0,textLayoutService:t.layoutServices?.text,textShapeRequest:L,breakBefore:V?.breakBefore??s?.breakBefore??!0,smallCaps:b,joinPrev:F||s?.breakBefore===!1?!0:void 0,doubleStrikethrough:a.doubleStrikethrough??!1,highlight:a.highlight??null,emphasisMark:a.emphasisMark,background:a.background??null,colorAuto:u.colorAuto??!1,border:u.border??null,ruby:te?S:void 0,revision:C,rtl:w,digitsAsAN:ee?!0:void 0,eaFloorFamily:se,eaFloorRoute:ie?.route,resolvedEaFloorLineHeightRatio:H?.lineHeightRatio,textBoxLineFloor:u.textBoxLineFloor,textBoxVertical:u.textBoxVertical,hyperlink:D,snapToCharacterGrid:y!==!1,charSpacing:h,punctuationCompressions:z,eastAsiaLanguage:u.langEastAsia,charScale:_,fitTextVal:E===void 0?void 0:u.fitTextVal,fitTextId:E===void 0?void 0:u.fitTextId,fitTextRegionIndex:E,fitTextRunIndex:E===void 0?void 0:T,position:m,positionExtendsLineBox:t.positionExtendsLineBox!==!1,kerning:v,tateChuYoko:t.verticalCJK&&u.eastAsianVert===!0?!0:void 0,tateChuYokoCompress:t.verticalCJK&&u.eastAsianVert===!0&&u.eastAsianVertCompress===!0?!0:void 0,verticalRun:t.verticalCJK&&u.eastAsianVert!==!0?!0:void 0}),te=!1,F=!1},L=(e,t)=>{let n=t===`cs`,r=t===`cs`?A:t===`ea`?P:a.fontFamily;if(ge(r)){for(let t of U(e,r))I(t.text,n,t.mapped?null:r,void 0,!1,t.mapped);return}I(e,n,r)},R=e=>{if(t.layoutServices?.text){if(ge(a.fontFamily)){L(e,`latin`);return}I(e,!1,a.fontFamily);return}for(let t of vg(e))L(t.text,t.ea?`ea`:`latin`)},z=a.smallCaps?og(e):[{text:e,reduced:!1}],B=``;for(let e of z){b=e.reduced,F=B.length>0&&!/\\s$/.test(B),B=e.text;let t=a.allCaps||a.smallCaps?e.text.toUpperCase():e.text;for(let e of bg(t))if(O)if(ee)for(let t of yg(e))L(t,`cs`);else L(e,`cs`);else R(e)}};for(let[i,a]of e.entries()){let o=n.length;if(a.type===`text`){let e=a,r=e.noteRef?e.noteRef.id?t.noteNumbers?.get(`${e.noteRef.kind}:${e.noteRef.id}`):t.noteReferenceNumber:void 0;if(e.noteRef){let t=r==null?e.text||``:String(r);t.length>0&&s(t,e,e.vertAlign??`super`,i,0);for(let e=o;e<n.length;e+=1)n[e].sourceRunIndex=i;continue}let c=e.text.split(` `);for(let t=0;t<c.length;t++)c[t].length>0&&s(c[t],e,e.vertAlign,i,t),t<c.length-1&&n.push({isTab:!0,fontSize:e.fontSize,measuredWidth:0,bold:e.bold,italic:e.italic,sourceRunIndex:i})}else if(a.type===`image`){let e=a;n.push({imagePath:e.imagePath,mimeType:e.mimeType,widthPt:e.widthPt,heightPt:e.heightPt,rotation:e.rotation,flipH:e.flipH,flipV:e.flipV,anchor:e.anchor??!1,anchorXPt:e.anchorXPt??0,anchorYPt:e.anchorYPt??0,anchorXFromMargin:e.anchorXFromMargin??!1,anchorYFromPara:e.anchorYFromPara??!1,colorReplaceFrom:e.colorReplaceFrom,duotone:e.duotone,alpha:e.alpha,srcRect:e.srcRect??void 0,measuredWidth:0})}else if(a.type===`chart`){let e=a;n.push({imagePath:``,mimeType:``,widthPt:e.widthPt,heightPt:e.heightPt,anchor:e.anchor??!1,anchorXPt:e.anchorXPt??0,anchorYPt:e.anchorYPt??0,anchorXFromMargin:e.anchorXFromMargin??!1,anchorYFromPara:e.anchorYFromPara??!1,chart:!0,chartResourceKey:e.resourceKey,measuredWidth:0})}else if(a.type===`shape`&&a.inline===!0)n.push({imagePath:``,mimeType:``,widthPt:a.widthPt,heightPt:a.heightPt,anchor:!1,anchorXPt:0,anchorYPt:0,anchorXFromMargin:!1,anchorYFromPara:!1,inlineShape:!0,measuredWidth:0});else if(a.type===`unavailableDrawing`){let e=`anchorAcquisitionInput`in a?a.anchorAcquisitionInput:void 0;n.push({imagePath:``,mimeType:``,widthPt:a.widthPt,heightPt:a.heightPt,anchor:e!==void 0,anchorXPt:0,anchorYPt:0,anchorXFromMargin:!1,anchorYFromPara:!1,unavailableResourceKind:a.resourceKind,measuredWidth:0})}else if(a.type===`break`){if(a.breakType===`line`){let t=sg(e,e.indexOf(a));n.push({lineBreak:!0,fontSize:t,measuredWidth:0})}}else if(a.type===`field`){let e=a,n=cg(e,t);n&&s(n,e,e.vertAlign,i)}else if(a.type===`math`){let r=a.fontSize||sg(e,e.indexOf(a)),i=`resourceKey`in a?a.resourceKey:void 0;if(t.layoutServices&&!i)throw Error(`Service-backed math layout requires a normalized structural resource key`);let o=i?t.layoutServices?.math.resolve(i):void 0;n.push({math:!0,mathResourceKey:i??``,mathMetadata:o,display:a.display,fontSize:r,color:null,fallbackText:`fallbackText`in a?a.fallbackText:Om(a.nodes),measuredWidth:0,mathAscent:0,mathDescent:0,jc:a.jc})}else if(a.type===`ptab`)n.push({isTab:!0,fontSize:a.fontSize||sg(e,e.indexOf(a)),measuredWidth:0,leader:a.leader,ptab:{alignment:a.alignment,relativeTo:a.relativeTo}});else if(a.type===`anchorHost`){let e=a.fontFamilyEastAsia!=null,i=a.bold??!1,o=a.italic??!1,s=a.fontFamilyEastAsia??a.fontFamily??null,c=i?700:400,l=o?`italic`:`normal`,u=r(s,c,l),d=r(a.fontFamilyEastAsia??null,c,l),f=u??(s?t.resolvedLocalFonts?.[fu(s)]:void 0),p=d??(a.fontFamilyEastAsia?t.resolvedLocalFonts?.[fu(a.fontFamilyEastAsia)]:void 0);n.push({text:``,metricOnly:!0,...e?{metricEastAsian:!0}:{},bold:i,italic:o,underline:!1,strikethrough:!1,fontSize:a.fontSize,color:null,fontFamily:u?.family??s,resolvedLineHeightRatio:f?.lineHeightRatio,vertAlign:null,measuredWidth:0,eaFloorFamily:d?.family??a.fontFamilyEastAsia??null,resolvedEaFloorLineHeightRatio:p?.lineHeightRatio,snapToCharacterGrid:!1})}for(let e=o;e<n.length;e+=1)n[e].sourceRunIndex=i}if(t.balanceSingleByteDoubleByteWidth){let e=new Map,t=t=>{let n=t.textLayoutService,r=t.textShapeRequest;if(!n||!r)return;let i=wf(t,1),a=[n.fingerprint,t.fontRoute?.fingerprint??`implicit-latin`,t.eaFloorRoute?.fingerprint??`implicit-east-asia`,i,t.bold?700:400,t.italic?`italic`:`normal`,t.kerning??`auto`].join(`|`),o=e.get(a);if(o!==void 0)return o;let s=n.shape({...r,text:` `,fontSizePt:i,measure:!0,clusterGeometry:!1}).advancePt,c=n.shape({...r,text:`一`,fontSizePt:i,fontHint:`eastAsia`,measure:!0,clusterGeometry:!1}).advancePt;if(!Number.isFinite(s)||!Number.isFinite(c)||s<0||c<=0)return;let l=c/2-s;return e.set(a,l),l},r=[],i=0,a=()=>{if(Vm(i))for(let e of r){e.widthBalanceSpaceSequence=!0;let n=t(e);n!==void 0&&(e.widthBalanceSpaceAdjustmentPt=n)}r=[],i=0};for(let e of n){if(!(`text`in e)||e.script===`complexScript`){a();continue}let t=e.text.length-e.text.replace(/ +$/u,``).length;t>0&&t===e.text.length||a(),t>0?(r.push(e),i+=t):a()}a()}for(let e=1;e<n.length;e++){let t=n[e];if(!(`text`in t)||t.joinPrev)continue;let r=t.text.codePointAt(0);if(r===void 0||!nc.lineStartForbidden.has(r))continue;let i=n[e-1];!(`text`in i)||/\\s$/.test(i.text)||(t.joinPrev=!0)}for(let e=1;e<n.length;e++){let t=n[e];if(!(`text`in t)||t.joinPrev||!t.text.startsWith(` `))continue;let r=n[e-1];if(!(`text`in r))continue;let i=t.sourceRunIndex===r.sourceRunIndex,a=Km(r.text,t.text);!i&&!a||(t.joinPrev=!0)}for(let e=1;e<n.length;e++){let t=n[e];if(!(`text`in t)||t.joinPrev||t.text.length===0)continue;let r=n[e-1];if(!(`text`in r)||r.text.length===0||/\\s$/u.test(r.text)||/^\\s/u.test(t.text))continue;let i=[...r.text].at(-1),a=[...t.text][0],o=i?.codePointAt(0),s=a?.codePointAt(0);o===void 0||s===void 0||o===8203||s===8203||vc(r.text)||vc(t.text)||lg(r.text)||lg(t.text)||pc(o,s)&&(t.joinPrev=!0)}let c=new Set;for(let e of n)!(`text`in e)||e.fitTextRegionIndex===void 0||(c.has(e.fitTextRegionIndex)?e.joinPrev=!0:(e.fitTextRegionStart=!0,c.add(e.fitTextRegionIndex)));return Uh(n),n}function Eg(e,t,n,r,i,a=[],o,s={},c=0,l=nc,u=void 0,d=36,f=n,p=!1,m=!1,h=!1,g,_=`bounded`,v,y=!1,b){if(b===void 0){let b=(b,x)=>Eg(e,Nm(t),n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y,{probeHeights:b,preparedFloatWrap:x});if(!o||_===`intrinsic`)return b(null);let x=o.lineWindow?void 0:om(o.floats);return Fm(e=>b(e,x),e=>o.lineBoxH(e.ascent,e.descent,e.hasRuby,e.intendedSingle,e.eastAsian,e.gridCountSingle))}let{probeHeights:x,preparedFloatWrap:S}=b,C=[],w=[],T=0,E=u?.type===`snapToChars`&&u.characterPitchPt!=null&&u.characterPitchPt>0?u.characterPitchPt*i:null,D=null,O=0,k=0,A=0,j=0,M=new Set,N=0,P=0,ee=0,te=0,F=0,I=0,L=0,R=0,z=!1,B=!0,V=n,ne=0,re=o?.startPageY??0,ie=()=>jp(i),ae=t.length>0&&t.every(e=>`text`in e&&e.metricOnly===!0||`imagePath`in e&&!!e.anchor),oe=(e=0)=>{if(D=null,j=0,M.clear(),ne=0,V=n,!o)return;let t=x?.[C.length];if(t===void 0)return;let r={xLeftPt:o.referenceXPt??o.paraX,xRightPt:(o.referenceXPt??o.paraX)+(o.referenceWidthPt??n),readingDirection:o.readingDirection??(p?`rtl`:`ltr`)};if(o.lineWindow){let r=o.lineWindow({topYPt:re,minimumStartWidthPt:1,squareMinimumStartWidthPt:e,probeHeightPt:t,paragraphXPt:o.paraX,maximumWidthPt:n,columnXPt:o.columnXPt,columnWidthPt:o.columnWidthPt});re=r.topYPt,ne=r.xOffsetPt,V=r.maximumWidthPt}else{let i=wm(re,1,t,o.paraX,n,S??om(o.floats),o.columnXPt,o.columnXPt+o.columnWidthPt,r,e);re=i.topY,ne=i.xOffset,V=i.maxWidth}},H=()=>_===`intrinsic`?1/0:V-(B?r:0),se=p?a.map(e=>({pos:e.pos*i,alignment:e.alignment,leader:e.leader})):[],ce=d*i,le=()=>{if(!p||!w.some(e=>`isTab`in e))return;let e=w.map(e=>({isTab:`isTab`in e,width:e.measuredWidth}));for(let t=0;t<w.length;t+=1){if(!(`isTab`in w[t]))continue;let n=t+1;for(;n<w.length&&!(`isTab`in w[n]);)n+=1;let r=Me(w.slice(t+1,n));if(!r)continue;let i=t+1+r.segmentIndex,a=w[i];`text`in a&&(e[i].decimalOffset=Ae(a,a.text.slice(0,r.charOffset)))}let t=Cg(e,se,f-(ne+V)+(B?r:0),f+c,ce),n=0;for(let e=0;e<w.length;e++){let r=w[e];`isTab`in r&&(n+=t[e].width-r.measuredWidth,r.measuredWidth=t[e].width,r.leader=t[e].leader)}T+=n},ue=!1,de=!1,fe=!1,pe=(e,t=!1,n)=>{le();let r,a=!1;for(let e of w){if(`isTab`in e)continue;let t=`text`in e?e.position??0:0;if(`text`in e&&e.positionExtendsLineBox===!1){r=0,a=!0;break}if(!a)r=t,a=!0;else if(r!==t){r=0;break}}let s=a?r??0:0;if(s!==0)for(let e of w)`text`in e&&(e.lineRelativePosition=$m(e.position??0,s));let c=e===void 0?N||10:Math.max(N,e),l=P>0||ee>0,u=l?P:c*i*.8,d=l?ee:c*i*.2,f=z?I:u,p=z?L:d,m=z?R:te,h=F||(de?Qh(te,c*i):u+d);C.push({segments:w,height:c,ascent:u,descent:d,visibleAscent:f,visibleDescent:p,visibleIntendedSingle:m,intendedSingle:te,gridCountSingle:h,xOffset:ne,availWidth:V,topY:o?re:void 0,hasRuby:ue,eastAsian:de,endsWithBreak:t,consumedEnd:n??q[0]?.src??Ce}),o&&(re+=o.lineBoxH(u,d,ue,te,de,h)),w=[],T=0,O=0,k=0,A=0,j=0,M.clear(),N=0,P=0,ee=0,te=0,F=0,I=0,L=0,R=0,z=!1,ue=!1,de=!1,fe=!1,B=!1,oe(ie())},me=(e,t=e.text)=>bu(e.fontFamily)*wf(e,i)*Wh(e)*[...t].length,he=e=>{let t=e.bold?700:400,n=e.italic?`italic`:`normal`;return e.fontRoute?`${e.fontRoute.fingerprint}|${t}|${n}`:`implicit|${Th(e.bold,e.italic,1,e.fontFamily,s)}`},ge=(e,t,n=t.text)=>{/\\S/.test(n)&&e.add(he(t))},U=e=>{let t=M.size;for(let n of e)M.has(n)||(t+=1);return t},W=(e,t)=>{let n=Jh(e,u);return!n||E==null?t:n===`eastAsia`?Yh(t,n,E,ke(e)):D?.kind===n?Yh(D.naturalWidthPx+t,n,E)-D.allocatedWidthPx:Yh(t,n,E)},G=(e,t,n,r,a,o=0)=>{let s=t;if(`text`in e){let n=Jh(e,u),r=e.snapGridNaturalWidthPx??t;if(n&&E!=null)if(e.snapGridClass=n,e.snapGridNaturalWidthPx=r,e.snapGridCellPitchPx=E,n===`eastAsia`)s=Yh(r,n,E,ke(e)),e.snapGridLeadingPadPx=0,e.snapGridTrailingPadPx=s-r,e.measuredWidth=s,D=null;else if(D?.kind===n){let t=D.first.snapGridLeadingPadPx??0,i=D.last.snapGridTrailingPadPx??0,a=D.naturalWidthPx+r,o=Yh(a,n,E),c=o-a,l=n===`latin`?c/2:0,u=c-l;D.first.measuredWidth-=t,D.first.snapGridLeadingPadPx=l,D.first.measuredWidth+=l,D.last.measuredWidth-=i,e.snapGridLeadingPadPx=0,e.snapGridTrailingPadPx=u,e.measuredWidth=r+u,s=o-D.allocatedWidthPx,D={kind:n,first:D.first,last:e,naturalWidthPx:a,allocatedWidthPx:o}}else{let t=Yh(r,n,E),i=t-r,a=n===`latin`?i/2:0,o=i-a;e.snapGridLeadingPadPx=a,e.snapGridTrailingPadPx=o,e.measuredWidth=t,s=t,D={kind:n,first:e,last:e,naturalWidthPx:r,allocatedWidthPx:t}}else e.snapGridClass=void 0,e.snapGridLeadingPadPx=void 0,e.snapGridTrailingPadPx=void 0,e.snapGridCellPitchPx=void 0,e.measuredWidth=t,D=null}else D=null;if(w.push(e),T+=s,`text`in e){let t=e.text.length-e.text.replace(/ +$/,``).length,n=t>0&&t===e.text.length;if(n&&k>0)O-=A,k+=t,A=0;else{k=0,A=0;let e=w[w.length-2],r=e!==void 0&&`text`in e&&/\\S$/u.test(e.text);(n&&r||t>0&&!n)&&(k=t,A=t===1?o:0,O+=A)}j+=me(e),ge(M,e)}n>N&&(N=n),r>P&&(P=r),a>ee&&(ee=a);let c=!(`text`in e)||e.metricOnly!==!0;c&&(z=!0,r>I&&(I=r),a>L&&(L=a));let l=0;if(!(`isTab`in e)&&!(`imagePath`in e)&&!(`math`in e)){let t=e;t.ruby&&(ue=!0),t.seaBreaks!==void 0&&bc(t.text)&&(fe=!0);let n=t.metricEastAsian===!0||Tf.test(t.text);!de&&n&&(de=!0);let r=t.smallCaps&&!t.vertAlign?t.fontSize*i:K(t),a=n&&!t.ruby,o=t.textBoxLineFloor&&t.ruby?0:Math.max(Eh(t,r,a),t.textBoxLineFloor||t.metricEastAsian===!0?Dh(t,r,a):0);o>te&&(te=o),c&&o>R&&(R=o),a&&(l=Qh(o,r))}else `isTab`in e||(l=r+a);l>F&&(F=l)},K=e=>wf(e,i),_e=null,ve=t=>{t!==_e&&(e.font=t,_e=t)},ye=t=>{if(t.kerning==null)return null;let n=e.fontKerning;return e.fontKerning=t.fontSize>=t.kerning?`normal`:`none`,n},be=t=>{t!=null&&(e.fontKerning=t)},xe=(t,n=!1)=>{if(t.textLayoutService&&t.textShapeRequest){let e=t.textLayoutService.shape({...t.textShapeRequest,text:t.text,fontSizePt:K(t),measure:!0,clusterGeometry:n});return n&&(t.shapedClusters=e.clusters,t.selectedFaceFontBox={ascentPt:e.ascentPt,descentPt:e.descentPt},t.selectedFaceInkBounds=e.inkBounds??{xMinPt:0,xMaxPt:e.advancePt,ascentPt:e.ascentPt,descentPt:e.descentPt}),{width:e.advancePt,actualBoundingBoxAscent:e.ascentPt,actualBoundingBoxDescent:e.descentPt,fontBoundingBoxAscent:e.ascentPt,fontBoundingBoxDescent:e.descentPt}}ve(Th(t.bold,t.italic,K(t),t.fontFamily,s,t.fontRoute));let r=ye(t),i=e.measureText(t.text);return be(r),i},Se=(e,t)=>{if(!e.verticalRun)return 0;if(!v)throw Error(`Vertical glyph measurement capability is required for vertical text`);ve(Th(e.bold,e.italic,K(e),e.fontFamily,s,e.fontRoute));let n=ye(e);try{return v.measureRunInkExtra(t)}finally{be(n)}},Ce={segIndex:t.length,charOffset:0},we=t.map((e,t)=>(e.src={segIndex:t,charOffset:0},`text`in e&&vc(e.text)&&(e.seaBreaks=Dc(e.text,{cjk:!0,kinsoku:l})),e)),q;if(!g)q=we;else if(g.segIndex>=we.length)q=[];else{let e=we[g.segIndex];if(g.charOffset>0)if(!(`text`in e)||g.charOffset>e.text.length)q=[];else{let t=e.text.slice(g.charOffset);q=t?[{...e,text:t,measuredWidth:0,src:{...g},punctuationCompressions:Bh(e,g.charOffset,e.text.length),seaBreaks:pg(e.seaBreaks,g.charOffset)},...we.slice(g.segIndex+1)]:we.slice(g.segIndex+1)}else q=we.slice(g.segIndex)}wg(q.filter(e=>`text`in e),i,e=>xe(e).width+Se(e,e.text));let Te=e=>qh(e,xe(e).width+Se(e,e.text),u,i),Ee=(e,t)=>{let n=Jh(e,u);return!n||E==null||e.text.length===0?t:Yh(t,n,E,n===`eastAsia`?ke(e):1)},De=e=>Ee(e,Te(e)),Oe=(t,n,r=!1)=>{let a=r?t.text.length-n.length:0,o={...t,text:n,punctuationCompressions:Bh(t,Math.max(0,a),Math.max(0,a)+n.length)};if(t.textLayoutService&&t.textShapeRequest)return qh(o,t.textLayoutService.shape({...t.textShapeRequest,text:n,fontSizePt:K(t),measure:!0,clusterGeometry:!1}).advancePt+Se(t,n),u,i);ve(Th(t.bold,t.italic,K(t),t.fontFamily,s,t.fontRoute));let c=ye(t),l=e.measureText(n).width;return be(c),qh(o,l+Se(t,n),u,i)},ke=t=>{if(E==null)return 1;t.textLayoutService&&t.textShapeRequest&&!t.shapedClusters&&xe(t,!0);let n=t.shapedClusters?.length?t.shapedClusters:null,r=n==null?[...new Set([0,...Mc(t.text),t.text.length])].sort((e,t)=>e-t):null,a=n?.map(e=>({start:e.range.start,end:e.range.end,advancePx:e.advancePt}))??r.slice(0,-1).map((e,t)=>({start:e,end:r[t+1],advancePx:void 0})),o=0;for(let n of a){let{start:r,end:a}=n;if(a<=r)continue;let c=t.text.slice(r,a),l={...t,text:c,punctuationCompressions:Bh(t,r,a)},d;if(n.advancePx!=null)d=qh(l,n.advancePx+Se(t,c),u,i);else{ve(Th(t.bold,t.italic,K(t),t.fontFamily,s,t.fontRoute));let n=ye(t),r=e.measureText(c).width;be(n),d=qh(l,r+Se(t,c),u,i)}o+=Im(d,E)}return Math.max(1,o)},Ae=(e,t,n=!1)=>Ee({...e,text:t,shapedClusters:t===e.text?e.shapedClusters:void 0},Oe(e,t,n)),je=e=>`isTab`in e?e.measuredWidth||0:`imagePath`in e?e.widthPt*i:`math`in e?e.measuredWidth||0:`lineBreak`in e?0:De(e),Me=e=>{for(let t=0;t<e.length;t+=1){let n=e[t];if(!(`text`in n))continue;let r=n.text.indexOf(`.`);if(r>=0)return{segmentIndex:t,charOffset:r}}let t=null,n=!1;for(let r=0;r<e.length;r+=1){let i=e[r];if(!(`text`in i)){if(n)return t;continue}let a=0;for(let e of i.text)if(a+=e.length,/\\p{Decimal_Number}/u.test(e))n=!0,t={segmentIndex:r,charOffset:a};else if(n)return t}return t},Ne=e=>{let t=Me(e);if(!t)return;let n=0;for(let r=0;r<t.segmentIndex;r+=1)n+=je(e[r]);let r=e[t.segmentIndex];return`text`in r?n+Ae(r,r.text.slice(0,t.charOffset)):n},Pe=()=>{let e=[],t=0;for(let n of q){if(`isTab`in n||`lineBreak`in n)break;e.push(n),t+=je(n)}let n=Ne(e);return n===void 0?{totalWidth:t}:{totalWidth:t,decimalPrefixWidth:n}},Fe=null;for(oe(ae?o?.paragraphMarkLineStartWidth??ie():ie());q.length>0;){let t=q.shift();if(`lineBreak`in t){pe(t.fontSize,!0),Fe=t.fontSize;continue}if(Fe=null,`isTab`in t){if(p&&!t.ptab){t.measuredWidth=0,G(t,0,t.fontSize,t.fontSize*i*.8,t.fontSize*i*.2);continue}let e=T+(B?r:0);if(t.ptab){t.resolvedAlignment=t.ptab.alignment;let r=t.ptab.relativeTo===`indent`?0:-c,a=t.ptab.relativeTo===`indent`?n:f,o=t.ptab.alignment===`left`?r:t.ptab.alignment===`center`?(r+a)/2:a,s=0;for(let e of q){if(`isTab`in e||`lineBreak`in e)break;s+=je(e)}let l=t.ptab.alignment===`center`?.5:+(t.ptab.alignment===`right`),d=o-e-s*l;if(d<=0){if(w.length>0){pe(void 0,!1,t.src),q.unshift(t);continue}d=0}if(t.measuredWidth=d,G(t,d,t.fontSize,t.fontSize*i*.8,t.fontSize*i*.2),t.ptab.alignment!==`left`)for(;q.length>0;){let e=q[0];if(`isTab`in e||`lineBreak`in e)break;if(q.shift(),`imagePath`in e){let t=e.widthPt*i;e.measuredWidth=t,G(e,t,e.heightPt,e.heightPt*i,0)}else if(`math`in e)G(e,e.measuredWidth||0,e.fontSize,e.mathAscent||0,e.mathDescent||0);else{let t=xe(e),n=qh(e,t.width+Se(e,e.text),u,i);e.measuredWidth=n;let r=t.fontBoundingBoxAscent??t.actualBoundingBoxAscent??e.fontSize*i*.8,a=t.fontBoundingBoxDescent??t.actualBoundingBoxDescent??e.fontSize*i*.2;G(e,n,e.fontSize,r,a)}}continue}let o=Ef(e+c,a.map(e=>({pos:e.pos*i,alignment:e.alignment,leader:e.leader})),d*i);t.resolvedAlignment=o?.alignment??`left`;let s=o?o.pos-c:e,l=o?Sg(o.alignment):`leading`;if(o&&l!==`leading`){let n=s;t.leader=o.leader;let r=Pe(),a=l===`center`?r.totalWidth/2:l===`decimal`?r.decimalPrefixWidth??r.totalWidth:r.totalWidth,c=n-e-a;for(c<=0&&(c=0),t.measuredWidth=c,G(t,c,t.fontSize,t.fontSize*i*.8,t.fontSize*i*.2);q.length>0;){let e=q[0];if(`isTab`in e||`lineBreak`in e)break;if(q.shift(),`imagePath`in e){let t=e.widthPt*i;e.measuredWidth=t,G(e,t,e.heightPt,e.heightPt*i,0)}else if(`math`in e)G(e,e.measuredWidth||0,e.fontSize,e.mathAscent||0,e.mathDescent||0);else{let t=xe(e),n=qh(e,t.width+Se(e,e.text),u,i);e.measuredWidth=n;let r=t.fontBoundingBoxAscent??t.actualBoundingBoxAscent??e.fontSize*i*.8,a=t.fontBoundingBoxDescent??t.actualBoundingBoxDescent??e.fontSize*i*.2;G(e,n,e.fontSize,r,a)}}continue}let m=s-e;if(o&&(t.leader=o.leader),m<=0){pe(void 0,!1,t.src),q.unshift(t);continue}if(T+m>H()&&w.length>0){pe(void 0,!1,t.src),q.unshift(t);continue}t.measuredWidth=m,G(t,m,t.fontSize,t.fontSize*i*.8,t.fontSize*i*.2);continue}if(`imagePath`in t){if(t.anchor){t.measuredWidth=0;continue}let e=t.widthPt*i,n=t.heightPt,r=t.heightPt*i;t.measuredWidth=e,w.length>0&&T+e>H()&&pe(void 0,!1,t.src),G(t,e,n,r,0);continue}if(`math`in t){let n=t.mathMetadata;if(!n||n.available===!1){let n=t.fontSize*i;ve(Th(!1,!1,n,null,s));let r=e.measureText(t.fallbackText),a=r.width,o=r.fontBoundingBoxAscent??r.actualBoundingBoxAscent??n*.8,c=r.fontBoundingBoxDescent??r.actualBoundingBoxDescent??n*.2;t.measuredWidth=a,t.mathAscent=o,t.mathDescent=c,w.length>0&&T+a>H()&&pe(void 0,!1,t.src),G(t,a,t.fontSize,Math.max(o,n*.8),Math.max(c,n*.2));continue}let r=t.fontSize*i,a=n.widthEm*r,o=n.ascentEm*r,c=n.descentEm*r;t.measuredWidth=a,t.mathAscent=o,t.mathDescent=c;let l=Math.max(o,r*.8),u=Math.max(c,r*.2);w.length>0&&T+a>H()&&pe(void 0,!1,t.src),G(t,a,t.fontSize,l,u);continue}let o=t,g=xe(o,Jh(o,u)===`eastAsia`),_=qh(o,g.width+Se(o,o.text),u,i);o.snapGridNaturalWidthPx=_;let b=W(o,_),x=o.fontSize,S=o.fontSize*i,C=g,E=K(o);if(o.smallCaps&&!o.vertAlign&&E!==S){if(o.textLayoutService&&o.textShapeRequest){let e=o.textLayoutService.shape({...o.textShapeRequest,text:o.text||`X`,fontSizePt:S,measure:!0,clusterGeometry:!1});C={width:e.advancePt,actualBoundingBoxAscent:e.ascentPt,actualBoundingBoxDescent:e.descentPt,fontBoundingBoxAscent:e.ascentPt,fontBoundingBoxDescent:e.descentPt}}else{let t=e.font;e.font=Th(o.bold,o.italic,S,o.fontFamily,s,o.fontRoute),C=e.measureText(o.text||`X`),e.font=t}E=S}let D=tg(C,o.fontFamily,S,E,(o.metricEastAsian===!0||Tf.test(o.text))&&!o.ruby),k=D.ascent,A=D.descent;if(o.positionExtendsLineBox!==!1){let e=(o.position??0)*i;e>0?k+=e:e<0&&(A-=e)}if(o.ruby&&(!o.textBoxLineFloor||o.textBoxVertical)&&(k+=fh(o.ruby.fontSizePt,o.ruby.hpsRaisePt,i,o,e,s)),o.fitTextRegionIndex!==void 0){if(o.fitTextRegionStart){let e=_;for(let t of q){if(!(`text`in t)||t.fitTextRegionIndex!==o.fitTextRegionIndex)break;e+=De(t)}w.length>0&&T+e>H()&&pe(void 0,!1,o.src)}o.measuredWidth=_,G(o,_,x,k,A);continue}let M=o.text.replace(/ +$/,``),N=Jh(o,u)?0:o.text.endsWith(` `)?_-Ae(o,M):0,P=e=>{let t=e===void 0||`lineBreak`in e;return m&&(!t||h)},ee=(e,t,r)=>Xm({widthPx:e,trailingSpacePx:t,lineWillJustify:P(r),wrapNarrowed:V!==n||ne!==0}),te=ee(b,N,q[0]),F=o.seaBreaks!==void 0&&bc(o.text),I=new Set;ge(I,o,M);let L=(e,t,n)=>P(e)?Zm({biasBudgetPx:t,resolvedMeasurementRouteCount:U(n)}):fe||F?0:O*.25;if(!o.joinPrev&&w.length>0&&q[0]?.joinPrev&&!lg(o.text)&&!(o.seaBreaks&&o.seaBreaks.length>0)){let e=_,t=N,n=0,r=j,i=new Set(I),a=o,s=o.text,c=(e,t=e.text)=>{r+=me(a,s),a=e,s=t};for(;n<q.length&&q[n].joinPrev;n++){let r=q[n];if(lg(r.text)){let n=[...r.text],a=0;for(;a<n.length&&nc.lineStartForbidden.has(n[a].codePointAt(0));)a++;if(a<n.length){let o=n.slice(0,a).join(``),s=Ae(r,o);e+=s,o.length>0&&(c(r,o),ge(i,r,o)),t=0;break}}let a=De(r);e+=a,c(r),ge(i,r);let o=r.text.replace(/ +$/,``),s=r.text.endsWith(` `)?a-Ae(r,o):0;t=o.length===0&&t>0?t+s:s}r+=me(a,s.replace(/ +$/,``)),T+ee(e,t,q[n])>H()+L(q[n],r,i)&&pe(void 0,!1,o.src)}if(F&&w.length>0&&(()=>{let e=w[w.length-1];return!(`text`in e)||e.text.endsWith(` `)})()){let e=_,t=N,n=0,r=j+me(o,M),i=new Set(I);if(!o.text.endsWith(` `))for(;n<q.length;n++){let a=q[n];if(!(`text`in a)||a.seaBreaks===void 0||!bc(a.text))break;let o=a,s=De(o),c=o.text.replace(/ +$/,``);if(e+=s,t=o.text.endsWith(` `)?s-Ae(o,c):0,r+=me(o,c),ge(i,o,c),o.text.endsWith(` `)){n++;break}}let a=ee(e,t,q[n]);T+a>H()+L(q[n],r,i)&&a<=V&&pe(void 0,!1,o.src)}let R=L(q[0],j+me(o,M),I),z=[...M],re=z.at(-1),ie=z.slice(0,-1).join(``),ae=y&&re!==void 0&&(w.length>0||ie.length>0)&&Ym(re,o.eastAsiaLanguage)&&T+Ae(o,ie)<=H()+R;if(T+te<=H()+R)o.measuredWidth=_,G(o,_,x,k,A,N);else if(ae)o.measuredWidth=_,G(o,_,x,k,A,N);else if(lg(o.text)&&o.seaBreaks===void 0){let t=H()-T;ve(Th(o.bold,o.italic,K(o),o.fontFamily,s,o.fontRoute));let n=ye(o),r=``;try{r=t>0?hg(e,o.text,t,Ph(o,u,i),Wh(o),Fh(o,i),o.verticalRun===!0,v,e=>Ae(o,e)):``}finally{be(n)}let a=[...o.text],c=[...r].length,d=w.length>0?0:1,f=mg(a,(y&&c<a.length&&(w.length>0||c>0)&&Ym(a[c],o.eastAsiaLanguage)?c+1:null)??rc(a,c,l,d)),p=a.slice(0,f).join(``);if(p.length>0){let e=Oe(o,p);G({...o,text:p,measuredWidth:e,punctuationCompressions:Bh(o,0,p.length)},e,x,k,A);let t=o.text.slice(p.length);t&&q.unshift({...o,text:t,punctuationCompressions:Bh(o,p.length,o.text.length),measuredWidth:0,src:{segIndex:o.src.segIndex,charOffset:o.src.charOffset+p.length}})}else if(w.length>0){let e=null,t=o.text.codePointAt(0),n=w[w.length-1];if(t!==void 0&&l.lineStartForbidden.has(t)&&`text`in n){let t=n,r=[...t.text],i=ic(r,l,w.length>1?0:1);if(i>0){let n=r.slice(0,r.length-i).join(``),a=r.slice(r.length-i).join(``);if(e={...t,text:a,punctuationCompressions:Bh(t,n.length,t.text.length),measuredWidth:Ae(t,a,!0),src:{segIndex:t.src.segIndex,charOffset:t.src.charOffset+n.length}},n){let e=Ae(t,n);T-=t.measuredWidth-e,w[w.length-1]={...t,text:n,measuredWidth:e,punctuationCompressions:Bh(t,0,n.length)}}else T-=t.measuredWidth,w.pop()}}pe(void 0,!1,e?.src??o.src),q.unshift(o),e&&q.unshift(e)}else{let e=[...o.text],t=e.length>0?mg(e,1):0,n=e.slice(0,t).join(``);if(n){let e=Oe(o,n);G({...o,text:n,measuredWidth:e,punctuationCompressions:Bh(o,0,n.length)},e,x,k,A);let t=o.text.slice(n.length);t&&q.unshift({...o,text:t,punctuationCompressions:Bh(o,n.length,o.text.length),measuredWidth:0,src:{segIndex:o.src.segIndex,charOffset:o.src.charOffset+n.length}})}}}else if(o.seaBreaks!==void 0){let e=H()-T,t=e=>Ae(o,e),n=yc(o.text),r=kc(o.text,o.seaBreaks,0,e,t,n);if(r>0){let e=o.text.slice(0,r),t=Oe(o,e);G({...o,text:e,measuredWidth:t,punctuationCompressions:Bh(o,0,e.length)},t,x,k,A);let n=o.text.slice(r);n&&q.unshift({...o,text:n,punctuationCompressions:Bh(o,r,o.text.length),measuredWidth:0,src:{segIndex:o.src.segIndex,charOffset:o.src.charOffset+r},seaBreaks:pg(o.seaBreaks,r)})}else if(w.length>0){let e=null,t=o.text.codePointAt(0),n=w[w.length-1];if(t!==void 0&&l.lineStartForbidden.has(t)&&`text`in n){let t=n,r=[...t.text],i=ic(r,l,w.length>1?0:1);if(i>0){let n=r.slice(0,r.length-i).join(``),a=r.slice(r.length-i).join(``);if(e={...t,text:a,punctuationCompressions:Bh(t,n.length,t.text.length),measuredWidth:Ae(t,a,!0),src:{segIndex:t.src.segIndex,charOffset:t.src.charOffset+n.length},seaBreaks:pg(t.seaBreaks,n.length)},n){let e=Ae(t,n);T-=t.measuredWidth-e,w[w.length-1]={...t,text:n,measuredWidth:e,punctuationCompressions:Bh(t,0,n.length)}}else T-=t.measuredWidth,w.pop()}}pe(void 0,!1,e?.src??o.src),q.unshift(o),e&&q.unshift(e)}else{let r=o.seaBreaks[0]??o.text.length,i=o.text.slice(0,r),a=Mc(i),s=kc(i,a,0,e,t,n);s<=0&&(s=a.length>0?a[0]:i.length);let c=o.text.slice(0,s),l=Oe(o,c);G({...o,text:c,measuredWidth:l,punctuationCompressions:Bh(o,0,c.length)},l,x,k,A);let u=o.text.slice(s);u&&q.unshift({...o,text:u,punctuationCompressions:Bh(o,s,o.text.length),measuredWidth:0,src:{segIndex:o.src.segIndex,charOffset:o.src.charOffset+s},seaBreaks:pg(o.seaBreaks,s)})}}else if(w.length===0){let t=H();ve(Th(o.bold,o.italic,K(o),o.fontFamily,s,o.fontRoute));let n=ye(o),r=0;try{r=t>0?hg(e,o.text,t,Ph(o,u,i),Wh(o),Fh(o,i),o.verticalRun===!0,v,e=>Ae(o,e)).length:0}finally{be(n)}let a=[0,...Mc(o.text),o.text.length],c=a.filter(e=>e<=r).at(-1)??0;for(c<=0&&(c=a[1]??o.text.length);o.text.startsWith(` `,c);)c+=1;if(c>=o.text.length)o.measuredWidth=_,G(o,_,x,k,A);else{let e=o.text.slice(0,c),t=Oe(o,e);G({...o,text:e,measuredWidth:t,punctuationCompressions:Bh(o,0,e.length)},t,x,k,A),q.unshift({...o,text:o.text.slice(c),punctuationCompressions:Bh(o,c,o.text.length),measuredWidth:0,src:{segIndex:o.src.segIndex,charOffset:o.src.charOffset+e.length}})}}else{if(o.joinPrev){o.measuredWidth=_,G(o,_,x,k,A,N);continue}pe(void 0,!1,o.src),q.unshift(o)}}if(w.length>0?pe():Fe!==null&&pe(Fe),_===`bounded`)for(let e of C)for(let t of e.segments)!(`text`in t)||t.metricOnly||t.text.length===0||(t.shapedClusters=void 0,t.textLayoutService&&t.textShapeRequest&&xe(t,!0));return C}const Dg=e=>{let t=e.text;return typeof t==`string`?t:void 0},Og=e=>e.rtl===!0,kg=e=>e.digitsAsAN===!0,Ag=e=>`isTab`in e;function jg(e){for(let t of e){if(Og(t))return!0;let e=Dg(t);if(e!==void 0&&Qs(e))return!0}return!1}function Mg(e,t){let n=e.length;if(n===0)return{order:[],rtl:[]};let r=``,i=Array(n),a=Array(n),o,s=()=>{for(o||=[];o.length<r.length;)o.push(null);return o};for(let t=0;t<n;t++){let n=Dg(e[t])??``;if(i[t]=r.length,r+=n.length>0?n:``,a[t]=r.length,Ag(e[t]))s()[i[t]]=`S`;else if(n.length>0&&(kg(e[t])||Og(e[t]))){let n=s(),o=kg(e[t]),c=Og(e[t]);for(let e=i[t];e<a[t];e++){let t=r.charCodeAt(e);o&&t>=48&&t<=57?n[e]=`AN`:c&&lh(r[e])&&(n[e]=`R`)}}}if(o)for(;o.length<r.length;)o.push(null);let{levels:c,paragraphLevel:l}=Xs().computeLevels(r,t?`rtl`:`ltr`,o),u=Array(n),d=Array(n);for(let e=0;e<n;e++){let t=a[e];for(;t>i[e]&&r[t-1]===` `;)t--;let n=!1;for(let r=i[e];r<t;r++){let e=c[r];if(e!==255&&(e&1)==1){n=!0;break}}u[e]=n,d[e]=i[e];for(let r=i[e];r<t;r++){let t=c[r];if(t!==255&&(t&1)==1===n){d[e]=r;break}}}let{order:f}=$s(c,l,d);return{order:f,rtl:u}}function Ng(e,t){switch(e){case`center`:return`center`;case`both`:case`justify`:case`distribute`:case`lowKashida`:case`mediumKashida`:case`highKashida`:case`thaiDistribute`:return`justify`;case`end`:case`right`:return t?`left`:`right`;case`start`:case`left`:case void 0:default:return t?`right`:`left`}}function Pg(e){switch(e){case`both`:case`justify`:case`distribute`:case`lowKashida`:case`mediumKashida`:case`highKashida`:case`thaiDistribute`:return!0;default:return!1}}function Fg(e){return e===`distribute`}function Ig(e,t){let n=e.map(e=>Object.freeze({...e})),r=om(n);return{lineWindow:({topYPt:e,minimumStartWidthPt:n,squareMinimumStartWidthPt:i,probeHeightPt:a,paragraphXPt:o,maximumWidthPt:s,columnXPt:c,columnWidthPt:l})=>{let u=wm(e,n,a,o,s,r,c,c+l,t??{xLeftPt:o,xRightPt:o+s,readingDirection:`ltr`},i??n);return{topYPt:u.topY,xOffsetPt:u.xOffset,maximumWidthPt:u.maxWidth}},skipTopAndBottomBands:({yPt:e,columnXPt:t,columnWidthPt:r})=>Tm(e,n,t,t+r)}}function Lg(e){if(e.characterGrid.active)return{type:e.characterGrid.kind,linePitchPt:null,characterPitchPt:e.characterGrid.pitchPt,charSpacePt:e.characterGrid.deltaPt}}function Rg(e){let t=Lg(e);return{type:t?t.type:e.lineGrid.active?`lines`:null,linePitchPt:e.lineGrid.active?e.lineGrid.pitchPt:null,characterPitchPt:e.characterGrid.active?e.characterGrid.pitchPt:null,charSpacePt:e.characterGrid.active?e.characterGrid.deltaPt:null}}function zg(e,t){if(!Xh(t))return e;let n=t.linePitchPt;return n<=0?e:e<=n?n:Math.ceil(e/n)*n}function Bg(e,t,n,r,i,a){let o=Rg(t),s=O_(t,n.availableWidthPt),c=Math.max(1,n.availableWidthPt-t.physicalIndentLeftPt-t.physicalIndentRightPt-s),l=n.paragraphXPt+t.physicalIndentLeftPt,u=t.spaceBeforePt,d=t.spaceAfterPt,f=Object.freeze({...n}),p=r.fontFamilyClasses,m=i.documentHasEastAsianText===!0||i.useFeLayout===!0,h=n.startYPt+(n.suppressSpaceBefore?0:u);n.wrap&&(h=n.wrap.skipTopAndBottomBands({yPt:h,columnXPt:n.paragraphXPt,columnWidthPt:n.availableWidthPt}));let g=()=>{let a=h,s=rg(e,1,o,t.hasRuby,m,r.context,p,t.lineSpacing,i.resolvedLocalFonts,i.layoutServices?.text,i.paragraphMarkShapeInput,i.useFeLayout===!0);return n.wrap&&(a=n.wrap.lineWindow({topYPt:a,minimumStartWidthPt:Oh(e),squareMinimumStartWidthPt:Mp(Oh(e),1),probeHeightPt:s,paragraphXPt:l,maximumWidthPt:c,columnXPt:n.paragraphXPt,columnWidthPt:n.availableWidthPt}).topYPt),{lines:[],markOnly:!0,requestedSpaceBeforePt:u,requestedSpaceAfterPt:d,uniformRubyAdvancePt:0,contentStartYPt:a,contentEndYPt:a+s,lastLineBelowBaselinePt:ag(e,o,t.hasRuby,m,r.context,p,t.lineSpacing,i.resolvedLocalFonts,i.layoutServices?.text,i.paragraphMarkShapeInput,i.useFeLayout===!0),placement:f}},_=Tg(e.runs,i);if(_.length===0)return g();let v=n.wrap?{startPageY:h,paraX:l,columnXPt:n.paragraphXPt,columnWidthPt:n.availableWidthPt,floats:[],paragraphMarkLineStartWidth:Mp(Oh(e),1),lineWindow:e=>n.wrap.lineWindow(e),lineBoxH:(e,n,r,i,a,s)=>$h(t.lineSpacing,e,n,1,o,t.hasRuby,i??0,t.hasRuby?t.hasEastAsianText:a??!1,s),pageH:n.maximumYPt}:void 0,y=Eg(r.context,_,c,a?0:t.firstIndentPt,1,[...t.tabStops],v,p,t.physicalIndentLeftPt,t.kinsoku,o,t.defaultTabPt,c+t.physicalIndentRightPt+s,t.baseRtl,t.isJustified,t.stretchLastLine,a?.boundary,void 0,i.verticalGlyphMeasurement,t.overflowPunct!==!1);if(y.length===0)return g();let b=t.hasRuby?zg(Math.max(0,...y.map(e=>$h(t.lineSpacing,e.ascent,e.descent,1,o,!0,e.intendedSingle,t.hasEastAsianText))),o):0;t.hasRuby&&a?.uniformRubyAdvancePt!==void 0&&(b=Math.max(b,a.uniformRubyAdvancePt));let x=[];for(let e of y){let n=e.topY!==void 0&&e.topY>h?e.topY:h,r=t.hasRuby?b:$h(t.lineSpacing,e.ascent,e.descent,1,o,!1,e.intendedSingle,e.eastAsian??!1,e.gridCountSingle);x.push({layout:e,topYPt:n,advancePt:r}),h=n+r}let S=x[x.length-1];return{lines:x,markOnly:!1,requestedSpaceBeforePt:u,requestedSpaceAfterPt:d,uniformRubyAdvancePt:b,contentStartYPt:x[0].topYPt,contentEndYPt:h,lastLineBelowBaselinePt:ig(S.advancePt,S.layout.ascent,S.layout.descent),placement:f}}function Vg(e){let t=e.leadingIndentPt+e.authoredFirstIndentPt+e.markerShiftPt;return{startPt:t,endPt:t+e.markerWidthPt}}function Hg(e){let t=e.authoredFirstIndentPt+e.markerShiftPt;return e.baseRtl?e.alignedLeadingEdgePt-t-e.markerWidthPt:e.alignedLeadingEdgePt+t}function Ug(e,t){let{numbering:n,markerInput:r,service:i}=t,a=n!=null&&(n.text!==``||n.picBulletImagePath!=null)&&(!e.baseRtl||(n?.suff||`tab`)===`tab`&&t.authoredFirstIndentPt<0);if(!n||!r||!i||!a)return e;let o=Kg(n,r,{authoredFirstIndentPt:t.authoredFirstIndentPt,physicalIndentLeftPt:e.physicalIndentLeftPt,tabStops:t.tabStops,defaultTabPt:t.defaultTabPt??e.defaultTabPt},i,t.clusterGeometry??!0);return{...e,firstIndentPt:o.bodyOffsetPt,numberingMarkerGeometry:o}}function Wg(e,t,n,r,i=!0){return r?{shape:r.shape({text:t,fontSizePt:e.fontSizePt*n,fonts:e.fonts,themeFonts:e.themeFonts,themeFontPresence:e.themeFontPresence,weight:e.weight,style:e.style,complexScript:e.complexScript,fontHint:e.fontHint,eastAsiaLanguage:e.eastAsiaLanguage,kerning:e.kerning,measure:!0,clusterGeometry:i}),fontSizePx:e.fontSizePt*n}:null}function Gg(e,t,n){return t.find(t=>Qm(e,t))??Ef(e,[...t],n)}function Kg(e,t,n,r,i=!0){let a=e.picBulletImagePath?``:he(e.text,e.fontFamily??null),o=a?Wg(t,a,1,r,i)?.shape??null:null,s=e.picBulletImagePath?e.picBulletWidthPt??t.fontSizePt:o?.advancePt??0,c=e.jc===`right`?-s:e.jc===`center`?-s/2:0,l=n.authoredFirstIndentPt+c+s,u=e.suff||`tab`,d=l;if(u===`space`)d+=Wg(t,` `,1,r,i)?.shape.advancePt??0;else if(u===`tab`&&(d=0,l>0)){let e=Gg(n.physicalIndentLeftPt+l,n.tabStops,n.defaultTabPt);d=e?e.pos-n.physicalIndentLeftPt:l}return{bodyOffsetPt:d,markerText:a,markerWidthPt:s,markerShiftPt:c,shape:o}}function qg(e,t,n){let r=0,i=0;for(let t of e.content){let e=t.type===`paragraph`?n.paragraph(t):n.nestedTable(t);r=Math.max(r,e.minWidthPt),i=Math.max(i,e.maxWidthPt)}let a=Math.max(0,t.left)+Math.max(0,t.right);return{minWidthPt:r+a,maxWidthPt:Math.max(r,i)+a}}function Jg(e){let t=e.textShapeRequest,n=e=>e?[e.ascii??null,e.highAnsi??null,e.eastAsia??null,e.complexScript??null]:null;return Eu(`paragraph-intrinsic-text`,[e.textLayoutService?.fingerprint??null,t?[n(t.fonts),n(t.themeFonts),t.themeFontPresence?[t.themeFontPresence.ascii??!1,t.themeFontPresence.highAnsi??!1,t.themeFontPresence.eastAsia??!1,t.themeFontPresence.complexScript??!1]:null,t.fontHint??null,t.fontSizePt,t.weight??null,t.style??null,t.complexScript??!1,t.eastAsiaLanguage??null,t.eastAsiaFontCharset??null,t.genericFamily??null,t.letterSpacingPt??null,t.kerning??null]:null,e.bold,e.italic,wf(e,1),e.fontFamily,e.fontRoute??null,e.charScale??1,e.charSpacing??0,e.fitTextPerGapPx??null,e.fitTextTrailingPadPx??null,e.fitTextRegionIndex??null,e.snapToCharacterGrid!==!1,e.widthBalanceGridDeltaFactor??null,e.widthBalanceSpaceSequence??!1,e.widthBalanceSpaceAdjustmentPt??null,e.script,e.tateChuYoko??!1,e.tateChuYoko?e.sourceRunIndex??null:null,e.ruby?[e.sourceRunIndex??null,e.ruby.text,e.ruby.fontSizePt,e.ruby.hpsRaisePt??null]:null,e.verticalRun??!1])}function Yg(e){let t=[];for(let n of e){let e=t.at(-1);if(e&&`text`in e&&`text`in n&&Jg(e)===Jg(n)){let r=e.text.length,i=e.text+n.text,a=[...e.punctuationCompressions??[],...(n.punctuationCompressions??[]).map(e=>({end:r+e.end,adjustmentPt:e.adjustmentPt}))];t[t.length-1]={...e,text:i,punctuationCompressions:a.length>0?a:void 0,textShapeRequest:e.textShapeRequest?{...e.textShapeRequest,text:i}:void 0};continue}t.push({...n})}return t}function Xg(e,t,n,r,i,a){let o=0,s=null,c=a?.type===`snapToChars`&&a.characterPitchPt!=null&&a.characterPitchPt>0?a.characterPitchPt:null,l=()=>{!s||c==null||(o+=Yh(s.naturalWidthPt,s.kind,c),s=null)};for(let u of e){let e=Math.max(n,u.start),d=Math.min(r,u.end);if(e>=d)continue;let f=t.slice(e,d),p=e-u.start,m=d-u.start,h={...u.segment,text:f,punctuationCompressions:Bh(u.segment,p,m)},g=e=>e.textLayoutService&&e.textShapeRequest?qh(e,e.textLayoutService.shape({...e.textShapeRequest,text:e.text,fontSizePt:wf(e,1),measure:!0,clusterGeometry:!1}).advancePt,a,1):(i.context.font=Th(e.bold,e.italic,wf(e,1),e.fontFamily,i.fontFamilyClasses,e.fontRoute),qh(e,i.context.measureText(e.text).width,a,1)),_=Jh(h,a);if(_===`eastAsia`&&c!=null){l();let e=h.textLayoutService&&h.textShapeRequest?h.textLayoutService.shape({...h.textShapeRequest,text:f,fontSizePt:wf(h,1),measure:!0,clusterGeometry:!0}).clusters:void 0,t=e?.length?null:[...new Set([0,...Mc(f),f.length])].sort((e,t)=>e-t),n=e?.map(e=>({start:e.range.start,end:e.range.end,naturalWidthPt:qh({...h,text:f.slice(e.range.start,e.range.end),punctuationCompressions:Bh(h,e.range.start,e.range.end)},e.advancePt,a,1)}))??t.slice(0,-1).map((e,n)=>{let r=t[n+1];return{start:e,end:r,naturalWidthPt:g({...h,text:f.slice(e,r),punctuationCompressions:Bh(h,e,r)})}}),r=0;for(let e of n)e.end<=e.start||(r+=Im(e.naturalWidthPt,c));o+=Yh(n.reduce((e,t)=>e+t.naturalWidthPt,0),_,c,Math.max(1,r))}else{let e=g(h);if((_===`latin`||_===`complexScript`)&&c!=null){let t=s;t?.kind===_?s={kind:_,naturalWidthPt:t.naturalWidthPt+e}:(l(),s={kind:_,naturalWidthPt:e})}else l(),o+=e}}return l(),o}function Zg(e,t,n){let r=Lg(t),i=0;for(let a=0;a<e.length;a+=1){let o=e[a];if(!(`text`in o)||o.text.length===0)continue;let s=[],c=``,l=e=>{let t=c.length;c+=e.text,s.push({segment:e,start:t,end:c.length})};for(l(o);a+1<e.length;){let t=e[a+1];if(!(`text`in t)||t.joinPrev!==!0)break;l(t),a+=1}let u=0;for(let e of bg(c)){let a=e.replace(/\\s+$/u,``),o=u,l=u+a.length;if(u+=e.length,!a)continue;if(!lg(a)){i=Math.max(i,Xg(s,c,o,l,n,r));continue}let d=[0,...Mc(a),a.length],f=[];for(let e=1;e<d.length;e+=1)f.push({text:a.slice(d[e-1],d[e]),start:o+d[e-1],end:o+d[e]});let p=[],m=f[0];for(let e=1;e<f.length;e+=1){let n=[...m.text].at(-1)?.codePointAt(0),r=f[e].text.codePointAt(0);n!==void 0&&r!==void 0&&!t.kinsoku.lineEndForbidden.has(n)&&!t.kinsoku.lineStartForbidden.has(r)?(p.push(m),m=f[e]):m={text:m.text+f[e].text,start:m.start,end:f[e].end}}m&&p.push(m);for(let e of p)i=Math.max(i,Xg(s,c,e.start,e.end,n,r))}}return i}function Qg(e,t,n){let r=(n.baseRtl?n.physicalIndentRightPt:n.physicalIndentLeftPt)+(t===0?n.firstIndentPt:0)+e.xOffset;return{startPt:r,endPt:r+e.segments.reduce((e,t)=>e+t.measuredWidth,0)}}function $g(e,t,n,r,i,a){if(!Number.isFinite(n)||n<0)throw RangeError(`maximumWidthPt must be finite and non-negative`);if(n===0)return{minWidthPt:0,maxWidthPt:0};let o=Yg(Tg(e.runs,i)),s=Math.max(1,n-t.physicalIndentLeftPt-t.physicalIndentRightPt),c=o.length===0?[]:Eg(r.context,o,s,t.firstIndentPt,1,[...t.tabStops],void 0,r.fontFamilyClasses,t.physicalIndentLeftPt,t.kinsoku,Lg(t),t.defaultTabPt,s+t.physicalIndentRightPt,t.baseRtl,t.isJustified,t.stretchLastLine,void 0,`intrinsic`,i.verticalGlyphMeasurement,t.overflowPunct!==!1),l=t.baseRtl?t.physicalIndentLeftPt:t.physicalIndentRightPt,u=0,d=0;c.forEach((e,n)=>{let r=Qg(e,n,t);u=Math.min(u,r.startPt),d=Math.max(d,r.endPt)});let f=a?Vg({leadingIndentPt:t.baseRtl?t.physicalIndentRightPt:t.physicalIndentLeftPt,authoredFirstIndentPt:e.indentFirst,markerShiftPt:a.markerShiftPt,markerWidthPt:a.markerWidthPt}):void 0;f&&(u=Math.min(u,f.startPt),d=Math.max(d,f.endPt));let p=Math.min(n,Math.max(0,d-u+l)),m=Zg(o,t,r);for(let e of c){let t=0,n=e.segments.reduce((e,t)=>e+t.measuredWidth,0);for(let r of e.segments)t+=r.measuredWidth,`imagePath`in r&&!r.anchor||`math`in r?m=Math.max(m,r.measuredWidth):`isTab`in r&&(m=Math.max(m,r.resolvedAlignment===`left`?t:n))}let h=t.baseRtl?t.physicalIndentRightPt:t.physicalIndentLeftPt,g=h,_=Math.min(0,g),v=Math.max(0,g+m),y=h+t.firstIndentPt;return _=Math.min(_,y),v=Math.max(v,y+m),f&&(_=Math.min(_,f.startPt),v=Math.max(v,f.endPt)),{minWidthPt:Math.min(n,Math.max(0,v-_+l)),maxWidthPt:p}}function e_(e,t){if(!e||t?.suppressBottom)return 0;let n=e.bottom;return!n||n.style===`none`?0:(n.space??0)+(n.width??0)/2}function t_(e){return e==null||e.style===`none`?null:e}function n_(e,t){let n=t_(e),r=t_(t);return n==null||r==null?n==null&&r==null:n.style===r.style&&n.width===r.width&&(n.space??0)===(r.space??0)&&(n.color??null)===(r.color??null)}function r_(e,t){return!e||!t?!1:n_(e.top,t.top)&&n_(e.bottom,t.bottom)&&n_(e.left,t.left)&&n_(e.right,t.right)&&n_(e.between,t.between)}function i_(e){return e?[e.top,e.right,e.bottom,e.left,e.between].some(e=>e!=null&&e.style!==`none`):!1}function a_(e,t){return!e||!t||e.framePr||t.framePr?!1:i_(e.borders)&&i_(t.borders)&&r_(e.borders,t.borders)}function o_(e,t,n,r=!1){let i=(e,t)=>r?!!e&&!!t&&!!e.framePr&&!!t.framePr&&i_(e.borders)&&i_(t.borders)&&r_(e.borders,t.borders):a_(e,t),a=i(e,t),o=i(t,n),s=t.borders?.between;return Object.freeze({top:a?s&&s.style!==`none`?`between`:`none`:`top`,bottom:o?`none`:`bottom`})}function s_(e,t,n,r,i,a){return $g(e,t,n,r,i,a).maxWidthPt}function c_(e){let t=e;return Eu(`w:framePr`,[t.dropCap,t.lines,t.wrap,t.hAnchor,t.vAnchor,t.hRule,t.hSpace,t.vSpace,t.w??null,t.h??null,t.x??null,t.y??null,t.xAlign??null,t.yAlign??null,t.__anchorLock===!0])}function l_(e){let t=new WeakMap;for(let n=0;n<e.length;){let r=e[n];if(r?.type!==`paragraph`||!r.framePr){n+=1;continue}let i=c_(r.framePr),a=[r],o=[n],s=n+1;for(;s<e.length;){let t=e[s];if(t?.type!==`paragraph`||!t.framePr||c_(t.framePr)!==i)break;a.push(t),o.push(s),s+=1}let c=Object.freeze({id:`${i}:${n}`,owner:r,members:Object.freeze(a),sourceIndices:Object.freeze(o),framePr:r.framePr});for(let e of a)t.set(e,c);n=s}return t}const u_=new WeakMap,d_=new WeakMap;function f_(e){let t=l_(e);for(let n=0;n<e.length;n+=1){let r=e[n];if(r.type!==`paragraph`)continue;let i=t.get(r);i&&u_.set(r,i);let a=e[n-1],o=e[n+1],s=a?.type===`paragraph`&&t.get(a)===i?a:null,c=o?.type===`paragraph`&&t.get(o)===i?o:null;d_.set(r,o_(i?s:a?.type===`paragraph`?a:null,r,i?c:o?.type===`paragraph`?o:null,i!==void 0))}}const p_=e=>u_.get(e),m_=e=>d_.get(e);function h_(e){return{story:e.story,containers:[...e.containers,{kind:`tableCell`}],lineNumberingEligible:!1}}function g_(e){return e.runs.some(e=>e.type===`text`&&!!e.ruby)}function __(e){return e.runs.some(e=>e.type===`text`&&Tf.test(e.text))}function v_(e){for(let t of e){if(t.type===`paragraph`){if(__(t))return!0;continue}if(t.type===`table`){for(let e of t.rows)for(let t of e.cells)if(v_(t.content))return!0}}return!1}function y_(e,t={normalStyleFontSizePt:10}){return f_(e.body),{kinsoku:tc(e.settings),defaultTabPt:xg(e.settings),characterSpacingControl:e.settings?.characterSpacingControl,mathDefJc:e.settings?.mathDefJc,documentHasEastAsianText:v_(e.body),normalStyleFontSizePt:t.normalStyleFontSizePt,compat:{adjustLineHeightInTable:e.settings?.adjustLineHeightInTable??!1,useFeLayout:e.settings?.useFeLayout??!1,balanceSingleByteDoubleByteWidth:e.settings?.balanceSingleByteDoubleByteWidth??!1}}}function b_(e){let t=e.pageWidth-e.marginLeft-e.marginRight,n=e.columns;if(!n||n.count<=1)return[{xPt:e.marginLeft,wPt:Math.max(1,t)}];if(!n.equalWidth&&n.cols.length>0){let t=[],r=e.marginLeft;for(let e of n.cols)t.push({xPt:r,wPt:Math.max(1,e.widthPt)}),r+=e.widthPt+e.spacePt;return t}let r=Math.max(1,(t-(n.count-1)*n.spacePt)/n.count);return Array.from({length:n.count},(t,i)=>({xPt:e.marginLeft+i*(r+n.spacePt),wPt:r}))}function x_(e){switch(e){case`lines`:case`linesAndChars`:case`snapToChars`:return e;default:return`none`}}function S_(e){return e===`lines`||e===`linesAndChars`||e===`snapToChars`}function C_(e){return e===`linesAndChars`||e===`snapToChars`}function w_(e,t){return{geometry:{pageWidth:t.pageWidth,pageHeight:t.pageHeight,marginTop:t.marginTop,marginRight:t.marginRight,marginBottom:t.marginBottom,marginLeft:t.marginLeft,headerDistance:t.headerDistance,footerDistance:t.footerDistance},columns:b_(t),columnSeparator:t.columns?.sep===!0,grid:{kind:x_(t.docGridType),linePitchPt:t.docGridLinePitch??null,charSpacePt:t.docGridCharSpace==null?null:t.docGridCharSpace/4096},textDirection:t.textDirection??`lrTb`,sectionBidi:!1,verticalAlignment:t.vAlign??`top`,lineNumbering:t.lineNumbering??void 0}}function T_(e){return e.containers.some(e=>e.kind===`tableCell`)}function E_(e,t,n,r){let i=S_(t.grid.kind)&&t.grid.linePitchPt!=null&&t.grid.linePitchPt>0&&r.snapToGrid!==!1&&r.lineSpacing?.rule!==`exact`&&(!T_(n)||e.compat.adjustLineHeightInTable),a=C_(t.grid.kind),o=r.bidi===!0,s=T_(n),c=a?e.normalStyleFontSizePt+(t.grid.charSpacePt??0):null,l=t.grid.kind===`linesAndChars`?c:null,u=r.numbering,d=u!=null&&(u.text!==``||u.picBulletImagePath!=null),f=o&&d&&(u.suff||`tab`)===`tab`&&r.indentFirst<0;return{lineGrid:{active:i,pitchPt:i?t.grid.linePitchPt:null},characterGrid:{active:a,kind:a?t.grid.kind:null,deltaPt:a?t.grid.charSpacePt??0:0,pitchPt:c!=null&&c>0?c:null},rightIndentGrid:{pitchPt:l!=null&&l>0?l:null,paragraphAllowsAdjustment:r.adjustRightInd!==!1&&Lm(s)},physicalIndentLeftPt:o?r.indentRight:r.indentLeft,physicalIndentRightPt:o?r.indentLeft:r.indentRight,firstIndentPt:f?0:r.indentFirst,lineSpacing:r.lineSpacing,spaceBeforePt:r.spaceBefore,spaceAfterPt:r.spaceAfter,baseRtl:o,isJustified:Pg(r.alignment),stretchLastLine:Fg(r.alignment),tabStops:D_(r),hasRuby:g_(r),hasEastAsianText:__(r),kinsoku:e.kinsoku,defaultTabPt:e.defaultTabPt,overflowPunct:r.overflowPunct!==!1,mathDefJc:e.mathDefJc}}function D_(e){let t=e.tabStops.filter(e=>e.alignment!==`clear`).map(e=>({...e})),n=e.indentLeft,r=t.some(e=>e.pos===n&&zm(e.alignment));return(e.indentFirst<0&&!r?[{pos:n,alignment:`left`,leader:`none`},...t]:t).sort((e,t)=>e.pos-t.pos)}function O_(e,t){let{pitchPt:n,paragraphAllowsAdjustment:r}=e.rightIndentGrid;return!r||n==null?0:Rm(t,n)}Z({id:`word-default-line-number-distance`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/compatibility.test.ts#uses Word's observed 18pt line-number distance only when omitted`},description:`ECMA-376 §17.6.8 leaves an omitted line-number distance implementation-defined. Preserve Word-compatible 18pt placement only when the authored distance is absent.`}),Z({id:`word-continuous-section-page-number-restart`,evidence:{kind:`regression-test`,reference:`packages/docx/src/page-number-field-render.test.ts#restarts a spilling continuous section after its shared first page`},description:`Issue #804 records that Word anchors a continuous section page-number restart to the section first appearance on the shared physical page, so its next owned page advances from that appearance.`}),Z({id:`word-trailing-empty-mark-baseline-admission`,evidence:{kind:`regression-test`,reference:`packages/docx/src/paginate-trailing-empty-mark-fit.test.ts#KEEPS an inkless empty paragraph on the page when ink-bearing content follows and only its below-baseline whitespace overflows`},description:`At the unreserved physical body edge, Word admits an undecorated non-terminal empty paragraph mark by its baseline when later ink follows in the same flow.`}),Z({id:`word-section-mark-blank-page-suppression`,evidence:{kind:`office-observation`,syntheticFixtureId:`next-page-section-mark-bottom-edge-admission`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`For the observed nextPage boundary, Word consumes an undecorated inkless paragraph that carries the section boundary on the outgoing page instead of creating an otherwise empty intermediate page solely for that non-painting mark. The following section still starts its requested page. Other section-start kinds remain outside this observation.`}),Z({id:`word-book-fold-gutter-right-edge`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §§2.1.389, 2.1.391`},description:`For book-fold printing Word places the automatic gutter at the right-margin bisector edge, including reverse book-fold mode.`});function k_(e){return e??18}function A_(e,t,n){return e+t-n}function j_(e){return!e.hasContinuationBoundary&&e.inkless&&e.undecorated&&!e.keepNext&&e.markReservePt===0&&e.pageBottomIsUnreserved&&e.physicalRegionBottomIsActive?e.followsNextPageSectionBoundary?Math.max(0,e.markExtentPt):e.hasFollowingInk?e.markBelowBaselinePt:0:0}function M_(){return`right`}function N_(e){if(e.sectionOccurrenceId.length===0)throw RangeError(`Section occurrence id must not be empty`);if(e.columns.length===0)throw RangeError(`A page-flow section requires at least one column`);return Object.freeze({sectionOccurrenceId:e.sectionOccurrenceId,geometry:Object.freeze({...e.geometry}),columns:Object.freeze(e.columns.map(e=>Object.freeze({...e}))),textDirection:e.textDirection,sectionBidi:e.sectionBidi??!1,grid:Object.freeze(e.grid??{kind:`none`,linePitchPt:null,charSpacePt:null})})}function P_(e){return I_(e.geometry.marginTop)}function F_(e){return e.geometry.pageHeight-I_(e.geometry.marginBottom)}function I_(e){return Math.abs(e)}function L_(e){return{pageWidth:e.pageHeight,pageHeight:e.pageWidth,marginLeft:e.marginTop,marginTop:e.marginRight,marginRight:e.marginBottom,marginBottom:e.marginLeft,headerDistance:e.headerDistance,footerDistance:e.footerDistance}}function R_(e){return{pageWidth:e.pageHeight,pageHeight:e.pageWidth,marginTop:e.marginLeft,marginRight:e.marginTop,marginBottom:e.marginRight,marginLeft:e.marginBottom,headerDistance:e.headerDistance,footerDistance:e.footerDistance}}function z_(e){return e===`tbRl`||e===`tbRlV`||e===`tbLrV`||e===`btLr`}function B_(e,t){if(!Number.isInteger(t)||t<0)throw RangeError(`Physical page index must be a non-negative integer`);let{pageWidth:n,pageHeight:r}=e.physicalGeometry,{marginTop:i,marginRight:a,marginBottom:o,marginLeft:s}=e.physicalGeometry,c=e.bookFoldPrinting||e.bookFoldRevPrinting;return c?(n/=2,M_()===`right`&&(a+=e.gutterPt)):e.printTwoOnOne?(r/=2,i+=e.gutterPt):e.gutterAtTop&&!e.mirrorMargins?i+=e.gutterPt:e.rtlGutter?a+=e.gutterPt:s+=e.gutterPt,!c&&!e.printTwoOnOne&&e.mirrorMargins&&t%2==1&&([s,a]=[a,s]),{...e.physicalGeometry,pageWidth:n,pageHeight:r,marginTop:i,marginRight:a,marginBottom:o,marginLeft:s}}function V_(e,t,n){let r=B_(t,n),i=z_(t.textDirection)?L_(r):r;return Object.freeze({...e,geometry:Object.freeze(i),columns:Object.freeze(b_({...i,titlePage:!1,evenAndOddHeaders:!1,columns:t.columns}).map(e=>Object.freeze(e)))})}function H_(e){return{pageWidth:e.pageWidth,pageHeight:e.pageHeight,marginTop:e.marginTop,marginRight:e.marginRight,marginBottom:e.marginBottom,marginLeft:e.marginLeft,headerDistance:e.headerDistance,footerDistance:e.footerDistance}}function U_(){return{pageWidth:612,pageHeight:792,marginTop:72,marginRight:72,marginBottom:72,marginLeft:72,headerDistance:36,footerDistance:36}}function W_(e,t=!1){let n=e.docGridType===`lines`||e.docGridType===`linesAndChars`||e.docGridType===`snapToChars`?e.docGridType:`none`;return Object.freeze({geometry:Object.freeze(H_(e)),columns:Object.freeze(b_(e).map(e=>Object.freeze(e))),columnSeparator:e.columns?.sep===!0,grid:Object.freeze({kind:n,linePitchPt:e.docGridLinePitch??null,charSpacePt:e.docGridCharSpace==null?null:e.docGridCharSpace/4096}),textDirection:e.textDirection??`lrTb`,sectionBidi:t,verticalAlignment:e.vAlign??`top`,...e.lineNumbering===null||e.lineNumbering===void 0?{}:{lineNumbering:Object.freeze({...e.lineNumbering})}})}function G_(e,t){switch(e.display){case`firstPage`:return t;case`notFirstPage`:return!t;default:return!0}}function K_(e){return e!==void 0&&/^[0-9a-fA-F]{6}$/.test(e)?`#${e}`:`#000000`}function q_(e){return e!==void 0&&Number.isFinite(e.space)?e.space:0}function J_(e,t,n,r){let i=Number.isFinite(e.width)?e.width:.5;return Object.freeze({edge:t,from:Object.freeze(n),to:Object.freeze(r),color:K_(e.color),widthPt:i,...Cf(e.style,i)})}function Y_(e,t,n,r){if(!e||!G_(e,r))return null;let{geometry:i}=t,a=e.offsetFrom===`text`,o=a?i.marginLeft:0,s=a?i.pageWidth-i.marginRight:i.pageWidth,c=a?I_(i.marginTop):0,l=a?i.pageHeight-I_(i.marginBottom):i.pageHeight,u=c+q_(e.top),d=l-q_(e.bottom),f=o+q_(e.left),p=s-q_(e.right),m=[];if(e.top&&m.push(J_(e.top,`top`,{xPt:f,yPt:u},{xPt:p,yPt:u})),e.bottom&&m.push(J_(e.bottom,`bottom`,{xPt:f,yPt:d},{xPt:p,yPt:d})),e.left&&m.push(J_(e.left,`left`,{xPt:f,yPt:u},{xPt:f,yPt:d})),e.right&&m.push(J_(e.right,`right`,{xPt:p,yPt:u},{xPt:p,yPt:d})),m.length===0)return null;let h=bf(cf(t.textDirection),n);return Object.freeze({zOrder:e.zOrder===`back`?`back`:`front`,logicalToPhysical:Object.freeze({...h.logicalToPhysical}),segments:Object.freeze(m)})}function X_(e,t,n){return`page:${e}:region:${encodeURIComponent(t)}:column:${n}`}function Z_(e){return Q_(e),{xPt:0,yPt:0,widthPt:e.widthPt,heightPt:e.heightPt,contentTopPt:e.contentTopPt,contentBottomPt:e.contentBottomPt}}function Q_(e){if(!Number.isFinite(e.widthPt)||!Number.isFinite(e.heightPt)||!Number.isFinite(e.contentTopPt)||!Number.isFinite(e.contentBottomPt)||e.widthPt<=0||e.heightPt<=0||e.contentTopPt<0||e.contentTopPt>e.contentBottomPt||e.contentBottomPt>e.heightPt)throw RangeError(`Effective page edges must satisfy 0 <= contentTopPt <= contentBottomPt <= heightPt`)}function $_(e,t){if(e.length===0)throw RangeError(`${t} must not be empty`)}function ev(e,t){if(e&&t===void 0)throw RangeError(`Page-border finalization requires explicit section-owned page identity`);return t??!1}function tv(e,t){return e.length===t.length&&e.every((e,n)=>{let r=t[n];return r!==void 0&&e.xPt===r.xPt&&e.wPt===r.wPt})}function nv(e,t){return e===t||e!==void 0&&t!==void 0&&e.start===t.start&&e.countBy===t.countBy&&e.distance===t.distance&&e.restart===t.restart}function rv(e,t){return e.geometry.pageWidth===t.geometry.pageWidth&&e.geometry.pageHeight===t.geometry.pageHeight&&e.geometry.marginTop===t.geometry.marginTop&&e.geometry.marginRight===t.geometry.marginRight&&e.geometry.marginBottom===t.geometry.marginBottom&&e.geometry.marginLeft===t.geometry.marginLeft&&e.geometry.headerDistance===t.geometry.headerDistance&&e.geometry.footerDistance===t.geometry.footerDistance&&tv(e.columns,t.columns)&&e.columnSeparator===t.columnSeparator&&e.textDirection===t.textDirection&&e.sectionBidi===!0==(t.sectionBidi===!0)&&e.grid.kind===t.grid.kind&&e.grid.linePitchPt===t.grid.linePitchPt&&e.grid.charSpacePt===t.grid.charSpacePt&&e.verticalAlignment===t.verticalAlignment&&nv(e.lineNumbering,t.lineNumbering)}function iv(e){if(cf(e.section.textDirection)!==e.writingMode)throw RangeError(`Section region writing mode must agree with its section text direction`);let t=e.section.sectionBidi===!0?`rtl`:`ltr`;if(e.columnFlowDirection!==void 0&&e.columnFlowDirection!==t)throw RangeError(`Section region column flow direction must agree with sectPr bidi`);let n=e.columnIndexes??e.section.columns.map((e,t)=>t);if(e.columns.length!==n.length||n.some((t,r)=>!Number.isInteger(t)||t<0||t>=e.section.columns.length||r>0&&t<=n[r-1])||e.columns.some((t,r)=>{let i=e.section.columns[n[r]];return i===void 0||t.inlineStartPt!==i.xPt||t.inlineExtentPt!==i.wPt}))throw RangeError(`Section region columns must equal its normalized section columns`)}function av(e){if(!Number.isInteger(e)||e<0)throw RangeError(`Layout page index must be a non-negative integer`)}function ov(e,t,n){let r=[],i=[],a=new Map,o=new Set,s=new Set,c,l=[];for(let u of n){if($_(u.id,`Section region id`),$_(u.sectionOccurrenceId,`Section occurrence id`),o.has(u.id)||s.has(u.sectionOccurrenceId))throw RangeError(`Section region and occurrence identities must be unique`);if(o.add(u.id),s.add(u.sectionOccurrenceId),c!==void 0&&c!==u.writingMode)throw RangeError(`One physical page cannot mix writing modes`);c=u.writingMode,iv(u);let n=mf({widthPt:u.section.geometry.pageWidth,heightPt:u.section.geometry.pageHeight},u.writingMode);if(n.widthPt!==t.widthPt||n.heightPt!==t.heightPt)throw RangeError(`Section regions on one physical page must use the same page box: expected ${n.widthPt}x${n.heightPt}, got ${t.widthPt}x${t.heightPt}`);let d=pf(t,u.writingMode),f=d.widthPt,p=d.heightPt;if(!Number.isFinite(u.blockStartPt)||!Number.isFinite(u.blockEndPt)||u.blockStartPt<0||u.blockEndPt<u.blockStartPt||u.blockEndPt>p)throw RangeError(`Section regions must be inside the logical page`);if(u.columns.length===0)throw RangeError(`Section region must contain a column`);let m=u.columnIndexes??u.section.columns.map((e,t)=>t),h=0,g=bf(u.writingMode,t),_=u.columns.map((t,n)=>{let r=m[n];if(!Number.isFinite(t.inlineStartPt)||!Number.isFinite(t.inlineExtentPt)||t.inlineStartPt<0||t.inlineExtentPt<=0||t.inlineStartPt+t.inlineExtentPt>f||t.inlineStartPt<h)throw RangeError(`Columns must be ordered, disjoint, and inside the logical page`);h=t.inlineStartPt+t.inlineExtentPt;let o=X_(e,u.id,r);if(a.has(o))throw RangeError(`Duplicate flow domain ${o}`);let s={xPt:t.inlineStartPt,yPt:u.blockStartPt,widthPt:t.inlineExtentPt,heightPt:u.blockEndPt-u.blockStartPt},c=vf(g.logicalToPhysical,s);if(l.some(e=>c.xPt<e.xPt+e.widthPt&&e.xPt<c.xPt+c.widthPt&&c.yPt<e.yPt+e.heightPt&&e.yPt<c.yPt+c.heightPt))throw RangeError(`Section flow domains on one page must be physically disjoint`);return l.push(c),i.push({id:o,kind:`body`,logicalBounds:s,physicalBounds:c}),a.set(o,u.sectionOccurrenceId),o});r.push({id:u.id,sectionOccurrenceId:u.sectionOccurrenceId,coordinateSpace:g,blockStartPt:u.blockStartPt,blockEndPt:u.blockEndPt,columnFlowDirection:u.columnFlowDirection??(u.section.sectionBidi===!0?`rtl`:`ltr`),columnIndexes:Object.freeze([...m]),flowDomainIds:_,section:u.section})}return{regions:r,domains:i,sectionByDomain:a}}function sv(e,t){if(e.kind===`paragraph`){t(e),e.drawings.forEach(e=>sv(e,t)),e.textBoxes.forEach(e=>sv(e,t));return}if(e.kind===`table`){cv(e,t);return}e.kind===`textbox`&&lv(e,t)}function cv(e,t){for(let n of e.rows)for(let e of n.cells)for(let n of e.blocks)sv(n.layout,t)}function lv(e,t){e.story.blocks.forEach(e=>sv(e,t))}function uv(e,t,n){let r=[],i=new Set;for(let a of e){let e=n.get(a.flowDomainId)??t;sv(a,t=>{for(let n of t.bookmarkStarts??[])!n||i.has(n)||(i.add(n),r.push({name:n,nodeId:t.id,sectionOccurrenceId:e}))})}return r}function dv(e){let t=e.sectionRegions??[],n=new Map(t.map(e=>[e.id,e])),r=new Map;for(let e of t)for(let t of e.flowDomainIds)r.set(t,e.sectionOccurrenceId);for(let i of e.flowDomains){if(i.kind!==`footnote`&&i.kind!==`endnote`)continue;let e=i.sectionRegionId?n.get(i.sectionRegionId):t[0];e&&r.set(i.id,e.sectionOccurrenceId)}return r}function fv(e,t=dv(e)){return uv(Jd(e),e.sectionOccurrenceId??``,t)}function pv(e){return e.parityBlank?e:Object.freeze({...e,bookmarkStarts:Object.freeze([...fv(e)])})}function mv(e){av(e.pageIndex),$_(e.sectionOccurrenceId,`Page-start section occurrence id`);let{regions:t,domains:n,sectionByDomain:r}=ov(e.pageIndex,e.physicalPage,e.sectionRegions),i=e.sectionRegions[0],a=i?.pageBorders??e.pageBorders;if(i!==void 0&&(e.sectionOccurrenceId!==i.sectionOccurrenceId||!rv(e.section,i.section)))throw RangeError(`Page-start section context must equal the first section region`);return{pageIndex:e.pageIndex,geometry:Z_(e.physicalPage),flowDomains:n,section:e.section,sectionOccurrenceId:e.sectionOccurrenceId,parityBlank:!1,bookmarkStarts:uv(e.paint.map(({node:e})=>e),e.sectionOccurrenceId,r),pageNumber:e.pageNumber,sectionRegions:t,columnSeparators:Sf(t),pageBorder:Y_(a,e.section,e.physicalPage,ev(a,e.firstSectionOwnedPage)),layers:Gd(e.paint),readingOrder:e.readingOrder.map(e=>e.id)}}function hv(e){return av(e.pageIndex),$_(e.sectionOccurrenceId,`Page-start section occurrence id`),Q_(e.physicalPage),Object.freeze({...e,sectionRegions:Object.freeze([]),paint:Object.freeze([]),readingOrder:Object.freeze([])})}function gv(e,t){return Object.freeze({...e,sectionRegions:Object.freeze([...e.sectionRegions,t])})}function _v(e,t,n){return Object.freeze({...e,paint:Object.freeze([...e.paint,t]),readingOrder:n?Object.freeze([...e.readingOrder,t.node]):e.readingOrder})}function vv(e,t,n){return mv({...e,pageNumber:t,firstSectionOwnedPage:n})}function yv(e){return av(e.pageIndex),$_(e.sectionOccurrenceId,`Page-start section occurrence id`),{pageIndex:e.pageIndex,geometry:Z_(e.physicalPage),flowDomains:[],section:e.section,sectionOccurrenceId:e.sectionOccurrenceId,parityBlank:!0,bookmarkStarts:[],pageNumber:e.pageNumber,sectionRegions:[],columnSeparators:[],pageBorder:Y_(e.pageBorders,e.section,e.physicalPage,ev(e.pageBorders,e.firstSectionOwnedPage)),layers:Gd([]),readingOrder:[]}}function bv(e){if(e.length===0)return null;let t=Math.min(...e.map(e=>e.xPt)),n=Math.min(...e.map(e=>e.yPt)),r=Math.max(...e.map(e=>e.xPt+e.widthPt)),i=Math.max(...e.map(e=>e.yPt+e.heightPt));return{xPt:t,yPt:n,widthPt:r-t,heightPt:i-n}}const xv={FLOW_OVERLAP:!0,BOTTOM_MARGIN_INVASION:!0,FLOW_DOMAIN_INVASION:!0,INVALID_REFERENCE:!0,INVALID_GEOMETRY:!0,INVALID_VALUE:!0,MISSING_RESOURCE:!0,NON_CONVERGENCE:!0,UNSUPPORTED_FEATURE:!0},Sv={body:!0,header:!0,footer:!0,footnote:!0,endnote:!0,textbox:!0},Cv=new Set(Object.keys(xv)),wv=new Set(Object.keys(Sv));function Tv(e,t,n=new WeakSet){if(!(e===null||typeof e==`string`||typeof e==`boolean`)){if(typeof e==`number`){if(!Number.isFinite(e))throw new Y(`INVALID_GEOMETRY`,`${t} is not finite`);return}if(typeof e!=`object`)throw new Y(`INVALID_GEOMETRY`,`${t} contains ${typeof e}`);if(n.has(e))throw new Y(`INVALID_GEOMETRY`,`${t} contains a cycle`);n.add(e);try{if(Array.isArray(e)){let r=0;for(let i of Reflect.ownKeys(e)){if(i===`length`)continue;if(typeof i!=`string`)throw new Y(`INVALID_GEOMETRY`,`${t} has a symbol key`);let a=Number(i);if(!Number.isInteger(a)||a<0||String(a)!==i||a>=e.length)throw new Y(`INVALID_GEOMETRY`,`${t}.${i} is not an array index`);let o=Object.getOwnPropertyDescriptor(e,i);if(!o?.enumerable||!(`value`in o))throw new Y(`INVALID_GEOMETRY`,`${t}[${i}] is not plain data`);Tv(o.value,`${t}[${i}]`,n),r+=1}if(r!==e.length)throw new Y(`INVALID_GEOMETRY`,`${t} is sparse`);return}let r=Object.getPrototypeOf(e);if(r!==Object.prototype&&r!==null)throw new Y(`INVALID_GEOMETRY`,`${t} is not a plain record`);for(let r of Reflect.ownKeys(e)){if(typeof r!=`string`)throw new Y(`INVALID_GEOMETRY`,`${t} has a symbol key`);let i=Object.getOwnPropertyDescriptor(e,r);if(!i?.enumerable||!(`value`in i))throw new Y(`INVALID_GEOMETRY`,`${t}.${r} is not plain data`);Tv(i.value,`${t}.${r}`,n)}}finally{n.delete(e)}}}function Ev(e,t){if(!Number.isFinite(e))throw new Y(`INVALID_GEOMETRY`,`${t} is not finite`)}function Dv(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Ov(e,t){if(!Dv(e))throw new Y(`INVALID_GEOMETRY`,`${t} is not a point`);Ev(e.xPt,`${t}.xPt`),Ev(e.yPt,`${t}.yPt`)}function kv(e,t){if(Ov(e,t),Ev(e.widthPt,`${t}.widthPt`),Ev(e.heightPt,`${t}.heightPt`),e.widthPt<0||e.heightPt<0)throw new Y(`INVALID_GEOMETRY`,`${t} has a negative extent`)}function Av(e,t){if(!Dv(e))throw new Y(`INVALID_GEOMETRY`,`${t} is not a matrix`);for(let n of[`a`,`b`,`c`,`d`,`e`,`f`])Ev(e[n],`${t}.${n}`)}function jv(e,t){if(e!==`horizontal-tb`&&e!==`vertical-rl`&&e!==`vertical-lr`)throw new Y(`INVALID_GEOMETRY`,`${t} is unsupported`)}function Mv(e,t){if(!Dv(e))throw new Y(`INVALID_GEOMETRY`,`${t} is not a coordinate space`);jv(e.writingMode,`${t}.writingMode`),Av(e.logicalToPhysical,`${t}.logicalToPhysical`),Av(e.physicalToLogical,`${t}.physicalToLogical`)}function Nv(e,t){let{plan:n}=e;if(Tv(n,`${t}.plan`),Ev(n.rect.x,`${t}.plan.rect.x`),Ev(n.rect.y,`${t}.plan.rect.y`),Ev(n.rect.w,`${t}.plan.rect.w`),Ev(n.rect.h,`${t}.plan.rect.h`),n.rect.w<0||n.rect.h<0)throw new Y(`INVALID_GEOMETRY`,`${t}.plan.rect has a negative extent`);if(Ev(n.transform.rotationDeg,`${t}.plan.transform.rotationDeg`),n.geometry.kind===`preset`){if(n.geometry.name.length===0)throw new Y(`INVALID_GEOMETRY`,`${t}.plan.geometry.name is empty`);n.geometry.adjustments.forEach((e,n)=>{e!==null&&Ev(e,`${t}.plan.geometry.adjustments[${n}]`)})}else n.geometry.subpaths.forEach((e,n)=>{e.forEach((e,r)=>{if(e.cmd.length===0)throw new Y(`INVALID_GEOMETRY`,`${t}.plan.geometry.subpaths[${n}][${r}].cmd is empty`)})});if(n.stroke&&(Ev(n.stroke.width,`${t}.plan.stroke.width`),n.stroke.width<0))throw new Y(`INVALID_GEOMETRY`,`${t}.plan.stroke.width is negative`)}function Pv(e,t){if(e<=t)return!0;let n=2**-52*Math.max(1,Math.abs(e),Math.abs(t));return e-t<=n}function Fv(e,t){return e<t&&!Pv(t,e)}function Iv(e,t){return Fv(e.xPt,t.xPt+t.widthPt)&&Fv(t.xPt,e.xPt+e.widthPt)&&Fv(e.yPt,t.yPt+t.heightPt)&&Fv(t.yPt,e.yPt+e.heightPt)}function Lv(e,t){return Pv(e.xPt,t.xPt)&&Pv(e.yPt,t.yPt)&&Pv(t.xPt+t.widthPt,e.xPt+e.widthPt)&&Pv(t.yPt+t.heightPt,e.yPt+e.heightPt)}function Rv(e,t){return Pv(e.xPt,t.xPt)&&Pv(t.xPt+t.widthPt,e.xPt+e.widthPt)}function zv(e,t,n){return Pv(e,n.yPt)&&Pv(n.yPt+n.heightPt,t)}function Bv(e,t){return Pv(e.yPt,t.yPt)&&Pv(t.yPt+t.heightPt,e.yPt+e.heightPt)}function Vv(e,t){return e.xPt===t.xPt&&e.yPt===t.yPt&&e.widthPt===t.widthPt&&e.heightPt===t.heightPt}function Hv(e,t){return e.a===t.a&&e.b===t.b&&e.c===t.c&&e.d===t.d&&e.e===t.e&&e.f===t.f}function Uv(e,t){let n=e.pageBorder;if(n===null)return;if(n.zOrder!==`front`&&n.zOrder!==`back`)throw new Y(`INVALID_REFERENCE`,`${t}.zOrder is invalid`);Av(n.logicalToPhysical,`${t}.logicalToPhysical`);let r=bf(cf(e.section.textDirection),e.geometry).logicalToPhysical;if(!Hv(n.logicalToPhysical,r))throw new Y(`INVALID_GEOMETRY`,`${t}.logicalToPhysical contradicts the page-start section`);if(!Array.isArray(n.segments)||n.segments.length===0)throw new Y(`INVALID_GEOMETRY`,`${t}.segments is empty`);n.segments.forEach((e,n)=>{let r=`${t}.segments[${n}]`;if(Ov(e.from,`${r}.from`),Ov(e.to,`${r}.to`),Ev(e.widthPt,`${r}.widthPt`),e.from.xPt!==e.to.xPt&&e.from.yPt!==e.to.yPt)throw new Y(`INVALID_GEOMETRY`,`${r} is not an axis-aligned page edge`);if(!/^#[0-9a-fA-F]{6}$/.test(e.color))throw new Y(`INVALID_REFERENCE`,`${r}.color is invalid`)})}function Wv(e,t,n){if(n.has(e))throw new Y(`INVALID_REFERENCE`,`duplicate retained node id ${e}`);n.add(e),t.add(e)}function Gv(e,t,n){if(Wv(e.id,t,n),e.kind===`paragraph`){e.drawings.forEach(e=>Gv(e,t,n)),e.textBoxes.forEach(e=>Gv(e,t,n));return}if(e.kind===`table`){e.rows.forEach(e=>{Wv(e.id,t,n),e.cells.forEach(e=>{Wv(e.id,t,n),e.blocks.forEach(e=>Gv(e.layout,t,n))})});return}if(e.kind===`note`){e.story.blocks.forEach(e=>Gv(e,t,n));return}e.kind===`textbox`&&e.story.blocks.forEach(e=>Gv(e,t,n))}function Kv(e,t){if(e.kind===`paragraph`){let n=bv(e.drawings.filter(e=>e.anchorLayer?.cellContainment===!0).map(e=>e.flowBounds));if(e.cellContainmentBounds&&kv(e.cellContainmentBounds,`${t}.cellContainmentBounds`),n===null!=(e.cellContainmentBounds===void 0)||n&&e.cellContainmentBounds&&!Vv(n,e.cellContainmentBounds))throw new Y(`INVALID_GEOMETRY`,`${t}.cellContainmentBounds does not match its retained layoutInCell drawings`);let r=new Set;(e.anchorCollisions??[]).forEach((e,n)=>{let i=`${t}.anchorCollisions[${n}]`;if(e.occurrenceId.length===0||r.has(e.occurrenceId))throw new Y(`INVALID_REFERENCE`,`${i}.occurrenceId is empty or duplicated`);if(r.add(e.occurrenceId),kv(e.bounds,`${i}.bounds`),e.horizontalOwnership!==`page`&&e.horizontalOwnership!==`host`||e.verticalOwnership!==`page`&&e.verticalOwnership!==`host`)throw new Y(`INVALID_REFERENCE`,`${i} has invalid axis ownership`)}),e.textBoxes.forEach((e,n)=>Kv(e,`${t}.textBoxes[${n}]`));return}if(e.kind===`table`){e.rows.forEach((e,n)=>e.cells.forEach((e,r)=>e.blocks.forEach((e,i)=>Kv(e.layout,`${t}.rows[${n}].cells[${r}].blocks[${i}]`))));return}e.kind===`textbox`&&e.story.blocks.forEach((e,n)=>Kv(e,`${t}.story.blocks[${n}]`))}function qv(e,t){if(e.orientation===`upright-physical`&&!e.transform)throw new Y(`INVALID_GEOMETRY`,`${t} upright physical drawing is missing its logical transform`);if(e.transform)for(let n of[`a`,`b`,`c`,`d`,`e`,`f`])Ev(e.transform[n],`${t}.transform.${n}`);e.clip?.kind===`rect`&&kv(e.clip.rect,`${t}.clip.rect`),e.clip?.kind===`polygon`&&e.clip.points.forEach((e,n)=>Ov(e,`${t}.clip.points[${n}]`)),e.commands.forEach((e,n)=>{let r=`${t}.commands[${n}]`;if(e.kind!==`noop`){if(e.kind===`drawingml-shape`){Nv(e,r);return}if(e.kind===`drawingml-image-fill`){if(Nv(e,r),e.resourceKey.length===0)throw new Y(`INVALID_GEOMETRY`,`${r}.resourceKey is empty`);if(e.fillRect)for(let t of[`l`,`t`,`r`,`b`])Ev(e.fillRect[t],`${r}.fillRect.${t}`);return}if(kv(e.rect,`${r}.rect`),e.kind===`stroke-rect`&&(Ev(e.lineWidthPt,`${r}.lineWidthPt`),e.dashPt.forEach((e,t)=>Ev(e,`${r}.dashPt[${t}]`))),e.kind===`text`&&(Ev(e.fontSizePt,`${r}.fontSizePt`),Ev(e.fontWeight,`${r}.fontWeight`)),e.kind===`watermark-text`){if(kv(e.sourceBounds,`${r}.sourceBounds`),e.sourceBounds.widthPt<=0||e.sourceBounds.heightPt<=0)throw new Y(`INVALID_GEOMETRY`,`${r}.sourceBounds must have positive extents`);if(Ev(e.opacity,`${r}.opacity`),Ev(e.rotationDeg,`${r}.rotationDeg`),Ev(e.fontSizePt,`${r}.fontSizePt`),e.opacity<0||e.opacity>1||e.fontSizePt<=0)throw new Y(`INVALID_GEOMETRY`,`${r} has invalid textPath paint metrics`);e.spans.forEach((e,t)=>{Ev(e.advancePt,`${r}.spans[${t}].advancePt`),Ev(e.fontWeight,`${r}.spans[${t}].fontWeight`)})}}})}function Jv(e){Tv(e,`layout`),e.diagnostics.forEach((e,t)=>{let n=`diagnostics[${t}]`;if(!Cv.has(e.code))throw new Y(`INVALID_REFERENCE`,`${n}.code is unknown`);if(e.severity!==`warning`&&e.severity!==`error`)throw new Y(`INVALID_REFERENCE`,`${n}.severity is unknown`);if(typeof e.message!=`string`||e.message.length===0)throw new Y(`INVALID_REFERENCE`,`${n}.message is empty`);if(e.source!==void 0&&(!wv.has(e.source.story)||typeof e.source.storyInstance!=`string`||e.source.storyInstance.length===0||!Array.isArray(e.source.path)||e.source.path.some(e=>!Number.isSafeInteger(e)||e<0)))throw new Y(`INVALID_REFERENCE`,`${n}.source is invalid`)});let t=new Set;e.pages.forEach((e,n)=>{if(!Number.isInteger(e.pageIndex)||e.pageIndex!==n)throw new Y(`INVALID_REFERENCE`,`pages[${n}] has invalid page index ${e.pageIndex}`);if(kv(e.geometry,`pages[${n}].geometry`),Ev(e.geometry.contentTopPt,`pages[${n}].geometry.contentTopPt`),Ev(e.geometry.contentBottomPt,`pages[${n}].geometry.contentBottomPt`),e.geometry.widthPt<=0||e.geometry.heightPt<=0||e.geometry.contentTopPt<0||e.geometry.contentTopPt>e.geometry.contentBottomPt||e.geometry.contentBottomPt>e.geometry.heightPt)throw new Y(`INVALID_GEOMETRY`,`pages[${n}] has invalid effective page edges`);Uv(e,`pages[${n}].pageBorder`);let r=new Map;if(e.flowDomains.forEach((e,t)=>{if(kv(e.logicalBounds,`pages[${n}].flowDomains[${t}].logicalBounds`),kv(e.physicalBounds,`pages[${n}].flowDomains[${t}].physicalBounds`),r.has(e.id))throw new Y(`INVALID_REFERENCE`,`duplicate flow domain ${e.id}`);r.set(e.id,e)}),e.parityBlank&&(e.flowDomains.length>0||(e.sectionRegions?.length??0)>0||(e.columnSeparators?.length??0)>0||qd(e).length>0||e.layers.roots.length>0||e.readingOrder.length>0||(e.bookmarkStarts?.length??0)>0))throw new Y(`INVALID_REFERENCE`,`pages[${n}] parity blank retains page content`);let i=new Set;if(e.sectionOccurrenceId!==void 0){if(e.sectionOccurrenceId.length===0)throw new Y(`INVALID_REFERENCE`,`pages[${n}] has an empty section occurrence id`);i.add(e.sectionOccurrenceId)}let a=new Map;if(e.sectionRegions){let t=new Set,o=new Set,s=new Map,c=[],l;if(e.sectionRegions.forEach((u,d)=>{let f=`pages[${n}].sectionRegions[${d}]`;if(u.id.length===0||t.has(u.id))throw new Y(`INVALID_REFERENCE`,`${f} has an invalid region id`);if(t.add(u.id),u.sectionOccurrenceId.length===0)throw new Y(`INVALID_REFERENCE`,`${f} has an empty section occurrence id`);if(o.has(u.sectionOccurrenceId))throw new Y(`INVALID_REFERENCE`,`${f} has a duplicate section occurrence id`);o.add(u.sectionOccurrenceId),i.add(u.sectionOccurrenceId),Mv(u.coordinateSpace,`${f}.coordinateSpace`);let p=u.coordinateSpace.writingMode;if(l!==void 0&&l!==p)throw new Y(`INVALID_GEOMETRY`,`${f} mixes coordinate systems on one physical page`);l=p;let m;try{m=cf(u.section.textDirection)}catch(e){throw new Y(`INVALID_GEOMETRY`,`${f}.section.textDirection is unsupported: ${e.message}`)}if(p!==m)throw new Y(`INVALID_GEOMETRY`,`${f} writing mode contradicts its section text direction`);let h=pf(e.geometry,p),g=mf({widthPt:u.section.geometry.pageWidth,heightPt:u.section.geometry.pageHeight},p);if(g.widthPt!==e.geometry.widthPt||g.heightPt!==e.geometry.heightPt)throw new Y(`INVALID_GEOMETRY`,`${f} section geometry does not match the upright physical page`);if(Ev(u.blockStartPt,`${f}.blockStartPt`),Ev(u.blockEndPt,`${f}.blockEndPt`),u.columnFlowDirection!==`ltr`&&u.columnFlowDirection!==`rtl`)throw new Y(`INVALID_GEOMETRY`,`${f} has an invalid column flow direction`);let _=u.section.sectionBidi===!0?`rtl`:`ltr`;if(u.columnFlowDirection!==_)throw new Y(`INVALID_GEOMETRY`,`${f} column flow direction contradicts its section bidi`);if(u.blockStartPt<0||u.blockEndPt<u.blockStartPt||u.blockEndPt>h.heightPt)throw new Y(`INVALID_GEOMETRY`,`${f} has an invalid block interval`);let v=bf(u.coordinateSpace.writingMode,e.geometry);if(!Hv(u.coordinateSpace.logicalToPhysical,v.logicalToPhysical)||!Hv(u.coordinateSpace.physicalToLogical,v.physicalToLogical))throw new Y(`INVALID_GEOMETRY`,`${f} has an invalid coordinate transform`);let y=u.columnIndexes;if(u.flowDomainIds.length!==y.length||y.some((e,t)=>!Number.isInteger(e)||e<0||e>=u.section.columns.length||t>0&&e<=y[t-1]))throw new Y(`INVALID_GEOMETRY`,`${f} columns contradict its section`);let b=0;u.flowDomainIds.forEach((t,n)=>{let i=r.get(t);if(!i)throw new Y(`INVALID_REFERENCE`,`${f} references missing flow domain ${t}`);if(i.kind!==`body`)throw new Y(`INVALID_REFERENCE`,`${f} owns non-body flow domain ${t}`);s.set(t,(s.get(t)??0)+1),a.set(t,u);let o=i.logicalBounds,l=u.section.columns[y[n]];if(o.widthPt<=0||o.heightPt<0||o.yPt!==u.blockStartPt||o.heightPt!==u.blockEndPt-u.blockStartPt||o.xPt<0||o.xPt<b||o.xPt+o.widthPt>h.widthPt||l===void 0||o.xPt!==l.xPt||o.widthPt!==l.wPt)throw new Y(`INVALID_GEOMETRY`,`${t} is not the section column's non-negative logical region`);if(b=o.xPt+o.widthPt,!Vv(vf(u.coordinateSpace.logicalToPhysical,i.logicalBounds),i.physicalBounds))throw new Y(`INVALID_GEOMETRY`,`${t} physical bounds do not match its section region transform`);if(!Lv(e.geometry,i.physicalBounds))throw new Y(`INVALID_GEOMETRY`,`${t} physical bounds leave the upright physical page`);if(c.some(e=>e.regionId!==u.id&&Iv(e.bounds,i.physicalBounds)))throw new Y(`INVALID_GEOMETRY`,`${t} overlaps a body flow domain owned by another section region`);c.push({regionId:u.id,bounds:i.physicalBounds})})}),e.flowDomains.filter(e=>e.kind===`body`).forEach(e=>{if(s.get(e.id)!==1)throw new Y(`INVALID_REFERENCE`,`${e.id} has invalid section region ownership`)}),!e.parityBlank&&e.sectionRegions.length>0){let t=e.sectionRegions[0];if(e.sectionOccurrenceId!==t.sectionOccurrenceId)throw new Y(`INVALID_REFERENCE`,`pages[${n}] page-start section occurrence does not match its first region`);if(!rv(e.section,t.section))throw new Y(`INVALID_GEOMETRY`,`pages[${n}] page-start section facts do not match its first region`)}}let o=Sf(e.sectionRegions??[]);if(!Array.isArray(e.columnSeparators)||e.columnSeparators.length!==o.length||e.columnSeparators.some((e,t)=>{let n=o[t];return n===void 0||e.start.xPt!==n.start.xPt||e.start.yPt!==n.start.yPt||e.end.xPt!==n.end.xPt||e.end.yPt!==n.end.yPt}))throw new Y(`INVALID_GEOMETRY`,`pages[${n}].columnSeparators contradict the retained section regions`);let s=new Map(e.sectionRegions.map(e=>[e.id,e]));for(let t of e.flowDomains){if(t.kind!==`footnote`&&t.kind!==`endnote`)continue;let n=t.sectionRegionId?s.get(t.sectionRegionId):e.sectionRegions[0];if(!n)throw new Y(`INVALID_REFERENCE`,`${t.id} references missing page story region ${t.sectionRegionId??`<default>`}`);if(!Vv(vf(n.coordinateSpace.logicalToPhysical,t.logicalBounds),t.physicalBounds))throw new Y(`INVALID_GEOMETRY`,`${t.id} physical bounds do not match the page story transform`);a.set(t.id,n)}for(let t of e.flowDomains)if(!a.has(t.id)&&!Vv(t.logicalBounds,t.physicalBounds))throw new Y(`INVALID_GEOMETRY`,`${t.id} has unequal logical and physical bounds without a section region`);if(e.pageNumber){if(Ev(e.pageNumber.displayNumber,`pages[${n}].pageNumber.displayNumber`),!Number.isInteger(e.pageNumber.displayNumber))throw new Y(`INVALID_GEOMETRY`,`pages[${n}] page number is not an integer`);if(e.pageNumber.format.length===0||!i.has(e.pageNumber.sectionOccurrenceId))throw new Y(`INVALID_REFERENCE`,`pages[${n}] has an invalid page number section owner`)}let c=[];try{Jd(e)}catch(e){throw e instanceof Wd?new Y(`INVALID_REFERENCE`,e.message):e}let l=new Map,u=new Set;qd(e).forEach(({node:e},i)=>{let o=`pages[${n}].nodes[${i}]`;l.set(e.id,e),Gv(e,u,t),Kv(e,o),kv(e.flowBounds,`${o}.flowBounds`),kv(e.inkBounds,`${o}.inkBounds`),e.clipBounds&&kv(e.clipBounds,`${o}.clipBounds`),Ev(e.advancePt,`${o}.advancePt`),e.kind===`drawing`&&qv(e,o);let s=r.get(e.flowDomainId);if(!s)throw new Y(`INVALID_REFERENCE`,`${e.id} references missing flow domain ${e.flowDomainId}`);if(e.ordinaryFlow&&s.kind===`body`&&s.logicalBounds.heightPt===0)throw new Y(`FLOW_DOMAIN_INVASION`,`${e.id} claims ordinary flow in an empty body domain`);if(!e.ordinaryFlow)return;let d=s.kind===`body`?a.get(s.id):void 0;if(s.kind===`body`){if(!d)throw new Y(`INVALID_REFERENCE`,`${e.id} references a body flow domain without a section region`);if(e.flowBounds.yPt+e.flowBounds.heightPt>d.blockEndPt)throw new Y(`BOTTOM_MARGIN_INVASION`,`${e.id} crosses logical block end`)}if(!(d?zv(d.blockStartPt,d.blockEndPt,e.flowBounds)&&(e.kind===`table`||Rv(s.logicalBounds,e.flowBounds)):e.kind===`table`?Bv(s.logicalBounds,e.flowBounds):Lv(s.logicalBounds,e.flowBounds)))throw new Y(`FLOW_DOMAIN_INVASION`,`${e.id} crosses flow domain ${s.id}`);c.push(e)});let d=new Set;if(e.readingOrder.forEach(e=>{if(!l.has(e)||d.has(e))throw new Y(`INVALID_REFERENCE`,`invalid reading-order reference ${e}`);d.add(e)}),e.bookmarkStarts!==void 0){let t=fv(e,new Map([...a].map(([e,t])=>[e,t.sectionOccurrenceId]))),r=t.every(e=>e.sectionOccurrenceId.length>0&&i.has(e.sectionOccurrenceId)),o=e.bookmarkStarts.length===t.length&&e.bookmarkStarts.every((e,n)=>{let r=t[n];return r!==void 0&&e.name===r.name&&e.nodeId===r.nodeId&&e.sectionOccurrenceId===r.sectionOccurrenceId});if(!r||!o)throw new Y(`INVALID_REFERENCE`,`pages[${n}] bookmark metadata does not match its retained graph (invalid bookmark node or ownership)`)}for(let e=0;e<c.length;e+=1)for(let t=e+1;t<c.length;t+=1){let n=c[e],i=c[t];if(!n||!i)continue;let a=r.get(n.flowDomainId),o=r.get(i.flowDomainId),s=n.flowDomainId===i.flowDomainId,l=a?.kind===`body`&&(o?.kind===`footnote`||o?.kind===`endnote`)||o?.kind===`body`&&(a?.kind===`footnote`||a?.kind===`endnote`),u=a?.id!==o?.id&&(a?.kind===`footnote`||a?.kind===`endnote`)&&(o?.kind===`footnote`||o?.kind===`endnote`);if((s||l||u)&&Iv(n.flowBounds,i.flowBounds))throw new Y(`FLOW_OVERLAP`,`${n.id} overlaps ${i.id}`)}})}function Yv(e){try{Jv(e)}catch(e){throw e instanceof Y?e:e instanceof TypeError||e instanceof RangeError?new Y(`INVALID_GEOMETRY`,e.message):e}}function Xv(e,t){if(typeof e!=`object`||!e||t.has(e))return e;t.add(e);for(let n of Object.values(e))Xv(n,t);return Object.freeze(e)}const Zv=new WeakSet,Qv=new WeakSet;function $v(e){if(Zv.has(e))return e;let t=Xv(e,new WeakSet);return Zv.add(t),t}function ey(e){return Zv.has(e)?e:(Tv(e,`layout`),$v(e))}function ty(e){if(Qv.has(e))return e;Yv(e);let t=$v(e);return Qv.add(t),t}function ny(e,t){if(!Number.isInteger(t)||t<0||t>=e.pages.length)throw RangeError(`Page index ${t} out of range (count: ${e.pages.length})`);return e.pages[t]}var ry=class{#e;#t;#n=new Map;#r;#i;#a=null;constructor(e,t,n){this.#e=e,this.#r=Object.freeze({...t}),this.#i=ef(this.#r,this.#e),this.#t=n}get defaultLayout(){return this.layoutFor(this.#r)}layoutFor(e){return this.select(e).layout}select(e){let t=Object.isFrozen(e)?e:Object.freeze({...e}),n=ef(t,this.#e),r=this.#n.get(n);return r||(r=ey(this.#t(t)),n!==this.#i&&(this.#a!==null&&this.#a!==n&&this.#n.delete(this.#a),this.#a=n),this.#n.set(n,r)),Object.freeze({key:n,options:t,layout:r})}selectPage(e,t){let n=this.select(e);return Object.freeze({...n,page:ny(n.layout,t)})}isDefault(e){return ef(e,this.#e)===this.#i}};function iy(e){let{services:t,defaultCurrentDateMs:n,buildLayout:r}=e,i=$d({defaultCurrentDateMs:n}),a=e.source.fatalParse,o=a===null?null:Zd(a.message,a.pageSize,t.text),s=new ry(t,i,o===null?r:()=>o);return gd(t,s),Object.freeze({store:s,defaultOptions:i})}function ay(e,t,n){let r=_d(e);if(!r)throw Error(`Document layout variant store is not attached to the supplied services`);return r.selectPage($d(t),n)}function oy(e,t){return Object.freeze({a:e.a*t.a+e.c*t.b,b:e.b*t.a+e.d*t.b,c:e.a*t.c+e.c*t.d,d:e.b*t.c+e.d*t.d,e:e.a*t.e+e.c*t.f+e.e,f:e.b*t.e+e.d*t.f+e.f})}function sy(e){return Object.freeze({a:e,b:0,c:0,d:e,e:0,f:0})}function cy(e,t){return Object.freeze({a:1,b:0,c:0,d:1,e,f:t})}function ly(e,t){return{xPt:e.a*t.xPt+e.c*t.yPt+e.e,yPt:e.b*t.xPt+e.d*t.yPt+e.f}}function uy(e,t){let n=e.a*e.d-e.b*e.c;if(!Number.isFinite(n)||n===0)return null;let r=t.xPt-e.e,i=t.yPt-e.f,a={xPt:(e.d*r-e.c*i)/n,yPt:(-e.b*r+e.a*i)/n};return Number.isFinite(a.xPt)&&Number.isFinite(a.yPt)?a:null}function dy(e,t){let n=e.a*e.d-e.b*e.c;if(!Number.isFinite(n)||n===0)return null;let r={xPt:(e.d*t.xPt-e.c*t.yPt)/n,yPt:(-e.b*t.xPt+e.a*t.yPt)/n};return Number.isFinite(r.xPt)&&Number.isFinite(r.yPt)?r:null}const fy=Object.freeze({a:1,b:0,c:0,d:1,e:0,f:0}),py=Object.freeze([]);function my(e){let t=new Map(e.sectionRegions.map(e=>[e.id,e])),n=new Map;for(let t of e.sectionRegions)for(let e of t.flowDomainIds)n.set(e,t);for(let r of e.flowDomains){if(r.kind!==`footnote`&&r.kind!==`endnote`)continue;let i=r.sectionRegionId?t.get(r.sectionRegionId):e.sectionRegions[0];if(!i)throw Error(`${r.id} references missing page story region ${r.sectionRegionId??`<default>`}`);n.set(r.id,i)}return n}function hy(e,t){return t.coordinateSpace===`upright-physical`?fy:e.get(t.node.flowDomainId)?.coordinateSpace.logicalToPhysical??fy}function gy(e,t){let n=e.rootPointToPage.get(t.rootNodeId);if(!n)throw Error(`Drawing entry ${t.node.id} references missing root ${t.rootNodeId}`);let r=n,i=[];for(let e of t.frames)e.kind===`transform`?r=oy(r,e.transform):i.push(Object.freeze({bounds:e.clip,pointToPage:r}));return{pointToPage:r,layoutTranslationPt:t.layoutTranslationPt,rootNodeId:t.rootNodeId,paintOrderIndex:e.drawingPaintOrder.get(t.node.id)??-1,clips:Object.freeze(i)}}function _y(e,t){return t?{...e,clips:Object.freeze([...e.clips,Object.freeze({bounds:t,pointToPage:e.pointToPage})])}:e}function vy(e,t,n){let r=t.xPt-e.flowBounds.xPt,i=t.yPt-e.flowBounds.yPt;return{...n,pointToPage:oy(n.pointToPage,cy(r,i)),layoutTranslationPt:{xPt:n.layoutTranslationPt.xPt+r,yPt:n.layoutTranslationPt.yPt+i}}}function yy(e,t){return(t.textBoxIds??[]).flatMap(t=>{let n=e.get(t);return n?[n]:[]})}function by(e,t,n){if(n.emittedTextBoxes.has(e.id))return;n.emittedTextBoxes.add(e.id);let r=_y({...t,pointToPage:oy(t.pointToPage,e.transform)},e.clipBounds);for(let t of e.story.blocks)Ty(t,r,n)}function xy(e,t,n,r){let i=yy(e,t),a=Sy(t,n,r);r.collectDrawings&&!r.emittedDrawings.has(t.id)&&(r.emittedDrawings.add(t.id),r.drawings.push(Object.freeze({drawing:t,textBoxes:i,pointToPage:a.pointToPage,clips:a.clips,paintOrderIndex:a.paintOrderIndex,sourceOrder:r.drawingSourceOrder++})));for(let e of i)by(e,a,r)}function Sy(e,t,n){let r=n.drawingEntries.get(e.id),i=t;r&&r.rootNodeId===t.rootNodeId&&(i=gy(n,r));let a=i.layoutTranslationPt,o=e.anchorLayer?.horizontalOwnership===`page`?-a.xPt:0,s=e.anchorLayer?.verticalOwnership===`page`?-a.yPt:0,c=o===0&&s===0?i:{...i,pointToPage:oy(i.pointToPage,cy(o,s))};if(e.orientation===`upright-physical`){if(!e.transform)throw Error(`Upright physical drawing ${e.id} is missing its logical transform`);c={...c,pointToPage:oy(c.pointToPage,e.transform)}}return c}function Cy(e,t,n){let r=_y(t,e.clipBounds);if(n.collectTextRuns)for(let r of e.lines)for(let i of r.placements)i.kind===`text`&&n.runs.push(Object.freeze({placement:i,pointToPage:t.pointToPage,source:e.source,...e.paragraphId===void 0?{}:{paragraphId:e.paragraphId}}));let i=new Map(e.textBoxes.map(e=>[e.id,e])),a=new Set,o=e.drawings.map((e,t)=>{let n=e.source.path.at(-1);if(n===void 0||!Number.isSafeInteger(n)||n<0)throw Error(`Drawing ${e.id} has no retained paragraph run index`);return{drawing:e,index:t,runIndex:n}}).sort((e,t)=>e.runIndex-t.runIndex||e.index-t.index),s=n.collectDrawings?e.lines.flatMap(e=>e.placements.flatMap((e,t)=>e.kind!==`resource`||e.resourceKind!==`image`&&e.resourceKind!==`chart`||e.sourceRunIndex===void 0?[]:[{placement:e,index:t,runIndex:e.sourceRunIndex}])):[];for(let{drawing:e}of o)for(let t of e.textBoxIds??[])a.add(t);let c=[...o.map(e=>({kind:`drawing`,...e})),...s.map(e=>({kind:`resource`,...e}))].sort((e,t)=>e.runIndex-t.runIndex||e.index-t.index);for(let t of c){if(t.kind===`drawing`){xy(i,t.drawing,r,n);continue}n.collectDrawings&&n.inlineResources.push(Object.freeze({placement:t.placement,source:Object.freeze({...e.source,path:Object.freeze([...e.source.path,t.runIndex])}),pointToPage:r.pointToPage,clips:r.clips,paintOrderIndex:r.paintOrderIndex,sourceOrder:n.drawingSourceOrder++}))}for(let t of e.textBoxes)a.has(t.id)||by(t,r,n)}function wy(e,t,n){let r=_y(t,e.clipBounds);for(let t of e.rows)for(let e of t.cells){let t=`visualMergeOwnership`in e&&e.visualMergeOwnership===`continuation`;if(e.verticalMerge===`continue`&&!t)continue;let i=_y(r,e.clipBounds);for(let t of e.blocks){let r=t.layout;Ty(r,vy(r,{xPt:e.contentBounds.xPt+(r.kind===`table`?r.flowBounds.xPt:0),yPt:e.flowBounds.yPt+t.offsetPt+(r.kind===`table`?r.flowBounds.yPt:0)},i),n)}}for(let i of e.resolvedFloatingTables??[])Ty(i.child,vy(i.child,{xPt:i.xPt-t.layoutTranslationPt.xPt,yPt:i.yPt-t.layoutTranslationPt.yPt},r),n)}function Ty(e,t,n){switch(e.kind){case`paragraph`:Cy(e,t,n);return;case`table`:wy(e,t,n);return;case`note`:for(let r of e.story.blocks)Ty(r,_y(t,e.story.clipBounds),n);return;case`textbox`:by(e,t,n);return;case`drawing`:{let r=n.drawingEntries.get(e.id);xy(new Map((r?.textBoxes??[]).map(e=>[e.id,e])),e,t,n);return}default:throw Error(`Unknown text-index node: ${String(e)}`)}}function Ey(e,t,n){let r=e.pages[t];if(!r)throw RangeError(`Page index ${t} is out of range`);let i=new Map(r.layers.roots.map(e=>[e.node.id,e])),a=my(r),o=new Map(r.layers.roots.map(e=>[e.node.id,hy(a,e)])),s=new Map,c=new Map,l=new Map;for(let[e,t]of r.layers.paintOrder.entries())t.kind===`drawing`&&s.set(t.node.id,t),t.kind===`drawing`?c.set(t.node.id,e):l.set(t.node.id,e);let u={...n,drawingEntries:s,rootPointToPage:o,rootPaintOrder:l,drawingPaintOrder:c,emittedTextBoxes:new Set,emittedDrawings:new Set,runs:[],drawings:[],inlineResources:[],drawingSourceOrder:0};for(let e of r.readingOrder){let t=i.get(e);if(!t)throw Error(`Reading-order node ${e} is not a page root`);let n=o.get(e);if(!n)throw Error(`Reading-order node ${e} has no page projection`);Ty(t.node,{pointToPage:n,layoutTranslationPt:{xPt:0,yPt:0},rootNodeId:t.node.id,paintOrderIndex:l.get(t.node.id)??-1,clips:py},u)}return u}function Dy(e,t){return Object.freeze(Ey(e,t,{collectTextRuns:!0,collectDrawings:!1}).runs)}function Oy(e,t){let n=Ey(e,t,{collectTextRuns:!1,collectDrawings:!0}),r=[...n.drawings,...n.inlineResources];return r.sort((e,t)=>e.paintOrderIndex-t.paintOrderIndex||e.sourceOrder-t.sourceOrder),Object.freeze(r)}function ky(e){let t=Math.hypot(e.a,e.b),n=Math.hypot(e.c,e.d),r=e.a/t,i=e.b/t,a=e.c/n,o=e.d/n;if(!(r===1&&i===0&&a===0&&o===1))return r===0&&i===1&&a===-1&&o===0?`rotate(90deg)`:r===0&&i===-1&&a===1&&o===0?`rotate(-90deg)`:`matrix(${r}, ${i}, ${a}, ${o}, 0, 0)`}function Ay(e,t){let{placement:n}=e,r=ly(t,n.bounds),i=Math.hypot(t.a,t.b),a=Math.hypot(t.c,t.d),o=ky(t),s=n.paintOps[0]?.letterSpacingPt??0;return{source:{story:e.source.story,storyInstance:e.source.storyInstance,path:[...e.source.path]},...e.paragraphId===void 0?{}:{paragraphId:e.paragraphId},text:n.text,x:r.xPt,y:r.yPt,w:n.bounds.widthPt*i,h:n.bounds.heightPt*a,fontSize:n.fontSizePt*a,font:V(n.fontRoute,n.fontSizePt*a,n.fontWeight,n.fontStyle),...s===0?{}:{letterSpacingPx:s*i},...o?{transform:o}:{},...n.hyperlink?{hyperlink:n.hyperlink}:{},...n.tateChuYoko?{eastAsianVert:!0}:{}}}function jy(e,t,n){if(!Number.isFinite(n.scale)||n.scale<=0)throw RangeError(`Text projection scale must be positive: ${n.scale}`);let r=sy(n.scale);return Dy(e,t).map(e=>Ay(e,oy(r,e.pointToPage)))}function My(e,t,n){let r=ay(e,{currentDate:n.currentDate,defaultCurrentDateMs:n.defaultCurrentDateMs},t),i=(n.width??r.page.geometry.widthPt*1.3333333333333333)/r.page.geometry.widthPt;return jy(r.layout,t,{scale:i})}function Ny(e,t,n){return`${e}${t?`|clr:${t}`:``}${n?`|duo:${n.clr1}:${n.clr2}`:``}`}async function Py(e,t){let n=parseInt(t.slice(0,2),16),r=parseInt(t.slice(2,4),16),i=parseInt(t.slice(4,6),16),a=new OffscreenCanvas(e.width,e.height),o=a.getContext(`2d`);if(!o)throw Error(`2D canvas is unavailable for image color replacement`);o.drawImage(e,0,0);let s=o.getImageData(0,0,e.width,e.height);for(let e=0;e<s.data.length;e+=4)s.data[e]===n&&s.data[e+1]===r&&s.data[e+2]===i&&(s.data[e+3]=0);return o.putImageData(s,0,0),createImageBitmap(a)}async function Fy(e,t,n,r,i=0,a=0,o){let s=await so(e,t,r,{widthPt:i,heightPt:a,suppressBoundaryFrame:!0});return s?!n&&!o?s:oo(`docx-color-effects`,Ny(e,n,o),r,async()=>{let e=s;try{if(n&&(e=await Py(e,n)),o){let{w:t,h:n}=mo(e);if(t>0&&n>0){let r=e;e=await So(e,o,{width:t,height:n}),r!==s&&e!==r&&Za(r)}}return{bitmap:e,owned:e!==s}}catch(t){throw e!==s&&Za(e),t}}):null}function Iy(e){let t=new Map,n=e.filter(e=>e.kind===`image`||e.kind===`picture-bullet`).sort((e,t)=>(e.documentOrder??2**53-1)-(t.documentOrder??2**53-1));for(let e of n){let n=_o(e.mimeType,e.srcRect,e.intrinsicSize.widthPt,e.intrinsicSize.heightPt),r={imagePath:e.partPath,mimeType:e.mimeType,...e.svgImagePath===void 0?{}:{svgImagePath:e.svgImagePath},...e.colorReplaceFrom===void 0?{}:{colorReplaceFrom:e.colorReplaceFrom},...e.duotone===void 0?{}:{duotone:e.duotone},widthPt:n.widthPt,heightPt:n.heightPt,hasCrop:e.srcRect!=null},i=Ny(r.imagePath,r.colorReplaceFrom,r.duotone),a=t.get(i);a?(a.widthPt=Math.max(a.widthPt,r.widthPt),a.heightPt=Math.max(a.heightPt,r.heightPt),a.hasCrop||=r.hasCrop):t.set(i,r)}return[...t.values()]}async function Ly(e,t){if(!t)return new Map;let n=await Promise.all(Iy(e).map(async e=>{let n=e.mimeType===`image/svg+xml`,r={svgImagePath:e.svgImagePath,srcRect:e.hasCrop||null},i;if(Co(r))try{i=await fo(r.svgImagePath,t)}catch(r){let a=n?await fo(e.imagePath,t):await Fy(e.imagePath,e.mimeType,e.colorReplaceFrom,t,e.widthPt,e.heightPt,e.duotone);if(!a)throw r;i=a}else i=n?await fo(e.imagePath,t):await Fy(e.imagePath,e.mimeType,e.colorReplaceFrom,t,e.widthPt,e.heightPt,e.duotone);return i==null?null:[Ny(e.imagePath,e.colorReplaceFrom,e.duotone),i]}));return new Map(n.filter(e=>e!==null))}function Ry(e,t){return Math.round(e*t)/t}function zy(e,t,n){let r=e*t;return(n%2==0?Math.round(r):Math.round(r-.5)+.5)/t}function By(e,t,n){let r=t*n,i=Math.max(1,Math.round(.5*t)),a=Math.max(1,Math.round(i*n)),o=a/r;if(e.start.xPt===e.end.xPt){let t=zy(e.start.xPt,r,a);return{segment:{start:{xPt:t,yPt:Ry(e.start.yPt,r)},end:{xPt:t,yPt:Ry(e.end.yPt,r)}},widthPt:o}}if(e.start.yPt===e.end.yPt){let t=zy(e.start.yPt,r,a);return{segment:{start:{xPt:Ry(e.start.xPt,r),yPt:t},end:{xPt:Ry(e.end.xPt,r),yPt:t}},widthPt:o}}return{segment:e,widthPt:o}}function Vy(e,t,n,r,i){if(r!==`upright-physical`){i.resources.paint(e,t,n,i.ctx);return}let{ctx:a}=i;a.save(),a.translate(n.xPt+n.widthPt/2,n.yPt+n.heightPt/2),a.rotate(-Math.PI/2),i.resources.paint(e,t,{xPt:-n.heightPt/2,yPt:-n.widthPt/2,widthPt:n.heightPt,heightPt:n.widthPt},a),a.restore()}function Hy(e,t){for(let n of e.commands){if(n.kind===`noop`)continue;if(n.kind===`drawingml-shape`){ai(t.ctx,n.plan,1);continue}if(n.kind===`drawingml-image-fill`){if(!t.resources)throw Error(`Missing retained resource painter for ${n.resourceKey}`);let{x:e,y:r,w:i,h:a}=n.plan.rect,o=n.fillRect??{l:0,t:0,r:0,b:0},s={xPt:e+o.l*i,yPt:r+o.t*a,widthPt:i*(1-o.l-o.r),heightPt:a*(1-o.t-o.b)};s.widthPt>0&&s.heightPt>0&&Zr(t.ctx,n.plan,()=>{Qr(t.ctx,n.plan),Vy(n.resourceKey,`image`,s,void 0,t)}),ai(t.ctx,n.plan,1);continue}if(n.kind===`resource`){if(!t.resources)throw Error(`Missing retained resource painter for ${n.resourceKey}`);Vy(n.resourceKey,n.resourceKind,n.rect,n.orientation,t);continue}if(n.kind===`fill-rect`){t.ctx.fillStyle=n.fill,t.ctx.fillRect(n.rect.xPt,n.rect.yPt,n.rect.widthPt,n.rect.heightPt);continue}if(n.kind===`stroke-rect`){t.ctx.strokeStyle=n.stroke,t.ctx.lineWidth=n.lineWidthPt,t.ctx.setLineDash([...n.dashPt]),t.ctx.strokeRect(n.rect.xPt,n.rect.yPt,n.rect.widthPt,n.rect.heightPt),t.ctx.setLineDash([]);continue}if(n.kind===`watermark-text`){let e=ht(n.fill,t.ctx,n.rect.xPt,n.rect.yPt,n.rect.widthPt,n.rect.heightPt);if(e===null)continue;t.ctx.save();let r=n.rect.xPt+n.rect.widthPt/2,i=n.rect.yPt+n.rect.heightPt/2;t.ctx.translate(r,i),n.rotationDeg!==0&&t.ctx.rotate(n.rotationDeg*Math.PI/180),n.fitShape?(t.ctx.scale(n.rect.widthPt/n.sourceBounds.widthPt,n.rect.heightPt/n.sourceBounds.heightPt),t.ctx.translate(-(n.sourceBounds.xPt+n.sourceBounds.widthPt/2),-(n.sourceBounds.yPt+n.sourceBounds.heightPt/2))):t.ctx.translate(n.rect.xPt-r-n.sourceBounds.xPt,n.rect.yPt-i-n.sourceBounds.yPt),t.ctx.globalAlpha*=n.opacity,t.ctx.fillStyle=e,t.ctx.textAlign=`left`,t.ctx.textBaseline=`alphabetic`;let a=0;for(let e of n.spans)t.ctx.font=V(e.fontRoute,n.fontSizePt,e.fontWeight,e.fontStyle),t.ctx.fillText(e.text,a,0),a+=e.advancePt;t.ctx.restore();continue}t.ctx.fillStyle=n.fill,t.ctx.font=V(n.fontRoute,n.fontSizePt,n.fontWeight,n.fontStyle),t.ctx.textAlign=n.align===`start`?`left`:n.align===`end`?`right`:`center`,t.ctx.textBaseline=n.baseline;let e=n.align===`start`?n.rect.xPt:n.align===`end`?n.rect.xPt+n.rect.widthPt:n.rect.xPt+n.rect.widthPt/2,r=n.baseline===`top`?n.rect.yPt:n.baseline===`bottom`?n.rect.yPt+n.rect.heightPt:n.rect.yPt+n.rect.heightPt/2;t.ctx.fillText(n.text,e,r)}}function Uy(e,t,n){let r=e===`triple`,i=/^(thinThick|thickThin|thinThickThin)(Small|Medium|Large)Gap$/.exec(e);if(!r&&!i)return null;let a=r?[1,1,1]:i?.[1]===`thinThick`?[1,2]:i?.[1]===`thickThin`?[2,1]:[1,2,1],o=r||i?.[2]===`Small`?1:i?.[2]===`Medium`?2:3,s=t/(a.reduce((e,t)=>e+t,0)+o*(a.length-1)),c=a.map(e=>Math.max(1,Math.round(s*e*n))),l=Math.max(1,Math.round(s*o*n)),u=0;return{bands:c.map((e,t)=>{let n={offsetDev:u,widthDev:e};return u+=e+(t<c.length-1?l:0),n}),spanDev:u}}function Wy(e){return[...e.bands].reverse().map(t=>({offsetDev:e.spanDev-t.offsetDev-t.widthDev,widthDev:t.widthDev}))}function Gy(e,t,n){if(t.style!==`compound`)return!1;let r=n.pointToCss??sy(n.scale);if(r.b!==0||r.c!==0||r.a<=0||r.d<=0)return!1;let i=ly(r,{xPt:e.xPt,yPt:e.yPt}),a=ly(r,{xPt:e.xPt+e.widthPt,yPt:e.yPt+e.heightPt}),o=Uy(t.authoredStyle,t.widthPt*r.d,n.dpr),s=Uy(t.authoredStyle,t.widthPt*r.a,n.dpr);if(!o||!s||o.bands.length!==s.bands.length)return!1;let c=Wy(o),l=Wy(s),u=(e,t,i,a)=>{let o=[{xPt:e,yPt:t},{xPt:e+i,yPt:t},{xPt:e,yPt:t+a},{xPt:e+i,yPt:t+a}].map(e=>uy(r,e));if(o.some(e=>e===null))return!1;let s=o.filter(e=>e!==null),c=s.map(e=>e.xPt),l=s.map(e=>e.yPt);return n.ctx.fillRect(Math.min(...c),Math.min(...l),Math.max(...c)-Math.min(...c),Math.max(...l)-Math.min(...l)),!0},d=Math.round(i.xPt*n.dpr-s.spanDev/2),f=Math.round(a.xPt*n.dpr+s.spanDev/2),p=Math.round(i.yPt*n.dpr-o.spanDev/2),m=Math.round(a.yPt*n.dpr+o.spanDev/2);n.ctx.fillStyle=t.color;for(let e=0;e<c.length;e+=1){let t=c[e],r=l[e],i=d+r.offsetDev,a=f-r.offsetDev,o=p+t.offsetDev,s=m-t.offsetDev,h=i/n.dpr,g=a/n.dpr,_=o/n.dpr,v=s/n.dpr,y=r.widthDev/n.dpr,b=t.widthDev/n.dpr;if(!u(h,_,g-h,b)||!u(h,v-b,g-h,b)||!u(h,_,y,v-_)||!u(g-y,_,y,v-_))return!1}return n.ctx.setLineDash([]),!0}function Ky(e){return 1/e.dpr}function qy(e,t,n=0){let r=n/t.scale,i=r>e.widthPt?{...e,widthPt:r,...typeof e.authoredStyle==`string`?{dashPatternPt:Object.freeze(st(e.authoredStyle,r))}:{}}:e,{ctx:a}=t;a.strokeStyle=i.color,a.lineWidth=i.widthPt,a.setLineDash(`dashPatternPt`in i&&i.dashPatternPt?[...i.dashPatternPt]:[]),a.beginPath();let o=`path`in i&&i.path?.length?i.path:[i.from,i.to],s=o.length===2&&(o[0].xPt===o[1].xPt||o[0].yPt===o[1].yPt),c=s&&o[0].yPt===o[1].yPt,l=s&&o[0].xPt===o[1].xPt,u=t.pointToCss??sy(t.scale),d=o.map(e=>ly(u,e)),f=s?o[1].xPt-o[0].xPt:0,p=s?o[1].yPt-o[0].yPt:0,m=u.a*f+u.c*p,h=u.b*f+u.d*p,g=s&&h===0,_=s&&m===0,v=c?Math.hypot(u.c,u.d):l?Math.hypot(u.a,u.b):0,y=i.style===`compound`&&s&&v>0?Uy(i.authoredStyle,i.widthPt*v,t.dpr):null;if(y){a.fillStyle=i.color;let e=(e,t,n,r)=>{let i=[{xPt:e,yPt:t},{xPt:e+n,yPt:t},{xPt:e,yPt:t+r},{xPt:e+n,yPt:t+r}].map(e=>uy(u,e));if(i.some(e=>e===null))return;let o=i.filter(e=>e!==null),s=o.map(e=>e.xPt),c=o.map(e=>e.yPt);a.fillRect(Math.min(...s),Math.min(...c),Math.max(...s)-Math.min(...s),Math.max(...c)-Math.min(...c))},n=Math.round((g?d[0].yPt:d[0].xPt)*t.dpr-y.spanDev/2);for(let r of y.bands){let i=(n+r.offsetDev)/t.dpr,s=r.widthDev/t.dpr;if(g)e(Math.min(d[0].xPt,d[1].xPt),i,Math.abs(m),s);else if(_)e(i,Math.min(d[0].yPt,d[1].yPt),s,Math.abs(h));else{let e=(r.offsetDev-y.spanDev/2)/t.dpr/v,n=r.widthDev/t.dpr/v;c?a.fillRect(Math.min(o[0].xPt,o[1].xPt),o[0].yPt+e,Math.abs(o[1].xPt-o[0].xPt),n):a.fillRect(o[0].xPt+e,Math.min(o[0].yPt,o[1].yPt),n,Math.abs(o[1].yPt-o[0].yPt))}}a.setLineDash([]);return}if(i.style===`double`&&s&&v>0){if(a.fillStyle=i.color,g||_){let e=(e,t,n,r)=>{let i=[{xPt:e,yPt:t},{xPt:e+n,yPt:t},{xPt:e,yPt:t+r},{xPt:e+n,yPt:t+r}].map(e=>uy(u,e));if(i.some(e=>e===null))return;let o=i.filter(e=>e!==null),s=o.map(e=>e.xPt),c=o.map(e=>e.yPt);a.fillRect(Math.min(...s),Math.min(...c),Math.max(...s)-Math.min(...s),Math.max(...c)-Math.min(...c))},{railDev:n,gapDev:r,spanDev:o}=ko(i.widthPt*v,t.dpr),s=n/t.dpr;if(g){let i=Math.round(d[0].yPt*t.dpr-o/2),a=Math.min(d[0].xPt,d[1].xPt),c=Math.abs(d[1].xPt-d[0].xPt);e(a,i/t.dpr,c,s),e(a,(i+n+r)/t.dpr,c,s)}else{let i=Math.round(d[0].xPt*t.dpr-o/2),a=Math.min(d[0].yPt,d[1].yPt),c=Math.abs(d[1].yPt-d[0].yPt);e(i/t.dpr,a,s,c),e((i+n+r)/t.dpr,a,s,c)}}else{let{railDev:e,gapDev:n,spanDev:r}=ko(i.widthPt*v,t.dpr),s=e/t.dpr/v,l=n/t.dpr/v,u=r/t.dpr/v;if(c){let e=Math.min(o[0].xPt,o[1].xPt),t=Math.abs(o[1].xPt-o[0].xPt);a.fillRect(e,o[0].yPt-u/2,t,s),a.fillRect(e,o[0].yPt-u/2+s+l,t,s)}else{let e=Math.min(o[0].yPt,o[1].yPt),t=Math.abs(o[1].yPt-o[0].yPt);a.fillRect(o[0].xPt-u/2,e,s,t),a.fillRect(o[0].xPt-u/2+s+l,e,s,t)}}a.setLineDash([]);return}let b=dy(u,_&&v>0?{xPt:Eo(d[0].xPt,i.widthPt*v,t.dpr),yPt:0}:g&&v>0?{xPt:0,yPt:Eo(d[0].yPt,i.widthPt*v,t.dpr)}:{xPt:0,yPt:0})??{xPt:0,yPt:0},x=o[0];a.moveTo(x.xPt+b.xPt,x.yPt+b.yPt);for(let e of o.slice(1))a.lineTo(e.xPt+b.xPt,e.yPt+b.yPt);let S=i.style===`wavy`&&o.length>2;S&&(a.save(),a.lineJoin=`bevel`),a.stroke(),S&&a.restore(),a.setLineDash([])}function Jy(e,t){return n=>()=>{e.save();try{t(),n()}finally{e.restore()}}}function Yy(e,t){let n=t.pointToCss??sy(t.scale);if(n.b!==0||n.c!==0)return e;let r=[{xPt:e.xPt,yPt:e.yPt},{xPt:e.xPt+e.widthPt,yPt:e.yPt},{xPt:e.xPt,yPt:e.yPt+e.heightPt},{xPt:e.xPt+e.widthPt,yPt:e.yPt+e.heightPt}].map(e=>ly(n,e)),i=r.map(e=>e.xPt),a=r.map(e=>e.yPt),o=Math.floor(Math.min(...i)*t.dpr)/t.dpr,s=Math.floor(Math.min(...a)*t.dpr)/t.dpr,c=Math.ceil(Math.max(...i)*t.dpr)/t.dpr,l=Math.ceil(Math.max(...a)*t.dpr)/t.dpr,u=[{xPt:o,yPt:s},{xPt:c,yPt:s},{xPt:o,yPt:l},{xPt:c,yPt:l}].map(e=>uy(n,e));if(u.some(e=>e===null))return e;let d=u.filter(e=>e!==null),f=d.map(e=>e.xPt),p=d.map(e=>e.yPt);return{xPt:Math.min(...f),yPt:Math.min(...p),widthPt:Math.max(...f)-Math.min(...f),heightPt:Math.max(...p)-Math.min(...p)}}function Xy(e,t,n,r=!0){let i=t.xPt-e.flowBounds.xPt,a=t.yPt-e.flowBounds.yPt,o=n.layoutTranslationPt??{xPt:0,yPt:0},s=oy(n.pointToCss??sy(n.scale),cy(i,a)),c=Jy(n.ctx,()=>n.ctx.translate(i,a)),l={...n,pointToCss:s,layoutTranslationPt:{xPt:o.xPt+i,yPt:o.yPt+a}};c(()=>{e.kind===`paragraph`?pb(e,l):eb(e,l,e.resolvedFloatingTables??[],r)})()}function Zy(e,t){let n=Ky(t),r=new Set;for(let n of e.compoundBorderFrames??[])Gy(n.bounds,n.border,t)&&n.segmentIndexes.forEach(e=>r.add(e));e.borders.forEach((e,i)=>{r.has(i)||qy(e,t,n)})}function Qy(e,t,n){let r=t.xPt-e.flowBounds.xPt,i=t.yPt-e.flowBounds.yPt,a=n.layoutTranslationPt??{xPt:0,yPt:0},o=oy(n.pointToCss??sy(n.scale),cy(r,i)),s=Jy(n.ctx,()=>n.ctx.translate(r,i)),c={...n,pointToCss:o,layoutTranslationPt:{xPt:a.xPt+r,yPt:a.yPt+i}};s(()=>{let t=()=>Zy(e,c);if(!e.clipBounds){t();return}Jy(n.ctx,()=>{n.ctx.beginPath(),n.ctx.rect(e.clipBounds.xPt,e.clipBounds.yPt,e.clipBounds.widthPt,e.clipBounds.heightPt),n.ctx.clip()})(t)()})()}function $y(e,t,n,r){for(let n of e.rows)for(let e of n.cells){let n=`visualMergeOwnership`in e&&e.visualMergeOwnership===`continuation`;if(e.verticalMerge===`continue`&&!n)continue;e.background&&(t.ctx.fillStyle=e.background.color,t.ctx.fillRect(e.flowBounds.xPt,e.flowBounds.yPt,e.flowBounds.widthPt,e.flowBounds.heightPt));let r=(t,n=!0)=>{for(let r of e.blocks)Xy(r.layout,{xPt:e.contentBounds.xPt+(r.layout.kind===`table`?r.layout.flowBounds.xPt:0),yPt:e.flowBounds.yPt+r.offsetPt+(r.layout.kind===`table`?r.layout.flowBounds.yPt:0)},t,r.layout.kind!==`table`||n)};if(!e.clipBounds){r(t);continue}if(Jy(t.ctx,()=>{t.ctx.beginPath(),t.ctx.rect(e.clipBounds.xPt,e.clipBounds.yPt,e.clipBounds.widthPt,e.clipBounds.heightPt),t.ctx.clip()})(()=>r(t,!1))(),e.blocks.some(e=>e.layout.kind===`table`)){let n=Yy(e.clipBounds,t);Jy(t.ctx,()=>{t.ctx.beginPath(),t.ctx.rect(n.xPt,n.yPt,n.widthPt,n.heightPt),t.ctx.clip()})(()=>{for(let n of e.blocks)n.layout.kind===`table`&&Qy(n.layout,{xPt:e.contentBounds.xPt+n.layout.flowBounds.xPt,yPt:e.flowBounds.yPt+n.offsetPt+n.layout.flowBounds.yPt},t)})()}}nb(n,t),r&&Zy(e,t)}function eb(e,t,n,r){if(!e.clipBounds){$y(e,t,n,r);return}let i=e.clipBounds;Jy(t.ctx,()=>{t.ctx.beginPath(),t.ctx.rect(i.xPt,i.yPt,i.widthPt,i.heightPt),t.ctx.clip()})(()=>$y(e,t,n,r))()}function tb(e,t,n){eb(e,t,n??e.resolvedFloatingTables??[],!0)}function nb(e,t){let n=t.layoutTranslationPt??{xPt:0,yPt:0};for(let r of e)Xy(r.child,{xPt:r.xPt-n.xPt,yPt:r.yPt-n.yPt},t)}function rb(e,t){let n=e.transform;if(n){n.call(e,t.a,t.b,t.c,t.d,t.e,t.f);return}if(e.translate(t.e,t.f),t.a===0&&t.b===1&&t.c===-1&&t.d===0)e.rotate(Math.PI/2);else if(t.a===0&&t.b===-1&&t.c===1&&t.d===0)e.rotate(-Math.PI/2);else if(t.b===0&&t.c===0)e.scale(t.a,t.d);else throw Error(`Canvas context cannot apply the retained point-space transform`)}function ib(e){if(e.text.length!==e.range.end-e.range.start)throw Error(`UTF-16 text range is inconsistent`);if(e.clusters.length===0)throw Error(`Retained glyph slices are incomplete (clusters)`);let t=e.range.start;for(let n of e.clusters){let{advancePt:r,offset:i,range:a}=n;if(!Number.isFinite(r)||!Number.isFinite(i.xPt)||!Number.isFinite(i.yPt)||a.start!==t||a.end<=a.start||a.end>e.range.end)throw Error(`Retained glyph slices are incomplete (cluster range ${t}:${a.start}-${a.end}/${e.range.end}; advance ${r}; offset ${i.xPt},${i.yPt})`);t=a.end}if(t!==e.range.end)throw Error(`Retained glyph slices are incomplete (cluster end ${t}/${e.range.end})`);if(e.paintOps.length===0)throw Error(`Retained glyph slices are incomplete (paint ops)`);let n=e.range.start;for(let t of e.paintOps){let r=t.sourceMapping!==`kashida`&&t.text.length!==t.range.end-t.range.start,i=!Number.isFinite(t.offset.xPt)||!Number.isFinite(t.offset.yPt)||t.glyphOffsetPt!==void 0&&(!Number.isFinite(t.glyphOffsetPt.xPt)||!Number.isFinite(t.glyphOffsetPt.yPt))||t.blockAxisInkBounds!==void 0&&(!Number.isFinite(t.blockAxisInkBounds.startPt)||!Number.isFinite(t.blockAxisInkBounds.endPt)||t.blockAxisInkBounds.endPt<t.blockAxisInkBounds.startPt)||!Number.isFinite(t.letterSpacingPt)||!Number.isFinite(t.scaleX)||t.scaleX<=0||t.scaleY!==void 0&&(!Number.isFinite(t.scaleY)||t.scaleY<=0),a=t.range.start!==n||t.range.end<=t.range.start||t.range.end>e.range.end;if(r||i||a)throw Error(`Retained glyph slices are incomplete (${r?`text`:i?`geometry`:`range ${n}:${t.range.start}-${t.range.end}/${e.range.end}`})`);n=t.range.end}let r=e.text.slice(n-e.range.start);if(r!==``&&!/^\\s+$/u.test(r))throw Error(`Retained glyph slices are incomplete (paint end ${n}/${e.range.end})`)}function ab(e,t){return e.kind===`explicit`?e.color:e.kind===`auto`?mt(e.background??`#FFFFFF`):t.defaultTextColor??`#000000`}function ob(e,t){return ab(e.color,t)}function sb(e,t,n=!1){let{ctx:r}=t;r.fillStyle=ab(e.color,t),r.font=V(e.fontRoute,e.fontSizePt,e.fontWeight,e.fontStyle),n?(r.save(),r.translate(e.origin.xPt,e.origin.yPt),r.rotate(-Math.PI/2),r.fillText(e.text,0,0),r.restore()):r.fillText(e.text,e.origin.xPt,e.origin.yPt)}function cb(e,t){let{ctx:n}=t;if(n.beginPath(),e.points.length>0){let t=e.points[0];n.moveTo(t.xPt,t.yPt);for(let t of e.points.slice(1))n.lineTo(t.xPt,t.yPt)}e.stroke!==null&&(n.strokeStyle=e.stroke,n.lineWidth=e.strokeWidthPt,n.stroke()),e.fill!==null&&(n.fillStyle=e.fill,n.fill())}function lb(e,t){let n=new Map(e.textBoxes.map(e=>[e.id,e]));return(t.textBoxIds??[]).flatMap(e=>{let t=n.get(e);return t?[t]:[]})}function ub(e,t,n){let r=n.layoutTranslationPt,i=e.anchorLayer?.horizontalOwnership===`page`?-(r?.xPt??0):0,a=e.anchorLayer?.verticalOwnership===`page`?-(r?.yPt??0):0;(i!==0||a!==0)&&(n.ctx.save(),n.ctx.translate(i,a));let o=n=>{Hy(e,n);for(let e of t)mb(e,{...n,omitAnchoredDrawings:!1})};try{if(e.orientation===`upright-physical`){if(!e.transform)throw Error(`Upright physical drawing requires its retained logical transform`);let t=oy(n.pointToCss??sy(n.scale),e.transform);Jy(n.ctx,()=>{rb(n.ctx,e.transform)})(()=>o({...n,pointToCss:t}))()}else o(n)}finally{(i!==0||a!==0)&&n.ctx.restore()}}function db(e,t,n){ub(t,lb(e,t),n)}function fb(e,t){let{ctx:n}=t,r=new Set(e.drawings.flatMap(e=>e.textBoxIds??[])),i=n=>db(e,n,t),a=e.drawings.filter(e=>e.anchorLayer?.behindDoc===!0).sort((e,t)=>e.anchorLayer.relativeHeight-t.anchorLayer.relativeHeight||e.anchorLayer.sourceOrder-t.anchorLayer.sourceOrder);if(!t.omitAnchoredDrawings)for(let e of a)i(e);for(let t of e.lineNumbers??[])for(let e of t.paintOps)n.fillStyle=e.color,n.font=e.font,n.textAlign=e.textAlign,n.textBaseline=`alphabetic`,n.fillText(e.text,e.origin.xPt,e.origin.yPt);e.shading&&(n.fillStyle=e.shading.color,n.fillRect(e.inkBounds.xPt,e.inkBounds.yPt,e.inkBounds.widthPt,e.inkBounds.heightPt));for(let r of e.lines){for(let e of r.barTabRules??[])qy(e,t,Ky(t));for(let e of r.placements){if(e.kind===`resource`){if(!t.resources)throw Error(`Missing retained resource painter for ${e.resourceKey}`);if(t.textBoxVerticalMode){let r=t.textBoxVerticalMode===`vert270`?Math.PI/2:-Math.PI/2;n.save(),n.translate(e.bounds.xPt+e.bounds.widthPt/2,e.bounds.yPt+e.bounds.heightPt/2),n.rotate(r),Vy(e.resourceKey,e.resourceKind,{xPt:-e.bounds.heightPt/2,yPt:-e.bounds.widthPt/2,widthPt:e.bounds.heightPt,heightPt:e.bounds.widthPt},e.orientation,t),n.restore()}else Vy(e.resourceKey,e.resourceKind,e.bounds,e.orientation,t);continue}if(e.kind===`tab`){if(e.leader!==`none`){if(!e.leaderGlyphs)throw Error(`Retained tab leader geometry is missing`);for(let n of e.leaderGlyphs)sb(n,t)}for(let n of e.decorations??[])qy(n,t);continue}if(e.kind!==`text`)continue;if(ib(e),e.unsupportedGeometry?.length)throw Error(`Unsupported retained typography geometry: ${e.unsupportedGeometry.join(`, `)}`);if(e.highlightFragments)for(let t of e.highlightFragments)n.fillStyle=t.color,n.fillRect(t.rect.xPt,t.rect.yPt,t.rect.widthPt,t.rect.heightPt);else (e.background||e.highlight)&&(n.fillStyle=e.highlight??e.background??`#000000`,n.fillRect(e.bounds.xPt,e.bounds.yPt,e.bounds.widthPt,e.bounds.heightPt));n.fillStyle=ob(e,t),n.font=V(e.fontRoute,e.fontSizePt,e.fontWeight,e.fontStyle),n.textAlign=`left`,n.textBaseline=`alphabetic`;let r=n.letterSpacing,i=n.fontKerning;for(let t of e.paintOps){n.direction=t.direction,n.fontKerning=t.kerning;let r=e.origin.xPt+t.offset.xPt,i=e.origin.yPt+t.offset.yPt,a=t.glyphOffsetPt?.xPt??0,o=t.glyphOffsetPt?.yPt??0;if(t.glyphOrientation===`upright`){n.save(),n.translate(r,i),n.rotate(-Math.PI/2),(t.scaleX!==1||t.scaleY!==void 0)&&(t.writingMode===`vertical-rl`?n.scale(1,t.scaleX):n.scale(t.scaleX,t.scaleY??1)),n.textAlign=`center`,n.textBaseline=`middle`,n.letterSpacing=`${t.letterSpacingPt}px`;let e=()=>n.fillText(t.text,a,o);t.verticalFeature?rl(n,e):e(),n.restore()}else t.glyphOrientation===`rotate`?(n.save(),n.translate(r,i),t.scaleX!==1&&n.scale(t.scaleX,1),n.textAlign=`center`,n.textBaseline=`middle`,n.letterSpacing=`${t.letterSpacingPt/t.scaleX}px`,n.fillText(t.text,a,o),n.restore()):t.scaleX===1?(n.letterSpacing=`${t.letterSpacingPt}px`,n.fillText(t.text,r+a,i+o)):(n.save(),n.translate(r+a,i+o),n.scale(t.scaleX,1),n.letterSpacing=`${t.letterSpacingPt/t.scaleX}px`,n.fillText(t.text,0,0),n.restore())}if(n.letterSpacing=r,n.fontKerning=i,e.ruby){let n=t.textBoxVerticalMode===`eaVert`||t.textBoxVerticalMode===`mongolianVert`;for(let r of e.ruby.paintOps)sb(r,t,n)}for(let n of e.emphasis?.glyphs??[])sb(n,t);for(let n of e.emphasis?.paths??[])cb(n,t);for(let n of e.decorations)qy(n,t);for(let n of e.runBorderFragments??[])qy(n,t)}}let o=Ky(t);for(let n of e.borders)qy(n,t,o);for(let t of e.drawings.filter(e=>!e.anchorLayer))i(t);let s=e.drawings.filter(e=>e.anchorLayer&&!e.anchorLayer.behindDoc).sort((e,t)=>e.anchorLayer.relativeHeight-t.anchorLayer.relativeHeight||e.anchorLayer.sourceOrder-t.anchorLayer.sourceOrder);if(!t.omitAnchoredDrawings)for(let e of s)i(e);for(let n of e.textBoxes)r.has(n.id)||mb(n,{...t,omitAnchoredDrawings:!1})}function pb(e,t){if(!e.clipBounds){fb(e,t);return}let n=e.clipBounds;Jy(t.ctx,()=>{t.ctx.beginPath(),t.ctx.rect(n.xPt,n.yPt,n.widthPt,n.heightPt),t.ctx.clip()})(()=>fb(e,t))()}function mb(e,t){let n=t=>{for(let n of e.story.blocks)if(n.kind===`paragraph`)pb(n,t);else if(n.kind===`table`)tb(n,t,n.resolvedFloatingTables??[]);else throw Error(`Text-box story contains unsupported retained node: ${n.kind}`)},r=oy(t.pointToCss??sy(t.scale),e.transform),i=e.transform.a!==1||e.transform.b!==0||e.transform.c!==0||e.transform.d!==1||e.transform.e!==0||e.transform.f!==0,a=Jy(t.ctx,()=>{i&&(e.verticalMode?(t.ctx.translate(e.transform.e,e.transform.f),t.ctx.rotate(e.verticalMode===`vert270`?-Math.PI/2:Math.PI/2)):t.ctx.transform(e.transform.a,e.transform.b,e.transform.c,e.transform.d,e.transform.e,e.transform.f))}),o=e.clipBounds?Jy(t.ctx,()=>{t.ctx.beginPath(),t.ctx.rect(e.clipBounds.xPt,e.clipBounds.yPt,e.clipBounds.widthPt,e.clipBounds.heightPt),t.ctx.clip()}):null,s=t.documentDefaultTextColor??t.defaultTextColor??`#000000`,c={...t,pointToCss:r,documentDefaultTextColor:s,defaultTextColor:e.defaultTextColor??s,...e.verticalMode?{textBoxVerticalMode:e.verticalMode}:{}};a(()=>{o?o(()=>n(c))():n(c)})()}function hb(e,t){let n=oy(t.pointToCss??sy(t.scale),e.logicalToPhysical),r={...t,pointToCss:n};Jy(t.ctx,()=>{rb(t.ctx,e.logicalToPhysical)})(()=>{for(let t of e.segments)qy(t,r,.5)})()}const gb=Object.freeze({paint(e,t){throw Error(`Missing retained resource painter for ${e}: expected ${t}`)}});function _b(e,t){return Object.freeze({paint(n,r,i,a){switch(r){case`image`:t.image(e.resolve(n,r),i,a);return;case`chart`:t.chart(e.resolve(n,r),i,a);return;case`math`:t.math(e.resolve(n,r),i,a);return;case`picture-bullet`:t[`picture-bullet`](e.resolve(n,r),i,a);return;default:throw Error(`Unknown retained resource kind: ${String(r)}`)}}})}function vb(e,t){switch(e.kind){case`drawing`:Hy(e,t);return;case`paragraph`:pb(e,t);return;case`table`:tb(e,t,e.resolvedFloatingTables??[]);return;case`note`:{e.separator.forEach(e=>qy(e,t));let n=()=>e.story.blocks.forEach(e=>vb(e,t));if(!e.story.clipBounds){n();return}let r=e.story.clipBounds;t.ctx.save();try{t.ctx.beginPath(),t.ctx.rect(r.xPt,r.yPt,r.widthPt,r.heightPt),t.ctx.clip(),n()}finally{t.ctx.restore()}return}case`textbox`:throw Error(`Unsupported page paint node kind: ${e.kind}`);default:throw Error(`Unknown page paint node kind: ${String(e)}`)}}function yb(e,t){let n=e.columnSeparators;if(n.length===0)return;let{ctx:r}=t;r.save(),r.strokeStyle=`#000000`;for(let e of n){let n=By(e,t.scale,t.dpr);r.lineWidth=n.widthPt,r.beginPath(),r.moveTo(n.segment.start.xPt,n.segment.start.yPt),r.lineTo(n.segment.end.xPt,n.segment.end.yPt),r.stroke()}r.restore()}function bb(e,t,n,r){let i=n.get(e.flowDomainId),a=e.coordinateSpace===`upright-physical`?void 0:i?.coordinateSpace.logicalToPhysical,o=Jy(t.ctx,()=>{a&&(a.a!==1||a.b!==0||a.c!==0||a.d!==1||a.e!==0||a.f!==0)&&rb(t.ctx,a)}),s={...t,...a?{pointToCss:{a:a.a*t.scale,b:a.b*t.scale,c:a.c*t.scale,d:a.d*t.scale,e:a.e*t.scale,f:a.f*t.scale}}:{}};o(()=>r(s))()}function xb(e,t){if(e.kind===`transform`){let n=t.transform;if(n)n.call(t,e.transform.a,e.transform.b,e.transform.c,e.transform.d,e.transform.e,e.transform.f);else if(e.transform.a===1&&e.transform.b===0&&e.transform.c===0&&e.transform.d===1)t.translate(e.transform.e,e.transform.f);else throw Error(`Canvas context cannot apply the retained page paint transform`);return}t.beginPath(),t.rect(e.clip.xPt,e.clip.yPt,e.clip.widthPt,e.clip.heightPt),t.clip()}function Sb(e,t){let n=t.pointToCss??sy(t.scale);for(let t of e.frames)t.kind===`transform`&&(n=oy(n,t.transform));let r={...t,pointToCss:n,layoutTranslationPt:e.layoutTranslationPt,omitAnchoredDrawings:!1},i=0;try{for(let n of e.frames)t.ctx.save(),i+=1,xb(n,t.ctx);ub(e.node,e.textBoxes,r)}finally{for(;i>0;)t.ctx.restore(),--i}}function Cb(e,t){let n=new Map(e.sectionRegions.flatMap(e=>e.flowDomainIds.map(t=>[t,e]))),r=new Map(e.sectionRegions.map(e=>[e.id,e]));for(let t of e.flowDomains)if(t.kind===`footnote`||t.kind===`endnote`){let i=t.sectionRegionId?r.get(t.sectionRegionId):e.sectionRegions[0];if(!i)throw Error(`${t.id} references missing page story region ${t.sectionRegionId??`<default>`}`);n.set(t.id,i)}let i=e.layers.paintOrder,a=i.findIndex(e=>e.sourceLayer!==`background`&&e.sourceLayer!==`behindText`&&e.sourceLayer!==`header`),o=a===-1?i.length:a,s=e=>{for(let r of e)bb(r,t,n,e=>{r.kind===`drawing`?Sb(r,e):vb(r.node,{...e,omitAnchoredDrawings:r.omitAnchoredDrawings})})};e.pageBorder?.zOrder===`back`&&hb(e.pageBorder,t),s(i.slice(0,o)),yb(e,t),s(i.slice(o)),e.pageBorder?.zOrder!==`back`&&e.pageBorder&&hb(e.pageBorder,t)}async function wb(e,t,n,r,i=gb){let a=e.pages[t];if(!a)throw RangeError(`Page ${t} is outside the layout`);let o=n.getContext(`2d`);if(!o)throw Error(`Canvas 2D context is unavailable`);let s=r.scale*r.dpr;n.width=Math.ceil(a.geometry.widthPt*s),n.height=Math.ceil(a.geometry.heightPt*s),o.save();try{o.setTransform(1,0,0,1,0,0),o.clearRect(0,0,n.width,n.height),o.setTransform(s,0,0,s,0,0),Cb(a,{ctx:o,scale:r.scale,dpr:r.dpr,resources:i})}finally{o.restore()}}function Tb(e,t){if(typeof e!=`string`||e.trim().length===0)throw TypeError(`${t} must be a non-empty string`)}function Eb(e){return Tb(e,`unavailable paint resource reason`),Object.freeze({status:`unavailable`,reason:e})}function Db(e){return typeof e==`object`&&!!e&&e.status===`unavailable`&&typeof e.reason==`string`&&e.reason.trim().length>0}function Ob(e){typeof e!=`object`||!e||e.status!==`unavailable`||Tb(e.reason,`unavailable paint resource reason`)}function kb(e,t){let n=new Map;for(let r of t){if(n.has(r.resourceKey))throw Error(`Duplicate paint resource handle: ${r.resourceKey}`);Ob(r.handle),e.resolve(r.resourceKey,r.kind),n.set(r.resourceKey,Object.freeze({kind:r.kind,handle:r.handle}))}let r=Object.freeze([...n.keys()].sort());return Object.freeze({keys:r,resolve(t,r){let i=e.resolve(t,r),a=n.get(t);if(!a)throw Error(`Missing paint resource handle for ${t}: expected ${r}`);if(a.kind!==r)throw Error(`Paint resource kind mismatch for ${t}: expected ${r}, got ${a.kind}`);return Object.freeze({descriptor:i,handle:a.handle})}})}function Ab(e,t){return kb(e,e.descriptors.map(e=>{if(e.kind===`chart`)return{resourceKey:e.resourceKey,kind:e.kind,handle:null};let n=t(e);if(n==null)throw Error(`Missing ${e.kind} paint handle for ${e.resourceKey}`);return{resourceKey:e.resourceKey,kind:e.kind,handle:n}}))}function jb(e){if(!Db(e.handle)){if(e.handle===void 0||e.handle===null)throw Error(`Missing ${e.descriptor.kind} drawable for ${e.descriptor.resourceKey}`);return e.handle}}function Mb(e,t,n){let r=e.descriptor,i=jb(e);if(!i)return;let a=(e,a)=>{go(n,i,r.srcRect,e,a,t.widthPt,t.heightPt)},o=r.alpha!==void 0&&r.alpha<1;o&&(n.save(),n.globalAlpha*=r.alpha);let s=r.rotation??0;s===0&&!r.flipH&&!r.flipV?a(t.xPt,t.yPt):(n.save(),n.translate(t.xPt+t.widthPt/2,t.yPt+t.heightPt/2),n.rotate(s*Math.PI/180),n.scale(r.flipH?-1:1,r.flipV?-1:1),a(-t.widthPt/2,-t.heightPt/2),n.restore()),o&&n.restore()}function Nb(e,t,n){let r=jb(e);r&&n.drawImage(r,t.xPt,t.yPt,t.widthPt,t.heightPt)}const Pb=Object.freeze({image(e,t,n){Mb(e,t,n)},chart(e,t,n){or(n,e.descriptor.model,{x:t.xPt,y:t.yPt,w:t.widthPt,h:t.heightPt},1)},math(e,t,n){Nb(e,t,n)},\"picture-bullet\"(e,t,n){Nb(e,t,n)}}),Fb=new WeakMap;function Ib(e,t){return(t??e.geometry.widthPt*1.3333333333333333)/e.geometry.widthPt}function Lb(e){if(wo(e))return e.ownerDocument??(typeof document>`u`?null:document);let t=e.ownerDocument,n=t?.defaultView?.HTMLCanvasElement;return n&&e instanceof n?t:null}function Rb(e){return Lb(e)!==null}function zb(e,t){let n=Lb(e);if(!t||n&&e.isConnected)return{canvas:e};let r=n??(typeof document>`u`?void 0:document);if(!r)throw Error(`OpenType vertical glyph paint requires an element-backed document surface`);let i=r.body??r.documentElement;if(!i)throw Error(`OpenType vertical glyph paint requires an attached document surface`);let a=r.createElement(`canvas`);return a.setAttribute(`aria-hidden`,`true`),Object.assign(a.style,{position:`fixed`,left:`-99999px`,top:`0`,opacity:`0`,pointerEvents:`none`}),i.appendChild(a),{canvas:a,release:()=>a.remove()}}async function Bb(e,t,n,r){let i=r.fetchImage?Qa(r.fetchImage):void 0,a;try{let i=(Fb.get(n)??0)+1;Fb.set(n,i);let o=()=>Fb.get(n)!==i,s=r.dpr??To(),c=zb(n,!r.parseError&&t.layers.capabilities.requiresElementBackedVerticalGlyphPaint),l=c.canvas;a=c.release;let u=l.getContext(`2d`);if(!u)throw Error(`2D canvas is unavailable for DOCX paint`);let d=Ib(t,r.width),f=t.geometry.widthPt*d,p=t.geometry.heightPt*d,m=Oo(f*s,p*s),h=m.clamped?s*m.scale:s;if(n.width=m.width,n.height=m.height,l!==n&&(l.width=m.width,l.height=m.height),Rb(n)&&(n.style.width=`${f}px`,n.style.height=`${p}px`,n.style.display||(n.style.display=`block`)),Rb(l)&&l!==n&&(l.style.width=`${f}px`,l.style.height=`${p}px`),u.scale(h,h),u.fillStyle=`#ffffff`,u.fillRect(0,0,f,p),r.parseError){await wb(e,0,n,{scale:d,dpr:h});return}let g;try{g=await Ly(r.registry.descriptors,r.fetchImage)}catch(e){if(o())return;throw e}if(o())return;let _=_b(Ab(r.registry,e=>{if(e.kind===`math`)return r.privateResources?.keys.includes(e.resourceKey)?r.privateResources.resolve(e.resourceKey):Eb(`optional math renderer unavailable`);if(e.kind===`image`||e.kind===`picture-bullet`)return g.get(Ny(e.partPath,e.colorReplaceFrom,e.duotone))??Eb(r.fetchImage?`unsupported image format produced no drawable output`:`image byte source unavailable`)}),Pb);u.save();try{u.scale(d,d),Cb(t,{ctx:u,scale:d,dpr:h,resources:_,documentDefaultTextColor:r.defaultTextColor??`#000000`,defaultTextColor:r.defaultTextColor??`#000000`})}finally{u.restore()}if(l!==n){if(o())return;let e=n.getContext(`2d`);if(!e)throw Error(`2D canvas is unavailable for DOCX paint projection`);e.drawImage(l,0,0)}if(r.onTextRun)for(let e of r.textRuns)r.onTextRun(e)}finally{a?.(),i?.()}}var Vb=class extends Error{code=`NOTE_CAPACITY_EXCEEDED`;constructor(e,t,n){super(`${e} story exceeds ${n} on page ${t}`),this.kind=e,this.pageIndex=t,this.containerId=n,this.name=`NoteCapacityExceededError`}};function Hb(e){return Object.freeze({...e,pages:Object.freeze([...e.pages])})}function Ub(e){let{kind:t,region:n,...r}=e,i=hv(r);if(n&&(i=gv(i,n)),t===`content`&&i.sectionRegions.length===0)throw RangeError(`A content page draft requires an initial section region`);if(t===`parity-blank`&&i.sectionRegions.length!==0)throw RangeError(`A parity blank cannot retain a section region`);return Object.freeze({kind:t,accumulator:i})}function Wb(e,t){if(t.kind!==`content`||t.accumulator.pageIndex!==e.pageIndex)throw Error(`The initial body page must be owned by the active flow`);return Hb({flow:e,pages:[t],footnoteReservePt:0,balanceTargetPt:null})}function Gb(e,t){if(t!==null&&(!Number.isFinite(t)||t<0))throw RangeError(`A body balance target must be finite and non-negative`);return Hb({...e,balanceTargetPt:t})}function Kb(e,t){if(!Number.isFinite(t)||t<0)throw RangeError(`A footnote reserve increment must be finite and non-negative`);return t===0?e:Hb({...e,footnoteReservePt:e.footnoteReservePt+t})}function qb(e,t,n){let r=[...e.pages],i=t.state,a=!1;for(let e of t.events){if(e.type===`place`)throw Error(`Occurrence acceptance owns place events`);if(e.type!==`next-column`){if(e.type===`next-page`){if(e.parityBlank)r.push(n.openParityBlankPage(e));else{let a=n.openContentPage(e,t.state);r.push(a.page),i=a.flow}a=!0;continue}if(!a){let t=r.at(-1);if(!t||t.kind!==`content`)throw Error(`A continuous section requires an active content page`);r[r.length-1]=n.openSamePageSectionRegion(t,e,i)}}}let o=r.at(-1);if(!o||o.kind!==`content`||o.accumulator.pageIndex!==i.pageIndex)throw Error(`A page transition must end on the active content page`);return Hb({...e,flow:i,pages:r,footnoteReservePt:a?0:e.footnoteReservePt,balanceTargetPt:a?null:e.balanceTargetPt})}function Jb(e){if(e.length===0)return null;let t=Math.min(...e.map(e=>e.xPt)),n=Math.min(...e.map(e=>e.yPt)),r=Math.max(...e.map(e=>e.xPt+e.widthPt)),i=Math.max(...e.map(e=>e.yPt+e.heightPt));return{xPt:t,yPt:n,widthPt:r-t,heightPt:i-n}}function Yb(e){return{x:!e.horzSpecified||e.horzAnchor!==`page`&&e.horzAnchor!==`margin`,y:e.vertAnchor!==`page`&&e.vertAnchor!==`margin`}}function Xb(e,t){return{...e,xPt:e.xPt+t.xPt,yPt:e.yPt+t.yPt}}function $(e,t){return{...e,xPt:e.xPt+t.xPt,yPt:e.yPt+t.yPt}}function Zb(e,t){return{...e,from:Xb(e.from,t),to:Xb(e.to,t)}}function Qb(e,t){return e.kind===`rect`?{...e,rect:$(e.rect,t)}:{...e,points:e.points.map(e=>Xb(e,t))}}function $b(e,t){return e.kind===`noop`?e:e.kind===`drawingml-shape`||e.kind===`drawingml-image-fill`?{...e,plan:{...e.plan,rect:{...e.plan.rect,x:e.plan.rect.x+t.xPt,y:e.plan.rect.y+t.yPt}}}:{...e,rect:$(e.rect,t)}}function ex(e,t){let n=e.orientation===`upright-physical`?{xPt:0,yPt:0}:t;return{...e,flowBounds:$(e.flowBounds,t),inkBounds:$(e.inkBounds,t),...e.clipBounds?{clipBounds:$(e.clipBounds,t)}:{},...e.transform?{transform:{...e.transform,e:e.transform.e+t.xPt,f:e.transform.f+t.yPt}}:{},...e.clip?{clip:Qb(e.clip,t)}:{},commands:e.commands.map(e=>$b(e,n))}}function tx(e,t,n){let r=`${t.xPt}\\u0000${t.yPt}`,i=n.drawingMemo.get(e);if(i){if(i.key!==r)throw Error(`incompatible projection ownership`);return i.value}let a=ex(e,t);return n.drawingMemo.set(e,{key:r,value:a}),a}function nx(e,t,n){return e.kind===`text`?{...e,origin:Xb(e.origin,t),bounds:$(e.bounds,t),decorations:e.decorations.map(e=>({...e,from:Xb(e.from,t),to:Xb(e.to,t),...e.path?{path:e.path.map(e=>Xb(e,t))}:{}})),...e.highlightFragments?{highlightFragments:e.highlightFragments.map(e=>({...e,rect:$(e.rect,t)}))}:{},...e.ruby?{ruby:{...e.ruby,paintOps:e.ruby.paintOps.map(e=>({...e,origin:Xb(e.origin,t)}))}}:{},...e.emphasis?{emphasis:{...e.emphasis,...e.emphasis.glyphs?{glyphs:e.emphasis.glyphs.map(e=>({...e,origin:Xb(e.origin,t)}))}:{},...e.emphasis.paths?{paths:e.emphasis.paths.map(e=>({...e,points:e.points.map(e=>Xb(e,t))}))}:{}}}:{},...e.runBorderFragments?{runBorderFragments:e.runBorderFragments.map(e=>Zb(e,t))}:{}}:e.kind===`anchor-host`?{...e,bounds:$(e.bounds,t),baselinePt:e.baselinePt+t.yPt}:e.kind===`drawing`?{...e,bounds:$(e.bounds,n?.get(e.drawingId)??t)}:e.kind===`tab`&&(e.leaderGlyphs||e.decorations)?{...e,...e.bounds?{bounds:$(e.bounds,t)}:{},...e.leaderGlyphs?{leaderGlyphs:e.leaderGlyphs.map(e=>({...e,origin:Xb(e.origin,t)}))}:{},...e.decorations?{decorations:e.decorations.map(e=>({...e,from:Xb(e.from,t),to:Xb(e.to,t),...e.path?{path:e.path.map(e=>Xb(e,t))}:{}}))}:{}}:e.bounds?{...e,bounds:$(e.bounds,t)}:e}function rx(e,t,n){return{...e,bounds:$(e.bounds,t),baselinePt:e.baselinePt+t.yPt,placements:e.placements.map(e=>nx(e,t,n)),...e.barTabRules?{barTabRules:e.barTabRules.map(e=>({...e,from:Xb(e.from,t),to:Xb(e.to,t)}))}:{}}}function ix(e,t){let n=e.axes[t];return n.status===`resolved`&&[`page`,`margin`,`leftMargin`,`rightMargin`,`topMargin`,`bottomMargin`].includes(n.referenceFrame)}function ax(e,t){let n=ix(e,`horizontal`)?0:t.xPt,r=ix(e,`vertical`)?0:t.yPt,i={xPt:n,yPt:r},a={horizontal:e.axes.horizontal.status===`resolved`?{...e.axes.horizontal,baseStartPt:e.axes.horizontal.baseStartPt+n,baseEndPt:e.axes.horizontal.baseEndPt+n,resolvedOriginPt:e.axes.horizontal.resolvedOriginPt+n}:e.axes.horizontal,vertical:e.axes.vertical.status===`resolved`?{...e.axes.vertical,baseStartPt:e.axes.vertical.baseStartPt+r,baseEndPt:e.axes.vertical.baseEndPt+r,resolvedOriginPt:e.axes.vertical.resolvedOriginPt+r}:e.axes.vertical};return e.status===`unsupported`?{...e,axes:a}:{...e,axes:a,geometry:{...e.geometry,objectFrame:$(e.geometry.objectFrame,i),inkBounds:$(e.geometry.inkBounds,i),wrapBounds:e.geometry.wrapBounds?$(e.geometry.wrapBounds,i):null,wrap:{...e.geometry.wrap,polygon:e.geometry.wrap.polygon?{...e.geometry.wrap.polygon,points:e.geometry.wrap.polygon.points.map(e=>Xb(e,i))}:null}}}}function ox(e,t){return sx(e,t,{memo:new WeakMap,drawingMemo:new WeakMap})}function sx(e,t,n){let r=`${t.xPt}\\u0000${t.yPt}`,i=n.memo.get(e);if(i){if(i.key!==r)throw Error(`incompatible projection ownership`);return i.value}let a=new Map(e.drawings.flatMap(e=>e.anchorLayer?[[e.anchorLayer.occurrenceId,e.anchorLayer]]:[])),o=new Map,s=new Map;for(let n of e.drawings){let e={xPt:n.anchorLayer?.horizontalOwnership===`page`?0:t.xPt,yPt:n.anchorLayer?.verticalOwnership===`page`?0:t.yPt};s.set(n.id,e),n.textBoxIds?.forEach(t=>o.set(t,n.orientation===`upright-physical`?{xPt:0,yPt:0}:e))}let c=e.drawings.map(e=>tx(e,s.get(e.id)??t,n)),l=Jb(c.filter(e=>e.anchorLayer?.cellContainment===!0).map(e=>e.flowBounds)),u={...e,flowBounds:$(e.flowBounds,t),inkBounds:$(e.inkBounds,t),...e.clipBounds?{clipBounds:$(e.clipBounds,t)}:{},lines:e.lines.map(e=>rx(e,t,s)),borders:e.borders.map(e=>Zb(e,t)),drawings:c,...l?{cellContainmentBounds:l}:{},textBoxes:e.textBoxes.map(e=>lx(e,o.get(e.id)??t,n)),exclusions:e.exclusions.map(e=>{let n=e.anchorOccurrenceId?a.get(e.anchorOccurrenceId):void 0,r={xPt:n?.horizontalOwnership===`page`?0:t.xPt,yPt:e.verticalOwnership===`page`||n?.verticalOwnership===`page`?0:t.yPt};return{...e,bounds:$(e.bounds,r),polygon:e.polygon.map(e=>Xb(e,r))}}),...e.anchorCollisions?{anchorCollisions:e.anchorCollisions.map(e=>({...e,bounds:$(e.bounds,{xPt:e.horizontalOwnership===`page`?0:t.xPt,yPt:e.verticalOwnership===`page`?0:t.yPt})}))}:{},...e.anchorFrames?{anchorFrames:e.anchorFrames.map(e=>ax(e,t))}:{},...e.paragraphMark?{paragraphMark:{...e.paragraphMark,bounds:$(e.paragraphMark.bounds,t)}}:{},...e.lineNumbers?{lineNumbers:e.lineNumbers.map(e=>({...e,bounds:$(e.bounds,t),paintOps:e.paintOps.map(e=>({...e,origin:Xb(e.origin,t)}))}))}:{}};return n.memo.set(e,{key:r,value:u}),u}function cx(e,t){return lx(e,t,{memo:new WeakMap,drawingMemo:new WeakMap})}function lx(e,t,n){let r=e.verticalMode===void 0;return{...e,flowBounds:$(e.flowBounds,t),inkBounds:$(e.inkBounds,t),...e.clipBounds?{clipBounds:r?$(e.clipBounds,t):e.clipBounds}:{},...e.contentBounds?{contentBounds:r?$(e.contentBounds,t):e.contentBounds}:{},transform:r?e.transform:{...e.transform,e:e.transform.e+t.xPt,f:e.transform.f+t.yPt},story:r?{...e.story,flowBounds:$(e.story.flowBounds,t),inkBounds:$(e.story.inkBounds,t),...e.story.clipBounds?{clipBounds:$(e.story.clipBounds,t)}:{},blocks:e.story.blocks.map(e=>{if(e.kind===`paragraph`)return sx(e,t,n);if(e.kind===`table`)return dx(e,t);throw Error(`Text-box story contains unsupported retained node: ${e.kind}`)})}:e.story}}function ux(e,t){return ox(e,t)}function dx(e,t){return{...e,flowBounds:$(e.flowBounds,t),inkBounds:$(e.inkBounds,t),...e.clipBounds?{clipBounds:$(e.clipBounds,t)}:{},borders:e.borders.map(e=>Zb(e,t)),...e.compoundBorderFrames?{compoundBorderFrames:e.compoundBorderFrames.map(e=>({...e,bounds:$(e.bounds,t)}))}:{},rows:e.rows.map(e=>({...e,flowBounds:$(e.flowBounds,t),inkBounds:$(e.inkBounds,t),...e.clipBounds?{clipBounds:$(e.clipBounds,t)}:{},cells:e.cells.map(e=>({...e,flowBounds:$(e.flowBounds,t),inkBounds:$(e.inkBounds,t),...e.clipBounds?{clipBounds:$(e.clipBounds,t)}:{},contentBounds:$(e.contentBounds,t),blocks:e.blocks}))}))}}function fx(e,t){return`${e}/occurrence/${encodeURIComponent(t).replaceAll(`%3A`,`:`)}`}function px(e){if(!Number.isFinite(e.xPt)||!Number.isFinite(e.yPt))throw RangeError(`body occurrence translation must be finite`)}function mx(e){if(e.occurrenceId.length===0)throw RangeError(`occurrenceId must not be empty`);if(e.destination.flowDomainId.length===0)throw RangeError(`flowDomainId must not be empty`);px(e.destination.translation)}function hx(e,t){let n=Yb(e.positioning);return{xPt:n.x?t.xPt:0,yPt:n.y?t.yPt:0}}function gx(e){let t=new WeakSet,n=new WeakSet,r=e=>{if(t.has(e))throw TypeError(`body occurrence layout graph must be acyclic`);if(!n.has(e)){if(t.add(e),e.kind===`paragraph`)for(let t of e.textBoxes)for(let e of t.story.blocks)(e.kind===`paragraph`||e.kind===`table`)&&r(e);else{for(let t of e.rows)for(let e of t.cells)for(let t of e.blocks)r(t.layout);for(let t of e.floatingTables??[])r(t.child);for(let t of e.resolvedFloatingTables??[])r(t.source.child),r(t.child)}t.delete(e),n.add(e)}};r(e)}function _x(e,t){gx(e);let n=new WeakMap,r=new WeakMap,i=e=>`${e.xPt}\\u0000${e.yPt}`,a=(e,t)=>{let n=i(t),a=r.get(e);if(a){if(a.key!==n)throw Error(`incompatible projection ownership`);return a.value}let o=ux(e,t),s=Object.freeze({...o,...e.sectionFlowOwnership===void 0?{}:{sectionFlowOwnership:e.sectionFlowOwnership}});return r.set(e,{key:n,value:s}),s},o=(e,t)=>{let r=i(t),a=n.get(e);if(a){if(a.key!==r)throw Error(`incompatible projection ownership`);return a.value}let s={...dx(e,t),...e.sectionFlowOwnership===void 0?{}:{sectionFlowOwnership:e.sectionFlowOwnership}};n.set(e,{key:r,value:s});let c=new Map,l=new Set;for(let n of e.resolvedFloatingTables??[]){let r=e.resolvedFloatingTableCoordinateSpace!==void 0;c.set(n.source,r?{xPt:0,yPt:0}:hx(n.source,t)),r&&l.add(n.source)}let u=new Map,d=e=>{let n=u.get(e);if(n)return n;let r=c.get(e)??t,i=l.has(e)?{xPt:0,yPt:0}:t,a={...e,anchorBounds:$(e.anchorBounds,i),...e.columnBounds?{columnBounds:$(e.columnBounds,i)}:{},child:o(e.child,r)};return u.set(e,a),a},f=(e.floatingTables??[]).map(d),p=(e.resolvedFloatingTables??[]).map(e=>{let n=d(e.source),r=c.get(e.source)??hx(e.source,t);return{...e,xPt:e.xPt+r.xPt,yPt:e.yPt+r.yPt,bounds:$(e.bounds,r),exclusionBounds:$(e.exclusionBounds,r),child:n.child,source:n}});return(e.floatingTables||e.resolvedFloatingTables)&&Object.assign(s,{floatingTables:f,resolvedFloatingTables:p}),s};return e.kind===`paragraph`?a(e,t):o(e,t)}function vx(e,t){return px(t),_x(e,t)}function yx(e,t){mx(t);let n=_x(e,t.destination.translation),r=encodeURIComponent(t.occurrenceId),i=new WeakMap,a=new WeakMap,o=new WeakMap,s=new Map,c=new Map,l=e=>`${t.occurrenceId}/node/${encodeURIComponent(e)}`,u=e=>`${t.occurrenceId}/anchor/${encodeURIComponent(e)}`,d=e=>fx(t.occurrenceId,e),f=(e,n)=>`${t.destination.flowDomainId}/occurrence/${r}/${e}/${encodeURIComponent(n)}`,p=e=>e.kind===`drawing`?{...e,drawingId:l(e.drawingId)}:e.kind===`anchor-host`&&e.anchorOccurrenceId?{...e,anchorOccurrenceId:u(e.anchorOccurrenceId)}:e,m=(e,t)=>{let n=o.get(e);if(n){if(n.domain!==t)throw Error(`incompatible projection ownership`);return n.value}if(e.anchorLayer){let t=s.get(e.anchorLayer.occurrenceId);if(t&&t!==e)throw Error(`duplicate anchor occurrence owner`);s.set(e.anchorLayer.occurrenceId,e)}let r={...e,id:l(e.id),flowDomainId:t,...e.textBoxIds?{textBoxIds:e.textBoxIds.map(l)}:{},...e.anchorLayer?{anchorLayer:{...e.anchorLayer,occurrenceId:u(e.anchorLayer.occurrenceId),acquisitionOccurrenceId:e.anchorLayer.acquisitionOccurrenceId??e.anchorLayer.occurrenceId}}:{}};return o.set(e,{domain:t,value:r}),r},h=e=>{let t=f(`textbox`,e.id);return{...e,id:l(e.id),flowDomainId:t,story:{...e.story,blocks:e.story.blocks.map(e=>{if(e.kind===`paragraph`)return g(e,t);if(e.kind===`table`)return b(e,t);throw Error(`Text-box story contains unsupported retained node: ${e.kind}`)})}}},g=(e,t)=>{let n=a.get(e);if(n){if(n.domain!==t)throw Error(`incompatible projection ownership`);return n.value}let r={...e,id:l(e.id),flowDomainId:t,lines:e.lines.map(e=>({...e,placements:e.placements.map(p)})),drawings:e.drawings.map(e=>m(e,t)),textBoxes:e.textBoxes.map(h),exclusions:e.exclusions.map(e=>({...e,id:e.verticalOwnership===`page`&&!e.anchorOccurrenceId?e.id:l(e.id),...e.anchorOccurrenceId?{anchorOccurrenceId:u(e.anchorOccurrenceId)}:{}})),...e.anchorCollisions?{anchorCollisions:e.anchorCollisions.map(e=>({...e,occurrenceId:u(e.occurrenceId)}))}:{},...e.anchorFrames?{anchorFrames:e.anchorFrames.map(e=>({...e,occurrenceId:u(e.occurrenceId)}))}:{}};return a.set(e,{domain:t,value:r}),r},_=e=>{let t=f(`cell`,e.id);return{...e,id:l(e.id),flowDomainId:t,blocks:e.blocks.map(e=>({...e,layout:x(e.layout,t)}))}},v=(e,t)=>({...e,id:l(e.id),flowDomainId:t,...`occurrenceId`in e&&typeof e.occurrenceId==`string`?{occurrenceId:d(e.occurrenceId)}:{},cells:e.cells.map(_)}),y=e=>{let t=f(`cell`,e.hostCellId);return{...e,occurrenceId:d(e.occurrenceId),hostCellId:l(e.hostCellId),tableId:l(e.tableId),child:b(e.child,t)}},b=(e,t)=>{let n=i.get(e);if(n){if(n.domain!==t)throw Error(`incompatible projection ownership`);return n.value}let r={...e,id:l(e.id),flowDomainId:t,rows:e.rows.map(e=>v(e,t))};i.set(e,{domain:t,value:r});let a=new Map,o=e=>{let t=a.get(e);if(t)return t;let n=c.get(e.occurrenceId);if(n&&n!==e)throw Error(`duplicate floating placement occurrence owner`);c.set(e.occurrenceId,e);let r=y(e);return a.set(e,r),r},s=(e.floatingTables??[]).map(o),u=(e.resolvedFloatingTables??[]).map(e=>{let t=o(e.source);return{...e,occurrenceId:d(e.occurrenceId),child:t.child,source:t}});return(e.floatingTables||e.resolvedFloatingTables)&&Object.assign(r,{floatingTables:s,resolvedFloatingTables:u}),r};function x(e,t){return e.kind===`paragraph`?g(e,t):b(e,t)}let S=Fu(x(n,t.destination.flowDomainId),`DOCX body occurrence projection`);if(S.kind!==`table`||e.kind!==`table`)return S;let C=Object.isFrozen(e.columnWidthsPt)?e.columnWidthsPt:Object.freeze([...e.columnWidthsPt]);return Object.freeze({...S,columnWidthsPt:C})}var bx=class extends Error{code=`NEXT_COLUMN_DESTINATION_UNAVAILABLE`;constructor(e,t,n,r){super(`nextColumn requires a following column on the current page, but column ${e+1} is unavailable (outgoing columns: ${t}, incoming columns: ${n}, reason: ${r})`),this.outgoingColumnIndex=e,this.outgoingColumnCount=t,this.incomingColumnCount=n,this.reason=r,this.name=`UnsupportedPageFlowTransitionError`}};function xx(e,t){return e.sectionBidi?[...t].reverse():[...t]}function Sx(e){let t=xx(e.section,e.columnSubset);return t[t.indexOf(e.columnIndex)+1]}function Cx(e,t={}){let n=P_(e),r=F_(e),i=t.pageContentStartBlockPt??n,a=t.pageContentEndBlockPt??r,o=t.regionStartBlockPt??i,s=t.regionEndBlockPt??a,c=t.cursorBlockPt??o,l=t.deepestColumnBlockPt??c,u=t.pageIndex??0,d=Object.freeze([...t.columnSubset??e.columns.map((e,t)=>t)]),f=xx(e,d),p=t.columnIndex??f[0]??-1;if(!Number.isInteger(u)||u<0)throw RangeError(`Page index must be a non-negative integer`);if(!Number.isInteger(p)||p<0||p>=e.columns.length)throw RangeError(`Column index must identify a column in the active section`);if(d.length===0||d.some((t,n)=>!Number.isInteger(t)||t<0||t>=e.columns.length||n>0&&t<=d[n-1])||!d.includes(p))throw RangeError(`Column subset must be ordered, unique, and contain the active column`);if(![i,a,o,s,c,l].every(Number.isFinite))throw RangeError(`Page-flow cursors and bounds must be finite`);if(i>o||o>s||s>a||o>c||c>s||c>l)throw RangeError(`Page-flow bounds must contain the region and live cursor`);return Object.freeze({pageIndex:u,columnIndex:p,pageHasContent:t.pageHasContent??!1,cursorBlockPt:c,pageContentStartBlockPt:i,pageContentEndBlockPt:a,regionStartBlockPt:o,regionEndBlockPt:s,columnSubset:d,deepestColumnBlockPt:l,section:e})}function wx(e,t){return Object.freeze({state:e,events:Object.freeze(t.map(e=>Object.freeze({...e})))})}function Tx(e,t,n){if(!Number.isFinite(n)||n<0)throw RangeError(`A flow node charge must be a finite non-negative value`);let r=e.cursorBlockPt,i=r+n;return wx(Object.freeze({...e,pageHasContent:!0,cursorBlockPt:i,deepestColumnBlockPt:Math.max(e.deepestColumnBlockPt,i)}),[{type:`place`,node:t,blockStartPt:r,blockEndPt:i}])}function Ex(e,t){let n=Math.max(e.deepestColumnBlockPt,e.cursorBlockPt),r=Sx(e);if(r!==void 0)return wx(Object.freeze({...e,columnIndex:r,cursorBlockPt:e.regionStartBlockPt,deepestColumnBlockPt:n}),[{type:`next-column`}]);let i=e.pageIndex+1;return wx(Cx(e.section,{pageIndex:i}),[{type:`next-page`,reason:t,pageIndex:i,sectionOccurrenceId:e.section.sectionOccurrenceId,parityBlank:!1}])}function Dx(e,t){return e.kind===t.kind&&e.linePitchPt===t.linePitchPt&&e.charSpacePt===t.charSpacePt}function Ox(e,t){return e.xPt===t.xPt&&e.yPt===t.yPt&&e.widthPt===t.widthPt&&e.heightPt===t.heightPt}function kx(e,t){return e.xPt<t.xPt+t.widthPt&&t.xPt<e.xPt+e.widthPt&&e.yPt<t.yPt+t.heightPt&&t.yPt<e.yPt+e.heightPt}function Ax(e,t,n){let r=n=>{throw new bx(e.columnIndex,e.section.columns.length,t.columns.length,n)},i=cf(e.section.textDirection),a=cf(t.textDirection);i!==a&&r(`writing-mode`);let o=mf({widthPt:e.section.geometry.pageWidth,heightPt:e.section.geometry.pageHeight},i),s=mf({widthPt:t.geometry.pageWidth,heightPt:t.geometry.pageHeight},a);(o.widthPt!==s.widthPt||o.heightPt!==s.heightPt)&&r(`page-extent`);let c=n.incomingPageContentStartBlockPt??P_(t),l=n.incomingPageContentEndBlockPt??F_(t);(c!==e.pageContentStartBlockPt||l!==e.pageContentEndBlockPt)&&r(`block-band`),Dx(e.section.grid,t.grid)||r(`grid`);let u=xx(e.section,e.columnSubset),d=u.indexOf(e.columnIndex),f=u[d+1];if(f===void 0)throw Error(`nextColumn destination resolution requires a same-page successor`);let p=bf(i,o),m=e.section.columns[f],h=vf(p.logicalToPhysical,{xPt:m.xPt,yPt:e.regionStartBlockPt,widthPt:m.wPt,heightPt:e.regionEndBlockPt-e.regionStartBlockPt}),g=t.columns.findIndex(t=>Ox(h,vf(p.logicalToPhysical,{xPt:t.xPt,yPt:e.regionStartBlockPt,widthPt:t.wPt,heightPt:e.regionEndBlockPt-e.regionStartBlockPt})));g<0&&r(`physical-column`);let _=xx(t,t.columns.map((e,t)=>t)),v=_.indexOf(g);v<0&&r(`physical-column`);let y=Object.freeze(_.slice(v).sort((e,t)=>e-t)),b=Object.freeze(u.slice(0,d+1).sort((e,t)=>e-t)),x=(t,n)=>{let r=t.columns[n];return vf(p.logicalToPhysical,{xPt:r.xPt,yPt:e.regionStartBlockPt,widthPt:r.wPt,heightPt:e.regionEndBlockPt-e.regionStartBlockPt})},S=b.map(t=>x(e.section,t));return y.some(e=>{let n=x(t,e);return S.some(e=>kx(e,n))})&&r(`physical-overlap`),Object.freeze({targetColumnIndex:g,targetColumnOrdinal:v,columnSubset:y,outgoingColumnSubset:b})}function jx(e,t,n){let r=e.pageIndex+1;return wx(Cx(t,{pageIndex:r}),[{type:`next-page`,reason:n,pageIndex:r,sectionOccurrenceId:t.sectionOccurrenceId,parityBlank:!1}])}function Mx(e,t){let n=e%2==0;return t===`odd`?n:!n}function Nx(e,t,n,r){let i=e.pageIndex+1,a=[];return r!==void 0&&!Mx(i,r)&&(a.push({type:`next-page`,reason:`parity`,pageIndex:i,sectionOccurrenceId:e.section.sectionOccurrenceId,parityBlank:!0}),i+=1),a.push({type:`next-page`,reason:n,pageIndex:i,sectionOccurrenceId:t.sectionOccurrenceId,parityBlank:!1}),wx(Cx(t,{pageIndex:i}),a)}function Px(e,t,n){return t===`lastRenderedPageBreak`?wx(e,[]):t===`column`?Ex(e,`explicit-break`):t===`pageBreakBefore`&&!e.pageHasContent&&e.columnIndex===xx(e.section,e.columnSubset)[0]&&e.cursorBlockPt===e.pageContentStartBlockPt?wx(e,[]):t===`page`?Nx(e,e.section,`explicit-break`,n):jx(e,e.section,`page-break-before`)}function Fx(e,t,n,r={}){if(n===`continuous`&&!r.hasFootnoteReferenceOnCurrentPage){let n=e.section.columns.length>1?Math.max(e.cursorBlockPt,e.deepestColumnBlockPt):e.cursorBlockPt;return wx(Cx(t,{pageIndex:e.pageIndex,pageContentStartBlockPt:e.pageContentStartBlockPt,pageContentEndBlockPt:e.pageContentEndBlockPt,cursorBlockPt:n,regionStartBlockPt:n,regionEndBlockPt:e.pageContentEndBlockPt,deepestColumnBlockPt:n,pageHasContent:e.pageHasContent}),[{type:`begin-section`,placement:`same-page-block`,section:t,targetColumnOrdinal:0,columnSubset:t.columns.map((e,t)=>t)}])}if(n===`nextColumn`){if(Sx(e)===void 0){let n=jx(e,t,`section-break`);return wx(n.state,[...n.events,{type:`begin-section`,section:t}])}let n=Ax(e,t,r);return wx(Object.freeze({...e,columnIndex:n.targetColumnIndex,columnSubset:n.columnSubset,cursorBlockPt:e.regionStartBlockPt,deepestColumnBlockPt:Math.max(e.deepestColumnBlockPt,e.cursorBlockPt),section:t}),[{type:`next-column`},{type:`begin-section`,placement:`same-page-column`,section:t,targetColumnOrdinal:n.targetColumnOrdinal,columnSubset:n.columnSubset,outgoingColumnSubset:n.outgoingColumnSubset}])}if(n===`continuous`){let n=jx(e,t,`section-break`);return wx(n.state,[...n.events,{type:`begin-section`,section:t}])}let i=Nx(e,t,`section-break`,n===`oddPage`?`odd`:n===`evenPage`?`even`:void 0);return wx(i.state,[...i.events,{type:`begin-section`,section:t}])}function Ix(e,t,n,r){let i=e,a=0;for(let o=e+1;o<=t;o++){let e=r(o);if(!(e<=n))break;i=o,a=e}return{end:i,fitValue:a}}function Lx(e){return!e.widowControl||e.end>=e.totalLines?{kind:`keep`}:e.totalLines-e.end===1&&e.end-e.start>=2?{kind:`dropLastLine`}:e.start===0&&e.end-e.start===1&&e.canRelocate?{kind:`relocate`}:{kind:`keep`}}Z({id:`word-terminal-column-break`,evidence:{kind:`regression-test`,reference:`packages/docx/src/pagination.test.ts#ignores a terminal last-column break before a hard page boundary`},description:`The established pagination regression contract does not materialize a column transition when no body flow content occurs before the next forced page or non-continuous section boundary.`}),Z({id:`word-pre-break-anchor-paragraph`,evidence:{kind:`regression-test`,reference:`packages/docx/src/pagination.test.ts#does not push an anchor-only pre-break paragraph to a new page just for its empty mark`},description:`The established pagination regression contract keeps an anchor-only paragraph immediately before an authored page break in the pre-break flow region without charging its otherwise visible paragraph mark.`}),Z({id:`word-pre-break-inline-drawing-group`,evidence:{kind:`regression-test`,reference:`packages/docx/src/pagination.test.ts#moves a preceding image with its pre-break callout when the pair only fits fresh`},description:`The established pagination regression contract relocates a preceding inline DrawingML resource with an immediately following host-owned anchor paragraph before an authored page break when the pair fits only in a fresh flow region.`}),Z({id:`word-continuous-section-mark-spacing`,evidence:{kind:`regression-test`,reference:`packages/docx/src/body-layout-input.test.ts#projects mutually exclusive collapsed-mark and drop-previous-after roles`},description:`The retained body input projects the established continuous-section empty-mark spacing behavior into one mutually exclusive role before pagination.`}),Z({id:`word-contextual-spacing-per-side`,evidence:{kind:`regression-test`,reference:`packages/docx/src/contextual-spacing-body-paint.test.ts#paints the adjudicated six-case gap table`},description:`For same-style adjacent paragraphs, contextualSpacing removes only the contribution owned by each toggling side; a current-only toggle preserves the previous paragraph spaceAfter contribution.`}),Z({id:`word-empty-keep-next-bridge`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/body-paginator-production.test.ts#bridges an undecorated empty keepNext mark through the following paragraph`},description:`Word print pagination treats an undecorated empty keep-with-next paragraph as a bridge: the following paragraph is admitted completely with the first indivisible content of its successor.`}),Z({id:`word-automatic-keep-next-start-spacing`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/body-paginator-production.test.ts#suppresses leading spacing when a keepNext unit moves to an automatic page`},description:`When automatic overflow relocates a keep-with-next unit to a fresh physical page, suppress the leading paragraph space-before for that grouped relocation without changing ordinary overflow or authored-break spacing.`}),Z({id:`word-trailing-space-after-fit-admission`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/paragraph-pagination.test.ts#admits final visible content when only authored spaceAfter crosses the region edge`},description:`Admit the final visible paragraph content at a flow-region edge when only its authored trailing space crosses the edge, while retaining that space for placement and paint.`}),Z({id:`word-vertical-rl-final-line-baseline-admission`,evidence:{kind:`office-observation`,syntheticFixtureId:`vertical-rl-final-line-baseline-admission`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`In a vertical-rl section, Word admits the final visible text column when its transformed baseline and retained visible ink remain inside the block-end edge even if the complete logical line box crosses that edge. The complete retained advance remains authoritative after admission.`}),Z({id:`word-lowered-drop-cap-anchor-leading`,evidence:{kind:`office-observation`,syntheticFixtureId:`lowered-drop-cap-anchor-leading`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`Word keeps the following anchor text below a baseline-lowered drop-cap glyph while preserving the drop cap exclusion height authored by framePr lines. ECMA-376 specifies those two inputs independently but does not prescribe this interaction.`});function Rx(e){return Math.max(0,e)}function zx(e){return e===`none`}function Bx(e){return Math.max(0,e.advancePt-Math.min(e.authoredSpaceAfterPt,e.retainedSpaceAfterPt))}function Vx(e){return e.origin.yPt+(e.inkBounds?.descentPt??0)}function Hx(e){if(e.kind===`resource`||e.kind===`drawing`)return e.bounds.yPt+e.bounds.heightPt;if(e.kind===`anchor-host`)return null;if(e.kind===`tab`){let t=e.leaderGlyphs??[];return t.length>0?Math.max(...t.map(Vx)):null}let t=e.paintOps??[],n=t.length>0?t.map(t=>e.origin.yPt+t.offset.yPt+(t.blockAxisInkBounds?.endPt??t.inkBounds?.descentPt??0)):[e.origin.yPt];for(let t of e.decorations){let e=t.widthPt/2;n.push(t.from.yPt+e,t.to.yPt+e);for(let r of t.path??[])n.push(r.yPt+e)}for(let t of e.highlightFragments??[])n.push(t.rect.yPt+t.rect.heightPt);for(let t of e.runBorderFragments??[]){let e=t.widthPt/2;n.push(t.from.yPt+e,t.to.yPt+e)}for(let t of e.emphasis?.glyphs??[])n.push(Vx(t));for(let t of e.ruby?.paintOps??[])n.push(Vx(t));for(let t of e.emphasis?.paths??[]){let e=t.stroke===null?0:t.strokeWidthPt/2;for(let r of t.points)n.push(r.yPt+e)}return Math.max(...n)}function Ux(e){if(e.writingMode!==`vertical-rl`||e.logicalLineBoxExtentPt<=e.availableBlockExtentPt)return e.logicalLineBoxExtentPt;let t=e.paragraph.lines.at(-1);if(!t||t.placements.some(e=>e.kind===`text`&&(e.paintOps??[]).some(e=>e.glyphOrientation!==void 0&&e.blockAxisInkBounds===void 0)))return e.logicalLineBoxExtentPt;let n=t.placements.flatMap(e=>{let t=Hx(e);return t===null?[]:[t]});if(n.length===0||e.paragraph.shading)return e.logicalLineBoxExtentPt;for(let t of e.paragraph.borders){let e=t.widthPt/2;n.push(t.from.yPt+e,t.to.yPt+e)}if(e.paragraph.paragraphMark&&!e.paragraph.paragraphMark.hidden){let t=e.paragraph.paragraphMark.bounds;n.push(t.yPt+t.heightPt)}return Math.max(0,Math.max(...n)-e.paragraph.flowBounds.yPt)}function Wx(e){return e.keepNext&&e.inkless&&e.undecoratedMark}function Gx(e,t){let n=e[t];if(n?.kind!==`body-block`||n.block.kind!==`paragraph`)return;let r=e[t+1],i=e[t+2],a=n.block.inkless===!0&&r?.kind===`begin-section`&&r.section.startType===`continuous`;return a&&n.block.spaceBeforePt===0?`collapse-mark`:a?`suppress-before`:n.block.inkless===!0&&r?.kind===`body-block`&&r.block.kind===`paragraph`&&r.block.inkless===!0&&r.block.spaceBeforePt===0&&i?.kind===`begin-section`&&i.section.startType===`continuous`?`drop-previous-after`:void 0}function Kx(e){return e.drawings.length>0&&e.lines.every(e=>e.placements.every(e=>e.kind===`drawing`||e.kind===`anchor-host`))}function qx(e){return e.lines.some(e=>e.placements.some(e=>(e.kind===`resource`&&(e.resourceKind===`image`||e.resourceKind===`chart`)||e.kind===`drawing`)&&e.advancePt>0&&e.bounds!==void 0&&e.bounds.widthPt>0&&e.bounds.heightPt>0))}function Jx(e,t){if(!Kx(e))return null;let n=e.drawings.filter(e=>e.anchorLayer?.verticalOwnership===`host`&&Number.isFinite(e.flowBounds.xPt)&&Number.isFinite(e.flowBounds.yPt)&&Number.isFinite(e.flowBounds.widthPt)&&Number.isFinite(e.flowBounds.heightPt)&&e.flowBounds.widthPt>0&&e.flowBounds.heightPt>0);if(n.length!==e.drawings.length)return null;let r=Math.max(...n.map(e=>e.flowBounds.yPt+e.flowBounds.heightPt));return Math.max(0,r-t)}function Yx(e){if(!Kx(e))return null;let{paragraphMark:t,...n}=e;return Object.freeze({...n,advancePt:0,flowBounds:Object.freeze({...e.flowBounds,heightPt:0})})}function Xx(e){let t=new Set,n=!1;for(let r=e.length-1;r>=0;--r){let i=e[r];if(i.kind===`body-block`){n=i.block.kind!==`paragraph`||!i.block.pageBreakBefore;continue}if(i.kind===`adjacent-table-group`){n=!0;continue}if(i.kind===`authored-break`){i.break===`column`?n&&t.add(r):n=!1;continue}i.kind===`begin-section`&&i.section.startType!==`continuous`&&(n=!1)}return t}function Zx(e,t,n,r,i=-1/0,a=!0,o=!1){return ol(e,t,{firstContentSi:n,lastDrawnSi:r,minPerGap:i,seaClusterGaps:o,...a?{}:{isGapChar:()=>!1}})}function Qx(e){if(!e)return 0;let t=0;for(let n of e.perSeg.values())t+=n.splitBefore.length+ +!!n.trailingGap;return e.perGap*t}function $x(e,t,n,r,i){return t>=0?null:Zx(e,t,n,r,-i*.25,!1)}const eS=[`U`,`C`,`D`,`L`,`R`,`T`],tS=[0,173,174,768,880,1155,1162,1425,1470,1471,1472,1473,1475,1476,1478,1479,1480,1552,1563,1564,1565,1568,1569,1570,1574,1575,1576,1577,1578,1583,1587,1600,1601,1608,1609,1611,1632,1646,1648,1649,1652,1653,1656,1672,1690,1728,1729,1731,1740,1741,1742,1743,1744,1746,1748,1749,1750,1757,1759,1765,1767,1769,1770,1774,1776,1786,1789,1791,1792,1807,1808,1809,1810,1813,1818,1822,1823,1832,1833,1834,1835,1836,1837,1839,1840,1867,1869,1870,1881,1884,1899,1901,1905,1906,1907,1909,1912,1914,1920,1958,1969,1994,2027,2036,2042,2043,2045,2046,2070,2074,2075,2084,2085,2088,2089,2094,2112,2113,2118,2120,2121,2122,2132,2133,2134,2137,2140,2144,2145,2146,2150,2151,2152,2153,2155,2160,2179,2182,2183,2185,2190,2191,2192,2199,2208,2218,2221,2222,2223,2225,2227,2233,2234,2249,2250,2274,2275,2307,2362,2363,2364,2365,2369,2377,2381,2382,2385,2392,2402,2404,2433,2434,2492,2493,2497,2501,2509,2510,2530,2532,2558,2559,2561,2563,2620,2621,2625,2627,2631,2633,2635,2638,2641,2642,2672,2674,2677,2678,2689,2691,2748,2749,2753,2758,2759,2761,2765,2766,2786,2788,2810,2816,2817,2818,2876,2877,2879,2880,2881,2885,2893,2894,2901,2903,2914,2916,2946,2947,3008,3009,3021,3022,3072,3073,3076,3077,3132,3133,3134,3137,3142,3145,3146,3150,3157,3159,3170,3172,3201,3202,3260,3261,3263,3264,3270,3271,3276,3278,3298,3300,3328,3330,3387,3389,3393,3397,3405,3406,3426,3428,3457,3458,3530,3531,3538,3541,3542,3543,3633,3634,3636,3643,3655,3663,3761,3762,3764,3773,3784,3791,3864,3866,3893,3894,3895,3896,3897,3898,3953,3967,3968,3973,3974,3976,3981,3992,3993,4029,4038,4039,4141,4145,4146,4152,4153,4155,4157,4159,4184,4186,4190,4193,4209,4213,4226,4227,4229,4231,4237,4238,4253,4254,4957,4960,5906,5909,5938,5940,5970,5972,6002,6004,6068,6070,6071,6078,6086,6087,6089,6100,6109,6110,6151,6152,6154,6155,6158,6159,6160,6176,6265,6277,6279,6313,6314,6315,6432,6435,6439,6441,6450,6451,6457,6460,6679,6681,6683,6684,6742,6743,6744,6751,6752,6753,6754,6755,6757,6765,6771,6781,6783,6784,6832,6878,6880,6892,6912,6916,6964,6965,6966,6971,6972,6973,6978,6979,7019,7028,7040,7042,7074,7078,7080,7082,7083,7086,7142,7143,7144,7146,7149,7150,7151,7154,7212,7220,7222,7224,7376,7379,7380,7393,7394,7401,7405,7406,7412,7413,7416,7418,7616,7680,8203,8204,8205,8206,8208,8234,8239,8288,8293,8298,8304,8400,8433,11503,11506,11647,11648,11744,11776,12330,12334,12441,12443,42607,42611,42612,42622,42654,42656,42736,42738,43010,43011,43014,43015,43019,43020,43045,43047,43052,43053,43072,43122,43123,43204,43206,43232,43250,43263,43264,43302,43310,43335,43346,43392,43395,43443,43444,43446,43450,43452,43454,43493,43494,43561,43567,43569,43571,43573,43575,43587,43588,43596,43597,43644,43645,43696,43697,43698,43701,43703,43705,43710,43712,43713,43714,43756,43758,43766,43767,44005,44006,44008,44009,44013,44014,64286,64287,65024,65040,65056,65072,65279,65280,65529,65532,66045,66046,66272,66273,66422,66427,68097,68100,68101,68103,68108,68112,68152,68155,68159,68160,68288,68293,68294,68295,68296,68297,68299,68301,68302,68307,68311,68312,68317,68318,68321,68322,68324,68325,68327,68331,68335,68336,68480,68481,68482,68483,68486,68489,68490,68492,68493,68494,68496,68497,68498,68521,68525,68527,68864,68865,68898,68899,68900,68904,68969,68974,69291,69293,69314,69315,69317,69318,69320,69370,69376,69424,69427,69428,69445,69446,69457,69460,69461,69488,69492,69494,69506,69510,69552,69553,69554,69556,69559,69560,69561,69563,69565,69566,69568,69569,69570,69572,69573,69577,69578,69579,69580,69633,69634,69688,69703,69744,69745,69747,69749,69759,69762,69811,69815,69817,69819,69826,69827,69888,69891,69927,69932,69933,69941,70003,70004,70016,70018,70070,70079,70089,70093,70095,70096,70191,70194,70196,70197,70198,70200,70206,70207,70209,70210,70367,70368,70371,70379,70400,70402,70459,70461,70464,70465,70502,70509,70512,70517,70587,70593,70606,70607,70608,70609,70610,70611,70625,70627,70712,70720,70722,70725,70726,70727,70750,70751,70835,70841,70842,70843,70847,70849,70850,70852,71090,71094,71100,71102,71103,71105,71132,71134,71219,71227,71229,71230,71231,71233,71339,71340,71341,71342,71344,71350,71351,71352,71453,71454,71455,71456,71458,71462,71463,71468,71727,71736,71737,71739,71995,71997,71998,71999,72003,72004,72148,72152,72154,72156,72160,72161,72193,72203,72243,72249,72251,72255,72263,72264,72273,72279,72281,72284,72330,72343,72344,72346,72544,72545,72546,72549,72550,72551,72752,72759,72760,72766,72767,72768,72850,72872,72874,72881,72882,72884,72885,72887,73009,73015,73018,73019,73020,73022,73023,73030,73031,73032,73104,73106,73109,73110,73111,73112,73459,73461,73472,73474,73526,73531,73536,73537,73538,73539,73562,73563,78896,78913,78919,78934,90398,90410,90413,90416,92912,92917,92976,92983,94031,94032,94095,94099,94180,94181,113821,113823,113824,113828,118528,118574,118576,118599,119143,119146,119155,119171,119173,119180,119210,119214,119362,119365,121344,121399,121403,121453,121461,121462,121476,121477,121499,121504,121505,121520,122880,122887,122888,122905,122907,122914,122915,122917,122918,122923,123023,123024,123184,123191,123566,123567,123628,123632,124140,124144,124398,124400,124643,124644,124646,124647,124654,124656,124661,124662,125136,125143,125184,125252,125260,917505,917506,917536,917632,917760,918e3],nS=[0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,2,0,4,2,4,2,4,2,4,2,1,2,4,2,5,0,2,5,4,0,4,2,4,2,4,2,4,2,4,2,4,2,4,0,4,5,0,5,0,5,0,5,4,0,2,0,2,0,5,4,5,2,4,2,4,2,4,2,4,2,4,2,4,5,0,4,2,4,2,4,2,4,2,4,2,4,2,0,5,0,2,5,0,1,0,5,0,5,0,5,0,5,0,5,0,4,2,4,2,4,2,4,2,4,5,0,2,0,2,0,4,2,4,0,4,1,2,0,2,4,2,0,5,2,4,0,4,2,4,2,4,2,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,2,0,1,5,0,5,0,2,0,5,2,5,2,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,1,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,2,3,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,2,4,0,4,0,4,0,3,4,2,3,2,4,2,4,0,4,5,0,2,4,0,2,4,2,4,2,4,2,4,2,4,2,4,0,4,2,0,3,2,4,2,5,0,5,0,5,0,4,2,0,2,0,5,0,2,4,2,0,5,2,4,0,2,4,2,5,0,2,0,2,4,0,2,4,2,4,2,0,2,4,2,0,4,2,3,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,5,0,2,5,0,5,0,5,0,5,0],rS=[1587,1588,1589,1590,1690,1691,1692,1693,1694,1786,1787,1884,1901,1904,1917,1918,2223],iS=[1580,1581,1582,1665,1666,1667,1668,1669,1670,1671,1727,1879,1880,1902,1903,1906,1916,2186,2210,2241,2245,2246],aS=[1576,1578,1579,1646,1657,1658,1659,1660,1661,1662,1663,1664,1872,1873,1874,1875,1876,1877,1878,2208,2209,2230,2231,2232,2238,2239,2240],oS=[1574,1585,1586,1597,1598,1599,1609,1610,1656,1681,1682,1683,1684,1685,1686,1687,1688,1689,1740,1742,1744,1745,1775,1883,1899,1900,1905,1909,1910,1911,2216,2217,2218,2226,2233,2234,69319],sS=[1570,1571,1573,1575,1591,1592,1595,1596,1603,1604,1649,1650,1651,1653,1695,1705,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1890,1891,1892,1898,1907,1908,1919,2160,2161,2162,2163,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177,2178,2187,2188,2189,2211,2214,2224,2228,2242,2247,2248,69315,69316],cS=[1572,1593,1594,1601,1602,1608,1647,1654,1655,1696,1697,1698,1699,1700,1701,1702,1703,1704,1732,1733,1734,1735,1736,1737,1738,1739,1743,1788,1885,1886,1887,1888,1889,1912,1913,2212,2213,2219,2227,2229,2243];function lS(e){let t=0,n=tS.length-1,r=-1;for(;t<=n;){let i=t+(n-t>>1);tS[i]<=e?(r=i,t=i+1):n=i-1}return r<0?`U`:eS[nS[r]]??`U`}function uS(e){let t=lS(e);return t===`D`||t===`L`||t===`C`}function dS(e){let t=lS(e);return t===`D`||t===`R`||t===`C`}const fS=new Set([1575,1570,1571,1573,1649]),pS=new Set(rS),mS=new Set(iS),hS=new Set(aS),gS=new Set(oS),_S=new Set(sS),vS=new Set(cS);var yS=function(e){return e[e.Normal=7]=`Normal`,e[e.Waw=8]=`Waw`,e[e.BaRa=9]=`BaRa`,e[e.Alef=10]=`Alef`,e[e.HahDal=11]=`HahDal`,e[e.Seen=12]=`Seen`,e[e.Kashida=13]=`Kashida`,e}(yS||{});function bS(e){let t=[...e].map(e=>e.codePointAt(0)),n=[],r=t.length>0&&lS(t[0])!==`T`?0:-1;for(let e=1;e<t.length;e++){let i=t[e];if(lS(i)!==`T`){if(r>=0){let a=t[r];!(a===1604&&fS.has(i))&&uS(a)&&dS(i)&&n.push(e)}r=e}}return n}function xS(e,t,n){let r=t-1;for(;r>=0&&lS(e[r])===`T`;)r--;let i=e[r],a=e[t];return i===1600?yS.Kashida:pS.has(i)?yS.Seen:mS.has(i)?yS.HahDal:uh(t,n)&&_S.has(a)?yS.Alef:hS.has(i)&&gS.has(a)?yS.BaRa:uh(t,n)&&vS.has(a)?yS.Waw:yS.Normal}function SS(e){let t=[...e],n=[];for(let e=0;e<t.length;){for(;e<t.length&&/\\s/u.test(t[e]);)e++;if(e>=t.length)break;let r=e+1;for(;r<t.length&&!/\\s/u.test(t[r]);)r++;let i=t.slice(e,r),a=i.map(e=>e.codePointAt(0)),o=a.length-1;for(;o>=0&&lS(a[o])===`T`;)o--;let s=-1,c=-1;for(let e of bS(i.join(``))){let t=xS(a,e,o);t>=c&&(s=e,c=t)}s>=0&&n.push({beforeCp:e+s,priority:c}),e=r}return n}function CS(e,t){let n=[...e],r=``;for(let e=0;e<n.length;e++){let i=t.get(e)??0;i>0&&(r+=`ـ`.repeat(i)),r+=n[e]}return r}function wS(e,t,n,r){if(t<=.5)return null;let i=[];for(let t=0;t<e.length;t++){let n=e[t].text;if(n!==void 0)for(let{beforeCp:e,priority:r}of SS(n))i.push({si:t,beforeCp:e,priority:r,textOrder:i.length})}if(i.length===0)return null;i.sort((e,t)=>t.priority-e.priority||e.textOrder-t.textOrder);let a=n===`low`?1:n===`medium`?2:1/0,o=a,s=i.length*64,c=new Map,l=new Map,u=new Map;for(let{si:t}of i){if(u.has(t))continue;let n=r(t,e[t].text);l.set(t,n),u.set(t,n)}let d=t,f=0;for(let t=0;t<o&&d>.5&&f<s;t++){let t=!1;for(let{si:n,beforeCp:o}of i){if(d<=.5||f>=s)break;let i=c.get(n);i||(i=new Map,c.set(n,i));let l=i.get(o)??0;if(l>=a)continue;i.set(o,l+1);let p=r(n,CS(e[n].text,i)),m=p-u.get(n);m>0&&m<=d+1e-6?(u.set(n,p),d-=m,f++,t=!0):l===0?i.delete(o):i.set(o,l)}if(!t)break}let p=new Map;for(let[t,n]of c){let r=[...n.entries()].filter(([,e])=>e>0).sort(([e],[t])=>e-t).map(([e,t])=>({beforeCp:e,count:t}));r.length!==0&&p.set(t,{text:CS(e[t].text,n),insertions:r,advanceDeltaPx:u.get(t)-l.get(t)})}if(p.size===0)return null;let m=[...p.values()].reduce((e,t)=>e+t.advanceDeltaPx,0);return{perSeg:p,appliedPx:m,residualPx:t-m}}function TS(e){return Object.freeze({status:`unsupported`,command:Object.freeze({kind:`noop`}),diagnostics:Object.freeze([Object.freeze({code:`UNSUPPORTED_FEATURE`,severity:`error`,message:e})])})}function ES(e){return e?{type:e.type,w:e.w,len:e.len}:void 0}function DS(e){if(e)return e.fillType===`gradient`?{fillType:`gradient`,stops:e.stops.map(e=>({position:e.position,color:e.color})),angle:e.angle,gradType:e.gradType,...e.scaled===void 0?{}:{scaled:e.scaled},...e.path===void 0?{}:{path:e.path},...e.fillToRect===void 0?{}:{fillToRect:{...e.fillToRect}},...e.tileRect===void 0?{}:{tileRect:{...e.tileRect}},...e.flip===void 0?{}:{flip:e.flip},...e.rotWithShape===void 0?{}:{rotWithShape:e.rotWithShape}}:{fillType:`pattern`,fg:e.fg,bg:e.bg,preset:e.preset}}function OS(e){if(!e.stroke||!e.strokeWidth||e.strokeWidth<=0)return null;let t=DS(e.strokeFill);return{color:e.stroke,width:e.strokeWidth,...t?{fill:t}:{},...e.strokeDash?{dashStyle:e.strokeDash}:{},...e.strokeCustomDash?.length?{customDash:e.strokeCustomDash}:{},...e.strokeCap?{lineCap:e.strokeCap}:{},...e.strokeJoin?{lineJoin:e.strokeJoin}:{},...e.strokeMiterLimit!==void 0&&e.strokeMiterLimit!==null?{miterLimit:e.strokeMiterLimit}:{},...e.strokeAlignment?{alignment:e.strokeAlignment}:{},...e.strokeCompound?{cmpd:e.strokeCompound}:{},...ES(e.headEnd)?{headEnd:ES(e.headEnd)}:{},...ES(e.tailEnd)?{tailEnd:ES(e.tailEnd)}:{}}}function kS(e,t,n,r,i){let a=r!==void 0&&(r.textPathOk!==void 0||r.on!==void 0||r.fitShape!==void 0||r.fitPath!==void 0||r.trim!==void 0||r.xScale!==void 0);if(r!==void 0&&(!a||r.textPathOk===!0&&r.on===!0)){if(e.fill?.fillType===`image`)return TS(`VML textPath with a DrawingML image fill is not rendered`);if(r.fitPath===!0)return TS(`VML textPath fitPath=true is not rendered`);if(r.xScale===!0)return TS(`VML textPath xScale=true is not rendered`);if(r.string.trim().length===0)return Object.freeze({status:`planned`,command:Object.freeze({kind:`noop`})});if(!n)throw Error(`Shape textPath acquisition requires TextLayoutService`);let i=a?r.fitShape===!0:!0;if(r.fontSizePt!==void 0&&(!Number.isFinite(r.fontSizePt)||r.fontSizePt<0))throw RangeError(`VML textPath fontSizePt must be finite and non-negative`);if(!i&&r.fontSizePt===void 0)return TS(`VML textPath fitShape=false requires an authored font-size`);if(r.fontSizePt===0)return Object.freeze({status:`planned`,command:Object.freeze({kind:`noop`})});let o=r.fontSizePt??1,s=r.fontFamily??void 0,c=n.shape({text:r.string,fontSizePt:o,fonts:{ascii:s,highAnsi:s,eastAsia:s,complexScript:s},weight:r.bold?700:400,style:r.italic?`italic`:`normal`,measure:!0});if(r.trim===!0&&!c.inkBounds)return TS(`VML textPath trim=true requires glyph ink bounds`);let l=r.trim===!0?c.inkBounds?.xMinPt??0:0,u=r.trim===!0?c.inkBounds?.xMaxPt??0:c.advancePt,d=r.trim===!0?c.inkBounds?.ascentPt??0:c.ascentPt,f=r.trim===!0?c.inkBounds?.descentPt??0:c.descentPt,p={xPt:l,yPt:-d,widthPt:u-l,heightPt:d+f};if(!Number.isFinite(c.advancePt)||Object.values(p).some(e=>!Number.isFinite(e))||c.spans.some(e=>!Number.isFinite(e.advancePt)))throw Error(`Shape textPath acquisition produced non-finite metrics`);return p.widthPt<=0||p.heightPt<=0||c.spans.length===0?TS(`VML textPath produced empty glyph metrics`):Object.freeze({status:`planned`,command:Fu({kind:`watermark-text`,rect:{...t},text:r.string,fill:e.fill?{...e.fill,...e.fill.fillType===`gradient`?{stops:e.fill.stops.map(e=>({...e}))}:{}}:null,opacity:Math.max(0,Math.min(1,e.fillOpacity??1)),rotationDeg:e.rotation??0,fitShape:i,fontSizePt:o,sourceBounds:p,spans:c.spans.map(e=>({text:e.text,advancePt:e.advancePt,fontRoute:e.fontRoute,fontWeight:e.font.weight,fontStyle:e.font.style}))},`VML textPath command`)})}let o={rect:{x:t.xPt,y:t.yPt,w:t.widthPt,h:t.heightPt},geometry:e.presetGeometry?{kind:`preset`,name:e.presetGeometry,adjustments:[...e.adjValues??[]]}:{kind:`custom`,subpaths:e.subpaths.map(e=>e.map(e=>({...e})))},fill:e.fill&&e.fill.fillType!==`image`?{...e.fill,...e.fill.fillType===`gradient`?{stops:e.fill.stops.map(e=>({...e}))}:{}}:null,stroke:OS(e),transform:{rotationDeg:e.rotation??0,flipH:e.flipH??!1,flipV:e.flipV??!1}};if(e.fill?.fillType===`image`){if(e.fill.tile!==void 0)return Object.freeze({status:`unsupported`,command:Object.freeze({kind:`noop`}),diagnostics:Object.freeze([Object.freeze({code:`UNSUPPORTED_FEATURE`,severity:`error`,message:`Tiled DrawingML shape image fills are not rendered`})])});if(!i)throw Error(`DrawingML shape image fill requires a retained image resource key`);return Object.freeze({status:`planned`,command:Fu({kind:`drawingml-image-fill`,plan:o,resourceKey:i,...e.fill.fillRect===void 0?{}:{fillRect:{l:e.fill.fillRect.l??0,t:e.fill.fillRect.t??0,r:e.fill.fillRect.r??0,b:e.fill.fillRect.b??0}}},`DrawingML shape image-fill command`)})}return Object.freeze({status:`planned`,command:Fu({kind:`drawingml-shape`,plan:o},`DrawingML shape command`)})}function AS(e,t){let n=e.fontFamily??null;return{fontSizePt:t,fonts:{ascii:n,highAnsi:n,eastAsia:e.fontFamilyEastAsia??n,complexScript:n},weight:400,style:`normal`,complexScript:!1}}function jS(e,t={story:`textbox`,storyInstance:`shape`,path:[]},n=AS){return Fu((e.textBlocks??[]).map((e,r)=>{let i={story:`textbox`,storyInstance:t.storyInstance,path:[...t.path,r]},a=e.runs?.length?e.runs:[{text:e.text,fontSizePt:e.fontSizePt,color:e.color,fontFamily:e.fontFamily,bold:e.bold,italic:e.italic}],o=e.paragraphMarkColor===void 0?e.color??a[0]?.color:e.paragraphMarkColor??void 0,s=e.numbering?{...e.numbering,...e.numbering.color==null&&!e.numbering.colorAuto&&o?{color:o}:{}}:null;return{source:i,spacing:{beforePt:e.spaceBefore??0,afterPt:e.spaceAfter??0},runs:a.map(t=>({text:t.text,fontSizePt:t.fontSizePt,...t.color??e.color?{color:`#${t.color??e.color}`}:{},...t.fontFamily||e.fontFamily?{fontFamily:t.fontFamily??e.fontFamily??void 0}:{},...t.fontFamilyEastAsia?{fontFamilyEastAsia:t.fontFamilyEastAsia}:{},bold:t.bold??e.bold??!1,italic:t.italic??e.italic??!1,...t.ruby?{ruby:t.ruby}:{}})),alignment:e.alignment??`left`,indentLeftPt:e.indentLeft??0,indentRightPt:e.indentRight??0,indentFirstPt:e.indentFirst??0,lineSpacing:e.lineSpacingVal==null?null:{value:e.lineSpacingVal,rule:e.lineSpacingRule===`exact`||e.lineSpacingRule===`atLeast`?e.lineSpacingRule:`auto`,explicit:!0},tabStops:(e.tabStops??[]).map(e=>({...e})),...e.bidi===void 0?{}:{bidi:e.bidi},contextualSpacing:e.contextualSpacing??!1,...e.styleId===void 0?{}:{styleId:e.styleId},...s?{numbering:s,numberingMarkerShapeInput:n(s,e.fontSizePt)}:{},...e.imagePath?{image:{imagePath:e.imagePath,mimeType:e.mimeType??`application/octet-stream`,...e.svgImagePath?{svgImagePath:e.svgImagePath}:{},widthPt:e.imageWidthPt??0,heightPt:e.imageHeightPt??0}}:{}}}),`DOCX text box acquisition input`)}function MS(e){if(!Number.isFinite(e.advancePt)||e.advancePt<=0)throw RangeError(`Tab leader glyph advance must be finite and positive`);let t=Math.floor(e.interval.widthPt/e.advancePt),n=e.interval.widthPt-t*e.advancePt;return Array.from({length:t},(t,r)=>({text:e.glyph,origin:{xPt:e.interval.xPt+n/2+r*e.advancePt,yPt:e.baselinePt},fontRoute:e.fontRoute,fontSizePt:e.fontSizePt,fontWeight:e.fontWeight,fontStyle:e.fontStyle,color:e.color}))}function NS(e){let t;if(e.raisePt!==void 0)t=e.baseOrigin.yPt-e.raisePt;else if(e.baseInkTopPt!==void 0&&e.guideInkBottomFromBaselinePt!==void 0)t=e.baseInkTopPt-e.guideInkBottomFromBaselinePt;else throw Error(`Ruby geometry requires authored w:hpsRaise or retained base/guide ink bounds`);let n=e.baseOrigin.xPt+(e.baseAdvancePt-e.guideAdvancePt)/2;return e.spans.map(e=>({text:e.text,origin:{xPt:n+e.offsetPt,yPt:t},fontRoute:e.fontRoute,fontSizePt:e.fontSizePt,fontWeight:e.fontWeight,fontStyle:e.fontStyle,color:e.color}))}function PS(e){return-(e.inkBounds?.ascentPt??e.ascentPt)}function FS(e){return e.inkBounds?.descentPt??e.descentPt}function IS(e){let t=e.inkBounds?e.inkBounds.ascentPt+e.inkBounds.descentPt:Math.min(e.ascentPt,e.descentPt);if(!Number.isFinite(t)||t<=0)throw Error(`Retained decoration probe requires positive selected-face ink`);return t}function LS(e){return e===`double`||e===`dbl`?`double`:e?.includes(`dot`)?`dotted`:e?.includes(`dash`)?`dashed`:e?.includes(`wave`)?`wavy`:`solid`}function RS(e,t,n){let r=Math.max(0,t.xPt-e.xPt),i=n*2,a=Math.max(1,Math.ceil(r/i));return Array.from({length:a+1},(t,i)=>({xPt:e.xPt+r*i/a,yPt:e.yPt+(i%2==0?-n/2:n/2)}))}function zS(e){let t=[],n=e.origin.xPt+e.advancePt;if(e.underline){let r=IS(e.underline.probe),i=e.origin.yPt+(PS(e.underline.probe)+FS(e.underline.probe))/2,a=e.origin.yPt+FS(e.base)+r/2,o=Math.max(i,a),s=LS(e.underline.authoredStyle),c={kind:`underline`,...e.underline.authoredStyle===void 0?{}:{authoredStyle:e.underline.authoredStyle},color:e.underline.color,widthPt:r};if(s===`double`){let i=o+r*2;t.push({...c,style:`solid`,from:{xPt:e.origin.xPt,yPt:o},to:{xPt:n,yPt:o}},{...c,style:`solid`,from:{xPt:e.origin.xPt,yPt:i},to:{xPt:n,yPt:i}})}else{let i={xPt:e.origin.xPt,yPt:o},a={xPt:n,yPt:o};t.push({...c,style:s,from:i,to:a,...s===`wavy`?{path:RS(i,a,r)}:{},...s===`dotted`?{dashPatternPt:[r,r*2]}:{},...s===`dashed`?{dashPatternPt:[r*4,r*3]}:{}})}}if(e.strike){let r=IS(e.strike.probe);if(e.strike.double&&e.strike.doubleProbe){let i=e.origin.yPt+PS(e.strike.doubleProbe)+r/2,a=e.origin.yPt+FS(e.strike.doubleProbe)-r/2;for(let o of[i,a])t.push({kind:`strikethrough`,color:e.color,widthPt:r,style:`solid`,from:{xPt:e.origin.xPt,yPt:o},to:{xPt:n,yPt:o}})}else{let i=e.origin.yPt+(PS(e.strike.probe)+FS(e.strike.probe))/2;t.push({kind:`strikethrough`,color:e.color,widthPt:r,style:`solid`,from:{xPt:e.origin.xPt,yPt:i},to:{xPt:n,yPt:i}})}}return t}function BS(e){let t=e.mark.inkBounds.xMaxPt-e.mark.inkBounds.xMinPt,n=e.mark.inkBounds.ascentPt+e.mark.inkBounds.descentPt;if(!(t>0)||!(n>0))throw Error(`Retained emphasis glyph requires positive selected-face ink bounds`);let r=[];for(let t of e.clusterInk){if(/^\\s+$/u.test(t.text))continue;let n=e.clusters.find(e=>e.range.start===t.range.start&&e.range.end===t.range.end);if(!n)throw Error(`Retained emphasis cluster ink does not match shaped cluster geometry`);let i=(e.origin.xPt+n.offset.xPt+t.ink.xMinPt*e.scaleX+(e.origin.xPt+n.offset.xPt+t.ink.xMaxPt*e.scaleX))/2-(e.mark.inkBounds.xMinPt+e.mark.inkBounds.xMaxPt)/2,a=e.authored===`underDot`?e.origin.yPt+t.ink.descentPt+e.mark.inkBounds.ascentPt:e.origin.yPt-t.ink.ascentPt-e.mark.inkBounds.descentPt;r.push({text:e.glyph,origin:{xPt:i,yPt:a},fontRoute:e.mark.fontRoute,fontSizePt:e.mark.fontSizePt,fontWeight:e.mark.fontWeight,fontStyle:e.mark.fontStyle,color:e.mark.color,inkBounds:e.mark.inkBounds})}return r}function VS(e,t){return e.val===t.val&&e.color===t.color&&e.widthPt===t.widthPt&&e.spacePt===t.spacePt&&e.themeColor===t.themeColor&&e.themeTint===t.themeTint&&e.themeShade===t.themeShade&&e.shadow===t.shadow&&e.frame===t.frame}function HS(e){let t=[],n=0;for(;n<e.length;){let r=e[n],i=n+1,a=r.bounds.xPt+r.bounds.widthPt+r.trailingSlackPt;for(;i<e.length;){let t=e[i];if(!VS(r.border,t.border)||Math.abs(t.bounds.xPt-a)>1e-6||t.bounds.yPt!==r.bounds.yPt||t.bounds.heightPt!==r.bounds.heightPt)break;a=t.bounds.xPt+t.bounds.widthPt+t.trailingSlackPt,i+=1}let o=r.bounds.xPt-r.border.spacePt,s=r.bounds.yPt-r.border.spacePt,c=a+r.border.spacePt,l=r.bounds.yPt+r.bounds.heightPt+r.border.spacePt,u={color:r.border.color,widthPt:r.border.widthPt,...Cf(r.border.val,r.border.widthPt)};t.push({...u,edge:`top`,from:{xPt:o,yPt:s},to:{xPt:c,yPt:s}},{...u,edge:`right`,from:{xPt:c,yPt:s},to:{xPt:c,yPt:l}},{...u,edge:`bottom`,from:{xPt:o,yPt:l},to:{xPt:c,yPt:l}},{...u,edge:`left`,from:{xPt:o,yPt:s},to:{xPt:o,yPt:l}}),n=i}return t}const US=Z({id:`word-zero-relative-size`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/anchor-frame.test.ts#uses wp:extent when Word does not support an exact-zero relative size`},description:`Word 2010 accepts only positive wp14:pctWidth and wp14:pctHeight values under [MS-ODRAWXML] notes 125/126. Preserve an authored zero as acquisition evidence while resolving the object from wp:extent.`});Z({id:`word-vertical-section-physical-drawing-layer`,evidence:{kind:`regression-test`,reference:`packages/docx/src/anchor-vertical-physical.test.ts#lands an upright-section anchor at the recorded physical centroid`},description:`Resolve anchored drawings in an upright vertical section against the physical page frame independently of the rotated text-flow coordinate space.`}),Z({id:`word-page-level-float-prescan`,evidence:{kind:`regression-test`,reference:`packages/docx/src/page-anchor-prescan.test.ts#pre-scan REGISTERS a page-level (relativeFrom=\"margin\") wrap float on an earlier-scanned paragraph`},description:`A wrapping drawing whose vertical reference is page-level participates from page start so source-earlier paragraphs on that page see its exclusion.`}),Z({id:`word-paragraph-anchor-pre-spacing-origin`,evidence:{kind:`regression-test`,reference:`packages/docx/src/anchor-paragraph-spacebefore.test.ts#anchors a wrapSquare paragraph float at the pre-spaceBefore paragraph top`},description:`Resolve a paragraph-relative anchored drawing from the paragraph top before applying the paragraph spaceBefore contribution.`}),Z({id:`word-vertical-section-physical-header-footer`,evidence:{kind:`regression-test`,reference:`packages/docx/src/vertical-header-footer.test.ts#recovers the physical page box + margins from the logical (swapped) section`},description:`Paint a vertical section header and footer in the unrotated physical page frame rather than rotating them with the body text flow.`}),Z({id:`word-frame-auto-wrap-around`,evidence:{kind:`regression-test`,reference:`packages/docx/src/frame-geometry.test.ts#wrap=\"around\" and \"auto\" → square float (auto ≡ around in Word)`},description:`Resolve an authored frame wrap value of auto through the same square side-wrap path as around.`}),Z({id:`word-lower-layer-same-paragraph-anchor-composition`,evidence:{kind:`office-observation`,syntheticFixtureId:`lower-layer-same-paragraph-anchor-composition`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`Word preserves a source-later, lower-z, page-owned drawing at its authored position when it belongs to the same anchor paragraph as already composed higher layers. This is a Word-observed compatibility override to ECMA-376 §20.4.2.3, not a normative OOXML rule.`}),Z({id:`word-textbox-visible-anchor-extent`,evidence:{kind:`office-observation`,syntheticFixtureId:`textbox-visible-anchor-extent`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`For DrawingML middle and bottom text anchoring, derive the positioned extent through the last visible retained block while preserving structural trailing empty paragraphs and terminal paragraph spacing in the complete story.`}),Z({id:`word-overlapping-layout-in-cell-overlay`,evidence:{kind:`regression-test`,reference:`packages/docx/src/table-cell-anchor-reflow.test.ts#does not grow an automatic row for an overlapping layoutInCell wrapNone object`},description:`Word leaves an overlap-permitted, non-wrapping layoutInCell drawing as an overlay instead of growing its automatic table row. This is an Office compatibility exception to the general resize behavior in ECMA-376 §20.4.2.3 layoutInCell; non-overlap drawings retain normative cell containment.`});function WS(e,t){return!e||t!==`none`}function GS(e){return e.shading||e.borders.length>0||e.resources.length>0||e.drawings.length>0||e.textBoxes.length>0||e.lineNumbers?.some(e=>e.paintOps.length>0)?!0:e.lines.some(e=>e.placements.some(e=>e.kind===`text`||e.kind===`resource`||e.kind===`drawing`?!0:e.kind===`tab`&&(e.leaderGlyphs?.length??0)>0))}function KS(e){let t=e.flowBounds.yPt,n;for(let r of e.blocks){if(r.kind===`table`){n=Math.max(n??t,r.flowBounds.yPt+r.advancePt);continue}r.kind!==`paragraph`||!GS(r)||(n=Math.max(n??t,r.flowBounds.yPt+Math.max(0,r.advancePt-r.spacing.afterPt)))}return n===void 0?0:Math.max(0,n-t)}function qS(e){return e===0}function JS(e,t){return e==null?!t:e!==`paragraph`&&e!==`line`&&e!==`character`}function YS(e,t,n){return e===`page`&&t!==null&&n!==void 0&&t<n}const XS=21600;function ZS(e,t,n){return{code:e,path:t,message:n}}function QS(e){return typeof e==`number`&&Number.isFinite(e)}function $S(e){return QS(e.xPt)&&QS(e.yPt)&&QS(e.widthPt)&&QS(e.heightPt)&&e.widthPt>=0&&e.heightPt>=0}function eC(e){return e.kind===`align`?e.value:e.kind===`offset`?e.valuePt:e.kind===`percent`?e.fraction:null}function tC(e,t,n,r=!1){let i=t[e];return{axis:e,status:`unsupported`,relativeFrom:r?`page`:i.relativeFrom,choiceKind:r?`simple-position`:i.choice.kind,choiceValue:r?e===`horizontal`?t.simplePosition.xPt:t.simplePosition.yPt:eC(i.choice),issueCode:n.code}}function nC(e,t,n,r){let i=n[e];return i===null?{problem:ZS(`missing-reference-frame`,r,`${e} frame is required`)}:$S(i)?{base:{startPt:t===`horizontal`?i.xPt:i.yPt,endPt:t===`horizontal`?i.xPt+i.widthPt:i.yPt+i.heightPt,referenceFrame:e}}:{problem:ZS(`invalid-reference-frame`,r,`${e} frame must be finite and non-negative`)}}function rC(e,t,n,r){let i=nC(`page`,t,n,r);if(!i.base)return i;let a=nC(`margin`,t,n,r);if(!a.base)return a;let o=n.page,s=n.margin,c=e===`leftMargin`||e===`rightMargin`;if(c!==(t===`horizontal`))return{problem:ZS(`unsupported-relative-from`,r,`${e} is not valid for the ${t} axis`)};let l=c?o.xPt:o.yPt,u=c?o.xPt+o.widthPt:o.yPt+o.heightPt,d=c?s.xPt:s.yPt,f=c?s.xPt+s.widthPt:s.yPt+s.heightPt;if(d<l||f>u)return{problem:ZS(`invalid-reference-frame`,r,`margin frame must be contained by the page frame`)};let p=e===`leftMargin`||e===`topMargin`;return{base:{startPt:p?l:f,endPt:p?d:u,referenceFrame:e}}}function iC(e,t,n,r){if(t===`page`||t===`margin`||e===`horizontal`&&(t===`column`||t===`character`)||e===`vertical`&&(t===`paragraph`||t===`line`))return nC(t,e,n,r);if(e===`horizontal`&&(t===`leftMargin`||t===`rightMargin`)||e===`vertical`&&(t===`topMargin`||t===`bottomMargin`))return rC(t,e,n,r);if(t===`insideMargin`||t===`outsideMargin`){if(n.pageParity===null)return{problem:ZS(`missing-page-parity`,r,`${t} requires explicit page parity`)};let i=t===`insideMargin`==(n.pageParity===`odd`);return{...rC(e===`horizontal`?i?`leftMargin`:`rightMargin`:i?`topMargin`:`bottomMargin`,e,n,r),parityRequired:!0}}return{problem:ZS(`unsupported-relative-from`,r,`${t} is not a valid ${e} reference`)}}function aC(e,t,n){let r=t.relativeSize[e],i=e===`horizontal`?`width`:`height`,a=(n=null)=>{let r=e===`horizontal`?t.extent.widthStatus:t.extent.heightStatus,a=e===`horizontal`?t.extent.widthPt:t.extent.heightPt;return r===`missing`?{problem:ZS(`missing-size`,`extent.${i}`,`${i} is required`)}:r!==`valid`||!QS(a)||a<=0?{problem:ZS(`invalid-size`,`extent.${i}`,`${i} extent must be finite and positive`)}:{resolved:{valuePt:a,diagnostic:{source:`extent`,valuePt:a,relativeFrom:n?.relativeFrom??null,referenceFrame:null,fraction:n?.fraction??null,...n===null?{}:{compatibilityFallback:US.id}}}}};if(r===null)return a();let o=`relativeSize.${e}`;if(r.fractionStatus===`missing`||r.fraction===null)return{problem:ZS(`missing-relative-size-fraction`,`${o}.fraction`,`relative size fraction is required`)};if(r.fractionStatus!==`valid`||!QS(r.fraction))return{problem:ZS(`invalid-relative-size-fraction`,`${o}.fraction`,`relative size fraction must be finite`)};if(r.fraction<0)return{problem:ZS(`invalid-relative-size-fraction`,`${o}.fraction`,`relative size fraction must be non-negative`)};if(qS(r.fraction))return a({relativeFrom:r.relativeFrom,fraction:r.fraction});if(r.relativeFromStatus===`missing`||r.relativeFrom===null)return{problem:ZS(`missing-relative-size-reference`,`${o}.relativeFrom`,`relative size reference is required`)};if(r.relativeFromStatus!==`valid`)return{problem:ZS(`invalid-relative-size-reference`,`${o}.relativeFrom`,`relative size reference is invalid`)};let s=iC(e,r.relativeFrom,n,`${o}.relativeFrom`);if(!s.base)return{problem:ZS(s.problem?.code===`missing-reference-frame`?`missing-relative-size-reference`:`invalid-relative-size-reference`,`${o}.relativeFrom`,s.problem?.message??`relative size reference cannot be resolved`)};let c=(s.base.endPt-s.base.startPt)*r.fraction;return!QS(c)||c<0?{problem:ZS(`invalid-relative-size-fraction`,`${o}.fraction`,`relative size result must be finite and non-negative`)}:{resolved:{valuePt:c,diagnostic:{source:`relative`,valuePt:c,relativeFrom:r.relativeFrom,referenceFrame:s.base.referenceFrame,fraction:r.fraction}}}}function oC(e,t,n,r){let i=n[e],a=e;if(i.relativeFromStatus===`missing`||i.relativeFrom===null){let t=ZS(`missing-relative-from`,`${a}.relativeFrom`,`${e} relativeFrom is required`);return{diagnostic:tC(e,n,t),problem:t}}if(i.relativeFromStatus!==`valid`){let t=ZS(`invalid-relative-from`,`${a}.relativeFrom`,`${e} relativeFrom is invalid`);return{diagnostic:tC(e,n,t),problem:t}}let o=iC(e,i.relativeFrom,r,`${a}.relativeFrom`);if(!o.base){let t=o.problem;return{diagnostic:tC(e,n,t),problem:t}}let s=i.choice;if(s.kind===`missing`){let t=ZS(`missing-axis-choice`,`${a}.choice`,`${e} choice is required`);return{diagnostic:tC(e,n,t),problem:t}}if(s.kind===`invalid`){let t=ZS(`invalid-axis-choice`,`${a}.choice`,`${e} choice is invalid`);return{diagnostic:tC(e,n,t),problem:t}}let c=o.base.endPt-o.base.startPt,l,u;if(s.kind===`offset`){if(!QS(s.valuePt)){let t=ZS(`invalid-axis-value`,`${a}.choice`,`offset must be finite`);return{diagnostic:tC(e,n,t),problem:t}}l=o.base.startPt+s.valuePt,u=s.valuePt}else if(s.kind===`percent`){if(!QS(s.fraction)){let t=ZS(`invalid-axis-value`,`${a}.choice`,`percentage must be finite`);return{diagnostic:tC(e,n,t),problem:t}}l=o.base.startPt+c*s.fraction,u=s.fraction}else if(s.kind===`align`){if(!(e===`horizontal`?[`left`,`center`,`right`,`inside`,`outside`].includes(s.value):[`top`,`center`,`bottom`,`inside`,`outside`].includes(s.value))){let t=ZS(`invalid-axis-value`,`${a}.choice`,`${s.value} is invalid`);return{diagnostic:tC(e,n,t),problem:t}}if((s.value===`inside`||s.value===`outside`)&&r.pageParity===null){let t=ZS(`missing-page-parity`,`frames.pageParity`,`${s.value} alignment requires explicit page parity`);return{diagnostic:tC(e,n,t),problem:t}}let i=e===`horizontal`?`left`:`top`,d=e===`horizontal`?`right`:`bottom`,f=s.value===`inside`,p=r.pageParity===`odd`,m=s.value===i||f&&p||s.value===`outside`&&!p,h=s.value===d||f&&!p||s.value===`outside`&&p;l=m?o.base.startPt:h?o.base.endPt-t:o.base.startPt+(c-t)/2,u=s.value}else{let t=ZS(`invalid-axis-choice`,`${a}.choice`,`${e} choice is invalid`);return{diagnostic:tC(e,n,t),problem:t}}if(!QS(l)){let t=ZS(`invalid-axis-value`,`${a}.choice`,`resolved origin is not finite`);return{diagnostic:tC(e,n,t),problem:t}}return{valuePt:l,diagnostic:{axis:e,status:`resolved`,relativeFrom:i.relativeFrom,referenceFrame:o.base.referenceFrame,choiceKind:s.kind,choiceValue:u,baseStartPt:o.base.startPt,baseEndPt:o.base.endPt,resolvedOriginPt:l,pageParity:s.kind===`align`&&(s.value===`inside`||s.value===`outside`)?r.pageParity:null}}}function sC(e,t,n){let r=e===`horizontal`?n.xPt:n.yPt,i=e===`horizontal`?n.xPt+n.widthPt:n.yPt+n.heightPt,a=r+t;return{valuePt:a,diagnostic:{axis:e,status:`resolved`,relativeFrom:`page`,referenceFrame:`page`,choiceKind:`simple-position`,choiceValue:t,baseStartPt:r,baseEndPt:i,resolvedOriginPt:a,pageParity:null}}}const cC=[`top`,`right`,`bottom`,`left`];function lC(e,t){return e[`${t}Status`]}function uC(e,t){return e[`${t}Pt`]}function dC(e,t,n){let r=cC.some(t=>lC(e,t)!==`missing`);if(!n&&!r)return{values:{topPt:0,rightPt:0,bottomPt:0,leftPt:0}};let i={topPt:0,rightPt:0,bottomPt:0,leftPt:0};for(let n of cC){let r=lC(e,n),a=uC(e,n);if(r!==`valid`||!QS(a))return{problem:ZS(`invalid-effect-extent`,`${t}.${n}`,`present effectExtent requires four finite edge values`)};i[`${n}Pt`]=a}return{values:i}}function fC(e,t){let n={topPt:0,rightPt:0,bottomPt:0,leftPt:0},r={};for(let i of cC){let a=lC(t,i),o=lC(e,i),s=a===`valid`||a===`invalid`?{status:a,value:uC(t,i),source:`wrap`}:o===`valid`||o===`invalid`?{status:o,value:uC(e,i),source:`anchor`}:{status:`missing`,value:null,source:`implicit-zero`};if(s.status===`invalid`||s.status===`valid`&&(!QS(s.value)||s.value<0))return{problem:ZS(`invalid-distance`,`${s.source===`wrap`?`wrap.distances`:`anchorDistances`}.${i}`,`wrap distance must be finite and non-negative`)};n[`${i}Pt`]=s.status===`missing`?0:s.value,r[i]=s.source}return{resolved:{values:n,sources:r}}}function pC(e,t){let n={xPt:e.xPt-t.leftPt,yPt:e.yPt-t.topPt,widthPt:e.widthPt+t.leftPt+t.rightPt,heightPt:e.heightPt+t.topPt+t.bottomPt};return $S(n)?n:null}function mC(e,t){let n=e.wrap.polygon;if(n===null||n.invalidPointCount!==0||n.coordinateSpace.width!==XS||n.coordinateSpace.height!==XS||n.points.length<3)return{problem:ZS(`invalid-wrap-polygon`,`wrap.polygon`,`tight and through wrapping require a valid fixed 21600 by 21600 polygon`)};let r=[];for(let[e,i]of n.points.entries()){if(!QS(i.x)||!QS(i.y))return{problem:ZS(`invalid-wrap-polygon`,`wrap.polygon.points.${e}`,`polygon coordinates must be finite`)};r.push({xPt:t.xPt+i.x/XS*t.widthPt,yPt:t.yPt+i.y/XS*t.heightPt})}let i=r.map(e=>e.xPt),a=r.map(e=>e.yPt),o=Math.min(...i),s=Math.max(...i),c=Math.min(...a),l=Math.max(...a);return{polygon:{edited:n.edited,points:r},bounds:{xPt:o,yPt:c,widthPt:s-o,heightPt:l-c}}}function hC(e){return{coordinateSpace:`anchor-frame`,groupApplication:`parser-resolved-child-frame`,group:e===null?null:{childSourceId:e.childSourceId,sourceIndex:e.sourceIndex,sourceCount:e.sourceCount,transformChain:e.transformChain.map(e=>({...e})),childTransform:e.childTransform===null?null:{...e.childTransform},resolvedChildFrame:{...e.resolvedChildFrame}}}}function gC(e){return Fu(e,`anchor frame result`)}function _C(e){let{acquisition:t,frames:n}=e;for(let e of[`relativeHeight`,`behindDoc`,`locked`,`layoutInCell`,`allowOverlap`]){let n=t.behavior[`${e}Status`],r=t.behavior[e];if(n===`valid`&&r!==null)continue;let i=ZS(n===`missing`?`missing-required-behavior`:`invalid-required-behavior`,`behavior.${e}`,`CT_Anchor requires a ${e} value`);return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:tC(`horizontal`,t,i),vertical:tC(`vertical`,t,i)},issues:[i]})}let r=[],i=aC(`horizontal`,t,n),a=aC(`vertical`,t,n);i.problem&&r.push(i.problem),a.problem&&r.push(a.problem);let o,s,c=i.problem??a.problem;if(c||!i.resolved||!a.resolved){let e=c;o={diagnostic:tC(`horizontal`,t,e)},s={diagnostic:tC(`vertical`,t,e)}}else if(t.simplePosition.status===`invalid`){let e=ZS(`invalid-simple-position`,`simplePosition.enabled`,`simplePos enablement is invalid`);r.push(e),o={diagnostic:tC(`horizontal`,t,e,!0),problem:e},s={diagnostic:tC(`vertical`,t,e,!0),problem:e}}else if(t.simplePosition.status===`valid`&&t.simplePosition.enabled===!0){let e=nC(`page`,`horizontal`,n,`frames.page`),i=t.simplePosition.xPt,a=t.simplePosition.yPt;if(!e.base||n.page===null||!$S(n.page)){let n=e.problem??ZS(`invalid-reference-frame`,`frames.page`,`simple positioning requires a valid page frame`);r.push(n),o={diagnostic:tC(`horizontal`,t,n,!0),problem:n},s={diagnostic:tC(`vertical`,t,n,!0),problem:n}}else if(t.simplePosition.xStatus!==`valid`||!QS(i)){let e=t.simplePosition.xStatus===`invalid`,n=ZS(e?`invalid-simple-position`:`missing-simple-coordinate`,`simplePosition.x`,e?`simple position x is lexically invalid`:`simple position x is required`);r.push(n),o={diagnostic:tC(`horizontal`,t,n,!0),problem:n},s={diagnostic:tC(`vertical`,t,n,!0),problem:n}}else if(t.simplePosition.yStatus!==`valid`||!QS(a)){let e=t.simplePosition.yStatus===`invalid`,n=ZS(e?`invalid-simple-position`:`missing-simple-coordinate`,`simplePosition.y`,e?`simple position y is lexically invalid`:`simple position y is required`);r.push(n),o={diagnostic:tC(`horizontal`,t,n,!0),problem:n},s={diagnostic:tC(`vertical`,t,n,!0),problem:n}}else o=sC(`horizontal`,i,n.page),s=sC(`vertical`,a,n.page)}else{let e=oC(`horizontal`,i.resolved.valuePt,t,n),c=oC(`vertical`,a.resolved.valuePt,t,n);o={...e,diagnostic:e.diagnostic},s={...c,diagnostic:c.diagnostic},e.problem&&r.push(e.problem),c.problem&&r.push(c.problem)}if(r.length>0||!i.resolved||!a.resolved||o.valuePt===void 0||s.valuePt===void 0)return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:r});let l={xPt:o.valuePt,yPt:s.valuePt,widthPt:i.resolved.valuePt,heightPt:a.resolved.valuePt},u=dC(t.parentEffectExtent,`parentEffectExtent`,!1);if(u.problem||!u.values){let e=u.problem;return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[e]})}let d=pC(l,u.values);if(d===null){let e=ZS(`invalid-effect-extent`,`parentEffectExtent`,`parent effect extents produce invalid ink bounds`);return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[e]})}if(t.wrap.kind===`missing`||t.wrap.kind===`invalid`){let e=ZS(t.wrap.kind===`missing`?`missing-wrap-kind`:`invalid-wrap-kind`,`wrap.kind`,`exactly one valid wrap kind is required`);return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[e]})}let f=fC(t.anchorDistances,t.wrap.distances);if(f.problem||!f.resolved)return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[f.problem]});let p=t.wrap.kind===`square`||t.wrap.kind===`tight`||t.wrap.kind===`through`,m=p&&[`bothSides`,`left`,`right`,`largest`].includes(t.wrap.side??``)?t.wrap.side:null;if(p&&m===null){let e=ZS(`invalid-wrap-side`,`wrap.side`,`square, tight, and through wrapping require an authored wrap side`);return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[e]})}let h=u.values,g=cC.some(e=>lC(t.parentEffectExtent,e)!==`missing`)?`parent`:`none`;if(t.wrap.effectExtent!==null){let e=dC(t.wrap.effectExtent,`wrap.effectExtent`,!0);if(e.problem||!e.values)return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[e.problem]});h=e.values,g=`wrap-child`}let _=null,v=null,y=null;if(t.wrap.kind===`tight`||t.wrap.kind===`through`){let e=mC(t,l);if(e.problem||!e.polygon||!e.bounds)return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[e.problem]});_=e.polygon,v={width:21600,height:21600},y=e.bounds,h={topPt:0,rightPt:0,bottomPt:0,leftPt:0},g=`none`}else if(t.wrap.kind!==`none`&&(y=pC(l,h),y===null)){let e=ZS(`invalid-effect-extent`,`wrap.effectExtent`,`wrapping effect extents produce invalid bounds`);return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[e]})}let b=y===null?null:pC(y,f.resolved.values);if(y!==null&&b===null){let e=ZS(`invalid-distance`,`wrap.distances`,`distances produce invalid bounds`);return gC({status:`unsupported`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[e]})}return gC({status:`resolved`,occurrenceId:t.occurrenceId,axes:{horizontal:o.diagnostic,vertical:s.diagnostic},issues:[],geometry:{objectFrame:l,inkBounds:d,wrapBounds:b,size:{horizontal:i.resolved.diagnostic,vertical:a.resolved.diagnostic},parentEffectExtent:u.values,wrap:{kind:t.wrap.kind,side:m,distances:f.resolved.values,distanceSources:f.resolved.sources,effectExtent:h,effectExtentSource:g,coordinateSpace:v,polygon:_},transform:hC(t.group)}})}function vC(e,t,n,r){if(!e)return r;let i=!!(e.styleId&&e.styleId===t.styleId),a=!!(i&&e.contextualSpacing),o=!!(i&&t.contextualSpacing);return a&&o?0:o?n:a?Math.max(r-n,0):Math.max(n,r)}function yC(e,t,n,r){let i=vC(e,t,n,r),a=i<=n;return{suppressBefore:a,overlap:n+(a?0:r)-i}}function bC(e){return Object.freeze(e.pages.map(e=>Object.freeze({pageIndex:e.pageIndex,displayPageNumber:e.pageNumber.displayNumber,pageNumberFormat:e.pageNumber.format})))}function xC(e){if(e.fieldType===`page`)return`page`;if(/numPages/i.test(e.fieldType)||/NUMPAGES/i.test(e.instruction))return`total-pages`}function SC(e){return e.some(e=>e.type===`paragraph`?e.runs.some(e=>e.type===`field`?xC(e)!==void 0:!1):e.type===`table`?e.rows.some(e=>e.cells.some(e=>SC(e.content))):!1)}function CC(e,t=[],n=[]){return SC(e)||t.some(e=>SC(e.content))||n.some(e=>SC(e))}const wC=new WeakMap;function TC(e){let t=new Set(e.drawings.flatMap(e=>{let t=e.anchorLayer?.acquisitionOccurrenceId??e.anchorLayer?.occurrenceId;return t===void 0?[]:[t]}));return Object.freeze({exclusions:Object.freeze(e.exclusions.filter(e=>!e.id.startsWith(`table-final-frame:`)&&(e.anchorOccurrenceId===void 0||!t.has(e.anchorOccurrenceId)))),collisions:Object.freeze((e.anchorCollisions??[]).filter(e=>!t.has(e.occurrenceId)))})}function EC(e){return new Set((e.anchorFrames??[]).flatMap(e=>e.status===`resolved`?[e.occurrenceId]:[]))}function DC(e){let t=EC(e),n=(e.anchorCollisions??[]).filter(e=>t.has(e.occurrenceId)),r=new Set(n.map(e=>e.occurrenceId));for(let e of t)if(!r.has(e))throw Error(`Paragraph anchor omitted collision geometry: ${e}`);return Object.freeze(n)}function OC(e){let t=EC(e);return Object.freeze(e.exclusions.filter(e=>e.anchorOccurrenceId!==void 0&&t.has(e.anchorOccurrenceId)))}function kC(e){return Object.freeze({flowDomainId:e,collisions:Object.freeze([]),exclusions:Object.freeze([])})}function AC(e,t){let n=wC.get(e);n||(n=new Map,wC.set(e,n));let r=n.get(t);if(r)return r;let i=kC(t);return n.set(t,i),i}function jC(e,t,n){let r=wC.get(e);if(!r||r.get(t.flowDomainId)!==t)throw Error(`Paragraph wrap registry transaction is stale`);r.set(t.flowDomainId,MC(t,n))}function MC(e,t){if(t.flowDomainId!==e.flowDomainId)throw Error(`Paragraph wrap registry cannot cross flow domains`);let n=new Set(e.collisions.map(e=>e.occurrenceId)),r=DC(t);for(let e of r){if(n.has(e.occurrenceId))throw Error(`Paragraph wrap occurrence committed twice: ${e.occurrenceId}`);n.add(e.occurrenceId)}let i=OC(t),a=new Set(r.map(e=>e.occurrenceId)),o=new Set;for(let e of i){let t=e.anchorOccurrenceId;if(t===void 0||!a.has(t))throw Error(`Owned paragraph wrap exclusion omitted its collision occurrence`);if(o.has(t))throw Error(`Paragraph wrap occurrence produced duplicate exclusions: ${t}`);o.add(t)}return Object.freeze({flowDomainId:e.flowDomainId,collisions:Object.freeze([...e.collisions,...r]),exclusions:Object.freeze([...e.exclusions,...i])})}function NC(e,t){if(!Number.isFinite(e)||e<0)throw RangeError(`${t} must be finite and non-negative`);return e}function PC(e){if(!(!e||e.type!==`text`&&e.type!==`field`))return e.typographyInput}function FC(e){switch(e){case`left`:return`left`;case`right`:return`right`;default:return`center`}}function IC(e){return NC(e.measuredWidthPt,`segment.measuredWidthPt`)}function LC(e){return e.map(e=>e.kind===`text`&&!e.fixedPitch?{text:e.text}:{})}function RC(e){return e===`lowKashida`?`low`:e===`mediumKashida`?`medium`:e===`highKashida`?`high`:null}function zC(e,t){if(!e.textLayoutService||!e.textShapeRequest)throw Error(`Kashida acquisition requires the retained TextLayoutService authority`);let n=e.textLayoutService.shape({...e.textShapeRequest,text:t,measure:!0}),r=e.basePaintOps[0]?.scaleX??1,i=e.basePaintOps[0]?.letterSpacingPt??0;return n.advancePt*r+[...t].length*i}function BC(e,t){if(!e)return null;let n=Qx(e),r=new Map,i=0;for(let[n,a]of e.perSeg){let e=t[n],o=a.splitBefore;if(e?.kind===`text`){let t=new Set(e.clusters.slice(1).map(t=>t.range.start-e.range.start)),n=[...e.text],r=[0];for(let e of n)r.push((r.at(-1)??0)+e.length);o=o.filter(e=>t.has(r[e]??-1))}let s=t[n+1],c=a.trailingGap&&!(s?.kind===`text`&&s.breakBefore===!1);i+=o.length+ +!!c,r.set(n,{splitBefore:[...o],trailingGap:c,internalStretch:0})}if(i===0)return null;let a=n/i;for(let e of r.values())e.internalStretch=e.splitBefore.length*a;return{perGap:a,perSeg:r}}function VC(e,t,n){if(!t||t.splitBefore.length===0)return{clusters:e.clusters,paintOps:e.basePaintOps};let r=[...e.text],i=[...t.splitBefore];if(i.some((e,t)=>e<=0||e>=r.length||t>0&&e<=(i[t-1]??0)))throw Error(`Internal paragraph justification contains an invalid code-point cut`);let a=[0];for(let e of r)a.push((a.at(-1)??0)+e.length);let o=i.map(e=>a[e]??-1),s=new Set(e.clusters.map(t=>t.range.start-e.range.start));if(o.some(e=>!s.has(e)))throw Error(`Internal paragraph justification must split at shaped cluster boundaries`);let c=[0,...i,r.length],l=[];for(let t=0;t<c.length-1;t+=1){let r=c[t]??0,i=c[t+1]??r,o=e.range.start+(a[r]??0),s=e.clusters.find(e=>e.range.start===o);if(!s)throw Error(`Internal paragraph justification is missing shaped cluster geometry`);l.push({range:{start:o,end:e.range.start+(a[i]??0)},offset:{xPt:s.offset.xPt+t*n,yPt:s.offset.yPt}})}let u=e.clusters.map(t=>{let r=t.range.start-e.range.start,i=o.filter(e=>e<=r).length;return{...t,offset:{...t.offset,xPt:t.offset.xPt+i*n}}});if(e.basePaintOps.length>1){let t=e.range.start;for(let n of e.basePaintOps){if(n.range.start!==t||n.range.end<=n.range.start)throw Error(`Internal paragraph justification has incomplete retained paint operations`);t=n.range.end}if(t!==e.range.end)throw Error(`Internal paragraph justification has incomplete retained paint operations`);let r=o.map(t=>e.range.start+t),i=[...new Set([e.range.start,e.range.end,...r,...e.basePaintOps.flatMap(e=>[e.range.start,e.range.end])])].sort((e,t)=>e-t),a=[];for(let t=0;t<i.length-1;t+=1){let o=i[t]??e.range.start,s=i[t+1]??o,c=e.basePaintOps.find(e=>e.range.start<=o&&e.range.end>=s);if(!c)throw Error(`Internal paragraph justification lost a retained paint slice`);let l=r.filter(e=>e<=o).length,d=u.find(e=>e.range.start===o);if(!d)throw Error(`Internal paragraph justification is missing retained slice geometry`);a.push({...c,text:c.text.slice(o-c.range.start,s-c.range.start),range:{start:o,end:s},offset:o===c.range.start?{...c.offset,xPt:c.offset.xPt+l*n}:d.offset})}return{clusters:u,paintOps:a}}let d=e.basePaintOps.length===1?e.basePaintOps[0]:void 0;if(!d)throw Error(`Internal paragraph justification requires one contextual paint op`);return i.length===r.length-1&&i.every((e,t)=>e===t+1)?{clusters:u,paintOps:[{...d,letterSpacingPt:d.letterSpacingPt+n}]}:{clusters:u,paintOps:l.map(t=>({...d,text:e.text.slice(t.range.start-e.range.start,t.range.end-e.range.start),range:t.range,offset:t.offset}))}}function HC(e,t){return e.flatMap(e=>{let n=e.text.trimEnd();if(n===``||n.length===e.text.length)return[e];if(e.sourceMapping===`kashida`)return[{...e,text:n}];let r=e.range.start+n.length,i=t.find(e=>e.range.start===r),{inkBounds:a,blockAxisInkBounds:o,...s}=e;return[{...e,text:n,range:{...e.range,end:r}},{...s,text:e.text.slice(n.length),range:{start:r,end:e.range.end},offset:i?.offset??e.offset}]})}function UC(e,t){return e===void 0||t===void 0?e===t:e.length===t.length&&e.every((e,n)=>e===t[n])}function WC(e,t){return e.kind===`underline`&&e.kind===t.kind&&e.authoredStyle===t.authoredStyle&&e.style===t.style&&e.color===t.color&&e.widthPt===t.widthPt&&e.to.xPt===t.from.xPt&&UC(e.dashPatternPt,t.dashPatternPt)}function GC(e,t){let n=Math.max(e.from.yPt,t.from.yPt),r={xPt:e.from.xPt,yPt:n},i={xPt:t.to.xPt,yPt:n},{path:a,...o}=e;return{...o,from:r,to:i,...e.style===`wavy`?{path:RS(r,i,e.widthPt)}:{}}}function KC(e){let t=[];e.forEach((n,r)=>{if(n.kind!==`text`&&n.kind!==`tab`||!n.decorations){t=[];return}let i=[],a=[],o=new Set;for(let s of n.decorations){let n=t.filter(e=>!o.has(e)&&WC(e.decoration,s)).sort((e,t)=>Math.abs(e.decoration.from.yPt-s.from.yPt)-Math.abs(t.decoration.from.yPt-s.from.yPt))[0];if(n){o.add(n);let t=e[n.placementIndex];if(!t||t.kind!==`text`&&t.kind!==`tab`||!t.decorations)throw Error(`Continuous decoration owner left the retained line`);let r=[...t.decorations],i=GC(n.decoration,s);r[n.decorationIndex]=i,e[n.placementIndex]={...t,decorations:r},a.push({...n,decoration:i})}else{let e=i.length;i.push(s),a.push({placementIndex:r,decorationIndex:e,decoration:s})}}e[r]={...n,decorations:i},t=a})}function qC(e){let{line:t}=e,n=t.segments,r=e.baseRtl||jg(n),i=Mg(n.map(e=>e.kind===`tab`?{isTab:!0}:e.kind===`text`?{text:e.text,rtl:e.rtl,digitsAsAN:e.digitsAsAN}:{}),e.baseRtl),a=n.reduce((e,t)=>e+IC(t),0),o=e.paragraphXPt+t.xOffsetPt,s=Math.min(e.availableWidthPt,t.availableWidthPt),c=e.isFirstLine?e.numbering?NC(e.numbering.bodyOffsetPt,`numbering.bodyOffsetPt`):e.firstLineIndentPt??0:0,l=e.baseRtl?0:c,u=(e.baseRtl?s-c:s)-l-a,d=e.isLastLine||t.endsWithBreak,f=e.displayMathJustification===void 0?Ng(e.alignment,e.baseRtl):FC(e.displayMathJustification),p=f===`justify`&&(!d||e.stretchLastLine),m=p?RC(e.alignment):null;if(m&&u>0){let e=wS(n.map(e=>e.kind===`text`?{text:e.text}:{}),u,m,(e,t)=>{let r=n[e];return r?.kind===`text`?zC(r,t):0});e&&(n=n.map((t,n)=>{if(t.kind!==`text`)return t;let r=e.perSeg.get(n);if(!r)return t;let i=t.basePaintOps[0];if(!i)throw Error(`Kashida acquisition requires a contextual text paint operation`);return{...t,measuredWidthPt:t.measuredWidthPt+r.advanceDeltaPx,basePaintOps:[{...i,text:r.text,sourceMapping:`kashida`}]}}),a+=e.appliedPx,u=e.residualPx)}let h=i.order.at(-1)??-1,g=0;if(!r){let e=n.findIndex(e=>e.kind!==`text`||/\\S/.test(e.text));g=e<0?0:e}let _=null,v=0,y=0,b=LC(n);if(p){let i=BC(Zx(b,u,g,r?h:n.length,-(t.baselinePt-t.topPt)*.25,u>0,e.alignment===`thaiDistribute`&&u>0),n);_=i?.perSeg??null,v=i?.perGap??0,y=Qx(i)}else if(u<0){let e=BC($x(b,u,g,r?h:n.length,t.baselinePt-t.topPt),n);_=e?.perSeg??null,v=e?.perGap??0,y=Qx(e)}let x=a+y,S=u-y,C=f===`right`?S:f===`center`?S/2:f===`justify`&&e.baseRtl&&!p?S:0,w=o+l,T=e.decimalAutoTabPt===void 0?C:Math.max(0,e.paragraphXPt+e.decimalAutoTabPt-x-w),E=w+T,D=[];for(let e of i.order){let r=n[e];if(!r)continue;let a=_?.get(e),o=a?.internalStretch??0,s=IC(r)+o;if(r.kind===`tab`){let e={xPt:E,yPt:t.topPt,widthPt:r.measuredWidthPt,heightPt:t.advancePt},n=r.underline?zS({origin:{xPt:E,yPt:t.baselinePt},advancePt:r.measuredWidthPt,base:r.underline.base,color:r.underline.color,underline:r.underline}):void 0;D.push({kind:`tab`,range:r.range,bounds:e,advancePt:r.measuredWidthPt,leader:r.leader,...n?.length?{decorations:n}:{},...r.leader===`none`?{}:r.leaderShape?{leaderGlyphs:MS({interval:e,baselinePt:t.baselinePt,...r.leaderShape})}:{}})}else if(r.kind===`resource`)D.push({kind:`resource`,range:r.range,...r.sourceRunIndex===void 0?{}:{sourceRunIndex:r.sourceRunIndex},resourceKey:r.resourceKey,resourceKind:r.resourceKind,...r.orientation?{orientation:r.orientation}:{},bounds:{xPt:E,yPt:t.baselinePt+r.topOffsetPt,widthPt:r.widthPt,heightPt:r.heightPt},advancePt:r.measuredWidthPt});else if(r.kind===`unavailable-resource`||r.kind===`inline-drawing`)D.push({kind:`drawing`,range:r.range,drawingId:r.drawingId,bounds:{xPt:E,yPt:t.baselinePt+r.topOffsetPt,widthPt:r.widthPt,heightPt:r.heightPt},advancePt:r.measuredWidthPt});else if(r.kind===`anchor-host`)D.push({kind:`anchor-host`,range:r.range,bounds:{xPt:E,yPt:t.topPt,widthPt:0,heightPt:t.advancePt},baselinePt:t.baselinePt,...r.sourceMetrics?{sourceMetrics:r.sourceMetrics}:{},...r.anchorOccurrenceId?{anchorOccurrenceId:r.anchorOccurrenceId}:{}});else{let{measuredWidthPt:n,breakBefore:o,rtl:c,digitsAsAN:l,fixedPitch:u,textLayoutService:d,textShapeRequest:f,retainedGeometry:p,direction:m,...h}=r,g=VC(r,a,v),_=i.rtl[e]?`rtl`:`ltr`,y=_===`rtl`?HC(g.paintOps,g.clusters):g.paintOps,b=r.text.trimEnd().length,x=_===`rtl`?(h.fitText?.trailingPadPt??0)+r.clusters.filter(e=>e.range.start>=r.range.start+b).reduce((e,t)=>e+t.advancePt,0):0,S=a?.trailingGap?v:0,C={xPt:E+x,yPt:t.baselinePt},w=g.paintOps[0]?.offset.yPt??0,T={xPt:E,yPt:t.baselinePt+w},O=p?zS({origin:T,advancePt:s+S,base:p.base,color:gw(h.color),...p.underline?{underline:p.underline}:{},...p.strike?{strike:p.strike}:{}}):h.decorations,k=p?.emphasis?{authored:p.emphasis.authored,glyphs:BS({authored:p.emphasis.authored,glyph:p.emphasis.glyph,origin:{xPt:C.xPt,yPt:t.baselinePt+w},clusters:g.clusters,clusterInk:p.emphasis.clusterInk,mark:p.emphasis.mark,scaleX:r.basePaintOps[0]?.scaleX??1})}:void 0,A={...h,kind:`text`,origin:C,bounds:{xPt:E,yPt:t.topPt,widthPt:s,heightPt:t.advancePt},advancePt:s,clusters:g.clusters,paintOps:y.map(e=>({...e,direction:_})),decorations:O,...k?{emphasis:k}:{},direction:_,...S===0?{}:{ownedTrailingSlackPt:S},...h.highlight||h.background?{highlightFragments:[{rect:h.highlight&&p?{xPt:E,yPt:t.baselinePt+w-p.base.ascentPt,widthPt:s+S,heightPt:p.base.ascentPt+p.base.descentPt}:{xPt:E,yPt:t.topPt,widthPt:s+S,heightPt:t.advancePt},color:h.highlight??h.background}]}:{},...h.ruby?{ruby:{...h.ruby,paintOps:h.ruby.paintOps.map(e=>({...e,origin:{xPt:e.origin.xPt+E+(s-r.measuredWidthPt)/2,yPt:e.origin.yPt+t.baselinePt}}))}}:{}};D.push(A)}E+=s,a?.trailingGap&&(E+=v)}for(let e=0;e<D.length;){let t=D[e];if(t?.kind!==`text`||!t.runBorder){e+=1;continue}let n=e+1;for(;n<D.length;){let e=D[n];if(e?.kind!==`text`||!e.runBorder)break;n+=1}let r=HS(D.slice(e,n).map(e=>({bounds:e.bounds,trailingSlackPt:e.ownedTrailingSlackPt??0,border:e.runBorder})));D[e]={...t,runBorderFragments:r},e=n}return KC(D),Pu({range:t.range,bounds:{xPt:w+T,yPt:t.topPt,widthPt:x,heightPt:t.advancePt},baselinePt:t.baselinePt,advancePt:t.advancePt,placements:D})}function JC(e){let t=e.continuation,n=t?.lineStart??0,r=t?.lineEnd??e.lines.length;if(n<0||r<n||r>e.lines.length)throw RangeError(`Paragraph continuation line range is outside the retained lines`);let i=t?.continuesFromPrevious?0:e.spacing.beforePt;for(let a=n;a<r;a+=1){let r=e.lines[a];if(r){if(a===0&&!t?.continuesFromPrevious)i+=Math.max(0,r.bounds.yPt-(e.flowBounds.yPt+e.spacing.beforePt));else if(a>n){let t=e.lines[a-1];i+=Math.max(0,r.bounds.yPt-((t?.bounds.yPt??r.bounds.yPt)+(t?.advancePt??0)))}i+=NC(r.advancePt,`line.advancePt`)}}return e.lines.length===0&&e.paragraphMark&&(i+=NC(e.paragraphMark.bounds.heightPt,`paragraphMark.heightPt`)),t?.continuesOnNext||(i+=e.spacing.afterPt),i}function YC(e){let t=e.continuation?.lineStart??0,n=e.continuation?.lineEnd??e.lines.length,r=e.lines.slice(t,n),i=e.continuation?JC(e):NC(e.flowBounds.heightPt,`flowBounds.heightPt`);return Pu({kind:`paragraph`,id:e.id,source:e.source,...e.paragraphId===void 0?{}:{paragraphId:e.paragraphId},flowDomainId:e.flowDomainId,ordinaryFlow:e.ordinaryFlow,...e.styleId===void 0?{}:{styleId:e.styleId},...e.bookmarkStarts?.length?{bookmarkStarts:e.bookmarkStarts}:{},flowBounds:{...e.flowBounds,heightPt:i},inkBounds:e.inkBounds,...e.clipBounds?{clipBounds:e.clipBounds}:{},advancePt:i,spacing:e.spacing,contextualSpacing:e.contextualSpacing??!1,lines:r,borders:e.borders,...e.shading?{shading:e.shading}:{},resources:e.resources,drawings:e.drawings,textBoxes:e.textBoxes,events:e.events,exclusions:e.exclusions,...e.cellContainmentBounds?{cellContainmentBounds:e.cellContainmentBounds}:{},...e.anchorCollisions?.length?{anchorCollisions:e.anchorCollisions}:{},...e.anchorFrames?{anchorFrames:e.anchorFrames}:{},...e.paragraphMark?{paragraphMark:e.paragraphMark}:{},...e.continuation?{continuation:e.continuation}:{}})}function XC(e,t){return{...e,path:[...e.path,t]}}function ZC(e,t){if(e.status===`planned`)return Object.freeze([]);let n=Object.freeze({...t,path:Object.freeze([...t.path])});return Object.freeze(e.diagnostics.map(e=>Object.freeze({...e,source:n})))}function QC(e){return ju(e)}function $C(e,t){return Eu(`unavailable-drawing`,XC(e,t))}function ew(e,t){return Object.freeze({code:`MISSING_RESOURCE`,severity:`warning`,source:Object.freeze({...t,path:Object.freeze([...t.path])}),message:`Drawing ${e} resource is unavailable`})}function tw(e){return xC(e)||(/^date$/i.test(e.fieldType)?`date`:/^time$/i.test(e.fieldType)?`time`:`document`)}function nw(e){return e.sourceRunIndex}function rw(e){if(!e.textLayoutService||!e.textShapeRequest)return;let t=e.textLayoutService.shape({...e.textShapeRequest,text:e.text,measure:!0});return{ascentPt:t.ascentPt,descentPt:t.descentPt}}const iw=Object.freeze({yellow:`#FFFF00`,cyan:`#00FFFF`,green:`#00FF00`,magenta:`#FF00FF`,blue:`#0000FF`,red:`#FF0000`,darkBlue:`#000080`,darkCyan:`#008080`,darkGreen:`#008000`,darkMagenta:`#800080`,darkRed:`#800000`,darkYellow:`#808000`,darkGray:`#808080`,lightGray:`#C0C0C0`,black:`#000000`,white:`#FFFFFF`});function aw(e){return e.startsWith(`#`)?e:iw[e]??`#FFFF00`}function ow(e){let t=eh(e.vertAlign,e.fontSize)+(e.lineRelativePosition??e.position??0);return t===0?0:-t}function sw(e,t,n,r,i,a,o){let s=nw(e),c=s===void 0?void 0:t.runs[s],l=PC(c);if(e.metricOnly){let t=rw(e);return{kind:`anchor-host`,range:{start:n,end:n},bounds:{xPt:r,yPt:a,widthPt:0,heightPt:o},baselinePt:i,...t?{sourceMetrics:t}:{}}}let u=e.color?{kind:`explicit`,color:`#${e.color}`}:e.colorAuto?{kind:`auto`,...e.background?{background:`#${e.background}`}:{}}:{kind:`default`},d=e.fontRoute??B(e.fontFamily?`\"${e.fontFamily.replaceAll(`\"`,`\\\\\"`)}\"`:`sans-serif`,e.fontFamily?`native`:`generic`),f=e.ruby&&e.textLayoutService&&e.textShapeRequest?e.textLayoutService.shape({...e.textShapeRequest,text:e.text,measure:!0}):void 0,p=e.ruby&&e.textLayoutService&&e.textShapeRequest?e.textLayoutService.shape({...e.textShapeRequest,text:e.ruby.text,fontSizePt:e.ruby.fontSizePt,measure:!0}):void 0,m=e.ruby&&p?(p.clusters??[]).map(t=>{let n=p.spans.find(e=>e.start<=t.range.start&&e.end>=t.range.end)??p.spans[0];if(!n)throw Error(`Ruby shaping produced no selected-face span`);return{text:e.ruby.text.slice(t.range.start,t.range.end),offsetPt:t.offsetPt,fontRoute:n.fontRoute,fontSizePt:e.ruby.fontSizePt,fontWeight:n.font.weight,fontStyle:n.font.style,color:u}}):[],h=l?.ruby?.raisePt.status===`valid`?l.ruby.raisePt.value??void 0:e.ruby?.hpsRaisePt,g=e.ruby&&p?NS({baseOrigin:{xPt:0,yPt:0},baseAdvancePt:e.measuredWidth,guideAdvancePt:p.advancePt,...h===void 0?{}:{raisePt:h},...f?.inkBounds&&p.inkBounds?{baseInkTopPt:-f.inkBounds.ascentPt,guideInkBottomFromBaselinePt:p.inkBounds.descentPt}:{},spans:m}):[],_=ow(e);return{kind:`text`,text:e.text,...s===void 0?{}:{sourceRunIndex:s},...c?.type===`field`?{role:`field-result`,dependency:tw(c)}:{},...c?.type===`text`&&(c.noteRef?.kind===`footnote`||c.noteRef?.kind===`endnote`)?{noteReference:{kind:c.noteRef.kind,id:c.noteRef.id}}:{},range:{start:n,end:n+e.text.length},origin:{xPt:r,yPt:i+_},bounds:{xPt:r,yPt:a,widthPt:e.measuredWidth,heightPt:o},advancePt:e.measuredWidth,clusters:[{range:{start:n,end:n+e.text.length},offset:{xPt:0,yPt:0},advancePt:e.measuredWidth}],color:u,fontRoute:d,fontSizePt:wf(e,1),fontWeight:e.bold?700:400,fontStyle:e.italic?`italic`:`normal`,direction:e.rtl?`rtl`:`ltr`,...e.verticalRun?{writingMode:`vertical-rl`}:{},...e.charSpacing===void 0?{}:{characterSpacingPt:e.charSpacing},...e.charScale===void 0?{}:{characterScale:e.charScale},...e.fitTextRegionIndex===void 0?{}:{fitText:{regionIndex:e.fitTextRegionIndex,perGapPt:e.fitTextPerGapPx??0,trailingPadPt:e.fitTextTrailingPadPx??0}},...e.kerning===void 0?{}:{kerning:e.fontSize>=e.kerning},...e.position===void 0?{}:{positionPt:e.position},...e.vertAlign?{verticalAlign:e.vertAlign}:{},...e.tateChuYoko?{tateChuYoko:!0}:{},...e.tateChuYokoCompress?{tateChuYokoCompress:!0}:{},...e.ruby&&p?{ruby:{text:e.ruby.text,advancePt:p.advancePt,authored:{...l?.ruby?.align.status===`valid`&&l.ruby.align.value?{align:l.ruby.align.value}:{},...l?.ruby?.baseFontSizePt.status===`valid`&&l.ruby.baseFontSizePt.value!==null?{baseFontSizePt:l.ruby.baseFontSizePt.value}:{},...h===void 0?{}:{raisePt:h},...l?.ruby?.language.status===`valid`&&l.ruby.language.value?{language:l.ruby.language.value}:{}},paintOps:g}}:{},...e.emphasisMark?{emphasisMark:e.emphasisMark}:{},...e.highlight?{highlight:aw(e.highlight)}:{},...e.background?{background:`#${e.background}`}:{},...e.border?{runBorder:{val:l?.border?.val.value??e.border.style,color:e.border.color?`#${e.border.color}`:`#000000`,widthPt:e.border.width,spacePt:e.border.space??0,...l?.border?.themeColor.value?{themeColor:l.border.themeColor.value}:{},...l?.border?.themeTint.value?{themeTint:l.border.themeTint.value}:{},...l?.border?.themeShade.value?{themeShade:l.border.themeShade.value}:{},...l?.border?.shadow.status===`valid`&&l.border.shadow.value!==null?{shadow:l.border.shadow.value}:{},...l?.border?.frame.status===`valid`&&l.border.frame.value!==null?{frame:l.border.frame.value}:{}}}:{},...e.revision?{revision:e.revision}:{},typography:{caps:l?.caps??!1,smallCaps:l?.smallCaps??e.smallCaps===!0,strike:l?.strike??e.strikethrough,doubleStrike:l?.doubleStrike??e.doubleStrikethrough===!0,verticalAlign:l?.verticalAlign??{status:e.vertAlign?`valid`:`missing`,raw:e.vertAlign??null,value:e.vertAlign??null},positionPt:l?.positionPt??{status:e.position===void 0?`missing`:`valid`,raw:e.position===void 0?null:String(e.position*2),value:e.position??null},emphasis:l?.emphasis??{status:e.emphasisMark?`valid`:`missing`,raw:e.emphasisMark??null,value:e.emphasisMark??null},...l?.underline?{underline:l.underline}:{}},decorations:[],paintOps:[{text:e.text,range:{start:n,end:n+e.text.length},offset:{xPt:0,yPt:_},letterSpacingPt:Ih(e),scaleX:e.charScale??1,direction:e.rtl?`rtl`:`ltr`,kerning:e.kerning===void 0?`auto`:e.fontSize>=e.kerning?`normal`:`none`,writingMode:e.verticalRun?`vertical-rl`:`horizontal-tb`}],...e.hyperlink?{hyperlink:e.hyperlink}:{}}}function cw(e,t){let n=e.layout,r=n.visibleAscent??n.ascent,i=r+(n.visibleDescent??n.descent),a=t.lineSpacing?.rule===`auto`&&!t.hasRuby&&!t.lineGrid.active,o=a&&(t.lineSpacing?.value??1)<1,s=a&&!o?Math.max(i,n.visibleIntendedSingle??n.intendedSingle):e.advancePt;return e.topYPt+(s-i)/2+r}function lw(e,t,n){let r=e.numbering;if(!r)return;if(t.numberingMarkerGeometry)return t.numberingMarkerGeometry;let i=e.numberingMarkerShapeInput,a=n.environment.layoutServices?.text;if(!(!i||!a))return Kg(r,i,{authoredFirstIndentPt:e.indentFirst,physicalIndentLeftPt:t.physicalIndentLeftPt,tabStops:e.tabStops,defaultTabPt:t.defaultTabPt},a)}function uw(e,t,n,r,i){return i.bounds.widthPt<=0?t.baseRtl?n+r:n:t.baseRtl?i.bounds.xPt+i.bounds.widthPt+e.bodyOffsetPt:i.bounds.xPt-e.bodyOffsetPt}function dw(e,t,n,r,i,a){if(!e.shape||e.markerText===``)return[];let o=e.shape,s=Hg({baseRtl:n.baseRtl,alignedLeadingEdgePt:uw(e,n,r,i,a),authoredFirstIndentPt:t.indentFirst,markerShiftPt:e.markerShiftPt,markerWidthPt:e.markerWidthPt}),c=-e.markerText.length,l=t.numbering?.color?{kind:`explicit`,color:`#${t.numbering.color}`}:t.numbering?.colorAuto?{kind:`auto`}:t.paragraphMarkColor?{kind:`explicit`,color:`#${t.paragraphMarkColor}`}:{kind:`default`},u=0;return o.spans.map(e=>{let r=u;u+=e.advancePt;let i=o.clusters?o.clusters.filter(t=>t.range.start>=e.start&&t.range.end<=e.end).map(e=>({range:{start:c+e.range.start,end:c+e.range.end},offset:{xPt:e.offsetPt-r,yPt:0},advancePt:e.advancePt})):[{range:{start:c+e.start,end:c+e.end},offset:{xPt:0,yPt:0},advancePt:e.advancePt}],d=s+r;return{kind:`text`,role:`numbering-marker`,text:e.text,range:{start:c+e.start,end:c+e.end},origin:{xPt:d,yPt:a.baselinePt},bounds:{xPt:d,yPt:a.baselinePt-e.ascentPt,widthPt:e.advancePt,heightPt:e.ascentPt+e.descentPt},advancePt:e.advancePt,clusters:i,paintOps:[{text:e.text,range:{start:c+e.start,end:c+e.end},offset:{xPt:0,yPt:0},letterSpacingPt:0,scaleX:1,direction:n.baseRtl?`rtl`:`ltr`,kerning:`auto`,writingMode:`horizontal-tb`}],color:l,fontRoute:e.fontRoute,fontSizePt:t.numberingMarkerShapeInput?.fontSizePt??e.ascentPt+e.descentPt,fontWeight:e.font.weight,fontStyle:e.font.style,direction:n.baseRtl?`rtl`:`ltr`,decorations:[]}})}function fw(e){if(e)return e.startsWith(`#`)?e:`#${e}`}function pw(e,t,n){let r=fw(t),i=fw(n);return e.map(e=>({...e,placements:e.placements.map(e=>{if(e.kind!==`text`)return e;let t=e.background??r??i;return!t||e.color.kind===`explicit`?e:{...e,color:{kind:`auto`,background:t}}})}))}function mw(e){return e!=null&&e.style!==`none`}function hw(e,t,n,r,i,a,o){let s=n,c=n+r;e.indentFirst<0&&(e.bidi?c-=e.indentFirst:s+=e.indentFirst);for(let e of t.flatMap(e=>e.placements))!(e.kind===`text`&&e.role===`numbering-marker`||e.kind===`resource`&&e.resourceKind===`picture-bullet`)||!e.bounds||(s=Math.min(s,e.bounds.xPt),c=Math.max(c,e.bounds.xPt+e.bounds.widthPt));let l=e.borders,u=o.top===`none`?null:l?.[o.top]??null,d=o.bottom===`none`?null:l?.bottom??null,f=mw(l?.left??null)?l.left.space??0:0,p=mw(l?.right??null)?l.right.space??0:0,m=mw(u)?u.space??0:0,h=mw(d)?d.space??0:0;return{xPt:s-f,yPt:i-m,widthPt:c-s+f+p,heightPt:a+m+h}}function gw(e){return e.kind===`explicit`?e.color:e.kind===`auto`?mt(e.background??`#FFFFFF`):`#000000`}function _w(e){return e.inkBounds??{xMinPt:0,xMaxPt:e.advancePt,ascentPt:e.ascentPt,descentPt:e.descentPt}}function vw(e){return e===`circle`?`○`:e===`comma`?`﹅`:`•`}function yw(e,t,n){if(!(e.highlight||e.underline||e.strikethrough||e.doubleStrikethrough||e.emphasisMark))return;let r=e.textLayoutService,i=e.textShapeRequest;if(!r||!i)throw Error(`Retained typography geometry requires TextLayoutService`);let a=e=>r.shape({...i,text:e,measure:!0}),o=e=>{let t=a(e),n=t.spans[0];if(!n||t.spans.length!==1||n.start!==0||n.end!==e.length)throw Error(`Retained decoration probe requires one selected-face span`);return{ascentPt:n.ascentPt,descentPt:n.descentPt,...n.inkBounds?{inkBounds:n.inkBounds}:{}}},s=e.selectedFaceFontBox;if(!s||!e.selectedFaceInkBounds)throw Error(`Retained typography geometry requires authoritative selected-face metrics`);let c={ascentPt:s.ascentPt,descentPt:s.descentPt,inkBounds:e.selectedFaceInkBounds},l=gw(n),u=e.underline?{...e.underlineStyle?{authoredStyle:e.underlineStyle}:{},color:e.underlineColor&&e.underlineColor!==`auto`?`#${e.underlineColor}`:l,probe:o(`_`)}:void 0,d=e.strikethrough||e.doubleStrikethrough?{double:e.doubleStrikethrough===!0,probe:o(`-`),...e.doubleStrikethrough?{doubleProbe:o(`=`)}:{}}:void 0,f=e.emphasisMark?(()=>{let r=vw(e.emphasisMark),o=a(r),s=o.spans[0];if(!s)throw Error(`Emphasis shaping produced no selected-face span`);let c=(e.shapedClusters??[]).map(n=>{let r=e.text.slice(n.range.start,n.range.end);return{text:r,range:{start:t+n.range.start,end:t+n.range.end},ink:_w(a(r))}});return{authored:e.emphasisMark,glyph:r,mark:{inkBounds:_w(o),fontRoute:s.fontRoute,fontSizePt:i.fontSizePt,fontWeight:s.font.weight,fontStyle:s.font.style,color:n},clusterInk:c}})():void 0;return{base:c,...u?{underline:u}:{},...d?{strike:d}:{},...f?{emphasis:f}:{}}}function bw(e,t,n,r,i,a){if(e.metricOnly){let t=rw(e);return{kind:`anchor-host`,measuredWidthPt:0,range:{start:n,end:n},...t?{sourceMetrics:t}:{},...i?.type===`anchorHost`&&i.anchorOccurrenceId?{anchorOccurrenceId:i.anchorOccurrenceId}:{}}}let o=sw(e,t,n,0,0,0,0);if(o.kind!==`text`)throw Error(`Visible text segment projected as anchor host`);let s=Kh(e,r,1),c=e.charScale??1,l=ow(e),u=yw(e,n,o.color),d=e.shapedClusters,f=d?.length&&d[0]?.range.start===0&&d.at(-1)?.range.end===e.text.length&&d.every((e,t)=>t===0||d[t-1]?.range.end===e.range.start)&&d.every(e=>e.range.start<e.range.end&&Number.isFinite(e.offsetPt)&&Number.isFinite(e.advancePt))?d:void 0;if(e.text.length>0&&!f)throw Error(`Visible text acquisition requires complete authoritative grapheme clusters from TextLayoutService`);let p=(f??[]).map((t,i)=>{let a=e.text.slice(0,t.range.start),o=e.text.slice(t.range.start,t.range.end),u=[...a].length,d=[...o].length,p=i===(f?.length??0)-1?e.fitTextTrailingPadPx??0:0,m=e.punctuationCompressions?.filter(e=>e.end<=t.range.start).reduce((e,t)=>e+t.adjustmentPt,0)??0,h=e.punctuationCompressions?.filter(e=>e.end>t.range.start&&e.end<=t.range.end).reduce((e,t)=>e+t.adjustmentPt,0)??0,g=zh(e,a,r)*c,_=zh(e,o,r)*c;return{range:{start:n+t.range.start,end:n+t.range.end},offset:{xPt:t.offsetPt*c+u*s+g+m,yPt:l},advancePt:t.advancePt*c+d*s+_+p+h}}),m=e.snapGridLeadingPadPx??0;if(e.snapGridClass===`eastAsia`&&e.snapGridCellPitchPx){let t=e.snapGridCellPitchPx,r=0;p=p.map(i=>{e.text.slice(i.range.start-n,i.range.end-n);let a=Im(i.advancePt,t),o=a*t,s={...i,offset:{xPt:r*t+(o-i.advancePt)/2,yPt:i.offset.yPt},advancePt:o};return r+=a,s})}else m!==0&&(p=p.map(e=>({...e,offset:{xPt:e.offset.xPt+m,yPt:e.offset.yPt}})));let{origin:h,bounds:g,advancePt:_,paintOps:v,clusters:y,...b}=o,x=e.tateChuYoko&&e.tateChuYokoCompress?(()=>{if(!e.textLayoutService||!e.textShapeRequest)throw Error(`Tate-chu-yoko compression requires TextLayoutService`);let t=e.textLayoutService.shape({...e.textShapeRequest,text:e.text,fontSizePt:o.fontSizePt,measure:!0,clusterGeometry:!1}),n=t.ascentPt+t.descentPt;return n>o.fontSizePt&&n>0?o.fontSizePt/n:1})():1,S=e.punctuationCompressions?.some(t=>t.end<e.text.length)??!1,C=e.verticalRun?(()=>{if(!a)throw Error(`Vertical glyph planning capability is required for vertical text`);let t=v[0];return a.planRun({text:e.text,font:V(o.fontRoute,o.fontSizePt,o.fontWeight,o.fontStyle),fontKerning:t.kerning,fontSizePt:o.fontSizePt,letterSpacingPt:s,charScale:c,growTrRotateInk:!0,writingMode:t.writingMode}).map(r=>({...t,text:r.text,range:{start:n+r.range.start,end:n+r.range.end},offset:{xPt:r.originPt+(e.punctuationCompressions?.filter(e=>e.end<=r.range.start).reduce((e,t)=>e+t.adjustmentPt,0)??0),yPt:l},letterSpacingPt:s,glyphOrientation:r.orientation,...r.verticalFeature?{verticalFeature:!0}:{},...r.blockAxisInkBounds?{blockAxisInkBounds:r.blockAxisInkBounds}:{},...r.drawOffsetPt.xPt!==0||r.drawOffsetPt.yPt!==0?{glyphOffsetPt:r.drawOffsetPt}:{}}))})():e.tateChuYoko?v.map(t=>({...t,offset:{xPt:t.offset.xPt+e.measuredWidth/2,yPt:t.offset.yPt},glyphOrientation:`upright`,...x===1?{}:{scaleY:x}})):S?(()=>{let t=v[0],r=[];for(let t of p){let i=t.range.end-n,a=e.punctuationCompressions?.find(e=>e.end===i)?.adjustmentPt??null,o=r.at(-1);o&&o.adjustmentPt===a?o.end=t.range.end:r.push({start:t.range.start,end:t.range.end,offset:t.offset,adjustmentPt:a})}return r.map(r=>({...t,text:e.text.slice(r.start-n,r.end-n),range:{start:r.start,end:r.end},offset:r.offset,letterSpacingPt:s+(r.adjustmentPt??0)}))})():v,w=e.snapGridClass===`eastAsia`?(()=>{let t=C[0];return t?p.map(r=>({...t,text:e.text.slice(r.range.start-n,r.range.end-n),range:r.range,offset:r.offset})):C})():m===0?C:C.map(e=>({...e,offset:{xPt:e.offset.xPt+m,yPt:e.offset.yPt}}));return{...b,kind:`text`,measuredWidthPt:e.measuredWidth,clusters:p,basePaintOps:w.map(t=>({...t,letterSpacingPt:e.verticalRun&&t.glyphOrientation!==`sideways`?0:S?t.letterSpacingPt:s,...!e.verticalRun&&e.selectedFaceInkBounds?{inkBounds:e.selectedFaceInkBounds}:{},...!e.verticalRun&&e.selectedFaceInkBounds&&t.glyphOrientation===void 0?{blockAxisInkBounds:{startPt:(t.glyphOffsetPt?.yPt??0)-e.selectedFaceInkBounds.ascentPt,endPt:(t.glyphOffsetPt?.yPt??0)+e.selectedFaceInkBounds.descentPt}}:{}})),breakBefore:e.breakBefore!==!1&&!e.joinPrev,rtl:e.rtl,digitsAsAN:e.digitsAsAN,fixedPitch:e.fitTextRegionIndex!==void 0||e.snapGridClass!==void 0,...u?{retainedGeometry:u}:{},...e.textLayoutService?{textLayoutService:e.textLayoutService}:{},...e.textShapeRequest?{textShapeRequest:e.textShapeRequest}:{}}}function xw(e,t){let n=new Map;for(let e of t.lines)for(let t of e.layout.segments){let e=nw(t);if(e===void 0)continue;let r=`text`in t?t.metricOnly?0:t.text.length:`math`in t?t.fallbackText.length:+(`isTab`in t||`imagePath`in t);n.set(e,(n.get(e)??0)+r)}let r=e.runs.map((e,t)=>{let r=n.get(t);return r===void 0?e.type===`text`?e.text.length:e.type===`field`?e.fallbackText.length:e.type===`anchorHost`?0:1:r}),i=0;return{runStarts:r.map(e=>{let t=i;return i+=e,t}),runLengths:r}}function Sw(e){return`text`in e?e.metricOnly?0:e.text.length:`math`in e?e.fallbackText.length:1}function Cw(e,t,n,r,i,a,o,s,c,l,u,d=!1){let f=0,p=new Map,m=e.lines.some(e=>e.layout.segments.some(e=>`isTab`in e)),h=t.tabStops?.reduce((e,t)=>!e||t.pos<e.pos?t:e,void 0),g=e.lines.flatMap(e=>e.layout.segments.flatMap(e=>`text`in e&&!e.metricOnly?[e.text]:[])).join(``).trim(),_=!m&&h?.alignment===`decimal`&&g!==``&&/^[+\\-(]?[\\d., ]+\\)?%?$/u.test(g)?h.pos-o.physicalIndentLeftPt:void 0;return e.lines.map((m,h)=>{let g=m.layout,v=cw(m,o),y=1/0,b=f,x=[];for(let e of g.segments){let n=nw(e),r=n===void 0?void 0:t.runs[n],c=Sw(e),m=n===void 0?f:(s.runStarts[n]??f)+(p.get(n)??0);if(n!==void 0&&p.set(n,(p.get(n)??0)+c),y=Math.min(y,m),b=Math.max(b,m+c),`isTab`in e){let t=e,n=t.leader??`none`,i,a,o=r?.type===`text`||r?.type===`field`?r:void 0,s=o,u=e=>{if(!l)throw Error(`Formatted tab acquisition requires TextLayoutService`);return l.shape({text:e,fontSizePt:t.fontSize,fonts:s?.fontSlots?.direct??(o?.fontFamily?{ascii:o.fontFamily}:{}),themeFonts:s?.fontSlots?.theme,themeFontPresence:s?.fontSlots?.themePresent,weight:t.bold?700:400,style:t.italic?`italic`:`normal`,measure:!0})},d=e=>{let t=u(e),n=t.spans[0];if(!n||t.spans.length!==1||n.start!==0||n.end!==e.length)throw Error(`Formatted tab probe requires one selected-face span`);return{ascentPt:n.ascentPt,descentPt:n.descentPt,...n.inkBounds?{inkBounds:n.inkBounds}:{}}};if(o?.underline){let e=o.color?`#${o.color}`:`#000000`;a={base:d(`M`),probe:d(`_`),color:s?.underlineColor&&s.underlineColor!==`auto`?`#${s.underlineColor}`:e,...s?.underlineStyle?{authoredStyle:s.underlineStyle}:{}}}if(n!==`none`){if(!l)throw Error(`Tab leader acquisition requires TextLayoutService`);let e=n===`hyphen`?`-`:n===`underscore`||n===`heavy`?`_`:n===`middleDot`?`·`:`.`,r=u(e),a=r.spans[0];if(!a||!Number.isFinite(r.advancePt)||r.advancePt<=0)throw Error(`Tab leader acquisition produced no shaped glyph advance`);i={glyph:e,advancePt:r.advancePt,fontRoute:a.fontRoute,fontSizePt:t.fontSize,fontWeight:a.font.weight,fontStyle:a.font.style,color:o?.color?{kind:`explicit`,color:`#${o.color}`}:s?.colorAuto?{kind:`auto`}:{kind:`default`}}}x.push({kind:`tab`,range:{start:m,end:m+c},measuredWidthPt:t.measuredWidth,leader:n,fontSizePt:t.fontSize,bold:t.bold,italic:t.italic,...a?{underline:a}:{},...i?{leaderShape:i}:{}})}else if(`imagePath`in e){let t=e;if(t.anchor)continue;let n=nw(e),r=XC(i,n??0);if(t.inlineShape){x.push({kind:`inline-drawing`,range:{start:m,end:m+c},drawingId:`${a}:drawing:${n??0}`,measuredWidthPt:t.measuredWidth,widthPt:t.widthPt,heightPt:t.heightPt,topOffsetPt:-t.heightPt}),f=Math.max(f,m+c);continue}if(t.unavailableResourceKind){x.push({kind:`unavailable-resource`,range:{start:m,end:m+c},resourceKind:t.unavailableResourceKind,measuredWidthPt:t.measuredWidth,widthPt:t.widthPt,heightPt:t.heightPt,topOffsetPt:-t.heightPt,drawingId:$C(i,n??0)}),f=Math.max(f,m+c);continue}let o=t.chart?`chart`:`image`,s=t.chartResourceKey??(t.chart?QC(r):ku(r,t.imagePath));x.push({kind:`resource`,range:{start:m,end:m+c},...n===void 0?{}:{sourceRunIndex:n},resourceKey:s,resourceKind:o,measuredWidthPt:t.measuredWidth,widthPt:t.widthPt,heightPt:t.heightPt,topOffsetPt:-t.heightPt,...d?{orientation:`upright-physical`}:{}})}else if(`math`in e){let t=e;x.push({kind:`resource`,range:{start:m,end:m+c},...nw(e)===void 0?{}:{sourceRunIndex:nw(e)},resourceKey:t.mathResourceKey,resourceKind:`math`,measuredWidthPt:t.measuredWidth,widthPt:t.measuredWidth,heightPt:t.mathAscent+t.mathDescent,topOffsetPt:-t.mathAscent})}else x.push(bw(e,t,m,Lg(o),r,u));f=Math.max(f,m+c)}let S=g.segments.length===1&&`math`in(g.segments[0]??{})?g.segments[0]:void 0;return qC({paragraphXPt:n,availableWidthPt:r,alignment:t.alignment,baseRtl:o.baseRtl,isFirstLine:h===0,isLastLine:h===e.lines.length-1,stretchLastLine:o.stretchLastLine,firstLineIndentPt:o.firstIndentPt,...h===0&&c?{numbering:{bodyOffsetPt:c.bodyOffsetPt}}:{},..._===void 0?{}:{decimalAutoTabPt:_},...S?.display?{displayMathJustification:S.jc??o.mathDefJc??`centerGroup`}:{},line:{range:{start:Number.isFinite(y)?y:f,end:b},topPt:m.topYPt,baselinePt:v,advancePt:m.advancePt,xOffsetPt:g.xOffset,availableWidthPt:g.availWidth,endsWithBreak:g.endsWithBreak??!1,segments:x}})})}function ww(e,t,n,r,i){let a=i.filter(e=>e.alignment===`bar`);return a.length===0?e:e.map(e=>({...e,barTabRules:a.map(i=>{let a=r?t+n-i.pos:t+i.pos;return{from:{xPt:a,yPt:e.bounds.yPt},to:{xPt:a,yPt:e.bounds.yPt+e.bounds.heightPt},color:`#000000`,widthPt:0,authoredStyle:`single`,style:`solid`}})}))}function Tw(e,t){return{start:e.start+t,end:e.end+t}}function Ew(e,t){if(!Number.isFinite(t)||t<0)throw RangeError(`Paragraph continuation source range must be finite and non-negative`);let n=e[0];if(!n)return e;let r=t-n.range.start;return r===0?e:e.map(e=>({...e,range:Tw(e.range,r),placements:e.placements.map(e=>{let t=Tw(e.range,r);return e.kind===`text`?{...e,range:t,clusters:e.clusters.map(e=>({...e,range:Tw(e.range,r)})),paintOps:e.paintOps.map(e=>({...e,range:Tw(e.range,r)}))}:{...e,range:t}})}))}function Dw(e,t,n,r,i){let a=e.contentEndYPt-e.contentStartYPt;return qC({paragraphXPt:n,availableWidthPt:r,alignment:t.alignment,baseRtl:i.baseRtl,isFirstLine:!0,isLastLine:!0,stretchLastLine:i.stretchLastLine,line:{range:{start:0,end:0},topPt:e.contentStartYPt,baselinePt:e.contentEndYPt-e.lastLineBelowBaselinePt,advancePt:a,xOffsetPt:0,availableWidthPt:r,endsWithBreak:!1,segments:[]}})}function Ow(e,t){let n=t.anchorFrames,r=e.anchorXRelativeFrom??(e.anchorXFromMargin?`margin`:`page`),i=e.anchorYRelativeFrom??(e.anchorYFromPara?`paragraph`:`page`),a=n?.page,o=n?.margin,s=a&&o?{xPt:a.xPt,yPt:a.yPt,widthPt:Math.max(0,o.xPt-a.xPt),heightPt:a.heightPt}:null,c=a&&o?{xPt:o.xPt+o.widthPt,yPt:a.yPt,widthPt:Math.max(0,a.xPt+a.widthPt-o.xPt-o.widthPt),heightPt:a.heightPt}:null,l=a&&o?{xPt:a.xPt,yPt:a.yPt,widthPt:a.widthPt,heightPt:Math.max(0,o.yPt-a.yPt)}:null,u=a&&o?{xPt:a.xPt,yPt:o.yPt+o.heightPt,widthPt:a.widthPt,heightPt:Math.max(0,a.yPt+a.heightPt-o.yPt-o.heightPt)}:null,d=n?.pageParity===`even`,f=r===`page`?a:r===`column`||r===`character`?n?.column:r===`leftMargin`?s:r===`rightMargin`?c:r===`insideMargin`?d?c:s:r===`outsideMargin`?d?s:c:o,p=i===`paragraph`||i===`line`||i===`character`?{xPt:t.placement.paragraphXPt,yPt:t.placement.startYPt,widthPt:t.placement.availableWidthPt,heightPt:0}:i===`page`?a:i===`column`?n?.column:i===`topMargin`?l:i===`bottomMargin`?u:i===`insideMargin`?d?u:l:i===`outsideMargin`?d?l:u:o;if(!f||!p)return null;let m=e.widthPt,h=e.heightPt,g=e.anchorXPt??0,_=e.anchorYPt??0,v=e.type===`shape`?e.pctPosH:null,y=e.type===`shape`?e.pctPosV:null;return{xPt:v==null?e.anchorXAlign===`center`?f.xPt+(f.widthPt-m)/2:e.anchorXAlign===`right`||e.anchorXAlign===`outside`&&!d||e.anchorXAlign===`inside`&&d?f.xPt+f.widthPt-m:f.xPt+g:f.xPt+f.widthPt*v+g,yPt:y==null?e.anchorYAlign===`center`?p.yPt+(p.heightPt-h)/2:e.anchorYAlign===`bottom`||e.anchorYAlign===`outside`&&!d||e.anchorYAlign===`inside`&&d?p.yPt+p.heightPt-h:p.yPt+_:p.yPt+p.heightPt*y+_,widthPt:m,heightPt:h}}function kw(e,t){return Ow(e,t)??{xPt:e.anchorXPt+(e.anchorXFromMargin?t.placement.paragraphXPt:0),yPt:e.anchorYPt+(e.anchorYFromPara?t.placement.startYPt:0),widthPt:e.widthPt,heightPt:e.heightPt}}function Aw(e,t,n,r,i=!1){let a=XC(n.source,r),o=kS(e,t,n.environment.layoutServices?.text,e.vmlTextPathInput,e.fill?.fillType===`image`?ku(a,e.fill.imagePath):void 0),s=[o.command],c=ZC(o,a);return{kind:`drawing`,id:`${n.id}:drawing:${r}`,source:a,flowDomainId:n.flowDomainId,flowBounds:t,inkBounds:t,advancePt:0,ordinaryFlow:!1,commands:s,...c.length===0?{}:{diagnostics:c},...i?{}:{anchorLayer:{occurrenceId:`public-shape:${n.id}:${r}`,behindDoc:e.behindDoc===!0,relativeHeight:Number.isFinite(e.zOrder)?e.zOrder:r,sourceOrder:r,horizontalOwnership:e.anchorXRelativeFrom===`character`||e.anchorXRelativeFrom===`column`?`host`:`page`,verticalOwnership:e.anchorYRelativeFrom===`paragraph`||e.anchorYRelativeFrom===`line`||e.anchorYRelativeFrom===`character`||!e.anchorYRelativeFrom&&e.anchorYFromPara?`host`:`page`}}}}function jw(e,t,n){if(!e.anchor||e.anchorAcquisitionInput)return null;let r=Ow(e,t);if(!r)return null;let i=e.anchorYRelativeFrom??(e.anchorYFromPara?`paragraph`:`page`),a=XC(t.source,n);return{kind:`drawing`,id:`${t.id}:public-anchor-drawing:${n}`,source:a,flowDomainId:t.flowDomainId,flowBounds:r,inkBounds:r,advancePt:0,ordinaryFlow:!1,commands:[{kind:`resource`,resourceKind:e.type,resourceKey:e.type===`image`?ku(a,e.imagePath):QC(a),rect:r,...t.environment.verticalPageFrame?{orientation:`upright-physical`}:{}}],anchorLayer:{occurrenceId:`public-anchor:${t.id}:${n}`,behindDoc:!1,relativeHeight:n,sourceOrder:n,horizontalOwnership:`page`,verticalOwnership:i===`paragraph`?`host`:`page`}}}function Mw(e){return(e.type===`image`||e.type===`chart`||e.type===`shape`||e.type===`unavailableDrawing`)&&e.anchorAcquisitionInput!==void 0}function Nw(e){return[{xPt:e.xPt,yPt:e.yPt},{xPt:e.xPt+e.widthPt,yPt:e.yPt},{xPt:e.xPt+e.widthPt,yPt:e.yPt+e.heightPt},{xPt:e.xPt,yPt:e.yPt+e.heightPt}]}function Pw(e,t,n){let r=t.xPt-e.xPt,i=t.yPt-e.yPt,a=e.xPt+e.widthPt-t.xPt-t.widthPt,o=e.yPt+e.heightPt-t.yPt-t.heightPt;return{xPt:n.xPt-r,yPt:n.yPt-i,widthPt:Math.max(0,n.widthPt+r+a),heightPt:Math.max(0,n.heightPt+i+o)}}function Fw(e,t){return{a:t.a,b:t.b,c:t.c,d:t.d,e:e.xPt+e.widthPt/2,f:e.yPt+e.heightPt/2}}function Iw(e,t){let n=[uy(t,e),uy(t,{xPt:e.xPt+e.widthPt,yPt:e.yPt}),uy(t,{xPt:e.xPt,yPt:e.yPt+e.heightPt}),uy(t,{xPt:e.xPt+e.widthPt,yPt:e.yPt+e.heightPt})];if(n.some(e=>e===null))throw Error(`Upright drawing transform must be invertible`);let r=n,i=Math.min(...r.map(e=>e.xPt)),a=Math.min(...r.map(e=>e.yPt));return{xPt:i,yPt:a,widthPt:Math.max(...r.map(e=>e.xPt))-i,heightPt:Math.max(...r.map(e=>e.yPt))-a}}function Lw(e,t){return vf(t,e)}function Rw(e,t){let n=e=>{let n=yf(t,{top:e.topPt,right:e.rightPt,bottom:e.bottomPt,left:e.leftPt});return{topPt:n.top,rightPt:n.right,bottomPt:n.bottom,leftPt:n.left}};return{...e,axes:{horizontal:e.axes.vertical,vertical:e.axes.horizontal},geometry:{...e.geometry,objectFrame:vf(t,e.geometry.objectFrame),inkBounds:vf(t,e.geometry.inkBounds),wrapBounds:e.geometry.wrapBounds?vf(t,e.geometry.wrapBounds):null,size:{horizontal:e.geometry.size.vertical,vertical:e.geometry.size.horizontal},parentEffectExtent:n(e.geometry.parentEffectExtent),wrap:{...e.geometry.wrap,distances:n(e.geometry.wrap.distances),distanceSources:yf(t,e.geometry.wrap.distanceSources),effectExtent:n(e.geometry.wrap.effectExtent),...e.geometry.wrap.polygon?{polygon:{...e.geometry.wrap.polygon,points:e.geometry.wrap.polygon.points.map(e=>_f(t,e))}}:{}}}}}function zw(e,t){let n=e.geometry.objectFrame;if(n.xPt===t.xPt&&n.yPt===t.yPt&&n.widthPt===t.widthPt&&n.heightPt===t.heightPt)return e;let r=n.widthPt===0?1:t.widthPt/n.widthPt,i=n.heightPt===0?1:t.heightPt/n.heightPt,a=e.geometry.wrap.polygon;return{...e,geometry:{...e.geometry,objectFrame:t,inkBounds:Pw(e.geometry.inkBounds,n,t),wrapBounds:e.geometry.wrapBounds?Pw(e.geometry.wrapBounds,n,t):null,wrap:{...e.geometry.wrap,polygon:a?{...a,points:a.points.map(e=>({xPt:t.xPt+(e.xPt-n.xPt)*r,yPt:t.yPt+(e.yPt-n.yPt)*i}))}:null}}}}function Bw(e,t,n){let r=e.group?.resolvedChildFrame;if(!r)return t;let i=e.extent.widthPt,a=e.extent.heightPt;if(e.extent.widthStatus!==`valid`||e.extent.heightStatus!==`valid`||i===null||a===null||i<=0||a<=0)throw Error(`resolved grouped anchor requires its authored wp:extent`);let o=n===void 0?t:vf(n.logicalToPhysical,t),s=o.widthPt/i,c=o.heightPt/a,l={xPt:o.xPt+r.offsetXPt*s,yPt:o.yPt+r.offsetYPt*c,widthPt:r.widthPt*s,heightPt:r.heightPt*c};return n===void 0?l:vf(n.physicalToLogical,l)}function Vw(e,t,n=!1){let r=e.axes[t];return r.status!==`resolved`||n||r.referenceFrame===`paragraph`||r.referenceFrame===`line`||r.referenceFrame===`character`?`host`:`page`}function Hw(e,t,n,r,i,a,o,s,c,l){let u=-1,d;for(let t=0;t<n.length;t+=1){let r=n[t]?.placements.find(t=>t.kind===`anchor-host`&&t.anchorOccurrenceId===e);if(r?.kind===`anchor-host`){u=t,d=r;break}}if(!d||u<0)return null;let f=[...t].sort((e,t)=>(e.run.anchorAcquisitionInput?.group?.sourceIndex??0)-(t.run.anchorAcquisitionInput?.group?.sourceIndex??0)||e.runIndex-t.runIndex),p=f[0];if(!p?.run.anchorAcquisitionInput)return null;let m=n[u],h=i.anchorFrames,g=p.run.anchorAcquisitionInput.behavior,_=g.layoutInCellStatus===`valid`&&g.layoutInCell===!0&&i.anchorCellBounds!==void 0?i.anchorCellBounds:null,v=_C({acquisition:p.run.anchorAcquisitionInput,frames:{page:h?.page?_?{...h.page,..._}:h.page:null,margin:h?.margin?_?{...h.margin,..._}:h.margin:null,column:h?.column?_?{...h.column,..._}:h.column:null,paragraph:{xPt:i.placement.paragraphXPt,yPt:i.placement.startYPt,widthPt:i.placement.availableWidthPt,heightPt:Math.max(0,a)},line:m.bounds,character:d.bounds,pageParity:h?.pageParity??null}});if(v.status!==`resolved`)return{result:v,textBoxes:[],hostLineIndex:u,hostRange:d.range};let y=i.environment.verticalPageFrame&&h?.page?mf(h.page,i.environment.pageWritingMode):void 0,b=y===void 0?void 0:bf(i.environment.pageWritingMode,y),x=y===void 0?v:Rw(v,b.physicalToLogical);if(g.behindDocStatus!==`valid`||g.relativeHeightStatus!==`valid`||g.behindDoc===null||g.relativeHeight===null)throw Error(`resolved anchor frame must retain required CT_Anchor behavior`);let S=x.geometry.objectFrame,C=y===void 0?void 0:Fw(S,b.physicalToLogical),w=C?{...i.environment,verticalCJK:!1,verticalPageFrame:!1}:i.environment,T=[],E=[],D=[],O=[],k=new Map,A=S;if(p.run.type===`shape`&&p.run.anchorAcquisitionInput.group===null){let t=XC(i.source,p.runIndex),n=C?Iw(S,C):S,r=Zw(p.run,n,{id:`${i.id}:anchor-textbox:${e}:${p.runIndex}`,source:t,flowDomainId:i.flowDomainId,context:i.context,measurer:i.measurer,environment:w,input:p.run.textBoxInput,acquireCompleteStory:i.acquireCompleteStory,...C?{coordinateSpace:`upright-physical`}:{}});r&&(k.set(p.runIndex,r),A=C?Lw(r.flowBounds,C):r.flowBounds)}let j=zw(x,A);if(g.allowOverlapStatus!==`valid`||g.allowOverlap===null||g.layoutInCellStatus!==`valid`||g.layoutInCell===null)throw Error(`resolved anchor frame must retain overlap and cell behavior`);let M=j.geometry.wrapBounds,N=!g.allowOverlap,P=g.allowOverlap&&i.ordinaryFlow&&M!==null;if(N||P){let t=Vw(j,`vertical`,g.layoutInCell&&i.anchorCellBounds!==void 0),n=l.filter(e=>!YS(t,g.relativeHeight,e.relativeHeight)),r=(N?[...c,...n].filter(t=>t.occurrenceId!==e).map(e=>({occurrenceId:e.occurrenceId,bounds:e.bounds})):o.filter(t=>t.anchorOccurrenceId!==e).map(e=>({occurrenceId:e.anchorOccurrenceId??e.id,bounds:e.bounds}))).map(e=>({occurrenceId:e.occurrenceId,kind:`drawingml`,paragraphId:0,bounds:e.bounds,exclusionBounds:e.bounds})),a=i.anchorFrames?.page,s=N&&g.layoutInCell&&i.anchorCellBounds?i.anchorCellBounds.xPt+i.anchorCellBounds.widthPt:a?a.xPt+a.widthPt:1/0,u=Wp({moving:{occurrenceId:e,kind:`drawingml`,paragraphId:1,bounds:A,exclusionBounds:M??A},blockers:r,avoidance:N?{kind:`drawingml-normative`}:{kind:`word-different-paragraph`,paragraphId:1},rightBoundaryPt:s}).displacement;if(u.xPt!==0||u.yPt!==0){if(A=$(A,u),C)C={...C,e:C.e+u.xPt,f:C.f+u.yPt};else{let e=k.get(p.runIndex);e&&k.set(p.runIndex,cx(e,u))}j=zw(x,A)}}for(let{run:t,runIndex:n}of f){let r=XC(i.source,n),a=t.anchorAcquisitionInput,o=Bw(a,A,b),s=C?Iw(o,C):o;if(t.type===`image`)T.push({kind:`resource`,resourceKind:`image`,resourceKey:ku(r,t.imagePath),rect:s});else if(t.type===`chart`)T.push({kind:`resource`,resourceKind:`chart`,resourceKey:QC(r),rect:s});else if(t.type===`unavailableDrawing`)T.push({kind:`noop`}),E.push(ew(t.resourceKind,r));else{let o=a.group?.resolvedChildFrame,c=kS(o?{...t,rotation:o.rotationDeg,flipH:o.flipH,flipV:o.flipV}:t,s,i.environment.layoutServices?.text,t.vmlTextPathInput,t.fill?.fillType===`image`?ku(r,t.fill.imagePath):void 0);T.push(c.command),E.push(...ZC(c,r));let l=`${i.id}:anchor-textbox:${e}:${n}`,u=k.get(n)??Zw(t,s,{id:l,source:r,flowDomainId:i.flowDomainId,context:i.context,measurer:i.measurer,environment:w,input:t.textBoxInput,acquireCompleteStory:i.acquireCompleteStory,...C?{coordinateSpace:`upright-physical`}:{}});u&&(D.push(u),O.push(l))}}let ee={kind:`drawing`,id:`${i.id}:anchor-drawing:${e}`,source:XC(i.source,p.runIndex),flowDomainId:i.flowDomainId,flowBounds:A,inkBounds:j.geometry.inkBounds,advancePt:0,ordinaryFlow:!1,...C?{orientation:`upright-physical`,transform:C}:{},commands:T,...E.length===0?{}:{diagnostics:Object.freeze(E)},anchorLayer:{occurrenceId:e,behindDoc:g.behindDoc,relativeHeight:g.relativeHeight,sourceOrder:p.runIndex,horizontalOwnership:Vw(j,`horizontal`,g.layoutInCell&&i.anchorCellBounds!==void 0),verticalOwnership:Vw(j,`vertical`,g.layoutInCell&&i.anchorCellBounds!==void 0),...g.layoutInCell&&WS(g.allowOverlap,j.geometry.wrap.kind)&&i.anchorCellBounds?{cellContainment:!0}:{}},...O.length?{textBoxIds:O}:{}},te=j.geometry.wrapBounds,F=te&&j.geometry.wrap.kind!==`none`?{id:`${i.id}:anchor-exclusion:${e}`,wrap:j.geometry.wrap.kind,...j.geometry.wrap.side?{wrapSide:j.geometry.wrap.side}:{},bounds:te,polygon:j.geometry.wrap.polygon?.points??Nw(te),anchorOccurrenceId:e,verticalOwnership:Vw(j,`vertical`,g.layoutInCell&&i.anchorCellBounds!==void 0)}:void 0,I={occurrenceId:e,bounds:A,horizontalOwnership:Vw(j,`horizontal`,g.layoutInCell&&i.anchorCellBounds!==void 0),verticalOwnership:Vw(j,`vertical`,g.layoutInCell&&i.anchorCellBounds!==void 0),...g.relativeHeight===null?{}:{relativeHeight:g.relativeHeight}};return{result:j,drawing:ee,exclusion:F,collision:I,textBoxes:D,...g.layoutInCell&&WS(g.allowOverlap,j.geometry.wrap.kind)&&i.anchorCellBounds?{cellContainmentBounds:A}:{},hostLineIndex:u,hostRange:d.range}}function Uw(e,t){let n=t.bidi===!0,r=t.runs.some(e=>e.type===`text`&&!!e.ruby),i=t.runs.some(e=>e.type===`text`&&Tf.test(e.text));return{...e,rightIndentGrid:{...e.rightIndentGrid,paragraphAllowsAdjustment:t.adjustRightInd!==!1},physicalIndentLeftPt:n?t.indentRight:t.indentLeft,physicalIndentRightPt:n?t.indentLeft:t.indentRight,firstIndentPt:t.indentFirst,lineSpacing:t.lineSpacing,spaceBeforePt:t.spaceBefore,spaceAfterPt:t.spaceAfter,baseRtl:n,isJustified:Pg(t.alignment),stretchLastLine:Fg(t.alignment),tabStops:D_(t),hasRuby:r,hasEastAsianText:i}}function Ww(e){return e===`vert`||e===`vert270`||e===`eaVert`||e===`mongolianVert`?e:void 0}function Gw(e,t,n){let r=Math.max(0,t-n);return e===`b`?r:e===`ctr`?r/2:0}function Kw(e,t,n,r){let i=t===`eaVert`||t===`mongolianVert`,a=e.lines.map(e=>{let a=t===`mongolianVert`?e.placements.reduce((t,n)=>n.kind===`text`&&n.ruby?Math.max(t,e.baselinePt-Math.min(e.baselinePt,...n.ruby.paintOps.map(e=>e.origin.yPt))):t,0):0,o=(t===`mongolianVert`?2*n.yPt+n.heightPt-e.baselinePt+r.bottomPt-r.leftPt+a:e.baselinePt)-e.baselinePt,s=e.bounds.yPt+o,c=e.placements.map(e=>{if(e.kind!==`text`)return`bounds`in e&&e.bounds?{...e,bounds:{...e.bounds,yPt:e.bounds.yPt+o}}:e;let t=i?e.clusters.map(t=>{let n=e.text.slice(t.range.start-e.range.start,t.range.end-e.range.start),r=e.paintOps.find(e=>e.range.start<=t.range.start&&e.range.end>=t.range.end)??e.paintOps[0],i=Tf.test(n);return{...r,text:n,range:t.range,offset:i?{xPt:t.offset.xPt+t.advancePt/2,yPt:t.offset.yPt}:t.offset,glyphOrientation:i?`upright`:`sideways`}}):e.paintOps;return vT({...e,paintOps:t},o)});return{...e,bounds:{...e.bounds,yPt:s},baselinePt:e.baselinePt+o,placements:c}});return{...e,lines:a}}function qw(e,t){let n=(e,n)=>e.kind===`paragraph`?Kw(e,t===`mongolianVert`?`eaVert`:t,n,{topPt:0,rightPt:0,bottomPt:0,leftPt:0}):qw(e,t),r={...e,rows:e.rows.map(e=>({...e,cells:e.cells.map(e=>({...e,blocks:e.blocks.map(t=>({...t,layout:n(t.layout,e.contentBounds)}))}))}))},i=new Map,a=e=>{let n=i.get(e);if(n)return n;let r={...e,child:qw(e.child,t)};return i.set(e,r),r},o=e.floatingTables?.map(a),s=e.resolvedFloatingTables?.map(e=>{let t=a(e.source);return{...e,source:t,child:t.child}});return{...r,...o?{floatingTables:o}:{},...s?{resolvedFloatingTables:s}:{}}}function Jw(e,t,n,r){return{...e,blocks:e.blocks.map(e=>{if(e.kind===`paragraph`)return Kw(e,t,n,r);if(e.kind===`table`)return qw(e,t);throw Error(`Text-box story contains unsupported retained node: ${e.kind}`)})}}function Yw(e,t,n=!0){if(t===0)return e;let r={xPt:0,yPt:t};return{...e,flowBounds:$(e.flowBounds,r),inkBounds:$(e.inkBounds,r),...e.clipBounds?{clipBounds:n?$(e.clipBounds,r):e.clipBounds}:{},blocks:e.blocks.map(e=>{if(e.kind===`paragraph`)return ox(e,r);if(e.kind===`table`)return Xw(e,r);throw Error(`Text-box story contains unsupported retained node: ${e.kind}`)})}}function Xw(e,t){let n=dx(e,t),r=new Map,i=e=>{let n=r.get(e);if(n)return n;let i={...e,anchorBounds:$(e.anchorBounds,t),...e.columnBounds?{columnBounds:$(e.columnBounds,t)}:{},child:Xw(e.child,t)};return r.set(e,i),i},a=e.floatingTables?.map(i),o=e.resolvedFloatingTables?.map(e=>{let n=i(e.source);return{...e,xPt:e.xPt+t.xPt,yPt:e.yPt+t.yPt,bounds:$(e.bounds,t),exclusionBounds:$(e.exclusionBounds,t),source:n,child:n.child}});return{...n,...a?{floatingTables:a}:{},...o?{resolvedFloatingTables:o}:{}}}function Zw(e,t,n){let r=n.source,i=n.input??{kind:`compatibility`,source:{story:`textbox`,storyInstance:`${r.story}:${r.storyInstance}:${r.path.join(`.`)}`,path:[]},paragraphs:jS(e,{story:`textbox`,storyInstance:`${r.story}:${r.storyInstance}:${r.path.join(`.`)}`,path:[]})},a=i.source,o=i.kind===`complete`?i.blockCount:i.paragraphs.length;if(o===0)return;let s=Ww(e.textVert),c=s?{xPt:-t.heightPt/2,yPt:-t.widthPt/2,widthPt:t.heightPt,heightPt:t.widthPt}:t,l=i.kind===`compatibility`?i.paragraphs:Object.freeze([]),u={topPt:e.textInsetT??0,rightPt:e.textInsetR??0,bottomPt:e.textInsetB??0,leftPt:e.textInsetL??0},d={xPt:c.xPt+u.leftPt,yPt:c.yPt+u.topPt,widthPt:Math.max(0,c.widthPt-u.leftPt-u.rightPt),heightPt:Math.max(0,c.heightPt-u.topPt-u.bottomPt)},f;if(i.kind===`complete`){if(!n.acquireCompleteStory)throw Error(`Complete text-box content requires the shared story acquisition adapter`);f=n.acquireCompleteStory({source:a,container:{id:`${n.id}:story`,kind:`textbox`,bounds:d,capacity:`unbounded`},coordinateSpace:n.coordinateSpace??`section-logical`})}let p=c.yPt+u.topPt,m=null,h=l.map((t,r)=>{let i=t.runs.map(t=>Of({text:t.text,fontSizePt:t.fontSizePt,color:t.color?.slice(1)??null,fontFamily:t.fontFamily??null,fontFamilyEastAsia:t.fontFamilyEastAsia??null,bold:t.bold,italic:t.italic,ruby:t.ruby},e.textVert)),a=Math.max(0,c.widthPt-u.leftPt-u.rightPt-t.indentLeftPt-t.indentRightPt-Math.max(0,t.indentFirstPt)),o=s?t.image?.heightPt??0:t.image?.widthPt??0,l=s?t.image?.widthPt??0:t.image?.heightPt??0,f=o>a&&o>0?a/o:1,h=t.image?[{type:`image`,imagePath:t.image.imagePath,mimeType:t.image.mimeType,...t.image.svgImagePath?{svgImagePath:t.image.svgImagePath}:{},widthPt:o>0?o*f:a,heightPt:l>0?l*f:a,anchor:!1}]:i,g={alignment:t.alignment,indentLeft:t.indentLeftPt,indentRight:t.indentRightPt,indentFirst:t.indentFirstPt,spaceBefore:t.spacing.beforePt,spaceAfter:t.spacing.afterPt,lineSpacing:t.lineSpacing,numbering:t.numbering??null,numberingMarkerShapeInput:t.numberingMarkerShapeInput,tabStops:[...t.tabStops],bidi:t.bidi,contextualSpacing:t.contextualSpacing,styleId:t.styleId,runs:h},_=Uw(n.context,g),v=vC(m,t,m?.spacing.afterPt??0,t.spacing.beforePt);p+=v;let y=lT(g,{id:`${n.id}:paragraph:${r}`,source:t.source,flowDomainId:`${n.flowDomainId}:textbox`,ordinaryFlow:!0,context:_,placement:{startYPt:p,paragraphXPt:c.xPt+u.leftPt,availableWidthPt:Math.max(0,c.widthPt-u.leftPt-u.rightPt),maximumYPt:c.yPt+c.heightPt-u.bottomPt,suppressSpaceBefore:!0},measurer:n.measurer,environment:n.environment,exclusions:[]});return p+=y.advancePt-y.spacing.afterPt,m=t,s?Kw(y,s,d,u):y}),g=f?Math.max(0,f.advancePt+u.topPt+u.bottomPt):Math.max(0,p-c.yPt+u.bottomPt),_=e.textAutofit===`sp`&&o>0&&(!s||l.every(e=>e.image===void 0))&&Number.isFinite(g)&&g>0?s?{...t,widthPt:g}:{...t,heightPt:g}:t,v=s?{xPt:-_.heightPt/2,yPt:-_.widthPt/2,widthPt:_.heightPt,heightPt:_.widthPt}:_;if(s&&_.widthPt!==t.widthPt&&s!==`mongolianVert`){let e=v.yPt-c.yPt;h=h.map(t=>bT(t,e))}let y={xPt:v.xPt+u.leftPt,yPt:v.yPt+u.topPt,widthPt:Math.max(0,v.widthPt-u.leftPt-u.rightPt),heightPt:Math.max(0,v.heightPt-u.topPt-u.bottomPt)},b=bv(h.map(e=>e.flowBounds))??{xPt:y.xPt,yPt:y.yPt,widthPt:0,heightPt:0},x=bv(h.map(e=>e.inkBounds))??{xPt:y.xPt,yPt:y.yPt,widthPt:0,heightPt:0},S=f??{story:`textbox`,flowBounds:b,inkBounds:x,clipBounds:y,blocks:h,advancePt:Math.max(0,g-u.topPt-u.bottomPt),diagnostics:[]},C=KS(S);return f&&s&&(S=Jw(Yw(S,v.yPt-c.yPt),s,y,u)),S=Yw(S,Gw(e.textAnchor,y.heightPt,C),!1),Pu({kind:`textbox`,id:n.id,source:l[0]?.source??a,flowDomainId:`${n.flowDomainId}:textbox`,flowBounds:_,inkBounds:_,...e.defaultTextColor?{defaultTextColor:`#${e.defaultTextColor.replace(/^#/u,``)}`}:{},...e.textAutofit===`none`?{clipBounds:y}:{},advancePt:0,ordinaryFlow:!1,story:S,transform:s?{a:0,b:s===`vert270`?-1:1,c:s===`vert270`?1:-1,d:0,e:_.xPt+_.widthPt/2,f:_.yPt+_.heightPt/2}:{a:1,b:0,c:0,d:1,e:0,f:0},writingMode:e.textVert===`vert270`?`vertical-lr`:e.textVert?`vertical-rl`:`horizontal-tb`,insets:u,contentBounds:v,...s?{verticalMode:s}:{}})}var Qw=class extends Y{reason;states;occurrenceCapacity;constructor(e,t,n){super(`NON_CONVERGENCE`,`parser-owned paragraph anchor reflow did not converge (${e}; ${n} occurrences; ${t.length} states)`),this.name=`ParagraphAnchorReflowNonConvergenceError`,this.reason=e,this.states=Object.freeze([...t]),this.occurrenceCapacity=n}};function $w(e,t){if(t.length===0)return e.placement;if(e.placement.wrap)throw Error(`Conflicting paragraph wrap authorities: placement.wrap and effective exclusions`);let n=e.anchorFrames?.page,r=Ig(t.map((e,t)=>({kind:`shape`,mode:e.wrap===`topAndBottom`?`topAndBottom`:`square`,authoredWrap:e.wrap,wrapPolygon:e.polygon,imageKey:e.id,imageX:e.bounds.xPt,imageY:e.bounds.yPt,imageW:e.bounds.widthPt,imageH:e.bounds.heightPt,xLeft:e.bounds.xPt,xRight:e.bounds.xPt+e.bounds.widthPt,yTop:e.bounds.yPt,yBottom:e.bounds.yPt+e.bounds.heightPt,side:e.wrapSide??`bothSides`,distLeft:0,distRight:0,distTop:0,distBottom:0,paraId:t})),{xLeftPt:n?.xPt??e.placement.paragraphXPt,xRightPt:n?n.xPt+n.widthPt:e.placement.paragraphXPt+e.placement.availableWidthPt,readingDirection:e.context.baseRtl?`rtl`:`ltr`});return{...e.placement,wrap:r}}function eT(e,t){let n=new Map;for(let r of e.exclusions){let e=r.anchorOccurrenceId;if(!(!e||!t.has(e))){if(n.has(e))throw Error(`Paragraph anchor occurrence produced duplicate exclusions: ${e}`);n.set(e,r)}}return Object.freeze([...n.values()])}function tT(e){return Eu(`paragraph-effective-wrap-exclusions`,e.map(e=>({id:e.id,...e.anchorOccurrenceId===void 0?{}:{occurrenceId:e.anchorOccurrenceId},wrap:e.wrap,...e.wrapSide===void 0?{}:{wrapSide:e.wrapSide},bounds:e.bounds,polygon:e.polygon,...e.verticalOwnership===void 0?{}:{verticalOwnership:e.verticalOwnership}})))}function nT(e){let t=new Set;for(let n of e){let e=n.anchorOccurrenceId;if(e){if(t.has(e))throw Error(`Duplicate external paragraph exclusion occurrence: ${e}`);t.add(e)}}return t}function rT(e,t){let n=nT(e);return Object.freeze([...e,...t.filter(e=>!e.anchorOccurrenceId||!n.has(e.anchorOccurrenceId))])}function iT(e,t){let n=new Set;for(let t of e){if(n.has(t.occurrenceId))throw Error(`Duplicate external anchor collision occurrence: ${t.occurrenceId}`);n.add(t.occurrenceId)}return Object.freeze([...e,...t.filter(e=>!n.has(e.occurrenceId))])}function aT(e,t,n,r){let i=n.environment.layoutServices,a=n.environment.verticalGlyphMeasurement,o=n.anchorFrames,s=t.runs.some(Mw),c=t.runs.some(e=>e.type===`shape`&&e.textBoxInput?.kind===`complete`),{wrap:l,...u}=n.placement,d=n.context,f=n.environment;return`paragraph-acquisition-v1:${JSON.stringify([n.id,[n.source.story,n.source.storyInstance,n.source.path],n.flowDomainId,n.ordinaryFlow,[u.startYPt,u.paragraphXPt,u.availableWidthPt,u.maximumYPt,u.suppressSpaceBefore,l?e.objectIdentity(l):null],[d.lineGrid.active,d.lineGrid.pitchPt,d.characterGrid.active,d.characterGrid.kind,d.characterGrid.deltaPt,d.rightIndentGrid.pitchPt,d.rightIndentGrid.paragraphAllowsAdjustment,d.physicalIndentLeftPt,d.physicalIndentRightPt,d.firstIndentPt,d.lineSpacing?[d.lineSpacing.value,d.lineSpacing.rule,d.lineSpacing.explicit??null]:null,d.spaceBeforePt,d.spaceAfterPt,d.baseRtl,d.isJustified,d.stretchLastLine,d.tabStops.map(e=>[e.pos,e.alignment,e.leader]),d.hasRuby,d.hasEastAsianText,[d.kinsoku.enabled,[...d.kinsoku.lineStartForbidden].sort((e,t)=>e-t),[...d.kinsoku.lineEndForbidden].sort((e,t)=>e-t)],d.defaultTabPt,d.overflowPunct!==!1,d.numberingMarkerGeometry?JSON.stringify(d.numberingMarkerGeometry):null,d.mathDefJc??null],[e.objectIdentity(n.measurer.context),e.objectIdentity(n.measurer.fontFamilyClasses)],[f.pageIndex,f.totalPages,f.displayPageNumber??null,f.pageNumberFormat??null,f.currentDateMs??null,f.noteNumbers?[...f.noteNumbers.entries()].sort(([e],[t])=>e.localeCompare(t)):null,f.noteReferenceNumber??null,f.pageWritingMode,f.verticalCJK??null,f.verticalPageFrame??null,f.documentHasEastAsianText,f.useFeLayout??null,f.balanceSingleByteDoubleByteWidth??null,f.characterSpacingControl??null,f.resolvedLocalFonts?e.objectIdentity(f.resolvedLocalFonts):null,i?.text.fingerprint??null,i?.images.fingerprint??null,i?.math.fingerprint??null,i?.verticalGlyphFingerprint??null,a?.fingerprint??null],JSON.stringify(n.exclusions),s?JSON.stringify(n.anchorCollisions??[]):null,r?JSON.stringify(r):null,n.paragraphBorderEdges?[n.paragraphBorderEdges.top,n.paragraphBorderEdges.bottom]:null,n.trailingExtentPt??null,n.containerShading??null,n.continuesFromPrevious??null,n.sourceRangeStart??null,o?[o.page?[o.page.xPt,o.page.yPt,o.page.widthPt,o.page.heightPt]:null,o.margin?[o.margin.xPt,o.margin.yPt,o.margin.widthPt,o.margin.heightPt]:null,o.column?[o.column.xPt,o.column.yPt,o.column.widthPt,o.column.heightPt]:null,o.pageParity]:null,s?JSON.stringify(n.anchorCellBounds??null):null,c&&n.acquireCompleteStory?e.objectIdentity(n.acquireCompleteStory):null])}`}function oT(e){let t=e.src?Object.freeze({...e.src}):void 0;return`text`in e?Object.freeze({...e,...t?{src:t}:{},...e.shapedClusters?{shapedClusters:Object.freeze(e.shapedClusters.map(e=>Object.freeze({...e,range:Object.freeze({...e.range})})))}:{},...e.selectedFaceInkBounds?{selectedFaceInkBounds:Object.freeze({...e.selectedFaceInkBounds})}:{},...e.selectedFaceFontBox?{selectedFaceFontBox:Object.freeze({...e.selectedFaceFontBox})}:{},...e.ruby?{ruby:Object.freeze({...e.ruby})}:{},...e.border?{border:Object.freeze({...e.border})}:{},...e.revision?{revision:Object.freeze({...e.revision})}:{},...e.hyperlink?{hyperlink:Object.freeze({...e.hyperlink})}:{},...e.seaBreaks?{seaBreaks:Object.freeze([...e.seaBreaks])}:{}}):`imagePath`in e?Object.freeze({...e,...t?{src:t}:{},...e.srcRect?{srcRect:Object.freeze({...e.srcRect})}:{},...e.duotone?{duotone:Object.freeze({...e.duotone})}:{}}):`isTab`in e?Object.freeze({...e,...t?{src:t}:{},...e.ptab?{ptab:Object.freeze({...e.ptab})}:{}}):Object.freeze({...e,...t?{src:t}:{}})}function sT(e){return Object.freeze({...e,layout:Object.freeze({...e.layout,segments:Object.freeze(e.layout.segments.map(oT)),...e.layout.consumedEnd?{consumedEnd:Object.freeze({...e.layout.consumedEnd})}:{}})})}function cT(e,t,n){let r=t.environment.layoutServices?wd(t.environment.layoutServices):void 0,i=r?aT(r,e,t,n):void 0,a=i===void 0?void 0:r.get(e,i);if(a)return a;let o=nT(t.exclusions),s=new Set(e.runs.flatMap(e=>Mw(e)?[e.anchorAcquisitionInput.occurrenceId]:[]));for(let e of o)s.delete(e);let c=s.size,l=Object.freeze([]),u=rT(t.exclusions,l);try{let a=Am({seedState:tT(u),step:r=>{let i=rT(t.exclusions,r?.ownedExclusions??l),a=Bg(e,t.context,$w(t,i),t.measurer,{...t.environment,paragraphMarkShapeInput:e.paragraphMarkShapeInput},n),o=mT(e,t,a),c=eT(o,s),u=tT(rT(t.exclusions,c));if(tT(o.exclusions)!==u)throw Error(`Paragraph retained exclusions differ from the measured exclusion authority`);return Object.freeze({measured:a,layout:o,ownedExclusions:c,state:u})},stateOf:e=>e.state,limit:16}).value,o=Object.freeze({...a.measured,lines:Object.freeze(a.measured.lines.map(sT)),placement:Object.freeze({...a.measured.placement})}),c=Object.freeze({measured:o,layout:a.layout});return i!==void 0&&r.set(e,i,c),c}catch(e){throw e instanceof km?new Qw(e.reason,e.states,c):e}}function lT(e,t){return cT(e,t).layout}function uT(e){let t=0;for(let n of e.members)for(let e of n.fragment.lines)for(let n of e.placements)n.kind===`text`&&(t=Math.max(t,-(n.positionPt??0)));return t}const dT=new WeakMap;function fT(e){return e===void 0?null:e instanceof Date?{date:e.toISOString()}:e instanceof Set?{set:[...e].map(fT).sort((e,t)=>JSON.stringify(e).localeCompare(JSON.stringify(t)))}:e instanceof Map?{map:[...e.entries()].map(([e,t])=>[fT(e),fT(t)]).sort((e,t)=>JSON.stringify(e[0]).localeCompare(JSON.stringify(t[0])))}:Array.isArray(e)?e.map(fT):e&&typeof e==`object`?Object.fromEntries(Object.entries(e).map(([e,t])=>[e,fT(t)])):e}function pT(e,t){if(t.contexts.length!==e.members.length||t.inputs.length!==e.members.length||t.borderEdges.length!==e.members.length||t.borderExtentsPt.length!==e.members.length)throw Error(`Frame acquisition metadata must align with every group member`);if(!Number.isFinite(t.maximumWidthPt)||t.maximumWidthPt<0)throw RangeError(`Frame maximumWidthPt must be finite and non-negative`);let n=dT.get(t.acquisitionSession);n||(n=new Map,dT.set(t.acquisitionSession,n));let r=Eu(`w:frame-acquisition`,[e.id,t.placementSignature,t.maximumWidthPt,t.environment.pageIndex,t.environment.totalPages,t.environment.displayPageNumber??null,t.environment.pageNumberFormat??null,t.environment.currentDateMs??null,t.environment.documentHasEastAsianText,t.environment.layoutServices?.text.fingerprint??null,t.environment.layoutServices?.images.fingerprint??null,t.environment.layoutServices?.math.fingerprint??null,t.environment.layoutServices?.verticalGlyphFingerprint??null,fT(t.contexts),fT(t.inputs),fT(t.borderEdges),fT(t.borderExtentsPt),t.containerShading??null,fT(t.anchorFrames)]),i=n.get(r);if(i)return i;let a=e.framePr,o=a.w==null?Math.max(0,...e.members.map((e,n)=>s_(e,t.contexts[n],t.maximumWidthPt,t.measurer,t.environment,lw(t.inputs[n],t.contexts[n],t)))):Math.max(0,a.w),s=Math.max(1,o),c=(()=>{let n=kC(`body-frame:${e.id}`),r=0,i=null,a=0,o=0,c=[];return e.members.forEach((l,u)=>{let d=t.contexts[u],f=Math.max(vC(i,l,a,d.spaceBeforePt),o),p={startYPt:r+f,paragraphXPt:0,availableWidthPt:s,maximumYPt:1/0,suppressSpaceBefore:!0},m=t.borderExtentsPt[u]??0,h={story:`body`,storyInstance:`body`,path:[e.sourceIndices[u]]},{measured:g,layout:_}=cT(t.inputs[u],{id:`body-frame:${e.id}:${u}`,source:h,flowDomainId:`body-frame:${e.id}`,ordinaryFlow:!1,context:d,placement:p,measurer:t.measurer,environment:{...t.environment,positionExtendsLineBox:zx(e.framePr.dropCap)},exclusions:n.exclusions,anchorCollisions:n.collisions,containerShading:t.containerShading,paragraphBorderEdges:t.borderEdges[u],trailingExtentPt:Math.max(d.spaceAfterPt,m),anchorFrames:t.anchorFrames});n=MC(n,_),c.push({paragraph:l,fragment:_,source:h}),r=g.contentEndYPt,i=l,a=g.requestedSpaceAfterPt,o=m}),{heightPt:Math.max(0,r+Math.max(a,o)),members:c}})(),l=t.place(o,c.heightPt),u=Object.freeze(c.members.map(e=>{let t=ox(e.fragment,{xPt:l.bounds.xPt,yPt:l.bounds.yPt}),n=YC(a.hRule===`exact`&&a.h!=null?{...t,clipBounds:l.bounds}:t),r=Object.freeze({...n,advancePt:0});return Object.freeze({...e,fragment:r})})),d=Object.freeze({box:Object.freeze({bounds:l.bounds,exclusionBounds:l.exclusionBounds,exclusionId:`frame:${e.id}`}),members:u});return n.set(r,d),d}function mT(e,t,n){let r=t.continuesFromPrevious?{...t.context,firstIndentPt:0}:t.context,i=t.placement.paragraphXPt+r.physicalIndentLeftPt,a=O_(r,t.placement.availableWidthPt),o=t.placement.availableWidthPt-r.physicalIndentLeftPt-r.physicalIndentRightPt-a,s=xw(e,n),c=t.continuesFromPrevious?void 0:lw(e,r,t),l=Cw(n,e,i,o,t.source,t.id,r,s,c,t.environment.layoutServices?.text,t.environment.verticalGlyphMeasurement,t.environment.verticalPageFrame);t.sourceRangeStart!==void 0&&(l=Ew(l,t.sourceRangeStart)),l=ww(l,t.placement.paragraphXPt,t.placement.availableWidthPt,r.baseRtl,r.tabStops),c&&n.markOnly&&l.length===0&&(c.markerText!==``||e.numbering?.picBulletImagePath)&&(l=[Dw(n,e,i,o,r)]);let u=[],d=[],f=[],p=[],m=[],h=[],g=[],_=e.runs.map((e,t)=>e.type===`break`?{kind:`break`,breakKind:e.breakType,offset:s.runStarts[t]??0}:void 0).filter(e=>e!==void 0),v=new Map;e.runs.forEach((e,t)=>{if(!Mw(e))return;let n=v.get(e.anchorAcquisitionInput.occurrenceId)??[];n.push({run:e,runIndex:t}),v.set(e.anchorAcquisitionInput.occurrenceId,n)});for(let[r,i]of v){let a=Hw(r,i,l,e,t,n.contentEndYPt-t.placement.startYPt,t.exclusions,m,t.anchorCollisions??[],h);a&&(p.push(a.result),a.cellContainmentBounds&&g.push(a.cellContainmentBounds),a.drawing&&(d.push(a.drawing),f.push(...a.textBoxes),a.exclusion&&m.push(a.exclusion),a.collision&&h.push(a.collision),l[a.hostLineIndex]&&(l=l.map((e,t)=>t===a.hostLineIndex?{...e,placements:[...e.placements,{kind:`drawing`,range:a.hostRange,drawingId:a.drawing.id,bounds:a.drawing.inkBounds,advancePt:0}]}:e))))}if(c&&l[0]){let n=dw(c,e,t.context,i,o,l[0]);n.length>0&&(l=[{...l[0],placements:[...n,...l[0].placements]},...l.slice(1)])}if(e.runs.forEach((e,n)=>{let r=XC(t.source,n);if(e.type===`unavailableDrawing`&&e.anchorAcquisitionInput===void 0){let i=$C(t.source,n),a=l.flatMap(e=>e.placements).find(e=>e.kind===`drawing`&&e.drawingId===i);a?.kind===`drawing`&&d.push({kind:`drawing`,id:i,source:r,flowDomainId:t.flowDomainId,flowBounds:a.bounds,inkBounds:a.bounds,advancePt:0,ordinaryFlow:!1,commands:Object.freeze([{kind:`noop`}]),diagnostics:Object.freeze([ew(e.resourceKind,r)])})}if(e.type===`image`&&u.push({kind:`image`,resourceKey:ku(r,e.imagePath),intrinsicSize:{widthPt:e.widthPt,heightPt:e.heightPt}}),e.type===`chart`&&u.push({kind:`chart`,resourceKey:QC(r),intrinsicSize:{widthPt:e.widthPt,heightPt:e.heightPt}}),e.type===`math`&&u.push({kind:`math`,resourceKey:e.resourceKey??Eu(`math-resource`,r),intrinsicSize:{widthPt:l.flatMap(e=>e.placements).find(e=>e.kind===`resource`&&e.resourceKind===`math`)?.bounds?.widthPt??0,heightPt:e.fontSize}}),(e.type===`image`||e.type===`chart`)&&!t.continuesFromPrevious){let r=jw(e,t,n);if(r){d.push(r);let e=l[0];e&&(l=[{...e,placements:[...e.placements,{kind:`drawing`,range:{start:s.runStarts[n]??0,end:(s.runStarts[n]??0)+(s.runLengths[n]??1)},drawingId:r.id,bounds:r.inkBounds,advancePt:0}]},...l.slice(1)])}}if(e.type===`shape`&&!e.anchorAcquisitionInput&&!t.continuesFromPrevious){let i=`${t.id}:drawing:${n}`,a=e.inline===!0?l.flatMap(e=>e.placements).find(e=>e.kind===`drawing`&&e.drawingId===i):void 0;if(e.inline===!0&&!a)throw Error(`Inline shape ${i} has no retained line placement`);let o=a?.bounds??kw(e,t),c=`${t.id}:textbox:${n}`,u=Zw(e,o,{id:c,source:r,flowDomainId:t.flowDomainId,context:t.context,measurer:t.measurer,environment:t.environment,input:e.textBoxInput,acquireCompleteStory:t.acquireCompleteStory}),p=Aw(e,e.inline===!0?o:u?.flowBounds??o,t,n,e.inline===!0);u&&(f.push(u),p={...p,textBoxIds:[c]}),d.push(p);let m=e.inline===!0?void 0:l[0];m&&(l=[{...m,placements:[...m.placements,{kind:`drawing`,range:{start:s.runStarts[n]??0,end:(s.runStarts[n]??0)+(s.runLengths[n]??1)},drawingId:p.id,bounds:p.inkBounds,advancePt:0}]},...l.slice(1)])}}),e.numbering?.picBulletImagePath&&!t.continuesFromPrevious&&u.push({kind:`picture-bullet`,resourceKey:ku(t.source,e.numbering.picBulletImagePath),intrinsicSize:{widthPt:e.numbering.picBulletWidthPt??e.numberingMarkerShapeInput?.fontSizePt??0,heightPt:e.numbering.picBulletHeightPt??e.numberingMarkerShapeInput?.fontSizePt??0}}),e.numbering?.picBulletImagePath&&l[0]&&!t.continuesFromPrevious){if(!c)throw Error(`Picture-bullet acquisition requires resolved marker font geometry`);let n=e.numbering.picBulletWidthPt??c.markerWidthPt,r=e.numbering.picBulletHeightPt??e.numberingMarkerShapeInput?.fontSizePt;if(r===void 0)throw Error(`Picture-bullet acquisition requires resolved marker height`);let a=Hg({baseRtl:t.context.baseRtl,alignedLeadingEdgePt:uw(c,t.context,i,o,l[0]),authoredFirstIndentPt:e.indentFirst,markerShiftPt:c.markerShiftPt,markerWidthPt:n});l=[{...l[0],placements:[{kind:`resource`,resourceKind:`picture-bullet`,range:{start:-1,end:0},resourceKey:ku(t.source,e.numbering.picBulletImagePath),bounds:{xPt:a,yPt:l[0].baselinePt-r,widthPt:n,heightPt:r},advancePt:0},...l[0].placements]},...l.slice(1)]}l=pw(l,e.shading,t.containerShading);let y=n.contentEndYPt-n.contentStartYPt,b=t.paragraphBorderEdges??{top:`top`,bottom:`bottom`},x=hw(e,l,i,o,n.contentStartYPt,y,b),S=e.borders?[...b.top===`none`?[]:[[b.top,e.borders[b.top]]],[`right`,e.borders.right],...b.bottom===`none`?[]:[[`bottom`,e.borders.bottom]],[`left`,e.borders.left]]:[],C=e.borders?S.flatMap(([e,t])=>{if(!mw(t))return[];let n=e===`top`||e===`between`||e===`bottom`,r=e===`right`||e===`bottom`,i=n?x.yPt+(r?x.heightPt:0):x.xPt+(r?x.widthPt:0);return[{edge:e,from:n?{xPt:x.xPt,yPt:i}:{xPt:i,yPt:x.yPt},to:n?{xPt:x.xPt+x.widthPt,yPt:i}:{xPt:i,yPt:x.yPt+x.heightPt},color:t.color?`#${t.color}`:`#000000`,widthPt:t.width,...Cf(t.style,t.width)}]}):[],w=t.trailingExtentPt??n.requestedSpaceAfterPt,T=bv(g);return YC({kind:`paragraph`,id:t.id,source:t.source,...e.paragraphId===void 0?{}:{paragraphId:e.paragraphId},flowDomainId:t.flowDomainId,ordinaryFlow:t.ordinaryFlow,...e.styleId===void 0?{}:{styleId:e.styleId},...!t.continuesFromPrevious&&e.bookmarks?.length?{bookmarkStarts:e.bookmarks}:{},flowBounds:{xPt:t.placement.paragraphXPt,yPt:t.placement.startYPt,widthPt:t.placement.availableWidthPt,heightPt:n.contentEndYPt-t.placement.startYPt+w},inkBounds:{...e.shading||e.borders?x:{xPt:i,yPt:n.contentStartYPt,widthPt:Math.max(0,...l.map(e=>e.bounds.widthPt)),heightPt:y}},spacing:{beforePt:t.placement.suppressSpaceBefore?0:n.requestedSpaceBeforePt,afterPt:w},contextualSpacing:e.contextualSpacing??!1,lines:l,borders:C,shading:e.shading?{color:`#${e.shading}`}:void 0,resources:u,drawings:d,textBoxes:f,events:_,exclusions:rT(t.exclusions,m),...T?{cellContainmentBounds:T}:{},anchorCollisions:iT(t.anchorCollisions??[],h),...p.length?{anchorFrames:p}:{},paragraphMark:n.markOnly?{hidden:e.markVanish===!0,bounds:{xPt:i,yPt:n.contentStartYPt,widthPt:0,heightPt:y}}:void 0})}const hT=(e,t)=>Xb(e,{xPt:0,yPt:t}),gT=(e,t)=>$(e,{xPt:0,yPt:t}),_T=(e,t)=>ex(e,{xPt:0,yPt:t}),vT=(e,t)=>nx(e,{xPt:0,yPt:t}),yT=(e,t)=>rx(e,{xPt:0,yPt:t}),bT=(e,t)=>ox(e,{xPt:0,yPt:t}),xT=(e,t)=>cx(e,{xPt:0,yPt:t});function ST(e,t,n,r){if(!e.shading&&e.borders.length===0)return null;let i=t[0],a=t.at(-1);if(!i||!a)return{box:gT(e.inkBounds,n),borders:[]};let o=e.inkBounds.yPt,s=o+e.inkBounds.heightPt,c=r.continuesFromPrevious?Math.max(o,i.bounds.yPt):o,l=r.continuesOnNext?Math.min(s,a.bounds.yPt+a.advancePt):s,u={xPt:e.inkBounds.xPt,yPt:c+n,widthPt:e.inkBounds.widthPt,heightPt:Math.max(0,l-c)},d=u.xPt,f=d+u.widthPt,p=u.yPt,m=p+u.heightPt;return{box:u,borders:e.borders.flatMap(e=>(e.edge===`top`||e.edge===`between`)&&r.continuesFromPrevious||e.edge===`bottom`&&r.continuesOnNext?[]:e.edge===`top`||e.edge===`between`?[{...e,from:{xPt:d,yPt:p},to:{xPt:f,yPt:p}}]:e.edge===`bottom`?[{...e,from:{xPt:d,yPt:m},to:{xPt:f,yPt:m}}]:e.edge===`left`?[{...e,from:{xPt:d,yPt:p},to:{xPt:d,yPt:m}}]:e.edge===`right`?[{...e,from:{xPt:f,yPt:p},to:{xPt:f,yPt:m}}]:[{...e,from:hT(e.from,n),to:hT(e.to,n)}])}}function CT(e,t,n=`${e.id}:${t.lineStart}-${t.lineEnd}`){let r=e.lines.slice(t.lineStart,t.lineEnd),i=r[0],a=r.at(-1),o=t.continuesFromPrevious&&i?e.flowBounds.yPt-i.bounds.yPt:0,s=o===0?r:r.map(e=>yT(e,o)),c=s[0],l=s.at(-1),u=e.lines.map((e,n)=>n>=t.lineStart&&n<t.lineEnd?s[n-t.lineStart]:e),d=c&&l?{xPt:Math.min(...s.map(e=>e.bounds.xPt)),yPt:c.bounds.yPt,widthPt:Math.max(...s.map(e=>e.bounds.xPt+e.bounds.widthPt))-Math.min(...s.map(e=>e.bounds.xPt)),heightPt:l.bounds.yPt+l.bounds.heightPt-c.bounds.yPt}:e.inkBounds,f=ST(e,r,o,t),p=new Set(r.flatMap(e=>e.placements.flatMap(e=>e.kind===`drawing`?[e.drawingId]:[]))),m=e.drawings.filter(e=>p.has(e.id)).map(e=>e.anchorLayer?.verticalOwnership===`page`?e:_T(e,o)),h=bv(m.filter(e=>e.anchorLayer?.cellContainment===!0).map(e=>e.flowBounds)),g=new Set(e.drawings.flatMap(e=>{if(e.anchorLayer?.verticalOwnership!==`host`)return[];let t=e.anchorLayer.acquisitionOccurrenceId??e.anchorLayer.occurrenceId;return t===void 0?[]:[t]})),_=new Set(m.flatMap(e=>{if(e.anchorLayer?.verticalOwnership!==`host`)return[];let t=e.anchorLayer.acquisitionOccurrenceId??e.anchorLayer.occurrenceId;return t===void 0?[]:[t]})),v=new Set(r.flatMap(e=>e.placements.flatMap(e=>e.kind===`resource`?[e.resourceKey]:[])));for(let e of m)for(let t of e.commands)t.kind===`resource`&&v.add(t.resourceKey);let y=new Set(m.flatMap(e=>[e.id.replace(`:drawing:`,`:textbox:`),...e.textBoxIds??[]])),b=new Set(m.filter(e=>e.anchorLayer?.verticalOwnership===`page`||e.orientation===`upright-physical`).flatMap(e=>e.textBoxIds??[])),x=new Set(m.map(e=>Eu(`source-occurrence`,e.source))),S=i?.range.start,C=a?.range.end,{bookmarkStarts:w,...T}=e;return YC({...T,kind:`paragraph`,id:n,...!t.continuesFromPrevious&&w?.length?{bookmarkStarts:w}:{},lines:u,flowBounds:{...e.flowBounds,yPt:e.flowBounds.yPt},...e.clipBounds?{clipBounds:gT(e.clipBounds,o)}:{},spacing:{beforePt:t.continuesFromPrevious?0:e.spacing.beforePt,afterPt:t.continuesOnNext?0:e.spacing.afterPt},inkBounds:f?.box??d,borders:f?.borders??e.borders.map(e=>({...e,from:hT(e.from,o),to:hT(e.to,o)})),resources:e.resources.filter(e=>v.has(e.resourceKey)),drawings:m,cellContainmentBounds:h??void 0,textBoxes:e.textBoxes.filter(e=>y.has(e.id)||x.has(Eu(`source-occurrence`,e.source))).map(e=>b.has(e.id)?e:xT(e,o)),events:S===void 0||C===void 0?[]:e.events.filter(e=>e.offset>=S&&(e.offset<C||!t.continuesOnNext&&e.offset===C)),exclusions:e.exclusions.filter(e=>e.verticalOwnership===`page`||e.anchorOccurrenceId===void 0||!g.has(e.anchorOccurrenceId)||_.has(e.anchorOccurrenceId)).map(e=>({...e,bounds:e.verticalOwnership===`page`?e.bounds:gT(e.bounds,o),polygon:e.verticalOwnership===`page`?e.polygon:e.polygon.map(e=>hT(e,o))})),anchorCollisions:(e.anchorCollisions??[]).filter(e=>e.verticalOwnership===`page`||!g.has(e.occurrenceId)||_.has(e.occurrenceId)).map(e=>({...e,bounds:e.verticalOwnership===`page`?e.bounds:gT(e.bounds,o)})),...t.continuesOnNext?{paragraphMark:void 0}:e.paragraphMark?{paragraphMark:{...e.paragraphMark,bounds:gT(e.paragraphMark.bounds,o)}}:{},continuation:t})}function wT(e,t){return e.segIndex-t.segIndex||e.charOffset-t.charOffset}function TT(e,t,n,r,i,a,o,s,c,l){if(![r,i].every(e=>Number.isFinite(e)&&e>=0))throw RangeError(`Paragraph fragment extents must be finite and non-negative`);if(n.kind===`splittable`&&n.lineEndBoundaries.length!==e.lines.length)throw RangeError(`Splittable paragraph source boundaries must align with retained lines`);if(n.kind===`indivisible`&&t.boundary!==null)throw RangeError(`Indivisible paragraph cannot carry a continuation boundary`);let u=o.authoredSpaceAfterPt??0;if(!Number.isFinite(u)||u<0)throw RangeError(`Authored paragraph spaceAfter must be finite and non-negative`);let d=e.lines.length,f=n=>CT(e,{lineStart:0,lineEnd:n,continuesFromPrevious:t.boundary!==null,continuesOnNext:n<d}),p=e=>{let t=s?.(e)??0;if(!Number.isFinite(t)||t<0)throw RangeError(`Paragraph page-local reserve must be finite and non-negative`);return t},m=e=>l?.(e)??!0,h=(e,t)=>{if(!t)return e.advancePt;let n=Bx({advancePt:e.advancePt,retainedSpaceAfterPt:e.spacing.afterPt,authoredSpaceAfterPt:u});return Ux({paragraph:e,writingMode:o.writingMode??`horizontal-tb`,logicalLineBoxExtentPt:n,availableBlockExtentPt:r})};if(n.kind===`indivisible`){let n=p(e),o=h(e,!0);return a&&(o+n>r||!m(n))&&o+n<=i?{fragment:null,nextCursor:t,requiresFreshFlowRegion:!0,additionalReservePt:0,admittedBlockExtentPt:0}:{fragment:e,nextCursor:null,requiresFreshFlowRegion:!1,additionalReservePt:n,admittedBlockExtentPt:Math.min(e.advancePt,r)}}if(d===0){let n=p(e),o=h(e,!0);return a&&(o+n>r||!m(n))&&o+n<=i?{fragment:null,nextCursor:t,requiresFreshFlowRegion:!0,additionalReservePt:0,admittedBlockExtentPt:0}:{fragment:e,nextCursor:null,requiresFreshFlowRegion:!1,additionalReservePt:n,admittedBlockExtentPt:Math.min(e.advancePt,r)}}let g=p(e),_=h(e,!0);if(t.boundary===null&&o.keepLines&&a&&(_+g>r||!m(g))&&_+g<=i)return{fragment:null,nextCursor:t,requiresFreshFlowRegion:!0,additionalReservePt:0,admittedBlockExtentPt:0};let v=Ix(0,d,r,e=>(()=>{let t=f(e),n=p(t);return m(n)?h(t,e===d)+n:r+1})()).end;if(v===0){if(a)return{fragment:null,nextCursor:t,requiresFreshFlowRegion:!0,additionalReservePt:0,admittedBlockExtentPt:0};v=1}for(;;){let e=Lx({widowControl:o.widowControl,start:0,end:v,totalLines:d,canRelocate:a});if(e.kind===`relocate`)return{fragment:null,nextCursor:t,requiresFreshFlowRegion:!0,additionalReservePt:0,admittedBlockExtentPt:0};if(e.kind!==`dropLastLine`)break;--v}let y=f(v),b=v<d?n.lineEndBoundaries[v-1]:null;if(b!==null&&t.boundary!==null&&wT(b,t.boundary)<=0)throw Error(`Paragraph continuation source boundary did not advance`);return{fragment:y,nextCursor:b===null?null:Object.freeze({boundary:b,sourceRangeStart:y.lines.at(-1).range.end,...c===void 0?{}:{uniformRubyAdvancePt:c}}),requiresFreshFlowRegion:!1,additionalReservePt:p(y),admittedBlockExtentPt:Math.min(y.advancePt,r)}}function ET(e,t){let n=new Map;if(!e)return n;let r=new Set(e.map(e=>e.id));return t.forEach(e=>{r.has(e)&&!n.has(e)&&n.set(e,n.size+1)}),n}function DT(e){let t=new Map;if(!e)return t;for(let n of e)t.set(n.id,n);return t}function OT(e,t){let n=[],r=new Set;for(let i of e)if(i.type===`paragraph`&&`runs`in i)for(let e of i.runs)e.type!==`text`||e.noteRef?.kind!==t||e.noteRef.id.length===0||r.has(e.noteRef.id)||(r.add(e.noteRef.id),n.push(e.noteRef.id));else if(i.type===`table`&&`rows`in i)for(let e of i.rows)for(let i of e.cells)for(let e of OT(i.content,t))r.has(e)||(r.add(e),n.push(e));return Object.freeze(n)}function kT(e,t){return Object.freeze([...new Set(e.flatMap(e=>e.placements.flatMap(e=>e.kind===`text`&&e.noteReference?.kind===t?[e.noteReference.id]:[])))])}function AT(e,t){return e.rows.flatMap(e=>e.cells.flatMap(e=>e.blocks.flatMap(e=>jT(e.layout,t))))}function jT(e,t){let n=e.kind===`paragraph`?kT(e.lines,t):AT(e,t);return Object.freeze([...new Set(n)])}function MT(e){return kT(e,`footnote`)}function NT(e){return jT(e,`footnote`)}function PT(e){return jT(e,`endnote`)}function FT(e){if(!Number.isInteger(e.columnCount)||e.columnCount<=0)throw RangeError(`Column count must be a positive integer`);for(let t of e.fragments)if(!Number.isFinite(t.extentPt)||t.extentPt<0)throw RangeError(`Column balance fragment extents must be finite and non-negative`);if(e.fragments.length===0)return Object.freeze({targetPt:0,cutIndexes:Object.freeze([]),transitionExpansions:0});let t=[0],n=[0],r=[];e.fragments.forEach((i,a)=>{t.push(t[a]+i.extentPt);let o=a+1;(i.breakAfter!==`forbidden`||o===e.fragments.length)&&n.push(o),i.breakAfter===`forced`&&o<e.fragments.length&&r.push(o)});let i=Math.min(e.columnCount,n.length-1),a=Array.from({length:i+1},()=>Array(n.length).fill(1/0)),o=Array.from({length:i+1},()=>Array(n.length).fill(-1));a[0][0]=0;let s=0;for(let e=1;e<=i;e+=1){let i=a[e-1],c=a[e],l=i.flatMap((e,t)=>Number.isFinite(e)?[t]:[]),u=0,d=0,f=0,p=0;for(let a=1;a<n.length;a+=1){let m=n[a];for(;d<r.length&&r[d]<m;)f=r[d],d+=1;for(;n[p]<f;)p+=1;for(;u<l.length&&l[u]<p;)u+=1;let h=l[u];if(h===void 0||h>=a)continue;let g=e=>{s+=1;let r=n[e];return Math.max(i[e],t[m]-t[r])},_=h,v=g(_);for(;u+1<l.length;){let e=l[u+1];if(e>=a)break;let t=g(e);if(t>v)break;u+=1,_=e,v=t}c[a]=v,o[e][a]=_}}let c=n.length-1,l=-1,u=1/0;for(let e=1;e<=i;e+=1){let t=a[e][c];t<=u&&(u=t,l=e)}if(l<0||!Number.isFinite(u))throw Error(`Authored column breaks exceed the available column frontier`);let d=[],f=c;for(let e=l;e>0;--e)if(d.push(n[f]),f=o[e][f],f<0)throw Error(`Column balance frontier omitted a predecessor`);return d.reverse(),Object.freeze({targetPt:u,cutIndexes:Object.freeze(d),transitionExpansions:s})}function IT(e){let t=new Map;return e.sequence.forEach((e,n)=>{if(e.kind===`body-block`){let r=e.block;t.set(Du(r.source),Object.freeze({sequenceIndex:n,keepLines:r.kind===`paragraph`&&r.keepLines,keepNext:r.kind===`paragraph`&&r.keepNext,widowControl:r.kind===`paragraph`&&r.widowControl}));return}e.kind===`adjacent-table-group`&&e.tables.forEach(e=>t.set(Du(e.source),Object.freeze({sequenceIndex:n,keepLines:!1,keepNext:!1,widowControl:!1})))}),t}function LT(e,t,n){let r=t-e;if(n.length<=1)return Object.freeze([r]);let i=[],a=e;for(let e of n){if(!Number.isFinite(e)||e<a||e>t)return Object.freeze([r]);i.push(e-a),a=e}return i[i.length-1]=i.at(-1)+t-a,Object.freeze(i)}function RT(e,t,n,r){let i=new Set(r.flowDomainIds),a=new Map(n.layers.body.map(e=>[e.id,e])),o=IT(e),s=[];for(let e of t){if(!i.has(e.flowDomainId))continue;let t=a.get(e.nodeId);if(!t||!t.ordinaryFlow)continue;let n=Du(t.source),r=o.get(n);if(!r)continue;let c=t.kind===`paragraph`&&!r.keepLines&&t.lines.length>1?t.lines.map(e=>e.bounds.yPt+e.advancePt):t.kind===`table`&&t.rows.length>1?t.rows.map(e=>e.flowBounds.yPt+e.advancePt):[e.blockEndPt];LT(e.blockStartPt,e.blockEndPt,c).forEach(e=>s.push({extentPt:e,breakAfter:`allowed`,sequenceIndex:r.sequenceIndex,sourceIdentity:n,paragraphLine:t.kind===`paragraph`&&!r.keepLines&&t.lines.length>0}))}let c=new Map;s.forEach((e,t)=>{let n=c.get(e.sourceIdentity)??[];n.push(t),c.set(e.sourceIdentity,n)});for(let[e,t]of c){let n=o.get(e);if(!n)continue;let r=t.filter(e=>s[e].paragraphLine);n.keepLines&&t.slice(0,-1).forEach(e=>{s[e].breakAfter=`forbidden`});for(let e=0;e+1<r.length;e+=1)Lx({widowControl:n.widowControl,start:0,end:e+1,totalLines:r.length,canRelocate:!0}).kind!==`keep`&&(s[r[e]].breakAfter=`forbidden`);n.keepNext&&(s[t.at(-1)].breakAfter=`forbidden`)}let l=e.initialSection.sectionOccurrenceId;return e.sequence.forEach((e,t)=>{if(e.kind===`begin-section`){l=e.section.sectionOccurrenceId;return}if(!(l!==r.sectionOccurrenceId||e.kind!==`authored-break`||e.break!==`column`)){for(let e=s.length-1;e>=0;--e)if(!(s[e].sequenceIndex>=t)){s[e].breakAfter=`forced`;break}}}),Object.freeze(s.map(e=>Object.freeze(e)))}function zT(e,t,n,r,i){let a=RT(e,t,r,i),o=n.get(r.pageIndex)??0;return FT({columnCount:i.flowDomainIds.length,fragments:a}).targetPt+o}function BT(e,t,n,r,i){let a=t,o=e.lines.map((t,o)=>{let s=a++,c=String(s),l=i.measureLineNumberGlyph(c),u=Object.freeze({xPt:e.flowBounds.xPt-r,yPt:t.baselinePt});return Object.freeze({lineIndex:o,counterValue:s,bounds:Object.freeze({xPt:u.xPt-l.widthPt,yPt:u.yPt-l.ascentPt,widthPt:l.widthPt,heightPt:l.ascentPt+l.descentPt}),paintOps:s%n===0?Object.freeze([Object.freeze({kind:`text`,text:c,origin:u,font:l.font??``,color:`#000000`,textAlign:`right`})]):Object.freeze([])})});return Object.freeze({paragraph:Object.freeze({...e,lineNumbers:Object.freeze(o)}),counterEnd:a})}function VT(e,t,n){let r=new Map,i,a=e.pages.map(e=>{if(e.parityBlank)return e;let a=[...e.layers.body];for(let o=0;o<e.sectionRegions.length;o+=1){let s=e.sectionRegions[o],c=new Set(s.flowDomainIds),l=a.flatMap((e,t)=>c.has(e.flowDomainId)?[t]:[]),u=new Map(l.map(e=>[a[e].id,a[e]])),d=n.filter(e=>{let t=u.get(e.nodeId);return c.has(e.flowDomainId)&&e.blockEndPt>e.blockStartPt&&t!==void 0&&(t.ordinaryFlow||t.sectionFlowOwnership===`host-flow`)}),f=d.length===0?s.blockStartPt:Math.min(...d.map(e=>e.blockStartPt)),p=d.length===0?f:Math.max(...d.map(e=>e.blockEndPt)),m=s.blockEndPt,h=Math.max(0,m-s.blockStartPt),g=Math.max(0,p-f),_=s.section.verticalAlignment,v=d.length>0&&g<h?_===`center`?s.blockStartPt+(h-g)/2-f:_===`bottom`?m-g-f:0:0,y=s.section.lineNumbering,b=y?.restart===`newPage`?y.start:y?.restart===`newSection`?r.get(s.sectionOccurrenceId)??y.start:r.get(s.sectionOccurrenceId)??i??y?.start??1;b??=1;for(let e of l){let n=a[e];if(n.kind===`paragraph`&&n.ordinaryFlow&&y){let e=BT(n,b,Math.max(1,y.countBy),k_(y.distance),t);n=e.paragraph,b=e.counterEnd}v!==0&&(n.ordinaryFlow||n.sectionFlowOwnership===`host-flow`)&&(n.kind===`paragraph`||n.kind===`table`)&&(n=vx(n,{xPt:0,yPt:v})),a[e]=n}y&&(r.set(s.sectionOccurrenceId,b),i=b)}return Object.freeze({...e,layers:Kd(e.layers,`body`,a)})});return Object.freeze({...e,pages:Object.freeze(a)})}function HT(e){let t=new Map;for(let n of e)for(let e of n.sectionRegions)t.has(e.sectionOccurrenceId)||t.set(e.sectionOccurrenceId,n.pageIndex);return t}function UT(e,t){let n=e[t];return n?t===0||e[t-1]?.sectionOccurrenceId!==n.sectionOccurrenceId:!1}function WT(e,t){return t.titlePage&&t.firstPageOfSection?e.first:t.evenAndOddHeaders&&t.displayPageNumber%2==0?e.even:e.default}function GT(e,t){if(![e.pageHeight,e.marginTop,e.marginBottom,t.top,t.bottom].every(Number.isFinite))throw RangeError(`Reserved body interval inputs must be finite`);if(e.pageHeight<=0||t.top<0||t.bottom<0)throw RangeError(`Reserved body interval requires a positive page and non-negative reserves`);let n=Math.min(e.pageHeight,Math.abs(e.marginTop)+t.top),r=e.pageHeight-Math.abs(e.marginBottom)-t.bottom;return Object.freeze({blockStartPt:n,blockEndPt:Math.max(n,Math.min(e.pageHeight,r))})}function KT(e,t,n){if(![e,t,n].every(Number.isFinite))throw RangeError(`Header/footer reserve inputs must be finite`);if(e<0)throw RangeError(`Story extent must be non-negative`);return e===0||t<0?0:Math.max(0,e-(t-n))}function qT(e){let t=t=>{let n=Object.freeze(e.measure(t).map(e=>Object.freeze({...e})));return Object.freeze({result:t,reserves:n,pageCount:n.length,fingerprint:Eu(`header-footer-reserve-v1`,{identity:e.identity(t),reserves:n})})},n=t(e.seed);return!e.requiresConvergence&&n.reserves.every(e=>e.top===0&&e.bottom===0)?n:jm(n,n=>t(e.repaginate(n.reserves,n.result)),e.limit??16)}var JT=class extends Y{constructor(e,t){super(`INVALID_GEOMETRY`,`${t} exceeds the available flow capacity`),this.containerId=e,this.layoutId=t,this.name=`FlowCapacityExceededError`}};function YT(e,t){if(e.length===0)return{xPt:t.xPt,yPt:t.yPt,widthPt:0,heightPt:0};let n=Math.min(...e.map(e=>e.xPt)),r=Math.min(...e.map(e=>e.yPt)),i=Math.max(...e.map(e=>e.xPt+e.widthPt)),a=Math.max(...e.map(e=>e.yPt+e.heightPt));return{xPt:n,yPt:r,widthPt:i-n,heightPt:a-r}}function XT(e,t,n){let r=[],i=e.cursor,a=e.container.bounds;if(![a.xPt,a.yPt,a.widthPt,a.heightPt].every(Number.isFinite)||a.widthPt<0||a.heightPt<0)throw new Y(`INVALID_GEOMETRY`,`${e.container.id} has invalid bounds`);let o=e.container.bounds.yPt+e.container.bounds.heightPt,s=e.container.capacity===`unbounded`?2**53-1:o,c=e.container.bounds.xPt+e.container.bounds.widthPt;if(!Number.isFinite(i.xPt)||!Number.isFinite(i.yPt)||i.xPt<a.xPt||i.xPt>c||i.yPt<a.yPt||i.yPt>o)throw new Y(`INVALID_GEOMETRY`,`${e.container.id} has an invalid initial flow cursor`);for(let a of e.blocks){let l={container:e.container,cursor:i,availableBounds:{xPt:e.container.bounds.xPt,yPt:i.yPt,widthPt:e.container.bounds.widthPt,heightPt:Math.max(0,s-i.yPt)}},u=a.kind===`paragraph`?n.layoutParagraph(a,l,t):n.layoutTable(a,l,t);if(u.layout.flowDomainId!==e.container.id)throw new Y(`INVALID_REFERENCE`,`${u.layout.id} belongs to ${u.layout.flowDomainId}, not ${e.container.id}`);if(e.container.capacity!==`unbounded`&&Number.isFinite(u.nextCursor.yPt)&&u.nextCursor.yPt>o)throw new JT(e.container.id,u.layout.id);if(!Number.isFinite(u.nextCursor.xPt)||!Number.isFinite(u.nextCursor.yPt)||u.nextCursor.xPt<e.container.bounds.xPt||u.nextCursor.xPt>c||u.nextCursor.yPt<i.yPt)throw new Y(`INVALID_GEOMETRY`,`${u.layout.id} returned an invalid flow cursor`);r.push(u.layout),i=u.nextCursor}return{source:e.source,container:e.container,blocks:r,nextCursor:i,flowDomainId:e.container.id,flowBounds:YT(r.map(e=>e.flowBounds),e.container.bounds),inkBounds:YT(r.map(e=>e.inkBounds),e.container.bounds),...e.container.capacity===`unbounded`?{}:{clipBounds:e.container.bounds},advancePt:i.yPt-e.cursor.yPt,ordinaryFlow:!0}}const ZT=new WeakMap,QT=e=>`type`in e&&e.type===`unsupportedTextBoxBlock`;function $T(e,t){if(ZT.has(e))throw Error(`Story block layout algorithms are already attached`);ZT.set(e,Object.freeze({...t}))}function eE(e,t){return Object.freeze({...e,flowBounds:$(e.flowBounds,t),inkBounds:$(e.inkBounds,t),...e.clipBounds?{clipBounds:$(e.clipBounds,t)}:{},blocks:Object.freeze(e.blocks.map(e=>{if(e.kind===`paragraph`)return ux(e,t);if(e.kind===`table`)return dx(e,t);throw Error(`Story contains unsupported retained node: ${e.kind}`)}))})}function tE(e,t){return Object.freeze({...e,flowBounds:$(e.flowBounds,t),inkBounds:$(e.inkBounds,t),...e.clipBounds?{clipBounds:$(e.clipBounds,t)}:{},separator:Object.freeze(e.separator.map(e=>Zb(e,t))),story:eE(e.story,t)})}function nE(e,t){for(let t of e.blocks)if(!QT(t)&&(t.source.story!==e.source.story||t.source.storyInstance!==e.source.storyInstance))throw new Y(`INVALID_REFERENCE`,`Story block ${t.source.story}:${t.source.storyInstance} is not owned by ${e.source.story}:${e.source.storyInstance}`);let n=ZT.get(t);if(!n)throw Error(`Story block layout algorithms are not attached to the supplied services`);let r=e.blocks.filter(QT),i=XT({blocks:e.blocks.filter(e=>!QT(e)),container:e.container,cursor:{xPt:e.container.bounds.xPt,yPt:e.container.bounds.yPt},source:e.source},t,n);return Object.freeze({story:e.source.story,flowBounds:i.flowBounds,inkBounds:i.inkBounds,...i.clipBounds?{clipBounds:i.clipBounds}:{},blocks:Object.freeze([...i.blocks]),advancePt:i.advancePt,diagnostics:Object.freeze(r.map(t=>Object.freeze({code:`UNSUPPORTED_FEATURE`,severity:`warning`,source:Object.freeze({story:e.source.story,storyInstance:e.source.storyInstance,path:Object.freeze([...t.sourcePath])}),message:`Unsupported text-box block ${t.qName}`})))})}var rE=class extends Error{code=`FOOTNOTE_RESERVE_EXCEEDS_FRESH_PAGE`;constructor(e,t,n){super(`Body footnote admission cannot fit a fresh physical page (reserve: ${e}, charge: ${t}, fresh page: ${n})`),this.reservePt=e,this.admissionChargePt=t,this.freshPageExtentPt=n,this.name=`FootnoteAdmissionOverflowError`}};function iE(e,t){if(t.has(e))return[];t.add(e);let n=e.diagnostics??[];return e.kind===`paragraph`?[...n,...e.drawings.flatMap(e=>iE(e,t)),...e.textBoxes.flatMap(e=>iE(e,t))]:e.kind===`table`?[...n,...e.rows.flatMap(e=>e.cells.flatMap(e=>e.blocks.flatMap(e=>iE(e.layout,t)))),...(e.floatingTables??[]).flatMap(e=>iE(e.child,t)),...(e.resolvedFloatingTables??[]).flatMap(e=>iE(e.child,t))]:e.kind===`textbox`||e.kind===`note`?[...n,...e.story.diagnostics,...e.story.blocks.flatMap(e=>iE(e,t))]:n}function aE(e,t,n){if(e>0&&t>n)throw new rE(e,t,n)}function oE(e){let t=new Set,n=e=>{for(let r of e.resolvedFloatingTables??[])t.add(r.occurrenceId),n(r.child)};return n(e),t}function sE(e,t,n){if(!e.floats)throw Error(`Accepted floating table omitted its float registry delta`);let r=oE(t);return Object.freeze({...e,floats:Object.freeze({...e.floats,entries:Object.freeze(e.floats.entries.map(e=>{let i=r.has(e.occurrenceId)?fx(n,e.occurrenceId):t.ordinaryFlow?null:n;return i===null?e:Object.freeze({...e,occurrenceId:i,exclusionId:i})}))})})}function cE(e,t){let n=new Set(t.drawings.flatMap(e=>{let t=e.anchorLayer?.acquisitionOccurrenceId??e.anchorLayer?.occurrenceId;return t===void 0?[]:[t]})),r=e.floats?.entries.filter(e=>n.has(e.occurrenceId))??[],i=e.drawingCollisions?.entries.filter(e=>n.has(e.occurrenceId))??[];return r.length===0&&i.length===0?null:Object.freeze({...e.floats&&r.length>0?{floats:Object.freeze({...e.floats,entries:Object.freeze(r),nextParagraphId:e.floats.baseNextParagraphId+r.length})}:{},...e.drawingCollisions&&i.length>0?{drawingCollisions:Object.freeze({...e.drawingCollisions,entries:Object.freeze(i)})}:{}})}function lE(e){let t=new Map([[e.initialSection.sectionOccurrenceId,e.initialSection]]);for(let n=0;n<e.sequence.length;n+=1){let r=e.sequence[n];r.kind===`begin-section`&&t.set(r.section.sectionOccurrenceId,r.section)}return t}function uE(e,t){return V_(e.context,e.pageLayout,t)}function dE(e,t){let n=uE(e,t);return N_({sectionOccurrenceId:e.sectionOccurrenceId,geometry:n.geometry,columns:n.columns,textDirection:n.textDirection,sectionBidi:n.sectionBidi===!0,grid:n.grid})}function fE(e,t,n,r=n.blockStartPt,i=uE(e,t).columns.map((e,t)=>t)){let a=uE(e,t);return Object.freeze({id:`page:${t}:section:${encodeURIComponent(e.sectionOccurrenceId)}`,sectionOccurrenceId:e.sectionOccurrenceId,section:a,pageBorders:e.pageBordersAuthored?e.pageBorders:null,writingMode:cf(a.textDirection),blockStartPt:r,blockEndPt:n.blockEndPt,columnFlowDirection:a.sectionBidi===!0?`rtl`:`ltr`,columnIndexes:Object.freeze([...i]),columns:Object.freeze(i.map(e=>{let t=a.columns[e];if(!t)throw Error(`Missing authored section column`);return Object.freeze({inlineStartPt:t.xPt,inlineExtentPt:t.wPt})}))})}function pE(e,t){let n=cf(e.textDirection),r=mf({widthPt:e.geometry.pageWidth,heightPt:e.geometry.pageHeight},n);return Object.freeze(n===`horizontal-tb`?{...r,contentTopPt:t.blockStartPt,contentBottomPt:t.blockEndPt}:{...r,contentTopPt:0,contentBottomPt:r.heightPt})}function mE(e,t,n){return GT(uE(e,t).geometry,n)}function hE(e,t,n){let r=uE(e,t);return Ub({kind:`content`,pageIndex:t,physicalPage:pE(r,n),sectionOccurrenceId:e.sectionOccurrenceId,section:r,region:fE(e,t,n)})}function gE(e){let t=e.pages.at(-1),n=t?.accumulator.sectionRegions.at(-1);if(!t||t.kind!==`content`||!n)throw Error(`Missing active body region`);return n}function _E(e){let t=gE(e),n=t.columnIndexes??t.section.columns.map((e,t)=>t),r=(t.columnFlowDirection===`rtl`?[...n].reverse():[...n]).at(-1)===e.flow.columnIndex;return e.balanceTargetPt===null||r?t.blockEndPt:Math.min(t.blockEndPt,t.blockStartPt+e.balanceTargetPt)}function vE(e){let t=gE(e),n=t.columnIndexes??t.section.columns.map((e,t)=>t),r=t.columns[n.indexOf(e.flow.columnIndex)];if(!r)throw Error(`Missing active body column`);return Object.freeze({pageIndex:e.flow.pageIndex,columnIndex:e.flow.columnIndex,flowDomainId:X_(e.flow.pageIndex,t.id,e.flow.columnIndex),section:t.section,cursorPt:Object.freeze({xPt:r.inlineStartPt,yPt:e.flow.cursorBlockPt}),availableBounds:Object.freeze({xPt:r.inlineStartPt,yPt:e.flow.cursorBlockPt,widthPt:r.inlineExtentPt,heightPt:Math.max(0,_E(e)-e.footnoteReservePt-e.flow.cursorBlockPt)})})}function yE(e,t){let n=t=>{let n=e.get(t);if(!n)throw Error(`Unknown body section ${t}`);return n};return{openContentPage(e){let r=n(e.sectionOccurrenceId),i=t[e.pageIndex]??{top:0,bottom:0},a=mE(r,e.pageIndex,i),o=Cx(dE(r,e.pageIndex),{pageIndex:e.pageIndex,pageContentStartBlockPt:a.blockStartPt,pageContentEndBlockPt:a.blockEndPt});return{page:hE(r,e.pageIndex,a),flow:o}},openParityBlankPage(e){let r=n(e.sectionOccurrenceId),i=uE(r,e.pageIndex),a=mE(r,e.pageIndex,t[e.pageIndex]??{top:0,bottom:0});return Ub({kind:`parity-blank`,pageIndex:e.pageIndex,physicalPage:pE(i,a),sectionOccurrenceId:r.sectionOccurrenceId,section:i,pageBorders:r.pageBordersAuthored?r.pageBorders:null})},openSamePageSectionRegion(e,t,r){let i=n(t.section.sectionOccurrenceId),a=e.accumulator.sectionRegions,o=a.at(-1);if(!o||!(`placement`in t))throw Error(`A same-page section requires explicit retained placement`);let s=Object.freeze({blockStartPt:e.accumulator.sectionRegions[0].blockStartPt,blockEndPt:o.blockEndPt}),c=t.placement===`same-page-block`?Object.freeze({...o,blockEndPt:r.regionStartBlockPt}):(()=>{let e=t.outgoingColumnSubset;if(!e||e.length===0)throw Error(`A same-page-column transition requires outgoing column ownership`);return Object.freeze({...o,columnIndexes:Object.freeze([...e]),columns:Object.freeze(e.map(e=>{let t=o.section.columns[e];if(!t)throw Error(`Missing outgoing authored column`);return Object.freeze({inlineStartPt:t.xPt,inlineExtentPt:t.wPt})}))})})(),l=Object.freeze([...a.slice(0,-1),c]);return Object.freeze({...e,accumulator:gv(Object.freeze({...e.accumulator,sectionRegions:l}),fE(i,r.pageIndex,s,r.regionStartBlockPt,t.columnSubset))})}}}function bE(e,t,n,r,i,a,o,s){let c=e.pages.at(-1);if(!c||c.kind!==`content`)throw Error(`Body content requires an active page`);let l=gE(e),u=l.columnIndexes??l.section.columns.map((e,t)=>t),d=l.columns[u.indexOf(e.flow.columnIndex)],f=X_(e.flow.pageIndex,l.id,e.flow.columnIndex),p=Ou(n,f,i);if(a.has(p))throw Error(`Duplicate body occurrence acceptance: ${p}`);a.add(p);let m=yx(t,{occurrenceId:p,destination:{coordinateSpace:`logical-page-points`,flowDomainId:f,translation:{xPt:s?s.xPt-t.flowBounds.xPt:t.kind===`table`?d.inlineStartPt:d.inlineStartPt-t.flowBounds.xPt,yPt:(s?.yPt??e.flow.cursorBlockPt)-t.flowBounds.yPt}}}),h=s?.sectionFlowOwnership===void 0?m:Object.freeze({...m,sectionFlowOwnership:s.sectionFlowOwnership}),g=s?.yPt??e.flow.cursorBlockPt,_=h.kind===`paragraph`&&h.ordinaryFlow?(()=>{let e=g+h.spacing.beforePt,t=g+r-h.spacing.afterPt;return Object.freeze({...h,flowBounds:Object.freeze({...h.flowBounds,yPt:e,heightPt:Math.max(0,t-e)})})})():h,v=s?.coordinateSpace===`upright-physical`?{..._,ordinaryFlow:!1,flowBounds:Object.freeze({..._.flowBounds,heightPt:r})}:_,y=Tx(e.flow,v,r),b=y.events[0];if(!b||b.type!==`place`)throw Error(`Flow placement did not emit an allocation`);o.push(Object.freeze({nodeId:v.id,flowDomainId:v.flowDomainId,blockStartPt:b.blockStartPt,blockEndPt:b.blockEndPt}));let x=_v(c.accumulator,{layer:`body`,node:v,...s?.coordinateSpace===`upright-physical`?{coordinateSpace:`upright-physical`}:{}},!0),S=[...e.pages];return S[S.length-1]=Object.freeze({...c,accumulator:x}),Object.freeze({...e,flow:y.state,pages:Object.freeze(S)})}function xE(e){return e.boundary===null?`root`:`paragraph:${e.boundary.segIndex}:${e.boundary.charOffset}`}function SE(e,t){for(let n=t;n<e.sequence.length;n+=1){let t=e.sequence[n];if(t.kind===`consume-source`)continue;if(t.kind===`authored-break`){if(t.break!==`lastRenderedPageBreak`)return!1;continue}if(t.kind===`begin-section`){if(t.section.startType!==`continuous`)return!1;continue}let r=t.kind===`adjacent-table-group`?t:t.block;if(r.kind!==`paragraph`)return!0;if(r.pageBreakBefore)return!1;if(r.inkless!==!0)return!0}return!1}function CE(e){return e.paragraphMark!==void 0&&e.lines.length===0&&e.shading===void 0&&e.borders.length===0&&e.resources.length===0&&e.drawings.length===0&&e.textBoxes.length===0}function wE(e){return[e.rowIndex,e.rowFragmentIndex,e.cells.map(e=>[e.blockIndex,e.paragraphLineStart,e.nestedFragmentIndex,e.nestedCursor===null?null:wE(e.nestedCursor)])]}function TE(e){if(e===void 0)return`root`;if(e.kind===`table`)return`table:${JSON.stringify(wE(e.cursor))}`;let t=e.cursor.tableCursor;return`adjacent-table:${e.cursor.tableIndex}:${e.cursor.sourceRowIndex}:${JSON.stringify(t===void 0?null:wE(t))}`}function EE(e,t){let n=e.cursorPt.yPt+t,r=e.availableBounds.yPt+e.availableBounds.heightPt;return Object.freeze({...e,cursorPt:Object.freeze({...e.cursorPt,yPt:n}),availableBounds:Object.freeze({...e.availableBounds,yPt:n,heightPt:Math.max(0,r-n)})})}function DE(e,t){let n=HT(e.pages.map(e=>e.accumulator)),r=0,i=null,a=e.pages.map(e=>{let a=t.get(e.accumulator.sectionOccurrenceId),o=a.sectionOccurrenceId!==i;a.sectionOccurrenceId!==i&&a.pageNumbering.start!==null?r=A_(a.pageNumbering.start,e.accumulator.pageIndex,n.get(a.sectionOccurrenceId)??e.accumulator.pageIndex):r+=1,i=a.sectionOccurrenceId;let s={displayNumber:r,format:a.pageNumbering.format??`decimal`,sectionOccurrenceId:a.sectionOccurrenceId};return e.kind===`parity-blank`?yv({pageIndex:e.accumulator.pageIndex,physicalPage:e.accumulator.physicalPage,sectionOccurrenceId:e.accumulator.sectionOccurrenceId,section:e.accumulator.section,pageBorders:e.accumulator.pageBorders,firstSectionOwnedPage:o,pageNumber:s}):vv(e.accumulator,s,o)}),o=new WeakSet;return{pages:a,diagnostics:a.flatMap(e=>qd(e).flatMap(({node:e})=>iE(e,o)))}}function OE(e,t,n,r,i,a){let o=dd(t);if(!o)throw Error(`Body layout kernel is not attached to the supplied services`);let s=lE(e),c=new Set,l=[],u=r[0]??{top:0,bottom:0},d=mE(e.initialSection,0,u),f=Wb(Cx(dE(e.initialSection,0),{pageContentStartBlockPt:d.blockStartPt,pageContentEndBlockPt:d.blockEndPt}),hE(e.initialSection,0,d)),p=e=>{let t=a.get(e.flow.section.sectionOccurrenceId);return t?.pageIndex===e.flow.pageIndex?t.targetPt:null};f=Gb(f,p(f));let m=yE(s,r),h=null,g=o.openBodyLayoutSession({source:e.source,section:e.initialSection.context,initialLocation:vE(f)},t,n),_=e=>{let t=s.get(e.flow.section.sectionOccurrenceId);if(!t)throw Error(`Unknown body section ${e.flow.section.sectionOccurrenceId}`);let n=e.flow.pageIndex+1,i=mE(t,n,r[n]??{top:0,bottom:0});return i.blockEndPt-i.blockStartPt},v=(t,n)=>{if(i!==null){let e=vE(t);return Object.freeze([...i.values()].filter(t=>t.pageIndex===e.pageIndex&&t.flowDomainId===e.flowDomainId).map(({occurrenceId:e,paragraphSource:t})=>Object.freeze({occurrenceId:e,paragraphSource:t})))}let r=[];for(let t=n;t<e.sequence.length;t+=1){let i=e.sequence[t];if(i.kind===`authored-break`&&i.break!==`column`||i.kind===`begin-section`&&i.section.startType!==`continuous`)break;if(!(i.kind!==`body-block`||i.block.kind!==`paragraph`)){if(t>n&&i.block.pageBreakBefore)break;i.block.pageOwnedAnchorOccurrenceIds?.forEach(e=>r.push(Object.freeze({occurrenceId:e,paragraphSource:i.block.source})))}}return Object.freeze(r)},y=(e,t)=>{let n=v(e,t);if(n.length===0)return;if(!g.prescanPageAnchors)throw Error(`Page-owned anchors require canonical prescan acquisition`);let r=vE(e),i=g.prescanPageAnchors({anchors:n,location:r,availableInlineExtentPt:r.availableBounds.widthPt});i&&g.commitFlowRegistryDelta(i)};y(f,0);let b=(e,t,n=!1)=>{let r=f.flow.pageIndex,i=e.events.some(e=>e.type===`next-page`&&e.reason===`overflow`),a=e.events.some(e=>e.type===`begin-section`&&`placement`in e&&e.placement===`same-page-column`);f=qb(f,e,m),f=Gb(f,p(f));let o=vE(f);f.flow.pageIndex===r?(g.moveAcquisitionCursor(o),a&&y(f,t)):(h=i&&n?t:null,g.resetPageAcquisition(o),y(f,t))},x=new Map,S=new Map,C=new Map,w=e=>(x.get(e)?.size??0)>0,T=(e,t,n)=>E(n??NT(e),t),E=(e,t)=>{let n=x.get(f.flow.pageIndex)??new Set,r=[...new Set(e)].filter(e=>!n.has(e)),i=vE(f);if(r.length>0&&!g.layoutNotes)throw Error(`Footnote layout requires a note-capable layout session`);let a=r.length===0?Object.freeze([]):g.layoutNotes({kind:`footnote`,referenceIds:Object.freeze(r),pageIndex:f.flow.pageIndex,section:i.section,container:{id:`notes:page:${f.flow.pageIndex}`,kind:`footnote`,bounds:{xPt:i.availableBounds.xPt,yPt:0,widthPt:t,heightPt:i.section.geometry.pageHeight}},firstOnPage:n.size===0});return Object.freeze({ids:Object.freeze(r),layouts:a,reservePt:a.reduce((e,t)=>e+t.advancePt,0)})},D=(e,t,n)=>{let r=x.get(f.flow.pageIndex);r||(r=new Set,x.set(f.flow.pageIndex,r)),e.forEach(e=>r.add(e));let i=C.get(f.flow.pageIndex)??[];i.push(...t),C.set(f.flow.pageIndex,i),S.set(f.flow.pageIndex,(S.get(f.flow.pageIndex)??0)+n),f=Kb(f,n)},O=()=>Math.max(0,_E(f)-f.footnoteReservePt-f.flow.deepestColumnBlockPt),k=e=>e>O(),A=null,j=Xx(e.sequence);for(let t=0;t<e.sequence.length;t+=1){let n=e.sequence[t];if(n.kind===`consume-source`)continue;if(n.kind===`authored-break`){if(A=null,n.break===`column`&&!j.has(t))continue;b(Px(f.flow,n.break,n.parity),t+1);continue}if(n.kind===`begin-section`){A=null;let e=cf(gE(f).section.textDirection),i=cf(uE(n.section,f.flow.pageIndex).textDirection),a=mf({widthPt:gE(f).section.geometry.pageWidth,heightPt:gE(f).section.geometry.pageHeight},e),o=uE(n.section,f.flow.pageIndex),s=mf({widthPt:o.geometry.pageWidth,heightPt:o.geometry.pageHeight},i),c=n.section.startType===`continuous`&&(e!==i||a.widthPt!==s.widthPt||a.heightPt!==s.heightPt)?`nextPage`:n.section.startType,l=mE(n.section,f.flow.pageIndex,r[f.flow.pageIndex]??{top:0,bottom:0});b(Fx(f.flow,dE(n.section,f.flow.pageIndex),c,{hasFootnoteReferenceOnCurrentPage:w(f.flow.pageIndex),incomingPageContentStartBlockPt:l.blockStartPt,incomingPageContentEndBlockPt:l.blockEndPt}),t+1);continue}let i=n.kind===`adjacent-table-group`?n:n.block;if(i.kind===`paragraph`){if(i.continuousSectionRole===`collapse-mark`)continue;i.pageBreakBefore&&b(Px(f.flow,`pageBreakBefore`),t);let n=A?.spaceAfterPt??0,a=yC(A,i,n,i.continuousSectionRole===`suppress-before`?0:i.spaceBeforePt),o=i.continuousSectionRole===`drop-previous-after`?n:a.overlap;o>0&&(f=Object.freeze({...f,flow:Object.freeze({...f.flow,cursorBlockPt:Math.max(f.flow.regionStartBlockPt,f.flow.cursorBlockPt-o)})}));let s=Object.freeze({boundary:null});for(;s;){let n=xE(s),o=vE(f),u=g.measureParagraph({input:i,location:o,availableInlineExtentPt:o.availableBounds.widthPt,suppressSpaceBefore:s.boundary!==null||i.continuousSectionRole===`suppress-before`||a.suppressBefore||s.boundary===null&&!f.flow.pageHasContent&&h===t,continuation:s});if(u.placement){let e=T(u.layout,o.availableBounds.widthPt,u.retainedFootnoteReferenceIds),r=u.relocationBlockExtentPt,a=u.placement.sectionFlowOwnership===`page`?e.reservePt:(r??u.blockExtentPt)+e.reservePt,d=_(f),p=k(e.reservePt);if(aE(e.reservePt,a,d),(a>o.availableBounds.heightPt||p)&&a<=d&&f.flow.pageHasContent){b(p?jx(f.flow,f.flow.section,`overflow`):Ex(f.flow,`overflow`),t);continue}f=bE(f,u.layout,i.source,u.blockExtentPt,n,c,l,u.placement),D(e.ids,e.layouts,e.reservePt),u.flowRegistryDelta&&g.commitFlowRegistryDelta(u.flowRegistryDelta),s=null,g.moveAcquisitionCursor(vE(f));continue}if(s.boundary===null&&i.keepNext&&f.flow.pageHasContent){let n=u.blockExtentPt,r=new Set(NT(u.layout)),a=!1,s=Wx({keepNext:i.keepNext,inkless:i.inkless===!0,undecoratedMark:CE(u.layout)});for(let i=t+1;i<e.sequence.length;i+=1){let t=e.sequence[i];if(t.kind===`consume-source`)continue;if(t.kind===`authored-break`||t.kind===`begin-section`)break;let c=t.kind===`adjacent-table-group`?t:t.block;if(c.kind===`paragraph`&&c.pageBreakBefore)break;let l=g.measureFollowingBlock({input:c,location:o,availableInlineExtentPt:o.availableBounds.widthPt}),u=c.kind===`paragraph`&&(c.keepNext||s);if(s=!1,n+=u?l.fullExtentPt:l.leadContentExtentPt,(u?l.fullFootnoteReferenceIds:l.leadFootnoteReferenceIds)?.forEach(e=>r.add(e)),!u){a=!0;break}}let c=E([...r],o.availableBounds.widthPt).reservePt,l=n+c;if(a&&l>o.availableBounds.heightPt&&l<=_(f)){b(Ex(f.flow,`overflow`),t,!0);continue}}let d=e.sequence[t+1],p=e.sequence[t+2],m=d?.kind===`body-block`&&d.block.kind===`paragraph`&&p?.kind===`authored-break`&&p.break===`page`&&p.sameSourceParagraphAsPrevious!==!0,v=qx(u.layout);if(s.boundary===null&&v&&m&&f.flow.pageHasContent){let e=EE(o,u.blockExtentPt),n=g.measureParagraph({input:d.block,location:e,availableInlineExtentPt:e.availableBounds.widthPt,suppressSpaceBefore:!1,continuation:Object.freeze({boundary:null})});g.moveAcquisitionCursor(o);let r=Jx(n.layout,e.cursorPt.yPt);if(r!==null){let e=u.blockExtentPt+r;if(e>o.availableBounds.heightPt&&e<=_(f)){b(Ex(f.flow,`overflow`),t);continue}}}let y=e.sequence[t+1],x=y?.kind===`authored-break`&&y.break===`page`;if(s.boundary===null&&x){let e=Yx(u.layout);if(e!==null){f=bE(f,e,i.source,0,n,c,l),u.flowRegistryDelta&&g.commitFlowRegistryDelta(u.flowRegistryDelta),s=null,g.moveAcquisitionCursor(vE(f));continue}}let S=T(u.layout,o.availableBounds.widthPt).reservePt,C=(r[f.flow.pageIndex]?.bottom??0)===0&&f.footnoteReservePt===0,w=_E(f)===gE(f).blockEndPt,O=y?.kind===`begin-section`&&y.section.startType===`nextPage`,A=j_({hasContinuationBoundary:s.boundary!==null,inkless:i.inkless===!0,undecorated:CE(u.layout),keepNext:i.keepNext,markReservePt:S,pageBottomIsUnreserved:C,physicalRegionBottomIsActive:w,hasFollowingInk:SE(e,t+1),followsNextPageSectionBoundary:O,markExtentPt:u.blockExtentPt,markBelowBaselinePt:u.markBelowBaselinePt??0}),j=TT(u.layout,s,u.fragmentation,o.availableBounds.heightPt+A,_(f),f.flow.pageHasContent,{keepLines:i.keepLines,widowControl:i.widowControl,authoredSpaceAfterPt:i.spaceAfterPt,writingMode:gE(f).writingMode},e=>T(e,o.availableBounds.widthPt).reservePt,u.uniformRubyAdvancePt,e=>!k(e));if(j.requiresFreshFlowRegion){b(Ex(f.flow,`overflow`),t);continue}if(!j.fragment)throw Error(`Paragraph acquisition made no progress`);f=bE(f,j.fragment,i.source,Math.min(j.admittedBlockExtentPt,o.availableBounds.heightPt),n,c,l,u.placement);let M=T(j.fragment,o.availableBounds.widthPt);if(aE(M.reservePt,j.fragment.advancePt+M.reservePt,_(f)),D(M.ids,M.layouts,M.reservePt),u.flowRegistryDelta){let e=cE(u.flowRegistryDelta,j.fragment);e&&g.commitFlowRegistryDelta(e)}s=j.nextCursor,s&&b(Ex(f.flow,`overflow`),t),o=vE(f),g.moveAcquisitionCursor(o)}A=i}else{A=null;let e,n=!1;for(;!n;){let r=TE(e),a=vE(f),o=t=>g.measureTable({input:i,location:a,availableInlineExtentPt:a.availableBounds.widthPt,availableBlockExtentPt:t,freshPageBlockExtentPt:_(f),...e?{cursor:e}:{}}),s=a.availableBounds.heightPt,u=o(s);if(u.retryAtBlockStartPt!==void 0){if(!Number.isFinite(u.retryAtBlockStartPt)||u.retryAtBlockStartPt<=f.flow.cursorBlockPt)throw Error(`Table repositioning must advance the block cursor`);f=Object.freeze({...f,flow:Object.freeze({...f.flow,cursorBlockPt:u.retryAtBlockStartPt})}),g.moveAcquisitionCursor(vE(f));continue}let d=u.requiresFreshFlowRegion?Object.freeze({ids:Object.freeze([]),layouts:Object.freeze([]),reservePt:0}):T(u.layout,a.availableBounds.widthPt),p=Object.freeze({reservePt:d.reservePt,chargePt:u.blockExtentPt+d.reservePt}),m=new Set;for(;!u.requiresFreshFlowRegion&&u.blockExtentPt+d.reservePt>a.availableBounds.heightPt;){let e=JSON.stringify({advancePt:u.blockExtentPt,nextCursor:u.nextCursor??null,noteIds:d.ids,reservePt:d.reservePt});if(m.has(e))throw aE(p.reservePt,p.chargePt,_(f)),Error(`Table footnote admission did not converge`);m.add(e),s=Math.max(0,a.availableBounds.heightPt-d.reservePt),u=o(s),d=u.requiresFreshFlowRegion?Object.freeze({ids:Object.freeze([]),layouts:Object.freeze([]),reservePt:0}):T(u.layout,a.availableBounds.widthPt),u.requiresFreshFlowRegion||(p=Object.freeze({reservePt:d.reservePt,chargePt:u.blockExtentPt+d.reservePt}))}if(u.requiresFreshFlowRegion){aE(p.reservePt,p.chargePt,_(f));let n=!f.flow.pageHasContent&&u.nextCursor?.kind===`table`&&u.nextCursor.floatingContinuationFrame===`fresh-text`&&!(e?.kind===`table`&&e.floatingContinuationFrame!==void 0);if(u.nextCursor?.kind===`table`&&u.nextCursor.floatingContinuationFrame!==void 0&&(e=u.nextCursor),n)continue;b(Ex(f.flow,`overflow`),t);continue}if(k(d.reservePt)&&f.flow.pageHasContent){b(jx(f.flow,f.flow.section,`overflow`),t);continue}f=bE(f,u.layout,i.source,u.blockExtentPt,r,c,l,u.placement),D(d.ids,d.layouts,d.reservePt),u.flowRegistryDelta&&g.commitFlowRegistryDelta(sE(u.flowRegistryDelta,u.layout,Ou(i.source,a.flowDomainId,r))),e=u.nextCursor??void 0,n=e===void 0,e&&b(Ex(f.flow,`overflow`),t)}}g.moveAcquisitionCursor(vE(f))}let M=new Set([...S.keys(),...C.keys()]);for(let e of M){let t=S.get(e)??0,n=(C.get(e)??[]).reduce((e,t)=>e+t.advancePt,0);if(t!==n)throw new Y(`INVALID_GEOMETRY`,`Page ${e} footnote reserve ${t} does not equal retained advance ${n}`)}return Object.freeze({layout:DE(f,s),session:g,allocations:Object.freeze(l),footnoteReserveByPage:S,footnoteLayoutsByPage:C})}function kE(e,t){return Object.freeze(e.layout.pages.map((n,r)=>{if(n.parityBlank||cf(n.section.textDirection)!==`horizontal-tb`)return Object.freeze({top:0,bottom:0});let i=t.get(n.sectionOccurrenceId);if(!i)throw Error(`Unknown body section ${n.sectionOccurrenceId}`);let a=Math.max(0,n.section.geometry.pageWidth-Math.abs(n.section.geometry.marginLeft)-Math.abs(n.section.geometry.marginRight)),o=t=>{let o=WT(t===`header`?i.headers:i.footers,{titlePage:i.titlePage,firstPageOfSection:UT(e.layout.pages,r),evenAndOddHeaders:i.evenAndOddHeaders,displayPageNumber:n.pageNumber.displayNumber});if(o===null)return 0;if(!e.session.layoutStory)throw Error(`Header/footer story layout requires a story-capable layout session`);return e.session.layoutStory({source:o,pageIndex:n.pageIndex,section:n.section,container:{id:`story:${t}:page:${n.pageIndex}`,kind:t,bounds:{xPt:Math.abs(n.section.geometry.marginLeft),yPt:0,widthPt:a,heightPt:n.section.geometry.pageHeight}}}).advancePt};return Object.freeze({top:KT(o(`header`),n.section.geometry.marginTop,n.section.geometry.headerDistance),bottom:KT(o(`footer`),n.section.geometry.marginBottom,n.section.geometry.footerDistance)})}))}function AE(e,t,n,r){let i=e.pages.map((i,a)=>{if(i.parityBlank)return i;let o=n.get(i.sectionOccurrenceId);if(!o)throw Error(`Unknown body section ${i.sectionOccurrenceId}`);if(!t.layoutStory){if(!(Object.values(o.headers).some(e=>e!==null)||Object.values(o.footers).some(e=>e!==null)||(r.get(i.pageIndex)?.length??0)>0))return i;throw Error(`Page-story composition requires a story-capable layout session`)}let s=cf(i.section.textDirection)!==`horizontal-tb`,c=s?R_(i.section.geometry):i.section.geometry,l=Math.abs(c.marginLeft),u=Math.max(0,c.pageWidth-Math.abs(c.marginLeft)-Math.abs(c.marginRight)),d=s?`upright-physical`:`section-logical`,f=s?Object.freeze({...i.section,geometry:Object.freeze({...c}),columns:Object.freeze([Object.freeze({xPt:l,wPt:u})]),textDirection:`lrTb`}):i.section,p=t=>WT(t===`header`?o.headers:o.footers,{titlePage:o.titlePage,firstPageOfSection:UT(e.pages,a),evenAndOddHeaders:o.evenAndOddHeaders,displayPageNumber:i.pageNumber.displayNumber}),m=e=>{let n=p(e);if(n===null)return null;let r=t.layoutStory({source:n,pageIndex:i.pageIndex,section:f,container:{id:`story:${e}:page:${i.pageIndex}`,kind:e,bounds:{xPt:l,yPt:0,widthPt:u,heightPt:c.pageHeight}}});return eE(r,{xPt:0,yPt:(e===`header`?c.headerDistance:c.pageHeight-c.footerDistance-r.advancePt)-r.flowBounds.yPt})},h=m(`header`),g=m(`footer`),_=r.get(i.pageIndex)??[],v=_.reduce((e,t)=>e+t.advancePt,0),y=i.sectionRegions[0],b=(y?.blockEndPt??Math.max(0,i.section.geometry.pageHeight-Math.abs(i.section.geometry.marginBottom)))-v,x=b,S=_.map(e=>{let t=tE(e,{xPt:0,yPt:x-e.flowBounds.yPt});return x+=e.advancePt,t}),C=S.length===0?0:Math.min(...S.map(e=>e.flowBounds.xPt)),w=S.length===0?0:Math.max(...S.map(e=>e.flowBounds.xPt+e.flowBounds.widthPt)),T=Object.freeze({xPt:C,yPt:b,widthPt:w-C,heightPt:v}),E=y?Object.freeze(vf(y.coordinateSpace.logicalToPhysical,T)):T,D=[...h?[Object.freeze({id:`story:header:page:${i.pageIndex}`,kind:`header`,logicalBounds:Object.freeze({xPt:l,yPt:h.flowBounds.yPt,widthPt:u,heightPt:h.advancePt}),physicalBounds:Object.freeze({xPt:l,yPt:h.flowBounds.yPt,widthPt:u,heightPt:h.advancePt})})]:[],...S.length>0?[Object.freeze({id:`notes:page:${i.pageIndex}`,kind:`footnote`,...y?{sectionRegionId:y.id}:{},logicalBounds:T,physicalBounds:E})]:[],...g?[Object.freeze({id:`story:footer:page:${i.pageIndex}`,kind:`footer`,logicalBounds:Object.freeze({xPt:l,yPt:g.flowBounds.yPt,widthPt:u,heightPt:g.advancePt}),physicalBounds:Object.freeze({xPt:l,yPt:g.flowBounds.yPt,widthPt:u,heightPt:g.advancePt})})]:[]],O=i.layers.roots.map(e=>e),k=O.findIndex(e=>e.layer!==`background`&&e.layer!==`behindText`),A=k<0?O.length:k,j=[...O.slice(0,A),...h?.blocks.map(e=>({layer:`header`,node:e,coordinateSpace:d}))??[],...O.slice(A)],M=-1;for(let e=0;e<j.length;e+=1)j[e].layer===`body`&&(M=e);let N=M<0?j.length:M+1,P=[...j.slice(0,N),...S.map(e=>({layer:`notes`,node:e,coordinateSpace:`section-logical`})),...j.slice(N),...g?.blocks.map(e=>({layer:`footer`,node:e,coordinateSpace:d}))??[]];return Object.freeze({...i,flowDomains:Object.freeze([...i.flowDomains,...D]),layers:Gd(P),readingOrder:Object.freeze([...h?.blocks.map(e=>e.id)??[],...i.readingOrder,...S.map(e=>e.id),...g?.blocks.map(e=>e.id)??[]])})});return Object.freeze({...e,pages:Object.freeze(i)})}function jE(e,t,n){if(n.length===0)return e;let r=-1;for(let t=e.pages.length-1;t>=0;--t)if(!e.pages[t].parityBlank){r=t;break}if(r<0)return e;let i=e.pages[r];if(!t.layoutNotes)return Object.freeze({...e,diagnostics:Object.freeze([...e.diagnostics,Object.freeze({code:`UNSUPPORTED_FEATURE`,severity:`error`,source:Object.freeze({story:`endnote`,storyInstance:n[0],path:Object.freeze([])}),message:`Document-end notes require a note-capable layout session`})])});let a=new Map(i.flowDomains.map(e=>[e.id,e])),o=i.layers.body.filter(e=>e.ordinaryFlow&&a.get(e.flowDomainId)?.kind===`body`).reduce((e,t)=>e===null||t.flowBounds.yPt+t.flowBounds.heightPt>e.flowBounds.yPt+e.flowBounds.heightPt?t:e,null),s=o?a.get(o.flowDomainId):[...i.flowDomains].reverse().find(e=>e.kind===`body`);if(!s)return Object.freeze({...e,diagnostics:Object.freeze([...e.diagnostics,Object.freeze({code:`UNSUPPORTED_FEATURE`,severity:`error`,message:`Document-end notes require a retained body flow domain`})])});let c=i.sectionRegions.find(e=>e.flowDomainIds.includes(s.id))??i.sectionRegions[0],l=o?o.flowBounds.yPt+o.flowBounds.heightPt:s.logicalBounds.yPt,u=i.layers.notes.filter(e=>e.kind===`note`&&e.source.story===`footnote`).reduce((e,t)=>Math.min(e,t.flowBounds.yPt),s.logicalBounds.yPt+s.logicalBounds.heightPt),d=Math.min(s.logicalBounds.yPt+s.logicalBounds.heightPt,u),f=`endnotes:page:${i.pageIndex}`;try{let a=t.layoutNotes({kind:`endnote`,referenceIds:Object.freeze([...n]),pageIndex:i.pageIndex,section:c?.section??i.section,container:{id:f,kind:`endnote`,bounds:{xPt:s.logicalBounds.xPt,yPt:l,widthPt:s.logicalBounds.widthPt,heightPt:Math.max(0,d-l)}},firstOnPage:!0});if(a.length===0)return e;let o=a.reduce((e,t)=>e+t.advancePt,0),u=Object.freeze({xPt:s.logicalBounds.xPt,yPt:l,widthPt:s.logicalBounds.widthPt,heightPt:o}),p=Object.freeze({id:f,kind:`endnote`,...c?{sectionRegionId:c.id}:{},logicalBounds:u,physicalBounds:c?Object.freeze(vf(c.coordinateSpace.logicalToPhysical,u)):u}),m=i.layers.roots.map(e=>e),h=-1;for(let e=0;e<m.length;e+=1)m[e].layer===`body`&&(h=e);h+=1,m.splice(h,0,...a.map(e=>({layer:`notes`,node:e,coordinateSpace:`section-logical`})));let g=new Set(i.layers.body.map(e=>e.id)),_=-1;for(let e=0;e<i.readingOrder.length;e+=1)g.has(i.readingOrder[e])&&(_=e);_+=1;let v=[...i.readingOrder];v.splice(_,0,...a.map(e=>e.id));let y=[...e.pages];return y[r]=Object.freeze({...i,flowDomains:Object.freeze([...i.flowDomains,p]),layers:Gd(m),readingOrder:Object.freeze(v)}),Object.freeze({...e,pages:Object.freeze(y)})}catch(t){if(!(t instanceof Vb)||t.kind!==`endnote`||t.pageIndex!==i.pageIndex||t.containerId!==f)throw t;return Object.freeze({...e,diagnostics:Object.freeze([...e.diagnostics,Object.freeze({code:`UNSUPPORTED_FEATURE`,severity:`error`,source:Object.freeze({story:`endnote`,storyInstance:n[0],path:Object.freeze([])}),message:`Document-end notes do not fit the retained terminal flow region: ${t instanceof Error?t.message:String(t)}`})])})}}function ME(e,t,n,r){return Object.freeze({...e,diagnostics:Object.freeze([...e.diagnostics,Object.freeze({code:`UNSUPPORTED_FEATURE`,severity:`error`,message:`Unsupported ${t} position ${JSON.stringify(n)}; retained layout uses the ${r} fallback`})])})}function NE(e){let t=new Map;for(let n of e.pages)for(let e of n.layers.body)if(e.kind===`paragraph`)for(let r of e.drawings){let i=r.anchorLayer;if(!i||i.horizontalOwnership!==`page`||i.verticalOwnership!==`page`)continue;let a=i.acquisitionOccurrenceId??i.occurrenceId;t.set(a,Object.freeze({occurrenceId:a,paragraphSource:e.source,pageIndex:n.pageIndex,flowDomainId:e.flowDomainId}))}return t}function PE(e){return JSON.stringify([...e].sort(([e],[t])=>e.localeCompare(t)))}function FE(e,t,n,r,i){if(!e.sequence.some(e=>e.kind===`body-block`&&e.block.kind===`paragraph`&&(e.block.pageOwnedAnchorOccurrenceIds?.length??0)>0))return OE(e,t,n,r,null,i);try{return Am({step:a=>{let o=OE(e,t,n,r,a?.plan??null,i);return Object.freeze({pass:o,plan:NE(o.layout)})},stateOf:e=>PE(e.plan),limit:16}).value.pass}catch(e){throw e instanceof km?new Y(`NON_CONVERGENCE`,e.reason===`cycle`?`Page-anchor destination acquisition repeated an exact-state cycle`:`Page-anchor destination acquisition reached the operational pass limit 16`):e}}function IE(e){let t=[],n=e.initialSection;for(let r of e.sequence)r.kind===`begin-section`&&(r.section.startType===`continuous`&&t.push(Object.freeze({outgoingSectionOccurrenceId:n.sectionOccurrenceId,incomingSectionOccurrenceId:r.section.sectionOccurrenceId})),n=r.section);return Object.freeze(t)}function LE(e,t,n){for(let r of e.pages)for(let e=0;e+1<r.sectionRegions.length;e+=1){let i=r.sectionRegions[e],a=r.sectionRegions[e+1];if(i.sectionOccurrenceId===t&&a.sectionOccurrenceId===n)return Object.freeze({page:r,outgoing:i})}return null}function RE(e,t,n,r){let i=new Map,a=FE(e,t,n,r,i);for(let o of IE(e)){let s=LE(a.layout,o.outgoingSectionOccurrenceId,o.incomingSectionOccurrenceId);if(s===null||s.outgoing.flowDomainIds.length<2)continue;let c=s.page.pageIndex,l=zT(e,a.allocations,a.footnoteReserveByPage,s.page,s.outgoing),u=new Map(i);u.set(o.outgoingSectionOccurrenceId,Object.freeze({pageIndex:c,targetPt:l})),i=u,a=FE(e,t,n,r,i)}return a}function zE(e,t,n){t=Cd(t);let r=lE(e),i=RE(e,t,n,[]),a=qT({seed:i,measure:e=>kE(e,r),repaginate:(r,i)=>{let a=bC(i.layout);return RE(e,Td(t,{totalPages:i.layout.pages.length,resolveDestinationPage:e=>a[e]}),n,r)},identity:e=>bC(e.layout),requiresConvergence:i.session.hasPaginationFields}).result,o=VT(a.layout,a.session,a.allocations),s=e.noteLayoutSettings??Object.freeze({footnotePosition:`pageBottom`,endnotePosition:`docEnd`}),c=AE(o,a.session,r,a.footnoteLayoutsByPage),l=c.pages.some(e=>e.layers.notes.some(e=>e.source.story===`footnote`))&&s.footnotePosition!==`pageBottom`?ME(c,`footnote`,s.footnotePosition,`pageBottom`):c,u=new Set(o.pages.flatMap(e=>e.layers.body.flatMap(e=>e.kind===`paragraph`||e.kind===`table`?PT(e):[]))),d=(e.endnoteIds??[]).filter(e=>u.has(e)),f=jE(l,a.session,d),p=d.length>0&&s.endnotePosition!==`docEnd`?ME(f,`endnote`,s.endnotePosition,`docEnd`):f,m=e.parserDiagnostics??[],h=m.length===0?p:Object.freeze({...p,diagnostics:Object.freeze([...m,...p.diagnostics])});return ty(Object.freeze({...h,pages:Object.freeze(h.pages.map(pv))}))}function BE(e,t,n=Qd(void 0,Date.now())){return zE(e,t,n)}function VE(e,t,n){if(_d(e))return;let r=n();iy({source:r,services:e,defaultCurrentDateMs:t,buildLayout:t=>BE(r.bodyLayoutInput,e,t)})}function HE(e,t){switch(e){case`margin`:return{left:t.marginLeft,right:t.pageWidth-t.marginRight};case`page`:return{left:0,right:t.pageWidth};default:return{left:t.contentX,right:t.contentX+t.contentW}}}function UE(e,t,n,r){switch(e){case`margin`:return{start:r.marginTop,end:r.pageH-r.marginBottom};case`page`:return{start:0,end:r.pageH};default:return{start:t,end:t+n}}}function WE(e,t,n,r){switch(e){case`center`:return t+(n-t-r)/2;case`right`:case`outside`:return n-r;default:return t}}function GE(e,t,n){switch(e){case`center`:return t.start+(t.end-t.start-n)/2;case`bottom`:case`outside`:return t.end-n;default:return t.start}}function KE(e,t,n){return e+t<=n.end?e:Math.max(n.start,n.end-t)}function qE(e,t,n,r,i,a){let o=e.dropCap===`drop`||e.dropCap===`margin`,s=HE(e.hAnchor,t),c=UE(e.vAnchor,n,i,t),l=e.w==null?r:e.w,u;if(o)u=Math.max(1,e.lines)*a;else{let t=e.h??0;u=e.hRule===`exact`?t:e.hRule===`atLeast`?Math.max(t,i):i}let d;d=e.dropCap===`drop`?s.left:e.dropCap===`margin`?s.left-l:e.xAlign?WE(e.xAlign,s.left,s.right,l):s.left+(e.x??0);let f;f=o?c.start:e.yAlign&&e.vAnchor!==`text`?GE(e.yAlign,c,u):c.start+(e.y??0),(e.vAnchor===`page`||e.vAnchor===`margin`)&&(f=KE(f,u,c));let p=e.wrap===`around`||e.wrap===`auto`?e.hSpace:0,m=e.vSpace;return{x:d,y:f,w:l,h:u,exLeft:d-p,exRight:d+l+p,exTop:f-m,exBottom:f+u+m}}function JE(e,t){if(t.kind===`table`&&t.tableOverlap===void 0)throw Error(`Floating-table transport omitted tblOverlap`);let n=t.x,r=t.y;if(t.avoidOverlap){let i={occurrenceId:`display-moving-float`,paragraphId:t.paraId,bounds:{xPt:n,yPt:r,widthPt:t.w,heightPt:t.h},exclusionBounds:{xPt:n-t.dl,yPt:r-t.dt,widthPt:t.w+t.dl+t.dr,heightPt:t.h+t.dt+t.db}},a=Wp({moving:t.kind===`table`?{...i,kind:`table`,tableOverlap:t.tableOverlap}:{...i,kind:t.kind===`frame`?`frame`:`drawingml`},blockers:e.floats.map(Rp),avoidance:t.kind===`table`?Fp(t.tableOverlap,t.paraId):Ip(t.allowOverlap??!0,t.paraId),rightBoundaryPt:e.pageWidth,overlapEpsilonPt:Np,rightBoundarySlackPt:Pp});n=a.bounds.xPt,r=a.bounds.yPt}let i={mode:t.mode,imageKey:t.imageKey,imageX:n,imageY:r,imageW:t.w,imageH:t.h,xLeft:n-t.dl,xRight:n+t.w+t.dr,yTop:r-t.dt,yBottom:r+t.h+t.db,side:t.side,distLeft:t.dl,distRight:t.dr,distTop:t.dt,distBottom:t.db,paraId:t.paraId},a=t.kind===`table`?{...i,kind:`table`,tableOverlap:t.tableOverlap}:{...i,kind:t.kind};return e.floats.push(a),a}function YE(e){return e.xPt+e.widthPt}function XE(e){return e.yPt+e.heightPt}function ZE(e,t,n,r){return e===`center`?t+(n-t-r)/2:e===`right`||e===`outside`?n-r:t}function QE(e,t,n,r){return e===`center`?t+(n-t-r)/2:e===`bottom`||e===`outside`?n-r:t}function $E(e,t,n,r,i=!1){let a=e.horzSpecified?e.horzAnchor===`page`?t.page:e.horzAnchor===`margin`?t.margin:t.text:t.text,o=e.vertAnchor===`page`?t.page:e.vertAnchor===`margin`?t.margin:t.text,s=e.xAlign?ZE(e.xAlign,a.xPt,YE(a),n):a.xPt+e.xPt,c=e.yAlign&&e.vertAnchor!==`text`?QE(e.yAlign,o.yPt,XE(o),r):o.yPt+e.yPt;return!i&&(e.vertAnchor===`page`||e.vertAnchor===`margin`)&&c+r>XE(o)&&(c=Math.max(o.yPt,XE(o)-r)),Object.freeze({x:s,y:c,w:n,h:r})}function eD(e,t,n,r){return $E(e,t,n,r)}function tD(e,t,n){let r=e.child.columnWidthsPt.reduce((e,t)=>e+t,0),i=e.child.advancePt,a=e.positioning,o=Object.freeze({xPt:t,yPt:n,widthPt:r,heightPt:i}),s=Object.freeze({xPt:t-a.leftFromTextPt,yPt:n-a.topFromTextPt,widthPt:r+a.leftFromTextPt+a.rightFromTextPt,heightPt:i+a.topFromTextPt+a.bottomFromTextPt});return Object.freeze({kind:`resolved-floating-table-placement`,occurrenceId:e.occurrenceId,xPt:t,yPt:n,bounds:o,exclusionBounds:s,overlap:e.overlap,child:e.child,source:e})}function nD(e,t){let n=e.child.columnWidthsPt.reduce((e,t)=>e+t,0),r=e.child.advancePt,i=eD(e.positioning,t,n,r),a=Yb(e.positioning);return tD(e,a.x&&e.acquiredTextOffsetPt?t.text.xPt+e.acquiredTextOffsetPt.xPt:i.x,a.y&&e.acquiredTextOffsetPt?t.text.yPt+e.acquiredTextOffsetPt.yPt:i.y)}function rD(e,t,n){return Object.freeze({coordinateSpace:e.coordinateSpace,flowDomainId:e.flowDomainId,baseEntries:e.entries,baseNextParagraphId:e.nextParagraphId,nextParagraphId:n,entries:Object.freeze([...t])})}function iD(e,t){if(t.coordinateSpace!==e.coordinateSpace||t.flowDomainId!==e.flowDomainId||t.entries!==e.baseEntries||t.nextParagraphId!==e.baseNextParagraphId)throw Error(`Floating table registry delta base/domain mismatch`);let n=new Set(t.entries.map(e=>e.occurrenceId));if(e.entries.some(e=>n.has(e.occurrenceId)))throw Error(`Floating table registry delta was already committed`);if(e.nextParagraphId!==e.baseNextParagraphId+e.entries.length)throw Error(`Floating table registry delta sequence mismatch`)}function aD(e,t,n=`logical-page-points`,r=`logical-page`){let i=new Set;for(let t of e){if(i.has(t.occurrenceId))throw Error(`Duplicate float registry occurrence: ${t.occurrenceId}`);i.add(t.occurrenceId)}return Object.freeze({coordinateSpace:n,flowDomainId:r,base:Object.freeze([...e]),delta:Object.freeze([]),nextParagraphId:t})}function oD(e,t,n){let r=[...n.base,...n.delta],i=r.find(t=>t.occurrenceId===e.occurrenceId);if(i)return Object.freeze({placement:Object.freeze({...tD(e,i.bounds.xPt,i.bounds.yPt),bounds:i.bounds,exclusionBounds:i.exclusionBounds}),transaction:n});let a=nD(e,t),o=Wp({moving:{occurrenceId:e.occurrenceId,kind:`table`,tableOverlap:e.overlap,paragraphId:n.nextParagraphId,bounds:a.bounds,exclusionBounds:a.exclusionBounds},blockers:r.filter(e=>e.kind!==`shape`||e.wrap!==void 0).map(Lp),avoidance:Fp(e.overlap,n.nextParagraphId),rightBoundaryPt:YE(t.page),overlapEpsilonPt:Np,rightBoundarySlackPt:Pp}),s=tD(e,o.bounds.xPt,o.bounds.yPt),c=Object.freeze({kind:`table`,occurrenceId:e.occurrenceId,overlap:e.overlap,paragraphId:n.nextParagraphId,bounds:s.bounds,exclusionBounds:s.exclusionBounds});return Object.freeze({placement:s,transaction:Object.freeze({coordinateSpace:n.coordinateSpace,flowDomainId:n.flowDomainId,base:n.base,delta:Object.freeze([...n.delta,c]),nextParagraphId:n.nextParagraphId+1})})}function sD(e,t,n){let r=n.pageWidth,i=n.marginLeft,a=n.marginRight;switch(e??(t?`margin`:`page`)){case`page`:return{start:0,end:r};case`leftMargin`:return{start:0,end:i};case`rightMargin`:return{start:r-a,end:r};case`insideMargin`:return{start:0,end:i};case`outsideMargin`:return{start:r-a,end:r};case`character`:case`column`:return{start:n.contentX,end:n.contentX+n.contentW};default:return{start:i,end:r-a}}}function cD(e,t,n,r){let i=r.marginTop,a=r.marginBottom;switch(e??(t?`paragraph`:`page`)){case`page`:return{start:0,end:r.pageH};case`topMargin`:return{start:0,end:i};case`bottomMargin`:return{start:r.pageH-a,end:r.pageH};case`paragraph`:case`line`:return{start:n,end:r.pageH};default:return{start:i,end:r.pageH-a}}}function lD(e,t,n,r,i,a,o,s){let c=sD(a,t,i);if(o!=null)return c.start+(c.end-c.start)*o+n;if(!e)return c.start+n;let l=c.end-c.start,u=s??r,d=s==null?0:n;switch(e){case`center`:return c.start+(l-u)/2+d;case`right`:case`outside`:return c.end-u+d;default:return c.start+d}}function uD(e,t,n,r,i,a,o,s,c){let l=cD(o,t,i,a);if(s!=null)return l.start+(l.end-l.start)*s+n;if(!e)return l.start+n;let u=l.end-l.start,d=c??r,f=c==null?0:n;switch(e){case`center`:return l.start+(u-d)/2+f;case`bottom`:case`outside`:return l.end-d+f;default:return l.start+f}}function dD(e){return fD(e.textDirection)}function fD(e){return typeof e==`string`&&z_(e)}function pD(e){return e===`btLr`}function mD(e){return{...e,...L_(e)}}function hD(e){return{...e,...R_(e)}}function gD(e){for(let t of e.body){if(t.type!==`paragraph`)continue;let e=t;if(typeof e.defaultFontSize==`number`)return e.defaultFontSize;for(let t of e.runs)if(t.type===`text`)return t.fontSize}return 10}function _D(e){return{pageIndex:e.pageIndex,totalPages:e.totalPages,displayPageNumber:e.displayPageNumber,pageNumberFormat:e.pageNumberFormat,currentDateMs:e.currentDateMs,noteNumbers:e.noteNumbers,noteReferenceNumber:e.noteReferenceNumber,pageWritingMode:cf(e.sectionLayout.textDirection),verticalCJK:e.verticalCJK&&!e.verticalAllRotated,verticalPageFrame:e.verticalCJK===!0,documentHasEastAsianText:e.docEastAsian,useFeLayout:e.layoutSettings.compat.useFeLayout,balanceSingleByteDoubleByteWidth:e.layoutSettings.compat.balanceSingleByteDoubleByteWidth,characterSpacingControl:e.layoutSettings.characterSpacingControl,resolvedLocalFonts:e.resolvedLocalFonts,layoutServices:e.layoutServices,verticalGlyphMeasurement:e.verticalGlyphMeasurement}}function vD(e,t){let n=Lg(t);return{type:n?n.type:t.lineGrid.active?e.sectionLayout.grid.kind:null,linePitchPt:t.lineGrid.active?t.lineGrid.pitchPt:null,characterPitchPt:n?.characterPitchPt??null,charSpacePt:n?.charSpacePt??null}}const yD=Object.freeze({story:`body`,containers:Object.freeze([]),lineNumberingEligible:!0});function bD(e){let t=Math.max(0,e.pageH-e.marginTop-e.marginBottom);return{page:{xPt:0,yPt:0,widthPt:e.pageWidth,heightPt:e.pageH},margin:{xPt:e.marginLeft,yPt:e.marginTop,widthPt:Math.max(0,e.pageWidth-e.marginLeft-e.marginRight),heightPt:t},column:{xPt:e.contentX,yPt:e.marginTop,widthPt:e.contentW,heightPt:t},pageParity:e.pageIndex%2==0?`odd`:`even`}}function xD(e,t,n){return Ug(n,{numbering:t.numbering,...t.numbering?{markerInput:e.acquisitionInputs.numberingMarkerShapeInput(t.numbering,Oh(t))}:{},authoredFirstIndentPt:t.indentFirst,tabStops:t.tabStops,defaultTabPt:e.defaultTabPt,service:e.layoutServices?.text})}function SD(e,t){return xD(e,t,E_(e.layoutSettings,e.sectionLayout,yD,t))}function CD(e,t){return xD(e,t,E_(e.layoutSettings,e.sectionLayout,e.storyContext??yD,t))}function wD(e){return{...e,storyContext:h_(e.storyContext??yD)}}function TD(e,t){let n=e.retainedTablesBySourceIndex?.get(t);if(!n)throw Error(`Table placement requires retained table acquisition`);return n}function ED(e,t){let n=e<0n?-e:e,r=t<0n?-t:t;for(;r!==0n;)[n,r]=[r,n%r];return n===0n?1n:n}function DD(e,t){if(t===0n)throw RangeError(`Exact length denominator must not be zero`);let n=t<0n?-1n:1n,r=ED(e,t);return Object.freeze({numerator:n*e/r,denominator:n*t/r})}function OD(e){let t=/^([+-]?)(?:(\\d+)(?:\\.(\\d*))?|\\.(\\d+))(?:[eE]([+-]?\\d+))?$/.exec(e);if(!t)return null;let n=t[1]===`-`,r=t[2]??``,i=t[3]??t[4]??``,a=Number(t[5]??`0`);if(!Number.isSafeInteger(a))return null;let o=`${r}${i}`,s=0;for(;s<o.length&&o.charCodeAt(s)===48;)s+=1;if(s===o.length)return DD(0n,1n);let c=o.length-1;for(;c>s&&o.charCodeAt(c)===48;)--c;let l=o.slice(s,c+1),u=o.length-1-c,d=a-i.length+u,f=d+l.length-1;if(l.length>768||Math.abs(f)>1100)return null;let p=BigInt(l),m=1n;return d>=0?p*=10n**BigInt(d):m=10n**BigInt(-d),n&&(p=-p),DD(p,m)}function kD(e){let t=/^(-?\\d+)\\/([1-9]\\d*)$/.exec(e);if(!t)throw RangeError(`Invalid exact length key: ${e}`);return DD(BigInt(t[1]),BigInt(t[2]))}function AD(e){let t=DD(e.numerator,e.denominator);return`${t.numerator}/${t.denominator}`}function jD(e){let t=OD(e);return t?AD(t):null}function MD(e){if(!Number.isFinite(e)||e<0)return null;let t=OD(e.toString());return t?AD(t):null}function ND(e,t){let n=e.toString(2).length-t.toString(2).length;return(n>=0?e<t<<BigInt(n):e<<BigInt(-n)<t)&&--n,n}function PD(e,t,n){let r=n>=0?e<<BigInt(n):e,i=n<0?t<<BigInt(-n):t,a=r/i,o=r%i*2n-i;return o>0n||o===0n&&a%2n!=0n?a+1n:a}function FD(e){let t=kD(e);if(t.numerator===0n)return 0;let n=t.numerator<0n,r=n?-t.numerator:t.numerator,i=ND(r,t.denominator),a;if(i<-1022){let e=PD(r,t.denominator,1074);a=Number(e)*Number.MIN_VALUE}else{let e=PD(r,t.denominator,52-i);e===1n<<53n&&(e>>=1n,i+=1),a=i>1023?1/0:Number(e)*2**(i-52)}return n?-a:a}function ID(e,t){let n=kD(e),r=kD(t);return AD(DD(n.numerator*r.denominator+r.numerator*n.denominator,n.denominator*r.denominator))}function LD(e,t){let n=kD(e),r=kD(t);return AD(DD(n.numerator*r.numerator,n.denominator*r.denominator))}function RD(e,t){let n=kD(e),r=kD(t);return AD(DD(n.numerator*r.denominator-r.numerator*n.denominator,n.denominator*r.denominator))}function zD(e,t){if(t===0n)throw RangeError(`Exact length divisor must not be zero`);let n=kD(e);return AD(DD(n.numerator,n.denominator*t))}function BD(e,t){let n=kD(e),r=kD(t),i=n.numerator*r.denominator-r.numerator*n.denominator;return i<0n?-1:+(i>0n)}const VD=1e-9;function HD(e,t,n,r){let i=Number.isFinite(e)?Math.max(0,e):0,a=Math.max(0,t),o=a+Math.max(1,n);return{startPt:a===0?i:i/2,endPt:o>=Math.max(0,r)?i:i/2}}function UD(e){return typeof e==`number`&&Number.isFinite(e)?Math.max(0,e):0}function WD(e){return e.map(e=>Math.abs(e)<=VD?0:e)}function GD(e){let t=e.gridWidthsPt.length;for(let n of e.rows){for(let e of n.cells)t=Math.max(t,e.columnStart+Math.max(1,e.columnSpan));let e=n.cells.reduce((e,t)=>Math.max(e,t.columnStart+Math.max(1,t.columnSpan)),n.before?.columnSpan??0);t=Math.max(t,e+(n.after?.columnSpan??0))}return t}function KD(e,t,n){let r=0,i=Math.min(e.length,t+Math.max(1,n));for(let n=Math.max(0,t);n<i;n+=1)r+=e[n]??0;return r}function qD(e,t){return e?e.kind===`pct`?UD(e.value)*t:UD(e.value):null}function JD(e,t,n,r){let i=Math.max(0,t),a=Math.max(1,Math.min(n,e.length-i));if(a<=0)return;let o=KD(e,i,a);if(o<=VD){e[i+a-1]=r;return}let s=r/o;for(let t=i;t<i+a;t+=1)e[t]=(e[t]??0)*s}function YD(e,t,n,r){let i=Math.max(0,t),a=Math.max(1,Math.min(n,e.length-i));if(a<=0)return;let o=KD(e,i,a);r<=o+VD||(e[i+a-1]+=r-o)}function XD(e,t){let n=[];e.before&&e.before.columnSpan>0&&n.push({start:0,span:e.before.columnSpan,preferred:e.before.preferredWidth});for(let t of e.cells)n.push({start:t.columnStart,span:t.columnSpan,preferred:t.preferredWidth});return e.after&&e.after.columnSpan>0&&n.push({start:Math.max(0,t-e.after.columnSpan),span:e.after.columnSpan,preferred:e.after.preferredWidth}),n}function ZD(e,t){let n=Array.from({length:t},(t,n)=>UD(e.gridWidthsPt[n]??0)),r=n.reduce((e,t)=>e+t,0),i=e.tablePreferredWidthPt??(r>0?r:UD(e.availableWidthPt));e.rows.forEach((e,r)=>{for(let a of XD(e,t)){let e=qD(a.preferred,i);e!==null&&(r===0?JD(n,a.start,a.span,e):YD(n,a.start,a.span,e))}}),e.tablePreferredWidthPt===null&&QD(n,e.rows);let a=e.tablePreferredWidthPt,o=n.reduce((e,t)=>e+t,0);if(a!==null&&a>=0&&o<=VD&&n.length>0)return n.map(()=>a/n.length);if(a!==null&&a>=0&&o>VD){let e=a/o;return n.map(t=>t*e)}return n}function QD(e,t){let n=Array(e.length).fill(0);for(let r of t)for(let t of r.cells){if(t.columnSpan!==1||t.preferredWidth?.kind!==`pct`)continue;let r=t.columnStart;r<0||r>=e.length||(n[r]=Math.max(n[r]??0,UD(t.preferredWidth.value)))}let r=e.reduce((e,t)=>e+t,0),i=n.map((t,n)=>t*r>e[n]+VD),a=new Set;for(;i.some(Boolean);){let t=i.map(e=>e?`1`:`0`).join(``);if(a.has(t))return;a.add(t);let o=0,s=0;for(let t=0;t<e.length;t+=1)i[t]?s+=n[t]??0:o+=e[t]??0;if(s>=1-VD)return;r=o/(1-s);let c=n.map((t,n)=>t*r>e[n]+VD);if(c.every((e,t)=>e===i[t])){for(let t=0;t<e.length;t+=1)i[t]&&(e[t]=n[t]*r);return}i=c}}function $D(e,t,n){let r=Array(t).fill(0),i=Array(t).fill(0);for(let n of e)for(let e of n.cells)e.columnSpan!==1||e.columnStart<0||e.columnStart>=t||(r[e.columnStart]=Math.max(r[e.columnStart]??0,UD(e.minContentWidthPt)),i[e.columnStart]=Math.max(i[e.columnStart]??0,UD(e.maxContentWidthPt)));let a=Array(t).fill(!1);for(let o of e)for(let e of o.cells){let o=e.columnStart;if(e.columnSpan!==1||o<0||o>=t||a[o]||e.preferredWidth===null)continue;let s=qD(e.preferredWidth,n);s!==null&&(i[o]=Math.max(r[o]??0,s),a[o]=!0)}for(let e=0;e<t;e+=1)i[e]=Math.max(r[e]??0,i[e]??0);return{minimums:r,maximums:i}}function eO(e,t,n,r,i){let a=Math.min(e.length,n+r),o=e.map((e,t)=>t).filter(e=>e<n||e>=a),s=o.map(n=>Math.max(0,e[n]-(t[n]??0))),c=s.reduce((e,t)=>e+t,0),l=Math.min(i,c);return l<=VD||c<=VD?0:(o.forEach((t,n)=>{e[t]-=l*((s[n]??0)/c)}),l)}function tO(e,t,n,r){if(r<=VD||n<=0)return;let i=KD(e,t,n);for(let a=0;a<n;a+=1){let o=t+a,s=i>VD?(e[o]??0)/i:1/n;e[o]+=r*s}}function nO(e){let t=GD(e);if(e.layout===`fixed`){let n=ZD(e,t).reduce((e,t)=>e+t,0);return Object.freeze({minWidthPt:n,maxWidthPt:n})}let n=Array(t).fill(0),r=Array(t).fill(0),i=e.rows.flatMap(e=>e.cells).sort((e,t)=>e.columnSpan-t.columnSpan),a=(e,t,n)=>{let r=Math.max(0,t.columnStart),i=Math.max(1,Math.min(t.columnSpan,e.length-r));if(i<=0)return;let a=UD(n)-KD(e,r,i);a>VD&&tO(e,r,i,a)};for(let e of i)a(n,e,e.minContentWidthPt),a(r,e,Math.max(e.minContentWidthPt,e.maxContentWidthPt));let o=n.reduce((e,t)=>e+t,0),s=Math.max(o,r.reduce((e,t)=>e+t,0));return Object.freeze({minWidthPt:o,maxWidthPt:s})}function rO(e,t,n,r){let i=Math.max(0,r.columnStart),a=Math.max(1,Math.min(r.columnSpan,e.length-i));if(a<=0)return;let o=UD(r.minContentWidthPt),s=KD(e,i,a);if(o<=s+VD)return;let c=a===1?n[i]??o:Math.max(o,UD(r.maxContentWidthPt));tO(e,i,a,eO(e,t,i,a,Math.max(0,c-s)));let l=KD(e,i,a);l<o-VD&&tO(e,i,a,o-l)}function iO(e,t,n,r){let i=e.reduce((e,t)=>e+t,0);if(i<=r+VD||i<=VD)return e;let a=[...e],o=a.map((e,n)=>Math.max(0,e-(t[n]??0))),s=o.reduce((e,t)=>e+t,0),c=Math.min(i-r,s);c>VD&&s>VD&&a.forEach((e,t)=>{a[t]-=c*((o[t]??0)/s)});for(let e of n){if(e.columnSpan<=1)continue;let n=Math.max(0,e.columnStart),r=Math.max(1,Math.min(e.columnSpan,a.length-n)),i=UD(e.minContentWidthPt)-KD(a,n,r);if(i<=VD)continue;let o=eO(a,t,n,r,i);tO(a,n,r,o),o<i-VD&&tO(a,n,r,i-o)}let l=a.reduce((e,t)=>e+t,0);if(l<=r+VD||l<=VD)return WD(a);let u=Math.max(0,r)/l;return WD(a.map(e=>e*u))}function aO(e){let t=GD(e);if(t===0)return Object.freeze([]);let n=ZD(e,t);if(e.layout===`fixed`){if(e.availableWidthPt===null)return Object.freeze(n);let t=n.reduce((e,t)=>e+t,0),r=UD(e.availableWidthPt);if(t<=r+VD||t<=VD)return Object.freeze(n);let i=r/t;return Object.freeze(WD(n.map(e=>e*i)))}let r=n.reduce((e,t)=>e+t,0),{minimums:i,maximums:a}=$D(e.rows,t,r),o=e.rows.flatMap(e=>e.cells);o.sort((e,t)=>e.columnSpan-t.columnSpan);for(let e of o)rO(n,i,a,e);return Object.freeze(iO(n,i,o,UD(e.availableWidthPt)))}function oO(e){let t=aO(e),n=t.map((t,n)=>{let r=t!==e.gridWidthsPt[n];return!r&&e.gridWidthKeys?.[n]===null?null:!r&&e.gridWidthKeys?.[n]!==void 0?e.gridWidthKeys[n]:MD(t)??`0/1`});return Object.freeze({widthsPt:Object.freeze([...t]),widthKeys:Object.freeze(n)})}function sO(e){return oO(e).widthsPt}function cO(e,t){if(t!==e.length-1||t===0)return!1;let n=e[t],r=e[t-1];return n?.type===`paragraph`&&r?.type===`table`&&n.runs.length===0}function lO(e,t){let{cell:n,table:r,cellTotalWidthPt:i,outerState:a,sourcePath:o}=e,s=t.resolveContentWidthPt(n,r,i),c=t.createCellState(a,s,n),l=[];for(let e=0;e<n.content.length;e+=1){let r=n.content[e];if(!r)continue;let i=[...o,e];if(r.type===`paragraph`){let a=n.content[e-1],o=n.content[e+1],u=r,d=t.acquireParagraph(c,u,s,i,o_(a?.type===`paragraph`?a:null,u,o?.type===`paragraph`?o:null));l.push(d),t.advanceState(c,d.advancePt);continue}let a=r,u=r;l.push(t.acquireNestedTable(c,a,s,i,{fromPrevious:u.nestedSliceContinuesFromPrevious??!1,onNext:u.nestedSliceContinuesOnNext??!1},(e,n,r,i,a)=>lO({cell:e,table:n,cellTotalWidthPt:r,outerState:i,sourcePath:a},t)))}return l}Z({id:`word-exact-row-height-bottom-padding`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.180(d)`},description:`Word adds the largest bottom cell margin to an exact trHeight instead of treating that margin as part of the authored height.`}),Z({id:`word-table-border-layer-cascade`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.169`},description:`During per-side border acquisition, none falls through to a lower-precedence layer while nil remains authored and blocks fallback only on that side.`}),Z({id:`word-spaced-cell-inside-border-conflict`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §§2.1.136, 2.1.138`},description:`With non-zero cell spacing, Word retains the narrow conditional tcBorders insideH/insideV conflict against the corresponding table inside border.`}),Z({id:`word-table-indent-all-alignments`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.155`},description:`Word applies tblInd as a signed leading-edge translation for every table alignment, reversing the translation for bidi visual order.`}),Z({id:`word-exact-row-vertical-clip-only`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/table.test.ts#clips an overflowing merged owner when every row in its span is exact`},description:`Preserve the established exact-row overflow behavior that clips the owned vertical interval without clipping nested table ink horizontally to the cell box.`}),Z({id:`word-over-page-cant-split-clip`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.120`},description:`Word starts an over-page cantSplit row on a fresh page and clips its overflow instead of synthesizing a row continuation.`}),Z({id:`word-positioned-table-adjacency-exclusion`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.149(a)`},description:`Word excludes effectively positioned tables from the logical adjacent-table sequence before retained layout consumes the parser-owned sequence identity.`}),Z({id:`word-table-border-weight-precedence`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.169`},description:`Use the documented Word border numbers for shared-cell conflict weight and force dotted and dashed borders to a complete weight of one.`}),Z({id:`word-omitted-row-height-rule-at-least`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.180`},description:`Treat an omitted trHeight hRule as atLeast while retaining an explicitly authored auto rule as authored input.`}),Z({id:`word-authored-auto-row-height-floor`,evidence:{kind:`regression-test`,reference:`packages/docx/src/table-row-height.test.ts#auto with @val — @val is honored as a lower bound`},description:`Preserve the established legacy-model behavior that an auto row with an authored height value uses that value as a lower bound.`}),Z({id:`word-collapsed-border-row-track-footprint`,evidence:{kind:`office-observation`,syntheticFixtureId:`collapsed-border-row-track-matrix`,application:`Microsoft Word`,version:`16.111.1`,platform:`macOS 26.5.2`},description:`For automatic and at-least table rows with collapsed cell boundaries, Word includes half of the winning top and bottom rule widths in each row track. Exact rows retain their authored complete height, and cell spacing keeps independent edges out of the collapsed footprint.`}),Z({id:`word-effective-floating-table-positioning`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §2.1.162`},description:`Use parser-retained effective positioning status rather than lexical tblpPr presence to decide whether a table leaves ordinary flow.`}),Z({id:`word-table-cell-spacing-scope-shadow`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §§2.1.152, 2.1.153, 2.1.154`},description:`At each table-cell-spacing precedence scope, pct, auto, and nil resolve to zero and shadow lower scopes instead of being treated as absent.`}),Z({id:`word-table-margin-scope-shadow`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §§2.1.116, 2.1.125, 2.1.146, 2.1.177`},description:`Preserve the documented scope-specific treatment of non-dxa table cell margins: leading/trailing defaults may resolve to zero while cell/exception and nil top/bottom values remain ignored.`}),Z({id:`word-first-row-table-exception-scope`,evidence:{kind:`microsoft-note`,reference:`[MS-OI29500] §§2.1.156, 2.1.158, 2.1.167`},description:`Apply the supported first-row table-property exception facts at table scope, including authored preferred-width shadowing.`}),Z({id:`word-trailing-structural-cell-marker`,evidence:{kind:`regression-test`,reference:`packages/docx/src/layout/compatibility.test.ts#drops only an empty trailing paragraph after a non-paragraph cell block`},description:`Exclude the required empty trailing cell paragraph from row-height and vertical-alignment measurements when it follows a visible non-paragraph block.`}),Z({id:`word-cell-vertical-alignment-ink-block`,evidence:{kind:`regression-test`,reference:`packages/docx/src/cell-valign-leading-spacing.test.ts#inked block is vertically centred in the cell (midpoint = cell midpoint)`},description:`Center or bottom-align the visible cell ink block without charging the first paragraph spaceBefore or final paragraph spaceAfter at the cell edges.`}),Z({id:`word-vertical-merge-terminal-border`,evidence:{kind:`regression-test`,reference:`packages/docx/src/cell-border-conflict-render.test.ts#uses the final continuation cell border at the bottom of a vertical merge`},description:`Resolve the bottom edge of a vertically merged cell from its terminal continuation cell before applying shared-edge conflict rules.`}),Z({id:`word-vertical-section-upright-block-table`,evidence:{kind:`regression-test`,reference:`packages/docx/src/vertical-table-upright.test.ts#the table advances the flow by its PHYSICAL WIDTH; body text stays vertical`},description:`Paint a block table in an upright physical frame within a vertical section and charge its physical width as the body-flow advance.`});function uO(e,t){return Math.max(0,e??0)+Math.max(0,...t)}function dO(e,t){return(Math.max(0,e)+Math.max(0,t))/2}function fO(e){return e!=null&&e!==`none`}function pO(e,t,n){return n?e-t:e+t}function mO(e){return e.spacingPt>0&&!fO(e.directStyle)&&fO(e.conditionalInsideStyle)}function hO(e,t){let n=Math.min(e.xPt,t.xPt),r=Math.max(e.xPt+e.widthPt,t.xPt+t.widthPt);return Object.freeze({xPt:n,yPt:e.yPt,widthPt:r-n,heightPt:e.heightPt})}function gO(e){return e.compatibility===`word`&&e.availableHeightPt+e.epsilonPt>=e.freshPageHeightPt}const _O=Object.freeze([`single`,`thick`,`double`,`dotted`,`dashed`,`dotDash`,`dotDotDash`,`triple`,`thinThickSmallGap`,`thickThinSmallGap`,`thinThickThinSmallGap`,`thinThickMediumGap`,`thickThinMediumGap`,`thinThickThinMediumGap`,`thinThickLargeGap`,`thickThinLargeGap`,`thinThickThinLargeGap`,`wave`,`doubleWave`,`dashSmallGap`,`dashDotStroked`,`threeDEmboss`,`threeDEngrave`,`outset`,`inset`]),vO=Object.freeze({single:1,thick:2,double:3,dotDash:8,dotDotDash:9,triple:10,thinThickSmallGap:11,thickThinSmallGap:12,thinThickThinSmallGap:13,thinThickMediumGap:14,thickThinMediumGap:15,thinThickThinMediumGap:16,thinThickLargeGap:17,thickThinLargeGap:18,thinThickThinLargeGap:19,wave:20,doubleWave:21,dashSmallGap:22,dashDotStroked:23,threeDEmboss:24,threeDEngrave:25,outset:26,inset:27});function yO(e,t){return e===`dotted`||e===`dashed`?1:Math.max(0,t)*8*(vO[e]??0)}function bO(e,t){return t?e:`atLeast`}function xO(e,t){return e===`pct`||e===`auto`||e===`nil`?0:t}function SO(e){return e.kind===`dxa`?e.dxaValuePt:e.scope===`cell`||e.scope===`exception`?null:(e.edge===`start`||e.edge===`end`)&&(e.kind===`pct`||e.kind===`auto`||e.kind===`nil`)?0:null}function CO(e){return yO(e.style,e.width)}function wO(e){let t=_O.indexOf(e);return t===-1?_O.length:t}function TO(e){if(!e)return{r:0,g:0,b:0};let t=e.replace(/^#/,``);return t.length!==6||/[^0-9a-fA-F]/.test(t)?{r:0,g:0,b:0}:{r:parseInt(t.slice(0,2),16),g:parseInt(t.slice(2,4),16),b:parseInt(t.slice(4,6),16)}}function EO(e,t){let n=TO(e),r=TO(t),i=e=>e.r+e.b+2*e.g,a=e=>e.b+2*e.g,o=e=>e.g;for(let e of[i,a,o]){let t=e(n)-e(r);if(t!==0)return t}return 0}function DO(e,t){let n=e=>e&&e.spec.style!==`nil`&&e.spec.style!==`none`?e:null,r=n(e),i=n(t);if(!r&&!i)return null;if(!r)return i;if(!i||r.source===`cell`&&i.source===`table`)return r;if(i.source===`cell`&&r.source===`table`)return i;let a=CO(r.spec),o=CO(i.spec);if(a!==o)return a>o?r:i;let s=wO(r.spec.style),c=wO(i.spec.style);if(s!==c)return s<c?r:i;let l=EO(r.spec.color,i.spec.color);return l===0||l<0?r:i}function OO(...e){for(let t of e)if(t&&fO(t.authoredStyle))return t;return null}function kO(e){return Math.max(0,e.advancePt-e.spacing.beforePt-e.spacing.afterPt)}function AO(e){let t=[],n=0,r=null,i=0,a,o=0,s=null,c=null;for(let l of e){let e=l.layout;if(e.kind===`paragraph`){let u=e.spacing.beforePt,d=e.spacing.afterPt,f=r?vC(r,e,i,u):u,p=l.structuralTrailing?0:kO(e),m=n+(l.structuralTrailing?0:f);if(t.push({layout:e,offsetPt:m,advancePt:p}),l.structuralTrailing||(n=m+p,a??=m,o=Math.max(o,n),r=e,i=d),e.cellContainmentBounds){let t=m+e.cellContainmentBounds.yPt-e.flowBounds.yPt,n=t+e.cellContainmentBounds.heightPt;a=a===void 0?t:Math.min(a,t),o=Math.max(o,n),s=s===null?t:Math.min(s,t),c=c===null?n:Math.max(c,n)}continue}r&&(n+=i);let u=e.advancePt;t.push({layout:e,offsetPt:n,advancePt:u}),a??=n,n+=u,o=n,r=null,i=0}let l=n+(r?i:0),u=a??0;return{blocks:t,flowHeightPt:l,inkTopPt:u,inkHeightPt:Math.max(0,o-u),cellContainmentTopPt:s,cellContainmentBottomPt:c}}function jO(e){let t=e.cellContainmentTopPt??0,n=e.cellContainmentBottomPt??0;return Math.max(e.flowHeightPt,n)-Math.min(0,t)}function MO(e){return jO(AO(e))}function NO(e){return Number.isFinite(e?.cellSpacingPt)?Math.max(0,e?.cellSpacingPt??0):0}function PO(e,t){let n=NO(e[t]),r=NO(e[t-1]),i=NO(e[t+1]);return{topPt:t===0?n:Math.max(r,n)/2,bottomPt:t===e.length-1?n:Math.max(n,i)/2}}function FO(e,t,n){return n.topPt+e.margins.topPt+jO(t)+e.margins.bottomPt+n.bottomPt}function IO(e,t,n,r){let i=t;for(let a=t+1;a<e.length&&e[a]?.cells.find(e=>e.columnStart===n&&e.columnSpan===r&&e.verticalMerge===`continue`);a+=1)i=a;return i}function LO(e){return e.heightRule===`exact`?uO(e.heightPt,e.cells.map(e=>e.margins.bottomPt)):e.heightRule===`atLeast`?Math.max(0,e.heightPt??0):0}function RO(e,t,n){let r=e.map(e=>LO(e)),i=e.map((n,r)=>Math.max(0,...n.cells.filter(e=>e.verticalMerge!==`continue`).map(n=>{let i=n.verticalMerge===`restart`?IO(e,r,n.columnStart,n.columnSpan):r,a=PO(e,r),o=PO(e,i);return FO(n,t.get(n.id)??AO([]),{topPt:a.topPt,bottomPt:o.bottomPt})})));e.forEach((n,i)=>{let a=PO(e,i);for(let e of n.cells){if(e.verticalMerge!==`none`)continue;let o=FO(e,t.get(e.id)??AO([]),a);n.heightRule!==`exact`&&(r[i]=Math.max(r[i]??0,o))}});let a=[];e.forEach((n,r)=>{for(let i of n.cells)i.verticalMerge===`restart`&&a.push({start:r,end:IO(e,r,i.columnStart,i.columnSpan),requiredPt:FO(i,t.get(i.id)??AO([]),{topPt:PO(e,r).topPt,bottomPt:PO(e,IO(e,r,i.columnStart,i.columnSpan)).bottomPt})})}),a.sort((e,t)=>e.end-t.end||e.start-t.start);for(let t of a){let n=0;for(let e=t.start;e<=t.end;e+=1)n+=r[e]??0;let i=t.requiredPt-n;if(!(i<=0)){for(let n=t.end;n>=t.start;--n)if(e[n]?.heightRule!==`exact`){r[n]=(r[n]??0)+i;break}}}return e.forEach((e,t)=>{e.heightRule!==`exact`&&(r[t]=(r[t]??0)+(n[t]??0))}),{heights:r,contentHeights:i}}function zO(e,t){return e?{source:t,spec:{width:e.widthPt,color:e.color,style:e.authoredStyle}}:null}function BO(e,t,n,r,i,a,o,s){let c=(e,t,n,r,i,a,o)=>{let s=OO(e,o?t:null);return s?zO(s,`cell`):zO(o?OO(r,a):OO(n,i),`table`)},l=c(e.borders.top,e.borders.insideH,n?.top??null,n?.insideH??null,t.top,t.insideH,r!==0),u=c(e.borders.bottom,e.borders.insideH,n?.bottom??null,n?.insideH??null,t.bottom,t.insideH,i!==a-1),d=c(e.borders.left,e.borders.insideV,n?.left??null,n?.insideV??null,t.left,t.insideV,e.columnStart!==0),f=c(e.borders.right,e.borders.insideV,n?.right??null,n?.insideV??null,t.right,t.insideV,e.columnStart+e.columnSpan!==o);return s?{top:l,right:d,bottom:u,left:f}:{top:l,right:f,bottom:u,left:d}}function VO(e){return e?{widthPt:e.spec.width,color:e.spec.color??`#000000`,authoredStyle:e.spec.style}:null}function HO(e,t,n){let r=VO(DO(e,t));return r?{border:r,edge:n}:null}function UO(e){let t=e.columnWidthsPt.length,n=[],r=e.rows.map(()=>Array(t).fill(-1));return e.rows.forEach((i,a)=>{for(let o of i.cells){if(o.verticalMerge===`continue`)continue;let i=o.verticalMerge===`restart`?IO(e.rows,a,o.columnStart,o.columnSpan):a,s=n.length;n.push({input:o,rowIndex:a,lastRowIndex:i});let c=Math.min(t,o.columnStart+o.columnSpan);for(let e=a;e<=i;e+=1)for(let t=Math.max(0,o.columnStart);t<c;t+=1)r[e][t]=s}}),{owners:n,occupancy:r}}function WO(e,t){return t.lastRowIndex===t.rowIndex?t.input:e.rows[t.lastRowIndex]?.cells.find(e=>e.columnStart===t.input.columnStart&&e.columnSpan===t.input.columnSpan&&e.verticalMerge===`continue`)??t.input}function GO(e){let t=e.rows.length,n=e.columnWidthsPt.length,{owners:r,occupancy:i}=UO(e),a=(i,a=!1)=>{let o=r[i];if(!o)return null;let s=a?WO(e,o):o.input,c=a&&s!==o.input?o.lastRowIndex:o.rowIndex;return BO(s,e.borders,e.rows[c]?.exceptionBorders??null,o.rowIndex,o.lastRowIndex,t,n,e.bidiVisual)};return{horizontal:Array.from({length:t+1},(e,o)=>Array.from({length:n},(e,n)=>{let s=o>0?i[o-1]?.[n]??-1:-1,c=o<t?i[o]?.[n]??-1:-1;if(s>=0&&s===c)return null;let l=a(c),u=o===0?`top`:o===t?`bottom`:`between`;return{above:{owner:r[s]??null,border:a(s,!0)?.bottom??null},below:{owner:r[c]??null,border:l?.top??null},edge:u}})),vertical:Array.from({length:n+1},(r,o)=>Array.from({length:t},(t,r)=>{let s=o>0?i[r]?.[o-1]??-1:-1,c=o<n?i[r]?.[o]??-1:-1,l=e.bidiVisual?c:s,u=e.bidiVisual?s:c;return l>=0&&l===u?null:HO(a(l)?.right??null,a(u)?.left??null,o===0?e.bidiVisual?`right`:`left`:o===n?e.bidiVisual?`left`:`right`:`between`)})),occupancy:i}}function KO(e,t){return t.horizontal.map((t,n)=>NO(e.rows[n-1])>0||NO(e.rows[n])>0?0:t.reduce((e,t)=>{if(!t)return e;let n=HO(t.above.border,t.below.border,t.edge);return Math.max(e,n?.border.widthPt??0)},0))}function qO(e,t){let n=KO(e,t);return e.rows.map((e,t)=>e.heightRule===`exact`?0:dO(n[t]??0,n[t+1]??0))}function JO(e){return qO(e,GO(e))}function YO(e,t,n){return{edge:e.edge,from:t,to:n,color:e.border.color,widthPt:e.border.widthPt,...Cf(e.border.authoredStyle,e.border.widthPt)}}const XO=Object.freeze({top:null,right:null,bottom:null,left:null,insideH:null,insideV:null});function ZO(e){let t=VO(e);return t&&t.authoredStyle!==`nil`&&t.authoredStyle!==`none`?t:null}function QO(e,t,n,r,i){let a=[0];for(let t of e.columnWidthsPt)a.push((a.at(-1)??0)+t);let o=[0];for(let e of r)o.push((o.at(-1)??0)+e);let s=a.at(-1)??0,c=(n,r)=>(t[n]??0)+(e.bidiVisual?s-(a[r]??0):a[r]??0),l=e=>n+(o[e]??0),u=[],d=(e,t,n,r)=>{!e||e.authoredStyle===`nil`||e.authoredStyle===`none`||u.push(YO({border:e,edge:t},n,r))},f=new Set,p=(t,n,r,i)=>{let a=t.owner;if(!a)return;let o=`${n}:${r}:${a.input.id}`;if(f.has(o))return;f.add(o);let s=e.rows[a.rowIndex];if(!s)return;let u=NO(s),p=c(a.rowIndex,a.input.columnStart),m=c(a.rowIndex,Math.min(e.columnWidthsPt.length,a.input.columnStart+a.input.columnSpan)),{startPt:h,endPt:g}=HD(u,a.input.columnStart,a.input.columnSpan,e.columnWidthsPt.length),_=Math.min(p,m)+(e.bidiVisual?g:h),v=Math.max(p,m)-(e.bidiVisual?h:g),y=l(a.rowIndex)+PO(e.rows,a.rowIndex).topPt,b=l(a.lastRowIndex+1)-PO(e.rows,a.lastRowIndex).bottomPt,x=BO(a.input,XO,null,a.rowIndex,a.lastRowIndex,e.rows.length,e.columnWidthsPt.length,e.bidiVisual),S=r===`top`?x.top:x.bottom,C=r===`top`?y:b;d(ZO(S),i,{xPt:_,yPt:C},{xPt:v,yPt:C})};return i.horizontal.forEach((n,r)=>{let a=r>0&&NO(e.rows[r-1])>0,o=r<e.rows.length&&NO(e.rows[r])>0;if(a||o){let a=Math.max(NO(e.rows[r-1]),NO(e.rows[r])),u=o?r:r-1,f=t[u]??0,m=r===0?`top`:r===e.rows.length?`bottom`:`between`;r===0||r===e.rows.length?d(OO(r===0?e.rows[0]?.exceptionBorders?.top??null:e.rows.at(-1)?.exceptionBorders?.bottom??null,r===0?e.borders.top:e.borders.bottom),m,{xPt:f,yPt:l(r)},{xPt:f+s,yPt:l(r)}):n.forEach((t,n)=>{let o=i.occupancy[r-1]?.[n]??-1,s=i.occupancy[r]?.[n]??-1;if(!t||!(o!==s&&(o>=0||s>=0))||[{side:t.above,directEdge:`bottom`},{side:t.below,directEdge:`top`}].some(({side:e,directEdge:t})=>{let n=e.owner;return n?mO({spacingPt:a,directStyle:n.input.borders[t]?.authoredStyle,conditionalInsideStyle:n.input.borders.insideH?.authoredStyle}):!1}))return;let f=c(u,n),p=c(u,n+1),h=OO(e.rows[r-1]?.exceptionBorders?.insideH??null,e.borders.insideH),g=OO(e.rows[r]?.exceptionBorders?.insideH??null,e.borders.insideH);d(HO(zO(h,`table`),zO(g,`table`),m)?.border??null,m,{xPt:Math.min(f,p),yPt:l(r)},{xPt:Math.max(f,p),yPt:l(r)})}),n.forEach(e=>{e&&(p(e.above,r,`bottom`,e.edge),p(e.below,r,`top`,e.edge))});return}let f=[],m=new Map;n.forEach(t=>{if(!t)return;let n=(t,n)=>{if(!n.owner||!n.border)return;let r=`${t}:${n.owner.input.id}`;if(m.has(r))return;let i=c(n.owner.rowIndex,n.owner.input.columnStart),a=c(n.owner.rowIndex,Math.min(e.columnWidthsPt.length,n.owner.input.columnStart+n.owner.input.columnSpan));m.set(r,{side:t,border:n.border,leftPt:Math.min(i,a),rightPt:Math.max(i,a)})};n(`above`,t.above),n(`below`,t.below)});let h=[...m.values()],g=[...new Set(h.flatMap(e=>[e.leftPt,e.rightPt]))].sort((e,t)=>e-t),_=r===0?`top`:r===e.rows.length?`bottom`:`between`;for(let e=1;e<g.length;e+=1){let t=g[e-1]??0,n=g[e]??t;if(n<=t)continue;let r=(t+n)/2,i=h.filter(e=>r>e.leftPt&&r<e.rightPt),a=HO(i.find(e=>e.side===`above`)?.border??null,i.find(e=>e.side===`below`)?.border??null,_);a&&f.push({resolved:a,leftPt:t,rightPt:n})}f.sort((e,t)=>e.leftPt-t.leftPt);let v=[];for(let e of f){let t=v.at(-1);t&&t.rightPt===e.leftPt&&t.resolved.edge===e.resolved.edge&&t.resolved.border.widthPt===e.resolved.border.widthPt&&t.resolved.border.color===e.resolved.border.color&&t.resolved.border.authoredStyle===e.resolved.border.authoredStyle?t.rightPt=e.rightPt:v.push({...e})}for(let e of v)u.push(YO(e.resolved,{xPt:e.leftPt,yPt:l(r)},{xPt:e.rightPt,yPt:l(r)}))}),i.vertical.forEach((t,n)=>{t.forEach((t,r)=>{NO(e.rows[r])>0||t&&u.push(YO(t,{xPt:c(r,n),yPt:l(r)},{xPt:c(r,n),yPt:l(r+1)}))})}),e.rows.forEach((n,r)=>{let a=NO(n);if(a<=0)return;let o=l(r),u=l(r+1),f=t[r]??0;d(OO(n.exceptionBorders?.left??null,e.borders.left),`left`,{xPt:f,yPt:o},{xPt:f,yPt:u}),d(OO(n.exceptionBorders?.right??null,e.borders.right),`right`,{xPt:f+s,yPt:o},{xPt:f+s,yPt:u});let p=new Set;for(let e of n.cells)mO({spacingPt:a,directStyle:e.borders.left?.authoredStyle,conditionalInsideStyle:e.borders.insideV?.authoredStyle})&&p.add(e.columnStart),mO({spacingPt:a,directStyle:e.borders.right?.authoredStyle,conditionalInsideStyle:e.borders.insideV?.authoredStyle})&&p.add(e.columnStart+e.columnSpan);for(let t=1;t<e.columnWidthsPt.length;t+=1){let a=i.occupancy[r]?.[t-1]??-1,s=i.occupancy[r]?.[t]??-1;if(!(a!==s&&(a>=0||s>=0)))continue;let l=c(r,t);p.has(t)||d(OO(n.exceptionBorders?.insideV??null,e.borders.insideV),`between`,{xPt:l,yPt:o},{xPt:l,yPt:u})}for(let t of n.cells){if(t.verticalMerge===`continue`)continue;let n=t.verticalMerge===`restart`?IO(e.rows,r,t.columnStart,t.columnSpan):r,i=c(r,t.columnStart),o=c(r,Math.min(e.columnWidthsPt.length,t.columnStart+t.columnSpan)),{startPt:s,endPt:u}=HD(a,t.columnStart,t.columnSpan,e.columnWidthsPt.length),f=Math.min(i,o)+(e.bidiVisual?u:s),p=Math.max(i,o)-(e.bidiVisual?s:u),m=l(r)+PO(e.rows,r).topPt,h=l(n+1)-PO(e.rows,n).bottomPt,g=BO(t,XO,null,r,n,e.rows.length,e.columnWidthsPt.length,e.bidiVisual);d(ZO(g.right),`right`,{xPt:p,yPt:m},{xPt:p,yPt:h}),d(ZO(g.left),`left`,{xPt:f,yPt:m},{xPt:f,yPt:h})}}),u}function $O(e,t,n,r,i){let a=r.availableBounds,o=e===`center`?a.xPt+(a.widthPt-i)/2:e===`right`?a.xPt+a.widthPt-i:a.xPt;return t===0?o:pO(o,t,n)}function ek(e,t){if(t.length===0)return e;let n=Math.min(e.xPt,...t.map(e=>Math.min(e.from.xPt,e.to.xPt)-e.widthPt/2)),r=Math.min(e.yPt,...t.map(e=>Math.min(e.from.yPt,e.to.yPt)-e.widthPt/2)),i=Math.max(e.xPt+e.widthPt,...t.map(e=>Math.max(e.from.xPt,e.to.xPt)+e.widthPt/2)),a=Math.max(e.yPt+e.heightPt,...t.map(e=>Math.max(e.from.yPt,e.to.yPt)+e.widthPt/2));return{xPt:n,yPt:r,widthPt:i-n,heightPt:a-r}}function tk(e){let t=new Map;e.forEach((e,n)=>{if(e.style!==`compound`||!e.edge||e.edge===`between`)return;let r=`${e.authoredStyle}\\u0000${e.color}\\u0000${e.widthPt}`,i=t.get(r)??[];i.push({border:e,index:n}),t.set(r,i)});let n=[];for(let e of t.values()){let t=t=>e.filter(e=>e.border.edge===t),r=t(`top`),i=t(`right`),a=t(`bottom`),o=t(`left`);if(!r.length||!i.length||!a.length||!o.length)continue;let s=Math.min(...r.flatMap(({border:e})=>[e.from.xPt,e.to.xPt])),c=Math.max(...r.flatMap(({border:e})=>[e.from.xPt,e.to.xPt])),l=r[0].border.from.yPt,u=a[0].border.from.yPt,d=(e,t,n,r)=>{let i=e.map(({border:e})=>r(e)).map(([e,t])=>[Math.min(e,t),Math.max(e,t)]).sort((e,t)=>e[0]-t[0]);if(i[0]?.[0]!==t)return!1;let a=t;for(let e of i){if(e[0]>a)return!1;a=Math.max(a,e[1])}return a===n};if(!(r.every(({border:e})=>e.from.yPt===l&&e.to.yPt===l)&&a.every(({border:e})=>e.from.yPt===u&&e.to.yPt===u)&&o.every(({border:e})=>e.from.xPt===s&&e.to.xPt===s)&&i.every(({border:e})=>e.from.xPt===c&&e.to.xPt===c)&&d(r,s,c,e=>[e.from.xPt,e.to.xPt])&&d(a,s,c,e=>[e.from.xPt,e.to.xPt])&&d(o,l,u,e=>[e.from.yPt,e.to.yPt])&&d(i,l,u,e=>[e.from.yPt,e.to.yPt])))continue;let f=e[0].border;n.push({bounds:{xPt:s,yPt:l,widthPt:c-s,heightPt:u-l},border:{authoredStyle:f.authoredStyle,color:f.color,widthPt:f.widthPt,style:f.style},segmentIndexes:e.map(({index:e})=>e)})}return n}function nk(e,t){let n=Math.max(e.xPt,t.xPt),r=Math.max(e.yPt,t.yPt),i=Math.min(e.xPt+e.widthPt,t.xPt+t.widthPt),a=Math.min(e.yPt+e.heightPt,t.yPt+t.heightPt);return i>n&&a>r?{xPt:n,yPt:r,widthPt:i-n,heightPt:a-r}:null}function rk(e,t,n){let r=e.layout,i=t+(r.kind===`table`?r.flowBounds.xPt:0),a=n+e.offsetPt+(r.kind===`table`?r.flowBounds.yPt:0),o=i-r.flowBounds.xPt,s=a-r.flowBounds.yPt;return{xPt:r.inkBounds.xPt+o,yPt:r.inkBounds.yPt+s,widthPt:r.inkBounds.widthPt,heightPt:r.inkBounds.heightPt}}function ik(e,t,n){let r=Fu(e,`TableLayoutInput`);if(r.columnWidthsPt.some(e=>!Number.isFinite(e)||e<0))throw TypeError(`TableLayoutInput.columnWidthsPt must contain finite non-negative widths`);let i=new Map;r.rows.forEach(e=>e.cells.forEach(e=>{i.set(e.id,AO(e.verticalMerge===`continue`?[]:e.blocks))}));let a=GO(r),o=RO(r.rows,i,qO(r,a)),s=o.heights,c=r.columnWidthsPt.reduce((e,t)=>e+t,0),l=s.reduce((e,t)=>e+t,0),u=t.cursor.yPt,d=r.rows.map(e=>$O(e.alignment??r.alignment,Number.isFinite(e.indentPt)?e.indentPt:r.indentPt,r.bidiVisual,t,c)),f=d[0]??$O(r.alignment,r.indentPt,r.bidiVisual,t,c),p=QO(r,d,u,s,a),m=tk(p),h=[0];for(let e of r.columnWidthsPt)h.push((h.at(-1)??0)+e);let g=[0];for(let e of s)g.push((g.at(-1)??0)+e);let _=(e,t)=>(d[e]??f)+(r.bidiVisual?c-(h[t]??0):h[t]??0),v=r.rows.map((e,n)=>{let a=u+(g[n]??0),l=s[n]??0,p=d[n]??f,m=PO(r.rows,n),h=NO(e),v=e.cells.map(e=>{let o=e.verticalMerge===`restart`?IO(r.rows,n,e.columnStart,e.columnSpan):n,s=PO(r.rows,o),c=u+(g[o+1]??g[n+1]??0)-s.bottomPt,d=_(n,e.columnStart),f=_(n,Math.min(r.columnWidthsPt.length,e.columnStart+e.columnSpan)),p=Math.min(d,f),v=Math.max(d,f),{startPt:y,endPt:b}=HD(h,e.columnStart,e.columnSpan,r.columnWidthsPt.length),x=p+(r.bidiVisual?b:y),S=v-(r.bidiVisual?y:b),C=Math.max(0,S-x),w=a+m.topPt,T=e.verticalMerge===`restart`?Math.max(0,c-w):Math.max(0,l-m.topPt-m.bottomPt),E=i.get(e.id)??AO([]),D=Math.max(0,T-e.margins.topPt-e.margins.bottomPt),O=e.margins.topPt-Math.min(0,E.inkTopPt),k=E.inkHeightPt>=D?O:e.vAlign===`center`?e.margins.topPt+(D-E.inkHeightPt)/2-E.inkTopPt:e.vAlign===`bottom`?T-e.margins.bottomPt-E.inkHeightPt-E.inkTopPt:O,A={xPt:x+e.margins.leftPt,yPt:w+k,widthPt:Math.max(0,C-e.margins.leftPt-e.margins.rightPt),heightPt:D},j={xPt:x,yPt:w,widthPt:C,heightPt:T},M=e.verticalMerge!==`continue`&&r.rows.slice(n,o+1).every(e=>e.heightRule===`exact`)?hO(j,t.availableBounds):void 0,N=e.verticalMerge===`continue`?[]:E.blocks.map(e=>({...e,offsetPt:k+e.offsetPt})),P=bv([j,...N.map(e=>rk(e,A.xPt,j.yPt)).map(e=>M?nk(e,M):e).filter(e=>e!==null)])??j;return{kind:`table-cell`,id:e.id,source:e.source,flowDomainId:r.flowDomainId,ordinaryFlow:r.ordinaryFlow,flowBounds:j,inkBounds:P,...M?{clipBounds:M}:{},contentBounds:A,advancePt:T,verticalMerge:e.verticalMerge,vAlign:e.vAlign,...e.background?{background:e.background}:{},blocks:N}}),y={xPt:p,yPt:a,widthPt:c,heightPt:l},b=bv([y,...v.map(e=>e.inkBounds)])??y;return{kind:`table-row`,id:e.id,source:e.source,flowDomainId:r.flowDomainId,ordinaryFlow:r.ordinaryFlow,flowBounds:y,inkBounds:b,advancePt:l,heightPt:l,contentHeightPt:o.contentHeights[n]??0,...e.repeatedHeader?{repeatedHeader:!0}:{},cells:v}}),y=d.length>0?Math.min(...d):f,b=d.length>0?Math.max(...d.map(e=>e+c)):f+c,x={xPt:y,yPt:u,widthPt:Math.max(0,b-y),heightPt:l},S=bv([x,...v.map(e=>e.inkBounds)])??x;return Fu({layout:{kind:`table`,id:r.id,source:r.source,flowDomainId:r.flowDomainId,ordinaryFlow:r.ordinaryFlow,flowBounds:x,inkBounds:ek(S,p),advancePt:l,columnWidthsPt:r.columnWidthsPt,rows:v,borders:p,...m.length?{compoundBorderFrames:m}:{}},nextCursor:{xPt:t.cursor.xPt,yPt:t.cursor.yPt+l}},`TableLayoutResult`)}function ak(e,t){let n=e.findIndex((e,n)=>n>t&&e.type===`paragraph`&&e.framePr==null);if(n<0)throw Error(`A nested floating table requires a following regular paragraph anchor`);return n}function ok(e){if(!e)return null;let t=e.color??`000000`;return Object.freeze({widthPt:e.width,color:t.startsWith(`#`)?t:`#${t}`,authoredStyle:e.style})}function sk(e){return Object.freeze({top:ok(e.top),right:ok(e.right),bottom:ok(e.bottom),left:ok(e.left),insideH:ok(e.insideH),insideV:ok(e.insideV)})}function ck(e,t){if(e===`center`)return`center`;let n=e===`right`||e===`end`;return(t?!n:n)?`right`:`left`}function lk(e){return e.lines.some(e=>e.placements.some(e=>e.kind===`text`&&e.dependency===`page`))}function uk(e,t,n,r,i,a){let o=Array.isArray(i)?{story:`body`,storyInstance:`body`,path:i}:i,s=o.path,c=e=>({story:o.story,storyInstance:o.storyInstance,path:e}),l=a.layoutServices(r);if(!l)throw Error(`Retained table acquisition requires layout services`);let u=o.story===`body`&&o.storyInstance===`body`?`table:${s.join(`.`)}`:`${o.story}:${o.storyInstance}:table:${s.join(`.`)}`,d=a.tableFormat(e),f=e.bidiVisual===!0,p=d.firstRowException,m=p?.indentAuthored?p.indentPt??0:e.tblInd??0,h={},g=[],_=e.rows.map((n,i)=>{let o=d.rows[i],l=Math.max(0,Math.min(t.length,n.gridBefore??0)),p=n.cells.map((n,d)=>{let f=o?.cells[d]?.marginsPt??{top:n.marginTop??e.cellMarginTop,right:n.marginRight??e.cellMarginRight,bottom:n.marginBottom??e.cellMarginBottom,left:n.marginLeft??e.cellMarginLeft},p=l,m=Math.min(Math.max(1,n.colSpan),Math.max(0,t.length-p));l+=m;let _=t.slice(p,p+m).reduce((e,t)=>e+t,0),v=HD(o?.cellSpacingPt??0,p,m,t.length),y=[...s,i,d],b=`${u}:cell:${i}.${d}`,x=n.vMerge===!1?[]:lO({cell:n,table:e,cellTotalWidthPt:_,outerState:r,sourcePath:y},{resolveContentWidthPt:(e,t,n)=>Math.max(0,n-v.startPt-v.endPt-f.left-f.right),createCellState:a.createCellState,acquireParagraph:(e,t,n,r,o)=>a.acquireParagraph(e,t,n,r,`${u}:cell:${i}.${d}`,o,void 0,c(r)),acquireNestedTable:(e,t,r,i)=>{let o=uk(t,a.resolveColumns(t,r,e),r,e,c(i),a);h[o.layout.id]=o;let s=a.tableFormat(t).positioning;if(s){let r=i[i.length-1],c=s,l=t.overlap===`never`?`never`:`overlap`,u=a.registerFloatingTable(e,{child:o.layout,positioning:c,overlap:l}),d={hostCellId:b,sourceBlockIndex:r,anchorBlockIndex:ak(n.content,r),tableId:o.layout.id,overlap:l,positioning:c,...u==null?{}:{acquiredTextOffsetPt:Object.freeze({...u})}};g.push(d)}return o.layout},advanceState:a.advanceState});return{id:b,source:c(y),columnStart:p,columnSpan:m,verticalMerge:n.vMerge===!0?`restart`:n.vMerge===!1?`continue`:`none`,margins:{topPt:f.top,rightPt:f.right,bottomPt:f.bottom,leftPt:f.left},vAlign:n.vAlign,...n.background?{background:{color:n.background.startsWith(`#`)?n.background:`#${n.background}`}}:{},borders:sk(n.borders),blocks:x.flatMap((e,t)=>{let r=n.content[t];return r?.type===`table`&&a.tableFormat(r).ordinaryFlow===!1?[]:[{layout:e,sourceBlockIndex:t,...e.kind===`paragraph`&&lk(e)?{pageDependent:!0}:{},...cO(n.content,t)?{structuralTrailing:!0}:{}}]})}}),_=o?.height?.rule??`auto`;return{id:`${u}:row:${i}`,source:c([...s,i]),logicalRowIndex:i,cantSplit:o?.cantSplit??n.cantSplit===!0,heightPt:o?.height?.valuePt??null,heightRule:_,cellSpacingPt:o?.cellSpacingPt??0,exceptionBorders:o?.exception?.borders?sk(o.exception.borders):null,alignment:ck(o?.justification??e.jc,f),indentPt:m,cells:p,repeatedHeader:o?.repeatedHeader??n.isHeader===!0}}),v=Fu({kind:`table`,id:u,source:c([...s]),flowDomainId:u,ordinaryFlow:d.ordinaryFlow,alignment:ck(e.jc,f),indentPt:m,bidiVisual:f,columnWidthsPt:t,borders:sk(e.borders),rows:_},`RetainedTableAcquisition.input`),y={xPt:0,yPt:0,widthPt:n,heightPt:1},b=ik(v,{container:{id:u,kind:`tableCell`,bounds:y},cursor:{xPt:0,yPt:0},availableBounds:y},l).layout;return Object.freeze({input:v,layout:b,nestedById:Object.freeze(h),floatingTables:Fu(g,`RetainedTableAcquisition.floatingTables`)})}function dk(e,t,n){return t===n?e:Object.freeze({...e,left:e.right,right:e.left})}function fk(e,t,n){let r=dk(e.borders,e.bidiVisual,n),i=t.exceptionBorders==null?null:dk(t.exceptionBorders,e.bidiVisual,n);return i?Object.freeze({top:OO(i.top,r.top),right:OO(i.right,r.right),bottom:OO(i.bottom,r.bottom),left:OO(i.left,r.left),insideH:OO(i.insideH,r.insideH),insideV:OO(i.insideV,r.insideV)}):r}var pk=class{nodes=[Object.freeze({kind:`zero`})];interned=new Map([[`Z`,0]]);intern(e,t){let n=this.interned.get(e);if(n!==void 0)return n;let r=this.nodes.length;return this.nodes.push(Object.freeze(t)),this.interned.set(e,r),r}token(e,t){return this.intern(`T:${e}:${t}`,{kind:`token`})}add(e,t){if(e===0)return t;if(t===0)return e;let n=this.nodes[e],r=this.nodes[t];return n.kind===`sub`&&n.right===t?n.left:r.kind===`sub`&&r.right===e?r.left:this.intern(`A:${e}:${t}`,{kind:`add`,left:e,right:t})}subtract(e,t){if(e===t)return 0;if(t===0)return e;let n=this.nodes[t];return n.kind===`sub`&&n.left===e?n.right:this.intern(`S:${e}:${t}`,{kind:`sub`,left:e,right:t})}divide(e,t){return e===0?0:this.intern(`D:${e}:${t}`,{kind:`div`,value:e,divisor:t})}};function mk(e,t=0){return Object.freeze({position:e,sym:t,identity:`${e}|${t}`})}function hk(e,t,n){return mk(ID(t.position,n.position),e.add(t.sym,n.sym))}function gk(e,t,n){return mk(RD(t.position,n.position),e.subtract(t.sym,n.sym))}function _k(e,t,n){return mk(zD(t.position,n),e.divide(t.sym,n))}function vk(e,t,n){let r=[mk(`0/1`)];return t.columnWidthsPt.forEach((i,a)=>{let o=t.columnWidthKeys?.[a],s=MD(i)??`0/1`,c=o===null?mk(s,e.token(n,a)):mk(o??s);r.push(hk(e,r.at(-1),c))}),Object.freeze(r)}function yk(e,t,n,r){let i=gk(e,r,n);return t.alignment===`right`?i:t.alignment===`center`?_k(e,i,2n):mk(`0/1`)}function bk(e,t,n,r,i){return hk(e,i,r?gk(e,n,t):t)}function xk(e,t){if(e.length===0)throw RangeError(`Adjacent table group id must not be empty`);if(t.length===0)throw RangeError(`Adjacent table group requires at least one table`);if(t.some(e=>!e.ordinaryFlow))throw Error(`An absolutely positioned table cannot join an adjacent table group`);let n=t[0],r=n.bidiVisual,i=new pk,a=mk(`0/1`),o=t.map((e,t)=>vk(i,e,t)),s=o.map(e=>e.at(-1)??a),c=s.reduce((e,t)=>BD(t.position,e.position)>0?t:e,a),l=(e,t,n,a)=>{let o=bk(i,e,t,n,a);return r?gk(i,c,o):o},u=[];t.forEach((e,t)=>{let n=o[t],a=s[t],d=e.bidiVisual!==r;e.rows.forEach(t=>{let r=yk(i,t,a,c),o=n.map(t=>l(t,a,e.bidiVisual,r));u.push({input:e,row:t,groupBoundaries:o,descending:d})})});let d=new Map;for(let e of[a,c])d.set(e.identity,{boundary:e,count:1});for(let e of u){let t=new Map;for(let n of e.groupBoundaries){let e=t.get(n.identity);t.set(n.identity,{boundary:n,count:(e?.count??0)+1})}for(let[e,n]of t){let t=d.get(e);n.count>(t?.count??0)&&d.set(e,n)}}let f=new Map,p=e=>{let t=f.get(e);return t||(t={position:e,identities:new Map,edges:new Map,firstSeen:new Map},f.set(e,t)),t};for(let[e,t]of d)p(t.boundary.position).identities.set(e,t);let m=0;for(let e of u){let t=e.descending?[...e.groupBoundaries].reverse():e.groupBoundaries,n=null,r=null;for(let e of t){let t=p(e.position);if(t.firstSeen.has(e.identity)||t.firstSeen.set(e.identity,m++),n!==e.position&&(n=e.position,r=null),r!==null&&r!==e.identity){let n=t.edges.get(r);n||(n=new Set,t.edges.set(r,n)),n.add(e.identity)}r=e.identity}}for(let e of f.values())for(let t of e.identities.keys())e.firstSeen.has(t)||e.firstSeen.set(t,m++);let h=[...f.values()].sort((e,t)=>BD(e.position,t.position)),g=[],_=new Map;for(let e of h){let t=new Map([...e.identities.keys()].map(e=>[e,0]));for(let n of e.edges.values())for(let e of n)t.set(e,(t.get(e)??0)+1);let n=[],r=t=>{n.push(t);let r=n.length-1;for(;r>0;){let t=Math.floor((r-1)/2);if(e.firstSeen.get(n[t])<=e.firstSeen.get(n[r]))break;[n[t],n[r]]=[n[r],n[t]],r=t}},i=()=>{let t=n[0],r=n.pop();if(n.length>0){n[0]=r;let t=0;for(;;){let r=t*2+1,i=r+1;if(r>=n.length)break;let a=r;if(i<n.length&&e.firstSeen.get(n[i])<e.firstSeen.get(n[r])&&(a=i),e.firstSeen.get(n[t])<=e.firstSeen.get(n[a]))break;[n[t],n[a]]=[n[a],n[t]],t=a}}return t};for(let n of e.identities.keys())t.get(n)===0&&r(n);let a=[];for(;n.length>0;){let n=i();a.push(n);for(let i of e.edges.get(n)??[]){let e=t.get(i)-1;t.set(i,e),e===0&&r(i)}}if(a.length!==e.identities.size)throw Error(`Adjacent table symbolic boundary ordering cycle at ${e.position}`);for(let t of a){let{boundary:n,count:r}=e.identities.get(t);_.set(t,g.length);for(let e=0;e<r;e+=1)g.push(n)}}let v=g.slice(1).map((e,t)=>{let n=g[t];return e.sym===n.sym?RD(e.position,n.position):null}),y=g.slice(1).map((e,t)=>FD(RD(e.position,g[t].position))),b=(e,t)=>{let n=new Map,r=Array(e.length);return e.forEach((e,i)=>{let a=n.get(e.identity)??0;n.set(e.identity,a+1);let o=_.get(e.identity),s=d.get(e.identity).count;r[i]=t?o+(s-1-a):o+a}),r},x=0,S=u.map(e=>{let{input:t,row:n,groupBoundaries:i,descending:a}=e,o=b(i,a),s=o[0],c=o[i.length-1],l=n.cells.map(e=>{let n=o[e.columnStart],i=o[e.columnStart+e.columnSpan];if(n==null||i==null)throw RangeError(`Table cell ${e.id} exceeds its authored grid`);let a=Math.min(n,i),s=Math.max(n,i);if(s<=a)throw Error(`Table cell ${e.id} cannot be mapped into the logical group grid`);let c=dk(e.borders,t.bidiVisual,r);return Object.freeze({...e,columnStart:a,columnSpan:s-a,borders:c})});return Object.freeze({...n,logicalRowIndex:x++,exceptionBorders:null,sourceTableEdges:fk(t,n,r),indentPt:t.bidiVisual===r?n.indentPt:-n.indentPt,sourceOuterColumnStart:Math.min(s,c),sourceOuterColumnEnd:Math.max(s,c),cells:Object.freeze(l)})});return i.nodes.length,Object.freeze({kind:`adjacent-table-group-grid`,id:e,source:n.source,flowDomainId:`${n.flowDomainId}:adjacent-group:${e}`,alignment:n.alignment,indentPt:n.indentPt,bidiVisual:r,columnWidthsPt:Object.freeze(y),columnWidthKeys:Object.freeze(v),rows:Object.freeze(S)})}const Sk=1e-4;function Ck(){return Object.freeze({blockIndex:0,paragraphLineStart:0,nestedCursor:null,nestedFragmentIndex:0})}function wk(){return Object.freeze({rowIndex:0,rowFragmentIndex:0,cells:Object.freeze([])})}function Tk(e){let t=0;for(;e.rows[t]?.repeatedHeader===!0;)t+=1;return t}function Ek(e,t){let n=e.layout.rows[t];return n?e.input.rows[t]?.heightRule===`exact`?Math.max(0,n.heightPt):Math.max(0,n.heightPt,n.contentHeightPt):0}function Dk(e,t,n,r){let i=e.layout.rows.flatMap(e=>e.cells).find(e=>e.id===t.id);if(!i)throw new Y(`INVALID_REFERENCE`,`nested table fragment lost parent cell geometry: ${t.id}`);let a=Object.freeze({xPt:0,yPt:0,widthPt:i.contentBounds.widthPt,heightPt:Math.max(0,r)});return Object.freeze({...n,availableHeightPt:a.heightPt,placement:Object.freeze({...n.placement,container:Object.freeze({...n.placement.container,bounds:a}),cursor:Object.freeze({xPt:0,yPt:0}),availableBounds:a})})}function Ok(e,t,n,r){if(t===e.input.rows[n])return Ek(e,n);let i=ik({...e.input,id:`${e.input.id}:row-occurrence:${r.page.occurrenceId}:${t.logicalRowIndex}`,rows:[t]},r.placement,r.services).layout;return Math.max(0,i.rows[0]?.heightPt??i.advancePt)}function kk(e,t,n,r){return t===e.input.rows[n]?Math.max(0,e.layout.rows[n]?.heightPt??0):Ok(e,t,n,r)}function Ak(e,t,n,r){let i=ik({...e.input,id:`${e.input.id}:completed-partial:${r.page.occurrenceId}:${t.logicalRowIndex}`,rows:[t,...e.input.rows.slice(n+1)]},r.placement,r.services).layout;return Math.max(0,i.rows[0]?.heightPt??0)}function jk(e){return e.cells.map(e=>e.blocks.map(e=>({kind:`whole`,blockIndex:e.sourceBlockIndex})))}function Mk(e,t,n,r){let i=r.reacquirePageDependentBlock;return!i||!t.cells.some(e=>e.blocks.some(e=>e.pageDependent===!0))?t:{...t,cells:t.cells.map((e,a)=>({...e,blocks:e.blocks.map(e=>e.pageDependent===!0?{...e,layout:i({logicalRowIndex:t.logicalRowIndex,logicalCellIndex:a,sourceBlockIndex:e.sourceBlockIndex,ownership:n,page:r.page,acquired:e.layout})}:e)}))}}function Nk(e){let t=e.positioning.horzSpecified&&(e.positioning.horzAnchor===`page`||e.positioning.horzAnchor===`margin`),n=e.positioning.vertAnchor===`page`||e.positioning.vertAnchor===`margin`;return t||n}function Pk(e,t,n,r,i){return{...t,heightPt:null,heightRule:`auto`,cells:t.cells.map((t,a)=>{let o=n.cells[a]??Ck();return{...t,blocks:t.blocks.slice(o.blockIndex).map((n,a)=>{if(a===0&&o.nestedCursor&&n.layout.kind===`table`){let a=e.nestedById[n.layout.id];if(a){let s=Kk(a,o.nestedCursor,Dk(e,t,r,r.freshPageHeightPt)),c=i.get(t.id);if(s.nextCursor&&c!==void 0&&n.sourceBlockIndex<c)throw Error(`Floating table anchor cannot follow an incomplete nested-table candidate`);if(s.fragment)return{...n,layout:s.fragment}}}return a!==0||o.paragraphLineStart===0||n.layout.kind!==`paragraph`?n:{...n,layout:Vk(n.layout,o.paragraphLineStart,n.layout.lines.length)}})}})}}function Fk(e,t,n,r,i,a,o,s,c){let l=i.floatingTableFrames,u=i.reacquirePageDependentBlock,d=e.input.rows[t.logicalRowIndex];if(!l||!u||!d)return{row:t,resolved:[],registry:a,nextParagraphId:o};let f=e.floatingTables.filter(e=>d.cells.some(t=>t.id===e.hostCellId)&&c(e));if(f.length===0)return{row:t,resolved:[],registry:a,nextParagraphId:o};let p=new Map;for(let e of f)p.set(e.hostCellId,Math.min(p.get(e.hostCellId)??1/0,e.anchorBlockIndex));let m={...i.placement,cursor:{...i.placement.cursor,yPt:i.placement.cursor.yPt+r}},h=Pk(e,t,s,i,p),g=ik({...e.input,id:`${e.input.id}:float-probe:${i.page.occurrenceId}:${t.logicalRowIndex}`,rows:[h]},m,i.services).layout,_=i.finalPlacementTranslationPt??{xPt:0,yPt:0},v=(t,r,a)=>{let o=a.cells.findIndex(e=>e.id===t.hostCellId),s=r.rows[0]?.cells[o],c=a.cells[o]?.blocks.findIndex(e=>e.sourceBlockIndex===t.anchorBlockIndex)??-1,l=c<0?void 0:s?.blocks[c],u=e.nestedById[t.tableId]?.layout;return!s||!l||!u?null:Object.freeze({kind:`floating-table-placement`,occurrenceId:[i.page.occurrenceId,t.hostCellId,t.sourceBlockIndex,t.tableId].join(`:`),ownership:n,physicalPageIndex:i.page.physicalPageIndex,displayPageNumber:i.page.displayPageNumber,...t,columnBounds:Object.freeze({xPt:s.contentBounds.xPt+_.xPt,yPt:s.contentBounds.yPt+_.yPt,widthPt:s.contentBounds.widthPt,heightPt:s.contentBounds.heightPt}),anchorBounds:Object.freeze({xPt:s.contentBounds.xPt+_.xPt,yPt:s.flowBounds.yPt+l.offsetPt+_.yPt,widthPt:l.layout.flowBounds.widthPt,heightPt:l.layout.flowBounds.heightPt}),child:u})},y=n=>{let r=Pk(e,n,s,i,p),c=n===t?g:ik({...e.input,id:`${e.input.id}:float-converge:${i.page.occurrenceId}:${t.logicalRowIndex}`,rows:[r]},m,i.services).layout,u=aD(a,o,i.floatingTableRegistry?.coordinateSpace??`logical-page-points`,i.floatingTableRegistry?.flowDomainId??e.input.flowDomainId),d=[];for(let e of f){let t=v(e,c,r);if(!t||i.floatingTableRegistry?.coordinateSpace!==`upright-physical-page-points`&&!Nk(t))continue;let n=oD(t,{page:l.page,margin:l.margin,text:{xPt:t.columnBounds?.xPt??t.anchorBounds.xPt,yPt:t.anchorBounds.yPt,widthPt:t.columnBounds?.widthPt??t.anchorBounds.widthPt,heightPt:t.anchorBounds.heightPt}},u);d.push(n.placement),u=n.transaction}return{resolved:Object.freeze(d),transaction:u}},b=e=>({...t,cells:t.cells.map((r,a)=>({...r,blocks:r.blocks.map(o=>{let s=e.filter(e=>e.source.hostCellId===r.id&&e.source.anchorBlockIndex===o.sourceBlockIndex).map(e=>Object.freeze({xPt:e.exclusionBounds.xPt-e.source.anchorBounds.xPt,yPt:e.exclusionBounds.yPt-e.source.anchorBounds.yPt,widthPt:e.exclusionBounds.widthPt,heightPt:e.exclusionBounds.heightPt}));return s.length===0||o.layout.kind!==`paragraph`?o:{...o,layout:u({logicalRowIndex:t.logicalRowIndex,logicalCellIndex:a,sourceBlockIndex:o.sourceBlockIndex,ownership:n,page:i.page,acquired:o.layout,floatingTableExclusions:Object.freeze(s)})}})}))}),x=(e,t)=>JSON.stringify({blocks:e.cells.map(e=>e.blocks.map(e=>({sourceBlockIndex:e.sourceBlockIndex,layout:e.layout}))),placements:t}),S=y(t);if(S.resolved.length===0)return{row:t,resolved:[],registry:a,nextParagraphId:o};try{let e=Am({seedState:x(t,S.resolved),step:e=>{let t=b(e?.resolution.resolved??S.resolved),n=y(t);return Object.freeze({candidate:t,resolution:n,state:x(t,n.resolved)})},stateOf:e=>e.state,limit:16}).value;return{row:e.candidate,resolved:e.resolution.resolved,registry:Object.freeze([...e.resolution.transaction.base,...e.resolution.transaction.delta]),nextParagraphId:e.resolution.transaction.nextParagraphId}}catch(e){throw e instanceof km?new Y(`NON_CONVERGENCE`,`floating table final-frame reflow did not converge (${e.reason}; ${e.states.length} states)`):e}}function Ik(e,t,n){let r=e.input.rows[t.logicalRowIndex]?.cells.findIndex(e=>e.id===n.hostCellId)??-1;return r>=0&&(t.ranges[r]?.some(e=>e.blockIndex===n.anchorBlockIndex&&(e.kind===`whole`||e.kind===`paragraph`&&e.lineStart===0||e.kind===`nested-table`&&e.childFragmentIndex===0))??!1)}function Lk(e){return`${e.hostCellId}:${e.sourceBlockIndex}:${e.tableId}`}function Rk(e,t){return new Set(e.floatingTables.filter(n=>Ik(e,t,n)).map(Lk))}function zk(e,t){return e.size===t.size&&[...e].every(e=>t.has(e))}function Bk(e,t,n=0,r=!1,i=[]){return{input:e,logicalRowIndex:e.logicalRowIndex,fragmentIndex:n,ownership:t,ranges:jk(e),...r?{clipAtPageEnd:!0}:{},...i.length?{resolvedFloatingTables:i}:{}}}function Vk(e,t,n){return CT(e,{lineStart:t,lineEnd:n,continuesFromPrevious:t>0,continuesOnNext:n<e.lines.length})}function Hk(e,t,n,r,i){let a=null,o=n;for(let s=n+1;s<=e.lines.length;s+=1){let c=Vk(e,n,s),l={layout:c,sourceBlockIndex:t};if(MO([...r,l])>i+Sk)break;a=c,o=s}return a?{block:{layout:a,sourceBlockIndex:t},range:{kind:`paragraph`,blockIndex:t,lineStart:n,lineEnd:o},lineEnd:o,advancePt:a.advancePt}:{block:null,range:null,lineEnd:n,advancePt:0}}function Uk(e,t,n,r,i){if(t.verticalMerge===`continue`)return{input:t,range:[],next:n,complete:!0};let a=[],o=[],s=n.blockIndex,c=n.paragraphLineStart,l=n.nestedCursor,u=n.nestedFragmentIndex;for(;s<t.blocks.length;){let n=t.blocks[s],d=n.layout;if(d.kind===`paragraph`){if(n.structuralTrailing){a.push(n),o.push({kind:`whole`,blockIndex:n.sourceBlockIndex}),s+=1,c=0;continue}if(d.lines.length===0){if(MO([...a,n])>r+Sk)break;a.push(n),o.push({kind:`whole`,blockIndex:n.sourceBlockIndex}),s+=1,c=0;continue}let e=Hk(d,n.sourceBlockIndex,c,a,r);if(!e.block||!e.range)break;if(a.push({...e.block,...n.structuralTrailing?{structuralTrailing:!0}:{}}),o.push(e.range),e.lineEnd<d.lines.length){c=e.lineEnd;break}s+=1,c=0;continue}let f=e.nestedById[d.id];if(f){let c=Math.max(0,r-MO(a)),d=Kk(f,l??wk(),Dk(e,t,i,c));if(!d.fragment)break;if(a.push({layout:d.fragment,sourceBlockIndex:n.sourceBlockIndex}),o.push({kind:`nested-table`,blockIndex:n.sourceBlockIndex,childFragmentIndex:u}),d.nextCursor){l=d.nextCursor,u+=1;break}s+=1,l=null,u=0;continue}if(MO([...a,n])>r+Sk)break;a.push(n),o.push({kind:`whole`,blockIndex:n.sourceBlockIndex}),s+=1}let d=s>=t.blocks.length;return{input:{...t,blocks:a},range:o,next:Object.freeze({blockIndex:s,paragraphLineStart:c,nestedCursor:l,nestedFragmentIndex:u}),complete:d}}function Wk(e,t,n,r,i){let a=t.cells.map((e,t)=>n.cells[t]??Ck()),o=Math.max(0,...t.cells.map(e=>e.margins.topPt+e.margins.bottomPt)),s=Math.max(0,t.cellSpacingPt)*2,c={...t,heightPt:null,heightRule:`auto`},l=JO({...e.input,rows:[c]})[0]??0,u=Math.max(0,r-o-s-l),d=t.cells.map((t,n)=>Uk(e,t,a[n],u,i));if(!d.some((e,t)=>e.next.blockIndex!==a[t]?.blockIndex||e.next.paragraphLineStart!==a[t]?.paragraphLineStart||e.next.nestedFragmentIndex!==a[t]?.nestedFragmentIndex))return{selected:null,next:n,complete:!1};let f=d.every(e=>e.complete);return f&&n.rowFragmentIndex===0?{selected:Bk(t,`source`),next:Object.freeze({rowIndex:n.rowIndex+1,rowFragmentIndex:0,cells:Object.freeze([])}),complete:!0}:{selected:{input:{...c,id:`${t.id}:fragment:${n.rowFragmentIndex}`,heightPt:null,heightRule:`auto`,cells:d.map((e,t)=>({...e.input,id:`${e.input.id}:fragment:${n.rowFragmentIndex}:${t}`}))},logicalRowIndex:t.logicalRowIndex,fragmentIndex:n.rowFragmentIndex,ownership:`source`,ranges:d.map(e=>e.range)},next:Object.freeze({rowIndex:f?n.rowIndex+1:n.rowIndex,rowFragmentIndex:f?0:n.rowFragmentIndex+1,cells:Object.freeze(f?[]:d.map(e=>e.next))}),complete:f}}function Gk(e,t,n){let r=ik({...e.input,id:`${e.input.id}:fragment:${n.page.occurrenceId}`,rows:t.map(e=>e.input)},n.placement,n.services).layout,i=r.rows.map((e,r)=>{let i=t[r];return Object.freeze({...e,logicalRowIndex:i.logicalRowIndex,fragmentIndex:i.fragmentIndex,ownership:i.ownership,occurrenceId:n.page.occurrenceId,physicalPageIndex:n.page.physicalPageIndex,displayPageNumber:n.page.displayPageNumber,cells:Object.freeze(e.cells.map((e,n)=>{let a=i.input.cells[n]?.verticalMerge??`none`,o=i.input.cells[n],s=a===`continue`&&t.slice(0,r).some(e=>e.input.cells.some(e=>e.verticalMerge===`restart`&&e.columnStart===o?.columnStart&&e.columnSpan===o?.columnSpan));return Object.freeze({...e,contentRanges:Object.freeze([...i.ranges[n]??[]]),...a===`continue`&&!s?{visualMergeOwnership:`continuation`}:{}})}))})}),a=t.flatMap((t,r)=>{let a=e.input.rows[t.logicalRowIndex];return a?e.floatingTables.flatMap(o=>{let s=a.cells.findIndex(e=>e.id===o.hostCellId);if(s<0||!(t.ranges[s]?.some(e=>e.blockIndex===o.anchorBlockIndex&&(e.kind===`whole`||e.kind===`paragraph`&&e.lineStart===0))??!1))return[];let c=t.input.cells[s],l=i[r]?.cells[s],u=c?.blocks.findIndex(e=>e.sourceBlockIndex===o.anchorBlockIndex)??-1,d=u<0?void 0:l?.blocks[u],f=e.nestedById[o.tableId]?.layout;if(!l||!d||!f)throw Error(`Floating table occurrence references missing retained layout data`);let p=Object.freeze({xPt:l.contentBounds.xPt,yPt:l.flowBounds.yPt+d.offsetPt,widthPt:d.layout.flowBounds.widthPt,heightPt:d.layout.flowBounds.heightPt});return[Object.freeze({kind:`floating-table-placement`,occurrenceId:[n.page.occurrenceId,o.hostCellId,o.sourceBlockIndex,o.tableId].join(`:`),ownership:t.ownership,physicalPageIndex:n.page.physicalPageIndex,displayPageNumber:n.page.displayPageNumber,...o,anchorBounds:p,child:f})]}):[]}),o=Object.freeze(t.flatMap(e=>e.resolvedFloatingTables??[])),s=new Set(o.map(e=>e.occurrenceId)),c=t.some(e=>e.clipAtPageEnd===!0),l=c?Math.min(r.advancePt,n.availableHeightPt):r.advancePt,u=c?{...r.flowBounds,heightPt:l}:r.flowBounds;return Object.freeze({...r,flowBounds:u,...c?{inkBounds:u,clipBounds:u,advancePt:l}:{},columnWidthsPt:e.layout.columnWidthsPt,rows:Object.freeze(i),floatingTables:Object.freeze(a.filter(e=>!s.has(e.occurrenceId))),resolvedFloatingTables:o,...n.floatingTableRegistry?{resolvedFloatingTableCoordinateSpace:n.floatingTableRegistry.coordinateSpace}:{}})}function Kk(e,t,n){if(t.rowIndex>=e.input.rows.length)return{fragment:null,nextCursor:null,requiresFreshPage:!1};let r=[],i=n.floatingTableRegistry;if(i&&i.flowDomainId.length===0)throw Error(`Floating table registry coordinate/domain mismatch`);let a=Object.freeze([...i?.entries??[]]),o=i?.nextParagraphId??0,s=Math.max(0,n.availableHeightPt),c=Tk(e.input);if(t.rowIndex>=c&&t.rowIndex>0&&c>0)for(let i=0;i<c;i+=1){let c=Fk(e,Mk(e,e.input.rows[i],`repeated-header`,n),`repeated-header`,n.availableHeightPt-s,n,a,o,wk(),()=>!0),l=c.row,u=Ok(e,l,i,n);if(u>s+Sk)return{fragment:null,nextCursor:t,requiresFreshPage:!0};r.push(Bk(l,`repeated-header`,0,!1,c.resolved)),a=c.registry,o=c.nextParagraphId,s-=u}let l=t,u=t.rowIndex,d=t.rowFragmentIndex===0&&t.cells.length===0&&e.layout.rows.slice(t.rowIndex).reduce((e,t)=>e+Math.max(0,t.heightPt),0)<=s+Sk,f=!1;for(;u<e.input.rows.length;){let i=`source`,c=Mk(e,e.input.rows[u],i,n),p=u===t.rowIndex?t:Object.freeze({rowIndex:u,rowFragmentIndex:0,cells:Object.freeze([])}),m=u!==t.rowIndex||t.rowFragmentIndex===0,h=m?Fk(e,c,i,n.availableHeightPt-s,n,a,o,p,e=>{let t=c.cells.findIndex(t=>t.id===e.hostCellId),n=c.cells[t]?.blocks.findIndex(t=>t.sourceBlockIndex===e.anchorBlockIndex)??-1;if(n<0)return!1;let r=p.cells[t]??Ck();return r.blockIndex<n||r.blockIndex===n&&r.paragraphLineStart===0}):{row:c,resolved:Object.freeze([]),registry:a,nextParagraphId:o},g=h.row,_=d||f?kk(e,g,u,n):Ok(e,g,u,n);if(m&&_<=s+Sk){r.push(Bk(g,`source`,0,!1,h.resolved)),a=h.registry,o=h.nextParagraphId,s-=_,u+=1,l=u<e.input.rows.length?Object.freeze({rowIndex:u,rowFragmentIndex:0,cells:Object.freeze([])}):null;continue}if(g.cantSplit){if(r.some(e=>e.ownership===`source`))break;if(_+(n.availableHeightPt-s)<=n.freshPageHeightPt+Sk||n.availableHeightPt+Sk<n.freshPageHeightPt)return{fragment:null,nextCursor:t,requiresFreshPage:!0};if(gO({compatibility:n.compatibility,availableHeightPt:n.availableHeightPt,freshPageHeightPt:n.freshPageHeightPt,epsilonPt:Sk})){r.push(Bk(g,`source`,0,!0,h.resolved)),a=h.registry,o=h.nextParagraphId,l=u+1<e.input.rows.length?Object.freeze({rowIndex:u+1,rowFragmentIndex:0,cells:Object.freeze([])}):null;break}}if(n.oversizedRowPolicy===`atomic`&&r.every(e=>e.ownership===`repeated-header`)&&n.availableHeightPt+Sk>=n.freshPageHeightPt&&_>n.freshPageHeightPt+Sk){r.push(Bk(g,`source`,0,!1,h.resolved)),a=h.registry,o=h.nextParagraphId,l=u+1<e.input.rows.length?Object.freeze({rowIndex:u+1,rowFragmentIndex:0,cells:Object.freeze([])}):null;break}let v=Wk(e,c,p,s,n),y=null,b=new Set;for(;v.selected;){let t=Rk(e,v.selected),r=JSON.stringify([...t].sort());if(b.has(r))throw Error(`Floating table selected ownership did not converge`);b.add(r),y=Fk(e,c,i,n.availableHeightPt-s,n,a,o,p,e=>t.has(Lk(e)));let l=Wk(e,y.row,p,s,n);if(!l.selected){v=l;break}let u=Rk(e,l.selected);if(v=l,zk(t,u))break;y=null}if(v.selected&&y===null)throw Error(`Floating table selected ownership did not converge`);if(v.selected){let t=y?.resolved??[];if(t.some(t=>!Ik(e,v.selected,t.source)))throw Error(`Floating table transaction included an unowned occurrence`);let i=a.length,c=(y?.registry??a).slice(i);if(r.push({...v.selected,...t.length?{resolvedFloatingTables:Object.freeze(t)}:{}}),a=Object.freeze([...a,...c]),o+=c.length,l=v.next.rowIndex>=e.input.rows.length?null:v.next,v.complete&&v.next.rowIndex<e.input.rows.length){s=Math.max(0,s-Ak(e,v.selected.input,u,n)),f=!0,u=v.next.rowIndex;continue}}break}if(r.filter(e=>e.ownership===`source`).length===0){if(!(n.availableHeightPt+Sk<n.freshPageHeightPt))throw new Y(`NON_CONVERGENCE`,`Table pagination cannot advance from a fresh page`);return{fragment:null,nextCursor:t,requiresFreshPage:!0}}let p=Gk(e,r,n);for(;p.advancePt>n.availableHeightPt+Sk;){let t=r.at(-1),i=r.filter(e=>e.ownership===`source`).length;if(!(t?.ownership===`source`&&t.fragmentIndex===0&&t.ranges.every(e=>e.every(e=>e.kind===`whole`)))||i<=1)break;r.pop(),l=Object.freeze({rowIndex:t.logicalRowIndex,rowFragmentIndex:0,cells:Object.freeze([])}),p=Gk(e,r,n)}return p.advancePt>n.availableHeightPt+Sk&&n.availableHeightPt+Sk<n.freshPageHeightPt&&p.advancePt<=n.freshPageHeightPt+Sk?{fragment:null,nextCursor:t,requiresFreshPage:!0}:{fragment:p,nextCursor:l,requiresFreshPage:!1,floatingTablePlacements:p.resolvedFloatingTables,...i?{floatingTableRegistryDelta:(()=>{let e=a.slice(i.entries.length).filter(e=>p.resolvedFloatingTables.some(t=>t.occurrenceId===e.occurrenceId));return rD(i,e,i.nextParagraphId+e.length)})()}:{}}}function qk(e,t,n,r){let i=AC(e,n.flowDomainId),a=cT(t,{...n,exclusions:Object.freeze([...n.exclusions,...i.exclusions,...r?.exclusions??[]]),anchorCollisions:Object.freeze([...n.anchorCollisions??[],...i.collisions,...r?.collisions??[]])});return jC(e,i,a.layout),a}function Jk(e,t){return e.flatMap((e,n)=>e.kind===`shape`&&e.anchorOccurrenceId&&e.authoredWrap===void 0?[]:[{id:e.imageKey||`${t}:float:${n}`,wrap:e.authoredWrap??(e.mode===`topAndBottom`?`topAndBottom`:`square`),wrapSide:Qp(e.side),bounds:{xPt:e.xLeft,yPt:e.yTop,widthPt:Math.max(0,e.xRight-e.xLeft),heightPt:Math.max(0,e.yBottom-e.yTop)},polygon:e.wrapPolygon??[{xPt:e.xLeft,yPt:e.yTop},{xPt:e.xRight,yPt:e.yTop},{xPt:e.xRight,yPt:e.yBottom},{xPt:e.xLeft,yPt:e.yBottom}],...e.kind===`table`&&!e.anchorOccurrenceId?{verticalOwnership:`page`}:{},...e.anchorOccurrenceId?{anchorOccurrenceId:e.anchorOccurrenceId,verticalOwnership:`page`}:{}}])}function Yk(e){return e.flatMap(e=>e.kind!==`shape`||!e.anchorOccurrenceId?[]:[{occurrenceId:e.anchorOccurrenceId,bounds:{xPt:e.imageX,yPt:e.imageY,widthPt:e.imageW,heightPt:e.imageH},horizontalOwnership:`page`,verticalOwnership:`page`}])}function Xk(e){if(e.occurrenceId.length===0)throw Error(`DrawingML collision occurrence ID must not be empty`);let{xPt:t,yPt:n,widthPt:r,heightPt:i}=e.bounds;if(![t,n,r,i].every(Number.isFinite)||r<0||i<0)throw Error(`DrawingML collision bounds are invalid: ${e.occurrenceId}`);if(e.horizontalOwnership!==`page`&&e.horizontalOwnership!==`host`||e.verticalOwnership!==`page`&&e.verticalOwnership!==`host`)throw Error(`DrawingML collision ownership is invalid: ${e.occurrenceId}`)}function Zk(e){return Xk(e),Object.freeze({occurrenceId:e.occurrenceId,bounds:Object.freeze({...e.bounds}),horizontalOwnership:e.horizontalOwnership,verticalOwnership:e.verticalOwnership,...e.relativeHeight===void 0?{}:{relativeHeight:e.relativeHeight}})}function Qk(e,t){return Object.freeze({coordinateSpace:t,flowDomainId:e,entries:Object.freeze([])})}function $k(e,t){return Object.freeze({coordinateSpace:e.coordinateSpace,flowDomainId:e.flowDomainId,baseEntries:e.entries,baseEntryCount:e.entries.length,entries:Object.freeze(t.map(Zk))})}function eA(e,t){if(t.coordinateSpace!==e.coordinateSpace)throw Error(`DrawingML collision registry coordinate space mismatch`);if(t.flowDomainId!==e.flowDomainId)throw Error(`DrawingML collision registry flow domain mismatch`);if(t.baseEntries!==e.entries||t.baseEntryCount!==e.entries.length)throw Error(`DrawingML collision registry delta is stale`);let n=new Set(e.entries.map(e=>e.occurrenceId));for(let e of t.entries){if(Xk(e),n.has(e.occurrenceId))throw Error(`DrawingML collision occurrence committed twice: ${e.occurrenceId}`);n.add(e.occurrenceId)}}function tA(e,t){return eA(e,t),Object.freeze({coordinateSpace:e.coordinateSpace,flowDomainId:e.flowDomainId,entries:Object.freeze([...e.entries,...t.entries])})}function nA(e,t){return JS(e,t)}function rA(e){return $p(e.wrapMode)&&nA(e.anchorYRelativeFrom??null,e.anchorYFromPara??!1)}function iA(e){let t=Lc(e);return t===`U`||t===`Tu`?`upright`:t===`Tr`?`rotate`:`sideways`}const aA=new Set([65294]);function oA(e){return aA.has(e)?{dx:.4,dy:-.4}:{dx:0,dy:0}}function sA(e){let t=[],n=``,r=null;for(let i of e){let e=iA(i.codePointAt(0)??0);r===null?(r=e,n=i):e===r?n+=i:(t.push({text:n,mode:r}),n=i,r=e)}return n!==``&&r!==null&&t.push({text:n,mode:r}),t}const cA=()=>!1;function lA(e,t,n){let r=e.textBaseline;e.textBaseline=`alphabetic`;let i=e.measureText(t);e.textBaseline=r;let a=i.fontBoundingBoxAscent,o=i.fontBoundingBoxDescent;return typeof a==`number`&&typeof o==`number`&&(a!==0||o!==0)?(a-o)/2:.38*n}function uA(e,t){let n=e.textAlign,r=e.textBaseline;e.textAlign=`center`,e.textBaseline=`middle`;let i=e.measureText(t);e.textAlign=n,e.textBaseline=r;let a=i.actualBoundingBoxAscent,o=i.actualBoundingBoxDescent;return typeof a==`number`&&typeof o==`number`?(a-o)/2:0}function dA(e){return iA(e)===`rotate`&&Bc(e)===null&&!Uc(e)}function fA(e){let t=Lc(e);return t===`Tu`||t===`Tr`}function pA(e,t){let n=e.textAlign,r=e.textBaseline;e.textAlign=`center`,e.textBaseline=`middle`;let i=e.measureText(t);e.textAlign=n,e.textBaseline=r;let a=i.actualBoundingBoxLeft,o=i.actualBoundingBoxRight;return typeof a!=`number`||typeof o!=`number`||!Number.isFinite(a)||!Number.isFinite(o)?null:{extentPx:a+o,shiftPx:(a-o)/2}}function mA(e,t,n,r,i,a,o){let s=e.textAlign,c=e.textBaseline,l=()=>(e.textAlign=n===`sideways`?`left`:`center`,e.textBaseline=n===`sideways`?`alphabetic`:`middle`,e.measureText(t)),u;try{u=o?rl(e,l):l()}finally{e.textAlign=s,e.textBaseline=c}if(n===`upright`){if(!Number.isFinite(u.actualBoundingBoxLeft)||!Number.isFinite(u.actualBoundingBoxRight))return;let e=u.actualBoundingBoxLeft,t=u.actualBoundingBoxRight,n=a===`vertical-rl`?1:i,o=-(r.xPt-e)*n,s=-(r.xPt+t)*n;return Object.freeze({startPt:Math.min(o,s),endPt:Math.max(o,s)})}if(!Number.isFinite(u.actualBoundingBoxAscent)||!Number.isFinite(u.actualBoundingBoxDescent))return;let d=u.actualBoundingBoxAscent,f=u.actualBoundingBoxDescent,p=r.yPt-d,m=r.yPt+f;return Object.freeze({startPt:Math.min(p,m),endPt:Math.max(p,m)})}function hA(e,t,n,r,i){let a=e.measureText(t).width;if(fA(n)&&r(n)){let n=il(e,t);return{naturalPx:n.cellAdvancePx,vert:n,rotateInkShiftPx:0}}if(i&&dA(n)){let n=pA(e,t);if(n!==null&&n.extentPx>a)return{naturalPx:n.extentPx,vert:null,rotateInkShiftPx:n.shiftPx}}return{naturalPx:a,vert:null,rotateInkShiftPx:0}}function gA(e,t,n,r,i=1,a=!1,o=cA,s=`vertical-rl`){let c=[],l=lA(e,t,n),u=0,d=0;for(let f of sA(t)){if(f.mode===`sideways`){let t=[...f.text].length,n=e.measureText(f.text).width*i+r*t,a={xPt:0,yPt:l},o=mA(e,f.text,`sideways`,a,i,s,!1);c.push({range:{start:d,end:d+f.text.length},text:f.text,orientation:`sideways`,originPt:u,advancePt:n,drawOffsetPt:a,verticalFeature:!1,...o?{blockAxisInkBounds:o}:{}}),u+=n,d+=f.text.length;continue}for(let t of f.text){let l=t.codePointAt(0)??0,f=iA(l),p=f===`rotate`?Bc(l):null,m=f===`rotate`&&p===null&&Uc(l),h=hA(e,t,l,o,a),g=h.naturalPx*i+r,_={start:d,end:d+t.length};if(h.vert!==null){let n={xPt:0,yPt:0},r=mA(e,t,`upright`,n,i,s,!0);c.push({range:_,text:t,orientation:`upright`,originPt:u+h.vert.originInCellPx*i,advancePt:g,drawOffsetPt:n,verticalFeature:!0,...r?{blockAxisInkBounds:r}:{}})}else if(f===`upright`||p!==null||m){let r=p===null?Rc(l):null,a=p??r,o=a===null?t:String.fromCodePoint(a),d=a===null?oA(l):{dx:0,dy:0},f=dh(r),m=d.dy===0&&!f?uA(e,o)/n:0,h={xPt:d.dx*n,yPt:(m+d.dy)*n},v=mA(e,o,`upright`,h,i,s,!1);c.push({range:_,text:o,orientation:`upright`,originPt:u+g/2,advancePt:g,drawOffsetPt:h,verticalFeature:!1,...v?{blockAxisInkBounds:v}:{}})}else{let n={xPt:0,yPt:0},r=mA(e,t,`rotate`,n,i,s,!1);c.push({range:_,text:t,orientation:`rotate`,originPt:u+g/2+i*h.rotateInkShiftPx,advancePt:g,drawOffsetPt:n,verticalFeature:!1,...r?{blockAxisInkBounds:r}:{}})}u+=g,d+=t.length}}return c}function _A(e,t,n){let r=0;for(let i of sA(t)){if(i.mode===`sideways`){r+=e.measureText(i.text).width;continue}for(let t of i.text){let i=hA(e,t,t.codePointAt(0)??0,n,!0);r+=i.naturalPx}}return r-e.measureText(t).width}function vA(e,t){return _A(e,t,t=>nl(e,t))}function yA(e,t,n,r,i){return{x:t,y:i-(e+n),w:r,h:n}}function bA(e,t,n){f_(e.blocks.body);let r=e.acquisition,i=r.acquisitionInputs,a=r.effectiveTablePositioning,o=r.publicAnchorBridge,s=Sh(e.fonts.familyClasses,e.fonts.familyPitches),c=(e,t,n)=>`${e}${t?`|clr:${t}`:``}${n?`|duo:${n.clr1}:${n.clr2}`:``}`;function l(e,t,n={},r,a={},s,c){let l=w_(r,t),u=s;return{ctx:e,verticalGlyphMeasurement:hd(u),acquisitionInputs:i,contentX:t.marginLeft,contentW:t.pageWidth-t.marginLeft-t.marginRight,y:0,pageH:t.pageHeight,pageIndex:0,totalPages:Ed(u).totalPages,marginLeft:t.marginLeft,marginRight:t.marginRight,marginTop:I_(t.marginTop),marginBottom:I_(t.marginBottom),pageWidth:t.pageWidth,floats:[],floatParaSeq:0,layoutSettings:r,sectionLayout:l,storyContext:yD,docEastAsian:r.documentHasEastAsianText,fontFamilyClasses:n,resolvedLocalFonts:a,layoutServices:u,retainedTableAcquisition:{layoutServices:e=>e.layoutServices,tableFormat:i.tableFormatInput,resolveColumns:p,createCellState:(e,t,n)=>({...wD(e),contentX:0,contentW:t,y:0,containerShading:n.background??e.containerShading,floats:[],floatParaSeq:0,pageAnchorPrescanned:new Set}),acquireParagraph:(e,t,n,r,i,a,s,c)=>{let l=c??{story:`body`,storyInstance:`body`,path:[...r]},u=t.runs.filter((e,t)=>o(l,t)!==null);u.length>0&&T({...t,runs:u},e,e.y);let d=CD(e,t),f=qk(e,e.acquisitionInputs.paragraphAcquisitionInput(t,l),{id:`${l.story}:${l.storyInstance}:${l.path.join(`.`)}`,source:l,flowDomainId:i,ordinaryFlow:!0,context:d,placement:{startYPt:e.y,paragraphXPt:0,availableWidthPt:n,maximumYPt:e.pageH,suppressSpaceBefore:!0},measurer:{context:e.ctx,fontFamilyClasses:e.fontFamilyClasses},environment:_D(e),exclusions:Jk(e.floats,i),anchorCollisions:Yk(e.floats),anchorCellBounds:{xPt:0,yPt:0,widthPt:n,heightPt:e.pageH},containerShading:e.containerShading,...a?{paragraphBorderEdges:a}:{},trailingExtentPt:Math.max(d.spaceAfterPt,a?.bottom===`none`?0:e_(t.borders)),continuesFromPrevious:!1,anchorFrames:bD(e),acquireCompleteStory:e.acquireCompleteTextBoxStory},s).layout;return t.spaceBefore===0?f:Object.freeze({...f,flowBounds:Object.freeze({...f.flowBounds,heightPt:f.flowBounds.heightPt+t.spaceBefore}),advancePt:f.advancePt+t.spaceBefore,spacing:Object.freeze({...f.spacing,beforePt:t.spaceBefore})})},registerFloatingTable:(e,t)=>{let n=!t.positioning.horzSpecified||t.positioning.horzAnchor!==`page`&&t.positioning.horzAnchor!==`margin`,r=t.positioning.vertAnchor!==`page`&&t.positioning.vertAnchor!==`margin`;if(!n||!r)return null;let i=e.pageH,a={xPt:e.contentX,yPt:e.y,widthPt:e.contentW,heightPt:t.child.advancePt},o=eD(t.positioning,{page:{xPt:0,yPt:0,widthPt:e.pageWidth,heightPt:i},margin:{xPt:e.marginLeft,yPt:e.marginTop,widthPt:Math.max(0,e.pageWidth-e.marginLeft-e.marginRight),heightPt:Math.max(0,i-e.marginTop-e.marginBottom)},text:a},t.child.columnWidthsPt.reduce((e,t)=>e+t,0),t.child.advancePt),s=JE(e,{x:o.x,y:o.y,w:o.w,h:o.h,dl:t.positioning.leftFromTextPt,dr:t.positioning.rightFromTextPt,dt:t.positioning.topFromTextPt,db:t.positioning.bottomFromTextPt,kind:`table`,mode:`square`,side:`bothSides`,imageKey:``,paraId:e.floatParaSeq++,avoidOverlap:!0,tableOverlap:t.overlap});return Object.freeze({xPt:s.imageX-a.xPt,yPt:s.imageY-a.yPt})},advanceState:(e,t)=>{e.y+=t}},retainedTablesBySourceIndex:new Map,currentDateMs:c?.currentDateMs,kinsoku:r.kinsoku,defaultTabPt:r.defaultTabPt,get verticalCJK(){return fD(this.sectionLayout.textDirection)},get verticalAllRotated(){return fD(this.sectionLayout.textDirection)&&pD(this.sectionLayout.textDirection)},verticalPhys:dD(t)?(()=>{let e=hD(t);return{pageWidth:e.pageWidth,pageHeight:e.pageHeight,marginLeft:e.marginLeft,marginRight:e.marginRight,marginTop:I_(e.marginTop),marginBottom:I_(e.marginBottom),physicalPageWidthPt:e.pageWidth}})():void 0}}function u(e,t,n){let r=e=>{let t=Object.freeze({top:null,right:null,bottom:null,left:null,insideH:null,insideV:null});return Object.freeze({kind:`table`,id:e.id,source:e.source,flowDomainId:e.flowDomainId,ordinaryFlow:!0,alignment:e.alignment,indentPt:e.indentPt,bidiVisual:e.bidiVisual,columnWidthsPt:e.columnWidthsPt,columnWidthKeys:e.columnWidthKeys,borders:t,rows:Object.freeze(e.rows.map(e=>Object.freeze({...e,exceptionBorders:e.sourceTableEdges})))})},i=t=>{if(t.story!==`body`||t.storyInstance!==`body`||t.path.length!==1)throw Error(`Body acquisition requires a top-level body source`);let n=e.blocks.resolve(t);if(!n||n.type!==`paragraph`&&n.type!==`table`)throw Error(`Body source does not identify a flow block: ${t.path.join(`.`)}`);return n},c=t=>e.blocks.resolve(t),u=(e,t,n,r,i,a,o=Object.freeze({boundary:null}),s)=>{let c=m_(t)??{top:`top`,bottom:`bottom`},l=SD(e,t);return cT(t,{id:`${n.story}:${n.storyInstance}:${n.path.join(`.`)}`,source:n,flowDomainId:r.flowDomainId,ordinaryFlow:!0,context:l,placement:{startYPt:e.y,paragraphXPt:r.availableBounds.xPt,availableWidthPt:i,maximumYPt:e.pageH,suppressSpaceBefore:a},measurer:{context:e.ctx,fontFamilyClasses:e.fontFamilyClasses},environment:_D(e),exclusions:Jk(e.floats,r.flowDomainId),anchorCollisions:s??Yk(e.floats),containerShading:e.containerShading,paragraphBorderEdges:c,trailingExtentPt:Math.max(l.spaceAfterPt,c.bottom===`none`?0:e_(t.borders)),continuesFromPrevious:o.boundary!==null,...o.sourceRangeStart===void 0?{}:{sourceRangeStart:o.sourceRangeStart},anchorFrames:bD(e),acquireCompleteStory:e.acquireCompleteTextBoxStory},o.boundary===null?void 0:{boundary:o.boundary,...o.uniformRubyAdvancePt===void 0?{}:{uniformRubyAdvancePt:o.uniformRubyAdvancePt}})};return Object.freeze({openBodyLayoutSession(d,g,_){if(!t)throw Error(`Body layout acquisition requires a measurement context`);let v={...e.section,...d.section.geometry,textDirection:d.section.textDirection,vAlign:d.section.verticalAlignment},y=l(t,fD(v.textDirection)?mD(v):v,s,e.documentLayoutSettings,n,g,_),b=e.blocks.footnotes,x=e.blocks.endnotes,S=DT(b);y.noteNumbers=new Map([...[...ET(b,OT(e.blocks.body,`footnote`))].map(([e,t])=>[`footnote:${e}`,t]),...[...ET(x,OT(e.blocks.body,`endnote`))].map(([e,t])=>[`endnote:${e}`,t])]);let C=d.initialLocation,w=e=>`body:page:${e}:registry`,D=Object.freeze({coordinateSpace:`logical-page-points`,flowDomainId:w(C.pageIndex),entries:Object.freeze([]),nextParagraphId:0}),O=Qk(w(C.pageIndex),`logical-page-points`),k=(e,t)=>{let n=t.section.geometry;e.sectionLayout=t.section,e.pageIndex=t.pageIndex;let r=Ed(g).resolveDestinationPage?.(t.pageIndex);e.displayPageNumber=r?.displayPageNumber??t.pageIndex+1,e.pageNumberFormat=r?.pageNumberFormat??e.pageNumberFormat,e.pageWidth=n.pageWidth,e.pageH=n.pageHeight,e.marginLeft=n.marginLeft,e.marginRight=n.marginRight,e.marginTop=I_(n.marginTop),e.marginBottom=I_(n.marginBottom),e.contentX=t.availableBounds.xPt,e.contentW=t.availableBounds.widthPt,e.y=t.cursorPt.yPt},A=e=>{C=e,k(y,e)};A(C);let j=(e,t,n,r,i=D.nextParagraphId)=>{let a=new Set(D.entries.map(e=>e.occurrenceId)),s=e.runs.flatMap((i,s)=>{if(i.type!==`shape`&&i.type!==`image`&&i.type!==`chart`)return[];let c=o(t,s);return!c||r&&!r.has(c.occurrenceId)||a.has(c.occurrenceId)||c.pageOwned&&n.pageAnchorPrescanned?.has(e)?[]:[{run:i,occurrenceId:c.occurrenceId}]});if(s.length===0)return Object.freeze([]);let c=n.floats.length;T({...e,runs:s.map(({run:e})=>e)},n,n.y);let l=n.floats.slice(c);if(l.length!==s.length)throw Error(`Public paragraph anchor acquisition did not retain every wrap float`);return Object.freeze(l.map((e,t)=>{let n=s[t].occurrenceId;return Object.freeze({kind:`shape`,occurrenceId:n,exclusionId:n,paragraphId:i,bounds:Object.freeze({xPt:e.imageX,yPt:e.imageY,widthPt:e.imageW,heightPt:e.imageH}),exclusionBounds:Object.freeze({xPt:e.xLeft,yPt:e.yTop,widthPt:e.xRight-e.xLeft,heightPt:e.yBottom-e.yTop}),wrap:s[t].run.wrapMode,wrapSide:e.side,wrapDistances:Object.freeze({topPt:e.distTop,rightPt:e.distRight,bottomPt:e.distBottom,leftPt:e.distLeft}),...e.wrapPolygon?{wrapPolygon:Object.freeze([...e.wrapPolygon])}:{}})}))},M=e=>{let t=new Map((e.anchorFrames??[]).flatMap(e=>{if(e.status!==`resolved`)return[];let t=e=>e.status===`resolved`&&(e.referenceFrame===`paragraph`||e.referenceFrame===`line`||e.referenceFrame===`character`);return t(e.axes.horizontal)||t(e.axes.vertical)?[[e.occurrenceId,e]]:[]}));if(t.size===0)return Object.freeze([]);let n=new Map(e.exclusions.flatMap(e=>e.anchorOccurrenceId?[[e.anchorOccurrenceId,e]]:[]));return Object.freeze((e.anchorCollisions??[]).flatMap(e=>{let r=t.get(e.occurrenceId);if(!r||r.geometry.wrap.kind===`none`)return[];let i=n.get(e.occurrenceId);if(!i)throw Error(`Wrapped anchor omitted exclusion geometry: ${e.occurrenceId}`);return[Object.freeze({kind:`shape`,occurrenceId:e.occurrenceId,exclusionId:e.occurrenceId,paragraphId:D.nextParagraphId,bounds:e.bounds,exclusionBounds:i.bounds,horizontalOwnership:e.horizontalOwnership,verticalOwnership:e.verticalOwnership,wrap:r.geometry.wrap.kind,wrapSide:r.geometry.wrap.side,wrapDistances:r.geometry.wrap.distances,...r.geometry.wrap.polygon?{wrapPolygon:r.geometry.wrap.polygon.points}:{}})]}))},N=e=>{if(e.acquired.kind!==`paragraph`)return e.acquired;let t=c(e.acquired.source);if(t.type!==`paragraph`)throw Error(`Table paragraph re-acquisition source kind mismatch`);let n={...wD(y),contentX:0,contentW:e.acquired.flowBounds.widthPt,y:e.acquired.flowBounds.yPt,floats:(e.floatingTableExclusions??[]).map((e,t)=>({kind:`table`,tableOverlap:`never`,mode:`square`,imageKey:`table-final-frame:${t}`,imageX:e.xPt,imageY:e.yPt,imageW:e.widthPt,imageH:e.heightPt,xLeft:e.xPt,xRight:e.xPt+e.widthPt,yTop:e.yPt,yBottom:e.yPt+e.heightPt,side:`bothSides`,distLeft:0,distRight:0,distTop:0,distBottom:0,paraId:t})),floatParaSeq:e.floatingTableExclusions?.length??0,pageAnchorPrescanned:new Set},r=TC(e.acquired);return y.retainedTableAcquisition.acquireParagraph(n,t,e.acquired.flowBounds.widthPt,e.acquired.source.path,e.acquired.flowDomainId,void 0,r)},P=DT(e.blocks.endnotes),ee=new Map,te=t=>{if(t.path.length!==0)throw Error(`Story acquisition requires a story-root source`);return e.blocks.storyRoot(t)},F=t=>{if(t.path.length===0||(t.path.length-1)%3!=0)throw Error(`Story block acquisition requires a canonical source path`);return e.blocks.resolve(t)},I=e=>{let t=JSON.stringify({source:e.source,pageIndex:e.pageIndex,section:e.section,container:e.container}),n=ee.get(t);if(n)return n;let r=te(e.source),i=e.source.story===`footnote`||e.source.story===`endnote`?y.noteNumbers?.get(`${e.source.story}:${e.source.storyInstance}`):void 0,a=Ed(g),s=a.resolveDestinationPage?.(e.pageIndex),c=fD(e.section.textDirection),l={...y,sectionLayout:e.section,pageIndex:e.pageIndex,totalPages:a.totalPages,displayPageNumber:s?.displayPageNumber??e.pageIndex+1,pageNumberFormat:s?.pageNumberFormat??y.pageNumberFormat,pageWidth:e.section.geometry.pageWidth,pageH:e.container.capacity===`unbounded`?2**53-1:e.section.geometry.pageHeight,marginLeft:e.section.geometry.marginLeft,marginRight:e.section.geometry.marginRight,marginTop:I_(e.section.geometry.marginTop),marginBottom:I_(e.section.geometry.marginBottom),contentX:e.container.bounds.xPt,contentW:e.container.bounds.widthPt,y:e.container.bounds.yPt,floats:[],floatParaSeq:0,retainedTablesBySourceIndex:new Map,pageAnchorPrescanned:new Set,noteReferenceNumber:i,verticalCJK:c,verticalAllRotated:c&&pD(e.section.textDirection),...c?{}:{verticalPhys:void 0},storyContext:{story:e.source.story,containers:[],lineNumberingEligible:!1}};E(r,0,l);let u=Sd(g);l.layoutServices=u;let d=r.flatMap((t,n)=>{let r={story:e.source.story,storyInstance:e.source.storyInstance,path:[n]};if(t.type===`unsupportedTextBoxBlock`)return[{type:`unsupportedTextBoxBlock`,qName:t.qName,sourcePath:t.sourcePath}];if(t.type===`paragraph`)return[{kind:`paragraph`,source:r}];if(t.type!==`table`)throw Error(`Unsupported ${e.source.story} story block: ${t.type}`);let i=l.retainedTableAcquisition,a=t;return[uk(a,p(a,e.container.bounds.widthPt,l),e.container.bounds.widthPt,l,r,i).input]}),f=null;$T(u,{layoutParagraph(e,t){let n=F(e.source);if(n.type!==`paragraph`)throw Error(`Story paragraph source kind mismatch`);let i=e.source.path[0],a=i>0?r[i-1]:void 0,s=a?.type===`paragraph`?a:null,c=r[i+1],u=c?.type===`paragraph`?c:null,d=f?.spaceAfter??0,p=yC(f,n,d,n.spaceBefore),m=Math.max(t.container.bounds.yPt,t.cursor.yPt-p.overlap);l.y=m,l.contentX=t.container.bounds.xPt,l.contentW=t.container.bounds.widthPt;let h=n.runs.filter((t,n)=>o(e.source,n)!==null);h.length>0&&T(Object.freeze({...n,runs:Object.freeze(h)}),l,l.y);let g=CD(l,n),_=o_(s,n,u),v=qk(l,n,{id:`${e.source.story}:${e.source.storyInstance}:${e.source.path.join(`.`)}`,source:e.source,flowDomainId:t.container.id,ordinaryFlow:!0,context:g,placement:{startYPt:m,paragraphXPt:t.container.bounds.xPt,availableWidthPt:t.container.bounds.widthPt,maximumYPt:t.availableBounds.yPt+t.availableBounds.heightPt,suppressSpaceBefore:p.suppressBefore},measurer:{context:l.ctx,fontFamilyClasses:l.fontFamilyClasses},environment:_D(l),exclusions:Jk(l.floats,t.container.id),anchorCollisions:Yk(l.floats),containerShading:l.containerShading,paragraphBorderEdges:_,trailingExtentPt:Math.max(g.spaceAfterPt,_.bottom===`none`?0:e_(n.borders)),continuesFromPrevious:!1,anchorFrames:bD(l),acquireCompleteStory:l.acquireCompleteTextBoxStory});f=n;let y={xPt:t.cursor.xPt,yPt:m+v.layout.advancePt};return l.y=y.yPt,{layout:v.layout,nextCursor:y}},layoutTable(e,t){f=null;let n=ik({...e,flowDomainId:t.container.id},t,u);return l.y=n.nextCursor.yPt,n}});let m=nE({source:e.source,container:e.container,blocks:Object.freeze(d)},u),h=Object.freeze({...m,blocks:Object.freeze(m.blocks.map((t,n)=>{if(t.kind!==`paragraph`&&t.kind!==`table`)throw Error(`Shared story emitted unsupported node: ${t.kind}`);return yx(t,{occurrenceId:`${e.container.id}:block:${n}`,destination:{coordinateSpace:`logical-page-points`,flowDomainId:e.container.id,translation:{xPt:0,yPt:0}}})}))});return ee.set(t,h),h};y.acquireCompleteTextBoxStory=e=>{let t=e.coordinateSpace===`upright-physical`?{...y.sectionLayout,geometry:R_(y.sectionLayout.geometry),textDirection:`lrTb`}:y.sectionLayout;return I({source:e.source,pageIndex:y.pageIndex,section:t,container:e.container})};let L={hasPaginationFields:e.hasPaginationFields,measureParagraph(t){A(t.location);let n=i(t.input.source);if(n.type!==`paragraph`)throw Error(`Paragraph source kind mismatch`);if(n.framePr){if(t.continuation.boundary!==null)throw Error(`Body frame acquisition cannot continue across flow regions`);let r,i=p_(n);if(!i)throw Error(`Body frame acquisition requires an indexed adjacency group`);let a=h(n,i,y,m(e.blocks.body,n,y),e=>{r=e});if(!r)throw Error(`Body frame acquisition omitted its retained group`);let o=r.members.find(e=>e.paragraph===n);if(!o)throw Error(`Body frame acquisition omitted its retained member`);let s=n===i.members.at(-1)&&i.framePr.dropCap!==`none`?Rx(uT(r)):0,c=n.framePr.vAnchor===`page`||n.framePr.vAnchor===`margin`,l=a.exclusionId??`frame:${t.input.source.path.join(`:`)}`,u=Object.freeze({kind:`frame`,occurrenceId:l,exclusionId:l,paragraphId:D.nextParagraphId,bounds:Object.freeze({xPt:a.x,yPt:a.y,widthPt:a.w,heightPt:a.h}),exclusionBounds:Object.freeze({xPt:a.exLeft,yPt:a.exTop,widthPt:a.exRight-a.exLeft,heightPt:a.exBottom-a.exTop})});return Object.freeze({layout:o.fragment,blockExtentPt:s,fragmentation:Object.freeze({kind:`indivisible`}),placement:Object.freeze({coordinateSpace:`logical-body`,xPt:o.fragment.flowBounds.xPt,yPt:o.fragment.flowBounds.yPt,sectionFlowOwnership:c?`page`:`host-flow`}),...n===i.owner?{retainedFootnoteReferenceIds:Object.freeze([...new Set(r.members.flatMap(e=>NT(e.fragment)))])}:{},...c?{}:{relocationBlockExtentPt:Math.max(0,a.y+a.h-t.location.cursorPt.yPt)},...a.registerExclusion===!1?{}:{flowRegistryDelta:Object.freeze({floats:rD(D,Object.freeze([u]),D.nextParagraphId+1)})}})}let r={...y,floats:[...y.floats],pageAnchorPrescanned:new Set(y.pageAnchorPrescanned)};k(r,t.location);let a=t.continuation.boundary===null?j(n,t.input.source,r):Object.freeze([]),{measured:o,layout:s}=u(r,n,t.input.source,t.location,t.availableInlineExtentPt,t.suppressSpaceBefore,t.continuation,O.entries),c=o.lines.map(e=>{let t=e.layout.consumedEnd;if(!t)throw Error(`Measured line omitted its source boundary`);return t}),l=M(s),d=Object.freeze([...a,...l]),f=DC(s);return Object.freeze({layout:s,blockExtentPt:s.advancePt,fragmentation:o.markOnly?Object.freeze({kind:`indivisible`}):Object.freeze({kind:`splittable`,lineEndBoundaries:Object.freeze(c)}),...o.markOnly?{markBelowBaselinePt:o.lastLineBelowBaselinePt}:{},...o.uniformRubyAdvancePt==null?{}:{uniformRubyAdvancePt:o.uniformRubyAdvancePt},...d.length===0&&f.length===0?{}:{flowRegistryDelta:Object.freeze({...d.length===0?{}:{floats:rD(D,d,D.nextParagraphId+d.length)},...f.length===0?{}:{drawingCollisions:$k(O,f)}})}})},measureTable(e){if(A(e.location),e.input.kind===`adjacent-table-group`){if(e.cursor&&e.cursor.kind!==`adjacent-table-group`)throw Error(`Adjacent table group acquisition received an ordinary table cursor`);let t=e.input.tables.map(t=>{let n=i(t.source);if(n.type!==`table`)throw Error(`Table source kind mismatch`);let r=t.source.path[0];return f(y,n,e.availableInlineExtentPt,r),TD(y,r).acquisition}),n=r(xk(e.input.logicalSequenceId,t.map(e=>e.input))),a={container:{id:e.location.flowDomainId,kind:`body`,bounds:{xPt:0,yPt:0,widthPt:e.availableInlineExtentPt,heightPt:e.freshPageBlockExtentPt}},cursor:{xPt:0,yPt:0},availableBounds:{xPt:0,yPt:0,widthPt:e.availableInlineExtentPt,heightPt:e.freshPageBlockExtentPt}},o=ik(n,a,g).layout,s={};t.forEach(e=>Object.entries(e.nestedById).forEach(([e,t])=>{if(s[e]&&s[e]!==t)throw Error(`Adjacent table group has duplicate nested table id: ${e}`);s[e]=t}));let c=Object.freeze({input:n,layout:o,nestedById:Object.freeze(s),floatingTables:Object.freeze(t.flatMap(e=>e.floatingTables))}),l=e.cursor?.cursor??Object.freeze({tableIndex:0,sourceRowIndex:0}),u=e.input.tables.slice(0,l.tableIndex).reduce((e,t)=>e+(t.rowCount??0),0)+l.sourceRowIndex,d=l.tableCursor??Object.freeze({...wk(),rowIndex:u});if(d.rowIndex!==u)throw Error(`Adjacent-table group and table-fragment cursors disagree`);let p=Kk(c,d,{availableHeightPt:e.availableBlockExtentPt,freshPageHeightPt:e.freshPageBlockExtentPt,placement:a,services:g,compatibility:`word`,page:{physicalPageIndex:e.location.pageIndex,displayPageNumber:e.location.pageIndex+1,occurrenceId:`${n.id}:body:${e.location.pageIndex}`}});if(!p.fragment||p.requiresFreshPage)return Object.freeze({layout:c.layout,blockExtentPt:0,nextCursor:Object.freeze({kind:`adjacent-table-group`,cursor:l}),requiresFreshFlowRegion:!0});let m=p.nextCursor?(()=>{let t=0,n=0;for(;t<e.input.tables.length;){let r=e.input.tables[t].rowCount??0;if(p.nextCursor.rowIndex<n+r)break;n+=r,t+=1}return t>=e.input.tables.length?null:Object.freeze({tableIndex:t,sourceRowIndex:p.nextCursor.rowIndex-n,tableCursor:p.nextCursor})})():null;return Object.freeze({layout:p.fragment,blockExtentPt:p.fragment.advancePt,nextCursor:m?Object.freeze({kind:`adjacent-table-group`,cursor:m}):null,...p.floatingTableRegistryDelta?{flowRegistryDelta:Object.freeze({floats:p.floatingTableRegistryDelta})}:{}})}let t=i(e.input.source);if(t.type!==`table`)throw Error(`Table source kind mismatch`);let n=e.input.source.path[0];f(y,t,e.availableInlineExtentPt,n);let o=TD(y,n).acquisition;if(e.cursor&&e.cursor.kind!==`table`)throw Error(`Ordinary table acquisition received an adjacent-group cursor`);let s=e.cursor?.cursor??wk(),c=y.pageH,l=y.acquisitionInputs.tableFormatInput(t).positioning;if(l){let n=e.cursor?.kind===`table`&&e.cursor.floatingContinuationFrame===`fresh-text`?Object.freeze({...l,vertAnchor:`text`,yPt:0,yAlign:void 0}):l,r=o.layout.columnWidthsPt.reduce((e,t)=>e+t,0),i=Object.freeze({page:Object.freeze({xPt:0,yPt:0,widthPt:y.pageWidth,heightPt:c}),margin:Object.freeze({xPt:y.marginLeft,yPt:y.marginTop,widthPt:Math.max(0,y.pageWidth-y.marginLeft-y.marginRight),heightPt:Math.max(0,c-y.marginTop-y.marginBottom)}),text:Object.freeze({xPt:e.location.cursorPt.xPt,yPt:e.location.cursorPt.yPt,widthPt:e.availableInlineExtentPt,heightPt:o.layout.advancePt})}),a=eD(n,i,r,o.layout.advancePt);if(e.cursor?.kind!==`table`&&(n.vertAnchor===`page`||n.vertAnchor===`margin`)&&Kp({bounds:{xPt:a.x,yPt:a.y,widthPt:a.w,heightPt:a.h},blockers:D.entries.map(Lp),overlapEpsilonPt:.01}).defer)return Object.freeze({layout:o.layout,blockExtentPt:0,nextCursor:Object.freeze({kind:`table`,cursor:s,floatingContinuationFrame:`authored`}),requiresFreshFlowRegion:!0});let u=(n.vertAnchor===`page`||n.vertAnchor===`margin`)&&o.layout.advancePt>e.freshPageBlockExtentPt,d=u?e.location.availableBounds.yPt+e.location.availableBounds.heightPt:n.vertAnchor===`page`?i.page.yPt+i.page.heightPt:n.vertAnchor===`margin`?i.margin.yPt+i.margin.heightPt:e.location.availableBounds.yPt+e.location.availableBounds.heightPt,f=u?e.freshPageBlockExtentPt:n.vertAnchor===`page`?i.page.heightPt:n.vertAnchor===`margin`?i.margin.heightPt:e.freshPageBlockExtentPt,p;try{p=Am({step:r=>{if(r?.kind===`fresh-flow-region`||r?.kind===`candidate`&&r.resolved.placement.xPt===r.parentFrame.xPt&&r.resolved.placement.yPt===r.parentFrame.yPt)return r;let c=r?.resolved.placement??{xPt:a.x,yPt:a.y},l=Math.max(0,d-c.yPt),u=Kk(o,s,{availableHeightPt:l,freshPageHeightPt:f,placement:{container:{id:`${e.location.flowDomainId}:floating-table`,kind:`body`,bounds:{xPt:0,yPt:0,widthPt:e.availableInlineExtentPt,heightPt:l}},cursor:{xPt:0,yPt:0},availableBounds:{xPt:0,yPt:0,widthPt:e.availableInlineExtentPt,heightPt:l}},services:g,compatibility:`word`,oversizedRowPolicy:`atomic`,page:{physicalPageIndex:e.location.pageIndex,displayPageNumber:y.displayPageNumber??e.location.pageIndex+1,occurrenceId:`${o.input.id}:fitting-outer:${e.location.pageIndex}:${s.rowIndex}:${s.rowFragmentIndex}`},floatingTableFrames:{page:i.page,margin:i.margin,column:i.text},floatingTableRegistry:D,finalPlacementTranslationPt:c,reacquirePageDependentBlock:N});if(!u.fragment||u.requiresFreshPage)return Object.freeze({kind:`fresh-flow-region`,result:u});let p=Object.freeze({kind:`floating-table-placement`,occurrenceId:`${o.input.id}:root:${e.location.pageIndex}:${s.rowIndex}:${s.rowFragmentIndex}`,ownership:`source`,physicalPageIndex:e.location.pageIndex,displayPageNumber:y.displayPageNumber??e.location.pageIndex+1,hostCellId:e.location.flowDomainId,sourceBlockIndex:e.input.source.path[0],anchorBlockIndex:e.input.source.path[0],tableId:u.fragment.id,overlap:t.overlap===`never`?`never`:`overlap`,positioning:n,anchorBounds:i.text,child:u.fragment}),m=u.floatingTableRegistryDelta?.entries??[],h=u.floatingTableRegistryDelta?.nextParagraphId??D.nextParagraphId,_=oD(p,i,aD(D.entries,h,D.coordinateSpace,D.flowDomainId)),v=JSON.stringify({parentFrame:{xPt:_.placement.xPt,yPt:_.placement.yPt},fragment:u.fragment,nestedEntries:m,resolvedBounds:_.placement.bounds});return Object.freeze({kind:`candidate`,parentFrame:Object.freeze({xPt:c.xPt,yPt:c.yPt}),result:u,fragment:u.fragment,resolved:_,nestedEntries:m,fingerprint:v})},stateOf:e=>e.kind===`fresh-flow-region`?`fresh-flow-region`:e.fingerprint,limit:16}).value}catch(e){throw e instanceof km?new Y(`NON_CONVERGENCE`,e.reason===`cycle`?`Floating table parent/child transaction repeated an exact-state cycle`:`Floating table parent/child transaction reached the operational pass limit 16`):e}if(p.kind===`fresh-flow-region`)return Object.freeze({layout:o.layout,blockExtentPt:0,nextCursor:Object.freeze({kind:`table`,cursor:s,floatingContinuationFrame:`fresh-text`}),requiresFreshFlowRegion:!0});let{result:m,fragment:h,resolved:_,nestedEntries:v}=p,b=e.cursor?.kind===`table`&&e.cursor.floatingContinuationFrame!==void 0,x=e.location.availableBounds.yPt+e.location.availableBounds.heightPt,S=[...h.resolvedFloatingTables??[],_.placement].filter(e=>e.source.positioning.vertAnchor===`text`);return!b&&S.some(e=>e.exclusionBounds.yPt+e.exclusionBounds.heightPt>x)?Object.freeze({layout:h,blockExtentPt:0,nextCursor:Object.freeze({kind:`table`,cursor:s,floatingContinuationFrame:`fresh-text`}),requiresFreshFlowRegion:!0}):Object.freeze({layout:h,blockExtentPt:0,nextCursor:m.nextCursor?Object.freeze({kind:`table`,cursor:m.nextCursor,floatingContinuationFrame:`fresh-text`}):null,flowRegistryDelta:Object.freeze({floats:rD(D,Object.freeze([...v,..._.transaction.delta]),_.transaction.nextParagraphId)}),placement:Object.freeze({coordinateSpace:`logical-body`,xPt:_.placement.xPt,yPt:_.placement.yPt,sectionFlowOwnership:n.vertAnchor===`page`||n.vertAnchor===`margin`?`page`:`host-flow`})})}if(y.verticalPhys&&!a(t)){if(e.cursor)throw Error(`An upright physical table must remain atomic`);let t=y.verticalPhys,n=o.layout.columnWidthsPt.reduce((e,t)=>e+t,0);if(n>e.availableBlockExtentPt&&e.availableBlockExtentPt<e.freshPageBlockExtentPt)return Object.freeze({layout:o.layout,blockExtentPt:0,nextCursor:Object.freeze({kind:`table`,cursor:s}),requiresFreshFlowRegion:!0});let r=t.physicalPageWidthPt-e.location.cursorPt.yPt-n,i=e.location.cursorPt.xPt,a=Math.max(o.layout.advancePt,t.pageHeight-t.marginTop-t.marginBottom),c=`upright-physical-page:${e.location.pageIndex}`,l=Kk(o,wk(),{availableHeightPt:a,freshPageHeightPt:a,placement:{container:{id:c,kind:`body`,bounds:{xPt:0,yPt:0,widthPt:n,heightPt:a}},cursor:{xPt:0,yPt:0},availableBounds:{xPt:0,yPt:0,widthPt:n,heightPt:a}},services:g,compatibility:`word`,oversizedRowPolicy:`atomic`,page:{physicalPageIndex:e.location.pageIndex,displayPageNumber:y.displayPageNumber??e.location.pageIndex+1,occurrenceId:`${o.input.id}:upright-page:${e.location.pageIndex}`},floatingTableFrames:{page:{xPt:0,yPt:0,widthPt:t.pageWidth,heightPt:t.pageHeight},margin:{xPt:t.marginLeft,yPt:t.marginTop,widthPt:Math.max(0,t.pageWidth-t.marginLeft-t.marginRight),heightPt:Math.max(0,t.pageHeight-t.marginTop-t.marginBottom)},column:{xPt:t.marginLeft,yPt:t.marginTop,widthPt:Math.max(0,t.pageWidth-t.marginLeft-t.marginRight),heightPt:Math.max(0,t.pageHeight-t.marginTop-t.marginBottom)}},floatingTableRegistry:Object.freeze({coordinateSpace:`upright-physical-page-points`,flowDomainId:c,entries:Object.freeze([]),nextParagraphId:0}),finalPlacementTranslationPt:{xPt:r,yPt:i},reacquirePageDependentBlock:N});if(!l.fragment||l.nextCursor||l.requiresFreshPage)throw Error(`Upright table final-frame layout must remain atomic`);return Object.freeze({layout:l.fragment,blockExtentPt:n,nextCursor:null,placement:Object.freeze({coordinateSpace:`upright-physical`,xPt:r+l.fragment.flowBounds.xPt,yPt:i+l.fragment.flowBounds.yPt,sectionFlowOwnership:`host-flow`})})}let u=Kk(o,s,{availableHeightPt:e.availableBlockExtentPt,freshPageHeightPt:e.freshPageBlockExtentPt,placement:{container:{id:e.location.flowDomainId,kind:`body`,bounds:{xPt:0,yPt:0,widthPt:e.availableInlineExtentPt,heightPt:e.availableBlockExtentPt}},cursor:{xPt:0,yPt:0},availableBounds:{xPt:0,yPt:0,widthPt:e.availableInlineExtentPt,heightPt:e.availableBlockExtentPt}},services:g,compatibility:`word`,page:{physicalPageIndex:e.location.pageIndex,displayPageNumber:e.location.pageIndex+1,occurrenceId:`${o.input.id}:body:${e.location.pageIndex}`},floatingTableFrames:{page:{xPt:0,yPt:0,widthPt:y.pageWidth,heightPt:c},margin:{xPt:y.marginLeft,yPt:y.marginTop,widthPt:Math.max(0,y.pageWidth-y.marginLeft-y.marginRight),heightPt:Math.max(0,c-y.marginTop-y.marginBottom)},column:e.location.availableBounds},floatingTableRegistry:D,finalPlacementTranslationPt:{xPt:e.location.availableBounds.xPt,yPt:e.location.cursorPt.yPt},reacquirePageDependentBlock:N}),d=e.location.availableBounds.xPt+o.layout.flowBounds.xPt,p=d+o.layout.flowBounds.widthPt,m=u.fragment?.advancePt??0,h=Gp({inlineStartPt:d,inlineEndPt:p,blockStartPt:e.location.cursorPt.yPt,blockExtentPt:m,blockers:D.entries.map(Lp),overlapEpsilonPt:Np}).blockStartPt;return h>e.location.cursorPt.yPt?Object.freeze({layout:o.layout,blockExtentPt:0,nextCursor:e.cursor??null,retryAtBlockStartPt:h}):!u.fragment||u.requiresFreshPage?Object.freeze({layout:o.layout,blockExtentPt:0,nextCursor:Object.freeze({kind:`table`,cursor:s}),requiresFreshFlowRegion:!0}):Object.freeze({layout:u.fragment,blockExtentPt:u.fragment.advancePt,nextCursor:u.nextCursor?Object.freeze({kind:`table`,cursor:u.nextCursor}):null,...u.floatingTableRegistryDelta?{flowRegistryDelta:Object.freeze({floats:u.floatingTableRegistryDelta})}:{}})},layoutStory:I,layoutNotes(e){let t=[],n=e.container.bounds.yPt,r=e.firstOnPage;for(let i of e.referenceIds){if(!(e.kind===`footnote`?S:P).has(i))continue;let a={story:e.kind,storyInstance:i,path:[]},o=r?6:0,s={...e.container,id:`${e.container.id}:${e.kind}:${i}`,bounds:{...e.container.bounds,yPt:n+o,heightPt:Math.max(0,e.container.bounds.yPt+e.container.bounds.heightPt-n-o)}},c;try{c=I({source:a,pageIndex:e.pageIndex,section:e.section,container:s})}catch(t){throw t instanceof JT&&t.containerId===s.id?new Vb(e.kind,e.pageIndex,e.container.id):t}let l=Object.freeze(r?[Object.freeze({edge:`top`,from:Object.freeze({xPt:e.container.bounds.xPt,yPt:n+o/2}),to:Object.freeze({xPt:e.container.bounds.xPt+e.container.bounds.widthPt/3,yPt:n+o/2}),color:`#000000`,widthPt:.5,authoredStyle:`single`,style:`solid`})]:[]),u=o+c.advancePt,d=Object.freeze({xPt:e.container.bounds.xPt,yPt:n,widthPt:e.container.bounds.widthPt,heightPt:u}),f=Object.freeze({kind:`note`,id:`${e.kind}:${i}:page:${e.pageIndex}`,source:a,flowDomainId:e.container.id,ordinaryFlow:!0,flowBounds:d,inkBounds:Object.freeze({xPt:Math.min(d.xPt,c.inkBounds.xPt),yPt:Math.min(d.yPt,c.inkBounds.yPt),widthPt:Math.max(d.xPt+d.widthPt,c.inkBounds.xPt+c.inkBounds.widthPt)-Math.min(d.xPt,c.inkBounds.xPt),heightPt:Math.max(d.yPt+d.heightPt,c.inkBounds.yPt+c.inkBounds.heightPt)-Math.min(d.yPt,c.inkBounds.yPt)}),clipBounds:e.container.bounds,advancePt:u,separator:l,story:c});t.push(f),n+=u,r=!1}return Object.freeze(t)},measureFollowingBlock(e){let t={...y,floats:[...y.floats],retainedTablesBySourceIndex:new Map(y.retainedTablesBySourceIndex)};if(k(t,e.location),e.input.kind===`adjacent-table-group`){let n=e.input.tables.map(n=>{let r=i(n.source);if(r.type!==`table`)throw Error(`Following table source kind mismatch`);let a=n.source.path[0];return f(t,r,e.availableInlineExtentPt,a),TD(t,a).acquisition}),a=ik(r(xk(e.input.logicalSequenceId,n.map(e=>e.input))),{container:{id:e.location.flowDomainId,kind:`body`,bounds:e.location.availableBounds},cursor:e.location.cursorPt,availableBounds:e.location.availableBounds},g).layout;return Object.freeze({fullExtentPt:a.advancePt,leadContentExtentPt:a.rows[0]?.advancePt??a.advancePt,fullFootnoteReferenceIds:NT(a),leadFootnoteReferenceIds:NT({...a,rows:a.rows.slice(0,1)})})}let n=i(e.input.source);if(e.input.kind===`paragraph`){if(n.type!==`paragraph`)throw Error(`Following paragraph source kind mismatch`);let{layout:r}=u(t,n,e.input.source,e.location,e.availableInlineExtentPt,!1,void 0,O.entries),i=r.lines[0];return Object.freeze({fullExtentPt:r.advancePt,leadContentExtentPt:i?i.bounds.yPt+i.advancePt-r.flowBounds.yPt:r.advancePt,fullFootnoteReferenceIds:NT(r),leadFootnoteReferenceIds:i?MT([i]):[]})}if(n.type!==`table`)throw Error(`Following table source kind mismatch`);let a=e.input.source.path[0];f(t,n,e.availableInlineExtentPt,a);let o=TD(t,a).acquisition.layout;return Object.freeze({fullExtentPt:o.advancePt,leadContentExtentPt:o.rows[0]?.advancePt??o.advancePt,fullFootnoteReferenceIds:NT(o),leadFootnoteReferenceIds:NT({...o,rows:o.rows.slice(0,1)})})},prescanPageAnchors(e){let t=e.location.section.geometry,n=I_(t.marginTop),r=I_(t.marginBottom),a=Object.freeze({page:Object.freeze({xPt:0,yPt:0,widthPt:t.pageWidth,heightPt:t.pageHeight}),margin:Object.freeze({xPt:t.marginLeft,yPt:n,widthPt:Math.max(0,t.pageWidth-t.marginLeft-t.marginRight),heightPt:Math.max(0,t.pageHeight-n-r)}),column:Object.freeze({xPt:e.location.availableBounds.xPt,yPt:n,widthPt:e.availableInlineExtentPt,heightPt:Math.max(0,t.pageHeight-n-r)}),paragraph:null,line:null,character:null,pageParity:e.location.pageIndex%2==0?`odd`:`even`}),s=new Set,c=e=>`${e.story}:${e.storyInstance}:${e.path.join(`.`)}`,l=new Map,u=e=>{let t=c(e);return l.has(t)||l.set(t,D.nextParagraphId+l.size),l.get(t)},d=e.anchors.flatMap(t=>{let n=i(t.paragraphSource);if(n.type!==`paragraph`)throw Error(`Page-anchor prescan source kind mismatch`);let r=n,c=r.runs.filter(e=>e.type===`anchorHost`&&e.anchorOccurrenceId===t.occurrenceId),l=r.runs.map((e,t)=>({run:e,runIndex:t})).filter(e=>(e.run.type===`image`||e.run.type===`chart`||e.run.type===`shape`||e.run.type===`unavailableDrawing`)&&e.run.anchorAcquisitionInput?.occurrenceId===t.occurrenceId).sort((e,t)=>(e.run.anchorAcquisitionInput.group?.sourceIndex??0)-(t.run.anchorAcquisitionInput.group?.sourceIndex??0)||e.runIndex-t.runIndex);if(c.length!==1||l.length===0){let r=n.runs.find((e,n)=>o(t.paragraphSource,n)?.occurrenceId===t.occurrenceId);if(r){if((r.type===`image`||r.type===`chart`||r.type===`shape`)&&r.wrapMode===`none`)return[];let i={...y,floats:[...y.floats],pageAnchorPrescanned:new Set(y.pageAnchorPrescanned)};k(i,e.location);let a=j(n,t.paragraphSource,i,new Set([t.occurrenceId]),u(t.paragraphSource));if(a.length!==1)throw Error(`Public page-anchor prescan occurrence mismatch: ${t.occurrenceId}`);return s.add(n),a}throw Error(`Page-anchor prescan occurrence acquisition mismatch: ${t.occurrenceId}`)}let d=_C({acquisition:l[0].run.anchorAcquisitionInput,frames:a});if(d.status!==`resolved`)throw Error(`Page-anchor prescan could not resolve occurrence: ${t.occurrenceId}`);let f=fD(e.location.section.textDirection)?(()=>{let t=cf(e.location.section.textDirection);return Rw(d,gf(t,mf({widthPt:a.page.widthPt,heightPt:a.page.heightPt},t)))})():d,p=f.geometry.wrapBounds;if(p===null||f.geometry.wrap.kind===`none`)return[];let m=f.geometry.wrap.polygon?.points??Object.freeze([Object.freeze({xPt:p.xPt,yPt:p.yPt}),Object.freeze({xPt:p.xPt+p.widthPt,yPt:p.yPt}),Object.freeze({xPt:p.xPt+p.widthPt,yPt:p.yPt+p.heightPt}),Object.freeze({xPt:p.xPt,yPt:p.yPt+p.heightPt})]);return[Object.freeze({kind:`shape`,occurrenceId:t.occurrenceId,paragraphId:u(t.paragraphSource),bounds:f.geometry.objectFrame,exclusionBounds:p,wrap:f.geometry.wrap.kind,wrapSide:f.geometry.wrap.side,wrapDistances:f.geometry.wrap.distances,wrapPolygon:Object.freeze([...m])})]});return s.forEach(e=>y.pageAnchorPrescanned?.add(e)),d.length===0?null:Object.freeze({floats:Object.freeze({coordinateSpace:`logical-page-points`,flowDomainId:D.flowDomainId,baseEntries:D.entries,baseNextParagraphId:D.nextParagraphId,nextParagraphId:D.nextParagraphId+d.length,entries:Object.freeze(d)})})},measureLineNumberGlyph(n){let r=t.font;try{let r=e.fonts.defaultBodyFontSizePt,i=Th(!1,!1,r,null,{});t.font=i;let a=t.measureText(n);return Object.freeze({widthPt:a.width,ascentPt:a.fontBoundingBoxAscent??a.actualBoundingBoxAscent??r*.8,descentPt:a.fontBoundingBoxDescent??a.actualBoundingBoxDescent??r*.2,font:i})}finally{t.font=r}},resetPageAcquisition(e){y.floats=[],y.floatParaSeq=0,y.pageAnchorPrescanned=new Set,D=Object.freeze({coordinateSpace:`logical-page-points`,flowDomainId:w(e.pageIndex),entries:Object.freeze([]),nextParagraphId:0}),O=Qk(w(e.pageIndex),`logical-page-points`),A(e)},moveAcquisitionCursor:A,flowRegistrySnapshot(){return Object.freeze({floats:D,drawingCollisions:O})},commitFlowRegistryDelta(e){if(!e.floats&&!e.drawingCollisions)throw Error(`Body flow registry delta must update at least one registry`);e.floats&&iD(e.floats,{coordinateSpace:D.coordinateSpace,flowDomainId:D.flowDomainId,entries:D.entries,nextParagraphId:D.nextParagraphId}),e.drawingCollisions&&eA(O,e.drawingCollisions);let t=e.drawingCollisions?tA(O,e.drawingCollisions):O,n=(e.floats?.entries??[]).map(e=>{let t=e.wrapDistances?.leftPt??e.bounds.xPt-e.exclusionBounds.xPt,n=e.wrapDistances?.topPt??e.bounds.yPt-e.exclusionBounds.yPt,r=e.wrapDistances?.rightPt??e.exclusionBounds.xPt+e.exclusionBounds.widthPt-e.bounds.xPt-e.bounds.widthPt,i=e.wrapDistances?.bottomPt??e.exclusionBounds.yPt+e.exclusionBounds.heightPt-e.bounds.yPt-e.bounds.heightPt,a={mode:e.wrap===`topAndBottom`?`topAndBottom`:`square`,...e.kind===`shape`?{anchorOccurrenceId:e.occurrenceId,acquisitionOccurrenceId:e.occurrenceId}:{},...e.wrap?{authoredWrap:e.wrap,wrapPolygon:e.wrapPolygon}:{},imageKey:e.exclusionId??(e.kind===`table`?`body:float:${e.paragraphId}`:``),imageX:e.bounds.xPt,imageY:e.bounds.yPt,imageW:e.bounds.widthPt,imageH:e.bounds.heightPt,xLeft:e.exclusionBounds.xPt,xRight:e.exclusionBounds.xPt+e.exclusionBounds.widthPt,yTop:e.exclusionBounds.yPt,yBottom:e.exclusionBounds.yPt+e.exclusionBounds.heightPt,side:e.wrapSide??`bothSides`,distLeft:t,distRight:r,distTop:n,distBottom:i,paraId:e.paragraphId};return e.kind===`table`?{...a,kind:`table`,tableOverlap:e.overlap}:{...a,kind:e.kind}});e.floats&&(y.floats.push(...n),D=Object.freeze({...D,entries:Object.freeze([...D.entries,...e.floats.entries]),nextParagraphId:e.floats.nextParagraphId}),y.floatParaSeq=e.floats.nextParagraphId),O=t}};return Object.freeze(L)}})}function d(e,t){return vD(t,CD(t,e))}function f(e,t,n,r){let i=e.retainedTablesBySourceIndex.get(r),a=p(t,n,e),o=e.retainedTableAcquisition,s=uk(t,a,n,e,[r],o),c=i?.contentWidthPt===n?Object.freeze({...s,layout:Object.freeze({...s.layout,columnWidthsPt:i.acquisition.layout.columnWidthsPt})}):s;e.retainedTablesBySourceIndex.set(r,Object.freeze({sourceIndex:r,acquisition:c,contentWidthPt:n,anchorYPt:e.y}));let l=c.layout.rows.map(e=>e.advancePt);return{colWidthsPt:a,rowContentHeightsPt:l,rowHeightsPt:l}}function p(e,t,n){let r=n.acquisitionInputs.tableFormatInput(e),i=Number.isFinite(e.tblInd)?e.tblInd??0:0,a=r.rows.map(e=>{let t=e.exception;return t?.indentAuthored?t.indentPt??0:i}),o=n.storyContext?.story,s=n.storyContext?.containers.length===0&&(o===`header`||o===`footer`||o===`body`&&n.sectionLayout?.columns.length===1),c=r.ordinaryFlow&&s&&!fD(n.sectionLayout.textDirection)&&[i,...a].some(e=>e<0),l=r.rows.length===0?[{justification:e.jc,indentPt:i}]:r.rows.map((t,n)=>({justification:t.justification??e.jc,indentPt:a[n]??i})),u=e.bidiVisual===!0,d=Math.min(n.pageWidth,...l.map(({justification:e,indentPt:r})=>{let i=e===`right`||e===`end`,a=e===`center`?`center`:(u?!i:i)?`right`:`left`,o=u?-r:r;if(a===`left`){let e=n.contentX+o;return n.pageWidth-e}if(a===`right`)return n.contentX+t+o;let s=n.contentX+t/2+o;return 2*Math.min(s,n.pageWidth-s)})),f=c?Math.max(t,d):t,p=(r.firstRowException?.layout===`fixed`?`fixed`:e.layout)===`fixed`&&n.storyContext?.containers.some(e=>e.kind===`tableCell`),m=(e,r=n.acquisitionInputs.tableFormatInput(e))=>{let i=new WeakMap;return e.rows.forEach((t,n)=>t.cells.forEach((t,a)=>{let o=r.rows[n]?.cells[a]?.marginsPt;i.set(t,o??A(t,e))})),r=>qg(r,i.get(r)??A(r,e),{paragraph:e=>{let r=E_(n.layoutSettings,n.sectionLayout,n.storyContext??yD,e),i=e.numbering?n.acquisitionInputs.numberingMarkerShapeInput(e.numbering,Oh(e)):void 0,a=Ug(r,{numbering:e.numbering,...i?{markerInput:i}:{},authoredFirstIndentPt:e.indentFirst,tabStops:e.tabStops,defaultTabPt:n.defaultTabPt,service:n.layoutServices?.text,clusterGeometry:!1}),o=a.numberingMarkerGeometry??(e.numbering&&i&&n.layoutServices?.text?Kg(e.numbering,i,{authoredFirstIndentPt:e.indentFirst,physicalIndentLeftPt:a.physicalIndentLeftPt,tabStops:e.tabStops,defaultTabPt:n.defaultTabPt},n.layoutServices.text,!1):void 0);return $g(e,a,t,{context:n.ctx,fontFamilyClasses:n.fontFamilyClasses},_D(n),o)},nestedTable:e=>nO(n.acquisitionInputs.tableColumnLayoutInput(e,t,m(e),t))})};return[...sO(n.acquisitionInputs.tableColumnLayoutInput(e,t,m(e,r),p?null:n.acquisitionInputs.tableParticipatesInOrdinaryFlow(e)?f:Math.max(t,n.pageWidth)))]}function m(e,t,n){let r=e.indexOf(t);for(let t=r+1;t<e.length;t++){let r=e[t];if(r.type!==`paragraph`)continue;let i=r;if(!i.framePr)return rg(i,1,d(i,n),SD(n,i).hasRuby,n.docEastAsian,n.ctx,n.fontFamilyClasses,i.lineSpacing,n.resolvedLocalFonts,n.layoutServices?.text,n.acquisitionInputs.paragraphMarkShapeInput(i),n.layoutSettings.compat.useFeLayout)}let i=t;return rg(i,1,d(i,n),SD(n,i).hasRuby,n.docEastAsian,n.ctx,n.fontFamilyClasses,i.lineSpacing,n.resolvedLocalFonts,n.layoutServices?.text,n.acquisitionInputs.paragraphMarkShapeInput(i),n.layoutSettings.compat.useFeLayout)}function h(e,t,n,r,i){let a={context:n.ctx,fontFamilyClasses:n.fontFamilyClasses},o=_D(n),s=t.members.map(m_),c=HE(t.framePr.hAnchor,n),l={contentXPt:n.contentX,contentWidthPt:n.contentW,pageHeightPt:n.pageH,yPt:n.y,anchorLineHeightPt:r},u=pT(t,{contexts:t.members.map(e=>SD(n,e)),inputs:t.members,borderEdges:s,borderExtentsPt:t.members.map((e,t)=>s[t]?.bottom===`none`?0:e_(e.borders)),measurer:a,environment:o,containerShading:n.containerShading,maximumWidthPt:Math.max(0,c.right-c.left),acquisitionSession:n,placementSignature:[l.contentXPt,l.contentWidthPt,l.pageHeightPt,l.yPt,l.anchorLineHeightPt,n.pageWidth,n.marginLeft,n.marginRight,n.marginTop,n.marginBottom].join(`|`),place:(e,r)=>{let i=qE(t.framePr,n,l.yPt,e,r,l.anchorLineHeightPt);return Object.freeze({bounds:Object.freeze({xPt:i.x,yPt:i.y,widthPt:i.w,heightPt:i.h}),exclusionBounds:Object.freeze({xPt:i.exLeft,yPt:i.exTop,widthPt:i.exRight-i.exLeft,heightPt:i.exBottom-i.exTop})})},anchorFrames:bD(n)});i?.(u);let d={x:u.box.bounds.xPt,y:u.box.bounds.yPt,w:u.box.bounds.widthPt,h:u.box.bounds.heightPt,exLeft:u.box.exclusionBounds.xPt,exTop:u.box.exclusionBounds.yPt,exRight:u.box.exclusionBounds.xPt+u.box.exclusionBounds.widthPt,exBottom:u.box.exclusionBounds.yPt+u.box.exclusionBounds.heightPt,registerExclusion:!0,exclusionId:u.box.exclusionId};return e===t.owner?d:{...d,registerExclusion:!1}}function g(e,t,n){if(t.verticalPhys){let n=g(e,C(t),t.contentX);return yA(n.x,n.y,n.w,n.h,t.verticalPhys.physicalPageWidthPt)}let r=e.widthPt,i=e.heightPt,a=e.anchorXPt,o=e.anchorYPt,s=e.groupWidthPt??null,c=e.groupHeightPt??null;if(e.widthPct!=null){let n=sD(e.widthRelativeFrom,!1,t),i=(n.end-n.start)*e.widthPct;if(e.groupWidthPt!=null&&e.groupWidthPt>0){let t=i/e.groupWidthPt;r=e.widthPt*t,a=e.anchorXPt*t}else r=i;s=i}if(e.heightPct!=null){let r=cD(e.heightRelativeFrom,!1,n,t),a=(r.end-r.start)*e.heightPct;if(e.groupHeightPt!=null&&e.groupHeightPt>0){let t=a/e.groupHeightPt;i=e.heightPt*t,o=e.anchorYPt*t}else i=a;c=a}return{x:lD(e.anchorXAlign,e.anchorXFromMargin,a,r,t,e.anchorXRelativeFrom,e.pctPosH,s),y:uD(e.anchorYAlign,e.anchorYFromPara,o,i,n,t,e.anchorYRelativeFrom,e.pctPosV,c),w:r,h:i}}let _=(e,t,n)=>w(e,t,n),v=(e,t,n)=>g(e,t,n),y=e=>hD(e),b=e=>mD(e),x=(e,t,n)=>E(e,t,n);function S(e){let t=e.verticalPhys;return t?{...e,pageWidth:t.pageWidth,marginLeft:t.marginLeft,marginRight:t.marginRight,marginTop:t.marginTop,marginBottom:t.marginBottom,pageH:t.pageHeight}:e}function C(e){let t=e.verticalPhys;return t?{...S(e),contentX:t.marginLeft,contentW:t.pageWidth-t.marginLeft-t.marginRight,verticalCJK:!1,verticalAllRotated:!1,verticalPhys:void 0,floats:[]}:e}function w(e,t,n){let r=e.widthPt,i=e.heightPt,a=e.distLeft??0,o=e.distRight??0,s=e.distTop??0,c=e.distBottom??0;if(t.verticalPhys){let n=S(t),l=yA(lD(e.anchorXAlign,e.anchorXFromMargin??!1,e.anchorXPt??0,r,n,e.anchorXRelativeFrom??null,null,null),uD(e.anchorYAlign,e.anchorYFromPara??!1,e.anchorYPt??0,i,t.contentX,n,e.anchorYRelativeFrom??null,null,null),r,i,t.verticalPhys.physicalPageWidthPt);return{x:l.x,y:l.y,w:l.w,h:l.h,dl:s,dr:c,dt:o,db:a}}return{x:lD(e.anchorXAlign,e.anchorXFromMargin??!1,e.anchorXPt??0,r,t,e.anchorXRelativeFrom??null,null,null),y:uD(e.anchorYAlign,e.anchorYFromPara??!1,e.anchorYPt??0,i,n,t,e.anchorYRelativeFrom??null,null,null),w:r,h:i,dl:a,dr:o,dt:s,db:c}}function T(e,t,n){let r=t.floatParaSeq++,i=t.pageAnchorPrescanned?.has(e)??!1;for(let a of e.runs)if(a.type===`image`){let e=a;if(i&&rA(e))continue;D(e,t,n,r)}else if(a.type===`chart`){let e=a;if(i&&rA(e))continue;O(e,t,n,r)}else if(a.type===`shape`){let e=a;if(i&&rA(e))continue;k(e,t,n,r)}}function E(e,t,n){n.pageAnchorPrescanned||=new Set;for(let r=t;r<e.length;r++){let t=e[r];if(!t)continue;if(t.type===`pageBreak`)break;if(t.type===`sectionBreak`){let e=t;if(e.kind&&e.kind!==`continuous`)break;continue}if(t.type!==`paragraph`)continue;let i=t;if(n.pageAnchorPrescanned.has(i))continue;let a=!1;for(let e of i.runs)if(e.type===`image`){if(rA(e)){a=!0;break}}else if(e.type===`chart`){if(rA(e)){a=!0;break}}else if(e.type===`shape`&&rA(e)){a=!0;break}if(!a)continue;let o=n.floatParaSeq++;for(let e of i.runs)if(e.type===`image`){let t=e;if(!rA(t))continue;D(t,n,0,o)}else if(e.type===`chart`){let t=e;if(!rA(t))continue;O(t,n,0,o)}else if(e.type===`shape`){let t=e;if(!rA(t))continue;k(t,n,0,o)}n.pageAnchorPrescanned.add(i)}}function D(e,t,n,r){if(!e.anchor||!$p(e.wrapMode))return;let i=e.wrapMode===`topAndBottom`?`topAndBottom`:`square`,a=w(e,t,n),{w:o,h:s,dl:l,dr:u,dt:d,db:f}=a,p=e.allowOverlap??!0,m=c(e.imagePath,e.colorReplaceFrom,e.duotone);JE(t,{x:a.x,y:a.y,w:o,h:s,dl:l,dr:u,dt:d,db:f,kind:`shape`,mode:i,side:e.wrapSide??`bothSides`,imageKey:m,paraId:r,avoidOverlap:!0,allowOverlap:p})}function O(e,t,n,r){if(!e.anchor||!$p(e.wrapMode))return;let i=w(e,t,n),{w:a,h:o,dl:s,dr:c,dt:l,db:u}=i;a<=0||o<=0||JE(t,{x:i.x,y:i.y,w:a,h:o,dl:s,dr:c,dt:l,db:u,kind:`shape`,mode:e.wrapMode===`topAndBottom`?`topAndBottom`:`square`,side:e.wrapSide??`bothSides`,allowOverlap:e.allowOverlap??!0,avoidOverlap:!0,paraId:r,imageKey:``})}function k(e,t,n,r){if(!$p(e.wrapMode))return;let{x:i,y:a,w:o,h:s}=g(e,t,n);if(o<=0||s<=0)return;let c=e.wrapMode===`topAndBottom`?`topAndBottom`:`square`,l=e.distLeft??0,u=e.distRight??0,d=e.distTop??0,f=e.distBottom??0,p=!!t.verticalPhys;JE(t,{x:i,y:a,w:o,h:s,dl:p?d:l,dr:p?f:u,dt:p?u:d,db:p?l:f,kind:`shape`,mode:c,side:e.wrapSide??`bothSides`,imageKey:``,paraId:r,avoidOverlap:!0,allowOverlap:!0})}function A(e,t){return{top:e.marginTop??t.cellMarginTop,bottom:e.marginBottom??t.cellMarginBottom,left:e.marginLeft??t.cellMarginLeft,right:e.marginRight??t.cellMarginRight}}let j=u(e,t,n);return Object.freeze({kernel:j,internals:Object.freeze({resolveColumnWidths:p,resolveAnchorBox:_,resolveShapeBox:v,physicalLayoutSection:y,verticalLayoutSection:b,preRegisterPageFloats:x})})}function*xA(e){e.textPath&&(yield{text:e.textPath.string,fontFamilies:[e.textPath.fontFamily],bold:e.textPath.bold,italic:e.textPath.italic});for(let t of e.textBlocks??[])yield*SA(t)}function*SA(e){if(e.numbering&&(yield{text:e.numbering.text,fontFamilies:[e.numbering.fontFamily,e.numbering.fontFamilyEastAsia],bold:!1,italic:!1}),e.runs?.length)for(let t of e.runs)yield{text:t.text,fontFamilies:[t.fontFamily,t.fontFamilyEastAsia,e.fontFamily],bold:t.bold??e.bold,italic:t.italic??e.italic};else yield{text:e.text,fontFamilies:[e.fontFamily],bold:e.bold,italic:e.italic}}function*CA(e){if(e.type===`text`){let t=e;yield{text:e.text,fontFamilies:[e.fontFamily,t.fontFamilyHighAnsi,e.fontFamilyEastAsia],bold:e.bold,italic:e.italic},yield{text:e.text,fontFamilies:[e.fontFamilyCs],bold:e.boldCs??!1,italic:e.italicCs??!1}}else if(e.type===`field`){let t=e;yield{text:t.fallbackText,fontFamilies:[t.fontFamily,t.fontFamilyHighAnsi,t.fontFamilyEastAsia],bold:t.bold,italic:t.italic},yield{text:t.fallbackText,fontFamilies:[t.fontFamilyCs],bold:t.boldCs??!1,italic:t.italicCs??!1}}else e.type===`shape`?yield*xA(e):e.type===`anchorHost`&&(yield{text:``,fontFamilies:[e.fontFamily,e.fontFamilyEastAsia],bold:e.bold,italic:e.italic})}function*wA(e){yield{text:``,fontFamilies:[e.defaultFontFamily,e.defaultFontFamilyEastAsia]},e.numbering&&(yield{text:e.numbering.text,fontFamilies:[e.numbering.fontFamily,e.numbering.fontFamilyEastAsia]});for(let t of e.runs)yield*CA(t)}function*TA(e){for(let t of e.rows)for(let e of t.cells)yield*DA(e.content)}function*EA(e){if(e)for(let t of[e.default,e.first,e.even])t&&(yield*DA(t.body))}function*DA(e){for(let t of e)t.type===`paragraph`?yield*wA(t):t.type===`table`?yield*TA(t):t.type===`sectionBreak`&&(yield*EA(t.headers),yield*EA(t.footers))}function*OA(e){yield*DA(e.body??[]),yield*EA(e.headers),yield*EA(e.footers);for(let t of[...e.footnotes??[],...e.endnotes??[]])yield*DA(t.content)}function kA(e){let t=new Set;for(let n of OA(e))for(let e of n.fontFamilies){let n=e?.trim();n&&t.add(n)}return[...t]}const AA={...z,...se};function*jA(e){for(let t of OA(e))yield t.text}function MA(e){let t=ne(e.majorFont)??ne(e.minorFont)??null;return[e.majorFont,e.minorFont,...le(jA(e),t)]}function NA(e){return e.trim().toLocaleLowerCase(`en-US`)}function PA(e){return e==null||!Number.isFinite(e)?400:Math.min(900,Math.max(100,Math.round(e/100)*100))}function FA(e){return Object.freeze({...e,diagnostics:Object.freeze([...e.diagnostics])})}function IA(e){return`\"${e.replaceAll(`\\\\`,`\\\\\\\\`).replaceAll(`\"`,`\\\\\"`)}\"`}function LA(e,t){return`${IA(e)}, ${t}`}function RA(e,t={}){let n={embedded:0,local:1,google:2,substitute:3},r=e.filter(e=>e.requestedFamily.trim()&&e.resolvedFamily.trim()).map(e=>Object.freeze({...e,weight:PA(e.weight),style:e.style??`normal`})).sort((e,t)=>NA(e.requestedFamily).localeCompare(NA(t.requestedFamily))||n[e.source]-n[t.source]||e.resolvedFamily.localeCompare(t.resolvedFamily)||e.weight-t.weight||e.style.localeCompare(t.style)),i=new Map;for(let e of r){let t=NA(e.requestedFamily);i.set(t,[...i.get(t)??[],e])}let a=Object.freeze(Object.fromEntries(Object.entries(t.nativeFamilyLists??{}).filter(([e,t])=>e.trim()&&t.trim()).map(([e,t])=>[NA(e),t]).sort(([e],[t])=>e.localeCompare(t)))),o=Eu(`fonts`,{faces:r,nativeFamilyLists:a});return Object.freeze({fingerprint:o,resolve(e){let t=e.requestedFamily?.trim()||e.genericFamily||`sans-serif`,n=PA(e.weight),r=e.style??`normal`,o=(i.get(NA(t))??[]).find(e=>e.weight===n&&e.style===r);if(o){let i=o.source===`substitute`?[{code:`UNSUPPORTED_FEATURE`,severity:`warning`,message:`ECMA-376 §17.8.2 implementation-dependent font substitution: ${t} resolved to ${o.resolvedFamily}`}]:[],a=LA(o.resolvedFamily,e.genericFamily??`sans-serif`);return FA({requestedFamily:t,resolvedFamily:o.resolvedFamily,route:B(a,`registered`),source:o.source,weight:n,style:r,diagnostics:i,genericFamily:e.genericFamily??`sans-serif`})}let s=e.genericFamily??`sans-serif`,c=e.requestedFamily?.trim();return FA(c?{requestedFamily:t,resolvedFamily:c,route:B(a[NA(c)]??LA(c,s),`native`),source:`native`,weight:n,style:r,diagnostics:[],genericFamily:s}:{requestedFamily:t,resolvedFamily:s,route:B(s,`generic`),source:`generic`,weight:n,style:r,diagnostics:[],genericFamily:s})}})}function zA(e,t){let n=jf(t.localMetrics),r=Object.freeze(Object.fromEntries(Object.entries(e.fontFamilyCharsets).map(([e,t])=>[e.trim().toLowerCase(),t]))),i=e=>e.trim().replace(/^(['\"])(.*)\\1$/,`$2`),a=e=>i(e).toLocaleLowerCase(`en-US`),o=e=>{let t=e.style.trim().toLocaleLowerCase(`en-US`);return t===`normal`||t===`italic`?t:null},s=e=>{let t=e.weight.trim().toLocaleLowerCase(`en-US`);if(t===`normal`)return 400;if(t===`bold`)return 700;if(!/^\\d+$/.test(t))return null;let n=Number(t);return n>=100&&n<=900?n:null},c=e=>e.flatMap(e=>{if(e.status!==`loaded`)return[];let t=s(e),n=o(e);return t==null||n==null?[]:[{family:a(e.family),displayFamily:i(e.family),weight:t,style:n}]}),l=new Map(c(t.embeddedFaces??[]).map(e=>[`${e.family}:${e.weight}:${e.style}`,e])),u=e.fonts.embeddedFonts.flatMap(e=>{let t=e.style===`bold`||e.style===`boldItalic`?700:400,n=e.style===`italic`||e.style===`boldItalic`?`italic`:`normal`,r=l.get(`${a(e.fontName)}:${t}:${n}`);return r?[{requestedFamily:e.fontName,resolvedFamily:r.displayFamily,source:`embedded`,weight:t,style:n}]:[]});for(let[e,t]of Object.entries(n))u.push({requestedFamily:t.requestedFamily??e,resolvedFamily:t.family,source:`local`,weight:t.weight??400,style:t.style??`normal`});if(t.useGoogleFonts){let n=c(t.googleFaces??[]),r=new Set;for(let t of e.fonts.preloadNames){if(!t)continue;let e=t.toLocaleLowerCase(`en-US`);if(r.has(e))continue;r.add(e);let i=AA[e],o=i?.loadFamily??t;if(i)for(let e of n.filter(e=>e.family===a(o)))u.push({requestedFamily:t,resolvedFamily:e.displayFamily,source:a(o)===a(t)?`google`:`substitute`,weight:e.weight,style:e.style})}}let d=t.measureContext,f=[...new Set([...Object.keys(e.fonts.familyClasses),...Object.keys(e.fonts.familyPitches),...e.fonts.renderedFamilies,...e.fonts.majorFamily?[e.fonts.majorFamily]:[],...e.fonts.minorFamily?[e.fonts.minorFamily]:[]])],p=If({fonts:RA(u,{nativeFamilyLists:Object.fromEntries(f.map(t=>[t,wh(t,e.fonts.familyClasses,e.fonts.familyPitches)]))}),localMetrics:n,eastAsiaFontCharsets:r,genericFamilies:Object.fromEntries(f.map(t=>[t,kf(t,e.fonts.familyClasses,e.fonts.familyPitches)])),measurer:{fingerprint:d?`canvas-text-metrics-v1`:`deterministic-text-metrics-v1`,measure(e){if(!d)return{advancePt:[...e.text].length*e.fontSizePt*.5,ascentPt:e.fontSizePt*.8,descentPt:e.fontSizePt*.2};let t=d.font,n=d.letterSpacing,r=d.fontKerning;try{d.font=V(e.fontRoute,e.fontSizePt,e.weight,e.style),d.letterSpacing=`${e.letterSpacingPt}px`,e.kerning!=null&&(d.fontKerning=e.kerning?`normal`:`none`);let t=d.measureText(e.text),n=Number.isFinite(t.actualBoundingBoxLeft)&&Number.isFinite(t.actualBoundingBoxRight),r={xMinPt:n?-t.actualBoundingBoxLeft:0,xMaxPt:n?t.actualBoundingBoxRight:t.width,ascentPt:t.actualBoundingBoxAscent,descentPt:t.actualBoundingBoxDescent};return{advancePt:t.width,ascentPt:t.fontBoundingBoxAscent??t.actualBoundingBoxAscent??0,descentPt:t.fontBoundingBoxDescent??t.actualBoundingBoxDescent??0,...Object.values(r).every(Number.isFinite)?{inkBounds:r,...n?{horizontalInkBoundsAreTight:!0}:{}}:{}}}finally{d.font=t,d.letterSpacing=n,e.kerning!=null&&(d.fontKerning=r)}}}}),m=t.mathResources??e.mathOccurrences.map(({display:e,source:t})=>({resourceKey:Au(t,e?`display`:`inline`),widthEm:0,ascentEm:0,descentEm:0,available:!1,diagnostics:[{code:`UNSUPPORTED_FEATURE`,severity:`warning`,message:`The optional DOM math engine is unavailable; using the worker-safe text fallback`}]})),h=e.imageMetadata,g=Object.freeze({text:p,images:Qu(h),math:$u(m),verticalGlyphFingerprint:t.verticalGlyphMeasurement.fingerprint}),_=e.mathOccurrences.map(({source:e,display:t})=>Au(e,t?`display`:`inline`)),v=m.map(e=>e.resourceKey),y=_.filter(e=>!v.includes(e)),b=v.filter(e=>!_.includes(e));if(y.length||b.length)throw Error(`Math metadata membership mismatch: missing [${y.join(`, `)}]; extra [${b.join(`, `)}]`);return vd(g,t.mathDrawables??new Map,m.filter(e=>e.available!==!1).map(e=>e.resourceKey)),Dd(g,e.paintResources),md(g,t.verticalGlyphMeasurement),g}function BA(e,t){if(e===null)return null;let n=e.trim(),r=t&&n.endsWith(`%`)?n.slice(0,-1):n;if(r.length===0)return null;let i=Number(r);return Number.isFinite(i)?i:null}function VA(e){return e.value?.trim().endsWith(`%`)?`pct`:e.kind??`dxa`}function HA(e){if(!e)return null;let t=e.value?.trim()??``,n=VA(e);if(n===`dxa`){let t=BA(e.value??`0`,!1);return t===null?null:{kind:`dxa`,value:t/20}}if(n!==`pct`)return null;let r=BA(e.value??`0`,!0);return r===null?null:{kind:`pct`,value:t.endsWith(`%`)?r/100:r/5e3}}function UA(e){let t=HA(e);return t?.kind===`dxa`?t.value:null}function WA(e){return e.widthPt==null?e.widthPct==null?null:{kind:`pct`,value:e.widthPct/5e3}:{kind:`dxa`,value:e.widthPt}}function GA(e,t){let n=e.format.firstRowException?.preferredWidth??null;if(e.format.firstRowException?.preferredWidthAuthored)return n?.kind===`dxa`?n.value>0?n.value:null:n?.kind===`pct`&&n.value>0?n.value*t:null;let r=HA(e.lexical.table?.preferredWidth);return r?.kind===`dxa`?r.value>0?r.value:null:r?.kind===`pct`?r.value>0?r.value*t:null:e.semantic.widthPt!=null&&e.semantic.widthPt>0?e.semantic.widthPt:e.semantic.widthPct!=null&&e.semantic.widthPct>0?e.semantic.widthPct/5e3*t:null}const KA=Object.freeze({pt:`1/1`,in:`72/1`,cm:`3600/127`,mm:`360/127`,pc:`12/1`,pi:`12/1`});function qA(e){let t=e.replace(/[\\u0009\\u000a\\u000d\\u0020]+/g,` `).replace(/^ | $/g,``),n=/^([+-]?)([0-9]+)$/.exec(t);if(!n)return null;let[,r,i]=n;if(r===`-`&&/[1-9]/.test(i))return null;let a=i.replace(/^0+/,``)||`0`;return a.length>20||a.length===20&&a>`18446744073709551615`?null:t}const JA={key:`0/1`,widthPt:0};function YA(e){let t=FD(e);return Number.isFinite(t)?{key:e,widthPt:t}:JA}function XA(e,t){let n=Number(e);if(!Number.isFinite(n))return JA;let r=MD(n),i=r===null?0:FD(LD(r,t));return Number.isFinite(i)?{key:null,widthPt:i}:JA}function ZA(e){if(e==null)return JA;let t=qA(e);if(t!==null){let e=jD(t);return e===null?JA:YA(zD(e,20n))}let n=/^([0-9]+(?:\\.[0-9]+)?)(mm|cm|in|pt|pc|pi)$/.exec(e);if(!n)return JA;let r=KA[n[2]],i=jD(n[1]);return i===null?XA(n[1],r):YA(LD(i,r))}function QA(e){let t=e.lexical.table?.grid;if(!t){let t=e.semantic.colWidths.map(e=>Number.isFinite(e)&&e>=0?{widthPt:e,key:MD(e)??`0/1`}:JA);return{widthsPt:t.map(e=>e.widthPt),widthKeys:t.map(e=>e.key)}}let n=Math.max(t.requiredColumnCount,t.columns.length),r=Array.from({length:n},(e,n)=>ZA(t.columns[n]?.width??null));return{widthsPt:r.map(e=>e.widthPt),widthKeys:r.map(e=>e.key)}}function $A(e,t){let n=HA(e);return n?.kind===`pct`?{kind:`dxa`,value:Math.max(0,n.value)*Math.max(0,t)}:n}function ej(e,t,n,r=t){let i=e.semantic,{widthsPt:a,widthKeys:o}=QA(e),s=e.format.firstRowException?.layout===`fixed`?`fixed`:e.lexical.table?.layout?.kind??i.layout,c=e.lexical.table?.grid.authored?e.lexical.table.grid.columns.length:null,l=i.rows.map(e=>{let t=Math.max(0,e.gridBefore??0);return c!==null&&t>c?0:t}),u=Math.max(c??0,e.lexical.table?.grid.requiredColumnCount??0,...i.rows.map((e,t)=>(l[t]??0)+e.cells.reduce((e,t)=>e+Math.max(1,t.colSpan),0)));return{layout:s===`fixed`?`fixed`:`autofit`,availableWidthPt:r===null?null:Math.max(0,r),gridWidthsPt:a,gridWidthKeys:o,tablePreferredWidthPt:GA(e,t),rows:i.rows.map((r,i)=>{let o=e.lexical.rows[i],d=l[i]??0,f=Math.max(0,r.gridAfter??0),p=d+r.cells.reduce((e,t)=>e+Math.max(1,t.colSpan),0),m=c!==null&&p+f>u?0:f,h=d;return{before:d>0?{columnSpan:d,preferredWidth:$A(o?.row?.beforeWidth,t)}:null,after:m>0?{columnSpan:m,preferredWidth:$A(o?.row?.afterWidth,t)}:null,cells:r.cells.map((t,r)=>{let c=o?.cells[r]??null,l=Math.max(1,t.colSpan),u=s===`fixed`?{minWidthPt:0,maxWidthPt:0}:n(i,r),d=HD(e.format.rows[i]?.cellSpacingPt??0,h,l,a.length),f=d.startPt+d.endPt,p={columnStart:h,columnSpan:l,preferredWidth:HA(c?.preferredWidth)??WA(t),minContentWidthPt:Math.max(0,u.minWidthPt)+f,maxContentWidthPt:Math.max(u.minWidthPt,u.maxWidthPt)+f};return h+=l,p})}})}}const tj=new WeakSet;function nj(e){return typeof e==`object`&&!!e&&tj.has(e)}function rj(e,t,n){let r=Object.keys(e).sort(),i=[...t].sort();if(r.length!==i.length||r.some((e,t)=>e!==i[t]))throw TypeError(`${n} has unexpected fields: ${r.join(`,`)}`)}function ij(e,t,n){let r=[...t].filter(t=>!e.has(t)),i=[...e].filter(e=>!t.has(e));if(r.length!==0||i.length!==0)throw TypeError(`${n} membership mismatch; missing=${r.join(`,`)} extra=${i.join(`,`)}`)}function aj(e,t){let n=e=>{e&&t.storyRoot(e)},r=e=>{if(e.story!==`body`||e.storyInstance!==`body`||e.path.length!==1||t.body[e.path[0]]===void 0)throw TypeError(`Unknown body layout occurrence source: ${Du(e)}`)},i=e=>{for(let t of[e.headers.default,e.headers.first,e.headers.even,e.footers.default,e.footers.first,e.footers.even])n(t)};if(e.source.story!==`body`||e.source.storyInstance!==`body`||e.source.path.length!==0)throw TypeError(`Body layout input requires the canonical body root`);i(e.initialSection);for(let n of e.sequence)if(r(n.kind===`body-block`?n.block.source:n.source),n.kind===`body-block`){if(t.resolve(n.block.source).type!==n.block.kind)throw TypeError(`Body layout block source kind mismatch`)}else if(n.kind===`adjacent-table-group`){for(let e of n.tables)if(t.resolve(e.source).type!==`table`)throw TypeError(`Adjacent table source kind mismatch`)}else n.kind===`begin-section`&&i(n.section)}function oj(e,t,n,r,i){let a=new Set,o=new Map,s=new Set,c=new Set,l=new Map,u=(e,t=`image`)=>{if(a.has(e))throw TypeError(`Duplicate canonical image resource: ${e}`);a.add(e),o.set(e,t)};for(let n of t.paragraphs){let t=e.resolve(n.source);if(t.type===`paragraph`){if(n.publicAnchorBridges.length!==t.runs.length)throw TypeError(`Paragraph anchor bridge cardinality mismatch: ${Du(n.source)}`);t.numbering?.picBulletImagePath&&u(ku(n.source,t.numbering.picBulletImagePath),`picture-bullet`),t.runs.forEach((e,t)=>{let r={...n.source,path:[...n.source.path,t]};if(e.type===`image`&&u(ku(r,e.imagePath)),e.type===`chart`){if(s.has(e.resourceKey))throw TypeError(`Duplicate canonical chart resource: ${e.resourceKey}`);s.add(e.resourceKey)}if(e.type===`math`){if(c.has(e.resourceKey))throw TypeError(`Duplicate canonical math resource: ${e.resourceKey}`);c.add(e.resourceKey),l.set(e.resourceKey,Du(e.source))}if(e.type===`shape`&&e.textBoxInput?.kind===`compatibility`)for(let t of e.textBoxInput.paragraphs)t.image&&u(ku({...t.source,path:[...t.source.path,0]},t.image.imagePath));e.type===`shape`&&e.fill?.fillType===`image`&&u(ku(r,e.fill.imagePath))})}}let d=new Set(r.map(e=>e.resourceKey));if(d.size!==r.length)throw TypeError(`Duplicate image metadata resource`);ij(d,a,`Image metadata`);let f=new Set;for(let e of n){if(f.has(e.resourceKey))throw TypeError(`Duplicate math occurrence resource`);if(f.add(e.resourceKey),l.get(e.resourceKey)!==Du(e.source))throw TypeError(`Math occurrence source mismatch: ${e.resourceKey}`)}ij(f,c,`Math occurrence`);let p=new Set,m=new Set,h=new Set,g=new Set;for(let e of i){if(p.has(e.resourceKey))throw TypeError(`Duplicate paint resource descriptor`);if(p.add(e.resourceKey),e.kind===`image`||e.kind===`picture-bullet`){if(m.add(e.resourceKey),o.get(e.resourceKey)!==e.kind)throw TypeError(`Image paint resource kind mismatch: ${e.resourceKey}`)}else e.kind===`chart`?h.add(e.resourceKey):g.add(e.resourceKey)}ij(p,new Set([...a,...s,...c]),`Paint resource`),ij(m,a,`Image paint resource`),ij(h,s,`Chart paint resource`),ij(g,c,`Math paint resource`)}function sj(e,t){let n=uj(e.blockRepository);aj(t,n),Iu(e.acquisitionFacts,`layout source acquisition facts`),Iu(e.section,`layout source section`),Iu(e.documentLayoutFacts,`layout source document facts`),Iu(e.fonts,`layout source font facts`),Iu(e.fontFamilyCharsets,`layout source font charsets`),Iu(e.mathOccurrences,`layout source math facts`),Iu(e.imageMetadata,`layout source image facts`),Iu(e.paintDescriptors,`layout source paint descriptors`),e.fatalParse&&Iu(e.fatalParse,`layout source fatal parse fact`);for(let[t,r]of[[`block repository`,n],[`body blocks`,n.body],[`footnotes`,n.footnotes],[`endnotes`,n.endnotes],[`acquisition facts`,e.acquisitionFacts],[`paragraph facts`,e.acquisitionFacts.paragraphs],[`table facts`,e.acquisitionFacts.tables],[`section`,e.section],[`document facts`,e.documentLayoutFacts],[`font facts`,e.fonts],[`math facts`,e.mathOccurrences],[`image facts`,e.imageMetadata],[`paint descriptors`,e.paintDescriptors]])if(!Object.isFrozen(r))throw TypeError(`Layout source ${t} must be sealed`);let r=new Map;for(let t of e.acquisitionFacts.paragraphs){rj(t,[`source`,`publicAnchorBridges`,`numberingMarkerFallbackFontSizePt`],`Paragraph acquisition fact`);let e=Du(t.source);if(r.has(e))throw TypeError(`Duplicate paragraph acquisition source: ${e}`);r.set(e,t)}let i=new Set,a=new WeakMap;for(let t of e.acquisitionFacts.tables){rj(t,[`source`,`input`],`Table acquisition fact`);let e=Du(t.source);if(i.has(e))throw TypeError(`Duplicate table acquisition source: ${e}`);i.add(e);let r=n.resolve(t.source);if(r.type!==`table`)throw TypeError(`Table acquisition fact must identify a table`);a.set(r,t)}for(let e of n.sources){let t=n.resolve(e),a=Du(e);if(t.type===`paragraph`&&!r.has(a))throw TypeError(`Missing paragraph acquisition source: ${a}`);if(t.type===`table`&&!i.has(a))throw TypeError(`Missing table acquisition source: ${a}`)}oj(n,e.acquisitionFacts,e.mathOccurrences,e.imageMetadata,e.paintDescriptors);let o=new WeakMap;for(let t of e.acquisitionFacts.paragraphs){let e=n.resolve(t.source);if(e.type!==`paragraph`)throw TypeError(`Paragraph acquisition fact must identify a paragraph`);for(let t of e.runs){if(t.type!==`shape`||t.textBoxInput?.kind!==`complete`)continue;let e;try{e=n.storyRoot(t.textBoxInput.source)}catch(e){throw TypeError(`Missing complete text-box story source: ${Du(t.textBoxInput.source)}`,{cause:e})}if(e.length!==t.textBoxInput.blockCount)throw TypeError(`Complete text-box block count mismatch: ${Du(t.textBoxInput.source)}`)}if(e.numbering&&e.numberingMarkerShapeInput&&t.numberingMarkerFallbackFontSizePt!==null){let n=o.get(e.numbering);n||(n=new Map,o.set(e.numbering,n)),n.set(t.numberingMarkerFallbackFontSizePt,e.numberingMarkerShapeInput)}}let s=Object.freeze({numberingMarkerShapeInput(e,t){let n=o.get(e)?.get(t);if(n)return n;throw Error(`Unknown numbering marker acquisition input`)},paragraphMarkShapeInput(e){return e.paragraphMarkShapeInput},tableFormatInput(e){let t=a.get(e);if(!t)throw Error(`Unknown table acquisition input`);return t.input.format},tableColumnLayoutInput(e,t,n,r){let i=a.get(e);if(!i)throw Error(`Unknown table acquisition input`);return ej(i.input,t,(t,r)=>n(e.rows[t].cells[r]),r)},tableParticipatesInOrdinaryFlow(e){let t=a.get(e);if(!t)throw Error(`Unknown table acquisition input`);return t.input.format.ordinaryFlow},paragraphAcquisitionInput(e,t){if(!r.get(Du(t)))throw Error(`Unknown paragraph acquisition source: ${Du(t)}`);let i=n.resolve(t);if(i.type!==`paragraph`)throw Error(`Paragraph source kind mismatch: ${Du(t)}`);return i}}),c=Object.freeze({acquisitionInputs:s,effectiveTablePositioning(e){let t=a.get(e);if(!t)throw Error(`Unknown table acquisition input`);return t.input.format.positioning===null?null:e.tblpPr??null},publicAnchorBridge(e,t){let n=r.get(Du(e));if(!n)throw Error(`Unknown paragraph acquisition source: ${Du(e)}`);if(!Number.isSafeInteger(t)||t<0||t>=n.publicAnchorBridges.length)throw RangeError(`Unknown paragraph anchor bridge index: ${t}`);return n.publicAnchorBridges[t]??null}}),l=e=>{let t=new Set(e),n=Object.create(null);return Object.defineProperties(n,{size:{get:()=>t.size},has:{value:e=>t.has(e)},entries:{value:()=>t.entries()},keys:{value:()=>t.keys()},values:{value:()=>t.values()},forEach:{value:(e,r)=>{t.forEach(t=>e.call(r,t,t,n))}},[Symbol.iterator]:{value:()=>t[Symbol.iterator]()},[Symbol.toStringTag]:{value:`Set`}}),Object.freeze(n)},u=Object.freeze({...e.documentLayoutFacts,kinsoku:Object.freeze({enabled:e.documentLayoutFacts.kinsoku.enabled,lineStartForbidden:l(e.documentLayoutFacts.kinsoku.lineStartForbidden),lineEndForbidden:l(e.documentLayoutFacts.kinsoku.lineEndForbidden)})}),d=Object.freeze({blocks:n,bodyLayoutInput:t,section:e.section,documentLayoutSettings:u,fonts:e.fonts,fontFamilyCharsets:e.fontFamilyCharsets,mathOccurrences:e.mathOccurrences,imageMetadata:e.imageMetadata,hasPaginationFields:e.hasPaginationFields,requiresDomVerticalGlyphLayout:e.requiresDomVerticalGlyphLayout,fatalParse:e.fatalParse,acquisition:c,paintResources:Ku(e.paintDescriptors)});return tj.add(d),d}function cj(e){let{bodyLayoutInput:t,...n}=e;return sj(n,Iu(t,`layout source body input`))}function lj(e){return`${e.story}:${e.storyInstance}`}function uj(e){Iu(e.body,`layout source body blocks`),Iu(e.stories,`layout source story blocks`),Iu(e.footnotes,`layout source footnotes`),Iu(e.endnotes,`layout source endnotes`);let t=new Map;for(let{source:n,body:r}of e.stories){if(n.path.length!==0)throw TypeError(`Story repository roots require an empty source path`);if(n.story!==`header`&&n.story!==`footer`&&n.story!==`textbox`)throw TypeError(`Unsupported repository story kind: ${n.story}`);let e=lj(n);if(t.has(e))throw TypeError(`Duplicate story source: ${e}`);t.set(e,r)}let n=(e,t)=>{let n=new Map;for(let r of e){if(n.has(r.id))throw TypeError(`Duplicate ${t} story source: ${r.id}`);n.set(r.id,r.content)}return n},r=n(e.footnotes,`footnote`),i=n(e.endnotes,`endnote`),a=n=>{if(n.path.length!==0)throw Error(`Story lookup requires a root-only source`);if(n.story===`body`&&n.storyInstance===`body`)return e.body;if(n.story===`footnote`){let e=r.get(n.storyInstance);if(e)return e}if(n.story===`endnote`){let e=i.get(n.storyInstance);if(e)return e}let a=t.get(lj(n));if(a)return a;throw Error(`Unknown ${n.story} story source: ${n.storyInstance}`)},o=new Map,s=[],c=(e,t,n=[])=>{e.forEach((e,r)=>{let i=[...n,r];if(e.type!==`paragraph`&&e.type!==`table`)return;let a={...t,path:i},l=Du(a);if(o.has(l))throw TypeError(`Duplicate block source: ${l}`);o.set(l,e),s.push(Object.freeze({...a,path:Object.freeze([...i])})),e.type===`table`&&e.rows.forEach((e,n)=>e.cells.forEach((e,r)=>{c(e.content,t,[...i,n,r])}))})};c(e.body,{story:`body`,storyInstance:`body`,path:[]});for(let{source:t,body:n}of e.stories)c(n,t);for(let t of e.footnotes)c(t.content,{story:`footnote`,storyInstance:t.id,path:[]});for(let t of e.endnotes)c(t.content,{story:`endnote`,storyInstance:t.id,path:[]});return Object.freeze({body:e.body,footnotes:e.footnotes,endnotes:e.endnotes,sources:Object.freeze(s),resolve(e){let t=o.get(Du(e));if(!t)throw Error(`Unknown block source: ${Du(e)}`);return t},storyRoot:a})}function dj(e){let t=new Set((e.embeddedFonts??[]).map(e=>{let t=e.style===`bold`||e.style===`boldItalic`?700:400,n=e.style===`italic`||e.style===`boldItalic`?`italic`:`normal`;return`${fu(e.fontName)}:${t}:${n}`})),n=[],r=new Set,i=e=>{let i=e?.trim();if(!i)return;let a=fu(i);if(!(a===`meiryo`||i===`メイリオ`))return;let o=`${a}:400:normal`;t.has(o)||r.has(o)||(r.add(o),n.push({family:i,localNames:[`Meiryo`],lineHeightMultiplier:1.3}))};for(let t of OA(e))if(!(t.bold||t.italic))for(let e of t.fontFamilies)i(e);return n}function fj(e){return gu(dj(e))}function pj(e){let t=e.__typographyAcquisition;if(t!==void 0)return Fu({sourceText:`text`in e?e.text:e.fallbackText,...t},`DOCX run typography acquisition input`)}function mj(e){let t=e.__paragraphTypographyAcquisition;if(t!==void 0)return Fu(t,`DOCX paragraph typography acquisition input`)}function hj(e,t){let n=t[0].logicalTotalRows,r=0;for(let i of t){if(i.logicalTotalRows!==n||!Number.isInteger(i.rowCount)||i.rowCount<0||i.logicalRowOffset!==r)throw Error(`Parser-owned adjacent table sequence ${e} is inconsistent`);r+=i.rowCount}if(r!==n)throw Error(`Parser-owned adjacent table sequence ${e} is incomplete`)}function gj(e){let t=[],n=null,r=[],i=()=>{r.length>0&&hj(n,r),r.length===1?t.push(Object.freeze({kind:`body-element`,element:r[0].element})):r.length>1&&t.push(Object.freeze({kind:`adjacent-table-group`,logicalSequenceId:n,tables:Object.freeze(r.map(e=>e.element))})),n=null,r=[]};for(let{element:a,table:o}of e){if(a.type===`table`&&o!==null){r.length>0&&n!==o.logicalSequenceId&&i(),n=o.logicalSequenceId,r.push(Object.freeze({element:a,logicalRowOffset:o.logicalRowOffset,logicalTotalRows:o.logicalTotalRows,rowCount:o.rowCount}));continue}i(),t.push(Object.freeze({kind:`body-element`,element:a}))}return i(),Object.freeze(t)}function _j(e){switch(e){case`continuous`:case`nextColumn`:case`nextPage`:case`oddPage`:case`evenPage`:return e;default:return`nextPage`}}function vj(e,t,n){let r=n===null?null:`section:${n}`,i=n=>e[n]===null?null:{story:t,storyInstance:r===null?n:`${r}:${n}`,path:[]};return Object.freeze({default:i(`default`),first:i(`first`),even:i(`even`)})}function yj(e){return{...e.geometry,titlePage:e.titlePage,evenAndOddHeaders:!1,sectionStart:e.startType,columns:e.columns,textDirection:e.textDirection,docGridType:e.docGridType,docGridLinePitch:e.docGridLinePitch,docGridCharSpace:e.docGridCharSpace,pageNumType:e.pageNumType,vAlign:e.vAlign,lineNumbering:e.lineNumbering}}function bj(e,t){let n=e.markerBodyIndex;return Object.freeze({sectionOccurrenceId:e.sectionOccurrenceId,source:Object.freeze(n===null?{story:`body`,storyInstance:`body`,path:Object.freeze([])}:{story:`body`,storyInstance:`body`,path:Object.freeze([n])}),startType:_j(e.startType),context:Object.freeze(W_(yj(e),e.sectionBidi)),pageNumbering:Object.freeze({start:e.pageNumType?.start??null,format:e.pageNumType?.fmt??null}),titlePage:e.titlePage,evenAndOddHeaders:t.evenAndOddHeaders,headers:vj(e.headers,`header`,n),footers:vj(e.footers,`footer`,n),pageBordersAuthored:e.pageBordersAuthored,pageBorders:e.pageBorders,pageLayout:Object.freeze({physicalGeometry:Object.freeze({...e.geometry}),columns:e.columns,textDirection:e.textDirection??`lrTb`,gutterPt:e.gutterPt,rtlGutter:e.rtlGutter,...t.pageLayoutSettings})})}function xj(e){let t=new Map(e.sectionIndex.occurrences.map(t=>[t.sectionOccurrenceId,bj(t,e)])),n=e.sectionIndex.occurrences[0];if(!n)throw Error(`DOCX body requires a final section owner`);let r=t.get(n.sectionOccurrenceId),i=e.sequence.map(e=>{if(e.kind!==`begin-section`)return e;let n=t.get(e.section.sectionOccurrenceId);if(!n)throw Error(`Missing body section owner: ${e.section.sectionOccurrenceId}`);return Object.freeze({...e,section:n})});return Fu({source:{story:`body`,storyInstance:`body`,path:[]},initialSection:r,sequence:i.map((e,t)=>{if(e.kind!==`body-block`||e.block.kind!==`paragraph`)return e;let n=Gx(i,t);return n===void 0?e:Object.freeze({...e,block:Object.freeze({...e.block,continuousSectionRole:n})})}),parserDiagnostics:e.parserDiagnostics??[],endnoteIds:e.endnoteIds??[],noteLayoutSettings:e.noteLayoutSettings},`DOCX body layout input`)}function Sj(e){return!(e.runs??[]).some(e=>e.type===`text`?e.text.length>0:!0)}const Cj=new WeakMap;function wj(e){return Cj.get(e)??[]}function Tj(e){let t=wj(e);if(t.length===0)return e.runs;let n=[],r=0;for(let i=0;i<=e.runs.length;i+=1){for(;t[r]?.publicRunIndex===i;)n.push(t[r].run),r+=1;i<e.runs.length&&n.push(e.runs[i])}return n}function Ej(e){return wj(e).length>0}function Dj(e){let t=e.__documentTypographySettings?.normalStyleFontSizePt;return Fu({normalStyleFontSizePt:typeof t==`number`&&Number.isFinite(t)&&t>0?t:10},`DOCX document typography settings input`)}function Oj(e){let t=e.__pageLayoutSettings;return Fu({mirrorMargins:t?.mirrorMargins===!0,gutterAtTop:t?.gutterAtTop===!0,bookFoldPrinting:t?.bookFoldPrinting===!0,bookFoldRevPrinting:t?.bookFoldRevPrinting===!0,printTwoOnOne:t?.printTwoOnOne===!0},`DOCX page layout settings input`)}function kj(e){let t=e.__noteLayoutSettings;return Fu({footnotePosition:t?.footnotePosition??`pageBottom`,endnotePosition:t?.endnotePosition??`docEnd`},`DOCX note layout settings input`)}function Aj(e){return Object.freeze(e?Object.fromEntries(Object.entries(e).filter(e=>typeof e[1]==`number`)):{})}function jj(e){return Object.freeze({...e,pageGeometry:Aj(e.pageGeometry)})}const Mj=new WeakMap,Nj=new WeakMap,Pj=new WeakMap,Fj=new WeakMap,Ij=new WeakMap;function Lj(e){let t=Pj.get(e);if(t)return t;let n=Fu({table:e.__tableLayout??null,rows:e.rows.map(e=>({row:e.__tableRowLayout??null,cells:e.cells.map(e=>e.__tableCellLayout??null)}))},`DOCX table acquisition input`);return Pj.set(e,n),n}const Rj=e=>e!=null&&Number.isFinite(e)?e:null;function zj(e){return Fu({colWidths:(e.colWidths??[]).map(e=>Number.isFinite(e)&&e>=0?e:0),layout:e.layout??null,widthPt:Rj(e.widthPt),widthPct:Rj(e.widthPct),rows:e.rows.map(e=>({gridBefore:Rj(e.gridBefore)??0,gridAfter:Rj(e.gridAfter)??0,cells:e.cells.map(e=>({colSpan:Rj(e.colSpan)??1,widthPt:Rj(e.widthPt),widthPct:Rj(e.widthPct)}))}))},`DOCX table column semantic input`)}function Bj(e){let t=Ij.get(e);if(t)return t;let n=Pu({semantic:zj(e),lexical:Lj(e),format:$j(e)});return Ij.set(e,n),n}function Vj(e){return Bj(e).format.ordinaryFlow}function Hj(e){return Bj(e).format.positioning===null?null:e.tblpPr??null}function Uj(e){return{leftFromTextPt:e.leftFromText,rightFromTextPt:e.rightFromText,topFromTextPt:e.topFromText,bottomFromTextPt:e.bottomFromText,horzAnchor:e.horzAnchor,horzSpecified:e.horzSpecified,vertAnchor:e.vertAnchor,xPt:e.tblpX,yPt:e.tblpY,...e.tblpXSpec==null?{}:{xAlign:e.tblpXSpec},...e.tblpYSpec==null?{}:{yAlign:e.tblpYSpec}}}function Wj(e,t){if(e===null)return null;let n=e.trim(),r=t&&n.endsWith(`%`)?n.slice(0,-1):n;if(r.length===0)return null;let i=Number(r);return Number.isFinite(i)?i:null}function Gj(e){let t=Wj(e??null,!1);return t===null?null:t/20}function Kj(e){return e===`exact`||e===`atLeast`?e:`auto`}function qj(e){return{rule:bO(Kj(e.rule),e.ruleAuthored),valuePt:Gj(e.value)}}function Jj(e){if(e.rowHeight===null||!Number.isFinite(e.rowHeight))return null;let t=Kj(e.rowHeightRule);return{rule:t===`auto`?`atLeast`:t,valuePt:e.rowHeight}}function Yj(...e){for(let t of e){if(!t)continue;let e=xO(VA(t),UA(t));if(e!==null)return e}return null}function Xj(e,t,n){if(!e)return null;let r=VA(e);return SO({kind:r,dxaValuePt:r===`dxa`?Gj(e.value??`0`):null,scope:t,edge:n})}function Zj(e,t,n,r,i,a,o){let s=e.bidiVisual===!0,c=(e,t)=>{let n=t===`left`?s?`end`:`start`:s?`start`:`end`;return{width:e?.[t]??e?.[n],edge:n}},l=(e,...t)=>{for(let n of t){let t=Xj(n.width,n.scope,n.edge??e);if(t!==null)return t}return null},u=c(r,`left`),d=c(i,`left`),f=c(a,`left`),p=c(o,`left`),m=c(r,`right`),h=c(i,`right`),g=c(a,`right`),_=c(o,`right`),v=e=>!n&&e!=null&&Number.isFinite(e)?e:null;return{top:l(`top`,{width:r?.top,scope:`cell`})??v(t.marginTop)??l(`top`,{width:i?.top,scope:`exception`},{width:a?.top,scope:`table`},{width:o?.top,scope:`style`})??e.cellMarginTop,bottom:l(`bottom`,{width:r?.bottom,scope:`cell`})??v(t.marginBottom)??l(`bottom`,{width:i?.bottom,scope:`exception`},{width:a?.bottom,scope:`table`},{width:o?.bottom,scope:`style`})??e.cellMarginBottom,left:l(u.edge,{...u,scope:`cell`})??v(t.marginLeft)??l(d.edge,{...d,scope:`exception`},{...f,scope:`table`},{...p,scope:`style`})??e.cellMarginLeft,right:l(m.edge,{...m,scope:`cell`})??v(t.marginRight)??l(h.edge,{...h,scope:`exception`},{...g,scope:`table`},{..._,scope:`style`})??e.cellMarginRight}}function Qj(e){if(!e)return null;let t=e.indent?VA(e.indent):null;return{preferredWidthAuthored:e.preferredWidth!=null,preferredWidth:HA(e.preferredWidth),layout:e.layout?.kind===`fixed`||e.layout?.kind===`autofit`?e.layout.kind:null,justification:e.justification,indentAuthored:e.indent!=null&&(t===`dxa`||t===`nil`),indentPt:t===`nil`?0:UA(e.indent),borders:e.borders}}function $j(e){let t=Fj.get(e);if(t)return t;let n=Lj(e),r=n.table?.ordinaryFlow??e.tblpPr==null,i=e.rows.map((t,r)=>{let i=n.rows[r]?.row??null,a=i?.exception??null;return{height:i?.height?qj(i.height):Jj(t),cantSplit:t.cantSplit===!0,repeatedHeader:t.isHeader===!0,cellSpacingPt:Yj(i?.cellSpacing,a?.cellSpacing,n.table?.cellSpacing,i?.styleCellSpacing)??0,justification:i?.justification??a?.justification??null,exception:Qj(a),cells:t.cells.map((t,o)=>({marginsPt:Zj(e,t,n.rows[r]?.cells[o]!==null&&n.rows[r]?.cells[o]!==void 0,n.rows[r]?.cells[o]?.margins,a?.cellMargins,n.table?.cellMargins,i?.styleCellMargins)}))}}),a=Fu({effectiveStyleId:n.table?.effectiveStyleId??null,ordinaryFlow:r,logicalSequenceId:n.table?.logicalSequenceId??null,logicalRowOffset:n.table?.logicalRowOffset??0,logicalTotalRows:n.table?.logicalTotalRows??0,positioning:r||e.tblpPr==null?null:Uj(e.tblpPr),rows:i,firstRowException:i[0]?.exception??null},`DOCX table format input`);return Fj.set(e,a),a}function eM(e){return Object.freeze(e.map(e=>{if(e.type!==`table`)return Object.freeze({element:e,table:null});let t=$j(e);return t.logicalSequenceId==null?Object.freeze({element:e,table:null}):Object.freeze({element:e,table:Object.freeze({logicalSequenceId:t.logicalSequenceId,logicalRowOffset:t.logicalRowOffset??0,logicalTotalRows:t.logicalTotalRows??0,rowCount:e.rows.length})})}))}const tM=e=>Object.freeze({story:`body`,storyInstance:`body`,path:Object.freeze([e])}),nM=new Set([`paragraph`,`line`,`character`]);function rM(e,t,n){if(e.type!==`shape`&&e.type!==`image`&&e.type!==`chart`||mM(e)!==void 0||!$p(e.wrapMode)||e.type!==`shape`&&!e.anchor||e.widthPt<=0||e.heightPt<=0)return null;let r=e.anchorXRelativeFrom??(e.anchorXFromMargin?`margin`:`page`),i=e.anchorYRelativeFrom??(e.anchorYFromPara?`paragraph`:`page`),a=`${t.story}:${t.storyInstance}:${t.path.join(`.`)}`;return Object.freeze({occurrenceId:e.type===`shape`?`public-shape:${a}:${n}`:`public-anchor:${a}:${n}`,pageOwned:!nM.has(r)&&!nM.has(i)})}function iM(e,t){let n=new Set([`paragraph`,`line`,`character`]),r=Object.freeze([...new Set(Tj(e).flatMap((e,r)=>{let i=e;if(e.type!==`shape`&&e.type!==`image`&&e.type!==`chart`&&i.type!==`unavailableDrawing`)return[];let a=mM(i);if(!a){let e=i.type===`unavailableDrawing`?null:rM(i,t,r);return e?.pageOwned?[e.occurrenceId]:[]}return a.horizontal.relativeFromStatus!==`valid`||a.vertical.relativeFromStatus!==`valid`||a.horizontal.relativeFrom===null||a.vertical.relativeFrom===null||a.wrap.kind===`none`||n.has(a.horizontal.relativeFrom)||n.has(a.vertical.relativeFrom)?[]:[Mu(t,a.occurrenceId)]}))]);return Object.freeze({kind:`paragraph`,source:t,pageBreakBefore:e.pageBreakBefore===!0,keepLines:e.keepLines===!0,keepNext:e.keepNext===!0,widowControl:e.widowControl!==!1,spaceBeforePt:e.spaceBefore??0,spaceAfterPt:e.spaceAfter??0,contextualSpacing:e.contextualSpacing===!0,styleId:e.styleId??null,inkless:!Ej(e)&&Sj(e),...r.length===0?{}:{pageOwnedAnchorOccurrenceIds:r}})}function aM(e){return Object.freeze({kind:`table`,source:e})}function oM(e,t){let n=0;return Object.freeze(gj(eM(e)).map(e=>{if(e.kind===`adjacent-table-group`){let t=n;return n+=e.tables.length,Object.freeze({kind:`adjacent-table-group`,logicalSequenceId:e.logicalSequenceId,source:tM(t),tables:Object.freeze(e.tables.map((e,n)=>Object.freeze({...aM(tM(t+n)),rowCount:e.rows.length})))})}let r=e.element,i=n,a=tM(i);if(n+=1,r.type===`paragraph`)return r.markVanish===!0&&!Ej(r)&&Sj(r)?Object.freeze({kind:`consume-source`,source:a,reason:`hidden-paragraph`}):Object.freeze({kind:`body-block`,block:iM(r,a)});if(r.type===`table`)return Object.freeze({kind:`body-block`,block:aM(a)});if(r.type===`pageBreak`||r.type===`columnBreak`)return Object.freeze({kind:`authored-break`,source:a,break:r.type===`pageBreak`?`page`:`column`,...r.type===`pageBreak`&&r.parity!==void 0?{parity:r.parity}:{},...r.type===`pageBreak`&&r.sameParagraphAsPrevious===!0?{sameSourceParagraphAsPrevious:!0}:{}});if(r.type===`sectionBreak`)return Object.freeze({kind:`begin-section`,source:a,section:t(i)});throw Error(`Unsupported body layout source at ${i}`)}))}function sM(e,t,n,r=t){return ej(Bj(e),t,(t,r)=>n(e.rows[t].cells[r]),r)}function cM(e,t,n){if(!t||typeof t!=`object`)return;let r=Nj.get(e);r||(r=new WeakMap,Nj.set(e,r)),r.set(t,n)}function lM(e){let t=new Map,n=0;e.body.forEach((e,r)=>{if(e.type!==`sectionBreak`)return;let i=e.__sectionPlacement;t.set(r,Fu({sectionId:i?.sectionId??`section:${n}`,sectionBidi:i?.sectionBidi===!0,vAlign:i?.vAlign??null,lineNumbering:i?.lineNumbering??null,docGridType:i?.docGridType??null,docGridLinePitch:i?.docGridLinePitch??null,docGridCharSpace:i?.docGridCharSpace??null,gutterPt:i?.gutterPt??null,rtlGutter:i?.rtlGutter??null,pageBordersAuthored:i?.pageBordersAuthored??!1,pageBorders:i?.pageBorders??null,pageGeometry:i?.pageGeometry??e.geom??{}},`DOCX ending-section placement input`)),n+=1});let r=e.section?.__sectionPlacement;return Object.freeze({endingSections:t,finalSection:Fu({sectionId:r?.sectionId??`section:${n}`,sectionBidi:r?.sectionBidi===!0,vAlign:r?.vAlign??e.section?.vAlign??null,lineNumbering:r?.lineNumbering??e.section?.lineNumbering??null,docGridType:r?.docGridType??e.section?.docGridType??null,docGridLinePitch:r?.docGridLinePitch??e.section?.docGridLinePitch??null,docGridCharSpace:r?.docGridCharSpace??e.section?.docGridCharSpace??null,gutterPt:r?.gutterPt??null,rtlGutter:r?.rtlGutter??null,pageBordersAuthored:r?.pageBordersAuthored??e.section?.pageBorders!=null,pageBorders:r?.pageBorders??e.section?.pageBorders??null,pageGeometry:r?.pageGeometry??(e.section?H_(e.section):{})},`DOCX final-section placement input`)})}const uM=Object.freeze({default:null,first:null,even:null});function dM(e){let t=[],n=lM(e),r=0;e.body.forEach((e,i)=>{if(e.type!==`sectionBreak`)return;let a=n.endingSections.get(i)??n.finalSection,o=t.length;t.push({sectionOccurrenceId:a.sectionId,ordinal:o,startBodyIndex:r,endBodyIndex:i,markerBodyIndex:i,final:!1,startType:e.kind??`nextPage`,columns:e.columns??null,authoredGeometry:Aj(a.pageGeometry),textDirection:e.textDirection??null,pageNumType:e.pageNumType??null,headers:e.headers??uM,footers:e.footers??uM,titlePage:e.titlePage??!1,sectionBidi:a.sectionBidi,vAlign:a.vAlign,lineNumbering:a.lineNumbering,docGridType:a.docGridType,docGridLinePitch:a.docGridLinePitch,docGridCharSpace:a.docGridCharSpace,authoredGutterPt:a.gutterPt,rtlGutter:a.rtlGutter===!0,pageBordersAuthored:a.pageBordersAuthored,pageBorders:a.pageBorders,placement:jj(a)}),r=i+1});let i=n.finalSection;t.push({sectionOccurrenceId:i.sectionId,ordinal:t.length,startBodyIndex:r,endBodyIndex:e.body.length-1,markerBodyIndex:null,final:!0,startType:e.section.sectionStart??`nextPage`,columns:e.section.columns??null,authoredGeometry:i.pageGeometry==null?H_(e.section):Aj(i.pageGeometry),textDirection:e.section.textDirection??null,pageNumType:e.section.pageNumType??null,headers:e.headers??uM,footers:e.footers??uM,titlePage:e.section.titlePage,sectionBidi:i.sectionBidi,vAlign:i.vAlign,lineNumbering:i.lineNumbering,docGridType:i.docGridType,docGridLinePitch:i.docGridLinePitch,docGridCharSpace:i.docGridCharSpace,authoredGutterPt:i.gutterPt,rtlGutter:i.rtlGutter===!0,pageBordersAuthored:i.pageBordersAuthored,pageBorders:i.pageBorders,placement:jj(i)});let a=Array(t.length),o=H_(e.section),s=null,c=null;for(let e=t.length-1;e>=0;--e){let n=t[e],r=n.startType===`continuous`&&s!==null?s:o,i=n.authoredGeometry,l={pageWidth:i.pageWidth??r.pageWidth,pageHeight:i.pageHeight??r.pageHeight,marginTop:i.marginTop??r.marginTop,marginRight:i.marginRight??r.marginRight,marginBottom:i.marginBottom??r.marginBottom,marginLeft:i.marginLeft??r.marginLeft,headerDistance:i.headerDistance??r.headerDistance,footerDistance:i.footerDistance??r.footerDistance},u=n.authoredGutterPt??(n.startType===`continuous`?c:null)??0,{authoredGeometry:d,authoredGutterPt:f,...p}=n;a[e]={...p,geometry:l,gutterPt:u},s=l,c=u}return Fu({bodyLength:e.body.length,occurrences:a},`DOCX body section index input`)}function fM(e){let t=dM(e),n=new Map;for(let e of t.occurrences)e.startBodyIndex!==0&&n.set(e.startBodyIndex-1,e);let r=oM(e.body,e=>{let t=n.get(e);if(!t)throw Error(`Missing incoming body section at ${e}`);return Object.freeze({sectionOccurrenceId:t.sectionOccurrenceId,startType:t.startType})});return Fu({sectionIndex:t,evenAndOddHeaders:e.section.evenAndOddHeaders,endnoteIds:(e.endnotes??[]).map(e=>e.id),noteLayoutSettings:kj(e),pageLayoutSettings:Oj(e),parserDiagnostics:sf(e.diagnostics,e.body.length),sequence:r},`DOCX body layout acquisition input`)}function pM(e){let t=e.textPath;if(t)return Fu({string:t.string,...t.fontFamily===void 0?{}:{fontFamily:t.fontFamily},bold:t.bold??!1,italic:t.italic??!1,...t.textPathOk===void 0?{}:{textPathOk:t.textPathOk},...t.on===void 0?{}:{on:t.on},...t.fitShape===void 0?{}:{fitShape:t.fitShape},...t.fitPath===void 0?{}:{fitPath:t.fitPath},...t.trim===void 0?{}:{trim:t.trim},...t.xScale===void 0?{}:{xScale:t.xScale},...t.fontSizePt===void 0?{}:{fontSizePt:t.fontSizePt}},`DOCX VML text path acquisition input`)}function mM(e){let t=e.__anchorAcquisition;if(t!==void 0)return Fu(t,`DOCX anchor acquisition input`)}function hM(e,t){let n=SM(e).fontFacts,r=n?.rtl===!0||n?.cs===!0,i=r?n?.fontSizeCs??n?.fontSize??t:n?.fontSize??t,a=n?.fontFamily??e.fontFamily??null,o={ascii:a,highAnsi:n?.fontFamilyHighAnsi??a,eastAsia:n?.fontFamilyEastAsia??e.fontFamilyEastAsia??a,complexScript:n?.fontFamilyCs??a},s=n?.fontSlots;return Object.freeze({fontSizePt:i,fonts:Object.freeze({...s?.direct??o}),themeFonts:s?.theme?Object.freeze({...s.theme}):void 0,themeFontPresence:s?.themePresent?Object.freeze({...s.themePresent}):void 0,weight:(r?n?.boldCs??!1:n?.bold??!1)?700:400,style:(r?n?.italicCs??!1:n?.italic??!1)?`italic`:`normal`,complexScript:r,fontHint:n?.fontHint,eastAsiaLanguage:n?.langEastAsia,kerning:n?.kerning==null?void 0:i>=n.kerning})}function gM(e,t){let n=e.textBoxContent;return n===void 0?Fu({kind:`compatibility`,source:t,paragraphs:jS(e,t,hM)},`DOCX public text box acquisition input`):Fu({kind:`complete`,source:t,blockCount:n.length},`DOCX complete text box acquisition input`)}function _M(e){let t=CM(e).paragraphMarkFontFacts;if(!t)return;let n=t.rtl===!0||t.cs===!0,r=e.runs.find(e=>e.type===`text`||e.type===`field`)?.fontSize??e.defaultFontSize??10,i=n?t.fontSizeCs??t.fontSize??r:t.fontSize??r,a=t.fontFamily??e.defaultFontFamily??null,o={ascii:a,highAnsi:t.fontFamilyHighAnsi??a,eastAsia:t.fontFamilyEastAsia??e.defaultFontFamilyEastAsia??a,complexScript:t.fontFamilyCs??a};return Object.freeze({fontSizePt:i,fonts:Object.freeze({...t.fontSlots?.direct??o}),themeFonts:t.fontSlots?.theme?Object.freeze({...t.fontSlots.theme}):void 0,themeFontPresence:t.fontSlots?.themePresent?Object.freeze({...t.fontSlots.themePresent}):void 0,weight:(n?t.boldCs??!1:t.bold??!1)?700:400,style:(n?t.italicCs??!1:t.italic??!1)?`italic`:`normal`,complexScript:n,fontHint:t.fontHint,eastAsiaLanguage:t.langEastAsia,kerning:t.kerning==null?void 0:i>=t.kerning})}function vM(e,t){let n=e,{layoutLines:r,lineSlice:i,runs:a,paragraphMarkFontFacts:o,__paragraphTypographyAcquisition:s,__complexFieldBoundaries:c,...l}=e,u=mj(n),d=e.__complexFieldBoundaries?.map(e=>({occurrenceKey:[`complex-field`,t.story,t.storyInstance,t.path.slice(0,-1).join(`.`),String(e.occurrenceId)].join(`:`),boundary:e.boundary,runIndex:e.runIndex,fieldType:e.fieldType,instruction:e.instruction,...e.hyperlinkAnchor===void 0?{}:{hyperlinkAnchor:e.hyperlinkAnchor}})),f=l.numbering,p=f==null?null:(({fontFacts:e,...t})=>t)(f),m=structuredClone({...l,numbering:p}),h=wj(n),g=[];if(h.length===0)n.runs.forEach((e,t)=>{g.push({run:e,originalRun:n.runs[t]})});else{let e=0;for(let t=0;t<=n.runs.length;t+=1){for(;h[e]?.publicRunIndex===t;){let t=h[e].run;g.push({run:t,originalRun:t}),e+=1}t<n.runs.length&&g.push({run:n.runs[t],originalRun:n.runs[t]})}}let _=g.map(({run:e,originalRun:n},r)=>{let i=e;if(i.type===`unavailableDrawing`){let e=mM(n),r=e===void 0?void 0:Fu({...e,occurrenceId:Mu(t,e.occurrenceId)},`DOCX scoped unavailable drawing anchor acquisition input`),{__anchorAcquisition:a,...o}=i;return Object.freeze({...o,...r===void 0?{}:{anchorAcquisitionInput:r}})}if(e.type===`math`){let n=Object.freeze({...t,path:Object.freeze([...t.path,r])}),i=e;return Object.freeze({type:`math`,display:e.display,fontSize:e.fontSize,...e.jc===void 0?{}:{jc:e.jc},source:i.source??n,resourceKey:i.resourceKey??Au(n,e.display?`display`:`inline`),fallbackText:Om(e.nodes)})}if(e.type===`anchorHost`){let{__anchorOccurrenceId:n,...r}=e;return Object.freeze({...r,...n===void 0?{}:{anchorOccurrenceId:Mu(t,n)}})}if(e.type===`shape`||e.type===`image`||e.type===`chart`){let i=mM(n),a=i===void 0?void 0:Fu({...i,occurrenceId:Mu(t,i.occurrenceId)},`DOCX scoped anchor acquisition input`),{__anchorAcquisition:o,...s}=e;if(e.type!==`shape`){let n=e.type===`chart`?(({chart:e,...n})=>({...n,resourceKey:ju({...t,path:[...t.path,r]})}))(s):s;return Object.freeze({...structuredClone(n),...a===void 0?{}:{anchorAcquisitionInput:a}})}let c=n,l=pM(c),u=Object.freeze({...t,path:Object.freeze([...t.path,r])}),d=gM(c,{story:`textbox`,storyInstance:`${u.story}:${u.storyInstance}:${u.path.join(`.`)}`,path:[]}),{textBoxContent:f,textBlocks:p,textPath:m,...h}=s;return Object.freeze({type:`shape`,...structuredClone(h),...l===void 0?{}:{vmlTextPathInput:l},...(d.kind===`complete`?d.blockCount:d.paragraphs.length)===0?{}:{textBoxInput:d},...a===void 0?{}:{anchorAcquisitionInput:a}})}if(e.type===`text`||e.type===`field`){let t=pj(n),{__typographyAcquisition:r,...i}=e;return Object.freeze({...structuredClone(i),...t===void 0?{}:{typographyInput:t}})}return Object.freeze(structuredClone(e))});return Pu({...m,runs:_,...d?.length?{complexFieldBoundaries:d}:{},numberingMarkerShapeInput:e.numbering?hM(e.numbering,n.runs.find(e=>e.type===`text`||e.type===`field`)?.fontSize??e.defaultFontSize??10):void 0,paragraphMarkShapeInput:_M(e),...u===void 0?{}:{typographyInput:u}})}function yM(e){return xM(e,!1)}function bM(e){return xM(e,!0)}function xM(e,t){let n=[],r=(e,a,o,s)=>{if(e.type===`paragraph`){let i=!1,c=[],l=[],u=e.runs.some(e=>e.type===`unavailableDrawing`);Tj(e).forEach((e,d)=>{if(e.type===`unavailableDrawing`){l.push(Object.freeze({publicRunIndex:c.length,run:Fu(e,`DOCX unavailable drawing parser sidecar`)})),u&&(i=!0);return}if(e.type===`math`){i=!0;let t=Object.freeze({story:a,storyInstance:o,path:Object.freeze([...s,d])}),r=Au(t,e.display?`display`:`inline`);n.push(Object.freeze({nodes:e.nodes,display:e.display,source:t,resourceKey:r})),c.push(Object.freeze({...e,source:t,resourceKey:r}));return}if(e.type!==`shape`){c.push(e);return}let f=e,p=f.textBoxContent;if(p===void 0){c.push(e);return}let m={story:a,storyInstance:o,path:[...s,d]},h=`${m.story}:${m.storyInstance}:${m.path.join(`.`)}`,g=!1,_=t?p:Array(p.length);if(p.forEach((e,t)=>{if(e.type===`unsupportedTextBoxBlock`){_[t]=e;return}let n=r(e,`textbox`,h,[t]);n!==e&&(g=!0),_[t]=n}),!g){c.push(e);return}i=!0,t?(f.textBoxContent=_,c.push(e)):c.push({...e,textBoxContent:_})});let d=i?t?Object.assign(e,{runs:c}):{...e,runs:c}:e;return l.length>0&&Cj.set(d,Object.freeze(l)),d}if(e.type===`table`){if(t)return e.rows.forEach((e,t)=>e.cells.forEach((e,n)=>{e.content=i(e.content,a,o,[...s,t,n])})),e;let n=!1,r=e.rows.map((e,t)=>{let r=!1,c=e.cells.map((e,n)=>{let c=i(e.content,a,o,[...s,t,n]);return c===e.content?e:(r=!0,{...e,content:c})});return r?(n=!0,{...e,cells:c}):e});return n?{...e,rows:r}:e}if(e.type!==`sectionBreak`)return e;let c=s.at(-1)??0,l=!1,u=(e,t)=>{if(!e)return e;let n=e;for(let r of[`default`,`first`,`even`]){let a=e[r];if(!a)continue;let o=i(a.body,t,`section:${c}:${r}`);o!==a.body&&(n===e&&(n={...e}),n[r]={...a,body:o},l=!0)}return n},d=u(e.headers,`header`),f=u(e.footers,`footer`);return l?{...e,headers:d,footers:f}:e},i=(e,n,i,a=[])=>{if(t){for(let t=0;t<e.length;t+=1)e[t]=r(e[t],n,i,[...a,t]);return e}let o=!1,s=e.map((e,t)=>{let s=r(e,n,i,[...a,t]);return s!==e&&(o=!0),s});return o?s:e},a=(e,t)=>{if(!e)return{default:null,first:null,even:null};let n=e;for(let r of[`default`,`first`,`even`]){let a=e[r];if(!a)continue;let o=i(a.body,t,r);o!==a.body&&(n===e&&(n={...e}),n[r]={...a,body:o})}return n},o=i(e.body,`body`,`body`),s=a(e.headers,`header`),c=a(e.footers,`footer`),l=(e,n)=>{if(!e)return e;if(t){for(let t of e)t.content=i(t.content,n,t.id);return e}let r=!1,a=e.map(e=>{let t=i(e.content,n,e.id);return t===e.content?e:(r=!0,{...e,content:t})});return r?a:e},u=l(e.footnotes,`footnote`),d=l(e.endnotes,`endnote`),f=o!==e.body||s!==e.headers||c!==e.footers||u!==e.footnotes||d!==e.endnotes?{...e,body:o,headers:s,footers:c,footnotes:u,endnotes:d}:e,p=lM(f);Mj.set(f,p),cM(f.body,f.section,p);let m,h=()=>m??=fM(f),g=EM();return Object.freeze({document:f,mathOccurrences:Object.freeze(n),fontFamilyCharsets:Object.freeze({...wM(f).fontFamilyCharsets??{}}),get bodyLayoutInput(){return xj(h())},bodyModelGateway:Object.freeze({acquisitionInputs:g,get bodySectionIndex(){return h().sectionIndex},effectiveTablePositioning:Hj,publicAnchorBridge:rM})})}function SM(e){return e}function CM(e){return e}function wM(e){return e}const TM=Object.freeze({numberingMarkerShapeInput:hM,paragraphMarkShapeInput:_M,tableFormatInput:$j,tableColumnLayoutInput:sM,tableParticipatesInOrdinaryFlow:Vj,paragraphAcquisitionInput:vM});function EM(){let e=new WeakMap,t=(t,n)=>{let r=e.get(t);r||(r=new Map,e.set(t,r));let i=Du(n),a=r.get(i);if(a)return a;let o=vM(t,n);return r.set(i,o),o};return Object.freeze({...TM,paragraphAcquisitionInput:t})}const DM=new Set([`tbRl`,`tbRlV`,`tbLrV`]);function OM(e){let t=[e],n=new Set;for(;t.length>0;){let e=t.pop();if(!(typeof e!=`object`||!e||n.has(e))){if(n.add(e),!Array.isArray(e)){let t=e;if(typeof t.textDirection==`string`&&DM.has(t.textDirection))return!0}t.push(...Object.values(e))}}return!1}const kM=new WeakMap;function AM(e){let t=U_(),n=e.section??{},r=(e,t)=>Number.isFinite(e)?e:t,i=e=>({default:e?.default??null,first:e?.first??null,even:e?.even??null});return{...e,body:e.body??[],section:{...t,...n,pageWidth:r(n.pageWidth,t.pageWidth),pageHeight:r(n.pageHeight,t.pageHeight),marginTop:r(n.marginTop,t.marginTop),marginRight:r(n.marginRight,t.marginRight),marginBottom:r(n.marginBottom,t.marginBottom),marginLeft:r(n.marginLeft,t.marginLeft),headerDistance:r(n.headerDistance,t.headerDistance),footerDistance:r(n.footerDistance,t.footerDistance)},headers:i(e.headers),footers:i(e.footers)}}function jM(e,t,n,r){if(e)for(let i of[`default`,`first`,`even`]){let a=e[i];a&&r(a.body,{story:t,storyInstance:n===null?i:`${n}:${i}`,path:[]})}}function MM(e,t,n,r=()=>{},i=()=>{}){let a=(e,o,s=[])=>{e.forEach((c,l)=>{let u=[...s,l];if(c.type===`paragraph`){let r={...o,path:u},s=t.paragraphAcquisitionInput(c,r),d=n(c,r,s);d&&(e[l]=d);let f=0;s.runs.forEach((e,t)=>{if(e.type===`unavailableDrawing`)return;let n=c.runs[f++];if(e.type!==`shape`||n?.type!==`shape`)return;let r=n.textBoxContent;if(!r)return;let s={story:`textbox`,storyInstance:`${o.story}:${o.storyInstance}:${u.join(`.`)}.${t}`,path:[]};i(r,s),a(r,s)})}else c.type===`table`?(r(c,{...o,path:u}),c.rows.forEach((e,t)=>e.cells.forEach((e,n)=>{a(e.content,o,[...u,t,n])}))):c.type===`sectionBreak`&&(jM(c.headers,`header`,`section:${l}`,a),jM(c.footers,`footer`,`section:${l}`,a))})};a(e.body,{story:`body`,storyInstance:`body`,path:[]}),jM(e.headers,`header`,null,a),jM(e.footers,`footer`,null,a);for(let t of e.footnotes??[])a(t.content,{story:`footnote`,storyInstance:t.id,path:[]});for(let t of e.endnotes??[])a(t.content,{story:`endnote`,storyInstance:t.id,path:[]})}function NM(e){let t=[],n=(e,n)=>{t.push({source:n,body:e})};return jM(e.headers,`header`,null,n),jM(e.footers,`footer`,null,n),e.body.forEach((e,t)=>{e.type===`sectionBreak`&&(jM(e.headers,`header`,`section:${t}`,n),jM(e.footers,`footer`,`section:${t}`,n))}),t}function PM(e){return NM(e).map(({body:e})=>e)}function FM(e){return e??Object.freeze([])}function IM(e,t,n,r=[]){let i=(e,t,r)=>e&&Object.fromEntries([`default`,`first`,`even`].map(i=>{let a=e[i];return[i,a?{...structuredClone(Object.fromEntries(Object.entries(a).filter(([e])=>e!==`body`))),body:IM(a.body,{story:t,storyInstance:`${r}:${i}`,path:[]},n)}:null]}));return e.map((e,a)=>{let o=[...r,a];if(e.type===`paragraph`){let e=n.get(Du({...t,path:o}));if(!e)throw Error(`Missing canonical paragraph source: ${Du({...t,path:o})}`);return e}if(e.type===`table`){let r=structuredClone(e),{__tableLayout:i,...a}=r;return{...a,rows:r.rows.map((e,r)=>{let{__tableRowLayout:i,...a}=e;return{...a,cells:e.cells.map((e,i)=>{let{__tableCellLayout:a,...s}=e;return{...s,content:IM(e.content,t,n,[...o,r,i])}})}})}}if(e.type!==`sectionBreak`)return structuredClone(e);let{__sectionPlacement:s,headers:c,footers:l,...u}=e;return{...structuredClone(u),headers:i(e.headers,`header`,`section:${a}`),footers:i(e.footers,`footer`,`section:${a}`)}})}function LM(e){let{__sectionPlacement:t,...n}=e;return structuredClone(n)}function RM(e){let t=e;return delete t.__sectionPlacement,t}function zM(e,t,n){return Object.fromEntries([`default`,`first`,`even`].map(r=>{let i=e[r];return[r,i?{...structuredClone(Object.fromEntries(Object.entries(i).filter(([e])=>e!==`body`))),body:IM(i.body,{story:t,storyInstance:r,path:[]},n)}:null]}))}function BM(e,t,n,r=[]){let i=(e,t,r)=>{if(!e)return e;for(let i of[`default`,`first`,`even`]){let a=e[i];a&&(a.body=BM(a.body,{story:t,storyInstance:`${r}:${i}`,path:[]},n))}return e},a=e;for(let e=0;e<a.length;e+=1){let o=a[e],s=[...r,e];if(o.type===`paragraph`){let r=n.get(Du({...t,path:s}));if(!r)throw Error(`Missing canonical paragraph source: ${Du({...t,path:s})}`);a[e]=r;continue}if(o.type===`table`){let r=o;delete r.__tableLayout,r.rows.forEach((e,r)=>{let i=e;delete i.__tableRowLayout,i.cells.forEach((e,i)=>{let a=e;delete a.__tableCellLayout,a.content=BM(a.content,t,n,[...s,r,i])})}),a[e]=r;continue}if(o.type!==`sectionBreak`)continue;let c=o;delete c.__sectionPlacement,c.headers=i(c.headers,`header`,`section:${e}`),c.footers=i(c.footers,`footer`,`section:${e}`)}return a}function VM(e,t,n){for(let r of[`default`,`first`,`even`]){let i=e[r];i&&(i.body=BM(i.body,{story:t,storyInstance:r,path:[]},n))}return e}function HM(e){let t=kM.get(e);if(t)return t;let n=yM(AM(e));return WM(n,n,!1,e)}function UM(e,t){return kM.get(e)||WM(bM(AM(e)),bM(AM(t)),!0,e)}function WM(e,t,n,r){let i=t.document,a=t.bodyModelGateway.acquisitionInputs,o=t.bodyLayoutInput,s=y_(i,Dj(i)),c=Xu(i,a,t.mathOccurrences,e=>{let t=e.numbering;if(!t)throw Error(`Picture-bullet metadata requires numbering`);let n=a.numberingMarkerShapeInput(t,Oh(e));return{widthPt:t.picBulletWidthPt??n.fontSizePt,heightPt:t.picBulletHeightPt??n.fontSizePt}}),l=FM(i.footnotes),u=FM(i.endnotes),d=CC(i.body,l,[...PM(i),...u.map(e=>e.content)]),f=OM(i),p=i.parseError===void 0?null:{message:i.parseError,pageSize:{widthPt:i.section.pageWidth,heightPt:i.section.pageHeight}},m={familyClasses:{...i.fontFamilyClasses??{}},familyPitches:{...i.fontFamilyPitches??{}},majorFamily:i.majorFont??null,minorFamily:i.minorFont??null,embeddedFonts:[...i.embeddedFonts??[]],renderedFamilies:kA(i),preloadNames:MA(i),localMetricRequests:dj(i),defaultBodyFontSizePt:gD(i)},h=new Map,g=[],_=[],v=[];MM(i,a,(e,r,i)=>{let a=Du(r);if(h.has(a))throw Error(`Duplicate paragraph source: ${a}`);h.set(a,i);let o=0,s=i.runs.map((n,i)=>{if(n.type===`unavailableDrawing`)return null;let a=e.runs[o++];return a?t.bodyModelGateway.publicAnchorBridge(a,r,i):null});return g.push(Object.freeze({source:Pu({...r,path:[...r.path]}),publicAnchorBridges:Object.freeze(s),numberingMarkerFallbackFontSizePt:e.numbering?Oh(e):null})),n?i:void 0},(e,t)=>{_.push(Object.freeze({source:Pu({...t,path:[...t.path]}),input:Bj(e)}))},(e,t)=>{v.push({body:e,source:t})}),Object.freeze({...a,paragraphAcquisitionInput(e,t){let n=h.get(Du(t));if(!n)throw Error(`Unknown paragraph acquisition source: ${Du(t)}`);return n}});let y=n?BM:IM,b=n?VM:zM,x={...i,body:y(i.body,{story:`body`,storyInstance:`body`,path:[]},h),headers:b(i.headers,`header`,h),footers:b(i.footers,`footer`,h),footnotes:l.map(({content:e,...t})=>({...structuredClone(t),content:y(e,{story:`footnote`,storyInstance:t.id,path:[]},h)})),endnotes:u.map(({content:e,...t})=>({...structuredClone(t),content:y(e,{story:`endnote`,storyInstance:t.id,path:[]},h)}))},S=v.map(({source:e,body:t})=>({source:e,body:y(t,e,h)}));Pu(h);let C=cj({bodyLayoutInput:o,blockRepository:{body:x.body,stories:[...NM(x).map(({source:e,body:t})=>({source:e,body:t})),...S],footnotes:x.footnotes??[],endnotes:x.endnotes??[]},section:n?RM(i.section):LM(i.section),documentLayoutFacts:Pu({...s,kinsoku:{enabled:s.kinsoku.enabled,lineStartForbidden:[...s.kinsoku.lineStartForbidden].sort((e,t)=>e-t),lineEndForbidden:[...s.kinsoku.lineEndForbidden].sort((e,t)=>e-t)}}),fonts:Pu(m),fontFamilyCharsets:t.fontFamilyCharsets,acquisitionFacts:Object.freeze({paragraphs:Object.freeze(g),tables:Object.freeze(_)}),mathOccurrences:t.mathOccurrences,imageMetadata:c.imageMetadata,paintDescriptors:c.paintResources.descriptors,hasPaginationFields:d,requiresDomVerticalGlyphLayout:f,fatalParse:p===null?null:Pu(p)}),w=Object.freeze({document:e.document,source:C});return kM.set(r,w),kM.set(e.document,w),w}function GM(e){return HM(e).source}function KM(e,t,n){return bA(e,t,n).kernel}function qM(e,t={}){let n=nj(e)?e:GM(e),r=t.measureContext??(()=>{if(typeof document<`u`){let e=document.createElement(`canvas`).getContext(`2d`);if(e!==null)return e}return typeof OffscreenCanvas<`u`?new OffscreenCanvas(1,1).getContext(`2d`):null})(),i=r===null?null:Object.freeze({get font(){return r.font},set font(e){r.font=e},get letterSpacing(){return r.letterSpacing},set letterSpacing(e){r.letterSpacing=e},get fontKerning(){return r.fontKerning},set fontKerning(e){r.fontKerning=e},measureText(e){return r.measureText(e)}}),a=r?.canvas,o=a?.ownerDocument?.defaultView?.HTMLCanvasElement,s=r!==null&&(typeof o==`function`&&a instanceof o||typeof HTMLCanvasElement<`u`&&a instanceof HTMLCanvasElement),c=Object.freeze({fingerprint:r===null?`vertical-glyph-measurement:deterministic-v1`:s?`vertical-glyph-measurement:dom-vert-probe-v2`:`vertical-glyph-measurement:no-dom-vert-probe-v1`,measureRunInkExtra(e){if(r===null)throw Error(`Vertical glyph measurement requires a concrete text context`);return Xc(r,()=>vA(r,e))},planRun(e){if(r===null)throw Error(`Vertical glyph planning requires a concrete text context`);return Xc(r,()=>{let t=r.font,n=r.fontKerning;r.font=e.font,r.fontKerning=e.fontKerning;try{return gA(r,e.text,e.fontSizePt,e.letterSpacingPt,e.charScale,e.growTrRotateInk,e=>nl(r,e),e.writingMode)}finally{r.font=t,r.fontKerning=n}})}}),l=jf(t.localMetrics),u=zA(n,{...t,localMetrics:l,measureContext:i,verticalGlyphMeasurement:c});return fd(u,n),ud(u,KM(n,i,l)),u}function JM(e,t,n,r){let i=r.layoutServices??qM(e,e.fatalParse===null?{measureContext:t.getContext(`2d`)}:{}),a=pd(i);if(a&&a!==e)throw Error(`Layout services belong to a different document source`);let o=r.defaultCurrentDateMs??Date.now();VE(i,o,()=>e);let s=ay(i,{currentDate:r.currentDate,defaultCurrentDateMs:o},n),c=Ib(s.page,r.width);return{selection:s,paintOptions:{width:r.width,dpr:r.dpr,defaultTextColor:r.defaultTextColor,fetchImage:r.fetchImage,parseError:e.fatalParse!==null,registry:Od(i),privateResources:yd(i),textRuns:r.onTextRun?jy(s.layout,n,{scale:c}):[],onTextRun:r.onTextRun}}}async function YM(e,t,n,r={}){let i=JM(e,t,n,r);return Bb(i.selection.layout,i.selection.page,t,i.paintOptions)}function XM(e){let t=new Map;for(let n of e.pages)for(let e of n.bookmarkStarts)e.name!==``&&!t.has(e.name)&&t.set(e.name,n.pageIndex);return t}async function ZM(e,t){let n=e.embeddedFonts;if(!n||n.length===0)return[];let r=(await Promise.all(n.map(async e=>{try{let n=await t(e.partPath);return{family:e.fontName,bytes:n,odttf:e.partPath.toLowerCase().endsWith(`.odttf`),fontKey:e.fontKey,weight:QM(e.style),style:$M(e.style)}}catch{return null}}))).filter(e=>e!==null);return r.length===0?[]:F(r)}function QM(e){return e===`bold`||e===`boldItalic`?`bold`:`normal`}function $M(e){return e===`italic`||e===`boldItalic`?`italic`:`normal`}function eN(e,t=qM(e),n){let r=nj(e)?e:GM(e),i=pd(t);if(i&&i!==r)throw Error(`Layout services belong to a different document source`);return BE(r.bodyLayoutInput,t,n)}function tN(e,t,n){let r=pd(t);if(r&&r!==e)throw Error(`Layout services belong to a different document source`);let i=iy({source:e,services:t,defaultCurrentDateMs:n,buildLayout:n=>eN(e,t,n)});return Object.freeze({layoutServices:t,layoutVariants:i.store,defaultCurrentDateMs:n})}function nN(e,t){let n=Math.min(e.length,t);if(n>0&&n<e.length){let t=e.charCodeAt(n-1),r=e.charCodeAt(n);t>=55296&&t<=56319&&r>=56320&&r<=57343&&n--}return e.slice(0,n)}function rN(e){let t=e??16384;if(!Number.isFinite(t)||t<0)throw RangeError(`maxTextCharacters must be a finite non-negative number.`);return Math.min(65536,Math.floor(t))}function iN(e,t){let n=rN(t),r=[],i=0,a=!1,o=!1,s=(e,t)=>{if(t&&o){if(i>=n)return a=!0,!1;r.push(`\n`),i++}o=!0;let s=nN(e,Math.max(0,n-i));return r.push(s),i+=s.length,s.length<e.length?(a=!0,!1):!0};if(!s(`Chart type: ${e.chartType}`,!0)||e.title!==null&&!s(`Title: ${e.title}`,!0))return{text:r.join(``),truncated:a,textCharacters:i,maxTextCharacters:n};if(e.categories.length>0){if(!s(`Categories: `,!0))return{text:r.join(``),truncated:a,textCharacters:i,maxTextCharacters:n};for(let[t,o]of e.categories.entries())if(!s(`${t===0?``:`, `}${o}`,!1))return{text:r.join(``),truncated:a,textCharacters:i,maxTextCharacters:n}}for(let t of e.series){if(!s(`Series ${t.name||`(unnamed)`}: `,!0))break;for(let[e,o]of t.values.entries())if(!s(`${e===0?``:`, `}${o===null?``:o}`,!1))return{text:r.join(``),truncated:a,textCharacters:i,maxTextCharacters:n};if(a)break}return{text:r.join(``),truncated:a,textCharacters:i,maxTextCharacters:n}}function aN(e,t){let n=Math.min(e.length,t);if(n>0&&n<e.length){let t=e.charCodeAt(n-1),r=e.charCodeAt(n);t>=55296&&t<=56319&&r>=56320&&r<=57343&&n--}return e.slice(0,n)}function oN(e,t){let n=[],r=0,i=!1;for(let a of e){if(a.length===0)continue;if(r>0){if(r>=t){i=!0;break}n.push(`\n`),r++}let e=aN(a,Math.max(0,t-r));if(n.push(e),r+=e.length,e.length<a.length){i=!0;break}}let a=n.join(``);return{...a.length===0?{}:{text:a},truncated:i}}function*sN(e){if(e.kind===`paragraph`){for(let t of e.lines){let e=t.placements.flatMap(e=>e.kind===`text`?[e.text]:[]).join(``);e&&(yield e)}return}if(e.kind===`table`){for(let t of e.rows)for(let e of t.cells)for(let t of e.blocks)yield*sN(t.layout);return}if(e.kind===`note`||e.kind===`textbox`)for(let t of e.story.blocks)yield*sN(t)}function*cN(e){for(let t of e.drawing.commands)(t.kind===`text`||t.kind===`watermark-text`)&&(yield t.text);for(let t of e.textBoxes)yield*sN(t)}function lN(e){let t=e??16384;if(!Number.isFinite(t)||t<0)throw RangeError(`maxTextCharacters must be a finite non-negative number.`);return Math.min(65536,Math.floor(t))}function uN(e){return{story:e.story,storyInstance:e.storyInstance,path:[...e.path]}}function dN(e){return`drawing`in e?e.drawing.inkBounds:e.placement.bounds}function fN(e){let t=dN(e),n=[ly(e.pointToPage,t),ly(e.pointToPage,{xPt:t.xPt+t.widthPt,yPt:t.yPt}),ly(e.pointToPage,{xPt:t.xPt,yPt:t.yPt+t.heightPt}),ly(e.pointToPage,{xPt:t.xPt+t.widthPt,yPt:t.yPt+t.heightPt})],r=Math.min(...n.map(e=>e.xPt)),i=Math.min(...n.map(e=>e.yPt)),a=Math.max(...n.map(e=>e.xPt)),o=Math.max(...n.map(e=>e.yPt));return{xPt:r,yPt:i,widthPt:a-r,heightPt:o-i}}function pN(e,t){return t.xPt>=e.xPt&&t.xPt<=e.xPt+e.widthPt&&t.yPt>=e.yPt&&t.yPt<=e.yPt+e.heightPt}function mN(e,t){let n=!1;for(let r=0,i=t.length-1;r<t.length;i=r++){let a=t[r],o=t[i];a.yPt>e.yPt!=o.yPt>e.yPt&&e.xPt<(o.xPt-a.xPt)*(e.yPt-a.yPt)/(o.yPt-a.yPt)+a.xPt&&(n=!n)}return n}function hN(e,t){return pN(e.inkBounds,t)?e.clip?e.clip.kind===`rect`?pN(e.clip.rect,t):mN(t,e.clip.points):!0:!1}function gN(e,t,n){for(let n of e.clips){let e=uy(n.pointToPage,t);if(!e||!pN(n.bounds,e))return!1}return`drawing`in e?hN(e.drawing,n):pN(e.placement.bounds,n)}function _N(e,t){return e.commands.find(e=>e.kind===`resource`&&e.resourceKind===t)}function vN(e){return _N(e,`chart`)?`chart`:e.commands.some(e=>e.kind===`drawingml-shape`||e.kind===`drawingml-image-fill`||e.kind===`fill-rect`||e.kind===`stroke-rect`||e.kind===`text`||e.kind===`watermark-text`)?`shape`:_N(e,`image`)?`image`:null}function yN(e,t,n,r,i,a){let o=`drawing`in e?vN(e.drawing):e.placement.resourceKind;if(!o)return null;let s,c=!1,l,u;if(o===`chart`){let t=`drawing`in e?_N(e.drawing,`chart`).resourceKey:e.placement.resourceKey,n=i.resolve(t,`chart`),r=iN(n.model,a);s=r.text,c=r.truncated,u=n.model.series.length}else if(o===`image`){let t=`drawing`in e?_N(e.drawing,`image`).resourceKey:e.placement.resourceKey,n=i.descriptors.find(e=>e.resourceKey===t&&e.kind===`image`&&`mimeType`in e);if(!n)throw Error(`Unknown image paint resource: ${t}`);l=n.mimeType}else{let t=oN(cN(e),a);s=t.text,c=t.truncated}return{format:`docx`,kind:`element`,pageIndex:t,elementIndex:n,elementType:o,point:{...r},bounds:fN(e),source:uN(`drawing`in e?e.drawing.source:e.source),...s===void 0?{}:{text:s},...l===void 0?{}:{mimeType:l},...u===void 0?{}:{seriesCount:u},truncated:c,truncationReasons:c?[`text`]:[],textCharacters:s?.length??0,maxTextCharacters:a}}function bN(e,t,n,r,i={}){if(!Number.isFinite(n.xPt)||!Number.isFinite(n.yPt))throw RangeError(`DOCX hit-test point must contain finite page coordinates.`);let a=lN(i.maxTextCharacters),o=Oy(e,t);for(let e=o.length-1;e>=0;e--){let i=o[e],s=uy(i.pointToPage,n);if(!s||!gN(i,n,s))continue;let c=yN(i,t,e,n,r,a);if(c)return c}return null}function xN(e,t,n,r){return bN(ay(e,{currentDate:r.currentDate,defaultCurrentDateMs:r.defaultCurrentDateMs},t).layout,t,n,Od(e),r)}const SN=1024*1024,CN=67108864;async function wN(e,t,n={}){let r=[],i=[];return TN(e,t,n,{acceptBody:e=>{let t=structuredClone(e);for(let t of e)r.push(t);for(let e of t)i.push(e)},complete:e=>{let t=structuredClone(e);return e.body=r,t.body=i,Object.freeze({document:e,ownedLayoutDocument:t})}})}async function TN(e,t,n,r){let i=new vs(e,{...t,maxByteCredit:CN,timeoutMs:n.timeoutMs});try{for(;;){let e=await DN(i,n.signal);try{let t=e.usage??i.usageCheckpoint;t&&n.onUsage?.(t);let a=EN(e.payload);if(e.done!==(a.kind===`complete`))throw TypeError(`DOCX document unit terminal flag does not match its payload`);if(a.kind===`body`){r.acceptBody(a.body),await e.ack({signal:n.signal});continue}if(!Array.isArray(a.document.body)||a.document.body.length!==0)throw TypeError(`DOCX terminal document must not duplicate streamed body blocks`);let o=r.complete(a.document);return await e.ack({signal:n.signal}),o}finally{e.disposeTransferred()}}}catch(e){throw await i.cancel(`request-error`).catch(()=>void 0),e}}function EN(e){let t=JSON.parse(new TextDecoder().decode(new Uint8Array(e)));if(!t||typeof t!=`object`)throw TypeError(`DOCX document unit must be an object`);let n=t;if(n.kind===`body`&&Array.isArray(n.body)||n.kind===`complete`&&n.document&&typeof n.document==`object`)return n;throw TypeError(`DOCX document unit has an unknown shape`)}async function DN(e,t){try{return await e.pull(SN,{signal:t})}catch(n){let r=ON(n);if(r===void 0)throw n;return e.pull(r,{signal:t})}}function ON(e){return Uo(e,SN,CN)}var kN=class{body;document;prepared=null;index=0;identity=null;completed=!1;constructor(e){this.body=e.body,e.body=[],this.document=e}open_document_cursor(e,t){if(this.identity)throw Error(`materialized DOCX cursor is already open`);this.identity={sessionId:t,operationId:e,generation:t}}pull_document_chunk(e,t,n,r){if(this.assertIdentity(t,n),this.completed)throw Error(`materialized DOCX cursor is complete`);if(e!==this.index)throw Error(`materialized DOCX cursor sequence mismatch`);if(!this.prepared){let t=this.body[this.index],n=t===void 0?{kind:`complete`,document:this.requireDocument()}:{kind:`body`,body:[t]};this.prepared={sequence:e,bytes:new TextEncoder().encode(JSON.stringify(n)),done:t===void 0}}if(this.prepared.bytes.byteLength>r)throw new Bo({requiredBytes:this.prepared.bytes.byteLength,offeredBytes:r});return this.prepared.bytes.slice()}document_chunk_done(){if(!this.prepared)throw Error(`materialized DOCX cursor has no prepared unit`);return this.prepared.done}acknowledge_document_chunk(e,t,n){if(this.assertIdentity(t,n),!this.prepared||e!==this.prepared.sequence||e!==this.index)throw Error(`materialized DOCX acknowledgement sequence mismatch`);let r=this.prepared.done;if(this.prepared=null,r){this.completed=!0,this.body=[],this.document=null;return}this.body[this.index]=void 0,this.index+=1}cancel_document_cursor(){this.prepared=null,this.body=[],this.document=null,this.completed=!0}close_document_session(){this.cancel_document_cursor()}assertIdentity(e,t){if(!this.identity||this.identity.operationId!==e||this.identity.generation!==t)throw Error(`materialized DOCX cursor identity mismatch`)}requireDocument(){if(!this.document)throw Error(`materialized DOCX terminal document is unavailable`);return this.document}};const AN=67108864;var jN=class{coordinator=new ys;host=null;identity=null;constructor(e,t=e=>e(this.requireArchive())){this.archive=e,this.executeArchive=t}open(e){if(this.host)throw Error(`a DOCX document pull session is already active`);this.executeArchive(t=>{t.open_document_cursor(e.operationId,e.generation)});let t=0;this.identity=e,this.host=new bs({...e,maxByteCredit:AN,coordinator:this.coordinator,driver:{pull:n=>{let r;try{r=this.executeArchive(r=>r.pull_document_chunk(t,e.operationId,e.generation,n))}catch(e){throw Ho(e,n,AN)||e}let i=ps(r);return{payload:i,byteLength:i.byteLength,done:this.executeArchive(e=>e.document_chunk_done()),transfer:[i]}},measureChunk:({payload:e})=>e.byteLength,acknowledge:n=>{if(n!==t)throw Error(`DOCX document acknowledgement sequence mismatch`);this.executeArchive(n=>n.acknowledge_document_chunk(t,e.operationId,e.generation)),t+=1},cancel:()=>this.executeArchive(e=>e.cancel_document_cursor()),close:()=>this.executeArchive(e=>e.close_document_session()),resourceUsage:()=>{let e=this.executeArchive(e=>e.document_cursor_resource_usage?.());return e?Jo(e):void 0}}})}dispatch(e,t){return!this.host||!this.identity?(t({protocol:hs,kind:`error`,sessionId:e.sessionId,operationId:e.operationId,generation:e.generation,requestId:e.requestId,error:us(Error(`DOCX document pull session is not open`))}),Promise.resolve()):this.host.dispatch(e,t)}async reset(){if(this.host)try{this.archive()&&this.executeArchive(e=>e.close_document_session())}finally{this.host=null,this.identity=null,this.coordinator=new ys}}requireArchive(){let e=this.archive();if(!e)throw Error(`No docx loaded`);return e}};function MN(e){return!!e&&typeof e==`object`&&e.protocol===`ooxml-pull-v1`}function NN(e){let t=1;return{request(n){let r=n(t++);return new Promise((t,n)=>{e.dispatch(r,t).catch(n)})},forgetOrphaned(){},terminate(){}}}const PN=new Io(x,{freeArchive:e=>e.free(),reinit:S}),FN=new jN(()=>PN.archive,e=>PN.run(()=>{let t=PN.archive;if(!t)throw Error(`No docx loaded`);return e(t)}));let IN=0,LN=null,RN=null,zN=[];const BN=new wu({maxEntries:64,maxBytes:134217728}),VN=(e,t)=>self.postMessage(e,t);function HN(e,t){return BN.get(e,t,async()=>{let n=PN.archive;if(!n)throw Error(`No docx loaded`);let r=PN.run(()=>n.extract_image(e));return new Blob([r],{type:t})})}self.onmessage=async t=>{let n=t.data;if(MN(n)){try{if(!LN)throw Error(`DOCX vertical fallback session is not open`);await LN.dispatch(n,VN)}catch(e){VN({protocol:hs,kind:`error`,sessionId:n.sessionId,operationId:n.operationId,generation:n.generation,requestId:n.requestId,error:us(e)})}return}if(n.type===`init`){PN.setWasmInput(Ao(n.wasmUrl)??n.wasmUrl);return}let r=n.id;try{if(await PN.ensureReady(),n.type!==`parse`&&PN.archive){let e=PN.archive;PN.run(()=>e.assert_healthy())}if(n.type===`parse`){await FN.reset(),await LN?.reset(),LN=null,RN=null,zN.length>0&&(_u(zN),zN=[]),BN.clear(),co(HN),po(HN);let[t,i,a]=ms(n.resourcePolicy),o=new Uint8Array(n.data);PN.run(()=>{let n=new e(o,t,i,a);PN.setArchive(n)}),IN+=1;let s={sessionId:IN,operationId:IN,generation:IN};FN.open(s);let c,l;try{c=await wN(NN(FN),s,{onUsage:e=>{l=e}})}finally{await FN.reset().catch(()=>void 0)}if(OM(c.document)){let e=new kN(c.document);LN=new jN(()=>e),IN+=1;let t={sessionId:IN,operationId:IN,generation:IN};LN.open(t),VN({type:`mainThreadVerticalFallback`,id:r,...t,usage:l});return}let u=UM(c.document,c.ownedLayoutDocument),d=u.source,f=u.document,p=[];n.useGoogleFonts&&(p=await N(MA(f),AA));let m=[];f.embeddedFonts?.length&&(m=await ZM(f,async e=>{let t=PN.archive;if(!t)throw Error(`No docx loaded`);return PN.run(()=>t.extract_image(e))}));let h=await fj(f);zN=h.faces,RN=tN(d,qM(d,{localMetrics:h.metrics,useGoogleFonts:!!n.useGoogleFonts,embeddedFaces:m,googleFaces:p}),n.defaultCurrentDateMs);let g=RN.layoutVariants.defaultLayout,_=g.pages.map(e=>({widthPt:e.geometry.widthPt,heightPt:e.geometry.heightPt})),v={pageCount:g.pages.length,comments:f.comments??[],footnotes:f.footnotes??[],endnotes:f.endnotes??[],pageSizes:_,bookmarkPages:[...XM(g)]},y=PN.archive;if(!y)throw Error(`No docx loaded`);l=Jo(PN.run(()=>y.resource_usage())),VN({type:`parsedMeta`,id:r,meta:v,usage:l});return}if(n.type===`renderPage`){if(!RN)throw Error(`Document not loaded`);let e=new OffscreenCanvas(1,1),t=pd(RN.layoutServices);if(!t)throw Error(`Document layout source is not initialized`);await YM(t,e,n.pageIndex,{...n.opts,fetchImage:HN,layoutServices:RN.layoutServices,defaultCurrentDateMs:RN.defaultCurrentDateMs});let i=My(RN.layoutServices,n.pageIndex,{...n.opts,defaultCurrentDateMs:RN.defaultCurrentDateMs}),a=e.transferToImageBitmap();VN({type:`pageRendered`,id:r,bitmap:a,runs:i},[a]);return}if(n.type===`collectRuns`){if(!RN)throw Error(`Document not loaded`);VN({type:`runsCollected`,id:r,runs:My(RN.layoutServices,n.pageIndex,{...n.opts,defaultCurrentDateMs:RN.defaultCurrentDateMs})});return}if(n.type===`hitTestElement`){if(!RN)throw Error(`Document not loaded`);VN({type:`elementHit`,id:r,context:xN(RN.layoutServices,n.pageIndex,n.point,{...n.opts,defaultCurrentDateMs:RN.defaultCurrentDateMs})});return}if(n.type===`extractImage`){let e=PN.archive;if(!e)throw Error(`No docx loaded`);let t=PN.run(()=>e.extract_image(n.path).buffer);VN({type:`imageExtracted`,id:r,bytes:t},[t]);return}if(n.type===`resourceUsage`){let e=PN.archive;if(!e)throw Error(`No docx loaded`);VN({type:`resourceUsage`,id:r,usage:Jo(PN.run(()=>e.resource_usage()))});return}if(n.type===`toMarkdown`){let e=PN.archive;if(!e)throw Error(`No docx loaded`);VN({type:`markdownRendered`,id:r,markdown:PN.run(()=>e.to_markdown())});return}}catch(e){let t=e instanceof Error?e:Error(String(e)),n=t;VN({type:`error`,id:r,...us(t),...n.code===void 0?{}:{code:n.code},...n.reason===void 0?{}:{reason:n.reason},...n.outgoingColumnIndex===void 0?{}:{outgoingColumnIndex:n.outgoingColumnIndex},...n.outgoingColumnCount===void 0?{}:{outgoingColumnCount:n.outgoingColumnCount},...n.incomingColumnCount===void 0?{}:{incomingColumnCount:n.incomingColumnCount}})}};", t = typeof self < "u" && self.Blob && new Blob(["URL.revokeObjectURL(import.meta.url);", e], { type: "text/javascript;charset=utf-8" });
3
- function n(n) {
4
- let r;
5
- try {
6
- if (r = t && (self.URL || self.webkitURL).createObjectURL(t), !r) throw "";
7
- let e = new Worker(r, {
8
- type: "module",
9
- name: n?.name
10
- });
11
- return e.addEventListener("error", () => {
12
- (self.URL || self.webkitURL).revokeObjectURL(r);
13
- }), e;
14
- } catch {
15
- return new Worker("data:text/javascript;charset=utf-8," + encodeURIComponent(e), {
16
- type: "module",
17
- name: n?.name
18
- });
19
- }
20
- }
21
- //#endregion
22
- //#region packages/docx/src/render-worker-host.ts
23
- function r() {
24
- return new n();
25
- }
26
- //#endregion
27
- export { r as createRenderWorker };