@tempoxyz/id 0.0.0-stage → 0.0.1

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 (1096) hide show
  1. package/README.md +121 -2
  2. package/dist/App.d.ts +121 -0
  3. package/dist/App.d.ts.map +1 -0
  4. package/dist/App.js +132 -0
  5. package/dist/App.js.map +1 -0
  6. package/dist/app/client/.assetsignore +2 -0
  7. package/dist/app/client/_headers +4 -0
  8. package/dist/app/client/assets/Account-BYLpNFf3.css +1 -0
  9. package/dist/app/client/assets/Account-BllJah07.js +1 -0
  10. package/dist/app/client/assets/Amount-E_7snI0-.js +1 -0
  11. package/dist/app/client/assets/Amount-ZdtluGf-.css +1 -0
  12. package/dist/app/client/assets/Approval-CgV5JHlb.css +1 -0
  13. package/dist/app/client/assets/Approval-yKflypU2.js +1 -0
  14. package/dist/app/client/assets/ArrowUp-CRvqfMNU.js +1 -0
  15. package/dist/app/client/assets/Authentication-BAXhOh_4.js +2 -0
  16. package/dist/app/client/assets/BRLA-CZvVDNYr.png +0 -0
  17. package/dist/app/client/assets/BRZ-Cn3jEi9t.svg +1 -0
  18. package/dist/app/client/assets/CHFAU-DCedc4aH.png +0 -0
  19. package/dist/app/client/assets/Callout-B736759d.js +1 -0
  20. package/dist/app/client/assets/Callout-DBfEmP7q.css +1 -0
  21. package/dist/app/client/assets/Check-DVgD8tDG.js +1 -0
  22. package/dist/app/client/assets/ChevronRight-CsXtIZCB.js +1 -0
  23. package/dist/app/client/assets/ChooseAccount-BjxfQjPK.js +1 -0
  24. package/dist/app/client/assets/ChooseAccount-DL3wgJhE.css +1 -0
  25. package/dist/app/client/assets/Client-JrABNovb.js +1 -0
  26. package/dist/app/client/assets/Close-CRvWlhqc.js +1 -0
  27. package/dist/app/client/assets/Cloud-DgJsrqpQ.js +1 -0
  28. package/dist/app/client/assets/CodeInput-79Ctx8ZA.js +1 -0
  29. package/dist/app/client/assets/CodeInput-BqRteSwD.css +1 -0
  30. package/dist/app/client/assets/DLUSD-BnRXm3EI.png +0 -0
  31. package/dist/app/client/assets/Deposit-CclrAoXL.css +1 -0
  32. package/dist/app/client/assets/Deposit-c7uYn2Eb.js +1 -0
  33. package/dist/app/client/assets/DevTools-BYkmtuV5.css +1 -0
  34. package/dist/app/client/assets/DevTools-BgnzDGo2.js +1 -0
  35. package/dist/app/client/assets/DeviceApproval-BBUVv58e.js +1 -0
  36. package/dist/app/client/assets/DeviceApproval-BffFLD8F.css +1 -0
  37. package/dist/app/client/assets/EURAU-sjieTTB9.svg +1 -0
  38. package/dist/app/client/assets/EURC.e-CxYiiwkz.svg +1 -0
  39. package/dist/app/client/assets/Fingerprint-BNCA6qOJ.js +1 -0
  40. package/dist/app/client/assets/GBPA-DI_25xSG.svg +4 -0
  41. package/dist/app/client/assets/GUSD-BDEP2Qb-.svg +1 -0
  42. package/dist/app/client/assets/GeistMono-Variable-BRXCGrxA.woff2 +0 -0
  43. package/dist/app/client/assets/Globe-f0eWzcEI.js +1 -0
  44. package/dist/app/client/assets/Grant-5a-n1gJH.css +1 -0
  45. package/dist/app/client/assets/Grant-Dp7mpcEi.js +1 -0
  46. package/dist/app/client/assets/Hex-C9KeV7_9.css +1 -0
  47. package/dist/app/client/assets/Hex-CSp2U46W.js +10 -0
  48. package/dist/app/client/assets/IconChip-DpZHa1JW.js +1 -0
  49. package/dist/app/client/assets/IconChip-yqaQ2y_d.css +1 -0
  50. package/dist/app/client/assets/InputGroup-BlZvt9In.css +1 -0
  51. package/dist/app/client/assets/InputGroup-CsOeBnpB.js +1 -0
  52. package/dist/app/client/assets/Inter-cyrillic-e3OmmzmJ.woff2 +0 -0
  53. package/dist/app/client/assets/Inter-cyrillic-ext-DOWZeO4Q.woff2 +0 -0
  54. package/dist/app/client/assets/Inter-greek-BD3ujQlX.woff2 +0 -0
  55. package/dist/app/client/assets/Inter-greek-ext-CXEwbus4.woff2 +0 -0
  56. package/dist/app/client/assets/Inter-latin-BDFm4vTb.woff2 +0 -0
  57. package/dist/app/client/assets/Inter-latin-ext-E7a9JEPe.woff2 +0 -0
  58. package/dist/app/client/assets/Inter-symbols-DEch7Rxr.woff2 +0 -0
  59. package/dist/app/client/assets/Inter-vietnamese-Bg9723vR.woff2 +0 -0
  60. package/dist/app/client/assets/Loader-Cm9YJNNJ.js +1 -0
  61. package/dist/app/client/assets/MACH-sK0r79kQ.svg +4 -0
  62. package/dist/app/client/assets/OUSD-BFXgVo-Z.svg +5 -0
  63. package/dist/app/client/assets/OUSD.dark-BbbjMvA1.svg +17 -0
  64. package/dist/app/client/assets/OUSD.light-B_zpSz_c.svg +17 -0
  65. package/dist/app/client/assets/PRIME-CiFp2-3e.svg +14 -0
  66. package/dist/app/client/assets/PopoverPopup-DprRXRQe.js +1 -0
  67. package/dist/app/client/assets/Rows-DPGTUdA8.css +1 -0
  68. package/dist/app/client/assets/Rows-Qqo3evtk.js +1 -0
  69. package/dist/app/client/assets/SBC-BTYkbkiD.svg +1 -0
  70. package/dist/app/client/assets/SEKAU-CB5Fc6o8.svg +5 -0
  71. package/dist/app/client/assets/Separator-CZUjVQOL.js +1 -0
  72. package/dist/app/client/assets/SignIn-HdaDzFmq.js +1 -0
  73. package/dist/app/client/assets/SignIn-mlBTwUq4.css +1 -0
  74. package/dist/app/client/assets/Stack-CkkvkOzj.js +1 -0
  75. package/dist/app/client/assets/Stack-D7Yt22Ed.css +1 -0
  76. package/dist/app/client/assets/Tag-BMh6ajrW.css +1 -0
  77. package/dist/app/client/assets/Tag-CLOVANTX.js +1 -0
  78. package/dist/app/client/assets/ToolbarRootContext-Zty_Dh3J.js +1 -0
  79. package/dist/app/client/assets/Tooltip-CLATV6YU.js +1 -0
  80. package/dist/app/client/assets/Tooltip-d3y9ESUJ.css +1 -0
  81. package/dist/app/client/assets/USD1-COVcO_PB.svg +30 -0
  82. package/dist/app/client/assets/USDB-Ckwb6UQw.svg +11 -0
  83. package/dist/app/client/assets/USDC.e-3nMsKAMC.svg +1 -0
  84. package/dist/app/client/assets/USDT0-ia60Dw0e.svg +1 -0
  85. package/dist/app/client/assets/USDY-CB4iet2q.svg +16 -0
  86. package/dist/app/client/assets/USDe-BXHQCd92.svg +1 -0
  87. package/dist/app/client/assets/Upgrade-D0_aO5AP.js +1 -0
  88. package/dist/app/client/assets/WalletUpgrade-BPsPNQsd.js +1 -0
  89. package/dist/app/client/assets/WalletUpgrade-C04kW0Jl.css +1 -0
  90. package/dist/app/client/assets/YLDS-CRh8Zw0g.svg +3 -0
  91. package/dist/app/client/assets/___-I98bns4o.css +1 -0
  92. package/dist/app/client/assets/___.flows-XOlLwMIy.js +5 -0
  93. package/dist/app/client/assets/alphaUSD-CpCFoVuh.svg +1 -0
  94. package/dist/app/client/assets/authorize-C-MlCyaM.js +1 -0
  95. package/dist/app/client/assets/betaUSD-9A8AjgYg.svg +1 -0
  96. package/dist/app/client/assets/cUSD-WsQfa-iC.svg +1 -0
  97. package/dist/app/client/assets/cbBTC-DvUDqrDi.svg +1 -0
  98. package/dist/app/client/assets/choose-account-nXR-SKa2.js +1 -0
  99. package/dist/app/client/assets/deposit-G8tiLPN4.js +1 -0
  100. package/dist/app/client/assets/device-BojBF7hZ.js +1 -0
  101. package/dist/app/client/assets/error-KiOpX7GD.js +1 -0
  102. package/dist/app/client/assets/frxUSD-n9pTpinR.svg +1 -0
  103. package/dist/app/client/assets/getPseudoElementBounds-BsLy4zf_.js +1 -0
  104. package/dist/app/client/assets/goUSD-D9kUvHsF.svg +5 -0
  105. package/dist/app/client/assets/iUSD-CWCJAq9X.svg +1 -0
  106. package/dist/app/client/assets/index-BZH0M7Nf.js +13 -0
  107. package/dist/app/client/assets/index-CIYxHmYA.css +1 -0
  108. package/dist/app/client/assets/login-DUjpk60p.js +1 -0
  109. package/dist/app/client/assets/pathUSD-BvaO6ooS.svg +25 -0
  110. package/dist/app/client/assets/preload-helper-Bs9KvdYl.js +1 -0
  111. package/dist/app/client/assets/rUSD-B-xuFS7T.svg +1 -0
  112. package/dist/app/client/assets/reUSD-CkIUs0Lx.svg +1 -0
  113. package/dist/app/client/assets/removable-DMiA3t_o.js +1 -0
  114. package/dist/app/client/assets/reset-co-CHrff.css +1 -0
  115. package/dist/app/client/assets/rolldown-runtime-WkwZ5CU-.js +1 -0
  116. package/dist/app/client/assets/routes-CK8cthzA.js +1 -0
  117. package/dist/app/client/assets/sUSDe-j9GOnH7I.svg +1 -0
  118. package/dist/app/client/assets/siUSD-C10QUNYS.svg +1 -0
  119. package/dist/app/client/assets/stcUSD-DIntDJeh.svg +1 -0
  120. package/dist/app/client/assets/syrupUSDC-DhYwZqdM.svg +5 -0
  121. package/dist/app/client/assets/thetaUSD-Dgmksf6G.svg +1 -0
  122. package/dist/app/client/assets/useNavigate-CB6S2u4J.js +1 -0
  123. package/dist/app/client/assets/useQuery-BpHfPhTT.js +1 -0
  124. package/dist/app/client/assets/useRegisterFieldControl-DsslqY-V.js +1 -0
  125. package/dist/app/client/assets/wYLDS-CaCKDrO-.svg +10 -0
  126. package/dist/app/client/assets/wsrUSD-B2Ey0bDQ.svg +1 -0
  127. package/dist/app/client/assets/zyzz-DYC-X0_B.css +1 -0
  128. package/dist/app/client/assets/zyzz.config-DX_D_7j3.js +2 -0
  129. package/dist/app/db/auth.d.ts +3412 -0
  130. package/dist/app/db/auth.d.ts.map +1 -0
  131. package/dist/app/db/auth.js +349 -0
  132. package/dist/app/db/auth.js.map +1 -0
  133. package/dist/app/db/schema.d.ts +1091 -0
  134. package/dist/app/db/schema.d.ts.map +1 -0
  135. package/dist/app/db/schema.js +183 -0
  136. package/dist/app/db/schema.js.map +1 -0
  137. package/dist/app/db/table.d.ts +8 -0
  138. package/dist/app/db/table.d.ts.map +1 -0
  139. package/dist/app/db/table.js +28 -0
  140. package/dist/app/db/table.js.map +1 -0
  141. package/dist/app/server/.vite/manifest.json +2093 -0
  142. package/dist/app/server/assets/Account-BYLpNFf3.css +1 -0
  143. package/dist/app/server/assets/Account-G_SUeRU3.js +2 -0
  144. package/dist/app/server/assets/Account-G_SUeRU3.js.map +1 -0
  145. package/dist/app/server/assets/Amount-Cgwdr3Xt.js +2 -0
  146. package/dist/app/server/assets/Amount-Cgwdr3Xt.js.map +1 -0
  147. package/dist/app/server/assets/Amount-ZdtluGf-.css +1 -0
  148. package/dist/app/server/assets/Approval-CgV5JHlb.css +1 -0
  149. package/dist/app/server/assets/Approval-DvkB9tWA.js +2 -0
  150. package/dist/app/server/assets/Approval-DvkB9tWA.js.map +1 -0
  151. package/dist/app/server/assets/ArrowUp-DpK_zNgZ.js +2 -0
  152. package/dist/app/server/assets/ArrowUp-DpK_zNgZ.js.map +1 -0
  153. package/dist/app/server/assets/Authentication-BOkhlNQu.js +2 -0
  154. package/dist/app/server/assets/Authentication-BOkhlNQu.js.map +1 -0
  155. package/dist/app/server/assets/Authentication-C3oNZAVX.js +2 -0
  156. package/dist/app/server/assets/Authentication-C3oNZAVX.js.map +1 -0
  157. package/dist/app/server/assets/BRLA-CZvVDNYr.png +0 -0
  158. package/dist/app/server/assets/BRZ-Cn3jEi9t.svg +1 -0
  159. package/dist/app/server/assets/Bytes-C7CRVS3J.js +4 -0
  160. package/dist/app/server/assets/Bytes-C7CRVS3J.js.map +1 -0
  161. package/dist/app/server/assets/CHFAU-DCedc4aH.png +0 -0
  162. package/dist/app/server/assets/Callout-DBfEmP7q.css +1 -0
  163. package/dist/app/server/assets/Callout-tQoAitWq.js +2 -0
  164. package/dist/app/server/assets/Callout-tQoAitWq.js.map +1 -0
  165. package/dist/app/server/assets/ChainList-C4A_7e-9.js +6 -0
  166. package/dist/app/server/assets/ChainList-C4A_7e-9.js.map +1 -0
  167. package/dist/app/server/assets/ChainName-BMnJyJrd.js +2 -0
  168. package/dist/app/server/assets/ChainName-BMnJyJrd.js.map +1 -0
  169. package/dist/app/server/assets/Check-DU_oR3Ev.js +2 -0
  170. package/dist/app/server/assets/Check-DU_oR3Ev.js.map +1 -0
  171. package/dist/app/server/assets/ChevronRight-DTBnw-W6.js +2 -0
  172. package/dist/app/server/assets/ChevronRight-DTBnw-W6.js.map +1 -0
  173. package/dist/app/server/assets/ChooseAccount-BizJvMrY.js +2 -0
  174. package/dist/app/server/assets/ChooseAccount-BizJvMrY.js.map +1 -0
  175. package/dist/app/server/assets/ChooseAccount-DL3wgJhE.css +1 -0
  176. package/dist/app/server/assets/Client-Dx3KrpJZ.js +2 -0
  177. package/dist/app/server/assets/Client-Dx3KrpJZ.js.map +1 -0
  178. package/dist/app/server/assets/ClientOnly-CKLiu67O.js +2 -0
  179. package/dist/app/server/assets/ClientOnly-CKLiu67O.js.map +1 -0
  180. package/dist/app/server/assets/Close-DUeE37ev.js +2 -0
  181. package/dist/app/server/assets/Close-DUeE37ev.js.map +1 -0
  182. package/dist/app/server/assets/Cloud-CLB3rTTy.js +2 -0
  183. package/dist/app/server/assets/Cloud-CLB3rTTy.js.map +1 -0
  184. package/dist/app/server/assets/CodeInput-BqRteSwD.css +1 -0
  185. package/dist/app/server/assets/CodeInput-FsPzVuLU.js +2 -0
  186. package/dist/app/server/assets/CodeInput-FsPzVuLU.js.map +1 -0
  187. package/dist/app/server/assets/Credential-DFjcrdyI.js +2 -0
  188. package/dist/app/server/assets/Credential-DFjcrdyI.js.map +1 -0
  189. package/dist/app/server/assets/DLUSD-BnRXm3EI.png +0 -0
  190. package/dist/app/server/assets/Deposit-CclrAoXL.css +1 -0
  191. package/dist/app/server/assets/Deposit-ChYGRfW2.js +2 -0
  192. package/dist/app/server/assets/Deposit-ChYGRfW2.js.map +1 -0
  193. package/dist/app/server/assets/DevTools-BYkmtuV5.css +1 -0
  194. package/dist/app/server/assets/DevTools-ZJVXqrIK.js +2 -0
  195. package/dist/app/server/assets/DevTools-ZJVXqrIK.js.map +1 -0
  196. package/dist/app/server/assets/DeviceApproval-BffFLD8F.css +1 -0
  197. package/dist/app/server/assets/DeviceApproval-Bqe3Mi78.js +2 -0
  198. package/dist/app/server/assets/DeviceApproval-Bqe3Mi78.js.map +1 -0
  199. package/dist/app/server/assets/EURAU-sjieTTB9.svg +1 -0
  200. package/dist/app/server/assets/EURC.e-CxYiiwkz.svg +1 -0
  201. package/dist/app/server/assets/ExecutionError-CDszGSF1.js +9 -0
  202. package/dist/app/server/assets/ExecutionError-CDszGSF1.js.map +1 -0
  203. package/dist/app/server/assets/Fingerprint-DhOPOdRr.js +2 -0
  204. package/dist/app/server/assets/Fingerprint-DhOPOdRr.js.map +1 -0
  205. package/dist/app/server/assets/GBPA-DI_25xSG.svg +4 -0
  206. package/dist/app/server/assets/GUSD-BDEP2Qb-.svg +1 -0
  207. package/dist/app/server/assets/GeistMono-Variable-BRXCGrxA.woff2 +0 -0
  208. package/dist/app/server/assets/Globe-2CxqxU-7.js +2 -0
  209. package/dist/app/server/assets/Globe-2CxqxU-7.js.map +1 -0
  210. package/dist/app/server/assets/Grant-5a-n1gJH.css +1 -0
  211. package/dist/app/server/assets/Grant-D_tun0mF.js +2 -0
  212. package/dist/app/server/assets/Grant-D_tun0mF.js.map +1 -0
  213. package/dist/app/server/assets/Hex-C9KeV7_9.css +1 -0
  214. package/dist/app/server/assets/Hex-Z6m_0Y0m.js +11 -0
  215. package/dist/app/server/assets/Hex-Z6m_0Y0m.js.map +1 -0
  216. package/dist/app/server/assets/IconChip-C9ZrmGB5.js +2 -0
  217. package/dist/app/server/assets/IconChip-C9ZrmGB5.js.map +1 -0
  218. package/dist/app/server/assets/IconChip-yqaQ2y_d.css +1 -0
  219. package/dist/app/server/assets/InputGroup-BlZvt9In.css +1 -0
  220. package/dist/app/server/assets/InputGroup-hpjuLuR7.js +2 -0
  221. package/dist/app/server/assets/InputGroup-hpjuLuR7.js.map +1 -0
  222. package/dist/app/server/assets/Inter-cyrillic-e3OmmzmJ.woff2 +0 -0
  223. package/dist/app/server/assets/Inter-cyrillic-ext-DOWZeO4Q.woff2 +0 -0
  224. package/dist/app/server/assets/Inter-greek-BD3ujQlX.woff2 +0 -0
  225. package/dist/app/server/assets/Inter-greek-ext-CXEwbus4.woff2 +0 -0
  226. package/dist/app/server/assets/Inter-latin-BDFm4vTb.woff2 +0 -0
  227. package/dist/app/server/assets/Inter-latin-ext-E7a9JEPe.woff2 +0 -0
  228. package/dist/app/server/assets/Inter-symbols-DEch7Rxr.woff2 +0 -0
  229. package/dist/app/server/assets/Inter-vietnamese-Bg9723vR.woff2 +0 -0
  230. package/dist/app/server/assets/Loader-DnKC9P5p.js +2 -0
  231. package/dist/app/server/assets/Loader-DnKC9P5p.js.map +1 -0
  232. package/dist/app/server/assets/MACH-sK0r79kQ.svg +4 -0
  233. package/dist/app/server/assets/Match-CyVdYcSf.js +2 -0
  234. package/dist/app/server/assets/Match-CyVdYcSf.js.map +1 -0
  235. package/dist/app/server/assets/OUSD-BFXgVo-Z.svg +5 -0
  236. package/dist/app/server/assets/OUSD.dark-BbbjMvA1.svg +17 -0
  237. package/dist/app/server/assets/OUSD.light-B_zpSz_c.svg +17 -0
  238. package/dist/app/server/assets/PRIME-CiFp2-3e.svg +14 -0
  239. package/dist/app/server/assets/PopoverPopup-CwqeQelI.js +2 -0
  240. package/dist/app/server/assets/PopoverPopup-CwqeQelI.js.map +1 -0
  241. package/dist/app/server/assets/Rows-CQKQwTI1.js +2 -0
  242. package/dist/app/server/assets/Rows-CQKQwTI1.js.map +1 -0
  243. package/dist/app/server/assets/Rows-DPGTUdA8.css +1 -0
  244. package/dist/app/server/assets/SBC-BTYkbkiD.svg +1 -0
  245. package/dist/app/server/assets/SEKAU-CB5Fc6o8.svg +5 -0
  246. package/dist/app/server/assets/Separator-DrI7KRAs.js +2 -0
  247. package/dist/app/server/assets/Separator-DrI7KRAs.js.map +1 -0
  248. package/dist/app/server/assets/SignIn-DfeeLEmN.js +2 -0
  249. package/dist/app/server/assets/SignIn-DfeeLEmN.js.map +1 -0
  250. package/dist/app/server/assets/SignIn-mlBTwUq4.css +1 -0
  251. package/dist/app/server/assets/Stack-D7Yt22Ed.css +1 -0
  252. package/dist/app/server/assets/Stack-DGktaLZc.js +2 -0
  253. package/dist/app/server/assets/Stack-DGktaLZc.js.map +1 -0
  254. package/dist/app/server/assets/Tag-9vSRBpph.js +2 -0
  255. package/dist/app/server/assets/Tag-9vSRBpph.js.map +1 -0
  256. package/dist/app/server/assets/Tag-BMh6ajrW.css +1 -0
  257. package/dist/app/server/assets/ToolbarRootContext-BH_CFSWd.js +2 -0
  258. package/dist/app/server/assets/ToolbarRootContext-BH_CFSWd.js.map +1 -0
  259. package/dist/app/server/assets/Tooltip-DLX41peb.js +2 -0
  260. package/dist/app/server/assets/Tooltip-DLX41peb.js.map +1 -0
  261. package/dist/app/server/assets/Tooltip-d3y9ESUJ.css +1 -0
  262. package/dist/app/server/assets/USD1-COVcO_PB.svg +30 -0
  263. package/dist/app/server/assets/USDB-Ckwb6UQw.svg +11 -0
  264. package/dist/app/server/assets/USDC.e-3nMsKAMC.svg +1 -0
  265. package/dist/app/server/assets/USDT0-ia60Dw0e.svg +1 -0
  266. package/dist/app/server/assets/USDY-CB4iet2q.svg +16 -0
  267. package/dist/app/server/assets/USDe-BXHQCd92.svg +1 -0
  268. package/dist/app/server/assets/Upgrade-Dbfm2nm0.js +2 -0
  269. package/dist/app/server/assets/Upgrade-Dbfm2nm0.js.map +1 -0
  270. package/dist/app/server/assets/WalletUpgrade-C04kW0Jl.css +1 -0
  271. package/dist/app/server/assets/WalletUpgrade-CWKc5fYt.js +2 -0
  272. package/dist/app/server/assets/WalletUpgrade-CWKc5fYt.js.map +1 -0
  273. package/dist/app/server/assets/YLDS-CRh8Zw0g.svg +3 -0
  274. package/dist/app/server/assets/___-I98bns4o.css +1 -0
  275. package/dist/app/server/assets/___.flows-Cc-awUoC.js +6 -0
  276. package/dist/app/server/assets/___.flows-Cc-awUoC.js.map +1 -0
  277. package/dist/app/server/assets/_tanstack-start-manifest_v-U7TrtUSA.js +1 -0
  278. package/dist/app/server/assets/_zyzz__2Fhome_2Frunner_2Fwork_2Fid_2Fid_2Fsrc_2Fapp_2Froutes_2F_5B__5D.flows-B1pPOqsM.css +1 -0
  279. package/dist/app/server/assets/_zyzz__2Fhome_2Frunner_2Fwork_2Fid_2Fid_2Fsrc_2Fapp_2Froutes_2F_5B__5D.flows.tsx-CKALi9oD.js +2 -0
  280. package/dist/app/server/assets/_zyzz__2Fhome_2Frunner_2Fwork_2Fid_2Fid_2Fsrc_2Fapp_2Froutes_2F_5B__5D.flows.tsx-CKALi9oD.js.map +1 -0
  281. package/dist/app/server/assets/_zyzz_shared-BbDIEd_j.css +1 -0
  282. package/dist/app/server/assets/alphaUSD-CpCFoVuh.svg +1 -0
  283. package/dist/app/server/assets/arktype-aI7TBD0R-D1R3Byo5.js +2 -0
  284. package/dist/app/server/assets/arktype-aI7TBD0R-D1R3Byo5.js.map +1 -0
  285. package/dist/app/server/assets/async-local-storage-DlOvwxXd.js +2 -0
  286. package/dist/app/server/assets/async-local-storage-DlOvwxXd.js.map +1 -0
  287. package/dist/app/server/assets/authorize-BXzTo2Pb.js +2 -0
  288. package/dist/app/server/assets/authorize-BXzTo2Pb.js.map +1 -0
  289. package/dist/app/server/assets/authorize-BzoUqOdA.js +2 -0
  290. package/dist/app/server/assets/authorize-BzoUqOdA.js.map +1 -0
  291. package/dist/app/server/assets/authorize-DXYo-K2n-rmQQ42x1.js +56 -0
  292. package/dist/app/server/assets/authorize-DXYo-K2n-rmQQ42x1.js.map +1 -0
  293. package/dist/app/server/assets/authorize-DfjPYJqS.css +1 -0
  294. package/dist/app/server/assets/betaUSD-9A8AjgYg.svg +1 -0
  295. package/dist/app/server/assets/bun-sqlite-dialect-DoOVo4ja-CtyBkVMb.js +2 -0
  296. package/dist/app/server/assets/bun-sqlite-dialect-DoOVo4ja-CtyBkVMb.js.map +1 -0
  297. package/dist/app/server/assets/cUSD-WsQfa-iC.svg +1 -0
  298. package/dist/app/server/assets/call-dzi0xjZd.js +31 -0
  299. package/dist/app/server/assets/call-dzi0xjZd.js.map +1 -0
  300. package/dist/app/server/assets/cbBTC-DvUDqrDi.svg +1 -0
  301. package/dist/app/server/assets/ccip-DjD8z_3B.js +2 -0
  302. package/dist/app/server/assets/ccip-DjD8z_3B.js.map +1 -0
  303. package/dist/app/server/assets/choose-account-_X7xq5am.js +2 -0
  304. package/dist/app/server/assets/choose-account-_X7xq5am.js.map +1 -0
  305. package/dist/app/server/assets/choose-account-lqA5SLx9.css +1 -0
  306. package/dist/app/server/assets/choose-account-zm-5Qs3e.js +2 -0
  307. package/dist/app/server/assets/choose-account-zm-5Qs3e.js.map +1 -0
  308. package/dist/app/server/assets/compiled-query-Ds2NVcFT.js +2 -0
  309. package/dist/app/server/assets/compiled-query-Ds2NVcFT.js.map +1 -0
  310. package/dist/app/server/assets/convert-BIC8n32x.js +2 -0
  311. package/dist/app/server/assets/convert-BIC8n32x.js.map +1 -0
  312. package/dist/app/server/assets/cookie-DxViaO10.js +2 -0
  313. package/dist/app/server/assets/cookie-DxViaO10.js.map +1 -0
  314. package/dist/app/server/assets/core-BBrZXfrB.js +56 -0
  315. package/dist/app/server/assets/core-BBrZXfrB.js.map +1 -0
  316. package/dist/app/server/assets/d1-sqlite-dialect-m0f01-4z-Cv-csE1u.js +2 -0
  317. package/dist/app/server/assets/d1-sqlite-dialect-m0f01-4z-Cv-csE1u.js.map +1 -0
  318. package/dist/app/server/assets/decodeFunctionData-bP6V2ai4.js +2 -0
  319. package/dist/app/server/assets/decodeFunctionData-bP6V2ai4.js.map +1 -0
  320. package/dist/app/server/assets/default-u_dwuiYb-DOrMMcg9.js +2 -0
  321. package/dist/app/server/assets/default-u_dwuiYb-DOrMMcg9.js.map +1 -0
  322. package/dist/app/server/assets/deposit-BBaNI01u.js +2 -0
  323. package/dist/app/server/assets/deposit-BBaNI01u.js.map +1 -0
  324. package/dist/app/server/assets/deposit-LWS6ZTuf.js +2 -0
  325. package/dist/app/server/assets/deposit-LWS6ZTuf.js.map +1 -0
  326. package/dist/app/server/assets/deposit-oFx15XCA.css +1 -0
  327. package/dist/app/server/assets/device-CrXlusjr.js +2 -0
  328. package/dist/app/server/assets/device-CrXlusjr.js.map +1 -0
  329. package/dist/app/server/assets/device-DdFMgYe2.js +2 -0
  330. package/dist/app/server/assets/device-DdFMgYe2.js.map +1 -0
  331. package/dist/app/server/assets/device-tMCpu5zk.css +1 -0
  332. package/dist/app/server/assets/dist-CR6FW-yS.js +1 -0
  333. package/dist/app/server/assets/dist-CoH0hD1s.js +15 -0
  334. package/dist/app/server/assets/dist-CoH0hD1s.js.map +1 -0
  335. package/dist/app/server/assets/dist-DcICI3fd.js +2 -0
  336. package/dist/app/server/assets/dist-DcICI3fd.js.map +1 -0
  337. package/dist/app/server/assets/effect-QlVUlMFu-mXPkuQTb.js +2 -0
  338. package/dist/app/server/assets/effect-QlVUlMFu-mXPkuQTb.js.map +1 -0
  339. package/dist/app/server/assets/empty-plugin-adapters-BaGcmrjC.js +2 -0
  340. package/dist/app/server/assets/empty-plugin-adapters-BaGcmrjC.js.map +1 -0
  341. package/dist/app/server/assets/error-CXy8gqdE.css +1 -0
  342. package/dist/app/server/assets/error-DXDT2AHy.js +2 -0
  343. package/dist/app/server/assets/error-DXDT2AHy.js.map +1 -0
  344. package/dist/app/server/assets/error-bnVzy9tx.js +2 -0
  345. package/dist/app/server/assets/error-bnVzy9tx.js.map +1 -0
  346. package/dist/app/server/assets/esm-C6SW--yt.js +4 -0
  347. package/dist/app/server/assets/esm-C6SW--yt.js.map +1 -0
  348. package/dist/app/server/assets/factory-dvoOlKer.js +5 -0
  349. package/dist/app/server/assets/factory-dvoOlKer.js.map +1 -0
  350. package/dist/app/server/assets/frxUSD-n9pTpinR.svg +1 -0
  351. package/dist/app/server/assets/get-id-field-OwLpfjj2.js +6 -0
  352. package/dist/app/server/assets/get-id-field-OwLpfjj2.js.map +1 -0
  353. package/dist/app/server/assets/getPseudoElementBounds-PkWU72kn.js +2 -0
  354. package/dist/app/server/assets/getPseudoElementBounds-PkWU72kn.js.map +1 -0
  355. package/dist/app/server/assets/goUSD-D9kUvHsF.svg +5 -0
  356. package/dist/app/server/assets/iUSD-CWCJAq9X.svg +1 -0
  357. package/dist/app/server/assets/index-CLddUTqr-CC33CMvS.js +2 -0
  358. package/dist/app/server/assets/index-CLddUTqr-CC33CMvS.js.map +1 -0
  359. package/dist/app/server/assets/index-DZEfthgZ-Ec2MMQ_e.js +2 -0
  360. package/dist/app/server/assets/index-DZEfthgZ-Ec2MMQ_e.js.map +1 -0
  361. package/dist/app/server/assets/kysely-adapter-B8tQwTcu.js +1 -0
  362. package/dist/app/server/assets/lazyRouteComponent-DPOOPZw_.js +2 -0
  363. package/dist/app/server/assets/lazyRouteComponent-DPOOPZw_.js.map +1 -0
  364. package/dist/app/server/assets/load-server-Dr0IlySo.js +3 -0
  365. package/dist/app/server/assets/load-server-Dr0IlySo.js.map +1 -0
  366. package/dist/app/server/assets/login-BLq3tEEr.js +2 -0
  367. package/dist/app/server/assets/login-BLq3tEEr.js.map +1 -0
  368. package/dist/app/server/assets/login-DCIrAbED.js +2 -0
  369. package/dist/app/server/assets/login-DCIrAbED.js.map +1 -0
  370. package/dist/app/server/assets/login-msDnt3yT.css +1 -0
  371. package/dist/app/server/assets/matchContext-ByrIUj4L.js +2 -0
  372. package/dist/app/server/assets/matchContext-ByrIUj4L.js.map +1 -0
  373. package/dist/app/server/assets/node-sqlite-dialect-BowWLXvK.js +2 -0
  374. package/dist/app/server/assets/node-sqlite-dialect-BowWLXvK.js.map +1 -0
  375. package/dist/app/server/assets/pathUSD-BvaO6ooS.svg +25 -0
  376. package/dist/app/server/assets/rUSD-B-xuFS7T.svg +1 -0
  377. package/dist/app/server/assets/reUSD-CkIUs0Lx.svg +1 -0
  378. package/dist/app/server/assets/react-dom-DYzj0HXX.js +2 -0
  379. package/dist/app/server/assets/react-dom-DYzj0HXX.js.map +1 -0
  380. package/dist/app/server/assets/removable-BCLTvPOx.js +2 -0
  381. package/dist/app/server/assets/removable-BCLTvPOx.js.map +1 -0
  382. package/dist/app/server/assets/reset-DZWeTZeQ.js +2 -0
  383. package/dist/app/server/assets/reset-DZWeTZeQ.js.map +1 -0
  384. package/dist/app/server/assets/reset-co-CHrff.css +1 -0
  385. package/dist/app/server/assets/resolveError-CZXXvCJR.js +2 -0
  386. package/dist/app/server/assets/resolveError-CZXXvCJR.js.map +1 -0
  387. package/dist/app/server/assets/rolldown-runtime-BWaJ3C7D.js +1 -0
  388. package/dist/app/server/assets/router-Bqz5X4Qw.js +2 -0
  389. package/dist/app/server/assets/router-Bqz5X4Qw.js.map +1 -0
  390. package/dist/app/server/assets/router-CclzitkY.css +1 -0
  391. package/dist/app/server/assets/routes-BLQdKqcZ.js +2 -0
  392. package/dist/app/server/assets/routes-BLQdKqcZ.js.map +1 -0
  393. package/dist/app/server/assets/routes-BgiIzrOt.css +1 -0
  394. package/dist/app/server/assets/routes-Bv6WzsSR.js +2 -0
  395. package/dist/app/server/assets/routes-Bv6WzsSR.js.map +1 -0
  396. package/dist/app/server/assets/sUSDe-j9GOnH7I.svg +1 -0
  397. package/dist/app/server/assets/schema-check-oLqvHR8y.js +9 -0
  398. package/dist/app/server/assets/schema-check-oLqvHR8y.js.map +1 -0
  399. package/dist/app/server/assets/secp256k1-yg8eeIYU.js +2 -0
  400. package/dist/app/server/assets/secp256k1-yg8eeIYU.js.map +1 -0
  401. package/dist/app/server/assets/server-RRUiOef2.js +76 -0
  402. package/dist/app/server/assets/server-RRUiOef2.js.map +1 -0
  403. package/dist/app/server/assets/siUSD-C10QUNYS.svg +1 -0
  404. package/dist/app/server/assets/sqlite-adapter-C_LAV4e3.js +2 -0
  405. package/dist/app/server/assets/sqlite-adapter-C_LAV4e3.js.map +1 -0
  406. package/dist/app/server/assets/sqlite-introspector-DSCAP82F-Crx7Ny14.js +6 -0
  407. package/dist/app/server/assets/sqlite-introspector-DSCAP82F-Crx7Ny14.js.map +1 -0
  408. package/dist/app/server/assets/standard-json-DY77efq0.js +2 -0
  409. package/dist/app/server/assets/standard-json-DY77efq0.js.map +1 -0
  410. package/dist/app/server/assets/standard-json-ig2t0wRt.js +2 -0
  411. package/dist/app/server/assets/standard-json-ig2t0wRt.js.map +1 -0
  412. package/dist/app/server/assets/standard-json-t-LNckA6.js +2 -0
  413. package/dist/app/server/assets/standard-json-t-LNckA6.js.map +1 -0
  414. package/dist/app/server/assets/standard-openapi-CONmVRl8.js +2 -0
  415. package/dist/app/server/assets/standard-openapi-CONmVRl8.js.map +1 -0
  416. package/dist/app/server/assets/start-C63VetBp.js +2 -0
  417. package/dist/app/server/assets/start-C63VetBp.js.map +1 -0
  418. package/dist/app/server/assets/stcUSD-DIntDJeh.svg +1 -0
  419. package/dist/app/server/assets/sury-CWZTCd75-CDaOS2oM.js +2 -0
  420. package/dist/app/server/assets/sury-CWZTCd75-CDaOS2oM.js.map +1 -0
  421. package/dist/app/server/assets/syrupUSDC-DhYwZqdM.svg +5 -0
  422. package/dist/app/server/assets/thetaUSD-Dgmksf6G.svg +1 -0
  423. package/dist/app/server/assets/typebox-Dei93FPO-D_lCVdAz.js +2 -0
  424. package/dist/app/server/assets/typebox-Dei93FPO-D_lCVdAz.js.map +1 -0
  425. package/dist/app/server/assets/useNavigate-D6d1w7KE.js +2 -0
  426. package/dist/app/server/assets/useNavigate-D6d1w7KE.js.map +1 -0
  427. package/dist/app/server/assets/useQuery-BRpCr5vj.js +2 -0
  428. package/dist/app/server/assets/useQuery-BRpCr5vj.js.map +1 -0
  429. package/dist/app/server/assets/useRegisterFieldControl-cJesrOWK.js +2 -0
  430. package/dist/app/server/assets/useRegisterFieldControl-cJesrOWK.js.map +1 -0
  431. package/dist/app/server/assets/utils-C4ZXZIZW.js +2 -0
  432. package/dist/app/server/assets/utils-C4ZXZIZW.js.map +1 -0
  433. package/dist/app/server/assets/utils-D57zfcg-.js +2 -0
  434. package/dist/app/server/assets/utils-D57zfcg-.js.map +1 -0
  435. package/dist/app/server/assets/valibot--1zFm7rT-CIKoH3MS.js +2 -0
  436. package/dist/app/server/assets/valibot--1zFm7rT-CIKoH3MS.js.map +1 -0
  437. package/dist/app/server/assets/valibot-D_HTw1Gn-BdPyLkXt.js +2 -0
  438. package/dist/app/server/assets/valibot-D_HTw1Gn-BdPyLkXt.js.map +1 -0
  439. package/dist/app/server/assets/wYLDS-CaCKDrO-.svg +10 -0
  440. package/dist/app/server/assets/wsrUSD-B2Ey0bDQ.svg +1 -0
  441. package/dist/app/server/assets/zod-Bwrt9trS-BezI5Gi1.js +2 -0
  442. package/dist/app/server/assets/zod-Bwrt9trS-BezI5Gi1.js.map +1 -0
  443. package/dist/app/server/assets/zod-DSgpEGAE-DZ7M_Q33.js +2 -0
  444. package/dist/app/server/assets/zod-DSgpEGAE-DZ7M_Q33.js.map +1 -0
  445. package/dist/app/server/assets/zyzz-6R2K52xP.css +1 -0
  446. package/dist/app/server/assets/zyzz.config-CJRpjn0E.js +3 -0
  447. package/dist/app/server/assets/zyzz.config-CJRpjn0E.js.map +1 -0
  448. package/dist/app/server/index.js +532 -0
  449. package/dist/app/server/index.js.map +1 -0
  450. package/dist/app/server/wrangler.json +1 -0
  451. package/dist/cli/Admin.d.ts +34 -0
  452. package/dist/cli/Admin.d.ts.map +1 -0
  453. package/dist/cli/Admin.js +61 -0
  454. package/dist/cli/Admin.js.map +1 -0
  455. package/dist/cli/Apps.d.ts +9 -0
  456. package/dist/cli/Apps.d.ts.map +1 -0
  457. package/dist/cli/Apps.js +34 -0
  458. package/dist/cli/Apps.js.map +1 -0
  459. package/dist/cli/Cli.d.ts +13 -0
  460. package/dist/cli/Cli.d.ts.map +1 -0
  461. package/dist/cli/Cli.js +26 -0
  462. package/dist/cli/Cli.js.map +1 -0
  463. package/dist/cli/Project.d.ts +17 -0
  464. package/dist/cli/Project.d.ts.map +1 -0
  465. package/dist/cli/Project.js +90 -0
  466. package/dist/cli/Project.js.map +1 -0
  467. package/dist/cli/Realms.d.ts +24 -0
  468. package/dist/cli/Realms.d.ts.map +1 -0
  469. package/dist/cli/Realms.js +48 -0
  470. package/dist/cli/Realms.js.map +1 -0
  471. package/dist/cli/Session.d.ts +79 -0
  472. package/dist/cli/Session.d.ts.map +1 -0
  473. package/dist/cli/Session.js +229 -0
  474. package/dist/cli/Session.js.map +1 -0
  475. package/dist/cli/User.d.ts +24 -0
  476. package/dist/cli/User.d.ts.map +1 -0
  477. package/dist/cli/User.js +34 -0
  478. package/dist/cli/User.js.map +1 -0
  479. package/dist/cli/V1.d.ts +32 -0
  480. package/dist/cli/V1.d.ts.map +1 -0
  481. package/dist/cli/V1.js +38 -0
  482. package/dist/cli/V1.js.map +1 -0
  483. package/dist/cli/bin.d.ts +3 -0
  484. package/dist/cli/bin.d.ts.map +1 -0
  485. package/dist/cli/bin.js +46 -0
  486. package/dist/cli/bin.js.map +1 -0
  487. package/dist/cli/commands/admin/apps/create.d.ts +23 -0
  488. package/dist/cli/commands/admin/apps/create.d.ts.map +1 -0
  489. package/dist/cli/commands/admin/apps/create.js +84 -0
  490. package/dist/cli/commands/admin/apps/create.js.map +1 -0
  491. package/dist/cli/commands/admin/apps/delete.d.ts +15 -0
  492. package/dist/cli/commands/admin/apps/delete.d.ts.map +1 -0
  493. package/dist/cli/commands/admin/apps/delete.js +41 -0
  494. package/dist/cli/commands/admin/apps/delete.js.map +1 -0
  495. package/dist/cli/commands/admin/apps/index.d.ts +5 -0
  496. package/dist/cli/commands/admin/apps/index.d.ts.map +1 -0
  497. package/dist/cli/commands/admin/apps/index.js +14 -0
  498. package/dist/cli/commands/admin/apps/index.js.map +1 -0
  499. package/dist/cli/commands/admin/apps/list.d.ts +10 -0
  500. package/dist/cli/commands/admin/apps/list.d.ts.map +1 -0
  501. package/dist/cli/commands/admin/apps/list.js +26 -0
  502. package/dist/cli/commands/admin/apps/list.js.map +1 -0
  503. package/dist/cli/commands/admin/apps/rotate-secret.d.ts +17 -0
  504. package/dist/cli/commands/admin/apps/rotate-secret.d.ts.map +1 -0
  505. package/dist/cli/commands/admin/apps/rotate-secret.js +47 -0
  506. package/dist/cli/commands/admin/apps/rotate-secret.js.map +1 -0
  507. package/dist/cli/commands/admin/apps/update.d.ts +20 -0
  508. package/dist/cli/commands/admin/apps/update.d.ts.map +1 -0
  509. package/dist/cli/commands/admin/apps/update.js +71 -0
  510. package/dist/cli/commands/admin/apps/update.js.map +1 -0
  511. package/dist/cli/commands/admin/index.d.ts +5 -0
  512. package/dist/cli/commands/admin/index.d.ts.map +1 -0
  513. package/dist/cli/commands/admin/index.js +13 -0
  514. package/dist/cli/commands/admin/index.js.map +1 -0
  515. package/dist/cli/commands/admin/migrate.d.ts +10 -0
  516. package/dist/cli/commands/admin/migrate.d.ts.map +1 -0
  517. package/dist/cli/commands/admin/migrate.js +20 -0
  518. package/dist/cli/commands/admin/migrate.js.map +1 -0
  519. package/dist/cli/commands/admin/realms/add.d.ts +13 -0
  520. package/dist/cli/commands/admin/realms/add.d.ts.map +1 -0
  521. package/dist/cli/commands/admin/realms/add.js +42 -0
  522. package/dist/cli/commands/admin/realms/add.js.map +1 -0
  523. package/dist/cli/commands/admin/realms/index.d.ts +5 -0
  524. package/dist/cli/commands/admin/realms/index.d.ts.map +1 -0
  525. package/dist/cli/commands/admin/realms/index.js +13 -0
  526. package/dist/cli/commands/admin/realms/index.js.map +1 -0
  527. package/dist/cli/commands/admin/realms/list.d.ts +14 -0
  528. package/dist/cli/commands/admin/realms/list.d.ts.map +1 -0
  529. package/dist/cli/commands/admin/realms/list.js +36 -0
  530. package/dist/cli/commands/admin/realms/list.js.map +1 -0
  531. package/dist/cli/commands/admin/realms/passkeys/index.d.ts +5 -0
  532. package/dist/cli/commands/admin/realms/passkeys/index.d.ts.map +1 -0
  533. package/dist/cli/commands/admin/realms/passkeys/index.js +13 -0
  534. package/dist/cli/commands/admin/realms/passkeys/index.js.map +1 -0
  535. package/dist/cli/commands/admin/realms/passkeys/set.d.ts +17 -0
  536. package/dist/cli/commands/admin/realms/passkeys/set.d.ts.map +1 -0
  537. package/dist/cli/commands/admin/realms/passkeys/set.js +46 -0
  538. package/dist/cli/commands/admin/realms/passkeys/set.js.map +1 -0
  539. package/dist/cli/commands/admin/realms/privy/index.d.ts +5 -0
  540. package/dist/cli/commands/admin/realms/privy/index.d.ts.map +1 -0
  541. package/dist/cli/commands/admin/realms/privy/index.js +13 -0
  542. package/dist/cli/commands/admin/realms/privy/index.js.map +1 -0
  543. package/dist/cli/commands/admin/realms/privy/set.d.ts +19 -0
  544. package/dist/cli/commands/admin/realms/privy/set.d.ts.map +1 -0
  545. package/dist/cli/commands/admin/realms/privy/set.js +66 -0
  546. package/dist/cli/commands/admin/realms/privy/set.js.map +1 -0
  547. package/dist/cli/commands/admin/realms/remove.d.ts +12 -0
  548. package/dist/cli/commands/admin/realms/remove.d.ts.map +1 -0
  549. package/dist/cli/commands/admin/realms/remove.js +35 -0
  550. package/dist/cli/commands/admin/realms/remove.js.map +1 -0
  551. package/dist/cli/commands/admin/realms/secp256k1/disable.d.ts +16 -0
  552. package/dist/cli/commands/admin/realms/secp256k1/disable.d.ts.map +1 -0
  553. package/dist/cli/commands/admin/realms/secp256k1/disable.js +42 -0
  554. package/dist/cli/commands/admin/realms/secp256k1/disable.js.map +1 -0
  555. package/dist/cli/commands/admin/realms/secp256k1/enable.d.ts +16 -0
  556. package/dist/cli/commands/admin/realms/secp256k1/enable.d.ts.map +1 -0
  557. package/dist/cli/commands/admin/realms/secp256k1/enable.js +42 -0
  558. package/dist/cli/commands/admin/realms/secp256k1/enable.js.map +1 -0
  559. package/dist/cli/commands/admin/realms/secp256k1/index.d.ts +9 -0
  560. package/dist/cli/commands/admin/realms/secp256k1/index.d.ts.map +1 -0
  561. package/dist/cli/commands/admin/realms/secp256k1/index.js +17 -0
  562. package/dist/cli/commands/admin/realms/secp256k1/index.js.map +1 -0
  563. package/dist/cli/commands/admin/realms/set.d.ts +17 -0
  564. package/dist/cli/commands/admin/realms/set.d.ts.map +1 -0
  565. package/dist/cli/commands/admin/realms/set.js +46 -0
  566. package/dist/cli/commands/admin/realms/set.js.map +1 -0
  567. package/dist/cli/commands/admin/rotate-key.d.ts +16 -0
  568. package/dist/cli/commands/admin/rotate-key.d.ts.map +1 -0
  569. package/dist/cli/commands/admin/rotate-key.js +46 -0
  570. package/dist/cli/commands/admin/rotate-key.js.map +1 -0
  571. package/dist/cli/commands/init.d.ts +11 -0
  572. package/dist/cli/commands/init.d.ts.map +1 -0
  573. package/dist/cli/commands/init.js +34 -0
  574. package/dist/cli/commands/init.js.map +1 -0
  575. package/dist/cli/commands/login.d.ts +12 -0
  576. package/dist/cli/commands/login.d.ts.map +1 -0
  577. package/dist/cli/commands/login.js +29 -0
  578. package/dist/cli/commands/login.js.map +1 -0
  579. package/dist/cli/commands/logout.d.ts +8 -0
  580. package/dist/cli/commands/logout.d.ts.map +1 -0
  581. package/dist/cli/commands/logout.js +19 -0
  582. package/dist/cli/commands/logout.js.map +1 -0
  583. package/dist/cli/commands/whoami.d.ts +12 -0
  584. package/dist/cli/commands/whoami.d.ts.map +1 -0
  585. package/dist/cli/commands/whoami.js +24 -0
  586. package/dist/cli/commands/whoami.js.map +1 -0
  587. package/dist/client/Actions.d.ts +108 -0
  588. package/dist/client/Actions.d.ts.map +1 -0
  589. package/dist/client/Actions.js +94 -0
  590. package/dist/client/Actions.js.map +1 -0
  591. package/dist/client/Auth.d.ts +143 -0
  592. package/dist/client/Auth.d.ts.map +1 -0
  593. package/dist/client/Auth.js +106 -0
  594. package/dist/client/Auth.js.map +1 -0
  595. package/dist/client/Authorization.d.ts +29 -0
  596. package/dist/client/Authorization.d.ts.map +1 -0
  597. package/dist/client/Authorization.js +12 -0
  598. package/dist/client/Authorization.js.map +1 -0
  599. package/dist/client/Decorator.d.ts +172 -0
  600. package/dist/client/Decorator.d.ts.map +1 -0
  601. package/dist/client/Decorator.js +241 -0
  602. package/dist/client/Decorator.js.map +1 -0
  603. package/dist/client/Key.d.ts +82 -0
  604. package/dist/client/Key.d.ts.map +1 -0
  605. package/dist/client/Key.js +81 -0
  606. package/dist/client/Key.js.map +1 -0
  607. package/dist/client/Pending.d.ts +38 -0
  608. package/dist/client/Pending.d.ts.map +1 -0
  609. package/dist/client/Pending.js +12 -0
  610. package/dist/client/Pending.js.map +1 -0
  611. package/dist/client/Permissions.d.ts +36 -0
  612. package/dist/client/Permissions.d.ts.map +1 -0
  613. package/dist/client/Permissions.js +16 -0
  614. package/dist/client/Permissions.js.map +1 -0
  615. package/dist/client/Storage.d.ts +27 -0
  616. package/dist/client/Storage.d.ts.map +1 -0
  617. package/dist/client/Storage.js +16 -0
  618. package/dist/client/Storage.js.map +1 -0
  619. package/dist/client/TempoAccount.d.ts +52 -0
  620. package/dist/client/TempoAccount.d.ts.map +1 -0
  621. package/dist/client/TempoAccount.js +17 -0
  622. package/dist/client/TempoAccount.js.map +1 -0
  623. package/dist/client/Tokens.d.ts +25 -0
  624. package/dist/client/Tokens.d.ts.map +1 -0
  625. package/dist/client/Tokens.js +12 -0
  626. package/dist/client/Tokens.js.map +1 -0
  627. package/dist/client/User.d.ts +21 -0
  628. package/dist/client/User.d.ts.map +1 -0
  629. package/dist/client/User.js +12 -0
  630. package/dist/client/User.js.map +1 -0
  631. package/dist/client/actions/account.d.ts +75 -0
  632. package/dist/client/actions/account.d.ts.map +1 -0
  633. package/dist/client/actions/account.js +102 -0
  634. package/dist/client/actions/account.js.map +1 -0
  635. package/dist/client/actions/device.d.ts +52 -0
  636. package/dist/client/actions/device.d.ts.map +1 -0
  637. package/dist/client/actions/device.js +103 -0
  638. package/dist/client/actions/device.js.map +1 -0
  639. package/dist/client/actions/email.d.ts +89 -0
  640. package/dist/client/actions/email.d.ts.map +1 -0
  641. package/dist/client/actions/email.js +86 -0
  642. package/dist/client/actions/email.js.map +1 -0
  643. package/dist/client/actions/oauth.d.ts +112 -0
  644. package/dist/client/actions/oauth.d.ts.map +1 -0
  645. package/dist/client/actions/oauth.js +103 -0
  646. package/dist/client/actions/oauth.js.map +1 -0
  647. package/dist/client/actions/passkey.d.ts +140 -0
  648. package/dist/client/actions/passkey.d.ts.map +1 -0
  649. package/dist/client/actions/passkey.js +170 -0
  650. package/dist/client/actions/passkey.js.map +1 -0
  651. package/dist/client/actions/realm.d.ts +25 -0
  652. package/dist/client/actions/realm.d.ts.map +1 -0
  653. package/dist/client/actions/realm.js +16 -0
  654. package/dist/client/actions/realm.js.map +1 -0
  655. package/dist/client/actions/redirect.d.ts +152 -0
  656. package/dist/client/actions/redirect.d.ts.map +1 -0
  657. package/dist/client/actions/redirect.js +311 -0
  658. package/dist/client/actions/redirect.js.map +1 -0
  659. package/dist/client/internal/accessKey.d.ts +21 -0
  660. package/dist/client/internal/accessKey.d.ts.map +1 -0
  661. package/dist/client/internal/accessKey.js +38 -0
  662. package/dist/client/internal/accessKey.js.map +1 -0
  663. package/dist/client/internal/account.d.ts +17 -0
  664. package/dist/client/internal/account.d.ts.map +1 -0
  665. package/dist/client/internal/account.js +3 -0
  666. package/dist/client/internal/account.js.map +1 -0
  667. package/dist/client/internal/api.d.ts +110 -0
  668. package/dist/client/internal/api.d.ts.map +1 -0
  669. package/dist/client/internal/api.js +136 -0
  670. package/dist/client/internal/api.js.map +1 -0
  671. package/dist/client/internal/headless.d.ts +159 -0
  672. package/dist/client/internal/headless.d.ts.map +1 -0
  673. package/dist/client/internal/headless.js +196 -0
  674. package/dist/client/internal/headless.js.map +1 -0
  675. package/dist/client/internal/indexedDb.d.ts +8 -0
  676. package/dist/client/internal/indexedDb.d.ts.map +1 -0
  677. package/dist/client/internal/indexedDb.js +32 -0
  678. package/dist/client/internal/indexedDb.js.map +1 -0
  679. package/dist/client/internal/request.d.ts +56 -0
  680. package/dist/client/internal/request.d.ts.map +1 -0
  681. package/dist/client/internal/request.js +44 -0
  682. package/dist/client/internal/request.js.map +1 -0
  683. package/dist/client/internal/store.d.ts +12 -0
  684. package/dist/client/internal/store.d.ts.map +1 -0
  685. package/dist/client/internal/store.js +15 -0
  686. package/dist/client/internal/store.js.map +1 -0
  687. package/dist/client/internal/verifier.d.ts +25 -0
  688. package/dist/client/internal/verifier.d.ts.map +1 -0
  689. package/dist/client/internal/verifier.js +52 -0
  690. package/dist/client/internal/verifier.js.map +1 -0
  691. package/dist/client.d.ts +18 -0
  692. package/dist/client.d.ts.map +1 -0
  693. package/dist/client.js +18 -0
  694. package/dist/client.js.map +1 -0
  695. package/dist/index.d.ts +6 -0
  696. package/dist/index.d.ts.map +1 -0
  697. package/dist/index.js +6 -0
  698. package/dist/index.js.map +1 -0
  699. package/dist/internal/Apps.d.ts +3169 -0
  700. package/dist/internal/Apps.d.ts.map +1 -0
  701. package/dist/internal/Apps.js +948 -0
  702. package/dist/internal/Apps.js.map +1 -0
  703. package/dist/internal/Auth.d.ts +4287 -0
  704. package/dist/internal/Auth.d.ts.map +1 -0
  705. package/dist/internal/Auth.js +185 -0
  706. package/dist/internal/Auth.js.map +1 -0
  707. package/dist/internal/Authorize.d.ts +526 -0
  708. package/dist/internal/Authorize.d.ts.map +1 -0
  709. package/dist/internal/Authorize.js +330 -0
  710. package/dist/internal/Authorize.js.map +1 -0
  711. package/dist/internal/Cache.d.ts +56 -0
  712. package/dist/internal/Cache.d.ts.map +1 -0
  713. package/dist/internal/Cache.js +65 -0
  714. package/dist/internal/Cache.js.map +1 -0
  715. package/dist/internal/Chain.d.ts +738 -0
  716. package/dist/internal/Chain.d.ts.map +1 -0
  717. package/dist/internal/Chain.js +65 -0
  718. package/dist/internal/Chain.js.map +1 -0
  719. package/dist/internal/ChainList.d.ts +117 -0
  720. package/dist/internal/ChainList.d.ts.map +1 -0
  721. package/dist/internal/ChainList.js +148 -0
  722. package/dist/internal/ChainList.js.map +1 -0
  723. package/dist/internal/ChainName.d.ts +11 -0
  724. package/dist/internal/ChainName.d.ts.map +1 -0
  725. package/dist/internal/ChainName.js +13 -0
  726. package/dist/internal/ChainName.js.map +1 -0
  727. package/dist/internal/CodeEmail.d.ts +38 -0
  728. package/dist/internal/CodeEmail.d.ts.map +1 -0
  729. package/dist/internal/CodeEmail.js +85 -0
  730. package/dist/internal/CodeEmail.js.map +1 -0
  731. package/dist/internal/ConfigurableAccount.d.ts +600 -0
  732. package/dist/internal/ConfigurableAccount.d.ts.map +1 -0
  733. package/dist/internal/ConfigurableAccount.js +795 -0
  734. package/dist/internal/ConfigurableAccount.js.map +1 -0
  735. package/dist/internal/Device.d.ts +246 -0
  736. package/dist/internal/Device.d.ts.map +1 -0
  737. package/dist/internal/Device.js +257 -0
  738. package/dist/internal/Device.js.map +1 -0
  739. package/dist/internal/Env.d.ts +97 -0
  740. package/dist/internal/Env.d.ts.map +1 -0
  741. package/dist/internal/Env.js +2 -0
  742. package/dist/internal/Env.js.map +1 -0
  743. package/dist/internal/ErrorResponse.d.ts +608 -0
  744. package/dist/internal/ErrorResponse.d.ts.map +1 -0
  745. package/dist/internal/ErrorResponse.js +701 -0
  746. package/dist/internal/ErrorResponse.js.map +1 -0
  747. package/dist/internal/Id.d.ts +10 -0
  748. package/dist/internal/Id.d.ts.map +1 -0
  749. package/dist/internal/Id.js +34 -0
  750. package/dist/internal/Id.js.map +1 -0
  751. package/dist/internal/KeyAuthorization.d.ts +1650 -0
  752. package/dist/internal/KeyAuthorization.d.ts.map +1 -0
  753. package/dist/internal/KeyAuthorization.js +1187 -0
  754. package/dist/internal/KeyAuthorization.js.map +1 -0
  755. package/dist/internal/Limits.d.ts +70 -0
  756. package/dist/internal/Limits.d.ts.map +1 -0
  757. package/dist/internal/Limits.js +36 -0
  758. package/dist/internal/Limits.js.map +1 -0
  759. package/dist/internal/Log.d.ts +34 -0
  760. package/dist/internal/Log.d.ts.map +1 -0
  761. package/dist/internal/Log.js +99 -0
  762. package/dist/internal/Log.js.map +1 -0
  763. package/dist/internal/LogLine.d.ts +29 -0
  764. package/dist/internal/LogLine.d.ts.map +1 -0
  765. package/dist/internal/LogLine.js +50 -0
  766. package/dist/internal/LogLine.js.map +1 -0
  767. package/dist/internal/Migrations.d.ts +28 -0
  768. package/dist/internal/Migrations.d.ts.map +1 -0
  769. package/dist/internal/Migrations.js +82 -0
  770. package/dist/internal/Migrations.js.map +1 -0
  771. package/dist/internal/Owner.d.ts +230 -0
  772. package/dist/internal/Owner.d.ts.map +1 -0
  773. package/dist/internal/Owner.js +101 -0
  774. package/dist/internal/Owner.js.map +1 -0
  775. package/dist/internal/Passkey.d.ts +901 -0
  776. package/dist/internal/Passkey.d.ts.map +1 -0
  777. package/dist/internal/Passkey.js +1185 -0
  778. package/dist/internal/Passkey.js.map +1 -0
  779. package/dist/internal/PendingKey.d.ts +49 -0
  780. package/dist/internal/PendingKey.d.ts.map +1 -0
  781. package/dist/internal/PendingKey.js +58 -0
  782. package/dist/internal/PendingKey.js.map +1 -0
  783. package/dist/internal/Privy.d.ts +138 -0
  784. package/dist/internal/Privy.d.ts.map +1 -0
  785. package/dist/internal/Privy.js +285 -0
  786. package/dist/internal/Privy.js.map +1 -0
  787. package/dist/internal/RateLimit.d.ts +218 -0
  788. package/dist/internal/RateLimit.d.ts.map +1 -0
  789. package/dist/internal/RateLimit.js +209 -0
  790. package/dist/internal/RateLimit.js.map +1 -0
  791. package/dist/internal/Realm.d.ts +290 -0
  792. package/dist/internal/Realm.d.ts.map +1 -0
  793. package/dist/internal/Realm.js +502 -0
  794. package/dist/internal/Realm.js.map +1 -0
  795. package/dist/internal/RequestId.d.ts +16 -0
  796. package/dist/internal/RequestId.d.ts.map +1 -0
  797. package/dist/internal/RequestId.js +78 -0
  798. package/dist/internal/RequestId.js.map +1 -0
  799. package/dist/internal/SigningKey.d.ts +126 -0
  800. package/dist/internal/SigningKey.d.ts.map +1 -0
  801. package/dist/internal/SigningKey.js +221 -0
  802. package/dist/internal/SigningKey.js.map +1 -0
  803. package/dist/internal/TempoAccount.d.ts +181 -0
  804. package/dist/internal/TempoAccount.d.ts.map +1 -0
  805. package/dist/internal/TempoAccount.js +369 -0
  806. package/dist/internal/TempoAccount.js.map +1 -0
  807. package/dist/internal/TestInbox.d.ts +42 -0
  808. package/dist/internal/TestInbox.d.ts.map +1 -0
  809. package/dist/internal/TestInbox.js +20 -0
  810. package/dist/internal/TestInbox.js.map +1 -0
  811. package/dist/internal/Timing.d.ts +52 -0
  812. package/dist/internal/Timing.d.ts.map +1 -0
  813. package/dist/internal/Timing.js +116 -0
  814. package/dist/internal/Timing.js.map +1 -0
  815. package/dist/internal/Validation.d.ts +52 -0
  816. package/dist/internal/Validation.d.ts.map +1 -0
  817. package/dist/internal/Validation.js +22 -0
  818. package/dist/internal/Validation.js.map +1 -0
  819. package/dist/internal/Verification.d.ts +24 -0
  820. package/dist/internal/Verification.d.ts.map +1 -0
  821. package/dist/internal/Verification.js +37 -0
  822. package/dist/internal/Verification.js.map +1 -0
  823. package/dist/internal/Wallet.d.ts +66 -0
  824. package/dist/internal/Wallet.d.ts.map +1 -0
  825. package/dist/internal/Wallet.js +59 -0
  826. package/dist/internal/Wallet.js.map +1 -0
  827. package/dist/internal/owners/Passkey.d.ts +9 -0
  828. package/dist/internal/owners/Passkey.d.ts.map +1 -0
  829. package/dist/internal/owners/Passkey.js +58 -0
  830. package/dist/internal/owners/Passkey.js.map +1 -0
  831. package/dist/internal/owners/Privy.d.ts +13 -0
  832. package/dist/internal/owners/Privy.d.ts.map +1 -0
  833. package/dist/internal/owners/Privy.js +59 -0
  834. package/dist/internal/owners/Privy.js.map +1 -0
  835. package/dist/internal/owners/Secp256k1.d.ts +12 -0
  836. package/dist/internal/owners/Secp256k1.d.ts.map +1 -0
  837. package/dist/internal/owners/Secp256k1.js +99 -0
  838. package/dist/internal/owners/Secp256k1.js.map +1 -0
  839. package/dist/worker.d.ts +18 -0
  840. package/dist/worker.d.ts.map +1 -0
  841. package/dist/worker.js +18 -0
  842. package/dist/worker.js.map +1 -0
  843. package/package.json +83 -3
  844. package/src/Api.ts +157 -0
  845. package/src/App.ts +316 -0
  846. package/src/api/account.ts +2266 -0
  847. package/src/api/authenticate.ts +1662 -0
  848. package/src/api/authorize.ts +1086 -0
  849. package/src/api/device.ts +516 -0
  850. package/src/api/health.ts +72 -0
  851. package/src/api/lib/AccountStep.ts +485 -0
  852. package/src/api/lib/Auth.ts +164 -0
  853. package/src/api/lib/Configure.ts +921 -0
  854. package/src/api/lib/Consent.ts +388 -0
  855. package/src/api/lib/Cors.ts +160 -0
  856. package/src/api/lib/Database.ts +10 -0
  857. package/src/api/lib/DeviceRequest.ts +244 -0
  858. package/src/api/lib/FirstAccount.ts +136 -0
  859. package/src/api/lib/Headless.ts +616 -0
  860. package/src/api/lib/IsolateCache.ts +28 -0
  861. package/src/api/lib/KeySigner.ts +690 -0
  862. package/src/api/lib/PasskeyLink.ts +162 -0
  863. package/src/api/lib/Session.ts +64 -0
  864. package/src/api/lib/SignInConsent.ts +393 -0
  865. package/src/api/oauth.ts +1796 -0
  866. package/src/app/components/CodeInput.tsx +153 -0
  867. package/src/app/components/DevTools.tsx +1071 -0
  868. package/src/app/components/Grant.tsx +476 -0
  869. package/src/app/components/icons/BRLA.png +0 -0
  870. package/src/app/components/icons/BRZ.svg +1 -0
  871. package/src/app/components/icons/CHFAU.png +0 -0
  872. package/src/app/components/icons/DLUSD.png +0 -0
  873. package/src/app/components/icons/EURAU.svg +1 -0
  874. package/src/app/components/icons/EURC.e.svg +1 -0
  875. package/src/app/components/icons/GBPA.svg +4 -0
  876. package/src/app/components/icons/GUSD.svg +1 -0
  877. package/src/app/components/icons/MACH.svg +4 -0
  878. package/src/app/components/icons/OUSD.svg +5 -0
  879. package/src/app/components/icons/PRIME.svg +14 -0
  880. package/src/app/components/icons/SBC.svg +1 -0
  881. package/src/app/components/icons/SEKAU.svg +5 -0
  882. package/src/app/components/icons/USD1.svg +30 -0
  883. package/src/app/components/icons/USDB.svg +11 -0
  884. package/src/app/components/icons/USDC.e.svg +1 -0
  885. package/src/app/components/icons/USDT0.svg +1 -0
  886. package/src/app/components/icons/USDY.svg +16 -0
  887. package/src/app/components/icons/USDe.svg +1 -0
  888. package/src/app/components/icons/YLDS.svg +3 -0
  889. package/src/app/components/icons/alphaUSD.svg +1 -0
  890. package/src/app/components/icons/betaUSD.svg +1 -0
  891. package/src/app/components/icons/cUSD.svg +1 -0
  892. package/src/app/components/icons/cbBTC.svg +1 -0
  893. package/src/app/components/icons/frxUSD.svg +1 -0
  894. package/src/app/components/icons/goUSD.svg +5 -0
  895. package/src/app/components/icons/iUSD.svg +1 -0
  896. package/src/app/components/icons/pathUSD.svg +25 -0
  897. package/src/app/components/icons/rUSD.svg +1 -0
  898. package/src/app/components/icons/reUSD.svg +1 -0
  899. package/src/app/components/icons/sUSDe.svg +1 -0
  900. package/src/app/components/icons/siUSD.svg +1 -0
  901. package/src/app/components/icons/stcUSD.svg +1 -0
  902. package/src/app/components/icons/syrupUSDC.svg +5 -0
  903. package/src/app/components/icons/thetaUSD.svg +1 -0
  904. package/src/app/components/icons/wYLDS.svg +10 -0
  905. package/src/app/components/icons/wsrUSD.svg +1 -0
  906. package/src/app/components/logos/OUSD.dark.svg +17 -0
  907. package/src/app/components/logos/OUSD.light.svg +17 -0
  908. package/src/app/coverage.server.ts +73 -0
  909. package/src/app/coverage.ts +69 -0
  910. package/src/app/crons/cleanup.ts +104 -0
  911. package/src/app/db/auth.ts +440 -0
  912. package/src/app/db/migrations/0000_better_auth.sql +53 -0
  913. package/src/app/db/migrations/0001_oauth_provider.sql +162 -0
  914. package/src/app/db/migrations/0002_device_code.sql +17 -0
  915. package/src/app/db/migrations/0003_realms.sql +27 -0
  916. package/src/app/db/migrations/0004_default_realm.sql +2 -0
  917. package/src/app/db/migrations/0005_passkeys.sql +30 -0
  918. package/src/app/db/migrations/0006_first_accounts.sql +9 -0
  919. package/src/app/db/migrations/0007_pending_keys.sql +13 -0
  920. package/src/app/db/migrations/0008_secp256k1_owners.sql +18 -0
  921. package/src/app/db/migrations/0009_device_requests.sql +8 -0
  922. package/src/app/db/migrations/0010_device_keys.sql +4 -0
  923. package/src/app/db/migrations/0011_registered_passkeys.sql +2 -0
  924. package/src/app/db/migrations/0012_passkey_accounts.sql +7 -0
  925. package/src/app/db/migrations/0013_first_party_apps.sql +4 -0
  926. package/src/app/db/migrations/0014_logout_revokes_tokens.sql +17 -0
  927. package/src/app/db/migrations/0015_expiry_indexes.sql +9 -0
  928. package/src/app/db/migrations/0016_configurable_accounts.sql +15 -0
  929. package/src/app/db/migrations/0017_account_config_keys.sql +3 -0
  930. package/src/app/db/migrations/0018_better_auth_1_8.sql +9 -0
  931. package/src/app/db/migrations/0019_drop_provider_account_index.sql +1 -0
  932. package/src/app/db/migrations/meta/0000_snapshot.json +362 -0
  933. package/src/app/db/migrations/meta/0001_snapshot.json +1487 -0
  934. package/src/app/db/migrations/meta/0002_snapshot.json +1603 -0
  935. package/src/app/db/migrations/meta/0003_snapshot.json +1760 -0
  936. package/src/app/db/migrations/meta/0004_snapshot.json +1760 -0
  937. package/src/app/db/migrations/meta/0005_snapshot.json +1911 -0
  938. package/src/app/db/migrations/meta/0006_snapshot.json +1967 -0
  939. package/src/app/db/migrations/meta/0007_snapshot.json +2047 -0
  940. package/src/app/db/migrations/meta/0008_snapshot.json +2157 -0
  941. package/src/app/db/migrations/meta/0009_snapshot.json +2207 -0
  942. package/src/app/db/migrations/meta/0010_snapshot.json +2231 -0
  943. package/src/app/db/migrations/meta/0011_snapshot.json +2231 -0
  944. package/src/app/db/migrations/meta/0012_snapshot.json +2231 -0
  945. package/src/app/db/migrations/meta/0013_snapshot.json +2231 -0
  946. package/src/app/db/migrations/meta/0014_snapshot.json +2231 -0
  947. package/src/app/db/migrations/meta/0015_snapshot.json +2375 -0
  948. package/src/app/db/migrations/meta/0016_snapshot.json +2475 -0
  949. package/src/app/db/migrations/meta/0017_snapshot.json +2481 -0
  950. package/src/app/db/migrations/meta/0018_snapshot.json +2535 -0
  951. package/src/app/db/migrations/meta/0019_snapshot.json +2514 -0
  952. package/src/app/db/migrations/meta/_journal.json +146 -0
  953. package/src/app/db/schema.ts +241 -0
  954. package/src/app/db/table.ts +31 -0
  955. package/src/app/env.ts +57 -0
  956. package/src/app/inbox.ts +190 -0
  957. package/src/app/lib/Client.ts +82 -0
  958. package/src/app/lib/Inbox.ts +11 -0
  959. package/src/app/lib/Loader.ts +21 -0
  960. package/src/app/lib/Upgrade.ts +221 -0
  961. package/src/app/package.json +8 -0
  962. package/src/app/public/_headers +4 -0
  963. package/src/app/routeTree.gen.ts +219 -0
  964. package/src/app/router.tsx +47 -0
  965. package/src/app/routes/[_].flows.tsx +4254 -0
  966. package/src/app/routes/__root.tsx +172 -0
  967. package/src/app/routes/authorize.tsx +379 -0
  968. package/src/app/routes/choose-account.tsx +144 -0
  969. package/src/app/routes/deposit.tsx +107 -0
  970. package/src/app/routes/device.tsx +273 -0
  971. package/src/app/routes/error.tsx +62 -0
  972. package/src/app/routes/index.tsx +511 -0
  973. package/src/app/routes/login.tsx +577 -0
  974. package/src/app/screens/Account.tsx +559 -0
  975. package/src/app/screens/Approval.tsx +444 -0
  976. package/src/app/screens/ChooseAccount.tsx +206 -0
  977. package/src/app/screens/Deposit.tsx +523 -0
  978. package/src/app/screens/DeviceApproval.tsx +500 -0
  979. package/src/app/screens/NotFound.tsx +62 -0
  980. package/src/app/screens/SignIn.tsx +372 -0
  981. package/src/app/screens/WalletUpgrade.tsx +121 -0
  982. package/src/app/screens/chains/base.svg +3 -0
  983. package/src/app/screens/chains/ethereum.svg +11 -0
  984. package/src/app/screens/chains/solana.svg +4 -0
  985. package/src/app/screens/chains/tempo.svg +4 -0
  986. package/src/app/server.ts +342 -0
  987. package/src/app/vite.config.ts +128 -0
  988. package/src/app/void.config.ts +36 -0
  989. package/src/app/wallet.ts +69 -0
  990. package/src/app/zyzz.config.ts +52 -0
  991. package/src/cli/Admin.ts +74 -0
  992. package/src/cli/Apps.ts +27 -0
  993. package/src/cli/Cli.ts +41 -0
  994. package/src/cli/Project.ts +119 -0
  995. package/src/cli/Realms.ts +49 -0
  996. package/src/cli/Session.ts +290 -0
  997. package/src/cli/User.ts +40 -0
  998. package/src/cli/V1.ts +54 -0
  999. package/src/cli/bin.ts +44 -0
  1000. package/src/cli/commands/admin/apps/create.ts +96 -0
  1001. package/src/cli/commands/admin/apps/delete.ts +38 -0
  1002. package/src/cli/commands/admin/apps/index.ts +15 -0
  1003. package/src/cli/commands/admin/apps/list.ts +25 -0
  1004. package/src/cli/commands/admin/apps/rotate-secret.ts +47 -0
  1005. package/src/cli/commands/admin/apps/update.ts +79 -0
  1006. package/src/cli/commands/admin/index.ts +14 -0
  1007. package/src/cli/commands/admin/migrate.ts +19 -0
  1008. package/src/cli/commands/admin/realms/add.ts +40 -0
  1009. package/src/cli/commands/admin/realms/index.ts +14 -0
  1010. package/src/cli/commands/admin/realms/list.ts +38 -0
  1011. package/src/cli/commands/admin/realms/passkeys/index.ts +15 -0
  1012. package/src/cli/commands/admin/realms/passkeys/set.ts +44 -0
  1013. package/src/cli/commands/admin/realms/privy/index.ts +14 -0
  1014. package/src/cli/commands/admin/realms/privy/set.ts +69 -0
  1015. package/src/cli/commands/admin/realms/remove.ts +33 -0
  1016. package/src/cli/commands/admin/realms/secp256k1/disable.ts +40 -0
  1017. package/src/cli/commands/admin/realms/secp256k1/enable.ts +40 -0
  1018. package/src/cli/commands/admin/realms/secp256k1/index.ts +19 -0
  1019. package/src/cli/commands/admin/realms/set.ts +46 -0
  1020. package/src/cli/commands/admin/rotate-key.ts +47 -0
  1021. package/src/cli/commands/init.ts +42 -0
  1022. package/src/cli/commands/login.ts +32 -0
  1023. package/src/cli/commands/logout.ts +19 -0
  1024. package/src/cli/commands/whoami.ts +23 -0
  1025. package/src/client/Actions.ts +180 -0
  1026. package/src/client/Auth.ts +267 -0
  1027. package/src/client/Authorization.ts +34 -0
  1028. package/src/client/Decorator.ts +444 -0
  1029. package/src/client/Key.ts +137 -0
  1030. package/src/client/Pending.ts +45 -0
  1031. package/src/client/Permissions.ts +41 -0
  1032. package/src/client/Storage.ts +29 -0
  1033. package/src/client/TempoAccount.ts +55 -0
  1034. package/src/client/Tokens.ts +27 -0
  1035. package/src/client/User.ts +23 -0
  1036. package/src/client/actions/account.ts +171 -0
  1037. package/src/client/actions/device.ts +166 -0
  1038. package/src/client/actions/email.ts +164 -0
  1039. package/src/client/actions/oauth.ts +179 -0
  1040. package/src/client/actions/passkey.ts +333 -0
  1041. package/src/client/actions/realm.ts +37 -0
  1042. package/src/client/actions/redirect.ts +502 -0
  1043. package/src/client/internal/accessKey.ts +54 -0
  1044. package/src/client/internal/account.ts +18 -0
  1045. package/src/client/internal/api.ts +242 -0
  1046. package/src/client/internal/headless.ts +308 -0
  1047. package/src/client/internal/indexedDb.ts +44 -0
  1048. package/src/client/internal/request.ts +70 -0
  1049. package/src/client/internal/store.ts +20 -0
  1050. package/src/client/internal/verifier.ts +75 -0
  1051. package/src/client.ts +17 -0
  1052. package/src/index.ts +5 -0
  1053. package/src/internal/Apps.ts +1283 -0
  1054. package/src/internal/Auth.ts +273 -0
  1055. package/src/internal/Authorize.ts +433 -0
  1056. package/src/internal/Balance.ts +144 -0
  1057. package/src/internal/BodyLimit.ts +31 -0
  1058. package/src/internal/Cache.ts +119 -0
  1059. package/src/internal/Chain.ts +99 -0
  1060. package/src/internal/ChainList.ts +270 -0
  1061. package/src/internal/ChainName.ts +14 -0
  1062. package/src/internal/ChainStatus.ts +65 -0
  1063. package/src/internal/CodeEmail.ts +138 -0
  1064. package/src/internal/ConfigurableAccount.ts +1315 -0
  1065. package/src/internal/Device.ts +471 -0
  1066. package/src/internal/Env.ts +92 -0
  1067. package/src/internal/ErrorResponse.ts +896 -0
  1068. package/src/internal/Faucet.ts +43 -0
  1069. package/src/internal/Id.ts +41 -0
  1070. package/src/internal/KeyAuthorization.ts +1536 -0
  1071. package/src/internal/Limits.ts +40 -0
  1072. package/src/internal/Log.ts +166 -0
  1073. package/src/internal/LogLine.ts +81 -0
  1074. package/src/internal/Logout.ts +356 -0
  1075. package/src/internal/Migrations.ts +120 -0
  1076. package/src/internal/OpenApi.ts +300 -0
  1077. package/src/internal/Owner.ts +310 -0
  1078. package/src/internal/Passkey.ts +1904 -0
  1079. package/src/internal/PendingKey.ts +104 -0
  1080. package/src/internal/Privy.ts +536 -0
  1081. package/src/internal/RateLimit.ts +346 -0
  1082. package/src/internal/Realm.ts +814 -0
  1083. package/src/internal/RequestId.ts +118 -0
  1084. package/src/internal/SignInGrant.ts +175 -0
  1085. package/src/internal/SigningKey.ts +319 -0
  1086. package/src/internal/TempoAccount.ts +545 -0
  1087. package/src/internal/TestInbox.ts +51 -0
  1088. package/src/internal/Timing.ts +172 -0
  1089. package/src/internal/Validation.ts +52 -0
  1090. package/src/internal/Verification.ts +58 -0
  1091. package/src/internal/Wallet.ts +101 -0
  1092. package/src/internal/owners/Passkey.ts +76 -0
  1093. package/src/internal/owners/Privy.ts +82 -0
  1094. package/src/internal/owners/Secp256k1.ts +139 -0
  1095. package/src/types/app.d.ts +39 -0
  1096. package/src/worker.ts +17 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-RRUiOef2.js","names":["Fragment","textEncoder","textEncoder","waitForRequest","ReactDOMServer","EmptyObject","AsyncLocalStorage","getStartContext","getStartOptions","startOptions","textEncoder","createMiddleware","csrfSymbol","Symbol","for","innerCreateCsrfMiddleware","opts","middleware","server","ctx","csrfCtx","filter","next","isCsrfRequestAllowed","getFailureResponse","process","env","NODE_ENV","Object","defineProperty","value","createCsrfMiddleware","result","getCsrfRequestValidationResult","allowRequestsWithoutOriginCheck","fetchSite","request","headers","get","matchValue","secFetchSite","origin","URL","url","referer","refererOrigin","getOriginFromUrl","isRefererSameOrigin","matcher","Array","isArray","includes","requestOrigin","startsWith","length","code","charCodeAt","failureResponse","clone","Response","status","waitForRequest","__toESM","require_react","hasKeys","useRouter","decodePath","require_react_dom","isPromise","isDangerousProtocol","_getRenderedMatches","createServerHistory","waitForReason","executeRewriteInput","rootRouteId","useLayoutEffect","isRedirect","invariant","resolveManifestAssetLink","resolveManifestCssLink","CatchBoundary","getScriptPreloadAttrs","createInlineCssPlaceholderAsset","renderPending","createInlineCssStyleAsset","Match","getStylesheetHref","runWithStartContext","getStartContext","AsyncLocalStorage$1","dehydrateSsrMatchId","id","createSerializationAdapter","opts","SYM_ASYNC_ITERATOR","SYM_HAS_INSTANCE","SYM_IS_CONCAT_SPREADABLE","SYM_ITERATOR","SYM_MATCH","SYM_MATCH_ALL","SYM_REPLACE","SYM_SEARCH","SYM_SPECIES","SYM_SPLIT","SYM_TO_PRIMITIVE","SYM_TO_STRING_TAG","SYM_UNSCOPABLES","SYMBOL_STRING","INV_SYMBOL_REF","SYMBOL_REF","CONSTANT_STRING","CONSTANT_VAL","ERROR_CONSTRUCTOR_STRING","ERROR_CONSTRUCTOR","createSerovalNode","createConstantNode","value","TRUE_NODE","FALSE_NODE","UNDEFINED_NODE","NULL_NODE","NEG_ZERO_NODE","INFINITY_NODE","NEG_INFINITY_NODE","NAN_NODE","MIN_JSON_STRINGIFY_LENGTH","JSON_ESCAPE_DIFFERENCES","serializeChar","str","serializeString","result","lastPos","replacement","len","deserializeReplacer","deserializeString","objectToString","STEP_ERROR_CODES","getErrorMessageProd","type","getErrorMessage","SerovalError","cause","SerovalParserError","SerovalDeserializationError","getSpecificErrorMessage","code","SerovalUnsupportedTypeError","SerovalUnsupportedNodeError","SerovalMissingPluginError","SerovalMissingInstanceError","SerovalMissingReferenceError","SerovalMissingReferenceForIdError","SerovalUnknownTypedArrayError","SerovalMalformedNodeError","SerovalDepthLimitError","REFERENCES_KEY","GLOBAL_CONTEXT_R","getCrossReferenceHeader","REFERENCE","INV_REFERENCE","hasReferenceID","hasReference","getReferenceID","getReference","getErrorConstructor","error","getInitialErrorOptions","construct","getErrorOptions","options","names","name","features","getObjectFlag","obj","createNumberNode","createStringNode","createBigIntNode","current","createIndexedValueNode","createDateNode","timestamp","createTemporalNode","createRegExpNode","createWKSymbolNode","createReferenceNode","ref","createPluginNode","tag","createArrayNode","parsedItems","createBoxedNode","boxed","MAX_TYPED_ARRAY_LENGTH","createTypedArrayNode","buffer","createBigIntTypedArrayNode","createDataViewNode","createErrorNode","createAggregateErrorNode","createSetNode","items","createIteratorFactoryInstanceNode","factory","createAsyncIteratorFactoryInstanceNode","createStreamConstructorNode","sequence","createStreamNextNode","parsed","createStreamThrowNode","createStreamReturnNode","createSequenceNode","throwAt","doneAt","OpaqueReference","PROMISE_CONSTRUCTOR","resolver","resolve","reject","PROMISE_SUCCESS","data","PROMISE_FAILURE","SERIALIZED_PROMISE_CONSTRUCTOR","SERIALIZED_PROMISE_SUCCESS","SERIALIZED_PROMISE_FAILURE","SERIALIZED_STREAM_CONSTRUCTOR","listeners","alive","success","count","internal","x","listener","mode","z","subscribed","temp","ITERATOR_CONSTRUCTOR","index","instance","symbol","currentIndex","SERIALIZED_ITERATOR_CONSTRUCTOR","ASYNC_ITERATOR_CONSTRUCTOR","isThrow","pending","i","stream","createPromise","SERIALIZED_ASYNC_ITERATOR_CONSTRUCTOR","ARRAY_BUFFER_CONSTRUCTOR","decoded","b64","length","arr","SERIALIZED_ARRAY_BUFFER_CONSTRUCTOR","Sequence","values","isSequence","createSequence","createSequenceFromIterable","throwsAt","iterator","source","createIterator","sequenceToIterator","ITERATOR","ASYNC_ITERATOR","SPECIAL_REFS","SPECIAL_REF_STRING","Stream","_this$listeners$x","isStream","createStream","createStreamFromAsyncIterable","iterable","cancelled","done","cleanups","push","createAsyncIterable","streamToAsyncIterable","promiseToResult","createBaseParserContext","markParserRef","ctx","createIndexForValue","getNodeForIndexedValue","registeredId","getReferenceNode","indexed","parseWellKnownSymbol","parseSpecialReference","parseIteratorFactory","parseAsyncIteratorFactory","createObjectNode","empty","record","createMapNode","createPromiseConstructorNode","getArrayBufferView","Constructor","encodeArrayBuffer","bytes","createArrayBufferNode","createAsyncParserContext","AsyncParsePluginContext","_p","depth","parseAsync","parseItems$1","nodes","parseArray$1","parseProperties$1","entries","properties","keyNodes","valueNodes","parsePlainObject$1","parseBoxed$1","parseTypedArray$1","parseBigIntTypedArray$1","parseDataView$1","parseError$1","parseAggregateError$1","parseMap$1","key","parseSet$1","item","parsePlugin$1","currentPlugins","plugin","parsePromise$1","status","parseStreamHandle","cleanup","parseStream$1","parseSequence$1","parseObjectAsync","currentClass","proto","currentFeatures","parseFunctionAsync","parseTopAsync","createPlugin","dedupePlugins","plugins","deduped","resolvePlugins","getTypedArrayConstructor","isValidKey","isValidSymbol","DEFAULT_MAX_BASE64_LENGTH","MIN_NATIVE_BASE64_LENGTH","MAX_BIGINT_LENGTH","MAX_REGEXP_SOURCE_LENGTH","applyObjectFlag","flag","DEFAULT_DEPTH_LIMIT","createBaseDeserializerContext","maxBase64Length","refs","createVanillaDeserializerContext","DeserializePluginContext","deserialize$1","node","guardIndexedValue","isThennable","assignIndexedValueVanilla","assignIndexedValueCross","assignIndexedValue$1","deserializeKnownValue","deserializeReference","validateNodeList","list","deserializeArray","assignStringProperty","object","assignProperty","actual","assignNodeType","validateNodeType","deserializeProperties","keys","vals","deserializeObject","deserializeDate","deserializeTemporal","deserializeRegExp","deserializeSet","deserializeMap","deserializeArrayBuffer","deserializeTypedArray","offset","deserializeDataView","deserializeDictionary","fields","deserializeAggregateError","deserializeError","deserializePromise","deferred","deserialized","deserializeBoxed","deserializePlugin","deserializePromiseConstructor","deserializePromiseFulfill","deserializeIteratorFactoryInstance","deserializeAsyncIteratorFactoryInstance","deserializeStreamConstructor","deserializeStreamNext","deserializeStreamThrow","deserializeStreamReturn","deserializeIteratorFactory","deserializeAsyncIteratorFactory","isSequenceIndex","size","deserializeSequence","deserializeTop","SERIALIZED_RETURN","IS_MODERN","createFunction","parameters","body","createEffectfulFunction","REF_START_CHARS","REF_START_CHARS_LEN","REF_CHARS","REF_CHARS_LEN","getIdentifier","mod","IDENTIFIER_CHECK","isValidIdentifier","char","getAssignmentExpression","assignment","mergeAssignments","newAssignments","assignments","prev","resolveAssignments","merged","NULL_CONSTRUCTOR","SET_CONSTRUCTOR","MAP_CONSTRUCTOR","PROMISE_RESOLVE","PROMISE_REJECT","OBJECT_FLAG_CONSTRUCTOR","createBaseSerializerContext","createCrossSerializerContext","SerializePluginContext","serialize$1","getVanillaRefParam","actualIndex","state","identifier","getCrossRefParam","getRefParam","markSerializerRef","isSerializerRefMarked","pushObjectFlag","resolveFlags","resolvePatches","flags","createAssignment","createAddAssignment","createSetAssignment","createDeleteAssignment","createArrayAssign","createObjectAssign","createSequenceAssign","isIndexedValueInStack","assignIndexedValue","serializeReference","serializeArrayItem","serializeArray","isHoley","serializeProperty","check","isIdentifier","val","refParam","serializeProperties","serializeObject","serializeWithObjectAssign","serialized","serializeStringKeyAssignment","base","parentAssignment","mainAssignments","serializeAssignment","parent","serializeAssignments","serializeDictionary","init","serializeNullConstructor","serializeDate","TEMPORAL_CONSTRUCTOR","serializeTemporal","serializeRegExp","serializeSetItem","serializeSet","serializeMapEntry","keyRef","sentinel","valueRef","serializeMap","sentinelId","serializeArrayBuffer","getConstructor","serializeTypedArray","serializeDataView","serializeAggregateError","serializeError","serializePromise","fulfilled","promiseConstructor","serializeBoxed","serializePromiseConstructor","serializePromiseResolve","serializePromiseReject","serializePlugin","serializeIteratorFactory","initialized","serializeIteratorFactoryInstance","serializeAsyncIteratorFactory","promise","serializeAsyncIteratorFactoryInstance","serializeStreamConstructor","serializeStreamNext","serializeStreamThrow","serializeStreamReturn","serializeSequenceItem","serializeSequence","serializeAssignable","serializeTopCross","tree","patches","scopeId","params","args","SyncParsePluginContext","parseSOS","StreamParsePluginContext","parseWithError","pushPendingState","popPendingState","onParse","onError","callback","createStreamParserState","createStreamParserContext","parseItems","parseArray","parseProperties","parsePlainObject","parseBoxed","parseTypedArray","parseBigIntTypedArray","parseDataView","parseError","parseAggregateError","parseMap","parseSet","parseStream","handlePromiseSuccess","handlePromiseFailure","parsePromise","parsePluginSync","parsePluginStream","parsePlugin","parseSequence","parseObjectPhase2","parseObject","parseFunction","onParseInternal","onDone","initial","err","startStreamParse","flushStreamParse","destroyStreamParse","toCrossJSONAsync","crossSerializeStream","serial","toCrossJSONStream","fromJSON","disabledFeatures","sourceFeatures","makeSerovalPlugin","serializationAdapter","RawStream","settleOwner","settle","owner","rendered","import_jsx_runtime","require_jsx_runtime","Matches","router","rootRoute","inner","MatchesInner","acknowledgement","matches","match","routeId","matchComponent","RouterContextProvider","rest","provider","routerContext","RouterProvider","StartServer","props","ShallowErrorPlugin","toBase64","chunks","fromBase64","binary","textDecoder","encodeText","textEncoder$3","decodeText","pumpEncodedStream","signal","reader","readable","active","release","abort","stop","reason","encode","fromEncodedStream","unsubscribe","dispose","controller","decode","createRawStreamJSONPlugin","text","RawStreamJSONPlugin","RawStreamJSONDeserializePlugin","READABLE_STREAM_FACTORY","READABLE_STREAM_FACTORY_CONSTRUCTOR","ReadableStreamFactoryPlugin","drainStream","cleanupStream","toStream","ReadableStreamPlugin","createDefaultSerovalPlugins","defaultSerovalDeserializerPlugins","createRawStreamRPCPlugin","nextStreamId","streamId","onRawStream","GLOBAL_TSR","makeSsrSerovalPlugin","tracker","tsrScript_default","textEncoder$2","DOCUMENT_CLOSE","SCRIPT_CLOSE","DOCUMENT_CLOSE_ANCHOR_INDEX","SCRIPT_CLOSE_ANCHOR_INDEX","DOCUMENT_CLOSE_BYTES","SCRIPT_CLOSE_BYTES","encodeIntoBoundedChunk","sourceOffset","outputOffset","output","advanceByteMatcher","matcher","matched","lastMatchEnd","startIndex","anchorIndex","anchor","pattern","byte","findLast","findExactBytes","candidate","patternIndex","getExactBytesPrefixAtEnd","candidateStart","encoder","SOURCE_SEPARATOR","MAX_INITIAL_SOURCE_CODE_UNITS","MAX_BACKLOG_CODE_UNITS","MAX_BACKLOG_SOURCES","MIN_OUTPUT_BYTES","MAX_DIRECT_CODE_UNITS","MAX_HYDRATION_OUTPUT_CHUNK_BYTES","MAX_DYNAMIC_RECORD_CODE_UNITS","STREAM_PART_ATTRIBUTE","INITIAL_CLEANUP_SOURCE","INITIAL_CLEANUP_SUFFIX","DYNAMIC_CLOSE_SOURCE","HYDRATION_SCRIPT_BOUNDARY_SOURCE","HYDRATION_SCRIPT_BOUNDARY_SUFFIX","HYDRATION_SCRIPT_BOUNDARY_ANCHOR_INDEX","HYDRATION_SCRIPT_BOUNDARY_BYTES","ROUTER_PREFIX","PROMISE_PREFIX","DEFAULT_INITIAL_SOURCES","HydrationScriptOutputState","escapeAttribute","createInitialTags","before","sources","previous","lastHydrationTag","lastSource","HydrationScriptsOwner","nonce","seedSources","initialSources","seedSource","listenerError","next","notifyChange","kind","nextSource","part","batch","batchLength","end","partIndex","scriptOpening","codeUnits","nextCodeUnits","joined","onChange","wrap","tags","ownsConsumer","timeoutMs","createHydrationScripts","nodeBuffer","toBase64Fast","BINARY_FACTORY","TEXT_FACTORY","FACTORY_BINARY","FACTORY_TEXT","makeFactoryPlugin","ssrSerovalPlugins","dehydrateMatch","dehydratedMatch","shorthand","disposeSerializationSafely","notifyAndClearListeners","arg","errorMessage","MANIFEST_CACHE_SIZE","manifestCaches","getManifestCache","cache","manifest","newCache","createSieveCache","getInlineCssForPreparedRoutes","styles","hrefs","preparedRoutes","css","href","getInlineCssAssetForPreparedRoutes","getMatchedRoutesCacheKey","cacheKey","getPreparedMatchedManifestRoutes","cached","prepareMatchedManifestRoutes","inlineStyles","routes","route","inlineCssHrefs","seenInlineCssHrefs","hasStrippedRoutes","nextRoute","stripInlinedStylesheetAssetsFromRoute","cssLinks","link","hasRouteAssets","hasRequestAssets","assets","mergeRequestAssetsIntoRootRoute","preloads","requestAssets","scripts","composeManifest","scriptFormat","inlineStyle","attachRouterServerSsrUtils","memoizedPreparedManifest","getRequestAssets","hasAssets","inlineCssAsset","preparedManifest","dehydrationPhase","renderFinished","renderFinishedListeners","cleanupListeners","cleanupStarted","settled","disposeSerialization","hydrationScripts","serverSsr","matchesToDehydrate","manifestToDehydrate","dehydratedRouter","dehydrate","dehydratedData","trackPlugins","serializationAdapters","adapter","serializationCompleteSignaled","initialSerialized","completeScriptSerialization","synchronousFailure","getNormalizedURL","url","rawUrl","handledProtocolRelativeURL","decodedPathname","searchParams","normalizedHref","isSsrResponse","normalizeSsrResponse","cancelResponseBody","response","disposeSsrResponse","getSsrStatus","createSsrStreamResponse","bindSsrResponseToRequest","ssrResponse","replaceSsrResponse","stripSsrResponseBody","defineHandlerCallback","handler","splitSetCookieString","cookiesString","c","cookiesStrings","pos","start","ch","lastComma","nextStart","cookiesSeparatorFound","skipWhitespace","notSpecialChar","toHeadersInstance","mergeHeaders","headers","headersInstance","header","acc","cookie","DEFAULT_SERIALIZATION_TIMEOUT_MS","MIN_APPLICATION_STRING_CHUNK_BYTES","MAX_APPLICATION_STRING_CHUNK_BYTES","ApplicationPhase","releaseReader","cancelReader","finalizeSsrStream","aborted","onAbort","readerDone","getLifetimeMs","createCleanupAbortError","listenForAbort","setUnrefTimeout","handle","armStreamLifecycle","lifetimeTimeoutHandle","stopAbortListener","disarm","lifetimeMs","isTerminal","terminate","cleanupFailedStreamCreation","encodeStringSource","remaining","capacity","written","transformReadableStreamWithRouter","appStream","makeMergeStream","hydrationOutput","terminal","appDone","applicationPhase","insertionBoundary","stopHydrationOutputListener","appReadPending","settledAppRead","appBytes","appOffset","documentCloseIndex","appString","appStringOffset","useScriptCloseSafePoints","useRecordEndSafePoints","barrierMatcher","safePointMatcher","closeCarry","wakeResolve","disarmLifecycle","waitForWake","wakePump","enqueueAppBytes","finishAppChunk","emitAppRange","safePoint","finishCurrentChunk","loadNextAppStringChunk","encoded","processUntilBarrier","matchEnd","enterHeldClose","consumed","prefix","holdDocumentClose","matchStart","processUntilSafePoint","findSafePointEnd","endIndex","hydrationState","scanValue","waiting","processCloseCarry","carry","headLength","combined","partial","safeEnd","safePointEnd","processUntilDocumentClose","processAppChunk","startAppRead","acceptAppRead","handlePumpError","loadNextAppChunk","wake","pumpPassThrough","remainder","pump","require_react_dom_server_edge_production","__commonJSMin","React","ReactDOM","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_CONSUMER_TYPE","REACT_CONTEXT_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_SCOPE_TYPE","REACT_ACTIVITY_TYPE","REACT_LEGACY_HIDDEN_TYPE","REACT_MEMO_CACHE_SENTINEL","REACT_VIEW_TRANSITION_TYPE","REACT_RECOVERABLE_TYPE","MAYBE_ITERATOR_SYMBOL","getIteratorFn","maybeIterable","REACT_OPTIMISTIC_KEY","isArrayImpl","murmurhash3_32_gc","h1","seed","k1","handleErrorInNextTick","LocalPromise","scheduleMicrotask","currentView","writtenBytes","writeChunk","chunk","destination","allowableBytes","writeChunkAndReturn","completeWriting","textEncoder","stringToChunk","content","stringToPrecomputedChunk","byteLengthOfChunk","closeWithError","assign","hasOwnProperty","VALID_ATTRIBUTE_NAME_REGEX","illegalAttributeNameCache","validatedAttributeNameCache","isAttributeNameSafe","attributeName","unitlessNumbers","aliases","matchHtmlRegExp","escapeTextForBrowser","html","lastIndex","uppercasePattern","msPattern","isJavaScriptProtocol","sanitizeURL","ReactSharedInternals","ReactDOMSharedInternals","sharedNotPendingObject","previousDispatcher","prefetchDNS","preconnect","preload","preloadModule","preinitScript","preinitStyle","preinitModuleScript","PRELOAD_NO_CREDS","currentlyFlushingRenderState","startInlineScript","endInlineScript","startScriptSrc","startModuleSrc","scriptNonce","scriptIntegirty","scriptCrossOrigin","endAsyncScript","startInlineStyle","scriptRegex","scriptReplacer","s","suffix","importMapScriptStart","importMapScriptEnd","createRenderState","inlineScriptWithNonce","externalRuntimeConfig","nonceStyle","inlineStyleWithNonce","idPrefix","resumableState","bootstrapChunks","bootstrapScriptContent","bootstrapScripts","bootstrapModules","pushCompletedShellIdAttribute","endOfStartTag","importMap","onHeaders","maxHeadersLength","createPreambleState","pushLinkImpl","attributeEnd","createResumableState","identifierPrefix","createFormatContext","createRootFormatContext","namespaceURI","getChildFormatContext","subtreeScope","parentContext","getSuspenseViewTransition","parentViewTransition","getSuspenseFallbackFormatContext","getSuspenseContentFormatContext","makeId","treeId","localId","textSeparator","pushTextInstance","textEmbedded","target","pushViewTransitionAttributes","formatContext","pushStringAttribute","styleNameCache","styleAttributeStart","styleAssign","styleSeparator","pushStyleAttribute","style","isFirst","styleName","styleValue","nameChunk","attributeSeparator","attributeAssign","attributeEmptyString","pushBooleanAttribute","actionJavaScriptURL","startHiddenInputChunk","pushAdditionalFormField","validateAdditionalFormField","endOfStartTagSelfClosing","getCustomFormFields","formAction","customFields","pushFormActionAttribute","formData","injectFormReplayingRuntime","renderState","pushAttribute","formEncType","formMethod","formTarget","prefix$8","pushInnerHTML","innerHTML","children","flattenOptionChildren","child","selectedMarkerAttribute","formReplayingRuntimeScript","preamble","formStateMarkerIsMatching","formStateMarkerIsNotMatching","propKey","startChunkForTag","propValue","styleRegex","styleReplacer","pushSelfClosing","pushTitleImpl","endChunkForTag","headPreambleContributionChunk","bodyPreambleContributionChunk","htmlPreambleContributionChunk","pushScriptImpl","pushStartSingletonElement","pushStartGenericElement","leadingNewline","VALID_TAG_REGEX","validatedTagCache","tagStartChunk","doctypeChunk","pushStartInstance","target$jscomp$0","JSCompiler_inline_result","children$jscomp$0","innerHTML$jscomp$0","propKey$jscomp$0","propValue$jscomp$0","selectedValue","children$jscomp$1","selected","innerHTML$jscomp$1","propKey$jscomp$1","propValue$jscomp$1","stringValue","value$jscomp$0","defaultValue","children$jscomp$2","propKey$jscomp$2","propValue$jscomp$2","value$jscomp$1","defaultValue$jscomp$0","checked","defaultChecked","propKey$jscomp$3","propValue$jscomp$3","children$jscomp$3","innerHTML$jscomp$2","name$jscomp$0","formAction$jscomp$0","formEncType$jscomp$0","formMethod$jscomp$0","formTarget$jscomp$0","propKey$jscomp$4","propValue$jscomp$4","formData$jscomp$0","JSCompiler_inline_result$jscomp$0","children$jscomp$4","innerHTML$jscomp$3","formAction$jscomp$1","formEncType$jscomp$1","formMethod$jscomp$1","formTarget$jscomp$1","propKey$jscomp$5","propValue$jscomp$5","formData$jscomp$1","formActionName","JSCompiler_inline_result$jscomp$1","propKey$jscomp$6","propValue$jscomp$6","children$jscomp$5","innerHTML$jscomp$4","propKey$jscomp$7","propValue$jscomp$7","sanitizedValue","JSCompiler_inline_result$jscomp$2","noscriptTagInScope","isFallback","JSCompiler_inline_result$jscomp$3","noscriptTagInScope$jscomp$0","isFallback$jscomp$0","rel","precedence","JSCompiler_inline_result$jscomp$4","styleQueue","resourceState","resource","adoptPreloadCredentials","preloadResource","hoistableState","resource$9","noscriptTagInScope$jscomp$1","asyncProp","JSCompiler_inline_result$jscomp$5","resources","resourceState$jscomp$0","scriptProps","preloadResource$jscomp$0","resource$jscomp$0","noscriptTagInScope$jscomp$2","precedence$jscomp$0","href$jscomp$0","children$jscomp$6","innerHTML$jscomp$5","propKey$jscomp$8","propValue$jscomp$8","JSCompiler_inline_result$jscomp$6","styleQueue$jscomp$0","children$jscomp$7","innerHTML$jscomp$6","propKey$jscomp$9","propValue$jscomp$9","child$jscomp$0","noscriptTagInScope$jscomp$3","isFallback$jscomp$1","JSCompiler_inline_result$jscomp$7","children$jscomp$8","innerHTML$jscomp$7","propKey$jscomp$10","propValue$jscomp$10","pictureOrNoScriptTagInScope","src","srcSet","sizes","key$jscomp$0","promotablePreloads","resource$jscomp$1","input","JSCompiler_inline_result$jscomp$8","getPreloadAsHeader","preambleState","JSCompiler_inline_result$jscomp$9","preamble$jscomp$0","JSCompiler_inline_result$jscomp$10","preamble$jscomp$1","JSCompiler_inline_result$jscomp$11","children$jscomp$9","innerHTML$jscomp$8","propKey$jscomp$11","propValue$jscomp$11","endTagCache","hoistPreambleState","writeBootstrap","shellTimeRuntimeScript","placeholder1","placeholder2","startActivityBoundary","endActivityBoundary","startCompletedSuspenseBoundary","startPendingSuspenseBoundary1","startPendingSuspenseBoundary2","startClientRenderedSuspenseBoundary","endSuspenseBoundary","clientRenderedSuspenseBoundaryError1","clientRenderedSuspenseBoundaryErrorAttrInterstitial","clientRenderedSuspenseBoundaryError1A","clientRenderedSuspenseBoundaryError2","writeStartPendingSuspenseBoundary","startSegmentHTML","startSegmentHTML2","endSegmentHTML","startSegmentSVG","startSegmentSVG2","endSegmentSVG","startSegmentMathML","startSegmentMathML2","endSegmentMathML","startSegmentTable","startSegmentTable2","endSegmentTable","startSegmentTableBody","startSegmentTableBody2","endSegmentTableBody","startSegmentTableRow","startSegmentTableRow2","endSegmentTableRow","startSegmentColGroup","startSegmentColGroup2","endSegmentColGroup","writeStartSegment","writeEndSegment","completeSegmentScript1Full","completeSegmentScript1Partial","completeSegmentScript2","completeSegmentScriptEnd","completeBoundaryScriptFunctionOnly","completeBoundaryUpgradeToViewTransitionsInstruction","completeBoundaryScript1Partial","completeBoundaryWithStylesScript1FullPartial","completeBoundaryWithStylesScript1Partial","completeBoundaryScript2","completeBoundaryScript3a","completeBoundaryScript3b","completeBoundaryScriptEnd","clientRenderScriptFunctionOnly","clientRenderScript1Full","clientRenderScript1Partial","clientRenderScript1A","clientRenderErrorScriptArgInterstitial","clientRenderErrorScriptNull","clientRenderScriptEnd","regexForJSStringsInInstructionScripts","escapeJSStringsForInstructionScripts","regexForJSStringsInScripts","escapeJSObjectForInstructionScripts","lateStyleTagResourceOpen1","lateStyleTagResourceOpen2","lateStyleTagResourceOpen3","lateStyleTagTemplateClose","currentlyRenderingBoundaryHasStylesToHoist","destinationHasCapacity","flushStyleTagsLateForBoundary","rules","spaceSeparator","hasStylesToHoist","stylesheet","writeHoistablesForBoundary","flushResource","stylesheetFlushingQueue","flushStyleInPreamble","styleTagResourceOpen1","styleTagResourceOpen2","styleTagResourceOpen3","styleTagResourceClose","flushStylesInPreamble","hasStylesheets","preloadLateStyle","preloadLateStyles","completedShellIdAttributeStart","arrayFirstOpenBracket","arraySubsequentOpenBracket","arrayInterstitial","arrayCloseBracket","writeStyleResourceDependenciesInJS","nextArrayOpenBrackChunk","writeStyleResourceAttributeInJS","createHoistableState","request","resolveRequest","JSCompiler_temp","regexForHrefInLinkHeaderURLContext","escapeHrefForLinkHeaderURLContextReplacer","enqueueFlush","bucket","crossOrigin","escapedCrossOrigin","regexForLinkHeaderQuotedParamValueContext","escapeStringForLinkHeaderQuotedParamValueContextReplacer","as","imageSrcSet","imageSizes","fetchPriority","preloadState","paramName","hoistStyleQueueDependency","hoistStylesheetDependency","hoistHoistables","childState","parentState","hasSuspenseyContent","flushingInShell","bind","supportsRequestStorage","requestStorage","REACT_CLIENT_REFERENCE","getComponentNameFromType","innerType","emptyContextObject","currentActiveSnapshot","popToNearestCommonAncestor","parentNext","popAllPrevious","pushAllNext","popPreviousToCommonLevel","popNextToCommonLevel","switchContext","newSnapshot","classComponentUpdater","inst","payload","emptyTreeContext","getTreeId","overflow","context","clz32","pushTreeContext","baseIdWithLeadingBit","baseContext","baseLength","totalChildren","numberOfOverflowBits","clz32Fallback","log","LN2","noop","SuspenseException","trackUsedThenable","thenableState","thenable","fulfilledThenable","fulfilledValue","rejectedThenable","suspendedThenable","getSuspendedThenable","is","y","objectIs","currentlyRenderingComponent","currentlyRenderingTask","currentlyRenderingRequest","currentlyRenderingKeyPath","firstWorkInProgressHook","workInProgressHook","isReRender","didScheduleRenderPhaseUpdate","localIdCounter","actionStateCounter","actionStateMatchingIndex","thenableIndexCounter","createRecoverableError","recoverable","initializedReason","isRecoverableError","cloneRecoverableErrorAsFatal","fatalRecoverableError","recoverableError","frameStart","renderPhaseUpdates","numberOfReRenders","resolveCurrentlyRenderingComponent","createHook","createWorkInProgressHook","getThenableStateAfterSuspending","resetHooksState","basicStateReducer","action","useReducer","queue","reducer","initialArg","dispatchAction","useMemo","deps","prevState","prevDeps","nextCreate","componentIdentity","throwOnUseEffectEventCall","unsupportedStartTransition","unsupportedSetOptimisticState","useActionState","actionStateHookIndex","nextPostbackStateKey","componentKeyPath","isSignatureEqual","postbackKey","permalink","boundAction","initialState","boundAction$22","unwrapThenable","unsupportedRefresh","HooksDispatcher","usable","previousRef","initialValue","currentResumableState","getServerSnapshot","passthrough","DefaultAsyncDispatcher","prepareStackTrace","structuredStackTrace","describeBuiltInComponentFrame","reentry","describeNativeComponentFrame","fn","previousPrepareStackTrace","RunInRootFrame","Fake","control","x$24","prevProps","x$25","sample","namePropDescriptor","_RunInRootFrame$Deter","sampleStack","controlStack","sampleLines","controlLines","frame","describeComponentStackByType","lazyComponent","location","getViewTransitionClassName","defaultClass","eventClass","isEligibleForOutlining","boundary","defaultErrorHandler","RequestInstance","abortSet","rootFormatContext","progressiveChunkSize","onBrowserBailout","onAllReady","onShellReady","onShellError","onFatalError","formState","createRequest","createPendingSegment","createRenderTask","pushComponentStack","createPrerenderRequest","resumeRequest","postponedState","createReplayTask","resumeAndPrerenderRequest","currentRequest","store","pingTask","task","performWork","createSuspenseBoundary","row","fallbackAbortableTasks","blockedBoundary","finishAbortedTask","replaceSuspenseComponentStackWithSuspenseFallbackStack","componentStack","getThrownInfo","errorInfo","node$jscomp$0","info","logRecoverableError","fatalError","endRenderLifetime","finishSuspenseListRow","unblockSuspenseListRow","unblockedRow","inheritedHoistables","unblockedBoundaries","unblockedBoundary","finishedTask","tryToResolveTogetherRow","boundaries","togetherRow","allCompleteAndInlinable","rowBoundary","createSuspenseListRow","newRow","previousRow","renderSuspenseListRows","prevKeyPath","prevTreeContext","prevRow","keyPath","rows","previousSuspenseListRow","resumeSlots","n","revealOrder","resumeSegmentID","resumeNode","renderNode","node$40","newSegment","finishedSegment","thrownValue","renderWithHooks","prevThenableState","Component","secondArg","finishFunctionComponent","didEmitActionStateMarkers","actionStateCount","segment","hasId","renderNodeDestructive","renderElement","newProps","propName","defaultProps","propName$45","contextType","internalInstance","contextType$jscomp$0","getDerivedStateFromProps","partialState","oldState","oldQueue","oldReplace","nextState","dontMutate","partialState$jscomp$0","nextChildren","prevContext","prevKeyPath$jscomp$0","children$42","prevContext$43","prevKeyPath$44","preambleSegment","prevKeyPath$jscomp$1","segment$jscomp$0","prevKeyPath$jscomp$2","prevKeyPath$47","iteratorFn","step","prevKeyPath$41","prevKeyPath$jscomp$3","prevContext$jscomp$0","prevKeyPath$jscomp$4","resumableState$jscomp$0","autoName","resumableState$jscomp$1","update","enter","exit","share","viewTransition","prevKeyPath$27","prevContext$28","prevRow$29","content$30","prevKeyPath$jscomp$5","prevContext$jscomp$1","prevRow$jscomp$0","parentBoundary","parentPreamble","parentHoistableState","parentSegment","fallback","fallbackAbortSet","newBoundary","boundarySegment","contentRootSegment","trackedPostpones","suspenseComponentStack","fallbackKeyPath","fallbackReplayNode","suspendedPrimaryTask","queueCompletedSegment","preparePreamble","thrownValue$31","thrownInfo","untrackBoundary","suspendedFallbackTask","propsWithoutRef","prevKeyPath$jscomp$6","nextValue","prevValue","prevNode","newNode","prevSnapshot","render","newChildren","prevKeyPath$jscomp$7","prevReplay","resumedSegment","segmentId","childIndex","retryNode","keyOrIndex","replay","childNodes","childSlots","currentNode","abortRemainingReplayNodes","previousReplaySet","resumedBoundary","renderChildrenArray","replayNodes","j","trackPostponedBoundary","tracked","boundaryNode","addToReplayParent","trackPostpone","spawnNewSuspendedReplayTask","spawnNewSuspendedRenderTask","previousFormatContext","previousContext","previousKeyPath","previousTreeContext","previousComponentStack","childrenLength","chunkLength","thrownValue$64","abortTaskSoft","request$jscomp$0","errorDigest$jscomp$0","errorDigest","slots","abortTask","fallbackTask","isRecoverableReason","completeShell","trackedPostpones$65","completeAll","safelyEmitEarlyPreloads","linkHeader","shellComplete","queueIter","queueStep","sheetIter","sheetStep","sheet","props$jscomp$0","childSegment","segmentByteSize","postponedRow","postponedBoundary","request$jscomp$1","prevDispatcher","prevAsyncDispatcher","prevRequest","prevResumableState","pingedTasks","prevTask","startNode","ping","error$jscomp$0","prevTask$jscomp$0","startNode$jscomp$0","x$jscomp$0","ping$jscomp$0","errorInfo$jscomp$0","boundary$jscomp$0","boundaryRow","flushCompletedQueues","preparePreambleFromSubtree","collectedPreambleSegments","pendingPreambles","preparePreambleFromSegment","originalRequestByteSize","hasPendingPreambles","flushSubtree","r","chunkIdx","childIdx","flushSegment","flushedByteSize","flushingPartialBoundaries","flushingShell","flushSegmentContainer","flushCompletedBoundary","completedSegments","flushPartiallyCompletedSegment","requiresStyleInsertion","requiresViewTransitions","segmentID","completedRootSegment","completedPreambleSegments","htmlChunks","headChunks","i$jscomp$0","charsetChunks","viewportChunks","importMapChunks","hoistableChunks","segments","headChunks$jscomp$0","bodyChunks","renderState$jscomp$0","shellId","renderState$jscomp$1","viewportChunks$jscomp$0","hoistableChunks$jscomp$0","clientRenderedBoundaries","renderState$jscomp$2","completedBoundaries","partialBoundaries","boundary$71","largeBoundaries","startWork","enqueueEarlyPreloadsAfterInitialWork","startFlowing","error$73","finishAbort","abortableTasks","error$74","attachAbortSignal","renderLifetimeController","parentKeyPath","workingMap","parentNode","getPostponedState","hasFlushableShell","nextSegmentId","replaySlots","ensureCorrectIsomorphicReactVersion","isomorphicReactPackageVersion","onHeadersImpl","headersDescriptor","allReady","res","rej","require_react_dom_server_legacy_browser_production","formatProdErrorMessage","coercedHref","JSCompiler_object_inline_segmentPrefix_1724","JSCompiler_object_inline_preconnects_1738","JSCompiler_object_inline_fontPreloads_1739","JSCompiler_object_inline_highImagePreloads_1740","JSCompiler_object_inline_styles_1741","JSCompiler_object_inline_bootstrapScripts_1742","JSCompiler_object_inline_scripts_1743","JSCompiler_object_inline_bulkPreloads_1744","JSCompiler_object_inline_preloads_1745","scriptConfig","integrity","pushSegmentFinale","lastPushedText","node$39","propName$44","children$41","prevContext$42","prevKeyPath$43","prevKeyPath$46","prevKeyPath$40","prevKeyPath$26","prevContext$27","prevRow$28","content$29","thrownValue$30","thrownValue$63","trackedPostpones$64","chunk$jscomp$0","chunk$jscomp$1","chunk$jscomp$2","chunk$jscomp$3","boundary$70","error$72","renderToStringImpl","didFatal","readyToStream","generateStaticMarkup","abortReason","require_server_edge","b","l","fullPattern","naivePattern","getPattern","isNonEmptyString","isBot","userAgent","isbot","import_server_edge","renderRouterToStream","rendererTeardown","bot","renderer","rendererAbort","responseStream","responseHeaders","reactAppPassthrough","PassThrough","pipeable","resolveReady","ready","abortPipeable","Readable","defaultStreamHandler","NullProtoObj","FastURL","FastResponse","decodePathname","pathname","kEventNS","kEventRes","kEventResHeaders","kEventResErrHeaders","H3Event","req","app","_url","H3EventResponse","DISALLOWED_STATUS_CHARS","sanitizeStatusMessage","statusMessage","sanitizeStatusCode","statusCode","defaultStatusCode","HTTPError","details","messageInput","arg1","arg2","statusText","message","rawHeaders","unhandled","isJSONSerializable","_type","kNotFound","kHandled","toResponse","resolvedVal","event","config","prepareResponse","onResponse","HTTPResponse","#init","#headers","isHTTPError","errHeaders","nested","newVal","errorResponse","preparedRes","preparedHeaders","prepareResponseBody","nullBody","mergeHeaders$1","overrides","frozen","FrozenHeaders","emptyHeaders","jsonHeaders","valType","filename","method","debug","GLOBAL_EVENT_STORAGE_KEY","globalObj","eventStorage","isPromiseLike","getSetCookieValues","headersWithSetCookie","mergeEventResponseHeaders","eventSetCookies","responseSetCookies","finalizeResponse","ensureResponse","finalizeMaybeResponse","resolved","handleResponseError","requestHandler","h3Event","requestOpts","getH3Event","getResponse","HEADERS","getStartManifest","startManifest","tsrStartManifest","manifestRoutes","k","v","getServerFnById","serverFnInfo","fnModule","TSS_FORMDATA_CONTEXT","TSS_SERVER_FUNCTION","X_TSS_SERIALIZED","X_TSS_RAW_RESPONSE","TSS_CONTENT_TYPE_FRAMED","MAX_FRAME_PAYLOAD_SIZE","MAX_FRAMED_STREAMS","TSS_CONTENT_TYPE_FRAMED_VERSIONED","getStartOptions","getSerovalPlugins","routerPlugins","textEncoder$1","EMPTY_PAYLOAD","MAX_ERROR_MESSAGE_CODE_UNITS","encodeFrame","encodeErrorPayload","originalMessage","createMultiplexedStream","stopped","activePumps","wakeDemand","admission","readers","pendingRawStreams","abortOutput","errorOutput","wakeAdmission","cancelStream","waitForDemand","admitFrame","runAdmission","clearAdmission","tail","maybeClose","startPump","pumpRawStream","frameAdmission","pumpRecords","recordStream","registration","ctrl","isSafeKey","safeObjectMerge","createNullProtoObject","flattenMiddlewares","seen","flattened","recurse","maxDepth","middleware","m","middlewares","createMiddleware","resolvedOptions","__opts","setValidator","validator","createCsrfMiddleware","csrfCtx","isCsrfRequestAllowed","getFailureResponse","getCsrfRequestValidationResult","fetchSite","matchValue","origin","referer","refererOrigin","getOriginFromUrl","isRefererSameOrigin","requestOrigin","serovalPlugins","FORM_DATA_CONTENT_TYPES","MAX_PAYLOAD_SIZE","MAX_PENDING_SERIALIZATION_RECORDS","MAX_PENDING_SERIALIZATION_BYTES","encodeSerializationRecord","exceedsPendingSerializationLimit","recordCount","pendingBytes","runSerializationCleanup","cancelRawStream","handleServerAction","methodUpper","serverFnId","isServerFn","contentType","serializedContext","deserializedContext","payloadParam","unwrapped","isNotFound","isNotFoundResponse","serializeResult","serializedError","alsResponse","initialRecords","initialBytes","initialParsed","serializationFailure","json","rawStreams","createFramedResponse","writer","writable","recordAbortController","pendingRecords","abortRecordStream","disposeCurrentSerialization","writeRecord","stillOwned","initialRawStreams","isLast","multiplexedStream","records","LINK_PARAM_TOKEN_RE","PRELOAD_AS_VALUES","buildLinkParam","serializeEarlyHint","parts","hint","getStringAttr","attrs","fallbackName","getPreloadAs","addEarlyHintFetchAttrs","referrerPolicy","linkAttrsToEarlyHint","relTokens","hintRel","hintAs","collectStaticHintsFromManifest","hints","matchedRoutes","routeManifest","stylesheetHref","resolvedLink","collectDynamicHintsFromMatches","links","createEarlyHintsEvent","nextHints","nextLinks","createResponseLinkHeaderEntries","getResponseLinkHeaderEntries","entry","notifyEarlyHints","onEarlyHints","phase","getResponseLinkHeaderFilter","responseLinkHeader","appendResponseLinkHeaders","collectResponseLinkHeaderEntries","collectEarlyHintsPhase","createEarlyHintsCollector","sentLinks","sentHints","responseLinkHeaderEntries","responseLinkHeaderFilter","normalizeTransformAssetResult","escapeCssString","transformInlineCssTemplate","strings","urls","transformed","transformInlineCssStyles","transformedStyles","transformedEntries","inlineCss","template","resolveTransformAssetsCrossOrigin","isObjectShorthand","transform","resolveTransformAssetsConfig","co","assignManifestLink","nextLink","transformManifestAssets","inlineCssEnabled","_opts","scriptTransforms","transformScript","transformFn","script","buildManifest","getStaticHandlerInlineCssDefault","handlerInlineCss","resolveInlineCssForRequest","createCachedBaseManifestLoader","baseManifestPromise","loadBaseManifest","createFinalManifestTransformResolver","transformConfig","transformAssets","warmup","cachedCreateTransformPromise","clearCachedCreateTransform","createFinalManifestResolver","finalManifestCache","transformResolver","handlerDefaultInlineCss","getRequestManifestOptions","resolveFinalManifest","warmupFinalManifest","getFinalManifestCacheKey","cacheFinalManifestPromise","cachedFinalManifestPromise","cachedFinalManifestPromises","getOrCreateCachedFinalManifestPromise","computeFinalManifest","buildFinalManifest","warmupPromise","ServerFunctionSerializationAdapter","serverFnMeta","serverFn","functionId","getStartResponseHeaders","entriesPromise","defaultCsrfMiddleware","getCachedBaseManifest","getBaseManifest","createEarlyHintsForRequest","loadEntries","routerEntry","startEntry","pluginAdapters","getEntries","ROUTER_BASEPATH","SERVER_FN_BASE","IS_PRERENDERING","IS_SHELL_ENV","ERR_NO_RESPONSE","ERR_NO_DEFER","throwRouteHandlerError","throwIfMayNotDefer","getResponseFromResult","responseBodySources","disposeResponseResult","hasResponseBody","inheritsResponseOwnership","ownership","disposeResponseOwnership","streamResponse","sourceBody","getOwnedResponse","createLateResponseDisposer","executeMiddleware","responseOwnership","disposeAbandonedResult","setResponse","exposed","reconcileCtxResponse","nextPromise","runNext","nextCtx","middlewareNext","terminalNext","createStartHandler","handlerOptions","cbOrOptions","cb","finalManifestResolver","resolveManifestForRequest","routerPromise","responseOwnsCleanup","isServerFnRequest","startInstance","startOptions","pendingStartOptions","hasPluginAdapters","pluginSerializationAdapters","requestStartOptions","flattenedRequestMiddlewares","executedRequestMiddlewares","getRouter","requestRouter","isShell","history","handlerType","startContext","executeRouter","earlyHints","routerInstance","disposeLate","handleServerRoutes","middlewareResponse","d","handleRedirectResponse","relativeRedirectProtocols","redirect","serializeRedirect","redirectOptions","withParsedParams","parse","rawParams","foundRoute","isExactMatch","routeMiddlewares","terminalHandler","serverMiddleware","server","handlers","requestMethod","\"HEAD\"","\"GET\"","\"ANY\"","mayDefer","handlerMiddlewares","routeHandler","parsedHandler"],"sources":["../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/ssr-match-id.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/transformer.js","../../../../../node_modules/.pnpm/seroval@1.6.9/node_modules/seroval/dist/index.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/makeSerovalPlugin.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/RawStream.js","../../../../../node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/Transitioner.js","../../../../../node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/Matches.js","../../../../../node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/RouterProvider.js","../../../../../node_modules/.pnpm/@tanstack+react-start-server@1.167.46_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-start-server/dist/esm/StartServer.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/ShallowErrorPlugin.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/rawStreamCodec.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/RawStreamJSONPlugin.js","../../../../../node_modules/.pnpm/seroval-plugins@1.6.9_seroval@1.6.9/node_modules/seroval-plugins/dist/web-CDQeyEaf.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/seroval-plugins.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/RawStreamRPCPlugin.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/constants.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/makeSsrSerovalPlugin.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/tsrScript.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/htmlBoundaryScanner.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/hydrationScripts.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/RawStreamSSRPlugin.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/serializer/seroval-plugins.ssr.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/ssr-server.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/handlerCallback.js","../../../../../node_modules/.pnpm/cookie-es@3.1.1/node_modules/cookie-es/dist/index.mjs","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/headers.js","../../../../../node_modules/.pnpm/@tanstack+router-core@1.171.34/node_modules/@tanstack/router-core/dist/esm/ssr/transformStreamWithRouter.js","../../../../../node_modules/.pnpm/react-dom@19.3.0_react@19.3.0/node_modules/react-dom/cjs/react-dom-server.edge.production.js","../../../../../node_modules/.pnpm/react-dom@19.3.0_react@19.3.0/node_modules/react-dom/cjs/react-dom-server-legacy.browser.production.js","../../../../../node_modules/.pnpm/react-dom@19.3.0_react@19.3.0/node_modules/react-dom/server.edge.js","../../../../../node_modules/.pnpm/isbot@5.2.2/node_modules/isbot/index.mjs","../../../../../node_modules/.pnpm/@tanstack+react-router@1.170.41_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-router/dist/esm/ssr/renderRouterToStream.js","../../../../../node_modules/.pnpm/@tanstack+react-start-server@1.167.46_react-dom@19.3.0_react@19.3.0__react@19.3.0/node_modules/@tanstack/react-start-server/dist/esm/defaultStreamHandler.js","../../../../../node_modules/.pnpm/rou3@0.8.1/node_modules/rou3/dist/index.mjs","../../../../../node_modules/.pnpm/srvx@0.11.22/node_modules/srvx/dist/adapters/cloudflare.mjs","../../../../../node_modules/.pnpm/h3@2.0.1-rc.20/node_modules/h3/dist/h3-Bz4OPZv_.mjs","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/request-response.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/constants.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/router-manifest.js","../../../../../node_modules/.pnpm/@tanstack+start-client-core@1.170.34/node_modules/@tanstack/start-client-core/dist/esm/constants.js","../../../../../node_modules/.pnpm/@tanstack+start-client-core@1.170.34/node_modules/@tanstack/start-client-core/dist/esm/getStartOptions.js","../../../../../node_modules/.pnpm/@tanstack+start-client-core@1.170.34/node_modules/@tanstack/start-client-core/dist/esm/getDefaultSerovalPlugins.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/frame-protocol.js","../../../../../node_modules/.pnpm/@tanstack+start-client-core@1.170.34/node_modules/@tanstack/start-client-core/dist/esm/safeObjectMerge.js","../../../../../node_modules/.pnpm/@tanstack+start-client-core@1.170.34/node_modules/@tanstack/start-client-core/dist/esm/createServerFn.js","../../../../../node_modules/.pnpm/@tanstack+start-client-core@1.170.34/node_modules/@tanstack/start-client-core/dist/esm/createMiddleware.js","../../../../../node_modules/.pnpm/@tanstack+start-client-core@1.170.34/node_modules/@tanstack/start-client-core/dist/esm/createCsrfMiddleware.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/server-functions-handler.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/early-hints.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/transformAssetUrls.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/inlineCss.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/finalManifest.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/serializer/ServerFunctionSerializationAdapter.js","../../../../../node_modules/.pnpm/@tanstack+start-server-core@1.169.39/node_modules/@tanstack/start-server-core/dist/esm/createStartHandler.js"],"sourcesContent":["//#region src/ssr/ssr-match-id.ts\nfunction dehydrateSsrMatchId(id) {\n\treturn id.replaceAll(\"~\", \"~~\").replaceAll(\"\\0\", \"~0\").replaceAll(\"�\", \"~r\").replaceAll(\"/\", \"\\0\");\n}\nfunction hydrateSsrMatchId(id) {\n\treturn id.replaceAll(\"\\0\", \"/\").replaceAll(\"�\", \"/\").replace(/~([~0r])/g, (_, code) => code === \"0\" ? \"\\0\" : code === \"r\" ? \"�\" : code);\n}\n//#endregion\nexport { dehydrateSsrMatchId, hydrateSsrMatchId };\n\n//# sourceMappingURL=ssr-match-id.js.map","//#region src/ssr/serializer/transformer.ts\n/**\n* Create a strongly-typed serialization adapter for SSR hydration.\n* Use to register custom types with the router serializer.\n*/\nfunction createSerializationAdapter(opts) {\n\tif (process.env.NODE_ENV !== \"production\") {\n\t\tif (!opts.key || /[\\0\"\\\\<\\b\\t\\f\\r\\n\\u2028\\u2029\\uD800-\\uDFFF]/.test(opts.key)) throw new Error(`createSerializationAdapter: key ${JSON.stringify(opts.key)} is invalid. Serialization adapter keys must be non-empty and not contain NUL, \", \\\\, <, backspace, tab, form feed, line terminators, or UTF-16 surrogate code units.`);\n\t}\n\treturn opts;\n}\n//#endregion\nexport { createSerializationAdapter };\n\n//# sourceMappingURL=transformer.js.map","//#region src/core/compat.ts\n/**\n* References\n* - https://compat-table.github.io/compat-table/es6/\n* - MDN\n*/\nlet Feature = /* @__PURE__ */ function(Feature) {\n\tFeature[Feature[\"AggregateError\"] = 1] = \"AggregateError\";\n\tFeature[Feature[\"ArrowFunction\"] = 2] = \"ArrowFunction\";\n\tFeature[Feature[\"ErrorPrototypeStack\"] = 4] = \"ErrorPrototypeStack\";\n\tFeature[Feature[\"ObjectAssign\"] = 8] = \"ObjectAssign\";\n\tFeature[Feature[\"BigIntTypedArray\"] = 16] = \"BigIntTypedArray\";\n\tFeature[Feature[\"RegExp\"] = 32] = \"RegExp\";\n\tFeature[Feature[\"Temporal\"] = 64] = \"Temporal\";\n\treturn Feature;\n}({});\n//#endregion\n//#region src/core/symbols.ts\nconst SYM_ASYNC_ITERATOR = Symbol.asyncIterator;\nconst SYM_HAS_INSTANCE = Symbol.hasInstance;\nconst SYM_IS_CONCAT_SPREADABLE = Symbol.isConcatSpreadable;\nconst SYM_ITERATOR = Symbol.iterator;\nconst SYM_MATCH = Symbol.match;\nconst SYM_MATCH_ALL = Symbol.matchAll;\nconst SYM_REPLACE = Symbol.replace;\nconst SYM_SEARCH = Symbol.search;\nconst SYM_SPECIES = Symbol.species;\nconst SYM_SPLIT = Symbol.split;\nconst SYM_TO_PRIMITIVE = Symbol.toPrimitive;\nconst SYM_TO_STRING_TAG = Symbol.toStringTag;\nconst SYM_UNSCOPABLES = Symbol.unscopables;\n//#endregion\n//#region src/core/constants.ts\nconst SYMBOL_STRING = {\n\t[0]: \"Symbol.asyncIterator\",\n\t[1]: \"Symbol.hasInstance\",\n\t[2]: \"Symbol.isConcatSpreadable\",\n\t[3]: \"Symbol.iterator\",\n\t[4]: \"Symbol.match\",\n\t[5]: \"Symbol.matchAll\",\n\t[6]: \"Symbol.replace\",\n\t[7]: \"Symbol.search\",\n\t[8]: \"Symbol.species\",\n\t[9]: \"Symbol.split\",\n\t[10]: \"Symbol.toPrimitive\",\n\t[11]: \"Symbol.toStringTag\",\n\t[12]: \"Symbol.unscopables\"\n};\nconst INV_SYMBOL_REF = {\n\t[SYM_ASYNC_ITERATOR]: 0,\n\t[SYM_HAS_INSTANCE]: 1,\n\t[SYM_IS_CONCAT_SPREADABLE]: 2,\n\t[SYM_ITERATOR]: 3,\n\t[SYM_MATCH]: 4,\n\t[SYM_MATCH_ALL]: 5,\n\t[SYM_REPLACE]: 6,\n\t[SYM_SEARCH]: 7,\n\t[SYM_SPECIES]: 8,\n\t[SYM_SPLIT]: 9,\n\t[SYM_TO_PRIMITIVE]: 10,\n\t[SYM_TO_STRING_TAG]: 11,\n\t[SYM_UNSCOPABLES]: 12\n};\nconst SYMBOL_REF = {\n\t[0]: SYM_ASYNC_ITERATOR,\n\t[1]: SYM_HAS_INSTANCE,\n\t[2]: SYM_IS_CONCAT_SPREADABLE,\n\t[3]: SYM_ITERATOR,\n\t[4]: SYM_MATCH,\n\t[5]: SYM_MATCH_ALL,\n\t[6]: SYM_REPLACE,\n\t[7]: SYM_SEARCH,\n\t[8]: SYM_SPECIES,\n\t[9]: SYM_SPLIT,\n\t[10]: SYM_TO_PRIMITIVE,\n\t[11]: SYM_TO_STRING_TAG,\n\t[12]: SYM_UNSCOPABLES\n};\nconst CONSTANT_STRING = {\n\t[2]: \"!0\",\n\t[3]: \"!1\",\n\t[1]: \"void 0\",\n\t[0]: \"null\",\n\t[4]: \"-0\",\n\t[5]: \"1/0\",\n\t[6]: \"-1/0\",\n\t[7]: \"0/0\"\n};\nconst CONSTANT_VAL = {\n\t[2]: true,\n\t[3]: false,\n\t[1]: void 0,\n\t[0]: null,\n\t[4]: -0,\n\t[5]: Number.POSITIVE_INFINITY,\n\t[6]: Number.NEGATIVE_INFINITY,\n\t[7]: NaN\n};\nconst ERROR_CONSTRUCTOR_STRING = {\n\t[0]: \"Error\",\n\t[1]: \"EvalError\",\n\t[2]: \"RangeError\",\n\t[3]: \"ReferenceError\",\n\t[4]: \"SyntaxError\",\n\t[5]: \"TypeError\",\n\t[6]: \"URIError\"\n};\nconst ERROR_CONSTRUCTOR = {\n\t[0]: Error,\n\t[1]: EvalError,\n\t[2]: RangeError,\n\t[3]: ReferenceError,\n\t[4]: SyntaxError,\n\t[5]: TypeError,\n\t[6]: URIError\n};\n//#endregion\n//#region src/core/node.ts\nfunction createSerovalNode(t, i, s, c, m, p, e, a, f, b, o, l) {\n\treturn {\n\t\tt,\n\t\ti,\n\t\ts,\n\t\tc,\n\t\tm,\n\t\tp,\n\t\te,\n\t\ta,\n\t\tf,\n\t\tb,\n\t\to,\n\t\tl\n\t};\n}\n//#endregion\n//#region src/core/literals.ts\nfunction createConstantNode(value) {\n\treturn createSerovalNode(2, void 0, value, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nconst TRUE_NODE = /* @__PURE__ */ createConstantNode(2);\nconst FALSE_NODE = /* @__PURE__ */ createConstantNode(3);\nconst UNDEFINED_NODE = /* @__PURE__ */ createConstantNode(1);\nconst NULL_NODE = /* @__PURE__ */ createConstantNode(0);\nconst NEG_ZERO_NODE = /* @__PURE__ */ createConstantNode(4);\nconst INFINITY_NODE = /* @__PURE__ */ createConstantNode(5);\nconst NEG_INFINITY_NODE = /* @__PURE__ */ createConstantNode(6);\nconst NAN_NODE = /* @__PURE__ */ createConstantNode(7);\n//#endregion\n//#region src/core/string.ts\nconst MIN_JSON_STRINGIFY_LENGTH = 64;\nconst JSON_ESCAPE_DIFFERENCES = /[\\x00-\\x07\\x0b\\x0e-\\x1f<\\u2028\\u2029\\ud800-\\udfff]/;\nfunction serializeChar(str) {\n\tswitch (str) {\n\t\tcase \"\\\"\": return \"\\\\\\\"\";\n\t\tcase \"\\\\\": return \"\\\\\\\\\";\n\t\tcase \"\\n\": return \"\\\\n\";\n\t\tcase \"\\r\": return \"\\\\r\";\n\t\tcase \"\\b\": return \"\\\\b\";\n\t\tcase \"\t\": return \"\\\\t\";\n\t\tcase \"\\f\": return \"\\\\f\";\n\t\tcase \"<\": return \"\\\\x3C\";\n\t\tcase \"\\u2028\": return \"\\\\u2028\";\n\t\tcase \"\\u2029\": return \"\\\\u2029\";\n\t\tdefault: return;\n\t}\n}\nfunction serializeString(str) {\n\tif (str.length >= MIN_JSON_STRINGIFY_LENGTH && !JSON_ESCAPE_DIFFERENCES.test(str)) return JSON.stringify(str).slice(1, -1);\n\tlet result = \"\";\n\tlet lastPos = 0;\n\tlet replacement;\n\tfor (let i = 0, len = str.length; i < len; i++) {\n\t\treplacement = serializeChar(str[i]);\n\t\tif (replacement) {\n\t\t\tresult += str.slice(lastPos, i) + replacement;\n\t\t\tlastPos = i + 1;\n\t\t}\n\t}\n\tif (lastPos === 0) result = str;\n\telse result += str.slice(lastPos);\n\treturn result;\n}\nfunction deserializeReplacer(str) {\n\tswitch (str) {\n\t\tcase \"\\\\\\\\\": return \"\\\\\";\n\t\tcase \"\\\\\\\"\": return \"\\\"\";\n\t\tcase \"\\\\n\": return \"\\n\";\n\t\tcase \"\\\\r\": return \"\\r\";\n\t\tcase \"\\\\b\": return \"\\b\";\n\t\tcase \"\\\\t\": return \"\t\";\n\t\tcase \"\\\\f\": return \"\\f\";\n\t\tcase \"\\\\x3C\": return \"<\";\n\t\tcase \"\\\\u2028\": return \"\\u2028\";\n\t\tcase \"\\\\u2029\": return \"\\u2029\";\n\t\tdefault: return str;\n\t}\n}\nfunction deserializeString(str) {\n\tif (typeof str === \"string\" && !str.includes(\"\\\\\")) return str;\n\treturn str.replace(/(\\\\\\\\|\\\\\"|\\\\n|\\\\r|\\\\b|\\\\t|\\\\f|\\\\u2028|\\\\u2029|\\\\x3C)/g, deserializeReplacer);\n}\n//#endregion\n//#region src/core/errors.ts\nconst { toString: objectToString } = Object.prototype;\nconst STEP_ERROR_CODES = {\n\tparsing: 1,\n\tserialization: 2,\n\tdeserialization: 3\n};\nfunction getErrorMessageProd(type) {\n\treturn `Seroval Error (step: ${STEP_ERROR_CODES[type]})`;\n}\nconst getErrorMessage = (type, cause) => getErrorMessageProd(type);\nvar SerovalError = class extends Error {\n\tconstructor(type, cause) {\n\t\tsuper(getErrorMessage(type, cause));\n\t\tthis.cause = cause;\n\t}\n};\nvar SerovalParserError = class extends SerovalError {\n\tconstructor(cause) {\n\t\tsuper(\"parsing\", cause);\n\t}\n};\nvar SerovalSerializationError = class extends SerovalError {\n\tconstructor(cause) {\n\t\tsuper(\"serialization\", cause);\n\t}\n};\nvar SerovalDeserializationError = class extends SerovalError {\n\tconstructor(cause) {\n\t\tsuper(\"deserialization\", cause);\n\t}\n};\nfunction getSpecificErrorMessage(code) {\n\treturn `Seroval Error (specific: ${code})`;\n}\nvar SerovalUnsupportedTypeError = class extends Error {\n\tconstructor(value) {\n\t\tsuper(getSpecificErrorMessage(1));\n\t\tthis.value = value;\n\t}\n};\nvar SerovalUnsupportedNodeError = class extends Error {\n\tconstructor(node) {\n\t\tsuper(getSpecificErrorMessage(2));\n\t}\n};\nvar SerovalMissingPluginError = class extends Error {\n\tconstructor(tag) {\n\t\tsuper(getSpecificErrorMessage(3));\n\t}\n};\nvar SerovalMissingInstanceError = class extends Error {\n\tconstructor(tag) {\n\t\tsuper(getSpecificErrorMessage(4));\n\t}\n};\nvar SerovalMissingReferenceError = class extends Error {\n\tconstructor(value) {\n\t\tsuper(getSpecificErrorMessage(5));\n\t\tthis.value = value;\n\t}\n};\nvar SerovalMissingReferenceForIdError = class extends Error {\n\tconstructor(id) {\n\t\tsuper(getSpecificErrorMessage(6));\n\t}\n};\nvar SerovalUnknownTypedArrayError = class extends Error {\n\tconstructor(name) {\n\t\tsuper(getSpecificErrorMessage(7));\n\t}\n};\nvar SerovalMalformedNodeError = class extends Error {\n\tconstructor(node) {\n\t\tsuper(getSpecificErrorMessage(8));\n\t}\n};\nvar SerovalConflictedNodeIdError = class extends Error {\n\tconstructor(node) {\n\t\tsuper(getSpecificErrorMessage(9));\n\t}\n};\nvar SerovalDepthLimitError = class extends Error {\n\tconstructor(limit) {\n\t\tsuper(getSpecificErrorMessage(9));\n\t}\n};\n//#endregion\n//#region src/core/keys.ts\nconst REFERENCES_KEY = \"__SEROVAL_REFS__\";\nconst GLOBAL_CONTEXT_R = `self.\\$R`;\nfunction getCrossReferenceHeader(id) {\n\tif (id == null) return `${GLOBAL_CONTEXT_R}=${GLOBAL_CONTEXT_R}||[]`;\n\treturn `(${GLOBAL_CONTEXT_R}=${GLOBAL_CONTEXT_R}||{})[\"${serializeString(id)}\"]=[]`;\n}\n//#endregion\n//#region src/core/reference.ts\nconst REFERENCE = /* @__PURE__ */ new Map();\nconst INV_REFERENCE = /* @__PURE__ */ new Map();\nfunction createReference(id, value) {\n\tREFERENCE.set(value, id);\n\tINV_REFERENCE.set(id, value);\n\treturn value;\n}\nfunction hasReferenceID(value) {\n\treturn REFERENCE.has(value);\n}\nfunction hasReference(id) {\n\treturn INV_REFERENCE.has(id);\n}\nfunction getReferenceID(value) {\n\tif (hasReferenceID(value)) return REFERENCE.get(value);\n\tthrow new SerovalMissingReferenceError(value);\n}\nfunction getReference(id) {\n\tif (hasReference(id)) return INV_REFERENCE.get(id);\n\tthrow new SerovalMissingReferenceForIdError(id);\n}\nif (typeof globalThis !== \"undefined\") Object.defineProperty(globalThis, REFERENCES_KEY, {\n\tvalue: INV_REFERENCE,\n\tconfigurable: true,\n\twritable: false,\n\tenumerable: false\n});\nelse if (typeof window !== \"undefined\") Object.defineProperty(window, REFERENCES_KEY, {\n\tvalue: INV_REFERENCE,\n\tconfigurable: true,\n\twritable: false,\n\tenumerable: false\n});\nelse if (typeof self !== \"undefined\") Object.defineProperty(self, REFERENCES_KEY, {\n\tvalue: INV_REFERENCE,\n\tconfigurable: true,\n\twritable: false,\n\tenumerable: false\n});\nelse if (typeof global !== \"undefined\") Object.defineProperty(global, REFERENCES_KEY, {\n\tvalue: INV_REFERENCE,\n\tconfigurable: true,\n\twritable: false,\n\tenumerable: false\n});\n//#endregion\n//#region src/core/utils/error.ts\nfunction getErrorConstructor(error) {\n\tif (error instanceof EvalError) return 1;\n\tif (error instanceof RangeError) return 2;\n\tif (error instanceof ReferenceError) return 3;\n\tif (error instanceof SyntaxError) return 4;\n\tif (error instanceof TypeError) return 5;\n\tif (error instanceof URIError) return 6;\n\treturn 0;\n}\nfunction getInitialErrorOptions(error) {\n\tconst construct = ERROR_CONSTRUCTOR_STRING[getErrorConstructor(error)];\n\tif (error.name !== construct) return { name: error.name };\n\tif (error.constructor.name !== construct) return { name: error.constructor.name };\n\treturn {};\n}\nfunction getErrorOptions(error, features) {\n\tlet options = getInitialErrorOptions(error);\n\tconst names = Object.getOwnPropertyNames(error);\n\tfor (let i = 0, len = names.length, name; i < len; i++) {\n\t\tname = names[i];\n\t\tif (name !== \"name\" && name !== \"message\") {\n\t\t\tif (name === \"stack\") {\n\t\t\t\tif (features & 4) {\n\t\t\t\t\toptions = options || {};\n\t\t\t\t\toptions[name] = error[name];\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\toptions = options || {};\n\t\t\t\toptions[name] = error[name];\n\t\t\t}\n\t\t}\n\t}\n\treturn options;\n}\n//#endregion\n//#region src/core/utils/get-object-flag.ts\nfunction getObjectFlag(obj) {\n\tif (Object.isFrozen(obj)) return 3;\n\tif (Object.isSealed(obj)) return 2;\n\tif (Object.isExtensible(obj)) return 0;\n\treturn 1;\n}\n//#endregion\n//#region src/core/base-primitives.ts\nfunction createNumberNode(value) {\n\tswitch (value) {\n\t\tcase Number.POSITIVE_INFINITY: return INFINITY_NODE;\n\t\tcase Number.NEGATIVE_INFINITY: return NEG_INFINITY_NODE;\n\t}\n\tif (value !== value) return NAN_NODE;\n\tif (Object.is(value, -0)) return NEG_ZERO_NODE;\n\treturn createSerovalNode(0, void 0, value, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createStringNode(value) {\n\treturn createSerovalNode(1, void 0, serializeString(value), void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createBigIntNode(current) {\n\treturn createSerovalNode(3, void 0, \"\" + current, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createIndexedValueNode(id) {\n\treturn createSerovalNode(4, id, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createDateNode(id, current) {\n\tconst timestamp = current.valueOf();\n\treturn createSerovalNode(5, id, timestamp !== timestamp ? \"\" : current.toISOString(), void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createTemporalNode(id, type, current) {\n\treturn createSerovalNode(36, id, current.toString(), type, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createRegExpNode(id, current) {\n\treturn createSerovalNode(6, id, void 0, serializeString(current.source), current.flags, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createWKSymbolNode(id, current) {\n\treturn createSerovalNode(17, id, INV_SYMBOL_REF[current], void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createReferenceNode(id, ref) {\n\treturn createSerovalNode(18, id, serializeString(getReferenceID(ref)), void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createPluginNode(id, tag, value) {\n\treturn createSerovalNode(25, id, value, serializeString(tag), void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createArrayNode(id, current, parsedItems) {\n\treturn createSerovalNode(9, id, void 0, void 0, void 0, void 0, void 0, parsedItems, void 0, void 0, getObjectFlag(current), void 0);\n}\nfunction createBoxedNode(id, boxed) {\n\treturn createSerovalNode(21, id, void 0, void 0, void 0, void 0, void 0, void 0, boxed, void 0, void 0, void 0);\n}\nconst MAX_TYPED_ARRAY_LENGTH = 1e6;\nfunction createTypedArrayNode(id, current, buffer) {\n\tif (current.length > MAX_TYPED_ARRAY_LENGTH) throw new SerovalUnsupportedTypeError(current);\n\treturn createSerovalNode(15, id, void 0, current.constructor.name, void 0, void 0, void 0, void 0, buffer, current.byteOffset, void 0, current.length);\n}\nfunction createBigIntTypedArrayNode(id, current, buffer) {\n\tif (current.length > MAX_TYPED_ARRAY_LENGTH) throw new SerovalUnsupportedTypeError(current);\n\treturn createSerovalNode(16, id, void 0, current.constructor.name, void 0, void 0, void 0, void 0, buffer, current.byteOffset, void 0, current.length);\n}\nfunction createDataViewNode(id, current, buffer) {\n\tif (current.byteLength > MAX_TYPED_ARRAY_LENGTH) throw new SerovalUnsupportedTypeError(current);\n\treturn createSerovalNode(20, id, void 0, void 0, void 0, void 0, void 0, void 0, buffer, current.byteOffset, void 0, current.byteLength);\n}\nfunction createErrorNode(id, current, options) {\n\treturn createSerovalNode(13, id, getErrorConstructor(current), void 0, serializeString(current.message), options, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createAggregateErrorNode(id, current, options) {\n\treturn createSerovalNode(14, id, getErrorConstructor(current), void 0, serializeString(current.message), options, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction createSetNode(id, items) {\n\treturn createSerovalNode(7, id, void 0, void 0, void 0, void 0, void 0, items, void 0, void 0, void 0, void 0);\n}\nfunction createIteratorFactoryInstanceNode(factory, items) {\n\treturn createSerovalNode(28, void 0, void 0, void 0, void 0, void 0, void 0, [factory, items], void 0, void 0, void 0, void 0);\n}\nfunction createAsyncIteratorFactoryInstanceNode(factory, items) {\n\treturn createSerovalNode(30, void 0, void 0, void 0, void 0, void 0, void 0, [factory, items], void 0, void 0, void 0, void 0);\n}\nfunction createStreamConstructorNode(id, factory, sequence) {\n\treturn createSerovalNode(31, id, void 0, void 0, void 0, void 0, void 0, sequence, factory, void 0, void 0, void 0);\n}\nfunction createStreamNextNode(id, parsed) {\n\treturn createSerovalNode(32, id, void 0, void 0, void 0, void 0, void 0, void 0, parsed, void 0, void 0, void 0);\n}\nfunction createStreamThrowNode(id, parsed) {\n\treturn createSerovalNode(33, id, void 0, void 0, void 0, void 0, void 0, void 0, parsed, void 0, void 0, void 0);\n}\nfunction createStreamReturnNode(id, parsed) {\n\treturn createSerovalNode(34, id, void 0, void 0, void 0, void 0, void 0, void 0, parsed, void 0, void 0, void 0);\n}\nfunction createSequenceNode(id, sequence, throwAt, doneAt) {\n\treturn createSerovalNode(35, id, throwAt, void 0, void 0, void 0, void 0, sequence, void 0, void 0, void 0, doneAt);\n}\n//#endregion\n//#region src/core/opaque-reference.ts\n/**\n* An opaque reference allows hiding values from the serializer.\n*/\nvar OpaqueReference = class {\n\tconstructor(value, replacement) {\n\t\tthis.value = value;\n\t\tthis.replacement = replacement;\n\t}\n};\n//#endregion\n//#region src/core/constructors.ts\nconst PROMISE_CONSTRUCTOR = () => {\n\tconst resolver = {\n\t\tp: 0,\n\t\ts: 0,\n\t\tf: 0\n\t};\n\tresolver.p = new Promise((resolve, reject) => {\n\t\tresolver.s = resolve;\n\t\tresolver.f = reject;\n\t});\n\treturn resolver;\n};\nconst PROMISE_SUCCESS = (resolver, data) => {\n\tresolver.s(data);\n\tresolver.p.s = 1;\n\tresolver.p.v = data;\n};\nconst PROMISE_FAILURE = (resolver, data) => {\n\tresolver.f(data);\n\tresolver.p.s = 2;\n\tresolver.p.v = data;\n};\nconst SERIALIZED_PROMISE_CONSTRUCTOR = /* @__PURE__ */ PROMISE_CONSTRUCTOR.toString();\nconst SERIALIZED_PROMISE_SUCCESS = /* @__PURE__ */ PROMISE_SUCCESS.toString();\nconst SERIALIZED_PROMISE_FAILURE = /* @__PURE__ */ PROMISE_FAILURE.toString();\nconst STREAM_CONSTRUCTOR = () => {\n\tconst buffer = [];\n\tconst listeners = [];\n\tlet alive = true;\n\tlet success = false;\n\tlet count = 0;\n\tconst internal = {\n\t\tflush(value, mode, x) {\n\t\t\tfor (x = 0; x < count; x++) {\n\t\t\t\tconst listener = listeners[x];\n\t\t\t\tif (listener) listener[mode](value);\n\t\t\t}\n\t\t},\n\t\tup(listener, x, z, current) {\n\t\t\tfor (x = 0, z = buffer.length; x < z; x++) {\n\t\t\t\tcurrent = buffer[x];\n\t\t\t\tif (!alive && x === z - 1) listener[success ? \"return\" : \"throw\"](current);\n\t\t\t\telse listener.next(current);\n\t\t\t}\n\t\t},\n\t\ton(listener, temp = 0) {\n\t\t\tlet subscribed = alive;\n\t\t\tif (alive) {\n\t\t\t\tfor (temp = 0; temp < count; temp++) if (!listeners[temp]) break;\n\t\t\t\tif (temp === count) count++;\n\t\t\t\tlisteners[temp] = listener;\n\t\t\t}\n\t\t\tinternal.up(listener);\n\t\t\treturn () => {\n\t\t\t\tif (alive && subscribed) {\n\t\t\t\t\tsubscribed = false;\n\t\t\t\t\tlisteners[temp] = void 0;\n\t\t\t\t\twhile (count > 0 && !listeners[count - 1]) count--;\n\t\t\t\t\tlisteners.length = count;\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\t};\n\treturn {\n\t\t__SEROVAL_STREAM__: true,\n\t\ton(listener) {\n\t\t\treturn internal.on(listener);\n\t\t},\n\t\tnext(value) {\n\t\t\tif (alive) {\n\t\t\t\tbuffer.push(value);\n\t\t\t\tinternal.flush(value, \"next\");\n\t\t\t}\n\t\t},\n\t\tthrow(value) {\n\t\t\tif (alive) {\n\t\t\t\tbuffer.push(value);\n\t\t\t\tinternal.flush(value, \"throw\");\n\t\t\t\talive = false;\n\t\t\t\tsuccess = false;\n\t\t\t\tlisteners.length = 0;\n\t\t\t}\n\t\t},\n\t\treturn(value) {\n\t\t\tif (alive) {\n\t\t\t\tbuffer.push(value);\n\t\t\t\tinternal.flush(value, \"return\");\n\t\t\t\talive = false;\n\t\t\t\tsuccess = true;\n\t\t\t\tlisteners.length = 0;\n\t\t\t}\n\t\t}\n\t};\n};\nconst SERIALIZED_STREAM_CONSTRUCTOR = /* @__PURE__ */ STREAM_CONSTRUCTOR.toString();\nconst ITERATOR_CONSTRUCTOR = (symbol) => (sequence) => () => {\n\tlet index = 0;\n\tconst instance = {\n\t\t[symbol]() {\n\t\t\treturn instance;\n\t\t},\n\t\tnext() {\n\t\t\tif (index > sequence.d) return {\n\t\t\t\tdone: true,\n\t\t\t\tvalue: void 0\n\t\t\t};\n\t\t\tconst currentIndex = index++;\n\t\t\tconst data = sequence.v[currentIndex];\n\t\t\tif (currentIndex === sequence.t) throw data;\n\t\t\treturn {\n\t\t\t\tdone: currentIndex === sequence.d,\n\t\t\t\tvalue: data\n\t\t\t};\n\t\t}\n\t};\n\treturn instance;\n};\nconst SERIALIZED_ITERATOR_CONSTRUCTOR = /* @__PURE__ */ ITERATOR_CONSTRUCTOR.toString();\nconst ASYNC_ITERATOR_CONSTRUCTOR = (symbol, createPromise) => (stream) => () => {\n\tlet count = 0;\n\tlet doneAt = -1;\n\tlet isThrow = false;\n\tconst buffer = [];\n\tconst pending = [];\n\tconst internal = { finalize(i = 0, len = pending.length) {\n\t\tfor (; i < len; i++) pending[i].s({\n\t\t\tdone: true,\n\t\t\tvalue: void 0\n\t\t});\n\t} };\n\tstream.on({\n\t\tnext(value) {\n\t\t\tconst temp = pending.shift();\n\t\t\tif (temp) temp.s({\n\t\t\t\tdone: false,\n\t\t\t\tvalue\n\t\t\t});\n\t\t\tbuffer.push(value);\n\t\t},\n\t\tthrow(value) {\n\t\t\tconst temp = pending.shift();\n\t\t\tif (temp) temp.f(value);\n\t\t\tinternal.finalize();\n\t\t\tdoneAt = buffer.length;\n\t\t\tisThrow = true;\n\t\t\tbuffer.push(value);\n\t\t},\n\t\treturn(value) {\n\t\t\tconst temp = pending.shift();\n\t\t\tif (temp) temp.s({\n\t\t\t\tdone: true,\n\t\t\t\tvalue\n\t\t\t});\n\t\t\tinternal.finalize();\n\t\t\tdoneAt = buffer.length;\n\t\t\tbuffer.push(value);\n\t\t}\n\t});\n\tconst instance = {\n\t\t[symbol]() {\n\t\t\treturn instance;\n\t\t},\n\t\tnext() {\n\t\t\tif (doneAt === -1) {\n\t\t\t\tconst index = count++;\n\t\t\t\tif (index >= buffer.length) {\n\t\t\t\t\tconst temp = createPromise();\n\t\t\t\t\tpending.push(temp);\n\t\t\t\t\treturn temp.p;\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tdone: false,\n\t\t\t\t\tvalue: buffer[index]\n\t\t\t\t};\n\t\t\t}\n\t\t\tif (count > doneAt) return {\n\t\t\t\tdone: true,\n\t\t\t\tvalue: void 0\n\t\t\t};\n\t\t\tconst index = count++;\n\t\t\tconst value = buffer[index];\n\t\t\tif (index !== doneAt) return {\n\t\t\t\tdone: false,\n\t\t\t\tvalue\n\t\t\t};\n\t\t\tif (isThrow) throw value;\n\t\t\treturn {\n\t\t\t\tdone: true,\n\t\t\t\tvalue\n\t\t\t};\n\t\t}\n\t};\n\treturn instance;\n};\nconst SERIALIZED_ASYNC_ITERATOR_CONSTRUCTOR = /* @__PURE__ */ ASYNC_ITERATOR_CONSTRUCTOR.toString();\nconst ARRAY_BUFFER_CONSTRUCTOR = (b64) => {\n\tconst decoded = atob(b64);\n\tconst length = decoded.length;\n\tconst arr = new Uint8Array(length);\n\tfor (let i = 0; i < length; i++) arr[i] = decoded.charCodeAt(i);\n\treturn arr.buffer;\n};\nconst SERIALIZED_ARRAY_BUFFER_CONSTRUCTOR = /* @__PURE__ */ ARRAY_BUFFER_CONSTRUCTOR.toString();\n//#endregion\n//#region src/core/sequence.ts\n/**\n* An internal class rather than a tagged POJO: identity is checked with\n* `instanceof`, which untrusted input cannot forge (the class is not exported).\n* The eval-based `deserialize` path still rebuilds a `{__SEROVAL_SEQUENCE__…}`\n* POJO from embedded source - it has no access to this class - so a value read\n* back through `deserialize` is not an instance and, by design, is not treated\n* as a genuine Sequence on re-serialization.\n*/\nvar Sequence = class {\n\tconstructor(values, throwAt, doneAt) {\n\t\tthis.v = values;\n\t\tthis.t = throwAt;\n\t\tthis.d = doneAt;\n\t}\n};\nfunction isSequence(value) {\n\treturn value instanceof Sequence;\n}\nfunction createSequence(values, throwAt, doneAt) {\n\treturn new Sequence(values, throwAt, doneAt);\n}\nfunction createSequenceFromIterable(source) {\n\tconst values = [];\n\tlet throwsAt = -1;\n\tlet doneAt = -1;\n\tconst iterator = source[SYM_ITERATOR]();\n\twhile (true) try {\n\t\tconst value = iterator.next();\n\t\tvalues.push(value.value);\n\t\tif (value.done) {\n\t\t\tdoneAt = values.length - 1;\n\t\t\tbreak;\n\t\t}\n\t} catch (error) {\n\t\tthrowsAt = values.length;\n\t\tdoneAt = throwsAt;\n\t\tvalues.push(error);\n\t\tbreak;\n\t}\n\treturn createSequence(values, throwsAt, doneAt);\n}\nconst createIterator = ITERATOR_CONSTRUCTOR(SYM_ITERATOR);\nfunction sequenceToIterator(sequence) {\n\treturn createIterator(sequence);\n}\n//#endregion\n//#region src/core/special-reference.ts\nconst ITERATOR = {};\nconst ASYNC_ITERATOR = {};\n/**\n* Placeholder references\n*/\nconst SPECIAL_REFS = {\n\t[0]: {},\n\t[1]: {},\n\t[2]: {},\n\t[3]: {},\n\t[4]: {},\n\t[5]: {}\n};\nconst SPECIAL_REF_STRING = {\n\t[0]: \"[]\",\n\t[1]: SERIALIZED_PROMISE_CONSTRUCTOR,\n\t[2]: SERIALIZED_PROMISE_SUCCESS,\n\t[3]: SERIALIZED_PROMISE_FAILURE,\n\t[4]: SERIALIZED_STREAM_CONSTRUCTOR,\n\t[5]: SERIALIZED_ARRAY_BUFFER_CONSTRUCTOR\n};\n//#endregion\n//#region src/core/stream.ts\n/**\n* An internal class rather than a tagged POJO: identity is checked with\n* `instanceof`, which untrusted input cannot forge (the class is not exported).\n*\n* The behavior is intentionally duplicated from `STREAM_CONSTRUCTOR`. That\n* constructor's source is embedded verbatim into the eval-based `deserialize`\n* output, which has no access to this class, so the two cannot be shared. A\n* stream read back through `deserialize` is therefore a plain POJO and, by\n* design, is not treated as a genuine Stream on re-serialization. Keep the two\n* implementations in sync.\n*/\nvar Stream = class {\n\tconstructor() {\n\t\tthis.buffer = [];\n\t\tthis.listeners = [];\n\t\tthis.alive = true;\n\t\tthis.success = false;\n\t\tthis.count = 0;\n\t}\n\tflush(value, mode) {\n\t\tfor (let x = 0; x < this.count; x++) {\n\t\t\tvar _this$listeners$x;\n\t\t\t(_this$listeners$x = this.listeners[x]) === null || _this$listeners$x === void 0 || _this$listeners$x[mode](value);\n\t\t}\n\t}\n\treplay(listener) {\n\t\tfor (let x = 0, z = this.buffer.length; x < z; x++) {\n\t\t\tconst current = this.buffer[x];\n\t\t\tif (!this.alive && x === z - 1) listener[this.success ? \"return\" : \"throw\"](current);\n\t\t\telse listener.next(current);\n\t\t}\n\t}\n\ton(listener) {\n\t\tlet subscribed = this.alive;\n\t\tlet temp = 0;\n\t\tif (subscribed) {\n\t\t\tfor (; temp < this.count; temp++) if (!this.listeners[temp]) break;\n\t\t\tif (temp === this.count) this.count++;\n\t\t\tthis.listeners[temp] = listener;\n\t\t}\n\t\tthis.replay(listener);\n\t\treturn () => {\n\t\t\tif (this.alive && subscribed) {\n\t\t\t\tsubscribed = false;\n\t\t\t\tthis.listeners[temp] = void 0;\n\t\t\t\twhile (this.count > 0 && !this.listeners[this.count - 1]) this.count--;\n\t\t\t\tthis.listeners.length = this.count;\n\t\t\t}\n\t\t};\n\t}\n\tnext(value) {\n\t\tif (this.alive) {\n\t\t\tthis.buffer.push(value);\n\t\t\tthis.flush(value, \"next\");\n\t\t}\n\t}\n\tthrow(value) {\n\t\tif (this.alive) {\n\t\t\tthis.buffer.push(value);\n\t\t\tthis.flush(value, \"throw\");\n\t\t\tthis.alive = false;\n\t\t\tthis.success = false;\n\t\t\tthis.listeners.length = 0;\n\t\t}\n\t}\n\treturn(value) {\n\t\tif (this.alive) {\n\t\t\tthis.buffer.push(value);\n\t\t\tthis.flush(value, \"return\");\n\t\t\tthis.alive = false;\n\t\t\tthis.success = true;\n\t\t\tthis.listeners.length = 0;\n\t\t}\n\t}\n};\nfunction isStream(value) {\n\treturn value instanceof Stream;\n}\nfunction createStream() {\n\treturn new Stream();\n}\nfunction createStreamFromAsyncIterable(iterable, cleanups) {\n\tconst stream = createStream();\n\tconst iterator = iterable[SYM_ASYNC_ITERATOR]();\n\tlet cancelled = false;\n\tlet done = false;\n\tcleanups === null || cleanups === void 0 || cleanups.push(() => {\n\t\tif (!(done || cancelled)) {\n\t\t\tcancelled = true;\n\t\t\tPromise.resolve().then(() => {\n\t\t\t\tvar _iterator$return;\n\t\t\t\treturn (_iterator$return = iterator.return) === null || _iterator$return === void 0 ? void 0 : _iterator$return.call(iterator);\n\t\t\t}).catch(() => {});\n\t\t}\n\t});\n\tasync function push() {\n\t\ttry {\n\t\t\twhile (!cancelled) {\n\t\t\t\tconst value = await iterator.next();\n\t\t\t\tif (cancelled) return;\n\t\t\t\tif (value.done) {\n\t\t\t\t\tdone = true;\n\t\t\t\t\tstream.return(value.value);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tstream.next(value.value);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tdone = true;\n\t\t\tif (!cancelled) stream.throw(error);\n\t\t}\n\t}\n\tpush().catch(() => {});\n\treturn stream;\n}\nconst createAsyncIterable = ASYNC_ITERATOR_CONSTRUCTOR(SYM_ASYNC_ITERATOR, PROMISE_CONSTRUCTOR);\nfunction streamToAsyncIterable(stream) {\n\treturn createAsyncIterable(stream);\n}\n//#endregion\n//#region src/core/utils/promise-to-result.ts\nasync function promiseToResult(current) {\n\ttry {\n\t\treturn [1, await current];\n\t} catch (e) {\n\t\treturn [0, e];\n\t}\n}\n//#endregion\n//#region src/core/context/parser.ts\nfunction createBaseParserContext(mode, options) {\n\tvar _options$compactArray;\n\treturn {\n\t\tplugins: options.plugins,\n\t\tmode,\n\t\tmarked: /* @__PURE__ */ new Set(),\n\t\tfeatures: 127 ^ (options.disabledFeatures || 0),\n\t\trefs: options.refs || /* @__PURE__ */ new Map(),\n\t\tdepthLimit: options.depthLimit || 1e3,\n\t\tcompactArrayBufferViews: (_options$compactArray = options.compactArrayBufferViews) !== null && _options$compactArray !== void 0 ? _options$compactArray : false\n\t};\n}\n/**\n* Ensures that the value (based on an identifier) has been visited by the parser.\n* @param ctx\n* @param id\n*/\nfunction markParserRef(ctx, id) {\n\tctx.marked.add(id);\n}\n/**\n* Creates an identifier for a value\n* @param ctx\n* @param current\n*/\nfunction createIndexForValue(ctx, current) {\n\tconst id = ctx.refs.size;\n\tctx.refs.set(current, id);\n\treturn id;\n}\nfunction getNodeForIndexedValue(ctx, current) {\n\tconst registeredId = ctx.refs.get(current);\n\tif (registeredId != null) {\n\t\tmarkParserRef(ctx, registeredId);\n\t\treturn {\n\t\t\ttype: 1,\n\t\t\tvalue: createIndexedValueNode(registeredId)\n\t\t};\n\t}\n\treturn {\n\t\ttype: 0,\n\t\tvalue: createIndexForValue(ctx, current)\n\t};\n}\nfunction getReferenceNode(ctx, current) {\n\tconst indexed = getNodeForIndexedValue(ctx, current);\n\tif (indexed.type === 1) return indexed;\n\tif (hasReferenceID(current)) return {\n\t\ttype: 2,\n\t\tvalue: createReferenceNode(indexed.value, current)\n\t};\n\treturn indexed;\n}\n/**\n* Parsing methods\n*/\nfunction parseWellKnownSymbol(ctx, current) {\n\tconst ref = getReferenceNode(ctx, current);\n\tif (ref.type !== 0) return ref.value;\n\tif (current in INV_SYMBOL_REF) return createWKSymbolNode(ref.value, current);\n\tthrow new SerovalUnsupportedTypeError(current);\n}\nfunction parseSpecialReference(ctx, ref) {\n\tconst result = getNodeForIndexedValue(ctx, SPECIAL_REFS[ref]);\n\tif (result.type === 1) return result.value;\n\treturn createSerovalNode(26, result.value, ref, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0, void 0);\n}\nfunction parseIteratorFactory(ctx) {\n\tconst result = getNodeForIndexedValue(ctx, ITERATOR);\n\tif (result.type === 1) return result.value;\n\treturn createSerovalNode(27, result.value, void 0, void 0, void 0, void 0, void 0, void 0, parseWellKnownSymbol(ctx, SYM_ITERATOR), void 0, void 0, void 0);\n}\nfunction parseAsyncIteratorFactory(ctx) {\n\tconst result = getNodeForIndexedValue(ctx, ASYNC_ITERATOR);\n\tif (result.type === 1) return result.value;\n\treturn createSerovalNode(29, result.value, void 0, void 0, void 0, void 0, void 0, [parseSpecialReference(ctx, 1), parseWellKnownSymbol(ctx, SYM_ASYNC_ITERATOR)], void 0, void 0, void 0, void 0);\n}\nfunction createObjectNode(id, current, empty, record) {\n\treturn createSerovalNode(empty ? 11 : 10, id, void 0, void 0, void 0, record, void 0, void 0, void 0, void 0, getObjectFlag(current), void 0);\n}\nfunction createMapNode(ctx, id, k, v) {\n\treturn createSerovalNode(8, id, void 0, void 0, void 0, void 0, {\n\t\tk,\n\t\tv\n\t}, void 0, parseSpecialReference(ctx, 0), void 0, void 0, void 0);\n}\nfunction createPromiseConstructorNode(ctx, id, resolver) {\n\treturn createSerovalNode(22, id, resolver, void 0, void 0, void 0, void 0, void 0, parseSpecialReference(ctx, 1), void 0, void 0, void 0);\n}\nfunction getArrayBufferView(ctx, current) {\n\tif (!ctx.compactArrayBufferViews) return current;\n\tconst buffer = new Uint8Array(current.buffer, current.byteOffset, current.byteLength).slice().buffer;\n\tconst Constructor = current.constructor;\n\treturn new Constructor(buffer);\n}\nfunction encodeArrayBuffer(current) {\n\tif (typeof Buffer !== \"undefined\") return Buffer.from(current).toString(\"base64\");\n\tconst bytes = new Uint8Array(current);\n\tif (typeof bytes.toBase64 === \"function\") return bytes.toBase64();\n\tlet result = \"\";\n\tfor (let i = 0, len = bytes.length; i < len; i++) result += String.fromCharCode(bytes[i]);\n\treturn btoa(result);\n}\nfunction createArrayBufferNode(ctx, id, current) {\n\treturn createSerovalNode(19, id, encodeArrayBuffer(current), void 0, void 0, void 0, void 0, void 0, parseSpecialReference(ctx, 5), void 0, void 0, void 0);\n}\n//#endregion\n//#region src/core/context/async-parser.ts\nfunction createAsyncParserContext(mode, options) {\n\treturn {\n\t\tbase: createBaseParserContext(mode, options),\n\t\tchild: void 0\n\t};\n}\nvar AsyncParsePluginContext = class {\n\tconstructor(_p, depth) {\n\t\tthis._p = _p;\n\t\tthis.depth = depth;\n\t}\n\tparse(current) {\n\t\treturn parseAsync(this._p, this.depth, current);\n\t}\n};\nasync function parseItems$1(ctx, depth, current) {\n\tconst nodes = [];\n\tfor (let i = 0, len = current.length; i < len; i++) if (i in current) nodes[i] = await parseAsync(ctx, depth, current[i]);\n\telse nodes[i] = 0;\n\treturn nodes;\n}\nasync function parseArray$1(ctx, depth, id, current) {\n\treturn createArrayNode(id, current, await parseItems$1(ctx, depth, current));\n}\nasync function parseProperties$1(ctx, depth, properties) {\n\tconst entries = Object.entries(properties);\n\tconst keyNodes = [];\n\tconst valueNodes = [];\n\tfor (let i = 0, len = entries.length; i < len; i++) {\n\t\tkeyNodes.push(serializeString(entries[i][0]));\n\t\tvalueNodes.push(await parseAsync(ctx, depth, entries[i][1]));\n\t}\n\tif (SYM_ITERATOR in properties) {\n\t\tkeyNodes.push(parseWellKnownSymbol(ctx.base, SYM_ITERATOR));\n\t\tvalueNodes.push(createIteratorFactoryInstanceNode(parseIteratorFactory(ctx.base), await parseAsync(ctx, depth, createSequenceFromIterable(properties))));\n\t}\n\tif (SYM_ASYNC_ITERATOR in properties) {\n\t\tkeyNodes.push(parseWellKnownSymbol(ctx.base, SYM_ASYNC_ITERATOR));\n\t\tvalueNodes.push(createAsyncIteratorFactoryInstanceNode(parseAsyncIteratorFactory(ctx.base), await parseAsync(ctx, depth, createStreamFromAsyncIterable(properties))));\n\t}\n\tif (SYM_TO_STRING_TAG in properties) {\n\t\tkeyNodes.push(parseWellKnownSymbol(ctx.base, SYM_TO_STRING_TAG));\n\t\tvalueNodes.push(createStringNode(properties[SYM_TO_STRING_TAG]));\n\t}\n\tif (SYM_IS_CONCAT_SPREADABLE in properties) {\n\t\tkeyNodes.push(parseWellKnownSymbol(ctx.base, SYM_IS_CONCAT_SPREADABLE));\n\t\tvalueNodes.push(properties[SYM_IS_CONCAT_SPREADABLE] ? TRUE_NODE : FALSE_NODE);\n\t}\n\treturn {\n\t\tk: keyNodes,\n\t\tv: valueNodes\n\t};\n}\nasync function parsePlainObject$1(ctx, depth, id, current, empty) {\n\treturn createObjectNode(id, current, empty, await parseProperties$1(ctx, depth, current));\n}\nasync function parseBoxed$1(ctx, depth, id, current) {\n\treturn createBoxedNode(id, await parseAsync(ctx, depth, current.valueOf()));\n}\nasync function parseTypedArray$1(ctx, depth, id, current) {\n\tcurrent = getArrayBufferView(ctx.base, current);\n\treturn createTypedArrayNode(id, current, await parseAsync(ctx, depth, current.buffer));\n}\nasync function parseBigIntTypedArray$1(ctx, depth, id, current) {\n\tcurrent = getArrayBufferView(ctx.base, current);\n\treturn createBigIntTypedArrayNode(id, current, await parseAsync(ctx, depth, current.buffer));\n}\nasync function parseDataView$1(ctx, depth, id, current) {\n\tcurrent = getArrayBufferView(ctx.base, current);\n\treturn createDataViewNode(id, current, await parseAsync(ctx, depth, current.buffer));\n}\nasync function parseError$1(ctx, depth, id, current) {\n\tconst options = getErrorOptions(current, ctx.base.features);\n\treturn createErrorNode(id, current, options ? await parseProperties$1(ctx, depth, options) : void 0);\n}\nasync function parseAggregateError$1(ctx, depth, id, current) {\n\tconst options = getErrorOptions(current, ctx.base.features);\n\treturn createAggregateErrorNode(id, current, options ? await parseProperties$1(ctx, depth, options) : void 0);\n}\nasync function parseMap$1(ctx, depth, id, current) {\n\tconst keyNodes = [];\n\tconst valueNodes = [];\n\tfor (const [key, value] of current.entries()) {\n\t\tkeyNodes.push(await parseAsync(ctx, depth, key));\n\t\tvalueNodes.push(await parseAsync(ctx, depth, value));\n\t}\n\treturn createMapNode(ctx.base, id, keyNodes, valueNodes);\n}\nasync function parseSet$1(ctx, depth, id, current) {\n\tconst items = [];\n\tfor (const item of current.keys()) items.push(await parseAsync(ctx, depth, item));\n\treturn createSetNode(id, items);\n}\nasync function parsePlugin$1(ctx, depth, id, current) {\n\tconst currentPlugins = ctx.base.plugins;\n\tif (currentPlugins) for (let i = 0, len = currentPlugins.length; i < len; i++) {\n\t\tconst plugin = currentPlugins[i];\n\t\tif (plugin.parse.async && plugin.test(current)) return createPluginNode(id, plugin.tag, await plugin.parse.async(current, new AsyncParsePluginContext(ctx, depth), { id }));\n\t}\n}\nasync function parsePromise$1(ctx, depth, id, current) {\n\tconst [status, result] = await promiseToResult(current);\n\treturn createSerovalNode(12, id, status, void 0, void 0, void 0, void 0, void 0, await parseAsync(ctx, depth, result), void 0, void 0, void 0);\n}\nfunction parseStreamHandle(depth, id, current, resolve, reject) {\n\tconst sequence = [];\n\tconst cleanup = current.on({\n\t\tnext: (value) => {\n\t\t\tmarkParserRef(this.base, id);\n\t\t\tparseAsync(this, depth, value).then((data) => {\n\t\t\t\tsequence.push(createStreamNextNode(id, data));\n\t\t\t}, (data) => {\n\t\t\t\treject(data);\n\t\t\t\tcleanup();\n\t\t\t});\n\t\t},\n\t\tthrow: (value) => {\n\t\t\tmarkParserRef(this.base, id);\n\t\t\tparseAsync(this, depth, value).then((data) => {\n\t\t\t\tsequence.push(createStreamThrowNode(id, data));\n\t\t\t\tresolve(sequence);\n\t\t\t\tcleanup();\n\t\t\t}, (data) => {\n\t\t\t\treject(data);\n\t\t\t\tcleanup();\n\t\t\t});\n\t\t},\n\t\treturn: (value) => {\n\t\t\tmarkParserRef(this.base, id);\n\t\t\tparseAsync(this, depth, value).then((data) => {\n\t\t\t\tsequence.push(createStreamReturnNode(id, data));\n\t\t\t\tresolve(sequence);\n\t\t\t\tcleanup();\n\t\t\t}, (data) => {\n\t\t\t\treject(data);\n\t\t\t\tcleanup();\n\t\t\t});\n\t\t}\n\t});\n}\nasync function parseStream$1(ctx, depth, id, current) {\n\treturn createStreamConstructorNode(id, parseSpecialReference(ctx.base, 4), await new Promise(parseStreamHandle.bind(ctx, depth, id, current)));\n}\nasync function parseSequence$1(ctx, depth, id, current) {\n\tconst nodes = [];\n\tfor (let i = 0, len = current.v.length; i < len; i++) nodes[i] = await parseAsync(ctx, depth, current.v[i]);\n\treturn createSequenceNode(id, nodes, current.t, current.d);\n}\nasync function parseObjectAsync(ctx, depth, id, current) {\n\tif (Array.isArray(current)) return parseArray$1(ctx, depth, id, current);\n\tif (isStream(current)) return parseStream$1(ctx, depth, id, current);\n\tif (isSequence(current)) return parseSequence$1(ctx, depth, id, current);\n\tlet currentClass = current.constructor;\n\tif (currentClass !== void 0 && typeof currentClass !== \"function\") {\n\t\tconst proto = Object.getPrototypeOf(current);\n\t\tcurrentClass = proto === null ? void 0 : proto.constructor;\n\t}\n\tif (currentClass === OpaqueReference) return parseAsync(ctx, depth, current.replacement);\n\tconst parsed = await parsePlugin$1(ctx, depth, id, current);\n\tif (parsed) return parsed;\n\tswitch (currentClass) {\n\t\tcase Object: return parsePlainObject$1(ctx, depth, id, current, false);\n\t\tcase void 0: return parsePlainObject$1(ctx, depth, id, current, true);\n\t\tcase Date: return createDateNode(id, current);\n\t\tcase Error:\n\t\tcase EvalError:\n\t\tcase RangeError:\n\t\tcase ReferenceError:\n\t\tcase SyntaxError:\n\t\tcase TypeError:\n\t\tcase URIError: return parseError$1(ctx, depth, id, current);\n\t\tcase Number:\n\t\tcase Boolean:\n\t\tcase String:\n\t\tcase BigInt: return parseBoxed$1(ctx, depth, id, current);\n\t\tcase ArrayBuffer: return createArrayBufferNode(ctx.base, id, current);\n\t\tcase Int8Array:\n\t\tcase Int16Array:\n\t\tcase Int32Array:\n\t\tcase Uint8Array:\n\t\tcase Uint16Array:\n\t\tcase Uint32Array:\n\t\tcase Uint8ClampedArray:\n\t\tcase Float32Array:\n\t\tcase Float64Array: return parseTypedArray$1(ctx, depth, id, current);\n\t\tcase DataView: return parseDataView$1(ctx, depth, id, current);\n\t\tcase Map: return parseMap$1(ctx, depth, id, current);\n\t\tcase Set: return parseSet$1(ctx, depth, id, current);\n\t}\n\tif (currentClass === Promise || current instanceof Promise) return parsePromise$1(ctx, depth, id, current);\n\tconst currentFeatures = ctx.base.features;\n\tif (currentFeatures & 32 && currentClass === RegExp) return createRegExpNode(id, current);\n\tif (currentFeatures & 16) switch (currentClass) {\n\t\tcase BigInt64Array:\n\t\tcase BigUint64Array: return parseBigIntTypedArray$1(ctx, depth, id, current);\n\t}\n\tif (currentFeatures & 1 && typeof AggregateError !== \"undefined\" && (currentClass === AggregateError || current instanceof AggregateError)) return parseAggregateError$1(ctx, depth, id, current);\n\tif (currentFeatures & 64 && typeof Temporal !== \"undefined\") switch (currentClass) {\n\t\tcase Temporal.Instant: return createTemporalNode(id, 0, current);\n\t\tcase Temporal.Duration: return createTemporalNode(id, 1, current);\n\t\tcase Temporal.PlainDate: return createTemporalNode(id, 2, current);\n\t\tcase Temporal.PlainDateTime: return createTemporalNode(id, 3, current);\n\t\tcase Temporal.PlainMonthDay: return createTemporalNode(id, 4, current);\n\t\tcase Temporal.PlainTime: return createTemporalNode(id, 5, current);\n\t\tcase Temporal.PlainYearMonth: return createTemporalNode(id, 6, current);\n\t\tcase Temporal.ZonedDateTime: return createTemporalNode(id, 7, current);\n\t}\n\tif (current instanceof Error) return parseError$1(ctx, depth, id, current);\n\tif (SYM_ITERATOR in current || SYM_ASYNC_ITERATOR in current) return parsePlainObject$1(ctx, depth, id, current, !!currentClass);\n\tthrow new SerovalUnsupportedTypeError(current);\n}\nasync function parseFunctionAsync(ctx, depth, current) {\n\tconst ref = getReferenceNode(ctx.base, current);\n\tif (ref.type !== 0) return ref.value;\n\tconst plugin = await parsePlugin$1(ctx, depth, ref.value, current);\n\tif (plugin) return plugin;\n\tthrow new SerovalUnsupportedTypeError(current);\n}\nasync function parseAsync(ctx, depth, current) {\n\tif (depth >= ctx.base.depthLimit) throw new SerovalDepthLimitError(ctx.base.depthLimit);\n\tswitch (typeof current) {\n\t\tcase \"boolean\": return current ? TRUE_NODE : FALSE_NODE;\n\t\tcase \"undefined\": return UNDEFINED_NODE;\n\t\tcase \"string\": return createStringNode(current);\n\t\tcase \"number\": return createNumberNode(current);\n\t\tcase \"bigint\": return createBigIntNode(current);\n\t\tcase \"object\":\n\t\t\tif (current) {\n\t\t\t\tconst ref = getReferenceNode(ctx.base, current);\n\t\t\t\treturn ref.type === 0 ? await parseObjectAsync(ctx, depth + 1, ref.value, current) : ref.value;\n\t\t\t}\n\t\t\treturn NULL_NODE;\n\t\tcase \"symbol\": return parseWellKnownSymbol(ctx.base, current);\n\t\tcase \"function\": return parseFunctionAsync(ctx, depth, current);\n\t\tdefault: throw new SerovalUnsupportedTypeError(current);\n\t}\n}\nasync function parseTopAsync(ctx, current) {\n\ttry {\n\t\treturn await parseAsync(ctx, 0, current);\n\t} catch (error) {\n\t\tthrow error instanceof SerovalParserError ? error : new SerovalParserError(error);\n\t}\n}\n//#endregion\n//#region src/core/plugin.ts\nlet SerovalMode = /* @__PURE__ */ function(SerovalMode) {\n\tSerovalMode[SerovalMode[\"Vanilla\"] = 1] = \"Vanilla\";\n\tSerovalMode[SerovalMode[\"Cross\"] = 2] = \"Cross\";\n\treturn SerovalMode;\n}({});\nfunction createPlugin(plugin) {\n\treturn plugin;\n}\nfunction dedupePlugins(deduped, plugins) {\n\tfor (let i = 0, len = plugins.length; i < len; i++) {\n\t\tconst current = plugins[i];\n\t\tif (!deduped.has(current)) {\n\t\t\tdeduped.add(current);\n\t\t\tif (current.extends) dedupePlugins(deduped, current.extends);\n\t\t}\n\t}\n}\nfunction resolvePlugins(plugins) {\n\tif (plugins) {\n\t\tconst deduped = /* @__PURE__ */ new Set();\n\t\tdedupePlugins(deduped, plugins);\n\t\treturn [...deduped];\n\t}\n}\n//#endregion\n//#region src/core/utils/typed-array.ts\nfunction getTypedArrayConstructor(name) {\n\tswitch (name) {\n\t\tcase \"Int8Array\": return Int8Array;\n\t\tcase \"Int16Array\": return Int16Array;\n\t\tcase \"Int32Array\": return Int32Array;\n\t\tcase \"Uint8Array\": return Uint8Array;\n\t\tcase \"Uint16Array\": return Uint16Array;\n\t\tcase \"Uint32Array\": return Uint32Array;\n\t\tcase \"Uint8ClampedArray\": return Uint8ClampedArray;\n\t\tcase \"Float32Array\": return Float32Array;\n\t\tcase \"Float64Array\": return Float64Array;\n\t\tcase \"BigInt64Array\": return BigInt64Array;\n\t\tcase \"BigUint64Array\": return BigUint64Array;\n\t\tdefault: throw new SerovalUnknownTypedArrayError(name);\n\t}\n}\n//#endregion\n//#region src/core/utils/valid-properties.ts\nfunction isValidKey(key) {\n\tswitch (key) {\n\t\tcase \"constructor\":\n\t\tcase \"__proto__\":\n\t\tcase \"prototype\":\n\t\tcase \"__defineGetter__\":\n\t\tcase \"__defineSetter__\":\n\t\tcase \"__lookupGetter__\":\n\t\tcase \"__lookupSetter__\": return false;\n\t\tdefault: return true;\n\t}\n}\nfunction isValidSymbol(symbol) {\n\tswitch (symbol) {\n\t\tcase SYM_ASYNC_ITERATOR:\n\t\tcase SYM_IS_CONCAT_SPREADABLE:\n\t\tcase SYM_TO_STRING_TAG:\n\t\tcase SYM_ITERATOR: return true;\n\t\tdefault: return false;\n\t}\n}\n//#endregion\n//#region src/core/context/deserializer.ts\nconst DEFAULT_MAX_BASE64_LENGTH = 1e6;\nconst MIN_NATIVE_BASE64_LENGTH = 512;\nconst MAX_BIGINT_LENGTH = 1e4;\nconst MAX_REGEXP_SOURCE_LENGTH = 2e4;\nfunction applyObjectFlag(obj, flag) {\n\tswitch (flag) {\n\t\tcase 3: return Object.freeze(obj);\n\t\tcase 1: return Object.preventExtensions(obj);\n\t\tcase 2: return Object.seal(obj);\n\t\tdefault: return obj;\n\t}\n}\nconst DEFAULT_DEPTH_LIMIT = 1e3;\nfunction createBaseDeserializerContext(mode, options) {\n\tvar _options$maxBase64Len, _options$features;\n\tconst maxBase64Length = (_options$maxBase64Len = options.maxBase64Length) !== null && _options$maxBase64Len !== void 0 ? _options$maxBase64Len : DEFAULT_MAX_BASE64_LENGTH;\n\tif (!Number.isSafeInteger(maxBase64Length) || maxBase64Length < 0) throw new RangeError(\"maxBase64Length must be a non-negative safe integer\");\n\tconst refs = options.refs || /* @__PURE__ */ new Map();\n\tif (!(\"types\" in refs)) Object.assign(refs, { types: /* @__PURE__ */ new Map() });\n\treturn {\n\t\tmode,\n\t\tplugins: options.plugins,\n\t\trefs,\n\t\tfeatures: (_options$features = options.features) !== null && _options$features !== void 0 ? _options$features : 127 ^ (options.disabledFeatures || 0),\n\t\tdepthLimit: options.depthLimit || DEFAULT_DEPTH_LIMIT,\n\t\tmaxBase64Length\n\t};\n}\nfunction createVanillaDeserializerContext(options) {\n\treturn {\n\t\tmode: 1,\n\t\tbase: createBaseDeserializerContext(1, options),\n\t\tchild: void 0,\n\t\tstate: { marked: new Set(options.markedRefs) }\n\t};\n}\nfunction createCrossDeserializerContext(options) {\n\treturn {\n\t\tmode: 2,\n\t\tbase: createBaseDeserializerContext(2, options),\n\t\tchild: void 0\n\t};\n}\nvar DeserializePluginContext = class {\n\tconstructor(_p, depth) {\n\t\tthis._p = _p;\n\t\tthis.depth = depth;\n\t}\n\tdeserialize(node) {\n\t\treturn deserialize$1(this._p, this.depth, node);\n\t}\n};\nfunction guardIndexedValue(ctx, id) {\n\tif (id < 0 || !Number.isFinite(id) || !Number.isInteger(id)) throw new SerovalMalformedNodeError({\n\t\tt: 4,\n\t\ti: id\n\t});\n\tif (ctx.refs.has(id)) throw new Error(\"Conflicted ref id: \" + id);\n}\nfunction isThennable(value) {\n\treturn !!value && (typeof value === \"object\" || typeof value === \"function\") && \"then\" in value && typeof value.then === \"function\";\n}\nfunction assignIndexedValueVanilla(ctx, id, value) {\n\tguardIndexedValue(ctx.base, id);\n\tif (ctx.state.marked.has(id)) ctx.base.refs.set(id, value);\n\treturn value;\n}\nfunction assignIndexedValueCross(ctx, id, value) {\n\tguardIndexedValue(ctx.base, id);\n\tctx.base.refs.set(id, value);\n\treturn value;\n}\nfunction assignIndexedValue$1(ctx, id, value) {\n\treturn ctx.mode === 1 ? assignIndexedValueVanilla(ctx, id, value) : assignIndexedValueCross(ctx, id, value);\n}\nfunction deserializeKnownValue(node, record, key) {\n\tif (Object.hasOwn(record, key)) return record[key];\n\tthrow new SerovalMalformedNodeError(node);\n}\nfunction deserializeReference(ctx, node) {\n\treturn assignIndexedValue$1(ctx, node.i, getReference(deserializeString(node.s)));\n}\nfunction validateNodeList(node, list) {\n\tif (!Array.isArray(list)) throw new SerovalMalformedNodeError(node);\n}\nfunction deserializeArray(ctx, depth, node) {\n\tconst items = node.a;\n\tvalidateNodeList(node, items);\n\tconst len = items.length;\n\tconst result = assignIndexedValue$1(ctx, node.i, new Array(len));\n\tfor (let i = 0, item; i < len; i++) {\n\t\titem = items[i];\n\t\tif (item) result[i] = deserialize$1(ctx, depth, item);\n\t}\n\tapplyObjectFlag(result, node.o);\n\treturn result;\n}\nfunction assignStringProperty(object, key, value) {\n\tif (isValidKey(key)) object[key] = value;\n\telse Object.defineProperty(object, key, {\n\t\tvalue,\n\t\tconfigurable: true,\n\t\tenumerable: true,\n\t\twritable: true\n\t});\n}\nfunction assignProperty(ctx, depth, object, key, value) {\n\tif (typeof key === \"string\") assignStringProperty(object, deserializeString(key), deserialize$1(ctx, depth, value));\n\telse {\n\t\tconst actual = deserialize$1(ctx, depth, key);\n\t\tswitch (typeof actual) {\n\t\t\tcase \"string\":\n\t\t\t\tassignStringProperty(object, actual, deserialize$1(ctx, depth, value));\n\t\t\t\tbreak;\n\t\t\tcase \"symbol\":\n\t\t\t\tif (isValidSymbol(actual)) object[actual] = deserialize$1(ctx, depth, value);\n\t\t\t\tbreak;\n\t\t\tdefault: throw new SerovalMalformedNodeError(key);\n\t\t}\n\t}\n}\nfunction assignNodeType(ctx, id, type) {\n\tctx.base.refs.types.set(id, type);\n}\nfunction validateNodeType(ctx, node, id, type) {\n\tif (ctx.base.refs.types.get(id) !== type) throw new SerovalMalformedNodeError(node);\n}\nfunction deserializeProperties(ctx, depth, node, result) {\n\tconst keys = node.k;\n\tvalidateNodeList(node, keys);\n\tvalidateNodeList(node, node.v);\n\tif (keys.length > 0) for (let i = 0, vals = node.v, len = keys.length; i < len; i++) assignProperty(ctx, depth, result, keys[i], vals[i]);\n\treturn result;\n}\nfunction deserializeObject(ctx, depth, node) {\n\tconst result = assignIndexedValue$1(ctx, node.i, node.t === 10 ? {} : Object.create(null));\n\tdeserializeProperties(ctx, depth, node.p, result);\n\tapplyObjectFlag(result, node.o);\n\treturn result;\n}\nfunction deserializeDate(ctx, node) {\n\treturn assignIndexedValue$1(ctx, node.i, new Date(node.s));\n}\nfunction deserializeTemporal(ctx, node) {\n\tif (!(ctx.base.features & 64)) throw new SerovalUnsupportedNodeError(node);\n\tlet value;\n\tswitch (node.c) {\n\t\tcase 0:\n\t\t\tvalue = Temporal.Instant.from(node.s);\n\t\t\tbreak;\n\t\tcase 1:\n\t\t\tvalue = Temporal.Duration.from(node.s);\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tvalue = Temporal.PlainDate.from(node.s);\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tvalue = Temporal.PlainDateTime.from(node.s);\n\t\t\tbreak;\n\t\tcase 4:\n\t\t\tvalue = Temporal.PlainMonthDay.from(node.s);\n\t\t\tbreak;\n\t\tcase 5:\n\t\t\tvalue = Temporal.PlainTime.from(node.s);\n\t\t\tbreak;\n\t\tcase 6:\n\t\t\tvalue = Temporal.PlainYearMonth.from(node.s);\n\t\t\tbreak;\n\t\tcase 7:\n\t\t\tvalue = Temporal.ZonedDateTime.from(node.s);\n\t\t\tbreak;\n\t\tdefault: throw new SerovalMalformedNodeError(node);\n\t}\n\treturn assignIndexedValue$1(ctx, node.i, value);\n}\nfunction deserializeRegExp(ctx, node) {\n\tif (ctx.base.features & 32) {\n\t\tconst source = deserializeString(node.c);\n\t\tif (source.length > MAX_REGEXP_SOURCE_LENGTH) throw new SerovalMalformedNodeError(node);\n\t\treturn assignIndexedValue$1(ctx, node.i, new RegExp(source, node.m));\n\t}\n\tthrow new SerovalUnsupportedNodeError(node);\n}\nfunction deserializeSet(ctx, depth, node) {\n\tconst result = assignIndexedValue$1(ctx, node.i, /* @__PURE__ */ new Set());\n\tvalidateNodeList(node, node.a);\n\tfor (let i = 0, items = node.a, len = items.length; i < len; i++) result.add(deserialize$1(ctx, depth, items[i]));\n\treturn result;\n}\nfunction deserializeMap(ctx, depth, node) {\n\tconst result = assignIndexedValue$1(ctx, node.i, /* @__PURE__ */ new Map());\n\tvalidateNodeList(node, node.e.k);\n\tvalidateNodeList(node, node.e.v);\n\tfor (let i = 0, keys = node.e.k, vals = node.e.v, len = keys.length; i < len; i++) result.set(deserialize$1(ctx, depth, keys[i]), deserialize$1(ctx, depth, vals[i]));\n\treturn result;\n}\nfunction deserializeArrayBuffer(ctx, node) {\n\tif (typeof node.s !== \"string\") throw new SerovalMalformedNodeError(node);\n\tif (node.s.length > ctx.base.maxBase64Length) throw new RangeError(\"ArrayBuffer exceeds maxBase64Length (\" + ctx.base.maxBase64Length + \")\");\n\tconst source = deserializeString(node.s);\n\tlet buffer;\n\tif (source.length < MIN_NATIVE_BASE64_LENGTH || typeof Buffer === \"undefined\") buffer = ARRAY_BUFFER_CONSTRUCTOR(source);\n\telse {\n\t\tconst decoded = atob(source);\n\t\tbuffer = new ArrayBuffer(decoded.length);\n\t\tBuffer.from(buffer).write(decoded, \"latin1\");\n\t}\n\treturn assignIndexedValue$1(ctx, node.i, buffer);\n}\nfunction deserializeTypedArray(ctx, depth, node) {\n\tvar _node$b;\n\tconst construct = getTypedArrayConstructor(node.c);\n\tconst source = deserialize$1(ctx, depth, node.f);\n\tif (!(source instanceof ArrayBuffer)) throw new SerovalMalformedNodeError(node);\n\tconst offset = (_node$b = node.b) !== null && _node$b !== void 0 ? _node$b : 0;\n\tif (offset < 0 || offset > source.byteLength) throw new SerovalMalformedNodeError(node);\n\treturn assignIndexedValue$1(ctx, node.i, new construct(source, offset, node.l));\n}\nfunction deserializeDataView(ctx, depth, node) {\n\tvar _node$b2;\n\tconst source = deserialize$1(ctx, depth, node.f);\n\tif (!(source instanceof ArrayBuffer)) throw new SerovalMalformedNodeError(node);\n\tconst offset = (_node$b2 = node.b) !== null && _node$b2 !== void 0 ? _node$b2 : 0;\n\tif (offset < 0 || offset > source.byteLength) throw new SerovalMalformedNodeError(node);\n\treturn assignIndexedValue$1(ctx, node.i, new DataView(source, offset, node.l));\n}\nfunction deserializeDictionary(ctx, depth, node, result) {\n\tif (node.p) {\n\t\tconst fields = deserializeProperties(ctx, depth, node.p, {});\n\t\tObject.defineProperties(result, Object.getOwnPropertyDescriptors(fields));\n\t}\n\treturn result;\n}\nfunction deserializeAggregateError(ctx, depth, node) {\n\treturn deserializeDictionary(ctx, depth, node, assignIndexedValue$1(ctx, node.i, new AggregateError([], deserializeString(node.m))));\n}\nfunction deserializeError(ctx, depth, node) {\n\tconst construct = deserializeKnownValue(node, ERROR_CONSTRUCTOR, node.s);\n\treturn deserializeDictionary(ctx, depth, node, assignIndexedValue$1(ctx, node.i, new construct(deserializeString(node.m))));\n}\nfunction deserializePromise(ctx, depth, node) {\n\tconst deferred = PROMISE_CONSTRUCTOR();\n\tconst result = assignIndexedValue$1(ctx, node.i, deferred.p);\n\tconst deserialized = deserialize$1(ctx, depth, node.f);\n\tif (isThennable(deserialized)) throw new SerovalMalformedNodeError(node.f);\n\tif (node.s) deferred.s(deserialized);\n\telse deferred.f(deserialized);\n\treturn result;\n}\nfunction deserializeBoxed(ctx, depth, node) {\n\treturn assignIndexedValue$1(ctx, node.i, Object(deserialize$1(ctx, depth, node.f)));\n}\nfunction deserializePlugin(ctx, depth, node) {\n\tconst currentPlugins = ctx.base.plugins;\n\tif (currentPlugins) {\n\t\tconst tag = deserializeString(node.c);\n\t\tfor (let i = 0, len = currentPlugins.length; i < len; i++) {\n\t\t\tconst plugin = currentPlugins[i];\n\t\t\tif (plugin.tag === tag) return assignIndexedValue$1(ctx, node.i, plugin.deserialize(node.s, new DeserializePluginContext(ctx, depth), { id: node.i }));\n\t\t}\n\t}\n\tthrow new SerovalMissingPluginError(node.c);\n}\nfunction deserializePromiseConstructor(ctx, node) {\n\tconst value = assignIndexedValue$1(ctx, node.i, assignIndexedValue$1(ctx, node.s, PROMISE_CONSTRUCTOR()).p);\n\tassignNodeType(ctx, node.s, 22);\n\treturn value;\n}\nfunction deserializePromiseFulfill(ctx, depth, node) {\n\tconst deferred = ctx.base.refs.get(node.i);\n\tif (deferred) {\n\t\tvalidateNodeType(ctx, node, node.i, 22);\n\t\tconst deserialized = deserialize$1(ctx, depth, node.a[1]);\n\t\tif (isThennable(deserialized)) throw new SerovalMalformedNodeError(node.a[1]);\n\t\tif (node.t === 23) deferred.s(deserialized);\n\t\telse deferred.f(deserialized);\n\t\treturn;\n\t}\n\tthrow new SerovalMissingInstanceError(\"Promise\");\n}\nfunction deserializeIteratorFactoryInstance(ctx, depth, node) {\n\tdeserialize$1(ctx, depth, node.a[0]);\n\tconst source = deserialize$1(ctx, depth, node.a[1]);\n\tif (!isSequence(source)) throw new SerovalMalformedNodeError(node.a[1]);\n\treturn sequenceToIterator(source);\n}\nfunction deserializeAsyncIteratorFactoryInstance(ctx, depth, node) {\n\tdeserialize$1(ctx, depth, node.a[0]);\n\tconst source = deserialize$1(ctx, depth, node.a[1]);\n\tif (!isStream(source)) throw new SerovalMalformedNodeError(node.a[1]);\n\treturn streamToAsyncIterable(source);\n}\nfunction deserializeStreamConstructor(ctx, depth, node) {\n\tconst result = assignIndexedValue$1(ctx, node.i, createStream());\n\tassignNodeType(ctx, node.i, 31);\n\tconst items = node.a;\n\tvalidateNodeList(node, items);\n\tconst len = items.length;\n\tif (len) for (let i = 0; i < len; i++) deserialize$1(ctx, depth, items[i]);\n\treturn result;\n}\nfunction deserializeStreamNext(ctx, depth, node) {\n\tconst deferred = ctx.base.refs.get(node.i);\n\tif (deferred) {\n\t\tvalidateNodeType(ctx, node, node.i, 31);\n\t\tdeferred.next(deserialize$1(ctx, depth, node.f));\n\t\treturn;\n\t}\n\tthrow new SerovalMissingInstanceError(\"Stream\");\n}\nfunction deserializeStreamThrow(ctx, depth, node) {\n\tconst deferred = ctx.base.refs.get(node.i);\n\tif (deferred) {\n\t\tvalidateNodeType(ctx, node, node.i, 31);\n\t\tdeferred.throw(deserialize$1(ctx, depth, node.f));\n\t\treturn;\n\t}\n\tthrow new SerovalMissingInstanceError(\"Stream\");\n}\nfunction deserializeStreamReturn(ctx, depth, node) {\n\tconst deferred = ctx.base.refs.get(node.i);\n\tif (deferred) {\n\t\tvalidateNodeType(ctx, node, node.i, 31);\n\t\tdeferred.return(deserialize$1(ctx, depth, node.f));\n\t\treturn;\n\t}\n\tthrow new SerovalMissingInstanceError(\"Stream\");\n}\nfunction deserializeIteratorFactory(ctx, depth, node) {\n\tdeserialize$1(ctx, depth, node.f);\n}\nfunction deserializeAsyncIteratorFactory(ctx, depth, node) {\n\tdeserialize$1(ctx, depth, node.a[1]);\n}\nfunction isSequenceIndex(value, size) {\n\treturn Number.isInteger(value) && value >= -1 && value < size;\n}\nfunction deserializeSequence(ctx, depth, node) {\n\tvalidateNodeList(node, node.a);\n\tconst size = node.a.length;\n\tif (!(isSequenceIndex(node.s, size) && isSequenceIndex(node.l, size))) throw new SerovalMalformedNodeError(node);\n\tconst result = assignIndexedValue$1(ctx, node.i, createSequence([], node.s, node.l));\n\tfor (let i = 0; i < size; i++) result.v[i] = deserialize$1(ctx, depth, node.a[i]);\n\treturn result;\n}\nfunction deserialize$1(ctx, depth, node) {\n\tif (depth > ctx.base.depthLimit) throw new SerovalDepthLimitError(ctx.base.depthLimit);\n\tdepth += 1;\n\tswitch (node.t) {\n\t\tcase 2: return deserializeKnownValue(node, CONSTANT_VAL, node.s);\n\t\tcase 0: return Number(node.s);\n\t\tcase 1: return deserializeString(String(node.s));\n\t\tcase 3:\n\t\t\tif (String(node.s).length > MAX_BIGINT_LENGTH) throw new SerovalMalformedNodeError(node);\n\t\t\treturn BigInt(node.s);\n\t\tcase 4: return ctx.base.refs.get(node.i);\n\t\tcase 18: return deserializeReference(ctx, node);\n\t\tcase 9: return deserializeArray(ctx, depth, node);\n\t\tcase 10:\n\t\tcase 11: return deserializeObject(ctx, depth, node);\n\t\tcase 5: return deserializeDate(ctx, node);\n\t\tcase 6: return deserializeRegExp(ctx, node);\n\t\tcase 7: return deserializeSet(ctx, depth, node);\n\t\tcase 8: return deserializeMap(ctx, depth, node);\n\t\tcase 19: return deserializeArrayBuffer(ctx, node);\n\t\tcase 16:\n\t\tcase 15: return deserializeTypedArray(ctx, depth, node);\n\t\tcase 20: return deserializeDataView(ctx, depth, node);\n\t\tcase 14: return deserializeAggregateError(ctx, depth, node);\n\t\tcase 13: return deserializeError(ctx, depth, node);\n\t\tcase 12: return deserializePromise(ctx, depth, node);\n\t\tcase 17: return deserializeKnownValue(node, SYMBOL_REF, node.s);\n\t\tcase 21: return deserializeBoxed(ctx, depth, node);\n\t\tcase 25: return deserializePlugin(ctx, depth, node);\n\t\tcase 22: return deserializePromiseConstructor(ctx, node);\n\t\tcase 23:\n\t\tcase 24: return deserializePromiseFulfill(ctx, depth, node);\n\t\tcase 28: return deserializeIteratorFactoryInstance(ctx, depth, node);\n\t\tcase 30: return deserializeAsyncIteratorFactoryInstance(ctx, depth, node);\n\t\tcase 31: return deserializeStreamConstructor(ctx, depth, node);\n\t\tcase 32: return deserializeStreamNext(ctx, depth, node);\n\t\tcase 33: return deserializeStreamThrow(ctx, depth, node);\n\t\tcase 34: return deserializeStreamReturn(ctx, depth, node);\n\t\tcase 27: return deserializeIteratorFactory(ctx, depth, node);\n\t\tcase 29: return deserializeAsyncIteratorFactory(ctx, depth, node);\n\t\tcase 35: return deserializeSequence(ctx, depth, node);\n\t\tcase 36: return deserializeTemporal(ctx, node);\n\t\tdefault: throw new SerovalUnsupportedNodeError(node);\n\t}\n}\nfunction deserializeTop(ctx, node) {\n\ttry {\n\t\treturn deserialize$1(ctx, 0, node);\n\t} catch (error) {\n\t\tthrow new SerovalDeserializationError(error);\n\t}\n}\n//#endregion\n//#region src/core/function-string.ts\nconst RETURN = () => T;\nconst SERIALIZED_RETURN = /* @__PURE__ */ RETURN.toString();\nconst IS_MODERN = /* @__PURE__ */ /=>/.test(SERIALIZED_RETURN);\nfunction createFunction(parameters, body) {\n\tif (IS_MODERN) return (parameters.length === 1 ? parameters[0] : \"(\" + parameters.join(\",\") + \")\") + \"=>\" + (body.startsWith(\"{\") ? \"(\" + body + \")\" : body);\n\treturn \"function(\" + parameters.join(\",\") + \"){return \" + body + \"}\";\n}\nfunction createEffectfulFunction(parameters, body) {\n\tif (IS_MODERN) return (parameters.length === 1 ? parameters[0] : \"(\" + parameters.join(\",\") + \")\") + \"=>{\" + body + \"}\";\n\treturn \"function(\" + parameters.join(\",\") + \"){\" + body + \"}\";\n}\n//#endregion\n//#region src/core/utils/get-identifier.ts\nconst REF_START_CHARS = \"hjkmoquxzABCDEFGHIJKLNPQRTUVWXYZ$_\";\nconst REF_START_CHARS_LEN = 34;\nconst REF_CHARS = \"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$_\";\nconst REF_CHARS_LEN = 64;\nfunction getIdentifier(index) {\n\tlet mod = index % REF_START_CHARS_LEN;\n\tlet ref = REF_START_CHARS[mod];\n\tindex = (index - mod) / REF_START_CHARS_LEN;\n\twhile (index > 0) {\n\t\tmod = index % REF_CHARS_LEN;\n\t\tref += REF_CHARS[mod];\n\t\tindex = (index - mod) / REF_CHARS_LEN;\n\t}\n\treturn ref;\n}\n//#endregion\n//#region src/core/utils/is-valid-identifier.ts\nconst IDENTIFIER_CHECK = /^[$A-Z_][0-9A-Z_$]*$/i;\nfunction isValidIdentifier(name) {\n\tconst char = name[0];\n\treturn (char === \"$\" || char === \"_\" || char >= \"A\" && char <= \"Z\" || char >= \"a\" && char <= \"z\") && IDENTIFIER_CHECK.test(name);\n}\n//#endregion\n//#region src/core/context/serializer.ts\nfunction getAssignmentExpression(assignment) {\n\tswitch (assignment.t) {\n\t\tcase 0: return assignment.s + \"=\" + assignment.v;\n\t\tcase 2: return assignment.s + \".set(\" + assignment.k + \",\" + assignment.v + \")\";\n\t\tcase 1: return assignment.s + \".add(\" + assignment.v + \")\";\n\t\tcase 3: return assignment.s + \".delete(\" + assignment.k + \")\";\n\t\tcase 4: return \"Object.defineProperty(\" + assignment.s + \",\\\"__proto__\\\",{value:\" + assignment.k + \",configurable:!0,enumerable:!0,writable:!0})\";\n\t}\n}\nfunction mergeAssignments(assignments) {\n\tconst newAssignments = [];\n\tlet current = assignments[0];\n\tfor (let i = 1, len = assignments.length, item, prev = current; i < len; i++) {\n\t\titem = assignments[i];\n\t\tif (item.t === 0 && item.v === prev.v) current = {\n\t\t\tt: 0,\n\t\t\ts: item.s,\n\t\t\tk: void 0,\n\t\t\tv: getAssignmentExpression(current)\n\t\t};\n\t\telse if (item.t === 2 && item.s === prev.s) current = {\n\t\t\tt: 2,\n\t\t\ts: getAssignmentExpression(current),\n\t\t\tk: item.k,\n\t\t\tv: item.v\n\t\t};\n\t\telse if (item.t === 1 && item.s === prev.s) current = {\n\t\t\tt: 1,\n\t\t\ts: getAssignmentExpression(current),\n\t\t\tk: void 0,\n\t\t\tv: item.v\n\t\t};\n\t\telse if (item.t === 3 && item.s === prev.s) current = {\n\t\t\tt: 3,\n\t\t\ts: getAssignmentExpression(current),\n\t\t\tk: item.k,\n\t\t\tv: void 0\n\t\t};\n\t\telse {\n\t\t\tnewAssignments.push(current);\n\t\t\tcurrent = item;\n\t\t}\n\t\tprev = item;\n\t}\n\tnewAssignments.push(current);\n\treturn newAssignments;\n}\nfunction resolveAssignments(assignments) {\n\tif (assignments.length) {\n\t\tlet result = \"\";\n\t\tconst merged = mergeAssignments(assignments);\n\t\tfor (let i = 0, len = merged.length; i < len; i++) result += getAssignmentExpression(merged[i]) + \",\";\n\t\treturn result;\n\t}\n}\nconst NULL_CONSTRUCTOR = \"Object.create(null)\";\nconst SET_CONSTRUCTOR = \"new Set\";\nconst MAP_CONSTRUCTOR = \"new Map\";\nconst PROMISE_RESOLVE = \"Promise.resolve\";\nconst PROMISE_REJECT = \"Promise.reject\";\nconst OBJECT_FLAG_CONSTRUCTOR = {\n\t[3]: \"Object.freeze\",\n\t[2]: \"Object.seal\",\n\t[1]: \"Object.preventExtensions\",\n\t[0]: void 0\n};\nfunction createBaseSerializerContext(mode, options) {\n\treturn {\n\t\tmode,\n\t\tplugins: options.plugins,\n\t\tfeatures: options.features,\n\t\tmarked: new Set(options.markedRefs),\n\t\tstack: [],\n\t\tflags: [],\n\t\tassignments: []\n\t};\n}\nfunction createVanillaSerializerState() {\n\treturn {\n\t\tvalid: /* @__PURE__ */ new Map(),\n\t\tvars: []\n\t};\n}\nfunction createVanillaSerializerContext(options) {\n\treturn {\n\t\tmode: 1,\n\t\tbase: createBaseSerializerContext(1, options),\n\t\tstate: createVanillaSerializerState(),\n\t\tchild: void 0\n\t};\n}\nfunction createCrossSerializerContext(options) {\n\treturn {\n\t\tmode: 2,\n\t\tbase: createBaseSerializerContext(2, options),\n\t\tstate: options,\n\t\tchild: void 0\n\t};\n}\nvar SerializePluginContext = class {\n\tconstructor(_p) {\n\t\tthis._p = _p;\n\t}\n\tserialize(node) {\n\t\treturn serialize$1(this._p, node);\n\t}\n};\n/**\n* Creates the reference param (identifier) from the given reference ID\n* Calling this function means the value has been referenced somewhere\n*/\nfunction getVanillaRefParam(state, index) {\n\t/**\n\t* Creates a new reference ID from a given reference ID\n\t* This new reference ID means that the reference itself\n\t* has been referenced at least once, and is used to generate\n\t* the variables\n\t*/\n\tlet actualIndex = state.valid.get(index);\n\tif (actualIndex == null) {\n\t\tactualIndex = state.valid.size;\n\t\tstate.valid.set(index, actualIndex);\n\t}\n\tlet identifier = state.vars[actualIndex];\n\tif (identifier == null) {\n\t\tidentifier = getIdentifier(actualIndex);\n\t\tstate.vars[actualIndex] = identifier;\n\t}\n\treturn identifier;\n}\nfunction getCrossRefParam(id) {\n\treturn \"$R[\" + id + \"]\";\n}\n/**\n* Converts the ID of a reference into a identifier string\n* that is used to refer to the object instance in the\n* generated script.\n*/\nfunction getRefParam(ctx, id) {\n\treturn ctx.mode === 1 ? getVanillaRefParam(ctx.state, id) : getCrossRefParam(id);\n}\nfunction markSerializerRef(ctx, id) {\n\tctx.marked.add(id);\n}\nfunction isSerializerRefMarked(ctx, id) {\n\treturn ctx.marked.has(id);\n}\nfunction pushObjectFlag(ctx, flag, id) {\n\tif (flag !== 0) {\n\t\tmarkSerializerRef(ctx.base, id);\n\t\tctx.base.flags.push({\n\t\t\ttype: flag,\n\t\t\tvalue: getRefParam(ctx, id)\n\t\t});\n\t}\n}\nfunction resolveFlags(ctx) {\n\tlet result = \"\";\n\tfor (let i = 0, current = ctx.flags, len = current.length; i < len; i++) {\n\t\tconst flag = current[i];\n\t\tresult += OBJECT_FLAG_CONSTRUCTOR[flag.type] + \"(\" + flag.value + \"),\";\n\t}\n\treturn result;\n}\nfunction resolvePatches(ctx) {\n\tconst assignments = resolveAssignments(ctx.assignments);\n\tconst flags = resolveFlags(ctx);\n\tif (assignments) {\n\t\tif (flags) return assignments + flags;\n\t\treturn assignments;\n\t}\n\treturn flags;\n}\n/**\n* Generates the inlined assignment for the reference\n* This is different from the assignments array as this one\n* signifies creation rather than mutation\n*/\nfunction createAssignment(ctx, source, value) {\n\tctx.assignments.push({\n\t\tt: 0,\n\t\ts: source,\n\t\tk: void 0,\n\t\tv: value\n\t});\n}\nfunction createAddAssignment(ctx, ref, value) {\n\tctx.base.assignments.push({\n\t\tt: 1,\n\t\ts: getRefParam(ctx, ref),\n\t\tk: void 0,\n\t\tv: value\n\t});\n}\nfunction createSetAssignment(ctx, ref, key, value) {\n\tctx.base.assignments.push({\n\t\tt: 2,\n\t\ts: getRefParam(ctx, ref),\n\t\tk: key,\n\t\tv: value\n\t});\n}\nfunction createDeleteAssignment(ctx, ref, key) {\n\tctx.base.assignments.push({\n\t\tt: 3,\n\t\ts: getRefParam(ctx, ref),\n\t\tk: key,\n\t\tv: void 0\n\t});\n}\nfunction createArrayAssign(ctx, ref, index, value) {\n\tcreateAssignment(ctx.base, getRefParam(ctx, ref) + \"[\" + index + \"]\", value);\n}\nfunction createObjectAssign(ctx, ref, key, value) {\n\tif (!isValidKey(key)) {\n\t\tctx.base.assignments.push({\n\t\t\tt: 4,\n\t\t\ts: getRefParam(ctx, ref),\n\t\t\tk: value,\n\t\t\tv: void 0\n\t\t});\n\t\treturn;\n\t}\n\tcreateAssignment(ctx.base, getRefParam(ctx, ref) + \".\" + key, value);\n}\nfunction createSequenceAssign(ctx, ref, index, value) {\n\tcreateAssignment(ctx.base, getRefParam(ctx, ref) + \".v[\" + index + \"]\", value);\n}\n/**\n* Checks if the value is in the stack. Stack here is a reference\n* structure to know if a object is to be accessed in a TDZ.\n*/\nfunction isIndexedValueInStack(ctx, node) {\n\treturn node.t === 4 && ctx.stack.includes(node.i);\n}\n/**\n* Produces an assignment expression. `id` generates a reference\n* parameter (through `getRefParam`) and has the option to\n* return the reference parameter directly or assign a value to\n* it.\n*/\nfunction assignIndexedValue(ctx, index, value) {\n\tif (ctx.mode === 1 && !isSerializerRefMarked(ctx.base, index)) return value;\n\t/**\n\t* In cross-reference, we have to assume that\n\t* every reference are going to be referenced\n\t* in the future, and so we need to store\n\t* all of it into the reference array.\n\t*\n\t* otherwise in vanilla, we only do this if it\n\t* is actually referenced\n\t*/\n\treturn getRefParam(ctx, index) + \"=\" + value;\n}\nfunction serializeReference(node) {\n\treturn \"__SEROVAL_REFS__.get(\\\"\" + node.s + \"\\\")\";\n}\nfunction serializeArrayItem(ctx, id, item, index) {\n\tif (item) {\n\t\tif (isIndexedValueInStack(ctx.base, item)) {\n\t\t\tmarkSerializerRef(ctx.base, id);\n\t\t\tcreateArrayAssign(ctx, id, index, getRefParam(ctx, item.i));\n\t\t\treturn \"\";\n\t\t}\n\t\treturn serialize$1(ctx, item);\n\t}\n\treturn \"\";\n}\nfunction serializeArray(ctx, node) {\n\tconst id = node.i;\n\tconst list = node.a;\n\tconst len = list.length;\n\tif (len > 0) {\n\t\tctx.base.stack.push(id);\n\t\tlet values = serializeArrayItem(ctx, id, list[0], 0);\n\t\tlet isHoley = values === \"\";\n\t\tfor (let i = 1, item; i < len; i++) {\n\t\t\titem = serializeArrayItem(ctx, id, list[i], i);\n\t\t\tvalues += \",\" + item;\n\t\t\tisHoley = item === \"\";\n\t\t}\n\t\tctx.base.stack.pop();\n\t\tpushObjectFlag(ctx, node.o, node.i);\n\t\treturn \"[\" + values + (isHoley ? \",]\" : \"]\");\n\t}\n\treturn \"[]\";\n}\nfunction serializeProperty(ctx, source, key, val) {\n\tif (typeof key === \"string\") {\n\t\tconst check = Number(key);\n\t\tconst isIdentifier = check >= 0 && check.toString() === key || isValidIdentifier(key);\n\t\tif (isIndexedValueInStack(ctx.base, val)) {\n\t\t\tconst refParam = getRefParam(ctx, val.i);\n\t\t\tmarkSerializerRef(ctx.base, source.i);\n\t\t\tif (isIdentifier && check !== check) createObjectAssign(ctx, source.i, key, refParam);\n\t\t\telse createArrayAssign(ctx, source.i, isIdentifier ? key : \"\\\"\" + key + \"\\\"\", refParam);\n\t\t\treturn \"\";\n\t\t}\n\t\tif (isValidKey(key)) return (isIdentifier ? key : \"\\\"\" + key + \"\\\"\") + \":\" + serialize$1(ctx, val);\n\t\treturn \"[\\\"\" + key + \"\\\"]:\" + serialize$1(ctx, val);\n\t}\n\treturn \"[\" + serialize$1(ctx, key) + \"]:\" + serialize$1(ctx, val);\n}\nfunction serializeProperties(ctx, source, record) {\n\tconst keys = record.k;\n\tconst len = keys.length;\n\tif (len > 0) {\n\t\tconst values = record.v;\n\t\tctx.base.stack.push(source.i);\n\t\tlet result = serializeProperty(ctx, source, keys[0], values[0]);\n\t\tfor (let i = 1, item = result; i < len; i++) {\n\t\t\titem = serializeProperty(ctx, source, keys[i], values[i]);\n\t\t\tresult += (item && result && \",\") + item;\n\t\t}\n\t\tctx.base.stack.pop();\n\t\treturn \"{\" + result + \"}\";\n\t}\n\treturn \"{}\";\n}\nfunction serializeObject(ctx, node) {\n\tpushObjectFlag(ctx, node.o, node.i);\n\treturn serializeProperties(ctx, node, node.p);\n}\nfunction serializeWithObjectAssign(ctx, source, value, serialized) {\n\tconst fields = serializeProperties(ctx, source, value);\n\tif (fields !== \"{}\") return \"Object.assign(\" + serialized + \",\" + fields + \")\";\n\treturn serialized;\n}\nfunction serializeStringKeyAssignment(ctx, source, mainAssignments, key, value) {\n\tconst base = ctx.base;\n\tconst serialized = serialize$1(ctx, value);\n\tconst check = Number(key);\n\tconst isIdentifier = check >= 0 && check.toString() === key || isValidIdentifier(key);\n\tif (isIndexedValueInStack(base, value)) {\n\t\tif (isIdentifier && check !== check) createObjectAssign(ctx, source.i, key, serialized);\n\t\telse createArrayAssign(ctx, source.i, isIdentifier ? key : \"\\\"\" + key + \"\\\"\", serialized);\n\t} else {\n\t\tconst parentAssignment = base.assignments;\n\t\tbase.assignments = mainAssignments;\n\t\tif (isIdentifier && check !== check) createObjectAssign(ctx, source.i, key, serialized);\n\t\telse createArrayAssign(ctx, source.i, isIdentifier ? key : \"\\\"\" + key + \"\\\"\", serialized);\n\t\tbase.assignments = parentAssignment;\n\t}\n}\nfunction serializeAssignment(ctx, source, mainAssignments, key, value) {\n\tif (typeof key === \"string\") serializeStringKeyAssignment(ctx, source, mainAssignments, key, value);\n\telse {\n\t\tconst base = ctx.base;\n\t\tconst parent = base.stack;\n\t\tbase.stack = [];\n\t\tconst serialized = serialize$1(ctx, value);\n\t\tbase.stack = parent;\n\t\tconst parentAssignment = base.assignments;\n\t\tbase.assignments = mainAssignments;\n\t\tcreateArrayAssign(ctx, source.i, serialize$1(ctx, key), serialized);\n\t\tbase.assignments = parentAssignment;\n\t}\n}\nfunction serializeAssignments(ctx, source, node) {\n\tconst keys = node.k;\n\tconst len = keys.length;\n\tif (len > 0) {\n\t\tconst mainAssignments = [];\n\t\tconst values = node.v;\n\t\tctx.base.stack.push(source.i);\n\t\tfor (let i = 0; i < len; i++) serializeAssignment(ctx, source, mainAssignments, keys[i], values[i]);\n\t\tctx.base.stack.pop();\n\t\treturn resolveAssignments(mainAssignments);\n\t}\n}\nfunction serializeDictionary(ctx, node, init) {\n\tif (node.p) {\n\t\tconst base = ctx.base;\n\t\tif (base.features & 8) init = serializeWithObjectAssign(ctx, node, node.p, init);\n\t\telse {\n\t\t\tmarkSerializerRef(base, node.i);\n\t\t\tconst assignments = serializeAssignments(ctx, node, node.p);\n\t\t\tif (assignments) return \"(\" + assignIndexedValue(ctx, node.i, init) + \",\" + assignments + getRefParam(ctx, node.i) + \")\";\n\t\t}\n\t}\n\treturn init;\n}\nfunction serializeNullConstructor(ctx, node) {\n\tpushObjectFlag(ctx, node.o, node.i);\n\treturn serializeDictionary(ctx, node, NULL_CONSTRUCTOR);\n}\nfunction serializeDate(node) {\n\treturn \"new Date(\\\"\" + node.s + \"\\\")\";\n}\nconst TEMPORAL_CONSTRUCTOR = {\n\t[0]: \"Temporal.Instant\",\n\t[1]: \"Temporal.Duration\",\n\t[2]: \"Temporal.PlainDate\",\n\t[3]: \"Temporal.PlainDateTime\",\n\t[4]: \"Temporal.PlainMonthDay\",\n\t[5]: \"Temporal.PlainTime\",\n\t[6]: \"Temporal.PlainYearMonth\",\n\t[7]: \"Temporal.ZonedDateTime\"\n};\nfunction serializeTemporal(ctx, node) {\n\tif (ctx.base.features & 64) return TEMPORAL_CONSTRUCTOR[node.c] + \".from(\\\"\" + node.s + \"\\\")\";\n\tthrow new SerovalUnsupportedNodeError(node);\n}\nfunction serializeRegExp(ctx, node) {\n\tif (ctx.base.features & 32) return \"/\" + deserializeString(node.c) + \"/\" + node.m;\n\tthrow new SerovalUnsupportedNodeError(node);\n}\nfunction serializeSetItem(ctx, id, item) {\n\tconst base = ctx.base;\n\tif (isIndexedValueInStack(base, item)) {\n\t\tmarkSerializerRef(base, id);\n\t\tcreateAddAssignment(ctx, id, getRefParam(ctx, item.i));\n\t\treturn \"\";\n\t}\n\treturn serialize$1(ctx, item);\n}\nfunction serializeSet(ctx, node) {\n\tlet serialized = SET_CONSTRUCTOR;\n\tconst items = node.a;\n\tconst size = items.length;\n\tconst id = node.i;\n\tif (size > 0) {\n\t\tctx.base.stack.push(id);\n\t\tlet result = serializeSetItem(ctx, id, items[0]);\n\t\tfor (let i = 1, item = result; i < size; i++) {\n\t\t\titem = serializeSetItem(ctx, id, items[i]);\n\t\t\tresult += (item && result && \",\") + item;\n\t\t}\n\t\tctx.base.stack.pop();\n\t\tif (result) serialized += \"([\" + result + \"])\";\n\t}\n\treturn serialized;\n}\nfunction serializeMapEntry(ctx, id, key, val, sentinel) {\n\tconst base = ctx.base;\n\tif (isIndexedValueInStack(base, key)) {\n\t\tconst keyRef = getRefParam(ctx, key.i);\n\t\tmarkSerializerRef(base, id);\n\t\tif (isIndexedValueInStack(base, val)) {\n\t\t\tcreateSetAssignment(ctx, id, keyRef, getRefParam(ctx, val.i));\n\t\t\treturn \"\";\n\t\t}\n\t\tif (val.t !== 4 && val.i != null && isSerializerRefMarked(base, val.i)) {\n\t\t\tconst serialized = \"(\" + serialize$1(ctx, val) + \",[\" + sentinel + \",\" + sentinel + \"])\";\n\t\t\tcreateSetAssignment(ctx, id, keyRef, getRefParam(ctx, val.i));\n\t\t\tcreateDeleteAssignment(ctx, id, sentinel);\n\t\t\treturn serialized;\n\t\t}\n\t\tconst parent = base.stack;\n\t\tbase.stack = [];\n\t\tcreateSetAssignment(ctx, id, keyRef, serialize$1(ctx, val));\n\t\tbase.stack = parent;\n\t\treturn \"\";\n\t}\n\tif (isIndexedValueInStack(base, val)) {\n\t\tconst valueRef = getRefParam(ctx, val.i);\n\t\tmarkSerializerRef(base, id);\n\t\tif (key.t !== 4 && key.i != null && isSerializerRefMarked(base, key.i)) {\n\t\t\tconst serialized = \"(\" + serialize$1(ctx, key) + \",[\" + sentinel + \",\" + sentinel + \"])\";\n\t\t\tcreateSetAssignment(ctx, id, getRefParam(ctx, key.i), valueRef);\n\t\t\tcreateDeleteAssignment(ctx, id, sentinel);\n\t\t\treturn serialized;\n\t\t}\n\t\tconst parent = base.stack;\n\t\tbase.stack = [];\n\t\tcreateSetAssignment(ctx, id, serialize$1(ctx, key), valueRef);\n\t\tbase.stack = parent;\n\t\treturn \"\";\n\t}\n\treturn \"[\" + serialize$1(ctx, key) + \",\" + serialize$1(ctx, val) + \"]\";\n}\nfunction serializeMap(ctx, node) {\n\tlet serialized = MAP_CONSTRUCTOR;\n\tconst keys = node.e.k;\n\tconst size = keys.length;\n\tconst id = node.i;\n\tconst sentinel = node.f;\n\tconst sentinelId = getRefParam(ctx, sentinel.i);\n\tconst base = ctx.base;\n\tif (size > 0) {\n\t\tconst vals = node.e.v;\n\t\tbase.stack.push(id);\n\t\tlet result = serializeMapEntry(ctx, id, keys[0], vals[0], sentinelId);\n\t\tfor (let i = 1, item = result; i < size; i++) {\n\t\t\titem = serializeMapEntry(ctx, id, keys[i], vals[i], sentinelId);\n\t\t\tresult += (item && result && \",\") + item;\n\t\t}\n\t\tbase.stack.pop();\n\t\tif (result) serialized += \"([\" + result + \"])\";\n\t}\n\tif (sentinel.t === 26) {\n\t\tmarkSerializerRef(base, sentinel.i);\n\t\tserialized = \"(\" + serialize$1(ctx, sentinel) + \",\" + serialized + \")\";\n\t}\n\treturn serialized;\n}\nfunction serializeArrayBuffer(ctx, node) {\n\treturn getConstructor(ctx, node.f) + \"(\\\"\" + node.s + \"\\\")\";\n}\nfunction serializeTypedArray(ctx, node) {\n\treturn \"new \" + node.c + \"(\" + serialize$1(ctx, node.f) + \",\" + node.b + \",\" + node.l + \")\";\n}\nfunction serializeDataView(ctx, node) {\n\treturn \"new DataView(\" + serialize$1(ctx, node.f) + \",\" + node.b + \",\" + node.l + \")\";\n}\nfunction serializeAggregateError(ctx, node) {\n\tconst id = node.i;\n\tctx.base.stack.push(id);\n\tconst serialized = serializeDictionary(ctx, node, \"new AggregateError([],\\\"\" + node.m + \"\\\")\");\n\tctx.base.stack.pop();\n\treturn serialized;\n}\nfunction serializeError(ctx, node) {\n\treturn serializeDictionary(ctx, node, \"new \" + ERROR_CONSTRUCTOR_STRING[node.s] + \"(\\\"\" + node.m + \"\\\")\");\n}\nfunction serializePromise(ctx, node) {\n\tlet serialized;\n\tconst fulfilled = node.f;\n\tconst id = node.i;\n\tconst promiseConstructor = node.s ? PROMISE_RESOLVE : PROMISE_REJECT;\n\tconst base = ctx.base;\n\tif (isIndexedValueInStack(base, fulfilled)) {\n\t\tconst ref = getRefParam(ctx, fulfilled.i);\n\t\tserialized = promiseConstructor + (node.s ? \"().then(\" + createFunction([], ref) + \")\" : \"().catch(\" + createEffectfulFunction([], \"throw \" + ref) + \")\");\n\t} else {\n\t\tbase.stack.push(id);\n\t\tconst result = serialize$1(ctx, fulfilled);\n\t\tbase.stack.pop();\n\t\tserialized = promiseConstructor + \"(\" + result + \")\";\n\t}\n\treturn serialized;\n}\nfunction serializeBoxed(ctx, node) {\n\treturn \"Object(\" + serialize$1(ctx, node.f) + \")\";\n}\nfunction getConstructor(ctx, node) {\n\tconst current = serialize$1(ctx, node);\n\treturn node.t === 4 ? current : \"(\" + current + \")\";\n}\nfunction serializePromiseConstructor(ctx, node) {\n\tif (ctx.mode === 1) throw new SerovalUnsupportedNodeError(node);\n\treturn \"(\" + assignIndexedValue(ctx, node.s, getConstructor(ctx, node.f) + \"()\") + \").p\";\n}\nfunction serializePromiseResolve(ctx, node) {\n\tif (ctx.mode === 1) throw new SerovalUnsupportedNodeError(node);\n\treturn getConstructor(ctx, node.a[0]) + \"(\" + getRefParam(ctx, node.i) + \",\" + serialize$1(ctx, node.a[1]) + \")\";\n}\nfunction serializePromiseReject(ctx, node) {\n\tif (ctx.mode === 1) throw new SerovalUnsupportedNodeError(node);\n\treturn getConstructor(ctx, node.a[0]) + \"(\" + getRefParam(ctx, node.i) + \",\" + serialize$1(ctx, node.a[1]) + \")\";\n}\nfunction serializePlugin(ctx, node) {\n\tconst currentPlugins = ctx.base.plugins;\n\tif (currentPlugins) for (let i = 0, len = currentPlugins.length; i < len; i++) {\n\t\tconst plugin = currentPlugins[i];\n\t\tif (plugin.tag === node.c) {\n\t\t\tif (ctx.child == null) ctx.child = new SerializePluginContext(ctx);\n\t\t\treturn plugin.serialize(node.s, ctx.child, { id: node.i });\n\t\t}\n\t}\n\tthrow new SerovalMissingPluginError(node.c);\n}\nfunction serializeIteratorFactory(ctx, node) {\n\tlet result = \"\";\n\tlet initialized = false;\n\tif (node.f.t !== 4) {\n\t\tmarkSerializerRef(ctx.base, node.f.i);\n\t\tresult = \"(\" + serialize$1(ctx, node.f) + \",\";\n\t\tinitialized = true;\n\t}\n\tresult += assignIndexedValue(ctx, node.i, \"(\" + SERIALIZED_ITERATOR_CONSTRUCTOR + \")(\" + getRefParam(ctx, node.f.i) + \")\");\n\tif (initialized) result += \")\";\n\treturn result;\n}\nfunction serializeIteratorFactoryInstance(ctx, node) {\n\treturn getConstructor(ctx, node.a[0]) + \"(\" + serialize$1(ctx, node.a[1]) + \")\";\n}\nfunction serializeAsyncIteratorFactory(ctx, node) {\n\tconst promise = node.a[0];\n\tconst symbol = node.a[1];\n\tconst base = ctx.base;\n\tlet result = \"\";\n\tif (promise.t !== 4) {\n\t\tmarkSerializerRef(base, promise.i);\n\t\tresult += \"(\" + serialize$1(ctx, promise);\n\t}\n\tif (symbol.t !== 4) {\n\t\tmarkSerializerRef(base, symbol.i);\n\t\tresult += (result ? \",\" : \"(\") + serialize$1(ctx, symbol);\n\t}\n\tif (result) result += \",\";\n\tconst iterator = assignIndexedValue(ctx, node.i, \"(\" + SERIALIZED_ASYNC_ITERATOR_CONSTRUCTOR + \")(\" + getRefParam(ctx, symbol.i) + \",\" + getRefParam(ctx, promise.i) + \")\");\n\tif (result) return result + iterator + \")\";\n\treturn iterator;\n}\nfunction serializeAsyncIteratorFactoryInstance(ctx, node) {\n\treturn getConstructor(ctx, node.a[0]) + \"(\" + serialize$1(ctx, node.a[1]) + \")\";\n}\nfunction serializeStreamConstructor(ctx, node) {\n\tconst result = assignIndexedValue(ctx, node.i, getConstructor(ctx, node.f) + \"()\");\n\tconst len = node.a.length;\n\tif (len) {\n\t\tlet values = serialize$1(ctx, node.a[0]);\n\t\tfor (let i = 1; i < len; i++) values += \",\" + serialize$1(ctx, node.a[i]);\n\t\treturn \"(\" + result + \",\" + values + \",\" + getRefParam(ctx, node.i) + \")\";\n\t}\n\treturn result;\n}\nfunction serializeStreamNext(ctx, node) {\n\treturn getRefParam(ctx, node.i) + \".next(\" + serialize$1(ctx, node.f) + \")\";\n}\nfunction serializeStreamThrow(ctx, node) {\n\treturn getRefParam(ctx, node.i) + \".throw(\" + serialize$1(ctx, node.f) + \")\";\n}\nfunction serializeStreamReturn(ctx, node) {\n\treturn getRefParam(ctx, node.i) + \".return(\" + serialize$1(ctx, node.f) + \")\";\n}\nfunction serializeSequenceItem(ctx, id, index, item) {\n\tconst base = ctx.base;\n\tif (isIndexedValueInStack(base, item)) {\n\t\tmarkSerializerRef(base, id);\n\t\tcreateSequenceAssign(ctx, id, index, getRefParam(ctx, item.i));\n\t\treturn \"\";\n\t}\n\treturn serialize$1(ctx, item);\n}\nfunction serializeSequence(ctx, node) {\n\tconst items = node.a;\n\tconst size = items.length;\n\tconst id = node.i;\n\tif (size > 0) {\n\t\tctx.base.stack.push(id);\n\t\tlet result = serializeSequenceItem(ctx, id, 0, items[0]);\n\t\tfor (let i = 1, item = result; i < size; i++) {\n\t\t\titem = serializeSequenceItem(ctx, id, i, items[i]);\n\t\t\tresult += (item && result && \",\") + item;\n\t\t}\n\t\tctx.base.stack.pop();\n\t\tif (result) return \"{__SEROVAL_SEQUENCE__:!0,v:[\" + result + \"],t:\" + node.s + \",d:\" + node.l + \"}\";\n\t}\n\treturn \"{__SEROVAL_SEQUENCE__:!0,v:[],t:-1,d:0}\";\n}\nfunction serializeAssignable(ctx, node) {\n\tswitch (node.t) {\n\t\tcase 17: return SYMBOL_STRING[node.s];\n\t\tcase 18: return serializeReference(node);\n\t\tcase 9: return serializeArray(ctx, node);\n\t\tcase 10: return serializeObject(ctx, node);\n\t\tcase 11: return serializeNullConstructor(ctx, node);\n\t\tcase 5: return serializeDate(node);\n\t\tcase 6: return serializeRegExp(ctx, node);\n\t\tcase 7: return serializeSet(ctx, node);\n\t\tcase 8: return serializeMap(ctx, node);\n\t\tcase 19: return serializeArrayBuffer(ctx, node);\n\t\tcase 16:\n\t\tcase 15: return serializeTypedArray(ctx, node);\n\t\tcase 20: return serializeDataView(ctx, node);\n\t\tcase 14: return serializeAggregateError(ctx, node);\n\t\tcase 13: return serializeError(ctx, node);\n\t\tcase 12: return serializePromise(ctx, node);\n\t\tcase 21: return serializeBoxed(ctx, node);\n\t\tcase 22: return serializePromiseConstructor(ctx, node);\n\t\tcase 25: return serializePlugin(ctx, node);\n\t\tcase 26: return SPECIAL_REF_STRING[node.s];\n\t\tcase 35: return serializeSequence(ctx, node);\n\t\tcase 36: return serializeTemporal(ctx, node);\n\t\tdefault: throw new SerovalUnsupportedNodeError(node);\n\t}\n}\nfunction serialize$1(ctx, node) {\n\tswitch (node.t) {\n\t\tcase 2: return CONSTANT_STRING[node.s];\n\t\tcase 0: return \"\" + node.s;\n\t\tcase 1: return \"\\\"\" + node.s + \"\\\"\";\n\t\tcase 3: return node.s + \"n\";\n\t\tcase 4: return getRefParam(ctx, node.i);\n\t\tcase 23: return serializePromiseResolve(ctx, node);\n\t\tcase 24: return serializePromiseReject(ctx, node);\n\t\tcase 27: return serializeIteratorFactory(ctx, node);\n\t\tcase 28: return serializeIteratorFactoryInstance(ctx, node);\n\t\tcase 29: return serializeAsyncIteratorFactory(ctx, node);\n\t\tcase 30: return serializeAsyncIteratorFactoryInstance(ctx, node);\n\t\tcase 31: return serializeStreamConstructor(ctx, node);\n\t\tcase 32: return serializeStreamNext(ctx, node);\n\t\tcase 33: return serializeStreamThrow(ctx, node);\n\t\tcase 34: return serializeStreamReturn(ctx, node);\n\t\tdefault: return assignIndexedValue(ctx, node.i, serializeAssignable(ctx, node));\n\t}\n}\nfunction serializeTopVanilla(ctx, tree) {\n\tconst result = serialize$1(ctx, tree);\n\tif (tree.i != null && ctx.state.vars.length) {\n\t\tconst patches = resolvePatches(ctx.base);\n\t\tlet body = result;\n\t\tif (patches) {\n\t\t\tconst index = getRefParam(ctx, tree.i);\n\t\t\tbody = result + \",\" + patches + index;\n\t\t\tif (!result.startsWith(index + \"=\")) body = index + \"=\" + body;\n\t\t\tbody = \"(\" + body + \")\";\n\t\t}\n\t\treturn \"(\" + createFunction(ctx.state.vars, body) + \")()\";\n\t}\n\tif (tree.t === 10) return \"(\" + result + \")\";\n\treturn result;\n}\nfunction serializeTopCross(ctx, tree) {\n\tconst result = serialize$1(ctx, tree);\n\tconst id = tree.i;\n\tif (id == null) return result;\n\tconst patches = resolvePatches(ctx.base);\n\tconst ref = getRefParam(ctx, id);\n\tconst scopeId = ctx.state.scopeId;\n\tconst params = scopeId == null ? \"\" : \"$R\";\n\tconst body = patches ? \"(\" + result + \",\" + patches + ref + \")\" : result;\n\tif (params === \"\") {\n\t\tif (tree.t === 10 && !patches) return \"(\" + body + \")\";\n\t\treturn body;\n\t}\n\tconst args = scopeId == null ? \"()\" : \"($R[\\\"\" + serializeString(scopeId) + \"\\\"])\";\n\treturn \"(\" + createFunction([params], body) + \")\" + args;\n}\n//#endregion\n//#region src/core/context/sync-parser.ts\nfunction createSyncParserContext(mode, options) {\n\treturn {\n\t\ttype: 1,\n\t\tbase: createBaseParserContext(mode, options),\n\t\tchild: void 0\n\t};\n}\nvar SyncParsePluginContext = class {\n\tconstructor(_p, depth) {\n\t\tthis._p = _p;\n\t\tthis.depth = depth;\n\t}\n\tparse(current) {\n\t\treturn parseSOS(this._p, this.depth, current);\n\t}\n};\nvar StreamParsePluginContext = class {\n\tconstructor(_p, depth) {\n\t\tthis._p = _p;\n\t\tthis.depth = depth;\n\t}\n\tparse(current) {\n\t\treturn parseSOS(this._p, this.depth, current);\n\t}\n\tparseWithError(current) {\n\t\treturn parseWithError(this._p, this.depth, current);\n\t}\n\tisAlive() {\n\t\treturn this._p.state.alive;\n\t}\n\tpushPendingState() {\n\t\tpushPendingState(this._p);\n\t}\n\tpopPendingState() {\n\t\tpopPendingState(this._p);\n\t}\n\tonParse(node) {\n\t\tonParse(this._p, node);\n\t}\n\tonError(error) {\n\t\tonError(this._p, error);\n\t}\n\taddCleanup(callback) {\n\t\tthis._p.state.cleanups.push(callback);\n\t}\n};\nfunction createStreamParserState(options) {\n\treturn {\n\t\talive: true,\n\t\tpending: 0,\n\t\tinitial: true,\n\t\tbuffer: [],\n\t\tonParse: options.onParse,\n\t\tonError: options.onError,\n\t\tonDone: options.onDone,\n\t\tcleanups: []\n\t};\n}\nfunction createStreamParserContext(options) {\n\treturn {\n\t\ttype: 2,\n\t\tbase: createBaseParserContext(2, options),\n\t\tstate: createStreamParserState(options)\n\t};\n}\nfunction parseItems(ctx, depth, current) {\n\tconst nodes = [];\n\tfor (let i = 0, len = current.length; i < len; i++) if (i in current) nodes[i] = parseSOS(ctx, depth, current[i]);\n\telse nodes[i] = 0;\n\treturn nodes;\n}\nfunction parseArray(ctx, depth, id, current) {\n\treturn createArrayNode(id, current, parseItems(ctx, depth, current));\n}\nfunction parseProperties(ctx, depth, properties) {\n\tconst entries = Object.entries(properties);\n\tconst keyNodes = [];\n\tconst valueNodes = [];\n\tfor (let i = 0, len = entries.length; i < len; i++) {\n\t\tkeyNodes.push(serializeString(entries[i][0]));\n\t\tvalueNodes.push(parseSOS(ctx, depth, entries[i][1]));\n\t}\n\tif (SYM_ITERATOR in properties) {\n\t\tkeyNodes.push(parseWellKnownSymbol(ctx.base, SYM_ITERATOR));\n\t\tvalueNodes.push(createIteratorFactoryInstanceNode(parseIteratorFactory(ctx.base), parseSOS(ctx, depth, createSequenceFromIterable(properties))));\n\t}\n\tif (SYM_ASYNC_ITERATOR in properties) {\n\t\tkeyNodes.push(parseWellKnownSymbol(ctx.base, SYM_ASYNC_ITERATOR));\n\t\tvalueNodes.push(createAsyncIteratorFactoryInstanceNode(parseAsyncIteratorFactory(ctx.base), parseSOS(ctx, depth, ctx.type === 1 ? createStream() : createStreamFromAsyncIterable(properties, ctx.state.cleanups))));\n\t}\n\tif (SYM_TO_STRING_TAG in properties) {\n\t\tkeyNodes.push(parseWellKnownSymbol(ctx.base, SYM_TO_STRING_TAG));\n\t\tvalueNodes.push(createStringNode(properties[SYM_TO_STRING_TAG]));\n\t}\n\tif (SYM_IS_CONCAT_SPREADABLE in properties) {\n\t\tkeyNodes.push(parseWellKnownSymbol(ctx.base, SYM_IS_CONCAT_SPREADABLE));\n\t\tvalueNodes.push(properties[SYM_IS_CONCAT_SPREADABLE] ? TRUE_NODE : FALSE_NODE);\n\t}\n\treturn {\n\t\tk: keyNodes,\n\t\tv: valueNodes\n\t};\n}\nfunction parsePlainObject(ctx, depth, id, current, empty) {\n\treturn createObjectNode(id, current, empty, parseProperties(ctx, depth, current));\n}\nfunction parseBoxed(ctx, depth, id, current) {\n\treturn createBoxedNode(id, parseSOS(ctx, depth, current.valueOf()));\n}\nfunction parseTypedArray(ctx, depth, id, current) {\n\tcurrent = getArrayBufferView(ctx.base, current);\n\treturn createTypedArrayNode(id, current, parseSOS(ctx, depth, current.buffer));\n}\nfunction parseBigIntTypedArray(ctx, depth, id, current) {\n\tcurrent = getArrayBufferView(ctx.base, current);\n\treturn createBigIntTypedArrayNode(id, current, parseSOS(ctx, depth, current.buffer));\n}\nfunction parseDataView(ctx, depth, id, current) {\n\tcurrent = getArrayBufferView(ctx.base, current);\n\treturn createDataViewNode(id, current, parseSOS(ctx, depth, current.buffer));\n}\nfunction parseError(ctx, depth, id, current) {\n\tconst options = getErrorOptions(current, ctx.base.features);\n\treturn createErrorNode(id, current, options ? parseProperties(ctx, depth, options) : void 0);\n}\nfunction parseAggregateError(ctx, depth, id, current) {\n\tconst options = getErrorOptions(current, ctx.base.features);\n\treturn createAggregateErrorNode(id, current, options ? parseProperties(ctx, depth, options) : void 0);\n}\nfunction parseMap(ctx, depth, id, current) {\n\tconst keyNodes = [];\n\tconst valueNodes = [];\n\tfor (const [key, value] of current.entries()) {\n\t\tkeyNodes.push(parseSOS(ctx, depth, key));\n\t\tvalueNodes.push(parseSOS(ctx, depth, value));\n\t}\n\treturn createMapNode(ctx.base, id, keyNodes, valueNodes);\n}\nfunction parseSet(ctx, depth, id, current) {\n\tconst items = [];\n\tfor (const item of current.keys()) items.push(parseSOS(ctx, depth, item));\n\treturn createSetNode(id, items);\n}\nfunction parseStream(ctx, depth, id, current) {\n\tconst result = createStreamConstructorNode(id, parseSpecialReference(ctx.base, 4), []);\n\tif (ctx.type === 1) return result;\n\tpushPendingState(ctx);\n\tcurrent.on({\n\t\tnext: (value) => {\n\t\t\tif (ctx.state.alive) {\n\t\t\t\tconst parsed = parseWithError(ctx, depth, value);\n\t\t\t\tif (parsed) onParse(ctx, createStreamNextNode(id, parsed));\n\t\t\t}\n\t\t},\n\t\tthrow: (value) => {\n\t\t\tif (ctx.state.alive) {\n\t\t\t\tconst parsed = parseWithError(ctx, depth, value);\n\t\t\t\tif (parsed) onParse(ctx, createStreamThrowNode(id, parsed));\n\t\t\t}\n\t\t\tpopPendingState(ctx);\n\t\t},\n\t\treturn: (value) => {\n\t\t\tif (ctx.state.alive) {\n\t\t\t\tconst parsed = parseWithError(ctx, depth, value);\n\t\t\t\tif (parsed) onParse(ctx, createStreamReturnNode(id, parsed));\n\t\t\t}\n\t\t\tpopPendingState(ctx);\n\t\t}\n\t});\n\treturn result;\n}\nfunction handlePromiseSuccess(id, depth, data) {\n\tif (this.state.alive) {\n\t\tconst parsed = parseWithError(this, depth, data);\n\t\tif (parsed) onParse(this, createSerovalNode(23, id, void 0, void 0, void 0, void 0, void 0, [parseSpecialReference(this.base, 2), parsed], void 0, void 0, void 0, void 0));\n\t\tpopPendingState(this);\n\t}\n}\nfunction handlePromiseFailure(id, depth, data) {\n\tif (this.state.alive) {\n\t\tconst parsed = parseWithError(this, depth, data);\n\t\tif (parsed) onParse(this, createSerovalNode(24, id, void 0, void 0, void 0, void 0, void 0, [parseSpecialReference(this.base, 3), parsed], void 0, void 0, void 0, void 0));\n\t}\n\tpopPendingState(this);\n}\nfunction parsePromise(ctx, depth, id, current) {\n\tconst resolver = createIndexForValue(ctx.base, {});\n\tif (ctx.type === 2) {\n\t\tpushPendingState(ctx);\n\t\tcurrent.then(handlePromiseSuccess.bind(ctx, resolver, depth), handlePromiseFailure.bind(ctx, resolver, depth));\n\t}\n\treturn createPromiseConstructorNode(ctx.base, id, resolver);\n}\nfunction parsePluginSync(ctx, depth, id, current, currentPlugins) {\n\tfor (let i = 0, len = currentPlugins.length; i < len; i++) {\n\t\tconst plugin = currentPlugins[i];\n\t\tif (plugin.parse.sync && plugin.test(current)) return createPluginNode(id, plugin.tag, plugin.parse.sync(current, new SyncParsePluginContext(ctx, depth), { id }));\n\t}\n}\nfunction parsePluginStream(ctx, depth, id, current, currentPlugins) {\n\tfor (let i = 0, len = currentPlugins.length; i < len; i++) {\n\t\tconst plugin = currentPlugins[i];\n\t\tif (plugin.parse.stream && plugin.test(current)) return createPluginNode(id, plugin.tag, plugin.parse.stream(current, new StreamParsePluginContext(ctx, depth), { id }));\n\t}\n}\nfunction parsePlugin(ctx, depth, id, current) {\n\tconst currentPlugins = ctx.base.plugins;\n\tif (currentPlugins) return ctx.type === 1 ? parsePluginSync(ctx, depth, id, current, currentPlugins) : parsePluginStream(ctx, depth, id, current, currentPlugins);\n}\nfunction parseSequence(ctx, depth, id, current) {\n\tconst nodes = [];\n\tfor (let i = 0, len = current.v.length; i < len; i++) nodes[i] = parseSOS(ctx, depth, current.v[i]);\n\treturn createSequenceNode(id, nodes, current.t, current.d);\n}\nfunction parseObjectPhase2(ctx, depth, id, current, currentClass) {\n\tswitch (currentClass) {\n\t\tcase Object: return parsePlainObject(ctx, depth, id, current, false);\n\t\tcase void 0: return parsePlainObject(ctx, depth, id, current, true);\n\t\tcase Date: return createDateNode(id, current);\n\t\tcase Error:\n\t\tcase EvalError:\n\t\tcase RangeError:\n\t\tcase ReferenceError:\n\t\tcase SyntaxError:\n\t\tcase TypeError:\n\t\tcase URIError: return parseError(ctx, depth, id, current);\n\t\tcase Number:\n\t\tcase Boolean:\n\t\tcase String:\n\t\tcase BigInt: return parseBoxed(ctx, depth, id, current);\n\t\tcase ArrayBuffer: return createArrayBufferNode(ctx.base, id, current);\n\t\tcase Int8Array:\n\t\tcase Int16Array:\n\t\tcase Int32Array:\n\t\tcase Uint8Array:\n\t\tcase Uint16Array:\n\t\tcase Uint32Array:\n\t\tcase Uint8ClampedArray:\n\t\tcase Float32Array:\n\t\tcase Float64Array: return parseTypedArray(ctx, depth, id, current);\n\t\tcase DataView: return parseDataView(ctx, depth, id, current);\n\t\tcase Map: return parseMap(ctx, depth, id, current);\n\t\tcase Set: return parseSet(ctx, depth, id, current);\n\t}\n\tif (currentClass === Promise || current instanceof Promise) return parsePromise(ctx, depth, id, current);\n\tconst currentFeatures = ctx.base.features;\n\tif (currentFeatures & 32 && currentClass === RegExp) return createRegExpNode(id, current);\n\tif (currentFeatures & 16) switch (currentClass) {\n\t\tcase BigInt64Array:\n\t\tcase BigUint64Array: return parseBigIntTypedArray(ctx, depth, id, current);\n\t}\n\tif (currentFeatures & 1 && typeof AggregateError !== \"undefined\" && (currentClass === AggregateError || current instanceof AggregateError)) return parseAggregateError(ctx, depth, id, current);\n\tif (currentFeatures & 64 && typeof Temporal !== \"undefined\") switch (currentClass) {\n\t\tcase Temporal.Instant: return createTemporalNode(id, 0, current);\n\t\tcase Temporal.Duration: return createTemporalNode(id, 1, current);\n\t\tcase Temporal.PlainDate: return createTemporalNode(id, 2, current);\n\t\tcase Temporal.PlainDateTime: return createTemporalNode(id, 3, current);\n\t\tcase Temporal.PlainMonthDay: return createTemporalNode(id, 4, current);\n\t\tcase Temporal.PlainTime: return createTemporalNode(id, 5, current);\n\t\tcase Temporal.PlainYearMonth: return createTemporalNode(id, 6, current);\n\t\tcase Temporal.ZonedDateTime: return createTemporalNode(id, 7, current);\n\t}\n\tif (current instanceof Error) return parseError(ctx, depth, id, current);\n\tif (SYM_ITERATOR in current || SYM_ASYNC_ITERATOR in current) return parsePlainObject(ctx, depth, id, current, !!currentClass);\n\tthrow new SerovalUnsupportedTypeError(current);\n}\nfunction parseObject(ctx, depth, id, current) {\n\tif (Array.isArray(current)) return parseArray(ctx, depth, id, current);\n\tif (isStream(current)) return parseStream(ctx, depth, id, current);\n\tif (isSequence(current)) return parseSequence(ctx, depth, id, current);\n\tlet currentClass = current.constructor;\n\tif (currentClass !== void 0 && typeof currentClass !== \"function\") {\n\t\tconst proto = Object.getPrototypeOf(current);\n\t\tcurrentClass = proto === null ? void 0 : proto.constructor;\n\t}\n\tif (currentClass === OpaqueReference) return parseSOS(ctx, depth, current.replacement);\n\tconst parsed = parsePlugin(ctx, depth, id, current);\n\tif (parsed) return parsed;\n\treturn parseObjectPhase2(ctx, depth, id, current, currentClass);\n}\nfunction parseFunction(ctx, depth, current) {\n\tconst ref = getReferenceNode(ctx.base, current);\n\tif (ref.type !== 0) return ref.value;\n\tconst plugin = parsePlugin(ctx, depth, ref.value, current);\n\tif (plugin) return plugin;\n\tthrow new SerovalUnsupportedTypeError(current);\n}\nfunction parseSOS(ctx, depth, current) {\n\tif (depth >= ctx.base.depthLimit) throw new SerovalDepthLimitError(ctx.base.depthLimit);\n\tswitch (typeof current) {\n\t\tcase \"boolean\": return current ? TRUE_NODE : FALSE_NODE;\n\t\tcase \"undefined\": return UNDEFINED_NODE;\n\t\tcase \"string\": return createStringNode(current);\n\t\tcase \"number\": return createNumberNode(current);\n\t\tcase \"bigint\": return createBigIntNode(current);\n\t\tcase \"object\":\n\t\t\tif (current) {\n\t\t\t\tconst ref = getReferenceNode(ctx.base, current);\n\t\t\t\treturn ref.type === 0 ? parseObject(ctx, depth + 1, ref.value, current) : ref.value;\n\t\t\t}\n\t\t\treturn NULL_NODE;\n\t\tcase \"symbol\": return parseWellKnownSymbol(ctx.base, current);\n\t\tcase \"function\": return parseFunction(ctx, depth, current);\n\t\tdefault: throw new SerovalUnsupportedTypeError(current);\n\t}\n}\nfunction parseTop(ctx, current) {\n\ttry {\n\t\treturn parseSOS(ctx, 0, current);\n\t} catch (error) {\n\t\tthrow error instanceof SerovalParserError ? error : new SerovalParserError(error);\n\t}\n}\nfunction onParse(ctx, node) {\n\tif (ctx.state.initial) ctx.state.buffer.push(node);\n\telse onParseInternal(ctx, node, false);\n}\nfunction onError(ctx, error) {\n\tif (ctx.state.onError) ctx.state.onError(error);\n\telse throw error instanceof SerovalParserError ? error : new SerovalParserError(error);\n}\nfunction onDone(ctx) {\n\tif (ctx.state.onDone) ctx.state.onDone();\n\tfor (let i = 0, len = ctx.state.cleanups.length; i < len; i++) ctx.state.cleanups[i]();\n}\nfunction onParseInternal(ctx, node, initial) {\n\ttry {\n\t\tctx.state.onParse(node, initial);\n\t} catch (error) {\n\t\tonError(ctx, error);\n\t}\n}\nfunction pushPendingState(ctx) {\n\tctx.state.pending++;\n}\nfunction popPendingState(ctx) {\n\tif (--ctx.state.pending <= 0) onDone(ctx);\n}\nfunction parseWithError(ctx, depth, current) {\n\ttry {\n\t\treturn parseSOS(ctx, depth, current);\n\t} catch (err) {\n\t\tonError(ctx, err);\n\t\treturn;\n\t}\n}\nfunction startStreamParse(ctx, current) {\n\tconst parsed = parseWithError(ctx, 0, current);\n\tif (parsed) {\n\t\tonParseInternal(ctx, parsed, true);\n\t\tctx.state.initial = false;\n\t\tflushStreamParse(ctx, ctx.state);\n\t\tif (ctx.state.pending <= 0) destroyStreamParse(ctx);\n\t}\n}\nfunction flushStreamParse(ctx, state) {\n\tfor (let i = 0, len = state.buffer.length; i < len; i++) onParseInternal(ctx, state.buffer[i], false);\n}\nfunction destroyStreamParse(ctx) {\n\tif (ctx.state.alive) {\n\t\tonDone(ctx);\n\t\tctx.state.alive = false;\n\t}\n}\n//#endregion\n//#region src/core/cross/index.ts\nfunction crossSerialize(source, options = {}) {\n\tconst plugins = resolvePlugins(options.plugins);\n\tconst ctx = createSyncParserContext(2, {\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\tdisabledFeatures: options.disabledFeatures,\n\t\trefs: options.refs\n\t});\n\tconst tree = parseTop(ctx, source);\n\treturn serializeTopCross(createCrossSerializerContext({\n\t\tplugins,\n\t\tfeatures: ctx.base.features,\n\t\tscopeId: options.scopeId,\n\t\tmarkedRefs: ctx.base.marked\n\t}), tree);\n}\nasync function crossSerializeAsync(source, options = {}) {\n\tconst plugins = resolvePlugins(options.plugins);\n\tconst ctx = createAsyncParserContext(2, {\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\tdisabledFeatures: options.disabledFeatures,\n\t\trefs: options.refs\n\t});\n\tconst tree = await parseTopAsync(ctx, source);\n\treturn serializeTopCross(createCrossSerializerContext({\n\t\tplugins,\n\t\tfeatures: ctx.base.features,\n\t\tscopeId: options.scopeId,\n\t\tmarkedRefs: ctx.base.marked\n\t}), tree);\n}\nfunction toCrossJSON(source, options = {}) {\n\tconst plugins = resolvePlugins(options.plugins);\n\treturn parseTop(createSyncParserContext(2, {\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\tdisabledFeatures: options.disabledFeatures,\n\t\trefs: options.refs\n\t}), source);\n}\nasync function toCrossJSONAsync(source, options = {}) {\n\tconst plugins = resolvePlugins(options.plugins);\n\treturn await parseTopAsync(createAsyncParserContext(2, {\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\tdisabledFeatures: options.disabledFeatures,\n\t\trefs: options.refs\n\t}), source);\n}\nfunction crossSerializeStream(source, options) {\n\tconst plugins = resolvePlugins(options.plugins);\n\tconst ctx = createStreamParserContext({\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\trefs: options.refs,\n\t\tdisabledFeatures: options.disabledFeatures,\n\t\tonParse(node, initial) {\n\t\t\tconst serial = createCrossSerializerContext({\n\t\t\t\tplugins,\n\t\t\t\tfeatures: ctx.base.features,\n\t\t\t\tscopeId: options.scopeId,\n\t\t\t\tmarkedRefs: ctx.base.marked\n\t\t\t});\n\t\t\tlet serialized;\n\t\t\ttry {\n\t\t\t\tserialized = serializeTopCross(serial, node);\n\t\t\t} catch (err) {\n\t\t\t\tif (options.onError) options.onError(err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\toptions.onSerialize(serialized, initial);\n\t\t},\n\t\tonError: options.onError,\n\t\tonDone: options.onDone\n\t});\n\tstartStreamParse(ctx, source);\n\treturn destroyStreamParse.bind(null, ctx);\n}\nfunction toCrossJSONStream(source, options) {\n\tconst plugins = resolvePlugins(options.plugins);\n\tconst ctx = createStreamParserContext({\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\trefs: options.refs,\n\t\tdisabledFeatures: options.disabledFeatures,\n\t\tdepthLimit: options.depthLimit,\n\t\tonParse: options.onParse,\n\t\tonError: options.onError,\n\t\tonDone: options.onDone\n\t});\n\tstartStreamParse(ctx, source);\n\treturn destroyStreamParse.bind(null, ctx);\n}\nfunction fromCrossJSON(source, options) {\n\tconst plugins = resolvePlugins(options.plugins);\n\treturn deserializeTop(createCrossDeserializerContext({\n\t\tmaxBase64Length: options.maxBase64Length,\n\t\tplugins,\n\t\trefs: options.refs,\n\t\tfeatures: options.features,\n\t\tdisabledFeatures: options.disabledFeatures,\n\t\tdepthLimit: options.depthLimit\n\t}), source);\n}\n//#endregion\n//#region src/core/Serializer.ts\nvar Serializer = class {\n\tconstructor(options) {\n\t\tthis.options = options;\n\t\tthis.alive = true;\n\t\tthis.flushed = false;\n\t\tthis.done = false;\n\t\tthis.pending = 0;\n\t\tthis.cleanups = [];\n\t\tthis.refs = /* @__PURE__ */ new Map();\n\t\tthis.keys = /* @__PURE__ */ new Set();\n\t\tthis.ids = 0;\n\t\tthis.plugins = resolvePlugins(options.plugins);\n\t}\n\twrite(key, value) {\n\t\tif (this.alive && !this.flushed) {\n\t\t\tthis.pending++;\n\t\t\tthis.keys.add(key);\n\t\t\tthis.cleanups.push(crossSerializeStream(value, {\n\t\t\t\tplugins: this.plugins,\n\t\t\t\tscopeId: this.options.scopeId,\n\t\t\t\trefs: this.refs,\n\t\t\t\tdisabledFeatures: this.options.disabledFeatures,\n\t\t\t\tcompactArrayBufferViews: this.options.compactArrayBufferViews,\n\t\t\t\tonError: this.options.onError,\n\t\t\t\tonSerialize: (data, initial) => {\n\t\t\t\t\tif (this.alive) this.options.onData(initial ? this.options.globalIdentifier + \"[\\\"\" + serializeString(key) + \"\\\"]=\" + data : data);\n\t\t\t\t},\n\t\t\t\tonDone: () => {\n\t\t\t\t\tif (this.alive) {\n\t\t\t\t\t\tthis.pending--;\n\t\t\t\t\t\tif (this.pending <= 0 && this.flushed && !this.done && this.options.onDone) {\n\t\t\t\t\t\t\tthis.options.onDone();\n\t\t\t\t\t\t\tthis.done = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}));\n\t\t}\n\t}\n\tgetNextID() {\n\t\twhile (this.keys.has(\"\" + this.ids)) this.ids++;\n\t\treturn \"\" + this.ids;\n\t}\n\tpush(value) {\n\t\tconst newID = this.getNextID();\n\t\tthis.write(newID, value);\n\t\treturn newID;\n\t}\n\tflush() {\n\t\tif (this.alive) {\n\t\t\tthis.flushed = true;\n\t\t\tif (this.pending <= 0 && !this.done && this.options.onDone) {\n\t\t\t\tthis.options.onDone();\n\t\t\t\tthis.done = true;\n\t\t\t}\n\t\t}\n\t}\n\tclose() {\n\t\tif (this.alive) {\n\t\t\tfor (let i = 0, len = this.cleanups.length; i < len; i++) this.cleanups[i]();\n\t\t\tif (!this.done && this.options.onDone) {\n\t\t\t\tthis.options.onDone();\n\t\t\t\tthis.done = true;\n\t\t\t}\n\t\t\tthis.alive = false;\n\t\t}\n\t}\n};\n//#endregion\n//#region src/core/tree/index.ts\nfunction serialize(source, options = {}) {\n\tconst plugins = resolvePlugins(options.plugins);\n\tconst ctx = createSyncParserContext(1, {\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\tdisabledFeatures: options.disabledFeatures\n\t});\n\tconst tree = parseTop(ctx, source);\n\treturn serializeTopVanilla(createVanillaSerializerContext({\n\t\tplugins,\n\t\tfeatures: ctx.base.features,\n\t\tmarkedRefs: ctx.base.marked\n\t}), tree);\n}\nasync function serializeAsync(source, options = {}) {\n\tconst plugins = resolvePlugins(options.plugins);\n\tconst ctx = createAsyncParserContext(1, {\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\tdisabledFeatures: options.disabledFeatures\n\t});\n\tconst tree = await parseTopAsync(ctx, source);\n\treturn serializeTopVanilla(createVanillaSerializerContext({\n\t\tplugins,\n\t\tfeatures: ctx.base.features,\n\t\tmarkedRefs: ctx.base.marked\n\t}), tree);\n}\nfunction deserialize(source) {\n\treturn (0, eval)(source);\n}\nfunction toJSON(source, options = {}) {\n\tconst plugins = resolvePlugins(options.plugins);\n\tconst ctx = createSyncParserContext(1, {\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\tdisabledFeatures: options.disabledFeatures\n\t});\n\treturn {\n\t\tt: parseTop(ctx, source),\n\t\tf: ctx.base.features,\n\t\tm: Array.from(ctx.base.marked)\n\t};\n}\nasync function toJSONAsync(source, options = {}) {\n\tconst plugins = resolvePlugins(options.plugins);\n\tconst ctx = createAsyncParserContext(1, {\n\t\tcompactArrayBufferViews: options.compactArrayBufferViews,\n\t\tplugins,\n\t\tdisabledFeatures: options.disabledFeatures\n\t});\n\treturn {\n\t\tt: await parseTopAsync(ctx, source),\n\t\tf: ctx.base.features,\n\t\tm: Array.from(ctx.base.marked)\n\t};\n}\nfunction compileJSON(source, options = {}) {\n\treturn serializeTopVanilla(createVanillaSerializerContext({\n\t\tplugins: resolvePlugins(options.plugins),\n\t\tfeatures: source.f,\n\t\tmarkedRefs: source.m\n\t}), source.t);\n}\nfunction fromJSON(source, options = {}) {\n\tvar _source$f;\n\tconst plugins = resolvePlugins(options.plugins);\n\tconst disabledFeatures = options.disabledFeatures || 0;\n\tconst sourceFeatures = (_source$f = source.f) !== null && _source$f !== void 0 ? _source$f : 127;\n\treturn deserializeTop(createVanillaDeserializerContext({\n\t\tmaxBase64Length: options.maxBase64Length,\n\t\tplugins,\n\t\tmarkedRefs: source.m,\n\t\tfeatures: sourceFeatures & ~disabledFeatures,\n\t\tdisabledFeatures\n\t}), source.t);\n}\n//#endregion\nexport { Feature, OpaqueReference, Serializer, SerovalConflictedNodeIdError, SerovalDepthLimitError, SerovalDeserializationError, SerovalError, SerovalMalformedNodeError, SerovalMissingInstanceError, SerovalMissingPluginError, SerovalMissingReferenceError, SerovalMissingReferenceForIdError, SerovalMode, SerovalParserError, SerovalSerializationError, SerovalUnknownTypedArrayError, SerovalUnsupportedNodeError, SerovalUnsupportedTypeError, compileJSON, createPlugin, createReference, createStream, crossSerialize, crossSerializeAsync, crossSerializeStream, deserialize, fromCrossJSON, fromJSON, getCrossReferenceHeader, isStream, resolvePlugins, serialize, serializeAsync, toCrossJSON, toCrossJSONAsync, toCrossJSONStream, toJSON, toJSONAsync };\n","import { createPlugin } from \"seroval\";\n//#region src/ssr/serializer/makeSerovalPlugin.ts\n/** Create a Seroval plugin for client/server symmetric (de)serialization. */\n/* @__NO_SIDE_EFFECTS__ */\nfunction makeSerovalPlugin(serializationAdapter) {\n\treturn /* @__PURE__ */ createPlugin({\n\t\ttag: \"$TSR/t/\" + serializationAdapter.key,\n\t\ttest: serializationAdapter.test,\n\t\tparse: {\n\t\t\tsync(value, ctx) {\n\t\t\t\treturn { v: ctx.parse(serializationAdapter.toSerializable(value)) };\n\t\t\t},\n\t\t\tasync async(value, ctx) {\n\t\t\t\treturn { v: await ctx.parse(serializationAdapter.toSerializable(value)) };\n\t\t\t},\n\t\t\tstream(value, ctx) {\n\t\t\t\treturn { v: ctx.parse(serializationAdapter.toSerializable(value)) };\n\t\t\t}\n\t\t},\n\t\tserialize: void 0,\n\t\tdeserialize(node, ctx) {\n\t\t\treturn serializationAdapter.fromSerializable(ctx.deserialize(node.v));\n\t\t}\n\t});\n}\n//#endregion\nexport { makeSerovalPlugin };\n\n//# sourceMappingURL=makeSerovalPlugin.js.map","//#region src/ssr/serializer/RawStream.ts\n/**\n* Marker class for ReadableStream<Uint8Array> that should be serialized\n* with base64/text encoding (JSON and SSR) or binary framing\n* (server-function responses).\n*\n* Wrap your binary streams with this to get efficient serialization:\n* ```ts\n* // For binary data (files, images, etc.)\n* return { data: new RawStream(file.stream()) }\n*\n* // For text-heavy data (RSC payloads, etc.)\n* return { data: new RawStream(rscStream, { hint: 'text' }) }\n* ```\n*\n* RawStreams returned from one server function share one ordered response.\n* Arbitrary or sequential consumption can require potentially unbounded client\n* buffering for unread data. Cancelling one RawStream discards it locally;\n* abort the whole server-function call to cancel the response and server work.\n* Consume streams concurrently, cancel unused streams promptly, or use separate\n* calls when independent backpressure is required.\n*/\nvar RawStream = class {\n\tconstructor(stream, options) {\n\t\tthis.stream = stream;\n\t\tthis.hint = options?.hint ?? \"binary\";\n\t}\n};\n//#endregion\nexport { RawStream };\n\n//# sourceMappingURL=RawStream.js.map","\"use client\";\nimport { useLayoutEffect } from \"./utils.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { getLocationChangeInfo, trimPathRight } from \"@tanstack/router-core\";\nimport * as React$1 from \"react\";\n//#region src/Transitioner.tsx\nfunction settleOwner(owner, rendered) {\n\tconst settle = owner[1];\n\towner.length = 0;\n\tsettle?.(rendered);\n}\nfunction Transitioner({ t }) {\n\tconst router = useRouter();\n\tconst acknowledgement = router._rendered ??= [];\n\tconst mounted = process.env.NODE_ENV !== \"production\" ? React$1.useRef(false) : void 0;\n\trouter.startTransition = (fn, expected) => new Promise((resolve) => {\n\t\tsettleOwner(acknowledgement, false);\n\t\tacknowledgement.push(expected, resolve);\n\t\tt(router);\n\t\tReact$1.startTransition(fn);\n\t});\n\tuseLayoutEffect(() => {\n\t\tconst unsub = router.history.subscribe(router.load);\n\t\tif (mounted?.current) return unsub;\n\t\tif (mounted) mounted.current = true;\n\t\trouter.updateLatestLocation();\n\t\tconst location = router.latestLocation;\n\t\tconst nextLocation = router.buildLocation({\n\t\t\tto: location.pathname,\n\t\t\tsearch: true,\n\t\t\tparams: true,\n\t\t\thash: true,\n\t\t\tstate: true,\n\t\t\t_includeValidateSearch: true\n\t\t});\n\t\tif (trimPathRight(location.publicHref) !== trimPathRight(nextLocation.publicHref)) {\n\t\t\trouter.commitLocation({\n\t\t\t\t...nextLocation,\n\t\t\t\treplace: true,\n\t\t\t\tignoreBlocker: true\n\t\t\t});\n\t\t\treturn unsub;\n\t\t}\n\t\tconst resolvedLocation = router.stores.resolvedLocation.get();\n\t\tif (resolvedLocation?.href === location.href && resolvedLocation.state.__TSR_key === location.state.__TSR_key) acknowledgement.push(router.stores.matches.get(), (rendered) => {\n\t\t\tif (rendered) router.emit({\n\t\t\t\ttype: \"onRendered\",\n\t\t\t\t...getLocationChangeInfo(resolvedLocation, resolvedLocation)\n\t\t\t});\n\t\t});\n\t\telse if (!router._tx) router.load({ sync: true }).catch(console.error);\n\t\treturn unsub;\n\t}, [router, router.history]);\n\treturn null;\n}\n//#endregion\nexport { Transitioner, settleOwner };\n\n//# sourceMappingURL=Transitioner.js.map","\"use client\";\nimport { useLayoutEffect } from \"./utils.js\";\nimport { CatchBoundary } from \"./CatchBoundary.js\";\nimport { matchContext } from \"./matchContext.js\";\nimport { useRouter } from \"./useRouter.js\";\nimport { useStructuralSharing } from \"./useMatch.js\";\nimport { Transitioner, settleOwner } from \"./Transitioner.js\";\nimport { Match, renderPending } from \"./Match.js\";\nimport { rootRouteId } from \"@tanstack/router-core\";\nimport * as React$1 from \"react\";\nimport { isServer } from \"@tanstack/router-core/isServer\";\nimport { Fragment, jsx, jsxs } from \"react/jsx-runtime\";\nimport { useSelector } from \"@tanstack/react-store\";\n//#region src/Matches.tsx\n/**\n* Internal component that renders the router's active match tree with\n* suspense, error, and not-found boundaries. Rendered by `RouterProvider`.\n*/\nfunction Matches() {\n\tconst router = useRouter();\n\tconst rootRoute = router.routesById[rootRouteId];\n\tconst pendingElement = renderPending(router, rootRoute);\n\tconst inner = /* @__PURE__ */ jsxs(Fragment, { children: [!(isServer ?? router.isServer) && /* @__PURE__ */ jsx(Transitioner, { t: React$1.useState()[1] }), (isServer ?? router.isServer) || router.ssr ? /* @__PURE__ */ jsx(MatchesInner, {}) : /* @__PURE__ */ jsx(React$1.Suspense, {\n\t\tfallback: pendingElement,\n\t\tchildren: /* @__PURE__ */ jsx(MatchesInner, {})\n\t})] });\n\treturn router.options.InnerWrap ? /* @__PURE__ */ jsx(router.options.InnerWrap, { children: inner }) : inner;\n}\nfunction MatchesInner() {\n\tconst router = useRouter();\n\tconst acknowledgement = router._rendered;\n\tconst matches = isServer ?? router.isServer ? router.stores.matches.get() : useSelector(router.stores.matches, (value) => acknowledgement[0] ?? value);\n\tconst match = matches[0];\n\tconst routeId = match?.routeId;\n\tuseLayoutEffect(() => {\n\t\tif (acknowledgement[0] === matches) settleOwner(acknowledgement, true);\n\t}, [acknowledgement, matches]);\n\tconst matchComponent = routeId ? /* @__PURE__ */ jsx(Match, { routeId }) : null;\n\treturn router.options.disableGlobalCatchBoundary ? matchComponent : /* @__PURE__ */ jsx(CatchBoundary, {\n\t\tgetResetKey: () => match,\n\t\tonCatch: process.env.NODE_ENV !== \"production\" ? (error) => {\n\t\t\tconsole.warn(`Warning: The following error wasn't caught by any route! At the very least, consider setting an 'errorComponent' in your RootRoute!`);\n\t\t\tconsole.warn(\"Warning:\", error);\n\t\t} : void 0,\n\t\tchildren: matchComponent\n\t});\n}\n/**\n* Create a matcher function for testing locations against route definitions.\n*\n* The returned function accepts standard navigation options (`to`, `params`,\n* `search`, etc.) and returns either `false` (no match) or the matched params\n* object when the route matches the current or pending location.\n*\n* Useful for conditional rendering and active UI states because it subscribes\n* the component to the router state used for matching. The returned function's\n* identity changes when that state changes. For imperative checks in event\n* handlers, get the router with `useRouter` and call `router.matchRoute(...)`\n* to avoid that subscription.\n*\n* @returns A `matchRoute(options)` function that returns `false` or params.\n* @link https://tanstack.com/router/latest/docs/framework/react/api/router/useMatchRouteHook\n*/\nfunction useMatchRoute() {\n\tconst router = useRouter();\n\tif (isServer ?? router.isServer) return (opts) => {\n\t\tconst { pending, caseSensitive, fuzzy, includeSearch, ...rest } = opts;\n\t\treturn router.matchRoute(rest, {\n\t\t\tpending,\n\t\t\tcaseSensitive,\n\t\t\tfuzzy,\n\t\t\tincludeSearch\n\t\t});\n\t};\n\treturn React$1.useCallback((opts) => {\n\t\tconst { pending, caseSensitive, fuzzy, includeSearch, ...rest } = opts;\n\t\treturn router.matchRoute(rest, {\n\t\t\tpending,\n\t\t\tcaseSensitive,\n\t\t\tfuzzy,\n\t\t\tincludeSearch\n\t\t});\n\t}, [\n\t\trouter,\n\t\tuseSelector(router.stores.location, (location) => location.href),\n\t\tuseSelector(router.stores.resolvedLocation, (location) => location?.href),\n\t\tuseSelector(router.stores.status)\n\t]);\n}\n/**\n* Component that conditionally renders its children based on whether a route\n* matches the provided `from`/`to` options. If `children` is a function, it\n* receives the matched params object.\n*\n* @link https://tanstack.com/router/latest/docs/framework/react/api/router/matchRouteComponent\n*/\nfunction MatchRoute(props) {\n\tconst params = useMatchRoute()(props);\n\tif (typeof props.children === \"function\") return props.children(params);\n\treturn params ? props.children : null;\n}\nfunction useMatches(opts) {\n\tconst router = useRouter();\n\tif (isServer ?? router.isServer) {\n\t\tconst matches = router.stores.matches.get();\n\t\treturn opts?.select ? opts.select(matches) : matches;\n\t}\n\treturn useSelector(router.stores.matches, useStructuralSharing(opts, router));\n}\n/**\n* Read the presented route matches above the current match, or select a\n* derived value from them.\n*/\nfunction useParentMatches(opts) {\n\tconst contextRouteId = React$1.useContext(matchContext);\n\treturn useMatches({\n\t\tselect: (matches) => {\n\t\t\tmatches = matches.slice(0, matches.findIndex((d) => d.routeId === contextRouteId));\n\t\t\treturn opts?.select ? opts.select(matches) : matches;\n\t\t},\n\t\tstructuralSharing: opts?.structuralSharing\n\t});\n}\n/**\n* Read the presented route matches below the current match, or select a\n* derived value from them.\n*/\nfunction useChildMatches(opts) {\n\tconst contextRouteId = React$1.useContext(matchContext);\n\treturn useMatches({\n\t\tselect: (matches) => {\n\t\t\tmatches = matches.slice(matches.findIndex((d) => d.routeId === contextRouteId) + 1);\n\t\t\treturn opts?.select ? opts.select(matches) : matches;\n\t\t},\n\t\tstructuralSharing: opts?.structuralSharing\n\t});\n}\n//#endregion\nexport { MatchRoute, Matches, useChildMatches, useMatchRoute, useMatches, useParentMatches };\n\n//# sourceMappingURL=Matches.js.map","\"use client\";\nimport { routerContext } from \"./routerContext.js\";\nimport { Matches } from \"./Matches.js\";\nimport { hasKeys } from \"@tanstack/router-core\";\nimport \"react\";\nimport { jsx } from \"react/jsx-runtime\";\n//#region src/RouterProvider.tsx\n/**\n* Low-level provider that places the router into React context and optionally\n* updates router options from props. Most apps should use `RouterProvider`.\n*/\nfunction RouterContextProvider({ router, children, ...rest }) {\n\tif (hasKeys(rest)) router.update({\n\t\t...router.options,\n\t\t...rest,\n\t\tcontext: {\n\t\t\t...router.options.context,\n\t\t\t...rest.context\n\t\t}\n\t});\n\tconst provider = /* @__PURE__ */ jsx(routerContext.Provider, {\n\t\tvalue: router,\n\t\tchildren\n\t});\n\tif (router.options.Wrap) return /* @__PURE__ */ jsx(router.options.Wrap, { children: provider });\n\treturn provider;\n}\n/**\n* Renders the current match presentation and provides the router to the React\n* tree via context.\n*\n* Accepts mutable router options via props. Configure initialization-only\n* options with `createRouter`.\n*\n* @link https://tanstack.com/router/latest/docs/framework/react/api/router/createRouterFunction\n*/\nfunction RouterProvider({ router, ...rest }) {\n\treturn /* @__PURE__ */ jsx(RouterContextProvider, {\n\t\trouter,\n\t\t...rest,\n\t\tchildren: /* @__PURE__ */ jsx(Matches, {})\n\t});\n}\n//#endregion\nexport { RouterContextProvider, RouterProvider };\n\n//# sourceMappingURL=RouterProvider.js.map","import \"react\";\nimport { RouterProvider } from \"@tanstack/react-router\";\nimport { jsx } from \"react/jsx-runtime\";\n//#region src/StartServer.tsx\nfunction StartServer(props) {\n\treturn /* @__PURE__ */ jsx(RouterProvider, { router: props.router });\n}\n//#endregion\nexport { StartServer };\n\n//# sourceMappingURL=StartServer.js.map","import { createPlugin } from \"seroval\";\n//#region src/ssr/serializer/ShallowErrorPlugin.ts\n/**\n* this plugin serializes only the `message` part of an Error\n* this helps with serializing e.g. a ZodError which has functions attached that cannot be serialized\n*/\nconst ShallowErrorPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"$TSR/Error\",\n\ttest(value) {\n\t\treturn value instanceof Error;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\treturn { message: ctx.parse(value.message) };\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn { message: await ctx.parse(value.message) };\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn { message: ctx.parse(value.message) };\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new Error(\" + ctx.serialize(node.message) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new Error(ctx.deserialize(node.message));\n\t}\n});\n//#endregion\nexport { ShallowErrorPlugin };\n\n//# sourceMappingURL=ShallowErrorPlugin.js.map","import { createStream } from \"seroval\";\n//#region src/ssr/serializer/rawStreamCodec.ts\nfunction toBase64(bytes) {\n\tconst chunks = [];\n\tfor (let i = 0; i < bytes.length; i += 32768) chunks.push(String.fromCharCode.apply(null, bytes.subarray(i, i + 32768)));\n\treturn btoa(chunks.join(\"\"));\n}\nfunction fromBase64(value) {\n\tconst binary = atob(value);\n\tconst bytes = new Uint8Array(binary.length);\n\tfor (let i = 0; i < binary.length; i++) bytes[i] = binary.charCodeAt(i);\n\treturn bytes;\n}\nconst textDecoder = /* @__PURE__ */ new TextDecoder(\"utf-8\", {\n\tfatal: true,\n\tignoreBOM: true\n});\n/** `'t' + utf8` for a valid UTF-8 chunk, otherwise `'b' + base64`. */\nfunction encodeText(value) {\n\ttry {\n\t\treturn \"t\" + textDecoder.decode(value);\n\t} catch {\n\t\treturn \"b\" + toBase64(value);\n\t}\n}\nconst textEncoder = /* @__PURE__ */ new TextEncoder();\nfunction decodeText(value) {\n\tconst data = value.slice(1);\n\treturn value[0] === \"t\" ? textEncoder.encode(data) : fromBase64(data);\n}\n/**\n* Pump a byte stream into a Seroval stream, one encoded chunk per read.\n* Returns the Seroval stream and a `stop` function that cancels the reader\n* without signalling the Seroval stream; the abort signal and read failures\n* stop the pump and throw through the Seroval stream.\n*/\nfunction pumpEncodedStream(readable, encode, signal) {\n\tsignal?.throwIfAborted();\n\tconst stream = createStream();\n\tconst reader = readable.getReader();\n\tlet active = true;\n\tconst release = () => {\n\t\tactive = false;\n\t\tsignal?.removeEventListener(\"abort\", abort);\n\t\treader.releaseLock();\n\t};\n\tconst stop = (reason) => {\n\t\tif (!active) return false;\n\t\treader.cancel(reason).catch(() => {});\n\t\trelease();\n\t\treturn true;\n\t};\n\tconst abort = () => {\n\t\tif (stop(signal.reason)) stream.throw(signal.reason);\n\t};\n\tsignal?.addEventListener(\"abort\", abort);\n\t(async () => {\n\t\ttry {\n\t\t\twhile (active) {\n\t\t\t\tconst { done, value } = await reader.read();\n\t\t\t\tif (!active) return;\n\t\t\t\tif (done) {\n\t\t\t\t\trelease();\n\t\t\t\t\tstream.return(void 0);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tstream.next(encode(value));\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tif (stop(error)) stream.throw(error);\n\t\t}\n\t})();\n\treturn [stream, stop];\n}\n/** Rebuild a byte stream from encoded Seroval stream chunks. */\nfunction fromEncodedStream(source, decode) {\n\tlet unsubscribe;\n\tlet done = false;\n\treturn new ReadableStream({\n\t\tstart(controller) {\n\t\t\tconst dispose = source.on({\n\t\t\t\tnext(value) {\n\t\t\t\t\tif (done) return;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tcontroller.enqueue(decode(value));\n\t\t\t\t\t} catch (error) {\n\t\t\t\t\t\tdone = true;\n\t\t\t\t\t\tconst stop = unsubscribe;\n\t\t\t\t\t\tunsubscribe = void 0;\n\t\t\t\t\t\tstop?.();\n\t\t\t\t\t\tcontroller.error(error);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tthrow(error) {\n\t\t\t\t\tif (!done) {\n\t\t\t\t\t\tdone = true;\n\t\t\t\t\t\tunsubscribe = void 0;\n\t\t\t\t\t\tcontroller.error(error);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\treturn() {\n\t\t\t\t\tif (!done) {\n\t\t\t\t\t\tdone = true;\n\t\t\t\t\t\tunsubscribe = void 0;\n\t\t\t\t\t\tcontroller.close();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t\tif (done) dispose();\n\t\t\telse unsubscribe = dispose;\n\t\t},\n\t\tcancel() {\n\t\t\tconst dispose = unsubscribe;\n\t\t\tunsubscribe = void 0;\n\t\t\tdispose?.();\n\t\t}\n\t});\n}\n//#endregion\nexport { decodeText, encodeText, fromBase64, fromEncodedStream, pumpEncodedStream, toBase64 };\n\n//# sourceMappingURL=rawStreamCodec.js.map","import { RawStream } from \"./RawStream.js\";\nimport { decodeText, encodeText, fromBase64, fromEncodedStream, pumpEncodedStream, toBase64 } from \"./rawStreamCodec.js\";\nimport { createPlugin } from \"seroval\";\n//#region src/ssr/serializer/RawStreamJSONPlugin.ts\n/**\n* Serializes a RawStream into JSON requests and static-cache responses.\n* The optional signal stops the source pump when the request is aborted.\n*/\n/* @__NO_SIDE_EFFECTS__ */\nfunction createRawStreamJSONPlugin(signal) {\n\treturn /* @__PURE__ */ createPlugin({\n\t\ttag: \"tss/RawStream\",\n\t\ttest: (value) => value instanceof RawStream,\n\t\tparse: { async: async (value, ctx) => {\n\t\t\tconst text = await ctx.parse(value.hint === \"text\");\n\t\t\tconst [stream] = pumpEncodedStream(value.stream, value.hint === \"text\" ? encodeText : toBase64, signal);\n\t\t\treturn {\n\t\t\t\ttext,\n\t\t\t\tstream: await ctx.parse(stream)\n\t\t\t};\n\t\t} },\n\t\tserialize: void 0,\n\t\tdeserialize: void 0\n\t});\n}\nconst RawStreamJSONPlugin = /* @__PURE__ */ createRawStreamJSONPlugin();\n/**\n* Deserializes the JSON shape above back into a `ReadableStream<Uint8Array>`.\n* `test` never matches, so this plugin is inert during serialization and can\n* share a plugin list with `RawStreamJSONPlugin`.\n*/\nconst RawStreamJSONDeserializePlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"tss/RawStream\",\n\ttest: () => false,\n\tparse: {},\n\tserialize: void 0,\n\tdeserialize(node, ctx) {\n\t\treturn fromEncodedStream(ctx.deserialize(node.stream), ctx.deserialize(node.text) ? decodeText : fromBase64);\n\t}\n});\n//#endregion\nexport { RawStreamJSONDeserializePlugin, RawStreamJSONPlugin, createRawStreamJSONPlugin };\n\n//# sourceMappingURL=RawStreamJSONPlugin.js.map","import { t as __exportAll } from \"./rolldown-runtime-D7D4PA-g.js\";\nimport { createPlugin, createStream, isStream } from \"seroval\";\n//#region web/abort-signal.ts\nconst PROMISE_TO_ABORT_SIGNAL = (promise) => {\n\tconst controller = new AbortController();\n\tconst abort = controller.abort.bind(controller);\n\tpromise.then(abort, abort);\n\treturn controller;\n};\nfunction resolveAbortSignalResult(resolve) {\n\tresolve(this.reason);\n}\nfunction resolveAbortSignal(resolve) {\n\tthis.addEventListener(\"abort\", resolveAbortSignalResult.bind(this, resolve), { once: true });\n}\nfunction abortSignalToPromise(signal) {\n\treturn new Promise(resolveAbortSignal.bind(signal));\n}\nconst ABORT_CONTROLLER = {};\nconst AbortSignalPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/AbortSignal\",\n\textends: [/* @__PURE__ */ createPlugin({\n\t\ttag: \"seroval-plugins/web/AbortControllerFactoryPlugin\",\n\t\ttest(value) {\n\t\t\treturn value === ABORT_CONTROLLER;\n\t\t},\n\t\tparse: {\n\t\t\tsync() {\n\t\t\t\treturn ABORT_CONTROLLER;\n\t\t\t},\n\t\t\tasync async() {\n\t\t\t\treturn await Promise.resolve(ABORT_CONTROLLER);\n\t\t\t},\n\t\t\tstream() {\n\t\t\t\treturn ABORT_CONTROLLER;\n\t\t\t}\n\t\t},\n\t\tserialize() {\n\t\t\treturn PROMISE_TO_ABORT_SIGNAL.toString();\n\t\t},\n\t\tdeserialize() {\n\t\t\tthrow new Error(\"seroval-plugins/web/AbortControllerFactoryPlugin cannot be deserialized directly.\");\n\t\t}\n\t})],\n\ttest(value) {\n\t\tif (typeof AbortSignal === \"undefined\") return false;\n\t\treturn value instanceof AbortSignal;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\tif (value.aborted) return { reason: ctx.parse(value.reason) };\n\t\t\treturn {};\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\tif (value.aborted) return { reason: await ctx.parse(value.reason) };\n\t\t\tconst result = await abortSignalToPromise(value);\n\t\t\treturn { reason: await ctx.parse(result) };\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\tif (value.aborted) return { reason: ctx.parse(value.reason) };\n\t\t\tconst promise = abortSignalToPromise(value);\n\t\t\treturn {\n\t\t\t\tfactory: ctx.parse(ABORT_CONTROLLER),\n\t\t\t\tcontroller: ctx.parse(promise)\n\t\t\t};\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\tif (node.reason) return \"AbortSignal.abort(\" + ctx.serialize(node.reason) + \")\";\n\t\tif (node.controller && node.factory) return \"(\" + ctx.serialize(node.factory) + \")(\" + ctx.serialize(node.controller) + \").signal\";\n\t\treturn \"(new AbortController).signal\";\n\t},\n\tdeserialize(node, ctx) {\n\t\tif (node.reason) return AbortSignal.abort(ctx.deserialize(node.reason));\n\t\tif (node.controller) {\n\t\t\tconst controller = ctx.deserialize(node.controller);\n\t\t\tif (!(controller instanceof Promise)) throw new Error(\"Expected a Promise source.\");\n\t\t\treturn PROMISE_TO_ABORT_SIGNAL(controller).signal;\n\t\t}\n\t\treturn new AbortController().signal;\n\t}\n});\n//#endregion\n//#region web/validate.ts\nfunction expectString(value) {\n\tif (typeof value !== \"string\") throw new Error(\"Expected a string.\");\n\treturn value;\n}\nfunction expectNumber(value) {\n\tif (typeof value !== \"number\") throw new Error(\"Expected a number.\");\n\treturn value;\n}\nfunction expectArrayBuffer(value) {\n\tif (!(value instanceof ArrayBuffer)) throw new Error(\"Expected an ArrayBuffer.\");\n\treturn value;\n}\n//#endregion\n//#region web/blob.ts\nconst BlobPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/Blob\",\n\ttest(value) {\n\t\tif (typeof Blob === \"undefined\") return false;\n\t\treturn value instanceof Blob;\n\t},\n\tparse: { async async(value, ctx) {\n\t\treturn {\n\t\t\ttype: await ctx.parse(value.type),\n\t\t\tbuffer: await ctx.parse(await value.arrayBuffer())\n\t\t};\n\t} },\n\tserialize(node, ctx) {\n\t\treturn \"new Blob([\" + ctx.serialize(node.buffer) + \"],{type:\" + ctx.serialize(node.type) + \"})\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new Blob([expectArrayBuffer(ctx.deserialize(node.buffer))], { type: expectString(ctx.deserialize(node.type)) });\n\t}\n});\n//#endregion\n//#region web/custom-event.ts\nfunction createCustomEventOptions(current) {\n\treturn {\n\t\tdetail: current.detail,\n\t\tbubbles: current.bubbles,\n\t\tcancelable: current.cancelable,\n\t\tcomposed: current.composed\n\t};\n}\nconst CustomEventPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/CustomEvent\",\n\ttest(value) {\n\t\tif (typeof CustomEvent === \"undefined\") return false;\n\t\treturn value instanceof CustomEvent;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\treturn {\n\t\t\t\ttype: ctx.parse(value.type),\n\t\t\t\toptions: ctx.parse(createCustomEventOptions(value))\n\t\t\t};\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn {\n\t\t\t\ttype: await ctx.parse(value.type),\n\t\t\t\toptions: await ctx.parse(createCustomEventOptions(value))\n\t\t\t};\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn {\n\t\t\t\ttype: ctx.parse(value.type),\n\t\t\t\toptions: ctx.parse(createCustomEventOptions(value))\n\t\t\t};\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new CustomEvent(\" + ctx.serialize(node.type) + \",\" + ctx.serialize(node.options) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new CustomEvent(expectString(ctx.deserialize(node.type)), ctx.deserialize(node.options));\n\t}\n});\n//#endregion\n//#region web/dom-exception.ts\nconst DOMExceptionPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/DOMException\",\n\ttest(value) {\n\t\tif (typeof DOMException === \"undefined\") return false;\n\t\treturn value instanceof DOMException;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\treturn {\n\t\t\t\tname: ctx.parse(value.name),\n\t\t\t\tmessage: ctx.parse(value.message)\n\t\t\t};\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn {\n\t\t\t\tname: await ctx.parse(value.name),\n\t\t\t\tmessage: await ctx.parse(value.message)\n\t\t\t};\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn {\n\t\t\t\tname: ctx.parse(value.name),\n\t\t\t\tmessage: ctx.parse(value.message)\n\t\t\t};\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new DOMException(\" + ctx.serialize(node.message) + \",\" + ctx.serialize(node.name) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new DOMException(expectString(ctx.deserialize(node.message)), expectString(ctx.deserialize(node.name)));\n\t}\n});\n//#endregion\n//#region web/event.ts\nfunction createEventOptions(current) {\n\treturn {\n\t\tbubbles: current.bubbles,\n\t\tcancelable: current.cancelable,\n\t\tcomposed: current.composed\n\t};\n}\nconst EventPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/Event\",\n\ttest(value) {\n\t\tif (typeof Event === \"undefined\") return false;\n\t\treturn value instanceof Event;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\treturn {\n\t\t\t\ttype: ctx.parse(value.type),\n\t\t\t\toptions: ctx.parse(createEventOptions(value))\n\t\t\t};\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn {\n\t\t\t\ttype: await ctx.parse(value.type),\n\t\t\t\toptions: await ctx.parse(createEventOptions(value))\n\t\t\t};\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn {\n\t\t\t\ttype: ctx.parse(value.type),\n\t\t\t\toptions: ctx.parse(createEventOptions(value))\n\t\t\t};\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new Event(\" + ctx.serialize(node.type) + \",\" + ctx.serialize(node.options) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new Event(expectString(ctx.deserialize(node.type)), ctx.deserialize(node.options));\n\t}\n});\n//#endregion\n//#region web/file.ts\nconst FilePlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/File\",\n\ttest(value) {\n\t\tif (typeof File === \"undefined\") return false;\n\t\treturn value instanceof File;\n\t},\n\tparse: { async async(value, ctx) {\n\t\treturn {\n\t\t\tname: await ctx.parse(value.name),\n\t\t\toptions: await ctx.parse({\n\t\t\t\ttype: value.type,\n\t\t\t\tlastModified: value.lastModified\n\t\t\t}),\n\t\t\tbuffer: await ctx.parse(await value.arrayBuffer())\n\t\t};\n\t} },\n\tserialize(node, ctx) {\n\t\treturn \"new File([\" + ctx.serialize(node.buffer) + \"],\" + ctx.serialize(node.name) + \",\" + ctx.serialize(node.options) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new File([expectArrayBuffer(ctx.deserialize(node.buffer))], expectString(ctx.deserialize(node.name)), ctx.deserialize(node.options));\n\t}\n});\n//#endregion\n//#region web/form-data.ts\nfunction convertFormData(instance) {\n\tconst items = [];\n\tinstance.forEach((value, key) => {\n\t\titems.push([key, value]);\n\t});\n\treturn items;\n}\nconst FORM_DATA_FACTORY = {};\nconst FORM_DATA_FACTORY_CONSTRUCTOR = (e, f = new FormData(), i = 0, s = e.length, t) => {\n\tfor (; i < s; i++) {\n\t\tt = e[i];\n\t\tf.append(t[0], t[1]);\n\t}\n\treturn f;\n};\nconst FormDataPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/FormData\",\n\textends: [FilePlugin, /* @__PURE__ */ createPlugin({\n\t\ttag: \"seroval-plugins/web/FormDataFactory\",\n\t\ttest(value) {\n\t\t\treturn value === FORM_DATA_FACTORY;\n\t\t},\n\t\tparse: {\n\t\t\tsync() {\n\t\t\t\treturn FORM_DATA_FACTORY;\n\t\t\t},\n\t\t\tasync async() {\n\t\t\t\treturn await Promise.resolve(FORM_DATA_FACTORY);\n\t\t\t},\n\t\t\tstream() {\n\t\t\t\treturn FORM_DATA_FACTORY;\n\t\t\t}\n\t\t},\n\t\tserialize() {\n\t\t\treturn FORM_DATA_FACTORY_CONSTRUCTOR.toString();\n\t\t},\n\t\tdeserialize() {\n\t\t\treturn FORM_DATA_FACTORY;\n\t\t}\n\t})],\n\ttest(value) {\n\t\tif (typeof FormData === \"undefined\") return false;\n\t\treturn value instanceof FormData;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\treturn {\n\t\t\t\tfactory: ctx.parse(FORM_DATA_FACTORY),\n\t\t\t\tentries: ctx.parse(convertFormData(value))\n\t\t\t};\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn {\n\t\t\t\tfactory: await ctx.parse(FORM_DATA_FACTORY),\n\t\t\t\tentries: await ctx.parse(convertFormData(value))\n\t\t\t};\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn {\n\t\t\t\tfactory: ctx.parse(FORM_DATA_FACTORY),\n\t\t\t\tentries: ctx.parse(convertFormData(value))\n\t\t\t};\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"(\" + ctx.serialize(node.factory) + \")(\" + ctx.serialize(node.entries) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn FORM_DATA_FACTORY_CONSTRUCTOR(ctx.deserialize(node.entries));\n\t}\n});\n//#endregion\n//#region web/headers.ts\nfunction convertHeaders(instance) {\n\tconst items = [];\n\tinstance.forEach((value, key) => {\n\t\titems.push([key, value]);\n\t});\n\treturn items;\n}\nconst HeadersPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/Headers\",\n\ttest(value) {\n\t\tif (typeof Headers === \"undefined\") return false;\n\t\treturn value instanceof Headers;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\treturn { value: ctx.parse(convertHeaders(value)) };\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn { value: await ctx.parse(convertHeaders(value)) };\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn { value: ctx.parse(convertHeaders(value)) };\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new Headers(\" + ctx.serialize(node.value) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new Headers(ctx.deserialize(node.value));\n\t}\n});\n//#endregion\n//#region web/image-data.ts\nconst ImageDataPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/ImageData\",\n\ttest(value) {\n\t\tif (typeof ImageData === \"undefined\") return false;\n\t\treturn value instanceof ImageData;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\treturn {\n\t\t\t\tdata: ctx.parse(value.data),\n\t\t\t\twidth: ctx.parse(value.width),\n\t\t\t\theight: ctx.parse(value.height),\n\t\t\t\toptions: ctx.parse({ colorSpace: value.colorSpace })\n\t\t\t};\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn {\n\t\t\t\tdata: await ctx.parse(value.data),\n\t\t\t\twidth: await ctx.parse(value.width),\n\t\t\t\theight: await ctx.parse(value.height),\n\t\t\t\toptions: await ctx.parse({ colorSpace: value.colorSpace })\n\t\t\t};\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn {\n\t\t\t\tdata: ctx.parse(value.data),\n\t\t\t\twidth: ctx.parse(value.width),\n\t\t\t\theight: ctx.parse(value.height),\n\t\t\t\toptions: ctx.parse({ colorSpace: value.colorSpace })\n\t\t\t};\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new ImageData(\" + ctx.serialize(node.data) + \",\" + ctx.serialize(node.width) + \",\" + ctx.serialize(node.height) + \",\" + ctx.serialize(node.options) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new ImageData(ctx.deserialize(node.data), expectNumber(ctx.deserialize(node.width)), expectNumber(ctx.deserialize(node.height)), ctx.deserialize(node.options));\n\t}\n});\n//#endregion\n//#region web/readable-stream.ts\nconst READABLE_STREAM_FACTORY = {};\nconst READABLE_STREAM_FACTORY_CONSTRUCTOR = (stream) => new ReadableStream({ start(controller) {\n\tstream.on({\n\t\tnext(value) {\n\t\t\ttry {\n\t\t\t\tcontroller.enqueue(value);\n\t\t\t} catch (_error) {}\n\t\t},\n\t\tthrow(value) {\n\t\t\tcontroller.error(value);\n\t\t},\n\t\treturn() {\n\t\t\ttry {\n\t\t\t\tcontroller.close();\n\t\t\t} catch (_error) {}\n\t\t}\n\t});\n} });\nconst ReadableStreamFactoryPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/ReadableStreamFactory\",\n\ttest(value) {\n\t\treturn value === READABLE_STREAM_FACTORY;\n\t},\n\tparse: {\n\t\tsync() {\n\t\t\treturn READABLE_STREAM_FACTORY;\n\t\t},\n\t\tasync async() {\n\t\t\treturn await Promise.resolve(READABLE_STREAM_FACTORY);\n\t\t},\n\t\tstream() {\n\t\t\treturn READABLE_STREAM_FACTORY;\n\t\t}\n\t},\n\tserialize() {\n\t\treturn READABLE_STREAM_FACTORY_CONSTRUCTOR.toString();\n\t},\n\tdeserialize() {\n\t\treturn READABLE_STREAM_FACTORY;\n\t}\n});\nasync function drainStream(stream, reader) {\n\ttry {\n\t\twhile (true) {\n\t\t\tconst result = await reader.read();\n\t\t\tif (result.done) {\n\t\t\t\tstream.return(result.value);\n\t\t\t\treader.releaseLock();\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tstream.next(result.value);\n\t\t}\n\t} catch (error) {\n\t\treader.releaseLock();\n\t\tstream.throw(error);\n\t}\n}\nfunction cleanupStream(reader) {\n\treader.cancel().catch(() => {});\n\treader.releaseLock();\n}\nfunction toStream(value) {\n\tconst stream = createStream();\n\tconst reader = value.getReader();\n\tconst cleanup = cleanupStream.bind(null, reader);\n\tdrainStream(stream, reader).catch(cleanup);\n\treturn [stream, cleanup];\n}\nconst ReadableStreamPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval/plugins/web/ReadableStream\",\n\textends: [ReadableStreamFactoryPlugin],\n\ttest(value) {\n\t\tif (typeof ReadableStream === \"undefined\") return false;\n\t\treturn value instanceof ReadableStream;\n\t},\n\tparse: {\n\t\tsync(_value, ctx) {\n\t\t\treturn {\n\t\t\t\tfactory: ctx.parse(READABLE_STREAM_FACTORY),\n\t\t\t\tstream: ctx.parse(createStream())\n\t\t\t};\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn {\n\t\t\t\tfactory: await ctx.parse(READABLE_STREAM_FACTORY),\n\t\t\t\tstream: await ctx.parse(toStream(value)[0])\n\t\t\t};\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\tconst [stream, cleanup] = toStream(value);\n\t\t\tctx.addCleanup(cleanup);\n\t\t\treturn {\n\t\t\t\tfactory: ctx.parse(READABLE_STREAM_FACTORY),\n\t\t\t\tstream: ctx.parse(stream)\n\t\t\t};\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"(\" + ctx.serialize(node.factory) + \")(\" + ctx.serialize(node.stream) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\tconst stream = ctx.deserialize(node.stream);\n\t\tif (!stream || typeof stream !== \"object\" || !isStream(stream)) throw new Error(\"Expected a stream source.\");\n\t\treturn READABLE_STREAM_FACTORY_CONSTRUCTOR(stream);\n\t}\n});\n//#endregion\n//#region web/request.ts\nfunction createRequestOptions(current, body) {\n\treturn {\n\t\tbody,\n\t\tcache: current.cache,\n\t\tcredentials: current.credentials,\n\t\theaders: current.headers,\n\t\tintegrity: current.integrity,\n\t\tkeepalive: current.keepalive,\n\t\tmethod: current.method,\n\t\tmode: current.mode,\n\t\tredirect: current.redirect,\n\t\treferrer: current.referrer,\n\t\treferrerPolicy: current.referrerPolicy\n\t};\n}\nconst RequestPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/Request\",\n\textends: [ReadableStreamPlugin, HeadersPlugin],\n\ttest(value) {\n\t\tif (typeof Request === \"undefined\") return false;\n\t\treturn value instanceof Request;\n\t},\n\tparse: {\n\t\tasync async(value, ctx) {\n\t\t\treturn {\n\t\t\t\turl: await ctx.parse(value.url),\n\t\t\t\toptions: await ctx.parse(createRequestOptions(value, value.body && !value.bodyUsed ? await value.clone().arrayBuffer() : null))\n\t\t\t};\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn {\n\t\t\t\turl: ctx.parse(value.url),\n\t\t\t\toptions: ctx.parse(createRequestOptions(value, value.body && !value.bodyUsed ? value.clone().body : null))\n\t\t\t};\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new Request(\" + ctx.serialize(node.url) + \",\" + ctx.serialize(node.options) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new Request(expectString(ctx.deserialize(node.url)), ctx.deserialize(node.options));\n\t}\n});\n//#endregion\n//#region web/response.ts\nfunction createResponseOptions(current) {\n\treturn {\n\t\theaders: current.headers,\n\t\tstatus: current.status,\n\t\tstatusText: current.statusText\n\t};\n}\nconst ResponsePlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/Response\",\n\textends: [ReadableStreamPlugin, HeadersPlugin],\n\ttest(value) {\n\t\tif (typeof Response === \"undefined\") return false;\n\t\treturn value instanceof Response;\n\t},\n\tparse: {\n\t\tasync async(value, ctx) {\n\t\t\treturn {\n\t\t\t\tbody: await ctx.parse(value.body && !value.bodyUsed ? await value.clone().arrayBuffer() : null),\n\t\t\t\toptions: await ctx.parse(createResponseOptions(value))\n\t\t\t};\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn {\n\t\t\t\tbody: ctx.parse(value.body && !value.bodyUsed ? value.clone().body : null),\n\t\t\t\toptions: ctx.parse(createResponseOptions(value))\n\t\t\t};\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new Response(\" + ctx.serialize(node.body) + \",\" + ctx.serialize(node.options) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new Response(ctx.deserialize(node.body), ctx.deserialize(node.options));\n\t}\n});\n//#endregion\n//#region web/url.ts\nconst URLPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/URL\",\n\ttest(value) {\n\t\tif (typeof URL === \"undefined\") return false;\n\t\treturn value instanceof URL;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\treturn { value: ctx.parse(value.href) };\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn { value: await ctx.parse(value.href) };\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn { value: ctx.parse(value.href) };\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new URL(\" + ctx.serialize(node.value) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new URL(expectString(ctx.deserialize(node.value)));\n\t}\n});\n//#endregion\n//#region web/url-search-params.ts\nconst URLSearchParamsPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"seroval-plugins/web/URLSearchParams\",\n\ttest(value) {\n\t\tif (typeof URLSearchParams === \"undefined\") return false;\n\t\treturn value instanceof URLSearchParams;\n\t},\n\tparse: {\n\t\tsync(value, ctx) {\n\t\t\treturn { value: ctx.parse(value.toString()) };\n\t\t},\n\t\tasync async(value, ctx) {\n\t\t\treturn { value: await ctx.parse(value.toString()) };\n\t\t},\n\t\tstream(value, ctx) {\n\t\t\treturn { value: ctx.parse(value.toString()) };\n\t\t}\n\t},\n\tserialize(node, ctx) {\n\t\treturn \"new URLSearchParams(\" + ctx.serialize(node.value) + \")\";\n\t},\n\tdeserialize(node, ctx) {\n\t\treturn new URLSearchParams(expectString(ctx.deserialize(node.value)));\n\t}\n});\n//#endregion\n//#region web/index.ts\nvar web_exports = /* @__PURE__ */ __exportAll({\n\tAbortSignalPlugin: () => AbortSignalPlugin,\n\tBlobPlugin: () => BlobPlugin,\n\tCustomEventPlugin: () => CustomEventPlugin,\n\tDOMExceptionPlugin: () => DOMExceptionPlugin,\n\tEventPlugin: () => EventPlugin,\n\tFilePlugin: () => FilePlugin,\n\tFormDataPlugin: () => FormDataPlugin,\n\tHeadersPlugin: () => HeadersPlugin,\n\tImageDataPlugin: () => ImageDataPlugin,\n\tReadableStreamPlugin: () => ReadableStreamPlugin,\n\tRequestPlugin: () => RequestPlugin,\n\tResponsePlugin: () => ResponsePlugin,\n\tURLPlugin: () => URLPlugin,\n\tURLSearchParamsPlugin: () => URLSearchParamsPlugin\n});\n//#endregion\nexport { RequestPlugin as a, HeadersPlugin as c, EventPlugin as d, DOMExceptionPlugin as f, AbortSignalPlugin as h, ResponsePlugin as i, FormDataPlugin as l, BlobPlugin as m, URLSearchParamsPlugin as n, ReadableStreamPlugin as o, CustomEventPlugin as p, URLPlugin as r, ImageDataPlugin as s, web_exports as t, FilePlugin as u };\n","import { ShallowErrorPlugin } from \"./ShallowErrorPlugin.js\";\nimport { RawStreamJSONDeserializePlugin, RawStreamJSONPlugin, createRawStreamJSONPlugin } from \"./RawStreamJSONPlugin.js\";\nimport { ReadableStreamPlugin } from \"seroval-plugins/web\";\n//#region src/ssr/serializer/seroval-plugins.ts\n/**\n* Plugins for JSON transport from a client: serializes RawStream arguments\n* and reads plain JSON responses, which never carry RawStream nodes.\n*/\n/* @__NO_SIDE_EFFECTS__ */\nfunction createDefaultSerovalPlugins(signal) {\n\treturn [\n\t\tShallowErrorPlugin,\n\t\tsignal ? /* @__PURE__ */ createRawStreamJSONPlugin(signal) : RawStreamJSONPlugin,\n\t\tReadableStreamPlugin\n\t];\n}\nconst defaultSerovalPlugins = /* @__PURE__ */ createDefaultSerovalPlugins();\n/**\n* `defaultSerovalPlugins` plus RawStream deserialization, for JSON that may\n* carry RawStream nodes: server-function request bodies and cached static\n* responses. Seroval deserializes by first tag match, so the deserialize half\n* precedes the serialize half; it never matches during serialization.\n*/\nconst defaultSerovalDeserializerPlugins = [RawStreamJSONDeserializePlugin, ...defaultSerovalPlugins];\n//#endregion\nexport { createDefaultSerovalPlugins, defaultSerovalDeserializerPlugins, defaultSerovalPlugins };\n\n//# sourceMappingURL=seroval-plugins.js.map","import { RawStream } from \"./RawStream.js\";\nimport { createPlugin } from \"seroval\";\n//#region src/ssr/serializer/RawStreamRPCPlugin.ts\n/**\n* Server-side RawStream plugin for multiplexed server-function responses.\n* The `hint` is ignored: framed responses always carry raw bytes.\n*/\n/* @__NO_SIDE_EFFECTS__ */\nfunction createRawStreamRPCPlugin(onRawStream) {\n\tlet nextStreamId = 1;\n\treturn /* @__PURE__ */ createPlugin({\n\t\ttag: \"tss/RawStream\",\n\t\ttest(value) {\n\t\t\treturn value instanceof RawStream;\n\t\t},\n\t\tparse: { stream(value, ctx) {\n\t\t\tconst streamId = nextStreamId++;\n\t\t\tonRawStream(streamId, value.stream);\n\t\t\treturn { streamId: ctx.parse(streamId) };\n\t\t} },\n\t\tserialize: void 0,\n\t\tdeserialize: void 0\n\t});\n}\n/** Client-side RawStream plugin for multiplexed server-function responses. */\n/* @__NO_SIDE_EFFECTS__ */\nfunction createRawStreamDeserializePlugin(getStream) {\n\treturn /* @__PURE__ */ createPlugin({\n\t\ttag: \"tss/RawStream\",\n\t\ttest: () => false,\n\t\tparse: {},\n\t\tserialize: void 0,\n\t\tdeserialize(node, ctx) {\n\t\t\treturn getStream(ctx.deserialize(node.streamId));\n\t\t}\n\t});\n}\n//#endregion\nexport { createRawStreamDeserializePlugin, createRawStreamRPCPlugin };\n\n//# sourceMappingURL=RawStreamRPCPlugin.js.map","//#region src/ssr/constants.ts\nconst GLOBAL_TSR = \"$_TSR\";\n//#endregion\nexport { GLOBAL_TSR };\n\n//# sourceMappingURL=constants.js.map","import { GLOBAL_TSR } from \"../constants.js\";\nimport { createPlugin } from \"seroval\";\n//#region src/ssr/serializer/makeSsrSerovalPlugin.ts\n/**\n* Create a Seroval plugin for server-side serialization only. `tracker.didRun`\n* becomes true once the plugin serialized a value.\n*/\n/* @__NO_SIDE_EFFECTS__ */\nfunction makeSsrSerovalPlugin(serializationAdapter, tracker) {\n\treturn /* @__PURE__ */ createPlugin({\n\t\ttag: \"$TSR/t/\" + serializationAdapter.key,\n\t\ttest: serializationAdapter.test,\n\t\tparse: { stream(value, ctx) {\n\t\t\treturn { v: ctx.parse(serializationAdapter.toSerializable(value)) };\n\t\t} },\n\t\tserialize(node, ctx) {\n\t\t\tif (tracker) tracker.didRun = true;\n\t\t\treturn GLOBAL_TSR + \".t.get(\\\"\" + serializationAdapter.key + \"\\\")(\" + ctx.serialize(node.v) + \")\";\n\t\t},\n\t\tdeserialize: void 0\n\t});\n}\n//#endregion\nexport { makeSsrSerovalPlugin };\n\n//# sourceMappingURL=makeSsrSerovalPlugin.js.map","//#region src/ssr/tsrScript.ts?script-string\nvar tsrScript_default = \"self.$_TSR={h(){this.hydrated=!0,this.c()},e(){this.streamEnded=!0,this.c()},c(){this.hydrated&&this.streamEnded&&(delete self.$_TSR,delete self.$R.tsr)},p(e){this.initialized?e():this.buffer.push(e)},buffer:[]}\";\n//#endregion\nexport { tsrScript_default as default };\n\n//# sourceMappingURL=tsrScript.js.map","//#region src/ssr/htmlBoundaryScanner.ts\nconst textEncoder = new TextEncoder();\nconst DOCUMENT_CLOSE = \"</body></html>\";\nconst SCRIPT_CLOSE = \"<\\/script>\";\nconst DOCUMENT_CLOSE_ANCHOR_INDEX = DOCUMENT_CLOSE.indexOf(\"y\");\nconst SCRIPT_CLOSE_ANCHOR_INDEX = SCRIPT_CLOSE.indexOf(\"p\");\nconst DOCUMENT_CLOSE_BYTES = textEncoder.encode(DOCUMENT_CLOSE);\nconst SCRIPT_CLOSE_BYTES = textEncoder.encode(SCRIPT_CLOSE);\nfunction encodeIntoBoundedChunk(source, sourceOffset, output, outputOffset = 0) {\n\treturn textEncoder.encodeInto(sourceOffset === 0 ? source : source.slice(sourceOffset), outputOffset === 0 ? output : output.subarray(outputOffset));\n}\n/** Advance matcher state and return the local offset after a complete match. */\nfunction advanceByteMatcher(matcher, value, startIndex = 0, findLast = false) {\n\tconst { pattern, anchorIndex } = matcher;\n\tlet matched = matcher.matched;\n\tlet lastMatchEnd;\n\tlet index = startIndex;\n\twhile (index < value.length) {\n\t\tif (matched === 0) if (anchorIndex > 0 && index < value.length - anchorIndex) {\n\t\t\tconst anchor = value.indexOf(pattern[anchorIndex], index + anchorIndex);\n\t\t\tif (anchor < 0) {\n\t\t\t\tindex = value.length - anchorIndex;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tindex = anchor - anchorIndex;\n\t\t} else {\n\t\t\tindex = value.indexOf(pattern[0], index);\n\t\t\tif (index < 0) {\n\t\t\t\tmatcher.matched = matched;\n\t\t\t\treturn lastMatchEnd;\n\t\t\t}\n\t\t}\n\t\tconst byte = value[index];\n\t\tif (byte === pattern[matched]) matched++;\n\t\telse matched = byte === pattern[0] ? 1 : 0;\n\t\tindex++;\n\t\tif (matched === pattern.length) {\n\t\t\tmatched = 0;\n\t\t\tif (!findLast) {\n\t\t\t\tmatcher.matched = matched;\n\t\t\t\treturn index;\n\t\t\t}\n\t\t\tlastMatchEnd = index;\n\t\t}\n\t}\n\tmatcher.matched = matched;\n\treturn lastMatchEnd;\n}\n/** Find a complete fixed sequence that is contained in one byte chunk. */\nfunction findExactBytes(value, pattern, startIndex = 0, anchorIndex = 0) {\n\tlet anchor = value.indexOf(pattern[anchorIndex], startIndex + anchorIndex);\n\twhile (anchor >= 0) {\n\t\tconst candidate = anchor - anchorIndex;\n\t\tif (candidate + pattern.length > value.length) return -1;\n\t\tlet patternIndex = 0;\n\t\twhile (patternIndex < pattern.length && value[candidate + patternIndex] === pattern[patternIndex]) patternIndex++;\n\t\tif (patternIndex === pattern.length) return candidate;\n\t\tanchor = value.indexOf(pattern[anchorIndex], anchor + 1);\n\t}\n\treturn -1;\n}\n/**\n* Find the longest suffix that can become the fixed sequence in the next\n* chunk. The returned index starts that suffix.\n*/\nfunction getExactBytesPrefixAtEnd(value, pattern, startIndex = 0) {\n\tcandidate: for (let length = Math.min(pattern.length - 1, value.length - startIndex); length > 0; length--) {\n\t\tconst candidateStart = value.length - length;\n\t\tfor (let index = 0; index < length; index++) if (value[candidateStart + index] !== pattern[index]) continue candidate;\n\t\treturn candidateStart;\n\t}\n}\n//#endregion\nexport { DOCUMENT_CLOSE_ANCHOR_INDEX, DOCUMENT_CLOSE_BYTES, SCRIPT_CLOSE_ANCHOR_INDEX, SCRIPT_CLOSE_BYTES, advanceByteMatcher, encodeIntoBoundedChunk, findExactBytes, getExactBytesPrefixAtEnd };\n\n//# sourceMappingURL=htmlBoundaryScanner.js.map","import { invariant } from \"../invariant.js\";\nimport tsrScript_default from \"./tsrScript.js\";\nimport { GLOBAL_TSR } from \"./constants.js\";\nimport { encodeIntoBoundedChunk } from \"./htmlBoundaryScanner.js\";\nimport { getCrossReferenceHeader } from \"seroval\";\nconst encoder = new TextEncoder();\nconst SOURCE_SEPARATOR = \";\";\nconst MAX_INITIAL_SOURCE_CODE_UNITS = 16 * 1024;\nconst MAX_BACKLOG_CODE_UNITS = 16 * 1024 * 1024;\nconst MAX_BACKLOG_SOURCES = 4096;\nconst MIN_OUTPUT_BYTES = 256;\nconst MAX_DIRECT_CODE_UNITS = 16 * 1024;\nconst MAX_HYDRATION_OUTPUT_CHUNK_BYTES = 64 * 1024;\nconst MAX_DYNAMIC_RECORD_CODE_UNITS = MAX_HYDRATION_OUTPUT_CHUNK_BYTES;\nconst STREAM_PART_ATTRIBUTE = \"data-tsr-stream-part\";\nconst INITIAL_CLEANUP_SOURCE = `{let s=document.currentScript,p;while((p=s.previousElementSibling)&&p.hasAttribute('${STREAM_PART_ATTRIBUTE}'))p.remove();s.remove()}`;\nconst INITIAL_CLEANUP_SUFFIX = SOURCE_SEPARATOR + INITIAL_CLEANUP_SOURCE;\nconst DYNAMIC_CLOSE_SOURCE = \"document.currentScript.remove()<\\/script>\";\nconst HYDRATION_SCRIPT_BOUNDARY_SOURCE = \"document.currentScript.remove();/*$tsr-stream-boundary*/\";\nconst HYDRATION_SCRIPT_BOUNDARY_SUFFIX = \";/*$tsr-stream-boundary*/<\\/script>\";\nconst HYDRATION_SCRIPT_BOUNDARY_ANCHOR_INDEX = HYDRATION_SCRIPT_BOUNDARY_SUFFIX.lastIndexOf(\"*\");\nconst HYDRATION_SCRIPT_BOUNDARY_BYTES = encoder.encode(HYDRATION_SCRIPT_BOUNDARY_SUFFIX);\nconst ROUTER_PREFIX = GLOBAL_TSR + \".router=\";\nconst PROMISE_PREFIX = GLOBAL_TSR + \".p(()=>\";\nconst DEFAULT_INITIAL_SOURCES = [getCrossReferenceHeader(\"tsr\"), tsrScript_default];\nconst HydrationScriptOutputState = {\n\tWaiting: 0,\n\tReady: 1,\n\tActive: 2,\n\tDone: 3,\n\tFailed: 4\n};\nfunction escapeAttribute(value) {\n\treturn value.replace(/[&\"'<>]/g, (char) => `&#${char.charCodeAt(0)};`);\n}\nfunction createInitialTags(sources, nonce) {\n\tconst before = [];\n\tfor (const source of sources) {\n\t\tif (!source) continue;\n\t\tconst previous = before[before.length - 1];\n\t\tif (previous?.children && previous.children.length + 1 + source.length <= MAX_INITIAL_SOURCE_CODE_UNITS) previous.children += SOURCE_SEPARATOR + source;\n\t\telse before.push({\n\t\t\ttag: \"script\",\n\t\t\tattrs: {\n\t\t\t\tnonce,\n\t\t\t\t[STREAM_PART_ATTRIBUTE]: \"\"\n\t\t\t},\n\t\t\tchildren: source\n\t\t});\n\t}\n\tconst lastHydrationTag = before[before.length - 1];\n\tif (lastHydrationTag) {\n\t\tconst lastSource = lastHydrationTag.children;\n\t\tif (lastSource.length + INITIAL_CLEANUP_SUFFIX.length <= MAX_INITIAL_SOURCE_CODE_UNITS) lastHydrationTag.children = lastSource + INITIAL_CLEANUP_SUFFIX;\n\t\telse before.push({\n\t\t\ttag: \"script\",\n\t\t\tattrs: {\n\t\t\t\tnonce,\n\t\t\t\t[STREAM_PART_ATTRIBUTE]: \"\"\n\t\t\t},\n\t\t\tchildren: INITIAL_CLEANUP_SOURCE\n\t\t});\n\t}\n\treturn {\n\t\tbefore,\n\t\tboundary: {\n\t\t\ttag: \"script\",\n\t\t\tattrs: { nonce },\n\t\t\tchildren: HYDRATION_SCRIPT_BOUNDARY_SOURCE\n\t\t}\n\t};\n}\nvar HydrationScriptsOwner = class {\n\tconstructor(nonce, initialSources) {\n\t\tthis.nonce = nonce;\n\t\tthis.queuedSources = [];\n\t\tthis.queuedSourceHead = 0;\n\t\tthis.initialTaken = false;\n\t\tthis.barrierLifted = false;\n\t\tthis.producerDone = false;\n\t\tthis.retainedSources = 0;\n\t\tthis.regularCodeUnits = 0;\n\t\tthis.hasOversizedSource = false;\n\t\tthis.segmentIndex = 0;\n\t\tthis.closingSegmentIndex = 0;\n\t\tthis.source = \"\";\n\t\tthis.sourceOffset = 0;\n\t\tthis.outputCapacity = MIN_OUTPUT_BYTES;\n\t\tthis.outputState = HydrationScriptOutputState.Waiting;\n\t\tthis.takeInitialHydrationScriptTags = this.takeInitialHydrationScriptTags.bind(this);\n\t\tconst seedSources = initialSources ?? DEFAULT_INITIAL_SOURCES;\n\t\tfor (const seedSource of seedSources) {\n\t\t\tif (!this.account(seedSource)) break;\n\t\t\tthis.queuedSources.push(seedSource);\n\t\t}\n\t}\n\tget state() {\n\t\treturn this.outputState;\n\t}\n\tget error() {\n\t\treturn this.outputError;\n\t}\n\tnotify() {\n\t\ttry {\n\t\t\tthis.listener?.();\n\t\t} catch (listenerError) {\n\t\t\tconsole.error(\"Hydration script output listener error:\", listenerError);\n\t\t}\n\t}\n\trefresh(notifyChange = true) {\n\t\tconst next = this.outputState === HydrationScriptOutputState.Failed ? HydrationScriptOutputState.Failed : this.active ? HydrationScriptOutputState.Active : typeof this.consumer === \"object\" && this.initialTaken && this.barrierLifted && !this.queueIsEmpty() ? HydrationScriptOutputState.Ready : this.producerDone && this.initialTaken && this.queueIsEmpty() ? HydrationScriptOutputState.Done : HydrationScriptOutputState.Waiting;\n\t\tif (this.outputState !== next) {\n\t\t\tthis.outputState = next;\n\t\t\tif (notifyChange) this.notify();\n\t\t}\n\t}\n\tclearTimeoutIfSet() {\n\t\tif (this.timeout !== void 0) {\n\t\t\tclearTimeout(this.timeout);\n\t\t\tthis.timeout = void 0;\n\t\t}\n\t}\n\tqueueIsEmpty() {\n\t\treturn this.queuedSourceHead === this.queuedSources.length;\n\t}\n\tclearQueue() {\n\t\tthis.queuedSources = [];\n\t\tthis.queuedSourceHead = 0;\n\t}\n\tdropBufferedOutput() {\n\t\tthis.clearQueue();\n\t\tthis.active = void 0;\n\t\tthis.retainedSources = 0;\n\t\tthis.regularCodeUnits = 0;\n\t\tthis.hasOversizedSource = false;\n\t\tthis.segmentIndex = 0;\n\t\tthis.closingSegmentIndex = 0;\n\t\tthis.source = \"\";\n\t\tthis.sourceOffset = 0;\n\t\tthis.outputCapacity = MIN_OUTPUT_BYTES;\n\t\tthis.opening = void 0;\n\t}\n\tfail(reason) {\n\t\tif (this.consumer === \"cleaned\" || this.outputState === HydrationScriptOutputState.Failed) return;\n\t\tthis.outputError = reason;\n\t\tthis.clearTimeoutIfSet();\n\t\tthis.dropBufferedOutput();\n\t\tthis.outputState = HydrationScriptOutputState.Failed;\n\t\tthis.notify();\n\t}\n\trejectBacklog(kind) {\n\t\tthis.fail(/* @__PURE__ */ new Error(`SSR hydration backlog exceeded maximum ${kind} count`));\n\t\treturn false;\n\t}\n\taccount(nextSource) {\n\t\tif (this.retainedSources === MAX_BACKLOG_SOURCES) return this.rejectBacklog(\"source-part\");\n\t\tif (nextSource.length > MAX_BACKLOG_CODE_UNITS) {\n\t\t\tif (this.hasOversizedSource) return this.rejectBacklog(\"code-unit\");\n\t\t\tthis.hasOversizedSource = true;\n\t\t} else if (this.regularCodeUnits + nextSource.length > MAX_BACKLOG_CODE_UNITS) return this.rejectBacklog(\"code-unit\");\n\t\telse this.regularCodeUnits += nextSource.length;\n\t\tthis.retainedSources++;\n\t\treturn true;\n\t}\n\treleaseSource(part) {\n\t\tthis.retainedSources--;\n\t\tif (part.length > MAX_BACKLOG_CODE_UNITS) this.hasOversizedSource = false;\n\t\telse this.regularCodeUnits -= part.length;\n\t}\n\treleaseAccounting(batch) {\n\t\tfor (const part of batch) if (part !== void 0) this.releaseSource(part);\n\t}\n\tliftBarrier() {\n\t\tif (this.consumer !== \"cleaned\" && !this.barrierLifted) {\n\t\t\tthis.barrierLifted = true;\n\t\t\tthis.refresh();\n\t\t}\n\t}\n\tproducerCanWrite() {\n\t\treturn this.consumer !== \"cleaned\" && this.outputState !== HydrationScriptOutputState.Failed && !this.producerDone;\n\t}\n\tpushSource(nextSource) {\n\t\tif (!this.producerCanWrite()) return false;\n\t\tif (this.account(nextSource)) {\n\t\t\tthis.queuedSources.push(nextSource);\n\t\t\tif (this.initialTaken) this.refresh();\n\t\t} else return false;\n\t\treturn this.producerCanWrite();\n\t}\n\ttakeQueuedBatch(batchLength) {\n\t\tif (this.queuedSourceHead === 0 && batchLength === this.queuedSources.length) {\n\t\t\tconst batch = this.queuedSources;\n\t\t\tthis.clearQueue();\n\t\t\treturn batch;\n\t\t}\n\t\tconst end = this.queuedSourceHead + batchLength;\n\t\tconst batch = this.queuedSources.slice(this.queuedSourceHead, end);\n\t\tfor (let index = this.queuedSourceHead; index < end; index++) this.queuedSources[index] = void 0;\n\t\tthis.queuedSourceHead = end;\n\t\tif (this.queueIsEmpty()) this.clearQueue();\n\t\telse if (this.queuedSourceHead >= 1024 && this.queuedSourceHead >= this.queuedSources.length - this.queuedSourceHead) {\n\t\t\tthis.queuedSources = this.queuedSources.slice(this.queuedSourceHead);\n\t\t\tthis.queuedSourceHead = 0;\n\t\t}\n\t\treturn batch;\n\t}\n\trelease(batch) {\n\t\tthis.releaseAccounting(batch);\n\t\tthis.active = void 0;\n\t\tthis.source = \"\";\n\t\tthis.sourceOffset = 0;\n\t\tthis.refresh(false);\n\t}\n\tadvanceSource() {\n\t\tconst batch = this.active;\n\t\tif (this.segmentIndex > 0 && this.segmentIndex < this.closingSegmentIndex) {\n\t\t\tconst partIndex = this.segmentIndex - 1 >> 1;\n\t\t\tif (this.segmentIndex % 2 === 1) {\n\t\t\t\tconst part = batch[partIndex];\n\t\t\t\tif (part !== void 0) {\n\t\t\t\t\tthis.releaseSource(part);\n\t\t\t\t\tbatch[partIndex] = void 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tthis.segmentIndex++;\n\t\tif (this.segmentIndex < this.closingSegmentIndex) {\n\t\t\tconst partIndex = this.segmentIndex - 1 >> 1;\n\t\t\tthis.source = this.segmentIndex % 2 === 1 ? batch[partIndex] : SOURCE_SEPARATOR;\n\t\t} else if (this.segmentIndex === this.closingSegmentIndex) this.source = DYNAMIC_CLOSE_SOURCE;\n\t\telse this.release(batch);\n\t\tthis.sourceOffset = 0;\n\t}\n\tpullActive() {\n\t\tconst bytes = new Uint8Array(this.outputCapacity);\n\t\tlet offset = 0;\n\t\twhile (this.active) if (this.sourceOffset === this.source.length) this.advanceSource();\n\t\telse if (offset === bytes.length) break;\n\t\telse {\n\t\t\tconst result = encodeIntoBoundedChunk(this.source, this.sourceOffset, bytes, offset);\n\t\t\tif (result.read === 0) break;\n\t\t\tthis.sourceOffset += result.read;\n\t\t\toffset += result.written;\n\t\t}\n\t\tif (offset === 0) throw new Error(\"SSR router script record produced no output\");\n\t\tif (offset === bytes.length) return bytes;\n\t\treturn offset * 2 < bytes.length ? bytes.slice(0, offset) : bytes.subarray(0, offset);\n\t}\n\tpullReady() {\n\t\tconst scriptOpening = this.opening ??= this.nonce ? `<script nonce=\"${escapeAttribute(this.nonce)}\">` : \"<script>\";\n\t\tlet codeUnits = scriptOpening.length + 40;\n\t\tlet batchLength = 0;\n\t\tfor (let index = this.queuedSourceHead; index < this.queuedSources.length; index++) {\n\t\t\tconst part = this.queuedSources[index];\n\t\t\tconst nextCodeUnits = codeUnits + 1 + part.length;\n\t\t\tif (batchLength > 0 && nextCodeUnits > MAX_DYNAMIC_RECORD_CODE_UNITS) break;\n\t\t\tcodeUnits = nextCodeUnits;\n\t\t\tbatchLength++;\n\t\t\tif (codeUnits > MAX_DYNAMIC_RECORD_CODE_UNITS) break;\n\t\t}\n\t\tconst batch = this.takeQueuedBatch(batchLength);\n\t\tif (codeUnits <= MAX_DIRECT_CODE_UNITS) {\n\t\t\tconst joined = batch.length === 1 ? batch[0] : batch.join(SOURCE_SEPARATOR);\n\t\t\tconst bytes = encoder.encode(scriptOpening + joined + \";document.currentScript.remove()<\\/script>\");\n\t\t\tthis.release(batch);\n\t\t\treturn bytes;\n\t\t}\n\t\tthis.active = batch;\n\t\tthis.segmentIndex = 0;\n\t\tthis.closingSegmentIndex = (batch.length << 1) + 1;\n\t\tthis.source = scriptOpening;\n\t\tthis.sourceOffset = 0;\n\t\tthis.outputCapacity = Math.max(MIN_OUTPUT_BYTES, Math.min(MAX_HYDRATION_OUTPUT_CHUNK_BYTES, codeUnits));\n\t\tthis.outputState = HydrationScriptOutputState.Active;\n\t\treturn this.pullActive();\n\t}\n\tpullChunk() {\n\t\tif (this.outputState !== HydrationScriptOutputState.Ready && this.outputState !== HydrationScriptOutputState.Active) throw new Error(\"Hydration script output is not ready\");\n\t\ttry {\n\t\t\treturn this.outputState === HydrationScriptOutputState.Ready ? this.pullReady() : this.pullActive();\n\t\t} catch (cause) {\n\t\t\tthis.fail(cause);\n\t\t\tthrow cause;\n\t\t}\n\t}\n\tsubscribe(onChange) {\n\t\tif (this.consumer === \"cleaned\") return () => {};\n\t\tif (this.listener) throw new Error(\"SSR hydration output already has a subscriber\");\n\t\tthis.listener = onChange;\n\t\treturn () => {\n\t\t\tif (this.listener === onChange) this.listener = void 0;\n\t\t};\n\t}\n\tpushSerializedSource(data, initial, wrap) {\n\t\tlet serialized = initial ? ROUTER_PREFIX + data : data;\n\t\tif (wrap) serialized = PROMISE_PREFIX + serialized + \")\";\n\t\treturn this.pushSource(serialized);\n\t}\n\tfinish() {\n\t\tif (!this.pushSource(\"$_TSR.e()\")) return;\n\t\tthis.producerDone = true;\n\t\tthis.clearTimeoutIfSet();\n\t\tthis.refresh();\n\t}\n\ttakeInitialHydrationScriptTags() {\n\t\tif (this.consumer === \"cleaned\" || this.outputState === HydrationScriptOutputState.Failed || this.initialTaken) return;\n\t\tconst sources = this.queuedSources;\n\t\tconst tags = createInitialTags(sources, this.nonce);\n\t\tthis.initialTaken = true;\n\t\tthis.releaseAccounting(sources);\n\t\tsources.length = 0;\n\t\tthis.queuedSourceHead = 0;\n\t\tthis.refresh();\n\t\treturn tags;\n\t}\n\t/**\n\t* Opt this request out of hydration output entirely (for example a\n\t* `hydrate: false` page). Drops the queued bootstrap sources, marks the\n\t* producer done, and makes the fast pass-through path reservable without\n\t* a rendered `<Scripts>` boundary. Must run before the initial take and\n\t* before serialization produces output.\n\t*/\n\tdisableHydration() {\n\t\tif (this.consumer === \"cleaned\" || this.outputState === HydrationScriptOutputState.Failed) return;\n\t\tif (this.initialTaken || this.consumer !== void 0 || this.producerDone) {\n\t\t\tif (process.env.NODE_ENV !== \"production\") throw new Error(\"Invariant failed: hydration output is already committed; disableHydration() must run before <Scripts> renders and before serialization starts.\");\n\t\t\tinvariant();\n\t\t}\n\t\tthis.releaseAccounting(this.queuedSources);\n\t\tthis.clearQueue();\n\t\tthis.initialTaken = true;\n\t\tthis.barrierLifted = true;\n\t\tthis.producerDone = true;\n\t\tthis.refresh();\n\t}\n\tisInitialTaken() {\n\t\treturn this.initialTaken;\n\t}\n\tskipInitialTake() {\n\t\tif (this.consumer !== \"cleaned\" && !this.initialTaken) {\n\t\t\tthis.initialTaken = true;\n\t\t\tthis.refresh();\n\t\t}\n\t}\n\tclaimOutput() {\n\t\tif (this.consumer === \"cleaned\") throw new Error(\"SSR hydration script output is already cleaned up\");\n\t\tif (this.consumer !== void 0) throw new Error(\"SSR hydration script output already has a consumer\");\n\t\tthis.consumer = this;\n\t\tthis.refresh(false);\n\t\treturn this;\n\t}\n\treserveFastPath(output) {\n\t\tconst ownsConsumer = this.consumer === output;\n\t\tif (this.outputState === HydrationScriptOutputState.Failed || !this.producerDone || !this.initialTaken || !this.queueIsEmpty() || this.active || !ownsConsumer) return false;\n\t\tthis.consumer = \"fast-path\";\n\t\treturn true;\n\t}\n\tstartSerializationTimeout(timeoutMs) {\n\t\tif (this.consumer === \"cleaned\" || this.outputState === HydrationScriptOutputState.Failed || this.producerDone || this.timeout !== void 0) return;\n\t\tthis.timeout = setTimeout(() => {\n\t\t\tthis.timeout = void 0;\n\t\t\tif (this.consumer !== \"cleaned\" && this.outputState !== HydrationScriptOutputState.Failed && !this.producerDone) {\n\t\t\t\tconsole.error(\"Serialization timeout after app render finished\");\n\t\t\t\tthis.fail(/* @__PURE__ */ new Error(\"Serialization timeout after app render finished\"));\n\t\t\t}\n\t\t}, timeoutMs);\n\t}\n\tcleanup() {\n\t\tif (this.consumer === \"cleaned\") return;\n\t\tthis.consumer = \"cleaned\";\n\t\tthis.clearTimeoutIfSet();\n\t\tthis.dropBufferedOutput();\n\t\tthis.listener = void 0;\n\t\tthis.outputError = void 0;\n\t\tthis.producerDone = true;\n\t\tthis.outputState = HydrationScriptOutputState.Done;\n\t}\n};\n/** Create the hydration-script owner for one server request. */\nfunction createHydrationScripts(nonce, initialSources) {\n\treturn new HydrationScriptsOwner(nonce, initialSources);\n}\n//#endregion\nexport { HYDRATION_SCRIPT_BOUNDARY_ANCHOR_INDEX, HYDRATION_SCRIPT_BOUNDARY_BYTES, HydrationScriptOutputState, createHydrationScripts };\n\n//# sourceMappingURL=hydrationScripts.js.map","import { RawStream } from \"./RawStream.js\";\nimport { encodeText, pumpEncodedStream, toBase64 } from \"./rawStreamCodec.js\";\nimport { createPlugin } from \"seroval\";\n//#region src/ssr/serializer/RawStreamSSRPlugin.ts\nconst nodeBuffer = globalThis.Buffer;\nconst toBase64Fast = nodeBuffer ? (bytes) => nodeBuffer.from(bytes.buffer, bytes.byteOffset, bytes.byteLength).toString(\"base64\") : toBase64;\nconst BINARY_FACTORY = () => {};\nconst TEXT_FACTORY = () => {};\nconst FACTORY_BINARY = `((s,u=1)=>new ReadableStream({start(c,f){f=s.on({next(b){const d=atob(b),a=new Uint8Array(d.length);for(let i=0;i<d.length;i++)a[i]=d.charCodeAt(i);c.enqueue(a)},throw(e){s=u=0;c.error(e)},return(){s=u=0;c.close()}});u=u&&f},cancel(){u&&u()}}))`;\nconst FACTORY_TEXT = `((s,u=1,e=new TextEncoder)=>new ReadableStream({start(c,f){f=s.on({next(v){const x=v.slice(1);if(v[0]==='t')c.enqueue(e.encode(x));else{const d=atob(x),a=new Uint8Array(d.length);for(let i=0;i<d.length;i++)a[i]=d.charCodeAt(i);c.enqueue(a)}},throw(x){s=u=0;c.error(x)},return(){s=u=0;c.close()}});u=u&&f},cancel(){u&&u()}}))`;\nfunction makeFactoryPlugin(tag, sentinel, source) {\n\treturn createPlugin({\n\t\ttag,\n\t\ttest(value) {\n\t\t\treturn value === sentinel;\n\t\t},\n\t\tparse: { stream() {\n\t\t\treturn {};\n\t\t} },\n\t\tserialize() {\n\t\t\treturn source;\n\t\t},\n\t\tdeserialize: void 0\n\t});\n}\n/** SSR-only RawStream plugin for streaming JavaScript into HTML. */\nconst RawStreamSSRPlugin = /* @__PURE__ */ createPlugin({\n\ttag: \"tss/RawStream\",\n\textends: [/* @__PURE__ */ makeFactoryPlugin(\"tss/RawStreamFactory\", BINARY_FACTORY, FACTORY_BINARY), /* @__PURE__ */ makeFactoryPlugin(\"tss/RawStreamFactoryText\", TEXT_FACTORY, FACTORY_TEXT)],\n\ttest(value) {\n\t\treturn value instanceof RawStream;\n\t},\n\tparse: { stream(value, ctx) {\n\t\tconst text = value.hint === \"text\";\n\t\tconst factory = ctx.parse(text ? TEXT_FACTORY : BINARY_FACTORY);\n\t\tconst [stream, stop] = pumpEncodedStream(value.stream, text ? encodeText : toBase64Fast);\n\t\tctx.addCleanup(stop);\n\t\treturn {\n\t\t\tfactory,\n\t\t\tstream: ctx.parse(stream)\n\t\t};\n\t} },\n\tserialize(node, ctx) {\n\t\treturn \"(\" + ctx.serialize(node.factory) + \")(\" + ctx.serialize(node.stream) + \")\";\n\t},\n\tdeserialize: void 0\n});\n//#endregion\nexport { RawStreamSSRPlugin };\n\n//# sourceMappingURL=RawStreamSSRPlugin.js.map","import { ShallowErrorPlugin } from \"./ShallowErrorPlugin.js\";\nimport { RawStreamSSRPlugin } from \"./RawStreamSSRPlugin.js\";\nimport { ReadableStreamPlugin } from \"seroval-plugins/web\";\n//#region src/ssr/serializer/seroval-plugins.ssr.ts\n/** Server-only plugins for streaming hydration data into HTML. */\nconst ssrSerovalPlugins = [\n\tShallowErrorPlugin,\n\tRawStreamSSRPlugin,\n\tReadableStreamPlugin\n];\n//#endregion\nexport { ssrSerovalPlugins };\n\n//# sourceMappingURL=seroval-plugins.ssr.js.map","import { decodePath } from \"../utils.js\";\nimport { invariant } from \"../invariant.js\";\nimport { createSieveCache } from \"../sieve-cache.js\";\nimport { rootRouteId } from \"../root.js\";\nimport { dehydrateSsrMatchId } from \"./ssr-match-id.js\";\nimport { _getRenderedMatches } from \"../load-client.js\";\nimport { createInlineCssPlaceholderAsset, createInlineCssStyleAsset, getStylesheetHref } from \"../manifest.js\";\nimport { waitForReason } from \"../await-signal.js\";\nimport { createHydrationScripts } from \"./hydrationScripts.js\";\nimport { ssrSerovalPlugins } from \"./serializer/seroval-plugins.ssr.js\";\nimport { makeSsrSerovalPlugin } from \"./serializer/makeSsrSerovalPlugin.js\";\nimport { crossSerializeStream } from \"seroval\";\n//#region src/ssr/ssr-server.ts\nfunction dehydrateMatch(match) {\n\tconst dehydratedMatch = {\n\t\ti: dehydrateSsrMatchId(match.id),\n\t\tu: match.updatedAt,\n\t\ts: match.status\n\t};\n\tfor (const [key, shorthand] of [\n\t\t[\"__beforeLoadContext\", \"b\"],\n\t\t[\"loaderData\", \"l\"],\n\t\t[\"error\", \"e\"],\n\t\t[\"ssr\", \"ssr\"]\n\t]) if (match[key] !== void 0) dehydratedMatch[shorthand] = match[key];\n\tif (match._notFound) dehydratedMatch.g = true;\n\treturn dehydratedMatch;\n}\nfunction disposeSerializationSafely(dispose) {\n\ttry {\n\t\tdispose?.();\n\t} catch (err) {\n\t\tconsole.error(\"Error disposing SSR serialization:\", err);\n\t}\n}\nfunction notifyAndClearListeners(listeners, errorMessage, arg) {\n\tconst pending = listeners.slice();\n\tlisteners.length = 0;\n\tfor (const listener of pending) try {\n\t\tlistener(arg);\n\t} catch (error) {\n\t\tconsole.error(errorMessage, error);\n\t}\n}\nconst isProd = process.env.NODE_ENV === \"production\";\nconst MANIFEST_CACHE_SIZE = 100;\nconst manifestCaches = /* @__PURE__ */ new WeakMap();\nfunction getManifestCache(manifest) {\n\tconst cache = manifestCaches.get(manifest);\n\tif (cache) return cache;\n\tconst newCache = createSieveCache(MANIFEST_CACHE_SIZE);\n\tmanifestCaches.set(manifest, newCache);\n\treturn newCache;\n}\nfunction getInlineCssForPreparedRoutes(manifest, preparedRoutes) {\n\tconst styles = manifest.inlineCss?.styles;\n\tconst hrefs = preparedRoutes.inlineCssHrefs;\n\tif (!styles || !hrefs?.length) return;\n\tlet css = \"\";\n\tfor (const href of hrefs) css += styles[href];\n\treturn css;\n}\nfunction getInlineCssAssetForPreparedRoutes(manifest, preparedRoutes) {\n\tconst css = getInlineCssForPreparedRoutes(manifest, preparedRoutes);\n\treturn css === void 0 ? void 0 : createInlineCssStyleAsset(css);\n}\nfunction getMatchedRoutesCacheKey(matches) {\n\tlet cacheKey = \"\";\n\tfor (let i = 0; i < matches.length; i++) cacheKey += (i === 0 ? \"\" : \"\\0\") + matches[i].routeId;\n\treturn cacheKey;\n}\nfunction getPreparedMatchedManifestRoutes(manifest, matches, cacheKey) {\n\tif (isProd) {\n\t\tconst cached = getManifestCache(manifest).get(cacheKey);\n\t\tif (cached) return cached;\n\t}\n\tconst preparedRoutes = prepareMatchedManifestRoutes(manifest, matches);\n\tif (isProd) getManifestCache(manifest).set(cacheKey, preparedRoutes);\n\treturn preparedRoutes;\n}\nfunction prepareMatchedManifestRoutes(manifest, matches) {\n\tconst inlineStyles = manifest.inlineCss?.styles;\n\tconst routes = {};\n\tif (!inlineStyles) {\n\t\tfor (const match of matches) {\n\t\t\tconst route = manifest.routes[match.routeId];\n\t\t\tif (route) routes[match.routeId] = route;\n\t\t}\n\t\treturn {\n\t\t\troutes,\n\t\t\thasStrippedRoutes: false\n\t\t};\n\t}\n\tconst inlineCssHrefs = [];\n\tconst seenInlineCssHrefs = /* @__PURE__ */ new Set();\n\tlet hasStrippedRoutes = false;\n\tfor (const match of matches) {\n\t\tconst routeId = match.routeId;\n\t\tconst route = manifest.routes[routeId];\n\t\tif (!route) continue;\n\t\tconst nextRoute = stripInlinedStylesheetAssetsFromRoute(inlineStyles, route, inlineCssHrefs, seenInlineCssHrefs);\n\t\tif (nextRoute !== route) hasStrippedRoutes = true;\n\t\troutes[routeId] = nextRoute;\n\t}\n\treturn {\n\t\troutes,\n\t\thasStrippedRoutes,\n\t\t...inlineCssHrefs.length ? { inlineCssHrefs } : {}\n\t};\n}\nfunction stripInlinedStylesheetAssetsFromRoute(inlineStyles, route, inlineCssHrefs, seenInlineCssHrefs) {\n\tconst css = route.css;\n\tif (!css) return route;\n\tif (css.length === 0) {\n\t\tconst nextRoute = { ...route };\n\t\tdelete nextRoute.css;\n\t\treturn nextRoute;\n\t}\n\tlet cssLinks;\n\tfor (let i = 0; i < css.length; i++) {\n\t\tconst link = css[i];\n\t\tconst href = getStylesheetHref(link);\n\t\tif (inlineStyles[href] === void 0) {\n\t\t\tif (cssLinks) cssLinks.push(link);\n\t\t\tcontinue;\n\t\t}\n\t\tif (!seenInlineCssHrefs.has(href)) {\n\t\t\tseenInlineCssHrefs.add(href);\n\t\t\tinlineCssHrefs.push(href);\n\t\t}\n\t\tif (!cssLinks) cssLinks = css.slice(0, i);\n\t}\n\tif (!cssLinks) return route;\n\tif (cssLinks.length > 0) return {\n\t\t...route,\n\t\tcss: cssLinks\n\t};\n\tconst nextRoute = { ...route };\n\tdelete nextRoute.css;\n\treturn nextRoute;\n}\nfunction hasRouteAssets(route) {\n\treturn !!route.scripts?.length || !!route.css?.length;\n}\nfunction hasRequestAssets(assets) {\n\treturn !!assets && (!!assets.preloads?.length || hasRouteAssets(assets));\n}\nfunction mergeRequestAssetsIntoRootRoute(rootRoute, requestAssets) {\n\tconst preloads = requestAssets?.preloads?.length ? [...requestAssets.preloads, ...rootRoute?.preloads ?? []] : rootRoute?.preloads;\n\tconst scripts = requestAssets?.scripts?.length ? [...requestAssets.scripts, ...rootRoute?.scripts ?? []] : rootRoute?.scripts;\n\tconst cssLinks = requestAssets?.css?.length ? [...requestAssets.css, ...rootRoute?.css ?? []] : rootRoute?.css;\n\treturn {\n\t\t...rootRoute ?? {},\n\t\t...preloads?.length ? { preloads } : {},\n\t\t...scripts?.length ? { scripts } : {},\n\t\t...cssLinks?.length ? { css: cssLinks } : {}\n\t};\n}\n/**\n* Compose a client-facing manifest from prepared routes, an optional inline\n* style, and optional request-scoped assets merged into the root route.\n* Shared by the `router.ssr.manifest` getter and `dehydrate()` so the two\n* compositions cannot drift.\n*/\nfunction composeManifest(scriptFormat, inlineStyle, routes, requestAssets) {\n\tconst base = {\n\t\t...scriptFormat ? { scriptFormat } : {},\n\t\t...inlineStyle ? { inlineStyle } : {},\n\t\troutes\n\t};\n\tif (!hasRequestAssets(requestAssets)) return base;\n\treturn {\n\t\t...base,\n\t\troutes: {\n\t\t\t...routes,\n\t\t\t[rootRouteId]: mergeRequestAssetsIntoRootRoute(routes[rootRouteId], requestAssets)\n\t\t}\n\t};\n}\nfunction attachRouterServerSsrUtils({ router, manifest, getRequestAssets }) {\n\tlet memoizedPreparedManifest;\n\trouter.ssr = { get manifest() {\n\t\tif (!manifest) return manifest;\n\t\tconst requestAssets = getRequestAssets?.();\n\t\tconst hasAssets = hasRequestAssets(requestAssets);\n\t\tif (!hasAssets && !manifest.inlineCss) return manifest;\n\t\tlet inlineCssAsset;\n\t\tlet routes = manifest.routes;\n\t\tif (manifest.inlineCss) {\n\t\t\tconst matches = _getRenderedMatches(router.stores.matches.get());\n\t\t\tconst cacheKey = getMatchedRoutesCacheKey(matches);\n\t\t\tif (memoizedPreparedManifest?.cacheKey === cacheKey) {\n\t\t\t\tinlineCssAsset = memoizedPreparedManifest.inlineCssAsset;\n\t\t\t\troutes = memoizedPreparedManifest.routes;\n\t\t\t} else {\n\t\t\t\tconst preparedManifest = getPreparedMatchedManifestRoutes(manifest, matches, cacheKey);\n\t\t\t\tinlineCssAsset = getInlineCssAssetForPreparedRoutes(manifest, preparedManifest);\n\t\t\t\tif (preparedManifest.hasStrippedRoutes) routes = {\n\t\t\t\t\t...manifest.routes,\n\t\t\t\t\t...preparedManifest.routes\n\t\t\t\t};\n\t\t\t\tmemoizedPreparedManifest = {\n\t\t\t\t\tcacheKey,\n\t\t\t\t\tinlineCssAsset,\n\t\t\t\t\troutes\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t\treturn composeManifest(manifest.scriptFormat, inlineCssAsset, routes, hasAssets ? requestAssets : void 0);\n\t} };\n\tlet dehydrationPhase = \"idle\";\n\tlet renderFinished = false;\n\tconst renderFinishedListeners = [];\n\tconst cleanupListeners = [];\n\tlet cleanupStarted = false;\n\tlet settled = false;\n\tlet disposeSerialization;\n\tconst hydrationScripts = createHydrationScripts(router.options.ssr?.nonce);\n\tconst serverSsr = {\n\t\thydrationScripts,\n\t\tdehydrate: async (opts) => {\n\t\t\tif (dehydrationPhase !== \"idle\") {\n\t\t\t\tif (process.env.NODE_ENV !== \"production\") throw new Error(dehydrationPhase === \"disabled\" ? \"Invariant failed: hydration is disabled for this request!\" : \"Invariant failed: router is already dehydrated!\");\n\t\t\t\tinvariant();\n\t\t\t}\n\t\t\topts?.signal?.throwIfAborted();\n\t\t\tdehydrationPhase = \"started\";\n\t\t\tlet matchesToDehydrate = _getRenderedMatches(router.stores.matches.get());\n\t\t\tif (router.isShell()) matchesToDehydrate = matchesToDehydrate.slice(0, 1);\n\t\t\tconst matches = matchesToDehydrate.map(dehydrateMatch);\n\t\t\tlet manifestToDehydrate = void 0;\n\t\t\tif (manifest) {\n\t\t\t\tconst cacheKey = getMatchedRoutesCacheKey(matchesToDehydrate);\n\t\t\t\tconst preparedManifest = getPreparedMatchedManifestRoutes(manifest, matchesToDehydrate, cacheKey);\n\t\t\t\tmanifestToDehydrate = composeManifest(manifest.scriptFormat, preparedManifest.inlineCssHrefs ? createInlineCssPlaceholderAsset() : void 0, preparedManifest.routes, opts?.requestAssets);\n\t\t\t}\n\t\t\tconst dehydratedRouter = {\n\t\t\t\tmanifest: manifestToDehydrate,\n\t\t\t\tmatches\n\t\t\t};\n\t\t\tconst dehydrate = router.options.dehydrate;\n\t\t\tconst dehydratedData = dehydrate ? opts?.signal ? await waitForReason(dehydrate.call(router.options), opts.signal) : await dehydrate.call(router.options) : void 0;\n\t\t\topts?.signal?.throwIfAborted();\n\t\t\tif (cleanupStarted) return;\n\t\t\tif (dehydratedData !== void 0) dehydratedRouter.dehydratedData = dehydratedData;\n\t\t\tconst trackPlugins = { didRun: false };\n\t\t\tconst serializationAdapters = router.options.serializationAdapters;\n\t\t\tconst plugins = serializationAdapters ? [...serializationAdapters.map((adapter) => /* @__PURE__ */ makeSsrSerovalPlugin(adapter, trackPlugins)), ...ssrSerovalPlugins] : ssrSerovalPlugins;\n\t\t\tlet serializationCompleteSignaled = false;\n\t\t\tlet initialSerialized = false;\n\t\t\tconst completeScriptSerialization = (result) => {\n\t\t\t\tif (serializationCompleteSignaled || cleanupStarted) return;\n\t\t\t\tserializationCompleteSignaled = true;\n\t\t\t\tconst dispose = disposeSerialization;\n\t\t\t\tdisposeSerialization = void 0;\n\t\t\t\tif (result === true) {\n\t\t\t\t\tsettled = true;\n\t\t\t\t\thydrationScripts.finish();\n\t\t\t\t} else if (result) hydrationScripts.fail(result.error);\n\t\t\t\tif (dispose) queueMicrotask(() => disposeSerializationSafely(dispose));\n\t\t\t};\n\t\t\tlet synchronousFailure;\n\t\t\tconst dispose = crossSerializeStream(dehydratedRouter, {\n\t\t\t\trefs: /* @__PURE__ */ new Map(),\n\t\t\t\tplugins,\n\t\t\t\tonSerialize: (data, initial) => {\n\t\t\t\t\tif (serializationCompleteSignaled || cleanupStarted) return;\n\t\t\t\t\tinitialSerialized ||= initial;\n\t\t\t\t\tif (!hydrationScripts.pushSerializedSource(data, initial, trackPlugins.didRun)) completeScriptSerialization(false);\n\t\t\t\t},\n\t\t\t\tonError: (err) => {\n\t\t\t\t\tif (serializationCompleteSignaled || cleanupStarted) return;\n\t\t\t\t\tconsole.error(\"Serialization error:\", err);\n\t\t\t\t\tsynchronousFailure = { error: err };\n\t\t\t\t\tcompleteScriptSerialization({ error: err });\n\t\t\t\t},\n\t\t\t\tscopeId: \"tsr\",\n\t\t\t\tonDone: () => {\n\t\t\t\t\tif (initialSerialized) completeScriptSerialization(true);\n\t\t\t\t}\n\t\t\t});\n\t\t\tif (cleanupStarted || serializationCompleteSignaled) disposeSerializationSafely(dispose);\n\t\t\telse disposeSerialization = dispose;\n\t\t\tif (synchronousFailure) throw synchronousFailure.error;\n\t\t},\n\t\tonRenderFinished: (listener) => {\n\t\t\tif (cleanupStarted) return;\n\t\t\tif (renderFinished) {\n\t\t\t\ttry {\n\t\t\t\t\tlistener();\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsole.error(\"Error in render finished listener:\", error);\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\trenderFinishedListeners.push(listener);\n\t\t},\n\t\tonCleanup: (listener) => {\n\t\t\tif (cleanupStarted) {\n\t\t\t\ttry {\n\t\t\t\t\tlistener(settled);\n\t\t\t\t} catch (error) {\n\t\t\t\t\tconsole.error(\"Error in SSR cleanup listener:\", error);\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tcleanupListeners.push(listener);\n\t\t},\n\t\tsetRenderFinished: () => {\n\t\t\tif (cleanupStarted || renderFinished) return;\n\t\t\trenderFinished = true;\n\t\t\thydrationScripts.liftBarrier();\n\t\t\tnotifyAndClearListeners(renderFinishedListeners, \"Error in render finished listener:\", void 0);\n\t\t},\n\t\tdisableHydration: () => {\n\t\t\tif (cleanupStarted || dehydrationPhase === \"disabled\") return;\n\t\t\tif (dehydrationPhase !== \"idle\") {\n\t\t\t\tif (process.env.NODE_ENV !== \"production\") throw new Error(\"Invariant failed: cannot disable hydration after dehydrate()!\");\n\t\t\t\tinvariant();\n\t\t\t}\n\t\t\thydrationScripts.disableHydration();\n\t\t\tdehydrationPhase = \"disabled\";\n\t\t},\n\t\ttakeInitialHydrationScriptTags: hydrationScripts.takeInitialHydrationScriptTags,\n\t\tcleanup() {\n\t\t\tif (cleanupStarted) return;\n\t\t\tcleanupStarted = true;\n\t\t\thydrationScripts.cleanup();\n\t\t\tconst dispose = disposeSerialization;\n\t\t\tdisposeSerialization = void 0;\n\t\t\tdisposeSerializationSafely(dispose);\n\t\t\tnotifyAndClearListeners(cleanupListeners, \"Error in SSR cleanup listener:\", settled);\n\t\t\trenderFinishedListeners.length = 0;\n\t\t\trouter.ssr = void 0;\n\t\t\trouter.serverSsr = void 0;\n\t\t}\n\t};\n\trouter.serverSsr = serverSsr;\n\tfor (const listener of router.serverSsrLifecycle?.onServerSsrAttach ?? []) try {\n\t\tlistener(serverSsr);\n\t} catch (err) {\n\t\tconsole.error(\"SSR attach listener error:\", err);\n\t}\n}\n/**\n* Get the origin for the request.\n*\n* SECURITY: We intentionally do NOT trust the Origin header for determining\n* the router's origin. The Origin header can be spoofed by attackers, which\n* could lead to SSRF-like vulnerabilities where redirects are constructed\n* using a malicious origin (CVE-2024-34351).\n*\n* Instead, we derive the origin from request.url, which is typically set by\n* the server infrastructure (not client-controlled headers).\n*\n* For applications behind proxies that need to trust forwarded headers,\n* use the router's `origin` option to explicitly configure a trusted origin.\n*/\nfunction getOrigin(request) {\n\ttry {\n\t\treturn new URL(request.url).origin;\n\t} catch {}\n\treturn \"http://localhost\";\n}\nfunction getNormalizedURL(url, base) {\n\tif (typeof url === \"string\") url = url.replace(\"\\\\\", \"%5C\");\n\tconst rawUrl = new URL(url, base);\n\tconst handledProtocolRelativeURL = rawUrl.pathname.startsWith(\"//\");\n\tconst decodedPathname = decodePath(handledProtocolRelativeURL ? rawUrl.pathname.replace(/^\\/+/, \"/\") : rawUrl.pathname);\n\tconst searchParams = new URLSearchParams(rawUrl.search);\n\tconst normalizedHref = decodedPathname + (searchParams.size > 0 ? \"?\" : \"\") + searchParams.toString() + rawUrl.hash;\n\treturn {\n\t\turl: new URL(normalizedHref, rawUrl.origin),\n\t\thandledProtocolRelativeURL\n\t};\n}\n//#endregion\nexport { attachRouterServerSsrUtils, getNormalizedURL, getOrigin };\n\n//# sourceMappingURL=ssr-server.js.map","//#region src/ssr/handlerCallback.ts\nfunction isSsrResponse(value) {\n\tif (typeof value !== \"object\" || value === null || !(\"response\" in value) || !(value.response instanceof Response) || !(\"serverSsrCleanup\" in value)) return false;\n\tif (value.serverSsrCleanup === \"none\") return true;\n\treturn value.serverSsrCleanup === \"stream\" && \"dispose\" in value && typeof value.dispose === \"function\";\n}\nfunction normalizeSsrResponse(result) {\n\tif (result instanceof Response) return {\n\t\tresponse: result,\n\t\tserverSsrCleanup: \"none\"\n\t};\n\tif (isSsrResponse(result)) return result;\n\tthrow new TypeError(\"Expected a Response from the SSR handler\");\n}\nfunction cancelResponseBody(response, reason) {\n\tconst body = response.body;\n\tif (!body) return;\n\tbody.cancel(reason).catch(console.error);\n}\nfunction disposeSsrResponse(result, reason) {\n\tconst response = normalizeSsrResponse(result);\n\tif (response.serverSsrCleanup === \"stream\") response.dispose(reason);\n\telse cancelResponseBody(response.response, reason);\n}\n/** The HTTP status that Router's server load selected for this render. */\nfunction getSsrStatus(router) {\n\treturn router._serverResult?.type === \"render\" ? router._serverResult.status : 200;\n}\nfunction createSsrStreamResponse(router, response) {\n\tconst body = response.body;\n\tif (!body) throw new Error(\"Invariant failed: SSR stream response requires a body\");\n\treturn {\n\t\tresponse,\n\t\tserverSsrCleanup: \"stream\",\n\t\tdispose(reason) {\n\t\t\trouter.serverSsr?.cleanup();\n\t\t\tbody.cancel(reason).catch(() => {});\n\t\t}\n\t};\n}\nfunction bindSsrResponseToRequest(router, result, signal) {\n\tconst ssrResponse = normalizeSsrResponse(result);\n\tif (ssrResponse.serverSsrCleanup !== \"stream\") {\n\t\tif (signal.aborted) disposeSsrResponse(result, signal.reason);\n\t\treturn ssrResponse;\n\t}\n\tconst abort = () => {\n\t\tdisposeSsrResponse(ssrResponse, signal.reason);\n\t};\n\tif (signal.aborted) {\n\t\tabort();\n\t\treturn ssrResponse;\n\t}\n\tconst serverSsr = router?.serverSsr;\n\tif (serverSsr?.hydrationScripts.requestSignal === signal) {\n\t\tserverSsr.onCleanup(() => {\n\t\t\tif (signal.aborted) abort();\n\t\t});\n\t\treturn ssrResponse;\n\t}\n\tsignal.addEventListener(\"abort\", abort, { once: true });\n\tif (!serverSsr) return ssrResponse;\n\tserverSsr.onCleanup(() => {\n\t\tsignal.removeEventListener(\"abort\", abort);\n\t});\n\treturn ssrResponse;\n}\nfunction replaceSsrResponse(result, response, reason) {\n\tdisposeSsrResponse(result, reason);\n\treturn {\n\t\tresponse,\n\t\tserverSsrCleanup: \"none\"\n\t};\n}\nfunction stripSsrResponseBody(result, reason) {\n\tconst ssrResponse = normalizeSsrResponse(result);\n\tdisposeSsrResponse(ssrResponse, reason);\n\treturn {\n\t\tresponse: new Response(null, ssrResponse.response),\n\t\tserverSsrCleanup: \"none\"\n\t};\n}\nfunction defineHandlerCallback(handler) {\n\treturn handler;\n}\n//#endregion\nexport { bindSsrResponseToRequest, createSsrStreamResponse, defineHandlerCallback, disposeSsrResponse, getSsrStatus, isSsrResponse, normalizeSsrResponse, replaceSsrResponse, stripSsrResponseBody };\n\n//# sourceMappingURL=handlerCallback.js.map","const COOKIE_MAX_AGE_LIMIT = 3456e4;\nfunction endIndex(str, min, len) {\n\tconst index = str.indexOf(\";\", min);\n\treturn index === -1 ? len : index;\n}\nfunction eqIndex(str, min, max) {\n\tconst index = str.indexOf(\"=\", min);\n\treturn index < max ? index : -1;\n}\nfunction valueSlice(str, min, max) {\n\tif (min === max) return \"\";\n\tlet start = min;\n\tlet end = max;\n\tdo {\n\t\tconst code = str.charCodeAt(start);\n\t\tif (code !== 32 && code !== 9) break;\n\t} while (++start < end);\n\twhile (end > start) {\n\t\tconst code = str.charCodeAt(end - 1);\n\t\tif (code !== 32 && code !== 9) break;\n\t\tend--;\n\t}\n\treturn str.slice(start, end);\n}\nconst NullObject = /* @__PURE__ */ (() => {\n\tconst C = function() {};\n\tC.prototype = Object.create(null);\n\treturn C;\n})();\nfunction parse(str, options) {\n\tconst obj = new NullObject();\n\tconst len = str.length;\n\tif (len < 2) return obj;\n\tconst dec = options?.decode || decode;\n\tconst allowMultiple = options?.allowMultiple || false;\n\tlet index = 0;\n\tdo {\n\t\tconst eqIdx = eqIndex(str, index, len);\n\t\tif (eqIdx === -1) break;\n\t\tconst endIdx = endIndex(str, index, len);\n\t\tif (eqIdx > endIdx) {\n\t\t\tindex = str.lastIndexOf(\";\", eqIdx - 1) + 1;\n\t\t\tcontinue;\n\t\t}\n\t\tconst key = valueSlice(str, index, eqIdx);\n\t\tif (options?.filter && !options.filter(key)) {\n\t\t\tindex = endIdx + 1;\n\t\t\tcontinue;\n\t\t}\n\t\tconst val = dec(valueSlice(str, eqIdx + 1, endIdx));\n\t\tif (allowMultiple) {\n\t\t\tconst existing = obj[key];\n\t\t\tif (existing === void 0) obj[key] = val;\n\t\t\telse if (Array.isArray(existing)) existing.push(val);\n\t\t\telse obj[key] = [existing, val];\n\t\t} else if (obj[key] === void 0) obj[key] = val;\n\t\tindex = endIdx + 1;\n\t} while (index < len);\n\treturn obj;\n}\nfunction decode(str) {\n\tif (!str.includes(\"%\")) return str;\n\ttry {\n\t\treturn decodeURIComponent(str);\n\t} catch {\n\t\treturn str;\n\t}\n}\nconst cookieNameRegExp = /^[\\u0021-\\u003A\\u003C\\u003E-\\u007E]+$/;\nconst cookieValueRegExp = /^[\\u0021-\\u003A\\u003C-\\u007E]*$/;\nconst domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;\nconst pathValueRegExp = /^[\\u0020-\\u003A\\u003C-\\u007E]*$/;\nconst __toString = Object.prototype.toString;\nfunction stringifyCookie(cookie, options) {\n\tconst enc = options?.encode || encodeURIComponent;\n\tconst keys = Object.keys(cookie);\n\tlet str = \"\";\n\tfor (const [i, name] of keys.entries()) {\n\t\tconst val = cookie[name];\n\t\tif (val === void 0) continue;\n\t\tif (!cookieNameRegExp.test(name)) throw new TypeError(`cookie name is invalid: ${name}`);\n\t\tconst value = enc(val);\n\t\tif (!cookieValueRegExp.test(value)) throw new TypeError(`cookie val is invalid: ${val}`);\n\t\tif (i > 0) str += \"; \";\n\t\tstr += name + \"=\" + value;\n\t}\n\treturn str;\n}\nfunction serialize(_a0, _a1, _a2) {\n\tconst isObj = typeof _a0 === \"object\" && _a0 !== null;\n\tconst options = isObj ? _a1 : _a2;\n\tconst stringify = options?.stringify || JSON.stringify;\n\tconst cookie = isObj ? _a0 : {\n\t\t..._a2,\n\t\tname: _a0,\n\t\tvalue: _a1 == void 0 ? \"\" : typeof _a1 === \"string\" ? _a1 : stringify(_a1)\n\t};\n\tconst enc = options?.encode || encodeURIComponent;\n\tif (!cookieNameRegExp.test(cookie.name)) throw new TypeError(`argument name is invalid: ${cookie.name}`);\n\tconst value = cookie.value ? enc(cookie.value) : \"\";\n\tif (!cookieValueRegExp.test(value)) throw new TypeError(`argument val is invalid: ${cookie.value}`);\n\tif (!cookie.secure) {\n\t\tif (cookie.partitioned) throw new TypeError(`Partitioned cookies must have the Secure attribute`);\n\t\tif (cookie.sameSite && String(cookie.sameSite).toLowerCase() === \"none\") throw new TypeError(`SameSite=None cookies must have the Secure attribute`);\n\t\tif (cookie.name.length > 9 && cookie.name.charCodeAt(0) === 95 && cookie.name.charCodeAt(1) === 95) {\n\t\t\tconst nameLower = cookie.name.toLowerCase();\n\t\t\tif (nameLower.startsWith(\"__secure-\") || nameLower.startsWith(\"__host-\")) throw new TypeError(`${cookie.name} cookies must have the Secure attribute`);\n\t\t}\n\t}\n\tif (cookie.name.length > 7 && cookie.name.charCodeAt(0) === 95 && cookie.name.charCodeAt(1) === 95 && cookie.name.toLowerCase().startsWith(\"__host-\")) {\n\t\tif (cookie.path !== \"/\") throw new TypeError(`__Host- cookies must have Path=/`);\n\t\tif (cookie.domain) throw new TypeError(`__Host- cookies must not have a Domain attribute`);\n\t}\n\tlet str = cookie.name + \"=\" + value;\n\tif (cookie.maxAge !== void 0) {\n\t\tif (!Number.isInteger(cookie.maxAge)) throw new TypeError(`option maxAge is invalid: ${cookie.maxAge}`);\n\t\tstr += \"; Max-Age=\" + Math.max(0, Math.min(cookie.maxAge, COOKIE_MAX_AGE_LIMIT));\n\t}\n\tif (cookie.domain) {\n\t\tif (!domainValueRegExp.test(cookie.domain)) throw new TypeError(`option domain is invalid: ${cookie.domain}`);\n\t\tstr += \"; Domain=\" + cookie.domain;\n\t}\n\tif (cookie.path) {\n\t\tif (!pathValueRegExp.test(cookie.path)) throw new TypeError(`option path is invalid: ${cookie.path}`);\n\t\tstr += \"; Path=\" + cookie.path;\n\t}\n\tif (cookie.expires) {\n\t\tif (!isDate(cookie.expires) || !Number.isFinite(cookie.expires.valueOf())) throw new TypeError(`option expires is invalid: ${cookie.expires}`);\n\t\tstr += \"; Expires=\" + cookie.expires.toUTCString();\n\t}\n\tif (cookie.httpOnly) str += \"; HttpOnly\";\n\tif (cookie.secure) str += \"; Secure\";\n\tif (cookie.partitioned) str += \"; Partitioned\";\n\tif (cookie.priority) switch (typeof cookie.priority === \"string\" ? cookie.priority.toLowerCase() : void 0) {\n\t\tcase \"low\":\n\t\t\tstr += \"; Priority=Low\";\n\t\t\tbreak;\n\t\tcase \"medium\":\n\t\t\tstr += \"; Priority=Medium\";\n\t\t\tbreak;\n\t\tcase \"high\":\n\t\t\tstr += \"; Priority=High\";\n\t\t\tbreak;\n\t\tdefault: throw new TypeError(`option priority is invalid: ${cookie.priority}`);\n\t}\n\tif (cookie.sameSite) switch (typeof cookie.sameSite === \"string\" ? cookie.sameSite.toLowerCase() : cookie.sameSite) {\n\t\tcase true:\n\t\tcase \"strict\":\n\t\t\tstr += \"; SameSite=Strict\";\n\t\t\tbreak;\n\t\tcase \"lax\":\n\t\t\tstr += \"; SameSite=Lax\";\n\t\t\tbreak;\n\t\tcase \"none\":\n\t\t\tstr += \"; SameSite=None\";\n\t\t\tbreak;\n\t\tdefault: throw new TypeError(`option sameSite is invalid: ${cookie.sameSite}`);\n\t}\n\treturn str;\n}\nfunction isDate(val) {\n\treturn __toString.call(val) === \"[object Date]\";\n}\nconst maxAgeRegExp = /^-?\\d+$/;\nconst _nullProto = /* @__PURE__ */ Object.getPrototypeOf({});\nfunction parseSetCookie(str, options) {\n\tconst len = str.length;\n\tlet _endIdx = len;\n\tlet eqIdx = -1;\n\tfor (let i = 0; i < len; i++) {\n\t\tconst c = str.charCodeAt(i);\n\t\tif (c === 59) {\n\t\t\t_endIdx = i;\n\t\t\tbreak;\n\t\t}\n\t\tif (c === 61 && eqIdx === -1) eqIdx = i;\n\t}\n\tif (eqIdx >= _endIdx) eqIdx = -1;\n\tconst name = eqIdx === -1 ? \"\" : _trim(str, 0, eqIdx);\n\tif (name && name in _nullProto) return void 0;\n\tlet value = eqIdx === -1 ? _trim(str, 0, _endIdx) : _trim(str, eqIdx + 1, _endIdx);\n\tif (!name && !value) return void 0;\n\tif (name.length + value.length > 4096) return void 0;\n\tif (options?.decode !== false) value = _decode(value, options?.decode);\n\tconst setCookie = {\n\t\tname,\n\t\tvalue\n\t};\n\tlet index = _endIdx + 1;\n\twhile (index < len) {\n\t\tlet endIdx = len;\n\t\tlet attrEqIdx = -1;\n\t\tfor (let i = index; i < len; i++) {\n\t\t\tconst c = str.charCodeAt(i);\n\t\t\tif (c === 59) {\n\t\t\t\tendIdx = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (c === 61 && attrEqIdx === -1) attrEqIdx = i;\n\t\t}\n\t\tif (attrEqIdx >= endIdx) attrEqIdx = -1;\n\t\tconst attr = attrEqIdx === -1 ? _trim(str, index, endIdx) : _trim(str, index, attrEqIdx);\n\t\tconst val = attrEqIdx === -1 ? void 0 : _trim(str, attrEqIdx + 1, endIdx);\n\t\tif (val === void 0 || val.length <= 1024) switch (attr.toLowerCase()) {\n\t\t\tcase \"httponly\":\n\t\t\t\tsetCookie.httpOnly = true;\n\t\t\t\tbreak;\n\t\t\tcase \"secure\":\n\t\t\t\tsetCookie.secure = true;\n\t\t\t\tbreak;\n\t\t\tcase \"partitioned\":\n\t\t\t\tsetCookie.partitioned = true;\n\t\t\t\tbreak;\n\t\t\tcase \"domain\":\n\t\t\t\tif (val) setCookie.domain = (val.charCodeAt(0) === 46 ? val.slice(1) : val).toLowerCase();\n\t\t\t\tbreak;\n\t\t\tcase \"path\":\n\t\t\t\tsetCookie.path = val;\n\t\t\t\tbreak;\n\t\t\tcase \"max-age\":\n\t\t\t\tif (val && maxAgeRegExp.test(val)) setCookie.maxAge = Math.min(Number(val), COOKIE_MAX_AGE_LIMIT);\n\t\t\t\tbreak;\n\t\t\tcase \"expires\": {\n\t\t\t\tif (!val) break;\n\t\t\t\tconst date = new Date(val);\n\t\t\t\tif (Number.isFinite(date.valueOf())) {\n\t\t\t\t\tconst maxDate = new Date(Date.now() + COOKIE_MAX_AGE_LIMIT * 1e3);\n\t\t\t\t\tsetCookie.expires = date > maxDate ? maxDate : date;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"priority\": {\n\t\t\t\tif (!val) break;\n\t\t\t\tconst priority = val.toLowerCase();\n\t\t\t\tif (priority === \"low\" || priority === \"medium\" || priority === \"high\") setCookie.priority = priority;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"samesite\": {\n\t\t\t\tif (!val) break;\n\t\t\t\tconst sameSite = val.toLowerCase();\n\t\t\t\tif (sameSite === \"lax\" || sameSite === \"strict\" || sameSite === \"none\") setCookie.sameSite = sameSite;\n\t\t\t\telse setCookie.sameSite = \"lax\";\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\tconst attrLower = attr.toLowerCase();\n\t\t\t\tif (attrLower && !(attrLower in _nullProto)) setCookie[attrLower] = val;\n\t\t\t}\n\t\t}\n\t\tindex = endIdx + 1;\n\t}\n\treturn setCookie;\n}\nfunction _trim(str, start, end) {\n\tif (start === end) return \"\";\n\tlet s = start;\n\tlet e = end;\n\twhile (s < e && (str.charCodeAt(s) === 32 || str.charCodeAt(s) === 9)) s++;\n\twhile (e > s && (str.charCodeAt(e - 1) === 32 || str.charCodeAt(e - 1) === 9)) e--;\n\treturn str.slice(s, e);\n}\nfunction _decode(value, decode) {\n\tif (!decode && !value.includes(\"%\")) return value;\n\ttry {\n\t\treturn (decode || decodeURIComponent)(value);\n\t} catch {\n\t\treturn value;\n\t}\n}\nfunction splitSetCookieString(cookiesString) {\n\tif (Array.isArray(cookiesString)) return cookiesString.flatMap((c) => splitSetCookieString(c));\n\tif (typeof cookiesString !== \"string\") return [];\n\tconst cookiesStrings = [];\n\tlet pos = 0;\n\tlet start;\n\tlet ch;\n\tlet lastComma;\n\tlet nextStart;\n\tlet cookiesSeparatorFound;\n\tconst skipWhitespace = () => {\n\t\twhile (pos < cookiesString.length && /\\s/.test(cookiesString.charAt(pos))) pos += 1;\n\t\treturn pos < cookiesString.length;\n\t};\n\tconst notSpecialChar = () => {\n\t\tch = cookiesString.charAt(pos);\n\t\treturn ch !== \"=\" && ch !== \";\" && ch !== \",\";\n\t};\n\twhile (pos < cookiesString.length) {\n\t\tstart = pos;\n\t\tcookiesSeparatorFound = false;\n\t\twhile (skipWhitespace()) {\n\t\t\tch = cookiesString.charAt(pos);\n\t\t\tif (ch === \",\") {\n\t\t\t\tlastComma = pos;\n\t\t\t\tpos += 1;\n\t\t\t\tskipWhitespace();\n\t\t\t\tnextStart = pos;\n\t\t\t\twhile (pos < cookiesString.length && notSpecialChar()) pos += 1;\n\t\t\t\tif (pos < cookiesString.length && cookiesString.charAt(pos) === \"=\") {\n\t\t\t\t\tcookiesSeparatorFound = true;\n\t\t\t\t\tpos = nextStart;\n\t\t\t\t\tcookiesStrings.push(cookiesString.slice(start, lastComma));\n\t\t\t\t\tstart = pos;\n\t\t\t\t} else pos = lastComma + 1;\n\t\t\t} else pos += 1;\n\t\t}\n\t\tif (!cookiesSeparatorFound || pos >= cookiesString.length) cookiesStrings.push(cookiesString.slice(start));\n\t}\n\treturn cookiesStrings;\n}\nexport { parse, parse as parseCookie, parseSetCookie, serialize, serialize as serializeCookie, splitSetCookieString, stringifyCookie };\n","import { splitSetCookieString } from \"cookie-es\";\n//#region src/ssr/headers.ts\nfunction toHeadersInstance(init) {\n\tif (init instanceof Headers) return init;\n\telse if (Array.isArray(init)) return new Headers(init);\n\telse if (typeof init === \"object\") return new Headers(init);\n\telse return null;\n}\nfunction mergeHeaders(...headers) {\n\treturn headers.reduce((acc, header) => {\n\t\tconst headersInstance = toHeadersInstance(header);\n\t\tif (!headersInstance) return acc;\n\t\tfor (const [key, value] of headersInstance.entries()) if (key === \"set-cookie\") splitSetCookieString(value).forEach((cookie) => acc.append(\"set-cookie\", cookie));\n\t\telse acc.set(key, value);\n\t\treturn acc;\n\t}, new Headers());\n}\n//#endregion\nexport { mergeHeaders };\n\n//# sourceMappingURL=headers.js.map","import { DOCUMENT_CLOSE_ANCHOR_INDEX, DOCUMENT_CLOSE_BYTES, SCRIPT_CLOSE_ANCHOR_INDEX, SCRIPT_CLOSE_BYTES, advanceByteMatcher, encodeIntoBoundedChunk, findExactBytes, getExactBytesPrefixAtEnd } from \"./htmlBoundaryScanner.js\";\nimport { HYDRATION_SCRIPT_BOUNDARY_ANCHOR_INDEX, HYDRATION_SCRIPT_BOUNDARY_BYTES, HydrationScriptOutputState } from \"./hydrationScripts.js\";\nimport { Readable } from \"node:stream\";\n//#region src/ssr/transformStreamWithRouter.ts\nfunction transformPipeableStreamWithRouter(router, routerStream, opts) {\n\treturn Readable.fromWeb(transformReadableStreamWithRouter(router, Readable.toWeb(routerStream), opts));\n}\nasync function transformHtmlStringWithRouter(router, html, opts) {\n\tconst serverSsr = router.serverSsr;\n\tif (!serverSsr) throw new Error(\"Invariant failed: router.serverSsr is required\");\n\tif (serverSsr.hydrationScripts.reserveFastPath()) try {\n\t\topts?.signal?.throwIfAborted();\n\t\tserverSsr.setRenderFinished();\n\t\treturn \"<!DOCTYPE html>\" + html;\n\t} catch (error) {\n\t\ttry {\n\t\t\topts?.onAbort?.(error);\n\t\t} catch {}\n\t\tthrow error;\n\t} finally {\n\t\tserverSsr.cleanup();\n\t}\n\treturn readUtf8Stream(transformReadableStreamWithRouter(router, new ReadableStream({ start(controller) {\n\t\tcontroller.enqueue(\"<!DOCTYPE html>\");\n\t\tcontroller.enqueue(html);\n\t\tcontroller.close();\n\t} }), opts));\n}\nasync function readUtf8Stream(stream) {\n\tconst reader = stream.getReader();\n\tconst decoder = new TextDecoder();\n\tlet text = \"\";\n\ttry {\n\t\tfor (;;) {\n\t\t\tconst { done, value } = await reader.read();\n\t\t\tif (done) break;\n\t\t\ttext += decoder.decode(value, { stream: true });\n\t\t}\n\t\treturn text + decoder.decode();\n\t} finally {\n\t\treader.releaseLock();\n\t}\n}\nconst DEFAULT_SERIALIZATION_TIMEOUT_MS = 6e4;\nconst MIN_APPLICATION_STRING_CHUNK_BYTES = 256;\nconst MAX_APPLICATION_STRING_CHUNK_BYTES = 64 * 1024;\nconst ApplicationPhase = {\n\tBeforeBoundary: 0,\n\tMerge: 1,\n\tHeldClose: 2,\n\tPassThrough: 3\n};\nfunction releaseReader(reader) {\n\ttry {\n\t\treader.releaseLock();\n\t} catch {}\n}\nfunction cancelReader(reader, reason) {\n\tconst cancelled = reader.cancel(reason).catch(() => {});\n\treleaseReader(reader);\n\treturn cancelled;\n}\nfunction finalizeSsrStream(kind, reason, controller, reader, serverSsr, onAbort) {\n\ttry {\n\t\tif (kind === \"complete\") controller.close();\n\t\telse if (kind === \"failure\") controller.error(reason);\n\t} catch {}\n\tconst aborted = kind !== \"complete\";\n\tif (aborted) try {\n\t\tonAbort?.(reason);\n\t} catch {}\n\tconst readerDone = aborted ? cancelReader(reader, reason) : releaseReader(reader);\n\tserverSsr.cleanup();\n\treturn readerDone;\n}\nfunction getLifetimeMs(opts) {\n\treturn opts?.lifetimeMs ?? (opts?.timeoutMs ?? DEFAULT_SERIALIZATION_TIMEOUT_MS) * 2;\n}\nfunction createCleanupAbortError() {\n\tconst error = /* @__PURE__ */ new Error(\"SSR stream transform aborted by router SSR cleanup\");\n\terror.name = \"AbortError\";\n\treturn error;\n}\nfunction listenForAbort(signal, onAbort) {\n\tif (!signal) return;\n\tconst listener = () => onAbort(signal.reason);\n\tsignal.addEventListener(\"abort\", listener, { once: true });\n\treturn () => signal.removeEventListener(\"abort\", listener);\n}\n/**\n* Create a timer that does not keep the Node.js process alive when this\n* last-resort stream backstop is the only remaining work.\n*\n* Node's global `setTimeout()` returns a `Timeout` object with `unref()`.\n* Web-standard runtimes return a numeric timer ID instead. Cloudflare Workers\n* retain that Web behavior for global timers even when `nodejs_compat` is\n* enabled. Accessing an optional property on a numeric ID is safe, so timer\n* creation can normalize the Node-only capability without allocating a\n* wrapper object. The native handle is returned unchanged for `clearTimeout`.\n*/\nfunction setUnrefTimeout(callback, timeoutMs) {\n\tconst handle = setTimeout(callback, timeoutMs);\n\thandle.unref?.();\n\treturn handle;\n}\n/**\n* Arm the shared teardown triggers of a transform stream: the lifetime\n* backstop timer, the request-abort listener, and the external-cleanup\n* listener. Returns a disarm function that `terminate()` calls exactly once;\n* teardown ordering must stay identical between the fast and merge paths.\n*/\nfunction armStreamLifecycle(serverSsr, opts, isTerminal, terminate) {\n\tconst signal = opts?.signal;\n\tlet lifetimeTimeoutHandle;\n\tlet stopAbortListener;\n\tconst disarm = () => {\n\t\tstopAbortListener?.();\n\t\tstopAbortListener = void 0;\n\t\tif (signal && serverSsr.hydrationScripts.requestSignal === signal) serverSsr.hydrationScripts.requestSignal = void 0;\n\t\tif (lifetimeTimeoutHandle !== void 0) {\n\t\t\tclearTimeout(lifetimeTimeoutHandle);\n\t\t\tlifetimeTimeoutHandle = void 0;\n\t\t}\n\t};\n\tconst lifetimeMs = getLifetimeMs(opts);\n\tlifetimeTimeoutHandle = setUnrefTimeout(() => {\n\t\tif (isTerminal()) return;\n\t\tconst error = /* @__PURE__ */ new Error(\"Stream lifetime exceeded\");\n\t\tconsole.warn(`SSR stream transform exceeded maximum lifetime (${lifetimeMs}ms), forcing cleanup`);\n\t\tterminate(\"failure\", error);\n\t}, lifetimeMs);\n\tstopAbortListener = listenForAbort(signal, (reason) => {\n\t\tterminate(\"failure\", reason);\n\t});\n\tif (signal) serverSsr.hydrationScripts.requestSignal = signal;\n\tserverSsr.onCleanup(() => {\n\t\tif (!isTerminal()) terminate(\"failure\", createCleanupAbortError());\n\t});\n\treturn disarm;\n}\nfunction cleanupFailedStreamCreation(serverSsr, onAbort, error) {\n\ttry {\n\t\tonAbort?.(error);\n\t} catch {}\n\tserverSsr.cleanup();\n}\nfunction encodeStringSource(value, offset) {\n\tconst remaining = value.length - offset;\n\tconst capacity = Math.min(MAX_APPLICATION_STRING_CHUNK_BYTES, Math.max(MIN_APPLICATION_STRING_CHUNK_BYTES, Math.min(value.length, remaining * 3)));\n\tconst output = new Uint8Array(capacity);\n\tconst { read, written } = encodeIntoBoundedChunk(value, offset, output);\n\treturn {\n\t\tbytes: written === output.length ? output : output.subarray(0, written),\n\t\tread\n\t};\n}\nfunction transformReadableStreamWithRouter(router, appStream, opts) {\n\tconst serverSsr = router.serverSsr;\n\tif (!serverSsr) throw new Error(\"Invariant failed: router.serverSsr is required\");\n\tconst hydrationScripts = serverSsr.hydrationScripts;\n\tlet reader;\n\ttry {\n\t\treader = appStream.getReader();\n\t} catch (error) {\n\t\tcleanupFailedStreamCreation(serverSsr, opts?.onAbort, error);\n\t\tthrow error;\n\t}\n\ttry {\n\t\topts?.signal?.throwIfAborted();\n\t\tif (hydrationScripts.reserveFastPath()) return makeMergeStream(serverSsr, reader, void 0, opts);\n\t\tconst hydrationOutput = hydrationScripts.claimOutput();\n\t\tif (hydrationOutput.state === HydrationScriptOutputState.Failed) throw hydrationOutput.error;\n\t\treturn makeMergeStream(serverSsr, reader, hydrationOutput, opts);\n\t} catch (error) {\n\t\tcancelReader(reader, error);\n\t\tcleanupFailedStreamCreation(serverSsr, opts?.onAbort, error);\n\t\tthrow error;\n\t}\n}\nfunction makeMergeStream(serverSsr, reader, hydrationOutput, opts) {\n\tconst hydrationScripts = serverSsr.hydrationScripts;\n\tlet controller;\n\tlet terminal = false;\n\tlet appDone = false;\n\tlet applicationPhase = hydrationOutput ? ApplicationPhase.BeforeBoundary : ApplicationPhase.PassThrough;\n\tlet insertionBoundary = false;\n\tlet stopHydrationOutputListener;\n\tlet appReadPending = false;\n\tlet settledAppRead;\n\tlet appBytes;\n\tlet appOffset = 0;\n\tlet documentCloseIndex;\n\tlet appString;\n\tlet appStringOffset = 0;\n\tconst useScriptCloseSafePoints = opts?.rendererSafePoint === \"script-close\";\n\tconst useRecordEndSafePoints = opts?.rendererSafePoint === \"record-end\";\n\tlet barrierMatcher;\n\tlet safePointMatcher;\n\tlet closeCarry;\n\tlet wakeResolve;\n\tlet disarmLifecycle = () => {};\n\tfunction waitForWake() {\n\t\treturn new Promise((resolve) => {\n\t\t\twakeResolve = resolve;\n\t\t});\n\t}\n\tfunction wakePump() {\n\t\tconst resolve = wakeResolve;\n\t\twakeResolve = void 0;\n\t\tresolve?.();\n\t}\n\tfunction enqueueAppBytes(value) {\n\t\tif (value.length === 0) return false;\n\t\tcontroller.enqueue(value);\n\t\treturn true;\n\t}\n\tfunction finishAppChunk() {\n\t\tappBytes = void 0;\n\t\tdocumentCloseIndex = void 0;\n\t\tif (appString === void 0 && useRecordEndSafePoints && closeCarry === void 0) insertionBoundary = true;\n\t}\n\tfunction emitAppRange(end, safePoint, finishCurrentChunk = end === appBytes.length) {\n\t\tconst value = appBytes;\n\t\tconst output = appOffset === 0 && end === value.length ? value : value.subarray(appOffset, end);\n\t\tappOffset = end;\n\t\tif (safePoint) insertionBoundary = true;\n\t\tif (finishCurrentChunk) finishAppChunk();\n\t\treturn enqueueAppBytes(output);\n\t}\n\tfunction loadNextAppStringChunk() {\n\t\tconst value = appString;\n\t\tconst encoded = encodeStringSource(value, appStringOffset);\n\t\tappStringOffset += encoded.read;\n\t\tappBytes = encoded.bytes;\n\t\tappOffset = 0;\n\t\tif (appStringOffset === value.length) appString = void 0;\n\t}\n\tfunction processUntilBarrier() {\n\t\tconst value = appBytes;\n\t\tif (!hydrationScripts.isInitialTaken()) return emitAppRange(value.length, false);\n\t\tconst matchEnd = advanceByteMatcher(barrierMatcher ??= {\n\t\t\tpattern: HYDRATION_SCRIPT_BOUNDARY_BYTES,\n\t\t\tanchorIndex: HYDRATION_SCRIPT_BOUNDARY_ANCHOR_INDEX,\n\t\t\tmatched: 0\n\t\t}, value, appOffset);\n\t\tif (matchEnd === void 0) return emitAppRange(value.length, false);\n\t\tapplicationPhase = ApplicationPhase.Merge;\n\t\thydrationScripts.liftBarrier();\n\t\treturn emitAppRange(matchEnd, true);\n\t}\n\tfunction enterHeldClose(consumed, prefix) {\n\t\tappOffset = consumed;\n\t\tapplicationPhase = ApplicationPhase.HeldClose;\n\t\tif (safePointMatcher) safePointMatcher.matched = 0;\n\t\tinsertionBoundary = true;\n\t\tif (appOffset === appBytes.length) finishAppChunk();\n\t\treturn prefix ? enqueueAppBytes(prefix) : false;\n\t}\n\tfunction holdDocumentClose(matchStart) {\n\t\tconst value = appBytes;\n\t\treturn enterHeldClose(matchStart + DOCUMENT_CLOSE_BYTES.length, matchStart === appOffset ? void 0 : value.subarray(appOffset, matchStart));\n\t}\n\tfunction processUntilSafePoint(endIndex) {\n\t\tconst matchEnd = findSafePointEnd(appBytes, appOffset, endIndex);\n\t\tif (matchEnd === void 0) return false;\n\t\treturn emitAppRange(matchEnd, true);\n\t}\n\tfunction findSafePointEnd(value, startIndex, endIndex) {\n\t\tconst hydrationState = hydrationOutput.state;\n\t\tif (endIndex === startIndex || hydrationState === HydrationScriptOutputState.Done) return;\n\t\tconst scanValue = endIndex === value.length ? value : value.subarray(0, endIndex);\n\t\tconst matcher = safePointMatcher ??= {\n\t\t\tpattern: SCRIPT_CLOSE_BYTES,\n\t\t\tanchorIndex: SCRIPT_CLOSE_ANCHOR_INDEX,\n\t\t\tmatched: 0\n\t\t};\n\t\tconst waiting = hydrationState === HydrationScriptOutputState.Waiting;\n\t\tconst matchEnd = advanceByteMatcher(matcher, scanValue, startIndex, waiting);\n\t\tif (matchEnd === void 0) return;\n\t\tif (waiting) matcher.matched = 0;\n\t\treturn matchEnd;\n\t}\n\tfunction processCloseCarry() {\n\t\tconst value = appBytes;\n\t\tconst carry = closeCarry;\n\t\tconst headLength = Math.min(value.length - appOffset, DOCUMENT_CLOSE_BYTES.length);\n\t\tconst combined = new Uint8Array(carry.length + headLength);\n\t\tcombined.set(carry);\n\t\tcombined.set(value.subarray(appOffset, appOffset + headLength), carry.length);\n\t\tconst matchStart = findExactBytes(combined, DOCUMENT_CLOSE_BYTES, 0, DOCUMENT_CLOSE_ANCHOR_INDEX);\n\t\tconst partial = matchStart < 0 ? getExactBytesPrefixAtEnd(combined, DOCUMENT_CLOSE_BYTES) : void 0;\n\t\tconst safeEnd = matchStart >= 0 ? matchStart : partial ?? combined.length;\n\t\tif (useScriptCloseSafePoints) {\n\t\t\tconst safePointEnd = findSafePointEnd(combined, 0, safeEnd);\n\t\t\tif (safePointEnd !== void 0) {\n\t\t\t\tappOffset += safePointEnd - carry.length;\n\t\t\t\tcloseCarry = void 0;\n\t\t\t\tinsertionBoundary = true;\n\t\t\t\tif (appOffset === value.length) finishAppChunk();\n\t\t\t\treturn enqueueAppBytes(combined.subarray(0, safePointEnd));\n\t\t\t}\n\t\t}\n\t\tif (matchStart >= 0) {\n\t\t\tcloseCarry = void 0;\n\t\t\treturn enterHeldClose(appOffset + matchStart + DOCUMENT_CLOSE_BYTES.length - carry.length, matchStart === 0 ? void 0 : combined.subarray(0, matchStart));\n\t\t}\n\t\tcloseCarry = partial === void 0 ? void 0 : combined.slice(partial);\n\t\tappOffset += headLength;\n\t\treturn enqueueAppBytes(safeEnd === combined.length ? combined : combined.subarray(0, safeEnd));\n\t}\n\tfunction processUntilDocumentClose() {\n\t\tconst value = appBytes;\n\t\tif (closeCarry) {\n\t\t\tif (processCloseCarry()) return true;\n\t\t\tif (applicationPhase === ApplicationPhase.HeldClose) return false;\n\t\t\tif (appOffset >= value.length) {\n\t\t\t\tfinishAppChunk();\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\tconst matchStart = documentCloseIndex ??= findExactBytes(value, DOCUMENT_CLOSE_BYTES, appOffset, DOCUMENT_CLOSE_ANCHOR_INDEX);\n\t\tif (matchStart >= 0) {\n\t\t\tif (useScriptCloseSafePoints && processUntilSafePoint(matchStart)) return true;\n\t\t\treturn holdDocumentClose(matchStart);\n\t\t}\n\t\tconst partial = getExactBytesPrefixAtEnd(value, DOCUMENT_CLOSE_BYTES, appOffset);\n\t\tconst safeEnd = partial ?? value.length;\n\t\tif (useScriptCloseSafePoints && processUntilSafePoint(safeEnd)) return true;\n\t\tcloseCarry = partial === void 0 ? void 0 : value.slice(partial);\n\t\treturn emitAppRange(safeEnd, false, true);\n\t}\n\tfunction processAppChunk() {\n\t\tif (appOffset >= appBytes.length) {\n\t\t\tfinishAppChunk();\n\t\t\treturn false;\n\t\t}\n\t\tinsertionBoundary = false;\n\t\tif (applicationPhase === ApplicationPhase.BeforeBoundary) return processUntilBarrier();\n\t\tif (applicationPhase === ApplicationPhase.Merge) return processUntilDocumentClose();\n\t\tconst value = appBytes;\n\t\tif (useScriptCloseSafePoints && processUntilSafePoint(value.length)) return true;\n\t\treturn emitAppRange(value.length, false);\n\t}\n\tfunction terminate(kind, reason) {\n\t\tif (terminal) return;\n\t\tterminal = true;\n\t\tstopHydrationOutputListener?.();\n\t\tstopHydrationOutputListener = void 0;\n\t\tdisarmLifecycle();\n\t\tsettledAppRead = void 0;\n\t\tappBytes = void 0;\n\t\tdocumentCloseIndex = void 0;\n\t\tappString = void 0;\n\t\tcloseCarry = void 0;\n\t\twakePump();\n\t\treturn finalizeSsrStream(kind, reason, controller, reader, serverSsr, opts?.onAbort);\n\t}\n\tfunction startAppRead() {\n\t\tif (appReadPending || settledAppRead || terminal) return;\n\t\tappReadPending = true;\n\t\treader.read().then((result) => {\n\t\t\tappReadPending = false;\n\t\t\tif (!terminal) {\n\t\t\t\tif (result.done) acceptAppRead(result);\n\t\t\t\telse settledAppRead = result;\n\t\t\t\twakePump();\n\t\t\t}\n\t\t}, (error) => {\n\t\t\tappReadPending = false;\n\t\t\tif (!terminal) handlePumpError(error);\n\t\t});\n\t}\n\tfunction acceptAppRead(result) {\n\t\tif (result.done) {\n\t\t\tappDone = true;\n\t\t\tinsertionBoundary = closeCarry === void 0;\n\t\t\thydrationScripts.startSerializationTimeout(opts?.timeoutMs ?? DEFAULT_SERIALIZATION_TIMEOUT_MS);\n\t\t\tserverSsr.setRenderFinished();\n\t\t\treturn;\n\t\t}\n\t\tconst value = result.value;\n\t\tif (typeof value === \"string\") {\n\t\t\tif (value.length === 0) return;\n\t\t\tappString = value;\n\t\t\tappStringOffset = 0;\n\t\t\tinsertionBoundary = false;\n\t\t\tloadNextAppStringChunk();\n\t\t\treturn;\n\t\t}\n\t\tif (value.byteLength === 0) return;\n\t\tappBytes = value;\n\t\tappOffset = 0;\n\t\tinsertionBoundary = false;\n\t}\n\tasync function loadNextAppChunk() {\n\t\tif (appString !== void 0) {\n\t\t\tloadNextAppStringChunk();\n\t\t\treturn;\n\t\t}\n\t\tif (settledAppRead) {\n\t\t\tconst settled = settledAppRead;\n\t\t\tsettledAppRead = void 0;\n\t\t\tacceptAppRead(settled);\n\t\t\treturn;\n\t\t}\n\t\tif (!(applicationPhase !== ApplicationPhase.BeforeBoundary && insertionBoundary && hydrationOutput.state !== HydrationScriptOutputState.Done) && !appReadPending) {\n\t\t\tconst result = await reader.read();\n\t\t\tif (terminal) return;\n\t\t\tacceptAppRead(result);\n\t\t\treturn;\n\t\t}\n\t\tconst wake = waitForWake();\n\t\tstartAppRead();\n\t\tawait wake;\n\t}\n\tasync function pumpPassThrough() {\n\t\ttry {\n\t\t\tfor (;;) {\n\t\t\t\tif (appBytes) {\n\t\t\t\t\tconst remainder = appOffset === 0 ? appBytes : appBytes.subarray(appOffset);\n\t\t\t\t\tappBytes = void 0;\n\t\t\t\t\tif (enqueueAppBytes(remainder)) return;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (appString !== void 0) {\n\t\t\t\t\tloadNextAppStringChunk();\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (appDone) {\n\t\t\t\t\tterminate(\"complete\");\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (appReadPending) {\n\t\t\t\t\tawait waitForWake();\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tlet result = settledAppRead;\n\t\t\t\tif (result) settledAppRead = void 0;\n\t\t\t\telse {\n\t\t\t\t\tresult = await reader.read();\n\t\t\t\t\tif (terminal) return;\n\t\t\t\t}\n\t\t\t\tif (result.done || typeof result.value === \"string\") {\n\t\t\t\t\tacceptAppRead(result);\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (result.value.byteLength > 0) {\n\t\t\t\t\tcontroller.enqueue(result.value);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\thandlePumpError(error);\n\t\t}\n\t}\n\tasync function pump() {\n\t\tconst output = hydrationOutput;\n\t\twhile (!terminal) {\n\t\t\tconst hydrationState = output.state;\n\t\t\tif (hydrationState === HydrationScriptOutputState.Active) {\n\t\t\t\tcontroller.enqueue(output.pullChunk());\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (applicationPhase !== ApplicationPhase.BeforeBoundary && insertionBoundary && hydrationState === HydrationScriptOutputState.Ready) {\n\t\t\t\tif (!appDone && !appBytes && appString === void 0) startAppRead();\n\t\t\t\tcontroller.enqueue(output.pullChunk());\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (applicationPhase === ApplicationPhase.Merge && hydrationState === HydrationScriptOutputState.Done && closeCarry === void 0 && hydrationScripts.reserveFastPath(output)) {\n\t\t\t\tapplicationPhase = ApplicationPhase.PassThrough;\n\t\t\t\tstopHydrationOutputListener?.();\n\t\t\t\tstopHydrationOutputListener = void 0;\n\t\t\t\treturn pumpPassThrough();\n\t\t\t}\n\t\t\tif (appBytes) {\n\t\t\t\tif (processAppChunk()) return;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (appDone) {\n\t\t\t\tif (applicationPhase === ApplicationPhase.BeforeBoundary) {\n\t\t\t\t\thydrationScripts.skipInitialTake();\n\t\t\t\t\tapplicationPhase = ApplicationPhase.Merge;\n\t\t\t\t\tinsertionBoundary = true;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (closeCarry) {\n\t\t\t\t\tconst carry = closeCarry;\n\t\t\t\t\tcloseCarry = void 0;\n\t\t\t\t\tinsertionBoundary = true;\n\t\t\t\t\tif (enqueueAppBytes(carry)) return;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (hydrationState === HydrationScriptOutputState.Waiting) {\n\t\t\t\t\tawait waitForWake();\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (applicationPhase === ApplicationPhase.HeldClose) {\n\t\t\t\t\tcontroller.enqueue(DOCUMENT_CLOSE_BYTES.slice());\n\t\t\t\t\tterminate(\"complete\");\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tterminate(\"complete\");\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tawait loadNextAppChunk();\n\t\t}\n\t}\n\tfunction handlePumpError(error) {\n\t\tif (terminal) return;\n\t\tconsole.error(\"Error processing appStream:\", error);\n\t\tterminate(\"failure\", error);\n\t}\n\tconst stream = new ReadableStream({\n\t\tstart(c) {\n\t\t\tcontroller = c;\n\t\t},\n\t\tpull() {\n\t\t\treturn applicationPhase === ApplicationPhase.PassThrough ? pumpPassThrough() : pump().catch(handlePumpError);\n\t\t},\n\t\tcancel(reason) {\n\t\t\treturn terminate(\"cancel\", reason);\n\t\t}\n\t});\n\tif (hydrationOutput) stopHydrationOutputListener = hydrationOutput.subscribe(() => {\n\t\tif (hydrationOutput.state === HydrationScriptOutputState.Failed) {\n\t\t\tterminate(\"failure\", hydrationOutput.error);\n\t\t\treturn;\n\t\t}\n\t\twakePump();\n\t});\n\tdisarmLifecycle = armStreamLifecycle(serverSsr, opts, () => terminal, terminate);\n\treturn stream;\n}\n//#endregion\nexport { transformHtmlStringWithRouter, transformPipeableStreamWithRouter, transformReadableStreamWithRouter };\n\n//# sourceMappingURL=transformStreamWithRouter.js.map","/**\n * @license React\n * react-dom-server.edge.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n\n\n JS Implementation of MurmurHash3 (r136) (as of May 20, 2011)\n\n Copyright (c) 2011 Gary Court\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n*/\n\"use strict\";\nvar React = require(\"react\"),\n ReactDOM = require(\"react-dom\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_SCOPE_TYPE = Symbol.for(\"react.scope\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_LEGACY_HIDDEN_TYPE = Symbol.for(\"react.legacy_hidden\"),\n REACT_MEMO_CACHE_SENTINEL = Symbol.for(\"react.memo_cache_sentinel\"),\n REACT_VIEW_TRANSITION_TYPE = Symbol.for(\"react.view_transition\"),\n REACT_RECOVERABLE_TYPE = Symbol.for(\"react.recoverable\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar REACT_OPTIMISTIC_KEY = Symbol.for(\"react.optimistic_key\"),\n isArrayImpl = Array.isArray;\nfunction murmurhash3_32_gc(key, seed) {\n var remainder = key.length & 3;\n var bytes = key.length - remainder;\n var h1 = seed;\n for (seed = 0; seed < bytes; ) {\n var k1 =\n (key.charCodeAt(seed) & 255) |\n ((key.charCodeAt(++seed) & 255) << 8) |\n ((key.charCodeAt(++seed) & 255) << 16) |\n ((key.charCodeAt(++seed) & 255) << 24);\n ++seed;\n k1 =\n (3432918353 * (k1 & 65535) +\n (((3432918353 * (k1 >>> 16)) & 65535) << 16)) &\n 4294967295;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 =\n (461845907 * (k1 & 65535) + (((461845907 * (k1 >>> 16)) & 65535) << 16)) &\n 4294967295;\n h1 ^= k1;\n h1 = (h1 << 13) | (h1 >>> 19);\n h1 = (5 * (h1 & 65535) + (((5 * (h1 >>> 16)) & 65535) << 16)) & 4294967295;\n h1 = (h1 & 65535) + 27492 + ((((h1 >>> 16) + 58964) & 65535) << 16);\n }\n k1 = 0;\n switch (remainder) {\n case 3:\n k1 ^= (key.charCodeAt(seed + 2) & 255) << 16;\n case 2:\n k1 ^= (key.charCodeAt(seed + 1) & 255) << 8;\n case 1:\n (k1 ^= key.charCodeAt(seed) & 255),\n (k1 =\n (3432918353 * (k1 & 65535) +\n (((3432918353 * (k1 >>> 16)) & 65535) << 16)) &\n 4294967295),\n (k1 = (k1 << 15) | (k1 >>> 17)),\n (h1 ^=\n (461845907 * (k1 & 65535) +\n (((461845907 * (k1 >>> 16)) & 65535) << 16)) &\n 4294967295);\n }\n h1 ^= key.length;\n h1 ^= h1 >>> 16;\n h1 =\n (2246822507 * (h1 & 65535) + (((2246822507 * (h1 >>> 16)) & 65535) << 16)) &\n 4294967295;\n h1 ^= h1 >>> 13;\n h1 =\n (3266489909 * (h1 & 65535) + (((3266489909 * (h1 >>> 16)) & 65535) << 16)) &\n 4294967295;\n return (h1 ^ (h1 >>> 16)) >>> 0;\n}\nfunction handleErrorInNextTick(error) {\n setTimeout(function () {\n throw error;\n });\n}\nvar LocalPromise = Promise,\n scheduleMicrotask =\n \"function\" === typeof queueMicrotask\n ? queueMicrotask\n : function (callback) {\n LocalPromise.resolve(null)\n .then(callback)\n .catch(handleErrorInNextTick);\n },\n currentView = null,\n writtenBytes = 0;\nfunction writeChunk(destination, chunk) {\n if (0 !== chunk.byteLength)\n if (4096 < chunk.byteLength)\n 0 < writtenBytes &&\n (destination.enqueue(\n new Uint8Array(currentView.buffer, 0, writtenBytes)\n ),\n (currentView = new Uint8Array(4096)),\n (writtenBytes = 0)),\n destination.enqueue(chunk);\n else {\n var allowableBytes = currentView.length - writtenBytes;\n allowableBytes < chunk.byteLength &&\n (0 === allowableBytes\n ? destination.enqueue(currentView)\n : (currentView.set(chunk.subarray(0, allowableBytes), writtenBytes),\n destination.enqueue(currentView),\n (chunk = chunk.subarray(allowableBytes))),\n (currentView = new Uint8Array(4096)),\n (writtenBytes = 0));\n currentView.set(chunk, writtenBytes);\n writtenBytes += chunk.byteLength;\n }\n}\nfunction writeChunkAndReturn(destination, chunk) {\n writeChunk(destination, chunk);\n return !0;\n}\nfunction completeWriting(destination) {\n currentView &&\n 0 < writtenBytes &&\n (destination.enqueue(new Uint8Array(currentView.buffer, 0, writtenBytes)),\n (currentView = null),\n (writtenBytes = 0));\n}\nvar textEncoder = new TextEncoder();\nfunction stringToChunk(content) {\n return textEncoder.encode(content);\n}\nfunction stringToPrecomputedChunk(content) {\n return textEncoder.encode(content);\n}\nfunction byteLengthOfChunk(chunk) {\n return chunk.byteLength;\n}\nfunction closeWithError(destination, error) {\n \"function\" === typeof destination.error\n ? destination.error(error)\n : destination.close();\n}\nvar assign = Object.assign,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n VALID_ATTRIBUTE_NAME_REGEX = RegExp(\n \"^[:A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD][:A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\\\\-.0-9\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040]*$\"\n ),\n illegalAttributeNameCache = {},\n validatedAttributeNameCache = {};\nfunction isAttributeNameSafe(attributeName) {\n if (hasOwnProperty.call(validatedAttributeNameCache, attributeName))\n return !0;\n if (hasOwnProperty.call(illegalAttributeNameCache, attributeName)) return !1;\n if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName))\n return (validatedAttributeNameCache[attributeName] = !0);\n illegalAttributeNameCache[attributeName] = !0;\n return !1;\n}\nvar unitlessNumbers = new Set(\n \"animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp\".split(\n \" \"\n )\n ),\n aliases = new Map([\n [\"acceptCharset\", \"accept-charset\"],\n [\"htmlFor\", \"for\"],\n [\"httpEquiv\", \"http-equiv\"],\n [\"crossOrigin\", \"crossorigin\"],\n [\"accentHeight\", \"accent-height\"],\n [\"alignmentBaseline\", \"alignment-baseline\"],\n [\"arabicForm\", \"arabic-form\"],\n [\"baselineShift\", \"baseline-shift\"],\n [\"capHeight\", \"cap-height\"],\n [\"clipPath\", \"clip-path\"],\n [\"clipRule\", \"clip-rule\"],\n [\"colorInterpolation\", \"color-interpolation\"],\n [\"colorInterpolationFilters\", \"color-interpolation-filters\"],\n [\"colorProfile\", \"color-profile\"],\n [\"colorRendering\", \"color-rendering\"],\n [\"dominantBaseline\", \"dominant-baseline\"],\n [\"enableBackground\", \"enable-background\"],\n [\"fillOpacity\", \"fill-opacity\"],\n [\"fillRule\", \"fill-rule\"],\n [\"floodColor\", \"flood-color\"],\n [\"floodOpacity\", \"flood-opacity\"],\n [\"fontFamily\", \"font-family\"],\n [\"fontSize\", \"font-size\"],\n [\"fontSizeAdjust\", \"font-size-adjust\"],\n [\"fontStretch\", \"font-stretch\"],\n [\"fontStyle\", \"font-style\"],\n [\"fontVariant\", \"font-variant\"],\n [\"fontWeight\", \"font-weight\"],\n [\"glyphName\", \"glyph-name\"],\n [\"glyphOrientationHorizontal\", \"glyph-orientation-horizontal\"],\n [\"glyphOrientationVertical\", \"glyph-orientation-vertical\"],\n [\"horizAdvX\", \"horiz-adv-x\"],\n [\"horizOriginX\", \"horiz-origin-x\"],\n [\"imageRendering\", \"image-rendering\"],\n [\"letterSpacing\", \"letter-spacing\"],\n [\"lightingColor\", \"lighting-color\"],\n [\"markerEnd\", \"marker-end\"],\n [\"markerMid\", \"marker-mid\"],\n [\"markerStart\", \"marker-start\"],\n [\"maskType\", \"mask-type\"],\n [\"overlinePosition\", \"overline-position\"],\n [\"overlineThickness\", \"overline-thickness\"],\n [\"paintOrder\", \"paint-order\"],\n [\"panose-1\", \"panose-1\"],\n [\"pointerEvents\", \"pointer-events\"],\n [\"renderingIntent\", \"rendering-intent\"],\n [\"shapeRendering\", \"shape-rendering\"],\n [\"stopColor\", \"stop-color\"],\n [\"stopOpacity\", \"stop-opacity\"],\n [\"strikethroughPosition\", \"strikethrough-position\"],\n [\"strikethroughThickness\", \"strikethrough-thickness\"],\n [\"strokeDasharray\", \"stroke-dasharray\"],\n [\"strokeDashoffset\", \"stroke-dashoffset\"],\n [\"strokeLinecap\", \"stroke-linecap\"],\n [\"strokeLinejoin\", \"stroke-linejoin\"],\n [\"strokeMiterlimit\", \"stroke-miterlimit\"],\n [\"strokeOpacity\", \"stroke-opacity\"],\n [\"strokeWidth\", \"stroke-width\"],\n [\"textAnchor\", \"text-anchor\"],\n [\"textDecoration\", \"text-decoration\"],\n [\"textRendering\", \"text-rendering\"],\n [\"transformOrigin\", \"transform-origin\"],\n [\"underlinePosition\", \"underline-position\"],\n [\"underlineThickness\", \"underline-thickness\"],\n [\"unicodeBidi\", \"unicode-bidi\"],\n [\"unicodeRange\", \"unicode-range\"],\n [\"unitsPerEm\", \"units-per-em\"],\n [\"vAlphabetic\", \"v-alphabetic\"],\n [\"vHanging\", \"v-hanging\"],\n [\"vIdeographic\", \"v-ideographic\"],\n [\"vMathematical\", \"v-mathematical\"],\n [\"vectorEffect\", \"vector-effect\"],\n [\"vertAdvY\", \"vert-adv-y\"],\n [\"vertOriginX\", \"vert-origin-x\"],\n [\"vertOriginY\", \"vert-origin-y\"],\n [\"wordSpacing\", \"word-spacing\"],\n [\"writingMode\", \"writing-mode\"],\n [\"xmlnsXlink\", \"xmlns:xlink\"],\n [\"xHeight\", \"x-height\"]\n ]),\n matchHtmlRegExp = /[\"'&<>]/;\nfunction escapeTextForBrowser(text) {\n if (\n \"boolean\" === typeof text ||\n \"number\" === typeof text ||\n \"bigint\" === typeof text\n )\n return \"\" + text;\n text = \"\" + text;\n var match = matchHtmlRegExp.exec(text);\n if (match) {\n var html = \"\",\n index,\n lastIndex = 0;\n for (index = match.index; index < text.length; index++) {\n switch (text.charCodeAt(index)) {\n case 34:\n match = \"&quot;\";\n break;\n case 38:\n match = \"&amp;\";\n break;\n case 39:\n match = \"&#x27;\";\n break;\n case 60:\n match = \"&lt;\";\n break;\n case 62:\n match = \"&gt;\";\n break;\n default:\n continue;\n }\n lastIndex !== index && (html += text.slice(lastIndex, index));\n lastIndex = index + 1;\n html += match;\n }\n text = lastIndex !== index ? html + text.slice(lastIndex, index) : html;\n }\n return text;\n}\nvar uppercasePattern = /([A-Z])/g,\n msPattern = /^ms-/,\n isJavaScriptProtocol =\n /^[\\u0000-\\u001F ]*j[\\r\\n\\t]*a[\\r\\n\\t]*v[\\r\\n\\t]*a[\\r\\n\\t]*s[\\r\\n\\t]*c[\\r\\n\\t]*r[\\r\\n\\t]*i[\\r\\n\\t]*p[\\r\\n\\t]*t[\\r\\n\\t]*:/i;\nfunction sanitizeURL(url) {\n return isJavaScriptProtocol.test(\"\" + url)\n ? \"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')\"\n : url;\n}\nvar ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n ReactDOMSharedInternals =\n ReactDOM.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n sharedNotPendingObject = {\n pending: !1,\n data: null,\n method: null,\n action: null\n },\n previousDispatcher = ReactDOMSharedInternals.d;\nReactDOMSharedInternals.d = {\n f: previousDispatcher.f,\n r: previousDispatcher.r,\n D: prefetchDNS,\n C: preconnect,\n L: preload,\n m: preloadModule,\n X: preinitScript,\n S: preinitStyle,\n M: preinitModuleScript\n};\nvar PRELOAD_NO_CREDS = [],\n currentlyFlushingRenderState = null;\nstringToPrecomputedChunk('\"></template>');\nvar startInlineScript = stringToPrecomputedChunk(\"<script\"),\n endInlineScript = stringToPrecomputedChunk(\"\\x3c/script>\"),\n startScriptSrc = stringToPrecomputedChunk('<script src=\"'),\n startModuleSrc = stringToPrecomputedChunk('<script type=\"module\" src=\"'),\n scriptNonce = stringToPrecomputedChunk(' nonce=\"'),\n scriptIntegirty = stringToPrecomputedChunk(' integrity=\"'),\n scriptCrossOrigin = stringToPrecomputedChunk(' crossorigin=\"'),\n endAsyncScript = stringToPrecomputedChunk(' async=\"\">\\x3c/script>'),\n startInlineStyle = stringToPrecomputedChunk(\"<style\"),\n scriptRegex = /(<\\/|<)(s)(cript)/gi;\nfunction scriptReplacer(match, prefix, s, suffix) {\n return \"\" + prefix + (\"s\" === s ? \"\\\\u0073\" : \"\\\\u0053\") + suffix;\n}\nvar importMapScriptStart = stringToPrecomputedChunk(\n '<script type=\"importmap\">'\n ),\n importMapScriptEnd = stringToPrecomputedChunk(\"\\x3c/script>\");\nfunction createRenderState(\n resumableState,\n nonce,\n externalRuntimeConfig,\n importMap,\n onHeaders,\n maxHeadersLength\n) {\n externalRuntimeConfig =\n \"string\" === typeof nonce ? nonce : nonce && nonce.script;\n var inlineScriptWithNonce =\n void 0 === externalRuntimeConfig\n ? startInlineScript\n : stringToPrecomputedChunk(\n '<script nonce=\"' +\n escapeTextForBrowser(externalRuntimeConfig) +\n '\"'\n ),\n nonceStyle = \"string\" === typeof nonce ? void 0 : nonce && nonce.style,\n inlineStyleWithNonce =\n void 0 === nonceStyle\n ? startInlineStyle\n : stringToPrecomputedChunk(\n '<style nonce=\"' + escapeTextForBrowser(nonceStyle) + '\"'\n ),\n idPrefix = resumableState.idPrefix,\n bootstrapChunks = [],\n bootstrapScriptContent = resumableState.bootstrapScriptContent,\n bootstrapScripts = resumableState.bootstrapScripts,\n bootstrapModules = resumableState.bootstrapModules;\n void 0 !== bootstrapScriptContent &&\n (bootstrapChunks.push(inlineScriptWithNonce),\n pushCompletedShellIdAttribute(bootstrapChunks, resumableState),\n bootstrapChunks.push(\n endOfStartTag,\n stringToChunk(\n (\"\" + bootstrapScriptContent).replace(scriptRegex, scriptReplacer)\n ),\n endInlineScript\n ));\n bootstrapScriptContent = [];\n void 0 !== importMap &&\n (bootstrapScriptContent.push(\n void 0 === externalRuntimeConfig\n ? importMapScriptStart\n : stringToPrecomputedChunk(\n '<script type=\"importmap\" nonce=\"' +\n escapeTextForBrowser(externalRuntimeConfig) +\n '\">'\n )\n ),\n bootstrapScriptContent.push(\n stringToChunk(\n (\"\" + JSON.stringify(importMap)).replace(scriptRegex, scriptReplacer)\n )\n ),\n bootstrapScriptContent.push(importMapScriptEnd));\n importMap = onHeaders\n ? {\n preconnects: \"\",\n fontPreloads: \"\",\n highImagePreloads: \"\",\n remainingCapacity:\n 2 + (\"number\" === typeof maxHeadersLength ? maxHeadersLength : 2e3)\n }\n : null;\n onHeaders = {\n placeholderPrefix: stringToPrecomputedChunk(idPrefix + \"P:\"),\n segmentPrefix: stringToPrecomputedChunk(idPrefix + \"S:\"),\n boundaryPrefix: stringToPrecomputedChunk(idPrefix + \"B:\"),\n startInlineScript: inlineScriptWithNonce,\n startInlineStyle: inlineStyleWithNonce,\n preamble: createPreambleState(),\n externalRuntimeScript: null,\n bootstrapChunks: bootstrapChunks,\n importMapChunks: bootstrapScriptContent,\n onHeaders: onHeaders,\n headers: importMap,\n resets: {\n font: {},\n dns: {},\n connect: { default: {}, anonymous: {}, credentials: {} },\n image: {},\n style: {}\n },\n charsetChunks: [],\n viewportChunks: [],\n hoistableChunks: [],\n preconnects: new Set(),\n fontPreloads: new Set(),\n highImagePreloads: new Set(),\n styles: new Map(),\n bootstrapScripts: new Set(),\n scripts: new Set(),\n bulkPreloads: new Set(),\n preloads: {\n images: new Map(),\n stylesheets: new Map(),\n scripts: new Map(),\n moduleScripts: new Map()\n },\n nonce: { script: externalRuntimeConfig, style: nonceStyle },\n hoistableState: null,\n stylesToHoist: !1\n };\n if (void 0 !== bootstrapScripts)\n for (importMap = 0; importMap < bootstrapScripts.length; importMap++)\n (idPrefix = bootstrapScripts[importMap]),\n (nonceStyle = inlineScriptWithNonce = void 0),\n (inlineStyleWithNonce = {\n rel: \"preload\",\n as: \"script\",\n fetchPriority: \"low\",\n nonce: nonce\n }),\n \"string\" === typeof idPrefix\n ? (inlineStyleWithNonce.href = maxHeadersLength = idPrefix)\n : ((inlineStyleWithNonce.href = maxHeadersLength = idPrefix.src),\n (inlineStyleWithNonce.integrity = nonceStyle =\n \"string\" === typeof idPrefix.integrity\n ? idPrefix.integrity\n : void 0),\n (inlineStyleWithNonce.crossOrigin = inlineScriptWithNonce =\n \"string\" === typeof idPrefix || null == idPrefix.crossOrigin\n ? void 0\n : \"use-credentials\" === idPrefix.crossOrigin\n ? \"use-credentials\"\n : \"\")),\n (idPrefix = resumableState),\n (bootstrapScriptContent = maxHeadersLength),\n (idPrefix.scriptResources[bootstrapScriptContent] = null),\n (idPrefix.moduleScriptResources[bootstrapScriptContent] = null),\n (idPrefix = []),\n pushLinkImpl(idPrefix, inlineStyleWithNonce),\n onHeaders.bootstrapScripts.add(idPrefix),\n bootstrapChunks.push(\n startScriptSrc,\n stringToChunk(escapeTextForBrowser(maxHeadersLength)),\n attributeEnd\n ),\n externalRuntimeConfig &&\n bootstrapChunks.push(\n scriptNonce,\n stringToChunk(escapeTextForBrowser(externalRuntimeConfig)),\n attributeEnd\n ),\n \"string\" === typeof nonceStyle &&\n bootstrapChunks.push(\n scriptIntegirty,\n stringToChunk(escapeTextForBrowser(nonceStyle)),\n attributeEnd\n ),\n \"string\" === typeof inlineScriptWithNonce &&\n bootstrapChunks.push(\n scriptCrossOrigin,\n stringToChunk(escapeTextForBrowser(inlineScriptWithNonce)),\n attributeEnd\n ),\n pushCompletedShellIdAttribute(bootstrapChunks, resumableState),\n bootstrapChunks.push(endAsyncScript);\n if (void 0 !== bootstrapModules)\n for (nonce = 0; nonce < bootstrapModules.length; nonce++)\n (nonceStyle = bootstrapModules[nonce]),\n (maxHeadersLength = importMap = void 0),\n (inlineScriptWithNonce = {\n rel: \"modulepreload\",\n fetchPriority: \"low\",\n nonce: externalRuntimeConfig\n }),\n \"string\" === typeof nonceStyle\n ? (inlineScriptWithNonce.href = bootstrapScripts = nonceStyle)\n : ((inlineScriptWithNonce.href = bootstrapScripts = nonceStyle.src),\n (inlineScriptWithNonce.integrity = maxHeadersLength =\n \"string\" === typeof nonceStyle.integrity\n ? nonceStyle.integrity\n : void 0),\n (inlineScriptWithNonce.crossOrigin = importMap =\n \"string\" === typeof nonceStyle || null == nonceStyle.crossOrigin\n ? void 0\n : \"use-credentials\" === nonceStyle.crossOrigin\n ? \"use-credentials\"\n : \"\")),\n (nonceStyle = resumableState),\n (inlineStyleWithNonce = bootstrapScripts),\n (nonceStyle.scriptResources[inlineStyleWithNonce] = null),\n (nonceStyle.moduleScriptResources[inlineStyleWithNonce] = null),\n (nonceStyle = []),\n pushLinkImpl(nonceStyle, inlineScriptWithNonce),\n onHeaders.bootstrapScripts.add(nonceStyle),\n bootstrapChunks.push(\n startModuleSrc,\n stringToChunk(escapeTextForBrowser(bootstrapScripts)),\n attributeEnd\n ),\n externalRuntimeConfig &&\n bootstrapChunks.push(\n scriptNonce,\n stringToChunk(escapeTextForBrowser(externalRuntimeConfig)),\n attributeEnd\n ),\n \"string\" === typeof maxHeadersLength &&\n bootstrapChunks.push(\n scriptIntegirty,\n stringToChunk(escapeTextForBrowser(maxHeadersLength)),\n attributeEnd\n ),\n \"string\" === typeof importMap &&\n bootstrapChunks.push(\n scriptCrossOrigin,\n stringToChunk(escapeTextForBrowser(importMap)),\n attributeEnd\n ),\n pushCompletedShellIdAttribute(bootstrapChunks, resumableState),\n bootstrapChunks.push(endAsyncScript);\n return onHeaders;\n}\nfunction createResumableState(\n identifierPrefix,\n externalRuntimeConfig,\n bootstrapScriptContent,\n bootstrapScripts,\n bootstrapModules\n) {\n return {\n idPrefix: void 0 === identifierPrefix ? \"\" : identifierPrefix,\n nextFormID: 0,\n streamingFormat: 0,\n bootstrapScriptContent: bootstrapScriptContent,\n bootstrapScripts: bootstrapScripts,\n bootstrapModules: bootstrapModules,\n instructions: 0,\n hasBody: !1,\n hasHtml: !1,\n unknownResources: {},\n dnsResources: {},\n connectResources: { default: {}, anonymous: {}, credentials: {} },\n imageResources: {},\n styleResources: {},\n scriptResources: {},\n moduleUnknownResources: {},\n moduleScriptResources: {}\n };\n}\nfunction createPreambleState() {\n return { htmlChunks: null, headChunks: null, bodyChunks: null };\n}\nfunction createFormatContext(\n insertionMode,\n selectedValue,\n tagScope,\n viewTransition\n) {\n return {\n insertionMode: insertionMode,\n selectedValue: selectedValue,\n tagScope: tagScope,\n viewTransition: viewTransition\n };\n}\nfunction createRootFormatContext(namespaceURI) {\n return createFormatContext(\n \"http://www.w3.org/2000/svg\" === namespaceURI\n ? 4\n : \"http://www.w3.org/1998/Math/MathML\" === namespaceURI\n ? 5\n : 0,\n null,\n 0,\n null\n );\n}\nfunction getChildFormatContext(parentContext, type, props) {\n var subtreeScope = parentContext.tagScope & -25;\n switch (type) {\n case \"noscript\":\n return createFormatContext(2, null, subtreeScope | 1, null);\n case \"select\":\n return createFormatContext(\n 2,\n null != props.value ? props.value : props.defaultValue,\n subtreeScope,\n null\n );\n case \"svg\":\n return createFormatContext(4, null, subtreeScope, null);\n case \"picture\":\n return createFormatContext(2, null, subtreeScope | 2, null);\n case \"math\":\n return createFormatContext(5, null, subtreeScope, null);\n case \"foreignObject\":\n return createFormatContext(2, null, subtreeScope, null);\n case \"table\":\n return createFormatContext(6, null, subtreeScope, null);\n case \"thead\":\n case \"tbody\":\n case \"tfoot\":\n return createFormatContext(7, null, subtreeScope, null);\n case \"colgroup\":\n return createFormatContext(9, null, subtreeScope, null);\n case \"tr\":\n return createFormatContext(8, null, subtreeScope, null);\n case \"head\":\n if (2 > parentContext.insertionMode)\n return createFormatContext(3, null, subtreeScope, null);\n break;\n case \"html\":\n if (0 === parentContext.insertionMode)\n return createFormatContext(1, null, subtreeScope, null);\n }\n return 6 <= parentContext.insertionMode || 2 > parentContext.insertionMode\n ? createFormatContext(2, null, subtreeScope, null)\n : null !== parentContext.viewTransition ||\n parentContext.tagScope !== subtreeScope\n ? createFormatContext(\n parentContext.insertionMode,\n parentContext.selectedValue,\n subtreeScope,\n null\n )\n : parentContext;\n}\nfunction getSuspenseViewTransition(parentViewTransition) {\n return null === parentViewTransition\n ? null\n : {\n update: parentViewTransition.update,\n enter: \"none\",\n exit: \"none\",\n share: parentViewTransition.update,\n parentEnter: \"none\",\n parentExit: \"none\",\n name: parentViewTransition.autoName,\n autoName: parentViewTransition.autoName,\n nameIdx: 0\n };\n}\nfunction getSuspenseFallbackFormatContext(resumableState, parentContext) {\n parentContext.tagScope & 32 && (resumableState.instructions |= 128);\n return createFormatContext(\n parentContext.insertionMode,\n parentContext.selectedValue,\n parentContext.tagScope | 12,\n getSuspenseViewTransition(parentContext.viewTransition)\n );\n}\nfunction getSuspenseContentFormatContext(resumableState, parentContext) {\n resumableState = getSuspenseViewTransition(parentContext.viewTransition);\n var subtreeScope = parentContext.tagScope | 16;\n null !== resumableState &&\n \"none\" !== resumableState.share &&\n (subtreeScope |= 64);\n return createFormatContext(\n parentContext.insertionMode,\n parentContext.selectedValue,\n subtreeScope,\n resumableState\n );\n}\nfunction makeId(resumableState, treeId, localId) {\n resumableState = \"_\" + resumableState.idPrefix + \"R_\" + treeId;\n 0 < localId && (resumableState += \"H\" + localId.toString(32));\n return resumableState + \"_\";\n}\nvar textSeparator = stringToPrecomputedChunk(\"\\x3c!-- --\\x3e\");\nfunction pushTextInstance(target, text, renderState, textEmbedded) {\n if (\"\" === text) return textEmbedded;\n textEmbedded && target.push(textSeparator);\n target.push(stringToChunk(escapeTextForBrowser(text)));\n return !0;\n}\nfunction pushViewTransitionAttributes(target, formatContext) {\n formatContext = formatContext.viewTransition;\n null !== formatContext &&\n (\"auto\" !== formatContext.name &&\n (pushStringAttribute(\n target,\n \"vt-name\",\n 0 === formatContext.nameIdx\n ? formatContext.name\n : formatContext.name + \"_\" + formatContext.nameIdx\n ),\n formatContext.nameIdx++),\n pushStringAttribute(target, \"vt-update\", formatContext.update),\n \"none\" !== formatContext.enter &&\n pushStringAttribute(target, \"vt-enter\", formatContext.enter),\n \"none\" !== formatContext.exit &&\n pushStringAttribute(target, \"vt-exit\", formatContext.exit),\n \"none\" !== formatContext.share &&\n pushStringAttribute(target, \"vt-share\", formatContext.share));\n}\nvar styleNameCache = new Map(),\n styleAttributeStart = stringToPrecomputedChunk(' style=\"'),\n styleAssign = stringToPrecomputedChunk(\":\"),\n styleSeparator = stringToPrecomputedChunk(\";\");\nfunction pushStyleAttribute(target, style) {\n if (\"object\" !== typeof style)\n throw Error(\n \"The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX.\"\n );\n var isFirst = !0,\n styleName;\n for (styleName in style)\n if (hasOwnProperty.call(style, styleName)) {\n var styleValue = style[styleName];\n if (\n null != styleValue &&\n \"boolean\" !== typeof styleValue &&\n \"\" !== styleValue\n ) {\n if (0 === styleName.indexOf(\"--\")) {\n var nameChunk = stringToChunk(escapeTextForBrowser(styleName));\n styleValue = stringToChunk(\n escapeTextForBrowser((\"\" + styleValue).trim())\n );\n } else\n (nameChunk = styleNameCache.get(styleName)),\n void 0 === nameChunk &&\n ((nameChunk = stringToPrecomputedChunk(\n escapeTextForBrowser(\n styleName\n .replace(uppercasePattern, \"-$1\")\n .toLowerCase()\n .replace(msPattern, \"-ms-\")\n )\n )),\n styleNameCache.set(styleName, nameChunk)),\n (styleValue =\n \"number\" === typeof styleValue\n ? 0 === styleValue || unitlessNumbers.has(styleName)\n ? stringToChunk(\"\" + styleValue)\n : stringToChunk(styleValue + \"px\")\n : stringToChunk(\n escapeTextForBrowser((\"\" + styleValue).trim())\n ));\n isFirst\n ? ((isFirst = !1),\n target.push(\n styleAttributeStart,\n nameChunk,\n styleAssign,\n styleValue\n ))\n : target.push(styleSeparator, nameChunk, styleAssign, styleValue);\n }\n }\n isFirst || target.push(attributeEnd);\n}\nvar attributeSeparator = stringToPrecomputedChunk(\" \"),\n attributeAssign = stringToPrecomputedChunk('=\"'),\n attributeEnd = stringToPrecomputedChunk('\"'),\n attributeEmptyString = stringToPrecomputedChunk('=\"\"');\nfunction pushBooleanAttribute(target, name, value) {\n value &&\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n target.push(attributeSeparator, stringToChunk(name), attributeEmptyString);\n}\nfunction pushStringAttribute(target, name, value) {\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n \"boolean\" !== typeof value &&\n target.push(\n attributeSeparator,\n stringToChunk(name),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(value)),\n attributeEnd\n );\n}\nvar actionJavaScriptURL = stringToPrecomputedChunk(\n escapeTextForBrowser(\n \"javascript:throw new Error('React form unexpectedly submitted.')\"\n )\n ),\n startHiddenInputChunk = stringToPrecomputedChunk('<input type=\"hidden\"');\nfunction pushAdditionalFormField(value, key) {\n this.push(startHiddenInputChunk);\n validateAdditionalFormField(value);\n pushStringAttribute(this, \"name\", key);\n pushStringAttribute(this, \"value\", value);\n this.push(endOfStartTagSelfClosing);\n}\nfunction validateAdditionalFormField(value) {\n if (\"string\" !== typeof value)\n throw Error(\n \"File/Blob fields are not yet supported in progressive forms. Will fallback to client hydration.\"\n );\n}\nfunction getCustomFormFields(resumableState, formAction) {\n if (\"function\" === typeof formAction.$$FORM_ACTION) {\n var id = resumableState.nextFormID++;\n resumableState = resumableState.idPrefix + id;\n try {\n var customFields = formAction.$$FORM_ACTION(resumableState);\n if (customFields) {\n var formData = customFields.data;\n null != formData && formData.forEach(validateAdditionalFormField);\n }\n return customFields;\n } catch (x) {\n if (\"object\" === typeof x && null !== x && \"function\" === typeof x.then)\n throw x;\n }\n }\n return null;\n}\nfunction pushFormActionAttribute(\n target,\n resumableState,\n renderState,\n formAction,\n formEncType,\n formMethod,\n formTarget,\n name\n) {\n var formData = null;\n if (\"function\" === typeof formAction) {\n var customFields = getCustomFormFields(resumableState, formAction);\n null !== customFields\n ? ((name = customFields.name),\n (formAction = customFields.action || \"\"),\n (formEncType = customFields.encType),\n (formMethod = customFields.method),\n (formTarget = customFields.target),\n (formData = customFields.data))\n : (target.push(\n attributeSeparator,\n stringToChunk(\"formAction\"),\n attributeAssign,\n actionJavaScriptURL,\n attributeEnd\n ),\n (formTarget = formMethod = formEncType = formAction = name = null),\n injectFormReplayingRuntime(resumableState, renderState));\n }\n null != name && pushAttribute(target, \"name\", name);\n null != formAction && pushAttribute(target, \"formAction\", formAction);\n null != formEncType && pushAttribute(target, \"formEncType\", formEncType);\n null != formMethod && pushAttribute(target, \"formMethod\", formMethod);\n null != formTarget && pushAttribute(target, \"formTarget\", formTarget);\n return formData;\n}\nfunction pushAttribute(target, name, value) {\n switch (name) {\n case \"className\":\n pushStringAttribute(target, \"class\", value);\n break;\n case \"tabIndex\":\n pushStringAttribute(target, \"tabindex\", value);\n break;\n case \"dir\":\n case \"role\":\n case \"viewBox\":\n case \"width\":\n case \"height\":\n pushStringAttribute(target, name, value);\n break;\n case \"style\":\n pushStyleAttribute(target, value);\n break;\n case \"src\":\n case \"href\":\n if (\"\" === value) break;\n case \"action\":\n case \"formAction\":\n if (\n null == value ||\n \"function\" === typeof value ||\n \"symbol\" === typeof value ||\n \"boolean\" === typeof value\n )\n break;\n value = sanitizeURL(\"\" + value);\n target.push(\n attributeSeparator,\n stringToChunk(name),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(value)),\n attributeEnd\n );\n break;\n case \"defaultValue\":\n case \"defaultChecked\":\n case \"innerHTML\":\n case \"suppressContentEditableWarning\":\n case \"suppressHydrationWarning\":\n case \"ref\":\n break;\n case \"autoFocus\":\n case \"multiple\":\n case \"muted\":\n pushBooleanAttribute(target, name.toLowerCase(), value);\n break;\n case \"xlinkHref\":\n if (\n \"function\" === typeof value ||\n \"symbol\" === typeof value ||\n \"boolean\" === typeof value\n )\n break;\n value = sanitizeURL(\"\" + value);\n target.push(\n attributeSeparator,\n stringToChunk(\"xlink:href\"),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(value)),\n attributeEnd\n );\n break;\n case \"contentEditable\":\n case \"spellCheck\":\n case \"draggable\":\n case \"value\":\n case \"autoReverse\":\n case \"externalResourcesRequired\":\n case \"focusable\":\n case \"preserveAlpha\":\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n target.push(\n attributeSeparator,\n stringToChunk(name),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(value)),\n attributeEnd\n );\n break;\n case \"inert\":\n case \"allowFullScreen\":\n case \"async\":\n case \"autoPlay\":\n case \"controls\":\n case \"credentialless\":\n case \"default\":\n case \"defer\":\n case \"disabled\":\n case \"disablePictureInPicture\":\n case \"disableRemotePlayback\":\n case \"formNoValidate\":\n case \"hidden\":\n case \"loop\":\n case \"noModule\":\n case \"noValidate\":\n case \"open\":\n case \"playsInline\":\n case \"readOnly\":\n case \"required\":\n case \"reversed\":\n case \"scoped\":\n case \"seamless\":\n case \"itemScope\":\n value &&\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n target.push(\n attributeSeparator,\n stringToChunk(name),\n attributeEmptyString\n );\n break;\n case \"capture\":\n case \"download\":\n !0 === value\n ? target.push(\n attributeSeparator,\n stringToChunk(name),\n attributeEmptyString\n )\n : !1 !== value &&\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n target.push(\n attributeSeparator,\n stringToChunk(name),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(value)),\n attributeEnd\n );\n break;\n case \"cols\":\n case \"rows\":\n case \"size\":\n case \"span\":\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n !isNaN(value) &&\n 1 <= value &&\n target.push(\n attributeSeparator,\n stringToChunk(name),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(value)),\n attributeEnd\n );\n break;\n case \"rowSpan\":\n case \"start\":\n \"function\" === typeof value ||\n \"symbol\" === typeof value ||\n isNaN(value) ||\n target.push(\n attributeSeparator,\n stringToChunk(name),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(value)),\n attributeEnd\n );\n break;\n case \"xlinkActuate\":\n pushStringAttribute(target, \"xlink:actuate\", value);\n break;\n case \"xlinkArcrole\":\n pushStringAttribute(target, \"xlink:arcrole\", value);\n break;\n case \"xlinkRole\":\n pushStringAttribute(target, \"xlink:role\", value);\n break;\n case \"xlinkShow\":\n pushStringAttribute(target, \"xlink:show\", value);\n break;\n case \"xlinkTitle\":\n pushStringAttribute(target, \"xlink:title\", value);\n break;\n case \"xlinkType\":\n pushStringAttribute(target, \"xlink:type\", value);\n break;\n case \"xmlBase\":\n pushStringAttribute(target, \"xml:base\", value);\n break;\n case \"xmlLang\":\n pushStringAttribute(target, \"xml:lang\", value);\n break;\n case \"xmlSpace\":\n pushStringAttribute(target, \"xml:space\", value);\n break;\n default:\n if (\n !(2 < name.length) ||\n (\"o\" !== name[0] && \"O\" !== name[0]) ||\n (\"n\" !== name[1] && \"N\" !== name[1])\n )\n if (((name = aliases.get(name) || name), isAttributeNameSafe(name))) {\n switch (typeof value) {\n case \"function\":\n case \"symbol\":\n return;\n case \"boolean\":\n var prefix$8 = name.toLowerCase().slice(0, 5);\n if (\"data-\" !== prefix$8 && \"aria-\" !== prefix$8) return;\n }\n target.push(\n attributeSeparator,\n stringToChunk(name),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(value)),\n attributeEnd\n );\n }\n }\n}\nvar endOfStartTag = stringToPrecomputedChunk(\">\"),\n endOfStartTagSelfClosing = stringToPrecomputedChunk(\"/>\");\nfunction pushInnerHTML(target, innerHTML, children) {\n if (null != innerHTML) {\n if (null != children)\n throw Error(\n \"Can only set one of `children` or `props.dangerouslySetInnerHTML`.\"\n );\n if (\"object\" !== typeof innerHTML || !(\"__html\" in innerHTML))\n throw Error(\n \"`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.\"\n );\n innerHTML = innerHTML.__html;\n null !== innerHTML &&\n void 0 !== innerHTML &&\n target.push(stringToChunk(\"\" + innerHTML));\n }\n}\nfunction flattenOptionChildren(children) {\n var content = \"\";\n React.Children.forEach(children, function (child) {\n null != child && (content += child);\n });\n return content;\n}\nvar selectedMarkerAttribute = stringToPrecomputedChunk(' selected=\"\"'),\n formReplayingRuntimeScript = stringToPrecomputedChunk(\n 'addEventListener(\"submit\",function(a){if(!a.defaultPrevented){var b=a.target,d=a.submitter,c=b.action,e=d;if(d){var f=d.getAttribute(\"formAction\");null!=f&&(c=f,e=null)}\"javascript:throw new Error(\\'React form unexpectedly submitted.\\')\"===c&&(a.preventDefault(),a=new FormData(b,e),c=b.ownerDocument||b,(c.$$reactFormReplay=c.$$reactFormReplay||[]).push(b,d,a))}});'\n );\nfunction injectFormReplayingRuntime(resumableState, renderState) {\n if (0 === (resumableState.instructions & 16)) {\n resumableState.instructions |= 16;\n var preamble = renderState.preamble,\n bootstrapChunks = renderState.bootstrapChunks;\n (preamble.htmlChunks || preamble.headChunks) && 0 === bootstrapChunks.length\n ? (bootstrapChunks.push(renderState.startInlineScript),\n pushCompletedShellIdAttribute(bootstrapChunks, resumableState),\n bootstrapChunks.push(\n endOfStartTag,\n formReplayingRuntimeScript,\n endInlineScript\n ))\n : bootstrapChunks.unshift(\n renderState.startInlineScript,\n endOfStartTag,\n formReplayingRuntimeScript,\n endInlineScript\n );\n }\n}\nvar formStateMarkerIsMatching = stringToPrecomputedChunk(\"\\x3c!--F!--\\x3e\"),\n formStateMarkerIsNotMatching = stringToPrecomputedChunk(\"\\x3c!--F--\\x3e\");\nfunction pushLinkImpl(target, props) {\n target.push(startChunkForTag(\"link\"));\n for (var propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(\n \"link is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\"\n );\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n target.push(endOfStartTagSelfClosing);\n return null;\n}\nvar styleRegex = /(<\\/|<)(s)(tyle)/gi;\nfunction styleReplacer(match, prefix, s, suffix) {\n return \"\" + prefix + (\"s\" === s ? \"\\\\73 \" : \"\\\\53 \") + suffix;\n}\nfunction pushSelfClosing(target, props, tag, formatContext) {\n target.push(startChunkForTag(tag));\n for (var propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(\n tag +\n \" is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\"\n );\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n pushViewTransitionAttributes(target, formatContext);\n target.push(endOfStartTagSelfClosing);\n return null;\n}\nfunction pushTitleImpl(target, props) {\n target.push(startChunkForTag(\"title\"));\n var children = null,\n innerHTML = null,\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n children = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n target.push(endOfStartTag);\n props = Array.isArray(children)\n ? 2 > children.length\n ? children[0]\n : null\n : children;\n \"function\" !== typeof props &&\n \"symbol\" !== typeof props &&\n null !== props &&\n void 0 !== props &&\n target.push(stringToChunk(escapeTextForBrowser(\"\" + props)));\n pushInnerHTML(target, innerHTML, children);\n target.push(endChunkForTag(\"title\"));\n return null;\n}\nvar headPreambleContributionChunk =\n stringToPrecomputedChunk(\"\\x3c!--head--\\x3e\"),\n bodyPreambleContributionChunk = stringToPrecomputedChunk(\"\\x3c!--body--\\x3e\"),\n htmlPreambleContributionChunk = stringToPrecomputedChunk(\"\\x3c!--html--\\x3e\");\nfunction pushScriptImpl(target, props) {\n target.push(startChunkForTag(\"script\"));\n var children = null,\n innerHTML = null,\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n children = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n target.push(endOfStartTag);\n pushInnerHTML(target, innerHTML, children);\n \"string\" === typeof children &&\n target.push(\n stringToChunk((\"\" + children).replace(scriptRegex, scriptReplacer))\n );\n target.push(endChunkForTag(\"script\"));\n return null;\n}\nfunction pushStartSingletonElement(target, props, tag, formatContext) {\n target.push(startChunkForTag(tag));\n var innerHTML = (tag = null),\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n tag = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n pushViewTransitionAttributes(target, formatContext);\n target.push(endOfStartTag);\n pushInnerHTML(target, innerHTML, tag);\n return tag;\n}\nfunction pushStartGenericElement(target, props, tag, formatContext) {\n target.push(startChunkForTag(tag));\n var innerHTML = (tag = null),\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n tag = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n pushViewTransitionAttributes(target, formatContext);\n target.push(endOfStartTag);\n pushInnerHTML(target, innerHTML, tag);\n return \"string\" === typeof tag\n ? (target.push(stringToChunk(escapeTextForBrowser(tag))), null)\n : tag;\n}\nvar leadingNewline = stringToPrecomputedChunk(\"\\n\"),\n VALID_TAG_REGEX = /^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/,\n validatedTagCache = new Map();\nfunction startChunkForTag(tag) {\n var tagStartChunk = validatedTagCache.get(tag);\n if (void 0 === tagStartChunk) {\n if (!VALID_TAG_REGEX.test(tag)) throw Error(\"Invalid tag: \" + tag);\n tagStartChunk = stringToPrecomputedChunk(\"<\" + tag);\n validatedTagCache.set(tag, tagStartChunk);\n }\n return tagStartChunk;\n}\nvar doctypeChunk = stringToPrecomputedChunk(\"<!DOCTYPE html>\");\nfunction pushStartInstance(\n target$jscomp$0,\n type,\n props,\n resumableState,\n renderState,\n preambleState,\n hoistableState,\n formatContext,\n textEmbedded\n) {\n switch (type) {\n case \"div\":\n case \"span\":\n case \"svg\":\n case \"path\":\n break;\n case \"a\":\n target$jscomp$0.push(startChunkForTag(\"a\"));\n var children = null,\n innerHTML = null,\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n children = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n case \"href\":\n \"\" === propValue\n ? pushStringAttribute(target$jscomp$0, \"href\", \"\")\n : pushAttribute(target$jscomp$0, propKey, propValue);\n break;\n default:\n pushAttribute(target$jscomp$0, propKey, propValue);\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTag);\n pushInnerHTML(target$jscomp$0, innerHTML, children);\n if (\"string\" === typeof children) {\n target$jscomp$0.push(stringToChunk(escapeTextForBrowser(children)));\n var JSCompiler_inline_result = null;\n } else JSCompiler_inline_result = children;\n return JSCompiler_inline_result;\n case \"g\":\n case \"p\":\n case \"li\":\n break;\n case \"select\":\n target$jscomp$0.push(startChunkForTag(\"select\"));\n var children$jscomp$0 = null,\n innerHTML$jscomp$0 = null,\n propKey$jscomp$0;\n for (propKey$jscomp$0 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$0)) {\n var propValue$jscomp$0 = props[propKey$jscomp$0];\n if (null != propValue$jscomp$0)\n switch (propKey$jscomp$0) {\n case \"children\":\n children$jscomp$0 = propValue$jscomp$0;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$0 = propValue$jscomp$0;\n break;\n case \"defaultValue\":\n case \"value\":\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$0,\n propValue$jscomp$0\n );\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTag);\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$0, children$jscomp$0);\n return children$jscomp$0;\n case \"option\":\n var selectedValue = formatContext.selectedValue;\n target$jscomp$0.push(startChunkForTag(\"option\"));\n var children$jscomp$1 = null,\n value = null,\n selected = null,\n innerHTML$jscomp$1 = null,\n propKey$jscomp$1;\n for (propKey$jscomp$1 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$1)) {\n var propValue$jscomp$1 = props[propKey$jscomp$1];\n if (null != propValue$jscomp$1)\n switch (propKey$jscomp$1) {\n case \"children\":\n children$jscomp$1 = propValue$jscomp$1;\n break;\n case \"selected\":\n selected = propValue$jscomp$1;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$1 = propValue$jscomp$1;\n break;\n case \"value\":\n value = propValue$jscomp$1;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$1,\n propValue$jscomp$1\n );\n }\n }\n if (null != selectedValue) {\n var stringValue =\n null !== value\n ? \"\" + value\n : flattenOptionChildren(children$jscomp$1);\n if (isArrayImpl(selectedValue))\n for (var i = 0; i < selectedValue.length; i++) {\n if (\"\" + selectedValue[i] === stringValue) {\n target$jscomp$0.push(selectedMarkerAttribute);\n break;\n }\n }\n else\n \"\" + selectedValue === stringValue &&\n target$jscomp$0.push(selectedMarkerAttribute);\n } else selected && target$jscomp$0.push(selectedMarkerAttribute);\n target$jscomp$0.push(endOfStartTag);\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$1, children$jscomp$1);\n return children$jscomp$1;\n case \"textarea\":\n target$jscomp$0.push(startChunkForTag(\"textarea\"));\n var value$jscomp$0 = null,\n defaultValue = null,\n children$jscomp$2 = null,\n propKey$jscomp$2;\n for (propKey$jscomp$2 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$2)) {\n var propValue$jscomp$2 = props[propKey$jscomp$2];\n if (null != propValue$jscomp$2)\n switch (propKey$jscomp$2) {\n case \"children\":\n children$jscomp$2 = propValue$jscomp$2;\n break;\n case \"value\":\n value$jscomp$0 = propValue$jscomp$2;\n break;\n case \"defaultValue\":\n defaultValue = propValue$jscomp$2;\n break;\n case \"dangerouslySetInnerHTML\":\n throw Error(\n \"`dangerouslySetInnerHTML` does not make sense on <textarea>.\"\n );\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$2,\n propValue$jscomp$2\n );\n }\n }\n null === value$jscomp$0 &&\n null !== defaultValue &&\n (value$jscomp$0 = defaultValue);\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTag);\n if (null != children$jscomp$2) {\n if (null != value$jscomp$0)\n throw Error(\n \"If you supply `defaultValue` on a <textarea>, do not pass children.\"\n );\n if (isArrayImpl(children$jscomp$2)) {\n if (1 < children$jscomp$2.length)\n throw Error(\"<textarea> can only have at most one child.\");\n value$jscomp$0 = \"\" + children$jscomp$2[0];\n }\n value$jscomp$0 = \"\" + children$jscomp$2;\n }\n \"string\" === typeof value$jscomp$0 &&\n \"\\n\" === value$jscomp$0[0] &&\n target$jscomp$0.push(leadingNewline);\n null !== value$jscomp$0 &&\n target$jscomp$0.push(\n stringToChunk(escapeTextForBrowser(\"\" + value$jscomp$0))\n );\n return null;\n case \"input\":\n target$jscomp$0.push(startChunkForTag(\"input\"));\n var name = null,\n formAction = null,\n formEncType = null,\n formMethod = null,\n formTarget = null,\n value$jscomp$1 = null,\n defaultValue$jscomp$0 = null,\n checked = null,\n defaultChecked = null,\n propKey$jscomp$3;\n for (propKey$jscomp$3 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$3)) {\n var propValue$jscomp$3 = props[propKey$jscomp$3];\n if (null != propValue$jscomp$3)\n switch (propKey$jscomp$3) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(\n \"input is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\"\n );\n case \"name\":\n name = propValue$jscomp$3;\n break;\n case \"formAction\":\n formAction = propValue$jscomp$3;\n break;\n case \"formEncType\":\n formEncType = propValue$jscomp$3;\n break;\n case \"formMethod\":\n formMethod = propValue$jscomp$3;\n break;\n case \"formTarget\":\n formTarget = propValue$jscomp$3;\n break;\n case \"defaultChecked\":\n defaultChecked = propValue$jscomp$3;\n break;\n case \"defaultValue\":\n defaultValue$jscomp$0 = propValue$jscomp$3;\n break;\n case \"checked\":\n checked = propValue$jscomp$3;\n break;\n case \"value\":\n value$jscomp$1 = propValue$jscomp$3;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$3,\n propValue$jscomp$3\n );\n }\n }\n var formData = pushFormActionAttribute(\n target$jscomp$0,\n resumableState,\n renderState,\n formAction,\n formEncType,\n formMethod,\n formTarget,\n name\n );\n null !== checked\n ? pushBooleanAttribute(target$jscomp$0, \"checked\", checked)\n : null !== defaultChecked &&\n pushBooleanAttribute(target$jscomp$0, \"checked\", defaultChecked);\n null !== value$jscomp$1\n ? pushAttribute(target$jscomp$0, \"value\", value$jscomp$1)\n : null !== defaultValue$jscomp$0 &&\n pushAttribute(target$jscomp$0, \"value\", defaultValue$jscomp$0);\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTagSelfClosing);\n null != formData &&\n formData.forEach(pushAdditionalFormField, target$jscomp$0);\n return null;\n case \"button\":\n target$jscomp$0.push(startChunkForTag(\"button\"));\n var children$jscomp$3 = null,\n innerHTML$jscomp$2 = null,\n name$jscomp$0 = null,\n formAction$jscomp$0 = null,\n formEncType$jscomp$0 = null,\n formMethod$jscomp$0 = null,\n formTarget$jscomp$0 = null,\n propKey$jscomp$4;\n for (propKey$jscomp$4 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$4)) {\n var propValue$jscomp$4 = props[propKey$jscomp$4];\n if (null != propValue$jscomp$4)\n switch (propKey$jscomp$4) {\n case \"children\":\n children$jscomp$3 = propValue$jscomp$4;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$2 = propValue$jscomp$4;\n break;\n case \"name\":\n name$jscomp$0 = propValue$jscomp$4;\n break;\n case \"formAction\":\n formAction$jscomp$0 = propValue$jscomp$4;\n break;\n case \"formEncType\":\n formEncType$jscomp$0 = propValue$jscomp$4;\n break;\n case \"formMethod\":\n formMethod$jscomp$0 = propValue$jscomp$4;\n break;\n case \"formTarget\":\n formTarget$jscomp$0 = propValue$jscomp$4;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$4,\n propValue$jscomp$4\n );\n }\n }\n var formData$jscomp$0 = pushFormActionAttribute(\n target$jscomp$0,\n resumableState,\n renderState,\n formAction$jscomp$0,\n formEncType$jscomp$0,\n formMethod$jscomp$0,\n formTarget$jscomp$0,\n name$jscomp$0\n );\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTag);\n null != formData$jscomp$0 &&\n formData$jscomp$0.forEach(pushAdditionalFormField, target$jscomp$0);\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$2, children$jscomp$3);\n if (\"string\" === typeof children$jscomp$3) {\n target$jscomp$0.push(\n stringToChunk(escapeTextForBrowser(children$jscomp$3))\n );\n var JSCompiler_inline_result$jscomp$0 = null;\n } else JSCompiler_inline_result$jscomp$0 = children$jscomp$3;\n return JSCompiler_inline_result$jscomp$0;\n case \"form\":\n target$jscomp$0.push(startChunkForTag(\"form\"));\n var children$jscomp$4 = null,\n innerHTML$jscomp$3 = null,\n formAction$jscomp$1 = null,\n formEncType$jscomp$1 = null,\n formMethod$jscomp$1 = null,\n formTarget$jscomp$1 = null,\n propKey$jscomp$5;\n for (propKey$jscomp$5 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$5)) {\n var propValue$jscomp$5 = props[propKey$jscomp$5];\n if (null != propValue$jscomp$5)\n switch (propKey$jscomp$5) {\n case \"children\":\n children$jscomp$4 = propValue$jscomp$5;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$3 = propValue$jscomp$5;\n break;\n case \"action\":\n formAction$jscomp$1 = propValue$jscomp$5;\n break;\n case \"encType\":\n formEncType$jscomp$1 = propValue$jscomp$5;\n break;\n case \"method\":\n formMethod$jscomp$1 = propValue$jscomp$5;\n break;\n case \"target\":\n formTarget$jscomp$1 = propValue$jscomp$5;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$5,\n propValue$jscomp$5\n );\n }\n }\n var formData$jscomp$1 = null,\n formActionName = null;\n if (\"function\" === typeof formAction$jscomp$1) {\n var customFields = getCustomFormFields(\n resumableState,\n formAction$jscomp$1\n );\n null !== customFields\n ? ((formAction$jscomp$1 = customFields.action || \"\"),\n (formEncType$jscomp$1 = customFields.encType),\n (formMethod$jscomp$1 = customFields.method),\n (formTarget$jscomp$1 = customFields.target),\n (formData$jscomp$1 = customFields.data),\n (formActionName = customFields.name))\n : (target$jscomp$0.push(\n attributeSeparator,\n stringToChunk(\"action\"),\n attributeAssign,\n actionJavaScriptURL,\n attributeEnd\n ),\n (formTarget$jscomp$1 =\n formMethod$jscomp$1 =\n formEncType$jscomp$1 =\n formAction$jscomp$1 =\n null),\n injectFormReplayingRuntime(resumableState, renderState));\n }\n null != formAction$jscomp$1 &&\n pushAttribute(target$jscomp$0, \"action\", formAction$jscomp$1);\n null != formEncType$jscomp$1 &&\n pushAttribute(target$jscomp$0, \"encType\", formEncType$jscomp$1);\n null != formMethod$jscomp$1 &&\n pushAttribute(target$jscomp$0, \"method\", formMethod$jscomp$1);\n null != formTarget$jscomp$1 &&\n pushAttribute(target$jscomp$0, \"target\", formTarget$jscomp$1);\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTag);\n null !== formActionName &&\n (target$jscomp$0.push(startHiddenInputChunk),\n pushStringAttribute(target$jscomp$0, \"name\", formActionName),\n target$jscomp$0.push(endOfStartTagSelfClosing),\n null != formData$jscomp$1 &&\n formData$jscomp$1.forEach(pushAdditionalFormField, target$jscomp$0));\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$3, children$jscomp$4);\n if (\"string\" === typeof children$jscomp$4) {\n target$jscomp$0.push(\n stringToChunk(escapeTextForBrowser(children$jscomp$4))\n );\n var JSCompiler_inline_result$jscomp$1 = null;\n } else JSCompiler_inline_result$jscomp$1 = children$jscomp$4;\n return JSCompiler_inline_result$jscomp$1;\n case \"menuitem\":\n target$jscomp$0.push(startChunkForTag(\"menuitem\"));\n for (var propKey$jscomp$6 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$6)) {\n var propValue$jscomp$6 = props[propKey$jscomp$6];\n if (null != propValue$jscomp$6)\n switch (propKey$jscomp$6) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(\n \"menuitems cannot have `children` nor `dangerouslySetInnerHTML`.\"\n );\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$6,\n propValue$jscomp$6\n );\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTag);\n return null;\n case \"object\":\n target$jscomp$0.push(startChunkForTag(\"object\"));\n var children$jscomp$5 = null,\n innerHTML$jscomp$4 = null,\n propKey$jscomp$7;\n for (propKey$jscomp$7 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$7)) {\n var propValue$jscomp$7 = props[propKey$jscomp$7];\n if (null != propValue$jscomp$7)\n switch (propKey$jscomp$7) {\n case \"children\":\n children$jscomp$5 = propValue$jscomp$7;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$4 = propValue$jscomp$7;\n break;\n case \"data\":\n var sanitizedValue = sanitizeURL(\"\" + propValue$jscomp$7);\n if (\"\" === sanitizedValue) break;\n target$jscomp$0.push(\n attributeSeparator,\n stringToChunk(\"data\"),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(sanitizedValue)),\n attributeEnd\n );\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$7,\n propValue$jscomp$7\n );\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTag);\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$4, children$jscomp$5);\n if (\"string\" === typeof children$jscomp$5) {\n target$jscomp$0.push(\n stringToChunk(escapeTextForBrowser(children$jscomp$5))\n );\n var JSCompiler_inline_result$jscomp$2 = null;\n } else JSCompiler_inline_result$jscomp$2 = children$jscomp$5;\n return JSCompiler_inline_result$jscomp$2;\n case \"title\":\n var noscriptTagInScope = formatContext.tagScope & 1,\n isFallback = formatContext.tagScope & 4;\n if (\n 4 === formatContext.insertionMode ||\n noscriptTagInScope ||\n null != props.itemProp\n )\n var JSCompiler_inline_result$jscomp$3 = pushTitleImpl(\n target$jscomp$0,\n props\n );\n else\n isFallback\n ? (JSCompiler_inline_result$jscomp$3 = null)\n : (pushTitleImpl(renderState.hoistableChunks, props),\n (JSCompiler_inline_result$jscomp$3 = void 0));\n return JSCompiler_inline_result$jscomp$3;\n case \"link\":\n var noscriptTagInScope$jscomp$0 = formatContext.tagScope & 1,\n isFallback$jscomp$0 = formatContext.tagScope & 4,\n rel = props.rel,\n href = props.href,\n precedence = props.precedence;\n if (\n 4 === formatContext.insertionMode ||\n noscriptTagInScope$jscomp$0 ||\n null != props.itemProp ||\n \"string\" !== typeof rel ||\n \"string\" !== typeof href ||\n \"\" === href\n ) {\n pushLinkImpl(target$jscomp$0, props);\n var JSCompiler_inline_result$jscomp$4 = null;\n } else if (\"stylesheet\" === props.rel)\n if (\n \"string\" !== typeof precedence ||\n null != props.disabled ||\n props.onLoad ||\n props.onError\n )\n JSCompiler_inline_result$jscomp$4 = pushLinkImpl(\n target$jscomp$0,\n props\n );\n else {\n var styleQueue = renderState.styles.get(precedence),\n resourceState = resumableState.styleResources.hasOwnProperty(href)\n ? resumableState.styleResources[href]\n : void 0;\n if (null !== resourceState) {\n resumableState.styleResources[href] = null;\n styleQueue ||\n ((styleQueue = {\n precedence: stringToChunk(escapeTextForBrowser(precedence)),\n rules: [],\n hrefs: [],\n sheets: new Map()\n }),\n renderState.styles.set(precedence, styleQueue));\n var resource = {\n state: 0,\n props: assign({}, props, {\n \"data-precedence\": props.precedence,\n precedence: null\n })\n };\n if (resourceState) {\n 2 === resourceState.length &&\n adoptPreloadCredentials(resource.props, resourceState);\n var preloadResource = renderState.preloads.stylesheets.get(href);\n preloadResource && 0 < preloadResource.length\n ? (preloadResource.length = 0)\n : (resource.state = 1);\n }\n styleQueue.sheets.set(href, resource);\n hoistableState && hoistableState.stylesheets.add(resource);\n } else if (styleQueue) {\n var resource$9 = styleQueue.sheets.get(href);\n resource$9 &&\n hoistableState &&\n hoistableState.stylesheets.add(resource$9);\n }\n textEmbedded && target$jscomp$0.push(textSeparator);\n JSCompiler_inline_result$jscomp$4 = null;\n }\n else\n props.onLoad || props.onError\n ? (JSCompiler_inline_result$jscomp$4 = pushLinkImpl(\n target$jscomp$0,\n props\n ))\n : (textEmbedded && target$jscomp$0.push(textSeparator),\n (JSCompiler_inline_result$jscomp$4 = isFallback$jscomp$0\n ? null\n : pushLinkImpl(renderState.hoistableChunks, props)));\n return JSCompiler_inline_result$jscomp$4;\n case \"script\":\n var noscriptTagInScope$jscomp$1 = formatContext.tagScope & 1,\n asyncProp = props.async;\n if (\n \"string\" !== typeof props.src ||\n !props.src ||\n !asyncProp ||\n \"function\" === typeof asyncProp ||\n \"symbol\" === typeof asyncProp ||\n props.onLoad ||\n props.onError ||\n 4 === formatContext.insertionMode ||\n noscriptTagInScope$jscomp$1 ||\n null != props.itemProp\n )\n var JSCompiler_inline_result$jscomp$5 = pushScriptImpl(\n target$jscomp$0,\n props\n );\n else {\n var key = props.src;\n if (\"module\" === props.type) {\n var resources = resumableState.moduleScriptResources;\n var preloads = renderState.preloads.moduleScripts;\n } else\n (resources = resumableState.scriptResources),\n (preloads = renderState.preloads.scripts);\n var resourceState$jscomp$0 = resources.hasOwnProperty(key)\n ? resources[key]\n : void 0;\n if (null !== resourceState$jscomp$0) {\n resources[key] = null;\n var scriptProps = props;\n if (resourceState$jscomp$0) {\n 2 === resourceState$jscomp$0.length &&\n ((scriptProps = assign({}, props)),\n adoptPreloadCredentials(scriptProps, resourceState$jscomp$0));\n var preloadResource$jscomp$0 = preloads.get(key);\n preloadResource$jscomp$0 && (preloadResource$jscomp$0.length = 0);\n }\n var resource$jscomp$0 = [];\n renderState.scripts.add(resource$jscomp$0);\n pushScriptImpl(resource$jscomp$0, scriptProps);\n }\n textEmbedded && target$jscomp$0.push(textSeparator);\n JSCompiler_inline_result$jscomp$5 = null;\n }\n return JSCompiler_inline_result$jscomp$5;\n case \"style\":\n var noscriptTagInScope$jscomp$2 = formatContext.tagScope & 1,\n precedence$jscomp$0 = props.precedence,\n href$jscomp$0 = props.href,\n nonce = props.nonce;\n if (\n 4 === formatContext.insertionMode ||\n noscriptTagInScope$jscomp$2 ||\n null != props.itemProp ||\n \"string\" !== typeof precedence$jscomp$0 ||\n \"string\" !== typeof href$jscomp$0 ||\n \"\" === href$jscomp$0\n ) {\n target$jscomp$0.push(startChunkForTag(\"style\"));\n var children$jscomp$6 = null,\n innerHTML$jscomp$5 = null,\n propKey$jscomp$8;\n for (propKey$jscomp$8 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$8)) {\n var propValue$jscomp$8 = props[propKey$jscomp$8];\n if (null != propValue$jscomp$8)\n switch (propKey$jscomp$8) {\n case \"children\":\n children$jscomp$6 = propValue$jscomp$8;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$5 = propValue$jscomp$8;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$8,\n propValue$jscomp$8\n );\n }\n }\n target$jscomp$0.push(endOfStartTag);\n var child = Array.isArray(children$jscomp$6)\n ? 2 > children$jscomp$6.length\n ? children$jscomp$6[0]\n : null\n : children$jscomp$6;\n \"function\" !== typeof child &&\n \"symbol\" !== typeof child &&\n null !== child &&\n void 0 !== child &&\n target$jscomp$0.push(\n stringToChunk((\"\" + child).replace(styleRegex, styleReplacer))\n );\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$5, children$jscomp$6);\n target$jscomp$0.push(endChunkForTag(\"style\"));\n var JSCompiler_inline_result$jscomp$6 = null;\n } else {\n var styleQueue$jscomp$0 = renderState.styles.get(precedence$jscomp$0);\n if (\n null !==\n (resumableState.styleResources.hasOwnProperty(href$jscomp$0)\n ? resumableState.styleResources[href$jscomp$0]\n : void 0)\n ) {\n resumableState.styleResources[href$jscomp$0] = null;\n styleQueue$jscomp$0 ||\n ((styleQueue$jscomp$0 = {\n precedence: stringToChunk(\n escapeTextForBrowser(precedence$jscomp$0)\n ),\n rules: [],\n hrefs: [],\n sheets: new Map()\n }),\n renderState.styles.set(precedence$jscomp$0, styleQueue$jscomp$0));\n var nonceStyle = renderState.nonce.style;\n if (!nonceStyle || nonceStyle === nonce) {\n styleQueue$jscomp$0.hrefs.push(\n stringToChunk(escapeTextForBrowser(href$jscomp$0))\n );\n var target = styleQueue$jscomp$0.rules,\n children$jscomp$7 = null,\n innerHTML$jscomp$6 = null,\n propKey$jscomp$9;\n for (propKey$jscomp$9 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$9)) {\n var propValue$jscomp$9 = props[propKey$jscomp$9];\n if (null != propValue$jscomp$9)\n switch (propKey$jscomp$9) {\n case \"children\":\n children$jscomp$7 = propValue$jscomp$9;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$6 = propValue$jscomp$9;\n }\n }\n var child$jscomp$0 = Array.isArray(children$jscomp$7)\n ? 2 > children$jscomp$7.length\n ? children$jscomp$7[0]\n : null\n : children$jscomp$7;\n \"function\" !== typeof child$jscomp$0 &&\n \"symbol\" !== typeof child$jscomp$0 &&\n null !== child$jscomp$0 &&\n void 0 !== child$jscomp$0 &&\n target.push(\n stringToChunk(\n (\"\" + child$jscomp$0).replace(styleRegex, styleReplacer)\n )\n );\n pushInnerHTML(target, innerHTML$jscomp$6, children$jscomp$7);\n }\n }\n styleQueue$jscomp$0 &&\n hoistableState &&\n hoistableState.styles.add(styleQueue$jscomp$0);\n textEmbedded && target$jscomp$0.push(textSeparator);\n JSCompiler_inline_result$jscomp$6 = void 0;\n }\n return JSCompiler_inline_result$jscomp$6;\n case \"meta\":\n var noscriptTagInScope$jscomp$3 = formatContext.tagScope & 1,\n isFallback$jscomp$1 = formatContext.tagScope & 4;\n if (\n 4 === formatContext.insertionMode ||\n noscriptTagInScope$jscomp$3 ||\n null != props.itemProp\n )\n var JSCompiler_inline_result$jscomp$7 = pushSelfClosing(\n target$jscomp$0,\n props,\n \"meta\",\n formatContext\n );\n else\n textEmbedded && target$jscomp$0.push(textSeparator),\n (JSCompiler_inline_result$jscomp$7 = isFallback$jscomp$1\n ? null\n : \"string\" === typeof props.charSet\n ? pushSelfClosing(\n renderState.charsetChunks,\n props,\n \"meta\",\n formatContext\n )\n : \"viewport\" === props.name\n ? pushSelfClosing(\n renderState.viewportChunks,\n props,\n \"meta\",\n formatContext\n )\n : pushSelfClosing(\n renderState.hoistableChunks,\n props,\n \"meta\",\n formatContext\n ));\n return JSCompiler_inline_result$jscomp$7;\n case \"listing\":\n case \"pre\":\n target$jscomp$0.push(startChunkForTag(type));\n var children$jscomp$8 = null,\n innerHTML$jscomp$7 = null,\n propKey$jscomp$10;\n for (propKey$jscomp$10 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$10)) {\n var propValue$jscomp$10 = props[propKey$jscomp$10];\n if (null != propValue$jscomp$10)\n switch (propKey$jscomp$10) {\n case \"children\":\n children$jscomp$8 = propValue$jscomp$10;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$7 = propValue$jscomp$10;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$10,\n propValue$jscomp$10\n );\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTag);\n if (null != innerHTML$jscomp$7) {\n if (null != children$jscomp$8)\n throw Error(\n \"Can only set one of `children` or `props.dangerouslySetInnerHTML`.\"\n );\n if (\n \"object\" !== typeof innerHTML$jscomp$7 ||\n !(\"__html\" in innerHTML$jscomp$7)\n )\n throw Error(\n \"`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.\"\n );\n var html = innerHTML$jscomp$7.__html;\n null !== html &&\n void 0 !== html &&\n (\"string\" === typeof html && 0 < html.length && \"\\n\" === html[0]\n ? target$jscomp$0.push(leadingNewline, stringToChunk(html))\n : target$jscomp$0.push(stringToChunk(\"\" + html)));\n }\n \"string\" === typeof children$jscomp$8 &&\n \"\\n\" === children$jscomp$8[0] &&\n target$jscomp$0.push(leadingNewline);\n return children$jscomp$8;\n case \"img\":\n var pictureOrNoScriptTagInScope = formatContext.tagScope & 3,\n src = props.src,\n srcSet = props.srcSet;\n if (\n !(\n \"lazy\" === props.loading ||\n (!src && !srcSet) ||\n (\"string\" !== typeof src && null != src) ||\n (\"string\" !== typeof srcSet && null != srcSet) ||\n \"low\" === props.fetchPriority ||\n pictureOrNoScriptTagInScope\n ) &&\n (\"string\" !== typeof src ||\n \":\" !== src[4] ||\n (\"d\" !== src[0] && \"D\" !== src[0]) ||\n (\"a\" !== src[1] && \"A\" !== src[1]) ||\n (\"t\" !== src[2] && \"T\" !== src[2]) ||\n (\"a\" !== src[3] && \"A\" !== src[3])) &&\n (\"string\" !== typeof srcSet ||\n \":\" !== srcSet[4] ||\n (\"d\" !== srcSet[0] && \"D\" !== srcSet[0]) ||\n (\"a\" !== srcSet[1] && \"A\" !== srcSet[1]) ||\n (\"t\" !== srcSet[2] && \"T\" !== srcSet[2]) ||\n (\"a\" !== srcSet[3] && \"A\" !== srcSet[3]))\n ) {\n null !== hoistableState &&\n formatContext.tagScope & 64 &&\n (hoistableState.suspenseyImages = !0);\n var sizes = \"string\" === typeof props.sizes ? props.sizes : void 0,\n key$jscomp$0 = srcSet ? srcSet + \"\\n\" + (sizes || \"\") : src,\n promotablePreloads = renderState.preloads.images,\n resource$jscomp$1 = promotablePreloads.get(key$jscomp$0);\n if (resource$jscomp$1) {\n if (\n \"high\" === props.fetchPriority ||\n 10 > renderState.highImagePreloads.size\n )\n promotablePreloads.delete(key$jscomp$0),\n renderState.highImagePreloads.add(resource$jscomp$1);\n } else if (\n !resumableState.imageResources.hasOwnProperty(key$jscomp$0)\n ) {\n resumableState.imageResources[key$jscomp$0] = PRELOAD_NO_CREDS;\n var input = props.crossOrigin;\n var JSCompiler_inline_result$jscomp$8 =\n \"string\" === typeof input\n ? \"use-credentials\" === input\n ? input\n : \"\"\n : void 0;\n var headers = renderState.headers,\n header;\n headers &&\n 0 < headers.remainingCapacity &&\n \"string\" !== typeof props.srcSet &&\n (\"high\" === props.fetchPriority ||\n 500 > headers.highImagePreloads.length) &&\n ((header = getPreloadAsHeader(src, \"image\", {\n imageSrcSet: props.srcSet,\n imageSizes: props.sizes,\n crossOrigin: JSCompiler_inline_result$jscomp$8,\n integrity: props.integrity,\n nonce: props.nonce,\n type: props.type,\n fetchPriority: props.fetchPriority,\n referrerPolicy: props.referrerPolicy\n })),\n 0 <= (headers.remainingCapacity -= header.length + 2))\n ? ((renderState.resets.image[key$jscomp$0] = PRELOAD_NO_CREDS),\n headers.highImagePreloads && (headers.highImagePreloads += \", \"),\n (headers.highImagePreloads += header))\n : ((resource$jscomp$1 = []),\n pushLinkImpl(resource$jscomp$1, {\n rel: \"preload\",\n as: \"image\",\n href: srcSet ? void 0 : src,\n imageSrcSet: srcSet,\n imageSizes: sizes,\n crossOrigin: JSCompiler_inline_result$jscomp$8,\n integrity: props.integrity,\n type: props.type,\n fetchPriority: props.fetchPriority,\n referrerPolicy: props.referrerPolicy\n }),\n \"high\" === props.fetchPriority ||\n 10 > renderState.highImagePreloads.size\n ? renderState.highImagePreloads.add(resource$jscomp$1)\n : (renderState.bulkPreloads.add(resource$jscomp$1),\n promotablePreloads.set(key$jscomp$0, resource$jscomp$1)));\n }\n }\n return pushSelfClosing(target$jscomp$0, props, \"img\", formatContext);\n case \"base\":\n case \"area\":\n case \"br\":\n case \"col\":\n case \"embed\":\n case \"hr\":\n case \"keygen\":\n case \"param\":\n case \"source\":\n case \"track\":\n case \"wbr\":\n return pushSelfClosing(target$jscomp$0, props, type, formatContext);\n case \"annotation-xml\":\n case \"color-profile\":\n case \"font-face\":\n case \"font-face-src\":\n case \"font-face-uri\":\n case \"font-face-format\":\n case \"font-face-name\":\n case \"missing-glyph\":\n break;\n case \"head\":\n if (2 > formatContext.insertionMode) {\n var preamble = preambleState || renderState.preamble;\n if (preamble.headChunks)\n throw Error(\"The `<head>` tag may only be rendered once.\");\n null !== preambleState &&\n target$jscomp$0.push(headPreambleContributionChunk);\n preamble.headChunks = [];\n var JSCompiler_inline_result$jscomp$9 = pushStartSingletonElement(\n preamble.headChunks,\n props,\n \"head\",\n formatContext\n );\n } else\n JSCompiler_inline_result$jscomp$9 = pushStartGenericElement(\n target$jscomp$0,\n props,\n \"head\",\n formatContext\n );\n return JSCompiler_inline_result$jscomp$9;\n case \"body\":\n if (2 > formatContext.insertionMode) {\n var preamble$jscomp$0 = preambleState || renderState.preamble;\n if (preamble$jscomp$0.bodyChunks)\n throw Error(\"The `<body>` tag may only be rendered once.\");\n null !== preambleState &&\n target$jscomp$0.push(bodyPreambleContributionChunk);\n preamble$jscomp$0.bodyChunks = [];\n var JSCompiler_inline_result$jscomp$10 = pushStartSingletonElement(\n preamble$jscomp$0.bodyChunks,\n props,\n \"body\",\n formatContext\n );\n } else\n JSCompiler_inline_result$jscomp$10 = pushStartGenericElement(\n target$jscomp$0,\n props,\n \"body\",\n formatContext\n );\n return JSCompiler_inline_result$jscomp$10;\n case \"html\":\n if (0 === formatContext.insertionMode) {\n var preamble$jscomp$1 = preambleState || renderState.preamble;\n if (preamble$jscomp$1.htmlChunks)\n throw Error(\"The `<html>` tag may only be rendered once.\");\n null !== preambleState &&\n target$jscomp$0.push(htmlPreambleContributionChunk);\n preamble$jscomp$1.htmlChunks = [doctypeChunk];\n var JSCompiler_inline_result$jscomp$11 = pushStartSingletonElement(\n preamble$jscomp$1.htmlChunks,\n props,\n \"html\",\n formatContext\n );\n } else\n JSCompiler_inline_result$jscomp$11 = pushStartGenericElement(\n target$jscomp$0,\n props,\n \"html\",\n formatContext\n );\n return JSCompiler_inline_result$jscomp$11;\n default:\n if (-1 !== type.indexOf(\"-\")) {\n target$jscomp$0.push(startChunkForTag(type));\n var children$jscomp$9 = null,\n innerHTML$jscomp$8 = null,\n propKey$jscomp$11;\n for (propKey$jscomp$11 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$11)) {\n var propValue$jscomp$11 = props[propKey$jscomp$11];\n if (null != propValue$jscomp$11) {\n var attributeName = propKey$jscomp$11;\n switch (propKey$jscomp$11) {\n case \"children\":\n children$jscomp$9 = propValue$jscomp$11;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$8 = propValue$jscomp$11;\n break;\n case \"style\":\n pushStyleAttribute(target$jscomp$0, propValue$jscomp$11);\n break;\n case \"suppressContentEditableWarning\":\n case \"suppressHydrationWarning\":\n case \"ref\":\n break;\n case \"className\":\n attributeName = \"class\";\n default:\n if (\n isAttributeNameSafe(propKey$jscomp$11) &&\n \"function\" !== typeof propValue$jscomp$11 &&\n \"symbol\" !== typeof propValue$jscomp$11 &&\n !1 !== propValue$jscomp$11\n ) {\n if (!0 === propValue$jscomp$11) propValue$jscomp$11 = \"\";\n else if (\"object\" === typeof propValue$jscomp$11) continue;\n target$jscomp$0.push(\n attributeSeparator,\n stringToChunk(attributeName),\n attributeAssign,\n stringToChunk(escapeTextForBrowser(propValue$jscomp$11)),\n attributeEnd\n );\n }\n }\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(endOfStartTag);\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$8, children$jscomp$9);\n return children$jscomp$9;\n }\n }\n return pushStartGenericElement(target$jscomp$0, props, type, formatContext);\n}\nvar endTagCache = new Map();\nfunction endChunkForTag(tag) {\n var chunk = endTagCache.get(tag);\n void 0 === chunk &&\n ((chunk = stringToPrecomputedChunk(\"</\" + tag + \">\")),\n endTagCache.set(tag, chunk));\n return chunk;\n}\nfunction hoistPreambleState(renderState, preambleState) {\n renderState = renderState.preamble;\n null === renderState.htmlChunks &&\n preambleState.htmlChunks &&\n (renderState.htmlChunks = preambleState.htmlChunks);\n null === renderState.headChunks &&\n preambleState.headChunks &&\n (renderState.headChunks = preambleState.headChunks);\n null === renderState.bodyChunks &&\n preambleState.bodyChunks &&\n (renderState.bodyChunks = preambleState.bodyChunks);\n}\nfunction writeBootstrap(destination, renderState) {\n renderState = renderState.bootstrapChunks;\n for (var i = 0; i < renderState.length - 1; i++)\n writeChunk(destination, renderState[i]);\n return i < renderState.length\n ? ((i = renderState[i]),\n (renderState.length = 0),\n writeChunkAndReturn(destination, i))\n : !0;\n}\nvar shellTimeRuntimeScript = stringToPrecomputedChunk(\n \"requestAnimationFrame(function(){$RT=performance.now()});\"\n ),\n placeholder1 = stringToPrecomputedChunk('<template id=\"'),\n placeholder2 = stringToPrecomputedChunk('\"></template>'),\n startActivityBoundary = stringToPrecomputedChunk(\"\\x3c!--&--\\x3e\"),\n endActivityBoundary = stringToPrecomputedChunk(\"\\x3c!--/&--\\x3e\"),\n startCompletedSuspenseBoundary = stringToPrecomputedChunk(\"\\x3c!--$--\\x3e\"),\n startPendingSuspenseBoundary1 = stringToPrecomputedChunk(\n '\\x3c!--$?--\\x3e<template id=\"'\n ),\n startPendingSuspenseBoundary2 = stringToPrecomputedChunk('\"></template>'),\n startClientRenderedSuspenseBoundary =\n stringToPrecomputedChunk(\"\\x3c!--$!--\\x3e\"),\n endSuspenseBoundary = stringToPrecomputedChunk(\"\\x3c!--/$--\\x3e\"),\n clientRenderedSuspenseBoundaryError1 = stringToPrecomputedChunk(\"<template\"),\n clientRenderedSuspenseBoundaryErrorAttrInterstitial =\n stringToPrecomputedChunk('\"'),\n clientRenderedSuspenseBoundaryError1A =\n stringToPrecomputedChunk(' data-dgst=\"');\nstringToPrecomputedChunk(' data-msg=\"');\nstringToPrecomputedChunk(' data-stck=\"');\nstringToPrecomputedChunk(' data-cstck=\"');\nvar clientRenderedSuspenseBoundaryError2 =\n stringToPrecomputedChunk(\"></template>\");\nfunction writeStartPendingSuspenseBoundary(destination, renderState, id) {\n writeChunk(destination, startPendingSuspenseBoundary1);\n if (null === id)\n throw Error(\n \"An ID must have been assigned before we can complete the boundary.\"\n );\n writeChunk(destination, renderState.boundaryPrefix);\n writeChunk(destination, stringToChunk(id.toString(16)));\n return writeChunkAndReturn(destination, startPendingSuspenseBoundary2);\n}\nvar startSegmentHTML = stringToPrecomputedChunk('<div hidden id=\"'),\n startSegmentHTML2 = stringToPrecomputedChunk('\">'),\n endSegmentHTML = stringToPrecomputedChunk(\"</div>\"),\n startSegmentSVG = stringToPrecomputedChunk(\n '<svg aria-hidden=\"true\" style=\"display:none\" id=\"'\n ),\n startSegmentSVG2 = stringToPrecomputedChunk('\">'),\n endSegmentSVG = stringToPrecomputedChunk(\"</svg>\"),\n startSegmentMathML = stringToPrecomputedChunk(\n '<math aria-hidden=\"true\" style=\"display:none\" id=\"'\n ),\n startSegmentMathML2 = stringToPrecomputedChunk('\">'),\n endSegmentMathML = stringToPrecomputedChunk(\"</math>\"),\n startSegmentTable = stringToPrecomputedChunk('<table hidden id=\"'),\n startSegmentTable2 = stringToPrecomputedChunk('\">'),\n endSegmentTable = stringToPrecomputedChunk(\"</table>\"),\n startSegmentTableBody = stringToPrecomputedChunk('<table hidden><tbody id=\"'),\n startSegmentTableBody2 = stringToPrecomputedChunk('\">'),\n endSegmentTableBody = stringToPrecomputedChunk(\"</tbody></table>\"),\n startSegmentTableRow = stringToPrecomputedChunk('<table hidden><tr id=\"'),\n startSegmentTableRow2 = stringToPrecomputedChunk('\">'),\n endSegmentTableRow = stringToPrecomputedChunk(\"</tr></table>\"),\n startSegmentColGroup = stringToPrecomputedChunk(\n '<table hidden><colgroup id=\"'\n ),\n startSegmentColGroup2 = stringToPrecomputedChunk('\">'),\n endSegmentColGroup = stringToPrecomputedChunk(\"</colgroup></table>\");\nfunction writeStartSegment(destination, renderState, formatContext, id) {\n switch (formatContext.insertionMode) {\n case 0:\n case 1:\n case 3:\n case 2:\n return (\n writeChunk(destination, startSegmentHTML),\n writeChunk(destination, renderState.segmentPrefix),\n writeChunk(destination, stringToChunk(id.toString(16))),\n writeChunkAndReturn(destination, startSegmentHTML2)\n );\n case 4:\n return (\n writeChunk(destination, startSegmentSVG),\n writeChunk(destination, renderState.segmentPrefix),\n writeChunk(destination, stringToChunk(id.toString(16))),\n writeChunkAndReturn(destination, startSegmentSVG2)\n );\n case 5:\n return (\n writeChunk(destination, startSegmentMathML),\n writeChunk(destination, renderState.segmentPrefix),\n writeChunk(destination, stringToChunk(id.toString(16))),\n writeChunkAndReturn(destination, startSegmentMathML2)\n );\n case 6:\n return (\n writeChunk(destination, startSegmentTable),\n writeChunk(destination, renderState.segmentPrefix),\n writeChunk(destination, stringToChunk(id.toString(16))),\n writeChunkAndReturn(destination, startSegmentTable2)\n );\n case 7:\n return (\n writeChunk(destination, startSegmentTableBody),\n writeChunk(destination, renderState.segmentPrefix),\n writeChunk(destination, stringToChunk(id.toString(16))),\n writeChunkAndReturn(destination, startSegmentTableBody2)\n );\n case 8:\n return (\n writeChunk(destination, startSegmentTableRow),\n writeChunk(destination, renderState.segmentPrefix),\n writeChunk(destination, stringToChunk(id.toString(16))),\n writeChunkAndReturn(destination, startSegmentTableRow2)\n );\n case 9:\n return (\n writeChunk(destination, startSegmentColGroup),\n writeChunk(destination, renderState.segmentPrefix),\n writeChunk(destination, stringToChunk(id.toString(16))),\n writeChunkAndReturn(destination, startSegmentColGroup2)\n );\n default:\n throw Error(\"Unknown insertion mode. This is a bug in React.\");\n }\n}\nfunction writeEndSegment(destination, formatContext) {\n switch (formatContext.insertionMode) {\n case 0:\n case 1:\n case 3:\n case 2:\n return writeChunkAndReturn(destination, endSegmentHTML);\n case 4:\n return writeChunkAndReturn(destination, endSegmentSVG);\n case 5:\n return writeChunkAndReturn(destination, endSegmentMathML);\n case 6:\n return writeChunkAndReturn(destination, endSegmentTable);\n case 7:\n return writeChunkAndReturn(destination, endSegmentTableBody);\n case 8:\n return writeChunkAndReturn(destination, endSegmentTableRow);\n case 9:\n return writeChunkAndReturn(destination, endSegmentColGroup);\n default:\n throw Error(\"Unknown insertion mode. This is a bug in React.\");\n }\n}\nvar completeSegmentScript1Full = stringToPrecomputedChunk(\n '$RS=function(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"'\n ),\n completeSegmentScript1Partial = stringToPrecomputedChunk('$RS(\"'),\n completeSegmentScript2 = stringToPrecomputedChunk('\",\"'),\n completeSegmentScriptEnd = stringToPrecomputedChunk('\")\\x3c/script>');\nstringToPrecomputedChunk('<template data-rsi=\"\" data-sid=\"');\nstringToPrecomputedChunk('\" data-pid=\"');\nvar completeBoundaryScriptFunctionOnly = stringToPrecomputedChunk(\n '$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if(\"/$\"===d||\"/&\"===d)if(0===h)break;else h--;else\"$\"!==d&&\"$?\"!==d&&\"$~\"!==d&&\"$!\"!==d&&\"&\"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data=\"$\";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};\\n$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data=\"$~\",$RB.push(a,b),2===$RB.length&&(\"number\"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};'\n ),\n completeBoundaryUpgradeToViewTransitionsInstruction = stringToChunk(\n '$RV=function(B,g){function h(a,c){var e=a.getAttribute(c);e&&(c=a.style,l.push(a,c.viewTransitionName,c.viewTransitionClass),\"auto\"!==e&&(c.viewTransitionClass=e),(a=a.getAttribute(\"vt-name\"))||(a=\"_T_\"+N++ +\"_\"),a=CSS.escape(a)!==a?\"r-\"+btoa(a).replace(/=/g,\"\"):a,c.viewTransitionName=a,C=!0)}var C=!1,N=0,l=[];try{var f=document.__reactViewTransition;if(f){f.finished.finally($RV.bind(null,g));return}var m=new Map;for(f=1;f<g.length;f+=2)for(var k=g[f].querySelectorAll(\"[vt-share]\"),d=0;d<k.length;d++){var b=k[d];m.set(b.getAttribute(\"vt-name\"),b)}var u=[];for(k=0;k<g.length;k+=2){var D=g[k],x=D.parentNode;if(x){var v=x.getBoundingClientRect();if(v.left||v.top||v.width||v.height){b=D;for(f=0;b;){if(8===b.nodeType){var t=b.data;if(\"/$\"===t)if(0===f)break;else f--;else\"$\"!==t&&\"$?\"!==t&&\"$~\"!==t&&\"$!\"!==t||f++}else if(1===b.nodeType){d=b;var E=d.getAttribute(\"vt-name\"),y=m.get(E);h(d,y?\"vt-share\":\"vt-exit\");y&&(h(y,\"vt-share\"),m.set(E,null));for(var F=d.querySelectorAll(\"[vt-share]\"),\\nz=0;z<F.length;z++){var G=F[z],H=G.getAttribute(\"vt-name\"),I=m.get(H);I&&(h(G,\"vt-share\"),h(I,\"vt-share\"),m.set(H,null))}var J=d.querySelectorAll(\"[vt-parent-exit]\");for(d=0;d<J.length;d++)h(J[d],\"vt-parent-exit\")}b=b.nextSibling}for(var K=g[k+1],n=K.firstElementChild;n;){null!==m.get(n.getAttribute(\"vt-name\"))&&h(n,\"vt-enter\");var L=n.querySelectorAll(\"[vt-parent-enter]\");for(b=0;b<L.length;b++)h(L[b],\"vt-parent-enter\");n=n.nextElementSibling}b=x;do for(var p=b.firstElementChild;p;){var M=p.getAttribute(\"vt-update\");\\nM&&\"none\"!==M&&!l.includes(p)&&h(p,\"vt-update\");p=p.nextElementSibling}while((b=b.parentNode)&&1===b.nodeType&&\"none\"!==b.getAttribute(\"vt-update\"));u.push.apply(u,K.querySelectorAll(\\'img[src]:not([loading=\"lazy\"])\\'))}}}if(C){var A=document.__reactViewTransition=document.startViewTransition({update:function(){B(g);for(var a=[document.documentElement.clientHeight,document.fonts.ready],c={},e=0;e<u.length;c={g:c.g},e++)if(c.g=u[e],!c.g.complete){var q=c.g.getBoundingClientRect();0<q.bottom&&0<q.right&&\\nq.top<window.innerHeight&&q.left<window.innerWidth&&(q=new Promise(function(w){return function(r){w.g.addEventListener(\"load\",r);w.g.addEventListener(\"error\",r)}}(c)),a.push(q))}return Promise.race([Promise.all(a),new Promise(function(w){var r=performance.now();setTimeout(w,2300>r&&2E3<r?2300-r:500)})])},types:[]});A.ready.finally(function(){for(var a=l.length-3;0<=a;a-=3){var c=l[a],e=c.style;e.viewTransitionName=l[a+1];e.viewTransitionClass=l[a+1];\"\"===c.getAttribute(\"style\")&&c.removeAttribute(\"style\")}});\\nA.finished.finally(function(){document.__reactViewTransition===A&&(document.__reactViewTransition=null)});$RB=[];return}}catch(a){}B(g)}.bind(null,$RV);'\n ),\n completeBoundaryScript1Partial = stringToPrecomputedChunk('$RC(\"'),\n completeBoundaryWithStylesScript1FullPartial = stringToPrecomputedChunk(\n '$RM=new Map;$RR=function(n,w,p){function u(q){this._p=null;q()}for(var r=new Map,t=document,h,b,e=t.querySelectorAll(\"link[data-precedence],style[data-precedence]\"),v=[],k=0;b=e[k++];)\"not all\"===b.getAttribute(\"media\")?v.push(b):(\"LINK\"===b.tagName&&$RM.set(b.getAttribute(\"href\"),b),r.set(b.dataset.precedence,h=b));e=0;b=[];var l,a;for(k=!0;;){if(k){var f=p[e++];if(!f){k=!1;e=0;continue}var c=!1,m=0;var d=f[m++];if(a=$RM.get(d)){var g=a._p;c=!0}else{a=t.createElement(\"link\");a.href=d;a.rel=\\n\"stylesheet\";for(a.dataset.precedence=l=f[m++];g=f[m++];)a.setAttribute(g,f[m++]);g=a._p=new Promise(function(q,x){a.onload=u.bind(a,q);a.onerror=u.bind(a,x)});$RM.set(d,a)}d=a.getAttribute(\"media\");!g||d&&!matchMedia(d).matches||b.push(g);if(c)continue}else{a=v[e++];if(!a)break;l=a.getAttribute(\"data-precedence\");a.removeAttribute(\"media\")}c=r.get(l)||h;c===h&&(h=a);r.set(l,a);c?c.parentNode.insertBefore(a,c.nextSibling):(c=t.head,c.insertBefore(a,c.firstChild))}if(p=document.getElementById(n))p.previousSibling.data=\\n\"$~\";Promise.all(b).then($RC.bind(null,n,w),$RX.bind(null,n,\"CSS failed to load\"))};$RR(\"'\n ),\n completeBoundaryWithStylesScript1Partial = stringToPrecomputedChunk('$RR(\"'),\n completeBoundaryScript2 = stringToPrecomputedChunk('\",\"'),\n completeBoundaryScript3a = stringToPrecomputedChunk('\",'),\n completeBoundaryScript3b = stringToPrecomputedChunk('\"'),\n completeBoundaryScriptEnd = stringToPrecomputedChunk(\")\\x3c/script>\");\nstringToPrecomputedChunk('<template data-rci=\"\" data-bid=\"');\nstringToPrecomputedChunk('<template data-rri=\"\" data-bid=\"');\nstringToPrecomputedChunk('\" data-sid=\"');\nstringToPrecomputedChunk('\" data-sty=\"');\nvar clientRenderScriptFunctionOnly = stringToPrecomputedChunk(\n '$RX=function(b,c,d,e,f){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,null!=c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),f&&(a.cstck=f),b._reactRetry&&b._reactRetry())};'\n ),\n clientRenderScript1Full = stringToPrecomputedChunk(\n '$RX=function(b,c,d,e,f){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,null!=c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),f&&(a.cstck=f),b._reactRetry&&b._reactRetry())};;$RX(\"'\n ),\n clientRenderScript1Partial = stringToPrecomputedChunk('$RX(\"'),\n clientRenderScript1A = stringToPrecomputedChunk('\"'),\n clientRenderErrorScriptArgInterstitial = stringToPrecomputedChunk(\",\"),\n clientRenderErrorScriptNull = stringToPrecomputedChunk(\"null\"),\n clientRenderScriptEnd = stringToPrecomputedChunk(\")\\x3c/script>\");\nstringToPrecomputedChunk('<template data-rxi=\"\" data-bid=\"');\nstringToPrecomputedChunk('\" data-dgst=\"');\nstringToPrecomputedChunk('\" data-msg=\"');\nstringToPrecomputedChunk('\" data-stck=\"');\nstringToPrecomputedChunk('\" data-cstck=\"');\nvar regexForJSStringsInInstructionScripts = /[<\\u2028\\u2029]/g;\nfunction escapeJSStringsForInstructionScripts(input) {\n return JSON.stringify(input).replace(\n regexForJSStringsInInstructionScripts,\n function (match) {\n switch (match) {\n case \"<\":\n return \"\\\\u003c\";\n case \"\\u2028\":\n return \"\\\\u2028\";\n case \"\\u2029\":\n return \"\\\\u2029\";\n default:\n throw Error(\n \"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\"\n );\n }\n }\n );\n}\nvar regexForJSStringsInScripts = /[&><\\u2028\\u2029]/g;\nfunction escapeJSObjectForInstructionScripts(input) {\n return JSON.stringify(input).replace(\n regexForJSStringsInScripts,\n function (match) {\n switch (match) {\n case \"&\":\n return \"\\\\u0026\";\n case \">\":\n return \"\\\\u003e\";\n case \"<\":\n return \"\\\\u003c\";\n case \"\\u2028\":\n return \"\\\\u2028\";\n case \"\\u2029\":\n return \"\\\\u2029\";\n default:\n throw Error(\n \"escapeJSObjectForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\"\n );\n }\n }\n );\n}\nvar lateStyleTagResourceOpen1 = stringToPrecomputedChunk(\n ' media=\"not all\" data-precedence=\"'\n ),\n lateStyleTagResourceOpen2 = stringToPrecomputedChunk('\" data-href=\"'),\n lateStyleTagResourceOpen3 = stringToPrecomputedChunk('\">'),\n lateStyleTagTemplateClose = stringToPrecomputedChunk(\"</style>\"),\n currentlyRenderingBoundaryHasStylesToHoist = !1,\n destinationHasCapacity = !0;\nfunction flushStyleTagsLateForBoundary(styleQueue) {\n var rules = styleQueue.rules,\n hrefs = styleQueue.hrefs,\n i = 0;\n if (hrefs.length) {\n writeChunk(this, currentlyFlushingRenderState.startInlineStyle);\n writeChunk(this, lateStyleTagResourceOpen1);\n writeChunk(this, styleQueue.precedence);\n for (writeChunk(this, lateStyleTagResourceOpen2); i < hrefs.length - 1; i++)\n writeChunk(this, hrefs[i]), writeChunk(this, spaceSeparator);\n writeChunk(this, hrefs[i]);\n writeChunk(this, lateStyleTagResourceOpen3);\n for (i = 0; i < rules.length; i++) writeChunk(this, rules[i]);\n destinationHasCapacity = writeChunkAndReturn(\n this,\n lateStyleTagTemplateClose\n );\n currentlyRenderingBoundaryHasStylesToHoist = !0;\n rules.length = 0;\n hrefs.length = 0;\n }\n}\nfunction hasStylesToHoist(stylesheet) {\n return 2 !== stylesheet.state\n ? (currentlyRenderingBoundaryHasStylesToHoist = !0)\n : !1;\n}\nfunction writeHoistablesForBoundary(destination, hoistableState, renderState) {\n currentlyRenderingBoundaryHasStylesToHoist = !1;\n destinationHasCapacity = !0;\n currentlyFlushingRenderState = renderState;\n hoistableState.styles.forEach(flushStyleTagsLateForBoundary, destination);\n currentlyFlushingRenderState = null;\n hoistableState.stylesheets.forEach(hasStylesToHoist);\n currentlyRenderingBoundaryHasStylesToHoist &&\n (renderState.stylesToHoist = !0);\n return destinationHasCapacity;\n}\nfunction flushResource(resource) {\n for (var i = 0; i < resource.length; i++) writeChunk(this, resource[i]);\n resource.length = 0;\n}\nvar stylesheetFlushingQueue = [];\nfunction flushStyleInPreamble(stylesheet) {\n pushLinkImpl(stylesheetFlushingQueue, stylesheet.props);\n for (var i = 0; i < stylesheetFlushingQueue.length; i++)\n writeChunk(this, stylesheetFlushingQueue[i]);\n stylesheetFlushingQueue.length = 0;\n stylesheet.state = 2;\n}\nvar styleTagResourceOpen1 = stringToPrecomputedChunk(' data-precedence=\"'),\n styleTagResourceOpen2 = stringToPrecomputedChunk('\" data-href=\"'),\n spaceSeparator = stringToPrecomputedChunk(\" \"),\n styleTagResourceOpen3 = stringToPrecomputedChunk('\">'),\n styleTagResourceClose = stringToPrecomputedChunk(\"</style>\");\nfunction flushStylesInPreamble(styleQueue) {\n var hasStylesheets = 0 < styleQueue.sheets.size;\n styleQueue.sheets.forEach(flushStyleInPreamble, this);\n styleQueue.sheets.clear();\n var rules = styleQueue.rules,\n hrefs = styleQueue.hrefs;\n if (!hasStylesheets || hrefs.length) {\n writeChunk(this, currentlyFlushingRenderState.startInlineStyle);\n writeChunk(this, styleTagResourceOpen1);\n writeChunk(this, styleQueue.precedence);\n styleQueue = 0;\n if (hrefs.length) {\n for (\n writeChunk(this, styleTagResourceOpen2);\n styleQueue < hrefs.length - 1;\n styleQueue++\n )\n writeChunk(this, hrefs[styleQueue]), writeChunk(this, spaceSeparator);\n writeChunk(this, hrefs[styleQueue]);\n }\n writeChunk(this, styleTagResourceOpen3);\n for (styleQueue = 0; styleQueue < rules.length; styleQueue++)\n writeChunk(this, rules[styleQueue]);\n writeChunk(this, styleTagResourceClose);\n rules.length = 0;\n hrefs.length = 0;\n }\n}\nfunction preloadLateStyle(stylesheet) {\n if (0 === stylesheet.state) {\n stylesheet.state = 1;\n var props = stylesheet.props;\n pushLinkImpl(stylesheetFlushingQueue, {\n rel: \"preload\",\n as: \"style\",\n href: stylesheet.props.href,\n crossOrigin: props.crossOrigin,\n fetchPriority: props.fetchPriority,\n integrity: props.integrity,\n media: props.media,\n hrefLang: props.hrefLang,\n referrerPolicy: props.referrerPolicy\n });\n for (\n stylesheet = 0;\n stylesheet < stylesheetFlushingQueue.length;\n stylesheet++\n )\n writeChunk(this, stylesheetFlushingQueue[stylesheet]);\n stylesheetFlushingQueue.length = 0;\n }\n}\nfunction preloadLateStyles(styleQueue) {\n styleQueue.sheets.forEach(preloadLateStyle, this);\n styleQueue.sheets.clear();\n}\nstringToPrecomputedChunk('<link rel=\"expect\" href=\"#');\nstringToPrecomputedChunk('\" blocking=\"render\"/>');\nvar completedShellIdAttributeStart = stringToPrecomputedChunk(' id=\"');\nfunction pushCompletedShellIdAttribute(target, resumableState) {\n 0 === (resumableState.instructions & 32) &&\n ((resumableState.instructions |= 32),\n target.push(\n completedShellIdAttributeStart,\n stringToChunk(escapeTextForBrowser(\"_\" + resumableState.idPrefix + \"R_\")),\n attributeEnd\n ));\n}\nvar arrayFirstOpenBracket = stringToPrecomputedChunk(\"[\"),\n arraySubsequentOpenBracket = stringToPrecomputedChunk(\",[\"),\n arrayInterstitial = stringToPrecomputedChunk(\",\"),\n arrayCloseBracket = stringToPrecomputedChunk(\"]\");\nfunction writeStyleResourceDependenciesInJS(destination, hoistableState) {\n writeChunk(destination, arrayFirstOpenBracket);\n var nextArrayOpenBrackChunk = arrayFirstOpenBracket;\n hoistableState.stylesheets.forEach(function (resource) {\n if (2 !== resource.state)\n if (3 === resource.state)\n writeChunk(destination, nextArrayOpenBrackChunk),\n writeChunk(\n destination,\n stringToChunk(\n escapeJSObjectForInstructionScripts(\"\" + resource.props.href)\n )\n ),\n writeChunk(destination, arrayCloseBracket),\n (nextArrayOpenBrackChunk = arraySubsequentOpenBracket);\n else {\n writeChunk(destination, nextArrayOpenBrackChunk);\n var precedence = resource.props[\"data-precedence\"],\n props = resource.props,\n coercedHref = sanitizeURL(\"\" + resource.props.href);\n writeChunk(\n destination,\n stringToChunk(escapeJSObjectForInstructionScripts(coercedHref))\n );\n precedence = \"\" + precedence;\n writeChunk(destination, arrayInterstitial);\n writeChunk(\n destination,\n stringToChunk(escapeJSObjectForInstructionScripts(precedence))\n );\n for (var propKey in props)\n if (\n hasOwnProperty.call(props, propKey) &&\n ((precedence = props[propKey]), null != precedence)\n )\n switch (propKey) {\n case \"href\":\n case \"rel\":\n case \"precedence\":\n case \"data-precedence\":\n break;\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(\n \"link is a self-closing tag and must neither have `children` nor use `dangerouslySetInnerHTML`.\"\n );\n default:\n writeStyleResourceAttributeInJS(\n destination,\n propKey,\n precedence\n );\n }\n writeChunk(destination, arrayCloseBracket);\n nextArrayOpenBrackChunk = arraySubsequentOpenBracket;\n resource.state = 3;\n }\n });\n writeChunk(destination, arrayCloseBracket);\n}\nfunction writeStyleResourceAttributeInJS(destination, name, value) {\n var attributeName = name.toLowerCase();\n switch (typeof value) {\n case \"function\":\n case \"symbol\":\n return;\n }\n switch (name) {\n case \"innerHTML\":\n case \"dangerouslySetInnerHTML\":\n case \"suppressContentEditableWarning\":\n case \"suppressHydrationWarning\":\n case \"style\":\n case \"ref\":\n return;\n case \"className\":\n attributeName = \"class\";\n name = \"\" + value;\n break;\n case \"hidden\":\n if (!1 === value) return;\n name = \"\";\n break;\n case \"src\":\n case \"href\":\n value = sanitizeURL(value);\n name = \"\" + value;\n break;\n default:\n if (\n (2 < name.length &&\n (\"o\" === name[0] || \"O\" === name[0]) &&\n (\"n\" === name[1] || \"N\" === name[1])) ||\n !isAttributeNameSafe(name)\n )\n return;\n name = \"\" + value;\n }\n writeChunk(destination, arrayInterstitial);\n writeChunk(\n destination,\n stringToChunk(escapeJSObjectForInstructionScripts(attributeName))\n );\n writeChunk(destination, arrayInterstitial);\n writeChunk(\n destination,\n stringToChunk(escapeJSObjectForInstructionScripts(name))\n );\n}\nfunction createHoistableState() {\n return { styles: new Set(), stylesheets: new Set(), suspenseyImages: !1 };\n}\nfunction prefetchDNS(href) {\n var request = resolveRequest();\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (\"string\" === typeof href && href) {\n if (!resumableState.dnsResources.hasOwnProperty(href)) {\n resumableState.dnsResources[href] = null;\n resumableState = renderState.headers;\n var header, JSCompiler_temp;\n if (\n (JSCompiler_temp =\n resumableState && 0 < resumableState.remainingCapacity)\n )\n JSCompiler_temp =\n ((header =\n \"<\" +\n (\"\" + href).replace(\n regexForHrefInLinkHeaderURLContext,\n escapeHrefForLinkHeaderURLContextReplacer\n ) +\n \">; rel=dns-prefetch\"),\n 0 <= (resumableState.remainingCapacity -= header.length + 2));\n JSCompiler_temp\n ? ((renderState.resets.dns[href] = null),\n resumableState.preconnects && (resumableState.preconnects += \", \"),\n (resumableState.preconnects += header))\n : ((header = []),\n pushLinkImpl(header, { href: href, rel: \"dns-prefetch\" }),\n renderState.preconnects.add(header));\n }\n enqueueFlush(request);\n }\n } else previousDispatcher.D(href);\n}\nfunction preconnect(href, crossOrigin) {\n var request = resolveRequest();\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (\"string\" === typeof href && href) {\n var bucket =\n \"use-credentials\" === crossOrigin\n ? \"credentials\"\n : \"string\" === typeof crossOrigin\n ? \"anonymous\"\n : \"default\";\n if (!resumableState.connectResources[bucket].hasOwnProperty(href)) {\n resumableState.connectResources[bucket][href] = null;\n resumableState = renderState.headers;\n var header, JSCompiler_temp;\n if (\n (JSCompiler_temp =\n resumableState && 0 < resumableState.remainingCapacity)\n ) {\n JSCompiler_temp =\n \"<\" +\n (\"\" + href).replace(\n regexForHrefInLinkHeaderURLContext,\n escapeHrefForLinkHeaderURLContextReplacer\n ) +\n \">; rel=preconnect\";\n if (\"string\" === typeof crossOrigin) {\n var escapedCrossOrigin = (\"\" + crossOrigin).replace(\n regexForLinkHeaderQuotedParamValueContext,\n escapeStringForLinkHeaderQuotedParamValueContextReplacer\n );\n JSCompiler_temp += '; crossorigin=\"' + escapedCrossOrigin + '\"';\n }\n JSCompiler_temp =\n ((header = JSCompiler_temp),\n 0 <= (resumableState.remainingCapacity -= header.length + 2));\n }\n JSCompiler_temp\n ? ((renderState.resets.connect[bucket][href] = null),\n resumableState.preconnects && (resumableState.preconnects += \", \"),\n (resumableState.preconnects += header))\n : ((bucket = []),\n pushLinkImpl(bucket, {\n rel: \"preconnect\",\n href: href,\n crossOrigin: crossOrigin\n }),\n renderState.preconnects.add(bucket));\n }\n enqueueFlush(request);\n }\n } else previousDispatcher.C(href, crossOrigin);\n}\nfunction preload(href, as, options) {\n var request = resolveRequest();\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (as && href) {\n switch (as) {\n case \"image\":\n if (options) {\n var imageSrcSet = options.imageSrcSet;\n var imageSizes = options.imageSizes;\n var fetchPriority = options.fetchPriority;\n }\n var key = imageSrcSet\n ? imageSrcSet + \"\\n\" + (imageSizes || \"\")\n : href;\n if (resumableState.imageResources.hasOwnProperty(key)) return;\n resumableState.imageResources[key] = PRELOAD_NO_CREDS;\n resumableState = renderState.headers;\n var header;\n resumableState &&\n 0 < resumableState.remainingCapacity &&\n \"string\" !== typeof imageSrcSet &&\n \"high\" === fetchPriority &&\n ((header = getPreloadAsHeader(href, as, options)),\n 0 <= (resumableState.remainingCapacity -= header.length + 2))\n ? ((renderState.resets.image[key] = PRELOAD_NO_CREDS),\n resumableState.highImagePreloads &&\n (resumableState.highImagePreloads += \", \"),\n (resumableState.highImagePreloads += header))\n : ((resumableState = []),\n pushLinkImpl(\n resumableState,\n assign(\n { rel: \"preload\", href: imageSrcSet ? void 0 : href, as: as },\n options\n )\n ),\n \"high\" === fetchPriority\n ? renderState.highImagePreloads.add(resumableState)\n : (renderState.bulkPreloads.add(resumableState),\n renderState.preloads.images.set(key, resumableState)));\n break;\n case \"style\":\n if (resumableState.styleResources.hasOwnProperty(href)) return;\n imageSrcSet = [];\n pushLinkImpl(\n imageSrcSet,\n assign({ rel: \"preload\", href: href, as: as }, options)\n );\n resumableState.styleResources[href] =\n !options ||\n (\"string\" !== typeof options.crossOrigin &&\n \"string\" !== typeof options.integrity)\n ? PRELOAD_NO_CREDS\n : [options.crossOrigin, options.integrity];\n renderState.preloads.stylesheets.set(href, imageSrcSet);\n renderState.bulkPreloads.add(imageSrcSet);\n break;\n case \"script\":\n if (resumableState.scriptResources.hasOwnProperty(href)) return;\n imageSrcSet = [];\n renderState.preloads.scripts.set(href, imageSrcSet);\n renderState.bulkPreloads.add(imageSrcSet);\n pushLinkImpl(\n imageSrcSet,\n assign({ rel: \"preload\", href: href, as: as }, options)\n );\n resumableState.scriptResources[href] =\n !options ||\n (\"string\" !== typeof options.crossOrigin &&\n \"string\" !== typeof options.integrity)\n ? PRELOAD_NO_CREDS\n : [options.crossOrigin, options.integrity];\n break;\n default:\n if (resumableState.unknownResources.hasOwnProperty(as)) {\n if (\n ((imageSrcSet = resumableState.unknownResources[as]),\n imageSrcSet.hasOwnProperty(href))\n )\n return;\n } else\n (imageSrcSet = {}),\n (resumableState.unknownResources[as] = imageSrcSet);\n imageSrcSet[href] = PRELOAD_NO_CREDS;\n if (\n (resumableState = renderState.headers) &&\n 0 < resumableState.remainingCapacity &&\n \"font\" === as &&\n ((key = getPreloadAsHeader(href, as, options)),\n 0 <= (resumableState.remainingCapacity -= key.length + 2))\n )\n (renderState.resets.font[href] = PRELOAD_NO_CREDS),\n resumableState.fontPreloads &&\n (resumableState.fontPreloads += \", \"),\n (resumableState.fontPreloads += key);\n else\n switch (\n ((resumableState = []),\n (href = assign({ rel: \"preload\", href: href, as: as }, options)),\n pushLinkImpl(resumableState, href),\n as)\n ) {\n case \"font\":\n renderState.fontPreloads.add(resumableState);\n break;\n default:\n renderState.bulkPreloads.add(resumableState);\n }\n }\n enqueueFlush(request);\n }\n } else previousDispatcher.L(href, as, options);\n}\nfunction preloadModule(href, options) {\n var request = resolveRequest();\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (href) {\n var as =\n options && \"string\" === typeof options.as ? options.as : \"script\";\n switch (as) {\n case \"script\":\n if (resumableState.moduleScriptResources.hasOwnProperty(href)) return;\n as = [];\n resumableState.moduleScriptResources[href] =\n !options ||\n (\"string\" !== typeof options.crossOrigin &&\n \"string\" !== typeof options.integrity)\n ? PRELOAD_NO_CREDS\n : [options.crossOrigin, options.integrity];\n renderState.preloads.moduleScripts.set(href, as);\n break;\n default:\n if (resumableState.moduleUnknownResources.hasOwnProperty(as)) {\n var resources = resumableState.moduleUnknownResources[as];\n if (resources.hasOwnProperty(href)) return;\n } else\n (resources = {}),\n (resumableState.moduleUnknownResources[as] = resources);\n as = [];\n resources[href] = PRELOAD_NO_CREDS;\n }\n pushLinkImpl(as, assign({ rel: \"modulepreload\", href: href }, options));\n renderState.bulkPreloads.add(as);\n enqueueFlush(request);\n }\n } else previousDispatcher.m(href, options);\n}\nfunction preinitStyle(href, precedence, options) {\n var request = resolveRequest();\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (href) {\n precedence = precedence || \"default\";\n var styleQueue = renderState.styles.get(precedence),\n resourceState = resumableState.styleResources.hasOwnProperty(href)\n ? resumableState.styleResources[href]\n : void 0;\n null !== resourceState &&\n ((resumableState.styleResources[href] = null),\n styleQueue ||\n ((styleQueue = {\n precedence: stringToChunk(escapeTextForBrowser(precedence)),\n rules: [],\n hrefs: [],\n sheets: new Map()\n }),\n renderState.styles.set(precedence, styleQueue)),\n (precedence = {\n state: 0,\n props: assign(\n { rel: \"stylesheet\", href: href, \"data-precedence\": precedence },\n options\n )\n }),\n resourceState &&\n (2 === resourceState.length &&\n adoptPreloadCredentials(precedence.props, resourceState),\n (renderState = renderState.preloads.stylesheets.get(href)) &&\n 0 < renderState.length\n ? (renderState.length = 0)\n : (precedence.state = 1)),\n styleQueue.sheets.set(href, precedence),\n enqueueFlush(request));\n }\n } else previousDispatcher.S(href, precedence, options);\n}\nfunction preinitScript(src, options) {\n var request = resolveRequest();\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (src) {\n var resourceState = resumableState.scriptResources.hasOwnProperty(src)\n ? resumableState.scriptResources[src]\n : void 0;\n null !== resourceState &&\n ((resumableState.scriptResources[src] = null),\n (options = assign({ src: src, async: !0 }, options)),\n resourceState &&\n (2 === resourceState.length &&\n adoptPreloadCredentials(options, resourceState),\n (src = renderState.preloads.scripts.get(src))) &&\n (src.length = 0),\n (src = []),\n renderState.scripts.add(src),\n pushScriptImpl(src, options),\n enqueueFlush(request));\n }\n } else previousDispatcher.X(src, options);\n}\nfunction preinitModuleScript(src, options) {\n var request = resolveRequest();\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (src) {\n var resourceState = resumableState.moduleScriptResources.hasOwnProperty(\n src\n )\n ? resumableState.moduleScriptResources[src]\n : void 0;\n null !== resourceState &&\n ((resumableState.moduleScriptResources[src] = null),\n (options = assign({ src: src, type: \"module\", async: !0 }, options)),\n resourceState &&\n (2 === resourceState.length &&\n adoptPreloadCredentials(options, resourceState),\n (src = renderState.preloads.moduleScripts.get(src))) &&\n (src.length = 0),\n (src = []),\n renderState.scripts.add(src),\n pushScriptImpl(src, options),\n enqueueFlush(request));\n }\n } else previousDispatcher.M(src, options);\n}\nfunction adoptPreloadCredentials(target, preloadState) {\n null == target.crossOrigin && (target.crossOrigin = preloadState[0]);\n null == target.integrity && (target.integrity = preloadState[1]);\n}\nfunction getPreloadAsHeader(href, as, params) {\n href = (\"\" + href).replace(\n regexForHrefInLinkHeaderURLContext,\n escapeHrefForLinkHeaderURLContextReplacer\n );\n as = (\"\" + as).replace(\n regexForLinkHeaderQuotedParamValueContext,\n escapeStringForLinkHeaderQuotedParamValueContextReplacer\n );\n as = \"<\" + href + '>; rel=preload; as=\"' + as + '\"';\n for (var paramName in params)\n hasOwnProperty.call(params, paramName) &&\n ((href = params[paramName]),\n \"string\" === typeof href &&\n (as +=\n \"; \" +\n paramName.toLowerCase() +\n '=\"' +\n (\"\" + href).replace(\n regexForLinkHeaderQuotedParamValueContext,\n escapeStringForLinkHeaderQuotedParamValueContextReplacer\n ) +\n '\"'));\n return as;\n}\nvar regexForHrefInLinkHeaderURLContext = /[<>\\r\\n]/g;\nfunction escapeHrefForLinkHeaderURLContextReplacer(match) {\n switch (match) {\n case \"<\":\n return \"%3C\";\n case \">\":\n return \"%3E\";\n case \"\\n\":\n return \"%0A\";\n case \"\\r\":\n return \"%0D\";\n default:\n throw Error(\n \"escapeLinkHrefForHeaderContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\"\n );\n }\n}\nvar regexForLinkHeaderQuotedParamValueContext = /[\"';,\\r\\n]/g;\nfunction escapeStringForLinkHeaderQuotedParamValueContextReplacer(match) {\n switch (match) {\n case '\"':\n return \"%22\";\n case \"'\":\n return \"%27\";\n case \";\":\n return \"%3B\";\n case \",\":\n return \"%2C\";\n case \"\\n\":\n return \"%0A\";\n case \"\\r\":\n return \"%0D\";\n default:\n throw Error(\n \"escapeStringForLinkHeaderQuotedParamValueContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\"\n );\n }\n}\nfunction hoistStyleQueueDependency(styleQueue) {\n this.styles.add(styleQueue);\n}\nfunction hoistStylesheetDependency(stylesheet) {\n this.stylesheets.add(stylesheet);\n}\nfunction hoistHoistables(parentState, childState) {\n childState.styles.forEach(hoistStyleQueueDependency, parentState);\n childState.stylesheets.forEach(hoistStylesheetDependency, parentState);\n childState.suspenseyImages && (parentState.suspenseyImages = !0);\n}\nfunction hasSuspenseyContent(hoistableState, flushingInShell) {\n return flushingInShell\n ? hoistableState.suspenseyImages\n : 0 < hoistableState.stylesheets.size || hoistableState.suspenseyImages;\n}\nvar bind = Function.prototype.bind,\n supportsRequestStorage = \"function\" === typeof AsyncLocalStorage,\n requestStorage = supportsRequestStorage ? new AsyncLocalStorage() : null,\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\nfunction getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n case REACT_VIEW_TRANSITION_TYPE:\n return \"ViewTransition\";\n }\n if (\"object\" === typeof type)\n switch (type.$$typeof) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return type.displayName || \"Context\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n}\nvar emptyContextObject = {},\n currentActiveSnapshot = null;\nfunction popToNearestCommonAncestor(prev, next) {\n if (prev !== next) {\n prev.context._currentValue = prev.parentValue;\n prev = prev.parent;\n var parentNext = next.parent;\n if (null === prev) {\n if (null !== parentNext)\n throw Error(\n \"The stacks must reach the root at the same time. This is a bug in React.\"\n );\n } else {\n if (null === parentNext)\n throw Error(\n \"The stacks must reach the root at the same time. This is a bug in React.\"\n );\n popToNearestCommonAncestor(prev, parentNext);\n }\n next.context._currentValue = next.value;\n }\n}\nfunction popAllPrevious(prev) {\n prev.context._currentValue = prev.parentValue;\n prev = prev.parent;\n null !== prev && popAllPrevious(prev);\n}\nfunction pushAllNext(next) {\n var parentNext = next.parent;\n null !== parentNext && pushAllNext(parentNext);\n next.context._currentValue = next.value;\n}\nfunction popPreviousToCommonLevel(prev, next) {\n prev.context._currentValue = prev.parentValue;\n prev = prev.parent;\n if (null === prev)\n throw Error(\n \"The depth must equal at least at zero before reaching the root. This is a bug in React.\"\n );\n prev.depth === next.depth\n ? popToNearestCommonAncestor(prev, next)\n : popPreviousToCommonLevel(prev, next);\n}\nfunction popNextToCommonLevel(prev, next) {\n var parentNext = next.parent;\n if (null === parentNext)\n throw Error(\n \"The depth must equal at least at zero before reaching the root. This is a bug in React.\"\n );\n prev.depth === parentNext.depth\n ? popToNearestCommonAncestor(prev, parentNext)\n : popNextToCommonLevel(prev, parentNext);\n next.context._currentValue = next.value;\n}\nfunction switchContext(newSnapshot) {\n var prev = currentActiveSnapshot;\n prev !== newSnapshot &&\n (null === prev\n ? pushAllNext(newSnapshot)\n : null === newSnapshot\n ? popAllPrevious(prev)\n : prev.depth === newSnapshot.depth\n ? popToNearestCommonAncestor(prev, newSnapshot)\n : prev.depth > newSnapshot.depth\n ? popPreviousToCommonLevel(prev, newSnapshot)\n : popNextToCommonLevel(prev, newSnapshot),\n (currentActiveSnapshot = newSnapshot));\n}\nvar classComponentUpdater = {\n enqueueSetState: function (inst, payload) {\n inst = inst._reactInternals;\n null !== inst.queue && inst.queue.push(payload);\n },\n enqueueReplaceState: function (inst, payload) {\n inst = inst._reactInternals;\n inst.replace = !0;\n inst.queue = [payload];\n },\n enqueueForceUpdate: function () {}\n },\n emptyTreeContext = { id: 1, overflow: \"\" };\nfunction getTreeId(context) {\n var overflow = context.overflow;\n context = context.id;\n return (context & ~(1 << (32 - clz32(context) - 1))).toString(32) + overflow;\n}\nfunction pushTreeContext(baseContext, totalChildren, index) {\n var baseIdWithLeadingBit = baseContext.id;\n baseContext = baseContext.overflow;\n var baseLength = 32 - clz32(baseIdWithLeadingBit) - 1;\n baseIdWithLeadingBit &= ~(1 << baseLength);\n index += 1;\n var length = 32 - clz32(totalChildren) + baseLength;\n if (30 < length) {\n var numberOfOverflowBits = baseLength - (baseLength % 5);\n length = (\n baseIdWithLeadingBit &\n ((1 << numberOfOverflowBits) - 1)\n ).toString(32);\n baseIdWithLeadingBit >>= numberOfOverflowBits;\n baseLength -= numberOfOverflowBits;\n return {\n id:\n (1 << (32 - clz32(totalChildren) + baseLength)) |\n (index << baseLength) |\n baseIdWithLeadingBit,\n overflow: length + baseContext\n };\n }\n return {\n id: (1 << length) | (index << baseLength) | baseIdWithLeadingBit,\n overflow: baseContext\n };\n}\nvar clz32 = Math.clz32 ? Math.clz32 : clz32Fallback,\n log = Math.log,\n LN2 = Math.LN2;\nfunction clz32Fallback(x) {\n x >>>= 0;\n return 0 === x ? 32 : (31 - ((log(x) / LN2) | 0)) | 0;\n}\nfunction noop() {}\nvar SuspenseException = Error(\n \"Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\\n\\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`.\"\n);\nfunction trackUsedThenable(thenableState, thenable, index) {\n index = thenableState[index];\n void 0 === index\n ? thenableState.push(thenable)\n : index !== thenable && (thenable.then(noop, noop), (thenable = index));\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n thenableState = thenable.reason;\n if (void 0 === thenableState && !(\"reason\" in thenable))\n throw Error(\n \"A rejected Promise was passed to React without a `reason` property. React threw a generic error from where the Promise was used to assist in identifying the problematic Promise. Make sure that instrumented Promises correctly set the `reason` property when setting `status` to `'rejected'`.\"\n );\n throw thenableState;\n default:\n \"string\" === typeof thenable.status\n ? thenable.then(noop, noop)\n : ((thenableState = thenable),\n (thenableState.status = \"pending\"),\n thenableState.then(\n function (fulfilledValue) {\n if (\"pending\" === thenable.status) {\n var fulfilledThenable = thenable;\n fulfilledThenable.status = \"fulfilled\";\n fulfilledThenable.value = fulfilledValue;\n }\n },\n function (error) {\n if (\"pending\" === thenable.status) {\n var rejectedThenable = thenable;\n rejectedThenable.status = \"rejected\";\n rejectedThenable.reason = error;\n }\n }\n ));\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n suspendedThenable = thenable;\n throw SuspenseException;\n }\n}\nvar suspendedThenable = null;\nfunction getSuspendedThenable() {\n if (null === suspendedThenable)\n throw Error(\n \"Expected a suspended thenable. This is a bug in React. Please file an issue.\"\n );\n var thenable = suspendedThenable;\n suspendedThenable = null;\n return thenable;\n}\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n currentlyRenderingComponent = null,\n currentlyRenderingTask = null,\n currentlyRenderingRequest = null,\n currentlyRenderingKeyPath = null,\n firstWorkInProgressHook = null,\n workInProgressHook = null,\n isReRender = !1,\n didScheduleRenderPhaseUpdate = !1,\n localIdCounter = 0,\n actionStateCounter = 0,\n actionStateMatchingIndex = -1,\n thenableIndexCounter = 0,\n thenableState = null;\nfunction createRecoverableError(recoverable) {\n recoverable = recoverable._reason;\n if (\"function\" === typeof recoverable)\n try {\n var initializedReason = recoverable();\n } catch ($jscomp$unused$catch) {\n initializedReason =\n \"The reason for browser-only rendering could not be determined because its initializer threw.\";\n }\n else initializedReason = recoverable;\n initializedReason = Error(\n \"Browser-only rendering was requested by `browser()`.\",\n void 0 === recoverable ? void 0 : { cause: initializedReason }\n );\n Object.defineProperty(initializedReason, REACT_RECOVERABLE_TYPE, {\n value: !0\n });\n return initializedReason;\n}\nfunction isRecoverableError(error) {\n return \"object\" !== typeof error || null === error\n ? !1\n : !0 === error[REACT_RECOVERABLE_TYPE];\n}\nfunction cloneRecoverableErrorAsFatal(recoverableError) {\n var fatalRecoverableError = Error(\n \"The server render could not complete because client rendering was requested outside a Suspense boundary. See this error's cause for additional details.\",\n hasOwnProperty.call(recoverableError, \"cause\")\n ? { cause: recoverableError.cause }\n : void 0\n );\n recoverableError = recoverableError.stack;\n if (void 0 !== recoverableError) {\n var frameStart = recoverableError.indexOf(\"\\n\");\n fatalRecoverableError.stack =\n fatalRecoverableError.name +\n \": \" +\n fatalRecoverableError.message +\n (-1 === frameStart ? \"\" : recoverableError.slice(frameStart));\n } else fatalRecoverableError.stack = void 0;\n return fatalRecoverableError;\n}\nvar renderPhaseUpdates = null,\n numberOfReRenders = 0;\nfunction resolveCurrentlyRenderingComponent() {\n if (null === currentlyRenderingComponent)\n throw Error(\n \"Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\\n1. You might have mismatching versions of React and the renderer (such as React DOM)\\n2. You might be breaking the Rules of Hooks\\n3. You might have more than one copy of React in the same app\\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.\"\n );\n return currentlyRenderingComponent;\n}\nfunction createHook() {\n if (0 < numberOfReRenders)\n throw Error(\"Rendered more hooks than during the previous render\");\n return { memoizedState: null, queue: null, next: null };\n}\nfunction createWorkInProgressHook() {\n null === workInProgressHook\n ? null === firstWorkInProgressHook\n ? ((isReRender = !1),\n (firstWorkInProgressHook = workInProgressHook = createHook()))\n : ((isReRender = !0), (workInProgressHook = firstWorkInProgressHook))\n : null === workInProgressHook.next\n ? ((isReRender = !1),\n (workInProgressHook = workInProgressHook.next = createHook()))\n : ((isReRender = !0), (workInProgressHook = workInProgressHook.next));\n return workInProgressHook;\n}\nfunction getThenableStateAfterSuspending() {\n var state = thenableState;\n thenableState = null;\n return state;\n}\nfunction resetHooksState() {\n currentlyRenderingKeyPath =\n currentlyRenderingRequest =\n currentlyRenderingTask =\n currentlyRenderingComponent =\n null;\n didScheduleRenderPhaseUpdate = !1;\n firstWorkInProgressHook = null;\n numberOfReRenders = 0;\n workInProgressHook = renderPhaseUpdates = null;\n}\nfunction basicStateReducer(state, action) {\n return \"function\" === typeof action ? action(state) : action;\n}\nfunction useReducer(reducer, initialArg, init) {\n currentlyRenderingComponent = resolveCurrentlyRenderingComponent();\n workInProgressHook = createWorkInProgressHook();\n if (isReRender) {\n var queue = workInProgressHook.queue;\n initialArg = queue.dispatch;\n if (\n null !== renderPhaseUpdates &&\n ((init = renderPhaseUpdates.get(queue)), void 0 !== init)\n ) {\n renderPhaseUpdates.delete(queue);\n queue = workInProgressHook.memoizedState;\n do (queue = reducer(queue, init.action)), (init = init.next);\n while (null !== init);\n workInProgressHook.memoizedState = queue;\n return [queue, initialArg];\n }\n return [workInProgressHook.memoizedState, initialArg];\n }\n reducer =\n reducer === basicStateReducer\n ? \"function\" === typeof initialArg\n ? initialArg()\n : initialArg\n : void 0 !== init\n ? init(initialArg)\n : initialArg;\n workInProgressHook.memoizedState = reducer;\n reducer = workInProgressHook.queue = { last: null, dispatch: null };\n reducer = reducer.dispatch = dispatchAction.bind(\n null,\n currentlyRenderingComponent,\n reducer\n );\n return [workInProgressHook.memoizedState, reducer];\n}\nfunction useMemo(nextCreate, deps) {\n currentlyRenderingComponent = resolveCurrentlyRenderingComponent();\n workInProgressHook = createWorkInProgressHook();\n deps = void 0 === deps ? null : deps;\n if (null !== workInProgressHook) {\n var prevState = workInProgressHook.memoizedState;\n if (null !== prevState && null !== deps) {\n var prevDeps = prevState[1];\n a: if (null === prevDeps) prevDeps = !1;\n else {\n for (var i = 0; i < prevDeps.length && i < deps.length; i++)\n if (!objectIs(deps[i], prevDeps[i])) {\n prevDeps = !1;\n break a;\n }\n prevDeps = !0;\n }\n if (prevDeps) return prevState[0];\n }\n }\n nextCreate = nextCreate();\n workInProgressHook.memoizedState = [nextCreate, deps];\n return nextCreate;\n}\nfunction dispatchAction(componentIdentity, queue, action) {\n if (25 <= numberOfReRenders)\n throw Error(\n \"Too many re-renders. React limits the number of renders to prevent an infinite loop.\"\n );\n if (componentIdentity === currentlyRenderingComponent)\n if (\n ((didScheduleRenderPhaseUpdate = !0),\n (componentIdentity = { action: action, next: null }),\n null === renderPhaseUpdates && (renderPhaseUpdates = new Map()),\n (action = renderPhaseUpdates.get(queue)),\n void 0 === action)\n )\n renderPhaseUpdates.set(queue, componentIdentity);\n else {\n for (queue = action; null !== queue.next; ) queue = queue.next;\n queue.next = componentIdentity;\n }\n}\nfunction throwOnUseEffectEventCall() {\n throw Error(\n \"A function wrapped in useEffectEvent can't be called during rendering.\"\n );\n}\nfunction unsupportedStartTransition() {\n throw Error(\"startTransition cannot be called during server rendering.\");\n}\nfunction unsupportedSetOptimisticState() {\n throw Error(\"Cannot update optimistic state while rendering.\");\n}\nfunction useActionState(action, initialState, permalink) {\n resolveCurrentlyRenderingComponent();\n var actionStateHookIndex = actionStateCounter++,\n request = currentlyRenderingRequest;\n if (\"function\" === typeof action.$$FORM_ACTION) {\n var nextPostbackStateKey = null,\n componentKeyPath = currentlyRenderingKeyPath;\n request = request.formState;\n var isSignatureEqual = action.$$IS_SIGNATURE_EQUAL;\n if (null !== request && \"function\" === typeof isSignatureEqual) {\n var postbackKey = request[1];\n isSignatureEqual.call(action, request[2], request[3]) &&\n ((nextPostbackStateKey =\n void 0 !== permalink\n ? \"p\" + permalink\n : \"k\" +\n murmurhash3_32_gc(\n JSON.stringify([componentKeyPath, null, actionStateHookIndex]),\n 0\n )),\n postbackKey === nextPostbackStateKey &&\n ((actionStateMatchingIndex = actionStateHookIndex),\n (initialState = request[0])));\n }\n var boundAction = action.bind(null, initialState);\n action = function (payload) {\n boundAction(payload);\n };\n \"function\" === typeof boundAction.$$FORM_ACTION &&\n (action.$$FORM_ACTION = function (prefix) {\n prefix = boundAction.$$FORM_ACTION(prefix);\n void 0 !== permalink &&\n ((permalink += \"\"), (prefix.action = permalink));\n var formData = prefix.data;\n formData &&\n (null === nextPostbackStateKey &&\n (nextPostbackStateKey =\n void 0 !== permalink\n ? \"p\" + permalink\n : \"k\" +\n murmurhash3_32_gc(\n JSON.stringify([\n componentKeyPath,\n null,\n actionStateHookIndex\n ]),\n 0\n )),\n formData.append(\"$ACTION_KEY\", nextPostbackStateKey));\n return prefix;\n });\n return [initialState, action, !1];\n }\n var boundAction$22 = action.bind(null, initialState);\n return [\n initialState,\n function (payload) {\n boundAction$22(payload);\n },\n !1\n ];\n}\nfunction unwrapThenable(thenable) {\n var index = thenableIndexCounter;\n thenableIndexCounter += 1;\n null === thenableState && (thenableState = []);\n return trackUsedThenable(thenableState, thenable, index);\n}\nfunction unsupportedRefresh() {\n throw Error(\"Cache cannot be refreshed during server rendering.\");\n}\nvar HooksDispatcher = {\n readContext: function (context) {\n return context._currentValue;\n },\n use: function (usable) {\n if (null !== usable && \"object\" === typeof usable) {\n if (\"function\" === typeof usable.then) return unwrapThenable(usable);\n if (usable.$$typeof === REACT_RECOVERABLE_TYPE)\n throw createRecoverableError(usable);\n if (usable.$$typeof === REACT_CONTEXT_TYPE) return usable._currentValue;\n }\n throw Error(\"An unsupported type was passed to use(): \" + String(usable));\n },\n useContext: function (context) {\n resolveCurrentlyRenderingComponent();\n return context._currentValue;\n },\n useMemo: useMemo,\n useReducer: useReducer,\n useRef: function (initialValue) {\n currentlyRenderingComponent = resolveCurrentlyRenderingComponent();\n workInProgressHook = createWorkInProgressHook();\n var previousRef = workInProgressHook.memoizedState;\n return null === previousRef\n ? ((initialValue = { current: initialValue }),\n (workInProgressHook.memoizedState = initialValue))\n : previousRef;\n },\n useState: function (initialState) {\n return useReducer(basicStateReducer, initialState);\n },\n useInsertionEffect: noop,\n useLayoutEffect: noop,\n useCallback: function (callback, deps) {\n return useMemo(function () {\n return callback;\n }, deps);\n },\n useImperativeHandle: noop,\n useEffect: noop,\n useDebugValue: noop,\n useDeferredValue: function (value, initialValue) {\n resolveCurrentlyRenderingComponent();\n return void 0 !== initialValue ? initialValue : value;\n },\n useTransition: function () {\n resolveCurrentlyRenderingComponent();\n return [!1, unsupportedStartTransition];\n },\n useId: function () {\n var treeId = getTreeId(currentlyRenderingTask.treeContext),\n resumableState = currentResumableState;\n if (null === resumableState)\n throw Error(\n \"Invalid hook call. Hooks can only be called inside of the body of a function component.\"\n );\n var localId = localIdCounter++;\n return makeId(resumableState, treeId, localId);\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n if (void 0 === getServerSnapshot)\n throw Error(\n \"Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.\"\n );\n return getServerSnapshot();\n },\n useOptimistic: function (passthrough) {\n resolveCurrentlyRenderingComponent();\n return [passthrough, unsupportedSetOptimisticState];\n },\n useActionState: useActionState,\n useFormState: useActionState,\n useHostTransitionStatus: function () {\n resolveCurrentlyRenderingComponent();\n return sharedNotPendingObject;\n },\n useMemoCache: function (size) {\n for (var data = Array(size), i = 0; i < size; i++)\n data[i] = REACT_MEMO_CACHE_SENTINEL;\n return data;\n },\n useCacheRefresh: function () {\n return unsupportedRefresh;\n },\n useEffectEvent: function () {\n return throwOnUseEffectEventCall;\n }\n },\n currentResumableState = null,\n DefaultAsyncDispatcher = {\n getCacheForType: function () {\n throw Error(\"Not implemented.\");\n },\n cacheSignal: function () {\n throw Error(\"Not implemented.\");\n }\n };\nfunction prepareStackTrace(error, structuredStackTrace) {\n error = (error.name || \"Error\") + \": \" + (error.message || \"\");\n for (var i = 0; i < structuredStackTrace.length; i++)\n error += \"\\n at \" + structuredStackTrace[i].toString();\n return error;\n}\nvar prefix, suffix;\nfunction describeBuiltInComponentFrame(name) {\n if (void 0 === prefix)\n try {\n throw Error();\n } catch (x) {\n var match = x.stack.trim().match(/\\n( *(at )?)/);\n prefix = (match && match[1]) || \"\";\n suffix =\n -1 < x.stack.indexOf(\"\\n at\")\n ? \" (<anonymous>)\"\n : -1 < x.stack.indexOf(\"@\")\n ? \"@unknown:0:0\"\n : \"\";\n }\n return \"\\n\" + prefix + name + suffix;\n}\nvar reentry = !1;\nfunction describeNativeComponentFrame(fn, construct) {\n if (!fn || reentry) return \"\";\n reentry = !0;\n var previousPrepareStackTrace = Error.prepareStackTrace;\n Error.prepareStackTrace = prepareStackTrace;\n try {\n var RunInRootFrame = {\n DetermineComponentFrameRoot: function () {\n try {\n if (construct) {\n var Fake = function () {\n throw Error();\n };\n Object.defineProperty(Fake.prototype, \"props\", {\n set: function () {\n throw Error();\n }\n });\n if (\"object\" === typeof Reflect && Reflect.construct) {\n try {\n Reflect.construct(Fake, []);\n } catch (x) {\n var control = x;\n }\n Reflect.construct(fn, [], Fake);\n } else {\n try {\n Fake.call();\n } catch (x$24) {\n control = x$24;\n }\n Fake = !1;\n try {\n var prevProps = Object.getOwnPropertyDescriptor(\n fn.prototype,\n \"props\"\n );\n Object.defineProperty(fn.prototype, \"props\", {\n configurable: !0,\n set: function () {\n throw Error();\n }\n });\n Fake = !0;\n new fn();\n } finally {\n Fake &&\n (void 0 !== prevProps\n ? Object.defineProperty(fn.prototype, \"props\", prevProps)\n : delete fn.prototype.props);\n }\n }\n } else {\n try {\n throw Error();\n } catch (x$25) {\n control = x$25;\n }\n (Fake = fn()) &&\n \"function\" === typeof Fake.catch &&\n Fake.catch(function () {});\n }\n } catch (sample) {\n if (sample && control && \"string\" === typeof sample.stack)\n return [sample.stack, control.stack];\n }\n return [null, null];\n }\n };\n RunInRootFrame.DetermineComponentFrameRoot.displayName =\n \"DetermineComponentFrameRoot\";\n var namePropDescriptor = Object.getOwnPropertyDescriptor(\n RunInRootFrame.DetermineComponentFrameRoot,\n \"name\"\n );\n namePropDescriptor &&\n namePropDescriptor.configurable &&\n Object.defineProperty(\n RunInRootFrame.DetermineComponentFrameRoot,\n \"name\",\n { value: \"DetermineComponentFrameRoot\" }\n );\n var _RunInRootFrame$Deter = RunInRootFrame.DetermineComponentFrameRoot(),\n sampleStack = _RunInRootFrame$Deter[0],\n controlStack = _RunInRootFrame$Deter[1];\n if (sampleStack && controlStack) {\n var sampleLines = sampleStack.split(\"\\n\"),\n controlLines = controlStack.split(\"\\n\");\n for (\n namePropDescriptor = RunInRootFrame = 0;\n RunInRootFrame < sampleLines.length &&\n !sampleLines[RunInRootFrame].includes(\"DetermineComponentFrameRoot\");\n\n )\n RunInRootFrame++;\n for (\n ;\n namePropDescriptor < controlLines.length &&\n !controlLines[namePropDescriptor].includes(\n \"DetermineComponentFrameRoot\"\n );\n\n )\n namePropDescriptor++;\n if (\n RunInRootFrame === sampleLines.length ||\n namePropDescriptor === controlLines.length\n )\n for (\n RunInRootFrame = sampleLines.length - 1,\n namePropDescriptor = controlLines.length - 1;\n 1 <= RunInRootFrame &&\n 0 <= namePropDescriptor &&\n sampleLines[RunInRootFrame] !== controlLines[namePropDescriptor];\n\n )\n namePropDescriptor--;\n for (\n ;\n 1 <= RunInRootFrame && 0 <= namePropDescriptor;\n RunInRootFrame--, namePropDescriptor--\n )\n if (sampleLines[RunInRootFrame] !== controlLines[namePropDescriptor]) {\n if (1 !== RunInRootFrame || 1 !== namePropDescriptor) {\n do\n if (\n (RunInRootFrame--,\n namePropDescriptor--,\n 0 > namePropDescriptor ||\n sampleLines[RunInRootFrame] !==\n controlLines[namePropDescriptor])\n ) {\n var frame =\n \"\\n\" +\n sampleLines[RunInRootFrame].replace(\" at new \", \" at \");\n fn.displayName &&\n frame.includes(\"<anonymous>\") &&\n (frame = frame.replace(\"<anonymous>\", fn.displayName));\n return frame;\n }\n while (1 <= RunInRootFrame && 0 <= namePropDescriptor);\n }\n break;\n }\n }\n } finally {\n (reentry = !1), (Error.prepareStackTrace = previousPrepareStackTrace);\n }\n return (previousPrepareStackTrace = fn ? fn.displayName || fn.name : \"\")\n ? describeBuiltInComponentFrame(previousPrepareStackTrace)\n : \"\";\n}\nfunction describeComponentStackByType(type) {\n if (\"string\" === typeof type) return describeBuiltInComponentFrame(type);\n if (\"function\" === typeof type)\n return type.prototype && type.prototype.isReactComponent\n ? describeNativeComponentFrame(type, !0)\n : describeNativeComponentFrame(type, !1);\n if (\"object\" === typeof type && null !== type) {\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n return describeNativeComponentFrame(type.render, !1);\n case REACT_MEMO_TYPE:\n return describeNativeComponentFrame(type.type, !1);\n case REACT_LAZY_TYPE:\n var lazyComponent = type,\n payload = lazyComponent._payload;\n lazyComponent = lazyComponent._init;\n try {\n type = lazyComponent(payload);\n } catch (x) {\n return describeBuiltInComponentFrame(\"Lazy\");\n }\n return describeComponentStackByType(type);\n }\n if (\"string\" === typeof type.name) {\n a: {\n payload = type.name;\n lazyComponent = type.env;\n var location = type.debugLocation;\n if (\n null != location &&\n ((type = Error.prepareStackTrace),\n (Error.prepareStackTrace = prepareStackTrace),\n (location = location.stack),\n (Error.prepareStackTrace = type),\n location.startsWith(\"Error: react-stack-top-frame\\n\") &&\n (location = location.slice(29)),\n (type = location.indexOf(\"\\n\")),\n -1 !== type && (location = location.slice(type + 1)),\n (type = location.indexOf(\"react_stack_bottom_frame\")),\n -1 !== type && (type = location.lastIndexOf(\"\\n\", type)),\n (type = -1 !== type ? (location = location.slice(0, type)) : \"\"),\n (location = type.lastIndexOf(\"\\n\")),\n (type = -1 === location ? type : type.slice(location + 1)),\n -1 !== type.indexOf(payload))\n ) {\n payload = \"\\n\" + type;\n break a;\n }\n payload = describeBuiltInComponentFrame(\n payload + (lazyComponent ? \" [\" + lazyComponent + \"]\" : \"\")\n );\n }\n return payload;\n }\n }\n switch (type) {\n case REACT_SUSPENSE_LIST_TYPE:\n return describeBuiltInComponentFrame(\"SuspenseList\");\n case REACT_SUSPENSE_TYPE:\n return describeBuiltInComponentFrame(\"Suspense\");\n case REACT_VIEW_TRANSITION_TYPE:\n return describeBuiltInComponentFrame(\"ViewTransition\");\n }\n return \"\";\n}\nfunction getViewTransitionClassName(defaultClass, eventClass) {\n defaultClass =\n null == defaultClass || \"string\" === typeof defaultClass\n ? defaultClass\n : defaultClass.default;\n eventClass =\n null == eventClass || \"string\" === typeof eventClass\n ? eventClass\n : eventClass.default;\n return null == eventClass\n ? \"auto\" === defaultClass\n ? null\n : defaultClass\n : \"auto\" === eventClass\n ? null\n : eventClass;\n}\nfunction isEligibleForOutlining(request, boundary) {\n return (\n (500 < boundary.byteSize ||\n hasSuspenseyContent(boundary.contentState, !1) ||\n boundary.defer) &&\n null === boundary.preamble\n );\n}\nfunction defaultErrorHandler(error) {\n if (\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.environmentName\n ) {\n var JSCompiler_inline_result = error.environmentName;\n error = [error].slice(0);\n \"string\" === typeof error[0]\n ? error.splice(\n 0,\n 1,\n \"\\u001b[0m\\u001b[7m%c%s\\u001b[0m%c \" + error[0],\n \"background: #e6e6e6;background: light-dark(rgba(0,0,0,0.1), rgba(255,255,255,0.25));color: #000000;color: light-dark(#000000, #ffffff);border-radius: 2px\",\n \" \" + JSCompiler_inline_result + \" \",\n \"\"\n )\n : error.splice(\n 0,\n 0,\n \"\\u001b[0m\\u001b[7m%c%s\\u001b[0m%c\",\n \"background: #e6e6e6;background: light-dark(rgba(0,0,0,0.1), rgba(255,255,255,0.25));color: #000000;color: light-dark(#000000, #ffffff);border-radius: 2px\",\n \" \" + JSCompiler_inline_result + \" \",\n \"\"\n );\n error.unshift(console);\n JSCompiler_inline_result = bind.apply(console.error, error);\n JSCompiler_inline_result();\n } else console.error(error);\n return null;\n}\nfunction RequestInstance(\n resumableState,\n renderState,\n rootFormatContext,\n progressiveChunkSize,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError,\n formState\n) {\n var abortSet = new Set();\n this.destination = null;\n this.flushScheduled = !1;\n this.resumableState = resumableState;\n this.renderState = renderState;\n this.rootFormatContext = rootFormatContext;\n this.progressiveChunkSize =\n void 0 === progressiveChunkSize ? 12800 : progressiveChunkSize;\n this.status = 10;\n this.fatalError = null;\n this.aborted = !1;\n this.pendingRootTasks = this.allPendingTasks = this.nextSegmentId = 0;\n this.completedPreambleSegments = this.completedRootSegment = null;\n this.byteSize = 0;\n this.abortableTasks = abortSet;\n this.pingedTasks = [];\n this.currentTask = null;\n this.clientRenderedBoundaries = [];\n this.completedBoundaries = [];\n this.partialBoundaries = [];\n this.postponedState = this.trackedPostpones = null;\n this.onError = void 0 === onError ? defaultErrorHandler : onError;\n this.onBrowserBailout = void 0 === onBrowserBailout ? noop : onBrowserBailout;\n this.onAllReady = void 0 === onAllReady ? noop : onAllReady;\n this.onShellReady = void 0 === onShellReady ? noop : onShellReady;\n this.onShellError = void 0 === onShellError ? noop : onShellError;\n this.onFatalError = void 0 === onFatalError ? noop : onFatalError;\n this.renderLifetimeController = null;\n this.formState = void 0 === formState ? null : formState;\n}\nfunction createRequest(\n children,\n resumableState,\n renderState,\n rootFormatContext,\n progressiveChunkSize,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError,\n formState\n) {\n resumableState = new RequestInstance(\n resumableState,\n renderState,\n rootFormatContext,\n progressiveChunkSize,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError,\n formState\n );\n renderState = createPendingSegment(\n resumableState,\n 0,\n null,\n rootFormatContext,\n !1,\n !1\n );\n renderState.parentFlushed = !0;\n children = createRenderTask(\n resumableState,\n null,\n children,\n -1,\n null,\n renderState,\n null,\n null,\n resumableState.abortableTasks,\n null,\n rootFormatContext,\n null,\n emptyTreeContext,\n null,\n null\n );\n pushComponentStack(children);\n resumableState.pingedTasks.push(children);\n return resumableState;\n}\nfunction createPrerenderRequest(\n children,\n resumableState,\n renderState,\n rootFormatContext,\n progressiveChunkSize,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError\n) {\n children = createRequest(\n children,\n resumableState,\n renderState,\n rootFormatContext,\n progressiveChunkSize,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError,\n void 0\n );\n children.trackedPostpones = {\n workingMap: new Map(),\n rootNodes: [],\n rootSlots: null\n };\n return children;\n}\nfunction resumeRequest(\n children,\n postponedState,\n renderState,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError\n) {\n renderState = new RequestInstance(\n postponedState.resumableState,\n renderState,\n postponedState.rootFormatContext,\n postponedState.progressiveChunkSize,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError,\n null\n );\n renderState.nextSegmentId = postponedState.nextSegmentId;\n if (\"number\" === typeof postponedState.replaySlots)\n return (\n (onError = createPendingSegment(\n renderState,\n 0,\n null,\n postponedState.rootFormatContext,\n !1,\n !1\n )),\n (onError.parentFlushed = !0),\n (children = createRenderTask(\n renderState,\n null,\n children,\n -1,\n null,\n onError,\n null,\n null,\n renderState.abortableTasks,\n null,\n postponedState.rootFormatContext,\n null,\n emptyTreeContext,\n null,\n null\n )),\n pushComponentStack(children),\n renderState.pingedTasks.push(children),\n renderState\n );\n children = createReplayTask(\n renderState,\n null,\n {\n nodes: postponedState.replayNodes,\n slots: postponedState.replaySlots,\n pendingTasks: 0\n },\n children,\n -1,\n null,\n null,\n renderState.abortableTasks,\n null,\n postponedState.rootFormatContext,\n null,\n emptyTreeContext,\n null,\n null\n );\n pushComponentStack(children);\n renderState.pingedTasks.push(children);\n return renderState;\n}\nfunction resumeAndPrerenderRequest(\n children,\n postponedState,\n renderState,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError\n) {\n children = resumeRequest(\n children,\n postponedState,\n renderState,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError\n );\n children.trackedPostpones = {\n workingMap: new Map(),\n rootNodes: [],\n rootSlots: null\n };\n return children;\n}\nvar currentRequest = null;\nfunction resolveRequest() {\n if (currentRequest) return currentRequest;\n if (supportsRequestStorage) {\n var store = requestStorage.getStore();\n if (store) return store;\n }\n return null;\n}\nfunction pingTask(request, task) {\n request.pingedTasks.push(task);\n 1 === request.pingedTasks.length &&\n ((request.flushScheduled = null !== request.destination),\n null !== request.trackedPostpones || 10 === request.status\n ? scheduleMicrotask(function () {\n return performWork(request);\n })\n : setTimeout(function () {\n return performWork(request);\n }, 0));\n}\nfunction createSuspenseBoundary(\n request,\n row,\n fallbackAbortableTasks,\n preamble,\n defer\n) {\n fallbackAbortableTasks = {\n status: 0,\n rootSegmentID: -1,\n parentFlushed: !1,\n pendingTasks: 0,\n row: row,\n completedSegments: [],\n byteSize: 0,\n defer: defer,\n fallbackAbortableTasks: fallbackAbortableTasks,\n errorDigest: null,\n contentState: createHoistableState(),\n fallbackState: createHoistableState(),\n preamble: preamble,\n tracked: null\n };\n null !== row &&\n (row.pendingTasks++,\n (preamble = row.boundaries),\n null !== preamble &&\n (request.allPendingTasks++,\n fallbackAbortableTasks.pendingTasks++,\n preamble.push(fallbackAbortableTasks)),\n (request = row.inheritedHoistables),\n null !== request &&\n hoistHoistables(fallbackAbortableTasks.contentState, request));\n return fallbackAbortableTasks;\n}\nfunction createRenderTask(\n request,\n thenableState,\n node,\n childIndex,\n blockedBoundary,\n blockedSegment,\n blockedPreamble,\n hoistableState,\n abortSet,\n keyPath,\n formatContext,\n context,\n treeContext,\n row,\n componentStack\n) {\n request.allPendingTasks++;\n null === blockedBoundary\n ? request.pendingRootTasks++\n : blockedBoundary.pendingTasks++;\n null !== row && row.pendingTasks++;\n var task = {\n replay: null,\n node: node,\n childIndex: childIndex,\n ping: {\n resolve: function () {\n return pingTask(request, task);\n },\n reject: function (error) {\n request.aborted\n ? task.abortSet.delete(task) &&\n finishAbortedTask(task, request, error)\n : pingTask(request, task);\n }\n },\n blockedBoundary: blockedBoundary,\n blockedSegment: blockedSegment,\n blockedPreamble: blockedPreamble,\n hoistableState: hoistableState,\n abortSet: abortSet,\n keyPath: keyPath,\n formatContext: formatContext,\n context: context,\n treeContext: treeContext,\n row: row,\n componentStack: componentStack,\n thenableState: thenableState\n };\n abortSet.add(task);\n return task;\n}\nfunction createReplayTask(\n request,\n thenableState,\n replay,\n node,\n childIndex,\n blockedBoundary,\n hoistableState,\n abortSet,\n keyPath,\n formatContext,\n context,\n treeContext,\n row,\n componentStack\n) {\n request.allPendingTasks++;\n null === blockedBoundary\n ? request.pendingRootTasks++\n : blockedBoundary.pendingTasks++;\n null !== row && row.pendingTasks++;\n replay.pendingTasks++;\n var task = {\n replay: replay,\n node: node,\n childIndex: childIndex,\n ping: {\n resolve: function () {\n return pingTask(request, task);\n },\n reject: function (error) {\n request.aborted\n ? task.abortSet.delete(task) &&\n finishAbortedTask(task, request, error)\n : pingTask(request, task);\n }\n },\n blockedBoundary: blockedBoundary,\n blockedSegment: null,\n blockedPreamble: null,\n hoistableState: hoistableState,\n abortSet: abortSet,\n keyPath: keyPath,\n formatContext: formatContext,\n context: context,\n treeContext: treeContext,\n row: row,\n componentStack: componentStack,\n thenableState: thenableState\n };\n abortSet.add(task);\n return task;\n}\nfunction createPendingSegment(\n request,\n index,\n boundary,\n parentFormatContext,\n lastPushedText,\n textEmbedded\n) {\n return {\n status: 0,\n parentFlushed: !1,\n id: -1,\n index: index,\n chunks: [],\n children: [],\n preambleChildren: [],\n parentFormatContext: parentFormatContext,\n boundary: boundary,\n lastPushedText: lastPushedText,\n textEmbedded: textEmbedded\n };\n}\nfunction pushComponentStack(task) {\n var node = task.node;\n if (\"object\" === typeof node && null !== node)\n switch (node.$$typeof) {\n case REACT_ELEMENT_TYPE:\n task.componentStack = { parent: task.componentStack, type: node.type };\n }\n}\nfunction replaceSuspenseComponentStackWithSuspenseFallbackStack(\n componentStack\n) {\n return null === componentStack\n ? null\n : { parent: componentStack.parent, type: \"Suspense Fallback\" };\n}\nfunction getThrownInfo(node$jscomp$0) {\n var errorInfo = {};\n node$jscomp$0 &&\n Object.defineProperty(errorInfo, \"componentStack\", {\n configurable: !0,\n enumerable: !0,\n get: function () {\n try {\n var info = \"\",\n node = node$jscomp$0;\n do\n (info += describeComponentStackByType(node.type)),\n (node = node.parent);\n while (node);\n var JSCompiler_inline_result = info;\n } catch (x) {\n JSCompiler_inline_result =\n \"\\nError generating stack: \" + x.message + \"\\n\" + x.stack;\n }\n Object.defineProperty(errorInfo, \"componentStack\", {\n value: JSCompiler_inline_result\n });\n return JSCompiler_inline_result;\n }\n });\n return errorInfo;\n}\nfunction logRecoverableError(request, error, errorInfo) {\n if (isRecoverableError(error))\n return (request = request.onBrowserBailout), request(error, errorInfo), \"\";\n request = request.onError;\n error = request(error, errorInfo);\n if (null == error || \"string\" === typeof error)\n return \"\" === error ? void 0 : error;\n}\nfunction fatalError(request, error) {\n var onShellError = request.onShellError,\n onFatalError = request.onFatalError;\n 0 !== request.pendingRootTasks && onShellError(error);\n onFatalError(error);\n endRenderLifetime(request);\n null !== request.destination\n ? ((request.status = 13), closeWithError(request.destination, error))\n : ((request.status = 12), request.aborted || (request.fatalError = error));\n}\nfunction finishSuspenseListRow(request, row) {\n unblockSuspenseListRow(request, row.next, row.hoistables);\n}\nfunction unblockSuspenseListRow(request, unblockedRow, inheritedHoistables) {\n for (; null !== unblockedRow; ) {\n null !== inheritedHoistables &&\n (hoistHoistables(unblockedRow.hoistables, inheritedHoistables),\n (unblockedRow.inheritedHoistables = inheritedHoistables));\n var unblockedBoundaries = unblockedRow.boundaries;\n if (null !== unblockedBoundaries) {\n unblockedRow.boundaries = null;\n for (var i = 0; i < unblockedBoundaries.length; i++) {\n var unblockedBoundary = unblockedBoundaries[i];\n null !== inheritedHoistables &&\n hoistHoistables(unblockedBoundary.contentState, inheritedHoistables);\n finishedTask(request, unblockedBoundary, null, null);\n }\n }\n unblockedRow.pendingTasks--;\n if (0 < unblockedRow.pendingTasks) break;\n inheritedHoistables = unblockedRow.hoistables;\n unblockedRow = unblockedRow.next;\n }\n}\nfunction tryToResolveTogetherRow(request, togetherRow) {\n var boundaries = togetherRow.boundaries;\n if (null !== boundaries && togetherRow.pendingTasks === boundaries.length) {\n for (var allCompleteAndInlinable = !0, i = 0; i < boundaries.length; i++) {\n var rowBoundary = boundaries[i];\n if (\n 1 !== rowBoundary.pendingTasks ||\n rowBoundary.parentFlushed ||\n isEligibleForOutlining(request, rowBoundary)\n ) {\n allCompleteAndInlinable = !1;\n break;\n }\n }\n allCompleteAndInlinable &&\n unblockSuspenseListRow(request, togetherRow, togetherRow.hoistables);\n }\n}\nfunction createSuspenseListRow(previousRow) {\n var newRow = {\n pendingTasks: 1,\n boundaries: null,\n hoistables: createHoistableState(),\n inheritedHoistables: null,\n together: !1,\n next: null\n };\n null !== previousRow &&\n 0 < previousRow.pendingTasks &&\n (newRow.pendingTasks++,\n (newRow.boundaries = []),\n (previousRow.next = newRow));\n return newRow;\n}\nfunction renderSuspenseListRows(request, task, keyPath, rows, revealOrder) {\n var prevKeyPath = task.keyPath,\n prevTreeContext = task.treeContext,\n prevRow = task.row;\n task.keyPath = keyPath;\n keyPath = rows.length;\n var previousSuspenseListRow = null;\n if (null !== task.replay) {\n var resumeSlots = task.replay.slots;\n if (null !== resumeSlots && \"object\" === typeof resumeSlots)\n for (var n = 0; n < keyPath; n++) {\n var i =\n \"backwards\" !== revealOrder &&\n \"unstable_legacy-backwards\" !== revealOrder\n ? n\n : keyPath - 1 - n,\n node = rows[i];\n task.row = previousSuspenseListRow = createSuspenseListRow(\n previousSuspenseListRow\n );\n task.treeContext = pushTreeContext(prevTreeContext, keyPath, i);\n var resumeSegmentID = resumeSlots[i];\n \"number\" === typeof resumeSegmentID\n ? (resumeNode(request, task, resumeSegmentID, node, i),\n delete resumeSlots[i])\n : renderNode(request, task, node, i);\n 0 === --previousSuspenseListRow.pendingTasks &&\n finishSuspenseListRow(request, previousSuspenseListRow);\n }\n else\n for (resumeSlots = 0; resumeSlots < keyPath; resumeSlots++)\n (n =\n \"backwards\" !== revealOrder &&\n \"unstable_legacy-backwards\" !== revealOrder\n ? resumeSlots\n : keyPath - 1 - resumeSlots),\n (i = rows[n]),\n (task.row = previousSuspenseListRow =\n createSuspenseListRow(previousSuspenseListRow)),\n (task.treeContext = pushTreeContext(prevTreeContext, keyPath, n)),\n renderNode(request, task, i, n),\n 0 === --previousSuspenseListRow.pendingTasks &&\n finishSuspenseListRow(request, previousSuspenseListRow);\n } else if (\n \"backwards\" !== revealOrder &&\n \"unstable_legacy-backwards\" !== revealOrder\n )\n for (revealOrder = 0; revealOrder < keyPath; revealOrder++)\n (resumeSlots = rows[revealOrder]),\n (task.row = previousSuspenseListRow =\n createSuspenseListRow(previousSuspenseListRow)),\n (task.treeContext = pushTreeContext(\n prevTreeContext,\n keyPath,\n revealOrder\n )),\n renderNode(request, task, resumeSlots, revealOrder),\n 0 === --previousSuspenseListRow.pendingTasks &&\n finishSuspenseListRow(request, previousSuspenseListRow);\n else {\n resumeSlots = task.blockedSegment;\n n = resumeSlots.children.length;\n i = resumeSlots.chunks.length;\n for (node = 0; node < keyPath; node++) {\n resumeSegmentID =\n \"unstable_legacy-backwards\" === revealOrder ? keyPath - 1 - node : node;\n var node$40 = rows[resumeSegmentID];\n task.row = previousSuspenseListRow = createSuspenseListRow(\n previousSuspenseListRow\n );\n task.treeContext = pushTreeContext(\n prevTreeContext,\n keyPath,\n resumeSegmentID\n );\n var newSegment = createPendingSegment(\n request,\n i,\n null,\n task.formatContext,\n 0 === resumeSegmentID ? resumeSlots.lastPushedText : !0,\n !0\n );\n resumeSlots.children.splice(n, 0, newSegment);\n task.blockedSegment = newSegment;\n try {\n renderNode(request, task, node$40, resumeSegmentID),\n newSegment.lastPushedText &&\n newSegment.textEmbedded &&\n newSegment.chunks.push(textSeparator),\n (newSegment.status = 1),\n finishedSegment(request, task.blockedBoundary, newSegment),\n 0 === --previousSuspenseListRow.pendingTasks &&\n finishSuspenseListRow(request, previousSuspenseListRow);\n } catch (thrownValue) {\n throw ((newSegment.status = request.aborted ? 3 : 4), thrownValue);\n }\n }\n task.blockedSegment = resumeSlots;\n resumeSlots.lastPushedText = !1;\n }\n null !== prevRow &&\n null !== previousSuspenseListRow &&\n 0 < previousSuspenseListRow.pendingTasks &&\n (prevRow.pendingTasks++, (previousSuspenseListRow.next = prevRow));\n task.treeContext = prevTreeContext;\n task.row = prevRow;\n task.keyPath = prevKeyPath;\n}\nfunction renderWithHooks(request, task, keyPath, Component, props, secondArg) {\n var prevThenableState = task.thenableState;\n task.thenableState = null;\n currentlyRenderingComponent = {};\n currentlyRenderingTask = task;\n currentlyRenderingRequest = request;\n currentlyRenderingKeyPath = keyPath;\n actionStateCounter = localIdCounter = 0;\n actionStateMatchingIndex = -1;\n thenableIndexCounter = 0;\n thenableState = prevThenableState;\n for (request = Component(props, secondArg); didScheduleRenderPhaseUpdate; )\n (didScheduleRenderPhaseUpdate = !1),\n (actionStateCounter = localIdCounter = 0),\n (actionStateMatchingIndex = -1),\n (thenableIndexCounter = 0),\n (numberOfReRenders += 1),\n (workInProgressHook = null),\n (request = Component(props, secondArg));\n resetHooksState();\n return request;\n}\nfunction finishFunctionComponent(\n request,\n task,\n keyPath,\n children,\n hasId,\n actionStateCount,\n actionStateMatchingIndex\n) {\n var didEmitActionStateMarkers = !1;\n if (0 !== actionStateCount && null !== request.formState) {\n var segment = task.blockedSegment;\n if (null !== segment) {\n didEmitActionStateMarkers = !0;\n segment = segment.chunks;\n for (var i = 0; i < actionStateCount; i++)\n i === actionStateMatchingIndex\n ? segment.push(formStateMarkerIsMatching)\n : segment.push(formStateMarkerIsNotMatching);\n }\n }\n actionStateCount = task.keyPath;\n task.keyPath = keyPath;\n hasId\n ? ((keyPath = task.treeContext),\n (task.treeContext = pushTreeContext(keyPath, 1, 0)),\n renderNode(request, task, children, -1),\n (task.treeContext = keyPath))\n : didEmitActionStateMarkers\n ? renderNode(request, task, children, -1)\n : renderNodeDestructive(request, task, children, -1);\n task.keyPath = actionStateCount;\n}\nfunction renderElement(request, task, keyPath, type, props, ref) {\n if (\"function\" === typeof type)\n if (type.prototype && type.prototype.isReactComponent) {\n var newProps = props;\n if (\"ref\" in props) {\n newProps = {};\n for (var propName in props)\n \"ref\" !== propName && (newProps[propName] = props[propName]);\n }\n var defaultProps = type.defaultProps;\n if (defaultProps) {\n newProps === props && (newProps = assign({}, newProps, props));\n for (var propName$45 in defaultProps)\n void 0 === newProps[propName$45] &&\n (newProps[propName$45] = defaultProps[propName$45]);\n }\n var JSCompiler_inline_result = newProps;\n var context = emptyContextObject,\n contextType = type.contextType;\n \"object\" === typeof contextType &&\n null !== contextType &&\n (context = contextType._currentValue);\n var JSCompiler_inline_result$jscomp$0 = new type(\n JSCompiler_inline_result,\n context\n );\n var initialState =\n void 0 !== JSCompiler_inline_result$jscomp$0.state\n ? JSCompiler_inline_result$jscomp$0.state\n : null;\n JSCompiler_inline_result$jscomp$0.updater = classComponentUpdater;\n JSCompiler_inline_result$jscomp$0.props = JSCompiler_inline_result;\n JSCompiler_inline_result$jscomp$0.state = initialState;\n var internalInstance = { queue: [], replace: !1 };\n JSCompiler_inline_result$jscomp$0._reactInternals = internalInstance;\n var contextType$jscomp$0 = type.contextType;\n JSCompiler_inline_result$jscomp$0.context =\n \"object\" === typeof contextType$jscomp$0 &&\n null !== contextType$jscomp$0\n ? contextType$jscomp$0._currentValue\n : emptyContextObject;\n var getDerivedStateFromProps = type.getDerivedStateFromProps;\n if (\"function\" === typeof getDerivedStateFromProps) {\n var partialState = getDerivedStateFromProps(\n JSCompiler_inline_result,\n initialState\n );\n var JSCompiler_inline_result$jscomp$1 =\n null === partialState || void 0 === partialState\n ? initialState\n : assign({}, initialState, partialState);\n JSCompiler_inline_result$jscomp$0.state =\n JSCompiler_inline_result$jscomp$1;\n }\n if (\n \"function\" !== typeof type.getDerivedStateFromProps &&\n \"function\" !==\n typeof JSCompiler_inline_result$jscomp$0.getSnapshotBeforeUpdate &&\n (\"function\" ===\n typeof JSCompiler_inline_result$jscomp$0.UNSAFE_componentWillMount ||\n \"function\" ===\n typeof JSCompiler_inline_result$jscomp$0.componentWillMount)\n ) {\n var oldState = JSCompiler_inline_result$jscomp$0.state;\n \"function\" ===\n typeof JSCompiler_inline_result$jscomp$0.componentWillMount &&\n JSCompiler_inline_result$jscomp$0.componentWillMount();\n \"function\" ===\n typeof JSCompiler_inline_result$jscomp$0.UNSAFE_componentWillMount &&\n JSCompiler_inline_result$jscomp$0.UNSAFE_componentWillMount();\n oldState !== JSCompiler_inline_result$jscomp$0.state &&\n classComponentUpdater.enqueueReplaceState(\n JSCompiler_inline_result$jscomp$0,\n JSCompiler_inline_result$jscomp$0.state,\n null\n );\n if (\n null !== internalInstance.queue &&\n 0 < internalInstance.queue.length\n ) {\n var oldQueue = internalInstance.queue,\n oldReplace = internalInstance.replace;\n internalInstance.queue = null;\n internalInstance.replace = !1;\n if (oldReplace && 1 === oldQueue.length)\n JSCompiler_inline_result$jscomp$0.state = oldQueue[0];\n else {\n for (\n var nextState = oldReplace\n ? oldQueue[0]\n : JSCompiler_inline_result$jscomp$0.state,\n dontMutate = !0,\n i = oldReplace ? 1 : 0;\n i < oldQueue.length;\n i++\n ) {\n var partial = oldQueue[i],\n partialState$jscomp$0 =\n \"function\" === typeof partial\n ? partial.call(\n JSCompiler_inline_result$jscomp$0,\n nextState,\n JSCompiler_inline_result,\n void 0\n )\n : partial;\n null != partialState$jscomp$0 &&\n (dontMutate\n ? ((dontMutate = !1),\n (nextState = assign({}, nextState, partialState$jscomp$0)))\n : assign(nextState, partialState$jscomp$0));\n }\n JSCompiler_inline_result$jscomp$0.state = nextState;\n }\n } else internalInstance.queue = null;\n }\n var nextChildren = JSCompiler_inline_result$jscomp$0.render();\n if (request.aborted) throw null;\n var prevKeyPath = task.keyPath;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, nextChildren, -1);\n task.keyPath = prevKeyPath;\n } else {\n var value = renderWithHooks(request, task, keyPath, type, props, void 0);\n if (request.aborted) throw null;\n finishFunctionComponent(\n request,\n task,\n keyPath,\n value,\n 0 !== localIdCounter,\n actionStateCounter,\n actionStateMatchingIndex\n );\n }\n else if (\"string\" === typeof type) {\n var segment = task.blockedSegment;\n if (null === segment) {\n var children = props.children,\n prevContext = task.formatContext,\n prevKeyPath$jscomp$0 = task.keyPath;\n task.formatContext = getChildFormatContext(prevContext, type, props);\n task.keyPath = keyPath;\n renderNode(request, task, children, -1);\n task.formatContext = prevContext;\n task.keyPath = prevKeyPath$jscomp$0;\n } else {\n var children$42 = pushStartInstance(\n segment.chunks,\n type,\n props,\n request.resumableState,\n request.renderState,\n task.blockedPreamble,\n task.hoistableState,\n task.formatContext,\n segment.lastPushedText\n );\n segment.lastPushedText = !1;\n var prevContext$43 = task.formatContext,\n prevKeyPath$44 = task.keyPath;\n task.keyPath = keyPath;\n if (\n 3 ===\n (task.formatContext = getChildFormatContext(\n prevContext$43,\n type,\n props\n )).insertionMode\n ) {\n var preambleSegment = createPendingSegment(\n request,\n 0,\n null,\n task.formatContext,\n !1,\n !1\n );\n segment.preambleChildren.push(preambleSegment);\n task.blockedSegment = preambleSegment;\n try {\n renderNode(request, task, children$42, -1),\n preambleSegment.lastPushedText &&\n preambleSegment.textEmbedded &&\n preambleSegment.chunks.push(textSeparator),\n (preambleSegment.status = 1),\n finishedSegment(request, task.blockedBoundary, preambleSegment);\n } finally {\n task.blockedSegment = segment;\n }\n } else renderNode(request, task, children$42, -1);\n task.formatContext = prevContext$43;\n task.keyPath = prevKeyPath$44;\n a: {\n var target = segment.chunks,\n resumableState = request.resumableState;\n switch (type) {\n case \"title\":\n case \"style\":\n case \"script\":\n case \"area\":\n case \"base\":\n case \"br\":\n case \"col\":\n case \"embed\":\n case \"hr\":\n case \"img\":\n case \"input\":\n case \"keygen\":\n case \"link\":\n case \"meta\":\n case \"param\":\n case \"source\":\n case \"track\":\n case \"wbr\":\n break a;\n case \"body\":\n if (1 >= prevContext$43.insertionMode) {\n resumableState.hasBody = !0;\n break a;\n }\n break;\n case \"html\":\n if (0 === prevContext$43.insertionMode) {\n resumableState.hasHtml = !0;\n break a;\n }\n break;\n case \"head\":\n if (1 >= prevContext$43.insertionMode) break a;\n }\n target.push(endChunkForTag(type));\n }\n segment.lastPushedText = !1;\n }\n } else {\n switch (type) {\n case REACT_LEGACY_HIDDEN_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_FRAGMENT_TYPE:\n var prevKeyPath$jscomp$1 = task.keyPath;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, props.children, -1);\n task.keyPath = prevKeyPath$jscomp$1;\n return;\n case REACT_ACTIVITY_TYPE:\n var segment$jscomp$0 = task.blockedSegment;\n if (null === segment$jscomp$0) {\n if (\"hidden\" !== props.mode) {\n var prevKeyPath$jscomp$2 = task.keyPath;\n task.keyPath = keyPath;\n renderNode(request, task, props.children, -1);\n task.keyPath = prevKeyPath$jscomp$2;\n }\n } else if (\"hidden\" !== props.mode) {\n segment$jscomp$0.chunks.push(startActivityBoundary);\n segment$jscomp$0.lastPushedText = !1;\n var prevKeyPath$47 = task.keyPath;\n task.keyPath = keyPath;\n renderNode(request, task, props.children, -1);\n task.keyPath = prevKeyPath$47;\n segment$jscomp$0.chunks.push(endActivityBoundary);\n segment$jscomp$0.lastPushedText = !1;\n }\n return;\n case REACT_SUSPENSE_LIST_TYPE:\n a: {\n var children$jscomp$0 = props.children,\n revealOrder = props.revealOrder;\n if (\"independent\" !== revealOrder && \"together\" !== revealOrder) {\n if (isArrayImpl(children$jscomp$0)) {\n renderSuspenseListRows(\n request,\n task,\n keyPath,\n children$jscomp$0,\n revealOrder\n );\n break a;\n }\n var iteratorFn = getIteratorFn(children$jscomp$0);\n if (iteratorFn) {\n var iterator = iteratorFn.call(children$jscomp$0);\n if (iterator) {\n var step = iterator.next();\n if (!step.done) {\n do step = iterator.next();\n while (!step.done);\n renderSuspenseListRows(\n request,\n task,\n keyPath,\n children$jscomp$0,\n revealOrder\n );\n }\n break a;\n }\n }\n }\n if (\"together\" === revealOrder) {\n var prevKeyPath$41 = task.keyPath,\n prevRow = task.row,\n newRow = (task.row = createSuspenseListRow(null));\n newRow.boundaries = [];\n newRow.together = !0;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, children$jscomp$0, -1);\n 0 === --newRow.pendingTasks &&\n finishSuspenseListRow(request, newRow);\n task.keyPath = prevKeyPath$41;\n task.row = prevRow;\n null !== prevRow &&\n 0 < newRow.pendingTasks &&\n (prevRow.pendingTasks++, (newRow.next = prevRow));\n } else {\n var prevKeyPath$jscomp$3 = task.keyPath;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, children$jscomp$0, -1);\n task.keyPath = prevKeyPath$jscomp$3;\n }\n }\n return;\n case REACT_VIEW_TRANSITION_TYPE:\n var prevContext$jscomp$0 = task.formatContext,\n prevKeyPath$jscomp$4 = task.keyPath;\n var resumableState$jscomp$0 = request.resumableState;\n if (null != props.name && \"auto\" !== props.name)\n var JSCompiler_inline_result$jscomp$2 = props.name;\n else {\n var treeId = getTreeId(task.treeContext);\n JSCompiler_inline_result$jscomp$2 = makeId(\n resumableState$jscomp$0,\n treeId,\n 0\n );\n }\n var autoName = JSCompiler_inline_result$jscomp$2,\n resumableState$jscomp$1 = request.resumableState,\n update = getViewTransitionClassName(props.default, props.update),\n enter = getViewTransitionClassName(props.default, props.enter),\n exit = getViewTransitionClassName(props.default, props.exit),\n share = getViewTransitionClassName(props.default, props.share),\n name = props.name;\n null == update && (update = \"auto\");\n null == enter && (enter = \"auto\");\n null == exit && (exit = \"auto\");\n if (null == name) {\n var parentViewTransition = prevContext$jscomp$0.viewTransition;\n null !== parentViewTransition\n ? ((name = parentViewTransition.name),\n (share = parentViewTransition.share))\n : ((name = \"auto\"), (share = \"none\"));\n } else\n null == share && (share = \"auto\"),\n prevContext$jscomp$0.tagScope & 4 &&\n (resumableState$jscomp$1.instructions |= 128);\n prevContext$jscomp$0.tagScope & 8\n ? (resumableState$jscomp$1.instructions |= 128)\n : (exit = \"none\");\n prevContext$jscomp$0.tagScope & 16\n ? (resumableState$jscomp$1.instructions |= 128)\n : (enter = \"none\");\n var viewTransition = {\n update: update,\n enter: enter,\n exit: exit,\n share: share,\n parentEnter: \"none\",\n parentExit: \"none\",\n name: name,\n autoName: autoName,\n nameIdx: 0\n },\n subtreeScope = prevContext$jscomp$0.tagScope & -25;\n subtreeScope =\n \"none\" !== update ? subtreeScope | 32 : subtreeScope & -33;\n \"none\" !== enter && (subtreeScope |= 64);\n var JSCompiler_inline_result$jscomp$3 = createFormatContext(\n prevContext$jscomp$0.insertionMode,\n prevContext$jscomp$0.selectedValue,\n subtreeScope,\n viewTransition\n );\n task.formatContext = JSCompiler_inline_result$jscomp$3;\n task.keyPath = keyPath;\n if (null != props.name && \"auto\" !== props.name)\n renderNodeDestructive(request, task, props.children, -1);\n else {\n var prevTreeContext = task.treeContext;\n task.treeContext = pushTreeContext(prevTreeContext, 1, 0);\n renderNode(request, task, props.children, -1);\n task.treeContext = prevTreeContext;\n }\n task.formatContext = prevContext$jscomp$0;\n task.keyPath = prevKeyPath$jscomp$4;\n return;\n case REACT_SCOPE_TYPE:\n throw Error(\"ReactDOMServer does not yet support scope components.\");\n case REACT_SUSPENSE_TYPE:\n a: if (null !== task.replay) {\n var prevKeyPath$27 = task.keyPath,\n prevContext$28 = task.formatContext,\n prevRow$29 = task.row;\n task.keyPath = keyPath;\n task.formatContext = getSuspenseContentFormatContext(\n request.resumableState,\n prevContext$28\n );\n task.row = null;\n var content$30 = props.children;\n try {\n renderNode(request, task, content$30, -1);\n } finally {\n (task.keyPath = prevKeyPath$27),\n (task.formatContext = prevContext$28),\n (task.row = prevRow$29);\n }\n } else {\n var prevKeyPath$jscomp$5 = task.keyPath,\n prevContext$jscomp$1 = task.formatContext,\n prevRow$jscomp$0 = task.row,\n parentBoundary = task.blockedBoundary,\n parentPreamble = task.blockedPreamble,\n parentHoistableState = task.hoistableState,\n parentSegment = task.blockedSegment,\n fallback = props.fallback,\n content = props.children,\n fallbackAbortSet = new Set(),\n newBoundary = createSuspenseBoundary(\n request,\n task.row,\n fallbackAbortSet,\n 2 > task.formatContext.insertionMode\n ? {\n content: createPreambleState(),\n fallback: createPreambleState()\n }\n : null,\n !1\n ),\n boundarySegment = createPendingSegment(\n request,\n parentSegment.chunks.length,\n newBoundary,\n task.formatContext,\n !1,\n !1\n );\n parentSegment.children.push(boundarySegment);\n parentSegment.lastPushedText = !1;\n var contentRootSegment = createPendingSegment(\n request,\n 0,\n null,\n task.formatContext,\n !1,\n !1\n );\n contentRootSegment.parentFlushed = !0;\n var trackedPostpones = request.trackedPostpones;\n if (null !== trackedPostpones) {\n var suspenseComponentStack = task.componentStack,\n fallbackKeyPath = [keyPath[0], \"Suspense Fallback\", keyPath[2]];\n if (null !== trackedPostpones) {\n var fallbackReplayNode = [\n fallbackKeyPath[1],\n fallbackKeyPath[2],\n [],\n null\n ];\n trackedPostpones.workingMap.set(\n fallbackKeyPath,\n fallbackReplayNode\n );\n newBoundary.tracked = {\n contentKeyPath: keyPath,\n fallbackNode: fallbackReplayNode\n };\n }\n task.blockedSegment = boundarySegment;\n task.blockedPreamble =\n null === newBoundary.preamble\n ? null\n : newBoundary.preamble.fallback;\n task.keyPath = fallbackKeyPath;\n task.formatContext = getSuspenseFallbackFormatContext(\n request.resumableState,\n prevContext$jscomp$1\n );\n task.componentStack =\n replaceSuspenseComponentStackWithSuspenseFallbackStack(\n suspenseComponentStack\n );\n try {\n renderNode(request, task, fallback, -1),\n boundarySegment.lastPushedText &&\n boundarySegment.textEmbedded &&\n boundarySegment.chunks.push(textSeparator),\n (boundarySegment.status = 1),\n finishedSegment(request, parentBoundary, boundarySegment);\n } catch (thrownValue) {\n throw (\n ((boundarySegment.status = request.aborted ? 3 : 4),\n thrownValue)\n );\n } finally {\n (task.blockedSegment = parentSegment),\n (task.blockedPreamble = parentPreamble),\n (task.keyPath = prevKeyPath$jscomp$5),\n (task.formatContext = prevContext$jscomp$1);\n }\n var suspendedPrimaryTask = createRenderTask(\n request,\n null,\n content,\n -1,\n newBoundary,\n contentRootSegment,\n null === newBoundary.preamble\n ? null\n : newBoundary.preamble.content,\n newBoundary.contentState,\n task.abortSet,\n keyPath,\n getSuspenseContentFormatContext(\n request.resumableState,\n task.formatContext\n ),\n task.context,\n task.treeContext,\n null,\n suspenseComponentStack\n );\n pushComponentStack(suspendedPrimaryTask);\n request.pingedTasks.push(suspendedPrimaryTask);\n } else {\n task.blockedBoundary = newBoundary;\n task.blockedPreamble =\n null === newBoundary.preamble\n ? null\n : newBoundary.preamble.content;\n task.hoistableState = newBoundary.contentState;\n task.blockedSegment = contentRootSegment;\n task.keyPath = keyPath;\n task.formatContext = getSuspenseContentFormatContext(\n request.resumableState,\n prevContext$jscomp$1\n );\n task.row = null;\n try {\n if (\n (renderNode(request, task, content, -1),\n contentRootSegment.lastPushedText &&\n contentRootSegment.textEmbedded &&\n contentRootSegment.chunks.push(textSeparator),\n (contentRootSegment.status = 1),\n finishedSegment(request, newBoundary, contentRootSegment),\n queueCompletedSegment(newBoundary, contentRootSegment),\n 0 === newBoundary.pendingTasks && 0 === newBoundary.status)\n ) {\n if (\n ((newBoundary.status = 1),\n !isEligibleForOutlining(request, newBoundary))\n ) {\n null !== prevRow$jscomp$0 &&\n 0 === --prevRow$jscomp$0.pendingTasks &&\n finishSuspenseListRow(request, prevRow$jscomp$0);\n 0 === request.pendingRootTasks &&\n task.blockedPreamble &&\n preparePreamble(request);\n break a;\n }\n } else\n null !== prevRow$jscomp$0 &&\n prevRow$jscomp$0.together &&\n tryToResolveTogetherRow(request, prevRow$jscomp$0);\n } catch (thrownValue$31) {\n newBoundary.status = 4;\n if (request.aborted) {\n contentRootSegment.status = 3;\n var error = request.fatalError;\n } else (contentRootSegment.status = 4), (error = thrownValue$31);\n var thrownInfo = getThrownInfo(task.componentStack),\n errorDigest = logRecoverableError(request, error, thrownInfo);\n newBoundary.errorDigest = errorDigest;\n untrackBoundary(request, newBoundary);\n } finally {\n (task.blockedBoundary = parentBoundary),\n (task.blockedPreamble = parentPreamble),\n (task.hoistableState = parentHoistableState),\n (task.blockedSegment = parentSegment),\n (task.keyPath = prevKeyPath$jscomp$5),\n (task.formatContext = prevContext$jscomp$1),\n (task.row = prevRow$jscomp$0);\n }\n var suspendedFallbackTask = createRenderTask(\n request,\n null,\n fallback,\n -1,\n parentBoundary,\n boundarySegment,\n null === newBoundary.preamble\n ? null\n : newBoundary.preamble.fallback,\n newBoundary.fallbackState,\n fallbackAbortSet,\n [keyPath[0], \"Suspense Fallback\", keyPath[2]],\n getSuspenseFallbackFormatContext(\n request.resumableState,\n task.formatContext\n ),\n task.context,\n task.treeContext,\n task.row,\n replaceSuspenseComponentStackWithSuspenseFallbackStack(\n task.componentStack\n )\n );\n pushComponentStack(suspendedFallbackTask);\n request.pingedTasks.push(suspendedFallbackTask);\n }\n }\n return;\n }\n if (\"object\" === typeof type && null !== type)\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n if (\"ref\" in props) {\n var propsWithoutRef = {};\n for (var key in props)\n \"ref\" !== key && (propsWithoutRef[key] = props[key]);\n } else propsWithoutRef = props;\n var children$jscomp$1 = renderWithHooks(\n request,\n task,\n keyPath,\n type.render,\n propsWithoutRef,\n ref\n );\n finishFunctionComponent(\n request,\n task,\n keyPath,\n children$jscomp$1,\n 0 !== localIdCounter,\n actionStateCounter,\n actionStateMatchingIndex\n );\n return;\n case REACT_MEMO_TYPE:\n renderElement(request, task, keyPath, type.type, props, ref);\n return;\n case REACT_CONTEXT_TYPE:\n var children$jscomp$2 = props.children,\n prevKeyPath$jscomp$6 = task.keyPath,\n nextValue = props.value;\n var prevValue = type._currentValue;\n type._currentValue = nextValue;\n var prevNode = currentActiveSnapshot,\n newNode = {\n parent: prevNode,\n depth: null === prevNode ? 0 : prevNode.depth + 1,\n context: type,\n parentValue: prevValue,\n value: nextValue\n };\n currentActiveSnapshot = newNode;\n task.context = newNode;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, children$jscomp$2, -1);\n var prevSnapshot = currentActiveSnapshot;\n if (null === prevSnapshot)\n throw Error(\n \"Tried to pop a Context at the root of the app. This is a bug in React.\"\n );\n prevSnapshot.context._currentValue = prevSnapshot.parentValue;\n var JSCompiler_inline_result$jscomp$4 = (currentActiveSnapshot =\n prevSnapshot.parent);\n task.context = JSCompiler_inline_result$jscomp$4;\n task.keyPath = prevKeyPath$jscomp$6;\n return;\n case REACT_CONSUMER_TYPE:\n var render = props.children,\n newChildren = render(type._context._currentValue),\n prevKeyPath$jscomp$7 = task.keyPath;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, newChildren, -1);\n task.keyPath = prevKeyPath$jscomp$7;\n return;\n case REACT_LAZY_TYPE:\n var init = type._init;\n var Component = init(type._payload);\n if (request.aborted) throw null;\n renderElement(request, task, keyPath, Component, props, ref);\n return;\n }\n throw Error(\n \"Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: \" +\n ((null == type ? type : typeof type) + \".\")\n );\n }\n}\nfunction resumeNode(request, task, segmentId, node, childIndex) {\n var prevReplay = task.replay,\n blockedBoundary = task.blockedBoundary,\n resumedSegment = createPendingSegment(\n request,\n 0,\n null,\n task.formatContext,\n !1,\n !1\n );\n resumedSegment.id = segmentId;\n resumedSegment.parentFlushed = !0;\n try {\n (task.replay = null),\n (task.blockedSegment = resumedSegment),\n renderNode(request, task, node, childIndex),\n (resumedSegment.status = 1),\n finishedSegment(request, blockedBoundary, resumedSegment),\n null === blockedBoundary\n ? (request.completedRootSegment = resumedSegment)\n : (queueCompletedSegment(blockedBoundary, resumedSegment),\n blockedBoundary.parentFlushed &&\n request.partialBoundaries.push(blockedBoundary));\n } finally {\n (task.replay = prevReplay), (task.blockedSegment = null);\n }\n}\nfunction renderNodeDestructive(request, task, node, childIndex) {\n null !== task.replay && \"number\" === typeof task.replay.slots\n ? resumeNode(request, task, task.replay.slots, node, childIndex)\n : ((task.node = node),\n (task.childIndex = childIndex),\n (node = task.componentStack),\n pushComponentStack(task),\n retryNode(request, task),\n (task.componentStack = node));\n}\nfunction retryNode(request, task) {\n var node = task.node,\n childIndex = task.childIndex;\n if (null !== node) {\n if (\"object\" === typeof node) {\n switch (node.$$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = node.type,\n key = node.key,\n props = node.props;\n node = props.ref;\n var ref = void 0 !== node ? node : null,\n name = getComponentNameFromType(type),\n keyOrIndex =\n null == key || key === REACT_OPTIMISTIC_KEY\n ? -1 === childIndex\n ? 0\n : childIndex\n : key;\n key = [task.keyPath, name, keyOrIndex];\n if (null !== task.replay)\n a: {\n var replay = task.replay;\n childIndex = replay.nodes;\n for (node = 0; node < childIndex.length; node++) {\n var node$jscomp$0 = childIndex[node];\n if (keyOrIndex === node$jscomp$0[1]) {\n if (4 === node$jscomp$0.length) {\n if (null !== name && name !== node$jscomp$0[0])\n throw Error(\n \"Expected the resume to render <\" +\n node$jscomp$0[0] +\n \"> in this slot but instead it rendered <\" +\n name +\n \">. The tree doesn't match so React will fallback to client rendering.\"\n );\n var childNodes = node$jscomp$0[2],\n childSlots = node$jscomp$0[3],\n currentNode = task.node;\n task.replay = {\n nodes: childNodes,\n slots: childSlots,\n pendingTasks: 1\n };\n try {\n renderElement(request, task, key, type, props, ref);\n if (\n 1 === task.replay.pendingTasks &&\n 0 < task.replay.nodes.length\n )\n throw Error(\n \"Couldn't find all resumable slots by key/index during replaying. The tree doesn't match so React will fallback to client rendering.\"\n );\n task.replay.pendingTasks--;\n } catch (x) {\n if (\n \"object\" === typeof x &&\n null !== x &&\n (x === SuspenseException ||\n \"function\" === typeof x.then ||\n \"Maximum call stack size exceeded\" === x.message)\n )\n throw (\n (task.node === currentNode\n ? (task.replay = replay)\n : childIndex.splice(node, 1),\n x)\n );\n task.replay.pendingTasks--;\n key = getThrownInfo(task.componentStack);\n currentNode = request;\n props = task.blockedBoundary;\n request = request.aborted ? request.fatalError : x;\n key = logRecoverableError(currentNode, request, key);\n abortRemainingReplayNodes(\n currentNode,\n props,\n childNodes,\n childSlots,\n request,\n key\n );\n }\n task.replay = replay;\n } else {\n if (type !== REACT_SUSPENSE_TYPE)\n throw Error(\n \"Expected the resume to render <Suspense> in this slot but instead it rendered <\" +\n (getComponentNameFromType(type) || \"Unknown\") +\n \">. The tree doesn't match so React will fallback to client rendering.\"\n );\n b: {\n replay = node$jscomp$0[5];\n type = node$jscomp$0[2];\n ref = node$jscomp$0[3];\n name =\n null === node$jscomp$0[4] ? [] : node$jscomp$0[4][2];\n node$jscomp$0 =\n null === node$jscomp$0[4] ? null : node$jscomp$0[4][3];\n keyOrIndex = task.keyPath;\n var prevContext = task.formatContext,\n prevRow = task.row,\n previousReplaySet = task.replay,\n parentBoundary = task.blockedBoundary,\n parentHoistableState = task.hoistableState,\n content = props.children;\n props = props.fallback;\n var fallbackAbortSet = new Set(),\n resumedBoundary = createSuspenseBoundary(\n request,\n task.row,\n fallbackAbortSet,\n 2 > task.formatContext.insertionMode\n ? {\n content: createPreambleState(),\n fallback: createPreambleState()\n }\n : null,\n !1\n );\n resumedBoundary.parentFlushed = !0;\n resumedBoundary.rootSegmentID = replay;\n task.blockedBoundary = resumedBoundary;\n task.hoistableState = resumedBoundary.contentState;\n task.keyPath = key;\n task.formatContext = getSuspenseContentFormatContext(\n request.resumableState,\n prevContext\n );\n task.row = null;\n task.replay = {\n nodes: type,\n slots: ref,\n pendingTasks: 1\n };\n try {\n renderNode(request, task, content, -1);\n if (\n 1 === task.replay.pendingTasks &&\n 0 < task.replay.nodes.length\n )\n throw Error(\n \"Couldn't find all resumable slots by key/index during replaying. The tree doesn't match so React will fallback to client rendering.\"\n );\n task.replay.pendingTasks--;\n if (\n 0 === resumedBoundary.pendingTasks &&\n 0 === resumedBoundary.status\n ) {\n resumedBoundary.status = 1;\n request.completedBoundaries.push(resumedBoundary);\n break b;\n }\n } catch (thrownValue) {\n (resumedBoundary.status = 4),\n (childNodes = request.aborted\n ? request.fatalError\n : thrownValue),\n (childSlots = getThrownInfo(task.componentStack)),\n (currentNode = logRecoverableError(\n request,\n childNodes,\n childSlots\n )),\n (resumedBoundary.errorDigest = currentNode),\n task.replay.pendingTasks--,\n request.clientRenderedBoundaries.push(\n resumedBoundary\n );\n } finally {\n (task.blockedBoundary = parentBoundary),\n (task.hoistableState = parentHoistableState),\n (task.replay = previousReplaySet),\n (task.keyPath = keyOrIndex),\n (task.formatContext = prevContext),\n (task.row = prevRow);\n }\n childNodes = createReplayTask(\n request,\n null,\n { nodes: name, slots: node$jscomp$0, pendingTasks: 0 },\n props,\n -1,\n parentBoundary,\n resumedBoundary.fallbackState,\n fallbackAbortSet,\n [key[0], \"Suspense Fallback\", key[2]],\n getSuspenseFallbackFormatContext(\n request.resumableState,\n task.formatContext\n ),\n task.context,\n task.treeContext,\n task.row,\n replaceSuspenseComponentStackWithSuspenseFallbackStack(\n task.componentStack\n )\n );\n pushComponentStack(childNodes);\n request.pingedTasks.push(childNodes);\n }\n }\n childIndex.splice(node, 1);\n break a;\n }\n }\n }\n else renderElement(request, task, key, type, props, ref);\n return;\n case REACT_PORTAL_TYPE:\n throw Error(\n \"Portals are not currently supported by the server renderer. Render them conditionally so that they only appear on the client render.\"\n );\n case REACT_LAZY_TYPE:\n childNodes = node._init;\n node = childNodes(node._payload);\n if (request.aborted) throw null;\n renderNodeDestructive(request, task, node, childIndex);\n return;\n }\n if (isArrayImpl(node)) {\n renderChildrenArray(request, task, node, childIndex);\n return;\n }\n if ((childNodes = getIteratorFn(node)))\n if ((childNodes = childNodes.call(node))) {\n node = childNodes.next();\n if (!node.done) {\n childSlots = [];\n do childSlots.push(node.value), (node = childNodes.next());\n while (!node.done);\n renderChildrenArray(request, task, childSlots, childIndex);\n }\n return;\n }\n if (\"function\" === typeof node.then)\n return (\n (task.thenableState = null),\n renderNodeDestructive(request, task, unwrapThenable(node), childIndex)\n );\n if (node.$$typeof === REACT_CONTEXT_TYPE)\n return renderNodeDestructive(\n request,\n task,\n node._currentValue,\n childIndex\n );\n childIndex = Object.prototype.toString.call(node);\n throw Error(\n \"Objects are not valid as a React child (found: \" +\n (\"[object Object]\" === childIndex\n ? \"object with keys {\" + Object.keys(node).join(\", \") + \"}\"\n : childIndex) +\n \"). If you meant to render a collection of children, use an array instead.\"\n );\n }\n if (\"string\" === typeof node)\n (childIndex = task.blockedSegment),\n null !== childIndex &&\n (childIndex.lastPushedText = pushTextInstance(\n childIndex.chunks,\n node,\n request.renderState,\n childIndex.lastPushedText\n ));\n else if (\"number\" === typeof node || \"bigint\" === typeof node)\n (childIndex = task.blockedSegment),\n null !== childIndex &&\n (childIndex.lastPushedText = pushTextInstance(\n childIndex.chunks,\n \"\" + node,\n request.renderState,\n childIndex.lastPushedText\n ));\n }\n}\nfunction renderChildrenArray(request, task, children, childIndex) {\n var prevKeyPath = task.keyPath;\n if (\n -1 !== childIndex &&\n ((task.keyPath = [task.keyPath, \"Fragment\", childIndex]),\n null !== task.replay)\n ) {\n for (\n var replay = task.replay, replayNodes = replay.nodes, j = 0;\n j < replayNodes.length;\n j++\n ) {\n var node = replayNodes[j];\n if (node[1] === childIndex) {\n childIndex = node[2];\n node = node[3];\n task.replay = { nodes: childIndex, slots: node, pendingTasks: 1 };\n try {\n renderChildrenArray(request, task, children, -1);\n if (1 === task.replay.pendingTasks && 0 < task.replay.nodes.length)\n throw Error(\n \"Couldn't find all resumable slots by key/index during replaying. The tree doesn't match so React will fallback to client rendering.\"\n );\n task.replay.pendingTasks--;\n } catch (x) {\n if (\n \"object\" === typeof x &&\n null !== x &&\n (x === SuspenseException || \"function\" === typeof x.then)\n )\n throw x;\n task.replay.pendingTasks--;\n var thrownInfo = getThrownInfo(task.componentStack);\n children = request;\n var boundary = task.blockedBoundary;\n request = request.aborted ? request.fatalError : x;\n thrownInfo = logRecoverableError(children, request, thrownInfo);\n abortRemainingReplayNodes(\n children,\n boundary,\n childIndex,\n node,\n request,\n thrownInfo\n );\n }\n task.replay = replay;\n replayNodes.splice(j, 1);\n break;\n }\n }\n task.keyPath = prevKeyPath;\n return;\n }\n replay = task.treeContext;\n replayNodes = children.length;\n if (\n null !== task.replay &&\n ((j = task.replay.slots), null !== j && \"object\" === typeof j)\n ) {\n for (childIndex = 0; childIndex < replayNodes; childIndex++)\n (node = children[childIndex]),\n (task.treeContext = pushTreeContext(replay, replayNodes, childIndex)),\n (boundary = j[childIndex]),\n \"number\" === typeof boundary\n ? (resumeNode(request, task, boundary, node, childIndex),\n delete j[childIndex])\n : renderNode(request, task, node, childIndex);\n task.treeContext = replay;\n task.keyPath = prevKeyPath;\n return;\n }\n for (j = 0; j < replayNodes; j++)\n (childIndex = children[j]),\n (task.treeContext = pushTreeContext(replay, replayNodes, j)),\n renderNode(request, task, childIndex, j);\n task.treeContext = replay;\n task.keyPath = prevKeyPath;\n}\nfunction trackPostponedBoundary(request, trackedPostpones, boundary) {\n boundary.status = 5;\n boundary.rootSegmentID = request.nextSegmentId++;\n var tracked = boundary.tracked;\n if (null === tracked)\n throw Error(\n \"It should not be possible to postpone at the root. This is a bug in React.\"\n );\n request = tracked.contentKeyPath;\n if (null === request)\n throw Error(\n \"It should not be possible to postpone at the root. This is a bug in React.\"\n );\n tracked = tracked.fallbackNode;\n var children = [],\n boundaryNode = trackedPostpones.workingMap.get(request);\n if (void 0 === boundaryNode)\n return (\n (boundary = [\n request[1],\n request[2],\n children,\n null,\n tracked,\n boundary.rootSegmentID\n ]),\n trackedPostpones.workingMap.set(request, boundary),\n addToReplayParent(boundary, request[0], trackedPostpones),\n boundary\n );\n boundaryNode[4] = tracked;\n boundaryNode[5] = boundary.rootSegmentID;\n return boundaryNode;\n}\nfunction trackPostpone(request, trackedPostpones, task, segment) {\n segment.status = 5;\n var keyPath = task.keyPath,\n boundary = task.blockedBoundary;\n if (null === boundary)\n (segment.id = request.nextSegmentId++),\n (trackedPostpones.rootSlots = segment.id),\n null !== request.completedRootSegment &&\n (request.completedRootSegment.status = 5);\n else {\n if (null !== boundary && 0 === boundary.status) {\n var boundaryNode = trackPostponedBoundary(\n request,\n trackedPostpones,\n boundary\n );\n if (\n null !== boundary.tracked &&\n boundary.tracked.contentKeyPath === keyPath &&\n -1 === task.childIndex\n ) {\n -1 === segment.id &&\n (segment.id = segment.parentFlushed\n ? boundary.rootSegmentID\n : request.nextSegmentId++);\n boundaryNode[3] = segment.id;\n return;\n }\n }\n -1 === segment.id &&\n (segment.id =\n segment.parentFlushed && null !== boundary\n ? boundary.rootSegmentID\n : request.nextSegmentId++);\n if (-1 === task.childIndex)\n null === keyPath\n ? (trackedPostpones.rootSlots = segment.id)\n : ((task = trackedPostpones.workingMap.get(keyPath)),\n void 0 === task\n ? ((task = [keyPath[1], keyPath[2], [], segment.id]),\n addToReplayParent(task, keyPath[0], trackedPostpones))\n : (task[3] = segment.id));\n else {\n if (null === keyPath)\n if (((request = trackedPostpones.rootSlots), null === request))\n request = trackedPostpones.rootSlots = {};\n else {\n if (\"number\" === typeof request)\n throw Error(\n \"It should not be possible to postpone both at the root of an element as well as a slot below. This is a bug in React.\"\n );\n }\n else if (\n ((boundary = trackedPostpones.workingMap),\n (boundaryNode = boundary.get(keyPath)),\n void 0 === boundaryNode)\n )\n (request = {}),\n (boundaryNode = [keyPath[1], keyPath[2], [], request]),\n boundary.set(keyPath, boundaryNode),\n addToReplayParent(boundaryNode, keyPath[0], trackedPostpones);\n else if (((request = boundaryNode[3]), null === request))\n request = boundaryNode[3] = {};\n else if (\"number\" === typeof request)\n throw Error(\n \"It should not be possible to postpone both at the root of an element as well as a slot below. This is a bug in React.\"\n );\n request[task.childIndex] = segment.id;\n }\n }\n}\nfunction untrackBoundary(request, boundary) {\n request = request.trackedPostpones;\n null !== request &&\n ((boundary = boundary.tracked),\n null !== boundary &&\n ((boundary = boundary.contentKeyPath),\n null !== boundary &&\n ((request = request.workingMap.get(boundary)),\n void 0 !== request &&\n ((request.length = 4), (request[2] = []), (request[3] = null)))));\n}\nfunction spawnNewSuspendedReplayTask(request, task, thenableState) {\n return createReplayTask(\n request,\n thenableState,\n task.replay,\n task.node,\n task.childIndex,\n task.blockedBoundary,\n task.hoistableState,\n task.abortSet,\n task.keyPath,\n task.formatContext,\n task.context,\n task.treeContext,\n task.row,\n task.componentStack\n );\n}\nfunction spawnNewSuspendedRenderTask(request, task, thenableState) {\n var segment = task.blockedSegment,\n newSegment = createPendingSegment(\n request,\n segment.chunks.length,\n null,\n task.formatContext,\n segment.lastPushedText,\n !0\n );\n segment.children.push(newSegment);\n segment.lastPushedText = !1;\n return createRenderTask(\n request,\n thenableState,\n task.node,\n task.childIndex,\n task.blockedBoundary,\n newSegment,\n task.blockedPreamble,\n task.hoistableState,\n task.abortSet,\n task.keyPath,\n task.formatContext,\n task.context,\n task.treeContext,\n task.row,\n task.componentStack\n );\n}\nfunction renderNode(request, task, node, childIndex) {\n var previousFormatContext = task.formatContext,\n previousContext = task.context,\n previousKeyPath = task.keyPath,\n previousTreeContext = task.treeContext,\n previousComponentStack = task.componentStack,\n segment = task.blockedSegment;\n if (null === segment) {\n segment = task.replay;\n try {\n return renderNodeDestructive(request, task, node, childIndex);\n } catch (thrownValue) {\n if (\n (resetHooksState(),\n (node =\n thrownValue === SuspenseException\n ? getSuspendedThenable()\n : thrownValue),\n !request.aborted && \"object\" === typeof node && null !== node)\n ) {\n if (\"function\" === typeof node.then) {\n childIndex =\n thrownValue === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n request = spawnNewSuspendedReplayTask(request, task, childIndex).ping;\n node.then(request.resolve, request.reject);\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n task.componentStack = previousComponentStack;\n task.replay = segment;\n switchContext(previousContext);\n return;\n }\n if (\"Maximum call stack size exceeded\" === node.message) {\n node =\n thrownValue === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n node = spawnNewSuspendedReplayTask(request, task, node);\n request.pingedTasks.push(node);\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n task.componentStack = previousComponentStack;\n task.replay = segment;\n switchContext(previousContext);\n return;\n }\n }\n }\n } else {\n var childrenLength = segment.children.length,\n chunkLength = segment.chunks.length;\n try {\n return renderNodeDestructive(request, task, node, childIndex);\n } catch (thrownValue$64) {\n if (\n (resetHooksState(),\n (segment.children.length = childrenLength),\n (segment.chunks.length = chunkLength),\n (node =\n thrownValue$64 === SuspenseException\n ? getSuspendedThenable()\n : thrownValue$64),\n !request.aborted && \"object\" === typeof node && null !== node)\n ) {\n if (\"function\" === typeof node.then) {\n segment = node;\n node =\n thrownValue$64 === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n request = spawnNewSuspendedRenderTask(request, task, node).ping;\n segment.then(request.resolve, request.reject);\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n task.componentStack = previousComponentStack;\n switchContext(previousContext);\n return;\n }\n if (\"Maximum call stack size exceeded\" === node.message) {\n segment =\n thrownValue$64 === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n segment = spawnNewSuspendedRenderTask(request, task, segment);\n request.pingedTasks.push(segment);\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n task.componentStack = previousComponentStack;\n switchContext(previousContext);\n return;\n }\n }\n }\n }\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n switchContext(previousContext);\n throw node;\n}\nfunction abortTaskSoft(task) {\n var boundary = task.blockedBoundary,\n segment = task.blockedSegment;\n null !== segment &&\n ((segment.status = 3), finishedTask(this, boundary, task.row, segment));\n}\nfunction abortRemainingReplayNodes(\n request$jscomp$0,\n boundary,\n nodes,\n slots,\n error,\n errorDigest$jscomp$0\n) {\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n if (4 === node.length)\n abortRemainingReplayNodes(\n request$jscomp$0,\n boundary,\n node[2],\n node[3],\n error,\n errorDigest$jscomp$0\n );\n else {\n node = node[5];\n var request = request$jscomp$0,\n errorDigest = errorDigest$jscomp$0,\n resumedBoundary = createSuspenseBoundary(\n request,\n null,\n new Set(),\n null,\n !1\n );\n resumedBoundary.parentFlushed = !0;\n resumedBoundary.rootSegmentID = node;\n resumedBoundary.status = 4;\n resumedBoundary.errorDigest = errorDigest;\n resumedBoundary.parentFlushed &&\n request.clientRenderedBoundaries.push(resumedBoundary);\n }\n }\n nodes.length = 0;\n if (null !== slots) {\n if (null === boundary)\n throw Error(\n \"We should not have any resumable nodes in the shell. This is a bug in React.\"\n );\n 4 !== boundary.status &&\n ((boundary.status = 4),\n (boundary.errorDigest = errorDigest$jscomp$0),\n boundary.parentFlushed &&\n request$jscomp$0.clientRenderedBoundaries.push(boundary));\n if (\"object\" === typeof slots) for (var index in slots) delete slots[index];\n }\n}\nfunction abortTask(task, request) {\n if (task !== request.currentTask) {\n var boundary = task.blockedBoundary;\n task = task.blockedSegment;\n null !== task && (task.status = 3);\n null !== boundary &&\n boundary.fallbackAbortableTasks.forEach(function (fallbackTask) {\n return abortTask(fallbackTask, request);\n });\n }\n}\nfunction finishAbortedTask(task, request, error) {\n if (task !== request.currentTask) {\n var boundary = task.blockedBoundary,\n segment = task.blockedSegment;\n if (null === segment || 3 === segment.status) {\n var errorInfo = getThrownInfo(task.componentStack),\n isRecoverableReason = isRecoverableError(error);\n if (null === boundary) {\n boundary = task.replay;\n if (null === boundary) {\n isRecoverableReason ||\n null === request.trackedPostpones ||\n null === segment\n ? isRecoverableReason\n ? ((task = cloneRecoverableErrorAsFatal(error)),\n logRecoverableError(request, task, errorInfo),\n 12 !== request.status &&\n 13 !== request.status &&\n fatalError(request, task))\n : (logRecoverableError(request, error, errorInfo),\n 12 !== request.status &&\n 13 !== request.status &&\n fatalError(request, error))\n : ((boundary = request.trackedPostpones),\n logRecoverableError(request, error, errorInfo),\n trackPostpone(request, boundary, task, segment),\n finishedTask(request, null, task.row, segment));\n return;\n }\n 12 !== request.status &&\n 13 !== request.status &&\n (boundary.pendingTasks--,\n 0 === boundary.pendingTasks &&\n 0 < boundary.nodes.length &&\n ((errorInfo = logRecoverableError(request, error, errorInfo)),\n abortRemainingReplayNodes(\n request,\n null,\n boundary.nodes,\n boundary.slots,\n error,\n errorInfo\n )),\n request.pendingRootTasks--,\n 0 === request.pendingRootTasks && completeShell(request));\n } else {\n var trackedPostpones$65 = request.trackedPostpones;\n if (4 !== boundary.status) {\n if (\n !isRecoverableReason &&\n null !== trackedPostpones$65 &&\n null !== segment\n )\n return (\n logRecoverableError(request, error, errorInfo),\n trackPostpone(request, trackedPostpones$65, task, segment),\n boundary.fallbackAbortableTasks.forEach(function (fallbackTask) {\n return finishAbortedTask(fallbackTask, request, error);\n }),\n boundary.fallbackAbortableTasks.clear(),\n finishedTask(request, boundary, task.row, segment)\n );\n boundary.status = 4;\n errorInfo = logRecoverableError(request, error, errorInfo);\n boundary.errorDigest = errorInfo;\n untrackBoundary(request, boundary);\n boundary.parentFlushed &&\n request.clientRenderedBoundaries.push(boundary);\n }\n boundary.pendingTasks--;\n errorInfo = boundary.row;\n null !== errorInfo &&\n 0 === --errorInfo.pendingTasks &&\n finishSuspenseListRow(request, errorInfo);\n boundary.fallbackAbortableTasks.forEach(function (fallbackTask) {\n return finishAbortedTask(fallbackTask, request, error);\n });\n boundary.fallbackAbortableTasks.clear();\n }\n task = task.row;\n null !== task &&\n 0 === --task.pendingTasks &&\n finishSuspenseListRow(request, task);\n request.allPendingTasks--;\n 0 === request.allPendingTasks && completeAll(request);\n }\n }\n}\nfunction safelyEmitEarlyPreloads(request, shellComplete) {\n try {\n var renderState = request.renderState,\n onHeaders = renderState.onHeaders;\n if (onHeaders) {\n var headers = renderState.headers;\n if (headers) {\n renderState.headers = null;\n var linkHeader = headers.preconnects;\n headers.fontPreloads &&\n (linkHeader && (linkHeader += \", \"),\n (linkHeader += headers.fontPreloads));\n headers.highImagePreloads &&\n (linkHeader && (linkHeader += \", \"),\n (linkHeader += headers.highImagePreloads));\n if (!shellComplete) {\n var queueIter = renderState.styles.values(),\n queueStep = queueIter.next();\n b: for (\n ;\n 0 < headers.remainingCapacity && !queueStep.done;\n queueStep = queueIter.next()\n )\n for (\n var sheetIter = queueStep.value.sheets.values(),\n sheetStep = sheetIter.next();\n 0 < headers.remainingCapacity && !sheetStep.done;\n sheetStep = sheetIter.next()\n ) {\n var sheet = sheetStep.value,\n props = sheet.props,\n key = props.href,\n props$jscomp$0 = sheet.props,\n header = getPreloadAsHeader(props$jscomp$0.href, \"style\", {\n crossOrigin: props$jscomp$0.crossOrigin,\n integrity: props$jscomp$0.integrity,\n nonce: props$jscomp$0.nonce,\n type: props$jscomp$0.type,\n fetchPriority: props$jscomp$0.fetchPriority,\n referrerPolicy: props$jscomp$0.referrerPolicy,\n media: props$jscomp$0.media\n });\n if (0 <= (headers.remainingCapacity -= header.length + 2))\n (renderState.resets.style[key] = PRELOAD_NO_CREDS),\n linkHeader && (linkHeader += \", \"),\n (linkHeader += header),\n (renderState.resets.style[key] =\n \"string\" === typeof props.crossOrigin ||\n \"string\" === typeof props.integrity\n ? [props.crossOrigin, props.integrity]\n : PRELOAD_NO_CREDS);\n else break b;\n }\n }\n linkHeader ? onHeaders({ Link: linkHeader }) : onHeaders({});\n }\n }\n } catch (error) {\n logRecoverableError(request, error, {});\n }\n}\nfunction completeShell(request) {\n null === request.trackedPostpones && safelyEmitEarlyPreloads(request, !0);\n null === request.trackedPostpones && preparePreamble(request);\n request = request.onShellReady;\n request();\n}\nfunction completeAll(request) {\n safelyEmitEarlyPreloads(\n request,\n null === request.trackedPostpones\n ? !0\n : null === request.completedRootSegment ||\n 5 !== request.completedRootSegment.status\n );\n preparePreamble(request);\n request = request.onAllReady;\n request();\n}\nfunction queueCompletedSegment(boundary, segment) {\n if (\n 0 === segment.chunks.length &&\n 1 === segment.children.length &&\n null === segment.children[0].boundary &&\n -1 === segment.children[0].id\n ) {\n var childSegment = segment.children[0];\n childSegment.id = segment.id;\n childSegment.parentFlushed = !0;\n (1 !== childSegment.status &&\n 3 !== childSegment.status &&\n 4 !== childSegment.status) ||\n queueCompletedSegment(boundary, childSegment);\n } else boundary.completedSegments.push(segment);\n}\nfunction finishedSegment(request, boundary, segment) {\n if (null !== byteLengthOfChunk) {\n segment = segment.chunks;\n for (var segmentByteSize = 0, i = 0; i < segment.length; i++)\n segmentByteSize += segment[i].byteLength;\n null === boundary\n ? (request.byteSize += segmentByteSize)\n : (boundary.byteSize += segmentByteSize);\n }\n}\nfunction finishedTask(request, boundary, row, segment) {\n null !== row &&\n (0 === --row.pendingTasks\n ? finishSuspenseListRow(request, row)\n : row.together && tryToResolveTogetherRow(request, row));\n request.allPendingTasks--;\n if (null === boundary) {\n if (null !== segment && segment.parentFlushed) {\n if (null !== request.completedRootSegment)\n throw Error(\n \"There can only be one root segment. This is a bug in React.\"\n );\n request.completedRootSegment = segment;\n }\n request.pendingRootTasks--;\n 0 === request.pendingRootTasks && completeShell(request);\n } else if ((boundary.pendingTasks--, 4 !== boundary.status))\n if (0 === boundary.pendingTasks)\n if (\n (0 === boundary.status && (boundary.status = 1),\n null !== segment &&\n segment.parentFlushed &&\n (1 === segment.status || 3 === segment.status) &&\n queueCompletedSegment(boundary, segment),\n boundary.parentFlushed && request.completedBoundaries.push(boundary),\n 1 === boundary.status)\n )\n (row = boundary.row),\n null !== row &&\n hoistHoistables(row.hoistables, boundary.contentState),\n isEligibleForOutlining(request, boundary) ||\n (request.allPendingTasks++,\n boundary.fallbackAbortableTasks.forEach(abortTaskSoft, request),\n boundary.fallbackAbortableTasks.clear(),\n null !== row &&\n 0 === --row.pendingTasks &&\n finishSuspenseListRow(request, row),\n request.allPendingTasks--),\n 0 === request.pendingRootTasks &&\n null === request.trackedPostpones &&\n null !== boundary.preamble &&\n preparePreamble(request);\n else {\n if (\n 5 === boundary.status &&\n ((boundary = boundary.row), null !== boundary)\n ) {\n if (null !== request.trackedPostpones) {\n row = request.trackedPostpones;\n var postponedRow = boundary.next;\n if (\n null !== postponedRow &&\n ((segment = postponedRow.boundaries), null !== segment)\n )\n for (\n postponedRow.boundaries = null, postponedRow = 0;\n postponedRow < segment.length;\n postponedRow++\n ) {\n var postponedBoundary = segment[postponedRow];\n trackPostponedBoundary(request, row, postponedBoundary);\n finishedTask(request, postponedBoundary, null, null);\n }\n }\n request.allPendingTasks++;\n 0 === --boundary.pendingTasks &&\n finishSuspenseListRow(request, boundary);\n request.allPendingTasks--;\n }\n }\n else\n null === segment ||\n !segment.parentFlushed ||\n (1 !== segment.status && 3 !== segment.status) ||\n (queueCompletedSegment(boundary, segment),\n 1 === boundary.completedSegments.length &&\n boundary.parentFlushed &&\n request.partialBoundaries.push(boundary)),\n (boundary = boundary.row),\n null !== boundary &&\n boundary.together &&\n tryToResolveTogetherRow(request, boundary);\n 0 === request.allPendingTasks && completeAll(request);\n}\nfunction performWork(request$jscomp$1) {\n if (!(request$jscomp$1.aborted || 11 < request$jscomp$1.status)) {\n var prevContext = currentActiveSnapshot,\n prevDispatcher = ReactSharedInternals.H;\n ReactSharedInternals.H = HooksDispatcher;\n var prevAsyncDispatcher = ReactSharedInternals.A;\n ReactSharedInternals.A = DefaultAsyncDispatcher;\n var prevRequest = currentRequest;\n currentRequest = request$jscomp$1;\n var prevResumableState = currentResumableState;\n currentResumableState = request$jscomp$1.resumableState;\n try {\n var pingedTasks = request$jscomp$1.pingedTasks,\n i;\n for (i = 0; i < pingedTasks.length; i++) {\n var task = pingedTasks[i],\n request = request$jscomp$1,\n segment = task.blockedSegment;\n if (null === segment)\n a: {\n if (0 !== task.replay.pendingTasks) {\n var prevTask = request.currentTask;\n request.currentTask = task;\n switchContext(task.context);\n var startNode = task.node;\n try {\n \"number\" === typeof task.replay.slots\n ? resumeNode(\n request,\n task,\n task.replay.slots,\n task.node,\n task.childIndex\n )\n : retryNode(request, task);\n if (\n 1 === task.replay.pendingTasks &&\n 0 < task.replay.nodes.length\n )\n throw Error(\n \"Couldn't find all resumable slots by key/index during replaying. The tree doesn't match so React will fallback to client rendering.\"\n );\n task.replay.pendingTasks--;\n task.abortSet.delete(task);\n finishedTask(request, task.blockedBoundary, task.row, null);\n } catch (thrownValue) {\n resetHooksState();\n var x =\n thrownValue === SuspenseException\n ? getSuspendedThenable()\n : thrownValue;\n if (request.aborted) {\n thrownValue === SuspenseException &&\n (task.thenableState = getThenableStateAfterSuspending());\n request.currentTask = prevTask;\n var request$jscomp$0 = request;\n abortTask(task, request$jscomp$0);\n task.abortSet.delete(task);\n finishAbortedTask(\n task,\n request$jscomp$0,\n request$jscomp$0.fatalError\n );\n } else {\n if (\"object\" === typeof x && null !== x) {\n if (\"function\" === typeof x.then) {\n var ping = task.ping;\n x.then(ping.resolve, ping.reject);\n task.thenableState =\n thrownValue === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n break a;\n }\n if (\n \"Maximum call stack size exceeded\" === x.message &&\n task.node !== startNode\n ) {\n task.thenableState = null;\n request.pingedTasks.push(task);\n break a;\n }\n }\n task.replay.pendingTasks--;\n task.abortSet.delete(task);\n var errorInfo = getThrownInfo(task.componentStack);\n request$jscomp$0 = request;\n var boundary = task.blockedBoundary,\n error$jscomp$0 = request.aborted ? request.fatalError : x,\n replayNodes = task.replay.nodes,\n resumeSlots = task.replay.slots,\n errorDigest = logRecoverableError(\n request$jscomp$0,\n error$jscomp$0,\n errorInfo\n );\n abortRemainingReplayNodes(\n request$jscomp$0,\n boundary,\n replayNodes,\n resumeSlots,\n error$jscomp$0,\n errorDigest\n );\n request.pendingRootTasks--;\n 0 === request.pendingRootTasks && completeShell(request);\n request.allPendingTasks--;\n 0 === request.allPendingTasks && completeAll(request);\n }\n } finally {\n request.currentTask = prevTask;\n }\n }\n }\n else\n a: if (\n ((request$jscomp$0 = segment), 0 === request$jscomp$0.status)\n ) {\n var prevTask$jscomp$0 = request.currentTask;\n request.currentTask = task;\n switchContext(task.context);\n var childrenLength = request$jscomp$0.children.length,\n chunkLength = request$jscomp$0.chunks.length,\n startNode$jscomp$0 = task.node;\n try {\n retryNode(request, task),\n request$jscomp$0.lastPushedText &&\n request$jscomp$0.textEmbedded &&\n request$jscomp$0.chunks.push(textSeparator),\n task.abortSet.delete(task),\n (request$jscomp$0.status = 1),\n finishedSegment(\n request,\n task.blockedBoundary,\n request$jscomp$0\n ),\n finishedTask(\n request,\n task.blockedBoundary,\n task.row,\n request$jscomp$0\n );\n } catch (thrownValue) {\n resetHooksState();\n request$jscomp$0.children.length = childrenLength;\n request$jscomp$0.chunks.length = chunkLength;\n var x$jscomp$0 =\n thrownValue === SuspenseException\n ? getSuspendedThenable()\n : thrownValue;\n if (request.aborted)\n thrownValue === SuspenseException &&\n (task.thenableState = getThenableStateAfterSuspending()),\n (request.currentTask = prevTask$jscomp$0),\n (request$jscomp$0 = request),\n abortTask(task, request$jscomp$0),\n task.abortSet.delete(task),\n finishAbortedTask(\n task,\n request$jscomp$0,\n request$jscomp$0.fatalError\n );\n else {\n if (\"object\" === typeof x$jscomp$0 && null !== x$jscomp$0) {\n if (\"function\" === typeof x$jscomp$0.then) {\n request$jscomp$0.status = 0;\n task.thenableState =\n thrownValue === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n var ping$jscomp$0 = task.ping;\n x$jscomp$0.then(\n ping$jscomp$0.resolve,\n ping$jscomp$0.reject\n );\n break a;\n }\n if (\n \"Maximum call stack size exceeded\" === x$jscomp$0.message &&\n task.node !== startNode$jscomp$0\n ) {\n request$jscomp$0.status = 0;\n task.thenableState = null;\n request.pingedTasks.push(task);\n break a;\n }\n }\n var errorInfo$jscomp$0 = getThrownInfo(task.componentStack);\n task.abortSet.delete(task);\n request$jscomp$0.status = 4;\n var boundary$jscomp$0 = task.blockedBoundary,\n row = task.row;\n null !== row &&\n 0 === --row.pendingTasks &&\n finishSuspenseListRow(request, row);\n request.allPendingTasks--;\n if (null === boundary$jscomp$0)\n if (isRecoverableError(x$jscomp$0)) {\n var fatalRecoverableError =\n cloneRecoverableErrorAsFatal(x$jscomp$0);\n logRecoverableError(\n request,\n fatalRecoverableError,\n errorInfo$jscomp$0\n );\n fatalError(request, fatalRecoverableError);\n } else\n logRecoverableError(\n request,\n x$jscomp$0,\n errorInfo$jscomp$0\n ),\n fatalError(request, x$jscomp$0);\n else {\n var errorDigest$jscomp$0 = logRecoverableError(\n request,\n x$jscomp$0,\n errorInfo$jscomp$0\n );\n boundary$jscomp$0.pendingTasks--;\n if (4 !== boundary$jscomp$0.status) {\n boundary$jscomp$0.status = 4;\n boundary$jscomp$0.errorDigest = errorDigest$jscomp$0;\n untrackBoundary(request, boundary$jscomp$0);\n var boundaryRow = boundary$jscomp$0.row;\n null !== boundaryRow &&\n (request.allPendingTasks++,\n 0 === --boundaryRow.pendingTasks &&\n finishSuspenseListRow(request, boundaryRow),\n request.allPendingTasks--);\n boundary$jscomp$0.parentFlushed &&\n request.clientRenderedBoundaries.push(boundary$jscomp$0);\n 0 === request.pendingRootTasks &&\n null === request.trackedPostpones &&\n null !== boundary$jscomp$0.preamble &&\n preparePreamble(request);\n }\n 0 === request.allPendingTasks && completeAll(request);\n }\n }\n } finally {\n request.currentTask = prevTask$jscomp$0;\n }\n }\n }\n pingedTasks.splice(0, i);\n null !== request$jscomp$1.destination &&\n flushCompletedQueues(request$jscomp$1, request$jscomp$1.destination);\n } catch (error) {\n logRecoverableError(request$jscomp$1, error, {}),\n fatalError(request$jscomp$1, error);\n } finally {\n (currentResumableState = prevResumableState),\n (ReactSharedInternals.H = prevDispatcher),\n (ReactSharedInternals.A = prevAsyncDispatcher),\n prevDispatcher === HooksDispatcher && switchContext(prevContext),\n (currentRequest = prevRequest);\n }\n }\n}\nfunction preparePreambleFromSubtree(\n request,\n segment,\n collectedPreambleSegments\n) {\n segment.preambleChildren.length &&\n collectedPreambleSegments.push(segment.preambleChildren);\n for (var pendingPreambles = !1, i = 0; i < segment.children.length; i++)\n pendingPreambles =\n preparePreambleFromSegment(\n request,\n segment.children[i],\n collectedPreambleSegments\n ) || pendingPreambles;\n return pendingPreambles;\n}\nfunction preparePreambleFromSegment(\n request,\n segment,\n collectedPreambleSegments\n) {\n var boundary = segment.boundary;\n if (null === boundary)\n return preparePreambleFromSubtree(\n request,\n segment,\n collectedPreambleSegments\n );\n var preamble = boundary.preamble;\n if (null === preamble) return !1;\n switch (boundary.status) {\n case 1:\n hoistPreambleState(request.renderState, preamble.content);\n request.byteSize += boundary.byteSize;\n segment = boundary.completedSegments[0];\n if (!segment)\n throw Error(\n \"A previously unvisited boundary must have exactly one root segment. This is a bug in React.\"\n );\n return preparePreambleFromSubtree(\n request,\n segment,\n collectedPreambleSegments\n );\n case 5:\n if (null !== request.trackedPostpones) return !0;\n case 4:\n if (1 === segment.status)\n return (\n hoistPreambleState(request.renderState, preamble.fallback),\n preparePreambleFromSubtree(\n request,\n segment,\n collectedPreambleSegments\n )\n );\n default:\n return !0;\n }\n}\nfunction preparePreamble(request) {\n if (\n request.completedRootSegment &&\n null === request.completedPreambleSegments\n ) {\n var collectedPreambleSegments = [],\n originalRequestByteSize = request.byteSize,\n hasPendingPreambles = preparePreambleFromSegment(\n request,\n request.completedRootSegment,\n collectedPreambleSegments\n ),\n preamble = request.renderState.preamble;\n !1 === hasPendingPreambles || (preamble.headChunks && preamble.bodyChunks)\n ? (request.completedPreambleSegments = collectedPreambleSegments)\n : (request.byteSize = originalRequestByteSize);\n }\n}\nfunction flushSubtree(request, destination, segment, hoistableState) {\n segment.parentFlushed = !0;\n switch (segment.status) {\n case 0:\n segment.id = request.nextSegmentId++;\n case 5:\n return (\n (hoistableState = segment.id),\n (segment.lastPushedText = !1),\n (segment.textEmbedded = !1),\n (request = request.renderState),\n writeChunk(destination, placeholder1),\n writeChunk(destination, request.placeholderPrefix),\n (request = stringToChunk(hoistableState.toString(16))),\n writeChunk(destination, request),\n writeChunkAndReturn(destination, placeholder2)\n );\n case 1:\n segment.status = 2;\n var r = !0,\n chunks = segment.chunks,\n chunkIdx = 0;\n segment = segment.children;\n for (var childIdx = 0; childIdx < segment.length; childIdx++) {\n for (r = segment[childIdx]; chunkIdx < r.index; chunkIdx++)\n writeChunk(destination, chunks[chunkIdx]);\n r = flushSegment(request, destination, r, hoistableState);\n }\n for (; chunkIdx < chunks.length - 1; chunkIdx++)\n writeChunk(destination, chunks[chunkIdx]);\n chunkIdx < chunks.length &&\n (r = writeChunkAndReturn(destination, chunks[chunkIdx]));\n return r;\n case 3:\n return !0;\n default:\n throw Error(\n \"Aborted, errored or already flushed boundaries should not be flushed again. This is a bug in React.\"\n );\n }\n}\nvar flushedByteSize = 0;\nfunction flushSegment(request, destination, segment, hoistableState) {\n var boundary = segment.boundary;\n if (null === boundary)\n return flushSubtree(request, destination, segment, hoistableState);\n segment.boundary = null;\n boundary.parentFlushed = !0;\n if (4 === boundary.status) {\n var row = boundary.row;\n null !== row &&\n 0 === --row.pendingTasks &&\n finishSuspenseListRow(request, row);\n boundary = boundary.errorDigest;\n writeChunkAndReturn(destination, startClientRenderedSuspenseBoundary);\n writeChunk(destination, clientRenderedSuspenseBoundaryError1);\n null != boundary &&\n (writeChunk(destination, clientRenderedSuspenseBoundaryError1A),\n writeChunk(destination, stringToChunk(escapeTextForBrowser(boundary))),\n writeChunk(\n destination,\n clientRenderedSuspenseBoundaryErrorAttrInterstitial\n ));\n writeChunkAndReturn(destination, clientRenderedSuspenseBoundaryError2);\n flushSubtree(request, destination, segment, hoistableState);\n } else if (1 !== boundary.status)\n 0 === boundary.status && (boundary.rootSegmentID = request.nextSegmentId++),\n 0 < boundary.completedSegments.length &&\n request.partialBoundaries.push(boundary),\n writeStartPendingSuspenseBoundary(\n destination,\n request.renderState,\n boundary.rootSegmentID\n ),\n hoistableState && hoistHoistables(hoistableState, boundary.fallbackState),\n flushSubtree(request, destination, segment, hoistableState);\n else if (\n !flushingPartialBoundaries &&\n isEligibleForOutlining(request, boundary) &&\n (flushedByteSize + boundary.byteSize > request.progressiveChunkSize ||\n hasSuspenseyContent(boundary.contentState, flushingShell) ||\n boundary.defer)\n )\n (boundary.rootSegmentID = request.nextSegmentId++),\n request.completedBoundaries.push(boundary),\n writeStartPendingSuspenseBoundary(\n destination,\n request.renderState,\n boundary.rootSegmentID\n ),\n flushSubtree(request, destination, segment, hoistableState);\n else {\n flushedByteSize += boundary.byteSize;\n hoistableState && hoistHoistables(hoistableState, boundary.contentState);\n segment = boundary.row;\n null !== segment &&\n isEligibleForOutlining(request, boundary) &&\n 0 === --segment.pendingTasks &&\n finishSuspenseListRow(request, segment);\n writeChunkAndReturn(destination, startCompletedSuspenseBoundary);\n segment = boundary.completedSegments;\n if (1 !== segment.length)\n throw Error(\n \"A previously unvisited boundary must have exactly one root segment. This is a bug in React.\"\n );\n flushSegment(request, destination, segment[0], hoistableState);\n }\n return writeChunkAndReturn(destination, endSuspenseBoundary);\n}\nfunction flushSegmentContainer(request, destination, segment, hoistableState) {\n writeStartSegment(\n destination,\n request.renderState,\n segment.parentFormatContext,\n segment.id\n );\n flushSegment(request, destination, segment, hoistableState);\n return writeEndSegment(destination, segment.parentFormatContext);\n}\nfunction flushCompletedBoundary(request, destination, boundary) {\n flushedByteSize = boundary.byteSize;\n for (\n var completedSegments = boundary.completedSegments, i = 0;\n i < completedSegments.length;\n i++\n )\n flushPartiallyCompletedSegment(\n request,\n destination,\n boundary,\n completedSegments[i]\n );\n completedSegments.length = 0;\n completedSegments = boundary.row;\n null !== completedSegments &&\n isEligibleForOutlining(request, boundary) &&\n 0 === --completedSegments.pendingTasks &&\n finishSuspenseListRow(request, completedSegments);\n writeHoistablesForBoundary(\n destination,\n boundary.contentState,\n request.renderState\n );\n completedSegments = request.resumableState;\n request = request.renderState;\n i = boundary.rootSegmentID;\n boundary = boundary.contentState;\n var requiresStyleInsertion = request.stylesToHoist,\n requiresViewTransitions = 0 !== (completedSegments.instructions & 128);\n request.stylesToHoist = !1;\n writeChunk(destination, request.startInlineScript);\n writeChunk(destination, endOfStartTag);\n requiresStyleInsertion\n ? (0 === (completedSegments.instructions & 4) &&\n ((completedSegments.instructions |= 4),\n writeChunk(destination, clientRenderScriptFunctionOnly)),\n 0 === (completedSegments.instructions & 2) &&\n ((completedSegments.instructions |= 2),\n writeChunk(destination, completeBoundaryScriptFunctionOnly)),\n requiresViewTransitions &&\n 0 === (completedSegments.instructions & 256) &&\n ((completedSegments.instructions |= 256),\n writeChunk(\n destination,\n completeBoundaryUpgradeToViewTransitionsInstruction\n )),\n 0 === (completedSegments.instructions & 8)\n ? ((completedSegments.instructions |= 8),\n writeChunk(destination, completeBoundaryWithStylesScript1FullPartial))\n : writeChunk(destination, completeBoundaryWithStylesScript1Partial))\n : (0 === (completedSegments.instructions & 2) &&\n ((completedSegments.instructions |= 2),\n writeChunk(destination, completeBoundaryScriptFunctionOnly)),\n requiresViewTransitions &&\n 0 === (completedSegments.instructions & 256) &&\n ((completedSegments.instructions |= 256),\n writeChunk(\n destination,\n completeBoundaryUpgradeToViewTransitionsInstruction\n )),\n writeChunk(destination, completeBoundaryScript1Partial));\n completedSegments = stringToChunk(i.toString(16));\n writeChunk(destination, request.boundaryPrefix);\n writeChunk(destination, completedSegments);\n writeChunk(destination, completeBoundaryScript2);\n writeChunk(destination, request.segmentPrefix);\n writeChunk(destination, completedSegments);\n requiresStyleInsertion\n ? (writeChunk(destination, completeBoundaryScript3a),\n writeStyleResourceDependenciesInJS(destination, boundary))\n : writeChunk(destination, completeBoundaryScript3b);\n boundary = writeChunkAndReturn(destination, completeBoundaryScriptEnd);\n return writeBootstrap(destination, request) && boundary;\n}\nfunction flushPartiallyCompletedSegment(\n request,\n destination,\n boundary,\n segment\n) {\n if (2 === segment.status) return !0;\n var hoistableState = boundary.contentState,\n segmentID = segment.id;\n if (-1 === segmentID) {\n if (-1 === (segment.id = boundary.rootSegmentID))\n throw Error(\n \"A root segment ID must have been assigned by now. This is a bug in React.\"\n );\n return flushSegmentContainer(request, destination, segment, hoistableState);\n }\n if (segmentID === boundary.rootSegmentID)\n return flushSegmentContainer(request, destination, segment, hoistableState);\n flushSegmentContainer(request, destination, segment, hoistableState);\n boundary = request.resumableState;\n request = request.renderState;\n writeChunk(destination, request.startInlineScript);\n writeChunk(destination, endOfStartTag);\n 0 === (boundary.instructions & 1)\n ? ((boundary.instructions |= 1),\n writeChunk(destination, completeSegmentScript1Full))\n : writeChunk(destination, completeSegmentScript1Partial);\n writeChunk(destination, request.segmentPrefix);\n segmentID = stringToChunk(segmentID.toString(16));\n writeChunk(destination, segmentID);\n writeChunk(destination, completeSegmentScript2);\n writeChunk(destination, request.placeholderPrefix);\n writeChunk(destination, segmentID);\n destination = writeChunkAndReturn(destination, completeSegmentScriptEnd);\n return destination;\n}\nvar flushingPartialBoundaries = !1,\n flushingShell = !1;\nfunction flushCompletedQueues(request, destination) {\n currentView = new Uint8Array(4096);\n writtenBytes = 0;\n try {\n if (!(0 < request.pendingRootTasks)) {\n var i,\n completedRootSegment = request.completedRootSegment;\n if (null !== completedRootSegment) {\n if (5 === completedRootSegment.status) return;\n var completedPreambleSegments = request.completedPreambleSegments;\n if (null === completedPreambleSegments) return;\n flushedByteSize = request.byteSize;\n var resumableState = request.resumableState,\n renderState = request.renderState,\n preamble = renderState.preamble,\n htmlChunks = preamble.htmlChunks,\n headChunks = preamble.headChunks,\n i$jscomp$0;\n if (htmlChunks) {\n for (i$jscomp$0 = 0; i$jscomp$0 < htmlChunks.length; i$jscomp$0++)\n writeChunk(destination, htmlChunks[i$jscomp$0]);\n if (headChunks)\n for (i$jscomp$0 = 0; i$jscomp$0 < headChunks.length; i$jscomp$0++)\n writeChunk(destination, headChunks[i$jscomp$0]);\n else\n writeChunk(destination, startChunkForTag(\"head\")),\n writeChunk(destination, endOfStartTag);\n } else if (headChunks)\n for (i$jscomp$0 = 0; i$jscomp$0 < headChunks.length; i$jscomp$0++)\n writeChunk(destination, headChunks[i$jscomp$0]);\n var charsetChunks = renderState.charsetChunks;\n for (i$jscomp$0 = 0; i$jscomp$0 < charsetChunks.length; i$jscomp$0++)\n writeChunk(destination, charsetChunks[i$jscomp$0]);\n charsetChunks.length = 0;\n renderState.preconnects.forEach(flushResource, destination);\n renderState.preconnects.clear();\n var viewportChunks = renderState.viewportChunks;\n for (i$jscomp$0 = 0; i$jscomp$0 < viewportChunks.length; i$jscomp$0++)\n writeChunk(destination, viewportChunks[i$jscomp$0]);\n viewportChunks.length = 0;\n renderState.fontPreloads.forEach(flushResource, destination);\n renderState.fontPreloads.clear();\n renderState.highImagePreloads.forEach(flushResource, destination);\n renderState.highImagePreloads.clear();\n currentlyFlushingRenderState = renderState;\n renderState.styles.forEach(flushStylesInPreamble, destination);\n currentlyFlushingRenderState = null;\n var importMapChunks = renderState.importMapChunks;\n for (i$jscomp$0 = 0; i$jscomp$0 < importMapChunks.length; i$jscomp$0++)\n writeChunk(destination, importMapChunks[i$jscomp$0]);\n importMapChunks.length = 0;\n renderState.bootstrapScripts.forEach(flushResource, destination);\n renderState.scripts.forEach(flushResource, destination);\n renderState.scripts.clear();\n renderState.bulkPreloads.forEach(flushResource, destination);\n renderState.bulkPreloads.clear();\n htmlChunks || headChunks || (resumableState.instructions |= 32);\n var hoistableChunks = renderState.hoistableChunks;\n for (i$jscomp$0 = 0; i$jscomp$0 < hoistableChunks.length; i$jscomp$0++)\n writeChunk(destination, hoistableChunks[i$jscomp$0]);\n for (\n resumableState = hoistableChunks.length = 0;\n resumableState < completedPreambleSegments.length;\n resumableState++\n ) {\n var segments = completedPreambleSegments[resumableState];\n for (renderState = 0; renderState < segments.length; renderState++)\n flushSegment(request, destination, segments[renderState], null);\n }\n var preamble$jscomp$0 = request.renderState.preamble,\n headChunks$jscomp$0 = preamble$jscomp$0.headChunks;\n (preamble$jscomp$0.htmlChunks || headChunks$jscomp$0) &&\n writeChunk(destination, endChunkForTag(\"head\"));\n var bodyChunks = preamble$jscomp$0.bodyChunks;\n if (bodyChunks)\n for (\n completedPreambleSegments = 0;\n completedPreambleSegments < bodyChunks.length;\n completedPreambleSegments++\n )\n writeChunk(destination, bodyChunks[completedPreambleSegments]);\n flushingShell = !0;\n flushSegment(request, destination, completedRootSegment, null);\n flushingShell = !1;\n request.completedRootSegment = null;\n var renderState$jscomp$0 = request.renderState;\n if (\n 0 !== request.allPendingTasks ||\n 0 !== request.clientRenderedBoundaries.length ||\n 0 !== request.completedBoundaries.length ||\n (null !== request.trackedPostpones &&\n (0 !== request.trackedPostpones.rootNodes.length ||\n null !== request.trackedPostpones.rootSlots))\n ) {\n var resumableState$jscomp$0 = request.resumableState;\n if (0 === (resumableState$jscomp$0.instructions & 64)) {\n resumableState$jscomp$0.instructions |= 64;\n writeChunk(destination, renderState$jscomp$0.startInlineScript);\n if (0 === (resumableState$jscomp$0.instructions & 32)) {\n resumableState$jscomp$0.instructions |= 32;\n var shellId = \"_\" + resumableState$jscomp$0.idPrefix + \"R_\";\n writeChunk(destination, completedShellIdAttributeStart);\n writeChunk(\n destination,\n stringToChunk(escapeTextForBrowser(shellId))\n );\n writeChunk(destination, attributeEnd);\n }\n writeChunk(destination, endOfStartTag);\n writeChunk(destination, shellTimeRuntimeScript);\n writeChunkAndReturn(destination, endInlineScript);\n }\n }\n writeBootstrap(destination, renderState$jscomp$0);\n }\n var renderState$jscomp$1 = request.renderState;\n completedRootSegment = 0;\n var viewportChunks$jscomp$0 = renderState$jscomp$1.viewportChunks;\n for (\n completedRootSegment = 0;\n completedRootSegment < viewportChunks$jscomp$0.length;\n completedRootSegment++\n )\n writeChunk(destination, viewportChunks$jscomp$0[completedRootSegment]);\n viewportChunks$jscomp$0.length = 0;\n renderState$jscomp$1.preconnects.forEach(flushResource, destination);\n renderState$jscomp$1.preconnects.clear();\n renderState$jscomp$1.fontPreloads.forEach(flushResource, destination);\n renderState$jscomp$1.fontPreloads.clear();\n renderState$jscomp$1.highImagePreloads.forEach(\n flushResource,\n destination\n );\n renderState$jscomp$1.highImagePreloads.clear();\n renderState$jscomp$1.styles.forEach(preloadLateStyles, destination);\n renderState$jscomp$1.scripts.forEach(flushResource, destination);\n renderState$jscomp$1.scripts.clear();\n renderState$jscomp$1.bulkPreloads.forEach(flushResource, destination);\n renderState$jscomp$1.bulkPreloads.clear();\n var hoistableChunks$jscomp$0 = renderState$jscomp$1.hoistableChunks;\n for (\n completedRootSegment = 0;\n completedRootSegment < hoistableChunks$jscomp$0.length;\n completedRootSegment++\n )\n writeChunk(destination, hoistableChunks$jscomp$0[completedRootSegment]);\n hoistableChunks$jscomp$0.length = 0;\n var clientRenderedBoundaries = request.clientRenderedBoundaries;\n for (i = 0; i < clientRenderedBoundaries.length; i++) {\n var boundary = clientRenderedBoundaries[i];\n renderState$jscomp$1 = destination;\n var resumableState$jscomp$1 = request.resumableState,\n renderState$jscomp$2 = request.renderState,\n id = boundary.rootSegmentID,\n errorDigest = boundary.errorDigest;\n writeChunk(\n renderState$jscomp$1,\n renderState$jscomp$2.startInlineScript\n );\n writeChunk(renderState$jscomp$1, endOfStartTag);\n 0 === (resumableState$jscomp$1.instructions & 4)\n ? ((resumableState$jscomp$1.instructions |= 4),\n writeChunk(renderState$jscomp$1, clientRenderScript1Full))\n : writeChunk(renderState$jscomp$1, clientRenderScript1Partial);\n writeChunk(renderState$jscomp$1, renderState$jscomp$2.boundaryPrefix);\n writeChunk(renderState$jscomp$1, stringToChunk(id.toString(16)));\n writeChunk(renderState$jscomp$1, clientRenderScript1A);\n null != errorDigest &&\n (writeChunk(\n renderState$jscomp$1,\n clientRenderErrorScriptArgInterstitial\n ),\n null == errorDigest\n ? writeChunk(renderState$jscomp$1, clientRenderErrorScriptNull)\n : writeChunk(\n renderState$jscomp$1,\n stringToChunk(escapeJSStringsForInstructionScripts(errorDigest))\n ));\n var JSCompiler_inline_result = writeChunkAndReturn(\n renderState$jscomp$1,\n clientRenderScriptEnd\n );\n if (!JSCompiler_inline_result) {\n request.destination = null;\n i++;\n clientRenderedBoundaries.splice(0, i);\n return;\n }\n }\n clientRenderedBoundaries.splice(0, i);\n var completedBoundaries = request.completedBoundaries;\n for (i = 0; i < completedBoundaries.length; i++)\n if (\n !flushCompletedBoundary(request, destination, completedBoundaries[i])\n ) {\n request.destination = null;\n i++;\n completedBoundaries.splice(0, i);\n return;\n }\n completedBoundaries.splice(0, i);\n completeWriting(destination);\n currentView = new Uint8Array(4096);\n writtenBytes = 0;\n flushingPartialBoundaries = !0;\n var partialBoundaries = request.partialBoundaries;\n for (i = 0; i < partialBoundaries.length; i++) {\n var boundary$71 = partialBoundaries[i];\n a: {\n clientRenderedBoundaries = request;\n boundary = destination;\n flushedByteSize = boundary$71.byteSize;\n var completedSegments = boundary$71.completedSegments;\n for (\n JSCompiler_inline_result = 0;\n JSCompiler_inline_result < completedSegments.length;\n JSCompiler_inline_result++\n )\n if (\n !flushPartiallyCompletedSegment(\n clientRenderedBoundaries,\n boundary,\n boundary$71,\n completedSegments[JSCompiler_inline_result]\n )\n ) {\n JSCompiler_inline_result++;\n completedSegments.splice(0, JSCompiler_inline_result);\n var JSCompiler_inline_result$jscomp$0 = !1;\n break a;\n }\n completedSegments.splice(0, JSCompiler_inline_result);\n var row = boundary$71.row;\n null !== row &&\n row.together &&\n 1 === boundary$71.pendingTasks &&\n (1 === row.pendingTasks\n ? unblockSuspenseListRow(\n clientRenderedBoundaries,\n row,\n row.hoistables\n )\n : row.pendingTasks--);\n JSCompiler_inline_result$jscomp$0 = writeHoistablesForBoundary(\n boundary,\n boundary$71.contentState,\n clientRenderedBoundaries.renderState\n );\n }\n if (!JSCompiler_inline_result$jscomp$0) {\n request.destination = null;\n i++;\n partialBoundaries.splice(0, i);\n return;\n }\n }\n partialBoundaries.splice(0, i);\n flushingPartialBoundaries = !1;\n var largeBoundaries = request.completedBoundaries;\n for (i = 0; i < largeBoundaries.length; i++)\n if (!flushCompletedBoundary(request, destination, largeBoundaries[i])) {\n request.destination = null;\n i++;\n largeBoundaries.splice(0, i);\n return;\n }\n largeBoundaries.splice(0, i);\n }\n } finally {\n (flushingPartialBoundaries = !1),\n (i = request.postponedState),\n null !== i && (i.nextSegmentId = request.nextSegmentId),\n 0 === request.allPendingTasks &&\n 0 === request.clientRenderedBoundaries.length &&\n 0 === request.completedBoundaries.length\n ? ((request.flushScheduled = !1),\n (i = request.resumableState),\n i.hasBody && writeChunk(destination, endChunkForTag(\"body\")),\n i.hasHtml && writeChunk(destination, endChunkForTag(\"html\")),\n completeWriting(destination),\n endRenderLifetime(request),\n (request.status = 13),\n destination.close(),\n (request.destination = null))\n : completeWriting(destination);\n }\n}\nfunction startWork(request) {\n request.flushScheduled = null !== request.destination;\n supportsRequestStorage\n ? scheduleMicrotask(function () {\n return requestStorage.run(request, performWork, request);\n })\n : scheduleMicrotask(function () {\n return performWork(request);\n });\n setTimeout(function () {\n 10 === request.status && (request.status = 11);\n null === request.trackedPostpones &&\n (supportsRequestStorage\n ? requestStorage.run(\n request,\n enqueueEarlyPreloadsAfterInitialWork,\n request\n )\n : enqueueEarlyPreloadsAfterInitialWork(request));\n }, 0);\n}\nfunction enqueueEarlyPreloadsAfterInitialWork(request) {\n safelyEmitEarlyPreloads(request, 0 === request.pendingRootTasks);\n}\nfunction enqueueFlush(request) {\n !1 === request.flushScheduled &&\n 0 === request.pingedTasks.length &&\n null !== request.destination &&\n ((request.flushScheduled = !0),\n setTimeout(function () {\n var destination = request.destination;\n destination\n ? flushCompletedQueues(request, destination)\n : (request.flushScheduled = !1);\n }, 0));\n}\nfunction startFlowing(request, destination) {\n if (12 === request.status)\n (request.status = 13),\n (request = request.fatalError),\n isRecoverableError(request) &&\n (request = cloneRecoverableErrorAsFatal(request)),\n closeWithError(destination, request);\n else if (13 !== request.status && null === request.destination) {\n request.destination = destination;\n try {\n flushCompletedQueues(request, destination);\n } catch (error$73) {\n logRecoverableError(request, error$73, {}), fatalError(request, error$73);\n }\n }\n}\nfunction finishAbort(request, abortableTasks) {\n try {\n if (0 < abortableTasks.size) {\n var error = request.fatalError;\n abortableTasks.forEach(function (task) {\n return finishAbortedTask(task, request, error);\n });\n abortableTasks.clear();\n }\n null !== request.destination &&\n flushCompletedQueues(request, request.destination);\n } catch (error$74) {\n logRecoverableError(request, error$74, {}), fatalError(request, error$74);\n }\n}\nfunction endRenderLifetime(request) {\n request = request.renderLifetimeController;\n null !== request && request.abort(\"The render ended.\");\n}\nfunction attachAbortSignal(request, signal) {\n if (signal.aborted) abort(request, signal.reason);\n else {\n var renderLifetimeController = new AbortController();\n request.renderLifetimeController = renderLifetimeController;\n signal.addEventListener(\n \"abort\",\n function () {\n abort(request, signal.reason);\n },\n { signal: renderLifetimeController.signal }\n );\n }\n}\nfunction abort(request, reason) {\n if (!(request.aborted || (11 !== request.status && 10 !== request.status))) {\n endRenderLifetime(request);\n var isRecoverableReason =\n \"object\" === typeof reason &&\n null !== reason &&\n reason.$$typeof === REACT_RECOVERABLE_TYPE;\n request.aborted = !0;\n reason = isRecoverableReason\n ? createRecoverableError(reason)\n : void 0 === reason\n ? Error(\"The render was aborted by the server without a reason.\")\n : \"object\" === typeof reason &&\n null !== reason &&\n \"function\" === typeof reason.then\n ? Error(\"The render was aborted by the server with a promise.\")\n : reason;\n request.fatalError = reason;\n var abortableTasks = request.abortableTasks;\n abortableTasks.forEach(function (task) {\n return abortTask(task, request);\n });\n setTimeout(function () {\n return finishAbort(request, abortableTasks);\n }, 0);\n }\n}\nfunction addToReplayParent(node, parentKeyPath, trackedPostpones) {\n if (null === parentKeyPath) trackedPostpones.rootNodes.push(node);\n else {\n var workingMap = trackedPostpones.workingMap,\n parentNode = workingMap.get(parentKeyPath);\n void 0 === parentNode &&\n ((parentNode = [parentKeyPath[1], parentKeyPath[2], [], null]),\n workingMap.set(parentKeyPath, parentNode),\n addToReplayParent(parentNode, parentKeyPath[0], trackedPostpones));\n parentNode[2].push(node);\n }\n}\nfunction getPostponedState(request) {\n var trackedPostpones = request.trackedPostpones;\n if (\n null === trackedPostpones ||\n (0 === trackedPostpones.rootNodes.length &&\n null === trackedPostpones.rootSlots)\n )\n return (request.trackedPostpones = null);\n var hasFlushableShell =\n null === request.completedRootSegment ||\n (5 !== request.completedRootSegment.status &&\n null !== request.completedPreambleSegments);\n if (hasFlushableShell) {\n var nextSegmentId = request.nextSegmentId;\n var replaySlots = trackedPostpones.rootSlots;\n var resumableState = request.resumableState;\n resumableState.bootstrapScriptContent = void 0;\n resumableState.bootstrapScripts = void 0;\n resumableState.bootstrapModules = void 0;\n } else {\n nextSegmentId = 0;\n replaySlots = -1;\n resumableState = request.resumableState;\n var renderState = request.renderState;\n resumableState.nextFormID = 0;\n resumableState.hasBody = !1;\n resumableState.hasHtml = !1;\n resumableState.unknownResources = { font: renderState.resets.font };\n resumableState.dnsResources = renderState.resets.dns;\n resumableState.connectResources = renderState.resets.connect;\n resumableState.imageResources = renderState.resets.image;\n resumableState.styleResources = renderState.resets.style;\n resumableState.scriptResources = {};\n resumableState.moduleUnknownResources = {};\n resumableState.moduleScriptResources = {};\n resumableState.instructions = 0;\n }\n trackedPostpones = {\n nextSegmentId: nextSegmentId,\n rootFormatContext: request.rootFormatContext,\n progressiveChunkSize: request.progressiveChunkSize,\n resumableState: request.resumableState,\n replayNodes: trackedPostpones.rootNodes,\n replaySlots: replaySlots\n };\n hasFlushableShell && (request.postponedState = trackedPostpones);\n return trackedPostpones;\n}\nfunction ensureCorrectIsomorphicReactVersion() {\n var isomorphicReactPackageVersion = React.version;\n if (\"19.3.0\" !== isomorphicReactPackageVersion)\n throw Error(\n 'Incompatible React versions: The \"react\" and \"react-dom\" packages must have the exact same version. Instead got:\\n - react: ' +\n (isomorphicReactPackageVersion +\n \"\\n - react-dom: 19.3.0\\nLearn more: https://react.dev/warnings/version-mismatch\")\n );\n}\nensureCorrectIsomorphicReactVersion();\nensureCorrectIsomorphicReactVersion();\nexports.prerender = function (children, options) {\n return new Promise(function (resolve, reject) {\n var onHeaders = options ? options.onHeaders : void 0,\n onHeadersImpl;\n onHeaders &&\n (onHeadersImpl = function (headersDescriptor) {\n onHeaders(new Headers(headersDescriptor));\n });\n var resources = createResumableState(\n options ? options.identifierPrefix : void 0,\n options ? options.unstable_externalRuntimeSrc : void 0,\n options ? options.bootstrapScriptContent : void 0,\n options ? options.bootstrapScripts : void 0,\n options ? options.bootstrapModules : void 0\n ),\n request = createPrerenderRequest(\n children,\n resources,\n createRenderState(\n resources,\n void 0,\n options ? options.unstable_externalRuntimeSrc : void 0,\n options ? options.importMap : void 0,\n onHeadersImpl,\n options ? options.maxHeadersLength : void 0\n ),\n createRootFormatContext(options ? options.namespaceURI : void 0),\n options ? options.progressiveChunkSize : void 0,\n options ? options.onError : void 0,\n options ? options.onBrowserBailout : void 0,\n function () {\n var stream = new ReadableStream(\n {\n type: \"bytes\",\n pull: function (controller) {\n startFlowing(request, controller);\n },\n cancel: function (reason) {\n request.destination = null;\n abort(request, reason);\n }\n },\n { highWaterMark: 0 }\n );\n stream = { postponed: getPostponedState(request), prelude: stream };\n resolve(stream);\n },\n void 0,\n void 0,\n reject\n );\n options && options.signal && attachAbortSignal(request, options.signal);\n startWork(request);\n });\n};\nexports.renderToReadableStream = function (children, options) {\n return new Promise(function (resolve, reject) {\n var onFatalError,\n onAllReady,\n allReady = new Promise(function (res, rej) {\n onAllReady = res;\n onFatalError = rej;\n }),\n onHeaders = options ? options.onHeaders : void 0,\n onHeadersImpl;\n onHeaders &&\n (onHeadersImpl = function (headersDescriptor) {\n onHeaders(new Headers(headersDescriptor));\n });\n var resumableState = createResumableState(\n options ? options.identifierPrefix : void 0,\n options ? options.unstable_externalRuntimeSrc : void 0,\n options ? options.bootstrapScriptContent : void 0,\n options ? options.bootstrapScripts : void 0,\n options ? options.bootstrapModules : void 0\n ),\n request = createRequest(\n children,\n resumableState,\n createRenderState(\n resumableState,\n options ? options.nonce : void 0,\n options ? options.unstable_externalRuntimeSrc : void 0,\n options ? options.importMap : void 0,\n onHeadersImpl,\n options ? options.maxHeadersLength : void 0\n ),\n createRootFormatContext(options ? options.namespaceURI : void 0),\n options ? options.progressiveChunkSize : void 0,\n options ? options.onError : void 0,\n options ? options.onBrowserBailout : void 0,\n onAllReady,\n function () {\n var stream = new ReadableStream(\n {\n type: \"bytes\",\n pull: function (controller) {\n startFlowing(request, controller);\n },\n cancel: function (reason) {\n request.destination = null;\n abort(request, reason);\n }\n },\n { highWaterMark: 0 }\n );\n stream.allReady = allReady;\n resolve(stream);\n },\n function (error) {\n allReady.catch(function () {});\n reject(error);\n },\n onFatalError,\n options ? options.formState : void 0\n );\n options && options.signal && attachAbortSignal(request, options.signal);\n startWork(request);\n });\n};\nexports.resume = function (children, postponedState, options) {\n return new Promise(function (resolve, reject) {\n var onFatalError,\n onAllReady,\n allReady = new Promise(function (res, rej) {\n onAllReady = res;\n onFatalError = rej;\n }),\n request = resumeRequest(\n children,\n postponedState,\n createRenderState(\n postponedState.resumableState,\n options ? options.nonce : void 0,\n void 0,\n void 0,\n void 0,\n void 0\n ),\n options ? options.onError : void 0,\n options ? options.onBrowserBailout : void 0,\n onAllReady,\n function () {\n var stream = new ReadableStream(\n {\n type: \"bytes\",\n pull: function (controller) {\n startFlowing(request, controller);\n },\n cancel: function (reason) {\n request.destination = null;\n abort(request, reason);\n }\n },\n { highWaterMark: 0 }\n );\n stream.allReady = allReady;\n resolve(stream);\n },\n function (error) {\n allReady.catch(function () {});\n reject(error);\n },\n onFatalError\n );\n options && options.signal && attachAbortSignal(request, options.signal);\n startWork(request);\n });\n};\nexports.resumeAndPrerender = function (children, postponedState, options) {\n return new Promise(function (resolve, reject) {\n var request = resumeAndPrerenderRequest(\n children,\n postponedState,\n createRenderState(\n postponedState.resumableState,\n void 0,\n void 0,\n void 0,\n void 0,\n void 0\n ),\n options ? options.onError : void 0,\n options ? options.onBrowserBailout : void 0,\n function () {\n var stream = new ReadableStream(\n {\n type: \"bytes\",\n pull: function (controller) {\n startFlowing(request, controller);\n },\n cancel: function (reason) {\n request.destination = null;\n abort(request, reason);\n }\n },\n { highWaterMark: 0 }\n );\n stream = { postponed: getPostponedState(request), prelude: stream };\n resolve(stream);\n },\n void 0,\n void 0,\n reject\n );\n options && options.signal && attachAbortSignal(request, options.signal);\n startWork(request);\n });\n};\nexports.version = \"19.3.0\";\n","/**\n * @license React\n * react-dom-server-legacy.browser.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n\n\n JS Implementation of MurmurHash3 (r136) (as of May 20, 2011)\n\n Copyright (c) 2011 Gary Court\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n*/\n\"use strict\";\nvar React = require(\"react\"),\n ReactDOM = require(\"react-dom\");\nfunction formatProdErrorMessage(code) {\n var url = \"https://react.dev/errors/\" + code;\n if (1 < arguments.length) {\n url += \"?args[]=\" + encodeURIComponent(arguments[1]);\n for (var i = 2; i < arguments.length; i++)\n url += \"&args[]=\" + encodeURIComponent(arguments[i]);\n }\n return (\n \"Minified React error #\" +\n code +\n \"; visit \" +\n url +\n \" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"\n );\n}\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_SCOPE_TYPE = Symbol.for(\"react.scope\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_LEGACY_HIDDEN_TYPE = Symbol.for(\"react.legacy_hidden\"),\n REACT_MEMO_CACHE_SENTINEL = Symbol.for(\"react.memo_cache_sentinel\"),\n REACT_VIEW_TRANSITION_TYPE = Symbol.for(\"react.view_transition\"),\n REACT_RECOVERABLE_TYPE = Symbol.for(\"react.recoverable\"),\n MAYBE_ITERATOR_SYMBOL = Symbol.iterator;\nfunction getIteratorFn(maybeIterable) {\n if (null === maybeIterable || \"object\" !== typeof maybeIterable) return null;\n maybeIterable =\n (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||\n maybeIterable[\"@@iterator\"];\n return \"function\" === typeof maybeIterable ? maybeIterable : null;\n}\nvar REACT_OPTIMISTIC_KEY = Symbol.for(\"react.optimistic_key\"),\n isArrayImpl = Array.isArray;\nfunction murmurhash3_32_gc(key, seed) {\n var remainder = key.length & 3;\n var bytes = key.length - remainder;\n var h1 = seed;\n for (seed = 0; seed < bytes; ) {\n var k1 =\n (key.charCodeAt(seed) & 255) |\n ((key.charCodeAt(++seed) & 255) << 8) |\n ((key.charCodeAt(++seed) & 255) << 16) |\n ((key.charCodeAt(++seed) & 255) << 24);\n ++seed;\n k1 =\n (3432918353 * (k1 & 65535) +\n (((3432918353 * (k1 >>> 16)) & 65535) << 16)) &\n 4294967295;\n k1 = (k1 << 15) | (k1 >>> 17);\n k1 =\n (461845907 * (k1 & 65535) + (((461845907 * (k1 >>> 16)) & 65535) << 16)) &\n 4294967295;\n h1 ^= k1;\n h1 = (h1 << 13) | (h1 >>> 19);\n h1 = (5 * (h1 & 65535) + (((5 * (h1 >>> 16)) & 65535) << 16)) & 4294967295;\n h1 = (h1 & 65535) + 27492 + ((((h1 >>> 16) + 58964) & 65535) << 16);\n }\n k1 = 0;\n switch (remainder) {\n case 3:\n k1 ^= (key.charCodeAt(seed + 2) & 255) << 16;\n case 2:\n k1 ^= (key.charCodeAt(seed + 1) & 255) << 8;\n case 1:\n (k1 ^= key.charCodeAt(seed) & 255),\n (k1 =\n (3432918353 * (k1 & 65535) +\n (((3432918353 * (k1 >>> 16)) & 65535) << 16)) &\n 4294967295),\n (k1 = (k1 << 15) | (k1 >>> 17)),\n (h1 ^=\n (461845907 * (k1 & 65535) +\n (((461845907 * (k1 >>> 16)) & 65535) << 16)) &\n 4294967295);\n }\n h1 ^= key.length;\n h1 ^= h1 >>> 16;\n h1 =\n (2246822507 * (h1 & 65535) + (((2246822507 * (h1 >>> 16)) & 65535) << 16)) &\n 4294967295;\n h1 ^= h1 >>> 13;\n h1 =\n (3266489909 * (h1 & 65535) + (((3266489909 * (h1 >>> 16)) & 65535) << 16)) &\n 4294967295;\n return (h1 ^ (h1 >>> 16)) >>> 0;\n}\nvar assign = Object.assign,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n VALID_ATTRIBUTE_NAME_REGEX = RegExp(\n \"^[:A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD][:A-Z_a-z\\\\u00C0-\\\\u00D6\\\\u00D8-\\\\u00F6\\\\u00F8-\\\\u02FF\\\\u0370-\\\\u037D\\\\u037F-\\\\u1FFF\\\\u200C-\\\\u200D\\\\u2070-\\\\u218F\\\\u2C00-\\\\u2FEF\\\\u3001-\\\\uD7FF\\\\uF900-\\\\uFDCF\\\\uFDF0-\\\\uFFFD\\\\-.0-9\\\\u00B7\\\\u0300-\\\\u036F\\\\u203F-\\\\u2040]*$\"\n ),\n illegalAttributeNameCache = {},\n validatedAttributeNameCache = {};\nfunction isAttributeNameSafe(attributeName) {\n if (hasOwnProperty.call(validatedAttributeNameCache, attributeName))\n return !0;\n if (hasOwnProperty.call(illegalAttributeNameCache, attributeName)) return !1;\n if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName))\n return (validatedAttributeNameCache[attributeName] = !0);\n illegalAttributeNameCache[attributeName] = !0;\n return !1;\n}\nvar unitlessNumbers = new Set(\n \"animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp\".split(\n \" \"\n )\n ),\n aliases = new Map([\n [\"acceptCharset\", \"accept-charset\"],\n [\"htmlFor\", \"for\"],\n [\"httpEquiv\", \"http-equiv\"],\n [\"crossOrigin\", \"crossorigin\"],\n [\"accentHeight\", \"accent-height\"],\n [\"alignmentBaseline\", \"alignment-baseline\"],\n [\"arabicForm\", \"arabic-form\"],\n [\"baselineShift\", \"baseline-shift\"],\n [\"capHeight\", \"cap-height\"],\n [\"clipPath\", \"clip-path\"],\n [\"clipRule\", \"clip-rule\"],\n [\"colorInterpolation\", \"color-interpolation\"],\n [\"colorInterpolationFilters\", \"color-interpolation-filters\"],\n [\"colorProfile\", \"color-profile\"],\n [\"colorRendering\", \"color-rendering\"],\n [\"dominantBaseline\", \"dominant-baseline\"],\n [\"enableBackground\", \"enable-background\"],\n [\"fillOpacity\", \"fill-opacity\"],\n [\"fillRule\", \"fill-rule\"],\n [\"floodColor\", \"flood-color\"],\n [\"floodOpacity\", \"flood-opacity\"],\n [\"fontFamily\", \"font-family\"],\n [\"fontSize\", \"font-size\"],\n [\"fontSizeAdjust\", \"font-size-adjust\"],\n [\"fontStretch\", \"font-stretch\"],\n [\"fontStyle\", \"font-style\"],\n [\"fontVariant\", \"font-variant\"],\n [\"fontWeight\", \"font-weight\"],\n [\"glyphName\", \"glyph-name\"],\n [\"glyphOrientationHorizontal\", \"glyph-orientation-horizontal\"],\n [\"glyphOrientationVertical\", \"glyph-orientation-vertical\"],\n [\"horizAdvX\", \"horiz-adv-x\"],\n [\"horizOriginX\", \"horiz-origin-x\"],\n [\"imageRendering\", \"image-rendering\"],\n [\"letterSpacing\", \"letter-spacing\"],\n [\"lightingColor\", \"lighting-color\"],\n [\"markerEnd\", \"marker-end\"],\n [\"markerMid\", \"marker-mid\"],\n [\"markerStart\", \"marker-start\"],\n [\"maskType\", \"mask-type\"],\n [\"overlinePosition\", \"overline-position\"],\n [\"overlineThickness\", \"overline-thickness\"],\n [\"paintOrder\", \"paint-order\"],\n [\"panose-1\", \"panose-1\"],\n [\"pointerEvents\", \"pointer-events\"],\n [\"renderingIntent\", \"rendering-intent\"],\n [\"shapeRendering\", \"shape-rendering\"],\n [\"stopColor\", \"stop-color\"],\n [\"stopOpacity\", \"stop-opacity\"],\n [\"strikethroughPosition\", \"strikethrough-position\"],\n [\"strikethroughThickness\", \"strikethrough-thickness\"],\n [\"strokeDasharray\", \"stroke-dasharray\"],\n [\"strokeDashoffset\", \"stroke-dashoffset\"],\n [\"strokeLinecap\", \"stroke-linecap\"],\n [\"strokeLinejoin\", \"stroke-linejoin\"],\n [\"strokeMiterlimit\", \"stroke-miterlimit\"],\n [\"strokeOpacity\", \"stroke-opacity\"],\n [\"strokeWidth\", \"stroke-width\"],\n [\"textAnchor\", \"text-anchor\"],\n [\"textDecoration\", \"text-decoration\"],\n [\"textRendering\", \"text-rendering\"],\n [\"transformOrigin\", \"transform-origin\"],\n [\"underlinePosition\", \"underline-position\"],\n [\"underlineThickness\", \"underline-thickness\"],\n [\"unicodeBidi\", \"unicode-bidi\"],\n [\"unicodeRange\", \"unicode-range\"],\n [\"unitsPerEm\", \"units-per-em\"],\n [\"vAlphabetic\", \"v-alphabetic\"],\n [\"vHanging\", \"v-hanging\"],\n [\"vIdeographic\", \"v-ideographic\"],\n [\"vMathematical\", \"v-mathematical\"],\n [\"vectorEffect\", \"vector-effect\"],\n [\"vertAdvY\", \"vert-adv-y\"],\n [\"vertOriginX\", \"vert-origin-x\"],\n [\"vertOriginY\", \"vert-origin-y\"],\n [\"wordSpacing\", \"word-spacing\"],\n [\"writingMode\", \"writing-mode\"],\n [\"xmlnsXlink\", \"xmlns:xlink\"],\n [\"xHeight\", \"x-height\"]\n ]),\n matchHtmlRegExp = /[\"'&<>]/;\nfunction escapeTextForBrowser(text) {\n if (\n \"boolean\" === typeof text ||\n \"number\" === typeof text ||\n \"bigint\" === typeof text\n )\n return \"\" + text;\n text = \"\" + text;\n var match = matchHtmlRegExp.exec(text);\n if (match) {\n var html = \"\",\n index,\n lastIndex = 0;\n for (index = match.index; index < text.length; index++) {\n switch (text.charCodeAt(index)) {\n case 34:\n match = \"&quot;\";\n break;\n case 38:\n match = \"&amp;\";\n break;\n case 39:\n match = \"&#x27;\";\n break;\n case 60:\n match = \"&lt;\";\n break;\n case 62:\n match = \"&gt;\";\n break;\n default:\n continue;\n }\n lastIndex !== index && (html += text.slice(lastIndex, index));\n lastIndex = index + 1;\n html += match;\n }\n text = lastIndex !== index ? html + text.slice(lastIndex, index) : html;\n }\n return text;\n}\nvar uppercasePattern = /([A-Z])/g,\n msPattern = /^ms-/,\n isJavaScriptProtocol =\n /^[\\u0000-\\u001F ]*j[\\r\\n\\t]*a[\\r\\n\\t]*v[\\r\\n\\t]*a[\\r\\n\\t]*s[\\r\\n\\t]*c[\\r\\n\\t]*r[\\r\\n\\t]*i[\\r\\n\\t]*p[\\r\\n\\t]*t[\\r\\n\\t]*:/i;\nfunction sanitizeURL(url) {\n return isJavaScriptProtocol.test(\"\" + url)\n ? \"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')\"\n : url;\n}\nvar ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n ReactDOMSharedInternals =\n ReactDOM.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n sharedNotPendingObject = {\n pending: !1,\n data: null,\n method: null,\n action: null\n },\n previousDispatcher = ReactDOMSharedInternals.d;\nReactDOMSharedInternals.d = {\n f: previousDispatcher.f,\n r: previousDispatcher.r,\n D: prefetchDNS,\n C: preconnect,\n L: preload,\n m: preloadModule,\n X: preinitScript,\n S: preinitStyle,\n M: preinitModuleScript\n};\nvar PRELOAD_NO_CREDS = [],\n currentlyFlushingRenderState = null,\n scriptRegex = /(<\\/|<)(s)(cript)/gi;\nfunction scriptReplacer(match, prefix, s, suffix) {\n return \"\" + prefix + (\"s\" === s ? \"\\\\u0073\" : \"\\\\u0053\") + suffix;\n}\nfunction createResumableState(\n identifierPrefix,\n externalRuntimeConfig,\n bootstrapScriptContent,\n bootstrapScripts,\n bootstrapModules\n) {\n return {\n idPrefix: void 0 === identifierPrefix ? \"\" : identifierPrefix,\n nextFormID: 0,\n streamingFormat: 0,\n bootstrapScriptContent: bootstrapScriptContent,\n bootstrapScripts: bootstrapScripts,\n bootstrapModules: bootstrapModules,\n instructions: 0,\n hasBody: !1,\n hasHtml: !1,\n unknownResources: {},\n dnsResources: {},\n connectResources: { default: {}, anonymous: {}, credentials: {} },\n imageResources: {},\n styleResources: {},\n scriptResources: {},\n moduleUnknownResources: {},\n moduleScriptResources: {}\n };\n}\nfunction createFormatContext(\n insertionMode,\n selectedValue,\n tagScope,\n viewTransition\n) {\n return {\n insertionMode: insertionMode,\n selectedValue: selectedValue,\n tagScope: tagScope,\n viewTransition: viewTransition\n };\n}\nfunction getChildFormatContext(parentContext, type, props) {\n var subtreeScope = parentContext.tagScope & -25;\n switch (type) {\n case \"noscript\":\n return createFormatContext(2, null, subtreeScope | 1, null);\n case \"select\":\n return createFormatContext(\n 2,\n null != props.value ? props.value : props.defaultValue,\n subtreeScope,\n null\n );\n case \"svg\":\n return createFormatContext(4, null, subtreeScope, null);\n case \"picture\":\n return createFormatContext(2, null, subtreeScope | 2, null);\n case \"math\":\n return createFormatContext(5, null, subtreeScope, null);\n case \"foreignObject\":\n return createFormatContext(2, null, subtreeScope, null);\n case \"table\":\n return createFormatContext(6, null, subtreeScope, null);\n case \"thead\":\n case \"tbody\":\n case \"tfoot\":\n return createFormatContext(7, null, subtreeScope, null);\n case \"colgroup\":\n return createFormatContext(9, null, subtreeScope, null);\n case \"tr\":\n return createFormatContext(8, null, subtreeScope, null);\n case \"head\":\n if (2 > parentContext.insertionMode)\n return createFormatContext(3, null, subtreeScope, null);\n break;\n case \"html\":\n if (0 === parentContext.insertionMode)\n return createFormatContext(1, null, subtreeScope, null);\n }\n return 6 <= parentContext.insertionMode || 2 > parentContext.insertionMode\n ? createFormatContext(2, null, subtreeScope, null)\n : null !== parentContext.viewTransition ||\n parentContext.tagScope !== subtreeScope\n ? createFormatContext(\n parentContext.insertionMode,\n parentContext.selectedValue,\n subtreeScope,\n null\n )\n : parentContext;\n}\nfunction getSuspenseViewTransition(parentViewTransition) {\n return null === parentViewTransition\n ? null\n : {\n update: parentViewTransition.update,\n enter: \"none\",\n exit: \"none\",\n share: parentViewTransition.update,\n parentEnter: \"none\",\n parentExit: \"none\",\n name: parentViewTransition.autoName,\n autoName: parentViewTransition.autoName,\n nameIdx: 0\n };\n}\nfunction getSuspenseFallbackFormatContext(resumableState, parentContext) {\n parentContext.tagScope & 32 && (resumableState.instructions |= 128);\n return createFormatContext(\n parentContext.insertionMode,\n parentContext.selectedValue,\n parentContext.tagScope | 12,\n getSuspenseViewTransition(parentContext.viewTransition)\n );\n}\nfunction getSuspenseContentFormatContext(resumableState, parentContext) {\n resumableState = getSuspenseViewTransition(parentContext.viewTransition);\n var subtreeScope = parentContext.tagScope | 16;\n null !== resumableState &&\n \"none\" !== resumableState.share &&\n (subtreeScope |= 64);\n return createFormatContext(\n parentContext.insertionMode,\n parentContext.selectedValue,\n subtreeScope,\n resumableState\n );\n}\nfunction makeId(resumableState, treeId, localId) {\n resumableState = \"_\" + resumableState.idPrefix + \"R_\" + treeId;\n 0 < localId && (resumableState += \"H\" + localId.toString(32));\n return resumableState + \"_\";\n}\nfunction pushViewTransitionAttributes(target, formatContext) {\n formatContext = formatContext.viewTransition;\n null !== formatContext &&\n (\"auto\" !== formatContext.name &&\n (pushStringAttribute(\n target,\n \"vt-name\",\n 0 === formatContext.nameIdx\n ? formatContext.name\n : formatContext.name + \"_\" + formatContext.nameIdx\n ),\n formatContext.nameIdx++),\n pushStringAttribute(target, \"vt-update\", formatContext.update),\n \"none\" !== formatContext.enter &&\n pushStringAttribute(target, \"vt-enter\", formatContext.enter),\n \"none\" !== formatContext.exit &&\n pushStringAttribute(target, \"vt-exit\", formatContext.exit),\n \"none\" !== formatContext.share &&\n pushStringAttribute(target, \"vt-share\", formatContext.share));\n}\nvar styleNameCache = new Map();\nfunction pushStyleAttribute(target, style) {\n if (\"object\" !== typeof style) throw Error(formatProdErrorMessage(62));\n var isFirst = !0,\n styleName;\n for (styleName in style)\n if (hasOwnProperty.call(style, styleName)) {\n var styleValue = style[styleName];\n if (\n null != styleValue &&\n \"boolean\" !== typeof styleValue &&\n \"\" !== styleValue\n ) {\n if (0 === styleName.indexOf(\"--\")) {\n var nameChunk = escapeTextForBrowser(styleName);\n styleValue = escapeTextForBrowser((\"\" + styleValue).trim());\n } else\n (nameChunk = styleNameCache.get(styleName)),\n void 0 === nameChunk &&\n ((nameChunk = escapeTextForBrowser(\n styleName\n .replace(uppercasePattern, \"-$1\")\n .toLowerCase()\n .replace(msPattern, \"-ms-\")\n )),\n styleNameCache.set(styleName, nameChunk)),\n (styleValue =\n \"number\" === typeof styleValue\n ? 0 === styleValue || unitlessNumbers.has(styleName)\n ? \"\" + styleValue\n : styleValue + \"px\"\n : escapeTextForBrowser((\"\" + styleValue).trim()));\n isFirst\n ? ((isFirst = !1),\n target.push(' style=\"', nameChunk, \":\", styleValue))\n : target.push(\";\", nameChunk, \":\", styleValue);\n }\n }\n isFirst || target.push('\"');\n}\nfunction pushBooleanAttribute(target, name, value) {\n value &&\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n target.push(\" \", name, '=\"\"');\n}\nfunction pushStringAttribute(target, name, value) {\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n \"boolean\" !== typeof value &&\n target.push(\" \", name, '=\"', escapeTextForBrowser(value), '\"');\n}\nvar actionJavaScriptURL = escapeTextForBrowser(\n \"javascript:throw new Error('React form unexpectedly submitted.')\"\n);\nfunction pushAdditionalFormField(value, key) {\n this.push('<input type=\"hidden\"');\n validateAdditionalFormField(value);\n pushStringAttribute(this, \"name\", key);\n pushStringAttribute(this, \"value\", value);\n this.push(\"/>\");\n}\nfunction validateAdditionalFormField(value) {\n if (\"string\" !== typeof value) throw Error(formatProdErrorMessage(480));\n}\nfunction getCustomFormFields(resumableState, formAction) {\n if (\"function\" === typeof formAction.$$FORM_ACTION) {\n var id = resumableState.nextFormID++;\n resumableState = resumableState.idPrefix + id;\n try {\n var customFields = formAction.$$FORM_ACTION(resumableState);\n if (customFields) {\n var formData = customFields.data;\n null != formData && formData.forEach(validateAdditionalFormField);\n }\n return customFields;\n } catch (x) {\n if (\"object\" === typeof x && null !== x && \"function\" === typeof x.then)\n throw x;\n }\n }\n return null;\n}\nfunction pushFormActionAttribute(\n target,\n resumableState,\n renderState,\n formAction,\n formEncType,\n formMethod,\n formTarget,\n name\n) {\n var formData = null;\n if (\"function\" === typeof formAction) {\n var customFields = getCustomFormFields(resumableState, formAction);\n null !== customFields\n ? ((name = customFields.name),\n (formAction = customFields.action || \"\"),\n (formEncType = customFields.encType),\n (formMethod = customFields.method),\n (formTarget = customFields.target),\n (formData = customFields.data))\n : (target.push(\" \", \"formAction\", '=\"', actionJavaScriptURL, '\"'),\n (formTarget = formMethod = formEncType = formAction = name = null),\n injectFormReplayingRuntime(resumableState, renderState));\n }\n null != name && pushAttribute(target, \"name\", name);\n null != formAction && pushAttribute(target, \"formAction\", formAction);\n null != formEncType && pushAttribute(target, \"formEncType\", formEncType);\n null != formMethod && pushAttribute(target, \"formMethod\", formMethod);\n null != formTarget && pushAttribute(target, \"formTarget\", formTarget);\n return formData;\n}\nfunction pushAttribute(target, name, value) {\n switch (name) {\n case \"className\":\n pushStringAttribute(target, \"class\", value);\n break;\n case \"tabIndex\":\n pushStringAttribute(target, \"tabindex\", value);\n break;\n case \"dir\":\n case \"role\":\n case \"viewBox\":\n case \"width\":\n case \"height\":\n pushStringAttribute(target, name, value);\n break;\n case \"style\":\n pushStyleAttribute(target, value);\n break;\n case \"src\":\n case \"href\":\n if (\"\" === value) break;\n case \"action\":\n case \"formAction\":\n if (\n null == value ||\n \"function\" === typeof value ||\n \"symbol\" === typeof value ||\n \"boolean\" === typeof value\n )\n break;\n value = sanitizeURL(\"\" + value);\n target.push(\" \", name, '=\"', escapeTextForBrowser(value), '\"');\n break;\n case \"defaultValue\":\n case \"defaultChecked\":\n case \"innerHTML\":\n case \"suppressContentEditableWarning\":\n case \"suppressHydrationWarning\":\n case \"ref\":\n break;\n case \"autoFocus\":\n case \"multiple\":\n case \"muted\":\n pushBooleanAttribute(target, name.toLowerCase(), value);\n break;\n case \"xlinkHref\":\n if (\n \"function\" === typeof value ||\n \"symbol\" === typeof value ||\n \"boolean\" === typeof value\n )\n break;\n value = sanitizeURL(\"\" + value);\n target.push(\" \", \"xlink:href\", '=\"', escapeTextForBrowser(value), '\"');\n break;\n case \"contentEditable\":\n case \"spellCheck\":\n case \"draggable\":\n case \"value\":\n case \"autoReverse\":\n case \"externalResourcesRequired\":\n case \"focusable\":\n case \"preserveAlpha\":\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n target.push(\" \", name, '=\"', escapeTextForBrowser(value), '\"');\n break;\n case \"inert\":\n case \"allowFullScreen\":\n case \"async\":\n case \"autoPlay\":\n case \"controls\":\n case \"credentialless\":\n case \"default\":\n case \"defer\":\n case \"disabled\":\n case \"disablePictureInPicture\":\n case \"disableRemotePlayback\":\n case \"formNoValidate\":\n case \"hidden\":\n case \"loop\":\n case \"noModule\":\n case \"noValidate\":\n case \"open\":\n case \"playsInline\":\n case \"readOnly\":\n case \"required\":\n case \"reversed\":\n case \"scoped\":\n case \"seamless\":\n case \"itemScope\":\n value &&\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n target.push(\" \", name, '=\"\"');\n break;\n case \"capture\":\n case \"download\":\n !0 === value\n ? target.push(\" \", name, '=\"\"')\n : !1 !== value &&\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n target.push(\" \", name, '=\"', escapeTextForBrowser(value), '\"');\n break;\n case \"cols\":\n case \"rows\":\n case \"size\":\n case \"span\":\n \"function\" !== typeof value &&\n \"symbol\" !== typeof value &&\n !isNaN(value) &&\n 1 <= value &&\n target.push(\" \", name, '=\"', escapeTextForBrowser(value), '\"');\n break;\n case \"rowSpan\":\n case \"start\":\n \"function\" === typeof value ||\n \"symbol\" === typeof value ||\n isNaN(value) ||\n target.push(\" \", name, '=\"', escapeTextForBrowser(value), '\"');\n break;\n case \"xlinkActuate\":\n pushStringAttribute(target, \"xlink:actuate\", value);\n break;\n case \"xlinkArcrole\":\n pushStringAttribute(target, \"xlink:arcrole\", value);\n break;\n case \"xlinkRole\":\n pushStringAttribute(target, \"xlink:role\", value);\n break;\n case \"xlinkShow\":\n pushStringAttribute(target, \"xlink:show\", value);\n break;\n case \"xlinkTitle\":\n pushStringAttribute(target, \"xlink:title\", value);\n break;\n case \"xlinkType\":\n pushStringAttribute(target, \"xlink:type\", value);\n break;\n case \"xmlBase\":\n pushStringAttribute(target, \"xml:base\", value);\n break;\n case \"xmlLang\":\n pushStringAttribute(target, \"xml:lang\", value);\n break;\n case \"xmlSpace\":\n pushStringAttribute(target, \"xml:space\", value);\n break;\n default:\n if (\n !(2 < name.length) ||\n (\"o\" !== name[0] && \"O\" !== name[0]) ||\n (\"n\" !== name[1] && \"N\" !== name[1])\n )\n if (((name = aliases.get(name) || name), isAttributeNameSafe(name))) {\n switch (typeof value) {\n case \"function\":\n case \"symbol\":\n return;\n case \"boolean\":\n var prefix$8 = name.toLowerCase().slice(0, 5);\n if (\"data-\" !== prefix$8 && \"aria-\" !== prefix$8) return;\n }\n target.push(\" \", name, '=\"', escapeTextForBrowser(value), '\"');\n }\n }\n}\nfunction pushInnerHTML(target, innerHTML, children) {\n if (null != innerHTML) {\n if (null != children) throw Error(formatProdErrorMessage(60));\n if (\"object\" !== typeof innerHTML || !(\"__html\" in innerHTML))\n throw Error(formatProdErrorMessage(61));\n innerHTML = innerHTML.__html;\n null !== innerHTML && void 0 !== innerHTML && target.push(\"\" + innerHTML);\n }\n}\nfunction flattenOptionChildren(children) {\n var content = \"\";\n React.Children.forEach(children, function (child) {\n null != child && (content += child);\n });\n return content;\n}\nfunction injectFormReplayingRuntime(resumableState, renderState) {\n if (0 === (resumableState.instructions & 16)) {\n resumableState.instructions |= 16;\n var preamble = renderState.preamble,\n bootstrapChunks = renderState.bootstrapChunks;\n (preamble.htmlChunks || preamble.headChunks) && 0 === bootstrapChunks.length\n ? (bootstrapChunks.push(renderState.startInlineScript),\n pushCompletedShellIdAttribute(bootstrapChunks, resumableState),\n bootstrapChunks.push(\n \">\",\n 'addEventListener(\"submit\",function(a){if(!a.defaultPrevented){var b=a.target,d=a.submitter,c=b.action,e=d;if(d){var f=d.getAttribute(\"formAction\");null!=f&&(c=f,e=null)}\"javascript:throw new Error(\\'React form unexpectedly submitted.\\')\"===c&&(a.preventDefault(),a=new FormData(b,e),c=b.ownerDocument||b,(c.$$reactFormReplay=c.$$reactFormReplay||[]).push(b,d,a))}});',\n \"\\x3c/script>\"\n ))\n : bootstrapChunks.unshift(\n renderState.startInlineScript,\n \">\",\n 'addEventListener(\"submit\",function(a){if(!a.defaultPrevented){var b=a.target,d=a.submitter,c=b.action,e=d;if(d){var f=d.getAttribute(\"formAction\");null!=f&&(c=f,e=null)}\"javascript:throw new Error(\\'React form unexpectedly submitted.\\')\"===c&&(a.preventDefault(),a=new FormData(b,e),c=b.ownerDocument||b,(c.$$reactFormReplay=c.$$reactFormReplay||[]).push(b,d,a))}});',\n \"\\x3c/script>\"\n );\n }\n}\nfunction pushLinkImpl(target, props) {\n target.push(startChunkForTag(\"link\"));\n for (var propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(formatProdErrorMessage(399, \"link\"));\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n target.push(\"/>\");\n return null;\n}\nvar styleRegex = /(<\\/|<)(s)(tyle)/gi;\nfunction styleReplacer(match, prefix, s, suffix) {\n return \"\" + prefix + (\"s\" === s ? \"\\\\73 \" : \"\\\\53 \") + suffix;\n}\nfunction pushSelfClosing(target, props, tag, formatContext) {\n target.push(startChunkForTag(tag));\n for (var propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(formatProdErrorMessage(399, tag));\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n pushViewTransitionAttributes(target, formatContext);\n target.push(\"/>\");\n return null;\n}\nfunction pushTitleImpl(target, props) {\n target.push(startChunkForTag(\"title\"));\n var children = null,\n innerHTML = null,\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n children = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n target.push(\">\");\n props = Array.isArray(children)\n ? 2 > children.length\n ? children[0]\n : null\n : children;\n \"function\" !== typeof props &&\n \"symbol\" !== typeof props &&\n null !== props &&\n void 0 !== props &&\n target.push(escapeTextForBrowser(\"\" + props));\n pushInnerHTML(target, innerHTML, children);\n target.push(endChunkForTag(\"title\"));\n return null;\n}\nfunction pushScriptImpl(target, props) {\n target.push(startChunkForTag(\"script\"));\n var children = null,\n innerHTML = null,\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n children = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n target.push(\">\");\n pushInnerHTML(target, innerHTML, children);\n \"string\" === typeof children &&\n target.push((\"\" + children).replace(scriptRegex, scriptReplacer));\n target.push(endChunkForTag(\"script\"));\n return null;\n}\nfunction pushStartSingletonElement(target, props, tag, formatContext) {\n target.push(startChunkForTag(tag));\n var innerHTML = (tag = null),\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n tag = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n pushViewTransitionAttributes(target, formatContext);\n target.push(\">\");\n pushInnerHTML(target, innerHTML, tag);\n return tag;\n}\nfunction pushStartGenericElement(target, props, tag, formatContext) {\n target.push(startChunkForTag(tag));\n var innerHTML = (tag = null),\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n tag = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n default:\n pushAttribute(target, propKey, propValue);\n }\n }\n pushViewTransitionAttributes(target, formatContext);\n target.push(\">\");\n pushInnerHTML(target, innerHTML, tag);\n return \"string\" === typeof tag\n ? (target.push(escapeTextForBrowser(tag)), null)\n : tag;\n}\nvar VALID_TAG_REGEX = /^[a-zA-Z][a-zA-Z:_\\.\\-\\d]*$/,\n validatedTagCache = new Map();\nfunction startChunkForTag(tag) {\n var tagStartChunk = validatedTagCache.get(tag);\n if (void 0 === tagStartChunk) {\n if (!VALID_TAG_REGEX.test(tag))\n throw Error(formatProdErrorMessage(65, tag));\n tagStartChunk = \"<\" + tag;\n validatedTagCache.set(tag, tagStartChunk);\n }\n return tagStartChunk;\n}\nfunction pushStartInstance(\n target$jscomp$0,\n type,\n props,\n resumableState,\n renderState,\n preambleState,\n hoistableState,\n formatContext,\n textEmbedded\n) {\n switch (type) {\n case \"div\":\n case \"span\":\n case \"svg\":\n case \"path\":\n break;\n case \"a\":\n target$jscomp$0.push(startChunkForTag(\"a\"));\n var children = null,\n innerHTML = null,\n propKey;\n for (propKey in props)\n if (hasOwnProperty.call(props, propKey)) {\n var propValue = props[propKey];\n if (null != propValue)\n switch (propKey) {\n case \"children\":\n children = propValue;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML = propValue;\n break;\n case \"href\":\n \"\" === propValue\n ? pushStringAttribute(target$jscomp$0, \"href\", \"\")\n : pushAttribute(target$jscomp$0, propKey, propValue);\n break;\n default:\n pushAttribute(target$jscomp$0, propKey, propValue);\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\">\");\n pushInnerHTML(target$jscomp$0, innerHTML, children);\n if (\"string\" === typeof children) {\n target$jscomp$0.push(escapeTextForBrowser(children));\n var JSCompiler_inline_result = null;\n } else JSCompiler_inline_result = children;\n return JSCompiler_inline_result;\n case \"g\":\n case \"p\":\n case \"li\":\n break;\n case \"select\":\n target$jscomp$0.push(startChunkForTag(\"select\"));\n var children$jscomp$0 = null,\n innerHTML$jscomp$0 = null,\n propKey$jscomp$0;\n for (propKey$jscomp$0 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$0)) {\n var propValue$jscomp$0 = props[propKey$jscomp$0];\n if (null != propValue$jscomp$0)\n switch (propKey$jscomp$0) {\n case \"children\":\n children$jscomp$0 = propValue$jscomp$0;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$0 = propValue$jscomp$0;\n break;\n case \"defaultValue\":\n case \"value\":\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$0,\n propValue$jscomp$0\n );\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\">\");\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$0, children$jscomp$0);\n return children$jscomp$0;\n case \"option\":\n var selectedValue = formatContext.selectedValue;\n target$jscomp$0.push(startChunkForTag(\"option\"));\n var children$jscomp$1 = null,\n value = null,\n selected = null,\n innerHTML$jscomp$1 = null,\n propKey$jscomp$1;\n for (propKey$jscomp$1 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$1)) {\n var propValue$jscomp$1 = props[propKey$jscomp$1];\n if (null != propValue$jscomp$1)\n switch (propKey$jscomp$1) {\n case \"children\":\n children$jscomp$1 = propValue$jscomp$1;\n break;\n case \"selected\":\n selected = propValue$jscomp$1;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$1 = propValue$jscomp$1;\n break;\n case \"value\":\n value = propValue$jscomp$1;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$1,\n propValue$jscomp$1\n );\n }\n }\n if (null != selectedValue) {\n var stringValue =\n null !== value\n ? \"\" + value\n : flattenOptionChildren(children$jscomp$1);\n if (isArrayImpl(selectedValue))\n for (var i = 0; i < selectedValue.length; i++) {\n if (\"\" + selectedValue[i] === stringValue) {\n target$jscomp$0.push(' selected=\"\"');\n break;\n }\n }\n else\n \"\" + selectedValue === stringValue &&\n target$jscomp$0.push(' selected=\"\"');\n } else selected && target$jscomp$0.push(' selected=\"\"');\n target$jscomp$0.push(\">\");\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$1, children$jscomp$1);\n return children$jscomp$1;\n case \"textarea\":\n target$jscomp$0.push(startChunkForTag(\"textarea\"));\n var value$jscomp$0 = null,\n defaultValue = null,\n children$jscomp$2 = null,\n propKey$jscomp$2;\n for (propKey$jscomp$2 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$2)) {\n var propValue$jscomp$2 = props[propKey$jscomp$2];\n if (null != propValue$jscomp$2)\n switch (propKey$jscomp$2) {\n case \"children\":\n children$jscomp$2 = propValue$jscomp$2;\n break;\n case \"value\":\n value$jscomp$0 = propValue$jscomp$2;\n break;\n case \"defaultValue\":\n defaultValue = propValue$jscomp$2;\n break;\n case \"dangerouslySetInnerHTML\":\n throw Error(formatProdErrorMessage(91));\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$2,\n propValue$jscomp$2\n );\n }\n }\n null === value$jscomp$0 &&\n null !== defaultValue &&\n (value$jscomp$0 = defaultValue);\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\">\");\n if (null != children$jscomp$2) {\n if (null != value$jscomp$0) throw Error(formatProdErrorMessage(92));\n if (isArrayImpl(children$jscomp$2)) {\n if (1 < children$jscomp$2.length)\n throw Error(formatProdErrorMessage(93));\n value$jscomp$0 = \"\" + children$jscomp$2[0];\n }\n value$jscomp$0 = \"\" + children$jscomp$2;\n }\n \"string\" === typeof value$jscomp$0 &&\n \"\\n\" === value$jscomp$0[0] &&\n target$jscomp$0.push(\"\\n\");\n null !== value$jscomp$0 &&\n target$jscomp$0.push(escapeTextForBrowser(\"\" + value$jscomp$0));\n return null;\n case \"input\":\n target$jscomp$0.push(startChunkForTag(\"input\"));\n var name = null,\n formAction = null,\n formEncType = null,\n formMethod = null,\n formTarget = null,\n value$jscomp$1 = null,\n defaultValue$jscomp$0 = null,\n checked = null,\n defaultChecked = null,\n propKey$jscomp$3;\n for (propKey$jscomp$3 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$3)) {\n var propValue$jscomp$3 = props[propKey$jscomp$3];\n if (null != propValue$jscomp$3)\n switch (propKey$jscomp$3) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(formatProdErrorMessage(399, \"input\"));\n case \"name\":\n name = propValue$jscomp$3;\n break;\n case \"formAction\":\n formAction = propValue$jscomp$3;\n break;\n case \"formEncType\":\n formEncType = propValue$jscomp$3;\n break;\n case \"formMethod\":\n formMethod = propValue$jscomp$3;\n break;\n case \"formTarget\":\n formTarget = propValue$jscomp$3;\n break;\n case \"defaultChecked\":\n defaultChecked = propValue$jscomp$3;\n break;\n case \"defaultValue\":\n defaultValue$jscomp$0 = propValue$jscomp$3;\n break;\n case \"checked\":\n checked = propValue$jscomp$3;\n break;\n case \"value\":\n value$jscomp$1 = propValue$jscomp$3;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$3,\n propValue$jscomp$3\n );\n }\n }\n var formData = pushFormActionAttribute(\n target$jscomp$0,\n resumableState,\n renderState,\n formAction,\n formEncType,\n formMethod,\n formTarget,\n name\n );\n null !== checked\n ? pushBooleanAttribute(target$jscomp$0, \"checked\", checked)\n : null !== defaultChecked &&\n pushBooleanAttribute(target$jscomp$0, \"checked\", defaultChecked);\n null !== value$jscomp$1\n ? pushAttribute(target$jscomp$0, \"value\", value$jscomp$1)\n : null !== defaultValue$jscomp$0 &&\n pushAttribute(target$jscomp$0, \"value\", defaultValue$jscomp$0);\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\"/>\");\n null != formData &&\n formData.forEach(pushAdditionalFormField, target$jscomp$0);\n return null;\n case \"button\":\n target$jscomp$0.push(startChunkForTag(\"button\"));\n var children$jscomp$3 = null,\n innerHTML$jscomp$2 = null,\n name$jscomp$0 = null,\n formAction$jscomp$0 = null,\n formEncType$jscomp$0 = null,\n formMethod$jscomp$0 = null,\n formTarget$jscomp$0 = null,\n propKey$jscomp$4;\n for (propKey$jscomp$4 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$4)) {\n var propValue$jscomp$4 = props[propKey$jscomp$4];\n if (null != propValue$jscomp$4)\n switch (propKey$jscomp$4) {\n case \"children\":\n children$jscomp$3 = propValue$jscomp$4;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$2 = propValue$jscomp$4;\n break;\n case \"name\":\n name$jscomp$0 = propValue$jscomp$4;\n break;\n case \"formAction\":\n formAction$jscomp$0 = propValue$jscomp$4;\n break;\n case \"formEncType\":\n formEncType$jscomp$0 = propValue$jscomp$4;\n break;\n case \"formMethod\":\n formMethod$jscomp$0 = propValue$jscomp$4;\n break;\n case \"formTarget\":\n formTarget$jscomp$0 = propValue$jscomp$4;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$4,\n propValue$jscomp$4\n );\n }\n }\n var formData$jscomp$0 = pushFormActionAttribute(\n target$jscomp$0,\n resumableState,\n renderState,\n formAction$jscomp$0,\n formEncType$jscomp$0,\n formMethod$jscomp$0,\n formTarget$jscomp$0,\n name$jscomp$0\n );\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\">\");\n null != formData$jscomp$0 &&\n formData$jscomp$0.forEach(pushAdditionalFormField, target$jscomp$0);\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$2, children$jscomp$3);\n if (\"string\" === typeof children$jscomp$3) {\n target$jscomp$0.push(escapeTextForBrowser(children$jscomp$3));\n var JSCompiler_inline_result$jscomp$0 = null;\n } else JSCompiler_inline_result$jscomp$0 = children$jscomp$3;\n return JSCompiler_inline_result$jscomp$0;\n case \"form\":\n target$jscomp$0.push(startChunkForTag(\"form\"));\n var children$jscomp$4 = null,\n innerHTML$jscomp$3 = null,\n formAction$jscomp$1 = null,\n formEncType$jscomp$1 = null,\n formMethod$jscomp$1 = null,\n formTarget$jscomp$1 = null,\n propKey$jscomp$5;\n for (propKey$jscomp$5 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$5)) {\n var propValue$jscomp$5 = props[propKey$jscomp$5];\n if (null != propValue$jscomp$5)\n switch (propKey$jscomp$5) {\n case \"children\":\n children$jscomp$4 = propValue$jscomp$5;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$3 = propValue$jscomp$5;\n break;\n case \"action\":\n formAction$jscomp$1 = propValue$jscomp$5;\n break;\n case \"encType\":\n formEncType$jscomp$1 = propValue$jscomp$5;\n break;\n case \"method\":\n formMethod$jscomp$1 = propValue$jscomp$5;\n break;\n case \"target\":\n formTarget$jscomp$1 = propValue$jscomp$5;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$5,\n propValue$jscomp$5\n );\n }\n }\n var formData$jscomp$1 = null,\n formActionName = null;\n if (\"function\" === typeof formAction$jscomp$1) {\n var customFields = getCustomFormFields(\n resumableState,\n formAction$jscomp$1\n );\n null !== customFields\n ? ((formAction$jscomp$1 = customFields.action || \"\"),\n (formEncType$jscomp$1 = customFields.encType),\n (formMethod$jscomp$1 = customFields.method),\n (formTarget$jscomp$1 = customFields.target),\n (formData$jscomp$1 = customFields.data),\n (formActionName = customFields.name))\n : (target$jscomp$0.push(\n \" \",\n \"action\",\n '=\"',\n actionJavaScriptURL,\n '\"'\n ),\n (formTarget$jscomp$1 =\n formMethod$jscomp$1 =\n formEncType$jscomp$1 =\n formAction$jscomp$1 =\n null),\n injectFormReplayingRuntime(resumableState, renderState));\n }\n null != formAction$jscomp$1 &&\n pushAttribute(target$jscomp$0, \"action\", formAction$jscomp$1);\n null != formEncType$jscomp$1 &&\n pushAttribute(target$jscomp$0, \"encType\", formEncType$jscomp$1);\n null != formMethod$jscomp$1 &&\n pushAttribute(target$jscomp$0, \"method\", formMethod$jscomp$1);\n null != formTarget$jscomp$1 &&\n pushAttribute(target$jscomp$0, \"target\", formTarget$jscomp$1);\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\">\");\n null !== formActionName &&\n (target$jscomp$0.push('<input type=\"hidden\"'),\n pushStringAttribute(target$jscomp$0, \"name\", formActionName),\n target$jscomp$0.push(\"/>\"),\n null != formData$jscomp$1 &&\n formData$jscomp$1.forEach(pushAdditionalFormField, target$jscomp$0));\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$3, children$jscomp$4);\n if (\"string\" === typeof children$jscomp$4) {\n target$jscomp$0.push(escapeTextForBrowser(children$jscomp$4));\n var JSCompiler_inline_result$jscomp$1 = null;\n } else JSCompiler_inline_result$jscomp$1 = children$jscomp$4;\n return JSCompiler_inline_result$jscomp$1;\n case \"menuitem\":\n target$jscomp$0.push(startChunkForTag(\"menuitem\"));\n for (var propKey$jscomp$6 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$6)) {\n var propValue$jscomp$6 = props[propKey$jscomp$6];\n if (null != propValue$jscomp$6)\n switch (propKey$jscomp$6) {\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(formatProdErrorMessage(400));\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$6,\n propValue$jscomp$6\n );\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\">\");\n return null;\n case \"object\":\n target$jscomp$0.push(startChunkForTag(\"object\"));\n var children$jscomp$5 = null,\n innerHTML$jscomp$4 = null,\n propKey$jscomp$7;\n for (propKey$jscomp$7 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$7)) {\n var propValue$jscomp$7 = props[propKey$jscomp$7];\n if (null != propValue$jscomp$7)\n switch (propKey$jscomp$7) {\n case \"children\":\n children$jscomp$5 = propValue$jscomp$7;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$4 = propValue$jscomp$7;\n break;\n case \"data\":\n var sanitizedValue = sanitizeURL(\"\" + propValue$jscomp$7);\n if (\"\" === sanitizedValue) break;\n target$jscomp$0.push(\n \" \",\n \"data\",\n '=\"',\n escapeTextForBrowser(sanitizedValue),\n '\"'\n );\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$7,\n propValue$jscomp$7\n );\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\">\");\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$4, children$jscomp$5);\n if (\"string\" === typeof children$jscomp$5) {\n target$jscomp$0.push(escapeTextForBrowser(children$jscomp$5));\n var JSCompiler_inline_result$jscomp$2 = null;\n } else JSCompiler_inline_result$jscomp$2 = children$jscomp$5;\n return JSCompiler_inline_result$jscomp$2;\n case \"title\":\n var noscriptTagInScope = formatContext.tagScope & 1,\n isFallback = formatContext.tagScope & 4;\n if (\n 4 === formatContext.insertionMode ||\n noscriptTagInScope ||\n null != props.itemProp\n )\n var JSCompiler_inline_result$jscomp$3 = pushTitleImpl(\n target$jscomp$0,\n props\n );\n else\n isFallback\n ? (JSCompiler_inline_result$jscomp$3 = null)\n : (pushTitleImpl(renderState.hoistableChunks, props),\n (JSCompiler_inline_result$jscomp$3 = void 0));\n return JSCompiler_inline_result$jscomp$3;\n case \"link\":\n var noscriptTagInScope$jscomp$0 = formatContext.tagScope & 1,\n isFallback$jscomp$0 = formatContext.tagScope & 4,\n rel = props.rel,\n href = props.href,\n precedence = props.precedence;\n if (\n 4 === formatContext.insertionMode ||\n noscriptTagInScope$jscomp$0 ||\n null != props.itemProp ||\n \"string\" !== typeof rel ||\n \"string\" !== typeof href ||\n \"\" === href\n ) {\n pushLinkImpl(target$jscomp$0, props);\n var JSCompiler_inline_result$jscomp$4 = null;\n } else if (\"stylesheet\" === props.rel)\n if (\n \"string\" !== typeof precedence ||\n null != props.disabled ||\n props.onLoad ||\n props.onError\n )\n JSCompiler_inline_result$jscomp$4 = pushLinkImpl(\n target$jscomp$0,\n props\n );\n else {\n var styleQueue = renderState.styles.get(precedence),\n resourceState = resumableState.styleResources.hasOwnProperty(href)\n ? resumableState.styleResources[href]\n : void 0;\n if (null !== resourceState) {\n resumableState.styleResources[href] = null;\n styleQueue ||\n ((styleQueue = {\n precedence: escapeTextForBrowser(precedence),\n rules: [],\n hrefs: [],\n sheets: new Map()\n }),\n renderState.styles.set(precedence, styleQueue));\n var resource = {\n state: 0,\n props: assign({}, props, {\n \"data-precedence\": props.precedence,\n precedence: null\n })\n };\n if (resourceState) {\n 2 === resourceState.length &&\n adoptPreloadCredentials(resource.props, resourceState);\n var preloadResource = renderState.preloads.stylesheets.get(href);\n preloadResource && 0 < preloadResource.length\n ? (preloadResource.length = 0)\n : (resource.state = 1);\n }\n styleQueue.sheets.set(href, resource);\n hoistableState && hoistableState.stylesheets.add(resource);\n } else if (styleQueue) {\n var resource$9 = styleQueue.sheets.get(href);\n resource$9 &&\n hoistableState &&\n hoistableState.stylesheets.add(resource$9);\n }\n textEmbedded && target$jscomp$0.push(\"\\x3c!-- --\\x3e\");\n JSCompiler_inline_result$jscomp$4 = null;\n }\n else\n props.onLoad || props.onError\n ? (JSCompiler_inline_result$jscomp$4 = pushLinkImpl(\n target$jscomp$0,\n props\n ))\n : (textEmbedded && target$jscomp$0.push(\"\\x3c!-- --\\x3e\"),\n (JSCompiler_inline_result$jscomp$4 = isFallback$jscomp$0\n ? null\n : pushLinkImpl(renderState.hoistableChunks, props)));\n return JSCompiler_inline_result$jscomp$4;\n case \"script\":\n var noscriptTagInScope$jscomp$1 = formatContext.tagScope & 1,\n asyncProp = props.async;\n if (\n \"string\" !== typeof props.src ||\n !props.src ||\n !asyncProp ||\n \"function\" === typeof asyncProp ||\n \"symbol\" === typeof asyncProp ||\n props.onLoad ||\n props.onError ||\n 4 === formatContext.insertionMode ||\n noscriptTagInScope$jscomp$1 ||\n null != props.itemProp\n )\n var JSCompiler_inline_result$jscomp$5 = pushScriptImpl(\n target$jscomp$0,\n props\n );\n else {\n var key = props.src;\n if (\"module\" === props.type) {\n var resources = resumableState.moduleScriptResources;\n var preloads = renderState.preloads.moduleScripts;\n } else\n (resources = resumableState.scriptResources),\n (preloads = renderState.preloads.scripts);\n var resourceState$jscomp$0 = resources.hasOwnProperty(key)\n ? resources[key]\n : void 0;\n if (null !== resourceState$jscomp$0) {\n resources[key] = null;\n var scriptProps = props;\n if (resourceState$jscomp$0) {\n 2 === resourceState$jscomp$0.length &&\n ((scriptProps = assign({}, props)),\n adoptPreloadCredentials(scriptProps, resourceState$jscomp$0));\n var preloadResource$jscomp$0 = preloads.get(key);\n preloadResource$jscomp$0 && (preloadResource$jscomp$0.length = 0);\n }\n var resource$jscomp$0 = [];\n renderState.scripts.add(resource$jscomp$0);\n pushScriptImpl(resource$jscomp$0, scriptProps);\n }\n textEmbedded && target$jscomp$0.push(\"\\x3c!-- --\\x3e\");\n JSCompiler_inline_result$jscomp$5 = null;\n }\n return JSCompiler_inline_result$jscomp$5;\n case \"style\":\n var noscriptTagInScope$jscomp$2 = formatContext.tagScope & 1,\n precedence$jscomp$0 = props.precedence,\n href$jscomp$0 = props.href,\n nonce = props.nonce;\n if (\n 4 === formatContext.insertionMode ||\n noscriptTagInScope$jscomp$2 ||\n null != props.itemProp ||\n \"string\" !== typeof precedence$jscomp$0 ||\n \"string\" !== typeof href$jscomp$0 ||\n \"\" === href$jscomp$0\n ) {\n target$jscomp$0.push(startChunkForTag(\"style\"));\n var children$jscomp$6 = null,\n innerHTML$jscomp$5 = null,\n propKey$jscomp$8;\n for (propKey$jscomp$8 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$8)) {\n var propValue$jscomp$8 = props[propKey$jscomp$8];\n if (null != propValue$jscomp$8)\n switch (propKey$jscomp$8) {\n case \"children\":\n children$jscomp$6 = propValue$jscomp$8;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$5 = propValue$jscomp$8;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$8,\n propValue$jscomp$8\n );\n }\n }\n target$jscomp$0.push(\">\");\n var child = Array.isArray(children$jscomp$6)\n ? 2 > children$jscomp$6.length\n ? children$jscomp$6[0]\n : null\n : children$jscomp$6;\n \"function\" !== typeof child &&\n \"symbol\" !== typeof child &&\n null !== child &&\n void 0 !== child &&\n target$jscomp$0.push((\"\" + child).replace(styleRegex, styleReplacer));\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$5, children$jscomp$6);\n target$jscomp$0.push(endChunkForTag(\"style\"));\n var JSCompiler_inline_result$jscomp$6 = null;\n } else {\n var styleQueue$jscomp$0 = renderState.styles.get(precedence$jscomp$0);\n if (\n null !==\n (resumableState.styleResources.hasOwnProperty(href$jscomp$0)\n ? resumableState.styleResources[href$jscomp$0]\n : void 0)\n ) {\n resumableState.styleResources[href$jscomp$0] = null;\n styleQueue$jscomp$0 ||\n ((styleQueue$jscomp$0 = {\n precedence: escapeTextForBrowser(precedence$jscomp$0),\n rules: [],\n hrefs: [],\n sheets: new Map()\n }),\n renderState.styles.set(precedence$jscomp$0, styleQueue$jscomp$0));\n var nonceStyle = renderState.nonce.style;\n if (!nonceStyle || nonceStyle === nonce) {\n styleQueue$jscomp$0.hrefs.push(escapeTextForBrowser(href$jscomp$0));\n var target = styleQueue$jscomp$0.rules,\n children$jscomp$7 = null,\n innerHTML$jscomp$6 = null,\n propKey$jscomp$9;\n for (propKey$jscomp$9 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$9)) {\n var propValue$jscomp$9 = props[propKey$jscomp$9];\n if (null != propValue$jscomp$9)\n switch (propKey$jscomp$9) {\n case \"children\":\n children$jscomp$7 = propValue$jscomp$9;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$6 = propValue$jscomp$9;\n }\n }\n var child$jscomp$0 = Array.isArray(children$jscomp$7)\n ? 2 > children$jscomp$7.length\n ? children$jscomp$7[0]\n : null\n : children$jscomp$7;\n \"function\" !== typeof child$jscomp$0 &&\n \"symbol\" !== typeof child$jscomp$0 &&\n null !== child$jscomp$0 &&\n void 0 !== child$jscomp$0 &&\n target.push(\n (\"\" + child$jscomp$0).replace(styleRegex, styleReplacer)\n );\n pushInnerHTML(target, innerHTML$jscomp$6, children$jscomp$7);\n }\n }\n styleQueue$jscomp$0 &&\n hoistableState &&\n hoistableState.styles.add(styleQueue$jscomp$0);\n textEmbedded && target$jscomp$0.push(\"\\x3c!-- --\\x3e\");\n JSCompiler_inline_result$jscomp$6 = void 0;\n }\n return JSCompiler_inline_result$jscomp$6;\n case \"meta\":\n var noscriptTagInScope$jscomp$3 = formatContext.tagScope & 1,\n isFallback$jscomp$1 = formatContext.tagScope & 4;\n if (\n 4 === formatContext.insertionMode ||\n noscriptTagInScope$jscomp$3 ||\n null != props.itemProp\n )\n var JSCompiler_inline_result$jscomp$7 = pushSelfClosing(\n target$jscomp$0,\n props,\n \"meta\",\n formatContext\n );\n else\n textEmbedded && target$jscomp$0.push(\"\\x3c!-- --\\x3e\"),\n (JSCompiler_inline_result$jscomp$7 = isFallback$jscomp$1\n ? null\n : \"string\" === typeof props.charSet\n ? pushSelfClosing(\n renderState.charsetChunks,\n props,\n \"meta\",\n formatContext\n )\n : \"viewport\" === props.name\n ? pushSelfClosing(\n renderState.viewportChunks,\n props,\n \"meta\",\n formatContext\n )\n : pushSelfClosing(\n renderState.hoistableChunks,\n props,\n \"meta\",\n formatContext\n ));\n return JSCompiler_inline_result$jscomp$7;\n case \"listing\":\n case \"pre\":\n target$jscomp$0.push(startChunkForTag(type));\n var children$jscomp$8 = null,\n innerHTML$jscomp$7 = null,\n propKey$jscomp$10;\n for (propKey$jscomp$10 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$10)) {\n var propValue$jscomp$10 = props[propKey$jscomp$10];\n if (null != propValue$jscomp$10)\n switch (propKey$jscomp$10) {\n case \"children\":\n children$jscomp$8 = propValue$jscomp$10;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$7 = propValue$jscomp$10;\n break;\n default:\n pushAttribute(\n target$jscomp$0,\n propKey$jscomp$10,\n propValue$jscomp$10\n );\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\">\");\n if (null != innerHTML$jscomp$7) {\n if (null != children$jscomp$8) throw Error(formatProdErrorMessage(60));\n if (\n \"object\" !== typeof innerHTML$jscomp$7 ||\n !(\"__html\" in innerHTML$jscomp$7)\n )\n throw Error(formatProdErrorMessage(61));\n var html = innerHTML$jscomp$7.__html;\n null !== html &&\n void 0 !== html &&\n (\"string\" === typeof html && 0 < html.length && \"\\n\" === html[0]\n ? target$jscomp$0.push(\"\\n\", html)\n : target$jscomp$0.push(\"\" + html));\n }\n \"string\" === typeof children$jscomp$8 &&\n \"\\n\" === children$jscomp$8[0] &&\n target$jscomp$0.push(\"\\n\");\n return children$jscomp$8;\n case \"img\":\n var pictureOrNoScriptTagInScope = formatContext.tagScope & 3,\n src = props.src,\n srcSet = props.srcSet;\n if (\n !(\n \"lazy\" === props.loading ||\n (!src && !srcSet) ||\n (\"string\" !== typeof src && null != src) ||\n (\"string\" !== typeof srcSet && null != srcSet) ||\n \"low\" === props.fetchPriority ||\n pictureOrNoScriptTagInScope\n ) &&\n (\"string\" !== typeof src ||\n \":\" !== src[4] ||\n (\"d\" !== src[0] && \"D\" !== src[0]) ||\n (\"a\" !== src[1] && \"A\" !== src[1]) ||\n (\"t\" !== src[2] && \"T\" !== src[2]) ||\n (\"a\" !== src[3] && \"A\" !== src[3])) &&\n (\"string\" !== typeof srcSet ||\n \":\" !== srcSet[4] ||\n (\"d\" !== srcSet[0] && \"D\" !== srcSet[0]) ||\n (\"a\" !== srcSet[1] && \"A\" !== srcSet[1]) ||\n (\"t\" !== srcSet[2] && \"T\" !== srcSet[2]) ||\n (\"a\" !== srcSet[3] && \"A\" !== srcSet[3]))\n ) {\n null !== hoistableState &&\n formatContext.tagScope & 64 &&\n (hoistableState.suspenseyImages = !0);\n var sizes = \"string\" === typeof props.sizes ? props.sizes : void 0,\n key$jscomp$0 = srcSet ? srcSet + \"\\n\" + (sizes || \"\") : src,\n promotablePreloads = renderState.preloads.images,\n resource$jscomp$1 = promotablePreloads.get(key$jscomp$0);\n if (resource$jscomp$1) {\n if (\n \"high\" === props.fetchPriority ||\n 10 > renderState.highImagePreloads.size\n )\n promotablePreloads.delete(key$jscomp$0),\n renderState.highImagePreloads.add(resource$jscomp$1);\n } else if (\n !resumableState.imageResources.hasOwnProperty(key$jscomp$0)\n ) {\n resumableState.imageResources[key$jscomp$0] = PRELOAD_NO_CREDS;\n var input = props.crossOrigin;\n var JSCompiler_inline_result$jscomp$8 =\n \"string\" === typeof input\n ? \"use-credentials\" === input\n ? input\n : \"\"\n : void 0;\n var headers = renderState.headers,\n header;\n headers &&\n 0 < headers.remainingCapacity &&\n \"string\" !== typeof props.srcSet &&\n (\"high\" === props.fetchPriority ||\n 500 > headers.highImagePreloads.length) &&\n ((header = getPreloadAsHeader(src, \"image\", {\n imageSrcSet: props.srcSet,\n imageSizes: props.sizes,\n crossOrigin: JSCompiler_inline_result$jscomp$8,\n integrity: props.integrity,\n nonce: props.nonce,\n type: props.type,\n fetchPriority: props.fetchPriority,\n referrerPolicy: props.referrerPolicy\n })),\n 0 <= (headers.remainingCapacity -= header.length + 2))\n ? ((renderState.resets.image[key$jscomp$0] = PRELOAD_NO_CREDS),\n headers.highImagePreloads && (headers.highImagePreloads += \", \"),\n (headers.highImagePreloads += header))\n : ((resource$jscomp$1 = []),\n pushLinkImpl(resource$jscomp$1, {\n rel: \"preload\",\n as: \"image\",\n href: srcSet ? void 0 : src,\n imageSrcSet: srcSet,\n imageSizes: sizes,\n crossOrigin: JSCompiler_inline_result$jscomp$8,\n integrity: props.integrity,\n type: props.type,\n fetchPriority: props.fetchPriority,\n referrerPolicy: props.referrerPolicy\n }),\n \"high\" === props.fetchPriority ||\n 10 > renderState.highImagePreloads.size\n ? renderState.highImagePreloads.add(resource$jscomp$1)\n : (renderState.bulkPreloads.add(resource$jscomp$1),\n promotablePreloads.set(key$jscomp$0, resource$jscomp$1)));\n }\n }\n return pushSelfClosing(target$jscomp$0, props, \"img\", formatContext);\n case \"base\":\n case \"area\":\n case \"br\":\n case \"col\":\n case \"embed\":\n case \"hr\":\n case \"keygen\":\n case \"param\":\n case \"source\":\n case \"track\":\n case \"wbr\":\n return pushSelfClosing(target$jscomp$0, props, type, formatContext);\n case \"annotation-xml\":\n case \"color-profile\":\n case \"font-face\":\n case \"font-face-src\":\n case \"font-face-uri\":\n case \"font-face-format\":\n case \"font-face-name\":\n case \"missing-glyph\":\n break;\n case \"head\":\n if (2 > formatContext.insertionMode) {\n var preamble = preambleState || renderState.preamble;\n if (preamble.headChunks)\n throw Error(formatProdErrorMessage(545, \"`<head>`\"));\n null !== preambleState && target$jscomp$0.push(\"\\x3c!--head--\\x3e\");\n preamble.headChunks = [];\n var JSCompiler_inline_result$jscomp$9 = pushStartSingletonElement(\n preamble.headChunks,\n props,\n \"head\",\n formatContext\n );\n } else\n JSCompiler_inline_result$jscomp$9 = pushStartGenericElement(\n target$jscomp$0,\n props,\n \"head\",\n formatContext\n );\n return JSCompiler_inline_result$jscomp$9;\n case \"body\":\n if (2 > formatContext.insertionMode) {\n var preamble$jscomp$0 = preambleState || renderState.preamble;\n if (preamble$jscomp$0.bodyChunks)\n throw Error(formatProdErrorMessage(545, \"`<body>`\"));\n null !== preambleState && target$jscomp$0.push(\"\\x3c!--body--\\x3e\");\n preamble$jscomp$0.bodyChunks = [];\n var JSCompiler_inline_result$jscomp$10 = pushStartSingletonElement(\n preamble$jscomp$0.bodyChunks,\n props,\n \"body\",\n formatContext\n );\n } else\n JSCompiler_inline_result$jscomp$10 = pushStartGenericElement(\n target$jscomp$0,\n props,\n \"body\",\n formatContext\n );\n return JSCompiler_inline_result$jscomp$10;\n case \"html\":\n if (0 === formatContext.insertionMode) {\n var preamble$jscomp$1 = preambleState || renderState.preamble;\n if (preamble$jscomp$1.htmlChunks)\n throw Error(formatProdErrorMessage(545, \"`<html>`\"));\n null !== preambleState && target$jscomp$0.push(\"\\x3c!--html--\\x3e\");\n preamble$jscomp$1.htmlChunks = [\"\"];\n var JSCompiler_inline_result$jscomp$11 = pushStartSingletonElement(\n preamble$jscomp$1.htmlChunks,\n props,\n \"html\",\n formatContext\n );\n } else\n JSCompiler_inline_result$jscomp$11 = pushStartGenericElement(\n target$jscomp$0,\n props,\n \"html\",\n formatContext\n );\n return JSCompiler_inline_result$jscomp$11;\n default:\n if (-1 !== type.indexOf(\"-\")) {\n target$jscomp$0.push(startChunkForTag(type));\n var children$jscomp$9 = null,\n innerHTML$jscomp$8 = null,\n propKey$jscomp$11;\n for (propKey$jscomp$11 in props)\n if (hasOwnProperty.call(props, propKey$jscomp$11)) {\n var propValue$jscomp$11 = props[propKey$jscomp$11];\n if (null != propValue$jscomp$11) {\n var attributeName = propKey$jscomp$11;\n switch (propKey$jscomp$11) {\n case \"children\":\n children$jscomp$9 = propValue$jscomp$11;\n break;\n case \"dangerouslySetInnerHTML\":\n innerHTML$jscomp$8 = propValue$jscomp$11;\n break;\n case \"style\":\n pushStyleAttribute(target$jscomp$0, propValue$jscomp$11);\n break;\n case \"suppressContentEditableWarning\":\n case \"suppressHydrationWarning\":\n case \"ref\":\n break;\n case \"className\":\n attributeName = \"class\";\n default:\n if (\n isAttributeNameSafe(propKey$jscomp$11) &&\n \"function\" !== typeof propValue$jscomp$11 &&\n \"symbol\" !== typeof propValue$jscomp$11 &&\n !1 !== propValue$jscomp$11\n ) {\n if (!0 === propValue$jscomp$11) propValue$jscomp$11 = \"\";\n else if (\"object\" === typeof propValue$jscomp$11) continue;\n target$jscomp$0.push(\n \" \",\n attributeName,\n '=\"',\n escapeTextForBrowser(propValue$jscomp$11),\n '\"'\n );\n }\n }\n }\n }\n pushViewTransitionAttributes(target$jscomp$0, formatContext);\n target$jscomp$0.push(\">\");\n pushInnerHTML(target$jscomp$0, innerHTML$jscomp$8, children$jscomp$9);\n return children$jscomp$9;\n }\n }\n return pushStartGenericElement(target$jscomp$0, props, type, formatContext);\n}\nvar endTagCache = new Map();\nfunction endChunkForTag(tag) {\n var chunk = endTagCache.get(tag);\n void 0 === chunk && ((chunk = \"</\" + tag + \">\"), endTagCache.set(tag, chunk));\n return chunk;\n}\nfunction hoistPreambleState(renderState, preambleState) {\n renderState = renderState.preamble;\n null === renderState.htmlChunks &&\n preambleState.htmlChunks &&\n (renderState.htmlChunks = preambleState.htmlChunks);\n null === renderState.headChunks &&\n preambleState.headChunks &&\n (renderState.headChunks = preambleState.headChunks);\n null === renderState.bodyChunks &&\n preambleState.bodyChunks &&\n (renderState.bodyChunks = preambleState.bodyChunks);\n}\nfunction writeBootstrap(destination, renderState) {\n renderState = renderState.bootstrapChunks;\n for (var i = 0; i < renderState.length - 1; i++)\n destination.push(renderState[i]);\n return i < renderState.length\n ? ((i = renderState[i]), (renderState.length = 0), destination.push(i))\n : !0;\n}\nfunction writeStartPendingSuspenseBoundary(destination, renderState, id) {\n destination.push('\\x3c!--$?--\\x3e<template id=\"');\n if (null === id) throw Error(formatProdErrorMessage(395));\n destination.push(renderState.boundaryPrefix);\n renderState = id.toString(16);\n destination.push(renderState);\n return destination.push('\"></template>');\n}\nfunction writeStartSegment(destination, renderState, formatContext, id) {\n switch (formatContext.insertionMode) {\n case 0:\n case 1:\n case 3:\n case 2:\n return (\n destination.push('<div hidden id=\"'),\n destination.push(renderState.segmentPrefix),\n (renderState = id.toString(16)),\n destination.push(renderState),\n destination.push('\">')\n );\n case 4:\n return (\n destination.push('<svg aria-hidden=\"true\" style=\"display:none\" id=\"'),\n destination.push(renderState.segmentPrefix),\n (renderState = id.toString(16)),\n destination.push(renderState),\n destination.push('\">')\n );\n case 5:\n return (\n destination.push('<math aria-hidden=\"true\" style=\"display:none\" id=\"'),\n destination.push(renderState.segmentPrefix),\n (renderState = id.toString(16)),\n destination.push(renderState),\n destination.push('\">')\n );\n case 6:\n return (\n destination.push('<table hidden id=\"'),\n destination.push(renderState.segmentPrefix),\n (renderState = id.toString(16)),\n destination.push(renderState),\n destination.push('\">')\n );\n case 7:\n return (\n destination.push('<table hidden><tbody id=\"'),\n destination.push(renderState.segmentPrefix),\n (renderState = id.toString(16)),\n destination.push(renderState),\n destination.push('\">')\n );\n case 8:\n return (\n destination.push('<table hidden><tr id=\"'),\n destination.push(renderState.segmentPrefix),\n (renderState = id.toString(16)),\n destination.push(renderState),\n destination.push('\">')\n );\n case 9:\n return (\n destination.push('<table hidden><colgroup id=\"'),\n destination.push(renderState.segmentPrefix),\n (renderState = id.toString(16)),\n destination.push(renderState),\n destination.push('\">')\n );\n default:\n throw Error(formatProdErrorMessage(397));\n }\n}\nfunction writeEndSegment(destination, formatContext) {\n switch (formatContext.insertionMode) {\n case 0:\n case 1:\n case 3:\n case 2:\n return destination.push(\"</div>\");\n case 4:\n return destination.push(\"</svg>\");\n case 5:\n return destination.push(\"</math>\");\n case 6:\n return destination.push(\"</table>\");\n case 7:\n return destination.push(\"</tbody></table>\");\n case 8:\n return destination.push(\"</tr></table>\");\n case 9:\n return destination.push(\"</colgroup></table>\");\n default:\n throw Error(formatProdErrorMessage(397));\n }\n}\nvar regexForJSStringsInInstructionScripts = /[<\\u2028\\u2029]/g;\nfunction escapeJSStringsForInstructionScripts(input) {\n return JSON.stringify(input).replace(\n regexForJSStringsInInstructionScripts,\n function (match) {\n switch (match) {\n case \"<\":\n return \"\\\\u003c\";\n case \"\\u2028\":\n return \"\\\\u2028\";\n case \"\\u2029\":\n return \"\\\\u2029\";\n default:\n throw Error(\n \"escapeJSStringsForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\"\n );\n }\n }\n );\n}\nvar regexForJSStringsInScripts = /[&><\\u2028\\u2029]/g;\nfunction escapeJSObjectForInstructionScripts(input) {\n return JSON.stringify(input).replace(\n regexForJSStringsInScripts,\n function (match) {\n switch (match) {\n case \"&\":\n return \"\\\\u0026\";\n case \">\":\n return \"\\\\u003e\";\n case \"<\":\n return \"\\\\u003c\";\n case \"\\u2028\":\n return \"\\\\u2028\";\n case \"\\u2029\":\n return \"\\\\u2029\";\n default:\n throw Error(\n \"escapeJSObjectForInstructionScripts encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\"\n );\n }\n }\n );\n}\nvar currentlyRenderingBoundaryHasStylesToHoist = !1,\n destinationHasCapacity = !0;\nfunction flushStyleTagsLateForBoundary(styleQueue) {\n var rules = styleQueue.rules,\n hrefs = styleQueue.hrefs,\n i = 0;\n if (hrefs.length) {\n this.push(currentlyFlushingRenderState.startInlineStyle);\n this.push(' media=\"not all\" data-precedence=\"');\n this.push(styleQueue.precedence);\n for (this.push('\" data-href=\"'); i < hrefs.length - 1; i++)\n this.push(hrefs[i]), this.push(\" \");\n this.push(hrefs[i]);\n this.push('\">');\n for (i = 0; i < rules.length; i++) this.push(rules[i]);\n destinationHasCapacity = this.push(\"</style>\");\n currentlyRenderingBoundaryHasStylesToHoist = !0;\n rules.length = 0;\n hrefs.length = 0;\n }\n}\nfunction hasStylesToHoist(stylesheet) {\n return 2 !== stylesheet.state\n ? (currentlyRenderingBoundaryHasStylesToHoist = !0)\n : !1;\n}\nfunction writeHoistablesForBoundary(destination, hoistableState, renderState) {\n currentlyRenderingBoundaryHasStylesToHoist = !1;\n destinationHasCapacity = !0;\n currentlyFlushingRenderState = renderState;\n hoistableState.styles.forEach(flushStyleTagsLateForBoundary, destination);\n currentlyFlushingRenderState = null;\n hoistableState.stylesheets.forEach(hasStylesToHoist);\n currentlyRenderingBoundaryHasStylesToHoist &&\n (renderState.stylesToHoist = !0);\n return destinationHasCapacity;\n}\nfunction flushResource(resource) {\n for (var i = 0; i < resource.length; i++) this.push(resource[i]);\n resource.length = 0;\n}\nvar stylesheetFlushingQueue = [];\nfunction flushStyleInPreamble(stylesheet) {\n pushLinkImpl(stylesheetFlushingQueue, stylesheet.props);\n for (var i = 0; i < stylesheetFlushingQueue.length; i++)\n this.push(stylesheetFlushingQueue[i]);\n stylesheetFlushingQueue.length = 0;\n stylesheet.state = 2;\n}\nfunction flushStylesInPreamble(styleQueue) {\n var hasStylesheets = 0 < styleQueue.sheets.size;\n styleQueue.sheets.forEach(flushStyleInPreamble, this);\n styleQueue.sheets.clear();\n var rules = styleQueue.rules,\n hrefs = styleQueue.hrefs;\n if (!hasStylesheets || hrefs.length) {\n this.push(currentlyFlushingRenderState.startInlineStyle);\n this.push(' data-precedence=\"');\n this.push(styleQueue.precedence);\n styleQueue = 0;\n if (hrefs.length) {\n for (\n this.push('\" data-href=\"');\n styleQueue < hrefs.length - 1;\n styleQueue++\n )\n this.push(hrefs[styleQueue]), this.push(\" \");\n this.push(hrefs[styleQueue]);\n }\n this.push('\">');\n for (styleQueue = 0; styleQueue < rules.length; styleQueue++)\n this.push(rules[styleQueue]);\n this.push(\"</style>\");\n rules.length = 0;\n hrefs.length = 0;\n }\n}\nfunction preloadLateStyle(stylesheet) {\n if (0 === stylesheet.state) {\n stylesheet.state = 1;\n var props = stylesheet.props;\n pushLinkImpl(stylesheetFlushingQueue, {\n rel: \"preload\",\n as: \"style\",\n href: stylesheet.props.href,\n crossOrigin: props.crossOrigin,\n fetchPriority: props.fetchPriority,\n integrity: props.integrity,\n media: props.media,\n hrefLang: props.hrefLang,\n referrerPolicy: props.referrerPolicy\n });\n for (\n stylesheet = 0;\n stylesheet < stylesheetFlushingQueue.length;\n stylesheet++\n )\n this.push(stylesheetFlushingQueue[stylesheet]);\n stylesheetFlushingQueue.length = 0;\n }\n}\nfunction preloadLateStyles(styleQueue) {\n styleQueue.sheets.forEach(preloadLateStyle, this);\n styleQueue.sheets.clear();\n}\nfunction pushCompletedShellIdAttribute(target, resumableState) {\n 0 === (resumableState.instructions & 32) &&\n ((resumableState.instructions |= 32),\n target.push(\n ' id=\"',\n escapeTextForBrowser(\"_\" + resumableState.idPrefix + \"R_\"),\n '\"'\n ));\n}\nfunction writeStyleResourceDependenciesInJS(destination, hoistableState) {\n destination.push(\"[\");\n var nextArrayOpenBrackChunk = \"[\";\n hoistableState.stylesheets.forEach(function (resource) {\n if (2 !== resource.state)\n if (3 === resource.state)\n destination.push(nextArrayOpenBrackChunk),\n (resource = escapeJSObjectForInstructionScripts(\n \"\" + resource.props.href\n )),\n destination.push(resource),\n destination.push(\"]\"),\n (nextArrayOpenBrackChunk = \",[\");\n else {\n destination.push(nextArrayOpenBrackChunk);\n var precedence = resource.props[\"data-precedence\"],\n props = resource.props,\n coercedHref = sanitizeURL(\"\" + resource.props.href);\n coercedHref = escapeJSObjectForInstructionScripts(coercedHref);\n destination.push(coercedHref);\n precedence = \"\" + precedence;\n destination.push(\",\");\n precedence = escapeJSObjectForInstructionScripts(precedence);\n destination.push(precedence);\n for (var propKey in props)\n if (\n hasOwnProperty.call(props, propKey) &&\n ((precedence = props[propKey]), null != precedence)\n )\n switch (propKey) {\n case \"href\":\n case \"rel\":\n case \"precedence\":\n case \"data-precedence\":\n break;\n case \"children\":\n case \"dangerouslySetInnerHTML\":\n throw Error(formatProdErrorMessage(399, \"link\"));\n default:\n writeStyleResourceAttributeInJS(\n destination,\n propKey,\n precedence\n );\n }\n destination.push(\"]\");\n nextArrayOpenBrackChunk = \",[\";\n resource.state = 3;\n }\n });\n destination.push(\"]\");\n}\nfunction writeStyleResourceAttributeInJS(destination, name, value) {\n var attributeName = name.toLowerCase();\n switch (typeof value) {\n case \"function\":\n case \"symbol\":\n return;\n }\n switch (name) {\n case \"innerHTML\":\n case \"dangerouslySetInnerHTML\":\n case \"suppressContentEditableWarning\":\n case \"suppressHydrationWarning\":\n case \"style\":\n case \"ref\":\n return;\n case \"className\":\n attributeName = \"class\";\n name = \"\" + value;\n break;\n case \"hidden\":\n if (!1 === value) return;\n name = \"\";\n break;\n case \"src\":\n case \"href\":\n value = sanitizeURL(value);\n name = \"\" + value;\n break;\n default:\n if (\n (2 < name.length &&\n (\"o\" === name[0] || \"O\" === name[0]) &&\n (\"n\" === name[1] || \"N\" === name[1])) ||\n !isAttributeNameSafe(name)\n )\n return;\n name = \"\" + value;\n }\n destination.push(\",\");\n attributeName = escapeJSObjectForInstructionScripts(attributeName);\n destination.push(attributeName);\n destination.push(\",\");\n attributeName = escapeJSObjectForInstructionScripts(name);\n destination.push(attributeName);\n}\nfunction createHoistableState() {\n return { styles: new Set(), stylesheets: new Set(), suspenseyImages: !1 };\n}\nfunction prefetchDNS(href) {\n var request = currentRequest ? currentRequest : null;\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (\"string\" === typeof href && href) {\n if (!resumableState.dnsResources.hasOwnProperty(href)) {\n resumableState.dnsResources[href] = null;\n resumableState = renderState.headers;\n var header, JSCompiler_temp;\n if (\n (JSCompiler_temp =\n resumableState && 0 < resumableState.remainingCapacity)\n )\n JSCompiler_temp =\n ((header =\n \"<\" +\n (\"\" + href).replace(\n regexForHrefInLinkHeaderURLContext,\n escapeHrefForLinkHeaderURLContextReplacer\n ) +\n \">; rel=dns-prefetch\"),\n 0 <= (resumableState.remainingCapacity -= header.length + 2));\n JSCompiler_temp\n ? ((renderState.resets.dns[href] = null),\n resumableState.preconnects && (resumableState.preconnects += \", \"),\n (resumableState.preconnects += header))\n : ((header = []),\n pushLinkImpl(header, { href: href, rel: \"dns-prefetch\" }),\n renderState.preconnects.add(header));\n }\n enqueueFlush(request);\n }\n } else previousDispatcher.D(href);\n}\nfunction preconnect(href, crossOrigin) {\n var request = currentRequest ? currentRequest : null;\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (\"string\" === typeof href && href) {\n var bucket =\n \"use-credentials\" === crossOrigin\n ? \"credentials\"\n : \"string\" === typeof crossOrigin\n ? \"anonymous\"\n : \"default\";\n if (!resumableState.connectResources[bucket].hasOwnProperty(href)) {\n resumableState.connectResources[bucket][href] = null;\n resumableState = renderState.headers;\n var header, JSCompiler_temp;\n if (\n (JSCompiler_temp =\n resumableState && 0 < resumableState.remainingCapacity)\n ) {\n JSCompiler_temp =\n \"<\" +\n (\"\" + href).replace(\n regexForHrefInLinkHeaderURLContext,\n escapeHrefForLinkHeaderURLContextReplacer\n ) +\n \">; rel=preconnect\";\n if (\"string\" === typeof crossOrigin) {\n var escapedCrossOrigin = (\"\" + crossOrigin).replace(\n regexForLinkHeaderQuotedParamValueContext,\n escapeStringForLinkHeaderQuotedParamValueContextReplacer\n );\n JSCompiler_temp += '; crossorigin=\"' + escapedCrossOrigin + '\"';\n }\n JSCompiler_temp =\n ((header = JSCompiler_temp),\n 0 <= (resumableState.remainingCapacity -= header.length + 2));\n }\n JSCompiler_temp\n ? ((renderState.resets.connect[bucket][href] = null),\n resumableState.preconnects && (resumableState.preconnects += \", \"),\n (resumableState.preconnects += header))\n : ((bucket = []),\n pushLinkImpl(bucket, {\n rel: \"preconnect\",\n href: href,\n crossOrigin: crossOrigin\n }),\n renderState.preconnects.add(bucket));\n }\n enqueueFlush(request);\n }\n } else previousDispatcher.C(href, crossOrigin);\n}\nfunction preload(href, as, options) {\n var request = currentRequest ? currentRequest : null;\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (as && href) {\n switch (as) {\n case \"image\":\n if (options) {\n var imageSrcSet = options.imageSrcSet;\n var imageSizes = options.imageSizes;\n var fetchPriority = options.fetchPriority;\n }\n var key = imageSrcSet\n ? imageSrcSet + \"\\n\" + (imageSizes || \"\")\n : href;\n if (resumableState.imageResources.hasOwnProperty(key)) return;\n resumableState.imageResources[key] = PRELOAD_NO_CREDS;\n resumableState = renderState.headers;\n var header;\n resumableState &&\n 0 < resumableState.remainingCapacity &&\n \"string\" !== typeof imageSrcSet &&\n \"high\" === fetchPriority &&\n ((header = getPreloadAsHeader(href, as, options)),\n 0 <= (resumableState.remainingCapacity -= header.length + 2))\n ? ((renderState.resets.image[key] = PRELOAD_NO_CREDS),\n resumableState.highImagePreloads &&\n (resumableState.highImagePreloads += \", \"),\n (resumableState.highImagePreloads += header))\n : ((resumableState = []),\n pushLinkImpl(\n resumableState,\n assign(\n { rel: \"preload\", href: imageSrcSet ? void 0 : href, as: as },\n options\n )\n ),\n \"high\" === fetchPriority\n ? renderState.highImagePreloads.add(resumableState)\n : (renderState.bulkPreloads.add(resumableState),\n renderState.preloads.images.set(key, resumableState)));\n break;\n case \"style\":\n if (resumableState.styleResources.hasOwnProperty(href)) return;\n imageSrcSet = [];\n pushLinkImpl(\n imageSrcSet,\n assign({ rel: \"preload\", href: href, as: as }, options)\n );\n resumableState.styleResources[href] =\n !options ||\n (\"string\" !== typeof options.crossOrigin &&\n \"string\" !== typeof options.integrity)\n ? PRELOAD_NO_CREDS\n : [options.crossOrigin, options.integrity];\n renderState.preloads.stylesheets.set(href, imageSrcSet);\n renderState.bulkPreloads.add(imageSrcSet);\n break;\n case \"script\":\n if (resumableState.scriptResources.hasOwnProperty(href)) return;\n imageSrcSet = [];\n renderState.preloads.scripts.set(href, imageSrcSet);\n renderState.bulkPreloads.add(imageSrcSet);\n pushLinkImpl(\n imageSrcSet,\n assign({ rel: \"preload\", href: href, as: as }, options)\n );\n resumableState.scriptResources[href] =\n !options ||\n (\"string\" !== typeof options.crossOrigin &&\n \"string\" !== typeof options.integrity)\n ? PRELOAD_NO_CREDS\n : [options.crossOrigin, options.integrity];\n break;\n default:\n if (resumableState.unknownResources.hasOwnProperty(as)) {\n if (\n ((imageSrcSet = resumableState.unknownResources[as]),\n imageSrcSet.hasOwnProperty(href))\n )\n return;\n } else\n (imageSrcSet = {}),\n (resumableState.unknownResources[as] = imageSrcSet);\n imageSrcSet[href] = PRELOAD_NO_CREDS;\n if (\n (resumableState = renderState.headers) &&\n 0 < resumableState.remainingCapacity &&\n \"font\" === as &&\n ((key = getPreloadAsHeader(href, as, options)),\n 0 <= (resumableState.remainingCapacity -= key.length + 2))\n )\n (renderState.resets.font[href] = PRELOAD_NO_CREDS),\n resumableState.fontPreloads &&\n (resumableState.fontPreloads += \", \"),\n (resumableState.fontPreloads += key);\n else\n switch (\n ((resumableState = []),\n (href = assign({ rel: \"preload\", href: href, as: as }, options)),\n pushLinkImpl(resumableState, href),\n as)\n ) {\n case \"font\":\n renderState.fontPreloads.add(resumableState);\n break;\n default:\n renderState.bulkPreloads.add(resumableState);\n }\n }\n enqueueFlush(request);\n }\n } else previousDispatcher.L(href, as, options);\n}\nfunction preloadModule(href, options) {\n var request = currentRequest ? currentRequest : null;\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (href) {\n var as =\n options && \"string\" === typeof options.as ? options.as : \"script\";\n switch (as) {\n case \"script\":\n if (resumableState.moduleScriptResources.hasOwnProperty(href)) return;\n as = [];\n resumableState.moduleScriptResources[href] =\n !options ||\n (\"string\" !== typeof options.crossOrigin &&\n \"string\" !== typeof options.integrity)\n ? PRELOAD_NO_CREDS\n : [options.crossOrigin, options.integrity];\n renderState.preloads.moduleScripts.set(href, as);\n break;\n default:\n if (resumableState.moduleUnknownResources.hasOwnProperty(as)) {\n var resources = resumableState.moduleUnknownResources[as];\n if (resources.hasOwnProperty(href)) return;\n } else\n (resources = {}),\n (resumableState.moduleUnknownResources[as] = resources);\n as = [];\n resources[href] = PRELOAD_NO_CREDS;\n }\n pushLinkImpl(as, assign({ rel: \"modulepreload\", href: href }, options));\n renderState.bulkPreloads.add(as);\n enqueueFlush(request);\n }\n } else previousDispatcher.m(href, options);\n}\nfunction preinitStyle(href, precedence, options) {\n var request = currentRequest ? currentRequest : null;\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (href) {\n precedence = precedence || \"default\";\n var styleQueue = renderState.styles.get(precedence),\n resourceState = resumableState.styleResources.hasOwnProperty(href)\n ? resumableState.styleResources[href]\n : void 0;\n null !== resourceState &&\n ((resumableState.styleResources[href] = null),\n styleQueue ||\n ((styleQueue = {\n precedence: escapeTextForBrowser(precedence),\n rules: [],\n hrefs: [],\n sheets: new Map()\n }),\n renderState.styles.set(precedence, styleQueue)),\n (precedence = {\n state: 0,\n props: assign(\n { rel: \"stylesheet\", href: href, \"data-precedence\": precedence },\n options\n )\n }),\n resourceState &&\n (2 === resourceState.length &&\n adoptPreloadCredentials(precedence.props, resourceState),\n (renderState = renderState.preloads.stylesheets.get(href)) &&\n 0 < renderState.length\n ? (renderState.length = 0)\n : (precedence.state = 1)),\n styleQueue.sheets.set(href, precedence),\n enqueueFlush(request));\n }\n } else previousDispatcher.S(href, precedence, options);\n}\nfunction preinitScript(src, options) {\n var request = currentRequest ? currentRequest : null;\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (src) {\n var resourceState = resumableState.scriptResources.hasOwnProperty(src)\n ? resumableState.scriptResources[src]\n : void 0;\n null !== resourceState &&\n ((resumableState.scriptResources[src] = null),\n (options = assign({ src: src, async: !0 }, options)),\n resourceState &&\n (2 === resourceState.length &&\n adoptPreloadCredentials(options, resourceState),\n (src = renderState.preloads.scripts.get(src))) &&\n (src.length = 0),\n (src = []),\n renderState.scripts.add(src),\n pushScriptImpl(src, options),\n enqueueFlush(request));\n }\n } else previousDispatcher.X(src, options);\n}\nfunction preinitModuleScript(src, options) {\n var request = currentRequest ? currentRequest : null;\n if (request) {\n var resumableState = request.resumableState,\n renderState = request.renderState;\n if (src) {\n var resourceState = resumableState.moduleScriptResources.hasOwnProperty(\n src\n )\n ? resumableState.moduleScriptResources[src]\n : void 0;\n null !== resourceState &&\n ((resumableState.moduleScriptResources[src] = null),\n (options = assign({ src: src, type: \"module\", async: !0 }, options)),\n resourceState &&\n (2 === resourceState.length &&\n adoptPreloadCredentials(options, resourceState),\n (src = renderState.preloads.moduleScripts.get(src))) &&\n (src.length = 0),\n (src = []),\n renderState.scripts.add(src),\n pushScriptImpl(src, options),\n enqueueFlush(request));\n }\n } else previousDispatcher.M(src, options);\n}\nfunction adoptPreloadCredentials(target, preloadState) {\n null == target.crossOrigin && (target.crossOrigin = preloadState[0]);\n null == target.integrity && (target.integrity = preloadState[1]);\n}\nfunction getPreloadAsHeader(href, as, params) {\n href = (\"\" + href).replace(\n regexForHrefInLinkHeaderURLContext,\n escapeHrefForLinkHeaderURLContextReplacer\n );\n as = (\"\" + as).replace(\n regexForLinkHeaderQuotedParamValueContext,\n escapeStringForLinkHeaderQuotedParamValueContextReplacer\n );\n as = \"<\" + href + '>; rel=preload; as=\"' + as + '\"';\n for (var paramName in params)\n hasOwnProperty.call(params, paramName) &&\n ((href = params[paramName]),\n \"string\" === typeof href &&\n (as +=\n \"; \" +\n paramName.toLowerCase() +\n '=\"' +\n (\"\" + href).replace(\n regexForLinkHeaderQuotedParamValueContext,\n escapeStringForLinkHeaderQuotedParamValueContextReplacer\n ) +\n '\"'));\n return as;\n}\nvar regexForHrefInLinkHeaderURLContext = /[<>\\r\\n]/g;\nfunction escapeHrefForLinkHeaderURLContextReplacer(match) {\n switch (match) {\n case \"<\":\n return \"%3C\";\n case \">\":\n return \"%3E\";\n case \"\\n\":\n return \"%0A\";\n case \"\\r\":\n return \"%0D\";\n default:\n throw Error(\n \"escapeLinkHrefForHeaderContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\"\n );\n }\n}\nvar regexForLinkHeaderQuotedParamValueContext = /[\"';,\\r\\n]/g;\nfunction escapeStringForLinkHeaderQuotedParamValueContextReplacer(match) {\n switch (match) {\n case '\"':\n return \"%22\";\n case \"'\":\n return \"%27\";\n case \";\":\n return \"%3B\";\n case \",\":\n return \"%2C\";\n case \"\\n\":\n return \"%0A\";\n case \"\\r\":\n return \"%0D\";\n default:\n throw Error(\n \"escapeStringForLinkHeaderQuotedParamValueContextReplacer encountered a match it does not know how to replace. this means the match regex and the replacement characters are no longer in sync. This is a bug in React\"\n );\n }\n}\nfunction hoistStyleQueueDependency(styleQueue) {\n this.styles.add(styleQueue);\n}\nfunction hoistStylesheetDependency(stylesheet) {\n this.stylesheets.add(stylesheet);\n}\nfunction hoistHoistables(parentState, childState) {\n childState.styles.forEach(hoistStyleQueueDependency, parentState);\n childState.stylesheets.forEach(hoistStylesheetDependency, parentState);\n childState.suspenseyImages && (parentState.suspenseyImages = !0);\n}\nfunction createRenderState(resumableState, generateStaticMarkup) {\n var idPrefix = resumableState.idPrefix,\n bootstrapChunks = [],\n bootstrapScriptContent = resumableState.bootstrapScriptContent,\n bootstrapScripts = resumableState.bootstrapScripts,\n bootstrapModules = resumableState.bootstrapModules;\n void 0 !== bootstrapScriptContent &&\n (bootstrapChunks.push(\"<script\"),\n pushCompletedShellIdAttribute(bootstrapChunks, resumableState),\n bootstrapChunks.push(\n \">\",\n (\"\" + bootstrapScriptContent).replace(scriptRegex, scriptReplacer),\n \"\\x3c/script>\"\n ));\n bootstrapScriptContent = idPrefix + \"P:\";\n var JSCompiler_object_inline_segmentPrefix_1724 = idPrefix + \"S:\";\n idPrefix += \"B:\";\n var JSCompiler_object_inline_preconnects_1738 = new Set(),\n JSCompiler_object_inline_fontPreloads_1739 = new Set(),\n JSCompiler_object_inline_highImagePreloads_1740 = new Set(),\n JSCompiler_object_inline_styles_1741 = new Map(),\n JSCompiler_object_inline_bootstrapScripts_1742 = new Set(),\n JSCompiler_object_inline_scripts_1743 = new Set(),\n JSCompiler_object_inline_bulkPreloads_1744 = new Set(),\n JSCompiler_object_inline_preloads_1745 = {\n images: new Map(),\n stylesheets: new Map(),\n scripts: new Map(),\n moduleScripts: new Map()\n };\n if (void 0 !== bootstrapScripts)\n for (var i = 0; i < bootstrapScripts.length; i++) {\n var scriptConfig = bootstrapScripts[i],\n src,\n crossOrigin = void 0,\n integrity = void 0,\n props = {\n rel: \"preload\",\n as: \"script\",\n fetchPriority: \"low\",\n nonce: void 0\n };\n \"string\" === typeof scriptConfig\n ? (props.href = src = scriptConfig)\n : ((props.href = src = scriptConfig.src),\n (props.integrity = integrity =\n \"string\" === typeof scriptConfig.integrity\n ? scriptConfig.integrity\n : void 0),\n (props.crossOrigin = crossOrigin =\n \"string\" === typeof scriptConfig || null == scriptConfig.crossOrigin\n ? void 0\n : \"use-credentials\" === scriptConfig.crossOrigin\n ? \"use-credentials\"\n : \"\"));\n scriptConfig = resumableState;\n var href = src;\n scriptConfig.scriptResources[href] = null;\n scriptConfig.moduleScriptResources[href] = null;\n scriptConfig = [];\n pushLinkImpl(scriptConfig, props);\n JSCompiler_object_inline_bootstrapScripts_1742.add(scriptConfig);\n bootstrapChunks.push('<script src=\"', escapeTextForBrowser(src), '\"');\n \"string\" === typeof integrity &&\n bootstrapChunks.push(\n ' integrity=\"',\n escapeTextForBrowser(integrity),\n '\"'\n );\n \"string\" === typeof crossOrigin &&\n bootstrapChunks.push(\n ' crossorigin=\"',\n escapeTextForBrowser(crossOrigin),\n '\"'\n );\n pushCompletedShellIdAttribute(bootstrapChunks, resumableState);\n bootstrapChunks.push(' async=\"\">\\x3c/script>');\n }\n if (void 0 !== bootstrapModules)\n for (\n bootstrapScripts = 0;\n bootstrapScripts < bootstrapModules.length;\n bootstrapScripts++\n )\n (props = bootstrapModules[bootstrapScripts]),\n (crossOrigin = src = void 0),\n (integrity = {\n rel: \"modulepreload\",\n fetchPriority: \"low\",\n nonce: void 0\n }),\n \"string\" === typeof props\n ? (integrity.href = i = props)\n : ((integrity.href = i = props.src),\n (integrity.integrity = crossOrigin =\n \"string\" === typeof props.integrity ? props.integrity : void 0),\n (integrity.crossOrigin = src =\n \"string\" === typeof props || null == props.crossOrigin\n ? void 0\n : \"use-credentials\" === props.crossOrigin\n ? \"use-credentials\"\n : \"\")),\n (props = resumableState),\n (scriptConfig = i),\n (props.scriptResources[scriptConfig] = null),\n (props.moduleScriptResources[scriptConfig] = null),\n (props = []),\n pushLinkImpl(props, integrity),\n JSCompiler_object_inline_bootstrapScripts_1742.add(props),\n bootstrapChunks.push(\n '<script type=\"module\" src=\"',\n escapeTextForBrowser(i),\n '\"'\n ),\n \"string\" === typeof crossOrigin &&\n bootstrapChunks.push(\n ' integrity=\"',\n escapeTextForBrowser(crossOrigin),\n '\"'\n ),\n \"string\" === typeof src &&\n bootstrapChunks.push(\n ' crossorigin=\"',\n escapeTextForBrowser(src),\n '\"'\n ),\n pushCompletedShellIdAttribute(bootstrapChunks, resumableState),\n bootstrapChunks.push(' async=\"\">\\x3c/script>');\n return {\n placeholderPrefix: bootstrapScriptContent,\n segmentPrefix: JSCompiler_object_inline_segmentPrefix_1724,\n boundaryPrefix: idPrefix,\n startInlineScript: \"<script\",\n startInlineStyle: \"<style\",\n preamble: { htmlChunks: null, headChunks: null, bodyChunks: null },\n externalRuntimeScript: null,\n bootstrapChunks: bootstrapChunks,\n importMapChunks: [],\n onHeaders: void 0,\n headers: null,\n resets: {\n font: {},\n dns: {},\n connect: { default: {}, anonymous: {}, credentials: {} },\n image: {},\n style: {}\n },\n charsetChunks: [],\n viewportChunks: [],\n hoistableChunks: [],\n preconnects: JSCompiler_object_inline_preconnects_1738,\n fontPreloads: JSCompiler_object_inline_fontPreloads_1739,\n highImagePreloads: JSCompiler_object_inline_highImagePreloads_1740,\n styles: JSCompiler_object_inline_styles_1741,\n bootstrapScripts: JSCompiler_object_inline_bootstrapScripts_1742,\n scripts: JSCompiler_object_inline_scripts_1743,\n bulkPreloads: JSCompiler_object_inline_bulkPreloads_1744,\n preloads: JSCompiler_object_inline_preloads_1745,\n nonce: { script: void 0, style: void 0 },\n stylesToHoist: !1,\n generateStaticMarkup: generateStaticMarkup\n };\n}\nfunction pushTextInstance(target, text, renderState, textEmbedded) {\n if (renderState.generateStaticMarkup)\n return target.push(escapeTextForBrowser(text)), !1;\n \"\" === text\n ? (target = textEmbedded)\n : (textEmbedded && target.push(\"\\x3c!-- --\\x3e\"),\n target.push(escapeTextForBrowser(text)),\n (target = !0));\n return target;\n}\nfunction pushSegmentFinale(target, renderState, lastPushedText, textEmbedded) {\n renderState.generateStaticMarkup ||\n (lastPushedText && textEmbedded && target.push(\"\\x3c!-- --\\x3e\"));\n}\nvar bind = Function.prototype.bind,\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\");\nfunction getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n case REACT_VIEW_TRANSITION_TYPE:\n return \"ViewTransition\";\n }\n if (\"object\" === typeof type)\n switch (type.$$typeof) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return type.displayName || \"Context\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n}\nvar emptyContextObject = {},\n currentActiveSnapshot = null;\nfunction popToNearestCommonAncestor(prev, next) {\n if (prev !== next) {\n prev.context._currentValue2 = prev.parentValue;\n prev = prev.parent;\n var parentNext = next.parent;\n if (null === prev) {\n if (null !== parentNext) throw Error(formatProdErrorMessage(401));\n } else {\n if (null === parentNext) throw Error(formatProdErrorMessage(401));\n popToNearestCommonAncestor(prev, parentNext);\n }\n next.context._currentValue2 = next.value;\n }\n}\nfunction popAllPrevious(prev) {\n prev.context._currentValue2 = prev.parentValue;\n prev = prev.parent;\n null !== prev && popAllPrevious(prev);\n}\nfunction pushAllNext(next) {\n var parentNext = next.parent;\n null !== parentNext && pushAllNext(parentNext);\n next.context._currentValue2 = next.value;\n}\nfunction popPreviousToCommonLevel(prev, next) {\n prev.context._currentValue2 = prev.parentValue;\n prev = prev.parent;\n if (null === prev) throw Error(formatProdErrorMessage(402));\n prev.depth === next.depth\n ? popToNearestCommonAncestor(prev, next)\n : popPreviousToCommonLevel(prev, next);\n}\nfunction popNextToCommonLevel(prev, next) {\n var parentNext = next.parent;\n if (null === parentNext) throw Error(formatProdErrorMessage(402));\n prev.depth === parentNext.depth\n ? popToNearestCommonAncestor(prev, parentNext)\n : popNextToCommonLevel(prev, parentNext);\n next.context._currentValue2 = next.value;\n}\nfunction switchContext(newSnapshot) {\n var prev = currentActiveSnapshot;\n prev !== newSnapshot &&\n (null === prev\n ? pushAllNext(newSnapshot)\n : null === newSnapshot\n ? popAllPrevious(prev)\n : prev.depth === newSnapshot.depth\n ? popToNearestCommonAncestor(prev, newSnapshot)\n : prev.depth > newSnapshot.depth\n ? popPreviousToCommonLevel(prev, newSnapshot)\n : popNextToCommonLevel(prev, newSnapshot),\n (currentActiveSnapshot = newSnapshot));\n}\nvar classComponentUpdater = {\n enqueueSetState: function (inst, payload) {\n inst = inst._reactInternals;\n null !== inst.queue && inst.queue.push(payload);\n },\n enqueueReplaceState: function (inst, payload) {\n inst = inst._reactInternals;\n inst.replace = !0;\n inst.queue = [payload];\n },\n enqueueForceUpdate: function () {}\n },\n emptyTreeContext = { id: 1, overflow: \"\" };\nfunction getTreeId(context) {\n var overflow = context.overflow;\n context = context.id;\n return (context & ~(1 << (32 - clz32(context) - 1))).toString(32) + overflow;\n}\nfunction pushTreeContext(baseContext, totalChildren, index) {\n var baseIdWithLeadingBit = baseContext.id;\n baseContext = baseContext.overflow;\n var baseLength = 32 - clz32(baseIdWithLeadingBit) - 1;\n baseIdWithLeadingBit &= ~(1 << baseLength);\n index += 1;\n var length = 32 - clz32(totalChildren) + baseLength;\n if (30 < length) {\n var numberOfOverflowBits = baseLength - (baseLength % 5);\n length = (\n baseIdWithLeadingBit &\n ((1 << numberOfOverflowBits) - 1)\n ).toString(32);\n baseIdWithLeadingBit >>= numberOfOverflowBits;\n baseLength -= numberOfOverflowBits;\n return {\n id:\n (1 << (32 - clz32(totalChildren) + baseLength)) |\n (index << baseLength) |\n baseIdWithLeadingBit,\n overflow: length + baseContext\n };\n }\n return {\n id: (1 << length) | (index << baseLength) | baseIdWithLeadingBit,\n overflow: baseContext\n };\n}\nvar clz32 = Math.clz32 ? Math.clz32 : clz32Fallback,\n log = Math.log,\n LN2 = Math.LN2;\nfunction clz32Fallback(x) {\n x >>>= 0;\n return 0 === x ? 32 : (31 - ((log(x) / LN2) | 0)) | 0;\n}\nfunction noop() {}\nvar SuspenseException = Error(formatProdErrorMessage(460));\nfunction trackUsedThenable(thenableState, thenable, index) {\n index = thenableState[index];\n void 0 === index\n ? thenableState.push(thenable)\n : index !== thenable && (thenable.then(noop, noop), (thenable = index));\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n thenableState = thenable.reason;\n if (void 0 === thenableState && !(\"reason\" in thenable))\n throw Error(formatProdErrorMessage(600));\n throw thenableState;\n default:\n \"string\" === typeof thenable.status\n ? thenable.then(noop, noop)\n : ((thenableState = thenable),\n (thenableState.status = \"pending\"),\n thenableState.then(\n function (fulfilledValue) {\n if (\"pending\" === thenable.status) {\n var fulfilledThenable = thenable;\n fulfilledThenable.status = \"fulfilled\";\n fulfilledThenable.value = fulfilledValue;\n }\n },\n function (error) {\n if (\"pending\" === thenable.status) {\n var rejectedThenable = thenable;\n rejectedThenable.status = \"rejected\";\n rejectedThenable.reason = error;\n }\n }\n ));\n switch (thenable.status) {\n case \"fulfilled\":\n return thenable.value;\n case \"rejected\":\n throw thenable.reason;\n }\n suspendedThenable = thenable;\n throw SuspenseException;\n }\n}\nvar suspendedThenable = null;\nfunction getSuspendedThenable() {\n if (null === suspendedThenable) throw Error(formatProdErrorMessage(459));\n var thenable = suspendedThenable;\n suspendedThenable = null;\n return thenable;\n}\nfunction is(x, y) {\n return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);\n}\nvar objectIs = \"function\" === typeof Object.is ? Object.is : is,\n currentlyRenderingComponent = null,\n currentlyRenderingTask = null,\n currentlyRenderingRequest = null,\n currentlyRenderingKeyPath = null,\n firstWorkInProgressHook = null,\n workInProgressHook = null,\n isReRender = !1,\n didScheduleRenderPhaseUpdate = !1,\n localIdCounter = 0,\n actionStateCounter = 0,\n actionStateMatchingIndex = -1,\n thenableIndexCounter = 0,\n thenableState = null;\nfunction createRecoverableError(recoverable) {\n recoverable = recoverable._reason;\n if (\"function\" === typeof recoverable)\n try {\n var initializedReason = recoverable();\n } catch ($jscomp$unused$catch) {\n initializedReason =\n \"The reason for browser-only rendering could not be determined because its initializer threw.\";\n }\n else initializedReason = recoverable;\n initializedReason = Error(\n formatProdErrorMessage(603),\n void 0 === recoverable ? void 0 : { cause: initializedReason }\n );\n Object.defineProperty(initializedReason, REACT_RECOVERABLE_TYPE, {\n value: !0\n });\n return initializedReason;\n}\nfunction isRecoverableError(error) {\n return \"object\" !== typeof error || null === error\n ? !1\n : !0 === error[REACT_RECOVERABLE_TYPE];\n}\nfunction cloneRecoverableErrorAsFatal(recoverableError) {\n var fatalRecoverableError = Error(\n formatProdErrorMessage(604),\n hasOwnProperty.call(recoverableError, \"cause\")\n ? { cause: recoverableError.cause }\n : void 0\n );\n recoverableError = recoverableError.stack;\n if (void 0 !== recoverableError) {\n var frameStart = recoverableError.indexOf(\"\\n\");\n fatalRecoverableError.stack =\n fatalRecoverableError.name +\n \": \" +\n fatalRecoverableError.message +\n (-1 === frameStart ? \"\" : recoverableError.slice(frameStart));\n } else fatalRecoverableError.stack = void 0;\n return fatalRecoverableError;\n}\nvar renderPhaseUpdates = null,\n numberOfReRenders = 0;\nfunction resolveCurrentlyRenderingComponent() {\n if (null === currentlyRenderingComponent)\n throw Error(formatProdErrorMessage(321));\n return currentlyRenderingComponent;\n}\nfunction createHook() {\n if (0 < numberOfReRenders) throw Error(formatProdErrorMessage(312));\n return { memoizedState: null, queue: null, next: null };\n}\nfunction createWorkInProgressHook() {\n null === workInProgressHook\n ? null === firstWorkInProgressHook\n ? ((isReRender = !1),\n (firstWorkInProgressHook = workInProgressHook = createHook()))\n : ((isReRender = !0), (workInProgressHook = firstWorkInProgressHook))\n : null === workInProgressHook.next\n ? ((isReRender = !1),\n (workInProgressHook = workInProgressHook.next = createHook()))\n : ((isReRender = !0), (workInProgressHook = workInProgressHook.next));\n return workInProgressHook;\n}\nfunction getThenableStateAfterSuspending() {\n var state = thenableState;\n thenableState = null;\n return state;\n}\nfunction resetHooksState() {\n currentlyRenderingKeyPath =\n currentlyRenderingRequest =\n currentlyRenderingTask =\n currentlyRenderingComponent =\n null;\n didScheduleRenderPhaseUpdate = !1;\n firstWorkInProgressHook = null;\n numberOfReRenders = 0;\n workInProgressHook = renderPhaseUpdates = null;\n}\nfunction basicStateReducer(state, action) {\n return \"function\" === typeof action ? action(state) : action;\n}\nfunction useReducer(reducer, initialArg, init) {\n currentlyRenderingComponent = resolveCurrentlyRenderingComponent();\n workInProgressHook = createWorkInProgressHook();\n if (isReRender) {\n var queue = workInProgressHook.queue;\n initialArg = queue.dispatch;\n if (\n null !== renderPhaseUpdates &&\n ((init = renderPhaseUpdates.get(queue)), void 0 !== init)\n ) {\n renderPhaseUpdates.delete(queue);\n queue = workInProgressHook.memoizedState;\n do (queue = reducer(queue, init.action)), (init = init.next);\n while (null !== init);\n workInProgressHook.memoizedState = queue;\n return [queue, initialArg];\n }\n return [workInProgressHook.memoizedState, initialArg];\n }\n reducer =\n reducer === basicStateReducer\n ? \"function\" === typeof initialArg\n ? initialArg()\n : initialArg\n : void 0 !== init\n ? init(initialArg)\n : initialArg;\n workInProgressHook.memoizedState = reducer;\n reducer = workInProgressHook.queue = { last: null, dispatch: null };\n reducer = reducer.dispatch = dispatchAction.bind(\n null,\n currentlyRenderingComponent,\n reducer\n );\n return [workInProgressHook.memoizedState, reducer];\n}\nfunction useMemo(nextCreate, deps) {\n currentlyRenderingComponent = resolveCurrentlyRenderingComponent();\n workInProgressHook = createWorkInProgressHook();\n deps = void 0 === deps ? null : deps;\n if (null !== workInProgressHook) {\n var prevState = workInProgressHook.memoizedState;\n if (null !== prevState && null !== deps) {\n var prevDeps = prevState[1];\n a: if (null === prevDeps) prevDeps = !1;\n else {\n for (var i = 0; i < prevDeps.length && i < deps.length; i++)\n if (!objectIs(deps[i], prevDeps[i])) {\n prevDeps = !1;\n break a;\n }\n prevDeps = !0;\n }\n if (prevDeps) return prevState[0];\n }\n }\n nextCreate = nextCreate();\n workInProgressHook.memoizedState = [nextCreate, deps];\n return nextCreate;\n}\nfunction dispatchAction(componentIdentity, queue, action) {\n if (25 <= numberOfReRenders) throw Error(formatProdErrorMessage(301));\n if (componentIdentity === currentlyRenderingComponent)\n if (\n ((didScheduleRenderPhaseUpdate = !0),\n (componentIdentity = { action: action, next: null }),\n null === renderPhaseUpdates && (renderPhaseUpdates = new Map()),\n (action = renderPhaseUpdates.get(queue)),\n void 0 === action)\n )\n renderPhaseUpdates.set(queue, componentIdentity);\n else {\n for (queue = action; null !== queue.next; ) queue = queue.next;\n queue.next = componentIdentity;\n }\n}\nfunction throwOnUseEffectEventCall() {\n throw Error(formatProdErrorMessage(440));\n}\nfunction unsupportedStartTransition() {\n throw Error(formatProdErrorMessage(394));\n}\nfunction unsupportedSetOptimisticState() {\n throw Error(formatProdErrorMessage(479));\n}\nfunction useActionState(action, initialState, permalink) {\n resolveCurrentlyRenderingComponent();\n var actionStateHookIndex = actionStateCounter++,\n request = currentlyRenderingRequest;\n if (\"function\" === typeof action.$$FORM_ACTION) {\n var nextPostbackStateKey = null,\n componentKeyPath = currentlyRenderingKeyPath;\n request = request.formState;\n var isSignatureEqual = action.$$IS_SIGNATURE_EQUAL;\n if (null !== request && \"function\" === typeof isSignatureEqual) {\n var postbackKey = request[1];\n isSignatureEqual.call(action, request[2], request[3]) &&\n ((nextPostbackStateKey =\n void 0 !== permalink\n ? \"p\" + permalink\n : \"k\" +\n murmurhash3_32_gc(\n JSON.stringify([componentKeyPath, null, actionStateHookIndex]),\n 0\n )),\n postbackKey === nextPostbackStateKey &&\n ((actionStateMatchingIndex = actionStateHookIndex),\n (initialState = request[0])));\n }\n var boundAction = action.bind(null, initialState);\n action = function (payload) {\n boundAction(payload);\n };\n \"function\" === typeof boundAction.$$FORM_ACTION &&\n (action.$$FORM_ACTION = function (prefix) {\n prefix = boundAction.$$FORM_ACTION(prefix);\n void 0 !== permalink &&\n ((permalink += \"\"), (prefix.action = permalink));\n var formData = prefix.data;\n formData &&\n (null === nextPostbackStateKey &&\n (nextPostbackStateKey =\n void 0 !== permalink\n ? \"p\" + permalink\n : \"k\" +\n murmurhash3_32_gc(\n JSON.stringify([\n componentKeyPath,\n null,\n actionStateHookIndex\n ]),\n 0\n )),\n formData.append(\"$ACTION_KEY\", nextPostbackStateKey));\n return prefix;\n });\n return [initialState, action, !1];\n }\n var boundAction$22 = action.bind(null, initialState);\n return [\n initialState,\n function (payload) {\n boundAction$22(payload);\n },\n !1\n ];\n}\nfunction unwrapThenable(thenable) {\n var index = thenableIndexCounter;\n thenableIndexCounter += 1;\n null === thenableState && (thenableState = []);\n return trackUsedThenable(thenableState, thenable, index);\n}\nfunction unsupportedRefresh() {\n throw Error(formatProdErrorMessage(393));\n}\nvar HooksDispatcher = {\n readContext: function (context) {\n return context._currentValue2;\n },\n use: function (usable) {\n if (null !== usable && \"object\" === typeof usable) {\n if (\"function\" === typeof usable.then) return unwrapThenable(usable);\n if (usable.$$typeof === REACT_RECOVERABLE_TYPE)\n throw createRecoverableError(usable);\n if (usable.$$typeof === REACT_CONTEXT_TYPE)\n return usable._currentValue2;\n }\n throw Error(formatProdErrorMessage(438, String(usable)));\n },\n useContext: function (context) {\n resolveCurrentlyRenderingComponent();\n return context._currentValue2;\n },\n useMemo: useMemo,\n useReducer: useReducer,\n useRef: function (initialValue) {\n currentlyRenderingComponent = resolveCurrentlyRenderingComponent();\n workInProgressHook = createWorkInProgressHook();\n var previousRef = workInProgressHook.memoizedState;\n return null === previousRef\n ? ((initialValue = { current: initialValue }),\n (workInProgressHook.memoizedState = initialValue))\n : previousRef;\n },\n useState: function (initialState) {\n return useReducer(basicStateReducer, initialState);\n },\n useInsertionEffect: noop,\n useLayoutEffect: noop,\n useCallback: function (callback, deps) {\n return useMemo(function () {\n return callback;\n }, deps);\n },\n useImperativeHandle: noop,\n useEffect: noop,\n useDebugValue: noop,\n useDeferredValue: function (value, initialValue) {\n resolveCurrentlyRenderingComponent();\n return void 0 !== initialValue ? initialValue : value;\n },\n useTransition: function () {\n resolveCurrentlyRenderingComponent();\n return [!1, unsupportedStartTransition];\n },\n useId: function () {\n var treeId = getTreeId(currentlyRenderingTask.treeContext),\n resumableState = currentResumableState;\n if (null === resumableState) throw Error(formatProdErrorMessage(404));\n var localId = localIdCounter++;\n return makeId(resumableState, treeId, localId);\n },\n useSyncExternalStore: function (subscribe, getSnapshot, getServerSnapshot) {\n if (void 0 === getServerSnapshot)\n throw Error(formatProdErrorMessage(407));\n return getServerSnapshot();\n },\n useOptimistic: function (passthrough) {\n resolveCurrentlyRenderingComponent();\n return [passthrough, unsupportedSetOptimisticState];\n },\n useActionState: useActionState,\n useFormState: useActionState,\n useHostTransitionStatus: function () {\n resolveCurrentlyRenderingComponent();\n return sharedNotPendingObject;\n },\n useMemoCache: function (size) {\n for (var data = Array(size), i = 0; i < size; i++)\n data[i] = REACT_MEMO_CACHE_SENTINEL;\n return data;\n },\n useCacheRefresh: function () {\n return unsupportedRefresh;\n },\n useEffectEvent: function () {\n return throwOnUseEffectEventCall;\n }\n },\n currentResumableState = null,\n DefaultAsyncDispatcher = {\n getCacheForType: function () {\n throw Error(formatProdErrorMessage(248));\n },\n cacheSignal: function () {\n throw Error(formatProdErrorMessage(248));\n }\n },\n prefix,\n suffix;\nfunction describeBuiltInComponentFrame(name) {\n if (void 0 === prefix)\n try {\n throw Error();\n } catch (x) {\n var match = x.stack.trim().match(/\\n( *(at )?)/);\n prefix = (match && match[1]) || \"\";\n suffix =\n -1 < x.stack.indexOf(\"\\n at\")\n ? \" (<anonymous>)\"\n : -1 < x.stack.indexOf(\"@\")\n ? \"@unknown:0:0\"\n : \"\";\n }\n return \"\\n\" + prefix + name + suffix;\n}\nvar reentry = !1;\nfunction describeNativeComponentFrame(fn, construct) {\n if (!fn || reentry) return \"\";\n reentry = !0;\n var previousPrepareStackTrace = Error.prepareStackTrace;\n Error.prepareStackTrace = void 0;\n try {\n var RunInRootFrame = {\n DetermineComponentFrameRoot: function () {\n try {\n if (construct) {\n var Fake = function () {\n throw Error();\n };\n Object.defineProperty(Fake.prototype, \"props\", {\n set: function () {\n throw Error();\n }\n });\n if (\"object\" === typeof Reflect && Reflect.construct) {\n try {\n Reflect.construct(Fake, []);\n } catch (x) {\n var control = x;\n }\n Reflect.construct(fn, [], Fake);\n } else {\n try {\n Fake.call();\n } catch (x$24) {\n control = x$24;\n }\n Fake = !1;\n try {\n var prevProps = Object.getOwnPropertyDescriptor(\n fn.prototype,\n \"props\"\n );\n Object.defineProperty(fn.prototype, \"props\", {\n configurable: !0,\n set: function () {\n throw Error();\n }\n });\n Fake = !0;\n new fn();\n } finally {\n Fake &&\n (void 0 !== prevProps\n ? Object.defineProperty(fn.prototype, \"props\", prevProps)\n : delete fn.prototype.props);\n }\n }\n } else {\n try {\n throw Error();\n } catch (x$25) {\n control = x$25;\n }\n (Fake = fn()) &&\n \"function\" === typeof Fake.catch &&\n Fake.catch(function () {});\n }\n } catch (sample) {\n if (sample && control && \"string\" === typeof sample.stack)\n return [sample.stack, control.stack];\n }\n return [null, null];\n }\n };\n RunInRootFrame.DetermineComponentFrameRoot.displayName =\n \"DetermineComponentFrameRoot\";\n var namePropDescriptor = Object.getOwnPropertyDescriptor(\n RunInRootFrame.DetermineComponentFrameRoot,\n \"name\"\n );\n namePropDescriptor &&\n namePropDescriptor.configurable &&\n Object.defineProperty(\n RunInRootFrame.DetermineComponentFrameRoot,\n \"name\",\n { value: \"DetermineComponentFrameRoot\" }\n );\n var _RunInRootFrame$Deter = RunInRootFrame.DetermineComponentFrameRoot(),\n sampleStack = _RunInRootFrame$Deter[0],\n controlStack = _RunInRootFrame$Deter[1];\n if (sampleStack && controlStack) {\n var sampleLines = sampleStack.split(\"\\n\"),\n controlLines = controlStack.split(\"\\n\");\n for (\n namePropDescriptor = RunInRootFrame = 0;\n RunInRootFrame < sampleLines.length &&\n !sampleLines[RunInRootFrame].includes(\"DetermineComponentFrameRoot\");\n\n )\n RunInRootFrame++;\n for (\n ;\n namePropDescriptor < controlLines.length &&\n !controlLines[namePropDescriptor].includes(\n \"DetermineComponentFrameRoot\"\n );\n\n )\n namePropDescriptor++;\n if (\n RunInRootFrame === sampleLines.length ||\n namePropDescriptor === controlLines.length\n )\n for (\n RunInRootFrame = sampleLines.length - 1,\n namePropDescriptor = controlLines.length - 1;\n 1 <= RunInRootFrame &&\n 0 <= namePropDescriptor &&\n sampleLines[RunInRootFrame] !== controlLines[namePropDescriptor];\n\n )\n namePropDescriptor--;\n for (\n ;\n 1 <= RunInRootFrame && 0 <= namePropDescriptor;\n RunInRootFrame--, namePropDescriptor--\n )\n if (sampleLines[RunInRootFrame] !== controlLines[namePropDescriptor]) {\n if (1 !== RunInRootFrame || 1 !== namePropDescriptor) {\n do\n if (\n (RunInRootFrame--,\n namePropDescriptor--,\n 0 > namePropDescriptor ||\n sampleLines[RunInRootFrame] !==\n controlLines[namePropDescriptor])\n ) {\n var frame =\n \"\\n\" +\n sampleLines[RunInRootFrame].replace(\" at new \", \" at \");\n fn.displayName &&\n frame.includes(\"<anonymous>\") &&\n (frame = frame.replace(\"<anonymous>\", fn.displayName));\n return frame;\n }\n while (1 <= RunInRootFrame && 0 <= namePropDescriptor);\n }\n break;\n }\n }\n } finally {\n (reentry = !1), (Error.prepareStackTrace = previousPrepareStackTrace);\n }\n return (previousPrepareStackTrace = fn ? fn.displayName || fn.name : \"\")\n ? describeBuiltInComponentFrame(previousPrepareStackTrace)\n : \"\";\n}\nfunction describeComponentStackByType(type) {\n if (\"string\" === typeof type) return describeBuiltInComponentFrame(type);\n if (\"function\" === typeof type)\n return type.prototype && type.prototype.isReactComponent\n ? describeNativeComponentFrame(type, !0)\n : describeNativeComponentFrame(type, !1);\n if (\"object\" === typeof type && null !== type) {\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n return describeNativeComponentFrame(type.render, !1);\n case REACT_MEMO_TYPE:\n return describeNativeComponentFrame(type.type, !1);\n case REACT_LAZY_TYPE:\n var lazyComponent = type,\n payload = lazyComponent._payload;\n lazyComponent = lazyComponent._init;\n try {\n type = lazyComponent(payload);\n } catch (x) {\n return describeBuiltInComponentFrame(\"Lazy\");\n }\n return describeComponentStackByType(type);\n }\n if (\"string\" === typeof type.name) {\n a: {\n payload = type.name;\n lazyComponent = type.env;\n var location = type.debugLocation;\n if (\n null != location &&\n ((type = Error.prepareStackTrace),\n (Error.prepareStackTrace = void 0),\n (location = location.stack),\n (Error.prepareStackTrace = type),\n location.startsWith(\"Error: react-stack-top-frame\\n\") &&\n (location = location.slice(29)),\n (type = location.indexOf(\"\\n\")),\n -1 !== type && (location = location.slice(type + 1)),\n (type = location.indexOf(\"react_stack_bottom_frame\")),\n -1 !== type && (type = location.lastIndexOf(\"\\n\", type)),\n (type = -1 !== type ? (location = location.slice(0, type)) : \"\"),\n (location = type.lastIndexOf(\"\\n\")),\n (type = -1 === location ? type : type.slice(location + 1)),\n -1 !== type.indexOf(payload))\n ) {\n payload = \"\\n\" + type;\n break a;\n }\n payload = describeBuiltInComponentFrame(\n payload + (lazyComponent ? \" [\" + lazyComponent + \"]\" : \"\")\n );\n }\n return payload;\n }\n }\n switch (type) {\n case REACT_SUSPENSE_LIST_TYPE:\n return describeBuiltInComponentFrame(\"SuspenseList\");\n case REACT_SUSPENSE_TYPE:\n return describeBuiltInComponentFrame(\"Suspense\");\n case REACT_VIEW_TRANSITION_TYPE:\n return describeBuiltInComponentFrame(\"ViewTransition\");\n }\n return \"\";\n}\nfunction isEligibleForOutlining(request, boundary) {\n return (\n (500 < boundary.byteSize || boundary.defer) && null === boundary.preamble\n );\n}\nfunction defaultErrorHandler(error) {\n if (\n \"object\" === typeof error &&\n null !== error &&\n \"string\" === typeof error.environmentName\n ) {\n var JSCompiler_inline_result = error.environmentName;\n error = [error].slice(0);\n \"string\" === typeof error[0]\n ? error.splice(\n 0,\n 1,\n \"[%s] \" + error[0],\n \" \" + JSCompiler_inline_result + \" \"\n )\n : error.splice(0, 0, \"[%s]\", \" \" + JSCompiler_inline_result + \" \");\n error.unshift(console);\n JSCompiler_inline_result = bind.apply(console.error, error);\n JSCompiler_inline_result();\n } else console.error(error);\n return null;\n}\nfunction RequestInstance(\n resumableState,\n renderState,\n rootFormatContext,\n progressiveChunkSize,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError,\n formState\n) {\n var abortSet = new Set();\n this.destination = null;\n this.flushScheduled = !1;\n this.resumableState = resumableState;\n this.renderState = renderState;\n this.rootFormatContext = rootFormatContext;\n this.progressiveChunkSize =\n void 0 === progressiveChunkSize ? 12800 : progressiveChunkSize;\n this.status = 10;\n this.fatalError = null;\n this.aborted = !1;\n this.pendingRootTasks = this.allPendingTasks = this.nextSegmentId = 0;\n this.completedPreambleSegments = this.completedRootSegment = null;\n this.byteSize = 0;\n this.abortableTasks = abortSet;\n this.pingedTasks = [];\n this.currentTask = null;\n this.clientRenderedBoundaries = [];\n this.completedBoundaries = [];\n this.partialBoundaries = [];\n this.postponedState = this.trackedPostpones = null;\n this.onError = void 0 === onError ? defaultErrorHandler : onError;\n this.onBrowserBailout = void 0 === onBrowserBailout ? noop : onBrowserBailout;\n this.onAllReady = void 0 === onAllReady ? noop : onAllReady;\n this.onShellReady = void 0 === onShellReady ? noop : onShellReady;\n this.onShellError = void 0 === onShellError ? noop : onShellError;\n this.onFatalError = void 0 === onFatalError ? noop : onFatalError;\n this.renderLifetimeController = null;\n this.formState = void 0 === formState ? null : formState;\n}\nfunction createRequest(\n children,\n resumableState,\n renderState,\n rootFormatContext,\n progressiveChunkSize,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError,\n formState\n) {\n resumableState = new RequestInstance(\n resumableState,\n renderState,\n rootFormatContext,\n progressiveChunkSize,\n onError,\n onBrowserBailout,\n onAllReady,\n onShellReady,\n onShellError,\n onFatalError,\n formState\n );\n renderState = createPendingSegment(\n resumableState,\n 0,\n null,\n rootFormatContext,\n !1,\n !1\n );\n renderState.parentFlushed = !0;\n children = createRenderTask(\n resumableState,\n null,\n children,\n -1,\n null,\n renderState,\n null,\n null,\n resumableState.abortableTasks,\n null,\n rootFormatContext,\n null,\n emptyTreeContext,\n null,\n null\n );\n pushComponentStack(children);\n resumableState.pingedTasks.push(children);\n return resumableState;\n}\nvar currentRequest = null;\nfunction pingTask(request, task) {\n request.pingedTasks.push(task);\n 1 === request.pingedTasks.length &&\n ((request.flushScheduled = null !== request.destination),\n performWork(request));\n}\nfunction createSuspenseBoundary(\n request,\n row,\n fallbackAbortableTasks,\n preamble,\n defer\n) {\n fallbackAbortableTasks = {\n status: 0,\n rootSegmentID: -1,\n parentFlushed: !1,\n pendingTasks: 0,\n row: row,\n completedSegments: [],\n byteSize: 0,\n defer: defer,\n fallbackAbortableTasks: fallbackAbortableTasks,\n errorDigest: null,\n contentState: createHoistableState(),\n fallbackState: createHoistableState(),\n preamble: preamble,\n tracked: null\n };\n null !== row &&\n (row.pendingTasks++,\n (preamble = row.boundaries),\n null !== preamble &&\n (request.allPendingTasks++,\n fallbackAbortableTasks.pendingTasks++,\n preamble.push(fallbackAbortableTasks)),\n (request = row.inheritedHoistables),\n null !== request &&\n hoistHoistables(fallbackAbortableTasks.contentState, request));\n return fallbackAbortableTasks;\n}\nfunction createRenderTask(\n request,\n thenableState,\n node,\n childIndex,\n blockedBoundary,\n blockedSegment,\n blockedPreamble,\n hoistableState,\n abortSet,\n keyPath,\n formatContext,\n context,\n treeContext,\n row,\n componentStack\n) {\n request.allPendingTasks++;\n null === blockedBoundary\n ? request.pendingRootTasks++\n : blockedBoundary.pendingTasks++;\n null !== row && row.pendingTasks++;\n var task = {\n replay: null,\n node: node,\n childIndex: childIndex,\n ping: {\n resolve: function () {\n return pingTask(request, task);\n },\n reject: function (error) {\n request.aborted\n ? task.abortSet.delete(task) &&\n finishAbortedTask(task, request, error)\n : pingTask(request, task);\n }\n },\n blockedBoundary: blockedBoundary,\n blockedSegment: blockedSegment,\n blockedPreamble: blockedPreamble,\n hoistableState: hoistableState,\n abortSet: abortSet,\n keyPath: keyPath,\n formatContext: formatContext,\n context: context,\n treeContext: treeContext,\n row: row,\n componentStack: componentStack,\n thenableState: thenableState\n };\n abortSet.add(task);\n return task;\n}\nfunction createReplayTask(\n request,\n thenableState,\n replay,\n node,\n childIndex,\n blockedBoundary,\n hoistableState,\n abortSet,\n keyPath,\n formatContext,\n context,\n treeContext,\n row,\n componentStack\n) {\n request.allPendingTasks++;\n null === blockedBoundary\n ? request.pendingRootTasks++\n : blockedBoundary.pendingTasks++;\n null !== row && row.pendingTasks++;\n replay.pendingTasks++;\n var task = {\n replay: replay,\n node: node,\n childIndex: childIndex,\n ping: {\n resolve: function () {\n return pingTask(request, task);\n },\n reject: function (error) {\n request.aborted\n ? task.abortSet.delete(task) &&\n finishAbortedTask(task, request, error)\n : pingTask(request, task);\n }\n },\n blockedBoundary: blockedBoundary,\n blockedSegment: null,\n blockedPreamble: null,\n hoistableState: hoistableState,\n abortSet: abortSet,\n keyPath: keyPath,\n formatContext: formatContext,\n context: context,\n treeContext: treeContext,\n row: row,\n componentStack: componentStack,\n thenableState: thenableState\n };\n abortSet.add(task);\n return task;\n}\nfunction createPendingSegment(\n request,\n index,\n boundary,\n parentFormatContext,\n lastPushedText,\n textEmbedded\n) {\n return {\n status: 0,\n parentFlushed: !1,\n id: -1,\n index: index,\n chunks: [],\n children: [],\n preambleChildren: [],\n parentFormatContext: parentFormatContext,\n boundary: boundary,\n lastPushedText: lastPushedText,\n textEmbedded: textEmbedded\n };\n}\nfunction pushComponentStack(task) {\n var node = task.node;\n if (\"object\" === typeof node && null !== node)\n switch (node.$$typeof) {\n case REACT_ELEMENT_TYPE:\n task.componentStack = { parent: task.componentStack, type: node.type };\n }\n}\nfunction replaceSuspenseComponentStackWithSuspenseFallbackStack(\n componentStack\n) {\n return null === componentStack\n ? null\n : { parent: componentStack.parent, type: \"Suspense Fallback\" };\n}\nfunction getThrownInfo(node$jscomp$0) {\n var errorInfo = {};\n node$jscomp$0 &&\n Object.defineProperty(errorInfo, \"componentStack\", {\n configurable: !0,\n enumerable: !0,\n get: function () {\n try {\n var info = \"\",\n node = node$jscomp$0;\n do\n (info += describeComponentStackByType(node.type)),\n (node = node.parent);\n while (node);\n var JSCompiler_inline_result = info;\n } catch (x) {\n JSCompiler_inline_result =\n \"\\nError generating stack: \" + x.message + \"\\n\" + x.stack;\n }\n Object.defineProperty(errorInfo, \"componentStack\", {\n value: JSCompiler_inline_result\n });\n return JSCompiler_inline_result;\n }\n });\n return errorInfo;\n}\nfunction logRecoverableError(request, error, errorInfo) {\n if (isRecoverableError(error))\n return (request = request.onBrowserBailout), request(error, errorInfo), \"\";\n request = request.onError;\n error = request(error, errorInfo);\n if (null == error || \"string\" === typeof error)\n return \"\" === error ? void 0 : error;\n}\nfunction fatalError(request, error) {\n var onShellError = request.onShellError,\n onFatalError = request.onFatalError;\n 0 !== request.pendingRootTasks && onShellError(error);\n onFatalError(error);\n endRenderLifetime(request);\n null !== request.destination\n ? ((request.status = 13), request.destination.destroy(error))\n : ((request.status = 12), request.aborted || (request.fatalError = error));\n}\nfunction finishSuspenseListRow(request, row) {\n unblockSuspenseListRow(request, row.next, row.hoistables);\n}\nfunction unblockSuspenseListRow(request, unblockedRow, inheritedHoistables) {\n for (; null !== unblockedRow; ) {\n null !== inheritedHoistables &&\n (hoistHoistables(unblockedRow.hoistables, inheritedHoistables),\n (unblockedRow.inheritedHoistables = inheritedHoistables));\n var unblockedBoundaries = unblockedRow.boundaries;\n if (null !== unblockedBoundaries) {\n unblockedRow.boundaries = null;\n for (var i = 0; i < unblockedBoundaries.length; i++) {\n var unblockedBoundary = unblockedBoundaries[i];\n null !== inheritedHoistables &&\n hoistHoistables(unblockedBoundary.contentState, inheritedHoistables);\n finishedTask(request, unblockedBoundary, null, null);\n }\n }\n unblockedRow.pendingTasks--;\n if (0 < unblockedRow.pendingTasks) break;\n inheritedHoistables = unblockedRow.hoistables;\n unblockedRow = unblockedRow.next;\n }\n}\nfunction tryToResolveTogetherRow(request, togetherRow) {\n var boundaries = togetherRow.boundaries;\n if (null !== boundaries && togetherRow.pendingTasks === boundaries.length) {\n for (var allCompleteAndInlinable = !0, i = 0; i < boundaries.length; i++) {\n var rowBoundary = boundaries[i];\n if (\n 1 !== rowBoundary.pendingTasks ||\n rowBoundary.parentFlushed ||\n isEligibleForOutlining(request, rowBoundary)\n ) {\n allCompleteAndInlinable = !1;\n break;\n }\n }\n allCompleteAndInlinable &&\n unblockSuspenseListRow(request, togetherRow, togetherRow.hoistables);\n }\n}\nfunction createSuspenseListRow(previousRow) {\n var newRow = {\n pendingTasks: 1,\n boundaries: null,\n hoistables: createHoistableState(),\n inheritedHoistables: null,\n together: !1,\n next: null\n };\n null !== previousRow &&\n 0 < previousRow.pendingTasks &&\n (newRow.pendingTasks++,\n (newRow.boundaries = []),\n (previousRow.next = newRow));\n return newRow;\n}\nfunction renderSuspenseListRows(request, task, keyPath, rows, revealOrder) {\n var prevKeyPath = task.keyPath,\n prevTreeContext = task.treeContext,\n prevRow = task.row;\n task.keyPath = keyPath;\n keyPath = rows.length;\n var previousSuspenseListRow = null;\n if (null !== task.replay) {\n var resumeSlots = task.replay.slots;\n if (null !== resumeSlots && \"object\" === typeof resumeSlots)\n for (var n = 0; n < keyPath; n++) {\n var i =\n \"backwards\" !== revealOrder &&\n \"unstable_legacy-backwards\" !== revealOrder\n ? n\n : keyPath - 1 - n,\n node = rows[i];\n task.row = previousSuspenseListRow = createSuspenseListRow(\n previousSuspenseListRow\n );\n task.treeContext = pushTreeContext(prevTreeContext, keyPath, i);\n var resumeSegmentID = resumeSlots[i];\n \"number\" === typeof resumeSegmentID\n ? (resumeNode(request, task, resumeSegmentID, node, i),\n delete resumeSlots[i])\n : renderNode(request, task, node, i);\n 0 === --previousSuspenseListRow.pendingTasks &&\n finishSuspenseListRow(request, previousSuspenseListRow);\n }\n else\n for (resumeSlots = 0; resumeSlots < keyPath; resumeSlots++)\n (n =\n \"backwards\" !== revealOrder &&\n \"unstable_legacy-backwards\" !== revealOrder\n ? resumeSlots\n : keyPath - 1 - resumeSlots),\n (i = rows[n]),\n (task.row = previousSuspenseListRow =\n createSuspenseListRow(previousSuspenseListRow)),\n (task.treeContext = pushTreeContext(prevTreeContext, keyPath, n)),\n renderNode(request, task, i, n),\n 0 === --previousSuspenseListRow.pendingTasks &&\n finishSuspenseListRow(request, previousSuspenseListRow);\n } else if (\n \"backwards\" !== revealOrder &&\n \"unstable_legacy-backwards\" !== revealOrder\n )\n for (revealOrder = 0; revealOrder < keyPath; revealOrder++)\n (resumeSlots = rows[revealOrder]),\n (task.row = previousSuspenseListRow =\n createSuspenseListRow(previousSuspenseListRow)),\n (task.treeContext = pushTreeContext(\n prevTreeContext,\n keyPath,\n revealOrder\n )),\n renderNode(request, task, resumeSlots, revealOrder),\n 0 === --previousSuspenseListRow.pendingTasks &&\n finishSuspenseListRow(request, previousSuspenseListRow);\n else {\n resumeSlots = task.blockedSegment;\n n = resumeSlots.children.length;\n i = resumeSlots.chunks.length;\n for (node = 0; node < keyPath; node++) {\n resumeSegmentID =\n \"unstable_legacy-backwards\" === revealOrder ? keyPath - 1 - node : node;\n var node$39 = rows[resumeSegmentID];\n task.row = previousSuspenseListRow = createSuspenseListRow(\n previousSuspenseListRow\n );\n task.treeContext = pushTreeContext(\n prevTreeContext,\n keyPath,\n resumeSegmentID\n );\n var newSegment = createPendingSegment(\n request,\n i,\n null,\n task.formatContext,\n 0 === resumeSegmentID ? resumeSlots.lastPushedText : !0,\n !0\n );\n resumeSlots.children.splice(n, 0, newSegment);\n task.blockedSegment = newSegment;\n try {\n renderNode(request, task, node$39, resumeSegmentID),\n pushSegmentFinale(\n newSegment.chunks,\n request.renderState,\n newSegment.lastPushedText,\n newSegment.textEmbedded\n ),\n (newSegment.status = 1),\n 0 === --previousSuspenseListRow.pendingTasks &&\n finishSuspenseListRow(request, previousSuspenseListRow);\n } catch (thrownValue) {\n throw ((newSegment.status = request.aborted ? 3 : 4), thrownValue);\n }\n }\n task.blockedSegment = resumeSlots;\n resumeSlots.lastPushedText = !1;\n }\n null !== prevRow &&\n null !== previousSuspenseListRow &&\n 0 < previousSuspenseListRow.pendingTasks &&\n (prevRow.pendingTasks++, (previousSuspenseListRow.next = prevRow));\n task.treeContext = prevTreeContext;\n task.row = prevRow;\n task.keyPath = prevKeyPath;\n}\nfunction renderWithHooks(request, task, keyPath, Component, props, secondArg) {\n var prevThenableState = task.thenableState;\n task.thenableState = null;\n currentlyRenderingComponent = {};\n currentlyRenderingTask = task;\n currentlyRenderingRequest = request;\n currentlyRenderingKeyPath = keyPath;\n actionStateCounter = localIdCounter = 0;\n actionStateMatchingIndex = -1;\n thenableIndexCounter = 0;\n thenableState = prevThenableState;\n for (request = Component(props, secondArg); didScheduleRenderPhaseUpdate; )\n (didScheduleRenderPhaseUpdate = !1),\n (actionStateCounter = localIdCounter = 0),\n (actionStateMatchingIndex = -1),\n (thenableIndexCounter = 0),\n (numberOfReRenders += 1),\n (workInProgressHook = null),\n (request = Component(props, secondArg));\n resetHooksState();\n return request;\n}\nfunction finishFunctionComponent(\n request,\n task,\n keyPath,\n children,\n hasId,\n actionStateCount,\n actionStateMatchingIndex\n) {\n var didEmitActionStateMarkers = !1;\n if (0 !== actionStateCount && null !== request.formState) {\n var segment = task.blockedSegment;\n if (null !== segment) {\n didEmitActionStateMarkers = !0;\n segment = segment.chunks;\n for (var i = 0; i < actionStateCount; i++)\n i === actionStateMatchingIndex\n ? segment.push(\"\\x3c!--F!--\\x3e\")\n : segment.push(\"\\x3c!--F--\\x3e\");\n }\n }\n actionStateCount = task.keyPath;\n task.keyPath = keyPath;\n hasId\n ? ((keyPath = task.treeContext),\n (task.treeContext = pushTreeContext(keyPath, 1, 0)),\n renderNode(request, task, children, -1),\n (task.treeContext = keyPath))\n : didEmitActionStateMarkers\n ? renderNode(request, task, children, -1)\n : renderNodeDestructive(request, task, children, -1);\n task.keyPath = actionStateCount;\n}\nfunction renderElement(request, task, keyPath, type, props, ref) {\n if (\"function\" === typeof type)\n if (type.prototype && type.prototype.isReactComponent) {\n var newProps = props;\n if (\"ref\" in props) {\n newProps = {};\n for (var propName in props)\n \"ref\" !== propName && (newProps[propName] = props[propName]);\n }\n var defaultProps = type.defaultProps;\n if (defaultProps) {\n newProps === props && (newProps = assign({}, newProps, props));\n for (var propName$44 in defaultProps)\n void 0 === newProps[propName$44] &&\n (newProps[propName$44] = defaultProps[propName$44]);\n }\n var JSCompiler_inline_result = newProps;\n var context = emptyContextObject,\n contextType = type.contextType;\n \"object\" === typeof contextType &&\n null !== contextType &&\n (context = contextType._currentValue2);\n var JSCompiler_inline_result$jscomp$0 = new type(\n JSCompiler_inline_result,\n context\n );\n var initialState =\n void 0 !== JSCompiler_inline_result$jscomp$0.state\n ? JSCompiler_inline_result$jscomp$0.state\n : null;\n JSCompiler_inline_result$jscomp$0.updater = classComponentUpdater;\n JSCompiler_inline_result$jscomp$0.props = JSCompiler_inline_result;\n JSCompiler_inline_result$jscomp$0.state = initialState;\n var internalInstance = { queue: [], replace: !1 };\n JSCompiler_inline_result$jscomp$0._reactInternals = internalInstance;\n var contextType$jscomp$0 = type.contextType;\n JSCompiler_inline_result$jscomp$0.context =\n \"object\" === typeof contextType$jscomp$0 &&\n null !== contextType$jscomp$0\n ? contextType$jscomp$0._currentValue2\n : emptyContextObject;\n var getDerivedStateFromProps = type.getDerivedStateFromProps;\n if (\"function\" === typeof getDerivedStateFromProps) {\n var partialState = getDerivedStateFromProps(\n JSCompiler_inline_result,\n initialState\n );\n var JSCompiler_inline_result$jscomp$1 =\n null === partialState || void 0 === partialState\n ? initialState\n : assign({}, initialState, partialState);\n JSCompiler_inline_result$jscomp$0.state =\n JSCompiler_inline_result$jscomp$1;\n }\n if (\n \"function\" !== typeof type.getDerivedStateFromProps &&\n \"function\" !==\n typeof JSCompiler_inline_result$jscomp$0.getSnapshotBeforeUpdate &&\n (\"function\" ===\n typeof JSCompiler_inline_result$jscomp$0.UNSAFE_componentWillMount ||\n \"function\" ===\n typeof JSCompiler_inline_result$jscomp$0.componentWillMount)\n ) {\n var oldState = JSCompiler_inline_result$jscomp$0.state;\n \"function\" ===\n typeof JSCompiler_inline_result$jscomp$0.componentWillMount &&\n JSCompiler_inline_result$jscomp$0.componentWillMount();\n \"function\" ===\n typeof JSCompiler_inline_result$jscomp$0.UNSAFE_componentWillMount &&\n JSCompiler_inline_result$jscomp$0.UNSAFE_componentWillMount();\n oldState !== JSCompiler_inline_result$jscomp$0.state &&\n classComponentUpdater.enqueueReplaceState(\n JSCompiler_inline_result$jscomp$0,\n JSCompiler_inline_result$jscomp$0.state,\n null\n );\n if (\n null !== internalInstance.queue &&\n 0 < internalInstance.queue.length\n ) {\n var oldQueue = internalInstance.queue,\n oldReplace = internalInstance.replace;\n internalInstance.queue = null;\n internalInstance.replace = !1;\n if (oldReplace && 1 === oldQueue.length)\n JSCompiler_inline_result$jscomp$0.state = oldQueue[0];\n else {\n for (\n var nextState = oldReplace\n ? oldQueue[0]\n : JSCompiler_inline_result$jscomp$0.state,\n dontMutate = !0,\n i = oldReplace ? 1 : 0;\n i < oldQueue.length;\n i++\n ) {\n var partial = oldQueue[i],\n partialState$jscomp$0 =\n \"function\" === typeof partial\n ? partial.call(\n JSCompiler_inline_result$jscomp$0,\n nextState,\n JSCompiler_inline_result,\n void 0\n )\n : partial;\n null != partialState$jscomp$0 &&\n (dontMutate\n ? ((dontMutate = !1),\n (nextState = assign({}, nextState, partialState$jscomp$0)))\n : assign(nextState, partialState$jscomp$0));\n }\n JSCompiler_inline_result$jscomp$0.state = nextState;\n }\n } else internalInstance.queue = null;\n }\n var nextChildren = JSCompiler_inline_result$jscomp$0.render();\n if (request.aborted) throw null;\n var prevKeyPath = task.keyPath;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, nextChildren, -1);\n task.keyPath = prevKeyPath;\n } else {\n var value = renderWithHooks(request, task, keyPath, type, props, void 0);\n if (request.aborted) throw null;\n finishFunctionComponent(\n request,\n task,\n keyPath,\n value,\n 0 !== localIdCounter,\n actionStateCounter,\n actionStateMatchingIndex\n );\n }\n else if (\"string\" === typeof type) {\n var segment = task.blockedSegment;\n if (null === segment) {\n var children = props.children,\n prevContext = task.formatContext,\n prevKeyPath$jscomp$0 = task.keyPath;\n task.formatContext = getChildFormatContext(prevContext, type, props);\n task.keyPath = keyPath;\n renderNode(request, task, children, -1);\n task.formatContext = prevContext;\n task.keyPath = prevKeyPath$jscomp$0;\n } else {\n var children$41 = pushStartInstance(\n segment.chunks,\n type,\n props,\n request.resumableState,\n request.renderState,\n task.blockedPreamble,\n task.hoistableState,\n task.formatContext,\n segment.lastPushedText\n );\n segment.lastPushedText = !1;\n var prevContext$42 = task.formatContext,\n prevKeyPath$43 = task.keyPath;\n task.keyPath = keyPath;\n if (\n 3 ===\n (task.formatContext = getChildFormatContext(\n prevContext$42,\n type,\n props\n )).insertionMode\n ) {\n var preambleSegment = createPendingSegment(\n request,\n 0,\n null,\n task.formatContext,\n !1,\n !1\n );\n segment.preambleChildren.push(preambleSegment);\n task.blockedSegment = preambleSegment;\n try {\n renderNode(request, task, children$41, -1),\n pushSegmentFinale(\n preambleSegment.chunks,\n request.renderState,\n preambleSegment.lastPushedText,\n preambleSegment.textEmbedded\n ),\n (preambleSegment.status = 1);\n } finally {\n task.blockedSegment = segment;\n }\n } else renderNode(request, task, children$41, -1);\n task.formatContext = prevContext$42;\n task.keyPath = prevKeyPath$43;\n a: {\n var target = segment.chunks,\n resumableState = request.resumableState;\n switch (type) {\n case \"title\":\n case \"style\":\n case \"script\":\n case \"area\":\n case \"base\":\n case \"br\":\n case \"col\":\n case \"embed\":\n case \"hr\":\n case \"img\":\n case \"input\":\n case \"keygen\":\n case \"link\":\n case \"meta\":\n case \"param\":\n case \"source\":\n case \"track\":\n case \"wbr\":\n break a;\n case \"body\":\n if (1 >= prevContext$42.insertionMode) {\n resumableState.hasBody = !0;\n break a;\n }\n break;\n case \"html\":\n if (0 === prevContext$42.insertionMode) {\n resumableState.hasHtml = !0;\n break a;\n }\n break;\n case \"head\":\n if (1 >= prevContext$42.insertionMode) break a;\n }\n target.push(endChunkForTag(type));\n }\n segment.lastPushedText = !1;\n }\n } else {\n switch (type) {\n case REACT_LEGACY_HIDDEN_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_FRAGMENT_TYPE:\n var prevKeyPath$jscomp$1 = task.keyPath;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, props.children, -1);\n task.keyPath = prevKeyPath$jscomp$1;\n return;\n case REACT_ACTIVITY_TYPE:\n var segment$jscomp$0 = task.blockedSegment;\n if (null === segment$jscomp$0) {\n if (\"hidden\" !== props.mode) {\n var prevKeyPath$jscomp$2 = task.keyPath;\n task.keyPath = keyPath;\n renderNode(request, task, props.children, -1);\n task.keyPath = prevKeyPath$jscomp$2;\n }\n } else if (\"hidden\" !== props.mode) {\n request.renderState.generateStaticMarkup ||\n segment$jscomp$0.chunks.push(\"\\x3c!--&--\\x3e\");\n segment$jscomp$0.lastPushedText = !1;\n var prevKeyPath$46 = task.keyPath;\n task.keyPath = keyPath;\n renderNode(request, task, props.children, -1);\n task.keyPath = prevKeyPath$46;\n request.renderState.generateStaticMarkup ||\n segment$jscomp$0.chunks.push(\"\\x3c!--/&--\\x3e\");\n segment$jscomp$0.lastPushedText = !1;\n }\n return;\n case REACT_SUSPENSE_LIST_TYPE:\n a: {\n var children$jscomp$0 = props.children,\n revealOrder = props.revealOrder;\n if (\"independent\" !== revealOrder && \"together\" !== revealOrder) {\n if (isArrayImpl(children$jscomp$0)) {\n renderSuspenseListRows(\n request,\n task,\n keyPath,\n children$jscomp$0,\n revealOrder\n );\n break a;\n }\n var iteratorFn = getIteratorFn(children$jscomp$0);\n if (iteratorFn) {\n var iterator = iteratorFn.call(children$jscomp$0);\n if (iterator) {\n var step = iterator.next();\n if (!step.done) {\n do step = iterator.next();\n while (!step.done);\n renderSuspenseListRows(\n request,\n task,\n keyPath,\n children$jscomp$0,\n revealOrder\n );\n }\n break a;\n }\n }\n }\n if (\"together\" === revealOrder) {\n var prevKeyPath$40 = task.keyPath,\n prevRow = task.row,\n newRow = (task.row = createSuspenseListRow(null));\n newRow.boundaries = [];\n newRow.together = !0;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, children$jscomp$0, -1);\n 0 === --newRow.pendingTasks &&\n finishSuspenseListRow(request, newRow);\n task.keyPath = prevKeyPath$40;\n task.row = prevRow;\n null !== prevRow &&\n 0 < newRow.pendingTasks &&\n (prevRow.pendingTasks++, (newRow.next = prevRow));\n } else {\n var prevKeyPath$jscomp$3 = task.keyPath;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, children$jscomp$0, -1);\n task.keyPath = prevKeyPath$jscomp$3;\n }\n }\n return;\n case REACT_VIEW_TRANSITION_TYPE:\n var prevContext$jscomp$0 = task.formatContext,\n prevKeyPath$jscomp$4 = task.keyPath;\n var resumableState$jscomp$0 = request.resumableState;\n if (null == props.name || \"auto\" === props.name) {\n var treeId = getTreeId(task.treeContext);\n makeId(resumableState$jscomp$0, treeId, 0);\n }\n task.formatContext = prevContext$jscomp$0;\n task.keyPath = keyPath;\n if (null != props.name && \"auto\" !== props.name)\n renderNodeDestructive(request, task, props.children, -1);\n else {\n var prevTreeContext = task.treeContext;\n task.treeContext = pushTreeContext(prevTreeContext, 1, 0);\n renderNode(request, task, props.children, -1);\n task.treeContext = prevTreeContext;\n }\n task.formatContext = prevContext$jscomp$0;\n task.keyPath = prevKeyPath$jscomp$4;\n return;\n case REACT_SCOPE_TYPE:\n throw Error(formatProdErrorMessage(343));\n case REACT_SUSPENSE_TYPE:\n a: if (null !== task.replay) {\n var prevKeyPath$26 = task.keyPath,\n prevContext$27 = task.formatContext,\n prevRow$28 = task.row;\n task.keyPath = keyPath;\n task.formatContext = getSuspenseContentFormatContext(\n request.resumableState,\n prevContext$27\n );\n task.row = null;\n var content$29 = props.children;\n try {\n renderNode(request, task, content$29, -1);\n } finally {\n (task.keyPath = prevKeyPath$26),\n (task.formatContext = prevContext$27),\n (task.row = prevRow$28);\n }\n } else {\n var prevKeyPath$jscomp$5 = task.keyPath,\n prevContext$jscomp$1 = task.formatContext,\n prevRow$jscomp$0 = task.row,\n parentBoundary = task.blockedBoundary,\n parentPreamble = task.blockedPreamble,\n parentHoistableState = task.hoistableState,\n parentSegment = task.blockedSegment,\n fallback = props.fallback,\n content = props.children,\n fallbackAbortSet = new Set(),\n newBoundary = createSuspenseBoundary(\n request,\n task.row,\n fallbackAbortSet,\n null,\n !1\n ),\n boundarySegment = createPendingSegment(\n request,\n parentSegment.chunks.length,\n newBoundary,\n task.formatContext,\n !1,\n !1\n );\n parentSegment.children.push(boundarySegment);\n parentSegment.lastPushedText = !1;\n var contentRootSegment = createPendingSegment(\n request,\n 0,\n null,\n task.formatContext,\n !1,\n !1\n );\n contentRootSegment.parentFlushed = !0;\n var trackedPostpones = request.trackedPostpones;\n if (null !== trackedPostpones) {\n var suspenseComponentStack = task.componentStack,\n fallbackKeyPath = [keyPath[0], \"Suspense Fallback\", keyPath[2]];\n if (null !== trackedPostpones) {\n var fallbackReplayNode = [\n fallbackKeyPath[1],\n fallbackKeyPath[2],\n [],\n null\n ];\n trackedPostpones.workingMap.set(\n fallbackKeyPath,\n fallbackReplayNode\n );\n newBoundary.tracked = {\n contentKeyPath: keyPath,\n fallbackNode: fallbackReplayNode\n };\n }\n task.blockedSegment = boundarySegment;\n task.blockedPreamble =\n null === newBoundary.preamble\n ? null\n : newBoundary.preamble.fallback;\n task.keyPath = fallbackKeyPath;\n task.formatContext = getSuspenseFallbackFormatContext(\n request.resumableState,\n prevContext$jscomp$1\n );\n task.componentStack =\n replaceSuspenseComponentStackWithSuspenseFallbackStack(\n suspenseComponentStack\n );\n try {\n renderNode(request, task, fallback, -1),\n pushSegmentFinale(\n boundarySegment.chunks,\n request.renderState,\n boundarySegment.lastPushedText,\n boundarySegment.textEmbedded\n ),\n (boundarySegment.status = 1);\n } catch (thrownValue) {\n throw (\n ((boundarySegment.status = request.aborted ? 3 : 4),\n thrownValue)\n );\n } finally {\n (task.blockedSegment = parentSegment),\n (task.blockedPreamble = parentPreamble),\n (task.keyPath = prevKeyPath$jscomp$5),\n (task.formatContext = prevContext$jscomp$1);\n }\n var suspendedPrimaryTask = createRenderTask(\n request,\n null,\n content,\n -1,\n newBoundary,\n contentRootSegment,\n null === newBoundary.preamble\n ? null\n : newBoundary.preamble.content,\n newBoundary.contentState,\n task.abortSet,\n keyPath,\n getSuspenseContentFormatContext(\n request.resumableState,\n task.formatContext\n ),\n task.context,\n task.treeContext,\n null,\n suspenseComponentStack\n );\n pushComponentStack(suspendedPrimaryTask);\n request.pingedTasks.push(suspendedPrimaryTask);\n } else {\n task.blockedBoundary = newBoundary;\n task.blockedPreamble =\n null === newBoundary.preamble\n ? null\n : newBoundary.preamble.content;\n task.hoistableState = newBoundary.contentState;\n task.blockedSegment = contentRootSegment;\n task.keyPath = keyPath;\n task.formatContext = getSuspenseContentFormatContext(\n request.resumableState,\n prevContext$jscomp$1\n );\n task.row = null;\n try {\n if (\n (renderNode(request, task, content, -1),\n pushSegmentFinale(\n contentRootSegment.chunks,\n request.renderState,\n contentRootSegment.lastPushedText,\n contentRootSegment.textEmbedded\n ),\n (contentRootSegment.status = 1),\n queueCompletedSegment(newBoundary, contentRootSegment),\n 0 === newBoundary.pendingTasks && 0 === newBoundary.status)\n ) {\n if (\n ((newBoundary.status = 1),\n !isEligibleForOutlining(request, newBoundary))\n ) {\n null !== prevRow$jscomp$0 &&\n 0 === --prevRow$jscomp$0.pendingTasks &&\n finishSuspenseListRow(request, prevRow$jscomp$0);\n 0 === request.pendingRootTasks &&\n task.blockedPreamble &&\n preparePreamble(request);\n break a;\n }\n } else\n null !== prevRow$jscomp$0 &&\n prevRow$jscomp$0.together &&\n tryToResolveTogetherRow(request, prevRow$jscomp$0);\n } catch (thrownValue$30) {\n newBoundary.status = 4;\n if (request.aborted) {\n contentRootSegment.status = 3;\n var error = request.fatalError;\n } else (contentRootSegment.status = 4), (error = thrownValue$30);\n var thrownInfo = getThrownInfo(task.componentStack),\n errorDigest = logRecoverableError(request, error, thrownInfo);\n newBoundary.errorDigest = errorDigest;\n untrackBoundary(request, newBoundary);\n } finally {\n (task.blockedBoundary = parentBoundary),\n (task.blockedPreamble = parentPreamble),\n (task.hoistableState = parentHoistableState),\n (task.blockedSegment = parentSegment),\n (task.keyPath = prevKeyPath$jscomp$5),\n (task.formatContext = prevContext$jscomp$1),\n (task.row = prevRow$jscomp$0);\n }\n var suspendedFallbackTask = createRenderTask(\n request,\n null,\n fallback,\n -1,\n parentBoundary,\n boundarySegment,\n null === newBoundary.preamble\n ? null\n : newBoundary.preamble.fallback,\n newBoundary.fallbackState,\n fallbackAbortSet,\n [keyPath[0], \"Suspense Fallback\", keyPath[2]],\n getSuspenseFallbackFormatContext(\n request.resumableState,\n task.formatContext\n ),\n task.context,\n task.treeContext,\n task.row,\n replaceSuspenseComponentStackWithSuspenseFallbackStack(\n task.componentStack\n )\n );\n pushComponentStack(suspendedFallbackTask);\n request.pingedTasks.push(suspendedFallbackTask);\n }\n }\n return;\n }\n if (\"object\" === typeof type && null !== type)\n switch (type.$$typeof) {\n case REACT_FORWARD_REF_TYPE:\n if (\"ref\" in props) {\n var propsWithoutRef = {};\n for (var key in props)\n \"ref\" !== key && (propsWithoutRef[key] = props[key]);\n } else propsWithoutRef = props;\n var children$jscomp$1 = renderWithHooks(\n request,\n task,\n keyPath,\n type.render,\n propsWithoutRef,\n ref\n );\n finishFunctionComponent(\n request,\n task,\n keyPath,\n children$jscomp$1,\n 0 !== localIdCounter,\n actionStateCounter,\n actionStateMatchingIndex\n );\n return;\n case REACT_MEMO_TYPE:\n renderElement(request, task, keyPath, type.type, props, ref);\n return;\n case REACT_CONTEXT_TYPE:\n var children$jscomp$2 = props.children,\n prevKeyPath$jscomp$6 = task.keyPath,\n nextValue = props.value;\n var prevValue = type._currentValue2;\n type._currentValue2 = nextValue;\n var prevNode = currentActiveSnapshot,\n newNode = {\n parent: prevNode,\n depth: null === prevNode ? 0 : prevNode.depth + 1,\n context: type,\n parentValue: prevValue,\n value: nextValue\n };\n currentActiveSnapshot = newNode;\n task.context = newNode;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, children$jscomp$2, -1);\n var prevSnapshot = currentActiveSnapshot;\n if (null === prevSnapshot) throw Error(formatProdErrorMessage(403));\n prevSnapshot.context._currentValue2 = prevSnapshot.parentValue;\n var JSCompiler_inline_result$jscomp$2 = (currentActiveSnapshot =\n prevSnapshot.parent);\n task.context = JSCompiler_inline_result$jscomp$2;\n task.keyPath = prevKeyPath$jscomp$6;\n return;\n case REACT_CONSUMER_TYPE:\n var render = props.children,\n newChildren = render(type._context._currentValue2),\n prevKeyPath$jscomp$7 = task.keyPath;\n task.keyPath = keyPath;\n renderNodeDestructive(request, task, newChildren, -1);\n task.keyPath = prevKeyPath$jscomp$7;\n return;\n case REACT_LAZY_TYPE:\n var init = type._init;\n var Component = init(type._payload);\n if (request.aborted) throw null;\n renderElement(request, task, keyPath, Component, props, ref);\n return;\n }\n throw Error(\n formatProdErrorMessage(130, null == type ? type : typeof type, \"\")\n );\n }\n}\nfunction resumeNode(request, task, segmentId, node, childIndex) {\n var prevReplay = task.replay,\n blockedBoundary = task.blockedBoundary,\n resumedSegment = createPendingSegment(\n request,\n 0,\n null,\n task.formatContext,\n !1,\n !1\n );\n resumedSegment.id = segmentId;\n resumedSegment.parentFlushed = !0;\n try {\n (task.replay = null),\n (task.blockedSegment = resumedSegment),\n renderNode(request, task, node, childIndex),\n (resumedSegment.status = 1),\n null === blockedBoundary\n ? (request.completedRootSegment = resumedSegment)\n : (queueCompletedSegment(blockedBoundary, resumedSegment),\n blockedBoundary.parentFlushed &&\n request.partialBoundaries.push(blockedBoundary));\n } finally {\n (task.replay = prevReplay), (task.blockedSegment = null);\n }\n}\nfunction renderNodeDestructive(request, task, node, childIndex) {\n null !== task.replay && \"number\" === typeof task.replay.slots\n ? resumeNode(request, task, task.replay.slots, node, childIndex)\n : ((task.node = node),\n (task.childIndex = childIndex),\n (node = task.componentStack),\n pushComponentStack(task),\n retryNode(request, task),\n (task.componentStack = node));\n}\nfunction retryNode(request, task) {\n var node = task.node,\n childIndex = task.childIndex;\n if (null !== node) {\n if (\"object\" === typeof node) {\n switch (node.$$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = node.type,\n key = node.key,\n props = node.props;\n node = props.ref;\n var ref = void 0 !== node ? node : null,\n name = getComponentNameFromType(type),\n keyOrIndex =\n null == key || key === REACT_OPTIMISTIC_KEY\n ? -1 === childIndex\n ? 0\n : childIndex\n : key;\n key = [task.keyPath, name, keyOrIndex];\n if (null !== task.replay)\n a: {\n var replay = task.replay;\n childIndex = replay.nodes;\n for (node = 0; node < childIndex.length; node++) {\n var node$jscomp$0 = childIndex[node];\n if (keyOrIndex === node$jscomp$0[1]) {\n if (4 === node$jscomp$0.length) {\n if (null !== name && name !== node$jscomp$0[0])\n throw Error(\n formatProdErrorMessage(490, node$jscomp$0[0], name)\n );\n var childNodes = node$jscomp$0[2],\n childSlots = node$jscomp$0[3],\n currentNode = task.node;\n task.replay = {\n nodes: childNodes,\n slots: childSlots,\n pendingTasks: 1\n };\n try {\n renderElement(request, task, key, type, props, ref);\n if (\n 1 === task.replay.pendingTasks &&\n 0 < task.replay.nodes.length\n )\n throw Error(formatProdErrorMessage(488));\n task.replay.pendingTasks--;\n } catch (x) {\n if (\n \"object\" === typeof x &&\n null !== x &&\n (x === SuspenseException ||\n \"function\" === typeof x.then ||\n \"Maximum call stack size exceeded\" === x.message)\n )\n throw (\n (task.node === currentNode\n ? (task.replay = replay)\n : childIndex.splice(node, 1),\n x)\n );\n task.replay.pendingTasks--;\n key = getThrownInfo(task.componentStack);\n currentNode = request;\n props = task.blockedBoundary;\n request = request.aborted ? request.fatalError : x;\n key = logRecoverableError(currentNode, request, key);\n abortRemainingReplayNodes(\n currentNode,\n props,\n childNodes,\n childSlots,\n request,\n key\n );\n }\n task.replay = replay;\n } else {\n if (type !== REACT_SUSPENSE_TYPE)\n throw Error(\n formatProdErrorMessage(\n 490,\n \"Suspense\",\n getComponentNameFromType(type) || \"Unknown\"\n )\n );\n b: {\n replay = node$jscomp$0[5];\n type = node$jscomp$0[2];\n ref = node$jscomp$0[3];\n name =\n null === node$jscomp$0[4] ? [] : node$jscomp$0[4][2];\n node$jscomp$0 =\n null === node$jscomp$0[4] ? null : node$jscomp$0[4][3];\n keyOrIndex = task.keyPath;\n var prevContext = task.formatContext,\n prevRow = task.row,\n previousReplaySet = task.replay,\n parentBoundary = task.blockedBoundary,\n parentHoistableState = task.hoistableState,\n content = props.children;\n props = props.fallback;\n var fallbackAbortSet = new Set(),\n resumedBoundary = createSuspenseBoundary(\n request,\n task.row,\n fallbackAbortSet,\n null,\n !1\n );\n resumedBoundary.parentFlushed = !0;\n resumedBoundary.rootSegmentID = replay;\n task.blockedBoundary = resumedBoundary;\n task.hoistableState = resumedBoundary.contentState;\n task.keyPath = key;\n task.formatContext = getSuspenseContentFormatContext(\n request.resumableState,\n prevContext\n );\n task.row = null;\n task.replay = {\n nodes: type,\n slots: ref,\n pendingTasks: 1\n };\n try {\n renderNode(request, task, content, -1);\n if (\n 1 === task.replay.pendingTasks &&\n 0 < task.replay.nodes.length\n )\n throw Error(formatProdErrorMessage(488));\n task.replay.pendingTasks--;\n if (\n 0 === resumedBoundary.pendingTasks &&\n 0 === resumedBoundary.status\n ) {\n resumedBoundary.status = 1;\n request.completedBoundaries.push(resumedBoundary);\n break b;\n }\n } catch (thrownValue) {\n (resumedBoundary.status = 4),\n (childNodes = request.aborted\n ? request.fatalError\n : thrownValue),\n (childSlots = getThrownInfo(task.componentStack)),\n (currentNode = logRecoverableError(\n request,\n childNodes,\n childSlots\n )),\n (resumedBoundary.errorDigest = currentNode),\n task.replay.pendingTasks--,\n request.clientRenderedBoundaries.push(\n resumedBoundary\n );\n } finally {\n (task.blockedBoundary = parentBoundary),\n (task.hoistableState = parentHoistableState),\n (task.replay = previousReplaySet),\n (task.keyPath = keyOrIndex),\n (task.formatContext = prevContext),\n (task.row = prevRow);\n }\n childNodes = createReplayTask(\n request,\n null,\n { nodes: name, slots: node$jscomp$0, pendingTasks: 0 },\n props,\n -1,\n parentBoundary,\n resumedBoundary.fallbackState,\n fallbackAbortSet,\n [key[0], \"Suspense Fallback\", key[2]],\n getSuspenseFallbackFormatContext(\n request.resumableState,\n task.formatContext\n ),\n task.context,\n task.treeContext,\n task.row,\n replaceSuspenseComponentStackWithSuspenseFallbackStack(\n task.componentStack\n )\n );\n pushComponentStack(childNodes);\n request.pingedTasks.push(childNodes);\n }\n }\n childIndex.splice(node, 1);\n break a;\n }\n }\n }\n else renderElement(request, task, key, type, props, ref);\n return;\n case REACT_PORTAL_TYPE:\n throw Error(formatProdErrorMessage(257));\n case REACT_LAZY_TYPE:\n childNodes = node._init;\n node = childNodes(node._payload);\n if (request.aborted) throw null;\n renderNodeDestructive(request, task, node, childIndex);\n return;\n }\n if (isArrayImpl(node)) {\n renderChildrenArray(request, task, node, childIndex);\n return;\n }\n if ((childNodes = getIteratorFn(node)))\n if ((childNodes = childNodes.call(node))) {\n node = childNodes.next();\n if (!node.done) {\n childSlots = [];\n do childSlots.push(node.value), (node = childNodes.next());\n while (!node.done);\n renderChildrenArray(request, task, childSlots, childIndex);\n }\n return;\n }\n if (\"function\" === typeof node.then)\n return (\n (task.thenableState = null),\n renderNodeDestructive(request, task, unwrapThenable(node), childIndex)\n );\n if (node.$$typeof === REACT_CONTEXT_TYPE)\n return renderNodeDestructive(\n request,\n task,\n node._currentValue2,\n childIndex\n );\n childIndex = Object.prototype.toString.call(node);\n throw Error(\n formatProdErrorMessage(\n 31,\n \"[object Object]\" === childIndex\n ? \"object with keys {\" + Object.keys(node).join(\", \") + \"}\"\n : childIndex\n )\n );\n }\n if (\"string\" === typeof node)\n (childIndex = task.blockedSegment),\n null !== childIndex &&\n (childIndex.lastPushedText = pushTextInstance(\n childIndex.chunks,\n node,\n request.renderState,\n childIndex.lastPushedText\n ));\n else if (\"number\" === typeof node || \"bigint\" === typeof node)\n (childIndex = task.blockedSegment),\n null !== childIndex &&\n (childIndex.lastPushedText = pushTextInstance(\n childIndex.chunks,\n \"\" + node,\n request.renderState,\n childIndex.lastPushedText\n ));\n }\n}\nfunction renderChildrenArray(request, task, children, childIndex) {\n var prevKeyPath = task.keyPath;\n if (\n -1 !== childIndex &&\n ((task.keyPath = [task.keyPath, \"Fragment\", childIndex]),\n null !== task.replay)\n ) {\n for (\n var replay = task.replay, replayNodes = replay.nodes, j = 0;\n j < replayNodes.length;\n j++\n ) {\n var node = replayNodes[j];\n if (node[1] === childIndex) {\n childIndex = node[2];\n node = node[3];\n task.replay = { nodes: childIndex, slots: node, pendingTasks: 1 };\n try {\n renderChildrenArray(request, task, children, -1);\n if (1 === task.replay.pendingTasks && 0 < task.replay.nodes.length)\n throw Error(formatProdErrorMessage(488));\n task.replay.pendingTasks--;\n } catch (x) {\n if (\n \"object\" === typeof x &&\n null !== x &&\n (x === SuspenseException || \"function\" === typeof x.then)\n )\n throw x;\n task.replay.pendingTasks--;\n var thrownInfo = getThrownInfo(task.componentStack);\n children = request;\n var boundary = task.blockedBoundary;\n request = request.aborted ? request.fatalError : x;\n thrownInfo = logRecoverableError(children, request, thrownInfo);\n abortRemainingReplayNodes(\n children,\n boundary,\n childIndex,\n node,\n request,\n thrownInfo\n );\n }\n task.replay = replay;\n replayNodes.splice(j, 1);\n break;\n }\n }\n task.keyPath = prevKeyPath;\n return;\n }\n replay = task.treeContext;\n replayNodes = children.length;\n if (\n null !== task.replay &&\n ((j = task.replay.slots), null !== j && \"object\" === typeof j)\n ) {\n for (childIndex = 0; childIndex < replayNodes; childIndex++)\n (node = children[childIndex]),\n (task.treeContext = pushTreeContext(replay, replayNodes, childIndex)),\n (boundary = j[childIndex]),\n \"number\" === typeof boundary\n ? (resumeNode(request, task, boundary, node, childIndex),\n delete j[childIndex])\n : renderNode(request, task, node, childIndex);\n task.treeContext = replay;\n task.keyPath = prevKeyPath;\n return;\n }\n for (j = 0; j < replayNodes; j++)\n (childIndex = children[j]),\n (task.treeContext = pushTreeContext(replay, replayNodes, j)),\n renderNode(request, task, childIndex, j);\n task.treeContext = replay;\n task.keyPath = prevKeyPath;\n}\nfunction trackPostponedBoundary(request, trackedPostpones, boundary) {\n boundary.status = 5;\n boundary.rootSegmentID = request.nextSegmentId++;\n var tracked = boundary.tracked;\n if (null === tracked) throw Error(formatProdErrorMessage(486));\n request = tracked.contentKeyPath;\n if (null === request) throw Error(formatProdErrorMessage(486));\n tracked = tracked.fallbackNode;\n var children = [],\n boundaryNode = trackedPostpones.workingMap.get(request);\n if (void 0 === boundaryNode)\n return (\n (boundary = [\n request[1],\n request[2],\n children,\n null,\n tracked,\n boundary.rootSegmentID\n ]),\n trackedPostpones.workingMap.set(request, boundary),\n addToReplayParent(boundary, request[0], trackedPostpones),\n boundary\n );\n boundaryNode[4] = tracked;\n boundaryNode[5] = boundary.rootSegmentID;\n return boundaryNode;\n}\nfunction trackPostpone(request, trackedPostpones, task, segment) {\n segment.status = 5;\n var keyPath = task.keyPath,\n boundary = task.blockedBoundary;\n if (null === boundary)\n (segment.id = request.nextSegmentId++),\n (trackedPostpones.rootSlots = segment.id),\n null !== request.completedRootSegment &&\n (request.completedRootSegment.status = 5);\n else {\n if (null !== boundary && 0 === boundary.status) {\n var boundaryNode = trackPostponedBoundary(\n request,\n trackedPostpones,\n boundary\n );\n if (\n null !== boundary.tracked &&\n boundary.tracked.contentKeyPath === keyPath &&\n -1 === task.childIndex\n ) {\n -1 === segment.id &&\n (segment.id = segment.parentFlushed\n ? boundary.rootSegmentID\n : request.nextSegmentId++);\n boundaryNode[3] = segment.id;\n return;\n }\n }\n -1 === segment.id &&\n (segment.id =\n segment.parentFlushed && null !== boundary\n ? boundary.rootSegmentID\n : request.nextSegmentId++);\n if (-1 === task.childIndex)\n null === keyPath\n ? (trackedPostpones.rootSlots = segment.id)\n : ((task = trackedPostpones.workingMap.get(keyPath)),\n void 0 === task\n ? ((task = [keyPath[1], keyPath[2], [], segment.id]),\n addToReplayParent(task, keyPath[0], trackedPostpones))\n : (task[3] = segment.id));\n else {\n if (null === keyPath)\n if (((request = trackedPostpones.rootSlots), null === request))\n request = trackedPostpones.rootSlots = {};\n else {\n if (\"number\" === typeof request)\n throw Error(formatProdErrorMessage(491));\n }\n else if (\n ((boundary = trackedPostpones.workingMap),\n (boundaryNode = boundary.get(keyPath)),\n void 0 === boundaryNode)\n )\n (request = {}),\n (boundaryNode = [keyPath[1], keyPath[2], [], request]),\n boundary.set(keyPath, boundaryNode),\n addToReplayParent(boundaryNode, keyPath[0], trackedPostpones);\n else if (((request = boundaryNode[3]), null === request))\n request = boundaryNode[3] = {};\n else if (\"number\" === typeof request)\n throw Error(formatProdErrorMessage(491));\n request[task.childIndex] = segment.id;\n }\n }\n}\nfunction untrackBoundary(request, boundary) {\n request = request.trackedPostpones;\n null !== request &&\n ((boundary = boundary.tracked),\n null !== boundary &&\n ((boundary = boundary.contentKeyPath),\n null !== boundary &&\n ((request = request.workingMap.get(boundary)),\n void 0 !== request &&\n ((request.length = 4), (request[2] = []), (request[3] = null)))));\n}\nfunction spawnNewSuspendedReplayTask(request, task, thenableState) {\n return createReplayTask(\n request,\n thenableState,\n task.replay,\n task.node,\n task.childIndex,\n task.blockedBoundary,\n task.hoistableState,\n task.abortSet,\n task.keyPath,\n task.formatContext,\n task.context,\n task.treeContext,\n task.row,\n task.componentStack\n );\n}\nfunction spawnNewSuspendedRenderTask(request, task, thenableState) {\n var segment = task.blockedSegment,\n newSegment = createPendingSegment(\n request,\n segment.chunks.length,\n null,\n task.formatContext,\n segment.lastPushedText,\n !0\n );\n segment.children.push(newSegment);\n segment.lastPushedText = !1;\n return createRenderTask(\n request,\n thenableState,\n task.node,\n task.childIndex,\n task.blockedBoundary,\n newSegment,\n task.blockedPreamble,\n task.hoistableState,\n task.abortSet,\n task.keyPath,\n task.formatContext,\n task.context,\n task.treeContext,\n task.row,\n task.componentStack\n );\n}\nfunction renderNode(request, task, node, childIndex) {\n var previousFormatContext = task.formatContext,\n previousContext = task.context,\n previousKeyPath = task.keyPath,\n previousTreeContext = task.treeContext,\n previousComponentStack = task.componentStack,\n segment = task.blockedSegment;\n if (null === segment) {\n segment = task.replay;\n try {\n return renderNodeDestructive(request, task, node, childIndex);\n } catch (thrownValue) {\n if (\n (resetHooksState(),\n (node =\n thrownValue === SuspenseException\n ? getSuspendedThenable()\n : thrownValue),\n !request.aborted && \"object\" === typeof node && null !== node)\n ) {\n if (\"function\" === typeof node.then) {\n childIndex =\n thrownValue === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n request = spawnNewSuspendedReplayTask(request, task, childIndex).ping;\n node.then(request.resolve, request.reject);\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n task.componentStack = previousComponentStack;\n task.replay = segment;\n switchContext(previousContext);\n return;\n }\n if (\"Maximum call stack size exceeded\" === node.message) {\n node =\n thrownValue === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n node = spawnNewSuspendedReplayTask(request, task, node);\n request.pingedTasks.push(node);\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n task.componentStack = previousComponentStack;\n task.replay = segment;\n switchContext(previousContext);\n return;\n }\n }\n }\n } else {\n var childrenLength = segment.children.length,\n chunkLength = segment.chunks.length;\n try {\n return renderNodeDestructive(request, task, node, childIndex);\n } catch (thrownValue$63) {\n if (\n (resetHooksState(),\n (segment.children.length = childrenLength),\n (segment.chunks.length = chunkLength),\n (node =\n thrownValue$63 === SuspenseException\n ? getSuspendedThenable()\n : thrownValue$63),\n !request.aborted && \"object\" === typeof node && null !== node)\n ) {\n if (\"function\" === typeof node.then) {\n segment = node;\n node =\n thrownValue$63 === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n request = spawnNewSuspendedRenderTask(request, task, node).ping;\n segment.then(request.resolve, request.reject);\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n task.componentStack = previousComponentStack;\n switchContext(previousContext);\n return;\n }\n if (\"Maximum call stack size exceeded\" === node.message) {\n segment =\n thrownValue$63 === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n segment = spawnNewSuspendedRenderTask(request, task, segment);\n request.pingedTasks.push(segment);\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n task.componentStack = previousComponentStack;\n switchContext(previousContext);\n return;\n }\n }\n }\n }\n task.formatContext = previousFormatContext;\n task.context = previousContext;\n task.keyPath = previousKeyPath;\n task.treeContext = previousTreeContext;\n switchContext(previousContext);\n throw node;\n}\nfunction abortTaskSoft(task) {\n var boundary = task.blockedBoundary,\n segment = task.blockedSegment;\n null !== segment &&\n ((segment.status = 3), finishedTask(this, boundary, task.row, segment));\n}\nfunction abortRemainingReplayNodes(\n request$jscomp$0,\n boundary,\n nodes,\n slots,\n error,\n errorDigest$jscomp$0\n) {\n for (var i = 0; i < nodes.length; i++) {\n var node = nodes[i];\n if (4 === node.length)\n abortRemainingReplayNodes(\n request$jscomp$0,\n boundary,\n node[2],\n node[3],\n error,\n errorDigest$jscomp$0\n );\n else {\n node = node[5];\n var request = request$jscomp$0,\n errorDigest = errorDigest$jscomp$0,\n resumedBoundary = createSuspenseBoundary(\n request,\n null,\n new Set(),\n null,\n !1\n );\n resumedBoundary.parentFlushed = !0;\n resumedBoundary.rootSegmentID = node;\n resumedBoundary.status = 4;\n resumedBoundary.errorDigest = errorDigest;\n resumedBoundary.parentFlushed &&\n request.clientRenderedBoundaries.push(resumedBoundary);\n }\n }\n nodes.length = 0;\n if (null !== slots) {\n if (null === boundary) throw Error(formatProdErrorMessage(487));\n 4 !== boundary.status &&\n ((boundary.status = 4),\n (boundary.errorDigest = errorDigest$jscomp$0),\n boundary.parentFlushed &&\n request$jscomp$0.clientRenderedBoundaries.push(boundary));\n if (\"object\" === typeof slots) for (var index in slots) delete slots[index];\n }\n}\nfunction abortTask(task, request) {\n if (task !== request.currentTask) {\n var boundary = task.blockedBoundary;\n task = task.blockedSegment;\n null !== task && (task.status = 3);\n null !== boundary &&\n boundary.fallbackAbortableTasks.forEach(function (fallbackTask) {\n return abortTask(fallbackTask, request);\n });\n }\n}\nfunction finishAbortedTask(task, request, error) {\n if (task !== request.currentTask) {\n var boundary = task.blockedBoundary,\n segment = task.blockedSegment;\n if (null === segment || 3 === segment.status) {\n var errorInfo = getThrownInfo(task.componentStack),\n isRecoverableReason = isRecoverableError(error);\n if (null === boundary) {\n boundary = task.replay;\n if (null === boundary) {\n isRecoverableReason ||\n null === request.trackedPostpones ||\n null === segment\n ? isRecoverableReason\n ? ((task = cloneRecoverableErrorAsFatal(error)),\n logRecoverableError(request, task, errorInfo),\n 12 !== request.status &&\n 13 !== request.status &&\n fatalError(request, task))\n : (logRecoverableError(request, error, errorInfo),\n 12 !== request.status &&\n 13 !== request.status &&\n fatalError(request, error))\n : ((boundary = request.trackedPostpones),\n logRecoverableError(request, error, errorInfo),\n trackPostpone(request, boundary, task, segment),\n finishedTask(request, null, task.row, segment));\n return;\n }\n 12 !== request.status &&\n 13 !== request.status &&\n (boundary.pendingTasks--,\n 0 === boundary.pendingTasks &&\n 0 < boundary.nodes.length &&\n ((errorInfo = logRecoverableError(request, error, errorInfo)),\n abortRemainingReplayNodes(\n request,\n null,\n boundary.nodes,\n boundary.slots,\n error,\n errorInfo\n )),\n request.pendingRootTasks--,\n 0 === request.pendingRootTasks && completeShell(request));\n } else {\n var trackedPostpones$64 = request.trackedPostpones;\n if (4 !== boundary.status) {\n if (\n !isRecoverableReason &&\n null !== trackedPostpones$64 &&\n null !== segment\n )\n return (\n logRecoverableError(request, error, errorInfo),\n trackPostpone(request, trackedPostpones$64, task, segment),\n boundary.fallbackAbortableTasks.forEach(function (fallbackTask) {\n return finishAbortedTask(fallbackTask, request, error);\n }),\n boundary.fallbackAbortableTasks.clear(),\n finishedTask(request, boundary, task.row, segment)\n );\n boundary.status = 4;\n errorInfo = logRecoverableError(request, error, errorInfo);\n boundary.errorDigest = errorInfo;\n untrackBoundary(request, boundary);\n boundary.parentFlushed &&\n request.clientRenderedBoundaries.push(boundary);\n }\n boundary.pendingTasks--;\n errorInfo = boundary.row;\n null !== errorInfo &&\n 0 === --errorInfo.pendingTasks &&\n finishSuspenseListRow(request, errorInfo);\n boundary.fallbackAbortableTasks.forEach(function (fallbackTask) {\n return finishAbortedTask(fallbackTask, request, error);\n });\n boundary.fallbackAbortableTasks.clear();\n }\n task = task.row;\n null !== task &&\n 0 === --task.pendingTasks &&\n finishSuspenseListRow(request, task);\n request.allPendingTasks--;\n 0 === request.allPendingTasks && completeAll(request);\n }\n }\n}\nfunction safelyEmitEarlyPreloads(request, shellComplete) {\n try {\n var renderState = request.renderState,\n onHeaders = renderState.onHeaders;\n if (onHeaders) {\n var headers = renderState.headers;\n if (headers) {\n renderState.headers = null;\n var linkHeader = headers.preconnects;\n headers.fontPreloads &&\n (linkHeader && (linkHeader += \", \"),\n (linkHeader += headers.fontPreloads));\n headers.highImagePreloads &&\n (linkHeader && (linkHeader += \", \"),\n (linkHeader += headers.highImagePreloads));\n if (!shellComplete) {\n var queueIter = renderState.styles.values(),\n queueStep = queueIter.next();\n b: for (\n ;\n 0 < headers.remainingCapacity && !queueStep.done;\n queueStep = queueIter.next()\n )\n for (\n var sheetIter = queueStep.value.sheets.values(),\n sheetStep = sheetIter.next();\n 0 < headers.remainingCapacity && !sheetStep.done;\n sheetStep = sheetIter.next()\n ) {\n var sheet = sheetStep.value,\n props = sheet.props,\n key = props.href,\n props$jscomp$0 = sheet.props,\n header = getPreloadAsHeader(props$jscomp$0.href, \"style\", {\n crossOrigin: props$jscomp$0.crossOrigin,\n integrity: props$jscomp$0.integrity,\n nonce: props$jscomp$0.nonce,\n type: props$jscomp$0.type,\n fetchPriority: props$jscomp$0.fetchPriority,\n referrerPolicy: props$jscomp$0.referrerPolicy,\n media: props$jscomp$0.media\n });\n if (0 <= (headers.remainingCapacity -= header.length + 2))\n (renderState.resets.style[key] = PRELOAD_NO_CREDS),\n linkHeader && (linkHeader += \", \"),\n (linkHeader += header),\n (renderState.resets.style[key] =\n \"string\" === typeof props.crossOrigin ||\n \"string\" === typeof props.integrity\n ? [props.crossOrigin, props.integrity]\n : PRELOAD_NO_CREDS);\n else break b;\n }\n }\n linkHeader ? onHeaders({ Link: linkHeader }) : onHeaders({});\n }\n }\n } catch (error) {\n logRecoverableError(request, error, {});\n }\n}\nfunction completeShell(request) {\n null === request.trackedPostpones && safelyEmitEarlyPreloads(request, !0);\n null === request.trackedPostpones && preparePreamble(request);\n request = request.onShellReady;\n request();\n}\nfunction completeAll(request) {\n safelyEmitEarlyPreloads(\n request,\n null === request.trackedPostpones\n ? !0\n : null === request.completedRootSegment ||\n 5 !== request.completedRootSegment.status\n );\n preparePreamble(request);\n request = request.onAllReady;\n request();\n}\nfunction queueCompletedSegment(boundary, segment) {\n if (\n 0 === segment.chunks.length &&\n 1 === segment.children.length &&\n null === segment.children[0].boundary &&\n -1 === segment.children[0].id\n ) {\n var childSegment = segment.children[0];\n childSegment.id = segment.id;\n childSegment.parentFlushed = !0;\n (1 !== childSegment.status &&\n 3 !== childSegment.status &&\n 4 !== childSegment.status) ||\n queueCompletedSegment(boundary, childSegment);\n } else boundary.completedSegments.push(segment);\n}\nfunction finishedTask(request, boundary, row, segment) {\n null !== row &&\n (0 === --row.pendingTasks\n ? finishSuspenseListRow(request, row)\n : row.together && tryToResolveTogetherRow(request, row));\n request.allPendingTasks--;\n if (null === boundary) {\n if (null !== segment && segment.parentFlushed) {\n if (null !== request.completedRootSegment)\n throw Error(formatProdErrorMessage(389));\n request.completedRootSegment = segment;\n }\n request.pendingRootTasks--;\n 0 === request.pendingRootTasks && completeShell(request);\n } else if ((boundary.pendingTasks--, 4 !== boundary.status))\n if (0 === boundary.pendingTasks)\n if (\n (0 === boundary.status && (boundary.status = 1),\n null !== segment &&\n segment.parentFlushed &&\n (1 === segment.status || 3 === segment.status) &&\n queueCompletedSegment(boundary, segment),\n boundary.parentFlushed && request.completedBoundaries.push(boundary),\n 1 === boundary.status)\n )\n (row = boundary.row),\n null !== row &&\n hoistHoistables(row.hoistables, boundary.contentState),\n isEligibleForOutlining(request, boundary) ||\n (request.allPendingTasks++,\n boundary.fallbackAbortableTasks.forEach(abortTaskSoft, request),\n boundary.fallbackAbortableTasks.clear(),\n null !== row &&\n 0 === --row.pendingTasks &&\n finishSuspenseListRow(request, row),\n request.allPendingTasks--),\n 0 === request.pendingRootTasks &&\n null === request.trackedPostpones &&\n null !== boundary.preamble &&\n preparePreamble(request);\n else {\n if (\n 5 === boundary.status &&\n ((boundary = boundary.row), null !== boundary)\n ) {\n if (null !== request.trackedPostpones) {\n row = request.trackedPostpones;\n var postponedRow = boundary.next;\n if (\n null !== postponedRow &&\n ((segment = postponedRow.boundaries), null !== segment)\n )\n for (\n postponedRow.boundaries = null, postponedRow = 0;\n postponedRow < segment.length;\n postponedRow++\n ) {\n var postponedBoundary = segment[postponedRow];\n trackPostponedBoundary(request, row, postponedBoundary);\n finishedTask(request, postponedBoundary, null, null);\n }\n }\n request.allPendingTasks++;\n 0 === --boundary.pendingTasks &&\n finishSuspenseListRow(request, boundary);\n request.allPendingTasks--;\n }\n }\n else\n null === segment ||\n !segment.parentFlushed ||\n (1 !== segment.status && 3 !== segment.status) ||\n (queueCompletedSegment(boundary, segment),\n 1 === boundary.completedSegments.length &&\n boundary.parentFlushed &&\n request.partialBoundaries.push(boundary)),\n (boundary = boundary.row),\n null !== boundary &&\n boundary.together &&\n tryToResolveTogetherRow(request, boundary);\n 0 === request.allPendingTasks && completeAll(request);\n}\nfunction performWork(request$jscomp$1) {\n if (!(request$jscomp$1.aborted || 11 < request$jscomp$1.status)) {\n var prevContext = currentActiveSnapshot,\n prevDispatcher = ReactSharedInternals.H;\n ReactSharedInternals.H = HooksDispatcher;\n var prevAsyncDispatcher = ReactSharedInternals.A;\n ReactSharedInternals.A = DefaultAsyncDispatcher;\n var prevRequest = currentRequest;\n currentRequest = request$jscomp$1;\n var prevResumableState = currentResumableState;\n currentResumableState = request$jscomp$1.resumableState;\n try {\n var pingedTasks = request$jscomp$1.pingedTasks,\n i;\n for (i = 0; i < pingedTasks.length; i++) {\n var task = pingedTasks[i],\n request = request$jscomp$1,\n segment = task.blockedSegment;\n if (null === segment)\n a: {\n if (0 !== task.replay.pendingTasks) {\n var prevTask = request.currentTask;\n request.currentTask = task;\n switchContext(task.context);\n var startNode = task.node;\n try {\n \"number\" === typeof task.replay.slots\n ? resumeNode(\n request,\n task,\n task.replay.slots,\n task.node,\n task.childIndex\n )\n : retryNode(request, task);\n if (\n 1 === task.replay.pendingTasks &&\n 0 < task.replay.nodes.length\n )\n throw Error(formatProdErrorMessage(488));\n task.replay.pendingTasks--;\n task.abortSet.delete(task);\n finishedTask(request, task.blockedBoundary, task.row, null);\n } catch (thrownValue) {\n resetHooksState();\n var x =\n thrownValue === SuspenseException\n ? getSuspendedThenable()\n : thrownValue;\n if (request.aborted) {\n thrownValue === SuspenseException &&\n (task.thenableState = getThenableStateAfterSuspending());\n request.currentTask = prevTask;\n var request$jscomp$0 = request;\n abortTask(task, request$jscomp$0);\n task.abortSet.delete(task);\n finishAbortedTask(\n task,\n request$jscomp$0,\n request$jscomp$0.fatalError\n );\n } else {\n if (\"object\" === typeof x && null !== x) {\n if (\"function\" === typeof x.then) {\n var ping = task.ping;\n x.then(ping.resolve, ping.reject);\n task.thenableState =\n thrownValue === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n break a;\n }\n if (\n \"Maximum call stack size exceeded\" === x.message &&\n task.node !== startNode\n ) {\n task.thenableState = null;\n request.pingedTasks.push(task);\n break a;\n }\n }\n task.replay.pendingTasks--;\n task.abortSet.delete(task);\n var errorInfo = getThrownInfo(task.componentStack);\n request$jscomp$0 = request;\n var boundary = task.blockedBoundary,\n error$jscomp$0 = request.aborted ? request.fatalError : x,\n replayNodes = task.replay.nodes,\n resumeSlots = task.replay.slots,\n errorDigest = logRecoverableError(\n request$jscomp$0,\n error$jscomp$0,\n errorInfo\n );\n abortRemainingReplayNodes(\n request$jscomp$0,\n boundary,\n replayNodes,\n resumeSlots,\n error$jscomp$0,\n errorDigest\n );\n request.pendingRootTasks--;\n 0 === request.pendingRootTasks && completeShell(request);\n request.allPendingTasks--;\n 0 === request.allPendingTasks && completeAll(request);\n }\n } finally {\n request.currentTask = prevTask;\n }\n }\n }\n else\n a: if (\n ((request$jscomp$0 = segment), 0 === request$jscomp$0.status)\n ) {\n var prevTask$jscomp$0 = request.currentTask;\n request.currentTask = task;\n switchContext(task.context);\n var childrenLength = request$jscomp$0.children.length,\n chunkLength = request$jscomp$0.chunks.length,\n startNode$jscomp$0 = task.node;\n try {\n retryNode(request, task),\n pushSegmentFinale(\n request$jscomp$0.chunks,\n request.renderState,\n request$jscomp$0.lastPushedText,\n request$jscomp$0.textEmbedded\n ),\n task.abortSet.delete(task),\n (request$jscomp$0.status = 1),\n finishedTask(\n request,\n task.blockedBoundary,\n task.row,\n request$jscomp$0\n );\n } catch (thrownValue) {\n resetHooksState();\n request$jscomp$0.children.length = childrenLength;\n request$jscomp$0.chunks.length = chunkLength;\n var x$jscomp$0 =\n thrownValue === SuspenseException\n ? getSuspendedThenable()\n : thrownValue;\n if (request.aborted)\n thrownValue === SuspenseException &&\n (task.thenableState = getThenableStateAfterSuspending()),\n (request.currentTask = prevTask$jscomp$0),\n (request$jscomp$0 = request),\n abortTask(task, request$jscomp$0),\n task.abortSet.delete(task),\n finishAbortedTask(\n task,\n request$jscomp$0,\n request$jscomp$0.fatalError\n );\n else {\n if (\"object\" === typeof x$jscomp$0 && null !== x$jscomp$0) {\n if (\"function\" === typeof x$jscomp$0.then) {\n request$jscomp$0.status = 0;\n task.thenableState =\n thrownValue === SuspenseException\n ? getThenableStateAfterSuspending()\n : null;\n var ping$jscomp$0 = task.ping;\n x$jscomp$0.then(\n ping$jscomp$0.resolve,\n ping$jscomp$0.reject\n );\n break a;\n }\n if (\n \"Maximum call stack size exceeded\" === x$jscomp$0.message &&\n task.node !== startNode$jscomp$0\n ) {\n request$jscomp$0.status = 0;\n task.thenableState = null;\n request.pingedTasks.push(task);\n break a;\n }\n }\n var errorInfo$jscomp$0 = getThrownInfo(task.componentStack);\n task.abortSet.delete(task);\n request$jscomp$0.status = 4;\n var boundary$jscomp$0 = task.blockedBoundary,\n row = task.row;\n null !== row &&\n 0 === --row.pendingTasks &&\n finishSuspenseListRow(request, row);\n request.allPendingTasks--;\n if (null === boundary$jscomp$0)\n if (isRecoverableError(x$jscomp$0)) {\n var fatalRecoverableError =\n cloneRecoverableErrorAsFatal(x$jscomp$0);\n logRecoverableError(\n request,\n fatalRecoverableError,\n errorInfo$jscomp$0\n );\n fatalError(request, fatalRecoverableError);\n } else\n logRecoverableError(\n request,\n x$jscomp$0,\n errorInfo$jscomp$0\n ),\n fatalError(request, x$jscomp$0);\n else {\n var errorDigest$jscomp$0 = logRecoverableError(\n request,\n x$jscomp$0,\n errorInfo$jscomp$0\n );\n boundary$jscomp$0.pendingTasks--;\n if (4 !== boundary$jscomp$0.status) {\n boundary$jscomp$0.status = 4;\n boundary$jscomp$0.errorDigest = errorDigest$jscomp$0;\n untrackBoundary(request, boundary$jscomp$0);\n var boundaryRow = boundary$jscomp$0.row;\n null !== boundaryRow &&\n (request.allPendingTasks++,\n 0 === --boundaryRow.pendingTasks &&\n finishSuspenseListRow(request, boundaryRow),\n request.allPendingTasks--);\n boundary$jscomp$0.parentFlushed &&\n request.clientRenderedBoundaries.push(boundary$jscomp$0);\n 0 === request.pendingRootTasks &&\n null === request.trackedPostpones &&\n null !== boundary$jscomp$0.preamble &&\n preparePreamble(request);\n }\n 0 === request.allPendingTasks && completeAll(request);\n }\n }\n } finally {\n request.currentTask = prevTask$jscomp$0;\n }\n }\n }\n pingedTasks.splice(0, i);\n null !== request$jscomp$1.destination &&\n flushCompletedQueues(request$jscomp$1, request$jscomp$1.destination);\n } catch (error) {\n logRecoverableError(request$jscomp$1, error, {}),\n fatalError(request$jscomp$1, error);\n } finally {\n (currentResumableState = prevResumableState),\n (ReactSharedInternals.H = prevDispatcher),\n (ReactSharedInternals.A = prevAsyncDispatcher),\n prevDispatcher === HooksDispatcher && switchContext(prevContext),\n (currentRequest = prevRequest);\n }\n }\n}\nfunction preparePreambleFromSubtree(\n request,\n segment,\n collectedPreambleSegments\n) {\n segment.preambleChildren.length &&\n collectedPreambleSegments.push(segment.preambleChildren);\n for (var pendingPreambles = !1, i = 0; i < segment.children.length; i++)\n pendingPreambles =\n preparePreambleFromSegment(\n request,\n segment.children[i],\n collectedPreambleSegments\n ) || pendingPreambles;\n return pendingPreambles;\n}\nfunction preparePreambleFromSegment(\n request,\n segment,\n collectedPreambleSegments\n) {\n var boundary = segment.boundary;\n if (null === boundary)\n return preparePreambleFromSubtree(\n request,\n segment,\n collectedPreambleSegments\n );\n var preamble = boundary.preamble;\n if (null === preamble) return !1;\n switch (boundary.status) {\n case 1:\n hoistPreambleState(request.renderState, preamble.content);\n request.byteSize += boundary.byteSize;\n segment = boundary.completedSegments[0];\n if (!segment) throw Error(formatProdErrorMessage(391));\n return preparePreambleFromSubtree(\n request,\n segment,\n collectedPreambleSegments\n );\n case 5:\n if (null !== request.trackedPostpones) return !0;\n case 4:\n if (1 === segment.status)\n return (\n hoistPreambleState(request.renderState, preamble.fallback),\n preparePreambleFromSubtree(\n request,\n segment,\n collectedPreambleSegments\n )\n );\n default:\n return !0;\n }\n}\nfunction preparePreamble(request) {\n if (\n request.completedRootSegment &&\n null === request.completedPreambleSegments\n ) {\n var collectedPreambleSegments = [],\n originalRequestByteSize = request.byteSize,\n hasPendingPreambles = preparePreambleFromSegment(\n request,\n request.completedRootSegment,\n collectedPreambleSegments\n ),\n preamble = request.renderState.preamble;\n !1 === hasPendingPreambles || (preamble.headChunks && preamble.bodyChunks)\n ? (request.completedPreambleSegments = collectedPreambleSegments)\n : (request.byteSize = originalRequestByteSize);\n }\n}\nfunction flushSubtree(request, destination, segment, hoistableState) {\n segment.parentFlushed = !0;\n switch (segment.status) {\n case 0:\n segment.id = request.nextSegmentId++;\n case 5:\n return (\n (hoistableState = segment.id),\n (segment.lastPushedText = !1),\n (segment.textEmbedded = !1),\n (request = request.renderState),\n destination.push('<template id=\"'),\n destination.push(request.placeholderPrefix),\n (request = hoistableState.toString(16)),\n destination.push(request),\n destination.push('\"></template>')\n );\n case 1:\n segment.status = 2;\n var r = !0,\n chunks = segment.chunks,\n chunkIdx = 0;\n segment = segment.children;\n for (var childIdx = 0; childIdx < segment.length; childIdx++) {\n for (r = segment[childIdx]; chunkIdx < r.index; chunkIdx++)\n destination.push(chunks[chunkIdx]);\n r = flushSegment(request, destination, r, hoistableState);\n }\n for (; chunkIdx < chunks.length - 1; chunkIdx++)\n destination.push(chunks[chunkIdx]);\n chunkIdx < chunks.length && (r = destination.push(chunks[chunkIdx]));\n return r;\n case 3:\n return !0;\n default:\n throw Error(formatProdErrorMessage(390));\n }\n}\nvar flushedByteSize = 0;\nfunction flushSegment(request, destination, segment, hoistableState) {\n var boundary = segment.boundary;\n if (null === boundary)\n return flushSubtree(request, destination, segment, hoistableState);\n segment.boundary = null;\n boundary.parentFlushed = !0;\n if (4 === boundary.status) {\n var row = boundary.row;\n null !== row &&\n 0 === --row.pendingTasks &&\n finishSuspenseListRow(request, row);\n request.renderState.generateStaticMarkup ||\n ((boundary = boundary.errorDigest),\n destination.push(\"\\x3c!--$!--\\x3e\"),\n destination.push(\"<template\"),\n null != boundary &&\n (destination.push(' data-dgst=\"'),\n (boundary = escapeTextForBrowser(boundary)),\n destination.push(boundary),\n destination.push('\"')),\n destination.push(\"></template>\"));\n flushSubtree(request, destination, segment, hoistableState);\n request = request.renderState.generateStaticMarkup\n ? !0\n : destination.push(\"\\x3c!--/$--\\x3e\");\n return request;\n }\n if (1 !== boundary.status)\n return (\n 0 === boundary.status &&\n (boundary.rootSegmentID = request.nextSegmentId++),\n 0 < boundary.completedSegments.length &&\n request.partialBoundaries.push(boundary),\n writeStartPendingSuspenseBoundary(\n destination,\n request.renderState,\n boundary.rootSegmentID\n ),\n hoistableState && hoistHoistables(hoistableState, boundary.fallbackState),\n flushSubtree(request, destination, segment, hoistableState),\n destination.push(\"\\x3c!--/$--\\x3e\")\n );\n if (\n !flushingPartialBoundaries &&\n isEligibleForOutlining(request, boundary) &&\n (flushedByteSize + boundary.byteSize > request.progressiveChunkSize ||\n boundary.defer)\n )\n return (\n (boundary.rootSegmentID = request.nextSegmentId++),\n request.completedBoundaries.push(boundary),\n writeStartPendingSuspenseBoundary(\n destination,\n request.renderState,\n boundary.rootSegmentID\n ),\n flushSubtree(request, destination, segment, hoistableState),\n destination.push(\"\\x3c!--/$--\\x3e\")\n );\n flushedByteSize += boundary.byteSize;\n hoistableState && hoistHoistables(hoistableState, boundary.contentState);\n segment = boundary.row;\n null !== segment &&\n isEligibleForOutlining(request, boundary) &&\n 0 === --segment.pendingTasks &&\n finishSuspenseListRow(request, segment);\n request.renderState.generateStaticMarkup ||\n destination.push(\"\\x3c!--$--\\x3e\");\n segment = boundary.completedSegments;\n if (1 !== segment.length) throw Error(formatProdErrorMessage(391));\n flushSegment(request, destination, segment[0], hoistableState);\n request = request.renderState.generateStaticMarkup\n ? !0\n : destination.push(\"\\x3c!--/$--\\x3e\");\n return request;\n}\nfunction flushSegmentContainer(request, destination, segment, hoistableState) {\n writeStartSegment(\n destination,\n request.renderState,\n segment.parentFormatContext,\n segment.id\n );\n flushSegment(request, destination, segment, hoistableState);\n return writeEndSegment(destination, segment.parentFormatContext);\n}\nfunction flushCompletedBoundary(request, destination, boundary) {\n flushedByteSize = boundary.byteSize;\n for (\n var completedSegments = boundary.completedSegments, i = 0;\n i < completedSegments.length;\n i++\n )\n flushPartiallyCompletedSegment(\n request,\n destination,\n boundary,\n completedSegments[i]\n );\n completedSegments.length = 0;\n completedSegments = boundary.row;\n null !== completedSegments &&\n isEligibleForOutlining(request, boundary) &&\n 0 === --completedSegments.pendingTasks &&\n finishSuspenseListRow(request, completedSegments);\n writeHoistablesForBoundary(\n destination,\n boundary.contentState,\n request.renderState\n );\n completedSegments = request.resumableState;\n request = request.renderState;\n i = boundary.rootSegmentID;\n boundary = boundary.contentState;\n var requiresStyleInsertion = request.stylesToHoist,\n requiresViewTransitions = 0 !== (completedSegments.instructions & 128);\n request.stylesToHoist = !1;\n destination.push(request.startInlineScript);\n destination.push(\">\");\n requiresStyleInsertion\n ? (0 === (completedSegments.instructions & 4) &&\n ((completedSegments.instructions |= 4),\n destination.push(\n '$RX=function(b,c,d,e,f){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,null!=c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),f&&(a.cstck=f),b._reactRetry&&b._reactRetry())};'\n )),\n 0 === (completedSegments.instructions & 2) &&\n ((completedSegments.instructions |= 2),\n destination.push(\n '$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if(\"/$\"===d||\"/&\"===d)if(0===h)break;else h--;else\"$\"!==d&&\"$?\"!==d&&\"$~\"!==d&&\"$!\"!==d&&\"&\"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data=\"$\";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};\\n$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data=\"$~\",$RB.push(a,b),2===$RB.length&&(\"number\"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};'\n )),\n requiresViewTransitions &&\n 0 === (completedSegments.instructions & 256) &&\n ((completedSegments.instructions |= 256),\n destination.push(\n '$RV=function(B,g){function h(a,c){var e=a.getAttribute(c);e&&(c=a.style,l.push(a,c.viewTransitionName,c.viewTransitionClass),\"auto\"!==e&&(c.viewTransitionClass=e),(a=a.getAttribute(\"vt-name\"))||(a=\"_T_\"+N++ +\"_\"),a=CSS.escape(a)!==a?\"r-\"+btoa(a).replace(/=/g,\"\"):a,c.viewTransitionName=a,C=!0)}var C=!1,N=0,l=[];try{var f=document.__reactViewTransition;if(f){f.finished.finally($RV.bind(null,g));return}var m=new Map;for(f=1;f<g.length;f+=2)for(var k=g[f].querySelectorAll(\"[vt-share]\"),d=0;d<k.length;d++){var b=k[d];m.set(b.getAttribute(\"vt-name\"),b)}var u=[];for(k=0;k<g.length;k+=2){var D=g[k],x=D.parentNode;if(x){var v=x.getBoundingClientRect();if(v.left||v.top||v.width||v.height){b=D;for(f=0;b;){if(8===b.nodeType){var t=b.data;if(\"/$\"===t)if(0===f)break;else f--;else\"$\"!==t&&\"$?\"!==t&&\"$~\"!==t&&\"$!\"!==t||f++}else if(1===b.nodeType){d=b;var E=d.getAttribute(\"vt-name\"),y=m.get(E);h(d,y?\"vt-share\":\"vt-exit\");y&&(h(y,\"vt-share\"),m.set(E,null));for(var F=d.querySelectorAll(\"[vt-share]\"),\\nz=0;z<F.length;z++){var G=F[z],H=G.getAttribute(\"vt-name\"),I=m.get(H);I&&(h(G,\"vt-share\"),h(I,\"vt-share\"),m.set(H,null))}var J=d.querySelectorAll(\"[vt-parent-exit]\");for(d=0;d<J.length;d++)h(J[d],\"vt-parent-exit\")}b=b.nextSibling}for(var K=g[k+1],n=K.firstElementChild;n;){null!==m.get(n.getAttribute(\"vt-name\"))&&h(n,\"vt-enter\");var L=n.querySelectorAll(\"[vt-parent-enter]\");for(b=0;b<L.length;b++)h(L[b],\"vt-parent-enter\");n=n.nextElementSibling}b=x;do for(var p=b.firstElementChild;p;){var M=p.getAttribute(\"vt-update\");\\nM&&\"none\"!==M&&!l.includes(p)&&h(p,\"vt-update\");p=p.nextElementSibling}while((b=b.parentNode)&&1===b.nodeType&&\"none\"!==b.getAttribute(\"vt-update\"));u.push.apply(u,K.querySelectorAll(\\'img[src]:not([loading=\"lazy\"])\\'))}}}if(C){var A=document.__reactViewTransition=document.startViewTransition({update:function(){B(g);for(var a=[document.documentElement.clientHeight,document.fonts.ready],c={},e=0;e<u.length;c={g:c.g},e++)if(c.g=u[e],!c.g.complete){var q=c.g.getBoundingClientRect();0<q.bottom&&0<q.right&&\\nq.top<window.innerHeight&&q.left<window.innerWidth&&(q=new Promise(function(w){return function(r){w.g.addEventListener(\"load\",r);w.g.addEventListener(\"error\",r)}}(c)),a.push(q))}return Promise.race([Promise.all(a),new Promise(function(w){var r=performance.now();setTimeout(w,2300>r&&2E3<r?2300-r:500)})])},types:[]});A.ready.finally(function(){for(var a=l.length-3;0<=a;a-=3){var c=l[a],e=c.style;e.viewTransitionName=l[a+1];e.viewTransitionClass=l[a+1];\"\"===c.getAttribute(\"style\")&&c.removeAttribute(\"style\")}});\\nA.finished.finally(function(){document.__reactViewTransition===A&&(document.__reactViewTransition=null)});$RB=[];return}}catch(a){}B(g)}.bind(null,$RV);'\n )),\n 0 === (completedSegments.instructions & 8)\n ? ((completedSegments.instructions |= 8),\n destination.push(\n '$RM=new Map;$RR=function(n,w,p){function u(q){this._p=null;q()}for(var r=new Map,t=document,h,b,e=t.querySelectorAll(\"link[data-precedence],style[data-precedence]\"),v=[],k=0;b=e[k++];)\"not all\"===b.getAttribute(\"media\")?v.push(b):(\"LINK\"===b.tagName&&$RM.set(b.getAttribute(\"href\"),b),r.set(b.dataset.precedence,h=b));e=0;b=[];var l,a;for(k=!0;;){if(k){var f=p[e++];if(!f){k=!1;e=0;continue}var c=!1,m=0;var d=f[m++];if(a=$RM.get(d)){var g=a._p;c=!0}else{a=t.createElement(\"link\");a.href=d;a.rel=\\n\"stylesheet\";for(a.dataset.precedence=l=f[m++];g=f[m++];)a.setAttribute(g,f[m++]);g=a._p=new Promise(function(q,x){a.onload=u.bind(a,q);a.onerror=u.bind(a,x)});$RM.set(d,a)}d=a.getAttribute(\"media\");!g||d&&!matchMedia(d).matches||b.push(g);if(c)continue}else{a=v[e++];if(!a)break;l=a.getAttribute(\"data-precedence\");a.removeAttribute(\"media\")}c=r.get(l)||h;c===h&&(h=a);r.set(l,a);c?c.parentNode.insertBefore(a,c.nextSibling):(c=t.head,c.insertBefore(a,c.firstChild))}if(p=document.getElementById(n))p.previousSibling.data=\\n\"$~\";Promise.all(b).then($RC.bind(null,n,w),$RX.bind(null,n,\"CSS failed to load\"))};$RR(\"'\n ))\n : destination.push('$RR(\"'))\n : (0 === (completedSegments.instructions & 2) &&\n ((completedSegments.instructions |= 2),\n destination.push(\n '$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if(\"/$\"===d||\"/&\"===d)if(0===h)break;else h--;else\"$\"!==d&&\"$?\"!==d&&\"$~\"!==d&&\"$!\"!==d&&\"&\"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data=\"$\";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0};\\n$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data=\"$~\",$RB.push(a,b),2===$RB.length&&(\"number\"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};'\n )),\n requiresViewTransitions &&\n 0 === (completedSegments.instructions & 256) &&\n ((completedSegments.instructions |= 256),\n destination.push(\n '$RV=function(B,g){function h(a,c){var e=a.getAttribute(c);e&&(c=a.style,l.push(a,c.viewTransitionName,c.viewTransitionClass),\"auto\"!==e&&(c.viewTransitionClass=e),(a=a.getAttribute(\"vt-name\"))||(a=\"_T_\"+N++ +\"_\"),a=CSS.escape(a)!==a?\"r-\"+btoa(a).replace(/=/g,\"\"):a,c.viewTransitionName=a,C=!0)}var C=!1,N=0,l=[];try{var f=document.__reactViewTransition;if(f){f.finished.finally($RV.bind(null,g));return}var m=new Map;for(f=1;f<g.length;f+=2)for(var k=g[f].querySelectorAll(\"[vt-share]\"),d=0;d<k.length;d++){var b=k[d];m.set(b.getAttribute(\"vt-name\"),b)}var u=[];for(k=0;k<g.length;k+=2){var D=g[k],x=D.parentNode;if(x){var v=x.getBoundingClientRect();if(v.left||v.top||v.width||v.height){b=D;for(f=0;b;){if(8===b.nodeType){var t=b.data;if(\"/$\"===t)if(0===f)break;else f--;else\"$\"!==t&&\"$?\"!==t&&\"$~\"!==t&&\"$!\"!==t||f++}else if(1===b.nodeType){d=b;var E=d.getAttribute(\"vt-name\"),y=m.get(E);h(d,y?\"vt-share\":\"vt-exit\");y&&(h(y,\"vt-share\"),m.set(E,null));for(var F=d.querySelectorAll(\"[vt-share]\"),\\nz=0;z<F.length;z++){var G=F[z],H=G.getAttribute(\"vt-name\"),I=m.get(H);I&&(h(G,\"vt-share\"),h(I,\"vt-share\"),m.set(H,null))}var J=d.querySelectorAll(\"[vt-parent-exit]\");for(d=0;d<J.length;d++)h(J[d],\"vt-parent-exit\")}b=b.nextSibling}for(var K=g[k+1],n=K.firstElementChild;n;){null!==m.get(n.getAttribute(\"vt-name\"))&&h(n,\"vt-enter\");var L=n.querySelectorAll(\"[vt-parent-enter]\");for(b=0;b<L.length;b++)h(L[b],\"vt-parent-enter\");n=n.nextElementSibling}b=x;do for(var p=b.firstElementChild;p;){var M=p.getAttribute(\"vt-update\");\\nM&&\"none\"!==M&&!l.includes(p)&&h(p,\"vt-update\");p=p.nextElementSibling}while((b=b.parentNode)&&1===b.nodeType&&\"none\"!==b.getAttribute(\"vt-update\"));u.push.apply(u,K.querySelectorAll(\\'img[src]:not([loading=\"lazy\"])\\'))}}}if(C){var A=document.__reactViewTransition=document.startViewTransition({update:function(){B(g);for(var a=[document.documentElement.clientHeight,document.fonts.ready],c={},e=0;e<u.length;c={g:c.g},e++)if(c.g=u[e],!c.g.complete){var q=c.g.getBoundingClientRect();0<q.bottom&&0<q.right&&\\nq.top<window.innerHeight&&q.left<window.innerWidth&&(q=new Promise(function(w){return function(r){w.g.addEventListener(\"load\",r);w.g.addEventListener(\"error\",r)}}(c)),a.push(q))}return Promise.race([Promise.all(a),new Promise(function(w){var r=performance.now();setTimeout(w,2300>r&&2E3<r?2300-r:500)})])},types:[]});A.ready.finally(function(){for(var a=l.length-3;0<=a;a-=3){var c=l[a],e=c.style;e.viewTransitionName=l[a+1];e.viewTransitionClass=l[a+1];\"\"===c.getAttribute(\"style\")&&c.removeAttribute(\"style\")}});\\nA.finished.finally(function(){document.__reactViewTransition===A&&(document.__reactViewTransition=null)});$RB=[];return}}catch(a){}B(g)}.bind(null,$RV);'\n )),\n destination.push('$RC(\"'));\n completedSegments = i.toString(16);\n destination.push(request.boundaryPrefix);\n destination.push(completedSegments);\n destination.push('\",\"');\n destination.push(request.segmentPrefix);\n destination.push(completedSegments);\n requiresStyleInsertion\n ? (destination.push('\",'),\n writeStyleResourceDependenciesInJS(destination, boundary))\n : destination.push('\"');\n boundary = destination.push(\")\\x3c/script>\");\n return writeBootstrap(destination, request) && boundary;\n}\nfunction flushPartiallyCompletedSegment(\n request,\n destination,\n boundary,\n segment\n) {\n if (2 === segment.status) return !0;\n var hoistableState = boundary.contentState,\n segmentID = segment.id;\n if (-1 === segmentID) {\n if (-1 === (segment.id = boundary.rootSegmentID))\n throw Error(formatProdErrorMessage(392));\n return flushSegmentContainer(request, destination, segment, hoistableState);\n }\n if (segmentID === boundary.rootSegmentID)\n return flushSegmentContainer(request, destination, segment, hoistableState);\n flushSegmentContainer(request, destination, segment, hoistableState);\n boundary = request.resumableState;\n request = request.renderState;\n destination.push(request.startInlineScript);\n destination.push(\">\");\n 0 === (boundary.instructions & 1)\n ? ((boundary.instructions |= 1),\n destination.push(\n '$RS=function(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS(\"'\n ))\n : destination.push('$RS(\"');\n destination.push(request.segmentPrefix);\n segmentID = segmentID.toString(16);\n destination.push(segmentID);\n destination.push('\",\"');\n destination.push(request.placeholderPrefix);\n destination.push(segmentID);\n destination = destination.push('\")\\x3c/script>');\n return destination;\n}\nvar flushingPartialBoundaries = !1;\nfunction flushCompletedQueues(request, destination) {\n try {\n if (!(0 < request.pendingRootTasks)) {\n var i,\n completedRootSegment = request.completedRootSegment;\n if (null !== completedRootSegment) {\n if (5 === completedRootSegment.status) return;\n var completedPreambleSegments = request.completedPreambleSegments;\n if (null === completedPreambleSegments) return;\n flushedByteSize = request.byteSize;\n var resumableState = request.resumableState,\n renderState = request.renderState,\n preamble = renderState.preamble,\n htmlChunks = preamble.htmlChunks,\n headChunks = preamble.headChunks,\n i$jscomp$0;\n if (htmlChunks) {\n for (i$jscomp$0 = 0; i$jscomp$0 < htmlChunks.length; i$jscomp$0++)\n destination.push(htmlChunks[i$jscomp$0]);\n if (headChunks)\n for (i$jscomp$0 = 0; i$jscomp$0 < headChunks.length; i$jscomp$0++)\n destination.push(headChunks[i$jscomp$0]);\n else {\n var chunk = startChunkForTag(\"head\");\n destination.push(chunk);\n destination.push(\">\");\n }\n } else if (headChunks)\n for (i$jscomp$0 = 0; i$jscomp$0 < headChunks.length; i$jscomp$0++)\n destination.push(headChunks[i$jscomp$0]);\n var charsetChunks = renderState.charsetChunks;\n for (i$jscomp$0 = 0; i$jscomp$0 < charsetChunks.length; i$jscomp$0++)\n destination.push(charsetChunks[i$jscomp$0]);\n charsetChunks.length = 0;\n renderState.preconnects.forEach(flushResource, destination);\n renderState.preconnects.clear();\n var viewportChunks = renderState.viewportChunks;\n for (i$jscomp$0 = 0; i$jscomp$0 < viewportChunks.length; i$jscomp$0++)\n destination.push(viewportChunks[i$jscomp$0]);\n viewportChunks.length = 0;\n renderState.fontPreloads.forEach(flushResource, destination);\n renderState.fontPreloads.clear();\n renderState.highImagePreloads.forEach(flushResource, destination);\n renderState.highImagePreloads.clear();\n currentlyFlushingRenderState = renderState;\n renderState.styles.forEach(flushStylesInPreamble, destination);\n currentlyFlushingRenderState = null;\n var importMapChunks = renderState.importMapChunks;\n for (i$jscomp$0 = 0; i$jscomp$0 < importMapChunks.length; i$jscomp$0++)\n destination.push(importMapChunks[i$jscomp$0]);\n importMapChunks.length = 0;\n renderState.bootstrapScripts.forEach(flushResource, destination);\n renderState.scripts.forEach(flushResource, destination);\n renderState.scripts.clear();\n renderState.bulkPreloads.forEach(flushResource, destination);\n renderState.bulkPreloads.clear();\n resumableState.instructions |= 32;\n var hoistableChunks = renderState.hoistableChunks;\n for (i$jscomp$0 = 0; i$jscomp$0 < hoistableChunks.length; i$jscomp$0++)\n destination.push(hoistableChunks[i$jscomp$0]);\n for (\n resumableState = hoistableChunks.length = 0;\n resumableState < completedPreambleSegments.length;\n resumableState++\n ) {\n var segments = completedPreambleSegments[resumableState];\n for (renderState = 0; renderState < segments.length; renderState++)\n flushSegment(request, destination, segments[renderState], null);\n }\n var preamble$jscomp$0 = request.renderState.preamble,\n headChunks$jscomp$0 = preamble$jscomp$0.headChunks;\n if (preamble$jscomp$0.htmlChunks || headChunks$jscomp$0) {\n var chunk$jscomp$0 = endChunkForTag(\"head\");\n destination.push(chunk$jscomp$0);\n }\n var bodyChunks = preamble$jscomp$0.bodyChunks;\n if (bodyChunks)\n for (\n completedPreambleSegments = 0;\n completedPreambleSegments < bodyChunks.length;\n completedPreambleSegments++\n )\n destination.push(bodyChunks[completedPreambleSegments]);\n flushSegment(request, destination, completedRootSegment, null);\n request.completedRootSegment = null;\n var renderState$jscomp$0 = request.renderState;\n if (\n 0 !== request.allPendingTasks ||\n 0 !== request.clientRenderedBoundaries.length ||\n 0 !== request.completedBoundaries.length ||\n (null !== request.trackedPostpones &&\n (0 !== request.trackedPostpones.rootNodes.length ||\n null !== request.trackedPostpones.rootSlots))\n ) {\n var resumableState$jscomp$0 = request.resumableState;\n if (0 === (resumableState$jscomp$0.instructions & 64)) {\n resumableState$jscomp$0.instructions |= 64;\n destination.push(renderState$jscomp$0.startInlineScript);\n if (0 === (resumableState$jscomp$0.instructions & 32)) {\n resumableState$jscomp$0.instructions |= 32;\n var shellId = \"_\" + resumableState$jscomp$0.idPrefix + \"R_\";\n destination.push(' id=\"');\n var chunk$jscomp$1 = escapeTextForBrowser(shellId);\n destination.push(chunk$jscomp$1);\n destination.push('\"');\n }\n destination.push(\">\");\n destination.push(\n \"requestAnimationFrame(function(){$RT=performance.now()});\"\n );\n destination.push(\"\\x3c/script>\");\n }\n }\n writeBootstrap(destination, renderState$jscomp$0);\n }\n var renderState$jscomp$1 = request.renderState;\n completedRootSegment = 0;\n var viewportChunks$jscomp$0 = renderState$jscomp$1.viewportChunks;\n for (\n completedRootSegment = 0;\n completedRootSegment < viewportChunks$jscomp$0.length;\n completedRootSegment++\n )\n destination.push(viewportChunks$jscomp$0[completedRootSegment]);\n viewportChunks$jscomp$0.length = 0;\n renderState$jscomp$1.preconnects.forEach(flushResource, destination);\n renderState$jscomp$1.preconnects.clear();\n renderState$jscomp$1.fontPreloads.forEach(flushResource, destination);\n renderState$jscomp$1.fontPreloads.clear();\n renderState$jscomp$1.highImagePreloads.forEach(\n flushResource,\n destination\n );\n renderState$jscomp$1.highImagePreloads.clear();\n renderState$jscomp$1.styles.forEach(preloadLateStyles, destination);\n renderState$jscomp$1.scripts.forEach(flushResource, destination);\n renderState$jscomp$1.scripts.clear();\n renderState$jscomp$1.bulkPreloads.forEach(flushResource, destination);\n renderState$jscomp$1.bulkPreloads.clear();\n var hoistableChunks$jscomp$0 = renderState$jscomp$1.hoistableChunks;\n for (\n completedRootSegment = 0;\n completedRootSegment < hoistableChunks$jscomp$0.length;\n completedRootSegment++\n )\n destination.push(hoistableChunks$jscomp$0[completedRootSegment]);\n hoistableChunks$jscomp$0.length = 0;\n var clientRenderedBoundaries = request.clientRenderedBoundaries;\n for (i = 0; i < clientRenderedBoundaries.length; i++) {\n var boundary = clientRenderedBoundaries[i];\n renderState$jscomp$1 = destination;\n var resumableState$jscomp$1 = request.resumableState,\n renderState$jscomp$2 = request.renderState,\n id = boundary.rootSegmentID,\n errorDigest = boundary.errorDigest;\n renderState$jscomp$1.push(renderState$jscomp$2.startInlineScript);\n renderState$jscomp$1.push(\">\");\n 0 === (resumableState$jscomp$1.instructions & 4)\n ? ((resumableState$jscomp$1.instructions |= 4),\n renderState$jscomp$1.push(\n '$RX=function(b,c,d,e,f){var a=document.getElementById(b);a&&(b=a.previousSibling,b.data=\"$!\",a=a.dataset,null!=c&&(a.dgst=c),d&&(a.msg=d),e&&(a.stck=e),f&&(a.cstck=f),b._reactRetry&&b._reactRetry())};;$RX(\"'\n ))\n : renderState$jscomp$1.push('$RX(\"');\n renderState$jscomp$1.push(renderState$jscomp$2.boundaryPrefix);\n var chunk$jscomp$2 = id.toString(16);\n renderState$jscomp$1.push(chunk$jscomp$2);\n renderState$jscomp$1.push('\"');\n if (null != errorDigest)\n if ((renderState$jscomp$1.push(\",\"), null == errorDigest))\n renderState$jscomp$1.push(\"null\");\n else {\n var chunk$jscomp$3 =\n escapeJSStringsForInstructionScripts(errorDigest);\n renderState$jscomp$1.push(chunk$jscomp$3);\n }\n var JSCompiler_inline_result =\n renderState$jscomp$1.push(\")\\x3c/script>\");\n if (!JSCompiler_inline_result) {\n request.destination = null;\n i++;\n clientRenderedBoundaries.splice(0, i);\n return;\n }\n }\n clientRenderedBoundaries.splice(0, i);\n var completedBoundaries = request.completedBoundaries;\n for (i = 0; i < completedBoundaries.length; i++)\n if (\n !flushCompletedBoundary(request, destination, completedBoundaries[i])\n ) {\n request.destination = null;\n i++;\n completedBoundaries.splice(0, i);\n return;\n }\n completedBoundaries.splice(0, i);\n flushingPartialBoundaries = !0;\n var partialBoundaries = request.partialBoundaries;\n for (i = 0; i < partialBoundaries.length; i++) {\n var boundary$70 = partialBoundaries[i];\n a: {\n clientRenderedBoundaries = request;\n boundary = destination;\n flushedByteSize = boundary$70.byteSize;\n var completedSegments = boundary$70.completedSegments;\n for (\n JSCompiler_inline_result = 0;\n JSCompiler_inline_result < completedSegments.length;\n JSCompiler_inline_result++\n )\n if (\n !flushPartiallyCompletedSegment(\n clientRenderedBoundaries,\n boundary,\n boundary$70,\n completedSegments[JSCompiler_inline_result]\n )\n ) {\n JSCompiler_inline_result++;\n completedSegments.splice(0, JSCompiler_inline_result);\n var JSCompiler_inline_result$jscomp$0 = !1;\n break a;\n }\n completedSegments.splice(0, JSCompiler_inline_result);\n var row = boundary$70.row;\n null !== row &&\n row.together &&\n 1 === boundary$70.pendingTasks &&\n (1 === row.pendingTasks\n ? unblockSuspenseListRow(\n clientRenderedBoundaries,\n row,\n row.hoistables\n )\n : row.pendingTasks--);\n JSCompiler_inline_result$jscomp$0 = writeHoistablesForBoundary(\n boundary,\n boundary$70.contentState,\n clientRenderedBoundaries.renderState\n );\n }\n if (!JSCompiler_inline_result$jscomp$0) {\n request.destination = null;\n i++;\n partialBoundaries.splice(0, i);\n return;\n }\n }\n partialBoundaries.splice(0, i);\n flushingPartialBoundaries = !1;\n var largeBoundaries = request.completedBoundaries;\n for (i = 0; i < largeBoundaries.length; i++)\n if (!flushCompletedBoundary(request, destination, largeBoundaries[i])) {\n request.destination = null;\n i++;\n largeBoundaries.splice(0, i);\n return;\n }\n largeBoundaries.splice(0, i);\n }\n } finally {\n (flushingPartialBoundaries = !1),\n (i = request.postponedState),\n null !== i && (i.nextSegmentId = request.nextSegmentId),\n 0 === request.allPendingTasks &&\n 0 === request.clientRenderedBoundaries.length &&\n 0 === request.completedBoundaries.length &&\n ((request.flushScheduled = !1),\n (i = request.resumableState),\n i.hasBody &&\n ((partialBoundaries = endChunkForTag(\"body\")),\n destination.push(partialBoundaries)),\n i.hasHtml && ((i = endChunkForTag(\"html\")), destination.push(i)),\n endRenderLifetime(request),\n (request.status = 13),\n destination.push(null),\n (request.destination = null));\n }\n}\nfunction enqueueFlush(request) {\n if (\n !1 === request.flushScheduled &&\n 0 === request.pingedTasks.length &&\n null !== request.destination\n ) {\n request.flushScheduled = !0;\n var destination = request.destination;\n destination\n ? flushCompletedQueues(request, destination)\n : (request.flushScheduled = !1);\n }\n}\nfunction startFlowing(request, destination) {\n if (12 === request.status)\n (request.status = 13),\n (request = request.fatalError),\n isRecoverableError(request) &&\n (request = cloneRecoverableErrorAsFatal(request)),\n destination.destroy(request);\n else if (13 !== request.status && null === request.destination) {\n request.destination = destination;\n try {\n flushCompletedQueues(request, destination);\n } catch (error$72) {\n logRecoverableError(request, error$72, {}), fatalError(request, error$72);\n }\n }\n}\nfunction finishAbort(request, abortableTasks) {\n try {\n if (0 < abortableTasks.size) {\n var error = request.fatalError;\n abortableTasks.forEach(function (task) {\n return finishAbortedTask(task, request, error);\n });\n abortableTasks.clear();\n }\n null !== request.destination &&\n flushCompletedQueues(request, request.destination);\n } catch (error$73) {\n logRecoverableError(request, error$73, {}), fatalError(request, error$73);\n }\n}\nfunction endRenderLifetime(request) {\n request = request.renderLifetimeController;\n null !== request && request.abort(\"The render ended.\");\n}\nfunction abort(request, reason) {\n if (!(request.aborted || (11 !== request.status && 10 !== request.status))) {\n endRenderLifetime(request);\n var isRecoverableReason =\n \"object\" === typeof reason &&\n null !== reason &&\n reason.$$typeof === REACT_RECOVERABLE_TYPE;\n request.aborted = !0;\n reason = isRecoverableReason\n ? createRecoverableError(reason)\n : void 0 === reason\n ? Error(formatProdErrorMessage(432))\n : \"object\" === typeof reason &&\n null !== reason &&\n \"function\" === typeof reason.then\n ? Error(formatProdErrorMessage(530))\n : reason;\n request.fatalError = reason;\n reason = request.abortableTasks;\n reason.forEach(function (task) {\n return abortTask(task, request);\n });\n finishAbort(request, reason);\n }\n}\nfunction addToReplayParent(node, parentKeyPath, trackedPostpones) {\n if (null === parentKeyPath) trackedPostpones.rootNodes.push(node);\n else {\n var workingMap = trackedPostpones.workingMap,\n parentNode = workingMap.get(parentKeyPath);\n void 0 === parentNode &&\n ((parentNode = [parentKeyPath[1], parentKeyPath[2], [], null]),\n workingMap.set(parentKeyPath, parentNode),\n addToReplayParent(parentNode, parentKeyPath[0], trackedPostpones));\n parentNode[2].push(node);\n }\n}\nfunction onError() {}\nfunction renderToStringImpl(\n children,\n options,\n generateStaticMarkup,\n abortReason\n) {\n var didFatal = !1,\n fatalError = null,\n result = \"\",\n readyToStream = !1;\n options = createResumableState(options ? options.identifierPrefix : void 0);\n children = createRequest(\n children,\n options,\n createRenderState(options, generateStaticMarkup),\n createFormatContext(0, null, 0, null),\n Infinity,\n onError,\n void 0,\n void 0,\n function () {\n readyToStream = !0;\n },\n void 0,\n void 0,\n void 0\n );\n children.flushScheduled = null !== children.destination;\n performWork(children);\n 10 === children.status && (children.status = 11);\n null === children.trackedPostpones &&\n safelyEmitEarlyPreloads(children, 0 === children.pendingRootTasks);\n abort(children, abortReason);\n startFlowing(children, {\n push: function (chunk) {\n null !== chunk && (result += chunk);\n return !0;\n },\n destroy: function (error) {\n didFatal = !0;\n fatalError = error;\n }\n });\n if (didFatal && fatalError !== abortReason) throw fatalError;\n if (!readyToStream) throw Error(formatProdErrorMessage(426));\n return result;\n}\nexports.renderToStaticMarkup = function (children, options) {\n return renderToStringImpl(\n children,\n options,\n !0,\n 'The server used \"renderToStaticMarkup\" which does not support Suspense. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server'\n );\n};\nexports.renderToString = function (children, options) {\n return renderToStringImpl(\n children,\n options,\n !1,\n 'The server used \"renderToString\" which does not support Suspense. If you intended for this Suspense boundary to render the fallback content on the server consider throwing an Error somewhere within the Suspense boundary. If you intended to have the server wait for the suspended component please switch to \"renderToReadableStream\" which supports Suspense on the server'\n );\n};\nexports.version = \"19.3.0\";\n","'use strict';\n\nvar b;\nvar l;\nif (process.env.NODE_ENV === 'production') {\n b = require('./cjs/react-dom-server.edge.production.js');\n l = require('./cjs/react-dom-server-legacy.browser.production.js');\n} else {\n b = require('./cjs/react-dom-server.edge.development.js');\n l = require('./cjs/react-dom-server-legacy.browser.development.js');\n}\n\nexports.version = b.version;\nexports.renderToReadableStream = b.renderToReadableStream;\nexports.renderToString = l.renderToString;\nexports.renderToStaticMarkup = l.renderToStaticMarkup;\nexports.resume = b.resume;\n","// src/patterns.json\nvar patterns_default = [\n \" daum[ /]\",\n \" deusu/\",\n \"(?:^|[^g])news(?!sapphire)\",\n \"(?<! channel/|google/)google(?!(?:wv|app|/google| pixel))\",\n \"(?<! cu)bots?(?:\\\\b|_)\",\n \"(?<!cam)scan\",\n \"(?<!lib)http\",\n \"24x7\",\n \";\\\\s\\\\w+;$\",\n \"@[a-z][\\\\w-]+\\\\.\",\n \"\\\\(\\\\)\",\n \"\\\\.com\\\\b\",\n \"\\\\b\\\\w+/1\\\\.0;\",\n \"\\\\bbw/\",\n \"\\\\bdlc\\\\b\",\n \"\\\\bort/\",\n \"\\\\bperl\\\\b\",\n \"\\\\btime/\",\n \"\\\\|\",\n \"^[<\\\\(;]\",\n \"^[\\\\w \\\\.\\\\-\\\\(?:\\\\):%]+(?:/v?\\\\d+(?:\\\\.\\\\d+)?(?:\\\\.\\\\d{1,10})*?)?(?:,|$)\",\n \"^[\\\\w\\\\-]+/[\\\\w]+$\",\n \"^[^ ]{50,}$\",\n \"^\\\\d+\\\\b\",\n \"^\\\\w*search\\\\b\",\n \"^\\\\w+/[\\\\w\\\\(\\\\)]*$\",\n \"^\\\\w+/\\\\d\\\\.\\\\d\\\\s\\\\([\\\\w@]+\\\\)$\",\n \"^active\",\n \"^ad muncher\",\n \"^amaya\",\n \"^apache/\",\n \"^avsdevicesdk/\",\n \"^azure\",\n \"^biglotron\",\n \"^blackbox exporter\",\n \"^bot\",\n \"^clamav[ /]\",\n \"^claude-code/\",\n \"^client/\",\n \"^cobweb/\",\n \"^custom\",\n \"^ddg[_-]android\",\n \"^discourse\",\n \"^dispatch/\\\\d\",\n \"^downcast/\",\n \"^duckduckgo\",\n \"^email\",\n \"^exodusmovement\",\n \"^facebook\",\n \"^getright/\",\n \"^gozilla/\",\n \"^hobbit\",\n \"^hotzonu\",\n \"^hwcdn/\",\n \"^igetter/\",\n \"^jeode/\",\n \"^jetty/\",\n \"^jigsaw\",\n \"^microsoft bits\",\n \"^movabletype\",\n \"^mozilla/\\\\d\\\\.\\\\d\\\\s[\\\\w\\\\.-]+$\",\n \"^mozilla/\\\\d\\\\.\\\\d\\\\s\\\\((?:compatible;)?(?:\\\\s?[\\\\w\\\\d-.]+\\\\/\\\\d+\\\\.\\\\d+)?\\\\)$\",\n \"^navermailapp\",\n \"^netsurf\",\n \"^offline\",\n \"^openai/\",\n \"^owler\",\n \"^php\",\n \"^postman\",\n \"^ps_daily/\",\n \"^python\",\n \"^rank\",\n \"^read\",\n \"^reed\",\n \"^remove\\\\.bg/\",\n \"^rest\",\n \"^rss\",\n \"^snapchat\",\n \"^sora \",\n \"^space bison\",\n \"^stape/\",\n \"^svn\",\n \"^swcd \",\n \"^taringa\",\n \"^thumbor/\",\n \"^track\",\n \"^w3c\",\n \"^webbandit/\",\n \"^webcopier\",\n \"^wget\",\n \"^whatsapp\",\n \"^wordpress\",\n \"^xenu link sleuth\",\n \"^yahoo\",\n \"^yandex\",\n \"^zdm/\\\\d\",\n \"^zoom marketplace/\",\n \"abuse\",\n \"advisor\",\n \"agent\\\\b\",\n \"analyzer\",\n \"archive\",\n \"ask jeeves/teoma\",\n \"attracta\",\n \"audit\",\n \"bluecoat drtr\",\n \"browsex\",\n \"burpcollaborator\",\n \"capture\",\n \"catch\",\n \"check\\\\b\",\n \"checker\",\n \"chrome-lighthouse\",\n \"chromeframe\",\n \"classifier\",\n \"cloudflare\",\n \"collapsify\\\\b\",\n \"convertify\",\n \"cookiehubverify/\",\n \"crawl\",\n \"cursor/\",\n \"cypress/\",\n \"dareboost\",\n \"datanyze\",\n \"dejaclick\",\n \"detect\",\n \"discovery\",\n \"dmbrowser\",\n \"download\",\n \"exaleadcloudview\",\n \"feed\",\n \"firephp\",\n \"foregenix\",\n \"functionize\",\n \"grab\",\n \"hardenize\\\\b\",\n \"headless\",\n \"hotjar\",\n \"httrack\",\n \"hubspot marketing grader\",\n \"ibisbrowser\",\n \"infrawatch\",\n \"insight\",\n \"inspect\",\n \"iplabel\",\n \"java(?!;)\",\n \"library\",\n \"linkcheck\",\n \"linktiger\",\n \"mail\\\\.ru/\",\n \"manager\",\n \"manus-user/\",\n \"marketgoo/\",\n \"measure\",\n \"monitor\\\\b\",\n \"neustar wpm\",\n \"node\\\\b\",\n \"nutch\",\n \"offbyone\",\n \"openvas\",\n \"optimize\",\n \"pageburst\",\n \"pagespeed\",\n \"parser\",\n \"phantomjs\",\n \"pingdom\",\n \"playwright\",\n \"powermarks\",\n \"preview\",\n \"productfinder\",\n \"prospectingstudio\",\n \"proxy\",\n \"ptst[ /]\\\\d\",\n \"radar\",\n \"readable/\",\n \"retriever\",\n \"rexx;\",\n \"rigor\",\n \"rss\\\\b\",\n \"scrape\",\n \"securityheaders\",\n \"selenium\",\n \"server\",\n \"silktide\",\n \"sindup/\",\n \"sogou\",\n \"sparkler/\",\n \"speedcurve\",\n \"spider\",\n \"splash\",\n \"statuscake\",\n \"supercleaner\",\n \"synapse\",\n \"synthetic\",\n \"testlocally\",\n \"tools\",\n \"torrent\",\n \"transcoder\",\n \"url\",\n \"validator\",\n \"virtuoso\",\n \"wappalyzer\",\n \"watchtowr\",\n \"webglance\",\n \"webkit2png\",\n \"whatcms/\",\n \"xtate/\"\n];\n\n// src/pattern.ts\nvar fullPattern = \" daum[ /]| deusu/|(?:^|[^g])news(?!sapphire)|(?<! channel/|google/)google(?!(?:wv|app|/google| pixel))|(?<! cu)bots?(?:\\\\b|_)|(?<!cam)scan|(?<!lib)http|24x7|;\\\\s\\\\w+;$|@[a-z][\\\\w-]+\\\\.|\\\\(\\\\)|\\\\.com\\\\b|\\\\b\\\\w+/1\\\\.0;|\\\\bbw/|\\\\bdlc\\\\b|\\\\bort/|\\\\bperl\\\\b|\\\\btime/|\\\\||^[<\\\\(;]|^[\\\\w \\\\.\\\\-\\\\(?:\\\\):%]+(?:/v?\\\\d+(?:\\\\.\\\\d+)?(?:\\\\.\\\\d{1,10})*?)?(?:,|$)|^[\\\\w\\\\-]+/[\\\\w]+$|^[^ ]{50,}$|^\\\\d+\\\\b|^\\\\w*search\\\\b|^\\\\w+/[\\\\w\\\\(\\\\)]*$|^\\\\w+/\\\\d\\\\.\\\\d\\\\s\\\\([\\\\w@]+\\\\)$|^active|^ad muncher|^amaya|^apache/|^avsdevicesdk/|^azure|^biglotron|^blackbox exporter|^bot|^clamav[ /]|^claude-code/|^client/|^cobweb/|^custom|^ddg[_-]android|^discourse|^dispatch/\\\\d|^downcast/|^duckduckgo|^email|^exodusmovement|^facebook|^getright/|^gozilla/|^hobbit|^hotzonu|^hwcdn/|^igetter/|^jeode/|^jetty/|^jigsaw|^microsoft bits|^movabletype|^mozilla/\\\\d\\\\.\\\\d\\\\s[\\\\w\\\\.-]+$|^mozilla/\\\\d\\\\.\\\\d\\\\s\\\\((?:compatible;)?(?:\\\\s?[\\\\w\\\\d-.]+\\\\/\\\\d+\\\\.\\\\d+)?\\\\)$|^navermailapp|^netsurf|^offline|^openai/|^owler|^php|^postman|^ps_daily/|^python|^rank|^read|^reed|^remove\\\\.bg/|^rest|^rss|^snapchat|^sora |^space bison|^stape/|^svn|^swcd |^taringa|^thumbor/|^track|^w3c|^webbandit/|^webcopier|^wget|^whatsapp|^wordpress|^xenu link sleuth|^yahoo|^yandex|^zdm/\\\\d|^zoom marketplace/|abuse|advisor|agent\\\\b|analyzer|archive|ask jeeves/teoma|attracta|audit|bluecoat drtr|browsex|burpcollaborator|capture|catch|check\\\\b|checker|chrome-lighthouse|chromeframe|classifier|cloudflare|collapsify\\\\b|convertify|cookiehubverify/|crawl|cursor/|cypress/|dareboost|datanyze|dejaclick|detect|discovery|dmbrowser|download|exaleadcloudview|feed|firephp|foregenix|functionize|grab|hardenize\\\\b|headless|hotjar|httrack|hubspot marketing grader|ibisbrowser|infrawatch|insight|inspect|iplabel|java(?!;)|library|linkcheck|linktiger|mail\\\\.ru/|manager|manus-user/|marketgoo/|measure|monitor\\\\b|neustar wpm|node\\\\b|nutch|offbyone|openvas|optimize|pageburst|pagespeed|parser|phantomjs|pingdom|playwright|powermarks|preview|productfinder|prospectingstudio|proxy|ptst[ /]\\\\d|radar|readable/|retriever|rexx;|rigor|rss\\\\b|scrape|securityheaders|selenium|server|silktide|sindup/|sogou|sparkler/|speedcurve|spider|splash|statuscake|supercleaner|synapse|synthetic|testlocally|tools|torrent|transcoder|url|validator|virtuoso|wappalyzer|watchtowr|webglance|webkit2png|whatcms/|xtate/\";\n\n// src/index.ts\nvar naivePattern = /bot|crawl|http|lighthouse|scan|search|spider/i;\nvar pattern;\nfunction getPattern() {\n if (pattern instanceof RegExp) {\n return pattern;\n }\n try {\n pattern = new RegExp(fullPattern, \"i\");\n } catch (error) {\n pattern = naivePattern;\n }\n return pattern;\n}\nvar isNonEmptyString = (value) => typeof value === \"string\" && value !== \"\";\nvar list = patterns_default;\nfunction isBot(userAgent) {\n return isNonEmptyString(userAgent) && getPattern().test(userAgent);\n}\nvar isBotNaive = (userAgent) => isNonEmptyString(userAgent) && naivePattern.test(userAgent);\nvar createIsBot = (customPattern) => (userAgent) => isNonEmptyString(userAgent) && customPattern.test(userAgent);\nvar createIsBotFromList = (list2) => {\n const pattern2 = new RegExp(list2.join(\"|\"), \"i\");\n return (userAgent) => isNonEmptyString(userAgent) && pattern2.test(userAgent);\n};\nvar findBotMatch = (userAgent) => {\n var _a, _b;\n return (_b = (_a = userAgent == null ? void 0 : userAgent.match(getPattern())) == null ? void 0 : _a[0]) != null ? _b : null;\n};\nvar findBotMatches = (userAgent) => list.map((part) => {\n var _a;\n return (_a = userAgent == null ? void 0 : userAgent.match(new RegExp(part, \"i\"))) == null ? void 0 : _a[0];\n}).filter(isNonEmptyString);\nvar findBotPattern = (userAgent) => {\n var _a;\n return userAgent ? (_a = list.find((pattern2) => new RegExp(pattern2, \"i\").test(userAgent))) != null ? _a : null : null;\n};\nvar findBotPatterns = (userAgent) => userAgent ? list.filter((pattern2) => new RegExp(pattern2, \"i\").test(userAgent)) : [];\nvar isbot = isBot;\nvar isbotNaive = isBotNaive;\nvar createIsbot = createIsBot;\nvar createIsbotFromList = createIsBotFromList;\nvar isbotMatch = findBotMatch;\nvar isbotMatches = findBotMatches;\nvar isbotPattern = findBotPattern;\nvar isbotPatterns = findBotPatterns;\nexport {\n createIsBot,\n createIsBotFromList,\n createIsbot,\n createIsbotFromList,\n findBotMatch,\n findBotMatches,\n findBotPattern,\n findBotPatterns,\n getPattern,\n isBot,\n isBotNaive,\n isbot,\n isbotMatch,\n isbotMatches,\n isbotNaive,\n isbotPattern,\n isbotPatterns,\n list\n};\n","import { createSsrStreamResponse, getSsrStatus, transformReadableStreamWithRouter, waitForRequest } from \"@tanstack/router-core/ssr/server\";\nimport ReactDOMServer from \"react-dom/server\";\nimport { PassThrough, Readable } from \"node:stream\";\nimport { isbot } from \"isbot\";\n//#region src/ssr/renderRouterToStream.tsx\nvar renderRouterToStream = async ({ request, router, responseHeaders, children }) => {\n\tconst signal = request.signal;\n\tif (signal.aborted) {\n\t\trouter.serverSsr?.cleanup();\n\t\tthrow signal.reason;\n\t}\n\tlet rendererTeardown = false;\n\tconst bot = isbot(request.headers.get(\"User-Agent\"));\n\tconst onError = (renderer) => (error, info) => {\n\t\tif (!rendererTeardown && !signal.aborted) console.error(`Error in ${renderer}:`, error, info);\n\t};\n\ttry {\n\t\tif (typeof ReactDOMServer.renderToReadableStream === \"function\") {\n\t\t\tconst stream = await ReactDOMServer.renderToReadableStream(children, {\n\t\t\t\tsignal,\n\t\t\t\tnonce: router.options.ssr?.nonce,\n\t\t\t\tprogressiveChunkSize: Number.POSITIVE_INFINITY,\n\t\t\t\tonError: onError(\"renderToReadableStream\")\n\t\t\t});\n\t\t\tconst rendererAbort = bot ? new AbortController() : void 0;\n\t\t\tconst responseStream = transformReadableStreamWithRouter(router, stream, {\n\t\t\t\trendererSafePoint: \"script-close\",\n\t\t\t\tsignal,\n\t\t\t\tonAbort: (reason) => {\n\t\t\t\t\trendererTeardown = true;\n\t\t\t\t\trendererAbort?.abort(reason);\n\t\t\t\t}\n\t\t\t});\n\t\t\tif (rendererAbort) await waitForRequest(stream.allReady, rendererAbort.signal);\n\t\t\treturn createSsrStreamResponse(router, new Response(responseStream, {\n\t\t\t\tstatus: getSsrStatus(router),\n\t\t\t\theaders: responseHeaders\n\t\t\t}));\n\t\t}\n\t\tif (typeof ReactDOMServer.renderToPipeableStream === \"function\") {\n\t\t\tconst reactAppPassthrough = new PassThrough();\n\t\t\tlet pipeable;\n\t\t\tlet resolveReady;\n\t\t\tconst ready = new Promise((resolve) => {\n\t\t\t\tresolveReady = resolve;\n\t\t\t});\n\t\t\tconst rendererAbort = new AbortController();\n\t\t\tconst abortPipeable = (reason) => {\n\t\t\t\tif (rendererTeardown) return;\n\t\t\t\trendererTeardown = true;\n\t\t\t\trendererAbort.abort(reason);\n\t\t\t\ttry {\n\t\t\t\t\tpipeable?.abort(reason);\n\t\t\t\t} catch {}\n\t\t\t};\n\t\t\ttry {\n\t\t\t\tpipeable = ReactDOMServer.renderToPipeableStream(children, {\n\t\t\t\t\tnonce: router.options.ssr?.nonce,\n\t\t\t\t\tprogressiveChunkSize: Number.POSITIVE_INFINITY,\n\t\t\t\t\t...bot ? { onAllReady: resolveReady } : { onShellReady: resolveReady },\n\t\t\t\t\tonError: onError(\"renderToPipeableStream\"),\n\t\t\t\t\tonShellError: (error) => rendererAbort.abort(error)\n\t\t\t\t});\n\t\t\t\tconst responseStream = transformReadableStreamWithRouter(router, Readable.toWeb(reactAppPassthrough), {\n\t\t\t\t\trendererSafePoint: \"script-close\",\n\t\t\t\t\tsignal,\n\t\t\t\t\tonAbort: abortPipeable\n\t\t\t\t});\n\t\t\t\tawait waitForRequest(ready, rendererAbort.signal);\n\t\t\t\tpipeable.pipe(reactAppPassthrough);\n\t\t\t\treturn createSsrStreamResponse(router, new Response(responseStream, {\n\t\t\t\t\tstatus: getSsrStatus(router),\n\t\t\t\t\theaders: responseHeaders\n\t\t\t\t}));\n\t\t\t} catch (error) {\n\t\t\t\tabortPipeable(error);\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t}\n\t\tthrow new Error(\"No renderToReadableStream or renderToPipeableStream found in react-dom/server. Ensure you are using a version of react-dom that supports streaming.\");\n\t} catch (error) {\n\t\trouter.serverSsr?.cleanup();\n\t\tthrow error;\n\t}\n};\n//#endregion\nexport { renderRouterToStream };\n\n//# sourceMappingURL=renderRouterToStream.js.map","import { StartServer } from \"./StartServer.js\";\nimport { jsx } from \"react/jsx-runtime\";\nimport { defineHandlerCallback, renderRouterToStream } from \"@tanstack/react-router/ssr/server\";\n//#region src/defaultStreamHandler.tsx\nvar defaultStreamHandler = defineHandlerCallback(({ request, router, responseHeaders }) => renderRouterToStream({\n\trequest,\n\trouter,\n\tresponseHeaders,\n\tchildren: /* @__PURE__ */ jsx(StartServer, { router })\n}));\n//#endregion\nexport { defaultStreamHandler };\n\n//# sourceMappingURL=defaultStreamHandler.js.map","const NullProtoObj = /* @__PURE__ */ (() => {\n\tconst e = function() {};\n\treturn e.prototype = Object.create(null), Object.freeze(e.prototype), e;\n})();\n/**\n* Create a new router context.\n*/\nfunction createRouter() {\n\treturn {\n\t\troot: { key: \"\" },\n\t\tstatic: new NullProtoObj()\n\t};\n}\nfunction expandGroupDelimiters(path) {\n\tlet i = 0;\n\tlet depth = 0;\n\tfor (; i < path.length; i++) {\n\t\tconst c = path.charCodeAt(i);\n\t\tif (c === 92) {\n\t\t\ti++;\n\t\t\tcontinue;\n\t\t}\n\t\tif (c === 40) {\n\t\t\tdepth++;\n\t\t\tcontinue;\n\t\t}\n\t\tif (c === 41 && depth > 0) {\n\t\t\tdepth--;\n\t\t\tcontinue;\n\t\t}\n\t\tif (c === 123 && depth === 0) break;\n\t}\n\tif (i >= path.length) return;\n\tlet j = i + 1;\n\tdepth = 0;\n\tfor (; j < path.length; j++) {\n\t\tconst c = path.charCodeAt(j);\n\t\tif (c === 92) {\n\t\t\tj++;\n\t\t\tcontinue;\n\t\t}\n\t\tif (c === 40) {\n\t\t\tdepth++;\n\t\t\tcontinue;\n\t\t}\n\t\tif (c === 41 && depth > 0) {\n\t\t\tdepth--;\n\t\t\tcontinue;\n\t\t}\n\t\tif (c === 125 && depth === 0) break;\n\t}\n\tif (j >= path.length) return;\n\tconst mod = path[j + 1];\n\tconst hasMod = mod === \"?\" || mod === \"+\" || mod === \"*\";\n\tconst pre = path.slice(0, i);\n\tconst body = path.slice(i + 1, j);\n\tconst suf = path.slice(j + (hasMod ? 2 : 1));\n\tif (!hasMod) return [pre + body + suf];\n\tif (mod === \"?\") return [pre + body + suf, pre + suf];\n\tif (body.includes(\"/\")) throw new Error(\"unsupported group repetition across segments\");\n\treturn [`${pre}(?:${body})${mod}${suf}`];\n}\nconst UNNAMED_GROUP_PREFIX = \"__rou3_unnamed_\";\nconst _unnamedGroupPrefixLength = 15;\nfunction hasSegmentWildcard(segment) {\n\tlet depth = 0;\n\tfor (let i = 0; i < segment.length; i++) {\n\t\tconst ch = segment.charCodeAt(i);\n\t\tif (ch === 92) {\n\t\t\ti++;\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === 40) {\n\t\t\tdepth++;\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === 41 && depth > 0) {\n\t\t\tdepth--;\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === 42 && depth === 0) return true;\n\t}\n\treturn false;\n}\nfunction replaceSegmentWildcards(segment, unnamedStart, toGroupKey = toUnnamedGroupKey) {\n\tlet depth = 0;\n\tlet nextIndex = unnamedStart;\n\tlet replaced = \"\";\n\tfor (let i = 0; i < segment.length; i++) {\n\t\tconst ch = segment.charCodeAt(i);\n\t\tif (ch === 92) {\n\t\t\treplaced += segment[i];\n\t\t\tif (i + 1 < segment.length) replaced += segment[++i];\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === 40) {\n\t\t\tdepth++;\n\t\t\treplaced += segment[i];\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === 41 && depth > 0) {\n\t\t\tdepth--;\n\t\t\treplaced += segment[i];\n\t\t\tcontinue;\n\t\t}\n\t\tif (ch === 42 && depth === 0) {\n\t\t\treplaced += `(?<${toGroupKey(nextIndex++)}>[^/]*)`;\n\t\t\tcontinue;\n\t\t}\n\t\treplaced += segment[i];\n\t}\n\treturn [replaced, nextIndex];\n}\nfunction toUnnamedGroupKey(index) {\n\treturn `${UNNAMED_GROUP_PREFIX}${index}`;\n}\nfunction normalizeUnnamedGroupKey(key) {\n\treturn key.startsWith(\"__rou3_unnamed_\") ? key.slice(_unnamedGroupPrefixLength) : key;\n}\nfunction encodeEscapes(path) {\n\treturn path.replace(/\\\\:/g, \"�A\").replace(/\\\\\\(/g, \"�B\").replace(/\\\\\\)/g, \"�C\").replace(/\\\\\\{/g, \"�D\").replace(/\\\\\\}/g, \"�E\");\n}\nfunction decodeEscaped(segment) {\n\treturn segment.replace(/\\uFFFD([A-E])/g, (_, c) => c === \"A\" ? \":\" : c === \"B\" ? \"(\" : c === \"C\" ? \")\" : c === \"D\" ? \"{\" : \"}\");\n}\nfunction expandModifiers(segments) {\n\tfor (let i = 0; i < segments.length; i++) {\n\t\tconst m = segments[i].match(/^(.*:[\\w-]+(?:\\([^)]*\\))?)([?+*])$/);\n\t\tif (!m) continue;\n\t\tconst pre = segments.slice(0, i);\n\t\tconst suf = segments.slice(i + 1);\n\t\tif (m[2] === \"?\") return [\"/\" + pre.concat(m[1]).concat(suf).join(\"/\"), \"/\" + pre.concat(suf).join(\"/\")];\n\t\tconst name = m[1].match(/:([\\w-]+)/)?.[1] || \"_\";\n\t\tconst wc = \"/\" + [\n\t\t\t...pre,\n\t\t\t`**:${name}`,\n\t\t\t...suf\n\t\t].join(\"/\");\n\t\tconst without = \"/\" + [...pre, ...suf].join(\"/\");\n\t\treturn m[2] === \"+\" ? [wc] : [wc, without];\n\t}\n}\nfunction normalizePath(path) {\n\tif (!path.includes(\"/.\")) return path;\n\tconst r = [];\n\tfor (const s of path.split(\"/\")) if (s === \".\") continue;\n\telse if (s === \"..\" && r.length > 1) r.pop();\n\telse r.push(s);\n\treturn r.join(\"/\") || \"/\";\n}\nfunction splitPath(path) {\n\tconst [_, ...s] = path.split(\"/\");\n\treturn s[s.length - 1] === \"\" ? s.slice(0, -1) : s;\n}\nfunction getMatchParams(segments, paramsMap) {\n\tconst params = new NullProtoObj();\n\tfor (const [index, name] of paramsMap) {\n\t\tconst segment = index < 0 ? segments.slice(-(index + 1)).join(\"/\") : segments[index];\n\t\tif (typeof name === \"string\") params[name] = segment;\n\t\telse {\n\t\t\tconst match = segment.match(name);\n\t\t\tif (match) for (const key in match.groups) params[normalizeUnnamedGroupKey(key)] = match.groups[key];\n\t\t}\n\t}\n\treturn params;\n}\n/**\n* Add a route to the router context.\n*/\nfunction addRoute(ctx, method = \"\", path, data) {\n\tmethod = method.toUpperCase();\n\tif (path.charCodeAt(0) !== 47) path = `/${path}`;\n\tconst groupExpanded = expandGroupDelimiters(path);\n\tif (groupExpanded) {\n\t\tfor (const expandedPath of groupExpanded) addRoute(ctx, method, expandedPath, data);\n\t\treturn;\n\t}\n\tpath = encodeEscapes(path);\n\tconst segments = splitPath(path);\n\tconst expanded = expandModifiers(segments);\n\tif (expanded) {\n\t\tfor (const p of expanded) addRoute(ctx, method, p, data);\n\t\treturn;\n\t}\n\tlet node = ctx.root;\n\tlet _unnamedParamIndex = 0;\n\tconst paramsMap = [];\n\tconst paramsRegexp = [];\n\tfor (let i = 0; i < segments.length; i++) {\n\t\tlet segment = segments[i];\n\t\tif (segment.startsWith(\"**\")) {\n\t\t\tif (!node.wildcard) node.wildcard = { key: \"**\" };\n\t\t\tnode = node.wildcard;\n\t\t\tparamsMap.push([\n\t\t\t\t-(i + 1),\n\t\t\t\tsegment.split(\":\")[1] || \"_\",\n\t\t\t\tsegment.length === 2\n\t\t\t]);\n\t\t\tbreak;\n\t\t}\n\t\tif (segment === \"*\" || segment.includes(\":\") || segment.includes(\"(\") || hasSegmentWildcard(segment)) {\n\t\t\tif (!node.param) node.param = { key: \"*\" };\n\t\t\tnode = node.param;\n\t\t\tif (segment === \"*\") paramsMap.push([\n\t\t\t\ti,\n\t\t\t\tString(_unnamedParamIndex++),\n\t\t\t\ttrue\n\t\t\t]);\n\t\t\telse if (segment.includes(\":\", 1) || segment.includes(\"(\") || hasSegmentWildcard(segment) || !/^:[\\w-]+$/.test(segment)) {\n\t\t\t\tconst [regexp, nextIndex] = getParamRegexp(segment, _unnamedParamIndex);\n\t\t\t\t_unnamedParamIndex = nextIndex;\n\t\t\t\tparamsRegexp[i] = regexp;\n\t\t\t\tnode.hasRegexParam = true;\n\t\t\t\tparamsMap.push([\n\t\t\t\t\ti,\n\t\t\t\t\tregexp,\n\t\t\t\t\tfalse\n\t\t\t\t]);\n\t\t\t} else paramsMap.push([\n\t\t\t\ti,\n\t\t\t\tsegment.slice(1),\n\t\t\t\tfalse\n\t\t\t]);\n\t\t\tcontinue;\n\t\t}\n\t\tif (segment === \"\\\\*\") segment = segments[i] = \"*\";\n\t\telse if (segment === \"\\\\*\\\\*\") segment = segments[i] = \"**\";\n\t\tsegment = segments[i] = decodeEscaped(segment);\n\t\tconst child = node.static?.[segment];\n\t\tif (child) node = child;\n\t\telse {\n\t\t\tconst staticNode = { key: segment };\n\t\t\tif (!node.static) node.static = new NullProtoObj();\n\t\t\tnode.static[segment] = staticNode;\n\t\t\tnode = staticNode;\n\t\t}\n\t}\n\tconst hasParams = paramsMap.length > 0;\n\tif (!node.methods) node.methods = new NullProtoObj();\n\tnode.methods[method] ??= [];\n\tnode.methods[method].push({\n\t\tdata: data || null,\n\t\tparamsRegexp,\n\t\tparamsMap: hasParams ? paramsMap : void 0\n\t});\n\tif (!hasParams) ctx.static[\"/\" + segments.join(\"/\")] = node;\n}\nfunction getParamRegexp(segment, unnamedStart = 0) {\n\tlet _i = unnamedStart;\n\tlet _s = \"\", _d = 0;\n\tfor (let j = 0; j < segment.length; j++) {\n\t\tconst c = segment.charCodeAt(j);\n\t\tif (c === 40) _d++;\n\t\telse if (c === 41 && _d > 0) _d--;\n\t\telse if (c === 92 && _d === 0 && j + 1 < segment.length) {\n\t\t\tconst n = segment[j + 1];\n\t\t\tif (n !== \":\" && n !== \"(\" && n !== \"*\" && n !== \"\\\\\") {\n\t\t\t\t_s += \"￾\" + n;\n\t\t\t\tj++;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\t\t_s += segment[j];\n\t}\n\t[_s, _i] = replaceSegmentWildcards(_s, _i);\n\tconst regex = _s.replace(/:([\\w-]+)(?:\\(([^)]*)\\))?/g, (_, id, p) => `(?<${id}>${p || \"[^/]+\"})`).replace(/\\((?![?<])/g, () => `(?<${toUnnamedGroupKey(_i++)}>`).replace(/\\./g, \"\\\\.\").replace(/\\uFFFE(.)/g, (_, c) => /[.*+?^${}()|[\\]\\\\]/.test(c) ? `\\\\${c}` : c);\n\treturn [new RegExp(`^${regex}$`), _i];\n}\n/**\n* Find a route by path.\n*/\nfunction findRoute(ctx, method = \"\", path, opts) {\n\tif (opts?.normalize) path = normalizePath(path);\n\tif (path.charCodeAt(path.length - 1) === 47) path = path.slice(0, -1);\n\tconst staticNode = ctx.static[path];\n\tif (staticNode && staticNode.methods) {\n\t\tconst staticMatch = staticNode.methods[method] || staticNode.methods[\"\"];\n\t\tif (staticMatch !== void 0) return staticMatch[0];\n\t}\n\tconst segments = splitPath(path);\n\tconst match = _lookupTree(ctx.root, method, segments, 0)?.[0];\n\tif (match === void 0) return;\n\tif (opts?.params === false) return match;\n\treturn {\n\t\tdata: match.data,\n\t\tparams: match.paramsMap ? getMatchParams(segments, match.paramsMap) : void 0\n\t};\n}\nfunction _lookupTree(node, method, segments, index) {\n\tif (index === segments.length) {\n\t\tif (node.methods) {\n\t\t\tconst match = node.methods[method] || node.methods[\"\"];\n\t\t\tif (match) return match;\n\t\t}\n\t\tif (node.param && node.param.methods) {\n\t\t\tconst match = node.param.methods[method] || node.param.methods[\"\"];\n\t\t\tif (match) {\n\t\t\t\tconst pMap = match[0].paramsMap;\n\t\t\t\tif (pMap?.[pMap?.length - 1]?.[2]) return match;\n\t\t\t}\n\t\t}\n\t\tif (node.wildcard && node.wildcard.methods) {\n\t\t\tconst match = node.wildcard.methods[method] || node.wildcard.methods[\"\"];\n\t\t\tif (match) {\n\t\t\t\tconst pMap = match[0].paramsMap;\n\t\t\t\tif (pMap?.[pMap?.length - 1]?.[2]) return match;\n\t\t\t}\n\t\t}\n\t\treturn;\n\t}\n\tconst segment = segments[index];\n\tif (node.static) {\n\t\tconst staticChild = node.static[segment];\n\t\tif (staticChild) {\n\t\t\tconst match = _lookupTree(staticChild, method, segments, index + 1);\n\t\t\tif (match) return match;\n\t\t}\n\t}\n\tif (node.param) {\n\t\tconst match = _lookupTree(node.param, method, segments, index + 1);\n\t\tif (match) {\n\t\t\tif (node.param.hasRegexParam) {\n\t\t\t\tconst exactMatch = match.find((m) => m.paramsRegexp[index]?.test(segment)) || match.find((m) => !m.paramsRegexp[index]);\n\t\t\t\treturn exactMatch ? [exactMatch] : void 0;\n\t\t\t}\n\t\t\treturn match;\n\t\t}\n\t}\n\tif (node.wildcard && node.wildcard.methods) return node.wildcard.methods[method] || node.wildcard.methods[\"\"];\n}\n/**\n* Remove a route from the router context.\n*/\nfunction removeRoute(ctx, method, path) {\n\tconst groupExpanded = expandGroupDelimiters(path);\n\tif (groupExpanded) {\n\t\tfor (const expandedPath of groupExpanded) removeRoute(ctx, method, expandedPath);\n\t\treturn;\n\t}\n\tpath = encodeEscapes(path);\n\tconst segments = splitPath(path);\n\tconst modExpanded = expandModifiers(segments);\n\tif (modExpanded) {\n\t\tfor (const expandedPath of modExpanded) removeRoute(ctx, method, expandedPath);\n\t\treturn;\n\t}\n\t_remove(ctx.root, method || \"\", segments, 0);\n}\nfunction _remove(node, method, segments, index) {\n\tif (index === segments.length) {\n\t\tif (node.methods && method in node.methods) {\n\t\t\tdelete node.methods[method];\n\t\t\tif (Object.keys(node.methods).length === 0) node.methods = void 0;\n\t\t}\n\t\treturn;\n\t}\n\tconst segment = segments[index];\n\tif (segment.startsWith(\"**\")) {\n\t\tif (node.wildcard) {\n\t\t\t_remove(node.wildcard, method, segments, index + 1);\n\t\t\tif (_isEmptyNode(node.wildcard)) node.wildcard = void 0;\n\t\t}\n\t\treturn;\n\t}\n\tif (_isParamSegment(segment)) {\n\t\tif (node.param) {\n\t\t\t_remove(node.param, method, segments, index + 1);\n\t\t\tif (_isEmptyNode(node.param)) node.param = void 0;\n\t\t}\n\t\treturn;\n\t}\n\tconst decodedSegment = decodeEscaped(segment);\n\tconst childNode = node.static?.[decodedSegment];\n\tif (childNode) {\n\t\t_remove(childNode, method, segments, index + 1);\n\t\tif (_isEmptyNode(childNode)) {\n\t\t\tdelete node.static[decodedSegment];\n\t\t\tif (Object.keys(node.static).length === 0) node.static = void 0;\n\t\t}\n\t}\n}\nfunction _isParamSegment(segment) {\n\treturn segment === \"*\" || segment.includes(\":\") || segment.includes(\"(\") || hasSegmentWildcard(segment);\n}\nfunction _isEmptyNode(node) {\n\treturn node.methods === void 0 && node.static === void 0 && node.param === void 0 && node.wildcard === void 0;\n}\n/**\n* Find all route patterns that match the given path.\n*/\nfunction findAllRoutes(ctx, method = \"\", path, opts) {\n\tif (opts?.normalize) path = normalizePath(path);\n\tif (path.charCodeAt(path.length - 1) === 47) path = path.slice(0, -1);\n\tconst segments = splitPath(path);\n\tconst matches = _findAll(ctx.root, method, segments, 0);\n\tif (opts?.params === false) return matches;\n\treturn matches.map((m) => {\n\t\treturn {\n\t\t\tdata: m.data,\n\t\t\tparams: m.paramsMap ? getMatchParams(segments, m.paramsMap) : void 0\n\t\t};\n\t});\n}\nfunction _findAll(node, method, segments, index, matches = []) {\n\tconst segment = segments[index];\n\tif (node.wildcard && node.wildcard.methods) {\n\t\tconst match = node.wildcard.methods[method] || node.wildcard.methods[\"\"];\n\t\tif (match) matches.push(...match);\n\t}\n\tif (node.param) {\n\t\t_findAll(node.param, method, segments, index + 1, matches);\n\t\tif (index === segments.length && node.param.methods) {\n\t\t\tconst match = node.param.methods[method] || node.param.methods[\"\"];\n\t\t\tif (match) {\n\t\t\t\tconst pMap = match[0].paramsMap;\n\t\t\t\tif (pMap?.[pMap?.length - 1]?.[2]) matches.push(...match);\n\t\t\t}\n\t\t}\n\t}\n\tconst staticChild = node.static?.[segment];\n\tif (staticChild) _findAll(staticChild, method, segments, index + 1, matches);\n\tif (index === segments.length && node.methods) {\n\t\tconst match = node.methods[method] || node.methods[\"\"];\n\t\tif (match) matches.push(...match);\n\t}\n\treturn matches;\n}\nconst _P = \"￾\";\nfunction replaceEscapesOutsideGroups(segment) {\n\tlet r = \"\", d = 0;\n\tfor (let i = 0; i < segment.length; i++) {\n\t\tconst c = segment.charCodeAt(i);\n\t\tif (c === 40) d++;\n\t\telse if (c === 41 && d > 0) d--;\n\t\telse if (c === 92 && d === 0 && i + 1 < segment.length) {\n\t\t\tconst n = segment[i + 1];\n\t\t\tif (n !== \":\" && n !== \"(\" && n !== \"*\" && n !== \"\\\\\") {\n\t\t\t\tr += _P + n;\n\t\t\t\ti++;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\t\tr += segment[i];\n\t}\n\treturn r;\n}\nfunction resolveEscapePlaceholders(str) {\n\treturn str.replace(/\\uFFFE(.)/g, (_, c) => /[.*+?^${}()|[\\]\\\\]/.test(c) ? `\\\\${c}` : c);\n}\nfunction routeToRegExp(route = \"/\") {\n\tconst groupExpanded = expandGroupDelimiters(route);\n\tif (groupExpanded) {\n\t\tconst sources = groupExpanded.map((expandedRoute) => routeToRegExp(expandedRoute).source.slice(1, -1));\n\t\treturn new RegExp(`^(?:${sources.join(\"|\")})$`);\n\t}\n\treturn _routeToRegExp(route);\n}\nfunction _routeToRegExp(route) {\n\tconst reSegments = [];\n\tlet idCtr = 0;\n\tfor (const segment of route.split(\"/\")) {\n\t\tif (!segment) continue;\n\t\tif (segment === \"*\") reSegments.push(`(?<${toRegExpUnnamedKey(idCtr++)}>[^/]*)`);\n\t\telse if (segment.startsWith(\"**\")) reSegments.push(segment === \"**\" ? \"?(?<_>.*)\" : `?(?<${segment.slice(3)}>.+)`);\n\t\telse if (segment.includes(\":\") || /(^|[^\\\\])\\(/.test(segment) || hasSegmentWildcard(segment)) {\n\t\t\tconst modMatch = segment.match(/^(.*:[\\w-]+(?:\\([^)]*\\))?)([?+*])$/);\n\t\t\tif (modMatch) {\n\t\t\t\tconst [, base, mod] = modMatch;\n\t\t\t\tconst name = base.match(/:([\\w-]+)/)?.[1] || `_${idCtr++}`;\n\t\t\t\tif (mod === \"?\") {\n\t\t\t\t\tconst inner = base.replace(/:([\\w-]+)(?:\\(([^)]*)\\))?/g, (_, id, pattern) => `(?<${id}>${pattern || \"[^/]+\"})`).replace(/\\./g, \"\\\\.\");\n\t\t\t\t\tif (reSegments.length > 0) {\n\t\t\t\t\t\tconst prevQ = reSegments.pop();\n\t\t\t\t\t\treSegments.push(`${prevQ}(?:/${inner})?`);\n\t\t\t\t\t} else reSegments.push(`?${inner}?`);\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tconst pattern = base.match(/:(\\w+)(?:\\(([^)]*)\\))?/)?.[2];\n\t\t\t\tif (reSegments.length > 0) {\n\t\t\t\t\tconst prevMod = reSegments.pop();\n\t\t\t\t\tif (pattern) {\n\t\t\t\t\t\tconst repeated = `${pattern}(?:/${pattern})*`;\n\t\t\t\t\t\treSegments.push(mod === \"+\" ? `${prevMod}/(?<${name}>${repeated})` : `${prevMod}(?:/(?<${name}>${repeated}))?`);\n\t\t\t\t\t} else reSegments.push(mod === \"+\" ? `${prevMod}/(?<${name}>.+)` : `${prevMod}(?:/(?<${name}>.*))?`);\n\t\t\t\t} else if (pattern) {\n\t\t\t\t\tconst repeated = `${pattern}(?:/${pattern})*`;\n\t\t\t\t\treSegments.push(mod === \"+\" ? `?(?<${name}>${repeated})` : `?(?<${name}>${repeated})?`);\n\t\t\t\t} else reSegments.push(mod === \"+\" ? `?(?<${name}>.+)` : `?(?<${name}>.*)`);\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tlet dynamicSegment = replaceEscapesOutsideGroups(segment);\n\t\t\t[dynamicSegment, idCtr] = replaceSegmentWildcards(dynamicSegment, idCtr, toRegExpUnnamedKey);\n\t\t\treSegments.push(resolveEscapePlaceholders(dynamicSegment.replace(/:([\\w-]+)(?:\\(([^)]*)\\))?/g, (_, id, pattern) => `(?<${id}>${pattern || \"[^/]+\"})`).replace(/(^|[^\\\\])\\((?![?<])/g, (_, p) => `${p}(?<${toRegExpUnnamedKey(idCtr++)}>`).replace(/\\./g, \"\\\\.\")));\n\t\t} else reSegments.push(segment.replace(/\\\\(.)/g, \"$1\").replace(/[.*+?^${}()|[\\]]/g, \"\\\\$&\"));\n\t}\n\treturn new RegExp(`^/${reSegments.join(\"/\")}/?$`);\n}\nfunction toRegExpUnnamedKey(index) {\n\treturn `_${index}`;\n}\nexport { NullProtoObj, addRoute, createRouter, findAllRoutes, findRoute, removeRoute, routeToRegExp };\n","import { errorPlugin, wrapFetch } from \"../_chunks/_plugins.mjs\";\nconst FastURL = URL;\nconst FastResponse = Response;\nfunction serve(options) {\n\treturn new CloudflareServer(options);\n}\nvar CloudflareServer = class {\n\truntime = \"cloudflare\";\n\toptions;\n\tserveOptions;\n\tfetch;\n\tconstructor(options) {\n\t\tthis.options = {\n\t\t\t...options,\n\t\t\tmiddleware: [...options.middleware || []]\n\t\t};\n\t\tfor (const plugin of options.plugins || []) plugin(this);\n\t\terrorPlugin(this);\n\t\tconst fetchHandler = wrapFetch(this);\n\t\tthis.fetch = (request, env, context) => {\n\t\t\tObject.defineProperties(request, {\n\t\t\t\twaitUntil: { value: context.waitUntil.bind(context) },\n\t\t\t\truntime: {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tname: \"cloudflare\",\n\t\t\t\t\t\tcloudflare: {\n\t\t\t\t\t\t\tenv,\n\t\t\t\t\t\t\tcontext\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tip: {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tget() {\n\t\t\t\t\t\treturn request.headers.get(\"cf-connecting-ip\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn fetchHandler(request);\n\t\t};\n\t\tthis.serveOptions = { fetch: this.fetch };\n\t\tif (!options.manual) this.serve();\n\t}\n\tserve() {\n\t\taddEventListener(\"fetch\", (event) => {\n\t\t\tevent.respondWith(this.fetch(event.request, {}, event));\n\t\t});\n\t}\n\tready() {\n\t\treturn Promise.resolve().then(() => this);\n\t}\n\tclose() {\n\t\treturn Promise.resolve();\n\t}\n};\nexport { FastResponse, FastURL, serve };\n","import \"./h3-DagAgogP.mjs\";\nimport { NullProtoObj as EmptyObject, addRoute, createRouter, findRoute, removeRoute, routeToRegExp } from \"rou3\";\nimport { FastResponse, FastURL } from \"srvx\";\nfunction freezeApp(app) {\n\tapp.config = Object.freeze(app.config);\n\tapp[\"~addRoute\"] = () => {\n\t\tthrow new Error(\"Cannot add routes after the server init.\");\n\t};\n}\nfunction withLeadingSlash(path) {\n\tif (!path || path === \"/\") return \"/\";\n\treturn path[0] === \"/\" ? path : `/${path}`;\n}\nfunction withoutTrailingSlash(path) {\n\tif (!path || path === \"/\") return \"/\";\n\treturn path[path.length - 1] === \"/\" ? path.slice(0, -1) : path;\n}\nfunction withoutBase(input = \"\", base = \"\") {\n\tif (!base || base === \"/\") return input;\n\tconst _base = withoutTrailingSlash(base);\n\tif (!input.startsWith(_base) || input.length > _base.length && input[_base.length] !== \"/\") return input;\n\tconst trimmed = input.slice(_base.length);\n\treturn trimmed[0] === \"/\" ? trimmed : \"/\" + trimmed;\n}\nfunction decodePathname(pathname) {\n\treturn decodeURI(pathname.includes(\"%25\") ? pathname.replace(/%25/g, \"%2525\") : pathname);\n}\nfunction resolveDotSegments(path) {\n\tif (!path.includes(\".\") && !path.includes(\"%2\")) return path;\n\tconst segments = path.replaceAll(\"\\\\\", \"/\").split(\"/\");\n\tconst resolved = [];\n\tfor (const segment of segments) {\n\t\tconst normalized = segment.replace(/%2e/gi, \".\");\n\t\tif (normalized === \"..\") {\n\t\t\tif (resolved.length > 1) resolved.pop();\n\t\t} else if (normalized !== \".\") resolved.push(segment);\n\t}\n\treturn resolved.join(\"/\") || \"/\";\n}\nconst kEventNS = \"h3.internal.event.\";\nconst kEventRes = /* @__PURE__ */ Symbol.for(`${kEventNS}res`);\nconst kEventResHeaders = /* @__PURE__ */ Symbol.for(`${kEventNS}res.headers`);\nconst kEventResErrHeaders = /* @__PURE__ */ Symbol.for(`${kEventNS}res.err.headers`);\nvar H3Event = class {\n\tapp;\n\treq;\n\turl;\n\tcontext;\n\tstatic __is_event__ = true;\n\tconstructor(req, context, app) {\n\t\tthis.context = context || req.context || new EmptyObject();\n\t\tthis.req = req;\n\t\tthis.app = app;\n\t\tconst _url = req._url;\n\t\tconst url = _url && _url instanceof URL ? _url : new FastURL(req.url);\n\t\tif (url.pathname.includes(\"%\")) url.pathname = decodePathname(url.pathname);\n\t\tthis.url = url;\n\t}\n\tget res() {\n\t\treturn this[kEventRes] ||= new H3EventResponse();\n\t}\n\tget runtime() {\n\t\treturn this.req.runtime;\n\t}\n\twaitUntil(promise) {\n\t\tthis.req.waitUntil?.(promise);\n\t}\n\ttoString() {\n\t\treturn `[${this.req.method}] ${this.req.url}`;\n\t}\n\ttoJSON() {\n\t\treturn this.toString();\n\t}\n\tget node() {\n\t\treturn this.req.runtime?.node;\n\t}\n\tget headers() {\n\t\treturn this.req.headers;\n\t}\n\tget path() {\n\t\treturn this.url.pathname + this.url.search;\n\t}\n\tget method() {\n\t\treturn this.req.method;\n\t}\n};\nvar H3EventResponse = class {\n\tstatus;\n\tstatusText;\n\tget headers() {\n\t\treturn this[kEventResHeaders] ||= new Headers();\n\t}\n\tget errHeaders() {\n\t\treturn this[kEventResErrHeaders] ||= new Headers();\n\t}\n};\nconst DISALLOWED_STATUS_CHARS = /[^\\u0009\\u0020-\\u007E]/g;\nfunction sanitizeStatusMessage(statusMessage = \"\") {\n\treturn statusMessage.replace(DISALLOWED_STATUS_CHARS, \"\");\n}\nfunction sanitizeStatusCode(statusCode, defaultStatusCode = 200) {\n\tif (!statusCode) return defaultStatusCode;\n\tif (typeof statusCode === \"string\") statusCode = +statusCode;\n\tif (statusCode < 100 || statusCode > 599) return defaultStatusCode;\n\treturn statusCode;\n}\nvar HTTPError = class HTTPError extends Error {\n\tget name() {\n\t\treturn \"HTTPError\";\n\t}\n\tstatus;\n\tstatusText;\n\theaders;\n\tcause;\n\tdata;\n\tbody;\n\tunhandled;\n\tstatic isError(input) {\n\t\treturn input instanceof Error && input?.name === \"HTTPError\";\n\t}\n\tstatic status(status, statusText, details) {\n\t\treturn new HTTPError({\n\t\t\t...details,\n\t\t\tstatusText,\n\t\t\tstatus\n\t\t});\n\t}\n\tconstructor(arg1, arg2) {\n\t\tlet messageInput;\n\t\tlet details;\n\t\tif (typeof arg1 === \"string\") {\n\t\t\tmessageInput = arg1;\n\t\t\tdetails = arg2;\n\t\t} else details = arg1;\n\t\tconst status = sanitizeStatusCode(details?.status || details?.statusCode || (details?.cause)?.status || (details?.cause)?.statusCode, 500);\n\t\tconst statusText = sanitizeStatusMessage(details?.statusText || details?.statusMessage || (details?.cause)?.statusText || (details?.cause)?.statusMessage);\n\t\tconst message = messageInput || details?.message || (details?.cause)?.message || details?.statusText || details?.statusMessage || [\n\t\t\t\"HTTPError\",\n\t\t\tstatus,\n\t\t\tstatusText\n\t\t].filter(Boolean).join(\" \");\n\t\tsuper(message, { cause: details });\n\t\tthis.cause = details;\n\t\tthis.status = status;\n\t\tthis.statusText = statusText || void 0;\n\t\tconst rawHeaders = details?.headers || (details?.cause)?.headers;\n\t\tthis.headers = rawHeaders ? new Headers(rawHeaders) : void 0;\n\t\tthis.unhandled = details?.unhandled ?? (details?.cause)?.unhandled ?? void 0;\n\t\tthis.data = details?.data;\n\t\tthis.body = details?.body;\n\t}\n\tget statusCode() {\n\t\treturn this.status;\n\t}\n\tget statusMessage() {\n\t\treturn this.statusText;\n\t}\n\ttoJSON() {\n\t\tconst unhandled = this.unhandled;\n\t\treturn {\n\t\t\tstatus: this.status,\n\t\t\tstatusText: this.statusText,\n\t\t\tunhandled,\n\t\t\tmessage: unhandled ? \"HTTPError\" : this.message,\n\t\t\tdata: unhandled ? void 0 : this.data,\n\t\t\t...unhandled ? void 0 : this.body\n\t\t};\n\t}\n};\nfunction hasProp(obj, prop) {\n\ttry {\n\t\treturn prop in obj;\n\t} catch {\n\t\treturn false;\n\t}\n}\nfunction isJSONSerializable(value, _type) {\n\tif (value === null || value === void 0) return true;\n\tif (_type !== \"object\") return _type === \"boolean\" || _type === \"number\" || _type === \"string\";\n\tif (typeof value.toJSON === \"function\") return true;\n\tif (Array.isArray(value)) return true;\n\tif (typeof value.pipe === \"function\" || typeof value.pipeTo === \"function\") return false;\n\tif (value instanceof EmptyObject) return true;\n\tconst proto = Object.getPrototypeOf(value);\n\treturn proto === Object.prototype || proto === null;\n}\nconst kNotFound = /* @__PURE__ */ Symbol.for(\"h3.notFound\");\nconst kHandled = /* @__PURE__ */ Symbol.for(\"h3.handled\");\nfunction toResponse(val, event, config = {}) {\n\tif (typeof val?.then === \"function\") return (val.catch?.((error) => error) || Promise.resolve(val)).then((resolvedVal) => toResponse(resolvedVal, event, config));\n\tconst response = prepareResponse(val, event, config);\n\tif (typeof response?.then === \"function\") return toResponse(response, event, config);\n\tconst { onResponse } = config;\n\treturn onResponse ? Promise.resolve(onResponse(response, event)).then(() => response) : response;\n}\nvar HTTPResponse = class {\n\t#headers;\n\t#init;\n\tbody;\n\tconstructor(body, init) {\n\t\tthis.body = body;\n\t\tthis.#init = init;\n\t}\n\tget status() {\n\t\treturn this.#init?.status || 200;\n\t}\n\tget statusText() {\n\t\treturn this.#init?.statusText || \"OK\";\n\t}\n\tget headers() {\n\t\treturn this.#headers ||= new Headers(this.#init?.headers);\n\t}\n};\nfunction prepareResponse(val, event, config, nested) {\n\tif (val === kHandled) return new FastResponse(null);\n\tif (val === kNotFound) val = new HTTPError({\n\t\tstatus: 404,\n\t\tmessage: `Cannot find any route matching [${event.req.method}] ${event.url}`\n\t});\n\tif (val && val instanceof Error) {\n\t\tconst isHTTPError = HTTPError.isError(val);\n\t\tconst error = isHTTPError ? val : new HTTPError(val);\n\t\tif (!isHTTPError) {\n\t\t\terror.unhandled = true;\n\t\t\tif (val?.stack) error.stack = val.stack;\n\t\t}\n\t\tif (error.unhandled && !config.silent) console.error(error);\n\t\tconst { onError } = config;\n\t\tconst errHeaders = event[kEventRes]?.[kEventResErrHeaders];\n\t\treturn onError && !nested ? Promise.resolve(onError(error, event)).catch((error) => error).then((newVal) => prepareResponse(newVal ?? val, event, config, true)) : errorResponse(error, config.debug, errHeaders);\n\t}\n\tconst preparedRes = event[kEventRes];\n\tconst preparedHeaders = preparedRes?.[kEventResHeaders];\n\tevent[kEventRes] = void 0;\n\tif (!(val instanceof Response)) {\n\t\tconst res = prepareResponseBody(val, event, config);\n\t\tconst status = res.status || preparedRes?.status;\n\t\treturn new FastResponse(nullBody(event.req.method, status) ? null : res.body, {\n\t\t\tstatus,\n\t\t\tstatusText: res.statusText || preparedRes?.statusText,\n\t\t\theaders: res.headers && preparedHeaders ? mergeHeaders$1(res.headers, preparedHeaders) : res.headers || preparedHeaders\n\t\t});\n\t}\n\tif (!preparedHeaders || nested || !val.ok) return val;\n\ttry {\n\t\tmergeHeaders$1(val.headers, preparedHeaders, val.headers);\n\t\treturn val;\n\t} catch {\n\t\treturn new FastResponse(nullBody(event.req.method, val.status) ? null : val.body, {\n\t\t\tstatus: val.status,\n\t\t\tstatusText: val.statusText,\n\t\t\theaders: mergeHeaders$1(val.headers, preparedHeaders)\n\t\t});\n\t}\n}\nfunction mergeHeaders$1(base, overrides, target = new Headers(base)) {\n\tfor (const [name, value] of overrides) if (name === \"set-cookie\") target.append(name, value);\n\telse target.set(name, value);\n\treturn target;\n}\nconst frozen = (name) => (...args) => {\n\tthrow new Error(`Headers are frozen (${name} ${args.join(\", \")})`);\n};\nvar FrozenHeaders = class extends Headers {\n\tset = frozen(\"set\");\n\tappend = frozen(\"append\");\n\tdelete = frozen(\"delete\");\n};\nconst emptyHeaders = /* @__PURE__ */ new FrozenHeaders({ \"content-length\": \"0\" });\nconst jsonHeaders = /* @__PURE__ */ new FrozenHeaders({ \"content-type\": \"application/json;charset=UTF-8\" });\nfunction prepareResponseBody(val, event, config) {\n\tif (val === null || val === void 0) return {\n\t\tbody: \"\",\n\t\theaders: emptyHeaders\n\t};\n\tconst valType = typeof val;\n\tif (valType === \"string\") return { body: val };\n\tif (val instanceof Uint8Array) {\n\t\tevent.res.headers.set(\"content-length\", val.byteLength.toString());\n\t\treturn { body: val };\n\t}\n\tif (val instanceof HTTPResponse || val?.constructor?.name === \"HTTPResponse\") return val;\n\tif (isJSONSerializable(val, valType)) return {\n\t\tbody: JSON.stringify(val, void 0, config.debug ? 2 : void 0),\n\t\theaders: jsonHeaders\n\t};\n\tif (valType === \"bigint\") return {\n\t\tbody: val.toString(),\n\t\theaders: jsonHeaders\n\t};\n\tif (val instanceof Blob) {\n\t\tconst headers = new Headers({\n\t\t\t\"content-type\": val.type,\n\t\t\t\"content-length\": val.size.toString()\n\t\t});\n\t\tlet filename = val.name;\n\t\tif (filename) {\n\t\t\tfilename = encodeURIComponent(filename);\n\t\t\theaders.set(\"content-disposition\", `filename=\"${filename}\"; filename*=UTF-8''${filename}`);\n\t\t}\n\t\treturn {\n\t\t\tbody: val.stream(),\n\t\t\theaders\n\t\t};\n\t}\n\tif (valType === \"symbol\") return { body: val.toString() };\n\tif (valType === \"function\") return { body: `${val.name}()` };\n\treturn { body: val };\n}\nfunction nullBody(method, status) {\n\treturn method === \"HEAD\" || status === 100 || status === 101 || status === 102 || status === 204 || status === 205 || status === 304;\n}\nfunction errorResponse(error, debug, errHeaders) {\n\tlet headers = error.headers ? mergeHeaders$1(jsonHeaders, error.headers) : new Headers(jsonHeaders);\n\tif (errHeaders) headers = mergeHeaders$1(headers, errHeaders);\n\treturn new FastResponse(JSON.stringify({\n\t\t...error.toJSON(),\n\t\tstack: debug && error.stack ? error.stack.split(\"\\n\").map((l) => l.trim()) : void 0\n\t}, void 0, debug ? 2 : void 0), {\n\t\tstatus: error.status,\n\t\tstatusText: error.statusText,\n\t\theaders\n\t});\n}\nfunction defineMiddleware(input) {\n\treturn input;\n}\nfunction normalizeMiddleware(input, opts = {}) {\n\tconst matcher = createMatcher(opts);\n\tif (!matcher && (input.length > 1 || input.constructor?.name === \"AsyncFunction\")) return input;\n\treturn (event, next) => {\n\t\tif (matcher && !matcher(event)) return next();\n\t\tconst res = input(event, next);\n\t\treturn res === void 0 || res === kNotFound ? next() : res;\n\t};\n}\nfunction createMatcher(opts) {\n\tif (!opts.route && !opts.method && !opts.match) return;\n\tconst routeMatcher = opts.route ? routeToRegExp(opts.route) : void 0;\n\tconst method = opts.method?.toUpperCase();\n\treturn function _middlewareMatcher(event) {\n\t\tif (method && event.req.method !== method) return false;\n\t\tif (opts.match && !opts.match(event)) return false;\n\t\tif (!routeMatcher) return true;\n\t\tconst match = event.url.pathname.match(routeMatcher);\n\t\tif (!match) return false;\n\t\tif (match.groups) event.context.middlewareParams = {\n\t\t\t...event.context.middlewareParams,\n\t\t\t...match.groups\n\t\t};\n\t\treturn true;\n\t};\n}\nfunction callMiddleware(event, middleware, handler, index = 0) {\n\tif (index === middleware.length) return handler(event);\n\tconst fn = middleware[index];\n\tlet nextCalled;\n\tlet nextResult;\n\tconst next = () => {\n\t\tif (nextCalled) return nextResult;\n\t\tnextCalled = true;\n\t\tnextResult = callMiddleware(event, middleware, handler, index + 1);\n\t\treturn nextResult;\n\t};\n\tconst ret = fn(event, next);\n\treturn isUnhandledResponse(ret) ? next() : typeof ret?.then === \"function\" ? ret.then((resolved) => isUnhandledResponse(resolved) ? next() : resolved) : ret;\n}\nfunction isUnhandledResponse(val) {\n\treturn val === void 0 || val === kNotFound;\n}\nfunction toMiddleware(input) {\n\tlet h = input.handler || input;\n\tlet isFunction = typeof h === \"function\";\n\tif (!isFunction && typeof input?.fetch === \"function\") {\n\t\tisFunction = true;\n\t\th = function _fetchHandler(event) {\n\t\t\treturn input.fetch(event.req);\n\t\t};\n\t}\n\tif (!isFunction) return function noopMiddleware(event, next) {\n\t\treturn next();\n\t};\n\tif (h.length === 2) return h;\n\treturn function _middlewareHandler(event, next) {\n\t\tconst res = h(event);\n\t\treturn typeof res?.then === \"function\" ? res.then((r) => {\n\t\t\treturn is404(r) ? next() : r;\n\t\t}) : is404(res) ? next() : res;\n\t};\n}\nfunction is404(val) {\n\treturn isUnhandledResponse(val) || val?.status === 404 && val instanceof Response;\n}\nconst plusRegex = /\\+/g;\nfunction parseQuery(input) {\n\tconst params = new EmptyObject();\n\tif (!input || input === \"?\") return params;\n\tconst inputLength = input.length;\n\tlet key = \"\";\n\tlet value = \"\";\n\tlet startingIndex = -1;\n\tlet equalityIndex = -1;\n\tlet shouldDecodeKey = false;\n\tlet shouldDecodeValue = false;\n\tlet keyHasPlus = false;\n\tlet valueHasPlus = false;\n\tlet hasBothKeyValuePair = false;\n\tlet c = 0;\n\tfor (let i = 0; i < inputLength + 1; i++) {\n\t\tc = i === inputLength ? 38 : input.charCodeAt(i);\n\t\tswitch (c) {\n\t\t\tcase 38:\n\t\t\t\thasBothKeyValuePair = equalityIndex > startingIndex;\n\t\t\t\tif (!hasBothKeyValuePair) equalityIndex = i;\n\t\t\t\tkey = input.slice(startingIndex + 1, equalityIndex);\n\t\t\t\tif (hasBothKeyValuePair || key.length > 0) {\n\t\t\t\t\tif (keyHasPlus) key = key.replace(plusRegex, \" \");\n\t\t\t\t\tif (shouldDecodeKey) try {\n\t\t\t\t\t\tkey = decodeURIComponent(key);\n\t\t\t\t\t} catch {}\n\t\t\t\t\tif (hasBothKeyValuePair) {\n\t\t\t\t\t\tvalue = input.slice(equalityIndex + 1, i);\n\t\t\t\t\t\tif (valueHasPlus) value = value.replace(plusRegex, \" \");\n\t\t\t\t\t\tif (shouldDecodeValue) try {\n\t\t\t\t\t\t\tvalue = decodeURIComponent(value);\n\t\t\t\t\t\t} catch {}\n\t\t\t\t\t}\n\t\t\t\t\tconst currentValue = params[key];\n\t\t\t\t\tif (currentValue === void 0) params[key] = value;\n\t\t\t\t\telse if (Array.isArray(currentValue)) currentValue.push(value);\n\t\t\t\t\telse params[key] = [currentValue, value];\n\t\t\t\t}\n\t\t\t\tvalue = \"\";\n\t\t\t\tstartingIndex = i;\n\t\t\t\tequalityIndex = i;\n\t\t\t\tshouldDecodeKey = false;\n\t\t\t\tshouldDecodeValue = false;\n\t\t\t\tkeyHasPlus = false;\n\t\t\t\tvalueHasPlus = false;\n\t\t\t\tbreak;\n\t\t\tcase 61:\n\t\t\t\tif (equalityIndex <= startingIndex) equalityIndex = i;\n\t\t\t\telse shouldDecodeValue = true;\n\t\t\t\tbreak;\n\t\t\tcase 43:\n\t\t\t\tif (equalityIndex > startingIndex) valueHasPlus = true;\n\t\t\t\telse keyHasPlus = true;\n\t\t\t\tbreak;\n\t\t\tcase 37:\n\t\t\t\tif (equalityIndex > startingIndex) shouldDecodeValue = true;\n\t\t\t\telse shouldDecodeKey = true;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\treturn params;\n}\nconst VALIDATION_FAILED = \"Validation failed\";\nasync function validateData(data, fn, options) {\n\tif (\"~standard\" in fn) {\n\t\tconst result = await fn[\"~standard\"].validate(data);\n\t\tif (result.issues) throw createValidationError(options?.onError?.(result) || {\n\t\t\tmessage: VALIDATION_FAILED,\n\t\t\tissues: result.issues\n\t\t});\n\t\treturn result.value;\n\t}\n\ttry {\n\t\tconst res = await fn(data);\n\t\tif (res === false) throw createValidationError(options?.onError?.({ issues: [{ message: VALIDATION_FAILED }] }) || { message: VALIDATION_FAILED });\n\t\tif (res === true) return data;\n\t\treturn res ?? data;\n\t} catch (error) {\n\t\tthrow createValidationError(error);\n\t}\n}\nconst reqBodyKeys = new Set([\n\t\"body\",\n\t\"text\",\n\t\"formData\",\n\t\"arrayBuffer\"\n]);\nfunction validatedRequest(req, validate) {\n\tif (validate.headers) {\n\t\tconst validatedheaders = syncValidate(\"headers\", Object.fromEntries(req.headers.entries()), validate.headers, validate.onError);\n\t\tfor (const [key, value] of Object.entries(validatedheaders)) req.headers.set(key, value);\n\t}\n\tif (!validate.body) return req;\n\treturn new Proxy(req, { get(_target, prop) {\n\t\tif (validate.body) {\n\t\t\tif (prop === \"json\") return function _validatedJson() {\n\t\t\t\treturn req.json().then((data) => validate.body[\"~standard\"].validate(data)).then((result) => {\n\t\t\t\t\tif (result.issues) throw createValidationError(validate.onError?.({\n\t\t\t\t\t\t_source: \"body\",\n\t\t\t\t\t\t...result\n\t\t\t\t\t}) || {\n\t\t\t\t\t\tmessage: VALIDATION_FAILED,\n\t\t\t\t\t\tissues: result.issues\n\t\t\t\t\t});\n\t\t\t\t\treturn result.value;\n\t\t\t\t});\n\t\t\t};\n\t\t\telse if (reqBodyKeys.has(prop)) throw new TypeError(`Cannot access .${prop} on request with JSON validation enabled. Use .json() instead.`);\n\t\t}\n\t\treturn Reflect.get(req, prop);\n\t} });\n}\nfunction validatedURL(url, validate) {\n\tif (!validate.query) return url;\n\tconst validatedQuery = syncValidate(\"query\", Object.fromEntries(url.searchParams.entries()), validate.query, validate.onError);\n\tfor (const [key, value] of Object.entries(validatedQuery)) url.searchParams.set(key, value);\n\treturn url;\n}\nfunction syncValidate(source, data, fn, onError) {\n\tconst result = fn[\"~standard\"].validate(data);\n\tif (result instanceof Promise) throw new TypeError(`Asynchronous validation is not supported for ${source}`);\n\tif (result.issues) throw createValidationError(onError?.({\n\t\t_source: source,\n\t\t...result\n\t}) || {\n\t\tmessage: VALIDATION_FAILED,\n\t\tissues: result.issues\n\t});\n\treturn result.value;\n}\nfunction createValidationError(cause) {\n\treturn HTTPError.isError(cause) ? cause : new HTTPError({\n\t\tcause,\n\t\tstatus: cause?.status || 400,\n\t\tstatusText: cause?.statusText || VALIDATION_FAILED,\n\t\tmessage: cause?.message || VALIDATION_FAILED,\n\t\tdata: {\n\t\t\tissues: cause?.issues,\n\t\t\tmessage: cause instanceof Error ? VALIDATION_FAILED : cause?.message || VALIDATION_FAILED\n\t\t}\n\t});\n}\nfunction isEvent(input) {\n\treturn input instanceof H3Event || input?.constructor?.__is_event__;\n}\nfunction isHTTPEvent(input) {\n\treturn input?.req instanceof Request;\n}\nfunction getEventContext(event) {\n\tif (event.context) return event.context;\n\tevent.req.context ??= {};\n\treturn event.req.context;\n}\nfunction mockEvent(_request, options) {\n\tlet request;\n\tif (options?.body && !options.duplex) options.duplex = \"half\";\n\tif (typeof _request === \"string\") {\n\t\tlet url = _request;\n\t\tif (url[0] === \"/\") url = `http://localhost${url}`;\n\t\trequest = new Request(url, options);\n\t} else if (options || _request instanceof URL) request = new Request(_request, options);\n\telse request = _request;\n\treturn new H3Event(request);\n}\nfunction requestWithURL(req, url) {\n\tconst cache = { url };\n\treturn new Proxy(req, { get(target, prop) {\n\t\tif (prop in cache) return cache[prop];\n\t\tconst value = Reflect.get(target, prop);\n\t\tcache[prop] = typeof value === \"function\" ? value.bind(target) : value;\n\t\treturn cache[prop];\n\t} });\n}\nfunction requestWithBaseURL(req, base) {\n\tconst url = new URL(req.url);\n\turl.pathname = decodePathname(url.pathname).slice(base.length) || \"/\";\n\treturn requestWithURL(req, url.href);\n}\nfunction toRequest(input, options) {\n\tif (typeof input === \"string\") {\n\t\tlet url = input;\n\t\tif (url[0] === \"/\") {\n\t\t\tconst headers = options?.headers ? new Headers(options.headers) : void 0;\n\t\t\tconst host = headers?.get(\"host\") || \"localhost\";\n\t\t\turl = `${headers?.get(\"x-forwarded-proto\") === \"https\" ? \"https\" : \"http\"}://${host}${url}`;\n\t\t}\n\t\treturn new Request(url, options);\n\t} else if (options || input instanceof URL) return new Request(input, options);\n\treturn input;\n}\nfunction getQuery(event) {\n\treturn parseQuery((event.url || new URL(event.req.url)).search.slice(1));\n}\nfunction getValidatedQuery(event, validate, options) {\n\treturn validateData(getQuery(event), validate, options);\n}\nfunction getRouterParams(event, opts = {}) {\n\tlet params = getEventContext(event).params || {};\n\tif (opts.decode) {\n\t\tparams = { ...params };\n\t\tfor (const key in params) params[key] = decodeURIComponent(params[key]);\n\t}\n\treturn params;\n}\nfunction getValidatedRouterParams(event, validate, options = {}) {\n\tconst { decode, ...opts } = options;\n\treturn validateData(getRouterParams(event, { decode }), validate, opts);\n}\nfunction getRouterParam(event, name, opts = {}) {\n\treturn getRouterParams(event, opts)[name];\n}\nfunction isMethod(event, expected, allowHead) {\n\tif (allowHead && event.req.method === \"HEAD\") return true;\n\tif (typeof expected === \"string\") {\n\t\tif (event.req.method === expected) return true;\n\t} else if (expected.includes(event.req.method)) return true;\n\treturn false;\n}\nfunction assertMethod(event, expected, allowHead) {\n\tif (!isMethod(event, expected, allowHead)) {\n\t\tconst allowed = Array.isArray(expected) ? expected : [expected];\n\t\tthrow new HTTPError({\n\t\t\tstatus: 405,\n\t\t\theaders: { Allow: allowHead ? [...allowed, \"HEAD\"].join(\", \") : allowed.join(\", \") }\n\t\t});\n\t}\n}\nfunction getRequestHost(event, opts = {}) {\n\tif (opts.xForwardedHost) {\n\t\tconst xForwardedHost = (event.req.headers.get(\"x-forwarded-host\") || \"\").split(\",\").shift()?.trim();\n\t\tif (xForwardedHost) return xForwardedHost;\n\t}\n\treturn event.req.headers.get(\"host\") || \"\";\n}\nfunction getRequestProtocol(event, opts = {}) {\n\tif (opts.xForwardedProto !== false) {\n\t\tconst forwardedProto = event.req.headers.get(\"x-forwarded-proto\");\n\t\tif (forwardedProto === \"https\") return \"https\";\n\t\tif (forwardedProto === \"http\") return \"http\";\n\t}\n\treturn (event.url || new URL(event.req.url)).protocol.slice(0, -1);\n}\nfunction getRequestURL(event, opts = {}) {\n\tconst url = new URL(event.url || event.req.url);\n\turl.protocol = getRequestProtocol(event, opts);\n\tif (opts.xForwardedHost) {\n\t\tconst host = getRequestHost(event, opts);\n\t\tif (host) {\n\t\t\turl.host = host;\n\t\t\tif (!/:\\d+$/.test(host)) url.port = \"\";\n\t\t}\n\t}\n\treturn url;\n}\nfunction getRequestIP(event, opts = {}) {\n\tif (opts.xForwardedFor) {\n\t\tconst _header = event.req.headers.get(\"x-forwarded-for\");\n\t\tif (_header) {\n\t\t\tconst xForwardedFor = _header.split(\",\")[0].trim();\n\t\t\tif (xForwardedFor) return xForwardedFor;\n\t\t}\n\t}\n\treturn event.req.context?.clientAddress || event.req.ip || void 0;\n}\nfunction defineHandler(input) {\n\tif (typeof input === \"function\") return handlerWithFetch(input);\n\tconst handler = input.handler || (input.fetch ? function _fetchHandler(event) {\n\t\treturn input.fetch(event.req);\n\t} : NoHandler);\n\treturn Object.assign(handlerWithFetch(input.middleware?.length ? function _handlerMiddleware(event) {\n\t\treturn callMiddleware(event, input.middleware, handler);\n\t} : handler), input);\n}\nfunction defineValidatedHandler(def) {\n\tif (!def.validate) return defineHandler(def);\n\treturn defineHandler({\n\t\t...def,\n\t\thandler: function _validatedHandler(event) {\n\t\t\tevent.req = validatedRequest(event.req, def.validate);\n\t\t\tevent.url = validatedURL(event.url, def.validate);\n\t\t\treturn def.handler(event);\n\t\t}\n\t});\n}\nfunction handlerWithFetch(handler) {\n\tif (\"fetch\" in handler) return handler;\n\treturn Object.assign(handler, { fetch: (req) => {\n\t\tif (typeof req === \"string\") req = new URL(req, \"http://_\");\n\t\tif (req instanceof URL) req = new Request(req);\n\t\tconst event = new H3Event(req);\n\t\ttry {\n\t\t\treturn Promise.resolve(toResponse(handler(event), event));\n\t\t} catch (error) {\n\t\t\treturn Promise.resolve(toResponse(error, event));\n\t\t}\n\t} });\n}\nfunction dynamicEventHandler(initial) {\n\tlet current = toEventHandler(initial);\n\treturn Object.assign(defineHandler(function _dynamicEventHandler(event) {\n\t\treturn current?.(event);\n\t}), { set: (handler) => {\n\t\tcurrent = toEventHandler(handler);\n\t} });\n}\nfunction defineLazyEventHandler(loader) {\n\tlet handler;\n\tlet promise;\n\treturn defineHandler(function lazyHandler(event) {\n\t\treturn handler ? handler(event) : (promise ??= Promise.resolve(loader()).then(function resolveLazyHandler(r) {\n\t\t\thandler = toEventHandler(r) || toEventHandler(r.default);\n\t\t\tif (typeof handler !== \"function\") throw new TypeError(\"Invalid lazy handler\", { cause: { resolved: r } });\n\t\t\treturn handler;\n\t\t})).then((r) => r(event));\n\t});\n}\nfunction toEventHandler(handler) {\n\tif (typeof handler === \"function\") return handler;\n\tif (typeof handler?.handler === \"function\") return handler.handler;\n\tif (typeof handler?.fetch === \"function\") return function _fetchHandler(event) {\n\t\treturn handler.fetch(event.req);\n\t};\n}\nconst NoHandler = () => kNotFound;\nvar H3Core = class {\n\tconfig;\n\t\"~middleware\";\n\t\"~routes\" = [];\n\tconstructor(config = {}) {\n\t\tthis[\"~middleware\"] = [];\n\t\tthis.config = config;\n\t\tthis.fetch = this.fetch.bind(this);\n\t\tthis.handler = this.handler.bind(this);\n\t}\n\tfetch(request) {\n\t\treturn this[\"~request\"](request);\n\t}\n\thandler(event) {\n\t\tconst route = this[\"~findRoute\"](event);\n\t\tif (route) {\n\t\t\tevent.context.params = route.params;\n\t\t\tevent.context.matchedRoute = route.data;\n\t\t}\n\t\tconst routeHandler = route?.data.handler || NoHandler;\n\t\tconst middleware = this[\"~getMiddleware\"](event, route);\n\t\treturn middleware.length > 0 ? callMiddleware(event, middleware, routeHandler) : routeHandler(event);\n\t}\n\t\"~request\"(request, context) {\n\t\tconst event = new H3Event(request, context, this);\n\t\tlet handlerRes;\n\t\ttry {\n\t\t\tif (this.config.onRequest) {\n\t\t\t\tconst hookRes = this.config.onRequest(event);\n\t\t\t\thandlerRes = typeof hookRes?.then === \"function\" ? hookRes.then(() => this.handler(event)) : this.handler(event);\n\t\t\t} else handlerRes = this.handler(event);\n\t\t} catch (error) {\n\t\t\thandlerRes = Promise.reject(error);\n\t\t}\n\t\treturn toResponse(handlerRes, event, this.config);\n\t}\n\t\"~findRoute\"(_event) {}\n\t\"~addRoute\"(_route) {\n\t\tthis[\"~routes\"].push(_route);\n\t}\n\t\"~getMiddleware\"(_event, route) {\n\t\tconst routeMiddleware = route?.data.middleware;\n\t\tconst globalMiddleware = this[\"~middleware\"];\n\t\treturn routeMiddleware ? [...globalMiddleware, ...routeMiddleware] : globalMiddleware;\n\t}\n};\nconst H3 = /* @__PURE__ */ (() => {\n\tclass H3 extends H3Core {\n\t\t\"~rou3\";\n\t\tconstructor(config = {}) {\n\t\t\tsuper(config);\n\t\t\tthis[\"~rou3\"] = createRouter();\n\t\t\tthis.request = this.request.bind(this);\n\t\t\tconfig.plugins?.forEach((plugin) => plugin(this));\n\t\t}\n\t\tregister(plugin) {\n\t\t\tplugin(this);\n\t\t\treturn this;\n\t\t}\n\t\trequest(_req, _init, context) {\n\t\t\treturn this[\"~request\"](toRequest(_req, _init), context);\n\t\t}\n\t\tmount(base, input) {\n\t\t\tif (\"handler\" in input) {\n\t\t\t\tif (input[\"~middleware\"].length > 0) this[\"~middleware\"].push((event, next) => {\n\t\t\t\t\tconst originalPathname = event.url.pathname;\n\t\t\t\t\tif (!originalPathname.startsWith(base) || originalPathname.length > base.length && originalPathname[base.length] !== \"/\") return next();\n\t\t\t\t\tevent.url.pathname = event.url.pathname.slice(base.length) || \"/\";\n\t\t\t\t\treturn callMiddleware(event, input[\"~middleware\"], () => {\n\t\t\t\t\t\tevent.url.pathname = originalPathname;\n\t\t\t\t\t\treturn next();\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t\tfor (const r of input[\"~routes\"]) this[\"~addRoute\"]({\n\t\t\t\t\t...r,\n\t\t\t\t\troute: base + r.route\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tconst fetchHandler = \"fetch\" in input ? input.fetch : input;\n\t\t\t\tthis.all(`${base}/**`, function _mountedMiddleware(event) {\n\t\t\t\t\treturn fetchHandler(requestWithBaseURL(event.req, base));\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn this;\n\t\t}\n\t\ton(method, route, handler, opts) {\n\t\t\tconst _method = (method || \"\").toUpperCase();\n\t\t\troute = new URL(route, \"http://_\").pathname;\n\t\t\tthis[\"~addRoute\"]({\n\t\t\t\tmethod: _method,\n\t\t\t\troute,\n\t\t\t\thandler: toEventHandler(handler),\n\t\t\t\tmiddleware: opts?.middleware,\n\t\t\t\tmeta: {\n\t\t\t\t\t...handler.meta,\n\t\t\t\t\t...opts?.meta\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn this;\n\t\t}\n\t\tall(route, handler, opts) {\n\t\t\treturn this.on(\"\", route, handler, opts);\n\t\t}\n\t\t\"~findRoute\"(_event) {\n\t\t\treturn findRoute(this[\"~rou3\"], _event.req.method, _event.url.pathname);\n\t\t}\n\t\t\"~addRoute\"(_route) {\n\t\t\taddRoute(this[\"~rou3\"], _route.method, _route.route, _route);\n\t\t\tsuper[\"~addRoute\"](_route);\n\t\t}\n\t\tuse(arg1, arg2, arg3) {\n\t\t\tlet route;\n\t\t\tlet fn;\n\t\t\tlet opts;\n\t\t\tif (typeof arg1 === \"string\") {\n\t\t\t\troute = arg1;\n\t\t\t\tfn = arg2;\n\t\t\t\topts = arg3;\n\t\t\t} else {\n\t\t\t\tfn = arg1;\n\t\t\t\topts = arg2;\n\t\t\t}\n\t\t\tif (typeof fn !== \"function\" && \"handler\" in fn) return this.mount(route || \"\", fn);\n\t\t\tthis[\"~middleware\"].push(normalizeMiddleware(fn, {\n\t\t\t\t...opts,\n\t\t\t\troute\n\t\t\t}));\n\t\t\treturn this;\n\t\t}\n\t}\n\tfor (const method of [\n\t\t\"GET\",\n\t\t\"POST\",\n\t\t\"PUT\",\n\t\t\"DELETE\",\n\t\t\"PATCH\",\n\t\t\"HEAD\",\n\t\t\"OPTIONS\",\n\t\t\"CONNECT\",\n\t\t\"TRACE\"\n\t]) H3Core.prototype[method.toLowerCase()] = function(route, handler, opts) {\n\t\treturn this.on(method, route, handler, opts);\n\t};\n\treturn H3;\n})();\nfunction toWebHandler(app) {\n\treturn (request, context) => {\n\t\treturn Promise.resolve(app.request(request, void 0, context || request.context));\n\t};\n}\nfunction fromWebHandler(handler) {\n\treturn function _webHandler(event) {\n\t\treturn handler(event.req, event.context);\n\t};\n}\nfunction fromNodeHandler(handler) {\n\tif (typeof handler !== \"function\") throw new TypeError(`Invalid handler. It should be a function: ${handler}`);\n\treturn function _nodeHandler(event) {\n\t\tif (!event.runtime?.node?.res) throw new Error(\"[h3] Executing Node.js middleware is not supported in this server!\");\n\t\treturn callNodeHandler(handler, event.runtime?.node.req, event.runtime?.node.res);\n\t};\n}\nfunction defineNodeHandler(handler) {\n\treturn handler;\n}\nfunction defineNodeMiddleware(handler) {\n\treturn handler;\n}\nfunction callNodeHandler(handler, req, res) {\n\tconst isMiddleware = handler.length > 2;\n\treturn new Promise((resolve, reject) => {\n\t\tres.once(\"close\", () => resolve(kHandled));\n\t\tres.once(\"finish\", () => resolve(kHandled));\n\t\tres.once(\"error\", (error) => reject(error));\n\t\tres.once(\"pipe\", (stream) => {\n\t\t\tresolve(new Promise((resolve, reject) => {\n\t\t\t\tstream.once(\"close\", () => resolve(kHandled));\n\t\t\t\tstream.once(\"error\", (error) => {\n\t\t\t\t\tconsole.error(\"[h3] Stream error in Node.js handler\", { cause: error });\n\t\t\t\t\treject(kHandled);\n\t\t\t\t});\n\t\t\t}));\n\t\t});\n\t\ttry {\n\t\t\tif (isMiddleware) Promise.resolve(handler(req, res, (error) => error ? reject(new HTTPError({\n\t\t\t\tcause: error,\n\t\t\t\tunhandled: true\n\t\t\t})) : resolve(void 0))).catch((error) => reject(new HTTPError({\n\t\t\t\tcause: error,\n\t\t\t\tunhandled: true\n\t\t\t})));\n\t\t\telse return Promise.resolve(handler(req, res)).then(() => resolve(kHandled)).catch((error) => reject(new HTTPError({\n\t\t\t\tcause: error,\n\t\t\t\tunhandled: true\n\t\t\t})));\n\t\t} catch (error) {\n\t\t\treject(new HTTPError({\n\t\t\t\tcause: error,\n\t\t\t\tunhandled: true\n\t\t\t}));\n\t\t}\n\t});\n}\nfunction defineRoute(def) {\n\tconst handler = defineValidatedHandler(def);\n\treturn (h3) => {\n\t\th3.on(def.method, def.route, handler);\n\t};\n}\nfunction removeRoute$1(app, method, route) {\n\tconst _method = method ? method.toUpperCase() : void 0;\n\troute = new URL(route, \"http://_\").pathname;\n\tremoveRoute(app[\"~rou3\"], _method || \"\", route);\n\tconst idx = app[\"~routes\"].findIndex((r) => r.route === route && (_method == null || r.method === _method));\n\tif (idx !== -1) app[\"~routes\"].splice(idx, 1);\n}\nconst textEncoder = /* @__PURE__ */ new TextEncoder();\nconst textDecoder = /* @__PURE__ */ new TextDecoder();\nconst base64Code = [\n\t65,\n\t66,\n\t67,\n\t68,\n\t69,\n\t70,\n\t71,\n\t72,\n\t73,\n\t74,\n\t75,\n\t76,\n\t77,\n\t78,\n\t79,\n\t80,\n\t81,\n\t82,\n\t83,\n\t84,\n\t85,\n\t86,\n\t87,\n\t88,\n\t89,\n\t90,\n\t97,\n\t98,\n\t99,\n\t100,\n\t101,\n\t102,\n\t103,\n\t104,\n\t105,\n\t106,\n\t107,\n\t108,\n\t109,\n\t110,\n\t111,\n\t112,\n\t113,\n\t114,\n\t115,\n\t116,\n\t117,\n\t118,\n\t119,\n\t120,\n\t121,\n\t122,\n\t48,\n\t49,\n\t50,\n\t51,\n\t52,\n\t53,\n\t54,\n\t55,\n\t56,\n\t57,\n\t45,\n\t95\n];\nfunction base64Encode(data) {\n\tconst buff = validateBinaryLike(data);\n\tif (globalThis.Buffer) return globalThis.Buffer.from(buff).toString(\"base64url\");\n\tconst bytes = [];\n\tlet i;\n\tconst len = buff.length;\n\tfor (i = 2; i < len; i += 3) bytes.push(base64Code[buff[i - 2] >> 2], base64Code[(buff[i - 2] & 3) << 4 | buff[i - 1] >> 4], base64Code[(buff[i - 1] & 15) << 2 | buff[i] >> 6], base64Code[buff[i] & 63]);\n\tif (i === len + 1) bytes.push(base64Code[buff[i - 2] >> 2], base64Code[(buff[i - 2] & 3) << 4]);\n\tif (i === len) bytes.push(base64Code[buff[i - 2] >> 2], base64Code[(buff[i - 2] & 3) << 4 | buff[i - 1] >> 4], base64Code[(buff[i - 1] & 15) << 2]);\n\treturn String.fromCharCode(...bytes);\n}\nfunction base64Decode(b64Url) {\n\tif (globalThis.Buffer) return new Uint8Array(globalThis.Buffer.from(b64Url, \"base64url\"));\n\tconst b64 = b64Url.replace(/-/g, \"+\").replace(/_/g, \"/\");\n\tconst binString = atob(b64);\n\tconst size = binString.length;\n\tconst bytes = new Uint8Array(size);\n\tfor (let i = 0; i < size; i++) bytes[i] = binString.charCodeAt(i);\n\treturn bytes;\n}\nfunction validateBinaryLike(source) {\n\tif (typeof source === \"string\") return textEncoder.encode(source);\n\telse if (source instanceof Uint8Array) return source;\n\telse if (source instanceof ArrayBuffer) return new Uint8Array(source);\n\tthrow new TypeError(`The input must be a Uint8Array, a string, or an ArrayBuffer.`);\n}\nfunction serializeIterableValue(value) {\n\tswitch (typeof value) {\n\t\tcase \"string\": return textEncoder.encode(value);\n\t\tcase \"boolean\":\n\t\tcase \"number\":\n\t\tcase \"bigint\":\n\t\tcase \"symbol\": return textEncoder.encode(value.toString());\n\t\tcase \"object\":\n\t\t\tif (value instanceof Uint8Array) return value;\n\t\t\treturn textEncoder.encode(JSON.stringify(value));\n\t}\n\treturn new Uint8Array();\n}\nfunction coerceIterable(iterable) {\n\tif (typeof iterable === \"function\") iterable = iterable();\n\tif (Symbol.iterator in iterable) return iterable[Symbol.iterator]();\n\tif (Symbol.asyncIterator in iterable) return iterable[Symbol.asyncIterator]();\n\treturn iterable;\n}\nfunction noContent(status = 204) {\n\treturn new HTTPResponse(null, {\n\t\tstatus,\n\t\tstatusText: \"No Content\"\n\t});\n}\nfunction redirect(location, status = 302, statusText) {\n\treturn new HTTPResponse(`<html><head><meta http-equiv=\"refresh\" content=\"0; url=${location.replace(/[&\"<>]/g, (c) => ({\n\t\t\"&\": \"&amp;\",\n\t\t\"\\\"\": \"&quot;\",\n\t\t\"<\": \"&lt;\",\n\t\t\">\": \"&gt;\"\n\t})[c])}\" /></head></html>`, {\n\t\tstatus,\n\t\tstatusText: statusText || (status === 301 ? \"Moved Permanently\" : \"Found\"),\n\t\theaders: {\n\t\t\t\"content-type\": \"text/html; charset=utf-8\",\n\t\t\tlocation\n\t\t}\n\t});\n}\nfunction redirectBack(event, opts = {}) {\n\tconst referer = event.req.headers.get(\"referer\");\n\tlet location = opts.fallback ?? \"/\";\n\tif (referer && URL.canParse(referer)) {\n\t\tconst refererURL = new URL(referer);\n\t\tif (refererURL.origin === event.url.origin) {\n\t\t\tlet pathname = refererURL.pathname;\n\t\t\tif (pathname.startsWith(\"//\")) pathname = \"/\" + pathname.replace(/^\\/+/, \"\");\n\t\t\tlocation = pathname + (opts.allowQuery ? refererURL.search : \"\");\n\t\t}\n\t}\n\treturn redirect(location, opts.status);\n}\nfunction writeEarlyHints(event, hints) {\n\tif (event.runtime?.node?.res?.writeEarlyHints) return new Promise((resolve) => {\n\t\tevent.runtime?.node?.res?.writeEarlyHints(hints, () => resolve());\n\t});\n\tfor (const [name, value] of Object.entries(hints)) {\n\t\tif (name.toLowerCase() !== \"link\") continue;\n\t\tif (Array.isArray(value)) for (const v of value) event.res.headers.append(\"link\", v);\n\t\telse event.res.headers.append(\"link\", value);\n\t}\n}\nfunction iterable(iterable, options) {\n\tconst serializer = options?.serializer ?? serializeIterableValue;\n\tconst iterator = coerceIterable(iterable);\n\treturn new HTTPResponse(new ReadableStream({\n\t\tasync pull(controller) {\n\t\t\tconst { value, done } = await iterator.next();\n\t\t\tif (value !== void 0) {\n\t\t\t\tconst chunk = serializer(value);\n\t\t\t\tif (chunk !== void 0) controller.enqueue(chunk);\n\t\t\t}\n\t\t\tif (done) controller.close();\n\t\t},\n\t\tcancel() {\n\t\t\titerator.return?.();\n\t\t}\n\t}));\n}\nfunction html(first, ...values) {\n\treturn new HTTPResponse(typeof first === \"string\" ? first : first.reduce((out, str, i) => out + str + (values[i] ?? \"\"), \"\"), { headers: { \"content-type\": \"text/html; charset=utf-8\" } });\n}\nfunction parseURLEncodedBody(body) {\n\tconst form = new URLSearchParams(body);\n\tconst parsedForm = new EmptyObject();\n\tfor (const [key, value] of form.entries()) if (hasProp(parsedForm, key)) {\n\t\tif (!Array.isArray(parsedForm[key])) parsedForm[key] = [parsedForm[key]];\n\t\tparsedForm[key].push(value);\n\t} else parsedForm[key] = value;\n\treturn parsedForm;\n}\nasync function readBody(event) {\n\tconst text = await event.req.text();\n\tif (!text) return;\n\tif ((event.req.headers.get(\"content-type\") || \"\").startsWith(\"application/x-www-form-urlencoded\")) return parseURLEncodedBody(text);\n\ttry {\n\t\treturn JSON.parse(text);\n\t} catch {\n\t\tthrow new HTTPError({\n\t\t\tstatus: 400,\n\t\t\tstatusText: \"Bad Request\",\n\t\t\tmessage: \"Invalid JSON body\"\n\t\t});\n\t}\n}\nasync function readValidatedBody(event, validate, options) {\n\treturn validateData(await readBody(event), validate, options);\n}\nasync function assertBodySize(event, limit) {\n\tif (!await isBodySizeWithin(event, limit)) throw new HTTPError({\n\t\tstatus: 413,\n\t\tstatusText: \"Request Entity Too Large\",\n\t\tmessage: `Request body size exceeds the limit of ${limit} bytes`\n\t});\n}\nasync function isBodySizeWithin(event, limit) {\n\tconst req = event.req;\n\tif (req.body === null) return true;\n\tconst contentLength = req.headers.get(\"content-length\");\n\tif (contentLength) {\n\t\tif (req.headers.get(\"transfer-encoding\")) throw new HTTPError({ status: 400 });\n\t\tif (+contentLength > limit) return false;\n\t}\n\tconst reader = req.clone().body.getReader();\n\tlet chunk = await reader.read();\n\tlet size = 0;\n\twhile (!chunk.done) {\n\t\tsize += chunk.value.byteLength;\n\t\tif (size > limit) {\n\t\t\treader.cancel();\n\t\t\treturn false;\n\t\t}\n\t\tchunk = await reader.read();\n\t}\n\treturn true;\n}\nfunction onRequest(hook) {\n\treturn async function _onRequestMiddleware(event) {\n\t\tawait hook(event);\n\t};\n}\nfunction onResponse(hook) {\n\treturn async function _onResponseMiddleware(event, next) {\n\t\tconst response = await toResponse(await next(), event);\n\t\treturn await hook(response, event) || response;\n\t};\n}\nfunction onError(hook) {\n\treturn async (event, next) => {\n\t\ttry {\n\t\t\treturn await next();\n\t\t} catch (rawError) {\n\t\t\tconst isHTTPError = HTTPError.isError(rawError);\n\t\t\tconst error = isHTTPError ? rawError : new HTTPError(rawError);\n\t\t\tif (!isHTTPError) {\n\t\t\t\terror.unhandled = true;\n\t\t\t\tif (rawError?.stack) error.stack = rawError.stack;\n\t\t\t}\n\t\t\tconst hookResponse = await hook(error, event);\n\t\t\tif (hookResponse !== void 0) return hookResponse;\n\t\t\tthrow error;\n\t\t}\n\t};\n}\nfunction bodyLimit(limit) {\n\treturn async (event, next) => {\n\t\tawait assertBodySize(event, limit);\n\t\treturn next();\n\t};\n}\nconst PayloadMethods = new Set([\n\t\"PATCH\",\n\t\"POST\",\n\t\"PUT\",\n\t\"DELETE\"\n]);\nconst ignoredHeaders = new Set([\n\t\"transfer-encoding\",\n\t\"connection\",\n\t\"keep-alive\",\n\t\"upgrade\",\n\t\"expect\",\n\t\"host\",\n\t\"accept\"\n]);\nfunction rewriteCookieProperty(header, map, property) {\n\tconst _map = typeof map === \"string\" ? { \"*\": map } : map;\n\treturn header.replace(new RegExp(`(;\\\\s*${property}=)([^;]+)`, \"gi\"), (match, prefix, previousValue) => {\n\t\tlet newValue;\n\t\tif (previousValue in _map) newValue = _map[previousValue];\n\t\telse if (\"*\" in _map) newValue = _map[\"*\"];\n\t\telse return match;\n\t\treturn newValue ? prefix + newValue : \"\";\n\t});\n}\nfunction mergeHeaders(defaults, ...inputs) {\n\tconst _inputs = inputs.filter(Boolean);\n\tif (_inputs.length === 0) return defaults;\n\tconst merged = new Headers(defaults);\n\tfor (const input of _inputs) {\n\t\tconst entries = Array.isArray(input) ? input : typeof input.entries === \"function\" ? input.entries() : Object.entries(input);\n\t\tfor (const [key, value] of entries) if (value !== void 0) merged.set(key, value);\n\t}\n\treturn merged;\n}\nasync function proxyRequest(event, target, opts = {}) {\n\tconst requestBody = PayloadMethods.has(event.req.method) ? event.req.body : void 0;\n\tconst method = opts.fetchOptions?.method || event.req.method;\n\tconst fetchHeaders = mergeHeaders(getProxyRequestHeaders(event, {\n\t\thost: target.startsWith(\"/\"),\n\t\tforwardHeaders: opts.forwardHeaders,\n\t\tfilterHeaders: opts.filterHeaders\n\t}), opts.fetchOptions?.headers, opts.headers);\n\treturn proxy(event, target, {\n\t\t...opts,\n\t\tfetchOptions: {\n\t\t\tmethod,\n\t\t\tbody: requestBody,\n\t\t\tduplex: requestBody ? \"half\" : void 0,\n\t\t\t...opts.fetchOptions,\n\t\t\theaders: fetchHeaders\n\t\t}\n\t});\n}\nasync function proxy(event, target, opts = {}) {\n\tconst fetchOptions = {\n\t\theaders: opts.headers,\n\t\t...opts.fetchOptions\n\t};\n\tlet response;\n\ttry {\n\t\tresponse = target[0] === \"/\" ? await event.app.fetch(createSubRequest(event, target, fetchOptions)) : await fetch(target, fetchOptions);\n\t} catch (error) {\n\t\tthrow new HTTPError({\n\t\t\tstatus: 502,\n\t\t\tcause: error\n\t\t});\n\t}\n\tconst headers = new Headers();\n\tconst cookies = [];\n\tfor (const [key, value] of response.headers.entries()) {\n\t\tif (key === \"content-encoding\" || key === \"content-length\" || key === \"transfer-encoding\") continue;\n\t\tif (key === \"set-cookie\") {\n\t\t\tcookies.push(value);\n\t\t\tcontinue;\n\t\t}\n\t\theaders.append(key, value);\n\t}\n\tif (cookies.length > 0) {\n\t\tconst _cookies = cookies.map((cookie) => {\n\t\t\tif (opts.cookieDomainRewrite) cookie = rewriteCookieProperty(cookie, opts.cookieDomainRewrite, \"domain\");\n\t\t\tif (opts.cookiePathRewrite) cookie = rewriteCookieProperty(cookie, opts.cookiePathRewrite, \"path\");\n\t\t\treturn cookie;\n\t\t});\n\t\tfor (const cookie of _cookies) headers.append(\"set-cookie\", cookie);\n\t}\n\tif (opts.onResponse) await opts.onResponse(event, response);\n\treturn new HTTPResponse(response.body, {\n\t\tstatus: response.status,\n\t\tstatusText: response.statusText,\n\t\theaders\n\t});\n}\nfunction getProxyRequestHeaders(event, opts) {\n\tconst headers = new EmptyObject();\n\tfor (const [name, value] of event.req.headers.entries()) {\n\t\tif (opts?.filterHeaders?.includes(name)) continue;\n\t\tif (opts?.forwardHeaders?.includes(name)) {\n\t\t\theaders[name] = value;\n\t\t\tcontinue;\n\t\t}\n\t\tif (!ignoredHeaders.has(name) || name === \"host\" && opts?.host) {\n\t\t\theaders[name] = value;\n\t\t\tcontinue;\n\t\t}\n\t}\n\treturn headers;\n}\nasync function fetchWithEvent(event, url, init) {\n\tif (url[0] !== \"/\") return fetch(url, init);\n\treturn event.app.fetch(createSubRequest(event, url, {\n\t\t...init,\n\t\theaders: mergeHeaders(getProxyRequestHeaders(event, { host: true }), init?.headers)\n\t}));\n}\nfunction createSubRequest(event, path, init) {\n\tconst url = new URL(path, event.url);\n\tconst req = new Request(url, init);\n\treq.runtime = event.req.runtime;\n\treq.waitUntil = event.req.waitUntil;\n\treq.ip = event.req.ip;\n\treturn req;\n}\nconst COOKIE_MAX_AGE_LIMIT = 3456e4;\nfunction endIndex(str, min, len) {\n\tconst index = str.indexOf(\";\", min);\n\treturn index === -1 ? len : index;\n}\nfunction eqIndex(str, min, max) {\n\tconst index = str.indexOf(\"=\", min);\n\treturn index < max ? index : -1;\n}\nfunction valueSlice(str, min, max) {\n\tif (min === max) return \"\";\n\tlet start = min;\n\tlet end = max;\n\tdo {\n\t\tconst code = str.charCodeAt(start);\n\t\tif (code !== 32 && code !== 9) break;\n\t} while (++start < end);\n\twhile (end > start) {\n\t\tconst code = str.charCodeAt(end - 1);\n\t\tif (code !== 32 && code !== 9) break;\n\t\tend--;\n\t}\n\treturn str.slice(start, end);\n}\nconst NullObject = /* @__PURE__ */ (() => {\n\tconst C = function() {};\n\tC.prototype = Object.create(null);\n\treturn C;\n})();\nfunction parse(str, options) {\n\tconst obj = new NullObject();\n\tconst len = str.length;\n\tif (len < 2) return obj;\n\tconst dec = options?.decode || decode;\n\tconst allowMultiple = options?.allowMultiple || false;\n\tlet index = 0;\n\tdo {\n\t\tconst eqIdx = eqIndex(str, index, len);\n\t\tif (eqIdx === -1) break;\n\t\tconst endIdx = endIndex(str, index, len);\n\t\tif (eqIdx > endIdx) {\n\t\t\tindex = str.lastIndexOf(\";\", eqIdx - 1) + 1;\n\t\t\tcontinue;\n\t\t}\n\t\tconst key = valueSlice(str, index, eqIdx);\n\t\tif (options?.filter && !options.filter(key)) {\n\t\t\tindex = endIdx + 1;\n\t\t\tcontinue;\n\t\t}\n\t\tconst val = dec(valueSlice(str, eqIdx + 1, endIdx));\n\t\tif (allowMultiple) {\n\t\t\tconst existing = obj[key];\n\t\t\tif (existing === void 0) obj[key] = val;\n\t\t\telse if (Array.isArray(existing)) existing.push(val);\n\t\t\telse obj[key] = [existing, val];\n\t\t} else if (obj[key] === void 0) obj[key] = val;\n\t\tindex = endIdx + 1;\n\t} while (index < len);\n\treturn obj;\n}\nfunction decode(str) {\n\tif (!str.includes(\"%\")) return str;\n\ttry {\n\t\treturn decodeURIComponent(str);\n\t} catch {\n\t\treturn str;\n\t}\n}\nconst cookieNameRegExp = /^[\\u0021-\\u003A\\u003C\\u003E-\\u007E]+$/;\nconst cookieValueRegExp = /^[\\u0021-\\u003A\\u003C-\\u007E]*$/;\nconst domainValueRegExp = /^([.]?[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)([.][a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?)*$/i;\nconst pathValueRegExp = /^[\\u0020-\\u003A\\u003C-\\u007E]*$/;\nconst __toString = Object.prototype.toString;\nfunction serialize(_a0, _a1, _a2) {\n\tconst isObj = typeof _a0 === \"object\" && _a0 !== null;\n\tconst options = isObj ? _a1 : _a2;\n\tconst stringify = options?.stringify || JSON.stringify;\n\tconst cookie = isObj ? _a0 : {\n\t\t..._a2,\n\t\tname: _a0,\n\t\tvalue: _a1 == void 0 ? \"\" : typeof _a1 === \"string\" ? _a1 : stringify(_a1)\n\t};\n\tconst enc = options?.encode || encodeURIComponent;\n\tif (!cookieNameRegExp.test(cookie.name)) throw new TypeError(`argument name is invalid: ${cookie.name}`);\n\tconst value = cookie.value ? enc(cookie.value) : \"\";\n\tif (!cookieValueRegExp.test(value)) throw new TypeError(`argument val is invalid: ${cookie.value}`);\n\tif (!cookie.secure) {\n\t\tif (cookie.partitioned) throw new TypeError(`Partitioned cookies must have the Secure attribute`);\n\t\tif (cookie.sameSite && String(cookie.sameSite).toLowerCase() === \"none\") throw new TypeError(`SameSite=None cookies must have the Secure attribute`);\n\t\tif (cookie.name.length > 9 && cookie.name.charCodeAt(0) === 95 && cookie.name.charCodeAt(1) === 95) {\n\t\t\tconst nameLower = cookie.name.toLowerCase();\n\t\t\tif (nameLower.startsWith(\"__secure-\") || nameLower.startsWith(\"__host-\")) throw new TypeError(`${cookie.name} cookies must have the Secure attribute`);\n\t\t}\n\t}\n\tif (cookie.name.length > 7 && cookie.name.charCodeAt(0) === 95 && cookie.name.charCodeAt(1) === 95 && cookie.name.toLowerCase().startsWith(\"__host-\")) {\n\t\tif (cookie.path !== \"/\") throw new TypeError(`__Host- cookies must have Path=/`);\n\t\tif (cookie.domain) throw new TypeError(`__Host- cookies must not have a Domain attribute`);\n\t}\n\tlet str = cookie.name + \"=\" + value;\n\tif (cookie.maxAge !== void 0) {\n\t\tif (!Number.isInteger(cookie.maxAge)) throw new TypeError(`option maxAge is invalid: ${cookie.maxAge}`);\n\t\tstr += \"; Max-Age=\" + Math.max(0, Math.min(cookie.maxAge, COOKIE_MAX_AGE_LIMIT));\n\t}\n\tif (cookie.domain) {\n\t\tif (!domainValueRegExp.test(cookie.domain)) throw new TypeError(`option domain is invalid: ${cookie.domain}`);\n\t\tstr += \"; Domain=\" + cookie.domain;\n\t}\n\tif (cookie.path) {\n\t\tif (!pathValueRegExp.test(cookie.path)) throw new TypeError(`option path is invalid: ${cookie.path}`);\n\t\tstr += \"; Path=\" + cookie.path;\n\t}\n\tif (cookie.expires) {\n\t\tif (!isDate(cookie.expires) || !Number.isFinite(cookie.expires.valueOf())) throw new TypeError(`option expires is invalid: ${cookie.expires}`);\n\t\tstr += \"; Expires=\" + cookie.expires.toUTCString();\n\t}\n\tif (cookie.httpOnly) str += \"; HttpOnly\";\n\tif (cookie.secure) str += \"; Secure\";\n\tif (cookie.partitioned) str += \"; Partitioned\";\n\tif (cookie.priority) switch (typeof cookie.priority === \"string\" ? cookie.priority.toLowerCase() : void 0) {\n\t\tcase \"low\":\n\t\t\tstr += \"; Priority=Low\";\n\t\t\tbreak;\n\t\tcase \"medium\":\n\t\t\tstr += \"; Priority=Medium\";\n\t\t\tbreak;\n\t\tcase \"high\":\n\t\t\tstr += \"; Priority=High\";\n\t\t\tbreak;\n\t\tdefault: throw new TypeError(`option priority is invalid: ${cookie.priority}`);\n\t}\n\tif (cookie.sameSite) switch (typeof cookie.sameSite === \"string\" ? cookie.sameSite.toLowerCase() : cookie.sameSite) {\n\t\tcase true:\n\t\tcase \"strict\":\n\t\t\tstr += \"; SameSite=Strict\";\n\t\t\tbreak;\n\t\tcase \"lax\":\n\t\t\tstr += \"; SameSite=Lax\";\n\t\t\tbreak;\n\t\tcase \"none\":\n\t\t\tstr += \"; SameSite=None\";\n\t\t\tbreak;\n\t\tdefault: throw new TypeError(`option sameSite is invalid: ${cookie.sameSite}`);\n\t}\n\treturn str;\n}\nfunction isDate(val) {\n\treturn __toString.call(val) === \"[object Date]\";\n}\nconst maxAgeRegExp = /^-?\\d+$/;\nconst _nullProto = /* @__PURE__ */ Object.getPrototypeOf({});\nfunction parseSetCookie(str, options) {\n\tconst len = str.length;\n\tlet _endIdx = len;\n\tlet eqIdx = -1;\n\tfor (let i = 0; i < len; i++) {\n\t\tconst c = str.charCodeAt(i);\n\t\tif (c === 59) {\n\t\t\t_endIdx = i;\n\t\t\tbreak;\n\t\t}\n\t\tif (c === 61 && eqIdx === -1) eqIdx = i;\n\t}\n\tif (eqIdx >= _endIdx) eqIdx = -1;\n\tconst name = eqIdx === -1 ? \"\" : _trim(str, 0, eqIdx);\n\tif (name && name in _nullProto) return void 0;\n\tlet value = eqIdx === -1 ? _trim(str, 0, _endIdx) : _trim(str, eqIdx + 1, _endIdx);\n\tif (!name && !value) return void 0;\n\tif (name.length + value.length > 4096) return void 0;\n\tif (options?.decode !== false) value = _decode(value, options?.decode);\n\tconst setCookie = {\n\t\tname,\n\t\tvalue\n\t};\n\tlet index = _endIdx + 1;\n\twhile (index < len) {\n\t\tlet endIdx = len;\n\t\tlet attrEqIdx = -1;\n\t\tfor (let i = index; i < len; i++) {\n\t\t\tconst c = str.charCodeAt(i);\n\t\t\tif (c === 59) {\n\t\t\t\tendIdx = i;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (c === 61 && attrEqIdx === -1) attrEqIdx = i;\n\t\t}\n\t\tif (attrEqIdx >= endIdx) attrEqIdx = -1;\n\t\tconst attr = attrEqIdx === -1 ? _trim(str, index, endIdx) : _trim(str, index, attrEqIdx);\n\t\tconst val = attrEqIdx === -1 ? void 0 : _trim(str, attrEqIdx + 1, endIdx);\n\t\tif (val === void 0 || val.length <= 1024) switch (attr.toLowerCase()) {\n\t\t\tcase \"httponly\":\n\t\t\t\tsetCookie.httpOnly = true;\n\t\t\t\tbreak;\n\t\t\tcase \"secure\":\n\t\t\t\tsetCookie.secure = true;\n\t\t\t\tbreak;\n\t\t\tcase \"partitioned\":\n\t\t\t\tsetCookie.partitioned = true;\n\t\t\t\tbreak;\n\t\t\tcase \"domain\":\n\t\t\t\tif (val) setCookie.domain = (val.charCodeAt(0) === 46 ? val.slice(1) : val).toLowerCase();\n\t\t\t\tbreak;\n\t\t\tcase \"path\":\n\t\t\t\tsetCookie.path = val;\n\t\t\t\tbreak;\n\t\t\tcase \"max-age\":\n\t\t\t\tif (val && maxAgeRegExp.test(val)) setCookie.maxAge = Math.min(Number(val), COOKIE_MAX_AGE_LIMIT);\n\t\t\t\tbreak;\n\t\t\tcase \"expires\": {\n\t\t\t\tif (!val) break;\n\t\t\t\tconst date = new Date(val);\n\t\t\t\tif (Number.isFinite(date.valueOf())) {\n\t\t\t\t\tconst maxDate = new Date(Date.now() + COOKIE_MAX_AGE_LIMIT * 1e3);\n\t\t\t\t\tsetCookie.expires = date > maxDate ? maxDate : date;\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"priority\": {\n\t\t\t\tif (!val) break;\n\t\t\t\tconst priority = val.toLowerCase();\n\t\t\t\tif (priority === \"low\" || priority === \"medium\" || priority === \"high\") setCookie.priority = priority;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"samesite\": {\n\t\t\t\tif (!val) break;\n\t\t\t\tconst sameSite = val.toLowerCase();\n\t\t\t\tif (sameSite === \"lax\" || sameSite === \"strict\" || sameSite === \"none\") setCookie.sameSite = sameSite;\n\t\t\t\telse setCookie.sameSite = \"lax\";\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault: {\n\t\t\t\tconst attrLower = attr.toLowerCase();\n\t\t\t\tif (attrLower && !(attrLower in _nullProto)) setCookie[attrLower] = val;\n\t\t\t}\n\t\t}\n\t\tindex = endIdx + 1;\n\t}\n\treturn setCookie;\n}\nfunction _trim(str, start, end) {\n\tif (start === end) return \"\";\n\tlet s = start;\n\tlet e = end;\n\twhile (s < e && (str.charCodeAt(s) === 32 || str.charCodeAt(s) === 9)) s++;\n\twhile (e > s && (str.charCodeAt(e - 1) === 32 || str.charCodeAt(e - 1) === 9)) e--;\n\treturn str.slice(s, e);\n}\nfunction _decode(value, decode) {\n\tif (!decode && !value.includes(\"%\")) return value;\n\ttry {\n\t\treturn (decode || decodeURIComponent)(value);\n\t} catch {\n\t\treturn value;\n\t}\n}\nconst CHUNKED_COOKIE = \"__chunked__\";\nconst CHUNKS_MAX_LENGTH = 4e3;\nfunction parseCookies(event) {\n\treturn parse(event.req.headers.get(\"cookie\") || \"\");\n}\nfunction getValidatedCookies(event, validate, options) {\n\treturn validateData(parseCookies(event), validate, options);\n}\nfunction getCookie(event, name) {\n\treturn parseCookies(event)[name];\n}\nfunction setCookie(event, name, value, options) {\n\tconst newCookie = serialize({\n\t\tname,\n\t\tvalue,\n\t\tpath: \"/\",\n\t\t...options\n\t});\n\tconst currentCookies = event.res.headers.getSetCookie();\n\tif (currentCookies.length === 0) {\n\t\tevent.res.headers.set(\"set-cookie\", newCookie);\n\t\treturn;\n\t}\n\tconst newCookieKey = _getDistinctCookieKey(name, options || {});\n\tevent.res.headers.delete(\"set-cookie\");\n\tfor (const cookie of currentCookies) {\n\t\tconst parsed = parseSetCookie(cookie);\n\t\tif (!parsed) continue;\n\t\tif (_getDistinctCookieKey(cookie.split(\"=\")?.[0], parsed) === newCookieKey) continue;\n\t\tevent.res.headers.append(\"set-cookie\", cookie);\n\t}\n\tevent.res.headers.append(\"set-cookie\", newCookie);\n}\nfunction deleteCookie(event, name, serializeOptions) {\n\tsetCookie(event, name, \"\", {\n\t\t...serializeOptions,\n\t\tmaxAge: 0\n\t});\n}\nfunction getChunkedCookie(event, name) {\n\tconst mainCookie = getCookie(event, name);\n\tif (!mainCookie || !mainCookie.startsWith(CHUNKED_COOKIE)) return mainCookie;\n\tconst chunksCount = getChunkedCookieCount(mainCookie);\n\tif (chunksCount === 0) return;\n\tconst chunks = [];\n\tfor (let i = 1; i <= chunksCount; i++) {\n\t\tconst chunk = getCookie(event, chunkCookieName(name, i));\n\t\tif (!chunk) return;\n\t\tchunks.push(chunk);\n\t}\n\treturn chunks.join(\"\");\n}\nfunction setChunkedCookie(event, name, value, options) {\n\tconst chunkMaxLength = options?.chunkMaxLength || CHUNKS_MAX_LENGTH;\n\tconst chunkCount = Math.ceil(value.length / chunkMaxLength);\n\tconst previousCookie = getCookie(event, name);\n\tif (previousCookie?.startsWith(CHUNKED_COOKIE)) {\n\t\tconst previousChunkCount = getChunkedCookieCount(previousCookie);\n\t\tif (previousChunkCount > chunkCount) for (let i = chunkCount; i <= previousChunkCount; i++) deleteCookie(event, chunkCookieName(name, i), options);\n\t}\n\tif (chunkCount <= 1) {\n\t\tsetCookie(event, name, value, options);\n\t\treturn;\n\t}\n\tsetCookie(event, name, `${CHUNKED_COOKIE}${chunkCount}`, options);\n\tfor (let i = 1; i <= chunkCount; i++) {\n\t\tconst start = (i - 1) * chunkMaxLength;\n\t\tconst end = start + chunkMaxLength;\n\t\tconst chunkValue = value.slice(start, end);\n\t\tsetCookie(event, chunkCookieName(name, i), chunkValue, options);\n\t}\n}\nfunction deleteChunkedCookie(event, name, serializeOptions) {\n\tconst mainCookie = getCookie(event, name);\n\tdeleteCookie(event, name, serializeOptions);\n\tconst chunksCount = getChunkedCookieCount(mainCookie);\n\tif (chunksCount >= 0) for (let i = 0; i < chunksCount; i++) deleteCookie(event, chunkCookieName(name, i + 1), serializeOptions);\n}\nfunction _getDistinctCookieKey(name, options) {\n\treturn [\n\t\tname,\n\t\toptions.domain || \"\",\n\t\toptions.path || \"/\"\n\t].join(\";\");\n}\nconst MAX_CHUNKED_COOKIE_COUNT = 100;\nfunction getChunkedCookieCount(cookie) {\n\tif (!cookie?.startsWith(CHUNKED_COOKIE)) return NaN;\n\tconst count = Number.parseInt(cookie.slice(11));\n\tif (Number.isNaN(count) || count < 0 || count > MAX_CHUNKED_COOKIE_COUNT) return NaN;\n\treturn count;\n}\nfunction chunkCookieName(name, chunkNumber) {\n\treturn `${name}.${chunkNumber}`;\n}\nconst _noop = () => {};\nvar EventStream = class {\n\t_event;\n\t_transformStream = new TransformStream();\n\t_writer;\n\t_encoder = new TextEncoder();\n\t_writerIsClosed = false;\n\t_paused = false;\n\t_unsentData;\n\t_disposed = false;\n\t_handled = false;\n\tconstructor(event, opts = {}) {\n\t\tthis._event = event;\n\t\tthis._writer = this._transformStream.writable.getWriter();\n\t\tthis._writer.closed.then(() => {\n\t\t\tthis._writerIsClosed = true;\n\t\t});\n\t\tif (opts.autoclose !== false) this._event.runtime?.node?.res?.once(\"close\", () => this.close());\n\t}\n\tasync push(message) {\n\t\tif (typeof message === \"string\") {\n\t\t\tawait this._sendEvent({ data: message });\n\t\t\treturn;\n\t\t}\n\t\tif (Array.isArray(message)) {\n\t\t\tif (message.length === 0) return;\n\t\t\tif (typeof message[0] === \"string\") {\n\t\t\t\tconst msgs = [];\n\t\t\t\tfor (const item of message) msgs.push({ data: item });\n\t\t\t\tawait this._sendEvents(msgs);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tawait this._sendEvents(message);\n\t\t\treturn;\n\t\t}\n\t\tawait this._sendEvent(message);\n\t}\n\tasync pushComment(comment) {\n\t\tif (this._writerIsClosed) return;\n\t\tif (this._paused && !this._unsentData) {\n\t\t\tthis._unsentData = formatEventStreamComment(comment);\n\t\t\treturn;\n\t\t}\n\t\tif (this._paused) {\n\t\t\tthis._unsentData += formatEventStreamComment(comment);\n\t\t\treturn;\n\t\t}\n\t\tawait this._writer.write(this._encoder.encode(formatEventStreamComment(comment))).catch(() => {\n\t\t\tthis._writerIsClosed = true;\n\t\t});\n\t}\n\tasync _sendEvent(message) {\n\t\tif (this._writerIsClosed) return;\n\t\tif (this._paused && !this._unsentData) {\n\t\t\tthis._unsentData = formatEventStreamMessage(message);\n\t\t\treturn;\n\t\t}\n\t\tif (this._paused) {\n\t\t\tthis._unsentData += formatEventStreamMessage(message);\n\t\t\treturn;\n\t\t}\n\t\tawait this._writer.write(this._encoder.encode(formatEventStreamMessage(message))).catch(() => {\n\t\t\tthis._writerIsClosed = true;\n\t\t});\n\t}\n\tasync _sendEvents(messages) {\n\t\tif (this._writerIsClosed) return;\n\t\tconst payload = formatEventStreamMessages(messages);\n\t\tif (this._paused && !this._unsentData) {\n\t\t\tthis._unsentData = payload;\n\t\t\treturn;\n\t\t}\n\t\tif (this._paused) {\n\t\t\tthis._unsentData += payload;\n\t\t\treturn;\n\t\t}\n\t\tawait this._writer.write(this._encoder.encode(payload)).catch(() => {\n\t\t\tthis._writerIsClosed = true;\n\t\t});\n\t}\n\tpause() {\n\t\tthis._paused = true;\n\t}\n\tget isPaused() {\n\t\treturn this._paused;\n\t}\n\tasync resume() {\n\t\tthis._paused = false;\n\t\tawait this.flush();\n\t}\n\tasync flush() {\n\t\tif (this._writerIsClosed) return;\n\t\tif (this._unsentData?.length) {\n\t\t\tawait this._writer.write(this._encoder.encode(this._unsentData)).catch(() => {\n\t\t\t\tthis._writerIsClosed = true;\n\t\t\t});\n\t\t\tthis._unsentData = void 0;\n\t\t}\n\t}\n\tasync close() {\n\t\tif (this._disposed) return;\n\t\tif (!this._writerIsClosed) try {\n\t\t\tawait this._writer.close();\n\t\t} catch {}\n\t\tthis._disposed = true;\n\t}\n\tonClosed(cb) {\n\t\tthis._writer.closed.then(cb).catch(_noop);\n\t}\n\tasync send() {\n\t\tsetEventStreamHeaders(this._event);\n\t\tthis._event.res.status = 200;\n\t\tthis._handled = true;\n\t\treturn this._transformStream.readable;\n\t}\n};\nfunction formatEventStreamComment(comment) {\n\treturn comment.split(/\\r\\n|\\r|\\n/).map((l) => `: ${l}\\n`).join(\"\") + \"\\n\";\n}\nfunction formatEventStreamMessage(message) {\n\tlet result = \"\";\n\tif (message.id) result += `id: ${_sanitizeSingleLine(message.id)}\\n`;\n\tif (message.event) result += `event: ${_sanitizeSingleLine(message.event)}\\n`;\n\tif (typeof message.retry === \"number\" && Number.isInteger(message.retry)) result += `retry: ${message.retry}\\n`;\n\tconst data = typeof message.data === \"string\" ? message.data : \"\";\n\tfor (const line of data.split(/\\r\\n|\\r|\\n/)) result += `data: ${line}\\n`;\n\tresult += \"\\n\";\n\treturn result;\n}\nfunction _sanitizeSingleLine(value) {\n\treturn value.replace(/[\\n\\r]/g, \"\");\n}\nfunction formatEventStreamMessages(messages) {\n\tlet result = \"\";\n\tfor (const msg of messages) result += formatEventStreamMessage(msg);\n\treturn result;\n}\nfunction setEventStreamHeaders(event) {\n\tevent.res.headers.set(\"content-type\", \"text/event-stream\");\n\tevent.res.headers.set(\"cache-control\", \"private, no-cache, no-store, no-transform, must-revalidate, max-age=0\");\n\tevent.res.headers.set(\"x-accel-buffering\", \"no\");\n\tif (event.req.headers.get(\"connection\") === \"keep-alive\") event.res.headers.set(\"connection\", \"keep-alive\");\n}\nfunction createEventStream(event, opts) {\n\treturn new EventStream(event, opts);\n}\nfunction setServerTiming(event, name, opts) {\n\tif (!_isValidToken(name)) throw new TypeError(`Invalid Server-Timing metric name: ${name}`);\n\tif (opts?.dur !== void 0 && (!Number.isFinite(opts.dur) || opts.dur < 0)) throw new TypeError(`Invalid Server-Timing duration: ${opts.dur}`);\n\tconst value = name + (opts?.desc ? `;desc=\"${_escapeDesc(opts.desc)}\"` : \"\") + (opts?.dur !== void 0 ? `;dur=${opts.dur}` : \"\");\n\tevent.res.headers.append(\"server-timing\", value);\n\tconst ctx = event.context;\n\tif (!Array.isArray(ctx.timing)) ctx.timing = [];\n\tctx.timing.push({\n\t\tname,\n\t\t...opts\n\t});\n}\nasync function withServerTiming(event, name, fn) {\n\tconst start = performance.now();\n\ttry {\n\t\treturn await fn();\n\t} finally {\n\t\tsetServerTiming(event, name, { dur: performance.now() - start });\n\t}\n}\nconst _tokenRE = /^[\\w!#$%&'*+.^`|~-]+$/;\nfunction _isValidToken(value) {\n\treturn _tokenRE.test(value);\n}\nfunction _escapeDesc(value) {\n\treturn value.replaceAll(\"\\\\\", \"\\\\\\\\\").replaceAll(\"\\\"\", \"\\\\\\\"\");\n}\nfunction handleCacheHeaders(event, opts) {\n\tconst cacheControls = [\"public\", ...opts.cacheControls || []];\n\tlet cacheMatched = false;\n\tif (opts.maxAge !== void 0) cacheControls.push(`max-age=${+opts.maxAge}`, `s-maxage=${+opts.maxAge}`);\n\tif (opts.modifiedTime) {\n\t\tconst modifiedTime = new Date(opts.modifiedTime);\n\t\tmodifiedTime.setMilliseconds(0);\n\t\tconst ifModifiedSince = event.req.headers.get(\"if-modified-since\");\n\t\tevent.res.headers.set(\"last-modified\", modifiedTime.toUTCString());\n\t\tif (ifModifiedSince && new Date(ifModifiedSince) >= modifiedTime) cacheMatched = true;\n\t}\n\tif (opts.etag) {\n\t\tevent.res.headers.set(\"etag\", opts.etag);\n\t\tif (event.req.headers.get(\"if-none-match\") === opts.etag) cacheMatched = true;\n\t}\n\tevent.res.headers.set(\"cache-control\", cacheControls.join(\", \"));\n\tif (cacheMatched) {\n\t\tevent.res.status = 304;\n\t\treturn true;\n\t}\n\treturn false;\n}\nconst COMMON_MIME_TYPES = {\n\t\".html\": \"text/html\",\n\t\".htm\": \"text/html\",\n\t\".css\": \"text/css\",\n\t\".js\": \"text/javascript\",\n\t\".json\": \"application/json\",\n\t\".txt\": \"text/plain\",\n\t\".xml\": \"application/xml\",\n\t\".gif\": \"image/gif\",\n\t\".ico\": \"image/vnd.microsoft.icon\",\n\t\".jpeg\": \"image/jpeg\",\n\t\".jpg\": \"image/jpeg\",\n\t\".png\": \"image/png\",\n\t\".svg\": \"image/svg+xml\",\n\t\".webp\": \"image/webp\",\n\t\".woff\": \"font/woff\",\n\t\".woff2\": \"font/woff2\",\n\t\".mp4\": \"video/mp4\",\n\t\".webm\": \"video/webm\",\n\t\".zip\": \"application/zip\",\n\t\".pdf\": \"application/pdf\"\n};\nfunction getExtension(path) {\n\tconst filename = path.split(\"/\").pop();\n\tif (!filename) return;\n\tconst separatorIndex = filename.lastIndexOf(\".\");\n\tif (separatorIndex !== -1) return filename.slice(separatorIndex);\n}\nfunction getType(ext) {\n\treturn ext ? COMMON_MIME_TYPES[ext] : void 0;\n}\nasync function serveStatic(event, options) {\n\tif (options.headers) {\n\t\tconst entries = Array.isArray(options.headers) ? options.headers : typeof options.headers.entries === \"function\" ? options.headers.entries() : Object.entries(options.headers);\n\t\tfor (const [key, value] of entries) event.res.headers.set(key, value);\n\t}\n\tif (event.req.method !== \"GET\" && event.req.method !== \"HEAD\") {\n\t\tif (options.fallthrough) return;\n\t\tevent.res.headers.set(\"allow\", \"GET, HEAD\");\n\t\tthrow new HTTPError({ status: 405 });\n\t}\n\tconst originalId = resolveDotSegments(decodeURI(withLeadingSlash(withoutTrailingSlash(event.url.pathname))));\n\tconst acceptEncodings = parseAcceptEncoding(event.req.headers.get(\"accept-encoding\") || \"\", options.encodings);\n\tif (acceptEncodings.length > 1) event.res.headers.set(\"vary\", \"accept-encoding\");\n\tlet id = originalId;\n\tlet meta;\n\tconst _ids = idSearchPaths(originalId, acceptEncodings, options.indexNames || [\"/index.html\"]);\n\tfor (const _id of _ids) {\n\t\tconst _meta = await options.getMeta(_id);\n\t\tif (_meta) {\n\t\t\tmeta = _meta;\n\t\t\tid = _id;\n\t\t\tbreak;\n\t\t}\n\t}\n\tif (!meta) {\n\t\tif (options.fallthrough) return;\n\t\tthrow new HTTPError({ statusCode: 404 });\n\t}\n\tif (meta.mtime) {\n\t\tconst mtimeDate = new Date(meta.mtime);\n\t\tconst ifModifiedSinceH = event.req.headers.get(\"if-modified-since\");\n\t\tif (ifModifiedSinceH && new Date(ifModifiedSinceH) >= mtimeDate) return new HTTPResponse(null, {\n\t\t\tstatus: 304,\n\t\t\tstatusText: \"Not Modified\"\n\t\t});\n\t\tif (!event.res.headers.get(\"last-modified\")) event.res.headers.set(\"last-modified\", mtimeDate.toUTCString());\n\t}\n\tif (meta.etag && !event.res.headers.has(\"etag\")) event.res.headers.set(\"etag\", meta.etag);\n\tif (meta.etag && event.req.headers.get(\"if-none-match\") === meta.etag) return new HTTPResponse(null, {\n\t\tstatus: 304,\n\t\tstatusText: \"Not Modified\"\n\t});\n\tif (!event.res.headers.get(\"content-type\")) if (meta.type) event.res.headers.set(\"content-type\", meta.type);\n\telse {\n\t\tconst ext = getExtension(id);\n\t\tconst type = ext ? options.getType?.(ext) ?? getType(ext) : void 0;\n\t\tif (type) event.res.headers.set(\"content-type\", type);\n\t}\n\tif (meta.encoding && !event.res.headers.get(\"content-encoding\")) event.res.headers.set(\"content-encoding\", meta.encoding);\n\tif (meta.size !== void 0 && meta.size > 0 && !event.req.headers.get(\"content-length\")) event.res.headers.set(\"content-length\", meta.size + \"\");\n\tif (event.req.method === \"HEAD\") return new HTTPResponse(null, { status: 200 });\n\treturn new HTTPResponse(await options.getContents(id) || null, { status: 200 });\n}\nfunction parseAcceptEncoding(header, encodingMap) {\n\tif (!encodingMap || !header) return [];\n\treturn String(header || \"\").split(\",\").map((e) => encodingMap[e.trim()]).filter(Boolean);\n}\nfunction idSearchPaths(id, encodings, indexNames) {\n\tconst ids = [];\n\tfor (const suffix of [\"\", ...indexNames]) for (const encoding of [...encodings, \"\"]) ids.push(`${id}${suffix}${encoding}`);\n\treturn ids;\n}\nfunction withBase(base, input) {\n\tbase = withoutTrailingSlash(base);\n\tconst handler = toEventHandler(input);\n\tif (!handler) throw new Error(\"Invalid handler\", { cause: input });\n\treturn async function _handlerWithBase(event) {\n\t\tconst _pathBefore = event.url.pathname || \"/\";\n\t\tevent.url.pathname = withoutBase(event.url.pathname || \"/\", base);\n\t\ttry {\n\t\t\treturn await handler(event);\n\t\t} finally {\n\t\t\tevent.url.pathname = _pathBefore;\n\t\t}\n\t};\n}\nconst defaults = /* @__PURE__ */ Object.freeze({\n\tttl: 0,\n\ttimestampSkewSec: 60,\n\tlocaltimeOffsetMsec: 0,\n\tencryption: /* @__PURE__ */ Object.freeze({\n\t\tsaltBits: 256,\n\t\talgorithm: \"aes-256-cbc\",\n\t\titerations: 1,\n\t\tminPasswordlength: 32\n\t}),\n\tintegrity: /* @__PURE__ */ Object.freeze({\n\t\tsaltBits: 256,\n\t\talgorithm: \"sha256\",\n\t\titerations: 1,\n\t\tminPasswordlength: 32\n\t})\n});\nconst algorithms = /* @__PURE__ */ Object.freeze({\n\t\"aes-128-ctr\": /* @__PURE__ */ Object.freeze({\n\t\tkeyBits: 128,\n\t\tivBits: 128,\n\t\tname: \"AES-CTR\"\n\t}),\n\t\"aes-256-cbc\": /* @__PURE__ */ Object.freeze({\n\t\tkeyBits: 256,\n\t\tivBits: 128,\n\t\tname: \"AES-CBC\"\n\t}),\n\tsha256: /* @__PURE__ */ Object.freeze({\n\t\tkeyBits: 256,\n\t\tivBits: 128,\n\t\tname: \"SHA-256\"\n\t})\n});\nconst macPrefix = \"Fe26.2\";\nasync function seal(object, password, opts) {\n\tconst now = Date.now() + (opts.localtimeOffsetMsec || 0);\n\tif (!password) throw new Error(\"Empty password\");\n\tconst { id = \"\", encryption, integrity } = normalizePassword(password);\n\tif (id && !/^\\w+$/.test(id)) throw new Error(\"Invalid password id\");\n\tconst { encrypted, key } = await encrypt(encryption, opts.encryption, JSON.stringify(object));\n\tconst encryptedB64 = base64Encode(encrypted);\n\tconst iv = base64Encode(key.iv);\n\tconst expiration = opts.ttl ? now + opts.ttl : \"\";\n\tconst macBaseString = `${macPrefix}*${id}*${key.salt}*${iv}*${encryptedB64}*${expiration}`;\n\tconst mac = await hmacWithPassword(integrity, opts.integrity, macBaseString);\n\treturn `${macBaseString}*${mac.salt}*${mac.digest}`;\n}\nasync function unseal(sealed, password, opts) {\n\tconst now = Date.now() + (opts.localtimeOffsetMsec || 0);\n\tif (!password) throw new Error(\"Empty password\");\n\tconst parts = sealed.split(\"*\");\n\tif (parts.length !== 8) throw new Error(\"Incorrect number of sealed components\");\n\tconst [prefix, passwordId, encryptionSalt, encryptionIv, encryptedB64, expiration, hmacSalt, hmac] = parts;\n\tconst macBaseString = `${prefix}*${passwordId}*${encryptionSalt}*${encryptionIv}*${encryptedB64}*${expiration}`;\n\tif (\"Fe26.2\" !== prefix) throw new Error(\"Wrong mac prefix\");\n\tif (expiration) {\n\t\tif (!/^\\d+$/.test(expiration)) throw new Error(\"Invalid expiration\");\n\t\tif (Number.parseInt(expiration, 10) <= now - opts.timestampSkewSec * 1e3) throw new Error(\"Expired seal\");\n\t}\n\tlet pass = \"\";\n\tconst _passwordId = passwordId || \"default\";\n\tif (typeof password === \"string\" || password instanceof Uint8Array) pass = password;\n\telse if (_passwordId in password) pass = password[_passwordId];\n\telse throw new Error(`Cannot find password: ${_passwordId}`);\n\tpass = normalizePassword(pass);\n\tif (!fixedTimeComparison((await hmacWithPassword(pass.integrity, {\n\t\t...opts.integrity,\n\t\tsalt: hmacSalt\n\t}, macBaseString)).digest, hmac)) throw new Error(\"Bad hmac value\");\n\tconst encrypted = base64Decode(encryptedB64);\n\tconst decryptOptions = {\n\t\t...opts.encryption,\n\t\tsalt: encryptionSalt,\n\t\tiv: base64Decode(encryptionIv)\n\t};\n\tconst decrypted = await decrypt(pass.encryption, decryptOptions, encrypted);\n\treturn decrypted ? JSON.parse(decrypted) : null;\n}\nasync function hmacWithPassword(password, options, data) {\n\tconst key = await generateKey(password, {\n\t\t...options,\n\t\thmac: true\n\t});\n\tconst textBuffer = textEncoder.encode(data);\n\tconst signed = await crypto.subtle.sign({ name: \"HMAC\" }, key.key, textBuffer);\n\treturn {\n\t\tdigest: base64Encode(new Uint8Array(signed)),\n\t\tsalt: key.salt\n\t};\n}\nasync function generateKey(password, options) {\n\tif (!password?.length) throw new Error(\"Empty password\");\n\tif (options == null || typeof options !== \"object\") throw new Error(\"Bad options\");\n\tif (!(options.algorithm in algorithms)) throw new Error(`Unknown algorithm: ${options.algorithm}`);\n\tconst algorithm = algorithms[options.algorithm];\n\tlet resultKey;\n\tlet resultSalt;\n\tlet resultIV;\n\tconst hmac = options.hmac ?? false;\n\tconst id = hmac ? {\n\t\tname: \"HMAC\",\n\t\thash: algorithm.name\n\t} : { name: algorithm.name };\n\tconst usage = hmac ? [\"sign\", \"verify\"] : [\"encrypt\", \"decrypt\"];\n\tif (typeof password === \"string\") {\n\t\tif (password.length < options.minPasswordlength) throw new Error(`Password string too short (min ${options.minPasswordlength} characters required)`);\n\t\tlet { salt = \"\" } = options;\n\t\tif (!salt) {\n\t\t\tconst { saltBits = 0 } = options;\n\t\t\tif (!saltBits) throw new Error(\"Missing salt and saltBits options\");\n\t\t\tconst randomSalt = randomBits(saltBits);\n\t\t\tsalt = [...new Uint8Array(randomSalt)].map((x) => x.toString(16).padStart(2, \"0\")).join(\"\");\n\t\t}\n\t\tconst derivedKey = await pbkdf2(password, salt, options.iterations, algorithm.keyBits / 8, \"SHA-1\");\n\t\tresultKey = await crypto.subtle.importKey(\"raw\", derivedKey, id, false, usage);\n\t\tresultSalt = salt;\n\t} else {\n\t\tif (password.length < algorithm.keyBits / 8) throw new Error(\"Key buffer (password) too small\");\n\t\tresultKey = await crypto.subtle.importKey(\"raw\", password, id, false, usage);\n\t\tresultSalt = \"\";\n\t}\n\tif (options.iv) resultIV = options.iv;\n\telse if (\"ivBits\" in algorithm) resultIV = randomBits(algorithm.ivBits);\n\telse throw new Error(\"Missing IV\");\n\treturn {\n\t\tkey: resultKey,\n\t\tsalt: resultSalt,\n\t\tiv: resultIV\n\t};\n}\nasync function pbkdf2(password, salt, iterations, keyLength, hash) {\n\tconst passwordBuffer = textEncoder.encode(password);\n\tconst importedKey = await crypto.subtle.importKey(\"raw\", passwordBuffer, { name: \"PBKDF2\" }, false, [\"deriveBits\"]);\n\tconst params = {\n\t\tname: \"PBKDF2\",\n\t\thash,\n\t\tsalt: textEncoder.encode(salt),\n\t\titerations\n\t};\n\treturn await crypto.subtle.deriveBits(params, importedKey, keyLength * 8);\n}\nasync function encrypt(password, options, data) {\n\tconst key = await generateKey(password, options);\n\tconst encrypted = await crypto.subtle.encrypt(...getEncryptParams(options.algorithm, key, data));\n\treturn {\n\t\tencrypted: new Uint8Array(encrypted),\n\t\tkey\n\t};\n}\nasync function decrypt(password, options, data) {\n\tconst key = await generateKey(password, options);\n\tconst decrypted = await crypto.subtle.decrypt(...getEncryptParams(options.algorithm, key, data));\n\treturn textDecoder.decode(decrypted);\n}\nfunction getEncryptParams(algorithm, key, data) {\n\treturn [\n\t\talgorithm === \"aes-128-ctr\" ? {\n\t\t\tname: \"AES-CTR\",\n\t\t\tcounter: key.iv,\n\t\t\tlength: 128\n\t\t} : {\n\t\t\tname: \"AES-CBC\",\n\t\t\tiv: key.iv\n\t\t},\n\t\tkey.key,\n\t\ttypeof data === \"string\" ? textEncoder.encode(data) : data\n\t];\n}\nfunction fixedTimeComparison(a, b) {\n\tlet mismatch = a.length === b.length ? 0 : 1;\n\tif (mismatch) b = a;\n\tfor (let i = 0; i < a.length; i += 1) mismatch |= a.charCodeAt(i) ^ b.charCodeAt(i);\n\treturn mismatch === 0;\n}\nfunction normalizePassword(password) {\n\tif (typeof password === \"string\" || password instanceof Uint8Array) return {\n\t\tencryption: password,\n\t\tintegrity: password\n\t};\n\tif (\"secret\" in password) return {\n\t\tid: password.id,\n\t\tencryption: password.secret,\n\t\tintegrity: password.secret\n\t};\n\treturn {\n\t\tid: password.id,\n\t\tencryption: password.encryption,\n\t\tintegrity: password.integrity\n\t};\n}\nfunction randomBits(bits) {\n\tif (bits < 1) throw new Error(\"Invalid random bits count\");\n\treturn randomBytes(Math.ceil(bits / 8));\n}\nfunction randomBytes(size) {\n\tconst bytes = new Uint8Array(size);\n\tcrypto.getRandomValues(bytes);\n\treturn bytes;\n}\nconst kGetSession = /* @__PURE__ */ Symbol.for(\"h3.internal.session.promise\");\nconst DEFAULT_SESSION_COOKIE = {\n\tpath: \"/\",\n\tsecure: true,\n\thttpOnly: true\n};\nasync function useSession(event, config) {\n\tconst sessionName = config.name || \"h3\";\n\tawait getSession(event, config);\n\tconst sessionManager = {\n\t\tget id() {\n\t\t\treturn getEventContext(event)?.sessions?.[sessionName]?.id;\n\t\t},\n\t\tget data() {\n\t\t\treturn getEventContext(event).sessions?.[sessionName]?.data || {};\n\t\t},\n\t\tupdate: async (update) => {\n\t\t\tawait updateSession(event, config, update);\n\t\t\treturn sessionManager;\n\t\t},\n\t\tclear: () => {\n\t\t\tclearSession(event, config);\n\t\t\treturn Promise.resolve(sessionManager);\n\t\t}\n\t};\n\treturn sessionManager;\n}\nasync function getSession(event, config) {\n\tconst sessionName = config.name || \"h3\";\n\tconst context = getEventContext(event);\n\tif (!context.sessions) context.sessions = new EmptyObject();\n\tconst existingSession = context.sessions[sessionName];\n\tif (existingSession) return existingSession[kGetSession] || existingSession;\n\tconst session = {\n\t\tid: \"\",\n\t\tcreatedAt: 0,\n\t\tdata: new EmptyObject()\n\t};\n\tcontext.sessions[sessionName] = session;\n\tlet sealedSession;\n\tif (config.sessionHeader !== false) {\n\t\tconst headerName = typeof config.sessionHeader === \"string\" ? config.sessionHeader.toLowerCase() : `x-${sessionName.toLowerCase()}-session`;\n\t\tconst headerValue = event.req.headers.get(headerName);\n\t\tif (typeof headerValue === \"string\") sealedSession = headerValue;\n\t}\n\tif (!sealedSession) sealedSession = getChunkedCookie(event, sessionName);\n\tif (sealedSession) {\n\t\tconst promise = unsealSession(event, config, sealedSession).catch(() => {}).then((unsealed) => {\n\t\t\tObject.assign(session, unsealed);\n\t\t\tdelete context.sessions[sessionName][kGetSession];\n\t\t\treturn session;\n\t\t});\n\t\tcontext.sessions[sessionName][kGetSession] = promise;\n\t\tawait promise;\n\t}\n\tif (!session.id) {\n\t\tsession.id = config.generateId?.() ?? (config.crypto || crypto).randomUUID();\n\t\tsession.createdAt = Date.now();\n\t\tawait updateSession(event, config);\n\t}\n\treturn session;\n}\nasync function updateSession(event, config, update) {\n\tconst sessionName = config.name || \"h3\";\n\tconst session = getEventContext(event).sessions?.[sessionName] || await getSession(event, config);\n\tif (typeof update === \"function\") update = update(session.data);\n\tif (update) Object.assign(session.data, update);\n\tif (config.cookie !== false && event.res) setChunkedCookie(event, sessionName, await sealSession(event, config), {\n\t\t...DEFAULT_SESSION_COOKIE,\n\t\texpires: config.maxAge ? new Date(session.createdAt + config.maxAge * 1e3) : void 0,\n\t\t...config.cookie\n\t});\n\treturn session;\n}\nasync function sealSession(event, config) {\n\tconst sessionName = config.name || \"h3\";\n\treturn await seal(getEventContext(event).sessions?.[sessionName] || await getSession(event, config), config.password, {\n\t\t...defaults,\n\t\tttl: config.maxAge ? config.maxAge * 1e3 : 0,\n\t\t...config.seal\n\t});\n}\nasync function unsealSession(_event, config, sealed) {\n\tconst unsealed = await unseal(sealed, config.password, {\n\t\t...defaults,\n\t\tttl: config.maxAge ? config.maxAge * 1e3 : 0,\n\t\t...config.seal\n\t});\n\tif (config.maxAge) {\n\t\tif (Date.now() - (unsealed.createdAt || Number.NEGATIVE_INFINITY) > config.maxAge * 1e3) throw new Error(\"Session expired!\");\n\t}\n\treturn unsealed;\n}\nfunction clearSession(event, config) {\n\tconst context = getEventContext(event);\n\tconst sessionName = config.name || \"h3\";\n\tif (context.sessions?.[sessionName]) delete context.sessions[sessionName];\n\tif (event.res && config.cookie !== false) deleteChunkedCookie(event, sessionName, {\n\t\t...DEFAULT_SESSION_COOKIE,\n\t\t...config.cookie\n\t});\n\treturn Promise.resolve();\n}\nfunction resolveCorsOptions(options = {}) {\n\tconst defaultOptions = {\n\t\torigin: \"*\",\n\t\tmethods: \"*\",\n\t\tallowHeaders: \"*\",\n\t\texposeHeaders: \"*\",\n\t\tcredentials: false,\n\t\tmaxAge: false,\n\t\tpreflight: { statusCode: 204 }\n\t};\n\tconst resolved = {\n\t\t...defaultOptions,\n\t\t...options,\n\t\tpreflight: {\n\t\t\t...defaultOptions.preflight,\n\t\t\t...options.preflight\n\t\t}\n\t};\n\tif (resolved.credentials && (!options.origin || options.origin === \"*\")) console.warn(\"[h3] CORS: `credentials: true` with wildcard origin is not allowed. Browsers will reject the response.\");\n\treturn resolved;\n}\nfunction isCorsOriginAllowed(origin, options) {\n\tconst { origin: originOption } = options;\n\tif (!origin) return false;\n\tif (!originOption || originOption === \"*\") return true;\n\tif (typeof originOption === \"function\") return originOption(origin);\n\tif (Array.isArray(originOption)) return originOption.some((_origin) => {\n\t\tif (_origin instanceof RegExp) return _origin.test(origin);\n\t\treturn origin === _origin;\n\t});\n\treturn originOption === origin;\n}\nfunction createOriginHeaders(event, options) {\n\tconst { origin: originOption } = options;\n\tconst origin = event.req.headers.get(\"origin\");\n\tif (!originOption || originOption === \"*\") return { \"access-control-allow-origin\": \"*\" };\n\tif (originOption === \"null\") return {\n\t\t\"access-control-allow-origin\": \"null\",\n\t\tvary: \"origin\"\n\t};\n\tif (isCorsOriginAllowed(origin, options)) return {\n\t\t\"access-control-allow-origin\": origin,\n\t\tvary: \"origin\"\n\t};\n\treturn {};\n}\nfunction createMethodsHeaders(options) {\n\tconst { methods } = options;\n\tif (!methods) return {};\n\tif (methods === \"*\") return { \"access-control-allow-methods\": \"*\" };\n\treturn methods.length > 0 ? { \"access-control-allow-methods\": methods.join(\",\") } : {};\n}\nfunction createCredentialsHeaders(options) {\n\tconst { credentials } = options;\n\tif (credentials) return { \"access-control-allow-credentials\": \"true\" };\n\treturn {};\n}\nfunction createAllowHeaderHeaders(event, options) {\n\tconst { allowHeaders } = options;\n\tif (!allowHeaders || allowHeaders === \"*\" || allowHeaders.length === 0) {\n\t\tconst header = event.req.headers.get(\"access-control-request-headers\");\n\t\treturn header ? {\n\t\t\t\"access-control-allow-headers\": header,\n\t\t\tvary: \"access-control-request-headers\"\n\t\t} : {};\n\t}\n\treturn {\n\t\t\"access-control-allow-headers\": allowHeaders.join(\",\"),\n\t\tvary: \"access-control-request-headers\"\n\t};\n}\nfunction createExposeHeaders(options) {\n\tconst { exposeHeaders } = options;\n\tif (!exposeHeaders) return {};\n\tif (exposeHeaders === \"*\") return { \"access-control-expose-headers\": exposeHeaders };\n\treturn { \"access-control-expose-headers\": exposeHeaders.join(\",\") };\n}\nfunction createMaxAgeHeader(options) {\n\tconst { maxAge } = options;\n\tif (maxAge) return { \"access-control-max-age\": maxAge };\n\treturn {};\n}\nfunction isPreflightRequest(event) {\n\tconst origin = event.req.headers.get(\"origin\");\n\tconst accessControlRequestMethod = event.req.headers.get(\"access-control-request-method\");\n\treturn event.req.method === \"OPTIONS\" && !!origin && !!accessControlRequestMethod;\n}\nfunction appendCorsPreflightHeaders(event, options) {\n\tconst headers = {\n\t\t...createOriginHeaders(event, options),\n\t\t...createCredentialsHeaders(options),\n\t\t...createMethodsHeaders(options),\n\t\t...createAllowHeaderHeaders(event, options),\n\t\t...createMaxAgeHeader(options)\n\t};\n\tfor (const [key, value] of Object.entries(headers)) {\n\t\tevent.res.headers.append(key, value);\n\t\tevent.res.errHeaders.append(key, value);\n\t}\n}\nfunction appendCorsHeaders(event, options) {\n\tconst headers = {\n\t\t...createOriginHeaders(event, options),\n\t\t...createCredentialsHeaders(options),\n\t\t...createExposeHeaders(options)\n\t};\n\tfor (const [key, value] of Object.entries(headers)) {\n\t\tevent.res.headers.append(key, value);\n\t\tevent.res.errHeaders.append(key, value);\n\t}\n}\nfunction handleCors(event, options) {\n\tconst _options = resolveCorsOptions(options);\n\tif (isPreflightRequest(event)) {\n\t\tappendCorsPreflightHeaders(event, _options);\n\t\treturn noContent(_options.preflight.statusCode);\n\t}\n\tappendCorsHeaders(event, _options);\n\treturn false;\n}\nconst _textEncoder = /* @__PURE__ */ new TextEncoder();\nfunction timingSafeEqual(a, b) {\n\tconst aBuf = _textEncoder.encode(a);\n\tconst bBuf = _textEncoder.encode(b);\n\tconst aLen = aBuf.length;\n\tconst bLen = bBuf.length;\n\tconst len = Math.max(aLen, bLen);\n\tlet result = aLen === bLen ? 0 : 1;\n\tfor (let i = 0; i < len; i++) result |= (aBuf[i % aLen] ?? 0) ^ (bBuf[i % bLen] ?? 0);\n\treturn result === 0;\n}\nfunction randomJitter() {\n\tconst randomBuffer = new Uint32Array(1);\n\tcrypto.getRandomValues(randomBuffer);\n\tconst jitter = randomBuffer[0] % 100;\n\treturn new Promise((resolve) => setTimeout(resolve, jitter));\n}\nasync function requireBasicAuth(event, opts) {\n\tif (!opts.validate && !opts.password) throw new HTTPError({\n\t\tmessage: \"Either 'password' or 'validate' option must be provided\",\n\t\tstatus: 500\n\t});\n\tconst authHeader = event.req.headers.get(\"authorization\");\n\tif (!authHeader) throw authFailed(event);\n\tconst [authType, b64auth] = authHeader.split(\" \");\n\tif (!b64auth || authType.toLowerCase() !== \"basic\") throw authFailed(event, opts?.realm);\n\tlet authDecoded;\n\ttry {\n\t\tauthDecoded = atob(b64auth);\n\t} catch {\n\t\tthrow authFailed(event, opts?.realm);\n\t}\n\tconst colonIndex = authDecoded.indexOf(\":\");\n\tconst username = authDecoded.slice(0, colonIndex);\n\tconst password = authDecoded.slice(colonIndex + 1);\n\tif (!username || !password) throw authFailed(event, opts?.realm);\n\tif (opts.username && !timingSafeEqual(username, opts.username) || opts.password && !timingSafeEqual(password, opts.password) || opts.validate && !await opts.validate(username, password)) {\n\t\tawait randomJitter();\n\t\tthrow authFailed(event, opts?.realm);\n\t}\n\tconst context = getEventContext(event);\n\tcontext.basicAuth = {\n\t\tusername,\n\t\tpassword,\n\t\trealm: opts.realm\n\t};\n\treturn true;\n}\nfunction basicAuth(opts) {\n\treturn async (event, next) => {\n\t\tawait requireBasicAuth(event, opts);\n\t\treturn next();\n\t};\n}\nfunction authFailed(event, realm = \"\") {\n\treturn new HTTPError({\n\t\tstatus: 401,\n\t\tstatusText: \"Authentication required\",\n\t\theaders: { \"www-authenticate\": `Basic realm=${JSON.stringify(realm)}` }\n\t});\n}\nasync function getRequestFingerprint(event, opts = {}) {\n\tconst fingerprint = [];\n\tif (opts.ip !== false) fingerprint.push(getRequestIP(event, { xForwardedFor: opts.xForwardedFor }));\n\tif (opts.method === true) fingerprint.push(event.req.method);\n\tif (opts.url === true) fingerprint.push(event.req.url);\n\tif (opts.userAgent === true) fingerprint.push(event.req.headers.get(\"user-agent\"));\n\tconst fingerprintString = fingerprint.filter(Boolean).join(\"|\");\n\tif (!fingerprintString) return null;\n\tif (opts.hash === false) return fingerprintString;\n\tconst buffer = await crypto.subtle.digest(opts.hash || \"SHA-1\", new TextEncoder().encode(fingerprintString));\n\treturn [...new Uint8Array(buffer)].map((b) => b.toString(16).padStart(2, \"0\")).join(\"\");\n}\nfunction defineWebSocket(hooks) {\n\treturn hooks;\n}\nfunction defineWebSocketHandler(hooks) {\n\treturn defineHandler(function _webSocketHandler(event) {\n\t\tconst crossws = typeof hooks === \"function\" ? hooks(event) : hooks;\n\t\treturn Object.assign(new Response(\"WebSocket upgrade is required.\", { status: 426 }), { crossws });\n\t});\n}\nconst PARSE_ERROR = -32700;\nconst INVALID_REQUEST = -32600;\nconst METHOD_NOT_FOUND = -32601;\nconst INVALID_PARAMS = -32602;\nfunction defineJsonRpcHandler(opts = {}) {\n\tconst methodMap = createMethodMap(opts.methods);\n\tconst handler = async (event) => {\n\t\tif (event.req.method !== \"POST\") throw new HTTPError({ status: 405 });\n\t\tlet body;\n\t\ttry {\n\t\t\tbody = await event.req.json();\n\t\t} catch {\n\t\t\treturn createJsonRpcError(null, PARSE_ERROR, \"Parse error\");\n\t\t}\n\t\tconst result = await processJsonRpcBody(body, methodMap, event);\n\t\treturn result === void 0 ? new HTTPResponse(\"\", { status: 202 }) : result;\n\t};\n\treturn defineHandler({\n\t\t...opts,\n\t\thandler\n\t});\n}\nfunction defineJsonRpcWebSocketHandler(opts) {\n\tconst methodMap = createMethodMap(opts.methods);\n\treturn defineWebSocketHandler({\n\t\t...opts.hooks,\n\t\tasync message(peer, message) {\n\t\t\tlet body;\n\t\t\ttry {\n\t\t\t\tbody = message.json();\n\t\t\t} catch {\n\t\t\t\tpeer.send(JSON.stringify(createJsonRpcError(null, PARSE_ERROR, \"Parse error\")));\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst result = await processJsonRpcBody(body, methodMap, peer);\n\t\t\tif (result !== void 0) peer.send(JSON.stringify(result));\n\t\t}\n\t});\n}\nfunction createMethodMap(methods) {\n\tconst methodMap = Object.create(null);\n\tfor (const key of Object.keys(methods)) methodMap[key] = methods[key];\n\treturn methodMap;\n}\nasync function processJsonRpcBody(body, methodMap, context) {\n\tif (!body || typeof body !== \"object\") return createJsonRpcError(null, PARSE_ERROR, \"Parse error\");\n\tconst requests = Array.isArray(body) ? body : [body];\n\tif (requests.length === 0) return createJsonRpcError(null, INVALID_REQUEST, \"Invalid Request\");\n\tconst finalResponses = (await Promise.all(requests.map((raw) => processJsonRpcMethod(raw, methodMap, context)))).filter((r) => r !== void 0);\n\tif (finalResponses.length === 0) return;\n\treturn Array.isArray(body) ? finalResponses : finalResponses[0];\n}\nasync function processJsonRpcMethod(raw, methodMap, context) {\n\tif (!raw || typeof raw !== \"object\" || Array.isArray(raw)) return createJsonRpcError(null, INVALID_REQUEST, \"Invalid Request\");\n\tconst req = raw;\n\tif (req.jsonrpc !== \"2.0\" || typeof req.method !== \"string\" || \"id\" in req && !isValidId(req.id)) return createJsonRpcError(\"id\" in req && isValidId(req.id) ? req.id : null, INVALID_REQUEST, \"Invalid Request\");\n\tif (\"params\" in req && req.params !== void 0 && (typeof req.params !== \"object\" || req.params === null)) return isNotification(req) ? void 0 : createJsonRpcError(req.id, INVALID_PARAMS, \"Invalid params\");\n\tif (req.method.startsWith(\"rpc.\")) return isNotification(req) ? void 0 : createJsonRpcError(req.id, METHOD_NOT_FOUND, \"Method not found\");\n\tconst method = req.method;\n\tconst params = req.params;\n\tconst notification = isNotification(req);\n\tconst id = notification ? void 0 : req.id;\n\tconst methodHandler = methodMap[method];\n\tif (!methodHandler) return notification ? void 0 : createJsonRpcError(id, METHOD_NOT_FOUND, \"Method not found\");\n\ttry {\n\t\tconst rpcReq = {\n\t\t\tjsonrpc: \"2.0\",\n\t\t\tmethod,\n\t\t\tparams\n\t\t};\n\t\tif (!notification) rpcReq.id = id;\n\t\tconst result = await methodHandler(rpcReq, context);\n\t\treturn notification ? void 0 : {\n\t\t\tjsonrpc: \"2.0\",\n\t\t\tid,\n\t\t\tresult: result ?? null\n\t\t};\n\t} catch (error_) {\n\t\tif (notification) return;\n\t\tconst h3Error = HTTPError.isError(error_) ? error_ : {\n\t\t\tstatus: 500,\n\t\t\tmessage: \"Internal error\",\n\t\t\tdata: error_ != null && typeof error_ === \"object\" && \"message\" in error_ ? error_.message : void 0\n\t\t};\n\t\tconst statusCode = h3Error.status;\n\t\tconst statusMessage = h3Error.message;\n\t\treturn createJsonRpcError(id, mapHttpStatusToJsonRpcError(statusCode), statusMessage, h3Error.data);\n\t}\n}\nfunction mapHttpStatusToJsonRpcError(status) {\n\tswitch (status) {\n\t\tcase 400:\n\t\tcase 422: return INVALID_PARAMS;\n\t\tcase 401: return -32001;\n\t\tcase 403: return -32003;\n\t\tcase 404: return -32004;\n\t\tcase 408: return -32008;\n\t\tcase 409: return -32009;\n\t\tcase 429: return -32029;\n\t\tdefault:\n\t\t\tif (status >= 300 && status < 500) return -32e3;\n\t\t\treturn -32603;\n\t}\n}\nfunction isNotification(req) {\n\treturn !(\"id\" in req);\n}\nfunction isValidId(id) {\n\tif (id === null) return true;\n\tif (typeof id === \"string\") return true;\n\treturn typeof id === \"number\" && Number.isInteger(id);\n}\nconst createJsonRpcError = (id, code, message, data) => {\n\tconst error = {\n\t\tcode,\n\t\tmessage\n\t};\n\tif (data !== void 0) error.data = data;\n\treturn {\n\t\tjsonrpc: \"2.0\",\n\t\tid,\n\t\terror\n\t};\n};\nconst H3Error = HTTPError;\nfunction createError(arg1, arg2) {\n\treturn new HTTPError(arg1, arg2);\n}\nfunction isError(input) {\n\treturn HTTPError.isError(input);\n}\nconst getRequestPath = (event) => event.path;\nfunction getRequestHeader(event, name) {\n\treturn event.req.headers.get(name) || void 0;\n}\nconst getHeader = getRequestHeader;\nfunction getRequestHeaders(event) {\n\treturn Object.fromEntries(event.req.headers.entries());\n}\nconst getHeaders = getRequestHeaders;\nfunction getMethod(event, defaultMethod = \"GET\") {\n\treturn (event.req.method || defaultMethod).toUpperCase();\n}\nfunction readRawBody(event, encoding = \"utf8\") {\n\treturn encoding ? event.req.text() : event.req.arrayBuffer().then((r) => new Uint8Array(r));\n}\nasync function readFormDataBody(event) {\n\treturn event.req.formData();\n}\nconst readFormData = readFormDataBody;\nasync function readMultipartFormData(event) {\n\tconst formData = await event.req.formData();\n\treturn Promise.all([...formData.entries()].map(async ([key, value]) => {\n\t\treturn typeof value === \"object\" ? {\n\t\t\tname: key,\n\t\t\ttype: value.type,\n\t\t\tfilename: value.name,\n\t\t\tdata: await value.bytes()\n\t\t} : {\n\t\t\tname: key,\n\t\t\tdata: new TextEncoder().encode(value)\n\t\t};\n\t}));\n}\nfunction getBodyStream(event) {\n\treturn event.req.body || void 0;\n}\nconst getRequestWebStream = getBodyStream;\nfunction sendStream(_event, value) {\n\treturn value;\n}\nconst sendNoContent = (_, code) => noContent(code);\nconst sendRedirect = (_, loc, code) => redirect(loc, code);\nconst sendWebResponse = (response) => response;\nconst sendProxy = proxy;\nconst sendIterable = (_event, val, options) => {\n\treturn iterable(val, options);\n};\nfunction getResponseStatusText(event) {\n\treturn event.res.statusText || \"\";\n}\nfunction appendResponseHeader(event, name, value) {\n\tif (Array.isArray(value)) for (const valueItem of value) event.res.headers.append(name, valueItem);\n\telse event.res.headers.append(name, value);\n}\nconst appendHeader = appendResponseHeader;\nfunction setResponseHeader(event, name, value) {\n\tif (Array.isArray(value)) {\n\t\tevent.res.headers.delete(name);\n\t\tfor (const valueItem of value) event.res.headers.append(name, valueItem);\n\t} else event.res.headers.set(name, value);\n}\nconst setHeader = setResponseHeader;\nfunction setResponseHeaders(event, headers) {\n\tfor (const [name, value] of Object.entries(headers)) event.res.headers.set(name, value);\n}\nconst setHeaders = setResponseHeaders;\nfunction getResponseStatus(event) {\n\treturn event.res.status || 200;\n}\nfunction setResponseStatus(event, code, text) {\n\tif (code) event.res.status = sanitizeStatusCode(code, event.res.status);\n\tif (text) event.res.statusText = sanitizeStatusMessage(text);\n}\nfunction defaultContentType(event, type) {\n\tif (type && event.res.status !== 304 && !event.res.headers.has(\"content-type\")) event.res.headers.set(\"content-type\", type);\n}\nfunction getResponseHeaders(event) {\n\treturn Object.fromEntries(event.res.headers.entries());\n}\nfunction getResponseHeader(event, name) {\n\treturn event.res.headers.get(name) || void 0;\n}\nfunction removeResponseHeader(event, name) {\n\treturn event.res.headers.delete(name);\n}\nfunction appendResponseHeaders(event, headers) {\n\tfor (const [name, value] of Object.entries(headers)) appendResponseHeader(event, name, value);\n}\nconst appendHeaders = appendResponseHeaders;\nfunction clearResponseHeaders(event, headerNames) {\n\tif (headerNames && headerNames.length > 0) for (const name of headerNames) event.res.headers.delete(name);\n\telse for (const name of event.res.headers.keys()) event.res.headers.delete(name);\n}\nconst defineEventHandler = defineHandler;\nconst eventHandler = defineHandler;\nconst lazyEventHandler = defineLazyEventHandler;\nconst defineNodeListener = defineNodeHandler;\nconst fromNodeMiddleware = fromNodeHandler;\nfunction toNodeHandler(app) {\n\tif (toNodeHandler._isWarned !== true) {\n\t\tconsole.warn(`[h3] \"toNodeHandler\" export from h3 is deprecated. Please import \"toNodeHandler\" from \"h3/node\".`);\n\t\ttoNodeHandler._isWarned = true;\n\t}\n\treturn (toNodeHandler._toNodeHandler ??= () => {\n\t\treturn globalThis.process.getBuiltinModule(\"node:module\").createRequire(import.meta.url)(\"srvx/node\").toNodeHandler;\n\t})()(app.fetch);\n}\nconst toNodeListener = toNodeHandler;\nconst createApp = (config) => new H3(config);\nconst createRouter$1 = (config) => new H3(config);\nconst useBase = withBase;\nexport { basicAuth as $, defineLazyEventHandler as $t, readFormDataBody as A, freezeApp as An, bodyLimit as At, setHeader as B, redirect as Bt, getResponseHeader as C, toMiddleware as Cn, parseCookies as Ct, isError as D, sanitizeStatusCode as Dn, getProxyRequestHeaders as Dt, getResponseStatusText as E, HTTPError as En, fetchWithEvent as Et, sendNoContent as F, readBody as Ft, toNodeHandler as G, defineNodeHandler as Gt, setResponseHeader as H, writeEarlyHints as Ht, sendProxy as I, readValidatedBody as It, defineJsonRpcHandler as J, fromWebHandler as Jt, toNodeListener as K, defineNodeMiddleware as Kt, sendRedirect as L, html as Lt, readRawBody as M, onRequest as Mt, removeResponseHeader as N, onResponse as Nt, lazyEventHandler as O, sanitizeStatusMessage as On, proxy as Ot, sendIterable as P, assertBodySize as Pt, getRequestFingerprint as Q, defineHandler as Qt, sendStream as R, iterable as Rt, getRequestWebStream as S, defineMiddleware as Sn, getValidatedCookies as St, getResponseStatus as T, toResponse as Tn, setCookie as Tt, setResponseHeaders as U, defineRoute as Ut, setHeaders as V, redirectBack as Vt, setResponseStatus as W, removeRoute$1 as Wt, defineWebSocket as X, H3 as Xt, defineJsonRpcWebSocketHandler as Y, toWebHandler as Yt, defineWebSocketHandler as Z, H3Core as Zt, getHeaders as _, getEventContext as _n, createEventStream as _t, appendResponseHeaders as a, getRequestHost as an, isCorsOriginAllowed as at, getRequestHeaders as b, mockEvent as bn, getChunkedCookie as bt, createError as c, getRequestURL as cn, sealSession as ct, defineEventHandler as d, getValidatedQuery as dn, useSession as dt, defineValidatedHandler as en, requireBasicAuth as et, defineNodeListener as f, getValidatedRouterParams as fn, withBase as ft, getHeader as g, toRequest as gn, withServerTiming as gt, getBodyStream as h, requestWithURL as hn, setServerTiming as ht, appendResponseHeader as i, getQuery as in, isPreflightRequest as it, readMultipartFormData as j, onError as jt, readFormData as k, H3Event as kn, proxyRequest as kt, createRouter$1 as l, getRouterParam as ln, unsealSession as lt, fromNodeMiddleware as m, requestWithBaseURL as mn, handleCacheHeaders as mt, appendHeader as n, toEventHandler as nn, appendCorsPreflightHeaders as nt, clearResponseHeaders as o, getRequestIP as on, clearSession as ot, eventHandler as p, isMethod as pn, serveStatic as pt, useBase as q, fromNodeHandler as qt, appendHeaders as r, assertMethod as rn, handleCors as rt, createApp as s, getRequestProtocol as sn, getSession as st, H3Error as t, dynamicEventHandler as tn, appendCorsHeaders as tt, defaultContentType as u, getRouterParams as un, updateSession as ut, getMethod as v, isEvent as vn, deleteChunkedCookie as vt, getResponseHeaders as w, HTTPResponse as wn, setChunkedCookie as wt, getRequestPath as x, callMiddleware as xn, getCookie as xt, getRequestHeader as y, isHTTPEvent as yn, deleteCookie as yt, sendWebResponse as z, noContent as zt };\n","import { AsyncLocalStorage } from \"node:async_hooks\";\nimport { H3Event, clearSession as clearSession$1, deleteCookie as deleteCookie$1, getRequestHost as getRequestHost$1, getRequestIP as getRequestIP$1, getRequestProtocol as getRequestProtocol$1, getRequestURL, getSession as getSession$1, getValidatedQuery as getValidatedQuery$1, parseCookies, sanitizeStatusCode, sanitizeStatusMessage, sealSession as sealSession$1, setCookie as setCookie$1, toResponse, unsealSession as unsealSession$1, updateSession as updateSession$1, useSession as useSession$1 } from \"h3-v2\";\n//#region src/request-response.ts\nvar GLOBAL_EVENT_STORAGE_KEY = Symbol.for(\"tanstack-start:event-storage\");\nvar globalObj = globalThis;\nif (!globalObj[GLOBAL_EVENT_STORAGE_KEY]) globalObj[GLOBAL_EVENT_STORAGE_KEY] = new AsyncLocalStorage();\nvar eventStorage = globalObj[GLOBAL_EVENT_STORAGE_KEY];\nfunction isPromiseLike(value) {\n\treturn (typeof value === \"object\" || typeof value === \"function\") && value !== null && typeof value.then === \"function\";\n}\nfunction getSetCookieValues(headers) {\n\tconst headersWithSetCookie = headers;\n\tif (typeof headersWithSetCookie.getSetCookie === \"function\") return headersWithSetCookie.getSetCookie();\n\tconst value = headers.get(\"set-cookie\");\n\treturn value ? [value] : [];\n}\nfunction mergeEventResponseHeaders(response, event) {\n\tif (response.ok) return;\n\tconst eventSetCookies = getSetCookieValues(event.res.headers);\n\tif (eventSetCookies.length === 0) return;\n\tconst responseSetCookies = getSetCookieValues(response.headers);\n\tresponse.headers.delete(\"set-cookie\");\n\tfor (const cookie of responseSetCookies) response.headers.append(\"set-cookie\", cookie);\n\tfor (const cookie of eventSetCookies) response.headers.append(\"set-cookie\", cookie);\n}\nfunction finalizeResponse(value, event) {\n\tconst response = ensureResponse(value);\n\tmergeEventResponseHeaders(response, event);\n\treturn response;\n}\nfunction finalizeMaybeResponse(value, event) {\n\tif (isPromiseLike(value)) return Promise.resolve(value).then((resolved) => finalizeResponse(resolved, event), (error) => finalizeResponse(handleResponseError(error), event));\n\treturn finalizeResponse(value, event);\n}\nfunction ensureResponse(value) {\n\tif (value instanceof Response) return value;\n\treturn new Response(\"Internal Server Error\", { status: 500 });\n}\nfunction handleResponseError(error) {\n\tif (error instanceof Response) return error;\n\tif (error instanceof Error) throw error;\n\treturn new Response(\"Internal Server Error\", { status: 500 });\n}\nfunction requestHandler(handler) {\n\treturn (request, requestOpts) => {\n\t\tlet h3Event;\n\t\ttry {\n\t\t\th3Event = new H3Event(request);\n\t\t} catch (error) {\n\t\t\tif (error instanceof URIError) return new Response(null, {\n\t\t\t\tstatus: 400,\n\t\t\t\tstatusText: \"Bad Request\"\n\t\t\t});\n\t\t\tthrow error;\n\t\t}\n\t\tlet response;\n\t\ttry {\n\t\t\tresponse = eventStorage.run({ h3Event }, () => handler(request, requestOpts));\n\t\t} catch (error) {\n\t\t\tresponse = handleResponseError(error);\n\t\t}\n\t\treturn toResponse(finalizeMaybeResponse(response, h3Event), h3Event);\n\t};\n}\nfunction getH3Event() {\n\tconst event = eventStorage.getStore();\n\tif (!event) throw new Error(`No StartEvent found in AsyncLocalStorage. Make sure you are using the function within the server runtime.`);\n\treturn event.h3Event;\n}\nfunction getRequest() {\n\treturn getH3Event().req;\n}\nfunction getRequestHeaders() {\n\treturn getH3Event().req.headers;\n}\nfunction getRequestHeader(name) {\n\treturn getRequestHeaders().get(name) || void 0;\n}\nfunction getRequestIP(opts) {\n\treturn getRequestIP$1(getH3Event(), opts);\n}\n/**\n* Get the request hostname.\n*\n* If `xForwardedHost` is `true`, it will use the `x-forwarded-host` header if it exists.\n*\n* If no host header is found, it will default to \"localhost\".\n*/\nfunction getRequestHost(opts) {\n\treturn getRequestHost$1(getH3Event(), opts);\n}\n/**\n* Get the full incoming request URL.\n*\n* If `xForwardedHost` is `true`, it will use the `x-forwarded-host` header if it exists.\n*\n* If `xForwardedProto` is `false`, it will not use the `x-forwarded-proto` header.\n*/\nfunction getRequestUrl(opts) {\n\treturn getRequestURL(getH3Event(), opts);\n}\n/**\n* Get the request protocol.\n*\n* If `x-forwarded-proto` header is set to \"https\", it will return \"https\". You can disable this behavior by setting `xForwardedProto` to `false`.\n*\n* If protocol cannot be determined, it will default to \"http\".\n*/\nfunction getRequestProtocol(opts) {\n\treturn getRequestProtocol$1(getH3Event(), opts);\n}\nfunction setResponseHeaders(headers) {\n\tconst event = getH3Event();\n\tif (event.res.headers === headers) return;\n\tlet previousName = \"\";\n\tfor (const [name, value] of headers) {\n\t\tevent.res.headers[name === previousName ? \"append\" : \"set\"](name, value);\n\t\tpreviousName = name;\n\t}\n}\nfunction getResponseHeaders() {\n\treturn getH3Event().res.headers;\n}\nfunction getResponseHeader(name) {\n\treturn getH3Event().res.headers.get(name) || void 0;\n}\nfunction setResponseHeader(name, value) {\n\tconst event = getH3Event();\n\tif (Array.isArray(value)) {\n\t\tevent.res.headers.delete(name);\n\t\tfor (const valueItem of value) event.res.headers.append(name, valueItem);\n\t} else event.res.headers.set(name, value);\n}\nfunction removeResponseHeader(name) {\n\tgetH3Event().res.headers.delete(name);\n}\nfunction clearResponseHeaders(headerNames) {\n\tconst event = getH3Event();\n\tif (headerNames && headerNames.length > 0) for (const name of headerNames) event.res.headers.delete(name);\n\telse for (const name of event.res.headers.keys()) event.res.headers.delete(name);\n}\nfunction getResponseStatus() {\n\treturn getH3Event().res.status || 200;\n}\nfunction setResponseStatus(code, text) {\n\tconst event = getH3Event();\n\tif (code) event.res.status = sanitizeStatusCode(code, event.res.status);\n\tif (text) event.res.statusText = sanitizeStatusMessage(text);\n}\n/**\n* Parse the request to get HTTP Cookie header string and return an object of all cookie name-value pairs.\n* @returns Object of cookie name-value pairs\n* ```ts\n* const cookies = getCookies()\n* ```\n*/\nfunction getCookies() {\n\tconst cookies = parseCookies(getH3Event());\n\tconst definedCookies = Object.create(null);\n\tfor (const [name, value] of Object.entries(cookies)) if (value !== void 0) definedCookies[name] = value;\n\treturn definedCookies;\n}\n/**\n* Get a cookie value by name.\n* @param name Name of the cookie to get\n* @returns {*} Value of the cookie (String or undefined)\n* ```ts\n* const authorization = getCookie('Authorization')\n* ```\n*/\nfunction getCookie(name) {\n\treturn getCookies()[name];\n}\n/**\n* Set a cookie value by name.\n* @param name Name of the cookie to set\n* @param value Value of the cookie to set\n* @param options {CookieSerializeOptions} Options for serializing the cookie\n* ```ts\n* setCookie('Authorization', '1234567')\n* ```\n*/\nfunction setCookie(name, value, options) {\n\tsetCookie$1(getH3Event(), name, value, options);\n}\n/**\n* Remove a cookie by name.\n* @param name Name of the cookie to delete\n* @param serializeOptions {CookieSerializeOptions} Cookie options\n* ```ts\n* deleteCookie('SessionId')\n* ```\n*/\nfunction deleteCookie(name, options) {\n\tdeleteCookie$1(getH3Event(), name, options);\n}\nfunction getDefaultSessionConfig(config) {\n\treturn {\n\t\tname: \"start\",\n\t\t...config\n\t};\n}\n/**\n* Create a session manager for the current request.\n*/\nfunction useSession(config) {\n\treturn useSession$1(getH3Event(), getDefaultSessionConfig(config));\n}\n/**\n* Get the session for the current request\n*/\nfunction getSession(config) {\n\treturn getSession$1(getH3Event(), getDefaultSessionConfig(config));\n}\n/**\n* Update the session data for the current request.\n*/\nfunction updateSession(config, update) {\n\treturn updateSession$1(getH3Event(), getDefaultSessionConfig(config), update);\n}\n/**\n* Encrypt and sign the session data for the current request.\n*/\nfunction sealSession(config) {\n\treturn sealSession$1(getH3Event(), getDefaultSessionConfig(config));\n}\n/**\n* Decrypt and verify the session data for the current request.\n*/\nfunction unsealSession(config, sealed) {\n\treturn unsealSession$1(getH3Event(), getDefaultSessionConfig(config), sealed);\n}\n/**\n* Clear the session data for the current request.\n*/\nfunction clearSession(config) {\n\treturn clearSession$1(getH3Event(), {\n\t\tname: \"start\",\n\t\t...config\n\t});\n}\nfunction getResponse() {\n\treturn getH3Event().res;\n}\nfunction getValidatedQuery(schema) {\n\treturn getValidatedQuery$1(getH3Event(), schema);\n}\n//#endregion\nexport { clearResponseHeaders, clearSession, deleteCookie, getCookie, getCookies, getRequest, getRequestHeader, getRequestHeaders, getRequestHost, getRequestIP, getRequestProtocol, getRequestUrl, getResponse, getResponseHeader, getResponseHeaders, getResponseStatus, getSession, getValidatedQuery, removeResponseHeader, requestHandler, sealSession, setCookie, setResponseHeader, setResponseHeaders, setResponseStatus, unsealSession, updateSession, useSession };\n\n//# sourceMappingURL=request-response.js.map","//#region src/constants.ts\nvar HEADERS = { TSS_SHELL: \"X-TSS_SHELL\" };\n//#endregion\nexport { HEADERS };\n\n//# sourceMappingURL=constants.js.map","import { DEV_STYLES_ATTR, buildDevStylesUrl, rootRouteId } from \"@tanstack/router-core\";\n//#region src/router-manifest.ts\nvar DEV_SSR_STYLES_BASEPATH = process.env.TSS_DEV_SSR_STYLES_BASEPATH || \"/\";\n/**\n* @description Returns the router manifest data that should be sent to the client.\n* This includes only the assets and preloads for the current route and any\n* special assets that are needed for the client. It does not include relationships\n* between routes or any other data that is not needed for the client.\n*\n* @param matchedRoutes - In dev mode, the matched routes are used to build\n* the dev styles URL for route-scoped CSS collection.\n*/\nasync function getStartManifest(matchedRoutes) {\n\tconst { tsrStartManifest } = await import(\"tanstack-start-manifest:v\");\n\tconst startManifest = tsrStartManifest();\n\tlet routes = startManifest.routes;\n\tlet rootRoute = routes[rootRouteId];\n\tconst updateRootRoute = (nextRootRoute) => {\n\t\trootRoute = nextRootRoute;\n\t\troutes = {\n\t\t\t...routes,\n\t\t\t[rootRouteId]: rootRoute\n\t\t};\n\t};\n\tif (process.env.TSS_DEV_SERVER === \"true\" && process.env.TSS_DEV_SSR_STYLES_ENABLED !== \"false\" && matchedRoutes) {\n\t\tconst matchedRouteIds = matchedRoutes.map((route) => route.id);\n\t\tupdateRootRoute({\n\t\t\t...rootRoute,\n\t\t\tcss: [...rootRoute?.css ?? [], {\n\t\t\t\thref: buildDevStylesUrl(DEV_SSR_STYLES_BASEPATH, matchedRouteIds),\n\t\t\t\t[DEV_STYLES_ATTR]: true\n\t\t\t}]\n\t\t});\n\t}\n\tconst manifestRoutes = {};\n\tfor (const k in routes) {\n\t\tconst v = routes[k];\n\t\tconst result = {};\n\t\tif (v.preloads && v.preloads.length > 0) result.preloads = v.preloads;\n\t\tif (v.scripts && v.scripts.length > 0) result.scripts = v.scripts;\n\t\tif (v.css?.length) result.css = v.css;\n\t\tif (result.preloads || result.scripts || result.css) manifestRoutes[k] = result;\n\t}\n\treturn {\n\t\t...startManifest.scriptFormat ? { scriptFormat: startManifest.scriptFormat } : {},\n\t\t...startManifest.inlineCss ? { inlineCss: startManifest.inlineCss } : {},\n\t\troutes: manifestRoutes\n\t};\n}\n//#endregion\nexport { getStartManifest };\n\n//# sourceMappingURL=router-manifest.js.map","//#region src/constants.ts\nvar TSS_FORMDATA_CONTEXT = \"__TSS_CONTEXT\";\nvar TSS_SERVER_FUNCTION = Symbol.for(\"TSS_SERVER_FUNCTION\");\nvar TSS_SERVER_FUNCTION_FACTORY = Symbol.for(\"TSS_SERVER_FUNCTION_FACTORY\");\nvar X_TSS_SERIALIZED = \"x-tss-serialized\";\nvar X_TSS_RAW_RESPONSE = \"x-tss-raw\";\nvar X_TSS_CONTEXT = \"x-tss-context\";\n/** Content-Type for multiplexed framed responses (RawStream support) */\nvar TSS_CONTENT_TYPE_FRAMED = \"application/x-tss-framed\";\n/**\n* Frame types for binary multiplexing protocol.\n*/\nvar FRAME_TYPE_JSON = 0;\nvar FRAME_TYPE_CHUNK = 1;\nvar FRAME_TYPE_END = 2;\nvar FRAME_TYPE_ERROR = 3;\n/** Header size in bytes: type(1) + streamId(4) + length(4) */\nvar FRAME_HEADER_SIZE = 9;\n/** Largest payload accepted by one framed-protocol record. */\nvar MAX_FRAME_PAYLOAD_SIZE = 16 * 1024 * 1024;\n/** Largest number of raw streams accepted in one framed response. */\nvar MAX_FRAMED_STREAMS = 1024;\n/**\n* Largest number of bytes one raw stream may hold unread. Raw streams share\n* one ordered response, so an unread stream would otherwise buffer without\n* bound while later frames arrive.\n*/\nvar MAX_UNREAD_RAW_STREAM_BYTES = 128 * 1024 * 1024;\n/** Current protocol version for framed responses */\nvar TSS_FRAMED_PROTOCOL_VERSION = 1;\n/** Full Content-Type header value with version parameter */\nvar TSS_CONTENT_TYPE_FRAMED_VERSIONED = `${TSS_CONTENT_TYPE_FRAMED}; v=1`;\n//#endregion\nexport { FRAME_HEADER_SIZE, FRAME_TYPE_CHUNK, FRAME_TYPE_END, FRAME_TYPE_ERROR, FRAME_TYPE_JSON, MAX_FRAMED_STREAMS, MAX_FRAME_PAYLOAD_SIZE, MAX_UNREAD_RAW_STREAM_BYTES, TSS_CONTENT_TYPE_FRAMED, TSS_CONTENT_TYPE_FRAMED_VERSIONED, TSS_FORMDATA_CONTEXT, TSS_FRAMED_PROTOCOL_VERSION, TSS_SERVER_FUNCTION, TSS_SERVER_FUNCTION_FACTORY, X_TSS_CONTEXT, X_TSS_RAW_RESPONSE, X_TSS_SERIALIZED };\n\n//# sourceMappingURL=constants.js.map","import { createIsomorphicFn } from \"@tanstack/start-fn-stubs\";\nimport { getStartContext } from \"@tanstack/start-storage-context\";\n//#region src/getStartOptions.ts\nvar getStartOptions = createIsomorphicFn().client(() => window.__TSS_START_OPTIONS__).server(() => getStartContext().startOptions);\n//#endregion\nexport { getStartOptions };\n\n//# sourceMappingURL=getStartOptions.js.map","import { getStartOptions } from \"./getStartOptions.js\";\nimport { createDefaultSerovalPlugins, makeSerovalPlugin } from \"@tanstack/router-core/ssr/client\";\n//#region src/getDefaultSerovalPlugins.ts\n/** Start's serialization adapters followed by `routerPlugins`. */\nfunction getSerovalPlugins(routerPlugins) {\n\treturn [...(getStartOptions()?.serializationAdapters)?.map(makeSerovalPlugin) ?? [], ...routerPlugins];\n}\n/**\n* Plugins for client JSON transport. The optional signal stops RawStream\n* pumps when the request is aborted.\n*/\nfunction getDefaultSerovalPlugins(signal) {\n\treturn getSerovalPlugins(createDefaultSerovalPlugins(signal));\n}\n//#endregion\nexport { getDefaultSerovalPlugins, getSerovalPlugins };\n\n//# sourceMappingURL=getDefaultSerovalPlugins.js.map","import { FRAME_HEADER_SIZE, FRAME_TYPE_CHUNK, FRAME_TYPE_END, FRAME_TYPE_ERROR, FRAME_TYPE_JSON, MAX_FRAME_PAYLOAD_SIZE } from \"@tanstack/start-client-core/client-rpc\";\n//#region src/frame-protocol.ts\n/**\n* Binary frame protocol for multiplexing JSON and raw streams over HTTP.\n*\n* Frame format: [type:1][streamId:4][length:4][payload:length]\n* - type: 1 byte - frame type (JSON, CHUNK, END, ERROR)\n* - streamId: 4 bytes big-endian uint32 - stream identifier\n* - length: 4 bytes big-endian uint32 - payload length\n* - payload: variable length bytes\n*/\n/** Cached TextEncoder for frame encoding */\nvar textEncoder = new TextEncoder();\n/** Shared empty payload for END frames - avoids allocation per call */\nvar EMPTY_PAYLOAD = new Uint8Array(0);\nvar MAX_ERROR_MESSAGE_CODE_UNITS = 4096;\n/**\n* Encodes a single frame with header and payload.\n*/\nfunction encodeFrame(type, streamId, payload) {\n\tif (payload.byteLength > MAX_FRAME_PAYLOAD_SIZE) throw new RangeError(`Frame payload exceeds ${MAX_FRAME_PAYLOAD_SIZE} bytes`);\n\tconst frame = new Uint8Array(FRAME_HEADER_SIZE + payload.length);\n\tframe[0] = type;\n\tframe[1] = streamId >>> 24 & 255;\n\tframe[2] = streamId >>> 16 & 255;\n\tframe[3] = streamId >>> 8 & 255;\n\tframe[4] = streamId & 255;\n\tframe[5] = payload.length >>> 24 & 255;\n\tframe[6] = payload.length >>> 16 & 255;\n\tframe[7] = payload.length >>> 8 & 255;\n\tframe[8] = payload.length & 255;\n\tframe.set(payload, FRAME_HEADER_SIZE);\n\treturn frame;\n}\n/** Encodes an error message payload, truncated to a bounded length. */\nfunction encodeErrorPayload(error) {\n\tconst originalMessage = error instanceof Error ? error.message : String(error ?? \"Unknown error\");\n\tconst message = originalMessage.length > MAX_ERROR_MESSAGE_CODE_UNITS ? `${originalMessage.slice(0, MAX_ERROR_MESSAGE_CODE_UNITS)}…` : originalMessage;\n\treturn textEncoder.encode(message);\n}\n/**\n* Creates a multiplexed ReadableStream from serialized response records.\n*\n* A record's JSON frame is admitted before any raw stream referenced by that\n* record starts. Raw streams from admitted records are pumped concurrently.\n* The caller bounds the stream count before records reach this function.\n*/\nfunction createMultiplexedStream(recordStream, options = {}) {\n\tlet controller;\n\tlet stopped = false;\n\tlet activePumps = 0;\n\tlet wakeDemand;\n\tlet admission;\n\tconst readers = /* @__PURE__ */ new Set();\n\tconst pendingRawStreams = /* @__PURE__ */ new Set();\n\tconst abortOutput = () => errorOutput(options.signal?.reason);\n\tconst wakeAdmission = () => {\n\t\tconst wake = wakeDemand;\n\t\twakeDemand = void 0;\n\t\twake?.();\n\t};\n\tconst cancelReader = (reader, reason) => {\n\t\treader.cancel(reason).catch(() => {});\n\t};\n\tconst cancelStream = (stream, reason) => {\n\t\tstream.cancel(reason).catch(() => {});\n\t};\n\tconst stop = (reason) => {\n\t\tif (stopped) return false;\n\t\tstopped = [reason];\n\t\toptions.signal?.removeEventListener(\"abort\", abortOutput);\n\t\twakeAdmission();\n\t\tfor (const reader of readers) cancelReader(reader, reason);\n\t\tfor (const stream of pendingRawStreams) cancelStream(stream, reason);\n\t\tpendingRawStreams.clear();\n\t\treturn true;\n\t};\n\tconst errorOutput = (error) => {\n\t\tif (!stop(error)) return;\n\t\ttry {\n\t\t\tcontroller.error(error);\n\t\t} catch {}\n\t};\n\tconst waitForDemand = async () => {\n\t\twhile (!stopped && (controller.desiredSize ?? 0) <= 0) await new Promise((resolve) => {\n\t\t\twakeDemand = resolve;\n\t\t});\n\t\treturn !stopped;\n\t};\n\tconst admitFrame = (type, streamId, payload) => {\n\t\tif (stopped) return false;\n\t\tif (!admission && (controller.desiredSize ?? 0) > 0) {\n\t\t\tcontroller.enqueue(encodeFrame(type, streamId, payload));\n\t\t\treturn true;\n\t\t}\n\t\tconst runAdmission = async () => {\n\t\t\tif (!await waitForDemand()) return false;\n\t\t\tcontroller.enqueue(encodeFrame(type, streamId, payload));\n\t\t\treturn true;\n\t\t};\n\t\tconst result = admission ? admission.then(runAdmission) : runAdmission();\n\t\tconst clearAdmission = () => {\n\t\t\tif (admission === tail) admission = void 0;\n\t\t};\n\t\tconst tail = result.then(clearAdmission, clearAdmission);\n\t\tadmission = tail;\n\t\treturn result;\n\t};\n\tconst maybeClose = () => {\n\t\tif (activePumps !== 0 || !stop()) return;\n\t\ttry {\n\t\t\tcontroller.close();\n\t\t} catch {}\n\t};\n\tconst startPump = (pump) => {\n\t\tactivePumps++;\n\t\tpump().then(() => {\n\t\t\tactivePumps--;\n\t\t\tmaybeClose();\n\t\t}, (error) => {\n\t\t\tactivePumps--;\n\t\t\terrorOutput(error);\n\t\t});\n\t};\n\tasync function pumpRawStream(streamId, stream) {\n\t\tconst reader = stream.getReader();\n\t\treaders.add(reader);\n\t\ttry {\n\t\t\twhile (!stopped) {\n\t\t\t\tconst { done, value } = await reader.read();\n\t\t\t\tif (stopped) return;\n\t\t\t\tif (done) {\n\t\t\t\t\tconst frameAdmission = admitFrame(FRAME_TYPE_END, streamId, EMPTY_PAYLOAD);\n\t\t\t\t\tif (frameAdmission !== true) await frameAdmission;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (!(value instanceof Uint8Array)) throw new TypeError(\"RawStream chunks must be Uint8Array\");\n\t\t\t\tlet offset = 0;\n\t\t\t\tdo {\n\t\t\t\t\tconst frameAdmission = admitFrame(FRAME_TYPE_CHUNK, streamId, value.byteLength <= MAX_FRAME_PAYLOAD_SIZE ? value : value.subarray(offset, offset + MAX_FRAME_PAYLOAD_SIZE));\n\t\t\t\t\tif (frameAdmission !== true && (frameAdmission === false || !await frameAdmission)) return;\n\t\t\t\t\toffset += MAX_FRAME_PAYLOAD_SIZE;\n\t\t\t\t} while (offset < value.byteLength);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tif (!stopped) {\n\t\t\t\tconst frameAdmission = admitFrame(FRAME_TYPE_ERROR, streamId, encodeErrorPayload(error));\n\t\t\t\tif (frameAdmission !== true) await frameAdmission;\n\t\t\t}\n\t\t} finally {\n\t\t\treaders.delete(reader);\n\t\t\treader.releaseLock();\n\t\t}\n\t}\n\tasync function pumpRecords() {\n\t\tconst reader = recordStream.getReader();\n\t\treaders.add(reader);\n\t\ttry {\n\t\t\twhile (!stopped) {\n\t\t\t\tconst { done, value } = await reader.read();\n\t\t\t\tif (stopped) {\n\t\t\t\t\tif (!done) for (const registration of value.rawStreams) cancelStream(registration.stream, stopped[0]);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (done) return;\n\t\t\t\tfor (const registration of value.rawStreams) pendingRawStreams.add(registration.stream);\n\t\t\t\tconst frameAdmission = admitFrame(FRAME_TYPE_JSON, 0, value.json);\n\t\t\t\tif (frameAdmission !== true && (frameAdmission === false || !await frameAdmission)) return;\n\t\t\t\tfor (const registration of value.rawStreams) {\n\t\t\t\t\tpendingRawStreams.delete(registration.stream);\n\t\t\t\t\tstartPump(pumpRawStream.bind(void 0, registration.id, registration.stream));\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tif (!stopped) errorOutput(error);\n\t\t} finally {\n\t\t\treaders.delete(reader);\n\t\t\treader.releaseLock();\n\t\t}\n\t}\n\treturn new ReadableStream({\n\t\tstart(ctrl) {\n\t\t\tcontroller = ctrl;\n\t\t\tif (options.signal?.aborted) {\n\t\t\t\tcancelStream(recordStream, options.signal.reason);\n\t\t\t\terrorOutput(options.signal.reason);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\toptions.signal?.addEventListener(\"abort\", abortOutput, { once: true });\n\t\t\tstartPump(pumpRecords);\n\t\t},\n\t\tpull() {\n\t\t\twakeAdmission();\n\t\t},\n\t\tcancel(reason) {\n\t\t\tif (stop(reason)) options.onCancel?.(reason);\n\t\t}\n\t});\n}\n//#endregion\nexport { createMultiplexedStream };\n\n//# sourceMappingURL=frame-protocol.js.map","//#region src/safeObjectMerge.ts\nfunction isSafeKey(key) {\n\treturn key !== \"__proto__\" && key !== \"constructor\" && key !== \"prototype\";\n}\n/**\n* Merge target and source into a new null-proto object, filtering dangerous keys.\n*/\nfunction safeObjectMerge(target, source) {\n\tconst result = Object.create(null);\n\tif (target) {\n\t\tfor (const key of Object.keys(target)) if (isSafeKey(key)) result[key] = target[key];\n\t}\n\tif (source && typeof source === \"object\") {\n\t\tfor (const key of Object.keys(source)) if (isSafeKey(key)) result[key] = source[key];\n\t}\n\treturn result;\n}\n/**\n* Create a null-prototype object, optionally copying from source.\n*/\nfunction createNullProtoObject(source) {\n\tif (!source) return Object.create(null);\n\tconst obj = Object.create(null);\n\tfor (const key of Object.keys(source)) if (isSafeKey(key)) obj[key] = source[key];\n\treturn obj;\n}\n//#endregion\nexport { createNullProtoObject, safeObjectMerge };\n\n//# sourceMappingURL=safeObjectMerge.js.map","import { TSS_SERVER_FUNCTION_FACTORY } from \"./constants.js\";\nimport { getStartOptions } from \"./getStartOptions.js\";\nimport { getStartContextServerOnly } from \"./getStartContextServerOnly.js\";\nimport { createNullProtoObject, safeObjectMerge } from \"./safeObjectMerge.js\";\nimport { mergeHeaders } from \"@tanstack/router-core/ssr/client\";\nimport { isRedirect, parseRedirect } from \"@tanstack/router-core\";\n//#region src/createServerFn.ts\nvar createServerFn = (options, __opts) => {\n\tconst resolvedOptions = __opts || options || {};\n\tif (typeof resolvedOptions.method === \"undefined\") resolvedOptions.method = \"GET\";\n\tconst setValidator = (validator) => {\n\t\treturn createServerFn(void 0, {\n\t\t\t...resolvedOptions,\n\t\t\tvalidator,\n\t\t\tinputValidator: validator\n\t\t});\n\t};\n\tconst res = {\n\t\toptions: resolvedOptions,\n\t\tmiddleware: (middleware) => {\n\t\t\tconst newMiddleware = [...resolvedOptions.middleware || []];\n\t\t\tmiddleware.forEach((item) => {\n\t\t\t\tif (TSS_SERVER_FUNCTION_FACTORY in item) {\n\t\t\t\t\tif (item.options.middleware) newMiddleware.push(...item.options.middleware);\n\t\t\t\t} else newMiddleware.push(item);\n\t\t\t});\n\t\t\tconst res = createServerFn(void 0, {\n\t\t\t\t...resolvedOptions,\n\t\t\t\tmiddleware: newMiddleware\n\t\t\t});\n\t\t\tres[TSS_SERVER_FUNCTION_FACTORY] = true;\n\t\t\treturn res;\n\t\t},\n\t\tvalidator: setValidator,\n\t\tinputValidator: setValidator,\n\t\thandler: (...args) => {\n\t\t\tconst [extractedFn, serverFn] = args;\n\t\t\tconst newOptions = {\n\t\t\t\t...resolvedOptions,\n\t\t\t\textractedFn,\n\t\t\t\tserverFn\n\t\t\t};\n\t\t\tconst resolvedMiddleware = [...newOptions.middleware || [], serverFnBaseToMiddleware(newOptions)];\n\t\t\textractedFn.method = resolvedOptions.method;\n\t\t\treturn Object.assign(async (opts) => {\n\t\t\t\tconst result = await executeMiddleware(resolvedMiddleware, \"client\", {\n\t\t\t\t\t...extractedFn,\n\t\t\t\t\t...newOptions,\n\t\t\t\t\tdata: opts?.data,\n\t\t\t\t\theaders: opts?.headers,\n\t\t\t\t\tsignal: opts?.signal,\n\t\t\t\t\tfetch: opts?.fetch,\n\t\t\t\t\tcontext: createNullProtoObject()\n\t\t\t\t});\n\t\t\t\tconst redirect = parseRedirect(result.error);\n\t\t\t\tif (redirect) throw redirect;\n\t\t\t\tif (result.error) throw result.error;\n\t\t\t\treturn result.result;\n\t\t\t}, {\n\t\t\t\t...extractedFn,\n\t\t\t\tmethod: resolvedOptions.method,\n\t\t\t\t__executeServer: async (opts) => {\n\t\t\t\t\tconst startContext = getStartContextServerOnly();\n\t\t\t\t\tconst serverContextAfterGlobalMiddlewares = startContext.contextAfterGlobalMiddlewares;\n\t\t\t\t\treturn await executeMiddleware(resolvedMiddleware, \"server\", {\n\t\t\t\t\t\t...extractedFn,\n\t\t\t\t\t\tdata: opts.data,\n\t\t\t\t\t\tmethod: opts.method ?? resolvedOptions.method,\n\t\t\t\t\t\tserverFnMeta: extractedFn.serverFnMeta,\n\t\t\t\t\t\tcontext: safeObjectMerge(opts.context, serverContextAfterGlobalMiddlewares),\n\t\t\t\t\t\trequest: startContext.request\n\t\t\t\t\t}).then((d) => ({\n\t\t\t\t\t\tresult: d.result,\n\t\t\t\t\t\terror: d.error,\n\t\t\t\t\t\tcontext: d.sendContext\n\t\t\t\t\t}));\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\tconst fun = (options) => {\n\t\treturn createServerFn(void 0, {\n\t\t\t...resolvedOptions,\n\t\t\t...options\n\t\t});\n\t};\n\treturn Object.assign(fun, res);\n};\nasync function executeMiddleware(middlewares, env, opts) {\n\tlet flattenedMiddlewares = flattenMiddlewares([...getStartOptions()?.functionMiddleware || [], ...middlewares]);\n\tif (env === \"server\") {\n\t\tconst startContext = getStartContextServerOnly({ throwIfNotFound: false });\n\t\tif (startContext?.executedRequestMiddlewares) flattenedMiddlewares = flattenedMiddlewares.filter((m) => !startContext.executedRequestMiddlewares.has(m));\n\t}\n\tconst callNextMiddleware = async (ctx) => {\n\t\tconst nextMiddleware = flattenedMiddlewares.shift();\n\t\tif (!nextMiddleware) return ctx;\n\t\ttry {\n\t\t\tlet validator = \"validator\" in nextMiddleware.options ? nextMiddleware.options.validator : void 0;\n\t\t\tif (!validator && \"inputValidator\" in nextMiddleware.options) validator = nextMiddleware.options.inputValidator;\n\t\t\tif (validator && env === \"server\") ctx.data = await execValidator(validator, ctx.data);\n\t\t\tlet middlewareFn = void 0;\n\t\t\tif (env === \"client\") {\n\t\t\t\tif (\"client\" in nextMiddleware.options) middlewareFn = nextMiddleware.options.client;\n\t\t\t} else if (\"server\" in nextMiddleware.options) middlewareFn = nextMiddleware.options.server;\n\t\t\tif (middlewareFn) {\n\t\t\t\tconst userNext = async (userCtx = {}) => {\n\t\t\t\t\tconst result = await callNextMiddleware({\n\t\t\t\t\t\t...ctx,\n\t\t\t\t\t\t...userCtx,\n\t\t\t\t\t\tcontext: safeObjectMerge(ctx.context, userCtx.context),\n\t\t\t\t\t\tsendContext: safeObjectMerge(ctx.sendContext, userCtx.sendContext),\n\t\t\t\t\t\theaders: mergeHeaders(ctx.headers, userCtx.headers),\n\t\t\t\t\t\t_callSiteFetch: ctx._callSiteFetch,\n\t\t\t\t\t\tfetch: ctx._callSiteFetch ?? userCtx.fetch ?? ctx.fetch,\n\t\t\t\t\t\tresult: userCtx.result !== void 0 ? userCtx.result : userCtx instanceof Response ? userCtx : ctx.result,\n\t\t\t\t\t\terror: userCtx.error ?? ctx.error\n\t\t\t\t\t});\n\t\t\t\t\tif (result.error) throw result.error;\n\t\t\t\t\treturn result;\n\t\t\t\t};\n\t\t\t\tconst result = await middlewareFn({\n\t\t\t\t\t...ctx,\n\t\t\t\t\tnext: userNext\n\t\t\t\t});\n\t\t\t\tif (isRedirect(result)) return {\n\t\t\t\t\t...ctx,\n\t\t\t\t\terror: result\n\t\t\t\t};\n\t\t\t\tif (result instanceof Response) return {\n\t\t\t\t\t...ctx,\n\t\t\t\t\tresult\n\t\t\t\t};\n\t\t\t\tif (!result) throw new Error(\"User middleware returned undefined. You must call next() or return a result in your middlewares.\");\n\t\t\t\treturn result;\n\t\t\t}\n\t\t\treturn callNextMiddleware(ctx);\n\t\t} catch (error) {\n\t\t\treturn {\n\t\t\t\t...ctx,\n\t\t\t\terror\n\t\t\t};\n\t\t}\n\t};\n\treturn callNextMiddleware({\n\t\t...opts,\n\t\theaders: opts.headers || {},\n\t\tsendContext: opts.sendContext || {},\n\t\tcontext: opts.context || createNullProtoObject(),\n\t\t_callSiteFetch: opts.fetch\n\t});\n}\nfunction flattenMiddlewares(middlewares, maxDepth = 100) {\n\tconst seen = /* @__PURE__ */ new Set();\n\tconst flattened = [];\n\tconst recurse = (middleware, depth) => {\n\t\tif (depth > maxDepth) throw new Error(`Middleware nesting depth exceeded maximum of ${maxDepth}. Check for circular references.`);\n\t\tmiddleware.forEach((m) => {\n\t\t\tif (m.options.middleware) recurse(m.options.middleware, depth + 1);\n\t\t\tif (!seen.has(m)) {\n\t\t\t\tseen.add(m);\n\t\t\t\tflattened.push(m);\n\t\t\t}\n\t\t});\n\t};\n\trecurse(middlewares, 0);\n\treturn flattened;\n}\nasync function execValidator(validator, input) {\n\tif (validator == null) return {};\n\tif (\"~standard\" in validator) {\n\t\tconst result = await validator[\"~standard\"].validate(input);\n\t\tif (result.issues) throw new Error(JSON.stringify(result.issues, void 0, 2));\n\t\treturn result.value;\n\t}\n\tif (\"parse\" in validator) return validator.parse(input);\n\tif (typeof validator === \"function\") return validator(input);\n\tthrow new Error(\"Invalid validator type!\");\n}\nfunction serverFnBaseToMiddleware(options) {\n\treturn {\n\t\t\"~types\": void 0,\n\t\toptions: {\n\t\t\tinputValidator: options.validator ?? options.inputValidator,\n\t\t\tclient: async ({ next, sendContext, fetch, ...ctx }) => {\n\t\t\t\tconst payload = {\n\t\t\t\t\t...ctx,\n\t\t\t\t\tcontext: sendContext,\n\t\t\t\t\tfetch\n\t\t\t\t};\n\t\t\t\treturn next(await options.extractedFn?.(payload));\n\t\t\t},\n\t\t\tserver: async ({ next, ...ctx }) => {\n\t\t\t\tconst result = await options.serverFn?.(ctx);\n\t\t\t\treturn next({\n\t\t\t\t\t...ctx,\n\t\t\t\t\tresult\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t};\n}\n//#endregion\nexport { createServerFn, execValidator, executeMiddleware, flattenMiddlewares };\n\n//# sourceMappingURL=createServerFn.js.map","//#region src/createMiddleware.ts\nvar createMiddleware = (options, __opts) => {\n\tconst resolvedOptions = {\n\t\ttype: \"request\",\n\t\t...__opts || options\n\t};\n\tconst setValidator = (validator) => {\n\t\treturn createMiddleware({}, Object.assign(resolvedOptions, {\n\t\t\tvalidator,\n\t\t\tinputValidator: validator\n\t\t}));\n\t};\n\treturn {\n\t\toptions: resolvedOptions,\n\t\tmiddleware: (middleware) => {\n\t\t\treturn createMiddleware({}, Object.assign(resolvedOptions, { middleware }));\n\t\t},\n\t\tvalidator: setValidator,\n\t\tinputValidator: setValidator,\n\t\tclient: (client) => {\n\t\t\treturn createMiddleware({}, Object.assign(resolvedOptions, { client }));\n\t\t},\n\t\tserver: (server) => {\n\t\t\treturn createMiddleware({}, Object.assign(resolvedOptions, { server }));\n\t\t}\n\t};\n};\n//#endregion\nexport { createMiddleware };\n\n//# sourceMappingURL=createMiddleware.js.map","import { createMiddleware } from \"./createMiddleware.js\";\nimport { createIsomorphicFn } from \"@tanstack/start-fn-stubs\";\n//#region src/createCsrfMiddleware.ts\nvar csrfSymbol = Symbol.for(\"tanstack-start:csrf-middleware\");\nvar innerCreateCsrfMiddleware = (opts = {}) => {\n\tconst middleware = createMiddleware().server(async (ctx) => {\n\t\tconst csrfCtx = ctx;\n\t\tif (opts.filter && !await opts.filter(csrfCtx)) return ctx.next();\n\t\tif (await isCsrfRequestAllowed(opts, csrfCtx)) return ctx.next();\n\t\treturn getFailureResponse(opts, csrfCtx);\n\t});\n\tif (process.env.NODE_ENV !== \"production\") Object.defineProperty(middleware, csrfSymbol, { value: true });\n\treturn middleware;\n};\nvar createCsrfMiddleware = createIsomorphicFn().server(innerCreateCsrfMiddleware);\nasync function isCsrfRequestAllowed(opts, ctx) {\n\tconst result = await getCsrfRequestValidationResult(opts, ctx);\n\treturn result === true || result === void 0 && opts.allowRequestsWithoutOriginCheck === true;\n}\nasync function getCsrfRequestValidationResult(opts, ctx) {\n\tconst fetchSite = ctx.request.headers.get(\"Sec-Fetch-Site\");\n\tif (fetchSite !== null) return matchValue(opts.secFetchSite ?? \"same-origin\", fetchSite, ctx);\n\tconst origin = ctx.request.headers.get(\"Origin\");\n\tif (origin !== null) {\n\t\tif (opts.origin) return matchValue(opts.origin, origin, ctx);\n\t\treturn origin === new URL(ctx.request.url).origin;\n\t}\n\tconst referer = ctx.request.headers.get(\"Referer\");\n\tif (referer === null || opts.referer === false) return;\n\tif (typeof opts.referer === \"function\") return opts.referer(referer, ctx);\n\tif (opts.origin) {\n\t\tconst refererOrigin = getOriginFromUrl(referer);\n\t\treturn refererOrigin !== void 0 && matchValue(opts.origin, refererOrigin, ctx);\n\t}\n\treturn isRefererSameOrigin(referer, new URL(ctx.request.url).origin);\n}\nasync function matchValue(matcher, value, ctx) {\n\tif (typeof matcher === \"function\") return matcher(value, ctx);\n\tif (Array.isArray(matcher)) return matcher.includes(value);\n\treturn value === matcher;\n}\nfunction getOriginFromUrl(url) {\n\ttry {\n\t\treturn new URL(url).origin;\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction isRefererSameOrigin(referer, requestOrigin) {\n\tif (referer === requestOrigin) return true;\n\tif (!referer.startsWith(requestOrigin)) return false;\n\tif (referer.length === requestOrigin.length) return true;\n\tconst code = referer.charCodeAt(requestOrigin.length);\n\treturn code === 47 || code === 63 || code === 35;\n}\nasync function getFailureResponse(opts, ctx) {\n\tif (typeof opts.failureResponse === \"function\") return opts.failureResponse(ctx);\n\treturn opts.failureResponse?.clone() ?? new Response(\"Forbidden\", { status: 403 });\n}\n//#endregion\nexport { createCsrfMiddleware, csrfSymbol, getCsrfRequestValidationResult, isCsrfRequestAllowed };\n\n//# sourceMappingURL=createCsrfMiddleware.js.map","import { getResponse } from \"./request-response.js\";\nimport { getServerFnById } from \"./getServerFnById.js\";\nimport { createMultiplexedStream } from \"./frame-protocol.js\";\nimport { TSS_CONTENT_TYPE_FRAMED_VERSIONED, TSS_FORMDATA_CONTEXT, X_TSS_RAW_RESPONSE, X_TSS_SERIALIZED, getSerovalPlugins, safeObjectMerge } from \"@tanstack/start-client-core\";\nimport { invariant, isNotFound, isRedirect } from \"@tanstack/router-core\";\nimport { createRawStreamRPCPlugin, defaultSerovalDeserializerPlugins } from \"@tanstack/router-core/ssr/server\";\nimport { MAX_FRAMED_STREAMS, MAX_FRAME_PAYLOAD_SIZE } from \"@tanstack/start-client-core/client-rpc\";\nimport { fromJSON, toCrossJSONAsync, toCrossJSONStream } from \"seroval\";\n//#region src/server-functions-handler.ts\nvar serovalPlugins = void 0;\nvar FORM_DATA_CONTENT_TYPES = [\"multipart/form-data\", \"application/x-www-form-urlencoded\"];\nvar MAX_PAYLOAD_SIZE = 1e6;\nvar MAX_PENDING_SERIALIZATION_RECORDS = 1024;\nvar MAX_PENDING_SERIALIZATION_BYTES = 32 * 1024 * 1024;\nvar textEncoder = new TextEncoder();\nfunction encodeSerializationRecord(value) {\n\treturn textEncoder.encode(JSON.stringify(value));\n}\nfunction exceedsPendingSerializationLimit(record, recordCount, pendingBytes) {\n\treturn recordCount >= MAX_PENDING_SERIALIZATION_RECORDS || pendingBytes + record.byteLength > MAX_PENDING_SERIALIZATION_BYTES;\n}\nfunction runSerializationCleanup(dispose) {\n\ttry {\n\t\tdispose();\n\t} catch {}\n}\nfunction cancelRawStream(stream, reason) {\n\tstream.cancel(reason).catch(() => {});\n}\nvar handleServerAction = async ({ request, context, serverFnId }) => {\n\tconst methodUpper = request.method.toUpperCase();\n\tconst url = new URL(request.url);\n\tconst action = await getServerFnById(serverFnId, { origin: \"client\" });\n\tif (action.method && methodUpper !== action.method) return new Response(`expected ${action.method} method. Got ${methodUpper}`, {\n\t\tstatus: 405,\n\t\theaders: { Allow: action.method }\n\t});\n\tconst isServerFn = request.headers.get(\"x-tsr-serverFn\") === \"true\";\n\tserovalPlugins ??= getSerovalPlugins(defaultSerovalDeserializerPlugins);\n\tconst contentType = request.headers.get(\"Content-Type\");\n\ttry {\n\t\tlet res;\n\t\tif (FORM_DATA_CONTENT_TYPES.some((type) => contentType && contentType.includes(type))) {\n\t\t\tif (methodUpper === \"GET\") {\n\t\t\t\tif (process.env.NODE_ENV !== \"production\") throw new Error(\"Invariant failed: GET requests with FormData payloads are not supported\");\n\t\t\t\tinvariant();\n\t\t\t}\n\t\t\tconst formData = await request.formData();\n\t\t\tconst serializedContext = formData.get(TSS_FORMDATA_CONTEXT);\n\t\t\tformData.delete(TSS_FORMDATA_CONTEXT);\n\t\t\tconst params = {\n\t\t\t\tcontext,\n\t\t\t\tdata: formData,\n\t\t\t\tmethod: methodUpper\n\t\t\t};\n\t\t\tif (typeof serializedContext === \"string\") try {\n\t\t\t\tconst deserializedContext = fromJSON(JSON.parse(serializedContext), { plugins: serovalPlugins });\n\t\t\t\tif (typeof deserializedContext === \"object\" && deserializedContext) params.context = safeObjectMerge(deserializedContext, context);\n\t\t\t} catch (e) {\n\t\t\t\tif (process.env.NODE_ENV === \"development\") console.warn(\"Failed to parse FormData context:\", e);\n\t\t\t}\n\t\t\tres = await action(params);\n\t\t} else if (methodUpper === \"GET\") {\n\t\t\tconst payloadParam = url.searchParams.get(\"payload\");\n\t\t\tif (payloadParam && payloadParam.length > MAX_PAYLOAD_SIZE) throw new Error(\"Payload too large\");\n\t\t\tconst payload = payloadParam ? fromJSON(JSON.parse(payloadParam), { plugins: serovalPlugins }) : void 0;\n\t\t\tres = await action({\n\t\t\t\tdata: payload?.data,\n\t\t\t\tcontext: safeObjectMerge(payload?.context, context),\n\t\t\t\tmethod: methodUpper\n\t\t\t});\n\t\t} else {\n\t\t\tconst payload = contentType?.includes(\"application/json\") ? fromJSON(await request.json(), { plugins: serovalPlugins }) : void 0;\n\t\t\tres = await action({\n\t\t\t\tdata: payload?.data,\n\t\t\t\tcontext: safeObjectMerge(payload?.context, context),\n\t\t\t\tmethod: methodUpper\n\t\t\t});\n\t\t}\n\t\tconst unwrapped = res.error !== void 0 ? res.error : res.result;\n\t\tif (isNotFound(res)) res = isNotFoundResponse(res);\n\t\tif (!isServerFn && (unwrapped instanceof Response || unwrapped === null || typeof unwrapped !== \"object\")) return unwrapped;\n\t\tif (unwrapped instanceof Response) {\n\t\t\tif (isRedirect(unwrapped)) return unwrapped;\n\t\t\tunwrapped.headers.set(X_TSS_RAW_RESPONSE, \"true\");\n\t\t\treturn unwrapped;\n\t\t}\n\t\treturn serializeResult(res, request.signal, serovalPlugins);\n\t} catch (error) {\n\t\tif (error instanceof Response) return error;\n\t\tif (isNotFound(error)) return isNotFoundResponse(error);\n\t\tconsole.error(\"Server Fn Error!\", error);\n\t\tconst serializedError = JSON.stringify(await toCrossJSONAsync(error, {\n\t\t\trefs: /* @__PURE__ */ new Map(),\n\t\t\tplugins: serovalPlugins\n\t\t}));\n\t\tconst response = getResponse();\n\t\tconst headers = {\n\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t[X_TSS_SERIALIZED]: \"true\"\n\t\t};\n\t\ttry {\n\t\t\treturn new Response(serializedError, {\n\t\t\t\tstatus: response.status ?? 500,\n\t\t\t\tstatusText: response.statusText,\n\t\t\t\theaders\n\t\t\t});\n\t\t} catch {\n\t\t\treturn new Response(serializedError, {\n\t\t\t\tstatus: 500,\n\t\t\t\tstatusText: \"\",\n\t\t\t\theaders\n\t\t\t});\n\t\t}\n\t}\n};\n/**\n* Serializes a server-function result. A result that Seroval completes\n* synchronously without RawStreams becomes plain JSON; everything else is a\n* framed response whose records and raw streams are multiplexed in order.\n*/\nfunction serializeResult(res, signal, plugins) {\n\tconst alsResponse = getResponse();\n\tconst initialRecords = [];\n\tlet initialBytes = 0;\n\tconst pendingRawStreams = [];\n\tlet done = false;\n\tlet initialParsed = false;\n\tlet serializationFailure;\n\tlet disposeSerialization;\n\tlet onParse = (value, initial) => {\n\t\tif (serializationFailure) return;\n\t\tinitialParsed ||= initial;\n\t\tconst record = encodeSerializationRecord(value);\n\t\tif (exceedsPendingSerializationLimit(record, initialRecords.length, initialBytes)) {\n\t\t\tserializationFailure = [/* @__PURE__ */ new Error(\"Server function serialization exceeded its pending output limit\")];\n\t\t\treturn;\n\t\t}\n\t\tinitialRecords.push(record);\n\t\tinitialBytes += record.byteLength;\n\t};\n\tlet onDone = () => {\n\t\tif (initialParsed) done = true;\n\t};\n\tlet onError = (error) => {\n\t\tserializationFailure ??= [error];\n\t};\n\tconst rawStreamPlugin = createRawStreamRPCPlugin((id, stream) => {\n\t\tif (serializationFailure) {\n\t\t\tcancelRawStream(stream, serializationFailure[0]);\n\t\t\treturn;\n\t\t}\n\t\tif (id > MAX_FRAMED_STREAMS) {\n\t\t\tconst error = /* @__PURE__ */ new Error(`Too many raw streams in framed response (max ${MAX_FRAMED_STREAMS})`);\n\t\t\tcancelRawStream(stream, error);\n\t\t\tonError(error);\n\t\t\treturn;\n\t\t}\n\t\tpendingRawStreams.push({\n\t\t\tid,\n\t\t\tstream\n\t\t});\n\t});\n\tconst dispose = toCrossJSONStream(res, {\n\t\trefs: /* @__PURE__ */ new Map(),\n\t\tplugins: [rawStreamPlugin, ...plugins],\n\t\tonParse(value, initial) {\n\t\t\tonParse(value, initial);\n\t\t},\n\t\tonDone() {\n\t\t\tonDone();\n\t\t},\n\t\tonError: (error) => {\n\t\t\tonError(error);\n\t\t}\n\t});\n\tif (serializationFailure) {\n\t\trunSerializationCleanup(dispose);\n\t\tfor (const registration of pendingRawStreams) cancelRawStream(registration.stream, serializationFailure[0]);\n\t\tthrow serializationFailure[0];\n\t}\n\tif (!done) disposeSerialization = dispose;\n\tif (done && pendingRawStreams.length === 0 && initialRecords.length === 1) return new Response(initialRecords[0], {\n\t\tstatus: alsResponse.status,\n\t\tstatusText: alsResponse.statusText,\n\t\theaders: {\n\t\t\t\"Content-Type\": \"application/json\",\n\t\t\t[X_TSS_SERIALIZED]: \"true\"\n\t\t}\n\t});\n\tif (done && initialRecords.length === 1) {\n\t\tconst json = initialRecords[0];\n\t\tif (json.byteLength > MAX_FRAME_PAYLOAD_SIZE) {\n\t\t\tconst error = /* @__PURE__ */ new Error(\"Server function serialization exceeded its pending output limit\");\n\t\t\tfor (const registration of pendingRawStreams) cancelRawStream(registration.stream, error);\n\t\t\tthrow error;\n\t\t}\n\t\tconst rawStreams = pendingRawStreams.splice(0);\n\t\tinitialRecords.length = 0;\n\t\treturn createFramedResponse(new ReadableStream({\n\t\t\tstart(controller) {\n\t\t\t\tcontroller.enqueue({\n\t\t\t\t\tjson,\n\t\t\t\t\trawStreams\n\t\t\t\t});\n\t\t\t\tcontroller.close();\n\t\t\t},\n\t\t\tcancel(reason) {\n\t\t\t\tfor (const registration of rawStreams) cancelRawStream(registration.stream, reason);\n\t\t\t}\n\t\t}), { signal });\n\t}\n\tconst { readable, writable } = new TransformStream();\n\tconst writer = writable.getWriter();\n\tconst recordAbortController = new AbortController();\n\tlet pendingBytes = 0;\n\tconst pendingRecords = /* @__PURE__ */ new Set();\n\tconst abortRecordStream = (error) => {\n\t\tif (serializationFailure) return;\n\t\tserializationFailure = [error];\n\t\tconst disposeCurrentSerialization = disposeSerialization;\n\t\tdisposeSerialization = void 0;\n\t\tfor (const registration of pendingRawStreams.splice(0)) cancelRawStream(registration.stream, error);\n\t\tfor (const record of pendingRecords) for (const registration of record.rawStreams) cancelRawStream(registration.stream, error);\n\t\tpendingRecords.clear();\n\t\trecordAbortController.abort(error);\n\t\twriter.abort(error).catch(() => {});\n\t\tif (disposeCurrentSerialization) runSerializationCleanup(disposeCurrentSerialization);\n\t};\n\tconst writeRecord = (json, rawStreams) => {\n\t\tif (serializationFailure) {\n\t\t\tfor (const registration of rawStreams) cancelRawStream(registration.stream, serializationFailure[0]);\n\t\t\treturn false;\n\t\t}\n\t\tif (json.byteLength > MAX_FRAME_PAYLOAD_SIZE || exceedsPendingSerializationLimit(json, pendingRecords.size, pendingBytes)) {\n\t\t\tconst error = /* @__PURE__ */ new Error(\"Server function serialization exceeded its pending output limit\");\n\t\t\tfor (const registration of rawStreams) cancelRawStream(registration.stream, error);\n\t\t\tonError(error);\n\t\t\treturn false;\n\t\t}\n\t\tpendingBytes += json.byteLength;\n\t\tconst record = {\n\t\t\tjson,\n\t\t\trawStreams\n\t\t};\n\t\tpendingRecords.add(record);\n\t\twriter.write(record).then(() => {\n\t\t\tpendingRecords.delete(record);\n\t\t\tpendingBytes -= json.byteLength;\n\t\t}, (error) => {\n\t\t\tconst stillOwned = pendingRecords.delete(record);\n\t\t\tpendingBytes -= json.byteLength;\n\t\t\tif (stillOwned) for (const registration of rawStreams) cancelRawStream(registration.stream, error);\n\t\t});\n\t\treturn true;\n\t};\n\tonParse = (value) => {\n\t\tif (serializationFailure) return;\n\t\twriteRecord(encodeSerializationRecord(value), pendingRawStreams.splice(0));\n\t};\n\tonDone = () => {\n\t\tif (serializationFailure) return;\n\t\tdisposeSerialization = void 0;\n\t\twriter.close().catch(() => {});\n\t};\n\tonError = (error) => {\n\t\tabortRecordStream(error);\n\t};\n\tconst initialRawStreams = pendingRawStreams.splice(0);\n\tfor (let index = 0; index < initialRecords.length; index++) {\n\t\tconst isLast = index === initialRecords.length - 1;\n\t\tif (!writeRecord(initialRecords[index], isLast ? initialRawStreams : [])) {\n\t\t\tif (!isLast) for (const registration of initialRawStreams) cancelRawStream(registration.stream, serializationFailure[0]);\n\t\t\tinitialRecords.length = 0;\n\t\t\tthrow serializationFailure[0];\n\t\t}\n\t}\n\tinitialRecords.length = 0;\n\tif (done) onDone();\n\twriter.closed.catch((error) => {\n\t\tabortRecordStream(error);\n\t});\n\treturn createFramedResponse(readable, {\n\t\tsignal: AbortSignal.any([recordAbortController.signal, signal]),\n\t\tonCancel: abortRecordStream\n\t});\n\tfunction createFramedResponse(records, options) {\n\t\tconst multiplexedStream = createMultiplexedStream(records, options);\n\t\ttry {\n\t\t\treturn new Response(multiplexedStream, {\n\t\t\t\tstatus: alsResponse.status,\n\t\t\t\tstatusText: alsResponse.statusText,\n\t\t\t\theaders: {\n\t\t\t\t\t\"Content-Type\": TSS_CONTENT_TYPE_FRAMED_VERSIONED,\n\t\t\t\t\t[X_TSS_SERIALIZED]: \"true\"\n\t\t\t\t}\n\t\t\t});\n\t\t} catch (error) {\n\t\t\tcancelRawStream(multiplexedStream, error);\n\t\t\tthrow error;\n\t\t}\n\t}\n}\nfunction isNotFoundResponse(error) {\n\tconst { headers, ...rest } = error;\n\tconst response = new Response(JSON.stringify(rest), {\n\t\tstatus: 404,\n\t\theaders\n\t});\n\tresponse.headers.set(\"Content-Type\", \"application/json\");\n\treturn response;\n}\n//#endregion\nexport { handleServerAction };\n\n//# sourceMappingURL=server-functions-handler.js.map","import { getScriptPreloadAttrs, getStylesheetHref, resolveManifestCssLink } from \"@tanstack/router-core\";\n//#region src/early-hints.ts\nvar LINK_PARAM_TOKEN_RE = /^[!#$%&'*+\\-.^_`|~0-9A-Za-z]+$/;\nvar PRELOAD_AS_VALUES = new Set([\n\t\"fetch\",\n\t\"font\",\n\t\"image\",\n\t\"script\",\n\t\"style\",\n\t\"track\"\n]);\nfunction buildLinkParam(name, value) {\n\tif (value === void 0) return name;\n\tif (LINK_PARAM_TOKEN_RE.test(value)) return `${name}=${value}`;\n\treturn `${name}=${JSON.stringify(value)}`;\n}\nfunction serializeEarlyHint(hint) {\n\tconst parts = [`<${hint.href}>`, buildLinkParam(\"rel\", hint.rel)];\n\tif (hint.as) parts.push(buildLinkParam(\"as\", hint.as));\n\tif (hint.crossOrigin !== void 0) parts.push(buildLinkParam(\"crossorigin\", hint.crossOrigin || void 0));\n\tif (hint.type) parts.push(buildLinkParam(\"type\", hint.type));\n\tif (hint.integrity) parts.push(buildLinkParam(\"integrity\", hint.integrity));\n\tif (hint.referrerPolicy) parts.push(buildLinkParam(\"referrerpolicy\", hint.referrerPolicy));\n\tif (hint.fetchPriority) parts.push(buildLinkParam(\"fetchpriority\", hint.fetchPriority));\n\treturn parts.join(\"; \");\n}\nfunction getStringAttr(attrs, name, fallbackName) {\n\tconst value = attrs?.[name] ?? (fallbackName ? attrs?.[fallbackName] : void 0);\n\treturn typeof value === \"string\" ? value : void 0;\n}\nfunction getPreloadAs(attrs) {\n\tconst as = getStringAttr(attrs, \"as\");\n\treturn as && PRELOAD_AS_VALUES.has(as) ? as : void 0;\n}\nfunction addEarlyHintFetchAttrs(hint, attrs) {\n\tconst crossOrigin = getStringAttr(attrs, \"crossOrigin\", \"crossorigin\");\n\tconst type = getStringAttr(attrs, \"type\");\n\tconst integrity = getStringAttr(attrs, \"integrity\");\n\tconst referrerPolicy = getStringAttr(attrs, \"referrerPolicy\", \"referrerpolicy\");\n\tconst fetchPriority = getStringAttr(attrs, \"fetchPriority\", \"fetchpriority\");\n\tif (crossOrigin !== void 0) hint.crossOrigin = crossOrigin;\n\tif (type) hint.type = type;\n\tif (integrity) hint.integrity = integrity;\n\tif (referrerPolicy) hint.referrerPolicy = referrerPolicy;\n\tif (fetchPriority) hint.fetchPriority = fetchPriority;\n}\nfunction linkAttrsToEarlyHint(attrs) {\n\tconst href = getStringAttr(attrs, \"href\");\n\tconst rel = getStringAttr(attrs, \"rel\");\n\tif (!href || !rel) return void 0;\n\tconst relTokens = rel.split(/\\s+/);\n\tlet hintRel;\n\tlet hintAs;\n\tif (relTokens.includes(\"modulepreload\")) {\n\t\thintRel = \"modulepreload\";\n\t\thintAs = \"script\";\n\t} else if (relTokens.includes(\"stylesheet\")) {\n\t\thintRel = \"preload\";\n\t\thintAs = \"style\";\n\t} else if (relTokens.includes(\"preload\")) {\n\t\thintAs = getPreloadAs(attrs);\n\t\tif (!hintAs) return void 0;\n\t\thintRel = \"preload\";\n\t} else if (relTokens.includes(\"preconnect\")) {\n\t\thintRel = \"preconnect\";\n\t\thintAs = void 0;\n\t} else if (relTokens.includes(\"dns-prefetch\")) {\n\t\thintRel = \"dns-prefetch\";\n\t\thintAs = void 0;\n\t}\n\tif (!hintRel) return void 0;\n\tconst hint = {\n\t\thref,\n\t\trel: hintRel\n\t};\n\tif (hintAs) hint.as = hintAs;\n\taddEarlyHintFetchAttrs(hint, attrs);\n\treturn hint;\n}\nfunction collectStaticHintsFromManifest(manifest, matchedRoutes) {\n\tconst hints = [];\n\tfor (const route of matchedRoutes) {\n\t\tconst routeManifest = manifest.routes[route.id];\n\t\tif (!routeManifest) continue;\n\t\tfor (const link of routeManifest.preloads ?? []) {\n\t\t\tconst attrs = getScriptPreloadAttrs(manifest, link);\n\t\t\tconst hint = {\n\t\t\t\thref: attrs.href,\n\t\t\t\trel: attrs.rel,\n\t\t\t\tas: \"script\"\n\t\t\t};\n\t\t\tif (attrs.crossOrigin !== void 0) hint.crossOrigin = attrs.crossOrigin;\n\t\t\thints.push(hint);\n\t\t}\n\t\tfor (const link of routeManifest.css ?? []) {\n\t\t\tconst stylesheetHref = getStylesheetHref(link);\n\t\t\tif (manifest.inlineCss?.styles[stylesheetHref] !== void 0) continue;\n\t\t\tconst resolvedLink = resolveManifestCssLink(link);\n\t\t\tconst hint = {\n\t\t\t\thref: stylesheetHref,\n\t\t\t\trel: \"preload\",\n\t\t\t\tas: \"style\"\n\t\t\t};\n\t\t\tif (resolvedLink.crossOrigin !== void 0) hint.crossOrigin = resolvedLink.crossOrigin;\n\t\t\thints.push(hint);\n\t\t}\n\t}\n\treturn hints;\n}\nfunction collectDynamicHintsFromMatches(matches) {\n\tconst hints = [];\n\tfor (const match of matches) {\n\t\tconst links = match.links;\n\t\tif (!Array.isArray(links)) continue;\n\t\tfor (const link of links) {\n\t\t\tconst hint = linkAttrsToEarlyHint(link);\n\t\t\tif (hint) hints.push(hint);\n\t\t}\n\t}\n\treturn hints;\n}\nfunction createEarlyHintsEvent(opts) {\n\tconst nextHints = [];\n\tconst nextLinks = [];\n\tfor (const hint of opts.hints) {\n\t\tconst link = serializeEarlyHint(hint);\n\t\tif (opts.sentLinks.has(link)) continue;\n\t\topts.sentLinks.add(link);\n\t\topts.sentHints.push(hint);\n\t\tnextHints.push(hint);\n\t\tnextLinks.push(link);\n\t}\n\tif (!nextHints.length && opts.phase !== \"dynamic\") return void 0;\n\treturn {\n\t\tphase: opts.phase,\n\t\thints: nextHints,\n\t\tlinks: nextLinks,\n\t\tallHints: opts.sentHints.slice(),\n\t\tallLinks: Array.from(opts.sentLinks)\n\t};\n}\nfunction createResponseLinkHeaderEntries(opts) {\n\tfor (const hint of opts.hints) {\n\t\tconst link = serializeEarlyHint(hint);\n\t\tif (opts.sentLinks.has(link)) continue;\n\t\topts.sentLinks.add(link);\n\t\topts.entries.push({\n\t\t\tphase: opts.phase,\n\t\t\thint,\n\t\t\tlink\n\t\t});\n\t}\n}\nfunction getResponseLinkHeaderEntries(opts) {\n\tif (!opts.filter) return opts.entries.map((entry) => entry.link);\n\ttry {\n\t\tconst links = [];\n\t\tfor (const entry of opts.entries) if (opts.filter(entry)) links.push(entry.link);\n\t\treturn links;\n\t} catch (err) {\n\t\tconsole.error(\"Error filtering response Link headers:\", err);\n\t\treturn [];\n\t}\n}\nfunction notifyEarlyHints(phase, event, onEarlyHints) {\n\ttry {\n\t\tconst result = onEarlyHints(event);\n\t\tif (result) Promise.resolve(result).catch((err) => {\n\t\t\tconsole.error(`Error sending ${phase} early hints:`, err);\n\t\t});\n\t} catch (err) {\n\t\tconsole.error(`Error sending ${phase} early hints:`, err);\n\t}\n}\nfunction getResponseLinkHeaderFilter(responseLinkHeader) {\n\tif (typeof responseLinkHeader !== \"object\") return;\n\treturn responseLinkHeader.filter;\n}\nfunction appendResponseLinkHeaders(opts) {\n\tfor (const link of getResponseLinkHeaderEntries(opts)) opts.responseHeaders.append(\"Link\", link);\n}\nfunction collectResponseLinkHeaderEntries(opts) {\n\tfor (let index = 0; index < opts.event.hints.length; index++) opts.entries.push({\n\t\tphase: opts.phase,\n\t\thint: opts.event.hints[index],\n\t\tlink: opts.event.links[index]\n\t});\n}\nfunction collectEarlyHintsPhase(opts) {\n\tconst event = opts.onEarlyHints ? createEarlyHintsEvent({\n\t\tphase: opts.phase,\n\t\thints: opts.hints,\n\t\tsentLinks: opts.sentLinks,\n\t\tsentHints: opts.sentHints\n\t}) : void 0;\n\tif (event) notifyEarlyHints(opts.phase, event, opts.onEarlyHints);\n\tif (!opts.responseLinkHeaderEntries) return;\n\tif (event) {\n\t\tcollectResponseLinkHeaderEntries({\n\t\t\tphase: opts.phase,\n\t\t\tevent,\n\t\t\tentries: opts.responseLinkHeaderEntries\n\t\t});\n\t\treturn;\n\t}\n\tcreateResponseLinkHeaderEntries({\n\t\tphase: opts.phase,\n\t\thints: opts.hints,\n\t\tsentLinks: opts.sentLinks,\n\t\tentries: opts.responseLinkHeaderEntries\n\t});\n}\nfunction createEarlyHintsCollector(opts) {\n\tif (process.env.TSS_DEV_SERVER === \"true\" || !opts?.onEarlyHints && !opts?.responseLinkHeader) return;\n\tconst sentLinks = /* @__PURE__ */ new Set();\n\tconst sentHints = opts.onEarlyHints ? new Array() : void 0;\n\tconst responseLinkHeaderEntries = opts.responseLinkHeader ? new Array() : void 0;\n\tconst responseLinkHeaderFilter = getResponseLinkHeaderFilter(opts.responseLinkHeader);\n\treturn {\n\t\tcollectStatic: ({ manifest, matchedRoutes }) => {\n\t\t\tif (!matchedRoutes?.length) return;\n\t\t\tcollectEarlyHintsPhase({\n\t\t\t\tphase: \"static\",\n\t\t\t\thints: collectStaticHintsFromManifest(manifest, matchedRoutes),\n\t\t\t\tsentLinks,\n\t\t\t\tsentHints,\n\t\t\t\tonEarlyHints: opts.onEarlyHints,\n\t\t\t\tresponseLinkHeaderEntries\n\t\t\t});\n\t\t},\n\t\tcollectDynamic: (matches) => {\n\t\t\tcollectEarlyHintsPhase({\n\t\t\t\tphase: \"dynamic\",\n\t\t\t\thints: collectDynamicHintsFromMatches(matches),\n\t\t\t\tsentLinks,\n\t\t\t\tsentHints,\n\t\t\t\tonEarlyHints: opts.onEarlyHints,\n\t\t\t\tresponseLinkHeaderEntries\n\t\t\t});\n\t\t},\n\t\tappendResponseHeaders: (headers) => {\n\t\t\tif (!responseLinkHeaderEntries?.length) return;\n\t\t\tappendResponseLinkHeaders({\n\t\t\t\tresponseHeaders: headers,\n\t\t\t\tentries: responseLinkHeaderEntries,\n\t\t\t\tfilter: responseLinkHeaderFilter\n\t\t\t});\n\t\t}\n\t};\n}\n//#endregion\nexport { createEarlyHintsCollector };\n\n//# sourceMappingURL=early-hints.js.map","import { resolveManifestAssetLink, resolveManifestCssLink } from \"@tanstack/router-core\";\n//#region src/transformAssetUrls.ts\nfunction normalizeTransformAssetResult(result) {\n\tif (typeof result === \"string\") return { href: result };\n\treturn result;\n}\nfunction escapeCssString(value) {\n\treturn value.replace(/\\\\/g, \"\\\\\\\\\").replace(/\"/g, \"\\\\\\\"\").replace(/\\n/g, \"\\\\a \").replace(/\\r/g, \"\\\\d \").replace(/\\f/g, \"\\\\c \");\n}\nasync function transformInlineCssTemplate(options) {\n\tconst { strings, urls } = options.template;\n\tif (strings.length !== urls.length + 1) throw new Error(`TanStack Start inlineCss template for ${options.stylesheetHref} is invalid`);\n\tlet css = strings[0];\n\tfor (let index = 0; index < urls.length; index++) {\n\t\tconst transformed = normalizeTransformAssetResult(await options.transformFn({\n\t\t\tkind: \"css-url\",\n\t\t\turl: urls[index],\n\t\t\tstylesheetHref: options.stylesheetHref\n\t\t}));\n\t\tcss += escapeCssString(transformed.href) + strings[index + 1];\n\t}\n\treturn css;\n}\nasync function transformInlineCssStyles(inlineCss, transformFn) {\n\tconst transformedStyles = {};\n\tconst transformedEntries = await Promise.all(Object.entries(inlineCss.styles).map(async ([stylesheetHref, css]) => {\n\t\tconst template = inlineCss.templates?.[stylesheetHref];\n\t\treturn [stylesheetHref, template ? await transformInlineCssTemplate({\n\t\t\tstylesheetHref,\n\t\t\ttemplate,\n\t\t\ttransformFn\n\t\t}) : css];\n\t}));\n\tfor (const [stylesheetHref, css] of transformedEntries) transformedStyles[stylesheetHref] = css;\n\treturn {\n\t\tstyles: transformedStyles,\n\t\t...inlineCss.templates ? { templates: inlineCss.templates } : {}\n\t};\n}\nfunction resolveTransformAssetsCrossOrigin(config, kind) {\n\tif (!config) return void 0;\n\tif (typeof config === \"string\") return config;\n\treturn config[kind];\n}\nfunction isObjectShorthand(transform) {\n\treturn \"prefix\" in transform;\n}\nfunction resolveTransformAssetsConfig(transform) {\n\tif (typeof transform === \"string\") {\n\t\tconst prefix = transform;\n\t\treturn {\n\t\t\ttype: \"transform\",\n\t\t\ttransformFn: ({ url }) => ({ href: `${prefix}${url}` }),\n\t\t\tcache: true\n\t\t};\n\t}\n\tif (typeof transform === \"function\") return {\n\t\ttype: \"transform\",\n\t\ttransformFn: transform,\n\t\tcache: true\n\t};\n\tif (isObjectShorthand(transform)) {\n\t\tconst { prefix, crossOrigin } = transform;\n\t\treturn {\n\t\t\ttype: \"transform\",\n\t\t\ttransformFn: ({ url, kind }) => {\n\t\t\t\tconst href = `${prefix}${url}`;\n\t\t\t\tif (kind === \"css-url\") return { href };\n\t\t\t\tconst co = resolveTransformAssetsCrossOrigin(crossOrigin, kind);\n\t\t\t\treturn co ? {\n\t\t\t\t\thref,\n\t\t\t\t\tcrossOrigin: co\n\t\t\t\t} : { href };\n\t\t\t},\n\t\t\tcache: true\n\t\t};\n\t}\n\tif (\"createTransform\" in transform && transform.createTransform) return {\n\t\ttype: \"createTransform\",\n\t\tcreateTransform: transform.createTransform,\n\t\tcache: transform.cache !== false\n\t};\n\treturn {\n\t\ttype: \"transform\",\n\t\ttransformFn: typeof transform.transform === \"string\" ? (({ url }) => ({ href: `${transform.transform}${url}` })) : transform.transform,\n\t\tcache: transform.cache !== false\n\t};\n}\nfunction assignManifestLink(link, next) {\n\tif (typeof link === \"string\") return next.crossOrigin ? next : next.href;\n\tconst nextLink = {\n\t\t...link,\n\t\thref: next.href\n\t};\n\tif (next.crossOrigin) nextLink.crossOrigin = next.crossOrigin;\n\telse delete nextLink.crossOrigin;\n\treturn nextLink;\n}\nasync function transformManifestAssets(source, transformFn, _opts) {\n\tconst manifest = structuredClone(source);\n\tconst inlineCssEnabled = _opts?.inlineCss !== false;\n\tconst scriptTransforms = /* @__PURE__ */ new Map();\n\tconst transformScript = (url) => {\n\t\tconst cached = scriptTransforms.get(url);\n\t\tif (cached) return cached;\n\t\tconst transformed = Promise.resolve(transformFn({\n\t\t\turl,\n\t\t\tkind: \"script\"\n\t\t})).then(normalizeTransformAssetResult);\n\t\tscriptTransforms.set(url, transformed);\n\t\treturn transformed;\n\t};\n\tif (!inlineCssEnabled) delete manifest.inlineCss;\n\telse if (manifest.inlineCss) manifest.inlineCss = await transformInlineCssStyles(manifest.inlineCss, transformFn);\n\tfor (const route of Object.values(manifest.routes)) {\n\t\tif (route.preloads?.length) route.preloads = await Promise.all(route.preloads.map(async (link) => {\n\t\t\tconst result = await transformScript(resolveManifestAssetLink(link).href);\n\t\t\treturn assignManifestLink(link, {\n\t\t\t\thref: result.href,\n\t\t\t\tcrossOrigin: result.crossOrigin\n\t\t\t});\n\t\t}));\n\t\tif (route.css?.length && !manifest.inlineCss) route.css = await Promise.all(route.css.map(async (link) => {\n\t\t\tconst result = normalizeTransformAssetResult(await transformFn({\n\t\t\t\turl: resolveManifestCssLink(link).href,\n\t\t\t\tkind: \"stylesheet\"\n\t\t\t}));\n\t\t\treturn assignManifestLink(link, {\n\t\t\t\thref: result.href,\n\t\t\t\tcrossOrigin: result.crossOrigin\n\t\t\t});\n\t\t}));\n\t\tif (route.scripts?.length) for (const script of route.scripts) {\n\t\t\tconst src = script.attrs?.src;\n\t\t\tif (typeof src !== \"string\") continue;\n\t\t\tconst result = await transformScript(src);\n\t\t\tscript.attrs = {\n\t\t\t\t...script.attrs,\n\t\t\t\tsrc: result.href\n\t\t\t};\n\t\t\tif (result.crossOrigin) script.attrs.crossOrigin = result.crossOrigin;\n\t\t\telse delete script.attrs.crossOrigin;\n\t\t}\n\t}\n\treturn manifest;\n}\n/**\n* Builds a final ServerManifest without URL transforms. Used when no\n* transformAssets option is provided.\n*\n* Returns a new manifest object so the cached base manifest is never mutated.\n*/\nfunction buildManifest(source, opts) {\n\treturn {\n\t\t...source.scriptFormat ? { scriptFormat: source.scriptFormat } : {},\n\t\t...opts?.inlineCss !== false && source.inlineCss ? { inlineCss: structuredClone(source.inlineCss) } : {},\n\t\troutes: { ...source.routes }\n\t};\n}\n//#endregion\nexport { buildManifest, resolveTransformAssetsConfig, transformManifestAssets };\n\n//# sourceMappingURL=transformAssetUrls.js.map","//#region src/inlineCss.ts\nfunction getStaticHandlerInlineCssDefault(handlerInlineCss) {\n\tif (typeof handlerInlineCss === \"function\") return;\n\treturn handlerInlineCss ?? true;\n}\nasync function resolveInlineCssForRequest(opts) {\n\tif (opts.requestInlineCss !== void 0) return opts.requestInlineCss;\n\tif (typeof opts.handlerInlineCss === \"function\") return await opts.handlerInlineCss({ request: opts.request });\n\treturn opts.handlerInlineCss ?? true;\n}\n//#endregion\nexport { getStaticHandlerInlineCssDefault, resolveInlineCssForRequest };\n\n//# sourceMappingURL=inlineCss.js.map","import { buildManifest, resolveTransformAssetsConfig, transformManifestAssets } from \"./transformAssetUrls.js\";\nimport { getStaticHandlerInlineCssDefault, resolveInlineCssForRequest } from \"./inlineCss.js\";\n//#region src/finalManifest.ts\nfunction createCachedBaseManifestLoader(loadBaseManifest) {\n\tlet baseManifestPromise;\n\treturn () => {\n\t\tif (!baseManifestPromise) baseManifestPromise = loadBaseManifest().catch((error) => {\n\t\t\tbaseManifestPromise = void 0;\n\t\t\tthrow error;\n\t\t});\n\t\treturn baseManifestPromise;\n\t};\n}\nfunction createFinalManifestTransformResolver(transformAssets, opts) {\n\tconst transformConfig = transformAssets !== void 0 ? resolveTransformAssetsConfig(transformAssets) : void 0;\n\tconst cache = transformConfig ? transformConfig.cache : true;\n\tconst warmup = !!transformAssets && typeof transformAssets === \"object\" && \"warmup\" in transformAssets && transformAssets.warmup === true;\n\tlet cachedCreateTransformPromise;\n\tconst clearCachedCreateTransform = () => {\n\t\tcachedCreateTransformPromise = void 0;\n\t};\n\treturn {\n\t\tcache,\n\t\twarmup,\n\t\tclearCachedCreateTransform,\n\t\tgetTransformFn: async (ctx) => {\n\t\t\tif (!transformConfig) return void 0;\n\t\t\tif (transformConfig.type !== \"createTransform\") return transformConfig.transformFn;\n\t\t\tif (!cache || !opts.cacheCreateTransform) return transformConfig.createTransform(ctx);\n\t\t\tif (!cachedCreateTransformPromise) cachedCreateTransformPromise = Promise.resolve(transformConfig.createTransform(ctx)).catch((error) => {\n\t\t\t\tclearCachedCreateTransform();\n\t\t\t\tthrow error;\n\t\t\t});\n\t\t\treturn cachedCreateTransformPromise;\n\t\t}\n\t};\n}\nfunction createFinalManifestResolver(opts) {\n\tconst finalManifestCache = /* @__PURE__ */ new Map();\n\tconst transformResolver = createFinalManifestTransformResolver(opts.transformAssets, { cacheCreateTransform: opts.cacheCreateTransform });\n\tconst handlerDefaultInlineCss = getStaticHandlerInlineCssDefault(opts.inlineCss);\n\tconst getRequestManifestOptions = async (requestOpts) => {\n\t\tconst transformFn = await transformResolver.getTransformFn({\n\t\t\twarmup: false,\n\t\t\trequest: requestOpts.request\n\t\t});\n\t\tconst inlineCss = await resolveInlineCssForRequest({\n\t\t\trequest: requestOpts.request,\n\t\t\thandlerInlineCss: opts.inlineCss,\n\t\t\trequestInlineCss: requestOpts.requestInlineCss\n\t\t});\n\t\treturn {\n\t\t\tgetBaseManifest: requestOpts.getBaseManifest,\n\t\t\ttransformFn,\n\t\t\tcache: transformResolver.cache,\n\t\t\tinlineCss\n\t\t};\n\t};\n\tconst resolveRequest = async (requestOpts, cache) => {\n\t\treturn resolveFinalManifest({\n\t\t\t...await getRequestManifestOptions(requestOpts),\n\t\t\tfinalManifestCache: cache\n\t\t});\n\t};\n\treturn {\n\t\twarmup: ({ getBaseManifest }) => warmupFinalManifest({\n\t\t\tenabled: transformResolver.warmup,\n\t\t\thandlerDefaultInlineCss,\n\t\t\tcache: transformResolver.cache,\n\t\t\tfinalManifestCache,\n\t\t\tgetBaseManifest,\n\t\t\tgetTransformFn: () => transformResolver.getTransformFn({ warmup: true }),\n\t\t\tonError: transformResolver.clearCachedCreateTransform\n\t\t}),\n\t\tresolveCached: (requestOpts) => resolveRequest(requestOpts, finalManifestCache),\n\t\tresolveUncached: (requestOpts) => resolveRequest(requestOpts, void 0)\n\t};\n}\nfunction getFinalManifestCacheKey(inlineCss) {\n\treturn inlineCss ? \"inline-css\" : \"linked-css\";\n}\nfunction cacheFinalManifestPromise(cachedFinalManifestPromises, cacheKey, promise) {\n\tconst cachedFinalManifestPromise = promise.catch((error) => {\n\t\tif (cachedFinalManifestPromises.get(cacheKey) === cachedFinalManifestPromise) cachedFinalManifestPromises.delete(cacheKey);\n\t\tthrow error;\n\t});\n\tcachedFinalManifestPromises.set(cacheKey, cachedFinalManifestPromise);\n\treturn cachedFinalManifestPromise;\n}\nfunction getOrCreateCachedFinalManifestPromise(cachedFinalManifestPromises, cacheKey, computeFinalManifest) {\n\tconst cachedFinalManifestPromise = cachedFinalManifestPromises.get(cacheKey);\n\tif (cachedFinalManifestPromise) return cachedFinalManifestPromise;\n\treturn cacheFinalManifestPromise(cachedFinalManifestPromises, cacheKey, Promise.resolve().then(computeFinalManifest));\n}\nasync function buildFinalManifest(opts) {\n\treturn opts.transformFn ? await transformManifestAssets(opts.base, opts.transformFn, { inlineCss: opts.inlineCss }) : buildManifest(opts.base, { inlineCss: opts.inlineCss });\n}\nasync function resolveFinalManifest(opts) {\n\tconst computeFinalManifest = async () => {\n\t\treturn buildFinalManifest({\n\t\t\tbase: await opts.getBaseManifest(),\n\t\t\ttransformFn: opts.transformFn,\n\t\t\tinlineCss: opts.inlineCss\n\t\t});\n\t};\n\tif (opts.finalManifestCache && (!opts.transformFn || opts.cache)) return getOrCreateCachedFinalManifestPromise(opts.finalManifestCache, getFinalManifestCacheKey(opts.inlineCss), computeFinalManifest);\n\treturn computeFinalManifest();\n}\nfunction warmupFinalManifest(opts) {\n\tif (!opts.enabled || opts.handlerDefaultInlineCss === void 0 || !opts.cache) return;\n\tconst inlineCss = opts.handlerDefaultInlineCss;\n\tconst warmupPromise = getOrCreateCachedFinalManifestPromise(opts.finalManifestCache, getFinalManifestCacheKey(inlineCss), async () => {\n\t\tconst [base, transformFn] = await Promise.all([opts.getBaseManifest(), opts.getTransformFn()]);\n\t\treturn buildFinalManifest({\n\t\t\tbase,\n\t\t\ttransformFn,\n\t\t\tinlineCss\n\t\t});\n\t});\n\tif (opts.onError) warmupPromise.catch(opts.onError);\n\treturn warmupPromise;\n}\n//#endregion\nexport { createCachedBaseManifestLoader, createFinalManifestResolver };\n\n//# sourceMappingURL=finalManifest.js.map","import { getServerFnById } from \"../getServerFnById.js\";\nimport { TSS_SERVER_FUNCTION } from \"@tanstack/start-client-core\";\nimport { createSerializationAdapter } from \"@tanstack/router-core\";\n//#region src/serializer/ServerFunctionSerializationAdapter.ts\nvar ServerFunctionSerializationAdapter = createSerializationAdapter({\n\tkey: \"$TSS/serverfn\",\n\ttest: (v) => {\n\t\tif (typeof v !== \"function\") return false;\n\t\tif (!(TSS_SERVER_FUNCTION in v)) return false;\n\t\treturn !!v[TSS_SERVER_FUNCTION];\n\t},\n\ttoSerializable: ({ serverFnMeta }) => ({ functionId: serverFnMeta.id }),\n\tfromSerializable: ({ functionId }) => {\n\t\tconst fn = async (opts, signal) => {\n\t\t\tconst serverFn = await getServerFnById(functionId, { origin: \"client\" });\n\t\t\tconst result = await serverFn({\n\t\t\t\tdata: opts?.data,\n\t\t\t\tcontext: opts?.context,\n\t\t\t\tmethod: serverFn.method ?? \"GET\"\n\t\t\t}, signal);\n\t\t\tif (result.error !== void 0) throw result.error;\n\t\t\treturn result.result;\n\t\t};\n\t\treturn fn;\n\t}\n});\n//#endregion\nexport { ServerFunctionSerializationAdapter };\n\n//# sourceMappingURL=ServerFunctionSerializationAdapter.js.map","import { requestHandler } from \"./request-response.js\";\nimport { getStartManifest } from \"./router-manifest.js\";\nimport { handleServerAction } from \"./server-functions-handler.js\";\nimport { createEarlyHintsCollector } from \"./early-hints.js\";\nimport { createCachedBaseManifestLoader, createFinalManifestResolver } from \"./finalManifest.js\";\nimport { HEADERS } from \"./constants.js\";\nimport { ServerFunctionSerializationAdapter } from \"./serializer/ServerFunctionSerializationAdapter.js\";\nimport { createServerHistory } from \"@tanstack/history\";\nimport { createCsrfMiddleware, createNullProtoObject, csrfSymbol, flattenMiddlewares, mergeHeaders, safeObjectMerge } from \"@tanstack/start-client-core\";\nimport { _getRenderedMatches, executeRewriteInput, isDangerousProtocol, isPromise, isRedirect } from \"@tanstack/router-core\";\nimport { attachRouterServerSsrUtils, bindSsrResponseToRequest, disposeSsrResponse, getNormalizedURL, isSsrResponse, normalizeSsrResponse, replaceSsrResponse, stripSsrResponseBody, waitForRequest } from \"@tanstack/router-core/ssr/server\";\nimport { getStartContext, runWithStartContext } from \"@tanstack/start-storage-context\";\n//#region src/createStartHandler.ts\nfunction getStartResponseHeaders(opts) {\n\treturn mergeHeaders({ \"Content-Type\": \"text/html; charset=utf-8\" }, ..._getRenderedMatches(opts.router.stores.matches.get()).map((match) => {\n\t\treturn match.headers;\n\t}));\n}\nvar entriesPromise;\nvar hasWarnedMissingCsrfMiddleware = false;\nvar defaultCsrfMiddleware = createCsrfMiddleware({ filter: (ctx) => ctx.handlerType === \"serverFn\" });\nvar getCachedBaseManifest = createCachedBaseManifestLoader(() => getStartManifest());\nvar getProdBaseManifest = () => getCachedBaseManifest();\nvar getBaseManifest = process.env.TSS_DEV_SERVER === \"true\" ? getStartManifest : getProdBaseManifest;\nvar createEarlyHintsForRequest = process.env.TSS_DEV_SERVER === \"true\" ? () => void 0 : createEarlyHintsCollector;\nasync function loadEntries() {\n\tconst [routerEntry, startEntry, pluginAdapters] = await Promise.all([\n\t\timport(\"#tanstack-router-entry\"),\n\t\timport(\"#tanstack-start-entry\"),\n\t\timport(\"#tanstack-start-plugin-adapters\")\n\t]);\n\treturn {\n\t\trouterEntry,\n\t\tstartEntry,\n\t\tpluginAdapters\n\t};\n}\nfunction getEntries() {\n\tif (!entriesPromise) entriesPromise = loadEntries();\n\treturn entriesPromise;\n}\nfunction hasCsrfMiddleware(middlewares) {\n\treturn middlewares.some((middleware) => csrfSymbol in middleware);\n}\nfunction warnMissingCsrfMiddlewareOnce() {\n\tif (hasWarnedMissingCsrfMiddleware) return;\n\thasWarnedMissingCsrfMiddleware = true;\n\tconsole.warn(`TanStack Start server functions are not protected by the CSRF middleware.\n\nServer functions are same-origin RPC endpoints and should be protected from cross-site requests.\n\nAdd the CSRF middleware in src/start.ts:\n\n const csrfMiddleware = createCsrfMiddleware({\n filter: (ctx) => ctx.handlerType === 'serverFn',\n })\n\n export const startInstance = createStart(() => ({\n requestMiddleware: [csrfMiddleware],\n }))\n\nIf you intentionally handle CSRF another way, disable this warning:\n\n tanstackStart({\n serverFns: {\n disableCsrfMiddlewareWarning: true,\n },\n })`);\n}\nvar ROUTER_BASEPATH = process.env.TSS_ROUTER_BASEPATH || \"/\";\nvar SERVER_FN_BASE = process.env.TSS_SERVER_FN_BASE;\nvar IS_PRERENDERING = process.env.TSS_PRERENDERING === \"true\";\nvar IS_SHELL_ENV = process.env.TSS_SHELL === \"true\";\nvar IS_DEV = process.env.NODE_ENV === \"development\";\nvar ERR_NO_RESPONSE = IS_DEV ? `It looks like you forgot to return a response from your server route handler. If you want to defer to the app router, make sure to have a component set in this route.` : \"Internal Server Error\";\nvar ERR_NO_DEFER = IS_DEV ? `You cannot defer to the app router if there is no component defined on this route.` : \"Internal Server Error\";\nfunction throwRouteHandlerError() {\n\tthrow new Error(ERR_NO_RESPONSE);\n}\nfunction throwIfMayNotDefer() {\n\tthrow new Error(ERR_NO_DEFER);\n}\nfunction getResponseFromResult(result) {\n\treturn isSsrResponse(result) || result instanceof Response ? result : result?.response;\n}\nvar responseBodySources = /* @__PURE__ */ new WeakMap();\nfunction disposeResponseResult(result, reason) {\n\tconst response = getResponseFromResult(result);\n\tif (isSsrResponse(response) || response instanceof Response) disposeSsrResponse(response, reason);\n}\n/**\n* Marks `response` as directly derived from the current `source`.\n* Middleware must consume or cancel any other `clone()` or `tee()` branches.\n*/\nfunction transferResponseBodyOwnership(source, response) {\n\tif (!source.body || !response.body) throw new Error(\"Response body ownership requires two response bodies\");\n\tresponseBodySources.set(response, source);\n\treturn response;\n}\nfunction hasResponseBody(value) {\n\treturn value instanceof Response && value.body !== null;\n}\nfunction inheritsResponseOwnership(ownership, candidate) {\n\treturn hasResponseBody(candidate) && (candidate.body === ownership.response.body || responseBodySources.get(candidate) === ownership.response);\n}\nfunction disposeResponseOwnership(ownership, reason) {\n\tconst { response, sourceBody, streamResponse } = ownership;\n\tstreamResponse?.dispose(reason);\n\tif (!streamResponse || response.body !== sourceBody) response.body.cancel(reason).catch(() => {});\n}\nfunction getOwnedResponse(ownership) {\n\tconst { response, sourceBody, streamResponse } = ownership;\n\tif (!streamResponse) return response;\n\tif (streamResponse.response === response && response.body === sourceBody) return streamResponse;\n\tif (response.body === sourceBody) return {\n\t\t...streamResponse,\n\t\tresponse\n\t};\n\treturn {\n\t\t...streamResponse,\n\t\tresponse,\n\t\tdispose(reason) {\n\t\t\tdisposeResponseOwnership(ownership, reason);\n\t\t}\n\t};\n}\nfunction createLateResponseDisposer(signal) {\n\treturn (result) => disposeResponseResult(result, signal.reason);\n}\n/**\n* Compose middleware around a terminal response handler. With no middleware\n* the terminal runs directly.\n*/\nasync function executeMiddleware(middlewares, terminal, ctx, signal, terminalNext) {\n\tlet index = -1;\n\tlet responseOwnership;\n\tlet settled = false;\n\tconst disposeAbandonedResult = createLateResponseDisposer(signal);\n\tconst setResponse = (response) => {\n\t\tconst ssrResponse = isSsrResponse(response) ? response : void 0;\n\t\tconst streamResponse = ssrResponse?.serverSsrCleanup === \"stream\" ? ssrResponse : void 0;\n\t\tconst exposed = ssrResponse ? ssrResponse.response : response;\n\t\tconst current = responseOwnership;\n\t\tif (settled) {\n\t\t\tif (exposed !== ctx.response) disposeResponseResult(response, \"late middleware response\");\n\t\t\treturn;\n\t\t}\n\t\tif (current && current.response === exposed) current.streamResponse ??= streamResponse;\n\t\telse if (current && inheritsResponseOwnership(current, exposed)) {\n\t\t\tcurrent.response = exposed;\n\t\t\tcurrent.streamResponse ??= streamResponse;\n\t\t} else {\n\t\t\tif (current) disposeResponseOwnership(current, \"middleware response replaced\");\n\t\t\tif (hasResponseBody(exposed)) responseOwnership = {\n\t\t\t\tresponse: exposed,\n\t\t\t\tsourceBody: exposed.body,\n\t\t\t\tstreamResponse\n\t\t\t};\n\t\t\telse responseOwnership = void 0;\n\t\t}\n\t\tctx.response = exposed;\n\t};\n\tconst reconcileCtxResponse = () => {\n\t\tif (ctx.response !== responseOwnership?.response) setResponse(ctx.response);\n\t};\n\tlet nextPromise;\n\tfunction next(nextCtx) {\n\t\tconst result = runNext(nextCtx);\n\t\tnextPromise = result;\n\t\treturn result;\n\t}\n\tasync function runNext(nextCtx) {\n\t\tsignal.throwIfAborted();\n\t\tif (nextCtx) {\n\t\t\tif (nextCtx.context) ctx.context = safeObjectMerge(ctx.context, nextCtx.context);\n\t\t\tfor (const key of Object.keys(nextCtx)) if (key === \"response\") setResponse(nextCtx.response);\n\t\t\telse if (key !== \"context\") ctx[key] = nextCtx[key];\n\t\t}\n\t\tindex++;\n\t\tconst isTerminal = index === middlewares.length;\n\t\tconst middleware = index < middlewares.length ? middlewares[index] : isTerminal ? terminal : void 0;\n\t\tconst middlewareNext = isTerminal && terminalNext ? terminalNext : next;\n\t\tif (!middleware) return ctx;\n\t\tlet result;\n\t\ttry {\n\t\t\tconst pending = middleware({\n\t\t\t\t...ctx,\n\t\t\t\tnext: middlewareNext\n\t\t\t});\n\t\t\tif (nextPromise && pending === nextPromise) {\n\t\t\t\tnextPromise = void 0;\n\t\t\t\tawait pending;\n\t\t\t\tif (signal.aborted) throw signal.reason;\n\t\t\t\treturn ctx;\n\t\t\t} else if (!isPromise(pending)) {\n\t\t\t\tresult = pending;\n\t\t\t\tsignal.throwIfAborted();\n\t\t\t} else result = await waitForRequest(pending, signal, disposeAbandonedResult, disposeAbandonedResult);\n\t\t} catch (err) {\n\t\t\treconcileCtxResponse();\n\t\t\tif (signal.aborted) {\n\t\t\t\tif (result !== void 0) disposeAbandonedResult(result);\n\t\t\t\tif (err !== signal.reason) disposeAbandonedResult(err);\n\t\t\t\tthrow signal.reason;\n\t\t\t}\n\t\t\tif (err instanceof Response) {\n\t\t\t\tsetResponse(err);\n\t\t\t\treturn ctx;\n\t\t\t}\n\t\t\tthrow err;\n\t\t}\n\t\tif (isTerminal && terminalNext && !result) throwRouteHandlerError();\n\t\treconcileCtxResponse();\n\t\tif (result && result !== ctx) {\n\t\t\tconst response = getResponseFromResult(result);\n\t\t\tif (response !== void 0 && response !== ctx.response) setResponse(response);\n\t\t\tif (response !== result && result.context && result.context !== ctx.context) ctx.context = safeObjectMerge(ctx.context, result.context);\n\t\t}\n\t\treturn ctx;\n\t}\n\ttry {\n\t\tawait runNext();\n\t\tconst response = ctx.response;\n\t\tif (!response) throwRouteHandlerError();\n\t\treconcileCtxResponse();\n\t\tif (signal.aborted) throw signal.reason;\n\t\tsettled = true;\n\t\treturn responseOwnership ? getOwnedResponse(responseOwnership) : response;\n\t} catch (err) {\n\t\tsettled = true;\n\t\tif (responseOwnership) disposeResponseOwnership(responseOwnership, signal.aborted ? signal.reason : err);\n\t\tthrow err;\n\t}\n}\n/**\n* Creates the TanStack Start request handler.\n*\n* @example Backwards-compatible usage (handler callback only):\n* ```ts\n* export default createStartHandler(defaultStreamHandler)\n* ```\n*\n* @example With CDN URL rewriting:\n* ```ts\n* export default createStartHandler({\n* handler: defaultStreamHandler,\n* transformAssets: 'https://cdn.example.com',\n* })\n* ```\n*\n* @example With per-request URL rewriting:\n* ```ts\n* export default createStartHandler({\n* handler: defaultStreamHandler,\n* transformAssets: {\n* transform: ({ url }) => {\n* const cdnBase = getRequest().headers.get('x-cdn-base') || ''\n* return { href: `${cdnBase}${url}` }\n* },\n* cache: false,\n* },\n* })\n* ```\n*/\nfunction createStartHandler(cbOrOptions) {\n\tconst handlerOptions = typeof cbOrOptions === \"function\" ? {} : cbOrOptions;\n\tconst cb = typeof cbOrOptions === \"function\" ? cbOrOptions : cbOrOptions.handler;\n\tconst finalManifestResolver = createFinalManifestResolver({\n\t\t...handlerOptions,\n\t\tcacheCreateTransform: process.env.TSS_DEV_SERVER !== \"true\"\n\t});\n\tconst resolveManifestForRequest = process.env.TSS_DEV_SERVER === \"true\" ? finalManifestResolver.resolveUncached : finalManifestResolver.resolveCached;\n\tif (process.env.TSS_DEV_SERVER !== \"true\") finalManifestResolver.warmup({ getBaseManifest: () => getBaseManifest(void 0) });\n\tconst startRequestResolver = async (request, requestOpts) => {\n\t\tconst signal = request.signal;\n\t\tlet router;\n\t\tlet routerPromise;\n\t\tlet responseOwnsCleanup = false;\n\t\ttry {\n\t\t\tsignal.throwIfAborted();\n\t\t\tconst { url, handledProtocolRelativeURL } = getNormalizedURL(request.url);\n\t\t\tconst href = url.pathname + url.search + url.hash;\n\t\t\tconst origin = url.origin;\n\t\t\tif (handledProtocolRelativeURL) return Response.redirect(url, 308);\n\t\t\tconst entries = await waitForRequest(getEntries(), signal);\n\t\t\tconst isServerFnRequest = !!SERVER_FN_BASE && url.pathname.startsWith(SERVER_FN_BASE);\n\t\t\tconst startInstance = entries.startEntry.startInstance;\n\t\t\tlet startOptions;\n\t\t\tif (startInstance) {\n\t\t\t\tconst pendingStartOptions = startInstance.getOptions();\n\t\t\t\tstartOptions = isPromise(pendingStartOptions) ? await waitForRequest(pendingStartOptions, signal) : pendingStartOptions;\n\t\t\t\tsignal.throwIfAborted();\n\t\t\t} else startOptions = {};\n\t\t\tconst { hasPluginAdapters, pluginSerializationAdapters } = entries.pluginAdapters;\n\t\t\tconst serializationAdapters = [\n\t\t\t\t...startOptions.serializationAdapters || [],\n\t\t\t\t...hasPluginAdapters ? pluginSerializationAdapters : [],\n\t\t\t\tServerFunctionSerializationAdapter\n\t\t\t];\n\t\t\tconst requestStartOptions = {\n\t\t\t\t...startOptions,\n\t\t\t\trequestMiddleware: startInstance ? startOptions.requestMiddleware : isServerFnRequest ? [defaultCsrfMiddleware] : void 0,\n\t\t\t\tserializationAdapters\n\t\t\t};\n\t\t\tconst flattenedRequestMiddlewares = requestStartOptions.requestMiddleware ? flattenMiddlewares(requestStartOptions.requestMiddleware) : [];\n\t\t\tconst executedRequestMiddlewares = new Set(flattenedRequestMiddlewares);\n\t\t\tconst getRouter = () => {\n\t\t\t\trouterPromise ??= (async () => {\n\t\t\t\t\tsignal.throwIfAborted();\n\t\t\t\t\tconst requestRouter = await waitForRequest(entries.routerEntry.getRouter(), signal);\n\t\t\t\t\tlet isShell = IS_SHELL_ENV;\n\t\t\t\t\tif (IS_PRERENDERING && !isShell) isShell = request.headers.get(HEADERS.TSS_SHELL) === \"true\";\n\t\t\t\t\tconst history = createServerHistory(href);\n\t\t\t\t\trequestRouter.update({\n\t\t\t\t\t\thistory,\n\t\t\t\t\t\tisShell,\n\t\t\t\t\t\tisPrerendering: IS_PRERENDERING,\n\t\t\t\t\t\torigin: requestRouter.options.origin ?? origin,\n\t\t\t\t\t\tdefaultSsr: requestStartOptions.defaultSsr,\n\t\t\t\t\t\tserializationAdapters: [...requestStartOptions.serializationAdapters, ...requestRouter.options.serializationAdapters || []],\n\t\t\t\t\t\tbasepath: ROUTER_BASEPATH\n\t\t\t\t\t});\n\t\t\t\t\trouter = requestRouter;\n\t\t\t\t\treturn requestRouter;\n\t\t\t\t})();\n\t\t\t\treturn routerPromise;\n\t\t\t};\n\t\t\tconst handlerType = isServerFnRequest ? \"serverFn\" : \"router\";\n\t\t\tconst startContext = {\n\t\t\t\tgetRouter,\n\t\t\t\tstartOptions: requestStartOptions,\n\t\t\t\trequest,\n\t\t\t\texecutedRequestMiddlewares,\n\t\t\t\thandlerType\n\t\t\t};\n\t\t\tlet terminal;\n\t\t\tif (isServerFnRequest) {\n\t\t\t\tif (process.env.NODE_ENV !== \"production\" && process.env.TSS_DISABLE_CSRF_MIDDLEWARE_WARNING !== \"true\" && !hasCsrfMiddleware(flattenedRequestMiddlewares)) warnMissingCsrfMiddlewareOnce();\n\t\t\t\tconst serverFnId = url.pathname.slice(SERVER_FN_BASE.length).split(\"/\")[0];\n\t\t\t\tif (!serverFnId) throw new Error(\"Invalid server action param for serverFnId\");\n\t\t\t\tterminal = ({ context }) => runWithStartContext({\n\t\t\t\t\t...startContext,\n\t\t\t\t\tcontextAfterGlobalMiddlewares: context\n\t\t\t\t}, () => handleServerAction({\n\t\t\t\t\trequest,\n\t\t\t\t\tcontext: requestOpts?.context,\n\t\t\t\t\tserverFnId\n\t\t\t\t}));\n\t\t\t} else {\n\t\t\t\tconst executeRouter = async (serverContext, matchedRoutes) => {\n\t\t\t\t\tif (!/(^|,)\\s*(\\*\\/\\*|text\\/html)/.test(request.headers.get(\"Accept\") || \"*/*\")) return normalizeSsrResponse(Response.json({ error: \"Only HTML requests are supported here\" }, { status: 406 }));\n\t\t\t\t\tconst manifest = await waitForRequest(resolveManifestForRequest({\n\t\t\t\t\t\trequest,\n\t\t\t\t\t\trequestInlineCss: requestOpts?.inlineCss,\n\t\t\t\t\t\tgetBaseManifest: () => getBaseManifest(matchedRoutes)\n\t\t\t\t\t}), signal);\n\t\t\t\t\tconst earlyHints = createEarlyHintsForRequest({\n\t\t\t\t\t\tonEarlyHints: requestOpts?.onEarlyHints,\n\t\t\t\t\t\tresponseLinkHeader: requestOpts?.responseLinkHeader\n\t\t\t\t\t});\n\t\t\t\t\tearlyHints?.collectStatic({\n\t\t\t\t\t\tmanifest,\n\t\t\t\t\t\tmatchedRoutes\n\t\t\t\t\t});\n\t\t\t\t\tconst routerInstance = await getRouter();\n\t\t\t\t\tattachRouterServerSsrUtils({\n\t\t\t\t\t\trouter: routerInstance,\n\t\t\t\t\t\tmanifest,\n\t\t\t\t\t\tgetRequestAssets: () => getStartContext({ throwIfNotFound: false })?.requestAssets\n\t\t\t\t\t});\n\t\t\t\t\trouterInstance.options.additionalContext = { serverContext };\n\t\t\t\t\tawait routerInstance.load({ _signal: signal });\n\t\t\t\t\tsignal.throwIfAborted();\n\t\t\t\t\tif (routerInstance._serverResult?.type === \"redirect\") return normalizeSsrResponse(routerInstance._serverResult.redirect);\n\t\t\t\t\tearlyHints?.collectDynamic(_getRenderedMatches(routerInstance.stores.matches.get()));\n\t\t\t\t\tconst ctx = getStartContext({ throwIfNotFound: false });\n\t\t\t\t\tawait routerInstance.serverSsr.dehydrate({\n\t\t\t\t\t\trequestAssets: ctx?.requestAssets,\n\t\t\t\t\t\tsignal\n\t\t\t\t\t});\n\t\t\t\t\tsignal.throwIfAborted();\n\t\t\t\t\tconst responseHeaders = getStartResponseHeaders({ router: routerInstance });\n\t\t\t\t\tearlyHints?.appendResponseHeaders(responseHeaders);\n\t\t\t\t\tsignal.throwIfAborted();\n\t\t\t\t\tconst disposeLate = createLateResponseDisposer(signal);\n\t\t\t\t\treturn normalizeSsrResponse(await waitForRequest(cb({\n\t\t\t\t\t\trequest,\n\t\t\t\t\t\trouter: routerInstance,\n\t\t\t\t\t\tresponseHeaders\n\t\t\t\t\t}), signal, disposeLate, disposeLate));\n\t\t\t\t};\n\t\t\t\tterminal = ({ context }) => runWithStartContext({\n\t\t\t\t\t...startContext,\n\t\t\t\t\tcontextAfterGlobalMiddlewares: context\n\t\t\t\t}, () => handleServerRoutes({\n\t\t\t\t\tgetRouter,\n\t\t\t\t\trequest,\n\t\t\t\t\turl,\n\t\t\t\t\texecuteRouter,\n\t\t\t\t\tcontext,\n\t\t\t\t\texecutedRequestMiddlewares\n\t\t\t\t}));\n\t\t\t}\n\t\t\tconst middlewareResponse = await executeMiddleware(flattenedRequestMiddlewares.map((d) => d.options.server), terminal, {\n\t\t\t\trequest,\n\t\t\t\tpathname: url.pathname,\n\t\t\t\thandlerType,\n\t\t\t\tcontext: createNullProtoObject(requestOpts?.context)\n\t\t\t}, signal);\n\t\t\tlet result;\n\t\t\ttry {\n\t\t\t\tresult = await handleRedirectResponse(middlewareResponse, getRouter, signal, isServerFnRequest && request.headers.get(\"x-tsr-serverFn\") === \"true\");\n\t\t\t\tif (request.method === \"HEAD\") result = stripSsrResponseBody(result, \"HEAD body stripped\");\n\t\t\t} catch (error) {\n\t\t\t\tdisposeResponseResult(middlewareResponse, signal.aborted ? signal.reason : error);\n\t\t\t\tthrow error;\n\t\t\t}\n\t\t\tbindSsrResponseToRequest(router, result, signal);\n\t\t\tsignal.throwIfAborted();\n\t\t\tresponseOwnsCleanup = result.serverSsrCleanup === \"stream\";\n\t\t\treturn result.response;\n\t\t} finally {\n\t\t\tif (router?.serverSsr && !responseOwnsCleanup) router.serverSsr.cleanup();\n\t\t}\n\t};\n\treturn requestHandler(startRequestResolver);\n}\nvar relativeRedirectProtocols = /* @__PURE__ */ new Set();\nasync function handleRedirectResponse(response, getRouter, signal, serializeRedirect) {\n\tsignal.throwIfAborted();\n\tconst ssrResponse = normalizeSsrResponse(response);\n\tconst redirect = ssrResponse.response;\n\tif (!isRedirect(redirect)) return ssrResponse;\n\tconst opts = redirect.options;\n\tconst href = redirect.headers.get(\"Location\") || opts.href;\n\tif (!href && opts.to && typeof opts.to === \"string\" && !opts.to.startsWith(\"/\")) throw new Error(`Server side redirects must use absolute paths via the 'href' or 'to' options. The redirect() method's \"to\" property accepts an internal path only. Use the \"href\" property to provide an external URL. Received: ${JSON.stringify(opts)}`);\n\tif (!href && [\n\t\t\"params\",\n\t\t\"search\",\n\t\t\"hash\"\n\t].some((d) => typeof opts[d] === \"function\")) throw new Error(`Server side redirects must use static search, params, and hash values and do not support functional values. Received functional values for: ${Object.keys(opts).filter((d) => typeof opts[d] === \"function\").map((d) => `\"${d}\"`).join(\", \")}`);\n\tsignal.throwIfAborted();\n\tif (href && !isDangerousProtocol(href, relativeRedirectProtocols)) {\n\t\topts.href = href;\n\t\tredirect.headers.set(\"Location\", href);\n\t} else {\n\t\tconst router = await getRouter();\n\t\tsignal.throwIfAborted();\n\t\trouter.resolveRedirect(redirect);\n\t}\n\tif (serializeRedirect) {\n\t\tconst redirectOptions = { ...opts };\n\t\tdelete redirectOptions.headers;\n\t\tconst responseHeaders = new Headers(redirect.headers);\n\t\tresponseHeaders.set(\"content-type\", \"application/json\");\n\t\treturn replaceSsrResponse(ssrResponse, Response.json({\n\t\t\t...redirectOptions,\n\t\t\tisSerializedRedirect: true\n\t\t}, { headers: responseHeaders }), \"redirect response replaced\");\n\t}\n\treturn ssrResponse;\n}\nfunction withParsedParams(handler, matchedRoutes) {\n\tif (!matchedRoutes.some((route) => route.options.params?.parse ?? route.options.parseParams)) return handler;\n\treturn (ctx) => {\n\t\tconst params = Object.assign(Object.create(null), ctx.params);\n\t\tfor (const route of matchedRoutes) {\n\t\t\tconst parse = route.options.params?.parse ?? route.options.parseParams;\n\t\t\tif (parse) Object.assign(params, parse(params));\n\t\t}\n\t\treturn handler({\n\t\t\t...ctx,\n\t\t\tparams\n\t\t});\n\t};\n}\nasync function handleServerRoutes({ getRouter, request, url, executeRouter, context, executedRequestMiddlewares }) {\n\tconst router = await getRouter();\n\tconst pathname = executeRewriteInput(router.rewrite, url).pathname;\n\tconst [matchedRoutes, rawParams, foundRoute] = router.getMatchedRoutes(pathname);\n\tconst isExactMatch = foundRoute && rawParams[\"**\"] === void 0;\n\tconst routeMiddlewares = [];\n\tlet terminalHandler = (ctx) => executeRouter(ctx.context, matchedRoutes);\n\tlet terminalNext;\n\tfor (const route of matchedRoutes) {\n\t\tconst serverMiddleware = route.options.server?.middleware;\n\t\tif (serverMiddleware) {\n\t\t\tconst flattened = flattenMiddlewares(serverMiddleware);\n\t\t\tfor (const m of flattened) if (!executedRequestMiddlewares.has(m)) routeMiddlewares.push(m.options.server);\n\t\t}\n\t}\n\tconst server = foundRoute?.options.server;\n\tif (server?.handlers && isExactMatch) {\n\t\tconst handlers = typeof server.handlers === \"function\" ? server.handlers({ createHandlers: (d) => d }) : server.handlers;\n\t\tconst requestMethod = request.method.toUpperCase();\n\t\tconst handler = requestMethod === \"HEAD\" ? handlers[\"HEAD\"] ?? handlers[\"GET\"] ?? handlers[\"ANY\"] : handlers[requestMethod] ?? handlers[\"ANY\"];\n\t\tif (handler) {\n\t\t\tconst mayDefer = !!foundRoute.options.component;\n\t\t\tif (typeof handler !== \"function\") {\n\t\t\t\tif (handler.middleware?.length) {\n\t\t\t\t\tconst handlerMiddlewares = flattenMiddlewares(handler.middleware);\n\t\t\t\t\tfor (const m of handlerMiddlewares) routeMiddlewares.push(m.options.server);\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst routeHandler = typeof handler === \"function\" ? handler : handler.handler;\n\t\t\tif (routeHandler) {\n\t\t\t\tconst parsedHandler = withParsedParams(routeHandler, matchedRoutes);\n\t\t\t\tif (!mayDefer) {\n\t\t\t\t\tterminalHandler = parsedHandler;\n\t\t\t\t\tterminalNext = throwIfMayNotDefer;\n\t\t\t\t} else routeMiddlewares.push(parsedHandler);\n\t\t\t}\n\t\t}\n\t}\n\treturn normalizeSsrResponse(await executeMiddleware(routeMiddlewares, terminalHandler, {\n\t\trequest,\n\t\tcontext,\n\t\tparams: rawParams,\n\t\tpathname,\n\t\thandlerType: \"router\"\n\t}, request.signal, terminalNext));\n}\n//#endregion\nexport { createStartHandler, transferResponseBodyOwnership };\n\n//# sourceMappingURL=createStartHandler.js.map"],"ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53],"mappings":"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AX,IAAK,GAAkB,KAAOA,CACjD,CACA,SAASC,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CA0CA,MAzCA,GAAiB,IAAIV,GACnB1d,EACA4D,EACAga,EACAC,EACAh9B,EACAi9B,EACAC,EACAC,EACAC,EACAC,EACAC,CACF,EACA,EAAcE,GACZre,EACA,EACA,KACA4d,EACA,CAAC,EACD,CAAC,CACH,EACA,EAAY,cAAgB,CAAC,EAC7B,EAAWU,GACTte,EACA,KACAoE,EACA,GACA,KACAR,EACA,KACA,KACA5D,EAAe,eACf,KACA4d,EACA,KACA1H,GACA,KACA,IACF,EACAqI,GAAmBna,CAAQ,EAC3BpE,EAAe,YAAY,KAAKoE,CAAQ,EACjCpE,CACT,CACA,SAASwe,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CAoBA,MAnBA,GAAWJ,GACTha,EACApE,EACA4D,EACAga,EACAC,EACAh9B,EACAi9B,EACAC,EACAC,EACAC,EACAC,EACA,IAAK,EACP,EACA,EAAS,iBAAmB,CAC1B,WAAY,IAAI,IAChB,UAAW,CAAC,EACZ,UAAW,IACb,EACO9Z,CACT,CACA,SAASqa,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CAqEA,MApEA,GAAc,IAAIf,GAChBgB,EAAe,eACf9a,EACA8a,EAAe,kBACfA,EAAe,qBACf79B,EACAi9B,EACAC,EACAC,EACAC,EACAC,EACA,IACF,EACA,EAAY,cAAgBQ,EAAe,cAC1B,OAAOA,EAAe,aAAnC,UAEC,EAAUL,GACTza,EACA,EACA,KACA8a,EAAe,kBACf,CAAC,EACD,CAAC,CACH,EACC,EAAQ,cAAgB,CAAC,EACzB,EAAWJ,GACV1a,EACA,KACAQ,EACA,GACA,KACAvjB,EACA,KACA,KACA+iB,EAAY,eACZ,KACA8a,EAAe,kBACf,KACAxI,GACA,KACA,IACF,EACAqI,GAAmBna,CAAQ,EAC3BR,EAAY,YAAY,KAAKQ,CAAQ,EACrCR,IAEJ,EAAW+a,GACT/a,EACA,KACA,CACE,MAAO8a,EAAe,YACtB,MAAOA,EAAe,YACtB,aAAc,CAChB,EACAta,EACA,GACA,KACA,KACAR,EAAY,eACZ,KACA8a,EAAe,kBACf,KACAxI,GACA,KACA,IACF,EACAqI,GAAmBna,CAAQ,EAC3BR,EAAY,YAAY,KAAKQ,CAAQ,EAC9BR,EACT,CACA,SAASgb,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CAiBA,MAhBA,GAAWH,GACTra,EACAsa,EACA9a,EACA/iB,EACAi9B,EACAC,EACAC,EACAC,EACAC,CACF,EACA,EAAS,iBAAmB,CAC1B,WAAY,IAAI,IAChB,UAAW,CAAC,EACZ,UAAW,IACb,EACO9Z,CACT,CACA,IAAIya,GAAiB,KACrB,SAASrL,IAAiB,CACxB,GAAIqL,GAAgB,OAAOA,GAC3B,GAAI7J,GAAwB,CAC1B,IAAI8J,EAAQ7J,GAAe,SAAS,EACpC,GAAI6J,EAAO,OAAOA,CACpB,CACA,OAAO,IACT,CACA,SAASC,GAAS,EAAS,EAAM,CAC/BxL,EAAQ,YAAY,KAAKyL,CAAI,EACvBzL,EAAQ,YAAY,SAA1B,IACI,EAAQ,eAA0BA,EAAQ,cAAjB,KAClBA,EAAQ,mBAAjB,MAA4CA,EAAQ,SAAf,GACjCzX,EAAkB,UAAY,CAC5B,OAAOmjB,GAAY1L,CAAO,CAC5B,CAAC,EACD,WAAW,UAAY,CACrB,OAAO0L,GAAY1L,CAAO,CAC5B,EAAG,CAAC,EACZ,CACA,SAAS2L,GACP,EACA,EACA,EACA,EACA,EACA,CA2BA,MA1BA,GAAyB,CACvB,OAAQ,EACR,cAAe,GACf,cAAe,CAAC,EAChB,aAAc,EACT,MACL,kBAAmB,CAAC,EACpB,SAAU,EACH,QACiB,yBACxB,YAAa,KACb,aAAc5L,GAAqB,EACnC,cAAeA,GAAqB,EAC1B,WACV,QAAS,IACX,EACS6L,IAAT,OACG,EAAI,eACJ,EAAWA,EAAI,WACP1a,IAAT,OACG,EAAQ,kBACT,EAAuB,eACvBA,EAAS,KAAK2a,CAAsB,GACrC,EAAUD,EAAI,oBACN5L,IAAT,MACEmB,GAAgB0K,EAAuB,aAAc7L,CAAO,GACzD6L,CACT,CACA,SAASd,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACA,EAAQ,kBACCe,IAAT,KACI,EAAQ,mBACR,EAAgB,eACXF,IAAT,MAAgB,EAAI,eACpB,IAAIH,EAAO,CACT,OAAQ,KACF,OACM,aACZ,KAAM,CACJ,QAAS,UAAY,CACnB,OAAOD,GAASxL,EAASyL,CAAI,CAC/B,EACA,OAAQ,SAAU,EAAO,CACvBzL,EAAQ,QACJyL,EAAK,SAAS,OAAOA,CAAI,GACzBM,GAAkBN,EAAMzL,EAASxqC,CAAK,EACtCg2C,GAASxL,EAASyL,CAAI,CAC5B,CACF,EACiB,kBACD,iBACC,kBACD,iBACN,WACD,UACM,gBACN,UACI,cACR,MACW,iBACD,eACjB,EAEA,OADArB,EAAS,IAAIqB,CAAI,EACVA,CACT,CACA,SAASL,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACA,EAAQ,kBACCU,IAAT,KACI,EAAQ,mBACR,EAAgB,eACXF,IAAT,MAAgB,EAAI,eACpB,EAAO,eACP,IAAIH,EAAO,CACD,SACF,OACM,aACZ,KAAM,CACJ,QAAS,UAAY,CACnB,OAAOD,GAASxL,EAASyL,CAAI,CAC/B,EACA,OAAQ,SAAU,EAAO,CACvBzL,EAAQ,QACJyL,EAAK,SAAS,OAAOA,CAAI,GACzBM,GAAkBN,EAAMzL,EAASxqC,CAAK,EACtCg2C,GAASxL,EAASyL,CAAI,CAC5B,CACF,EACiB,kBACjB,eAAgB,KAChB,gBAAiB,KACD,iBACN,WACD,UACM,gBACN,UACI,cACR,MACW,iBACD,eACjB,EAEA,OADArB,EAAS,IAAIqB,CAAI,EACVA,CACT,CACA,SAASX,GACP,EACA,EACA,EACA,EACA,EACA,EACA,CACA,MAAO,CACL,OAAQ,EACR,cAAe,CAAC,EAChB,GAAI,GACG,QACP,OAAQ,CAAC,EACT,SAAU,CAAC,EACX,iBAA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AOA,CAAI,GACzBM,GAAkBN,EAAMzL,EAASxqC,CAAK,EACtCg2C,GAASxL,EAASyL,CAAI,CAC5B,CACF,EACiB,kBACD,iBACC,kBACD,iBACN,WACD,UACM,gBACN,UACI,cACR,MACW,iBACD,eACjB,EAEA,OADArB,EAAS,IAAIqB,CAAI,EACVA,CACT,CACA,SAASL,GACP,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACA,EAAQ,kBACCU,IAAT,KACI,EAAQ,mBACR,EAAgB,eACXF,IAAT,MAAgB,EAAI,eACpB,EAAO,eACP,IAAIH,EAAO,CACD,SACF,OACM,aACZ,KAAM,CACJ,QAAS,UAAY,CACnB,OAAOD,GAASxL,EAASyL,CAAI,CAC/B,EACA,OAAQ,SAAU,EAAO,CACvBzL,EAAQ,QACJyL,EAAK,SAAS,OAAOA,CAAI,GACzBM,GAAkBN,EAAMzL,EAASxqC,CAAK,EACtCg2C,GAASxL,EAASyL,CAAI,CAC5B,CACF,EACiB,kBACjB,eAAgB,KAChB,gBAAiB,KACD,iBACN,WACD,UACM,gBACN,UACI,cACR,MACW,iBACD,eACjB,EAEA,OADArB,EAAS,IAAIqB,CAAI,EACVA,CACT,CACA,SAASX,GACP,EACA,EACA,EACA,EACA,EACA,EACA,CACA,MAAO,CACL,OAAQ,EACR,cAAe,CAAC,EAChB,GAAI,GACG,QACP,OAAQ,CAAC,EACT,SAAU,CAAC,EACX,iBAAkB,CAAC,EACE,sBACX,WACM,iBACF,cAChB,CACF,CACA,SAASE,GAAmB,EAAM,CAChC,IAAIhpC,EAAOypC,EAAK,KAChB,GAAiB,OAAOzpC,GAApB,UAAqCA,EACvC,OAAQA,EAAK,SAAb,CACE,KAAK0kB,EACH,EAAK,eAAiB,CAAE,OAAQ+kB,EAAK,eAAgB,KAAMzpC,EAAK,IAAK,CACzE,CACJ,CACA,SAASgqC,GACP,EACA,CACA,OAAgBC,IAAT,KACH,KACA,CAAE,OAAQA,EAAe,OAAQ,KAAM,mBAAoB,CACjE,CACA,SAASC,GAAc,EAAe,CACpC,IAAIC,EAAY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"}