@betteroffice/docx 0.0.2 → 0.0.3

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 (44) hide show
  1. package/dist/chunk-GGEGIQRK.mjs +1 -0
  2. package/dist/chunk-J7LNO6SM.mjs +1 -0
  3. package/dist/chunk-WON6K4FY.mjs +1 -0
  4. package/dist/chunk-Y7RUNRU2.mjs +1 -0
  5. package/dist/collaboration/index.d.mts +5 -4
  6. package/dist/core.d.mts +3 -3
  7. package/dist/{displayListQueries-UGc_XBUv.d.mts → displayListQueries-BJlo7Jkz.d.mts} +24 -6
  8. package/dist/docx/index.d.mts +1 -1
  9. package/dist/editor/index.d.mts +5 -4
  10. package/dist/{rustDisplayList-CX78djsZ.d.mts → frameDelta-D965X8yK.d.mts} +2 -273
  11. package/dist/generated/edit/docx_edit_bg.wasm +0 -0
  12. package/dist/generated/layout/docx_layout_bg.wasm +0 -0
  13. package/dist/generated/parse/docx_parse_bg.wasm +0 -0
  14. package/dist/{index-Bwxm3oiC.d.mts → index-Dx4Z3lkz.d.mts} +83 -7
  15. package/dist/layout/index.d.mts +5 -4
  16. package/dist/layout/index.mjs +1 -1
  17. package/dist/layout/pagination/index.d.mts +3 -3
  18. package/dist/layout/render/index.d.mts +8 -7
  19. package/dist/layout/render/index.mjs +1 -1
  20. package/dist/plugin-api/RenderedDomContext.d.mts +5 -4
  21. package/dist/plugin-api/index.d.mts +1 -1
  22. package/dist/plugin-api/resolveItemPositions.d.mts +1 -1
  23. package/dist/rustDisplayList-BRuZBqdL.d.mts +278 -0
  24. package/dist/types/content.d.mts +1 -1
  25. package/dist/types/document.d.mts +2 -2
  26. package/dist/{types-DMkDbvEu.d.mts → types-BfqUl2h_.d.mts} +1 -1
  27. package/dist/utils/comments.d.mts +1 -1
  28. package/dist/utils/index.d.mts +1 -1
  29. package/dist/wasm-DO3BUV7C.mjs +1 -0
  30. package/dist/wasm-NWXX4H5G.mjs +1 -0
  31. package/dist/wasm-edit.d.mts +1 -0
  32. package/dist/wasm-edit.mjs +1 -1
  33. package/dist/wasm-layout.d.mts +10 -1
  34. package/dist/wasm-layout.mjs +1 -1
  35. package/dist/yrs/index.d.mts +4 -3
  36. package/dist/yrs/index.mjs +1 -1
  37. package/dist/yrs/residentEngineWorker.mjs +1 -1
  38. package/package.json +1 -1
  39. package/dist/chunk-6NEKRDXF.mjs +0 -1
  40. package/dist/chunk-CIRN3LZA.mjs +0 -1
  41. package/dist/chunk-NTQM4EYN.mjs +0 -1
  42. package/dist/wasm-BGQBTR2J.mjs +0 -1
  43. package/dist/wasm-SA237OSP.mjs +0 -1
  44. package/dist/{content-DLFHRQav.d.mts → content-MOZ6hKP4.d.mts} +349 -349
@@ -1,3 +1,4 @@
1
+ import { R as RetainedFrame } from './frameDelta-D965X8yK.mjs';
1
2
  import { Document } from './types/document.mjs';
2
3
 
3
4
  type CollaborationUpdateOrigin = 'local' | 'remote';
