@devmotion/cli 0.6.3 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1372) hide show
  1. package/README.md +13 -0
  2. package/dist/index.js +135 -349
  3. package/mcp/mcp-stdio.mjs +377 -156
  4. package/package.json +1 -1
  5. package/studio/client/_app/immutable/assets/0.Lv_sH-a4.css +1 -0
  6. package/studio/client/_app/immutable/assets/0.Lv_sH-a4.css.br +0 -0
  7. package/studio/client/_app/immutable/assets/0.Lv_sH-a4.css.gz +0 -0
  8. package/studio/client/_app/immutable/assets/editor.BN5lBQZg.css +1 -0
  9. package/studio/client/_app/immutable/assets/editor.BN5lBQZg.css.br +0 -0
  10. package/studio/client/_app/immutable/assets/editor.BN5lBQZg.css.gz +0 -0
  11. package/studio/client/_app/immutable/chunks/4QfhfUmj.js +1 -0
  12. package/studio/client/_app/immutable/chunks/4QfhfUmj.js.br +0 -0
  13. package/studio/client/_app/immutable/chunks/4QfhfUmj.js.gz +0 -0
  14. package/studio/client/_app/immutable/chunks/B4vsfLqj.js +1 -0
  15. package/studio/client/_app/immutable/chunks/B4vsfLqj.js.br +0 -0
  16. package/studio/client/_app/immutable/chunks/B4vsfLqj.js.gz +0 -0
  17. package/studio/client/_app/immutable/chunks/B7SJbUFX.js +1 -0
  18. package/studio/client/_app/immutable/chunks/B7SJbUFX.js.br +0 -0
  19. package/studio/client/_app/immutable/chunks/B7SJbUFX.js.gz +0 -0
  20. package/studio/client/_app/immutable/chunks/B9f32Zzc.js +1 -0
  21. package/studio/client/_app/immutable/chunks/B9f32Zzc.js.br +1 -0
  22. package/studio/client/_app/immutable/chunks/B9f32Zzc.js.gz +0 -0
  23. package/studio/client/_app/immutable/chunks/BHu0iPy_.js +1 -0
  24. package/studio/client/_app/immutable/chunks/BHu0iPy_.js.br +0 -0
  25. package/studio/client/_app/immutable/chunks/BHu0iPy_.js.gz +0 -0
  26. package/studio/client/_app/immutable/chunks/BVqaYHsk.js +1 -0
  27. package/studio/client/_app/immutable/chunks/BVqaYHsk.js.br +0 -0
  28. package/studio/client/_app/immutable/chunks/BVqaYHsk.js.gz +0 -0
  29. package/studio/client/_app/immutable/chunks/BcZVIP5f.js +1 -0
  30. package/studio/client/_app/immutable/chunks/BcZVIP5f.js.br +0 -0
  31. package/studio/client/_app/immutable/chunks/BcZVIP5f.js.gz +0 -0
  32. package/studio/client/_app/immutable/chunks/BcqGu5mG.js +1 -0
  33. package/studio/client/_app/immutable/chunks/BcqGu5mG.js.br +0 -0
  34. package/studio/client/_app/immutable/chunks/BcqGu5mG.js.gz +0 -0
  35. package/studio/client/_app/immutable/chunks/BfikHP7B.js +512 -0
  36. package/studio/client/_app/immutable/chunks/BfikHP7B.js.br +0 -0
  37. package/studio/client/_app/immutable/chunks/BfikHP7B.js.gz +0 -0
  38. package/studio/client/_app/immutable/chunks/BpSxDpO2.js +1 -0
  39. package/studio/client/_app/immutable/chunks/BpSxDpO2.js.br +0 -0
  40. package/studio/client/_app/immutable/chunks/BpSxDpO2.js.gz +0 -0
  41. package/studio/client/_app/immutable/chunks/BpuHE4_g.js +1 -0
  42. package/studio/client/_app/immutable/chunks/BpuHE4_g.js.br +0 -0
  43. package/studio/client/_app/immutable/chunks/BpuHE4_g.js.gz +0 -0
  44. package/studio/client/_app/immutable/chunks/Bs1PixFT.js +1 -0
  45. package/studio/client/_app/immutable/chunks/Bs1PixFT.js.br +0 -0
  46. package/studio/client/_app/immutable/chunks/Bs1PixFT.js.gz +0 -0
  47. package/studio/client/_app/immutable/chunks/Bu_5E1Sl.js +1 -0
  48. package/studio/client/_app/immutable/chunks/Bu_5E1Sl.js.br +0 -0
  49. package/studio/client/_app/immutable/chunks/Bu_5E1Sl.js.gz +0 -0
  50. package/studio/client/_app/immutable/chunks/C2XXotQj.js +1 -0
  51. package/studio/client/_app/immutable/chunks/C2XXotQj.js.br +0 -0
  52. package/studio/client/_app/immutable/chunks/C2XXotQj.js.gz +0 -0
  53. package/studio/client/_app/immutable/chunks/CAACQLfs.js +1 -0
  54. package/studio/client/_app/immutable/chunks/CAACQLfs.js.br +0 -0
  55. package/studio/client/_app/immutable/chunks/CAACQLfs.js.gz +0 -0
  56. package/studio/client/_app/immutable/chunks/CClcTVCL.js +1 -0
  57. package/studio/client/_app/immutable/chunks/CClcTVCL.js.br +2 -0
  58. package/studio/client/_app/immutable/chunks/CClcTVCL.js.gz +0 -0
  59. package/studio/client/_app/immutable/chunks/CDjRusee.js +1 -0
  60. package/studio/client/_app/immutable/chunks/CDjRusee.js.br +0 -0
  61. package/studio/client/_app/immutable/chunks/CDjRusee.js.gz +0 -0
  62. package/studio/client/_app/immutable/chunks/CU5enDwt.js +1 -0
  63. package/studio/client/_app/immutable/chunks/CU5enDwt.js.br +0 -0
  64. package/studio/client/_app/immutable/chunks/CU5enDwt.js.gz +0 -0
  65. package/studio/client/_app/immutable/chunks/CaaG7K_x.js +1 -0
  66. package/studio/client/_app/immutable/chunks/CaaG7K_x.js.br +0 -0
  67. package/studio/client/_app/immutable/chunks/CaaG7K_x.js.gz +0 -0
  68. package/studio/client/_app/immutable/chunks/Cd2UbfQ6.js +2 -0
  69. package/studio/client/_app/immutable/chunks/Cd2UbfQ6.js.br +0 -0
  70. package/studio/client/_app/immutable/chunks/Cd2UbfQ6.js.gz +0 -0
  71. package/studio/client/_app/immutable/chunks/Cf4-5HnP.js +1 -0
  72. package/studio/client/_app/immutable/chunks/Cf4-5HnP.js.br +0 -0
  73. package/studio/client/_app/immutable/chunks/Cf4-5HnP.js.gz +0 -0
  74. package/studio/client/_app/immutable/chunks/CqE47GI1.js +1 -0
  75. package/studio/client/_app/immutable/chunks/CqE47GI1.js.br +0 -0
  76. package/studio/client/_app/immutable/chunks/CqE47GI1.js.gz +0 -0
  77. package/studio/client/_app/immutable/chunks/CqaLkm1l.js +4 -0
  78. package/studio/client/_app/immutable/chunks/CqaLkm1l.js.br +0 -0
  79. package/studio/client/_app/immutable/chunks/CqaLkm1l.js.gz +0 -0
  80. package/studio/client/_app/immutable/chunks/CrnqEuwa.js +1 -0
  81. package/studio/client/_app/immutable/chunks/CrnqEuwa.js.br +0 -0
  82. package/studio/client/_app/immutable/chunks/CrnqEuwa.js.gz +0 -0
  83. package/studio/client/_app/immutable/chunks/Cv2_oVuk.js +1 -0
  84. package/studio/client/_app/immutable/chunks/Cv2_oVuk.js.br +0 -0
  85. package/studio/client/_app/immutable/chunks/Cv2_oVuk.js.gz +0 -0
  86. package/studio/client/_app/immutable/chunks/D0nqj3Uj.js +1 -0
  87. package/studio/client/_app/immutable/chunks/D0nqj3Uj.js.br +0 -0
  88. package/studio/client/_app/immutable/chunks/D0nqj3Uj.js.gz +0 -0
  89. package/studio/client/_app/immutable/chunks/D260PcBB.js +1 -0
  90. package/studio/client/_app/immutable/chunks/D260PcBB.js.br +0 -0
  91. package/studio/client/_app/immutable/chunks/D260PcBB.js.gz +0 -0
  92. package/studio/client/_app/immutable/chunks/DB8_8dee.js +2 -0
  93. package/studio/client/_app/immutable/chunks/DB8_8dee.js.br +0 -0
  94. package/studio/client/_app/immutable/chunks/DB8_8dee.js.gz +0 -0
  95. package/studio/client/_app/immutable/chunks/DBZQgiHq.js +4 -0
  96. package/studio/client/_app/immutable/chunks/DBZQgiHq.js.br +0 -0
  97. package/studio/client/_app/immutable/chunks/DBZQgiHq.js.gz +0 -0
  98. package/studio/client/_app/immutable/chunks/DMxd0pKL.js +96 -0
  99. package/studio/client/_app/immutable/chunks/DMxd0pKL.js.br +0 -0
  100. package/studio/client/_app/immutable/chunks/DMxd0pKL.js.gz +0 -0
  101. package/studio/client/_app/immutable/chunks/DXX6oqEY.js +1 -0
  102. package/studio/client/_app/immutable/chunks/DXX6oqEY.js.br +0 -0
  103. package/studio/client/_app/immutable/chunks/DXX6oqEY.js.gz +0 -0
  104. package/studio/client/_app/immutable/chunks/DYsdFO9i.js +1 -0
  105. package/studio/client/_app/immutable/chunks/DYsdFO9i.js.br +0 -0
  106. package/studio/client/_app/immutable/chunks/DYsdFO9i.js.gz +0 -0
  107. package/studio/client/_app/immutable/chunks/DgTYfJMu.js +5 -0
  108. package/studio/client/_app/immutable/chunks/DgTYfJMu.js.br +0 -0
  109. package/studio/client/_app/immutable/chunks/DgTYfJMu.js.gz +0 -0
  110. package/studio/client/_app/immutable/chunks/DjvvdYFY.js +1 -0
  111. package/studio/client/_app/immutable/chunks/DjvvdYFY.js.br +0 -0
  112. package/studio/client/_app/immutable/chunks/DjvvdYFY.js.gz +0 -0
  113. package/studio/client/_app/immutable/chunks/Dn_cJtKS.js +1 -0
  114. package/studio/client/_app/immutable/chunks/Dn_cJtKS.js.br +0 -0
  115. package/studio/client/_app/immutable/chunks/Dn_cJtKS.js.gz +0 -0
  116. package/studio/client/_app/immutable/chunks/Dx_nuQP5.js +1 -0
  117. package/studio/client/_app/immutable/chunks/Dx_nuQP5.js.br +0 -0
  118. package/studio/client/_app/immutable/chunks/Dx_nuQP5.js.gz +0 -0
  119. package/studio/client/_app/immutable/chunks/G4iiuHEo.js +1 -0
  120. package/studio/client/_app/immutable/chunks/G4iiuHEo.js.br +0 -0
  121. package/studio/client/_app/immutable/chunks/G4iiuHEo.js.gz +0 -0
  122. package/studio/client/_app/immutable/chunks/GODyLR7Y.js +1 -0
  123. package/studio/client/_app/immutable/chunks/GODyLR7Y.js.br +0 -0
  124. package/studio/client/_app/immutable/chunks/GODyLR7Y.js.gz +0 -0
  125. package/studio/client/_app/immutable/chunks/H5GgA2Hg.js +1 -0
  126. package/studio/client/_app/immutable/chunks/H5GgA2Hg.js.br +3 -0
  127. package/studio/client/_app/immutable/chunks/H5GgA2Hg.js.gz +0 -0
  128. package/studio/client/_app/immutable/chunks/KindPqpA.js +1 -0
  129. package/studio/client/_app/immutable/chunks/KindPqpA.js.br +0 -0
  130. package/studio/client/_app/immutable/chunks/KindPqpA.js.gz +0 -0
  131. package/studio/client/_app/immutable/chunks/MR-UHLyi.js +99 -0
  132. package/studio/client/_app/immutable/chunks/MR-UHLyi.js.br +0 -0
  133. package/studio/client/_app/immutable/chunks/MR-UHLyi.js.gz +0 -0
  134. package/studio/client/_app/immutable/chunks/PZ9NXo-7.js +1 -0
  135. package/studio/client/_app/immutable/chunks/PZ9NXo-7.js.br +0 -0
  136. package/studio/client/_app/immutable/chunks/PZ9NXo-7.js.gz +0 -0
  137. package/studio/client/_app/immutable/chunks/YwFQw-CS.js +730 -0
  138. package/studio/client/_app/immutable/chunks/YwFQw-CS.js.br +0 -0
  139. package/studio/client/_app/immutable/chunks/YwFQw-CS.js.gz +0 -0
  140. package/studio/client/_app/immutable/chunks/iTzoDmCj.js +1 -0
  141. package/studio/client/_app/immutable/chunks/iTzoDmCj.js.br +0 -0
  142. package/studio/client/_app/immutable/chunks/iTzoDmCj.js.gz +0 -0
  143. package/studio/client/_app/immutable/chunks/pT1u3Hqy.js +1 -0
  144. package/studio/client/_app/immutable/chunks/pT1u3Hqy.js.br +0 -0
  145. package/studio/client/_app/immutable/chunks/pT1u3Hqy.js.gz +0 -0
  146. package/studio/client/_app/immutable/chunks/wHWYACQ6.js +16 -0
  147. package/studio/client/_app/immutable/chunks/wHWYACQ6.js.br +0 -0
  148. package/studio/client/_app/immutable/chunks/wHWYACQ6.js.gz +0 -0
  149. package/studio/client/_app/immutable/entry/app.D0e6CgLl.js +2 -0
  150. package/studio/client/_app/immutable/entry/app.D0e6CgLl.js.br +0 -0
  151. package/studio/client/_app/immutable/entry/app.D0e6CgLl.js.gz +0 -0
  152. package/studio/client/_app/immutable/entry/start.CXzKoAgP.js +1 -0
  153. package/studio/client/_app/immutable/entry/start.CXzKoAgP.js.br +0 -0
  154. package/studio/client/_app/immutable/entry/start.CXzKoAgP.js.gz +0 -0
  155. package/studio/client/_app/immutable/nodes/0.BfZbVR14.js +2 -0
  156. package/studio/client/_app/immutable/nodes/0.BfZbVR14.js.br +0 -0
  157. package/studio/client/_app/immutable/nodes/0.BfZbVR14.js.gz +0 -0
  158. package/studio/client/_app/immutable/nodes/1.BGxVZc_Z.js +1 -0
  159. package/studio/client/_app/immutable/nodes/1.BGxVZc_Z.js.br +0 -0
  160. package/studio/client/_app/immutable/nodes/1.BGxVZc_Z.js.gz +0 -0
  161. package/studio/client/_app/immutable/nodes/10.BmsU7Niv.js +1 -0
  162. package/studio/client/_app/immutable/nodes/10.BmsU7Niv.js.br +0 -0
  163. package/studio/client/_app/immutable/nodes/10.BmsU7Niv.js.gz +0 -0
  164. package/studio/client/_app/immutable/nodes/11.Bl10BIeh.js +1 -0
  165. package/studio/client/_app/immutable/nodes/11.Bl10BIeh.js.br +0 -0
  166. package/studio/client/_app/immutable/nodes/11.Bl10BIeh.js.gz +0 -0
  167. package/studio/client/_app/immutable/nodes/12.Di52Em2U.js +2 -0
  168. package/studio/client/_app/immutable/nodes/12.Di52Em2U.js.br +0 -0
  169. package/studio/client/_app/immutable/nodes/12.Di52Em2U.js.gz +0 -0
  170. package/studio/client/_app/immutable/nodes/13.D1KxkAvV.js +1 -0
  171. package/studio/client/_app/immutable/nodes/13.D1KxkAvV.js.br +0 -0
  172. package/studio/client/_app/immutable/nodes/13.D1KxkAvV.js.gz +0 -0
  173. package/studio/client/_app/immutable/nodes/14.Ba-ayQpO.js +1 -0
  174. package/studio/client/_app/immutable/nodes/14.Ba-ayQpO.js.br +0 -0
  175. package/studio/client/_app/immutable/nodes/14.Ba-ayQpO.js.gz +0 -0
  176. package/studio/client/_app/immutable/nodes/15.Bjs1ENL4.js +1 -0
  177. package/studio/client/_app/immutable/nodes/15.Bjs1ENL4.js.br +0 -0
  178. package/studio/client/_app/immutable/nodes/15.Bjs1ENL4.js.gz +0 -0
  179. package/studio/client/_app/immutable/nodes/16.Ca8aIyjV.js +8 -0
  180. package/studio/client/_app/immutable/nodes/16.Ca8aIyjV.js.br +0 -0
  181. package/studio/client/_app/immutable/nodes/16.Ca8aIyjV.js.gz +0 -0
  182. package/studio/client/_app/immutable/nodes/17.DR-c7BuD.js +1 -0
  183. package/studio/client/_app/immutable/nodes/17.DR-c7BuD.js.br +0 -0
  184. package/studio/client/_app/immutable/nodes/17.DR-c7BuD.js.gz +0 -0
  185. package/studio/client/_app/immutable/nodes/18.D3yl0Qok.js +1 -0
  186. package/studio/client/_app/immutable/nodes/18.D3yl0Qok.js.br +0 -0
  187. package/studio/client/_app/immutable/nodes/18.D3yl0Qok.js.gz +0 -0
  188. package/studio/client/_app/immutable/nodes/19.r0zsNF0J.js +1 -0
  189. package/studio/client/_app/immutable/nodes/19.r0zsNF0J.js.br +0 -0
  190. package/studio/client/_app/immutable/nodes/19.r0zsNF0J.js.gz +0 -0
  191. package/studio/client/_app/immutable/nodes/20.wKchvAGW.js +45 -0
  192. package/studio/client/_app/immutable/nodes/20.wKchvAGW.js.br +0 -0
  193. package/studio/client/_app/immutable/nodes/20.wKchvAGW.js.gz +0 -0
  194. package/studio/client/_app/immutable/nodes/21.CX28-f1P.js +16 -0
  195. package/studio/client/_app/immutable/nodes/21.CX28-f1P.js.br +0 -0
  196. package/studio/client/_app/immutable/nodes/21.CX28-f1P.js.gz +0 -0
  197. package/studio/client/_app/immutable/nodes/28.BwKSpFi_.js +8 -0
  198. package/studio/client/_app/immutable/nodes/28.BwKSpFi_.js.br +0 -0
  199. package/studio/client/_app/immutable/nodes/28.BwKSpFi_.js.gz +0 -0
  200. package/studio/client/_app/immutable/nodes/3.D1ljfi_V.js +1 -0
  201. package/studio/client/_app/immutable/nodes/3.D1ljfi_V.js.br +0 -0
  202. package/studio/client/_app/immutable/nodes/3.D1ljfi_V.js.gz +0 -0
  203. package/studio/client/_app/immutable/nodes/30.DA7Me2YV.js +26 -0
  204. package/studio/client/_app/immutable/nodes/30.DA7Me2YV.js.br +0 -0
  205. package/studio/client/_app/immutable/nodes/30.DA7Me2YV.js.gz +0 -0
  206. package/studio/client/_app/immutable/nodes/38.its7uZHe.js +1 -0
  207. package/studio/client/_app/immutable/nodes/38.its7uZHe.js.br +0 -0
  208. package/studio/client/_app/immutable/nodes/38.its7uZHe.js.gz +0 -0
  209. package/studio/client/_app/immutable/nodes/39.DrGfz0RO.js +88 -0
  210. package/studio/client/_app/immutable/nodes/39.DrGfz0RO.js.br +0 -0
  211. package/studio/client/_app/immutable/nodes/39.DrGfz0RO.js.gz +0 -0
  212. package/studio/client/_app/immutable/nodes/4.C-XTv_8D.js +1 -0
  213. package/studio/client/_app/immutable/nodes/4.C-XTv_8D.js.br +0 -0
  214. package/studio/client/_app/immutable/nodes/4.C-XTv_8D.js.gz +0 -0
  215. package/studio/client/_app/immutable/nodes/40.B0WM2OHu.js +17 -0
  216. package/studio/client/_app/immutable/nodes/40.B0WM2OHu.js.br +0 -0
  217. package/studio/client/_app/immutable/nodes/40.B0WM2OHu.js.gz +0 -0
  218. package/studio/client/_app/immutable/nodes/41.BZzYfCVE.js +1 -0
  219. package/studio/client/_app/immutable/nodes/41.BZzYfCVE.js.br +0 -0
  220. package/studio/client/_app/immutable/nodes/41.BZzYfCVE.js.gz +0 -0
  221. package/studio/client/_app/immutable/nodes/42.BP7aBc8V.js +1 -0
  222. package/studio/client/_app/immutable/nodes/42.BP7aBc8V.js.br +0 -0
  223. package/studio/client/_app/immutable/nodes/42.BP7aBc8V.js.gz +0 -0
  224. package/studio/client/_app/immutable/nodes/43.DYWNhvqm.js +1 -0
  225. package/studio/client/_app/immutable/nodes/43.DYWNhvqm.js.br +0 -0
  226. package/studio/client/_app/immutable/nodes/43.DYWNhvqm.js.gz +0 -0
  227. package/studio/client/_app/immutable/nodes/44.CsVF9aXe.js +1 -0
  228. package/studio/client/_app/immutable/nodes/44.CsVF9aXe.js.br +0 -0
  229. package/studio/client/_app/immutable/nodes/44.CsVF9aXe.js.gz +0 -0
  230. package/studio/client/_app/immutable/nodes/45.CeMReWED.js +2 -0
  231. package/studio/client/_app/immutable/nodes/45.CeMReWED.js.br +0 -0
  232. package/studio/client/_app/immutable/nodes/45.CeMReWED.js.gz +0 -0
  233. package/studio/client/_app/immutable/nodes/46.tPqAAZZF.js +1 -0
  234. package/studio/client/_app/immutable/nodes/46.tPqAAZZF.js.br +0 -0
  235. package/studio/client/_app/immutable/nodes/46.tPqAAZZF.js.gz +0 -0
  236. package/studio/client/_app/immutable/nodes/47.1pFnCvbM.js +1 -0
  237. package/studio/client/_app/immutable/nodes/47.1pFnCvbM.js.br +0 -0
  238. package/studio/client/_app/immutable/nodes/47.1pFnCvbM.js.gz +0 -0
  239. package/studio/client/_app/immutable/nodes/48.Cy1KgYAH.js +1 -0
  240. package/studio/client/_app/immutable/nodes/48.Cy1KgYAH.js.br +0 -0
  241. package/studio/client/_app/immutable/nodes/48.Cy1KgYAH.js.gz +0 -0
  242. package/studio/client/_app/immutable/nodes/49.Bh6bDdsT.js +7 -0
  243. package/studio/client/_app/immutable/nodes/49.Bh6bDdsT.js.br +0 -0
  244. package/studio/client/_app/immutable/nodes/49.Bh6bDdsT.js.gz +0 -0
  245. package/studio/client/_app/immutable/nodes/5.C-XTv_8D.js +1 -0
  246. package/studio/client/_app/immutable/nodes/5.C-XTv_8D.js.br +0 -0
  247. package/studio/client/_app/immutable/nodes/5.C-XTv_8D.js.gz +0 -0
  248. package/studio/client/_app/immutable/nodes/7.CS9X1kOu.js +1 -0
  249. package/studio/client/_app/immutable/nodes/7.CS9X1kOu.js.br +0 -0
  250. package/studio/client/_app/immutable/nodes/7.CS9X1kOu.js.gz +0 -0
  251. package/studio/client/_app/immutable/nodes/8.Cux2oyT5.js +1 -0
  252. package/studio/client/_app/immutable/nodes/8.Cux2oyT5.js.br +0 -0
  253. package/studio/client/_app/immutable/nodes/8.Cux2oyT5.js.gz +0 -0
  254. package/studio/client/_app/immutable/nodes/9.Dl65IEFD.js +1 -0
  255. package/studio/client/_app/immutable/nodes/9.Dl65IEFD.js.br +0 -0
  256. package/studio/client/_app/immutable/nodes/9.Dl65IEFD.js.gz +0 -0
  257. package/studio/client/_app/version.json +1 -1
  258. package/studio/client/_app/version.json.br +0 -0
  259. package/studio/client/_app/version.json.gz +0 -0
  260. package/studio/prerendered/docs/api/errors.html +38 -38
  261. package/studio/prerendered/docs/api/errors.html.br +0 -0
  262. package/studio/prerendered/docs/api/errors.html.gz +0 -0
  263. package/studio/prerendered/docs/api/projects.html +38 -38
  264. package/studio/prerendered/docs/api/projects.html.br +0 -0
  265. package/studio/prerendered/docs/api/projects.html.gz +0 -0
  266. package/studio/prerendered/docs/api/renders.html +38 -38
  267. package/studio/prerendered/docs/api/renders.html.br +0 -0
  268. package/studio/prerendered/docs/api/renders.html.gz +0 -0
  269. package/studio/prerendered/docs/api/templates.html +38 -38
  270. package/studio/prerendered/docs/api/templates.html.br +0 -0
  271. package/studio/prerendered/docs/api/templates.html.gz +0 -0
  272. package/studio/prerendered/docs/api/webhooks.html +38 -38
  273. package/studio/prerendered/docs/api/webhooks.html.br +0 -0
  274. package/studio/prerendered/docs/api/webhooks.html.gz +0 -0
  275. package/studio/prerendered/docs/api.html +38 -38
  276. package/studio/prerendered/docs/api.html.br +0 -0
  277. package/studio/prerendered/docs/api.html.gz +0 -0
  278. package/studio/prerendered/docs/mcp/integrations/autogen.html +40 -40
  279. package/studio/prerendered/docs/mcp/integrations/autogen.html.br +0 -0
  280. package/studio/prerendered/docs/mcp/integrations/autogen.html.gz +0 -0
  281. package/studio/prerendered/docs/mcp/integrations/crewai.html +38 -38
  282. package/studio/prerendered/docs/mcp/integrations/crewai.html.br +0 -0
  283. package/studio/prerendered/docs/mcp/integrations/crewai.html.gz +0 -0
  284. package/studio/prerendered/docs/mcp/integrations/dify.html +38 -38
  285. package/studio/prerendered/docs/mcp/integrations/dify.html.br +0 -0
  286. package/studio/prerendered/docs/mcp/integrations/dify.html.gz +0 -0
  287. package/studio/prerendered/docs/mcp/integrations/flowise.html +38 -38
  288. package/studio/prerendered/docs/mcp/integrations/flowise.html.br +0 -0
  289. package/studio/prerendered/docs/mcp/integrations/flowise.html.gz +0 -0
  290. package/studio/prerendered/docs/mcp/integrations/langchain.html +38 -38
  291. package/studio/prerendered/docs/mcp/integrations/langchain.html.br +0 -0
  292. package/studio/prerendered/docs/mcp/integrations/langchain.html.gz +0 -0
  293. package/studio/prerendered/docs/mcp/integrations/llamaindex.html +38 -38
  294. package/studio/prerendered/docs/mcp/integrations/llamaindex.html.br +0 -0
  295. package/studio/prerendered/docs/mcp/integrations/llamaindex.html.gz +0 -0
  296. package/studio/prerendered/docs/mcp/integrations/make.html +38 -38
  297. package/studio/prerendered/docs/mcp/integrations/make.html.br +0 -0
  298. package/studio/prerendered/docs/mcp/integrations/make.html.gz +0 -0
  299. package/studio/prerendered/docs/mcp/integrations/n8n.html +38 -38
  300. package/studio/prerendered/docs/mcp/integrations/n8n.html.br +0 -0
  301. package/studio/prerendered/docs/mcp/integrations/n8n.html.gz +0 -0
  302. package/studio/prerendered/docs/mcp/integrations.html +38 -38
  303. package/studio/prerendered/docs/mcp/integrations.html.br +0 -0
  304. package/studio/prerendered/docs/mcp/integrations.html.gz +0 -0
  305. package/studio/prerendered/docs/mcp/plans.html +40 -40
  306. package/studio/prerendered/docs/mcp/plans.html.br +0 -0
  307. package/studio/prerendered/docs/mcp/plans.html.gz +0 -0
  308. package/studio/prerendered/docs/mcp/reference.html +48 -47
  309. package/studio/prerendered/docs/mcp/reference.html.br +0 -0
  310. package/studio/prerendered/docs/mcp/reference.html.gz +0 -0
  311. package/studio/prerendered/docs/mcp/setup.html +44 -42
  312. package/studio/prerendered/docs/mcp/setup.html.br +0 -0
  313. package/studio/prerendered/docs/mcp/setup.html.gz +0 -0
  314. package/studio/prerendered/docs/mcp.html +40 -40
  315. package/studio/prerendered/docs/mcp.html.br +0 -0
  316. package/studio/prerendered/docs/mcp.html.gz +0 -0
  317. package/studio/prerendered/docs.html +37 -37
  318. package/studio/prerendered/docs.html.br +0 -0
  319. package/studio/prerendered/docs.html.gz +0 -0
  320. package/studio/prerendered/dub/arabic.html +36 -36
  321. package/studio/prerendered/dub/arabic.html.br +0 -0
  322. package/studio/prerendered/dub/arabic.html.gz +0 -0
  323. package/studio/prerendered/dub/chinese-simplified.html +36 -36
  324. package/studio/prerendered/dub/chinese-simplified.html.br +0 -0
  325. package/studio/prerendered/dub/chinese-simplified.html.gz +0 -0
  326. package/studio/prerendered/dub/dutch.html +36 -36
  327. package/studio/prerendered/dub/dutch.html.br +0 -0
  328. package/studio/prerendered/dub/dutch.html.gz +0 -0
  329. package/studio/prerendered/dub/french.html +36 -36
  330. package/studio/prerendered/dub/french.html.br +0 -0
  331. package/studio/prerendered/dub/french.html.gz +0 -0
  332. package/studio/prerendered/dub/german.html +36 -36
  333. package/studio/prerendered/dub/german.html.br +0 -0
  334. package/studio/prerendered/dub/german.html.gz +0 -0
  335. package/studio/prerendered/dub/hindi.html +36 -36
  336. package/studio/prerendered/dub/hindi.html.br +0 -0
  337. package/studio/prerendered/dub/hindi.html.gz +0 -0
  338. package/studio/prerendered/dub/italian.html +36 -36
  339. package/studio/prerendered/dub/italian.html.br +0 -0
  340. package/studio/prerendered/dub/italian.html.gz +0 -0
  341. package/studio/prerendered/dub/japanese.html +36 -36
  342. package/studio/prerendered/dub/japanese.html.br +0 -0
  343. package/studio/prerendered/dub/japanese.html.gz +0 -0
  344. package/studio/prerendered/dub/korean.html +36 -36
  345. package/studio/prerendered/dub/korean.html.br +0 -0
  346. package/studio/prerendered/dub/korean.html.gz +0 -0
  347. package/studio/prerendered/dub/polish.html +36 -36
  348. package/studio/prerendered/dub/polish.html.br +0 -0
  349. package/studio/prerendered/dub/polish.html.gz +0 -0
  350. package/studio/prerendered/dub/portuguese.html +36 -36
  351. package/studio/prerendered/dub/portuguese.html.br +0 -0
  352. package/studio/prerendered/dub/portuguese.html.gz +0 -0
  353. package/studio/prerendered/dub/spanish.html +36 -36
  354. package/studio/prerendered/dub/spanish.html.br +0 -0
  355. package/studio/prerendered/dub/spanish.html.gz +0 -0
  356. package/studio/prerendered/sitemap.xml +90 -90
  357. package/studio/prerendered/sitemap.xml.br +0 -0
  358. package/studio/prerendered/sitemap.xml.gz +0 -0
  359. package/studio/prerendered/tools/add-captions/instagram.html +36 -36
  360. package/studio/prerendered/tools/add-captions/instagram.html.br +0 -0
  361. package/studio/prerendered/tools/add-captions/instagram.html.gz +0 -0
  362. package/studio/prerendered/tools/add-captions/linkedin.html +36 -36
  363. package/studio/prerendered/tools/add-captions/linkedin.html.br +0 -0
  364. package/studio/prerendered/tools/add-captions/linkedin.html.gz +0 -0
  365. package/studio/prerendered/tools/add-captions/tiktok.html +36 -36
  366. package/studio/prerendered/tools/add-captions/tiktok.html.br +0 -0
  367. package/studio/prerendered/tools/add-captions/tiktok.html.gz +0 -0
  368. package/studio/prerendered/tools/add-captions/twitter-x.html +36 -36
  369. package/studio/prerendered/tools/add-captions/twitter-x.html.br +0 -0
  370. package/studio/prerendered/tools/add-captions/twitter-x.html.gz +0 -0
  371. package/studio/prerendered/tools/add-captions/youtube.html +36 -36
  372. package/studio/prerendered/tools/add-captions/youtube.html.br +0 -0
  373. package/studio/prerendered/tools/add-captions/youtube.html.gz +0 -0
  374. package/studio/prerendered/tools/add-captions.html +40 -40
  375. package/studio/prerendered/tools/add-captions.html.br +0 -0
  376. package/studio/prerendered/tools/add-captions.html.gz +0 -0
  377. package/studio/prerendered/tools/auto-cut/linkedin.html +36 -36
  378. package/studio/prerendered/tools/auto-cut/linkedin.html.br +0 -0
  379. package/studio/prerendered/tools/auto-cut/linkedin.html.gz +0 -0
  380. package/studio/prerendered/tools/auto-cut/podcast.html +36 -36
  381. package/studio/prerendered/tools/auto-cut/podcast.html.br +0 -0
  382. package/studio/prerendered/tools/auto-cut/podcast.html.gz +0 -0
  383. package/studio/prerendered/tools/auto-cut/tiktok.html +36 -36
  384. package/studio/prerendered/tools/auto-cut/tiktok.html.br +0 -0
  385. package/studio/prerendered/tools/auto-cut/tiktok.html.gz +0 -0
  386. package/studio/prerendered/tools/auto-cut/youtube.html +36 -36
  387. package/studio/prerendered/tools/auto-cut/youtube.html.br +0 -0
  388. package/studio/prerendered/tools/auto-cut/youtube.html.gz +0 -0
  389. package/studio/prerendered/tools/auto-cut.html +40 -40
  390. package/studio/prerendered/tools/auto-cut.html.br +0 -0
  391. package/studio/prerendered/tools/auto-cut.html.gz +0 -0
  392. package/studio/prerendered/tools/generate-video/instagram.html +36 -36
  393. package/studio/prerendered/tools/generate-video/instagram.html.br +0 -0
  394. package/studio/prerendered/tools/generate-video/instagram.html.gz +0 -0
  395. package/studio/prerendered/tools/generate-video/tiktok.html +36 -36
  396. package/studio/prerendered/tools/generate-video/tiktok.html.br +0 -0
  397. package/studio/prerendered/tools/generate-video/tiktok.html.gz +0 -0
  398. package/studio/prerendered/tools/generate-video/twitter-x.html +36 -36
  399. package/studio/prerendered/tools/generate-video/twitter-x.html.br +0 -0
  400. package/studio/prerendered/tools/generate-video/twitter-x.html.gz +0 -0
  401. package/studio/prerendered/tools/generate-video/youtube.html +36 -36
  402. package/studio/prerendered/tools/generate-video/youtube.html.br +0 -0
  403. package/studio/prerendered/tools/generate-video/youtube.html.gz +0 -0
  404. package/studio/prerendered/tools/generate-video.html +40 -40
  405. package/studio/prerendered/tools/generate-video.html.br +0 -0
  406. package/studio/prerendered/tools/generate-video.html.gz +0 -0
  407. package/studio/prerendered/tools/laptop-3d-intro/linkedin.html +36 -36
  408. package/studio/prerendered/tools/laptop-3d-intro/linkedin.html.br +0 -0
  409. package/studio/prerendered/tools/laptop-3d-intro/linkedin.html.gz +0 -0
  410. package/studio/prerendered/tools/laptop-3d-intro/saas.html +36 -36
  411. package/studio/prerendered/tools/laptop-3d-intro/saas.html.br +0 -0
  412. package/studio/prerendered/tools/laptop-3d-intro/saas.html.gz +0 -0
  413. package/studio/prerendered/tools/laptop-3d-intro/twitter-x.html +36 -36
  414. package/studio/prerendered/tools/laptop-3d-intro/twitter-x.html.br +0 -0
  415. package/studio/prerendered/tools/laptop-3d-intro/twitter-x.html.gz +0 -0
  416. package/studio/prerendered/tools/laptop-3d-intro/youtube.html +36 -36
  417. package/studio/prerendered/tools/laptop-3d-intro/youtube.html.br +0 -0
  418. package/studio/prerendered/tools/laptop-3d-intro/youtube.html.gz +0 -0
  419. package/studio/prerendered/tools/laptop-3d-intro.html +40 -40
  420. package/studio/prerendered/tools/laptop-3d-intro.html.br +0 -0
  421. package/studio/prerendered/tools/laptop-3d-intro.html.gz +0 -0
  422. package/studio/prerendered/tools/screen-webcam-demo/linkedin.html +36 -36
  423. package/studio/prerendered/tools/screen-webcam-demo/linkedin.html.br +0 -0
  424. package/studio/prerendered/tools/screen-webcam-demo/linkedin.html.gz +0 -0
  425. package/studio/prerendered/tools/screen-webcam-demo/saas.html +36 -36
  426. package/studio/prerendered/tools/screen-webcam-demo/saas.html.br +0 -0
  427. package/studio/prerendered/tools/screen-webcam-demo/saas.html.gz +0 -0
  428. package/studio/prerendered/tools/screen-webcam-demo/twitter-x.html +36 -36
  429. package/studio/prerendered/tools/screen-webcam-demo/twitter-x.html.br +0 -0
  430. package/studio/prerendered/tools/screen-webcam-demo/twitter-x.html.gz +0 -0
  431. package/studio/prerendered/tools/screen-webcam-demo/youtube.html +36 -36
  432. package/studio/prerendered/tools/screen-webcam-demo/youtube.html.br +0 -0
  433. package/studio/prerendered/tools/screen-webcam-demo/youtube.html.gz +0 -0
  434. package/studio/prerendered/tools/screen-webcam-demo.html +40 -40
  435. package/studio/prerendered/tools/screen-webcam-demo.html.br +0 -0
  436. package/studio/prerendered/tools/screen-webcam-demo.html.gz +0 -0
  437. package/studio/prerendered/tools/screenshot-to-social/facebook.html +36 -36
  438. package/studio/prerendered/tools/screenshot-to-social/facebook.html.br +0 -0
  439. package/studio/prerendered/tools/screenshot-to-social/facebook.html.gz +0 -0
  440. package/studio/prerendered/tools/screenshot-to-social/instagram.html +36 -36
  441. package/studio/prerendered/tools/screenshot-to-social/instagram.html.br +0 -0
  442. package/studio/prerendered/tools/screenshot-to-social/instagram.html.gz +0 -0
  443. package/studio/prerendered/tools/screenshot-to-social/linkedin.html +36 -36
  444. package/studio/prerendered/tools/screenshot-to-social/linkedin.html.br +0 -0
  445. package/studio/prerendered/tools/screenshot-to-social/linkedin.html.gz +0 -0
  446. package/studio/prerendered/tools/screenshot-to-social/twitter-x.html +36 -36
  447. package/studio/prerendered/tools/screenshot-to-social/twitter-x.html.br +0 -0
  448. package/studio/prerendered/tools/screenshot-to-social/twitter-x.html.gz +0 -0
  449. package/studio/prerendered/tools/screenshot-to-social.html +40 -40
  450. package/studio/prerendered/tools/screenshot-to-social.html.br +0 -0
  451. package/studio/prerendered/tools/screenshot-to-social.html.gz +0 -0
  452. package/studio/prerendered/tools/translate-video/instagram.html +36 -36
  453. package/studio/prerendered/tools/translate-video/instagram.html.br +0 -0
  454. package/studio/prerendered/tools/translate-video/instagram.html.gz +0 -0
  455. package/studio/prerendered/tools/translate-video/linkedin.html +36 -36
  456. package/studio/prerendered/tools/translate-video/linkedin.html.br +0 -0
  457. package/studio/prerendered/tools/translate-video/linkedin.html.gz +0 -0
  458. package/studio/prerendered/tools/translate-video/tiktok.html +36 -36
  459. package/studio/prerendered/tools/translate-video/tiktok.html.br +0 -0
  460. package/studio/prerendered/tools/translate-video/tiktok.html.gz +0 -0
  461. package/studio/prerendered/tools/translate-video/youtube.html +36 -36
  462. package/studio/prerendered/tools/translate-video/youtube.html.br +0 -0
  463. package/studio/prerendered/tools/translate-video/youtube.html.gz +0 -0
  464. package/studio/prerendered/tools/translate-video.html +40 -40
  465. package/studio/prerendered/tools/translate-video.html.br +0 -0
  466. package/studio/prerendered/tools/translate-video.html.gz +0 -0
  467. package/studio/prerendered/tools/video-beautifier.html +40 -40
  468. package/studio/prerendered/tools/video-beautifier.html.br +0 -0
  469. package/studio/prerendered/tools/video-beautifier.html.gz +0 -0
  470. package/studio/prerendered/tools/video-to-browser/linkedin.html +36 -36
  471. package/studio/prerendered/tools/video-to-browser/linkedin.html.br +0 -0
  472. package/studio/prerendered/tools/video-to-browser/linkedin.html.gz +0 -0
  473. package/studio/prerendered/tools/video-to-browser/saas.html +36 -36
  474. package/studio/prerendered/tools/video-to-browser/saas.html.br +0 -0
  475. package/studio/prerendered/tools/video-to-browser/saas.html.gz +0 -0
  476. package/studio/prerendered/tools/video-to-browser/twitter-x.html +36 -36
  477. package/studio/prerendered/tools/video-to-browser/twitter-x.html.br +0 -0
  478. package/studio/prerendered/tools/video-to-browser/twitter-x.html.gz +0 -0
  479. package/studio/prerendered/tools/video-to-browser/youtube.html +36 -36
  480. package/studio/prerendered/tools/video-to-browser/youtube.html.br +0 -0
  481. package/studio/prerendered/tools/video-to-browser/youtube.html.gz +0 -0
  482. package/studio/prerendered/tools/video-to-browser.html +40 -40
  483. package/studio/prerendered/tools/video-to-browser.html.br +0 -0
  484. package/studio/prerendered/tools/video-to-browser.html.gz +0 -0
  485. package/studio/prerendered/tools/video-to-phone.html +40 -40
  486. package/studio/prerendered/tools/video-to-phone.html.br +0 -0
  487. package/studio/prerendered/tools/video-to-phone.html.gz +0 -0
  488. package/studio/prerendered/vs/canva.html +36 -36
  489. package/studio/prerendered/vs/canva.html.br +0 -0
  490. package/studio/prerendered/vs/canva.html.gz +0 -0
  491. package/studio/prerendered/vs/captions-ai.html +36 -36
  492. package/studio/prerendered/vs/captions-ai.html.br +0 -0
  493. package/studio/prerendered/vs/captions-ai.html.gz +0 -0
  494. package/studio/prerendered/vs/clipchamp.html +36 -36
  495. package/studio/prerendered/vs/clipchamp.html.br +0 -0
  496. package/studio/prerendered/vs/clipchamp.html.gz +0 -0
  497. package/studio/prerendered/vs/descript.html +36 -36
  498. package/studio/prerendered/vs/descript.html.br +0 -0
  499. package/studio/prerendered/vs/descript.html.gz +0 -0
  500. package/studio/prerendered/vs/kapwing.html +36 -36
  501. package/studio/prerendered/vs/kapwing.html.br +0 -0
  502. package/studio/prerendered/vs/kapwing.html.gz +0 -0
  503. package/studio/prerendered/vs/runway.html +36 -36
  504. package/studio/prerendered/vs/runway.html.br +0 -0
  505. package/studio/prerendered/vs/runway.html.gz +0 -0
  506. package/studio/prerendered/vs/submagic.html +36 -36
  507. package/studio/prerendered/vs/submagic.html.br +0 -0
  508. package/studio/prerendered/vs/submagic.html.gz +0 -0
  509. package/studio/prerendered/vs/veed.html +36 -36
  510. package/studio/prerendered/vs/veed.html.br +0 -0
  511. package/studio/prerendered/vs/veed.html.gz +0 -0
  512. package/studio/server/chunks/0-CwPSUJ3w.js +32 -0
  513. package/studio/server/chunks/0-CwPSUJ3w.js.map +1 -0
  514. package/studio/server/chunks/1-CbeNzLl-.js +9 -0
  515. package/studio/server/chunks/1-CbeNzLl-.js.map +1 -0
  516. package/studio/server/chunks/11-C0QAn-bF.js +9 -0
  517. package/studio/server/chunks/11-C0QAn-bF.js.map +1 -0
  518. package/studio/server/chunks/12-DCnPHABd.js +9 -0
  519. package/studio/server/chunks/12-DCnPHABd.js.map +1 -0
  520. package/studio/server/chunks/13-Cyy-P3vn.js +59 -0
  521. package/studio/server/chunks/13-Cyy-P3vn.js.map +1 -0
  522. package/studio/server/chunks/14-Dbdob-lm.js +60 -0
  523. package/studio/server/chunks/14-Dbdob-lm.js.map +1 -0
  524. package/studio/server/chunks/15-DyZbzGI-.js +9 -0
  525. package/studio/server/chunks/15-DyZbzGI-.js.map +1 -0
  526. package/studio/server/chunks/16-Qb7izz2W.js +72 -0
  527. package/studio/server/chunks/16-Qb7izz2W.js.map +1 -0
  528. package/studio/server/chunks/17-B5pMxn3Z.js +9 -0
  529. package/studio/server/chunks/17-B5pMxn3Z.js.map +1 -0
  530. package/studio/server/chunks/18-Dui1aDnz.js +9 -0
  531. package/studio/server/chunks/18-Dui1aDnz.js.map +1 -0
  532. package/studio/server/chunks/19-DgrfAbAy.js +9 -0
  533. package/studio/server/chunks/19-DgrfAbAy.js.map +1 -0
  534. package/studio/server/chunks/20-pRv7XuMf.js +139 -0
  535. package/studio/server/chunks/20-pRv7XuMf.js.map +1 -0
  536. package/studio/server/chunks/3-9IZCenAI.js +9 -0
  537. package/studio/server/chunks/3-9IZCenAI.js.map +1 -0
  538. package/studio/server/chunks/4-CsffFQv4.js +9 -0
  539. package/studio/server/chunks/4-CsffFQv4.js.map +1 -0
  540. package/studio/server/chunks/42-NP9_BFi5.js +56 -0
  541. package/studio/server/chunks/42-NP9_BFi5.js.map +1 -0
  542. package/studio/server/chunks/43-B0_JG7rx.js +9 -0
  543. package/studio/server/chunks/43-B0_JG7rx.js.map +1 -0
  544. package/studio/server/chunks/44-DRZom9oK.js +9 -0
  545. package/studio/server/chunks/44-DRZom9oK.js.map +1 -0
  546. package/studio/server/chunks/45-llvANtsn.js +115 -0
  547. package/studio/server/chunks/45-llvANtsn.js.map +1 -0
  548. package/studio/server/chunks/49-Bm394lLC.js +14 -0
  549. package/studio/server/chunks/49-Bm394lLC.js.map +1 -0
  550. package/studio/server/chunks/5-oazbOi9H.js +9 -0
  551. package/studio/server/chunks/5-oazbOi9H.js.map +1 -0
  552. package/studio/server/chunks/7-DHJzqCHK.js +215 -0
  553. package/studio/server/chunks/7-DHJzqCHK.js.map +1 -0
  554. package/studio/server/chunks/_error.svelte-BkTnhnxP.js +98 -0
  555. package/studio/server/chunks/_error.svelte-BkTnhnxP.js.map +1 -0
  556. package/studio/server/chunks/_error.svelte-CQzFToj8.js +98 -0
  557. package/studio/server/chunks/_error.svelte-CQzFToj8.js.map +1 -0
  558. package/studio/server/chunks/_layout.svelte-BY0hGh-H.js +64 -0
  559. package/studio/server/chunks/_layout.svelte-BY0hGh-H.js.map +1 -0
  560. package/studio/server/chunks/_layout.svelte-CMzss-C2.js +400 -0
  561. package/studio/server/chunks/_layout.svelte-CMzss-C2.js.map +1 -0
  562. package/studio/server/chunks/_layout.svelte-Cn4p7o4q.js +64 -0
  563. package/studio/server/chunks/_layout.svelte-Cn4p7o4q.js.map +1 -0
  564. package/studio/server/chunks/_layout.svelte-DL1DYuzO.js +1054 -0
  565. package/studio/server/chunks/_layout.svelte-DL1DYuzO.js.map +1 -0
  566. package/studio/server/chunks/_page.svelte-B8XqicVW.js +79 -0
  567. package/studio/server/chunks/_page.svelte-B8XqicVW.js.map +1 -0
  568. package/studio/server/chunks/_page.svelte-BF0kq_DA.js +418 -0
  569. package/studio/server/chunks/_page.svelte-BF0kq_DA.js.map +1 -0
  570. package/studio/server/chunks/_page.svelte-BFwMGeqy.js +111 -0
  571. package/studio/server/chunks/_page.svelte-BFwMGeqy.js.map +1 -0
  572. package/studio/server/chunks/_page.svelte-BGPhyNuC.js +192 -0
  573. package/studio/server/chunks/_page.svelte-BGPhyNuC.js.map +1 -0
  574. package/studio/server/chunks/_page.svelte-BdmhHvtc.js +113 -0
  575. package/studio/server/chunks/_page.svelte-BdmhHvtc.js.map +1 -0
  576. package/studio/server/chunks/_page.svelte-CU4XjUEe.js +11350 -0
  577. package/studio/server/chunks/_page.svelte-CU4XjUEe.js.map +1 -0
  578. package/studio/server/chunks/_page.svelte-D74PqaNq.js +256 -0
  579. package/studio/server/chunks/_page.svelte-D74PqaNq.js.map +1 -0
  580. package/studio/server/chunks/_page.svelte-DC9-8nEf.js +1021 -0
  581. package/studio/server/chunks/_page.svelte-DC9-8nEf.js.map +1 -0
  582. package/studio/server/chunks/_page.svelte-DgqoNyxe.js +1732 -0
  583. package/studio/server/chunks/_page.svelte-DgqoNyxe.js.map +1 -0
  584. package/studio/server/chunks/_page.svelte-DhLeBJD_.js +319 -0
  585. package/studio/server/chunks/_page.svelte-DhLeBJD_.js.map +1 -0
  586. package/studio/server/chunks/_page.svelte-czU-SjNZ.js +160 -0
  587. package/studio/server/chunks/_page.svelte-czU-SjNZ.js.map +1 -0
  588. package/studio/server/chunks/_page.svelte-uvKsK6Vw.js +506 -0
  589. package/studio/server/chunks/_page.svelte-uvKsK6Vw.js.map +1 -0
  590. package/studio/server/chunks/_server.ts-BHRR6T63.js +48 -0
  591. package/studio/server/chunks/_server.ts-BHRR6T63.js.map +1 -0
  592. package/studio/server/chunks/_server.ts-BHnpcEVo.js +52 -0
  593. package/studio/server/chunks/_server.ts-BHnpcEVo.js.map +1 -0
  594. package/studio/server/chunks/_server.ts-BMJ-08P_.js +34 -0
  595. package/studio/server/chunks/_server.ts-BMJ-08P_.js.map +1 -0
  596. package/studio/server/chunks/_server.ts-Bj0V1FXs.js +722 -0
  597. package/studio/server/chunks/_server.ts-Bj0V1FXs.js.map +1 -0
  598. package/studio/server/chunks/_server.ts-ByVY8xND.js +41 -0
  599. package/studio/server/chunks/_server.ts-ByVY8xND.js.map +1 -0
  600. package/studio/server/chunks/_server.ts-CA1HxfdZ.js +58 -0
  601. package/studio/server/chunks/_server.ts-CA1HxfdZ.js.map +1 -0
  602. package/studio/server/chunks/_server.ts-CGi39j79.js +232 -0
  603. package/studio/server/chunks/_server.ts-CGi39j79.js.map +1 -0
  604. package/studio/server/chunks/_server.ts-CGs8hOo6.js +760 -0
  605. package/studio/server/chunks/_server.ts-CGs8hOo6.js.map +1 -0
  606. package/studio/server/chunks/_server.ts-CNJZSPm5.js +60 -0
  607. package/studio/server/chunks/_server.ts-CNJZSPm5.js.map +1 -0
  608. package/studio/server/chunks/_server.ts-CXuYytLK.js +118 -0
  609. package/studio/server/chunks/_server.ts-CXuYytLK.js.map +1 -0
  610. package/studio/server/chunks/_server.ts-C_njIfbT.js +122 -0
  611. package/studio/server/chunks/_server.ts-C_njIfbT.js.map +1 -0
  612. package/studio/server/chunks/_server.ts-Ckj93zLL.js +49 -0
  613. package/studio/server/chunks/_server.ts-Ckj93zLL.js.map +1 -0
  614. package/studio/server/chunks/_server.ts-CriU7HwI.js +22 -0
  615. package/studio/server/chunks/_server.ts-CriU7HwI.js.map +1 -0
  616. package/studio/server/chunks/_server.ts-D1inEYb_.js +87 -0
  617. package/studio/server/chunks/_server.ts-D1inEYb_.js.map +1 -0
  618. package/studio/server/chunks/_server.ts-D_YUIRqi.js +87 -0
  619. package/studio/server/chunks/_server.ts-D_YUIRqi.js.map +1 -0
  620. package/studio/server/chunks/_server.ts-D_fEYx6c.js +158 -0
  621. package/studio/server/chunks/_server.ts-D_fEYx6c.js.map +1 -0
  622. package/studio/server/chunks/_server.ts-Dg9C9Iih.js +70 -0
  623. package/studio/server/chunks/_server.ts-Dg9C9Iih.js.map +1 -0
  624. package/studio/server/chunks/_server.ts-Dji1nGrU.js +91 -0
  625. package/studio/server/chunks/_server.ts-Dji1nGrU.js.map +1 -0
  626. package/studio/server/chunks/_server.ts-DnGq-qro.js +68 -0
  627. package/studio/server/chunks/_server.ts-DnGq-qro.js.map +1 -0
  628. package/studio/server/chunks/_server.ts-Do6qk473.js +56 -0
  629. package/studio/server/chunks/_server.ts-Do6qk473.js.map +1 -0
  630. package/studio/server/chunks/_server.ts-DsTz4hAe.js +96 -0
  631. package/studio/server/chunks/_server.ts-DsTz4hAe.js.map +1 -0
  632. package/studio/server/chunks/_server.ts-f6EVRY82.js +79 -0
  633. package/studio/server/chunks/_server.ts-f6EVRY82.js.map +1 -0
  634. package/studio/server/chunks/_server.ts-p_1efpqn.js +109 -0
  635. package/studio/server/chunks/_server.ts-p_1efpqn.js.map +1 -0
  636. package/studio/server/chunks/_server.ts-xAAnOaCl.js +303 -0
  637. package/studio/server/chunks/_server.ts-xAAnOaCl.js.map +1 -0
  638. package/studio/server/chunks/adapter-XtQVoo_l.js +91 -0
  639. package/studio/server/chunks/adapter-XtQVoo_l.js.map +1 -0
  640. package/studio/server/chunks/admin.remote-Dc0snX5Q.js +105 -0
  641. package/studio/server/chunks/admin.remote-Dc0snX5Q.js.map +1 -0
  642. package/studio/server/chunks/ai-access-bDlOKhrS.js +299 -0
  643. package/studio/server/chunks/ai-access-bDlOKhrS.js.map +1 -0
  644. package/studio/server/chunks/ai.remote-6DyE05J7.js +37 -0
  645. package/studio/server/chunks/ai.remote-6DyE05J7.js.map +1 -0
  646. package/studio/server/chunks/alert-dialog-description-BhZkDj31.js +578 -0
  647. package/studio/server/chunks/alert-dialog-description-BhZkDj31.js.map +1 -0
  648. package/studio/server/chunks/animation-sOd5R1cE.js +2912 -0
  649. package/studio/server/chunks/animation-sOd5R1cE.js.map +1 -0
  650. package/studio/server/chunks/api-Do--xZ9M.js +434 -0
  651. package/studio/server/chunks/api-Do--xZ9M.js.map +1 -0
  652. package/studio/server/chunks/api-keys-CcmgUWTH.js +117 -0
  653. package/studio/server/chunks/api-keys-CcmgUWTH.js.map +1 -0
  654. package/studio/server/chunks/api-keys.remote-JFKHDaD1.js +88 -0
  655. package/studio/server/chunks/api-keys.remote-JFKHDaD1.js.map +1 -0
  656. package/studio/server/chunks/app-header-BZw6FnXs.js +96 -0
  657. package/studio/server/chunks/app-header-BZw6FnXs.js.map +1 -0
  658. package/studio/server/chunks/assets.remote-CX2FvnlZ.js +113 -0
  659. package/studio/server/chunks/assets.remote-CX2FvnlZ.js.map +1 -0
  660. package/studio/server/chunks/attribute-protocol-DQ-1julf.js +151 -0
  661. package/studio/server/chunks/attribute-protocol-DQ-1julf.js.map +1 -0
  662. package/studio/server/chunks/auth-CdmLkVO-.js +22472 -0
  663. package/studio/server/chunks/auth-CdmLkVO-.js.map +1 -0
  664. package/studio/server/chunks/auth.remote-DgcD7hjY.js +351 -0
  665. package/studio/server/chunks/auth.remote-DgcD7hjY.js.map +1 -0
  666. package/studio/server/chunks/base-qepI6vHK.js +210 -0
  667. package/studio/server/chunks/base-qepI6vHK.js.map +1 -0
  668. package/studio/server/chunks/bun-sqlite-dialect-C8OaCWSL-CfYOKJsa.js +197 -0
  669. package/studio/server/chunks/bun-sqlite-dialect-C8OaCWSL-CfYOKJsa.js.map +1 -0
  670. package/studio/server/chunks/captions.remote-B5ErNQXV.js +184 -0
  671. package/studio/server/chunks/captions.remote-B5ErNQXV.js.map +1 -0
  672. package/studio/server/chunks/client2-vVBd4CsE.js +66 -0
  673. package/studio/server/chunks/client2-vVBd4CsE.js.map +1 -0
  674. package/studio/server/chunks/d1-sqlite-dialect-sYHNqBte-D3F4ZSZP.js +160 -0
  675. package/studio/server/chunks/d1-sqlite-dialect-sYHNqBte-D3F4ZSZP.js.map +1 -0
  676. package/studio/server/chunks/design-knowledge-D2NUeAAo.js +334 -0
  677. package/studio/server/chunks/design-knowledge-D2NUeAAo.js.map +1 -0
  678. package/studio/server/chunks/desktop-bootstrap-Z0_g_8r3.js +67 -0
  679. package/studio/server/chunks/desktop-bootstrap-Z0_g_8r3.js.map +1 -0
  680. package/studio/server/chunks/dubbing.remote-tYalz3IA.js +153 -0
  681. package/studio/server/chunks/dubbing.remote-tYalz3IA.js.map +1 -0
  682. package/studio/server/chunks/editor.svelte-Bdv5LaOt.js +21026 -0
  683. package/studio/server/chunks/editor.svelte-Bdv5LaOt.js.map +1 -0
  684. package/studio/server/chunks/env-AoZ3P0fg.js +92 -0
  685. package/studio/server/chunks/env-AoZ3P0fg.js.map +1 -0
  686. package/studio/server/chunks/extract-audio.remote-BKBT80-g.js +95 -0
  687. package/studio/server/chunks/extract-audio.remote-BKBT80-g.js.map +1 -0
  688. package/studio/server/chunks/feedback.remote-DveIB_5_.js +49 -0
  689. package/studio/server/chunks/feedback.remote-DveIB_5_.js.map +1 -0
  690. package/studio/server/chunks/find-stock-image-Cwkwf5gV.js +709 -0
  691. package/studio/server/chunks/find-stock-image-Cwkwf5gV.js.map +1 -0
  692. package/studio/server/chunks/fs-project-BxA38YDy.js +134 -0
  693. package/studio/server/chunks/fs-project-BxA38YDy.js.map +1 -0
  694. package/studio/server/chunks/hooks.server-DNzGN0kv.js +309 -0
  695. package/studio/server/chunks/hooks.server-DNzGN0kv.js.map +1 -0
  696. package/studio/server/chunks/html-parser-t3Ydy25K.js +8516 -0
  697. package/studio/server/chunks/html-parser-t3Ydy25K.js.map +1 -0
  698. package/studio/server/chunks/html-writer-D8dOWi0D.js +242 -0
  699. package/studio/server/chunks/html-writer-D8dOWi0D.js.map +1 -0
  700. package/studio/server/chunks/image-generation.remote-omBcspXi.js +140 -0
  701. package/studio/server/chunks/image-generation.remote-omBcspXi.js.map +1 -0
  702. package/studio/server/chunks/index-D-agccNM.js +4578 -0
  703. package/studio/server/chunks/index-D-agccNM.js.map +1 -0
  704. package/studio/server/chunks/index12-B6IiEYAz.js +265 -0
  705. package/studio/server/chunks/index12-B6IiEYAz.js.map +1 -0
  706. package/studio/server/chunks/index2-By5vPQD_.js +23 -0
  707. package/studio/server/chunks/index2-By5vPQD_.js.map +1 -0
  708. package/studio/server/chunks/index3-DS_3EH31.js +8 -0
  709. package/studio/server/chunks/index3-DS_3EH31.js.map +1 -0
  710. package/studio/server/chunks/index4-CgVJCMu8.js +48 -0
  711. package/studio/server/chunks/index4-CgVJCMu8.js.map +1 -0
  712. package/studio/server/chunks/index6-BwFC1GDh.js +239 -0
  713. package/studio/server/chunks/index6-BwFC1GDh.js.map +1 -0
  714. package/studio/server/chunks/index8-Dt6GB1aJ.js +44 -0
  715. package/studio/server/chunks/index8-Dt6GB1aJ.js.map +1 -0
  716. package/studio/server/chunks/layout-template-BhL4-5tM.js +1371 -0
  717. package/studio/server/chunks/layout-template-BhL4-5tM.js.map +1 -0
  718. package/studio/server/chunks/lummi-Cu3Js7rz.js +189 -0
  719. package/studio/server/chunks/lummi-Cu3Js7rz.js.map +1 -0
  720. package/studio/server/chunks/lummi.remote-BMN4XopC.js +44 -0
  721. package/studio/server/chunks/lummi.remote-BMN4XopC.js.map +1 -0
  722. package/studio/server/chunks/media-analysis-DXUN3NUM.js +229 -0
  723. package/studio/server/chunks/media-analysis-DXUN3NUM.js.map +1 -0
  724. package/studio/server/chunks/media-analysis.remote-BVdRHeP8.js +63 -0
  725. package/studio/server/chunks/media-analysis.remote-BVdRHeP8.js.map +1 -0
  726. package/studio/server/chunks/media-v9Bq2kuR.js +157 -0
  727. package/studio/server/chunks/media-v9Bq2kuR.js.map +1 -0
  728. package/studio/server/chunks/middleware-D0o6fOUG.js +72 -0
  729. package/studio/server/chunks/middleware-D0o6fOUG.js.map +1 -0
  730. package/studio/server/chunks/mutations-BlgZViQj.js +551 -0
  731. package/studio/server/chunks/mutations-BlgZViQj.js.map +1 -0
  732. package/studio/server/chunks/node-sqlite-dialect-BYaBkSm1.js +197 -0
  733. package/studio/server/chunks/node-sqlite-dialect-BYaBkSm1.js.map +1 -0
  734. package/studio/server/chunks/onboarding-email-CCv_cZ-_.js +311 -0
  735. package/studio/server/chunks/onboarding-email-CCv_cZ-_.js.map +1 -0
  736. package/studio/server/chunks/optional-services-BGRY7tmz.js +45 -0
  737. package/studio/server/chunks/optional-services-BGRY7tmz.js.map +1 -0
  738. package/studio/server/chunks/pagination-Q7FOr3rO.js +159 -0
  739. package/studio/server/chunks/pagination-Q7FOr3rO.js.map +1 -0
  740. package/studio/server/chunks/posthog-kZp2zKvY.js +11 -0
  741. package/studio/server/chunks/posthog-kZp2zKvY.js.map +1 -0
  742. package/studio/server/chunks/presets-CU-ej2J9.js +369 -0
  743. package/studio/server/chunks/presets-CU-ej2J9.js.map +1 -0
  744. package/studio/server/chunks/project-layer-yZ50OnjM.js +28 -0
  745. package/studio/server/chunks/project-layer-yZ50OnjM.js.map +1 -0
  746. package/studio/server/chunks/projects.remote-BevbcBv4.js +297 -0
  747. package/studio/server/chunks/projects.remote-BevbcBv4.js.map +1 -0
  748. package/studio/server/chunks/queue-init-CcgYZbeV.js +38 -0
  749. package/studio/server/chunks/queue-init-CcgYZbeV.js.map +1 -0
  750. package/studio/server/chunks/registry-DcyeMfNZ.js +18 -0
  751. package/studio/server/chunks/registry-DcyeMfNZ.js.map +1 -0
  752. package/studio/server/chunks/registry2-DJC1cBxe.js +4851 -0
  753. package/studio/server/chunks/registry2-DJC1cBxe.js.map +1 -0
  754. package/studio/server/chunks/remote-148gj0t-CLfgEUwr.js +15 -0
  755. package/studio/server/chunks/remote-148gj0t-CLfgEUwr.js.map +1 -0
  756. package/studio/server/chunks/remote-1afl6ud-BYqN02Le.js +18 -0
  757. package/studio/server/chunks/remote-1afl6ud-BYqN02Le.js.map +1 -0
  758. package/studio/server/chunks/remote-1cihryv-BxHbFmSt.js +34 -0
  759. package/studio/server/chunks/remote-1cihryv-BxHbFmSt.js.map +1 -0
  760. package/studio/server/chunks/remote-1ez0sx-BWvDnL9q.js +34 -0
  761. package/studio/server/chunks/remote-1ez0sx-BWvDnL9q.js.map +1 -0
  762. package/studio/server/chunks/remote-1mi3j6d-Cg0pK35v.js +21 -0
  763. package/studio/server/chunks/remote-1mi3j6d-Cg0pK35v.js.map +1 -0
  764. package/studio/server/chunks/remote-1rjk8jv-CF94t93Y.js +22 -0
  765. package/studio/server/chunks/remote-1rjk8jv-CF94t93Y.js.map +1 -0
  766. package/studio/server/chunks/remote-1web5fy-BcJGUGtw.js +35 -0
  767. package/studio/server/chunks/remote-1web5fy-BcJGUGtw.js.map +1 -0
  768. package/studio/server/chunks/remote-5mu9ty-CGtbs6nv.js +31 -0
  769. package/studio/server/chunks/remote-5mu9ty-CGtbs6nv.js.map +1 -0
  770. package/studio/server/chunks/remote-aelvq6-C3B2AyF6.js +26 -0
  771. package/studio/server/chunks/remote-aelvq6-C3B2AyF6.js.map +1 -0
  772. package/studio/server/chunks/remote-em2k3w-Z00J8-Q9.js +25 -0
  773. package/studio/server/chunks/remote-em2k3w-Z00J8-Q9.js.map +1 -0
  774. package/studio/server/chunks/remote-gezfls-DWj4X0qA.js +21 -0
  775. package/studio/server/chunks/remote-gezfls-DWj4X0qA.js.map +1 -0
  776. package/studio/server/chunks/remote-lv3p1w-BcKTNydX.js +15 -0
  777. package/studio/server/chunks/remote-lv3p1w-BcKTNydX.js.map +1 -0
  778. package/studio/server/chunks/remote-ssr7vi-rhkV3R21.js +33 -0
  779. package/studio/server/chunks/remote-ssr7vi-rhkV3R21.js.map +1 -0
  780. package/studio/server/chunks/remote-sy19x7-SCvG1tDD.js +29 -0
  781. package/studio/server/chunks/remote-sy19x7-SCvG1tDD.js.map +1 -0
  782. package/studio/server/chunks/remote-tisyb0-Ct_sfSGt.js +31 -0
  783. package/studio/server/chunks/remote-tisyb0-Ct_sfSGt.js.map +1 -0
  784. package/studio/server/chunks/remote-xj8myv-tYWgOBub.js +31 -0
  785. package/studio/server/chunks/remote-xj8myv-tYWgOBub.js.map +1 -0
  786. package/studio/server/chunks/remote-z7lvth-BxO_zBV5.js +23 -0
  787. package/studio/server/chunks/remote-z7lvth-BxO_zBV5.js.map +1 -0
  788. package/studio/server/chunks/remote-zjib3m-Dcyw4Y6L.js +24 -0
  789. package/studio/server/chunks/remote-zjib3m-Dcyw4Y6L.js.map +1 -0
  790. package/studio/server/chunks/render-api-DtG3ftN1.js +240 -0
  791. package/studio/server/chunks/render-api-DtG3ftN1.js.map +1 -0
  792. package/studio/server/chunks/scrub-xyz.svelte_svelte_type_style_lang-BuQqzLLy.js +4752 -0
  793. package/studio/server/chunks/scrub-xyz.svelte_svelte_type_style_lang-BuQqzLLy.js.map +1 -0
  794. package/studio/server/chunks/stock-image.remote-Cn_Dh7Ok.js +87 -0
  795. package/studio/server/chunks/stock-image.remote-Cn_Dh7Ok.js.map +1 -0
  796. package/studio/server/chunks/subscription-BC4gCTG6.js +138 -0
  797. package/studio/server/chunks/subscription-BC4gCTG6.js.map +1 -0
  798. package/studio/server/chunks/subscription-limits-kr9leRdz.js +114 -0
  799. package/studio/server/chunks/subscription-limits-kr9leRdz.js.map +1 -0
  800. package/studio/server/chunks/template-usage.remote-DL-DKmuu.js +53 -0
  801. package/studio/server/chunks/template-usage.remote-DL-DKmuu.js.map +1 -0
  802. package/studio/server/chunks/thumbnail-queue-D4GYcvrD.js +148 -0
  803. package/studio/server/chunks/thumbnail-queue-D4GYcvrD.js.map +1 -0
  804. package/studio/server/chunks/tooltip-provider-D6ZF3H34.js +30 -0
  805. package/studio/server/chunks/tooltip-provider-D6ZF3H34.js.map +1 -0
  806. package/studio/server/chunks/tooltip.svelte-DRe72lD-.js +658 -0
  807. package/studio/server/chunks/tooltip.svelte-DRe72lD-.js.map +1 -0
  808. package/studio/server/chunks/tts-voices-B9J2ZzGy.js +32 -0
  809. package/studio/server/chunks/tts-voices-B9J2ZzGy.js.map +1 -0
  810. package/studio/server/chunks/tts.remote-Btrg7DBL.js +194 -0
  811. package/studio/server/chunks/tts.remote-Btrg7DBL.js.map +1 -0
  812. package/studio/server/chunks/ui.svelte-FJio-gZM.js +88 -0
  813. package/studio/server/chunks/ui.svelte-FJio-gZM.js.map +1 -0
  814. package/studio/server/chunks/upload-service-Boi3a_IC.js +220 -0
  815. package/studio/server/chunks/upload-service-Boi3a_IC.js.map +1 -0
  816. package/studio/server/chunks/upload.remote-Bhhj6ZvH.js +131 -0
  817. package/studio/server/chunks/upload.remote-Bhhj6ZvH.js.map +1 -0
  818. package/studio/server/chunks/video-generation.remote-CBblzjAk.js +197 -0
  819. package/studio/server/chunks/video-generation.remote-CBblzjAk.js.map +1 -0
  820. package/studio/server/chunks/video-renderer-DJUVOoRL.js +412 -0
  821. package/studio/server/chunks/video-renderer-DJUVOoRL.js.map +1 -0
  822. package/studio/server/chunks/watermark-DJiyRHwX.js +164 -0
  823. package/studio/server/chunks/watermark-DJiyRHwX.js.map +1 -0
  824. package/studio/server/index.js +1 -1
  825. package/studio/server/manifest.js +64 -62
  826. package/studio/server/manifest.js.map +1 -1
  827. package/studio/client/_app/immutable/assets/0.BKuIH3jk.css +0 -1
  828. package/studio/client/_app/immutable/assets/0.BKuIH3jk.css.br +0 -0
  829. package/studio/client/_app/immutable/assets/0.BKuIH3jk.css.gz +0 -0
  830. package/studio/client/_app/immutable/assets/editor._QrWwLKb.css +0 -1
  831. package/studio/client/_app/immutable/assets/editor._QrWwLKb.css.br +0 -2
  832. package/studio/client/_app/immutable/assets/editor._QrWwLKb.css.gz +0 -0
  833. package/studio/client/_app/immutable/chunks/-w8AgfGk.js +0 -1
  834. package/studio/client/_app/immutable/chunks/-w8AgfGk.js.br +0 -0
  835. package/studio/client/_app/immutable/chunks/-w8AgfGk.js.gz +0 -0
  836. package/studio/client/_app/immutable/chunks/0LXoSuAq.js +0 -1
  837. package/studio/client/_app/immutable/chunks/0LXoSuAq.js.br +0 -0
  838. package/studio/client/_app/immutable/chunks/0LXoSuAq.js.gz +0 -0
  839. package/studio/client/_app/immutable/chunks/0hf0C23S.js +0 -1
  840. package/studio/client/_app/immutable/chunks/0hf0C23S.js.br +0 -0
  841. package/studio/client/_app/immutable/chunks/0hf0C23S.js.gz +0 -0
  842. package/studio/client/_app/immutable/chunks/52GXB-Lx.js +0 -1
  843. package/studio/client/_app/immutable/chunks/52GXB-Lx.js.br +0 -0
  844. package/studio/client/_app/immutable/chunks/52GXB-Lx.js.gz +0 -0
  845. package/studio/client/_app/immutable/chunks/B6hmyilk.js +0 -1
  846. package/studio/client/_app/immutable/chunks/B6hmyilk.js.br +0 -0
  847. package/studio/client/_app/immutable/chunks/B6hmyilk.js.gz +0 -0
  848. package/studio/client/_app/immutable/chunks/BAhypDJI.js +0 -1
  849. package/studio/client/_app/immutable/chunks/BAhypDJI.js.br +0 -0
  850. package/studio/client/_app/immutable/chunks/BAhypDJI.js.gz +0 -0
  851. package/studio/client/_app/immutable/chunks/BSBe_oem.js +0 -16
  852. package/studio/client/_app/immutable/chunks/BSBe_oem.js.br +0 -0
  853. package/studio/client/_app/immutable/chunks/BSBe_oem.js.gz +0 -0
  854. package/studio/client/_app/immutable/chunks/BSPxtRj6.js +0 -1
  855. package/studio/client/_app/immutable/chunks/BSPxtRj6.js.br +0 -0
  856. package/studio/client/_app/immutable/chunks/BSPxtRj6.js.gz +0 -0
  857. package/studio/client/_app/immutable/chunks/BTkRM4Uk.js +0 -1
  858. package/studio/client/_app/immutable/chunks/BTkRM4Uk.js.br +0 -0
  859. package/studio/client/_app/immutable/chunks/BTkRM4Uk.js.gz +0 -0
  860. package/studio/client/_app/immutable/chunks/BY7NfAld.js +0 -4
  861. package/studio/client/_app/immutable/chunks/BY7NfAld.js.br +0 -0
  862. package/studio/client/_app/immutable/chunks/BY7NfAld.js.gz +0 -0
  863. package/studio/client/_app/immutable/chunks/BcFepoRa.js +0 -730
  864. package/studio/client/_app/immutable/chunks/BcFepoRa.js.br +0 -0
  865. package/studio/client/_app/immutable/chunks/BcFepoRa.js.gz +0 -0
  866. package/studio/client/_app/immutable/chunks/BvzaEl32.js +0 -1
  867. package/studio/client/_app/immutable/chunks/BvzaEl32.js.br +0 -0
  868. package/studio/client/_app/immutable/chunks/BvzaEl32.js.gz +0 -0
  869. package/studio/client/_app/immutable/chunks/Bxcr6TQy.js +0 -99
  870. package/studio/client/_app/immutable/chunks/Bxcr6TQy.js.br +0 -0
  871. package/studio/client/_app/immutable/chunks/Bxcr6TQy.js.gz +0 -0
  872. package/studio/client/_app/immutable/chunks/C0K_KauH.js +0 -1
  873. package/studio/client/_app/immutable/chunks/C0K_KauH.js.br +0 -0
  874. package/studio/client/_app/immutable/chunks/C0K_KauH.js.gz +0 -0
  875. package/studio/client/_app/immutable/chunks/C3zSaQMD.js +0 -1
  876. package/studio/client/_app/immutable/chunks/C3zSaQMD.js.br +0 -2
  877. package/studio/client/_app/immutable/chunks/C3zSaQMD.js.gz +0 -0
  878. package/studio/client/_app/immutable/chunks/C6BSxyDb.js +0 -1
  879. package/studio/client/_app/immutable/chunks/C6BSxyDb.js.br +0 -0
  880. package/studio/client/_app/immutable/chunks/C6BSxyDb.js.gz +0 -0
  881. package/studio/client/_app/immutable/chunks/C8FzHBqQ.js +0 -1
  882. package/studio/client/_app/immutable/chunks/C8FzHBqQ.js.br +0 -0
  883. package/studio/client/_app/immutable/chunks/C8FzHBqQ.js.gz +0 -0
  884. package/studio/client/_app/immutable/chunks/CC8c0epL.js +0 -4
  885. package/studio/client/_app/immutable/chunks/CC8c0epL.js.br +0 -0
  886. package/studio/client/_app/immutable/chunks/CC8c0epL.js.gz +0 -0
  887. package/studio/client/_app/immutable/chunks/CQdOmqus.js +0 -1
  888. package/studio/client/_app/immutable/chunks/CQdOmqus.js.br +0 -0
  889. package/studio/client/_app/immutable/chunks/CQdOmqus.js.gz +0 -0
  890. package/studio/client/_app/immutable/chunks/C_JEyoc9.js +0 -1
  891. package/studio/client/_app/immutable/chunks/C_JEyoc9.js.br +0 -0
  892. package/studio/client/_app/immutable/chunks/C_JEyoc9.js.gz +0 -0
  893. package/studio/client/_app/immutable/chunks/C_glBBzR.js +0 -2
  894. package/studio/client/_app/immutable/chunks/C_glBBzR.js.br +0 -0
  895. package/studio/client/_app/immutable/chunks/C_glBBzR.js.gz +0 -0
  896. package/studio/client/_app/immutable/chunks/CazEfIaP.js +0 -1
  897. package/studio/client/_app/immutable/chunks/CazEfIaP.js.br +0 -0
  898. package/studio/client/_app/immutable/chunks/CazEfIaP.js.gz +0 -0
  899. package/studio/client/_app/immutable/chunks/CiDOuEjR.js +0 -1
  900. package/studio/client/_app/immutable/chunks/CiDOuEjR.js.br +0 -0
  901. package/studio/client/_app/immutable/chunks/CiDOuEjR.js.gz +0 -0
  902. package/studio/client/_app/immutable/chunks/Cnoy1Nsk.js +0 -1
  903. package/studio/client/_app/immutable/chunks/Cnoy1Nsk.js.br +0 -0
  904. package/studio/client/_app/immutable/chunks/Cnoy1Nsk.js.gz +0 -0
  905. package/studio/client/_app/immutable/chunks/CrHjC-CS.js +0 -1
  906. package/studio/client/_app/immutable/chunks/CrHjC-CS.js.br +0 -0
  907. package/studio/client/_app/immutable/chunks/CrHjC-CS.js.gz +0 -0
  908. package/studio/client/_app/immutable/chunks/D-G_aVDe.js +0 -1
  909. package/studio/client/_app/immutable/chunks/D-G_aVDe.js.br +0 -0
  910. package/studio/client/_app/immutable/chunks/D-G_aVDe.js.gz +0 -0
  911. package/studio/client/_app/immutable/chunks/DK-xvsKr.js +0 -1
  912. package/studio/client/_app/immutable/chunks/DK-xvsKr.js.br +0 -0
  913. package/studio/client/_app/immutable/chunks/DK-xvsKr.js.gz +0 -0
  914. package/studio/client/_app/immutable/chunks/DKwvwQkU.js +0 -1
  915. package/studio/client/_app/immutable/chunks/DKwvwQkU.js.br +0 -0
  916. package/studio/client/_app/immutable/chunks/DKwvwQkU.js.gz +0 -0
  917. package/studio/client/_app/immutable/chunks/DRDQO7lT.js +0 -1
  918. package/studio/client/_app/immutable/chunks/DRDQO7lT.js.br +0 -0
  919. package/studio/client/_app/immutable/chunks/DRDQO7lT.js.gz +0 -0
  920. package/studio/client/_app/immutable/chunks/DTcslyJn.js +0 -1
  921. package/studio/client/_app/immutable/chunks/DTcslyJn.js.br +0 -0
  922. package/studio/client/_app/immutable/chunks/DTcslyJn.js.gz +0 -0
  923. package/studio/client/_app/immutable/chunks/DbaIpQMW.js +0 -512
  924. package/studio/client/_app/immutable/chunks/DbaIpQMW.js.br +0 -0
  925. package/studio/client/_app/immutable/chunks/DbaIpQMW.js.gz +0 -0
  926. package/studio/client/_app/immutable/chunks/Dhskw98X.js +0 -1
  927. package/studio/client/_app/immutable/chunks/Dhskw98X.js.br +0 -0
  928. package/studio/client/_app/immutable/chunks/Dhskw98X.js.gz +0 -0
  929. package/studio/client/_app/immutable/chunks/Dl3gtmRH.js +0 -1
  930. package/studio/client/_app/immutable/chunks/Dl3gtmRH.js.br +0 -0
  931. package/studio/client/_app/immutable/chunks/Dl3gtmRH.js.gz +0 -0
  932. package/studio/client/_app/immutable/chunks/Du09UsT_.js +0 -1
  933. package/studio/client/_app/immutable/chunks/Du09UsT_.js.br +0 -0
  934. package/studio/client/_app/immutable/chunks/Du09UsT_.js.gz +0 -0
  935. package/studio/client/_app/immutable/chunks/Duawn2EX.js +0 -1
  936. package/studio/client/_app/immutable/chunks/Duawn2EX.js.br +0 -0
  937. package/studio/client/_app/immutable/chunks/Duawn2EX.js.gz +0 -0
  938. package/studio/client/_app/immutable/chunks/DxbwWMuJ.js +0 -1
  939. package/studio/client/_app/immutable/chunks/DxbwWMuJ.js.br +0 -0
  940. package/studio/client/_app/immutable/chunks/DxbwWMuJ.js.gz +0 -0
  941. package/studio/client/_app/immutable/chunks/DzMyNXK1.js +0 -5
  942. package/studio/client/_app/immutable/chunks/DzMyNXK1.js.br +0 -0
  943. package/studio/client/_app/immutable/chunks/DzMyNXK1.js.gz +0 -0
  944. package/studio/client/_app/immutable/chunks/K82XSOze.js +0 -1
  945. package/studio/client/_app/immutable/chunks/K82XSOze.js.br +0 -0
  946. package/studio/client/_app/immutable/chunks/K82XSOze.js.gz +0 -0
  947. package/studio/client/_app/immutable/chunks/LegOngm6.js +0 -92
  948. package/studio/client/_app/immutable/chunks/LegOngm6.js.br +0 -0
  949. package/studio/client/_app/immutable/chunks/LegOngm6.js.gz +0 -0
  950. package/studio/client/_app/immutable/chunks/QUVFwVNg.js +0 -1
  951. package/studio/client/_app/immutable/chunks/QUVFwVNg.js.br +0 -0
  952. package/studio/client/_app/immutable/chunks/QUVFwVNg.js.gz +0 -0
  953. package/studio/client/_app/immutable/chunks/UzmbP4fJ.js +0 -1
  954. package/studio/client/_app/immutable/chunks/UzmbP4fJ.js.br +0 -0
  955. package/studio/client/_app/immutable/chunks/UzmbP4fJ.js.gz +0 -0
  956. package/studio/client/_app/immutable/chunks/WVZkyfqK.js +0 -1
  957. package/studio/client/_app/immutable/chunks/WVZkyfqK.js.br +0 -0
  958. package/studio/client/_app/immutable/chunks/WVZkyfqK.js.gz +0 -0
  959. package/studio/client/_app/immutable/chunks/lmiZGmp5.js +0 -1
  960. package/studio/client/_app/immutable/chunks/lmiZGmp5.js.br +0 -0
  961. package/studio/client/_app/immutable/chunks/lmiZGmp5.js.gz +0 -0
  962. package/studio/client/_app/immutable/chunks/t2OI8QCJ.js +0 -2
  963. package/studio/client/_app/immutable/chunks/t2OI8QCJ.js.br +0 -0
  964. package/studio/client/_app/immutable/chunks/t2OI8QCJ.js.gz +0 -0
  965. package/studio/client/_app/immutable/entry/app.ZJxo7olm.js +0 -2
  966. package/studio/client/_app/immutable/entry/app.ZJxo7olm.js.br +0 -0
  967. package/studio/client/_app/immutable/entry/app.ZJxo7olm.js.gz +0 -0
  968. package/studio/client/_app/immutable/entry/start.8QDn_ECL.js +0 -1
  969. package/studio/client/_app/immutable/entry/start.8QDn_ECL.js.br +0 -0
  970. package/studio/client/_app/immutable/entry/start.8QDn_ECL.js.gz +0 -0
  971. package/studio/client/_app/immutable/nodes/0.adNFkwFE.js +0 -2
  972. package/studio/client/_app/immutable/nodes/0.adNFkwFE.js.br +0 -0
  973. package/studio/client/_app/immutable/nodes/0.adNFkwFE.js.gz +0 -0
  974. package/studio/client/_app/immutable/nodes/1.BWNv6Cb_.js +0 -1
  975. package/studio/client/_app/immutable/nodes/1.BWNv6Cb_.js.br +0 -0
  976. package/studio/client/_app/immutable/nodes/1.BWNv6Cb_.js.gz +0 -0
  977. package/studio/client/_app/immutable/nodes/10.CczwW3Jo.js +0 -1
  978. package/studio/client/_app/immutable/nodes/10.CczwW3Jo.js.br +0 -0
  979. package/studio/client/_app/immutable/nodes/10.CczwW3Jo.js.gz +0 -0
  980. package/studio/client/_app/immutable/nodes/11.DLp4Fbp3.js +0 -1
  981. package/studio/client/_app/immutable/nodes/11.DLp4Fbp3.js.br +0 -0
  982. package/studio/client/_app/immutable/nodes/11.DLp4Fbp3.js.gz +0 -0
  983. package/studio/client/_app/immutable/nodes/12.4rh6TzEf.js +0 -2
  984. package/studio/client/_app/immutable/nodes/12.4rh6TzEf.js.br +0 -0
  985. package/studio/client/_app/immutable/nodes/12.4rh6TzEf.js.gz +0 -0
  986. package/studio/client/_app/immutable/nodes/13.Dz4al1DL.js +0 -1
  987. package/studio/client/_app/immutable/nodes/13.Dz4al1DL.js.br +0 -0
  988. package/studio/client/_app/immutable/nodes/13.Dz4al1DL.js.gz +0 -0
  989. package/studio/client/_app/immutable/nodes/14.Bl81Dygj.js +0 -1
  990. package/studio/client/_app/immutable/nodes/14.Bl81Dygj.js.br +0 -0
  991. package/studio/client/_app/immutable/nodes/14.Bl81Dygj.js.gz +0 -0
  992. package/studio/client/_app/immutable/nodes/15.gG909oU9.js +0 -1
  993. package/studio/client/_app/immutable/nodes/15.gG909oU9.js.br +0 -0
  994. package/studio/client/_app/immutable/nodes/15.gG909oU9.js.gz +0 -0
  995. package/studio/client/_app/immutable/nodes/16.7V_UKKuG.js +0 -8
  996. package/studio/client/_app/immutable/nodes/16.7V_UKKuG.js.br +0 -0
  997. package/studio/client/_app/immutable/nodes/16.7V_UKKuG.js.gz +0 -0
  998. package/studio/client/_app/immutable/nodes/17.Cz647w46.js +0 -1
  999. package/studio/client/_app/immutable/nodes/17.Cz647w46.js.br +0 -0
  1000. package/studio/client/_app/immutable/nodes/17.Cz647w46.js.gz +0 -0
  1001. package/studio/client/_app/immutable/nodes/18.BCZi6A5-.js +0 -1
  1002. package/studio/client/_app/immutable/nodes/18.BCZi6A5-.js.br +0 -0
  1003. package/studio/client/_app/immutable/nodes/18.BCZi6A5-.js.gz +0 -0
  1004. package/studio/client/_app/immutable/nodes/19.DoglPV3k.js +0 -1
  1005. package/studio/client/_app/immutable/nodes/19.DoglPV3k.js.br +0 -0
  1006. package/studio/client/_app/immutable/nodes/19.DoglPV3k.js.gz +0 -0
  1007. package/studio/client/_app/immutable/nodes/20.DGbcSpHq.js +0 -45
  1008. package/studio/client/_app/immutable/nodes/20.DGbcSpHq.js.br +0 -0
  1009. package/studio/client/_app/immutable/nodes/20.DGbcSpHq.js.gz +0 -0
  1010. package/studio/client/_app/immutable/nodes/21.CdVcKzDq.js +0 -16
  1011. package/studio/client/_app/immutable/nodes/21.CdVcKzDq.js.br +0 -0
  1012. package/studio/client/_app/immutable/nodes/21.CdVcKzDq.js.gz +0 -0
  1013. package/studio/client/_app/immutable/nodes/28.lF0IrCqU.js +0 -8
  1014. package/studio/client/_app/immutable/nodes/28.lF0IrCqU.js.br +0 -0
  1015. package/studio/client/_app/immutable/nodes/28.lF0IrCqU.js.gz +0 -0
  1016. package/studio/client/_app/immutable/nodes/3.C1mJzj4n.js +0 -1
  1017. package/studio/client/_app/immutable/nodes/3.C1mJzj4n.js.br +0 -0
  1018. package/studio/client/_app/immutable/nodes/3.C1mJzj4n.js.gz +0 -0
  1019. package/studio/client/_app/immutable/nodes/30.BvTn5fYt.js +0 -26
  1020. package/studio/client/_app/immutable/nodes/30.BvTn5fYt.js.br +0 -0
  1021. package/studio/client/_app/immutable/nodes/30.BvTn5fYt.js.gz +0 -0
  1022. package/studio/client/_app/immutable/nodes/38.CX0Z5dJm.js +0 -1
  1023. package/studio/client/_app/immutable/nodes/38.CX0Z5dJm.js.br +0 -0
  1024. package/studio/client/_app/immutable/nodes/38.CX0Z5dJm.js.gz +0 -0
  1025. package/studio/client/_app/immutable/nodes/39.CRxr2YQ6.js +0 -87
  1026. package/studio/client/_app/immutable/nodes/39.CRxr2YQ6.js.br +0 -0
  1027. package/studio/client/_app/immutable/nodes/39.CRxr2YQ6.js.gz +0 -0
  1028. package/studio/client/_app/immutable/nodes/4.YfreNTfv.js +0 -1
  1029. package/studio/client/_app/immutable/nodes/4.YfreNTfv.js.br +0 -1
  1030. package/studio/client/_app/immutable/nodes/4.YfreNTfv.js.gz +0 -0
  1031. package/studio/client/_app/immutable/nodes/40.BVTwXIYj.js +0 -15
  1032. package/studio/client/_app/immutable/nodes/40.BVTwXIYj.js.br +0 -0
  1033. package/studio/client/_app/immutable/nodes/40.BVTwXIYj.js.gz +0 -0
  1034. package/studio/client/_app/immutable/nodes/41.JtyATqrM.js +0 -1
  1035. package/studio/client/_app/immutable/nodes/41.JtyATqrM.js.br +0 -0
  1036. package/studio/client/_app/immutable/nodes/41.JtyATqrM.js.gz +0 -0
  1037. package/studio/client/_app/immutable/nodes/42.XO5VZAmI.js +0 -1
  1038. package/studio/client/_app/immutable/nodes/42.XO5VZAmI.js.br +0 -0
  1039. package/studio/client/_app/immutable/nodes/42.XO5VZAmI.js.gz +0 -0
  1040. package/studio/client/_app/immutable/nodes/43.CWpVKGhz.js +0 -1
  1041. package/studio/client/_app/immutable/nodes/43.CWpVKGhz.js.br +0 -0
  1042. package/studio/client/_app/immutable/nodes/43.CWpVKGhz.js.gz +0 -0
  1043. package/studio/client/_app/immutable/nodes/44.DX64rKI7.js +0 -1
  1044. package/studio/client/_app/immutable/nodes/44.DX64rKI7.js.br +0 -0
  1045. package/studio/client/_app/immutable/nodes/44.DX64rKI7.js.gz +0 -0
  1046. package/studio/client/_app/immutable/nodes/45.mLQWUOa5.js +0 -2
  1047. package/studio/client/_app/immutable/nodes/45.mLQWUOa5.js.br +0 -0
  1048. package/studio/client/_app/immutable/nodes/45.mLQWUOa5.js.gz +0 -0
  1049. package/studio/client/_app/immutable/nodes/46.KA353oiQ.js +0 -1
  1050. package/studio/client/_app/immutable/nodes/46.KA353oiQ.js.br +0 -0
  1051. package/studio/client/_app/immutable/nodes/46.KA353oiQ.js.gz +0 -0
  1052. package/studio/client/_app/immutable/nodes/47.D3mABDjY.js +0 -1
  1053. package/studio/client/_app/immutable/nodes/47.D3mABDjY.js.br +0 -0
  1054. package/studio/client/_app/immutable/nodes/47.D3mABDjY.js.gz +0 -0
  1055. package/studio/client/_app/immutable/nodes/48.BwjQpQnt.js +0 -1
  1056. package/studio/client/_app/immutable/nodes/48.BwjQpQnt.js.br +0 -0
  1057. package/studio/client/_app/immutable/nodes/48.BwjQpQnt.js.gz +0 -0
  1058. package/studio/client/_app/immutable/nodes/49.EaoBcCzE.js +0 -7
  1059. package/studio/client/_app/immutable/nodes/49.EaoBcCzE.js.br +0 -0
  1060. package/studio/client/_app/immutable/nodes/49.EaoBcCzE.js.gz +0 -0
  1061. package/studio/client/_app/immutable/nodes/5.YfreNTfv.js +0 -1
  1062. package/studio/client/_app/immutable/nodes/5.YfreNTfv.js.br +0 -1
  1063. package/studio/client/_app/immutable/nodes/5.YfreNTfv.js.gz +0 -0
  1064. package/studio/client/_app/immutable/nodes/7.pzlwJNWY.js +0 -1
  1065. package/studio/client/_app/immutable/nodes/7.pzlwJNWY.js.br +0 -0
  1066. package/studio/client/_app/immutable/nodes/7.pzlwJNWY.js.gz +0 -0
  1067. package/studio/client/_app/immutable/nodes/8.COxVG2uL.js +0 -1
  1068. package/studio/client/_app/immutable/nodes/8.COxVG2uL.js.br +0 -0
  1069. package/studio/client/_app/immutable/nodes/8.COxVG2uL.js.gz +0 -0
  1070. package/studio/client/_app/immutable/nodes/9.DEUtbL1G.js +0 -1
  1071. package/studio/client/_app/immutable/nodes/9.DEUtbL1G.js.br +0 -0
  1072. package/studio/client/_app/immutable/nodes/9.DEUtbL1G.js.gz +0 -0
  1073. package/studio/server/chunks/0-oFoj6xob.js +0 -32
  1074. package/studio/server/chunks/0-oFoj6xob.js.map +0 -1
  1075. package/studio/server/chunks/1-BZOYuQnd.js +0 -9
  1076. package/studio/server/chunks/1-BZOYuQnd.js.map +0 -1
  1077. package/studio/server/chunks/11-BDyz7OWy.js +0 -9
  1078. package/studio/server/chunks/11-BDyz7OWy.js.map +0 -1
  1079. package/studio/server/chunks/12-DCVWOw1E.js +0 -9
  1080. package/studio/server/chunks/12-DCVWOw1E.js.map +0 -1
  1081. package/studio/server/chunks/13-D5eVPcWI.js +0 -59
  1082. package/studio/server/chunks/13-D5eVPcWI.js.map +0 -1
  1083. package/studio/server/chunks/14-DLN4rZiK.js +0 -60
  1084. package/studio/server/chunks/14-DLN4rZiK.js.map +0 -1
  1085. package/studio/server/chunks/15-D3vqObtU.js +0 -9
  1086. package/studio/server/chunks/15-D3vqObtU.js.map +0 -1
  1087. package/studio/server/chunks/16-B80xfxth.js +0 -72
  1088. package/studio/server/chunks/16-B80xfxth.js.map +0 -1
  1089. package/studio/server/chunks/17-BHuReO4a.js +0 -9
  1090. package/studio/server/chunks/17-BHuReO4a.js.map +0 -1
  1091. package/studio/server/chunks/18-wt-l6gKd.js +0 -9
  1092. package/studio/server/chunks/18-wt-l6gKd.js.map +0 -1
  1093. package/studio/server/chunks/19-CM1TK59H.js +0 -9
  1094. package/studio/server/chunks/19-CM1TK59H.js.map +0 -1
  1095. package/studio/server/chunks/20-l1HA1gZm.js +0 -138
  1096. package/studio/server/chunks/20-l1HA1gZm.js.map +0 -1
  1097. package/studio/server/chunks/3-CzCasqaG.js +0 -9
  1098. package/studio/server/chunks/3-CzCasqaG.js.map +0 -1
  1099. package/studio/server/chunks/4-CI_t25RD.js +0 -9
  1100. package/studio/server/chunks/4-CI_t25RD.js.map +0 -1
  1101. package/studio/server/chunks/42-P_ROr-Kz.js +0 -56
  1102. package/studio/server/chunks/42-P_ROr-Kz.js.map +0 -1
  1103. package/studio/server/chunks/43-DjsPMRbC.js +0 -9
  1104. package/studio/server/chunks/43-DjsPMRbC.js.map +0 -1
  1105. package/studio/server/chunks/44-Bja0V2qT.js +0 -9
  1106. package/studio/server/chunks/44-Bja0V2qT.js.map +0 -1
  1107. package/studio/server/chunks/45-ClLo6O3h.js +0 -114
  1108. package/studio/server/chunks/45-ClLo6O3h.js.map +0 -1
  1109. package/studio/server/chunks/49-1-oQCIAS.js +0 -14
  1110. package/studio/server/chunks/49-1-oQCIAS.js.map +0 -1
  1111. package/studio/server/chunks/5-rt2C_t_3.js +0 -9
  1112. package/studio/server/chunks/5-rt2C_t_3.js.map +0 -1
  1113. package/studio/server/chunks/7-bEHSOvc4.js +0 -215
  1114. package/studio/server/chunks/7-bEHSOvc4.js.map +0 -1
  1115. package/studio/server/chunks/_error.svelte-DVRBaDbx.js +0 -98
  1116. package/studio/server/chunks/_error.svelte-DVRBaDbx.js.map +0 -1
  1117. package/studio/server/chunks/_error.svelte-Dt8wv2eu.js +0 -98
  1118. package/studio/server/chunks/_error.svelte-Dt8wv2eu.js.map +0 -1
  1119. package/studio/server/chunks/_layout.svelte-55nnwb0N.js +0 -400
  1120. package/studio/server/chunks/_layout.svelte-55nnwb0N.js.map +0 -1
  1121. package/studio/server/chunks/_layout.svelte-BL7PMde9.js +0 -64
  1122. package/studio/server/chunks/_layout.svelte-BL7PMde9.js.map +0 -1
  1123. package/studio/server/chunks/_layout.svelte-BtEadWQB.js +0 -64
  1124. package/studio/server/chunks/_layout.svelte-BtEadWQB.js.map +0 -1
  1125. package/studio/server/chunks/_layout.svelte-CfDTUogU.js +0 -1054
  1126. package/studio/server/chunks/_layout.svelte-CfDTUogU.js.map +0 -1
  1127. package/studio/server/chunks/_page.svelte-B-1o9Tva.js +0 -506
  1128. package/studio/server/chunks/_page.svelte-B-1o9Tva.js.map +0 -1
  1129. package/studio/server/chunks/_page.svelte-B93-TmZo.js +0 -160
  1130. package/studio/server/chunks/_page.svelte-B93-TmZo.js.map +0 -1
  1131. package/studio/server/chunks/_page.svelte-BqwbRDzJ.js +0 -1731
  1132. package/studio/server/chunks/_page.svelte-BqwbRDzJ.js.map +0 -1
  1133. package/studio/server/chunks/_page.svelte-CWrqBxDM.js +0 -1021
  1134. package/studio/server/chunks/_page.svelte-CWrqBxDM.js.map +0 -1
  1135. package/studio/server/chunks/_page.svelte-Cg5sXfnK.js +0 -111
  1136. package/studio/server/chunks/_page.svelte-Cg5sXfnK.js.map +0 -1
  1137. package/studio/server/chunks/_page.svelte-CvEkB4SR.js +0 -319
  1138. package/studio/server/chunks/_page.svelte-CvEkB4SR.js.map +0 -1
  1139. package/studio/server/chunks/_page.svelte-D5uSaQ_6.js +0 -256
  1140. package/studio/server/chunks/_page.svelte-D5uSaQ_6.js.map +0 -1
  1141. package/studio/server/chunks/_page.svelte-D6XGPiAL.js +0 -79
  1142. package/studio/server/chunks/_page.svelte-D6XGPiAL.js.map +0 -1
  1143. package/studio/server/chunks/_page.svelte-DAyju3rn.js +0 -113
  1144. package/studio/server/chunks/_page.svelte-DAyju3rn.js.map +0 -1
  1145. package/studio/server/chunks/_page.svelte-Dxd9_9zA.js +0 -418
  1146. package/studio/server/chunks/_page.svelte-Dxd9_9zA.js.map +0 -1
  1147. package/studio/server/chunks/_page.svelte-GHdQM1UB.js +0 -191
  1148. package/studio/server/chunks/_page.svelte-GHdQM1UB.js.map +0 -1
  1149. package/studio/server/chunks/_page.svelte-axu5NW2S.js +0 -11053
  1150. package/studio/server/chunks/_page.svelte-axu5NW2S.js.map +0 -1
  1151. package/studio/server/chunks/_server.ts-5MqnJlEk.js +0 -87
  1152. package/studio/server/chunks/_server.ts-5MqnJlEk.js.map +0 -1
  1153. package/studio/server/chunks/_server.ts-6KoXdftM.js +0 -70
  1154. package/studio/server/chunks/_server.ts-6KoXdftM.js.map +0 -1
  1155. package/studio/server/chunks/_server.ts-BPbGZeLb.js +0 -718
  1156. package/studio/server/chunks/_server.ts-BPbGZeLb.js.map +0 -1
  1157. package/studio/server/chunks/_server.ts-BQiH-pDg.js +0 -79
  1158. package/studio/server/chunks/_server.ts-BQiH-pDg.js.map +0 -1
  1159. package/studio/server/chunks/_server.ts-BYd-I1tc.js +0 -41
  1160. package/studio/server/chunks/_server.ts-BYd-I1tc.js.map +0 -1
  1161. package/studio/server/chunks/_server.ts-BryF-BNZ.js +0 -96
  1162. package/studio/server/chunks/_server.ts-BryF-BNZ.js.map +0 -1
  1163. package/studio/server/chunks/_server.ts-C5J0RS2-.js +0 -117
  1164. package/studio/server/chunks/_server.ts-C5J0RS2-.js.map +0 -1
  1165. package/studio/server/chunks/_server.ts-CTCmDBMr.js +0 -49
  1166. package/studio/server/chunks/_server.ts-CTCmDBMr.js.map +0 -1
  1167. package/studio/server/chunks/_server.ts-CXM9soU9.js +0 -34
  1168. package/studio/server/chunks/_server.ts-CXM9soU9.js.map +0 -1
  1169. package/studio/server/chunks/_server.ts-CbZYXLYW.js +0 -56
  1170. package/studio/server/chunks/_server.ts-CbZYXLYW.js.map +0 -1
  1171. package/studio/server/chunks/_server.ts-CtiogpOk.js +0 -302
  1172. package/studio/server/chunks/_server.ts-CtiogpOk.js.map +0 -1
  1173. package/studio/server/chunks/_server.ts-D75v2LAN.js +0 -52
  1174. package/studio/server/chunks/_server.ts-D75v2LAN.js.map +0 -1
  1175. package/studio/server/chunks/_server.ts-DANOf9Kg.js +0 -158
  1176. package/studio/server/chunks/_server.ts-DANOf9Kg.js.map +0 -1
  1177. package/studio/server/chunks/_server.ts-DF0SCYmL.js +0 -48
  1178. package/studio/server/chunks/_server.ts-DF0SCYmL.js.map +0 -1
  1179. package/studio/server/chunks/_server.ts-DrkT4gOl.js +0 -121
  1180. package/studio/server/chunks/_server.ts-DrkT4gOl.js.map +0 -1
  1181. package/studio/server/chunks/_server.ts-DscCNgaG.js +0 -87
  1182. package/studio/server/chunks/_server.ts-DscCNgaG.js.map +0 -1
  1183. package/studio/server/chunks/_server.ts-Duz2jodQ.js +0 -22
  1184. package/studio/server/chunks/_server.ts-Duz2jodQ.js.map +0 -1
  1185. package/studio/server/chunks/_server.ts-K-RN8Vah.js +0 -684
  1186. package/studio/server/chunks/_server.ts-K-RN8Vah.js.map +0 -1
  1187. package/studio/server/chunks/_server.ts-OkHzpWAg.js +0 -68
  1188. package/studio/server/chunks/_server.ts-OkHzpWAg.js.map +0 -1
  1189. package/studio/server/chunks/_server.ts-T7wyJ0On.js +0 -58
  1190. package/studio/server/chunks/_server.ts-T7wyJ0On.js.map +0 -1
  1191. package/studio/server/chunks/_server.ts-XWBoVSBG.js +0 -232
  1192. package/studio/server/chunks/_server.ts-XWBoVSBG.js.map +0 -1
  1193. package/studio/server/chunks/_server.ts-liWNn8pd.js +0 -91
  1194. package/studio/server/chunks/_server.ts-liWNn8pd.js.map +0 -1
  1195. package/studio/server/chunks/_server.ts-wjU8lnxc.js +0 -108
  1196. package/studio/server/chunks/_server.ts-wjU8lnxc.js.map +0 -1
  1197. package/studio/server/chunks/_server.ts-xBWWvyW7.js +0 -60
  1198. package/studio/server/chunks/_server.ts-xBWWvyW7.js.map +0 -1
  1199. package/studio/server/chunks/adapter-B-i_4tnk.js +0 -91
  1200. package/studio/server/chunks/adapter-B-i_4tnk.js.map +0 -1
  1201. package/studio/server/chunks/admin.remote-5orFS4k1.js +0 -105
  1202. package/studio/server/chunks/admin.remote-5orFS4k1.js.map +0 -1
  1203. package/studio/server/chunks/ai-access-C-qFWKe-.js +0 -282
  1204. package/studio/server/chunks/ai-access-C-qFWKe-.js.map +0 -1
  1205. package/studio/server/chunks/ai.remote-Da4JRO59.js +0 -37
  1206. package/studio/server/chunks/ai.remote-Da4JRO59.js.map +0 -1
  1207. package/studio/server/chunks/alert-dialog-description-DOMGfPke.js +0 -578
  1208. package/studio/server/chunks/alert-dialog-description-DOMGfPke.js.map +0 -1
  1209. package/studio/server/chunks/animation-DPwINa4I.js +0 -2892
  1210. package/studio/server/chunks/animation-DPwINa4I.js.map +0 -1
  1211. package/studio/server/chunks/api-DkajkFtS.js +0 -434
  1212. package/studio/server/chunks/api-DkajkFtS.js.map +0 -1
  1213. package/studio/server/chunks/api-keys-D9bbxRhK.js +0 -117
  1214. package/studio/server/chunks/api-keys-D9bbxRhK.js.map +0 -1
  1215. package/studio/server/chunks/api-keys.remote-CN4CRiIA.js +0 -88
  1216. package/studio/server/chunks/api-keys.remote-CN4CRiIA.js.map +0 -1
  1217. package/studio/server/chunks/app-header-BfPEtjyC.js +0 -96
  1218. package/studio/server/chunks/app-header-BfPEtjyC.js.map +0 -1
  1219. package/studio/server/chunks/assets.remote-B8_mtYX6.js +0 -113
  1220. package/studio/server/chunks/assets.remote-B8_mtYX6.js.map +0 -1
  1221. package/studio/server/chunks/attribute-protocol-C_pjkekX.js +0 -151
  1222. package/studio/server/chunks/attribute-protocol-C_pjkekX.js.map +0 -1
  1223. package/studio/server/chunks/auth-CiWMo-Qu.js +0 -22472
  1224. package/studio/server/chunks/auth-CiWMo-Qu.js.map +0 -1
  1225. package/studio/server/chunks/auth.remote-C6edHyaa.js +0 -351
  1226. package/studio/server/chunks/auth.remote-C6edHyaa.js.map +0 -1
  1227. package/studio/server/chunks/base-Bq5n_4Fz.js +0 -210
  1228. package/studio/server/chunks/base-Bq5n_4Fz.js.map +0 -1
  1229. package/studio/server/chunks/bun-sqlite-dialect-C8OaCWSL-CsGahR4n.js +0 -197
  1230. package/studio/server/chunks/bun-sqlite-dialect-C8OaCWSL-CsGahR4n.js.map +0 -1
  1231. package/studio/server/chunks/captions.remote-BtVr9SZd.js +0 -184
  1232. package/studio/server/chunks/captions.remote-BtVr9SZd.js.map +0 -1
  1233. package/studio/server/chunks/client2-D2vZ7-eF.js +0 -66
  1234. package/studio/server/chunks/client2-D2vZ7-eF.js.map +0 -1
  1235. package/studio/server/chunks/d1-sqlite-dialect-sYHNqBte-ClSngqDL.js +0 -160
  1236. package/studio/server/chunks/d1-sqlite-dialect-sYHNqBte-ClSngqDL.js.map +0 -1
  1237. package/studio/server/chunks/desktop-bootstrap-C46aoZ6Z.js +0 -67
  1238. package/studio/server/chunks/desktop-bootstrap-C46aoZ6Z.js.map +0 -1
  1239. package/studio/server/chunks/dubbing.remote-DHGIYU_A.js +0 -153
  1240. package/studio/server/chunks/dubbing.remote-DHGIYU_A.js.map +0 -1
  1241. package/studio/server/chunks/editor.svelte-CiJvwHAm.js +0 -21024
  1242. package/studio/server/chunks/editor.svelte-CiJvwHAm.js.map +0 -1
  1243. package/studio/server/chunks/env-CsH9rG40.js +0 -91
  1244. package/studio/server/chunks/env-CsH9rG40.js.map +0 -1
  1245. package/studio/server/chunks/extract-audio.remote-D4Autpid.js +0 -95
  1246. package/studio/server/chunks/extract-audio.remote-D4Autpid.js.map +0 -1
  1247. package/studio/server/chunks/feedback.remote-CfdjHpdW.js +0 -49
  1248. package/studio/server/chunks/feedback.remote-CfdjHpdW.js.map +0 -1
  1249. package/studio/server/chunks/fs-project-BLLGFRv1.js +0 -134
  1250. package/studio/server/chunks/fs-project-BLLGFRv1.js.map +0 -1
  1251. package/studio/server/chunks/generate-speech-BERLu-Vk.js +0 -536
  1252. package/studio/server/chunks/generate-speech-BERLu-Vk.js.map +0 -1
  1253. package/studio/server/chunks/hooks.server-MEVEsSA9.js +0 -309
  1254. package/studio/server/chunks/hooks.server-MEVEsSA9.js.map +0 -1
  1255. package/studio/server/chunks/html-parser-LopZIqoS.js +0 -8516
  1256. package/studio/server/chunks/html-parser-LopZIqoS.js.map +0 -1
  1257. package/studio/server/chunks/html-writer-Ea_4f8hT.js +0 -242
  1258. package/studio/server/chunks/html-writer-Ea_4f8hT.js.map +0 -1
  1259. package/studio/server/chunks/index-CBGGzszt.js +0 -4578
  1260. package/studio/server/chunks/index-CBGGzszt.js.map +0 -1
  1261. package/studio/server/chunks/index12-C5zKPozR.js +0 -265
  1262. package/studio/server/chunks/index12-C5zKPozR.js.map +0 -1
  1263. package/studio/server/chunks/index2-e2qJOUJ5.js +0 -23
  1264. package/studio/server/chunks/index2-e2qJOUJ5.js.map +0 -1
  1265. package/studio/server/chunks/index3-akRvPp-y.js +0 -8
  1266. package/studio/server/chunks/index3-akRvPp-y.js.map +0 -1
  1267. package/studio/server/chunks/index4-CowumPcw.js +0 -48
  1268. package/studio/server/chunks/index4-CowumPcw.js.map +0 -1
  1269. package/studio/server/chunks/index6-92MPHdlt.js +0 -239
  1270. package/studio/server/chunks/index6-92MPHdlt.js.map +0 -1
  1271. package/studio/server/chunks/index8-zuJK-jFa.js +0 -44
  1272. package/studio/server/chunks/index8-zuJK-jFa.js.map +0 -1
  1273. package/studio/server/chunks/layout-template-BoNv9dF2.js +0 -1371
  1274. package/studio/server/chunks/layout-template-BoNv9dF2.js.map +0 -1
  1275. package/studio/server/chunks/lummi.remote-Bx8Vg0et.js +0 -215
  1276. package/studio/server/chunks/lummi.remote-Bx8Vg0et.js.map +0 -1
  1277. package/studio/server/chunks/media-ARIn6Aw1.js +0 -157
  1278. package/studio/server/chunks/media-ARIn6Aw1.js.map +0 -1
  1279. package/studio/server/chunks/media-analysis-GisyEkHY.js +0 -171
  1280. package/studio/server/chunks/media-analysis-GisyEkHY.js.map +0 -1
  1281. package/studio/server/chunks/media-analysis.remote-BzGY_HjI.js +0 -63
  1282. package/studio/server/chunks/media-analysis.remote-BzGY_HjI.js.map +0 -1
  1283. package/studio/server/chunks/middleware-CazuI_Wf.js +0 -72
  1284. package/studio/server/chunks/middleware-CazuI_Wf.js.map +0 -1
  1285. package/studio/server/chunks/mutation-schemas-DOtU1skD.js +0 -137
  1286. package/studio/server/chunks/mutation-schemas-DOtU1skD.js.map +0 -1
  1287. package/studio/server/chunks/mutations-6JWuU3s9.js +0 -503
  1288. package/studio/server/chunks/mutations-6JWuU3s9.js.map +0 -1
  1289. package/studio/server/chunks/node-sqlite-dialect-Q2OvDp9q.js +0 -197
  1290. package/studio/server/chunks/node-sqlite-dialect-Q2OvDp9q.js.map +0 -1
  1291. package/studio/server/chunks/onboarding-email-CHXOtnYq.js +0 -311
  1292. package/studio/server/chunks/onboarding-email-CHXOtnYq.js.map +0 -1
  1293. package/studio/server/chunks/optional-services-rI0rdA4P.js +0 -45
  1294. package/studio/server/chunks/optional-services-rI0rdA4P.js.map +0 -1
  1295. package/studio/server/chunks/pagination-JOJpLeOm.js +0 -159
  1296. package/studio/server/chunks/pagination-JOJpLeOm.js.map +0 -1
  1297. package/studio/server/chunks/posthog-DXw1m97H.js +0 -11
  1298. package/studio/server/chunks/posthog-DXw1m97H.js.map +0 -1
  1299. package/studio/server/chunks/presets-BKeKVq-L.js +0 -369
  1300. package/studio/server/chunks/presets-BKeKVq-L.js.map +0 -1
  1301. package/studio/server/chunks/project-layer-Bbz6zgRN.js +0 -28
  1302. package/studio/server/chunks/project-layer-Bbz6zgRN.js.map +0 -1
  1303. package/studio/server/chunks/projects.remote-Bzca0wLB.js +0 -297
  1304. package/studio/server/chunks/projects.remote-Bzca0wLB.js.map +0 -1
  1305. package/studio/server/chunks/queue-init-DUao6hhx.js +0 -38
  1306. package/studio/server/chunks/queue-init-DUao6hhx.js.map +0 -1
  1307. package/studio/server/chunks/registry-Cq-PY3D3.js +0 -16
  1308. package/studio/server/chunks/registry-Cq-PY3D3.js.map +0 -1
  1309. package/studio/server/chunks/registry2-BSIleFMP.js +0 -4851
  1310. package/studio/server/chunks/registry2-BSIleFMP.js.map +0 -1
  1311. package/studio/server/chunks/remote-148gj0t-CBE9iOwY.js +0 -14
  1312. package/studio/server/chunks/remote-148gj0t-CBE9iOwY.js.map +0 -1
  1313. package/studio/server/chunks/remote-1afl6ud-yFS1W6RH.js +0 -18
  1314. package/studio/server/chunks/remote-1afl6ud-yFS1W6RH.js.map +0 -1
  1315. package/studio/server/chunks/remote-1mi3j6d-COSwmla7.js +0 -21
  1316. package/studio/server/chunks/remote-1mi3j6d-COSwmla7.js.map +0 -1
  1317. package/studio/server/chunks/remote-1rjk8jv-C-ZOeAZr.js +0 -22
  1318. package/studio/server/chunks/remote-1rjk8jv-C-ZOeAZr.js.map +0 -1
  1319. package/studio/server/chunks/remote-1web5fy-Crw8BQuf.js +0 -30
  1320. package/studio/server/chunks/remote-1web5fy-Crw8BQuf.js.map +0 -1
  1321. package/studio/server/chunks/remote-5mu9ty-CiUcViXD.js +0 -31
  1322. package/studio/server/chunks/remote-5mu9ty-CiUcViXD.js.map +0 -1
  1323. package/studio/server/chunks/remote-aelvq6-BHLpqBRM.js +0 -26
  1324. package/studio/server/chunks/remote-aelvq6-BHLpqBRM.js.map +0 -1
  1325. package/studio/server/chunks/remote-em2k3w-BXLmObYN.js +0 -25
  1326. package/studio/server/chunks/remote-em2k3w-BXLmObYN.js.map +0 -1
  1327. package/studio/server/chunks/remote-gezfls-Cmzz6fWa.js +0 -21
  1328. package/studio/server/chunks/remote-gezfls-Cmzz6fWa.js.map +0 -1
  1329. package/studio/server/chunks/remote-lv3p1w-fkE1PB7N.js +0 -15
  1330. package/studio/server/chunks/remote-lv3p1w-fkE1PB7N.js.map +0 -1
  1331. package/studio/server/chunks/remote-ssr7vi-Cbv95MBE.js +0 -33
  1332. package/studio/server/chunks/remote-ssr7vi-Cbv95MBE.js.map +0 -1
  1333. package/studio/server/chunks/remote-sy19x7-BA_A5ekM.js +0 -29
  1334. package/studio/server/chunks/remote-sy19x7-BA_A5ekM.js.map +0 -1
  1335. package/studio/server/chunks/remote-tisyb0-CCv0922s.js +0 -31
  1336. package/studio/server/chunks/remote-tisyb0-CCv0922s.js.map +0 -1
  1337. package/studio/server/chunks/remote-xj8myv-CNAPSYMd.js +0 -31
  1338. package/studio/server/chunks/remote-xj8myv-CNAPSYMd.js.map +0 -1
  1339. package/studio/server/chunks/remote-z7lvth-Dddp33_7.js +0 -23
  1340. package/studio/server/chunks/remote-z7lvth-Dddp33_7.js.map +0 -1
  1341. package/studio/server/chunks/remote-zjib3m-CgmI2LZY.js +0 -24
  1342. package/studio/server/chunks/remote-zjib3m-CgmI2LZY.js.map +0 -1
  1343. package/studio/server/chunks/render-api-su0kZhxA.js +0 -240
  1344. package/studio/server/chunks/render-api-su0kZhxA.js.map +0 -1
  1345. package/studio/server/chunks/scrub-xyz.svelte_svelte_type_style_lang-DU6E-ve4.js +0 -4752
  1346. package/studio/server/chunks/scrub-xyz.svelte_svelte_type_style_lang-DU6E-ve4.js.map +0 -1
  1347. package/studio/server/chunks/subscription-CjEjoIFS.js +0 -138
  1348. package/studio/server/chunks/subscription-CjEjoIFS.js.map +0 -1
  1349. package/studio/server/chunks/subscription-limits-B7Q2pts9.js +0 -114
  1350. package/studio/server/chunks/subscription-limits-B7Q2pts9.js.map +0 -1
  1351. package/studio/server/chunks/template-usage.remote-DOFxtTHM.js +0 -53
  1352. package/studio/server/chunks/template-usage.remote-DOFxtTHM.js.map +0 -1
  1353. package/studio/server/chunks/thumbnail-queue-BrPRb6F7.js +0 -148
  1354. package/studio/server/chunks/thumbnail-queue-BrPRb6F7.js.map +0 -1
  1355. package/studio/server/chunks/tooltip-provider-BFZoIP02.js +0 -30
  1356. package/studio/server/chunks/tooltip-provider-BFZoIP02.js.map +0 -1
  1357. package/studio/server/chunks/tooltip.svelte-Bjv4TH3V.js +0 -658
  1358. package/studio/server/chunks/tooltip.svelte-Bjv4TH3V.js.map +0 -1
  1359. package/studio/server/chunks/tts.remote-yMAINgCv.js +0 -187
  1360. package/studio/server/chunks/tts.remote-yMAINgCv.js.map +0 -1
  1361. package/studio/server/chunks/ui.svelte-CpA5kqfc.js +0 -88
  1362. package/studio/server/chunks/ui.svelte-CpA5kqfc.js.map +0 -1
  1363. package/studio/server/chunks/upload-service-CC8E9Slo.js +0 -212
  1364. package/studio/server/chunks/upload-service-CC8E9Slo.js.map +0 -1
  1365. package/studio/server/chunks/upload.remote-RYslr_Ul.js +0 -131
  1366. package/studio/server/chunks/upload.remote-RYslr_Ul.js.map +0 -1
  1367. package/studio/server/chunks/video-generation.remote-CrPX-27G.js +0 -197
  1368. package/studio/server/chunks/video-generation.remote-CrPX-27G.js.map +0 -1
  1369. package/studio/server/chunks/video-renderer-CSVxoynk.js +0 -412
  1370. package/studio/server/chunks/video-renderer-CSVxoynk.js.map +0 -1
  1371. package/studio/server/chunks/watermark-R6qX4KkH.js +0 -164
  1372. package/studio/server/chunks/watermark-R6qX4KkH.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"html-parser-LopZIqoS.js","sources":["../../../.svelte-kit/adapter-node/chunks/html-parser.js"],"sourcesContent":["import { nanoid } from \"nanoid\";\nimport { p as projectDataSchema, K as KeyframeSchema, L as LayerSchema, P as ProjectSchema } from \"./animation.js\";\nimport { g as getPresetKeyframes, a as AnimationPresetIdSchema } from \"./presets.js\";\nimport { n as buildInterpolation, d as defaultLayerStyle, e as defaultTransform, E as EASING_VALUES, K as KEYFRAME_STRATEGIES } from \"./registry-data.js\";\nimport { b as getDmTagForLayerType, i as isDmElement, g as getDmElement, c as attrsToProps, e as getLayerSchemaLazy } from \"./attribute-protocol.js\";\nimport { z } from \"zod\";\nfunction fsProjectToProjectData(fsProject) {\n const layers = fsProject.layers.map((fsLayer) => fsLayerToLayer(fsLayer));\n const data = {\n // The HTML-as-source format is inherently v2 (sizes/positions are % of\n // project width by protocol). Stamp the current schema version so the\n // editor's v1→v2 migration is correctly skipped — otherwise it would treat\n // the project as legacy pixels and re-normalize %, corrupting sized layers\n // (e.g. a phone width of 29% → 29/1920*100 ≈ 1.51).\n schemaVersion: 2,\n name: fsProject.name,\n width: fsProject.width,\n height: fsProject.height,\n duration: fsProject.duration,\n fps: fsProject.fps,\n background: mapBackground(fsProject.background),\n primaryColor: \"#6366f1\",\n fontFamily: \"Poppins\",\n hideWatermark: false,\n watermarkPosition: \"top-center\",\n layers\n };\n return projectDataSchema.parse(data);\n}\nfunction fsProjectToProject(fsProject) {\n const projectData = fsProjectToProjectData(fsProject);\n const project = {\n ...projectData,\n id: fsProject.id\n };\n return ProjectSchema.parse(project);\n}\nfunction fsLayerToLayer(fsLayer) {\n const src = fsLayer._sourceAttributes ?? {};\n const wordSeparator = src[\"data-dm-word-separator\"];\n const gridIncrementRaw = src[\"data-dm-grid-increment\"];\n const gridIncrement = gridIncrementRaw !== void 0 ? parseFloat(gridIncrementRaw) : void 0;\n const extras = {\n separator: wordSeparator,\n increment: gridIncrement !== void 0 && !isNaN(gridIncrement) ? gridIncrement : void 0\n };\n const keyframes = [];\n for (const [property, kfList] of Object.entries(fsLayer.keyframes)) {\n for (const kf of kfList) {\n keyframes.push(\n KeyframeSchema.parse({\n id: nanoid(8),\n time: kf.time,\n property,\n value: kf.value,\n interpolation: buildInterpolation(kf.easing, extras)\n })\n );\n }\n }\n const enterTime = fsLayer.globalEnterTime ?? fsLayer.enterTime;\n const exitTime = fsLayer.globalExitTime ?? fsLayer.exitTime;\n const presetDuration = fsLayer.presetDuration ?? 0.5;\n if (fsLayer.enterPreset) {\n const presetKfs = getPresetKeyframes(fsLayer.enterPreset, enterTime, presetDuration);\n for (const kf of presetKfs) {\n keyframes.push(\n KeyframeSchema.parse({\n id: nanoid(8),\n time: kf.time,\n property: kf.property,\n value: kf.value,\n interpolation: kf.interpolation\n })\n );\n }\n }\n if (fsLayer.exitPreset && exitTime !== void 0) {\n const exitStart = exitTime - presetDuration;\n const presetKfs = getPresetKeyframes(fsLayer.exitPreset, exitStart, presetDuration);\n for (const kf of presetKfs) {\n keyframes.push(\n KeyframeSchema.parse({\n id: nanoid(8),\n time: kf.time,\n property: kf.property,\n value: kf.value,\n interpolation: kf.interpolation\n })\n );\n }\n }\n const layer = {\n id: fsLayer.id,\n name: fsLayer.name,\n type: fsLayer.layerType,\n visible: !fsLayer.hidden,\n locked: fsLayer.locked,\n parentId: void 0,\n transform: defaultTransform(),\n style: defaultLayerStyle(),\n keyframes,\n props: fsLayer.props,\n enterTime,\n exitTime,\n contentOffset: fsLayer.contentOffset,\n contentDuration: fsLayer.contentDuration\n };\n return LayerSchema.parse(layer);\n}\nfunction projectDataToFsLayers(data, fsProject) {\n const sceneIdByLayerId = /* @__PURE__ */ new Map();\n for (const fsLayer of fsProject.layers) {\n sceneIdByLayerId.set(fsLayer.id, fsLayer.sceneId);\n }\n const defaultSceneId = fsProject.scenes[0]?.id ?? \"scene-1\";\n return data.layers.map((layer) => {\n const keyframes = {};\n const extraAttrs = {};\n for (const kf of layer.keyframes) {\n if (!keyframes[kf.property]) keyframes[kf.property] = [];\n const interp = kf.interpolation;\n keyframes[kf.property].push({\n time: kf.time,\n value: kf.value,\n easing: interp && \"strategy\" in interp ? interp.strategy : void 0\n });\n if (interp?.separator !== void 0) extraAttrs[\"data-dm-word-separator\"] = interp.separator;\n if (interp?.increment !== void 0)\n extraAttrs[\"data-dm-grid-increment\"] = String(interp.increment);\n }\n const sceneId = sceneIdByLayerId.get(layer.id) ?? defaultSceneId;\n const scene = fsProject.scenes.find((s) => s.id === sceneId);\n const sceneStart = scene?.start ?? 0;\n const localEnterTime = (layer.enterTime ?? 0) - sceneStart;\n const localExitTime = layer.exitTime !== void 0 ? layer.exitTime - sceneStart : void 0;\n return {\n id: layer.id,\n name: layer.name,\n layerType: layer.type,\n track: 0,\n enterTime: localEnterTime,\n exitTime: localExitTime,\n contentOffset: layer.contentOffset,\n contentDuration: layer.contentDuration,\n presetDuration: 0.5,\n enterPreset: void 0,\n exitPreset: void 0,\n easing: void 0,\n locked: layer.locked ?? false,\n hidden: !(layer.visible ?? true),\n keyframes,\n props: layer.props ?? {},\n // Emit the matching <dm-*> tag so the layer's type and typed props\n // survive the HTML round-trip. Without this, a 'text' layer wrote as a\n // generic <div> and re-parsed as type 'html', losing its props.\n dmTag: getDmTagForLayerType(layer.type),\n htmlContent: void 0,\n _sourceAttributes: extraAttrs,\n sceneId,\n globalEnterTime: layer.enterTime ?? 0,\n // already global\n globalExitTime: layer.exitTime\n };\n });\n}\nfunction mapBackground(bg) {\n if (!bg) return void 0;\n switch (bg.type) {\n case \"solid\":\n return bg.color ?? \"#0a0a0a\";\n case \"gradient\":\n return void 0;\n case \"image\":\n return void 0;\n default:\n return void 0;\n }\n}\nfunction mapBackgroundToFs(bg) {\n if (!bg) return void 0;\n if (typeof bg === \"string\") {\n return { type: \"solid\", color: bg };\n }\n return void 0;\n}\nfunction parseKeyframeString(input) {\n const result = [];\n const pairs = input.split(\";\").map((s) => s.trim()).filter(Boolean);\n for (const pair of pairs) {\n const [mainPart, easingStr] = pair.split(\"@\").map((s) => s.trim());\n const colonIdx = mainPart.indexOf(\":\");\n if (colonIdx === -1) continue;\n const timeStr = mainPart.slice(0, colonIdx).trim();\n const valueStr = mainPart.slice(colonIdx + 1).trim();\n const time = parseFloat(timeStr);\n if (isNaN(time)) continue;\n let value;\n const numVal = parseFloat(valueStr);\n if (!isNaN(numVal) && valueStr !== \"\" && !valueStr.startsWith(\"#\")) {\n value = numVal;\n } else {\n value = valueStr;\n }\n result.push({\n time,\n value,\n easing: easingStr\n });\n }\n return result;\n}\nconst EasingSchema = z.enum(EASING_VALUES);\nconst KeyframeStrategySchema = z.enum(KEYFRAME_STRATEGIES);\nconst KeyframeValueSchema = z.union([z.number(), z.string()]);\nz.object({\n time: z.number(),\n value: KeyframeValueSchema,\n easing: KeyframeStrategySchema.optional()\n});\nz.object({\n /** Stable layer id. Required for round-trip writeback. */\n id: z.string().optional(),\n /** Human-readable name shown in editor. Defaults to id. */\n name: z.string().optional(),\n /** z-order index. Lower = behind. Default 0. */\n track: z.number().int().optional(),\n /** When layer enters timeline (seconds). Default 0. */\n enterTime: z.number().optional(),\n /** When layer exits (seconds). Default = scene duration. */\n exitTime: z.number().optional(),\n /** Trim from start of media content (seconds). */\n contentOffset: z.number().optional(),\n /** Total content duration (media files). */\n contentDuration: z.number().optional(),\n /** Named entrance animation preset. */\n enter: AnimationPresetIdSchema.optional(),\n /** Named exit animation preset. */\n exit: AnimationPresetIdSchema.optional(),\n /** Preset duration (seconds). Default 0.5. */\n duration: z.number().optional(),\n /** Easing for presets. */\n easing: EasingSchema.optional(),\n /** True to lock layer in editor. */\n locked: z.boolean().optional(),\n /** True to hide layer. */\n hidden: z.boolean().optional()\n});\nconst BackgroundConfigSchema = z.object({\n type: z.enum([\"solid\", \"gradient\", \"image\"]),\n color: z.string().optional(),\n image: z.string().optional()\n});\nconst SceneEntrySchema = z.object({\n id: z.string(),\n file: z.string(),\n start: z.number().default(0),\n duration: z.number().optional()\n});\nconst DevmotionJsonSchema = z.object({\n version: z.literal(1),\n name: z.string(),\n width: z.number().positive().default(1920),\n height: z.number().positive().default(1080),\n fps: z.number().positive().default(30),\n duration: z.number().positive().optional(),\n background: BackgroundConfigSchema.optional(),\n scenes: z.array(SceneEntrySchema)\n});\nfunction canonicalProperty(input) {\n return input.toLowerCase();\n}\nfunction dmKeyframeToProperty(attrName) {\n const prefix = \"data-dm-keyframe-\";\n const lower = attrName.toLowerCase();\n if (!lower.startsWith(prefix)) return null;\n const raw = lower.slice(prefix.length);\n if (raw.startsWith(\"props-\")) {\n return \"props.\" + raw.slice(\"props-\".length);\n }\n return raw.replace(/-/g, \".\");\n}\nfunction propertyToDmKeyframe(property) {\n const canonical = canonicalProperty(property);\n if (canonical.startsWith(\"props.\")) {\n return \"data-dm-keyframe-props-\" + canonical.slice(\"props.\".length);\n }\n return \"data-dm-keyframe-\" + canonical.replace(/\\./g, \"-\");\n}\nconst ParsedKeyframeSchema = z.object({\n time: z.number(),\n value: z.union([z.number(), z.string()]),\n easing: KeyframeStrategySchema.optional()\n});\nconst ParsedDmLayerSchema = z.object({\n id: z.string(),\n name: z.string(),\n track: z.number().int(),\n layerType: z.string(),\n enterTime: z.number(),\n exitTime: z.number().optional(),\n contentOffset: z.number().optional(),\n contentDuration: z.number().optional(),\n enterPreset: AnimationPresetIdSchema.optional(),\n exitPreset: AnimationPresetIdSchema.optional(),\n presetDuration: z.number().default(0.5),\n easing: EasingSchema.optional(),\n locked: z.boolean(),\n hidden: z.boolean(),\n keyframes: z.record(z.string(), z.array(ParsedKeyframeSchema)),\n props: z.record(z.string(), z.unknown()),\n htmlContent: z.string().optional(),\n dmTag: z.string().optional(),\n _sourceAttributes: z.record(z.string(), z.string())\n});\nz.object({\n layers: z.array(ParsedDmLayerSchema),\n duration: z.number(),\n /** Raw <script> entries from the scene body (src= urls and inline code), in DOM order */\n scripts: z.array(\n z.object({\n src: z.string().optional(),\n // external: <script src=\"...\">\n code: z.string().optional()\n // inline: <script>...<\\/script>\n })\n ).default([])\n});\nconst FsLayerSchema = ParsedDmLayerSchema.extend({\n globalEnterTime: z.number(),\n globalExitTime: z.number().optional(),\n sceneId: z.string()\n});\nconst FsSceneSchema = z.object({\n id: z.string(),\n file: z.string(),\n start: z.number(),\n duration: z.number(),\n layers: z.array(ParsedDmLayerSchema),\n scripts: z.array(\n z.object({\n src: z.string().optional(),\n code: z.string().optional()\n })\n ).default([])\n});\nz.object({\n id: z.string(),\n name: z.string(),\n width: z.number().positive(),\n height: z.number().positive(),\n duration: z.number().positive(),\n fps: z.number().positive(),\n background: BackgroundConfigSchema.optional(),\n layers: z.array(FsLayerSchema),\n scenes: z.array(FsSceneSchema)\n});\nconst UNDEFINED_CODE_POINTS = /* @__PURE__ */ new Set([\n 65534,\n 65535,\n 131070,\n 131071,\n 196606,\n 196607,\n 262142,\n 262143,\n 327678,\n 327679,\n 393214,\n 393215,\n 458750,\n 458751,\n 524286,\n 524287,\n 589822,\n 589823,\n 655358,\n 655359,\n 720894,\n 720895,\n 786430,\n 786431,\n 851966,\n 851967,\n 917502,\n 917503,\n 983038,\n 983039,\n 1048574,\n 1048575,\n 1114110,\n 1114111\n]);\nconst REPLACEMENT_CHARACTER = \"�\";\nvar CODE_POINTS;\n(function(CODE_POINTS2) {\n CODE_POINTS2[CODE_POINTS2[\"EOF\"] = -1] = \"EOF\";\n CODE_POINTS2[CODE_POINTS2[\"NULL\"] = 0] = \"NULL\";\n CODE_POINTS2[CODE_POINTS2[\"TABULATION\"] = 9] = \"TABULATION\";\n CODE_POINTS2[CODE_POINTS2[\"CARRIAGE_RETURN\"] = 13] = \"CARRIAGE_RETURN\";\n CODE_POINTS2[CODE_POINTS2[\"LINE_FEED\"] = 10] = \"LINE_FEED\";\n CODE_POINTS2[CODE_POINTS2[\"FORM_FEED\"] = 12] = \"FORM_FEED\";\n CODE_POINTS2[CODE_POINTS2[\"SPACE\"] = 32] = \"SPACE\";\n CODE_POINTS2[CODE_POINTS2[\"EXCLAMATION_MARK\"] = 33] = \"EXCLAMATION_MARK\";\n CODE_POINTS2[CODE_POINTS2[\"QUOTATION_MARK\"] = 34] = \"QUOTATION_MARK\";\n CODE_POINTS2[CODE_POINTS2[\"AMPERSAND\"] = 38] = \"AMPERSAND\";\n CODE_POINTS2[CODE_POINTS2[\"APOSTROPHE\"] = 39] = \"APOSTROPHE\";\n CODE_POINTS2[CODE_POINTS2[\"HYPHEN_MINUS\"] = 45] = \"HYPHEN_MINUS\";\n CODE_POINTS2[CODE_POINTS2[\"SOLIDUS\"] = 47] = \"SOLIDUS\";\n CODE_POINTS2[CODE_POINTS2[\"DIGIT_0\"] = 48] = \"DIGIT_0\";\n CODE_POINTS2[CODE_POINTS2[\"DIGIT_9\"] = 57] = \"DIGIT_9\";\n CODE_POINTS2[CODE_POINTS2[\"SEMICOLON\"] = 59] = \"SEMICOLON\";\n CODE_POINTS2[CODE_POINTS2[\"LESS_THAN_SIGN\"] = 60] = \"LESS_THAN_SIGN\";\n CODE_POINTS2[CODE_POINTS2[\"EQUALS_SIGN\"] = 61] = \"EQUALS_SIGN\";\n CODE_POINTS2[CODE_POINTS2[\"GREATER_THAN_SIGN\"] = 62] = \"GREATER_THAN_SIGN\";\n CODE_POINTS2[CODE_POINTS2[\"QUESTION_MARK\"] = 63] = \"QUESTION_MARK\";\n CODE_POINTS2[CODE_POINTS2[\"LATIN_CAPITAL_A\"] = 65] = \"LATIN_CAPITAL_A\";\n CODE_POINTS2[CODE_POINTS2[\"LATIN_CAPITAL_Z\"] = 90] = \"LATIN_CAPITAL_Z\";\n CODE_POINTS2[CODE_POINTS2[\"RIGHT_SQUARE_BRACKET\"] = 93] = \"RIGHT_SQUARE_BRACKET\";\n CODE_POINTS2[CODE_POINTS2[\"GRAVE_ACCENT\"] = 96] = \"GRAVE_ACCENT\";\n CODE_POINTS2[CODE_POINTS2[\"LATIN_SMALL_A\"] = 97] = \"LATIN_SMALL_A\";\n CODE_POINTS2[CODE_POINTS2[\"LATIN_SMALL_Z\"] = 122] = \"LATIN_SMALL_Z\";\n})(CODE_POINTS || (CODE_POINTS = {}));\nconst SEQUENCES = {\n DASH_DASH: \"--\",\n CDATA_START: \"[CDATA[\",\n DOCTYPE: \"doctype\",\n SCRIPT: \"script\",\n PUBLIC: \"public\",\n SYSTEM: \"system\"\n};\nfunction isSurrogate(cp) {\n return cp >= 55296 && cp <= 57343;\n}\nfunction isSurrogatePair(cp) {\n return cp >= 56320 && cp <= 57343;\n}\nfunction getSurrogatePairCodePoint(cp1, cp2) {\n return (cp1 - 55296) * 1024 + 9216 + cp2;\n}\nfunction isControlCodePoint(cp) {\n return cp !== 32 && cp !== 10 && cp !== 13 && cp !== 9 && cp !== 12 && cp >= 1 && cp <= 31 || cp >= 127 && cp <= 159;\n}\nfunction isUndefinedCodePoint(cp) {\n return cp >= 64976 && cp <= 65007 || UNDEFINED_CODE_POINTS.has(cp);\n}\nvar ERR;\n(function(ERR2) {\n ERR2[\"controlCharacterInInputStream\"] = \"control-character-in-input-stream\";\n ERR2[\"noncharacterInInputStream\"] = \"noncharacter-in-input-stream\";\n ERR2[\"surrogateInInputStream\"] = \"surrogate-in-input-stream\";\n ERR2[\"nonVoidHtmlElementStartTagWithTrailingSolidus\"] = \"non-void-html-element-start-tag-with-trailing-solidus\";\n ERR2[\"endTagWithAttributes\"] = \"end-tag-with-attributes\";\n ERR2[\"endTagWithTrailingSolidus\"] = \"end-tag-with-trailing-solidus\";\n ERR2[\"unexpectedSolidusInTag\"] = \"unexpected-solidus-in-tag\";\n ERR2[\"unexpectedNullCharacter\"] = \"unexpected-null-character\";\n ERR2[\"unexpectedQuestionMarkInsteadOfTagName\"] = \"unexpected-question-mark-instead-of-tag-name\";\n ERR2[\"invalidFirstCharacterOfTagName\"] = \"invalid-first-character-of-tag-name\";\n ERR2[\"unexpectedEqualsSignBeforeAttributeName\"] = \"unexpected-equals-sign-before-attribute-name\";\n ERR2[\"missingEndTagName\"] = \"missing-end-tag-name\";\n ERR2[\"unexpectedCharacterInAttributeName\"] = \"unexpected-character-in-attribute-name\";\n ERR2[\"unknownNamedCharacterReference\"] = \"unknown-named-character-reference\";\n ERR2[\"missingSemicolonAfterCharacterReference\"] = \"missing-semicolon-after-character-reference\";\n ERR2[\"unexpectedCharacterAfterDoctypeSystemIdentifier\"] = \"unexpected-character-after-doctype-system-identifier\";\n ERR2[\"unexpectedCharacterInUnquotedAttributeValue\"] = \"unexpected-character-in-unquoted-attribute-value\";\n ERR2[\"eofBeforeTagName\"] = \"eof-before-tag-name\";\n ERR2[\"eofInTag\"] = \"eof-in-tag\";\n ERR2[\"missingAttributeValue\"] = \"missing-attribute-value\";\n ERR2[\"missingWhitespaceBetweenAttributes\"] = \"missing-whitespace-between-attributes\";\n ERR2[\"missingWhitespaceAfterDoctypePublicKeyword\"] = \"missing-whitespace-after-doctype-public-keyword\";\n ERR2[\"missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers\"] = \"missing-whitespace-between-doctype-public-and-system-identifiers\";\n ERR2[\"missingWhitespaceAfterDoctypeSystemKeyword\"] = \"missing-whitespace-after-doctype-system-keyword\";\n ERR2[\"missingQuoteBeforeDoctypePublicIdentifier\"] = \"missing-quote-before-doctype-public-identifier\";\n ERR2[\"missingQuoteBeforeDoctypeSystemIdentifier\"] = \"missing-quote-before-doctype-system-identifier\";\n ERR2[\"missingDoctypePublicIdentifier\"] = \"missing-doctype-public-identifier\";\n ERR2[\"missingDoctypeSystemIdentifier\"] = \"missing-doctype-system-identifier\";\n ERR2[\"abruptDoctypePublicIdentifier\"] = \"abrupt-doctype-public-identifier\";\n ERR2[\"abruptDoctypeSystemIdentifier\"] = \"abrupt-doctype-system-identifier\";\n ERR2[\"cdataInHtmlContent\"] = \"cdata-in-html-content\";\n ERR2[\"incorrectlyOpenedComment\"] = \"incorrectly-opened-comment\";\n ERR2[\"eofInScriptHtmlCommentLikeText\"] = \"eof-in-script-html-comment-like-text\";\n ERR2[\"eofInDoctype\"] = \"eof-in-doctype\";\n ERR2[\"nestedComment\"] = \"nested-comment\";\n ERR2[\"abruptClosingOfEmptyComment\"] = \"abrupt-closing-of-empty-comment\";\n ERR2[\"eofInComment\"] = \"eof-in-comment\";\n ERR2[\"incorrectlyClosedComment\"] = \"incorrectly-closed-comment\";\n ERR2[\"eofInCdata\"] = \"eof-in-cdata\";\n ERR2[\"absenceOfDigitsInNumericCharacterReference\"] = \"absence-of-digits-in-numeric-character-reference\";\n ERR2[\"nullCharacterReference\"] = \"null-character-reference\";\n ERR2[\"surrogateCharacterReference\"] = \"surrogate-character-reference\";\n ERR2[\"characterReferenceOutsideUnicodeRange\"] = \"character-reference-outside-unicode-range\";\n ERR2[\"controlCharacterReference\"] = \"control-character-reference\";\n ERR2[\"noncharacterCharacterReference\"] = \"noncharacter-character-reference\";\n ERR2[\"missingWhitespaceBeforeDoctypeName\"] = \"missing-whitespace-before-doctype-name\";\n ERR2[\"missingDoctypeName\"] = \"missing-doctype-name\";\n ERR2[\"invalidCharacterSequenceAfterDoctypeName\"] = \"invalid-character-sequence-after-doctype-name\";\n ERR2[\"duplicateAttribute\"] = \"duplicate-attribute\";\n ERR2[\"nonConformingDoctype\"] = \"non-conforming-doctype\";\n ERR2[\"missingDoctype\"] = \"missing-doctype\";\n ERR2[\"misplacedDoctype\"] = \"misplaced-doctype\";\n ERR2[\"endTagWithoutMatchingOpenElement\"] = \"end-tag-without-matching-open-element\";\n ERR2[\"closingOfElementWithOpenChildElements\"] = \"closing-of-element-with-open-child-elements\";\n ERR2[\"disallowedContentInNoscriptInHead\"] = \"disallowed-content-in-noscript-in-head\";\n ERR2[\"openElementsLeftAfterEof\"] = \"open-elements-left-after-eof\";\n ERR2[\"abandonedHeadElementChild\"] = \"abandoned-head-element-child\";\n ERR2[\"misplacedStartTagForHeadElement\"] = \"misplaced-start-tag-for-head-element\";\n ERR2[\"nestedNoscriptInHead\"] = \"nested-noscript-in-head\";\n ERR2[\"eofInElementThatCanContainOnlyText\"] = \"eof-in-element-that-can-contain-only-text\";\n})(ERR || (ERR = {}));\nconst DEFAULT_BUFFER_WATERLINE = 1 << 16;\nclass Preprocessor {\n constructor(handler) {\n this.handler = handler;\n this.html = \"\";\n this.pos = -1;\n this.lastGapPos = -2;\n this.gapStack = [];\n this.skipNextNewLine = false;\n this.lastChunkWritten = false;\n this.endOfChunkHit = false;\n this.bufferWaterline = DEFAULT_BUFFER_WATERLINE;\n this.isEol = false;\n this.lineStartPos = 0;\n this.droppedBufferSize = 0;\n this.line = 1;\n this.lastErrOffset = -1;\n }\n /** The column on the current line. If we just saw a gap (eg. a surrogate pair), return the index before. */\n get col() {\n return this.pos - this.lineStartPos + Number(this.lastGapPos !== this.pos);\n }\n get offset() {\n return this.droppedBufferSize + this.pos;\n }\n getError(code, cpOffset) {\n const { line, col, offset } = this;\n const startCol = col + cpOffset;\n const startOffset = offset + cpOffset;\n return {\n code,\n startLine: line,\n endLine: line,\n startCol,\n endCol: startCol,\n startOffset,\n endOffset: startOffset\n };\n }\n _err(code) {\n if (this.handler.onParseError && this.lastErrOffset !== this.offset) {\n this.lastErrOffset = this.offset;\n this.handler.onParseError(this.getError(code, 0));\n }\n }\n _addGap() {\n this.gapStack.push(this.lastGapPos);\n this.lastGapPos = this.pos;\n }\n _processSurrogate(cp) {\n if (this.pos !== this.html.length - 1) {\n const nextCp = this.html.charCodeAt(this.pos + 1);\n if (isSurrogatePair(nextCp)) {\n this.pos++;\n this._addGap();\n return getSurrogatePairCodePoint(cp, nextCp);\n }\n } else if (!this.lastChunkWritten) {\n this.endOfChunkHit = true;\n return CODE_POINTS.EOF;\n }\n this._err(ERR.surrogateInInputStream);\n return cp;\n }\n willDropParsedChunk() {\n return this.pos > this.bufferWaterline;\n }\n dropParsedChunk() {\n if (this.willDropParsedChunk()) {\n this.html = this.html.substring(this.pos);\n this.lineStartPos -= this.pos;\n this.droppedBufferSize += this.pos;\n this.pos = 0;\n this.lastGapPos = -2;\n this.gapStack.length = 0;\n }\n }\n write(chunk, isLastChunk) {\n if (this.html.length > 0) {\n this.html += chunk;\n } else {\n this.html = chunk;\n }\n this.endOfChunkHit = false;\n this.lastChunkWritten = isLastChunk;\n }\n insertHtmlAtCurrentPos(chunk) {\n this.html = this.html.substring(0, this.pos + 1) + chunk + this.html.substring(this.pos + 1);\n this.endOfChunkHit = false;\n }\n startsWith(pattern, caseSensitive) {\n if (this.pos + pattern.length > this.html.length) {\n this.endOfChunkHit = !this.lastChunkWritten;\n return false;\n }\n if (caseSensitive) {\n return this.html.startsWith(pattern, this.pos);\n }\n for (let i = 0; i < pattern.length; i++) {\n const cp = this.html.charCodeAt(this.pos + i) | 32;\n if (cp !== pattern.charCodeAt(i)) {\n return false;\n }\n }\n return true;\n }\n peek(offset) {\n const pos = this.pos + offset;\n if (pos >= this.html.length) {\n this.endOfChunkHit = !this.lastChunkWritten;\n return CODE_POINTS.EOF;\n }\n const code = this.html.charCodeAt(pos);\n return code === CODE_POINTS.CARRIAGE_RETURN ? CODE_POINTS.LINE_FEED : code;\n }\n advance() {\n this.pos++;\n if (this.isEol) {\n this.isEol = false;\n this.line++;\n this.lineStartPos = this.pos;\n }\n if (this.pos >= this.html.length) {\n this.endOfChunkHit = !this.lastChunkWritten;\n return CODE_POINTS.EOF;\n }\n let cp = this.html.charCodeAt(this.pos);\n if (cp === CODE_POINTS.CARRIAGE_RETURN) {\n this.isEol = true;\n this.skipNextNewLine = true;\n return CODE_POINTS.LINE_FEED;\n }\n if (cp === CODE_POINTS.LINE_FEED) {\n this.isEol = true;\n if (this.skipNextNewLine) {\n this.line--;\n this.skipNextNewLine = false;\n this._addGap();\n return this.advance();\n }\n }\n this.skipNextNewLine = false;\n if (isSurrogate(cp)) {\n cp = this._processSurrogate(cp);\n }\n const isCommonValidRange = this.handler.onParseError === null || cp > 31 && cp < 127 || cp === CODE_POINTS.LINE_FEED || cp === CODE_POINTS.CARRIAGE_RETURN || cp > 159 && cp < 64976;\n if (!isCommonValidRange) {\n this._checkForProblematicCharacters(cp);\n }\n return cp;\n }\n _checkForProblematicCharacters(cp) {\n if (isControlCodePoint(cp)) {\n this._err(ERR.controlCharacterInInputStream);\n } else if (isUndefinedCodePoint(cp)) {\n this._err(ERR.noncharacterInInputStream);\n }\n }\n retreat(count) {\n this.pos -= count;\n while (this.pos < this.lastGapPos) {\n this.lastGapPos = this.gapStack.pop();\n this.pos--;\n }\n this.isEol = false;\n }\n}\nvar TokenType;\n(function(TokenType2) {\n TokenType2[TokenType2[\"CHARACTER\"] = 0] = \"CHARACTER\";\n TokenType2[TokenType2[\"NULL_CHARACTER\"] = 1] = \"NULL_CHARACTER\";\n TokenType2[TokenType2[\"WHITESPACE_CHARACTER\"] = 2] = \"WHITESPACE_CHARACTER\";\n TokenType2[TokenType2[\"START_TAG\"] = 3] = \"START_TAG\";\n TokenType2[TokenType2[\"END_TAG\"] = 4] = \"END_TAG\";\n TokenType2[TokenType2[\"COMMENT\"] = 5] = \"COMMENT\";\n TokenType2[TokenType2[\"DOCTYPE\"] = 6] = \"DOCTYPE\";\n TokenType2[TokenType2[\"EOF\"] = 7] = \"EOF\";\n TokenType2[TokenType2[\"HIBERNATION\"] = 8] = \"HIBERNATION\";\n})(TokenType || (TokenType = {}));\nfunction getTokenAttr(token, attrName) {\n for (let i = token.attrs.length - 1; i >= 0; i--) {\n if (token.attrs[i].name === attrName) {\n return token.attrs[i].value;\n }\n }\n return null;\n}\nconst htmlDecodeTree = /* @__PURE__ */ new Uint16Array(\n // prettier-ignore\n /* @__PURE__ */ 'ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\\0\\0\\0\\0\\0\\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\\0\\0\\0͔͂\\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\\0\\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\\0\\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\\0ц\\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\\0\\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\\0\\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\\0ֿ\\0\\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\\0ࣃbleBracket;柦nǔࣈ\\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻\"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\\0စbleBracket;柧nǔည\\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\\0\\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\\0ጬጱ\\0\\0\\0\\0\\0ጸጽ፷ᎅ\\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\\0ᖰᖶᖿ\\0\\0\\0\\0ᗆᗛᗫᙟ᙭\\0ᚕ᚛ᚲᚹ\\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\\0\\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\\0\\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\\0ᠳƲᠯ\\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\\0᧨ᨑᨕᨲ\\0ᨷᩐ\\0\\0᪴\\0\\0᫁\\0\\0ᬡᬮ᭍᭒\\0᯽\\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\\0\\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\\0\\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\\0\\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\\0\\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\\0\\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\\0\\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\\0\\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\\0ᾞ\\0ᾡᾧ\\0\\0ῆῌ\\0ΐ\\0ῦῪ \\0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\\0\\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\\0⁐β•‥‧‪‬\\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\\0‶;慔;慖ʴ‾⁁\\0\\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\\0⊪\\0⊸⋅⋎\\0⋕⋳\\0\\0⋸⌢⍧⍢⍿\\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\\0⒪\\0⒱\\0\\0\\0\\0\\0⒵Ⓔ\\0ⓆⓈⓍ\\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\\0⧣p肻 ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\\0\\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0\\0ⴭ\\0ⴸⵈⵠⵥ⵲ⶄᬇ\\0\\0ⶍⶫ\\0ⷈⷎ\\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\\0\\0⵼\\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\\0⹽\\0⺀⺝\\0⺢⺹\\0\\0⻋ຜ\\0⼓\\0\\0⼫⾼\\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\\0\\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\\0㍺㎤\\0\\0㏬㏰\\0㐨㑈㑚㒭㒱㓊㓱\\0㘖\\0\\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\\0\\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\\0㙾㛂\\0\\0\\0\\0\\0㛛㜃\\0㜉㝬\\0\\0\\0㞇ɲ㙖\\0\\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\\0\\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\\0\\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\\0㪋\\0㪐㪛\\0\\0㪝㪨㪫㪯\\0\\0㫃㫎\\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌'.split(\"\").map((c) => c.charCodeAt(0))\n);\nconst decodeMap = /* @__PURE__ */ new Map([\n [0, 65533],\n // C1 Unicode control character reference replacements\n [128, 8364],\n [130, 8218],\n [131, 402],\n [132, 8222],\n [133, 8230],\n [134, 8224],\n [135, 8225],\n [136, 710],\n [137, 8240],\n [138, 352],\n [139, 8249],\n [140, 338],\n [142, 381],\n [145, 8216],\n [146, 8217],\n [147, 8220],\n [148, 8221],\n [149, 8226],\n [150, 8211],\n [151, 8212],\n [152, 732],\n [153, 8482],\n [154, 353],\n [155, 8250],\n [156, 339],\n [158, 382],\n [159, 376]\n]);\nfunction replaceCodePoint(codePoint) {\n var _a;\n if (codePoint >= 55296 && codePoint <= 57343 || codePoint > 1114111) {\n return 65533;\n }\n return (_a = decodeMap.get(codePoint)) !== null && _a !== void 0 ? _a : codePoint;\n}\nvar CharCodes;\n(function(CharCodes2) {\n CharCodes2[CharCodes2[\"NUM\"] = 35] = \"NUM\";\n CharCodes2[CharCodes2[\"SEMI\"] = 59] = \"SEMI\";\n CharCodes2[CharCodes2[\"EQUALS\"] = 61] = \"EQUALS\";\n CharCodes2[CharCodes2[\"ZERO\"] = 48] = \"ZERO\";\n CharCodes2[CharCodes2[\"NINE\"] = 57] = \"NINE\";\n CharCodes2[CharCodes2[\"LOWER_A\"] = 97] = \"LOWER_A\";\n CharCodes2[CharCodes2[\"LOWER_F\"] = 102] = \"LOWER_F\";\n CharCodes2[CharCodes2[\"LOWER_X\"] = 120] = \"LOWER_X\";\n CharCodes2[CharCodes2[\"LOWER_Z\"] = 122] = \"LOWER_Z\";\n CharCodes2[CharCodes2[\"UPPER_A\"] = 65] = \"UPPER_A\";\n CharCodes2[CharCodes2[\"UPPER_F\"] = 70] = \"UPPER_F\";\n CharCodes2[CharCodes2[\"UPPER_Z\"] = 90] = \"UPPER_Z\";\n})(CharCodes || (CharCodes = {}));\nconst TO_LOWER_BIT = 32;\nvar BinTrieFlags;\n(function(BinTrieFlags2) {\n BinTrieFlags2[BinTrieFlags2[\"VALUE_LENGTH\"] = 49152] = \"VALUE_LENGTH\";\n BinTrieFlags2[BinTrieFlags2[\"BRANCH_LENGTH\"] = 16256] = \"BRANCH_LENGTH\";\n BinTrieFlags2[BinTrieFlags2[\"JUMP_TABLE\"] = 127] = \"JUMP_TABLE\";\n})(BinTrieFlags || (BinTrieFlags = {}));\nfunction isNumber(code) {\n return code >= CharCodes.ZERO && code <= CharCodes.NINE;\n}\nfunction isHexadecimalCharacter(code) {\n return code >= CharCodes.UPPER_A && code <= CharCodes.UPPER_F || code >= CharCodes.LOWER_A && code <= CharCodes.LOWER_F;\n}\nfunction isAsciiAlphaNumeric$1(code) {\n return code >= CharCodes.UPPER_A && code <= CharCodes.UPPER_Z || code >= CharCodes.LOWER_A && code <= CharCodes.LOWER_Z || isNumber(code);\n}\nfunction isEntityInAttributeInvalidEnd(code) {\n return code === CharCodes.EQUALS || isAsciiAlphaNumeric$1(code);\n}\nvar EntityDecoderState;\n(function(EntityDecoderState2) {\n EntityDecoderState2[EntityDecoderState2[\"EntityStart\"] = 0] = \"EntityStart\";\n EntityDecoderState2[EntityDecoderState2[\"NumericStart\"] = 1] = \"NumericStart\";\n EntityDecoderState2[EntityDecoderState2[\"NumericDecimal\"] = 2] = \"NumericDecimal\";\n EntityDecoderState2[EntityDecoderState2[\"NumericHex\"] = 3] = \"NumericHex\";\n EntityDecoderState2[EntityDecoderState2[\"NamedEntity\"] = 4] = \"NamedEntity\";\n})(EntityDecoderState || (EntityDecoderState = {}));\nvar DecodingMode;\n(function(DecodingMode2) {\n DecodingMode2[DecodingMode2[\"Legacy\"] = 0] = \"Legacy\";\n DecodingMode2[DecodingMode2[\"Strict\"] = 1] = \"Strict\";\n DecodingMode2[DecodingMode2[\"Attribute\"] = 2] = \"Attribute\";\n})(DecodingMode || (DecodingMode = {}));\nclass EntityDecoder {\n constructor(decodeTree, emitCodePoint, errors) {\n this.decodeTree = decodeTree;\n this.emitCodePoint = emitCodePoint;\n this.errors = errors;\n this.state = EntityDecoderState.EntityStart;\n this.consumed = 1;\n this.result = 0;\n this.treeIndex = 0;\n this.excess = 1;\n this.decodeMode = DecodingMode.Strict;\n }\n /** Resets the instance to make it reusable. */\n startEntity(decodeMode) {\n this.decodeMode = decodeMode;\n this.state = EntityDecoderState.EntityStart;\n this.result = 0;\n this.treeIndex = 0;\n this.excess = 1;\n this.consumed = 1;\n }\n /**\n * Write an entity to the decoder. This can be called multiple times with partial entities.\n * If the entity is incomplete, the decoder will return -1.\n *\n * Mirrors the implementation of `getDecoder`, but with the ability to stop decoding if the\n * entity is incomplete, and resume when the next string is written.\n *\n * @param input The string containing the entity (or a continuation of the entity).\n * @param offset The offset at which the entity begins. Should be 0 if this is not the first call.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n write(input, offset) {\n switch (this.state) {\n case EntityDecoderState.EntityStart: {\n if (input.charCodeAt(offset) === CharCodes.NUM) {\n this.state = EntityDecoderState.NumericStart;\n this.consumed += 1;\n return this.stateNumericStart(input, offset + 1);\n }\n this.state = EntityDecoderState.NamedEntity;\n return this.stateNamedEntity(input, offset);\n }\n case EntityDecoderState.NumericStart: {\n return this.stateNumericStart(input, offset);\n }\n case EntityDecoderState.NumericDecimal: {\n return this.stateNumericDecimal(input, offset);\n }\n case EntityDecoderState.NumericHex: {\n return this.stateNumericHex(input, offset);\n }\n case EntityDecoderState.NamedEntity: {\n return this.stateNamedEntity(input, offset);\n }\n }\n }\n /**\n * Switches between the numeric decimal and hexadecimal states.\n *\n * Equivalent to the `Numeric character reference state` in the HTML spec.\n *\n * @param input The string containing the entity (or a continuation of the entity).\n * @param offset The current offset.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n stateNumericStart(input, offset) {\n if (offset >= input.length) {\n return -1;\n }\n if ((input.charCodeAt(offset) | TO_LOWER_BIT) === CharCodes.LOWER_X) {\n this.state = EntityDecoderState.NumericHex;\n this.consumed += 1;\n return this.stateNumericHex(input, offset + 1);\n }\n this.state = EntityDecoderState.NumericDecimal;\n return this.stateNumericDecimal(input, offset);\n }\n addToNumericResult(input, start, end, base) {\n if (start !== end) {\n const digitCount = end - start;\n this.result = this.result * Math.pow(base, digitCount) + Number.parseInt(input.substr(start, digitCount), base);\n this.consumed += digitCount;\n }\n }\n /**\n * Parses a hexadecimal numeric entity.\n *\n * Equivalent to the `Hexademical character reference state` in the HTML spec.\n *\n * @param input The string containing the entity (or a continuation of the entity).\n * @param offset The current offset.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n stateNumericHex(input, offset) {\n const startIndex = offset;\n while (offset < input.length) {\n const char = input.charCodeAt(offset);\n if (isNumber(char) || isHexadecimalCharacter(char)) {\n offset += 1;\n } else {\n this.addToNumericResult(input, startIndex, offset, 16);\n return this.emitNumericEntity(char, 3);\n }\n }\n this.addToNumericResult(input, startIndex, offset, 16);\n return -1;\n }\n /**\n * Parses a decimal numeric entity.\n *\n * Equivalent to the `Decimal character reference state` in the HTML spec.\n *\n * @param input The string containing the entity (or a continuation of the entity).\n * @param offset The current offset.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n stateNumericDecimal(input, offset) {\n const startIndex = offset;\n while (offset < input.length) {\n const char = input.charCodeAt(offset);\n if (isNumber(char)) {\n offset += 1;\n } else {\n this.addToNumericResult(input, startIndex, offset, 10);\n return this.emitNumericEntity(char, 2);\n }\n }\n this.addToNumericResult(input, startIndex, offset, 10);\n return -1;\n }\n /**\n * Validate and emit a numeric entity.\n *\n * Implements the logic from the `Hexademical character reference start\n * state` and `Numeric character reference end state` in the HTML spec.\n *\n * @param lastCp The last code point of the entity. Used to see if the\n * entity was terminated with a semicolon.\n * @param expectedLength The minimum number of characters that should be\n * consumed. Used to validate that at least one digit\n * was consumed.\n * @returns The number of characters that were consumed.\n */\n emitNumericEntity(lastCp, expectedLength) {\n var _a;\n if (this.consumed <= expectedLength) {\n (_a = this.errors) === null || _a === void 0 ? void 0 : _a.absenceOfDigitsInNumericCharacterReference(this.consumed);\n return 0;\n }\n if (lastCp === CharCodes.SEMI) {\n this.consumed += 1;\n } else if (this.decodeMode === DecodingMode.Strict) {\n return 0;\n }\n this.emitCodePoint(replaceCodePoint(this.result), this.consumed);\n if (this.errors) {\n if (lastCp !== CharCodes.SEMI) {\n this.errors.missingSemicolonAfterCharacterReference();\n }\n this.errors.validateNumericCharacterReference(this.result);\n }\n return this.consumed;\n }\n /**\n * Parses a named entity.\n *\n * Equivalent to the `Named character reference state` in the HTML spec.\n *\n * @param input The string containing the entity (or a continuation of the entity).\n * @param offset The current offset.\n * @returns The number of characters that were consumed, or -1 if the entity is incomplete.\n */\n stateNamedEntity(input, offset) {\n const { decodeTree } = this;\n let current = decodeTree[this.treeIndex];\n let valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;\n for (; offset < input.length; offset++, this.excess++) {\n const char = input.charCodeAt(offset);\n this.treeIndex = determineBranch(decodeTree, current, this.treeIndex + Math.max(1, valueLength), char);\n if (this.treeIndex < 0) {\n return this.result === 0 || // If we are parsing an attribute\n this.decodeMode === DecodingMode.Attribute && // We shouldn't have consumed any characters after the entity,\n (valueLength === 0 || // And there should be no invalid characters.\n isEntityInAttributeInvalidEnd(char)) ? 0 : this.emitNotTerminatedNamedEntity();\n }\n current = decodeTree[this.treeIndex];\n valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14;\n if (valueLength !== 0) {\n if (char === CharCodes.SEMI) {\n return this.emitNamedEntityData(this.treeIndex, valueLength, this.consumed + this.excess);\n }\n if (this.decodeMode !== DecodingMode.Strict) {\n this.result = this.treeIndex;\n this.consumed += this.excess;\n this.excess = 0;\n }\n }\n }\n return -1;\n }\n /**\n * Emit a named entity that was not terminated with a semicolon.\n *\n * @returns The number of characters consumed.\n */\n emitNotTerminatedNamedEntity() {\n var _a;\n const { result, decodeTree } = this;\n const valueLength = (decodeTree[result] & BinTrieFlags.VALUE_LENGTH) >> 14;\n this.emitNamedEntityData(result, valueLength, this.consumed);\n (_a = this.errors) === null || _a === void 0 ? void 0 : _a.missingSemicolonAfterCharacterReference();\n return this.consumed;\n }\n /**\n * Emit a named entity.\n *\n * @param result The index of the entity in the decode tree.\n * @param valueLength The number of bytes in the entity.\n * @param consumed The number of characters consumed.\n *\n * @returns The number of characters consumed.\n */\n emitNamedEntityData(result, valueLength, consumed) {\n const { decodeTree } = this;\n this.emitCodePoint(valueLength === 1 ? decodeTree[result] & ~BinTrieFlags.VALUE_LENGTH : decodeTree[result + 1], consumed);\n if (valueLength === 3) {\n this.emitCodePoint(decodeTree[result + 2], consumed);\n }\n return consumed;\n }\n /**\n * Signal to the parser that the end of the input was reached.\n *\n * Remaining data will be emitted and relevant errors will be produced.\n *\n * @returns The number of characters consumed.\n */\n end() {\n var _a;\n switch (this.state) {\n case EntityDecoderState.NamedEntity: {\n return this.result !== 0 && (this.decodeMode !== DecodingMode.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0;\n }\n // Otherwise, emit a numeric entity if we have one.\n case EntityDecoderState.NumericDecimal: {\n return this.emitNumericEntity(0, 2);\n }\n case EntityDecoderState.NumericHex: {\n return this.emitNumericEntity(0, 3);\n }\n case EntityDecoderState.NumericStart: {\n (_a = this.errors) === null || _a === void 0 ? void 0 : _a.absenceOfDigitsInNumericCharacterReference(this.consumed);\n return 0;\n }\n case EntityDecoderState.EntityStart: {\n return 0;\n }\n }\n }\n}\nfunction determineBranch(decodeTree, current, nodeIndex, char) {\n const branchCount = (current & BinTrieFlags.BRANCH_LENGTH) >> 7;\n const jumpOffset = current & BinTrieFlags.JUMP_TABLE;\n if (branchCount === 0) {\n return jumpOffset !== 0 && char === jumpOffset ? nodeIndex : -1;\n }\n if (jumpOffset) {\n const value = char - jumpOffset;\n return value < 0 || value >= branchCount ? -1 : decodeTree[nodeIndex + value] - 1;\n }\n let lo = nodeIndex;\n let hi = lo + branchCount - 1;\n while (lo <= hi) {\n const mid = lo + hi >>> 1;\n const midValue = decodeTree[mid];\n if (midValue < char) {\n lo = mid + 1;\n } else if (midValue > char) {\n hi = mid - 1;\n } else {\n return decodeTree[mid + branchCount];\n }\n }\n return -1;\n}\nvar NS;\n(function(NS2) {\n NS2[\"HTML\"] = \"http://www.w3.org/1999/xhtml\";\n NS2[\"MATHML\"] = \"http://www.w3.org/1998/Math/MathML\";\n NS2[\"SVG\"] = \"http://www.w3.org/2000/svg\";\n NS2[\"XLINK\"] = \"http://www.w3.org/1999/xlink\";\n NS2[\"XML\"] = \"http://www.w3.org/XML/1998/namespace\";\n NS2[\"XMLNS\"] = \"http://www.w3.org/2000/xmlns/\";\n})(NS || (NS = {}));\nvar ATTRS;\n(function(ATTRS2) {\n ATTRS2[\"TYPE\"] = \"type\";\n ATTRS2[\"ACTION\"] = \"action\";\n ATTRS2[\"ENCODING\"] = \"encoding\";\n ATTRS2[\"PROMPT\"] = \"prompt\";\n ATTRS2[\"NAME\"] = \"name\";\n ATTRS2[\"COLOR\"] = \"color\";\n ATTRS2[\"FACE\"] = \"face\";\n ATTRS2[\"SIZE\"] = \"size\";\n})(ATTRS || (ATTRS = {}));\nvar DOCUMENT_MODE;\n(function(DOCUMENT_MODE2) {\n DOCUMENT_MODE2[\"NO_QUIRKS\"] = \"no-quirks\";\n DOCUMENT_MODE2[\"QUIRKS\"] = \"quirks\";\n DOCUMENT_MODE2[\"LIMITED_QUIRKS\"] = \"limited-quirks\";\n})(DOCUMENT_MODE || (DOCUMENT_MODE = {}));\nvar TAG_NAMES;\n(function(TAG_NAMES2) {\n TAG_NAMES2[\"A\"] = \"a\";\n TAG_NAMES2[\"ADDRESS\"] = \"address\";\n TAG_NAMES2[\"ANNOTATION_XML\"] = \"annotation-xml\";\n TAG_NAMES2[\"APPLET\"] = \"applet\";\n TAG_NAMES2[\"AREA\"] = \"area\";\n TAG_NAMES2[\"ARTICLE\"] = \"article\";\n TAG_NAMES2[\"ASIDE\"] = \"aside\";\n TAG_NAMES2[\"B\"] = \"b\";\n TAG_NAMES2[\"BASE\"] = \"base\";\n TAG_NAMES2[\"BASEFONT\"] = \"basefont\";\n TAG_NAMES2[\"BGSOUND\"] = \"bgsound\";\n TAG_NAMES2[\"BIG\"] = \"big\";\n TAG_NAMES2[\"BLOCKQUOTE\"] = \"blockquote\";\n TAG_NAMES2[\"BODY\"] = \"body\";\n TAG_NAMES2[\"BR\"] = \"br\";\n TAG_NAMES2[\"BUTTON\"] = \"button\";\n TAG_NAMES2[\"CAPTION\"] = \"caption\";\n TAG_NAMES2[\"CENTER\"] = \"center\";\n TAG_NAMES2[\"CODE\"] = \"code\";\n TAG_NAMES2[\"COL\"] = \"col\";\n TAG_NAMES2[\"COLGROUP\"] = \"colgroup\";\n TAG_NAMES2[\"DD\"] = \"dd\";\n TAG_NAMES2[\"DESC\"] = \"desc\";\n TAG_NAMES2[\"DETAILS\"] = \"details\";\n TAG_NAMES2[\"DIALOG\"] = \"dialog\";\n TAG_NAMES2[\"DIR\"] = \"dir\";\n TAG_NAMES2[\"DIV\"] = \"div\";\n TAG_NAMES2[\"DL\"] = \"dl\";\n TAG_NAMES2[\"DT\"] = \"dt\";\n TAG_NAMES2[\"EM\"] = \"em\";\n TAG_NAMES2[\"EMBED\"] = \"embed\";\n TAG_NAMES2[\"FIELDSET\"] = \"fieldset\";\n TAG_NAMES2[\"FIGCAPTION\"] = \"figcaption\";\n TAG_NAMES2[\"FIGURE\"] = \"figure\";\n TAG_NAMES2[\"FONT\"] = \"font\";\n TAG_NAMES2[\"FOOTER\"] = \"footer\";\n TAG_NAMES2[\"FOREIGN_OBJECT\"] = \"foreignObject\";\n TAG_NAMES2[\"FORM\"] = \"form\";\n TAG_NAMES2[\"FRAME\"] = \"frame\";\n TAG_NAMES2[\"FRAMESET\"] = \"frameset\";\n TAG_NAMES2[\"H1\"] = \"h1\";\n TAG_NAMES2[\"H2\"] = \"h2\";\n TAG_NAMES2[\"H3\"] = \"h3\";\n TAG_NAMES2[\"H4\"] = \"h4\";\n TAG_NAMES2[\"H5\"] = \"h5\";\n TAG_NAMES2[\"H6\"] = \"h6\";\n TAG_NAMES2[\"HEAD\"] = \"head\";\n TAG_NAMES2[\"HEADER\"] = \"header\";\n TAG_NAMES2[\"HGROUP\"] = \"hgroup\";\n TAG_NAMES2[\"HR\"] = \"hr\";\n TAG_NAMES2[\"HTML\"] = \"html\";\n TAG_NAMES2[\"I\"] = \"i\";\n TAG_NAMES2[\"IMG\"] = \"img\";\n TAG_NAMES2[\"IMAGE\"] = \"image\";\n TAG_NAMES2[\"INPUT\"] = \"input\";\n TAG_NAMES2[\"IFRAME\"] = \"iframe\";\n TAG_NAMES2[\"KEYGEN\"] = \"keygen\";\n TAG_NAMES2[\"LABEL\"] = \"label\";\n TAG_NAMES2[\"LI\"] = \"li\";\n TAG_NAMES2[\"LINK\"] = \"link\";\n TAG_NAMES2[\"LISTING\"] = \"listing\";\n TAG_NAMES2[\"MAIN\"] = \"main\";\n TAG_NAMES2[\"MALIGNMARK\"] = \"malignmark\";\n TAG_NAMES2[\"MARQUEE\"] = \"marquee\";\n TAG_NAMES2[\"MATH\"] = \"math\";\n TAG_NAMES2[\"MENU\"] = \"menu\";\n TAG_NAMES2[\"META\"] = \"meta\";\n TAG_NAMES2[\"MGLYPH\"] = \"mglyph\";\n TAG_NAMES2[\"MI\"] = \"mi\";\n TAG_NAMES2[\"MO\"] = \"mo\";\n TAG_NAMES2[\"MN\"] = \"mn\";\n TAG_NAMES2[\"MS\"] = \"ms\";\n TAG_NAMES2[\"MTEXT\"] = \"mtext\";\n TAG_NAMES2[\"NAV\"] = \"nav\";\n TAG_NAMES2[\"NOBR\"] = \"nobr\";\n TAG_NAMES2[\"NOFRAMES\"] = \"noframes\";\n TAG_NAMES2[\"NOEMBED\"] = \"noembed\";\n TAG_NAMES2[\"NOSCRIPT\"] = \"noscript\";\n TAG_NAMES2[\"OBJECT\"] = \"object\";\n TAG_NAMES2[\"OL\"] = \"ol\";\n TAG_NAMES2[\"OPTGROUP\"] = \"optgroup\";\n TAG_NAMES2[\"OPTION\"] = \"option\";\n TAG_NAMES2[\"P\"] = \"p\";\n TAG_NAMES2[\"PARAM\"] = \"param\";\n TAG_NAMES2[\"PLAINTEXT\"] = \"plaintext\";\n TAG_NAMES2[\"PRE\"] = \"pre\";\n TAG_NAMES2[\"RB\"] = \"rb\";\n TAG_NAMES2[\"RP\"] = \"rp\";\n TAG_NAMES2[\"RT\"] = \"rt\";\n TAG_NAMES2[\"RTC\"] = \"rtc\";\n TAG_NAMES2[\"RUBY\"] = \"ruby\";\n TAG_NAMES2[\"S\"] = \"s\";\n TAG_NAMES2[\"SCRIPT\"] = \"script\";\n TAG_NAMES2[\"SEARCH\"] = \"search\";\n TAG_NAMES2[\"SECTION\"] = \"section\";\n TAG_NAMES2[\"SELECT\"] = \"select\";\n TAG_NAMES2[\"SOURCE\"] = \"source\";\n TAG_NAMES2[\"SMALL\"] = \"small\";\n TAG_NAMES2[\"SPAN\"] = \"span\";\n TAG_NAMES2[\"STRIKE\"] = \"strike\";\n TAG_NAMES2[\"STRONG\"] = \"strong\";\n TAG_NAMES2[\"STYLE\"] = \"style\";\n TAG_NAMES2[\"SUB\"] = \"sub\";\n TAG_NAMES2[\"SUMMARY\"] = \"summary\";\n TAG_NAMES2[\"SUP\"] = \"sup\";\n TAG_NAMES2[\"TABLE\"] = \"table\";\n TAG_NAMES2[\"TBODY\"] = \"tbody\";\n TAG_NAMES2[\"TEMPLATE\"] = \"template\";\n TAG_NAMES2[\"TEXTAREA\"] = \"textarea\";\n TAG_NAMES2[\"TFOOT\"] = \"tfoot\";\n TAG_NAMES2[\"TD\"] = \"td\";\n TAG_NAMES2[\"TH\"] = \"th\";\n TAG_NAMES2[\"THEAD\"] = \"thead\";\n TAG_NAMES2[\"TITLE\"] = \"title\";\n TAG_NAMES2[\"TR\"] = \"tr\";\n TAG_NAMES2[\"TRACK\"] = \"track\";\n TAG_NAMES2[\"TT\"] = \"tt\";\n TAG_NAMES2[\"U\"] = \"u\";\n TAG_NAMES2[\"UL\"] = \"ul\";\n TAG_NAMES2[\"SVG\"] = \"svg\";\n TAG_NAMES2[\"VAR\"] = \"var\";\n TAG_NAMES2[\"WBR\"] = \"wbr\";\n TAG_NAMES2[\"XMP\"] = \"xmp\";\n})(TAG_NAMES || (TAG_NAMES = {}));\nvar TAG_ID;\n(function(TAG_ID2) {\n TAG_ID2[TAG_ID2[\"UNKNOWN\"] = 0] = \"UNKNOWN\";\n TAG_ID2[TAG_ID2[\"A\"] = 1] = \"A\";\n TAG_ID2[TAG_ID2[\"ADDRESS\"] = 2] = \"ADDRESS\";\n TAG_ID2[TAG_ID2[\"ANNOTATION_XML\"] = 3] = \"ANNOTATION_XML\";\n TAG_ID2[TAG_ID2[\"APPLET\"] = 4] = \"APPLET\";\n TAG_ID2[TAG_ID2[\"AREA\"] = 5] = \"AREA\";\n TAG_ID2[TAG_ID2[\"ARTICLE\"] = 6] = \"ARTICLE\";\n TAG_ID2[TAG_ID2[\"ASIDE\"] = 7] = \"ASIDE\";\n TAG_ID2[TAG_ID2[\"B\"] = 8] = \"B\";\n TAG_ID2[TAG_ID2[\"BASE\"] = 9] = \"BASE\";\n TAG_ID2[TAG_ID2[\"BASEFONT\"] = 10] = \"BASEFONT\";\n TAG_ID2[TAG_ID2[\"BGSOUND\"] = 11] = \"BGSOUND\";\n TAG_ID2[TAG_ID2[\"BIG\"] = 12] = \"BIG\";\n TAG_ID2[TAG_ID2[\"BLOCKQUOTE\"] = 13] = \"BLOCKQUOTE\";\n TAG_ID2[TAG_ID2[\"BODY\"] = 14] = \"BODY\";\n TAG_ID2[TAG_ID2[\"BR\"] = 15] = \"BR\";\n TAG_ID2[TAG_ID2[\"BUTTON\"] = 16] = \"BUTTON\";\n TAG_ID2[TAG_ID2[\"CAPTION\"] = 17] = \"CAPTION\";\n TAG_ID2[TAG_ID2[\"CENTER\"] = 18] = \"CENTER\";\n TAG_ID2[TAG_ID2[\"CODE\"] = 19] = \"CODE\";\n TAG_ID2[TAG_ID2[\"COL\"] = 20] = \"COL\";\n TAG_ID2[TAG_ID2[\"COLGROUP\"] = 21] = \"COLGROUP\";\n TAG_ID2[TAG_ID2[\"DD\"] = 22] = \"DD\";\n TAG_ID2[TAG_ID2[\"DESC\"] = 23] = \"DESC\";\n TAG_ID2[TAG_ID2[\"DETAILS\"] = 24] = \"DETAILS\";\n TAG_ID2[TAG_ID2[\"DIALOG\"] = 25] = \"DIALOG\";\n TAG_ID2[TAG_ID2[\"DIR\"] = 26] = \"DIR\";\n TAG_ID2[TAG_ID2[\"DIV\"] = 27] = \"DIV\";\n TAG_ID2[TAG_ID2[\"DL\"] = 28] = \"DL\";\n TAG_ID2[TAG_ID2[\"DT\"] = 29] = \"DT\";\n TAG_ID2[TAG_ID2[\"EM\"] = 30] = \"EM\";\n TAG_ID2[TAG_ID2[\"EMBED\"] = 31] = \"EMBED\";\n TAG_ID2[TAG_ID2[\"FIELDSET\"] = 32] = \"FIELDSET\";\n TAG_ID2[TAG_ID2[\"FIGCAPTION\"] = 33] = \"FIGCAPTION\";\n TAG_ID2[TAG_ID2[\"FIGURE\"] = 34] = \"FIGURE\";\n TAG_ID2[TAG_ID2[\"FONT\"] = 35] = \"FONT\";\n TAG_ID2[TAG_ID2[\"FOOTER\"] = 36] = \"FOOTER\";\n TAG_ID2[TAG_ID2[\"FOREIGN_OBJECT\"] = 37] = \"FOREIGN_OBJECT\";\n TAG_ID2[TAG_ID2[\"FORM\"] = 38] = \"FORM\";\n TAG_ID2[TAG_ID2[\"FRAME\"] = 39] = \"FRAME\";\n TAG_ID2[TAG_ID2[\"FRAMESET\"] = 40] = \"FRAMESET\";\n TAG_ID2[TAG_ID2[\"H1\"] = 41] = \"H1\";\n TAG_ID2[TAG_ID2[\"H2\"] = 42] = \"H2\";\n TAG_ID2[TAG_ID2[\"H3\"] = 43] = \"H3\";\n TAG_ID2[TAG_ID2[\"H4\"] = 44] = \"H4\";\n TAG_ID2[TAG_ID2[\"H5\"] = 45] = \"H5\";\n TAG_ID2[TAG_ID2[\"H6\"] = 46] = \"H6\";\n TAG_ID2[TAG_ID2[\"HEAD\"] = 47] = \"HEAD\";\n TAG_ID2[TAG_ID2[\"HEADER\"] = 48] = \"HEADER\";\n TAG_ID2[TAG_ID2[\"HGROUP\"] = 49] = \"HGROUP\";\n TAG_ID2[TAG_ID2[\"HR\"] = 50] = \"HR\";\n TAG_ID2[TAG_ID2[\"HTML\"] = 51] = \"HTML\";\n TAG_ID2[TAG_ID2[\"I\"] = 52] = \"I\";\n TAG_ID2[TAG_ID2[\"IMG\"] = 53] = \"IMG\";\n TAG_ID2[TAG_ID2[\"IMAGE\"] = 54] = \"IMAGE\";\n TAG_ID2[TAG_ID2[\"INPUT\"] = 55] = \"INPUT\";\n TAG_ID2[TAG_ID2[\"IFRAME\"] = 56] = \"IFRAME\";\n TAG_ID2[TAG_ID2[\"KEYGEN\"] = 57] = \"KEYGEN\";\n TAG_ID2[TAG_ID2[\"LABEL\"] = 58] = \"LABEL\";\n TAG_ID2[TAG_ID2[\"LI\"] = 59] = \"LI\";\n TAG_ID2[TAG_ID2[\"LINK\"] = 60] = \"LINK\";\n TAG_ID2[TAG_ID2[\"LISTING\"] = 61] = \"LISTING\";\n TAG_ID2[TAG_ID2[\"MAIN\"] = 62] = \"MAIN\";\n TAG_ID2[TAG_ID2[\"MALIGNMARK\"] = 63] = \"MALIGNMARK\";\n TAG_ID2[TAG_ID2[\"MARQUEE\"] = 64] = \"MARQUEE\";\n TAG_ID2[TAG_ID2[\"MATH\"] = 65] = \"MATH\";\n TAG_ID2[TAG_ID2[\"MENU\"] = 66] = \"MENU\";\n TAG_ID2[TAG_ID2[\"META\"] = 67] = \"META\";\n TAG_ID2[TAG_ID2[\"MGLYPH\"] = 68] = \"MGLYPH\";\n TAG_ID2[TAG_ID2[\"MI\"] = 69] = \"MI\";\n TAG_ID2[TAG_ID2[\"MO\"] = 70] = \"MO\";\n TAG_ID2[TAG_ID2[\"MN\"] = 71] = \"MN\";\n TAG_ID2[TAG_ID2[\"MS\"] = 72] = \"MS\";\n TAG_ID2[TAG_ID2[\"MTEXT\"] = 73] = \"MTEXT\";\n TAG_ID2[TAG_ID2[\"NAV\"] = 74] = \"NAV\";\n TAG_ID2[TAG_ID2[\"NOBR\"] = 75] = \"NOBR\";\n TAG_ID2[TAG_ID2[\"NOFRAMES\"] = 76] = \"NOFRAMES\";\n TAG_ID2[TAG_ID2[\"NOEMBED\"] = 77] = \"NOEMBED\";\n TAG_ID2[TAG_ID2[\"NOSCRIPT\"] = 78] = \"NOSCRIPT\";\n TAG_ID2[TAG_ID2[\"OBJECT\"] = 79] = \"OBJECT\";\n TAG_ID2[TAG_ID2[\"OL\"] = 80] = \"OL\";\n TAG_ID2[TAG_ID2[\"OPTGROUP\"] = 81] = \"OPTGROUP\";\n TAG_ID2[TAG_ID2[\"OPTION\"] = 82] = \"OPTION\";\n TAG_ID2[TAG_ID2[\"P\"] = 83] = \"P\";\n TAG_ID2[TAG_ID2[\"PARAM\"] = 84] = \"PARAM\";\n TAG_ID2[TAG_ID2[\"PLAINTEXT\"] = 85] = \"PLAINTEXT\";\n TAG_ID2[TAG_ID2[\"PRE\"] = 86] = \"PRE\";\n TAG_ID2[TAG_ID2[\"RB\"] = 87] = \"RB\";\n TAG_ID2[TAG_ID2[\"RP\"] = 88] = \"RP\";\n TAG_ID2[TAG_ID2[\"RT\"] = 89] = \"RT\";\n TAG_ID2[TAG_ID2[\"RTC\"] = 90] = \"RTC\";\n TAG_ID2[TAG_ID2[\"RUBY\"] = 91] = \"RUBY\";\n TAG_ID2[TAG_ID2[\"S\"] = 92] = \"S\";\n TAG_ID2[TAG_ID2[\"SCRIPT\"] = 93] = \"SCRIPT\";\n TAG_ID2[TAG_ID2[\"SEARCH\"] = 94] = \"SEARCH\";\n TAG_ID2[TAG_ID2[\"SECTION\"] = 95] = \"SECTION\";\n TAG_ID2[TAG_ID2[\"SELECT\"] = 96] = \"SELECT\";\n TAG_ID2[TAG_ID2[\"SOURCE\"] = 97] = \"SOURCE\";\n TAG_ID2[TAG_ID2[\"SMALL\"] = 98] = \"SMALL\";\n TAG_ID2[TAG_ID2[\"SPAN\"] = 99] = \"SPAN\";\n TAG_ID2[TAG_ID2[\"STRIKE\"] = 100] = \"STRIKE\";\n TAG_ID2[TAG_ID2[\"STRONG\"] = 101] = \"STRONG\";\n TAG_ID2[TAG_ID2[\"STYLE\"] = 102] = \"STYLE\";\n TAG_ID2[TAG_ID2[\"SUB\"] = 103] = \"SUB\";\n TAG_ID2[TAG_ID2[\"SUMMARY\"] = 104] = \"SUMMARY\";\n TAG_ID2[TAG_ID2[\"SUP\"] = 105] = \"SUP\";\n TAG_ID2[TAG_ID2[\"TABLE\"] = 106] = \"TABLE\";\n TAG_ID2[TAG_ID2[\"TBODY\"] = 107] = \"TBODY\";\n TAG_ID2[TAG_ID2[\"TEMPLATE\"] = 108] = \"TEMPLATE\";\n TAG_ID2[TAG_ID2[\"TEXTAREA\"] = 109] = \"TEXTAREA\";\n TAG_ID2[TAG_ID2[\"TFOOT\"] = 110] = \"TFOOT\";\n TAG_ID2[TAG_ID2[\"TD\"] = 111] = \"TD\";\n TAG_ID2[TAG_ID2[\"TH\"] = 112] = \"TH\";\n TAG_ID2[TAG_ID2[\"THEAD\"] = 113] = \"THEAD\";\n TAG_ID2[TAG_ID2[\"TITLE\"] = 114] = \"TITLE\";\n TAG_ID2[TAG_ID2[\"TR\"] = 115] = \"TR\";\n TAG_ID2[TAG_ID2[\"TRACK\"] = 116] = \"TRACK\";\n TAG_ID2[TAG_ID2[\"TT\"] = 117] = \"TT\";\n TAG_ID2[TAG_ID2[\"U\"] = 118] = \"U\";\n TAG_ID2[TAG_ID2[\"UL\"] = 119] = \"UL\";\n TAG_ID2[TAG_ID2[\"SVG\"] = 120] = \"SVG\";\n TAG_ID2[TAG_ID2[\"VAR\"] = 121] = \"VAR\";\n TAG_ID2[TAG_ID2[\"WBR\"] = 122] = \"WBR\";\n TAG_ID2[TAG_ID2[\"XMP\"] = 123] = \"XMP\";\n})(TAG_ID || (TAG_ID = {}));\nconst TAG_NAME_TO_ID = /* @__PURE__ */ new Map([\n [TAG_NAMES.A, TAG_ID.A],\n [TAG_NAMES.ADDRESS, TAG_ID.ADDRESS],\n [TAG_NAMES.ANNOTATION_XML, TAG_ID.ANNOTATION_XML],\n [TAG_NAMES.APPLET, TAG_ID.APPLET],\n [TAG_NAMES.AREA, TAG_ID.AREA],\n [TAG_NAMES.ARTICLE, TAG_ID.ARTICLE],\n [TAG_NAMES.ASIDE, TAG_ID.ASIDE],\n [TAG_NAMES.B, TAG_ID.B],\n [TAG_NAMES.BASE, TAG_ID.BASE],\n [TAG_NAMES.BASEFONT, TAG_ID.BASEFONT],\n [TAG_NAMES.BGSOUND, TAG_ID.BGSOUND],\n [TAG_NAMES.BIG, TAG_ID.BIG],\n [TAG_NAMES.BLOCKQUOTE, TAG_ID.BLOCKQUOTE],\n [TAG_NAMES.BODY, TAG_ID.BODY],\n [TAG_NAMES.BR, TAG_ID.BR],\n [TAG_NAMES.BUTTON, TAG_ID.BUTTON],\n [TAG_NAMES.CAPTION, TAG_ID.CAPTION],\n [TAG_NAMES.CENTER, TAG_ID.CENTER],\n [TAG_NAMES.CODE, TAG_ID.CODE],\n [TAG_NAMES.COL, TAG_ID.COL],\n [TAG_NAMES.COLGROUP, TAG_ID.COLGROUP],\n [TAG_NAMES.DD, TAG_ID.DD],\n [TAG_NAMES.DESC, TAG_ID.DESC],\n [TAG_NAMES.DETAILS, TAG_ID.DETAILS],\n [TAG_NAMES.DIALOG, TAG_ID.DIALOG],\n [TAG_NAMES.DIR, TAG_ID.DIR],\n [TAG_NAMES.DIV, TAG_ID.DIV],\n [TAG_NAMES.DL, TAG_ID.DL],\n [TAG_NAMES.DT, TAG_ID.DT],\n [TAG_NAMES.EM, TAG_ID.EM],\n [TAG_NAMES.EMBED, TAG_ID.EMBED],\n [TAG_NAMES.FIELDSET, TAG_ID.FIELDSET],\n [TAG_NAMES.FIGCAPTION, TAG_ID.FIGCAPTION],\n [TAG_NAMES.FIGURE, TAG_ID.FIGURE],\n [TAG_NAMES.FONT, TAG_ID.FONT],\n [TAG_NAMES.FOOTER, TAG_ID.FOOTER],\n [TAG_NAMES.FOREIGN_OBJECT, TAG_ID.FOREIGN_OBJECT],\n [TAG_NAMES.FORM, TAG_ID.FORM],\n [TAG_NAMES.FRAME, TAG_ID.FRAME],\n [TAG_NAMES.FRAMESET, TAG_ID.FRAMESET],\n [TAG_NAMES.H1, TAG_ID.H1],\n [TAG_NAMES.H2, TAG_ID.H2],\n [TAG_NAMES.H3, TAG_ID.H3],\n [TAG_NAMES.H4, TAG_ID.H4],\n [TAG_NAMES.H5, TAG_ID.H5],\n [TAG_NAMES.H6, TAG_ID.H6],\n [TAG_NAMES.HEAD, TAG_ID.HEAD],\n [TAG_NAMES.HEADER, TAG_ID.HEADER],\n [TAG_NAMES.HGROUP, TAG_ID.HGROUP],\n [TAG_NAMES.HR, TAG_ID.HR],\n [TAG_NAMES.HTML, TAG_ID.HTML],\n [TAG_NAMES.I, TAG_ID.I],\n [TAG_NAMES.IMG, TAG_ID.IMG],\n [TAG_NAMES.IMAGE, TAG_ID.IMAGE],\n [TAG_NAMES.INPUT, TAG_ID.INPUT],\n [TAG_NAMES.IFRAME, TAG_ID.IFRAME],\n [TAG_NAMES.KEYGEN, TAG_ID.KEYGEN],\n [TAG_NAMES.LABEL, TAG_ID.LABEL],\n [TAG_NAMES.LI, TAG_ID.LI],\n [TAG_NAMES.LINK, TAG_ID.LINK],\n [TAG_NAMES.LISTING, TAG_ID.LISTING],\n [TAG_NAMES.MAIN, TAG_ID.MAIN],\n [TAG_NAMES.MALIGNMARK, TAG_ID.MALIGNMARK],\n [TAG_NAMES.MARQUEE, TAG_ID.MARQUEE],\n [TAG_NAMES.MATH, TAG_ID.MATH],\n [TAG_NAMES.MENU, TAG_ID.MENU],\n [TAG_NAMES.META, TAG_ID.META],\n [TAG_NAMES.MGLYPH, TAG_ID.MGLYPH],\n [TAG_NAMES.MI, TAG_ID.MI],\n [TAG_NAMES.MO, TAG_ID.MO],\n [TAG_NAMES.MN, TAG_ID.MN],\n [TAG_NAMES.MS, TAG_ID.MS],\n [TAG_NAMES.MTEXT, TAG_ID.MTEXT],\n [TAG_NAMES.NAV, TAG_ID.NAV],\n [TAG_NAMES.NOBR, TAG_ID.NOBR],\n [TAG_NAMES.NOFRAMES, TAG_ID.NOFRAMES],\n [TAG_NAMES.NOEMBED, TAG_ID.NOEMBED],\n [TAG_NAMES.NOSCRIPT, TAG_ID.NOSCRIPT],\n [TAG_NAMES.OBJECT, TAG_ID.OBJECT],\n [TAG_NAMES.OL, TAG_ID.OL],\n [TAG_NAMES.OPTGROUP, TAG_ID.OPTGROUP],\n [TAG_NAMES.OPTION, TAG_ID.OPTION],\n [TAG_NAMES.P, TAG_ID.P],\n [TAG_NAMES.PARAM, TAG_ID.PARAM],\n [TAG_NAMES.PLAINTEXT, TAG_ID.PLAINTEXT],\n [TAG_NAMES.PRE, TAG_ID.PRE],\n [TAG_NAMES.RB, TAG_ID.RB],\n [TAG_NAMES.RP, TAG_ID.RP],\n [TAG_NAMES.RT, TAG_ID.RT],\n [TAG_NAMES.RTC, TAG_ID.RTC],\n [TAG_NAMES.RUBY, TAG_ID.RUBY],\n [TAG_NAMES.S, TAG_ID.S],\n [TAG_NAMES.SCRIPT, TAG_ID.SCRIPT],\n [TAG_NAMES.SEARCH, TAG_ID.SEARCH],\n [TAG_NAMES.SECTION, TAG_ID.SECTION],\n [TAG_NAMES.SELECT, TAG_ID.SELECT],\n [TAG_NAMES.SOURCE, TAG_ID.SOURCE],\n [TAG_NAMES.SMALL, TAG_ID.SMALL],\n [TAG_NAMES.SPAN, TAG_ID.SPAN],\n [TAG_NAMES.STRIKE, TAG_ID.STRIKE],\n [TAG_NAMES.STRONG, TAG_ID.STRONG],\n [TAG_NAMES.STYLE, TAG_ID.STYLE],\n [TAG_NAMES.SUB, TAG_ID.SUB],\n [TAG_NAMES.SUMMARY, TAG_ID.SUMMARY],\n [TAG_NAMES.SUP, TAG_ID.SUP],\n [TAG_NAMES.TABLE, TAG_ID.TABLE],\n [TAG_NAMES.TBODY, TAG_ID.TBODY],\n [TAG_NAMES.TEMPLATE, TAG_ID.TEMPLATE],\n [TAG_NAMES.TEXTAREA, TAG_ID.TEXTAREA],\n [TAG_NAMES.TFOOT, TAG_ID.TFOOT],\n [TAG_NAMES.TD, TAG_ID.TD],\n [TAG_NAMES.TH, TAG_ID.TH],\n [TAG_NAMES.THEAD, TAG_ID.THEAD],\n [TAG_NAMES.TITLE, TAG_ID.TITLE],\n [TAG_NAMES.TR, TAG_ID.TR],\n [TAG_NAMES.TRACK, TAG_ID.TRACK],\n [TAG_NAMES.TT, TAG_ID.TT],\n [TAG_NAMES.U, TAG_ID.U],\n [TAG_NAMES.UL, TAG_ID.UL],\n [TAG_NAMES.SVG, TAG_ID.SVG],\n [TAG_NAMES.VAR, TAG_ID.VAR],\n [TAG_NAMES.WBR, TAG_ID.WBR],\n [TAG_NAMES.XMP, TAG_ID.XMP]\n]);\nfunction getTagID(tagName) {\n var _a;\n return (_a = TAG_NAME_TO_ID.get(tagName)) !== null && _a !== void 0 ? _a : TAG_ID.UNKNOWN;\n}\nconst $ = TAG_ID;\nconst SPECIAL_ELEMENTS = {\n [NS.HTML]: /* @__PURE__ */ new Set([\n $.ADDRESS,\n $.APPLET,\n $.AREA,\n $.ARTICLE,\n $.ASIDE,\n $.BASE,\n $.BASEFONT,\n $.BGSOUND,\n $.BLOCKQUOTE,\n $.BODY,\n $.BR,\n $.BUTTON,\n $.CAPTION,\n $.CENTER,\n $.COL,\n $.COLGROUP,\n $.DD,\n $.DETAILS,\n $.DIR,\n $.DIV,\n $.DL,\n $.DT,\n $.EMBED,\n $.FIELDSET,\n $.FIGCAPTION,\n $.FIGURE,\n $.FOOTER,\n $.FORM,\n $.FRAME,\n $.FRAMESET,\n $.H1,\n $.H2,\n $.H3,\n $.H4,\n $.H5,\n $.H6,\n $.HEAD,\n $.HEADER,\n $.HGROUP,\n $.HR,\n $.HTML,\n $.IFRAME,\n $.IMG,\n $.INPUT,\n $.LI,\n $.LINK,\n $.LISTING,\n $.MAIN,\n $.MARQUEE,\n $.MENU,\n $.META,\n $.NAV,\n $.NOEMBED,\n $.NOFRAMES,\n $.NOSCRIPT,\n $.OBJECT,\n $.OL,\n $.P,\n $.PARAM,\n $.PLAINTEXT,\n $.PRE,\n $.SCRIPT,\n $.SECTION,\n $.SELECT,\n $.SOURCE,\n $.STYLE,\n $.SUMMARY,\n $.TABLE,\n $.TBODY,\n $.TD,\n $.TEMPLATE,\n $.TEXTAREA,\n $.TFOOT,\n $.TH,\n $.THEAD,\n $.TITLE,\n $.TR,\n $.TRACK,\n $.UL,\n $.WBR,\n $.XMP\n ]),\n [NS.MATHML]: /* @__PURE__ */ new Set([$.MI, $.MO, $.MN, $.MS, $.MTEXT, $.ANNOTATION_XML]),\n [NS.SVG]: /* @__PURE__ */ new Set([$.TITLE, $.FOREIGN_OBJECT, $.DESC]),\n [NS.XLINK]: /* @__PURE__ */ new Set(),\n [NS.XML]: /* @__PURE__ */ new Set(),\n [NS.XMLNS]: /* @__PURE__ */ new Set()\n};\nconst NUMBERED_HEADERS = /* @__PURE__ */ new Set([$.H1, $.H2, $.H3, $.H4, $.H5, $.H6]);\nconst UNESCAPED_TEXT = /* @__PURE__ */ new Set([\n TAG_NAMES.STYLE,\n TAG_NAMES.SCRIPT,\n TAG_NAMES.XMP,\n TAG_NAMES.IFRAME,\n TAG_NAMES.NOEMBED,\n TAG_NAMES.NOFRAMES,\n TAG_NAMES.PLAINTEXT\n]);\nfunction hasUnescapedText(tn, scriptingEnabled) {\n return UNESCAPED_TEXT.has(tn) || scriptingEnabled && tn === TAG_NAMES.NOSCRIPT;\n}\nvar State;\n(function(State2) {\n State2[State2[\"DATA\"] = 0] = \"DATA\";\n State2[State2[\"RCDATA\"] = 1] = \"RCDATA\";\n State2[State2[\"RAWTEXT\"] = 2] = \"RAWTEXT\";\n State2[State2[\"SCRIPT_DATA\"] = 3] = \"SCRIPT_DATA\";\n State2[State2[\"PLAINTEXT\"] = 4] = \"PLAINTEXT\";\n State2[State2[\"TAG_OPEN\"] = 5] = \"TAG_OPEN\";\n State2[State2[\"END_TAG_OPEN\"] = 6] = \"END_TAG_OPEN\";\n State2[State2[\"TAG_NAME\"] = 7] = \"TAG_NAME\";\n State2[State2[\"RCDATA_LESS_THAN_SIGN\"] = 8] = \"RCDATA_LESS_THAN_SIGN\";\n State2[State2[\"RCDATA_END_TAG_OPEN\"] = 9] = \"RCDATA_END_TAG_OPEN\";\n State2[State2[\"RCDATA_END_TAG_NAME\"] = 10] = \"RCDATA_END_TAG_NAME\";\n State2[State2[\"RAWTEXT_LESS_THAN_SIGN\"] = 11] = \"RAWTEXT_LESS_THAN_SIGN\";\n State2[State2[\"RAWTEXT_END_TAG_OPEN\"] = 12] = \"RAWTEXT_END_TAG_OPEN\";\n State2[State2[\"RAWTEXT_END_TAG_NAME\"] = 13] = \"RAWTEXT_END_TAG_NAME\";\n State2[State2[\"SCRIPT_DATA_LESS_THAN_SIGN\"] = 14] = \"SCRIPT_DATA_LESS_THAN_SIGN\";\n State2[State2[\"SCRIPT_DATA_END_TAG_OPEN\"] = 15] = \"SCRIPT_DATA_END_TAG_OPEN\";\n State2[State2[\"SCRIPT_DATA_END_TAG_NAME\"] = 16] = \"SCRIPT_DATA_END_TAG_NAME\";\n State2[State2[\"SCRIPT_DATA_ESCAPE_START\"] = 17] = \"SCRIPT_DATA_ESCAPE_START\";\n State2[State2[\"SCRIPT_DATA_ESCAPE_START_DASH\"] = 18] = \"SCRIPT_DATA_ESCAPE_START_DASH\";\n State2[State2[\"SCRIPT_DATA_ESCAPED\"] = 19] = \"SCRIPT_DATA_ESCAPED\";\n State2[State2[\"SCRIPT_DATA_ESCAPED_DASH\"] = 20] = \"SCRIPT_DATA_ESCAPED_DASH\";\n State2[State2[\"SCRIPT_DATA_ESCAPED_DASH_DASH\"] = 21] = \"SCRIPT_DATA_ESCAPED_DASH_DASH\";\n State2[State2[\"SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN\"] = 22] = \"SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN\";\n State2[State2[\"SCRIPT_DATA_ESCAPED_END_TAG_OPEN\"] = 23] = \"SCRIPT_DATA_ESCAPED_END_TAG_OPEN\";\n State2[State2[\"SCRIPT_DATA_ESCAPED_END_TAG_NAME\"] = 24] = \"SCRIPT_DATA_ESCAPED_END_TAG_NAME\";\n State2[State2[\"SCRIPT_DATA_DOUBLE_ESCAPE_START\"] = 25] = \"SCRIPT_DATA_DOUBLE_ESCAPE_START\";\n State2[State2[\"SCRIPT_DATA_DOUBLE_ESCAPED\"] = 26] = \"SCRIPT_DATA_DOUBLE_ESCAPED\";\n State2[State2[\"SCRIPT_DATA_DOUBLE_ESCAPED_DASH\"] = 27] = \"SCRIPT_DATA_DOUBLE_ESCAPED_DASH\";\n State2[State2[\"SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH\"] = 28] = \"SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH\";\n State2[State2[\"SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN\"] = 29] = \"SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN\";\n State2[State2[\"SCRIPT_DATA_DOUBLE_ESCAPE_END\"] = 30] = \"SCRIPT_DATA_DOUBLE_ESCAPE_END\";\n State2[State2[\"BEFORE_ATTRIBUTE_NAME\"] = 31] = \"BEFORE_ATTRIBUTE_NAME\";\n State2[State2[\"ATTRIBUTE_NAME\"] = 32] = \"ATTRIBUTE_NAME\";\n State2[State2[\"AFTER_ATTRIBUTE_NAME\"] = 33] = \"AFTER_ATTRIBUTE_NAME\";\n State2[State2[\"BEFORE_ATTRIBUTE_VALUE\"] = 34] = \"BEFORE_ATTRIBUTE_VALUE\";\n State2[State2[\"ATTRIBUTE_VALUE_DOUBLE_QUOTED\"] = 35] = \"ATTRIBUTE_VALUE_DOUBLE_QUOTED\";\n State2[State2[\"ATTRIBUTE_VALUE_SINGLE_QUOTED\"] = 36] = \"ATTRIBUTE_VALUE_SINGLE_QUOTED\";\n State2[State2[\"ATTRIBUTE_VALUE_UNQUOTED\"] = 37] = \"ATTRIBUTE_VALUE_UNQUOTED\";\n State2[State2[\"AFTER_ATTRIBUTE_VALUE_QUOTED\"] = 38] = \"AFTER_ATTRIBUTE_VALUE_QUOTED\";\n State2[State2[\"SELF_CLOSING_START_TAG\"] = 39] = \"SELF_CLOSING_START_TAG\";\n State2[State2[\"BOGUS_COMMENT\"] = 40] = \"BOGUS_COMMENT\";\n State2[State2[\"MARKUP_DECLARATION_OPEN\"] = 41] = \"MARKUP_DECLARATION_OPEN\";\n State2[State2[\"COMMENT_START\"] = 42] = \"COMMENT_START\";\n State2[State2[\"COMMENT_START_DASH\"] = 43] = \"COMMENT_START_DASH\";\n State2[State2[\"COMMENT\"] = 44] = \"COMMENT\";\n State2[State2[\"COMMENT_LESS_THAN_SIGN\"] = 45] = \"COMMENT_LESS_THAN_SIGN\";\n State2[State2[\"COMMENT_LESS_THAN_SIGN_BANG\"] = 46] = \"COMMENT_LESS_THAN_SIGN_BANG\";\n State2[State2[\"COMMENT_LESS_THAN_SIGN_BANG_DASH\"] = 47] = \"COMMENT_LESS_THAN_SIGN_BANG_DASH\";\n State2[State2[\"COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH\"] = 48] = \"COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH\";\n State2[State2[\"COMMENT_END_DASH\"] = 49] = \"COMMENT_END_DASH\";\n State2[State2[\"COMMENT_END\"] = 50] = \"COMMENT_END\";\n State2[State2[\"COMMENT_END_BANG\"] = 51] = \"COMMENT_END_BANG\";\n State2[State2[\"DOCTYPE\"] = 52] = \"DOCTYPE\";\n State2[State2[\"BEFORE_DOCTYPE_NAME\"] = 53] = \"BEFORE_DOCTYPE_NAME\";\n State2[State2[\"DOCTYPE_NAME\"] = 54] = \"DOCTYPE_NAME\";\n State2[State2[\"AFTER_DOCTYPE_NAME\"] = 55] = \"AFTER_DOCTYPE_NAME\";\n State2[State2[\"AFTER_DOCTYPE_PUBLIC_KEYWORD\"] = 56] = \"AFTER_DOCTYPE_PUBLIC_KEYWORD\";\n State2[State2[\"BEFORE_DOCTYPE_PUBLIC_IDENTIFIER\"] = 57] = \"BEFORE_DOCTYPE_PUBLIC_IDENTIFIER\";\n State2[State2[\"DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED\"] = 58] = \"DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED\";\n State2[State2[\"DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED\"] = 59] = \"DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED\";\n State2[State2[\"AFTER_DOCTYPE_PUBLIC_IDENTIFIER\"] = 60] = \"AFTER_DOCTYPE_PUBLIC_IDENTIFIER\";\n State2[State2[\"BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS\"] = 61] = \"BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS\";\n State2[State2[\"AFTER_DOCTYPE_SYSTEM_KEYWORD\"] = 62] = \"AFTER_DOCTYPE_SYSTEM_KEYWORD\";\n State2[State2[\"BEFORE_DOCTYPE_SYSTEM_IDENTIFIER\"] = 63] = \"BEFORE_DOCTYPE_SYSTEM_IDENTIFIER\";\n State2[State2[\"DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED\"] = 64] = \"DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED\";\n State2[State2[\"DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED\"] = 65] = \"DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED\";\n State2[State2[\"AFTER_DOCTYPE_SYSTEM_IDENTIFIER\"] = 66] = \"AFTER_DOCTYPE_SYSTEM_IDENTIFIER\";\n State2[State2[\"BOGUS_DOCTYPE\"] = 67] = \"BOGUS_DOCTYPE\";\n State2[State2[\"CDATA_SECTION\"] = 68] = \"CDATA_SECTION\";\n State2[State2[\"CDATA_SECTION_BRACKET\"] = 69] = \"CDATA_SECTION_BRACKET\";\n State2[State2[\"CDATA_SECTION_END\"] = 70] = \"CDATA_SECTION_END\";\n State2[State2[\"CHARACTER_REFERENCE\"] = 71] = \"CHARACTER_REFERENCE\";\n State2[State2[\"AMBIGUOUS_AMPERSAND\"] = 72] = \"AMBIGUOUS_AMPERSAND\";\n})(State || (State = {}));\nconst TokenizerMode = {\n DATA: State.DATA,\n RCDATA: State.RCDATA,\n RAWTEXT: State.RAWTEXT,\n SCRIPT_DATA: State.SCRIPT_DATA,\n PLAINTEXT: State.PLAINTEXT,\n CDATA_SECTION: State.CDATA_SECTION\n};\nfunction isAsciiDigit(cp) {\n return cp >= CODE_POINTS.DIGIT_0 && cp <= CODE_POINTS.DIGIT_9;\n}\nfunction isAsciiUpper(cp) {\n return cp >= CODE_POINTS.LATIN_CAPITAL_A && cp <= CODE_POINTS.LATIN_CAPITAL_Z;\n}\nfunction isAsciiLower(cp) {\n return cp >= CODE_POINTS.LATIN_SMALL_A && cp <= CODE_POINTS.LATIN_SMALL_Z;\n}\nfunction isAsciiLetter(cp) {\n return isAsciiLower(cp) || isAsciiUpper(cp);\n}\nfunction isAsciiAlphaNumeric(cp) {\n return isAsciiLetter(cp) || isAsciiDigit(cp);\n}\nfunction toAsciiLower(cp) {\n return cp + 32;\n}\nfunction isWhitespace(cp) {\n return cp === CODE_POINTS.SPACE || cp === CODE_POINTS.LINE_FEED || cp === CODE_POINTS.TABULATION || cp === CODE_POINTS.FORM_FEED;\n}\nfunction isScriptDataDoubleEscapeSequenceEnd(cp) {\n return isWhitespace(cp) || cp === CODE_POINTS.SOLIDUS || cp === CODE_POINTS.GREATER_THAN_SIGN;\n}\nfunction getErrorForNumericCharacterReference(code) {\n if (code === CODE_POINTS.NULL) {\n return ERR.nullCharacterReference;\n } else if (code > 1114111) {\n return ERR.characterReferenceOutsideUnicodeRange;\n } else if (isSurrogate(code)) {\n return ERR.surrogateCharacterReference;\n } else if (isUndefinedCodePoint(code)) {\n return ERR.noncharacterCharacterReference;\n } else if (isControlCodePoint(code) || code === CODE_POINTS.CARRIAGE_RETURN) {\n return ERR.controlCharacterReference;\n }\n return null;\n}\nclass Tokenizer {\n constructor(options, handler) {\n this.options = options;\n this.handler = handler;\n this.paused = false;\n this.inLoop = false;\n this.inForeignNode = false;\n this.lastStartTagName = \"\";\n this.active = false;\n this.state = State.DATA;\n this.returnState = State.DATA;\n this.entityStartPos = 0;\n this.consumedAfterSnapshot = -1;\n this.currentCharacterToken = null;\n this.currentToken = null;\n this.currentAttr = { name: \"\", value: \"\" };\n this.preprocessor = new Preprocessor(handler);\n this.currentLocation = this.getCurrentLocation(-1);\n this.entityDecoder = new EntityDecoder(htmlDecodeTree, (cp, consumed) => {\n this.preprocessor.pos = this.entityStartPos + consumed - 1;\n this._flushCodePointConsumedAsCharacterReference(cp);\n }, handler.onParseError ? {\n missingSemicolonAfterCharacterReference: () => {\n this._err(ERR.missingSemicolonAfterCharacterReference, 1);\n },\n absenceOfDigitsInNumericCharacterReference: (consumed) => {\n this._err(ERR.absenceOfDigitsInNumericCharacterReference, this.entityStartPos - this.preprocessor.pos + consumed);\n },\n validateNumericCharacterReference: (code) => {\n const error = getErrorForNumericCharacterReference(code);\n if (error)\n this._err(error, 1);\n }\n } : void 0);\n }\n //Errors\n _err(code, cpOffset = 0) {\n var _a, _b;\n (_b = (_a = this.handler).onParseError) === null || _b === void 0 ? void 0 : _b.call(_a, this.preprocessor.getError(code, cpOffset));\n }\n // NOTE: `offset` may never run across line boundaries.\n getCurrentLocation(offset) {\n if (!this.options.sourceCodeLocationInfo) {\n return null;\n }\n return {\n startLine: this.preprocessor.line,\n startCol: this.preprocessor.col - offset,\n startOffset: this.preprocessor.offset - offset,\n endLine: -1,\n endCol: -1,\n endOffset: -1\n };\n }\n _runParsingLoop() {\n if (this.inLoop)\n return;\n this.inLoop = true;\n while (this.active && !this.paused) {\n this.consumedAfterSnapshot = 0;\n const cp = this._consume();\n if (!this._ensureHibernation()) {\n this._callState(cp);\n }\n }\n this.inLoop = false;\n }\n //API\n pause() {\n this.paused = true;\n }\n resume(writeCallback) {\n if (!this.paused) {\n throw new Error(\"Parser was already resumed\");\n }\n this.paused = false;\n if (this.inLoop)\n return;\n this._runParsingLoop();\n if (!this.paused) {\n writeCallback === null || writeCallback === void 0 ? void 0 : writeCallback();\n }\n }\n write(chunk, isLastChunk, writeCallback) {\n this.active = true;\n this.preprocessor.write(chunk, isLastChunk);\n this._runParsingLoop();\n if (!this.paused) {\n writeCallback === null || writeCallback === void 0 ? void 0 : writeCallback();\n }\n }\n insertHtmlAtCurrentPos(chunk) {\n this.active = true;\n this.preprocessor.insertHtmlAtCurrentPos(chunk);\n this._runParsingLoop();\n }\n //Hibernation\n _ensureHibernation() {\n if (this.preprocessor.endOfChunkHit) {\n this.preprocessor.retreat(this.consumedAfterSnapshot);\n this.consumedAfterSnapshot = 0;\n this.active = false;\n return true;\n }\n return false;\n }\n //Consumption\n _consume() {\n this.consumedAfterSnapshot++;\n return this.preprocessor.advance();\n }\n _advanceBy(count) {\n this.consumedAfterSnapshot += count;\n for (let i = 0; i < count; i++) {\n this.preprocessor.advance();\n }\n }\n _consumeSequenceIfMatch(pattern, caseSensitive) {\n if (this.preprocessor.startsWith(pattern, caseSensitive)) {\n this._advanceBy(pattern.length - 1);\n return true;\n }\n return false;\n }\n //Token creation\n _createStartTagToken() {\n this.currentToken = {\n type: TokenType.START_TAG,\n tagName: \"\",\n tagID: TAG_ID.UNKNOWN,\n selfClosing: false,\n ackSelfClosing: false,\n attrs: [],\n location: this.getCurrentLocation(1)\n };\n }\n _createEndTagToken() {\n this.currentToken = {\n type: TokenType.END_TAG,\n tagName: \"\",\n tagID: TAG_ID.UNKNOWN,\n selfClosing: false,\n ackSelfClosing: false,\n attrs: [],\n location: this.getCurrentLocation(2)\n };\n }\n _createCommentToken(offset) {\n this.currentToken = {\n type: TokenType.COMMENT,\n data: \"\",\n location: this.getCurrentLocation(offset)\n };\n }\n _createDoctypeToken(initialName) {\n this.currentToken = {\n type: TokenType.DOCTYPE,\n name: initialName,\n forceQuirks: false,\n publicId: null,\n systemId: null,\n location: this.currentLocation\n };\n }\n _createCharacterToken(type, chars) {\n this.currentCharacterToken = {\n type,\n chars,\n location: this.currentLocation\n };\n }\n //Tag attributes\n _createAttr(attrNameFirstCh) {\n this.currentAttr = {\n name: attrNameFirstCh,\n value: \"\"\n };\n this.currentLocation = this.getCurrentLocation(0);\n }\n _leaveAttrName() {\n var _a;\n var _b;\n const token = this.currentToken;\n if (getTokenAttr(token, this.currentAttr.name) === null) {\n token.attrs.push(this.currentAttr);\n if (token.location && this.currentLocation) {\n const attrLocations = (_a = (_b = token.location).attrs) !== null && _a !== void 0 ? _a : _b.attrs = /* @__PURE__ */ Object.create(null);\n attrLocations[this.currentAttr.name] = this.currentLocation;\n this._leaveAttrValue();\n }\n } else {\n this._err(ERR.duplicateAttribute);\n }\n }\n _leaveAttrValue() {\n if (this.currentLocation) {\n this.currentLocation.endLine = this.preprocessor.line;\n this.currentLocation.endCol = this.preprocessor.col;\n this.currentLocation.endOffset = this.preprocessor.offset;\n }\n }\n //Token emission\n prepareToken(ct) {\n this._emitCurrentCharacterToken(ct.location);\n this.currentToken = null;\n if (ct.location) {\n ct.location.endLine = this.preprocessor.line;\n ct.location.endCol = this.preprocessor.col + 1;\n ct.location.endOffset = this.preprocessor.offset + 1;\n }\n this.currentLocation = this.getCurrentLocation(-1);\n }\n emitCurrentTagToken() {\n const ct = this.currentToken;\n this.prepareToken(ct);\n ct.tagID = getTagID(ct.tagName);\n if (ct.type === TokenType.START_TAG) {\n this.lastStartTagName = ct.tagName;\n this.handler.onStartTag(ct);\n } else {\n if (ct.attrs.length > 0) {\n this._err(ERR.endTagWithAttributes);\n }\n if (ct.selfClosing) {\n this._err(ERR.endTagWithTrailingSolidus);\n }\n this.handler.onEndTag(ct);\n }\n this.preprocessor.dropParsedChunk();\n }\n emitCurrentComment(ct) {\n this.prepareToken(ct);\n this.handler.onComment(ct);\n this.preprocessor.dropParsedChunk();\n }\n emitCurrentDoctype(ct) {\n this.prepareToken(ct);\n this.handler.onDoctype(ct);\n this.preprocessor.dropParsedChunk();\n }\n _emitCurrentCharacterToken(nextLocation) {\n if (this.currentCharacterToken) {\n if (nextLocation && this.currentCharacterToken.location) {\n this.currentCharacterToken.location.endLine = nextLocation.startLine;\n this.currentCharacterToken.location.endCol = nextLocation.startCol;\n this.currentCharacterToken.location.endOffset = nextLocation.startOffset;\n }\n switch (this.currentCharacterToken.type) {\n case TokenType.CHARACTER: {\n this.handler.onCharacter(this.currentCharacterToken);\n break;\n }\n case TokenType.NULL_CHARACTER: {\n this.handler.onNullCharacter(this.currentCharacterToken);\n break;\n }\n case TokenType.WHITESPACE_CHARACTER: {\n this.handler.onWhitespaceCharacter(this.currentCharacterToken);\n break;\n }\n }\n this.currentCharacterToken = null;\n }\n }\n _emitEOFToken() {\n const location = this.getCurrentLocation(0);\n if (location) {\n location.endLine = location.startLine;\n location.endCol = location.startCol;\n location.endOffset = location.startOffset;\n }\n this._emitCurrentCharacterToken(location);\n this.handler.onEof({ type: TokenType.EOF, location });\n this.active = false;\n }\n //Characters emission\n //OPTIMIZATION: The specification uses only one type of character token (one token per character).\n //This causes a huge memory overhead and a lot of unnecessary parser loops. parse5 uses 3 groups of characters.\n //If we have a sequence of characters that belong to the same group, the parser can process it\n //as a single solid character token.\n //So, there are 3 types of character tokens in parse5:\n //1)TokenType.NULL_CHARACTER - \\u0000-character sequences (e.g. '\\u0000\\u0000\\u0000')\n //2)TokenType.WHITESPACE_CHARACTER - any whitespace/new-line character sequences (e.g. '\\n \\r\\t \\f')\n //3)TokenType.CHARACTER - any character sequence which don't belong to groups 1 and 2 (e.g. 'abcdef1234@@#$%^')\n _appendCharToCurrentCharacterToken(type, ch) {\n if (this.currentCharacterToken) {\n if (this.currentCharacterToken.type === type) {\n this.currentCharacterToken.chars += ch;\n return;\n } else {\n this.currentLocation = this.getCurrentLocation(0);\n this._emitCurrentCharacterToken(this.currentLocation);\n this.preprocessor.dropParsedChunk();\n }\n }\n this._createCharacterToken(type, ch);\n }\n _emitCodePoint(cp) {\n const type = isWhitespace(cp) ? TokenType.WHITESPACE_CHARACTER : cp === CODE_POINTS.NULL ? TokenType.NULL_CHARACTER : TokenType.CHARACTER;\n this._appendCharToCurrentCharacterToken(type, String.fromCodePoint(cp));\n }\n //NOTE: used when we emit characters explicitly.\n //This is always for non-whitespace and non-null characters, which allows us to avoid additional checks.\n _emitChars(ch) {\n this._appendCharToCurrentCharacterToken(TokenType.CHARACTER, ch);\n }\n // Character reference helpers\n _startCharacterReference() {\n this.returnState = this.state;\n this.state = State.CHARACTER_REFERENCE;\n this.entityStartPos = this.preprocessor.pos;\n this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute() ? DecodingMode.Attribute : DecodingMode.Legacy);\n }\n _isCharacterReferenceInAttribute() {\n return this.returnState === State.ATTRIBUTE_VALUE_DOUBLE_QUOTED || this.returnState === State.ATTRIBUTE_VALUE_SINGLE_QUOTED || this.returnState === State.ATTRIBUTE_VALUE_UNQUOTED;\n }\n _flushCodePointConsumedAsCharacterReference(cp) {\n if (this._isCharacterReferenceInAttribute()) {\n this.currentAttr.value += String.fromCodePoint(cp);\n } else {\n this._emitCodePoint(cp);\n }\n }\n // Calling states this way turns out to be much faster than any other approach.\n _callState(cp) {\n switch (this.state) {\n case State.DATA: {\n this._stateData(cp);\n break;\n }\n case State.RCDATA: {\n this._stateRcdata(cp);\n break;\n }\n case State.RAWTEXT: {\n this._stateRawtext(cp);\n break;\n }\n case State.SCRIPT_DATA: {\n this._stateScriptData(cp);\n break;\n }\n case State.PLAINTEXT: {\n this._statePlaintext(cp);\n break;\n }\n case State.TAG_OPEN: {\n this._stateTagOpen(cp);\n break;\n }\n case State.END_TAG_OPEN: {\n this._stateEndTagOpen(cp);\n break;\n }\n case State.TAG_NAME: {\n this._stateTagName(cp);\n break;\n }\n case State.RCDATA_LESS_THAN_SIGN: {\n this._stateRcdataLessThanSign(cp);\n break;\n }\n case State.RCDATA_END_TAG_OPEN: {\n this._stateRcdataEndTagOpen(cp);\n break;\n }\n case State.RCDATA_END_TAG_NAME: {\n this._stateRcdataEndTagName(cp);\n break;\n }\n case State.RAWTEXT_LESS_THAN_SIGN: {\n this._stateRawtextLessThanSign(cp);\n break;\n }\n case State.RAWTEXT_END_TAG_OPEN: {\n this._stateRawtextEndTagOpen(cp);\n break;\n }\n case State.RAWTEXT_END_TAG_NAME: {\n this._stateRawtextEndTagName(cp);\n break;\n }\n case State.SCRIPT_DATA_LESS_THAN_SIGN: {\n this._stateScriptDataLessThanSign(cp);\n break;\n }\n case State.SCRIPT_DATA_END_TAG_OPEN: {\n this._stateScriptDataEndTagOpen(cp);\n break;\n }\n case State.SCRIPT_DATA_END_TAG_NAME: {\n this._stateScriptDataEndTagName(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPE_START: {\n this._stateScriptDataEscapeStart(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPE_START_DASH: {\n this._stateScriptDataEscapeStartDash(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED: {\n this._stateScriptDataEscaped(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_DASH: {\n this._stateScriptDataEscapedDash(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_DASH_DASH: {\n this._stateScriptDataEscapedDashDash(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN: {\n this._stateScriptDataEscapedLessThanSign(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN: {\n this._stateScriptDataEscapedEndTagOpen(cp);\n break;\n }\n case State.SCRIPT_DATA_ESCAPED_END_TAG_NAME: {\n this._stateScriptDataEscapedEndTagName(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPE_START: {\n this._stateScriptDataDoubleEscapeStart(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPED: {\n this._stateScriptDataDoubleEscaped(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH: {\n this._stateScriptDataDoubleEscapedDash(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH: {\n this._stateScriptDataDoubleEscapedDashDash(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN: {\n this._stateScriptDataDoubleEscapedLessThanSign(cp);\n break;\n }\n case State.SCRIPT_DATA_DOUBLE_ESCAPE_END: {\n this._stateScriptDataDoubleEscapeEnd(cp);\n break;\n }\n case State.BEFORE_ATTRIBUTE_NAME: {\n this._stateBeforeAttributeName(cp);\n break;\n }\n case State.ATTRIBUTE_NAME: {\n this._stateAttributeName(cp);\n break;\n }\n case State.AFTER_ATTRIBUTE_NAME: {\n this._stateAfterAttributeName(cp);\n break;\n }\n case State.BEFORE_ATTRIBUTE_VALUE: {\n this._stateBeforeAttributeValue(cp);\n break;\n }\n case State.ATTRIBUTE_VALUE_DOUBLE_QUOTED: {\n this._stateAttributeValueDoubleQuoted(cp);\n break;\n }\n case State.ATTRIBUTE_VALUE_SINGLE_QUOTED: {\n this._stateAttributeValueSingleQuoted(cp);\n break;\n }\n case State.ATTRIBUTE_VALUE_UNQUOTED: {\n this._stateAttributeValueUnquoted(cp);\n break;\n }\n case State.AFTER_ATTRIBUTE_VALUE_QUOTED: {\n this._stateAfterAttributeValueQuoted(cp);\n break;\n }\n case State.SELF_CLOSING_START_TAG: {\n this._stateSelfClosingStartTag(cp);\n break;\n }\n case State.BOGUS_COMMENT: {\n this._stateBogusComment(cp);\n break;\n }\n case State.MARKUP_DECLARATION_OPEN: {\n this._stateMarkupDeclarationOpen(cp);\n break;\n }\n case State.COMMENT_START: {\n this._stateCommentStart(cp);\n break;\n }\n case State.COMMENT_START_DASH: {\n this._stateCommentStartDash(cp);\n break;\n }\n case State.COMMENT: {\n this._stateComment(cp);\n break;\n }\n case State.COMMENT_LESS_THAN_SIGN: {\n this._stateCommentLessThanSign(cp);\n break;\n }\n case State.COMMENT_LESS_THAN_SIGN_BANG: {\n this._stateCommentLessThanSignBang(cp);\n break;\n }\n case State.COMMENT_LESS_THAN_SIGN_BANG_DASH: {\n this._stateCommentLessThanSignBangDash(cp);\n break;\n }\n case State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH: {\n this._stateCommentLessThanSignBangDashDash(cp);\n break;\n }\n case State.COMMENT_END_DASH: {\n this._stateCommentEndDash(cp);\n break;\n }\n case State.COMMENT_END: {\n this._stateCommentEnd(cp);\n break;\n }\n case State.COMMENT_END_BANG: {\n this._stateCommentEndBang(cp);\n break;\n }\n case State.DOCTYPE: {\n this._stateDoctype(cp);\n break;\n }\n case State.BEFORE_DOCTYPE_NAME: {\n this._stateBeforeDoctypeName(cp);\n break;\n }\n case State.DOCTYPE_NAME: {\n this._stateDoctypeName(cp);\n break;\n }\n case State.AFTER_DOCTYPE_NAME: {\n this._stateAfterDoctypeName(cp);\n break;\n }\n case State.AFTER_DOCTYPE_PUBLIC_KEYWORD: {\n this._stateAfterDoctypePublicKeyword(cp);\n break;\n }\n case State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER: {\n this._stateBeforeDoctypePublicIdentifier(cp);\n break;\n }\n case State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED: {\n this._stateDoctypePublicIdentifierDoubleQuoted(cp);\n break;\n }\n case State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED: {\n this._stateDoctypePublicIdentifierSingleQuoted(cp);\n break;\n }\n case State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER: {\n this._stateAfterDoctypePublicIdentifier(cp);\n break;\n }\n case State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS: {\n this._stateBetweenDoctypePublicAndSystemIdentifiers(cp);\n break;\n }\n case State.AFTER_DOCTYPE_SYSTEM_KEYWORD: {\n this._stateAfterDoctypeSystemKeyword(cp);\n break;\n }\n case State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER: {\n this._stateBeforeDoctypeSystemIdentifier(cp);\n break;\n }\n case State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED: {\n this._stateDoctypeSystemIdentifierDoubleQuoted(cp);\n break;\n }\n case State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED: {\n this._stateDoctypeSystemIdentifierSingleQuoted(cp);\n break;\n }\n case State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER: {\n this._stateAfterDoctypeSystemIdentifier(cp);\n break;\n }\n case State.BOGUS_DOCTYPE: {\n this._stateBogusDoctype(cp);\n break;\n }\n case State.CDATA_SECTION: {\n this._stateCdataSection(cp);\n break;\n }\n case State.CDATA_SECTION_BRACKET: {\n this._stateCdataSectionBracket(cp);\n break;\n }\n case State.CDATA_SECTION_END: {\n this._stateCdataSectionEnd(cp);\n break;\n }\n case State.CHARACTER_REFERENCE: {\n this._stateCharacterReference();\n break;\n }\n case State.AMBIGUOUS_AMPERSAND: {\n this._stateAmbiguousAmpersand(cp);\n break;\n }\n default: {\n throw new Error(\"Unknown state\");\n }\n }\n }\n // State machine\n // Data state\n //------------------------------------------------------------------\n _stateData(cp) {\n switch (cp) {\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.TAG_OPEN;\n break;\n }\n case CODE_POINTS.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitCodePoint(cp);\n break;\n }\n case CODE_POINTS.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // RCDATA state\n //------------------------------------------------------------------\n _stateRcdata(cp) {\n switch (cp) {\n case CODE_POINTS.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.RCDATA_LESS_THAN_SIGN;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // RAWTEXT state\n //------------------------------------------------------------------\n _stateRawtext(cp) {\n switch (cp) {\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.RAWTEXT_LESS_THAN_SIGN;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data state\n //------------------------------------------------------------------\n _stateScriptData(cp) {\n switch (cp) {\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_LESS_THAN_SIGN;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // PLAINTEXT state\n //------------------------------------------------------------------\n _statePlaintext(cp) {\n switch (cp) {\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // Tag open state\n //------------------------------------------------------------------\n _stateTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this._createStartTagToken();\n this.state = State.TAG_NAME;\n this._stateTagName(cp);\n } else\n switch (cp) {\n case CODE_POINTS.EXCLAMATION_MARK: {\n this.state = State.MARKUP_DECLARATION_OPEN;\n break;\n }\n case CODE_POINTS.SOLIDUS: {\n this.state = State.END_TAG_OPEN;\n break;\n }\n case CODE_POINTS.QUESTION_MARK: {\n this._err(ERR.unexpectedQuestionMarkInsteadOfTagName);\n this._createCommentToken(1);\n this.state = State.BOGUS_COMMENT;\n this._stateBogusComment(cp);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofBeforeTagName);\n this._emitChars(\"<\");\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.invalidFirstCharacterOfTagName);\n this._emitChars(\"<\");\n this.state = State.DATA;\n this._stateData(cp);\n }\n }\n }\n // End tag open state\n //------------------------------------------------------------------\n _stateEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this._createEndTagToken();\n this.state = State.TAG_NAME;\n this._stateTagName(cp);\n } else\n switch (cp) {\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.missingEndTagName);\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofBeforeTagName);\n this._emitChars(\"</\");\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.invalidFirstCharacterOfTagName);\n this._createCommentToken(2);\n this.state = State.BOGUS_COMMENT;\n this._stateBogusComment(cp);\n }\n }\n }\n // Tag name state\n //------------------------------------------------------------------\n _stateTagName(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n break;\n }\n case CODE_POINTS.SOLIDUS: {\n this.state = State.SELF_CLOSING_START_TAG;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.tagName += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n token.tagName += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp);\n }\n }\n }\n // RCDATA less-than sign state\n //------------------------------------------------------------------\n _stateRcdataLessThanSign(cp) {\n if (cp === CODE_POINTS.SOLIDUS) {\n this.state = State.RCDATA_END_TAG_OPEN;\n } else {\n this._emitChars(\"<\");\n this.state = State.RCDATA;\n this._stateRcdata(cp);\n }\n }\n // RCDATA end tag open state\n //------------------------------------------------------------------\n _stateRcdataEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this.state = State.RCDATA_END_TAG_NAME;\n this._stateRcdataEndTagName(cp);\n } else {\n this._emitChars(\"</\");\n this.state = State.RCDATA;\n this._stateRcdata(cp);\n }\n }\n handleSpecialEndTag(_cp) {\n if (!this.preprocessor.startsWith(this.lastStartTagName, false)) {\n return !this._ensureHibernation();\n }\n this._createEndTagToken();\n const token = this.currentToken;\n token.tagName = this.lastStartTagName;\n const cp = this.preprocessor.peek(this.lastStartTagName.length);\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n this._advanceBy(this.lastStartTagName.length);\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n return false;\n }\n case CODE_POINTS.SOLIDUS: {\n this._advanceBy(this.lastStartTagName.length);\n this.state = State.SELF_CLOSING_START_TAG;\n return false;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._advanceBy(this.lastStartTagName.length);\n this.emitCurrentTagToken();\n this.state = State.DATA;\n return false;\n }\n default: {\n return !this._ensureHibernation();\n }\n }\n }\n // RCDATA end tag name state\n //------------------------------------------------------------------\n _stateRcdataEndTagName(cp) {\n if (this.handleSpecialEndTag(cp)) {\n this._emitChars(\"</\");\n this.state = State.RCDATA;\n this._stateRcdata(cp);\n }\n }\n // RAWTEXT less-than sign state\n //------------------------------------------------------------------\n _stateRawtextLessThanSign(cp) {\n if (cp === CODE_POINTS.SOLIDUS) {\n this.state = State.RAWTEXT_END_TAG_OPEN;\n } else {\n this._emitChars(\"<\");\n this.state = State.RAWTEXT;\n this._stateRawtext(cp);\n }\n }\n // RAWTEXT end tag open state\n //------------------------------------------------------------------\n _stateRawtextEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this.state = State.RAWTEXT_END_TAG_NAME;\n this._stateRawtextEndTagName(cp);\n } else {\n this._emitChars(\"</\");\n this.state = State.RAWTEXT;\n this._stateRawtext(cp);\n }\n }\n // RAWTEXT end tag name state\n //------------------------------------------------------------------\n _stateRawtextEndTagName(cp) {\n if (this.handleSpecialEndTag(cp)) {\n this._emitChars(\"</\");\n this.state = State.RAWTEXT;\n this._stateRawtext(cp);\n }\n }\n // Script data less-than sign state\n //------------------------------------------------------------------\n _stateScriptDataLessThanSign(cp) {\n switch (cp) {\n case CODE_POINTS.SOLIDUS: {\n this.state = State.SCRIPT_DATA_END_TAG_OPEN;\n break;\n }\n case CODE_POINTS.EXCLAMATION_MARK: {\n this.state = State.SCRIPT_DATA_ESCAPE_START;\n this._emitChars(\"<!\");\n break;\n }\n default: {\n this._emitChars(\"<\");\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n }\n // Script data end tag open state\n //------------------------------------------------------------------\n _stateScriptDataEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this.state = State.SCRIPT_DATA_END_TAG_NAME;\n this._stateScriptDataEndTagName(cp);\n } else {\n this._emitChars(\"</\");\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n // Script data end tag name state\n //------------------------------------------------------------------\n _stateScriptDataEndTagName(cp) {\n if (this.handleSpecialEndTag(cp)) {\n this._emitChars(\"</\");\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n // Script data escape start state\n //------------------------------------------------------------------\n _stateScriptDataEscapeStart(cp) {\n if (cp === CODE_POINTS.HYPHEN_MINUS) {\n this.state = State.SCRIPT_DATA_ESCAPE_START_DASH;\n this._emitChars(\"-\");\n } else {\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n // Script data escape start dash state\n //------------------------------------------------------------------\n _stateScriptDataEscapeStartDash(cp) {\n if (cp === CODE_POINTS.HYPHEN_MINUS) {\n this.state = State.SCRIPT_DATA_ESCAPED_DASH_DASH;\n this._emitChars(\"-\");\n } else {\n this.state = State.SCRIPT_DATA;\n this._stateScriptData(cp);\n }\n }\n // Script data escaped state\n //------------------------------------------------------------------\n _stateScriptDataEscaped(cp) {\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this.state = State.SCRIPT_DATA_ESCAPED_DASH;\n this._emitChars(\"-\");\n break;\n }\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data escaped dash state\n //------------------------------------------------------------------\n _stateScriptDataEscapedDash(cp) {\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this.state = State.SCRIPT_DATA_ESCAPED_DASH_DASH;\n this._emitChars(\"-\");\n break;\n }\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data escaped dash dash state\n //------------------------------------------------------------------\n _stateScriptDataEscapedDashDash(cp) {\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this._emitChars(\"-\");\n break;\n }\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.SCRIPT_DATA;\n this._emitChars(\">\");\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data escaped less-than sign state\n //------------------------------------------------------------------\n _stateScriptDataEscapedLessThanSign(cp) {\n if (cp === CODE_POINTS.SOLIDUS) {\n this.state = State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN;\n } else if (isAsciiLetter(cp)) {\n this._emitChars(\"<\");\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_START;\n this._stateScriptDataDoubleEscapeStart(cp);\n } else {\n this._emitChars(\"<\");\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._stateScriptDataEscaped(cp);\n }\n }\n // Script data escaped end tag open state\n //------------------------------------------------------------------\n _stateScriptDataEscapedEndTagOpen(cp) {\n if (isAsciiLetter(cp)) {\n this.state = State.SCRIPT_DATA_ESCAPED_END_TAG_NAME;\n this._stateScriptDataEscapedEndTagName(cp);\n } else {\n this._emitChars(\"</\");\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._stateScriptDataEscaped(cp);\n }\n }\n // Script data escaped end tag name state\n //------------------------------------------------------------------\n _stateScriptDataEscapedEndTagName(cp) {\n if (this.handleSpecialEndTag(cp)) {\n this._emitChars(\"</\");\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._stateScriptDataEscaped(cp);\n }\n }\n // Script data double escape start state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapeStart(cp) {\n if (this.preprocessor.startsWith(SEQUENCES.SCRIPT, false) && isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek(SEQUENCES.SCRIPT.length))) {\n this._emitCodePoint(cp);\n for (let i = 0; i < SEQUENCES.SCRIPT.length; i++) {\n this._emitCodePoint(this._consume());\n }\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n } else if (!this._ensureHibernation()) {\n this.state = State.SCRIPT_DATA_ESCAPED;\n this._stateScriptDataEscaped(cp);\n }\n }\n // Script data double escaped state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscaped(cp) {\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH;\n this._emitChars(\"-\");\n break;\n }\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN;\n this._emitChars(\"<\");\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data double escaped dash state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapedDash(cp) {\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH;\n this._emitChars(\"-\");\n break;\n }\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN;\n this._emitChars(\"<\");\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data double escaped dash dash state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapedDashDash(cp) {\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this._emitChars(\"-\");\n break;\n }\n case CODE_POINTS.LESS_THAN_SIGN: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN;\n this._emitChars(\"<\");\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.SCRIPT_DATA;\n this._emitChars(\">\");\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._emitChars(REPLACEMENT_CHARACTER);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInScriptHtmlCommentLikeText);\n this._emitEOFToken();\n break;\n }\n default: {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._emitCodePoint(cp);\n }\n }\n }\n // Script data double escaped less-than sign state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapedLessThanSign(cp) {\n if (cp === CODE_POINTS.SOLIDUS) {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_END;\n this._emitChars(\"/\");\n } else {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._stateScriptDataDoubleEscaped(cp);\n }\n }\n // Script data double escape end state\n //------------------------------------------------------------------\n _stateScriptDataDoubleEscapeEnd(cp) {\n if (this.preprocessor.startsWith(SEQUENCES.SCRIPT, false) && isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek(SEQUENCES.SCRIPT.length))) {\n this._emitCodePoint(cp);\n for (let i = 0; i < SEQUENCES.SCRIPT.length; i++) {\n this._emitCodePoint(this._consume());\n }\n this.state = State.SCRIPT_DATA_ESCAPED;\n } else if (!this._ensureHibernation()) {\n this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED;\n this._stateScriptDataDoubleEscaped(cp);\n }\n }\n // Before attribute name state\n //------------------------------------------------------------------\n _stateBeforeAttributeName(cp) {\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n break;\n }\n case CODE_POINTS.SOLIDUS:\n case CODE_POINTS.GREATER_THAN_SIGN:\n case CODE_POINTS.EOF: {\n this.state = State.AFTER_ATTRIBUTE_NAME;\n this._stateAfterAttributeName(cp);\n break;\n }\n case CODE_POINTS.EQUALS_SIGN: {\n this._err(ERR.unexpectedEqualsSignBeforeAttributeName);\n this._createAttr(\"=\");\n this.state = State.ATTRIBUTE_NAME;\n break;\n }\n default: {\n this._createAttr(\"\");\n this.state = State.ATTRIBUTE_NAME;\n this._stateAttributeName(cp);\n }\n }\n }\n // Attribute name state\n //------------------------------------------------------------------\n _stateAttributeName(cp) {\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED:\n case CODE_POINTS.SOLIDUS:\n case CODE_POINTS.GREATER_THAN_SIGN:\n case CODE_POINTS.EOF: {\n this._leaveAttrName();\n this.state = State.AFTER_ATTRIBUTE_NAME;\n this._stateAfterAttributeName(cp);\n break;\n }\n case CODE_POINTS.EQUALS_SIGN: {\n this._leaveAttrName();\n this.state = State.BEFORE_ATTRIBUTE_VALUE;\n break;\n }\n case CODE_POINTS.QUOTATION_MARK:\n case CODE_POINTS.APOSTROPHE:\n case CODE_POINTS.LESS_THAN_SIGN: {\n this._err(ERR.unexpectedCharacterInAttributeName);\n this.currentAttr.name += String.fromCodePoint(cp);\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.currentAttr.name += REPLACEMENT_CHARACTER;\n break;\n }\n default: {\n this.currentAttr.name += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp);\n }\n }\n }\n // After attribute name state\n //------------------------------------------------------------------\n _stateAfterAttributeName(cp) {\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n break;\n }\n case CODE_POINTS.SOLIDUS: {\n this.state = State.SELF_CLOSING_START_TAG;\n break;\n }\n case CODE_POINTS.EQUALS_SIGN: {\n this.state = State.BEFORE_ATTRIBUTE_VALUE;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this._createAttr(\"\");\n this.state = State.ATTRIBUTE_NAME;\n this._stateAttributeName(cp);\n }\n }\n }\n // Before attribute value state\n //------------------------------------------------------------------\n _stateBeforeAttributeValue(cp) {\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n break;\n }\n case CODE_POINTS.QUOTATION_MARK: {\n this.state = State.ATTRIBUTE_VALUE_DOUBLE_QUOTED;\n break;\n }\n case CODE_POINTS.APOSTROPHE: {\n this.state = State.ATTRIBUTE_VALUE_SINGLE_QUOTED;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.missingAttributeValue);\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n default: {\n this.state = State.ATTRIBUTE_VALUE_UNQUOTED;\n this._stateAttributeValueUnquoted(cp);\n }\n }\n }\n // Attribute value (double-quoted) state\n //------------------------------------------------------------------\n _stateAttributeValueDoubleQuoted(cp) {\n switch (cp) {\n case CODE_POINTS.QUOTATION_MARK: {\n this.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED;\n break;\n }\n case CODE_POINTS.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.currentAttr.value += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this.currentAttr.value += String.fromCodePoint(cp);\n }\n }\n }\n // Attribute value (single-quoted) state\n //------------------------------------------------------------------\n _stateAttributeValueSingleQuoted(cp) {\n switch (cp) {\n case CODE_POINTS.APOSTROPHE: {\n this.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED;\n break;\n }\n case CODE_POINTS.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.currentAttr.value += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this.currentAttr.value += String.fromCodePoint(cp);\n }\n }\n }\n // Attribute value (unquoted) state\n //------------------------------------------------------------------\n _stateAttributeValueUnquoted(cp) {\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n this._leaveAttrValue();\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n break;\n }\n case CODE_POINTS.AMPERSAND: {\n this._startCharacterReference();\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._leaveAttrValue();\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this.currentAttr.value += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.QUOTATION_MARK:\n case CODE_POINTS.APOSTROPHE:\n case CODE_POINTS.LESS_THAN_SIGN:\n case CODE_POINTS.EQUALS_SIGN:\n case CODE_POINTS.GRAVE_ACCENT: {\n this._err(ERR.unexpectedCharacterInUnquotedAttributeValue);\n this.currentAttr.value += String.fromCodePoint(cp);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this.currentAttr.value += String.fromCodePoint(cp);\n }\n }\n }\n // After attribute value (quoted) state\n //------------------------------------------------------------------\n _stateAfterAttributeValueQuoted(cp) {\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n this._leaveAttrValue();\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n break;\n }\n case CODE_POINTS.SOLIDUS: {\n this._leaveAttrValue();\n this.state = State.SELF_CLOSING_START_TAG;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._leaveAttrValue();\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingWhitespaceBetweenAttributes);\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n this._stateBeforeAttributeName(cp);\n }\n }\n }\n // Self-closing start tag state\n //------------------------------------------------------------------\n _stateSelfClosingStartTag(cp) {\n switch (cp) {\n case CODE_POINTS.GREATER_THAN_SIGN: {\n const token = this.currentToken;\n token.selfClosing = true;\n this.state = State.DATA;\n this.emitCurrentTagToken();\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInTag);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.unexpectedSolidusInTag);\n this.state = State.BEFORE_ATTRIBUTE_NAME;\n this._stateBeforeAttributeName(cp);\n }\n }\n }\n // Bogus comment state\n //------------------------------------------------------------------\n _stateBogusComment(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentComment(token);\n break;\n }\n case CODE_POINTS.EOF: {\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.data += REPLACEMENT_CHARACTER;\n break;\n }\n default: {\n token.data += String.fromCodePoint(cp);\n }\n }\n }\n // Markup declaration open state\n //------------------------------------------------------------------\n _stateMarkupDeclarationOpen(cp) {\n if (this._consumeSequenceIfMatch(SEQUENCES.DASH_DASH, true)) {\n this._createCommentToken(SEQUENCES.DASH_DASH.length + 1);\n this.state = State.COMMENT_START;\n } else if (this._consumeSequenceIfMatch(SEQUENCES.DOCTYPE, false)) {\n this.currentLocation = this.getCurrentLocation(SEQUENCES.DOCTYPE.length + 1);\n this.state = State.DOCTYPE;\n } else if (this._consumeSequenceIfMatch(SEQUENCES.CDATA_START, true)) {\n if (this.inForeignNode) {\n this.state = State.CDATA_SECTION;\n } else {\n this._err(ERR.cdataInHtmlContent);\n this._createCommentToken(SEQUENCES.CDATA_START.length + 1);\n this.currentToken.data = \"[CDATA[\";\n this.state = State.BOGUS_COMMENT;\n }\n } else if (!this._ensureHibernation()) {\n this._err(ERR.incorrectlyOpenedComment);\n this._createCommentToken(2);\n this.state = State.BOGUS_COMMENT;\n this._stateBogusComment(cp);\n }\n }\n // Comment start state\n //------------------------------------------------------------------\n _stateCommentStart(cp) {\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this.state = State.COMMENT_START_DASH;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.abruptClosingOfEmptyComment);\n this.state = State.DATA;\n const token = this.currentToken;\n this.emitCurrentComment(token);\n break;\n }\n default: {\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment start dash state\n //------------------------------------------------------------------\n _stateCommentStartDash(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this.state = State.COMMENT_END;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.abruptClosingOfEmptyComment);\n this.state = State.DATA;\n this.emitCurrentComment(token);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += \"-\";\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment state\n //------------------------------------------------------------------\n _stateComment(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this.state = State.COMMENT_END_DASH;\n break;\n }\n case CODE_POINTS.LESS_THAN_SIGN: {\n token.data += \"<\";\n this.state = State.COMMENT_LESS_THAN_SIGN;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.data += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += String.fromCodePoint(cp);\n }\n }\n }\n // Comment less-than sign state\n //------------------------------------------------------------------\n _stateCommentLessThanSign(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.EXCLAMATION_MARK: {\n token.data += \"!\";\n this.state = State.COMMENT_LESS_THAN_SIGN_BANG;\n break;\n }\n case CODE_POINTS.LESS_THAN_SIGN: {\n token.data += \"<\";\n break;\n }\n default: {\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment less-than sign bang state\n //------------------------------------------------------------------\n _stateCommentLessThanSignBang(cp) {\n if (cp === CODE_POINTS.HYPHEN_MINUS) {\n this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH;\n } else {\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n // Comment less-than sign bang dash state\n //------------------------------------------------------------------\n _stateCommentLessThanSignBangDash(cp) {\n if (cp === CODE_POINTS.HYPHEN_MINUS) {\n this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH;\n } else {\n this.state = State.COMMENT_END_DASH;\n this._stateCommentEndDash(cp);\n }\n }\n // Comment less-than sign bang dash dash state\n //------------------------------------------------------------------\n _stateCommentLessThanSignBangDashDash(cp) {\n if (cp !== CODE_POINTS.GREATER_THAN_SIGN && cp !== CODE_POINTS.EOF) {\n this._err(ERR.nestedComment);\n }\n this.state = State.COMMENT_END;\n this._stateCommentEnd(cp);\n }\n // Comment end dash state\n //------------------------------------------------------------------\n _stateCommentEndDash(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n this.state = State.COMMENT_END;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += \"-\";\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment end state\n //------------------------------------------------------------------\n _stateCommentEnd(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentComment(token);\n break;\n }\n case CODE_POINTS.EXCLAMATION_MARK: {\n this.state = State.COMMENT_END_BANG;\n break;\n }\n case CODE_POINTS.HYPHEN_MINUS: {\n token.data += \"-\";\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += \"--\";\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // Comment end bang state\n //------------------------------------------------------------------\n _stateCommentEndBang(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.HYPHEN_MINUS: {\n token.data += \"--!\";\n this.state = State.COMMENT_END_DASH;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.incorrectlyClosedComment);\n this.state = State.DATA;\n this.emitCurrentComment(token);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInComment);\n this.emitCurrentComment(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.data += \"--!\";\n this.state = State.COMMENT;\n this._stateComment(cp);\n }\n }\n }\n // DOCTYPE state\n //------------------------------------------------------------------\n _stateDoctype(cp) {\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n this.state = State.BEFORE_DOCTYPE_NAME;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.BEFORE_DOCTYPE_NAME;\n this._stateBeforeDoctypeName(cp);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n this._createDoctypeToken(null);\n const token = this.currentToken;\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingWhitespaceBeforeDoctypeName);\n this.state = State.BEFORE_DOCTYPE_NAME;\n this._stateBeforeDoctypeName(cp);\n }\n }\n }\n // Before DOCTYPE name state\n //------------------------------------------------------------------\n _stateBeforeDoctypeName(cp) {\n if (isAsciiUpper(cp)) {\n this._createDoctypeToken(String.fromCharCode(toAsciiLower(cp)));\n this.state = State.DOCTYPE_NAME;\n } else\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n this._createDoctypeToken(REPLACEMENT_CHARACTER);\n this.state = State.DOCTYPE_NAME;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypeName);\n this._createDoctypeToken(null);\n const token = this.currentToken;\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n this._createDoctypeToken(null);\n const token = this.currentToken;\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._createDoctypeToken(String.fromCodePoint(cp));\n this.state = State.DOCTYPE_NAME;\n }\n }\n }\n // DOCTYPE name state\n //------------------------------------------------------------------\n _stateDoctypeName(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n this.state = State.AFTER_DOCTYPE_NAME;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.name += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.name += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp);\n }\n }\n }\n // After DOCTYPE name state\n //------------------------------------------------------------------\n _stateAfterDoctypeName(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n if (this._consumeSequenceIfMatch(SEQUENCES.PUBLIC, false)) {\n this.state = State.AFTER_DOCTYPE_PUBLIC_KEYWORD;\n } else if (this._consumeSequenceIfMatch(SEQUENCES.SYSTEM, false)) {\n this.state = State.AFTER_DOCTYPE_SYSTEM_KEYWORD;\n } else if (!this._ensureHibernation()) {\n this._err(ERR.invalidCharacterSequenceAfterDoctypeName);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n }\n // After DOCTYPE public keyword state\n //------------------------------------------------------------------\n _stateAfterDoctypePublicKeyword(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n this.state = State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER;\n break;\n }\n case CODE_POINTS.QUOTATION_MARK: {\n this._err(ERR.missingWhitespaceAfterDoctypePublicKeyword);\n token.publicId = \"\";\n this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case CODE_POINTS.APOSTROPHE: {\n this._err(ERR.missingWhitespaceAfterDoctypePublicKeyword);\n token.publicId = \"\";\n this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // Before DOCTYPE public identifier state\n //------------------------------------------------------------------\n _stateBeforeDoctypePublicIdentifier(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n break;\n }\n case CODE_POINTS.QUOTATION_MARK: {\n token.publicId = \"\";\n this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case CODE_POINTS.APOSTROPHE: {\n token.publicId = \"\";\n this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // DOCTYPE public identifier (double-quoted) state\n //------------------------------------------------------------------\n _stateDoctypePublicIdentifierDoubleQuoted(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.QUOTATION_MARK: {\n this.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.publicId += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.abruptDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.publicId += String.fromCodePoint(cp);\n }\n }\n }\n // DOCTYPE public identifier (single-quoted) state\n //------------------------------------------------------------------\n _stateDoctypePublicIdentifierSingleQuoted(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.APOSTROPHE: {\n this.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.publicId += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.abruptDoctypePublicIdentifier);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.publicId += String.fromCodePoint(cp);\n }\n }\n }\n // After DOCTYPE public identifier state\n //------------------------------------------------------------------\n _stateAfterDoctypePublicIdentifier(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n this.state = State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case CODE_POINTS.QUOTATION_MARK: {\n this._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers);\n token.systemId = \"\";\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case CODE_POINTS.APOSTROPHE: {\n this._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers);\n token.systemId = \"\";\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // Between DOCTYPE public and system identifiers state\n //------------------------------------------------------------------\n _stateBetweenDoctypePublicAndSystemIdentifiers(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.QUOTATION_MARK: {\n token.systemId = \"\";\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case CODE_POINTS.APOSTROPHE: {\n token.systemId = \"\";\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // After DOCTYPE system keyword state\n //------------------------------------------------------------------\n _stateAfterDoctypeSystemKeyword(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n this.state = State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER;\n break;\n }\n case CODE_POINTS.QUOTATION_MARK: {\n this._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword);\n token.systemId = \"\";\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case CODE_POINTS.APOSTROPHE: {\n this._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword);\n token.systemId = \"\";\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // Before DOCTYPE system identifier state\n //------------------------------------------------------------------\n _stateBeforeDoctypeSystemIdentifier(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n break;\n }\n case CODE_POINTS.QUOTATION_MARK: {\n token.systemId = \"\";\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED;\n break;\n }\n case CODE_POINTS.APOSTROPHE: {\n token.systemId = \"\";\n this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.missingDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.DATA;\n this.emitCurrentDoctype(token);\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // DOCTYPE system identifier (double-quoted) state\n //------------------------------------------------------------------\n _stateDoctypeSystemIdentifierDoubleQuoted(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.QUOTATION_MARK: {\n this.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.systemId += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.abruptDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.systemId += String.fromCodePoint(cp);\n }\n }\n }\n // DOCTYPE system identifier (single-quoted) state\n //------------------------------------------------------------------\n _stateDoctypeSystemIdentifierSingleQuoted(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.APOSTROPHE: {\n this.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n token.systemId += REPLACEMENT_CHARACTER;\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this._err(ERR.abruptDoctypeSystemIdentifier);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n token.systemId += String.fromCodePoint(cp);\n }\n }\n }\n // After DOCTYPE system identifier state\n //------------------------------------------------------------------\n _stateAfterDoctypeSystemIdentifier(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.SPACE:\n case CODE_POINTS.LINE_FEED:\n case CODE_POINTS.TABULATION:\n case CODE_POINTS.FORM_FEED: {\n break;\n }\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInDoctype);\n token.forceQuirks = true;\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n default: {\n this._err(ERR.unexpectedCharacterAfterDoctypeSystemIdentifier);\n this.state = State.BOGUS_DOCTYPE;\n this._stateBogusDoctype(cp);\n }\n }\n }\n // Bogus DOCTYPE state\n //------------------------------------------------------------------\n _stateBogusDoctype(cp) {\n const token = this.currentToken;\n switch (cp) {\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.emitCurrentDoctype(token);\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.NULL: {\n this._err(ERR.unexpectedNullCharacter);\n break;\n }\n case CODE_POINTS.EOF: {\n this.emitCurrentDoctype(token);\n this._emitEOFToken();\n break;\n }\n }\n }\n // CDATA section state\n //------------------------------------------------------------------\n _stateCdataSection(cp) {\n switch (cp) {\n case CODE_POINTS.RIGHT_SQUARE_BRACKET: {\n this.state = State.CDATA_SECTION_BRACKET;\n break;\n }\n case CODE_POINTS.EOF: {\n this._err(ERR.eofInCdata);\n this._emitEOFToken();\n break;\n }\n default: {\n this._emitCodePoint(cp);\n }\n }\n }\n // CDATA section bracket state\n //------------------------------------------------------------------\n _stateCdataSectionBracket(cp) {\n if (cp === CODE_POINTS.RIGHT_SQUARE_BRACKET) {\n this.state = State.CDATA_SECTION_END;\n } else {\n this._emitChars(\"]\");\n this.state = State.CDATA_SECTION;\n this._stateCdataSection(cp);\n }\n }\n // CDATA section end state\n //------------------------------------------------------------------\n _stateCdataSectionEnd(cp) {\n switch (cp) {\n case CODE_POINTS.GREATER_THAN_SIGN: {\n this.state = State.DATA;\n break;\n }\n case CODE_POINTS.RIGHT_SQUARE_BRACKET: {\n this._emitChars(\"]\");\n break;\n }\n default: {\n this._emitChars(\"]]\");\n this.state = State.CDATA_SECTION;\n this._stateCdataSection(cp);\n }\n }\n }\n // Character reference state\n //------------------------------------------------------------------\n _stateCharacterReference() {\n let length = this.entityDecoder.write(this.preprocessor.html, this.preprocessor.pos);\n if (length < 0) {\n if (this.preprocessor.lastChunkWritten) {\n length = this.entityDecoder.end();\n } else {\n this.active = false;\n this.preprocessor.pos = this.preprocessor.html.length - 1;\n this.consumedAfterSnapshot = 0;\n this.preprocessor.endOfChunkHit = true;\n return;\n }\n }\n if (length === 0) {\n this.preprocessor.pos = this.entityStartPos;\n this._flushCodePointConsumedAsCharacterReference(CODE_POINTS.AMPERSAND);\n this.state = !this._isCharacterReferenceInAttribute() && isAsciiAlphaNumeric(this.preprocessor.peek(1)) ? State.AMBIGUOUS_AMPERSAND : this.returnState;\n } else {\n this.state = this.returnState;\n }\n }\n // Ambiguos ampersand state\n //------------------------------------------------------------------\n _stateAmbiguousAmpersand(cp) {\n if (isAsciiAlphaNumeric(cp)) {\n this._flushCodePointConsumedAsCharacterReference(cp);\n } else {\n if (cp === CODE_POINTS.SEMICOLON) {\n this._err(ERR.unknownNamedCharacterReference);\n }\n this.state = this.returnState;\n this._callState(cp);\n }\n }\n}\nconst IMPLICIT_END_TAG_REQUIRED = /* @__PURE__ */ new Set([TAG_ID.DD, TAG_ID.DT, TAG_ID.LI, TAG_ID.OPTGROUP, TAG_ID.OPTION, TAG_ID.P, TAG_ID.RB, TAG_ID.RP, TAG_ID.RT, TAG_ID.RTC]);\nconst IMPLICIT_END_TAG_REQUIRED_THOROUGHLY = /* @__PURE__ */ new Set([\n ...IMPLICIT_END_TAG_REQUIRED,\n TAG_ID.CAPTION,\n TAG_ID.COLGROUP,\n TAG_ID.TBODY,\n TAG_ID.TD,\n TAG_ID.TFOOT,\n TAG_ID.TH,\n TAG_ID.THEAD,\n TAG_ID.TR\n]);\nconst SCOPING_ELEMENTS_HTML = /* @__PURE__ */ new Set([\n TAG_ID.APPLET,\n TAG_ID.CAPTION,\n TAG_ID.HTML,\n TAG_ID.MARQUEE,\n TAG_ID.OBJECT,\n TAG_ID.TABLE,\n TAG_ID.TD,\n TAG_ID.TEMPLATE,\n TAG_ID.TH\n]);\nconst SCOPING_ELEMENTS_HTML_LIST = /* @__PURE__ */ new Set([...SCOPING_ELEMENTS_HTML, TAG_ID.OL, TAG_ID.UL]);\nconst SCOPING_ELEMENTS_HTML_BUTTON = /* @__PURE__ */ new Set([...SCOPING_ELEMENTS_HTML, TAG_ID.BUTTON]);\nconst SCOPING_ELEMENTS_MATHML = /* @__PURE__ */ new Set([TAG_ID.ANNOTATION_XML, TAG_ID.MI, TAG_ID.MN, TAG_ID.MO, TAG_ID.MS, TAG_ID.MTEXT]);\nconst SCOPING_ELEMENTS_SVG = /* @__PURE__ */ new Set([TAG_ID.DESC, TAG_ID.FOREIGN_OBJECT, TAG_ID.TITLE]);\nconst TABLE_ROW_CONTEXT = /* @__PURE__ */ new Set([TAG_ID.TR, TAG_ID.TEMPLATE, TAG_ID.HTML]);\nconst TABLE_BODY_CONTEXT = /* @__PURE__ */ new Set([TAG_ID.TBODY, TAG_ID.TFOOT, TAG_ID.THEAD, TAG_ID.TEMPLATE, TAG_ID.HTML]);\nconst TABLE_CONTEXT = /* @__PURE__ */ new Set([TAG_ID.TABLE, TAG_ID.TEMPLATE, TAG_ID.HTML]);\nconst TABLE_CELLS = /* @__PURE__ */ new Set([TAG_ID.TD, TAG_ID.TH]);\nclass OpenElementStack {\n get currentTmplContentOrNode() {\n return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current;\n }\n constructor(document, treeAdapter, handler) {\n this.treeAdapter = treeAdapter;\n this.handler = handler;\n this.items = [];\n this.tagIDs = [];\n this.stackTop = -1;\n this.tmplCount = 0;\n this.currentTagId = TAG_ID.UNKNOWN;\n this.current = document;\n }\n //Index of element\n _indexOf(element) {\n return this.items.lastIndexOf(element, this.stackTop);\n }\n //Update current element\n _isInTemplate() {\n return this.currentTagId === TAG_ID.TEMPLATE && this.treeAdapter.getNamespaceURI(this.current) === NS.HTML;\n }\n _updateCurrentElement() {\n this.current = this.items[this.stackTop];\n this.currentTagId = this.tagIDs[this.stackTop];\n }\n //Mutations\n push(element, tagID) {\n this.stackTop++;\n this.items[this.stackTop] = element;\n this.current = element;\n this.tagIDs[this.stackTop] = tagID;\n this.currentTagId = tagID;\n if (this._isInTemplate()) {\n this.tmplCount++;\n }\n this.handler.onItemPush(element, tagID, true);\n }\n pop() {\n const popped = this.current;\n if (this.tmplCount > 0 && this._isInTemplate()) {\n this.tmplCount--;\n }\n this.stackTop--;\n this._updateCurrentElement();\n this.handler.onItemPop(popped, true);\n }\n replace(oldElement, newElement) {\n const idx = this._indexOf(oldElement);\n this.items[idx] = newElement;\n if (idx === this.stackTop) {\n this.current = newElement;\n }\n }\n insertAfter(referenceElement, newElement, newElementID) {\n const insertionIdx = this._indexOf(referenceElement) + 1;\n this.items.splice(insertionIdx, 0, newElement);\n this.tagIDs.splice(insertionIdx, 0, newElementID);\n this.stackTop++;\n if (insertionIdx === this.stackTop) {\n this._updateCurrentElement();\n }\n if (this.current && this.currentTagId !== void 0) {\n this.handler.onItemPush(this.current, this.currentTagId, insertionIdx === this.stackTop);\n }\n }\n popUntilTagNamePopped(tagName) {\n let targetIdx = this.stackTop + 1;\n do {\n targetIdx = this.tagIDs.lastIndexOf(tagName, targetIdx - 1);\n } while (targetIdx > 0 && this.treeAdapter.getNamespaceURI(this.items[targetIdx]) !== NS.HTML);\n this.shortenToLength(Math.max(targetIdx, 0));\n }\n shortenToLength(idx) {\n while (this.stackTop >= idx) {\n const popped = this.current;\n if (this.tmplCount > 0 && this._isInTemplate()) {\n this.tmplCount -= 1;\n }\n this.stackTop--;\n this._updateCurrentElement();\n this.handler.onItemPop(popped, this.stackTop < idx);\n }\n }\n popUntilElementPopped(element) {\n const idx = this._indexOf(element);\n this.shortenToLength(Math.max(idx, 0));\n }\n popUntilPopped(tagNames, targetNS) {\n const idx = this._indexOfTagNames(tagNames, targetNS);\n this.shortenToLength(Math.max(idx, 0));\n }\n popUntilNumberedHeaderPopped() {\n this.popUntilPopped(NUMBERED_HEADERS, NS.HTML);\n }\n popUntilTableCellPopped() {\n this.popUntilPopped(TABLE_CELLS, NS.HTML);\n }\n popAllUpToHtmlElement() {\n this.tmplCount = 0;\n this.shortenToLength(1);\n }\n _indexOfTagNames(tagNames, namespace) {\n for (let i = this.stackTop; i >= 0; i--) {\n if (tagNames.has(this.tagIDs[i]) && this.treeAdapter.getNamespaceURI(this.items[i]) === namespace) {\n return i;\n }\n }\n return -1;\n }\n clearBackTo(tagNames, targetNS) {\n const idx = this._indexOfTagNames(tagNames, targetNS);\n this.shortenToLength(idx + 1);\n }\n clearBackToTableContext() {\n this.clearBackTo(TABLE_CONTEXT, NS.HTML);\n }\n clearBackToTableBodyContext() {\n this.clearBackTo(TABLE_BODY_CONTEXT, NS.HTML);\n }\n clearBackToTableRowContext() {\n this.clearBackTo(TABLE_ROW_CONTEXT, NS.HTML);\n }\n remove(element) {\n const idx = this._indexOf(element);\n if (idx >= 0) {\n if (idx === this.stackTop) {\n this.pop();\n } else {\n this.items.splice(idx, 1);\n this.tagIDs.splice(idx, 1);\n this.stackTop--;\n this._updateCurrentElement();\n this.handler.onItemPop(element, false);\n }\n }\n }\n //Search\n tryPeekProperlyNestedBodyElement() {\n return this.stackTop >= 1 && this.tagIDs[1] === TAG_ID.BODY ? this.items[1] : null;\n }\n contains(element) {\n return this._indexOf(element) > -1;\n }\n getCommonAncestor(element) {\n const elementIdx = this._indexOf(element) - 1;\n return elementIdx >= 0 ? this.items[elementIdx] : null;\n }\n isRootHtmlElementCurrent() {\n return this.stackTop === 0 && this.tagIDs[0] === TAG_ID.HTML;\n }\n //Element in scope\n hasInDynamicScope(tagName, htmlScope) {\n for (let i = this.stackTop; i >= 0; i--) {\n const tn = this.tagIDs[i];\n switch (this.treeAdapter.getNamespaceURI(this.items[i])) {\n case NS.HTML: {\n if (tn === tagName)\n return true;\n if (htmlScope.has(tn))\n return false;\n break;\n }\n case NS.SVG: {\n if (SCOPING_ELEMENTS_SVG.has(tn))\n return false;\n break;\n }\n case NS.MATHML: {\n if (SCOPING_ELEMENTS_MATHML.has(tn))\n return false;\n break;\n }\n }\n }\n return true;\n }\n hasInScope(tagName) {\n return this.hasInDynamicScope(tagName, SCOPING_ELEMENTS_HTML);\n }\n hasInListItemScope(tagName) {\n return this.hasInDynamicScope(tagName, SCOPING_ELEMENTS_HTML_LIST);\n }\n hasInButtonScope(tagName) {\n return this.hasInDynamicScope(tagName, SCOPING_ELEMENTS_HTML_BUTTON);\n }\n hasNumberedHeaderInScope() {\n for (let i = this.stackTop; i >= 0; i--) {\n const tn = this.tagIDs[i];\n switch (this.treeAdapter.getNamespaceURI(this.items[i])) {\n case NS.HTML: {\n if (NUMBERED_HEADERS.has(tn))\n return true;\n if (SCOPING_ELEMENTS_HTML.has(tn))\n return false;\n break;\n }\n case NS.SVG: {\n if (SCOPING_ELEMENTS_SVG.has(tn))\n return false;\n break;\n }\n case NS.MATHML: {\n if (SCOPING_ELEMENTS_MATHML.has(tn))\n return false;\n break;\n }\n }\n }\n return true;\n }\n hasInTableScope(tagName) {\n for (let i = this.stackTop; i >= 0; i--) {\n if (this.treeAdapter.getNamespaceURI(this.items[i]) !== NS.HTML) {\n continue;\n }\n switch (this.tagIDs[i]) {\n case tagName: {\n return true;\n }\n case TAG_ID.TABLE:\n case TAG_ID.HTML: {\n return false;\n }\n }\n }\n return true;\n }\n hasTableBodyContextInTableScope() {\n for (let i = this.stackTop; i >= 0; i--) {\n if (this.treeAdapter.getNamespaceURI(this.items[i]) !== NS.HTML) {\n continue;\n }\n switch (this.tagIDs[i]) {\n case TAG_ID.TBODY:\n case TAG_ID.THEAD:\n case TAG_ID.TFOOT: {\n return true;\n }\n case TAG_ID.TABLE:\n case TAG_ID.HTML: {\n return false;\n }\n }\n }\n return true;\n }\n hasInSelectScope(tagName) {\n for (let i = this.stackTop; i >= 0; i--) {\n if (this.treeAdapter.getNamespaceURI(this.items[i]) !== NS.HTML) {\n continue;\n }\n switch (this.tagIDs[i]) {\n case tagName: {\n return true;\n }\n case TAG_ID.OPTION:\n case TAG_ID.OPTGROUP: {\n break;\n }\n default: {\n return false;\n }\n }\n }\n return true;\n }\n //Implied end tags\n generateImpliedEndTags() {\n while (this.currentTagId !== void 0 && IMPLICIT_END_TAG_REQUIRED.has(this.currentTagId)) {\n this.pop();\n }\n }\n generateImpliedEndTagsThoroughly() {\n while (this.currentTagId !== void 0 && IMPLICIT_END_TAG_REQUIRED_THOROUGHLY.has(this.currentTagId)) {\n this.pop();\n }\n }\n generateImpliedEndTagsWithExclusion(exclusionId) {\n while (this.currentTagId !== void 0 && this.currentTagId !== exclusionId && IMPLICIT_END_TAG_REQUIRED_THOROUGHLY.has(this.currentTagId)) {\n this.pop();\n }\n }\n}\nconst NOAH_ARK_CAPACITY = 3;\nvar EntryType;\n(function(EntryType2) {\n EntryType2[EntryType2[\"Marker\"] = 0] = \"Marker\";\n EntryType2[EntryType2[\"Element\"] = 1] = \"Element\";\n})(EntryType || (EntryType = {}));\nconst MARKER = { type: EntryType.Marker };\nclass FormattingElementList {\n constructor(treeAdapter) {\n this.treeAdapter = treeAdapter;\n this.entries = [];\n this.bookmark = null;\n }\n //Noah Ark's condition\n //OPTIMIZATION: at first we try to find possible candidates for exclusion using\n //lightweight heuristics without thorough attributes check.\n _getNoahArkConditionCandidates(newElement, neAttrs) {\n const candidates = [];\n const neAttrsLength = neAttrs.length;\n const neTagName = this.treeAdapter.getTagName(newElement);\n const neNamespaceURI = this.treeAdapter.getNamespaceURI(newElement);\n for (let i = 0; i < this.entries.length; i++) {\n const entry = this.entries[i];\n if (entry.type === EntryType.Marker) {\n break;\n }\n const { element } = entry;\n if (this.treeAdapter.getTagName(element) === neTagName && this.treeAdapter.getNamespaceURI(element) === neNamespaceURI) {\n const elementAttrs = this.treeAdapter.getAttrList(element);\n if (elementAttrs.length === neAttrsLength) {\n candidates.push({ idx: i, attrs: elementAttrs });\n }\n }\n }\n return candidates;\n }\n _ensureNoahArkCondition(newElement) {\n if (this.entries.length < NOAH_ARK_CAPACITY)\n return;\n const neAttrs = this.treeAdapter.getAttrList(newElement);\n const candidates = this._getNoahArkConditionCandidates(newElement, neAttrs);\n if (candidates.length < NOAH_ARK_CAPACITY)\n return;\n const neAttrsMap = new Map(neAttrs.map((neAttr) => [neAttr.name, neAttr.value]));\n let validCandidates = 0;\n for (let i = 0; i < candidates.length; i++) {\n const candidate = candidates[i];\n if (candidate.attrs.every((cAttr) => neAttrsMap.get(cAttr.name) === cAttr.value)) {\n validCandidates += 1;\n if (validCandidates >= NOAH_ARK_CAPACITY) {\n this.entries.splice(candidate.idx, 1);\n }\n }\n }\n }\n //Mutations\n insertMarker() {\n this.entries.unshift(MARKER);\n }\n pushElement(element, token) {\n this._ensureNoahArkCondition(element);\n this.entries.unshift({\n type: EntryType.Element,\n element,\n token\n });\n }\n insertElementAfterBookmark(element, token) {\n const bookmarkIdx = this.entries.indexOf(this.bookmark);\n this.entries.splice(bookmarkIdx, 0, {\n type: EntryType.Element,\n element,\n token\n });\n }\n removeEntry(entry) {\n const entryIndex = this.entries.indexOf(entry);\n if (entryIndex !== -1) {\n this.entries.splice(entryIndex, 1);\n }\n }\n /**\n * Clears the list of formatting elements up to the last marker.\n *\n * @see https://html.spec.whatwg.org/multipage/parsing.html#clear-the-list-of-active-formatting-elements-up-to-the-last-marker\n */\n clearToLastMarker() {\n const markerIdx = this.entries.indexOf(MARKER);\n if (markerIdx === -1) {\n this.entries.length = 0;\n } else {\n this.entries.splice(0, markerIdx + 1);\n }\n }\n //Search\n getElementEntryInScopeWithTagName(tagName) {\n const entry = this.entries.find((entry2) => entry2.type === EntryType.Marker || this.treeAdapter.getTagName(entry2.element) === tagName);\n return entry && entry.type === EntryType.Element ? entry : null;\n }\n getElementEntry(element) {\n return this.entries.find((entry) => entry.type === EntryType.Element && entry.element === element);\n }\n}\nconst defaultTreeAdapter = {\n //Node construction\n createDocument() {\n return {\n nodeName: \"#document\",\n mode: DOCUMENT_MODE.NO_QUIRKS,\n childNodes: []\n };\n },\n createDocumentFragment() {\n return {\n nodeName: \"#document-fragment\",\n childNodes: []\n };\n },\n createElement(tagName, namespaceURI, attrs) {\n return {\n nodeName: tagName,\n tagName,\n attrs,\n namespaceURI,\n childNodes: [],\n parentNode: null\n };\n },\n createCommentNode(data) {\n return {\n nodeName: \"#comment\",\n data,\n parentNode: null\n };\n },\n createTextNode(value) {\n return {\n nodeName: \"#text\",\n value,\n parentNode: null\n };\n },\n //Tree mutation\n appendChild(parentNode, newNode) {\n parentNode.childNodes.push(newNode);\n newNode.parentNode = parentNode;\n },\n insertBefore(parentNode, newNode, referenceNode) {\n const insertionIdx = parentNode.childNodes.indexOf(referenceNode);\n parentNode.childNodes.splice(insertionIdx, 0, newNode);\n newNode.parentNode = parentNode;\n },\n setTemplateContent(templateElement, contentElement) {\n templateElement.content = contentElement;\n },\n getTemplateContent(templateElement) {\n return templateElement.content;\n },\n setDocumentType(document, name, publicId, systemId) {\n const doctypeNode = document.childNodes.find((node) => node.nodeName === \"#documentType\");\n if (doctypeNode) {\n doctypeNode.name = name;\n doctypeNode.publicId = publicId;\n doctypeNode.systemId = systemId;\n } else {\n const node = {\n nodeName: \"#documentType\",\n name,\n publicId,\n systemId,\n parentNode: null\n };\n defaultTreeAdapter.appendChild(document, node);\n }\n },\n setDocumentMode(document, mode) {\n document.mode = mode;\n },\n getDocumentMode(document) {\n return document.mode;\n },\n detachNode(node) {\n if (node.parentNode) {\n const idx = node.parentNode.childNodes.indexOf(node);\n node.parentNode.childNodes.splice(idx, 1);\n node.parentNode = null;\n }\n },\n insertText(parentNode, text) {\n if (parentNode.childNodes.length > 0) {\n const prevNode = parentNode.childNodes[parentNode.childNodes.length - 1];\n if (defaultTreeAdapter.isTextNode(prevNode)) {\n prevNode.value += text;\n return;\n }\n }\n defaultTreeAdapter.appendChild(parentNode, defaultTreeAdapter.createTextNode(text));\n },\n insertTextBefore(parentNode, text, referenceNode) {\n const prevNode = parentNode.childNodes[parentNode.childNodes.indexOf(referenceNode) - 1];\n if (prevNode && defaultTreeAdapter.isTextNode(prevNode)) {\n prevNode.value += text;\n } else {\n defaultTreeAdapter.insertBefore(parentNode, defaultTreeAdapter.createTextNode(text), referenceNode);\n }\n },\n adoptAttributes(recipient, attrs) {\n const recipientAttrsMap = new Set(recipient.attrs.map((attr) => attr.name));\n for (let j = 0; j < attrs.length; j++) {\n if (!recipientAttrsMap.has(attrs[j].name)) {\n recipient.attrs.push(attrs[j]);\n }\n }\n },\n //Tree traversing\n getFirstChild(node) {\n return node.childNodes[0];\n },\n getChildNodes(node) {\n return node.childNodes;\n },\n getParentNode(node) {\n return node.parentNode;\n },\n getAttrList(element) {\n return element.attrs;\n },\n //Node data\n getTagName(element) {\n return element.tagName;\n },\n getNamespaceURI(element) {\n return element.namespaceURI;\n },\n getTextNodeContent(textNode) {\n return textNode.value;\n },\n getCommentNodeContent(commentNode) {\n return commentNode.data;\n },\n getDocumentTypeNodeName(doctypeNode) {\n return doctypeNode.name;\n },\n getDocumentTypeNodePublicId(doctypeNode) {\n return doctypeNode.publicId;\n },\n getDocumentTypeNodeSystemId(doctypeNode) {\n return doctypeNode.systemId;\n },\n //Node types\n isTextNode(node) {\n return node.nodeName === \"#text\";\n },\n isCommentNode(node) {\n return node.nodeName === \"#comment\";\n },\n isDocumentTypeNode(node) {\n return node.nodeName === \"#documentType\";\n },\n isElementNode(node) {\n return Object.prototype.hasOwnProperty.call(node, \"tagName\");\n },\n // Source code location\n setNodeSourceCodeLocation(node, location) {\n node.sourceCodeLocation = location;\n },\n getNodeSourceCodeLocation(node) {\n return node.sourceCodeLocation;\n },\n updateNodeSourceCodeLocation(node, endLocation) {\n node.sourceCodeLocation = { ...node.sourceCodeLocation, ...endLocation };\n }\n};\nconst VALID_DOCTYPE_NAME = \"html\";\nconst VALID_SYSTEM_ID = \"about:legacy-compat\";\nconst QUIRKS_MODE_SYSTEM_ID = \"http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd\";\nconst QUIRKS_MODE_PUBLIC_ID_PREFIXES = [\n \"+//silmaril//dtd html pro v0r11 19970101//\",\n \"-//as//dtd html 3.0 aswedit + extensions//\",\n \"-//advasoft ltd//dtd html 3.0 aswedit + extensions//\",\n \"-//ietf//dtd html 2.0 level 1//\",\n \"-//ietf//dtd html 2.0 level 2//\",\n \"-//ietf//dtd html 2.0 strict level 1//\",\n \"-//ietf//dtd html 2.0 strict level 2//\",\n \"-//ietf//dtd html 2.0 strict//\",\n \"-//ietf//dtd html 2.0//\",\n \"-//ietf//dtd html 2.1e//\",\n \"-//ietf//dtd html 3.0//\",\n \"-//ietf//dtd html 3.2 final//\",\n \"-//ietf//dtd html 3.2//\",\n \"-//ietf//dtd html 3//\",\n \"-//ietf//dtd html level 0//\",\n \"-//ietf//dtd html level 1//\",\n \"-//ietf//dtd html level 2//\",\n \"-//ietf//dtd html level 3//\",\n \"-//ietf//dtd html strict level 0//\",\n \"-//ietf//dtd html strict level 1//\",\n \"-//ietf//dtd html strict level 2//\",\n \"-//ietf//dtd html strict level 3//\",\n \"-//ietf//dtd html strict//\",\n \"-//ietf//dtd html//\",\n \"-//metrius//dtd metrius presentational//\",\n \"-//microsoft//dtd internet explorer 2.0 html strict//\",\n \"-//microsoft//dtd internet explorer 2.0 html//\",\n \"-//microsoft//dtd internet explorer 2.0 tables//\",\n \"-//microsoft//dtd internet explorer 3.0 html strict//\",\n \"-//microsoft//dtd internet explorer 3.0 html//\",\n \"-//microsoft//dtd internet explorer 3.0 tables//\",\n \"-//netscape comm. corp.//dtd html//\",\n \"-//netscape comm. corp.//dtd strict html//\",\n \"-//o'reilly and associates//dtd html 2.0//\",\n \"-//o'reilly and associates//dtd html extended 1.0//\",\n \"-//o'reilly and associates//dtd html extended relaxed 1.0//\",\n \"-//sq//dtd html 2.0 hotmetal + extensions//\",\n \"-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//\",\n \"-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//\",\n \"-//spyglass//dtd html 2.0 extended//\",\n \"-//sun microsystems corp.//dtd hotjava html//\",\n \"-//sun microsystems corp.//dtd hotjava strict html//\",\n \"-//w3c//dtd html 3 1995-03-24//\",\n \"-//w3c//dtd html 3.2 draft//\",\n \"-//w3c//dtd html 3.2 final//\",\n \"-//w3c//dtd html 3.2//\",\n \"-//w3c//dtd html 3.2s draft//\",\n \"-//w3c//dtd html 4.0 frameset//\",\n \"-//w3c//dtd html 4.0 transitional//\",\n \"-//w3c//dtd html experimental 19960712//\",\n \"-//w3c//dtd html experimental 970421//\",\n \"-//w3c//dtd w3 html//\",\n \"-//w3o//dtd w3 html 3.0//\",\n \"-//webtechs//dtd mozilla html 2.0//\",\n \"-//webtechs//dtd mozilla html//\"\n];\nconst QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES = [\n ...QUIRKS_MODE_PUBLIC_ID_PREFIXES,\n \"-//w3c//dtd html 4.01 frameset//\",\n \"-//w3c//dtd html 4.01 transitional//\"\n];\nconst QUIRKS_MODE_PUBLIC_IDS = /* @__PURE__ */ new Set([\n \"-//w3o//dtd w3 html strict 3.0//en//\",\n \"-/w3c/dtd html 4.0 transitional/en\",\n \"html\"\n]);\nconst LIMITED_QUIRKS_PUBLIC_ID_PREFIXES = [\"-//w3c//dtd xhtml 1.0 frameset//\", \"-//w3c//dtd xhtml 1.0 transitional//\"];\nconst LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES = [\n ...LIMITED_QUIRKS_PUBLIC_ID_PREFIXES,\n \"-//w3c//dtd html 4.01 frameset//\",\n \"-//w3c//dtd html 4.01 transitional//\"\n];\nfunction hasPrefix(publicId, prefixes) {\n return prefixes.some((prefix) => publicId.startsWith(prefix));\n}\nfunction isConforming(token) {\n return token.name === VALID_DOCTYPE_NAME && token.publicId === null && (token.systemId === null || token.systemId === VALID_SYSTEM_ID);\n}\nfunction getDocumentMode(token) {\n if (token.name !== VALID_DOCTYPE_NAME) {\n return DOCUMENT_MODE.QUIRKS;\n }\n const { systemId } = token;\n if (systemId && systemId.toLowerCase() === QUIRKS_MODE_SYSTEM_ID) {\n return DOCUMENT_MODE.QUIRKS;\n }\n let { publicId } = token;\n if (publicId !== null) {\n publicId = publicId.toLowerCase();\n if (QUIRKS_MODE_PUBLIC_IDS.has(publicId)) {\n return DOCUMENT_MODE.QUIRKS;\n }\n let prefixes = systemId === null ? QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES : QUIRKS_MODE_PUBLIC_ID_PREFIXES;\n if (hasPrefix(publicId, prefixes)) {\n return DOCUMENT_MODE.QUIRKS;\n }\n prefixes = systemId === null ? LIMITED_QUIRKS_PUBLIC_ID_PREFIXES : LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES;\n if (hasPrefix(publicId, prefixes)) {\n return DOCUMENT_MODE.LIMITED_QUIRKS;\n }\n }\n return DOCUMENT_MODE.NO_QUIRKS;\n}\nconst MIME_TYPES = {\n TEXT_HTML: \"text/html\",\n APPLICATION_XML: \"application/xhtml+xml\"\n};\nconst DEFINITION_URL_ATTR = \"definitionurl\";\nconst ADJUSTED_DEFINITION_URL_ATTR = \"definitionURL\";\nconst SVG_ATTRS_ADJUSTMENT_MAP = new Map([\n \"attributeName\",\n \"attributeType\",\n \"baseFrequency\",\n \"baseProfile\",\n \"calcMode\",\n \"clipPathUnits\",\n \"diffuseConstant\",\n \"edgeMode\",\n \"filterUnits\",\n \"glyphRef\",\n \"gradientTransform\",\n \"gradientUnits\",\n \"kernelMatrix\",\n \"kernelUnitLength\",\n \"keyPoints\",\n \"keySplines\",\n \"keyTimes\",\n \"lengthAdjust\",\n \"limitingConeAngle\",\n \"markerHeight\",\n \"markerUnits\",\n \"markerWidth\",\n \"maskContentUnits\",\n \"maskUnits\",\n \"numOctaves\",\n \"pathLength\",\n \"patternContentUnits\",\n \"patternTransform\",\n \"patternUnits\",\n \"pointsAtX\",\n \"pointsAtY\",\n \"pointsAtZ\",\n \"preserveAlpha\",\n \"preserveAspectRatio\",\n \"primitiveUnits\",\n \"refX\",\n \"refY\",\n \"repeatCount\",\n \"repeatDur\",\n \"requiredExtensions\",\n \"requiredFeatures\",\n \"specularConstant\",\n \"specularExponent\",\n \"spreadMethod\",\n \"startOffset\",\n \"stdDeviation\",\n \"stitchTiles\",\n \"surfaceScale\",\n \"systemLanguage\",\n \"tableValues\",\n \"targetX\",\n \"targetY\",\n \"textLength\",\n \"viewBox\",\n \"viewTarget\",\n \"xChannelSelector\",\n \"yChannelSelector\",\n \"zoomAndPan\"\n].map((attr) => [attr.toLowerCase(), attr]));\nconst XML_ATTRS_ADJUSTMENT_MAP = /* @__PURE__ */ new Map([\n [\"xlink:actuate\", { prefix: \"xlink\", name: \"actuate\", namespace: NS.XLINK }],\n [\"xlink:arcrole\", { prefix: \"xlink\", name: \"arcrole\", namespace: NS.XLINK }],\n [\"xlink:href\", { prefix: \"xlink\", name: \"href\", namespace: NS.XLINK }],\n [\"xlink:role\", { prefix: \"xlink\", name: \"role\", namespace: NS.XLINK }],\n [\"xlink:show\", { prefix: \"xlink\", name: \"show\", namespace: NS.XLINK }],\n [\"xlink:title\", { prefix: \"xlink\", name: \"title\", namespace: NS.XLINK }],\n [\"xlink:type\", { prefix: \"xlink\", name: \"type\", namespace: NS.XLINK }],\n [\"xml:lang\", { prefix: \"xml\", name: \"lang\", namespace: NS.XML }],\n [\"xml:space\", { prefix: \"xml\", name: \"space\", namespace: NS.XML }],\n [\"xmlns\", { prefix: \"\", name: \"xmlns\", namespace: NS.XMLNS }],\n [\"xmlns:xlink\", { prefix: \"xmlns\", name: \"xlink\", namespace: NS.XMLNS }]\n]);\nconst SVG_TAG_NAMES_ADJUSTMENT_MAP = new Map([\n \"altGlyph\",\n \"altGlyphDef\",\n \"altGlyphItem\",\n \"animateColor\",\n \"animateMotion\",\n \"animateTransform\",\n \"clipPath\",\n \"feBlend\",\n \"feColorMatrix\",\n \"feComponentTransfer\",\n \"feComposite\",\n \"feConvolveMatrix\",\n \"feDiffuseLighting\",\n \"feDisplacementMap\",\n \"feDistantLight\",\n \"feFlood\",\n \"feFuncA\",\n \"feFuncB\",\n \"feFuncG\",\n \"feFuncR\",\n \"feGaussianBlur\",\n \"feImage\",\n \"feMerge\",\n \"feMergeNode\",\n \"feMorphology\",\n \"feOffset\",\n \"fePointLight\",\n \"feSpecularLighting\",\n \"feSpotLight\",\n \"feTile\",\n \"feTurbulence\",\n \"foreignObject\",\n \"glyphRef\",\n \"linearGradient\",\n \"radialGradient\",\n \"textPath\"\n].map((tn) => [tn.toLowerCase(), tn]));\nconst EXITS_FOREIGN_CONTENT = /* @__PURE__ */ new Set([\n TAG_ID.B,\n TAG_ID.BIG,\n TAG_ID.BLOCKQUOTE,\n TAG_ID.BODY,\n TAG_ID.BR,\n TAG_ID.CENTER,\n TAG_ID.CODE,\n TAG_ID.DD,\n TAG_ID.DIV,\n TAG_ID.DL,\n TAG_ID.DT,\n TAG_ID.EM,\n TAG_ID.EMBED,\n TAG_ID.H1,\n TAG_ID.H2,\n TAG_ID.H3,\n TAG_ID.H4,\n TAG_ID.H5,\n TAG_ID.H6,\n TAG_ID.HEAD,\n TAG_ID.HR,\n TAG_ID.I,\n TAG_ID.IMG,\n TAG_ID.LI,\n TAG_ID.LISTING,\n TAG_ID.MENU,\n TAG_ID.META,\n TAG_ID.NOBR,\n TAG_ID.OL,\n TAG_ID.P,\n TAG_ID.PRE,\n TAG_ID.RUBY,\n TAG_ID.S,\n TAG_ID.SMALL,\n TAG_ID.SPAN,\n TAG_ID.STRONG,\n TAG_ID.STRIKE,\n TAG_ID.SUB,\n TAG_ID.SUP,\n TAG_ID.TABLE,\n TAG_ID.TT,\n TAG_ID.U,\n TAG_ID.UL,\n TAG_ID.VAR\n]);\nfunction causesExit(startTagToken) {\n const tn = startTagToken.tagID;\n const isFontWithAttrs = tn === TAG_ID.FONT && startTagToken.attrs.some(({ name }) => name === ATTRS.COLOR || name === ATTRS.SIZE || name === ATTRS.FACE);\n return isFontWithAttrs || EXITS_FOREIGN_CONTENT.has(tn);\n}\nfunction adjustTokenMathMLAttrs(token) {\n for (let i = 0; i < token.attrs.length; i++) {\n if (token.attrs[i].name === DEFINITION_URL_ATTR) {\n token.attrs[i].name = ADJUSTED_DEFINITION_URL_ATTR;\n break;\n }\n }\n}\nfunction adjustTokenSVGAttrs(token) {\n for (let i = 0; i < token.attrs.length; i++) {\n const adjustedAttrName = SVG_ATTRS_ADJUSTMENT_MAP.get(token.attrs[i].name);\n if (adjustedAttrName != null) {\n token.attrs[i].name = adjustedAttrName;\n }\n }\n}\nfunction adjustTokenXMLAttrs(token) {\n for (let i = 0; i < token.attrs.length; i++) {\n const adjustedAttrEntry = XML_ATTRS_ADJUSTMENT_MAP.get(token.attrs[i].name);\n if (adjustedAttrEntry) {\n token.attrs[i].prefix = adjustedAttrEntry.prefix;\n token.attrs[i].name = adjustedAttrEntry.name;\n token.attrs[i].namespace = adjustedAttrEntry.namespace;\n }\n }\n}\nfunction adjustTokenSVGTagName(token) {\n const adjustedTagName = SVG_TAG_NAMES_ADJUSTMENT_MAP.get(token.tagName);\n if (adjustedTagName != null) {\n token.tagName = adjustedTagName;\n token.tagID = getTagID(token.tagName);\n }\n}\nfunction isMathMLTextIntegrationPoint(tn, ns) {\n return ns === NS.MATHML && (tn === TAG_ID.MI || tn === TAG_ID.MO || tn === TAG_ID.MN || tn === TAG_ID.MS || tn === TAG_ID.MTEXT);\n}\nfunction isHtmlIntegrationPoint(tn, ns, attrs) {\n if (ns === NS.MATHML && tn === TAG_ID.ANNOTATION_XML) {\n for (let i = 0; i < attrs.length; i++) {\n if (attrs[i].name === ATTRS.ENCODING) {\n const value = attrs[i].value.toLowerCase();\n return value === MIME_TYPES.TEXT_HTML || value === MIME_TYPES.APPLICATION_XML;\n }\n }\n }\n return ns === NS.SVG && (tn === TAG_ID.FOREIGN_OBJECT || tn === TAG_ID.DESC || tn === TAG_ID.TITLE);\n}\nfunction isIntegrationPoint(tn, ns, attrs, foreignNS) {\n return (!foreignNS || foreignNS === NS.HTML) && isHtmlIntegrationPoint(tn, ns, attrs) || (!foreignNS || foreignNS === NS.MATHML) && isMathMLTextIntegrationPoint(tn, ns);\n}\nconst HIDDEN_INPUT_TYPE = \"hidden\";\nconst AA_OUTER_LOOP_ITER = 8;\nconst AA_INNER_LOOP_ITER = 3;\nvar InsertionMode;\n(function(InsertionMode2) {\n InsertionMode2[InsertionMode2[\"INITIAL\"] = 0] = \"INITIAL\";\n InsertionMode2[InsertionMode2[\"BEFORE_HTML\"] = 1] = \"BEFORE_HTML\";\n InsertionMode2[InsertionMode2[\"BEFORE_HEAD\"] = 2] = \"BEFORE_HEAD\";\n InsertionMode2[InsertionMode2[\"IN_HEAD\"] = 3] = \"IN_HEAD\";\n InsertionMode2[InsertionMode2[\"IN_HEAD_NO_SCRIPT\"] = 4] = \"IN_HEAD_NO_SCRIPT\";\n InsertionMode2[InsertionMode2[\"AFTER_HEAD\"] = 5] = \"AFTER_HEAD\";\n InsertionMode2[InsertionMode2[\"IN_BODY\"] = 6] = \"IN_BODY\";\n InsertionMode2[InsertionMode2[\"TEXT\"] = 7] = \"TEXT\";\n InsertionMode2[InsertionMode2[\"IN_TABLE\"] = 8] = \"IN_TABLE\";\n InsertionMode2[InsertionMode2[\"IN_TABLE_TEXT\"] = 9] = \"IN_TABLE_TEXT\";\n InsertionMode2[InsertionMode2[\"IN_CAPTION\"] = 10] = \"IN_CAPTION\";\n InsertionMode2[InsertionMode2[\"IN_COLUMN_GROUP\"] = 11] = \"IN_COLUMN_GROUP\";\n InsertionMode2[InsertionMode2[\"IN_TABLE_BODY\"] = 12] = \"IN_TABLE_BODY\";\n InsertionMode2[InsertionMode2[\"IN_ROW\"] = 13] = \"IN_ROW\";\n InsertionMode2[InsertionMode2[\"IN_CELL\"] = 14] = \"IN_CELL\";\n InsertionMode2[InsertionMode2[\"IN_SELECT\"] = 15] = \"IN_SELECT\";\n InsertionMode2[InsertionMode2[\"IN_SELECT_IN_TABLE\"] = 16] = \"IN_SELECT_IN_TABLE\";\n InsertionMode2[InsertionMode2[\"IN_TEMPLATE\"] = 17] = \"IN_TEMPLATE\";\n InsertionMode2[InsertionMode2[\"AFTER_BODY\"] = 18] = \"AFTER_BODY\";\n InsertionMode2[InsertionMode2[\"IN_FRAMESET\"] = 19] = \"IN_FRAMESET\";\n InsertionMode2[InsertionMode2[\"AFTER_FRAMESET\"] = 20] = \"AFTER_FRAMESET\";\n InsertionMode2[InsertionMode2[\"AFTER_AFTER_BODY\"] = 21] = \"AFTER_AFTER_BODY\";\n InsertionMode2[InsertionMode2[\"AFTER_AFTER_FRAMESET\"] = 22] = \"AFTER_AFTER_FRAMESET\";\n})(InsertionMode || (InsertionMode = {}));\nconst BASE_LOC = {\n startLine: -1,\n startCol: -1,\n startOffset: -1,\n endLine: -1,\n endCol: -1,\n endOffset: -1\n};\nconst TABLE_STRUCTURE_TAGS = /* @__PURE__ */ new Set([TAG_ID.TABLE, TAG_ID.TBODY, TAG_ID.TFOOT, TAG_ID.THEAD, TAG_ID.TR]);\nconst defaultParserOptions = {\n scriptingEnabled: true,\n sourceCodeLocationInfo: false,\n treeAdapter: defaultTreeAdapter,\n onParseError: null\n};\nclass Parser {\n constructor(options, document, fragmentContext = null, scriptHandler = null) {\n this.fragmentContext = fragmentContext;\n this.scriptHandler = scriptHandler;\n this.currentToken = null;\n this.stopped = false;\n this.insertionMode = InsertionMode.INITIAL;\n this.originalInsertionMode = InsertionMode.INITIAL;\n this.headElement = null;\n this.formElement = null;\n this.currentNotInHTML = false;\n this.tmplInsertionModeStack = [];\n this.pendingCharacterTokens = [];\n this.hasNonWhitespacePendingCharacterToken = false;\n this.framesetOk = true;\n this.skipNextNewLine = false;\n this.fosterParentingEnabled = false;\n this.options = {\n ...defaultParserOptions,\n ...options\n };\n this.treeAdapter = this.options.treeAdapter;\n this.onParseError = this.options.onParseError;\n if (this.onParseError) {\n this.options.sourceCodeLocationInfo = true;\n }\n this.document = document !== null && document !== void 0 ? document : this.treeAdapter.createDocument();\n this.tokenizer = new Tokenizer(this.options, this);\n this.activeFormattingElements = new FormattingElementList(this.treeAdapter);\n this.fragmentContextID = fragmentContext ? getTagID(this.treeAdapter.getTagName(fragmentContext)) : TAG_ID.UNKNOWN;\n this._setContextModes(fragmentContext !== null && fragmentContext !== void 0 ? fragmentContext : this.document, this.fragmentContextID);\n this.openElements = new OpenElementStack(this.document, this.treeAdapter, this);\n }\n // API\n static parse(html, options) {\n const parser = new this(options);\n parser.tokenizer.write(html, true);\n return parser.document;\n }\n static getFragmentParser(fragmentContext, options) {\n const opts = {\n ...defaultParserOptions,\n ...options\n };\n fragmentContext !== null && fragmentContext !== void 0 ? fragmentContext : fragmentContext = opts.treeAdapter.createElement(TAG_NAMES.TEMPLATE, NS.HTML, []);\n const documentMock = opts.treeAdapter.createElement(\"documentmock\", NS.HTML, []);\n const parser = new this(opts, documentMock, fragmentContext);\n if (parser.fragmentContextID === TAG_ID.TEMPLATE) {\n parser.tmplInsertionModeStack.unshift(InsertionMode.IN_TEMPLATE);\n }\n parser._initTokenizerForFragmentParsing();\n parser._insertFakeRootElement();\n parser._resetInsertionMode();\n parser._findFormInFragmentContext();\n return parser;\n }\n getFragment() {\n const rootElement = this.treeAdapter.getFirstChild(this.document);\n const fragment = this.treeAdapter.createDocumentFragment();\n this._adoptNodes(rootElement, fragment);\n return fragment;\n }\n //Errors\n /** @internal */\n _err(token, code, beforeToken) {\n var _a;\n if (!this.onParseError)\n return;\n const loc = (_a = token.location) !== null && _a !== void 0 ? _a : BASE_LOC;\n const err = {\n code,\n startLine: loc.startLine,\n startCol: loc.startCol,\n startOffset: loc.startOffset,\n endLine: beforeToken ? loc.startLine : loc.endLine,\n endCol: beforeToken ? loc.startCol : loc.endCol,\n endOffset: beforeToken ? loc.startOffset : loc.endOffset\n };\n this.onParseError(err);\n }\n //Stack events\n /** @internal */\n onItemPush(node, tid, isTop) {\n var _a, _b;\n (_b = (_a = this.treeAdapter).onItemPush) === null || _b === void 0 ? void 0 : _b.call(_a, node);\n if (isTop && this.openElements.stackTop > 0)\n this._setContextModes(node, tid);\n }\n /** @internal */\n onItemPop(node, isTop) {\n var _a, _b;\n if (this.options.sourceCodeLocationInfo) {\n this._setEndLocation(node, this.currentToken);\n }\n (_b = (_a = this.treeAdapter).onItemPop) === null || _b === void 0 ? void 0 : _b.call(_a, node, this.openElements.current);\n if (isTop) {\n let current;\n let currentTagId;\n if (this.openElements.stackTop === 0 && this.fragmentContext) {\n current = this.fragmentContext;\n currentTagId = this.fragmentContextID;\n } else {\n ({ current, currentTagId } = this.openElements);\n }\n this._setContextModes(current, currentTagId);\n }\n }\n _setContextModes(current, tid) {\n const isHTML = current === this.document || current && this.treeAdapter.getNamespaceURI(current) === NS.HTML;\n this.currentNotInHTML = !isHTML;\n this.tokenizer.inForeignNode = !isHTML && current !== void 0 && tid !== void 0 && !this._isIntegrationPoint(tid, current);\n }\n /** @protected */\n _switchToTextParsing(currentToken, nextTokenizerState) {\n this._insertElement(currentToken, NS.HTML);\n this.tokenizer.state = nextTokenizerState;\n this.originalInsertionMode = this.insertionMode;\n this.insertionMode = InsertionMode.TEXT;\n }\n switchToPlaintextParsing() {\n this.insertionMode = InsertionMode.TEXT;\n this.originalInsertionMode = InsertionMode.IN_BODY;\n this.tokenizer.state = TokenizerMode.PLAINTEXT;\n }\n //Fragment parsing\n /** @protected */\n _getAdjustedCurrentElement() {\n return this.openElements.stackTop === 0 && this.fragmentContext ? this.fragmentContext : this.openElements.current;\n }\n /** @protected */\n _findFormInFragmentContext() {\n let node = this.fragmentContext;\n while (node) {\n if (this.treeAdapter.getTagName(node) === TAG_NAMES.FORM) {\n this.formElement = node;\n break;\n }\n node = this.treeAdapter.getParentNode(node);\n }\n }\n _initTokenizerForFragmentParsing() {\n if (!this.fragmentContext || this.treeAdapter.getNamespaceURI(this.fragmentContext) !== NS.HTML) {\n return;\n }\n switch (this.fragmentContextID) {\n case TAG_ID.TITLE:\n case TAG_ID.TEXTAREA: {\n this.tokenizer.state = TokenizerMode.RCDATA;\n break;\n }\n case TAG_ID.STYLE:\n case TAG_ID.XMP:\n case TAG_ID.IFRAME:\n case TAG_ID.NOEMBED:\n case TAG_ID.NOFRAMES:\n case TAG_ID.NOSCRIPT: {\n this.tokenizer.state = TokenizerMode.RAWTEXT;\n break;\n }\n case TAG_ID.SCRIPT: {\n this.tokenizer.state = TokenizerMode.SCRIPT_DATA;\n break;\n }\n case TAG_ID.PLAINTEXT: {\n this.tokenizer.state = TokenizerMode.PLAINTEXT;\n break;\n }\n }\n }\n //Tree mutation\n /** @protected */\n _setDocumentType(token) {\n const name = token.name || \"\";\n const publicId = token.publicId || \"\";\n const systemId = token.systemId || \"\";\n this.treeAdapter.setDocumentType(this.document, name, publicId, systemId);\n if (token.location) {\n const documentChildren = this.treeAdapter.getChildNodes(this.document);\n const docTypeNode = documentChildren.find((node) => this.treeAdapter.isDocumentTypeNode(node));\n if (docTypeNode) {\n this.treeAdapter.setNodeSourceCodeLocation(docTypeNode, token.location);\n }\n }\n }\n /** @protected */\n _attachElementToTree(element, location) {\n if (this.options.sourceCodeLocationInfo) {\n const loc = location && {\n ...location,\n startTag: location\n };\n this.treeAdapter.setNodeSourceCodeLocation(element, loc);\n }\n if (this._shouldFosterParentOnInsertion()) {\n this._fosterParentElement(element);\n } else {\n const parent = this.openElements.currentTmplContentOrNode;\n this.treeAdapter.appendChild(parent !== null && parent !== void 0 ? parent : this.document, element);\n }\n }\n /**\n * For self-closing tags. Add an element to the tree, but skip adding it\n * to the stack.\n */\n /** @protected */\n _appendElement(token, namespaceURI) {\n const element = this.treeAdapter.createElement(token.tagName, namespaceURI, token.attrs);\n this._attachElementToTree(element, token.location);\n }\n /** @protected */\n _insertElement(token, namespaceURI) {\n const element = this.treeAdapter.createElement(token.tagName, namespaceURI, token.attrs);\n this._attachElementToTree(element, token.location);\n this.openElements.push(element, token.tagID);\n }\n /** @protected */\n _insertFakeElement(tagName, tagID) {\n const element = this.treeAdapter.createElement(tagName, NS.HTML, []);\n this._attachElementToTree(element, null);\n this.openElements.push(element, tagID);\n }\n /** @protected */\n _insertTemplate(token) {\n const tmpl = this.treeAdapter.createElement(token.tagName, NS.HTML, token.attrs);\n const content = this.treeAdapter.createDocumentFragment();\n this.treeAdapter.setTemplateContent(tmpl, content);\n this._attachElementToTree(tmpl, token.location);\n this.openElements.push(tmpl, token.tagID);\n if (this.options.sourceCodeLocationInfo)\n this.treeAdapter.setNodeSourceCodeLocation(content, null);\n }\n /** @protected */\n _insertFakeRootElement() {\n const element = this.treeAdapter.createElement(TAG_NAMES.HTML, NS.HTML, []);\n if (this.options.sourceCodeLocationInfo)\n this.treeAdapter.setNodeSourceCodeLocation(element, null);\n this.treeAdapter.appendChild(this.openElements.current, element);\n this.openElements.push(element, TAG_ID.HTML);\n }\n /** @protected */\n _appendCommentNode(token, parent) {\n const commentNode = this.treeAdapter.createCommentNode(token.data);\n this.treeAdapter.appendChild(parent, commentNode);\n if (this.options.sourceCodeLocationInfo) {\n this.treeAdapter.setNodeSourceCodeLocation(commentNode, token.location);\n }\n }\n /** @protected */\n _insertCharacters(token) {\n let parent;\n let beforeElement;\n if (this._shouldFosterParentOnInsertion()) {\n ({ parent, beforeElement } = this._findFosterParentingLocation());\n if (beforeElement) {\n this.treeAdapter.insertTextBefore(parent, token.chars, beforeElement);\n } else {\n this.treeAdapter.insertText(parent, token.chars);\n }\n } else {\n parent = this.openElements.currentTmplContentOrNode;\n this.treeAdapter.insertText(parent, token.chars);\n }\n if (!token.location)\n return;\n const siblings = this.treeAdapter.getChildNodes(parent);\n const textNodeIdx = beforeElement ? siblings.lastIndexOf(beforeElement) : siblings.length;\n const textNode = siblings[textNodeIdx - 1];\n const tnLoc = this.treeAdapter.getNodeSourceCodeLocation(textNode);\n if (tnLoc) {\n const { endLine, endCol, endOffset } = token.location;\n this.treeAdapter.updateNodeSourceCodeLocation(textNode, { endLine, endCol, endOffset });\n } else if (this.options.sourceCodeLocationInfo) {\n this.treeAdapter.setNodeSourceCodeLocation(textNode, token.location);\n }\n }\n /** @protected */\n _adoptNodes(donor, recipient) {\n for (let child = this.treeAdapter.getFirstChild(donor); child; child = this.treeAdapter.getFirstChild(donor)) {\n this.treeAdapter.detachNode(child);\n this.treeAdapter.appendChild(recipient, child);\n }\n }\n /** @protected */\n _setEndLocation(element, closingToken) {\n if (this.treeAdapter.getNodeSourceCodeLocation(element) && closingToken.location) {\n const ctLoc = closingToken.location;\n const tn = this.treeAdapter.getTagName(element);\n const endLoc = (\n // NOTE: For cases like <p> <p> </p> - First 'p' closes without a closing\n // tag and for cases like <td> <p> </td> - 'p' closes without a closing tag.\n closingToken.type === TokenType.END_TAG && tn === closingToken.tagName ? {\n endTag: { ...ctLoc },\n endLine: ctLoc.endLine,\n endCol: ctLoc.endCol,\n endOffset: ctLoc.endOffset\n } : {\n endLine: ctLoc.startLine,\n endCol: ctLoc.startCol,\n endOffset: ctLoc.startOffset\n }\n );\n this.treeAdapter.updateNodeSourceCodeLocation(element, endLoc);\n }\n }\n //Token processing\n shouldProcessStartTagTokenInForeignContent(token) {\n if (!this.currentNotInHTML)\n return false;\n let current;\n let currentTagId;\n if (this.openElements.stackTop === 0 && this.fragmentContext) {\n current = this.fragmentContext;\n currentTagId = this.fragmentContextID;\n } else {\n ({ current, currentTagId } = this.openElements);\n }\n if (token.tagID === TAG_ID.SVG && this.treeAdapter.getTagName(current) === TAG_NAMES.ANNOTATION_XML && this.treeAdapter.getNamespaceURI(current) === NS.MATHML) {\n return false;\n }\n return (\n // Check that `current` is not an integration point for HTML or MathML elements.\n this.tokenizer.inForeignNode || // If it _is_ an integration point, then we might have to check that it is not an HTML\n // integration point.\n (token.tagID === TAG_ID.MGLYPH || token.tagID === TAG_ID.MALIGNMARK) && currentTagId !== void 0 && !this._isIntegrationPoint(currentTagId, current, NS.HTML)\n );\n }\n /** @protected */\n _processToken(token) {\n switch (token.type) {\n case TokenType.CHARACTER: {\n this.onCharacter(token);\n break;\n }\n case TokenType.NULL_CHARACTER: {\n this.onNullCharacter(token);\n break;\n }\n case TokenType.COMMENT: {\n this.onComment(token);\n break;\n }\n case TokenType.DOCTYPE: {\n this.onDoctype(token);\n break;\n }\n case TokenType.START_TAG: {\n this._processStartTag(token);\n break;\n }\n case TokenType.END_TAG: {\n this.onEndTag(token);\n break;\n }\n case TokenType.EOF: {\n this.onEof(token);\n break;\n }\n case TokenType.WHITESPACE_CHARACTER: {\n this.onWhitespaceCharacter(token);\n break;\n }\n }\n }\n //Integration points\n /** @protected */\n _isIntegrationPoint(tid, element, foreignNS) {\n const ns = this.treeAdapter.getNamespaceURI(element);\n const attrs = this.treeAdapter.getAttrList(element);\n return isIntegrationPoint(tid, ns, attrs, foreignNS);\n }\n //Active formatting elements reconstruction\n /** @protected */\n _reconstructActiveFormattingElements() {\n const listLength = this.activeFormattingElements.entries.length;\n if (listLength) {\n const endIndex = this.activeFormattingElements.entries.findIndex((entry) => entry.type === EntryType.Marker || this.openElements.contains(entry.element));\n const unopenIdx = endIndex === -1 ? listLength - 1 : endIndex - 1;\n for (let i = unopenIdx; i >= 0; i--) {\n const entry = this.activeFormattingElements.entries[i];\n this._insertElement(entry.token, this.treeAdapter.getNamespaceURI(entry.element));\n entry.element = this.openElements.current;\n }\n }\n }\n //Close elements\n /** @protected */\n _closeTableCell() {\n this.openElements.generateImpliedEndTags();\n this.openElements.popUntilTableCellPopped();\n this.activeFormattingElements.clearToLastMarker();\n this.insertionMode = InsertionMode.IN_ROW;\n }\n /** @protected */\n _closePElement() {\n this.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.P);\n this.openElements.popUntilTagNamePopped(TAG_ID.P);\n }\n //Insertion modes\n /** @protected */\n _resetInsertionMode() {\n for (let i = this.openElements.stackTop; i >= 0; i--) {\n switch (i === 0 && this.fragmentContext ? this.fragmentContextID : this.openElements.tagIDs[i]) {\n case TAG_ID.TR: {\n this.insertionMode = InsertionMode.IN_ROW;\n return;\n }\n case TAG_ID.TBODY:\n case TAG_ID.THEAD:\n case TAG_ID.TFOOT: {\n this.insertionMode = InsertionMode.IN_TABLE_BODY;\n return;\n }\n case TAG_ID.CAPTION: {\n this.insertionMode = InsertionMode.IN_CAPTION;\n return;\n }\n case TAG_ID.COLGROUP: {\n this.insertionMode = InsertionMode.IN_COLUMN_GROUP;\n return;\n }\n case TAG_ID.TABLE: {\n this.insertionMode = InsertionMode.IN_TABLE;\n return;\n }\n case TAG_ID.BODY: {\n this.insertionMode = InsertionMode.IN_BODY;\n return;\n }\n case TAG_ID.FRAMESET: {\n this.insertionMode = InsertionMode.IN_FRAMESET;\n return;\n }\n case TAG_ID.SELECT: {\n this._resetInsertionModeForSelect(i);\n return;\n }\n case TAG_ID.TEMPLATE: {\n this.insertionMode = this.tmplInsertionModeStack[0];\n return;\n }\n case TAG_ID.HTML: {\n this.insertionMode = this.headElement ? InsertionMode.AFTER_HEAD : InsertionMode.BEFORE_HEAD;\n return;\n }\n case TAG_ID.TD:\n case TAG_ID.TH: {\n if (i > 0) {\n this.insertionMode = InsertionMode.IN_CELL;\n return;\n }\n break;\n }\n case TAG_ID.HEAD: {\n if (i > 0) {\n this.insertionMode = InsertionMode.IN_HEAD;\n return;\n }\n break;\n }\n }\n }\n this.insertionMode = InsertionMode.IN_BODY;\n }\n /** @protected */\n _resetInsertionModeForSelect(selectIdx) {\n if (selectIdx > 0) {\n for (let i = selectIdx - 1; i > 0; i--) {\n const tn = this.openElements.tagIDs[i];\n if (tn === TAG_ID.TEMPLATE) {\n break;\n } else if (tn === TAG_ID.TABLE) {\n this.insertionMode = InsertionMode.IN_SELECT_IN_TABLE;\n return;\n }\n }\n }\n this.insertionMode = InsertionMode.IN_SELECT;\n }\n //Foster parenting\n /** @protected */\n _isElementCausesFosterParenting(tn) {\n return TABLE_STRUCTURE_TAGS.has(tn);\n }\n /** @protected */\n _shouldFosterParentOnInsertion() {\n return this.fosterParentingEnabled && this.openElements.currentTagId !== void 0 && this._isElementCausesFosterParenting(this.openElements.currentTagId);\n }\n /** @protected */\n _findFosterParentingLocation() {\n for (let i = this.openElements.stackTop; i >= 0; i--) {\n const openElement = this.openElements.items[i];\n switch (this.openElements.tagIDs[i]) {\n case TAG_ID.TEMPLATE: {\n if (this.treeAdapter.getNamespaceURI(openElement) === NS.HTML) {\n return { parent: this.treeAdapter.getTemplateContent(openElement), beforeElement: null };\n }\n break;\n }\n case TAG_ID.TABLE: {\n const parent = this.treeAdapter.getParentNode(openElement);\n if (parent) {\n return { parent, beforeElement: openElement };\n }\n return { parent: this.openElements.items[i - 1], beforeElement: null };\n }\n }\n }\n return { parent: this.openElements.items[0], beforeElement: null };\n }\n /** @protected */\n _fosterParentElement(element) {\n const location = this._findFosterParentingLocation();\n if (location.beforeElement) {\n this.treeAdapter.insertBefore(location.parent, element, location.beforeElement);\n } else {\n this.treeAdapter.appendChild(location.parent, element);\n }\n }\n //Special elements\n /** @protected */\n _isSpecialElement(element, id) {\n const ns = this.treeAdapter.getNamespaceURI(element);\n return SPECIAL_ELEMENTS[ns].has(id);\n }\n /** @internal */\n onCharacter(token) {\n this.skipNextNewLine = false;\n if (this.tokenizer.inForeignNode) {\n characterInForeignContent(this, token);\n return;\n }\n switch (this.insertionMode) {\n case InsertionMode.INITIAL: {\n tokenInInitialMode(this, token);\n break;\n }\n case InsertionMode.BEFORE_HTML: {\n tokenBeforeHtml(this, token);\n break;\n }\n case InsertionMode.BEFORE_HEAD: {\n tokenBeforeHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD: {\n tokenInHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD_NO_SCRIPT: {\n tokenInHeadNoScript(this, token);\n break;\n }\n case InsertionMode.AFTER_HEAD: {\n tokenAfterHead(this, token);\n break;\n }\n case InsertionMode.IN_BODY:\n case InsertionMode.IN_CAPTION:\n case InsertionMode.IN_CELL:\n case InsertionMode.IN_TEMPLATE: {\n characterInBody(this, token);\n break;\n }\n case InsertionMode.TEXT:\n case InsertionMode.IN_SELECT:\n case InsertionMode.IN_SELECT_IN_TABLE: {\n this._insertCharacters(token);\n break;\n }\n case InsertionMode.IN_TABLE:\n case InsertionMode.IN_TABLE_BODY:\n case InsertionMode.IN_ROW: {\n characterInTable(this, token);\n break;\n }\n case InsertionMode.IN_TABLE_TEXT: {\n characterInTableText(this, token);\n break;\n }\n case InsertionMode.IN_COLUMN_GROUP: {\n tokenInColumnGroup(this, token);\n break;\n }\n case InsertionMode.AFTER_BODY: {\n tokenAfterBody(this, token);\n break;\n }\n case InsertionMode.AFTER_AFTER_BODY: {\n tokenAfterAfterBody(this, token);\n break;\n }\n }\n }\n /** @internal */\n onNullCharacter(token) {\n this.skipNextNewLine = false;\n if (this.tokenizer.inForeignNode) {\n nullCharacterInForeignContent(this, token);\n return;\n }\n switch (this.insertionMode) {\n case InsertionMode.INITIAL: {\n tokenInInitialMode(this, token);\n break;\n }\n case InsertionMode.BEFORE_HTML: {\n tokenBeforeHtml(this, token);\n break;\n }\n case InsertionMode.BEFORE_HEAD: {\n tokenBeforeHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD: {\n tokenInHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD_NO_SCRIPT: {\n tokenInHeadNoScript(this, token);\n break;\n }\n case InsertionMode.AFTER_HEAD: {\n tokenAfterHead(this, token);\n break;\n }\n case InsertionMode.TEXT: {\n this._insertCharacters(token);\n break;\n }\n case InsertionMode.IN_TABLE:\n case InsertionMode.IN_TABLE_BODY:\n case InsertionMode.IN_ROW: {\n characterInTable(this, token);\n break;\n }\n case InsertionMode.IN_COLUMN_GROUP: {\n tokenInColumnGroup(this, token);\n break;\n }\n case InsertionMode.AFTER_BODY: {\n tokenAfterBody(this, token);\n break;\n }\n case InsertionMode.AFTER_AFTER_BODY: {\n tokenAfterAfterBody(this, token);\n break;\n }\n }\n }\n /** @internal */\n onComment(token) {\n this.skipNextNewLine = false;\n if (this.currentNotInHTML) {\n appendComment(this, token);\n return;\n }\n switch (this.insertionMode) {\n case InsertionMode.INITIAL:\n case InsertionMode.BEFORE_HTML:\n case InsertionMode.BEFORE_HEAD:\n case InsertionMode.IN_HEAD:\n case InsertionMode.IN_HEAD_NO_SCRIPT:\n case InsertionMode.AFTER_HEAD:\n case InsertionMode.IN_BODY:\n case InsertionMode.IN_TABLE:\n case InsertionMode.IN_CAPTION:\n case InsertionMode.IN_COLUMN_GROUP:\n case InsertionMode.IN_TABLE_BODY:\n case InsertionMode.IN_ROW:\n case InsertionMode.IN_CELL:\n case InsertionMode.IN_SELECT:\n case InsertionMode.IN_SELECT_IN_TABLE:\n case InsertionMode.IN_TEMPLATE:\n case InsertionMode.IN_FRAMESET:\n case InsertionMode.AFTER_FRAMESET: {\n appendComment(this, token);\n break;\n }\n case InsertionMode.IN_TABLE_TEXT: {\n tokenInTableText(this, token);\n break;\n }\n case InsertionMode.AFTER_BODY: {\n appendCommentToRootHtmlElement(this, token);\n break;\n }\n case InsertionMode.AFTER_AFTER_BODY:\n case InsertionMode.AFTER_AFTER_FRAMESET: {\n appendCommentToDocument(this, token);\n break;\n }\n }\n }\n /** @internal */\n onDoctype(token) {\n this.skipNextNewLine = false;\n switch (this.insertionMode) {\n case InsertionMode.INITIAL: {\n doctypeInInitialMode(this, token);\n break;\n }\n case InsertionMode.BEFORE_HEAD:\n case InsertionMode.IN_HEAD:\n case InsertionMode.IN_HEAD_NO_SCRIPT:\n case InsertionMode.AFTER_HEAD: {\n this._err(token, ERR.misplacedDoctype);\n break;\n }\n case InsertionMode.IN_TABLE_TEXT: {\n tokenInTableText(this, token);\n break;\n }\n }\n }\n /** @internal */\n onStartTag(token) {\n this.skipNextNewLine = false;\n this.currentToken = token;\n this._processStartTag(token);\n if (token.selfClosing && !token.ackSelfClosing) {\n this._err(token, ERR.nonVoidHtmlElementStartTagWithTrailingSolidus);\n }\n }\n /**\n * Processes a given start tag.\n *\n * `onStartTag` checks if a self-closing tag was recognized. When a token\n * is moved inbetween multiple insertion modes, this check for self-closing\n * could lead to false positives. To avoid this, `_processStartTag` is used\n * for nested calls.\n *\n * @param token The token to process.\n * @protected\n */\n _processStartTag(token) {\n if (this.shouldProcessStartTagTokenInForeignContent(token)) {\n startTagInForeignContent(this, token);\n } else {\n this._startTagOutsideForeignContent(token);\n }\n }\n /** @protected */\n _startTagOutsideForeignContent(token) {\n switch (this.insertionMode) {\n case InsertionMode.INITIAL: {\n tokenInInitialMode(this, token);\n break;\n }\n case InsertionMode.BEFORE_HTML: {\n startTagBeforeHtml(this, token);\n break;\n }\n case InsertionMode.BEFORE_HEAD: {\n startTagBeforeHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD: {\n startTagInHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD_NO_SCRIPT: {\n startTagInHeadNoScript(this, token);\n break;\n }\n case InsertionMode.AFTER_HEAD: {\n startTagAfterHead(this, token);\n break;\n }\n case InsertionMode.IN_BODY: {\n startTagInBody(this, token);\n break;\n }\n case InsertionMode.IN_TABLE: {\n startTagInTable(this, token);\n break;\n }\n case InsertionMode.IN_TABLE_TEXT: {\n tokenInTableText(this, token);\n break;\n }\n case InsertionMode.IN_CAPTION: {\n startTagInCaption(this, token);\n break;\n }\n case InsertionMode.IN_COLUMN_GROUP: {\n startTagInColumnGroup(this, token);\n break;\n }\n case InsertionMode.IN_TABLE_BODY: {\n startTagInTableBody(this, token);\n break;\n }\n case InsertionMode.IN_ROW: {\n startTagInRow(this, token);\n break;\n }\n case InsertionMode.IN_CELL: {\n startTagInCell(this, token);\n break;\n }\n case InsertionMode.IN_SELECT: {\n startTagInSelect(this, token);\n break;\n }\n case InsertionMode.IN_SELECT_IN_TABLE: {\n startTagInSelectInTable(this, token);\n break;\n }\n case InsertionMode.IN_TEMPLATE: {\n startTagInTemplate(this, token);\n break;\n }\n case InsertionMode.AFTER_BODY: {\n startTagAfterBody(this, token);\n break;\n }\n case InsertionMode.IN_FRAMESET: {\n startTagInFrameset(this, token);\n break;\n }\n case InsertionMode.AFTER_FRAMESET: {\n startTagAfterFrameset(this, token);\n break;\n }\n case InsertionMode.AFTER_AFTER_BODY: {\n startTagAfterAfterBody(this, token);\n break;\n }\n case InsertionMode.AFTER_AFTER_FRAMESET: {\n startTagAfterAfterFrameset(this, token);\n break;\n }\n }\n }\n /** @internal */\n onEndTag(token) {\n this.skipNextNewLine = false;\n this.currentToken = token;\n if (this.currentNotInHTML) {\n endTagInForeignContent(this, token);\n } else {\n this._endTagOutsideForeignContent(token);\n }\n }\n /** @protected */\n _endTagOutsideForeignContent(token) {\n switch (this.insertionMode) {\n case InsertionMode.INITIAL: {\n tokenInInitialMode(this, token);\n break;\n }\n case InsertionMode.BEFORE_HTML: {\n endTagBeforeHtml(this, token);\n break;\n }\n case InsertionMode.BEFORE_HEAD: {\n endTagBeforeHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD: {\n endTagInHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD_NO_SCRIPT: {\n endTagInHeadNoScript(this, token);\n break;\n }\n case InsertionMode.AFTER_HEAD: {\n endTagAfterHead(this, token);\n break;\n }\n case InsertionMode.IN_BODY: {\n endTagInBody(this, token);\n break;\n }\n case InsertionMode.TEXT: {\n endTagInText(this, token);\n break;\n }\n case InsertionMode.IN_TABLE: {\n endTagInTable(this, token);\n break;\n }\n case InsertionMode.IN_TABLE_TEXT: {\n tokenInTableText(this, token);\n break;\n }\n case InsertionMode.IN_CAPTION: {\n endTagInCaption(this, token);\n break;\n }\n case InsertionMode.IN_COLUMN_GROUP: {\n endTagInColumnGroup(this, token);\n break;\n }\n case InsertionMode.IN_TABLE_BODY: {\n endTagInTableBody(this, token);\n break;\n }\n case InsertionMode.IN_ROW: {\n endTagInRow(this, token);\n break;\n }\n case InsertionMode.IN_CELL: {\n endTagInCell(this, token);\n break;\n }\n case InsertionMode.IN_SELECT: {\n endTagInSelect(this, token);\n break;\n }\n case InsertionMode.IN_SELECT_IN_TABLE: {\n endTagInSelectInTable(this, token);\n break;\n }\n case InsertionMode.IN_TEMPLATE: {\n endTagInTemplate(this, token);\n break;\n }\n case InsertionMode.AFTER_BODY: {\n endTagAfterBody(this, token);\n break;\n }\n case InsertionMode.IN_FRAMESET: {\n endTagInFrameset(this, token);\n break;\n }\n case InsertionMode.AFTER_FRAMESET: {\n endTagAfterFrameset(this, token);\n break;\n }\n case InsertionMode.AFTER_AFTER_BODY: {\n tokenAfterAfterBody(this, token);\n break;\n }\n }\n }\n /** @internal */\n onEof(token) {\n switch (this.insertionMode) {\n case InsertionMode.INITIAL: {\n tokenInInitialMode(this, token);\n break;\n }\n case InsertionMode.BEFORE_HTML: {\n tokenBeforeHtml(this, token);\n break;\n }\n case InsertionMode.BEFORE_HEAD: {\n tokenBeforeHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD: {\n tokenInHead(this, token);\n break;\n }\n case InsertionMode.IN_HEAD_NO_SCRIPT: {\n tokenInHeadNoScript(this, token);\n break;\n }\n case InsertionMode.AFTER_HEAD: {\n tokenAfterHead(this, token);\n break;\n }\n case InsertionMode.IN_BODY:\n case InsertionMode.IN_TABLE:\n case InsertionMode.IN_CAPTION:\n case InsertionMode.IN_COLUMN_GROUP:\n case InsertionMode.IN_TABLE_BODY:\n case InsertionMode.IN_ROW:\n case InsertionMode.IN_CELL:\n case InsertionMode.IN_SELECT:\n case InsertionMode.IN_SELECT_IN_TABLE: {\n eofInBody(this, token);\n break;\n }\n case InsertionMode.TEXT: {\n eofInText(this, token);\n break;\n }\n case InsertionMode.IN_TABLE_TEXT: {\n tokenInTableText(this, token);\n break;\n }\n case InsertionMode.IN_TEMPLATE: {\n eofInTemplate(this, token);\n break;\n }\n case InsertionMode.AFTER_BODY:\n case InsertionMode.IN_FRAMESET:\n case InsertionMode.AFTER_FRAMESET:\n case InsertionMode.AFTER_AFTER_BODY:\n case InsertionMode.AFTER_AFTER_FRAMESET: {\n stopParsing(this, token);\n break;\n }\n }\n }\n /** @internal */\n onWhitespaceCharacter(token) {\n if (this.skipNextNewLine) {\n this.skipNextNewLine = false;\n if (token.chars.charCodeAt(0) === CODE_POINTS.LINE_FEED) {\n if (token.chars.length === 1) {\n return;\n }\n token.chars = token.chars.substr(1);\n }\n }\n if (this.tokenizer.inForeignNode) {\n this._insertCharacters(token);\n return;\n }\n switch (this.insertionMode) {\n case InsertionMode.IN_HEAD:\n case InsertionMode.IN_HEAD_NO_SCRIPT:\n case InsertionMode.AFTER_HEAD:\n case InsertionMode.TEXT:\n case InsertionMode.IN_COLUMN_GROUP:\n case InsertionMode.IN_SELECT:\n case InsertionMode.IN_SELECT_IN_TABLE:\n case InsertionMode.IN_FRAMESET:\n case InsertionMode.AFTER_FRAMESET: {\n this._insertCharacters(token);\n break;\n }\n case InsertionMode.IN_BODY:\n case InsertionMode.IN_CAPTION:\n case InsertionMode.IN_CELL:\n case InsertionMode.IN_TEMPLATE:\n case InsertionMode.AFTER_BODY:\n case InsertionMode.AFTER_AFTER_BODY:\n case InsertionMode.AFTER_AFTER_FRAMESET: {\n whitespaceCharacterInBody(this, token);\n break;\n }\n case InsertionMode.IN_TABLE:\n case InsertionMode.IN_TABLE_BODY:\n case InsertionMode.IN_ROW: {\n characterInTable(this, token);\n break;\n }\n case InsertionMode.IN_TABLE_TEXT: {\n whitespaceCharacterInTableText(this, token);\n break;\n }\n }\n }\n}\nfunction aaObtainFormattingElementEntry(p, token) {\n let formattingElementEntry = p.activeFormattingElements.getElementEntryInScopeWithTagName(token.tagName);\n if (formattingElementEntry) {\n if (!p.openElements.contains(formattingElementEntry.element)) {\n p.activeFormattingElements.removeEntry(formattingElementEntry);\n formattingElementEntry = null;\n } else if (!p.openElements.hasInScope(token.tagID)) {\n formattingElementEntry = null;\n }\n } else {\n genericEndTagInBody(p, token);\n }\n return formattingElementEntry;\n}\nfunction aaObtainFurthestBlock(p, formattingElementEntry) {\n let furthestBlock = null;\n let idx = p.openElements.stackTop;\n for (; idx >= 0; idx--) {\n const element = p.openElements.items[idx];\n if (element === formattingElementEntry.element) {\n break;\n }\n if (p._isSpecialElement(element, p.openElements.tagIDs[idx])) {\n furthestBlock = element;\n }\n }\n if (!furthestBlock) {\n p.openElements.shortenToLength(Math.max(idx, 0));\n p.activeFormattingElements.removeEntry(formattingElementEntry);\n }\n return furthestBlock;\n}\nfunction aaInnerLoop(p, furthestBlock, formattingElement) {\n let lastElement = furthestBlock;\n let nextElement = p.openElements.getCommonAncestor(furthestBlock);\n for (let i = 0, element = nextElement; element !== formattingElement; i++, element = nextElement) {\n nextElement = p.openElements.getCommonAncestor(element);\n const elementEntry = p.activeFormattingElements.getElementEntry(element);\n const counterOverflow = elementEntry && i >= AA_INNER_LOOP_ITER;\n const shouldRemoveFromOpenElements = !elementEntry || counterOverflow;\n if (shouldRemoveFromOpenElements) {\n if (counterOverflow) {\n p.activeFormattingElements.removeEntry(elementEntry);\n }\n p.openElements.remove(element);\n } else {\n element = aaRecreateElementFromEntry(p, elementEntry);\n if (lastElement === furthestBlock) {\n p.activeFormattingElements.bookmark = elementEntry;\n }\n p.treeAdapter.detachNode(lastElement);\n p.treeAdapter.appendChild(element, lastElement);\n lastElement = element;\n }\n }\n return lastElement;\n}\nfunction aaRecreateElementFromEntry(p, elementEntry) {\n const ns = p.treeAdapter.getNamespaceURI(elementEntry.element);\n const newElement = p.treeAdapter.createElement(elementEntry.token.tagName, ns, elementEntry.token.attrs);\n p.openElements.replace(elementEntry.element, newElement);\n elementEntry.element = newElement;\n return newElement;\n}\nfunction aaInsertLastNodeInCommonAncestor(p, commonAncestor, lastElement) {\n const tn = p.treeAdapter.getTagName(commonAncestor);\n const tid = getTagID(tn);\n if (p._isElementCausesFosterParenting(tid)) {\n p._fosterParentElement(lastElement);\n } else {\n const ns = p.treeAdapter.getNamespaceURI(commonAncestor);\n if (tid === TAG_ID.TEMPLATE && ns === NS.HTML) {\n commonAncestor = p.treeAdapter.getTemplateContent(commonAncestor);\n }\n p.treeAdapter.appendChild(commonAncestor, lastElement);\n }\n}\nfunction aaReplaceFormattingElement(p, furthestBlock, formattingElementEntry) {\n const ns = p.treeAdapter.getNamespaceURI(formattingElementEntry.element);\n const { token } = formattingElementEntry;\n const newElement = p.treeAdapter.createElement(token.tagName, ns, token.attrs);\n p._adoptNodes(furthestBlock, newElement);\n p.treeAdapter.appendChild(furthestBlock, newElement);\n p.activeFormattingElements.insertElementAfterBookmark(newElement, token);\n p.activeFormattingElements.removeEntry(formattingElementEntry);\n p.openElements.remove(formattingElementEntry.element);\n p.openElements.insertAfter(furthestBlock, newElement, token.tagID);\n}\nfunction callAdoptionAgency(p, token) {\n for (let i = 0; i < AA_OUTER_LOOP_ITER; i++) {\n const formattingElementEntry = aaObtainFormattingElementEntry(p, token);\n if (!formattingElementEntry) {\n break;\n }\n const furthestBlock = aaObtainFurthestBlock(p, formattingElementEntry);\n if (!furthestBlock) {\n break;\n }\n p.activeFormattingElements.bookmark = formattingElementEntry;\n const lastElement = aaInnerLoop(p, furthestBlock, formattingElementEntry.element);\n const commonAncestor = p.openElements.getCommonAncestor(formattingElementEntry.element);\n p.treeAdapter.detachNode(lastElement);\n if (commonAncestor)\n aaInsertLastNodeInCommonAncestor(p, commonAncestor, lastElement);\n aaReplaceFormattingElement(p, furthestBlock, formattingElementEntry);\n }\n}\nfunction appendComment(p, token) {\n p._appendCommentNode(token, p.openElements.currentTmplContentOrNode);\n}\nfunction appendCommentToRootHtmlElement(p, token) {\n p._appendCommentNode(token, p.openElements.items[0]);\n}\nfunction appendCommentToDocument(p, token) {\n p._appendCommentNode(token, p.document);\n}\nfunction stopParsing(p, token) {\n p.stopped = true;\n if (token.location) {\n const target = p.fragmentContext ? 0 : 2;\n for (let i = p.openElements.stackTop; i >= target; i--) {\n p._setEndLocation(p.openElements.items[i], token);\n }\n if (!p.fragmentContext && p.openElements.stackTop >= 0) {\n const htmlElement = p.openElements.items[0];\n const htmlLocation = p.treeAdapter.getNodeSourceCodeLocation(htmlElement);\n if (htmlLocation && !htmlLocation.endTag) {\n p._setEndLocation(htmlElement, token);\n if (p.openElements.stackTop >= 1) {\n const bodyElement = p.openElements.items[1];\n const bodyLocation = p.treeAdapter.getNodeSourceCodeLocation(bodyElement);\n if (bodyLocation && !bodyLocation.endTag) {\n p._setEndLocation(bodyElement, token);\n }\n }\n }\n }\n }\n}\nfunction doctypeInInitialMode(p, token) {\n p._setDocumentType(token);\n const mode = token.forceQuirks ? DOCUMENT_MODE.QUIRKS : getDocumentMode(token);\n if (!isConforming(token)) {\n p._err(token, ERR.nonConformingDoctype);\n }\n p.treeAdapter.setDocumentMode(p.document, mode);\n p.insertionMode = InsertionMode.BEFORE_HTML;\n}\nfunction tokenInInitialMode(p, token) {\n p._err(token, ERR.missingDoctype, true);\n p.treeAdapter.setDocumentMode(p.document, DOCUMENT_MODE.QUIRKS);\n p.insertionMode = InsertionMode.BEFORE_HTML;\n p._processToken(token);\n}\nfunction startTagBeforeHtml(p, token) {\n if (token.tagID === TAG_ID.HTML) {\n p._insertElement(token, NS.HTML);\n p.insertionMode = InsertionMode.BEFORE_HEAD;\n } else {\n tokenBeforeHtml(p, token);\n }\n}\nfunction endTagBeforeHtml(p, token) {\n const tn = token.tagID;\n if (tn === TAG_ID.HTML || tn === TAG_ID.HEAD || tn === TAG_ID.BODY || tn === TAG_ID.BR) {\n tokenBeforeHtml(p, token);\n }\n}\nfunction tokenBeforeHtml(p, token) {\n p._insertFakeRootElement();\n p.insertionMode = InsertionMode.BEFORE_HEAD;\n p._processToken(token);\n}\nfunction startTagBeforeHead(p, token) {\n switch (token.tagID) {\n case TAG_ID.HTML: {\n startTagInBody(p, token);\n break;\n }\n case TAG_ID.HEAD: {\n p._insertElement(token, NS.HTML);\n p.headElement = p.openElements.current;\n p.insertionMode = InsertionMode.IN_HEAD;\n break;\n }\n default: {\n tokenBeforeHead(p, token);\n }\n }\n}\nfunction endTagBeforeHead(p, token) {\n const tn = token.tagID;\n if (tn === TAG_ID.HEAD || tn === TAG_ID.BODY || tn === TAG_ID.HTML || tn === TAG_ID.BR) {\n tokenBeforeHead(p, token);\n } else {\n p._err(token, ERR.endTagWithoutMatchingOpenElement);\n }\n}\nfunction tokenBeforeHead(p, token) {\n p._insertFakeElement(TAG_NAMES.HEAD, TAG_ID.HEAD);\n p.headElement = p.openElements.current;\n p.insertionMode = InsertionMode.IN_HEAD;\n p._processToken(token);\n}\nfunction startTagInHead(p, token) {\n switch (token.tagID) {\n case TAG_ID.HTML: {\n startTagInBody(p, token);\n break;\n }\n case TAG_ID.BASE:\n case TAG_ID.BASEFONT:\n case TAG_ID.BGSOUND:\n case TAG_ID.LINK:\n case TAG_ID.META: {\n p._appendElement(token, NS.HTML);\n token.ackSelfClosing = true;\n break;\n }\n case TAG_ID.TITLE: {\n p._switchToTextParsing(token, TokenizerMode.RCDATA);\n break;\n }\n case TAG_ID.NOSCRIPT: {\n if (p.options.scriptingEnabled) {\n p._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n } else {\n p._insertElement(token, NS.HTML);\n p.insertionMode = InsertionMode.IN_HEAD_NO_SCRIPT;\n }\n break;\n }\n case TAG_ID.NOFRAMES:\n case TAG_ID.STYLE: {\n p._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n break;\n }\n case TAG_ID.SCRIPT: {\n p._switchToTextParsing(token, TokenizerMode.SCRIPT_DATA);\n break;\n }\n case TAG_ID.TEMPLATE: {\n p._insertTemplate(token);\n p.activeFormattingElements.insertMarker();\n p.framesetOk = false;\n p.insertionMode = InsertionMode.IN_TEMPLATE;\n p.tmplInsertionModeStack.unshift(InsertionMode.IN_TEMPLATE);\n break;\n }\n case TAG_ID.HEAD: {\n p._err(token, ERR.misplacedStartTagForHeadElement);\n break;\n }\n default: {\n tokenInHead(p, token);\n }\n }\n}\nfunction endTagInHead(p, token) {\n switch (token.tagID) {\n case TAG_ID.HEAD: {\n p.openElements.pop();\n p.insertionMode = InsertionMode.AFTER_HEAD;\n break;\n }\n case TAG_ID.BODY:\n case TAG_ID.BR:\n case TAG_ID.HTML: {\n tokenInHead(p, token);\n break;\n }\n case TAG_ID.TEMPLATE: {\n templateEndTagInHead(p, token);\n break;\n }\n default: {\n p._err(token, ERR.endTagWithoutMatchingOpenElement);\n }\n }\n}\nfunction templateEndTagInHead(p, token) {\n if (p.openElements.tmplCount > 0) {\n p.openElements.generateImpliedEndTagsThoroughly();\n if (p.openElements.currentTagId !== TAG_ID.TEMPLATE) {\n p._err(token, ERR.closingOfElementWithOpenChildElements);\n }\n p.openElements.popUntilTagNamePopped(TAG_ID.TEMPLATE);\n p.activeFormattingElements.clearToLastMarker();\n p.tmplInsertionModeStack.shift();\n p._resetInsertionMode();\n } else {\n p._err(token, ERR.endTagWithoutMatchingOpenElement);\n }\n}\nfunction tokenInHead(p, token) {\n p.openElements.pop();\n p.insertionMode = InsertionMode.AFTER_HEAD;\n p._processToken(token);\n}\nfunction startTagInHeadNoScript(p, token) {\n switch (token.tagID) {\n case TAG_ID.HTML: {\n startTagInBody(p, token);\n break;\n }\n case TAG_ID.BASEFONT:\n case TAG_ID.BGSOUND:\n case TAG_ID.HEAD:\n case TAG_ID.LINK:\n case TAG_ID.META:\n case TAG_ID.NOFRAMES:\n case TAG_ID.STYLE: {\n startTagInHead(p, token);\n break;\n }\n case TAG_ID.NOSCRIPT: {\n p._err(token, ERR.nestedNoscriptInHead);\n break;\n }\n default: {\n tokenInHeadNoScript(p, token);\n }\n }\n}\nfunction endTagInHeadNoScript(p, token) {\n switch (token.tagID) {\n case TAG_ID.NOSCRIPT: {\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_HEAD;\n break;\n }\n case TAG_ID.BR: {\n tokenInHeadNoScript(p, token);\n break;\n }\n default: {\n p._err(token, ERR.endTagWithoutMatchingOpenElement);\n }\n }\n}\nfunction tokenInHeadNoScript(p, token) {\n const errCode = token.type === TokenType.EOF ? ERR.openElementsLeftAfterEof : ERR.disallowedContentInNoscriptInHead;\n p._err(token, errCode);\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_HEAD;\n p._processToken(token);\n}\nfunction startTagAfterHead(p, token) {\n switch (token.tagID) {\n case TAG_ID.HTML: {\n startTagInBody(p, token);\n break;\n }\n case TAG_ID.BODY: {\n p._insertElement(token, NS.HTML);\n p.framesetOk = false;\n p.insertionMode = InsertionMode.IN_BODY;\n break;\n }\n case TAG_ID.FRAMESET: {\n p._insertElement(token, NS.HTML);\n p.insertionMode = InsertionMode.IN_FRAMESET;\n break;\n }\n case TAG_ID.BASE:\n case TAG_ID.BASEFONT:\n case TAG_ID.BGSOUND:\n case TAG_ID.LINK:\n case TAG_ID.META:\n case TAG_ID.NOFRAMES:\n case TAG_ID.SCRIPT:\n case TAG_ID.STYLE:\n case TAG_ID.TEMPLATE:\n case TAG_ID.TITLE: {\n p._err(token, ERR.abandonedHeadElementChild);\n p.openElements.push(p.headElement, TAG_ID.HEAD);\n startTagInHead(p, token);\n p.openElements.remove(p.headElement);\n break;\n }\n case TAG_ID.HEAD: {\n p._err(token, ERR.misplacedStartTagForHeadElement);\n break;\n }\n default: {\n tokenAfterHead(p, token);\n }\n }\n}\nfunction endTagAfterHead(p, token) {\n switch (token.tagID) {\n case TAG_ID.BODY:\n case TAG_ID.HTML:\n case TAG_ID.BR: {\n tokenAfterHead(p, token);\n break;\n }\n case TAG_ID.TEMPLATE: {\n templateEndTagInHead(p, token);\n break;\n }\n default: {\n p._err(token, ERR.endTagWithoutMatchingOpenElement);\n }\n }\n}\nfunction tokenAfterHead(p, token) {\n p._insertFakeElement(TAG_NAMES.BODY, TAG_ID.BODY);\n p.insertionMode = InsertionMode.IN_BODY;\n modeInBody(p, token);\n}\nfunction modeInBody(p, token) {\n switch (token.type) {\n case TokenType.CHARACTER: {\n characterInBody(p, token);\n break;\n }\n case TokenType.WHITESPACE_CHARACTER: {\n whitespaceCharacterInBody(p, token);\n break;\n }\n case TokenType.COMMENT: {\n appendComment(p, token);\n break;\n }\n case TokenType.START_TAG: {\n startTagInBody(p, token);\n break;\n }\n case TokenType.END_TAG: {\n endTagInBody(p, token);\n break;\n }\n case TokenType.EOF: {\n eofInBody(p, token);\n break;\n }\n }\n}\nfunction whitespaceCharacterInBody(p, token) {\n p._reconstructActiveFormattingElements();\n p._insertCharacters(token);\n}\nfunction characterInBody(p, token) {\n p._reconstructActiveFormattingElements();\n p._insertCharacters(token);\n p.framesetOk = false;\n}\nfunction htmlStartTagInBody(p, token) {\n if (p.openElements.tmplCount === 0) {\n p.treeAdapter.adoptAttributes(p.openElements.items[0], token.attrs);\n }\n}\nfunction bodyStartTagInBody(p, token) {\n const bodyElement = p.openElements.tryPeekProperlyNestedBodyElement();\n if (bodyElement && p.openElements.tmplCount === 0) {\n p.framesetOk = false;\n p.treeAdapter.adoptAttributes(bodyElement, token.attrs);\n }\n}\nfunction framesetStartTagInBody(p, token) {\n const bodyElement = p.openElements.tryPeekProperlyNestedBodyElement();\n if (p.framesetOk && bodyElement) {\n p.treeAdapter.detachNode(bodyElement);\n p.openElements.popAllUpToHtmlElement();\n p._insertElement(token, NS.HTML);\n p.insertionMode = InsertionMode.IN_FRAMESET;\n }\n}\nfunction addressStartTagInBody(p, token) {\n if (p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._closePElement();\n }\n p._insertElement(token, NS.HTML);\n}\nfunction numberedHeaderStartTagInBody(p, token) {\n if (p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._closePElement();\n }\n if (p.openElements.currentTagId !== void 0 && NUMBERED_HEADERS.has(p.openElements.currentTagId)) {\n p.openElements.pop();\n }\n p._insertElement(token, NS.HTML);\n}\nfunction preStartTagInBody(p, token) {\n if (p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._closePElement();\n }\n p._insertElement(token, NS.HTML);\n p.skipNextNewLine = true;\n p.framesetOk = false;\n}\nfunction formStartTagInBody(p, token) {\n const inTemplate = p.openElements.tmplCount > 0;\n if (!p.formElement || inTemplate) {\n if (p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._closePElement();\n }\n p._insertElement(token, NS.HTML);\n if (!inTemplate) {\n p.formElement = p.openElements.current;\n }\n }\n}\nfunction listItemStartTagInBody(p, token) {\n p.framesetOk = false;\n const tn = token.tagID;\n for (let i = p.openElements.stackTop; i >= 0; i--) {\n const elementId = p.openElements.tagIDs[i];\n if (tn === TAG_ID.LI && elementId === TAG_ID.LI || (tn === TAG_ID.DD || tn === TAG_ID.DT) && (elementId === TAG_ID.DD || elementId === TAG_ID.DT)) {\n p.openElements.generateImpliedEndTagsWithExclusion(elementId);\n p.openElements.popUntilTagNamePopped(elementId);\n break;\n }\n if (elementId !== TAG_ID.ADDRESS && elementId !== TAG_ID.DIV && elementId !== TAG_ID.P && p._isSpecialElement(p.openElements.items[i], elementId)) {\n break;\n }\n }\n if (p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._closePElement();\n }\n p._insertElement(token, NS.HTML);\n}\nfunction plaintextStartTagInBody(p, token) {\n if (p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._closePElement();\n }\n p._insertElement(token, NS.HTML);\n p.tokenizer.state = TokenizerMode.PLAINTEXT;\n}\nfunction buttonStartTagInBody(p, token) {\n if (p.openElements.hasInScope(TAG_ID.BUTTON)) {\n p.openElements.generateImpliedEndTags();\n p.openElements.popUntilTagNamePopped(TAG_ID.BUTTON);\n }\n p._reconstructActiveFormattingElements();\n p._insertElement(token, NS.HTML);\n p.framesetOk = false;\n}\nfunction aStartTagInBody(p, token) {\n const activeElementEntry = p.activeFormattingElements.getElementEntryInScopeWithTagName(TAG_NAMES.A);\n if (activeElementEntry) {\n callAdoptionAgency(p, token);\n p.openElements.remove(activeElementEntry.element);\n p.activeFormattingElements.removeEntry(activeElementEntry);\n }\n p._reconstructActiveFormattingElements();\n p._insertElement(token, NS.HTML);\n p.activeFormattingElements.pushElement(p.openElements.current, token);\n}\nfunction bStartTagInBody(p, token) {\n p._reconstructActiveFormattingElements();\n p._insertElement(token, NS.HTML);\n p.activeFormattingElements.pushElement(p.openElements.current, token);\n}\nfunction nobrStartTagInBody(p, token) {\n p._reconstructActiveFormattingElements();\n if (p.openElements.hasInScope(TAG_ID.NOBR)) {\n callAdoptionAgency(p, token);\n p._reconstructActiveFormattingElements();\n }\n p._insertElement(token, NS.HTML);\n p.activeFormattingElements.pushElement(p.openElements.current, token);\n}\nfunction appletStartTagInBody(p, token) {\n p._reconstructActiveFormattingElements();\n p._insertElement(token, NS.HTML);\n p.activeFormattingElements.insertMarker();\n p.framesetOk = false;\n}\nfunction tableStartTagInBody(p, token) {\n if (p.treeAdapter.getDocumentMode(p.document) !== DOCUMENT_MODE.QUIRKS && p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._closePElement();\n }\n p._insertElement(token, NS.HTML);\n p.framesetOk = false;\n p.insertionMode = InsertionMode.IN_TABLE;\n}\nfunction areaStartTagInBody(p, token) {\n p._reconstructActiveFormattingElements();\n p._appendElement(token, NS.HTML);\n p.framesetOk = false;\n token.ackSelfClosing = true;\n}\nfunction isHiddenInput(token) {\n const inputType = getTokenAttr(token, ATTRS.TYPE);\n return inputType != null && inputType.toLowerCase() === HIDDEN_INPUT_TYPE;\n}\nfunction inputStartTagInBody(p, token) {\n p._reconstructActiveFormattingElements();\n p._appendElement(token, NS.HTML);\n if (!isHiddenInput(token)) {\n p.framesetOk = false;\n }\n token.ackSelfClosing = true;\n}\nfunction paramStartTagInBody(p, token) {\n p._appendElement(token, NS.HTML);\n token.ackSelfClosing = true;\n}\nfunction hrStartTagInBody(p, token) {\n if (p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._closePElement();\n }\n p._appendElement(token, NS.HTML);\n p.framesetOk = false;\n token.ackSelfClosing = true;\n}\nfunction imageStartTagInBody(p, token) {\n token.tagName = TAG_NAMES.IMG;\n token.tagID = TAG_ID.IMG;\n areaStartTagInBody(p, token);\n}\nfunction textareaStartTagInBody(p, token) {\n p._insertElement(token, NS.HTML);\n p.skipNextNewLine = true;\n p.tokenizer.state = TokenizerMode.RCDATA;\n p.originalInsertionMode = p.insertionMode;\n p.framesetOk = false;\n p.insertionMode = InsertionMode.TEXT;\n}\nfunction xmpStartTagInBody(p, token) {\n if (p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._closePElement();\n }\n p._reconstructActiveFormattingElements();\n p.framesetOk = false;\n p._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n}\nfunction iframeStartTagInBody(p, token) {\n p.framesetOk = false;\n p._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n}\nfunction rawTextStartTagInBody(p, token) {\n p._switchToTextParsing(token, TokenizerMode.RAWTEXT);\n}\nfunction selectStartTagInBody(p, token) {\n p._reconstructActiveFormattingElements();\n p._insertElement(token, NS.HTML);\n p.framesetOk = false;\n p.insertionMode = p.insertionMode === InsertionMode.IN_TABLE || p.insertionMode === InsertionMode.IN_CAPTION || p.insertionMode === InsertionMode.IN_TABLE_BODY || p.insertionMode === InsertionMode.IN_ROW || p.insertionMode === InsertionMode.IN_CELL ? InsertionMode.IN_SELECT_IN_TABLE : InsertionMode.IN_SELECT;\n}\nfunction optgroupStartTagInBody(p, token) {\n if (p.openElements.currentTagId === TAG_ID.OPTION) {\n p.openElements.pop();\n }\n p._reconstructActiveFormattingElements();\n p._insertElement(token, NS.HTML);\n}\nfunction rbStartTagInBody(p, token) {\n if (p.openElements.hasInScope(TAG_ID.RUBY)) {\n p.openElements.generateImpliedEndTags();\n }\n p._insertElement(token, NS.HTML);\n}\nfunction rtStartTagInBody(p, token) {\n if (p.openElements.hasInScope(TAG_ID.RUBY)) {\n p.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.RTC);\n }\n p._insertElement(token, NS.HTML);\n}\nfunction mathStartTagInBody(p, token) {\n p._reconstructActiveFormattingElements();\n adjustTokenMathMLAttrs(token);\n adjustTokenXMLAttrs(token);\n if (token.selfClosing) {\n p._appendElement(token, NS.MATHML);\n } else {\n p._insertElement(token, NS.MATHML);\n }\n token.ackSelfClosing = true;\n}\nfunction svgStartTagInBody(p, token) {\n p._reconstructActiveFormattingElements();\n adjustTokenSVGAttrs(token);\n adjustTokenXMLAttrs(token);\n if (token.selfClosing) {\n p._appendElement(token, NS.SVG);\n } else {\n p._insertElement(token, NS.SVG);\n }\n token.ackSelfClosing = true;\n}\nfunction genericStartTagInBody(p, token) {\n p._reconstructActiveFormattingElements();\n p._insertElement(token, NS.HTML);\n}\nfunction startTagInBody(p, token) {\n switch (token.tagID) {\n case TAG_ID.I:\n case TAG_ID.S:\n case TAG_ID.B:\n case TAG_ID.U:\n case TAG_ID.EM:\n case TAG_ID.TT:\n case TAG_ID.BIG:\n case TAG_ID.CODE:\n case TAG_ID.FONT:\n case TAG_ID.SMALL:\n case TAG_ID.STRIKE:\n case TAG_ID.STRONG: {\n bStartTagInBody(p, token);\n break;\n }\n case TAG_ID.A: {\n aStartTagInBody(p, token);\n break;\n }\n case TAG_ID.H1:\n case TAG_ID.H2:\n case TAG_ID.H3:\n case TAG_ID.H4:\n case TAG_ID.H5:\n case TAG_ID.H6: {\n numberedHeaderStartTagInBody(p, token);\n break;\n }\n case TAG_ID.P:\n case TAG_ID.DL:\n case TAG_ID.OL:\n case TAG_ID.UL:\n case TAG_ID.DIV:\n case TAG_ID.DIR:\n case TAG_ID.NAV:\n case TAG_ID.MAIN:\n case TAG_ID.MENU:\n case TAG_ID.ASIDE:\n case TAG_ID.CENTER:\n case TAG_ID.FIGURE:\n case TAG_ID.FOOTER:\n case TAG_ID.HEADER:\n case TAG_ID.HGROUP:\n case TAG_ID.DIALOG:\n case TAG_ID.DETAILS:\n case TAG_ID.ADDRESS:\n case TAG_ID.ARTICLE:\n case TAG_ID.SEARCH:\n case TAG_ID.SECTION:\n case TAG_ID.SUMMARY:\n case TAG_ID.FIELDSET:\n case TAG_ID.BLOCKQUOTE:\n case TAG_ID.FIGCAPTION: {\n addressStartTagInBody(p, token);\n break;\n }\n case TAG_ID.LI:\n case TAG_ID.DD:\n case TAG_ID.DT: {\n listItemStartTagInBody(p, token);\n break;\n }\n case TAG_ID.BR:\n case TAG_ID.IMG:\n case TAG_ID.WBR:\n case TAG_ID.AREA:\n case TAG_ID.EMBED:\n case TAG_ID.KEYGEN: {\n areaStartTagInBody(p, token);\n break;\n }\n case TAG_ID.HR: {\n hrStartTagInBody(p, token);\n break;\n }\n case TAG_ID.RB:\n case TAG_ID.RTC: {\n rbStartTagInBody(p, token);\n break;\n }\n case TAG_ID.RT:\n case TAG_ID.RP: {\n rtStartTagInBody(p, token);\n break;\n }\n case TAG_ID.PRE:\n case TAG_ID.LISTING: {\n preStartTagInBody(p, token);\n break;\n }\n case TAG_ID.XMP: {\n xmpStartTagInBody(p, token);\n break;\n }\n case TAG_ID.SVG: {\n svgStartTagInBody(p, token);\n break;\n }\n case TAG_ID.HTML: {\n htmlStartTagInBody(p, token);\n break;\n }\n case TAG_ID.BASE:\n case TAG_ID.LINK:\n case TAG_ID.META:\n case TAG_ID.STYLE:\n case TAG_ID.TITLE:\n case TAG_ID.SCRIPT:\n case TAG_ID.BGSOUND:\n case TAG_ID.BASEFONT:\n case TAG_ID.TEMPLATE: {\n startTagInHead(p, token);\n break;\n }\n case TAG_ID.BODY: {\n bodyStartTagInBody(p, token);\n break;\n }\n case TAG_ID.FORM: {\n formStartTagInBody(p, token);\n break;\n }\n case TAG_ID.NOBR: {\n nobrStartTagInBody(p, token);\n break;\n }\n case TAG_ID.MATH: {\n mathStartTagInBody(p, token);\n break;\n }\n case TAG_ID.TABLE: {\n tableStartTagInBody(p, token);\n break;\n }\n case TAG_ID.INPUT: {\n inputStartTagInBody(p, token);\n break;\n }\n case TAG_ID.PARAM:\n case TAG_ID.TRACK:\n case TAG_ID.SOURCE: {\n paramStartTagInBody(p, token);\n break;\n }\n case TAG_ID.IMAGE: {\n imageStartTagInBody(p, token);\n break;\n }\n case TAG_ID.BUTTON: {\n buttonStartTagInBody(p, token);\n break;\n }\n case TAG_ID.APPLET:\n case TAG_ID.OBJECT:\n case TAG_ID.MARQUEE: {\n appletStartTagInBody(p, token);\n break;\n }\n case TAG_ID.IFRAME: {\n iframeStartTagInBody(p, token);\n break;\n }\n case TAG_ID.SELECT: {\n selectStartTagInBody(p, token);\n break;\n }\n case TAG_ID.OPTION:\n case TAG_ID.OPTGROUP: {\n optgroupStartTagInBody(p, token);\n break;\n }\n case TAG_ID.NOEMBED:\n case TAG_ID.NOFRAMES: {\n rawTextStartTagInBody(p, token);\n break;\n }\n case TAG_ID.FRAMESET: {\n framesetStartTagInBody(p, token);\n break;\n }\n case TAG_ID.TEXTAREA: {\n textareaStartTagInBody(p, token);\n break;\n }\n case TAG_ID.NOSCRIPT: {\n if (p.options.scriptingEnabled) {\n rawTextStartTagInBody(p, token);\n } else {\n genericStartTagInBody(p, token);\n }\n break;\n }\n case TAG_ID.PLAINTEXT: {\n plaintextStartTagInBody(p, token);\n break;\n }\n case TAG_ID.COL:\n case TAG_ID.TH:\n case TAG_ID.TD:\n case TAG_ID.TR:\n case TAG_ID.HEAD:\n case TAG_ID.FRAME:\n case TAG_ID.TBODY:\n case TAG_ID.TFOOT:\n case TAG_ID.THEAD:\n case TAG_ID.CAPTION:\n case TAG_ID.COLGROUP: {\n break;\n }\n default: {\n genericStartTagInBody(p, token);\n }\n }\n}\nfunction bodyEndTagInBody(p, token) {\n if (p.openElements.hasInScope(TAG_ID.BODY)) {\n p.insertionMode = InsertionMode.AFTER_BODY;\n if (p.options.sourceCodeLocationInfo) {\n const bodyElement = p.openElements.tryPeekProperlyNestedBodyElement();\n if (bodyElement) {\n p._setEndLocation(bodyElement, token);\n }\n }\n }\n}\nfunction htmlEndTagInBody(p, token) {\n if (p.openElements.hasInScope(TAG_ID.BODY)) {\n p.insertionMode = InsertionMode.AFTER_BODY;\n endTagAfterBody(p, token);\n }\n}\nfunction addressEndTagInBody(p, token) {\n const tn = token.tagID;\n if (p.openElements.hasInScope(tn)) {\n p.openElements.generateImpliedEndTags();\n p.openElements.popUntilTagNamePopped(tn);\n }\n}\nfunction formEndTagInBody(p) {\n const inTemplate = p.openElements.tmplCount > 0;\n const { formElement } = p;\n if (!inTemplate) {\n p.formElement = null;\n }\n if ((formElement || inTemplate) && p.openElements.hasInScope(TAG_ID.FORM)) {\n p.openElements.generateImpliedEndTags();\n if (inTemplate) {\n p.openElements.popUntilTagNamePopped(TAG_ID.FORM);\n } else if (formElement) {\n p.openElements.remove(formElement);\n }\n }\n}\nfunction pEndTagInBody(p) {\n if (!p.openElements.hasInButtonScope(TAG_ID.P)) {\n p._insertFakeElement(TAG_NAMES.P, TAG_ID.P);\n }\n p._closePElement();\n}\nfunction liEndTagInBody(p) {\n if (p.openElements.hasInListItemScope(TAG_ID.LI)) {\n p.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.LI);\n p.openElements.popUntilTagNamePopped(TAG_ID.LI);\n }\n}\nfunction ddEndTagInBody(p, token) {\n const tn = token.tagID;\n if (p.openElements.hasInScope(tn)) {\n p.openElements.generateImpliedEndTagsWithExclusion(tn);\n p.openElements.popUntilTagNamePopped(tn);\n }\n}\nfunction numberedHeaderEndTagInBody(p) {\n if (p.openElements.hasNumberedHeaderInScope()) {\n p.openElements.generateImpliedEndTags();\n p.openElements.popUntilNumberedHeaderPopped();\n }\n}\nfunction appletEndTagInBody(p, token) {\n const tn = token.tagID;\n if (p.openElements.hasInScope(tn)) {\n p.openElements.generateImpliedEndTags();\n p.openElements.popUntilTagNamePopped(tn);\n p.activeFormattingElements.clearToLastMarker();\n }\n}\nfunction brEndTagInBody(p) {\n p._reconstructActiveFormattingElements();\n p._insertFakeElement(TAG_NAMES.BR, TAG_ID.BR);\n p.openElements.pop();\n p.framesetOk = false;\n}\nfunction genericEndTagInBody(p, token) {\n const tn = token.tagName;\n const tid = token.tagID;\n for (let i = p.openElements.stackTop; i > 0; i--) {\n const element = p.openElements.items[i];\n const elementId = p.openElements.tagIDs[i];\n if (tid === elementId && (tid !== TAG_ID.UNKNOWN || p.treeAdapter.getTagName(element) === tn)) {\n p.openElements.generateImpliedEndTagsWithExclusion(tid);\n if (p.openElements.stackTop >= i)\n p.openElements.shortenToLength(i);\n break;\n }\n if (p._isSpecialElement(element, elementId)) {\n break;\n }\n }\n}\nfunction endTagInBody(p, token) {\n switch (token.tagID) {\n case TAG_ID.A:\n case TAG_ID.B:\n case TAG_ID.I:\n case TAG_ID.S:\n case TAG_ID.U:\n case TAG_ID.EM:\n case TAG_ID.TT:\n case TAG_ID.BIG:\n case TAG_ID.CODE:\n case TAG_ID.FONT:\n case TAG_ID.NOBR:\n case TAG_ID.SMALL:\n case TAG_ID.STRIKE:\n case TAG_ID.STRONG: {\n callAdoptionAgency(p, token);\n break;\n }\n case TAG_ID.P: {\n pEndTagInBody(p);\n break;\n }\n case TAG_ID.DL:\n case TAG_ID.UL:\n case TAG_ID.OL:\n case TAG_ID.DIR:\n case TAG_ID.DIV:\n case TAG_ID.NAV:\n case TAG_ID.PRE:\n case TAG_ID.MAIN:\n case TAG_ID.MENU:\n case TAG_ID.ASIDE:\n case TAG_ID.BUTTON:\n case TAG_ID.CENTER:\n case TAG_ID.FIGURE:\n case TAG_ID.FOOTER:\n case TAG_ID.HEADER:\n case TAG_ID.HGROUP:\n case TAG_ID.DIALOG:\n case TAG_ID.ADDRESS:\n case TAG_ID.ARTICLE:\n case TAG_ID.DETAILS:\n case TAG_ID.SEARCH:\n case TAG_ID.SECTION:\n case TAG_ID.SUMMARY:\n case TAG_ID.LISTING:\n case TAG_ID.FIELDSET:\n case TAG_ID.BLOCKQUOTE:\n case TAG_ID.FIGCAPTION: {\n addressEndTagInBody(p, token);\n break;\n }\n case TAG_ID.LI: {\n liEndTagInBody(p);\n break;\n }\n case TAG_ID.DD:\n case TAG_ID.DT: {\n ddEndTagInBody(p, token);\n break;\n }\n case TAG_ID.H1:\n case TAG_ID.H2:\n case TAG_ID.H3:\n case TAG_ID.H4:\n case TAG_ID.H5:\n case TAG_ID.H6: {\n numberedHeaderEndTagInBody(p);\n break;\n }\n case TAG_ID.BR: {\n brEndTagInBody(p);\n break;\n }\n case TAG_ID.BODY: {\n bodyEndTagInBody(p, token);\n break;\n }\n case TAG_ID.HTML: {\n htmlEndTagInBody(p, token);\n break;\n }\n case TAG_ID.FORM: {\n formEndTagInBody(p);\n break;\n }\n case TAG_ID.APPLET:\n case TAG_ID.OBJECT:\n case TAG_ID.MARQUEE: {\n appletEndTagInBody(p, token);\n break;\n }\n case TAG_ID.TEMPLATE: {\n templateEndTagInHead(p, token);\n break;\n }\n default: {\n genericEndTagInBody(p, token);\n }\n }\n}\nfunction eofInBody(p, token) {\n if (p.tmplInsertionModeStack.length > 0) {\n eofInTemplate(p, token);\n } else {\n stopParsing(p, token);\n }\n}\nfunction endTagInText(p, token) {\n var _a;\n if (token.tagID === TAG_ID.SCRIPT) {\n (_a = p.scriptHandler) === null || _a === void 0 ? void 0 : _a.call(p, p.openElements.current);\n }\n p.openElements.pop();\n p.insertionMode = p.originalInsertionMode;\n}\nfunction eofInText(p, token) {\n p._err(token, ERR.eofInElementThatCanContainOnlyText);\n p.openElements.pop();\n p.insertionMode = p.originalInsertionMode;\n p.onEof(token);\n}\nfunction characterInTable(p, token) {\n if (p.openElements.currentTagId !== void 0 && TABLE_STRUCTURE_TAGS.has(p.openElements.currentTagId)) {\n p.pendingCharacterTokens.length = 0;\n p.hasNonWhitespacePendingCharacterToken = false;\n p.originalInsertionMode = p.insertionMode;\n p.insertionMode = InsertionMode.IN_TABLE_TEXT;\n switch (token.type) {\n case TokenType.CHARACTER: {\n characterInTableText(p, token);\n break;\n }\n case TokenType.WHITESPACE_CHARACTER: {\n whitespaceCharacterInTableText(p, token);\n break;\n }\n }\n } else {\n tokenInTable(p, token);\n }\n}\nfunction captionStartTagInTable(p, token) {\n p.openElements.clearBackToTableContext();\n p.activeFormattingElements.insertMarker();\n p._insertElement(token, NS.HTML);\n p.insertionMode = InsertionMode.IN_CAPTION;\n}\nfunction colgroupStartTagInTable(p, token) {\n p.openElements.clearBackToTableContext();\n p._insertElement(token, NS.HTML);\n p.insertionMode = InsertionMode.IN_COLUMN_GROUP;\n}\nfunction colStartTagInTable(p, token) {\n p.openElements.clearBackToTableContext();\n p._insertFakeElement(TAG_NAMES.COLGROUP, TAG_ID.COLGROUP);\n p.insertionMode = InsertionMode.IN_COLUMN_GROUP;\n startTagInColumnGroup(p, token);\n}\nfunction tbodyStartTagInTable(p, token) {\n p.openElements.clearBackToTableContext();\n p._insertElement(token, NS.HTML);\n p.insertionMode = InsertionMode.IN_TABLE_BODY;\n}\nfunction tdStartTagInTable(p, token) {\n p.openElements.clearBackToTableContext();\n p._insertFakeElement(TAG_NAMES.TBODY, TAG_ID.TBODY);\n p.insertionMode = InsertionMode.IN_TABLE_BODY;\n startTagInTableBody(p, token);\n}\nfunction tableStartTagInTable(p, token) {\n if (p.openElements.hasInTableScope(TAG_ID.TABLE)) {\n p.openElements.popUntilTagNamePopped(TAG_ID.TABLE);\n p._resetInsertionMode();\n p._processStartTag(token);\n }\n}\nfunction inputStartTagInTable(p, token) {\n if (isHiddenInput(token)) {\n p._appendElement(token, NS.HTML);\n } else {\n tokenInTable(p, token);\n }\n token.ackSelfClosing = true;\n}\nfunction formStartTagInTable(p, token) {\n if (!p.formElement && p.openElements.tmplCount === 0) {\n p._insertElement(token, NS.HTML);\n p.formElement = p.openElements.current;\n p.openElements.pop();\n }\n}\nfunction startTagInTable(p, token) {\n switch (token.tagID) {\n case TAG_ID.TD:\n case TAG_ID.TH:\n case TAG_ID.TR: {\n tdStartTagInTable(p, token);\n break;\n }\n case TAG_ID.STYLE:\n case TAG_ID.SCRIPT:\n case TAG_ID.TEMPLATE: {\n startTagInHead(p, token);\n break;\n }\n case TAG_ID.COL: {\n colStartTagInTable(p, token);\n break;\n }\n case TAG_ID.FORM: {\n formStartTagInTable(p, token);\n break;\n }\n case TAG_ID.TABLE: {\n tableStartTagInTable(p, token);\n break;\n }\n case TAG_ID.TBODY:\n case TAG_ID.TFOOT:\n case TAG_ID.THEAD: {\n tbodyStartTagInTable(p, token);\n break;\n }\n case TAG_ID.INPUT: {\n inputStartTagInTable(p, token);\n break;\n }\n case TAG_ID.CAPTION: {\n captionStartTagInTable(p, token);\n break;\n }\n case TAG_ID.COLGROUP: {\n colgroupStartTagInTable(p, token);\n break;\n }\n default: {\n tokenInTable(p, token);\n }\n }\n}\nfunction endTagInTable(p, token) {\n switch (token.tagID) {\n case TAG_ID.TABLE: {\n if (p.openElements.hasInTableScope(TAG_ID.TABLE)) {\n p.openElements.popUntilTagNamePopped(TAG_ID.TABLE);\n p._resetInsertionMode();\n }\n break;\n }\n case TAG_ID.TEMPLATE: {\n templateEndTagInHead(p, token);\n break;\n }\n case TAG_ID.BODY:\n case TAG_ID.CAPTION:\n case TAG_ID.COL:\n case TAG_ID.COLGROUP:\n case TAG_ID.HTML:\n case TAG_ID.TBODY:\n case TAG_ID.TD:\n case TAG_ID.TFOOT:\n case TAG_ID.TH:\n case TAG_ID.THEAD:\n case TAG_ID.TR: {\n break;\n }\n default: {\n tokenInTable(p, token);\n }\n }\n}\nfunction tokenInTable(p, token) {\n const savedFosterParentingState = p.fosterParentingEnabled;\n p.fosterParentingEnabled = true;\n modeInBody(p, token);\n p.fosterParentingEnabled = savedFosterParentingState;\n}\nfunction whitespaceCharacterInTableText(p, token) {\n p.pendingCharacterTokens.push(token);\n}\nfunction characterInTableText(p, token) {\n p.pendingCharacterTokens.push(token);\n p.hasNonWhitespacePendingCharacterToken = true;\n}\nfunction tokenInTableText(p, token) {\n let i = 0;\n if (p.hasNonWhitespacePendingCharacterToken) {\n for (; i < p.pendingCharacterTokens.length; i++) {\n tokenInTable(p, p.pendingCharacterTokens[i]);\n }\n } else {\n for (; i < p.pendingCharacterTokens.length; i++) {\n p._insertCharacters(p.pendingCharacterTokens[i]);\n }\n }\n p.insertionMode = p.originalInsertionMode;\n p._processToken(token);\n}\nconst TABLE_VOID_ELEMENTS = /* @__PURE__ */ new Set([TAG_ID.CAPTION, TAG_ID.COL, TAG_ID.COLGROUP, TAG_ID.TBODY, TAG_ID.TD, TAG_ID.TFOOT, TAG_ID.TH, TAG_ID.THEAD, TAG_ID.TR]);\nfunction startTagInCaption(p, token) {\n const tn = token.tagID;\n if (TABLE_VOID_ELEMENTS.has(tn)) {\n if (p.openElements.hasInTableScope(TAG_ID.CAPTION)) {\n p.openElements.generateImpliedEndTags();\n p.openElements.popUntilTagNamePopped(TAG_ID.CAPTION);\n p.activeFormattingElements.clearToLastMarker();\n p.insertionMode = InsertionMode.IN_TABLE;\n startTagInTable(p, token);\n }\n } else {\n startTagInBody(p, token);\n }\n}\nfunction endTagInCaption(p, token) {\n const tn = token.tagID;\n switch (tn) {\n case TAG_ID.CAPTION:\n case TAG_ID.TABLE: {\n if (p.openElements.hasInTableScope(TAG_ID.CAPTION)) {\n p.openElements.generateImpliedEndTags();\n p.openElements.popUntilTagNamePopped(TAG_ID.CAPTION);\n p.activeFormattingElements.clearToLastMarker();\n p.insertionMode = InsertionMode.IN_TABLE;\n if (tn === TAG_ID.TABLE) {\n endTagInTable(p, token);\n }\n }\n break;\n }\n case TAG_ID.BODY:\n case TAG_ID.COL:\n case TAG_ID.COLGROUP:\n case TAG_ID.HTML:\n case TAG_ID.TBODY:\n case TAG_ID.TD:\n case TAG_ID.TFOOT:\n case TAG_ID.TH:\n case TAG_ID.THEAD:\n case TAG_ID.TR: {\n break;\n }\n default: {\n endTagInBody(p, token);\n }\n }\n}\nfunction startTagInColumnGroup(p, token) {\n switch (token.tagID) {\n case TAG_ID.HTML: {\n startTagInBody(p, token);\n break;\n }\n case TAG_ID.COL: {\n p._appendElement(token, NS.HTML);\n token.ackSelfClosing = true;\n break;\n }\n case TAG_ID.TEMPLATE: {\n startTagInHead(p, token);\n break;\n }\n default: {\n tokenInColumnGroup(p, token);\n }\n }\n}\nfunction endTagInColumnGroup(p, token) {\n switch (token.tagID) {\n case TAG_ID.COLGROUP: {\n if (p.openElements.currentTagId === TAG_ID.COLGROUP) {\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_TABLE;\n }\n break;\n }\n case TAG_ID.TEMPLATE: {\n templateEndTagInHead(p, token);\n break;\n }\n case TAG_ID.COL: {\n break;\n }\n default: {\n tokenInColumnGroup(p, token);\n }\n }\n}\nfunction tokenInColumnGroup(p, token) {\n if (p.openElements.currentTagId === TAG_ID.COLGROUP) {\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_TABLE;\n p._processToken(token);\n }\n}\nfunction startTagInTableBody(p, token) {\n switch (token.tagID) {\n case TAG_ID.TR: {\n p.openElements.clearBackToTableBodyContext();\n p._insertElement(token, NS.HTML);\n p.insertionMode = InsertionMode.IN_ROW;\n break;\n }\n case TAG_ID.TH:\n case TAG_ID.TD: {\n p.openElements.clearBackToTableBodyContext();\n p._insertFakeElement(TAG_NAMES.TR, TAG_ID.TR);\n p.insertionMode = InsertionMode.IN_ROW;\n startTagInRow(p, token);\n break;\n }\n case TAG_ID.CAPTION:\n case TAG_ID.COL:\n case TAG_ID.COLGROUP:\n case TAG_ID.TBODY:\n case TAG_ID.TFOOT:\n case TAG_ID.THEAD: {\n if (p.openElements.hasTableBodyContextInTableScope()) {\n p.openElements.clearBackToTableBodyContext();\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_TABLE;\n startTagInTable(p, token);\n }\n break;\n }\n default: {\n startTagInTable(p, token);\n }\n }\n}\nfunction endTagInTableBody(p, token) {\n const tn = token.tagID;\n switch (token.tagID) {\n case TAG_ID.TBODY:\n case TAG_ID.TFOOT:\n case TAG_ID.THEAD: {\n if (p.openElements.hasInTableScope(tn)) {\n p.openElements.clearBackToTableBodyContext();\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_TABLE;\n }\n break;\n }\n case TAG_ID.TABLE: {\n if (p.openElements.hasTableBodyContextInTableScope()) {\n p.openElements.clearBackToTableBodyContext();\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_TABLE;\n endTagInTable(p, token);\n }\n break;\n }\n case TAG_ID.BODY:\n case TAG_ID.CAPTION:\n case TAG_ID.COL:\n case TAG_ID.COLGROUP:\n case TAG_ID.HTML:\n case TAG_ID.TD:\n case TAG_ID.TH:\n case TAG_ID.TR: {\n break;\n }\n default: {\n endTagInTable(p, token);\n }\n }\n}\nfunction startTagInRow(p, token) {\n switch (token.tagID) {\n case TAG_ID.TH:\n case TAG_ID.TD: {\n p.openElements.clearBackToTableRowContext();\n p._insertElement(token, NS.HTML);\n p.insertionMode = InsertionMode.IN_CELL;\n p.activeFormattingElements.insertMarker();\n break;\n }\n case TAG_ID.CAPTION:\n case TAG_ID.COL:\n case TAG_ID.COLGROUP:\n case TAG_ID.TBODY:\n case TAG_ID.TFOOT:\n case TAG_ID.THEAD:\n case TAG_ID.TR: {\n if (p.openElements.hasInTableScope(TAG_ID.TR)) {\n p.openElements.clearBackToTableRowContext();\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_TABLE_BODY;\n startTagInTableBody(p, token);\n }\n break;\n }\n default: {\n startTagInTable(p, token);\n }\n }\n}\nfunction endTagInRow(p, token) {\n switch (token.tagID) {\n case TAG_ID.TR: {\n if (p.openElements.hasInTableScope(TAG_ID.TR)) {\n p.openElements.clearBackToTableRowContext();\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_TABLE_BODY;\n }\n break;\n }\n case TAG_ID.TABLE: {\n if (p.openElements.hasInTableScope(TAG_ID.TR)) {\n p.openElements.clearBackToTableRowContext();\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_TABLE_BODY;\n endTagInTableBody(p, token);\n }\n break;\n }\n case TAG_ID.TBODY:\n case TAG_ID.TFOOT:\n case TAG_ID.THEAD: {\n if (p.openElements.hasInTableScope(token.tagID) || p.openElements.hasInTableScope(TAG_ID.TR)) {\n p.openElements.clearBackToTableRowContext();\n p.openElements.pop();\n p.insertionMode = InsertionMode.IN_TABLE_BODY;\n endTagInTableBody(p, token);\n }\n break;\n }\n case TAG_ID.BODY:\n case TAG_ID.CAPTION:\n case TAG_ID.COL:\n case TAG_ID.COLGROUP:\n case TAG_ID.HTML:\n case TAG_ID.TD:\n case TAG_ID.TH: {\n break;\n }\n default: {\n endTagInTable(p, token);\n }\n }\n}\nfunction startTagInCell(p, token) {\n const tn = token.tagID;\n if (TABLE_VOID_ELEMENTS.has(tn)) {\n if (p.openElements.hasInTableScope(TAG_ID.TD) || p.openElements.hasInTableScope(TAG_ID.TH)) {\n p._closeTableCell();\n startTagInRow(p, token);\n }\n } else {\n startTagInBody(p, token);\n }\n}\nfunction endTagInCell(p, token) {\n const tn = token.tagID;\n switch (tn) {\n case TAG_ID.TD:\n case TAG_ID.TH: {\n if (p.openElements.hasInTableScope(tn)) {\n p.openElements.generateImpliedEndTags();\n p.openElements.popUntilTagNamePopped(tn);\n p.activeFormattingElements.clearToLastMarker();\n p.insertionMode = InsertionMode.IN_ROW;\n }\n break;\n }\n case TAG_ID.TABLE:\n case TAG_ID.TBODY:\n case TAG_ID.TFOOT:\n case TAG_ID.THEAD:\n case TAG_ID.TR: {\n if (p.openElements.hasInTableScope(tn)) {\n p._closeTableCell();\n endTagInRow(p, token);\n }\n break;\n }\n case TAG_ID.BODY:\n case TAG_ID.CAPTION:\n case TAG_ID.COL:\n case TAG_ID.COLGROUP:\n case TAG_ID.HTML: {\n break;\n }\n default: {\n endTagInBody(p, token);\n }\n }\n}\nfunction startTagInSelect(p, token) {\n switch (token.tagID) {\n case TAG_ID.HTML: {\n startTagInBody(p, token);\n break;\n }\n case TAG_ID.OPTION: {\n if (p.openElements.currentTagId === TAG_ID.OPTION) {\n p.openElements.pop();\n }\n p._insertElement(token, NS.HTML);\n break;\n }\n case TAG_ID.OPTGROUP: {\n if (p.openElements.currentTagId === TAG_ID.OPTION) {\n p.openElements.pop();\n }\n if (p.openElements.currentTagId === TAG_ID.OPTGROUP) {\n p.openElements.pop();\n }\n p._insertElement(token, NS.HTML);\n break;\n }\n case TAG_ID.HR: {\n if (p.openElements.currentTagId === TAG_ID.OPTION) {\n p.openElements.pop();\n }\n if (p.openElements.currentTagId === TAG_ID.OPTGROUP) {\n p.openElements.pop();\n }\n p._appendElement(token, NS.HTML);\n token.ackSelfClosing = true;\n break;\n }\n case TAG_ID.INPUT:\n case TAG_ID.KEYGEN:\n case TAG_ID.TEXTAREA:\n case TAG_ID.SELECT: {\n if (p.openElements.hasInSelectScope(TAG_ID.SELECT)) {\n p.openElements.popUntilTagNamePopped(TAG_ID.SELECT);\n p._resetInsertionMode();\n if (token.tagID !== TAG_ID.SELECT) {\n p._processStartTag(token);\n }\n }\n break;\n }\n case TAG_ID.SCRIPT:\n case TAG_ID.TEMPLATE: {\n startTagInHead(p, token);\n break;\n }\n }\n}\nfunction endTagInSelect(p, token) {\n switch (token.tagID) {\n case TAG_ID.OPTGROUP: {\n if (p.openElements.stackTop > 0 && p.openElements.currentTagId === TAG_ID.OPTION && p.openElements.tagIDs[p.openElements.stackTop - 1] === TAG_ID.OPTGROUP) {\n p.openElements.pop();\n }\n if (p.openElements.currentTagId === TAG_ID.OPTGROUP) {\n p.openElements.pop();\n }\n break;\n }\n case TAG_ID.OPTION: {\n if (p.openElements.currentTagId === TAG_ID.OPTION) {\n p.openElements.pop();\n }\n break;\n }\n case TAG_ID.SELECT: {\n if (p.openElements.hasInSelectScope(TAG_ID.SELECT)) {\n p.openElements.popUntilTagNamePopped(TAG_ID.SELECT);\n p._resetInsertionMode();\n }\n break;\n }\n case TAG_ID.TEMPLATE: {\n templateEndTagInHead(p, token);\n break;\n }\n }\n}\nfunction startTagInSelectInTable(p, token) {\n const tn = token.tagID;\n if (tn === TAG_ID.CAPTION || tn === TAG_ID.TABLE || tn === TAG_ID.TBODY || tn === TAG_ID.TFOOT || tn === TAG_ID.THEAD || tn === TAG_ID.TR || tn === TAG_ID.TD || tn === TAG_ID.TH) {\n p.openElements.popUntilTagNamePopped(TAG_ID.SELECT);\n p._resetInsertionMode();\n p._processStartTag(token);\n } else {\n startTagInSelect(p, token);\n }\n}\nfunction endTagInSelectInTable(p, token) {\n const tn = token.tagID;\n if (tn === TAG_ID.CAPTION || tn === TAG_ID.TABLE || tn === TAG_ID.TBODY || tn === TAG_ID.TFOOT || tn === TAG_ID.THEAD || tn === TAG_ID.TR || tn === TAG_ID.TD || tn === TAG_ID.TH) {\n if (p.openElements.hasInTableScope(tn)) {\n p.openElements.popUntilTagNamePopped(TAG_ID.SELECT);\n p._resetInsertionMode();\n p.onEndTag(token);\n }\n } else {\n endTagInSelect(p, token);\n }\n}\nfunction startTagInTemplate(p, token) {\n switch (token.tagID) {\n // First, handle tags that can start without a mode change\n case TAG_ID.BASE:\n case TAG_ID.BASEFONT:\n case TAG_ID.BGSOUND:\n case TAG_ID.LINK:\n case TAG_ID.META:\n case TAG_ID.NOFRAMES:\n case TAG_ID.SCRIPT:\n case TAG_ID.STYLE:\n case TAG_ID.TEMPLATE:\n case TAG_ID.TITLE: {\n startTagInHead(p, token);\n break;\n }\n // Re-process the token in the appropriate mode\n case TAG_ID.CAPTION:\n case TAG_ID.COLGROUP:\n case TAG_ID.TBODY:\n case TAG_ID.TFOOT:\n case TAG_ID.THEAD: {\n p.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE;\n p.insertionMode = InsertionMode.IN_TABLE;\n startTagInTable(p, token);\n break;\n }\n case TAG_ID.COL: {\n p.tmplInsertionModeStack[0] = InsertionMode.IN_COLUMN_GROUP;\n p.insertionMode = InsertionMode.IN_COLUMN_GROUP;\n startTagInColumnGroup(p, token);\n break;\n }\n case TAG_ID.TR: {\n p.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE_BODY;\n p.insertionMode = InsertionMode.IN_TABLE_BODY;\n startTagInTableBody(p, token);\n break;\n }\n case TAG_ID.TD:\n case TAG_ID.TH: {\n p.tmplInsertionModeStack[0] = InsertionMode.IN_ROW;\n p.insertionMode = InsertionMode.IN_ROW;\n startTagInRow(p, token);\n break;\n }\n default: {\n p.tmplInsertionModeStack[0] = InsertionMode.IN_BODY;\n p.insertionMode = InsertionMode.IN_BODY;\n startTagInBody(p, token);\n }\n }\n}\nfunction endTagInTemplate(p, token) {\n if (token.tagID === TAG_ID.TEMPLATE) {\n templateEndTagInHead(p, token);\n }\n}\nfunction eofInTemplate(p, token) {\n if (p.openElements.tmplCount > 0) {\n p.openElements.popUntilTagNamePopped(TAG_ID.TEMPLATE);\n p.activeFormattingElements.clearToLastMarker();\n p.tmplInsertionModeStack.shift();\n p._resetInsertionMode();\n p.onEof(token);\n } else {\n stopParsing(p, token);\n }\n}\nfunction startTagAfterBody(p, token) {\n if (token.tagID === TAG_ID.HTML) {\n startTagInBody(p, token);\n } else {\n tokenAfterBody(p, token);\n }\n}\nfunction endTagAfterBody(p, token) {\n var _a;\n if (token.tagID === TAG_ID.HTML) {\n if (!p.fragmentContext) {\n p.insertionMode = InsertionMode.AFTER_AFTER_BODY;\n }\n if (p.options.sourceCodeLocationInfo && p.openElements.tagIDs[0] === TAG_ID.HTML) {\n p._setEndLocation(p.openElements.items[0], token);\n const bodyElement = p.openElements.items[1];\n if (bodyElement && !((_a = p.treeAdapter.getNodeSourceCodeLocation(bodyElement)) === null || _a === void 0 ? void 0 : _a.endTag)) {\n p._setEndLocation(bodyElement, token);\n }\n }\n } else {\n tokenAfterBody(p, token);\n }\n}\nfunction tokenAfterBody(p, token) {\n p.insertionMode = InsertionMode.IN_BODY;\n modeInBody(p, token);\n}\nfunction startTagInFrameset(p, token) {\n switch (token.tagID) {\n case TAG_ID.HTML: {\n startTagInBody(p, token);\n break;\n }\n case TAG_ID.FRAMESET: {\n p._insertElement(token, NS.HTML);\n break;\n }\n case TAG_ID.FRAME: {\n p._appendElement(token, NS.HTML);\n token.ackSelfClosing = true;\n break;\n }\n case TAG_ID.NOFRAMES: {\n startTagInHead(p, token);\n break;\n }\n }\n}\nfunction endTagInFrameset(p, token) {\n if (token.tagID === TAG_ID.FRAMESET && !p.openElements.isRootHtmlElementCurrent()) {\n p.openElements.pop();\n if (!p.fragmentContext && p.openElements.currentTagId !== TAG_ID.FRAMESET) {\n p.insertionMode = InsertionMode.AFTER_FRAMESET;\n }\n }\n}\nfunction startTagAfterFrameset(p, token) {\n switch (token.tagID) {\n case TAG_ID.HTML: {\n startTagInBody(p, token);\n break;\n }\n case TAG_ID.NOFRAMES: {\n startTagInHead(p, token);\n break;\n }\n }\n}\nfunction endTagAfterFrameset(p, token) {\n if (token.tagID === TAG_ID.HTML) {\n p.insertionMode = InsertionMode.AFTER_AFTER_FRAMESET;\n }\n}\nfunction startTagAfterAfterBody(p, token) {\n if (token.tagID === TAG_ID.HTML) {\n startTagInBody(p, token);\n } else {\n tokenAfterAfterBody(p, token);\n }\n}\nfunction tokenAfterAfterBody(p, token) {\n p.insertionMode = InsertionMode.IN_BODY;\n modeInBody(p, token);\n}\nfunction startTagAfterAfterFrameset(p, token) {\n switch (token.tagID) {\n case TAG_ID.HTML: {\n startTagInBody(p, token);\n break;\n }\n case TAG_ID.NOFRAMES: {\n startTagInHead(p, token);\n break;\n }\n }\n}\nfunction nullCharacterInForeignContent(p, token) {\n token.chars = REPLACEMENT_CHARACTER;\n p._insertCharacters(token);\n}\nfunction characterInForeignContent(p, token) {\n p._insertCharacters(token);\n p.framesetOk = false;\n}\nfunction popUntilHtmlOrIntegrationPoint(p) {\n while (p.treeAdapter.getNamespaceURI(p.openElements.current) !== NS.HTML && p.openElements.currentTagId !== void 0 && !p._isIntegrationPoint(p.openElements.currentTagId, p.openElements.current)) {\n p.openElements.pop();\n }\n}\nfunction startTagInForeignContent(p, token) {\n if (causesExit(token)) {\n popUntilHtmlOrIntegrationPoint(p);\n p._startTagOutsideForeignContent(token);\n } else {\n const current = p._getAdjustedCurrentElement();\n const currentNs = p.treeAdapter.getNamespaceURI(current);\n if (currentNs === NS.MATHML) {\n adjustTokenMathMLAttrs(token);\n } else if (currentNs === NS.SVG) {\n adjustTokenSVGTagName(token);\n adjustTokenSVGAttrs(token);\n }\n adjustTokenXMLAttrs(token);\n if (token.selfClosing) {\n p._appendElement(token, currentNs);\n } else {\n p._insertElement(token, currentNs);\n }\n token.ackSelfClosing = true;\n }\n}\nfunction endTagInForeignContent(p, token) {\n if (token.tagID === TAG_ID.P || token.tagID === TAG_ID.BR) {\n popUntilHtmlOrIntegrationPoint(p);\n p._endTagOutsideForeignContent(token);\n return;\n }\n for (let i = p.openElements.stackTop; i > 0; i--) {\n const element = p.openElements.items[i];\n if (p.treeAdapter.getNamespaceURI(element) === NS.HTML) {\n p._endTagOutsideForeignContent(token);\n break;\n }\n const tagName = p.treeAdapter.getTagName(element);\n if (tagName.toLowerCase() === token.tagName) {\n token.tagName = tagName;\n p.openElements.shortenToLength(i);\n break;\n }\n }\n}\nfunction getEscaper(regex, map) {\n return function escape(data) {\n let match;\n let lastIndex = 0;\n let result = \"\";\n while (match = regex.exec(data)) {\n if (lastIndex !== match.index) {\n result += data.substring(lastIndex, match.index);\n }\n result += map.get(match[0].charCodeAt(0));\n lastIndex = match.index + 1;\n }\n return result + data.substring(lastIndex);\n };\n}\nconst escapeAttribute = /* @__PURE__ */ getEscaper(/[\"&\\u00A0]/g, /* @__PURE__ */ new Map([\n [34, \"&quot;\"],\n [38, \"&amp;\"],\n [160, \"&nbsp;\"]\n]));\nconst escapeText = /* @__PURE__ */ getEscaper(/[&<>\\u00A0]/g, /* @__PURE__ */ new Map([\n [38, \"&amp;\"],\n [60, \"&lt;\"],\n [62, \"&gt;\"],\n [160, \"&nbsp;\"]\n]));\nconst VOID_ELEMENTS$1 = /* @__PURE__ */ new Set([\n TAG_NAMES.AREA,\n TAG_NAMES.BASE,\n TAG_NAMES.BASEFONT,\n TAG_NAMES.BGSOUND,\n TAG_NAMES.BR,\n TAG_NAMES.COL,\n TAG_NAMES.EMBED,\n TAG_NAMES.FRAME,\n TAG_NAMES.HR,\n TAG_NAMES.IMG,\n TAG_NAMES.INPUT,\n TAG_NAMES.KEYGEN,\n TAG_NAMES.LINK,\n TAG_NAMES.META,\n TAG_NAMES.PARAM,\n TAG_NAMES.SOURCE,\n TAG_NAMES.TRACK,\n TAG_NAMES.WBR\n]);\nfunction isVoidElement(node, options) {\n return options.treeAdapter.isElementNode(node) && options.treeAdapter.getNamespaceURI(node) === NS.HTML && VOID_ELEMENTS$1.has(options.treeAdapter.getTagName(node));\n}\nconst defaultOpts = { treeAdapter: defaultTreeAdapter, scriptingEnabled: true };\nfunction serialize(node, options) {\n const opts = { ...defaultOpts, ...options };\n if (isVoidElement(node, opts)) {\n return \"\";\n }\n return serializeChildNodes(node, opts);\n}\nfunction serializeChildNodes(parentNode, options) {\n let html = \"\";\n const container = options.treeAdapter.isElementNode(parentNode) && options.treeAdapter.getTagName(parentNode) === TAG_NAMES.TEMPLATE && options.treeAdapter.getNamespaceURI(parentNode) === NS.HTML ? options.treeAdapter.getTemplateContent(parentNode) : parentNode;\n const childNodes = options.treeAdapter.getChildNodes(container);\n if (childNodes) {\n for (const currentNode of childNodes) {\n html += serializeNode(currentNode, options);\n }\n }\n return html;\n}\nfunction serializeNode(node, options) {\n if (options.treeAdapter.isElementNode(node)) {\n return serializeElement$1(node, options);\n }\n if (options.treeAdapter.isTextNode(node)) {\n return serializeTextNode(node, options);\n }\n if (options.treeAdapter.isCommentNode(node)) {\n return serializeCommentNode(node, options);\n }\n if (options.treeAdapter.isDocumentTypeNode(node)) {\n return serializeDocumentTypeNode(node, options);\n }\n return \"\";\n}\nfunction serializeElement$1(node, options) {\n const tn = options.treeAdapter.getTagName(node);\n return `<${tn}${serializeAttributes(node, options)}>${isVoidElement(node, options) ? \"\" : `${serializeChildNodes(node, options)}</${tn}>`}`;\n}\nfunction serializeAttributes(node, { treeAdapter }) {\n let html = \"\";\n for (const attr of treeAdapter.getAttrList(node)) {\n html += \" \";\n if (attr.namespace) {\n switch (attr.namespace) {\n case NS.XML: {\n html += `xml:${attr.name}`;\n break;\n }\n case NS.XMLNS: {\n if (attr.name !== \"xmlns\") {\n html += \"xmlns:\";\n }\n html += attr.name;\n break;\n }\n case NS.XLINK: {\n html += `xlink:${attr.name}`;\n break;\n }\n default: {\n html += `${attr.prefix}:${attr.name}`;\n }\n }\n } else {\n html += attr.name;\n }\n html += `=\"${escapeAttribute(attr.value)}\"`;\n }\n return html;\n}\nfunction serializeTextNode(node, options) {\n const { treeAdapter } = options;\n const content = treeAdapter.getTextNodeContent(node);\n const parent = treeAdapter.getParentNode(node);\n const parentTn = parent && treeAdapter.isElementNode(parent) && treeAdapter.getTagName(parent);\n return parentTn && treeAdapter.getNamespaceURI(parent) === NS.HTML && hasUnescapedText(parentTn, options.scriptingEnabled) ? content : escapeText(content);\n}\nfunction serializeCommentNode(node, { treeAdapter }) {\n return `<!--${treeAdapter.getCommentNodeContent(node)}-->`;\n}\nfunction serializeDocumentTypeNode(node, { treeAdapter }) {\n return `<!DOCTYPE ${treeAdapter.getDocumentTypeNodeName(node)}>`;\n}\nfunction parse(html, options) {\n return Parser.parse(html, options);\n}\nfunction isElementNode(node) {\n return \"tagName\" in node;\n}\nfunction getAttributeMap(el) {\n const map = {};\n for (const attr of el.attrs ?? []) {\n map[attr.name] = attr.value;\n }\n return map;\n}\nfunction findChildElement(parent, tagName) {\n for (const child of parent.childNodes ?? []) {\n if (isElementNode(child) && child.tagName?.toLowerCase() === tagName) {\n return child;\n }\n }\n return null;\n}\nfunction findBody(doc) {\n const html = findChildElement(doc, \"html\");\n if (!html) return null;\n const body = findChildElement(html, \"body\");\n return body ?? html;\n}\nfunction extractTextContent(el) {\n let text = \"\";\n for (const child of el.childNodes ?? []) {\n if (\"value\" in child && typeof child.value === \"string\") {\n text += child.value;\n } else if (isElementNode(child)) {\n text += extractTextContent(child);\n }\n }\n return text.trim();\n}\nfunction setElementText(el, text) {\n if (extractTextContent(el) === text.trim()) return;\n const textNode = { nodeName: \"#text\", value: text, parentNode: el };\n el.childNodes = [textNode];\n}\nfunction escapeHtml(text) {\n return text.replace(/&/g, \"&\").replace(/</g, \"<\").replace(/>/g, \">\").replace(/\"/g, '\"');\n}\nconst VOID_ELEMENTS = /* @__PURE__ */ new Set([\n \"area\",\n \"base\",\n \"br\",\n \"col\",\n \"embed\",\n \"hr\",\n \"img\",\n \"input\",\n \"link\",\n \"meta\",\n \"param\",\n \"source\",\n \"track\",\n \"wbr\"\n]);\nfunction serializeElement(el) {\n const tagName = el.tagName ?? \"div\";\n let html = `<${tagName}`;\n for (const attr of el.attrs ?? []) {\n const val = attr.value;\n html += val.includes('\"') ? ` ${attr.name}='${val}'` : ` ${attr.name}=\"${val}\"`;\n }\n if (VOID_ELEMENTS.has(tagName.toLowerCase())) {\n return html + \" />\";\n }\n html += \">\";\n for (const child of el.childNodes ?? []) {\n if (isElementNode(child)) {\n html += serializeElement(child);\n } else {\n html += escapeHtml(child.value ?? \"\");\n }\n }\n return html + `</${tagName}>`;\n}\nconst DEFAULT_PRESET_DURATION = 0.5;\nconst DEFAULT_ENTER_TIME = 0;\nconst ATTR_MAP = {\n \"data-dm-id\": \"id\",\n \"data-dm-name\": \"name\",\n \"data-dm-track\": \"track\",\n \"data-dm-enter-time\": \"enterTime\",\n \"data-dm-exit-time\": \"exitTime\",\n \"data-dm-content-offset\": \"contentOffset\",\n \"data-dm-content-duration\": \"contentDuration\",\n \"data-dm-enter\": \"enter\",\n \"data-dm-exit\": \"exit\",\n \"data-dm-duration\": \"duration\",\n \"data-dm-easing\": \"easing\",\n \"data-dm-locked\": \"locked\",\n \"data-dm-hidden\": \"hidden\"\n};\nconst KEYFRAME_PREFIX = \"data-dm-keyframe-\";\nfunction parseSceneHtml(html, sceneDuration) {\n const document = parse(html);\n const layers = [];\n const body = findBody(document);\n const root = body ?? document;\n collectLayers(root, layers);\n const scripts = collectScripts(document);\n let maxExit = sceneDuration ?? 10;\n for (const layer of layers) {\n if (layer.exitTime !== void 0 && layer.exitTime > maxExit) {\n maxExit = layer.exitTime;\n }\n }\n return { layers, duration: maxExit, scripts };\n}\nfunction collectScripts(root) {\n const scripts = [];\n function walk(node) {\n if (!isElementNode(node)) return;\n if (node.tagName?.toLowerCase() === \"script\") {\n const attrs = getAttributeMap(node);\n const src = attrs[\"src\"];\n if (src) {\n scripts.push({ src });\n } else {\n const code = extractTextContent(node);\n if (code.trim()) scripts.push({ code });\n }\n return;\n }\n for (const child of node.childNodes ?? []) {\n walk(child);\n }\n }\n for (const child of root.childNodes ?? []) {\n walk(child);\n }\n return scripts;\n}\nfunction collectLayers(node, layers) {\n if (!isElementNode(node)) return;\n const tagName = node.tagName?.toLowerCase() ?? \"\";\n const attrs = getAttributeMap(node);\n const hasDmAttrs = Object.keys(attrs).some((k) => k.startsWith(\"data-dm-\"));\n if (isDmElement(tagName) || hasDmAttrs) {\n const layer = parseElement(node, tagName, attrs);\n layers.push(layer);\n if (!isDmElement(tagName)) {\n for (const child of node.childNodes ?? []) {\n collectLayers(child, layers);\n }\n }\n return;\n }\n for (const child of node.childNodes ?? []) {\n collectLayers(child, layers);\n }\n}\nfunction parseElement(el, tagName, attrs) {\n const dmEntry = isDmElement(tagName) ? getDmElement(tagName) : void 0;\n const dmAttrs = extractDmAttrs(attrs);\n const layerType = dmEntry?.layerType ?? \"html\";\n const id = dmAttrs.id ?? nanoid(12);\n let props = {};\n if (dmEntry) {\n const nonDmAttrs = {};\n for (const [key, value] of Object.entries(attrs)) {\n if (!key.startsWith(\"data-dm-\")) {\n nonDmAttrs[key] = value;\n }\n }\n props = attrsToProps(layerType, nonDmAttrs, dmEntry.aliases);\n if (dmEntry.contentProp) {\n const childText = extractTextContent(el);\n if (childText) {\n props[dmEntry.contentProp] = childText;\n }\n }\n const schema = getLayerSchemaLazy(layerType);\n const parsed = schema.safeParse(props);\n if (parsed.success) {\n props = parsed.data;\n } else {\n const cleaned = { ...props };\n for (const issue of parsed.error.issues) {\n const key = issue.path[0];\n if (typeof key === \"string\") delete cleaned[key];\n }\n const reparsed = schema.safeParse(cleaned);\n props = reparsed.success ? reparsed.data : {};\n if (typeof console !== \"undefined\") {\n console.warn(\n `[devmotion] <${tagName}> \"${id}\": ignored invalid attribute(s) — ` + parsed.error.issues.map((i) => `${i.path.join(\".\") || \"(root)\"}: ${i.message}`).join(\"; \")\n );\n }\n }\n } else {\n props = { content: serializeElement(el) };\n }\n const keyframes = extractKeyframes(attrs);\n const layer = {\n id,\n name: dmAttrs.name ?? id,\n track: dmAttrs.track ?? 0,\n layerType,\n enterTime: dmAttrs.enterTime ?? DEFAULT_ENTER_TIME,\n exitTime: dmAttrs.exitTime,\n contentOffset: dmAttrs.contentOffset,\n contentDuration: dmAttrs.contentDuration,\n enterPreset: dmAttrs.enter,\n exitPreset: dmAttrs.exit,\n presetDuration: dmAttrs.duration ?? DEFAULT_PRESET_DURATION,\n easing: dmAttrs.easing,\n locked: dmAttrs.locked ?? false,\n hidden: dmAttrs.hidden ?? false,\n keyframes,\n props,\n htmlContent: dmEntry ? void 0 : props.content,\n dmTag: dmEntry ? tagName : void 0,\n _sourceAttributes: attrs\n };\n return layer;\n}\nfunction extractDmAttrs(attrs) {\n const result = {};\n for (const [attrName, attrValue] of Object.entries(attrs)) {\n const camelKey = ATTR_MAP[attrName];\n if (camelKey) {\n result[camelKey] = parseAttributeValue(camelKey, attrValue);\n }\n }\n return result;\n}\nfunction parseAttributeValue(key, value) {\n switch (key) {\n case \"track\":\n case \"enterTime\":\n case \"exitTime\":\n case \"contentOffset\":\n case \"contentDuration\":\n case \"duration\": {\n const num = parseFloat(value);\n return isNaN(num) ? void 0 : num;\n }\n case \"locked\":\n case \"hidden\":\n return value === \"true\" || value === \"\";\n default:\n return value;\n }\n}\nfunction extractKeyframes(attrs) {\n const result = {};\n for (const [attrName, attrValue] of Object.entries(attrs)) {\n if (!attrName.startsWith(KEYFRAME_PREFIX)) continue;\n const property = dmKeyframeToProperty(attrName);\n if (!property) continue;\n const keyframes = parseKeyframeString(attrValue);\n if (keyframes.length > 0) {\n result[property] = keyframes;\n }\n }\n return result;\n}\nexport {\n DevmotionJsonSchema as D,\n parseSceneHtml as a,\n parse as b,\n findBody as c,\n setElementText as d,\n escapeHtml as e,\n fsProjectToProjectData as f,\n propertyToDmKeyframe as g,\n fsProjectToProject as h,\n isElementNode as i,\n mapBackgroundToFs as m,\n projectDataToFsLayers as p,\n serialize as s\n};\n"],"names":["AnimationPresetIdSchema"],"mappings":"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"}