@zeke-02/docx-editor-core 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +89 -0
  3. package/dist/ImageExtension-BN327PNe.d.mts +38 -0
  4. package/dist/ImageExtension-BlI5afZD.d.ts +38 -0
  5. package/dist/Subscribable-DOz6Ohoo.d.mts +33 -0
  6. package/dist/Subscribable-DOz6Ohoo.d.ts +33 -0
  7. package/dist/agent/index.d.mts +168 -0
  8. package/dist/agent/index.d.ts +168 -0
  9. package/dist/agent/index.js +1 -0
  10. package/dist/agent/index.mjs +1 -0
  11. package/dist/borders-BH_GoYU3.d.mts +58 -0
  12. package/dist/borders-Z9hPno2u.d.ts +58 -0
  13. package/dist/chunk-2HFQ4QTU.js +1 -0
  14. package/dist/chunk-2KHWHVTA.js +1 -0
  15. package/dist/chunk-2MSZXH6Q.mjs +2 -0
  16. package/dist/chunk-3COGZG7O.mjs +1 -0
  17. package/dist/chunk-3NRMSZX2.mjs +1 -0
  18. package/dist/chunk-3SXJPJSV.mjs +1 -0
  19. package/dist/chunk-44FHVKSI.js +1 -0
  20. package/dist/chunk-4BFNWPKW.js +1 -0
  21. package/dist/chunk-4G6AJ4ZM.js +1 -0
  22. package/dist/chunk-4GER4JLW.js +1 -0
  23. package/dist/chunk-4Q2IP5FW.js +1 -0
  24. package/dist/chunk-56D223FM.mjs +1 -0
  25. package/dist/chunk-5VBNOHRE.mjs +1 -0
  26. package/dist/chunk-67LVRQIR.mjs +1 -0
  27. package/dist/chunk-6LVPRTB6.js +1 -0
  28. package/dist/chunk-6NQSIC27.mjs +1 -0
  29. package/dist/chunk-6Y6LON6Y.mjs +1 -0
  30. package/dist/chunk-6ZXL3EIP.mjs +2 -0
  31. package/dist/chunk-7AMYZMCX.js +1 -0
  32. package/dist/chunk-7E5VBRDL.mjs +1 -0
  33. package/dist/chunk-7HANRHHL.js +1 -0
  34. package/dist/chunk-7LRR7RKE.mjs +15 -0
  35. package/dist/chunk-7RDCZLTU.js +1 -0
  36. package/dist/chunk-7U4I6BKJ.js +1 -0
  37. package/dist/chunk-7Z2AGPNQ.mjs +10 -0
  38. package/dist/chunk-AAPBAMD7.js +1 -0
  39. package/dist/chunk-AGVFAXVQ.mjs +9 -0
  40. package/dist/chunk-AMENZY5F.mjs +1 -0
  41. package/dist/chunk-ARHPXIBJ.mjs +1 -0
  42. package/dist/chunk-BGY3CB37.mjs +1 -0
  43. package/dist/chunk-BHBOAP6Z.js +3 -0
  44. package/dist/chunk-BOOHU5EW.mjs +1 -0
  45. package/dist/chunk-C2BAPYGJ.js +1 -0
  46. package/dist/chunk-CGJ6S3AH.mjs +1 -0
  47. package/dist/chunk-CKKO4JWE.mjs +1 -0
  48. package/dist/chunk-CTHHUJAB.mjs +2 -0
  49. package/dist/chunk-CUY2THAO.mjs +1 -0
  50. package/dist/chunk-CXQDYR2Y.js +1 -0
  51. package/dist/chunk-D4RPOJC7.js +1 -0
  52. package/dist/chunk-D6GO7UGD.mjs +1 -0
  53. package/dist/chunk-DC7S76ZX.js +1 -0
  54. package/dist/chunk-DROCYKAR.js +1 -0
  55. package/dist/chunk-DV6GWBUJ.js +2 -0
  56. package/dist/chunk-DZYYLV2O.js +1 -0
  57. package/dist/chunk-E4JMCA5X.js +2 -0
  58. package/dist/chunk-ERNVFCGN.js +59 -0
  59. package/dist/chunk-ESI4BSBF.js +1 -0
  60. package/dist/chunk-F44ZLDZS.js +4 -0
  61. package/dist/chunk-FCJWLEKT.mjs +1 -0
  62. package/dist/chunk-FDEDN2RC.mjs +0 -0
  63. package/dist/chunk-FRYMBAHP.js +3 -0
  64. package/dist/chunk-FWTP7BN7.mjs +4 -0
  65. package/dist/chunk-G3YJ5RKC.mjs +1 -0
  66. package/dist/chunk-GGPKPXON.js +1 -0
  67. package/dist/chunk-HKVAW3RE.js +1 -0
  68. package/dist/chunk-HQPWFUP5.js +2 -0
  69. package/dist/chunk-I6PMX4BO.js +1 -0
  70. package/dist/chunk-ILJUDEZ5.mjs +1 -0
  71. package/dist/chunk-IMKU4O3P.js +1 -0
  72. package/dist/chunk-IP2VXNWG.js +1 -0
  73. package/dist/chunk-J4J2Y6EU.js +10 -0
  74. package/dist/chunk-J7NADDC4.mjs +1 -0
  75. package/dist/chunk-JFZIXFRC.js +1 -0
  76. package/dist/chunk-JHZ3HLSR.mjs +1 -0
  77. package/dist/chunk-JY5EFI4D.js +1 -0
  78. package/dist/chunk-JZESIPVC.mjs +3 -0
  79. package/dist/chunk-K7GVLZS6.mjs +1 -0
  80. package/dist/chunk-KESNGXGO.js +1 -0
  81. package/dist/chunk-KQTB5Y7P.mjs +1 -0
  82. package/dist/chunk-L2U3TTAD.js +9 -0
  83. package/dist/chunk-LBKMYD3M.mjs +1 -0
  84. package/dist/chunk-LCICADWM.js +2 -0
  85. package/dist/chunk-LE67NTCN.mjs +1 -0
  86. package/dist/chunk-LTHT4A4S.js +1 -0
  87. package/dist/chunk-MCFHOMA2.js +2 -0
  88. package/dist/chunk-MCX4GVRX.mjs +1 -0
  89. package/dist/chunk-MJ5FQX7Q.js +1 -0
  90. package/dist/chunk-MJ6XZFVD.mjs +1 -0
  91. package/dist/chunk-MNOHUTKE.js +15 -0
  92. package/dist/chunk-MOKKS75W.mjs +3 -0
  93. package/dist/chunk-MP4QSEO2.mjs +1 -0
  94. package/dist/chunk-MVZOTKNL.mjs +1 -0
  95. package/dist/chunk-MZ7LW5CH.js +1 -0
  96. package/dist/chunk-MZOVDLYL.js +1 -0
  97. package/dist/chunk-N3Y5BUKV.js +1 -0
  98. package/dist/chunk-NBLJPT54.mjs +1 -0
  99. package/dist/chunk-NDDJ67FQ.mjs +1 -0
  100. package/dist/chunk-NMUHXIF5.js +1 -0
  101. package/dist/chunk-NXLJVVVE.js +1 -0
  102. package/dist/chunk-OBMN4VSM.mjs +1 -0
  103. package/dist/chunk-OCAX2KJQ.js +4 -0
  104. package/dist/chunk-OEXVWIHW.mjs +2 -0
  105. package/dist/chunk-OZMNIX6U.mjs +1 -0
  106. package/dist/chunk-PRRM64JO.mjs +1 -0
  107. package/dist/chunk-PXE2OWEA.mjs +1 -0
  108. package/dist/chunk-Q4CKLXWA.js +1 -0
  109. package/dist/chunk-Q5QOBZWT.mjs +1 -0
  110. package/dist/chunk-QJJQ53V6.mjs +1 -0
  111. package/dist/chunk-QLPQVR5W.mjs +1 -0
  112. package/dist/chunk-QLX4HX3I.mjs +59 -0
  113. package/dist/chunk-QPFJJPIC.mjs +1 -0
  114. package/dist/chunk-QYUPLKLP.mjs +1 -0
  115. package/dist/chunk-RFC2SXZ6.mjs +4 -0
  116. package/dist/chunk-RNOXNNSD.mjs +0 -0
  117. package/dist/chunk-RPIQG46O.mjs +1 -0
  118. package/dist/chunk-RQN4C636.js +1 -0
  119. package/dist/chunk-SHJBS42Y.js +1 -0
  120. package/dist/chunk-SORYYVJ7.js +1 -0
  121. package/dist/chunk-SWC6T7YQ.js +1 -0
  122. package/dist/chunk-TE2AF7FM.js +1 -0
  123. package/dist/chunk-TE2VQJZG.js +1 -0
  124. package/dist/chunk-TUIEV7Q7.js +1 -0
  125. package/dist/chunk-U4UCHBZ7.js +1 -0
  126. package/dist/chunk-U74VPTIU.js +1 -0
  127. package/dist/chunk-UCJGOQ4J.mjs +1 -0
  128. package/dist/chunk-UQ6WNWXX.js +1 -0
  129. package/dist/chunk-VHUVPHPI.mjs +1 -0
  130. package/dist/chunk-VQWZHPWI.mjs +1 -0
  131. package/dist/chunk-VW22RZ6C.mjs +1 -0
  132. package/dist/chunk-WLHNIXWC.mjs +2 -0
  133. package/dist/chunk-WLKRUBY4.js +1 -0
  134. package/dist/chunk-WTFLNYAT.mjs +1 -0
  135. package/dist/chunk-XNDGWWDT.js +1 -0
  136. package/dist/chunk-XXU7YQVV.js +1 -0
  137. package/dist/chunk-Y74ANBPV.js +1 -0
  138. package/dist/chunk-YMZ3F2FZ.mjs +1 -0
  139. package/dist/chunk-YTDWMXNS.js +1 -0
  140. package/dist/chunk-YUZQTRI2.js +1 -0
  141. package/dist/chunk-ZX26QZJ5.mjs +1 -0
  142. package/dist/chunk-ZY7EMTZ3.mjs +1 -0
  143. package/dist/colorResolver-BZ_yScf4.d.ts +390 -0
  144. package/dist/colorResolver-C6DtsoFI.d.mts +390 -0
  145. package/dist/colors-C3vA7HUU.d.mts +70 -0
  146. package/dist/colors-C3vA7HUU.d.ts +70 -0
  147. package/dist/content-5Mrz6w_b.d.mts +1360 -0
  148. package/dist/content-CmqAwdFL.d.ts +1360 -0
  149. package/dist/core-plugins.d.mts +63 -0
  150. package/dist/core-plugins.d.ts +63 -0
  151. package/dist/core-plugins.js +1 -0
  152. package/dist/core-plugins.mjs +1 -0
  153. package/dist/core.d.mts +398 -0
  154. package/dist/core.d.ts +398 -0
  155. package/dist/core.js +1 -0
  156. package/dist/core.mjs +1 -0
  157. package/dist/documentSerializer-BRaaXIHm.d.ts +36 -0
  158. package/dist/documentSerializer-DgO3A9av.d.mts +36 -0
  159. package/dist/docx/index.d.mts +1123 -0
  160. package/dist/docx/index.d.ts +1123 -0
  161. package/dist/docx/index.js +1 -0
  162. package/dist/docx/index.mjs +1 -0
  163. package/dist/docx/parser.d.mts +108 -0
  164. package/dist/docx/parser.d.ts +108 -0
  165. package/dist/docx/parser.js +1 -0
  166. package/dist/docx/parser.mjs +1 -0
  167. package/dist/docx/rezip.d.mts +312 -0
  168. package/dist/docx/rezip.d.ts +312 -0
  169. package/dist/docx/rezip.js +1 -0
  170. package/dist/docx/rezip.mjs +1 -0
  171. package/dist/docx/serializer/index.d.mts +125 -0
  172. package/dist/docx/serializer/index.d.ts +125 -0
  173. package/dist/docx/serializer/index.js +1 -0
  174. package/dist/docx/serializer/index.mjs +1 -0
  175. package/dist/docx/wrapTypes.d.mts +19 -0
  176. package/dist/docx/wrapTypes.d.ts +19 -0
  177. package/dist/docx/wrapTypes.js +1 -0
  178. package/dist/docx/wrapTypes.mjs +1 -0
  179. package/dist/docxInput-DTbCa48g.d.mts +21 -0
  180. package/dist/docxInput-DTbCa48g.d.ts +21 -0
  181. package/dist/executor-DZAMMQ35.js +1 -0
  182. package/dist/executor-ZCJRLT3Z.mjs +1 -0
  183. package/dist/findParagraphByParaId-Maw_8M5D.d.mts +28 -0
  184. package/dist/findParagraphByParaId-Maw_8M5D.d.ts +28 -0
  185. package/dist/fontLoader-8b4X-AIh.d.mts +283 -0
  186. package/dist/fontLoader-CK2QLq68.d.ts +283 -0
  187. package/dist/footnotes-lCH_P3N3.d.mts +78 -0
  188. package/dist/footnotes-skVvEHvZ.d.ts +78 -0
  189. package/dist/formatting-BH4hcZiq.d.mts +410 -0
  190. package/dist/formatting-_OXU8gLB.d.ts +410 -0
  191. package/dist/headerFooterLayout-72Vz7yp3.d.mts +292 -0
  192. package/dist/headerFooterLayout-Ca4ESDHF.d.ts +292 -0
  193. package/dist/headless.d.mts +109 -0
  194. package/dist/headless.d.ts +109 -0
  195. package/dist/headless.js +1 -0
  196. package/dist/headless.mjs +1 -0
  197. package/dist/layout-bridge/clickToPositionDom.d.mts +56 -0
  198. package/dist/layout-bridge/clickToPositionDom.d.ts +56 -0
  199. package/dist/layout-bridge/clickToPositionDom.js +1 -0
  200. package/dist/layout-bridge/clickToPositionDom.mjs +1 -0
  201. package/dist/layout-bridge/index.d.mts +462 -0
  202. package/dist/layout-bridge/index.d.ts +462 -0
  203. package/dist/layout-bridge/index.js +1 -0
  204. package/dist/layout-bridge/index.mjs +1 -0
  205. package/dist/layout-bridge/measuring/index.d.mts +377 -0
  206. package/dist/layout-bridge/measuring/index.d.ts +377 -0
  207. package/dist/layout-bridge/measuring/index.js +1 -0
  208. package/dist/layout-bridge/measuring/index.mjs +1 -0
  209. package/dist/layout-bridge/tableInsertHover.d.mts +45 -0
  210. package/dist/layout-bridge/tableInsertHover.d.ts +45 -0
  211. package/dist/layout-bridge/tableInsertHover.js +1 -0
  212. package/dist/layout-bridge/tableInsertHover.mjs +1 -0
  213. package/dist/layout-bridge/toFlowBlocks.d.mts +130 -0
  214. package/dist/layout-bridge/toFlowBlocks.d.ts +130 -0
  215. package/dist/layout-bridge/toFlowBlocks.js +1 -0
  216. package/dist/layout-bridge/toFlowBlocks.mjs +1 -0
  217. package/dist/layout-engine/index.d.mts +352 -0
  218. package/dist/layout-engine/index.d.ts +352 -0
  219. package/dist/layout-engine/index.js +1 -0
  220. package/dist/layout-engine/index.mjs +1 -0
  221. package/dist/layout-engine/types.d.mts +943 -0
  222. package/dist/layout-engine/types.d.ts +943 -0
  223. package/dist/layout-engine/types.js +1 -0
  224. package/dist/layout-engine/types.mjs +1 -0
  225. package/dist/layout-painter/index.d.mts +22 -0
  226. package/dist/layout-painter/index.d.ts +22 -0
  227. package/dist/layout-painter/index.js +1 -0
  228. package/dist/layout-painter/index.mjs +1 -0
  229. package/dist/layout-painter/renderPage.d.mts +680 -0
  230. package/dist/layout-painter/renderPage.d.ts +680 -0
  231. package/dist/layout-painter/renderPage.js +1 -0
  232. package/dist/layout-painter/renderPage.mjs +1 -0
  233. package/dist/managers/AutoSaveManager.d.mts +95 -0
  234. package/dist/managers/AutoSaveManager.d.ts +95 -0
  235. package/dist/managers/AutoSaveManager.js +1 -0
  236. package/dist/managers/AutoSaveManager.mjs +1 -0
  237. package/dist/managers/TableSelectionManager.d.mts +94 -0
  238. package/dist/managers/TableSelectionManager.d.ts +94 -0
  239. package/dist/managers/TableSelectionManager.js +1 -0
  240. package/dist/managers/TableSelectionManager.mjs +1 -0
  241. package/dist/managers/types.d.mts +121 -0
  242. package/dist/managers/types.d.ts +121 -0
  243. package/dist/managers/types.js +1 -0
  244. package/dist/managers/types.mjs +0 -0
  245. package/dist/marks-BY573yZn.d.mts +56 -0
  246. package/dist/marks-CjC9tF5k.d.ts +56 -0
  247. package/dist/mcp-cli.mjs +138 -0
  248. package/dist/mcp.d.mts +183 -0
  249. package/dist/mcp.d.ts +183 -0
  250. package/dist/mcp.js +16 -0
  251. package/dist/mcp.mjs +16 -0
  252. package/dist/nodes-7753Bgi_.d.mts +320 -0
  253. package/dist/nodes-CC_nwkT_.d.ts +320 -0
  254. package/dist/plugin-api/RenderedDomContext.d.mts +74 -0
  255. package/dist/plugin-api/RenderedDomContext.d.ts +74 -0
  256. package/dist/plugin-api/RenderedDomContext.js +1 -0
  257. package/dist/plugin-api/RenderedDomContext.mjs +1 -0
  258. package/dist/plugin-api/index.d.mts +15 -0
  259. package/dist/plugin-api/index.d.ts +15 -0
  260. package/dist/plugin-api/index.js +1 -0
  261. package/dist/plugin-api/index.mjs +0 -0
  262. package/dist/plugin-api/resolveItemPositions.d.mts +54 -0
  263. package/dist/plugin-api/resolveItemPositions.d.ts +54 -0
  264. package/dist/plugin-api/resolveItemPositions.js +1 -0
  265. package/dist/plugin-api/resolveItemPositions.mjs +1 -0
  266. package/dist/plugin-api/types.d.mts +190 -0
  267. package/dist/plugin-api/types.d.ts +190 -0
  268. package/dist/plugin-api/types.js +1 -0
  269. package/dist/plugin-api/types.mjs +0 -0
  270. package/dist/processTemplate-GPFDLQMX.mjs +1 -0
  271. package/dist/processTemplate-HH2E3HBO.js +1 -0
  272. package/dist/prosemirror/commands/formatting.d.mts +100 -0
  273. package/dist/prosemirror/commands/formatting.d.ts +100 -0
  274. package/dist/prosemirror/commands/formatting.js +1 -0
  275. package/dist/prosemirror/commands/formatting.mjs +1 -0
  276. package/dist/prosemirror/commands/index.d.mts +188 -0
  277. package/dist/prosemirror/commands/index.d.ts +188 -0
  278. package/dist/prosemirror/commands/index.js +1 -0
  279. package/dist/prosemirror/commands/index.mjs +1 -0
  280. package/dist/prosemirror/commands/pageBreak.d.mts +20 -0
  281. package/dist/prosemirror/commands/pageBreak.d.ts +20 -0
  282. package/dist/prosemirror/commands/pageBreak.js +1 -0
  283. package/dist/prosemirror/commands/pageBreak.mjs +1 -0
  284. package/dist/prosemirror/commands/paragraph.d.mts +70 -0
  285. package/dist/prosemirror/commands/paragraph.d.ts +70 -0
  286. package/dist/prosemirror/commands/paragraph.js +1 -0
  287. package/dist/prosemirror/commands/paragraph.mjs +1 -0
  288. package/dist/prosemirror/conversion/fromProseDoc.d.mts +65 -0
  289. package/dist/prosemirror/conversion/fromProseDoc.d.ts +65 -0
  290. package/dist/prosemirror/conversion/fromProseDoc.js +1 -0
  291. package/dist/prosemirror/conversion/fromProseDoc.mjs +1 -0
  292. package/dist/prosemirror/conversion/index.d.mts +85 -0
  293. package/dist/prosemirror/conversion/index.d.ts +85 -0
  294. package/dist/prosemirror/conversion/index.js +1 -0
  295. package/dist/prosemirror/conversion/index.mjs +1 -0
  296. package/dist/prosemirror/editor.css +823 -0
  297. package/dist/prosemirror/extensions/index.d.mts +79 -0
  298. package/dist/prosemirror/extensions/index.d.ts +79 -0
  299. package/dist/prosemirror/extensions/index.js +1 -0
  300. package/dist/prosemirror/extensions/index.mjs +1 -0
  301. package/dist/prosemirror/extensions/nodes/TableExtension.d.mts +30 -0
  302. package/dist/prosemirror/extensions/nodes/TableExtension.d.ts +30 -0
  303. package/dist/prosemirror/extensions/nodes/TableExtension.js +1 -0
  304. package/dist/prosemirror/extensions/nodes/TableExtension.mjs +1 -0
  305. package/dist/prosemirror/index.d.mts +70 -0
  306. package/dist/prosemirror/index.d.ts +70 -0
  307. package/dist/prosemirror/index.js +1 -0
  308. package/dist/prosemirror/index.mjs +1 -0
  309. package/dist/prosemirror/plugins/index.d.mts +154 -0
  310. package/dist/prosemirror/plugins/index.d.ts +154 -0
  311. package/dist/prosemirror/plugins/index.js +1 -0
  312. package/dist/prosemirror/plugins/index.mjs +1 -0
  313. package/dist/prosemirror/plugins/selectionTracker.d.mts +78 -0
  314. package/dist/prosemirror/plugins/selectionTracker.d.ts +78 -0
  315. package/dist/prosemirror/plugins/selectionTracker.js +1 -0
  316. package/dist/prosemirror/plugins/selectionTracker.mjs +1 -0
  317. package/dist/prosemirror/schema/index.d.mts +29 -0
  318. package/dist/prosemirror/schema/index.d.ts +29 -0
  319. package/dist/prosemirror/schema/index.js +1 -0
  320. package/dist/prosemirror/schema/index.mjs +1 -0
  321. package/dist/prosemirror/styles/index.d.mts +124 -0
  322. package/dist/prosemirror/styles/index.d.ts +124 -0
  323. package/dist/prosemirror/styles/index.js +1 -0
  324. package/dist/prosemirror/styles/index.mjs +1 -0
  325. package/dist/prosemirror/template/prosemirror-plugin.d.mts +66 -0
  326. package/dist/prosemirror/template/prosemirror-plugin.d.ts +66 -0
  327. package/dist/prosemirror/template/prosemirror-plugin.js +15 -0
  328. package/dist/prosemirror/template/prosemirror-plugin.mjs +15 -0
  329. package/dist/prosemirror/utils/ClickPositionResolver.d.mts +109 -0
  330. package/dist/prosemirror/utils/ClickPositionResolver.d.ts +109 -0
  331. package/dist/prosemirror/utils/ClickPositionResolver.js +1 -0
  332. package/dist/prosemirror/utils/ClickPositionResolver.mjs +1 -0
  333. package/dist/prosemirror/utils/LayoutSelectionGate.d.mts +81 -0
  334. package/dist/prosemirror/utils/LayoutSelectionGate.d.ts +81 -0
  335. package/dist/prosemirror/utils/LayoutSelectionGate.js +1 -0
  336. package/dist/prosemirror/utils/LayoutSelectionGate.mjs +1 -0
  337. package/dist/prosemirror/utils/PointerEventHandler.d.mts +94 -0
  338. package/dist/prosemirror/utils/PointerEventHandler.d.ts +94 -0
  339. package/dist/prosemirror/utils/PointerEventHandler.js +1 -0
  340. package/dist/prosemirror/utils/PointerEventHandler.mjs +1 -0
  341. package/dist/prosemirror/utils/extractTrackedChanges.d.mts +85 -0
  342. package/dist/prosemirror/utils/extractTrackedChanges.d.ts +85 -0
  343. package/dist/prosemirror/utils/extractTrackedChanges.js +1 -0
  344. package/dist/prosemirror/utils/extractTrackedChanges.mjs +1 -0
  345. package/dist/prosemirror/utils/visualLineNavigation.d.mts +45 -0
  346. package/dist/prosemirror/utils/visualLineNavigation.d.ts +45 -0
  347. package/dist/prosemirror/utils/visualLineNavigation.js +1 -0
  348. package/dist/prosemirror/utils/visualLineNavigation.mjs +1 -0
  349. package/dist/registry-Cpyybgij.d.mts +165 -0
  350. package/dist/registry-E5pahPKL.d.ts +165 -0
  351. package/dist/selectionContext-BPAqgNgk.d.ts +570 -0
  352. package/dist/selectionContext-CoZat7QZ.d.mts +570 -0
  353. package/dist/selectiveSave-CWaPEv0B.d.ts +31 -0
  354. package/dist/selectiveSave-jinP_4xa.d.mts +31 -0
  355. package/dist/selectiveXmlPatch-ypkxlTD_.d.mts +23 -0
  356. package/dist/selectiveXmlPatch-ypkxlTD_.d.ts +23 -0
  357. package/dist/styles-BBv7doYK.d.ts +233 -0
  358. package/dist/styles-EI2lxeEN.d.mts +233 -0
  359. package/dist/table-P8esKWAc.d.ts +82 -0
  360. package/dist/table-_t_W8oQf.d.mts +82 -0
  361. package/dist/types/agentApi.d.mts +467 -0
  362. package/dist/types/agentApi.d.ts +467 -0
  363. package/dist/types/agentApi.js +1 -0
  364. package/dist/types/agentApi.mjs +1 -0
  365. package/dist/types/content.d.mts +18 -0
  366. package/dist/types/content.d.ts +18 -0
  367. package/dist/types/content.js +1 -0
  368. package/dist/types/content.mjs +0 -0
  369. package/dist/types/document.d.mts +123 -0
  370. package/dist/types/document.d.ts +123 -0
  371. package/dist/types/document.js +1 -0
  372. package/dist/types/document.mjs +0 -0
  373. package/dist/types-DXG7vqe9.d.ts +311 -0
  374. package/dist/types-RchZmPFN.d.mts +137 -0
  375. package/dist/types-RchZmPFN.d.ts +137 -0
  376. package/dist/types-dYdjUZMo.d.mts +311 -0
  377. package/dist/utils/cardStyles.d.mts +31 -0
  378. package/dist/utils/cardStyles.d.ts +31 -0
  379. package/dist/utils/cardStyles.js +1 -0
  380. package/dist/utils/cardStyles.mjs +1 -0
  381. package/dist/utils/comments.d.mts +121 -0
  382. package/dist/utils/comments.d.ts +121 -0
  383. package/dist/utils/comments.js +1 -0
  384. package/dist/utils/comments.mjs +1 -0
  385. package/dist/utils/findReplace.d.mts +114 -0
  386. package/dist/utils/findReplace.d.ts +114 -0
  387. package/dist/utils/findReplace.js +2 -0
  388. package/dist/utils/findReplace.mjs +2 -0
  389. package/dist/utils/findVerticalScrollParent.d.mts +25 -0
  390. package/dist/utils/findVerticalScrollParent.d.ts +25 -0
  391. package/dist/utils/findVerticalScrollParent.js +1 -0
  392. package/dist/utils/findVerticalScrollParent.mjs +1 -0
  393. package/dist/utils/fontOptions.d.mts +21 -0
  394. package/dist/utils/fontOptions.d.ts +21 -0
  395. package/dist/utils/fontOptions.js +1 -0
  396. package/dist/utils/fontOptions.mjs +1 -0
  397. package/dist/utils/headingCollector.d.mts +32 -0
  398. package/dist/utils/headingCollector.d.ts +32 -0
  399. package/dist/utils/headingCollector.js +1 -0
  400. package/dist/utils/headingCollector.mjs +1 -0
  401. package/dist/utils/highlightColors.d.mts +14 -0
  402. package/dist/utils/highlightColors.d.ts +14 -0
  403. package/dist/utils/highlightColors.js +1 -0
  404. package/dist/utils/highlightColors.mjs +1 -0
  405. package/dist/utils/index.d.mts +710 -0
  406. package/dist/utils/index.d.ts +710 -0
  407. package/dist/utils/index.js +82 -0
  408. package/dist/utils/index.mjs +82 -0
  409. package/dist/utils/listState.d.mts +27 -0
  410. package/dist/utils/listState.d.ts +27 -0
  411. package/dist/utils/listState.js +1 -0
  412. package/dist/utils/listState.mjs +1 -0
  413. package/dist/utils/reportIssue.d.mts +23 -0
  414. package/dist/utils/reportIssue.d.ts +23 -0
  415. package/dist/utils/reportIssue.js +2 -0
  416. package/dist/utils/reportIssue.mjs +2 -0
  417. package/dist/utils/sidebarConstants.d.mts +10 -0
  418. package/dist/utils/sidebarConstants.d.ts +10 -0
  419. package/dist/utils/sidebarConstants.js +1 -0
  420. package/dist/utils/sidebarConstants.mjs +1 -0
  421. package/dist/utils/textSelection.d.mts +92 -0
  422. package/dist/utils/textSelection.d.ts +92 -0
  423. package/dist/utils/textSelection.js +1 -0
  424. package/dist/utils/textSelection.mjs +1 -0
  425. package/dist/utils/units.d.mts +91 -0
  426. package/dist/utils/units.d.ts +91 -0
  427. package/dist/utils/units.js +1 -0
  428. package/dist/utils/units.mjs +1 -0
  429. package/dist/variableDetector-DF3-nxUC.d.mts +115 -0
  430. package/dist/variableDetector-sBkgVh3f.d.ts +115 -0
  431. package/package.json +565 -0