@@ -80,12 +81,32 @@ declare function displayPositionToYrsLoc(map: YrsInputPositionMap, position: num
80
81
  /** Compare two Locs in document order using one live map. */
81
82
  declare function compareYrsLocs(map: YrsInputPositionMap, a: YrsLoc, b: YrsLoc): number;
82
83
 
84
+ /** Resolved styling for the worker-painted caret (the worker cannot read CSS vars). */
85
+ interface ResidentCaretPaintStyle {
86
+ color: string;
87
+ /** CSS-px stroke width, matching the DOM caret's un-zoomed width. */
88
+ width: number;
89
+ }
90
+ /** Device-px caret rect: geometry scales by dpr*zoom, stroke width by dpr only
91
+ * (the DOM caret keeps its CSS-px width across zoom levels). */
92
+ declare function residentCaretDeviceRect(rect: Pick<YrsResidentCaretRect, 'x' | 'y' | 'height'>, style: ResidentCaretPaintStyle, devicePixelRatio: number, zoom: number): {
93
+ x: number;
94
+ y: number;
95
+ width: number;
96
+ height: number;
97
+ };
98
+ declare function residentCaretSnapshotForFrame(snapshot: YrsResidentCaretSnapshot, frame: RetainedFrame): YrsResidentCaretSnapshot | null;
99
+
83
100
  interface ResidentEngineWorkerFrame {
84
101
  frame: Uint8Array;
85
102
  updates: Uint8Array[];
86
103
  engineMs: number;
87
104
  workerTotalMs: number;
88
105
  engineProfile?: YrsEngineApplyProfile;
106
+ caret: YrsResidentCaretSnapshot;
107
+ selection: YrsSelection | null;
108
+ /** The presented frame carries the worker-painted caret line. */
109
+ caretPainted: boolean;
89
110
  replayMs: number;
90
111
  replayedPages: number;
91
112
  layoutRevision: number;
@@ -105,22 +126,34 @@ declare class ResidentEngineWorkerClient {
105
126
  private destroyed;
106
127
  private ready;
107
128
  private revision;
129
+ private remoteVector;
130
+ private appliedFontsRevision;
108
131
  constructor();
109
132
  isReady(): boolean;
110
133
  layoutRevision(): number;
134
+ /** The worker replica's last reported yrs state vector (null before any). */
135
+ remoteStateVector(): Uint8Array | null;
136
+ /** The fonts revision this worker last applied (null before bootstrap). */
137
+ syncedFontsRevision(): number | null;
111
138
  bootstrap(snapshot: YrsResidentWorkerSnapshot, extras: string): Promise<ResidentEngineWorkerFrame>;
112
- sync(snapshot: YrsResidentWorkerSnapshot, extras: string, expectedFrameEpoch: number): Promise<ResidentEngineWorkerFrame>;
113
- buildFrame(extras: string, expectedFrameEpoch: number): Promise<ResidentEngineWorkerFrame>;
114
- applyInput(text: string, selection: YrsSelection, expectedFrameEpoch: number, profile?: boolean): Promise<ResidentEngineWorkerApplyResult | {
139
+ sync(snapshot: YrsResidentWorkerSnapshot, extras: string, expectedFrameEpoch: number, paintCaret?: boolean): Promise<ResidentEngineWorkerFrame>;
140
+ buildFrame(extras: string, expectedFrameEpoch: number, paintCaret?: boolean): Promise<ResidentEngineWorkerFrame>;
141
+ applyInput(text: string, selection: YrsSelection, expectedFrameEpoch: number, profile?: boolean, paintCaret?: boolean): Promise<ResidentEngineWorkerApplyResult | {
115
142
  applied: false;
116
143
  }>;
117
- applyDelete(direction: 'backward' | 'forward', selection: YrsSelection, expectedFrameEpoch: number, profile?: boolean): Promise<ResidentEngineWorkerApplyResult | {
144
+ applyDelete(direction: 'backward' | 'forward', selection: YrsSelection, expectedFrameEpoch: number, profile?: boolean, paintCaret?: boolean): Promise<ResidentEngineWorkerApplyResult | {
118
145
  applied: false;
119
146
  }>;
147
+ /** Drop the worker-painted caret line by re-presenting the caret page's
148
+ * retained raster. Fire-and-forget and idempotent. */
149
+ eraseCaret(): void;
120
150
  invalidate(update: Uint8Array, selection: YrsSelection | null): void;
121
- attachCanvases(pages: ResidentEngineOffscreenPage[], activePageIds: string[], devicePixelRatio: number, zoom: number): Promise<void>;
151
+ attachCanvases(pages: ResidentEngineOffscreenPage[], activePageIds: string[], devicePixelRatio: number, zoom: number, caretStyle: ResidentCaretPaintStyle): Promise<void>;
122
152
  destroy(): void;
123
153
  private request;
154
+ /** Record a successfully applied bootstrap/sync payload's fonts revision.
155
+ * The state vector is tracked centrally in `onmessage`. */
156
+ private recordSync;
124
157
  private failAll;
125
158
  }
126
159
  declare function canUseResidentEngineWorker(): boolean;
@@ -523,6 +556,20 @@ interface YrsSelection {
523
556
  anchor: YrsLoc;
524
557
  head: YrsLoc;
525
558
  }
559
+ interface YrsResidentCaretRect {
560
+ pageIndex: number;
561
+ pageId: string;
562
+ x: number;
563
+ y: number;
564
+ height: number;
565
+ }
566
+ interface YrsResidentCaretSnapshot {
567
+ frameEpoch: number;
568
+ caretRect: YrsResidentCaretRect | null;
569
+ /** Selection the rect was computed for. Absent on raw engine snapshots. */
570
+ selection?: YrsSelection | null;
571
+ }
572
+ declare function sameYrsSelection(left: YrsSelection | null, right: YrsSelection | null): boolean;
526
573
  /** Opt-in internal stage timings for one resident engine input. @internal */
527
574
  interface YrsEngineApplyProfile {
528
575
  selectionMs: number;
@@ -546,9 +593,15 @@ interface YrsEngineApplyProfile {
546
593
  */
547
594
  interface YrsResidentWorkerSnapshot {
548
595
  clientId: number;
596
+ /** Full document state, or a state-vector diff when the caller supplied
597
+ * the worker's known vector — both apply through the same merge path. */
549
598
  state: Uint8Array;
550
599
  selection: YrsSelection | null;
600
+ /** Empty when the caller declared the worker's fonts current
601
+ * (`knownFontsRevision` matches); the worker then keeps its registrations. */
551
602
  fonts: Uint8Array[];
603
+ /** Monotonic revision of the resident font set (bumped by register/clear). */
604
+ fontsRevision: number;
552
605
  renderInputs: Array<{
553
606
  story: string;
554
607
  env: YrsRenderEnv;
@@ -558,6 +611,18 @@ interface YrsResidentWorkerSnapshot {
558
611
  layoutWithRegions: boolean;
559
612
  layoutRevision: number;
560
613
  }
614
+ /**
615
+ * What the sync target already holds, so a snapshot can ship deltas instead
616
+ * of the whole world.
617
+ *
618
+ * @internal
619
+ */
620
+ interface YrsResidentWorkerSyncOptions {
621
+ /** The worker replica's last reported yrs state vector. */
622
+ knownStateVector?: Uint8Array | null;
623
+ /** The `fontsRevision` the worker last applied. */
624
+ knownFontsRevision?: number | null;
625
+ }
561
626
  /** A range-aggregated toggle mark. @public */
562
627
  type YrsTriState = boolean | 'mixed';
563
628
  /**
@@ -716,6 +781,8 @@ interface YrsSession extends CollaborationReplica {
716
781
  buildDisplayListJson(input: string): string;
717
782
  /** Build a binary FrameDelta v1 against the last host-applied frame. */
718
783
  buildDisplayListFrame(input: string, expectedFrameEpoch: number): Uint8Array;
784
+ /** Caret geometry from the current resident display frame. */
785
+ residentCaretSnapshot(): YrsResidentCaretSnapshot;
719
786
  /** Apply a collapsed plain-text insertion and return its resident FrameDelta. */
720
787
  applyInput(text: string, expectedFrameEpoch: number): Uint8Array;
721
788
  /** Apply a collapsed character deletion/paragraph merge and return its resident FrameDelta. */
@@ -731,7 +798,16 @@ interface YrsSession extends CollaborationReplica {
731
798
  profile: YrsEngineApplyProfile;
732
799
  };
733
800
  /** Snapshot the inputs needed to move resident layout ownership to a worker. */
734
- residentWorkerSnapshot(): YrsResidentWorkerSnapshot | null;
801
+ residentWorkerSnapshot(options?: YrsResidentWorkerSyncOptions): YrsResidentWorkerSnapshot | null;
802
+ /**
803
+ * Cheap worker-sync probe: the resident layout revision when a worker
804
+ * snapshot would be available, without encoding document state or copying
805
+ * font bytes. Steady-state frame builds consult this instead of building a
806
+ * full snapshot.
807
+ */
808
+ residentWorkerProbe(): {
809
+ layoutRevision: number;
810
+ } | null;
735
811
  /** Resident display-list hit/range queries; results are small JSON records. */
736
812
  displayHitTestRegionsJson(pageIndex: number, x: number, y: number): string;
737
813
  displayRangeRectsJson(from: number, to: number): string;
@@ -931,4 +1007,4 @@ interface CreateYrsSessionOptions {
931
1007
  */
932
1008
  declare function createYrsSession(options?: CreateYrsSessionOptions): Promise<YrsSession>;
933
1009
 
934
- export { type YrsStorySeed as $, type YrsHyperlinkAttrs as A, type YrsImageGeometry as B, type CollaborationReplica as C, type YrsInlineFormatDelta as D, type YrsInputParagraphSeed as E, type YrsInputParagraphSpan as F, type YrsInputPositionMap as G, type YrsNumberingProperties as H, type YrsParaOffset as I, type YrsParagraph as J, type YrsParagraphAttrs as K, type YrsParagraphLength as L, type YrsParagraphReceipt as M, type YrsParagraphSeed as N, type YrsParagraphSpan as O, type YrsParagraphTabStop as P, type YrsRawOp as Q, type ResidentEngineOffscreenPage as R, type YrsResidentWorkerSnapshot as S, type YrsResolveReceipt as T, type YrsResolvedCommentAnchor as U, type YrsRevisionReceipt as V, type YrsRunMark as W, type YrsSelectionContext as X, type YrsSession as Y, type YrsSplitReceipt as Z, type YrsStoryRange as _, type YrsRenderEnv as a, type YrsStorySegment as a0, type YrsTableLoc as a1, type YrsTableRange as a2, type YrsTableReceipt as a3, type YrsTextColor as a4, type YrsTriState as a5, type YrsWatermark as a6, canUseResidentEngineWorker as a7, compareYrsLocs as a8, createYrsInputPositionMap as a9, createYrsSession as aa, displayPositionToYrsLoc as ab, documentToYrs as ac, yrsLocToDisplayPosition as ad, yrsToDocument as ae, type CollaborationTransport as b, type CollaborationProviderOptions as c, type CollaborationStatus as d, type CollaborationStatusListener as e, type CollaborationErrorListener as f, type YrsSelection as g, CollaborationError as h, type CollaborationErrorCode as i, type CollaborationStatusChange as j, type CollaborationTransportEvent as k, type CollaborationUpdateOrigin as l, type YrsLoc as m, type YrsRevisionInfo as n, type CreateYrsSessionOptions as o, type ResidentEngineWorkerApplyResult as p, ResidentEngineWorkerClient as q, type ResidentEngineWorkerFrame as r, type YrsAuthor as s, type YrsCellBorder as t, type YrsCellBorders as u, type YrsCellLoc as v, type YrsChangeTarget as w, type YrsCommentReceipt as x, type YrsContentControlValue as y, type YrsEngineApplyProfile as z };
1010
+ export { type YrsRunMark as $, type YrsEngineApplyProfile as A, type YrsHyperlinkAttrs as B, type CollaborationReplica as C, type YrsImageGeometry as D, type YrsInlineFormatDelta as E, type YrsInputParagraphSeed as F, type YrsInputParagraphSpan as G, type YrsInputPositionMap as H, type YrsNumberingProperties as I, type YrsParaOffset as J, type YrsParagraph as K, type YrsParagraphAttrs as L, type YrsParagraphLength as M, type YrsParagraphReceipt as N, type YrsParagraphSeed as O, type YrsParagraphSpan as P, type YrsParagraphTabStop as Q, type ResidentCaretPaintStyle as R, type YrsRawOp as S, type YrsResidentCaretRect as T, type YrsResidentCaretSnapshot as U, type YrsResidentWorkerSnapshot as V, type YrsResidentWorkerSyncOptions as W, type YrsResolveReceipt as X, type YrsSession as Y, type YrsResolvedCommentAnchor as Z, type YrsRevisionReceipt as _, type YrsRenderEnv as a, type YrsSelectionContext as a0, type YrsSplitReceipt as a1, type YrsStoryRange as a2, type YrsStorySeed as a3, type YrsStorySegment as a4, type YrsTableLoc as a5, type YrsTableRange as a6, type YrsTableReceipt as a7, type YrsTextColor as a8, type YrsTriState as a9, type YrsWatermark as aa, canUseResidentEngineWorker as ab, compareYrsLocs as ac, createYrsInputPositionMap as ad, createYrsSession as ae, displayPositionToYrsLoc as af, documentToYrs as ag, residentCaretDeviceRect as ah, residentCaretSnapshotForFrame as ai, sameYrsSelection as aj, yrsLocToDisplayPosition as ak, yrsToDocument as al, type CollaborationTransport as b, type CollaborationProviderOptions as c, type CollaborationStatus as d, type CollaborationStatusListener as e, type CollaborationErrorListener as f, type YrsSelection as g, CollaborationError as h, type CollaborationErrorCode as i, type CollaborationStatusChange as j, type CollaborationTransportEvent as k, type CollaborationUpdateOrigin as l, type YrsLoc as m, type YrsRevisionInfo as n, type CreateYrsSessionOptions as o, type ResidentEngineOffscreenPage as p, type ResidentEngineWorkerApplyResult as q, ResidentEngineWorkerClient as r, type ResidentEngineWorkerFrame as s, type YrsAuthor as t, type YrsCellBorder as u, type YrsCellBorders as v, type YrsCellLoc as w, type YrsChangeTarget as x, type YrsCommentReceipt as y, type YrsContentControlValue as z };
@@ -1,12 +1,13 @@
1
1
  export { B as BundledFontProvider, E as EmbeddedFaceInput, F as FontScript, a as ResidentFontRequirement, R as ResidentMeasurementConfig, b as RustMeasureSource, c as RustTextEngine, d as createRustMeasureSource, g as getRustTextEngine } from '../rustMeasureSource-D1KsQvVC.mjs';
2
2
  import { Document } from '../types/document.mjs';
3
- import { S as SectionProperties, H as HeaderFooter } from '../content-DLFHRQav.mjs';
4
- import { a as DisplayListQueries, D as DisplayListRect } from '../displayListQueries-UGc_XBUv.mjs';
3
+ import { S as SectionProperties, H as HeaderFooter } from '../content-MOZ6hKP4.mjs';
4
+ import { a as DisplayListQueries, D as DisplayListRect } from '../displayListQueries-BJlo7Jkz.mjs';
5
5
  import '../formatting-D1EPSaJP.mjs';
6
6
  import '../styles-Dn_o3Vo5.mjs';
7
7
  import '../docx/wrapTypes.mjs';
8
- import '../rustDisplayList-CX78djsZ.mjs';
9
- import '../types-DMkDbvEu.mjs';
8
+ import '../frameDelta-D965X8yK.mjs';
9
+ import '../rustDisplayList-BRuZBqdL.mjs';
10
+ import '../types-BfqUl2h_.mjs';
10
11
  import './pagination/index.mjs';
11
12
 
12
13
  /**
@@ -1 +1 @@
1
- import {d,e,g as g$1,c,f,b as b$1}from'../chunk-TTRUPDAB.mjs';function x(o){return o.trim().toLowerCase()}function B(o,e,t){return `${x(o)}|${e?1:0}|${t?1:0}`}var I=class{constructor(e,t){b$1(this,"sink");b$1(this,"bundled");b$1(this,"facesByFamily",new Map);b$1(this,"faceIds",new WeakMap);b$1(this,"bundledIds",new Map);b$1(this,"lastResortIds",new Map);b$1(this,"bufferIds",new WeakMap);b$1(this,"scriptIds",new Map);b$1(this,"scriptResults",new Map);b$1(this,"chains",new Map);b$1(this,"chainResults",new Map);b$1(this,"generation",0);this.sink=e,this.bundled=t?.bundled;}setEmbeddedFaces(e){this.generation++,this.facesByFamily=new Map;for(let t of e){let n=x(t.family),r=this.facesByFamily.get(n);r?r.push(t):this.facesByFamily.set(n,[t]);}this.chains=new Map,this.chainResults=new Map;}getFontIdChain(e,t,n){let r=B(e,t,n),i=this.chains.get(r);return i||(i=this.resolveChain(r,e,t,n),this.chains.set(r,i)),i}getCachedFontIdChain(e,t,n){return this.chainResults.get(B(e,t,n))}getScriptFallbackIds(e){let t=[...new Set(e)];return Promise.all(t.map(n=>this.resolveScript(n))).then(n=>{let r=[];for(let i of n)i!==null&&!r.includes(i)&&r.push(i);return r})}getCachedScriptFallbackIds(e){let t=[];for(let n of e){if(!this.scriptResults.has(n))return;let r=this.scriptResults.get(n);r!==null&&!t.includes(r)&&t.push(r);}return t}clear(){this.generation++,this.faceIds=new WeakMap,this.bundledIds=new Map,this.lastResortIds=new Map,this.bufferIds=new WeakMap,this.scriptIds=new Map,this.scriptResults=new Map,this.chains=new Map,this.chainResults=new Map;}async resolveChain(e,t,n,r){let i=this.generation,s=[],a=this.pickEmbeddedFace(t,n,r);if(a){let l=await this.registerFace(a);l!==null&&s.push(l);}let f=this.bundled?.resolve(t,n,r);if(f){let l=await this.registerBundled(e,f,t);l!==null&&!s.includes(l)&&s.push(l);}let h=this.bundled?.resolveLastResort?.(t,n,r);if(h){let l=await this.registerLastResort(e,h,t);l!==null&&!s.includes(l)&&s.push(l);}return i===this.generation&&this.chainResults.set(e,s),s}pickEmbeddedFace(e,t,n){let r=this.facesByFamily.get(x(e));if(!r)return;let i=t?"bold":"normal",s=n?"italic":"normal";return r.find(a=>a.weight===i&&a.style===s)??r.find(a=>a.weight==="normal"&&a.style==="normal")}registerBuffer(e){let t=this.bufferIds.get(e);return t||(t=Promise.resolve().then(()=>this.sink.registerFont(new Uint8Array(e))),t.catch(()=>{}),this.bufferIds.set(e,t)),t}registerFace(e){let t=this.faceIds.get(e);return t||(t=(async()=>{try{return await this.registerBuffer(e.data)}catch{return console.warn(`[fontRegistry] embedded face "${e.family}" (${e.weight} ${e.style}) was rejected by the text engine; falling back`),null}})(),this.faceIds.set(e,t)),t}registerBundled(e,t,n){let r=this.bundledIds.get(e);return r||(r=(async()=>{try{let i=await t();return await this.registerBuffer(i)}catch{return console.warn(`[fontRegistry] bundled face for "${n}" failed to load or register; falling back`),null}})(),this.bundledIds.set(e,r)),r}registerLastResort(e,t,n){let r=this.lastResortIds.get(e);return r||(r=(async()=>{try{let i=await t();return await this.registerBuffer(i)}catch{return console.warn(`[fontRegistry] last-resort base face for "${n}" failed to load or register; falling back`),null}})(),this.lastResortIds.set(e,r)),r}resolveScript(e){let t=this.scriptIds.get(e);if(!t){let n=this.scriptResults;t=(async()=>{let r=null,i=this.bundled?.resolveScriptFallback?.(e,false,false);if(i)try{let s=await i();r=await this.registerBuffer(s);}catch{console.warn(`[fontRegistry] script-fallback face for "${e}" failed to load or register; falling back`);}return n.set(e,r),r})(),this.scriptIds.set(e,t);}return t}};var L=null;function T(){return L??(L=import('../wasm-SA237OSP.mjs').then(async o=>(await o.preloadLayoutWasm(),{registerFont:o.registerMeasureFont,clearFonts:o.clearMeasureFonts}))),L}function H(o){let e=new I({registerFont:n=>o.engine.registerFont(n)},{bundled:o.bundled}),t;return {setEmbeddedFaces(n){e.setEmbeddedFaces(n);},setCompat(n){t=n;},async prepareFontRequirements(n){return (await Promise.all(n.flatMap(i=>[(async()=>{try{return e.getCachedFontIdChain(i.family,i.bold,i.italic)!==void 0?!1:(await e.getFontIdChain(i.family,i.bold,i.italic),!0)}catch{return false}})(),...Array.from(new Set(i.scripts??[]),async s=>{try{return e.getCachedScriptFallbackIds([s])!==void 0?!1:(await e.getScriptFallbackIds([s]),!0)}catch{return false}})]))).some(Boolean)},measurementConfigForRequirements(n){let r={};for(let i of n){let s=e.getCachedFontIdChain(i.family,i.bold,i.italic),a=e.getCachedScriptFallbackIds(i.scripts??[]);if(s===void 0||a===void 0)return;let f=Array.from(s);for(let h of a)f.includes(h)||f.push(h);f.length>0&&(r[i.key]=f);}return {fontChains:r,defaults:{fontSize:11,fontFamily:"Calibri"},compat:{noLeading:t?.noLeading??false,doNotExpandShiftReturn:t?.doNotExpandShiftReturn??false},authoritativeShaping:true}},clear(){e.clear();}}}var q=1056;function A(o,e){let t=o?.package.headers,n=o?.package.footers,r=e?.headerReferences?.find(y=>y.type==="default"),i=e?.headerReferences?.find(y=>y.type==="first"),s=e?.footerReferences?.find(y=>y.type==="default"),a=e?.footerReferences?.find(y=>y.type==="first"),f=r?t?.get(r.rId)??null:null,h=s?n?.get(s.rId)??null:null,l=i?t?.get(i.rId)??null:null,M=a?n?.get(a.rId)??null:null;return e?.titlePg||(f??(f=l),h??(h=M)),{header:f,footer:h,firstHeader:l,firstFooter:M}}function D(o,e,t,n,r){let i=o.hfCaretRects(e,t,n);return r===void 0?i:i.filter(s=>s.pageIndex===r)}function $(o,e,t,n,r,i){let s=o.hfRangeRects(e,t,Math.min(n,r),Math.max(n,r));return i===void 0?s:s.filter(a=>a.pageIndex===i)}var p,m,g,b,R,w,E,C=class{constructor(){d(this,w);d(this,p,0);d(this,m,0);d(this,g,false);d(this,b,false);d(this,R,new Set);}setStateSeq(e$1){e(this,p,e$1);}incrementStateSeq(){return ++g$1(this,p)._}getStateSeq(){return c(this,p)}getRenderSeq(){return c(this,m)}onLayoutStart(){e(this,g,true);}onLayoutComplete(e$1){e(this,m,e$1),e(this,g,false),c(this,b)&&this.isSafeToRender()&&(e(this,b,false),f(this,w,E).call(this));}isSafeToRender(){return !c(this,g)&&c(this,m)>=c(this,p)}requestRender(){this.isSafeToRender()?f(this,w,E).call(this):e(this,b,true);}onRender(e){return c(this,R).add(e),()=>c(this,R).delete(e)}reset(){e(this,p,0),e(this,m,0),e(this,g,false),e(this,b,false);}getDebugInfo(){return {stateSeq:c(this,p),renderSeq:c(this,m),layoutUpdating:c(this,g),hasPendingRender:c(this,b),isSafe:this.isSafeToRender()}}};p=new WeakMap,m=new WeakMap,g=new WeakMap,b=new WeakMap,R=new WeakMap,w=new WeakSet,E=function(){for(let e of c(this,R))try{e();}catch(t){console.error("LayoutSelectionGate: render callback error",t);}};export{q as DEFAULT_PAGE_HEIGHT_PX,C as LayoutSelectionGate,D as computeHfCaretRectsFromDisplayList,$ as computeHfSelectionRectsFromDisplayList,H as createRustMeasureSource,T as getRustTextEngine,A as resolveHeaderFooter};
1
+ import {d,e,g as g$1,c,f,b as b$1}from'../chunk-TTRUPDAB.mjs';function x(o){return o.trim().toLowerCase()}function B(o,e,t){return `${x(o)}|${e?1:0}|${t?1:0}`}var I=class{constructor(e,t){b$1(this,"sink");b$1(this,"bundled");b$1(this,"facesByFamily",new Map);b$1(this,"faceIds",new WeakMap);b$1(this,"bundledIds",new Map);b$1(this,"lastResortIds",new Map);b$1(this,"bufferIds",new WeakMap);b$1(this,"scriptIds",new Map);b$1(this,"scriptResults",new Map);b$1(this,"chains",new Map);b$1(this,"chainResults",new Map);b$1(this,"generation",0);this.sink=e,this.bundled=t?.bundled;}setEmbeddedFaces(e){this.generation++,this.facesByFamily=new Map;for(let t of e){let n=x(t.family),r=this.facesByFamily.get(n);r?r.push(t):this.facesByFamily.set(n,[t]);}this.chains=new Map,this.chainResults=new Map;}getFontIdChain(e,t,n){let r=B(e,t,n),i=this.chains.get(r);return i||(i=this.resolveChain(r,e,t,n),this.chains.set(r,i)),i}getCachedFontIdChain(e,t,n){return this.chainResults.get(B(e,t,n))}getScriptFallbackIds(e){let t=[...new Set(e)];return Promise.all(t.map(n=>this.resolveScript(n))).then(n=>{let r=[];for(let i of n)i!==null&&!r.includes(i)&&r.push(i);return r})}getCachedScriptFallbackIds(e){let t=[];for(let n of e){if(!this.scriptResults.has(n))return;let r=this.scriptResults.get(n);r!==null&&!t.includes(r)&&t.push(r);}return t}clear(){this.generation++,this.faceIds=new WeakMap,this.bundledIds=new Map,this.lastResortIds=new Map,this.bufferIds=new WeakMap,this.scriptIds=new Map,this.scriptResults=new Map,this.chains=new Map,this.chainResults=new Map;}async resolveChain(e,t,n,r){let i=this.generation,s=[],a=this.pickEmbeddedFace(t,n,r);if(a){let l=await this.registerFace(a);l!==null&&s.push(l);}let f=this.bundled?.resolve(t,n,r);if(f){let l=await this.registerBundled(e,f,t);l!==null&&!s.includes(l)&&s.push(l);}let h=this.bundled?.resolveLastResort?.(t,n,r);if(h){let l=await this.registerLastResort(e,h,t);l!==null&&!s.includes(l)&&s.push(l);}return i===this.generation&&this.chainResults.set(e,s),s}pickEmbeddedFace(e,t,n){let r=this.facesByFamily.get(x(e));if(!r)return;let i=t?"bold":"normal",s=n?"italic":"normal";return r.find(a=>a.weight===i&&a.style===s)??r.find(a=>a.weight==="normal"&&a.style==="normal")}registerBuffer(e){let t=this.bufferIds.get(e);return t||(t=Promise.resolve().then(()=>this.sink.registerFont(new Uint8Array(e))),t.catch(()=>{}),this.bufferIds.set(e,t)),t}registerFace(e){let t=this.faceIds.get(e);return t||(t=(async()=>{try{return await this.registerBuffer(e.data)}catch{return console.warn(`[fontRegistry] embedded face "${e.family}" (${e.weight} ${e.style}) was rejected by the text engine; falling back`),null}})(),this.faceIds.set(e,t)),t}registerBundled(e,t,n){let r=this.bundledIds.get(e);return r||(r=(async()=>{try{let i=await t();return await this.registerBuffer(i)}catch{return console.warn(`[fontRegistry] bundled face for "${n}" failed to load or register; falling back`),null}})(),this.bundledIds.set(e,r)),r}registerLastResort(e,t,n){let r=this.lastResortIds.get(e);return r||(r=(async()=>{try{let i=await t();return await this.registerBuffer(i)}catch{return console.warn(`[fontRegistry] last-resort base face for "${n}" failed to load or register; falling back`),null}})(),this.lastResortIds.set(e,r)),r}resolveScript(e){let t=this.scriptIds.get(e);if(!t){let n=this.scriptResults;t=(async()=>{let r=null,i=this.bundled?.resolveScriptFallback?.(e,false,false);if(i)try{let s=await i();r=await this.registerBuffer(s);}catch{console.warn(`[fontRegistry] script-fallback face for "${e}" failed to load or register; falling back`);}return n.set(e,r),r})(),this.scriptIds.set(e,t);}return t}};var L=null;function T(){return L??(L=import('../wasm-DO3BUV7C.mjs').then(async o=>(await o.preloadLayoutWasm(),{registerFont:o.registerMeasureFont,clearFonts:o.clearMeasureFonts}))),L}function H(o){let e=new I({registerFont:n=>o.engine.registerFont(n)},{bundled:o.bundled}),t;return {setEmbeddedFaces(n){e.setEmbeddedFaces(n);},setCompat(n){t=n;},async prepareFontRequirements(n){return (await Promise.all(n.flatMap(i=>[(async()=>{try{return e.getCachedFontIdChain(i.family,i.bold,i.italic)!==void 0?!1:(await e.getFontIdChain(i.family,i.bold,i.italic),!0)}catch{return false}})(),...Array.from(new Set(i.scripts??[]),async s=>{try{return e.getCachedScriptFallbackIds([s])!==void 0?!1:(await e.getScriptFallbackIds([s]),!0)}catch{return false}})]))).some(Boolean)},measurementConfigForRequirements(n){let r={};for(let i of n){let s=e.getCachedFontIdChain(i.family,i.bold,i.italic),a=e.getCachedScriptFallbackIds(i.scripts??[]);if(s===void 0||a===void 0)return;let f=Array.from(s);for(let h of a)f.includes(h)||f.push(h);f.length>0&&(r[i.key]=f);}return {fontChains:r,defaults:{fontSize:11,fontFamily:"Calibri"},compat:{noLeading:t?.noLeading??false,doNotExpandShiftReturn:t?.doNotExpandShiftReturn??false},authoritativeShaping:true}},clear(){e.clear();}}}var q=1056;function A(o,e){let t=o?.package.headers,n=o?.package.footers,r=e?.headerReferences?.find(y=>y.type==="default"),i=e?.headerReferences?.find(y=>y.type==="first"),s=e?.footerReferences?.find(y=>y.type==="default"),a=e?.footerReferences?.find(y=>y.type==="first"),f=r?t?.get(r.rId)??null:null,h=s?n?.get(s.rId)??null:null,l=i?t?.get(i.rId)??null:null,M=a?n?.get(a.rId)??null:null;return e?.titlePg||(f??(f=l),h??(h=M)),{header:f,footer:h,firstHeader:l,firstFooter:M}}function D(o,e,t,n,r){let i=o.hfCaretRects(e,t,n);return r===void 0?i:i.filter(s=>s.pageIndex===r)}function $(o,e,t,n,r,i){let s=o.hfRangeRects(e,t,Math.min(n,r),Math.max(n,r));return i===void 0?s:s.filter(a=>a.pageIndex===i)}var p,m,g,b,R,w,E,C=class{constructor(){d(this,w);d(this,p,0);d(this,m,0);d(this,g,false);d(this,b,false);d(this,R,new Set);}setStateSeq(e$1){e(this,p,e$1);}incrementStateSeq(){return ++g$1(this,p)._}getStateSeq(){return c(this,p)}getRenderSeq(){return c(this,m)}onLayoutStart(){e(this,g,true);}onLayoutComplete(e$1){e(this,m,e$1),e(this,g,false),c(this,b)&&this.isSafeToRender()&&(e(this,b,false),f(this,w,E).call(this));}isSafeToRender(){return !c(this,g)&&c(this,m)>=c(this,p)}requestRender(){this.isSafeToRender()?f(this,w,E).call(this):e(this,b,true);}onRender(e){return c(this,R).add(e),()=>c(this,R).delete(e)}reset(){e(this,p,0),e(this,m,0),e(this,g,false),e(this,b,false);}getDebugInfo(){return {stateSeq:c(this,p),renderSeq:c(this,m),layoutUpdating:c(this,g),hasPendingRender:c(this,b),isSafe:this.isSafeToRender()}}};p=new WeakMap,m=new WeakMap,g=new WeakMap,b=new WeakMap,R=new WeakMap,w=new WeakSet,E=function(){for(let e of c(this,R))try{e();}catch(t){console.error("LayoutSelectionGate: render callback error",t);}};export{q as DEFAULT_PAGE_HEIGHT_PX,C as LayoutSelectionGate,D as computeHfCaretRectsFromDisplayList,$ as computeHfSelectionRectsFromDisplayList,H as createRustMeasureSource,T as getRustTextEngine,A as resolveHeaderFooter};
@@ -1,6 +1,6 @@
1
- import { L as LayoutBlock, B as BlockExtent } from '../../types-DMkDbvEu.mjs';
2
- export { A as AnchoredObjectPositionInput, d as BlockId, e as BorderStyle, C as CellBorderSpec, f as CellBorders, g as ChartBlock, h as ChartExtent, i as ChartFragment, j as ColumnBreakBlock, k as ColumnBreakExtent, l as ColumnLayout, D as DEFAULT_TEXTBOX_MARGINS, m as DEFAULT_TEXTBOX_WIDTH, n as DocumentPosition, o as FieldRun, p as FloatingTablePosition, F as FootnoteContent, q as FootnoteRenderItem, r as Fragment, s as FragmentBase, H as HeaderFooterContent, t as HeaderFooterContentHeights, u as HeaderFooterLayout, v as HitTestResult, w as HyperlinkInfo, I as ImageBlock, x as ImageExtent, y as ImageFragment, z as ImageRun, E as ImageRunPosition, G as InlineSdtWidget, a as Layout, b as LayoutOptions, J as LineBreakRun, K as ListNumPr, N as NoteAreaContract, M as NoteLayoutItem, O as NoteSettingsContract, P as Page, Q as PageBorderContract, S as PageBreakBlock, T as PageBreakExtent, U as PageGeometry, V as PageHeaderFooterRefs, W as PageMargins, X as PageNumberingContract, Y as ParagraphAttrs, Z as ParagraphBlock, _ as ParagraphBorders, $ as ParagraphExtent, a0 as ParagraphFragment, a1 as ParagraphIndent, a2 as ParagraphSpacing, R as ResolvedLine, c as ResolvedSegment, a3 as Run, a4 as RunFontSlots, a5 as RunFormatting, a6 as RunLanguageSlots, a7 as SdtGroup, a8 as SectionBreakBlock, a9 as SectionBreakExtent, aa as ShapeBlock, ab as ShapeBlockFill, ac as ShapeBlockStroke, ad as ShapeBlockTransform, ae as ShapeExtent, af as ShapeFragment, ag as TabAlignment, ah as TabRun, ai as TabStop, aj as TableBlock, ak as TableCell, al as TableCellExtent, am as TableExtent, an as TableFragment, ao as TableRow, ap as TableRowExtent, aq as TextBoxBlock, ar as TextBoxExtent, as as TextBoxFragment, at as TextRun, au as TypesetBidiSlice, av as TypesetClusterAdvance, aw as TypesetRow, ax as TypesetRowSegment, ay as TypesetRunAdvance, az as WrapTextDirection, aA as assertExhaustiveLayoutBlock, aB as isTextWrappingFloatingImageRun, aC as pageGeometryFromPage, aD as resolveAnchoredObjectVerticalTop } from '../../types-DMkDbvEu.mjs';
3
- import '../../content-DLFHRQav.mjs';
1
+ import { L as LayoutBlock, B as BlockExtent } from '../../types-BfqUl2h_.mjs';
2
+ export { A as AnchoredObjectPositionInput, d as BlockId, e as BorderStyle, C as CellBorderSpec, f as CellBorders, g as ChartBlock, h as ChartExtent, i as ChartFragment, j as ColumnBreakBlock, k as ColumnBreakExtent, l as ColumnLayout, D as DEFAULT_TEXTBOX_MARGINS, m as DEFAULT_TEXTBOX_WIDTH, n as DocumentPosition, o as FieldRun, p as FloatingTablePosition, F as FootnoteContent, q as FootnoteRenderItem, r as Fragment, s as FragmentBase, H as HeaderFooterContent, t as HeaderFooterContentHeights, u as HeaderFooterLayout, v as HitTestResult, w as HyperlinkInfo, I as ImageBlock, x as ImageExtent, y as ImageFragment, z as ImageRun, E as ImageRunPosition, G as InlineSdtWidget, a as Layout, b as LayoutOptions, J as LineBreakRun, K as ListNumPr, N as NoteAreaContract, M as NoteLayoutItem, O as NoteSettingsContract, P as Page, Q as PageBorderContract, S as PageBreakBlock, T as PageBreakExtent, U as PageGeometry, V as PageHeaderFooterRefs, W as PageMargins, X as PageNumberingContract, Y as ParagraphAttrs, Z as ParagraphBlock, _ as ParagraphBorders, $ as ParagraphExtent, a0 as ParagraphFragment, a1 as ParagraphIndent, a2 as ParagraphSpacing, R as ResolvedLine, c as ResolvedSegment, a3 as Run, a4 as RunFontSlots, a5 as RunFormatting, a6 as RunLanguageSlots, a7 as SdtGroup, a8 as SectionBreakBlock, a9 as SectionBreakExtent, aa as ShapeBlock, ab as ShapeBlockFill, ac as ShapeBlockStroke, ad as ShapeBlockTransform, ae as ShapeExtent, af as ShapeFragment, ag as TabAlignment, ah as TabRun, ai as TabStop, aj as TableBlock, ak as TableCell, al as TableCellExtent, am as TableExtent, an as TableFragment, ao as TableRow, ap as TableRowExtent, aq as TextBoxBlock, ar as TextBoxExtent, as as TextBoxFragment, at as TextRun, au as TypesetBidiSlice, av as TypesetClusterAdvance, aw as TypesetRow, ax as TypesetRowSegment, ay as TypesetRunAdvance, az as WrapTextDirection, aA as assertExhaustiveLayoutBlock, aB as isTextWrappingFloatingImageRun, aC as pageGeometryFromPage, aD as resolveAnchoredObjectVerticalTop } from '../../types-BfqUl2h_.mjs';
3
+ import '../../content-MOZ6hKP4.mjs';
4
4
  import '../../formatting-D1EPSaJP.mjs';
5
5
  import '../../docx/wrapTypes.mjs';
6
6
 
@@ -1,13 +1,14 @@
1
- import { b as DisplayPage, c as DisplayPrimitive, a as DisplayList, G as GlyphRunPrimitive, L as LinePrimitive, T as TextRunPrimitive } from '../../rustDisplayList-CX78djsZ.mjs';
2
- export { d as DecodedFrameDelta, e as DecorationPrimitive, f as DisplayBounds, g as DisplayListBuildInputs, D as DisplayListHeadersFooters, h as DisplayListHfVariant, i as DisplayListPictureWatermark, j as DisplayListTextWatermark, k as DisplayListWatermark, l as DocAttrs, F as FRAME_DELTA_HEADER_BYTES, m as FRAME_DELTA_PAGE_OP_BYTES, n as FRAME_DELTA_VERSION, o as FrameDeltaError, p as FrameDeltaErrorCode, q as FramePageOperation, H as HfRegion, I as ImagePrimitive, P as PositionedGlyph, r as RectPrimitive, s as RetainedFrame, t as RetainedFramePage, u as RustDisplayFrameResult, v as RustDisplayListEngine, R as RustDisplayListQueryEngine, w as RustDisplayListSourceError, x as RustDisplayListSourceErrorStage, y as TableCellRef, z as applyFrameDelta, A as applyFrameDeltaOwned, B as buildRustDisplayFrame, C as buildRustDisplayList, E as decodeFrameDelta, J as encodeDisplayListFrameExtras, K as loadRustDisplayListQueryEngine } from '../../rustDisplayList-CX78djsZ.mjs';
3
- import { a as DisplayListQueries, b as DisplayListRegionHit, D as DisplayListRect } from '../../displayListQueries-UGc_XBUv.mjs';
4
- export { c as DisplayListHitRegion, d as DisplayListImageGeometry, e as DisplayListImageRegion, f as DisplayListParagraphGeometry, g as DisplayListQuerySourceState, h as DisplayListVisualLine, L as LocatedImagePrimitive, R as ResidentDisplayListQueryEngine, i as captureInlinePositionEmuFromDisplayList, j as createDisplayListQueries, k as findImagePrimitiveAtPoint, l as findImagePrimitiveByDocPos } from '../../displayListQueries-UGc_XBUv.mjs';
5
- import { m as YrsLoc, Y as YrsSession, n as YrsRevisionInfo } from '../../index-Bwxm3oiC.mjs';
1
+ import { a as DisplayPage, b as DisplayPrimitive, D as DisplayList, G as GlyphRunPrimitive, L as LinePrimitive, T as TextRunPrimitive } from '../../frameDelta-D965X8yK.mjs';
2
+ export { c as DecodedFrameDelta, d as DecorationPrimitive, e as DisplayBounds, f as DocAttrs, F as FRAME_DELTA_HEADER_BYTES, g as FRAME_DELTA_PAGE_OP_BYTES, h as FRAME_DELTA_VERSION, i as FrameDeltaError, j as FrameDeltaErrorCode, k as FramePageOperation, H as HfRegion, I as ImagePrimitive, P as PositionedGlyph, l as RectPrimitive, R as RetainedFrame, m as RetainedFramePage, n as TableCellRef, o as applyFrameDelta, p as applyFrameDeltaOwned, q as decodeFrameDelta } from '../../frameDelta-D965X8yK.mjs';
3
+ export { a as DisplayListBuildInputs, D as DisplayListHeadersFooters, b as DisplayListHfVariant, c as DisplayListPictureWatermark, d as DisplayListTextWatermark, e as DisplayListWatermark, f as RustDisplayFrameResult, g as RustDisplayListEngine, R as RustDisplayListQueryEngine, h as RustDisplayListSourceError, i as RustDisplayListSourceErrorStage, j as buildRustDisplayFrame, k as buildRustDisplayList, l as encodeDisplayListFrameExtras, m as loadRustDisplayListQueryEngine } from '../../rustDisplayList-BRuZBqdL.mjs';
4
+ import { a as DisplayListQueries, b as DisplayListRegionHit, D as DisplayListRect } from '../../displayListQueries-BJlo7Jkz.mjs';
5
+ export { c as DisplayListHitRegion, d as DisplayListImageGeometry, e as DisplayListImageRegion, f as DisplayListParagraphGeometry, g as DisplayListQuerySourceState, h as DisplayListVisualLine, L as LocatedImagePrimitive, R as ResidentDisplayListQueryEngine, i as captureInlinePositionEmuFromDisplayList, j as createDisplayListQueries, k as findImagePrimitiveAtPoint, l as findImagePrimitiveByDocPos } from '../../displayListQueries-BJlo7Jkz.mjs';
6
+ import { m as YrsLoc, Y as YrsSession, n as YrsRevisionInfo } from '../../index-Dx4Z3lkz.mjs';
6
7
  import { TrackedChangeEntry } from '../../utils/comments.mjs';
7
- import '../../types-DMkDbvEu.mjs';
8
- import '../../content-DLFHRQav.mjs';
8
+ import '../../content-MOZ6hKP4.mjs';
9
9
  import '../../formatting-D1EPSaJP.mjs';
10
10
  import '../../docx/wrapTypes.mjs';
11
+ import '../../types-BfqUl2h_.mjs';
11
12
  import '../pagination/index.mjs';
12
13
  import '../../types/document.mjs';
13
14
  import '../../styles-Dn_o3Vo5.mjs';
@@ -1 +1 @@
1
- import {d,c,e,r,s,f}from'../../chunk-6NEKRDXF.mjs';export{o as FRAME_DELTA_HEADER_BYTES,p as FRAME_DELTA_PAGE_OP_BYTES,n as FRAME_DELTA_VERSION,q as FrameDeltaError,a as GlyphCache,s as applyFrameDelta,t as applyFrameDeltaOwned,r as decodeFrameDelta,l as drawDisplayPage,m as drawPrimitive,b as fontSizePxFromShorthand,d as glyphRunRect,e as lineRect,h as presentDisplayPageBackBuffer,i as presentOffscreenPageBackBuffer,k as rasterizeDisplayListPages,g as rasterizeDisplayPageToBackBuffer,j as sizeCanvasForPage,c as textRunRect}from'../../chunk-6NEKRDXF.mjs';export{b as resolveCanvasPoint,a as resolveDisplayPageClientRect}from'../../chunk-WRWRCBLK.mjs';import {c as c$1}from'../../chunk-3UBMCDME.mjs';import {b}from'../../chunk-TTRUPDAB.mjs';var Xe={pages:[{pageIndex:0,width:816,height:1056,primitives:[{kind:"rect",x:96,y:96,w:624,h:20,fill:"#fff9c4",blockId:0,docStart:1,docEnd:12},{kind:"text",text:"Hello Word",x:96,baselineY:110,width:84.5,font:"700 16px Calibri, sans-serif",color:"#000000",docStart:1,docEnd:11,blockId:0},{kind:"decoration",deco:"underline",x:96,y:113,w:84.5,h:1,color:"#000000",docStart:1,docEnd:11,blockId:0},{kind:"text",text:" \u2014 second run",x:180.5,baselineY:110,width:96.25,font:"400 16px Calibri, sans-serif",color:"#c0392b",docStart:11,docEnd:24,blockId:0},{kind:"line",x1:96,y1:140,x2:720,y2:140,strokeWidth:.75,color:"#666666",role:"table-border"},{kind:"image",relId:"rId7",x:96,y:160,w:200,h:120,docStart:30,docEnd:31,blockId:2}]}]};function Bt(){return import('../../wasm-SA237OSP.mjs').then(async e=>(await e.preloadLayoutWasm(),e.outlineGlyphJson))}var D={page:"layout-page layout-page-mirror",content:"layout-page-content",header:"layout-page-header",footer:"layout-page-footer",block:"layout-paragraph",table:"layout-table",tableRow:"layout-table-row",tableCell:"layout-table-cell",text:"layout-run layout-run-text",rect:"layout-mirror-rect",image:"layout-run layout-run-image",shape:"layout-run layout-run-shape",chart:"layout-run layout-run-chart",decoration:"layout-decoration",line:"layout-mirror-line",pageBorder:"layout-page-border",tableCut:"layout-table-cut-border",blockSdt:"layout-block-sdt",inlineSdtWidget:"layout-inline-sdt-widget",revisionPmark:"layout-revision-pmark",revisionPmarkGlyph:"layout-revision-pmark-glyph",revisionPmarkIns:"layout-revision-ins",revisionPmarkDel:"layout-revision-del",listMarker:"layout-list-marker",revisionTable:"oox-revision-table",revisionRow:"oox-revision-row",revisionCell:"oox-revision-cell",revisionIns:"oox-revision-ins",revisionDel:"oox-revision-del",revisionMerge:"oox-revision-merge",notes:"layout-page-notes",note:"layout-note",noteBacklink:"layout-note-backlink"};function Ht(e,t={}){let r=t.document??document,i=t.labels,n={labels:i,noteRefIds:new Set},s=r.createElement("div");s.className=D.page,s.setAttribute("role","document"),i?.page&&s.setAttribute("aria-label",i.page),s.dataset.pageIndex=String(e.pageIndex),e.sectionId!==void 0&&(s.dataset.sectionId=e.sectionId),e.sectionIndex!==void 0&&(s.dataset.sectionIndex=String(e.sectionIndex)),e.sectionPageIndex!==void 0&&(s.dataset.sectionPageIndex=String(e.sectionPageIndex)),e.sectionPageNumber!==void 0&&(s.dataset.sectionPageNumber=String(e.sectionPageNumber)),e.pageLabel!==void 0&&(s.dataset.pageLabel=e.pageLabel),s.style.position="relative",s.style.width=`${e.width}px`,s.style.height=`${e.height}px`,s.style.opacity="0",s.style.pointerEvents="none";let o=r.createElement("div");o.className=D.content,o.style.position="absolute",o.style.left="0",o.style.top="0",o.style.width=`${e.width}px`,o.style.height=`${e.height}px`,s.appendChild(o);for(let a of (e.pageBorders??[]).filter(l=>l.zOrder==="back"))o.appendChild(Je(a,r,0));re(o,e.primitives,r,0,n);for(let a of e.noteAreas??[])o.appendChild(Wt(a,e,r,n));for(let a of [e.header,e.footer])a&&s.appendChild(Gt(a,e,r,n));for(let a of (e.pageBorders??[]).filter(l=>l.zOrder!=="back"))s.appendChild(Je(a,r,0));return s}function Gt(e,t,r,i){let n=r.createElement("div");n.className=e.kind==="header"?D.header:D.footer,n.dataset.hfRid=e.rId;let s=e.kind==="header"?i.labels?.header:i.labels?.footer;return s&&(n.setAttribute("role","region"),n.setAttribute("aria-label",s)),n.style.position="absolute",n.style.left="0",n.style.top=`${e.y}px`,n.style.width=`${t.width}px`,n.style.height=`${e.height}px`,re(n,e.primitives,r,-e.y,i),n}function re(e,t,r,i,n){let s=new Map;for(let o of t){let a=o.kind==="line"?void 0:o.blockKey??o.blockId;if(a===void 0){e.appendChild(ye(o,r,i,n));continue}let l=o.table,c=l?.tableId!==void 0?`table:${l.tableId}#${l.rowStart??0}`:a,d=s.get(c);if(!d){let g=r.createElement("div");g.dataset.blockId=String(l?.tableId??a),g.style.position="absolute",g.style.left="0",g.style.top="0",e.appendChild(g),d={el:g,prims:[]},s.set(c,d);}d.prims.push(o);}for(let o of s.values())Nt(o,r,i,n);Ot(s);}function Nt(e,t,r,i){let{el:n,prims:s}=e;if(!s.some(f=>f.cell!==void 0||f.structuralRevision?.scope==="table"||f.structuralRevision?.scope==="row"||f.structuralRevision?.scope==="cell")){$e(n,s,t,r,i);return}n.className=D.table,n.setAttribute("role","table");let a=s.find(f=>f.table!==void 0)?.table;e.table=a,e.cells=[],a?.tableId!==void 0&&(n.dataset.tableId=a.tableId),a?.rowStart!==void 0&&(n.dataset.rowStart=String(a.rowStart)),a?.rowEnd!==void 0&&(n.dataset.rowEnd=String(a.rowEnd)),a?.headerRowCount!==void 0&&(n.dataset.headerRowCount=String(a.headerRowCount)),a?.parentTableId!==void 0&&(n.dataset.parentTableId=a.parentTableId),a?.caption&&n.setAttribute("aria-label",a.caption),a?.description&&n.setAttribute("aria-description",a.description);let l=fe(s,"table");l&&pe(n,l),we(n,s.find(f=>f.sdt!==void 0)?.sdt);for(let f of s)f.cell===void 0&&n.appendChild(ye(f,t,r,i));let c=new Map,d=0,g=0;for(let f of s){if(f.cell===void 0)continue;let{row:u,col:h}=f.cell;d=Math.max(d,u+(f.cell.rowSpan??1)),g=Math.max(g,h+(f.cell.colSpan??1));let L=c.get(u);L||(L=new Map,c.set(u,L));let k=L.get(h);k||(k={ref:f.cell,prims:[]},L.set(h,k)),k.prims.push(f);}n.setAttribute("aria-rowcount",String(a?.rowCount??d)),n.setAttribute("aria-colcount",String(a?.columnCount??g));for(let f of [...c.keys()].sort((u,h)=>u-h)){let u=t.createElement("div");u.className=D.tableRow,u.setAttribute("role","row"),u.setAttribute("aria-rowindex",String(f+1));let h=fe(s,"row",f);h&&pe(u,h),u.style.position="absolute",u.style.left="0",u.style.top="0",n.appendChild(u);let L=c.get(f);for(let k of [...L.keys()].sort((v,b)=>v-b)){let v=L.get(k),b=t.createElement("div");b.className=D.tableCell,b.setAttribute("role",v.ref.isHeader?"columnheader":"cell"),b.setAttribute("aria-colindex",String(k+1)),v.ref.cellId&&(b.id=v.ref.cellId),v.ref.headerIds?.length&&b.setAttribute("aria-labelledby",v.ref.headerIds.join(" ")),v.ref.repeatedHeader&&(b.dataset.repeatedHeader="true"),v.ref.noWrap&&(b.dataset.noWrap="true");let M=v.ref.rowSpan??1,C=v.ref.colSpan??1;M>1&&b.setAttribute("aria-rowspan",String(M)),C>1&&b.setAttribute("aria-colspan",String(C));let w=fe(v.prims,"cell",f,k);w&&pe(b,w),v.ref.continuation&&(b.dataset.vmergeContinuation="true"),b.style.position="absolute",b.style.left="0",b.style.top="0";let Y=new Map,ee=[];for(let A of v.prims){let W=A.blockKey??A.blockId;if(W===void 0){ee.push(A);continue}let G=Y.get(W);G?G.push(A):Y.set(W,[A]);}for(let A of ve(ee))b.appendChild(ye(A,t,r,i));for(let[A,W]of Y){let G=t.createElement("div");G.dataset.blockId=String(A),G.style.position="absolute",G.style.left="0",G.style.top="0",$e(G,W,t,r,i),b.appendChild(G);}Yt(b,v.prims),je(b,v.prims),e.cells.push({el:b,bounds:ze(v.prims)}),u.appendChild(b);}}ke(n,s);}function $e(e,t,r,i,n){let s=t.find(c=>c.chart!==void 0)?.chart;e.className=s?`${D.block} ${D.chart}`:D.block,e.setAttribute("role",s?"img":"paragraph"),s?.label&&e.setAttribute("aria-label",s.label);for(let c of ve(t))e.appendChild(ye(c,r,i,n));let o=fe(t,"pmark");o&&pe(e,o),Ft(e,t,r,i),we(e,t.find(c=>c.sdt!==void 0)?.sdt);let a=t.find(c=>c.paraId!==void 0)?.paraId;a!==void 0&&(e.dataset.paraId=a);let l=t.find(c=>c.fromLine!==void 0);l?.fromLine!==void 0&&(e.dataset.fromLine=String(l.fromLine),l.toLine!==void 0&&(e.dataset.toLine=String(l.toLine))),je(e,t),Xt(e,t);}function Ft(e,t,r,i){ke(e,t);let n=Number(e.dataset.docStart),s=Number(e.dataset.docEnd),o=t.map(g=>g.fragmentDocStart).filter(g=>Number.isFinite(g)),a=t.map(g=>g.fragmentDocEnd).filter(g=>Number.isFinite(g)),l=o.length>0?Math.min(...o):void 0,c=a.length>0?Math.max(...a):void 0,d=l??(Number.isFinite(n)&&n===s&&n>0?n-1:void 0);if(d!==void 0&&(e.dataset.docStart=String(d)),c!==void 0&&(e.dataset.docEnd=String(c)),d!==void 0&&!t.some(g=>g.docStart===d)){let g=ve(t).find(u=>Se(u)!==void 0),f=g?Se(g):void 0;if(f){let u=r.createElement("span");u.className="layout-mirror-structural-anchor",u.dataset.docStart=String(d),u.dataset.docEnd=String(d),j(u,f,i),e.insertBefore(u,e.firstChild);}}}function Yt(e,t){let r=e.querySelectorAll(".layout-paragraph[data-doc-start]"),i=1/0,n=-1/0;for(let s of r){let o=Number(s.dataset.docStart),a=Number(s.dataset.docEnd);Number.isFinite(o)&&(i=Math.min(i,o)),Number.isFinite(a)&&(n=Math.max(n,a));}i!==1/0&&(e.dataset.docStart=String(i)),n!==-1/0&&(e.dataset.docEnd=String(n)),i===1/0&&n===-1/0&&ke(e,t);}function Ot(e){let t=new Map;for(let r of e.values())r.table?.tableId&&t.set(r.table.tableId,r);for(let r of e.values()){let i=r.table?.parentTableId;if(!i)continue;let n=t.get(i),s=ze(r.prims);if(!n?.cells?.length||!s)continue;let o=s.x+s.w/2,a=s.y+s.h/2,l=n.cells.filter(c=>c.bounds&&_t(o,a,c.bounds));l.sort((c,d)=>Ke(c.bounds)-Ke(d.bounds)),l[0]?.el.appendChild(r.el);}}function _t(e,t,r){return e>=r.x&&e<=r.x+r.w&&t>=r.y&&t<=r.y+r.h}function Ke(e){return e.w*e.h}function ze(e){let t;for(let r of e){let i=r.clipGroup?.clip,n=i?.x!==void 0&&i.y!==void 0&&i.w!==void 0&&i.h!==void 0?{x:i.x,y:i.y,w:i.w,h:i.h}:Se(r);if(!n)continue;if(!t){t={...n};continue}let s=Math.max(t.x+t.w,n.x+n.w),o=Math.max(t.y+t.h,n.y+n.h);t.x=Math.min(t.x,n.x),t.y=Math.min(t.y,n.y),t.w=s-t.x,t.h=o-t.y;}return t}function Se(e){switch(e.kind){case "text":return c(e);case "glyphRun":return d(e);case "rect":return {x:e.x,y:e.y,w:e.w,h:e.h};case "image":case "shape":return {x:e.x,y:e.y,w:e.w,h:e.h};case "decoration":return {x:e.x,y:e.y,w:e.w,h:e.h}}}function ve(e){let t=e.filter(i=>i.logicalOrder!==void 0).sort((i,n)=>(i.logicalOrder??0)-(n.logicalOrder??0)||(i.docStart??0)-(n.docStart??0));if(t.length<2)return e;let r=0;return e.map(i=>i.logicalOrder===void 0?i:t[r++])}function je(e,t){let r=t.find(s=>s.lang)?.lang;r&&(e.lang=r);let i=t.find(s=>s.bidiLevel!==void 0||"rtl"in s);if(!i)return;let n=i.bidiLevel!==void 0?i.bidiLevel%2===1:"rtl"in i?i.rtl:false;e.dir=n?"rtl":"ltr";}function Xt(e,t){let r=t.find(i=>i.ariaLabel||i.ariaDescription||i.decorative||i.hiddenObject||i.groupId);r&&qe(e,r);}function ke(e,t){let r,i;for(let n of t)n.docStart!==void 0&&(r=r===void 0?n.docStart:Math.min(r,n.docStart)),n.docEnd!==void 0&&(i=i===void 0?n.docEnd:Math.max(i,n.docEnd));r!==void 0&&(e.dataset.docStart=String(r)),i!==void 0&&(e.dataset.docEnd=String(i));}function fe(e,t,r,i){return e.find(n=>{let s=n.structuralRevision;return !(!s||s.scope!==t||r!==void 0&&s.rowIndex!==r||i!==void 0&&s.colIndex!==i)})?.structuralRevision}function ye(e$1,t,r,i){switch(e$1.kind){case "text":{let n=We(t,e$1,i);return n.className=D.text,n.textContent=e$1.text,j(n,c(e$1),r),n.style.font=e$1.font,Qe(n,e$1),Ve(n,e$1),De(n,e$1.hidden&&e$1.opacity===void 0?.4:e$1.opacity,e$1.rotationDeg,e$1.horizontalScale),e$1.structuralRevision?.scope==="pmark"&&(n.classList.add(D.revisionPmarkGlyph),e$1.structuralRevision.kind==="ins"&&n.classList.add(D.revisionPmarkIns),e$1.structuralRevision.kind==="del"&&n.classList.add(D.revisionPmarkDel),n.setAttribute("aria-hidden","true")),e$1.listMarker&&(n.classList.add(D.listMarker),n.setAttribute("aria-hidden","true"),e$1.listMarkerRevision&&(n.style.color=e$1.listMarkerRevision==="ins"?"rgb(46, 125, 50)":"rgb(198, 40, 40)")),ne(n,e$1),n}case "glyphRun":{let n=We(t,e$1,i);return n.className=D.text,n.textContent=e$1.text,j(n,d(e$1),r),n.style.fontSize=`${e$1.size}px`,$t(n,e$1.fallbackFont),Qe(n,e$1),Ve(n,e$1),De(n,e$1.hidden&&e$1.opacity===void 0?.4:e$1.opacity,e$1.rotationDeg,e$1.horizontalScale),ne(n,e$1),n}case "rect":{let n=t.createElement("div");return n.className=D.rect,j(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),ne(n,e$1),n}case "line":{let n=t.createElement("div");return n.className=e$1.role==="table-cut"?D.tableCut:D.line,e$1.role&&e$1.role!=="table-cut"&&(n.dataset.role=e$1.role),j(n,e(e$1),r),n.setAttribute("aria-hidden","true"),n}case "image":{let n=e$1.href?t.createElement("a"):t.createElement("div");return n.className=D.image,e$1.decorative?n.setAttribute("aria-hidden","true"):(n.setAttribute("role","img"),e$1.altText&&n.setAttribute("aria-label",e$1.altText)),Ue(n,e$1),n.dataset.relId=e$1.relId,j(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),De(n,e$1.opacity,e$1.rotationDeg),e$1.filter&&(n.style.filter=e$1.filter),ne(n,e$1),e$1.revision&&(n.style.outline=`2px solid ${e$1.revision.kind==="ins"?"rgb(46, 125, 50)":"rgb(198, 40, 40)"}`),e$1.href||(n.style.pointerEvents="auto"),n}case "shape":{let n=t.createElement("div");return n.className=D.shape,e$1.decorative?n.setAttribute("aria-hidden","true"):n.setAttribute("role","img"),j(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),Kt(n,e$1.transform),ne(n,e$1),n}case "decoration":{let n=t.createElement("span");return n.className=D.decoration,n.dataset.deco=e$1.deco,j(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),ne(n,e$1),n}}}function Je(e,t,r){let i=t.createElement("div");return i.className=D.pageBorder,j(i,{x:e.x,y:e.y,w:e.w,h:e.h},r),i.style.boxSizing="border-box",i.style.pointerEvents="none",i.style.zIndex=e.zOrder==="back"?"0":"20",me(i,"Top",e.top),me(i,"Right",e.right),me(i,"Bottom",e.bottom),me(i,"Left",e.left),i}function j(e,t,r=0){e.style.position="absolute",e.style.left=`${t.x}px`,e.style.top=`${t.y+r}px`,e.style.width=`${t.w}px`,e.style.height=`${t.h}px`;}function We(e,t,r){let i=t.noteRef?.id!==void 0?t.noteRef:void 0,n=t.href||i?e.createElement("a"):e.createElement("span");if(Ue(n,t),i&&!t.href){let s=i.kind??"footnote",o=`oox-${s}-${i.id}`;n.setAttribute("href",`#${o}`),n.setAttribute("role","doc-noteref");let a=`oox-noteref-${s}-${i.id}`;r.noteRefIds.has(a)||(r.noteRefIds.add(a),n.id=a);}return n}function Ue(e,t){let{href:r}=t;if(!r)return;e.setAttribute("href",r),e.dataset.href=r;let i=t.linkTitle??t.tooltip;i&&(e.title=i),t.linkTarget?e.setAttribute("target",t.linkTarget):r.startsWith("#")||e.setAttribute("target","_blank"),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener noreferrer"),t.linkHistory!==void 0&&(e.dataset.linkHistory=String(t.linkHistory)),t.linkDocLocation!==void 0&&(e.dataset.linkDocLocation=t.linkDocLocation);}function $t(e,t){if(t)for(let r of t.split(" ")){if(r.endsWith("px"))break;r==="italic"?e.style.fontStyle="italic":/^[1-9]00$/.test(r)&&r!=="400"&&(e.style.fontWeight=r);}}function Qe(e,t){t.lang&&(e.lang=t.lang),t.bidiLevel!==void 0?e.dir=t.bidiLevel%2===1?"rtl":"ltr":t.rtl&&(e.dir="rtl");}function me(e,t,r){if(!r)return;let i=e.style;i[`border${t}Width`]=`${r.width}px`,i[`border${t}Style`]=r.style,i[`border${t}Color`]=r.color;}function De(e,t,r,i){t!==void 0&&(e.style.opacity=String(t));let n=[];r&&n.push(`rotate(${r}deg)`),i!==void 0&&i!==100&&n.push(`scaleX(${i/100})`),n.length>0&&(e.style.transform=n.join(" "),e.style.transformOrigin=i!==void 0&&i!==100?"left center":"center center");}function Kt(e,t){if(!t)return;let r=[];t.rotation&&r.push(`rotate(${t.rotation}deg)`),t.flipH&&r.push("scaleX(-1)"),t.flipV&&r.push("scaleY(-1)"),r.length!==0&&(e.style.transform=r.join(" "),e.style.transformOrigin="center center");}function Ve(e,t){if(t.allCaps&&(e.style.textTransform="uppercase"),t.smallCaps&&(e.style.fontVariant="small-caps"),t.hidden&&(e.classList.add("docx-hidden"),e.style.textDecoration="underline dotted"),t.textShadow==="emboss"?e.style.textShadow="1px 1px 1px rgba(255,255,255,0.5), -1px -1px 1px rgba(0,0,0,0.3)":t.textShadow==="imprint"?e.style.textShadow="-1px -1px 1px rgba(255,255,255,0.5), 1px 1px 1px rgba(0,0,0,0.3)":t.textShadow==="shadow"&&(e.style.textShadow="1px 1px 2px rgba(0,0,0,0.3)"),t.textOutline&&(e.style.webkitTextStroke="1px currentColor",e.style.webkitTextFillColor="transparent"),t.emphasisMark){let r=t.emphasisMark==="comma"?"filled sesame":t.emphasisMark==="circle"?"filled circle":"filled dot",i=t.emphasisMark==="underDot"?"under right":"over right";e.style.textEmphasis=r,e.style.textEmphasisPosition=i,e.style.webkitTextEmphasis=r,e.style.webkitTextEmphasisPosition=i;}t.textEffect&&(e.classList.add("docx-text-effect",`docx-text-effect-${t.textEffect}`),e.dataset.effect=t.textEffect);}function ne(e,t){if(t.docStart!==void 0&&(e.dataset.docStart=String(t.docStart)),t.docEnd!==void 0&&(e.dataset.docEnd=String(t.docEnd)),t.commentIds&&t.commentIds.length>0&&(e.dataset.commentId=t.commentIds.join(" ")),t.field){let r=t.field.type??t.field.category;r&&(e.dataset.fieldType=r),t.field.category&&(e.dataset.fieldCategory=t.field.category),t.field.instruction&&(e.dataset.fieldInstruction=t.field.instruction);let i=t.field.instruction?.trim()||r;i&&e.setAttribute("aria-description",i);}if(t.noteRef?.id!==void 0&&(e.dataset.noteRefKind=t.noteRef.kind??"footnote",e.dataset.noteRefId=String(t.noteRef.id)),t.comment){t.comment.status&&(e.dataset.commentStatus=t.comment.status),t.comment.authorId&&(e.dataset.commentAuthorId=t.comment.authorId),t.comment.paletteIndex!==void 0&&(e.dataset.commentPaletteIndex=String(t.comment.paletteIndex)),t.comment.color&&(e.dataset.commentColor=t.comment.color),t.comment.selected!==void 0&&(e.dataset.commentSelected=String(t.comment.selected)),t.comment.authorName&&(e.dataset.commentAuthorName=t.comment.authorName),t.comment.date&&(e.dataset.commentDate=t.comment.date),t.comment.replyCount!==void 0&&(e.dataset.commentReplyCount=String(t.comment.replyCount));let r=[t.comment.status,t.comment.authorName??t.comment.authorId,t.comment.date,t.comment.text,...(t.comment.replies??[]).map(i=>[i.authorName,i.text].filter(Boolean).join(": "))].filter(Boolean).join(", ");r&&e.setAttribute("aria-description",r);}if(t.revision){e.dataset.changeAuthor=t.revision.author,e.dataset.changeDate=t.revision.date,e.dataset.revisionId=t.revision.revisionId,e.classList.add(t.revision.kind==="ins"?"docx-insertion":"docx-deletion"),e.hasAttribute("role")||e.setAttribute("role",t.revision.kind==="ins"?"insertion":"deletion");let r=[t.revision.author,t.revision.date].filter(Boolean).join(", ");r&&e.setAttribute("aria-description",r);}t.href&&(e.dataset.href=t.href),Jt(e,t.inlineSdtWidget),we(e,t.sdt),t.sdtPath?.length&&(e.dataset.sdtPath=t.sdtPath.map(r=>r.groupId).join(" ")),t.logicalOrder!==void 0&&(e.dataset.logicalOrder=String(t.logicalOrder)),t.bidiLevel!==void 0&&(e.dataset.bidiLevel=String(t.bidiLevel)),qe(e,t);}function qe(e,t){if(t.groupId&&(e.dataset.groupId=t.groupId),t.decorative||t.hiddenObject){e.setAttribute("aria-hidden","true"),e.removeAttribute("role"),e.removeAttribute("aria-label"),e.removeAttribute("aria-description");return}t.ariaLabel&&e.setAttribute("aria-label",t.ariaLabel),t.ariaDescription&&e.setAttribute("aria-description",t.ariaDescription);}function we(e,t){t&&(e.classList.add(D.blockSdt),e.dataset.sdtGroupId=t.groupId,e.dataset.sdtType=t.sdtType,t.depth!==void 0&&(e.dataset.sdtDepth=String(t.depth)),t.tag!==void 0&&(e.dataset.sdtTag=t.tag),t.alias!==void 0&&(e.dataset.sdtAlias=t.alias),t.lock!==void 0&&(e.dataset.sdtLock=t.lock),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked)),t.bound!==void 0&&(e.dataset.sdtBound=String(t.bound)),t.repeatingItem!==void 0&&(e.dataset.sdtRepeatingItem=String(t.repeatingItem)),!e.hasAttribute("aria-label")&&(t.alias||t.tag)&&e.setAttribute("aria-label",t.alias||t.tag||""),t.lock&&e.setAttribute("aria-readonly","true"));}function Jt(e,t){if(!t)return;e.classList.add(D.inlineSdtWidget);let r=t.controlKind??t.kind;e.dataset.sdtWidget=r,e.dataset.sdtGroupId=t.groupId,e.dataset.sdtPos=String(t.pos),t.tag!==void 0&&(e.dataset.sdtTag=t.tag),t.alias!==void 0&&(e.dataset.sdtAlias=t.alias),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked),e.setAttribute("aria-checked",String(t.checked))),t.controlId!==void 0&&(e.dataset.sdtControlId=String(t.controlId)),t.value!==void 0&&(e.dataset.sdtValue=t.value),t.selectedIndex!==void 0&&(e.dataset.sdtSelectedIndex=String(t.selectedIndex)),t.dateFormat!==void 0&&(e.dataset.sdtDateFormat=t.dateFormat),t.dateLanguage!==void 0&&(e.dataset.sdtDateLanguage=t.dateLanguage),t.locked!==void 0&&(e.dataset.sdtLocked=String(t.locked)),r==="checkbox"?e.setAttribute("role","checkbox"):r==="dropDownList"||r==="comboBox"?(e.setAttribute("role","combobox"),e.setAttribute("aria-haspopup","listbox"),e.setAttribute("aria-expanded","false")):r==="date"?(e.setAttribute("role","button"),e.setAttribute("aria-haspopup","dialog")):e.setAttribute("role","group"),e.removeAttribute("tabindex"),(t.alias||t.tag)&&e.setAttribute("aria-label",t.alias||t.tag||""),t.locked&&e.setAttribute("aria-disabled","true");}function pe(e,t){switch(t.scope){case "pmark":e.classList.add(D.revisionPmark),t.kind==="ins"&&e.classList.add(D.revisionPmarkIns),t.kind==="del"&&e.classList.add(D.revisionPmarkDel);break;case "table":e.classList.add(D.revisionTable,Ie(t.kind));break;case "row":e.classList.add(D.revisionRow,Ie(t.kind));break;case "cell":e.classList.add(D.revisionCell,Ie(t.kind));break}e.dataset.revisionId=t.revisionId,e.dataset.revisionAuthor=t.author,t.date&&(e.dataset.revisionDate=t.date);let r=[t.author,t.date].filter(Boolean).join(", ");r&&e.setAttribute("aria-description",r);}function Ie(e){return e==="ins"?D.revisionIns:e==="del"?D.revisionDel:D.revisionMerge}function Wt(e,t,r,i){let n=r.createElement("section");n.className=D.notes,n.dataset.noteKind=e.kind??"footnote",e.sectionId&&(n.dataset.sectionId=e.sectionId),e.columns!==void 0&&(n.dataset.columns=String(e.columns)),n.style.position="absolute",n.style.left="0",n.style.top=`${e.y??0}px`,n.style.width=`${t.width}px`,n.style.height=`${e.height??0}px`;let s=new Map;for(let a of e.notes??[])a.id!==void 0&&s.set(a.id,a);re(n,e.separatorPrimitives??[],r,-(e.y??0),i);let o=[...e.primitives??[]];for(let a of e.noteIds??[]){let c=`${e.kind??"footnote"}-${a}`,d=o.filter(u=>u.groupId===c);if(d.length===0)continue;for(let u of d){let h=o.indexOf(u);h>=0&&o.splice(h,1);}let g=r.createElement("aside");g.className=D.note,g.id=`oox-${c}`,g.dataset.noteId=String(a),g.setAttribute("role",e.kind==="endnote"?"doc-endnote":"doc-footnote");let f=s.get(a);if(f&&(f.label!==void 0&&(g.dataset.noteLabel=f.label),f.anchorDocStart!==void 0&&(g.dataset.anchorDocStart=String(f.anchorDocStart)),f.anchorDocEnd!==void 0&&(g.dataset.anchorDocEnd=String(f.anchorDocEnd))),re(g,d,r,-(e.y??0),i),f){let u=r.createElement("a");u.className=D.noteBacklink,u.setAttribute("role","doc-backlink"),u.setAttribute("href",`#oox-noteref-${c}`);let h=i.labels?.noteBacklink??f.label??String(a);u.setAttribute("aria-label",h),g.appendChild(u);}n.appendChild(g);}return o.length>0&&re(n,o,r,-(e.y??0),i),n}function Qt(e,t){for(let r of Array.from(e.querySelectorAll(".layout-canvas-sdt-box[data-sdt-group-id]")))r.classList.toggle("layout-sdt-focused",t.has(r.dataset.sdtGroupId??""));}var Vt=".layout-sdt-widget, .layout-inline-sdt-widget, .layout-sdt-repeat-btn";function zt(e,t={}){let r=t.document??document,i=r.createElement("div");i.className="layout-interactive-overlay",i.dataset.pageIndex=String(e.pageIndex),i.style.position="absolute",i.style.inset="0",i.style.width=`${e.width}px`,i.style.height=`${e.height}px`,i.style.pointerEvents="none",i.addEventListener("mousedown",a=>{a.target?.closest?.(Vt)&&(a.preventDefault(),a.stopPropagation());});let n=jt(e),s=Ut(n);for(let a of [...s.values()].sort(Zt))i.appendChild(en(a,r,t.labels));let o=qt(n);for(let a of o.values())i.appendChild(tn(a,r,t.labels));return i}function jt(e){return [...e.primitives,...e.header?.primitives??[],...e.footer?.primitives??[],...(e.noteAreas??[]).flatMap(t=>[...t.separatorPrimitives??[],...t.primitives??[]])]}function Ut(e){let t=new Map;for(let r of e){let i=et(r);if(!i)continue;let n=r.sdtPath?.length?r.sdtPath:r.sdt?[r.sdt]:[];for(let s of n){let o=t.get(s.groupId);o?o.rect=tt(o.rect,i):t.set(s.groupId,{attrs:s,rect:{...i}});}}return t}function qt(e){let t=new Map;for(let r of e){let i=r.inlineSdtWidget,n=et(r);if(!i||!n)continue;let s=`${i.groupId}:${i.pos}:${i.controlKind??i.kind}`,o=t.get(s);o?o.rect=tt(o.rect,n):t.set(s,{attrs:i,rect:{...n}});}return t}function Zt(e,t){return (e.attrs.depth??0)-(t.attrs.depth??0)||e.rect.y-t.rect.y||e.rect.x-t.rect.x}function en(e,t,r){let{attrs:i,rect:n}=e,s=t.createElement("div");s.className="layout-block-sdt-box layout-canvas-sdt-box",sn(s,i),nt(s,n),s.style.pointerEvents="none";let o=i.alias||i.tag;if(o){let c=t.createElement("span");c.className="layout-block-sdt-label",c.textContent=o,s.appendChild(c);}let a=rn(i.sdtType),l=!i.bound&&!on(i.lock);if(a&&l){let c=t.createElement("button");c.type="button",c.className="layout-sdt-widget",c.dataset.sdtWidget=a,c.dataset.sdtGroupId=i.groupId,i.tag&&(c.dataset.sdtTag=i.tag),i.alias&&(c.dataset.sdtAlias=i.alias),(o||r?.control)&&c.setAttribute("aria-label",o||r?.control||""),a==="dropdown"&&c.setAttribute("aria-haspopup","listbox"),a==="date"&&c.setAttribute("aria-haspopup","dialog"),a==="checkbox"&&(c.setAttribute("role","checkbox"),c.setAttribute("aria-checked",String(i.checked??false))),c.textContent=a==="dropdown"?"\u25BE":a==="date"?"\u25A3":i.checked?"\u2612":"\u2610",c.style.pointerEvents="auto",s.appendChild(c);}if(i.repeatingItem&&l){let c=t.createElement("div");c.className="layout-sdt-repeat-controls",c.style.pointerEvents="auto",c.appendChild(Ze(t,i,"add","\uFF0B",r?.addRepeatingItem,o)),c.appendChild(Ze(t,i,"remove","\u2715",r?.removeRepeatingItem,o)),s.appendChild(c);}return s}function Ze(e,t,r,i,n,s){let o=e.createElement("button");return o.type="button",o.className="layout-sdt-repeat-btn",o.dataset.sdtRepeat=r,o.dataset.sdtGroupId=t.groupId,t.tag&&(o.dataset.sdtTag=t.tag),(n||s)&&o.setAttribute("aria-label",n||s||""),o.textContent=i,o}function tn(e,t,r){let{attrs:i,rect:n}=e,s=i.controlKind??i.kind,o=t.createElement("button");return o.type="button",o.className="layout-sdt-widget layout-inline-sdt-widget layout-canvas-inline-sdt-widget",o.dataset.sdtWidget=nn(s),o.dataset.sdtGroupId=i.groupId,o.dataset.sdtPos=String(i.pos),i.tag&&(o.dataset.sdtTag=i.tag),i.alias&&(o.dataset.sdtAlias=i.alias),i.controlId!==void 0&&(o.dataset.sdtControlId=String(i.controlId)),i.value!==void 0&&(o.dataset.sdtValue=i.value),i.selectedIndex!==void 0&&(o.dataset.sdtSelectedIndex=String(i.selectedIndex)),i.dateFormat&&(o.dataset.sdtDateFormat=i.dateFormat),i.dateLanguage&&(o.dataset.sdtDateLanguage=i.dateLanguage),i.listItems?.length&&(o.dataset.sdtListItems=JSON.stringify(i.listItems)),(i.alias||i.tag||r?.control)&&o.setAttribute("aria-label",i.alias||i.tag||r?.control||""),s==="checkbox"?(o.setAttribute("role","checkbox"),o.setAttribute("aria-checked",String(i.checked??false))):s==="dropDownList"||s==="comboBox"?(o.setAttribute("aria-haspopup","listbox"),o.setAttribute("aria-expanded","false")):s==="date"&&o.setAttribute("aria-haspopup","dialog"),o.disabled=i.locked===true,o.textContent=s==="checkbox"?i.checked?"\u2612":"\u2610":s==="date"?"\u25A3":s==="picture"?"\u25A7":"\u25BE",nt(o,n),o.style.pointerEvents="auto",o}function nn(e){return e==="dropDownList"||e==="comboBox"?"dropdown":e}function rn(e){return e==="checkbox"?"checkbox":e==="dropDownList"||e==="comboBox"?"dropdown":e==="date"?"date":null}function on(e){return e==="contentLocked"||e==="sdtContentLocked"||e==="sdtLocked"}function sn(e,t){e.dataset.sdtGroupId=t.groupId,e.dataset.sdtType=t.sdtType,t.depth!==void 0&&(e.dataset.sdtDepth=String(t.depth)),t.tag&&(e.dataset.sdtTag=t.tag),t.alias&&(e.dataset.sdtAlias=t.alias),t.lock&&(e.dataset.sdtLock=t.lock),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked)),t.bound!==void 0&&(e.dataset.sdtBound=String(t.bound)),t.repeatingItem!==void 0&&(e.dataset.sdtRepeatingItem=String(t.repeatingItem));}function et(e$1){let t=e$1.clipGroup?.clip;if(t?.x!==void 0&&t.y!==void 0&&t.w!==void 0&&t.h!==void 0)return {x:t.x,y:t.y,w:t.w,h:t.h};switch(e$1.kind){case "text":return c(e$1);case "glyphRun":return d(e$1);case "rect":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h};case "line":return e(e$1);case "image":case "shape":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h};case "decoration":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h}}}function tt(e,t){let r=Math.min(e.x,t.x),i=Math.min(e.y,t.y),n=Math.max(e.x+e.w,t.x+t.w),s=Math.max(e.y+e.h,t.y+t.h);return {x:r,y:i,w:n-r,h:s-i}}function nt(e,t){e.style.position="absolute",e.style.left=`${t.x}px`,e.style.top=`${t.y}px`,e.style.width=`${Math.max(1,t.w)}px`,e.style.height=`${Math.max(1,t.h)}px`;}var J=class extends Error{constructor(r,i){let n=i instanceof Error?i.message:String(i);super(`Rust display-list ${r} failed: ${n}`);b(this,"stage");this.name="RustDisplayListSourceError",this.stage=r;}},it=null;function Me(){return it??(it=import('../../wasm-SA237OSP.mjs').then(async e=>(await e.preloadLayoutWasm(),{buildDisplayListJson:e.buildDisplayListJson,hitTestRegionsJson:e.hitTestRegionsJson,rangeRectsJson:e.rangeRectsJson,rangeRectsRegionJson:e.rangeRectsRegionJson,hasRangeRectsRegion:e.hasRangeRectsRegion,hasDisplayListSession:e.hasDisplayListSession,openDisplayList:e.openDisplayList,closeDisplayList:e.closeDisplayList,hitTestRegionsByHandle:e.hitTestRegionsByHandle,rangeRectsByHandle:e.rangeRectsByHandle,rangeRectsRegionByHandle:e.rangeRectsRegionByHandle}))),it}function Pe(){return Me()}function an(e,t){let r=e.measured,i="[";for(let s=0;s<r.length;s++){s>0&&(i+=",");let o=r[s],a=o.measure,l;if(t&&a!==null&&typeof a=="object"){let c=a;l=t.get(c),l===void 0&&(l=JSON.stringify(o.measure),t.set(c,l));}else l=JSON.stringify(o.measure);i+='{"block":'+JSON.stringify(o.block)+',"measure":'+l+"}";}i+="]";let n='{"measured":'+i+',"options":'+JSON.stringify(e.options)+',"layout":'+JSON.stringify(e.layout);return e.contractVersion!==void 0&&(n+=',"contractVersion":'+JSON.stringify(e.contractVersion)),e.headersFooters!==void 0&&(n+=',"headersFooters":'+JSON.stringify(e.headersFooters)),e.fontChains!==void 0&&(n+=',"fontChains":'+JSON.stringify(e.fontChains)),e.noteAreas!==void 0&&(n+=',"noteAreas":'+JSON.stringify(e.noteAreas)),e.resolvedCommentIds!==void 0&&(n+=',"resolvedCommentIds":'+JSON.stringify(e.resolvedCommentIds)),e.commentAuthors!==void 0&&(n+=',"commentAuthors":'+JSON.stringify(e.commentAuthors)),e.commentThreads!==void 0&&(n+=',"commentThreads":'+JSON.stringify(e.commentThreads)),n+="}",n}function rt(e){let t={};return e.contractVersion!==void 0&&(t.contractVersion=e.contractVersion),e.headersFooters!==void 0&&(t.headersFooters=e.headersFooters),e.fontChains!==void 0&&(t.fontChains=e.fontChains),e.noteAreas!==void 0&&(t.noteAreas=e.noteAreas),e.resolvedCommentIds!==void 0&&(t.resolvedCommentIds=e.resolvedCommentIds),e.commentAuthors!==void 0&&(t.commentAuthors=e.commentAuthors),e.commentThreads!==void 0&&(t.commentThreads=e.commentThreads),JSON.stringify(t)}var ln=new WeakMap;async function ot(e,t){let r;try{r=t??await Me();}catch(s){throw new J("load",s)}let i,n;try{i=an(e,ln),n=r.buildDisplayListJson(i);}catch(s){throw new J("build",s)}try{return JSON.parse(n)}catch(s){throw new J("parse",s)}}async function cn(e,t,r$1=null){let i;try{i=t??await Me();}catch(l){throw new J("load",l)}if(!i.buildDisplayListFrame)return {displayList:await ot(e,i),frame:null,transport:"json"};let n=rt(e),s$1;try{s$1=i.buildDisplayListFrame(n,r$1?.frameEpoch??0);}catch(l){throw new J("build",l)}let o;try{o=r(s$1);}catch(l){throw new J("decode",l)}let a;try{a=s(r$1,o);}catch(l){throw new J("apply",l)}return {displayList:a.displayList,frame:a,transport:"frame-delta-v1"}}function st(e,t,r){if(t==="body")return e.primitives.filter(n=>n.kind==="image");let i=t==="header"?e.header:e.footer;return !i||r!==void 0&&i.rId!==r?[]:i.primitives.filter(n=>n.kind==="image")}function Ae(e,t,r="body",i){for(let n of e.pages)for(let s of st(n,r,i))if(s.docStart===t)return {primitive:s,pageIndex:n.pageIndex,...r!=="body"?{region:r,rId:i}:{}};return null}function Ee(e,t,r,i,n="body",s){let o=e.pages[t];if(!o)return null;let a=st(o,n,s);for(let l=a.length-1;l>=0;l--){let c=a[l];if(!(r<c.x||r>c.x+c.w)&&!(i<c.y||i>c.y+c.h))return {primitive:c,pageIndex:o.pageIndex,...n!=="body"?{region:n,rId:s}:{}}}return null}function dn(e,t){let r=e.imageByPos(t);if(!r)return;let i=e.contentBounds(r.pageIndex),n=e.paragraphRects(t).find(s=>s.pageIndex===r.pageIndex);if(!(!i||!n))return {horizontalEmu:Math.round(c$1(r.primitive.x-i.x)),verticalEmu:Math.round(c$1(r.primitive.y-n.y))}}var at=(()=>{let e=globalThis.FinalizationRegistry;return e?new e(t=>t()):null})();function un(e,t){let r=null,i=()=>r??(r=JSON.stringify(e)),n=mn(t)?t:null,s=n?null:t??null,o=null,a,l,c=new Promise((m,p)=>{a=m,l=p;});c.catch(()=>{});let d=null,g=false,f$1=()=>{if(d!==null){try{s?.closeDisplayList?.(d);}catch{}d=null;}},u=()=>{if(!(g||d!==null||!s)&&!(!s.hasDisplayListSession?.()||!s.openDisplayList))try{d=s.openDisplayList(i());}catch(m){d=null,console.warn("[CanvasRenderer] display-list session open failed; using JSON-arg queries",m);}};n?a():s?(u(),a()):Pe().then(m=>{s=m,u(),a(),g&&f$1();},m=>{o=m instanceof Error?m:new Error(String(m)),l(o),console.warn("[CanvasRenderer] display-list query engine failed to load",o);});let h=(m,p,y)=>{if(!s)return null;if(d!==null&&m)try{return m(d)}catch(R){console.warn(`[CanvasRenderer] ${y} session query failed; falling back`,R),f$1();}try{return p()}catch(R){return o=R instanceof Error?R:new Error(String(R)),console.warn(`[CanvasRenderer] ${y} query failed`,R),null}},L=(m,p,y)=>{if(m===null)return p;try{return JSON.parse(m)}catch(R){return o=R instanceof Error?R:new Error(String(R)),console.warn(`[CanvasRenderer] ${y} returned invalid JSON`,R),p}},k=(m,p)=>{try{return m()}catch(y){return o=y instanceof Error?y:new Error(String(y)),console.warn(`[CanvasRenderer] resident ${p} query failed`,y),null}},v=(m,p,y)=>{if(n)return L(k(()=>n.displayHitTestRegionsJson(m,p,y),"hit_test_regions"),null,"hit_test_regions");let R=h(s?.hitTestRegionsByHandle&&(x=>s.hitTestRegionsByHandle(x,m,p,y)),()=>s.hitTestRegionsJson(i(),m,p,y),"hit_test_regions");return L(R,null,"hit_test_regions")},b=(m,p)=>{if(n)return L(k(()=>n.displayRangeRectsJson(m,p),"range_rects"),[],"range_rects");let y=h(s?.rangeRectsByHandle&&(R=>s.rangeRectsByHandle(R,m,p)),()=>s.rangeRectsJson(i(),m,p),"range_rects");return L(y,[],"range_rects")},M=(m,p,y,R)=>{if(n)return L(k(()=>n.displayRangeRectsRegionJson(m,p,y,R),"range_rects_region"),[],"range_rects_region");if(!s||!s.hasRangeRectsRegion?.())return [];let x=h(s.rangeRectsRegionByHandle&&(I=>s.rangeRectsRegionByHandle(I,m,p,y,R)),()=>s.rangeRectsRegionJson(i(),m,p,y,R),"range_rects_region");return L(x,[],"range_rects_region")},C=(m,p,y)=>{let R=M(m,p,y,y+1);if(R.length>0){let x=new Map;for(let I of R)x.has(I.pageIndex)||x.set(I.pageIndex,{pageIndex:I.pageIndex,x:I.x,y:I.y,width:0,height:I.height});return [...x.values()]}if(y>0){let x=M(m,p,y-1,y);if(x.length>0){let I=new Map;for(let S of x)I.set(S.pageIndex,{pageIndex:S.pageIndex,x:S.x+S.width,y:S.y,width:0,height:S.height});return [...I.values()]}}return []},w=m=>{let p=b(m,m+1);if(p.length>0){let y=p[0];return {pageIndex:y.pageIndex,x:y.x,y:y.y,width:0,height:y.height}}if(m>0){let y=b(m-1,m);if(y.length>0){let R=y[y.length-1];return {pageIndex:R.pageIndex,x:R.x+R.width,y:R.y,width:0,height:R.height}}}return null},Y=m=>{let p=b(m,m+2);return p.length>0?p[0]:w(m)},ee=(m,p,y)=>{let R=M(m,p,y,y+2);if(R.length===0)return C(m,p,y);let x=new Map;for(let I of R)x.has(I.pageIndex)||x.set(I.pageIndex,I);return [...x.values()]},A=(m,p)=>({pageIndex:m,x:p.x,y:p.y,width:p.w,height:p.h}),W=m=>{let p=e.pages[m];return p?{pageIndex:p.pageIndex,x:0,y:0,width:p.width,height:p.height}:null},G=m=>{let p=e.pages[m],y=p?.contentBounds;return p&&y?{pageIndex:p.pageIndex,x:y.x,y:y.y,width:y.width,height:y.height}:null},le=m=>{let p=e.pages[m];return p?(p.columnBounds??[]).map(y=>({pageIndex:p.pageIndex,x:y.x,y:y.y,width:y.width,height:y.height})):[]},te=m=>m.paraId?`para:${m.paraId}`:m.blockKey!==void 0?`block-key:${m.blockKey}`:m.blockId!==void 0?`block-id:${m.blockId}`:null,N=m=>m.blockKey??m.blockId,Q=null,E=()=>{if(Q)return Q;let m=new Map;for(let p of e.pages)for(let y of p.primitives){let R=te(y);if(!R||y.docStart===void 0||y.docEnd===void 0)continue;let x=f(y),I=m.get(R);I||(I=new Map,m.set(R,I));let S=I.get(p.pageIndex);if(!S){I.set(p.pageIndex,{...A(p.pageIndex,x),from:y.docStart,to:y.docEnd,blockId:N(y),paraId:y.paraId});continue}let T=Math.min(S.x,x.x),P=Math.min(S.y,x.y),ce=Math.max(S.x+S.width,x.x+x.w),de=Math.max(S.y+S.height,x.y+x.h);S.x=T,S.y=P,S.width=ce-T,S.height=de-P,S.from=Math.min(S.from,y.docStart),S.to=Math.max(S.to,y.docEnd);}return Q=new Map([...m].map(([p,y])=>[p,[...y.values()]])),Q},V=m=>{let p=null;for(let y of e.pages)for(let R of y.primitives){let x=te(R),I=R.docStart,S=R.docEnd;if(!x||I===void 0||S===void 0||m<I||m>S)continue;let T={identity:x,span:Math.max(0,S-I),startsAtPos:I===m};(!p||T.startsAtPos&&!p.startsAtPos||T.startsAtPos===p.startsAtPos&&T.span<p.span)&&(p=T);}return p?E().get(p.identity)??[]:[]},X=1.5,F=null,O=()=>{if(F)return F;let m=[];for(let p of e.pages){let y=[],R=0;for(let x of p.primitives){if(x.kind!=="text"&&x.kind!=="glyphRun"||x.docStart===void 0||x.docEnd===void 0||x.kind==="glyphRun"&&x.glyphs.length===0)continue;let I=x.kind==="text"?x.baselineY:x.glyphs.reduce((ue,gt)=>Math.max(ue,gt.y),-1/0);if(!Number.isFinite(I))continue;let S=te(x)??`anonymous:${R++}`,T=f(x),P=y.find(ue=>ue.identity===S&&Math.abs(ue.baseline-I)<=X);if(!P){y.push({identity:S,...A(p.pageIndex,T),baseline:I,from:x.docStart,to:x.docEnd,blockId:N(x),paraId:x.paraId});continue}let ce=Math.min(P.x,T.x),de=Math.min(P.y,T.y),pt=Math.max(P.x+P.width,T.x+T.w),yt=Math.max(P.y+P.height,T.y+T.h);P.x=ce,P.y=de,P.width=pt-ce,P.height=yt-de,P.from=Math.min(P.from,x.docStart),P.to=Math.max(P.to,x.docEnd);}m.push(...y.map(({identity:x,...I})=>I));}return F=m,F},z=m=>{let p=null;for(let y of O())m<y.from||m>y.to||(!p||y.to-y.from<p.to-p.from)&&(p=y);return p},U=m=>{if(!m)return null;let p=m.primitive.docStart;if(p===void 0)return null;let{primitive:y}=m;return {...m,pos:p,rect:{pageIndex:m.pageIndex,x:y.x,y:y.y,width:y.w,height:y.h}}},q=(m,p,y,R="body",x)=>U(Ee(e,m,p,y,R,x)),he=(m,p="body",y)=>U(Ae(e,m,p,y)),Ye={},Oe={displayList:e,isReady:()=>(n!==null||s!==null)&&o===null,sourceState:()=>o?{status:"error",error:o}:n||s?{status:"ready"}:{status:"loading"},whenReady:()=>c,pageCount:()=>e.pages.length,pageSize:m=>{let p=e.pages[m];return p?{width:p.width,height:p.height}:null},pageBounds:W,contentBounds:G,columnBounds:le,paragraphRects:V,visualLines:O,visualLineAtPosition:z,imageAtPoint:q,imageByPos:he,hitTestRegions:v,rangeRects:b,hfRangeRects:M,hfCaretRects:C,hfAnchorRects:ee,caretRect:w,anchorRect:Y,sidebarAnchorRect:Y,dispose:()=>{g||(g=true,f$1(),at?.unregister(Ye));}};return at?.register(Oe,f$1,Ye),Oe}function mn(e){return typeof e?.displayHitTestRegionsJson=="function"&&typeof e?.displayRangeRectsJson=="function"&&typeof e?.displayRangeRectsRegionJson=="function"}var fn=16,pn=24;function oe(e){let t=[],r=24;for(let i=0;i<e.pageCount();i++)t.push(r),r+=(e.pageSize(i)?.height??0)+16;return t}function yn(){let e=new Map;return t=>{if(!t.startsWith("blob:")&&!t.startsWith("data:"))return null;let r=e.get(t);return r||(r=new Promise(i=>{let n=new Image;n.onload=()=>i(n),n.onerror=()=>i(null),n.src=t;}),e.set(t,r)),r}}function gn(e,t){let r=e.activeCommentIds.length>0?t?.(e.activeCommentIds):void 0;return {hasSelection:e.hasSelection,inInsertion:e.inInsertion,inDeletion:e.inDeletion,hasComment:e.activeCommentIds.length>0,inList:e.inList,listLevel:e.listLevel??0,...r?.authorName!==void 0?{commentAuthor:r.authorName}:{},...r?.replyCount!==void 0?{commentReplyCount:r.replyCount}:{}}}function hn(e,t){if(!e)return [];let r=[];return !e.hasSelection&&t.hasSelection&&r.push({key:"selected"}),e.hasSelection&&!t.hasSelection&&r.push({key:"selectionCleared"}),!e.hasComment&&t.hasComment&&r.push({key:"commentedText",...t.commentAuthor!==void 0||t.commentReplyCount!==void 0?{vars:{...t.commentAuthor!==void 0?{author:t.commentAuthor}:{},...t.commentReplyCount!==void 0?{replies:t.commentReplyCount}:{}}}:{}}),!e.inInsertion&&t.inInsertion&&r.push({key:"trackedInsertion"}),!e.inDeletion&&t.inDeletion&&r.push({key:"trackedDeletion"}),(!e.inList&&t.inList||t.inList&&e.listLevel!==t.listLevel)&&r.push({key:"listItem",vars:{level:t.listLevel+1}}),r}function se(e){let t=Number(e);if(Number.isFinite(t))return t;let r=0xcbf29ce484222325n;for(let i of new TextEncoder().encode(e))r=(r^BigInt(i))*0x100000001b3n,r&=0xffffffffffffffffn;return Number(r&(1n<<53n)-1n)}function ge(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:null}function bn(e){let t=typeof e.story=="string"?[e.story]:[],r=Array.isArray(e.rows)?e.rows:[];for(let i of r){let n=ge(i),s=n&&Array.isArray(n.cells)?n.cells:[];for(let o of s){let a=ge(o)?.story;typeof a=="string"&&t.push(a);}}return t}function xn(e){let t=e.storyIds(),r=new Map,i=new Set;for(let o of t){let a=[];try{for(let l of e.storySegments(o))if(l.kind==="embed")for(let c of bn(l.payload))a.push(c),i.add(c);}catch{}r.set(o,a);}let n=new Map,s=(o,a,l)=>{if(!(l.has(o)||n.has(o))){l.add(o),n.set(o,a);for(let c of r.get(o)??[])s(c,a,l);l.delete(o);}};t.includes("body")&&s("body",{story:"body"},new Set);for(let o of t)!o.startsWith("hf:")||i.has(o)||s(o,{story:o,hfRid:o.slice(3)},new Set);return n}function Rn(e,t,r,i,n){let s=Array.isArray(t.rows)?t.rows:[],o=r+1;for(let a of s){let l=ge(a),c=l&&Array.isArray(l.cells)?l.cells:[],d=o+1;for(let g of c){let f=ge(g),u=typeof f?.story=="string"?f.story:null,h=u?Te(e,u,d+1,i,n):0;d+=h+2;}o=d+1;}return o+1-r}function Te(e,t,r,i,n){if(n.has(t))throw new Error(`recursive yrs story: ${t}`);n.add(t);try{let s=r,o=r,a=0,l=!0;for(let c of e.storySegments(t)){if(c.kind==="text"){a+=c.text.length,l=!1;continue}if(c.kind==="pilcrow"){let d=o+a+2;i.set(c.paraId,{pmStart:o,pmEnd:d}),s=d,o=s,a=0,l=!0;continue}if(c.embedKind==="table"&&l){s+=Rn(e,c.payload,s,i,n),o=s;continue}if(c.embedKind==="blockSdt"&&l){let d=typeof c.payload.story=="string"?c.payload.story:null,g=d?Te(e,d,s+1,i,n):0;s+=g+2,o=s;continue}if(l&&(c.embedKind==="pageBreak"||c.embedKind==="columnBreak")){s+=1,o=s;continue}a+=1,l=!1;}return s-r}finally{n.delete(t);}}function Ln(e){let t=new Map,r=xn(e),i=o=>{let a=r.get(o)?.story;if(!a)return null;if(t.has(a))return t.get(a)??null;try{let l=new Map;return Te(e,a,0,l,new Set),t.set(a,l),l}catch{return t.set(a,null),null}},n=o=>{let a=r.get(o.story);if(!a)return null;let l=i(o.story)?.get(o.paraId);if(!l)return null;let c=Math.max(0,l.pmEnd-l.pmStart-2),d=Math.min(Math.max(0,Math.trunc(o.offset)),c);return {story:o.story,position:l.pmStart+1+d,...a.hfRid?{hfRid:a.hfRid}:{}}};return {locToDisplayPoint:n,storyOffsetToDisplayPoint:(o,a)=>{if(!r.has(o))return null;let l=Math.max(0,Math.trunc(a));try{for(let c of e.paragraphs(o)){let d=e.locateParagraph(o,c.paraId);if(!(l<d.start||l>d.end))return n({story:o,paraId:c.paraId,offset:Math.min(l-d.start,d.end-d.start)})}}catch{return null}return null}}}function Ce(e,t){let{doc:r,schema:i}=e.state,n=i.marks.comment,s=i.marks.insertion,o=i.marks.deletion;!n&&!s&&!o||r.descendants((a,l)=>{let c=a.attrs;if(c){let d=[c.trIns,c.trDel,c.pPrIns,c.pPrDel];for(let h of d){let L=h?.revisionId;typeof L=="number"&&t(`revision-${L}`,l);}let f=c.cellMarker?.info?.revisionId;typeof f=="number"&&t(`revision-${f}`,l);let u=[c.pPrChange,c.trPrChange,c.tcPrChange,c.tblPrChange];for(let h of u)if(Array.isArray(h))for(let L of h){let k=L?.info?.id;typeof k=="number"&&t(`revision-${k}`,l);}}if(a.isInline)for(let d of a.marks){let g=null;n&&d.type===n?g=`comment-${d.attrs.commentId}`:(s&&d.type===s||o&&d.type===o)&&(g=`revision-${d.attrs.revisionId}`),g&&t(g,l);}});}function Dn(e,t,r){let i=new Map;if(!e?.state)return i;let n=oe(t),s=new Set;return Ce(e,(o,a)=>{if(s.has(o))return;s.add(o);let l=t.anchorRect(a);if(!l)return;let c=r?r(l):(n[l.pageIndex]??0)+l.y;c!=null&&i.set(o,c);}),i}function In(e,t,r){if(!e.hfRid)return t.anchorRect(e.position);let i=r?.get(e.hfRid);return i?t.hfAnchorRects(i,e.hfRid,e.position)[0]??null:null}function Sn(e,t,r,i,n,s,o){let a=new Map,l=oe(n),c=(d,g)=>{if(!g||a.has(d))return a.has(d);let f=In(g,n,s);if(!f)return false;let u=o?o(f):(l[f.pageIndex]??0)+f.y;return u==null?false:(a.set(d,u),true)};for(let d of t){let g=`comment-${d}`;try{for(let f of e.resolveComment(String(d)))if(c(g,i.storyOffsetToDisplayPoint(f.story,f.start)))break}catch{}}for(let d of r)c(`revision-${se(d.revisionId)}`,i.locToDisplayPoint({story:d.story,...d.range.start}));return a}function vn(e,t,r,i){let n=oe(t);for(let{region:s,rId:o,view:a}of e)Ce(a,(l,c)=>{if(r.has(l))return;let d=t.hfAnchorRects(s,o,c)[0];if(!d)return;let g=i?i(d):(n[d.pageIndex]??0)+d.y;g!=null&&r.set(l,g);});return r}function kn(e,t){let r=e.map(o=>{let a=t.locToDisplayPoint({story:o.range.story,...o.range.start}),l=t.locToDisplayPoint({story:o.range.story,...o.range.end}),c=a?.position??0,d=Math.max(c,l?.position??c);return {type:o.kind==="pPrIns"?"paragraphMarkInsertion":o.kind==="pPrDel"?"paragraphMarkDeletion":o.kind==="pPrChange"?"paragraphPropertiesChanged":o.kind==="trIns"?"rowInserted":o.kind==="trDel"?"rowDeleted":o.kind==="tableIns"?"tableInserted":o.kind==="tableDel"?"tableDeleted":o.kind,text:o.preview,author:o.author,date:o.date||void 0,from:c,to:d,revisionId:se(o.revisionId),...a?.hfRid?{hfRid:a.hfRid}:{}}}),i=new Map;for(let o of r){let a=i.get(o.revisionId)??[];a.push(o),i.set(o.revisionId,a);}let n=[...i.values()].map(o=>{let a=Math.min(...o.map(u=>u.from)),l=Math.max(...o.map(u=>u.to)),c=o.filter(u=>u.type==="insertion"),d=o.filter(u=>u.type==="deletion");if(c.length>0&&d.length>0)return {...c[0],type:"replacement",text:c.map(h=>h.text).join(""),deletedText:d.map(h=>h.text).join(""),from:a,to:l};let g=o.find(u=>u.type==="insertion"||u.type==="deletion")??o[0],f=o.filter(u=>u.type===g.type).map(u=>u.text).join("");return {...g,text:f,from:a,to:l}}),s=[];for(let o=0;o<n.length;o+=1){let a=n[o],l=n[o+1];a.type==="deletion"&&l?.type==="insertion"&&a.author===l.author&&a.date===l.date&&a.to===l.from&&a.hfRid===l.hfRid?(s.push({type:"replacement",text:l.text,deletedText:a.text,author:a.author,date:a.date,from:a.from,to:l.to,revisionId:a.revisionId,insertionRevisionId:l.revisionId,...a.hfRid?{hfRid:a.hfRid}:{}}),o+=1):s.push(a);}return {entries:s,commentToRevision:new Map}}function wn(e,t){let r=t.kind??"body";if(r==="body")return {kind:r,primitives:e.primitives};let i=r==="header"?e.header:e.footer;return !i||i.kind!==r||t.rId&&i.rId!==t.rId?null:{kind:r,rId:i.rId,primitives:i.primitives}}function Mn(e){switch(e.kind){case "text":return c(e);case "glyphRun":return d(e);case "rect":case "image":case "shape":case "decoration":return {x:e.x,y:e.y,w:e.w,h:e.h};case "line":return {x:Math.min(e.x1,e.x2),y:Math.min(e.y1,e.y2),w:Math.abs(e.x2-e.x1),h:Math.abs(e.y2-e.y1)}}}function Pn(e){let t=Mn(e),r=e.clipGroup?.clip;if(!r)return t;let i=r.x??0,n=r.y??0,s=i+Math.max(0,r.w??0),o=n+Math.max(0,r.h??0),a=Math.max(t.x,i),l=Math.max(t.y,n),c=Math.min(t.x+t.w,s),d=Math.min(t.y+t.h,o);return c<a||d<l?null:{x:a,y:l,w:c-a,h:d-l}}function An(e){return e.kind==="text"||e.kind==="glyphRun"?e.text:e.kind==="image"?e.altText??"":""}function En(e,t,r){return t>=e.x&&t<=e.x+e.w&&r>=e.y&&r<=e.y+e.h}function Tn(e,t,r,i,n={kind:"body"}){let s=e.pages[t];if(!s)return null;let o=wn(s,n);if(!o)return null;for(let a=o.primitives.length-1;a>=0;a--){let l=o.primitives[a];if(l.kind==="line"||!l.href||l.hiddenObject)continue;let c=Pn(l);if(c&&En(c,r,i))return {pageIndex:t,region:o.kind,rId:o.rId,href:l.href,tooltip:l.linkTitle??l.tooltip,displayText:An(l)||l.href,rect:c}}return null}var _=7.5,Z=16,lt=320,Cn=30,Bn=200,Hn=24,Gn=10,Nn=10,Fn=24;function ct(e){let t;switch(e.kind){case "text":t=c(e);break;case "glyphRun":t=d(e);break;case "rect":case "image":case "shape":case "decoration":t={x:e.x,y:e.y,w:e.w,h:e.h};break;case "line":t={x:Math.min(e.x1,e.x2),y:Math.min(e.y1,e.y2),w:Math.abs(e.x2-e.x1),h:Math.abs(e.y2-e.y1)};break}let r=He(e);return r?Yn(t,r)??{x:r.x,y:r.y,w:0,h:0}:t}function He(e){let t=e.clipGroup?.clip;return t?{x:t.x??0,y:t.y??0,w:Math.max(0,t.w??0),h:Math.max(0,t.h??0)}:null}function Yn(e,t){let r=Math.max(e.x,t.x),i=Math.max(e.y,t.y),n=Math.min(e.x+e.w,t.x+t.w),s=Math.min(e.y+e.h,t.y+t.h);return n<r||s<i?null:{x:r,y:i,w:n-r,h:s-i}}function dt(e,t,r){if(e.docStart!=null){let i=t(e.docStart);if(i!=null){let n={tableKey:i,docStartSample:e.docStart};return e.table?.tableId&&!r.has(e.table.tableId)&&r.set(e.table.tableId,n),n}}return e.table?.tableId?r.get(e.table.tableId)??null:null}function ut(e,t,r){let i=e.table?.tableId;if(!i)return null;let n=t.get(i);return n?r.get(n.tableKey)??null:null}function On(e,t,r,i){let n=new Map;for(let o of t){if(o.kind==="line")continue;let a=o.cell;if(!a)continue;let l=dt(o,r,i);if(!l)continue;let{tableKey:c,docStartSample:d}=l,g=ct(o),f=He(o),u=f??g,h=n.get(c);if(h||(h={tableKey:c,docStartSample:d,contentMinX:u.x,contentMinY:u.y,contentMaxX:u.x+u.w,contentMaxY:u.y+u.h,exactLeftX:[],exactBottomY:[],exactClipLeftX:[],exactClipBottomY:[],rows:new Map},n.set(c,h)),d<h.docStartSample&&(h.docStartSample=d),h.contentMinX=Math.min(h.contentMinX,u.x),h.contentMinY=Math.min(h.contentMinY,u.y),h.contentMaxX=Math.max(h.contentMaxX,u.x+u.w),h.contentMaxY=Math.max(h.contentMaxY,u.y+u.h),f&&(h.exactClipLeftX.push(f.x),h.exactClipBottomY.push(f.y+f.h)),!a.continuation){let L=h.rows.get(a.row);L?(L.top=Math.min(L.top,u.y),L.bottom=Math.max(L.bottom,u.y+u.h)):h.rows.set(a.row,{top:u.y,bottom:u.y+u.h});}}if(n.size===0)return [];for(let o of t){if(o.kind!=="line"||o.role!=="table-border"&&o.role!=="table-cut")continue;let a=ut(o,i,n);if(!a){let d=(o.x1+o.x2)/2,g=(o.y1+o.y2)/2,f=1/0;for(let u of n.values()){let h=d>=u.contentMinX-Z&&d<=u.contentMaxX+Z,L=g>=u.contentMinY-Z&&g<=u.contentMaxY+Z;if(!h||!L)continue;let k=Math.max(0,u.contentMinX-d,d-u.contentMaxX),v=Math.max(0,u.contentMinY-g,g-u.contentMaxY),b=k+v;b<f&&(f=b,a=u);}}if(!a)continue;let l=Math.abs(o.x1-o.x2)<.5,c=Math.abs(o.y1-o.y2)<.5;l&&a.exactLeftX.push(Math.min(o.x1,o.x2)),c&&a.exactBottomY.push(Math.max(o.y1,o.y2));}let s=[];for(let o of n.values()){if(o.rows.size===0)continue;let a=o.exactLeftX.length>0||o.exactClipLeftX.length>0,l=a?Math.min(...o.exactLeftX,...o.exactClipLeftX):o.contentMinX-_,c=o.exactBottomY.length>0||o.exactClipBottomY.length>0?Math.max(...o.exactBottomY,...o.exactClipBottomY):o.contentMaxY,d=[...o.rows.entries()].map(([g,f])=>({rowIndex:g,top:f.top,bottom:f.bottom})).sort((g,f)=>g.rowIndex-f.rowIndex);s.push({pageIndex:e,tableKey:o.tableKey,docStartSample:o.docStartSample,originX:l,originY:o.contentMinY,bottomY:c,originExact:a,rowBands:d});}return s}function _n(e,t){let r=[],i=Ne(e,t,{kind:"body"});for(let n of e.pages)r.push(...On(n.pageIndex,n.primitives,t,i));return r}function Ge(e,t){let r=t.kind??"body";if(r==="body")return {kind:r,primitives:e.primitives};let i=r==="header"?e.header:e.footer;return !i||i.kind!==r||t.rId&&i.rId!==t.rId?null:{kind:r,rId:i.rId,primitives:i.primitives}}function Ne(e,t,r){let i=new Map;for(let n of e.pages){let s=Ge(n,r);if(s)for(let o of s.primitives){if(!o.cell||!o.table?.tableId||o.docStart==null)continue;let a=t(o.docStart);if(a==null)continue;let l=i.get(o.table.tableId);(!l||o.docStart<l.docStartSample)&&i.set(o.table.tableId,{tableKey:a,docStartSample:o.docStart});}}return i}function Fe(e,t){return `${e}:${t}`}function Xn(e,t,r,i){let n=Fe(t.row,t.col),s=e.cells.get(n);s?(s.minX=Math.min(s.minX,r.x),s.minY=Math.min(s.minY,r.y),s.maxX=Math.max(s.maxX,r.x+r.w),s.maxY=Math.max(s.maxY,r.y+r.h),s.rowSpan=Math.max(s.rowSpan,t.rowSpan),s.colSpan=Math.max(s.colSpan,t.colSpan),i&&(s.exactClip=i)):e.cells.set(n,{row:t.row,col:t.col,rowSpan:t.rowSpan,colSpan:t.colSpan,minX:r.x,minY:r.y,maxX:r.x+r.w,maxY:r.y+r.h,exactClip:i??void 0});}function mt(e,t,r){let i=new Map;for(let n of e){if(n.kind==="line")continue;let s=n.cell;if(!s)continue;let o=dt(n,t,r);if(!o)continue;let a=o.tableKey,l=ct(n),c=i.get(a);c||(c={tableKey:a,contentMinX:l.x,contentMinY:l.y,contentMaxX:l.x+l.w,contentMaxY:l.y+l.h,cells:new Map,verticalLines:[],horizontalLines:[]},i.set(a,c)),c.contentMinX=Math.min(c.contentMinX,l.x),c.contentMinY=Math.min(c.contentMinY,l.y),c.contentMaxX=Math.max(c.contentMaxX,l.x+l.w),c.contentMaxY=Math.max(c.contentMaxY,l.y+l.h),Xn(c,s,l,He(n));}if(i.size===0)return [];for(let n of e){if(n.kind!=="line"||n.role!=="table-border"&&n.role!=="table-cut")continue;let s=Math.abs(n.x1-n.x2)<.5,o=Math.abs(n.y1-n.y2)<.5;if(!s&&!o)continue;let a=Math.min(n.x1,n.x2),l=Math.max(n.x1,n.x2),c=Math.min(n.y1,n.y2),d=Math.max(n.y1,n.y2),g=ut(n,r,i);if(g){s?g.verticalLines.push(a):g.horizontalLines.push(c);continue}for(let f of i.values())if(s){if(!(d>=f.contentMinY-Z&&c<=f.contentMaxY+Z))continue;let h=a;Math.max(0,f.contentMinX-h,h-f.contentMaxX)<=lt&&f.verticalLines.push(h);}else if(o){if(!(l>=f.contentMinX-Z&&a<=f.contentMaxX+Z))continue;let h=c;Math.max(0,f.contentMinY-h,h-f.contentMaxY)<=lt&&f.horizontalLines.push(h);}}return [...i.values()]}function ae(e){let t=[];for(let r of [...e].sort((i,n)=>i-n))(t.length===0||Math.abs(t[t.length-1]-r)>.5)&&t.push(r);return t}function ft(e){let t=ae([...e.cells.values()].map(n=>n.row)),r=ae(e.horizontalLines),i=new Map;if(t.length>0&&r.length>=t.length+1)for(let n=0;n<t.length;n++)i.set(t[n],r[n]),i.set(t[n]+1,r[n+1]);return i}function Be(e){if(!e)return null;if(e.exactClip)return e.exactClip;let t=e.minX-_,r=e.minY-_;return {x:t,y:r,w:Math.max(1,e.maxX-e.minX+_*2),h:Math.max(1,e.maxY-e.minY+_*2)}}function $n(e,t){let r=1/0,i=-1/0;for(let n of e.cells.values())n.row===t&&(r=Math.min(r,n.exactClip?.y??n.minY-_),i=Math.max(i,n.exactClip?n.exactClip.y+n.exactClip.h:n.maxY+_));return !Number.isFinite(r)||!Number.isFinite(i)||i<=r?null:{top:r,bottom:i}}function Kn(e,t,r){let i=Be(e.cells.get(Fe(t,r)));return i?{left:i.x,right:i.x+i.w,top:i.y,bottom:i.y+i.h}:null}function Jn(e,t,r,i={kind:"body"}){if(t.length===0)return [];let n=new Map;for(let a of t){let l=n.get(a.tableKey);l?l.push(a):n.set(a.tableKey,[a]);}let s=[],o=Ne(e,r,i);for(let a of e.pages){let l=Ge(a,i);if(!l)continue;let c=mt(l.primitives,r,o);for(let d of c){let g=n.get(d.tableKey);if(!g)continue;let f=ae(d.verticalLines),u=ft(d);for(let h of g){let L=d.cells.get(Fe(h.row,h.col)),k=f[h.col],v=f[h.col+h.colSpan],b=u.get(h.row),M=u.get(h.row+h.rowSpan),C=true;if(k==null||v==null||v<=k){let w=L?.exactClip??Be(L);if(!w)continue;k=w.x,v=w.x+w.w,C=L?.exactClip!=null;}if(b==null||M==null||M<=b){let w=L?.exactClip??Be(L);if(!w)continue;b=w.y,M=w.y+w.h,C&&(C=L?.exactClip!=null);}s.push({pageIndex:a.pageIndex,tableKey:d.tableKey,row:h.row,col:h.col,rowSpan:h.rowSpan,colSpan:h.colSpan,x:k,y:b,w:Math.max(1,v-k),h:Math.max(1,M-b),exact:C,region:l.kind,rId:l.rId});}}}return s}function Wn(e){let{list:t,pageIndex:r,x:i,y:n,canvasRect:s,pageSize:o,tableKeyOf:a,cellPmPosOf:l,region:c={kind:"body"},edgeProximity:d=Cn}=e,g=t.pages[r];if(!g)return null;let f=Ge(g,c);if(!f)return null;let u=o.width>0?s.width/o.width:1,h=o.height>0?s.height/o.height:1,L=(b,M)=>({clientX:s.left+b*u,clientY:s.top+M*h}),k=Ne(t,a,c),v=mt(f.primitives,a,k);for(let b of v){let M=ae(b.verticalLines),C=ft(b),w=ae([...b.cells.values()].map(N=>N.row));if(w.length===0)continue;let Y=M[0]??b.contentMinX-_,ee=M[M.length-1]??b.contentMaxX+_,A=C.get(w[0])??b.contentMinY-_,W=w[w.length-1],G=C.get(W+1)??b.contentMaxY+_,le=i<Y+d&&i>=Y-d,te=n<A+d&&n>=A-d;if(!(!le&&!te)){if(le&&n>=A-d&&n<=G)for(let N of w){let Q=C.get(N),E=C.get(N+1),V=Q==null||E==null?$n(b,N):null,X=Q??V?.top,F=E??V?.bottom;if(X==null||F==null||F<=X||n<X||n>F)continue;let O=[...b.cells.values()].filter(q=>q.row===N).sort((q,he)=>q.col-he.col)[0];if(!O)continue;let z=l(b.tableKey,N,O.col);if(!z)continue;let U=L(Y,X+(F-X)/2);return {type:"row",clientX:U.clientX-Hn,clientY:U.clientY-Gn,cellPmPos:z}}if(te&&i>=Y-d&&i<=ee){let N=w[0],Q=[...b.cells.values()].filter(E=>E.row===N).sort((E,V)=>E.col-V.col);for(let E of Q){let V=M[E.col],X=M[E.col+E.colSpan],F=V==null||X==null?Kn(b,E.row,E.col):null,O=V??F?.left,z=X??F?.right;if(O==null||z==null||z<=O||i<O||i>z)continue;let U=l(b.tableKey,E.row,E.col);if(!U)continue;let q=L(O+(z-O)/2,A);return {type:"column",clientX:q.clientX-Nn,clientY:q.clientY-Fn,cellPmPos:U}}}}}return null}var Ni=Xe;export{pn as CANVAS_PAGES_PADDING_PX,fn as CANVAS_PAGE_GAP_PX,Bn as DISPLAY_LIST_TABLE_INSERT_HIDE_DELAY_MS,D as MIRROR_CLASS_NAMES,J as RustDisplayListSourceError,Qt as applyInteractiveSdtFocus,zt as buildInteractiveOverlayPage,Ht as buildMirrorPage,cn as buildRustDisplayFrame,ot as buildRustDisplayList,oe as canvasPageTops,dn as captureInlinePositionEmuFromDisplayList,hn as computeA11yAnnouncements,Dn as computeAnchorPositionsFromDisplayList,Sn as computeAnchorPositionsFromYrs,yn as createCanvasImageResolver,un as createDisplayListQueries,Ln as createYrsSidebarProjection,Ni as demoDisplayList,Jn as deriveDisplayListSelectedCellRects,_n as deriveDisplayListTableFragments,Wn as detectDisplayListTableInsertHover,rt as encodeDisplayListFrameExtras,kn as extractTrackedChangesFromYrs,Tn as findDisplayListHyperlinkAtPoint,Ee as findImagePrimitiveAtPoint,Ae as findImagePrimitiveByDocPos,Bt as loadGlyphOutlineProvider,Pe as loadRustDisplayListQueryEngine,vn as mergeHfAnchorPositionsFromDisplayList,gn as snapshotFromSelectionContext,Ce as visitAnchorKeys,se as yrsIdToNumericId};
1
+ import {d,c,e,s,t,v,f}from'../../chunk-GGEGIQRK.mjs';export{p as FRAME_DELTA_HEADER_BYTES,q as FRAME_DELTA_PAGE_OP_BYTES,o as FRAME_DELTA_VERSION,r as FrameDeltaError,a as GlyphCache,t as applyFrameDelta,u as applyFrameDeltaOwned,s as decodeFrameDelta,m as drawDisplayPage,n as drawPrimitive,b as fontSizePxFromShorthand,d as glyphRunRect,e as lineRect,h as presentDisplayPageBackBuffer,i as presentOffscreenPageBackBuffer,l as rasterizeDisplayListPages,g as rasterizeDisplayPageToBackBuffer,k as sizeCanvasForPage,c as textRunRect}from'../../chunk-GGEGIQRK.mjs';export{b as resolveCanvasPoint,a as resolveDisplayPageClientRect}from'../../chunk-WRWRCBLK.mjs';import {c as c$1}from'../../chunk-3UBMCDME.mjs';import {b}from'../../chunk-TTRUPDAB.mjs';var We={pages:[{pageIndex:0,width:816,height:1056,primitives:[{kind:"rect",x:96,y:96,w:624,h:20,fill:"#fff9c4",blockId:0,docStart:1,docEnd:12},{kind:"text",text:"Hello Word",x:96,baselineY:110,width:84.5,font:"700 16px Calibri, sans-serif",color:"#000000",docStart:1,docEnd:11,blockId:0},{kind:"decoration",deco:"underline",x:96,y:113,w:84.5,h:1,color:"#000000",docStart:1,docEnd:11,blockId:0},{kind:"text",text:" \u2014 second run",x:180.5,baselineY:110,width:96.25,font:"400 16px Calibri, sans-serif",color:"#c0392b",docStart:11,docEnd:24,blockId:0},{kind:"line",x1:96,y1:140,x2:720,y2:140,strokeWidth:.75,color:"#666666",role:"table-border"},{kind:"image",relId:"rId7",x:96,y:160,w:200,h:120,docStart:30,docEnd:31,blockId:2}]}]};function _t(){return import('../../wasm-DO3BUV7C.mjs').then(async e=>(await e.preloadLayoutWasm(),e.outlineGlyphJson))}var D={page:"layout-page layout-page-mirror",content:"layout-page-content",header:"layout-page-header",footer:"layout-page-footer",block:"layout-paragraph",table:"layout-table",tableRow:"layout-table-row",tableCell:"layout-table-cell",text:"layout-run layout-run-text",rect:"layout-mirror-rect",image:"layout-run layout-run-image",shape:"layout-run layout-run-shape",chart:"layout-run layout-run-chart",decoration:"layout-decoration",line:"layout-mirror-line",pageBorder:"layout-page-border",tableCut:"layout-table-cut-border",blockSdt:"layout-block-sdt",inlineSdtWidget:"layout-inline-sdt-widget",revisionPmark:"layout-revision-pmark",revisionPmarkGlyph:"layout-revision-pmark-glyph",revisionPmarkIns:"layout-revision-ins",revisionPmarkDel:"layout-revision-del",listMarker:"layout-list-marker",revisionTable:"oox-revision-table",revisionRow:"oox-revision-row",revisionCell:"oox-revision-cell",revisionIns:"oox-revision-ins",revisionDel:"oox-revision-del",revisionMerge:"oox-revision-merge",notes:"layout-page-notes",note:"layout-note",noteBacklink:"layout-note-backlink"};function Xt(e,t={}){let r=t.document??document,i=t.labels,n={labels:i,noteRefIds:new Set},s=r.createElement("div");s.className=D.page,s.setAttribute("role","document"),i?.page&&s.setAttribute("aria-label",i.page),s.dataset.pageIndex=String(e.pageIndex),e.sectionId!==void 0&&(s.dataset.sectionId=e.sectionId),e.sectionIndex!==void 0&&(s.dataset.sectionIndex=String(e.sectionIndex)),e.sectionPageIndex!==void 0&&(s.dataset.sectionPageIndex=String(e.sectionPageIndex)),e.sectionPageNumber!==void 0&&(s.dataset.sectionPageNumber=String(e.sectionPageNumber)),e.pageLabel!==void 0&&(s.dataset.pageLabel=e.pageLabel),s.style.position="relative",s.style.width=`${e.width}px`,s.style.height=`${e.height}px`,s.style.opacity="0",s.style.pointerEvents="none";let o=r.createElement("div");o.className=D.content,o.style.position="absolute",o.style.left="0",o.style.top="0",o.style.width=`${e.width}px`,o.style.height=`${e.height}px`,s.appendChild(o);for(let a of (e.pageBorders??[]).filter(l=>l.zOrder==="back"))o.appendChild(je(a,r,0));oe(o,e.primitives,r,0,n);for(let a of e.noteAreas??[])o.appendChild(Zt(a,e,r,n));for(let a of [e.header,e.footer])a&&s.appendChild($t(a,e,r,n));for(let a of (e.pageBorders??[]).filter(l=>l.zOrder!=="back"))s.appendChild(je(a,r,0));return s}function $t(e,t,r,i){let n=r.createElement("div");n.className=e.kind==="header"?D.header:D.footer,n.dataset.hfRid=e.rId;let s=e.kind==="header"?i.labels?.header:i.labels?.footer;return s&&(n.setAttribute("role","region"),n.setAttribute("aria-label",s)),n.style.position="absolute",n.style.left="0",n.style.top=`${e.y}px`,n.style.width=`${t.width}px`,n.style.height=`${e.height}px`,oe(n,e.primitives,r,-e.y,i),n}function oe(e,t,r,i,n){let s=new Map;for(let o of t){let a=o.kind==="line"?void 0:o.blockKey??o.blockId;if(a===void 0){e.appendChild(ge(o,r,i,n));continue}let l=o.table,c=l?.tableId!==void 0?`table:${l.tableId}#${l.rowStart??0}`:a,d=s.get(c);if(!d){let p=r.createElement("div");p.dataset.blockId=String(l?.tableId??a),p.style.position="absolute",p.style.left="0",p.style.top="0",e.appendChild(p),d={el:p,prims:[]},s.set(c,d);}d.prims.push(o);}for(let o of s.values())Jt(o,r,i,n);Wt(s);}function Jt(e,t,r,i){let{el:n,prims:s}=e;if(!s.some(y=>y.cell!==void 0||y.structuralRevision?.scope==="table"||y.structuralRevision?.scope==="row"||y.structuralRevision?.scope==="cell")){Ve(n,s,t,r,i);return}n.className=D.table,n.setAttribute("role","table");let a=s.find(y=>y.table!==void 0)?.table;e.table=a,e.cells=[],a?.tableId!==void 0&&(n.dataset.tableId=a.tableId),a?.rowStart!==void 0&&(n.dataset.rowStart=String(a.rowStart)),a?.rowEnd!==void 0&&(n.dataset.rowEnd=String(a.rowEnd)),a?.headerRowCount!==void 0&&(n.dataset.headerRowCount=String(a.headerRowCount)),a?.parentTableId!==void 0&&(n.dataset.parentTableId=a.parentTableId),a?.caption&&n.setAttribute("aria-label",a.caption),a?.description&&n.setAttribute("aria-description",a.description);let l=fe(s,"table");l&&ye(n,l),Ae(n,s.find(y=>y.sdt!==void 0)?.sdt);for(let y of s)y.cell===void 0&&n.appendChild(ge(y,t,r,i));let c=new Map,d=0,p=0;for(let y of s){if(y.cell===void 0)continue;let{row:m,col:h}=y.cell;d=Math.max(d,m+(y.cell.rowSpan??1)),p=Math.max(p,h+(y.cell.colSpan??1));let R=c.get(m);R||(R=new Map,c.set(m,R));let k=R.get(h);k||(k={ref:y.cell,prims:[]},R.set(h,k)),k.prims.push(y);}n.setAttribute("aria-rowcount",String(a?.rowCount??d)),n.setAttribute("aria-colcount",String(a?.columnCount??p));for(let y of [...c.keys()].sort((m,h)=>m-h)){let m=t.createElement("div");m.className=D.tableRow,m.setAttribute("role","row"),m.setAttribute("aria-rowindex",String(y+1));let h=fe(s,"row",y);h&&ye(m,h),m.style.position="absolute",m.style.left="0",m.style.top="0",n.appendChild(m);let R=c.get(y);for(let k of [...R.keys()].sort((v,b)=>v-b)){let v=R.get(k),b=t.createElement("div");b.className=D.tableCell,b.setAttribute("role",v.ref.isHeader?"columnheader":"cell"),b.setAttribute("aria-colindex",String(k+1)),v.ref.cellId&&(b.id=v.ref.cellId),v.ref.headerIds?.length&&b.setAttribute("aria-labelledby",v.ref.headerIds.join(" ")),v.ref.repeatedHeader&&(b.dataset.repeatedHeader="true"),v.ref.noWrap&&(b.dataset.noWrap="true");let M=v.ref.rowSpan??1,A=v.ref.colSpan??1;M>1&&b.setAttribute("aria-rowspan",String(M)),A>1&&b.setAttribute("aria-colspan",String(A));let w=fe(v.prims,"cell",y,k);w&&ye(b,w),v.ref.continuation&&(b.dataset.vmergeContinuation="true"),b.style.position="absolute",b.style.left="0",b.style.top="0";let _=new Map,W=[];for(let P of v.prims){let X=P.blockKey??P.blockId;if(X===void 0){W.push(P);continue}let B=_.get(X);B?B.push(P):_.set(X,[P]);}for(let P of Me(W))b.appendChild(ge(P,t,r,i));for(let[P,X]of _){let B=t.createElement("div");B.dataset.blockId=String(P),B.style.position="absolute",B.style.left="0",B.style.top="0",Ve(B,X,t,r,i),b.appendChild(B);}Qt(b,v.prims),tt(b,v.prims),e.cells.push({el:b,bounds:et(v.prims)}),m.appendChild(b);}}Pe(n,s);}function Ve(e,t,r,i,n){let s=t.find(c=>c.chart!==void 0)?.chart;e.className=s?`${D.block} ${D.chart}`:D.block,e.setAttribute("role",s?"img":"paragraph"),s?.label&&e.setAttribute("aria-label",s.label);for(let c of Me(t))e.appendChild(ge(c,r,i,n));let o=fe(t,"pmark");o&&ye(e,o),Kt(e,t,r,i),Ae(e,t.find(c=>c.sdt!==void 0)?.sdt);let a=t.find(c=>c.paraId!==void 0)?.paraId;a!==void 0&&(e.dataset.paraId=a);let l=t.find(c=>c.fromLine!==void 0);l?.fromLine!==void 0&&(e.dataset.fromLine=String(l.fromLine),l.toLine!==void 0&&(e.dataset.toLine=String(l.toLine))),tt(e,t),zt(e,t);}function Kt(e,t,r,i){Pe(e,t);let n=Number(e.dataset.docStart),s=Number(e.dataset.docEnd),o=t.map(p=>p.fragmentDocStart).filter(p=>Number.isFinite(p)),a=t.map(p=>p.fragmentDocEnd).filter(p=>Number.isFinite(p)),l=o.length>0?Math.min(...o):void 0,c=a.length>0?Math.max(...a):void 0,d=l??(Number.isFinite(n)&&n===s&&n>0?n-1:void 0);if(d!==void 0&&(e.dataset.docStart=String(d)),c!==void 0&&(e.dataset.docEnd=String(c)),d!==void 0&&!t.some(p=>p.docStart===d)){let p=Me(t).find(m=>we(m)!==void 0),y=p?we(p):void 0;if(y){let m=r.createElement("span");m.className="layout-mirror-structural-anchor",m.dataset.docStart=String(d),m.dataset.docEnd=String(d),j(m,y,i),e.insertBefore(m,e.firstChild);}}}function Qt(e,t){let r=e.querySelectorAll(".layout-paragraph[data-doc-start]"),i=1/0,n=-1/0;for(let s of r){let o=Number(s.dataset.docStart),a=Number(s.dataset.docEnd);Number.isFinite(o)&&(i=Math.min(i,o)),Number.isFinite(a)&&(n=Math.max(n,a));}i!==1/0&&(e.dataset.docStart=String(i)),n!==-1/0&&(e.dataset.docEnd=String(n)),i===1/0&&n===-1/0&&Pe(e,t);}function Wt(e){let t=new Map;for(let r of e.values())r.table?.tableId&&t.set(r.table.tableId,r);for(let r of e.values()){let i=r.table?.parentTableId;if(!i)continue;let n=t.get(i),s=et(r.prims);if(!n?.cells?.length||!s)continue;let o=s.x+s.w/2,a=s.y+s.h/2,l=n.cells.filter(c=>c.bounds&&Vt(o,a,c.bounds));l.sort((c,d)=>ze(c.bounds)-ze(d.bounds)),l[0]?.el.appendChild(r.el);}}function Vt(e,t,r){return e>=r.x&&e<=r.x+r.w&&t>=r.y&&t<=r.y+r.h}function ze(e){return e.w*e.h}function et(e){let t;for(let r of e){let i=r.clipGroup?.clip,n=i?.x!==void 0&&i.y!==void 0&&i.w!==void 0&&i.h!==void 0?{x:i.x,y:i.y,w:i.w,h:i.h}:we(r);if(!n)continue;if(!t){t={...n};continue}let s=Math.max(t.x+t.w,n.x+n.w),o=Math.max(t.y+t.h,n.y+n.h);t.x=Math.min(t.x,n.x),t.y=Math.min(t.y,n.y),t.w=s-t.x,t.h=o-t.y;}return t}function we(e){switch(e.kind){case "text":return c(e);case "glyphRun":return d(e);case "rect":return {x:e.x,y:e.y,w:e.w,h:e.h};case "image":case "shape":return {x:e.x,y:e.y,w:e.w,h:e.h};case "decoration":return {x:e.x,y:e.y,w:e.w,h:e.h}}}function Me(e){let t=e.filter(i=>i.logicalOrder!==void 0).sort((i,n)=>(i.logicalOrder??0)-(n.logicalOrder??0)||(i.docStart??0)-(n.docStart??0));if(t.length<2)return e;let r=0;return e.map(i=>i.logicalOrder===void 0?i:t[r++])}function tt(e,t){let r=t.find(s=>s.lang)?.lang;r&&(e.lang=r);let i=t.find(s=>s.bidiLevel!==void 0||"rtl"in s);if(!i)return;let n=i.bidiLevel!==void 0?i.bidiLevel%2===1:"rtl"in i?i.rtl:false;e.dir=n?"rtl":"ltr";}function zt(e,t){let r=t.find(i=>i.ariaLabel||i.ariaDescription||i.decorative||i.hiddenObject||i.groupId);r&&it(e,r);}function Pe(e,t){let r,i;for(let n of t)n.docStart!==void 0&&(r=r===void 0?n.docStart:Math.min(r,n.docStart)),n.docEnd!==void 0&&(i=i===void 0?n.docEnd:Math.max(i,n.docEnd));r!==void 0&&(e.dataset.docStart=String(r)),i!==void 0&&(e.dataset.docEnd=String(i));}function fe(e,t,r,i){return e.find(n=>{let s=n.structuralRevision;return !(!s||s.scope!==t||r!==void 0&&s.rowIndex!==r||i!==void 0&&s.colIndex!==i)})?.structuralRevision}function ge(e$1,t,r,i){switch(e$1.kind){case "text":{let n=Ue(t,e$1,i);return n.className=D.text,n.textContent=e$1.text,j(n,c(e$1),r),n.style.font=e$1.font,qe(n,e$1),Ze(n,e$1),ve(n,e$1.hidden&&e$1.opacity===void 0?.4:e$1.opacity,e$1.rotationDeg,e$1.horizontalScale),e$1.structuralRevision?.scope==="pmark"&&(n.classList.add(D.revisionPmarkGlyph),e$1.structuralRevision.kind==="ins"&&n.classList.add(D.revisionPmarkIns),e$1.structuralRevision.kind==="del"&&n.classList.add(D.revisionPmarkDel),n.setAttribute("aria-hidden","true")),e$1.listMarker&&(n.classList.add(D.listMarker),n.setAttribute("aria-hidden","true"),e$1.listMarkerRevision&&(n.style.color=e$1.listMarkerRevision==="ins"?"rgb(46, 125, 50)":"rgb(198, 40, 40)")),ne(n,e$1),n}case "glyphRun":{let n=Ue(t,e$1,i);return n.className=D.text,n.textContent=e$1.text,j(n,d(e$1),r),n.style.fontSize=`${e$1.size}px`,jt(n,e$1.fallbackFont),qe(n,e$1),Ze(n,e$1),ve(n,e$1.hidden&&e$1.opacity===void 0?.4:e$1.opacity,e$1.rotationDeg,e$1.horizontalScale),ne(n,e$1),n}case "rect":{let n=t.createElement("div");return n.className=D.rect,j(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),ne(n,e$1),n}case "line":{let n=t.createElement("div");return n.className=e$1.role==="table-cut"?D.tableCut:D.line,e$1.role&&e$1.role!=="table-cut"&&(n.dataset.role=e$1.role),j(n,e(e$1),r),n.setAttribute("aria-hidden","true"),n}case "image":{let n=e$1.href?t.createElement("a"):t.createElement("div");return n.className=D.image,e$1.decorative?n.setAttribute("aria-hidden","true"):(n.setAttribute("role","img"),e$1.altText&&n.setAttribute("aria-label",e$1.altText)),nt(n,e$1),n.dataset.relId=e$1.relId,j(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),ve(n,e$1.opacity,e$1.rotationDeg),e$1.filter&&(n.style.filter=e$1.filter),ne(n,e$1),e$1.revision&&(n.style.outline=`2px solid ${e$1.revision.kind==="ins"?"rgb(46, 125, 50)":"rgb(198, 40, 40)"}`),e$1.href||(n.style.pointerEvents="auto"),n}case "shape":{let n=t.createElement("div");return n.className=D.shape,e$1.decorative?n.setAttribute("aria-hidden","true"):n.setAttribute("role","img"),j(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),Ut(n,e$1.transform),ne(n,e$1),n}case "decoration":{let n=t.createElement("span");return n.className=D.decoration,n.dataset.deco=e$1.deco,j(n,{x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h},r),ne(n,e$1),n}}}function je(e,t,r){let i=t.createElement("div");return i.className=D.pageBorder,j(i,{x:e.x,y:e.y,w:e.w,h:e.h},r),i.style.boxSizing="border-box",i.style.pointerEvents="none",i.style.zIndex=e.zOrder==="back"?"0":"20",pe(i,"Top",e.top),pe(i,"Right",e.right),pe(i,"Bottom",e.bottom),pe(i,"Left",e.left),i}function j(e,t,r=0){e.style.position="absolute",e.style.left=`${t.x}px`,e.style.top=`${t.y+r}px`,e.style.width=`${t.w}px`,e.style.height=`${t.h}px`;}function Ue(e,t,r){let i=t.noteRef?.id!==void 0?t.noteRef:void 0,n=t.href||i?e.createElement("a"):e.createElement("span");if(nt(n,t),i&&!t.href){let s=i.kind??"footnote",o=`oox-${s}-${i.id}`;n.setAttribute("href",`#${o}`),n.setAttribute("role","doc-noteref");let a=`oox-noteref-${s}-${i.id}`;r.noteRefIds.has(a)||(r.noteRefIds.add(a),n.id=a);}return n}function nt(e,t){let{href:r}=t;if(!r)return;e.setAttribute("href",r),e.dataset.href=r;let i=t.linkTitle??t.tooltip;i&&(e.title=i),t.linkTarget?e.setAttribute("target",t.linkTarget):r.startsWith("#")||e.setAttribute("target","_blank"),e.getAttribute("target")==="_blank"&&e.setAttribute("rel","noopener noreferrer"),t.linkHistory!==void 0&&(e.dataset.linkHistory=String(t.linkHistory)),t.linkDocLocation!==void 0&&(e.dataset.linkDocLocation=t.linkDocLocation);}function jt(e,t){if(t)for(let r of t.split(" ")){if(r.endsWith("px"))break;r==="italic"?e.style.fontStyle="italic":/^[1-9]00$/.test(r)&&r!=="400"&&(e.style.fontWeight=r);}}function qe(e,t){t.lang&&(e.lang=t.lang),t.bidiLevel!==void 0?e.dir=t.bidiLevel%2===1?"rtl":"ltr":t.rtl&&(e.dir="rtl");}function pe(e,t,r){if(!r)return;let i=e.style;i[`border${t}Width`]=`${r.width}px`,i[`border${t}Style`]=r.style,i[`border${t}Color`]=r.color;}function ve(e,t,r,i){t!==void 0&&(e.style.opacity=String(t));let n=[];r&&n.push(`rotate(${r}deg)`),i!==void 0&&i!==100&&n.push(`scaleX(${i/100})`),n.length>0&&(e.style.transform=n.join(" "),e.style.transformOrigin=i!==void 0&&i!==100?"left center":"center center");}function Ut(e,t){if(!t)return;let r=[];t.rotation&&r.push(`rotate(${t.rotation}deg)`),t.flipH&&r.push("scaleX(-1)"),t.flipV&&r.push("scaleY(-1)"),r.length!==0&&(e.style.transform=r.join(" "),e.style.transformOrigin="center center");}function Ze(e,t){if(t.allCaps&&(e.style.textTransform="uppercase"),t.smallCaps&&(e.style.fontVariant="small-caps"),t.hidden&&(e.classList.add("docx-hidden"),e.style.textDecoration="underline dotted"),t.textShadow==="emboss"?e.style.textShadow="1px 1px 1px rgba(255,255,255,0.5), -1px -1px 1px rgba(0,0,0,0.3)":t.textShadow==="imprint"?e.style.textShadow="-1px -1px 1px rgba(255,255,255,0.5), 1px 1px 1px rgba(0,0,0,0.3)":t.textShadow==="shadow"&&(e.style.textShadow="1px 1px 2px rgba(0,0,0,0.3)"),t.textOutline&&(e.style.webkitTextStroke="1px currentColor",e.style.webkitTextFillColor="transparent"),t.emphasisMark){let r=t.emphasisMark==="comma"?"filled sesame":t.emphasisMark==="circle"?"filled circle":"filled dot",i=t.emphasisMark==="underDot"?"under right":"over right";e.style.textEmphasis=r,e.style.textEmphasisPosition=i,e.style.webkitTextEmphasis=r,e.style.webkitTextEmphasisPosition=i;}t.textEffect&&(e.classList.add("docx-text-effect",`docx-text-effect-${t.textEffect}`),e.dataset.effect=t.textEffect);}function ne(e,t){if(t.docStart!==void 0&&(e.dataset.docStart=String(t.docStart)),t.docEnd!==void 0&&(e.dataset.docEnd=String(t.docEnd)),t.commentIds&&t.commentIds.length>0&&(e.dataset.commentId=t.commentIds.join(" ")),t.field){let r=t.field.type??t.field.category;r&&(e.dataset.fieldType=r),t.field.category&&(e.dataset.fieldCategory=t.field.category),t.field.instruction&&(e.dataset.fieldInstruction=t.field.instruction);let i=t.field.instruction?.trim()||r;i&&e.setAttribute("aria-description",i);}if(t.noteRef?.id!==void 0&&(e.dataset.noteRefKind=t.noteRef.kind??"footnote",e.dataset.noteRefId=String(t.noteRef.id)),t.comment){t.comment.status&&(e.dataset.commentStatus=t.comment.status),t.comment.authorId&&(e.dataset.commentAuthorId=t.comment.authorId),t.comment.paletteIndex!==void 0&&(e.dataset.commentPaletteIndex=String(t.comment.paletteIndex)),t.comment.color&&(e.dataset.commentColor=t.comment.color),t.comment.selected!==void 0&&(e.dataset.commentSelected=String(t.comment.selected)),t.comment.authorName&&(e.dataset.commentAuthorName=t.comment.authorName),t.comment.date&&(e.dataset.commentDate=t.comment.date),t.comment.replyCount!==void 0&&(e.dataset.commentReplyCount=String(t.comment.replyCount));let r=[t.comment.status,t.comment.authorName??t.comment.authorId,t.comment.date,t.comment.text,...(t.comment.replies??[]).map(i=>[i.authorName,i.text].filter(Boolean).join(": "))].filter(Boolean).join(", ");r&&e.setAttribute("aria-description",r);}if(t.revision){e.dataset.changeAuthor=t.revision.author,e.dataset.changeDate=t.revision.date,e.dataset.revisionId=t.revision.revisionId,e.classList.add(t.revision.kind==="ins"?"docx-insertion":"docx-deletion"),e.hasAttribute("role")||e.setAttribute("role",t.revision.kind==="ins"?"insertion":"deletion");let r=[t.revision.author,t.revision.date].filter(Boolean).join(", ");r&&e.setAttribute("aria-description",r);}t.href&&(e.dataset.href=t.href),qt(e,t.inlineSdtWidget),Ae(e,t.sdt),t.sdtPath?.length&&(e.dataset.sdtPath=t.sdtPath.map(r=>r.groupId).join(" ")),t.logicalOrder!==void 0&&(e.dataset.logicalOrder=String(t.logicalOrder)),t.bidiLevel!==void 0&&(e.dataset.bidiLevel=String(t.bidiLevel)),it(e,t);}function it(e,t){if(t.groupId&&(e.dataset.groupId=t.groupId),t.decorative||t.hiddenObject){e.setAttribute("aria-hidden","true"),e.removeAttribute("role"),e.removeAttribute("aria-label"),e.removeAttribute("aria-description");return}t.ariaLabel&&e.setAttribute("aria-label",t.ariaLabel),t.ariaDescription&&e.setAttribute("aria-description",t.ariaDescription);}function Ae(e,t){t&&(e.classList.add(D.blockSdt),e.dataset.sdtGroupId=t.groupId,e.dataset.sdtType=t.sdtType,t.depth!==void 0&&(e.dataset.sdtDepth=String(t.depth)),t.tag!==void 0&&(e.dataset.sdtTag=t.tag),t.alias!==void 0&&(e.dataset.sdtAlias=t.alias),t.lock!==void 0&&(e.dataset.sdtLock=t.lock),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked)),t.bound!==void 0&&(e.dataset.sdtBound=String(t.bound)),t.repeatingItem!==void 0&&(e.dataset.sdtRepeatingItem=String(t.repeatingItem)),!e.hasAttribute("aria-label")&&(t.alias||t.tag)&&e.setAttribute("aria-label",t.alias||t.tag||""),t.lock&&e.setAttribute("aria-readonly","true"));}function qt(e,t){if(!t)return;e.classList.add(D.inlineSdtWidget);let r=t.controlKind??t.kind;e.dataset.sdtWidget=r,e.dataset.sdtGroupId=t.groupId,e.dataset.sdtPos=String(t.pos),t.tag!==void 0&&(e.dataset.sdtTag=t.tag),t.alias!==void 0&&(e.dataset.sdtAlias=t.alias),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked),e.setAttribute("aria-checked",String(t.checked))),t.controlId!==void 0&&(e.dataset.sdtControlId=String(t.controlId)),t.value!==void 0&&(e.dataset.sdtValue=t.value),t.selectedIndex!==void 0&&(e.dataset.sdtSelectedIndex=String(t.selectedIndex)),t.dateFormat!==void 0&&(e.dataset.sdtDateFormat=t.dateFormat),t.dateLanguage!==void 0&&(e.dataset.sdtDateLanguage=t.dateLanguage),t.locked!==void 0&&(e.dataset.sdtLocked=String(t.locked)),r==="checkbox"?e.setAttribute("role","checkbox"):r==="dropDownList"||r==="comboBox"?(e.setAttribute("role","combobox"),e.setAttribute("aria-haspopup","listbox"),e.setAttribute("aria-expanded","false")):r==="date"?(e.setAttribute("role","button"),e.setAttribute("aria-haspopup","dialog")):e.setAttribute("role","group"),e.removeAttribute("tabindex"),(t.alias||t.tag)&&e.setAttribute("aria-label",t.alias||t.tag||""),t.locked&&e.setAttribute("aria-disabled","true");}function ye(e,t){switch(t.scope){case "pmark":e.classList.add(D.revisionPmark),t.kind==="ins"&&e.classList.add(D.revisionPmarkIns),t.kind==="del"&&e.classList.add(D.revisionPmarkDel);break;case "table":e.classList.add(D.revisionTable,ke(t.kind));break;case "row":e.classList.add(D.revisionRow,ke(t.kind));break;case "cell":e.classList.add(D.revisionCell,ke(t.kind));break}e.dataset.revisionId=t.revisionId,e.dataset.revisionAuthor=t.author,t.date&&(e.dataset.revisionDate=t.date);let r=[t.author,t.date].filter(Boolean).join(", ");r&&e.setAttribute("aria-description",r);}function ke(e){return e==="ins"?D.revisionIns:e==="del"?D.revisionDel:D.revisionMerge}function Zt(e,t,r,i){let n=r.createElement("section");n.className=D.notes,n.dataset.noteKind=e.kind??"footnote",e.sectionId&&(n.dataset.sectionId=e.sectionId),e.columns!==void 0&&(n.dataset.columns=String(e.columns)),n.style.position="absolute",n.style.left="0",n.style.top=`${e.y??0}px`,n.style.width=`${t.width}px`,n.style.height=`${e.height??0}px`;let s=new Map;for(let a of e.notes??[])a.id!==void 0&&s.set(a.id,a);oe(n,e.separatorPrimitives??[],r,-(e.y??0),i);let o=[...e.primitives??[]];for(let a of e.noteIds??[]){let c=`${e.kind??"footnote"}-${a}`,d=o.filter(m=>m.groupId===c);if(d.length===0)continue;for(let m of d){let h=o.indexOf(m);h>=0&&o.splice(h,1);}let p=r.createElement("aside");p.className=D.note,p.id=`oox-${c}`,p.dataset.noteId=String(a),p.setAttribute("role",e.kind==="endnote"?"doc-endnote":"doc-footnote");let y=s.get(a);if(y&&(y.label!==void 0&&(p.dataset.noteLabel=y.label),y.anchorDocStart!==void 0&&(p.dataset.anchorDocStart=String(y.anchorDocStart)),y.anchorDocEnd!==void 0&&(p.dataset.anchorDocEnd=String(y.anchorDocEnd))),oe(p,d,r,-(e.y??0),i),y){let m=r.createElement("a");m.className=D.noteBacklink,m.setAttribute("role","doc-backlink"),m.setAttribute("href",`#oox-noteref-${c}`);let h=i.labels?.noteBacklink??y.label??String(a);m.setAttribute("aria-label",h),p.appendChild(m);}n.appendChild(p);}return o.length>0&&oe(n,o,r,-(e.y??0),i),n}function en(e,t){for(let r of Array.from(e.querySelectorAll(".layout-canvas-sdt-box[data-sdt-group-id]")))r.classList.toggle("layout-sdt-focused",t.has(r.dataset.sdtGroupId??""));}var tn=".layout-sdt-widget, .layout-inline-sdt-widget, .layout-sdt-repeat-btn";function nn(e,t={}){let r=t.document??document,i=r.createElement("div");i.className="layout-interactive-overlay",i.dataset.pageIndex=String(e.pageIndex),i.style.position="absolute",i.style.inset="0",i.style.width=`${e.width}px`,i.style.height=`${e.height}px`,i.style.pointerEvents="none",i.addEventListener("mousedown",a=>{a.target?.closest?.(tn)&&(a.preventDefault(),a.stopPropagation());});let n=rn(e),s=on(n);for(let a of [...s.values()].sort(an))i.appendChild(ln(a,r,t.labels));let o=sn(n);for(let a of o.values())i.appendChild(cn(a,r,t.labels));return i}function rn(e){return [...e.primitives,...e.header?.primitives??[],...e.footer?.primitives??[],...(e.noteAreas??[]).flatMap(t=>[...t.separatorPrimitives??[],...t.primitives??[]])]}function on(e){let t=new Map;for(let r of e){let i=ot(r);if(!i)continue;let n=r.sdtPath?.length?r.sdtPath:r.sdt?[r.sdt]:[];for(let s of n){let o=t.get(s.groupId);o?o.rect=st(o.rect,i):t.set(s.groupId,{attrs:s,rect:{...i}});}}return t}function sn(e){let t=new Map;for(let r of e){let i=r.inlineSdtWidget,n=ot(r);if(!i||!n)continue;let s=`${i.groupId}:${i.pos}:${i.controlKind??i.kind}`,o=t.get(s);o?o.rect=st(o.rect,n):t.set(s,{attrs:i,rect:{...n}});}return t}function an(e,t){return (e.attrs.depth??0)-(t.attrs.depth??0)||e.rect.y-t.rect.y||e.rect.x-t.rect.x}function ln(e,t,r){let{attrs:i,rect:n}=e,s=t.createElement("div");s.className="layout-block-sdt-box layout-canvas-sdt-box",pn(s,i),at(s,n),s.style.pointerEvents="none";let o=i.alias||i.tag;if(o){let c=t.createElement("span");c.className="layout-block-sdt-label",c.textContent=o,s.appendChild(c);}let a=un(i.sdtType),l=!i.bound&&!mn(i.lock);if(a&&l){let c=t.createElement("button");c.type="button",c.className="layout-sdt-widget",c.dataset.sdtWidget=a,c.dataset.sdtGroupId=i.groupId,i.tag&&(c.dataset.sdtTag=i.tag),i.alias&&(c.dataset.sdtAlias=i.alias),(o||r?.control)&&c.setAttribute("aria-label",o||r?.control||""),a==="dropdown"&&c.setAttribute("aria-haspopup","listbox"),a==="date"&&c.setAttribute("aria-haspopup","dialog"),a==="checkbox"&&(c.setAttribute("role","checkbox"),c.setAttribute("aria-checked",String(i.checked??false))),c.textContent=a==="dropdown"?"\u25BE":a==="date"?"\u25A3":i.checked?"\u2612":"\u2610",c.style.pointerEvents="auto",s.appendChild(c);}if(i.repeatingItem&&l){let c=t.createElement("div");c.className="layout-sdt-repeat-controls",c.style.pointerEvents="auto",c.appendChild(rt(t,i,"add","\uFF0B",r?.addRepeatingItem,o)),c.appendChild(rt(t,i,"remove","\u2715",r?.removeRepeatingItem,o)),s.appendChild(c);}return s}function rt(e,t,r,i,n,s){let o=e.createElement("button");return o.type="button",o.className="layout-sdt-repeat-btn",o.dataset.sdtRepeat=r,o.dataset.sdtGroupId=t.groupId,t.tag&&(o.dataset.sdtTag=t.tag),(n||s)&&o.setAttribute("aria-label",n||s||""),o.textContent=i,o}function cn(e,t,r){let{attrs:i,rect:n}=e,s=i.controlKind??i.kind,o=t.createElement("button");return o.type="button",o.className="layout-sdt-widget layout-inline-sdt-widget layout-canvas-inline-sdt-widget",o.dataset.sdtWidget=dn(s),o.dataset.sdtGroupId=i.groupId,o.dataset.sdtPos=String(i.pos),i.tag&&(o.dataset.sdtTag=i.tag),i.alias&&(o.dataset.sdtAlias=i.alias),i.controlId!==void 0&&(o.dataset.sdtControlId=String(i.controlId)),i.value!==void 0&&(o.dataset.sdtValue=i.value),i.selectedIndex!==void 0&&(o.dataset.sdtSelectedIndex=String(i.selectedIndex)),i.dateFormat&&(o.dataset.sdtDateFormat=i.dateFormat),i.dateLanguage&&(o.dataset.sdtDateLanguage=i.dateLanguage),i.listItems?.length&&(o.dataset.sdtListItems=JSON.stringify(i.listItems)),(i.alias||i.tag||r?.control)&&o.setAttribute("aria-label",i.alias||i.tag||r?.control||""),s==="checkbox"?(o.setAttribute("role","checkbox"),o.setAttribute("aria-checked",String(i.checked??false))):s==="dropDownList"||s==="comboBox"?(o.setAttribute("aria-haspopup","listbox"),o.setAttribute("aria-expanded","false")):s==="date"&&o.setAttribute("aria-haspopup","dialog"),o.disabled=i.locked===true,o.textContent=s==="checkbox"?i.checked?"\u2612":"\u2610":s==="date"?"\u25A3":s==="picture"?"\u25A7":"\u25BE",at(o,n),o.style.pointerEvents="auto",o}function dn(e){return e==="dropDownList"||e==="comboBox"?"dropdown":e}function un(e){return e==="checkbox"?"checkbox":e==="dropDownList"||e==="comboBox"?"dropdown":e==="date"?"date":null}function mn(e){return e==="contentLocked"||e==="sdtContentLocked"||e==="sdtLocked"}function pn(e,t){e.dataset.sdtGroupId=t.groupId,e.dataset.sdtType=t.sdtType,t.depth!==void 0&&(e.dataset.sdtDepth=String(t.depth)),t.tag&&(e.dataset.sdtTag=t.tag),t.alias&&(e.dataset.sdtAlias=t.alias),t.lock&&(e.dataset.sdtLock=t.lock),t.checked!==void 0&&(e.dataset.sdtChecked=String(t.checked)),t.bound!==void 0&&(e.dataset.sdtBound=String(t.bound)),t.repeatingItem!==void 0&&(e.dataset.sdtRepeatingItem=String(t.repeatingItem));}function ot(e$1){let t=e$1.clipGroup?.clip;if(t?.x!==void 0&&t.y!==void 0&&t.w!==void 0&&t.h!==void 0)return {x:t.x,y:t.y,w:t.w,h:t.h};switch(e$1.kind){case "text":return c(e$1);case "glyphRun":return d(e$1);case "rect":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h};case "line":return e(e$1);case "image":case "shape":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h};case "decoration":return {x:e$1.x,y:e$1.y,w:e$1.w,h:e$1.h}}}function st(e,t){let r=Math.min(e.x,t.x),i=Math.min(e.y,t.y),n=Math.max(e.x+e.w,t.x+t.w),s=Math.max(e.y+e.h,t.y+t.h);return {x:r,y:i,w:n-r,h:s-i}}function at(e,t){e.style.position="absolute",e.style.left=`${t.x}px`,e.style.top=`${t.y}px`,e.style.width=`${Math.max(1,t.w)}px`,e.style.height=`${Math.max(1,t.h)}px`;}var Q=class extends Error{constructor(r,i){let n=i instanceof Error?i.message:String(i);super(`Rust display-list ${r} failed: ${n}`);b(this,"stage");this.name="RustDisplayListSourceError",this.stage=r;}},lt=null;function Ee(){return lt??(lt=import('../../wasm-DO3BUV7C.mjs').then(async e=>(await e.preloadLayoutWasm(),{buildDisplayListJson:e.buildDisplayListJson,hitTestRegionsJson:e.hitTestRegionsJson,rangeRectsJson:e.rangeRectsJson,rangeRectsRegionJson:e.rangeRectsRegionJson,hasRangeRectsRegion:e.hasRangeRectsRegion,hasDisplayListSession:e.hasDisplayListSession,openDisplayList:e.openDisplayList,closeDisplayList:e.closeDisplayList,updateDisplayList:e.updateDisplayList,hasDisplayListUpdate:e.hasDisplayListUpdate,hitTestRegionsByHandle:e.hitTestRegionsByHandle,rangeRectsByHandle:e.rangeRectsByHandle,rangeRectsRegionByHandle:e.rangeRectsRegionByHandle}))),lt}function Te(){return Ee()}function fn(e,t){let r=e.measured,i="[";for(let s=0;s<r.length;s++){s>0&&(i+=",");let o=r[s],a=o.measure,l;if(t&&a!==null&&typeof a=="object"){let c=a;l=t.get(c),l===void 0&&(l=JSON.stringify(o.measure),t.set(c,l));}else l=JSON.stringify(o.measure);i+='{"block":'+JSON.stringify(o.block)+',"measure":'+l+"}";}i+="]";let n='{"measured":'+i+',"options":'+JSON.stringify(e.options)+',"layout":'+JSON.stringify(e.layout);return e.contractVersion!==void 0&&(n+=',"contractVersion":'+JSON.stringify(e.contractVersion)),e.headersFooters!==void 0&&(n+=',"headersFooters":'+JSON.stringify(e.headersFooters)),e.fontChains!==void 0&&(n+=',"fontChains":'+JSON.stringify(e.fontChains)),e.noteAreas!==void 0&&(n+=',"noteAreas":'+JSON.stringify(e.noteAreas)),e.resolvedCommentIds!==void 0&&(n+=',"resolvedCommentIds":'+JSON.stringify(e.resolvedCommentIds)),e.commentAuthors!==void 0&&(n+=',"commentAuthors":'+JSON.stringify(e.commentAuthors)),e.commentThreads!==void 0&&(n+=',"commentThreads":'+JSON.stringify(e.commentThreads)),n+="}",n}function ct(e){let t={};return e.contractVersion!==void 0&&(t.contractVersion=e.contractVersion),e.headersFooters!==void 0&&(t.headersFooters=e.headersFooters),e.fontChains!==void 0&&(t.fontChains=e.fontChains),e.noteAreas!==void 0&&(t.noteAreas=e.noteAreas),e.resolvedCommentIds!==void 0&&(t.resolvedCommentIds=e.resolvedCommentIds),e.commentAuthors!==void 0&&(t.commentAuthors=e.commentAuthors),e.commentThreads!==void 0&&(t.commentThreads=e.commentThreads),JSON.stringify(t)}var yn=new WeakMap;async function dt(e,t){let r;try{r=t??await Ee();}catch(s){throw new Q("load",s)}let i,n;try{i=fn(e,yn),n=r.buildDisplayListJson(i);}catch(s){throw new Q("build",s)}try{return JSON.parse(n)}catch(s){throw new Q("parse",s)}}async function gn(e,t$1,r=null){let i;try{i=t$1??await Ee();}catch(l){throw new Q("load",l)}if(!i.buildDisplayListFrame)return {displayList:await dt(e,i),frame:null,transport:"json"};let n=ct(e),s$1;try{s$1=i.buildDisplayListFrame(n,r?.frameEpoch??0);}catch(l){throw new Q("build",l)}let o;try{o=s(s$1);}catch(l){throw new Q("decode",l)}let a;try{a=t(r,o);}catch(l){throw new Q("apply",l)}return {displayList:a.displayList,frame:a,transport:"frame-delta-v1"}}function ut(e,t,r){if(t==="body")return e.primitives.filter(n=>n.kind==="image");let i=t==="header"?e.header:e.footer;return !i||r!==void 0&&i.rId!==r?[]:i.primitives.filter(n=>n.kind==="image")}function Ce(e,t,r="body",i){for(let n of e.pages)for(let s of ut(n,r,i))if(s.docStart===t)return {primitive:s,pageIndex:n.pageIndex,...r!=="body"?{region:r,rId:i}:{}};return null}function Be(e,t,r,i,n="body",s){let o=e.pages[t];if(!o)return null;let a=ut(o,n,s);for(let l=a.length-1;l>=0;l--){let c=a[l];if(!(r<c.x||r>c.x+c.w)&&!(i<c.y||i>c.y+c.h))return {primitive:c,pageIndex:o.pageIndex,...n!=="body"?{region:n,rId:s}:{}}}return null}function hn(e,t){let r=e.imageByPos(t);if(!r)return;let i=e.contentBounds(r.pageIndex),n=e.paragraphRects(t).find(s=>s.pageIndex===r.pageIndex);if(!(!i||!n))return {horizontalEmu:Math.round(c$1(r.primitive.x-i.x)),verticalEmu:Math.round(c$1(r.primitive.y-n.y))}}var He=(()=>{let e=globalThis.FinalizationRegistry;return e?new e(t=>t()):null})(),Ge=new WeakMap;function bn(e,t){let r=new Map;e.list.pages.forEach((s,o)=>r.set(s,o));let i=[],n=[];return t.pages.forEach((s,o)=>{let a=r.get(s);a!==void 0&&v(s)===e.pageRevisions[a]?(i.push([o,a]),r.delete(s)):n.push([o,s]);}),i.length===0?null:JSON.stringify({total:t.pages.length,...t.contractVersion!==void 0?{contractVersion:t.contractVersion}:{},reuse:i,replace:n})}function xn(e,t,r){let i=null,n=()=>i??(i=JSON.stringify(e)),s=Ln(t)?t:null,o=s?null:t??null,a=null,l,c,d=new Promise((u,f)=>{l=u,c=f;});d.catch(()=>{});let p=null,y=false,m=false,h=false,R=null;if(r){let u=Ge.get(r);u&&(R=u.hasHandle()?r:u.donor(),u.supersede());}let k=()=>{if(p!==null){try{o?.closeDisplayList?.(p);}catch{}p=null;}},v$1=()=>{let u=R;if(R=null,!u||!o?.updateDisplayList||!o.hasDisplayListUpdate?.())return false;let f=Ge.get(u);if(!f||f.engine()!==o)return false;let g=bn(f,e);if(!g)return false;let x=f.takeHandle();if(x===null)return false;try{return o.updateDisplayList(x,g),p=x,!0}catch(L){try{o.closeDisplayList?.(x);}catch{}return console.warn("[CanvasRenderer] display-list delta update failed; reopening",L),false}},b=()=>{if(!(h||m||y||p!==null||!o)&&!(!o.hasDisplayListSession?.()||!o.openDisplayList)&&(y=true,!v$1()))try{p=o.openDisplayList(n());}catch(u){p=null,console.warn("[CanvasRenderer] display-list session open failed; using JSON-arg queries",u);}};s||o?l():Te().then(u=>{o=u,l();},u=>{a=u instanceof Error?u:new Error(String(u)),c(a),console.warn("[CanvasRenderer] display-list query engine failed to load",a);});let M=(u,f,g)=>{if(!o)return null;if(p===null&&b(),p!==null&&u)try{return u(p)}catch(x){console.warn(`[CanvasRenderer] ${g} session query failed; falling back`,x),k();}try{return f()}catch(x){return a=x instanceof Error?x:new Error(String(x)),console.warn(`[CanvasRenderer] ${g} query failed`,x),null}},A=(u,f,g)=>{if(u===null)return f;try{return JSON.parse(u)}catch(x){return a=x instanceof Error?x:new Error(String(x)),console.warn(`[CanvasRenderer] ${g} returned invalid JSON`,x),f}},w=(u,f)=>{try{return u()}catch(g){return a=g instanceof Error?g:new Error(String(g)),console.warn(`[CanvasRenderer] resident ${f} query failed`,g),null}},_=(u,f,g)=>{if(s)return A(w(()=>s.displayHitTestRegionsJson(u,f,g),"hit_test_regions"),null,"hit_test_regions");let x=M(o?.hitTestRegionsByHandle&&(L=>o.hitTestRegionsByHandle(L,u,f,g)),()=>o.hitTestRegionsJson(n(),u,f,g),"hit_test_regions");return A(x,null,"hit_test_regions")},W=(u,f)=>{if(s)return A(w(()=>s.displayRangeRectsJson(u,f),"range_rects"),[],"range_rects");let g=M(o?.rangeRectsByHandle&&(x=>o.rangeRectsByHandle(x,u,f)),()=>o.rangeRectsJson(n(),u,f),"range_rects");return A(g,[],"range_rects")},P=(u,f,g,x)=>{if(s)return A(w(()=>s.displayRangeRectsRegionJson(u,f,g,x),"range_rects_region"),[],"range_rects_region");if(!o||!o.hasRangeRectsRegion?.())return [];let L=M(o.rangeRectsRegionByHandle&&(I=>o.rangeRectsRegionByHandle(I,u,f,g,x)),()=>o.rangeRectsRegionJson(n(),u,f,g,x),"range_rects_region");return A(L,[],"range_rects_region")},X=(u,f,g)=>{let x=P(u,f,g,g+1);if(x.length>0){let L=new Map;for(let I of x)L.has(I.pageIndex)||L.set(I.pageIndex,{pageIndex:I.pageIndex,x:I.x,y:I.y,width:0,height:I.height});return [...L.values()]}if(g>0){let L=P(u,f,g-1,g);if(L.length>0){let I=new Map;for(let S of L)I.set(S.pageIndex,{pageIndex:S.pageIndex,x:S.x+S.width,y:S.y,width:0,height:S.height});return [...I.values()]}}return []},B=u=>{let f=W(u,u+1);if(f.length>0){let g=f[0];return {pageIndex:g.pageIndex,x:g.x,y:g.y,width:0,height:g.height}}if(u>0){let g=W(u-1,u);if(g.length>0){let x=g[g.length-1];return {pageIndex:x.pageIndex,x:x.x+x.width,y:x.y,width:0,height:x.height}}}return null},ie=u=>{let f=W(u,u+2);return f.length>0?f[0]:B(u)},ce=(u,f,g)=>{let x=P(u,f,g,g+2);if(x.length===0)return X(u,f,g);let L=new Map;for(let I of x)L.has(I.pageIndex)||L.set(I.pageIndex,I);return [...L.values()]},N=(u,f)=>({pageIndex:u,x:f.x,y:f.y,width:f.w,height:f.h}),ee=u=>{let f=e.pages[u];return f?{pageIndex:f.pageIndex,x:0,y:0,width:f.width,height:f.height}:null},T=u=>{let f=e.pages[u],g=f?.contentBounds;return f&&g?{pageIndex:f.pageIndex,x:g.x,y:g.y,width:g.width,height:g.height}:null},V=u=>{let f=e.pages[u];return f?(f.columnBounds??[]).map(g=>({pageIndex:f.pageIndex,x:g.x,y:g.y,width:g.width,height:g.height})):[]},Y=u=>u.paraId?`para:${u.paraId}`:u.blockKey!==void 0?`block-key:${u.blockKey}`:u.blockId!==void 0?`block-id:${u.blockId}`:null,$=u=>u.blockKey??u.blockId,F=null,z=()=>{if(F)return F;let u=new Map;for(let f$1 of e.pages)for(let g of f$1.primitives){let x=Y(g);if(!x||g.docStart===void 0||g.docEnd===void 0)continue;let L=f(g),I=u.get(x);I||(I=new Map,u.set(x,I));let S=I.get(f$1.pageIndex);if(!S){I.set(f$1.pageIndex,{...N(f$1.pageIndex,L),from:g.docStart,to:g.docEnd,blockId:$(g),paraId:g.paraId});continue}let C=Math.min(S.x,L.x),E=Math.min(S.y,L.y),de=Math.max(S.x+S.width,L.x+L.w),ue=Math.max(S.y+S.height,L.y+L.h);S.x=C,S.y=E,S.width=de-C,S.height=ue-E,S.from=Math.min(S.from,g.docStart),S.to=Math.max(S.to,g.docEnd);}return F=new Map([...u].map(([f,g])=>[f,[...g.values()]])),F},Z=u=>{let f=null;for(let g of e.pages)for(let x of g.primitives){let L=Y(x),I=x.docStart,S=x.docEnd;if(!L||I===void 0||S===void 0||u<I||u>S)continue;let C={identity:L,span:Math.max(0,S-I),startsAtPos:I===u};(!f||C.startsAtPos&&!f.startsAtPos||C.startsAtPos===f.startsAtPos&&C.span<f.span)&&(f=C);}return f?z().get(f.identity)??[]:[]},U=1.5,te=null,Je=()=>{if(te)return te;let u=[];for(let f$1 of e.pages){let g=[],x=0;for(let L of f$1.primitives){if(L.kind!=="text"&&L.kind!=="glyphRun"||L.docStart===void 0||L.docEnd===void 0||L.kind==="glyphRun"&&L.glyphs.length===0)continue;let I=L.kind==="text"?L.baselineY:L.glyphs.reduce((me,It)=>Math.max(me,It.y),-1/0);if(!Number.isFinite(I))continue;let S=Y(L)??`anonymous:${x++}`,C=f(L),E=g.find(me=>me.identity===S&&Math.abs(me.baseline-I)<=U);if(!E){g.push({identity:S,...N(f$1.pageIndex,C),baseline:I,from:L.docStart,to:L.docEnd,blockId:$(L),paraId:L.paraId});continue}let de=Math.min(E.x,C.x),ue=Math.min(E.y,C.y),Rt=Math.max(E.x+E.width,C.x+C.w),Dt=Math.max(E.y+E.height,C.y+C.h);E.x=de,E.y=ue,E.width=Rt-de,E.height=Dt-ue,E.from=Math.min(E.from,L.docStart),E.to=Math.max(E.to,L.docEnd);}u.push(...g.map(({identity:L,...I})=>I));}return te=u,te},bt=u=>{let f=null;for(let g of Je())u<g.from||u>g.to||(!f||g.to-g.from<f.to-f.from)&&(f=g);return f},Ke=u=>{if(!u)return null;let f=u.primitive.docStart;if(f===void 0)return null;let{primitive:g}=u;return {...u,pos:f,rect:{pageIndex:u.pageIndex,x:g.x,y:g.y,width:g.w,height:g.h}}},xt=(u,f,g,x="body",L)=>Ke(Be(e,u,f,g,x,L)),Lt=(u,f="body",g)=>Ke(Ce(e,u,f,g)),be={},xe={displayList:e,isReady:()=>(s!==null||o!==null)&&a===null,sourceState:()=>a?{status:"error",error:a}:s||o?{status:"ready"}:{status:"loading"},whenReady:()=>d,pageCount:()=>e.pages.length,pageSize:u=>{let f=e.pages[u];return f?{width:f.width,height:f.height}:null},pageBounds:ee,contentBounds:T,columnBounds:V,paragraphRects:Z,visualLines:Je,visualLineAtPosition:bt,imageAtPoint:xt,imageByPos:Lt,hitTestRegions:_,rangeRects:W,hfRangeRects:P,hfCaretRects:X,hfAnchorRects:ce,caretRect:B,anchorRect:ie,sidebarAnchorRect:ie,prime:b,dispose:()=>{h||(h=true,k(),He?.unregister(be));}};return He?.register(xe,k,be),Ge.set(xe,{list:e,pageRevisions:e.pages.map(v),engine:()=>o,hasHandle:()=>p!==null,donor:()=>R,supersede:()=>{m=true;},takeHandle:()=>{let u=p;return u!==null&&(p=null,He?.unregister(be)),u}}),xe}function Ln(e){return typeof e?.displayHitTestRegionsJson=="function"&&typeof e?.displayRangeRectsJson=="function"&&typeof e?.displayRangeRectsRegionJson=="function"}var Rn=16,Dn=24;function se(e){let t=[],r=24;for(let i=0;i<e.pageCount();i++)t.push(r),r+=(e.pageSize(i)?.height??0)+16;return t}function In(){let e=new Map;return t=>{if(!t.startsWith("blob:")&&!t.startsWith("data:"))return null;let r=e.get(t);return r||(r=new Promise(i=>{let n=new Image;n.onload=()=>i(n),n.onerror=()=>i(null),n.src=t;}),e.set(t,r)),r}}function Sn(e,t){let r=e.activeCommentIds.length>0?t?.(e.activeCommentIds):void 0;return {hasSelection:e.hasSelection,inInsertion:e.inInsertion,inDeletion:e.inDeletion,hasComment:e.activeCommentIds.length>0,inList:e.inList,listLevel:e.listLevel??0,...r?.authorName!==void 0?{commentAuthor:r.authorName}:{},...r?.replyCount!==void 0?{commentReplyCount:r.replyCount}:{}}}function vn(e,t){if(!e)return [];let r=[];return !e.hasSelection&&t.hasSelection&&r.push({key:"selected"}),e.hasSelection&&!t.hasSelection&&r.push({key:"selectionCleared"}),!e.hasComment&&t.hasComment&&r.push({key:"commentedText",...t.commentAuthor!==void 0||t.commentReplyCount!==void 0?{vars:{...t.commentAuthor!==void 0?{author:t.commentAuthor}:{},...t.commentReplyCount!==void 0?{replies:t.commentReplyCount}:{}}}:{}}),!e.inInsertion&&t.inInsertion&&r.push({key:"trackedInsertion"}),!e.inDeletion&&t.inDeletion&&r.push({key:"trackedDeletion"}),(!e.inList&&t.inList||t.inList&&e.listLevel!==t.listLevel)&&r.push({key:"listItem",vars:{level:t.listLevel+1}}),r}function ae(e){let t=Number(e);if(Number.isFinite(t))return t;let r=0xcbf29ce484222325n;for(let i of new TextEncoder().encode(e))r=(r^BigInt(i))*0x100000001b3n,r&=0xffffffffffffffffn;return Number(r&(1n<<53n)-1n)}function he(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)?e:null}function kn(e){let t=typeof e.story=="string"?[e.story]:[],r=Array.isArray(e.rows)?e.rows:[];for(let i of r){let n=he(i),s=n&&Array.isArray(n.cells)?n.cells:[];for(let o of s){let a=he(o)?.story;typeof a=="string"&&t.push(a);}}return t}function wn(e){let t=e.storyIds(),r=new Map,i=new Set;for(let o of t){let a=[];try{for(let l of e.storySegments(o))if(l.kind==="embed")for(let c of kn(l.payload))a.push(c),i.add(c);}catch{}r.set(o,a);}let n=new Map,s=(o,a,l)=>{if(!(l.has(o)||n.has(o))){l.add(o),n.set(o,a);for(let c of r.get(o)??[])s(c,a,l);l.delete(o);}};t.includes("body")&&s("body",{story:"body"},new Set);for(let o of t)!o.startsWith("hf:")||i.has(o)||s(o,{story:o,hfRid:o.slice(3)},new Set);return n}function Mn(e,t,r,i,n){let s=Array.isArray(t.rows)?t.rows:[],o=r+1;for(let a of s){let l=he(a),c=l&&Array.isArray(l.cells)?l.cells:[],d=o+1;for(let p of c){let y=he(p),m=typeof y?.story=="string"?y.story:null,h=m?Fe(e,m,d+1,i,n):0;d+=h+2;}o=d+1;}return o+1-r}function Fe(e,t,r,i,n){if(n.has(t))throw new Error(`recursive yrs story: ${t}`);n.add(t);try{let s=r,o=r,a=0,l=!0;for(let c of e.storySegments(t)){if(c.kind==="text"){a+=c.text.length,l=!1;continue}if(c.kind==="pilcrow"){let d=o+a+2;i.set(c.paraId,{pmStart:o,pmEnd:d}),s=d,o=s,a=0,l=!0;continue}if(c.embedKind==="table"&&l){s+=Mn(e,c.payload,s,i,n),o=s;continue}if(c.embedKind==="blockSdt"&&l){let d=typeof c.payload.story=="string"?c.payload.story:null,p=d?Fe(e,d,s+1,i,n):0;s+=p+2,o=s;continue}if(l&&(c.embedKind==="pageBreak"||c.embedKind==="columnBreak")){s+=1,o=s;continue}a+=1,l=!1;}return s-r}finally{n.delete(t);}}function Pn(e){let t=new Map,r=wn(e),i=o=>{let a=r.get(o)?.story;if(!a)return null;if(t.has(a))return t.get(a)??null;try{let l=new Map;return Fe(e,a,0,l,new Set),t.set(a,l),l}catch{return t.set(a,null),null}},n=o=>{let a=r.get(o.story);if(!a)return null;let l=i(o.story)?.get(o.paraId);if(!l)return null;let c=Math.max(0,l.pmEnd-l.pmStart-2),d=Math.min(Math.max(0,Math.trunc(o.offset)),c);return {story:o.story,position:l.pmStart+1+d,...a.hfRid?{hfRid:a.hfRid}:{}}};return {locToDisplayPoint:n,storyOffsetToDisplayPoint:(o,a)=>{if(!r.has(o))return null;let l=Math.max(0,Math.trunc(a));try{for(let c of e.paragraphs(o)){let d=e.locateParagraph(o,c.paraId);if(!(l<d.start||l>d.end))return n({story:o,paraId:c.paraId,offset:Math.min(l-d.start,d.end-d.start)})}}catch{return null}return null}}}function Ne(e,t){let{doc:r,schema:i}=e.state,n=i.marks.comment,s=i.marks.insertion,o=i.marks.deletion;!n&&!s&&!o||r.descendants((a,l)=>{let c=a.attrs;if(c){let d=[c.trIns,c.trDel,c.pPrIns,c.pPrDel];for(let h of d){let R=h?.revisionId;typeof R=="number"&&t(`revision-${R}`,l);}let y=c.cellMarker?.info?.revisionId;typeof y=="number"&&t(`revision-${y}`,l);let m=[c.pPrChange,c.trPrChange,c.tcPrChange,c.tblPrChange];for(let h of m)if(Array.isArray(h))for(let R of h){let k=R?.info?.id;typeof k=="number"&&t(`revision-${k}`,l);}}if(a.isInline)for(let d of a.marks){let p=null;n&&d.type===n?p=`comment-${d.attrs.commentId}`:(s&&d.type===s||o&&d.type===o)&&(p=`revision-${d.attrs.revisionId}`),p&&t(p,l);}});}function An(e,t,r){let i=new Map;if(!e?.state)return i;let n=se(t),s=new Set;return Ne(e,(o,a)=>{if(s.has(o))return;s.add(o);let l=t.anchorRect(a);if(!l)return;let c=r?r(l):(n[l.pageIndex]??0)+l.y;c!=null&&i.set(o,c);}),i}function En(e,t,r){if(!e.hfRid)return t.anchorRect(e.position);let i=r?.get(e.hfRid);return i?t.hfAnchorRects(i,e.hfRid,e.position)[0]??null:null}function Tn(e,t,r,i,n,s,o){let a=new Map,l=se(n),c=(d,p)=>{if(!p||a.has(d))return a.has(d);let y=En(p,n,s);if(!y)return false;let m=o?o(y):(l[y.pageIndex]??0)+y.y;return m==null?false:(a.set(d,m),true)};for(let d of t){let p=`comment-${d}`;try{for(let y of e.resolveComment(String(d)))if(c(p,i.storyOffsetToDisplayPoint(y.story,y.start)))break}catch{}}for(let d of r)c(`revision-${ae(d.revisionId)}`,i.locToDisplayPoint({story:d.story,...d.range.start}));return a}function Cn(e,t,r,i){let n=se(t);for(let{region:s,rId:o,view:a}of e)Ne(a,(l,c)=>{if(r.has(l))return;let d=t.hfAnchorRects(s,o,c)[0];if(!d)return;let p=i?i(d):(n[d.pageIndex]??0)+d.y;p!=null&&r.set(l,p);});return r}function Bn(e,t){let r=e.map(o=>{let a=t.locToDisplayPoint({story:o.range.story,...o.range.start}),l=t.locToDisplayPoint({story:o.range.story,...o.range.end}),c=a?.position??0,d=Math.max(c,l?.position??c);return {type:o.kind==="pPrIns"?"paragraphMarkInsertion":o.kind==="pPrDel"?"paragraphMarkDeletion":o.kind==="pPrChange"?"paragraphPropertiesChanged":o.kind==="trIns"?"rowInserted":o.kind==="trDel"?"rowDeleted":o.kind==="tableIns"?"tableInserted":o.kind==="tableDel"?"tableDeleted":o.kind,text:o.preview,author:o.author,date:o.date||void 0,from:c,to:d,revisionId:ae(o.revisionId),...a?.hfRid?{hfRid:a.hfRid}:{}}}),i=new Map;for(let o of r){let a=i.get(o.revisionId)??[];a.push(o),i.set(o.revisionId,a);}let n=[...i.values()].map(o=>{let a=Math.min(...o.map(m=>m.from)),l=Math.max(...o.map(m=>m.to)),c=o.filter(m=>m.type==="insertion"),d=o.filter(m=>m.type==="deletion");if(c.length>0&&d.length>0)return {...c[0],type:"replacement",text:c.map(h=>h.text).join(""),deletedText:d.map(h=>h.text).join(""),from:a,to:l};let p=o.find(m=>m.type==="insertion"||m.type==="deletion")??o[0],y=o.filter(m=>m.type===p.type).map(m=>m.text).join("");return {...p,text:y,from:a,to:l}}),s=[];for(let o=0;o<n.length;o+=1){let a=n[o],l=n[o+1];a.type==="deletion"&&l?.type==="insertion"&&a.author===l.author&&a.date===l.date&&a.to===l.from&&a.hfRid===l.hfRid?(s.push({type:"replacement",text:l.text,deletedText:a.text,author:a.author,date:a.date,from:a.from,to:l.to,revisionId:a.revisionId,insertionRevisionId:l.revisionId,...a.hfRid?{hfRid:a.hfRid}:{}}),o+=1):s.push(a);}return {entries:s,commentToRevision:new Map}}function Hn(e,t){let r=t.kind??"body";if(r==="body")return {kind:r,primitives:e.primitives};let i=r==="header"?e.header:e.footer;return !i||i.kind!==r||t.rId&&i.rId!==t.rId?null:{kind:r,rId:i.rId,primitives:i.primitives}}function Gn(e){switch(e.kind){case "text":return c(e);case "glyphRun":return d(e);case "rect":case "image":case "shape":case "decoration":return {x:e.x,y:e.y,w:e.w,h:e.h};case "line":return {x:Math.min(e.x1,e.x2),y:Math.min(e.y1,e.y2),w:Math.abs(e.x2-e.x1),h:Math.abs(e.y2-e.y1)}}}function Fn(e){let t=Gn(e),r=e.clipGroup?.clip;if(!r)return t;let i=r.x??0,n=r.y??0,s=i+Math.max(0,r.w??0),o=n+Math.max(0,r.h??0),a=Math.max(t.x,i),l=Math.max(t.y,n),c=Math.min(t.x+t.w,s),d=Math.min(t.y+t.h,o);return c<a||d<l?null:{x:a,y:l,w:c-a,h:d-l}}function Nn(e){return e.kind==="text"||e.kind==="glyphRun"?e.text:e.kind==="image"?e.altText??"":""}function Yn(e,t,r){return t>=e.x&&t<=e.x+e.w&&r>=e.y&&r<=e.y+e.h}function On(e,t,r,i,n={kind:"body"}){let s=e.pages[t];if(!s)return null;let o=Hn(s,n);if(!o)return null;for(let a=o.primitives.length-1;a>=0;a--){let l=o.primitives[a];if(l.kind==="line"||!l.href||l.hiddenObject)continue;let c=Fn(l);if(c&&Yn(c,r,i))return {pageIndex:t,region:o.kind,rId:o.rId,href:l.href,tooltip:l.linkTitle??l.tooltip,displayText:Nn(l)||l.href,rect:c}}return null}var O=7.5,q=16,mt=320,_n=30,Xn=200,$n=24,Jn=10,Kn=10,Qn=24;function pt(e){let t;switch(e.kind){case "text":t=c(e);break;case "glyphRun":t=d(e);break;case "rect":case "image":case "shape":case "decoration":t={x:e.x,y:e.y,w:e.w,h:e.h};break;case "line":t={x:Math.min(e.x1,e.x2),y:Math.min(e.y1,e.y2),w:Math.abs(e.x2-e.x1),h:Math.abs(e.y2-e.y1)};break}let r=Oe(e);return r?Wn(t,r)??{x:r.x,y:r.y,w:0,h:0}:t}function Oe(e){let t=e.clipGroup?.clip;return t?{x:t.x??0,y:t.y??0,w:Math.max(0,t.w??0),h:Math.max(0,t.h??0)}:null}function Wn(e,t){let r=Math.max(e.x,t.x),i=Math.max(e.y,t.y),n=Math.min(e.x+e.w,t.x+t.w),s=Math.min(e.y+e.h,t.y+t.h);return n<r||s<i?null:{x:r,y:i,w:n-r,h:s-i}}function ft(e,t,r){if(e.docStart!=null){let i=t(e.docStart);if(i!=null){let n={tableKey:i,docStartSample:e.docStart};return e.table?.tableId&&!r.has(e.table.tableId)&&r.set(e.table.tableId,n),n}}return e.table?.tableId?r.get(e.table.tableId)??null:null}function yt(e,t,r){let i=e.table?.tableId;if(!i)return null;let n=t.get(i);return n?r.get(n.tableKey)??null:null}function Vn(e,t,r,i){let n=new Map;for(let o of t){if(o.kind==="line")continue;let a=o.cell;if(!a)continue;let l=ft(o,r,i);if(!l)continue;let{tableKey:c,docStartSample:d}=l,p=pt(o),y=Oe(o),m=y??p,h=n.get(c);if(h||(h={tableKey:c,docStartSample:d,contentMinX:m.x,contentMinY:m.y,contentMaxX:m.x+m.w,contentMaxY:m.y+m.h,exactLeftX:[],exactBottomY:[],exactClipLeftX:[],exactClipBottomY:[],rows:new Map},n.set(c,h)),d<h.docStartSample&&(h.docStartSample=d),h.contentMinX=Math.min(h.contentMinX,m.x),h.contentMinY=Math.min(h.contentMinY,m.y),h.contentMaxX=Math.max(h.contentMaxX,m.x+m.w),h.contentMaxY=Math.max(h.contentMaxY,m.y+m.h),y&&(h.exactClipLeftX.push(y.x),h.exactClipBottomY.push(y.y+y.h)),!a.continuation){let R=h.rows.get(a.row);R?(R.top=Math.min(R.top,m.y),R.bottom=Math.max(R.bottom,m.y+m.h)):h.rows.set(a.row,{top:m.y,bottom:m.y+m.h});}}if(n.size===0)return [];for(let o of t){if(o.kind!=="line"||o.role!=="table-border"&&o.role!=="table-cut")continue;let a=yt(o,i,n);if(!a){let d=(o.x1+o.x2)/2,p=(o.y1+o.y2)/2,y=1/0;for(let m of n.values()){let h=d>=m.contentMinX-q&&d<=m.contentMaxX+q,R=p>=m.contentMinY-q&&p<=m.contentMaxY+q;if(!h||!R)continue;let k=Math.max(0,m.contentMinX-d,d-m.contentMaxX),v=Math.max(0,m.contentMinY-p,p-m.contentMaxY),b=k+v;b<y&&(y=b,a=m);}}if(!a)continue;let l=Math.abs(o.x1-o.x2)<.5,c=Math.abs(o.y1-o.y2)<.5;l&&a.exactLeftX.push(Math.min(o.x1,o.x2)),c&&a.exactBottomY.push(Math.max(o.y1,o.y2));}let s=[];for(let o of n.values()){if(o.rows.size===0)continue;let a=o.exactLeftX.length>0||o.exactClipLeftX.length>0,l=a?Math.min(...o.exactLeftX,...o.exactClipLeftX):o.contentMinX-O,c=o.exactBottomY.length>0||o.exactClipBottomY.length>0?Math.max(...o.exactBottomY,...o.exactClipBottomY):o.contentMaxY,d=[...o.rows.entries()].map(([p,y])=>({rowIndex:p,top:y.top,bottom:y.bottom})).sort((p,y)=>p.rowIndex-y.rowIndex);s.push({pageIndex:e,tableKey:o.tableKey,docStartSample:o.docStartSample,originX:l,originY:o.contentMinY,bottomY:c,originExact:a,rowBands:d});}return s}function zn(e,t){let r=[],i=Xe(e,t,{kind:"body"});for(let n of e.pages)r.push(...Vn(n.pageIndex,n.primitives,t,i));return r}function _e(e,t){let r=t.kind??"body";if(r==="body")return {kind:r,primitives:e.primitives};let i=r==="header"?e.header:e.footer;return !i||i.kind!==r||t.rId&&i.rId!==t.rId?null:{kind:r,rId:i.rId,primitives:i.primitives}}function Xe(e,t,r){let i=new Map;for(let n of e.pages){let s=_e(n,r);if(s)for(let o of s.primitives){if(!o.cell||!o.table?.tableId||o.docStart==null)continue;let a=t(o.docStart);if(a==null)continue;let l=i.get(o.table.tableId);(!l||o.docStart<l.docStartSample)&&i.set(o.table.tableId,{tableKey:a,docStartSample:o.docStart});}}return i}function $e(e,t){return `${e}:${t}`}function jn(e,t,r,i){let n=$e(t.row,t.col),s=e.cells.get(n);s?(s.minX=Math.min(s.minX,r.x),s.minY=Math.min(s.minY,r.y),s.maxX=Math.max(s.maxX,r.x+r.w),s.maxY=Math.max(s.maxY,r.y+r.h),s.rowSpan=Math.max(s.rowSpan,t.rowSpan),s.colSpan=Math.max(s.colSpan,t.colSpan),i&&(s.exactClip=i)):e.cells.set(n,{row:t.row,col:t.col,rowSpan:t.rowSpan,colSpan:t.colSpan,minX:r.x,minY:r.y,maxX:r.x+r.w,maxY:r.y+r.h,exactClip:i??void 0});}function gt(e,t,r){let i=new Map;for(let n of e){if(n.kind==="line")continue;let s=n.cell;if(!s)continue;let o=ft(n,t,r);if(!o)continue;let a=o.tableKey,l=pt(n),c=i.get(a);c||(c={tableKey:a,contentMinX:l.x,contentMinY:l.y,contentMaxX:l.x+l.w,contentMaxY:l.y+l.h,cells:new Map,verticalLines:[],horizontalLines:[]},i.set(a,c)),c.contentMinX=Math.min(c.contentMinX,l.x),c.contentMinY=Math.min(c.contentMinY,l.y),c.contentMaxX=Math.max(c.contentMaxX,l.x+l.w),c.contentMaxY=Math.max(c.contentMaxY,l.y+l.h),jn(c,s,l,Oe(n));}if(i.size===0)return [];for(let n of e){if(n.kind!=="line"||n.role!=="table-border"&&n.role!=="table-cut")continue;let s=Math.abs(n.x1-n.x2)<.5,o=Math.abs(n.y1-n.y2)<.5;if(!s&&!o)continue;let a=Math.min(n.x1,n.x2),l=Math.max(n.x1,n.x2),c=Math.min(n.y1,n.y2),d=Math.max(n.y1,n.y2),p=yt(n,r,i);if(p){s?p.verticalLines.push(a):p.horizontalLines.push(c);continue}for(let y of i.values())if(s){if(!(d>=y.contentMinY-q&&c<=y.contentMaxY+q))continue;let h=a;Math.max(0,y.contentMinX-h,h-y.contentMaxX)<=mt&&y.verticalLines.push(h);}else if(o){if(!(l>=y.contentMinX-q&&a<=y.contentMaxX+q))continue;let h=c;Math.max(0,y.contentMinY-h,h-y.contentMaxY)<=mt&&y.horizontalLines.push(h);}}return [...i.values()]}function le(e){let t=[];for(let r of [...e].sort((i,n)=>i-n))(t.length===0||Math.abs(t[t.length-1]-r)>.5)&&t.push(r);return t}function ht(e){let t=le([...e.cells.values()].map(n=>n.row)),r=le(e.horizontalLines),i=new Map;if(t.length>0&&r.length>=t.length+1)for(let n=0;n<t.length;n++)i.set(t[n],r[n]),i.set(t[n]+1,r[n+1]);return i}function Ye(e){if(!e)return null;if(e.exactClip)return e.exactClip;let t=e.minX-O,r=e.minY-O;return {x:t,y:r,w:Math.max(1,e.maxX-e.minX+O*2),h:Math.max(1,e.maxY-e.minY+O*2)}}function Un(e,t){let r=1/0,i=-1/0;for(let n of e.cells.values())n.row===t&&(r=Math.min(r,n.exactClip?.y??n.minY-O),i=Math.max(i,n.exactClip?n.exactClip.y+n.exactClip.h:n.maxY+O));return !Number.isFinite(r)||!Number.isFinite(i)||i<=r?null:{top:r,bottom:i}}function qn(e,t,r){let i=Ye(e.cells.get($e(t,r)));return i?{left:i.x,right:i.x+i.w,top:i.y,bottom:i.y+i.h}:null}function Zn(e,t,r,i={kind:"body"}){if(t.length===0)return [];let n=new Map;for(let a of t){let l=n.get(a.tableKey);l?l.push(a):n.set(a.tableKey,[a]);}let s=[],o=Xe(e,r,i);for(let a of e.pages){let l=_e(a,i);if(!l)continue;let c=gt(l.primitives,r,o);for(let d of c){let p=n.get(d.tableKey);if(!p)continue;let y=le(d.verticalLines),m=ht(d);for(let h of p){let R=d.cells.get($e(h.row,h.col)),k=y[h.col],v=y[h.col+h.colSpan],b=m.get(h.row),M=m.get(h.row+h.rowSpan),A=true;if(k==null||v==null||v<=k){let w=R?.exactClip??Ye(R);if(!w)continue;k=w.x,v=w.x+w.w,A=R?.exactClip!=null;}if(b==null||M==null||M<=b){let w=R?.exactClip??Ye(R);if(!w)continue;b=w.y,M=w.y+w.h,A&&(A=R?.exactClip!=null);}s.push({pageIndex:a.pageIndex,tableKey:d.tableKey,row:h.row,col:h.col,rowSpan:h.rowSpan,colSpan:h.colSpan,x:k,y:b,w:Math.max(1,v-k),h:Math.max(1,M-b),exact:A,region:l.kind,rId:l.rId});}}}return s}function ei(e){let{list:t,pageIndex:r,x:i,y:n,canvasRect:s,pageSize:o,tableKeyOf:a,cellPmPosOf:l,region:c={kind:"body"},edgeProximity:d=_n}=e,p=t.pages[r];if(!p)return null;let y=_e(p,c);if(!y)return null;let m=o.width>0?s.width/o.width:1,h=o.height>0?s.height/o.height:1,R=(b,M)=>({clientX:s.left+b*m,clientY:s.top+M*h}),k=Xe(t,a,c),v=gt(y.primitives,a,k);for(let b of v){let M=le(b.verticalLines),A=ht(b),w=le([...b.cells.values()].map(N=>N.row));if(w.length===0)continue;let _=M[0]??b.contentMinX-O,W=M[M.length-1]??b.contentMaxX+O,P=A.get(w[0])??b.contentMinY-O,X=w[w.length-1],B=A.get(X+1)??b.contentMaxY+O,ie=i<_+d&&i>=_-d,ce=n<P+d&&n>=P-d;if(!(!ie&&!ce)){if(ie&&n>=P-d&&n<=B)for(let N of w){let ee=A.get(N),T=A.get(N+1),V=ee==null||T==null?Un(b,N):null,Y=ee??V?.top,$=T??V?.bottom;if(Y==null||$==null||$<=Y||n<Y||n>$)continue;let F=[...b.cells.values()].filter(U=>U.row===N).sort((U,te)=>U.col-te.col)[0];if(!F)continue;let z=l(b.tableKey,N,F.col);if(!z)continue;let Z=R(_,Y+($-Y)/2);return {type:"row",clientX:Z.clientX-$n,clientY:Z.clientY-Jn,cellPmPos:z}}if(ce&&i>=_-d&&i<=W){let N=w[0],ee=[...b.cells.values()].filter(T=>T.row===N).sort((T,V)=>T.col-V.col);for(let T of ee){let V=M[T.col],Y=M[T.col+T.colSpan],$=V==null||Y==null?qn(b,T.row,T.col):null,F=V??$?.left,z=Y??$?.right;if(F==null||z==null||z<=F||i<F||i>z)continue;let Z=l(b.tableKey,T.row,T.col);if(!Z)continue;let U=R(F+(z-F)/2,P);return {type:"column",clientX:U.clientX-Kn,clientY:U.clientY-Qn,cellPmPos:Z}}}}}return null}var Qi=We;export{Dn as CANVAS_PAGES_PADDING_PX,Rn as CANVAS_PAGE_GAP_PX,Xn as DISPLAY_LIST_TABLE_INSERT_HIDE_DELAY_MS,D as MIRROR_CLASS_NAMES,Q as RustDisplayListSourceError,en as applyInteractiveSdtFocus,nn as buildInteractiveOverlayPage,Xt as buildMirrorPage,gn as buildRustDisplayFrame,dt as buildRustDisplayList,se as canvasPageTops,hn as captureInlinePositionEmuFromDisplayList,vn as computeA11yAnnouncements,An as computeAnchorPositionsFromDisplayList,Tn as computeAnchorPositionsFromYrs,In as createCanvasImageResolver,xn as createDisplayListQueries,Pn as createYrsSidebarProjection,Qi as demoDisplayList,Zn as deriveDisplayListSelectedCellRects,zn as deriveDisplayListTableFragments,ei as detectDisplayListTableInsertHover,ct as encodeDisplayListFrameExtras,Bn as extractTrackedChangesFromYrs,On as findDisplayListHyperlinkAtPoint,Be as findImagePrimitiveAtPoint,Ce as findImagePrimitiveByDocPos,_t as loadGlyphOutlineProvider,Te as loadRustDisplayListQueryEngine,Cn as mergeHfAnchorPositionsFromDisplayList,Sn as snapshotFromSelectionContext,Ne as visitAnchorKeys,ae as yrsIdToNumericId};
@@ -1,12 +1,13 @@
1
1
  import { RenderedDomContext, PositionCoordinates } from './index.mjs';
2
- import { D as DisplayListRect, a as DisplayListQueries } from '../displayListQueries-UGc_XBUv.mjs';
2
+ import { D as DisplayListRect, a as DisplayListQueries } from '../displayListQueries-BJlo7Jkz.mjs';
3
3
  import '../types/document.mjs';
4
- import '../content-DLFHRQav.mjs';
4
+ import '../content-MOZ6hKP4.mjs';
5
5
  import '../formatting-D1EPSaJP.mjs';
6
6
  import '../docx/wrapTypes.mjs';
7
7
  import '../styles-Dn_o3Vo5.mjs';
8
- import '../rustDisplayList-CX78djsZ.mjs';
9
- import '../types-DMkDbvEu.mjs';
8
+ import '../frameDelta-D965X8yK.mjs';
9
+ import '../rustDisplayList-BRuZBqdL.mjs';
10
+ import '../types-BfqUl2h_.mjs';
10
11
  import '../layout/pagination/index.mjs';
11
12
 
12
13
  /**