@marimo-team/frontend 0.23.10-dev3 → 0.23.10-dev31

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 (669) hide show
  1. package/dist/assets/{CellStatus-D_RReCKN.js → CellStatus-BKK6G_iZ.js} +1 -1
  2. package/dist/assets/{ConnectedDataExplorerComponent-W0UfNkj7.js → ConnectedDataExplorerComponent-Vdy8K3hf.js} +1 -1
  3. package/dist/assets/{ImperativeModal-B3Th7k4R.js → ImperativeModal-CDPfRIx5.js} +1 -1
  4. package/dist/assets/JsonOutput-Bg1SpAZP.js +53 -0
  5. package/dist/assets/LazyAnyLanguageCodeMirror-DClDnO_2.js +2 -0
  6. package/dist/assets/{MarimoErrorOutput-HYZo17DD.js → MarimoErrorOutput-BQyzDTet.js} +1 -1
  7. package/dist/assets/{RSPContexts-CdN1NyAt.js → RSPContexts-QoVyPvhN.js} +1 -1
  8. package/dist/assets/{RenderHTML-B_YU1hMw.js → RenderHTML-B5i6Qdbh.js} +1 -1
  9. package/dist/assets/RunButton-ACHY83op.js +1 -0
  10. package/dist/assets/__vite-browser-external-CeH7R2Sf.js +1 -0
  11. package/dist/assets/__vite-browser-external-DTK_qJHK.js +1 -0
  12. package/dist/assets/{add-cell-with-ai-QmkSVxE_.js → add-cell-with-ai-Bt1jO2nX.js} +12 -12
  13. package/dist/assets/{add-connection-dialog-C_d6NoB6.js → add-connection-dialog-D0x71Nfb.js} +1 -1
  14. package/dist/assets/{agent-panel-Dq-14MP2.js → agent-panel-hQYUxnQ5.js} +1 -1
  15. package/dist/assets/{ai-model-dropdown-BZsz2gBj.js → ai-model-dropdown-BEPeAxTW.js} +1 -1
  16. package/dist/assets/{alert-dialog-BqFLkbUc.js → alert-dialog-5BGIfskO.js} +2 -2
  17. package/dist/assets/{any-language-editor-CXeLf_N8.js → any-language-editor-4KTAtjWB.js} +1 -1
  18. package/dist/assets/apl-DpOiWl6J.js +1 -0
  19. package/dist/assets/{app-config-button-DrjQAYDI.js → app-config-button-BeBbgBbf.js} +1 -1
  20. package/dist/assets/{arc-CWuN1tfc.js → arc-xh3ZebK_.js} +1 -1
  21. package/dist/assets/{architecture-7HQA4BMR-DJtUfdk-.js → architecture-7HQA4BMR-CtZSskKa.js} +1 -1
  22. package/dist/assets/{architectureDiagram-VXUJARFQ-Cgi4wo9P.js → architectureDiagram-VXUJARFQ-BOj65Cij.js} +1 -1
  23. package/dist/assets/asciiarmor-DVIuYySe.js +1 -0
  24. package/dist/assets/asn1-CWHjZJq6.js +1 -0
  25. package/dist/assets/{blockDiagram-VD42YOAC-CsHap8-F.js → blockDiagram-VD42YOAC-C1dCrclf.js} +1 -1
  26. package/dist/assets/brainfuck-CIKJewgG.js +1 -0
  27. package/dist/assets/{c4Diagram-YG6GDRKO-CZuArudM.js → c4Diagram-YG6GDRKO-i2yUrWYM.js} +1 -1
  28. package/dist/assets/{cache-panel-DYiVMv5x.js → cache-panel-Cs308ish.js} +1 -1
  29. package/dist/assets/{cell-editor-BnxVODbx.js → cell-editor-Brq_fn75.js} +12 -12
  30. package/dist/assets/{cell-link-Gwsf-bMV.js → cell-link-BFEa98Sc.js} +1 -1
  31. package/dist/assets/{cells-BRMYB7Wo.js → cells-k7Js5h2t.js} +68 -66
  32. package/dist/assets/cells-pu5xzE_v.css +2 -0
  33. package/dist/assets/channel-C8k5aAg8.js +1 -0
  34. package/dist/assets/{chat-display-DG6DhHcQ.js → chat-display-Umskg52b.js} +1 -1
  35. package/dist/assets/{chat-panel-BvrrOl8J.js → chat-panel-BEpdLxDR.js} +1 -1
  36. package/dist/assets/{chat-ui-g5FqhPv-.js → chat-ui-qtgqHWnk.js} +1 -1
  37. package/dist/assets/{chunk-4BX2VUAB-Ca6WzYTr.js → chunk-4BX2VUAB-CHtIUBVX.js} +1 -1
  38. package/dist/assets/chunk-55IACEB6-DJtiFmZI.js +1 -0
  39. package/dist/assets/{chunk-5FQGJX7Z-D9iBG0F7.js → chunk-5FQGJX7Z-Bp9g5nD2.js} +2 -2
  40. package/dist/assets/{chunk-ABZYJK2D-BG7Eb4WW.js → chunk-ABZYJK2D-CW6LcQEi.js} +3 -3
  41. package/dist/assets/{chunk-ATLVNIR6-CqLn9HI1.js → chunk-ATLVNIR6-CaXl_ZVt.js} +1 -1
  42. package/dist/assets/{chunk-B4BG7PRW-D4SyZNjn.js → chunk-B4BG7PRW-Dkcioyxv.js} +1 -1
  43. package/dist/assets/{chunk-CVBHYZKI-C-NWvPQL.js → chunk-CVBHYZKI-Cx6_q0Bq.js} +1 -1
  44. package/dist/assets/{chunk-DI55MBZ5-t9uiMPiN.js → chunk-DI55MBZ5-CpmNjAbj.js} +1 -1
  45. package/dist/assets/{chunk-EXTU4WIE-BmVk7Fyq.js → chunk-EXTU4WIE-BfQ60QJd.js} +1 -1
  46. package/dist/assets/{chunk-FMBD7UC4-DlnzxSkO.js → chunk-FMBD7UC4-Dzk6L3_z.js} +1 -1
  47. package/dist/assets/{chunk-HN2XXSSU-Bcaj5fRB.js → chunk-HN2XXSSU-DKAgaU5O.js} +1 -1
  48. package/dist/assets/{chunk-JA3XYJ7Z-B5b2QHOb.js → chunk-JA3XYJ7Z-Cx9lJRz-.js} +1 -1
  49. package/dist/assets/{chunk-JZLCHNYA-1_sVfAnw.js → chunk-JZLCHNYA-LdSYK6Ej.js} +1 -1
  50. package/dist/assets/{chunk-MI3HLSF2-DqzZqBCh.js → chunk-MI3HLSF2-AJRVV4NE.js} +1 -1
  51. package/dist/assets/{chunk-N4CR4FBY-CFJoD-EQ.js → chunk-N4CR4FBY-DM96YL3R.js} +2 -2
  52. package/dist/assets/{chunk-QN33PNHL-BBE_bx9E.js → chunk-QN33PNHL-4cZDuwgu.js} +1 -1
  53. package/dist/assets/{chunk-QXUST7PY-Cu1nR-L2.js → chunk-QXUST7PY-Di5YbBao.js} +1 -1
  54. package/dist/assets/{chunk-QZHKN3VN-BAnb9AKF.js → chunk-QZHKN3VN-B2hZ4g68.js} +1 -1
  55. package/dist/assets/{chunk-S3R3BYOJ-Cl0iW04v.js → chunk-S3R3BYOJ-BAKX3hoQ.js} +1 -1
  56. package/dist/assets/{chunk-TZMSLE5B-f5ix6iSd.js → chunk-TZMSLE5B-BFdV9a1D.js} +1 -1
  57. package/dist/assets/classDiagram-2ON5EDUG-CFISa78E.js +1 -0
  58. package/dist/assets/classDiagram-v2-WZHVMYZB-BzMNKvre.js +1 -0
  59. package/dist/assets/{clike-bdcjLdZ4.js → clike-wo4CVrJj.js} +1 -1
  60. package/dist/assets/clojure-CTxjMkBI.js +1 -0
  61. package/dist/assets/cmake-aJ0aGjat.js +1 -0
  62. package/dist/assets/cobol-Dw9T4cw-.js +1 -0
  63. package/dist/assets/{code-block-37QAKDTI-B19XL3UR.js → code-block-37QAKDTI-Cj7FoIhl.js} +1 -1
  64. package/dist/assets/coffeescript-B5HCKl_0.js +1 -0
  65. package/dist/assets/column-preview-CibBmCB_.js +1 -0
  66. package/dist/assets/{command-KARR7KMq.js → command-BkXWJLBP.js} +1 -1
  67. package/dist/assets/{command-palette-NK5d8oXe.js → command-palette-DLeYFxOX.js} +1 -1
  68. package/dist/assets/{common-uMN7vCPi.js → common-C9lH0PD9.js} +1 -1
  69. package/dist/assets/commonlisp-C578hhl1.js +1 -0
  70. package/dist/assets/{components-C6xgQdpy.js → components-CXG-2UWv.js} +1 -1
  71. package/dist/assets/{copy-icon-OjtDb4gO.js → copy-icon-BuRdHNPA.js} +1 -1
  72. package/dist/assets/{cose-bilkent-S5V4N54A-CQqSLzd1.js → cose-bilkent-S5V4N54A-DsnN-_2o.js} +1 -1
  73. package/dist/assets/crystal-D84c1nzD.js +1 -0
  74. package/dist/assets/{css-ACAb8MRM.js → css-BJsW3aHa.js} +1 -1
  75. package/dist/assets/cypher-DBO3MHmN.js +1 -0
  76. package/dist/assets/d-KvHiAR3H.js +1 -0
  77. package/dist/assets/{dagre-6UL2VRFP-CVKXpDlr.js → dagre-6UL2VRFP-CHMBr-on.js} +1 -1
  78. package/dist/assets/{data-grid-overlay-editor-BdDYn72O.js → data-grid-overlay-editor-orng_e3E.js} +1 -1
  79. package/dist/assets/{datasource-CHSjxFZg.js → datasource-mov7mYsn.js} +1 -1
  80. package/dist/assets/dependency-graph-panel-DCUqRSKS.js +5 -0
  81. package/dist/assets/{diagram-PSM6KHXK-BfzLNKp-.js → diagram-PSM6KHXK-BAkhyJz0.js} +1 -1
  82. package/dist/assets/{diagram-QEK2KX5R-D_H77Ni5.js → diagram-QEK2KX5R-OUubZf2n.js} +1 -1
  83. package/dist/assets/{diagram-S2PKOQOG-DJmVBeMk.js → diagram-S2PKOQOG-CGIZL2qm.js} +1 -1
  84. package/dist/assets/{dialog-DzC_QCtT.js → dialog-DRnNAWYl.js} +1 -1
  85. package/dist/assets/diff-BmUpKGx-.js +1 -0
  86. package/dist/assets/dist-0sLFAEuj.js +1 -0
  87. package/dist/assets/dist-2FedModH.js +7 -0
  88. package/dist/assets/{dist-CNyMUs19.js → dist-2TkSwR77.js} +1 -1
  89. package/dist/assets/dist-AQEMgdxp.js +1 -0
  90. package/dist/assets/dist-B65RnwM5.js +1 -0
  91. package/dist/assets/dist-BURue7-e.js +3 -0
  92. package/dist/assets/{dist-A7swzSTR.js → dist-BXcZeTeA.js} +1 -1
  93. package/dist/assets/dist-BXeHg5NQ.js +1 -0
  94. package/dist/assets/{dist-DqVEVg0c.js → dist-BcvGVYKl.js} +1 -1
  95. package/dist/assets/dist-BdKlcwR7.js +1 -0
  96. package/dist/assets/{dist-CsvFAFh9.js → dist-BieDRQs9.js} +1 -1
  97. package/dist/assets/{dist-HlsDto3K.js → dist-Bo13cFwO.js} +1 -1
  98. package/dist/assets/dist-Bqr3AzD8.js +1 -0
  99. package/dist/assets/{dist-C78V1LRz.js → dist-BscEQwf7.js} +1 -1
  100. package/dist/assets/{dist-CpTFpfm_.js → dist-BwnT-_gD.js} +1 -1
  101. package/dist/assets/dist-BznMRbTz.js +1 -0
  102. package/dist/assets/dist-C5PcfT25.js +1 -0
  103. package/dist/assets/{dist-BdyjRhEt.js → dist-CWMKC7yO.js} +1 -1
  104. package/dist/assets/dist-CZ5EKIth.js +1 -0
  105. package/dist/assets/{dist-CJIOLS6O.js → dist-CbwsxTDg.js} +1 -1
  106. package/dist/assets/dist-CdtVwSQt.js +1 -0
  107. package/dist/assets/{dist-Dr8mWwQ_.js → dist-ChrXdgjb.js} +1 -1
  108. package/dist/assets/{dist-CqEym3Sr.js → dist-CvuhNTbr.js} +1 -1
  109. package/dist/assets/{dist-CKT_lJKW.js → dist-CycP1Cdf.js} +1 -1
  110. package/dist/assets/{dist-BrR4M-k3.js → dist-D0HyMpgV.js} +12 -11
  111. package/dist/assets/{dist-CciFN1z_.js → dist-D2g-G0wk.js} +1 -1
  112. package/dist/assets/dist-D3lJti6y.js +1 -0
  113. package/dist/assets/dist-DBklo-uX.js +1 -0
  114. package/dist/assets/{dist-DUHHizRG.js → dist-DCzr8T5W.js} +1 -1
  115. package/dist/assets/{dist-BlOtCkpT.js → dist-DU8NrdIh.js} +1 -1
  116. package/dist/assets/dist-DUDjfnME.js +1 -0
  117. package/dist/assets/dist-DVkC-Qmw.js +2 -0
  118. package/dist/assets/{dist-CocyeH0q.js → dist-DgGMawx8.js} +1 -1
  119. package/dist/assets/dist-Dq1Qheae.js +1 -0
  120. package/dist/assets/{dist-D70Tz1Kr.js → dist-DxlQcmyw.js} +1 -1
  121. package/dist/assets/dist-GiCZ_RyY.js +1 -0
  122. package/dist/assets/{dist-CBSMxaO_.js → dist-HyCgERnW.js} +4 -4
  123. package/dist/assets/{dist-CpcTHxTt.js → dist-Otadb4Hb.js} +1 -1
  124. package/dist/assets/dist-PCikvPoP.js +1 -0
  125. package/dist/assets/{dist-4ni0fia5.js → dist-PHrL7abE.js} +3 -3
  126. package/dist/assets/{dist-BQeNY9Zl.js → dist-QqcJxlfK.js} +1 -1
  127. package/dist/assets/dist-RMRSa-Mj.js +13 -0
  128. package/dist/assets/dist-RnuaWZoB.js +1 -0
  129. package/dist/assets/{dist-C9ZB41s2.js → dist-YEXtMjTi.js} +2 -2
  130. package/dist/assets/dist-deBZx53p.js +1 -0
  131. package/dist/assets/{dist-BF6UNR6V.js → dist-flL-WW8v.js} +1 -1
  132. package/dist/assets/dist-rBRbke5D.js +1 -0
  133. package/dist/assets/{dockerfile-BSMbgQQl.js → dockerfile-DQFWVVcg.js} +1 -1
  134. package/dist/assets/{documentation-panel-6ZJIjjrY.js → documentation-panel-CQ8pDf0n.js} +1 -1
  135. package/dist/assets/download-GddKDXL8.js +9 -0
  136. package/dist/assets/{dropdown-menu-CR7cnzLX.js → dropdown-menu-CZ4XbE-c.js} +1 -1
  137. package/dist/assets/dtd-Dwf-AbUl.js +1 -0
  138. package/dist/assets/dylan-VHUB-7ez.js +1 -0
  139. package/dist/assets/ecl-DvGrObaA.js +1 -0
  140. package/dist/assets/edit-page-BgX4RqUv.js +9 -0
  141. package/dist/assets/eiffel-CUYga93e.js +1 -0
  142. package/dist/assets/elm-BhMhmEP6.js +1 -0
  143. package/dist/assets/{erDiagram-Q2GNP2WA-ROTNwSJz.js → erDiagram-Q2GNP2WA-Da5CNIuT.js} +1 -1
  144. package/dist/assets/erlang-D4xbdJFD.js +1 -0
  145. package/dist/assets/{error-banner-LdWZDbqd.js → error-banner-DWuez3Jq.js} +1 -1
  146. package/dist/assets/{error-panel-BAL4mIVv.js → error-panel-lbt2yT6e.js} +1 -1
  147. package/dist/assets/{es-DGgq-Wes.js → es-By9LYOsD.js} +1 -1
  148. package/dist/assets/{esm-DeiyaVAJ.js → esm-DgI-7XOj.js} +1 -1
  149. package/dist/assets/esm-xaw4Vy8N.js +1 -0
  150. package/dist/assets/eye-off-Cm6DdkeR.js +1 -0
  151. package/dist/assets/factor-C0grrWrC.js +1 -0
  152. package/dist/assets/{factor-C-_cRSDM.js → factor-Ccw_GUUV.js} +1 -1
  153. package/dist/assets/{field-zLmMOSA4.js → field-BWxnw0_c.js} +1 -1
  154. package/dist/assets/file-explorer-panel-B80nuHmZ.js +26 -0
  155. package/dist/assets/{file-icons-CNegz5Wt.js → file-icons-on-PIYta.js} +1 -1
  156. package/dist/assets/{file-name-input-BNHbCr1E.js → file-name-input-5TJN9FVv.js} +3 -3
  157. package/dist/assets/{fileToBase64-DZfwJMrG.js → fileToBase64-D15LPv1Y.js} +1 -1
  158. package/dist/assets/{floating-outline-C_E8vH7G.js → floating-outline-CCH9y0X9.js} +1 -1
  159. package/dist/assets/{flowDiagram-NV44I4VS--ee3IIVF.js → flowDiagram-NV44I4VS-BxZczAJ3.js} +1 -1
  160. package/dist/assets/{focus-B2t0WTxH.js → focus-CRI5ilWC.js} +1 -1
  161. package/dist/assets/{form-BnFjtYoC.js → form-BUnTfUo-.js} +2 -2
  162. package/dist/assets/forth-CSTdXn4A.js +1 -0
  163. package/dist/assets/fortran-fENQO2l9.js +1 -0
  164. package/dist/assets/{fullscreen-eipL3i3Y.js → fullscreen-DFky0PAA.js} +3 -3
  165. package/dist/assets/{gallery-page-Bcf7fYLy.js → gallery-page-ClMvrHMz.js} +1 -1
  166. package/dist/assets/{ganttDiagram-JELNMOA3-BGhmW2aP.js → ganttDiagram-JELNMOA3-D6lhmAdR.js} +1 -1
  167. package/dist/assets/gas-CPJMP4zj.js +1 -0
  168. package/dist/assets/gherkin-CiUmN4EE.js +1 -0
  169. package/dist/assets/{gitGraph-G5XIXVHT-DuJ_0c_E.js → gitGraph-G5XIXVHT-Du3ykVxi.js} +1 -1
  170. package/dist/assets/{gitGraphDiagram-V2S2FVAM-DXFCZcxr.js → gitGraphDiagram-V2S2FVAM-Cn2X9uyf.js} +1 -1
  171. package/dist/assets/{glide-data-editor-DqKNgyfg.js → glide-data-editor-C_ammsJR.js} +4 -4
  172. package/dist/assets/{globals-7JnRMGd4.js → globals-BivClSmn.js} +1 -1
  173. package/dist/assets/groovy-DMooZA1X.js +1 -0
  174. package/dist/assets/haskell-sDlThg6u.js +1 -0
  175. package/dist/assets/haxe-Do80ITri.js +1 -0
  176. package/dist/assets/home-page-a0C5a4iJ.js +4 -0
  177. package/dist/assets/{hooks-DTSuaBec.js → hooks-C153jvoU.js} +1 -1
  178. package/dist/assets/{html-to-image-GGmvROsd.js → html-to-image-rLeQGF-G.js} +1 -1
  179. package/dist/assets/idl-DFPg6k4F.js +1 -0
  180. package/dist/assets/index-Ct3LgsQ8.css +2 -0
  181. package/dist/assets/index-CyOq1SNo.js +38 -0
  182. package/dist/assets/{info-VBDWY6EO-DPQEAe2T.js → info-VBDWY6EO-DfrFT_jr.js} +1 -1
  183. package/dist/assets/infoDiagram-HS3SLOUP-DkUueEWV.js +2 -0
  184. package/dist/assets/{input-C3Hrdlqq.js → input-DckzEovC.js} +1 -1
  185. package/dist/assets/javascript-BGc4iHiT.js +1 -0
  186. package/dist/assets/{journeyDiagram-XKPGCS4Q-9D2JCyrN.js → journeyDiagram-XKPGCS4Q-D_8hf_60.js} +1 -1
  187. package/dist/assets/julia-BHNHVraD.js +1 -0
  188. package/dist/assets/{kanban-definition-3W4ZIXB7-DxV26rf-.js → kanban-definition-3W4ZIXB7-DLnwfoGw.js} +1 -1
  189. package/dist/assets/katex-Bty7Bcil.js +1 -0
  190. package/dist/assets/{kiosk-mode-Di1lkQq9.js → kiosk-mode-DhNcHA04.js} +1 -1
  191. package/dist/assets/{label-xHqFtfdz.js → label-C2_YQRio.js} +1 -1
  192. package/dist/assets/layout-C_EG2AcB.js +9 -0
  193. package/dist/assets/{line-x4bpd_8D.js → line-VKarCWVL.js} +1 -1
  194. package/dist/assets/{linear-CW_ww8od.js → linear-BrLBJGJq.js} +1 -1
  195. package/dist/assets/livescript-Bv2FpOTI.js +1 -0
  196. package/dist/assets/{logs-panel-CaW-dsNY.js → logs-panel-c4pWZhi-.js} +1 -1
  197. package/dist/assets/{loro_wasm_bg-CtNTubKN.js → loro_wasm_bg-Drxc4adW.js} +1 -1
  198. package/dist/assets/lua-BysKHKPZ.js +1 -0
  199. package/dist/assets/{markdown-renderer-CHlWY8PG.js → markdown-renderer-BFAnsPek.js} +3 -3
  200. package/dist/assets/mathematica-BBTHoTvM.js +1 -0
  201. package/dist/assets/mbox-DeT9_lvk.js +1 -0
  202. package/dist/assets/{menu-items-DcP01QzW.js → menu-items-BP7Ju9ww.js} +1 -1
  203. package/dist/assets/mermaid-4DMBBIKO-Otg-raA6.js +1 -0
  204. package/dist/assets/{mermaid-Bes0ynI8.js → mermaid-a0JtkT4R.js} +3 -3
  205. package/dist/assets/{mermaid-parser.core-aYU6qXxk.js → mermaid-parser.core-B73Gp-Wo.js} +2 -2
  206. package/dist/assets/{mhchem-8N2oE3tb.js → mhchem-LBCEVJFr.js} +1 -1
  207. package/dist/assets/{mindmap-definition-VGOIOE7T-DTJAbAQ8.js → mindmap-definition-VGOIOE7T-DO_Zb7LC.js} +1 -1
  208. package/dist/assets/mirc-D5fMSrXQ.js +1 -0
  209. package/dist/assets/mllike-BtxCpmpf.js +1 -0
  210. package/dist/assets/modelica-CRQcZpK6.js +1 -0
  211. package/dist/assets/mscgen-BfscU11q.js +1 -0
  212. package/dist/assets/multi-map-C4OANz8X.js +1 -0
  213. package/dist/assets/mumps-g7ooySbl.js +1 -0
  214. package/dist/assets/{name-cell-input-DUOo0eNf.js → name-cell-input-mVvyyh5P.js} +1 -1
  215. package/dist/assets/nsis-BtyCmCHZ.js +1 -0
  216. package/dist/assets/{nsis-BGZ5EB-j.js → nsis-CzZqoCdu.js} +1 -1
  217. package/dist/assets/ntriples-DLyxF-NO.js +1 -0
  218. package/dist/assets/{number-overlay-editor-DL4IwqDH.js → number-overlay-editor-DyhbXrfU.js} +1 -1
  219. package/dist/assets/octave-CFXP_zzr.js +1 -0
  220. package/dist/assets/{ordinal-_nQ2r1qQ.js → ordinal-DgI3JO68.js} +1 -1
  221. package/dist/assets/{outline-panel-BOHhothv.js → outline-panel-DdPSzT5z.js} +1 -1
  222. package/dist/assets/oz-CrQbC0N_.js +1 -0
  223. package/dist/assets/{packages-panel-4nEohRPp.js → packages-panel-C4tFa1Sc.js} +1 -1
  224. package/dist/assets/{packet-DYOGHKS2-CxgeJpvT.js → packet-DYOGHKS2-DoIJcGk-.js} +1 -1
  225. package/dist/assets/{pair-with-agent-modal-1tufe5MP.js → pair-with-agent-modal-_SlYEcmZ.js} +1 -1
  226. package/dist/assets/{panels-BAdoiY2Y.js → panels-CAd4fjM2.js} +1 -1
  227. package/dist/assets/pascal-CCSZgYZH.js +1 -0
  228. package/dist/assets/perl-Bc1MycMl.js +1 -0
  229. package/dist/assets/{pie-VRWISCQL-GZ13ReaG.js → pie-VRWISCQL-DYulZZ0A.js} +1 -1
  230. package/dist/assets/{pieDiagram-ADFJNKIX-_3l2XiEo.js → pieDiagram-ADFJNKIX-Dxph8su5.js} +1 -1
  231. package/dist/assets/pig-CDr04RdE.js +1 -0
  232. package/dist/assets/{popover-Bz_0Vkyf.js → popover-CNCYAwbC.js} +1 -1
  233. package/dist/assets/powershell-DcvrUwmh.js +1 -0
  234. package/dist/assets/{process-output-ClRYUndH.js → process-output-CRgRzt0h.js} +1 -1
  235. package/dist/assets/properties-Y8OgFJMt.js +1 -0
  236. package/dist/assets/protobuf-Dyx-ENis.js +1 -0
  237. package/dist/assets/{pug-CYW0agOo.js → pug-BqLMXh-D.js} +1 -1
  238. package/dist/assets/pug-T7qjkmFh.js +1 -0
  239. package/dist/assets/puppet-BzYSg90u.js +1 -0
  240. package/dist/assets/python-D4S7tVrv.js +1 -0
  241. package/dist/assets/q-YpqabiSl.js +1 -0
  242. package/dist/assets/{quadrantDiagram-AYHSOK5B-CX3AMAvR.js → quadrantDiagram-AYHSOK5B-OK6c_k6c.js} +1 -1
  243. package/dist/assets/r-DzpuVbmQ.js +1 -0
  244. package/dist/assets/{radar-ZZBFDIW7-CbAjwmA0.js → radar-ZZBFDIW7-DsPiq6Fm.js} +1 -1
  245. package/dist/assets/radio-group-DS_mmqHJ.js +1 -0
  246. package/dist/assets/{react-vega-COx3Ibyn.js → react-vega-CF0xMHAj.js} +1 -1
  247. package/dist/assets/{react-vega-CXIQBUis.js → react-vega-DiXzyRNd.js} +1 -1
  248. package/dist/assets/readonly-python-code-3HZIBvHp.js +1 -0
  249. package/dist/assets/{renderShortcut-CcFk3m01.js → renderShortcut--ku7VECI.js} +1 -1
  250. package/dist/assets/{requirementDiagram-UZGBJVZJ-ORHKBnkg.js → requirementDiagram-UZGBJVZJ-CHfh_UWf.js} +1 -1
  251. package/dist/assets/reveal-component-D2A1xGKf.js +1069 -0
  252. package/dist/assets/rpm-DlmAEsH3.js +1 -0
  253. package/dist/assets/ruby-BHSBK3B4.js +1 -0
  254. package/dist/assets/{run-page-iIqjPtCe.js → run-page-BhDNPbBY.js} +1 -1
  255. package/dist/assets/{sankeyDiagram-TZEHDZUN-Dvb8kmWa.js → sankeyDiagram-TZEHDZUN-DJTjdP71.js} +1 -1
  256. package/dist/assets/sas-DmQmrPAn.js +1 -0
  257. package/dist/assets/save-worker-Bcr7rl0C.js +77 -0
  258. package/dist/assets/scheme-CZHvt0eC.js +1 -0
  259. package/dist/assets/scratchpad-panel-BNnBStKO.js +1 -0
  260. package/dist/assets/{secrets-panel-BBvdIhtU.js → secrets-panel-NK379MhX.js} +1 -1
  261. package/dist/assets/{select-DZcFyKFQ.js → select-6suE6YM2.js} +1 -1
  262. package/dist/assets/{sequenceDiagram-WL72ISMW-DQycpQtE.js → sequenceDiagram-WL72ISMW-BbqjAz3N.js} +1 -1
  263. package/dist/assets/session-panel-rrXDbccI.js +1 -0
  264. package/dist/assets/{share-DMwTZOTH.js → share-mSf5FZIP.js} +1 -1
  265. package/dist/assets/shell-BJzvpTMz.js +1 -0
  266. package/dist/assets/sieve-DGjPhm-6.js +1 -0
  267. package/dist/assets/smalltalk-DaG60CSr.js +1 -0
  268. package/dist/assets/{snippets-panel-CUFYazvB.js → snippets-panel-BqUEqlG4.js} +1 -1
  269. package/dist/assets/sparql-CN49rXKB.js +1 -0
  270. package/dist/assets/{src-CvyFXpBy.js → src-Cf4NnJCp.js} +1 -1
  271. package/dist/assets/{state-BZoBW9cM.js → state-C9ggN1rs.js} +1 -1
  272. package/dist/assets/{state-CRuZ8deV.js → state-DvSTWgUA.js} +3 -3
  273. package/dist/assets/{stateDiagram-FKZM4ZOC-D78DIR_F.js → stateDiagram-FKZM4ZOC-DF2xwZZf.js} +1 -1
  274. package/dist/assets/stateDiagram-v2-4FDKWEC3-6MssSC6h.js +1 -0
  275. package/dist/assets/{step-D7xg1Moj.js → step-DGkZosD0.js} +1 -1
  276. package/dist/assets/stylus-CzHZ_0CL.js +1 -0
  277. package/dist/assets/swift-5fr5bTbW.js +1 -0
  278. package/dist/assets/{switch-BiU_sAcn.js → switch-Ac7CgLgh.js} +1 -1
  279. package/dist/assets/tcl-D5oaR_GS.js +1 -0
  280. package/dist/assets/{terminal-BYGihNNp.js → terminal-BJktwlxI.js} +1 -1
  281. package/dist/assets/{textarea-0Z0sU8Go.js → textarea-BfDUjd9c.js} +1 -1
  282. package/dist/assets/textile-CJ5e8-7o.js +1 -0
  283. package/dist/assets/{time-DLdI7jB3.js → time-BCqVDrZA.js} +1 -1
  284. package/dist/assets/{timeline-definition-IT6M3QCI-DIywx3xf.js → timeline-definition-IT6M3QCI-5BUJBQNX.js} +1 -1
  285. package/dist/assets/toml-D9QwsDZO.js +1 -0
  286. package/dist/assets/{tooltip-DTV9tlSr.js → tooltip-B_PkSKN3.js} +1 -1
  287. package/dist/assets/{tracing-Drwmt2bI.js → tracing-DhjGEWqy.js} +1 -1
  288. package/dist/assets/{tracing-panel-Bk-q3YTu.js → tracing-panel-Dyt4cvQF.js} +2 -2
  289. package/dist/assets/tree-actions-XvgFV23w.js +1 -0
  290. package/dist/assets/{treemap-GDKQZRPO-Dz_qZhuG.js → treemap-GDKQZRPO-4ltp47XX.js} +1 -1
  291. package/dist/assets/troff-DlwQJbfr.js +1 -0
  292. package/dist/assets/ttcn-DUvoO9Vo.js +1 -0
  293. package/dist/assets/ttcn-cfg-Cj-t-B3M.js +1 -0
  294. package/dist/assets/turtle-DzvxCIjc.js +1 -0
  295. package/dist/assets/use-toast-CJ1Tj2eC.js +1 -0
  296. package/dist/assets/useBoolean-CE6PfxGj.js +1 -0
  297. package/dist/assets/useCellActionButton-BHCh6qfk.js +1 -0
  298. package/dist/assets/useDeleteCell-cucOoAuB.js +1 -0
  299. package/dist/assets/{useDependencyPanelTab-CP0s5K4d.js → useDependencyPanelTab-BYu7OQY_.js} +1 -1
  300. package/dist/assets/{useInstallPackage-DUF4IRRI.js → useInstallPackage-GI6gu7_S.js} +1 -1
  301. package/dist/assets/useNotebookActions-D5xq_tdd.js +1 -0
  302. package/dist/assets/{useRunCells-2n74L4TT.js → useRunCells-CVd2QKS9.js} +1 -1
  303. package/dist/assets/{useSplitCell-CLVd_9hM.js → useSplitCell-D1KubWSa.js} +1 -1
  304. package/dist/assets/vb-Caf126uo.js +1 -0
  305. package/dist/assets/vbscript-BgRl-LR8.js +1 -0
  306. package/dist/assets/{vega-component-COOhhZ3h.js → vega-component-C-fGN8Hr.js} +1 -1
  307. package/dist/assets/velocity-CpvfwasF.js +1 -0
  308. package/dist/assets/verilog-hsHogyKv.js +1 -0
  309. package/dist/assets/vhdl-FciHazR1.js +1 -0
  310. package/dist/assets/webidl-CqjZNx5V.js +1 -0
  311. package/dist/assets/{worker-B38WhSlZ.js → worker-Bp53hInb.js} +6 -6
  312. package/dist/assets/{write-secret-modal-BFLlHwgU.js → write-secret-modal-CwsDn7jz.js} +1 -1
  313. package/dist/assets/xquery-DpTaL2IT.js +1 -0
  314. package/dist/assets/{xychartDiagram-PRI3JC2R-CjS1dL8k.js → xychartDiagram-PRI3JC2R-Cqm5NYAj.js} +1 -1
  315. package/dist/assets/yacas-D6bbkHsk.js +1 -0
  316. package/dist/assets/z80-MlujNizn.js +1 -0
  317. package/dist/index.html +68 -70
  318. package/package.json +3 -3
  319. package/src/components/data-table/TableBottomBar.tsx +1 -15
  320. package/src/components/data-table/TableTopBar.tsx +8 -13
  321. package/src/components/data-table/__tests__/TableBottomBar.test.tsx +6 -12
  322. package/src/components/data-table/__tests__/column-visibility-dropdown.test.tsx +227 -0
  323. package/src/components/data-table/__tests__/data-table.test.tsx +154 -12
  324. package/src/components/data-table/column-visibility-dropdown.tsx +204 -0
  325. package/src/components/data-table/data-table.tsx +1 -1
  326. package/src/components/data-table/filter-by-values-picker.tsx +39 -17
  327. package/src/components/data-table/filter-pills.tsx +1 -1
  328. package/src/components/data-table/hover-tooltip/__tests__/content.test.ts +60 -0
  329. package/src/components/data-table/hover-tooltip/content.ts +44 -0
  330. package/src/components/data-table/hover-tooltip/hover-tooltip.tsx +55 -0
  331. package/src/components/data-table/hover-tooltip/use-table-hover-tooltip.ts +159 -0
  332. package/src/components/data-table/renderers.tsx +27 -43
  333. package/src/components/datasources/__tests__/filter-empty.test.ts +183 -0
  334. package/src/components/datasources/datasources.tsx +92 -3
  335. package/src/components/editor/cell/cell-context-menu.tsx +15 -2
  336. package/src/components/editor/cell/code/language-toggle.tsx +7 -1
  337. package/src/components/editor/chrome/wrapper/app-chrome.tsx +97 -52
  338. package/src/components/editor/chrome/wrapper/lazy-panels.ts +91 -0
  339. package/src/components/editor/chrome/wrapper/sidebar.tsx +2 -0
  340. package/src/components/editor/documentation.css +35 -0
  341. package/src/components/editor/file-tree/file-explorer.tsx +8 -18
  342. package/src/components/editor/file-tree/tree-actions.tsx +46 -1
  343. package/src/components/editor/renderers/slides-layout/__tests__/plugin.test.ts +20 -0
  344. package/src/components/editor/renderers/slides-layout/types.ts +1 -0
  345. package/src/components/slides/__tests__/minimap-actions.test.tsx +166 -0
  346. package/src/components/slides/__tests__/reveal-component.test.ts +425 -0
  347. package/src/components/slides/minimap.tsx +127 -10
  348. package/src/components/slides/reveal-component.tsx +287 -61
  349. package/src/components/slides/slide-cell-view.tsx +26 -2
  350. package/src/components/slides/slide-form.tsx +26 -4
  351. package/src/components/storage/__tests__/storage-inspector.test.ts +53 -0
  352. package/src/components/storage/storage-inspector.tsx +68 -48
  353. package/src/components/ui/__tests__/use-toast.test.ts +75 -0
  354. package/src/components/ui/combobox.tsx +51 -32
  355. package/src/components/ui/reorderable-list.tsx +13 -0
  356. package/src/components/ui/select-core/__tests__/use-select-list.test.ts +294 -0
  357. package/src/components/ui/select-core/__tests__/utils.test.ts +222 -0
  358. package/src/components/ui/select-core/index.ts +16 -0
  359. package/src/components/ui/select-core/option-row.tsx +33 -0
  360. package/src/components/ui/select-core/render-slot.ts +20 -0
  361. package/src/components/ui/select-core/select-list.tsx +248 -0
  362. package/src/components/ui/select-core/types.ts +44 -0
  363. package/src/components/ui/select-core/use-select-list.ts +347 -0
  364. package/src/components/ui/select-core/utils.ts +121 -0
  365. package/src/components/ui/use-toast.ts +33 -13
  366. package/src/core/cells/__tests__/__snapshots__/cells.test.ts.snap +0 -28
  367. package/src/core/cells/__tests__/cell.test.ts +29 -2
  368. package/src/core/cells/cell.ts +5 -1
  369. package/src/core/codemirror/go-to-definition/commands.ts +4 -3
  370. package/src/core/codemirror/language/languages/python.ts +2 -0
  371. package/src/core/codemirror/language/languages/sql/utils.ts +3 -1
  372. package/src/core/codemirror/lsp/__tests__/markdown-renderer.test.ts +41 -0
  373. package/src/core/codemirror/lsp/markdown-renderer.ts +59 -0
  374. package/src/core/datasets/data-source-connections.ts +2 -0
  375. package/src/core/network/__tests__/requests-static.test.ts +30 -0
  376. package/src/core/network/requests-static.ts +14 -10
  377. package/src/core/wasm/worker/bootstrap.ts +12 -4
  378. package/src/plugins/impl/MultiselectPlugin.tsx +19 -142
  379. package/src/plugins/impl/SearchableSelect.tsx +16 -97
  380. package/src/plugins/impl/__tests__/DropdownPlugin.test.tsx +5 -2
  381. package/src/plugins/impl/__tests__/MultiSelectPlugin.test.ts +1 -1
  382. package/src/plugins/layout/DownloadPlugin.tsx +1 -1
  383. package/src/utils/lazy.ts +6 -1
  384. package/dist/assets/JsonOutput-40Fp2jEG.js +0 -53
  385. package/dist/assets/LazyAnyLanguageCodeMirror-BEvXb3VX.js +0 -2
  386. package/dist/assets/RunButton-NDsrcmxR.js +0 -1
  387. package/dist/assets/__vite-browser-external-DuZehUbK.js +0 -1
  388. package/dist/assets/__vite-browser-external-Jpm67kL1.js +0 -1
  389. package/dist/assets/apl-EAxnZS_5.js +0 -1
  390. package/dist/assets/asciiarmor-zxnaShQE.js +0 -1
  391. package/dist/assets/asn1-7i28Os5R.js +0 -1
  392. package/dist/assets/brainfuck-BZegPsXK.js +0 -1
  393. package/dist/assets/cells-jmgGt1lS.css +0 -2
  394. package/dist/assets/channel-6XBTrC3Q.js +0 -1
  395. package/dist/assets/chunk-55IACEB6-Cr4aqhf3.js +0 -1
  396. package/dist/assets/classDiagram-2ON5EDUG-DlIMDu6i.js +0 -1
  397. package/dist/assets/classDiagram-v2-WZHVMYZB-CcIhhkQu.js +0 -1
  398. package/dist/assets/clojure-VUVi7fTV.js +0 -1
  399. package/dist/assets/cmake-DZJIDbjY.js +0 -1
  400. package/dist/assets/cobol-klCRwlLm.js +0 -1
  401. package/dist/assets/coffeescript-C9foD9ub.js +0 -1
  402. package/dist/assets/column-preview-Bd7jDAiw.js +0 -1
  403. package/dist/assets/commonlisp-tHxoA35J.js +0 -1
  404. package/dist/assets/components-C_z0Dsug.js +0 -1
  405. package/dist/assets/crystal-CQ11GdrX.js +0 -1
  406. package/dist/assets/cypher-CJ0Uzw29.js +0 -1
  407. package/dist/assets/d-DP0SUIt1.js +0 -1
  408. package/dist/assets/dependency-graph-panel-BmJ-hPrs.js +0 -5
  409. package/dist/assets/diff-CNs8MB38.js +0 -1
  410. package/dist/assets/dist-B1U1kGCR.js +0 -1
  411. package/dist/assets/dist-B7U5jPfs.js +0 -1
  412. package/dist/assets/dist-BZX17NA8.js +0 -1
  413. package/dist/assets/dist-BtL81uwZ.js +0 -1
  414. package/dist/assets/dist-Bww7hlVc.js +0 -1
  415. package/dist/assets/dist-CAIBlJtJ.js +0 -1
  416. package/dist/assets/dist-CHcznzB-.js +0 -2
  417. package/dist/assets/dist-CPF3W2Y-.js +0 -1
  418. package/dist/assets/dist-CPczQFlJ.js +0 -3
  419. package/dist/assets/dist-CUapWJe4.js +0 -1
  420. package/dist/assets/dist-CWeWT34c.js +0 -1
  421. package/dist/assets/dist-CXBpwk_w.js +0 -7
  422. package/dist/assets/dist-ChF5Ln9c.js +0 -13
  423. package/dist/assets/dist-CuCuJBdf.js +0 -1
  424. package/dist/assets/dist-DH60fwgs.js +0 -1
  425. package/dist/assets/dist-DZPpMvcR.js +0 -1
  426. package/dist/assets/dist-DkcQg5xD.js +0 -1
  427. package/dist/assets/dist-DkzFxGAX.js +0 -1
  428. package/dist/assets/dist-DmBXXm0k.js +0 -1
  429. package/dist/assets/dist-W1iHBJeE.js +0 -1
  430. package/dist/assets/dist-_fyDen1v.js +0 -1
  431. package/dist/assets/dist-cgiAP5sW.js +0 -1
  432. package/dist/assets/dist-vkd1160q.js +0 -1
  433. package/dist/assets/download-cs3tezQD.js +0 -9
  434. package/dist/assets/dtd-BsD0uJw0.js +0 -1
  435. package/dist/assets/dylan-DbrGP1IP.js +0 -1
  436. package/dist/assets/ecl-C0rZlhHw.js +0 -1
  437. package/dist/assets/edit-page-DBwRiakc.js +0 -9
  438. package/dist/assets/eiffel-2ZX-OpSJ.js +0 -1
  439. package/dist/assets/ellipsis-vertical-CkwWkOQL.js +0 -1
  440. package/dist/assets/elm-CbOSKldD.js +0 -1
  441. package/dist/assets/erlang-BWiOgHIX.js +0 -1
  442. package/dist/assets/esm-CqWdmSnV.js +0 -1
  443. package/dist/assets/factor-CUwFIMOP.js +0 -1
  444. package/dist/assets/file-explorer-panel-B6UWw04X.js +0 -26
  445. package/dist/assets/forth-BEQA4QQL.js +0 -1
  446. package/dist/assets/fortran-DoPpOZgG.js +0 -1
  447. package/dist/assets/gas-BYovsvOE.js +0 -1
  448. package/dist/assets/gherkin-CFiRc1Pf.js +0 -1
  449. package/dist/assets/groovy-DJNH7evt.js +0 -1
  450. package/dist/assets/haskell-duZvcePm.js +0 -1
  451. package/dist/assets/haxe-B2l95qvB.js +0 -1
  452. package/dist/assets/home-page-5euYDrSb.js +0 -4
  453. package/dist/assets/idl-CZ_xwU8I.js +0 -1
  454. package/dist/assets/index-BIw7BKLH.css +0 -2
  455. package/dist/assets/index-DIc0rD1S.js +0 -38
  456. package/dist/assets/infoDiagram-HS3SLOUP-CaaUieFa.js +0 -2
  457. package/dist/assets/javascript-CF5KGSAj.js +0 -1
  458. package/dist/assets/julia-BQlq5iZn.js +0 -1
  459. package/dist/assets/katex-CzQ1KdW3.js +0 -1
  460. package/dist/assets/layout-Bco8l-YP.js +0 -9
  461. package/dist/assets/livescript-sRMenfqS.js +0 -1
  462. package/dist/assets/lua-a56ITumN.js +0 -1
  463. package/dist/assets/maps-n3GaPJwv.js +0 -1
  464. package/dist/assets/mathematica-B3m4jXeH.js +0 -1
  465. package/dist/assets/mbox-BtL7aO2I.js +0 -1
  466. package/dist/assets/mermaid-4DMBBIKO-CekzuCTz.js +0 -1
  467. package/dist/assets/mirc-S27kuZ31.js +0 -1
  468. package/dist/assets/mllike-B3kx3KeF.js +0 -1
  469. package/dist/assets/modelica-DgbW4dSi.js +0 -1
  470. package/dist/assets/mscgen-BIa_4d-0.js +0 -1
  471. package/dist/assets/multi-map-CUuNtzHt.js +0 -1
  472. package/dist/assets/mumps-4fnELyHs.js +0 -1
  473. package/dist/assets/nsis-BfGyMssE.js +0 -1
  474. package/dist/assets/ntriples-DeY1n_tC.js +0 -1
  475. package/dist/assets/octave-7Qn21jzx.js +0 -1
  476. package/dist/assets/oz-CiPFl3Ni.js +0 -1
  477. package/dist/assets/pascal-BH9yQLzw.js +0 -1
  478. package/dist/assets/perl-DfMCx2i2.js +0 -1
  479. package/dist/assets/pig-D9CNebQN.js +0 -1
  480. package/dist/assets/play-C7DcCsoO.js +0 -1
  481. package/dist/assets/powershell-Dss0bU9F.js +0 -1
  482. package/dist/assets/properties-CHADYQUL.js +0 -1
  483. package/dist/assets/protobuf-DFN-V4SD.js +0 -1
  484. package/dist/assets/pug-DOI9FnEk.js +0 -1
  485. package/dist/assets/puppet-BV0HAkDS.js +0 -1
  486. package/dist/assets/python-C83Db0-4.js +0 -1
  487. package/dist/assets/q-D84S4YaJ.js +0 -1
  488. package/dist/assets/r-jmqrRzXv.js +0 -1
  489. package/dist/assets/radio-group-DcUXH-59.js +0 -1
  490. package/dist/assets/readonly-python-code-D6Ca_8n6.js +0 -1
  491. package/dist/assets/reveal-component-ComuCTva.js +0 -1069
  492. package/dist/assets/rpm-DUjG0xRk.js +0 -1
  493. package/dist/assets/ruby-SP4FIzir.js +0 -1
  494. package/dist/assets/sas-BxaPz2EX.js +0 -1
  495. package/dist/assets/save-worker-D2iQi-UK.js +0 -77
  496. package/dist/assets/scheme-HBseLApj.js +0 -1
  497. package/dist/assets/scratchpad-panel-rClgbzFO.js +0 -1
  498. package/dist/assets/session-panel-DSNfdRG3.js +0 -1
  499. package/dist/assets/shell-w8ATY_lQ.js +0 -1
  500. package/dist/assets/sieve-Dyq0LGDO.js +0 -1
  501. package/dist/assets/smalltalk-D7mAtumc.js +0 -1
  502. package/dist/assets/sparql-DAeEYE_u.js +0 -1
  503. package/dist/assets/stateDiagram-v2-4FDKWEC3-DX9rpmwh.js +0 -1
  504. package/dist/assets/stylus-Cw3Ugan7.js +0 -1
  505. package/dist/assets/swift-CPsNOBsX.js +0 -1
  506. package/dist/assets/tcl-BfWyQdZa.js +0 -1
  507. package/dist/assets/textile-BKgaSzSN.js +0 -1
  508. package/dist/assets/toml-BSOdv04W.js +0 -1
  509. package/dist/assets/tree-actions-BM_EJr3E.js +0 -1
  510. package/dist/assets/troff-C0hD9kig.js +0 -1
  511. package/dist/assets/ttcn-DEqPxhoh.js +0 -1
  512. package/dist/assets/ttcn-cfg-B-7jSlUe.js +0 -1
  513. package/dist/assets/turtle-BTtgFsu8.js +0 -1
  514. package/dist/assets/use-toast-IPAtJGea.js +0 -1
  515. package/dist/assets/useBoolean-Bp18o6XG.js +0 -1
  516. package/dist/assets/useCellActionButton-DARfBbL-.js +0 -1
  517. package/dist/assets/useDeleteCell-l5BAp1WU.js +0 -1
  518. package/dist/assets/useNotebookActions-DFkPMDea.js +0 -1
  519. package/dist/assets/vb-DfRPk_ji.js +0 -1
  520. package/dist/assets/vbscript-C8D4uv5N.js +0 -1
  521. package/dist/assets/velocity-DxKr2FFC.js +0 -1
  522. package/dist/assets/verilog-CxVhamiH.js +0 -1
  523. package/dist/assets/vhdl-B-IpBNOA.js +0 -1
  524. package/dist/assets/webidl-CBjKmBwO.js +0 -1
  525. package/dist/assets/xquery-ABGCbLv0.js +0 -1
  526. package/dist/assets/yacas-Ckyxh7oh.js +0 -1
  527. package/dist/assets/z80-Dr5sQweg.js +0 -1
  528. package/src/plugins/impl/multiselectFilterFn.tsx +0 -22
  529. /package/dist/assets/{ImageComparisonComponent-BIetTBDq.js → ImageComparisonComponent-_eB8PDFu.js} +0 -0
  530. /package/dist/assets/{Inputs-C6ftxLAJ.js → Inputs-CdyQ7nLC.js} +0 -0
  531. /package/dist/assets/{Plot-Ba3WGWNu.js → Plot-BEhgxy0k.js} +0 -0
  532. /package/dist/assets/{apl-Byte72fT.js → apl-CpVTW0fY.js} +0 -0
  533. /package/dist/assets/{array-CC7vZNGO.js → array-BKCdRGCR.js} +0 -0
  534. /package/dist/assets/{asciiarmor-BU-VnG1Y.js → asciiarmor-qDK46YPd.js} +0 -0
  535. /package/dist/assets/{asn1-hTvH3S4T.js → asn1-s2ZJql-T.js} +0 -0
  536. /package/dist/assets/{asterisk-DIMri3P4.js → asterisk-BCtKIQ_I.js} +0 -0
  537. /package/dist/assets/{azure-B42ls0Ui.js → azure-DHLkI9dd.js} +0 -0
  538. /package/dist/assets/{brainfuck-C-q1Rv8J.js → brainfuck-5fD7ZBSv.js} +0 -0
  539. /package/dist/assets/{card--6HRj4T9.js → card-C9wGDUuq.js} +0 -0
  540. /package/dist/assets/{chunk-4F5CHEZ2-eEwFz7fp.js → chunk-4F5CHEZ2-DyHrF3GO.js} +0 -0
  541. /package/dist/assets/{chunk-B2363JML-COExSe0d.js → chunk-B2363JML-DutzPsZq.js} +0 -0
  542. /package/dist/assets/{chunk-DR5Q36YT-OB6tC_dd.js → chunk-DR5Q36YT-CbaaAWZ2.js} +0 -0
  543. /package/dist/assets/{chunk-FRFDVMJY-CO3-6rb4.js → chunk-FRFDVMJY-2_jGMKZ2.js} +0 -0
  544. /package/dist/assets/{chunk-PL6DKKU2-B9mDp5iV.js → chunk-PL6DKKU2-Ce2JFCUf.js} +0 -0
  545. /package/dist/assets/{chunk-SJTYNZTY-Dh_h90Yu.js → chunk-SJTYNZTY-PWGFKpLd.js} +0 -0
  546. /package/dist/assets/{chunk-TQ3KTPDO-CFybjK0M.js → chunk-TQ3KTPDO-CNkbM7LT.js} +0 -0
  547. /package/dist/assets/{chunk-UMXZTB3W-C3w83KpJ.js → chunk-UMXZTB3W-emEajCOH.js} +0 -0
  548. /package/dist/assets/{clear-button-Cfe8K4j_.js → clear-button-UYLFbizO.js} +0 -0
  549. /package/dist/assets/{click-outside-container-BNVqwewc.js → click-outside-container-B4pJ8dzi.js} +0 -0
  550. /package/dist/assets/{clike-BE-9Ct_H.js → clike-D58k-9vu.js} +0 -0
  551. /package/dist/assets/{clojure-Co-TLeNo.js → clojure-Dkfjc-Fr.js} +0 -0
  552. /package/dist/assets/{cmake-B-Nm_Opd.js → cmake-ffkxaUPf.js} +0 -0
  553. /package/dist/assets/{cobol-BGdihAZT.js → cobol-CKARYRbQ.js} +0 -0
  554. /package/dist/assets/{coffeescript-BUZXkMUO.js → coffeescript-Dz_r13Pd.js} +0 -0
  555. /package/dist/assets/{colors-BG8Z91CW.js → colors-CUF0x3zZ.js} +0 -0
  556. /package/dist/assets/{common-keywords-15xBKau4.js → common-keywords-Dl8aWedN.js} +0 -0
  557. /package/dist/assets/{commonlisp-CFkPbxvX.js → commonlisp-EavL1_-N.js} +0 -0
  558. /package/dist/assets/{crystal-CqfqDl34.js → crystal-BQ8grXRY.js} +0 -0
  559. /package/dist/assets/{css-DPEtZWJi.js → css-Bmqfl4iE.js} +0 -0
  560. /package/dist/assets/{cypher-B0t8FJvU.js → cypher-BKXIqXpT.js} +0 -0
  561. /package/dist/assets/{cytoscape.esm-DT8iy6p1.js → cytoscape.esm-Dr1GhgW1.js} +0 -0
  562. /package/dist/assets/{d-DRa_XRSB.js → d-DRfFJaS4.js} +0 -0
  563. /package/dist/assets/{diff-GLneonpD.js → diff-BWk1g4qN.js} +0 -0
  564. /package/dist/assets/{dist-BQWswd1A.js → dist-3Zzc89mE.js} +0 -0
  565. /package/dist/assets/{dist-BXRWfNwi.js → dist-D_deoNzY.js} +0 -0
  566. /package/dist/assets/{dtd-uVrZNVF0.js → dtd-C1gvGnbI.js} +0 -0
  567. /package/dist/assets/{duckdb-keywords-CYQ5DEZJ.js → duckdb-keywords-C_J2q1mp.js} +0 -0
  568. /package/dist/assets/{dylan-DkNeA4FZ.js → dylan-D26gjyBo.js} +0 -0
  569. /package/dist/assets/{ebnf-XMH6KY7E.js → ebnf-VrI3aTER.js} +0 -0
  570. /package/dist/assets/{ecl-CldUgvc9.js → ecl-D_pghsRW.js} +0 -0
  571. /package/dist/assets/{eiffel-CoMDRbRL.js → eiffel-CQeRT5l7.js} +0 -0
  572. /package/dist/assets/{elm-Cb5XC6ev.js → elm-BMJejWwJ.js} +0 -0
  573. /package/dist/assets/{empty-state-Cjt8SfMh.js → empty-state-vCWg-_A9.js} +0 -0
  574. /package/dist/assets/{erlang-8H3fTZ3L.js → erlang-DTDt7sE1.js} +0 -0
  575. /package/dist/assets/{esm-1wf4HygE.js → esm-DAVeZ8YU.js} +0 -0
  576. /package/dist/assets/{fcl-DyFJAgkq.js → fcl-B9roOCQ-.js} +0 -0
  577. /package/dist/assets/{formatting-CSG9kqNb.js → formatting-30FX-rC-.js} +0 -0
  578. /package/dist/assets/{forth-B8kC4npz.js → forth-DLug1Uos.js} +0 -0
  579. /package/dist/assets/{fortran-CNWGEL3c.js → fortran-CfPd9x83.js} +0 -0
  580. /package/dist/assets/{gas-DnZQNTHK.js → gas-C1vwqe1-.js} +0 -0
  581. /package/dist/assets/{gherkin-JfGcGvci.js → gherkin-DxFhlJYL.js} +0 -0
  582. /package/dist/assets/{groovy-D0FWiAVm.js → groovy-AqjvKzmp.js} +0 -0
  583. /package/dist/assets/{haskell-wUB3uX-G.js → haskell-B9BMJXS_.js} +0 -0
  584. /package/dist/assets/{haxe-g0JY6eL-.js → haxe-CFd4aFZH.js} +0 -0
  585. /package/dist/assets/{http-ySzAzH5W.js → http-BM6n_euc.js} +0 -0
  586. /package/dist/assets/{idl-CV2cLkPc.js → idl-DKlFwAHI.js} +0 -0
  587. /package/dist/assets/{init-DsZRk2YA.js → init-DZpk0tdu.js} +0 -0
  588. /package/dist/assets/{javascript-CT6okXEZ.js → javascript-BMuus-3E.js} +0 -0
  589. /package/dist/assets/{julia-CKC48ufo.js → julia-DGv2rboF.js} +0 -0
  590. /package/dist/assets/{katex-BE4UDS50.js → katex-DL3QMY8n.js} +0 -0
  591. /package/dist/assets/{links-1rtF1-eC.js → links-DoPgJNku.js} +0 -0
  592. /package/dist/assets/{livescript-C43pZ6Ue.js → livescript-51GCvdcX.js} +0 -0
  593. /package/dist/assets/{loro_wasm_bg-CXnd80ne.js → loro_wasm_bg-DYsTic7p.js} +0 -0
  594. /package/dist/assets/{lua-Cs2mb10K.js → lua-BwsAaftY.js} +0 -0
  595. /package/dist/assets/{marimo-icons-CiwvnnsT.js → marimo-icons-CLbC-oB3.js} +0 -0
  596. /package/dist/assets/{math-B-ZqhQTL.js → math-PgJy15ir.js} +0 -0
  597. /package/dist/assets/{mathematica-B5FMK3ma.js → mathematica-Du4amQ2X.js} +0 -0
  598. /package/dist/assets/{mbox-36Zrn5Bd.js → mbox-DKL-l6mb.js} +0 -0
  599. /package/dist/assets/{mirc-BKTAABSX.js → mirc-CvS1f8zr.js} +0 -0
  600. /package/dist/assets/{mllike-DbuClUqc.js → mllike-VhUq11ot.js} +0 -0
  601. /package/dist/assets/{modelica-CKRvBm7N.js → modelica-CjlHUZat.js} +0 -0
  602. /package/dist/assets/{mscgen-B4BRgnCi.js → mscgen-26STiUsc.js} +0 -0
  603. /package/dist/assets/{multi-icon-NVkxesVZ.js → multi-icon-BvuxcR2m.js} +0 -0
  604. /package/dist/assets/{mumps-BFiMcyFV.js → mumps-4o8IRFVU.js} +0 -0
  605. /package/dist/assets/{nginx-Cz_XvoTm.js → nginx-Tk1rzBXg.js} +0 -0
  606. /package/dist/assets/{node-sql-parser-BtkrI4pN.js → node-sql-parser-BRpb-iwO.js} +0 -0
  607. /package/dist/assets/{ntriples-QQAkJYAR.js → ntriples-D0zMsGJ-.js} +0 -0
  608. /package/dist/assets/{octave-DsTphmGZ.js → octave-CpJ40RVG.js} +0 -0
  609. /package/dist/assets/{oz-CD9rr5Iz.js → oz-W9l5CbXg.js} +0 -0
  610. /package/dist/assets/{panel-context-BJbBGfoL.js → panel-context-D7Ggu8Nw.js} +0 -0
  611. /package/dist/assets/{pascal-DdHEIlJE.js → pascal-BZtdYBm4.js} +0 -0
  612. /package/dist/assets/{path-DvTahePH.js → path-dqkZlAhR.js} +0 -0
  613. /package/dist/assets/{pathUtils-CJjndqMI.js → pathUtils-DPJ-EgtH.js} +0 -0
  614. /package/dist/assets/{perl-DHPJBQ1u.js → perl-Q79ziUtd.js} +0 -0
  615. /package/dist/assets/{pig-Yz7ERgca.js → pig-Dn9ueYxG.js} +0 -0
  616. /package/dist/assets/{powershell-CHPZ_bsU.js → powershell-DfXPJ56g.js} +0 -0
  617. /package/dist/assets/{properties-CI9nc7K4.js → properties-DRrw--9g.js} +0 -0
  618. /package/dist/assets/{protobuf-BYSIv2pY.js → protobuf-5jBh6Y7Q.js} +0 -0
  619. /package/dist/assets/{puppet-CEpLafZX.js → puppet-Bql5dDjm.js} +0 -0
  620. /package/dist/assets/{python-BndVuwG1.js → python-C7HNB5A8.js} +0 -0
  621. /package/dist/assets/{q-L_cetpiW.js → q-CW9lnZXb.js} +0 -0
  622. /package/dist/assets/{r-Dd37AKWk.js → r-DmuxMz9j.js} +0 -0
  623. /package/dist/assets/{request-registry--h6PWG50.js → request-registry-BmtPM40k.js} +0 -0
  624. /package/dist/assets/{requests-DqJEWJ-Q.js → requests-QKoDeQkn.js} +0 -0
  625. /package/dist/assets/{rpm-CHrvhtlN.js → rpm-2BQZRXYJ.js} +0 -0
  626. /package/dist/assets/{ruby-BPOowfX6.js → ruby-B-FyRKB2.js} +0 -0
  627. /package/dist/assets/{runs-BD0G-C2A.js → runs-DSnhrBgK.js} +0 -0
  628. /package/dist/assets/{sas-BsEFSvEP.js → sas-Q-94el51.js} +0 -0
  629. /package/dist/assets/{scheme-B42INBu7.js → scheme-By445Ne_.js} +0 -0
  630. /package/dist/assets/{semaphore-FlZezxaf.js → semaphore-qUGKVeAE.js} +0 -0
  631. /package/dist/assets/{shell-BPea12OI.js → shell-CezKrT5T.js} +0 -0
  632. /package/dist/assets/{sieve-C-yPcLw5.js → sieve-MRWdUbX3.js} +0 -0
  633. /package/dist/assets/{simple-mode-CFlvn0Mm.js → simple-mode-BtxX-F6Z.js} +0 -0
  634. /package/dist/assets/{smalltalk-e7OO1ATb.js → smalltalk-C0KZrhPl.js} +0 -0
  635. /package/dist/assets/{solr-BAO4N63o.js → solr-DaMZCY5b.js} +0 -0
  636. /package/dist/assets/{sparql-B4I2Ledx.js → sparql-CIMoBhOL.js} +0 -0
  637. /package/dist/assets/{spreadsheet-DWqd5foV.js → spreadsheet-CAZFfDgv.js} +0 -0
  638. /package/dist/assets/{sql-RBdzBYsM.js → sql-bIHkMPYp.js} +0 -0
  639. /package/dist/assets/{src-BnrQkOKh.js → src-DvosOx8X.js} +0 -0
  640. /package/dist/assets/{state-BGDrw26V.js → state-B2X5_9Jc.js} +0 -0
  641. /package/dist/assets/{stylus-CBRbZwhN.js → stylus-BxV1gbJN.js} +0 -0
  642. /package/dist/assets/{swift-B2hnU7ha.js → swift-C7ozIpB2.js} +0 -0
  643. /package/dist/assets/{swiper-component-YGJlBaCp.js → swiper-component-BA40Nidc.js} +0 -0
  644. /package/dist/assets/{tcl-BtyamtaZ.js → tcl-D9BrnXdg.js} +0 -0
  645. /package/dist/assets/{textile-M9mhyNE9.js → textile-8cDJUs1C.js} +0 -0
  646. /package/dist/assets/{tiddlywiki-BsHUDwie.js → tiddlywiki-C-jC8X9Z.js} +0 -0
  647. /package/dist/assets/{tiki-ZqBe4Kjv.js → tiki-CJPdyY5i.js} +0 -0
  648. /package/dist/assets/{timer-B6DpdVnC.js → timer-ffBO1paY.js} +0 -0
  649. /package/dist/assets/{toml-YxyxhyRy.js → toml-Dtc3-sql.js} +0 -0
  650. /package/dist/assets/{treemap-DeGcO9km.js → treemap-8bMgVaTX.js} +0 -0
  651. /package/dist/assets/{troff-C7xpi05X.js → troff-CxUT34rC.js} +0 -0
  652. /package/dist/assets/{ttcn-D3YytrJU.js → ttcn-BiVwbsr5.js} +0 -0
  653. /package/dist/assets/{ttcn-cfg-DlZ5vA9E.js → ttcn-cfg-BLBfLtVM.js} +0 -0
  654. /package/dist/assets/{turtle-BSHvAsUe.js → turtle-DqTQI7WU.js} +0 -0
  655. /package/dist/assets/{types-a-yURniQ.js → types-Cpe-qFT-.js} +0 -0
  656. /package/dist/assets/{useDeepCompareMemoize-zUHU--0D.js → useDeepCompareMemoize-CVmg-GkP.js} +0 -0
  657. /package/dist/assets/{useInterval-2YvvhIZI.js → useInterval-COQ3SSh0.js} +0 -0
  658. /package/dist/assets/{vb-DdkIDLlO.js → vb-D-mN5USJ.js} +0 -0
  659. /package/dist/assets/{vbscript-DhYGmk_p.js → vbscript-BHlqX42l.js} +0 -0
  660. /package/dist/assets/{velocity-DAXJNEw4.js → velocity-BX6395is.js} +0 -0
  661. /package/dist/assets/{verilog-jmuT_L3b.js → verilog-CixbCKyb.js} +0 -0
  662. /package/dist/assets/{vhdl-DcVQ97RU.js → vhdl-CofOR-02.js} +0 -0
  663. /package/dist/assets/{web-vitals-xkV-JBVF.js → web-vitals-CpL_P378.js} +0 -0
  664. /package/dist/assets/{webidl-B-YB_4OQ.js → webidl-DAqkXtNt.js} +0 -0
  665. /package/dist/assets/{ws-BnE9sl8z.js → ws-K6nioC-Z.js} +0 -0
  666. /package/dist/assets/{xquery-DOmY3Oe8.js → xquery-wPbfv0-o.js} +0 -0
  667. /package/dist/assets/{yacas-pL3kJRXV.js → yacas-B5Zk1avC.js} +0 -0
  668. /package/dist/assets/{z80-VwVuI_MT.js → z80-C0HuDTqd.js} +0 -0
  669. /package/src/components/{data-table → ui}/value-chips.tsx +0 -0
@@ -0,0 +1,1069 @@
1
+ var Ll=Object.defineProperty;var Pl=(Ce,ke,T)=>ke in Ce?Ll(Ce,ke,{enumerable:!0,configurable:!0,writable:!0,value:T}):Ce[ke]=T;var I=(Ce,ke,T)=>Pl(Ce,typeof ke!="symbol"?ke+"":ke,T);import{s as mn}from"./chunk-LvLJmgfZ.js";import{n as be,u as Si}from"./useEvent-D91BmmQi.js";import{t as Il}from"./react-Bj1aDYRI.js";import{D as Ml,Jr as Nl,Qr as zl,Tt as $l,qr as Bl,st as Dl,__tla as Hl}from"./cells-k7Js5h2t.js";import"./react-dom-CSu739Rf.js";import{t as Ei}from"./compiler-runtime-B3qBwwSJ.js";import{_ as _l,t as ql}from"./useEventListener-DvoEXWke.js";import{C as fn,c as jl,t as Ol}from"./utils-CvI-39U6.js";import{v as Fl}from"./config-ClMcu_sV.js";import{t as zt}from"./cn-DCUzRj2J.js";import{t as Vl}from"./jsx-runtime-BqBOg78p.js";import{n as Ul}from"./fullscreen-DFky0PAA.js";import"./popover-CNCYAwbC.js";import{Mt as Wl,__tla as Kl}from"./JsonOutput-Bg1SpAZP.js";import"./download-GddKDXL8.js";import{t as vn}from"./tooltip-B_PkSKN3.js";import{r as Ri,t as bn}from"./button-BbCh-29a.js";import"./dist-D0HyMpgV.js";import"./cjs-BRGiG41H.js";import"./main-B0OX4z33.js";import"./useNonce-DfoVjkkH.js";import{t as Zl}from"./createLucideIcon-D5guW7EU.js";import{R as Ql,d as Xl,g as $t,h as Jl,l as Yl,__tla as Gl}from"./layout-C_EG2AcB.js";import{__tla as eo}from"./markdown-renderer-BFAnsPek.js";import{t as to}from"./eye-off-Cm6DdkeR.js";import{n as io,t as so,__tla as no}from"./cell-editor-Brq_fn75.js";import{n as ro,t as ao}from"./RunButton-ACHY83op.js";import{t as lo}from"./readonly-python-code-3HZIBvHp.js";import"./dist-HyCgERnW.js";import"./dist-BwnT-_gD.js";import"./dist-rBRbke5D.js";import"./dist-RMRSa-Mj.js";import"./dist-BURue7-e.js";import"./session-0B5NBztP.js";import{r as oo}from"./useTheme-CI2eq4XN.js";import"./purify.es-B9KxLTTS.js";import"./dates-CTxr0EqQ.js";import{t as co}from"./CellStatus-BKK6G_iZ.js";import{n as uo}from"./useDebounce-7xZwVnnu.js";import{i as ho}from"./useRunCells-CVd2QKS9.js";import"./utils-DCL4n9wx.js";import"./vega-loader.browser-C8wT63Va.js";import"./defaultLocale-BLUna9fQ.js";import"./defaultLocale-DzliDDTm.js";import{__tla as po}from"./chunk-5FQGJX7Z-Bp9g5nD2.js";import{r as go}from"./html-to-image-rLeQGF-G.js";import{n as mo,r as fo,t as kn}from"./react-resizable-panels.browser.esm-CV8-hvjx.js";import"./esm-xaw4Vy8N.js";import"./name-cell-input-mVvyyh5P.js";import"./multi-icon-BvuxcR2m.js";import{__tla as vo}from"./loro_wasm_bg-DYsTic7p.js";import"./ws-K6nioC-Z.js";import"./Inputs-CdyQ7nLC.js";import"./dist-QqcJxlfK.js";import"./dist-2FedModH.js";import"./dist-DCzr8T5W.js";import"./dist-DxlQcmyw.js";import"./dist-flL-WW8v.js";import"./dist-BieDRQs9.js";import"./dist-BcvGVYKl.js";import"./dist-DU8NrdIh.js";import"./dist-BscEQwf7.js";import"./esm-DgI-7XOj.js";let Ai,yn,Bt,Ti,Ci,bo=Promise.all([(()=>{try{return Hl}catch{}})(),(()=>{try{return Kl}catch{}})(),(()=>{try{return Gl}catch{}})(),(()=>{try{return eo}catch{}})(),(()=>{try{return no}catch{}})(),(()=>{try{return po}catch{}})(),(()=>{try{return vo}catch{}})()]).then(async()=>{var wt,xt;var Ce=Zl("sticky-note",[["path",{d:"M21 9a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 15 3H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2z",key:"1dfntj"}],["path",{d:"M15 3v5a1 1 0 0 0 1 1h5",key:"6s6qgf"}]]),ke=Ei(),T=mn(Il(),1),wn=Object.defineProperty,xn=Object.defineProperties,Sn=Object.getOwnPropertyDescriptors,Ni=Object.getOwnPropertySymbols,En=Object.prototype.hasOwnProperty,Rn=Object.prototype.propertyIsEnumerable,Dt=(e,t,i)=>t in e?wn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,ye=(e,t)=>{for(var i in t||(t={}))En.call(t,i)&&Dt(e,i,t[i]);if(Ni)for(var i of Ni(t))Rn.call(t,i)&&Dt(e,i,t[i]);return e},zi=(e,t)=>xn(e,Sn(t)),$i=(e,t,i)=>Dt(e,typeof t=="symbol"?t:t+"",i),An=(e,t,i)=>new Promise((s,n)=>{var r=c=>{try{a(i.next(c))}catch(o){n(o)}},l=c=>{try{a(i.throw(c))}catch(o){n(o)}},a=c=>c.done?s(c.value):Promise.resolve(c.value).then(r,l);a((i=i.apply(e,t)).next())}),_e=(e,t)=>{for(let i in t)e[i]=t[i];return e},C=(e,t)=>Array.from(e.querySelectorAll(t)),Ht=(e,t,i)=>{i?e.classList.add(t):e.classList.remove(t)},qe=e=>{if(typeof e=="string"){if(e==="null")return null;if(e==="true")return!0;if(e==="false")return!1;if(e.match(/^-?[\d\.]+$/))return parseFloat(e)}return e},Ee=(e,t)=>{e.style.transform=t},lt=(e,t)=>{let i=e.matches||e.matchesSelector||e.msMatchesSelector;return!!(i&&i.call(e,t))},ee=(e,t)=>{if(e&&typeof e.closest=="function")return e.closest(t);for(;e;){if(lt(e,t))return e;e=e.parentElement}return null},Bi=e=>{e||(e=document.documentElement);let t=e.requestFullscreen||e.webkitRequestFullscreen||e.webkitRequestFullScreen||e.mozRequestFullScreen||e.msRequestFullscreen;t&&t.apply(e)},Tn=(e,t,i,s="")=>{let n=e.querySelectorAll("."+i);for(let l=0;l<n.length;l++){let a=n[l];if(a.parentNode===e)return a}let r=document.createElement(t);return r.className=i,r.innerHTML=s,e.appendChild(r),r},_t=e=>{let t=document.createElement("style");return e&&e.length>0&&t.appendChild(document.createTextNode(e)),document.head.appendChild(t),t},Di=()=>{let e={};for(let t in location.search.replace(/[A-Z0-9]+?=([\w\.%-]*)/gi,i=>{let s=i.split("=").shift(),n=i.split("=").pop();return s&&n!==void 0&&(e[s]=n),i}),e){let i=e[t];e[t]=qe(unescape(i))}return e.dependencies!==void 0&&delete e.dependencies,e},Cn=(e,t=0)=>{var i;if(e){let s,n=e.style.height;return e.style.height="0px",e.parentElement&&(e.parentElement.style.height="auto"),s=t-(((i=e.parentElement)==null?void 0:i.offsetHeight)||0),e.style.height=n+"px",e.parentElement&&e.parentElement.style.removeProperty("height"),s}return t},Ln={mp4:"video/mp4",m4a:"video/mp4",ogv:"video/ogg",mpeg:"video/mpeg",webm:"video/webm"},Pn=(e="")=>{let t=e.split(".").pop();return t?Ln[t]:void 0},In=(e="")=>encodeURI(e).replace(/%5B/g,"[").replace(/%5D/g,"]").replace(/[!'()*]/g,t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`),Hi=navigator.userAgent,Le=/(iphone|ipod|ipad|android)/gi.test(Hi)||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1,_i=/android/gi.test(Hi),Mn=(function(e){if(e){var t=function(v){return[].slice.call(v)},i=0,s=1,n=2,r=3,l=[],a=null,c="requestAnimationFrame"in e?function(){var v=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{sync:!1};e.cancelAnimationFrame(a);var R=function(){return u(l.filter((function(N){return N.dirty&&N.active})))};if(v.sync)return R();a=e.requestAnimationFrame(R)}:function(){},o=function(v){return function(R){l.forEach((function(N){return N.dirty=v})),c(R)}},u=function(v){v.filter((function(N){return!N.styleComputed})).forEach((function(N){N.styleComputed=d(N)})),v.filter(b).forEach(y);var R=v.filter(p);R.forEach(g),R.forEach((function(N){y(N),h(N)})),R.forEach(z)},h=function(v){return v.dirty=i},g=function(v){v.availableWidth=v.element.parentNode.clientWidth,v.currentWidth=v.element.scrollWidth,v.previousFontSize=v.currentFontSize,v.currentFontSize=Math.min(Math.max(v.minSize,v.availableWidth/v.currentWidth*v.previousFontSize),v.maxSize),v.whiteSpace=v.multiLine&&v.currentFontSize===v.minSize?"normal":"nowrap"},p=function(v){return v.dirty!==n||v.dirty===n&&v.element.parentNode.clientWidth!==v.availableWidth},d=function(v){var R=e.getComputedStyle(v.element,null);return v.currentFontSize=parseFloat(R.getPropertyValue("font-size")),v.display=R.getPropertyValue("display"),v.whiteSpace=R.getPropertyValue("white-space"),!0},b=function(v){var R=!1;return!v.preStyleTestCompleted&&(/inline-/.test(v.display)||(R=!0,v.display="inline-block"),v.whiteSpace!=="nowrap"&&(R=!0,v.whiteSpace="nowrap"),v.preStyleTestCompleted=!0,R)},y=function(v){v.element.style.whiteSpace=v.whiteSpace,v.element.style.display=v.display,v.element.style.fontSize=v.currentFontSize+"px"},z=function(v){v.element.dispatchEvent(new CustomEvent("fit",{detail:{oldValue:v.previousFontSize,newValue:v.currentFontSize,scaleFactor:v.currentFontSize/v.previousFontSize}}))},D=function(v,R){return function(N){v.dirty=R,v.active&&c(N)}},L=function(v){return function(){l=l.filter((function(R){return R.element!==v.element})),v.observeMutations&&v.observer.disconnect(),v.element.style.whiteSpace=v.originalStyle.whiteSpace,v.element.style.display=v.originalStyle.display,v.element.style.fontSize=v.originalStyle.fontSize}},A=function(v){return function(){v.active||(v.active=!0,c())}},S=function(v){return function(){return v.active=!1}},P=function(v){v.observeMutations&&(v.observer=new MutationObserver(D(v,s)),v.observer.observe(v.element,v.observeMutations))},$={minSize:16,maxSize:512,multiLine:!0,observeMutations:"MutationObserver"in e&&{subtree:!0,childList:!0,characterData:!0}},_=null,O=function(){e.clearTimeout(_),_=e.setTimeout(o(n),B.observeWindowDelay)},M=["resize","orientationchange"];return Object.defineProperty(B,"observeWindow",{set:function(v){var R=`${v?"add":"remove"}EventListener`;M.forEach((function(N){e[R](N,O)}))}}),B.observeWindow=!0,B.observeWindowDelay=100,B.fitAll=o(r),B}function Y(v,R){var N=Object.assign({},$,R),W=v.map((function(te){var se=Object.assign({},N,{element:te,active:!0});return(function(K){K.originalStyle={whiteSpace:K.element.style.whiteSpace,display:K.element.style.display,fontSize:K.element.style.fontSize},P(K),K.newbie=!0,K.dirty=!0,l.push(K)})(se),{element:te,fit:D(se,r),unfreeze:A(se),freeze:S(se),unsubscribe:L(se)}}));return c(),W}function B(v){var R=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return typeof v=="string"?Y(t(document.querySelectorAll(v)),R):Y([v],R)[0]}})(typeof window>"u"?null:window),Nn=class{constructor(e){$i(this,"allowedToPlayAudio",null),this.Reveal=e,this.startEmbeddedMedia=this.startEmbeddedMedia.bind(this),this.startEmbeddedIframe=this.startEmbeddedIframe.bind(this),this.preventIframeAutoFocus=this.preventIframeAutoFocus.bind(this),this.ensureMobileMediaPlaying=this.ensureMobileMediaPlaying.bind(this),this.failedAudioPlaybackTargets=new Set,this.failedVideoPlaybackTargets=new Set,this.failedMutedVideoPlaybackTargets=new Set,this.renderMediaPlayButton()}renderMediaPlayButton(){this.mediaPlayButton=document.createElement("button"),this.mediaPlayButton.className="r-overlay-button r-media-play-button",this.mediaPlayButton.addEventListener("click",()=>{this.resetTemporarilyMutedMedia(),new Set([...this.failedAudioPlaybackTargets,...this.failedVideoPlaybackTargets,...this.failedMutedVideoPlaybackTargets]).forEach(e=>{this.startEmbeddedMedia({target:e})}),this.clearMediaPlaybackErrors()})}shouldPreload(e){if(this.Reveal.isScrollView())return!0;let t=this.Reveal.getConfig().preloadIframes;return typeof t!="boolean"&&(t=e.hasAttribute("data-preload")),t}load(e,t={}){let i=this.Reveal.getConfig().display;if(i.includes("!important")){let n=i.replace(/\s*!important\s*$/,"").trim();e.style.setProperty("display",n,"important")}else e.style.display=i;C(e,"img[data-src], video[data-src], audio[data-src], iframe[data-src]").forEach(n=>{let r=n.tagName==="IFRAME";(!r||this.shouldPreload(n))&&(n.setAttribute("src",n.getAttribute("data-src")),n.setAttribute("data-lazy-loaded",""),n.removeAttribute("data-src"),r&&n.addEventListener("load",this.preventIframeAutoFocus))}),C(e,"video, audio").forEach(n=>{let r=0;C(n,"source[data-src]").forEach(l=>{l.setAttribute("src",l.getAttribute("data-src")),l.removeAttribute("data-src"),l.setAttribute("data-lazy-loaded",""),r+=1}),Le&&n.tagName==="VIDEO"&&n.setAttribute("playsinline",""),r>0&&n.load()});let s=e.slideBackgroundElement;if(s){s.style.display="block";let n=e.slideBackgroundContentElement,r=e.getAttribute("data-background-iframe");if(s.hasAttribute("data-loaded")===!1){s.setAttribute("data-loaded","true");let a=e.getAttribute("data-background-image"),c=e.getAttribute("data-background-video"),o=e.hasAttribute("data-background-video-loop"),u=e.hasAttribute("data-background-video-muted");if(a)/^data:/.test(a.trim())?n.style.backgroundImage=`url(${a.trim()})`:n.style.backgroundImage=a.split(",").map(h=>`url(${In(decodeURI(h.trim()))})`).join(",");else if(c){let h=document.createElement("video");o&&h.setAttribute("loop",""),(u||this.Reveal.isSpeakerNotes())&&(h.muted=!0),Le&&h.setAttribute("playsinline",""),c.split(",").forEach(g=>{let p=document.createElement("source");p.setAttribute("src",g);let d=Pn(g);d&&p.setAttribute("type",d),h.appendChild(p)}),n.appendChild(h)}else if(r&&t.excludeIframes!==!0){let h=document.createElement("iframe");h.setAttribute("allowfullscreen",""),h.setAttribute("mozallowfullscreen",""),h.setAttribute("webkitallowfullscreen",""),h.setAttribute("allow","autoplay"),h.setAttribute("data-src",r),h.style.width="100%",h.style.height="100%",h.style.maxHeight="100%",h.style.maxWidth="100%",n.appendChild(h)}}let l=n.querySelector("iframe[data-src]");l&&this.shouldPreload(s)&&!/autoplay=(1|true|yes)/gi.test(r)&&l.getAttribute("src")!==r&&l.setAttribute("src",r)}this.layout(e)}layout(e){Array.from(e.querySelectorAll(".r-fit-text")).forEach(t=>{Mn(t,{minSize:24,maxSize:this.Reveal.getConfig().height*.8,observeMutations:!1,observeWindow:!1})})}unload(e){e.style.display="none";let t=this.Reveal.getSlideBackground(e);t&&(t.style.display="none",C(t,"iframe[src]").forEach(i=>{i.removeAttribute("src")})),C(e,"video[data-lazy-loaded][src], audio[data-lazy-loaded][src], iframe[data-lazy-loaded][src]").forEach(i=>{i.setAttribute("data-src",i.getAttribute("src")),i.removeAttribute("src")}),C(e,"video[data-lazy-loaded] source[src], audio source[src]").forEach(i=>{i.setAttribute("data-src",i.getAttribute("src")),i.removeAttribute("src")})}formatEmbeddedContent(){let e=(t,i,s)=>{C(this.Reveal.getSlidesElement(),"iframe["+t+'*="'+i+'"]').forEach(n=>{let r=n.getAttribute(t);r&&r.indexOf(s)===-1&&n.setAttribute(t,r+(/\?/.test(r)?"&":"?")+s)})};e("src","youtube.com/embed/","enablejsapi=1"),e("data-src","youtube.com/embed/","enablejsapi=1"),e("src","player.vimeo.com/","api=1"),e("data-src","player.vimeo.com/","api=1")}startEmbeddedContent(e){if(e){let t=this.Reveal.isSpeakerNotes();C(e,'img[src$=".gif"]').forEach(i=>{i.setAttribute("src",i.getAttribute("src"))}),C(e,"video, audio").forEach(i=>{if(ee(i,".fragment")&&!ee(i,".fragment.visible"))return;let s=this.Reveal.getConfig().autoPlayMedia;if(typeof s!="boolean"&&(s=i.hasAttribute("data-autoplay")||!!ee(i,".slide-background")),s&&typeof i.play=="function"){if(t&&!i.muted)return;i.readyState>1?this.startEmbeddedMedia({target:i}):Le?(i.addEventListener("canplay",this.ensureMobileMediaPlaying),this.playMediaElement(i)):(i.removeEventListener("loadeddata",this.startEmbeddedMedia),i.addEventListener("loadeddata",this.startEmbeddedMedia))}}),t||(C(e,"iframe[src]").forEach(i=>{ee(i,".fragment")&&!ee(i,".fragment.visible")||this.startEmbeddedIframe({target:i})}),C(e,"iframe[data-src]").forEach(i=>{ee(i,".fragment")&&!ee(i,".fragment.visible")||i.getAttribute("src")!==i.getAttribute("data-src")&&(i.removeEventListener("load",this.startEmbeddedIframe),i.addEventListener("load",this.startEmbeddedIframe),i.setAttribute("src",i.getAttribute("data-src")))}))}}ensureMobileMediaPlaying(e){let t=e.target;typeof t.getVideoPlaybackQuality=="function"&&setTimeout(()=>{let i=t.paused===!1,s=t.getVideoPlaybackQuality().totalVideoFrames;i&&s===0&&(t.load(),t.play())},1e3)}startEmbeddedMedia(e){let t=!!ee(e.target,"html"),i=!!ee(e.target,".present");t&&i&&(e.target.paused||e.target.ended)&&(e.target.currentTime=0,this.playMediaElement(e.target)),e.target.removeEventListener("loadeddata",this.startEmbeddedMedia)}playMediaElement(e){let t=e.play();t&&typeof t.catch=="function"&&t.then(()=>{e.muted||(this.allowedToPlayAudio=!0)}).catch(i=>{if(i.name==="NotAllowedError")if(this.allowedToPlayAudio=!1,e.tagName==="VIDEO"){this.onVideoPlaybackNotAllowed(e);let s=!!ee(e,"html"),n=!!ee(e,".present"),r=e.muted;s&&n&&!r&&(e.setAttribute("data-muted-by-reveal","true"),e.muted=!0,e.play().catch(()=>{this.onMutedVideoPlaybackNotAllowed(e)}))}else e.tagName==="AUDIO"&&this.onAudioPlaybackNotAllowed(e)})}startEmbeddedIframe(e){let t=e.target;if(this.preventIframeAutoFocus(e),t&&t.contentWindow){let i=!!ee(e.target,"html"),s=!!ee(e.target,".present");if(i&&s){let n=this.Reveal.getConfig().autoPlayMedia;typeof n!="boolean"&&(n=t.hasAttribute("data-autoplay")||!!ee(t,".slide-background")),/youtube\.com\/embed\//.test(t.getAttribute("src"))&&n?t.contentWindow.postMessage('{"event":"command","func":"playVideo","args":""}',"*"):/player\.vimeo\.com\//.test(t.getAttribute("src"))&&n?t.contentWindow.postMessage('{"method":"play"}',"*"):t.contentWindow.postMessage("slide:start","*")}}}stopEmbeddedContent(e,t={}){t=_e({unloadIframes:!0},t),e&&e.parentNode&&(C(e,"video, audio").forEach(i=>{!i.hasAttribute("data-ignore")&&typeof i.pause=="function"&&(i.setAttribute("data-paused-by-reveal",""),i.pause(),Le&&i.removeEventListener("canplay",this.ensureMobileMediaPlaying))}),C(e,"iframe").forEach(i=>{i.contentWindow&&i.contentWindow.postMessage("slide:stop","*"),i.removeEventListener("load",this.preventIframeAutoFocus),i.removeEventListener("load",this.startEmbeddedIframe)}),C(e,'iframe[src*="youtube.com/embed/"]').forEach(i=>{!i.hasAttribute("data-ignore")&&i.contentWindow&&typeof i.contentWindow.postMessage=="function"&&i.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")}),C(e,'iframe[src*="player.vimeo.com/"]').forEach(i=>{!i.hasAttribute("data-ignore")&&i.contentWindow&&typeof i.contentWindow.postMessage=="function"&&i.contentWindow.postMessage('{"method":"pause"}',"*")}),t.unloadIframes===!0&&C(e,"iframe[data-src]").forEach(i=>{i.setAttribute("src","about:blank"),i.removeAttribute("src")}))}isAllowedToPlayAudio(){return this.allowedToPlayAudio}showPlayOrUnmuteButton(){let e=this.failedAudioPlaybackTargets.size,t=this.failedVideoPlaybackTargets.size,i=this.failedMutedVideoPlaybackTargets.size,s="Play media";i>0?s="Play video":t>0?s="Unmute video":e>0&&(s="Play audio"),this.mediaPlayButton.textContent=s,this.Reveal.getRevealElement().appendChild(this.mediaPlayButton)}onAudioPlaybackNotAllowed(e){this.failedAudioPlaybackTargets.add(e),this.showPlayOrUnmuteButton(e)}onVideoPlaybackNotAllowed(e){this.failedVideoPlaybackTargets.add(e),this.showPlayOrUnmuteButton()}onMutedVideoPlaybackNotAllowed(e){this.failedMutedVideoPlaybackTargets.add(e),this.showPlayOrUnmuteButton()}resetTemporarilyMutedMedia(){new Set([...this.failedAudioPlaybackTargets,...this.failedVideoPlaybackTargets,...this.failedMutedVideoPlaybackTargets]).forEach(e=>{e.hasAttribute("data-muted-by-reveal")&&(e.muted=!1,e.removeAttribute("data-muted-by-reveal"))})}clearMediaPlaybackErrors(){this.resetTemporarilyMutedMedia(),this.failedAudioPlaybackTargets.clear(),this.failedVideoPlaybackTargets.clear(),this.failedMutedVideoPlaybackTargets.clear(),this.mediaPlayButton.remove()}preventIframeAutoFocus(e){let t=e.target;if(t&&this.Reveal.getConfig().preventIframeAutoFocus){let i=0,s=()=>{document.activeElement===t?document.activeElement.blur():i<1e3&&(i+=100,setTimeout(s,100))};setTimeout(s,100)}}afterSlideChanged(){this.clearMediaPlaybackErrors()}},Pe=".slides section",we=".slides>section",qt=".slides>section.present>section",zn=".backgrounds>.slide-background",$n=/registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener|showPreview/,Bn="h.v",Dn="h/v",jt="c",qi="c/t",Hn=class{constructor(e){this.Reveal=e}render(){this.element=document.createElement("div"),this.element.className="slide-number",this.Reveal.getRevealElement().appendChild(this.element)}configure(e,t){let i="none";e.slideNumber&&!this.Reveal.isPrintView()&&(e.showSlideNumber==="all"||e.showSlideNumber==="speaker"&&this.Reveal.isSpeakerNotes())&&(i="block"),this.element.style.display=i}update(){this.Reveal.getConfig().slideNumber&&this.element&&(this.element.innerHTML=this.getSlideNumber())}getSlideNumber(e=this.Reveal.getCurrentSlide()){let t=this.Reveal.getConfig(),i,s=Bn;if(typeof t.slideNumber=="function")i=t.slideNumber(e);else{typeof t.slideNumber=="string"&&(s=t.slideNumber),!/c/.test(s)&&this.Reveal.getHorizontalSlides().length===1&&(s=jt);let r=e&&e.dataset.visibility==="uncounted"?0:1;switch(i=[],s){case jt:i.push(this.Reveal.getSlidePastCount(e)+r);break;case qi:i.push(this.Reveal.getSlidePastCount(e)+r,"/",this.Reveal.getTotalSlides());break;default:let l=this.Reveal.getIndices(e);i.push(l.h+r);let a=s===Dn?"/":".";this.Reveal.isVerticalSlide(e)&&i.push(a,l.v+1)}}let n="#"+this.Reveal.location.getHash(e);return this.formatNumber(i[0],i[1],i[2],n)}formatNumber(e,t,i,s="#"+this.Reveal.location.getHash()){return typeof i=="number"&&!isNaN(i)?`<a href="${s}">
2
+ <span class="slide-number-a">${e}</span>
3
+ <span class="slide-number-delimiter">${t}</span>
4
+ <span class="slide-number-b">${i}</span>
5
+ </a>`:`<a href="${s}">
6
+ <span class="slide-number-a">${e}</span>
7
+ </a>`}destroy(){this.element.remove()}},_n=class{constructor(e){this.Reveal=e,this.onInput=this.onInput.bind(this),this.onBlur=this.onBlur.bind(this),this.onKeyDown=this.onKeyDown.bind(this)}render(){this.element=document.createElement("div"),this.element.className="jump-to-slide",this.jumpInput=document.createElement("input"),this.jumpInput.type="text",this.jumpInput.className="jump-to-slide-input",this.jumpInput.placeholder="Jump to slide",this.jumpInput.addEventListener("input",this.onInput),this.jumpInput.addEventListener("keydown",this.onKeyDown),this.jumpInput.addEventListener("blur",this.onBlur),this.element.appendChild(this.jumpInput)}show(){this.indicesOnShow=this.Reveal.getIndices(),this.Reveal.getRevealElement().appendChild(this.element),this.jumpInput.focus()}hide(){this.isVisible()&&(this.element.remove(),this.jumpInput.value="",clearTimeout(this.jumpTimeout),delete this.jumpTimeout)}isVisible(){return!!this.element.parentNode}jump(){clearTimeout(this.jumpTimeout),delete this.jumpTimeout;let e=this.jumpInput.value.trim(""),t;if(/^\d+$/.test(e)){let i=this.Reveal.getConfig().slideNumber;if(i===jt||i===qi){let s=this.Reveal.getSlides()[parseInt(e,10)-1];s&&(t=this.Reveal.getIndices(s))}}return t||(t=(/^\d+\.\d+$/.test(e)&&(e=e.replace(".","/")),this.Reveal.location.getIndicesFromHash(e,{oneBasedIndex:!0}))),!t&&/\S+/i.test(e)&&e.length>1&&(t=this.search(e)),t&&e!==""?(this.Reveal.slide(t.h,t.v,t.f),!0):(this.Reveal.slide(this.indicesOnShow.h,this.indicesOnShow.v,this.indicesOnShow.f),!1)}jumpAfter(e){clearTimeout(this.jumpTimeout),this.jumpTimeout=setTimeout(()=>this.jump(),e)}search(e){let t=RegExp("\\b"+e.trim()+"\\b","i"),i=this.Reveal.getSlides().find(s=>t.test(s.innerText));return i?this.Reveal.getIndices(i):null}cancel(){this.Reveal.slide(this.indicesOnShow.h,this.indicesOnShow.v,this.indicesOnShow.f),this.hide()}confirm(){this.jump(),this.hide()}destroy(){this.jumpInput.removeEventListener("input",this.onInput),this.jumpInput.removeEventListener("keydown",this.onKeyDown),this.jumpInput.removeEventListener("blur",this.onBlur),this.element.remove()}onKeyDown(e){e.keyCode===13?this.confirm():e.keyCode===27&&(this.cancel(),e.stopImmediatePropagation())}onInput(e){this.jumpAfter(200)}onBlur(){setTimeout(()=>this.hide(),1)}},Ot=e=>{let t=e.match(/^#([0-9a-f]{3})$/i);if(t&&t[1]){let r=t[1];return{r:parseInt(r.charAt(0),16)*17,g:parseInt(r.charAt(1),16)*17,b:parseInt(r.charAt(2),16)*17}}let i=e.match(/^#([0-9a-f]{6})$/i);if(i&&i[1]){let r=i[1];return{r:parseInt(r.slice(0,2),16),g:parseInt(r.slice(2,4),16),b:parseInt(r.slice(4,6),16)}}let s=e.match(/^rgb\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*\)$/i);if(s)return{r:parseInt(s[1],10),g:parseInt(s[2],10),b:parseInt(s[3],10)};let n=e.match(/^rgba\s*\(\s*(\d+)\s*,\s*(\d+)\s*,\s*(\d+)\s*,\s*([\d]+|[\d]*.[\d]+)\s*\)$/i);return n?{r:parseInt(n[1],10),g:parseInt(n[2],10),b:parseInt(n[3],10),a:parseFloat(n[4])}:null},qn=e=>(typeof e=="string"&&(e=Ot(e)),e?(e.r*299+e.g*587+e.b*114)/1e3:null),jn=class{constructor(e){this.Reveal=e}render(){this.element=document.createElement("div"),this.element.className="backgrounds",this.Reveal.getRevealElement().appendChild(this.element)}create(){this.element.innerHTML="",this.element.classList.add("no-transition"),this.Reveal.getHorizontalSlides().forEach(e=>{let t=this.createBackground(e,this.element);C(e,"section").forEach(i=>{this.createBackground(i,t),t.classList.add("stack")})}),this.Reveal.getConfig().parallaxBackgroundImage?(this.element.style.backgroundImage='url("'+this.Reveal.getConfig().parallaxBackgroundImage+'")',this.element.style.backgroundSize=this.Reveal.getConfig().parallaxBackgroundSize,this.element.style.backgroundRepeat=this.Reveal.getConfig().parallaxBackgroundRepeat,this.element.style.backgroundPosition=this.Reveal.getConfig().parallaxBackgroundPosition,setTimeout(()=>{this.Reveal.getRevealElement().classList.add("has-parallax-background")},1)):(this.element.style.backgroundImage="",this.Reveal.getRevealElement().classList.remove("has-parallax-background"))}createBackground(e,t){let i=document.createElement("div");i.className="slide-background "+e.className.replace(/present|past|future/,"");let s=document.createElement("div");return s.className="slide-background-content",i.appendChild(s),t.appendChild(i),e.slideBackgroundElement=i,e.slideBackgroundContentElement=s,this.sync(e),i}sync(e){let t=e.slideBackgroundElement,i=e.slideBackgroundContentElement,s={background:e.getAttribute("data-background"),backgroundSize:e.getAttribute("data-background-size"),backgroundImage:e.getAttribute("data-background-image"),backgroundVideo:e.getAttribute("data-background-video"),backgroundIframe:e.getAttribute("data-background-iframe"),backgroundColor:e.getAttribute("data-background-color"),backgroundGradient:e.getAttribute("data-background-gradient"),backgroundRepeat:e.getAttribute("data-background-repeat"),backgroundPosition:e.getAttribute("data-background-position"),backgroundTransition:e.getAttribute("data-background-transition"),backgroundOpacity:e.getAttribute("data-background-opacity")},n=e.hasAttribute("data-preload");e.classList.remove("has-dark-background"),e.classList.remove("has-light-background"),t.removeAttribute("data-loaded"),t.removeAttribute("data-background-hash"),t.removeAttribute("data-background-size"),t.removeAttribute("data-background-transition"),t.style.backgroundColor="",i.style.backgroundSize="",i.style.backgroundRepeat="",i.style.backgroundPosition="",i.style.backgroundImage="",i.style.opacity="",i.innerHTML="",s.background&&(/^(http|file|\/\/)/gi.test(s.background)||/\.(svg|png|jpg|jpeg|gif|bmp|webp)([?#\s]|$)/gi.test(s.background)?e.setAttribute("data-background-image",s.background):t.style.background=s.background),(s.background||s.backgroundColor||s.backgroundGradient||s.backgroundImage||s.backgroundVideo||s.backgroundIframe)&&t.setAttribute("data-background-hash",s.background+s.backgroundSize+s.backgroundImage+s.backgroundVideo+s.backgroundIframe+s.backgroundColor+s.backgroundGradient+s.backgroundRepeat+s.backgroundPosition+s.backgroundTransition+s.backgroundOpacity),s.backgroundSize&&t.setAttribute("data-background-size",s.backgroundSize),s.backgroundColor&&(t.style.backgroundColor=s.backgroundColor),s.backgroundGradient&&(t.style.backgroundImage=s.backgroundGradient),s.backgroundTransition&&t.setAttribute("data-background-transition",s.backgroundTransition),n&&t.setAttribute("data-preload",""),s.backgroundSize&&(i.style.backgroundSize=s.backgroundSize),s.backgroundRepeat&&(i.style.backgroundRepeat=s.backgroundRepeat),s.backgroundPosition&&(i.style.backgroundPosition=s.backgroundPosition),s.backgroundOpacity&&(i.style.opacity=s.backgroundOpacity);let r=this.getContrastClass(e);typeof r=="string"&&e.classList.add(r)}getContrastClass(e){let t=e.slideBackgroundElement,i=e.getAttribute("data-background-color");if(!i||!Ot(i)){let s=window.getComputedStyle(t);s&&s.backgroundColor&&(i=s.backgroundColor)}if(i){let s=Ot(i);if(s&&s.a!==0)return qn(i)<128?"has-dark-background":"has-light-background"}return null}bubbleSlideContrastClassToElement(e,t){["has-light-background","has-dark-background"].forEach(i=>{e.classList.contains(i)?t.classList.add(i):t.classList.remove(i)},this)}update(e=!1){let t=this.Reveal.getConfig(),i=this.Reveal.getCurrentSlide(),s=this.Reveal.getIndices(),n=null,r=t.rtl?"future":"past",l=t.rtl?"past":"future";if(Array.from(this.element.childNodes).forEach((c,o)=>{c.classList.remove("past","present","future"),o<s.h?c.classList.add(r):o>s.h?c.classList.add(l):(c.classList.add("present"),n=c),(e||o===s.h)&&C(c,".slide-background").forEach((u,h)=>{u.classList.remove("past","present","future");let g=typeof s.v=="number"?s.v:0;h<g?u.classList.add("past"):h>g?u.classList.add("future"):(u.classList.add("present"),o===s.h&&(n=u))})}),this.previousBackground&&!this.previousBackground.closest("body")&&(this.previousBackground=null),n&&this.previousBackground){let c=this.previousBackground.getAttribute("data-background-hash"),o=n.getAttribute("data-background-hash");if(o&&o===c&&n!==this.previousBackground){this.element.classList.add("no-transition");let u=n.querySelector("video"),h=this.previousBackground.querySelector("video");if(u&&h){let g=u.parentNode;h.parentNode.appendChild(u),g.appendChild(h)}}}let a=n!==this.previousBackground;if(a&&this.previousBackground&&this.Reveal.slideContent.stopEmbeddedContent(this.previousBackground,{unloadIframes:!this.Reveal.slideContent.shouldPreload(this.previousBackground)}),a&&n){this.Reveal.slideContent.startEmbeddedContent(n);let c=n.querySelector(".slide-background-content");if(c){let o=c.style.backgroundImage||"";/\.gif/i.test(o)&&(c.style.backgroundImage="",window.getComputedStyle(c).opacity,c.style.backgroundImage=o)}this.previousBackground=n}i&&this.bubbleSlideContrastClassToElement(i,this.Reveal.getRevealElement()),setTimeout(()=>{this.element.classList.remove("no-transition")},10)}updateParallax(){let e=this.Reveal.getIndices();if(this.Reveal.getConfig().parallaxBackgroundImage){let t=this.Reveal.getHorizontalSlides(),i=this.Reveal.getVerticalSlides(),s=this.element.style.backgroundSize.split(" "),n,r;s.length===1?n=r=parseInt(s[0],10):(n=parseInt(s[0],10),r=parseInt(s[1],10));let l=this.element.offsetWidth,a=t.length,c,o;c=typeof this.Reveal.getConfig().parallaxBackgroundHorizontal=="number"?this.Reveal.getConfig().parallaxBackgroundHorizontal:a>1?(n-l)/(a-1):0,o=c*e.h*-1;let u=this.element.offsetHeight,h=i.length,g,p;g=typeof this.Reveal.getConfig().parallaxBackgroundVertical=="number"?this.Reveal.getConfig().parallaxBackgroundVertical:(r-u)/(h-1),p=h>0?g*e.v:0,this.element.style.backgroundPosition=o+"px "+-p+"px"}}destroy(){this.element.remove()}},ji=0,On=class{constructor(e){this.Reveal=e}run(e,t){this.reset();let i=this.Reveal.getSlides(),s=i.indexOf(t),n=i.indexOf(e);if(e&&t&&e.hasAttribute("data-auto-animate")&&t.hasAttribute("data-auto-animate")&&e.getAttribute("data-auto-animate-id")===t.getAttribute("data-auto-animate-id")&&!(s>n?t:e).hasAttribute("data-auto-animate-restart")){this.autoAnimateStyleSheet=this.autoAnimateStyleSheet||_t();let r=this.getAutoAnimateOptions(t);e.dataset.autoAnimate="pending",t.dataset.autoAnimate="pending",r.slideDirection=s>n?"forward":"backward";let l=e.style.display==="none";l&&(e.style.display=this.Reveal.getConfig().display);let a=this.getAutoAnimatableElements(e,t).map(c=>this.autoAnimateElements(c.from,c.to,c.options||{},r,ji++));if(l&&(e.style.display="none"),t.dataset.autoAnimateUnmatched!=="false"&&this.Reveal.getConfig().autoAnimateUnmatched===!0){let c=r.duration*.8,o=r.duration*.2;this.getUnmatchedAutoAnimateElements(t).forEach(u=>{let h=this.getAutoAnimateOptions(u,r),g="unmatched";(h.duration!==r.duration||h.delay!==r.delay)&&(g="unmatched-"+ji++,a.push(`[data-auto-animate="running"] [data-auto-animate-target="${g}"] { transition: opacity ${h.duration}s ease ${h.delay}s; }`)),u.dataset.autoAnimateTarget=g},this),a.push(`[data-auto-animate="running"] [data-auto-animate-target="unmatched"] { transition: opacity ${c}s ease ${o}s; }`)}this.autoAnimateStyleSheet.innerHTML=a.join(""),requestAnimationFrame(()=>{this.autoAnimateStyleSheet&&(getComputedStyle(this.autoAnimateStyleSheet).fontWeight,t.dataset.autoAnimate="running")}),this.Reveal.dispatchEvent({type:"autoanimate",data:{fromSlide:e,toSlide:t,sheet:this.autoAnimateStyleSheet}})}}reset(){C(this.Reveal.getRevealElement(),'[data-auto-animate]:not([data-auto-animate=""])').forEach(e=>{e.dataset.autoAnimate=""}),C(this.Reveal.getRevealElement(),"[data-auto-animate-target]").forEach(e=>{delete e.dataset.autoAnimateTarget}),this.autoAnimateStyleSheet&&this.autoAnimateStyleSheet.parentNode&&(this.autoAnimateStyleSheet.parentNode.removeChild(this.autoAnimateStyleSheet),this.autoAnimateStyleSheet=null)}autoAnimateElements(e,t,i,s,n){e.dataset.autoAnimateTarget="",t.dataset.autoAnimateTarget=n;let r=this.getAutoAnimateOptions(t,s);i.delay!==void 0&&(r.delay=i.delay),i.duration!==void 0&&(r.duration=i.duration),i.easing!==void 0&&(r.easing=i.easing);let l=this.getAutoAnimatableProperties("from",e,i),a=this.getAutoAnimatableProperties("to",t,i);if(t.classList.contains("fragment")&&delete a.styles.opacity,i.translate!==!1||i.scale!==!1){let u=this.Reveal.getScale(),h={x:(l.x-a.x)/u,y:(l.y-a.y)/u,scaleX:l.width/a.width,scaleY:l.height/a.height};h.x=Math.round(h.x*1e3)/1e3,h.y=Math.round(h.y*1e3)/1e3,h.scaleX=Math.round(h.scaleX*1e3)/1e3,h.scaleX=Math.round(h.scaleX*1e3)/1e3;let g=i.translate!==!1&&(h.x!==0||h.y!==0),p=i.scale!==!1&&(h.scaleX!==0||h.scaleY!==0);if(g||p){let d=[];g&&d.push(`translate(${h.x}px, ${h.y}px)`),p&&d.push(`scale(${h.scaleX}, ${h.scaleY})`),l.styles.transform=d.join(" "),l.styles["transform-origin"]="top left",a.styles.transform="none"}}for(let u in a.styles){let h=a.styles[u],g=l.styles[u];h===g?delete a.styles[u]:(h.explicitValue===!0&&(a.styles[u]=h.value),g.explicitValue===!0&&(l.styles[u]=g.value))}let c="",o=Object.keys(a.styles);if(o.length>0){l.styles.transition="none",a.styles.transition=`all ${r.duration}s ${r.easing} ${r.delay}s`,a.styles["transition-property"]=o.join(", "),a.styles["will-change"]=o.join(", ");let u=Object.keys(l.styles).map(g=>g+": "+l.styles[g]+" !important;").join(""),h=Object.keys(a.styles).map(g=>g+": "+a.styles[g]+" !important;").join("");c='[data-auto-animate-target="'+n+'"] {'+u+'}[data-auto-animate="running"] [data-auto-animate-target="'+n+'"] {'+h+"}"}return c}getAutoAnimateOptions(e,t){let i={easing:this.Reveal.getConfig().autoAnimateEasing,duration:this.Reveal.getConfig().autoAnimateDuration,delay:0};if(i=_e(i,t),e.parentNode){let s=ee(e.parentNode,"[data-auto-animate-target]");s&&(i=this.getAutoAnimateOptions(s,i))}return e.dataset.autoAnimateEasing&&(i.easing=e.dataset.autoAnimateEasing),e.dataset.autoAnimateDuration&&(i.duration=parseFloat(e.dataset.autoAnimateDuration)),e.dataset.autoAnimateDelay&&(i.delay=parseFloat(e.dataset.autoAnimateDelay)),i}getAutoAnimatableProperties(e,t,i){let s=this.Reveal.getConfig(),n={styles:[]};if(i.translate!==!1||i.scale!==!1){let l;if(typeof i.measure=="function")l=i.measure(t);else if(s.center)l=t.getBoundingClientRect();else{let a=this.Reveal.getScale();l={x:t.offsetLeft*a,y:t.offsetTop*a,width:t.offsetWidth*a,height:t.offsetHeight*a}}n.x=l.x,n.y=l.y,n.width=l.width,n.height=l.height}let r=getComputedStyle(t);return(i.styles||s.autoAnimateStyles).forEach(l=>{let a;typeof l=="string"&&(l={property:l}),l.from!==void 0&&e==="from"?a={value:l.from,explicitValue:!0}:l.to!==void 0&&e==="to"?a={value:l.to,explicitValue:!0}:(l.property==="line-height"&&(a=parseFloat(r["line-height"])/parseFloat(r["font-size"])),isNaN(a)&&(a=r[l.property])),a!==""&&(n.styles[l.property]=a)}),n}getAutoAnimatableElements(e,t){let i=(typeof this.Reveal.getConfig().autoAnimateMatcher=="function"?this.Reveal.getConfig().autoAnimateMatcher:this.getAutoAnimatePairs).call(this,e,t),s=[];return i.filter((n,r)=>{if(s.indexOf(n.to)===-1)return s.push(n.to),!0})}getAutoAnimatePairs(e,t){let i=[],s="h1, h2, h3, h4, h5, h6, p, li";return this.findAutoAnimateMatches(i,e,t,"[data-id]",n=>n.nodeName+":::"+n.getAttribute("data-id")),this.findAutoAnimateMatches(i,e,t,s,n=>n.nodeName+":::"+n.textContent.trim()),this.findAutoAnimateMatches(i,e,t,"img, video, iframe",n=>n.nodeName+":::"+(n.getAttribute("src")||n.getAttribute("data-src"))),this.findAutoAnimateMatches(i,e,t,"pre",n=>n.nodeName+":::"+n.textContent.trim()),i.forEach(n=>{lt(n.from,s)?n.options={scale:!1}:lt(n.from,"pre")&&(n.options={scale:!1,styles:["width","height"]},this.findAutoAnimateMatches(i,n.from,n.to,".hljs .hljs-ln-code",r=>r.textContent,{scale:!1,styles:[],measure:this.getLocalBoundingBox.bind(this)}),this.findAutoAnimateMatches(i,n.from,n.to,".hljs .hljs-ln-numbers[data-line-number]",r=>r.getAttribute("data-line-number"),{scale:!1,styles:["width"],measure:this.getLocalBoundingBox.bind(this)}))},this),i}getLocalBoundingBox(e){let t=this.Reveal.getScale();return{x:Math.round(e.offsetLeft*t*100)/100,y:Math.round(e.offsetTop*t*100)/100,width:Math.round(e.offsetWidth*t*100)/100,height:Math.round(e.offsetHeight*t*100)/100}}findAutoAnimateMatches(e,t,i,s,n,r){let l={},a={};[].slice.call(t.querySelectorAll(s)).forEach((c,o)=>{let u=n(c);typeof u=="string"&&u.length&&(l[u]=l[u]||[],l[u].push(c))}),[].slice.call(i.querySelectorAll(s)).forEach((c,o)=>{let u=n(c);a[u]=a[u]||[],a[u].push(c);let h;if(l[u]){let g=a[u].length-1,p=l[u].length-1;l[u][g]?(h=l[u][g],l[u][g]=null):l[u][p]&&(h=l[u][p],l[u][p]=null)}h&&e.push({from:h,to:c,options:r})})}getUnmatchedAutoAnimateElements(e){return[].slice.call(e.children).reduce((t,i)=>{let s=i.querySelector("[data-auto-animate-target]");return!i.hasAttribute("data-auto-animate-target")&&!s&&t.push(i),i.querySelector("[data-auto-animate-target]")&&(t=t.concat(this.getUnmatchedAutoAnimateElements(i))),t},[])}},Fn=500,Vn=4,Un=6,Wn=8,Kn=class{constructor(e){this.Reveal=e,this.active=!1,this.activatedCallbacks=[],this.onScroll=this.onScroll.bind(this)}activate(){if(this.active)return;let e=this.Reveal.getState();this.active=!0,this.slideHTMLBeforeActivation=this.Reveal.getSlidesElement().innerHTML;let t=C(this.Reveal.getRevealElement(),we),i=C(this.Reveal.getRevealElement(),zn);this.viewportElement.classList.add("loading-scroll-mode","reveal-scroll");let s,n=window.getComputedStyle(this.viewportElement);n&&n.background&&(s=n.background);let r=[],l=t[0].parentNode,a,c=(o,u,h,g)=>{let p;if(a&&this.Reveal.shouldAutoAnimateBetween(a,o))p=document.createElement("div"),p.className="scroll-page-content scroll-auto-animate-page",p.style.display="none",a.closest(".scroll-page-content").parentNode.appendChild(p);else{let d=document.createElement("div");if(d.className="scroll-page",r.push(d),g&&i.length>u){let y=i[u],z=window.getComputedStyle(y);z&&z.background?d.style.background=z.background:s&&(d.style.background=s)}else s&&(d.style.background=s);let b=document.createElement("div");b.className="scroll-page-sticky",d.appendChild(b),p=document.createElement("div"),p.className="scroll-page-content",b.appendChild(p)}p.appendChild(o),o.classList.remove("past","future"),o.setAttribute("data-index-h",u),o.setAttribute("data-index-v",h),o.slideBackgroundElement&&(o.slideBackgroundElement.remove("past","future"),p.insertBefore(o.slideBackgroundElement,o)),a=o};t.forEach((o,u)=>{this.Reveal.isVerticalStack(o)?o.querySelectorAll("section").forEach((h,g)=>{c(h,u,g,!0)}):c(o,u,0)},this),this.createProgressBar(),C(this.Reveal.getRevealElement(),".stack").forEach(o=>o.remove()),r.forEach(o=>l.appendChild(o)),this.Reveal.slideContent.layout(this.Reveal.getSlidesElement()),this.Reveal.layout(),this.Reveal.setState(e),this.activatedCallbacks.forEach(o=>o()),this.activatedCallbacks=[],this.restoreScrollPosition(),this.viewportElement.classList.remove("loading-scroll-mode"),this.viewportElement.addEventListener("scroll",this.onScroll,{passive:!0})}deactivate(){if(!this.active)return;let e=this.Reveal.getState();this.active=!1,this.viewportElement.removeEventListener("scroll",this.onScroll),this.viewportElement.classList.remove("reveal-scroll"),this.removeProgressBar(),this.Reveal.getSlidesElement().innerHTML=this.slideHTMLBeforeActivation,this.Reveal.sync(),this.Reveal.setState(e),this.slideHTMLBeforeActivation=null}toggle(e){typeof e=="boolean"?e?this.activate():this.deactivate():this.isActive()?this.deactivate():this.activate()}isActive(){return this.active}createProgressBar(){this.progressBar=document.createElement("div"),this.progressBar.className="scrollbar",this.progressBarInner=document.createElement("div"),this.progressBarInner.className="scrollbar-inner",this.progressBar.appendChild(this.progressBarInner),this.progressBarPlayhead=document.createElement("div"),this.progressBarPlayhead.className="scrollbar-playhead",this.progressBarInner.appendChild(this.progressBarPlayhead),this.viewportElement.insertBefore(this.progressBar,this.viewportElement.firstChild);let e=i=>{let s=(i.clientY-this.progressBarInner.getBoundingClientRect().top)/this.progressBarHeight;s=Math.max(Math.min(s,1),0),this.viewportElement.scrollTop=s*(this.viewportElement.scrollHeight-this.viewportElement.offsetHeight)},t=i=>{this.draggingProgressBar=!1,this.showProgressBar(),document.removeEventListener("mousemove",e),document.removeEventListener("mouseup",t)};this.progressBarInner.addEventListener("mousedown",i=>{i.preventDefault(),this.draggingProgressBar=!0,document.addEventListener("mousemove",e),document.addEventListener("mouseup",t),e(i)})}removeProgressBar(){this.progressBar&&(this.progressBar=(this.progressBar.remove(),null))}layout(){this.isActive()&&(this.syncPages(),this.syncScrollPosition())}syncPages(){let e=this.Reveal.getConfig(),t=this.Reveal.getComputedSlideSize(window.innerWidth,window.innerHeight),i=this.Reveal.getScale(),s=e.scrollLayout==="compact",n=this.viewportElement.offsetHeight,r=t.height*i,l=s?r:n;this.scrollTriggerHeight=s?r:n,this.viewportElement.style.setProperty("--page-height",l+"px"),this.viewportElement.style.scrollSnapType=typeof e.scrollSnap=="string"?`y ${e.scrollSnap}`:"",this.slideTriggers=[],this.pages=Array.from(this.Reveal.getRevealElement().querySelectorAll(".scroll-page")).map(a=>{let c=this.createPage({pageElement:a,slideElement:a.querySelector("section"),stickyElement:a.querySelector(".scroll-page-sticky"),contentElement:a.querySelector(".scroll-page-content"),backgroundElement:a.querySelector(".slide-background"),autoAnimateElements:a.querySelectorAll(".scroll-auto-animate-page"),autoAnimatePages:[]});c.pageElement.style.setProperty("--slide-height",e.center===!0?"auto":t.height+"px"),this.slideTriggers.push({page:c,activate:()=>this.activatePage(c),deactivate:()=>this.deactivatePage(c)}),this.createFragmentTriggersForPage(c),c.autoAnimateElements.length>0&&this.createAutoAnimateTriggersForPage(c);let o=Math.max(c.scrollTriggers.length-1,0);o+=c.autoAnimatePages.reduce((u,h)=>u+Math.max(h.scrollTriggers.length-1,0),c.autoAnimatePages.length),c.pageElement.querySelectorAll(".scroll-snap-point").forEach(u=>u.remove());for(let u=0;u<o+1;u++){let h=document.createElement("div");h.className="scroll-snap-point",h.style.height=this.scrollTriggerHeight+"px",h.style.scrollSnapAlign=s?"center":"start",c.pageElement.appendChild(h),u===0&&(h.style.marginTop=-this.scrollTriggerHeight+"px")}return s&&c.scrollTriggers.length>0?(c.pageHeight=n,c.pageElement.style.setProperty("--page-height",n+"px")):(c.pageHeight=l,c.pageElement.style.removeProperty("--page-height")),c.scrollPadding=this.scrollTriggerHeight*o,c.totalHeight=c.pageHeight+c.scrollPadding,c.pageElement.style.setProperty("--page-scroll-padding",c.scrollPadding+"px"),o>0?(c.stickyElement.style.position="sticky",c.stickyElement.style.top=Math.max((n-c.pageHeight)/2,0)+"px"):(c.stickyElement.style.position="relative",c.pageElement.style.scrollSnapAlign=c.pageHeight<n?"center":"start"),c}),this.setTriggerRanges(),this.viewportElement.setAttribute("data-scrollbar",e.scrollProgress),e.scrollProgress&&this.totalScrollTriggerCount>1?(this.progressBar||this.createProgressBar(),this.syncProgressBar()):this.removeProgressBar()}setTriggerRanges(){this.totalScrollTriggerCount=this.slideTriggers.reduce((t,i)=>t+Math.max(i.page.scrollTriggers.length,1),0);let e=0;this.slideTriggers.forEach((t,i)=>{t.range=[e,e+Math.max(t.page.scrollTriggers.length,1)/this.totalScrollTriggerCount];let s=(t.range[1]-t.range[0])/t.page.scrollTriggers.length;t.page.scrollTriggers.forEach((n,r)=>{n.range=[e+r*s,e+(r+1)*s]}),e=t.range[1]}),this.slideTriggers[this.slideTriggers.length-1].range[1]=1}createFragmentTriggersForPage(e,t){t||(t=e.slideElement);let i=this.Reveal.fragments.sort(t.querySelectorAll(".fragment"),!0);return i.length&&(e.fragments=this.Reveal.fragments.sort(t.querySelectorAll(".fragment:not(.disabled)")),e.scrollTriggers.push({activate:()=>{this.Reveal.fragments.update(-1,e.fragments,t)}}),i.forEach((s,n)=>{e.scrollTriggers.push({activate:()=>{this.Reveal.fragments.update(n,e.fragments,t)}})})),e.scrollTriggers.length}createAutoAnimateTriggersForPage(e){e.autoAnimateElements.length>0&&this.slideTriggers.push(...Array.from(e.autoAnimateElements).map((t,i)=>{let s=this.createPage({slideElement:t.querySelector("section"),contentElement:t,backgroundElement:t.querySelector(".slide-background")});return this.createFragmentTriggersForPage(s,s.slideElement),e.autoAnimatePages.push(s),{page:s,activate:()=>this.activatePage(s),deactivate:()=>this.deactivatePage(s)}}))}createPage(e){return e.scrollTriggers=[],e.indexh=parseInt(e.slideElement.getAttribute("data-index-h"),10),e.indexv=parseInt(e.slideElement.getAttribute("data-index-v"),10),e}syncProgressBar(){this.progressBarInner.querySelectorAll(".scrollbar-slide").forEach(r=>r.remove());let e=this.viewportElement.scrollHeight,t=this.viewportElement.offsetHeight,i=t/e;this.progressBarHeight=this.progressBarInner.offsetHeight,this.playheadHeight=Math.max(i*this.progressBarHeight,Wn),this.progressBarScrollableHeight=this.progressBarHeight-this.playheadHeight;let s=t/e*this.progressBarHeight,n=Math.min(s/8,Vn);this.progressBarPlayhead.style.height=this.playheadHeight-n+"px",s>Un?this.slideTriggers.forEach(r=>{let{page:l}=r;l.progressBarSlide=document.createElement("div"),l.progressBarSlide.className="scrollbar-slide",l.progressBarSlide.style.top=r.range[0]*this.progressBarHeight+"px",l.progressBarSlide.style.height=(r.range[1]-r.range[0])*this.progressBarHeight-n+"px",l.progressBarSlide.classList.toggle("has-triggers",l.scrollTriggers.length>0),this.progressBarInner.appendChild(l.progressBarSlide),l.scrollTriggerElements=l.scrollTriggers.map((a,c)=>{let o=document.createElement("div");return o.className="scrollbar-trigger",o.style.top=(a.range[0]-r.range[0])*this.progressBarHeight+"px",o.style.height=(a.range[1]-a.range[0])*this.progressBarHeight-n+"px",l.progressBarSlide.appendChild(o),c===0&&(o.style.display="none"),o})}):this.pages.forEach(r=>r.progressBarSlide=null)}syncScrollPosition(){let e=this.viewportElement.offsetHeight,t=e/this.viewportElement.scrollHeight,i=this.viewportElement.scrollTop,s=this.viewportElement.scrollHeight-e,n=Math.max(Math.min(i/s,1),0),r=Math.max(Math.min((i+e/2)/this.viewportElement.scrollHeight,1),0),l;this.slideTriggers.forEach(a=>{let{page:c}=a;n>=a.range[0]-t*2&&n<=a.range[1]+t*2&&!c.loaded?(c.loaded=!0,this.Reveal.slideContent.load(c.slideElement)):c.loaded&&(c.loaded=!1,this.Reveal.slideContent.unload(c.slideElement)),n>=a.range[0]&&n<=a.range[1]?(this.activateTrigger(a),l=a.page):a.active&&this.deactivateTrigger(a)}),l&&l.scrollTriggers.forEach(a=>{r>=a.range[0]&&r<=a.range[1]?this.activateTrigger(a):a.active&&this.deactivateTrigger(a)}),this.setProgressBarValue(i/(this.viewportElement.scrollHeight-e))}setProgressBarValue(e){this.progressBar&&(this.progressBarPlayhead.style.transform=`translateY(${e*this.progressBarScrollableHeight}px)`,this.getAllPages().filter(t=>t.progressBarSlide).forEach(t=>{t.progressBarSlide.classList.toggle("active",t.active===!0),t.scrollTriggers.forEach((i,s)=>{t.scrollTriggerElements[s].classList.toggle("active",t.active===!0&&i.active===!0)})}),this.showProgressBar())}showProgressBar(){this.progressBar.classList.add("visible"),clearTimeout(this.hideProgressBarTimeout),this.Reveal.getConfig().scrollProgress==="auto"&&!this.draggingProgressBar&&(this.hideProgressBarTimeout=setTimeout(()=>{this.progressBar&&this.progressBar.classList.remove("visible")},Fn))}prev(){this.viewportElement.scrollTop-=this.scrollTriggerHeight}next(){this.viewportElement.scrollTop+=this.scrollTriggerHeight}scrollToSlide(e){if(!this.active)this.activatedCallbacks.push(()=>this.scrollToSlide(e));else{let t=this.getScrollTriggerBySlide(e);t&&(this.viewportElement.scrollTop=t.range[0]*(this.viewportElement.scrollHeight-this.viewportElement.offsetHeight))}}storeScrollPosition(){clearTimeout(this.storeScrollPositionTimeout),this.storeScrollPositionTimeout=setTimeout(()=>{sessionStorage.setItem("reveal-scroll-top",this.viewportElement.scrollTop),sessionStorage.setItem("reveal-scroll-origin",location.origin+location.pathname),this.storeScrollPositionTimeout=null},50)}restoreScrollPosition(){let e=sessionStorage.getItem("reveal-scroll-top"),t=sessionStorage.getItem("reveal-scroll-origin");e&&t===location.origin+location.pathname&&(this.viewportElement.scrollTop=parseInt(e,10))}activatePage(e){if(!e.active){e.active=!0;let{slideElement:t,backgroundElement:i,contentElement:s,indexh:n,indexv:r}=e;s.style.display="block",t.classList.add("present"),i&&i.classList.add("present"),this.Reveal.setCurrentScrollPage(t,n,r),this.Reveal.backgrounds.bubbleSlideContrastClassToElement(t,this.viewportElement),Array.from(s.parentNode.querySelectorAll(".scroll-page-content")).forEach(l=>{l!==s&&(l.style.display="none")})}}deactivatePage(e){e.active&&(e.active=!1,e.slideElement&&e.slideElement.classList.remove("present"),e.backgroundElement&&e.backgroundElement.classList.remove("present"))}activateTrigger(e){e.active||(e.active=!0,e.activate())}deactivateTrigger(e){e.active&&(e.active=!1,e.deactivate&&e.deactivate())}getSlideByIndices(e,t){let i=this.getAllPages().find(s=>s.indexh===e&&s.indexv===t);return i?i.slideElement:null}getScrollTriggerBySlide(e){return this.slideTriggers.find(t=>t.page.slideElement===e)}getAllPages(){return this.pages.flatMap(e=>[e,...e.autoAnimatePages||[]])}onScroll(){this.syncScrollPosition(),this.storeScrollPosition()}get viewportElement(){return this.Reveal.getViewportElement()}},Zn=class{constructor(e){this.Reveal=e}activate(){return An(this,null,function*(){let e=this.Reveal.getConfig(),t=C(this.Reveal.getRevealElement(),Pe),i=e.slideNumber&&/all|print/i.test(e.showSlideNumber),s=this.Reveal.getComputedSlideSize(window.innerWidth,window.innerHeight),n=Math.floor(s.width*(1+e.margin)),r=Math.floor(s.height*(1+e.margin)),l=s.width,a=s.height;yield new Promise(requestAnimationFrame),_t("@page{size:"+n+"px "+r+"px; margin: 0px;}"),_t(".reveal section>img, .reveal section>video, .reveal section>iframe{max-width: "+l+"px; max-height:"+a+"px}"),document.documentElement.classList.add("reveal-print","print-pdf"),document.body.style.width=n+"px",document.body.style.height=r+"px";let c=this.Reveal.getViewportElement(),o;if(c){let d=window.getComputedStyle(c);d&&d.background&&(o=d.background)}yield new Promise(requestAnimationFrame),this.Reveal.layoutSlideContents(l,a),yield new Promise(requestAnimationFrame);let u=t.map(d=>d.scrollHeight),h=[],g=t[0].parentNode,p=1;t.forEach(function(d,b){if(d.classList.contains("stack")===!1){let y=(n-l)/2,z=(r-a)/2,D=u[b],L=Math.max(Math.ceil(D/r),1);L=Math.min(L,e.pdfMaxPagesPerSlide),(L===1&&e.center||d.classList.contains("center"))&&(z=Math.max((r-D)/2,0));let A=document.createElement("div");if(h.push(A),A.className="pdf-page",A.style.height=(r+e.pdfPageHeightOffset)*L+"px",o&&(A.style.background=o),A.appendChild(d),d.style.left=y+"px",d.style.top=z+"px",d.style.width=l+"px",this.Reveal.slideContent.layout(d),d.slideBackgroundElement&&A.insertBefore(d.slideBackgroundElement,d),e.showNotes){let S=this.Reveal.getSlideNotes(d);if(S){let P=typeof e.showNotes=="string"?e.showNotes:"inline",$=document.createElement("div");$.classList.add("speaker-notes"),$.classList.add("speaker-notes-pdf"),$.setAttribute("data-layout",P),$.innerHTML=S,P==="separate-page"?h.push($):($.style.left="8px",$.style.bottom="8px",$.style.width=n-16+"px",A.appendChild($))}}if(i){let S=document.createElement("div");S.classList.add("slide-number"),S.classList.add("slide-number-pdf"),S.innerHTML=p++,A.appendChild(S)}if(e.pdfSeparateFragments){let S=this.Reveal.fragments.sort(A.querySelectorAll(".fragment"),!0),P;S.forEach(function($,_){P&&P.forEach(function(M){M.classList.remove("current-fragment")}),$.forEach(function(M){M.classList.add("visible","current-fragment")},this);let O=A.cloneNode(!0);if(i){let M=O.querySelector(".slide-number-pdf"),Y=_+1;M.innerHTML+="."+Y}h.push(O),P=$},this),S.forEach(function($){$.forEach(function(_){_.classList.remove("visible","current-fragment")})})}else C(A,".fragment:not(.fade-out)").forEach(function(S){S.classList.add("visible")})}},this),yield new Promise(requestAnimationFrame),h.forEach(d=>g.appendChild(d)),this.Reveal.slideContent.layout(this.Reveal.getSlidesElement()),this.Reveal.dispatchEvent({type:"pdf-ready"}),c.classList.remove("loading-scroll-mode")})}isActive(){return this.Reveal.getConfig().view==="print"}},Qn=class{constructor(e){this.Reveal=e}configure(e,t){e.fragments===!1?this.disable():t.fragments===!1&&this.enable()}disable(){C(this.Reveal.getSlidesElement(),".fragment").forEach(e=>{e.classList.add("visible"),e.classList.remove("current-fragment")})}enable(){C(this.Reveal.getSlidesElement(),".fragment").forEach(e=>{e.classList.remove("visible"),e.classList.remove("current-fragment")})}availableRoutes(){let e=this.Reveal.getCurrentSlide();if(e&&this.Reveal.getConfig().fragments){let t=e.querySelectorAll(".fragment:not(.disabled)"),i=e.querySelectorAll(".fragment:not(.disabled):not(.visible)");return{prev:t.length-i.length>0,next:!!i.length}}else return{prev:!1,next:!1}}sort(e,t=!1){e=Array.from(e);let i=[],s=[],n=[];e.forEach(l=>{if(l.hasAttribute("data-fragment-index")){let a=parseInt(l.getAttribute("data-fragment-index"),10);i[a]||(i[a]=[]),i[a].push(l)}else s.push([l])}),i=i.concat(s);let r=0;return i.forEach(l=>{l.forEach(a=>{n.push(a),a.setAttribute("data-fragment-index",r)}),r++}),t===!0?i:n}sortAll(){this.Reveal.getHorizontalSlides().forEach(e=>{let t=C(e,"section");t.forEach((i,s)=>{this.sort(i.querySelectorAll(".fragment"))},this),t.length===0&&this.sort(e.querySelectorAll(".fragment"))})}update(e,t,i=this.Reveal.getCurrentSlide()){let s={shown:[],hidden:[]};if(i&&this.Reveal.getConfig().fragments&&(t||(t=this.sort(i.querySelectorAll(".fragment"))),t.length)){let n=0;if(typeof e!="number"){let r=this.sort(i.querySelectorAll(".fragment.visible")).pop();r&&(e=parseInt(r.getAttribute("data-fragment-index")||0,10))}Array.from(t).forEach((r,l)=>{if(r.hasAttribute("data-fragment-index")&&(l=parseInt(r.getAttribute("data-fragment-index"),10)),n=Math.max(n,l),l<=e){let a=r.classList.contains("visible");r.classList.add("visible"),r.classList.remove("current-fragment"),l===e&&(this.Reveal.announceStatus(this.Reveal.getStatusText(r)),r.classList.add("current-fragment"),this.Reveal.slideContent.startEmbeddedContent(r)),a||(s.shown.push(r),this.Reveal.dispatchEvent({target:r,type:"visible",bubbles:!1}))}else{let a=r.classList.contains("visible");r.classList.remove("visible"),r.classList.remove("current-fragment"),a&&(this.Reveal.slideContent.stopEmbeddedContent(r),s.hidden.push(r),this.Reveal.dispatchEvent({target:r,type:"hidden",bubbles:!1}))}}),e=typeof e=="number"?e:-1,e=Math.max(Math.min(e,n),-1),i.setAttribute("data-fragment",e)}return s.hidden.length&&this.Reveal.dispatchEvent({type:"fragmenthidden",data:{fragment:s.hidden[0],fragments:s.hidden}}),s.shown.length&&this.Reveal.dispatchEvent({type:"fragmentshown",data:{fragment:s.shown[0],fragments:s.shown}}),s}sync(e=this.Reveal.getCurrentSlide()){return this.sort(e.querySelectorAll(".fragment"))}goto(e,t=0){let i=this.Reveal.getCurrentSlide();if(i&&this.Reveal.getConfig().fragments){let s=this.sort(i.querySelectorAll(".fragment:not(.disabled)"));if(s.length){if(typeof e!="number"){let r=this.sort(i.querySelectorAll(".fragment:not(.disabled).visible")).pop();e=r?parseInt(r.getAttribute("data-fragment-index")||0,10):-1}e+=t;let n=this.update(e,s);return this.Reveal.controls.update(),this.Reveal.progress.update(),this.Reveal.getConfig().fragmentInURL&&this.Reveal.location.writeURL(),!!(n.shown.length||n.hidden.length)}}return!1}next(){return this.goto(null,1)}prev(){return this.goto(null,-1)}},Xn=class{constructor(e){this.Reveal=e,this.active=!1,this.onSlideClicked=this.onSlideClicked.bind(this)}activate(){if(this.Reveal.getConfig().overview&&!this.Reveal.isScrollView()&&!this.isActive()){this.active=!0,this.Reveal.getRevealElement().classList.add("overview"),this.Reveal.cancelAutoSlide(),this.Reveal.getSlidesElement().appendChild(this.Reveal.getBackgroundsElement()),C(this.Reveal.getRevealElement(),Pe).forEach(i=>{i.classList.contains("stack")||i.addEventListener("click",this.onSlideClicked,!0)});let e=this.Reveal.getComputedSlideSize();this.overviewSlideWidth=e.width+70,this.overviewSlideHeight=e.height+70,this.Reveal.getConfig().rtl&&(this.overviewSlideWidth=-this.overviewSlideWidth),this.Reveal.updateSlidesVisibility(),this.layout(),this.update(),this.Reveal.layout();let t=this.Reveal.getIndices();this.Reveal.dispatchEvent({type:"overviewshown",data:{indexh:t.h,indexv:t.v,currentSlide:this.Reveal.getCurrentSlide()}})}}layout(){this.Reveal.getHorizontalSlides().forEach((e,t)=>{e.setAttribute("data-index-h",t),Ee(e,"translate3d("+t*this.overviewSlideWidth+"px, 0, 0)"),e.classList.contains("stack")&&C(e,"section").forEach((i,s)=>{i.setAttribute("data-index-h",t),i.setAttribute("data-index-v",s),Ee(i,"translate3d(0, "+s*this.overviewSlideHeight+"px, 0)")})}),Array.from(this.Reveal.getBackgroundsElement().childNodes).forEach((e,t)=>{Ee(e,"translate3d("+t*this.overviewSlideWidth+"px, 0, 0)"),C(e,".slide-background").forEach((i,s)=>{Ee(i,"translate3d(0, "+s*this.overviewSlideHeight+"px, 0)")})})}update(){let e=Math.min(window.innerWidth,window.innerHeight),t=Math.max(e/5,150)/e,i=this.Reveal.getIndices();this.Reveal.transformSlides({overview:["scale("+t+")","translateX("+-i.h*this.overviewSlideWidth+"px)","translateY("+-i.v*this.overviewSlideHeight+"px)"].join(" ")})}deactivate(){if(this.Reveal.getConfig().overview){this.active=!1,this.Reveal.getRevealElement().classList.remove("overview"),this.Reveal.getRevealElement().classList.add("overview-deactivating"),setTimeout(()=>{this.Reveal.getRevealElement().classList.remove("overview-deactivating")},1),this.Reveal.getRevealElement().appendChild(this.Reveal.getBackgroundsElement()),C(this.Reveal.getRevealElement(),Pe).forEach(t=>{Ee(t,""),t.removeEventListener("click",this.onSlideClicked,!0)}),C(this.Reveal.getBackgroundsElement(),".slide-background").forEach(t=>{Ee(t,"")}),this.Reveal.transformSlides({overview:""});let e=this.Reveal.getIndices();this.Reveal.slide(e.h,e.v),this.Reveal.layout(),this.Reveal.cueAutoSlide(),this.Reveal.dispatchEvent({type:"overviewhidden",data:{indexh:e.h,indexv:e.v,currentSlide:this.Reveal.getCurrentSlide()}})}}toggle(e){typeof e=="boolean"?e?this.activate():this.deactivate():this.isActive()?this.deactivate():this.activate()}isActive(){return this.active}onSlideClicked(e){if(this.isActive()){e.preventDefault();let t=e.target;for(;t&&!t.nodeName.match(/section/gi);)t=t.parentNode;if(t&&!t.classList.contains("disabled")&&(this.deactivate(),t.nodeName.match(/section/gi))){let i=parseInt(t.getAttribute("data-index-h"),10),s=parseInt(t.getAttribute("data-index-v"),10);this.Reveal.slide(i,s)}}}},Jn=class{constructor(e){this.Reveal=e,this.shortcuts={},this.bindings={},this.onDocumentKeyDown=this.onDocumentKeyDown.bind(this)}configure(e,t){e.navigationMode==="linear"?(this.shortcuts["&#8594; , &#8595; , SPACE , N , L , J"]="Next slide",this.shortcuts["&#8592; , &#8593; , P , H , K"]="Previous slide"):(this.shortcuts["N , SPACE"]="Next slide",this.shortcuts["P , Shift SPACE"]="Previous slide",this.shortcuts["&#8592; , H"]="Navigate left",this.shortcuts["&#8594; , L"]="Navigate right",this.shortcuts["&#8593; , K"]="Navigate up",this.shortcuts["&#8595; , J"]="Navigate down"),this.shortcuts["Alt + &#8592;/&#8593/&#8594;/&#8595;"]="Navigate without fragments",this.shortcuts["Shift + &#8592;/&#8593/&#8594;/&#8595;"]="Jump to first/last slide",this.shortcuts["B , ."]="Pause",this.shortcuts.F="Fullscreen",this.shortcuts.G="Jump to slide",this.shortcuts["ESC, O"]="Slide overview"}bind(){document.addEventListener("keydown",this.onDocumentKeyDown,!1)}unbind(){document.removeEventListener("keydown",this.onDocumentKeyDown,!1)}addKeyBinding(e,t){typeof e=="object"&&e.keyCode?this.bindings[e.keyCode]={callback:t,key:e.key,description:e.description}:this.bindings[e]={callback:t,key:null,description:null}}removeKeyBinding(e){delete this.bindings[e]}triggerKey(e){this.onDocumentKeyDown({keyCode:e})}registerKeyboardShortcut(e,t){this.shortcuts[e]=t}getShortcuts(){return this.shortcuts}getBindings(){return this.bindings}onDocumentKeyDown(e){let t=this.Reveal.getConfig();if(typeof t.keyboardCondition=="function"&&t.keyboardCondition(e)===!1||t.keyboardCondition==="focused"&&!this.Reveal.isFocused())return!0;let i=e.keyCode,s=!this.Reveal.isAutoSliding();this.Reveal.onUserInput(e);let n=document.activeElement&&document.activeElement.isContentEditable===!0,r=document.activeElement&&document.activeElement.tagName&&/input|textarea/i.test(document.activeElement.tagName),l=document.activeElement&&document.activeElement.className&&/speaker-notes/i.test(document.activeElement.className),a=!([32,37,38,39,40,63,78,80,191].indexOf(e.keyCode)!==-1&&e.shiftKey||e.altKey)&&(e.shiftKey||e.altKey||e.ctrlKey||e.metaKey);if(n||r||l||a)return;let c=[66,86,190,191,112],o;if(typeof t.keyboard=="object")for(o in t.keyboard)t.keyboard[o]==="togglePause"&&c.push(parseInt(o,10));if(this.Reveal.isOverlayOpen()&&!["Escape","f","c","b","."].includes(e.key)||this.Reveal.isPaused()&&c.indexOf(i)===-1)return!1;let u=t.navigationMode==="linear"||!this.Reveal.hasHorizontalSlides()||!this.Reveal.hasVerticalSlides(),h=!1;if(typeof t.keyboard=="object"){for(o in t.keyboard)if(parseInt(o,10)===i){let g=t.keyboard[o];typeof g=="function"?g.apply(null,[e]):typeof g=="string"&&typeof this.Reveal[g]=="function"&&this.Reveal[g].call(),h=!0}}if(h===!1){for(o in this.bindings)if(parseInt(o,10)===i){let g=this.bindings[o].callback;typeof g=="function"?g.apply(null,[e]):typeof g=="string"&&typeof this.Reveal[g]=="function"&&this.Reveal[g].call(),h=!0}}h===!1&&(h=!0,i===80||i===33?this.Reveal.prev({skipFragments:e.altKey}):i===78||i===34?this.Reveal.next({skipFragments:e.altKey}):i===72||i===37?e.shiftKey?this.Reveal.slide(0):!this.Reveal.overview.isActive()&&u?t.rtl?this.Reveal.next({skipFragments:e.altKey}):this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.left({skipFragments:e.altKey}):i===76||i===39?e.shiftKey?this.Reveal.slide(this.Reveal.getHorizontalSlides().length-1):!this.Reveal.overview.isActive()&&u?t.rtl?this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.next({skipFragments:e.altKey}):this.Reveal.right({skipFragments:e.altKey}):i===75||i===38?e.shiftKey?this.Reveal.slide(void 0,0):!this.Reveal.overview.isActive()&&u?this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.up({skipFragments:e.altKey}):i===74||i===40?e.shiftKey?this.Reveal.slide(void 0,Number.MAX_VALUE):!this.Reveal.overview.isActive()&&u?this.Reveal.next({skipFragments:e.altKey}):this.Reveal.down({skipFragments:e.altKey}):i===36?this.Reveal.slide(0):i===35?this.Reveal.slide(this.Reveal.getHorizontalSlides().length-1):i===32?(this.Reveal.overview.isActive()&&this.Reveal.overview.deactivate(),e.shiftKey?this.Reveal.prev({skipFragments:e.altKey}):this.Reveal.next({skipFragments:e.altKey})):[58,59,66,86,190].includes(i)||i===191&&!e.shiftKey?this.Reveal.togglePause():i===70?Bi(t.embedded?this.Reveal.getViewportElement():document.documentElement):i===65?t.autoSlideStoppable&&this.Reveal.toggleAutoSlide(s):i===71?t.jumpToSlide&&this.Reveal.toggleJumpToSlide():i===67&&this.Reveal.isOverlayOpen()?this.Reveal.closeOverlay():(i===63||i===191)&&e.shiftKey||i===112?this.Reveal.toggleHelp():h=!1),h?e.preventDefault&&e.preventDefault():i===27||i===79?(this.Reveal.closeOverlay()===!1&&this.Reveal.overview.toggle(),e.preventDefault&&e.preventDefault()):i===13&&this.Reveal.overview.isActive()&&(this.Reveal.overview.deactivate(),e.preventDefault&&e.preventDefault()),this.Reveal.cueAutoSlide()}},Yn=class{constructor(e){$i(this,"MAX_REPLACE_STATE_FREQUENCY",1e3),this.Reveal=e,this.writeURLTimeout=0,this.replaceStateTimestamp=0,this.onWindowHashChange=this.onWindowHashChange.bind(this)}bind(){window.addEventListener("hashchange",this.onWindowHashChange,!1)}unbind(){window.removeEventListener("hashchange",this.onWindowHashChange,!1)}getIndicesFromHash(e=window.location.hash,t={}){let i=e.replace(/^#\/?/,""),s=i.split("/");if(!/^[0-9]*$/.test(s[0])&&i.length){let n,r;/\/[-\d]+$/g.test(i)&&(r=parseInt(i.split("/").pop(),10),r=isNaN(r)?void 0:r,i=i.split("/").shift());try{let l=decodeURIComponent(i);n=(document.getElementById(l)||document.querySelector(`[data-id="${l}"]`)).closest(".slides section")}catch{}if(n)return zi(ye({},this.Reveal.getIndices(n)),{f:r})}else{let n=this.Reveal.getConfig(),r=n.hashOneBasedIndex||t.oneBasedIndex?1:0,l=parseInt(s[0],10)-r||0,a=parseInt(s[1],10)-r||0,c;return n.fragmentInURL&&(c=parseInt(s[2],10),isNaN(c)&&(c=void 0)),{h:l,v:a,f:c}}return null}readURL(){let e=this.Reveal.getIndices(),t=this.getIndicesFromHash();t?(t.h!==e.h||t.v!==e.v||t.f!==void 0)&&this.Reveal.slide(t.h,t.v,t.f):this.Reveal.slide(e.h||0,e.v||0)}writeURL(e){let t=this.Reveal.getConfig(),i=this.Reveal.getCurrentSlide();if(clearTimeout(this.writeURLTimeout),typeof e=="number")this.writeURLTimeout=setTimeout(this.writeURL,e);else if(i){let s=this.getHash();t.history?window.location.hash=s:t.hash&&(s==="/"?this.debouncedReplaceState(window.location.pathname+window.location.search):this.debouncedReplaceState("#"+s))}}replaceState(e){window.history.replaceState(null,null,e),this.replaceStateTimestamp=Date.now()}debouncedReplaceState(e){clearTimeout(this.replaceStateTimeout),Date.now()-this.replaceStateTimestamp>this.MAX_REPLACE_STATE_FREQUENCY?this.replaceState(e):this.replaceStateTimeout=setTimeout(()=>this.replaceState(e),this.MAX_REPLACE_STATE_FREQUENCY)}getHash(e){let t="/",i=e||this.Reveal.getCurrentSlide(),s=i?i.getAttribute("id"):null;s&&(s=encodeURIComponent(s));let n=this.Reveal.getIndices(e);if(this.Reveal.getConfig().fragmentInURL||(n.f=void 0),typeof s=="string"&&s.length)t="/"+s,n.f>=0&&(t+="/"+n.f);else{let r=this.Reveal.getConfig().hashOneBasedIndex?1:0;(n.h>0||n.v>0||n.f>=0)&&(t+=n.h+r),(n.v>0||n.f>=0)&&(t+="/"+(n.v+r)),n.f>=0&&(t+="/"+n.f)}return t}onWindowHashChange(e){this.readURL()}},Gn=class{constructor(e){this.Reveal=e,this.onNavigateLeftClicked=this.onNavigateLeftClicked.bind(this),this.onNavigateRightClicked=this.onNavigateRightClicked.bind(this),this.onNavigateUpClicked=this.onNavigateUpClicked.bind(this),this.onNavigateDownClicked=this.onNavigateDownClicked.bind(this),this.onNavigatePrevClicked=this.onNavigatePrevClicked.bind(this),this.onNavigateNextClicked=this.onNavigateNextClicked.bind(this),this.onEnterFullscreen=this.onEnterFullscreen.bind(this)}render(){let e=this.Reveal.getConfig().rtl,t=this.Reveal.getRevealElement();this.element=document.createElement("aside"),this.element.className="controls",this.element.innerHTML=`<button class="navigate-left" aria-label="${e?"next slide":"previous slide"}"><div class="controls-arrow"></div></button>
8
+ <button class="navigate-right" aria-label="${e?"previous slide":"next slide"}"><div class="controls-arrow"></div></button>
9
+ <button class="navigate-up" aria-label="above slide"><div class="controls-arrow"></div></button>
10
+ <button class="navigate-down" aria-label="below slide"><div class="controls-arrow"></div></button>`,this.Reveal.getRevealElement().appendChild(this.element),this.controlsLeft=C(t,".navigate-left"),this.controlsRight=C(t,".navigate-right"),this.controlsUp=C(t,".navigate-up"),this.controlsDown=C(t,".navigate-down"),this.controlsPrev=C(t,".navigate-prev"),this.controlsNext=C(t,".navigate-next"),this.controlsFullscreen=C(t,".enter-fullscreen"),this.controlsRightArrow=this.element.querySelector(".navigate-right"),this.controlsLeftArrow=this.element.querySelector(".navigate-left"),this.controlsDownArrow=this.element.querySelector(".navigate-down")}configure(e,t){let i=e.controls==="speaker"||e.controls==="speaker-only";this.element.style.display=e.controls&&(!i||this.Reveal.isSpeakerNotes())?"block":"none",this.element.setAttribute("data-controls-layout",e.controlsLayout),this.element.setAttribute("data-controls-back-arrows",e.controlsBackArrows)}bind(){let e=["touchstart","click"];_i&&(e=["touchend"]),e.forEach(t=>{this.controlsLeft.forEach(i=>i.addEventListener(t,this.onNavigateLeftClicked,!1)),this.controlsRight.forEach(i=>i.addEventListener(t,this.onNavigateRightClicked,!1)),this.controlsUp.forEach(i=>i.addEventListener(t,this.onNavigateUpClicked,!1)),this.controlsDown.forEach(i=>i.addEventListener(t,this.onNavigateDownClicked,!1)),this.controlsPrev.forEach(i=>i.addEventListener(t,this.onNavigatePrevClicked,!1)),this.controlsNext.forEach(i=>i.addEventListener(t,this.onNavigateNextClicked,!1)),this.controlsFullscreen.forEach(i=>i.addEventListener(t,this.onEnterFullscreen,!1))})}unbind(){["touchstart","touchend","click"].forEach(e=>{this.controlsLeft.forEach(t=>t.removeEventListener(e,this.onNavigateLeftClicked,!1)),this.controlsRight.forEach(t=>t.removeEventListener(e,this.onNavigateRightClicked,!1)),this.controlsUp.forEach(t=>t.removeEventListener(e,this.onNavigateUpClicked,!1)),this.controlsDown.forEach(t=>t.removeEventListener(e,this.onNavigateDownClicked,!1)),this.controlsPrev.forEach(t=>t.removeEventListener(e,this.onNavigatePrevClicked,!1)),this.controlsNext.forEach(t=>t.removeEventListener(e,this.onNavigateNextClicked,!1)),this.controlsFullscreen.forEach(t=>t.removeEventListener(e,this.onEnterFullscreen,!1))})}update(){let e=this.Reveal.availableRoutes();[...this.controlsLeft,...this.controlsRight,...this.controlsUp,...this.controlsDown,...this.controlsPrev,...this.controlsNext].forEach(i=>{i.classList.remove("enabled","fragmented"),i.setAttribute("disabled","disabled")}),e.left&&this.controlsLeft.forEach(i=>{i.classList.add("enabled"),i.removeAttribute("disabled")}),e.right&&this.controlsRight.forEach(i=>{i.classList.add("enabled"),i.removeAttribute("disabled")}),e.up&&this.controlsUp.forEach(i=>{i.classList.add("enabled"),i.removeAttribute("disabled")}),e.down&&this.controlsDown.forEach(i=>{i.classList.add("enabled"),i.removeAttribute("disabled")}),(e.left||e.up)&&this.controlsPrev.forEach(i=>{i.classList.add("enabled"),i.removeAttribute("disabled")}),(e.right||e.down)&&this.controlsNext.forEach(i=>{i.classList.add("enabled"),i.removeAttribute("disabled")});let t=this.Reveal.getCurrentSlide();if(t){let i=this.Reveal.fragments.availableRoutes();i.prev&&this.controlsPrev.forEach(r=>{r.classList.add("fragmented","enabled"),r.removeAttribute("disabled")}),i.next&&this.controlsNext.forEach(r=>{r.classList.add("fragmented","enabled"),r.removeAttribute("disabled")});let s=this.Reveal.isVerticalSlide(t),n=s&&t.parentElement&&t.parentElement.querySelectorAll(":scope > section").length>1;s&&n?(i.prev&&this.controlsUp.forEach(r=>{r.classList.add("fragmented","enabled"),r.removeAttribute("disabled")}),i.next&&this.controlsDown.forEach(r=>{r.classList.add("fragmented","enabled"),r.removeAttribute("disabled")})):(i.prev&&this.controlsLeft.forEach(r=>{r.classList.add("fragmented","enabled"),r.removeAttribute("disabled")}),i.next&&this.controlsRight.forEach(r=>{r.classList.add("fragmented","enabled"),r.removeAttribute("disabled")}))}if(this.Reveal.getConfig().controlsTutorial){let i=this.Reveal.getIndices();!this.Reveal.hasNavigatedVertically()&&e.down?this.controlsDownArrow.classList.add("highlight"):(this.controlsDownArrow.classList.remove("highlight"),this.Reveal.getConfig().rtl?!this.Reveal.hasNavigatedHorizontally()&&e.left&&i.v===0?this.controlsLeftArrow.classList.add("highlight"):this.controlsLeftArrow.classList.remove("highlight"):!this.Reveal.hasNavigatedHorizontally()&&e.right&&i.v===0?this.controlsRightArrow.classList.add("highlight"):this.controlsRightArrow.classList.remove("highlight"))}}destroy(){this.unbind(),this.element.remove()}onNavigateLeftClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.getConfig().navigationMode==="linear"?this.Reveal.prev():this.Reveal.left()}onNavigateRightClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.getConfig().navigationMode==="linear"?this.Reveal.next():this.Reveal.right()}onNavigateUpClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.up()}onNavigateDownClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.down()}onNavigatePrevClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.prev()}onNavigateNextClicked(e){e.preventDefault(),this.Reveal.onUserInput(),this.Reveal.next()}onEnterFullscreen(e){let t=this.Reveal.getConfig(),i=this.Reveal.getViewportElement();Bi(t.embedded?i:i.parentElement)}},er=class{constructor(e){this.Reveal=e,this.onProgressClicked=this.onProgressClicked.bind(this)}render(){this.element=document.createElement("div"),this.element.className="progress",this.Reveal.getRevealElement().appendChild(this.element),this.bar=document.createElement("span"),this.element.appendChild(this.bar)}configure(e,t){this.element.style.display=e.progress?"block":"none"}bind(){this.Reveal.getConfig().progress&&this.element&&this.element.addEventListener("click",this.onProgressClicked,!1)}unbind(){this.Reveal.getConfig().progress&&this.element&&this.element.removeEventListener("click",this.onProgressClicked,!1)}update(){if(this.Reveal.getConfig().progress&&this.bar){let e=this.Reveal.getProgress();this.Reveal.getTotalSlides()<2&&(e=0),this.bar.style.transform="scaleX("+e+")"}}getMaxWidth(){return this.Reveal.getRevealElement().offsetWidth}onProgressClicked(e){this.Reveal.onUserInput(e),e.preventDefault();let t=this.Reveal.getSlides(),i=t.length,s=Math.floor(e.clientX/this.getMaxWidth()*i);this.Reveal.getConfig().rtl&&(s=i-s);let n=this.Reveal.getIndices(t[s]);this.Reveal.slide(n.h,n.v)}destroy(){this.element.remove()}},tr=class{constructor(e){this.Reveal=e,this.lastMouseWheelStep=0,this.cursorHidden=!1,this.cursorInactiveTimeout=0,this.onDocumentCursorActive=this.onDocumentCursorActive.bind(this),this.onDocumentMouseScroll=this.onDocumentMouseScroll.bind(this)}configure(e,t){e.mouseWheel?document.addEventListener("wheel",this.onDocumentMouseScroll,!1):document.removeEventListener("wheel",this.onDocumentMouseScroll,!1),e.hideInactiveCursor?(document.addEventListener("mousemove",this.onDocumentCursorActive,!1),document.addEventListener("mousedown",this.onDocumentCursorActive,!1)):(this.showCursor(),document.removeEventListener("mousemove",this.onDocumentCursorActive,!1),document.removeEventListener("mousedown",this.onDocumentCursorActive,!1))}showCursor(){this.cursorHidden&&(this.cursorHidden=!1,this.Reveal.getRevealElement().style.cursor="")}hideCursor(){this.cursorHidden===!1&&(this.cursorHidden=!0,this.Reveal.getRevealElement().style.cursor="none")}destroy(){this.showCursor(),document.removeEventListener("wheel",this.onDocumentMouseScroll,!1),document.removeEventListener("mousemove",this.onDocumentCursorActive,!1),document.removeEventListener("mousedown",this.onDocumentCursorActive,!1)}onDocumentCursorActive(e){this.showCursor(),clearTimeout(this.cursorInactiveTimeout),this.cursorInactiveTimeout=setTimeout(this.hideCursor.bind(this),this.Reveal.getConfig().hideCursorTime)}onDocumentMouseScroll(e){if(Date.now()-this.lastMouseWheelStep>1e3){this.lastMouseWheelStep=Date.now();let t=e.detail||-e.wheelDelta;t>0?this.Reveal.next():t<0&&this.Reveal.prev()}}},Oi=(e,t)=>{let i=document.createElement("script");i.type="text/javascript",i.async=!1,i.defer=!1,i.src=e,typeof t=="function"&&(i.onload=n=>{n.type==="load"&&(i.onload=i.onerror=null,t())},i.onerror=n=>{i.onload=i.onerror=null,t(Error("Failed loading script: "+i.src+`
11
+ `+n))});let s=document.querySelector("head");s&&s.insertBefore(i,s.lastChild)},ir=class{constructor(e){this.Reveal=e,this.state="idle",this.registeredPlugins={},this.asyncDependencies=[]}load(e,t){return this.state="loading",e.forEach(this.registerPlugin.bind(this)),new Promise(i=>{let s=[],n=0;if(t.forEach(r=>{(!r.condition||r.condition())&&(r.async?this.asyncDependencies.push(r):s.push(r))}),s.length){n=s.length;let r=l=>{l&&typeof l.callback=="function"&&l.callback(),--n===0&&this.initPlugins().then(i)};s.forEach(l=>{typeof l.id=="string"?(this.registerPlugin(l),r(l)):typeof l.src=="string"?Oi(l.src,()=>r(l)):(console.warn("Unrecognized plugin format",l),r())})}else this.initPlugins().then(i)})}initPlugins(){return new Promise(e=>{let t=Object.values(this.registeredPlugins),i=t.length;if(i===0)this.loadAsync().then(e);else{let s,n=()=>{--i===0?this.loadAsync().then(e):s()},r=0;s=()=>{let l=t[r++];if(typeof l.init=="function"){let a=l.init(this.Reveal);a&&typeof a.then=="function"?a.then(n):n()}else n()},s()}})}loadAsync(){return this.state="loaded",this.asyncDependencies.length&&this.asyncDependencies.forEach(e=>{Oi(e.src,e.callback)}),Promise.resolve()}registerPlugin(e){arguments.length===2&&typeof arguments[0]=="string"?(e=arguments[1],e.id=arguments[0]):typeof e=="function"&&(e=e());let t=e.id;typeof t=="string"?this.registeredPlugins[t]===void 0?(this.registeredPlugins[t]=e,this.state==="loaded"&&typeof e.init=="function"&&e.init(this.Reveal)):console.warn('reveal.js: "'+t+'" plugin has already been registered'):console.warn("Unrecognized plugin format; can't find plugin.id",e)}hasPlugin(e){return!!this.registeredPlugins[e]}getPlugin(e){return this.registeredPlugins[e]}getRegisteredPlugins(){return this.registeredPlugins}destroy(){Object.values(this.registeredPlugins).forEach(e=>{typeof e.destroy=="function"&&e.destroy()}),this.registeredPlugins={},this.asyncDependencies=[]}},sr=class{constructor(e){this.Reveal=e,this.onSlidesClicked=this.onSlidesClicked.bind(this),this.iframeTriggerSelector=null,this.mediaTriggerSelector="[data-preview-image], [data-preview-video]",this.stateProps=["previewIframe","previewImage","previewVideo","previewFit"],this.state={}}update(){this.Reveal.getConfig().previewLinks?this.iframeTriggerSelector="a[href]:not([data-preview-link=false]), [data-preview-link]:not(a):not([data-preview-link=false])":this.iframeTriggerSelector="[data-preview-link]:not([data-preview-link=false])";let e=this.Reveal.getSlidesElement().querySelectorAll(this.iframeTriggerSelector).length>0,t=this.Reveal.getSlidesElement().querySelectorAll(this.mediaTriggerSelector).length>0;e||t?this.Reveal.getSlidesElement().addEventListener("click",this.onSlidesClicked,!1):this.Reveal.getSlidesElement().removeEventListener("click",this.onSlidesClicked,!1)}createOverlay(e){this.dom=document.createElement("div"),this.dom.classList.add("r-overlay"),this.dom.classList.add(e),this.viewport=document.createElement("div"),this.viewport.classList.add("r-overlay-viewport"),this.dom.appendChild(this.viewport),this.Reveal.getRevealElement().appendChild(this.dom)}previewIframe(e){this.close(),this.state={previewIframe:e},this.createOverlay("r-overlay-preview"),this.dom.dataset.state="loading",this.viewport.innerHTML=`<header class="r-overlay-header">
12
+ <a class="r-overlay-header-button r-overlay-external" href="${e}" target="_blank"><span class="icon"></span></a>
13
+ <button class="r-overlay-header-button r-overlay-close"><span class="icon"></span></button>
14
+ </header>
15
+ <div class="r-overlay-spinner"></div>
16
+ <div class="r-overlay-content">
17
+ <iframe src="${e}"></iframe>
18
+ <small class="r-overlay-content-inner">
19
+ <span class="r-overlay-error x-frame-error">Unable to load iframe. This is likely due to the site's policy (x-frame-options).</span>
20
+ </small>
21
+ </div>`,this.dom.querySelector("iframe").addEventListener("load",t=>{this.dom.dataset.state="loaded"},!1),this.dom.querySelector(".r-overlay-close").addEventListener("click",t=>{this.close(),t.preventDefault()},!1),this.dom.querySelector(".r-overlay-external").addEventListener("click",t=>{this.close()},!1),this.Reveal.dispatchEvent({type:"previewiframe",data:{url:e}})}previewMedia(e,t,i){if(t!=="image"&&t!=="video"){console.warn("Please specify a valid media type to preview (image|video)");return}this.close(),i||(i="scale-down"),this.createOverlay("r-overlay-preview"),this.dom.dataset.state="loading",this.dom.dataset.previewFit=i,this.viewport.innerHTML=`<header class="r-overlay-header">
22
+ <button class="r-overlay-header-button r-overlay-close">Esc <span class="icon"></span></button>
23
+ </header>
24
+ <div class="r-overlay-spinner"></div>
25
+ <div class="r-overlay-content"></div>`;let s=this.dom.querySelector(".r-overlay-content");if(t==="image"){this.state={previewImage:e,previewFit:i};let n=document.createElement("img",{});n.src=e,s.appendChild(n),n.addEventListener("load",()=>{this.dom.dataset.state="loaded"},!1),n.addEventListener("error",()=>{this.dom.dataset.state="error",s.innerHTML='<span class="r-overlay-error">Unable to load image.</span>'},!1),this.dom.style.cursor="zoom-out",this.dom.addEventListener("click",r=>{this.close()},!1),this.Reveal.dispatchEvent({type:"previewimage",data:{url:e}})}else if(t==="video"){this.state={previewVideo:e,previewFit:i};let n=document.createElement("video");n.autoplay=this.dom.dataset.previewAutoplay!=="false",n.controls=this.dom.dataset.previewControls!=="false",n.loop=this.dom.dataset.previewLoop==="true",n.muted=this.dom.dataset.previewMuted==="true",n.playsInline=!0,n.src=e,s.appendChild(n),n.addEventListener("loadeddata",()=>{this.dom.dataset.state="loaded"},!1),n.addEventListener("error",()=>{this.dom.dataset.state="error",s.innerHTML='<span class="r-overlay-error">Unable to load video.</span>'},!1),this.Reveal.dispatchEvent({type:"previewvideo",data:{url:e}})}else throw Error("Please specify a valid media type to preview");this.dom.querySelector(".r-overlay-close").addEventListener("click",n=>{this.close(),n.preventDefault()},!1)}previewImage(e,t){this.previewMedia(e,"image",t)}previewVideo(e,t){this.previewMedia(e,"video",t)}toggleHelp(e){typeof e=="boolean"?e?this.showHelp():this.close():this.dom?this.close():this.showHelp()}showHelp(){if(this.Reveal.getConfig().help){this.close(),this.createOverlay("r-overlay-help");let e='<p class="title">Keyboard Shortcuts</p>',t=this.Reveal.keyboard.getShortcuts(),i=this.Reveal.keyboard.getBindings();for(let s in e+="<table><th>KEY</th><th>ACTION</th>",t)e+=`<tr><td>${s}</td><td>${t[s]}</td></tr>`;for(let s in i)i[s].key&&i[s].description&&(e+=`<tr><td>${i[s].key}</td><td>${i[s].description}</td></tr>`);e+="</table>",this.viewport.innerHTML=`
26
+ <header class="r-overlay-header">
27
+ <button class="r-overlay-header-button r-overlay-close">Esc <span class="icon"></span></button>
28
+ </header>
29
+ <div class="r-overlay-content">
30
+ <div class="r-overlay-help-content">${e}</div>
31
+ </div>
32
+ `,this.dom.querySelector(".r-overlay-close").addEventListener("click",s=>{this.close(),s.preventDefault()},!1),this.Reveal.dispatchEvent({type:"showhelp"})}}isOpen(){return!!this.dom}close(){return this.dom?(this.dom.remove(),this.dom=null,this.state={},this.Reveal.dispatchEvent({type:"closeoverlay"}),!0):!1}getState(){return this.state}setState(e){this.stateProps.every(t=>this.state[t]===e[t])||(e.previewIframe?this.previewIframe(e.previewIframe):e.previewImage?this.previewImage(e.previewImage,e.previewFit):e.previewVideo?this.previewVideo(e.previewVideo,e.previewFit):this.close())}onSlidesClicked(e){let t=e.target,i=t.closest(this.iframeTriggerSelector),s=t.closest(this.mediaTriggerSelector);if(i){if(e.metaKey||e.shiftKey||e.altKey)return;let n=i.getAttribute("data-preview-link"),r=typeof n=="string"&&n.startsWith("http")?n:i.getAttribute("href");r&&(this.previewIframe(r),e.preventDefault())}else if(s){if(s.hasAttribute("data-preview-image")){let n=s.dataset.previewImage||s.getAttribute("src");n&&(this.previewImage(n,s.dataset.previewFit),e.preventDefault())}else if(s.hasAttribute("data-preview-video")){let n=s.dataset.previewVideo||s.getAttribute("src");if(!n){let r=s.querySelector("source");r&&(n=r.getAttribute("src"))}n&&(this.previewVideo(n,s.dataset.previewFit),e.preventDefault())}}}destroy(){this.close()}},ot=40,nr=class{constructor(e){this.Reveal=e,this.touchStartX=0,this.touchStartY=0,this.touchStartCount=0,this.touchCaptured=!1,this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.onTouchStart=this.onTouchStart.bind(this),this.onTouchMove=this.onTouchMove.bind(this),this.onTouchEnd=this.onTouchEnd.bind(this)}bind(){let e=this.Reveal.getRevealElement();"onpointerdown"in window?(e.addEventListener("pointerdown",this.onPointerDown,!1),e.addEventListener("pointermove",this.onPointerMove,!1),e.addEventListener("pointerup",this.onPointerUp,!1)):window.navigator.msPointerEnabled?(e.addEventListener("MSPointerDown",this.onPointerDown,!1),e.addEventListener("MSPointerMove",this.onPointerMove,!1),e.addEventListener("MSPointerUp",this.onPointerUp,!1)):(e.addEventListener("touchstart",this.onTouchStart,!1),e.addEventListener("touchmove",this.onTouchMove,!1),e.addEventListener("touchend",this.onTouchEnd,!1))}unbind(){let e=this.Reveal.getRevealElement();e.removeEventListener("pointerdown",this.onPointerDown,!1),e.removeEventListener("pointermove",this.onPointerMove,!1),e.removeEventListener("pointerup",this.onPointerUp,!1),e.removeEventListener("MSPointerDown",this.onPointerDown,!1),e.removeEventListener("MSPointerMove",this.onPointerMove,!1),e.removeEventListener("MSPointerUp",this.onPointerUp,!1),e.removeEventListener("touchstart",this.onTouchStart,!1),e.removeEventListener("touchmove",this.onTouchMove,!1),e.removeEventListener("touchend",this.onTouchEnd,!1)}isSwipePrevented(e){if(lt(e,"video[controls], audio[controls]"))return!0;for(;e&&typeof e.hasAttribute=="function";){if(e.hasAttribute("data-prevent-swipe"))return!0;e=e.parentNode}return!1}onTouchStart(e){if(this.touchCaptured=!1,this.isSwipePrevented(e.target))return!0;this.touchStartX=e.touches[0].clientX,this.touchStartY=e.touches[0].clientY,this.touchStartCount=e.touches.length}onTouchMove(e){if(this.isSwipePrevented(e.target))return!0;let t=this.Reveal.getConfig();if(this.touchCaptured)_i&&e.preventDefault();else{this.Reveal.onUserInput(e);let i=e.touches[0].clientX,s=e.touches[0].clientY;if(e.touches.length===1&&this.touchStartCount!==2){let n=this.Reveal.availableRoutes({includeFragments:!0}),r=i-this.touchStartX,l=s-this.touchStartY;r>ot&&Math.abs(r)>Math.abs(l)?(this.touchCaptured=!0,t.navigationMode==="linear"?t.rtl?this.Reveal.next():this.Reveal.prev():this.Reveal.left()):r<-ot&&Math.abs(r)>Math.abs(l)?(this.touchCaptured=!0,t.navigationMode==="linear"?t.rtl?this.Reveal.prev():this.Reveal.next():this.Reveal.right()):l>ot&&n.up?(this.touchCaptured=!0,t.navigationMode==="linear"?this.Reveal.prev():this.Reveal.up()):l<-ot&&n.down&&(this.touchCaptured=!0,t.navigationMode==="linear"?this.Reveal.next():this.Reveal.down()),t.embedded?(this.touchCaptured||this.Reveal.isVerticalSlide())&&e.preventDefault():e.preventDefault()}}}onTouchEnd(e){this.touchCaptured&&!this.Reveal.slideContent.isAllowedToPlayAudio()&&this.Reveal.startEmbeddedContent(this.Reveal.getCurrentSlide()),this.touchCaptured=!1}onPointerDown(e){(e.pointerType===e.MSPOINTER_TYPE_TOUCH||e.pointerType==="touch")&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchStart(e))}onPointerMove(e){(e.pointerType===e.MSPOINTER_TYPE_TOUCH||e.pointerType==="touch")&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchMove(e))}onPointerUp(e){(e.pointerType===e.MSPOINTER_TYPE_TOUCH||e.pointerType==="touch")&&(e.touches=[{clientX:e.clientX,clientY:e.clientY}],this.onTouchEnd(e))}},Ft="focus",Fi="blur",rr=class{constructor(e){this.Reveal=e,this.onRevealPointerDown=this.onRevealPointerDown.bind(this),this.onDocumentPointerDown=this.onDocumentPointerDown.bind(this)}configure(e,t){e.embedded?this.blur():(this.focus(),this.unbind())}bind(){this.Reveal.getConfig().embedded&&this.Reveal.getRevealElement().addEventListener("pointerdown",this.onRevealPointerDown,!1)}unbind(){this.Reveal.getRevealElement().removeEventListener("pointerdown",this.onRevealPointerDown,!1),document.removeEventListener("pointerdown",this.onDocumentPointerDown,!1)}focus(){this.state!==Ft&&(this.Reveal.getRevealElement().classList.add("focused"),document.addEventListener("pointerdown",this.onDocumentPointerDown,!1)),this.state=Ft}blur(){this.state!==Fi&&(this.Reveal.getRevealElement().classList.remove("focused"),document.removeEventListener("pointerdown",this.onDocumentPointerDown,!1)),this.state=Fi}isFocused(){return this.state===Ft}destroy(){this.Reveal.getRevealElement().classList.remove("focused")}onRevealPointerDown(e){this.focus()}onDocumentPointerDown(e){let t=ee(e.target,".reveal");(!t||t!==this.Reveal.getRevealElement())&&this.blur()}},ar=class{constructor(e){this.Reveal=e}render(){this.element=document.createElement("div"),this.element.className="speaker-notes",this.element.setAttribute("data-prevent-swipe",""),this.element.setAttribute("tabindex","0"),this.Reveal.getRevealElement().appendChild(this.element)}configure(e,t){e.showNotes&&this.element.setAttribute("data-layout",typeof e.showNotes=="string"?e.showNotes:"inline")}update(){this.Reveal.getConfig().showNotes&&this.element&&this.Reveal.getCurrentSlide()&&!this.Reveal.isScrollView()&&!this.Reveal.isPrintView()&&(this.element.innerHTML=this.getSlideNotes()||'<span class="notes-placeholder">No notes on this slide.</span>')}updateVisibility(){this.Reveal.getConfig().showNotes&&this.hasNotes()&&!this.Reveal.isScrollView()&&!this.Reveal.isPrintView()?this.Reveal.getRevealElement().classList.add("show-notes"):this.Reveal.getRevealElement().classList.remove("show-notes")}hasNotes(){return this.Reveal.getSlidesElement().querySelectorAll("[data-notes], aside.notes").length>0}isSpeakerNotesWindow(){return!!window.location.search.match(/receiver/gi)}getSlideNotes(e=this.Reveal.getCurrentSlide()){if(e.hasAttribute("data-notes"))return e.getAttribute("data-notes");let t=e.querySelectorAll("aside.notes");return t?Array.from(t).map(i=>i.innerHTML).join(`
33
+ `):null}destroy(){this.element.remove()}},lr=class{constructor(e,t){this.diameter=100,this.diameter2=this.diameter/2,this.thickness=6,this.playing=!1,this.progress=0,this.progressOffset=1,this.container=e,this.progressCheck=t,this.canvas=document.createElement("canvas"),this.canvas.className="playback",this.canvas.width=this.diameter,this.canvas.height=this.diameter,this.canvas.style.width=this.diameter2+"px",this.canvas.style.height=this.diameter2+"px",this.context=this.canvas.getContext("2d"),this.container.appendChild(this.canvas),this.render()}setPlaying(e){let t=this.playing;this.playing=e,!t&&this.playing?this.animate():this.render()}animate(){let e=this.progress;this.progress=this.progressCheck(),e>.8&&this.progress<.2&&(this.progressOffset=this.progress),this.render(),this.playing&&requestAnimationFrame(this.animate.bind(this))}render(){let e=this.playing?this.progress:0,t=this.diameter2-this.thickness,i=this.diameter2,s=this.diameter2;this.progressOffset+=(1-this.progressOffset)*.1;let n=-Math.PI/2+e*(Math.PI*2),r=-Math.PI/2+this.progressOffset*(Math.PI*2);this.context.save(),this.context.clearRect(0,0,this.diameter,this.diameter),this.context.beginPath(),this.context.arc(i,s,t+4,0,Math.PI*2,!1),this.context.fillStyle="rgba( 0, 0, 0, 0.4 )",this.context.fill(),this.context.beginPath(),this.context.arc(i,s,t,0,Math.PI*2,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="rgba( 255, 255, 255, 0.2 )",this.context.stroke(),this.playing&&(this.context.beginPath(),this.context.arc(i,s,t,r,n,!1),this.context.lineWidth=this.thickness,this.context.strokeStyle="#fff",this.context.stroke()),this.context.translate(i-28/2,s-28/2),this.playing?(this.context.fillStyle="#fff",this.context.fillRect(0,0,28/2-4,28),this.context.fillRect(18,0,28/2-4,28)):(this.context.beginPath(),this.context.translate(4,0),this.context.moveTo(0,0),this.context.lineTo(24,28/2),this.context.lineTo(0,28),this.context.fillStyle="#fff",this.context.fill()),this.context.restore()}on(e,t){this.canvas.addEventListener(e,t,!1)}off(e,t){this.canvas.removeEventListener(e,t,!1)}destroy(){this.playing=!1,this.canvas.parentNode&&this.container.removeChild(this.canvas)}},or={width:960,height:700,margin:.04,minScale:.2,maxScale:2,controls:!0,controlsTutorial:!0,controlsLayout:"bottom-right",controlsBackArrows:"faded",progress:!0,slideNumber:!1,showSlideNumber:"all",hashOneBasedIndex:!1,hash:!1,respondToHashChanges:!0,jumpToSlide:!0,history:!1,keyboard:!0,keyboardCondition:null,disableLayout:!1,overview:!0,center:!0,touch:!0,loop:!1,rtl:!1,navigationMode:"default",shuffle:!1,fragments:!0,fragmentInURL:!0,embedded:!1,help:!0,pause:!0,showNotes:!1,showHiddenSlides:!1,autoPlayMedia:null,preloadIframes:null,mouseWheel:!1,previewLinks:!1,viewDistance:3,mobileViewDistance:2,display:"block",hideInactiveCursor:!0,hideCursorTime:5e3,sortFragmentsOnSync:!0,autoAnimate:!0,autoAnimateMatcher:null,autoAnimateEasing:"ease",autoAnimateDuration:1,autoAnimateUnmatched:!0,autoAnimateStyles:["opacity","color","background-color","padding","font-size","line-height","letter-spacing","border-width","border-color","border-radius","outline","outline-offset"],autoSlide:0,autoSlideStoppable:!0,autoSlideMethod:null,defaultTiming:null,postMessage:!0,postMessageEvents:!1,focusBodyOnPageVisibilityChange:!0,transition:"slide",transitionSpeed:"default",backgroundTransition:"fade",parallaxBackgroundImage:"",parallaxBackgroundSize:"",parallaxBackgroundRepeat:"",parallaxBackgroundPosition:"",parallaxBackgroundHorizontal:null,parallaxBackgroundVertical:null,view:null,scrollLayout:"full",scrollSnap:"mandatory",scrollProgress:"auto",scrollActivationWidth:435,pdfMaxPagesPerSlide:1/0,pdfSeparateFragments:!0,pdfPageHeightOffset:-1,dependencies:[],plugins:[]},Vi="6.0.0";function Ui(e,t){arguments.length<2&&(t=arguments[0],e=document.querySelector(".reveal"));let i={},s={},n=!1,r=!1,l,a,c,o,u={hasNavigatedHorizontally:!1,hasNavigatedVertically:!1},h=[],g=1,p={layout:"",overview:""},d={},b="idle",y=0,z,D=0,L=-1,A=!1,S=new Nn(i),P=new Hn(i),$=new _n(i),_=new On(i),O=new jn(i),M=new Kn(i),Y=new Zn(i),B=new Qn(i),v=new Xn(i),R=new Jn(i),N=new Yn(i),W=new Gn(i),te=new er(i),se=new tr(i),K=new ir(i),Z=new sr(i),pe=new rr(i),De=new nr(i),le=new ar(i);function di(m){if(!e)throw'Unable to find presentation root (<div class="reveal">).';if(n)throw"Reveal.js has already been initialized.";if(n=!0,d.wrapper=e,d.slides=e.querySelector(".slides"),!d.slides)throw'Unable to find slides container (<div class="slides">).';return s=ye(ye(ye(ye(ye({},or),s),t),m),Di()),/print-pdf/gi.test(window.location.search)&&(s.view="print"),it(),window.addEventListener("load",Ue,!1),K.load(s.plugins,s.dependencies).then(ui),new Promise(f=>i.on("ready",f))}function it(){s.embedded===!0?d.viewport=ee(e,".reveal-viewport")||e:(d.viewport=document.body,document.documentElement.classList.add("reveal-full-page")),d.viewport.classList.add("reveal-viewport")}function ui(){n!==!1&&(r=!0,Oe(),St(),ie(),H(),Q(),yl(),Ve(),O.update(!0),hi(),N.readURL(),setTimeout(()=>{d.slides.classList.remove("no-transition"),d.wrapper.classList.add("ready"),oe({type:"ready",data:{indexh:l,indexv:a,currentSlide:o}})},1))}function hi(){let m=s.view==="print",f=s.view==="scroll"||s.view==="reader";(m||f)&&(m?Et():De.unbind(),d.viewport.classList.add("loading-scroll-mode"),m?document.readyState==="complete"?Y.activate():window.addEventListener("load",()=>Y.activate()):M.activate())}function Oe(){s.showHiddenSlides||C(d.wrapper,'section[data-visibility="hidden"]').forEach(m=>{let f=m.parentNode;f.childElementCount===1&&/section/i.test(f.nodeName)?f.remove():m.remove()})}function St(){d.slides.classList.add("no-transition"),Le?d.wrapper.classList.add("no-hover"):d.wrapper.classList.remove("no-hover"),O.render(),P.render(),$.render(),W.render(),te.render(),le.render(),d.pauseOverlay=Tn(d.wrapper,"div","pause-overlay",s.controls?'<button class="resume-button">Resume presentation</button>':null),d.statusElement=pi(),d.wrapper.setAttribute("role","application")}function pi(){let m=d.wrapper.querySelector(".aria-status");return m||(m=document.createElement("div"),m.style.position="absolute",m.style.height="1px",m.style.width="1px",m.style.overflow="hidden",m.style.clip="rect( 1px, 1px, 1px, 1px )",m.classList.add("aria-status"),m.setAttribute("aria-live","polite"),m.setAttribute("aria-atomic","true"),d.wrapper.appendChild(m)),m}function Fe(m){d.statusElement.textContent=m}function He(m){let f="";if(m.nodeType===3)f+=m.textContent.trim();else if(m.nodeType===1){let k=m.getAttribute("aria-hidden"),w=window.getComputedStyle(m).display==="none";if(k!=="true"&&!w){if(m.tagName==="IMG"||m.tagName==="VIDEO"){let E=m.getAttribute("alt");E&&(f+=st(E))}Array.from(m.childNodes).forEach(E=>{f+=He(E)}),["P","DIV","UL","OL","LI","H1","H2","H3","H4","H5","H6","BLOCKQUOTE"].includes(m.tagName)&&f.trim()!==""&&(f=st(f))}}return f=f.trim(),f===""?"":f+" "}function st(m){let f=m.trim();return f===""?m:/[.!?]$/.test(f)?f:f+"."}function H(){setInterval(()=>{(!M.isActive()&&d.wrapper.scrollTop!==0||d.wrapper.scrollLeft!==0)&&(d.wrapper.scrollTop=0,d.wrapper.scrollLeft=0)},1e3)}function Q(){document.addEventListener("fullscreenchange",Mt),document.addEventListener("webkitfullscreenchange",Mt)}function ie(){s.postMessage&&window.addEventListener("message",cn,!1)}function Ve(m){let f=ye({},s);if(typeof m=="object"&&_e(s,m),i.isReady()===!1)return;let k=d.wrapper.querySelectorAll(Pe).length;d.wrapper.classList.remove(f.transition),d.wrapper.classList.add(s.transition),d.wrapper.setAttribute("data-transition-speed",s.transitionSpeed),d.wrapper.setAttribute("data-background-transition",s.backgroundTransition),d.viewport.style.setProperty("--slide-width",typeof s.width=="string"?s.width:s.width+"px"),d.viewport.style.setProperty("--slide-height",typeof s.height=="string"?s.height:s.height+"px"),s.shuffle&&vi(),Ht(d.wrapper,"embedded",s.embedded),Ht(d.wrapper,"rtl",s.rtl),Ht(d.wrapper,"center",s.center),s.pause===!1&&rt(),_.reset(),z&&(z=(z.destroy(),null)),k>1&&s.autoSlide&&s.autoSlideStoppable&&(z=new lr(d.wrapper,()=>Math.min(Math.max((Date.now()-L)/y,0),1)),z.on("click",Tl),A=!1),s.navigationMode==="default"?d.wrapper.removeAttribute("data-navigation-mode"):d.wrapper.setAttribute("data-navigation-mode",s.navigationMode),le.configure(s,f),pe.configure(s,f),se.configure(s,f),W.configure(s,f),te.configure(s,f),R.configure(s,f),B.configure(s,f),P.configure(s,f),Xs()}function Hs(){window.addEventListener("resize",hn,!1),s.touch&&De.bind(),s.keyboard&&R.bind(),s.progress&&te.bind(),s.respondToHashChanges&&N.bind(),W.bind(),pe.bind(),d.slides.addEventListener("click",un,!1),d.slides.addEventListener("transitionend",dn,!1),d.pauseOverlay.addEventListener("click",rt,!1),s.focusBodyOnPageVisibilityChange&&document.addEventListener("visibilitychange",pn,!1)}function Et(){De.unbind(),pe.unbind(),R.unbind(),W.unbind(),te.unbind(),N.unbind(),window.removeEventListener("resize",hn,!1),d.slides.removeEventListener("click",un,!1),d.slides.removeEventListener("transitionend",dn,!1),d.pauseOverlay.removeEventListener("click",rt,!1)}function hl(){n=!1,r!==!1&&(Et(),Tt(),le.destroy(),pe.destroy(),Z.destroy(),K.destroy(),se.destroy(),W.destroy(),te.destroy(),O.destroy(),P.destroy(),$.destroy(),document.removeEventListener("fullscreenchange",Mt),document.removeEventListener("webkitfullscreenchange",Mt),document.removeEventListener("visibilitychange",pn,!1),window.removeEventListener("message",cn,!1),window.removeEventListener("load",Ue,!1),d.pauseOverlay&&d.pauseOverlay.remove(),d.statusElement&&d.statusElement.remove(),document.documentElement.classList.remove("reveal-full-page"),d.wrapper.classList.remove("ready","center","has-horizontal-slides","has-vertical-slides"),d.wrapper.removeAttribute("data-transition-speed"),d.wrapper.removeAttribute("data-background-transition"),d.viewport.classList.remove("reveal-viewport"),d.viewport.style.removeProperty("--slide-width"),d.viewport.style.removeProperty("--slide-height"),d.slides.style.removeProperty("width"),d.slides.style.removeProperty("height"),d.slides.style.removeProperty("zoom"),d.slides.style.removeProperty("left"),d.slides.style.removeProperty("top"),d.slides.style.removeProperty("bottom"),d.slides.style.removeProperty("right"),d.slides.style.removeProperty("transform"),Array.from(d.wrapper.querySelectorAll(Pe)).forEach(m=>{m.style.removeProperty("display"),m.style.removeProperty("top"),m.removeAttribute("hidden"),m.removeAttribute("aria-hidden")}))}function _s(m,f,k){e.addEventListener(m,f,k)}function qs(m,f,k){e.removeEventListener(m,f,k)}function gi(m){typeof m.layout=="string"&&(p.layout=m.layout),typeof m.overview=="string"&&(p.overview=m.overview),p.layout?Ee(d.slides,p.layout+" "+p.overview):Ee(d.slides,p.overview)}function oe({target:m=d.wrapper,type:f,data:k,bubbles:w=!0}){let E=document.createEvent("HTMLEvents",1,2);return E.initEvent(f,w,!0),_e(E,k),m.dispatchEvent(E),m===d.wrapper&&Os(f),E}function js(m){oe({type:"slidechanged",data:{indexh:l,indexv:a,previousSlide:c,currentSlide:o,origin:m}})}function Os(m,f){if(s.postMessageEvents&&window.parent!==window.self){let k={namespace:"reveal",eventName:m,state:ln()};_e(k,f),window.parent.postMessage(JSON.stringify(k),"*")}}function Ue(){if(d.wrapper&&!Y.isActive()){let m=d.viewport.offsetWidth,f=d.viewport.offsetHeight;if(!s.disableLayout){Le&&!s.embedded&&document.documentElement.style.setProperty("--vh",window.innerHeight*.01+"px");let k=M.isActive()?Rt(m,f):Rt(),w=g;Fs(s.width,s.height),d.slides.style.width=k.width+"px",d.slides.style.height=k.height+"px",g=Math.min(k.presentationWidth/k.width,k.presentationHeight/k.height),g=Math.max(g,s.minScale),g=Math.min(g,s.maxScale),g===1||M.isActive()?(d.slides.style.zoom="",d.slides.style.left="",d.slides.style.top="",d.slides.style.bottom="",d.slides.style.right="",gi({layout:""})):(d.slides.style.zoom="",d.slides.style.left="50%",d.slides.style.top="50%",d.slides.style.bottom="auto",d.slides.style.right="auto",gi({layout:"translate(-50%, -50%) scale("+g+")"}));let E=Array.from(d.wrapper.querySelectorAll(Pe));for(let U=0,J=E.length;U<J;U++){let G=E[U];G.style.display!=="none"&&(s.center||G.classList.contains("center")?G.classList.contains("stack")?G.style.top=0:G.style.top=Math.max((k.height-G.scrollHeight)/2,0)+"px":G.style.top="")}w!==g&&oe({type:"resize",data:{oldScale:w,scale:g,size:k}})}pl(),d.viewport.style.setProperty("--slide-scale",g),d.viewport.style.setProperty("--viewport-width",m+"px"),d.viewport.style.setProperty("--viewport-height",f+"px"),M.layout(),te.update(),O.updateParallax(),v.isActive()&&v.update()}}function Fs(m,f){C(d.slides,"section > .stretch, section > .r-stretch").forEach(k=>{let w=Cn(k,f);if(/(img|video)/gi.test(k.nodeName)){let E=k.naturalWidth||k.videoWidth,U=k.naturalHeight||k.videoHeight,J=Math.min(m/E,w/U);k.style.width=E*J+"px",k.style.height=U*J+"px"}else k.style.width=m+"px",k.style.height=w+"px"})}function pl(){if(d.wrapper&&!s.disableLayout&&!Y.isActive()&&typeof s.scrollActivationWidth=="number"&&s.view!=="scroll"){let m=Rt();m.presentationWidth>0&&m.presentationWidth<=s.scrollActivationWidth?M.isActive()||(O.create(),M.activate()):M.isActive()&&M.deactivate()}}function Rt(m,f){let k=s.width,w=s.height;s.disableLayout&&(k=d.slides.offsetWidth,w=d.slides.offsetHeight);let E={width:k,height:w,presentationWidth:m||d.wrapper.offsetWidth,presentationHeight:f||d.wrapper.offsetHeight};return E.presentationWidth-=E.presentationWidth*s.margin,E.presentationHeight-=E.presentationHeight*s.margin,typeof E.width=="string"&&/%$/.test(E.width)&&(E.width=parseInt(E.width,10)/100*E.presentationWidth),typeof E.height=="string"&&/%$/.test(E.height)&&(E.height=parseInt(E.height,10)/100*E.presentationHeight),E}function Vs(m,f){typeof m=="object"&&typeof m.setAttribute=="function"&&m.setAttribute("data-previous-indexv",f||0)}function Us(m){if(typeof m=="object"&&typeof m.setAttribute=="function"&&m.classList.contains("stack")){let f=m.hasAttribute("data-start-indexv")?"data-start-indexv":"data-previous-indexv";return parseInt(m.getAttribute(f)||0,10)}return 0}function nt(m=o){return m&&m.parentNode&&!!m.parentNode.nodeName.match(/section/i)}function gl(m=o){return m.classList.contains(".stack")||m.querySelector("section")!==null}function Ws(){return o&&nt(o)?!o.nextElementSibling:!1}function Ks(){return l===0&&a===0}function mi(){return o?!(o.nextElementSibling||nt(o)&&o.parentNode.nextElementSibling):!1}function Zs(){if(s.pause){let m=d.wrapper.classList.contains("paused");Tt(),d.wrapper.classList.add("paused"),m===!1&&oe({type:"paused"})}}function rt(){let m=d.wrapper.classList.contains("paused");d.wrapper.classList.remove("paused"),We(),m&&oe({type:"resumed"})}function Qs(m){typeof m=="boolean"?m?Zs():rt():at()?rt():Zs()}function at(){return d.wrapper.classList.contains("paused")}function ml(m){typeof m=="boolean"?m?$.show():$.hide():$.isVisible()?$.hide():$.show()}function fl(m){typeof m=="boolean"?m?Lt():Ct():A?Lt():Ct()}function vl(){return!!(y&&!A)}function ve(m,f,k,w){if(oe({type:"beforeslidechange",data:{indexh:m===void 0?l:m,indexv:f===void 0?a:f,origin:w}}).defaultPrevented)return;c=o;let E=d.wrapper.querySelectorAll(we);if(M.isActive()){let ne=M.getSlideByIndices(m,f);ne&&M.scrollToSlide(ne);return}if(E.length===0)return;f===void 0&&!v.isActive()&&(f=Us(E[m])),c&&c.parentNode&&c.parentNode.classList.contains("stack")&&Vs(c.parentNode,a);let U=h.concat();h.length=0;let J=l||0,G=a||0;l=At(we,m===void 0?l:m),a=At(qt,f===void 0?a:f);let Se=l!==J||a!==G;Se||(c=null);let Te=E[l],ge=Te.querySelectorAll("section");e.classList.toggle("is-vertical-slide",ge.length>1),o=ge[a]||Te;let X=!1;Se&&c&&o&&!v.isActive()&&(b="running",X=fi(c,o,J,G),X&&d.slides.classList.add("disable-slide-transitions")),bi(),Ue(),v.isActive()&&v.update(),k!==void 0&&B.goto(k),c&&c!==o&&(c.classList.remove("present"),c.setAttribute("aria-hidden","true"),Ks()&&setTimeout(()=>{xl().forEach(ne=>{Vs(ne,0)})},0));e:for(let ne=0,Cl=h.length;ne<Cl;ne++){for(let Nt=0;Nt<U.length;Nt++)if(U[Nt]===h[ne]){U.splice(Nt,1);continue e}d.viewport.classList.add(h[ne]),oe({type:h[ne]})}for(;U.length;)d.viewport.classList.remove(U.pop());Se&&(S.afterSlideChanged(),js(w)),(Se||!c)&&(S.stopEmbeddedContent(c),S.startEmbeddedContent(o)),requestAnimationFrame(()=>{Fe(He(o))}),te.update(),W.update(),le.update(),O.update(),O.updateParallax(),P.update(),B.update(),N.writeURL(),We(),X&&(setTimeout(()=>{d.slides.classList.remove("disable-slide-transitions")},0),s.autoAnimate&&_.run(c,o))}function fi(m,f,k,w){return m.hasAttribute("data-auto-animate")&&f.hasAttribute("data-auto-animate")&&m.getAttribute("data-auto-animate-id")===f.getAttribute("data-auto-animate-id")&&!(l>k||a>w?f:m).hasAttribute("data-auto-animate-restart")}function bl(m,f,k){let w=l||0;l=f,a=k;let E=o!==m;c=o,o=m,o&&c&&s.autoAnimate&&fi(c,o,w,a)&&_.run(c,o),E&&(S.afterSlideChanged(),c&&(S.stopEmbeddedContent(c),S.stopEmbeddedContent(c.slideBackgroundElement)),S.startEmbeddedContent(o),S.startEmbeddedContent(o.slideBackgroundElement)),requestAnimationFrame(()=>{Fe(He(o))}),js()}function Xs(){Et(),Hs(),Ue(),y=s.autoSlide,We(),O.create(),N.writeURL(),s.sortFragmentsOnSync===!0&&B.sortAll(),l!==void 0&&(l=At(we,l),a=At(qt,a)),W.update(),te.update(),bi(),le.update(),le.updateVisibility(),Z.update(),O.update(!0),P.update(),S.formatEmbeddedContent(),s.autoPlayMedia===!1?S.stopEmbeddedContent(o,{unloadIframes:!1}):S.startEmbeddedContent(o),v.isActive()&&v.layout(),oe({type:"sync"})}function kl(m=o){O.sync(m),B.sync(m),S.load(m),O.update(),le.update(),oe({type:"slidesync",data:{slide:m}})}function yl(){Ae().forEach(m=>{C(m,"section").forEach((f,k)=>{k>0&&(f.classList.remove("present"),f.classList.remove("past"),f.classList.add("future"),f.setAttribute("aria-hidden","true"))})})}function vi(m=Ae()){m.forEach((f,k)=>{let w=m[Math.floor(Math.random()*m.length)];w.parentNode===f.parentNode&&f.parentNode.insertBefore(f,w);let E=f.querySelectorAll("section");E.length&&vi(E)})}function At(m,f){let k=C(d.wrapper,m),w=k.length,E=M.isActive()||Y.isActive(),U=!1,J=!1;if(w){s.loop&&(f>=w&&(U=!0),f%=w,f<0&&(f=w+f,J=!0)),f=Math.max(Math.min(f,w-1),0);for(let ge=0;ge<w;ge++){let X=k[ge],ne=s.rtl&&!nt(X);if(X.classList.remove("past"),X.classList.remove("present"),X.classList.remove("future"),X.setAttribute("hidden",""),X.setAttribute("aria-hidden","true"),X.querySelector("section")&&X.classList.add("stack"),E){X.classList.add("present");continue}ge<f?(X.classList.add(ne?"future":"past"),s.fragments&&Js(X)):ge>f?(X.classList.add(ne?"past":"future"),s.fragments&&Ys(X)):ge===f&&s.fragments&&(U?Ys(X):J&&Js(X))}let G=k[f],Se=G.classList.contains("present");G.classList.add("present"),G.removeAttribute("hidden"),G.removeAttribute("aria-hidden"),Se||oe({target:G,type:"visible",bubbles:!1});let Te=G.getAttribute("data-state");Te&&(h=h.concat(Te.split(" ")))}else f=0;return f}function Js(m){C(m,".fragment").forEach(f=>{f.classList.add("visible"),f.classList.remove("current-fragment")})}function Ys(m){C(m,".fragment.visible").forEach(f=>{f.classList.remove("visible","current-fragment")})}function bi(){let m=Ae(),f=m.length,k,w;if(f&&l!==void 0){let E=v.isActive(),U=E?10:s.viewDistance;Le&&(U=E?6:s.mobileViewDistance),Y.isActive()&&(U=Number.MAX_VALUE);for(let J=0;J<f;J++){let G=m[J],Se=C(G,"section"),Te=Se.length;if(k=Math.abs((l||0)-J)||0,s.loop&&(k=Math.abs(((l||0)-J)%(f-U))||0),k<U?S.load(G):S.unload(G),Te){let ge=E?0:Us(G);for(let X=0;X<Te;X++){let ne=Se[X];w=Math.abs(J===(l||0)?(a||0)-X:X-ge),k+w<U?S.load(ne):S.unload(ne)}}}nn()?d.wrapper.classList.add("has-vertical-slides"):d.wrapper.classList.remove("has-vertical-slides"),sn()?d.wrapper.classList.add("has-horizontal-slides"):d.wrapper.classList.remove("has-horizontal-slides")}}function xe({includeFragments:m=!1}={}){let f=d.wrapper.querySelectorAll(we),k=d.wrapper.querySelectorAll(qt),w={left:l>0,right:l<f.length-1,up:a>0,down:a<k.length-1};if(s.loop&&(f.length>1&&(w.left=!0,w.right=!0),k.length>1&&(w.up=!0,w.down=!0)),f.length>1&&s.navigationMode==="linear"&&(w.right=w.right||w.down,w.left=w.left||w.up),m===!0){let E=B.availableRoutes();w.left=w.left||E.prev,w.up=w.up||E.prev,w.down=w.down||E.next,w.right=w.right||E.next}if(s.rtl){let E=w.left;w.left=w.right,w.right=E}return w}function Gs(m=o){let f=Ae(),k=0;e:for(let w=0;w<f.length;w++){let E=f[w],U=E.querySelectorAll("section");for(let J=0;J<U.length;J++){if(U[J]===m)break e;U[J].dataset.visibility!=="uncounted"&&k++}if(E===m)break;E.classList.contains("stack")===!1&&E.dataset.visibility!=="uncounted"&&k++}return k}function wl(){let m=rn(),f=Gs();if(o){let k=o.querySelectorAll(".fragment");if(k.length>0){let w=o.querySelectorAll(".fragment.visible");f+=w.length/k.length*.9}}return Math.min(f/(m-1),1)}function en(m){let f=l,k=a,w;if(m)if(M.isActive())f=parseInt(m.getAttribute("data-index-h"),10),m.getAttribute("data-index-v")&&(k=parseInt(m.getAttribute("data-index-v"),10));else{let E=nt(m),U=E?m.parentNode:m,J=Ae();f=Math.max(J.indexOf(U),0),k=void 0,E&&(k=Math.max(C(m.parentNode,"section").indexOf(m),0))}if(!m&&o&&o.querySelectorAll(".fragment").length>0){let E=o.querySelector(".current-fragment");w=E&&E.hasAttribute("data-fragment-index")?parseInt(E.getAttribute("data-fragment-index"),10):o.querySelectorAll(".fragment.visible").length-1}return{h:f,v:k,f:w}}function ki(){return C(d.wrapper,Pe+':not(.stack):not([data-visibility="uncounted"])')}function Ae(){return C(d.wrapper,we)}function tn(){return C(d.wrapper,".slides>section>section")}function xl(){return C(d.wrapper,we+".stack")}function sn(){return Ae().length>1}function nn(){return tn().length>1}function Sl(){return ki().map(m=>{let f={};for(let k=0;k<m.attributes.length;k++){let w=m.attributes[k];f[w.name]=w.value}return f})}function rn(){return ki().length}function an(m,f){let k=Ae()[m],w=k&&k.querySelectorAll("section");return w&&w.length&&typeof f=="number"?w?w[f]:void 0:k}function El(m,f){let k=typeof m=="number"?an(m,f):m;if(k)return k.slideBackgroundElement}function ln(){let m=en();return ye({indexh:m.h,indexv:m.v,indexf:m.f,paused:at(),overview:v.isActive()},Z.getState())}function Rl(m){if(typeof m=="object"){ve(qe(m.indexh),qe(m.indexv),qe(m.indexf));let f=qe(m.paused),k=qe(m.overview);typeof f=="boolean"&&f!==at()&&Qs(f),typeof k=="boolean"&&k!==v.isActive()&&v.toggle(k),Z.setState(m)}}function We(){if(Tt(),o&&s.autoSlide!==!1){let m=o.querySelector(".current-fragment[data-autoslide]"),f=m?m.getAttribute("data-autoslide"):null,k=o.parentNode?o.parentNode.getAttribute("data-autoslide"):null,w=o.getAttribute("data-autoslide");f?y=parseInt(f,10):w?y=parseInt(w,10):k?y=parseInt(k,10):(y=s.autoSlide,o.querySelectorAll(".fragment").length===0&&C(o,"video, audio").forEach(E=>{E.hasAttribute("data-autoplay")&&y&&E.duration*1e3/E.playbackRate>y&&(y=E.duration*1e3/E.playbackRate+1e3)})),y&&!A&&!at()&&!v.isActive()&&(!mi()||B.availableRoutes().next||s.loop===!0)&&(D=setTimeout(()=>{typeof s.autoSlideMethod=="function"?s.autoSlideMethod():xi(),We()},y),L=Date.now()),z&&z.setPlaying(D!==-1)}}function Tt(){clearTimeout(D),D=-1}function Ct(){y&&!A&&(A=!0,oe({type:"autoslidepaused"}),clearTimeout(D),z&&z.setPlaying(!1))}function Lt(){y&&A&&(A=!1,oe({type:"autoslideresumed"}),We())}function Pt({skipFragments:m=!1}={}){if(u.hasNavigatedHorizontally=!0,M.isActive())return M.prev();s.rtl?(v.isActive()||m||B.next()===!1)&&xe().left&&ve(l+1,s.navigationMode==="grid"?a:void 0):(v.isActive()||m||B.prev()===!1)&&xe().left&&ve(l-1,s.navigationMode==="grid"?a:void 0)}function It({skipFragments:m=!1}={}){if(u.hasNavigatedHorizontally=!0,M.isActive())return M.next();s.rtl?(v.isActive()||m||B.prev()===!1)&&xe().right&&ve(l-1,s.navigationMode==="grid"?a:void 0):(v.isActive()||m||B.next()===!1)&&xe().right&&ve(l+1,s.navigationMode==="grid"?a:void 0)}function yi({skipFragments:m=!1}={}){if(M.isActive())return M.prev();(v.isActive()||m||B.prev()===!1)&&xe().up&&ve(l,a-1)}function wi({skipFragments:m=!1}={}){if(u.hasNavigatedVertically=!0,M.isActive())return M.next();(v.isActive()||m||B.next()===!1)&&xe().down&&ve(l,a+1)}function on({skipFragments:m=!1}={}){if(M.isActive())return M.prev();if(m||B.prev()===!1)if(xe().up)yi({skipFragments:m});else{let f;if(f=s.rtl?C(d.wrapper,we+".future").pop():C(d.wrapper,we+".past").pop(),f&&f.classList.contains("stack")){let k=f.querySelectorAll("section").length-1||void 0;ve(l-1,k)}else s.rtl?It({skipFragments:m}):Pt({skipFragments:m})}}function xi({skipFragments:m=!1}={}){if(u.hasNavigatedHorizontally=!0,u.hasNavigatedVertically=!0,M.isActive())return M.next();if(m||B.next()===!1){let f=xe();f.down&&f.right&&s.loop&&Ws()&&(f.down=!1),f.down?wi({skipFragments:m}):s.rtl?Pt({skipFragments:m}):It({skipFragments:m})}}function Al(m){s.autoSlideStoppable&&Ct()}function cn(m){let f=m.data;if(typeof f=="string"&&f.charAt(0)==="{"&&f.charAt(f.length-1)==="}"&&(f=JSON.parse(f),f.method&&typeof i[f.method]=="function"))if($n.test(f.method)===!1){let k=i[f.method].apply(i,f.args);Os("callback",{method:f.method,result:k})}else console.warn('reveal.js: "'+f.method+'" is is blacklisted from the postMessage API')}function dn(m){b==="running"&&/section/gi.test(m.target.nodeName)&&(b="idle",oe({type:"slidetransitionend",data:{indexh:l,indexv:a,previousSlide:c,currentSlide:o}}))}function un(m){let f=ee(m.target,'a[href^="#"]');if(f){let k=f.getAttribute("href"),w=N.getIndicesFromHash(k);w&&(i.slide(w.h,w.v,w.f),m.preventDefault())}}function hn(m){Ue()}function pn(m){document.hidden===!1&&document.activeElement!==document.body&&(typeof document.activeElement.blur=="function"&&document.activeElement.blur(),document.body.focus())}function Mt(m){(document.fullscreenElement||document.webkitFullscreenElement)===d.wrapper&&(m.stopImmediatePropagation(),setTimeout(()=>{i.layout(),i.focus.focus()},1))}function Tl(m){mi()&&s.loop===!1?(ve(0,0),Lt()):A?Lt():Ct()}let gn={VERSION:Vi,initialize:di,configure:Ve,destroy:hl,sync:Xs,syncSlide:kl,syncFragments:B.sync.bind(B),slide:ve,left:Pt,right:It,up:yi,down:wi,prev:on,next:xi,navigateLeft:Pt,navigateRight:It,navigateUp:yi,navigateDown:wi,navigatePrev:on,navigateNext:xi,navigateFragment:B.goto.bind(B),prevFragment:B.prev.bind(B),nextFragment:B.next.bind(B),on:_s,off:qs,addEventListener:_s,removeEventListener:qs,layout:Ue,shuffle:vi,availableRoutes:xe,availableFragments:B.availableRoutes.bind(B),toggleHelp:Z.toggleHelp.bind(Z),toggleOverview:v.toggle.bind(v),toggleScrollView:M.toggle.bind(M),togglePause:Qs,toggleAutoSlide:fl,toggleJumpToSlide:ml,isFirstSlide:Ks,isLastSlide:mi,isLastVerticalSlide:Ws,isVerticalSlide:nt,isVerticalStack:gl,isPaused:at,isAutoSliding:vl,isSpeakerNotes:le.isSpeakerNotesWindow.bind(le),isOverview:v.isActive.bind(v),isFocused:pe.isFocused.bind(pe),isOverlayOpen:Z.isOpen.bind(Z),isScrollView:M.isActive.bind(M),isPrintView:Y.isActive.bind(Y),isReady:()=>r,loadSlide:S.load.bind(S),unloadSlide:S.unload.bind(S),startEmbeddedContent:()=>S.startEmbeddedContent(o),stopEmbeddedContent:()=>S.stopEmbeddedContent(o,{unloadIframes:!1}),previewIframe:Z.previewIframe.bind(Z),previewImage:Z.previewImage.bind(Z),previewVideo:Z.previewVideo.bind(Z),showPreview:Z.previewIframe.bind(Z),hidePreview:Z.close.bind(Z),addEventListeners:Hs,removeEventListeners:Et,dispatchEvent:oe,getState:ln,setState:Rl,getProgress:wl,getIndices:en,getSlidesAttributes:Sl,getSlidePastCount:Gs,getTotalSlides:rn,getSlide:an,getPreviousSlide:()=>c,getCurrentSlide:()=>o,getSlideBackground:El,getSlideNotes:le.getSlideNotes.bind(le),getSlides:ki,getHorizontalSlides:Ae,getVerticalSlides:tn,hasHorizontalSlides:sn,hasVerticalSlides:nn,hasNavigatedHorizontally:()=>u.hasNavigatedHorizontally,hasNavigatedVertically:()=>u.hasNavigatedVertically,shouldAutoAnimateBetween:fi,addKeyBinding:R.addKeyBinding.bind(R),removeKeyBinding:R.removeKeyBinding.bind(R),triggerKey:R.triggerKey.bind(R),registerKeyboardShortcut:R.registerKeyboardShortcut.bind(R),getComputedSlideSize:Rt,setCurrentScrollPage:bl,removeHiddenSlides:Oe,getScale:()=>g,getConfig:()=>s,getQueryHash:Di,getSlidePath:N.getHash.bind(N),getRevealElement:()=>e,getSlidesElement:()=>d.slides,getViewportElement:()=>d.viewport,getBackgroundsElement:()=>O.element,registerPlugin:K.registerPlugin.bind(K),hasPlugin:K.hasPlugin.bind(K),getPlugin:K.getPlugin.bind(K),getPlugins:K.getRegisteredPlugins.bind(K)};return _e(i,zi(ye({},gn),{announceStatus:Fe,getStatusText:He,focus:pe,scroll:M,progress:te,controls:W,location:N,overview:v,keyboard:R,fragments:B,backgrounds:O,slideContent:S,slideNumber:P,onUserInput:Al,closeOverlay:Z.close.bind(Z),updateSlidesVisibility:bi,layoutSlideContents:Fs,transformSlides:gi,cueAutoSlide:We,cancelAutoSlide:Tt})),gn}var Re=Ui,Wi=[];Re.initialize=e=>{let t=document.querySelector(".reveal");if(!(t instanceof HTMLElement))throw Error('Unable to find presentation root (<div class="reveal">).');return Object.assign(Re,new Ui(t,e)),Wi.map(i=>i(Re)),Re.initialize()},["configure","on","off","addEventListener","removeEventListener","registerPlugin"].forEach(e=>{Re[e]=(...t)=>{Wi.push(i=>i[e].call(null,...t))}}),Re.isReady=()=>!1,Re.VERSION=Vi;var x=mn(Vl(),1),Ki=(0,T.createContext)(null),cr=[];function dr(e,t){if(e===t)return!1;if(!e||!t)return e!==t;let i=Object.keys(e),s=Object.keys(t);if(i.length!==s.length)return!0;for(let n of i)if(!(n in t)||e[n]!==t[n])return!0;return!1}function Zi(e,t){e&&(typeof e=="function"?e(t):e.current=t)}function ur(e){return e.tagName==="SECTION"}function Qi(e,t,i){return Array.from(e.children).filter(ur).map(s=>{let n=t.get(s);n===void 0&&(n=i.current++,t.set(s,n));let r=Qi(s,t,i);return r.length>0?[n,r]:n})}function hr(e,t,i){return e?JSON.stringify(Qi(e,t,i)):"[]"}function pr({config:e,plugins:t=cr,onReady:i,onSync:s,onSlideSync:n,onSlideChange:r,onSlideTransitionEnd:l,onFragmentShown:a,onFragmentHidden:c,onOverviewShown:o,onOverviewHidden:u,onPaused:h,onResumed:g,deckRef:p,className:d,style:b,children:y}){let z=(0,T.useRef)(null),D=(0,T.useRef)(null),L=(0,T.useRef)(null),[A,S]=(0,T.useState)(null),P=(0,T.useRef)(t),$=(0,T.useRef)(!1),_=(0,T.useRef)(e),O=(0,T.useRef)(null),M=(0,T.useRef)(new WeakMap),Y=(0,T.useRef)(1),B=(0,T.useRef)(!1),v=(0,T.useRef)(0);return(0,T.useEffect)(()=>{if(B.current=!0,v.current+=1,L.current)L.current.isReady()&&S(L.current);else{let R=new Re(z.current,{...e,plugins:P.current});_.current=e,L.current=R,R.initialize().then(()=>{!B.current||L.current!==R||(S(R),i==null||i(R))})}return()=>{B.current=!1;let R=L.current;if(!R)return;let N=++v.current;Promise.resolve().then(()=>{if(!(B.current||v.current!==N)&&L.current===R){try{R.destroy()}catch{}L.current===R&&(L.current=null)}})}},[]),(0,T.useEffect)(()=>(Zi(p,A),()=>Zi(p,null)),[p,A]),(0,T.useEffect)(()=>{if(!A)return;let R=[["sync",s],["slidesync",n],["slidechanged",r],["slidetransitionend",l],["fragmentshown",a],["fragmenthidden",c],["overviewshown",o],["overviewhidden",u],["paused",h],["resumed",g]].filter(N=>N[1]!=null);for(let[N,W]of R)A.on(N,W);return()=>{for(let[N,W]of R)A.off(N,W)}},[A,s,n,r,l,a,c,o,u,h,g]),(0,T.useLayoutEffect)(()=>{var R;!A||!((R=L.current)!=null&&R.isReady())||dr(_.current,e)&&($.current=!0,L.current.configure(e??{}),_.current=e)},[A,e]),(0,T.useLayoutEffect)(()=>{var W;let R=$.current;$.current=!1;let N=hr(D.current,M.current,Y);if(R){O.current=N;return}(W=L.current)!=null&&W.isReady()&&O.current!==N&&(L.current.sync(),O.current=N)}),(0,x.jsx)(Ki.Provider,{value:A,children:(0,x.jsx)("div",{className:d?`reveal ${d}`:"reveal",style:b,ref:z,children:(0,x.jsx)("div",{className:"slides",ref:D,children:y})})})}var gr={background:"data-background",backgroundImage:"data-background-image",backgroundVideo:"data-background-video",backgroundVideoLoop:"data-background-video-loop",backgroundVideoMuted:"data-background-video-muted",backgroundIframe:"data-background-iframe",backgroundColor:"data-background-color",backgroundGradient:"data-background-gradient",backgroundSize:"data-background-size",backgroundPosition:"data-background-position",backgroundRepeat:"data-background-repeat",backgroundOpacity:"data-background-opacity",backgroundTransition:"data-background-transition",visibility:"data-visibility",autoAnimate:"data-auto-animate",autoAnimateId:"data-auto-animate-id",autoAnimateRestart:"data-auto-animate-restart",autoAnimateUnmatched:"data-auto-animate-unmatched",autoAnimateEasing:"data-auto-animate-easing",autoAnimateDuration:"data-auto-animate-duration",autoAnimateDelay:"data-auto-animate-delay",transition:"data-transition",transitionSpeed:"data-transition-speed",autoSlide:"data-autoslide",notes:"data-notes",backgroundInteractive:"data-background-interactive",preload:"data-preload"};function mr(e){return JSON.stringify(Object.entries(e).filter(([t])=>t.startsWith("data-")).sort(([t],[i])=>t.localeCompare(i)))}function fr(e,t){let i={...e},s=i;for(let[n,r]of Object.entries(gr)){if(s[r]!==void 0)continue;let l=t[n];if(l!==void 0){if(l===!1){n==="autoAnimateUnmatched"&&(s[r]="false");continue}s[r]=typeof l=="boolean"?"":l}}return i}function vr({children:e,background:t,backgroundImage:i,backgroundVideo:s,backgroundVideoLoop:n,backgroundVideoMuted:r,backgroundIframe:l,backgroundColor:a,backgroundGradient:c,backgroundSize:o,backgroundPosition:u,backgroundRepeat:h,backgroundOpacity:g,backgroundTransition:p,visibility:d,autoAnimate:b,autoAnimateId:y,autoAnimateRestart:z,autoAnimateUnmatched:D,autoAnimateEasing:L,autoAnimateDuration:A,autoAnimateDelay:S,transition:P,transitionSpeed:$,autoSlide:_,notes:O,backgroundInteractive:M,preload:Y,...B}){let v=(0,T.useContext)(Ki),R=(0,T.useRef)(null),N=(0,T.useRef)(null),W=(0,T.useRef)(null),te=fr(B,{background:t,backgroundImage:i,backgroundVideo:s,backgroundVideoLoop:n,backgroundVideoMuted:r,backgroundIframe:l,backgroundColor:a,backgroundGradient:c,backgroundSize:o,backgroundPosition:u,backgroundRepeat:h,backgroundOpacity:g,backgroundTransition:p,visibility:d,autoAnimate:b,autoAnimateId:y,autoAnimateRestart:z,autoAnimateUnmatched:D,autoAnimateEasing:L,autoAnimateDuration:A,autoAnimateDelay:S,transition:P,transitionSpeed:$,autoSlide:_,notes:O,backgroundInteractive:M,preload:Y}),se=mr(te);return(0,T.useLayoutEffect)(()=>{let K=R.current;if(!v||!K||typeof v.syncSlide!="function")return;if(N.current!==v){N.current=v,W.current=se;return}if(se==="[]")return;let Z=N.current===v,pe=W.current===se;Z&&pe||(v.syncSlide(K),N.current=v,W.current=se)},[v,se]),(0,x.jsx)("section",{ref:R,...te,children:e})}function br({className:e,style:t,children:i}){return(0,x.jsx)("section",{className:e,style:t,children:i})}function Vt(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Ie=Vt();function Xi(e){Ie=e}var Me={exec:()=>null};function q(e,t=""){let i=typeof e=="string"?e:e.source,s={replace:(n,r)=>{let l=typeof r=="string"?r:r.source;return l=l.replace(re.caret,"$1"),i=i.replace(n,l),s},getRegex:()=>new RegExp(i,t)};return s}var kr=(()=>{try{return!0}catch{return!1}})(),re={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}>`)},yr=/^(?:[ \t]*(?:\n|$))+/,wr=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,xr=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Ke=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Sr=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Ut=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Ji=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Yi=q(Ji).replace(/bull/g,Ut).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Er=q(Ji).replace(/bull/g,Ut).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),Wt=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Rr=/^[^\n]+/,Kt=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Ar=q(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Kt).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Tr=q(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Ut).getRegex(),ct="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Zt=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Cr=q("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",Zt).replace("tag",ct).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Gi=q(Wt).replace("hr",Ke).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",ct).getRegex(),Qt={blockquote:q(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Gi).getRegex(),code:wr,def:Ar,fences:xr,heading:Sr,hr:Ke,html:Cr,lheading:Yi,list:Tr,newline:yr,paragraph:Gi,table:Me,text:Rr},es=q("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Ke).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",ct).getRegex(),Lr={...Qt,lheading:Er,table:es,paragraph:q(Wt).replace("hr",Ke).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",es).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",ct).getRegex()},Pr={...Qt,html:q(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",Zt).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Me,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:q(Wt).replace("hr",Ke).replace("heading",` *#{1,6} *[^
34
+ ]`).replace("lheading",Yi).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Ir=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Mr=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,ts=/^( {2,}|\\)\n(?!\s*$)/,Nr=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,je=/[\p{P}\p{S}]/u,dt=/[\s\p{P}\p{S}]/u,Xt=/[^\s\p{P}\p{S}]/u,zr=q(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,dt).getRegex(),is=/(?!~)[\p{P}\p{S}]/u,$r=/(?!~)[\s\p{P}\p{S}]/u,Br=/(?:[^\s\p{P}\p{S}]|~)/u,Dr=q(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",kr?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),ss=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,Hr=q(ss,"u").replace(/punct/g,je).getRegex(),_r=q(ss,"u").replace(/punct/g,is).getRegex(),ns="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",qr=q(ns,"gu").replace(/notPunctSpace/g,Xt).replace(/punctSpace/g,dt).replace(/punct/g,je).getRegex(),jr=q(ns,"gu").replace(/notPunctSpace/g,Br).replace(/punctSpace/g,$r).replace(/punct/g,is).getRegex(),Or=q("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Xt).replace(/punctSpace/g,dt).replace(/punct/g,je).getRegex(),Fr=q(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,je).getRegex(),Vr=q("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)","gu").replace(/notPunctSpace/g,Xt).replace(/punctSpace/g,dt).replace(/punct/g,je).getRegex(),Ur=q(/\\(punct)/,"gu").replace(/punct/g,je).getRegex(),Wr=q(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Kr=q(Zt).replace("(?:-->|$)","-->").getRegex(),Zr=q("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",Kr).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),ut=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,Qr=q(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",ut).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),rs=q(/^!?\[(label)\]\[(ref)\]/).replace("label",ut).replace("ref",Kt).getRegex(),as=q(/^!?\[(ref)\](?:\[\])?/).replace("ref",Kt).getRegex(),Xr=q("reflink|nolink(?!\\()","g").replace("reflink",rs).replace("nolink",as).getRegex(),ls=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,Jt={_backpedal:Me,anyPunctuation:Ur,autolink:Wr,blockSkip:Dr,br:ts,code:Mr,del:Me,delLDelim:Me,delRDelim:Me,emStrongLDelim:Hr,emStrongRDelimAst:qr,emStrongRDelimUnd:Or,escape:Ir,link:Qr,nolink:as,punctuation:zr,reflink:rs,reflinkSearch:Xr,tag:Zr,text:Nr,url:Me},Jr={...Jt,link:q(/^!?\[(label)\]\((.*?)\)/).replace("label",ut).getRegex(),reflink:q(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",ut).getRegex()},Yt={...Jt,emStrongRDelimAst:jr,emStrongLDelim:_r,delLDelim:Fr,delRDelim:Vr,url:q(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",ls).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:q(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",ls).getRegex()},Yr={...Yt,br:q(ts).replace("{2,}","*").getRegex(),text:q(Yt.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},ht={normal:Qt,gfm:Lr,pedantic:Pr},Ze={normal:Jt,gfm:Yt,breaks:Yr,pedantic:Jr},Gr={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},os=e=>Gr[e];function me(e,t){if(t){if(re.escapeTest.test(e))return e.replace(re.escapeReplace,os)}else if(re.escapeTestNoEncode.test(e))return e.replace(re.escapeReplaceNoEncode,os);return e}function cs(e){try{e=encodeURI(e).replace(re.percentDecode,"%")}catch{return null}return e}function ds(e,t){var n;let i=e.replace(re.findPipe,(r,l,a)=>{let c=!1,o=l;for(;--o>=0&&a[o]==="\\";)c=!c;return c?"|":" |"}).split(re.splitPipe),s=0;if(i[0].trim()||i.shift(),i.length>0&&!((n=i.at(-1))!=null&&n.trim())&&i.pop(),t)if(i.length>t)i.splice(t);else for(;i.length<t;)i.push("");for(;s<i.length;s++)i[s]=i[s].trim().replace(re.slashPipe,"|");return i}function Qe(e,t,i){let s=e.length;if(s===0)return"";let n=0;for(;n<s;){let r=e.charAt(s-n-1);if(r===t&&!i)n++;else if(r!==t&&i)n++;else break}return e.slice(0,s-n)}function ea(e,t){if(e.indexOf(t[1])===-1)return-1;let i=0;for(let s=0;s<e.length;s++)if(e[s]==="\\")s++;else if(e[s]===t[0])i++;else if(e[s]===t[1]&&(i--,i<0))return s;return i>0?-2:-1}function ta(e,t=0){let i=t,s="";for(let n of e)if(n===" "){let r=4-i%4;s+=" ".repeat(r),i+=r}else s+=n,i++;return s}function us(e,t,i,s,n){let r=t.href,l=t.title||null,a=e[1].replace(n.other.outputLinkReplace,"$1");s.state.inLink=!0;let c={type:e[0].charAt(0)==="!"?"image":"link",raw:i,href:r,title:l,text:a,tokens:s.inlineTokens(a)};return s.state.inLink=!1,c}function ia(e,t,i){let s=e.match(i.other.indentCodeCompensation);if(s===null)return t;let n=s[1];return t.split(`
35
+ `).map(r=>{let l=r.match(i.other.beginningSpace);if(l===null)return r;let[a]=l;return a.length>=n.length?r.slice(n.length):r}).join(`
36
+ `)}var pt=class{constructor(e){I(this,"options");I(this,"rules");I(this,"lexer");this.options=e||Ie}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let i=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?i:Qe(i,`
37
+ `)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let i=t[0],s=ia(i,t[3]||"",this.rules);return{type:"code",raw:i,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:s}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let i=t[2].trim();if(this.rules.other.endingHash.test(i)){let s=Qe(i,"#");(this.options.pedantic||!s||this.rules.other.endingSpaceChar.test(s))&&(i=s.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:i,tokens:this.lexer.inline(i)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:Qe(t[0],`
38
+ `)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let i=Qe(t[0],`
39
+ `).split(`
40
+ `),s="",n="",r=[];for(;i.length>0;){let l=!1,a=[],c;for(c=0;c<i.length;c++)if(this.rules.other.blockquoteStart.test(i[c]))a.push(i[c]),l=!0;else if(!l)a.push(i[c]);else break;i=i.slice(c);let o=a.join(`
41
+ `),u=o.replace(this.rules.other.blockquoteSetextReplace,`
42
+ $1`).replace(this.rules.other.blockquoteSetextReplace2,"");s=s?`${s}
43
+ ${o}`:o,n=n?`${n}
44
+ ${u}`:u;let h=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(u,r,!0),this.lexer.state.top=h,i.length===0)break;let g=r.at(-1);if((g==null?void 0:g.type)==="code")break;if((g==null?void 0:g.type)==="blockquote"){let p=g,d=p.raw+`
45
+ `+i.join(`
46
+ `),b=this.blockquote(d);r[r.length-1]=b,s=s.substring(0,s.length-p.raw.length)+b.raw,n=n.substring(0,n.length-p.text.length)+b.text;break}else if((g==null?void 0:g.type)==="list"){let p=g,d=p.raw+`
47
+ `+i.join(`
48
+ `),b=this.list(d);r[r.length-1]=b,s=s.substring(0,s.length-g.raw.length)+b.raw,n=n.substring(0,n.length-p.raw.length)+b.raw,i=d.substring(r.at(-1).raw.length).split(`
49
+ `);continue}}return{type:"blockquote",raw:s,tokens:r,text:n}}}list(e){var i,s;let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim(),r=n.length>1,l={type:"list",raw:"",ordered:r,start:r?+n.slice(0,-1):"",loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:"[*+-]");let a=this.rules.other.listItemRegex(n),c=!1;for(;e;){let u=!1,h="",g="";if(!(t=a.exec(e))||this.rules.block.hr.test(e))break;h=t[0],e=e.substring(h.length);let p=ta(t[2].split(`
50
+ `,1)[0],t[1].length),d=e.split(`
51
+ `,1)[0],b=!p.trim(),y=0;if(this.options.pedantic?(y=2,g=p.trimStart()):b?y=t[1].length+1:(y=p.search(this.rules.other.nonSpaceChar),y=y>4?1:y,g=p.slice(y),y+=t[1].length),b&&this.rules.other.blankLine.test(d)&&(h+=d+`
52
+ `,e=e.substring(d.length+1),u=!0),!u){let z=this.rules.other.nextBulletRegex(y),D=this.rules.other.hrRegex(y),L=this.rules.other.fencesBeginRegex(y),A=this.rules.other.headingBeginRegex(y),S=this.rules.other.htmlBeginRegex(y),P=this.rules.other.blockquoteBeginRegex(y);for(;e;){let $=e.split(`
53
+ `,1)[0],_;if(d=$,this.options.pedantic?(d=d.replace(this.rules.other.listReplaceNesting," "),_=d):_=d.replace(this.rules.other.tabCharGlobal," "),L.test(d)||A.test(d)||S.test(d)||P.test(d)||z.test(d)||D.test(d))break;if(_.search(this.rules.other.nonSpaceChar)>=y||!d.trim())g+=`
54
+ `+_.slice(y);else{if(b||p.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||L.test(p)||A.test(p)||D.test(p))break;g+=`
55
+ `+d}b=!d.trim(),h+=$+`
56
+ `,e=e.substring($.length+1),p=_.slice(y)}}l.loose||(c?l.loose=!0:this.rules.other.doubleBlankLine.test(h)&&(c=!0)),l.items.push({type:"list_item",raw:h,task:!!this.options.gfm&&this.rules.other.listIsTask.test(g),loose:!1,text:g,tokens:[]}),l.raw+=h}let o=l.items.at(-1);if(o)o.raw=o.raw.trimEnd(),o.text=o.text.trimEnd();else return;l.raw=l.raw.trimEnd();for(let u of l.items){if(this.lexer.state.top=!1,u.tokens=this.lexer.blockTokens(u.text,[]),u.task){if(u.text=u.text.replace(this.rules.other.listReplaceTask,""),((i=u.tokens[0])==null?void 0:i.type)==="text"||((s=u.tokens[0])==null?void 0:s.type)==="paragraph"){u.tokens[0].raw=u.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),u.tokens[0].text=u.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let g=this.lexer.inlineQueue.length-1;g>=0;g--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[g].src)){this.lexer.inlineQueue[g].src=this.lexer.inlineQueue[g].src.replace(this.rules.other.listReplaceTask,"");break}}let h=this.rules.other.listTaskCheckbox.exec(u.raw);if(h){let g={type:"checkbox",raw:h[0]+" ",checked:h[0]!=="[ ]"};u.checked=g.checked,l.loose?u.tokens[0]&&["paragraph","text"].includes(u.tokens[0].type)&&"tokens"in u.tokens[0]&&u.tokens[0].tokens?(u.tokens[0].raw=g.raw+u.tokens[0].raw,u.tokens[0].text=g.raw+u.tokens[0].text,u.tokens[0].tokens.unshift(g)):u.tokens.unshift({type:"paragraph",raw:g.raw,text:g.raw,tokens:[g]}):u.tokens.unshift(g)}}if(!l.loose){let h=u.tokens.filter(g=>g.type==="space");l.loose=h.length>0&&h.some(g=>this.rules.other.anyLine.test(g.raw))}}if(l.loose)for(let u of l.items){u.loose=!0;for(let h of u.tokens)h.type==="text"&&(h.type="paragraph")}return l}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:"html",block:!0,raw:t[0],pre:t[1]==="pre"||t[1]==="script"||t[1]==="style",text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let i=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),s=t[2]?t[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",n=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:i,raw:t[0],href:s,title:n}}}table(e){var l;let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let i=ds(t[1]),s=t[2].replace(this.rules.other.tableAlignChars,"").split("|"),n=(l=t[3])!=null&&l.trim()?t[3].replace(this.rules.other.tableRowBlankLine,"").split(`
57
+ `):[],r={type:"table",raw:t[0],header:[],align:[],rows:[]};if(i.length===s.length){for(let a of s)this.rules.other.tableAlignRight.test(a)?r.align.push("right"):this.rules.other.tableAlignCenter.test(a)?r.align.push("center"):this.rules.other.tableAlignLeft.test(a)?r.align.push("left"):r.align.push(null);for(let a=0;a<i.length;a++)r.header.push({text:i[a],tokens:this.lexer.inline(i[a]),header:!0,align:r.align[a]});for(let a of n)r.rows.push(ds(a,r.header.length).map((c,o)=>({text:c,tokens:this.lexer.inline(c),header:!1,align:r.align[o]})));return r}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t){let i=t[1].trim();return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:i,tokens:this.lexer.inline(i)}}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let i=t[1].charAt(t[1].length-1)===`
58
+ `?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:i,tokens:this.lexer.inline(i)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let i=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(i)){if(!this.rules.other.endAngleBracket.test(i))return;let r=Qe(i.slice(0,-1),"\\");if((i.length-r.length)%2==0)return}else{let r=ea(t[2],"()");if(r===-2)return;if(r>-1){let l=(t[0].indexOf("!")===0?5:4)+t[1].length+r;t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,l).trim(),t[3]=""}}let s=t[2],n="";if(this.options.pedantic){let r=this.rules.other.pedanticHrefTitle.exec(s);r&&(s=r[1],n=r[3])}else n=t[3]?t[3].slice(1,-1):"";return s=s.trim(),this.rules.other.startAngleBracket.test(s)&&(s=this.options.pedantic&&!this.rules.other.endAngleBracket.test(i)?s.slice(1):s.slice(1,-1)),us(t,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:n&&n.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer,this.rules)}}reflink(e,t){let i;if((i=this.rules.inline.reflink.exec(e))||(i=this.rules.inline.nolink.exec(e))){let s=t[(i[2]||i[1]).replace(this.rules.other.multipleSpaceGlobal," ").toLowerCase()];if(!s){let n=i[0].charAt(0);return{type:"text",raw:n,text:n}}return us(i,s,i[0],this.lexer,this.rules)}}emStrong(e,t,i=""){let s=this.rules.inline.emStrongLDelim.exec(e);if(!(!s||!s[1]&&!s[2]&&!s[3]&&!s[4]||s[4]&&i.match(this.rules.other.unicodeAlphaNumeric))&&(!(s[1]||s[3])||!i||this.rules.inline.punctuation.exec(i))){let n=[...s[0]].length-1,r,l,a=n,c=0,o=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(o.lastIndex=0,t=t.slice(-1*e.length+n);(s=o.exec(t))!=null;){if(r=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!r)continue;if(l=[...r].length,s[3]||s[4]){a+=l;continue}else if((s[5]||s[6])&&n%3&&!((n+l)%3)){c+=l;continue}if(a-=l,a>0)continue;l=Math.min(l,l+a+c);let u=[...s[0]][0].length,h=e.slice(0,n+s.index+u+l);if(Math.min(n,l)%2){let p=h.slice(1,-1);return{type:"em",raw:h,text:p,tokens:this.lexer.inlineTokens(p)}}let g=h.slice(2,-2);return{type:"strong",raw:h,text:g,tokens:this.lexer.inlineTokens(g)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let i=t[2].replace(this.rules.other.newLineCharGlobal," "),s=this.rules.other.nonSpaceChar.test(i),n=this.rules.other.startingSpaceChar.test(i)&&this.rules.other.endingSpaceChar.test(i);return s&&n&&(i=i.substring(1,i.length-1)),{type:"codespan",raw:t[0],text:i}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e,t,i=""){let s=this.rules.inline.delLDelim.exec(e);if(s&&(!s[1]||!i||this.rules.inline.punctuation.exec(i))){let n=[...s[0]].length-1,r,l,a=n,c=this.rules.inline.delRDelim;for(c.lastIndex=0,t=t.slice(-1*e.length+n);(s=c.exec(t))!=null;){if(r=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!r||(l=[...r].length,l!==n))continue;if(s[3]||s[4]){a+=l;continue}if(a-=l,a>0)continue;l=Math.min(l,l+a);let o=[...s[0]][0].length,u=e.slice(0,n+s.index+o+l),h=u.slice(n,-n);return{type:"del",raw:u,text:h,tokens:this.lexer.inlineTokens(h)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let i,s;return t[2]==="@"?(i=t[1],s="mailto:"+i):(i=t[1],s=i),{type:"link",raw:t[0],text:i,href:s,tokens:[{type:"text",raw:i,text:i}]}}}url(e){var i;let t;if(t=this.rules.inline.url.exec(e)){let s,n;if(t[2]==="@")s=t[0],n="mailto:"+s;else{let r;do r=t[0],t[0]=((i=this.rules.inline._backpedal.exec(t[0]))==null?void 0:i[0])??"";while(r!==t[0]);s=t[0],n=t[1]==="www."?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:s,href:n,tokens:[{type:"text",raw:s,text:s}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let i=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:t[0],escaped:i}}}},ce=class Li{constructor(t){I(this,"tokens");I(this,"options");I(this,"state");I(this,"inlineQueue");I(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=t||Ie,this.options.tokenizer=this.options.tokenizer||new pt,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let i={other:re,block:ht.normal,inline:Ze.normal};this.options.pedantic?(i.block=ht.pedantic,i.inline=Ze.pedantic):this.options.gfm&&(i.block=ht.gfm,this.options.breaks?i.inline=Ze.breaks:i.inline=Ze.gfm),this.tokenizer.rules=i}static get rules(){return{block:ht,inline:Ze}}static lex(t,i){return new Li(i).lex(t)}static lexInline(t,i){return new Li(i).inlineTokens(t)}lex(t){t=t.replace(re.carriageReturn,`
59
+ `),this.blockTokens(t,this.tokens);for(let i=0;i<this.inlineQueue.length;i++){let s=this.inlineQueue[i];this.inlineTokens(s.src,s.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(t,i=[],s=!1){var n,r,l;for(this.tokenizer.lexer=this,this.options.pedantic&&(t=t.replace(re.tabCharGlobal," ").replace(re.spaceLine,""));t;){let a;if((r=(n=this.options.extensions)==null?void 0:n.block)!=null&&r.some(o=>(a=o.call({lexer:this},t,i))?(t=t.substring(a.raw.length),i.push(a),!0):!1))continue;if(a=this.tokenizer.space(t)){t=t.substring(a.raw.length);let o=i.at(-1);a.raw.length===1&&o!==void 0?o.raw+=`
60
+ `:i.push(a);continue}if(a=this.tokenizer.code(t)){t=t.substring(a.raw.length);let o=i.at(-1);(o==null?void 0:o.type)==="paragraph"||(o==null?void 0:o.type)==="text"?(o.raw+=(o.raw.endsWith(`
61
+ `)?"":`
62
+ `)+a.raw,o.text+=`
63
+ `+a.text,this.inlineQueue.at(-1).src=o.text):i.push(a);continue}if(a=this.tokenizer.fences(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.heading(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.hr(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.blockquote(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.list(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.html(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.def(t)){t=t.substring(a.raw.length);let o=i.at(-1);(o==null?void 0:o.type)==="paragraph"||(o==null?void 0:o.type)==="text"?(o.raw+=(o.raw.endsWith(`
64
+ `)?"":`
65
+ `)+a.raw,o.text+=`
66
+ `+a.raw,this.inlineQueue.at(-1).src=o.text):this.tokens.links[a.tag]||(this.tokens.links[a.tag]={href:a.href,title:a.title},i.push(a));continue}if(a=this.tokenizer.table(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.lheading(t)){t=t.substring(a.raw.length),i.push(a);continue}let c=t;if((l=this.options.extensions)!=null&&l.startBlock){let o=1/0,u=t.slice(1),h;this.options.extensions.startBlock.forEach(g=>{h=g.call({lexer:this},u),typeof h=="number"&&h>=0&&(o=Math.min(o,h))}),o<1/0&&o>=0&&(c=t.substring(0,o+1))}if(this.state.top&&(a=this.tokenizer.paragraph(c))){let o=i.at(-1);s&&(o==null?void 0:o.type)==="paragraph"?(o.raw+=(o.raw.endsWith(`
67
+ `)?"":`
68
+ `)+a.raw,o.text+=`
69
+ `+a.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):i.push(a),s=c.length!==t.length,t=t.substring(a.raw.length);continue}if(a=this.tokenizer.text(t)){t=t.substring(a.raw.length);let o=i.at(-1);(o==null?void 0:o.type)==="text"?(o.raw+=(o.raw.endsWith(`
70
+ `)?"":`
71
+ `)+a.raw,o.text+=`
72
+ `+a.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):i.push(a);continue}if(t){let o="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw Error(o)}}return this.state.top=!0,i}inline(t,i=[]){return this.inlineQueue.push({src:t,tokens:i}),i}inlineTokens(t,i=[]){var c,o,u,h,g;this.tokenizer.lexer=this;let s=t,n=null;if(this.tokens.links){let p=Object.keys(this.tokens.links);if(p.length>0)for(;(n=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)p.includes(n[0].slice(n[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,n.index)+"["+"a".repeat(n[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(n=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,n.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let r;for(;(n=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)r=n[2]?n[2].length:0,s=s.slice(0,n.index+r)+"["+"a".repeat(n[0].length-r-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);s=((o=(c=this.options.hooks)==null?void 0:c.emStrongMask)==null?void 0:o.call({lexer:this},s))??s;let l=!1,a="";for(;t;){l||(a=""),l=!1;let p;if((h=(u=this.options.extensions)==null?void 0:u.inline)!=null&&h.some(b=>(p=b.call({lexer:this},t,i))?(t=t.substring(p.raw.length),i.push(p),!0):!1))continue;if(p=this.tokenizer.escape(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.tag(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.link(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(p.raw.length);let b=i.at(-1);p.type==="text"&&(b==null?void 0:b.type)==="text"?(b.raw+=p.raw,b.text+=p.text):i.push(p);continue}if(p=this.tokenizer.emStrong(t,s,a)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.codespan(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.br(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.del(t,s,a)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.autolink(t)){t=t.substring(p.raw.length),i.push(p);continue}if(!this.state.inLink&&(p=this.tokenizer.url(t))){t=t.substring(p.raw.length),i.push(p);continue}let d=t;if((g=this.options.extensions)!=null&&g.startInline){let b=1/0,y=t.slice(1),z;this.options.extensions.startInline.forEach(D=>{z=D.call({lexer:this},y),typeof z=="number"&&z>=0&&(b=Math.min(b,z))}),b<1/0&&b>=0&&(d=t.substring(0,b+1))}if(p=this.tokenizer.inlineText(d)){t=t.substring(p.raw.length),p.raw.slice(-1)!=="_"&&(a=p.raw.slice(-1)),l=!0;let b=i.at(-1);(b==null?void 0:b.type)==="text"?(b.raw+=p.raw,b.text+=p.text):i.push(p);continue}if(t){let b="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(b);break}else throw Error(b)}}return i}},gt=class{constructor(e){I(this,"options");I(this,"parser");this.options=e||Ie}space(e){return""}code({text:e,lang:t,escaped:i}){var r;let s=(r=(t||"").match(re.notSpaceStart))==null?void 0:r[0],n=e.replace(re.endingNewline,"")+`
73
+ `;return s?'<pre><code class="language-'+me(s)+'">'+(i?n:me(n,!0))+`</code></pre>
74
+ `:"<pre><code>"+(i?n:me(n,!0))+`</code></pre>
75
+ `}blockquote({tokens:e}){return`<blockquote>
76
+ ${this.parser.parse(e)}</blockquote>
77
+ `}html({text:e}){return e}def(e){return""}heading({tokens:e,depth:t}){return`<h${t}>${this.parser.parseInline(e)}</h${t}>
78
+ `}hr(e){return`<hr>
79
+ `}list(e){let t=e.ordered,i=e.start,s="";for(let l=0;l<e.items.length;l++){let a=e.items[l];s+=this.listitem(a)}let n=t?"ol":"ul",r=t&&i!==1?' start="'+i+'"':"";return"<"+n+r+`>
80
+ `+s+"</"+n+`>
81
+ `}listitem(e){return`<li>${this.parser.parse(e.tokens)}</li>
82
+ `}checkbox({checked:e}){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:e}){return`<p>${this.parser.parseInline(e)}</p>
83
+ `}table(e){let t="",i="";for(let n=0;n<e.header.length;n++)i+=this.tablecell(e.header[n]);t+=this.tablerow({text:i});let s="";for(let n=0;n<e.rows.length;n++){let r=e.rows[n];i="";for(let l=0;l<r.length;l++)i+=this.tablecell(r[l]);s+=this.tablerow({text:i})}return s&&(s=`<tbody>${s}</tbody>`),`<table>
84
+ <thead>
85
+ `+t+`</thead>
86
+ `+s+`</table>
87
+ `}tablerow({text:e}){return`<tr>
88
+ ${e}</tr>
89
+ `}tablecell(e){let t=this.parser.parseInline(e.tokens),i=e.header?"th":"td";return(e.align?`<${i} align="${e.align}">`:`<${i}>`)+t+`</${i}>
90
+ `}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${me(e,!0)}</code>`}br(e){return"<br>"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:i}){let s=this.parser.parseInline(i),n=cs(e);if(n===null)return s;e=n;let r='<a href="'+e+'"';return t&&(r+=' title="'+me(t)+'"'),r+=">"+s+"</a>",r}image({href:e,title:t,text:i,tokens:s}){s&&(i=this.parser.parseInline(s,this.parser.textRenderer));let n=cs(e);if(n===null)return me(i);e=n;let r=`<img src="${e}" alt="${me(i)}"`;return t&&(r+=` title="${me(t)}"`),r+=">",r}text(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:me(e.text)}},Gt=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return""+e}image({text:e}){return""+e}br(){return""}checkbox({raw:e}){return e}},de=class Pi{constructor(t){I(this,"options");I(this,"renderer");I(this,"textRenderer");this.options=t||Ie,this.options.renderer=this.options.renderer||new gt,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Gt}static parse(t,i){return new Pi(i).parse(t)}static parseInline(t,i){return new Pi(i).parseInline(t)}parse(t){var s,n;this.renderer.parser=this;let i="";for(let r=0;r<t.length;r++){let l=t[r];if((n=(s=this.options.extensions)==null?void 0:s.renderers)!=null&&n[l.type]){let c=l,o=this.options.extensions.renderers[c.type].call({parser:this},c);if(o!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(c.type)){i+=o||"";continue}}let a=l;switch(a.type){case"space":i+=this.renderer.space(a);break;case"hr":i+=this.renderer.hr(a);break;case"heading":i+=this.renderer.heading(a);break;case"code":i+=this.renderer.code(a);break;case"table":i+=this.renderer.table(a);break;case"blockquote":i+=this.renderer.blockquote(a);break;case"list":i+=this.renderer.list(a);break;case"checkbox":i+=this.renderer.checkbox(a);break;case"html":i+=this.renderer.html(a);break;case"def":i+=this.renderer.def(a);break;case"paragraph":i+=this.renderer.paragraph(a);break;case"text":i+=this.renderer.text(a);break;default:{let c='Token with "'+a.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw Error(c)}}}return i}parseInline(t,i=this.renderer){var n,r;this.renderer.parser=this;let s="";for(let l=0;l<t.length;l++){let a=t[l];if((r=(n=this.options.extensions)==null?void 0:n.renderers)!=null&&r[a.type]){let o=this.options.extensions.renderers[a.type].call({parser:this},a);if(o!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(a.type)){s+=o||"";continue}}let c=a;switch(c.type){case"escape":s+=i.text(c);break;case"html":s+=i.html(c);break;case"link":s+=i.link(c);break;case"image":s+=i.image(c);break;case"checkbox":s+=i.checkbox(c);break;case"strong":s+=i.strong(c);break;case"em":s+=i.em(c);break;case"codespan":s+=i.codespan(c);break;case"br":s+=i.br(c);break;case"del":s+=i.del(c);break;case"text":s+=i.text(c);break;default:{let o='Token with "'+c.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw Error(o)}}}return s}},Xe=(wt=class{constructor(e){I(this,"options");I(this,"block");this.options=e||Ie}preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(){return this.block?ce.lex:ce.lexInline}provideParser(){return this.block?de.parse:de.parseInline}},I(wt,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),I(wt,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),wt),Ne=new class{constructor(...e){I(this,"defaults",Vt());I(this,"options",this.setOptions);I(this,"parse",this.parseMarkdown(!0));I(this,"parseInline",this.parseMarkdown(!1));I(this,"Parser",de);I(this,"Renderer",gt);I(this,"TextRenderer",Gt);I(this,"Lexer",ce);I(this,"Tokenizer",pt);I(this,"Hooks",Xe);this.use(...e)}walkTokens(e,t){var s,n;let i=[];for(let r of e)switch(i=i.concat(t.call(this,r)),r.type){case"table":{let l=r;for(let a of l.header)i=i.concat(this.walkTokens(a.tokens,t));for(let a of l.rows)for(let c of a)i=i.concat(this.walkTokens(c.tokens,t));break}case"list":{let l=r;i=i.concat(this.walkTokens(l.items,t));break}default:{let l=r;(n=(s=this.defaults.extensions)==null?void 0:s.childTokens)!=null&&n[l.type]?this.defaults.extensions.childTokens[l.type].forEach(a=>{let c=l[a].flat(1/0);i=i.concat(this.walkTokens(c,t))}):l.tokens&&(i=i.concat(this.walkTokens(l.tokens,t)))}}return i}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(i=>{let s={...i};if(s.async=this.defaults.async||s.async||!1,i.extensions&&(i.extensions.forEach(n=>{if(!n.name)throw Error("extension name required");if("renderer"in n){let r=t.renderers[n.name];r?t.renderers[n.name]=function(...l){let a=n.renderer.apply(this,l);return a===!1&&(a=r.apply(this,l)),a}:t.renderers[n.name]=n.renderer}if("tokenizer"in n){if(!n.level||n.level!=="block"&&n.level!=="inline")throw Error("extension level must be 'block' or 'inline'");let r=t[n.level];r?r.unshift(n.tokenizer):t[n.level]=[n.tokenizer],n.start&&(n.level==="block"?t.startBlock?t.startBlock.push(n.start):t.startBlock=[n.start]:n.level==="inline"&&(t.startInline?t.startInline.push(n.start):t.startInline=[n.start]))}"childTokens"in n&&n.childTokens&&(t.childTokens[n.name]=n.childTokens)}),s.extensions=t),i.renderer){let n=this.defaults.renderer||new gt(this.defaults);for(let r in i.renderer){if(!(r in n))throw Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;let l=r,a=i.renderer[l],c=n[l];n[l]=(...o)=>{let u=a.apply(n,o);return u===!1&&(u=c.apply(n,o)),u||""}}s.renderer=n}if(i.tokenizer){let n=this.defaults.tokenizer||new pt(this.defaults);for(let r in i.tokenizer){if(!(r in n))throw Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;let l=r,a=i.tokenizer[l],c=n[l];n[l]=(...o)=>{let u=a.apply(n,o);return u===!1&&(u=c.apply(n,o)),u}}s.tokenizer=n}if(i.hooks){let n=this.defaults.hooks||new Xe;for(let r in i.hooks){if(!(r in n))throw Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;let l=r,a=i.hooks[l],c=n[l];Xe.passThroughHooks.has(r)?n[l]=o=>{if(this.defaults.async&&Xe.passThroughHooksRespectAsync.has(r))return(async()=>{let h=await a.call(n,o);return c.call(n,h)})();let u=a.call(n,o);return c.call(n,u)}:n[l]=(...o)=>{if(this.defaults.async)return(async()=>{let h=await a.apply(n,o);return h===!1&&(h=await c.apply(n,o)),h})();let u=a.apply(n,o);return u===!1&&(u=c.apply(n,o)),u}}s.hooks=n}if(i.walkTokens){let n=this.defaults.walkTokens,r=i.walkTokens;s.walkTokens=function(l){let a=[];return a.push(r.call(this,l)),n&&(a=a.concat(n.call(this,l))),a}}this.defaults={...this.defaults,...s}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return ce.lex(e,t??this.defaults)}parser(e,t){return de.parse(e,t??this.defaults)}parseMarkdown(e){return(t,i)=>{let s={...i},n={...this.defaults,...s},r=this.onError(!!n.silent,!!n.async);if(this.defaults.async===!0&&s.async===!1)return r(Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||t===null)return r(Error("marked(): input parameter is undefined or null"));if(typeof t!="string")return r(Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));if(n.hooks&&(n.hooks.options=n,n.hooks.block=e),n.async)return(async()=>{let l=n.hooks?await n.hooks.preprocess(t):t,a=await(n.hooks?await n.hooks.provideLexer():e?ce.lex:ce.lexInline)(l,n),c=n.hooks?await n.hooks.processAllTokens(a):a;n.walkTokens&&await Promise.all(this.walkTokens(c,n.walkTokens));let o=await(n.hooks?await n.hooks.provideParser():e?de.parse:de.parseInline)(c,n);return n.hooks?await n.hooks.postprocess(o):o})().catch(r);try{n.hooks&&(t=n.hooks.preprocess(t));let l=(n.hooks?n.hooks.provideLexer():e?ce.lex:ce.lexInline)(t,n);n.hooks&&(l=n.hooks.processAllTokens(l)),n.walkTokens&&this.walkTokens(l,n.walkTokens);let a=(n.hooks?n.hooks.provideParser():e?de.parse:de.parseInline)(l,n);return n.hooks&&(a=n.hooks.postprocess(a)),a}catch(l){return r(l)}}}onError(e,t){return i=>{if(i.message+=`
91
+ Please report this to https://github.com/markedjs/marked.`,e){let s="<p>An error occurred:</p><pre>"+me(i.message+"",!0)+"</pre>";return t?Promise.resolve(s):s}if(t)return Promise.reject(i);throw i}}};function V(e,t){return Ne.parse(e,t)}V.options=V.setOptions=function(e){return Ne.setOptions(e),V.defaults=Ne.defaults,Xi(V.defaults),V},V.getDefaults=Vt,V.defaults=Ie,V.use=function(...e){return Ne.use(...e),V.defaults=Ne.defaults,Xi(V.defaults),V},V.walkTokens=function(e,t){return Ne.walkTokens(e,t)},V.parseInline=Ne.parseInline,V.Parser=de,V.parser=de.parse,V.Renderer=gt,V.TextRenderer=Gt,V.Lexer=ce,V.lexer=ce.lex,V.Tokenizer=pt,V.Hooks=Xe,V.parse=V,V.options,V.setOptions,V.use,V.walkTokens,V.parseInline,de.parse,ce.lex;function hs(...e){return e.filter(Boolean).join(" ")}function sa(e,t){return e?t?{...e,...t}:e:t}function na({animation:e,index:t,as:i,asChild:s,className:n,style:r,children:l}){let a=hs("fragment",e,n);if(s){let c;try{c=T.Children.only(l)}catch{throw Error("Fragment with asChild expects exactly one React element child.")}if(!(0,T.isValidElement)(c)||c.type===T.Fragment)throw Error("Fragment with asChild expects exactly one non-Fragment React element child.");let o={className:hs(c.props.className,a),style:sa(c.props.style,r)};return t!==void 0&&(o["data-fragment-index"]=t),(0,T.cloneElement)(c,o)}return(0,x.jsx)(i??"span",{className:a,style:r,"data-fragment-index":t,children:l})}function ra({cells:e,getType:t}){let i=[],s=null,n=null,r=()=>{let c={subslides:[]};return i.push(c),s=c,n=null,c},l=()=>{let c=s??r(),o={blocks:[]};return c.subslides.push(o),n=o,o},a=c=>{let o=n??l(),u={isFragment:c,cells:[]};return o.blocks.push(u),u};for(let c of e)switch(t(c)){case"skip":break;case"slide":r(),l(),a(!1).cells.push(c);break;case"sub-slide":l(),a(!1).cells.push(c);break;case"fragment":a(!0).cells.push(c);break}return{stacks:i}}function aa({composition:e,cells:t,getId:i}){let s=new Map,n=new Map,r=new Map;for(let[l,a]of t.entries())r.set(i(a),l);return e.stacks.forEach((l,a)=>{l.subslides.forEach((c,o)=>{var g;let u;for(let p of c.blocks){if(p.isFragment)break;let d=p.cells.at(-1);d&&(u=i(d))}if(u===void 0){let p=(g=c.blocks[0])==null?void 0:g.cells[0];p&&(u=i(p))}if(u!==void 0){let p=r.get(u);p!=null&&n.set(`${a},${o},-1`,p)}let h=-1;for(let p of c.blocks)if(p.isFragment){h++;for(let b of p.cells)s.set(i(b),{h:a,v:o,f:h});let d=p.cells.at(-1);if(d){let b=r.get(i(d));b!=null&&n.set(`${a},${o},${h}`,b)}}else for(let d of p.cells)s.set(i(d),{h:a,v:o,f:-1})})}),{cellToTarget:s,targetToCellIndex:n}}function la(e,t){let{h:i,v:s,f:n}=t;return e.get(`${i},${s},${n}`)??e.get(`${i},${s},-1`)}function ps({start:e,stop:t,step:i,cells:s,cellToTarget:n,getId:r}){for(let l=e;l!==t;l+=i){let a=n.get(r(s[l]));if(a)return a}}function oa({activeIndex:e,cells:t,cellToTarget:i,getId:s}){if(e==null)return;let n=t[e];return n?i.get(s(n))||(ps({start:e-1,stop:-1,step:-1,cells:t,cellToTarget:i,getId:s})??ps({start:e+1,stop:t.length,step:1,cells:t,cellToTarget:i,getId:s})):void 0}function ca(e,t){let i={h:t.h,v:t.v,f:t.f>=0?t.f:-1};return e.h===i.h&&e.v===i.v&&e.f===i.f?null:i}const gs=({cell:e})=>{let[t]=fn(),{theme:i}=oo(),s=ho(e.id),n=Si(Fl),r=Ml(),l=Si(jl),a=(0,T.useRef)(null),c=(0,T.useRef)(null),[o,u]=(0,T.useState)(),h=be(()=>{go({autoInstantiate:l,createNewCell:r.createNewCell})}),g=be(()=>{}),p=t.display.cell_output,d=e.output!=null,b=zl({executionTime:e.runElapsedTimeMs??e.lastExecutionTime,status:e.status,errored:e.errored,interrupted:e.interrupted,stopped:e.stopped}),y=Bl({edited:e.edited,interrupted:e.interrupted,staleInputs:e.staleInputs,disabled:e.config.disabled,status:e.status}),z=zt("marimo-cell","hover-actions-parent","interactive",Nl({needsRun:y,errored:e.errored,stopped:e.stopped,disabled:e.config.disabled,status:e.status})),D=(0,x.jsx)($t,{cellId:e.id,status:e.status,output:e.output}),L=(0,x.jsxs)("div",{className:"absolute top-1 right-2 z-10 flex items-center gap-1.5",children:[(0,x.jsx)(co,{editing:!0,status:e.status,disabled:e.config.disabled??!1,staleInputs:e.staleInputs,edited:e.edited,interrupted:e.interrupted,elapsedTime:e.runElapsedTimeMs??e.lastExecutionTime,runStartTimestamp:e.runStartTimestamp,lastRunStartTimestamp:e.lastRunStartTimestamp,uninstantiated:b}),(0,x.jsx)(io,{code:e.code,editorView:a.current,currentLanguageAdapter:o,onAfterToggle:h,className:"flex items-center gap-1"}),(0,x.jsxs)("div",{className:"flex items-center shadow-none gap-1",children:[(0,x.jsx)(ao,{edited:e.edited,status:e.status,needsRun:y,connectionState:n.state,config:e.config,onClick:s}),(0,x.jsx)(ro,{status:e.status,connectionState:n.state})]})]}),A=(0,x.jsxs)("div",{tabIndex:-1,className:z,...Yl(e.id,e.name),children:[(0,x.jsx)(so,{theme:i,showPlaceholder:!1,id:e.id,code:e.code,config:e.config,status:e.status,serializedEditorState:e.serializedEditorState,runCell:s,setEditorView:S=>{a.current=S},userConfig:t,editorViewRef:a,editorViewParentRef:c,hasOutput:d,showHiddenCode:g,languageAdapter:o,setLanguageAdapter:u,showLanguageToggles:!1,inlineAiTooltip:!1,outputArea:p,tooltipParentSelector:".reveal-viewport"}),L]});return(0,x.jsxs)(x.Fragment,{children:[p==="above"&&D,A,p==="below"&&D]})},ms=e=>{let t=(0,ke.c)(11),{cell:i}=e,[s]=fn(),n=s.display.cell_output,r=$l(i.code.trim()).type==="sql"?"sql":"python",l;t[0]!==i.id||t[1]!==i.output||t[2]!==i.status?(l=(0,x.jsx)($t,{cellId:i.id,status:i.status,output:i.output}),t[0]=i.id,t[1]=i.output,t[2]=i.status,t[3]=l):l=t[3];let a=l,c;t[4]!==i.code||t[5]!==r?(c=(0,x.jsx)("div",{className:"marimo-cell",children:(0,x.jsx)(lo,{code:i.code,language:r,showHideCode:!1})}),t[4]=i.code,t[5]=r,t[6]=c):c=t[6];let o=c,u=n==="above"&&a,h=n==="below"&&a,g;return t[7]!==o||t[8]!==u||t[9]!==h?(g=(0,x.jsxs)(x.Fragment,{children:[u,o,h]}),t[7]=o,t[8]=u,t[9]=h,t[10]=g):g=t[10],g};var da=Ei(),ua=300;const ha=e=>{var $;let t=(0,da.c)(25),{layout:i,setLayout:s,cellId:n,className:r}=e,l=n?(($=i.cells.get(n))==null?void 0:$.speakerNotes)??"":"",[a,c]=(0,T.useState)(l),o=(0,T.useRef)(!1),u;t[0]!==i||t[1]!==s?(u=(_,O)=>{o.current=!1;let M=i.cells.get(_);if(((M==null?void 0:M.speakerNotes)??"")===O)return;let Y=new Map(i.cells);Y.set(_,{...M,speakerNotes:O}),s({...i,cells:Y})},t[0]=i,t[1]=s,t[2]=u):u=t[2];let h=uo(be(u),ua),g=(0,T.useRef)(n),p,d;t[3]!==n||t[4]!==a||t[5]!==l||t[6]!==h?(p=()=>{if(g.current!==n){h.flush(),o.current=!1,c(l),g.current=n;return}!o.current&&l!==a&&c(l)},d=[n,l,a,h],t[3]=n,t[4]=a,t[5]=l,t[6]=h,t[7]=p,t[8]=d):(p=t[7],d=t[8]),(0,T.useEffect)(p,d);let b,y;t[9]===h?(b=t[10],y=t[11]):(b=()=>()=>{h.flush()},y=[h],t[9]=h,t[10]=b,t[11]=y),(0,T.useEffect)(b,y);let z;t[12]!==n||t[13]!==h?(z=_=>{c(_),n&&(o.current=!0,h(n,_))},t[12]=n,t[13]=h,t[14]=z):z=t[14];let D=z,L;t[15]===r?L=t[16]:(L=zt("h-full min-h-0 flex flex-col bg-muted/40 dark:bg-muted/20 border-t",r),t[15]=r,t[16]=L);let A;t[17]===Symbol.for("react.memo_cache_sentinel")?(A=(0,x.jsxs)("header",{className:"flex items-center gap-1.5 px-3 h-8 shrink-0 text-xs font-medium uppercase tracking-wide text-muted-foreground",children:[(0,x.jsx)(Ce,{className:"h-3.5 w-3.5"}),(0,x.jsx)("span",{children:"Speaker notes"})]}),t[17]=A):A=t[17];let S;t[18]!==n||t[19]!==a||t[20]!==D?(S=(0,x.jsx)("div",{className:"flex-1 min-h-0 p-2",children:n?(0,x.jsx)("textarea",{value:a,onChange:_=>D(_.target.value),onClick:Ri.stopPropagation(),placeholder:"Add notes for this slide. Visible to you in speaker view (press S during presentation).",className:zt("h-full w-full resize-none rounded-sm border border-input/25 bg-background","px-3 py-2 text-sm leading-relaxed text-foreground placeholder:text-muted-foreground","ring-offset-background focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring focus-visible:border-accent"),"aria-label":"Speaker notes for the current slide"}):(0,x.jsx)("div",{className:"h-full flex items-center justify-center text-xs text-muted-foreground",children:"Select a slide to add notes."})}),t[18]=n,t[19]=a,t[20]=D,t[21]=S):S=t[21];let P;return t[22]!==L||t[23]!==S?(P=(0,x.jsxs)("section",{className:L,"aria-label":"Speaker notes",onKeyDown:pa,children:[A,S]}),t[22]=L,t[23]=S,t[24]=P):P=t[24],P};function pa(e){return e.stopPropagation()}var ga=`
92
+
93
+ ---
94
+
95
+ `;const ma=(e,t)=>e.map(i=>{var s;return((s=t.get(i.id))==null?void 0:s.speakerNotes)??""}).filter(i=>i.trim().length>0).join(`
96
+
97
+ `),fa=(e,t)=>{let i=e.blocks.map(l=>ma(l.cells,t)),s=e.blocks.map((l,a)=>l.isFragment?"":i[a]).filter(l=>l.length>0).join(`
98
+
99
+ `),n=new Map,r=[];return e.blocks.forEach((l,a)=>{if(!l.isFragment)return;let c=i[a];c.length>0&&r.push(c);let o=[s,...r].filter(u=>u.length>0).join(ga);o.length>0&&n.set(a,o)}),{slideLevel:s,cumulativeByBlock:n}};var va=`<!--
100
+ NOTE: You need to build the notes plugin after making changes to this file.
101
+ -->
102
+ <html lang="en">
103
+ <head>
104
+ <meta charset="utf-8">
105
+
106
+ <title>reveal.js - Speaker View</title>
107
+
108
+ <style>
109
+ body {
110
+ font-family: Helvetica;
111
+ font-size: 18px;
112
+ }
113
+
114
+ #current-slide,
115
+ #upcoming-slide,
116
+ #speaker-controls {
117
+ padding: 6px;
118
+ box-sizing: border-box;
119
+ -moz-box-sizing: border-box;
120
+ }
121
+
122
+ #current-slide iframe,
123
+ #upcoming-slide iframe {
124
+ width: 100%;
125
+ height: 100%;
126
+ border: 1px solid #ddd;
127
+ }
128
+
129
+ #current-slide .label,
130
+ #upcoming-slide .label {
131
+ position: absolute;
132
+ top: 10px;
133
+ left: 10px;
134
+ z-index: 2;
135
+ }
136
+
137
+ #connection-status {
138
+ position: absolute;
139
+ top: 0;
140
+ left: 0;
141
+ width: 100%;
142
+ height: 100%;
143
+ z-index: 20;
144
+ padding: 30% 20% 20% 20%;
145
+ font-size: 18px;
146
+ color: #222;
147
+ background: #fff;
148
+ text-align: center;
149
+ box-sizing: border-box;
150
+ line-height: 1.4;
151
+ }
152
+
153
+ .overlay-element {
154
+ height: 34px;
155
+ line-height: 34px;
156
+ padding: 0 10px;
157
+ text-shadow: none;
158
+ background: rgba( 220, 220, 220, 0.8 );
159
+ color: #222;
160
+ font-size: 14px;
161
+ }
162
+
163
+ .overlay-element.interactive:hover {
164
+ background: rgba( 220, 220, 220, 1 );
165
+ }
166
+
167
+ #current-slide {
168
+ position: absolute;
169
+ width: 60%;
170
+ height: 100%;
171
+ top: 0;
172
+ left: 0;
173
+ padding-right: 0;
174
+ }
175
+
176
+ #upcoming-slide {
177
+ position: absolute;
178
+ width: 40%;
179
+ height: 40%;
180
+ right: 0;
181
+ top: 0;
182
+ }
183
+
184
+ /* Speaker controls */
185
+ #speaker-controls {
186
+ position: absolute;
187
+ top: 40%;
188
+ right: 0;
189
+ width: 40%;
190
+ height: 60%;
191
+ overflow: auto;
192
+ font-size: 18px;
193
+ }
194
+
195
+ .speaker-controls-time.hidden,
196
+ .speaker-controls-notes.hidden {
197
+ display: none;
198
+ }
199
+
200
+ .speaker-controls-time .label,
201
+ .speaker-controls-pace .label,
202
+ .speaker-controls-notes .label {
203
+ text-transform: uppercase;
204
+ font-weight: normal;
205
+ font-size: 0.66em;
206
+ color: #666;
207
+ margin: 0;
208
+ }
209
+
210
+ .speaker-controls-time, .speaker-controls-pace {
211
+ border-bottom: 1px solid rgba( 200, 200, 200, 0.5 );
212
+ margin-bottom: 10px;
213
+ padding: 10px 16px;
214
+ padding-bottom: 20px;
215
+ cursor: pointer;
216
+ }
217
+
218
+ .speaker-controls-time .reset-button {
219
+ opacity: 0;
220
+ float: right;
221
+ color: #666;
222
+ text-decoration: none;
223
+ }
224
+ .speaker-controls-time:hover .reset-button {
225
+ opacity: 1;
226
+ }
227
+
228
+ .speaker-controls-time .timer,
229
+ .speaker-controls-time .clock {
230
+ width: 50%;
231
+ }
232
+
233
+ .speaker-controls-time .timer,
234
+ .speaker-controls-time .clock,
235
+ .speaker-controls-time .pacing .hours-value,
236
+ .speaker-controls-time .pacing .minutes-value,
237
+ .speaker-controls-time .pacing .seconds-value {
238
+ font-size: 1.9em;
239
+ }
240
+
241
+ .speaker-controls-time .timer {
242
+ float: left;
243
+ }
244
+
245
+ .speaker-controls-time .clock {
246
+ float: right;
247
+ text-align: right;
248
+ }
249
+
250
+ .speaker-controls-time span.mute {
251
+ opacity: 0.3;
252
+ }
253
+
254
+ .speaker-controls-time .pacing-title {
255
+ margin-top: 5px;
256
+ }
257
+
258
+ .speaker-controls-time .pacing.ahead {
259
+ color: blue;
260
+ }
261
+
262
+ .speaker-controls-time .pacing.on-track {
263
+ color: green;
264
+ }
265
+
266
+ .speaker-controls-time .pacing.behind {
267
+ color: red;
268
+ }
269
+
270
+ .speaker-controls-notes {
271
+ padding: 10px 16px;
272
+ }
273
+
274
+ .speaker-controls-notes .value {
275
+ margin-top: 5px;
276
+ line-height: 1.4;
277
+ font-size: 1.2em;
278
+ }
279
+
280
+ /* Layout selector\xA0*/
281
+ #speaker-layout {
282
+ position: absolute;
283
+ top: 10px;
284
+ right: 10px;
285
+ color: #222;
286
+ z-index: 10;
287
+ }
288
+ #speaker-layout select {
289
+ position: absolute;
290
+ width: 100%;
291
+ height: 100%;
292
+ top: 0;
293
+ left: 0;
294
+ border: 0;
295
+ box-shadow: 0;
296
+ cursor: pointer;
297
+ opacity: 0;
298
+
299
+ font-size: 1em;
300
+ background-color: transparent;
301
+
302
+ -moz-appearance: none;
303
+ -webkit-appearance: none;
304
+ -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
305
+ }
306
+
307
+ #speaker-layout select:focus {
308
+ outline: none;
309
+ box-shadow: none;
310
+ }
311
+
312
+ .clear {
313
+ clear: both;
314
+ }
315
+
316
+ /* Speaker layout: Wide */
317
+ body[data-speaker-layout="wide"] #current-slide,
318
+ body[data-speaker-layout="wide"] #upcoming-slide {
319
+ width: 50%;
320
+ height: 45%;
321
+ padding: 6px;
322
+ }
323
+
324
+ body[data-speaker-layout="wide"] #current-slide {
325
+ top: 0;
326
+ left: 0;
327
+ }
328
+
329
+ body[data-speaker-layout="wide"] #upcoming-slide {
330
+ top: 0;
331
+ left: 50%;
332
+ }
333
+
334
+ body[data-speaker-layout="wide"] #speaker-controls {
335
+ top: 45%;
336
+ left: 0;
337
+ width: 100%;
338
+ height: 50%;
339
+ font-size: 1.25em;
340
+ }
341
+
342
+ /* Speaker layout: Tall */
343
+ body[data-speaker-layout="tall"] #current-slide,
344
+ body[data-speaker-layout="tall"] #upcoming-slide {
345
+ width: 45%;
346
+ height: 50%;
347
+ padding: 6px;
348
+ }
349
+
350
+ body[data-speaker-layout="tall"] #current-slide {
351
+ top: 0;
352
+ left: 0;
353
+ }
354
+
355
+ body[data-speaker-layout="tall"] #upcoming-slide {
356
+ top: 50%;
357
+ left: 0;
358
+ }
359
+
360
+ body[data-speaker-layout="tall"] #speaker-controls {
361
+ padding-top: 40px;
362
+ top: 0;
363
+ left: 45%;
364
+ width: 55%;
365
+ height: 100%;
366
+ font-size: 1.25em;
367
+ }
368
+
369
+ /* Speaker layout: Notes only */
370
+ body[data-speaker-layout="notes-only"] #current-slide,
371
+ body[data-speaker-layout="notes-only"] #upcoming-slide {
372
+ display: none;
373
+ }
374
+
375
+ body[data-speaker-layout="notes-only"] #speaker-controls {
376
+ padding-top: 40px;
377
+ top: 0;
378
+ left: 0;
379
+ width: 100%;
380
+ height: 100%;
381
+ font-size: 1.25em;
382
+ }
383
+
384
+ @media screen and (max-width: 1080px) {
385
+ body[data-speaker-layout="default"] #speaker-controls {
386
+ font-size: 16px;
387
+ }
388
+ }
389
+
390
+ @media screen and (max-width: 900px) {
391
+ body[data-speaker-layout="default"] #speaker-controls {
392
+ font-size: 14px;
393
+ }
394
+ }
395
+
396
+ @media screen and (max-width: 800px) {
397
+ body[data-speaker-layout="default"] #speaker-controls {
398
+ font-size: 12px;
399
+ }
400
+ }
401
+
402
+ </style>
403
+ </head>
404
+
405
+ <body>
406
+
407
+ <div id="connection-status">Loading speaker view...</div>
408
+
409
+ <div id="current-slide"></div>
410
+ <div id="upcoming-slide"><span class="overlay-element label">Upcoming</span></div>
411
+ <div id="speaker-controls">
412
+ <div class="speaker-controls-time">
413
+ <h4 class="label">Time <span class="reset-button">Click to Reset</span></h4>
414
+ <div class="clock">
415
+ <span class="clock-value">0:00 AM</span>
416
+ </div>
417
+ <div class="timer">
418
+ <span class="hours-value">00</span><span class="minutes-value">:00</span><span class="seconds-value">:00</span>
419
+ </div>
420
+ <div class="clear"></div>
421
+
422
+ <h4 class="label pacing-title" style="display: none">Pacing \u2013 Time to finish current slide</h4>
423
+ <div class="pacing" style="display: none">
424
+ <span class="hours-value">00</span><span class="minutes-value">:00</span><span class="seconds-value">:00</span>
425
+ </div>
426
+ </div>
427
+
428
+ <div class="speaker-controls-notes hidden">
429
+ <h4 class="label">Notes</h4>
430
+ <div class="value"></div>
431
+ </div>
432
+ </div>
433
+ <div id="speaker-layout" class="overlay-element interactive">
434
+ <span class="speaker-layout-label"></span>
435
+ <select class="speaker-layout-dropdown"></select>
436
+ </div>
437
+
438
+ <script>
439
+
440
+ (function() {
441
+
442
+ var notes,
443
+ notesValue,
444
+ currentState,
445
+ currentSlide,
446
+ upcomingSlide,
447
+ layoutLabel,
448
+ layoutDropdown,
449
+ pendingCalls = {},
450
+ lastRevealApiCallId = 0,
451
+ connected = false
452
+
453
+ var connectionStatus = document.querySelector( '#connection-status' );
454
+
455
+ var SPEAKER_LAYOUTS = {
456
+ 'default': 'Default',
457
+ 'wide': 'Wide',
458
+ 'tall': 'Tall',
459
+ 'notes-only': 'Notes only'
460
+ };
461
+
462
+ setupLayout();
463
+
464
+ let openerOrigin;
465
+
466
+ try {
467
+ openerOrigin = window.opener.location.origin;
468
+ }
469
+ catch ( error ) { console.warn( error ) }
470
+
471
+ // In order to prevent XSS, the speaker view will only run if its
472
+ // opener has the same origin as itself
473
+ if( window.location.origin !== openerOrigin ) {
474
+ connectionStatus.innerHTML = 'Cross origin error.<br>The speaker window can only be opened from the same origin.';
475
+ return;
476
+ }
477
+
478
+ var connectionTimeout = setTimeout( function() {
479
+ connectionStatus.innerHTML = 'Error connecting to main window.<br>Please try closing and reopening the speaker view.';
480
+ }, 5000 );
481
+
482
+ window.addEventListener( 'message', function( event ) {
483
+
484
+ // Validate the origin of all messages to avoid parsing messages
485
+ // that aren't meant for us. Ignore when running off file:// so
486
+ // that the speaker view continues to work without a web server.
487
+ if( window.location.origin !== event.origin && window.location.origin !== 'file://' ) {
488
+ return
489
+ }
490
+
491
+ clearTimeout( connectionTimeout );
492
+ connectionStatus.style.display = 'none';
493
+
494
+ var data = JSON.parse( event.data );
495
+
496
+ // The overview mode is only useful to the reveal.js instance
497
+ // where navigation occurs so we don't sync it
498
+ if( data.state ) delete data.state.overview;
499
+
500
+ // Messages sent by the notes plugin inside of the main window
501
+ if( data && data.namespace === 'reveal-notes' ) {
502
+ if( data.type === 'connect' ) {
503
+ handleConnectMessage( data );
504
+ }
505
+ else if( data.type === 'state' ) {
506
+ handleStateMessage( data );
507
+ }
508
+ else if( data.type === 'return' ) {
509
+ pendingCalls[data.callId](data.result);
510
+ delete pendingCalls[data.callId];
511
+ }
512
+ }
513
+ // Messages sent by the reveal.js inside of the current slide preview
514
+ else if( data && data.namespace === 'reveal' ) {
515
+ const supportedEvents = [
516
+ 'slidechanged',
517
+ 'fragmentshown',
518
+ 'fragmenthidden',
519
+ 'paused',
520
+ 'resumed',
521
+ 'previewiframe',
522
+ 'previewimage',
523
+ 'previewvideo',
524
+ 'closeoverlay'
525
+ ];
526
+
527
+ if( /ready/.test( data.eventName ) ) {
528
+ // Send a message back to notify that the handshake is complete
529
+ window.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'connected'} ), '*' );
530
+ }
531
+ else if( supportedEvents.includes( data.eventName ) && currentState !== JSON.stringify( data.state ) ) {
532
+ dispatchStateToMainWindow( data.state );
533
+ }
534
+ }
535
+
536
+ } );
537
+
538
+ /**
539
+ * Updates the presentation in the main window to match the state
540
+ * of the presentation in the notes window.
541
+ */
542
+ const dispatchStateToMainWindow = debounce(( state ) => {
543
+ window.opener.postMessage( JSON.stringify({ method: 'setState', args: [ state ]} ), '*' );
544
+ }, 500);
545
+
546
+ /**
547
+ * Asynchronously calls the Reveal.js API of the main frame.
548
+ */
549
+ function callRevealApi( methodName, methodArguments, callback ) {
550
+
551
+ var callId = ++lastRevealApiCallId;
552
+ pendingCalls[callId] = callback;
553
+ window.opener.postMessage( JSON.stringify( {
554
+ namespace: 'reveal-notes',
555
+ type: 'call',
556
+ callId: callId,
557
+ methodName: methodName,
558
+ arguments: methodArguments
559
+ } ), '*' );
560
+
561
+ }
562
+
563
+ /**
564
+ * Called when the main window is trying to establish a
565
+ * connection.
566
+ */
567
+ function handleConnectMessage( data ) {
568
+
569
+ if( connected === false ) {
570
+ connected = true;
571
+
572
+ setupIframes( data );
573
+ setupKeyboard();
574
+ setupNotes();
575
+ setupTimer();
576
+ setupHeartbeat();
577
+ }
578
+
579
+ }
580
+
581
+ /**
582
+ * Called when the main window sends an updated state.
583
+ */
584
+ function handleStateMessage( data ) {
585
+
586
+ // Store the most recently set state to avoid circular loops
587
+ // applying the same state
588
+ currentState = JSON.stringify( data.state );
589
+
590
+ // No need for updating the notes in case of fragment changes
591
+ if ( data.notes ) {
592
+ notes.classList.remove( 'hidden' );
593
+ notesValue.style.whiteSpace = data.whitespace;
594
+ if( data.markdown ) {
595
+ notesValue.innerHTML = marked.parse( data.notes );
596
+ }
597
+ else {
598
+ notesValue.innerHTML = data.notes;
599
+ }
600
+ }
601
+ else {
602
+ notes.classList.add( 'hidden' );
603
+ }
604
+
605
+ // Don't show lightboxes in the upcoming slide
606
+ const { previewVideo, previewImage, previewIframe, ...upcomingState } = data.state;
607
+
608
+ // Update the note slides
609
+ currentSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ data.state ] }), '*' );
610
+ upcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'setState', args: [ upcomingState ] }), '*' );
611
+ upcomingSlide.contentWindow.postMessage( JSON.stringify({ method: 'next' }), '*' );
612
+
613
+ }
614
+
615
+ // Limit to max one state update per X ms
616
+ handleStateMessage = debounce( handleStateMessage, 200 );
617
+
618
+ /**
619
+ * Forward keyboard events to the current slide window.
620
+ * This enables keyboard events to work even if focus
621
+ * isn't set on the current slide iframe.
622
+ *
623
+ * Block F5 default handling, it reloads and disconnects
624
+ * the speaker notes window.
625
+ */
626
+ function setupKeyboard() {
627
+
628
+ document.addEventListener( 'keydown', function( event ) {
629
+ if( event.keyCode === 116 || ( event.metaKey && event.keyCode === 82 ) ) {
630
+ event.preventDefault();
631
+ return false;
632
+ }
633
+ currentSlide.contentWindow.postMessage( JSON.stringify({ method: 'triggerKey', args: [ event.keyCode ] }), '*' );
634
+ } );
635
+
636
+ }
637
+
638
+ /**
639
+ * Creates the preview iframes.
640
+ */
641
+ function setupIframes( data ) {
642
+
643
+ var params = [
644
+ 'receiver',
645
+ 'progress=false',
646
+ 'history=false',
647
+ 'transition=none',
648
+ 'autoSlide=0',
649
+ 'backgroundTransition=none'
650
+ ].join( '&' );
651
+
652
+ var urlSeparator = /\\?/.test(data.url) ? '&' : '?';
653
+ var hash = '#/' + data.state.indexh + '/' + data.state.indexv;
654
+ var currentURL = data.url + urlSeparator + params + '&scrollActivationWidth=false&postMessageEvents=true' + hash;
655
+ var upcomingURL = data.url + urlSeparator + params + '&scrollActivationWidth=false&controls=false' + hash;
656
+
657
+ currentSlide = document.createElement( 'iframe' );
658
+ currentSlide.setAttribute( 'width', 1280 );
659
+ currentSlide.setAttribute( 'height', 1024 );
660
+ currentSlide.setAttribute( 'src', currentURL );
661
+ document.querySelector( '#current-slide' ).appendChild( currentSlide );
662
+
663
+ upcomingSlide = document.createElement( 'iframe' );
664
+ upcomingSlide.setAttribute( 'width', 640 );
665
+ upcomingSlide.setAttribute( 'height', 512 );
666
+ upcomingSlide.setAttribute( 'src', upcomingURL );
667
+ document.querySelector( '#upcoming-slide' ).appendChild( upcomingSlide );
668
+
669
+ }
670
+
671
+ /**
672
+ * Setup the notes UI.
673
+ */
674
+ function setupNotes() {
675
+
676
+ notes = document.querySelector( '.speaker-controls-notes' );
677
+ notesValue = document.querySelector( '.speaker-controls-notes .value' );
678
+
679
+ }
680
+
681
+ /**
682
+ * We send out a heartbeat at all times to ensure we can
683
+ * reconnect with the main presentation window after reloads.
684
+ */
685
+ function setupHeartbeat() {
686
+
687
+ setInterval( () => {
688
+ window.opener.postMessage( JSON.stringify({ namespace: 'reveal-notes', type: 'heartbeat'} ), '*' );
689
+ }, 1000 );
690
+
691
+ }
692
+
693
+ function getTimings( callback ) {
694
+
695
+ callRevealApi( 'getSlidesAttributes', [], function ( slideAttributes ) {
696
+ callRevealApi( 'getConfig', [], function ( config ) {
697
+ var totalTime = config.totalTime;
698
+ var minTimePerSlide = config.minimumTimePerSlide || 0;
699
+ var defaultTiming = config.defaultTiming;
700
+ if ((defaultTiming == null) && (totalTime == null)) {
701
+ callback(null);
702
+ return;
703
+ }
704
+ // Setting totalTime overrides defaultTiming
705
+ if (totalTime) {
706
+ defaultTiming = 0;
707
+ }
708
+ var timings = [];
709
+ for ( var i in slideAttributes ) {
710
+ var slide = slideAttributes[ i ];
711
+ var timing = defaultTiming;
712
+ if( slide.hasOwnProperty( 'data-timing' )) {
713
+ var t = slide[ 'data-timing' ];
714
+ timing = parseInt(t);
715
+ if( isNaN(timing) ) {
716
+ console.warn("Could not parse timing '" + t + "' of slide " + i + "; using default of " + defaultTiming);
717
+ timing = defaultTiming;
718
+ }
719
+ }
720
+ timings.push(timing);
721
+ }
722
+ if ( totalTime ) {
723
+ // After we've allocated time to individual slides, we summarize it and
724
+ // subtract it from the total time
725
+ var remainingTime = totalTime - timings.reduce( function(a, b) { return a + b; }, 0 );
726
+ // The remaining time is divided by the number of slides that have 0 seconds
727
+ // allocated at the moment, giving the average time-per-slide on the remaining slides
728
+ var remainingSlides = (timings.filter( function(x) { return x == 0 }) ).length
729
+ var timePerSlide = Math.round( remainingTime / remainingSlides, 0 )
730
+ // And now we replace every zero-value timing with that average
731
+ timings = timings.map( function(x) { return (x==0 ? timePerSlide : x) } );
732
+ }
733
+ var slidesUnderMinimum = timings.filter( function(x) { return (x < minTimePerSlide) } ).length
734
+ if ( slidesUnderMinimum ) {
735
+ message = "The pacing time for " + slidesUnderMinimum + " slide(s) is under the configured minimum of " + minTimePerSlide + " seconds. Check the data-timing attribute on individual slides, or consider increasing the totalTime or minimumTimePerSlide configuration options (or removing some slides).";
736
+ alert(message);
737
+ }
738
+ callback( timings );
739
+ } );
740
+ } );
741
+
742
+ }
743
+
744
+ /**
745
+ * Return the number of seconds allocated for presenting
746
+ * all slides up to and including this one.
747
+ */
748
+ function getTimeAllocated( timings, callback ) {
749
+
750
+ callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {
751
+ var allocated = 0;
752
+ for (var i in timings.slice(0, currentSlide + 1)) {
753
+ allocated += timings[i];
754
+ }
755
+ callback( allocated );
756
+ } );
757
+
758
+ }
759
+
760
+ /**
761
+ * Create the timer and clock and start updating them
762
+ * at an interval.
763
+ */
764
+ function setupTimer() {
765
+
766
+ var start = new Date(),
767
+ timeEl = document.querySelector( '.speaker-controls-time' ),
768
+ clockEl = timeEl.querySelector( '.clock-value' ),
769
+ hoursEl = timeEl.querySelector( '.hours-value' ),
770
+ minutesEl = timeEl.querySelector( '.minutes-value' ),
771
+ secondsEl = timeEl.querySelector( '.seconds-value' ),
772
+ pacingTitleEl = timeEl.querySelector( '.pacing-title' ),
773
+ pacingEl = timeEl.querySelector( '.pacing' ),
774
+ pacingHoursEl = pacingEl.querySelector( '.hours-value' ),
775
+ pacingMinutesEl = pacingEl.querySelector( '.minutes-value' ),
776
+ pacingSecondsEl = pacingEl.querySelector( '.seconds-value' );
777
+
778
+ var timings = null;
779
+ getTimings( function ( _timings ) {
780
+
781
+ timings = _timings;
782
+ if (_timings !== null) {
783
+ pacingTitleEl.style.removeProperty('display');
784
+ pacingEl.style.removeProperty('display');
785
+ }
786
+
787
+ // Update once directly
788
+ _updateTimer();
789
+
790
+ // Then update every second
791
+ setInterval( _updateTimer, 1000 );
792
+
793
+ } );
794
+
795
+
796
+ function _resetTimer() {
797
+
798
+ if (timings == null) {
799
+ start = new Date();
800
+ _updateTimer();
801
+ }
802
+ else {
803
+ // Reset timer to beginning of current slide
804
+ getTimeAllocated( timings, function ( slideEndTimingSeconds ) {
805
+ var slideEndTiming = slideEndTimingSeconds * 1000;
806
+ callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {
807
+ var currentSlideTiming = timings[currentSlide] * 1000;
808
+ var previousSlidesTiming = slideEndTiming - currentSlideTiming;
809
+ var now = new Date();
810
+ start = new Date(now.getTime() - previousSlidesTiming);
811
+ _updateTimer();
812
+ } );
813
+ } );
814
+ }
815
+
816
+ }
817
+
818
+ timeEl.addEventListener( 'click', function() {
819
+ _resetTimer();
820
+ return false;
821
+ } );
822
+
823
+ function _displayTime( hrEl, minEl, secEl, time) {
824
+
825
+ var sign = Math.sign(time) == -1 ? "-" : "";
826
+ time = Math.abs(Math.round(time / 1000));
827
+ var seconds = time % 60;
828
+ var minutes = Math.floor( time / 60 ) % 60 ;
829
+ var hours = Math.floor( time / ( 60 * 60 )) ;
830
+ hrEl.innerHTML = sign + zeroPadInteger( hours );
831
+ if (hours == 0) {
832
+ hrEl.classList.add( 'mute' );
833
+ }
834
+ else {
835
+ hrEl.classList.remove( 'mute' );
836
+ }
837
+ minEl.innerHTML = ':' + zeroPadInteger( minutes );
838
+ if (hours == 0 && minutes == 0) {
839
+ minEl.classList.add( 'mute' );
840
+ }
841
+ else {
842
+ minEl.classList.remove( 'mute' );
843
+ }
844
+ secEl.innerHTML = ':' + zeroPadInteger( seconds );
845
+ }
846
+
847
+ function _updateTimer() {
848
+
849
+ var diff, hours, minutes, seconds,
850
+ now = new Date();
851
+
852
+ diff = now.getTime() - start.getTime();
853
+
854
+ clockEl.innerHTML = now.toLocaleTimeString( 'en-US', { hour12: true, hour: '2-digit', minute:'2-digit' } );
855
+ _displayTime( hoursEl, minutesEl, secondsEl, diff );
856
+ if (timings !== null) {
857
+ _updatePacing(diff);
858
+ }
859
+
860
+ }
861
+
862
+ function _updatePacing(diff) {
863
+
864
+ getTimeAllocated( timings, function ( slideEndTimingSeconds ) {
865
+ var slideEndTiming = slideEndTimingSeconds * 1000;
866
+
867
+ callRevealApi( 'getSlidePastCount', [], function ( currentSlide ) {
868
+ var currentSlideTiming = timings[currentSlide] * 1000;
869
+ var timeLeftCurrentSlide = slideEndTiming - diff;
870
+ if (timeLeftCurrentSlide < 0) {
871
+ pacingEl.className = 'pacing behind';
872
+ }
873
+ else if (timeLeftCurrentSlide < currentSlideTiming) {
874
+ pacingEl.className = 'pacing on-track';
875
+ }
876
+ else {
877
+ pacingEl.className = 'pacing ahead';
878
+ }
879
+ _displayTime( pacingHoursEl, pacingMinutesEl, pacingSecondsEl, timeLeftCurrentSlide );
880
+ } );
881
+ } );
882
+ }
883
+
884
+ }
885
+
886
+ /**
887
+ * Sets up the speaker view layout and layout selector.
888
+ */
889
+ function setupLayout() {
890
+
891
+ layoutDropdown = document.querySelector( '.speaker-layout-dropdown' );
892
+ layoutLabel = document.querySelector( '.speaker-layout-label' );
893
+
894
+ // Render the list of available layouts
895
+ for( var id in SPEAKER_LAYOUTS ) {
896
+ var option = document.createElement( 'option' );
897
+ option.setAttribute( 'value', id );
898
+ option.textContent = SPEAKER_LAYOUTS[ id ];
899
+ layoutDropdown.appendChild( option );
900
+ }
901
+
902
+ // Monitor the dropdown for changes
903
+ layoutDropdown.addEventListener( 'change', function( event ) {
904
+
905
+ setLayout( layoutDropdown.value );
906
+
907
+ }, false );
908
+
909
+ // Restore any currently persisted layout
910
+ setLayout( getLayout() );
911
+
912
+ }
913
+
914
+ /**
915
+ * Sets a new speaker view layout. The layout is persisted
916
+ * in local storage.
917
+ */
918
+ function setLayout( value ) {
919
+
920
+ var title = SPEAKER_LAYOUTS[ value ];
921
+
922
+ layoutLabel.innerHTML = 'Layout' + ( title ? ( ': ' + title ) : '' );
923
+ layoutDropdown.value = value;
924
+
925
+ document.body.setAttribute( 'data-speaker-layout', value );
926
+
927
+ // Persist locally
928
+ if( supportsLocalStorage() ) {
929
+ window.localStorage.setItem( 'reveal-speaker-layout', value );
930
+ }
931
+
932
+ }
933
+
934
+ /**
935
+ * Returns the ID of the most recently set speaker layout
936
+ * or our default layout if none has been set.
937
+ */
938
+ function getLayout() {
939
+
940
+ if( supportsLocalStorage() ) {
941
+ var layout = window.localStorage.getItem( 'reveal-speaker-layout' );
942
+ if( layout ) {
943
+ return layout;
944
+ }
945
+ }
946
+
947
+ // Default to the first record in the layouts hash
948
+ for( var id in SPEAKER_LAYOUTS ) {
949
+ return id;
950
+ }
951
+
952
+ }
953
+
954
+ function supportsLocalStorage() {
955
+
956
+ try {
957
+ localStorage.setItem('test', 'test');
958
+ localStorage.removeItem('test');
959
+ return true;
960
+ }
961
+ catch( e ) {
962
+ return false;
963
+ }
964
+
965
+ }
966
+
967
+ function zeroPadInteger( num ) {
968
+
969
+ var str = '00' + parseInt( num );
970
+ return str.substring( str.length - 2 );
971
+
972
+ }
973
+
974
+ /**
975
+ * Limits the frequency at which a function can be called.
976
+ */
977
+ function debounce( fn, ms ) {
978
+
979
+ var lastTime = 0,
980
+ timeout;
981
+
982
+ return function() {
983
+
984
+ var args = arguments;
985
+ var context = this;
986
+
987
+ clearTimeout( timeout );
988
+
989
+ var timeSinceLastCall = Date.now() - lastTime;
990
+ if( timeSinceLastCall > ms ) {
991
+ fn.apply( context, args );
992
+ lastTime = Date.now();
993
+ }
994
+ else {
995
+ timeout = setTimeout( function() {
996
+ fn.apply( context, args );
997
+ lastTime = Date.now();
998
+ }, ms - timeSinceLastCall );
999
+ }
1000
+
1001
+ }
1002
+
1003
+ }
1004
+
1005
+ })();
1006
+
1007
+ <\/script>
1008
+ </body>
1009
+ </html>`;function ei(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var ze=ei();function fs(e){ze=e}var $e={exec:()=>null};function j(e,t=""){let i=typeof e=="string"?e:e.source,s={replace:(n,r)=>{let l=typeof r=="string"?r:r.source;return l=l.replace(ae.caret,"$1"),i=i.replace(n,l),s},getRegex:()=>new RegExp(i,t)};return s}var ba=(()=>{try{return!0}catch{return!1}})(),ae={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}#`),htmlBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:e=>RegExp(`^ {0,${Math.min(3,e-1)}}>`)},ka=/^(?:[ \t]*(?:\n|$))+/,ya=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,wa=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Je=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,xa=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,ti=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,vs=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,bs=j(vs).replace(/bull/g,ti).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Sa=j(vs).replace(/bull/g,ti).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),ii=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Ea=/^[^\n]+/,si=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Ra=j(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",si).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Aa=j(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,ti).getRegex(),mt="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",ni=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Ta=j("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",ni).replace("tag",mt).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),ks=j(ii).replace("hr",Je).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",mt).getRegex(),ri={blockquote:j(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",ks).getRegex(),code:ya,def:Ra,fences:wa,heading:xa,hr:Je,html:Ta,lheading:bs,list:Aa,newline:ka,paragraph:ks,table:$e,text:Ea},ys=j("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Je).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",mt).getRegex(),Ca={...ri,lheading:Sa,table:ys,paragraph:j(ii).replace("hr",Je).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",ys).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",mt).getRegex()},La={...ri,html:j(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",ni).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:$e,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:j(ii).replace("hr",Je).replace("heading",` *#{1,6} *[^
1010
+ ]`).replace("lheading",bs).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Pa=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Ia=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,ws=/^( {2,}|\\)\n(?!\s*$)/,Ma=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,ft=/[\p{P}\p{S}]/u,ai=/[\s\p{P}\p{S}]/u,xs=/[^\s\p{P}\p{S}]/u,Na=j(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,ai).getRegex(),Ss=/(?!~)[\p{P}\p{S}]/u,za=/(?!~)[\s\p{P}\p{S}]/u,$a=/(?:[^\s\p{P}\p{S}]|~)/u,Es=/(?![*_])[\p{P}\p{S}]/u,Ba=/(?![*_])[\s\p{P}\p{S}]/u,Da=/(?:[^\s\p{P}\p{S}]|[*_])/u,Ha=j(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",ba?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Rs=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,_a=j(Rs,"u").replace(/punct/g,ft).getRegex(),qa=j(Rs,"u").replace(/punct/g,Ss).getRegex(),As="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",ja=j(As,"gu").replace(/notPunctSpace/g,xs).replace(/punctSpace/g,ai).replace(/punct/g,ft).getRegex(),Oa=j(As,"gu").replace(/notPunctSpace/g,$a).replace(/punctSpace/g,za).replace(/punct/g,Ss).getRegex(),Fa=j("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,xs).replace(/punctSpace/g,ai).replace(/punct/g,ft).getRegex(),Va=j(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,Es).getRegex(),Ua=j("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)","gu").replace(/notPunctSpace/g,Da).replace(/punctSpace/g,Ba).replace(/punct/g,Es).getRegex(),Wa=j(/\\(punct)/,"gu").replace(/punct/g,ft).getRegex(),Ka=j(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Za=j(ni).replace("(?:-->|$)","-->").getRegex(),Qa=j("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",Za).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),vt=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,Xa=j(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",vt).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Ts=j(/^!?\[(label)\]\[(ref)\]/).replace("label",vt).replace("ref",si).getRegex(),Cs=j(/^!?\[(ref)\](?:\[\])?/).replace("ref",si).getRegex(),Ja=j("reflink|nolink(?!\\()","g").replace("reflink",Ts).replace("nolink",Cs).getRegex(),Ls=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,li={_backpedal:$e,anyPunctuation:Wa,autolink:Ka,blockSkip:Ha,br:ws,code:Ia,del:$e,delLDelim:$e,delRDelim:$e,emStrongLDelim:_a,emStrongRDelimAst:ja,emStrongRDelimUnd:Fa,escape:Pa,link:Xa,nolink:Cs,punctuation:Na,reflink:Ts,reflinkSearch:Ja,tag:Qa,text:Ma,url:$e},Ya={...li,link:j(/^!?\[(label)\]\((.*?)\)/).replace("label",vt).getRegex(),reflink:j(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",vt).getRegex()},oi={...li,emStrongRDelimAst:Oa,emStrongLDelim:qa,delLDelim:Va,delRDelim:Ua,url:j(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Ls).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:j(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",Ls).getRegex()},Ga={...oi,br:j(ws).replace("{2,}","*").getRegex(),text:j(oi.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},bt={normal:ri,gfm:Ca,pedantic:La},Ye={normal:li,gfm:oi,breaks:Ga,pedantic:Ya},el={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Ps=e=>el[e];function fe(e,t){if(t){if(ae.escapeTest.test(e))return e.replace(ae.escapeReplace,Ps)}else if(ae.escapeTestNoEncode.test(e))return e.replace(ae.escapeReplaceNoEncode,Ps);return e}function Is(e){try{e=encodeURI(e).replace(ae.percentDecode,"%")}catch{return null}return e}function Ms(e,t){var n;let i=e.replace(ae.findPipe,(r,l,a)=>{let c=!1,o=l;for(;--o>=0&&a[o]==="\\";)c=!c;return c?"|":" |"}).split(ae.splitPipe),s=0;if(i[0].trim()||i.shift(),i.length>0&&!((n=i.at(-1))!=null&&n.trim())&&i.pop(),t)if(i.length>t)i.splice(t);else for(;i.length<t;)i.push("");for(;s<i.length;s++)i[s]=i[s].trim().replace(ae.slashPipe,"|");return i}function Ge(e,t,i){let s=e.length;if(s===0)return"";let n=0;for(;n<s&&e.charAt(s-n-1)===t;)n++;return e.slice(0,s-n)}function tl(e,t){if(e.indexOf(t[1])===-1)return-1;let i=0;for(let s=0;s<e.length;s++)if(e[s]==="\\")s++;else if(e[s]===t[0])i++;else if(e[s]===t[1]&&(i--,i<0))return s;return i>0?-2:-1}function il(e,t=0){let i=t,s="";for(let n of e)if(n===" "){let r=4-i%4;s+=" ".repeat(r),i+=r}else s+=n,i++;return s}function Ns(e,t,i,s,n){let r=t.href,l=t.title||null,a=e[1].replace(n.other.outputLinkReplace,"$1");s.state.inLink=!0;let c={type:e[0].charAt(0)==="!"?"image":"link",raw:i,href:r,title:l,text:a,tokens:s.inlineTokens(a)};return s.state.inLink=!1,c}function sl(e,t,i){let s=e.match(i.other.indentCodeCompensation);if(s===null)return t;let n=s[1];return t.split(`
1011
+ `).map(r=>{let l=r.match(i.other.beginningSpace);if(l===null)return r;let[a]=l;return a.length>=n.length?r.slice(n.length):r}).join(`
1012
+ `)}var kt=class{constructor(e){I(this,"options");I(this,"rules");I(this,"lexer");this.options=e||ze}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:"space",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let i=t[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t[0],codeBlockStyle:"indented",text:this.options.pedantic?i:Ge(i,`
1013
+ `)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let i=t[0],s=sl(i,t[3]||"",this.rules);return{type:"code",raw:i,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):t[2],text:s}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let i=t[2].trim();if(this.rules.other.endingHash.test(i)){let s=Ge(i,"#");(this.options.pedantic||!s||this.rules.other.endingSpaceChar.test(s))&&(i=s.trim())}return{type:"heading",raw:t[0],depth:t[1].length,text:i,tokens:this.lexer.inline(i)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:"hr",raw:Ge(t[0],`
1014
+ `)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let i=Ge(t[0],`
1015
+ `).split(`
1016
+ `),s="",n="",r=[];for(;i.length>0;){let l=!1,a=[],c;for(c=0;c<i.length;c++)if(this.rules.other.blockquoteStart.test(i[c]))a.push(i[c]),l=!0;else if(!l)a.push(i[c]);else break;i=i.slice(c);let o=a.join(`
1017
+ `),u=o.replace(this.rules.other.blockquoteSetextReplace,`
1018
+ $1`).replace(this.rules.other.blockquoteSetextReplace2,"");s=s?`${s}
1019
+ ${o}`:o,n=n?`${n}
1020
+ ${u}`:u;let h=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(u,r,!0),this.lexer.state.top=h,i.length===0)break;let g=r.at(-1);if((g==null?void 0:g.type)==="code")break;if((g==null?void 0:g.type)==="blockquote"){let p=g,d=p.raw+`
1021
+ `+i.join(`
1022
+ `),b=this.blockquote(d);r[r.length-1]=b,s=s.substring(0,s.length-p.raw.length)+b.raw,n=n.substring(0,n.length-p.text.length)+b.text;break}else if((g==null?void 0:g.type)==="list"){let p=g,d=p.raw+`
1023
+ `+i.join(`
1024
+ `),b=this.list(d);r[r.length-1]=b,s=s.substring(0,s.length-g.raw.length)+b.raw,n=n.substring(0,n.length-p.raw.length)+b.raw,i=d.substring(r.at(-1).raw.length).split(`
1025
+ `);continue}}return{type:"blockquote",raw:s,tokens:r,text:n}}}list(e){var i,s;let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim(),r=n.length>1,l={type:"list",raw:"",ordered:r,start:r?+n.slice(0,-1):"",loose:!1,items:[]};n=r?`\\d{1,9}\\${n.slice(-1)}`:`\\${n}`,this.options.pedantic&&(n=r?n:"[*+-]");let a=this.rules.other.listItemRegex(n),c=!1;for(;e;){let u=!1,h="",g="";if(!(t=a.exec(e))||this.rules.block.hr.test(e))break;h=t[0],e=e.substring(h.length);let p=il(t[2].split(`
1026
+ `,1)[0],t[1].length),d=e.split(`
1027
+ `,1)[0],b=!p.trim(),y=0;if(this.options.pedantic?(y=2,g=p.trimStart()):b?y=t[1].length+1:(y=p.search(this.rules.other.nonSpaceChar),y=y>4?1:y,g=p.slice(y),y+=t[1].length),b&&this.rules.other.blankLine.test(d)&&(h+=d+`
1028
+ `,e=e.substring(d.length+1),u=!0),!u){let z=this.rules.other.nextBulletRegex(y),D=this.rules.other.hrRegex(y),L=this.rules.other.fencesBeginRegex(y),A=this.rules.other.headingBeginRegex(y),S=this.rules.other.htmlBeginRegex(y),P=this.rules.other.blockquoteBeginRegex(y);for(;e;){let $=e.split(`
1029
+ `,1)[0],_;if(d=$,this.options.pedantic?(d=d.replace(this.rules.other.listReplaceNesting," "),_=d):_=d.replace(this.rules.other.tabCharGlobal," "),L.test(d)||A.test(d)||S.test(d)||P.test(d)||z.test(d)||D.test(d))break;if(_.search(this.rules.other.nonSpaceChar)>=y||!d.trim())g+=`
1030
+ `+_.slice(y);else{if(b||p.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||L.test(p)||A.test(p)||D.test(p))break;g+=`
1031
+ `+d}b=!d.trim(),h+=$+`
1032
+ `,e=e.substring($.length+1),p=_.slice(y)}}l.loose||(c?l.loose=!0:this.rules.other.doubleBlankLine.test(h)&&(c=!0)),l.items.push({type:"list_item",raw:h,task:!!this.options.gfm&&this.rules.other.listIsTask.test(g),loose:!1,text:g,tokens:[]}),l.raw+=h}let o=l.items.at(-1);if(o)o.raw=o.raw.trimEnd(),o.text=o.text.trimEnd();else return;l.raw=l.raw.trimEnd();for(let u of l.items){if(this.lexer.state.top=!1,u.tokens=this.lexer.blockTokens(u.text,[]),u.task){if(u.text=u.text.replace(this.rules.other.listReplaceTask,""),((i=u.tokens[0])==null?void 0:i.type)==="text"||((s=u.tokens[0])==null?void 0:s.type)==="paragraph"){u.tokens[0].raw=u.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),u.tokens[0].text=u.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let g=this.lexer.inlineQueue.length-1;g>=0;g--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[g].src)){this.lexer.inlineQueue[g].src=this.lexer.inlineQueue[g].src.replace(this.rules.other.listReplaceTask,"");break}}let h=this.rules.other.listTaskCheckbox.exec(u.raw);if(h){let g={type:"checkbox",raw:h[0]+" ",checked:h[0]!=="[ ]"};u.checked=g.checked,l.loose?u.tokens[0]&&["paragraph","text"].includes(u.tokens[0].type)&&"tokens"in u.tokens[0]&&u.tokens[0].tokens?(u.tokens[0].raw=g.raw+u.tokens[0].raw,u.tokens[0].text=g.raw+u.tokens[0].text,u.tokens[0].tokens.unshift(g)):u.tokens.unshift({type:"paragraph",raw:g.raw,text:g.raw,tokens:[g]}):u.tokens.unshift(g)}}if(!l.loose){let h=u.tokens.filter(g=>g.type==="space");l.loose=h.length>0&&h.some(g=>this.rules.other.anyLine.test(g.raw))}}if(l.loose)for(let u of l.items){u.loose=!0;for(let h of u.tokens)h.type==="text"&&(h.type="paragraph")}return l}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:"html",block:!0,raw:t[0],pre:t[1]==="pre"||t[1]==="script"||t[1]==="style",text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let i=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),s=t[2]?t[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",n=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):t[3];return{type:"def",tag:i,raw:t[0],href:s,title:n}}}table(e){var l;let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let i=Ms(t[1]),s=t[2].replace(this.rules.other.tableAlignChars,"").split("|"),n=(l=t[3])!=null&&l.trim()?t[3].replace(this.rules.other.tableRowBlankLine,"").split(`
1033
+ `):[],r={type:"table",raw:t[0],header:[],align:[],rows:[]};if(i.length===s.length){for(let a of s)this.rules.other.tableAlignRight.test(a)?r.align.push("right"):this.rules.other.tableAlignCenter.test(a)?r.align.push("center"):this.rules.other.tableAlignLeft.test(a)?r.align.push("left"):r.align.push(null);for(let a=0;a<i.length;a++)r.header.push({text:i[a],tokens:this.lexer.inline(i[a]),header:!0,align:r.align[a]});for(let a of n)r.rows.push(Ms(a,r.header.length).map((c,o)=>({text:c,tokens:this.lexer.inline(c),header:!1,align:r.align[o]})));return r}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[2].charAt(0)==="="?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let i=t[1].charAt(t[1].length-1)===`
1034
+ `?t[1].slice(0,-1):t[1];return{type:"paragraph",raw:t[0],text:i,tokens:this.lexer.inline(i)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:"text",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:"escape",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let i=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(i)){if(!this.rules.other.endAngleBracket.test(i))return;let r=Ge(i.slice(0,-1),"\\");if((i.length-r.length)%2==0)return}else{let r=tl(t[2],"()");if(r===-2)return;if(r>-1){let l=(t[0].indexOf("!")===0?5:4)+t[1].length+r;t[2]=t[2].substring(0,r),t[0]=t[0].substring(0,l).trim(),t[3]=""}}let s=t[2],n="";if(this.options.pedantic){let r=this.rules.other.pedanticHrefTitle.exec(s);r&&(s=r[1],n=r[3])}else n=t[3]?t[3].slice(1,-1):"";return s=s.trim(),this.rules.other.startAngleBracket.test(s)&&(s=this.options.pedantic&&!this.rules.other.endAngleBracket.test(i)?s.slice(1):s.slice(1,-1)),Ns(t,{href:s&&s.replace(this.rules.inline.anyPunctuation,"$1"),title:n&&n.replace(this.rules.inline.anyPunctuation,"$1")},t[0],this.lexer,this.rules)}}reflink(e,t){let i;if((i=this.rules.inline.reflink.exec(e))||(i=this.rules.inline.nolink.exec(e))){let s=t[(i[2]||i[1]).replace(this.rules.other.multipleSpaceGlobal," ").toLowerCase()];if(!s){let n=i[0].charAt(0);return{type:"text",raw:n,text:n}}return Ns(i,s,i[0],this.lexer,this.rules)}}emStrong(e,t,i=""){let s=this.rules.inline.emStrongLDelim.exec(e);if(!(!s||s[3]&&i.match(this.rules.other.unicodeAlphaNumeric))&&(!(s[1]||s[2])||!i||this.rules.inline.punctuation.exec(i))){let n=[...s[0]].length-1,r,l,a=n,c=0,o=s[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(o.lastIndex=0,t=t.slice(-1*e.length+n);(s=o.exec(t))!=null;){if(r=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!r)continue;if(l=[...r].length,s[3]||s[4]){a+=l;continue}else if((s[5]||s[6])&&n%3&&!((n+l)%3)){c+=l;continue}if(a-=l,a>0)continue;l=Math.min(l,l+a+c);let u=[...s[0]][0].length,h=e.slice(0,n+s.index+u+l);if(Math.min(n,l)%2){let p=h.slice(1,-1);return{type:"em",raw:h,text:p,tokens:this.lexer.inlineTokens(p)}}let g=h.slice(2,-2);return{type:"strong",raw:h,text:g,tokens:this.lexer.inlineTokens(g)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let i=t[2].replace(this.rules.other.newLineCharGlobal," "),s=this.rules.other.nonSpaceChar.test(i),n=this.rules.other.startingSpaceChar.test(i)&&this.rules.other.endingSpaceChar.test(i);return s&&n&&(i=i.substring(1,i.length-1)),{type:"codespan",raw:t[0],text:i}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:"br",raw:t[0]}}del(e,t,i=""){let s=this.rules.inline.delLDelim.exec(e);if(s&&(!s[1]||!i||this.rules.inline.punctuation.exec(i))){let n=[...s[0]].length-1,r,l,a=n,c=this.rules.inline.delRDelim;for(c.lastIndex=0,t=t.slice(-1*e.length+n);(s=c.exec(t))!=null;){if(r=s[1]||s[2]||s[3]||s[4]||s[5]||s[6],!r||(l=[...r].length,l!==n))continue;if(s[3]||s[4]){a+=l;continue}if(a-=l,a>0)continue;l=Math.min(l,l+a);let o=[...s[0]][0].length,u=e.slice(0,n+s.index+o+l),h=u.slice(n,-n);return{type:"del",raw:u,text:h,tokens:this.lexer.inlineTokens(h)}}}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let i,s;return t[2]==="@"?(i=t[1],s="mailto:"+i):(i=t[1],s=i),{type:"link",raw:t[0],text:i,href:s,tokens:[{type:"text",raw:i,text:i}]}}}url(e){var i;let t;if(t=this.rules.inline.url.exec(e)){let s,n;if(t[2]==="@")s=t[0],n="mailto:"+s;else{let r;do r=t[0],t[0]=((i=this.rules.inline._backpedal.exec(t[0]))==null?void 0:i[0])??"";while(r!==t[0]);s=t[0],n=t[1]==="www."?"http://"+t[0]:t[0]}return{type:"link",raw:t[0],text:s,href:n,tokens:[{type:"text",raw:s,text:s}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let i=this.lexer.state.inRawBlock;return{type:"text",raw:t[0],text:t[0],escaped:i}}}},ue=class Ii{constructor(t){I(this,"tokens");I(this,"options");I(this,"state");I(this,"inlineQueue");I(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=t||ze,this.options.tokenizer=this.options.tokenizer||new kt,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let i={other:ae,block:bt.normal,inline:Ye.normal};this.options.pedantic?(i.block=bt.pedantic,i.inline=Ye.pedantic):this.options.gfm&&(i.block=bt.gfm,this.options.breaks?i.inline=Ye.breaks:i.inline=Ye.gfm),this.tokenizer.rules=i}static get rules(){return{block:bt,inline:Ye}}static lex(t,i){return new Ii(i).lex(t)}static lexInline(t,i){return new Ii(i).inlineTokens(t)}lex(t){t=t.replace(ae.carriageReturn,`
1035
+ `),this.blockTokens(t,this.tokens);for(let i=0;i<this.inlineQueue.length;i++){let s=this.inlineQueue[i];this.inlineTokens(s.src,s.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(t,i=[],s=!1){var n,r,l;for(this.options.pedantic&&(t=t.replace(ae.tabCharGlobal," ").replace(ae.spaceLine,""));t;){let a;if((r=(n=this.options.extensions)==null?void 0:n.block)!=null&&r.some(o=>(a=o.call({lexer:this},t,i))?(t=t.substring(a.raw.length),i.push(a),!0):!1))continue;if(a=this.tokenizer.space(t)){t=t.substring(a.raw.length);let o=i.at(-1);a.raw.length===1&&o!==void 0?o.raw+=`
1036
+ `:i.push(a);continue}if(a=this.tokenizer.code(t)){t=t.substring(a.raw.length);let o=i.at(-1);(o==null?void 0:o.type)==="paragraph"||(o==null?void 0:o.type)==="text"?(o.raw+=(o.raw.endsWith(`
1037
+ `)?"":`
1038
+ `)+a.raw,o.text+=`
1039
+ `+a.text,this.inlineQueue.at(-1).src=o.text):i.push(a);continue}if(a=this.tokenizer.fences(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.heading(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.hr(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.blockquote(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.list(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.html(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.def(t)){t=t.substring(a.raw.length);let o=i.at(-1);(o==null?void 0:o.type)==="paragraph"||(o==null?void 0:o.type)==="text"?(o.raw+=(o.raw.endsWith(`
1040
+ `)?"":`
1041
+ `)+a.raw,o.text+=`
1042
+ `+a.raw,this.inlineQueue.at(-1).src=o.text):this.tokens.links[a.tag]||(this.tokens.links[a.tag]={href:a.href,title:a.title},i.push(a));continue}if(a=this.tokenizer.table(t)){t=t.substring(a.raw.length),i.push(a);continue}if(a=this.tokenizer.lheading(t)){t=t.substring(a.raw.length),i.push(a);continue}let c=t;if((l=this.options.extensions)!=null&&l.startBlock){let o=1/0,u=t.slice(1),h;this.options.extensions.startBlock.forEach(g=>{h=g.call({lexer:this},u),typeof h=="number"&&h>=0&&(o=Math.min(o,h))}),o<1/0&&o>=0&&(c=t.substring(0,o+1))}if(this.state.top&&(a=this.tokenizer.paragraph(c))){let o=i.at(-1);s&&(o==null?void 0:o.type)==="paragraph"?(o.raw+=(o.raw.endsWith(`
1043
+ `)?"":`
1044
+ `)+a.raw,o.text+=`
1045
+ `+a.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):i.push(a),s=c.length!==t.length,t=t.substring(a.raw.length);continue}if(a=this.tokenizer.text(t)){t=t.substring(a.raw.length);let o=i.at(-1);(o==null?void 0:o.type)==="text"?(o.raw+=(o.raw.endsWith(`
1046
+ `)?"":`
1047
+ `)+a.raw,o.text+=`
1048
+ `+a.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):i.push(a);continue}if(t){let o="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw Error(o)}}return this.state.top=!0,i}inline(t,i=[]){return this.inlineQueue.push({src:t,tokens:i}),i}inlineTokens(t,i=[]){var c,o,u,h,g;let s=t,n=null;if(this.tokens.links){let p=Object.keys(this.tokens.links);if(p.length>0)for(;(n=this.tokenizer.rules.inline.reflinkSearch.exec(s))!=null;)p.includes(n[0].slice(n[0].lastIndexOf("[")+1,-1))&&(s=s.slice(0,n.index)+"["+"a".repeat(n[0].length-2)+"]"+s.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(n=this.tokenizer.rules.inline.anyPunctuation.exec(s))!=null;)s=s.slice(0,n.index)+"++"+s.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let r;for(;(n=this.tokenizer.rules.inline.blockSkip.exec(s))!=null;)r=n[2]?n[2].length:0,s=s.slice(0,n.index+r)+"["+"a".repeat(n[0].length-r-2)+"]"+s.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);s=((o=(c=this.options.hooks)==null?void 0:c.emStrongMask)==null?void 0:o.call({lexer:this},s))??s;let l=!1,a="";for(;t;){l||(a=""),l=!1;let p;if((h=(u=this.options.extensions)==null?void 0:u.inline)!=null&&h.some(b=>(p=b.call({lexer:this},t,i))?(t=t.substring(p.raw.length),i.push(p),!0):!1))continue;if(p=this.tokenizer.escape(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.tag(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.link(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.reflink(t,this.tokens.links)){t=t.substring(p.raw.length);let b=i.at(-1);p.type==="text"&&(b==null?void 0:b.type)==="text"?(b.raw+=p.raw,b.text+=p.text):i.push(p);continue}if(p=this.tokenizer.emStrong(t,s,a)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.codespan(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.br(t)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.del(t,s,a)){t=t.substring(p.raw.length),i.push(p);continue}if(p=this.tokenizer.autolink(t)){t=t.substring(p.raw.length),i.push(p);continue}if(!this.state.inLink&&(p=this.tokenizer.url(t))){t=t.substring(p.raw.length),i.push(p);continue}let d=t;if((g=this.options.extensions)!=null&&g.startInline){let b=1/0,y=t.slice(1),z;this.options.extensions.startInline.forEach(D=>{z=D.call({lexer:this},y),typeof z=="number"&&z>=0&&(b=Math.min(b,z))}),b<1/0&&b>=0&&(d=t.substring(0,b+1))}if(p=this.tokenizer.inlineText(d)){t=t.substring(p.raw.length),p.raw.slice(-1)!=="_"&&(a=p.raw.slice(-1)),l=!0;let b=i.at(-1);(b==null?void 0:b.type)==="text"?(b.raw+=p.raw,b.text+=p.text):i.push(p);continue}if(t){let b="Infinite loop on byte: "+t.charCodeAt(0);if(this.options.silent){console.error(b);break}else throw Error(b)}}return i}},yt=class{constructor(e){I(this,"options");I(this,"parser");this.options=e||ze}space(e){return""}code({text:e,lang:t,escaped:i}){var r;let s=(r=(t||"").match(ae.notSpaceStart))==null?void 0:r[0],n=e.replace(ae.endingNewline,"")+`
1049
+ `;return s?'<pre><code class="language-'+fe(s)+'">'+(i?n:fe(n,!0))+`</code></pre>
1050
+ `:"<pre><code>"+(i?n:fe(n,!0))+`</code></pre>
1051
+ `}blockquote({tokens:e}){return`<blockquote>
1052
+ ${this.parser.parse(e)}</blockquote>
1053
+ `}html({text:e}){return e}def(e){return""}heading({tokens:e,depth:t}){return`<h${t}>${this.parser.parseInline(e)}</h${t}>
1054
+ `}hr(e){return`<hr>
1055
+ `}list(e){let t=e.ordered,i=e.start,s="";for(let l=0;l<e.items.length;l++){let a=e.items[l];s+=this.listitem(a)}let n=t?"ol":"ul",r=t&&i!==1?' start="'+i+'"':"";return"<"+n+r+`>
1056
+ `+s+"</"+n+`>
1057
+ `}listitem(e){return`<li>${this.parser.parse(e.tokens)}</li>
1058
+ `}checkbox({checked:e}){return"<input "+(e?'checked="" ':"")+'disabled="" type="checkbox"> '}paragraph({tokens:e}){return`<p>${this.parser.parseInline(e)}</p>
1059
+ `}table(e){let t="",i="";for(let n=0;n<e.header.length;n++)i+=this.tablecell(e.header[n]);t+=this.tablerow({text:i});let s="";for(let n=0;n<e.rows.length;n++){let r=e.rows[n];i="";for(let l=0;l<r.length;l++)i+=this.tablecell(r[l]);s+=this.tablerow({text:i})}return s&&(s=`<tbody>${s}</tbody>`),`<table>
1060
+ <thead>
1061
+ `+t+`</thead>
1062
+ `+s+`</table>
1063
+ `}tablerow({text:e}){return`<tr>
1064
+ ${e}</tr>
1065
+ `}tablecell(e){let t=this.parser.parseInline(e.tokens),i=e.header?"th":"td";return(e.align?`<${i} align="${e.align}">`:`<${i}>`)+t+`</${i}>
1066
+ `}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${fe(e,!0)}</code>`}br(e){return"<br>"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:i}){let s=this.parser.parseInline(i),n=Is(e);if(n===null)return s;e=n;let r='<a href="'+e+'"';return t&&(r+=' title="'+fe(t)+'"'),r+=">"+s+"</a>",r}image({href:e,title:t,text:i,tokens:s}){s&&(i=this.parser.parseInline(s,this.parser.textRenderer));let n=Is(e);if(n===null)return fe(i);e=n;let r=`<img src="${e}" alt="${fe(i)}"`;return t&&(r+=` title="${fe(t)}"`),r+=">",r}text(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:fe(e.text)}},ci=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return""+e}image({text:e}){return""+e}br(){return""}checkbox({raw:e}){return e}},he=class Mi{constructor(t){I(this,"options");I(this,"renderer");I(this,"textRenderer");this.options=t||ze,this.options.renderer=this.options.renderer||new yt,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new ci}static parse(t,i){return new Mi(i).parse(t)}static parseInline(t,i){return new Mi(i).parseInline(t)}parse(t){var s,n;let i="";for(let r=0;r<t.length;r++){let l=t[r];if((n=(s=this.options.extensions)==null?void 0:s.renderers)!=null&&n[l.type]){let c=l,o=this.options.extensions.renderers[c.type].call({parser:this},c);if(o!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(c.type)){i+=o||"";continue}}let a=l;switch(a.type){case"space":i+=this.renderer.space(a);break;case"hr":i+=this.renderer.hr(a);break;case"heading":i+=this.renderer.heading(a);break;case"code":i+=this.renderer.code(a);break;case"table":i+=this.renderer.table(a);break;case"blockquote":i+=this.renderer.blockquote(a);break;case"list":i+=this.renderer.list(a);break;case"checkbox":i+=this.renderer.checkbox(a);break;case"html":i+=this.renderer.html(a);break;case"def":i+=this.renderer.def(a);break;case"paragraph":i+=this.renderer.paragraph(a);break;case"text":i+=this.renderer.text(a);break;default:{let c='Token with "'+a.type+'" type was not found.';if(this.options.silent)return console.error(c),"";throw Error(c)}}}return i}parseInline(t,i=this.renderer){var n,r;let s="";for(let l=0;l<t.length;l++){let a=t[l];if((r=(n=this.options.extensions)==null?void 0:n.renderers)!=null&&r[a.type]){let o=this.options.extensions.renderers[a.type].call({parser:this},a);if(o!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(a.type)){s+=o||"";continue}}let c=a;switch(c.type){case"escape":s+=i.text(c);break;case"html":s+=i.html(c);break;case"link":s+=i.link(c);break;case"image":s+=i.image(c);break;case"checkbox":s+=i.checkbox(c);break;case"strong":s+=i.strong(c);break;case"em":s+=i.em(c);break;case"codespan":s+=i.codespan(c);break;case"br":s+=i.br(c);break;case"del":s+=i.del(c);break;case"text":s+=i.text(c);break;default:{let o='Token with "'+c.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw Error(o)}}}return s}},et=(xt=class{constructor(e){I(this,"options");I(this,"block");this.options=e||ze}preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(){return this.block?ue.lex:ue.lexInline}provideParser(){return this.block?he.parse:he.parseInline}},I(xt,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),I(xt,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),xt),Be=new class{constructor(...e){I(this,"defaults",ei());I(this,"options",this.setOptions);I(this,"parse",this.parseMarkdown(!0));I(this,"parseInline",this.parseMarkdown(!1));I(this,"Parser",he);I(this,"Renderer",yt);I(this,"TextRenderer",ci);I(this,"Lexer",ue);I(this,"Tokenizer",kt);I(this,"Hooks",et);this.use(...e)}walkTokens(e,t){var s,n;let i=[];for(let r of e)switch(i=i.concat(t.call(this,r)),r.type){case"table":{let l=r;for(let a of l.header)i=i.concat(this.walkTokens(a.tokens,t));for(let a of l.rows)for(let c of a)i=i.concat(this.walkTokens(c.tokens,t));break}case"list":{let l=r;i=i.concat(this.walkTokens(l.items,t));break}default:{let l=r;(n=(s=this.defaults.extensions)==null?void 0:s.childTokens)!=null&&n[l.type]?this.defaults.extensions.childTokens[l.type].forEach(a=>{let c=l[a].flat(1/0);i=i.concat(this.walkTokens(c,t))}):l.tokens&&(i=i.concat(this.walkTokens(l.tokens,t)))}}return i}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(i=>{let s={...i};if(s.async=this.defaults.async||s.async||!1,i.extensions&&(i.extensions.forEach(n=>{if(!n.name)throw Error("extension name required");if("renderer"in n){let r=t.renderers[n.name];r?t.renderers[n.name]=function(...l){let a=n.renderer.apply(this,l);return a===!1&&(a=r.apply(this,l)),a}:t.renderers[n.name]=n.renderer}if("tokenizer"in n){if(!n.level||n.level!=="block"&&n.level!=="inline")throw Error("extension level must be 'block' or 'inline'");let r=t[n.level];r?r.unshift(n.tokenizer):t[n.level]=[n.tokenizer],n.start&&(n.level==="block"?t.startBlock?t.startBlock.push(n.start):t.startBlock=[n.start]:n.level==="inline"&&(t.startInline?t.startInline.push(n.start):t.startInline=[n.start]))}"childTokens"in n&&n.childTokens&&(t.childTokens[n.name]=n.childTokens)}),s.extensions=t),i.renderer){let n=this.defaults.renderer||new yt(this.defaults);for(let r in i.renderer){if(!(r in n))throw Error(`renderer '${r}' does not exist`);if(["options","parser"].includes(r))continue;let l=r,a=i.renderer[l],c=n[l];n[l]=(...o)=>{let u=a.apply(n,o);return u===!1&&(u=c.apply(n,o)),u||""}}s.renderer=n}if(i.tokenizer){let n=this.defaults.tokenizer||new kt(this.defaults);for(let r in i.tokenizer){if(!(r in n))throw Error(`tokenizer '${r}' does not exist`);if(["options","rules","lexer"].includes(r))continue;let l=r,a=i.tokenizer[l],c=n[l];n[l]=(...o)=>{let u=a.apply(n,o);return u===!1&&(u=c.apply(n,o)),u}}s.tokenizer=n}if(i.hooks){let n=this.defaults.hooks||new et;for(let r in i.hooks){if(!(r in n))throw Error(`hook '${r}' does not exist`);if(["options","block"].includes(r))continue;let l=r,a=i.hooks[l],c=n[l];et.passThroughHooks.has(r)?n[l]=o=>{if(this.defaults.async&&et.passThroughHooksRespectAsync.has(r))return(async()=>{let h=await a.call(n,o);return c.call(n,h)})();let u=a.call(n,o);return c.call(n,u)}:n[l]=(...o)=>{if(this.defaults.async)return(async()=>{let h=await a.apply(n,o);return h===!1&&(h=await c.apply(n,o)),h})();let u=a.apply(n,o);return u===!1&&(u=c.apply(n,o)),u}}s.hooks=n}if(i.walkTokens){let n=this.defaults.walkTokens,r=i.walkTokens;s.walkTokens=function(l){let a=[];return a.push(r.call(this,l)),n&&(a=a.concat(n.call(this,l))),a}}this.defaults={...this.defaults,...s}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return ue.lex(e,t??this.defaults)}parser(e,t){return he.parse(e,t??this.defaults)}parseMarkdown(e){return(t,i)=>{let s={...i},n={...this.defaults,...s},r=this.onError(!!n.silent,!!n.async);if(this.defaults.async===!0&&s.async===!1)return r(Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||t===null)return r(Error("marked(): input parameter is undefined or null"));if(typeof t!="string")return r(Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));if(n.hooks&&(n.hooks.options=n,n.hooks.block=e),n.async)return(async()=>{let l=n.hooks?await n.hooks.preprocess(t):t,a=await(n.hooks?await n.hooks.provideLexer():e?ue.lex:ue.lexInline)(l,n),c=n.hooks?await n.hooks.processAllTokens(a):a;n.walkTokens&&await Promise.all(this.walkTokens(c,n.walkTokens));let o=await(n.hooks?await n.hooks.provideParser():e?he.parse:he.parseInline)(c,n);return n.hooks?await n.hooks.postprocess(o):o})().catch(r);try{n.hooks&&(t=n.hooks.preprocess(t));let l=(n.hooks?n.hooks.provideLexer():e?ue.lex:ue.lexInline)(t,n);n.hooks&&(l=n.hooks.processAllTokens(l)),n.walkTokens&&this.walkTokens(l,n.walkTokens);let a=(n.hooks?n.hooks.provideParser():e?he.parse:he.parseInline)(l,n);return n.hooks&&(a=n.hooks.postprocess(a)),a}catch(l){return r(l)}}}onError(e,t){return i=>{if(i.message+=`
1067
+ Please report this to https://github.com/markedjs/marked.`,e){let s="<p>An error occurred:</p><pre>"+fe(i.message+"",!0)+"</pre>";return t?Promise.resolve(s):s}if(t)return Promise.reject(i);throw i}}};function F(e,t){return Be.parse(e,t)}F.options=F.setOptions=function(e){return Be.setOptions(e),F.defaults=Be.defaults,fs(F.defaults),F},F.getDefaults=ei,F.defaults=ze,F.use=function(...e){return Be.use(...e),F.defaults=Be.defaults,fs(F.defaults),F},F.walkTokens=function(e,t){return Be.walkTokens(e,t)},F.parseInline=Be.parseInline,F.Parser=he,F.parser=he.parse,F.Renderer=yt,F.TextRenderer=ci,F.Lexer=ue,F.lexer=ue.lex,F.Tokenizer=kt,F.Hooks=et,F.parse=F,F.options,F.setOptions,F.use,F.walkTokens,F.parseInline,he.parse,ue.lex;var nl=()=>{let e,t=null,i;function s(){if(t&&!t.closed)t.focus();else{if(t=window.open("about:blank","reveal.js - Notes","width=1100,height=700"),t.marked=F,t.document.write(va),!t){alert("Speaker view popup failed to open. Please make sure popups are allowed and reopen the speaker view.");return}r()}}function n(h){t&&!t.closed?t.focus():(t=h,window.addEventListener("message",o),u())}function r(){let h=i.getConfig().url,g=typeof h=="string"?h:window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search;e=setInterval(function(){t.postMessage(JSON.stringify({namespace:"reveal-notes",type:"connect",state:i.getState(),url:g}),"*")},500),window.addEventListener("message",o)}function l(h,g,p){let d=i[h].apply(i,g);t.postMessage(JSON.stringify({namespace:"reveal-notes",type:"return",result:d,callId:p}),"*")}function a(h){let g=i.getCurrentSlide(),p=g.querySelectorAll("aside.notes"),d=g.querySelector(".current-fragment"),b={namespace:"reveal-notes",type:"state",notes:"",markdown:!1,whitespace:"normal",state:i.getState()};if(g.hasAttribute("data-notes")&&(b.notes=g.getAttribute("data-notes"),b.whitespace="pre-wrap"),d){let y=d.querySelector("aside.notes");y?(b.notes=y.innerHTML,b.markdown=typeof y.getAttribute("data-markdown")=="string",p=null):d.hasAttribute("data-notes")&&(b.notes=d.getAttribute("data-notes"),b.whitespace="pre-wrap",p=null)}p&&p.length&&(p=Array.from(p).filter(y=>y.closest(".fragment")===null),b.notes=p.map(y=>y.innerHTML).join(`
1068
+ `),b.markdown=p[0]&&typeof p[0].getAttribute("data-markdown")=="string"),t.postMessage(JSON.stringify(b),"*")}function c(h){try{return window.location.origin===h.source.location.origin}catch{return!1}}function o(h){if(c(h))try{let g=JSON.parse(h.data);g&&g.namespace==="reveal-notes"&&g.type==="connected"?(clearInterval(e),u()):g&&g.namespace==="reveal-notes"&&g.type==="call"&&l(g.methodName,g.arguments,g.callId)}catch{}}function u(){i.on("slidechanged",a),i.on("fragmentshown",a),i.on("fragmenthidden",a),i.on("overviewhidden",a),i.on("overviewshown",a),i.on("paused",a),i.on("resumed",a),i.on("previewiframe",a),i.on("previewimage",a),i.on("previewvideo",a),i.on("closeoverlay",a),a()}return{id:"notes",init:function(h){i=h,/receiver/i.test(window.location.search)||(window.location.search.match(/(\?|\&)notes/gi)===null?window.addEventListener("message",g=>{if(!t&&typeof g.data=="string"){let p;try{p=JSON.parse(g.data)}catch{}p&&p.namespace==="reveal-notes"&&p.type==="heartbeat"&&n(g.source)}}):s(),i.addKeyBinding({keyCode:83,key:"S",description:"Speaker notes view"},function(){s()}))},open:s}},tt=Ei(),zs=16/9;function rl(e){let t=e.getSlidesElement();if(t)for(let i of t.querySelectorAll("section.stack[data-previous-indexv]"))i.removeAttribute("data-previous-indexv")}var al=new Set([" ","Spacebar","ArrowRight","ArrowDown","PageDown"]),ll=new Set(["ArrowLeft","ArrowUp","PageUp"]);function ol(e){return al.has(e.key)?1:ll.has(e.key)?-1:0}function cl(e){let t=(0,tt.c)(4),i;t[0]===Symbol.for("react.memo_cache_sentinel")?(i={width:960,height:540},t[0]=i):i=t[0];let[s,n]=(0,T.useState)(i),r,l;return t[1]===e?(r=t[2],l=t[3]):(r=()=>{let a=e.current;if(!a)return;let c=new ResizeObserver(o=>{let{width:u,height:h}=o[0].contentRect;if(u<=0||h<=0)return;let g=Math.min(u,h*zs),p=g/zs;n({width:Math.round(g),height:Math.round(p)})});return c.observe(a),()=>c.disconnect()},l=[e],t[1]=e,t[2]=r,t[3]=l),(0,T.useEffect)(r,l),s}function dl(e){var t;(t=e==null?void 0:e.getCurrentSlide())!=null&&t.querySelector(".vega-embed, marimo-vega")&&requestAnimationFrame(()=>{window.dispatchEvent(new Event("resize"))})}var $s=e=>{let t=(0,tt.c)(6),{text:i}=e,s,n;if(t[0]!==i){let l=i.split(`
1069
+ `);s="notes",n=l.map((a,c)=>{let o=c===l.length-1;return a==="---"?(0,x.jsx)("hr",{},c):(0,x.jsxs)(T.Fragment,{children:[a,!o&&(0,x.jsx)("br",{})]},c)}),t[0]=i,t[1]=s,t[2]=n}else s=t[1],n=t[2];let r;return t[3]!==s||t[4]!==n?(r=(0,x.jsx)("aside",{className:s,children:n}),t[3]=s,t[4]=n,t[5]=r):r=t[5],r};Ti=function(e){var r;let{cells:t,cellId:i,showCodeOverrides:s,codeToggleEnabled:n}=e;return i==null||!n?!1:(((r=t.get(i))==null?void 0:r.showCode)??!1)||s.has(i)},Ai=function(e){var r;let{cell:t,noOutputIds:i,heldEditCellId:s,slideConfigs:n}=e;return i.has(t.id)||t.id===s?"skip":((r=n.get(t.id))==null?void 0:r.type)??"slide"},Ci=function(e){var $;let t=(0,tt.c)(15),{activeCell:i,slideConfigs:s,noOutputIds:n}=e,r=(i==null?void 0:i.id)??null,l;t[0]!==i||t[1]!==n?(l=i!=null&&n.has(i.id),t[0]=i,t[1]=n,t[2]=l):l=t[2];let a=l,c=i!=null&&(($=s.get(i.id))==null?void 0:$.type)==="skip"||a,o;t[3]===r?o=t[4]:(o={activeCellId:r,cellId:null},t[3]=r,t[4]=o);let[u,h]=(0,T.useState)(o),g=u.cellId;u.activeCellId===r?a&&g!==r&&(g=r,h({activeCellId:r,cellId:g})):(g=a?r:null,h({activeCellId:r,cellId:g}));let p=!c&&r!=null&&g===r,d=p?g:null,b;t[5]===d?b=t[6]:(b={cellId:d,show:!0},t[5]=d,t[6]=b);let[y,z]=(0,T.useState)(b),D=y.show;y.cellId!==d&&(D=!0,z({cellId:d,show:!0}));let L;t[7]===Symbol.for("react.memo_cache_sentinel")?(L=()=>z(ul),t[7]=L):L=t[7];let A=be(L),S=c||p?i??null:null,P;return t[8]!==d||t[9]!==D||t[10]!==p||t[11]!==a||t[12]!==S||t[13]!==A?(P={parkedPreviewCell:S,isHeldEdit:p,isNoOutputPreview:a,heldEditCellId:d,heldShowsCode:D,toggleHeldShowsCode:A},t[8]=d,t[9]=D,t[10]=p,t[11]=a,t[12]=S,t[13]=A,t[14]=P):P=t[14],P};function ul(e){return{...e,show:!e.show}}var Bs=e=>{let t=(0,tt.c)(24),{subslide:i,resolveShowCode:s,isEditable:n,slideConfigs:r}=e,l,a,c,o,u,h;if(t[0]!==n||t[1]!==s||t[2]!==r||t[3]!==i){let{slideLevel:y,cumulativeByBlock:z}=fa(i,r);a=y;let D=i.blocks.some(L=>L.cells.some(A=>s(A.id)));l=vr,h="h-full w-full overflow-auto flex",c=D?"mo-slide-content flex flex-col gap-3":"mo-slide-content",t[10]===Symbol.for("react.memo_cache_sentinel")?(o={margin:"auto 20px"},t[10]=o):o=t[10],u=i.blocks.map((L,A)=>{let S=L.cells.map(P=>s(P.id)?n?(0,x.jsx)(gs,{cell:P},P.id):(0,x.jsx)(ms,{cell:P},P.id):(0,x.jsx)($t,{cellId:P.id,status:P.status,output:P.output},P.id));if(L.isFragment){let P=z.get(A);return(0,x.jsxs)(na,{as:"div",children:[S,P&&(0,x.jsx)($s,{text:P})]},A)}return(0,x.jsx)(T.Fragment,{children:S},A)}),t[0]=n,t[1]=s,t[2]=r,t[3]=i,t[4]=l,t[5]=a,t[6]=c,t[7]=o,t[8]=u,t[9]=h}else l=t[4],a=t[5],c=t[6],o=t[7],u=t[8],h=t[9];let g;t[11]!==c||t[12]!==o||t[13]!==u?(g=(0,x.jsx)("div",{className:c,style:o,children:u}),t[11]=c,t[12]=o,t[13]=u,t[14]=g):g=t[14];let p;t[15]!==h||t[16]!==g?(p=(0,x.jsx)("div",{className:h,children:g}),t[15]=h,t[16]=g,t[17]=p):p=t[17];let d;t[18]===a?d=t[19]:(d=a&&(0,x.jsx)($s,{text:a}),t[18]=a,t[19]=d);let b;return t[20]!==l||t[21]!==p||t[22]!==d?(b=(0,x.jsxs)(l,{children:[p,d]}),t[20]=l,t[21]=p,t[22]=d,t[23]=b):b=t[23],b};Bt=function(e){let{isNoOutputPreview:t,isEditable:i,showCode:s}=e;return t&&i||s};let Ds;Ds=e=>{let t=(0,tt.c)(7),{cell:i,isNoOutputPreview:s,isEditable:n,showCode:r}=e;if(Bt({isNoOutputPreview:s,isEditable:n,showCode:r})){let a;return t[0]!==i||t[1]!==n?(a=n?(0,x.jsx)(gs,{cell:i}):(0,x.jsx)(ms,{cell:i}),t[0]=i,t[1]=n,t[2]=a):a=t[2],a}let l;return t[3]!==i.id||t[4]!==i.output||t[5]!==i.status?(l=(0,x.jsx)($t,{cellId:i.id,status:i.status,output:i.output}),t[3]=i.id,t[4]=i.output,t[5]=i.status,t[6]=l):l=t[6],l},yn=({slideCells:e,layout:t,setLayout:i,noOutputIds:s,activeIndex:n,onSlideChange:r,mode:l,configWidth:a,isEditable:c=!1})=>{var He,st;let o=(0,T.useRef)(null),u=(0,T.useRef)(null),{width:h,height:g}=cl(o),p=Ul()!=null,d=Si(Dl),b=(0,T.useMemo)(()=>d?[]:[nl],[d]),[y,z]=(0,T.useState)(()=>new Set),D=Xl(e),L=!Ol()&&D,A=n==null?void 0:e[n],S=A??e.at(0),{parkedPreviewCell:P,isHeldEdit:$,isNoOutputPreview:_,heldEditCellId:O,heldShowsCode:M,toggleHeldShowsCode:Y}=Ci({activeCell:A,slideConfigs:t.cells,noOutputIds:s}),B=H=>Ti({cells:t.cells,cellId:H,showCodeOverrides:y,codeToggleEnabled:L}),v=(A==null?void 0:A.id)??(S==null?void 0:S.id),R=$?M:B(v),N=L&&v!=null&&(((He=t.cells.get(v))==null?void 0:He.showCode)??!1),W=(0,T.useMemo)(()=>ra({cells:e,getType:H=>Ai({cell:H,noOutputIds:s,heldEditCellId:O,slideConfigs:t.cells})}),[e,s,t.cells,O]),{cellToTarget:te,targetToCellIndex:se}=(0,T.useMemo)(()=>aa({composition:W,cells:e,getId:H=>H.id}),[W,e]),K=((st=t.deck)==null?void 0:st.transition)??"slide",Z=(0,T.useMemo)(()=>{let H=new URL(window.location.href);return H.searchParams.set("kiosk","true"),H.searchParams.set("show-chrome","false"),H.toString()},[]),pe=(0,T.useMemo)(()=>({embedded:!0,width:h,height:g,center:!1,minScale:.2,maxScale:2,transition:K,keyboardCondition:H=>!Ri.fromInput(H),url:Z}),[h,g,K,Z]),De=be(H=>{let Q=oa({activeIndex:n,cells:e,cellToTarget:te,getId:Ve=>Ve.id}),ie=Q&&ca(H.getIndices(),Q);ie&&(H.slide(ie.h,ie.v,ie.f),rl(H))});(0,T.useEffect)(()=>{let H=u.current;H!=null&&De(H)},[n,te,e,De]);let le=be(()=>{if(!(v==null||N)){if($){Y();return}(0,T.startTransition)(()=>z(H=>{let Q=new Set(H);return Q.has(v)?Q.delete(v):Q.add(v),Q}))}}),di=be(H=>{var ie;De(H),L&&H.addKeyBinding({keyCode:67,key:"C",description:"Toggle code editor"},le);let Q=(ie=H.getSlidesElement())==null?void 0:ie.closest(".reveal");Q instanceof HTMLElement&&(Q.tabIndex=-1,Q.focus({preventScroll:!0}))}),it=be(()=>{if(P!=null)return;let H=u.current;if(!H)return;let Q=la(se,H.getIndices());Q!=null&&(r==null||r(Q))}),ui=be(H=>{if(!P||n==null||Ri.fromInput(H))return;let Q=ol(H);if(Q===0)return;H.preventDefault(),H.stopPropagation();let ie=n+Q;ie<0||ie>=e.length||(r==null||r(ie))}),hi=be(()=>{it(),dl(u.current)});ql(document,"keydown",ui,{capture:!0});let Oe=$?null:_?"Hidden as there is no output":"Skipped in presentation",St=$?M:B(P==null?void 0:P.id),pi=Bt({isNoOutputPreview:_,isEditable:c,showCode:St}),Fe=(0,x.jsx)("div",{ref:o,className:"h-full w-full min-w-0 flex items-center justify-center overflow-hidden",children:(0,x.jsxs)("div",{className:"group relative",style:{width:h,height:g},children:[(0,x.jsx)(pr,{deckRef:u,className:"aspect-video w-full overflow-hidden border rounded bg-background mo-slides-theme prose-slides focus:outline-none focus-visible:outline-none",config:pe,onReady:di,onSlideChange:hi,onFragmentShown:it,onFragmentHidden:it,plugins:b,children:W.stacks.map((H,Q)=>H.subslides.length===1?(0,x.jsx)(Bs,{subslide:H.subslides[0],resolveShowCode:B,isEditable:c,slideConfigs:t.cells},Q):(0,x.jsx)(br,{children:H.subslides.map((ie,Ve)=>(0,x.jsx)(Bs,{subslide:ie,resolveShowCode:B,isEditable:c,slideConfigs:t.cells},Ve))},Q))}),P&&(0,x.jsxs)("div",{className:"absolute inset-0 z-10 border rounded bg-background flex flex-col overflow-hidden","aria-label":Oe??void 0,children:[Oe&&(0,x.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-1.5 text-xs text-muted-foreground border-b bg-muted/40",children:[(0,x.jsx)(to,{className:"h-3.5 w-3.5"}),(0,x.jsx)("span",{children:Oe})]}),(0,x.jsx)("div",{className:"flex-1 overflow-auto flex",children:(0,x.jsx)("div",{className:pi?"mo-slide-content flex flex-col gap-3":"mo-slide-content",style:{margin:"auto 20px"},children:(0,x.jsx)(Ds,{cell:P,isNoOutputPreview:_,isEditable:c,showCode:St})})})]},P.id),(0,x.jsxs)("div",{className:"absolute top-2 right-2 z-20 opacity-0 group-hover:opacity-70 text-muted-foreground transition-opacity",children:[L&&(0,x.jsx)(vn,{content:N?"Code is always shown for this slide":R?"Hide code (C)":"Show code (C)",children:(0,x.jsx)(bn,{"data-testid":"marimo-plugin-slides-toggle-code",variant:"ghost",size:"icon",className:zt("text-muted-foreground h-7 w-7",R&&"text-foreground bg-muted",N&&"opacity-50 cursor-not-allowed"),"aria-pressed":R,"aria-disabled":N,"aria-label":N?"Code always shown":R?"Hide code":"Show code",onClick:le,children:(0,x.jsx)(Ql,{className:"h-4 w-4"})})}),(0,x.jsx)(vn,{content:"Fullscreen (F)",children:(0,x.jsx)(bn,{"data-testid":"marimo-plugin-slides-fullscreen",variant:"ghost",size:"icon",className:"text-muted-foreground h-7 w-7","aria-label":"Enter fullscreen",onClick:()=>{var H,Q;(Q=(H=u.current)==null?void 0:H.getViewportElement())==null||Q.requestFullscreen().catch(ie=>{_l.error("Failed to request fullscreen",ie)})},children:(0,x.jsx)(Wl,{className:"h-4 w-4"})})})]})]})});return l==="read"?(0,x.jsx)("div",{className:"flex-1 min-w-0 flex flex-row gap-3",children:Fe}):(0,x.jsxs)("div",{className:"flex-1 min-w-0 flex flex-row gap-3",children:[(0,x.jsxs)(mo,{direction:"vertical",autoSaveId:"marimo:slides:notes-panel",className:"flex-1 min-w-0",children:[(0,x.jsx)(kn,{defaultSize:92,minSize:60,children:Fe}),(0,x.jsx)(fo,{className:"mo-slides-notes-resize",hitAreaMargins:{coarse:12,fine:4},disabled:p}),(0,x.jsx)(kn,{defaultSize:10,minSize:4,collapsible:!0,collapsedSize:4,children:(0,x.jsx)(ha,{layout:t,setLayout:i,cellId:S==null?void 0:S.id})})]}),(0,x.jsx)(Jl,{configWidth:a,layout:t,setLayout:i,activeConfigCell:S})]})}});export{bo as __tla,Ai as deckSlideType,yn as default,Bt as parkedRendersSource,Ti as shouldShowCode,Ci as useParkedPreview};