@@ -0,0 +1,138 @@
1
+ #!/usr/bin/env node
2
+ import qt from'pizzip';import Jt from'docxtemplater';import Ko from'jszip';import {xml2js,js2xml}from'xml-js';var Ot=Object.defineProperty;var oi=(e,t,n)=>t in e?Ot(e,t,{enumerable:true,configurable:true,writable:true,value:n}):e[t]=n;var le=(e,t)=>()=>(e&&(t=e(e=0)),t);var ii=(e,t)=>{for(var n in t)Ot(e,n,{get:t[n],enumerable:true});};var Ie=(e,t,n)=>oi(e,typeof t!="symbol"?t+"":t,n);var at,ce,Ne=le(()=>{at=class{constructor(){Ie(this,"plugins",new Map);Ie(this,"commandHandlers",new Map);Ie(this,"eventListeners",new Set);Ie(this,"initialized",new Set);}register(t,n){let r=[];if(!t.id)return {success:false,error:"Plugin must have an id"};if(this.plugins.has(t.id))return {success:false,error:`Plugin '${t.id}' is already registered`};if(t.dependencies){for(let o of t.dependencies)if(!this.plugins.has(o))return {success:false,error:`Plugin '${t.id}' requires '${o}' which is not registered`}}if(t.commandHandlers)for(let[o,i]of Object.entries(t.commandHandlers)){if(this.commandHandlers.has(o)){let s=this.commandHandlers.get(o);r.push(`Command '${o}' from '${t.id}' overrides handler from '${s.pluginId}'`);}this.commandHandlers.set(o,{pluginId:t.id,handler:i});}if(this.plugins.set(t.id,t),t.initialize&&!this.initialized.has(t.id))try{let o=t.initialize();o instanceof Promise?o.then(()=>{this.initialized.add(t.id);}).catch(i=>{this.emit({type:"error",pluginId:t.id,error:i});}):this.initialized.add(t.id);}catch(o){this.emit({type:"error",pluginId:t.id,error:o});}return n?.debug&&console.log(`[PluginRegistry] Registered plugin: ${t.id}`),this.emit({type:"registered",plugin:t}),{success:true,plugin:t,warnings:r.length>0?r:void 0}}unregister(t){let n=this.plugins.get(t);if(!n)return false;for(let[r,o]of this.plugins)if(o.dependencies?.includes(t))return console.warn(`Cannot unregister '${t}': '${r}' depends on it`),false;for(let[r,{pluginId:o}]of this.commandHandlers)o===t&&this.commandHandlers.delete(r);if(n.destroy)try{let r=n.destroy();r instanceof Promise&&r.catch(o=>{this.emit({type:"error",pluginId:t,error:o});});}catch(r){this.emit({type:"error",pluginId:t,error:r});}return this.plugins.delete(t),this.initialized.delete(t),this.emit({type:"unregistered",pluginId:t}),true}get(t){return this.plugins.get(t)}getAll(){return Array.from(this.plugins.values())}has(t){return this.plugins.has(t)}get size(){return this.plugins.size}getCommandHandler(t){return this.commandHandlers.get(t)?.handler}getCommandTypes(){return Array.from(this.commandHandlers.keys())}hasCommandHandler(t){return this.commandHandlers.has(t)}getMcpTools(){let t=[];for(let n of this.plugins.values())n.mcpTools&&t.push(...n.mcpTools);return t}getMcpToolsForPlugin(t){return this.plugins.get(t)?.mcpTools||[]}getMcpTool(t){for(let n of this.plugins.values())if(n.mcpTools){let r=n.mcpTools.find(o=>o.name===t);if(r)return r}}addEventListener(t){this.eventListeners.add(t);}removeEventListener(t){this.eventListeners.delete(t);}emit(t){for(let n of this.eventListeners)try{n(t);}catch(r){console.error("[PluginRegistry] Event listener error:",r);}}clear(){for(let t of this.plugins.values())if(t.destroy)try{t.destroy();}catch{}this.plugins.clear(),this.commandHandlers.clear(),this.initialized.clear();}getDebugInfo(){return {plugins:Array.from(this.plugins.keys()),commandTypes:Array.from(this.commandHandlers.keys()),mcpTools:this.getMcpTools().map(t=>t.name),initialized:Array.from(this.initialized)}}},ce=new at;});function vt(e){return Math.round(e/96*914400)}var Rn=le(()=>{});function U(e){return JSON.parse(JSON.stringify(e))}function z(e,t){let n=0;for(let r=0;r<e.content.length;r++)if(e.content[r].type==="paragraph"){if(n===t)return r;n++;}return -1}function ue(e){let t="";for(let n of e.content)if(n.type==="run")for(let r of n.content)r.type==="text"&&(t+=r.text);else if(n.type==="hyperlink"){for(let r of n.children)if(r.type==="run")for(let o of r.content)o.type==="text"&&(t+=o.text);}return t}function Ae(e,t){return {type:"run",formatting:t,content:[{type:"text",text:e}]}}function Fe(e,t,n,r){let o=[],i=0,s=false;for(let a of e.content)if(a.type==="run"){let c=a.content.filter(d=>d.type==="text").map(d=>d.text).join(""),u=i,f=i+c.length;if(!s&&t>=u&&t<=f){let d=t-u;d>0&&o.push({...a,content:[{type:"text",text:c.slice(0,d)}]}),o.push(Ae(n,r||a.formatting)),d<c.length&&o.push({...a,content:[{type:"text",text:c.slice(d)}]}),s=true;}else o.push(a);i=f;}else o.push(a);return s||o.push(Ae(n,r)),o}function ee(e,t,n){let r=[],o=0;for(let i of e.content)if(i.type==="run"){let s=i.content.filter(u=>u.type==="text").map(u=>u.text).join(""),a=o,c=o+s.length;if(c<=t||a>=n)r.push(i);else {let u="";a<t&&(u+=s.slice(0,t-a)),c>n&&(u+=s.slice(n-a)),u.length>0&&r.push({...i,content:[{type:"text",text:u}]});}o=c;}else r.push(i);return r}function Et(e,t,n,r){let o=[],i=0;for(let s of e.content)if(s.type==="run"){let a=s.content.filter(f=>f.type==="text").map(f=>f.text).join(""),c=i,u=i+a.length;if(u<=t||c>=n)o.push(s);else if(c>=t&&u<=n)o.push({...s,formatting:{...s.formatting,...r}});else {let f=Math.max(t,c),d=Math.min(n,u);c<f&&o.push({...s,content:[{type:"text",text:a.slice(0,f-c)}]}),o.push({...s,formatting:{...s.formatting,...r},content:[{type:"text",text:a.slice(f-c,d-c)}]}),u>d&&o.push({...s,content:[{type:"text",text:a.slice(d-c)}]});}i=u;}else o.push(s);return o}var De=le(()=>{});function Dr(e,t){let n=U(e),r=n.package.document,o=z(r,t.position.paragraphIndex);if(o===-1)throw new Error(`Paragraph index ${t.position.paragraphIndex} not found`);let i=r.content[o];return i.content=Fe(i,t.position.offset,t.text,t.formatting),n}function Br(e,t){let n=U(e),r=n.package.document,{start:o,end:i}=t.range;if(o.paragraphIndex===i.paragraphIndex){let s=z(r,o.paragraphIndex);if(s===-1)throw new Error(`Paragraph index ${o.paragraphIndex} not found`);let a=r.content[s];a.content=ee(a,o.offset,i.offset),a.content=Fe(a,o.offset,t.text,t.formatting);}else {let s=z(r,o.paragraphIndex),a=r.content[s],c=ue(a);a.content=ee(a,o.offset,c.length),a.content=Fe(a,o.offset,t.text,t.formatting);let u=[];for(let f=o.paragraphIndex+1;f<=i.paragraphIndex;f++)u.push(z(r,f));for(let f=u.length-1;f>=0;f--)u[f]!==-1&&r.content.splice(u[f],1);}return n}function Nr(e,t){let n=U(e),r=n.package.document,{start:o,end:i}=t.range;if(o.paragraphIndex===i.paragraphIndex){let s=z(r,o.paragraphIndex);if(s===-1)throw new Error(`Paragraph index ${o.paragraphIndex} not found`);let a=r.content[s];a.content=ee(a,o.offset,i.offset);}else {let s=z(r,o.paragraphIndex),a=r.content[s],c=ue(a);a.content=ee(a,o.offset,c.length);let u=z(r,i.paragraphIndex),f=r.content[u];f.content=ee(f,0,i.offset),a.content.push(...f.content);let d=[];for(let h=o.paragraphIndex+1;h<=i.paragraphIndex;h++)d.push(z(r,h));for(let h=d.length-1;h>=0;h--)d[h]!==-1&&r.content.splice(d[h],1);}return n}function Xr(e,t){let n=U(e),r=n.package.document,{start:o,end:i}=t.range;if(o.paragraphIndex===i.paragraphIndex){let s=z(r,o.paragraphIndex);if(s===-1)throw new Error(`Paragraph index ${o.paragraphIndex} not found`);let a=r.content[s];a.content=Et(a,o.offset,i.offset,t.formatting);}else for(let s=o.paragraphIndex;s<=i.paragraphIndex;s++){let a=z(r,s);if(a===-1)continue;let c=r.content[a],u=ue(c),f=0,d=u.length;s===o.paragraphIndex&&(f=o.offset),s===i.paragraphIndex&&(d=i.offset),c.content=Et(c,f,d,t.formatting);}return n}function Lr(e,t){let n=U(e),r=n.package.document,o=z(r,t.paragraphIndex);if(o===-1)throw new Error(`Paragraph index ${t.paragraphIndex} not found`);let i=r.content[o];if(i.formatting={...i.formatting,...t.formatting},"numPr"in t.formatting){let s=t.formatting.numPr;if(s&&s.numId!==void 0&&s.numId!==0){let a=s.ilvl??0,c=s.numId===1,u=c?"\u2022":"1.";if(n.package.numbering){let f=n.package.numbering.nums.find(d=>d.numId===s.numId);if(f){let d=n.package.numbering.abstractNums.find(h=>h.abstractNumId===f.abstractNumId);if(d){let h=d.levels.find(g=>g.ilvl===a);h&&(u=h.lvlText||u);}}}i.listRendering={level:a,numId:s.numId,marker:u,isBullet:c};}else delete i.listRendering;}return n}function Hr(e,t){let n=U(e),r=n.package.document,o=z(r,t.paragraphIndex);if(o===-1)throw new Error(`Paragraph index ${t.paragraphIndex} not found`);let i=r.content[o];return i.formatting={...i.formatting,styleId:t.styleId},n}var Or=le(()=>{De();});function zr(e,t){let n=U(e),r=n.package.document,o=[];for(let a=0;a<t.rows;a++){let c=[];for(let u=0;u<t.columns;u++){let f=t.data?.[a]?.[u]||"";c.push({type:"tableCell",content:[{type:"paragraph",content:f?[Ae(f)]:[]}]});}o.push({type:"tableRow",formatting:a===0&&t.hasHeader?{header:true}:void 0,cells:c});}let i={type:"table",rows:o},s=z(r,t.position.paragraphIndex);return s===-1?r.content.push(i):r.content.splice(s+1,0,i),n}function jr(e,t){let n=U(e),r=n.package.document,o=z(r,t.position.paragraphIndex);if(o===-1)throw new Error(`Paragraph index ${t.position.paragraphIndex} not found`);let i=r.content[o],a={type:"run",content:[{type:"drawing",image:{type:"image",rId:`rId_img_${Date.now()}`,src:t.src,alt:t.alt,size:{width:vt(t.width||100),height:vt(t.height||100)},wrap:{type:"inline"}}}]},c=Fe(i,t.position.offset,"",void 0),u=false,f=0;for(let d=0;d<c.length;d++){let h=c[d];if(h.type==="run"){let g=h.content.filter(m=>m.type==="text").map(m=>m.text).join("");if(f+=g.length,!u&&f>=t.position.offset){c.splice(d+1,0,a),u=true;break}}}return u||c.push(a),i.content=c,n}function _r(e,t){let n=U(e),r=n.package.document,{start:o,end:i}=t.range;if(o.paragraphIndex!==i.paragraphIndex)throw new Error("Hyperlinks cannot span multiple paragraphs");let s=z(r,o.paragraphIndex);if(s===-1)throw new Error(`Paragraph index ${o.paragraphIndex} not found`);let a=r.content[s],c=ue(a),u=t.displayText||c.slice(o.offset,i.offset);a.content=ee(a,o.offset,i.offset);let f={type:"hyperlink",href:t.url,tooltip:t.tooltip,children:[Ae(u)]},d=false,h=0,g=[];for(let m of a.content)if(m.type==="run"){let y=m.content.filter(I=>I.type==="text").map(I=>I.text).join(""),T=h+y.length;if(!d&&h<=o.offset&&o.offset<=T){let I=o.offset-h;I>0&&g.push({...m,content:[{type:"text",text:y.slice(0,I)}]}),g.push(f),I<y.length&&g.push({...m,content:[{type:"text",text:y.slice(I)}]}),d=true;}else g.push(m);h=T;}else g.push(m);return d||g.push(f),a.content=g,n}function Vr(e,t){let n=U(e),r=n.package.document,{start:o}=t.range,i=z(r,o.paragraphIndex);if(i===-1)throw new Error(`Paragraph index ${o.paragraphIndex} not found`);let s=r.content[i],a=[];for(let c of s.content)if(c.type==="hyperlink")for(let u of c.children)u.type==="run"&&a.push(u);else a.push(c);return s.content=a,n}var Wr=le(()=>{Rn();De();});function Rt(e,t){let n=U(e),r=n.package.document,o=z(r,t.position.paragraphIndex);if(o===-1)throw new Error(`Paragraph index ${t.position.paragraphIndex} not found`);let i=r.content[o],s=ue(i),a=ee({...i,content:[...i.content]},t.position.offset,s.length),c=ee({...i,content:[...i.content]},0,t.position.offset);i.content=a;let u={type:"paragraph",formatting:i.formatting,content:c};return r.content.splice(o+1,0,u),n}function Ur(e,t){let n=U(e),r=n.package.document,o=z(r,t.paragraphIndex);if(o===-1)throw new Error(`Paragraph index ${t.paragraphIndex} not found`);let i=r.content[o],s=[];for(let a=1;a<=t.count;a++){let c=z(r,t.paragraphIndex+a);if(c!==-1){let u=r.content[c];i.content.push(...u.content),s.push(c);}}for(let a=s.length-1;a>=0;a--)r.content.splice(s[a],1);return n}function Gr(e,t){return Rt(e,{position:t.position})}var Zr=le(()=>{De();});function qr(e,t){let n=U(e);return n.templateVariables||(n.templateVariables=[]),n.templateVariables.includes(t.name)||n.templateVariables.push(t.name),n}function Jr(e,t){let n=U(e),r=n.package.document;function o(a){for(let c of a.content)if(c.type==="text")for(let[u,f]of Object.entries(t.values)){let d=new RegExp(`\\{${u}\\}`,"g");c.text=c.text.replace(d,f);}}function i(a){for(let c of a.content)if(c.type==="run")o(c);else if(c.type==="hyperlink")for(let u of c.children)u.type==="run"&&o(u);}function s(a){if(a.type==="paragraph")i(a);else if(a.type==="table")for(let c of a.rows)for(let u of c.cells)for(let f of u.content)s(f);}for(let a of r.content)s(a);return n}var Yr=le(()=>{De();});var Kr={};ii(Kr,{executeCommand:()=>pe,executeCommands:()=>da});function pe(e,t){let n=ce.getCommandHandler(t.type);if(n)return n(e,t);switch(t.type){case "insertText":return Dr(e,t);case "replaceText":return Br(e,t);case "deleteText":return Nr(e,t);case "formatText":return Xr(e,t);case "formatParagraph":return Lr(e,t);case "applyStyle":return Hr(e,t);case "insertTable":return zr(e,t);case "insertImage":return jr(e,t);case "insertHyperlink":return _r(e,t);case "removeHyperlink":return Vr(e,t);case "insertParagraphBreak":return Rt(e,t);case "mergeParagraphs":return Ur(e,t);case "splitParagraph":return Gr(e,t);case "setVariable":return qr(e,t);case "applyVariables":return Jr(e,t);default:{let r=t;throw new Error(`Unknown command type: ${r.type}`)}}}function da(e,t){return t.reduce((n,r)=>pe(n,r),e)}var Mt=le(()=>{Ne();Or();Wr();Zr();Yr();});Ne();function zt(e,t){let n=t,{position:r,variableName:o}=n,i=JSON.parse(JSON.stringify(e)),a=i.package.document.content.filter(f=>f.type==="paragraph");if(r.paragraphIndex>=a.length)throw new Error(`Paragraph index ${r.paragraphIndex} out of bounds`);let c=a[r.paragraphIndex],u=`{${o}}`;return _t(c,r.offset,u),i.templateVariables||(i.templateVariables=[]),i.templateVariables.includes(o)||i.templateVariables.push(o),i}function jt(e,t){let n=t,{range:r,variableName:o}=n,i=JSON.parse(JSON.stringify(e)),a=i.package.document.content.filter(f=>f.type==="paragraph");if(r.start.paragraphIndex!==r.end.paragraphIndex)throw new Error("Template variable replacement cannot span multiple paragraphs");if(r.start.paragraphIndex>=a.length)throw new Error(`Paragraph index ${r.start.paragraphIndex} out of bounds`);let c=a[r.start.paragraphIndex];si(c,r.start.offset,r.end.offset);let u=`{${o}}`;return _t(c,r.start.offset,u),i.templateVariables||(i.templateVariables=[]),i.templateVariables.includes(o)||i.templateVariables.push(o),i}function _t(e,t,n){let r=0,o=false;for(let i=0;i<e.content.length;i++){let s=e.content[i];if(s.type==="run"){let a=lt(s),c=r,u=r+a.length;if(!o&&t>=c&&t<=u){let f=t-c,d=a.slice(0,f),h=a.slice(f),g=[];for(let m=0;m<i;m++)g.push(e.content[m]);d&&g.push({type:"run",formatting:s.formatting,content:[{type:"text",text:d}]}),g.push({type:"run",formatting:s.formatting,content:[{type:"text",text:n}]}),h&&g.push({type:"run",formatting:s.formatting,content:[{type:"text",text:h}]});for(let m=i+1;m<e.content.length;m++)g.push(e.content[m]);e.content=g,o=true;break}r=u;}else if(s.type==="hyperlink")for(let a of s.children)a.type==="run"&&(r+=lt(a).length);}o||e.content.push({type:"run",content:[{type:"text",text:n}]});}function si(e,t,n){let r=[],o=0;for(let i of e.content)if(i.type==="run"){let s=lt(i),a=o,c=o+s.length;if(c<=t||a>=n)r.push(i);else {let u="";a<t&&(u+=s.slice(0,t-a)),c>n&&(u+=s.slice(n-a)),u.length>0&&r.push({type:"run",formatting:i.formatting,content:[{type:"text",text:u}]});}o=c;}else r.push(i);e.content=r;}function lt(e){return e.content.filter(t=>t.type==="text").map(t=>t.text).join("")}function Ut(e){let t=[],n={body:[],headers:[],footers:[],footnotes:[],endnotes:[],textBoxes:[]};if(e.package?.document){let o=ai(e.package.document);o.forEach(i=>{t.push({name:i,location:"body"});}),n.body=Array.from(new Set(o)).sort();}if(e.package?.document?.sections&&e.package.document.sections.forEach((o,i)=>{o.properties.headerReferences&&o.properties.headerReferences.forEach(s=>{});}),e.package?.footnotes){let o=Wt(e.package.footnotes);o.forEach(i=>{t.push({name:i,location:"footnote"});}),n.footnotes=Array.from(new Set(o)).sort();}if(e.package?.endnotes){let o=Wt(e.package.endnotes);o.forEach(i=>{t.push({name:i,location:"endnote"});}),n.endnotes=Array.from(new Set(o)).sort();}e.templateVariables&&e.templateVariables.forEach(o=>{t.some(i=>i.name===o)||t.push({name:o,location:"body"});});let r=new Set;return t.forEach(o=>r.add(o.name)),{variables:Array.from(r).sort(),totalOccurrences:t.length,byLocation:n,occurrences:t}}function ai(e){let t=[];if(e.content&&t.push(...Vt(e.content)),e.sections)for(let n of e.sections)n.content&&t.push(...Vt(n.content));return t}function Vt(e){let t=[];for(let n of e)n.type==="paragraph"?t.push(...ct(n)):n.type==="table"&&t.push(...Gt(n));return t}function ct(e){let t=[];if(!e.content)return t;for(let n of e.content)n.type==="run"?t.push(...ke(n)):n.type==="hyperlink"?t.push(...li(n)):n.type==="simpleField"?t.push(...ci(n)):n.type==="complexField"&&t.push(...ui(n));return t}function ke(e){let t=[];if(!e.content)return t;for(let n of e.content)n.type==="text"&&n.text&&t.push(...Zt(n.text));return t}function li(e){let t=[];if(!e.children)return t;for(let n of e.children)n.type==="run"&&t.push(...ke(n));return t}function ci(e){let t=[];if(e.instruction&&t.push(...Zt(e.instruction)),e.content)for(let n of e.content)n.type==="run"&&t.push(...ke(n));return t}function ui(e){let t=[];if(e.fieldCode)for(let n of e.fieldCode)n.type==="run"&&t.push(...ke(n));if(e.fieldResult)for(let n of e.fieldResult)n.type==="run"&&t.push(...ke(n));return t}function Gt(e){let t=[];if(!e.rows)return t;for(let n of e.rows)if(n.cells)for(let r of n.cells)t.push(...pi(r));return t}function pi(e){let t=[];if(!e.content)return t;for(let n of e.content)n.type==="paragraph"?t.push(...ct(n)):n.type==="table"&&t.push(...Gt(n));return t}function Wt(e){let t=[];for(let n of e)if(n.content)for(let r of n.content)r.type==="paragraph"&&t.push(...ct(r));return t}var fi=/\{([a-zA-Z_][a-zA-Z0-9_\-\.]*)\}/g;function Zt(e){if(!e)return [];let t=[],n=new RegExp(fi),r;for(;(r=n.exec(e))!==null;)t.push(r[1]);return t}function Yt(e,t,n={}){let{nullGetter:r="keep",linebreaks:o=true,delimiters:i}=n,s=[],a=[],c=[];try{let u=new qt(e),f=new Jt(u,{paragraphLoop:!0,linebreaks:o,nullGetter:h=>{let g=h.value||"";if(r==="error")throw new Error(`Undefined variable: ${g}`);return r==="empty"?(c.push(g),""):(c.push(g),`{${g}}`)},delimiters:i?{start:i.start||"{",end:i.end||"}"}:void 0});return Object.keys(t).forEach(h=>{t[h]!==void 0&&t[h]!==null&&a.push(h);}),f.setData(t),f.render(),{buffer:f.getZip().generate({type:"arraybuffer",compression:"DEFLATE",compressionOptions:{level:6}}),replacedVariables:a,unreplacedVariables:c,warnings:s}}catch(u){throw Qt(u)}}function Kt(e){let t=[],n=[];try{let r=new qt(e),i=new Jt(r,{paragraphLoop:!0,linebreaks:!0}).getFullText();n=di(i);let s=mi(i);for(let a of s)t.push({message:`Unclosed tag: ${a}`,variable:a,type:"parse"});return {valid:t.length===0,errors:t,tags:n}}catch(r){return t.push(Qt(r)),{valid:false,errors:t,tags:n}}}function di(e){let t=[],n=/\{([^{}]+)\}/g,r;for(;(r=n.exec(e))!==null;){let o=r[1].trim();o&&!t.includes(o)&&t.push(o);}return t.sort()}function mi(e){let t=[],n=0,r="";for(let o of e)o==="{"?(n++,r=""):o==="}"?(n--,n<0&&(n=0)):n>0&&(r+=o);return n>0&&r.trim()&&t.push(r.trim()),t}function hi(e){return "properties"in e&&typeof e.properties=="object"}function Qt(e){if(e instanceof Error){if(hi(e)&&e.properties?.errors){let t=e.properties.errors[0];return {message:t?.message||"Template processing error",variable:t?.properties?.tag,type:"render",originalError:e}}if(e.message.includes("undefined")){let t=e.message.match(/undefined (?:variable|tag):\s*(\S+)/i);return {message:e.message,variable:t?t[1]:void 0,type:"undefined",originalError:e}}return e.message.includes("parse")||e.message.includes("unclosed")||e.message.includes("syntax")?{message:e.message,type:"parse",originalError:e}:{message:e.message,type:"unknown",originalError:e}}return {message:String(e),type:"unknown"}}async function en(e){let t=await Ko.loadAsync(e),n={documentXml:null,stylesXml:null,themeXml:null,numberingXml:null,fontTableXml:null,settingsXml:null,webSettingsXml:null,headers:new Map,footers:new Map,footnotesXml:null,endnotesXml:null,commentsXml:null,commentsExtensibleXml:null,commentsExtendedXml:null,documentRels:null,packageRels:null,contentTypesXml:null,corePropsXml:null,appPropsXml:null,customPropsXml:null,media:new Map,fonts:new Map,allXml:new Map,originalZip:t,originalBuffer:e};for(let[r,o]of Object.entries(t.files)){if(o.dir)continue;let i=r.toLowerCase();if(i.endsWith(".xml")||i.endsWith(".rels")){let s=await o.async("text");if(n.allXml.set(r,s),i==="word/document.xml")n.documentXml=s;else if(i==="word/styles.xml")n.stylesXml=s;else if(i==="word/theme/theme1.xml")n.themeXml=s;else if(i==="word/numbering.xml")n.numberingXml=s;else if(i==="word/fonttable.xml")n.fontTableXml=s;else if(i==="word/settings.xml")n.settingsXml=s;else if(i==="word/websettings.xml")n.webSettingsXml=s;else if(i==="word/footnotes.xml")n.footnotesXml=s;else if(i==="word/endnotes.xml")n.endnotesXml=s;else if(i==="word/comments.xml")n.commentsXml=s;else if(i==="word/commentsextensible.xml")n.commentsExtensibleXml=s;else if(i==="word/commentsextended.xml")n.commentsExtendedXml=s;else if(i==="word/_rels/document.xml.rels")n.documentRels=s;else if(i==="_rels/.rels")n.packageRels=s;else if(i==="[content_types].xml")n.contentTypesXml=s;else if(i==="docprops/core.xml")n.corePropsXml=s;else if(i==="docprops/app.xml")n.appPropsXml=s;else if(i==="docprops/custom.xml")n.customPropsXml=s;else if(i.match(/^word\/header\d+\.xml$/)){let a=r.split("/").pop()||r;n.headers.set(a,s);}else if(i.match(/^word\/footer\d+\.xml$/)){let a=r.split("/").pop()||r;n.footers.set(a,s);}}else if(i.startsWith("word/media/")){let s=await o.async("arraybuffer");n.media.set(r,s);}else if(i.startsWith("word/fonts/")){let s=await o.async("arraybuffer");n.fonts.set(r,s);}}return n}function tn(e){switch(e.toLowerCase().split(".").pop()){case "png":return "image/png";case "jpg":case "jpeg":return "image/jpeg";case "gif":return "image/gif";case "bmp":return "image/bmp";case "tif":case "tiff":return "image/tiff";case "wmf":return "image/x-wmf";case "emf":return "image/x-emf";case "svg":return "image/svg+xml";case "webp":return "image/webp";default:return "application/octet-stream"}}var yi=/&(?!(?:[A-Za-z][A-Za-z0-9]*|#[0-9]+|#x[0-9a-fA-F]+);)/g;function bi(e){return e.replace(yi,"&amp;")}function J(e){let t=bi(e);try{return xml2js(t,{compact:!1,ignoreComment:!0,ignoreInstruction:!0,ignoreDoctype:!0,alwaysArray:!1,trim:!1,captureSpacesBetweenElements:!0,attributesKey:"attributes",textKey:"text"})}catch(n){if(!(n instanceof Error))throw n;let r=n.message.match(/Column:\s*(\d+)/);if(r){let o=parseInt(r[1],10),i=Math.max(0,o-30),s=JSON.stringify(t.slice(i,o+30)),a=new Error(`${n.message}
3
+ Near: ${s}`);throw a.stack=n.stack,a}throw n}}function nn(e){return js2xml({elements:[e]},{compact:false,spaces:0})}function K(e){try{let t=J(e);return t.elements&&t.elements.length>0?t.elements.find(n=>n.type==="element")??null:t}catch(t){return console.warn("Failed to parse XML:",t),null}}function Q(e){let t=e.indexOf(":");return t>=0?e.substring(t+1):e}function Ti(e,t,n){if(!e.name)return false;let r=`${t}:${n}`;return e.name===r||Q(e.name)===n}function p(e,t,n){if(!e||!e.elements)return null;let r=`${t}:${n}`;for(let o of e.elements)if(o.type==="element"&&(o.name===r||Q(o.name||"")===n))return o;return null}function L(e,t,n){if(!e||!e.elements)return [];let r=`${t}:${n}`,o=[];for(let i of e.elements)i.type==="element"&&(i.name===r||Q(i.name||"")===n)&&o.push(i);return o}function N(e,t){if(!e||!e.elements)return null;for(let n of e.elements)if(n.type==="element"&&n.name===t)return n;return null}function B(e){return !e||!e.elements?[]:e.elements.filter(t=>t.type==="element")}function l(e,t,n){if(!e||!e.attributes)return null;let r=e.attributes;if(t){let o=`${t}:${n}`;if(o in r)return r[o]}return n in r?r[n]:null}function ne(e){if(!e)return "";if("text"in e&&typeof e.text=="string")return e.text;if(!e.elements)return "";let t="";for(let n of e.elements)n.type==="text"&&"text"in n?t+=n.text??"":n.type==="element"&&(t+=ne(n));return t}function w(e,t,n,r=1){let o=l(e,t,n);if(o===null)return;let i=parseInt(o,10);if(!isNaN(i))return i*r}function S(e,t="w"){if(!e)return false;let n=l(e,t,"val");return n===null?true:!(n==="0"||n==="false"||n==="off")}function ut(e,t,n){if(!e)return null;if(Ti(e,t,n))return e;if(e.elements)for(let r of e.elements){if(r.type!=="element")continue;let o=ut(r,t,n);if(o)return o}return null}var _={image:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",hyperlink:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",header:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/header",footer:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/footer",comments:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",commentsExtended:"http://schemas.microsoft.com/office/2011/relationships/commentsExtended",commentsIds:"http://schemas.microsoft.com/office/2016/09/relationships/commentsIds",commentsExtensible:"http://schemas.microsoft.com/office/2018/08/relationships/commentsExtensible"};function Xe(e){let t=new Map;if(!e||e.trim().length===0)return t;let n=K(e);if(!n)return console.warn("Failed to parse relationships XML"),t;let r=B(n);for(let o of r){let i=o.name||"";if(!i.endsWith("Relationship")&&!i.includes(":Relationship"))continue;let s=l(o,null,"Id"),a=l(o,null,"Type"),c=l(o,null,"Target"),u=l(o,null,"TargetMode");if(!s||!a||!c){console.warn("Relationship missing required attributes:",{id:s,type:a,target:c});continue}let f={id:s,type:a,target:c};u==="External"?f.targetMode="External":u==="Internal"&&(f.targetMode="Internal"),t.set(s,f);}return t}function rn(e){return e.type===_.hyperlink&&e.targetMode==="External"}function pt(e,t){return e.get(t)?.target}var an={dk1:"000000",lt1:"FFFFFF",dk2:"44546A",lt2:"E7E6E6",accent1:"4472C4",accent2:"ED7D31",accent3:"A5A5A5",accent4:"FFC000",accent5:"5B9BD5",accent6:"70AD47",hlink:"0563C1",folHlink:"954F72"},Le={majorFont:{latin:"Calibri Light",ea:"",cs:"",fonts:{}},minorFont:{latin:"Calibri",ea:"",cs:"",fonts:{}}},ft={name:"Office Theme",colorScheme:an,fontScheme:Le},Ci=["dk1","lt1","dk2","lt2","accent1","accent2","accent3","accent4","accent5","accent6","hlink","folHlink"];function Pi(e){if(!e)return null;switch(Q(e.name||"")){case "srgbClr":return l(e,"a","val")??l(e,null,"val")??null;case "sysClr":{let n=l(e,"a","lastClr")??l(e,null,"lastClr");if(n)return n;switch(l(e,"a","val")??l(e,null,"val")){case "windowText":case "menuText":case "captionText":case "btnText":return "000000";case "window":case "menu":case "btnFace":case "btnHighlight":return "FFFFFF";case "highlight":return "0078D7";case "highlightText":return "FFFFFF";case "grayText":return "808080";default:return null}}case "schemeClr":{l(e,"a","val")??l(e,null,"val");return null}default:return null}}function Fi(e){let t={...an};if(!e)return t;for(let n of Ci){let r=p(e,"a",n);if(r){let o=B(r);if(o.length>0){let i=Pi(o[0]);i&&(t[n]=i);}}}return t}function on(e){let t={latin:"",ea:"",cs:"",fonts:{}};if(!e)return t;let n=p(e,"a","latin");n&&(t.latin=l(n,"a","typeface")??l(n,null,"typeface")??"");let r=p(e,"a","ea");r&&(t.ea=l(r,"a","typeface")??l(r,null,"typeface")??"");let o=p(e,"a","cs");o&&(t.cs=l(o,"a","typeface")??l(o,null,"typeface")??"");let i=L(e,"a","font");for(let s of i){let a=l(s,"a","script")??l(s,null,"script"),c=l(s,"a","typeface")??l(s,null,"typeface");a&&c&&(t.fonts=t.fonts||{},t.fonts[a]=c);}return t}function Si(e){let t={...Le};if(!e)return t;let n=p(e,"a","majorFont");n&&(t.majorFont=on(n));let r=p(e,"a","minorFont");return r&&(t.minorFont=on(r)),t}function ln(e){if(!e)return {...ft};try{let t=K(e);if(!t)return {...ft};let n=l(t,"a","name")??l(t,null,"name")??"Office Theme",r=p(t,"a","themeElements"),o=p(r,"a","clrScheme"),i=Fi(o),s=p(r,"a","fontScheme"),a=Si(s);return {name:n,colorScheme:i,fontScheme:a}}catch(t){return console.warn("Failed to parse theme:",t),{...ft}}}function vi(e,t="latin"){if(!e?.fontScheme?.majorFont)return Le.majorFont?.latin??"Calibri Light";let n=e.fontScheme.majorFont;return t==="latin"?n.latin||"Calibri Light":t==="ea"?n.ea||"":t==="cs"?n.cs||"":n.fonts?.[t]?n.fonts[t]:n.latin||"Calibri Light"}function sn(e,t="latin"){if(!e?.fontScheme?.minorFont)return Le.minorFont?.latin??"Calibri";let n=e.fontScheme.minorFont;return t==="latin"?n.latin||"Calibri":t==="ea"?n.ea||"":t==="cs"?n.cs||"":n.fonts?.[t]?n.fonts[t]:n.latin||"Calibri"}function te(e,t){if(!t)return "Calibri";let n=t.toLowerCase().includes("major"),r=t.toLowerCase().includes("minor"),o="latin",i=t.toLowerCase();return i.includes("eastasia")?o="ea":(i.includes("bidi")||i.includes("cs"))&&(o="cs"),n?vi(e,o):r?sn(e,o):sn(e,"latin")}function cn(e,t){let n=e?{...e}:{},r=t,o=[["ascii","asciiTheme"],["hAnsi","hAnsiTheme"],["eastAsia","eastAsiaTheme"],["cs","csTheme"]],i=new Set;for(let[s,a]of o)i.add(s),i.add(a),(r[s]!==void 0||r[a]!==void 0)&&(delete n[s],delete n[a],r[s]!==void 0&&(n[s]=r[s]),r[a]!==void 0&&(n[a]=r[a]));for(let s of Object.keys(r))!i.has(s)&&r[s]!==void 0&&(n[s]=r[s]);return n}function dt(e,t){if(!t&&!e)return;if(!t)return e;if(!e)return {...t};let n={...e};for(let r of Object.keys(t)){let o=t[r];if(o!==void 0){if(r==="fontFamily"&&typeof o=="object"&&o!==null){n.fontFamily=cn(e.fontFamily,o);continue}if(r==="color"&&typeof o=="object"&&o!==null){let i=o,s=!!(i.rgb||i.themeColor||i.themeTint||i.themeShade);(!i.auto||s)&&(n.color=i);continue}if(typeof o=="object"&&o!==null&&!Array.isArray(o)){n[r]={...e[r]??{},...o};continue}n[r]=o;}}return n}function He(e,t,n,r){let o={};return e&&e!=="auto"?o.rgb=e:e==="auto"&&(o.auto=true),t&&(o.themeColor=t),n&&(o.themeTint=n),r&&(o.themeShade=r),o}function ye(e){if(!e)return;let t={},n=l(e,"w","color");n&&n!=="auto"&&(t.color={rgb:n});let r=l(e,"w","fill");r&&r!=="auto"&&(t.fill={rgb:r});let o=l(e,"w","themeFill");o&&(t.fill=t.fill||{},t.fill.themeColor=o);let i=l(e,"w","themeFillTint");i&&t.fill&&(t.fill.themeTint=i);let s=l(e,"w","themeFillShade");s&&t.fill&&(t.fill.themeShade=s);let a=l(e,"w","val");return a&&(t.pattern=a),Object.keys(t).length>0?t:void 0}function be(e,t){if(!e)return;let n={},r=p(e,"w","b");r&&(n.bold=S(r));let o=p(e,"w","bCs");o&&(n.boldCs=S(o));let i=p(e,"w","i");i&&(n.italic=S(i));let s=p(e,"w","iCs");s&&(n.italicCs=S(s));let a=p(e,"w","u");if(a){let M=l(a,"w","val");if(M){n.underline={style:M};let $=l(a,"w","color"),Z=l(a,"w","themeColor");($||Z)&&(n.underline.color=He($,Z,l(a,"w","themeTint"),l(a,"w","themeShade")));}}let c=p(e,"w","strike");c&&(n.strike=S(c));let u=p(e,"w","dstrike");u&&(n.doubleStrike=S(u));let f=p(e,"w","vertAlign");if(f){let M=l(f,"w","val");(M==="superscript"||M==="subscript"||M==="baseline")&&(n.vertAlign=M);}let d=p(e,"w","smallCaps");d&&(n.smallCaps=S(d));let h=p(e,"w","caps");h&&(n.allCaps=S(h));let g=p(e,"w","vanish");g&&(n.hidden=S(g));let m=p(e,"w","color");m&&(n.color=He(l(m,"w","val"),l(m,"w","themeColor"),l(m,"w","themeTint"),l(m,"w","themeShade")));let y=p(e,"w","highlight");if(y){let M=l(y,"w","val");M&&(n.highlight=M);}let T=p(e,"w","shd");T&&(n.shading=ye(T));let I=p(e,"w","sz");if(I){let M=w(I,"w","val");M!==void 0&&(n.fontSize=M);}let E=p(e,"w","szCs");if(E){let M=w(E,"w","val");M!==void 0&&(n.fontSizeCs=M);}let v=p(e,"w","rFonts");if(v){n.fontFamily={ascii:l(v,"w","ascii")??void 0,hAnsi:l(v,"w","hAnsi")??void 0,eastAsia:l(v,"w","eastAsia")??void 0,cs:l(v,"w","cs")??void 0};let M=l(v,"w","asciiTheme");M&&(n.fontFamily.asciiTheme=M,t&&!n.fontFamily.ascii&&(n.fontFamily.ascii=te(t,M)));let $=l(v,"w","hAnsiTheme");$&&(n.fontFamily.hAnsiTheme=$,t&&!n.fontFamily.hAnsi&&(n.fontFamily.hAnsi=te(t,$)));let Z=l(v,"w","eastAsiaTheme");Z&&(n.fontFamily.eastAsiaTheme=Z,t&&!n.fontFamily.eastAsia&&(n.fontFamily.eastAsia=te(t,Z)));let W=l(v,"w","cstheme");W&&(n.fontFamily.csTheme=W,t&&!n.fontFamily.cs&&(n.fontFamily.cs=te(t,W)));}let x=p(e,"w","spacing");if(x){let M=w(x,"w","val");M!==void 0&&(n.spacing=M);}let b=p(e,"w","position");if(b){let M=w(b,"w","val");M!==void 0&&(n.position=M);}let F=p(e,"w","w");if(F){let M=w(F,"w","val");M!==void 0&&(n.scale=M);}let P=p(e,"w","kern");if(P){let M=w(P,"w","val");M!==void 0&&(n.kerning=M);}let k=p(e,"w","effect");if(k){let M=l(k,"w","val");M&&(n.effect=M);}let A=p(e,"w","em");if(A){let M=l(A,"w","val");M&&(n.emphasisMark=M);}let D=p(e,"w","emboss");D&&(n.emboss=S(D));let X=p(e,"w","imprint");X&&(n.imprint=S(X));let O=p(e,"w","outline");O&&(n.outline=S(O));let V=p(e,"w","shadow");V&&(n.shadow=S(V));let H=p(e,"w","rtl");H&&(n.rtl=S(H));let G=p(e,"w","cs");G&&(n.cs=S(G));let j=p(e,"w","rStyle");if(j){let M=l(j,"w","val");M&&(n.styleId=M);}return Object.keys(n).length>0?n:void 0}function Y(e){if(!e)return;let t=l(e,"w","val");if(!t)return;let n={style:t},r=l(e,"w","color"),o=l(e,"w","themeColor");(r||o)&&(n.color=He(r,o,l(e,"w","themeTint"),l(e,"w","themeShade")));let i=w(e,"w","sz");i!==void 0&&(n.size=i);let s=w(e,"w","space");s!==void 0&&(n.space=s);let a=l(e,"w","shadow");a&&(n.shadow=a==="1"||a==="true");let c=l(e,"w","frame");return c&&(n.frame=c==="1"||c==="true"),n}function Ii(e){if(!e)return;let t=L(e,"w","tab");if(t.length===0)return;let n=[];for(let r of t){let o=w(r,"w","pos"),i=l(r,"w","val");if(o!==void 0&&i){let s={position:o,alignment:i},a=l(r,"w","leader");a&&(s.leader=a),n.push(s);}}return n.length>0?n:void 0}function Oe(e,t){if(!e)return;let n={},r=p(e,"w","jc");if(r){let b=l(r,"w","val");b&&(n.alignment=b);}let o=p(e,"w","bidi");o&&(n.bidi=S(o));let i=p(e,"w","spacing");if(i){let b=w(i,"w","before");b!==void 0&&(n.spaceBefore=b);let F=w(i,"w","after");F!==void 0&&(n.spaceAfter=F);let P=w(i,"w","line");P!==void 0&&(n.lineSpacing=P);let k=l(i,"w","lineRule");k&&(n.lineSpacingRule=k);let A=l(i,"w","beforeAutospacing");A&&(n.beforeAutospacing=A==="1"||A==="true");let D=l(i,"w","afterAutospacing");D&&(n.afterAutospacing=D==="1"||D==="true");}let s=p(e,"w","ind");if(s){let b=w(s,"w","left");b!==void 0&&(n.indentLeft=b);let F=w(s,"w","right");F!==void 0&&(n.indentRight=F);let P=w(s,"w","firstLine");P!==void 0&&(n.indentFirstLine=P);let k=w(s,"w","hanging");k!==void 0&&(n.indentFirstLine=-k,n.hangingIndent=true);}let a=p(e,"w","pBdr");if(a){let b={},F=Y(p(a,"w","top"));F&&(b.top=F);let P=Y(p(a,"w","bottom"));P&&(b.bottom=P);let k=Y(p(a,"w","left"));k&&(b.left=k);let A=Y(p(a,"w","right"));A&&(b.right=A);let D=Y(p(a,"w","between"));D&&(b.between=D);let X=Y(p(a,"w","bar"));X&&(b.bar=X),Object.keys(b).length>0&&(n.borders=b);}let c=p(e,"w","shd");c&&(n.shading=ye(c));let u=p(e,"w","tabs");u&&(n.tabs=Ii(u));let f=p(e,"w","keepNext");f&&(n.keepNext=S(f));let d=p(e,"w","keepLines");d&&(n.keepLines=S(d));let h=p(e,"w","widowControl");h&&(n.widowControl=S(h));let g=p(e,"w","pageBreakBefore");g&&(n.pageBreakBefore=S(g));let m=p(e,"w","contextualSpacing");m&&(n.contextualSpacing=S(m));let y=p(e,"w","numPr");if(y){let b=p(y,"w","numId"),F=p(y,"w","ilvl");if(b||F){if(n.numPr={},b){let P=w(b,"w","val");P!==void 0&&(n.numPr.numId=P);}if(F){let P=w(F,"w","val");P!==void 0&&(n.numPr.ilvl=P);}}}let T=p(e,"w","outlineLvl");if(T){let b=w(T,"w","val");b!==void 0&&(n.outlineLevel=b);}let I=p(e,"w","pStyle");if(I){let b=l(I,"w","val");b&&(n.styleId=b);}let E=p(e,"w","suppressLineNumbers");E&&(n.suppressLineNumbers=S(E));let v=p(e,"w","suppressAutoHyphens");v&&(n.suppressAutoHyphens=S(v));let x=p(e,"w","rPr");return x&&(n.runProperties=be(x,t)),Object.keys(n).length>0?n:void 0}function re(e){if(!e)return;let t=w(e,"w","w"),n=l(e,"w","type");if(t!==void 0&&n)return {value:t,type:n}}function un(e){if(!e)return;let t={},n=Y(p(e,"w","top"));n&&(t.top=n);let r=Y(p(e,"w","bottom"));r&&(t.bottom=r);let o=Y(p(e,"w","left"));o&&(t.left=o);let i=Y(p(e,"w","right"));i&&(t.right=i);let s=Y(p(e,"w","insideH"));s&&(t.insideH=s);let a=Y(p(e,"w","insideV"));return a&&(t.insideV=a),Object.keys(t).length>0?t:void 0}function pn(e){if(!e)return;let t={},n=re(p(e,"w","top"));n&&(t.top=n);let r=re(p(e,"w","bottom"));r&&(t.bottom=r);let o=re(p(e,"w","left"));o&&(t.left=o);let i=re(p(e,"w","right"));return i&&(t.right=i),Object.keys(t).length>0?t:void 0}function ki(e){if(!e)return;let t={},n=l(e,"w","val");if(n){let u=parseInt(n,16);isNaN(u)||(t.firstRow=(u&32)!==0,t.lastRow=(u&64)!==0,t.firstColumn=(u&128)!==0,t.lastColumn=(u&256)!==0,t.noHBand=(u&512)!==0,t.noVBand=(u&1024)!==0);}let r=l(e,"w","firstColumn");r&&(t.firstColumn=r==="1");let o=l(e,"w","firstRow");o&&(t.firstRow=o==="1");let i=l(e,"w","lastColumn");i&&(t.lastColumn=i==="1");let s=l(e,"w","lastRow");s&&(t.lastRow=s==="1");let a=l(e,"w","noHBand");a&&(t.noHBand=a==="1");let c=l(e,"w","noVBand");return c&&(t.noVBand=c==="1"),Object.keys(t).length>0?t:void 0}function mt(e,t){if(!e)return;let n={},r=p(e,"w","tblW");r&&(n.width=re(r));let o=p(e,"w","jc");if(o){let m=l(o,"w","val");(m==="left"||m==="center"||m==="right")&&(n.justification=m);}let i=p(e,"w","tblCellSpacing");i&&(n.cellSpacing=re(i));let s=p(e,"w","tblInd");s&&(n.indent=re(s));let a=p(e,"w","tblBorders");a&&(n.borders=un(a));let c=p(e,"w","tblCellMar");c&&(n.cellMargins=pn(c));let u=p(e,"w","tblLayout");if(u){let m=l(u,"w","type");(m==="fixed"||m==="autofit")&&(n.layout=m);}let f=p(e,"w","tblStyle");if(f){let m=l(f,"w","val");m&&(n.styleId=m);}let d=p(e,"w","tblLook");d&&(n.look=ki(d));let h=p(e,"w","shd");h&&(n.shading=ye(h));let g=p(e,"w","bidiVisual");return g&&(n.bidi=S(g)),Object.keys(n).length>0?n:void 0}function ht(e){if(!e)return;let t={},n=p(e,"w","trHeight");if(n){t.height=re(n);let a=l(n,"w","hRule");a&&(t.heightRule=a);}let r=p(e,"w","tblHeader");r&&(t.header=S(r));let o=p(e,"w","cantSplit");o&&(t.cantSplit=S(o));let i=p(e,"w","jc");if(i){let a=l(i,"w","val");(a==="left"||a==="center"||a==="right")&&(t.justification=a);}let s=p(e,"w","hidden");return s&&(t.hidden=S(s)),Object.keys(t).length>0?t:void 0}function gt(e,t){if(!e)return;let n={},r=p(e,"w","tcW");r&&(n.width=re(r));let o=p(e,"w","tcBorders");o&&(n.borders=un(o));let i=p(e,"w","tcMar");i&&(n.margins=pn(i));let s=p(e,"w","shd");s&&(n.shading=ye(s));let a=p(e,"w","vAlign");if(a){let m=l(a,"w","val");(m==="top"||m==="center"||m==="bottom")&&(n.verticalAlign=m);}let c=p(e,"w","textDirection");if(c){let m=l(c,"w","val");m&&(n.textDirection=m);}let u=p(e,"w","gridSpan");if(u){let m=w(u,"w","val");m!==void 0&&(n.gridSpan=m);}let f=p(e,"w","vMerge");if(f){let m=l(f,"w","val");n.vMerge=m==="restart"?"restart":"continue";}let d=p(e,"w","tcFitText");d&&(n.fitText=S(d));let h=p(e,"w","noWrap");h&&(n.noWrap=S(h));let g=p(e,"w","hideMark");return g&&(n.hideMark=S(g)),Object.keys(n).length>0?n:void 0}function Ei(e,t){let n={styleId:l(e,"w","styleId")??"",type:l(e,"w","type")??"paragraph"},r=l(e,"w","default");r&&(n.default=r==="1"||r==="true");let o=p(e,"w","name");o&&(n.name=l(o,"w","val")??void 0);let i=p(e,"w","basedOn");i&&(n.basedOn=l(i,"w","val")??void 0);let s=p(e,"w","next");s&&(n.next=l(s,"w","val")??void 0);let a=p(e,"w","link");a&&(n.link=l(a,"w","val")??void 0);let c=p(e,"w","uiPriority");if(c){let x=w(c,"w","val");x!==void 0&&(n.uiPriority=x);}let u=p(e,"w","hidden");u&&(n.hidden=S(u));let f=p(e,"w","semiHidden");f&&(n.semiHidden=S(f));let d=p(e,"w","unhideWhenUsed");d&&(n.unhideWhenUsed=S(d));let h=p(e,"w","qFormat");h&&(n.qFormat=S(h));let g=p(e,"w","personal");g&&(n.personal=S(g));let m=p(e,"w","pPr");m&&(n.pPr=Oe(m,t));let y=p(e,"w","rPr");y&&(n.rPr=be(y,t));let T=p(e,"w","tblPr");T&&(n.tblPr=mt(T));let I=p(e,"w","trPr");I&&(n.trPr=ht(I));let E=p(e,"w","tcPr");E&&(n.tcPr=gt(E));let v=L(e,"w","tblStylePr");if(v.length>0){n.tblStylePr=[];for(let x of v){let b=l(x,"w","type");if(b){let F={type:b},P=p(x,"w","pPr");P&&(F.pPr=Oe(P,t));let k=p(x,"w","rPr");k&&(F.rPr=be(k,t));let A=p(x,"w","tblPr");A&&(F.tblPr=mt(A));let D=p(x,"w","trPr");D&&(F.trPr=ht(D));let X=p(x,"w","tcPr");X&&(F.tcPr=gt(X)),n.tblStylePr.push(F);}}}return n}function Ri(e,t){if(!e)return;let n={},r=p(e,"w","rPrDefault");if(r){let i=p(r,"w","rPr");i&&(n.rPr=be(i,t));}let o=p(e,"w","pPrDefault");if(o){let i=p(o,"w","pPr");i&&(n.pPr=Oe(i,t));}return n.rPr||n.pPr?n:void 0}function Mi(e,t){if(!t)return e;if(!e)return t?{...t}:void 0;let n={...e};for(let r of Object.keys(t)){let o=t[r];if(o!==void 0)if(r==="runProperties")n.runProperties=dt(n.runProperties,t.runProperties);else if(r==="borders"||r==="numPr"||r==="frame"){let i=n[r],s=o;n[r]={...i||{},...s||{}};}else r==="tabs"&&Array.isArray(o)?n.tabs=[...o]:n[r]=o;}return n}function fn(e,t,n,r=new Set){if(r.has(e.styleId)||(r.add(e.styleId),!e.basedOn))return e;let o=t.get(e.basedOn);if(!o)return e;let i=fn(o,t,n,r),s={...e,pPr:Mi(i.pPr,e.pPr),rPr:dt(i.rPr,e.rPr)};return e.type==="table"&&((i.tblPr||e.tblPr)&&(s.tblPr={...i.tblPr||{},...e.tblPr||{}}),(i.trPr||e.trPr)&&(s.trPr={...i.trPr||{},...e.trPr||{}}),(i.tcPr||e.tcPr)&&(s.tcPr={...i.tcPr||{},...e.tcPr||{}})),s}function wt(e,t){let n=new Map;try{let r=K(e);if(!r)return n;let o=L(r,"w","style");for(let i of o){let s=Ei(i,t);s.styleId&&n.set(s.styleId,s);}for(let[i,s]of n){let a=fn(s,n,t);n.set(i,a);}}catch(r){console.warn("Failed to parse styles:",r);}return n}function dn(e,t){let n={styles:[]};try{let r=K(e);if(!r)return n;let o=p(r,"w","docDefaults");n.docDefaults=Ri(o,t);let i=p(r,"w","latentStyles");i&&(n.latentStyles={defLockedState:l(i,"w","defLockedState")==="1",defUIPriority:w(i,"w","defUIPriority"),defSemiHidden:l(i,"w","defSemiHidden")==="1",defUnhideWhenUsed:l(i,"w","defUnhideWhenUsed")==="1",defQFormat:l(i,"w","defQFormat")==="1",count:w(i,"w","count")});let s=wt(e,t);n.styles=Array.from(s.values());}catch(r){console.warn("Failed to parse style definitions:",r);}return n}function mn(e){let t={abstractNums:[],nums:[]};if(!e)return xt(t);let n=K(e);if(!n)return xt(t);let r=L(n,"w","abstractNum");for(let i of r){let s=$i(i);s&&t.abstractNums.push(s);}let o=L(n,"w","num");for(let i of o){let s=Ai(i);s&&t.nums.push(s);}return xt(t)}function $i(e){let t=l(e,"w","abstractNumId");if(t===null)return null;let n=parseInt(t,10);if(isNaN(n))return null;let r={abstractNumId:n,levels:[]},o=p(e,"w","multiLevelType");if(o){let u=l(o,"w","val");(u==="hybridMultilevel"||u==="multilevel"||u==="singleLevel")&&(r.multiLevelType=u);}let i=p(e,"w","name");i&&(r.name=l(i,"w","val")??void 0);let s=p(e,"w","numStyleLink");s&&(r.numStyleLink=l(s,"w","val")??void 0);let a=p(e,"w","styleLink");a&&(r.styleLink=l(a,"w","val")??void 0);let c=L(e,"w","lvl");for(let u of c){let f=hn(u);f&&r.levels.push(f);}return r.levels.sort((u,f)=>u.ilvl-f.ilvl),r}function Ai(e){let t=l(e,"w","numId");if(t===null)return null;let n=parseInt(t,10);if(isNaN(n))return null;let r=p(e,"w","abstractNumId");if(!r)return null;let o=l(r,"w","val");if(o===null)return null;let i=parseInt(o,10);if(isNaN(i))return null;let s={numId:n,abstractNumId:i},a=L(e,"w","lvlOverride");if(a.length>0){s.levelOverrides=[];for(let c of a){let u=l(c,"w","ilvl");if(u===null)continue;let f=parseInt(u,10);if(isNaN(f))continue;let d={ilvl:f},h=p(c,"w","startOverride");if(h){let m=l(h,"w","val");if(m!==null){let y=parseInt(m,10);isNaN(y)||(d.startOverride=y);}}let g=p(c,"w","lvl");g&&(d.lvl=hn(g)??void 0),s.levelOverrides.push(d);}}return s}function hn(e){let t=l(e,"w","ilvl");if(t===null)return null;let n=parseInt(t,10);if(isNaN(n)||n<0||n>8)return null;let r={ilvl:n,numFmt:"decimal",lvlText:""},o=p(e,"w","start");if(o){let m=l(o,"w","val");if(m!==null){let y=parseInt(m,10);isNaN(y)||(r.start=y);}}let i=p(e,"w","numFmt");if(i){let m=l(i,"w","val");m&&(r.numFmt=Di(m));}let s=p(e,"w","lvlText");s&&(r.lvlText=l(s,"w","val")??"");let a=p(e,"w","lvlJc");if(a){let m=l(a,"w","val");(m==="left"||m==="center"||m==="right")&&(r.lvlJc=m);}let c=p(e,"w","suff");if(c){let m=l(c,"w","val");(m==="tab"||m==="space"||m==="nothing")&&(r.suffix=m);}let u=p(e,"w","isLgl");u&&(r.isLgl=S(u));let f=p(e,"w","lvlRestart");if(f){let m=l(f,"w","val");if(m!==null){let y=parseInt(m,10);isNaN(y)||(r.lvlRestart=y);}}let d=p(e,"w","legacy");d&&(r.legacy={legacy:S(d),legacySpace:w(d,"w","legacySpace"),legacyIndent:w(d,"w","legacyIndent")});let h=p(e,"w","pPr");h&&(r.pPr=Bi(h));let g=p(e,"w","rPr");return g&&(r.rPr=Li(g)),r}function Di(e){return {decimal:"decimal",upperRoman:"upperRoman",lowerRoman:"lowerRoman",upperLetter:"upperLetter",lowerLetter:"lowerLetter",ordinal:"ordinal",cardinalText:"cardinalText",ordinalText:"ordinalText",hex:"hex",chicago:"chicago",bullet:"bullet",none:"none",decimalZero:"decimalZero",ganada:"ganada",chosung:"chosung",ideographDigital:"ideographDigital",japaneseCounting:"japaneseCounting",aiueo:"aiueo",iroha:"iroha",decimalFullWidth:"decimalFullWidth",decimalHalfWidth:"decimalHalfWidth",japaneseLegal:"japaneseLegal",japaneseDigitalTenThousand:"japaneseDigitalTenThousand",decimalEnclosedCircle:"decimalEnclosedCircle",decimalFullWidth2:"decimalFullWidth2",aiueoFullWidth:"aiueoFullWidth",irohaFullWidth:"irohaFullWidth",decimalEnclosedFullstop:"decimalEnclosedFullstop",decimalEnclosedParen:"decimalEnclosedParen",decimalEnclosedCircleChinese:"decimalEnclosedCircleChinese",ideographEnclosedCircle:"ideographEnclosedCircle",ideographTraditional:"ideographTraditional",ideographZodiac:"ideographZodiac",ideographZodiacTraditional:"ideographZodiacTraditional",taiwaneseCounting:"taiwaneseCounting",ideographLegalTraditional:"ideographLegalTraditional",taiwaneseCountingThousand:"taiwaneseCountingThousand",taiwaneseDigital:"taiwaneseDigital",chineseCounting:"chineseCounting",chineseLegalSimplified:"chineseLegalSimplified",chineseCountingThousand:"chineseCountingThousand",koreanDigital:"koreanDigital",koreanCounting:"koreanCounting",koreanLegal:"koreanLegal",koreanDigital2:"koreanDigital2",vietnameseCounting:"vietnameseCounting",russianLower:"russianLower",russianUpper:"russianUpper",numberInDash:"numberInDash",hebrew1:"hebrew1",hebrew2:"hebrew2",arabicAlpha:"arabicAlpha",arabicAbjad:"arabicAbjad",hindiVowels:"hindiVowels",hindiConsonants:"hindiConsonants",hindiNumbers:"hindiNumbers",hindiCounting:"hindiCounting",thaiLetters:"thaiLetters",thaiNumbers:"thaiNumbers",thaiCounting:"thaiCounting"}[e]??"decimal"}function Bi(e){let t={},n=p(e,"w","ind");if(n){let o=w(n,"w","left"),i=w(n,"w","right"),s=w(n,"w","start"),a=w(n,"w","end"),c=w(n,"w","firstLine"),u=w(n,"w","hanging"),f=o??s,d=i??a;f!==void 0&&(t.indentLeft=f),d!==void 0&&(t.indentRight=d),u!==void 0?(t.indentFirstLine=-u,t.hangingIndent=true):c!==void 0&&(t.indentFirstLine=c);}let r=p(e,"w","tabs");if(r){t.tabs=[];let o=L(r,"w","tab");for(let i of o){let s=w(i,"w","pos"),a=l(i,"w","val"),c=l(i,"w","leader");s!==void 0&&a&&t.tabs.push({position:s,alignment:Ni(a),leader:Xi(c)});}}return t}function Ni(e){switch(e){case "left":return "left";case "center":return "center";case "right":return "right";case "decimal":return "decimal";case "bar":return "bar";case "clear":return "clear";case "num":return "num";default:return "left"}}function Xi(e){if(e)switch(e){case "none":return "none";case "dot":return "dot";case "hyphen":return "hyphen";case "underscore":return "underscore";case "heavy":return "heavy";case "middleDot":return "middleDot";default:return}}function Li(e){let t={},n=p(e,"w","rFonts");n&&(t.fontFamily={ascii:l(n,"w","ascii")??void 0,hAnsi:l(n,"w","hAnsi")??void 0,eastAsia:l(n,"w","eastAsia")??void 0,cs:l(n,"w","cs")??void 0});let r=p(e,"w","sz");if(r){let c=w(r,"w","val");c!==void 0&&(t.fontSize=c);}let o=p(e,"w","color");if(o){let c=l(o,"w","val"),u=l(o,"w","themeColor");c==="auto"?t.color={auto:true}:u?t.color={themeColor:u,themeTint:l(o,"w","themeTint")??void 0,themeShade:l(o,"w","themeShade")??void 0}:c&&(t.color={rgb:c});}let i=p(e,"w","b");i&&(t.bold=S(i));let s=p(e,"w","i");s&&(t.italic=S(s));let a=p(e,"w","vanish");return a&&(t.hidden=S(a)),t}function xt(e){let t=new Map;for(let r of e.abstractNums)t.set(r.abstractNumId,r);let n=new Map;for(let r of e.nums)n.set(r.numId,r);return {definitions:e,getLevel(r,o){let i=n.get(r);if(!i)return null;if(i.levelOverrides){let a=i.levelOverrides.find(c=>c.ilvl===o);if(a){if(a.lvl)return a.lvl;let c=t.get(i.abstractNumId);if(c){let u=c.levels.find(f=>f.ilvl===o);if(u&&a.startOverride!==void 0)return {...u,start:a.startOverride}}}}let s=t.get(i.abstractNumId);if(!s)return null;if(s.numStyleLink&&s.levels.length===0){for(let a of t.values())if(a.styleLink===s.numStyleLink&&a.levels.length>0){s=a;break}}return s.levels.find(a=>a.ilvl===o)??null},getAbstract(r){return t.get(r)??null},getInstance(r){return n.get(r)??null},hasNumbering(r){return n.has(r)}}}var Hi=720,Oi=31680;function gn(e){let t=e?K(e):null,n=t?p(t,"w","defaultTabStop"):null,r=n?parseInt(l(n,"w","val")??"",10):NaN;return {defaultTabStop:Number.isFinite(r)&&r>0&&r<=Oi?r:Hi}}function zi(e){if(!e)return;let t=w(e,"w","w")??0,n=l(e,"w","type")??"dxa",r="dxa";return (n==="auto"||n==="dxa"||n==="nil"||n==="pct")&&(r=n),{value:t,type:r}}function oe(e){return zi(e)}function he(e){let t=l(e,"w","id"),n=t?parseInt(t,10):0,r=(l(e,"w","author")??"").trim(),o=(l(e,"w","date")??"").trim();return {id:Number.isInteger(n)&&n>=0?n:0,author:r.length>0?r:"Unknown",date:o.length>0?o:void 0}}function ze(e){return he(e)}function Te(e){if(!e)return;let r={style:l(e,"w","val")??"none"},o=w(e,"w","sz");o!==void 0&&(r.size=o);let i=w(e,"w","space");i!==void 0&&(r.space=i);let s=l(e,"w","color"),a=l(e,"w","themeColor"),c=l(e,"w","themeTint"),u=l(e,"w","themeShade");(s||a||c||u)&&(r.color={rgb:s??void 0,themeColor:a,themeTint:c??void 0,themeShade:u??void 0});let f=l(e,"w","shadow");(f==="1"||f==="true")&&(r.shadow=true);let d=l(e,"w","frame");return (d==="1"||d==="true")&&(r.frame=true),r}function yt(e){if(!e)return;let t={},n=Te(p(e,"w","top"));n&&(t.top=n);let r=Te(p(e,"w","bottom"));r&&(t.bottom=r);let o=Te(p(e,"w","left")??p(e,"w","start"));o&&(t.left=o);let i=Te(p(e,"w","right")??p(e,"w","end"));i&&(t.right=i);let s=Te(p(e,"w","insideH"));s&&(t.insideH=s);let a=Te(p(e,"w","insideV"));if(a&&(t.insideV=a),Object.keys(t).length!==0)return t}function bt(e){if(!e)return;let t={},n=oe(p(e,"w","top"));n&&(t.top=n);let r=oe(p(e,"w","bottom"));r&&(t.bottom=r);let o=oe(p(e,"w","left")??p(e,"w","start"));o&&(t.left=o);let i=oe(p(e,"w","right")??p(e,"w","end"));if(i&&(t.right=i),Object.keys(t).length!==0)return t}function Tt(e){if(!e)return;let t={},n=l(e,"w","fill");n&&n!=="auto"&&(t.fill={rgb:n});let r=l(e,"w","themeFill");if(r){t.fill={themeColor:r};let s=l(e,"w","themeFillTint");s&&t.fill&&(t.fill.themeTint=s);let a=l(e,"w","themeFillShade");a&&t.fill&&(t.fill.themeShade=a);}let o=l(e,"w","color");o&&o!=="auto"&&(t.color={rgb:o});let i=l(e,"w","val");if(i&&(t.pattern=i),Object.keys(t).length!==0)return t}function wn(e){if(!e)return;let t={},n=l(e,"w","firstRow");(n==="1"||n==="true")&&(t.firstRow=true);let r=l(e,"w","lastRow");(r==="1"||r==="true")&&(t.lastRow=true);let o=l(e,"w","firstColumn");(o==="1"||o==="true")&&(t.firstColumn=true);let i=l(e,"w","lastColumn");(i==="1"||i==="true")&&(t.lastColumn=true);let s=l(e,"w","noHBand");(s==="1"||s==="true")&&(t.noHBand=true);let a=l(e,"w","noVBand");(a==="1"||a==="true")&&(t.noVBand=true);let c=l(e,"w","val");if(c){let u=parseInt(c,16);isNaN(u)||(u&32&&(t.firstRow=true),u&64&&(t.lastRow=true),u&128&&(t.firstColumn=true),u&256&&(t.lastColumn=true),u&512&&(t.noHBand=true),u&1024&&(t.noVBand=true));}if(Object.keys(t).length!==0)return t}function xn(e){if(!e)return;let t={},n=l(e,"w","horzAnchor");(n==="margin"||n==="page"||n==="text")&&(t.horzAnchor=n);let r=l(e,"w","vertAnchor");(r==="margin"||r==="page"||r==="text")&&(t.vertAnchor=r);let o=w(e,"w","tblpX");o!==void 0&&(t.tblpX=o);let i=l(e,"w","tblpXSpec");i&&(t.tblpXSpec=i);let s=w(e,"w","tblpY");s!==void 0&&(t.tblpY=s);let a=l(e,"w","tblpYSpec");a&&(t.tblpYSpec=a);let c=w(e,"w","topFromText");c!==void 0&&(t.topFromText=c);let u=w(e,"w","bottomFromText");u!==void 0&&(t.bottomFromText=u);let f=w(e,"w","leftFromText");f!==void 0&&(t.leftFromText=f);let d=w(e,"w","rightFromText");if(d!==void 0&&(t.rightFromText=d),Object.keys(t).length!==0)return t}function yn(e){if(!e)return;let t={},n=oe(p(e,"w","tblW"));n&&(t.width=n);let r=p(e,"w","jc");if(r){let y=l(r,"w","val");(y==="left"||y==="center"||y==="right"||y==="start")&&(t.justification=y==="start"?"left":y);}let o=oe(p(e,"w","tblCellSpacing"));o&&(t.cellSpacing=o);let i=oe(p(e,"w","tblInd"));i&&(t.indent=i);let s=yt(p(e,"w","tblBorders"));s&&(t.borders=s);let a=bt(p(e,"w","tblCellMar"));a&&(t.cellMargins=a);let c=p(e,"w","tblLayout");if(c){let y=l(c,"w","type");(y==="fixed"||y==="autofit")&&(t.layout=y);}let u=p(e,"w","tblStyle");if(u){let y=l(u,"w","val");y&&(t.styleId=y);}let f=wn(p(e,"w","tblLook"));f&&(t.look=f);let d=Tt(p(e,"w","shd"));d&&(t.shading=d);let h=p(e,"w","tblOverlap");if(h){let y=l(h,"w","val");(y==="never"||y==="overlap")&&(t.overlap=y);}let g=xn(p(e,"w","tblpPr"));if(g&&(t.floating=g),S(p(e,"w","bidiVisual"))&&(t.bidi=true),Object.keys(t).length!==0)return t}function ji(e,t){if(!e)return;let n=L(e,"w","tblPrChange").map(r=>{let o=p(r,"w","tblPr");return {type:"tablePropertyChange",info:ze(r),previousFormatting:yn(o),currentFormatting:t}}).filter(r=>r.previousFormatting||r.currentFormatting);return n.length>0?n:void 0}function _i(e,t){if(!e)return;let n=L(e,"w","trPrChange").map(r=>{let o=p(r,"w","trPr");return {type:"tableRowPropertyChange",info:ze(r),previousFormatting:bn(o),currentFormatting:t}}).filter(r=>r.previousFormatting||r.currentFormatting);return n.length>0?n:void 0}function Vi(e,t){if(!e)return;let n=L(e,"w","tcPrChange").map(r=>{let o=p(r,"w","tcPr");return {type:"tableCellPropertyChange",info:ze(r),previousFormatting:Cn(o),currentFormatting:t}}).filter(r=>r.previousFormatting||r.currentFormatting);return n.length>0?n:void 0}function Wi(e){if(!e)return;let t=p(e,"w","ins");if(t)return {type:"tableRowInsertion",info:he(t)};let n=p(e,"w","del");if(n)return {type:"tableRowDeletion",info:he(n)}}function Ui(e){if(!e)return;let t=p(e,"w","cellIns");if(t)return {type:"tableCellInsertion",info:he(t)};let n=p(e,"w","cellDel");if(n)return {type:"tableCellDeletion",info:he(n)};let r=p(e,"w","cellMerge");if(r){let o=l(r,"w","vMerge"),i=l(r,"w","vMergeOrig"),s=a=>a==="rest"||a==="cont";return {type:"tableCellMerge",info:he(r),...s(o)?{vMerge:o}:{},...s(i)?{vMergeOrig:i}:{}}}}function bn(e){if(!e)return;let t={},n=p(e,"w","trHeight");if(n){let c=w(n,"w","val");c!==void 0&&c>0&&(t.height={value:c,type:"dxa"});let u=l(n,"w","hRule");(u==="auto"||u==="atLeast"||u==="exact")&&(t.heightRule=u);}S(p(e,"w","tblHeader"))&&(t.header=true),S(p(e,"w","cantSplit"))&&(t.cantSplit=true);let i=p(e,"w","jc");if(i){let c=l(i,"w","val");(c==="left"||c==="center"||c==="right")&&(t.justification=c);}S(p(e,"w","hidden"))&&(t.hidden=true);let a=Tn(p(e,"w","cnfStyle"));if(a&&(t.conditionalFormat=a),Object.keys(t).length!==0)return t}function Tn(e){if(!e)return;let t={},n=l(e,"w","firstRow");(n==="1"||n==="true")&&(t.firstRow=true);let r=l(e,"w","lastRow");(r==="1"||r==="true")&&(t.lastRow=true);let o=l(e,"w","firstColumn");(o==="1"||o==="true")&&(t.firstColumn=true);let i=l(e,"w","lastColumn");(i==="1"||i==="true")&&(t.lastColumn=true);let s=l(e,"w","oddHBand");(s==="1"||s==="true")&&(t.oddHBand=true);let a=l(e,"w","evenHBand");(a==="1"||a==="true")&&(t.evenHBand=true);let c=l(e,"w","oddVBand");(c==="1"||c==="true")&&(t.oddVBand=true);let u=l(e,"w","evenVBand");(u==="1"||u==="true")&&(t.evenVBand=true);let f=l(e,"w","firstRowFirstColumn");(f==="1"||f==="true")&&(t.nwCell=true);let d=l(e,"w","firstRowLastColumn");(d==="1"||d==="true")&&(t.neCell=true);let h=l(e,"w","lastRowFirstColumn");(h==="1"||h==="true")&&(t.swCell=true);let g=l(e,"w","lastRowLastColumn");(g==="1"||g==="true")&&(t.seCell=true);let m=l(e,"w","val");if(m&&m.length===12&&(m[0]==="1"&&(t.firstRow=true),m[1]==="1"&&(t.lastRow=true),m[2]==="1"&&(t.firstColumn=true),m[3]==="1"&&(t.lastColumn=true),m[4]==="1"&&(t.oddVBand=true),m[5]==="1"&&(t.evenVBand=true),m[6]==="1"&&(t.oddHBand=true),m[7]==="1"&&(t.evenHBand=true),m[8]==="1"&&(t.nwCell=true),m[9]==="1"&&(t.neCell=true),m[10]==="1"&&(t.swCell=true),m[11]==="1"&&(t.seCell=true)),Object.keys(t).length!==0)return t}function Cn(e){if(!e)return;let t={},n=oe(p(e,"w","tcW"));n&&(t.width=n);let r=yt(p(e,"w","tcBorders"));r&&(t.borders=r);let o=bt(p(e,"w","tcMar"));o&&(t.margins=o);let i=Tt(p(e,"w","shd"));i&&(t.shading=i);let s=p(e,"w","vAlign");if(s){let m=l(s,"w","val");(m==="top"||m==="center"||m==="bottom")&&(t.verticalAlign=m);}let a=p(e,"w","textDirection");if(a){let m=l(a,"w","val");m&&(t.textDirection=m);}let c=p(e,"w","gridSpan");if(c){let m=w(c,"w","val");m!==void 0&&m>1&&(t.gridSpan=m);}let u=p(e,"w","vMerge");u&&(l(u,"w","val")==="restart"?t.vMerge="restart":t.vMerge="continue"),S(p(e,"w","tcFitText"))&&(t.fitText=true),S(p(e,"w","noWrap"))&&(t.noWrap=true),S(p(e,"w","hideMark"))&&(t.hideMark=true);let g=Tn(p(e,"w","cnfStyle"));if(g&&(t.conditionalFormat=g),Object.keys(t).length!==0)return t}function Gi(e,t,n,r,o,i,s){let a=[],c=e.elements||[];for(let u of c){if(!u.name)continue;let f=u.name.split(":").pop();if(f==="p"){let d=ie(u,t,n,r,o,i,s);a.push(d);}else if(f==="tbl"){let d=Ee(u,t,n,r,o,i,s);a.push(d);}}return a.length===0&&a.push({type:"paragraph",content:[]}),a}function Zi(e,t,n,r,o,i,s){let a={type:"tableCell",content:[]},c=p(e,"w","tcPr"),u=Cn(c);return u&&(a.formatting=u),a.propertyChanges=Vi(c,u),a.structuralChange=Ui(c),a.content=Gi(e,t,n,r,o,i,s),a}function qi(e,t,n,r,o,i,s){let a={type:"tableRow",cells:[]},c=p(e,"w","trPr"),u=bn(c);u&&(a.formatting=u),a.propertyChanges=_i(c,u),a.structuralChange=Wi(c);let f=L(e,"w","tc");for(let d of f){let h=Zi(d,t,n,r,o,i,s);a.cells.push(h);}return a}function Ji(e){if(!e)return;let t=[],n=L(e,"w","gridCol");for(let r of n){let o=w(r,"w","w")??0;t.push(o);}if(!(t.length>0&&t.every(r=>r<=0)))return t.length>0?t:void 0}function Yi(e){return e.cells.reduce((t,n)=>t+(n.formatting?.gridSpan??1),0)}function Ki(e){let t=Math.max(e.columnWidths?.length??0,...e.rows.map(n=>Yi(n)));if(!(t<=1))for(let n of e.rows){if(n.cells.length!==1)continue;let r=n.cells[0];(r.formatting?.gridSpan??1)>=t||r.formatting?.vMerge||r.formatting?.gridSpan==null&&(r.formatting={...r.formatting??{},gridSpan:t});}}function Ee(e,t,n,r,o,i,s){let a={type:"table",rows:[]},c=p(e,"w","tblPr"),u=yn(c);u&&(a.formatting=u),a.propertyChanges=ji(c,u);let f=Ji(p(e,"w","tblGrid"));f&&(a.columnWidths=f);let d=L(e,"w","tr");for(let h of d){let g=qi(h,t,n,r,o,i,s);a.rows.push(g);}return Ki(a),a}var Qi={accent1:"accent1",accent2:"accent2",accent3:"accent3",accent4:"accent4",accent5:"accent5",accent6:"accent6",dk1:"dk1",lt1:"lt1",dk2:"dk2",lt2:"lt2",tx1:"text1",tx2:"text2",bg1:"background1",bg2:"background2",hlink:"hlink",folHlink:"folHlink"},Pn={black:"000000",white:"FFFFFF",red:"FF0000",green:"00FF00",blue:"0000FF",yellow:"FFFF00",cyan:"00FFFF",magenta:"FF00FF"};function Fn(e,t){let n=B(t),r=n.find(i=>i.name==="a:shade");if(r){let i=l(r,null,"val");i&&(e.themeShade=Math.round(parseInt(i,10)/1e5*255).toString(16).padStart(2,"0").toUpperCase());}let o=n.find(i=>i.name==="a:tint");if(o){let i=l(o,null,"val");i&&(e.themeTint=Math.round(parseInt(i,10)/1e5*255).toString(16).padStart(2,"0").toUpperCase());}return e}function Sn(e){if(!e)return;let t=B(e),n=t.find(s=>s.name==="a:srgbClr");if(n){let s=l(n,null,"val");if(s)return Fn({rgb:s},n)}let r=t.find(s=>s.name==="a:schemeClr");if(r){let s=l(r,null,"val");if(s){let a={themeColor:Qi[s]??"dk1"};return Fn(a,r)}}let o=t.find(s=>s.name==="a:sysClr");if(o)return {rgb:l(o,null,"lastClr")??"000000"};let i=t.find(s=>s.name==="a:prstClr");if(i){let s=l(i,null,"val");if(s&&Pn[s])return {rgb:Pn[s]}}}function vn(e){if(!e)return;let t=B(e);if(t.find(r=>r.name==="a:noFill"))return {type:"none"};let n=t.find(r=>r.name==="a:solidFill");if(n)return {type:"solid",color:Sn(n)};if(t.find(r=>r.name==="a:gradFill"))return {type:"gradient"}}function In(e){let t=e?N(e,"a:ln"):null;if(!t)return;let n=B(t);if(n.find(a=>a.name==="a:noFill"))return;let r={},o=l(t,null,"w");o&&(r.width=parseInt(o,10));let i=n.find(a=>a.name==="a:solidFill");i&&(r.color=Sn(i));let s=n.find(a=>a.name==="a:prstDash");if(s){let a=l(s,null,"val");a&&(r.style=a);}return r}function Ct(e){if(!e)return;let t=l(e,null,"relativeFrom")??"column",n=N(e,"wp:align");if(n){let o=ne(n);return {relativeTo:t,alignment:o}}let r=N(e,"wp:posOffset");if(r){let o=ne(r),i=parseInt(o,10);return {relativeTo:t,posOffset:isNaN(i)?0:i}}return {relativeTo:t}}function Pt(e){if(!e)return;let t=l(e,null,"relativeFrom")??"paragraph",n=N(e,"wp:align");if(n){let o=ne(n);return {relativeTo:t,alignment:o}}let r=N(e,"wp:posOffset");if(r){let o=ne(r),i=parseInt(o,10);return {relativeTo:t,posOffset:isNaN(i)?0:i}}return {relativeTo:t}}function kn(e){let t=N(e,"wp:positionH"),n=N(e,"wp:positionV");if(!(!t&&!n))return {horizontal:Ct(t)??{relativeTo:"column"},vertical:Pt(n)??{relativeTo:"paragraph"}}}var Ft=["wp:wrapNone","wp:wrapSquare","wp:wrapTight","wp:wrapThrough","wp:wrapTopAndBottom"];function St(e,t,n){if(!e){let h={type:t?"behind":"inFront"};return n?.distT!==void 0&&(h.distT=n.distT),n?.distB!==void 0&&(h.distB=n.distB),n?.distL!==void 0&&(h.distL=n.distL),n?.distR!==void 0&&(h.distR=n.distR),h}let o=(e.name||"").replace("wp:",""),i;switch(o){case "wrapNone":i=t?"behind":"inFront";break;case "wrapSquare":i="square";break;case "wrapTight":i="tight";break;case "wrapThrough":i="through";break;case "wrapTopAndBottom":i="topAndBottom";break;default:i="square";}let s={type:i},a=l(e,null,"wrapText");a&&(s.wrapText=a);let c=w(e,null,"distT")??n?.distT,u=w(e,null,"distB")??n?.distB,f=w(e,null,"distL")??n?.distL,d=w(e,null,"distR")??n?.distR;return c!==void 0&&(s.distT=c),u!==void 0&&(s.distB=u),f!==void 0&&(s.distL=f),d!==void 0&&(s.distR=d),s}function En(e){let t=B(e),n=l(e,null,"behindDoc")==="1",r=t.find(i=>Ft.includes(i.name??"")),o={distT:w(e,null,"distT")??void 0,distB:w(e,null,"distB")??void 0,distL:w(e,null,"distL")??void 0,distR:w(e,null,"distR")??void 0};return St(r??null,n,o)}function es(e){if(!e)return {};let t={},n=w(e,null,"lIns"),r=w(e,null,"rIns"),o=w(e,null,"tIns"),i=w(e,null,"bIns");return (n!==void 0||r!==void 0||o!==void 0||i!==void 0)&&(t.margins={left:n,right:r,top:o,bottom:i}),t}function Mn(e,t,n,r,o,i,s,a){if(!e)return [];let c=[],u=B(e);for(let f of u){let d=f.name||"",h=d.indexOf(":"),g=h>=0?d.substring(h+1):d;if(g==="p"){let m=t(f,r,o,i,s);c.push(m);}}return c}function je(e){let n=B(e).find(a=>a.name==="wp:inline"||a.name==="wp:anchor");if(!n)return false;let r=N(n,"a:graphic");if(!r)return false;let o=N(r,"a:graphicData");if(!o)return false;let i=N(o,"wps:wsp");return i?N(i,"wps:txbx")!==null:false}function $n(e){let n=B(e).find(b=>b.name==="wp:inline"||b.name==="wp:anchor");if(!n)return null;let r=n.name==="wp:anchor",o=N(n,"a:graphic");if(!o)return null;let i=N(o,"a:graphicData");if(!i)return null;let s=N(i,"wps:wsp");if(!s||!N(s,"wps:txbx"))return null;let c=B(s),u=c.find(b=>b.name==="wps:spPr"),f=c.find(b=>b.name==="wps:bodyPr"),d=N(n,"wp:extent"),h=w(d,null,"cx")??0,g=w(d,null,"cy")??0,m={width:h,height:g},y=N(n,"wp:docPr"),T=y?l(y,null,"id")??void 0:void 0,I=vn(u??null),E=In(u??null),v=es(f??null),x={type:"textBox",size:m,content:[]};if(T&&(x.id=T),I&&(x.fill=I),E&&(x.outline=E),v.margins&&(x.margins=v.margins),r){let b=kn(n);b&&(x.position=b);let F=En(n);F&&(x.wrap=F);}return x}function An(e){let t=N(e,"wps:txbx");return t?N(t,"w:txbxContent"):null}var Dn={183:"\u2022",111:"\u25CB",167:"\u25A0",252:"\u2713",110:"\u25A0",113:"\u25CB",117:"\u25C6",118:"\u2756",168:"\u2713",251:"\u2713",254:"\u2713",61623:"\u2022",61550:"\u25A0",61551:"\u25CB",61607:"\u25A0",61692:"\u2713",8226:"\u2022",9679:"\u25CF",9675:"\u25CB",9632:"\u25A0",9633:"\u25A1",9670:"\u25C6",9671:"\u25C7",8211:"\u2013",8212:"\u2014",62:">",45:"-"};function ts(e){if(!e||e.trim()==="")return "\u2022";let t=e.charCodeAt(0);return Dn[t]?Dn[t]:t>=57344&&t<=63743||t<32||t>=127&&t<160?"\u2022":e}function ns(e){let t=e.listRendering;t&&t.isBullet&&(t.marker=ts(t.marker||""));}function rs(e,t,n,r,o,i,s){if(e.content.length===0)return;let a=B(t),c=0;function u(f){if(!je(f))return;let d=$n(f);if(!d)return;let h=ut(f,"wps","wsp");if(h){let T=An(h);T&&(d.content=Mn(T,ie,null,n,r,o,i??void 0));}let g={type:"shape",shapeType:"rect",size:d.size,position:d.position,wrap:d.wrap,fill:d.fill,outline:d.outline,textBody:{content:d.content,margins:d.margins}};d.id&&(g.id=d.id);let m={type:"shape",shape:g},y=c;if(y>=e.content.length){y=-1;for(let T=e.content.length-1;T>=0;T--)if(e.content[T].type==="run"){y=T;break}}if(y>=0){let T=e.content[y];T.type==="run"&&T.content.push(m);}}for(let f of a){if(Q(f.name??"")!=="r")continue;let d=B(f);for(let h of d){let g=Q(h.name??"");if(g==="drawing")u(h);else if(g==="AlternateContent"){let m=B(h),T=m.find(I=>Q(I.name??"")==="Choice")??m.find(I=>Q(I.name??"")==="Fallback");if(T)for(let I of B(T))Q(I.name??"")==="drawing"&&u(I);}}c++;}}function Ce(e,t,n,r,o,i,s){let a=[],c=B(e);for(let u of c){let f=u.name??"";if(f==="w:p"||f.endsWith(":p")){let d=ie(u,t,n,r,o,i,s);rs(d,u,t,n,r,o),ns(d),a.push(d);}else if(f==="w:tbl"||f.endsWith(":tbl")){let d=Ee(u,t,n,r,o,i,s);a.push(d);}else if(f==="w:sdt"||f.endsWith(":sdt")){let d=(u.elements??[]).find(h=>h.type==="element"&&(h.name==="w:sdtContent"||h.name?.endsWith(":sdtContent")));d&&a.push(...Ce(d,t,n,r,o,i,s));}}return a}function Bn(e){switch(e){case "first":return "first";case "even":return "even";default:return "default"}}function Nn(e){let t=l(e,"w","type"),n=l(e,"r","id")??"";return {type:Bn(t),rId:n}}function Xn(e){let t=l(e,"w","type"),n=l(e,"r","id")??"";return {type:Bn(t),rId:n}}function Ln(e,t="default",n=null,r=null,o=null,i=null,s=null){let a={type:"header",hdrFtrType:t,content:[]};if(!e)return a;let c=J(e);if(!c)return a;let u=c.elements?.find(f=>f.type==="element"&&(f.name==="w:hdr"||f.name?.endsWith(":hdr")));return u&&(a.content=Ce(u,n,r,o,i,s,{inHeaderFooter:true})),a}function Hn(e,t="default",n=null,r=null,o=null,i=null,s=null){let a={type:"footer",hdrFtrType:t,content:[]};if(!e)return a;let c=J(e);if(!c)return a;let u=c.elements?.find(f=>f.type==="element"&&(f.name==="w:ftr"||f.name?.endsWith(":ftr")));return u&&(a.content=Ce(u,n,r,o,i,s,{inHeaderFooter:true})),a}function On(e){switch(e){case "separator":return "separator";case "continuationSeparator":return "continuationSeparator";case "continuationNotice":return "continuationNotice";default:return "normal"}}function zn(e,t,n,r,o,i){let s=[];for(let a of B(e)){let c=a.name??"";c==="w:p"?s.push(ie(a,t,n,r,o)):c==="w:tbl"&&s.push(Ee(a,t,n,r,o,i));}return s}function os(e,t,n,r,o,i){let s=w(e,"w","id")??0,a=l(e,"w","type"),c=On(a),u=zn(e,t,n,r,o,i);return {type:"footnote",id:s,noteType:c,content:u}}function jn(e,t=null,n=null,r=null,o=null,i=null){let s=new Map,a=[];if(!e)return _e(s,a);let c=J(e);if(!c)return _e(s,a);let u=c.elements?.find(d=>d.type==="element"&&(d.name==="w:footnotes"||d.name?.endsWith(":footnotes")));if(!u)return _e(s,a);let f=L(u,"w","footnote");for(let d of f){let h=os(d,t,n,r,o,i);s.set(h.id,h),a.push(h);}return _e(s,a)}function _e(e,t){return {byId:e,footnotes:t,getFootnote(n){return e.get(n)},hasFootnote(n){return e.has(n)},getNormalFootnotes(){return t.filter(n=>n.noteType==="normal")},getSeparator(){return t.find(n=>n.noteType==="separator")},getContinuationSeparator(){return t.find(n=>n.noteType==="continuationSeparator")}}}function is(e,t,n,r,o,i){let s=w(e,"w","id")??0,a=l(e,"w","type"),c=On(a),u=zn(e,t,n,r,o,i);return {type:"endnote",id:s,noteType:c,content:u}}function _n(e,t=null,n=null,r=null,o=null,i=null){let s=new Map,a=[];if(!e)return Ve(s,a);let c=J(e);if(!c)return Ve(s,a);let u=c.elements?.find(d=>d.type==="element"&&(d.name==="w:endnotes"||d.name?.endsWith(":endnotes")));if(!u)return Ve(s,a);let f=L(u,"w","endnote");for(let d of f){let h=is(d,t,n,r,o,i);s.set(h.id,h),a.push(h);}return Ve(s,a)}function Ve(e,t){return {byId:e,endnotes:t,getEndnote(n){return e.get(n)},hasEndnote(n){return e.has(n)},getNormalEndnotes(){return t.filter(n=>n.noteType==="normal")},getSeparator(){return t.find(n=>n.noteType==="separator")},getContinuationSeparator(){return t.find(n=>n.noteType==="continuationSeparator")}}}function Vn(e){return e?{decimal:"decimal",upperRoman:"upperRoman",lowerRoman:"lowerRoman",upperLetter:"upperLetter",lowerLetter:"lowerLetter",ordinal:"ordinal",cardinalText:"cardinalText",ordinalText:"ordinalText",bullet:"bullet",chicago:"chicago",none:"none"}[e]:void 0}function ss(e){switch(e){case "pageBottom":return "pageBottom";case "beneathText":return "beneathText";case "sectEnd":return "sectEnd";case "docEnd":return "docEnd";default:return}}function as(e){switch(e){case "sectEnd":return "sectEnd";case "docEnd":return "docEnd";default:return}}function Wn(e){switch(e){case "continuous":return "continuous";case "eachSect":return "eachSect";case "eachPage":return "eachPage";default:return}}function Un(e){let t={};if(!e)return t;let n=p(e,"w","pos");if(n){let s=l(n,"w","val");t.position=ss(s);}let r=p(e,"w","numFmt");if(r){let s=l(r,"w","val");t.numFmt=Vn(s);}let o=p(e,"w","numStart");o&&(t.numStart=w(o,"w","val")??void 0);let i=p(e,"w","numRestart");if(i){let s=l(i,"w","val");t.numRestart=Wn(s);}return t}function Gn(e){let t={};if(!e)return t;let n=p(e,"w","pos");if(n){let s=l(n,"w","val");t.position=as(s);}let r=p(e,"w","numFmt");if(r){let s=l(r,"w","val");t.numFmt=Vn(s);}let o=p(e,"w","numStart");o&&(t.numStart=w(o,"w","val")??void 0);let i=p(e,"w","numRestart");if(i){let s=l(i,"w","val");t.numRestart=Wn(s);}return t}function ls(e,t,n,r){if(!e&&!t)return;let o={};return e&&e!=="auto"?o.rgb=e:e==="auto"&&(o.auto=true),t&&(o.themeColor=t),n&&(o.themeTint=n),r&&(o.themeShade=r),Object.keys(o).length>0?o:void 0}function We(e){if(!e)return;let r={style:l(e,"w","val")??"none"},o=w(e,"w","sz");o!==void 0&&(r.size=o);let i=w(e,"w","space");i!==void 0&&(r.space=i);let s=l(e,"w","color"),a=l(e,"w","themeColor"),c=l(e,"w","themeTint"),u=l(e,"w","themeShade"),f=ls(s,a,c,u);f&&(r.color=f);let d=l(e,"w","shadow");(d==="1"||d==="true")&&(r.shadow=true);let h=l(e,"w","frame");return (h==="1"||h==="true")&&(r.frame=true),r}function cs(e){switch(e){case "landscape":return "landscape";case "portrait":return "portrait";default:return}}function us(e){switch(e){case "continuous":return "continuous";case "nextPage":return "nextPage";case "oddPage":return "oddPage";case "evenPage":return "evenPage";case "nextColumn":return "nextColumn";default:return}}function ps(e){switch(e){case "top":return "top";case "center":return "center";case "both":return "both";case "bottom":return "bottom";default:return}}function fs(e){switch(e){case "continuous":return "continuous";case "newPage":return "newPage";case "newSection":return "newSection";default:return}}function Ue(e,t){let n={};if(!e)return n;let r=p(e,"w","pgSz");if(r){let x=w(r,"w","w");x!==void 0&&(n.pageWidth=x);let b=w(r,"w","h");b!==void 0&&(n.pageHeight=b);let F=l(r,"w","orient"),P=cs(F);P&&(n.orientation=P);}let o=p(e,"w","pgMar");if(o){let x=w(o,"w","top");x!==void 0&&(n.marginTop=x);let b=w(o,"w","bottom");b!==void 0&&(n.marginBottom=b);let F=w(o,"w","left");F!==void 0&&(n.marginLeft=F);let P=w(o,"w","right");P!==void 0&&(n.marginRight=P);let k=w(o,"w","header");k!==void 0&&(n.headerDistance=k);let A=w(o,"w","footer");A!==void 0&&(n.footerDistance=A);let D=w(o,"w","gutter");D!==void 0&&(n.gutter=D);}let i=p(e,"w","cols");if(i){let x=w(i,"w","num");x!==void 0&&(n.columnCount=x);let b=w(i,"w","space");b!==void 0&&(n.columnSpace=b);let F=l(i,"w","equalWidth");F==="1"||F==="true"?n.equalWidth=true:(F==="0"||F==="false")&&(n.equalWidth=false);let P=l(i,"w","sep");(P==="1"||P==="true")&&(n.separator=true);let k=L(i,"w","col");if(k.length>0){n.columns=[];for(let A of k){let D={},X=w(A,"w","w");X!==void 0&&(D.width=X);let O=w(A,"w","space");O!==void 0&&(D.space=O),n.columns.push(D);}n.columnCount===void 0&&(n.columnCount=k.length);}}let s=p(e,"w","type");if(s){let x=l(s,"w","val"),b=us(x);b&&(n.sectionStart=b);}let a=p(e,"w","vAlign");if(a){let x=l(a,"w","val"),b=ps(x);b&&(n.verticalAlign=b);}let c=p(e,"w","bidi");c&&(n.bidi=S(c));let u=L(e,"w","headerReference");u.length>0&&(n.headerReferences=u.map(x=>Nn(x)));let f=L(e,"w","footerReference");f.length>0&&(n.footerReferences=f.map(x=>Xn(x)));let d=p(e,"w","titlePg");d&&(n.titlePg=S(d));let h=p(e,"w","evenAndOddHeaders");h&&(n.evenAndOddHeaders=S(h));let g=p(e,"w","lnNumType");if(g){n.lineNumbers={};let x=w(g,"w","start");x!==void 0&&(n.lineNumbers.start=x);let b=w(g,"w","countBy");b!==void 0&&(n.lineNumbers.countBy=b);let F=w(g,"w","distance");F!==void 0&&(n.lineNumbers.distance=F);let P=l(g,"w","restart"),k=fs(P);k&&(n.lineNumbers.restart=k);}let m=p(e,"w","pgBorders");if(m){n.pageBorders={};let x=We(p(m,"w","top"));x&&(n.pageBorders.top=x);let b=We(p(m,"w","bottom"));b&&(n.pageBorders.bottom=b);let F=We(p(m,"w","left"));F&&(n.pageBorders.left=F);let P=We(p(m,"w","right"));P&&(n.pageBorders.right=P);let k=l(m,"w","display");(k==="allPages"||k==="firstPage"||k==="notFirstPage")&&(n.pageBorders.display=k);let A=l(m,"w","offsetFrom");(A==="page"||A==="text")&&(n.pageBorders.offsetFrom=A);let D=l(m,"w","zOrder");(D==="front"||D==="back")&&(n.pageBorders.zOrder=D);}let y=p(e,"w","background");if(y){n.background={};let x=l(y,"w","color");x&&x!=="auto"&&(n.background.color={rgb:x});let b=l(y,"w","themeColor");b&&(n.background.themeColor=b);let F=l(y,"w","themeTint");F&&(n.background.themeTint=F);let P=l(y,"w","themeShade");P&&(n.background.themeShade=P);}let T=p(e,"w","footnotePr");if(T){let x=Un(T);Object.keys(x).length>0&&(n.footnotePr=x);}let I=p(e,"w","endnotePr");if(I){let x=Gn(I);Object.keys(x).length>0&&(n.endnotePr=x);}let E=p(e,"w","docGrid");if(E){n.docGrid={};let x=l(E,"w","type");(x==="default"||x==="lines"||x==="linesAndChars"||x==="snapToChars")&&(n.docGrid.type=x);let b=w(E,"w","linePitch");b!==void 0&&(n.docGrid.linePitch=b);let F=w(E,"w","charSpace");F!==void 0&&(n.docGrid.charSpace=F);}let v=p(e,"w","paperSrc");if(v){let x=w(v,"w","first");x!==void 0&&(n.paperSrcFirst=x);let b=w(v,"w","other");b!==void 0&&(n.paperSrcOther=b);}return n}function qn(){return {pageWidth:12240,pageHeight:15840,orientation:"portrait",marginTop:1440,marginBottom:1440,marginLeft:1440,marginRight:1440,headerDistance:720,footerDistance:720,gutter:0,columnCount:1,columnSpace:720,equalWidth:true,sectionStart:"nextPage",verticalAlign:"top"}}function Zn(e,t){if(!t||t.length===0)return e;let n=new Set((e??[]).map(o=>o.type)),r=t.filter(o=>!n.has(o.type));return r.length===0?e:[...e??[],...r]}function Jn(e){if(e.length<2)return e;let t=[e[0]];for(let n=1;n<e.length;n++){let r=t[n-1].properties,o=e[n].properties,i=Zn(o.headerReferences,r.headerReferences),s=Zn(o.footerReferences,r.footerReferences),a=o.titlePg!==void 0?o.titlePg:r.titlePg;if(i===o.headerReferences&&s===o.footerReferences&&a===o.titlePg){t.push(e[n]);continue}t.push({...e[n],properties:{...o,headerReferences:i,footerReferences:s,titlePg:a}});}return t}function ds(e,t){return !e&&!t?true:!(!e||!t||e.bold!==t.bold||e.boldCs!==t.boldCs||e.italic!==t.italic||e.italicCs!==t.italicCs||e.strike!==t.strike||e.doubleStrike!==t.doubleStrike||e.smallCaps!==t.smallCaps||e.allCaps!==t.allCaps||e.hidden!==t.hidden||e.emboss!==t.emboss||e.imprint!==t.imprint||e.outline!==t.outline||e.shadow!==t.shadow||e.rtl!==t.rtl||e.cs!==t.cs||e.fontSize!==t.fontSize||e.fontSizeCs!==t.fontSizeCs||e.spacing!==t.spacing||e.position!==t.position||e.scale!==t.scale||e.kerning!==t.kerning||e.vertAlign!==t.vertAlign||e.highlight!==t.highlight||e.effect!==t.effect||e.emphasisMark!==t.emphasisMark||e.styleId!==t.styleId||!ms(e.underline,t.underline)||!Ge(e.color,t.color)||!hs(e.shading,t.shading)||!gs(e.fontFamily,t.fontFamily))}function ms(e,t){return !e&&!t?true:!e||!t||e.style!==t.style?false:Ge(e.color,t.color)}function Ge(e,t){return !e&&!t?true:!e||!t?false:e.rgb===t.rgb&&e.auto===t.auto&&e.themeColor===t.themeColor&&e.themeTint===t.themeTint&&e.themeShade===t.themeShade}function hs(e,t){return !e&&!t?true:!(!e||!t||e.pattern!==t.pattern||!Ge(e.color,t.color)||!Ge(e.fill,t.fill))}function gs(e,t){return !e&&!t?true:!e||!t?false:e.ascii===t.ascii&&e.hAnsi===t.hAnsi&&e.eastAsia===t.eastAsia&&e.cs===t.cs&&e.asciiTheme===t.asciiTheme&&e.hAnsiTheme===t.hAnsiTheme&&e.eastAsiaTheme===t.eastAsiaTheme&&e.csTheme===t.csTheme}function ws(e){return e.type==="text"||e.type==="softHyphen"||e.type==="noBreakHyphen"}function Yn(e){return e.content.length===0?true:e.content.every(ws)}function xs(e,t){let n=[];for(let r of e)n.push(r);if(n.length>0&&t.length>0&&n[n.length-1].type==="text"&&t[0].type==="text"){let r=n[n.length-1],o=t[0];n[n.length-1]={type:"text",text:r.text+o.text,preserveSpace:r.preserveSpace||o.preserveSpace||void 0};for(let i=1;i<t.length;i++)n.push(t[i]);}else for(let r of t)n.push(r);return n}function ys(e){if(e.length<=1)return e;let t=[],n=null;for(let r of e)if(r.content.length!==0){if(n===null){n={...r,content:[...r.content]};continue}Yn(n)&&Yn(r)&&ds(n.formatting,r.formatting)?n={type:"run",formatting:n.formatting,content:xs(n.content,r.content)}:(t.push(n),n={...r,content:[...r.content]});}return n!==null&&t.push(n),t}function It(e){if(e.length<=1)return e;let t=[],n=[];function r(){if(n.length>0){let o=ys(n);t.push(...o),n.length=0;}}for(let o of e)if(o.type==="run")n.push(o);else if(r(),o.type==="hyperlink"){let i={...o,children:It(o.children)};t.push(i);}else t.push(o);return r(),t}function bs(e){if(!e)return;let t=parseInt(e,10);if(!isNaN(t))return t/6e4}function Ts(e,t){let n=B(e);for(let r of n)if(t.includes(r.name||""))return r;return null}function Kn(e){if(!e)return {width:0,height:0};let t=w(e,null,"cx")??0,n=w(e,null,"cy")??0;return {width:t,height:n}}function Qn(e){if(!e)return;let t=w(e,null,"l")??0,n=w(e,null,"t")??0,r=w(e,null,"r")??0,o=w(e,null,"b")??0;if(!(t===0&&n===0&&r===0&&o===0))return {left:t,top:n,right:r,bottom:o}}function er(e){if(!e)return {};let t=l(e,null,"id")??void 0,n=l(e,null,"name")??void 0,r=l(e,null,"descr")??void 0,o=l(e,null,"title")??void 0,i=l(e,null,"decorative")==="1",s=p(e,"a","hlinkClick"),a=s?l(s,"r","id")??void 0:void 0;return {id:t,name:n,alt:r,title:o,decorative:i||void 0,hlinkRId:a}}function tr(e){if(!e)return;let t=l(e,null,"rot"),n=l(e,null,"flipH")==="1",r=l(e,null,"flipV")==="1",o=bs(t);if(o===void 0&&!n&&!r)return;let i={};return o!==void 0&&(i.rotation=o),n&&(i.flipH=true),r&&(i.flipV=true),i}function nr(e){let t=N(e,"a:graphic");if(!t)return {blipFill:null,blip:null};let n=N(t,"a:graphicData");if(!n)return {blipFill:null,blip:null};let r=N(n,"pic:pic");if(!r)return {blipFill:null,blip:null};let o=N(r,"pic:blipFill");return o?{blipFill:o,blip:N(o,"a:blip")}:{blipFill:null,blip:null}}function rr(e){if(!e)return;let t=N(e,"a:srcRect");if(!t)return;let n=c=>{let u=w(t,null,c);if(!(u===void 0||u===0))return u/1e5},r=n("l"),o=n("t"),i=n("r"),s=n("b");if(r===void 0&&o===void 0&&i===void 0&&s===void 0)return;let a={};return r!==void 0&&(a.left=r),o!==void 0&&(a.top=o),i!==void 0&&(a.right=i),s!==void 0&&(a.bottom=s),a}function or(e){if(!e)return;let t=N(e,"a:alphaModFix");if(!t)return;let n=w(t,null,"amt");if(!(n===void 0||n>=1e5))return Math.max(0,Math.min(1,n/1e5))}function ir(e){if(!e)return "";let t=l(e,"r","embed");if(t)return t;let n=l(e,null,"embed");if(n)return n;let r=l(e,"r","link");return r||""}function sr(e){let t=N(e,"a:graphic");if(!t)return null;let n=N(t,"a:graphicData");if(!n)return null;let r=N(n,"pic:pic");if(!r)return null;let o=N(r,"pic:spPr");return o?N(o,"a:xfrm"):null}function Cs(e){if(!e)return e;let t=e.replace(/^\/+/,"");return t.startsWith("media/")?t=`word/${t}`:t.startsWith("word/")||(t=`word/${t}`),t}function Ps(e){let t=e.split(".").pop()?.toLowerCase()??"";return {png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",bmp:"image/bmp",tiff:"image/tiff",tif:"image/tiff",webp:"image/webp",svg:"image/svg+xml",emf:"image/x-emf",wmf:"image/x-wmf"}[t]??"application/octet-stream"}function ar(e,t,n){if(!e||!t)return {};let r=t.get(e);if(!r)return {};let o=r.target;if(!o)return {};let i=Cs(o),s=o.split("/").pop(),a=(c,u)=>{let f=u.toLowerCase();for(let[d,h]of c.entries())if(d.toLowerCase()===f)return h};if(n){let c=a(n,i);if(c)return {src:c.dataUrl||c.base64,mimeType:c.mimeType,filename:s};let u=o.replace(/^\/+/,""),f=a(n,u);if(f)return {src:f.dataUrl||f.base64,mimeType:f.mimeType,filename:s};let d=`word/${u}`,h=a(n,d);if(h)return {src:h.dataUrl||h.base64,mimeType:h.mimeType,filename:s}}return {mimeType:Ps(o),filename:s}}function Fs(e,t,n){let r=N(e,"wp:extent"),o=Kn(r),i=N(e,"wp:effectExtent"),s=Qn(i),a=N(e,"wp:docPr"),c=er(a),{blip:u,blipFill:f}=nr(e),d=ir(u),h=rr(f),g=or(u),m=ar(d,t,n),y=sr(e),T=tr(y),I=w(e,null,"distT")??void 0,E=w(e,null,"distB")??void 0,v=w(e,null,"distL")??void 0,x=w(e,null,"distR")??void 0,b={type:"inline"};I!==void 0&&(b.distT=I),E!==void 0&&(b.distB=E),v!==void 0&&(b.distL=v),x!==void 0&&(b.distR=x);let F={type:"image",rId:d,size:o,wrap:b};if(c.id&&(F.id=c.id),c.alt&&(F.alt=c.alt),c.title&&(F.title=c.title),c.decorative&&(F.decorative=true),m.src&&(F.src=m.src),m.mimeType&&(F.mimeType=m.mimeType),m.filename&&(F.filename=m.filename),s&&(F.padding=s),T&&(F.transform=T),h&&(F.crop=h),g!==void 0&&(F.opacity=g),c.hlinkRId&&t){let P=pt(t,c.hlinkRId);P&&(F.hlinkHref=P);}return F}function Ss(e,t,n){let r=N(e,"wp:extent"),o=Kn(r),i=N(e,"wp:effectExtent"),s=Qn(i),a=N(e,"wp:docPr"),c=er(a),u=l(e,null,"behindDoc")==="1",f=l(e,null,"layoutInCell"),d=f===null?void 0:f==="1",h=l(e,null,"allowOverlap"),g=h===null?void 0:h==="1",m={distT:w(e,null,"distT")??void 0,distB:w(e,null,"distB")??void 0,distL:w(e,null,"distL")??void 0,distR:w(e,null,"distR")??void 0},y=Ts(e,Ft),T=St(y,u,m),I=N(e,"wp:positionH"),E=N(e,"wp:positionV"),v=Ct(I),x=Pt(E),b;(v||x)&&(b={horizontal:v??{relativeTo:"column"},vertical:x??{relativeTo:"paragraph"}});let{blip:F,blipFill:P}=nr(e),k=ir(F),A=rr(P),D=or(F),X=ar(k,t,n),O=sr(e),V=tr(O),H={type:"image",rId:k,size:o,wrap:T};if(c.id&&(H.id=c.id),c.alt&&(H.alt=c.alt),c.title&&(H.title=c.title),c.decorative&&(H.decorative=true),X.src&&(H.src=X.src),X.mimeType&&(H.mimeType=X.mimeType),X.filename&&(H.filename=X.filename),b&&(H.position=b),s&&(H.padding=s),V&&(H.transform=V),A&&(H.crop=A),D!==void 0&&(H.opacity=D),d!==void 0&&(H.layoutInCell=d),g!==void 0&&(H.allowOverlap=g),c.hlinkRId&&t){let G=pt(t,c.hlinkRId);G&&(H.hlinkHref=G);}return H}function vs(e,t,n){if(je(e))return null;let r=B(e);for(let o of r){let i=o.name||"";if(i==="wp:inline"||i==="wp:anchor")return i==="wp:inline"?Fs(o,t,n):Ss(o,t,n)}return null}function lr(e,t,n){return vs(e,t,n)}function cr(e,t,n,r){let o={};return e&&e!=="auto"?o.rgb=e:e==="auto"&&(o.auto=true),t&&(o.themeColor=t),n&&(o.themeTint=n),r&&(o.themeShade=r),o}function Is(e){if(!e)return;let t={},n=l(e,"w","color");n&&n!=="auto"&&(t.color={rgb:n});let r=l(e,"w","fill");r&&r!=="auto"&&(t.fill={rgb:r});let o=l(e,"w","themeFill");o&&(t.fill=t.fill||{},t.fill.themeColor=o);let i=l(e,"w","themeFillTint");i&&t.fill&&(t.fill.themeTint=i);let s=l(e,"w","themeFillShade");s&&t.fill&&(t.fill.themeShade=s);let a=l(e,"w","val");return a&&(t.pattern=a),Object.keys(t).length>0?t:void 0}function qe(e,t,n){if(!e)return;let r={},o=p(e,"w","b");o&&(r.bold=S(o));let i=p(e,"w","bCs");i&&(r.boldCs=S(i));let s=p(e,"w","i");s&&(r.italic=S(s));let a=p(e,"w","iCs");a&&(r.italicCs=S(a));let c=p(e,"w","u");if(c){let $=l(c,"w","val");if($){r.underline={style:$};let Z=l(c,"w","color"),W=l(c,"w","themeColor");(Z||W)&&(r.underline.color=cr(Z,W,l(c,"w","themeTint"),l(c,"w","themeShade")));}}let u=p(e,"w","strike");u&&(r.strike=S(u));let f=p(e,"w","dstrike");f&&(r.doubleStrike=S(f));let d=p(e,"w","vertAlign");if(d){let $=l(d,"w","val");($==="superscript"||$==="subscript"||$==="baseline")&&(r.vertAlign=$);}let h=p(e,"w","smallCaps");h&&(r.smallCaps=S(h));let g=p(e,"w","caps");g&&(r.allCaps=S(g));let m=p(e,"w","vanish");m&&(r.hidden=S(m));let y=p(e,"w","color");y&&(r.color=cr(l(y,"w","val"),l(y,"w","themeColor"),l(y,"w","themeTint"),l(y,"w","themeShade")));let T=p(e,"w","highlight");if(T){let $=l(T,"w","val");$&&(r.highlight=$);}let I=p(e,"w","shd");I&&(r.shading=Is(I));let E=p(e,"w","sz");if(E){let $=w(E,"w","val");$!==void 0&&(r.fontSize=$);}let v=p(e,"w","szCs");if(v){let $=w(v,"w","val");$!==void 0&&(r.fontSizeCs=$);}let x=p(e,"w","rFonts");if(x){r.fontFamily={ascii:l(x,"w","ascii")??void 0,hAnsi:l(x,"w","hAnsi")??void 0,eastAsia:l(x,"w","eastAsia")??void 0,cs:l(x,"w","cs")??void 0};let $=l(x,"w","asciiTheme");$&&(r.fontFamily.asciiTheme=$,t&&!r.fontFamily.ascii&&(r.fontFamily.ascii=te(t,$)));let Z=l(x,"w","hAnsiTheme");Z&&(r.fontFamily.hAnsiTheme=Z,t&&!r.fontFamily.hAnsi&&(r.fontFamily.hAnsi=te(t,Z)));let W=l(x,"w","eastAsiaTheme");W&&(r.fontFamily.eastAsiaTheme=W,t&&!r.fontFamily.eastAsia&&(r.fontFamily.eastAsia=te(t,W)));let st=l(x,"w","cstheme");st&&(r.fontFamily.csTheme=st,t&&!r.fontFamily.cs&&(r.fontFamily.cs=te(t,st)));}let b=p(e,"w","spacing");if(b){let $=w(b,"w","val");$!==void 0&&(r.spacing=$);}let F=p(e,"w","position");if(F){let $=w(F,"w","val");$!==void 0&&(r.position=$);}let P=p(e,"w","w");if(P){let $=w(P,"w","val");$!==void 0&&(r.scale=$);}let k=p(e,"w","kern");if(k){let $=w(k,"w","val");$!==void 0&&(r.kerning=$);}let A=p(e,"w","effect");if(A){let $=l(A,"w","val");$&&(r.effect=$);}let D=p(e,"w","em");if(D){let $=l(D,"w","val");$&&(r.emphasisMark=$);}let X=p(e,"w","emboss");X&&(r.emboss=S(X));let O=p(e,"w","imprint");O&&(r.imprint=S(O));let V=p(e,"w","outline");V&&(r.outline=S(V));let H=p(e,"w","shadow");H&&(r.shadow=S(H));let G=p(e,"w","rtl");G&&(r.rtl=S(G));let j=p(e,"w","cs");j&&(r.cs=S(j));let M=p(e,"w","rStyle");if(M){let $=l(M,"w","val");$&&(r.styleId=$);}return Object.keys(r).length>0?r:void 0}function ks(e){let t=l(e,"w","id"),n=t?parseInt(t,10):0,r=(l(e,"w","author")??"").trim(),o=(l(e,"w","date")??"").trim(),i=(l(e,"w","rsid")??"").trim();return {id:Number.isInteger(n)&&n>=0?n:0,author:r.length>0?r:"Unknown",date:o.length>0?o:void 0,rsid:i.length>0?i:void 0}}function Es(e,t,n,r){if(!e)return;let o=L(e,"w","rPrChange").map(i=>{let s=p(i,"w","rPr");return {type:"runPropertyChange",info:ks(i),previousFormatting:qe(s,t),currentFormatting:r}}).filter(i=>i.previousFormatting||i.currentFormatting);return o.length>0?o:void 0}function Rs(e){let t=ne(e),n=l(e,"xml","space")==="preserve";return {type:"text",text:t,preserveSpace:n||void 0}}function Ms(){return {type:"tab"}}function $s(e){let t=l(e,"w","type"),n=l(e,"w","clear"),r={type:"break"};return (t==="page"||t==="column"||t==="textWrapping")&&(r.breakType=t),(n==="none"||n==="left"||n==="right"||n==="all")&&(r.clear=n),r}function As(e){let t=l(e,"w","font")??"",n=l(e,"w","char")??"";return {type:"symbol",font:t,char:n}}function Ds(e){return {type:"footnoteRef",id:w(e,"w","id")??0}}function Bs(e){return {type:"endnoteRef",id:w(e,"w","id")??0}}function Ns(e){let t=l(e,"w","fldCharType"),n=l(e,"w","fldLock")==="true"||l(e,"w","fldLock")==="1",r=l(e,"w","dirty")==="true"||l(e,"w","dirty")==="1",o="begin";return t==="separate"?o="separate":t==="end"&&(o="end"),{type:"fieldChar",charType:o,fldLock:n||void 0,dirty:r||void 0}}function Xs(e){return {type:"instrText",text:ne(e)}}function ur(e,t,n){let r=lr(e,t??void 0,n??void 0);return r?{type:"drawing",image:r}:null}function Ze(e){if(!e)return "";let t=e.indexOf(":");return t>=0?e.substring(t+1):e}function Ls(e,t,n){let r=[],o=B(e);for(let i of o)switch(Ze(i.name)){case "t":r.push(Rs(i));break;case "tab":r.push(Ms());break;case "br":r.push($s(i));break;case "sym":r.push(As(i));break;case "footnoteReference":r.push(Ds(i));break;case "endnoteReference":r.push(Bs(i));break;case "fldChar":r.push(Ns(i));break;case "instrText":r.push(Xs(i));break;case "softHyphen":r.push({type:"softHyphen"});break;case "noBreakHyphen":r.push({type:"noBreakHyphen"});break;case "drawing":let a=ur(i,t,n);a&&r.push(a);break;case "pict":case "object":break;case "rPr":break;case "lastRenderedPageBreak":break;case "cr":r.push({type:"break",breakType:"textWrapping"});break;case "AlternateContent":{let u=B(i).find(f=>Ze(f.name)==="Choice")??B(i).find(f=>Ze(f.name)==="Fallback");if(u){for(let f of B(u))if(Ze(f.name)==="drawing"){let h=ur(f,t,n);h?.image?.src&&r.push(h);}}break}}return r}function Re(e,t,n,r=null,o=null){let i={type:"run",content:[]},s=p(e,"w","rPr");return s&&(i.formatting=qe(s,n),i.propertyChanges=Es(s,n,t,i.formatting)),i.content=Ls(e,r,o),i}function Hs(e,t,n,r){let o={};return e&&e!=="auto"?o.rgb=e:e==="auto"&&(o.auto=true),t&&(o.themeColor=t),n&&(o.themeTint=n),r&&(o.themeShade=r),o}function Os(e){if(!e)return;let t={},n=l(e,"w","color");n&&n!=="auto"&&(t.color={rgb:n});let r=l(e,"w","fill");r&&r!=="auto"&&(t.fill={rgb:r});let o=l(e,"w","themeFill");o&&(t.fill=t.fill||{},t.fill.themeColor=o);let i=l(e,"w","themeFillTint");i&&t.fill&&(t.fill.themeTint=i);let s=l(e,"w","themeFillShade");s&&t.fill&&(t.fill.themeShade=s);let a=l(e,"w","val");return a&&(t.pattern=a),Object.keys(t).length>0?t:void 0}function Pe(e){if(!e)return;let t=l(e,"w","val");if(!t)return;let n={style:t},r=l(e,"w","color"),o=l(e,"w","themeColor");(r||o)&&(n.color=Hs(r,o,l(e,"w","themeTint"),l(e,"w","themeShade")));let i=w(e,"w","sz");i!==void 0&&(n.size=i);let s=w(e,"w","space");s!==void 0&&(n.space=s);let a=l(e,"w","shadow");a&&(n.shadow=a==="1"||a==="true");let c=l(e,"w","frame");return c&&(n.frame=c==="1"||c==="true"),n}function zs(e){if(!e)return;let t=L(e,"w","tab");if(t.length===0)return;let n=[];for(let r of t){let o=w(r,"w","pos"),i=l(r,"w","val");if(o!==void 0&&i){let s={position:o,alignment:i},a=l(r,"w","leader");a&&(s.leader=a),n.push(s);}}return n.length>0?n:void 0}function js(e){if(!e)return;let t={},n=w(e,"w","w");n!==void 0&&(t.width=n);let r=w(e,"w","h");r!==void 0&&(t.height=r);let o=l(e,"w","hAnchor");(o==="text"||o==="margin"||o==="page")&&(t.hAnchor=o);let i=l(e,"w","vAnchor");(i==="text"||i==="margin"||i==="page")&&(t.vAnchor=i);let s=w(e,"w","x");s!==void 0&&(t.x=s);let a=w(e,"w","y");a!==void 0&&(t.y=a);let c=l(e,"w","xAlign");c&&(t.xAlign=c);let u=l(e,"w","yAlign");u&&(t.yAlign=u);let f=l(e,"w","wrap");return f&&(t.wrap=f),Object.keys(t).length>0?t:void 0}function Je(e,t,n){if(!e)return;let r={},o=p(e,"w","jc");if(o){let P=l(o,"w","val");P&&(r.alignment=P);}let i=p(e,"w","bidi");i&&(r.bidi=S(i));let s=p(e,"w","spacing");if(s){let P=w(s,"w","before");P!==void 0&&(r.spaceBefore=P);let k=w(s,"w","after");k!==void 0&&(r.spaceAfter=k);let A=w(s,"w","line");A!==void 0&&(r.lineSpacing=A);let D={};P!==void 0&&(D.before=true),k!==void 0&&(D.after=true),(D.before||D.after)&&(r.spacingExplicit=D);let X=l(s,"w","lineRule");X&&(r.lineSpacingRule=X);let O=l(s,"w","beforeAutospacing");O&&(r.beforeAutospacing=O==="1"||O==="true");let V=l(s,"w","afterAutospacing");V&&(r.afterAutospacing=V==="1"||V==="true");}let a=p(e,"w","ind");if(a){let P=w(a,"w","left");P!==void 0&&(r.indentLeft=P);let k=w(a,"w","right");k!==void 0&&(r.indentRight=k);let A=w(a,"w","firstLine");A!==void 0&&(r.indentFirstLine=A);let D=w(a,"w","hanging");D!==void 0&&(r.indentFirstLine=-D,r.hangingIndent=true);let X=w(a,"w","start");X!==void 0&&r.indentLeft===void 0&&(r.indentLeft=X);let O=w(a,"w","end");O!==void 0&&r.indentRight===void 0&&(r.indentRight=O);}let c=p(e,"w","pBdr");if(c){let P={},k=Pe(p(c,"w","top"));k&&(P.top=k);let A=Pe(p(c,"w","bottom"));A&&(P.bottom=A);let D=Pe(p(c,"w","left"));D&&(P.left=D);let X=Pe(p(c,"w","right"));X&&(P.right=X);let O=Pe(p(c,"w","between"));O&&(P.between=O);let V=Pe(p(c,"w","bar"));V&&(P.bar=V),Object.keys(P).length>0&&(r.borders=P);}let u=p(e,"w","shd");u&&(r.shading=Os(u));let f=p(e,"w","tabs");f&&(r.tabs=zs(f));let d=p(e,"w","keepNext");d&&(r.keepNext=S(d));let h=p(e,"w","keepLines");h&&(r.keepLines=S(h));let g=p(e,"w","widowControl");g&&(r.widowControl=S(g));let m=p(e,"w","pageBreakBefore");m&&(r.pageBreakBefore=S(m));let y=p(e,"w","contextualSpacing");y&&(r.contextualSpacing=S(y));let T=p(e,"w","numPr");if(T){let P=p(T,"w","numId"),k=p(T,"w","ilvl");if(P||k){if(r.numPr={},P){let A=w(P,"w","val");A!==void 0&&(r.numPr.numId=A);}if(k){let A=w(k,"w","val");A!==void 0&&(r.numPr.ilvl=A);}}}let I=p(e,"w","outlineLvl");if(I){let P=w(I,"w","val");P!==void 0&&(r.outlineLevel=P);}let E=p(e,"w","pStyle");if(E){let P=l(E,"w","val");P&&(r.styleId=P);}let v=p(e,"w","framePr");v&&(r.frame=js(v));let x=p(e,"w","suppressLineNumbers");x&&(r.suppressLineNumbers=S(x));let b=p(e,"w","suppressAutoHyphens");b&&(r.suppressAutoHyphens=S(b));let F=p(e,"w","rPr");return F&&(r.runProperties=qe(F,t)),Object.keys(r).length>0?r:void 0}function _s(e){if(!e)return "";let t=e.indexOf(":");return t>=0?e.substring(t+1):e}function Vs(e){let t=w(e,"w","id")??0,n=l(e,"w","name")??"",r={type:"bookmarkStart",id:t,name:n},o=w(e,"w","colFirst");o!==void 0&&(r.colFirst=o);let i=w(e,"w","colLast");return i!==void 0&&(r.colLast=i),r}function Ws(e){return {type:"bookmarkEnd",id:w(e,"w","id")??0}}function pr(e,t,n=null,r=null,o=null){let i={type:"hyperlink",children:[]},s=l(e,"r","id");if(s&&(i.rId=s,t)){let g=t.get(s);g&&(rn(g),i.href=g.target);}let a=l(e,"w","anchor");a&&(i.anchor=a,i.href||(i.href=`#${a}`));let c=l(e,"w","tooltip");c&&(i.tooltip=c);let u=l(e,"w","tgtFrame");u&&(i.target=u);let f=l(e,"w","history");(f==="1"||f==="true")&&(i.history=true);let d=l(e,"w","docLocation");d&&(i.docLocation=d);let h=B(e);for(let g of h)switch(_s(g.name)){case "r":i.children.push(Re(g,n,r,t,o));break;case "bookmarkStart":i.children.push(Vs(g));break;case "bookmarkEnd":i.children.push(Ws(g));break}return i}function fr(e){let t=w(e,"w","id")??0,n=l(e,"w","name")??"",r={type:"bookmarkStart",id:t,name:n},o=w(e,"w","colFirst");o!==void 0&&(r.colFirst=o);let i=w(e,"w","colLast");return i!==void 0&&(r.colLast=i),r}function dr(e){return {type:"bookmarkEnd",id:w(e,"w","id")??0}}function Us(e){let t={sdtType:"richText"};if(!e||!e.elements)return t;for(let n of e.elements){if(n.type!=="element")continue;switch(n.name?.replace(/^w:/,"")??""){case "alias":t.alias=l(n,"w","val")??void 0;break;case "tag":t.tag=l(n,"w","val")??void 0;break;case "lock":t.lock=l(n,"w","val")??"unlocked";break;case "placeholder":{let o=p(n,"w","docPart");if(o){let i=p(o,"w","val");t.placeholder=i?l(i,"w","val")??void 0:void 0;}break}case "showingPlcHdr":t.showingPlaceholder=true;break;case "text":t.sdtType="plainText";break;case "date":t.sdtType="date",t.dateFormat=l(n,"w","fullDate")??void 0;break;case "dropDownList":t.sdtType="dropdown",t.listItems=mr(n);break;case "comboBox":t.sdtType="comboBox",t.listItems=mr(n);break;case "checkbox":{t.sdtType="checkbox";let o=p(n,"w14","checked")??p(n,"w","checked");t.checked=o?l(o,"w14","val")==="1"||l(o,"w","val")==="1":false;break}case "picture":t.sdtType="picture";break;case "docPartObj":t.sdtType="buildingBlockGallery";break;case "group":t.sdtType="group";break}}return t}function mr(e){let t=[];for(let n of e.elements??[])n.type==="element"&&(n.name==="w:listItem"||n.name?.endsWith(":listItem"))&&t.push({displayText:l(n,"w","displayText")??"",value:l(n,"w","value")??""});return t}function gr(e){let t="";if(e.type==="text"&&typeof e.text=="string")return e.text;if(e.elements)for(let n of e.elements)if((n.name?.replace(/^.*:/,"")??"")==="t"&&n.elements)for(let o of n.elements)o.type==="text"&&typeof o.text=="string"&&(t+=o.text);else t+=gr(n);return t}function $e(e){if(!e)return "";let t=e.indexOf(":");return t>=0?e.substring(t+1):e}function wr(e){let t=new Set(["hyperlink","smartTag","sdt","sdtContent","fldSimple","customXml","ins","del","moveFrom","moveTo"]),n=new Set(["pPr","proofErr","bookmarkStart","bookmarkEnd","commentRangeStart","commentRangeEnd","commentReference","permStart","permEnd","rsidR"]),r=new Set(["t","tab","br","cr","sym","drawing","pict","object","softHyphen","noBreakHyphen","fldChar","instrText","pgNum","separator","continuationSeparator","footnoteRef","endnoteRef","footnoteReference","endnoteReference","ptab","monthShort","monthLong","yearShort","yearLong","dayShort","dayLong"]),o=false;function i(a){for(let c of B(a)){let u=$e(c.name);if(!n.has(u)){if(u==="lastRenderedPageBreak"){o=true;continue}if(u==="r"){for(let f of B(c)){let d=$e(f.name);if(d!=="rPr"){if(d==="lastRenderedPageBreak"){o=true;continue}if(d==="br"&&l(f,"w","type")==="page")return "forced";if(r.has(d))return "visible"}}continue}if(t.has(u)){let f=i(c);if(f!=="continue")return f;continue}return "continue"}}return "continue"}let s=i(e);return s==="forced"?true:s==="visible"?o:false}function hr(e,t){if(!e)return `w:${t}`;let n=e.indexOf(":");return n<0?t:`${e.substring(0,n+1)}${t}`}function xr(e){if(e.type!=="element")return e;let t=$e(e.name),n=e.name;return t==="delText"?n=hr(e.name,"t"):t==="delInstrText"&&(n=hr(e.name,"instrText")),{...e,name:n,elements:e.elements?.map(xr)}}function Me(e){let t=l(e,"w","id"),n=t?parseInt(t,10):0,r=l(e,"w","author"),o=l(e,"w","date"),i=r?.trim()??"",s=o?.trim()??"";return {id:Number.isInteger(n)&&n>=0?n:0,author:i.length>0?i:"Unknown",date:s.length>0?s:void 0}}function Gs(e){return Me(e)}function yr(e,t,n,r){if(!e)return;let o=L(e,"w","pPrChange").map(i=>{let s=p(i,"w","pPr");return {type:"paragraphPropertyChange",info:Gs(i),previousFormatting:Je(s,t),currentFormatting:r}}).filter(i=>i.previousFormatting||i.currentFormatting);return o.length>0?o:void 0}function Zs(e,t,n,r,o){return pr(e,t,n,r,o)}function qs(e){return fr(e)}function Js(e){return dr(e)}function br(e){let t=e.trim().match(/^\\?([A-Z]+)/i);if(!t)return "UNKNOWN";let n=t[1].toUpperCase();return ["PAGE","NUMPAGES","NUMWORDS","NUMCHARS","DATE","TIME","CREATEDATE","SAVEDATE","PRINTDATE","AUTHOR","TITLE","SUBJECT","KEYWORDS","COMMENTS","FILENAME","FILESIZE","TEMPLATE","DOCPROPERTY","DOCVARIABLE","REF","PAGEREF","NOTEREF","HYPERLINK","TOC","TOA","INDEX","SEQ","STYLEREF","AUTONUM","AUTONUMLGL","AUTONUMOUT","IF","MERGEFIELD","NEXT","NEXTIF","ASK","SET","QUOTE","INCLUDETEXT","INCLUDEPICTURE","SYMBOL","ADVANCE","EDITTIME","REVNUM","SECTION","SECTIONPAGES","USERADDRESS","USERNAME","USERINITIALS"].includes(n)?n:"UNKNOWN"}function Ys(e,t,n,r,o){let i=l(e,"w","instr")??"",s=br(i),a={type:"simpleField",instruction:i,fieldType:s,content:[]},c=l(e,"w","fldLock");(c==="1"||c==="true")&&(a.fldLock=true);let u=l(e,"w","dirty");(u==="1"||u==="true")&&(a.dirty=true);let f=B(e);for(let d of f)$e(d.name)==="r"&&a.content.push(Re(d,t,n,r,o));return a}function ge(e,t,n,r,o,i,s="default"){let a=[],c=B(e),u=false,f="",d=[],h=[],g=false,m=false,y=false;for(let T of c){let I=$e(T.name);switch(I){case "r":{let E=s==="deletion"?xr(T):T,v=Re(E,t,n,o,i),x=false,b=false,F=false,P="";for(let k of v.content)k.type==="fieldChar"?k.charType==="begin"?(x=true,k.fldLock&&(m=true),k.dirty&&(y=true)):k.charType==="separate"?b=true:k.charType==="end"&&(F=true):k.type==="instrText"&&(P+=k.text);if(x&&(u=true,g=false,f="",d=[],h=[],m=false,y=false),u){if(P&&(f+=P),b&&(g=true),g&&!F?b||h.push(v):!g&&!x&&d.push(v),F){let k={type:"complexField",instruction:f.trim(),fieldType:br(f),fieldCode:d,fieldResult:h};m&&(k.fldLock=true),y&&(k.dirty=true),a.push(k),u=false;}}else a.push(v);break}case "hyperlink":a.push(Zs(T,o,t,n,i));break;case "bookmarkStart":a.push(qs(T));break;case "bookmarkEnd":a.push(Js(T));break;case "fldSimple":a.push(Ys(T,t,n,o,i));break;case "pPr":break;case "proofErr":case "permStart":case "permEnd":case "customXml":break;case "sdt":{let E=(T.elements??[]).find(x=>x.type==="element"&&(x.name==="w:sdtPr"||x.name?.endsWith(":sdtPr"))),v=(T.elements??[]).find(x=>x.type==="element"&&(x.name==="w:sdtContent"||x.name?.endsWith(":sdtContent")));if(v){let x=ge(v,t,n,null,o,i,s),F={type:"inlineSdt",properties:Us(E??null),content:x.filter(P=>P.type==="run"||P.type==="hyperlink"||P.type==="simpleField"||P.type==="complexField"||P.type==="inlineSdt"||P.type==="mathEquation")};a.push(F);}break}case "ins":{let E=Me(T),v=ge(T,t,n,null,o,i),x={type:"insertion",info:E,content:v.filter(b=>b.type==="run"||b.type==="hyperlink")};a.push(x);break}case "del":{let E=Me(T),v=ge(T,t,n,null,o,i,"deletion"),x={type:"deletion",info:E,content:v.filter(b=>b.type==="run"||b.type==="hyperlink")};a.push(x);break}case "moveFrom":{let E=Me(T),v=ge(T,t,n,null,o,i,"deletion"),x={type:"moveFrom",info:E,content:v.filter(b=>b.type==="run"||b.type==="hyperlink")};a.push(x);break}case "moveTo":{let E=Me(T),v=ge(T,t,n,null,o,i),x={type:"moveTo",info:E,content:v.filter(b=>b.type==="run"||b.type==="hyperlink")};a.push(x);break}case "smartTag":break;case "moveFromRangeStart":{let E=parseInt(l(T,"w","id")??"0",10),v=l(T,"w","name")??"";a.push({type:"moveFromRangeStart",id:E,name:v});break}case "moveFromRangeEnd":{let E=parseInt(l(T,"w","id")??"0",10);a.push({type:"moveFromRangeEnd",id:E});break}case "moveToRangeStart":{let E=parseInt(l(T,"w","id")??"0",10),v=l(T,"w","name")??"";a.push({type:"moveToRangeStart",id:E,name:v});break}case "moveToRangeEnd":{let E=parseInt(l(T,"w","id")??"0",10);a.push({type:"moveToRangeEnd",id:E});break}case "commentRangeStart":{let E=parseInt(l(T,"w","id")??"0",10);a.push({type:"commentRangeStart",id:E});break}case "commentRangeEnd":{let E=parseInt(l(T,"w","id")??"0",10);a.push({type:"commentRangeEnd",id:E});break}case "oMath":case "oMathPara":{let E=I==="oMathPara",v=nn(T),x=gr(T),b={type:"mathEquation",display:E?"block":"inline",ommlXml:v,plainText:x||void 0};a.push(b);break}}}return a}function Ye(e){let t="";for(let n of e.content)if(n.type==="run")for(let r of n.content)r.type==="text"?t+=r.text:r.type==="tab"?t+=" ":r.type==="break"&&(r.breakType==="page"?t+="\f":t+=`
4
+ `);else if(n.type==="hyperlink"){for(let r of n.children)if(r.type==="run")for(let o of r.content)o.type==="text"&&(t+=o.text);}else if(n.type==="simpleField"){for(let r of n.content)if(r.type==="run")for(let o of r.content)o.type==="text"&&(t+=o.text);}else if(n.type==="complexField")for(let r of n.fieldResult)for(let o of r.content)o.type==="text"&&(t+=o.text);return t}function Tr(e){let t=l(e,"w","id");if(t==null)return null;let n=parseInt(t,10);if(Number.isNaN(n))return null;let r=l(e,"w","author")??"",o=l(e,"w","date")??void 0,i={id:n,author:r};return o&&(i.date=o),i}function ie(e,t,n,r,o=null,i=null,s){let a={type:"paragraph",content:[]},c=l(e,"w14","paraId")??l(e,"w","paraId");c&&(a.paraId=c);let u=l(e,"w14","textId")??l(e,"w","textId");u&&(a.textId=u),!s?.inHeaderFooter&&wr(e)&&(a.renderedPageBreakBefore=true);let f=p(e,"w","pPr");if(f){a.formatting=Je(f,n),a.propertyChanges=yr(f,n,t,a.formatting);let g=p(f,"w","rPr");if(g){let y=p(g,"w","ins");if(y){let I=Tr(y);I&&(a.pPrIns=I);}let T=p(g,"w","del");if(T){let I=Tr(T);I&&(a.pPrDel=I);}}let m=p(f,"w","sectPr");m&&(a.sectionProperties=Ue(m));}let d=ge(e,t,n,r,o,i);a.content=It(d);let h=a.formatting?.numPr;if(!h&&a.formatting?.styleId&&t){let g=t.get(a.formatting.styleId);g?.pPr?.numPr&&(h=g.pPr.numPr,a.formatting||(a.formatting={}),a.formatting.numPr=h);}if(h&&r){let{numId:g,ilvl:m=0}=h;if(g!==void 0&&g!==0){let y=r.getLevel(g,m);if(y){let T=[];for(let v=0;v<=m;v+=1){let x=r.getLevel(g,v);T.push(x?.numFmt??"decimal");}let I=r.getInstance(g),E=I?.levelOverrides?.find(v=>v.ilvl===m);if(a.listRendering={level:m,numId:g,marker:y.lvlText,isBullet:y.numFmt==="bullet",numFmt:y.numFmt,markerHidden:y.rPr?.hidden||void 0,markerFontFamily:y.rPr?.fontFamily?.ascii||y.rPr?.fontFamily?.hAnsi||void 0,markerFontSize:y.rPr?.fontSize?y.rPr.fontSize/2:void 0,markerSuffix:y.suffix,levelNumFmts:T,abstractNumId:I?.abstractNumId,startOverride:E?.startOverride},y.pPr){a.formatting||(a.formatting={});let v=f?p(f,"w","ind"):null,x=v!=null&&(l(v,"w","left")!==null||l(v,"w","start")!==null),b=P=>{let k=v?l(v,"w",P):null;if(k===null)return false;let A=parseInt(k,10);return Number.isNaN(A)||A!==0},F=v!=null&&(b("firstLine")||b("hanging"));!x&&y.pPr.indentLeft!==void 0&&(a.formatting.indentLeft=y.pPr.indentLeft),F||(y.pPr.indentFirstLine!==void 0&&(a.formatting.indentFirstLine=y.pPr.indentFirstLine),y.pPr.hangingIndent!==void 0&&(a.formatting.hangingIndent=y.pPr.hangingIndent));}}}}return a}var Cr=/\{([a-zA-Z_][a-zA-Z0-9_\-\.]*)\}/g;function Pr(e){let t=[],n;for(Cr.lastIndex=0;(n=Cr.exec(e))!==null;){let r=n[1].trim();r&&!t.includes(r)&&t.push(r);}return t}function Fr(e){let t=[];for(let n of e)if(n.type==="paragraph"){let r=Ye(n),o=Pr(r);for(let i of o)t.includes(i)||t.push(i);}else if(n.type==="table"){let r=Sr(n);for(let o of r)t.includes(o)||t.push(o);}return t}function Sr(e){let t=[];for(let n of e.rows)for(let r of n.cells)for(let o of r.content)if(o.type==="paragraph"){let i=Ye(o),s=Pr(i);for(let a of s)t.includes(a)||t.push(a);}else if(o.type==="table"){let i=Sr(o);for(let s of i)t.includes(s)||t.push(s);}return t}function Ks(e,t){let n=[],r=[];for(let o of e)r.push(o),o.type==="paragraph"&&o.sectionProperties&&(n.push({properties:o.sectionProperties,content:r}),r=[]);return (r.length>0||n.length===0)&&n.push({properties:t??qn(),content:r}),n}function vr(e,t=null,n=null,r=null,o=null,i=null){let s={content:[]};if(!e)return s;let a=J(e);if(!a)return s;let c=(a.elements??[]).find(h=>h.type==="element"&&(h.name==="w:document"||h.name?.endsWith(":document")));if(!c)return s;let u=p(c,"w","body");if(!u)return s;s.content=Ce(u,t,n,r,o,i);let f=p(u,"w","sectPr");f&&(s.finalSectionProperties=Ue(f));let d=Ks(s.content,s.finalSectionProperties);return s.sections=Jn(d),s.finalSectionProperties&&s.sections.length>0&&(s.finalSectionProperties=s.sections[s.sections.length-1].properties),s}function Qs(e){let t=new Map,n=J(e);if(!n)return t;let r=p(n,"w16cex","commentsExtensible")??n;for(let o of B(r)){if((o.name?.replace(/^.*:/,"")??"")!=="comment")continue;let s=l(o,"w16cex","paraId")??l(o,"w15","paraId")??o.attributes?.["w16cex:paraId"]??o.attributes?.["w15:paraId"],a=l(o,"w16cex","dateUtc")??l(o,"w15","dateUtc")??o.attributes?.["w16cex:dateUtc"]??o.attributes?.["w15:dateUtc"];s&&a&&t.set(String(s).toUpperCase(),String(a));}return t}function ea(e){let t=new Map,n=new Map,r=J(e);if(!r)return {parentByParaId:t,doneByParaId:n};let o=p(r,"w15","commentsEx")??r;for(let i of B(o)){if((i.name?.replace(/^.*:/,"")??"")!=="commentEx")continue;let a=l(i,"w15","paraId")??i.attributes?.["w15:paraId"],c=l(i,"w15","paraIdParent")??i.attributes?.["w15:paraIdParent"],u=l(i,"w15","done")??i.attributes?.["w15:done"];if(a){let f=String(a).toUpperCase();c&&t.set(f,String(c).toUpperCase()),u==="1"&&n.set(f,true);}}return {parentByParaId:t,doneByParaId:n}}function Ir(e,t,n,r,o,i,s){if(!e)return [];let a=J(e);if(!a)return [];let c=i?Qs(i):new Map,u=s?ea(s):null,f=p(a,"w","comments")??a,d=B(f),h=[],g=[];for(let m of d){if((m.name?.replace(/^.*:/,"")??"")!=="comment")continue;let T=parseInt(l(m,"w","id")??"0",10),I=l(m,"w","author")??"Unknown",E=l(m,"w","initials"),v=E!=null?String(E):void 0,x=l(m,"w","date"),b=x!=null?String(x):void 0,F=l(m,"w14","paraId")??m.attributes?.["w14:paraId"]??l(m,"w","paraId"),k=(F?c.get(String(F).toUpperCase()):void 0)??b,A=l(m,"w","done")??m.attributes?.["w:done"],D=A==="1"||A==="true"?true:void 0,X=l(m,"w16cid","parentId")??l(m,"w","parentId")??m.attributes?.["w16cid:parentId"]??m.attributes?.["w:parentId"],O=X!=null?parseInt(String(X),10):void 0,V=[],H="";for(let G of B(m))if((G.name?.replace(/^.*:/,"")??"")==="p"){let M=ie(G,t,n,null,r,o);V.push(M);let $=l(G,"w14","paraId")??G.attributes?.["w14:paraId"];$&&(H=String($).toUpperCase());}D==null&&u&&H&&u.doneByParaId.get(H)&&(D=true),g.push(H),h.push({id:T,author:I,initials:v,date:k,content:V,...D!=null?{done:D}:{},...O!=null&&!isNaN(O)?{parentId:O}:{}});}if(u&&u.parentByParaId.size>0){let m=new Map;for(let y=0;y<h.length;y++){let T=g[y];T&&m.set(T,h[y].id);}for(let y=0;y<h.length;y++){if(h[y].parentId!=null)continue;let T=g[y];if(!T)continue;let I=u.parentByParaId.get(T);if(!I)continue;let E=m.get(I);E!=null&&(h[y]={...h[y],parentId:E});}}return h}var kt=new Set,Ke=new Map;var ta=new Map,na=new Set,kr=new Set;function Mr(e,t){let n=e instanceof Error?e.message:String(e),r=new Error(`[font] ${t}: ${n}`,{cause:e});if(kr.size>0)for(let o of kr)try{o(r);}catch(i){console.error("Font error subscriber threw:",i);}else console.warn(r.message);}function ra(e,t=[400,700],n=["normal","italic"]){let r=encodeURIComponent(e),o=[];for(let s of n){let a=s==="italic"?1:0;for(let c of t)o.push(`${a},${c}`);}o.sort();let i=o.join(";");return `https://fonts.googleapis.com/css2?family=${r}:ital,wght@${i}&display=swap`}async function Rr(e,t){if(typeof document>"u")return false;let n=e.trim();if(kt.has(n))return true;let r=Ke.get(n);if(r)return r;let o=(async()=>{try{let i=ra(n,t?.weights,t?.styles),s=document.createElement("link");return s.rel="stylesheet",s.href=i,await new Promise(c=>{s.onload=()=>c(!0),s.onerror=()=>c(!1),document.head.appendChild(s),setTimeout(()=>c(!1),5e3);})?(await ia(n,3e3),kt.add(n),oa([n]),!0):!1}catch(i){return Mr(i,`failed to load "${n}"`),false}finally{Ke.delete(n),Ke.size===0&&ta.size===0&&(false);}})();return Ke.set(n,o),o}function oa(e){for(let t of na)try{t(e);}catch(n){Mr(n,"load callback threw");}}async function ia(e,t){if("fonts"in document)try{let n=`400 16px "${e}"`;return await Promise.race([document.fonts.load(n),new Promise(r=>setTimeout(r,t))]),document.fonts.check(n)}catch{}return await new Promise(n=>setTimeout(n,100)),true}var sa={Calibri:"Carlito",Cambria:"Caladea",Arial:"Arimo","Times New Roman":"Tinos","Courier New":"Cousine",Garamond:"EB Garamond","Book Antiqua":"EB Garamond",Georgia:"Tinos",Verdana:"Open Sans",Tahoma:"Open Sans","Trebuchet MS":"Source Sans Pro","Century Gothic":"Poppins","Franklin Gothic":"Libre Franklin",Palatino:"EB Garamond","Palatino Linotype":"EB Garamond","Lucida Sans":"Open Sans","Segoe UI":"Open Sans",Impact:"Anton","Comic Sans MS":"Comic Neue",Consolas:"Inconsolata","Lucida Console":"Inconsolata",Monaco:"Fira Code"};function aa(e){let t=e.trim();return sa[t]||t}async function la(e){let t=e.trim(),n=aa(t);if(n!==t){let r=await Rr(n);return r&&kt.add(t),r}return Rr(n)}async function $r(e){let t=[...new Set(e.map(n=>n.trim()))];await Promise.all(t.map(n=>la(n)));}async function Ar(e){if(e instanceof ArrayBuffer)return e;if(e instanceof Uint8Array){let t=new ArrayBuffer(e.byteLength);return new Uint8Array(t).set(e),t}if(e instanceof Blob)return e.arrayBuffer();throw new TypeError(`Unsupported DocxInput type: ${typeof e}`)}async function et(e,t={}){let n=e instanceof ArrayBuffer?e:await Ar(e),{onProgress:r=()=>{},preloadFonts:o=true,parseHeadersFooters:i=true,parseNotes:s=true,detectVariables:a=true}=t,c=[];try{let h=function(j,M){let $=performance.now(),Z=M(),W=performance.now()-$;return d.push({stage:j,ms:W}),W>1e3&&console.warn(`[parseDocx] ${j} took ${Math.round(W)}ms`),Z};var u=h;let f=performance.now(),d=[];async function g(j,M){let $=performance.now(),Z=await M(),W=performance.now()-$;return d.push({stage:j,ms:W}),W>1e3&&console.warn(`[parseDocx] ${j} took ${Math.round(W)}ms`),Z}r("Extracting DOCX...",0);let m=await g("unzip",()=>en(n));r("Extracted DOCX",10),r("Parsing relationships...",10);let y=h("relationships",()=>m.documentRels?Xe(m.documentRels):new Map);r("Parsed relationships",15),r("Parsing theme...",15);let T=h("theme",()=>ln(m.themeXml));r("Parsed theme",20),r("Parsing styles...",20);let I=null,E;h("styles",()=>{m.stylesXml&&(I=wt(m.stylesXml,T),E=dn(m.stylesXml,T));}),r("Parsed styles",30),r("Parsing numbering...",30);let v=h("numbering",()=>mn(m.numberingXml)),x=h("settings",()=>gn(m.settingsXml));r("Parsed numbering",35),r("Processing media files...",35);let b=h("media",()=>ca(m,y));r("Processed media",40),r("Parsing document body...",40);let F={content:[]};h("documentBody",()=>{m.documentXml?F=vr(m.documentXml,I,T,v,y,b):c.push("No document.xml found in DOCX");}),r("Parsed document body",55);let P,k;if(i){r("Parsing headers/footers...",55);let j=h("headersFooters",()=>ua(m,I,T,v,y,b));P=j.headers,k=j.footers,r("Parsed headers/footers",65);}else r("Skipping headers/footers",65);let A,D;if(s){r("Parsing footnotes/endnotes...",65);let j=h("footnotesEndnotes",()=>pa(m,I,T,v,y,b));A=j.footnotes,D=j.endnotes,r("Parsed footnotes/endnotes",75);}else r("Skipping footnotes/endnotes",75);r("Parsing comments...",75);let X=h("comments",()=>Ir(m.commentsXml,I,T,y,b,m.commentsExtensibleXml,m.commentsExtendedXml));X.length>0&&(F.comments=X);let O;a?(r("Detecting template variables...",75),O=h("variables",()=>Fr(F.content)),r("Detected variables",80)):r("Skipping variable detection",80),o?(r("Loading fonts...",80),await g("fonts",()=>fa(T,E,F)),r("Loaded fonts",95)):r("Skipping font loading",95),r("Assembling document...",95);let H={package:{document:F,styles:E,theme:T,numbering:v.definitions,settings:x,headers:P,footers:k,footnotes:A,endnotes:D,relationships:y,media:b},originalBuffer:n,templateVariables:O,warnings:c.length>0?c:void 0},G=performance.now()-f;if(G>2e3){let j=d.filter(M=>M.ms>100).map(M=>`${M.stage}: ${Math.round(M.ms)}ms`).join(", ");console.warn(`[parseDocx] Total: ${Math.round(G)}ms`+(j?` (${j})`:""));}return r("Complete",100),H}catch(f){let d=f instanceof Error?f.message:String(f);throw console.error("[parseDocx] Failed to parse DOCX:",d,f),new Error(`Failed to parse DOCX: ${d}`)}}function ca(e,t){let n=new Map;for(let[r,o]of e.media.entries()){let i=r.split("/").pop()||r,s=tn(r),a=new Uint8Array(o),c="";for(let g=0;g<a.length;g++)c+=String.fromCharCode(a[g]);let u=btoa(c),f=`data:${s};base64,${u}`,d={path:r,filename:i,mimeType:s,data:o,dataUrl:f};n.set(r,d);let h=r.replace(/^word\//,"");h!==r&&n.set(h,d);}return n}function Qe(e,t){let n=t.toLowerCase();for(let[r,o]of e.entries())if(r.toLowerCase()===n)return o}function ua(e,t,n,r,o,i){let s=new Map,a=new Map;for(let[c,u]of o.entries())if(u.type===_.header&&u.target){let f=u.target.split("/").pop()||u.target,d=Qe(e.headers,f);if(d){let h=`word/_rels/${f}.rels`,g=Qe(e.allXml,h),m=g?Xe(g):o,y=Ln(d,"default",t,n,r,m,i);s.set(c,y);}}else if(u.type===_.footer&&u.target){let f=u.target.split("/").pop()||u.target,d=Qe(e.footers,f);if(d){let h=`word/_rels/${f}.rels`,g=Qe(e.allXml,h),m=g?Xe(g):o,y=Hn(d,"default",t,n,r,m,i);a.set(c,y);}}return {headers:s,footers:a}}function pa(e,t,n,r,o,i){let s=jn(e.footnotesXml,t,n,r,o,i),a=_n(e.endnotesXml,t,n,r,o,i);return {footnotes:s.getNormalFootnotes(),endnotes:a.getNormalEndnotes()}}async function fa(e,t,n){let r=new Set;if(e?.fontScheme){let{majorFont:o,minorFont:i}=e.fontScheme;o?.latin&&r.add(o.latin),i?.latin&&r.add(i.latin);}if(t?.docDefaults?.rPr?.fontFamily?.ascii&&r.add(t.docDefaults.rPr.fontFamily.ascii),t?.styles)for(let o of t.styles)o.rPr?.fontFamily?.ascii&&r.add(o.rPr.fontFamily.ascii),o.rPr?.fontFamily?.hAnsi&&r.add(o.rPr.fontFamily.hAnsi);if(n.content){for(let o of n.content)if(o.type==="paragraph")for(let i of o.content)i.type==="run"&&i.formatting?.fontFamily&&(i.formatting.fontFamily.ascii&&r.add(i.formatting.fontFamily.ascii),i.formatting.fontFamily.hAnsi&&r.add(i.formatting.fontFamily.hAnsi));}if(r.size>0)try{await $r(Array.from(r));}catch(o){console.warn("Failed to load some fonts:",o);}}var tt={type:"string",description:"Document ID from a previous docx_load call"},ma={type:"object",properties:{paragraphIndex:{type:"number",description:"Index of the paragraph (0-indexed)"},offset:{type:"number",description:"Character offset within the paragraph"}},required:["paragraphIndex","offset"]},ha={name:"docx_get_variables",description:`List all template variables ({name} format) found in the document.
5
+ Returns variable names without braces, along with their locations (body, headers, footers, etc.).
6
+ Use this to discover what data fields a template document expects.`,inputSchema:{type:"object",properties:{documentId:tt},required:["documentId"]},handler:async(e,t)=>{let{documentId:n}=e,r=t.session.documents.get(n);if(!r)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};try{let o=Ut(r.document);return {content:[{type:"text",text:JSON.stringify({variables:o.variables,count:o.variables.length,totalOccurrences:o.totalOccurrences,byLocation:o.byLocation},null,2)}]}}catch(o){return {isError:true,content:[{type:"text",text:`Failed to detect variables: ${o.message}`}]}}},annotations:{category:"template",readOnly:true,complexity:"low",examples:[{description:"Get all variables from a loaded document",input:{documentId:"doc_123"},output:'{"variables": ["customer_name", "invoice_date"], "count": 2}'}]}},ga={name:"docx_insert_variable",description:`Insert a template variable placeholder ({name}) at a specific position in the document.
7
+ The variable can later be substituted with actual values using docx_apply_template.
8
+ Variable names should follow the pattern: letters, numbers, underscores, starting with a letter.`,inputSchema:{type:"object",properties:{documentId:tt,position:ma,variableName:{type:"string",description:'Variable name without braces (e.g., "customer_name"). Will be inserted as {customer_name}',pattern:"^[a-zA-Z_][a-zA-Z0-9_]*$"}},required:["documentId","position","variableName"]},handler:async(e,t)=>{let{documentId:n,position:r,variableName:o}=e,i=t.session.documents.get(n);if(!i)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};if(!/^[a-zA-Z_][a-zA-Z0-9_\-.]*$/.test(o))return {isError:true,content:[{type:"text",text:`Invalid variable name: ${o}. Must start with letter/underscore and contain only alphanumeric, underscore, hyphen, or dot.`}]};try{let{executeCommand:s}=await Promise.resolve().then(()=>(Mt(),Kr)),a=s(i.document,{type:"insertText",position:r,text:`{${o}}`});return i.document=a,i.lastModified=Date.now(),a.templateVariables||(a.templateVariables=[]),a.templateVariables.includes(o)||a.templateVariables.push(o),{content:[{type:"text",text:JSON.stringify({success:!0,variable:o,insertedAs:`{${o}}`,position:r})}]}}catch(s){return {isError:true,content:[{type:"text",text:`Failed to insert variable: ${s.message}`}]}}},annotations:{category:"template",readOnly:false,complexity:"low",examples:[{description:"Insert customer name variable at start of first paragraph",input:{documentId:"doc_123",position:{paragraphIndex:0,offset:0},variableName:"customer_name"}}]}},wa={name:"docx_apply_template",description:`Substitute template variables with actual values in the document.
9
+ Replaces all {variable} placeholders with the corresponding values provided.
10
+ Preserves all formatting (fonts, styles, colors, tables).
11
+ Use docx_get_variables first to discover what variables exist in the document.`,inputSchema:{type:"object",properties:{documentId:tt,variables:{type:"object",description:'Map of variable names to values (e.g., {"customer_name": "John Doe", "date": "2024-01-15"})',additionalProperties:{type:"string"}},keepUnmatchedVariables:{type:"boolean",description:"If true, keep {variable} placeholders for variables not in the map. If false, replace with empty string. Default: true",default:true}},required:["documentId","variables"]},handler:async(e,t)=>{let{documentId:n,variables:r,keepUnmatchedVariables:o=true}=e,i=t.session.documents.get(n);if(!i)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};if(!i.buffer)return {isError:true,content:[{type:"text",text:"Cannot apply template: document was not loaded from a DOCX buffer"}]};try{let s=Yt(i.buffer,r,{nullGetter:o?"keep":"empty"}),a=await et(s.buffer);return i.document=a,i.buffer=s.buffer,i.lastModified=Date.now(),{content:[{type:"text",text:JSON.stringify({success:!0,replacedVariables:s.replacedVariables,unreplacedVariables:s.unreplacedVariables,warnings:s.warnings})}]}}catch(s){return {isError:true,content:[{type:"text",text:`Failed to apply template: ${s.message}`}]}}},annotations:{category:"template",readOnly:false,complexity:"medium",examples:[{description:"Fill in customer and date values",input:{documentId:"doc_123",variables:{customer_name:"Jane Smith",invoice_date:"2024-02-15",amount:"$1,234.56"}}}]}},xa={name:"docx_validate_template",description:`Validate that a document is a valid docxtemplater template.
12
+ Checks for syntax errors like unclosed braces, invalid tag names, etc.
13
+ Returns validation result with any errors found and list of valid tags.`,inputSchema:{type:"object",properties:{documentId:tt},required:["documentId"]},handler:async(e,t)=>{let{documentId:n}=e,r=t.session.documents.get(n);if(!r)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};if(!r.buffer)return {isError:true,content:[{type:"text",text:"Cannot validate template: document was not loaded from a DOCX buffer"}]};try{let o=Kt(r.buffer);return {content:[{type:"text",text:JSON.stringify({valid:o.valid,tags:o.tags,errors:o.errors.map(i=>({message:i.message,variable:i.variable,type:i.type}))},null,2)}]}}catch(o){return {isError:true,content:[{type:"text",text:`Failed to validate template: ${o.message}`}]}}},annotations:{category:"template",readOnly:true,complexity:"low"}},Qr=[ha,ga,wa,xa];var eo={id:"docxtemplater",name:"Docxtemplater",version:"1.0.0",description:"Template variable support using standard docxtemplater syntax ({variable})",commandHandlers:{insertTemplateVariable:zt,replaceWithTemplateVariable:jt},mcpTools:Qr};Ne();function R(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;")}function C(e){return e==null||!Number.isFinite(e)?"0":String(Math.round(e))}var to=1e5;function At(){to=1e5;}function no(e){return e!=null&&e!==""&&e!==0?String(e):String(to++)}function $t(e){if(!e)return "";if(e.rgb)return `<a:srgbClr val="${e.rgb.replace("#","")}"/>`;if(e.themeColor){let t=`<a:schemeClr val="${e.themeColor}"`;return e.themeTint?t+=`><a:tint val="${e.themeTint}"/></a:schemeClr>`:e.themeShade?t+=`><a:shade val="${e.themeShade}"/></a:schemeClr>`:t+="/>",t}return ""}function ya(e){if(!e||e.type==="none")return "<a:noFill/>";if(e.type==="solid"&&e.color)return `<a:solidFill>${$t(e.color)}</a:solidFill>`;if(e.type==="gradient"&&e.gradient){let t=e.gradient,n=t.stops.map(o=>`<a:gs pos="${o.position}">${$t(o.color)}</a:gs>`).join(""),r=t.type==="linear"?`<a:lin ang="${(t.angle||0)*6e4}" scaled="1"/>`:"";return `<a:gradFill><a:gsLst>${n}</a:gsLst>${r}</a:gradFill>`}return ""}function ro(e){if(!e)return "";let t=[];e.width!=null&&t.push(`w="${e.width}"`),e.cap&&t.push(`cap="${e.cap}"`);let n=[];return e.color&&n.push(`<a:solidFill>${$t(e.color)}</a:solidFill>`),e.style&&e.style!=="solid"&&n.push(`<a:prstDash val="${e.style}"/>`),e.headEnd&&n.push(`<a:headEnd type="${e.headEnd.type}"${e.headEnd.width?` w="${e.headEnd.width}"`:""}${e.headEnd.length?` len="${e.headEnd.length}"`:""}/>`),e.tailEnd&&n.push(`<a:tailEnd type="${e.tailEnd.type}"${e.tailEnd.width?` w="${e.tailEnd.width}"`:""}${e.tailEnd.length?` len="${e.tailEnd.length}"`:""}/>`),n.length===0&&t.length===0?"":`<a:ln${t.length?" "+t.join(" "):""}>${n.join("")}</a:ln>`}function oo(e){let t=[],n=e.horizontal;t.push(`<wp:positionH relativeFrom="${n.relativeTo}">`),n.alignment?t.push(`<wp:align>${n.alignment}</wp:align>`):t.push(`<wp:posOffset>${C(n.posOffset)}</wp:posOffset>`),t.push("</wp:positionH>");let r=e.vertical;return t.push(`<wp:positionV relativeFrom="${r.relativeTo}">`),r.alignment?t.push(`<wp:align>${r.alignment}</wp:align>`):t.push(`<wp:posOffset>${C(r.posOffset)}</wp:posOffset>`),t.push("</wp:positionV>"),t.join("")}function io(e){let t=e.wrapText?` wrapText="${e.wrapText}"`:' wrapText="bothSides"';switch(e.type){case "square":return `<wp:wrapSquare${t}/>`;case "tight":return `<wp:wrapTight${t}><wp:wrapPolygon edited="0"><wp:start x="0" y="0"/><wp:lineTo x="0" y="21600"/><wp:lineTo x="21600" y="21600"/><wp:lineTo x="21600" y="0"/><wp:lineTo x="0" y="0"/></wp:wrapPolygon></wp:wrapTight>`;case "through":return `<wp:wrapThrough${t}><wp:wrapPolygon edited="0"><wp:start x="0" y="0"/><wp:lineTo x="0" y="21600"/><wp:lineTo x="21600" y="21600"/><wp:lineTo x="21600" y="0"/><wp:lineTo x="0" y="0"/></wp:wrapPolygon></wp:wrapThrough>`;case "topAndBottom":return "<wp:wrapTopAndBottom/>";case "behind":case "inFront":return "<wp:wrapNone/>";default:return "<wp:wrapNone/>"}}function ba(e,t){let n=e.size.width,r=e.size.height,o=e.rId||"rId1",i=t,s=e.filename||`image${i}`,a="";e.transform?.rotation&&(a+=` rot="${Math.round(e.transform.rotation*6e4)}"`),e.transform?.flipH&&(a+=' flipH="1"'),e.transform?.flipV&&(a+=' flipV="1"');let c=e.opacity!==void 0&&e.opacity<1?`<a:alphaModFix amt="${Math.round(Math.max(0,Math.min(1,e.opacity))*1e5)}"/>`:"",u=c?`<a:blip r:embed="${o}">${c}</a:blip>`:`<a:blip r:embed="${o}"/>`,f=[];e.crop?.left&&f.push(`l="${Math.round(e.crop.left*1e5)}"`),e.crop?.top&&f.push(`t="${Math.round(e.crop.top*1e5)}"`),e.crop?.right&&f.push(`r="${Math.round(e.crop.right*1e5)}"`),e.crop?.bottom&&f.push(`b="${Math.round(e.crop.bottom*1e5)}"`);let d=f.length>0?`<a:srcRect ${f.join(" ")}/>`:"";return ['<a:graphic xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">','<a:graphicData uri="http://schemas.openxmlformats.org/drawingml/2006/picture">','<pic:pic xmlns:pic="http://schemas.openxmlformats.org/drawingml/2006/picture">',"<pic:nvPicPr>",`<pic:cNvPr id="${i}" name="${R(s)}"${e.alt?` descr="${R(e.alt)}"`:""}/>`,"<pic:cNvPicPr/>","</pic:nvPicPr>","<pic:blipFill>",u,d,"<a:stretch><a:fillRect/></a:stretch>","</pic:blipFill>","<pic:spPr>",`<a:xfrm${a}>`,'<a:off x="0" y="0"/>',`<a:ext cx="${C(n)}" cy="${C(r)}"/>`,"</a:xfrm>",'<a:prstGeom prst="rect"><a:avLst/></a:prstGeom>',e.outline?ro(e.outline):"","</pic:spPr>","</pic:pic>","</a:graphicData>","</a:graphic>"].join("")}function so(e){let t=e.image,n=t.wrap.type!=="inline",r=t.size.width,o=t.size.height,i=t.wrap.distT??0,s=t.wrap.distB??0,a=t.wrap.distL??0,c=t.wrap.distR??0,u=t.padding?.left??0,f=t.padding?.top??0,d=t.padding?.right??0,h=t.padding?.bottom??0,g=`<wp:effectExtent l="${C(u)}" t="${C(f)}" r="${C(d)}" b="${C(h)}"/>`,m=no(t.id),y=t.title||t.filename||`Picture ${m}`,T=ba(t,m);if(!n)return ["<w:drawing>",`<wp:inline distT="${C(i)}" distB="${C(s)}" distL="${C(a)}" distR="${C(c)}">`,`<wp:extent cx="${C(r)}" cy="${C(o)}"/>`,g,`<wp:docPr id="${m}" name="${R(y)}"${t.alt?` descr="${R(t.alt)}"`:""}${t.decorative?' hidden="1"':""}/>`,'<wp:cNvGraphicFramePr><a:graphicFrameLocks xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" noChangeAspect="1"/></wp:cNvGraphicFramePr>',T,"</wp:inline>","</w:drawing>"].join("");let I=t.wrap.type==="behind"?"1":"0",E=t.position?oo(t.position):'<wp:positionH relativeFrom="column"><wp:posOffset>0</wp:posOffset></wp:positionH><wp:positionV relativeFrom="paragraph"><wp:posOffset>0</wp:posOffset></wp:positionV>',v=io(t.wrap);return ["<w:drawing>",`<wp:anchor distT="${C(i)}" distB="${C(s)}" distL="${C(a)}" distR="${C(c)}" simplePos="0" relativeHeight="251658240" behindDoc="${I}" locked="0" layoutInCell="${t.layoutInCell===false?"0":"1"}" allowOverlap="${t.allowOverlap===false?"0":"1"}">`,'<wp:simplePos x="0" y="0"/>',E,`<wp:extent cx="${C(r)}" cy="${C(o)}"/>`,g,v,`<wp:docPr id="${m}" name="${R(y)}"${t.alt?` descr="${R(t.alt)}"`:""}/>`,'<wp:cNvGraphicFramePr><a:graphicFrameLocks xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" noChangeAspect="1"/></wp:cNvGraphicFramePr>',T,"</wp:anchor>","</w:drawing>"].join("")}function Ta(e){return e.map(t=>fe(t)).join("")}function ao(e){let t=e.shape,n=t.size.width,r=t.size.height,o=t.shapeType==="textBox",i=t.wrap&&t.wrap.type!=="inline",s=t.wrap?.distT??0,a=t.wrap?.distB??0,c=t.wrap?.distL??0,u=t.wrap?.distR??0,f=no(t.id),d=t.name||(o?`TextBox ${f}`:`Shape ${f}`),h="";t.transform?.rotation&&(h+=` rot="${Math.round(t.transform.rotation*6e4)}"`),t.transform?.flipH&&(h+=' flipH="1"'),t.transform?.flipV&&(h+=' flipV="1"');let g=["<wps:spPr>",`<a:xfrm${h}>`,'<a:off x="0" y="0"/>',`<a:ext cx="${C(n)}" cy="${C(r)}"/>`,"</a:xfrm>",`<a:prstGeom prst="${t.shapeType==="textBox"?"rect":t.shapeType}"><a:avLst/></a:prstGeom>`,ya(t.fill),ro(t.outline),"</wps:spPr>"].join(""),m="";if(t.textBody){let x=t.textBody,b=['rot="0"','vert="horz"'];x.anchor&&b.push(`anchor="${x.anchor==="middle"?"ctr":x.anchor}"`),x.anchorCenter&&b.push('anchorCtr="1"'),x.margins&&(x.margins.left!=null&&b.push(`lIns="${C(x.margins.left)}"`),x.margins.top!=null&&b.push(`tIns="${C(x.margins.top)}"`),x.margins.right!=null&&b.push(`rIns="${C(x.margins.right)}"`),x.margins.bottom!=null&&b.push(`bIns="${C(x.margins.bottom)}"`)),o?m=["<wps:txbx><w:txbxContent>",Ta(x.content),"</w:txbxContent></wps:txbx>",`<wps:bodyPr ${b.join(" ")}/>`].join(""):m=[`<wps:bodyPr ${b.join(" ")}/>`].join("");}let T=['<a:graphic xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main">','<a:graphicData uri="http://schemas.microsoft.com/office/word/2010/wordprocessingShape">',["<wps:wsp>",`<wps:cNvSpPr${o?' txBox="1"':""}/>`,g,m,"</wps:wsp>"].join(""),"</a:graphicData>","</a:graphic>"].join("");if(!i)return ["<w:drawing>",`<wp:inline distT="${C(s)}" distB="${C(a)}" distL="${C(c)}" distR="${C(u)}">`,`<wp:extent cx="${C(n)}" cy="${C(r)}"/>`,'<wp:effectExtent l="0" t="0" r="0" b="0"/>',`<wp:docPr id="${f}" name="${R(d)}"/>`,"<wp:cNvGraphicFramePr/>",T,"</wp:inline>","</w:drawing>"].join("");let I=t.wrap?.type==="behind"?"1":"0",E=t.position?oo(t.position):'<wp:positionH relativeFrom="column"><wp:posOffset>0</wp:posOffset></wp:positionH><wp:positionV relativeFrom="paragraph"><wp:posOffset>0</wp:posOffset></wp:positionV>',v=io(t.wrap);return ["<w:drawing>",`<wp:anchor distT="${C(s)}" distB="${C(a)}" distL="${C(c)}" distR="${C(u)}" simplePos="0" relativeHeight="251658240" behindDoc="${I}" locked="0" layoutInCell="1" allowOverlap="1">`,'<wp:simplePos x="0" y="0"/>',E,`<wp:extent cx="${C(n)}" cy="${C(r)}"/>`,'<wp:effectExtent l="0" t="0" r="0" b="0"/>',v,`<wp:docPr id="${f}" name="${R(d)}"/>`,"<wp:cNvGraphicFramePr/>",T,"</wp:anchor>","</w:drawing>"].join("")}var Ca=new Set(["black","blue","cyan","darkBlue","darkCyan","darkGray","darkGreen","darkMagenta","darkRed","darkYellow","green","lightGray","magenta","red","white","yellow"]);function Pa(e){if(!e)return "";let t=[];return e.auto?t.push('w:val="auto"'):e.rgb&&t.push(`w:val="${e.rgb}"`),e.themeColor&&t.push(`w:themeColor="${e.themeColor}"`),e.themeTint&&t.push(`w:themeTint="${e.themeTint}"`),e.themeShade&&t.push(`w:themeShade="${e.themeShade}"`),t.length===0?"":`<w:color ${t.join(" ")}/>`}function Fa(e){if(!e)return "";let t=[];return e.pattern?t.push(`w:val="${e.pattern}"`):t.push('w:val="clear"'),e.color?.rgb?t.push(`w:color="${e.color.rgb}"`):e.color?.auto&&t.push('w:color="auto"'),e.fill?.rgb?t.push(`w:fill="${e.fill.rgb}"`):e.fill?.auto&&t.push('w:fill="auto"'),e.fill?.themeColor&&t.push(`w:themeFill="${e.fill.themeColor}"`),e.fill?.themeTint&&t.push(`w:themeFillTint="${e.fill.themeTint}"`),e.fill?.themeShade&&t.push(`w:themeFillShade="${e.fill.themeShade}"`),t.length===0?"":`<w:shd ${t.join(" ")}/>`}function we(e){if(!e)return "";let t=[];if(e.styleId&&t.push(`<w:rStyle w:val="${R(e.styleId)}"/>`),e.fontFamily){let o=[];e.fontFamily.ascii&&o.push(`w:ascii="${R(e.fontFamily.ascii)}"`),e.fontFamily.hAnsi&&o.push(`w:hAnsi="${R(e.fontFamily.hAnsi)}"`),e.fontFamily.eastAsia&&o.push(`w:eastAsia="${R(e.fontFamily.eastAsia)}"`),e.fontFamily.cs&&o.push(`w:cs="${R(e.fontFamily.cs)}"`),e.fontFamily.asciiTheme&&o.push(`w:asciiTheme="${e.fontFamily.asciiTheme}"`),e.fontFamily.hAnsiTheme&&o.push(`w:hAnsiTheme="${e.fontFamily.hAnsiTheme}"`),e.fontFamily.eastAsiaTheme&&o.push(`w:eastAsiaTheme="${e.fontFamily.eastAsiaTheme}"`),e.fontFamily.csTheme&&o.push(`w:csTheme="${e.fontFamily.csTheme}"`),o.length>0&&t.push(`<w:rFonts ${o.join(" ")}/>`);}e.bold===true?t.push("<w:b/>"):e.bold===false&&t.push('<w:b w:val="0"/>'),e.boldCs===true?t.push("<w:bCs/>"):e.boldCs===false&&t.push('<w:bCs w:val="0"/>'),e.italic===true?t.push("<w:i/>"):e.italic===false&&t.push('<w:i w:val="0"/>'),e.italicCs===true?t.push("<w:iCs/>"):e.italicCs===false&&t.push('<w:iCs w:val="0"/>'),e.allCaps&&t.push("<w:caps/>"),e.smallCaps&&t.push("<w:smallCaps/>"),e.strike&&t.push("<w:strike/>"),e.doubleStrike&&t.push("<w:dstrike/>"),e.outline&&t.push("<w:outline/>"),e.shadow&&t.push("<w:shadow/>"),e.emboss&&t.push("<w:emboss/>"),e.imprint&&t.push("<w:imprint/>"),e.hidden&&t.push("<w:vanish/>");let n=Pa(e.color);if(n&&t.push(n),e.spacing!==void 0&&t.push(`<w:spacing w:val="${C(e.spacing)}"/>`),e.scale!==void 0&&t.push(`<w:w w:val="${C(e.scale)}"/>`),e.kerning!==void 0&&t.push(`<w:kern w:val="${C(e.kerning)}"/>`),e.position!==void 0&&t.push(`<w:position w:val="${C(e.position)}"/>`),e.fontSize!==void 0&&t.push(`<w:sz w:val="${C(e.fontSize)}"/>`),e.fontSizeCs!==void 0&&t.push(`<w:szCs w:val="${C(e.fontSizeCs)}"/>`),e.highlight&&e.highlight!=="none"){if(Ca.has(e.highlight))t.push(`<w:highlight w:val="${e.highlight}"/>`);else if(!e.shading){let o=e.highlight.replace(/^#/,"");/^[0-9a-fA-F]{6}$/.test(o)&&t.push(`<w:shd w:val="clear" w:color="auto" w:fill="${o}"/>`);}}if(e.underline){let o=[`w:val="${e.underline.style}"`];e.underline.color&&(e.underline.color.rgb&&o.push(`w:color="${e.underline.color.rgb}"`),e.underline.color.themeColor&&o.push(`w:themeColor="${e.underline.color.themeColor}"`),e.underline.color.themeTint&&o.push(`w:themeTint="${e.underline.color.themeTint}"`),e.underline.color.themeShade&&o.push(`w:themeShade="${e.underline.color.themeShade}"`)),t.push(`<w:u ${o.join(" ")}/>`);}e.effect&&e.effect!=="none"&&t.push(`<w:effect w:val="${e.effect}"/>`),e.emphasisMark&&e.emphasisMark!=="none"&&t.push(`<w:em w:val="${e.emphasisMark}"/>`);let r=Fa(e.shading);return r&&t.push(r),e.vertAlign&&e.vertAlign!=="baseline"&&t.push(`<w:vertAlign w:val="${e.vertAlign}"/>`),e.rtl&&t.push("<w:rtl/>"),e.cs&&t.push("<w:cs/>"),t.length===0?"":`<w:rPr>${t.join("")}</w:rPr>`}function Sa(e){return !e.startsWith("<w:rPr>")||!e.endsWith("</w:rPr>")?"":e.slice(7,-8)}function va(e){let t=Number.isInteger(e.info.id)&&e.info.id>=0?e.info.id:0,n=typeof e.info.author=="string"?e.info.author.trim():"",r=n.length>0?n:"Unknown",o=typeof e.info.date=="string"?e.info.date.trim():void 0,i=[`w:id="${t}"`,`w:author="${R(r)}"`];o&&i.push(`w:date="${R(o)}"`);let s=we(e.previousFormatting)||"<w:rPr/>";return `<w:rPrChange ${i.join(" ")}>${s}</w:rPrChange>`}function Ia(e,t){let n=we(e),r=n?Sa(n):"",o=(t??[]).map(va).join(""),i=`${r}${o}`;return i?`<w:rPr>${i}</w:rPr>`:""}function ka(e){return `<w:t${e.preserveSpace||e.text.startsWith(" ")||e.text.endsWith(" ")||e.text.includes(" ")?' xml:space="preserve"':""}>${R(e.text)}</w:t>`}function Ea(e){return "<w:tab/>"}function Ra(e){let t=[];return e.breakType==="page"?t.push('w:type="page"'):e.breakType==="column"?t.push('w:type="column"'):e.breakType==="textWrapping"&&(t.push('w:type="textWrapping"'),e.clear&&e.clear!=="none"&&t.push(`w:clear="${e.clear}"`)),t.length===0?"<w:br/>":`<w:br ${t.join(" ")}/>`}function Ma(e){return `<w:sym w:font="${R(e.font)}" w:char="${R(e.char)}"/>`}function $a(e){return e.type==="footnoteRef"?`<w:footnoteReference w:id="${e.id}"/>`:`<w:endnoteReference w:id="${e.id}"/>`}function Aa(e){let t=[`w:fldCharType="${e.charType}"`];return e.fldLock&&t.push('w:fldLock="true"'),e.dirty&&t.push('w:dirty="true"'),`<w:fldChar ${t.join(" ")}/>`}function Da(e){return `<w:instrText${e.text.startsWith(" ")||e.text.endsWith(" ")||e.text.includes(" ")?' xml:space="preserve"':""}>${R(e.text)}</w:instrText>`}function Ba(e){return "<w:softHyphen/>"}function Na(e){return "<w:noBreakHyphen/>"}function Xa(e){switch(e.type){case "text":return ka(e);case "tab":return Ea();case "break":return Ra(e);case "symbol":return Ma(e);case "footnoteRef":case "endnoteRef":return $a(e);case "fieldChar":return Aa(e);case "instrText":return Da(e);case "softHyphen":return Ba();case "noBreakHyphen":return Na();case "drawing":return so(e);case "shape":return ao(e);default:return ""}}function se(e){let t=[],n=Ia(e.formatting,e.propertyChanges);n&&t.push(n);for(let r of e.content){let o=Xa(r);o&&t.push(o);}return `<w:r>${t.join("")}</w:r>`}function La(e,t){if(!e||e.style==="none"||e.style==="nil")return "";let n=[`w:val="${e.style}"`];return e.size!==void 0&&n.push(`w:sz="${C(e.size)}"`),e.space!==void 0&&n.push(`w:space="${C(e.space)}"`),e.color&&(e.color.auto?n.push('w:color="auto"'):e.color.rgb&&n.push(`w:color="${e.color.rgb}"`),e.color.themeColor&&n.push(`w:themeColor="${e.color.themeColor}"`),e.color.themeTint&&n.push(`w:themeTint="${e.color.themeTint}"`),e.color.themeShade&&n.push(`w:themeShade="${e.color.themeShade}"`)),e.shadow&&n.push('w:shadow="true"'),e.frame&&n.push('w:frame="true"'),`<w:${t} ${n.join(" ")}/>`}var Ha=["top","left","bottom","right","between","bar"];function lo(e){if(!e)return "";let t=[];for(let n of Ha){let r=La(e[n],n);r&&t.push(r);}return t.length===0?"":`<w:pBdr>${t.join("")}</w:pBdr>`}function co(e){if(!e)return "";let t=[];return e.pattern?t.push(`w:val="${e.pattern}"`):t.push('w:val="clear"'),e.color?.rgb?t.push(`w:color="${e.color.rgb}"`):e.color?.auto&&t.push('w:color="auto"'),e.fill?.rgb?t.push(`w:fill="${e.fill.rgb}"`):e.fill?.auto&&t.push('w:fill="auto"'),e.fill?.themeColor&&t.push(`w:themeFill="${e.fill.themeColor}"`),e.fill?.themeTint&&t.push(`w:themeFillTint="${e.fill.themeTint}"`),e.fill?.themeShade&&t.push(`w:themeFillShade="${e.fill.themeShade}"`),t.length===0?"":`<w:shd ${t.join(" ")}/>`}function uo(e){return !e||e.length===0?"":`<w:tabs>${e.map(n=>{let r=[`w:val="${n.alignment}"`,`w:pos="${C(n.position)}"`];return n.leader&&n.leader!=="none"&&r.push(`w:leader="${n.leader}"`),`<w:tab ${r.join(" ")}/>`}).join("")}</w:tabs>`}function po(e){let t=[];return e.spaceBefore!==void 0&&t.push(`w:before="${C(e.spaceBefore)}"`),e.spaceAfter!==void 0&&t.push(`w:after="${C(e.spaceAfter)}"`),e.lineSpacing!==void 0&&t.push(`w:line="${C(e.lineSpacing)}"`),e.lineSpacingRule&&t.push(`w:lineRule="${e.lineSpacingRule}"`),e.beforeAutospacing&&t.push('w:beforeAutospacing="1"'),e.afterAutospacing&&t.push('w:afterAutospacing="1"'),t.length===0?"":`<w:spacing ${t.join(" ")}/>`}function fo(e){let t=[];return e.indentLeft!==void 0&&t.push(`w:left="${C(e.indentLeft)}"`),e.indentRight!==void 0&&t.push(`w:right="${C(e.indentRight)}"`),e.indentFirstLine!==void 0&&(e.hangingIndent?t.push(`w:hanging="${C(Math.abs(e.indentFirstLine))}"`):e.indentFirstLine!==0&&t.push(`w:firstLine="${C(e.indentFirstLine)}"`)),t.length===0?"":`<w:ind ${t.join(" ")}/>`}function mo(e){if(!e)return "";let t=[];return e.ilvl!==void 0&&t.push(`<w:ilvl w:val="${C(e.ilvl)}"/>`),e.numId!==void 0&&t.push(`<w:numId w:val="${C(e.numId)}"/>`),t.length===0?"":`<w:numPr>${t.join("")}</w:numPr>`}function ho(e){if(!e)return "";let t=[];return e.width!==void 0&&t.push(`w:w="${C(e.width)}"`),e.height!==void 0&&t.push(`w:h="${C(e.height)}"`),e.hAnchor&&t.push(`w:hAnchor="${e.hAnchor}"`),e.vAnchor&&t.push(`w:vAnchor="${e.vAnchor}"`),e.x!==void 0&&t.push(`w:x="${C(e.x)}"`),e.y!==void 0&&t.push(`w:y="${C(e.y)}"`),e.xAlign&&t.push(`w:xAlign="${e.xAlign}"`),e.yAlign&&t.push(`w:yAlign="${e.yAlign}"`),e.wrap&&t.push(`w:wrap="${e.wrap}"`),t.length===0?"":`<w:framePr ${t.join(" ")}/>`}function wo(e){let t=[`w:id="${e.id}"`,`w:name="${R(e.name)}"`];return e.colFirst!==void 0&&t.push(`w:colFirst="${e.colFirst}"`),e.colLast!==void 0&&t.push(`w:colLast="${e.colLast}"`),`<w:bookmarkStart ${t.join(" ")}/>`}function xo(e){return `<w:bookmarkEnd w:id="${e.id}"/>`}function Dt(e){let t=[];e.rId&&t.push(`r:id="${e.rId}"`),e.anchor&&t.push(`w:anchor="${R(e.anchor)}"`),e.tooltip&&t.push(`w:tooltip="${R(e.tooltip)}"`),e.target&&t.push(`w:tgtFrame="${R(e.target)}"`),e.history===false&&t.push('w:history="0"'),e.docLocation&&t.push(`w:docLocation="${R(e.docLocation)}"`);let n=e.children.map(o=>o.type==="run"?se(o):o.type==="bookmarkStart"?wo(o):o.type==="bookmarkEnd"?xo(o):"").join("");return `<w:hyperlink${t.length>0?" "+t.join(" "):""}>${n}</w:hyperlink>`}function yo(e){let t=[],n=e.content.find(a=>a.type==="run"),r=n?.formatting?we(n.formatting):"",o=['w:fldCharType="begin"'];e.fldLock&&o.push('w:fldLock="true"'),t.push(`<w:r>${r}<w:fldChar ${o.join(" ")}/></w:r>`);let s=e.instruction.startsWith(" ")||e.instruction.endsWith(" ")||e.instruction.includes(" ")?' xml:space="preserve"':"";t.push(`<w:r>${r}<w:instrText${s}>${R(e.instruction)}</w:instrText></w:r>`),t.push(`<w:r>${r}<w:fldChar w:fldCharType="separate"/></w:r>`);for(let a of e.content)a.type==="run"&&t.push(se(a));return t.push(`<w:r>${r}<w:fldChar w:fldCharType="end"/></w:r>`),t.join("")}function bo(e){let t=[],n=e.fieldResult?.[0]?.formatting,r=n?we(n):"",o=['w:fldCharType="begin"'];if(e.fldLock&&o.push('w:fldLock="true"'),t.push(`<w:r>${r}<w:fldChar ${o.join(" ")}/></w:r>`),e.fieldCode.length>0)t.push(...e.fieldCode.map(i=>se(i)));else {let s=e.instruction.startsWith(" ")||e.instruction.endsWith(" ")||e.instruction.includes(" ")?' xml:space="preserve"':"";t.push(`<w:r>${r}<w:instrText${s}>${R(e.instruction)}</w:instrText></w:r>`);}return t.push(`<w:r>${r}<w:fldChar w:fldCharType="separate"/></w:r>`),t.push(...e.fieldResult.map(i=>se(i))),t.push(`<w:r>${r}<w:fldChar w:fldCharType="end"/></w:r>`),t.join("")}function To(e){let t=e.properties,n=[];switch(t.alias&&n.push(`<w:alias w:val="${R(t.alias)}"/>`),t.tag&&n.push(`<w:tag w:val="${R(t.tag)}"/>`),t.lock&&t.lock!=="unlocked"&&n.push(`<w:lock w:val="${t.lock}"/>`),t.showingPlaceholder&&n.push("<w:showingPlcHdr/>"),t.sdtType){case "plainText":n.push("<w:text/>");break;case "date":t.dateFormat?n.push(`<w:date w:fullDate="${R(t.dateFormat)}"/>`):n.push("<w:date/>");break;case "dropdown":{let o=(t.listItems??[]).map(i=>`<w:listItem w:displayText="${R(i.displayText)}" w:value="${R(i.value)}"/>`).join("");n.push(`<w:dropDownList>${o}</w:dropDownList>`);break}case "comboBox":{let o=(t.listItems??[]).map(i=>`<w:listItem w:displayText="${R(i.displayText)}" w:value="${R(i.value)}"/>`).join("");n.push(`<w:comboBox>${o}</w:comboBox>`);break}case "checkbox":n.push(`<w14:checkbox><w14:checked w14:val="${t.checked?"1":"0"}"/></w14:checkbox>`);break;case "picture":n.push("<w:picture/>");break}let r=e.content.map(o=>{switch(o.type){case "run":return se(o);case "hyperlink":return Dt(o);case "simpleField":return yo(o);case "complexField":return bo(o);case "inlineSdt":return To(o);case "mathEquation":return o.ommlXml||"";default:return o}}).join("");return `<w:sdt><w:sdtPr>${n.join("")}</w:sdtPr><w:sdtContent>${r}</w:sdtContent></w:sdt>`}function go(e,t){let n=[`w:id="${t.id}"`,`w:name="${R(t.name)}"`];return `<w:${e} ${n.join(" ")}/>`}function nt(e,t){let n=t.info,r=Number.isInteger(n.id)&&n.id>=0?n.id:0,o=typeof n.author=="string"?n.author.trim():"",i=o.length>0?o:"Unknown",s=typeof n.date=="string"?n.date.trim():void 0,a=[`w:id="${r}"`,`w:author="${R(i)}"`];s&&a.push(`w:date="${R(s)}"`);let c=t.content.map(u=>u.type==="run"?e==="del"||e==="moveFrom"?se(u).replace(/<w:t\b/g,"<w:delText").replace(/<\/w:t>/g,"</w:delText>").replace(/<w:instrText\b/g,"<w:delInstrText").replace(/<\/w:instrText>/g,"</w:delInstrText>"):se(u):u.type==="hyperlink"?Dt(u):"").join("");return `<w:${e} ${a.join(" ")}>${c}</w:${e}>`}function Co(e){switch(e.type){case "run":return se(e);case "hyperlink":return Dt(e);case "bookmarkStart":return wo(e);case "bookmarkEnd":return xo(e);case "simpleField":return yo(e);case "complexField":return bo(e);case "inlineSdt":return To(e);case "commentRangeStart":return `<w:commentRangeStart w:id="${e.id}"/>`;case "commentRangeEnd":return `<w:commentRangeEnd w:id="${e.id}"/><w:r><w:rPr><w:rStyle w:val="CommentReference"/></w:rPr><w:commentReference w:id="${e.id}"/></w:r>`;case "insertion":return nt("ins",e);case "deletion":return nt("del",e);case "moveFrom":return nt("moveFrom",e);case "moveTo":return nt("moveTo",e);case "moveFromRangeStart":return go("moveFromRangeStart",e);case "moveFromRangeEnd":return `<w:moveFromRangeEnd w:id="${e.id}"/>`;case "moveToRangeStart":return go("moveToRangeStart",e);case "moveToRangeEnd":return `<w:moveToRangeEnd w:id="${e.id}"/>`;case "mathEquation":return e.ommlXml||"";default:return ""}}function Po(e){let t=Number.isInteger(e.id)&&e.id>=0?e.id:0,n=typeof e.author=="string"&&e.author.length>0?e.author:"Unknown",r=[`w:id="${t}"`,`w:author="${R(n)}"`],o=typeof e.date=="string"&&e.date.length>0?e.date:void 0;return o&&r.push(`w:date="${R(o)}"`),r.join(" ")}function Oa(e,t,n){let r=[];if(t&&r.push(`<w:ins ${Po(t)}/>`),n&&r.push(`<w:del ${Po(n)}/>`),e?.runProperties){let o=we(e.runProperties);if(o)if(o.startsWith("<w:rPr>")&&o.endsWith("</w:rPr>")){let i=o.slice(7,-8);i.length>0&&r.push(i);}else o.startsWith("<w:rPr/>")||r.push(o);}return r.length===0?"":`<w:rPr>${r.join("")}</w:rPr>`}function Fo(e,t,n,r,o){let i=[];if(e){e.styleId&&i.push(`<w:pStyle w:val="${R(e.styleId)}"/>`),e.keepNext&&i.push("<w:keepNext/>"),e.keepLines&&i.push("<w:keepLines/>"),e.contextualSpacing&&i.push("<w:contextualSpacing/>"),e.pageBreakBefore&&i.push("<w:pageBreakBefore/>");let s=ho(e.frame);s&&i.push(s),e.widowControl===false?i.push('<w:widowControl w:val="0"/>'):e.widowControl===true&&i.push("<w:widowControl/>");let a=mo(e.numPr);a&&i.push(a);let c=lo(e.borders);c&&i.push(c);let u=co(e.shading);u&&i.push(u);let f=uo(e.tabs);f&&i.push(f),e.suppressLineNumbers&&i.push("<w:suppressLineNumbers/>"),e.suppressAutoHyphens&&i.push("<w:suppressAutoHyphens/>");let d=po(e);d&&i.push(d);let h=fo(e);h&&i.push(h),e.bidi&&i.push("<w:bidi/>"),e.alignment&&i.push(`<w:jc w:val="${e.alignment}"/>`),e.outlineLevel!==void 0&&i.push(`<w:outlineLvl w:val="${e.outlineLevel}"/>`);}if(!o?.baseOnly){let s=Oa(e,n??void 0,r??void 0);s&&i.push(s),t&&t.length>0&&i.push(ja(t[0]));}return i.length===0?"":`<w:pPr>${i.join("")}</w:pPr>`}function za(e){return !e.startsWith("<w:pPr>")||!e.endsWith("</w:pPr>")?"":e.slice(7,-8)}function ja(e){let t=Number.isInteger(e.info.id)&&e.info.id>=0?e.info.id:0,n=typeof e.info.author=="string"?e.info.author.trim():"",r=n.length>0?n:"Unknown",o=typeof e.info.date=="string"?e.info.date.trim():void 0,i=[`w:id="${t}"`,`w:author="${R(r)}"`];o&&i.push(`w:date="${R(o)}"`);let s=Fo(e.previousFormatting,void 0,void 0,void 0,{baseOnly:true})||"<w:pPr/>",a=za(s),c=a.length>0?`<w:pPr>${a}</w:pPr>`:"<w:pPr/>";return `<w:pPrChange ${i.join(" ")}>${c}</w:pPrChange>`}function fe(e){let t=[],n=[];e.paraId&&n.push(`w14:paraId="${e.paraId}"`),e.textId&&n.push(`w14:textId="${e.textId}"`);let r=n.length>0?" "+n.join(" "):"",o=Fo(e.formatting,e.propertyChanges,e.pPrIns,e.pPrDel);o&&t.push(o);let i=!!e.renderedPageBreakBefore;for(let s of e.content){let a=Co(s);if(a){if(i){let c=_a(a);c&&(a=c,i=false);}t.push(a);}}return `<w:p${r}>${t.join("")}</w:p>`}function _a(e){let t=/<w:r(?=[\s>/])[^>]*>/;return t.test(e)?e.replace(t,n=>`${n}<w:lastRenderedPageBreak/>`):null}function Va(e){let t=Number.isInteger(e.id)&&e.id>=0?e.id:0,n=typeof e.author=="string"?e.author.trim():"",r=n.length>0?n:"Unknown",o=typeof e.date=="string"?e.date.trim():void 0;return {id:t,author:r,date:o}}function me(e){let t=Va(e),n=[`w:id="${t.id}"`,`w:author="${R(t.author)}"`];return t.date&&n.push(`w:date="${R(t.date)}"`),n.join(" ")}function de(e,t){if(!e)return "";let n=[`w:w="${C(e.value)}"`,`w:type="${e.type}"`];return `<w:${t} ${n.join(" ")}/>`}function Se(e,t){if(!e||e.style==="none"||e.style==="nil")return "";let n=[`w:val="${e.style}"`];return e.size!==void 0&&n.push(`w:sz="${C(e.size)}"`),e.space!==void 0&&n.push(`w:space="${C(e.space)}"`),e.color&&(e.color.auto?n.push('w:color="auto"'):e.color.rgb&&n.push(`w:color="${e.color.rgb}"`),e.color.themeColor&&n.push(`w:themeColor="${e.color.themeColor}"`),e.color.themeTint&&n.push(`w:themeTint="${e.color.themeTint}"`),e.color.themeShade&&n.push(`w:themeShade="${e.color.themeShade}"`)),e.shadow&&n.push('w:shadow="true"'),e.frame&&n.push('w:frame="true"'),`<w:${t} ${n.join(" ")}/>`}function So(e,t){if(!e)return "";let n=[];if(e.top){let r=Se(e.top,"top");r&&n.push(r);}if(e.left){let r=Se(e.left,"left");r&&n.push(r);}if(e.bottom){let r=Se(e.bottom,"bottom");r&&n.push(r);}if(e.right){let r=Se(e.right,"right");r&&n.push(r);}if(e.insideH){let r=Se(e.insideH,"insideH");r&&n.push(r);}if(e.insideV){let r=Se(e.insideV,"insideV");r&&n.push(r);}return n.length===0?"":`<w:${t}>${n.join("")}</w:${t}>`}function vo(e,t){if(!e)return "";let n=[];return e.top&&n.push(de(e.top,"top")),e.left&&n.push(de(e.left,"left")),e.bottom&&n.push(de(e.bottom,"bottom")),e.right&&n.push(de(e.right,"right")),n.length===0?"":`<w:${t}>${n.join("")}</w:${t}>`}function Io(e){if(!e)return "";let t=[];return e.pattern?t.push(`w:val="${e.pattern}"`):t.push('w:val="clear"'),e.color?.rgb?t.push(`w:color="${e.color.rgb}"`):e.color?.auto&&t.push('w:color="auto"'),e.fill?.rgb?t.push(`w:fill="${e.fill.rgb}"`):e.fill?.auto&&t.push('w:fill="auto"'),e.fill?.themeColor&&t.push(`w:themeFill="${e.fill.themeColor}"`),e.fill?.themeTint&&t.push(`w:themeFillTint="${e.fill.themeTint}"`),e.fill?.themeShade&&t.push(`w:themeFillShade="${e.fill.themeShade}"`),t.length===0?"":`<w:shd ${t.join(" ")}/>`}function Wa(e){if(!e)return "";let t=[];return e.firstRow&&t.push('w:firstRow="1"'),e.lastRow&&t.push('w:lastRow="1"'),e.firstColumn&&t.push('w:firstColumn="1"'),e.lastColumn&&t.push('w:lastColumn="1"'),e.noHBand&&t.push('w:noHBand="1"'),e.noVBand&&t.push('w:noVBand="1"'),t.length===0?"":`<w:tblLook ${t.join(" ")}/>`}function Ua(e){if(!e)return "";let t=[];return e.horzAnchor&&t.push(`w:horzAnchor="${e.horzAnchor}"`),e.vertAnchor&&t.push(`w:vertAnchor="${e.vertAnchor}"`),e.tblpX!==void 0&&t.push(`w:tblpX="${C(e.tblpX)}"`),e.tblpXSpec&&t.push(`w:tblpXSpec="${e.tblpXSpec}"`),e.tblpY!==void 0&&t.push(`w:tblpY="${C(e.tblpY)}"`),e.tblpYSpec&&t.push(`w:tblpYSpec="${e.tblpYSpec}"`),e.topFromText!==void 0&&t.push(`w:topFromText="${C(e.topFromText)}"`),e.bottomFromText!==void 0&&t.push(`w:bottomFromText="${C(e.bottomFromText)}"`),e.leftFromText!==void 0&&t.push(`w:leftFromText="${C(e.leftFromText)}"`),e.rightFromText!==void 0&&t.push(`w:rightFromText="${C(e.rightFromText)}"`),t.length===0?"":`<w:tblpPr ${t.join(" ")}/>`}function ko(e,t){let n=[];if(e){e.styleId&&n.push(`<w:tblStyle w:val="${R(e.styleId)}"/>`);let r=Ua(e.floating);r&&n.push(r),e.bidi&&n.push("<w:bidiVisual/>");let o=de(e.width,"tblW");o&&n.push(o),e.justification&&n.push(`<w:jc w:val="${e.justification}"/>`);let i=de(e.cellSpacing,"tblCellSpacing");i&&n.push(i);let s=de(e.indent,"tblInd");s&&n.push(s);let a=So(e.borders,"tblBorders");a&&n.push(a);let c=vo(e.cellMargins,"tblCellMar");c&&n.push(c),e.layout&&n.push(`<w:tblLayout w:type="${e.layout}"/>`);let u=Io(e.shading);u&&n.push(u);let f=Wa(e.look);f&&n.push(f),e.overlap&&n.push(`<w:tblOverlap w:val="${e.overlap}"/>`);}return t&&t.length>0&&n.push(Za(t[0])),n.length===0?"":`<w:tblPr>${n.join("")}</w:tblPr>`}function Ga(e){return !e.startsWith("<w:tblPr>")||!e.endsWith("</w:tblPr>")?"":e.slice(9,-10)}function Za(e){let t=me(e.info),n=ko(e.previousFormatting)||"<w:tblPr/>",r=Ga(n),o=r.length>0?`<w:tblPr>${r}</w:tblPr>`:"<w:tblPr/>";return `<w:tblPrChange ${t}>${o}</w:tblPrChange>`}function Eo(e,t,n){let r=[];if(e){if(e.cantSplit&&r.push("<w:cantSplit/>"),e.header&&r.push("<w:tblHeader/>"),e.height){let o=[`w:val="${C(e.height.value)}"`];e.heightRule&&o.push(`w:hRule="${e.heightRule}"`),r.push(`<w:trHeight ${o.join(" ")}/>`);}e.justification&&r.push(`<w:jc w:val="${e.justification}"/>`),e.hidden&&r.push("<w:hidden/>");}return n&&(n.type==="tableRowInsertion"?r.push(`<w:ins ${me(n.info)}/>`):n.type==="tableRowDeletion"&&r.push(`<w:del ${me(n.info)}/>`)),t&&t.length>0&&r.push(Ja(t[0])),r.length===0?"":`<w:trPr>${r.join("")}</w:trPr>`}function qa(e){return !e.startsWith("<w:trPr>")||!e.endsWith("</w:trPr>")?"":e.slice(8,-9)}function Ja(e){let t=me(e.info),n=Eo(e.previousFormatting)||"<w:trPr/>",r=qa(n),o=r.length>0?`<w:trPr>${r}</w:trPr>`:"<w:trPr/>";return `<w:trPrChange ${t}>${o}</w:trPrChange>`}function Ya(e){if(!e)return "";let n=[e.firstRow?"1":"0",e.lastRow?"1":"0",e.firstColumn?"1":"0",e.lastColumn?"1":"0",e.oddVBand?"1":"0",e.evenVBand?"1":"0",e.oddHBand?"1":"0",e.evenHBand?"1":"0",e.nwCell?"1":"0",e.neCell?"1":"0",e.swCell?"1":"0",e.seCell?"1":"0"].join("");return n==="000000000000"?"":`<w:cnfStyle w:val="${n}"/>`}function Ro(e,t,n){let r=[];if(e){let o=Ya(e.conditionalFormat);o&&r.push(o);let i=de(e.width,"tcW");i&&r.push(i),e.gridSpan&&e.gridSpan>1&&r.push(`<w:gridSpan w:val="${C(e.gridSpan)}"/>`),e.vMerge&&(e.vMerge==="restart"?r.push('<w:vMerge w:val="restart"/>'):r.push("<w:vMerge/>"));let s=So(e.borders,"tcBorders");s&&r.push(s);let a=Io(e.shading);a&&r.push(a),e.noWrap&&r.push("<w:noWrap/>");let c=vo(e.margins,"tcMar");c&&r.push(c),e.textDirection&&r.push(`<w:textDirection w:val="${e.textDirection}"/>`),e.fitText&&r.push("<w:tcFitText/>"),e.verticalAlign&&r.push(`<w:vAlign w:val="${e.verticalAlign}"/>`),e.hideMark&&r.push("<w:hideMark/>");}if(n){if(n.type==="tableCellInsertion")r.push(`<w:cellIns ${me(n.info)}/>`);else if(n.type==="tableCellDeletion")r.push(`<w:cellDel ${me(n.info)}/>`);else if(n.type==="tableCellMerge"){let o=n.vMerge?` w:vMerge="${n.vMerge}"`:"",i=n.vMergeOrig?` w:vMergeOrig="${n.vMergeOrig}"`:"";r.push(`<w:cellMerge ${me(n.info)}${o}${i}/>`);}}return t&&t.length>0&&r.push(Qa(t[0])),r.length===0?"":`<w:tcPr>${r.join("")}</w:tcPr>`}function Ka(e){return !e.startsWith("<w:tcPr>")||!e.endsWith("</w:tcPr>")?"":e.slice(8,-9)}function Qa(e){let t=me(e.info),n=Ro(e.previousFormatting)||"<w:tcPr/>",r=Ka(n),o=r.length>0?`<w:tcPr>${r}</w:tcPr>`:"<w:tcPr/>";return `<w:tcPrChange ${t}>${o}</w:tcPrChange>`}function el(e){return !e||e.length===0?"":`<w:tblGrid>${e.map(n=>`<w:gridCol w:w="${C(n)}"/>`).join("")}</w:tblGrid>`}function tl(e){let t=[];for(let n of e)n.type==="paragraph"?t.push(fe(n)):n.type==="table"&&t.push(Be(n));return t.length===0&&t.push("<w:p/>"),t.join("")}function nl(e){let t=[],n=Ro(e.formatting,e.propertyChanges,e.structuralChange);return n&&t.push(n),t.push(tl(e.content)),`<w:tc>${t.join("")}</w:tc>`}function rl(e){let t=[],n=Eo(e.formatting,e.propertyChanges,e.structuralChange);n&&t.push(n);for(let r of e.cells)t.push(nl(r));return `<w:tr>${t.join("")}</w:tr>`}function Be(e){let t=[],n=ko(e.formatting,e.propertyChanges);n&&t.push(n);let r=el(e.columnWidths);r&&t.push(r);for(let o of e.rows)t.push(rl(o));return `<w:tbl>${t.join("")}</w:tbl>`}var q={wpc:"http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas",mc:"http://schemas.openxmlformats.org/markup-compatibility/2006",o:"urn:schemas-microsoft-com:office:office",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",m:"http://schemas.openxmlformats.org/officeDocument/2006/math",v:"urn:schemas-microsoft-com:vml",wp14:"http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing",wp:"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing",w10:"urn:schemas-microsoft-com:office:word",w:"http://schemas.openxmlformats.org/wordprocessingml/2006/main",w14:"http://schemas.microsoft.com/office/word/2010/wordml",w15:"http://schemas.microsoft.com/office/word/2012/wordml",wpg:"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup",wps:"http://schemas.microsoft.com/office/word/2010/wordprocessingShape"};function ol(){let e={wpc:q.wpc,mc:q.mc,o:q.o,r:q.r,m:q.m,v:q.v,wp14:q.wp14,wp:q.wp,w10:q.w10,w:q.w,w14:q.w14,w15:q.w15,wpg:q.wpg,wps:q.wps};return Object.entries(e).map(([t,n])=>`xmlns:${t}="${n}"`).join(" ")}function rt(e,t){if(!e||e.style==="none"||e.style==="nil")return "";let n=[`w:val="${e.style}"`];return e.size!==void 0&&n.push(`w:sz="${C(e.size)}"`),e.space!==void 0&&n.push(`w:space="${C(e.space)}"`),e.color&&(e.color.auto?n.push('w:color="auto"'):e.color.rgb&&n.push(`w:color="${e.color.rgb}"`),e.color.themeColor&&n.push(`w:themeColor="${e.color.themeColor}"`),e.color.themeTint&&n.push(`w:themeTint="${e.color.themeTint}"`),e.color.themeShade&&n.push(`w:themeShade="${e.color.themeShade}"`)),e.shadow&&n.push('w:shadow="true"'),e.frame&&n.push('w:frame="true"'),`<w:${t} ${n.join(" ")}/>`}function il(e){return `<w:headerReference ${[`w:type="${e.type}"`,`r:id="${e.rId}"`].join(" ")}/>`}function sl(e){return `<w:footerReference ${[`w:type="${e.type}"`,`r:id="${e.rId}"`].join(" ")}/>`}function al(e){if(!e)return "";let t=[];return e.position&&t.push(`<w:pos w:val="${e.position}"/>`),e.numFmt&&t.push(`<w:numFmt w:val="${e.numFmt}"/>`),e.numStart!==void 0&&t.push(`<w:numStart w:val="${e.numStart}"/>`),e.numRestart&&t.push(`<w:numRestart w:val="${e.numRestart}"/>`),t.length===0?"":`<w:footnotePr>${t.join("")}</w:footnotePr>`}function ll(e){if(!e)return "";let t=[];return e.position&&t.push(`<w:pos w:val="${e.position}"/>`),e.numFmt&&t.push(`<w:numFmt w:val="${e.numFmt}"/>`),e.numStart!==void 0&&t.push(`<w:numStart w:val="${e.numStart}"/>`),e.numRestart&&t.push(`<w:numRestart w:val="${e.numRestart}"/>`),t.length===0?"":`<w:endnotePr>${t.join("")}</w:endnotePr>`}function cl(e){let t=[];return e.pageWidth!==void 0&&t.push(`w:w="${C(e.pageWidth)}"`),e.pageHeight!==void 0&&t.push(`w:h="${C(e.pageHeight)}"`),e.orientation==="landscape"&&t.push('w:orient="landscape"'),t.length===0?"":`<w:pgSz ${t.join(" ")}/>`}function ul(e){let t=[];return e.marginTop!==void 0&&t.push(`w:top="${C(e.marginTop)}"`),e.marginRight!==void 0&&t.push(`w:right="${C(e.marginRight)}"`),e.marginBottom!==void 0&&t.push(`w:bottom="${C(e.marginBottom)}"`),e.marginLeft!==void 0&&t.push(`w:left="${C(e.marginLeft)}"`),e.headerDistance!==void 0&&t.push(`w:header="${C(e.headerDistance)}"`),e.footerDistance!==void 0&&t.push(`w:footer="${C(e.footerDistance)}"`),e.gutter!==void 0&&t.push(`w:gutter="${C(e.gutter)}"`),t.length===0?"":`<w:pgMar ${t.join(" ")}/>`}function pl(e){if(!e.columnCount&&!e.columns?.length)return "";let t=[];e.columnCount!==void 0&&e.columnCount>1&&t.push(`w:num="${C(e.columnCount)}"`),e.columnSpace!==void 0&&t.push(`w:space="${C(e.columnSpace)}"`),e.equalWidth!==void 0&&t.push(`w:equalWidth="${e.equalWidth?"1":"0"}"`),e.separator&&t.push('w:sep="1"');let n="";return e.columns&&e.columns.length>0&&(n=e.columns.map(o=>{let i=[];return o.width!==void 0&&i.push(`w:w="${C(o.width)}"`),o.space!==void 0&&i.push(`w:space="${C(o.space)}"`),`<w:col ${i.join(" ")}/>`}).join("")),t.length===0&&!n?"":`<w:cols${t.length>0?" "+t.join(" "):""}>${n}</w:cols>`}function fl(e){if(!e.lineNumbers)return "";let t=e.lineNumbers,n=[];return t.countBy!==void 0&&n.push(`w:countBy="${C(t.countBy)}"`),t.start!==void 0&&n.push(`w:start="${C(t.start)}"`),t.distance!==void 0&&n.push(`w:distance="${C(t.distance)}"`),t.restart&&n.push(`w:restart="${t.restart}"`),n.length===0?"":`<w:lnNumType ${n.join(" ")}/>`}function dl(e){if(!e.pageBorders)return "";let t=e.pageBorders,n=[],r=[];if(t.display&&n.push(`w:display="${t.display}"`),t.offsetFrom&&n.push(`w:offsetFrom="${t.offsetFrom}"`),t.zOrder&&n.push(`w:zOrder="${t.zOrder}"`),t.top){let i=rt(t.top,"top");i&&r.push(i);}if(t.left){let i=rt(t.left,"left");i&&r.push(i);}if(t.bottom){let i=rt(t.bottom,"bottom");i&&r.push(i);}if(t.right){let i=rt(t.right,"right");i&&r.push(i);}return r.length===0?"":`<w:pgBorders${n.length>0?" "+n.join(" "):""}>${r.join("")}</w:pgBorders>`}function ml(e){if(!e.docGrid)return "";let t=e.docGrid,n=[];return t.type&&n.push(`w:type="${t.type}"`),t.linePitch!==void 0&&n.push(`w:linePitch="${t.linePitch}"`),t.charSpace!==void 0&&n.push(`w:charSpace="${t.charSpace}"`),n.length===0?"":`<w:docGrid ${n.join(" ")}/>`}function hl(e){if(!e)return "";let t=[];if(e.headerReferences)for(let f of e.headerReferences)t.push(il(f));if(e.footerReferences)for(let f of e.footerReferences)t.push(sl(f));let n=al(e.footnotePr);n&&t.push(n);let r=ll(e.endnotePr);r&&t.push(r),e.sectionStart&&t.push(`<w:type w:val="${e.sectionStart}"/>`);let o=cl(e);o&&t.push(o);let i=ul(e);if(i&&t.push(i),e.paperSrcFirst!==void 0||e.paperSrcOther!==void 0){let f=[];e.paperSrcFirst!==void 0&&f.push(`w:first="${e.paperSrcFirst}"`),e.paperSrcOther!==void 0&&f.push(`w:other="${e.paperSrcOther}"`),t.push(`<w:paperSrc ${f.join(" ")}/>`);}let s=dl(e);s&&t.push(s);let a=fl(e);a&&t.push(a);let c=pl(e);c&&t.push(c);let u=ml(e);return u&&t.push(u),e.verticalAlign&&t.push(`<w:vAlign w:val="${e.verticalAlign}"/>`),e.bidi&&t.push("<w:bidi/>"),e.titlePg&&t.push("<w:titlePg/>"),e.evenAndOddHeaders&&t.push("<w:evenAndOddHeaders/>"),t.length===0?"":`<w:sectPr>${t.join("")}</w:sectPr>`}function Mo(e){if(e.type==="paragraph")return fe(e);if(e.type==="table")return Be(e);if(e.type==="blockSdt"){let t=e.content.map(o=>Mo(o)).join(""),n=e.properties,r=[];return n.alias&&r.push(`<w:alias w:val="${n.alias}"/>`),n.tag&&r.push(`<w:tag w:val="${n.tag}"/>`),`<w:sdt><w:sdtPr>${r.join("")}</w:sdtPr><w:sdtContent>${t}</w:sdtContent></w:sdt>`}return ""}function gl(e){return e.map(t=>Mo(t)).join("")}function wl(e){let t=[];return t.push(gl(e.content)),e.finalSectionProperties&&t.push(hl(e.finalSectionProperties)),t.join("")}function $o(e){At();let t=[];t.push('<?xml version="1.0" encoding="UTF-8" standalone="yes"?>');let n=ol();return t.push(`<w:document ${n} mc:Ignorable="w14 w15 wp14">`),t.push("<w:body>"),t.push(wl(e.package.document)),t.push("</w:body>"),t.push("</w:document>"),t.join("")}var xl=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
14
+ <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"></Relationships>`;function Bt(e){return e.startsWith("/")?e.slice(1):`word/${e}`}function Ao(e){let t=[{relsPath:"word/_rels/document.xml.rels",blocks:e.package.document.content}],n=e.package.relationships;if(!n)return t;let r=(o,i)=>{if(o)for(let[s,a]of o.entries()){let c=n.get(s);if(!c||c.type!==i||!c.target)continue;let f=Bt(c.target).replace(/^word\//,"");t.push({relsPath:`word/_rels/${f}.rels`,blocks:a.content});}};return r(e.package.headers,_.header),r(e.package.footers,_.footer),t}async function ve(e,t){let n=e.file(t);return (n?await n.async("text"):xl).replace(/<Relationships([^>]*)\/>/,"<Relationships$1></Relationships>")}function xe(e){let t=0;for(let n of e.matchAll(/Id="rId(\d+)"/g)){let r=parseInt(n[1],10);r>t&&(t=r);}return t}function Do(e,t){return {png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",gif:"image/gif",bmp:"image/bmp",tif:"image/tiff",tiff:"image/tiff",svg:"image/svg+xml",webp:"image/webp",wmf:"image/x-wmf",emf:"image/x-emf"}[e]||"application/octet-stream"}function Bo(e){let t=[];for(let n of e)if(n.type==="paragraph"){for(let r of n.content)if(r.type==="run")for(let o of r.content)o.type==="drawing"&&o.image.src?.startsWith("data:")&&t.push(o.image);}else if(n.type==="table")for(let r of n.rows)for(let o of r.cells)t.push(...Bo(o.content));return t}var yl={"image/png":"png","image/jpeg":"jpeg","image/gif":"gif","image/bmp":"bmp","image/tiff":"tiff","image/webp":"webp","image/svg+xml":"svg"};function bl(e){let t=e.match(/^data:([^;]+);base64,(.+)$/);if(!t)throw new Error("Invalid data URL");let n=atob(t[2]),r=new Uint8Array(n.length);for(let o=0;o<n.length;o++)r[o]=n.charCodeAt(o);return {data:r.buffer,extension:yl[t[1]]||"png"}}async function Tl(e,t,n){if(t.size===0)return;let r=e.file("[Content_Types].xml");if(!r)return;let o=await r.async("text"),i=false;for(let s of t)if(!o.includes(`Extension="${s}"`)){let a=Do(s);o=o.replace("</Types>",`<Default Extension="${s}" ContentType="${a}"/></Types>`),i=true;}i&&e.file("[Content_Types].xml",o,{compression:"DEFLATE",compressionOptions:{level:n}});}function Cl(e){let t=0;return e.forEach(n=>{let r=n.match(/^word\/media\/image(\d+)\./);if(r){let o=parseInt(r[1],10);o>t&&(t=o);}}),t}async function No(e,t,n){let r=Cl(t),o=new Set;for(let{relsPath:i,blocks:s}of e){let a=Bo(s);if(a.length===0)continue;let c=await ve(t,i),u=xe(c),f=[];for(let h of a){let{data:g,extension:m}=bl(h.src);r++,u++;let y=`image${r}.${m}`,T=`rId${u}`;t.file(`word/media/${y}`,g,{compression:"DEFLATE",compressionOptions:{level:n}}),f.push(`<Relationship Id="${T}" Type="${_.image}" Target="media/${y}"/>`),o.add(m),h.rId=T;}let d=c.replace("</Relationships>",f.join("")+"</Relationships>");t.file(i,d,{compression:"DEFLATE",compressionOptions:{level:n}});}await Tl(t,o,n);}function Xo(e){let t=[];for(let n of e)if(n.type==="paragraph")for(let r of n.content)r.type==="hyperlink"&&r.href&&!r.rId&&!r.anchor&&t.push(r);else if(n.type==="table")for(let r of n.rows)for(let o of r.cells)t.push(...Xo(o.content));return t}async function Lo(e,t,n){for(let{relsPath:r,blocks:o}of e){let i=Xo(o);if(i.length===0)continue;let s=await ve(t,r),a=xe(s),c=[];for(let f of i){a++;let d=`rId${a}`;c.push(`<Relationship Id="${d}" Type="${_.hyperlink}" Target="${R(f.href)}" TargetMode="External"/>`),f.rId=d;}let u=s.replace("</Relationships>",c.join("")+"</Relationships>");t.file(r,u,{compression:"DEFLATE",compressionOptions:{level:n}});}}var Pl={wpc:"http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas",mc:"http://schemas.openxmlformats.org/markup-compatibility/2006",o:"urn:schemas-microsoft-com:office:office",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",m:"http://schemas.openxmlformats.org/officeDocument/2006/math",v:"urn:schemas-microsoft-com:vml",wp14:"http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing",wp:"http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing",w10:"urn:schemas-microsoft-com:office:word",w:"http://schemas.openxmlformats.org/wordprocessingml/2006/main",w14:"http://schemas.microsoft.com/office/word/2010/wordml",w15:"http://schemas.microsoft.com/office/word/2012/wordml",wpg:"http://schemas.microsoft.com/office/word/2010/wordprocessingGroup",wps:"http://schemas.microsoft.com/office/word/2010/wordprocessingShape"};function Fl(){return Object.entries(Pl).map(([e,t])=>`xmlns:${e}="${t}"`).join(" ")}function Sl(e){return e.type==="paragraph"?fe(e):e.type==="table"?Be(e):""}function Ho(e){let t=e.type==="header"?"w:hdr":"w:ftr",n=Fl(),r=e.content.map(o=>Sl(o)).join("");return r||(r="<w:p><w:pPr/></w:p>"),`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
15
+ <${t} ${n}>${r}</${t}>`}function Nt(){return Math.floor(Math.random()*2147483647).toString(16).toUpperCase().padStart(8,"0")}var ot='xmlns:wpc="http://schemas.microsoft.com/office/word/2010/wordprocessingCanvas" xmlns:cx="http://schemas.microsoft.com/office/drawing/2014/chartex" xmlns:cx1="http://schemas.microsoft.com/office/drawing/2015/9/8/chartex" xmlns:cx2="http://schemas.microsoft.com/office/drawing/2015/10/21/chartex" xmlns:cx3="http://schemas.microsoft.com/office/drawing/2016/5/9/chartex" xmlns:cx4="http://schemas.microsoft.com/office/drawing/2016/5/10/chartex" xmlns:cx5="http://schemas.microsoft.com/office/drawing/2016/5/11/chartex" xmlns:cx6="http://schemas.microsoft.com/office/drawing/2016/5/12/chartex" xmlns:cx7="http://schemas.microsoft.com/office/drawing/2016/5/13/chartex" xmlns:cx8="http://schemas.microsoft.com/office/drawing/2016/5/14/chartex" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:aink="http://schemas.microsoft.com/office/drawing/2016/ink" xmlns:am3d="http://schemas.microsoft.com/office/drawing/2017/model3d" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:oel="http://schemas.microsoft.com/office/2019/extlst" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:m="http://schemas.openxmlformats.org/officeDocument/2006/math" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:wp14="http://schemas.microsoft.com/office/word/2010/wordprocessingDrawing" xmlns:wp="http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing" xmlns:w10="urn:schemas-microsoft-com:office:word" xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:w14="http://schemas.microsoft.com/office/word/2010/wordml" xmlns:w15="http://schemas.microsoft.com/office/word/2012/wordml" xmlns:w16cex="http://schemas.microsoft.com/office/word/2018/wordml/cex" xmlns:w16cid="http://schemas.microsoft.com/office/word/2016/wordml/cid" xmlns:w16="http://schemas.microsoft.com/office/word/2018/wordml" xmlns:w16du="http://schemas.microsoft.com/office/word/2023/wordml/word16du" xmlns:w16sdtdh="http://schemas.microsoft.com/office/word/2020/wordml/sdtdatahash" xmlns:w16sdtfl="http://schemas.microsoft.com/office/word/2024/wordml/sdtformatlock" xmlns:w16se="http://schemas.microsoft.com/office/word/2015/wordml/symex" xmlns:wpg="http://schemas.microsoft.com/office/word/2010/wordprocessingGroup" xmlns:wpi="http://schemas.microsoft.com/office/word/2010/wordprocessingInk" xmlns:wne="http://schemas.microsoft.com/office/word/2006/wordml" xmlns:wps="http://schemas.microsoft.com/office/word/2010/wordprocessingShape"',it='mc:Ignorable="w14 w15 w16se w16cid w16 w16cex w16sdtdh w16sdtfl w16du wp14"';function _o(e){let t="<w:r>",n=[];e.formatting?.bold&&n.push("<w:b/>"),e.formatting?.italic&&n.push("<w:i/>"),n.length>0&&(t+=`<w:rPr>${n.join("")}</w:rPr>`);for(let r of e.content)if(r.type==="text"){let o=r.text!==r.text.trim()||r.text.includes(" ");t+=o?`<w:t xml:space="preserve">${R(r.text)}</w:t>`:`<w:t>${R(r.text)}</w:t>`;}else r.type==="break"&&(t+="<w:br/>");return t+="</w:r>",t}function Oo(e,t){let n=t?`<w:p w14:paraId="${t}">`:"<w:p>";for(let r of e.content)r.type==="run"&&(n+=_o(r));return n+="</w:p>",n}function zo(e,t){let n=t?`<w:p w14:paraId="${t}">`:"<w:p>";n+='<w:r><w:rPr><w:rStyle w:val="CommentReference"/></w:rPr><w:annotationRef/></w:r>';for(let r of e.content)r.type==="run"&&(n+=_o(r));return n+="</w:p>",n}function jo(e,t){let n=Nt(),r=[`w:id="${e.id}"`];if(e.author&&r.push(`w:author="${R(e.author)}"`),e.initials?r.push(`w:initials="${R(e.initials)}"`):r.push('w:initials=""'),e.date){let i=e.date.replace(/\.\d{3}Z$/,"Z");r.push(`w:date="${R(i)}"`);}let o=`<w:comment ${r.join(" ")}>`;if(e.content&&e.content.length>0)if(e.content.length===1)o+=zo(e.content[0],n);else {o+=zo(e.content[0]);for(let i=1;i<e.content.length-1;i++)o+=Oo(e.content[i]);o+=Oo(e.content[e.content.length-1],n);}else o+=`<w:p w14:paraId="${n}"><w:r><w:rPr><w:rStyle w:val="CommentReference"/></w:rPr><w:annotationRef/></w:r></w:p>`;return o+="</w:comment>",t.push({commentId:e.id,lastParaId:n,durableId:Nt(),parentId:e.parentId,done:e.done}),o}function Vo(e){if(!e||e.length===0)return {xml:"",paraInfos:[]};let t=[],n=[];for(let i of e)(i.parentId==null?t:n).push(i);let r=[],o=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><w:comments ${ot} ${it}>`;for(let i of t)o+=jo(i,r);for(let i of n)o+=jo(i,r);return o+="</w:comments>",{xml:o,paraInfos:r}}function Wo(e){if(e.length===0)return "";let t=new Map;for(let r of e)t.set(r.commentId,r.lastParaId);let n=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><w15:commentsEx ${ot} ${it}>`;for(let r of e){let o=`w15:paraId="${r.lastParaId}" w15:done="${r.done?"1":"0"}"`;if(r.parentId!=null){let i=t.get(r.parentId);i&&(o+=` w15:paraIdParent="${i}"`);}n+=`<w15:commentEx ${o} />`;}return n+="</w15:commentsEx>",n}function Uo(e){if(e.length===0)return "";let t=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><w16cid:commentsIds ${ot} ${it}>`;for(let n of e)t+=`<w16cid:commentId w16cid:paraId="${n.lastParaId}" w16cid:durableId="${n.durableId}" />`;return t+="</w16cid:commentsIds>",t}function Go(e,t){if(e.length===0)return "";let n=new Map;for(let o of t)n.set(o.id,o);let r=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><w16cex:commentsExtensible ${ot} ${it}>`;for(let o of e){let i=n.get(o.commentId);if(!i?.date)continue;let s=o.durableId,a=(i.date.endsWith("Z")?i.date:i.date+"Z").replace(/\.\d{3}Z$/,"Z");r+=`<w16cex:commentExtensible w16cex:durableId="${s}" w16cex:dateUtc="${a}"/>`;}return r+="</w16cex:commentsExtensible>",r}var vl="application/vnd.openxmlformats-officedocument.wordprocessingml.header+xml",Il="application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml",kl="application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml",El="application/vnd.openxmlformats-officedocument.wordprocessingml.commentsExtended+xml",Rl="application/vnd.openxmlformats-officedocument.wordprocessingml.commentsIds+xml",Ml="application/vnd.openxmlformats-officedocument.wordprocessingml.commentsExtensible+xml";async function Zo(e,t,n){let r=e.package.relationships;if(!r)return;let o=[];for(let[u,f]of r){if(!f.target)continue;let d=f.type===_.header?vl:f.type===_.footer?Il:null;d&&o.push({rId:u,target:f.target.replace(/^(\/?word\/)/,""),contentType:d,relType:f.type});}if(o.length===0)return;let i=t.file("[Content_Types].xml");if(i){let u=await i.async("text"),f=false;for(let{target:d,contentType:h}of o){let g=`/word/${d}`;u.includes(`PartName="${g}"`)||(u=u.replace("</Types>",`<Override PartName="${g}" ContentType="${h}"/></Types>`),f=true);}f&&t.file("[Content_Types].xml",u,{compression:"DEFLATE",compressionOptions:{level:n}});}let s="word/_rels/document.xml.rels",a=await ve(t,s),c=false;for(let{rId:u,relType:f,target:d}of o)a.includes(`Id="${u}"`)||(a=a.replace("</Relationships>",`<Relationship Id="${u}" Type="${f}" Target="${d}"/></Relationships>`),c=true);c&&t.file(s,a,{compression:"DEFLATE",compressionOptions:{level:n}});}async function $l(e,t){let n=[{partName:"/word/comments.xml",contentType:kl,target:"comments.xml",relType:_.comments},{partName:"/word/commentsExtended.xml",contentType:El,target:"commentsExtended.xml",relType:_.commentsExtended},{partName:"/word/commentsIds.xml",contentType:Rl,target:"commentsIds.xml",relType:_.commentsIds},{partName:"/word/commentsExtensible.xml",contentType:Ml,target:"commentsExtensible.xml",relType:_.commentsExtensible}],r=e.file("[Content_Types].xml");if(r){let s=await r.async("text"),a=false;for(let{partName:c,contentType:u}of n)s.includes(c)||(s=s.replace("</Types>",`<Override PartName="${c}" ContentType="${u}"/></Types>`),a=true);a&&e.file("[Content_Types].xml",s,{compression:"DEFLATE",compressionOptions:{level:t}});}let o="word/_rels/document.xml.rels",i=e.file(o);if(i){let s=await i.async("text"),a=false;for(let{target:c,relType:u}of n)if(!s.includes(c)){let f=`rId${xe(s)+1}`;s=s.replace("</Relationships>",`<Relationship Id="${f}" Type="${u}" Target="${c}"/></Relationships>`),a=true;}a&&e.file(o,s,{compression:"DEFLATE",compressionOptions:{level:t}});}}async function qo(e,t,n){let r=e.package.document.comments;if(!r||r.length===0)return;let{xml:o,paraInfos:i}=Vo(r);t.file("word/comments.xml",o,{compression:"DEFLATE",compressionOptions:{level:n}});let s=Wo(i);s&&t.file("word/commentsExtended.xml",s,{compression:"DEFLATE",compressionOptions:{level:n}});let a=Uo(i);a&&t.file("word/commentsIds.xml",a,{compression:"DEFLATE",compressionOptions:{level:n}});let c=Go(i,r);c&&t.file("word/commentsExtensible.xml",c,{compression:"DEFLATE",compressionOptions:{level:n}}),await $l(t,n);}function Al(e){let t=new Map,n=e.package.relationships;if(!n)return t;let r=[{map:e.package.headers,type:_.header},{map:e.package.footers,type:_.footer}];for(let{map:o,type:i}of r)if(o)for(let[s,a]of o.entries()){let c=n.get(s);c&&c.type===i&&c.target&&t.set(Bt(c.target),Ho(a));}return t}function Jo(e,t,n){let r={level:n};for(let[o,i]of Al(e))t.file(o,i,{compression:"DEFLATE",compressionOptions:r});}async function Yo(){let e=new Ko;e.file("[Content_Types].xml",`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
16
+ <Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">
17
+ <Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/>
18
+ <Default Extension="xml" ContentType="application/xml"/>
19
+ <Override PartName="/word/document.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml"/>
20
+ <Override PartName="/word/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml"/>
21
+ <Override PartName="/docProps/core.xml" ContentType="application/vnd.openxmlformats-package.core-properties+xml"/>
22
+ <Override PartName="/docProps/app.xml" ContentType="application/vnd.openxmlformats-officedocument.extended-properties+xml"/>
23
+ </Types>`),e.file("_rels/.rels",`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
24
+ <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
25
+ <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="word/document.xml"/>
26
+ <Relationship Id="rId2" Type="http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" Target="docProps/core.xml"/>
27
+ <Relationship Id="rId3" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties" Target="docProps/app.xml"/>
28
+ </Relationships>`),e.file("word/_rels/document.xml.rels",`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
29
+ <Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">
30
+ <Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/>
31
+ </Relationships>`),e.file("word/document.xml",`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
32
+ <w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">
33
+ <w:body>
34
+ <w:p>
35
+ <w:r>
36
+ <w:t></w:t>
37
+ </w:r>
38
+ </w:p>
39
+ <w:sectPr>
40
+ <w:pgSz w:w="12240" w:h="15840"/>
41
+ <w:pgMar w:top="1440" w:right="1440" w:bottom="1440" w:left="1440" w:header="720" w:footer="720" w:gutter="0"/>
42
+ </w:sectPr>
43
+ </w:body>
44
+ </w:document>`),e.file("word/styles.xml",`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
45
+ <w:styles xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
46
+ <w:docDefaults>
47
+ <w:rPrDefault>
48
+ <w:rPr>
49
+ <w:rFonts w:ascii="Calibri" w:hAnsi="Calibri"/>
50
+ <w:sz w:val="22"/>
51
+ </w:rPr>
52
+ </w:rPrDefault>
53
+ <w:pPrDefault>
54
+ <w:pPr>
55
+ <w:spacing w:after="200" w:line="276" w:lineRule="auto"/>
56
+ </w:pPr>
57
+ </w:pPrDefault>
58
+ </w:docDefaults>
59
+ <w:style w:type="paragraph" w:default="1" w:styleId="Normal">
60
+ <w:name w:val="Normal"/>
61
+ </w:style>
62
+ </w:styles>`);let t=new Date().toISOString();return e.file("docProps/core.xml",`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
63
+ <cp:coreProperties xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
64
+ <dc:creator>EigenPal DOCX Editor</dc:creator>
65
+ <dcterms:created xsi:type="dcterms:W3CDTF">${t}</dcterms:created>
66
+ <dcterms:modified xsi:type="dcterms:W3CDTF">${t}</dcterms:modified>
67
+ </cp:coreProperties>`),e.file("docProps/app.xml",`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
68
+ <Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties">
69
+ <Application>EigenPal DOCX Editor</Application>
70
+ <AppVersion>1.0.0</AppVersion>
71
+ </Properties>`),e.generateAsync({type:"arraybuffer",compression:"DEFLATE",compressionOptions:{level:6}})}async function Xt(e,t={}){if(!e.originalBuffer)throw new Error("Cannot repack document: no original buffer for round-trip. Use createDocx() for new documents.");let{compressionLevel:n=6,updateModifiedDate:r=true,modifiedBy:o}=t,i=e,s=await Ko.loadAsync(e.originalBuffer),a=new Ko;for(let[d,h]of Object.entries(s.files)){if(h.dir){a.folder(d.replace(/\/$/,""));continue}let g=await h.async("arraybuffer");a.file(d,g,{compression:"DEFLATE",compressionOptions:{level:n}});}let c=Ao(i);await No(c,a,n),await Lo(c,a,n);let u=$o(i);if(a.file("word/document.xml",u,{compression:"DEFLATE",compressionOptions:{level:n}}),Jo(i,a,n),await Zo(i,a,n),await qo(i,a,n),r){let d="docProps/core.xml",h=s.file(d);if(h){let g=await h.async("text"),m=Bl(g,{updateModifiedDate:r,modifiedBy:o});a.file(d,m,{compression:"DEFLATE",compressionOptions:{level:n}});}}return await a.generateAsync({type:"arraybuffer",compression:"DEFLATE",compressionOptions:{level:n}})}function Bl(e,t){let n=e;if(t.updateModifiedDate){let r=new Date().toISOString();n.includes("<dcterms:modified")?n=n.replace(/<dcterms:modified[^>]*>[^<]*<\/dcterms:modified>/,`<dcterms:modified xsi:type="dcterms:W3CDTF">${r}</dcterms:modified>`):n=n.replace("</cp:coreProperties>",`<dcterms:modified xsi:type="dcterms:W3CDTF">${r}</dcterms:modified></cp:coreProperties>`);}return t.modifiedBy&&(n.includes("<cp:lastModifiedBy")?n=n.replace(/<cp:lastModifiedBy>[^<]*<\/cp:lastModifiedBy>/,`<cp:lastModifiedBy>${R(t.modifiedBy)}</cp:lastModifiedBy>`):n=n.replace("</cp:coreProperties>",`<cp:lastModifiedBy>${R(t.modifiedBy)}</cp:lastModifiedBy></cp:coreProperties>`)),n}async function Qo(e){let t=await Yo(),n={...e,originalBuffer:t};return Xt(n)}Mt();var ae={type:"string",description:"Document ID returned from docx_load"},Lt={type:"object",properties:{paragraphIndex:{type:"number",description:"Index of the paragraph (0-indexed)",minimum:0},offset:{type:"number",description:"Character offset within the paragraph",minimum:0}},required:["paragraphIndex","offset"]},Ht={type:"object",properties:{start:Lt,end:Lt},required:["start","end"]},Nl={name:"docx_load",description:`Load a DOCX document from base64-encoded content.
72
+ Returns a document ID that can be used with other tools.
73
+ The document remains in session memory until closed.`,inputSchema:{type:"object",properties:{content:{type:"string",description:"Base64-encoded DOCX file content"},source:{type:"string",description:"Optional source filename or identifier for reference"}},required:["content"]},handler:async(e,t)=>{let{content:n,source:r}=e;try{let o=atob(n),i=new Uint8Array(o.length);for(let f=0;f<o.length;f++)i[f]=o.charCodeAt(f);let s=i.buffer,a=await et(s),c=`doc_${Date.now()}_${Math.random().toString(36).substr(2,9)}`;t.session.documents.set(c,{id:c,document:a,buffer:s,source:r,lastModified:Date.now()});let u=a.package.document.content.filter(f=>f.type==="paragraph").length;return {content:[{type:"text",text:JSON.stringify({documentId:c,source:r,paragraphCount:u,message:"Document loaded successfully"})}]}}catch(o){return {isError:true,content:[{type:"text",text:`Failed to load document: ${o.message}`}]}}},annotations:{category:"core",readOnly:false,complexity:"low"}},Xl={name:"docx_save",description:`Export the document to base64-encoded DOCX format.
74
+ Returns the document as a base64 string that can be saved to a file.`,inputSchema:{type:"object",properties:{documentId:ae},required:["documentId"]},handler:async(e,t)=>{let{documentId:n}=e,r=t.session.documents.get(n);if(!r)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};try{let o;r.buffer?o=await Xt(r.document):o=await Qo(r.document);let i=new Uint8Array(o),s="";for(let c=0;c<i.length;c++)s+=String.fromCharCode(i[c]);let a=btoa(s);return {content:[{type:"text",text:JSON.stringify({documentId:n,base64:a,size:o.byteLength,message:"Document exported successfully"})}]}}catch(o){return {isError:true,content:[{type:"text",text:`Failed to save document: ${o.message}`}]}}},annotations:{category:"core",readOnly:true,complexity:"low"}},Ll={name:"docx_close",description:`Close a document and free its memory.
75
+ Use this when done working with a document.`,inputSchema:{type:"object",properties:{documentId:ae},required:["documentId"]},handler:async(e,t)=>{let{documentId:n}=e;return t.session.documents.has(n)?(t.session.documents.delete(n),{content:[{type:"text",text:JSON.stringify({documentId:n,message:"Document closed"})}]}):{isError:true,content:[{type:"text",text:`Document not found: ${n}`}]}},annotations:{category:"core",readOnly:false,complexity:"low"}},Hl={name:"docx_get_info",description:`Get metadata and statistics about a document.
76
+ Returns paragraph count, word count, table count, and other useful info.`,inputSchema:{type:"object",properties:{documentId:ae},required:["documentId"]},handler:async(e,t)=>{let{documentId:n}=e,r=t.session.documents.get(n);if(!r)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};let o=r.document,i=o.package.document,s=i.content.filter(u=>u.type==="paragraph"),a=i.content.filter(u=>u.type==="table"),c=0;for(let u of s)if(u.type==="paragraph"){let f=ei(u);c+=f.split(/\s+/).filter(d=>d.length>0).length;}return {content:[{type:"text",text:JSON.stringify({documentId:n,paragraphCount:s.length,tableCount:a.length,wordCount:c,hasStyles:!!o.package.styles,hasTheme:!!o.package.theme,source:r.source,lastModified:r.lastModified})}]}},annotations:{category:"core",readOnly:true,complexity:"low"}},Ol={name:"docx_get_text",description:`Get the plain text content of the document.
77
+ Returns all text concatenated with paragraph breaks.
78
+ Useful for understanding document content before making edits.`,inputSchema:{type:"object",properties:{documentId:ae,maxLength:{type:"number",description:"Maximum characters to return (default: 10000)",default:1e4}},required:["documentId"]},handler:async(e,t)=>{let{documentId:n,maxLength:r=1e4}=e,o=t.session.documents.get(n);if(!o)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};let i=o.document.package.document,s=[];for(let u of i.content)u.type==="paragraph"?s.push(ei(u)):u.type==="table"&&s.push("[TABLE]");let a=s.join(`
79
+ `),c=a.length>r;return c&&(a=a.slice(0,r)+"..."),{content:[{type:"text",text:JSON.stringify({documentId:n,text:a,truncated:c,totalLength:c?s.join(`
80
+ `).length:a.length})}]}},annotations:{category:"core",readOnly:true,complexity:"low"}},zl={name:"docx_insert_text",description:`Insert text at a specific position in the document.
81
+ Position is specified by paragraph index (0-indexed) and character offset.`,inputSchema:{type:"object",properties:{documentId:ae,position:Lt,text:{type:"string",description:"Text to insert"}},required:["documentId","position","text"]},handler:async(e,t)=>{let{documentId:n,position:r,text:o}=e,i=t.session.documents.get(n);if(!i)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};try{let s=pe(i.document,{type:"insertText",position:r,text:o});return i.document=s,i.lastModified=Date.now(),{content:[{type:"text",text:JSON.stringify({success:!0,insertedLength:o.length,position:r})}]}}catch(s){return {isError:true,content:[{type:"text",text:`Failed to insert text: ${s.message}`}]}}},annotations:{category:"core",readOnly:false,complexity:"low"}},jl={name:"docx_replace_text",description:`Replace text in a range with new text.
82
+ Specify start and end positions to define the range to replace.`,inputSchema:{type:"object",properties:{documentId:ae,range:Ht,text:{type:"string",description:"Replacement text"}},required:["documentId","range","text"]},handler:async(e,t)=>{let{documentId:n,range:r,text:o}=e,i=t.session.documents.get(n);if(!i)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};try{let s=pe(i.document,{type:"replaceText",range:r,text:o});return i.document=s,i.lastModified=Date.now(),{content:[{type:"text",text:JSON.stringify({success:!0,replacedRange:r,newTextLength:o.length})}]}}catch(s){return {isError:true,content:[{type:"text",text:`Failed to replace text: ${s.message}`}]}}},annotations:{category:"core",readOnly:false,complexity:"low"}},_l={name:"docx_delete_text",description:`Delete text in a range.
83
+ Specify start and end positions to define the range to delete.`,inputSchema:{type:"object",properties:{documentId:ae,range:Ht},required:["documentId","range"]},handler:async(e,t)=>{let{documentId:n,range:r}=e,o=t.session.documents.get(n);if(!o)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};try{let i=pe(o.document,{type:"deleteText",range:r});return o.document=i,o.lastModified=Date.now(),{content:[{type:"text",text:JSON.stringify({success:!0,deletedRange:r})}]}}catch(i){return {isError:true,content:[{type:"text",text:`Failed to delete text: ${i.message}`}]}}},annotations:{category:"core",readOnly:false,complexity:"low"}},Vl={name:"docx_format_text",description:`Apply formatting to text in a range.
84
+ Supports bold, italic, underline, font size, font family, color, and highlight.`,inputSchema:{type:"object",properties:{documentId:ae,range:Ht,formatting:{type:"object",description:"Formatting options to apply",properties:{bold:{type:"boolean"},italic:{type:"boolean"},underline:{type:"boolean"},strikethrough:{type:"boolean"},fontSize:{type:"number",description:"Font size in points"},fontFamily:{type:"string"},color:{type:"string",description:'Hex color (e.g., "#FF0000")'},highlight:{type:"string",description:"Highlight color name"}}}},required:["documentId","range","formatting"]},handler:async(e,t)=>{let{documentId:n,range:r,formatting:o}=e,i=t.session.documents.get(n);if(!i)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};try{let s=pe(i.document,{type:"formatText",range:r,formatting:o});return i.document=s,i.lastModified=Date.now(),{content:[{type:"text",text:JSON.stringify({success:!0,range:r,appliedFormatting:o})}]}}catch(s){return {isError:true,content:[{type:"text",text:`Failed to format text: ${s.message}`}]}}},annotations:{category:"core",readOnly:false,complexity:"medium"}},Wl={name:"docx_apply_style",description:`Apply a named style to a paragraph.
85
+ Use document styles like "Heading1", "Heading2", "Normal", etc.`,inputSchema:{type:"object",properties:{documentId:ae,paragraphIndex:{type:"number",description:"Index of the paragraph (0-indexed)",minimum:0},styleId:{type:"string",description:'Style ID (e.g., "Heading1", "Normal")'}},required:["documentId","paragraphIndex","styleId"]},handler:async(e,t)=>{let{documentId:n,paragraphIndex:r,styleId:o}=e,i=t.session.documents.get(n);if(!i)return {isError:true,content:[{type:"text",text:`Document not found: ${n}`}]};try{let s=pe(i.document,{type:"applyStyle",paragraphIndex:r,styleId:o});return i.document=s,i.lastModified=Date.now(),{content:[{type:"text",text:JSON.stringify({success:!0,paragraphIndex:r,styleId:o})}]}}catch(s){return {isError:true,content:[{type:"text",text:`Failed to apply style: ${s.message}`}]}}},annotations:{category:"core",readOnly:false,complexity:"low"}};function ei(e){let t=[];for(let n of e.content)n.type==="run"?t.push(ti(n)):n.type==="hyperlink"&&t.push(Ul(n));return t.join("")}function ti(e){return e.content.filter(t=>t.type==="text").map(t=>t.text).join("")}function Ul(e){let t=[];for(let n of e.children)n.type==="run"&&t.push(ti(n));return t.join("")}var ni=[Nl,Xl,Ll,Hl,Ol,zl,jl,_l,Vl,Wl];function Gl(e={}){let{name:t="docx-editor",version:n="0.1.0",includeCoreTools:r=true,debug:o=false,additionalTools:i=[]}=e,s=new Map,a={id:`session_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,documents:new Map,data:new Map};if(r)for(let g of ni)s.set(g.name,g),o&&console.log(`[MCP] Registered core tool: ${g.name}`);let c=ce.getMcpTools();for(let g of c)s.has(g.name)&&console.warn(`[MCP] Tool '${g.name}' from plugin overrides existing tool`),s.set(g.name,g),o&&console.log(`[MCP] Registered plugin tool: ${g.name}`);for(let g of i)s.set(g.name,g),o&&console.log(`[MCP] Registered additional tool: ${g.name}`);let u=o?(g,m)=>{console.log(`[MCP] ${g}`,m??"");}:()=>{};async function f(g,m){let y=s.get(g);if(!y)throw new Error(`Unknown tool: ${g}`);u(`Calling tool: ${g}`,m);let T={session:a,log:u};try{let I=await y.handler(m,T);return u(`Tool ${g} completed`,I),I}catch(I){throw u(`Tool ${g} failed`,I),I}}function d(){return Array.from(s.values()).map(g=>({name:g.name,description:g.description,inputSchema:ql(g.inputSchema),category:g.annotations?.category}))}function h(){return {name:t,version:n,toolCount:s.size}}return {tools:s,session:a,handleToolCall:f,listTools:d,getInfo:h}}async function Zl(e,t){let{id:n,method:r,params:o}=t;try{switch(r){case "initialize":return {jsonrpc:"2.0",id:n,result:{protocolVersion:"2024-11-05",capabilities:{tools:{}},serverInfo:e.getInfo()}};case "tools/list":{let i=e.listTools();return {jsonrpc:"2.0",id:n,result:{tools:i.map(s=>({name:s.name,description:s.description,inputSchema:s.inputSchema}))}}}case "tools/call":{let{name:i,arguments:s}=o,a=await e.handleToolCall(i,s);return {jsonrpc:"2.0",id:n,result:a}}default:return {jsonrpc:"2.0",id:n,error:{code:-32601,message:`Method not found: ${r}`}}}}catch(i){return {jsonrpc:"2.0",id:n,error:{code:-32e3,message:i.message}}}}async function ri(e={}){let t=Gl(e);e.debug&&(console.error(`[MCP] Server started: ${t.getInfo().name} v${t.getInfo().version}`),console.error(`[MCP] Tools registered: ${t.tools.size}`));let r=(await import('readline')).createInterface({input:process.stdin,output:process.stdout,terminal:false}),o="";r.on("line",async i=>{o+=i;try{let s=JSON.parse(o);o="";let a=await Zl(t,s);process.stdout.write(JSON.stringify(a)+`
86
+ `);}catch{}}),r.on("close",()=>{e.debug&&console.error("[MCP] Server closed"),process.exit(0);});}function ql(e){return typeof e=="object"&&e!==null&&("type"in e||"properties"in e)?e:{type:"object",properties:{}}}function Jl(){let e=process.argv.slice(2);return {debug:e.includes("--debug")||e.includes("-d"),help:e.includes("--help")||e.includes("-h"),version:e.includes("--version")||e.includes("-v")}}var Yl=`
87
+ docx-editor-mcp - MCP server for DOCX document editing
88
+
89
+ USAGE:
90
+ docx-editor-mcp [OPTIONS]
91
+
92
+ OPTIONS:
93
+ -d, --debug Enable debug logging (logs to stderr)
94
+ -h, --help Show this help message
95
+ -v, --version Show version number
96
+
97
+ DESCRIPTION:
98
+ Starts an MCP (Model Context Protocol) server that exposes DOCX document
99
+ editing tools to AI clients like Claude Desktop.
100
+
101
+ AVAILABLE TOOLS:
102
+ Core Tools:
103
+ docx_load Load a DOCX document from base64
104
+ docx_save Export document to base64
105
+ docx_close Close a document
106
+ docx_get_info Get document metadata
107
+ docx_get_text Get document plain text
108
+ docx_insert_text Insert text at position
109
+ docx_replace_text Replace text in range
110
+ docx_delete_text Delete text in range
111
+ docx_format_text Apply text formatting
112
+ docx_apply_style Apply paragraph style
113
+
114
+ Template Tools (docxtemplater plugin):
115
+ docx_get_variables List template variables
116
+ docx_insert_variable Insert {variable} placeholder
117
+ docx_apply_template Substitute template variables
118
+ docx_validate_template Validate template syntax
119
+
120
+ CLAUDE DESKTOP CONFIGURATION:
121
+ Add to your Claude Desktop config:
122
+
123
+ {
124
+ "mcpServers": {
125
+ "docx-editor": {
126
+ "command": "npx",
127
+ "args": ["-y", "@eigenpal/docx-editor", "--mcp"]
128
+ }
129
+ }
130
+ }
131
+
132
+ EXAMPLES:
133
+ # Start server (normal mode)
134
+ docx-editor-mcp
135
+
136
+ # Start server with debug logging
137
+ docx-editor-mcp --debug
138
+ `;async function Kl(){let{debug:e,help:t,version:n}=Jl();t&&(console.log(Yl),process.exit(0)),n&&(console.log("0.1.0"),process.exit(0)),ce.register(eo),e&&(console.error("[MCP CLI] Registered docxtemplater plugin"),console.error(`[MCP CLI] Total plugins: ${ce.size}`),console.error(`[MCP CLI] Total MCP tools: ${ce.getMcpTools().length}`)),await ri({name:"docx-editor",version:"0.1.0",debug:e});}Kl().catch(e=>{console.error("[MCP CLI] Fatal error:",e),process.exit(1);});